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

ID 683243
日期 4/13/2020
Public

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

文档目录

2.1.4.2. 使能时间借用优化(Enabling Time Borrowing Optimization)

在High或者Superior Performance编译期间,Compiler在Finalize阶段对 Intel® Stratix® 10 Intel® Arria® 10设计自动计算并存储Optimal时间借用值。默认情况下,后续的时序分析结果会反映Finalize阶段的Optimal借用值。

按照以下步骤对受支持的器件使能时间借用功能:

  1. 点击Assignments > Settings > Compiler Settings > Optimization Mode。选择任何high或者superior Performance设置。
    图 42. Performance Compiler Optimization Mode设置
  2. 点击Processing > Start > Start Fitter (Finalize)。Compiler自动计算并存储 Intel® Stratix® 10 Intel® Arria® 10设计的最佳时间借用值。
  3. 要运行时序分析,请点击Processing > Start > Start Timing Analysis (Signoff)
  4. Tasks窗格上,点击Update Timing Netlist
  5. Tasks窗格上,在Reports下,展开Custom文件夹。
  6. Custom文件夹中,双击Report Timing。报告显示特定时钟域的关键路径上的任何借用。
  7. 在时序分析报告中查看时间借用的使用,如报告时间借用数据所示。

您也可以在 .qsf中指定ENABLE_TIME_BORROWING_OPTIMIZATION global assignment以使能或者禁用时间借用优化(与编译模式无关)。例如:

set_global_assignment -name ENABLE_TIME_BORROWING_OPTIMIZATION ON

通过运行以下update_timing_netlist命令选项之一,您可以在时序分析期间手动指定时间借用模式:

表 6.  时间借用模式
时间借用模式 命令选项 作为...的默认模式

Optimal—时序分析包括Finalize阶段的最佳时间借用值。您可以选择将 recompute_borrow选项添加到update_timing_netlist来重新计算借用数量,但不重新计算借用窗口大小。

2
update_timing_netlist Intel® Stratix® 10 Intel® Arria® 10设计的High和Superior性能编译。
Dynamic—时序分析报告器件上相对于SDC约束,而没有进行任何优化的情况下实际发生的时间借用。也就是说,时序分析会根据需要应用尽可能多的借用,以解决所有negative slack。时序分析假设任何时序路径的最大可能的借用,其中时间借用的最大数量不足以消除所有的negative slace。唯一允许对电平敏感的锁存器的借用的模式。 update_timing_netlist -dynamic_borrow
Zero—时间分析使用零时间借用。 update_timing_netlist –no_borrow 不支持的器件,或者除了Performance模式以外的任何Compiler Optimization模式。
注: 动态模式不能通过时钟过约束产生最佳结果,因为时钟过约束会导致几乎每条路径上过多的negative slack。这种情况导致到处使用最大的借用时间,这不太可能是最佳的。
2 当使用Partial Reconfiguration时,如果在时间借用(time borrowing)使能的情况下编译基本设计,那么要在时间借用(time borrowing)使能的情况下编译实现设计。否则,基本设计中的时间借用量将被复位成零,并且设计可能无法通过时序。如果发生这种情况,那么可以使用update_timing_netlist–recompute_borrow命令恢复整个设计中的时间借用量。