mervin_li的个人空间 https://blog.eetop.cn/1582944 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

GDSII转DEF的flow简介

热度 3已有 7722 次阅读| 2017-9-20 13:35 |个人分类:后端流程自动化|系统分类:硬件设计

How to transfer to block frame. view in DEF format by available GDS?

对于block design的后端物理实现而言,boundry pin的位置往往有严格的要求。比如,在一系列芯片的升级中,designer只想改动其中的某一模块,其他地方不动,那么他会提取出这一块的GDS出来交给后端,这里的pin的位置就是严格固定的。对于后端来说,就需要把gds转化成可以进行PR的def文件,而这一过程还没有固定的完善的flow,下面就来介绍自己在项目中所采用的方法。

主要分为两大步骤:GDS转LEF;LEF转DEF。

首先使用Candence的Abstract工具将GDSII转换成LEF文件(这一步也可通过Laker工具完成,abstract工具更方便些)

数据准备:1.GDS, head.lef, layer.map

1.Pin Step ,根据map文件设置GDSIILEFpin所在层的对应关系,以及Boundary层的对应关系;

absSetBinOption "Block" "PinsBoundryLayers" "(PHL BOUNDMK)"

absPins

2.Extract Step,map文件设置GDSIILEFpin所在层的对应关系,以及Boundary层的对应关系;

absDisableUpdate

absSetBinOption "Block" “ExtractAntennaGate”“(PO1(PO1 and DIFF))”

absEnableUpdate

absExtract



3. Abstract Step,这一步的操作和Extract Step类似,进行adjust参数的设置(也可按照默认参数设置);

absDisableupdate

absEnableUpdate

absAbstract


4. Lef Out Step,这一步即是进行lef输出的一步,需要添加一个只含有top cell name的文件和填写输出的LEF文件名。

absSetOption “ExportTechLefData” "true"

absSetOption "ExportLEFCellListFile" "topname.text"

absExportLEF


这些步骤整理成脚本,在运行之前需要在脚本里修改好相应参数即可。需要注意的是,在pin Step这一步,参数设置需要根据客户所给的GDSII文件是否包含Boundarylayer信息,如果没有,则需要指定boundary的参数,确定blocksize运行完成之后生成LEF文件,可通过运行verify step进行检查生成的lef是否正确。也查看log文件确保运行过程正确无误。如果运行图形界面可看到运行正确之后的绿色标记点亮。

Encounter工具是后端PR工作使用的注意工具之一,本阶段使用encounter来实现LEFDEF的过程。这一阶段采用的原理是利用hierarchical partition的设计思想来进行LEF文件转DEF的抽取过程。



首先需要一个网表文件,网表中定义一个空的module即可。然后将这个网表和上个阶段转出的LEF文件按照一般init design的过程读入encounter工具中。这时候就相当于已经有一个design case了,这时再进行addInst的操作,将block当作一个整体的Inst加入design中。



接下来,就是按照划分partition的方式将加入的Inst结成partition结构,保存输出def文件,就得到了我们所需要的DEF格式文件。


需要注意的特殊情况是,这个过程只针对signal pin有效,因此,转def之前需要检查LEF中是否有POWER属性的pin,如果有则需要改为SIGNAL属性再转DEF,生成DEF之后再将DEF中的相应的pin的属性改为POWER。另外,如果单独的LEFDEF过程中,客户提供的lef中有routeBlockage的描述,则需要将这部分单独转换成def文件,可通过脚本实现。


整理GDSIIDEF的流程:


  1. 选取Abstract工具license

  2. > abstract –nogui

  3. > absTclMode

  4. > source gds2lef.tcl

  5. 修改生成的lef,和脚本lef2def.tcl中的相关路径;

  6. 启动encounter工具;

  7. Encounter> source lef2def.tcl

  8. 检查修改def文件,完成flow


    常规的流程就这样进行操作,针对特殊设计中的特殊要求,可在脚本中进行对应参数的修改,达到设计要求的标准例如上文提到的power pin需要修改属性,和Blockage的转换需要利用脚本调整。





1

点赞

刚表态过的朋友 (1 人)

发表评论 评论 (2 个评论)

回复 liuxianli 2020-7-3 11:29
有gds2lef.tcl这个脚本代码吗?
回复 conan85420 2024-3-18 13:37
试试看

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 137

    粉丝
  • 58

    好友
  • 148

    获赞
  • 54

    评论
  • 3153

    访问数
关闭

站长推荐 上一条 /1 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-3-29 08:18 , Processed in 0.019868 second(s), 9 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部