新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 一種基于FPGA的NoC驗證平臺的構(gòu)建

一種基于FPGA的NoC驗證平臺的構(gòu)建

作者: 時間:2010-05-10 來源:網(wǎng)絡(luò) 收藏

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

  該平臺中的TG是一個可重用的軟核,用戶可以通過為配置寄存器寫入不同的配置信息使其產(chǎn)生不同的流量并注入中。TR用于接收數(shù)據(jù)信息,并統(tǒng)計發(fā)包數(shù)和收包數(shù)。

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

  在片上網(wǎng)絡(luò)中,流量的分布由以下2方面決定:1)流量的源/目的節(jié)點對的分布,即空間位置上的通信概率分布,稱為空間分布;2)流量注入網(wǎng)絡(luò)時,注入網(wǎng)絡(luò)的時間間隔在時間上呈現(xiàn)的概率分布,稱為時間分布。為了使該平臺達到評價性能的目的,流量產(chǎn)生器TG將從空間分布和時間分布的不同,模擬出不同的流量。

  空間分布主要包括:1)給定目標(biāo)地址:即配置TG產(chǎn)生發(fā)往確定目標(biāo)地址的數(shù)據(jù)包;2)均勻分布:即配置TG產(chǎn)生均勻的發(fā)往網(wǎng)絡(luò)中各個節(jié)點的數(shù)據(jù)包,類似于網(wǎng)絡(luò)中的廣播現(xiàn)象;3)熱點分布:即配置TG產(chǎn)生發(fā)往網(wǎng)絡(luò)中一些特定的數(shù)據(jù)交換相對頻繁的節(jié)點的數(shù)據(jù)包;4)局部分布:即配置TG產(chǎn)生發(fā)往網(wǎng)絡(luò)中某一局部的網(wǎng)絡(luò)距離較近的節(jié)點的數(shù)據(jù)包;5)矩陣轉(zhuǎn)換地址分布:即按照矩陣X,Y向量轉(zhuǎn)置的特點。配置TG產(chǎn)生發(fā)往與發(fā)送節(jié)點地址相對應(yīng)的節(jié)點的數(shù)據(jù)包。

  時間分布主要包括:1)確定時間間隔:即配置TG每過一定數(shù)目的時鐘周期發(fā)送1個數(shù)據(jù)包,直到停止發(fā)包為止;2)自相似流量模型:即ON-OFF流量模型。即配置TG在一段時間內(nèi)發(fā)送數(shù)據(jù)包,在一段時間內(nèi)停止發(fā)包。此類流量模型就是模擬現(xiàn)實中在某一段時間突發(fā)很大的流量,而在另外的時間段不產(chǎn)生流量;3)隨機分布:即配置TG在發(fā)送1個數(shù)據(jù)包之間的間隔是1個隨機時鐘周期數(shù)。

  空間分布和時間分布一般會交錯配置使用,那么組合之后可以產(chǎn)生十幾種不同的流量模型。另外,數(shù)據(jù)包的格式可以是用戶指定的數(shù)據(jù),也可以是偽隨機序列PRBS(Pseudo Random Binary Sequences)。數(shù)據(jù)包的大小亦可由用戶指定,以數(shù)據(jù)片為單位,最小的數(shù)據(jù)包包含4片,最大的數(shù)據(jù)包包含511片。那么將流量模型和數(shù)據(jù)格式以及數(shù)據(jù)包的大小組合起來,就會產(chǎn)生種類更為豐富的流量模型。

  流量產(chǎn)生器TG內(nèi)部設(shè)有多個配置寄存器,包括:發(fā)包使能寄存器,發(fā)包間隔寄存器,發(fā)包地址和數(shù)據(jù)寄存器以及發(fā)包類型寄存器。這些寄存器統(tǒng)一編址,用戶可以通過配置這些寄存器控制TG工作。

  1.2 流量接收器TR

  流量接收器TR用于收集收發(fā)包數(shù)目,收發(fā)包的收據(jù)片,并且統(tǒng)計誤碼和時延信息。為了達到此目的,TR內(nèi)部設(shè)有多個只讀寄存器,包括:發(fā)包個數(shù)寄存器.收包個數(shù)寄存器,發(fā)包數(shù)據(jù)寄存器,收包數(shù)據(jù)寄存器,中斷寄存器,誤碼計數(shù)器以及延時寄存器,延時寄存器可以保存最近80個包的延時信息。這些寄存器統(tǒng)一編址,可以通過訪問這些寄存器來讀取各種用于功能驗證和性能評估的原始數(shù)據(jù)。

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

  微處理器MPU是在QuartusⅡ軟件的SOPC Builder工具中定制的。它包括1個NiosⅡ處理器IP核和外圍的一些并行輸入輸出接口。NiosIⅡ系列嵌入式處理器是一款通用的RISC結(jié)構(gòu)的CPU,使用32位指令集結(jié)構(gòu)(ISA)的二進制代碼兼容。將NiosⅡ處理器嵌入到硬件平臺中,配合整個系統(tǒng)實現(xiàn)驗證的功能。該平臺在所定制的NiosⅡ處理器的外圍還加入讀信號、寫信號、地址信號、輸入數(shù)據(jù)信號、輸出數(shù)據(jù)信號和中斷信號等,來完成PC機和硬件平臺之間的數(shù)據(jù)通信。

  NiosⅡ處理器外圍還包括一個鎖相環(huán)(PLL)軟核,用于提供NoC電路中所需要的各種時鐘頻率。微處理器MPU與TG/R通信時,讀寫控制時鐘作為突發(fā)時鐘,頻率一般比較低。而NoC中交換節(jié)點之間的數(shù)據(jù)交換會由于特定電路的不同,工作時鐘頻率會大小不同,那么根據(jù)此工作頻率,PLL產(chǎn)生相應(yīng)的時鐘信號配合其工作。MPU處理器僅占Stratix IVEP4SGX230KF40C2器件2 820個邏輯資源LE (Logic Element)(即1%)。因此使用非常高效。

  該平臺還提供一個通用的微處理器接口MPI,用于保障MPU和TG/R之間的數(shù)據(jù)通信,也為MPU和TG/R的重復(fù)使用提供了統(tǒng)一接口。



關(guān)鍵詞: FPGA NoC 驗證平臺

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉