5.4 大规模规划带来的归纳和布线问题
FPGA 规划的时序功能是由物理器材、用户代码规划以及EDA 软件一起决议的,疏忽了任何一方面的要素,都会对时序功能有很大的影响。本节首要给出大规模规划中,赛灵思物理器材和EDA 软件的最优运用计划。
1)IO 束缚技巧
优异规划必需求考虑IO 束缚的技巧。关于赛灵思器材来讲,进位链是笔直散布的、逻辑摆放块之间也有水平方向上三态缓冲线的直接衔接、且硬核单元根本都是按列散布( 在水平方向就具有最短途径),因而最优的计划为:将用于操控信号的I/O 置于器材的顶部或底部,且笔直安置;数据总线的I/O 置于器材的左部和右部,且水平安置,如图5-16 所示。
图5-16 赛灵思器材的最佳IO布局示意图
这种IO 分配办法充分运用了Xilinx FPGA 芯片架构的特色,如进位链摆放办法以及块RAM、硬核乘法器方位。进位链的结构如图5-17 所示。能处理多位宽加法、乘法从最低位向最高位的进位延时问题;块RAM 和硬核乘法器可节省很多的逻辑资源且确保时序,二者在FPGA 芯片中都是自上而下成条状散布,因而数据流水平、操控流笔直可最大极限地运用芯片底层架构。当然,在实践体系规划中,或许无法彻底做到上述要求,但仍是应该尽或许地将高速率、多位宽的信号安置在芯片左右两边。
图5-17 赛灵思器材的进位链结构示意图
2)ISE 的完成东西
ISE 中集成的完成东西具有不同的尽力程度(Effort Level),当然运用第一流其他,能够进步时序功能,而不用采纳其它办法( 如施加更高档的时序束缚,运用高档东西或许更改代码等),但需求花费很长的核算时刻。为此,赛灵思引荐的最佳流程如图5-18 所示。
图5-18 赛灵思完成东西的最佳运用战略
在第一遍完成时,运用大局时序束缚和缺省的完成参数选项,假如不能满意时序要求,则可测验以下办法:
(1) 测验修正代码,如运用适宜的代码风格,添加流水线等;
(2) 修正归纳参数选项,如OpTImizaTIon Effort,Use Synthesis Constraints File,Keep Hierarchy,Register
DuplicaTIon,Register Balancing 等;
(3) 添加完成东西的尽力程度;
(4) 在归纳和完成时选用指定途径时序束缚的办法。
完成东西分为映射(MAP) 和布局布线(PAR) 两部分,和PAR 相同,也可运用Map-TIming 参数选项针对要害途径进行束缚。如:参数“Timing-Driven Packing and Placement”给要害途径以优先时序束缚的权力;用户束缚经过翻译(Translate) 进程从User Constraints File (UCF ) 中传递到规划中。