在FPGA設計中如何充分利用NoC資源去支撐創新應用設計
發布時間:2020-09-02 來源:黃侖,Achronix資深現場應用工程師 責任編輯:wenwei
【導讀】日益增長的數據加速需求對硬件平台提出了越來越高的要求,FPGA作為一種可編程可定製化的高性能硬件發揮著越來越重要的作用。近年來,高端FPGA芯片采用了越來越多的Hard IP去提升FPGA外圍的數據傳輸帶寬以及存儲器帶寬。但是在FPGA內部,可編程邏輯部分隨著工藝提升而不斷進步的同時,內外部數據交換性能的提升並沒有那麼明顯,所以FPGA內部數據的交換越來越成為數據傳輸的瓶頸。
為了解決這一問題,Achronix 在其最新基於台積電(TSMC)7nm FinFET工藝的Speedster7t FPGA器件中包含了革命性的創新型二維片上網絡(2D NoC)。這種2D NoC如同在FPGA可編程邏輯結構之上運行的高速公路網絡一樣,為FPGA外部高速接口和內部可編程邏輯的數據傳輸提供了大約高達27Tbps的超高帶寬。
作為Speedster7t FPGA器件中的重要創新之一,2D NoC為FPGA設計提供了幾項重要優勢,包括:
● 提高設計的性能,讓FPGA內部的數據傳輸不再成為瓶頸。
● 節省FPGA可編程邏輯資源,簡化邏輯設計,由NoC去替代傳統的邏輯去做高速數據傳輸和數據總線管理。
● 增加了FPGA的布線資源,對於資源占用很高的設計有效地降低布局布線擁塞的風險。
● 實現真正的模塊化設計,減小FPGA設計人員調試的工作量。
本文用了一個具體的FPGA設計案例,來體現上麵提到的NoC在FPGA設計中的幾項重要作用。這個設計的主要目的是展示FPGA內部的邏輯如何去訪問片外的存儲器。如圖1所示,本設計包含8個讀寫模塊,這8個讀寫模塊需要訪問8個GDDR6通道,這樣就需要一個8x8的AXI interconnect模塊,同時需要有跨時鍾域的邏輯去將每個GDDR6用戶接口時鍾轉換到邏輯主時鍾。除了圖1中的8個讀寫模塊外,紅色區域的邏輯都需要用FPGA的可編程邏輯去實現。

圖1 傳統FPGA實現架構
對於AXI interconnect模塊,我們采用Github上開源的AXI4總線連接器來實現,這個AXI4總線連接器將4個AXI4總線主設備連接到8個AXI4總線從設備,源代碼可以在參考文獻2的鏈接中下載。我們在這個代碼的基礎上進行擴展,增加到8個AXI4總線主設備連接到8個AXI4總線從設備,同時加上了跨時鍾域邏輯。
為了進行對比,我們用另外一個設計,目的還是用這8個讀寫模塊去訪問8個GDDR6通道;不同的是,這次我們將8個讀寫模塊連接到Achronix的Speedster7t FPGA器件的2D NoC上,然後通過2D NoC去訪問8個GDDR6通道。如圖2所示:

圖2 Speedster7t 1500的實現架構
首先,我們從資源和性能上做一個對比,如圖3所示:

圖3 資源占用和性能對比
從資源占用上看,用AXI總線連接器的設計會比用2D NoC的設計占用多出很多的資源,以實現AXI interconnect還有跨時鍾域的邏輯。這裏還要說明一點,這個開源的AXI interconnect實現的是一種最簡單的總線連接器,並不支持2D NoC所能提供的所有功能,比如地址表映射,優先級配置。
最重要的一點是AXI interconnect隻支持阻塞訪問(blocking),不支持非阻塞訪問(non-blocking)。阻zu塞sai訪fang問wen是shi指zhi發fa起qi讀du或huo者zhe寫xie請qing求qiu以yi後hou,要yao等deng到dao本ben次ci讀du或huo者zhe寫xie操cao作zuo完wan成cheng以yi後hou,才cai能neng發fa起qi下xia一yi次ci的de讀du或huo者zhe寫xie請qing求qiu。而er非fei阻zu塞sai訪fang問wen是shi指zhi可ke以yi連lian續xu發fa起qi讀du或huo者zhe寫xie請qing求qiu,而er不bu用yong等deng待dai上shang次ci的de讀du或huo者zhe寫xie操cao作zuo完wan成cheng。在zai提ti高gaoGDDR6的訪問效率上麵,阻塞訪問會讓讀寫效率大大下降。
如果用FPGA的可編程邏輯去實現完整的2D NoC功能,包括64個接入點、128bit位寬和400MHz的速率,大概需要850 k LE,等效於占用了Speedster7t 1500 FPGA器件56%的可編程資源。而2D NoC則可以提供 80個接入點、256bit位寬和2GHz速率,而且不占用FPGA可編程邏輯。
從性能上來看,使用AXI總線連接器的設計隻能跑到157MHz,而使用NoC的設計則能跑到500MHz。如果我們看一下設計後端的布局布線圖,就會有更深刻的認識。圖4所示的是使用AXI總線連接器的設計後端布局布線圖。

圖4 使用AXI interconnect的設計後端布局布線圖
從圖中可以看到,因為GDDR6控製器分布在器件的兩側(圖中彩色高亮的部分),所以AXI總線連接器的布局基本分布在器件的中間,既不能靠近左邊,也不能靠近右邊,所以這樣就導致了性能上不去。如果增加pipeline的寄存器可以提高係統的性能,但是這樣會占用大量的寄存器資源,同時會給GDDR的訪問帶來很大的延時。
如果再看一下圖5中使用了2D NoC的布局布線圖,就會有很明顯的對比。首先,因為用2D NoC實現了AXI總線連接器和跨時鍾域的模塊,這就節省了大量的資源;另外,因為2D NoC遍布在整個器件上,一共有80個接入點,所以8個讀寫模塊可以由工具放置在器件的任何地方,而不影響設計的性能。

圖5 使用2D NoC設計的後端布局布線圖
從本設計的整個流程來看,使用2D NoC會極大的簡化設計,提高性能,同時節省大量的資源;FPGA設計工程師可以花更多的精力在核心模塊或者算法模塊設計上麵,把總線傳輸、外部接口訪問仲裁和接口異步時鍾域的轉換等工作全部交給2D NoC吧。
如需了解更多Speedster7t FPGA器件產品細節,請發送郵件到Dawson.Guo@Achronix.com,或訪問Achronix公司官方網站:http://www.achronix.com以訂閱新聞和獲取產品資料。
參考文獻:
1.使用帶有片上高速網絡的FPGA的八大好處
2.https://github.com/Verdvana/AXI4_Interconnect
推薦閱讀:
特別推薦
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
技術文章更多>>
- 築基AI4S:摩爾線程全功能GPU加速中國生命科學自主生態
- 一秒檢測,成本降至萬分之一,光引科技把幾十萬的台式光譜儀“搬”到了手腕上
- AI服務器電源機櫃Power Rack HVDC MW級測試方案
- 突破工藝邊界,奎芯科技LPDDR5X IP矽驗證通過,速率達9600Mbps
- 通過直接、準確、自動測量超低範圍的氯殘留來推動反滲透膜保護
技術白皮書下載更多>>
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
微波功率管
微波開關
微波連接器
微波器件
微波三極管
微波振蕩器
微電機
微調電容
微動開關
微蜂窩
位置傳感器
溫度保險絲
溫度傳感器
溫控開關
溫控可控矽
聞泰
穩壓電源
穩壓二極管
穩壓管
無焊端子
無線充電
無線監控
無源濾波器
五金工具
物聯網
顯示模塊
顯微鏡結構
線圈
線繞電位器
線繞電阻



