System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种FPGA的硬件布局优化方法、装置、电子设备及存储介质制造方法及图纸_技高网

一种FPGA的硬件布局优化方法、装置、电子设备及存储介质制造方法及图纸

技术编号:41613284 阅读:2 留言:0更新日期:2024-06-13 02:17
本发明专利技术实施例公开了一种FPGA的硬件布局优化方法、装置、电子设备及存储介质,其中方法包括:获取待优化FPGA的RTL代码;根据所述待优化FPGA的RTL代码构建所述待优化FPGA的抽象硬件模块图;根据所述抽象硬件模块图和跨区关联资源参数对所述待优化FPGA的当前硬件布局结构进行跨区优化,得到跨区优化硬件布局结构;根据所述抽象硬件模块图和区内关联资源参数对所述跨区优化硬件布局结构进行区内优化,得到所述待优化FPGA的目标优化硬件布局结构。本发明专利技术实施例的技术方案能够对FPGA实现整体硬件布局优化,从而降低FPGA的时延,提高FPGA的频率表现。

【技术实现步骤摘要】

本专利技术实施例涉及fpga(field programmable gate array,现场可编程门阵列)硬件设计,尤其涉及一种fpga的硬件布局优化方法、装置、电子设备及存储介质。


技术介绍

1、目前,深度学习被广泛应用于各类人工智能领域,其中各种各样的模型算法层出不穷,并取得相当卓越的效果,但同时带来了巨量的计算量和访存量。以googlenet(谷歌推出的深度神经网络模型)为例,该模型推理过程所需要的参数量和计算量分别是6.99m和1580m。因此,为了加速相关应用的部署和推理,相关的高性能计算芯片行业也在深度学习等大型计算应用的推动下取得了巨大发展。为了获得高性能,芯片所使用的面积也达到了几百mm^2。多片封装为实际生产中实现日益激进的功率、性能和面积的均衡提供了一种良好的思路。最新的多晶片(multi-die)fpga正是使用硅中介层集成多个可重构区,以在单个器件上封装更多逻辑。这样的多晶片fpga系统由通过预先部署外部连接的多个fpga可重构逻辑区共同组成。与可重构区内部互连网络的结构相比,这些外部连接,也被称为超长线(super long line,sll)的数量是有限的。

2、对于将整体硬件设计映射到fpga板卡上,目前来说都有比较相似的流程。图1是现有技术中基于vivado(一种集成设计环境)设计工具设计fpga的整体流程示意图。如图1所示,展示了xilinx公司的设计工具vivado从编译rtl(寄存器转换级电路,registertransfer level)设计到生成最后烧录到fpga板卡的比特流的全部过程,可以看到整个rtl代码在完成实现前的仿真阶段和实现部署阶段后便可生成板上结构。而在生成比特流之前,设计结果都会通过时序逼近和设计分析过程进行再优化和判断。对于不满足时序要求的设计流程会直接结束。而在实现部署阶段影响时序逼近和设计分析的便是fpga硬件逻辑布局和逻辑路由过程。逻辑布局里主要进行的便是fpga硬件设计的布局部分。

3、目前,对于多晶片fpga架构布局设计部分的优化,目前工作主要是倾向面向硬件设计在不同晶片的划分。但是由于rtl特性,这些分区方法必须遵守循环精确规范。在这个基础上,相关技术人员提出了基于面堆叠平面图的总线长和纵横比的优化。其他相关技术人员尝试修改布局的成本函数,以减少模具交叉,但这导致了设计被限制在更少的晶片中,进一步增高了局部堵塞程度。还有一种优化方式为设计最小化总导线长度,同时减少管芯交叉延迟总和来进行综合优化。另外一种优化方式autobridge(现有的一种对fpga的硬件布局优化方法)则进一步在上述方案基础上设计了跨晶片连接总带宽建模,并且在由可重构区域边界和i/o(input/output,即输入/输出)组划分的所有插槽中更倾向于更平衡的布局。

4、专利技术人在实现本专利技术的过程中,发现在现代多晶片fpga的生产制造中,不同位置的资源情况有着较大差异,而且有些关键资源只有特定位置才拥有,比如对外接口和ddr(double data rate sdram,双倍速率的sdram)连线。因此,这方面的差异很大影响了硬件布局策略的设置。如图2所示的不同种类硬件功能单元资源开销占比,样例硬件设计中拥有多个不同类型的组件,包括读写单元、流水线、缓存区、控制单元和计算单元。在将这些单元的资源使用量进行了标准化处理后,可以看出来不同类型的组件使用不同种类的资源是有倾向性的,同时这些组件不仅个数不一而且也拥有着较为复杂的连接关系。这样的资源倾向性和数量不一性若是在布局阶段不进行综合考虑,便会产生很多设计瓶颈区域。然而,目前相关的fpga硬件布局优化方法中均未考虑上述因素的影响,导致优化效果并不理想。


技术实现思路

1、本专利技术实施例提供一种fpga的硬件布局优化方法、装置、电子设备及存储介质,能够对fpga实现整体硬件布局优化,从而降低fpga的时延,提高fpga的频率表现。

2、根据本专利技术的一方面,提供了一种fpga的硬件布局优化方法,包括:

3、获取待优化fpga的寄存器转换级电路rtl代码;

4、根据所述待优化fpga的rtl代码构建所述待优化fpga的抽象硬件模块图;

5、根据所述抽象硬件模块图和跨区关联资源参数对所述待优化fpga的当前硬件布局结构进行跨区优化,得到跨区优化硬件布局结构;

6、根据所述抽象硬件模块图和区内关联资源参数对所述跨区优化硬件布局结构进行区内优化,得到所述待优化fpga的目标优化硬件布局结构。

7、根据本专利技术的另一方面,提供了一种fpga的硬件布局优化装置,包括:

8、rtl代码获取模块,用于获取待优化fpga的rtl代码;

9、抽象硬件模块图构建模块,用于根据所述待优化fpga的rtl代码构建所述待优化fpga的抽象硬件模块图;

10、跨区优化模块,用于根据所述抽象硬件模块图和跨区关联资源参数对所述待优化fpga的当前硬件布局结构进行跨区优化,得到跨区优化硬件布局结构;

11、区内优化模块,用于根据所述抽象硬件模块图和区内关联资源参数对所述跨区优化硬件布局结构进行区内优化,得到所述待优化fpga的目标优化硬件布局结构。

12、根据本专利技术的另一方面,提供了一种电子设备,所述电子设备包括:

13、至少一个处理器;以及

14、与所述至少一个处理器通信连接的存储器;其中,

15、所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本专利技术任一实施例所述的fpga的硬件布局优化方法。

16、根据本专利技术的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本专利技术任一实施例所述的fpga的硬件布局优化方法。

17、本专利技术实施例通过根据获取的待优化fpga的rtl代码构建待优化fpga的抽象硬件模块图,以根据抽象硬件模块图和跨区关联资源参数对待优化fpga的当前硬件布局结构进行跨区优化,得到跨区优化硬件布局结构,并根据抽象硬件模块图和区内关联资源参数对跨区优化硬件布局结构进行区内优化,得到待优化fpga的目标优化硬件布局结构,解决现有fpga硬件布局优化方法存在的优化效果较差的问题,能够对fpga实现整体硬件布局优化,从而降低fpga的时延,提高fpga的频率表现。

18、应当理解,本部分所描述的内容并非旨在标识本专利技术的实施例的关键或重要特征,也不用于限制本专利技术的范围。本专利技术的其它特征将通过以下的说明书而变得容易理解。

本文档来自技高网...

【技术保护点】

1.一种现场可编程门阵列FPGA的硬件布局优化方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述根据所述待优化FPGA的RTL代码构建所述待优化FPGA的抽象硬件模块图,包括:

3.根据权利要求1所述的方法,其特征在于,所述根据所述抽象硬件模块图和跨区关联资源对所述待优化FPGA的当前硬件布局结构进行跨区优化,得到跨区优化硬件布局结构,包括:

4.根据权利要求3所述的方法,其特征在于,所述根据所述抽象硬件模块图对所述当前硬件布局结构的SLR之间的跨晶片连接关系进行优化,包括:

5.根据权利要求4所述的方法,其特征在于,所述根据所述源节点向量和所述目标节点向量计算跨区距离,包括:

6.根据权利要求4所述的方法,其特征在于,所述SLR的跨区关联资源参数包括SLR资源开销、跨区资源可用量、跨区最大资源使用限制和不同SLR之间的差异向量;

7.根据权利要求6所述的方法,其特征在于,所述根据所述SLR资源开销、所述跨区资源可用量和所述跨区最大资源使用限制,计算各SLR的资源使用率,包括:

<p>8.根据权利要求6或7所述的方法,其特征在于,所述方法还包括:

9.根据权利要求1所述的方法,其特征在于,所述根据所述抽象硬件模块图和区内关联资源参数对所述跨区优化硬件布局结构进行区内优化,得到所述待优化FPGA的目标优化硬件布局结构,包括:

10.根据权利要求9所述的方法,其特征在于,所述SLR的区内关联资源参数包括SLR资源开销、区内资源可用量、区内最大资源使用限制和当前SLR的不同区域的差异向量;

11.一种FPGA的硬件布局优化装置,其特征在于,包括:

12.一种电子设备,其特征在于,所述电子设备包括:

13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-10中任一所述的FPGA的硬件布局优化方法。

...

【技术特征摘要】

1.一种现场可编程门阵列fpga的硬件布局优化方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述根据所述待优化fpga的rtl代码构建所述待优化fpga的抽象硬件模块图,包括:

3.根据权利要求1所述的方法,其特征在于,所述根据所述抽象硬件模块图和跨区关联资源对所述待优化fpga的当前硬件布局结构进行跨区优化,得到跨区优化硬件布局结构,包括:

4.根据权利要求3所述的方法,其特征在于,所述根据所述抽象硬件模块图对所述当前硬件布局结构的slr之间的跨晶片连接关系进行优化,包括:

5.根据权利要求4所述的方法,其特征在于,所述根据所述源节点向量和所述目标节点向量计算跨区距离,包括:

6.根据权利要求4所述的方法,其特征在于,所述slr的跨区关联资源参数包括slr资源开销、跨区资源可用量、跨区最大资源使用限制和不同slr之间的差异向量;

7.根据权利要求6所述的方法,其特征在于...

【专利技术属性】
技术研发人员:王腾
申请(专利权)人:中国科学技术大学苏州高等研究院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1