Calibre拾遗:FDI (Foreign Database Interface)系统简介

news/2024/12/2 22:47:25/

Calibre是强大的GDS处理工具,包括查看,验证,分析等操作,操作由浅入深,除过手动编辑GDS的不是很灵活外,其他各种命令和操作策略,都是远(遥)远(遥)走(领)在(先)GDS操作的技术前沿,通常都是各个数字版图,模拟版图工作者的必备技能工具。
除过常规的Calibre应用外,Calibre针对第三方数据,也提供了友好的支持,今天就一起来了解一下这个小而灵的系统FDI
在这里插入图片描述

FDI简介

Foreign Database Interface. 顾名思义,对第三方输入数据的处理。这里的第三方通常也是业界常用的标准版图数据类型。目前主要支持下列三种数据格式接口

  • DEF/LEF
  • OA(OpenAccess):Cadence Virtuoso 数据格式
  • MilikyWay:Synopsys IC Compiler 数据格式

只要用户有上述数据类型,都可以通过FDI系统,完成数据的转换。Calibre FDI的数据输出,也是常见的交付类型,包括:

  • DEF
  • GDS
  • OASIS
    这样对于数据回传给第三方,或者向下做GDS/OASIS数据分析,核验也都是很方便。

FDI命令系统

目前calibre FDI提供三个命令,分别对应GDS,OASIS,Backannotation三种数数据流:

fdi2gds

用户可以通过这个命令,把第三方的数据,转成GDS而设计的,简单的flow chart 如下
在这里插入图片描述
简言之,fdi2gds可以把业界流行的数据,转成GDS格式。输入数据的版本要求:
在这里插入图片描述

通常而言,常规的数字/模拟版图工具的数据,都可以通过fdi2gds命令导出GDS。示例如下

  • LEF转成GDS:
   fdi2gds 	-system LEFDEF \ -lef  $TECH_LEF $IP_LEF \-outFile $IP_gds 
  • DEF转GDS

    fdi2gds -system LEFDEF \-lef $TECH_LEF $IP_LEF  \-def $BLOCK_DEF $TOP_DEF \-outFile $TOP_GDS
    
  • OA 转GDS

   fdi2gds	-system OA \-design $OA_LIB $TOP $VIEW  \-outFile $TOP_GDS
  • MILKYWAY 转GDS
fdi2gds -system MILKYWAY 、-design $MW_LIB $TOP $VIEW \-outFile $TOP_GDS

这里以LEF2GDS为例,一起看看fdi2gds的效果。
在这里插入图片描述
PS:LEF是可编辑文件,借助fdi2gds命令,可以简介的理解通过LEF编辑的GDS数据,提供用户一种类视图(none-GUI)的GDS简易编辑方法

这样可以简单的查看LEF的信息,也比较方便再前期做一些DRC预言性的探究

fdi2oasis

类似fdi2gds系统,FDI系统也支持把第三方数据库导出成OASIS格式。通常可以理解OASIS是GDS的加强版,压缩率更高,同时也可以给版图数据添加属性,其他的配置都等同于fdi2gds
PS:另外用户也可以使用gds2oasis,使用单独命令,把gds转换成oasis

fdi2BA

在做DFM或者dummy fill的时候,用户有时候会直接call Calibre来完成,这样在Calibre里边就会生成对应的DFM或者dummy fill的增量GDS数据信息,这个时候使用fdi2BA可以方便的将这些增量信息标注到原始文件当中。
在这里插入图片描述

  • DEF转成带fill信息的DEF
fdiBA 	-system LEFDEF \-gds $FILL.gds \-design $TOP_DEF \-defout $TOP_FILLED_DEF 
  • DEF中带入DFM信息
fdiBA 	-system LEFDEF \-design $TOP_DEF \-dfmdb $DFM_DB \-defout $TOP_DFM_DEF

fdiBA主打的是数据交换,通常的导出数据是DEF格式输出,提供给第三方使用。这里可以看到经过fdiBA追加fill信息的DFF文件发生了下面的数据变化:
在这里插入图片描述

PS:上述实例中的部分脚本和流程范例,会在近期上传至小编的知识星球,有兴趣的小伙伴请保持关注

【敲黑板划重点】

在这里插入图片描述
FDI主打一个小而灵,这类数据转换通常不怎么常用,但是需要的时候,如果没有这个小知识,确实很抓瞎,常言道艺多不压身,多一条路就多一个选择,各位小伙伴可以了解一下,以备不时之需。

参考资料

Mentor Calibre® Layout Comparison and
Translation Guide

Cadence LEF/DEF 5.8 Language Reference


http://www.ppmy.cn/news/1174128.html

相关文章

MySQL进阶(数据库引擎)——MyISAM和InnoDB引擎的区别

1.是否支持行级锁 MyISAM 只有表级锁,而InnoDB 支持行级锁和表级锁,默认为行级锁。 (1)MySQL大致可以归纳为以下3种锁: 表级锁:开销小,加锁快;不会出现死锁;锁的粒度大…

电解电容寿命与哪些因素有关?

电解电容在各类电源及电子产品中是不可替代的元器件,这些电子产品中由于应用环境的原因,使它成为最脆弱的一环,所以,电解电容的寿命也直接影响了电子产品的使用寿命。 一、电解电容失效模式与因素概述 铝电解电容器正极、负极引出…

Golang:反射机制reflect

目录 反射 基本概念 变量的内在机制 Go的反射三定律 反射的使用 空接口与反射 结构体与反射 函数与反射 反射的实际运用场景 反射

gin 框架出现runtime error: index out of range [0] with length 0

之前是这样的: category : c.Request.Form["type"][0] 加上这一句就变成了 fmt.Println(c.Request.FormFile("type")) category : c.Request.Form["type"][0]

Python获取本机IP地址的三种方式

目录 1、使用专用网址 2、使用自带socket库 3、使用第三方netifaces库 1、使用专用网站 获取的是公网IP。 网址:http://myip.ipip.net 代码: import requestsres requests.get(https://myip.ipip.net, timeout5).textprint(res)具体可以类似这样&#x…

【数据仓库-零】数据仓库知识体系 ing

文章目录 一. 数仓基本概念二. 离线数仓建设方法论三. etl流程四. 数仓规范建设指南四. 数据仓库架构五. 数据可视化 通过熟悉构建数仓整体的过程,可以系统的了解 数仓构建理论:能够站在全局角度看数仓的运行架构,数仓执行流程。了解到构建数…

【踩坑】反序列化+引用+全局变量

反序列化引用全局变量 先看一段代码 下面这段代码的初衷是给 config.Cluster字段先赋值一个默认值,然后根据conf 配置【json 字符串】来覆盖config.Cluster字段,如果conf 配置中没有 cluster这个key,config.Cluster就会保持默认值 var def…