defin :加载一个指定的DEF文件

在引进一个设计之后,defin可以在任意步骤被使用。其典型的使用方法有:

1.加载一个由innovus或者其他工具导出的包含floorplanDEF文件

2.运行一个带有Scan chain信息的DEF文件,可以在palce阶段进行Scan chain的重新排序

3.加载一个由innovus或者其他工具导出的包含cellpalcementroute信息的DEF文件

innovus会读取DEF文件的信息

1.Tracks, gcells, rows, die area

The software deletes all of the existing objects in the database and reads in the new information

2. Blockages, fills, special nets

软件将会与当前存在的物理信息进行比较,(例如shape and layer),如果它发现在当前DB文件中有与DEF文件相同的信息,则它会忽略此信息。如果信息并不存在,那么它会添加信息到DB文件中。

For special nets, the software merges wire segments in the DEF file with any existing ones in the database that overlap and have the same attributes, such as layer, width, shape, and direction. The software does not delete any existing data.

3.Nondefault rules(NDR), vias

The software adds the objects to the database if they do not already exist there.(不存在的会增加)

If a nondefault rules definition with the same name already exists, the software ignores the one in the DEF file.  (NDR存在 忽略)

If a via definition with the same name already exists, and the via is a fixed via, the software ignores the one in the DEF file.(Via 存在,有相同名称,且Via为fix状态,忽略)

If a generated via definition with the same name already exists, the geomoetries are read, but the name might be changed.

The software does not delete any existing objects of these types.

4.Nets

For each net in the DEF file, the software removes the existing regular routing (not special routing), then adds the routing from the DEF file for this net.(去除原来,保留DEF)

If the net has a shielding segment with self reference, defIn will ignore the check.()

5.Pins

For each pin in the DEF file, the software removes the existing physical information for the pin, then adds the physical information from the DEF file for this pin.(去除原来,保存DEF)

If a pin does not already exist, and it is a power or ground pin, the software adds it to the database.(一个PIN不存在,但它是个PG pin,则工具将会添加其至DB)

If the pin is not a power orground pin, the software generates an error message.(如果不是PG pin 则会产生错误)

6.Groups, regions

If a group name in the DEF file matches an existing hierarchical instance name in the database, the region's boundary constraint is attached to the hierarchical instance, overriding any existing boundary constraint.(DEF文件中关于 instance 的各种限制将会覆盖DB文件)

The software checks whether the group members belong to the hierarchical instance, and generates a warning message if any do not belong.(检查 group number是否属于hierarchical instance,如果不属于将会生成警告信息)

If a group name does not match any hierarchical instance name, the software creates the instance group with an attached region boundary constraint, if one exists. Regions that are not used by groups in the same DEF file are ignored.(如果一个group name并没有匹配到任何信息,软件将会。如果已经存在,Region将不会被DEF同样信息的文件所使用)

The software does not remove existing groups.

(一)摆floorplan的迭代过程中使用def文件保留上一版的工作,方便微调。

后端工作者都知道,目前的floorplan主要还是靠人工反复迭代来求得最优解,保留一些可以重复使用的数据,就能大大降低手工工作量。

a. 保留core的大小形状:

deselectAll

defOut -selected core.def

这样就能只保存core的形状而不包含其他信息,方便下次使用。

b. 保留block ram的位置(顶层设计可以用到):

deselectAll

selectInst  [dbGet [dbGet top.inists.cell.subClass block -p2].name]

defOut -selected mem.def

同样可以保留memory的位置,下次微调时候可以直接先吃进来,再做改动,减少重复动作。

c. blockage, instance等都可以通过def的方式保留。

(二)、 powerPlan的时候需要对power net进行局部调整动作的也可以借助def

a.需要手动画ring的时候,辛苦花过一次之后,还需要画同样的多层layer,就可以使用def的方式保存第一次的,然后修改def文件里的layer层,在defIn即可。

b.同一版本的floorplan,后面需要局部改动power,但是已经run到postroute,也可以使用def保存新的powerplan,在删掉route的power,吃进def,再做verify,保证没有drc就OK。

defOut、defIn只有记得verifyPowerVia,veriry_pg_short, verifyConnective等。

(三)、需要比较两版enc data的instance的差异,也可以使用def

需求描述:一版data做了opt或者eco的动作,变化了大量的instance,这时候需要debug一下变换了哪些instance,把不同的instance列出来。

这个问题以前使用过方法:

a.脚本去遍历来抓取不同,但是当instance超过一定的数量级就需要耗费大量的CPU资源和时间,甚至有hang住的风险;

b.使用cat命令,抓取相同的部分,可以比较两版差异的百分比,但是较难找出不同部分;

现在就可以借助def来完成这件事。

第一步,def出数量少的那一版的instance来,叫做min.def;

第二步,从def中列出instance list,每个前面加unplace Instance的命令;

第三部,在数量多的那一版里source这个list,unplance掉相同的部分,然后在defOut出来剩下的instance,就可以得到差异的那部分的instance了

def文件的作用及相关操作相关推荐

  1. 虚拟机中文件和目录的相关操作

    1.linux系统结构 1)linux是一个倒数结构 2)linux中所有东西都是文件 3)这些文件都在系统顶级目录"/"就是根目录 4)/目录为二级目录,都是装机时系统自动建立的 ...

  2. 文件权限概念,相关操作

    一,文件权限的基本概念 权限:操作系统限制对资源访问的一种机制. 文件权限的信息展示,使用ls -l 命令即可查看: 整个文件信息可以分为以下几部分: (一)第一个字段表示文件类型 和 文件权限. 第 ...

  3. C/C++ 头文件的作用和用法

    示例代码编译运行环境:Windows 64bits+VS2017+Debug+Win32. 头文件是 C/C++ 程序不可或缺的组成部分,我们需要了解头文件的作用和相关规范. 1.头文件的作用 C/C ...

  4. 文件目录和目录文件的作用区别和联系 C语言文件相关操作 FILE用法

    一.文件目录和目录文件的作用区别和联系 1.他们各自的概念和联系 文件目录:把所有的FCB组织在一起,就构成了文件目录,即文件控制块的有序集合 **FCB:**为了能对一个文件进行正确的存取,操作系统 ...

  5. linux修改定时后如何保存文件夹,linux定时任务的一些相关操作汇总

    本人搜罗各大网站并测试了相关定时任务的操作方便大家进行查阅和操作. 1.cron介绍 我们经常使用的是 crontab 命令是cron table的简写,它是cron的配置文件,也可以叫它作业列表,我 ...

  6. python文件夹在哪_Python文件夹与文件的相关操作(推荐)

    最近在写的程序频繁地与文件操作打交道,这块比较弱,还好在百度上找到一篇不错的文章,这是原文传送门,我对原文稍做了些改动. 有关文件夹与文件的查找,删除等功能 在 os 模块中实现.使用时需先导入这个模 ...

  7. 50.逻辑卷管理5,文件系统相关操作,创建挂载文件系统,扩容文件

    文件系统相关操作 创建文件系统 格式化 逻辑卷textlv创建好之后,就可以在上面创建文件系统,以ext4文件系统为例,应该注意的是逻辑卷的引用需要逻辑卷的设备文件,逻辑卷的设备文件有两种书写方式 以 ...

  8. Python爬虫:多线程的应用和pdf文件相关操作

    多线程的应用 前程无忧岗位爬虫 import requests from re import search from multiprocessing import Process, Queue fro ...

  9. python的txt、csv、ini、xml、excel文件相关操作

    python的txt.csv.ini.xml.excel文件相关操作 函数,一个用于专门实现某个功能的代码块(可重用) 内置函数 len.bin.oct.hex 等 自定义函数 # 定义了一个函数,功 ...

最新文章

  1. SQL Server 事务、异常和游标
  2. 定制ListView的界面(使用自定义的列表项布局,一边显示水果图片,一边显示水果文字)以及ListView的点击事件
  3. PE结构绑定导入实现
  4. 【论文解读】解读TRPO论文,深度强化学习结合传统优化方法
  5. 学校计算机教室安全预案,小学校园微机室安全事故应急疏散预案
  6. 报错,sql语句中尽量不要使用*,只查询需要的字段出来
  7. python课程开课吧怎么样-廖雪峰总结的Python商业爬虫教程,请查收!
  8. Python使用jieba库实现分词统计词频
  9. windows下grep的安装与使用
  10. java系统课程设计报告_JAVA学生管理系统课程设计报告
  11. 数据结构 哈希表设计
  12. [系统安全] 十七.Windows PE病毒概念、分类及感染方式详解
  13. nRF52840-DK通过USB接电脑,不能识别出Jlink
  14. 「AIGC」- ChatGPT可以怎么玩?
  15. 王境泽表情包出处,怎么制作GIF动态图?
  16. 企业如何实现IoT物联网远程控制
  17. Tomcat7 配置 WebSocket
  18. linux 触摸屏驱动分析
  19. html modal显示页面,Modal中显示HTML字符串
  20. 解决Log4j日志文件输出到了前一天的备份文件里

热门文章

  1. 让你的 CDN 费用省 50% 以上!图片瘦身的正确姿势
  2. depth image
  3. 项目经理的专业面试10条经验总结
  4. hadoop大数据生态集群
  5. 如何针对时间片论法进行优化
  6. 一天到晚只会抱怨的人必定是不成熟的人
  7. JavaScript-截取字符串
  8. springcloud引言
  9. Measurement Studio函数ReadMultiSampleAsync
  10. SpringCloud微服务项目实战 - 2.App登录及网关