Intel® Quartus® Prime Pro Edition用户指南: Timing Analyzer

ID 683243
日期 4/13/2020
Public

本文档可提供新的版本。客户应 单击此处 前往查看最新版本。

文档目录

1.1.10.1. 时间借用限制

出现在Fitter (Finalize)阶段的时间借用优化不能发出在以下寄存器上。对于这些寄存器,时间借用优化为零,Fmax Summary报告中的最大操作频率包括零时间借用:
  • 作为跨时钟传输源的任何寄存器
  • 作为set_max_skew或者set_max_delay assignment的源的任何寄存器
  • 包含一个或多个对电平敏感的锁存器的时钟域中的任何寄存器

此外,作为跨时钟传输,set_max_skew或者set_max_delay constraint的目标的寄存器没有针对这些传输进行优化的借用值(但可能仍有来自其他传输的非零借用)。

如果在关键的时序路径上有此类寄存器,那么可以通过使能Dynamic time borrowing模式可能报告更好的性能,报告所有可借用寄存器的时间借用。然后,Dynamic time borrowing模式可以提供更准确(更少悲观)的分析,但只能在.sdc中指定的一组特定时钟频率下进行 。

要查看此类寄存器的时间借用结果:

  1. .sdc文件的时钟频率设置成一个高于Fmax Summary报告的时钟频率。
  2. Timing Analyzer中复位设计并重新读取SDC文件。
  3. 运行update_timing_netlist -dynamic_borrow命令。
  4. Slack Summary中查看结果(Reports > Slack决定时序是否通过)。Fmax Summary报告不反映动态借用的任何收益。
注: 时间借用类似于受益的时钟偏斜技术,将时钟延迟到特定寄存器,在以输出路径为代价的情况下对输入路径提供更多时间。但是,时间借用和受益的时钟偏移具有以下重要差异:
  • 在分配设置时序裕量方面(distributing setup slack),时间借用比时钟偏移具有更大的灵活性。偏斜通常限于固定的增量。您可以使用借用将任意数量的时序裕量(slack)(无论多小)从寄存器的一侧转移到另一侧,只要数量适合可用借用窗口。此外,借用数量是针对每个操作条件分别计算的,因此可以针对每个操作条转移最佳数量的时序裕量。这种类型的转移是无法通过偏斜实现的。
  • 您可以使用受益的时钟偏斜来增加时钟偏斜寄存器的输出路径上的Hold slack。时间借用不具有此优点。