專利名稱:用于片上網(wǎng)絡(luò)的帶控制信號(hào)的低功耗路由器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于片上網(wǎng)絡(luò)技術(shù)領(lǐng)域,具體涉及一種用于片上網(wǎng)絡(luò)的低功耗路由器。
背景技術(shù):
隨著集成電路工藝的進(jìn)步,2010年的主流產(chǎn)品工藝已經(jīng)是65nm,基于更高工藝 45nm和32nm的芯片也已經(jīng)問(wèn)世。單處理器片上系統(tǒng)(Systom on Chip,SoC)已經(jīng)無(wú)法滿足日益增長(zhǎng)的功能和性能指標(biāo),需要將多個(gè)處理器和存儲(chǔ)單元等IP核集成到一塊芯片內(nèi)。現(xiàn)今的SoC主要用總線來(lái)實(shí)現(xiàn)各計(jì)算模塊間的互連和通信。為了滿足片上日益增長(zhǎng)的通信需求,總線技術(shù)也在不斷改進(jìn),逐漸從單一的共享總線發(fā)展為多總線的橋接,進(jìn)而演變到層次化總線等更復(fù)雜的結(jié)構(gòu)。當(dāng)多處理器片上系統(tǒng)(Multi-processor Systom on Chip, MPSoC) [1]中的 IP (Intellectual Property)核越來(lái)越多時(shí),總線結(jié)構(gòu)將難以滿足以下要求
(1)可擴(kuò)展性問(wèn)題。隨著片上IP核的增多,數(shù)據(jù)處理量也成倍增多,有限的地址資源將成為擴(kuò)大電路規(guī)模的瓶頸。一條總線無(wú)法支持一對(duì)以上的節(jié)點(diǎn)同時(shí)通信,效率很低。層次化總線雖然可以緩解這個(gè)問(wèn)題,但當(dāng)片上IP核的數(shù)目進(jìn)一步增多(比如上百個(gè)),顯得無(wú)能為力。(2)單一時(shí)鐘同步問(wèn)題??偩€結(jié)構(gòu)要求全局同步但是隨著工藝特征尺寸的縮小,工作頻率迅速上升,達(dá)到IOGHz以后,互連線延時(shí)造成的影響將嚴(yán)重到無(wú)法設(shè)計(jì)全局時(shí)鐘樹(shù)。 另外,龐大的時(shí)鐘網(wǎng)絡(luò)將占據(jù)芯片的大部分功耗。為了有效解決未來(lái)MPSoC中多核之間復(fù)雜的通信問(wèn)題,借鑒計(jì)算機(jī)網(wǎng)絡(luò)和并行計(jì)算領(lǐng)域的研究成果,逐漸出現(xiàn)了一種全新的設(shè)計(jì)方法——片上網(wǎng)絡(luò)(Network On Chip, NoC) [3]。2000年瑞典皇家理工學(xué)院Ahmed Hemani第一次提出這個(gè)概念,并予以定義片上網(wǎng)絡(luò)是由計(jì)算單元、存儲(chǔ)單元、1/0接口構(gòu)成的,并且通過(guò)路由器連接的網(wǎng)絡(luò)。也有部分學(xué)者將2001年斯坦福大學(xué)的Dally教授的一篇文章作為NoC的發(fā)端。采用NoC具有以下優(yōu)點(diǎn)
(1)解決了連線過(guò)長(zhǎng)延時(shí)太大的問(wèn)題NoC設(shè)計(jì)采用全局異步、局部同步(GlcAally Asynchronous Locally Synchronous, GALS)的機(jī)制,每一個(gè)處理單元都有自己的時(shí)鐘域; 并且可以根據(jù)需要關(guān)閉某些暫時(shí)不用的模塊,減少了功耗。(2)彌補(bǔ)集成電路(Integrated Circuits, IC)設(shè)計(jì)和制造的技術(shù)差綜合和編譯技術(shù)落后于IC制造技術(shù)的發(fā)展,形成了所謂的“剪刀差”,這就使得重新設(shè)計(jì)一個(gè)更大規(guī)模的芯片更加困難,而采用片上網(wǎng)絡(luò)的方式,通過(guò)重用很多已有的軟硬件模塊,可以明顯提高設(shè)計(jì)速度,縮短設(shè)計(jì)周期。(3)容錯(cuò)性好芯片作為一個(gè)有機(jī)整體,如果其中一個(gè)部件發(fā)生錯(cuò)位,可能會(huì)使整個(gè)芯片陷于癱瘓,而使用片上網(wǎng)絡(luò),出錯(cuò)的部件可以用其他相同的部件代替,使得整個(gè)芯片能夠繼續(xù)正常工作。(4)適用于多核處理器多核系統(tǒng)中的總線受帶寬限制,擴(kuò)展性已經(jīng)出現(xiàn)瓶頸。片上網(wǎng)絡(luò)利用傳統(tǒng)計(jì)算機(jī)網(wǎng)絡(luò)概念來(lái)管理多個(gè)IP核之間的數(shù)據(jù)通訊,不僅具有更好的可擴(kuò)展性、并行性,并且可以避免長(zhǎng)線,單元之間的連線很短,成為單芯片系統(tǒng)的發(fā)展方向。(5)各個(gè)處理單元的片上互連一般都通過(guò)一個(gè)路由器,它是互連網(wǎng)絡(luò)中必不可少的模塊,用于連接各個(gè)處理單元、決定數(shù)據(jù)的傳輸線路與傳輸方式。設(shè)計(jì)一種既能提供快速通訊服務(wù),又能減少所用的面積、功耗的路由器是基于mesh結(jié)構(gòu)的片上互聯(lián)的熱點(diǎn)研究?jī)?nèi)容之一。數(shù)據(jù)的傳輸是通過(guò)數(shù)據(jù)包來(lái)實(shí)現(xiàn)的,源處理單元(process element, ΡΕ)發(fā)出一個(gè)數(shù)據(jù)包到相鄰的路由器(Router),數(shù)據(jù)包經(jīng)路由器的轉(zhuǎn)發(fā)傳播到目標(biāo)處理單元。一個(gè)數(shù)據(jù)包(packet)包括包頭、包身、包尾,如圖2所示,每個(gè)周期傳輸數(shù)據(jù)包中的一個(gè)微片 (flit)。一個(gè)數(shù)據(jù)包一般包含幾十個(gè)微片,個(gè)數(shù)可固定也可不固定,微片個(gè)數(shù)嚴(yán)重影響包傳輸延時(shí)。如圖3所示,路由器一般由以下模塊構(gòu)成(不同的路由算法、網(wǎng)絡(luò)結(jié)構(gòu)、流控制方式會(huì)有不同的構(gòu)成)
(1)緩沖器(buffer)采用先進(jìn)先出(first-in first-out, FIFO)方式來(lái)存儲(chǔ)數(shù)據(jù), 一般并行放置幾個(gè)緩沖器(也稱虛擬信道,將在下面介紹)。緩沖器可放置在輸入端口或輸出端口,但不同的放置可能會(huì)有不同的性能。(2)鏈接控制器(Link Controller, LC),決定是否允許傳輸數(shù)據(jù),如FIFO存儲(chǔ)滿或?yàn)榭諘r(shí),則停止繼續(xù)接收或發(fā)送數(shù)據(jù)。(3)仲裁器(Arbiter),決定哪個(gè)信道可以傳輸數(shù)據(jù)以及傳入路由器的數(shù)據(jù)應(yīng)該選擇哪個(gè)信道作為輸入。(4)交換開(kāi)關(guān)(switch或稱crossbar),決定輸入信道可以選擇哪個(gè)輸出信道作為輸出端口。但是,片上網(wǎng)絡(luò)中路由器占據(jù)較大面積,并且消耗較大功耗。參考文獻(xiàn)Ahmed Amine Jerraya, Wayne Wolf. Multiprocessor System-on-Chips .Morgan Kaufmann, 2005WOLFW,JERRAYAA,MARTING.Multiprocessorsystem-on-chip (MPSoC) technology[J] . IEEE Transactions on Computer—Aided Design of Integrated Circuits and Systems, 2008, 27 (10) :1701-1713 .Kim J, Nicopoulos C, Park D. A gracefully degradingand energy-efficient modular router architecture for on-chip networks[C] . Proceedings of the 33rd AnnualInternational Symposium on Computer Architecture. Boston: IEEE, 2006, :4-15 .Das R, Mishra A K, Nicopoulos Cet al. Performance andpower optimization through data compression in network-on-chip architectures[C] . Proceedings of the 14th Inter-national Symposium on High Performance Computer Archi-tecture. Salt Lake City: IEEE, 2008, :215-225 .Alameldeen A R, Wood D A. Interactions between com-pression and prefetching in chip multiprocessors[C] . Proceedings of the 13th International
4Symposium onHigh-Performance Computer Architecture. Phoenix: IEEE, 2007, :228-239 。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種能夠有效降低片上網(wǎng)絡(luò)路由器功耗的路由器結(jié)構(gòu)?;谝陨习l(fā)明目的,本發(fā)明提出一種帶開(kāi)關(guān)控制電路的路由器結(jié)構(gòu)。即在通常的路由器輸入端口加入一個(gè)控制電路和控制信號(hào),起到關(guān)斷或者開(kāi)啟路由器的作用以降低功耗。設(shè)EN為使能信號(hào),CLK為時(shí)鐘信號(hào),使用鎖存器來(lái)抑制毛刺。具體來(lái)說(shuō),通常的路由器一般由以下模塊構(gòu)成緩沖器(buffer)、鏈接控制器 (Link Controller, LC)、仲裁器(Arbiter)、交換開(kāi)關(guān)(switch 或稱 crossbar),見(jiàn)圖 3 所示。本發(fā)明的低功耗路由器,僅當(dāng)某一級(jí)路由器需要傳送數(shù)據(jù)時(shí),其控制信號(hào)被置高電平,路由器開(kāi)啟。當(dāng)沒(méi)有數(shù)據(jù)傳送時(shí),即數(shù)據(jù)轉(zhuǎn)發(fā)完畢時(shí),控制信號(hào)置低電平,關(guān)斷路由器,達(dá)到降低功耗的目的。本發(fā)明的低功耗路由器,通過(guò)檢測(cè)緩沖器狀態(tài)是否為空來(lái)判斷上一級(jí)路由單元發(fā)送給本級(jí)路由單元的數(shù)據(jù)是否轉(zhuǎn)發(fā)完畢。本發(fā)明的低功耗路由器,其數(shù)據(jù)傳輸?shù)木唧w流程為
(1)某一級(jí)路由單元輸出端口接收到來(lái)自同級(jí)輸入端口請(qǐng)求發(fā)送信號(hào)時(shí),采用輪循機(jī)制確定輸出通道號(hào)并判斷下一級(jí)路由單元的工作狀態(tài);
(2)如果連接的下一級(jí)路由單元輸入端口已處于工作狀態(tài),則開(kāi)始發(fā)送請(qǐng)求信號(hào)和數(shù)
據(jù);
(3)如果處于關(guān)閉狀態(tài),則將控制信號(hào)置‘1’,開(kāi)啟該輸入端口的時(shí)鐘信號(hào),并開(kāi)始發(fā)送請(qǐng)求信號(hào)和數(shù)據(jù);
(4)當(dāng)下一級(jí)輸入鏈路控制部分檢測(cè)到上一級(jí)路由單元通過(guò)該輸入端口一次有效數(shù)據(jù)包的發(fā)送接收已經(jīng)結(jié)束,并且此時(shí)來(lái)自上一級(jí)路由單元的請(qǐng)求為‘0’,則將控制信號(hào)置 ‘ 0 ’,中斷該輸入端口的時(shí)鐘信號(hào)。傳統(tǒng)的路由器實(shí)現(xiàn)信號(hào)的存儲(chǔ)轉(zhuǎn)發(fā)功能,當(dāng)使用數(shù)量不多的時(shí)候,功率消耗尚可以接受。然而在片上網(wǎng)絡(luò)中,需要大量使用路由器(每個(gè)資源節(jié)點(diǎn)帶一個(gè)路由器),功耗問(wèn)題十分突出。本發(fā)明所提出的帶開(kāi)關(guān)控制電路的路由器能夠有效地解決這一問(wèn)題。
圖1為帶控制信號(hào)的路由器模塊。圖2為數(shù)據(jù)包的組成。圖3為路由器的主要構(gòu)成模塊。
具體實(shí)施例方式當(dāng)上一級(jí)路由單元輸出端口接收到來(lái)自同級(jí)輸入端口請(qǐng)求發(fā)送信號(hào)時(shí),采用輪循機(jī)制確定輸出通道號(hào)并判斷下一級(jí)路由單元的工作狀態(tài)。如果連接的下一級(jí)路由單元輸入端口已處于工作狀態(tài),則開(kāi)始發(fā)送請(qǐng)求信號(hào)和數(shù)據(jù);如果處于關(guān)閉狀態(tài),則將控制信號(hào)置‘1’,開(kāi)啟該輸入端口的時(shí)鐘信號(hào),并開(kāi)始發(fā)送請(qǐng)求信號(hào)和數(shù)據(jù)。下一級(jí)輸入鏈路控制部分接收到來(lái)自前一級(jí)路由單元的發(fā)送請(qǐng)求,并給出相應(yīng)的應(yīng)答信號(hào),即開(kāi)始啟動(dòng)數(shù)據(jù)接收和存儲(chǔ)進(jìn)程。路由處理應(yīng)答信號(hào)不僅表明路由計(jì)算處理完畢,還標(biāo)志著一個(gè)新的數(shù)據(jù)包在等待發(fā)送,此時(shí)傳輸控制部分通過(guò)監(jiān)測(cè)路由處理應(yīng)答和虛通道緩存狀態(tài)來(lái)啟動(dòng)數(shù)據(jù)發(fā)送進(jìn)程,根據(jù)虛通道號(hào)和緩存位置讀取數(shù)據(jù)并傳輸。當(dāng)下一級(jí)輸入鏈路控制部分檢測(cè)到FIFO狀態(tài)變?yōu)榭?,并且所?qǐng)求的相應(yīng)的同級(jí)輸出端口已將數(shù)據(jù)順利轉(zhuǎn)發(fā)至下一級(jí),說(shuō)明上一級(jí)路由單元通過(guò)該輸入端口一次有效數(shù)據(jù)包的發(fā)送接收已經(jīng)結(jié)束,若此時(shí)來(lái)自上一級(jí)路由單元的請(qǐng)求為‘0’,將控制信號(hào)置‘0’,中斷該輸入端口的時(shí)鐘信號(hào)。
權(quán)利要求
1.一種用于片上網(wǎng)絡(luò)的帶控制信號(hào)的低功耗路由器,其特征在于在通常路由器的基礎(chǔ)上加上一塊控制電路和一個(gè)控制信號(hào),使得路由器具備關(guān)斷的功能。
2.根據(jù)權(quán)利要求1所述的低功耗路由器,其特征在于僅當(dāng)某一級(jí)路由器需要傳送數(shù)據(jù)時(shí),其控制信號(hào)被置高電平,路由器開(kāi)啟;當(dāng)沒(méi)有數(shù)據(jù)傳送時(shí),即數(shù)據(jù)轉(zhuǎn)發(fā)完畢時(shí),控制信號(hào)置低電平,關(guān)斷路由器,達(dá)到降低功耗的目的。
3.根據(jù)權(quán)利要求2所述的用于片上網(wǎng)絡(luò)的低功耗路由器,其特征在于通過(guò)檢測(cè)緩沖器狀態(tài)是否為空來(lái)判斷上一級(jí)路由單元發(fā)送給本級(jí)路由單元的數(shù)據(jù)是否轉(zhuǎn)發(fā)完畢。
4.根據(jù)權(quán)利要求3所述的用于片上網(wǎng)絡(luò)的低功耗路由器,其特征在于數(shù)據(jù)傳輸?shù)木唧w流程為(1)某一級(jí)路由單元輸出端口接收到來(lái)自同級(jí)輸入端口請(qǐng)求發(fā)送信號(hào)時(shí),采用輪循機(jī)制確定輸出通道號(hào)并判斷下一級(jí)路由單元的工作狀態(tài);(2)如果連接的下一級(jí)路由單元輸入端口已處于工作狀態(tài),則開(kāi)始發(fā)送請(qǐng)求信號(hào)和數(shù)據(jù);(3)如果處于關(guān)閉狀態(tài),則將控制信號(hào)置‘1’,開(kāi)啟該輸入端口的時(shí)鐘信號(hào),并開(kāi)始發(fā)送請(qǐng)求信號(hào)和數(shù)據(jù);(4)當(dāng)下一級(jí)輸入鏈路控制部分檢測(cè)到上一級(jí)路由單元通過(guò)該輸入端口一次有效數(shù)據(jù)包的發(fā)送接收已經(jīng)結(jié)束,并且此時(shí)來(lái)自上一級(jí)路由單元的請(qǐng)求為‘0’,則將控制信號(hào)置 ‘ 0 ’,中斷該輸入端口的時(shí)鐘信號(hào)。
全文摘要
本發(fā)明屬于片上網(wǎng)絡(luò)技術(shù)領(lǐng)域,具體為一種用于片上網(wǎng)絡(luò)的帶控制信號(hào)的低功耗路由器。通常的路由器一般包括緩沖器、鏈接控制器、仲裁器、交換開(kāi)關(guān),本發(fā)明在通常的路由器輸入端口加入一個(gè)控制電路和控制信號(hào),使得路由器具備關(guān)斷的功能。僅當(dāng)某一級(jí)路由器需要傳送數(shù)據(jù)時(shí),其控制信號(hào)被置高電平,路由器開(kāi)啟;當(dāng)沒(méi)有數(shù)據(jù)傳送時(shí),即數(shù)據(jù)轉(zhuǎn)發(fā)完畢時(shí),控制信號(hào)置低電平,關(guān)斷路由器,達(dá)到降低功耗的目的。
文檔編號(hào)H04L12/56GK102195891SQ20111015581
公開(kāi)日2011年9月21日 申請(qǐng)日期2011年6月10日 優(yōu)先權(quán)日2011年6月10日
發(fā)明者曹偉, 洪琪, 王伶俐, 王穎 申請(qǐng)人:復(fù)旦大學(xué)