采用FPGA的NoC驗(yàn)證平臺(tái)實(shí)現(xiàn)方案_第1頁(yè)
采用FPGA的NoC驗(yàn)證平臺(tái)實(shí)現(xiàn)方案_第2頁(yè)
采用FPGA的NoC驗(yàn)證平臺(tái)實(shí)現(xiàn)方案_第3頁(yè)
采用FPGA的NoC驗(yàn)證平臺(tái)實(shí)現(xiàn)方案_第4頁(yè)
采用FPGA的NoC驗(yàn)證平臺(tái)實(shí)現(xiàn)方案_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

采用FPGA的NoC驗(yàn)證平臺(tái)實(shí)現(xiàn)方案

半導(dǎo)體工藝技術(shù)進(jìn)入深亞微米時(shí)代后,基于總線系統(tǒng)芯片SoC(Svstemon

Chip)的體系結(jié)構(gòu)在物理設(shè)計(jì)、通信帶寬以及功耗等方面無法滿足未來多IP體

系發(fā)展的需求。片上網(wǎng)絡(luò)NoC(NetwotlkonChip)是一種新的系統(tǒng)芯片體系

結(jié)構(gòu),其核心思想是將計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)移植到系統(tǒng)芯片設(shè)計(jì)中來,從體系結(jié)構(gòu)

上徹底解決總線架構(gòu)帶來的問題。

研究人員從拓?fù)浣Y(jié)構(gòu)、路由算法、交換策略以及流控機(jī)制等多個(gè)方面對(duì)NoC

進(jìn)行研究,但是如何構(gòu)建NoC驗(yàn)證平臺(tái),快速得到NoC的性能也一直是NoC研

究的重點(diǎn)。

在過去的幾年里,一些研究機(jī)構(gòu)提出了對(duì)于NoC不同抽象層次的驗(yàn)證方法

的研究,一般的NoC驗(yàn)證是基于軟件的假真和建模,如:用C、也、SvstemC

進(jìn)行系統(tǒng)級(jí)建模仿真,這樣驗(yàn)證很靈活,但在仿真時(shí)間上卻開銷很大。本文提

出的基于FPGA的NoC驗(yàn)證平臺(tái)在仿真速度方面是一般基于HDL的軟件仿真的

16000倍,而基于PC機(jī)編寫的NoC軟件更增強(qiáng)了該平臺(tái)的靈活性和實(shí)用性。

1驗(yàn)證平臺(tái)架構(gòu)

該驗(yàn)證平臺(tái)采用模塊化設(shè)計(jì),可以很容易地對(duì)不同的NoC進(jìn)行功能驗(yàn)證和

性能*估。圖1給出了該驗(yàn)證平臺(tái)的基本架構(gòu)。

圖1基于FPGA的NoC驗(yàn)證平臺(tái)架構(gòu)

它主要包括3個(gè)模塊:

1)模擬IP核模塊該模塊包含有數(shù)據(jù)流量產(chǎn)生器TG(Traffic

Generator)模塊及數(shù)據(jù)流量接收器TR(TrafficReceiver)模塊。TG模擬產(chǎn)

生NoC網(wǎng)絡(luò)中各個(gè)TP節(jié)點(diǎn)可能產(chǎn)生的數(shù)據(jù)流量,TR用于收集NoC運(yùn)行過程中

的各種信息。TG/R作為一個(gè)IP節(jié)點(diǎn)和待測(cè)NoC中的每個(gè)交換節(jié)點(diǎn)相連接。

2)微處理器MPU及其接口MP1模塊PC機(jī)通過MPU(FPGA中自帶的Nj至II

軟核)和MPI實(shí)現(xiàn)對(duì)NoC各IP核中TG內(nèi)部各個(gè)配置寄存器的配置,并將TR中

各個(gè)寄存器的內(nèi)容讀取到PC機(jī)中進(jìn)行處理。本模塊和模擬IP核模塊構(gòu)成FPGA

硬件平臺(tái)。

3)NoC軟件模塊完成對(duì)NoC的配置以及NoC系統(tǒng)的性能統(tǒng)計(jì)。PC機(jī)通過

MPU與FPGA進(jìn)行通信,實(shí)現(xiàn)對(duì)NoC的配置并從FPGA中得到數(shù)據(jù)并進(jìn)行后端處

理,以圖形的方式顯示給用戶,供用戶對(duì)所設(shè)計(jì)的NoC進(jìn)行*估。同時(shí)PC機(jī)可

以監(jiān)控NoC運(yùn)行的情況。

FPGA采用Ahera公司StratixIV系列中的EP4SGX230KF40C2,該器件能夠

提供高速的時(shí)鐘信號(hào)和大量的片內(nèi)資源,并具有大量外圍接口電路可供使用,

這為基于FPGA的驗(yàn)證提供了強(qiáng)有力的保證。

1.1流量產(chǎn)生器TG

該平臺(tái)中的TG是一個(gè)可重用的軟核,用戶可以通過為配置寄存器寫入不同

的配置信息使其產(chǎn)生不同的流量并注入NoC中。TR用于接收數(shù)據(jù)信息,并統(tǒng)計(jì)

發(fā)包數(shù)和收包數(shù)。

記錄延時(shí)信息,統(tǒng)計(jì)誤碼個(gè)數(shù)。圖2給出了TG、TR和MPI以及NoC之間的

數(shù)據(jù)流向。

圖2TG.TH和MPI以及NoC之間的金據(jù)流向

在片上網(wǎng)絡(luò)中,流量的分布由以下2方面決定:1)流量的源/目的節(jié)點(diǎn)對(duì)

的分布,即空間位置上的通信概率分布,稱為空間分相;2)流量注入網(wǎng)絡(luò)時(shí),

注入網(wǎng)絡(luò)的時(shí)間間隔在時(shí)間上呈現(xiàn)的概率分布,稱為時(shí)間分布。為了使該平臺(tái)

達(dá)到*價(jià)NoC性能的目的,流量產(chǎn)生器TG將從空間分布和時(shí)間分布的不同,模

擬出不同的流量。

空間分布主要包括:1)給定目標(biāo)地址:即配置TG產(chǎn)生發(fā)往確定目標(biāo)地址

的數(shù)據(jù)包;2)均勻分布:即配置TG產(chǎn)生均勻的發(fā)往網(wǎng)絡(luò)中各個(gè)節(jié)點(diǎn)的數(shù)據(jù)

包,類似于網(wǎng)絡(luò)中的廣播現(xiàn)象;3)熱點(diǎn)分布:即配置TG產(chǎn)生發(fā)往網(wǎng)絡(luò)中一些

特定的數(shù)據(jù)交換相對(duì)頻繁的節(jié)點(diǎn)的數(shù)據(jù)包;4)局部分布:即配置TG產(chǎn)生發(fā)往

網(wǎng)絡(luò)中某一局部的網(wǎng)絡(luò)距離較近的節(jié)點(diǎn)的數(shù)據(jù)包;5)矩陣轉(zhuǎn)換地址分布:即按

照矩陣X,Y向量轉(zhuǎn)置的特點(diǎn)。配置TG產(chǎn)生發(fā)往與發(fā)送節(jié)點(diǎn)地址相對(duì)應(yīng)的節(jié)點(diǎn)

的數(shù)據(jù)包。

時(shí)間分布主要包括:1)確定時(shí)間間隔:即配置TG每過一定數(shù)目的時(shí)鐘周

期發(fā)送1個(gè)數(shù)據(jù)包,直到停止發(fā)包為止;2)自相似流量模型:即ON-OFF流量

模型。即配置TG在一段時(shí)間內(nèi)發(fā)送數(shù)據(jù)包,在一段時(shí)間內(nèi)停止發(fā)包。此類流量

模型就是模擬現(xiàn)實(shí)中在某一段時(shí)間突發(fā)很大的流量,而在另外的時(shí)間段不產(chǎn)生

流量;3)隨機(jī)分布:即配置TG在發(fā)送1個(gè)數(shù)據(jù)包之間的間隔是1個(gè)隨機(jī)時(shí)鐘

周期數(shù)。

空間分布和時(shí)間分布一般會(huì)交錯(cuò)配置使用,那么組合之后可以產(chǎn)生十兒種

不同的流量模型.另外,數(shù)據(jù)包的格式可以是用戶指定的數(shù)據(jù),也可以是偽隨

機(jī)序列PRBS(PseudoRandomBinarySequences)o數(shù)據(jù)包的大小亦可由月戶

指定,以數(shù)據(jù)片為單位,最小的數(shù)據(jù)包包含4片,最大的數(shù)據(jù)包包含511片。

那么將流量模型和數(shù)據(jù)格式以及數(shù)據(jù)包的大小組合起來,就會(huì)產(chǎn)生種類更為豐

富的流量模型。

流量產(chǎn)生器TG內(nèi)部設(shè)有多個(gè)配置寄存器,包括:發(fā)包使能寄存器,發(fā)包間

隔寄存器,發(fā)包地址和數(shù)據(jù)寄存器以及發(fā)包類型寄存器。這些寄存器統(tǒng)一編

址,用戶可以通過配置這些寄存器控制TG工作。

1.2流量接收器TR

流量接收器TR用于收集收發(fā)包數(shù)目,收發(fā)包的收據(jù)片,并且統(tǒng)計(jì)誤碼和時(shí)

延信息。為了達(dá)到此目的,TR內(nèi)部設(shè)有多個(gè)只讀寄存器,包括:發(fā)包個(gè)數(shù)寄存

落.收包個(gè)數(shù)寄存器,發(fā)包數(shù)據(jù)寄存潛,收包數(shù)據(jù)寄存器,中斷寄存器,誤碼

計(jì)數(shù)器以及延時(shí)寄存器,延時(shí)寄存器可以保存最近80個(gè)包的延時(shí)信息。這些寄

存器統(tǒng)一編址,可以通過訪問這些寄存器來讀取各種用于功能驗(yàn)證和性能*估的

原始數(shù)據(jù)。

1.3微處理器MPU及微處理器接口MPI

微處理器MPU是在QuartusII軟件的SOPCBuilder工具中定制的。它包括

1個(gè)NiosH處理器IP核和外圍的一些并行輸入輸出接口。NiosIH系列嵌入式

處理器是一款通用的RISC結(jié)構(gòu)的CPU,使用32位指令集結(jié)構(gòu)(ISA)的二進(jìn)制

代碼兼容。將NioslI處理器嵌入到FPGA硬件平臺(tái)中,配合整個(gè)系統(tǒng)實(shí)現(xiàn)驗(yàn)證

的功能。該平臺(tái)在所定制的NiosH處理器的外圍還加入讀信號(hào)、寫信號(hào)、地址

信號(hào)、輸入數(shù)據(jù)信號(hào)、輸出數(shù)據(jù)信號(hào)和中斷信號(hào)等,來完成PC機(jī)和FPGA硬件

平臺(tái)之間的數(shù)據(jù)通信。

NiosII處理器外圍還包括一個(gè)鎖相環(huán)(PLL)軟核,用于提供NoC電路中所

需要的各種時(shí)鐘頻率。微處理器MPU與TG/R通信時(shí),讀寫控制時(shí)鐘作為突發(fā)

時(shí)鐘,頻率一般比較低。而NoC中交換節(jié)點(diǎn)之間的數(shù)據(jù)交換會(huì)由于特定電路的

不同,工作時(shí)鐘頻率會(huì)大小不同,那么根據(jù)此工作頻率,PLL產(chǎn)生相應(yīng)的時(shí)鐘

信號(hào)配合其工作。MPU處理器僅占StratixIVEP4SGX230KF40c2器件2820個(gè)

邏輯資源LE(LogicElement)(即1%)。因此使用非常高效。

該平臺(tái)還提供一個(gè)通用的微處理器接口MPL用于保障MPU和TG/R之間的

數(shù)據(jù)通信,也為MPU和TG/R的重復(fù)使用提供了統(tǒng)一接口。

1.4NoC軟件

NoC軟件主要完成對(duì)FPGA硬件平臺(tái)的初始化配置和信息收集及統(tǒng)計(jì)處理。

根據(jù)功能劃分為2部分:

1)NoC測(cè)試部分其基本功能包括對(duì)FPGA硬件平臺(tái)的各個(gè)IP中TG內(nèi)部配

置寄存器的初始化配置,啟動(dòng)產(chǎn)生數(shù)據(jù)流并注入到NoC中,同時(shí)對(duì)NoC的運(yùn)行

情況進(jìn)行監(jiān)控,并實(shí)時(shí)收集與功能驗(yàn)證和性能*估相關(guān)的信息。該軟件是在

NiosH的集成開發(fā)環(huán)境(IDE)下用C語言設(shè)計(jì)開發(fā)的,在GNU的編譯器下編譯

之后形成可以上載到MPU上直接運(yùn)行的二進(jìn)制文件。

2)NoC性能統(tǒng)計(jì)處理部分該部分的主要功能是借助于第三方繪圖工具按照

NoC性能統(tǒng)計(jì)規(guī)則對(duì)收集到的數(shù)據(jù)進(jìn)行統(tǒng)計(jì)處理,并以圖表的方式直觀顯示NoC

的基本功能和統(tǒng)計(jì)學(xué)性能。

以上兩部分都是在PC機(jī)上開發(fā)完成的,可應(yīng)用于對(duì)不同NoC的測(cè)試與驗(yàn)

證。這為基于FPGA的鯉件驗(yàn)證平臺(tái)增強(qiáng)了靈活性和實(shí)用性。

2仿真驗(yàn)證流程

該驗(yàn)證平臺(tái)的驗(yàn)證流程包括FPGA硬件平臺(tái)的構(gòu)建和對(duì)該硬件平臺(tái)的初始化

配置以及NoC運(yùn)行之后的信息收集和統(tǒng)計(jì)處理。為真驗(yàn)證流程如圖3所示。

圖3仿真驗(yàn)證流程

其流程簡(jiǎn)述如下:1)根據(jù)硬件架構(gòu)思想和模塊化設(shè)計(jì)策略將用HDL語言描

述的NoC連接到FPGA硬件平臺(tái);2)初始化配置FPGA硬件平臺(tái),在PC機(jī)上編

寫NoC測(cè)試軟件,并通過Jtag線下載到MPU上運(yùn)行,配置TG產(chǎn)生指定流量,

并注入到NoC中;3)當(dāng)FPGA平臺(tái)運(yùn)行時(shí),即當(dāng)數(shù)據(jù)在NoC各個(gè)交換節(jié)點(diǎn)之間

傳送或停止傳送時(shí),用戶可以隨時(shí)改變配置以產(chǎn)生不同的流量,來測(cè)試NoC在

不同流量下的性能,并隨時(shí)*測(cè)試平臺(tái)的運(yùn)行情況;4)將TR收集到的數(shù)據(jù)在

NiosHIDE的控制臺(tái)顯示,并保存數(shù)據(jù)。然后對(duì)收集到的數(shù)據(jù)進(jìn)行統(tǒng)計(jì)處理,

并以圖形的方式直觀顯示待測(cè)NoC的性能。

3NoC性能統(tǒng)計(jì)處理

在驗(yàn)證平臺(tái)中,采用PC機(jī)對(duì)NoC中運(yùn)行之后相關(guān)的數(shù)據(jù)進(jìn)行處理.,并借助

于第三方工具將處理結(jié)果以圖形方式顯示,以直觀表示NoC的性能。該平臺(tái)對(duì)

于課題組設(shè)計(jì)的Mesh結(jié)構(gòu)的NoC進(jìn)行了功能驗(yàn)證和性能*估。

主要處理包括平均網(wǎng)絡(luò)吞吐量和最近收到的80個(gè)數(shù)據(jù)包從發(fā)送端到接收端

的網(wǎng)絡(luò)平均延時(shí)以及誤碼統(tǒng)計(jì),下面簡(jiǎn)單介紹性能*估的方法:

1)網(wǎng)絡(luò)平均吞吐量對(duì)于TR收集到的收包個(gè)數(shù)通過PC讀取之后,繪制性

能曲線圖。以歸一化仿真時(shí)間為基準(zhǔn),以相同時(shí)間段中收集的數(shù)據(jù)包數(shù)目作為

網(wǎng)絡(luò)總吞吐量。

式中,總運(yùn)行時(shí)間xlO%表示取歸一化時(shí)延的1/10o

圖4給出了在不同流量模型下,每包4個(gè)數(shù)據(jù)片時(shí),所設(shè)計(jì)NoC的網(wǎng)絡(luò)平

均吞吐量。

現(xiàn)

/

*,

4

*

地址紇力.■靈時(shí)引,隔

序肥加J匕[梢依成,立

局配地址.陳機(jī)分布

G.507b0^V.X0.9

歸一化仿衰H同

W4不同流政模型FM網(wǎng)絡(luò)平均吞吐量

2)平均網(wǎng)絡(luò)延遲對(duì)于TR收集到的最近80人數(shù)據(jù)包從發(fā)送端到接收端的

延遲信息,以歸一化仿真時(shí)間為基準(zhǔn),計(jì)算平均網(wǎng)絡(luò)延遲:

o.i0.20.50.60.70.80.9

?一億訪工時(shí)間

圖5不同流址模舒F的平均網(wǎng)絡(luò)延遲

式中,P是發(fā)包總數(shù),每個(gè)包的延遲為L(zhǎng)i,那么Latency就是一段時(shí)間內(nèi)

的平均網(wǎng)絡(luò)延遲。

3

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論