增量包含两部分,增量综合和增量布局布线!
过程如下:
增量综合
在此过程中,该工具会将增量综合信息放入生成的 DCP 文件中,以便在以后的运行中引用。它将检测设计何时发生更改,然后仅对已更改的设计部分重新运行综合。此流程的主要优势在于,对于更改很小的设计,运行时间将显着减少。此外,在 RTL 中插入小的更改时,设计的 QoR 波动会更小。
Settings -> Synthesis -> Incremental Synthesis 进行设置
Incremental Synthesis:可以选择使用已知dcp,最后创建dcp(默认),关闭增量综合
incremental_mode:描述跨分区优化,可以选择Quick,default, aggressive,off
增量布局布线:
发生在增量编译设计流程的实现阶段
通过重复使用参考设计中先前的布局和布线,保持 QoR 的可预测性。
加快布局和布线运行时间或尝试最后一英里时序收敛。
增量设计包括 RTL 更改、网表更改或两者。
允许更改约束,但一般收紧约束将显着影响布局和布线,通常最好在增量流程之外添加
Incremental Implementation 和 Incremental Synthesis 是有区别的,,前者默认状态是没用设置的,,需要在软件上进行设置
Incremental Directives:包含以下三种方式
RuntimeOptimized
指令尝试尽可能多地重用来自参考运行的布局和布线信息。计时目标将与参考运行相同。如果参考运行的 WNS 为 ‑0.050,那么增量运行将不会尝试关闭此设计的时序,而是以 ‑0.050 为目标。这仅影响设置时间。这是未指定指令时的默认行为
TimingClosure
指令将重用参考中的布局和布线,但它会破坏不符合时序的路径并尝试关闭它们。运行一些运行时间密集型算法以获得尽可能多的时序改进,但由于很大程度上放弃了布局,因此前端增益有限。这种技术对参考 WNS > ‑0.250 ns 的设计非常有效。
Quick
是一种特殊的模式,在布局布线过程中不调用定时器,而是以相关逻辑的布局为指导。这是最快的模式,但不适用于大多数设计
设计需要 WNS > 1.000 ns 才能有效。这些通常是 ASIC 仿真或原型设计
增量实现包含三种模式:自动,高复用,低重用!
自动
需满足以下条件
94% cell 匹配
90% net 匹配
WNS>-0.250
高复用
Cell重复率高于75%,,运行
低复用
用户可以针对单元类型、分层单元、时钟区域和SLR 进行重用
目标 WNS 始终为 0
增量指令被忽略,而使用默认布局布线算法中的指令
低重用模式对于在特定区域对布局和布线提出挑战的设计最为有效!
备注:增量式编译,用户一般只进行实现部分,综合部分软件默认即可!这是一个较为复杂的过程,,此文仅为简单介绍!详细参考相关官方文档!另外部分内容不同软件版本有稍许不同!