489315174的个人空间 https://blog.eetop.cn/carlliu [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

一条drc 的debug 过程

已有 1950 次阅读| 2021-12-23 09:28 |个人分类:日记|系统分类:芯片设计| drc

背景: 准备最后验证数据发现有两条drc error,分别报的是pplus nplusdiffspace问题.看起来是不能waived.

dry run gds 时候并没有发现这条错误. 这次为什么出现了? 下面是花费大约一个早上一步一步排除过程记录下.

Ø 打开gds查看报错位置,报错在stand cell . 这套stdcell lib ARM,查找lib releasenote.并没有说明这两条错可以waived.

Ø 查看run drc 环境变量setenv IP_WAIVER YES, 环境设置没有问题.(做过的指定GF工艺的rule option 喜欢环境变量控制),进一步到rule deck 中查看waiver switch 设置DEFINE ARM_WAIVER_LIB 也是正常的.

Ø 对比上一版的环境设置,也没有发现异常.

Ø 对比当前版本与上一个版本的gds 是否有特色层次丢失.(这条对比是怀疑有drc 中可以有waived 层次).对比结构是std 中都是一些常规层次并没有参与waived的层.

Ø 通过上一条检查结构,推断估计是根据cell的名字判断,那就从报错的具体rule 中去看怎么运算来的.

看到waiver_ARM_NP.xx 窃喜,继续查看这层又是怎么来的,waiver_ARM_NP.xx =EXPAND CELL XXXX YYYY ZZZZ

基本已经很清楚了,drc 中对ARMstd cell 中的错误是通过cell name 来判断的.那我这个为啥还会报错呢?

Ø 总结下dry run 时候没有报错.这次报错了.查看merge进来的数字pr 部分看看. 部分std cell 名字被重新命名了.

总结下:这个数字模块merge stdcell 是使用skipper 做的,有个Rename Suffix Prefix 默认是勾上的.

对于stdcell 重命名导致DRC 这条rule 不在产生waiver_ARM_NP.xx .导致DRC 报出错误.

其实不难debug,只是一直没想到会是这里的原因.



点赞

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 8

    月排名
  • 0

    总排名
  • 4

    关注
  • 111

    粉丝
  • 57

    好友
  • 116

    获赞
  • 49

    评论
  • 1102

    访问数
关闭

站长推荐 上一条 /1 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-4-26 05:19 , Processed in 0.023613 second(s), 15 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部