综合设计的重点是最大化设置时间rc时间计算器,因此很少会遇到设置时间违规的情况。 然而,由于数据相对于时钟而言太快地到达顺序单元的输入,因此在此阶段经常发生保持时间违规。
如果设计不满足设置时间要求,则别无选择,只能重新综合设计,以进一步优化有问题的路径。 这可以包括组合违规路径或过度约束存在违规的整个子模块。 但是,如果设计不满足保持时间要求,请在布局前阶段纠正这些违规行为,或将此步骤推迟到布局后。 许多设计人员倾向于使用后一种方法来处理较小的保持时间违规,因为布局前综合和时序分析使用统计线负载模型,并且在布局前阶段纠正保持时间违规可能会导致布局后设置时间相同小路。 违反。 然而rc时间计算器,如果线载模型真正反映了布线后延迟,则明智的做法是在此步骤纠正保持时间违规。
1 预布局时钟规范
在预布局阶段,网表中缺少时钟树信息。 因此,有必要在预布局阶段预先估计布线后时钟树延迟,以获得正确的 STA。 此外,还应定义估计的时钟转换,以防止 PT 计算驱动门的虚假(通常很大)延迟。 大延迟的根源通常源于与时钟网络相关的高扇出。 高扇出导致不驱动端门的时钟计算较慢的输入转换时间,这反过来又导致 PT 计算端门的异常大的延迟值。 为了防止这种情况,建议在源处指定固定的时钟转换值。
以下命令用于在设计的预布局阶段定义时钟:
2 布局后
布局后步骤包括使用通过提取布局数据获得的反向标注的实际延迟来分析设计时序。 分析是在包含时钟树信息的布线后网表上执行的。
2.1 反转标签的内容
最常见的问题之一是:PT 应该注释什么,以什么格式注释?
建议将布局工具生成的以下信息类型反标注到 PT for STA:
——SDF格式的连接RC延迟。
——格式中的电容连接负载值。
- 有关时钟和其他关键连接的寄生信息,采用 DSPF、RSPF 或 SPEF 文件格式。
下面的PT命令用于反标注上述信息:
:该命令用于读取SDF文件。
:PT 使用该命令读取 Tcl 格式的外部文件,可用于反标注文件格式的连接电容文件。
:PT 使用该命令对 DSPF、RSPF 和 SPEF 格式的寄生参数进行反注释。
2.2 布局后时钟规范
布局后时序分析与布局前类似,使用相同的命令,只不过这次时钟通过整个时钟网络传播。 这是因为时钟网络现在包含时钟树缓冲区,因此时钟延迟和偏斜取决于这些缓冲区。 因此,后路由时钟规范不再需要校正时钟延迟并将其转换为指定值。 以下命令说明了路由后时钟规范:
> - 20 - [列表 0 10] [列表 CLK]
>[时钟]
用于命令时钟网络传播时钟。 由于时钟树信息现在存在于设计中,因此时钟延迟、偏斜和转换时间由 PT 从构成时钟网络的门计算。
2.3 时序分析
设计的时序主要依赖于时钟延迟和偏斜,这意味着时钟是设计中所有其他信号的参考。 与预布局STA类似,唯一的区别是时钟规范(传播时钟)。 此外,在布线后 STA 期间,从版图数据库中提取的信息会反注释到设计中,并分别使用最坏情况操作条件和最佳情况操作条件来分析设计的建立和保持时间违规。
3 时序报告
可以使用命令生成时序报告。 当-选项指定为max时,对设计进行设置时间分析; 当-选项指定为min时,PT被告知显示保持时间分析的最佳情况时序报告。
4 高级分析
4.1 单位交换
只要现有单元和替换单元的引脚排列完全相同,PT 就允许交换设计中的单元。 例如,可以用较低驱动强度的单元替换单元,以纠正保持时间违规(驱动强度降低导致过渡时间增加,从而导致门的增量延迟增加)。 例如,您可以使用以下命令将现有单元替换为另一个单元:
> {U15} [ /]
这提供了一种更快的方法来调试设计并可视化单元的效果而无需终止。
当然,也可以在执行STA之前手动修改网表,这需要终止,然后手动更换单元,最后再次调用,重新分析之前的违规路径段。 如果对网表的修改没有产生期望的结果,则需要重复整个过程,这当然是乏味且耗时的。
需要注意的是,单元交换仅发生在PT存储器中,物理网表保持不变。 如果设计的路径段和其他部分通过了 STA,则应通过手动修改网表将这种修改合并到网表中。
4.2 门控时钟检查
通常,低功耗设计包括仅在需要时由门控逻辑启用的时钟。 对于此类设计,应分析门控时钟单元的建立和保持时间违规。
建立和保持时间要求可以通过 ck 命令指定。 例如:
>ck -设置 0.5 -保持 0.02 tck
可以使用以下命令生成报告:
> - - - -
其中,-可用于报告违规门,-选项可显示完整路径报告。