info
西门子:电池白皮书
行业动态
MORE...
应用案例
MORE...
技术前沿
MORE...
当前位置:首页 技术 正文
在高密度FPGAs中达到更快速的编译时间
:  zaoche168.com   2008年11月29日

最近八年,在FPGA设备中逻辑密度和存储位已有30倍的增长。最大的FPGAs——例如Altera最近发布的Stratix III EP3SL340——包含高达338000个等效逻辑单元(LogicElementsLE)和超过17 Mbits的嵌入式内存。

 

这种在逻辑密度上的快速增长转变为对设计编译、排列和发送的计算处理方面的需求的更大增长。不幸的是,CPU的速度在同样的时期内仅增长了11倍。由于FPGA设计复杂性超过了CPU的速度,FPGA设计者更加依赖设计工具和方法来加速编译时间,以及允许他们迭代地和有效地调试,增加特色和关闭时限。本文描述一个三阶段的方法来提高工程师用高端FPGAs进行设计的生产率。

 

一、三阶段的解决方案减少编译时间

 

通过利用place-and-route算法改进、使用最新计算机技术和制定最好的实践设计方法,编译时间能够充分地减少。

 

(一)place-and-route算法改进

 

FPGAsplace-and-route算法正在被持续地改进和发表更好的结果。在最近几年,算法已经被提高到更有效地使用工作站中可利用的内存和总线速度。因为FPGAs持续攀升,内存消耗成为挑战。成功管理内存使用产生许多好处,包括更便宜的机器、使用32-bit操作系统的能力、更佳的cache locality和运行时间。由于算法调整为更有效地瞄准特定FPGA族,编译时间显著减少(例如,自从最初引入使用了Quartus IIStratix II,编译时间上47%的减少已经实现)。

 

(二)计算机技术

 

CPU速度还没有匹配FPGA设备密度增长时,计算机建构的改变能够提供性能推进。多核CPUs现在正成为计算机工作站的主流。新一代处理器支持在单个芯片上的双处理器,主板在单个板面上支持两个或更多处理器。这提供机会使FPGA设计软件算法的建构利用并行处理以减少编译时间。FPGA设计软件包括大量的算法,全部对系统运行时间有显著性作用。每个算法对使用多核提出一个挑战。增加更多的核在已经被并行的编码部分上大大增加速度。然而单线(single-thread)算法快速成为瓶颈。

 

Quartus II v6.1支持多核以及随着更多软件被并行,编译时间受益增加。使用者可以指定软件用于编译的系统里处理器和核的数目。

 

(三)设计方法

 

compute farm上结合了并行处理的增量编译设计方法在减少编译时间上产生大的影响。

 

在传统的FPGA设计中,分层设计在逻辑合成与配置(Logic Synthesis&Fitting)之前被变成单个netlist。这导致每次有一个设计改变时整个设计被重新编译。增量编译提供沿着它的任意层级边界分开设计的能力。这些设计块,或者分开块,然后能单独地合成、配置,以及在最高层级合并,因此导致优化的分开块上的性能保存和整个编译时间的显著减少。

 

增量编译方法也为任何的最后时刻工程改变提供优化解决方案,因为只有被改变的分开块需要重新编译,随后与最高层级netlist合并。这保护了设计中其他分开块的配置和性能。增量编译特征使用户能够基于逻辑层级分开他们的设计。用户完成他们的设计可以使用top-down或者bottom-up的设计方法。他们有选择权采用top-down方法来连续地设计每个分开块,保存结果和减少编译时间,因为只有被改变的分开块需要被重新编译。然而,top-down设计流程和bottom-up设计方法的组合允许使用compute farms来减少编译时间。使用这种方法,FPGA设计基于逻辑层级被隔离成更小的分开块。然后每个分开块能够被分配到单独的工程师,他继续为所分配的分开块创建RTL设计和完成功能终止。在许多设计组中,单个设计者对整个设计的合成负责。

 

增量编译特征允许用户对设计最顶层的分开块指定它们之间的时间约束以及位置约束。工程选项“generate bottom up design partition scripts”为每个分开块创建单独的scriptsScripts包括每个分开块的时间约束、wrapper file和位置约束。每个script为关联的分开块创建一个Quartus II工程,在分离的工作站上并行地执行,最后引入post-place & routenet list到顶层工程中。这个并行处理方法显著减少整个的编译时间,细节见图2

 

同时这个方法通过利用嵌入的逻辑分析仪,如AlteraSignal Tap II,提供快速的调试解决方案。Signal Tap II能够作为一个单独的分开块被增加到设计中,它保护设计的其余配置,导致在调试周期更快的编译时间。

 

逻辑分析仪或者被监控信号的触发器条件的任何改变被增大地表现出来,大大提高了调试重复的数量,它能够在任何给定的时间周期内完成。使用逻辑分析仪揭露的潜在问题需要设计改变来调整,这些改变将导致重新编译那些由于改变而与整个设计对立的分开块。这样的流程的关键好处不仅仅是缩短整个编译时间,它也加快进入市场的时间,由于用户可以快速做出改变或调试设计,而保存了设计的未改变部分的性能。

 

二、结论

 

结合了计算机资源有效利用的增量编译设计方法使用户能大大减少FPGA编译时间和加速进入市场的时间。这是通过减少多个工程的合成时间来实现的,这些工程瞄准多个工作站中较低层级的分开块。增量编译特征使这些较低层级的分开块能在分开的工作站中独立地被编译,以及合并成最高层级工程,显著地减少了编译时间。结合了支持多处理器和/或多核的计算机与瞄准高密度FPGAs的设计方法,产生行业最快的FPGA编译时间。

 

品牌社区
—— 造车工艺 ——
—— 数字化制造 ——
—— 智能驾驶 ——
—— 新能源技术 ——
—— 机器人技术 ——