Calibre物理验证技术点滴 (中)

书接上文,在前一讲中(Calibre物理验证技术点滴 (上)),曾经提到calibredrv (DESIGNrev)这个工具,这个工具是calibre进行物理验证视图查验的重要GUI工具。简明来讲,Calibre的工作主要就是两大步骤,规则检查和视图查验,在上一章节对规则检查的初步了解后,本章节一起进入Calibredrv的世界中,瞧瞧这里的技术细节。
Calibre物理验证技术点滴 (中)_第1张图片
大多数的工程师都是很有windows的操作经验的(),对于带有图形接口/操作的工具额外有好感。所以calibredrv的友好界面一定能够取得大家的一致认可,加之其强大的配色方案、快速渲染、GDS版图分层管理等特性,一致被广大后端工程师/FAB津津乐道,基本已经成为业界的GDS版图查看、四眼(four-eyes)查验、数据交流的标准工具。可以不算夸张的比喻:calibredrv是GDS世界里的可视化沟通的标准工具(语言)。

工具的命令行启动

启动比较简单,在shell里边直接键入下列命令即可以唤起calibredrv

calibredrv

只要没有DISPLAY的问题,就可以看到如下的GUI界面跳出:
Calibre物理验证技术点滴 (中)_第2张图片
默认这个窗口的中间会显示当前calibredrv的工具版本,譬如笔者的环境是如下的版本信息。
Calibre物理验证技术点滴 (中)_第3张图片

多数据格式的支持

Calibredrv支持非常多的数据输入格式,譬如:

  • DEF # DEF only
  • LEFDEF # DEF with LEF
  • OA # open access
  • MILKYWAY # Synopsys ICC DB format
    由于calibredrv的关注点实在真是的版图,上边这些仅仅是锦上添花,真正支持的重点版图数据是:
  • GDS
  • OASIS
  • Overlay
  • RDB # calibre Results DataBase
  • ZIP # 上述文件的压缩格式,calibre可以进行预解压

版层描述

通常的用户都是在某个工艺下进行版图查看,对于不同工艺的数据库,对应的版层信息都是完全独立的,这时候很有必要添加明码的版层描述文件(具体细节后面会提到),可以使用下列选项预加载此信息

calibredrv -dl tech.layerprops

使用此选项打开的calibredrv,在GUI里边后续打开的所有GDS都会以tech.layerprops的版层描述来解析。

多线程加速

多线程支持。现在的版图越来越大,使用64位和多线程加速已经是常规做法,calibredrv也不例外,使用下列选项来打开相应的功能

calibredrv -64 -threads 16 

启动加载RVE数据

RVE是calibre里边查看物理验证结果的数据环境,RVE也是一个GUI交互界面,可以在calibredrv启动的时候同时唤起RVE,让专业的用户操作快人一步

calibredrv -rve -drc DRC.db


以只读模式打开GDS

通常GDS的数据都是非常重要的,具有极强的不可复制和私密性,使用只读模式打开GDS通常是一个很好的防止数据被误操作的方法,命令如下

calibredrv -noedit

命令示例

  1. 带版层描述的多线程启动
calibredrv -64 -threads 16 -dl tech.layerprops
  1. 启动的同时,打开多个GDS文件,并在此会话里边带入版层描述信息
calibredrv -individual -dl tech.layerprops -m $GDS1 -m $GDS2

这里需要注意的是选项-individual,默认calibredrv是以merge(合并)模式打开
3. 使用calibedrv同时打开版图文件和RVE GUI打开对应的DRC DB

calibredrv -dl tech.layerprops -m $GDS -rve -drc DRC.db

这个时候,GUI的结果会有一些不同,用户可以开到两个窗口,一个是DRV,另外一个就是RVE
Calibre物理验证技术点滴 (中)_第4张图片

  1. 只读模式打开GDS文件
calibredrv -noedit -m $GDS

可以看到,此时的Edit下拉菜单完全是灰色的,这就是在calibredrv禁止编辑的状态
Calibre物理验证技术点滴 (中)_第5张图片

初识版图文件(GDS)

在展开calibredrv的一些操作描述之前,很有必要了解一下版图文件(这里以GDS为例)的基础信息和数据格式。
每一个版图文件都需要具备一下一些基础信息

  • 版层号(layernumber):版层号码的标识信息,整数格式,譬如: 31 , 32等
  • 版层数据类型(datatype):版层信心的数据类型细分项目,整数格式,譬如:31.0 (等效于31),31.1,31.2等,需要注意的是,所有一致的版层在最后的FAB生产中,都会合并到同意层,譬如:31.0/31.1/31.2,在FAB的后处理后,最后只能看到31层。
  • 模块(module/design)
    • 唯一化:在APR的过程中为了保证所有的模块都可以被独立优化,通常都会最module的unique(唯一化处理)。但是在APR工具里边,所有module只有LEF的边界描述信息,在GDS导出的时候,由于更多的数据和子模块被同时导出,APR工具会在这里做重命名,确保所有的module都是唯一的,便于GDS版图的数据处理。

    • 模块的嵌套:由于上述唯一化的保证,在最终导出的GDS里边,是不会存在模块之间互相调用的问题的,这里给GDS的版图操作提供了更多的空间。从calibredrv的视角来看,顶层设计(也是一个module)会对底层module有调用关系,对于所有的module来言,都是平行的,或罗列在module list里边
      Calibre物理验证技术点滴 (中)_第6张图片

    • 模块的结构:无论是顶层设计还是做小的模块,都有类似的结构:深度(depth),版层(layers),层次化(hierarchy),多边形(polygon)等。

calibredrv 的微操作

在了解了GDS版图结构以后calibredrv的微操作接踵而来。

版图描述文件(layerprops)

在calibredrv的命令行启动的时候,可以使用-dl来定义当前会话的版层描述信息。GDS里边保存的都是以数字描述的本层信息,大体结构是layernumber.datatype。
默认情况下,calibredrv展现的GDS版层就是数字的描述,譬如:
Calibre物理验证技术点滴 (中)_第7张图片
这里边有两列,第一列是GDS里边真实的数字版层信息,后面是版层描述信息,由于这里启动的会话是不带版层描述文件的,所以默认版层描述和版层信息一致。
如果使用了版层描述文件,版层信息看起来就会有好很多,很像在APR里边工作
Calibre物理验证技术点滴 (中)_第8张图片
这个对于GDS查看会非常友好。上述描述信息就是使用下列命令打开GDS的效果:

calibredrv -dl tech.layerprops -m $GDS

这里一定要好好看看这个tech.layerprops文本文件,合理的配置可已让这个文件发挥大用途,通常的文件如下
Calibre物理验证技术点滴 (中)_第9张图片
语法并不复杂,基本释义如下
Calibre物理验证技术点滴 (中)_第10张图片
也有一些其他的选项,有一个用户可配置版层顺序的方案可以试一下,其他的大多不太常用

customLayerDrawOrder 1 3 5 7 11 4 2  

使用用户定义的顺序描述版层,默认时使用数字,也可以选择版层描述字符等顺序配置,具体可以参见layer选项
Calibre物理验证技术点滴 (中)_第11张图片
这里有一个技巧,尽管用户定义了整个工艺支持的左右版层描述信息,如果在当前GDS里边又找不到的描述的层号,calibredrv依然会使用数字描述来显示。同样,如果GDS里边不包含某些定义在layerprops的版层,calibredrv的layer里边也不会显示,换言之,在calibredrv里边显示的layer,就是这个GDS里边用到的所有版层的信息。

版层深度(depth)

GDS的结构支持层次化,所以也会有深度的问题,在此处,calibredrv的深度(depth)可以查看任何版层,甚至是任何起止深度的信息。用户可以单击Step1,唤出Step2的窗口,从而调整显示版图深度


上图可以看到,这个module的总层深是17层,目前是全部打开(0~9999)。用户也可以在calibredrv的界面里边直接敲击数字9999来改变截至层深
由于所有的设计都有顶层module,对于用户而言可以使用0~0的版层深度快速查看顶层的GDS信息,这个调整深度的功能对于调测顶层和底层的layer short/spacing很有帮助
使用0~0的depth,只显示顶层的M6绕线信息
Calibre物理验证技术点滴 (中)_第12张图片

深度调节是1~1,显示第一级module内部的绕线信息
Calibre物理验证技术点滴 (中)_第13张图片

本章词汇

Calibre物理验证技术点滴 (中)_第14张图片

【敲黑板划重点】

在这里插入图片描述

- 使用命令行优雅的打开calibredrv,快人一步的同时也彰显技术能力。
- 灵活使用版层信息描述配置,让你的DRV开起来就是那么别具一格
- 了解module的结构,是灵活使用calibredrv的技术基础。
- 最后一波的可配置操作高效且灵活,步步稳赢,玩转GDS的查看的零零总总。

读者须知:处于表达方便和技术保密条例,上述技术细节描述可能会存在转义或别名,请读者周知和理解

你可能感兴趣的:(随笔,学习,版图流程,LV,GDS)