歡迎來到溫州瑞川電子有限公司!

關于我們

新聞中心

當前位置: 首頁 > 新聞中心 > 公司新聞

聯(lián)系我們Contact Us

溫州瑞川電子有限公司

電 話:0577-62338881

傳 真:0577-62388870

郵 箱:wzruich@163.com

網(wǎng)址:http://theapparchitects.com/

地 址:浙江省樂清市虹橋鎮(zhèn)興發(fā)路788號(溪西工業(yè)區(qū))

一種高效網(wǎng)絡接口的設計

2022-01-08 10:02:54

一種高效網(wǎng)絡接口的設計


摘要:為了得到比傳統(tǒng)片上網(wǎng)絡的網(wǎng)絡資源接口(NI)更高的數(shù)據(jù)傳輸效率和更加穩(wěn)定的數(shù)據(jù)傳輸效果,提出了一種新的高效網(wǎng)絡接口的設計方法,并采用Verilog HDL語言對相關模塊進行編程,實現(xiàn)了高效傳輸功能,同時又滿足核內(nèi)路由的設計要求。最終通過仿真軟件Xilinx ISE Design Suite 12.3和ModelSim SE 6.2b得到了滿足設計要求的仿真結果。

關鍵詞:片上網(wǎng)絡;網(wǎng)絡資源接口;核內(nèi)路由;Verilog HDL


O 引言

    隨著納米時代的到來,集成電路工藝不斷的發(fā)展,特別是VISI設計技術的進步,系統(tǒng)級芯片的設計迎來了巨大的挑戰(zhàn),而這個挑戰(zhàn)的的關鍵就是怎么樣實現(xiàn)更高的通信效率。這個問題的出現(xiàn)也預示著多核技術時代的到臨。為了應對這個挑戰(zhàn),人們提出了片上網(wǎng)絡(Network On Chip,NoC)的概念。片上網(wǎng)絡(NoC)移植了網(wǎng)絡通信的方式,進而來解決多核時代的IP核互聯(lián)通信的問題。

    由于片上網(wǎng)絡(NoC)具有優(yōu)秀的可擴展性和相對較好的功耗效率,目前已經(jīng)被大多數(shù)人認為是解決當前甚至未來芯片設計中關于通信問題的最重要的技術之一。

1 NoC簡介

    圖1為傳統(tǒng)2D-MESH結構的NoC示意圖。圖中明顯可以看出片上網(wǎng)絡(NoC)主要由4部分組成:資源節(jié)點(IP核)、路由節(jié)點、網(wǎng)絡接口NI(Network Interface)和全局鏈路。其中網(wǎng)絡接口NI就是連接IP核與通信網(wǎng)絡的橋梁,同時網(wǎng)絡接口NI的設計也是片上網(wǎng)絡(NoC)設計技術中重要的一環(huán)。

    網(wǎng)絡接口NI使NoC實現(xiàn)了計算資源與通信網(wǎng)絡部分的分離,允許IP核和網(wǎng)絡通信結構分別獨立進行設計,使計算資源相對網(wǎng)絡更加透明,從而實現(xiàn)不同資源間的互聯(lián),提高了設計的重用性。網(wǎng)絡接口NI主要面向地址信號,數(shù)據(jù)的打包、解包、編碼,同步等方面的問題。文獻提出的是一種既滿足擔保服務又滿足最大努力服務的網(wǎng)絡接口NI,但是此網(wǎng)絡接口NI主要應用于AEthereal系統(tǒng)中。文獻介紹了一種以OCP從模塊存在的網(wǎng)絡接口,應用于XpIPes系統(tǒng)。

2 通用網(wǎng)絡接口NI的結構及模塊功能

    網(wǎng)絡接口的作用主要基于網(wǎng)絡中關于信息包信息的傳輸,并且將其轉換成資源模塊可用的形式。它的主要功能包括3個方面:提取關于IP核與網(wǎng)絡之間的通信協(xié)議;支持任何IP核與網(wǎng)絡接口連接;對數(shù)據(jù)進行打包和解包。

    當數(shù)據(jù)在NoC中傳輸時,網(wǎng)絡接口將主IP核中的數(shù)據(jù)進行打包,并進行校驗,然后將其傳輸?shù)铰酚晒?jié)點進入網(wǎng)絡,最后由目的IP核的網(wǎng)絡接口進行解包,校驗進入到目的IP核中。圖2是通用網(wǎng)絡接口的結構模塊圖,如圖2所示其主要由通用核接口、數(shù)據(jù)打包單元、數(shù)據(jù)解包單元、存儲單元和異步FIFO構成。數(shù)據(jù)打包單元主要將來自IP核的信息進行打包,其首先將信息轉換成流控單元(flit),然后在網(wǎng)絡中進行傳輸,其主要由包頭編碼單元,數(shù)據(jù)處理單元和FIFO控制單元構成。而解包單元主要是將數(shù)據(jù)包進行轉換,滿足目的IP核所需要的數(shù)據(jù)形式。數(shù)據(jù)打包單元和數(shù)據(jù)解包單元共享網(wǎng)絡接口中的存儲單元,這樣做主要是易于鏈接不同模塊。


3 高效網(wǎng)絡接口的設計

3.1 總體結構的設計與分析

    本文主要是設計一種高效的網(wǎng)絡接口使其滿足數(shù)據(jù)的快速傳輸,同時能承受高的通信壓力,使其也可用于核內(nèi)路由的數(shù)據(jù)傳輸。核內(nèi)路由及將傳統(tǒng)的路由節(jié)點嵌入到IP核中,與IP核共享存儲單元,益于IP核與網(wǎng)絡通信部分數(shù)據(jù)傳輸加速,以便于加快整個NoC的網(wǎng)絡通信速率。據(jù)文獻可知,核內(nèi)路由也將是NoC發(fā)展的重要方向之一。如圖3所示,本文設計的網(wǎng)絡接口主要包含數(shù)據(jù)接收,數(shù)據(jù)發(fā)送,緩沖區(qū)模塊和寄存器控制組4部分。

    當原始數(shù)據(jù)從IP核傳輸?shù)奖揪W(wǎng)絡接口,首先由數(shù)據(jù)接收模塊將原始數(shù)據(jù)打包,并將其分為多個片(flit)。通常數(shù)據(jù)包被分為:Head flit,Datel flit,Date2 flit,Tailflit等4部分,而本網(wǎng)絡接口將其壓縮為Head flit,Datel flit,Date2 and control flit三部分,主要是將Tailflit壓縮到傳統(tǒng)Data2 flit中,因為Tail flit中只含有一個完成控制信號,所以將其合并到最后一個數(shù)據(jù)片上,通過寄存器控制模塊控制發(fā)送,通過網(wǎng)絡到達目的網(wǎng)絡接口,由其將接受到的數(shù)據(jù)包進行解包,滿足目的IP核的需求,同時傳輸?shù)侥康腎P核。由于本網(wǎng)絡接口也可以嵌入到IP核中,因此可以提前將Head flit發(fā)送出去,使Head flit的發(fā)送與數(shù)據(jù)打包并行處理。這樣就加速了數(shù)據(jù)的傳輸速率。

3.2 數(shù)據(jù)接收模塊的設計

    此模塊主要是完成接收路由節(jié)點發(fā)出來的數(shù)據(jù)包以及本地IP核發(fā)出的數(shù)據(jù)包。其結構如圖4所示,由數(shù)據(jù)接收邏輯控制模塊和數(shù)據(jù)接收狀態(tài)機模塊。

    此模塊主要工作流程為:接收控制邏輯模塊→產(chǎn)生緩存地址和有效信號→狀態(tài)機模塊→產(chǎn)生接收數(shù)據(jù)的狀態(tài)。

    當系統(tǒng)復位,整個狀態(tài)機處于空狀態(tài)(idle),當同時接收到有效的數(shù)據(jù)信號和信道控制信號時,進入接收數(shù)據(jù)長狀態(tài)(r_length)。隨著clk上升沿的到達,順序進入接收數(shù)據(jù)目的地址的狀態(tài)(r_desti_addr),接收源地址狀態(tài)(r_source_addr),接收數(shù)據(jù)狀態(tài)(r_receive)。數(shù)據(jù)接收完成后,置數(shù)據(jù)傳輸完成信號無效后,狀態(tài)機恢復初始狀態(tài)(idle)。

3.3 數(shù)據(jù)發(fā)送模塊的設計

    此模塊主要是將從路由節(jié)點得到的數(shù)據(jù)發(fā)送給IP核,或者是將從IP核得到的數(shù)據(jù)傳輸?shù)酵ㄐ啪W(wǎng)絡中去。設計思路同數(shù)據(jù)接收模塊相似。結構圖如圖6所示分為2部分:數(shù)據(jù)發(fā)送控制邏輯模塊和數(shù)據(jù)發(fā)送狀態(tài)機模塊。其狀態(tài)機的轉移圖如圖7所示。簡述:idle→(有效數(shù)據(jù)發(fā)送信號)ask(信道請求信號)→(響應信道請求)buf_en→(clk上沿)t_length→t_date→(數(shù)據(jù)信號完成響應)idle。

3.4 寄存器控制組模塊的設計

    此模塊主要分為:狀態(tài)寄存器,邏輯控制寄存器,接收數(shù)據(jù)長寄存器,接收數(shù)據(jù)源地址寄存器。4個寄存器都為8位寄存器。滿足了各節(jié)點對網(wǎng)絡接口的控制。表1為狀態(tài)寄存器。

    當前網(wǎng)絡接口的工作狀態(tài)有表中寄存器的低兩位所代表?!?”代表處于r_date,“1”代表處于s_date。

4 系統(tǒng)仿真與驗證結果

    本文設計的網(wǎng)絡接口主要是使用Xilinx ISE Design suite 12.3和ModelSim SE 6.2b仿真軟件進行仿真和驗證。圖8是網(wǎng)絡接口中數(shù)據(jù)接收模塊功能仿真圖,圖9是數(shù)據(jù)發(fā)送模塊功能仿真圖。實驗主要是通過主時鐘控制數(shù)據(jù)的發(fā)送,采用50 MHz的時鐘,每2個時鐘發(fā)送一個IP核數(shù)據(jù),發(fā)送完成的到flag標識。從結果可以看出此設計便于加快數(shù)據(jù)在網(wǎng)絡中的傳輸效率。實驗中源IP核輸出數(shù)據(jù)為32位,通過NI1把數(shù)據(jù)分為高16位和低16位輸出,到達目的NI2,通過NI2把數(shù)據(jù)合并為32位,最終輸入到目的IP核內(nèi)。結果顯示,數(shù)據(jù)傳輸過程數(shù)據(jù)保持了較強的穩(wěn)定性,同時發(fā)送與接收都準確的做出了應答,達到了設計要求。

5 結語

    本文設計的網(wǎng)絡接口主要是針對對數(shù)據(jù)傳輸速率要求較高,對傳輸效果穩(wěn)定性要求較高的NoC體系。通過實驗基本實現(xiàn)了設計要求,同時此網(wǎng)絡接口具有較強的實用性,對與今后核內(nèi)路由的研究具有重要的意義。


近期瀏覽: