我们在APR的时候,所用到的std cell或者IP、macro都是要吃LEF的,而最终交付生产的时候要生成GDS文件给工厂。那么这两个文件都是什么意思呢?需要注意哪些问题?我今天就来详细探讨一下。

首先,什么是LEF?全称为library exchange format,注意这里的L是library,不要把LIB搞混了,LIB是liberty。它是一种库交换格式,只记录了在APR时所要用到的最基本的物理信息,多一点都不记录。什么意思呢,各位想一想后端设计的时候,我们要摆放连线一个cell或者IP,需要什么信息呢?是只有他的size和出pin的信息的,出pin的信息包括pin的形状,出的层,以及它的mask等。LEF其实就包含这两方面的内容。一个cell、一个ip、一个block,甚至一个chip都可以抽LEF出来。有了LEF,我们就知道了我们要摆的元器件的大小和它的pin,我们就可以摆放和绕线了。所以说LEF是更高层级使用的最基本的物理信息文件。

而GDS就不一样了,它在我们的design设计时其实并不需要,它是我们最终交付给代工厂生产的文件,我们只要记住这一点,这是最终tape out所要用到的最终文件。整个设计流程那么多,用到的文件多如牛毛,但是最后芯片要生产出来,交给机台的就是GDS。如果不考虑dft测试或者其他的验证工作,其实交付出一份好的GDS就宣告设计结束了。那么,GDS会包含哪些信息呢?不知道读者有没有了解芯片制造相关的内容,我大概讲一下,制造的时候分为很多工序,刻蚀啊,注入啊很多,每一个poly、metal、oxide、n well、p substrate都是一步一步生成的。GDS就是详细记录了所有这些实际的材料的物理信息,它们的层数、位置、形状。或者可以这么说,当你拿到一块生产好的芯片,你是完全可以很简单的逆向推出它的gds的。(当然我说的是理论上是很简单的)只要把每一种材料的物理信息一字不落地记录下来就是GDS了。我们在最后PV signoff的时候,就根本不会查看APR的DB,而是直接signoff的GDS。GDS过了,整个芯片的PV才算过了。(什么是signoff、PV会在之后其他文档讲)。

听到这里,可能小伙伴还是有点糊涂,那么我想用一个最简单的问题来加深大家对这两者的理解,也就是本文的标题——LEF和GDS匹配问题。实际上,我们在后端做APR的时候会用到元件的LEF,做完以后生成一份chip的GDS,那我们会用到GDS吗?会的,GDS其实不光包括chip的,每个cell、ip、macro都有自己的GDS。那么问题就来了,既然如此,我们最终抽出来的GDS包不包括cell内部的信息?要知道我们在APR的时候可是把cell看成了一个黑匣子或者说空壳的,只有pin可以被看到。实际上,APR最终出来的GDS确实没有cell或者macro内部的信息,要想最终交付生产,还要把我们chip的GDS和用到的所有元件的GDS merge起来,这样才能形成一份完整的可以交付给工厂的GDS。而在merge的时候,会有可能发生LEF和GDS不匹配的问题。GDS包括所有的物理信息,LEF包括pin和cell大小的信息。假如LEF写的pin的位置和GDS写的pin的位置不一致,会发生什么情况呢?假如这个pin外接的时候直接打了一个via,那么,APR的时候就会把这个via砸在LEF认为的位置,而这个via的信息最终会写在chip的GDS中,这样,chip的GDS和cell GDS merge的时候,这个via的位置可能就不是cell GDS中pin的位置,那样这个pin等于就没有被连上,或者说产生了DRC,这就是很严重的问题了。所以一定一定要保证我们用到的LEF和最终merge的GDS一致才可以。

可能有还没有经历过项目的小伙伴会觉得这种情况也能发生?实际上,项目进行的时候,LEF和GDS可能都会在更新的,一般会有专人来维护所有的lib,那么就有可能不小心LEF用的是v1,GDS用的v2,这样必然会产生PV的DRC,而这种DRC,在APR tool里是不可能发现的。所以一定要注意这个问题。

微信公众号:伟酱的芯片后端之路

LEF和GDS匹配问题相关推荐

  1. 芯片设计中的LEF文件浅析

    LEF和DEF是APR工程师工作中经常会碰到的两类文件,也会对APR的基础配置和APR的flow产生直接的影响.基本相当于APR物理设计的基础建设. LEF/DEF释义和使用场景 APR工程师碰到的L ...

  2. synopsys lef生成Milkyway库的方法

    一.Milkyway Milkway是对synopsys的Milkway数据格式进行管理的软件.对于后端而言,使用ICC做设计时,厂家会提供一个完整的标准单元库的Milkyway库,但是如果你的des ...

  3. ICC/ICC2 or INN 一点不成熟的浅见

    笔者作为ICC/ICC2的深度用户(deep user),在过去的大部分时间都在把玩S家APR工具里的各种相关命令.配置和GUI操作种种.最近几年也有了机会使用了C家强大的ARP工具:innovus, ...

  4. 数字IC所用软件及IP分类

    数字IC所用软件及IP分类 Synopsys--新思科技 VCS-Verilog Compile Simulater Verdi ICC/ICC2--布局布线工具 Starrc--寄生参数提取工具 D ...

  5. 一种全新的深亚微米IC设计方法

    一种全新的深亚微米IC设计方法   类别:电子综合   阅读:910     本文分析了传统IC设计流程存在的一些缺陷,并且提出了一种基于Logical Effort理论的全新IC设计方法. 众所周知 ...

  6. UVALive 6525 Attacking rooks 二分匹配 经典题

    题目链接:点击打开链接 题意: 给定n*n的棋盘, 能够在'.'上摆 象棋中的车(X是墙壁) 使得随意两个车都不能互相攻击到 问:最多能摆多少个车. 思路: 二分匹配 1.若没有X.那么做法就是 X点 ...

  7. 数字后端物理设计输入文件介绍(.v .sdc .lib/.db .lef .tlef/.tf rc corner .view)

    Physical Design input files Inputs for Physical Design | Physical Design input files Remark:Team VLS ...

  8. LEF文件介绍及其生成

    目录 LEF文件介绍 1. 工艺描述部分 2. 单元(Cell)描述部分 LEF文件的生成 1. 工艺描述部分生成 2. 单元描述部分生成 3. 后处理 LEF文件介绍 LEF(Library Exc ...

  9. DEF、LEF 文件

    LEF: lef实际上是gds文件的简化版本,前者具体记录了芯片制造过程中的每一层尺寸信息,和尺寸规则.但在pr工具中不需要这么多信息,所以进行了简化.主要记录的是金属层的信息. DEF: def文件 ...

  10. re2正则表达式匹配引擎的c接口版本cre2的中文使用手册

    前言 re2 官方地址: https://github.com/google/re2 cre2 官方地址: https://github.com/marcomaggi/cre2 1 基本类型定义 不透 ...

最新文章

  1. 给Chrome“捉虫”16000个,Google开源bug自检工具
  2. mysql的语句分类,查询、子查询及连接查询
  3. 【DDS】基于FPGA的DDS研究与设计
  4. Keras 文本预处理 text sequence
  5. Java Web学习(七)HttpServletResponse(客户端响应)
  6. 集成显卡与独立显卡的区别
  7. 配置dns的三种方式
  8. java防止编码重复_java – 如何避免许多小类的代码重复?
  9. python画雷达图-Python简单雷达图绘制
  10. Agile入门系列-1
  11. AnyForWeb告诉你什么才是“最好的”编程语言
  12. NSData的同步下载与NSConnection的同步下载
  13. plc和变频器通讯接线图详解
  14. Busybox下tftp命令使用详解
  15. unity3D AR涂涂乐制作浅谈
  16. 数据洪流时代,企业转型需要修建自己的“都江堰”
  17. GCTA学习3 | GCTA的两篇NG:fast-LMM和fast-GLMM
  18. 7-12 两个数的简单计算器
  19. java 数学测试_Java实现小学数学练习
  20. Oracle - LOB(大对象数据类型)

热门文章

  1. 分析Padavan的代码二
  2. 某医院门诊预约系统/医院预约挂号系统
  3. 小米手机访问电脑共享文件_小米手机共享文件夹在哪里
  4. 翼支付个人账单查询接口
  5. 陈一舟:以前创业占地就行 现在要做游击队
  6. 什么样的女人才是老婆(感动)
  7. mac android 文件管理器,PC和Mac浏览安卓手机上文件最快的方式,只需两步
  8. 汽车软件合作开发中的分工、知识产权及质量责任
  9. Android如何使用banner制作我们的轮播图
  10. qt打开xls文件_Qt中打开excel文件