原创 XILINX ISE的物理综合与优化

2010-5-4 14:04 5044 7 7 分类: FPGA/CPLD

摘自:XILINX的《设计性能:物理综合与优化》


物理综合与优化流程<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />


赛灵思 ISE 软件提供了多个实现物理综合与优化的软件选项。您可以根据您的设计的具体需求单独或合并使用这些选项。


定义时序要求


进行有效物理综合的最重要一步是建立准确全面的时序约束。有了这些约束,实现工具就基于可靠信息做出决策,从而改善总体效果。对那些具有严格要求的时钟和 I/O引脚 进行约束,以减轻剩余设计部分的工作。


定义这些时序约束的最轻松途径是使用 Constraints Editor。这一图形工具允许您输入时钟频率、多周期与虚假路径 (false path) 约束、I/O 时序要求,以及大量其他澄清性要求。约束被写入一个用户约束文件 (UCF) 中,可在任何文本编辑器中进行编辑。


如果未提供用户定义的时序约束,ISE. 8.1i 软件提供了一个新功能,将自动为每个内部时钟生成时序约束。在性能评估模式 (PEM)”中,您可以在不必提供时序目标的情况下获得高性能的物理综


合与优化效果。


运行全局优化


对于包含 IP 核或其他网表的设计,实现的转换 (NGDBuild) 阶段后生成的 NGD 文件表示整个设计第一次被完整编译。全局优化是在 7.1.01i 版本 Map 中增加的一项新功能,将进行完整设计的组装,并尝试通过重新优化组合与寄存器逻辑来提高设计性能。全局优化(命令行键入 map –global_opt)显示可提高设计时钟频率平均 7%


还有两个选项可以让您在此阶段进一步控制优化的完成:时序调整 (retiming) (map -retiming) 将前后移动寄存器以平衡组合逻辑延迟,和等效寄存器删除 (map -equivalent_register_removal) 将通过冗余功能性删除寄存器。


允许时序驱动打包与布局


时序驱动打包与布局是物理综合实现流程的核心。当您采用这个选项 (map -timing),布局布线的布局阶段将在 Map 中完成,允许在初始结果未达最优时对打包决策进行重新审查。时序驱动打包迭代流程替换了无关逻辑打包(unrelated logic packing)。


赛灵思物理综合与优化中包含不同级别的优化。第一级优化是在 ISE 6.1i 软件中引入的,从进行逻辑变换开始,其中包括扇出控制、逻辑复制、拥塞控制,以及改进的延迟估计。这些例程使设计实现了更高效的打包和布局,达到了更快的时钟频率和更高密度的逻辑利用率。


下一级增加了逻辑与寄存器优化;Map 可重新安排单元以改进关键路径延迟。这些变换为满足设计时序要求提供了极大的灵活性。使用了大量不同技术(包括内部引脚交换、基本单元切换,以及逻辑重组)将物理单元转换成逻辑上等效的不同结构,以满足设计要求。


ISE 8.1i 软件引入了另外一级物理综合:组合逻辑优化。 -logic_opt 开关将开启一个流程,对设计中的所有组合逻辑进行检查。给定布局和时序信息,您可以对优化 LUT 结构做出更可靠的决策,以改进总体设计。


物理综合与优化示例


?逻辑复制:如果一个 LUT 或触发器驱动多个负载,而这些负载中有一个或多个负载的放置位置离驱动源的距离太远因而无法满足时序要求时,可以复制该 LUT 或触发器并放置在靠近该组负载的地方,从而减小布线延迟(图 1)。

?
逻辑重组:如果关键路径跨越多个切片中的多个 LUT,可利用较少的切片对该逻辑进行重新组织,采用时序上更高效的 LUT 与多路转换器组合来降低该路径所需的布线资源(图 2)。



?

基本单元切换:如果一个功能使用 LUT 和多路转换器构成,物理综合与优化可对该功能进行重新安排,将最快的路径(一般通过多路转换器选择引脚)分配给最关键的信号(图 3)。
PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
7
关闭 站长推荐上一条 /3 下一条