利用片上高速網(wǎng)絡(luò )(2D NoC),創(chuàng )新實(shí)現FPGA內部超高帶寬邏輯互連
Achronix 最新基于臺積電(TSMC)的7nm FinFET工藝的Speedster7t FPGA器件包含了革命性的新型二維片上網(wǎng)絡(luò )(2D NoC)。2D NoC如同在FPGA可編程邏輯結構上運行的高速公路網(wǎng)絡(luò )一樣,為FPGA外部高速接口和內部可編程邏輯的數據傳輸提供了超高帶寬(~27Tbps)。
本文引用地址:http://dyxdggzs.com/article/202002/410402.htm圖1 Speedster 7t FPGA結構圖
NoC使用一系列高速的行和列網(wǎng)絡(luò )通路在整個(gè)FPGA內部分發(fā)數據,從而在整個(gè)FPGA結構中以水平和垂直方式分發(fā)數據流量。NoC中的每一行或每一列都有兩個(gè)256位的、單向的、行業(yè)標準的AXI通道,可以在每個(gè)方向上以512Gbps(256bit x 2GHz)的傳輸速率運行。
NoC為FPGA設計提供了幾項重要優(yōu)勢,包括:
l提高設計的性能。
l減少邏輯資源閑置,在高資源占用設計中降低布局布線(xiàn)擁塞的風(fēng)險。
l減小功耗。
l簡(jiǎn)化邏輯設計,由NoC去替代傳統的邏輯去做高速接口和總線(xiàn)管理。
l實(shí)現真正的模塊化設計。
本文用一個(gè)具體的FPGA設計例子來(lái)展現NoC在FPGA內部邏輯互連中發(fā)揮的重要作用。本設計主要是實(shí)現三重數據加密解密算法(3DES)。該算法是DES加密算法的一種模式,它是對于每個(gè)數據塊應用三次DES加密算法,通過(guò)增加DES的密鑰長(cháng)度增加安全性。
在該FPGA設計中,我們將輸入輸出管腳放在的FPGA上下左右四個(gè)方向上。上面管腳進(jìn)來(lái)的數據經(jīng)過(guò)邏輯1進(jìn)行解密然后通過(guò)藍色的走線(xiàn)送到邏輯2加密以后從下面的管腳送出。左邊管腳進(jìn)來(lái)的數據經(jīng)過(guò)邏輯3進(jìn)行解密然后通過(guò)紅色的走線(xiàn)送到邏輯4加密以后從右邊的管腳送出。如圖2 所示。
圖2 3DES設計(沒(méi)有用NoC)后端布局布線(xiàn)圖
本設計遇到的問(wèn)題如下:
l加密和解密模塊中間的連線(xiàn)延時(shí)太長(cháng),如果不增加流水寄存器(pipeline),設計性能會(huì )收到很大限制。但是由于連接總線(xiàn)位寬是256位,增加幾級流水寄存器又會(huì )占用很多額外的寄存器資源。
l上下模塊之間的連接總線(xiàn)和左右模塊之間的連接總線(xiàn)出現了交叉,如果設計再復雜一點(diǎn)有可能會(huì )遇到布局布線(xiàn)局部擁塞,會(huì )大大增加工具布局布線(xiàn)時(shí)間。
上面兩個(gè)問(wèn)題也是廣大FPGA設計者在復雜FPGA設計中或多或少會(huì )遇到的問(wèn)題,導致的原因有可能是設計比較復雜,也有可能是硬件平臺的限制,或者設計必須連接不同位置的外圍Hard IP導致。
NoC的出現讓我們上面遇到的問(wèn)題迎刃而解。NoC為FPGA邏輯內部互連提供了雙向288bit的原始數據模式(Raw data mode)。 用戶(hù)可以通過(guò)這288bit的信號進(jìn)行邏輯直連或者自定義協(xié)議互連。
圖3 利用2D NoC進(jìn)行內部邏輯互連
在NoC的每個(gè)交叉點(diǎn)上都有兩個(gè)網(wǎng)絡(luò )接入點(diǎn)(NAP),用戶(hù)只要簡(jiǎn)單地通過(guò)例化NAP的原語(yǔ)或者宏定義就可以將自己的邏輯接入到NoC并進(jìn)行互連。
評論