注释:
report_qor_suggestions
Tcl 命令可自动应用这种最优化技巧。具有严格的时序约束的高扇出信号线要求对布局进行严格分群以满足时序。这可能导致局部拥塞,如下图所示。高扇出信号线还会因占用布线资源,导致拥塞窗口中其他信号线无法使用这些资源,从而促成拥塞。
要分析高扇出非全局信号线对拥塞窗口中可布线性的影响,请执行以下操作:
- 选中拥塞窗口中顶层层级模块中的叶节点单元。
- 使用 find 命令( )来选中已选单元对象的所有信号线,滤除“Global Clocks”(全局时钟)、“Power”(电源)和“Ground”(接地)信号线。
- 按“Flat Pin Count”(扁平管脚计数)降序对信号线进行排序。
- 选择扇出最高的几个信号线,显示其与拥塞窗口的关系。
这样可帮助您快速识别可能导致拥塞的高扇出信号线。
图 1. 拥塞窗口中的高扇出信号线
对于拥塞窗口内具有严格时序约束的高扇出信号线,复制驱动将有助于放宽布局约束并缓解拥塞。
具有足够正时序裕量的高扇出信号线(扇出 > 5000)可在全局时钟资源(而不是互连结构资源)上进行布线。布局器会自动在全局布线资源上对扇出 > 1000 的高扇出信号线进行布线,前提是这些资源可用至布局器步骤结束。执行此最优化的前提是它不会造成时序劣化。
您还可在信号线上设置 CLOCK_BUFFER_TYPE=BUFG 属性,并交由综合或逻辑最优化在执行布局器步骤前自动插入缓冲器。完成 place_design
后复查新插入的缓冲器布局及其驱动和负载布局,以验证是否达成最优化。如果并未达成最优化,请在时钟缓冲器上使用 CLOCK_REGION 约束(仅限 UltraScale 器件)或 LOC 约束(仅限 7 系列器件)来控制其布局。