Abstract 提取LEF详细说明
以我实际项目PLL_TOP_RAD_V2为例:需要提取LEF所需要的GDS (PLL_TOP_RAD_V2.gds) , gds相对应的的map file(hlmc55dr.layermap) , 以及tf (HL55LP_HS_RVT_V1p2d.tech.lef)
1.第一步,启动软件,终端窗口输入 abstrct 启动软件,点击菜单File->New,新建一个名为PLL_TOP_RAD_V2的库,点击“OK”完成。
2.导入提取所需要的工艺LEF 和gds文件。LEF导入:点击File->LEF ,在 Import LEF窗口中输入所需要的tech.lef文件名及正确的路径。确认View : abstract , 勾选上Overwrite ,点击“OK”完成导入LEF文件。如果这步有警告或者错误请务必排查出问题所在,不然后面的步骤很难顺利完成。
GDS以及MAP导入:在GDSII Filenames中输入framview gds 文件的路径及文件名。 Layer Map Table 一栏中输入工艺对应的map 文件,点击“OK”完成。
4.选中导入进来的Core中的CELL 点菜单Cells -> Move.. , Move Selected Cells 到Block, 点击OK 完成。把PLL_TOP_RAD_V2 单元从 Core移到了Block。
5.接下来的步骤进入到FLOW的流程,一步一步的完成。
首先是Flow -> Pin ,
Map 一栏,详细情况如下图:
在 Map 栏中,Map text labels to pins 中 (M3 M3) 说明,第一个M3指版图中我用的M3层打的pin,第二个M3就是金属三那一层,意思是我M3的pin 我用的M3 去打的label 。(可明白?)其它工艺有可能是(M3txt M3)的表述,具体取决于你map 和lvs rule里面所有定义层的pin 在做LVS能够识别到的label 所打的层。因为我这个工艺只用到了M3 M2 M1这三层金属打label是识别pin, 所以我没有M4以上的 标注。
Power/Ground pin names (regular expressions) :表述IP中的的电源/地的pin的名称。
Clock pin names (regular expressions): 表述CLOK信号
Analog pin names (regular expressions):表述模拟pin
Output pin names (regular expressions):表述输出pin
如果以上没有说明在产生的lef中(如下图)的USE一项,可能不是POWER /GROUND / CLOCK /ANALOG的标识,统一是USE SIGNAL,DIRECTION 标识将都是INPUT。LEF中将不能区分信号的输入输出,以及功能区分,用于时钟、电源还是模拟信号。
Boundary : 如下图
在 Create boundary 一栏 选择 “always”,该设置强制生成符合布局布线的边界。
在 Using geometry on layers ,该栏中输入作为LEF边界的层,该参数强制abstract 工具产生与framview多边扩展后的等价的布局布线边界。(疑问:只能是矩形?多边型的framview不能产生多边型的lef ?)
LEF中OBS所包含的层取决于此选项中所填写的金属层信息(通孔除外)。例子中RDL层在我gds里面没有,但是tech.tf文件有定义,Using geometry on layers 一栏我没有删除RDL ,最终的产生的LEF文件OBS下面包含了 RDL 的blockage。
Blocks :如图
以上Map、 Boundary、 Blocks 相应栏都设置好了,点击右下角的 “RUN”运行。
完全正确,会在Pins对应下面出现“√”符号表示成功。如果出现黄色的“!”表示有警告,并需要排除警告再继续。警告查看:点击 Cells --> Report 。
6.Fow --> Extract :
Signal 设置如下图:
Power 设置:
如果将Signal 或者 Power 中 Layer Assignment for Power Extraction 中的M1 M2 M3 ...删除或者M1 M2 M3...后面Create Pins 选项去掉下面的选择,那framview中该层金属对应的所有PIN的信息将不全,以案例中的 “LP_PAD” pin 为例如下图:
Anterna :
(天线设置,目前发现没有得到天线的结果,还需要验证)
General :
7. Flow -> Abstract :
SIgnal Nets / Create boundary pins : 就是信号线按照贴着prboundary 提取出PIN,如果你做IP 建议不要选,如果选择了,当你framview gds中预留的PIN的金属宽度大于你PIN的金属深度时(如下图,pin的矩形是2.53u X 0.6u ),所提取出来的LEF中坐标标记只能最大按照你的金属高度( 0.6 u)来计算。LEF结果如图,RECT 380.445 339.4 381.045 340 ; 说明:LEF 文件中的两个坐标做下角(X1=380.445 Y1=339.4)和右上角(X2=381.045 Y2=340 )标记了PIN的位置和PIN的宽度深度。X2 - X1 = 381.045 - 380.445 = 0.6 u ,所以实际得到的LEF文件中标记PIN的宽度不是2.53u,而是错误的得到了0.6u的宽度。
Power Nets 下面的 Create boundary pins 与 Create ring pins 只能二选一。
Create boundary pins 意思是只能提取出靠近 boundary边沿的PIN (如上图),而不是整条power ging都提取出来。但是同样需要注意,如果你framview 中gds的电源PIN端口宽度大于深度,那选择 Create boundary pins 所提取出来的LEF文件中PIN的定义同样会出现 Signla NETS/Create boundary pins 所描述中的宽度不够的错误。
Create ring pins :抽取POWER RING,如果没有指定 Ring pin max distangc to boundary ,那只会抽取一条离boundary 最近的POWER RING。如果要抽取多条POWER ring 这个地方必须指定 Ring Pin Maximum DIstacne To Boundary 的距离,单位是 u 。
Follow ring pin :必须在选取了Create ring pins 先找到POWER RING 并且把和POWER RING有连接关系的一起抽取出来,比如数字中的 Stripe(电源条)等等。
8 Flow -> Verify : 验证 。全部默认,直接点击RUN 运行。
9. LEF文件的导出:在LEF Filename 一栏输入要导出文件的名称。
本文来源:https://www.2haoxitong.net/k/doc/600c0621905f804d2b160b4e767f5acfa1c78389.html
文档为doc格式