判断保持修复对设计是否存在负面影响 - 2023.2 简体中文

Vivado Design Suite 用户指南: 设计分析与收敛技巧 (UG906)

Document ID
UG906
Release Date
2023-10-19
Version
2023.2 简体中文

Vivado Design Suite 布线器认为保持时间的修复优先级高于建立时间。这是因为实验室内的设计即使不满足建立时间,只要差距较小则仍可能有效。并且始终可以选择降低时钟频率。但如果存在保持时间违例,则设计几乎不可能正常运行。

大部分情况下,布线器可在不影响建立时间的情况下满足保持时序要求。在某些情况下(主要由于设计或约束中存在的错误),建立时间会受到显著影响。通常导致保持检查错误的原因主要是 set_multicycle_path 约束错误(未指定 -hold)。其他情况下,保持时间要求过高则是由时钟偏差过大而导致的。在此情况下,AMD 建议您复查此特定电路的时钟设置架构。欲知详情,请访问此链接以参阅 适用于 FPGA 和 SoC 的 UltraFast 设计方法指南(UG949) 中的相应内容。

如果设计布局后可满足建立时序要求,但布线后不满足建立时间,则可能出现此问题。为了修复保持时间违例,布线器会添加布线绕行,使用 report_design_analysis 命令搭配 -show_all 选项即可查看由此所导致的路径延迟。下图显示的 report_design_analysis 报告示例中包含“Hold Fix Detour”(保持修复绕行)列,用于指示布线器由于保持时间修复而添加到时序路径中的延迟 (ps)。

图 1. 含“Hold Fix Detour”的“Report Design Analysis”

提示: 分析估算的布局后保持时序,并识别任何不寻常的保持时间严重违例(超过 500 ps)。

如果怀疑保持修复影响时序收敛,可使用以下任一方法来判断: