• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于NOC技術(shù)的多核研究

      2015-09-05 05:38:42趙寶功徐玉潔屈凌翔
      電子與封裝 2015年11期
      關(guān)鍵詞:網(wǎng)絡(luò)接口路由器數(shù)據(jù)包

      趙寶功,徐玉潔,屈凌翔

      (中國電子科技集團(tuán)公司第58研究所 ,江蘇 無錫,214035)

      1 引言

      隨著微電子計(jì)算技術(shù)的發(fā)展,超大規(guī)模集成電路的集成度越來越高,片上系統(tǒng)(SOC)總線結(jié)構(gòu)的弊端逐漸暴露出來,物理連接、單一時(shí)鐘引起的時(shí)鐘延遲等問題,制約了SOC系統(tǒng)的進(jìn)一步發(fā)展。在1999年,以瑞典皇家理工學(xué)院為代表的學(xué)術(shù)機(jī)構(gòu)提出了新型的通訊架構(gòu)——NOC[1],這種設(shè)計(jì)把通信網(wǎng)絡(luò)概念結(jié)合到集成電路設(shè)計(jì)中,每個計(jì)算單元模塊都是片上網(wǎng)絡(luò)的一個路由節(jié)點(diǎn)。而在傳統(tǒng)的SOC設(shè)計(jì)中,都是采用總線架構(gòu)將各個模塊連接起來并且使用一個統(tǒng)一時(shí)鐘。在SOC系統(tǒng)集成度低的情況下這個方案還是可行的,但是隨著集成度的不斷提高,SOC系統(tǒng)受到嚴(yán)重的時(shí)鐘延遲和偏移影響,這給設(shè)計(jì)者帶來極大的挑戰(zhàn),片上網(wǎng)絡(luò)(NOC)徹底地解決了這個問題,NOC系統(tǒng)采用一種分布式網(wǎng)絡(luò)結(jié)構(gòu),它們沒有統(tǒng)一時(shí)鐘,各個計(jì)算單元通過路由器連接,各自可以完全獨(dú)立工作。為了減低功耗本文通過改進(jìn)現(xiàn)有的2D MESH架構(gòu),設(shè)計(jì)了其中一個節(jié)點(diǎn)作為主控核,控制從核以及路由的時(shí)鐘和復(fù)位,對于工作過程中不使用的節(jié)點(diǎn),節(jié)點(diǎn)時(shí)鐘不打開,達(dá)到降低功耗的目的。

      2 片上網(wǎng)絡(luò)結(jié)構(gòu)種類及原理

      目前片上網(wǎng)絡(luò)的種類有網(wǎng)格型拓?fù)浣Y(jié)構(gòu)、環(huán)繞型拓?fù)浣Y(jié)構(gòu)、環(huán)型拓?fù)浣Y(jié)構(gòu)[1,2,8],樹型拓?fù)浣Y(jié)構(gòu),選擇合適的NOC網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)對NOC設(shè)計(jì)非常重要,目前階段NOC的研究大部分借鑒了并行計(jì)算機(jī)體系結(jié)構(gòu)中的靜態(tài)網(wǎng)絡(luò)結(jié)構(gòu),各種拓?fù)浣Y(jié)構(gòu)各有各的優(yōu)勢,目前比較多的研究機(jī)構(gòu)采用了2D MESH 結(jié)構(gòu),2D MESH結(jié)構(gòu)顯著的特點(diǎn)是路由的編碼簡單[11],結(jié)構(gòu)簡潔,目前商用的片上網(wǎng)絡(luò)架構(gòu)多是采用2D MESH。

      片上網(wǎng)絡(luò)核心思想是將計(jì)算機(jī)宏觀網(wǎng)絡(luò)技術(shù)移植到芯片設(shè)計(jì)中來,從體系結(jié)構(gòu)上解決總線架構(gòu)帶來的問題。片上網(wǎng)絡(luò)原理就是在芯片上搭建網(wǎng)絡(luò),用網(wǎng)絡(luò)的方式把各個IP核聯(lián)系在一起,各個IP核之間通過報(bào)文方式實(shí)現(xiàn)數(shù)據(jù)交互。

      3 NOC 設(shè)計(jì)與實(shí)現(xiàn)

      NOC 結(jié)構(gòu)是采用二維MESH_3×3網(wǎng)絡(luò)結(jié)構(gòu)(如圖1),片上網(wǎng)絡(luò)架構(gòu)主要由計(jì)算單元、網(wǎng)絡(luò)接口(NI)、路由器(R)組成[3],處理單元分為主控單元、從單元,計(jì)算單元主要為IP內(nèi)核,這里采用高性能DSP內(nèi)核,處理單元通過局部總線訪問私有存儲器,通過網(wǎng)絡(luò)接口訪問共享存儲器。處理單元(如圖1左上角)為主控核控制其他處理單元的時(shí)鐘以及復(fù)位等。整個系統(tǒng)的存儲空間統(tǒng)一編址,每個核都可以訪問其他核的存儲空間,這樣所有計(jì)算單元可以共享所有存儲器。

      圖1 NOC平臺

      3.1 路由器設(shè)計(jì)

      路由器主要功能是根據(jù)源節(jié)點(diǎn)數(shù)據(jù)發(fā)送端和目的節(jié)點(diǎn)數(shù)據(jù)接收端的網(wǎng)絡(luò)地址信息,按照一定的路由算法選擇最佳的路徑,實(shí)現(xiàn)數(shù)據(jù)的通訊。路由器的核心模塊是路由仲裁器,它根據(jù)路由算法,通過交叉開關(guān)分配路徑為數(shù)據(jù)選擇其輸出端口,當(dāng)數(shù)據(jù)進(jìn)入路由時(shí),先將數(shù)據(jù)存儲在緩存器中,根據(jù)數(shù)據(jù)的頭包解析,向路由的仲裁器申請仲裁選擇,當(dāng)輸入數(shù)據(jù)申請獲得仲裁時(shí)路由分配鏈路,讓數(shù)據(jù)通過路由[5,6,9,10]。

      圖2 路由器示意圖

      路由有 5個雙向端口,分別為北(north)、東(east)、南(south)、西(west)和本地端口(local)。每個端口都有輸入數(shù)據(jù)、控制信號通道和輸出數(shù)據(jù)控制信號通道,local端口和本地的計(jì)算單元連接,其余連接其他方向的路由器。路由節(jié)點(diǎn)內(nèi)部采用隊(duì)列緩存方式緩存分組數(shù)據(jù),輸入通道由兩個虛擬通道構(gòu)成,實(shí)現(xiàn)了分組數(shù)據(jù)的緩存,并且為每個分組數(shù)據(jù)選擇輸出端口;虛擬通道分配模塊根據(jù)相鄰節(jié)點(diǎn)輸入通道的虛通道狀態(tài),為輸出端口的分組數(shù)據(jù)分配虛擬通道;仲裁模塊控制開關(guān)電路的選通,連接輸入輸出端口,為了提高重用性,我們采用相同的輸入輸出端口連接路由器和IP,其中IP通過網(wǎng)絡(luò)接口來實(shí)現(xiàn)與路由之間的數(shù)據(jù)轉(zhuǎn)換,路由器示意圖如圖2,路由器算法采用xy 維序算法,先沿著x軸方向?qū)ふ夷康牡刂?,然后在y軸方向輪轉(zhuǎn)仲裁機(jī)制,xy維序算法是典型的確定性路由算法。這個算法實(shí)現(xiàn)起來比較容易,路由的效率比較高,不會死鎖,算法的偽代碼如下:

      假設(shè)(xd ,yd)為目的節(jié)點(diǎn)坐標(biāo),(xc ,yc )為當(dāng)前節(jié)點(diǎn)坐標(biāo)[4],

      在片上網(wǎng)絡(luò)中傳輸數(shù)據(jù)的基本傳輸單元為數(shù)據(jù)包,每個數(shù)據(jù)包又分為頭Flit[2]和數(shù)據(jù)Flit,它們都有相同的數(shù)據(jù)位寬,在通信協(xié)議中頭Flit包含通訊協(xié)議中的各項(xiàng)信息,包括電源管理、vc位、方向控制、目的計(jì)算節(jié)點(diǎn)地址、源計(jì)算節(jié)點(diǎn)地址、包長、包有效位等,這些信息將在網(wǎng)絡(luò)接口中被打包發(fā)送到路由器中,并在路由中被解析,根據(jù)頭f l it信息把數(shù)據(jù)包轉(zhuǎn)發(fā)到對應(yīng)的輸出端口上。實(shí)際應(yīng)用協(xié)議內(nèi)容被放在數(shù)據(jù)Flit中,Packet有兩種結(jié)構(gòu),分別是頭Flit和數(shù)據(jù)Flit,如表1和表2。

      表1 頭Flit格式

      表2 數(shù)據(jù)Flit格式

      網(wǎng)絡(luò)接口將AHB總線的數(shù)據(jù)和地址格式轉(zhuǎn)化為Router能識別的Packet格式,Packet結(jié)構(gòu)如表1、表2,頭Flit主要包含標(biāo)志位、控制信息和目的存儲器地址信息;數(shù)據(jù)Flit主要用來存儲需要傳輸?shù)臄?shù)據(jù)。

      3.2 網(wǎng)絡(luò)接口設(shè)計(jì)

      片上網(wǎng)絡(luò)接口用于連接IP模塊與片上網(wǎng)絡(luò),是NOC架構(gòu)中的重要組成部分。網(wǎng)絡(luò)接口主要負(fù)責(zé)資源節(jié)點(diǎn)與路由之間進(jìn)行總線結(jié)構(gòu)到網(wǎng)絡(luò)結(jié)構(gòu)的協(xié)議轉(zhuǎn)換,主要分為兩個步驟:存儲計(jì)算單元模塊發(fā)送的數(shù)據(jù)并將其封裝打包便于NOC通訊架構(gòu)中傳輸;存儲從通訊架構(gòu)傳輸?shù)竭_(dá)目的IP 模塊的數(shù)據(jù),在網(wǎng)絡(luò)接口中將數(shù)據(jù)包拆分得到有效數(shù)據(jù)并發(fā)送到IP模塊。另外在網(wǎng)絡(luò)接口根據(jù)接收部分狀態(tài),當(dāng)數(shù)據(jù)接收完成后網(wǎng)絡(luò)接口向計(jì)算單元發(fā)送中斷信號。

      網(wǎng)絡(luò)接口實(shí)現(xiàn)數(shù)據(jù)包的打包和拆包都要通過狀態(tài)機(jī)來控制實(shí)現(xiàn)[7~11],網(wǎng)絡(luò)接口在實(shí)現(xiàn)總線結(jié)構(gòu)到網(wǎng)絡(luò)片上網(wǎng)絡(luò)結(jié)構(gòu)的協(xié)議轉(zhuǎn)換過程中需要暫存數(shù)據(jù),同時(shí)為了實(shí)現(xiàn)片上網(wǎng)絡(luò)架構(gòu)局部同步全局異步的功能特點(diǎn),網(wǎng)絡(luò)接口還要有FIFO對數(shù)據(jù)進(jìn)行暫存以便于對數(shù)據(jù)包封裝、拆分和轉(zhuǎn)發(fā)。

      發(fā)送通道工作流程如下:

      (1)配置網(wǎng)絡(luò)接口中寄存器;

      (2)從相應(yīng)的寄存器中讀取包頭的有效載荷,形成包頭并發(fā)送出去;

      (3)識別并讀取數(shù)據(jù)包的有效載荷,形成包實(shí)體并發(fā)送出去;

      (4)識別并讀取尾包的有效載荷,形成尾包并發(fā)送出去。

      接收通道寫入FIFO的操作是在接收來自片上網(wǎng)絡(luò)的數(shù)據(jù)進(jìn)行的,同時(shí)并不是所有接收來的數(shù)據(jù)都寫入FIFO。在接收數(shù)據(jù)過程中,首先被接收的是頭包,頭包中包含了電源管理位、有效位、VC位、頭Flit位、目的地址位、方向位等,當(dāng)數(shù)據(jù)包達(dá)到目的節(jié)點(diǎn)時(shí),頭包已經(jīng)沒有意義,不被送到IP核,只有數(shù)據(jù)包及尾包有效才會被寫入到FIFO中暫存,接收通道的工作流程如下:

      (1)頭包的識別過程,該過程結(jié)束后啟動下一過程;

      (2)數(shù)據(jù)包和尾包有效荷載的抽取并寫入到FIFO中,當(dāng)數(shù)據(jù)寫完后將會觸發(fā)中斷請求事件的發(fā)生。

      圖3 網(wǎng)絡(luò)接口示意圖

      4 功能驗(yàn)證

      目前的仿真是基于MESH 3×3搭建的RTL系統(tǒng)驗(yàn)證平臺,使用core0節(jié)點(diǎn)作為主控核,控制其他計(jì)算單元的時(shí)鐘和復(fù)位,當(dāng)計(jì)算單元不工作的時(shí)候可以把對應(yīng)的計(jì)算單元、時(shí)鐘關(guān)掉,這樣可以降低功耗。這里使用nc仿真器,仿真計(jì)算節(jié)點(diǎn)之間的數(shù)據(jù)通訊。首先配置下網(wǎng)絡(luò)接口中的寄存器,然后讓計(jì)算節(jié)點(diǎn)向網(wǎng)絡(luò)接口發(fā)送數(shù)據(jù),在網(wǎng)絡(luò)接口中數(shù)據(jù)被打包發(fā)送到指定的計(jì)算節(jié)點(diǎn)(見圖3),數(shù)據(jù)從core8經(jīng)過17個周期后到達(dá)core7,并把數(shù)據(jù)送到指定的存儲空間上,在實(shí)際應(yīng)用時(shí)盡量先分配好任務(wù),把要處理的計(jì)算任務(wù)改為并行處理任務(wù)映射到各個計(jì)算單元,優(yōu)化數(shù)據(jù)傳輸路徑,降低數(shù)據(jù)傳輸?shù)难舆t,提供網(wǎng)絡(luò)運(yùn)行效率。

      圖4 仿真結(jié)果

      5 多核系統(tǒng)的實(shí)際應(yīng)用

      為了充分利用多核性能,設(shè)計(jì)了流水矩陣乘法,在此應(yīng)用中每個從核接點(diǎn)都有個本地N維矩陣。具體通過設(shè)計(jì)并行程序來實(shí)現(xiàn),具體過程如下。

      首先將任務(wù)分解,把一次矩陣運(yùn)算作為一個子任務(wù),將多組矩陣乘法運(yùn)算分解為多個有數(shù)據(jù)依賴關(guān)系的子任務(wù),如圖5(a)所示,圖中圓圈代表一次矩陣乘法運(yùn)算,縱向代表一組矩陣連乘的過程。

      圖5 多組矩陣連乘的依賴關(guān)系和并發(fā)性

      根據(jù)如圖5(a)的分解方法,按照乘法步驟進(jìn)行分配,將連乘分為4步,給每一步編上一個號,把編號相同的分配到同一個進(jìn)程中,如圖5(b)所示,這樣的分配方式既能考察核的計(jì)算能力,也能考察通訊能力。

      圖6 流水方式的并行計(jì)算時(shí)序圖

      其次協(xié)調(diào)與映射,使用圖5(b)的分配方法,按照進(jìn)程與處理器一一對應(yīng)的映射方法將3個進(jìn)程映射到4個處理器上,使用流水方式執(zhí)行。圖6使用流水方式的并行計(jì)算時(shí)序圖,圖中橫方向表示時(shí)間,縱方向表示某一時(shí)刻的事件,p0、p1、p2、p3為4個處理器,首先在p0上執(zhí)行第一組連乘的第一運(yùn)算,把結(jié)果發(fā)送給p1;p1進(jìn)行第二步計(jì)算,把結(jié)果發(fā)送給下一個處理器,在這個過程中,p0完成第一組連乘后接著完成第二組連乘的第一步,其他處理器類似,每個處理器只負(fù)責(zé)連乘的一個步驟,這樣處理器構(gòu)成并行流水線工作,協(xié)調(diào)完成連乘任務(wù)。

      6 結(jié)束語

      隨著無人機(jī)、聲納、雷達(dá)、信號情報(bào)以及軟件無線電等波形密集型應(yīng)用中信號處理需求的不斷提高,多個數(shù)字信號處理器內(nèi)核的使用已經(jīng)成為重要的實(shí)現(xiàn)手段,多核數(shù)字信號處理器能夠滿足關(guān)鍵的任務(wù)需求,包括更強(qiáng)大的處理速度、更精細(xì)的分辨率、更高的精度,過去靠工藝升級,提高主頻來實(shí)現(xiàn)越來越遇到瓶頸。

      本文通過NOC拓?fù)浣Y(jié)構(gòu)實(shí)現(xiàn)了多核芯片,計(jì)算單元之間可以通過router進(jìn)行數(shù)據(jù)交換。2D MESH拓?fù)浼軜?gòu)具有功能簡單、擴(kuò)展性強(qiáng)等特點(diǎn),對解決未來多核芯片的需求具有重要意義,NOC架構(gòu)將成為大規(guī)模多核芯片的發(fā)展方向。

      [1]段宜賓,王曉冬,唐磊. 片上網(wǎng)絡(luò)關(guān)鍵技術(shù)及仿真方法研究[J]. 通信技術(shù),2009,42(12).

      [2]丁帥,吳寧,葛芬,王祺. 片上網(wǎng)絡(luò)路由單元的系統(tǒng)級建模研究[J]. 微電子學(xué)與計(jì)算機(jī),2009,26 (1).

      [3]譚耀東,劉有耀. NOC系統(tǒng)研究綜述[J]. 西安郵電學(xué)院學(xué)報(bào),2008,13(1).

      [4]姚放吾,高 莉. 一種改進(jìn)的二維MESH結(jié)構(gòu)片上網(wǎng)絡(luò)拓?fù)鋄J]. 計(jì)算機(jī)計(jì)算與發(fā)展,2009,19(7).

      [5]謝曉燕,蔣林. 基于電路交換的NOC路由器設(shè)計(jì)與實(shí)現(xiàn)[J].

      [6]劉炎炎. 基于FPGA的NOC的通訊架構(gòu)的設(shè)計(jì)與測試[D].合肥工業(yè)大學(xué)碩士學(xué)位論文,2011.

      [7]楊盛光,李麗,張宇昂,王佳文,董嵐,高明倫. 多處理器NOC仿真平臺[J]. 系統(tǒng)仿真學(xué)報(bào),2009,21(19).

      [8]李忠琦,凌翔,胡劍浩. 片上網(wǎng)絡(luò)系統(tǒng)網(wǎng)絡(luò)層設(shè)計(jì)與研究[J]. 中國集成電路.

      [9]萬玉鵬,吳寧. NOC路由單元的系統(tǒng)級設(shè)計(jì)[J]. 2009, 22(2).

      [10]Shashi KumarAxel, Jantsch Juha-Pekka, Soininen Martti,Forsell Mikael Millberg. A Network on chip Architecture and design methodology computer SOC iety annual symposium[C]. VLSI 2002 IEEE.

      [11]Mullins R, West A, Moore S. Low –latency virtual channel router for on chip network [C]. Proceedings of the 31stAnnual International Symposium on Computer Architecture germany Munchen ,2004.188-197.

      猜你喜歡
      網(wǎng)絡(luò)接口路由器數(shù)據(jù)包
      變電站網(wǎng)絡(luò)接口物理防護(hù)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
      買千兆路由器看接口參數(shù)
      SmartSniff
      淺析CTC與GSM-R系統(tǒng)網(wǎng)絡(luò)接口及路由配置改進(jìn)措施
      你所不知道的WIFI路由器使用方法?
      網(wǎng)絡(luò)設(shè)置管理
      基于Libpcap的網(wǎng)絡(luò)數(shù)據(jù)包捕獲器的設(shè)計(jì)與實(shí)現(xiàn)
      京滬高鐵GSM-R網(wǎng)絡(luò)接口監(jiān)測網(wǎng)關(guān)子系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
      視覺注意的數(shù)據(jù)包優(yōu)先級排序策略研究
      無線路由器輻射可忽略
      全州县| 抚顺市| 江门市| 石泉县| 常山县| 乐山市| 富平县| 三都| 安新县| 江陵县| 长乐市| 萍乡市| 泰兴市| 老河口市| 和田县| 合江县| 酒泉市| 安泽县| 固阳县| 武义县| 凤冈县| 丰原市| 安图县| 卢氏县| 永川市| 尼木县| 嘉义县| 凤山县| 内江市| 沂水县| 甘谷县| 永仁县| 比如县| 镇原县| 施甸县| 黄陵县| 福贡县| 多伦县| 古交市| 家居| 巴东县|