在数字后端设计(Physical Design Closure)中,PDC(Physical Design Constraints)check 是确保芯片物理实现符合设计约束的关键验证步骤,主要针对布局布线后的物理设计规则和约束一致性进行检查。以下是其核心要点:
1. PDC check的定义与目的
- 作用:验证物理设计(如布局、时钟树、布线)是否满足用户定义的约束文件(如SDC、UPF)以及工艺厂提供的物理规则(如DRC、LVF)。
- 典型场景:在完成布局(Placement)、时钟树综合(CTS)、布线(Routing)等阶段后运行,确保时序、功耗、面积等指标符合签核(Sign-off)要求。
2. PDC check的核心检查内容
类别 | 具体检查项 |
---|---|
时序约束一致性 | 检查SDC约束(如时钟定义、时序例外)是否被正确实现,避免未约束路径(unconstrained paths)。 |
物理规则符合性 | 验证金属层间距、通孔密度等是否符合工艺DRC规则,避免制造缺陷。 |
功耗意图一致性 | 检查UPF(Unified Power Format)定义的电源域、隔离单元等是否被正确实现。 |
跨时钟域(CDC) | 确认异步时钟域交互是否满足同步器(synchronizer)和握手协议要求。 |
电气规则 | 检查信号完整性(SI)、IR Drop、电迁移(EM)等是否超标。 |
3. 常见工具与流程
- 工具:
- Synopsys ICC2/FC(Fusion Compiler)中的
check_physical_design
命令。 - Cadence Innovus中的
verify_design
或checkPhysDesign
。
- Synopsys ICC2/FC(Fusion Compiler)中的
- 流程:通常在
place_opt
、clock_opt
、route_opt
等阶段后插入PDC check,形成迭代闭环。
4. 修复PDC违例的方法
- 时序违例:通过增量优化(
optDesign -incr
)或调整约束(如放宽时钟不确定性)。 - 物理违例:使用ECO布线(
ecoRoute
)或手动调整单元位置。 - 功耗违例:增删电平转换器(level shifter)或优化电源网格(PG mesh)。
5. 重要性说明
PDC check是签核前的最后防线,若忽略可能导致流片后功能失效或性能不达标(如时钟偏移过大、电源短路)。建议结合静态时序分析(STA)和物理验证(DRC/LVS)协同验证。