微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC版图设计交流 > 如何自动添加dummy

如何自动添加dummy

时间:10-02 整理:3721RD 点击:
求助:现在想在layout中自动添加dummy metal,有哪些办法?请大虾现身指教

全自動 軟體自己加 (聽說新版的軟體有這功能)
半自動 :下載rule file 來執行

如果我想用skill语言编写脚本进行添加,能不能提示下怎么编写?

我也不會寫
我通常用一個rule file (廠商提供) 產生 dummy gds
再加回原來的 layout
作法是 先佈滿 metal1 (size 自訂或參考design rule )
再 not 要避開的地方
(如原來有metal1的地方或是有 res symbol, cap symbol, M1_dummy_excl 的地方)
產生出來後 在加回原layout

灰常感谢你的解答,主要是我现在刚开始学习这个,所以想看下例子,不知道你是不是方便提供一个?

找一下 論壇裡
之前有回答過 類似問題

用之前论坛里的方法似乎只能在pad附近加上dummy,而且加上之后仍然不符合密度要求。
在drc规则文件中我增加了下面几句:

M1BANK= BULK NOT M1


MIFILL= SIZE M1BANK BY -1



dummyM1{


RECTANGLES 1 2 1


INSIDE OF LAYER MIFILL


}


DRCCHECK MAPdummyM1 GDSII 61 1 './DUMMY_FILL.gds'


用修改后的drc规则文件再跑一遍DRC,得到gds文件,再导入。

得到的版图只是在pad附近加上了一些dummy,在电路部分没有dummy。


我需要修改哪些地方才能在全芯片内加dummy,然后要避开guard-ring里的电路又改加上什么语句呢?


求高手指点则个。


通常是先定義出空白的地方 (全部減去 cap res ......)
再舖滿dummy metal
減去不在坑白地方的,和有交叉邊上的
剩下的就是了,參考參考
M1_DUMMY = RECTANGLES 5 2 2 2 offset 2 0
M2_DUMMY = RECTANGLES 2 5 2 2 offset 0 2
GEN_M1_DUIMMY{
(INSIDE M1_DUMMY FREE_AREA) NOT INTERACT (SIZE M1 BY 2)
}
GEN_M2_DUIMMY{
(INSIDE M2_DUMMY FREE_AREA) NOT INTERACT (SIZE M2 BY 2)
}

學習
謝謝解說

learning !

回覆 8# motofatfat

這樣是可以,但是加完後再減去不在空白地方,這樣會造成整個layout 的hierachy變很差,樓上danglang的方法會好些

這是這個方法的缺點
會產生 flat 的 dummy cell
再 inst 回原來的cell
hier 會變差 沒錯

学习了!

请问您的问题解决了吗我也是用这个脚本只能在最左侧产生一行dummy其他地方都没有这个是不是命令写的不太对劲啊 ?

我写个,大家自己参考修改。
除了基本的层次定义,以增加dumm metal4为例,除去现有的metal4以及dummy block的地方
#IFDEF DENSITY_CHK YES
M4_FILL = DENSITY M4g >0 < 0.3 PRINT RDB M4_DEN.log
M4_FILL {COPY M4_FILL}
#ELSE
M4_FILL =DENSITY M4g >0 < 1 PRINT RDB M4_DEN.log
M4_FILL {COPY M4_FILL}
#ENDIF
//@Dummy Generation for M4
BULK=SIZE (EXTENT) BY 1
M4BANK=(((BULK AND M4_FILL) NOT M4g)NOT DUM_M4) NOT OPC//DUM_M4 和 OPC都是不要添加的区域,可自行修改layer
M4FILL=SIZE M4BANK BY -1.5
dummyM4{
RECTANGLES 2 10 2 INSIDE OF LAYER M4FILL
}
DRC CHECK MAP dummyM4 GDSII 34 0 DUMMY_FILL.gds MAXIMUMRESULTALL//以flat 形式输出,stream Number 改成自己的。
//DRC CHECK MAP dummyM4 GDSII 34 0 DUMMY_FILL.gds MAXIMUM RESULTS ALL AREF M4dum 2 10 1//这条是以dumm cell 形式输出

你好 ,你这个程序是单独的skill自动添加dummy吗?还是需要在calibre的DRC文件里面添加这段程序呢? 本人初学者不太懂,麻烦详解了、

学习中

这是因为DRC check的数量限制到1000了,你选择All就行了。

只产生部分dummy,是因为DRC check默认输出个数是1000,你把max errors per check 改成All就可以了。

非常感谢,受教了

学习中。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top