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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 8225|回复: 11

[求助] Mixed signal calibre drc规则检查 最高层金属问题

[复制链接]
发表于 2014-3-23 16:10:04 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 flyingsheep 于 2014-3-23 16:19 编辑

最近做一个ICC设计(纯数字电路),布线(六层金属)完成后用calibre做drc 发现第六层一堆问题 查看了calibre.drc(mixed signal的,FOR TSMC 0.18UM CMOS LOGIC/MS/RF AND 0.16UM CMOS LOGIC/MS 1P6M PROCESS DESIGN RULE) 有以下内容

第一套mental6规则 和icc tf相同:
// M6 checks
//=============
M6.W.1 { @ Min. M6 width < 0.44
  INT M6 < 0.44 ABUT < 90 SINGULAR REGION
}
M6.S.1 { @ Min. M6 space < 0.46
  EXT M6 < 0.46 ABUT < 90 SINGULAR REGION
}
M6.S.2 { @ Min. space to wide M6 (>10um) < 0.6
  M6_S5 = SHRINK (SHRINK (SHRINK (SHRINK M6 RIGHT BY 5) LEFT BY 5) TOP BY 5) BOTTOM BY 5
  M6_G5 = GROW (GROW (GROW (GROW M6_S5 RIGHT BY 5) LEFT BY 5) TOP BY 5) BOTTOM BY 5
  M6_Wide = M6_G5 AND M6
  M6_Exp = SIZE M6_Wide BY 1 INSIDE OF M6 STEP 0.322
  M6_Branch = M6_Exp NOT M6_Wide
  M6_Branch_edge = M6_Branch COIN INSIDE EDGE M6
  M6_Check = M6 AND (SIZE M6_Exp BY 0.6)
  M6_Branch_Check = M6 AND (EXPAND EDGE M6_Branch_edge OUTSIDE BY 0.6 CORNER FILL)
  M6_WideC = STAMP M6_Wide BY M6xd
  M6_CheckC = STAMP M6_Check BY M6xd
  M6_BranchC = STAMP M6_Branch BY M6xd
  M6_Branch_CheckC = STAMP M6_Branch_Check BY M6xd
  EXT M6_WideC M6_CheckC < 0.6 ABUT >0 <89.5 NOT CONNECTED REGION
  EXT M6_BranchC M6_Branch_CheckC < 0.6 ABUT >0 <89.5 NOT CONNECTED REGION
}
M6.E.1 { @ Min. extension of a M6 region beyond a VIA5 region < 0.09
   ENC VIA5 M6 < 0.09 ABUT<90 SINGULAR
   VIA5 NOT M6   
}
M6.A.1 { @ Min. M6 area region < 0.562
  AREA M6 < 0.562
}



第二套mental6规则  DRC报告的问题所在
#IFDEF MIX_MODE

//===============================================================================
// Mixed-Singal/RF part
//===============================================================================

// M6 checks
//=============

#IFDEF THICK_20K

.W.1 { @ Min. M6 width >= 1.50 um
  INT M6 < 1.50 ABUT < 90 SINGULAR REGION
}
UTM20K.S.1 { @ Min. M6 spacing >= 1.50 um
  EXT M6 < 1.50 ABUT < 90 SINGULAR REGION
}
UTM20K.E.1 { @ Min. extension of a M6 region beyond a VIA5 region >= 0.3 um
  ENC VIA5 M6 < 0.3 ABUT < 90 SINGULAR REGION
  VIA5 NOT M6   
}
UTM20K.E.2 { @ Min. extension of M6 end-of-line region beyond VIA5 region >= 0.45 um
  X = ENC [VIA5] M6 < 0.45 ABUT < 90 OPPOSITE
// a narrow side
  INT X < 0.36 ABUT == 90 INTERSECTING ONLY
// adjacent narrow sides
}
UTM20K.S.2 { @ Min. space of Wide M6 (>16um) and M6 >= 3.0 um (exclude application for inductor)
  M6T_NIND_S8 = SHRINK (SHRINK (SHRINK (SHRINK M6T_NIND RIGHT BY 8) LEFT BY 8) TOP BY 8) BOTTOM BY 8
  M6T_NIND_G8 = GROW (GROW (GROW (GROW M6T_NIND_S8 RIGHT BY 8) LEFT BY 8) TOP BY 8) BOTTOM BY 8
  M6T_NIND_Wide = M6T_NIND_G8 AND M6T_NIND
  M6T_NIND_Exp = SIZE M6T_NIND_Wide BY 1 INSIDE OF M6T_NIND STEP 1.05
  M6T_NIND_Branch = M6T_NIND_Exp NOT M6T_NIND_Wide
  M6T_NIND_Branch_edge = M6T_NIND_Branch COIN INSIDE EDGE M6T_NIND
  M6T_NIND_Check = M6T_NIND AND (SIZE M6T_NIND_Exp BY 3.0)
  M6T_NIND_Branch_Check = M6T_NIND AND (EXPAND EDGE M6T_NIND_Branch_edge OUTSIDE BY 3.0 CORNER FILL)
  M6T_NIND_WideC = STAMP M6T_NIND_Wide BY M6xd
  M6T_NIND_CheckC = STAMP M6T_NIND_Check BY M6xd
  M6T_NIND_BranchC = STAMP M6T_NIND_Branch BY M6xd
  M6T_NIND_Branch_CheckC = STAMP M6T_NIND_Branch_Check BY M6xd
  EXT M6T_NIND_WideC M6T_NIND_CheckC < 3.0 ABUT >0 <89.5 NOT CONNECTED REGION
  EXT M6T_NIND_BranchC M6T_NIND_Branch_CheckC < 3.0 ABUT >0 <89.5 NOT CONNECTED REGION
}
UTM20K.A.1 { @ Min. area of M6 region >= 2.25 um2
  AREA M6 < 2.25
}
UTM20K.R.1 { @ Min. density of M6 area >= 30% (exclude application for inductor)
  CHIP_NIND = CHIP NOT INDDMY
  DENSITY M6T_NIND CHIP_NIND < 0.3 PRINT M6T_DENSITY.log
  [ AREA(M6T_NIND)/AREA(CHIP_NIND) ]
}


对比两个metal6的检查规则可以发现第一套规则跟icc 的规则相同,布线完成后都是这种规则,但是实际检查mental6是按第二套规则来的,导致很多UTM20K违例 基本上第二套规则都没有满足

这个calibre规则是mix signal的 第二套规则也有一个#IFDEF MIX_MODE  
想问一下这样的drc违例纯数字电路要管吗?
能不能在布线的时候按照第二套规则设置icc的布线呢,我只知道时钟布线的时候可以define_routing_rule,不知道route阶段能不能也设置一下,如果可以,像minarea这样的规则又怎么设置呢?
希望大神指点迷津啊!!!
发表于 2016-4-29 11:00:57 | 显示全部楼层
我也出现了同样的问题,请问有没有人知道呢?
发表于 2016-4-29 11:02:42 | 显示全部楼层
UTM20K.E.1{@min.extension of a M6 region beyond a VIA5 region >= 0.3um
  ENC VIA5 M6<0.3 ABUT < 90 SINGULAR REGION
VIA5 NOT M6}
发表于 2016-4-29 11:28:18 | 显示全部楼层
你的drc rule的option设置是啥
第二种应该是厚金属的检查规则,你的icc的没用20Ka的金属绕线
发表于 2016-5-3 14:08:43 | 显示全部楼层
回复 4# damonzhao


    那么请问版主,这个问题到底怎么解决呢??我对比了一下tf文件和DRC规则,两个关于M6和VIA5的规则是一样。那么这是哪里的问题呢?
发表于 2016-5-3 14:20:29 | 显示全部楼层
回复 5# oceanlee


  你的设计是用的普通metal还是20KA的metal?
要是前者,那你DRC里应该有option可以设置控制的。
要是后者,那你ICC的tf文件需要改为20KA的进行。
发表于 2016-5-3 14:52:59 | 显示全部楼层
回复 6# damonzhao


    版主,我用的是EDI在做P&R。这个怎么改呀?
发表于 2016-5-3 14:54:00 | 显示全部楼层
回复 6# damonzhao


    在设计过程中,按照项目需求。需要20KA的金属
发表于 2016-5-3 15:15:01 | 显示全部楼层
回复 7# oceanlee

那就换对应的lef呗
发表于 2016-5-3 15:30:49 | 显示全部楼层
回复 9# damonzhao

我试试。谢谢版主!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-12-26 21:10 , Processed in 0.021599 second(s), 7 queries , Gzip On, Redis On.

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