数字后端 | Innovus RCFactor 详解:解决与 PT 的时序不一致问题

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

前言

应粉丝要求,本文详细讲解数字后端工具 Innovus 中的 RCFactor 功能,帮助大家解决 PR 工具与签核工具(如 PT)之间的时序不一致问题。


一、RCFactor 是什么?

RCFactor 是一个 RC 缩放因子,用于校准寄生参数提取值。不同工具(Innovus 与 StarRC/QRC)提取 RC 的算法存在差异,导致提取出的寄生参数数值不同,进而造成时序分析结果不一致。RCFactor 的作用就是抹平这种工具间的差异。

RCFactor 可以校准的维度包括:

· 工具之间:Innovus vs PT(签核)
· 阶段之间:Placement vs CTS vs PostRoute

经过合理校准后,Innovus 与 PT 的时序差距会显著缩小,WNS/TNS 与签核标准的一致性将大幅提升。


二、实战步骤:三步校准 RCFactor

Step 1:用 StarRC 抽取标准 SPEF

以 PostRoute 版为基础,使用 StarRC 抽取 SPEF 文件。该文件将作为校准的 参考标准。

Step 2:编写 spef_mapFile.tcl,映射 RC corner

cmax_125  star_rc_max.spef.gz
cmax_m40  star_rc_max_m40.spef.gz

将 StarRC 抽取出的 spef 文件按 corner 一一对应。

Step 3:使用 generateRCFactor 生成校准因子

generateRCFactor -preroute true -postroute medium \
  -reference externalSpef \
  -spefMapFile spef_mapFile.tcl \
  -outputFile updateRC.tcl

· -preroute true:提取 Placement 阶段的 RC factor
· -postroute medium:提取 PostRoute 阶段的 RC factor

运行后,updateRC.tcl 中会生成新的 RC factor,格式示例如下:

update_rc_corner -name rc_cmax_125 -preRoute {1.05 1.08} -postRoute {1.02 1.03}

将这些内容复制到 MMMC 脚本中 create_rc_corner 之后即可生效。


三、进阶技巧:使用 Ostrich 进行精准校准

Innovus 安装目录下提供了一个名为 Ostrich 的工具,专门用于对比两个 SPEF 文件的差异。使用方法如下:

  1. 用 StarRC 抽取一版 spef 文件
  2. 用 Innovus 自己抽取一版 spef 文件
  3. 将两个 spef 文件输入 Ostrich 进行对比

Ostrich 会输出更精确的校准因子,比直接使用 generateRCFactor 更加精准。


四、避坑指南

  1. gba 模式的影响
    Innovus 默认 GBA 模式下的结果可能无法完全覆盖 PT 的结果,需要适当调整 RC factor 才能实现覆盖。
  2. preroute 阶段可以适当过约
    建议将 preroute 阶段的 RC 参数设置得比 postroute 阶段更保守一些,提前预留 margin。
  3. shrink 工艺需要留意
    某些工艺(例如从 0.13um shrink 到 0.11um 的工艺),qrcTechfile 中可能已经包含了 scale factor 0.9。如果文件中未定义,需要手动指定:
    setShrinkFactor 0.9
    
  4. 一次校准可复用
    如果你的设计规模足够大,一次校准得到的 RC factor 可以复用到同工艺下的其他设计中,无需每次重新校准。

五、总结

RCFactor 是打通 PR 工具与签核工具时序一致性的关键钥匙。通过合理校准,可以显著减少工具差异带来的时序分析误差,提高设计收敛效率。建议在项目初期就完成 RC factor 的校准工作,并在整个项目中保持一致。

更多数字后端技术分享,欢迎关注~

#芯片设计 #数字后端 #Innovus #时序收敛 #RC提取 #PT #PR

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值