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

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.rhkb.cn/news/169457.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

视频去噪网络BSVD的实现

前些天写了视频去噪网络BSVD论文的理解,详情请点击这里,这两个星期动手实践了一下,本篇就来记录一下这个模型的实现。 这个网络的独特之处在于,它的训练和推理在实现上有所差别。在训练阶段,其使用了TSM(T…

IP地址SSL证书 IP证书

在许多企业用例中,公司需要SSL证书作为IP地址。公司使用IP地址通过Internet访问各种类型的应用程序。 公网IP地址的SSL证书: 内部IP(也称为私有IP)是IANA设置为保存的IPv4或IPv6地址,例如: RFC 1918范围内…

【JavaEE】CAS -- 多线程篇(7)

CAS 1. 什么是 CAS2. CAS 伪代码3. CAS 是怎么实现的4. CAS的应用4.1 实现原子类4.2 实现自旋锁 5. CAS 的 ABA 问题 1. 什么是 CAS CAS: 全称Compare and swap,字面意思:”比较并交换“能够比较和交换 某个寄存器中的值和内存中的值, 看是否相等, 如果相等, 则把另…

Java面试(JVM篇)——JVM 面试题合集 深入理解JVM虚拟机

关于什么是JVM? 作用: 运⾏并管理Java 源码⽂件所⽣成的Class⽂件,在不同的操作系统上安装不同的JVM ,从⽽实现了跨平台的保证。 ⼀般情况下,对于开发者⽽⾔,即使不熟悉JVM 的运⾏机制并不影响业务代码的…

lvs+keepalived: 高可用集群

lvskeepalived: 高可用集群 keepalived为lvs应运而生的高可用服务。lvs的调度器无法做高可用,于是keepalived软件。实现的是调度器的高可用。 但是:keepalived不是专门为集群服务的,也可以做其他服务器的高可用。 lvs的高可用集群&#xf…

防止消息丢失与消息重复——Kafka可靠性分析及优化实践

系列文章目录 上手第一关,手把手教你安装kafka与可视化工具kafka-eagle Kafka是什么,以及如何使用SpringBoot对接Kafka 架构必备能力——kafka的选型对比及应用场景 Kafka存取原理与实现分析,打破面试难关 防止消息丢失与消息重复——Kafka可…

Hadoop3教程(三十五):(生产调优篇)HDFS小文件优化与MR集群简单压测

文章目录 (168)HDFS小文件优化方法(169)MapReduce集群压测参考文献 (168)HDFS小文件优化方法 小文件的弊端,之前也讲过,一是大量占用NameNode的空间,二是会使得寻址速度…

Redis数据类型——list类型数据的扩展操作

1.list阻塞式数据获取 2.list类型数据业务场景

电脑软件:推荐一款非常强大的pdf阅读编辑软件

目录 一、软件简介 二、功能介绍 1、界面美观,打开速度快 2、可直接编辑pdf 3、非常强大好用的注释功能 4、很好用的页面组织和提取功能 5、PDF转word效果非常棒 6、强大的OCR功能 三、软件特色 四、软件下载 pdf是日常办公非常常见的文档格式,…

基于RM编译码的协作MIMO系统误码率matlab仿真,对比不同RM编译码参数

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 MATLAB2013b 3.部分核心程序 ...................................................................... [V1,N1,K1,I1] f…

05 MIT线性代数-转置,置换,向量空间Transposes, permutations, spaces

1. Permutations P: execute row exchanges becomes PA LU for any invertible A Permutations P identity matrix with reordered rows mn (n-1) ... (3) (2) (1) counts recordings, counts all nxn permuations 对于nxn矩阵存在着n!个置换矩阵 , 2. Transpose: 2.…

前端性能优化 - 虚拟滚动

一 需求背景 需求:在一个表格里面一次性渲染全部数据,不采用分页形式,每行数据都有Echart图插入。 问题:图表渲染卡顿 技术栈:Vue、Element UI 卡顿原因:页面渲染时大量的元素参与到了重排的动作中&#x…

代码随想录 Day26贪心算法01-上

目录 前言:贪心无套路 本质: 两个极端 贪心的小例子 贪心无套路!!! LeetCode T455 分发饼干 题目思路: 1.优先考虑胃口:大饼干喂饱大胃口 2.优先考虑饼干:小饼干先喂饱小胃口 前言:贪心无套路 本质: 局部最优去推导全局最优 两个极端 贪心算法的难度一般要么特别简单,要…

Mac Intellij Idea get/set方法快捷键

Control Retrun(回车键) Command n 参考: Mac Intellij Idea get/set方法快捷键-CSDN博客

2018年亚太杯APMCM数学建模大赛A题老年人平衡能力的实时训练模型求解全过程文档及程序

2018年亚太杯APMCM数学建模大赛 A题 老年人平衡能力的实时训练模型 原题再现 跌倒在老年人中很常见。跌倒可能会导致老年人出现许多并发症,因为他们的康复能力通常较差,因此副作用可能会使人衰弱,从而加速身体衰竭。此外,对跌倒…

ESP32C3 LuatOS TM1650①驱动测试

合宙TM1650驱动资料 TM1650.lua源码 引脚连接 TM1650ESP32C3SCLGPIO5SDAGPIO4 下载TM1650.lua源码,并以文件形式保存在项目文件夹中 驱动测试源码 --注意:因使用了sys.wait()所有api需要在协程中使用 -- 用法实例 PROJECT "ESP32C3_TM1650" VERSION …

数据结构:选择题+编程题(每日一练)

目录 选择题: 题一: 题二: 题三: 题四: 题五: 编程题: 题一:单值二叉树 思路一: 题二:二叉树的最大深度 思路一: 本人实力有限可能对…

KekeBlog项目实战后台模块(二)(已完结)

十一、后台模块-菜单列表 菜单指的是权限菜单,也就是一堆权限字符串 1. 查询菜单 1.1 接口分析 需要展示菜单列表,不需要分页。可以针对菜单名进行模糊查询。也可以针对菜单的状态进行查询。菜单要按照父菜单id和orderNum进行排序 请求方式 请求路径…

【QT开发(10)】QT 进程

文章目录 1.1 运行一个新进程1.2 QProcess 还可以对一些信号进行关联2 进程间通信2.1 使用共享内存实现进程通信2.2 演示 代码仓库参考 1.1 运行一个新进程 使用类 QProcess,允许将一个进程堪称一个顺序IO设备。 在Qt中,QProcess类是用于启动外部进程的…

Vue的MVVM实现原理

目录 前言 用法 代码和效果图 效果图 理解 高质量的使用 前言 MVVM是Model-View-ViewModel的缩写,是一种软件架构设计模式。Vue.js实现了这种设计模式,通过双向数据绑定和虚拟DOM技术,使得数据和视图能够快速响应彼此的变化。了解Vue的…