微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC版图设计交流 > 用calibre抽取power line的command file

用calibre抽取power line的command file

时间:10-02 整理:3721RD 点击:
谁能分享下用calibre抽取power line的command file,谢谢!

我也想知道,最好是能做到检查power的大小

calibre can do it?

我也想知道。

这个问题最后你那边解决了吗?

估计得自己写吧,好像没有现成的东东

我也想知道

我能解决,但是请先告诉我power line的具体定义,免得我误会了。

什么具体定义啊
比如VDD要连接到所有pmos
VSS要连接到所有nmos这样吗?

这不是检查ERC的范畴吗?
我只是不明白"抽取power line" 是抽取电源地的寄生还是指把属于电源地的layer抓出来?



是把属于电源的layer抓出来,能否提供一下思路,谢谢

m1_vdd=m1 net "?vdd?"
m2_vdd=m2 net "?vdd?"
m3_vdd=m3 net "?vdd?"
....
power_net{@power net
(m1_vdd or m2_vdd) or (m3_vdd or ...)
}

谢谢snk88
我想把这些layer抓出来,并以gds的格式输出
后面是不是还要加上一句输出,是吗?

那就得分开写了,tvf最好了。
给个例子
懂tcl应该很容易看懂,如果看不懂,那就 看这句
set lay_num [list M1i 7 M2i 9 VIA1i 6 ]

层名和层号对应
举一反三

  1. #! tvf
  2. namespace import tvf::SETLAYER tvf::VERBATIM tvf::RULECHECK tvf::OUTLAYER
  3. VERBATIM {

  4. //////////////////////////////////////////////
  5. // flowing lines defined layers
  6. //
  7. LAYERM1i7// First Metal layer
  8. LAYERVIA1i6// Define connect for M2 to M1
  9. LAYERM2i9// Second Metal layer

  10. LAYER A1_text 1001
  11. LAYER MAP 121 TEXTTYPE 0 1001
  12. TEXT LAYER A1_text
  13. ATTACH A1_text M1i
  14. CONNECT M1i M2i by VIA1i
  15. }

  16. set lay_num [list M1i 7 M2i 9 VIA1i 6 ]

  17. foreach {lay num} $lay_num {
  18. tvf::DRC SELECT CHECK POWER_LAYER_$lay
  19. puts "CHECK POWER_LAYER_$lay"
  20. tvf::RULECHECK POWER_LAYER_$lay {
  21. tvf::@ POWER LAYER $lay
  22. tvf::OUTLAYER "$lay net vdd"
  23. }

  24. puts "drc check map POWER_LAYER_$lay GDSII $lay $num"
  25. tvf::drc check map POWER_LAYER_$lay GDSII $num0 "output.gds" MAXIMUM RESULTS ALL
  26. }

复制代码

试试我给的tvf

非常感谢snk88!
这个tvf文件,也可以用calibre运行吗

用它跑calibre drc

好的

1、得到全部接电源的金属和孔
outM1 { NET M1 "?VDD?"}
outV1 { NET V1 "?VDD?"}依次类推,写完所有的metal和via。
2、将outM1、outV1等rule输出成GDS. 使用的命令是 drc
check
map,具体语法找手册看看就知道,我忘记了。

这样的话就会有多个gds出现啊
我只想一个power就只有一个gds出现就ok的

那就应该这样写了
outM1 { NET M1 "?VDD?"}
outV1 { NET V1 "?VDD?" }
............
............
.............
power_net_vdd {outM1 OR outV1
...........................
}
DRC CHECK MAP power_net_vddpower_net_vdd.gds GDSII

可以设置成只产生一个gds,具体可以参考dummy fill文件,有两种方式

这样写不对。outM1已经是rule名了,不能在放到rule中。要写DRC CHECK MAP语句多次,每次输出一个rule.

你就用我的tvf好了,层次越多,效率越高

恩,我照搬了你的tvf,但是可能我的layer number没有改,gds输出没有东西
我想问下layer map 121 texttype 0 1001这句话是什么意思

我改了layer number号后,output.gds仍然是没有东西,
问题出在哪里呢?
GDSII $num 0
这个“0”是什么意思呢?
谢谢!

当然要层定义的,我的测试用的,跟你的不一定能对上。
0,是datatype,


Specifies datatype or texttype maps from GDSII or OASIS input to Calibre layer numbers.

“0”是哪一层的datatype?

layer map 121 texttype 0 1001
其中这个“121”是谁的layer num?
为什么输出的layer num 是“0” 呢?

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

网站地图

Top