• / 10
  • 下載費用:30 金幣  

附加請求數優先級的片上網絡資源仲裁方法及仲裁單元.pdf

摘要
申請專利號:

CN201510304568.7

申請日:

2015.06.04

公開號:

CN105022717A

公開日:

2015.11.04

當前法律狀態:

授權

有效性:

有權

法律詳情: 授權|||實質審查的生效IPC(主分類):G06F 15/173申請日:20150604|||公開
IPC分類號: G06F15/173 主分類號: G06F15/173
申請人: 中國航空無線電電子研究所
發明人: 王榮陽; 楊愛良; 袁泉
地址: 200233上海市徐匯區桂平路432號
優先權:
專利代理機構: 上海和躍知識產權代理事務所(普通合伙)31239 代理人: 楊慧
PDF完整版下載: PDF下載
法律狀態
申請(專利)號:

CN201510304568.7

授權公告號:

||||||

法律狀態公告日:

2018.11.27|||2015.12.02|||2015.11.04

法律狀態類型:

授權|||實質審查的生效|||公開

摘要

本發明公開了一種附加請求數優先級的片上網絡資源仲裁方法,包括以下步驟:A:仲裁單元檢測發起資源請求的各個頭微片的請求標志位,若請求標志位為執行計數狀態則對頭微片的請求計數位執行加1操作;B:仲裁單元根據頭微片的仲裁方式選擇位以及請求計數位的值確定執行輪詢仲裁C或請求數優先級仲裁D;C:仲裁單元按照順序分配資源算法為各頭微片分配虛擬通道和端口資源;D:仲裁單元以頭微片的請求計數位的值作為優先級并進行排序,優先級最高的頭微片優先得到虛擬通道和端口資源。本發明還公開了實現片上網絡資源仲裁方法的仲裁單元。本發明解決片了上網絡通信鏈路中不同位置的節點服務公平性問題,有利于提供低延時抖動的通信。

權利要求書

權利要求書
1.  一種附加請求數優先級的片上網絡資源仲裁方法,包括以下步驟:
A:仲裁單元接收各個頭微片發起的資源請求,并檢測各個頭微片的請求標志位,對請求標志位為執行計數狀態的頭微片的執行請求計數位加1操作;其中所述頭微片包含請求計數位、仲裁方式選擇位、請求標志位;
B:若各個頭微片中有一個頭微片的仲裁方式選擇位為請求數優先級仲裁或者請求計數位的值達到預定值則仲裁單元執行步驟D請求數優先級仲裁;否則仲裁單元執行步驟C輪詢仲裁;
C:仲裁單元按照順序分配資源算法為各個頭微片分配虛擬通道和端口資源,與頭微片關聯的數據包從分配到虛擬通道和端口資源輸出后送入下一個路由節點;
D:仲裁單元以各個頭微片的請求計數位的值作為優先級并進行排序,優先級最高的頭微片優先得到虛擬通道和端口資源,頭微片關聯的數據包從分配到虛擬通道和端口資源輸出后送入下一個路由節點。

2.  根據權利要求1所述的片上網絡資源仲裁方法,其特征在于,仲裁單元在頭微片的請求計數位全為高電平時則置仲裁方式選擇位為優先級仲裁方式,置請求標志位為停止計數狀態。

3.  根據權利要求1所述的片上網絡資源仲裁方法,其特征在于,所述仲裁方式選擇位的初始值為輪詢仲裁方式。

4.  根據權利要求1所述的片上網絡資源仲裁方法,其特征在于,所述步驟B中請求計數位的值全為1時,仲裁單元執行步驟D請求數優先級仲裁。

5.  根據權利要求1所述的片上網絡資源仲裁方法,其特征在于,所述請求計數位在數據包注入路由節點時初始值為0,在節點鏈路中傳輸時,每發起一次資源請求,則由仲裁單元對請求計數位加1。

6.  根據權利要求1所述的片上網絡資源仲裁方法,其特征在于,步驟D中,若有兩個或兩個以上的頭微片請求計數位數值相等,則隨機選擇一個頭微片進行資源分配。

7.  根據權利要求1所述的片上網絡資源仲裁方法,其特征在于還包括:若源節點發送緊急數據包時,則在注入網絡之前將頭微片請求計數位置為最高。

8.  一種用于實現權利要求1至7任一所述片上網絡資源仲裁方法的仲裁單元,包括n個資源狀態輸入端口、n個請求信號輸入端口、p×n個授權信號輸出端口、1個仲裁選擇輸入端口、1個請求計數器、1個輪詢仲裁模塊和1個優先級仲裁模塊;
所述n個資源狀態輸入端口用于監測虛擬通道或輸出端口的狀態;
所述p×n個請求信號輸入端口用于接收各頭微片發起的資源請求信號,p為輸入端口的虛擬通道數目;
所述1個請求計數器用于對檢測各個頭微片的請求標志位,對請求標志位為執行計數狀態的頭微片的執行請求計數位加1操作;
所述1個仲裁選擇輸入端口用于根據各個頭微片中若有一個頭微片的仲裁方式選擇位為請求數優先級仲裁或者請求計數位的值達到預定值則啟動請求數優先級仲裁模塊;否則啟動輪詢仲裁模塊;
所述1個輪詢仲裁模塊用于按照順序分配資源算法對各個頭微片執行round robin輪詢仲裁;
所述1個優先級仲裁模塊用于對各個頭微片中的請求計數位的值的大小進行排序,執行高低優先級仲裁;
所述n個授權信號輸出端口用于把輸出端口分配給授權的數據包。

說明書

說明書附加請求數優先級的片上網絡資源仲裁方法及仲裁單元
技術領域:
本發明涉及片上網絡設計領域,具體涉及一種解決片上網絡全局鏈路節點服務公平性的仲裁方法及仲裁單元。
背景技術:
片上網絡(Network on Chip,NoC)技術的出現使單芯片可以集成數目眾多的同構或異構IP核。異構IP核如內存、IO控制器可以作為共享資源供其它主IP核如CPU訪問。當訪問請求發生競爭和沖突時,片上路由器的的仲裁單元為多個輸入請求分配虛擬通道(virtual channel,VC)和輸出端口資源,其執行效率、公平性、復雜程度直接決定了NoC的性能。NoC中采用的仲裁方法有固定優先級仲裁(FPA)、可變優先級仲裁(VPA)、輪詢仲裁(RRA)、加權仲裁(WRR)等。其中輪詢仲裁因其簡單易實現被較多NoC設計采用。輪詢算法一般按請求、應答、授權三個步驟執行。在一個請求隊列Σri里,每個成員(請求)都具有相同的地位,輪詢算法在這組成員中順序給予資源授權。輪詢算法的資源分配是可預知的,每個請求被選擇的機會是1/Σri,適用于集群中所有路由節點的處理能力和性能均相同的情況。但是,輪詢仲裁只能在本地節點提供公平服務。當源節點發送的數據包沿著路由鏈路傳播時,在未到達目的節點處的共享IP核之前,不斷有其他源節點發送過來的數據包注入鏈路,距離共享IP核一個跳數的節點只需要經過一個路由節點的輪詢仲裁,而距離共享IP核n個跳數的節點則需要經過n個路由節點的輪詢仲裁,這會導致距離共享IP核遠的節點得到服務的概率不斷降低。
解決此問題并提供全局節點的服務公平性主要有兩種方法,一是采用加權 算法,根據節點當前的負載狀況(即權值)來構成負載平衡的優先級隊列,隊列中的每個等待處理的成員都具有不同處理等級,按照加權后的優先級順序進行處理,該方案需要動態監控資源的狀態并實時計算數據包權值,增加額外的延時,實現較復雜。二是引入計算機領域的數據包壽命機制,即Age-based仲裁(ABA)。ABA可以為多個數據包競爭同一共享資源時提供全局公平性,生存時間最長數據包最先得到權限,但是在NoC中該方案實現較困難,需要占用較大的片上資源。
綜上所述,常用的NoC資源仲裁算法如FPA、VPA、RRA難以保證全局節點的服務的公平性,而WRR和ABA實現復雜,占用資源較多,在NoC中不易采用。本文提出了一種附加請求數優先級的片上網絡資源仲裁方法,在傳統的仲裁單元中附加了一個請求計數和優先級排序結構,根據頭微片的請求計數位對各微片進行優先級排序,可以有效的解決遠端節點多次請求均得不到資源的情況,有利于提供公平服務保證。
發明內容:
本發明的目的是為了解決片上網絡不同位置的節點在訪問同一共享IP核時傳統NoC仲裁算法帶來的全局公平服務問題。為實現本發明的目的提供了一種附加請求數加權的片上網絡仲裁方法,包括以下步驟:
A:仲裁單元接收各個頭微片發起的資源請求,并檢測各個頭微片的請求標志位,對請求標志位為執行計數狀態的頭微片的執行請求計數位加1操作;其中所述頭微片包含請求計數位、仲裁方式選擇位、請求標志位;
B:若各個頭微片中有一個頭微片的仲裁方式選擇位為請求數優先級仲裁或者請求計數位的值達到預定值則仲裁單元執行步驟D請求數優先級仲裁;否則 仲裁單元執行步驟C輪詢仲裁;
C:仲裁單元按照順序分配資源算法為各個頭微片分配虛擬通道和端口資源,與頭微片關聯的數據包從分配到虛擬通道和端口資源輸出后送入下一個路由節點;
D:仲裁單元以各個頭微片的請求計數位的值作為優先級并進行排序,優先級最高的頭微片優先得到虛擬通道和端口資源,頭微片關聯的數據包從分配到虛擬通道和端口資源輸出后送入下一個路由節點。
進一步,仲裁單元在頭微片的請求計數位全為高電平時則置仲裁方式選擇位為優先級仲裁方式,置請求標志位為停止計數狀態。
優選地,所述仲裁方式選擇位的初始值為輪詢仲裁方式。
優選地,所述步驟B中請求計數位的值全為1時,仲裁單元執行步驟D請求數優先級仲裁。
優選地,所述請求計數位在數據包注入路由節點時初始值為0,在節點鏈路中傳輸時,每發起一次資源請求,則由仲裁單元對請求計數位加1。
優選地,步驟D中,若有兩個或兩個以上的頭微片請求計數位數值相等,則隨機選擇一個頭微片進行資源分配。
優選地,若源節點發送緊急數據包時,則在注入網絡之前將頭微片請求計數位置為最高。
本發明的另一目的在于提供一種用于實現上述片上網絡資源仲裁方法的仲裁單元,包括n個資源狀態輸入端口、n個請求信號輸入端口、p×n個授權信號輸出端口、1個仲裁選擇輸入端口、1個請求計數器、1個輪詢仲裁模塊和1個優先級仲裁模塊;
所述n個資源狀態輸入端口用于監測虛擬通道或輸出端口的狀態;
所述p×n個請求信號輸入端口用于接收各頭微片發起的資源請求信號,p為輸入端口的虛擬通道數目;
所述1個請求計數器用于對檢測各個頭微片的請求標志位,對請求標志位為執行計數狀態的頭微片的執行請求計數位加1操作;
所述1個仲裁選擇輸入端口用于根據各個頭微片中若有一個頭微片的仲裁方式選擇位為請求數優先級仲裁或者請求計數位的值達到預定值則啟動請求數優先級仲裁模塊;否則啟動輪詢仲裁模塊;
所述1個輪詢仲裁模塊用于按照順序分配資源算法對各個頭微片執行roundrobin輪詢仲裁;
所述1個優先級仲裁模塊用于對各個頭微片中的請求計數位的值的大小進行排序,執行高低優先級仲裁;
所述n個授權信號輸出端口用于把輸出端口分配給授權的數據包。本發明的優點、有益效果在于:
1.本發明可以為不同位置節點訪問同一共享IP核提供公平服務保證,尤其對遠距離節點多次請求未被授權的情況有較大改善,可以有效降低NoC網絡的延時抖動。
2.在傳統仲裁單元的基礎上附加請求計數和優先級排序結構,對于仲裁單元的面積和功耗開銷影響不大,適用于大規模的SoC設計。
3.在頭數據微片中引入請求計數位不僅起到標志優先級的作用,而且還可以在初始注入階段通過置高請求計數位的方式使該數據包在每個路由節點都得到優先服務,即可以提供一定的服務質量保證。
下面通過附圖和實施例,對本發明的技術方案做進一步的詳細描述。
附圖說明:
圖1為本發明仲裁方法具體實施例的數據包幀格式示意圖;
圖2為本發明仲裁單元具體實施例的結構示意圖;
圖3為本發明具體仲裁過程示意圖;
圖4為本發明仲裁方法和仲裁單元具體實施例在4×4 2D Mesh網絡拓撲結構中的應用示意圖。
具體實施方式:
為了更清楚的介紹本發明提出的一種附加請求數優先級的片上網絡資源仲裁方法及仲裁單元,下面將結合附圖和具體實例進行詳細說明。
根據說明書所述的附加請求數優先級的片上網絡資源仲裁方法,以4×4 2D MESH網絡拓撲結構為例,所述的片上網絡包含路由節點、資源節點和互連通道;傳輸協議為帶有虛擬通道的蟲孔路由,數據包被分割成若干微片;所述資源包含虛擬通道資源和輸出端口資源。實現本發明所采用的數據包幀格式實例如圖1所示。每個數據包包含一個頭微片和若干個負載微片,其中第一個微片為頭微片,包含使能連接位LA、微片控制位FC[0:3]、頭信息位HI[0:8]、仲裁控制位(AS、CF、RC[0:7])和數據位DATA,其它微片為負載微片,包含使能連接位LA,微片控制位FC和數據位DATA。其中,
使能連接位LA,用于控制路由節點之間的通斷;
微片控制位FC[0:3],其中FC[0]為微片有效標志位,FC[1:2]為虛擬通道選擇位,FC[3]為頭微片標志位;
頭信息位HI[0:8],其中HI[0:2]為輸出端口選擇位、HI[3:6]為目的節點地址位、HI[7:8]為負載微片數目位;
仲裁控制位,其中AS為仲裁方式選擇位(0為輪詢仲裁,1為請求數優先級仲裁),CF為請求標志位(0代表繼續計數,1代表停止計數),RC[0:7]為請求計數位(0x00為初始值,0xff為最高優先級),每次請求對RC執行加1操作,至值為0xff時反饋CF位,停止計數;
數據位,承載有效數據信息,對于頭微片數據位寬為40bits,對于負載微片數據位寬為59bits。
結合本發明所采用的數據包幀格式說明具體實施過程。如圖2為本發明仲裁單元具體實施例的結構示意圖。如圖中所示,本仲裁單元為路由器中的核心單元,負責為發起請求的各個頭微片分配虛擬通道和輸出端口資源。在本例中,路由節點為2D MESH中心節點,輸入和輸出端口數為5,虛擬通道數為4,除仲裁單元外,路由器還包括5個輸入通道和5個輸出通道、路由計算模塊以及交叉開關等結構。5個資源狀態輸入端口用于監測VC或輸出端口的空閑或占用狀態;20個請求信號輸入端口用于接收頭微片發起的資源請求信號;5個授權信號將相應端口分配給授權的頭微片;1個使能信號輸入端口用于選擇資源仲裁方式;1個請求計數器用于5個輸入端口的VC中頭微片的請求計數;輪詢仲裁模塊執行round robin輪詢仲裁;優先級仲裁模塊根據請求數的高低進行優先級排序,執行高低優先級裁。仲裁過程如圖3所示:各個頭微片到達輸入端口的虛擬通道后,向仲裁單元發起資源請求(高電平有效),仲裁單元的請求計數器首先判斷各個頭微片的CF位是否為0,如果CF=0,則每個高電平信號對請求計數位執行加1操作,如果CF=1,則忽略高電平信號。在執行仲裁前,仲裁單元首先判斷各個頭微片中是否有頭微片的請求計數位RC有全置高(RC=0xff),若有,則執行請求數優先級仲裁,若無,則判斷各個頭微片中是否有頭微片為仲裁選擇位AS信號為請求數優先級仲裁,若有則執行請求數優先級仲裁,否則 執行輪詢仲裁。輪詢仲裁,各個發起請求的頭微片按照輪詢順序給予資源分配;請求數優先級仲裁,各個發起請求的頭微片按照RC位值的大小給予資源分配,值越大優先級越高,值相同的微片隨機給予任意一個其中的微片資源。在頭微片得到資源分配后,該資源為負載微片保留,直至下一個頭微片申請同一資源。分配好資源的微片由交叉開關輸出至下級路由節點的虛擬通道。
圖4所示為本發明附加請求數優先級的片上網絡資源仲裁方法具體實施例的仲裁單元在4×4 2D Mesh網絡拓撲結構中的應用示意圖。路由器采用附加請求數優先級的片上網絡資源仲裁方法設計。NoC共掛載12個同構CPU核和4個MEM核,NI為網絡接口,CPU和MEM通過NI將總線協議封裝為NoC數據傳輸協議。以CPU0、CPU1、CPU2同時訪問MEM0為例,如果采用傳統的輪詢仲裁,則CPU2得到服務的概率為1/2,CPU1得到服務的概率為1/4,CPU0得到服務的概率為1/8。NoC不能提供全局鏈路的公平服務。而采用請求數優先級的仲裁方法,則在節點MEM0處,整個鏈路傳輸過程中CPU0發起請求的次數最多,將優先得到服務,CPU1次之,CPU0最后。使得整個鏈路上CPU訪問MEM時間的均衡延時抖動,能夠提供公平服務保證。另外,如果CPU0需緊急訪問MEM0,則可以通過在注入鏈路之前就把請求計數位置為0xff的方法,選擇優先級仲裁,則在每一個節點都將得到優先服務,這樣就提供了一定的服務質量保證。
為更清楚說明本發明中的仲裁方案,舉幾個情況為例:
1)分別來自四個輸入方向并請求同一輸出資源的頭微片f1、頭微片f2、頭微片f3、頭微片f4的請求計數位(8位)的數值分別為0x12、0x3a、0xfe、0x2b,這時候執行輪詢仲裁,并對各微片的請求計數位執行加1操作。
2)分別來自四個輸入方向并請求同一輸出資源的頭微片f1、頭微片f2、 頭微片f3、頭微片f4的請求計數位(8位)的數值分別為0x12、0x3a、0xff、0x2b,這時候執行優先級仲裁,分配資源的順序依次為f3、f2、f4、f1,并對f1、f2、f4的請求計數位執行加1操作。
3)分別來自四個輸入方向并請求同一輸出資源的頭微片f1、頭微片f2、頭微片f3、頭微片f4的請求計數位(8位)的數值分別為0x12、0xff、0xff、0x2b,這時候執行優先級仲裁,先為f2和f3(f2和f3優先級相同,可以按順序分配,比如按照出口逆時針方向)分配資源,再為頭f4分配資源,最后為f1分配資源,并對f1、f4的請求計數位執行加1操作。
上述實施例僅用以說明本發明的技術方案,而非對其限制,對上述技術方案進行修改,或者對其中部分技術特征進行等同替換,并不使相應技術方案的本質脫離本發明實施例技術方案的范圍。

關 鍵 詞:
附加 請求 優先級 網絡資源 仲裁 方法 單元
  專利查詢網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
關于本文
本文標題:附加請求數優先級的片上網絡資源仲裁方法及仲裁單元.pdf
鏈接地址:http://www.rgyfuv.icu/p-6353645.html
關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服客服 - 聯系我們

[email protected] 2017-2018 zhuanlichaxun.net網站版權所有
經營許可證編號:粵ICP備17046363號-1 
 


收起
展開
山东11选5中奖结果走势图