Abstract 培训指导
1.准备工作:
为了在abstract中可以对需要进行abstract提取的单元进行编辑和view。需要有版图的display.drf。
必须文件:
带有工艺信息的lef库文件:/export/homeO5/libs/smic18/std_cell/2003q3v2/aci/sc-x/lef/ smic18_6lm.lef
gdsII mapping文件:/export/homeO5/libs/smic18/std_cell/2003q3v2/aci/sc-x/gds2/ layer_table
(以smic 0.18um 工艺为例)
2.启动abstract
$ abstract
3.建立库
File-> library -> new 填入建立的库名,这里为smic18_abs. 库的管理和版图设计一样,见cds.lib。
这时会出现错误的提示,原因是库中没有工艺方面的信息,如金属层的定义,等等。下面通过导入带有工艺信息的lef库来解决这个问题。
4.导入lef库
File-> import -> lef,选中overwrite technology。
出现以下log,
此时,读者可以打开smic18_6lm.lef文件才学习lef文件中关于工艺信息的定义,如METAL1、VIA12、METAL2的定义,以及线宽、间距等定义。
5.导入gds 文件
在导入gdsII文件时需要map文件,以对应gdsII中的层号与lef中的层次的名称。特别
需要注意的是这里的map文件不是版图设计时使用的techfile中对应的gdsII map文件,而是要根据lef库中与工艺及层次定义,来对应gdsII 层号与lef层次的关系。
layer mapping文件的内容:
File-> import ->gds,default Bin 选 block。(如果对标准单元进行abstract,选core)
这里导入的gdsII文件为encounter training中的pmult32。
这里可以通过cells-> edit ->layout来启动版图工具编辑和view导入的版图。注意版图层次名称和gdsII及版图设计时的关系。找到端口标注的label的层次。由于在电源环的METAL5和 METAL6上没有标注电源,因此这里在电源环上采用METAL5(lbl)或METAL6(lbl)标注上VDD和VSS,同时,将pin上的金属层由drawing改到pin的purpose 上,例如out[63]的METAL3(drw)改为METAL3(pn),其他类似,然后保持,关闭。
6.提取端口
根据端口(包括电源)的名称及使用的层次,填写pin提取表。输出为out[0:63],采用正则表达out。
运行完毕将显示正确结果。如果问题可以进入cells-> edit ->pins进行debug。
此时,cells-> terminal properties查看提取的端口是否正确。
以下extract和abstract步骤,对于block和core不同类型的提取,设置会不同。以下首先以block为例,说明extract和abstract 步骤,然后在说明core的extract和abstract步骤。
7.extract
由于是block的提取,signal net和power net不需要提取出来。因此,采用工具的默认设计即可。
8.abstract
signal nets选择create boundary pins,以便在block的边界处创建pin。而电源根据需要创建boundary pins 或ring pins (创建ring pins首先需要在extract时创建power的nets)。
由于是提取block,因此site和Grids项目都不需要填写。
请注意Blockage项目中的layer blockage为cover。
请大家对比一下电源的boundary pins 和ring pins之间的不同。
9.导出lef文件
File-> export ->lef,选择export geometry LEF data,tech lef data不需要导出。
以下为core的extract和abstract步骤。
7.extract
在create pins 项目上将需要创建pin的图层选中,而其他的去掉选择。
8.abstract
在site项目define new site name给出一个新site的名称。
项参数。
File-> export ->lef,选择export geometry LEF data,tech lef data不需要导出。