微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC后端设计交流 > astro 导出 GDS 时map的问题

astro 导出 GDS 时map的问题

时间:10-02 整理:3721RD 点击:
关于map的格式我见过两种:
第一种
LayerNameLayerPurpose LayerNumStreamDatatype

MET1drawing200
第二种
A 150:1150:1
A 150:2150:2
对于第一种map,请问StreamDatatype代表什么,我个人理解似乎很像层次结构,但不是很理解。
对于第二种map不明白是什么意思,A,和1,2分别代表什么?
然后出现过一个问题,我用错的map导出的GDS(map里所有的层数都不对应),再将GDS导进virtuoso时,除了一个prboundry 层丢失外,其他的层全都有,LVS也都过了,我理解如果map里没有定义,那么这一层就会丢失,却无法解释这种现象。求各位大神解惑,小弟这里谢谢先!

这种情况不可能吧,LVS应该不过的

astro/icc map 见astro的doc里面有讲,有具体的格式,
导入导出格式不一样,
gds 肯定是有datatype的,比如M1是31:0 , DM1 是31:1
如果从简单角度来说,就streamout 出metal routing only, 然后
icfb merge gds 肯定没问题,
如果是full gds, 要Milkyway先read_gds (auStreamIn)全部内容,
然后map要写的很全,比如所有的layer,否则是不能保证所有layer都出来的,

我的情况是这样的,做的是TSMC35工艺下的一个数字模块,然后我在ASTRO下错用SMIC的MAP文件导出的GDS,显然里面的层号就没有一样的,但是用calibredrv比对正确的map抽出的GDS和SMIC的map抽出的GDS,发现SMIC的所有层都有,只是多了两层text层(40,41),做LVS也同样做过了。不清楚这是为什么,难道说不用map也能抽出所有层吗?还是有什么选项可以不用map抽GDS?

我又测试了一下,不用map导出GDS,一样可以导出来......

你到底是smic还是tsmc tapeout, 看糊涂了

不好意思,没说清楚。
我是tsmc35的tapeout,然后streamout GDS的时候错用了smic的streamout.map。
今天我不用任何map,直接抽GDS,竟然同样能抽出来。也能做过LVS。
不知道这么说可以不,求解惑!



TSMC工艺,未使用MAP抽的GDS,通过calibredrv查看,每一层信息都用。

对于纯logic这种, 是有可能pass的,
因为std cell本来没多少layer, 然后auStreamOut 合并std cell gds, 出来就对了,
一般来说还是建议用fab给的gdsout map, 如果没用,但是lvs pass了, layer信息也对,也行的,


恩,目前只能这么理解,请问,为什么金属层还会有各种datatype啊,这个datatype是什么?我看doc没看明白。

大侠问你一下,这个不用map倒出来,lvs能过?你的drc能过吗?还有就是是不是不用map他倒出来的gds放入cadence里面,它每个cell的位置会不会移动?我在icc里面每个cell之间都是有距离的,但是到了cadence就相互内嵌了,这个是什么情况啊?

DRC一样可以过,事实上map的作用主要是为了方便你在不同工艺库之间的转换,你可以在抽取过程中,指定某层为其他层。如果没有特殊的需求,不加map也可以,会产生的主要问题是,所有子层都会被映射到同一个主层,比如: 61:061 :1 都会抽成 61 。但是一般来说子层是没有实际意义的,所以不会影响DRC和LVS.

至于你出现的情况非常奇怪,不过我可以肯定的告诉你,这个和map肯定没有关系。而且在导入cadence的时候,GDS是不会有变化的,更不可能使cell移动,很有可能你GDS抽取时候出现了问题,建议用calibredrv直接查看GDS验证问题。

哦感谢大侠我用icc,抽取命令为set_write_stream_options \
-child_depth 99 \
-output_filling fill \
-output_outdated_fill \
-output_pin geometry \
-keep_data_type
write_stream -lib_name $MW_DESIGN_LIBRARY -format gds

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

网站地图

Top