專利名稱:一種基于統計時分復用技術的多簇片上網絡架構的制作方法
技術領域:
本發(fā)明涉及一種多簇片上網絡架構,具體地說是一種能有效降低網絡負荷、減小通信延時,進而提高系統整體性能的基于統計時分復用(Statistical Time Division Multiplex,STDM)技術的多簇片上網絡(Multi-Cluster Network on chip,MCNoC)架構。
背景技術:
隨著半導體工藝技術的持續(xù)發(fā)展,單顆芯片上所能集成的晶體管數目越來越多, 雖然繼續(xù)通過提高工藝的方法來提升系統性能的方法仍然勉強可行,但是這種做法的商業(yè)代價甚至已經超過了其所帶來的商業(yè)利益,因此業(yè)界開始轉而尋求新的方法以試圖提升系統性能。在這種情況下,單芯片多核處理器(Multi-Processor System on Chip,MPSoC)的概念被提出并受到廣泛關注。在MPSoC中,隨著核數的上升,如總線等傳統架構逐漸無法滿足系統通信要求,因此作為一種新的通信架構,NoC概念在1999年左右被提出。其核心思想是計算單元與通信架構相互分離,而其通信部分則借鑒了計算機網絡技術,并將其移植到集成電路設計中來,這樣便可以從體系結構上解決片上通信的瓶頸問題。然而,當核數進一步上升時,單一層次的NoC架構也同樣面臨存儲墻(Memory Wall)問題,此時,作為分布式存儲典范的層次化MCNoC架構被提出,并成為NoC領域的熱點問題之一。一般而言,MCNoC系統可分為多個層次①單個處理器核,各核配置私有存儲器,即三級存儲單元(Memory Level3);②由若干個核構成簇,簇內還包含二級存儲單元 (Memory Level2),用于核間數據交互;③若干簇以某種拓撲架構互連,從而構成整個系統, 并配有一級存儲單元(Memory Levell),其總體架構如圖1所示。由圖1可見,在MCNoC中包含三種存儲層次,因此各處理器可以分別在不同層次上同時進行訪存,增強了系統對存儲單元的并發(fā)訪問能力,因而可以顯著提高系統性能。然而,當簇間發(fā)生數據交互時,由于該交互過程跨越多個存儲單元層次,故其時間開銷非常大,成為系統訪存瓶頸問題所在。同時,簇內通常采用總線架構,而簇間往往是網絡架構,由于這兩者之間的天然差別,簇間通信效率將變得格外低下。傳統總線通常采用時分復用(Time Division Multiplexing,TDM)技術,即總線上的各主設備(Master)以基于時間片的方式依次使用總線,每一時間片內只有一個主設備擁有總線使用權。某主設備獲得總線使用權時,其他主設備均處于等待狀態(tài),如圖2中基于 TDM技術的總線所示。由圖2可見,當主設備1 (Masterl)獲得總線使用權后,其他所有Master均處于等待狀態(tài),直到Masterl釋放總線后,才可以申請使用。因此當MCNoC簇內各Master需要訪問遠端(不掛接于本總線)從設備(如MCNoC中的Memory Levell)時,其消耗的時間t將顯著增加,對于需要從遠端返回數據包的讀操作而言更是如此。而在此期間,其他各Master 將只能耗費大量時間等待總線使用權,這顯然會極大影響系統整體性能。分析可知,時間開銷t可分為三段,即①源端傳輸層處理時間tl ;②網絡層傳輸時間t2 ;③目的端傳輸層處理時間t3。其中,t2在總時間中所占比例最大,且隨著網絡尺寸的增加而增加。
發(fā)明內容
為了有效降低網絡負荷,減小通信延時,進而從整體上提升NoC系統性能,本發(fā)明的目的是提供一種基于統計時分復用(Statistical Time Division Multiplex, STDM)技術的多簇片上網絡(Multi-Cluster Network on chip,MCNoC)架構。該架構中,在簇內采用基于STDM技術的總線結構,在總線上增設STDM控制單元;同時增設具有等待機制的網絡接口,并針對STDM技術特點,采用一種新的數據包格式。本發(fā)明能減少簇內和簇間通信的差異、降低網絡負荷、減小通信延時,進而提高片上網絡系統整體性能。本發(fā)明的目的是通過以下技術方案來實現的
一種基于統計時分復用技術的多簇片上網絡架構,其特征在于該架構在簇內采用基于統計時分復用技術的總線結構;在總線上設有主設備、從設備、總線部件及統計時分復用控制單元;統計時分復用控制單元與主設備、從設備及總線部件連接;其中,從設備包括存儲器及具有等待機制的網絡接口 ;總線部件包括仲裁器、解碼器以及多路選擇器;統計時分復用控制單元統籌控制總線上主設備、從設備來實現統計時分復用機制;具有等待機制的網絡接口接收總線上主設備發(fā)起的數據傳輸請求,并在滿足觸發(fā)條件情況下觸發(fā)傳輸。針對STDM技術特點,本發(fā)明提出一種新的數據包格式。本發(fā)明采用的數據包格式為,利用記錄在案的多次申請之間的相關性,以第一個記錄在案的申請對應的地址為基地址,后續(xù)申請對應的地址信息在數據包中僅體現為其與基地址之間的偏移量。本發(fā)明中,具有等待機制的網絡接口接收總線上主設備發(fā)起的數據傳輸請求,除非滿足觸發(fā)條件,否則將當前請求記錄在案,并進入等待狀態(tài),直到等待超時后自行觸發(fā)傳輸過程。觸發(fā)條件是指新發(fā)起的數據傳輸請求和原先記錄在案的請求之間相關度低或者原先記錄在案的請求已達到記錄上限。新發(fā)起的傳輸請求和原先記錄在案的請求之間的相關度低是指兩者請求的網絡地址不一致,或者其絕對地址的差值大于某可配置的閾值。本發(fā)明在簇內采用基于STDM技術的總線結構,除通常的解碼(Decoder)、仲裁 (Arbiter)等模塊外,增設STDM控制單元,統籌管理總線上集成的各主、從設備,實現STDM 機制,減小總線與網絡之間的通訊差異。同時,針對STDM技術的特點,設計了具有等待機制的網絡接口(Network Interface),以使得STDM機制的觸發(fā)條件更加容易滿足。在此基礎上,本發(fā)明還提出了一種新的數據包格式,以充分利用簇內各核相關性,進一步降低網絡負荷,改善系統通訊能力,進而從整體上提升NoC系統性能。與現有技術相比,本發(fā)明能有效降低網絡負荷、減小通信延時,進而在很大程度上改善NoC系統整體性能。本發(fā)明對改善片上網絡整體通訊性能有著積極良好的應用價值。。
圖1是MCNoC整體架構示意圖; 圖2是兩種機制的總線訪問示意圖3是基于STDM技術的MCNoC簇內架構意圖; 圖4是基于STDM技術的總線訪問機制示意圖; 圖5(a)是包體格式中原始的STDM幀格式示意圖; 圖5(b)是包體格式中改進后的STDM幀格式示意4圖6是總線寬度為32位時包格式示意圖; 圖7是系統級模型整體架構示意圖; 圖8是簇內各Master內部架構示意圖; 圖9是基于STDM技術的簇對網絡負荷的影響示意圖10(a)是曼哈頓距離變動(簇內核數固定為6)情況下基于STDM技術的簇對執(zhí)行時間的影響示意圖10(b)是簇內處理器核數變動(曼哈頓距離固定為6)情況下基于STDM技術的簇對執(zhí)行時間的影響示意圖11是本發(fā)明及單核技術與傳統MCNoC方案加速比對照示意圖。
具體實施例方式一種本發(fā)明所在地述的基于統計時分復用技術的多簇片上網絡架構,該架構在簇內采用基于統計時分復用技術的總線結構;總線上除了設有主設備、從設備及總線部件外, 還設有與上述各設備及各部件連接的統計時分復用控制單元;其中,從設備具體包括存儲器及具有等待機制的網絡接口 ;總線部件包括仲裁器、解碼器以及多路選擇器;統計時分復用控制單元統籌控制總線上主設備、從設備來實現統計時分復用機制;具有等待機制的網絡接口接收總線上主設備發(fā)起的數據傳輸請求,并在滿足觸發(fā)條件情況下觸發(fā)傳輸。針對STDM技術特點,本發(fā)明采用的數據包格式為利用記錄在案的多次申請之間的相關性,以第一個記錄在案的申請對應的地址為基地址,后續(xù)申請對應的地址信息在數據包中僅體現為其與基地址之間的偏移量。具有等待機制的網絡接口接收總線上主設備發(fā)起的數據傳輸請求,除非滿足觸發(fā)條件,否則將當前請求記錄在案,并進入等待狀態(tài),直到等待超時后自行觸發(fā)傳輸過程。觸發(fā)條件是指新發(fā)起的數據傳輸請求和原先記錄在案的請求之間相關度低或者原先記錄在案的請求已達到記錄上限。新發(fā)起的傳輸請求和原先記錄在案的請求之間的相關度低是指兩者請求的網絡地址不一致,或者其絕對地址的差值大于某可配置的閾值。一般而言,簇內各核任務之間有較高的相關度,因此其所需要訪問的數據在存儲空間上往往具有一定相關性,體現為①訪存對象的網絡地址一致;②地址之間的偏移小于某設定閾值。一方面,如果充分利用這種相關性,則可以使各Master的訪存需求被打包在同一網絡包內完成,以此分攤t2的開銷。另一方面,考慮到STDM技術中以幀為基本單位這一特點,可以將多個Master訪問相同網絡地址的任務放置到同一幀內,交由網絡接口接 (Network Interface,NI)進行統一打包、傳送處理。這樣,各Master訪存開銷t中的t2部分可以共用,而tl和t3部分則分別變?yōu)閠l’(tl’>tl)和t3’ (t3,H3)。然而,如前所述, t2是t中比重最大的,因此總體時間仍然可以得到有效降低。其具體訪問過程如圖2中基于STDM技術的總線所示。在實際傳輸過程中,簇內各核在同一時間點(在數字電路中表現為同一時間周期) 發(fā)起訪問總線請求的概率不高。針對這一問題,本發(fā)明引入等待機制,使得即便多個Master 申請訪問總線的時間稍有先后,只要其間隔小于等待時間上限,仍可視其為同時發(fā)生請求, 放到同一 STDM幀內處理,從而提高STDM幀形成概率,使系統實用性更強。具體而言,基于STDM技術的MCNoC簇體系結構示意圖如圖3所示(WHfMaster為例)。由圖3可以看出,該架構與傳統總線的區(qū)別主要在于將傳統總線中從設備反饋信號里的部分邏輯分離出來,交由STDM控制單元(STDM Controller)處理,而其他部分則保持不變。其中,STDM Controller和所有涉及到STDM幀處理的單元進行控制交互,尤其是增加了 NI和Controller之間特殊控制信號的交互,以解決上文所述的Master申請訪問總線時間稍有先后的問題。本發(fā)明中,由STDM Controller和NI兩個模塊一起構成基于STDM技術的訪問機制,并引入了等待計時因素,實現方法如圖4所示。當某個Master申請使用總線時,首先對其進行判斷,如果該申請和已經記錄在案的申請具有相關性,則可以放在同一 STDM幀內處理。同時,STDM Controller將記錄下申請?zhí)枺蒒I進入等待計時狀態(tài)(OT內部包含一個計時器)。如果等待計時t超過了允許上限 t_max,則處理所有已記錄的Master申請,并對總線進行鎖定,其他Master在處理過程完成之前均無法使用總線。反之,如果在等待時間內有新的Master進行總線申請,則重復上述過程。除了等待時間有上限t_max以外,STDM Controller中所能記錄下的Master申請個數也設置了上限(n_maX),如果記錄的申請個數達到這一限制,同樣會跳出等待狀態(tài),進入對申請的處理及鎖定總線過程。為了進一步降低網絡負荷,提高傳輸效率,充分利用STDM幀技術特點,設計了一種新的網絡包格式。一般情況下,網絡包由包頭、包體和包尾三部分組成。①包頭包含必要的路由和網絡控制信息;②包體傳輸的主體部分,其主要內容為STDM幀,通常由控制信息和有效數據兩部分組成;③包尾指示包的結束。由于需要傳輸的數據往往配有相應的地址信息,因此如果不做任何調整,其在 STDM幀中的格式如圖5-a所示。其中虛線框部分表示地址信息,實線框部分表示與該地址相應的數據信息。而在本發(fā)明中,對幀格式進行了改進,如圖5-b所示。幀中主要包含① 傳輸起始數據對應的地址信息;②后續(xù)數據只傳遞其與起始地址之間的偏移關系;③有效數據。以數據寬度為32位的總線為例,本發(fā)明實際所設計的包格式如圖6所示。其中, 數據包由若干flit組成,每個flit為35位。其中,
①包頭(header)中R_addr為目的節(jié)點路由信息,LS_addr為初始地址;
②包體(body)中payIoadl用于記錄后續(xù)地址和初始地址之間的偏移關系,payload2 為有效數據;
③包尾(tail)中payl0ad3包含本地子系統的路由信息,用以讀操作時的包返回。H_flag用來區(qū)分當前flit是包頭、包體還是包尾,0_flag用來區(qū)分讀/寫操作。 實施例1
為驗證本發(fā)明,搭建了一款基于SystemC語言的周期精確系統級仿真模型。該模型采用如圖7所示的二維網格架構。其中,網絡尺寸可參數化配置,本地子系統分為兩類,即圖3 所示的基于STDM技術的運算簇和由Memory Levell構成的存儲簇,且運算簇內Master的數目也可參數化配置。本模型中各Master的結構如圖8所示。本實驗中,STDM Controller中所能記錄的Master申請個數上限(n_max)設置為 4,等待時間上限設置為30個時鐘周期。本實施例中主要關注本發(fā)明對網絡負荷與執(zhí)行時間的影響。(1)網絡負荷
如圖9所示,其中橫坐標表示連續(xù)傳輸的相關數據個數,縱坐標表示本發(fā)明和傳統方案網絡負荷的比值。由圖可見,本發(fā)明可以大幅提高信息密度,降低網絡負荷,且由于讀操作涉及返回數據包,因此改善效果尤為明顯。另外,由圖9不難看出,在連續(xù)傳輸個數為4 的倍數時,曲線均出現拐點,主要因為實驗環(huán)境中將njiiax設為4的緣故。(2)執(zhí)行時間
在此僅以讀操作為例,且每個Master均連續(xù)讀600次。除本發(fā)明自身參數配置以外,實驗環(huán)境也會對結果造成影響。因為傳輸過程涉及到全局和簇內兩部分,所以主要影響分為全局網絡影響和簇內影響。關于全局網絡影響,可能影響到實驗結果的因素包括網絡繁忙程度,路由算法選擇,傳輸距離遠近等,本實施例中選取傳輸距離遠近,即曼哈頓距離(hop數)變化來表征(此時簇內核數固定為6)其影響,實驗結果如圖10-a所示。由圖可見,本發(fā)明對執(zhí)行時間有明顯改善,最佳狀況下其執(zhí)行時間可降到傳統方案的36.7%。同時,隨著曼哈頓距離的上升,本發(fā)明的改善效果也隨之上升。這是因為曼哈頓距離越長,t2在t中所占比例越大,而本發(fā)明的主要作用即多個Master分攤這一開銷。關于簇內影響,可能影響到實驗結果的因素包括訪問頻率,處理器核個數,數據相關程度等。本實施例中以處理器核數變化為例(曼哈頓距離固定為6)表征其影響,實驗結果如圖10-b所示。由圖可見,當簇內集成核數達到3時,本發(fā)明開始體現優(yōu)勢,隨著核數上升,改善效果增強并趨于穩(wěn)定,即約為傳統方案執(zhí)行時間的40%。該實驗結果符合實際應用需求,也就是簇內集成處理器核數通常不少于2。
實施例2
為進一步從實用性角度驗證本發(fā)明,以實際應用中廣泛涉及的矩陣運算為例,說明本發(fā)明的優(yōu)勢?;赟TDM技術的MCNoC主要針對簇內各核訪問網絡上Memory Levell的性能進行優(yōu)化,因此更加適用于通信密集型應用。本文采用單核,傳統MCNoC (簇內集成6核)以及基于STDM技術MCNoC (簇內集成6核),分別對兩個大小為M階的矩陣進行求和運算。兩個初始矩陣均存放在相距運算簇曼哈頓距離為6的Memory Levell內,簇內各核采用循環(huán)分行法讀取矩陣中相應行進行運算,以實現算法并行化。加速比定義為單核執(zhí)行時間/多核執(zhí)行時間,程序最終運行結果如圖11所示。 由圖11可知,在傳統架構下,對于通信密集型應用,各核只能依次通過總線訪問網絡,因此效率很低,雖然簇內集成了 6核,加速比卻僅為1.71。而采用基于STDM技術的簇架構,其加速比提高為3.四,對于提高算法性能有極其顯著的作用。本發(fā)明可以有效降低網絡負荷,減小簇間通信延時,緩解訪存壓力,對改善片上網絡整體通訊性能有著積極良好的應用價值。
權利要求
1.一種基于統計時分復用技術的多簇片上網絡架構,其特征在于該架構在簇內采用基于統計時分復用技術的總線結構;在總線上設有主設備、從設備、總線部件及統計時分復用控制單元;統計時分復用控制單元與主設備、從設備及總線部件連接;其中,從設備包括存儲器及具有等待機制的網絡接口 ;總線部件包括仲裁器、解碼器以及多路選擇器;統計時分復用控制單元統籌控制總線上主設備、從設備來實現統計時分復用機制;具有等待機制的網絡接口接收總線上主設備發(fā)起的數據傳輸請求,并在滿足觸發(fā)條件情況下觸發(fā)傳輸。
2.根據權利要求1所述的基于統計時分復用技術的多簇片上網絡架構,其特征在于 該架構采用的數據包格式為,利用記錄在案的多次申請之間的相關性,以第一個記錄在案的申請對應的地址為基地址,后續(xù)申請對應的地址信息在數據包中僅體現為其與基地址之間的偏移量。
3.根據權利要求1所述的基于統計時分復用技術的多簇片上網絡架構,其特征在于 具有等待機制的網絡接口接收總線上主設備發(fā)起的數據傳輸請求,除非滿足觸發(fā)條件,否則將當前請求記錄在案,并進入等待狀態(tài),直到等待超時后自行觸發(fā)傳輸過程。
4.根據權利要求3所述的基于統計時分復用技術的多簇片上網絡架構,其特征在于 觸發(fā)條件是指新發(fā)起的數據傳輸請求和原先記錄在案的請求之間相關度低或者原先記錄在案的請求已達到記錄上限。
5.根據權利要求4所述的基于統計時分復用技術的多簇片上網絡架構,其特征在于 新發(fā)起的傳輸請求和原先記錄在案的請求之間的相關度低是指兩者請求的網絡地址不一致,或者其絕對地址的差值大于某可配置的閾值。
全文摘要
本發(fā)明公開了一種基于統計時分復用技術的多簇片上網絡架構,該架構在簇內采用基于統計時分復用技術的總線結構;在總線上設有主設備、從設備、總線部件及統計時分復用控制單元;統計時分復用控制單元與主設備、從設備及總線部件連接;其中,從設備包括存儲器及具有等待機制的網絡接口;總線部件包括仲裁器、解碼器以及多路選擇器;統計時分復用控制單元統籌控制總線上主設備、從設備來實現統計時分復用機制;具有等待機制的網絡接口接收總線上主設備發(fā)起的數據傳輸請求,并在滿足觸發(fā)條件情況下觸發(fā)傳輸。本發(fā)明可以有效降低網絡負荷、減小通信延時,進而提高片上網絡系統整體性能,因此有著良好的實用價值和廣泛的應用前景。
文檔編號H04L12/40GK102158380SQ20111004162
公開日2011年8月17日 申請日期2011年2月21日 優(yōu)先權日2011年2月21日
發(fā)明者何書專, 張宇昂, 李麗, 李偉, 沙金, 潘紅兵, 王佳文 申請人:南京大學