常规互连结构路径是互连结构寄存器或移位寄存器之间遍历各种资源(例如,LUT)的路径。“report_design_analysis
时序路径特性”表提供了最佳逻辑路径拓扑结构汇总,其中可识别如下问题:
- 多个小型 LUT 已级联
到 LUT 的映射受如下因素影响:层级、存在的 KEEP_HIERARCHY、DONT_TOUCH 或 MARK_DEBUG 属性的影响或者含扇出(10 和更高)的中间信号。请运行
opt_design -remap
选项或者使用 AddRemap 或 ExploreWithRemap 指令来折叠小型 LUT,并减少逻辑级数。如果由于小型 LUT 之间的信号线扇出大于 1 导致opt_design
无法最优化最长的路径,那么可以通过在 LUT 上设置 LUT_REMAP 属性来强制执行最优化。 - 路径中存在单个 CARRY 单元
CARRY 原语级联时对时序约束 QoR 最有利。CARRY 单元比 LUT 更难布局,并且强制综合使用 LUT 而不是单个 CARRY,这在大多数情况下能够实现更好的 LUT 结构和更灵活的布局。尝试 FewerCarryChains 综合指令或 PerfThresholdCarry 策略(仅限“工程模式”),以消除大多数单个 CARRY 单元。或者,使用 CARRY_REMAP 属性指示
opt_design
重新将标记的 CARRY 单元映射到 LUT。注释:report_qor_suggestions
Tcl 命令可自动应用这种最优化技巧。 - 路径止于移位寄存器 (SRL)
通过使用 RTL 中的 SRL_STYLE 属性将第 1 个寄存器拉出移位寄存器。欲知详情,请访问此链接以参阅 Vivado Design Suite 用户指南:综合(UG901) 中的相应内容。或者,您还可以使用在执行
opt_design
之前应用的 SRL_STAGES_TO_REG_INPUT 属性来实现相同的最优化。欲知详情,请访问此链接以参阅 Vivado Design Suite 用户指南:实现(UG904) 中的相应内容。注释:report_qor_suggestions
Tcl 命令可自动应用这种最优化技巧。 - 路径止于互连结构寄存器 (FD) 时钟使能或同步置位/复位
如果止于数据管脚 (D) 的路径具有更多的裕度和更少的逻辑级数,则使用 EXTRACT_ENABLE 或 EXTRACT_RESET 属性,并在 RTL 中的信号上将其设置为“no”。或者,也可通过在要最优化的寄存器上设置 CONTROL_SET_REMAP 属性来指示
opt_design
执行同样的最优化。注释:report_qor_suggestions
Tcl 命令可自动应用这种最优化技巧。