片上網(wǎng)絡(luò)中任務(wù)與節(jié)點間映射方案與拓?fù)浣Y(jié)構(gòu)的設(shè)計方法
【專利摘要】本發(fā)明公開了一種片上網(wǎng)絡(luò)中任務(wù)與節(jié)點間映射方案與拓?fù)浣Y(jié)構(gòu)的設(shè)計方法,其技術(shù)要點為:將功耗和響應(yīng)時間分開作為考核方案的優(yōu)先指標(biāo),但在尋找最優(yōu)方案過程中同時考慮功耗和響應(yīng)時間,做到了尋找出來的方案使功耗和系統(tǒng)延時同時最小,另外選擇使得功耗和響應(yīng)時間最小的拓?fù)浣Y(jié)構(gòu)。
【專利說明】片上網(wǎng)絡(luò)中任務(wù)與節(jié)點間映射方案與拓?fù)浣Y(jié)構(gòu)的設(shè)計方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及集成電路設(shè)計領(lǐng)域,具體涉及針對無線片上網(wǎng)絡(luò)中多任務(wù)與多節(jié)點間的片上網(wǎng)絡(luò)中任務(wù)與節(jié)點間映射方案與拓?fù)浣Y(jié)構(gòu)的設(shè)計方法。
【背景技術(shù)】
[0002]隨著未來通信終端和設(shè)備的計算復(fù)雜度的增大,實時復(fù)雜系統(tǒng)芯片的集成規(guī)模需求將迅速增長,一塊芯片上可能會集成數(shù)十個或成百上千的處理單元,基于多核的信號處理平臺成為軟件無線電的發(fā)展趨勢。在這樣的綜合化系統(tǒng)中,設(shè)計可靠、高速、低功耗的高性能芯片內(nèi)通信體系成為片上系統(tǒng)(System on Chip, SoC)發(fā)展的挑戰(zhàn)與機遇。傳統(tǒng)多核SoC的總線式通信結(jié)構(gòu)無法滿足大規(guī)模實時復(fù)雜數(shù)字信號處理過程中數(shù)據(jù)交換的需求,因此提出了新一代的片上互聯(lián)與通信機制——片上網(wǎng)絡(luò)。
[0003]片上網(wǎng)絡(luò)(上每個節(jié)點也就是處理器)實現(xiàn)的系統(tǒng)主要是對實時性要求較高的復(fù)雜通信系統(tǒng)或數(shù)字信號處理系統(tǒng)。通信與信號處理具有實時性和處理時延要求,因此,NoC的映射方案務(wù)必要使得系統(tǒng)的延時盡量小。另外,片上網(wǎng)絡(luò)是在集成電路的芯片上實現(xiàn)的,為了保證芯片能夠穩(wěn)定的工作,芯片的溫度不能高。芯片的溫度是由芯片的功耗決定的,功耗越大,芯片的溫度越高。因此,在選擇映射方案時,必須選擇使得功耗盡量低和時延盡量少的方案。
[0004]傳統(tǒng)的有線片上網(wǎng)絡(luò)的拓?fù)浼軜?gòu)是確定的,當(dāng)芯片生產(chǎn)出來后,芯片內(nèi)的拓?fù)溆蒀MOS電路的金屬連線確定下來了。而無線片上網(wǎng)絡(luò)的節(jié)點可通過無線信道構(gòu)建出特定的虛擬拓?fù)?,如果改變?jié)點的接入方式,網(wǎng)絡(luò)拓?fù)潆S之發(fā)生變化。所以在無線片上網(wǎng)絡(luò)中,可以比較不同拓?fù)浣Y(jié)構(gòu)下任務(wù)與節(jié)點間映射方案的性能優(yōu)劣,根據(jù)不同的任務(wù)需求,找到性能優(yōu)于有線片上網(wǎng)絡(luò)的最佳的拓?fù)溥x擇和映射方案。
[0005]通過查新和廣泛收集文獻資料,我們發(fā)現(xiàn)已經(jīng)公開的用于尋找片上網(wǎng)絡(luò)上任務(wù)與節(jié)點間映射方案的方法有如下幾類:
[0006]文獻“周干民,尹勇生,胡永華等.基于蟻群優(yōu)化算法的NoC映射.計算機工程與應(yīng)用.2005,41(18):7-10.”采用一種有效地蟻群優(yōu)化算法實現(xiàn)了片上網(wǎng)絡(luò)映射,在將任務(wù)映射到片上網(wǎng)絡(luò)節(jié)點的同時,盡可能的減少了系統(tǒng)的通訊功耗。該方法的目標(biāo)函數(shù)為功耗,該方法大致如下:根據(jù)螞蟻的個數(shù)循環(huán)地為每個未分配的節(jié)點按照概率分配任務(wù)(此概率是通過一種方式計算的將一個節(jié)點分配到某個任務(wù)的概率),每循環(huán)一次都要使所有節(jié)點都分配到相應(yīng)的任務(wù),然后采用兩交換法來進行局部搜索,找出功耗最小的最優(yōu)解,并用最優(yōu)解的功耗值信息素衰減度和當(dāng)前信息素的值來更新最優(yōu)解對應(yīng)的螞蟻的信息素,通過對上述過程多次迭代后,最后選出使功耗最小的分配方案。這種方法獲得的映射方案具有較小的通訊功耗,但沒有考慮系統(tǒng)的延時性能。
[0007]文獻“楊盛光,李麗,高明倫等.面向能耗和延時的NoC映射方法.電子學(xué)報.2008,36(5):937-942”基于二維網(wǎng)格結(jié)構(gòu)NoC平臺,建立了基于蟻群算法的旨在優(yōu)化系統(tǒng)通信能耗和鏈路負(fù)載方差的統(tǒng)一目標(biāo)函數(shù)。該方法的目標(biāo)函數(shù)cost的計算式為:[0008]cost= λ XE+(I—λ ) XVAR
[0009]其中,λ為比例系數(shù),E為能耗,VAR為鏈路負(fù)載方差。該方法大致如下:
[0010](I)根據(jù)螞蟻的個數(shù)循環(huán)地為每個未分配的節(jié)點按照概率分配任務(wù)(概率是通過一種方式計算的將一個節(jié)點分配到某個任務(wù)的概率),每循環(huán)一次都要使所有節(jié)點都分配到相應(yīng)的任務(wù),然后采用兩交換法來進行局部搜索,找出功耗最小解,并用最優(yōu)解的功耗值信息素衰減度和當(dāng)前信息素的值來更新最優(yōu)解對應(yīng)的螞蟻的信息素,通過對上述過程多次迭代后,最后選出使目標(biāo)函數(shù)cost最小的分配方案。這種方法沒有考慮通信能耗和執(zhí)行時間是完全不同的物理量,獲得的映射方案不一定具有優(yōu)異的性能。
[0011]文獻Tang lei, Shashi Kumar.A two-step genetic algorithm for mapping taskgraphs to a network on chip architecture.Proceedings of the Euromicro Symposiumon Digital System Design2003.Antalya, Turkey:1EEE, 2003:180-187.提出一種米用兩步遺傳算法實現(xiàn)任務(wù)映射問題的方法。該方法大致如下: [0012](I)首先假設(shè)任務(wù)流圖中所有邊的延時相等,為一常數(shù),即平均數(shù);為每個任務(wù)分配功能單元(如處理器、存儲器等),使得系統(tǒng)的總延時最小;
[0013](2)使用真實的數(shù)據(jù)流圖的邊延時,進一步優(yōu)化,將功能單元分配到NoC的節(jié)點上。
[0014]該方法將整個優(yōu)化階段分成了兩個步驟,從而降低了計算的復(fù)雜度,縮短了計算時間,但獲得的映射方案的能耗和延時不會同時最小。
[0015]文獻 Wenbiao Zhou, Yan Zhang, Zhigang Ma0.Pareto based Mult1-objectiveMapping IP Cores onto NoC Architectures.1EEE Asia Pacific Conference onCircuits and Systems.2006:331-334.和 Giuseppe Ascia, Vincenzo Catania, MaurizioPales1.Mult1-objective Mapping for Mesh-based NoC Architectures.1nternationalConference on Hardware/Software Dodesign and System Synthesis, 2004:182-187.提出采用多目標(biāo)進化算法將片上網(wǎng)絡(luò)上任務(wù)映射到基于Mesh拓?fù)涞钠暇W(wǎng)絡(luò)結(jié)構(gòu)的節(jié)點上。該方法的目標(biāo)函數(shù)有兩個,一個目標(biāo)函數(shù)是平均數(shù)據(jù)包跳數(shù)(hop),計算式如下:
[0016]
【權(quán)利要求】
1.一種片上網(wǎng)絡(luò)中任務(wù)與節(jié)點間映射方案與拓?fù)浣Y(jié)構(gòu)的設(shè)計方法,其特征在于,用向量X= (X1, X2,...Xn..., xN)表示片上網(wǎng)絡(luò)的N個任務(wù)向M個節(jié)點映射的一種方案,向量X的第η個位置上的Xn(O ^ χη^ Μ-1)代表了第η個任務(wù)映射到某個節(jié)點的節(jié)點編號,即Xn表示了將編號為η的任務(wù)分配給了第Xn的節(jié)點,包括如下步驟: .1、生成無線片上網(wǎng)絡(luò)任務(wù)與節(jié)點間映射方案的待選拓?fù)浣Y(jié)構(gòu)T1,T2,, Te,在不同的待選拓?fù)浣Y(jié)構(gòu)上選擇最優(yōu)的映射方案;具體步驟為步驟2到步驟20,初始化g=l ; . 2、對第g個待選拓?fù)銽g,隨機生成一個包含K個分配方案的方案組Jt,并為每個分配方案X=(Xl,x2, , xN)設(shè)定一個交叉的概率Pi和變異的概率qi;以及總的迭代次數(shù)T,并令記錄迭代的次數(shù)的變量t=0 ; .3、求出方案組Jt中每種方案下片上網(wǎng)絡(luò)功耗與響應(yīng)時間:利用計算式出無線NoC的功耗P,其中,Pn是僅與電磁波導(dǎo)傳輸線上載波數(shù)有關(guān)的無線NoC上RF-1鏈路消耗的功耗固定值,Ppe是無線NoC上所有處理核的功耗之和;響應(yīng)時間是從任務(wù)流圖的輸入到輸出的時間間隔,其計算式為D=Tp+Td+Tw,其中,Tp為輸入到輸出路徑上所有任務(wù)的處理時間,Td為輸入到輸出路徑上的數(shù)據(jù)傳遞時間之和,Tff為傳輸過程中由于擁塞導(dǎo)致的數(shù)據(jù)包排隊與等待的時間; 對方案組Jt中每種方案,判斷其是否滿足下列四個條件:一個任務(wù)只能映射到一個處理核上;數(shù)據(jù)的處理速率大于數(shù)據(jù)達(dá)到率;映射方案所需求的帶寬小于或等于所提供的最大帶寬;反饋環(huán)路的迭代邊界小于或等于迭代時間;若不滿足,則將其功耗設(shè)為方案組Jt中功耗最大值,響應(yīng)時間設(shè)為方案組Jt響應(yīng)時間最長值; .4、計算出方案組Jt中各方案的適應(yīng)度值,該適應(yīng)度值大小反映方案的優(yōu)先級,值越小優(yōu)先級越高,所謂優(yōu)先級別是按功耗與響應(yīng)時間小為優(yōu); .5、將方案組Jt中的K個方案隨機分成y個方案小組,其中L是每方案小組中的方案個數(shù),按照第3步中確定的優(yōu)先關(guān)系選出每方案小組中最優(yōu)先的方案組成一個優(yōu)先方案組Qt ; .6、將優(yōu)先方案組Qt中的方案按隨機配對,所述的配對是指按照兩個方案一組進行分組,并以步驟2中設(shè)定的交叉的概率Pi將每對方案中的兩個方案上任意一個相同位置上的節(jié)點的編號進行互換,然后再將所有被互換后的每對方案合并起來得到方案組Q/ ; .7、以步驟2中設(shè)定的變異概率qi改變方案組Q/中各個方案中在任意一個位置上的節(jié)點的編號,得到方案組Gt;
.8、按第4步計算出來的適應(yīng)度值從小到大的順序,從方案組Jt中選擇[-^~個方案,與方案組Gt的方案合并在一起,構(gòu)成包含K個方案的新的方案組Gt'; .9、將方案組Jt和Gt合并成方案組Rt; .10、計算方案組Rt中每種方案下片上網(wǎng)絡(luò)功耗與響應(yīng)時間; .11、將方案組Rt中的2K個方案分成多個小組,每個小組代表一個邊界集,對小組編號,編號較小的小組里的方案比編號較大的小組的方案的優(yōu)先級高;所謂優(yōu)先級別是按功耗與響應(yīng)時間小為優(yōu);.12、初始化一個新的沒有方案的方案組Ft,然后從第11步驟分好的小組中,按小組的編號從大到小的順序,依次將小組內(nèi)的方案加入到Ft中,直到方案組Ft里的方案個數(shù)超過K個,然后將最后加入的小組的方案全部取出;.13、確定第11步中每個小組中各方案的優(yōu)先次序,具體方法如下: 13-1令小組中每個方案的距離值為O,所述的距離值表示該方案與其它方案的聯(lián)系是否緊密; 13-2根據(jù)第10步計算出的各個方案的功耗的大小對方案進行倒序排列,功耗較小的方案排在功耗較大的方案的前面; 13-3根據(jù)第10步計算出的各個方案的響應(yīng)時間大小對方案進行倒序排列,響應(yīng)時間較小的方案排在響應(yīng)時間較大的方案的前面; 13-4對于步驟13-2中已排序的方案,計算各方案的功耗距離,每個方案的功耗距離為排在它后面的第I個,第2個,…,第i個方案的功耗分別對應(yīng)地減去排在它前面的第I個,第2個,…,第i個方案的功耗所得到的差相加,然后除以i所得的值,其中i的取值滿足關(guān)系式:i ^ log22K ; 13-5對于步驟13-3中已排序的方案,計算各方案的響應(yīng)時間距離,每個方案的響應(yīng)時間距離為排在它后面的第I個,第2個,…,第i個方案的功耗分別對應(yīng)地減去排在它前面的第I個,第2個,…,第i個方案的功耗所得到的差相加,然后除以i所得的值; 13-6將各個方案的響應(yīng)時間距離和功耗距離相加得到方案的距離值; 13-7把功耗最小的方案和響應(yīng)時間最小的方案排在最前面,然后根據(jù)距離大小對剩余的方案進行排序,并排在功耗最小的方案和響應(yīng)時間最小的方案的后面,距離值較大的方案排在距離值較小的方案的前面,這樣排在前面的方案的優(yōu)先級比排在后面的方案的優(yōu)先級聞;.14、從經(jīng)過了第13步驟排序后的第12步驟里取出的小組里按優(yōu)先級高低選擇方案加入方案組Ft,直到方案組Ft里的方案個數(shù)為K個;. 15、將方案組Ft中的K個方案隨機分成I個方案小組,其中L是每方案小組中的方案L個數(shù),按照第10步和第12步聯(lián)合確定的優(yōu)先關(guān)系選出每方案小組中最優(yōu)先的方案組成一個優(yōu)先方案組Ft';.16、將優(yōu)先方案組Ft'中的方案再隨機配對,以步驟2中設(shè)定的交叉的概率Pi將每對方案中的兩個方案上任意一個相同位置上的節(jié)點的編號進行互換,然后再將所有被互換后的每對方案合并起來得到方案組Ht ;.17、以步驟2中設(shè)定的變異的概率qi改變方案組Ht中各個方案中在任意一個位置上的節(jié)點的編號,得到方案組Ht';.18、根據(jù)第11步和第13步聯(lián)合確定的方案組Ft中方案的優(yōu)先次序,按照優(yōu)先級從高到
低的順序,從方案組Ft中選擇K - "^個方案,與方案組H/的方案合并在一起,構(gòu)成包含K
個方案的新的方案組Jt+1 ;. 19、如果t〈T,則t=t+l,然后返回到步驟3重復(fù)上述所有步驟,否則進入步驟20;. 20、檢查方案組Jt中各方案是否滿足下列四個條件:一個任務(wù)只能映射到一個處理核上;數(shù)據(jù)的處理速率大于數(shù)據(jù)達(dá)到率;映射方案所需求的帶寬小于或等于所提供的最大帶寬;反饋環(huán)路的迭代邊界小于或等于迭代時間;若不滿足,則將該方案的適應(yīng)度值設(shè)為最差值;否則,按照步驟4所述的方法計算出方案組Jt中各方案的適應(yīng)度值,選出適應(yīng)度值最小的方案,即功耗和響應(yīng)時間同時最小的方案,將其作為第g個待選拓?fù)浣Y(jié)構(gòu)最優(yōu)的任務(wù)到節(jié)點間的映射方案JTg,進入步驟21 ;.21、如果g〈G,則g=g+l,進入步驟2,重復(fù)上述所有步驟;否則,進入步驟22;.22、得到待選拓?fù)浣Y(jié)構(gòu)T1,T2,, Te所對應(yīng)的G種最優(yōu)方案分別為
【文檔編號】G06F15/76GK103761212SQ201410027528
【公開日】2014年4月30日 申請日期:2014年1月21日 優(yōu)先權(quán)日:2014年1月21日
【發(fā)明者】陳亦歐, 胡劍浩, 凌翔 申請人:電子科技大學(xué)