您的位置 首页 发布

运用2D NoC简化FPGA可编程逻辑功用的使用规划

使用2D NoC简化FPGA可编程逻辑功能的应用设计-对于AXI interconnect模块,我们采用Github上开源的AXI4总线连接器来实现,这个AXI4总线连接器将4个AXI4总线主设备连接到8个AXI4总线从设备,源代码可以在参考文献2的链接中下载。我们在这个代码的基础上进行扩展,增加到8个AXI4总线主设备连接到8个AXI4总线从设备,同时加上了跨时钟域逻辑。

日益增长的数据加快需求对硬件渠道提出了越来越高的要求,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通道,这样就需求一个8×8的AXI interconnect模块,一起需求有跨时钟域的逻辑去将每个GDDR6用户接口时钟转化到逻辑主时钟。除了图1中的8个读写模块外,赤色区域的逻辑都需求用FPGA的可编程逻辑去完结。

image.png

图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所示:

image.png

首要,咱们从资源和功用上做一个比照,如图3所示:

image.png

从资源占用上看,用AXI总线连接器的规划会比用2D NoC的规划占用多出许多的资源,以完结AXI interconnect还有跨时钟域的逻辑。这儿还要阐明一点,这个开源的AXI interconnect完结的是一种最简略的总线连接器,并不支撑2D NoC所能供给的一切功用,比方地址表映射,优先级装备。

最重要的一点是AXI interconnect只支撑堵塞拜访(blocking),不支撑非堵塞拜访(non-blocking)。堵塞拜访是指建议读或许写恳求今后,要比及本次读或许写操作完结今后,才干建议下一次的读或许写恳求。而非堵塞拜访是指能够接连建议读或许写恳求,而不必等候前次的读或许写操作完结。在进步GDDR6的拜访功率上面,堵塞拜访会让读写功率大大下降。

假如用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总线连接器的规划后端布局布线图。

image.png

从图中能够看到,由于GDDR6控制器散布在器材的两边(图中五颜六色高亮的部分),所以AXI总线连接器的布局根本散布在器材的中心,既不能接近左面,也不能接近右边,所以这样就导致了功用上不去。假如添加pipeline的寄存器能够进步体系的功用,可是这样会占用很多的寄存器资源,一起会给GDDR的拜访带来很大的延时。

假如再看一下图5中运用了2D NoC的布局布线图,就会有很显着的比照。首要,由于用2D NoC完结了AXI总线连接器和跨时钟域的模块,这就节约了很多的资源;别的,由于2D NoC遍及在整个器材上,一共有80个接入点,所以8个读写模块能够由东西放置在器材的任何地方,而不影响规划的功用。

image.png

从本规划的整个流程来看,运用2D NoC会极大的简化规划,进步功用,一起节约很多的资源;FPGA规划工程师能够花更多的精力在中心模块或许算法模块规划上面,把总线传输、外部接口拜访裁定和接口异步时钟域的转化等作业悉数交给2D NoC吧。

责任编辑:gt

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/changshang/fabu/85654.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部