新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 基于FPGA 的多時(shí)鐘片上網(wǎng)絡(luò)設(shè)計(jì)

基于FPGA 的多時(shí)鐘片上網(wǎng)絡(luò)設(shè)計(jì)

作者: 時(shí)間:2012-08-24 來源:網(wǎng)絡(luò) 收藏

(1)緩沖部分或者全部到來的數(shù)據(jù)包,以及當(dāng)下游開關(guān)可以用時(shí),傳送頭部及緊跟的flit。

(2)劃分路由器核心以及路由器的頻率,從而支持一個(gè)的網(wǎng)絡(luò)設(shè)計(jì)。

(3)通過仲裁器監(jiān)察write_count 端口的信息,來實(shí)現(xiàn)支持可變化大小的數(shù)據(jù)包。在緩沖區(qū)有單獨(dú)時(shí)鐘域的情況時(shí), 就需要一種有效的方式實(shí)施完整的或者空的邏輯。通過以下方式使控制信號(hào)同步:

(1)發(fā)送數(shù)據(jù)包粒度作為一小部分FIFO 的空間。

(2) 在一個(gè)時(shí)鐘周期內(nèi), 一個(gè)連接終止之前設(shè)置flit 的尾部位。在所使用的 設(shè)計(jì)中,由于支持FIFO 的最小深度是16, 所以它適合于在虛擬直通中緩沖整個(gè)數(shù)據(jù)包。write_count 的空和滿狀態(tài)信號(hào)將集成在FIFO 中。在一個(gè)多數(shù)據(jù)包的緩沖區(qū)中加大存儲(chǔ)flit 的能力,將有助于提高FIFO 的利用率。此外,獲得網(wǎng)絡(luò)的吞吐量的增益,是由于上游連續(xù)包釋放緩沖區(qū)所促成的。


圖1 輸入端口設(shè)計(jì)圖

bRAM 仲裁器: 輸入端口還包含了控制邏輯作出的仲裁決定。當(dāng)選擇一個(gè)非空的bRAM 時(shí), 簡(jiǎn)單的Round-robin 的方式仲裁算法將會(huì)啟用。當(dāng)選擇bRAM時(shí),F(xiàn)SM 將會(huì)送出頭部flit,解碼出它的目的地址,并發(fā)送相應(yīng)的要求。在所設(shè)計(jì)的路由器中采用XY 路由算法將大大簡(jiǎn)化了解碼器的邏輯結(jié)構(gòu)。根據(jù)XY 路由算法的通行路徑許可,即將釋放的請(qǐng)求線將會(huì)減少。

頭譯碼器:在XY 路由算法中,頭數(shù)據(jù)片一開始往X 軸方向走,當(dāng)?shù)竭_(dá)X 軸所在的目標(biāo)地址時(shí),就會(huì)往Y方向走。所有緊隨著的數(shù)據(jù)片將以流水線的方式跟著頭數(shù)據(jù)片移動(dòng)。這種簡(jiǎn)便的XY 路由算法適用于減化頭解碼器、交叉點(diǎn)矩陣以及中央仲裁器的邏輯結(jié)構(gòu)。以上簡(jiǎn)化得邏輯結(jié)構(gòu)將使 的芯片數(shù)顯著減少。

2.3 交叉點(diǎn)矩陣

設(shè)計(jì)一個(gè)多路交叉點(diǎn)矩陣, 目的是為了減少面積的使用。而另一種設(shè)計(jì)是支持復(fù)分解虛擬通道的交叉點(diǎn)連接。后一種方法,產(chǎn)生高網(wǎng)絡(luò)吞吐量,但要增加一個(gè)重要的復(fù)雜性開關(guān)。交叉點(diǎn)支持并行連接,以及被用于通過中央仲裁器支持多個(gè)信號(hào)同時(shí)請(qǐng)求。并非所有的交叉點(diǎn)連接都是使用XY 路由算法。經(jīng)過邏輯優(yōu)化,如圖2 所示設(shè)計(jì)中實(shí)施簡(jiǎn)單的4 和2 輸入多路復(fù)用器開關(guān)(分別是L、N、S、E 以及W 端口)。上述優(yōu)化方案減少了交叉點(diǎn)面積,使其使用的切片只有32 片。因此,達(dá)到路由器面積顯著減小的目的。


圖2 交叉點(diǎn)矩陣

輸入端口的分配方式將采用簡(jiǎn)單的Round-robin仲裁機(jī)制。對(duì)上一次接收過的或沒有用到的端口將給予最低優(yōu)先級(jí),并排在隊(duì)列的最末端。將通過以下的方式提高路由器的性能:

(1)降低中央仲裁器的邏輯復(fù)雜度;

(2)盡量集中仲裁器,以減少req/grant 信號(hào)的數(shù)量。

在設(shè)計(jì)中減少邏輯復(fù)雜度以及布線, 從而減少數(shù)據(jù)堵塞,達(dá)到提高性能以及減低功耗的效果。



評(píng)論


相關(guān)推薦

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

關(guān)閉