在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
12
返回列表 发新帖
楼主: a18346182703

[求助] drc rule的编写

[复制链接]
发表于 2023-7-5 10:19:21 | 显示全部楼层


a18346182703 发表于 2023-7-4 13:45
英文看着费劲的话可以考虑go'0gle浏览器边看便翻译,


谢谢,十分感谢!
 楼主| 发表于 2023-7-5 11:30:25 | 显示全部楼层


zero_0 发表于 2023-7-4 17:17
印象中 CONNECT 的运算不仅仅LVS可以用,DRC也可以用,你可以试一下;不然通过图形运算确实会很复杂
...


我水平有限,还是没搞定。能否帮忙编辑一下具体的rule。
发表于 2023-7-5 18:35:59 | 显示全部楼层


a18346182703 发表于 2023-7-5 11:30
我水平有限,还是没搞定。能否帮忙编辑一下具体的rule。


抱歉,我也是多年前接触过目前没有做相关工作,并且我目前没有工具和版图可以拿来验证,我查了下SVRF manual, 感觉 DFM PROPERTY NET 的 example 跟你的需求很像
 楼主| 发表于 2023-7-13 09:32:30 | 显示全部楼层
本帖最后由 a18346182703 于 2023-7-13 09:50 编辑

目前采用lvs rule的方式实现了目的,主要内容如下:
#define HIGH_VLOTAGE_DS_CHECK   //定义ERC检测

#IFDEF HIGH_VLOTAGE_DS_CHECK
GROUP ERC_HIGH_VLOTAGE_DS_CHECK pmosvdd33    //定义pmosvdd33为我要检查的lvs规则执行名称
ERC SELECT CHECK ERC_HIGH_VLOTAGE_DS_CHECK   //采用group select check分组执行
#ENDIF

VARIABLE HVPOWER_NAME ”VDDPST33"  //用variable给HVPOWER_NAME赋值变量的名称,VDDPST33就是版图里在metal上标记的高压电源text_name

#IFDEF HIGH_VLOTAGE_DS_CHECK
pmosvdd33 { @ pmos_sd connected to 3.3vpower is not allow but the voltage potentail difference of Vds Vgs Vgd <=1.8v can waive //@说明句式,表示如果Vds Vgs Vgd的压差小于1.8v可以忽略
pthin_18 = nxwell AND ((( mdiff AND PP ) AND OD18 ) NOT RH_OD )    //定义pmos的有源区
NET pthin_18 HVPOWER_NAME     //采用NET表示pthin_18上如果接入了标记有“VDDPST33" 的金属走线,那么结果会报错。
}
#ENDIF


 楼主| 发表于 2023-7-13 09:56:31 | 显示全部楼层
在这里还有个疑问,想请教各位:规则写入pthin_18 = nxwell AND ((( mdiff AND PP ) AND OD18 ) NOT RH_OD )有输出结果,但是layer换个顺序比如:pthin_18 = RH_OD AND ((( mdiff AND PP ) AND OD18 ) NOT nxwell )就会报错“cannot establish connectivity of this layer in the MASK connectivity set pthin_18”,这个逻辑是什么为什么会这样我还没搞明白。
发表于 2023-7-13 17:58:53 | 显示全部楼层


a18346182703 发表于 2023-7-13 09:56
在这里还有个疑问,想请教各位:规则写入pthin_18 = nxwell AND ((( mdiff AND PP ) AND OD18 ) NOT RH_OD  ...


因为nxwell已经定义了连接关系但是RH_OD没有,新生成的layer只继承第一个layer的属性。嗯...我猜是这样
 楼主| 发表于 2023-7-14 15:46:20 | 显示全部楼层


zero_0 发表于 2023-7-13 17:58
因为nxwell已经定义了连接关系但是RH_OD没有,新生成的layer只继承第一个layer的属性。嗯...我猜是这样
...


多谢解惑。
 楼主| 发表于 2023-7-24 17:01:11 | 显示全部楼层
采用了另一种新方式,DRC实现。
M1_HV=STAMP (M1_3D3vi AND M1i)BY M1i    //M1_3D3vi 就是我的编辑层,用STAMP BY与M1建立连接性。
....
....
M7_HV    //没有AP_3D3vi ,所以只定义到M7。
然后,
M1_HVN=NET AREA RATIO M1i OVER M7_HV ......M1_HV >0   //将上面定义的标识层连接性,统一传递到M1上。
....
....
M7_HVN=NET AREA RATIO M7i OVER M7_HV ......M1_HV >0   //将上面定义的标识层连接性,一直统一传递到M7上。以上操作表示无论在那一层metal打标识层,其他金属都具有连接性。
接下来是:
M1_HVN_OD=STAMP (M1_HVN AND OD) BY COii    //将连接性传递到OD上,只定义M1_HVN就可以了。
target_pmos_18_mac { PMOS_18_MAC  INTERACT M1_HVN_OD }  //PMOS_18_MAC已经在drc rule文件里定义好的。这样就可以了,在metal标记了3.3v电压标识层,传递到的PMOS_18_MAC会报出来。
发表于 2023-8-2 11:01:44 | 显示全部楼层


凡人修仙传 发表于 2023-7-4 12:33
请教一下,学drc rule 入门可以怎么入门,需要能看懂drc rule,万分感谢了


至少要有完整的drc rule一行一行解读过, 还要有manual


发表于 2023-12-21 10:29:20 | 显示全部楼层
下载学习
您需要登录后才可以回帖 登录 | 注册

本版积分规则

×

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

GMT+8, 2024-11-5 13:38 , Processed in 0.021524 second(s), 6 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表