joy

joy的数字花园

一直游到海水变蓝
github

IC基础概念:LEF, DEF & LIB 文件

Preface#

简单来说,LIB/LEF/DEF 为一种包含特定信息的,供 EDA 工具使用的文件格式。

这篇文章将讨论:

  1. 这些文件的作用是什么?
  2. 为什么需要这些文件?

不会讨论:

  1. 文件细节,每个字段含义

LIB#

Timing Library Format

描述标准单元 timingpower 信息的 .lib 文件。

如:delay time (input 到 output 的时间)、transition time (讯号在改变过程 (ex: 0 → 1) 中花的时间)、requirement of setup time (讯号到来之前要维持稳定的时间,才能保证讯号有被正确接收)、requirement of hold time (讯号进入之后要维持稳定的时间,才能保证往下一层传是正确的)。

LEF#

wiki: Library Exchange Format
在集成电路设计中,库交换格式(LEF)是一种规范,用于以 ASCII 格式表示集成电路的物理布局。它包括设计规则和标准单元的抽象信息
LEF 仅包含该级别所需的基本信息,以满足相关 CAD 工具的目的。它只提供抽象视图,因此内存开销较少,有助于节省宝贵的资源。LEF 与 Design Exchange Format (DEF) 结合使用,可在设计过程中表示集成电路的完整物理布局

对 LEF 的一种通俗理解:

LEF 描述单元的物理属性,包含大小、端口位置、各层定义、通孔定义等,简单想成这个单元的外框,要跟别的单元能够互相连接的那些讯息,至于里面有什么内容先不管。LEF 包含的资讯大概可以这么理解:A 大楼建地 200 坪共 10 层楼高,一楼有 5 个出入口,五楼有保留天桥空间,顶楼有空中花园,B 大楼建地 200 坪共 15 层楼高,一楼有 8 个出入口,同样在五楼有保留天桥空间,顶楼有空中花园,两栋地下室停车场完全相连共用。

根据 Wikipedia 描述,可知 LEF 分类为包含设计规则的 Tech LEF 和包含标准单元抽象信息的 Cell LEF

image.png

Tech LEF#

image.png

Tech LEF 是描述工艺技术规则的文件,提供制造工艺相关的物理设计约束和参数

  • 作用:定义芯片设计中可用的层、规则和布线资源。
  • 内容
    • 图层信息:定义金属层、过孔层、掩膜层等(如宽度、高度、间距)。
    • 设计规则:约束设计器的布线、间距、密度等要求。
    • 工艺属性:电阻、电容等层属性参数。
  • 应用:提供 P&R 工具进行设计规则检查(DRC)、布线规划和寄生参数提取。

Cell LEF#

image.png

Cell LEF 是描述标准单元的抽象物理布局信息的文件,用于指导 P&R 工具的布局与布线。

  • 作用:定义每个单元的尺寸、引脚位置及其金属层映射
  • 内容
    • 单元边界:单元的宽度、高度。
    • 引脚位置:引脚的坐标和金属层。
    • 阻挡层(Obstruction):限制布线区域。
    • 功耗引脚:如 VDD 和 GND 的位置。
  • 应用:指导 P&R 工具进行单元放置、布线连接。

DEF#

wiki: Design Exchange Format
设计交换格式(DEF)是一种开放式规范,用于以 ASCII 格式表示集成电路的物理布局。它表示网表和电路布局。DEF 与 Library Exchange Format (LEF) 结合使用,可在设计过程中表示集成电路的完整物理布局。

主要作用#

  • 交换物理设计信息:在 EDA 工具间传递设计布局、布线和相关数据。
  • 记录设计状态:从布局规划到完成布线,各阶段的物理设计信息。所以每个阶段的 DEF 信息不同,既可表示初步布局,也可表示完整布线。

DEF 与 LEF 的关系#

  • LEF 描述工艺规则和标准单元(逻辑层面)。
  • DEF 描述特定设计的物理实现(实例化层面)。

为什么需要?#

为什么需要 LIB 文件:提供标准单元的时序和功耗信息,支持 STA, Power 分析等工具的正常运行

如果没有 LEF/DEF:

1. 工艺规则约束缺失(无 LEF)

  • 工具无法获取布线层定义、设计规则(如间距、宽度等)。
  • 导致不符合工艺要求的设计,可能无法制造或导致高失败率。

2. 标准单元信息缺失(无 LEF)

  • 工具无法识别单元尺寸和引脚位置,无法完成单元放置和布线。
  • 导致布局阶段停滞。

3. 无法记录物理实现信息(无 DEF)

  • 设计阶段的物理信息无法在工具间传递,跨工具协作受阻。
  • 布局布线后的结果无法保存或复用,设计验证与迭代困难。

Refs#

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。