周本文+郭凱
中圖分類號:TN929.5 文獻(xiàn)標(biāo)志碼:A 文章編號:1009-6868 (2014) 01-0059-04
Communication Method of Hot IP Cores in Smart Device
摘要:片上網(wǎng)絡(luò)通信架構(gòu)的改進(jìn),使熱IP核連接多個路由器,并且原本與熱IP核相連的一個路由器的通信量被分配到多個路由器上?;诟倪M(jìn)的片上網(wǎng)絡(luò)通信架構(gòu),又設(shè)計出新的路由器選擇算法。在該算法中,可以根據(jù)熱IP連接的路由器的當(dāng)前狀態(tài)選擇數(shù)據(jù)通信的路由,這樣使得熱IP能夠更加均勻地分配通信量,從而有效地提高了數(shù)據(jù)傳輸效率,降低數(shù)據(jù)傳輸延時。實驗表明,新的算法能夠有效減少傳輸延遲。
關(guān)鍵詞: 熱IP核;片上網(wǎng)絡(luò);路由選擇
Abstract: In this paper, we describe improvements to the communication architecture of network-on-chip. Our proposed method involves connecting the hot IP core to more than one router. Traffic is distributed to routers that connect to the hot IP core. We also design a router-selection algorithm based on this improved communication architecture. A router is selected for communication according to the statuses of routers connecting to the hot IP core. This allows traffic be evenly distributed to routers. Our experimental results show that this method reduces transmission delay.
Key words: hot IP cores; network-on-chip; router selection
隨著智能終端的不斷發(fā)展,終端芯片上集成的IP核越來越多。大量的IP核集成到一個芯片上,導(dǎo)致其IP核所需要的通信帶寬也越來越大。傳統(tǒng)的設(shè)計方案中的片上系統(tǒng)(SoC)總線結(jié)構(gòu)受到了嚴(yán)峻的挑戰(zhàn)。文獻(xiàn)[1]-[3]中介紹了一種新的片上通信結(jié)構(gòu)——片上網(wǎng)絡(luò)(NoC),它是將互聯(lián)網(wǎng)的技術(shù)移植到片上系統(tǒng)中,數(shù)以百計的片上資源(IP核)則通過互連結(jié)構(gòu)將它們連接起來,并同時將通信與計算分離。由于其較先進(jìn)的通信模式,NoC互連結(jié)構(gòu)已成為SoC中優(yōu)選的片上通信結(jié)構(gòu)。
NoC由控制數(shù)據(jù)傳輸?shù)穆酚善骱瓦M(jìn)行數(shù)據(jù)傳輸?shù)墓艿罉?gòu)成。對于2D-Mesh NoC(如圖1所示),可能會存在某個或者某幾個路由器在通信的過程中承擔(dān)了很重的任務(wù),形成過熱點(diǎn)。該問題會引起網(wǎng)絡(luò)增加延時,甚至產(chǎn)生擁塞;并且造成片上的通信資源分布不平衡。所以在設(shè)計NoC的時候,需要盡可能地減少該問題的出現(xiàn)。
NoC中有兩種情況可能產(chǎn)生過熱點(diǎn),第一種情況是數(shù)據(jù)在路由器之間通信時,可能會頻繁使用某些路由器,導(dǎo)致這些路由器成為NoC中的過熱點(diǎn)(如圖1中H1),可以通過自適應(yīng)路由算法減小這種情況出現(xiàn)[4-6]的頻率;而另一種情況是,在終端芯片中會包含一些通信量比較大的IP核(熱IP核),例如動態(tài)隨機(jī)存取存儲器(DRAM)控制器、浮點(diǎn)數(shù)運(yùn)算單元等。由于其他的IP核對這些單元的需求較高,在通信過程中容易造成所連接的路由器傳輸數(shù)據(jù)過多,容易導(dǎo)致?lián)砣?,從而降低NoC的通信性能[5],這些熱IP核所連的路由器有可能形成過熱點(diǎn)(如圖1中的H2)。若在NoC中出現(xiàn)了過熱點(diǎn),不僅會造成NoC的網(wǎng)絡(luò)延時急劇增大,還會導(dǎo)致系統(tǒng)資源的分配不均衡。為了解決該問題,文獻(xiàn)[7]中闡述了一種方法,就是對通信量較大的、核的通信進(jìn)行延遲,使得通信相對分散,從而減少對應(yīng)的路由器某段時刻的工作任務(wù),減少網(wǎng)絡(luò)的擁塞。但是該方法沒有減少路由器的通信量,同時造成通信延時增大。文獻(xiàn)[8]中提出了一個新的NoC熱IP核的通信架構(gòu)方案,該方案能夠有效地避免熱IP核所連接路由器的通信流量過大的情況。但是該方案在熱IP核的傳輸路由選擇過程中,使用的是靜態(tài)路由器選擇。隨著源IP核和目的IP核之間的通信量的增大,所選擇的路由器仍然會出現(xiàn)擁塞,從而造成數(shù)據(jù)延時增大。
文章針對熱IP核提出了一種新的路由選擇方法。該方法在文獻(xiàn)[8]的拓?fù)浣Y(jié)構(gòu)的基礎(chǔ)上,利用動態(tài)的熱IP核通信路由選擇方案,進(jìn)一步降低了熱IP核通信所導(dǎo)致的路由延時。
1 NoC熱IP核架構(gòu)
在終端芯片中,所有任務(wù)之間的通信不可能是平均的。核與核之間通信時,熱IP核所連接的路由器可能會成為NoC中的過熱點(diǎn)。為了避免過熱點(diǎn)的發(fā)生,可以在熱IP核上添加多個路由器,讓該核與其他核之間的通信分散在這些路由器上,以減少路由器的通信量,從而減少過熱點(diǎn)形成的可能性,如圖2所示。
在設(shè)計NoC時,可以為熱IP核添加上多個路由器。由于IP核所連接的路由器數(shù)量可能是多個,因此在通信時必須確定源IP核和目的IP核通信時所用的路由器,即IP核發(fā)出數(shù)據(jù)之前必須判斷出源路由器以及目的路由器[8]。
文章所提架構(gòu)采用的是2D拓?fù)浣Y(jié)構(gòu)(如圖2所示),因此使用二維坐標(biāo)對網(wǎng)絡(luò)中的路由器進(jìn)行統(tǒng)一的編址(左上角為坐標(biāo)原點(diǎn),水平向右為X軸正向,垂直向下為Y軸正向)。
2 傳輸路由器的確定方法
為了能夠盡可能地減小NoC中的通信延時,源IP核必須確定與目的IP核通信相對的一對路由器,因此在IP核發(fā)出數(shù)據(jù)之前必須選擇通信的源路由器和目的路由器。傳輸時的路由器由源IP核所連接的路由器在傳輸時的實際狀況決定。為了能使動態(tài)的熱IP核所連接的路由器通信量相對平均,我們采用動態(tài)的調(diào)控機(jī)制對這些路由器進(jìn)行控制。如果某個路由器的通信率大于某個定值x(該值是由設(shè)計者根據(jù)網(wǎng)絡(luò)的傳輸要求設(shè)定的經(jīng)驗值,文中所提方法中設(shè)定為0.7),則轉(zhuǎn)發(fā)的數(shù)據(jù)包不經(jīng)過該路由器,否則將按照最短路徑原則進(jìn)行路由器選擇。路由器通信率是指某個IP核通過該路由器轉(zhuǎn)發(fā)和接收的包數(shù)和該IP核轉(zhuǎn)發(fā)和接收的總包數(shù)的比值,即:
通信率=該路由器轉(zhuǎn)發(fā)和接收的數(shù)據(jù)包數(shù)目/該IP核上轉(zhuǎn)發(fā)和接收的數(shù)據(jù)包總數(shù)目
在通信過程中,如果源IP核是通信量大的核,那么發(fā)包時IP核就要選擇從與之相連的路由器上發(fā)出數(shù)據(jù)包。首先我們需要比較這些相連路由器的通信率,選出通信率小于x的路由器;然后通過比較這些路由器與目的節(jié)點(diǎn)的曼哈頓距離,得出距離最短的路由器既是所需要選擇的路由器。如果IP核不是通信量大的核,數(shù)據(jù)包則會直接從相連接的路由器發(fā)出。如果發(fā)送的數(shù)據(jù)包是發(fā)往連有多個路由器的IP核,那么則需要比較源IP核所對應(yīng)的路由器與連接目的核的路由器的曼哈頓距離,距離最小的路由器就是所要選擇的路由器;如果數(shù)據(jù)包發(fā)送給連有一個路由器的核,就直接發(fā)送數(shù)據(jù)包給連接目的核的路由器。算法描述如下:
(1)初始化addr_s,addr_d為Null;初始化distance為n+m -1。(addr_s存放的是源路由器地址,addr_d存放的是目的路由器地址,distance存放的是最小曼哈頓距離,n和m分別為mesh網(wǎng)絡(luò)的行數(shù)和列數(shù));
(2)將目的IP核所對應(yīng)的所有路由器地址放入link_d中;
(3)如果源節(jié)點(diǎn)不是通信量大的IP核,就直接將所連接的路由器的地址放入link_s;否則,檢查每個路由器的通信率確認(rèn)是否大于x,如果不是,將該路由器的地址放入link_s中;
(4)如果link_d為空,則轉(zhuǎn)為(7);否則,就從link_d中選擇一個地址,并將該地址從link_d中刪除;
(5)使用選擇的地址和link_s中的每個地址分別計算出曼哈頓距離,比較這些距離,選擇出最小的曼哈頓距離;
(6)比較所選擇的曼哈頓距離與distance的大小,如果所選擇的曼哈頓距離小于distance,將該距離賦值給distance,并從link_d中選擇的地址賦值給addr_d,并將計算曼哈頓距離所對應(yīng)的link_s中的地址賦值給addr_s,后轉(zhuǎn)到(4);如果所選擇的曼哈頓距離大于或等于distance,則直接轉(zhuǎn)到(4);
(7)將addr_s中的路由器地址設(shè)置為源路由器地址,addr_d中的地址設(shè)置為目的路由器地址,結(jié)束程序。
通過該方法選擇出的源路由器和目的路由器在通信時可以更好地平衡網(wǎng)絡(luò)的通信流量,在通信量較大的IP核之間通信時能夠獲得更小的通信延時。
3 仿真實驗
3.1 實驗?zāi)P?/p>
本實驗使用OPNET編制的NoC仿真平臺[9-10],并基于4x4 2-D Mesh結(jié)構(gòu)進(jìn)行仿真實驗。在實驗中,我們通過評估上述的算法和傳統(tǒng)結(jié)構(gòu)下XY路由算法的時延和路由的最大交換數(shù),比較算法的優(yōu)劣。為了能夠模擬出通信規(guī)模大的IP核,其他IP核會增大與這些IP核通信的概率。在本實驗中,我們設(shè)置了兩個通信規(guī)模較大的IP核,以此實現(xiàn)過熱點(diǎn),并且分別做了其他IP核和這兩個IP核的通信概率分別為5%、10%、15%、20%、30%、40%的實驗,因此實驗時包含了16個路由器和13個IP核,實驗時所采用的拓?fù)浣Y(jié)構(gòu)如圖2中改造后的架構(gòu)。
除了這個特殊的通信之外,我們采用的是轉(zhuǎn)置模式的通信,也就是(i,j)節(jié)點(diǎn)的數(shù)據(jù)發(fā)送給(4-i-1,4-j-1)[4]。該實驗所選用的路由算法為XY路由算法。
其中,數(shù)據(jù)包的延時指的是數(shù)據(jù)包進(jìn)入網(wǎng)絡(luò),直到數(shù)據(jù)包尾部離開網(wǎng)絡(luò)的這段時間差。網(wǎng)絡(luò)中數(shù)據(jù)包的延時主要由3部分組成:
Pdelay = Tdelay + Bdelay + Ldelay
其中,Tdelay表示數(shù)據(jù)包的傳輸延時;Bdelay表示路由內(nèi)部隊列的緩沖延時;Ldelay表示鏈路的傳播延時。由于相對于傳輸延時和緩沖延時,鏈路傳播延時要小的多,所以在仿真中我們忽略鏈路傳播延時,即設(shè)Ldelay = 0。
平均延時指的是將所得到的各個數(shù)據(jù)包的延時累加并取平均值:
Latency = pk_num ∑ i =1 Pdelay/ pk_num
其中pk_num定義為接收到的數(shù)據(jù)包個數(shù)。
3.2 實驗結(jié)果
文中所提出的兩種NoC結(jié)構(gòu)和傳統(tǒng)的2D-Mesh Noc結(jié)構(gòu)的數(shù)據(jù)傳輸延時比較如圖3-7所示。圖3-7中的概率為熱IP核與其他IP核的通信概率,傳統(tǒng)Mesh結(jié)構(gòu)表示的是傳統(tǒng)Mesh結(jié)構(gòu)下的XY路由方法,靜態(tài)選擇方法為文獻(xiàn)[8]中的方案,動態(tài)選擇方法為本文提出的方案。
由圖3-7可以看出,在熱IP核與其他IP核的通信概率為5%時,3種方案的延時近似相等。當(dāng)此概率超過5%時,傳統(tǒng)的Mesh結(jié)構(gòu)NoC的通信延時要大于剩余兩種方案的延時,并且隨著概率的增大,通信延時也增大。這是因為在IP核通信時,熱IP核的路由器所承擔(dān)的通信量隨著概率的增大而增多。文章所提出的通信選擇方案與靜態(tài)路由選擇方案在概率為5%、10%及15%時延時基本上相同。因此熱IP核采用這兩種方法時,弱化效果基本上相同。但隨著熱IP核通信量的增多,通信路由器的動態(tài)選擇方法比靜態(tài)選擇方法更具優(yōu)勢。這是因為與靜態(tài)選擇方法相比,動態(tài)選擇方法能夠更好地調(diào)節(jié)通信流量,并且使得網(wǎng)絡(luò)的流量分布更加均衡。
因此,文章所提出的熱IP核通信方法具有更低的傳輸延時,能夠提高NoC的通信性能。
4 結(jié)束語
智能終端的飛速發(fā)展,導(dǎo)致終端的功能越來越復(fù)雜,其芯片集成的IP核越來越多?;诳偩€架構(gòu)的SoC設(shè)計在IP核間的通信延時較大,此時新興的NoC架構(gòu)體現(xiàn)出了其IP核之間通信的優(yōu)越性。文章提出了一種NoC中熱IP核的路由器傳輸選擇方法,通過這種方法可以使得數(shù)據(jù)在網(wǎng)絡(luò)中的傳輸延時減小,并且還能防止擁塞的出現(xiàn)。
參考文獻(xiàn)
[1] L. Benini and G. D. Micheli. Networks on chips: a new soc paradigm [J]. IEEE Computer. 2002, 35(1): 70-78.
[2] W. J. Daly and B. Towles. Route Packets, Not Wires: On-Chip Interconnection Networks [C]// Proceeding of Design Automation Conference, 18-22 June, 2001, Las Vegas, NV. USA: IEEE, 2001:684-689.
[3] M. Daneshtalab, A. Sobhani, A. Afzali-Kusha, et al. NoC Hot Spot minimization Using AntNet Dynamic Routing Algorithm [C]// Proceedings of 17th ASAP, 11-13 September, 2006, Steamboat Springs, Colorado, USA. USE: IEEE Press, 2006:33-38.
[4] G. Chiu. The Odd-Even Turn Model for Adaptive Routing. [J]. IEEE Transaction on Parallel and Distributed System, 11(7), 2000: 729-738.
[5] A. Sobhani, M. Daneshtalab, A. Afzali-Kusha, et al. Dynamic Routing Algorithm for Avoiding HotSpots in On-chip Networks [C]// Proceedings of DTIS, 2007,Tunis,USA.USA: IEEE Press, 2006:179-183.
[6] P. Lotfi-Kamran, M. Daneshtalab, Z. Navabi, et al. BARP- A Dynamic Routing Protocol for Balanced Distribution of Traffic in NoCs to Avoid Congestion [C]// Proceedings of 11th DATE Mar 2008, Germany.USA: IEEE, 2008:1408-1413.
[7] Isask'har Walter, Israel Cidon, Ran Ginosar, et al. Access Regulation to Hot-Modules in Wormhole NoCs [C]// First International Symposium on Networks-on-Chip(NOCS 2007), Washington DC, USA, 7-9 May, 2007. USA: IEEE, 2007:137-148.
[8] 歐陽一鳴,郭凱,梁華國.片上網(wǎng)絡(luò)通信中過熱點(diǎn)的弱化方法[J].電子測量與儀器學(xué)報,23(8),2009:99-104.
[9] OPNET Modeler[EB/OL].[2012-03-18].http://www.riverbed.com/products-solutions/products/application-performance-management/
[10] N.Wu, F.Ge, Q.Wang. Simulation and performance analysis of network on chip architectures using OPNET [C]//ASIC, 2007. ASICON '07,GuiLin, China, Oct. 2007. USA: IEEE,2007: 1285-1288.
作者簡介
周本文,中國科技大學(xué)碩士畢業(yè);現(xiàn)就職于中國移動通信集團(tuán)安徽有限公司任高級開發(fā)工程師;從事移動互聯(lián)網(wǎng)應(yīng)用研究與開發(fā),負(fù)責(zé)移動互聯(lián)網(wǎng)客戶端應(yīng)用研究工作;獲國家發(fā)明專利2項。
郭凱,合肥工業(yè)大學(xué)碩士畢業(yè);現(xiàn)就職于中國移動通信集團(tuán)安徽有限公司任開發(fā)工程師;從事移動互聯(lián)網(wǎng)應(yīng)用的研發(fā),負(fù)責(zé)移動客戶端的研發(fā)工作;已發(fā)表論文4篇。
[2] W. J. Daly and B. Towles. Route Packets, Not Wires: On-Chip Interconnection Networks [C]// Proceeding of Design Automation Conference, 18-22 June, 2001, Las Vegas, NV. USA: IEEE, 2001:684-689.
[3] M. Daneshtalab, A. Sobhani, A. Afzali-Kusha, et al. NoC Hot Spot minimization Using AntNet Dynamic Routing Algorithm [C]// Proceedings of 17th ASAP, 11-13 September, 2006, Steamboat Springs, Colorado, USA. USE: IEEE Press, 2006:33-38.
[4] G. Chiu. The Odd-Even Turn Model for Adaptive Routing. [J]. IEEE Transaction on Parallel and Distributed System, 11(7), 2000: 729-738.
[5] A. Sobhani, M. Daneshtalab, A. Afzali-Kusha, et al. Dynamic Routing Algorithm for Avoiding HotSpots in On-chip Networks [C]// Proceedings of DTIS, 2007,Tunis,USA.USA: IEEE Press, 2006:179-183.
[6] P. Lotfi-Kamran, M. Daneshtalab, Z. Navabi, et al. BARP- A Dynamic Routing Protocol for Balanced Distribution of Traffic in NoCs to Avoid Congestion [C]// Proceedings of 11th DATE Mar 2008, Germany.USA: IEEE, 2008:1408-1413.
[7] Isask'har Walter, Israel Cidon, Ran Ginosar, et al. Access Regulation to Hot-Modules in Wormhole NoCs [C]// First International Symposium on Networks-on-Chip(NOCS 2007), Washington DC, USA, 7-9 May, 2007. USA: IEEE, 2007:137-148.
[8] 歐陽一鳴,郭凱,梁華國.片上網(wǎng)絡(luò)通信中過熱點(diǎn)的弱化方法[J].電子測量與儀器學(xué)報,23(8),2009:99-104.
[9] OPNET Modeler[EB/OL].[2012-03-18].http://www.riverbed.com/products-solutions/products/application-performance-management/
[10] N.Wu, F.Ge, Q.Wang. Simulation and performance analysis of network on chip architectures using OPNET [C]//ASIC, 2007. ASICON '07,GuiLin, China, Oct. 2007. USA: IEEE,2007: 1285-1288.
作者簡介
周本文,中國科技大學(xué)碩士畢業(yè);現(xiàn)就職于中國移動通信集團(tuán)安徽有限公司任高級開發(fā)工程師;從事移動互聯(lián)網(wǎng)應(yīng)用研究與開發(fā),負(fù)責(zé)移動互聯(lián)網(wǎng)客戶端應(yīng)用研究工作;獲國家發(fā)明專利2項。
郭凱,合肥工業(yè)大學(xué)碩士畢業(yè);現(xiàn)就職于中國移動通信集團(tuán)安徽有限公司任開發(fā)工程師;從事移動互聯(lián)網(wǎng)應(yīng)用的研發(fā),負(fù)責(zé)移動客戶端的研發(fā)工作;已發(fā)表論文4篇。
[2] W. J. Daly and B. Towles. Route Packets, Not Wires: On-Chip Interconnection Networks [C]// Proceeding of Design Automation Conference, 18-22 June, 2001, Las Vegas, NV. USA: IEEE, 2001:684-689.
[3] M. Daneshtalab, A. Sobhani, A. Afzali-Kusha, et al. NoC Hot Spot minimization Using AntNet Dynamic Routing Algorithm [C]// Proceedings of 17th ASAP, 11-13 September, 2006, Steamboat Springs, Colorado, USA. USE: IEEE Press, 2006:33-38.
[4] G. Chiu. The Odd-Even Turn Model for Adaptive Routing. [J]. IEEE Transaction on Parallel and Distributed System, 11(7), 2000: 729-738.
[5] A. Sobhani, M. Daneshtalab, A. Afzali-Kusha, et al. Dynamic Routing Algorithm for Avoiding HotSpots in On-chip Networks [C]// Proceedings of DTIS, 2007,Tunis,USA.USA: IEEE Press, 2006:179-183.
[6] P. Lotfi-Kamran, M. Daneshtalab, Z. Navabi, et al. BARP- A Dynamic Routing Protocol for Balanced Distribution of Traffic in NoCs to Avoid Congestion [C]// Proceedings of 11th DATE Mar 2008, Germany.USA: IEEE, 2008:1408-1413.
[7] Isask'har Walter, Israel Cidon, Ran Ginosar, et al. Access Regulation to Hot-Modules in Wormhole NoCs [C]// First International Symposium on Networks-on-Chip(NOCS 2007), Washington DC, USA, 7-9 May, 2007. USA: IEEE, 2007:137-148.
[8] 歐陽一鳴,郭凱,梁華國.片上網(wǎng)絡(luò)通信中過熱點(diǎn)的弱化方法[J].電子測量與儀器學(xué)報,23(8),2009:99-104.
[9] OPNET Modeler[EB/OL].[2012-03-18].http://www.riverbed.com/products-solutions/products/application-performance-management/
[10] N.Wu, F.Ge, Q.Wang. Simulation and performance analysis of network on chip architectures using OPNET [C]//ASIC, 2007. ASICON '07,GuiLin, China, Oct. 2007. USA: IEEE,2007: 1285-1288.
作者簡介
周本文,中國科技大學(xué)碩士畢業(yè);現(xiàn)就職于中國移動通信集團(tuán)安徽有限公司任高級開發(fā)工程師;從事移動互聯(lián)網(wǎng)應(yīng)用研究與開發(fā),負(fù)責(zé)移動互聯(lián)網(wǎng)客戶端應(yīng)用研究工作;獲國家發(fā)明專利2項。
郭凱,合肥工業(yè)大學(xué)碩士畢業(yè);現(xiàn)就職于中國移動通信集團(tuán)安徽有限公司任開發(fā)工程師;從事移動互聯(lián)網(wǎng)應(yīng)用的研發(fā),負(fù)責(zé)移動客戶端的研發(fā)工作;已發(fā)表論文4篇。