作者:Darren H. Chen
方向:EDA 工具工程 / Backend Flow / 后端实现流程 / 工程自动化 / 验证基础设施
demo:LAY-BE-07_project_library
标签:Backend Flow EDA APR Project Library LEF Liberty 标准单元库 工艺库 后端实现

后端实现流程不能只依靠网表来理解一个数字设计。

一份 Verilog 门级网表可能会告诉工具:名为 U1 的 instance 使用了名为 INVX1 的 cell,并且 U1/Y 驱动了某条 net。可是它不会告诉工具:INVX1 的 pin 在哪里,cell 有多宽,是否能够放进标准单元 row,哪些 metal layer 可以用于 routing,从 AY 的 delay arc 长什么样,这个 cell 是否可以用于 hold fixing,或者它是否拥有最终 stream-out 所需的 layout view。

这些语义来自 technology 和 library context。

本文讨论 Project Library 在后端 EDA 工具中的工程作用。Project Library 不只是一个包含 .lef.lib.gds.tf 或 rule file 的目录。它是工具侧的基础设施,用来把外部 technology file 和 library file 转换为内部一致的模型,并供 design import、linking、floorplanning、placement、clock tree construction、routing、timing analysis、power analysis、physical verification handoff 以及 final export 使用。

本文不聚焦某个厂商的具体命令,而是聚焦底层架构和方法论:

外部 technology 和 library 文件
        ↓
Project Library 构建
        ↓
Technology / physical / timing / power / layout 多视图
        ↓
Design database linking
        ↓
Backend implementation 各阶段

一旦这一层薄弱,后面每个阶段的可信度都会下降。反过来,如果这一层组织得好,很多后续失败就更容易解释、复现和修复。


1. 为什么只有 Netlist 不够?

门级网表描述的是一个逻辑 instance graph。

例如:

INVX1  U1 (.A(a),  .Y(n1));
NAND2X1 U2 (.A(n1), .B(b), .Y(n2));
DFFQX1 U3 (.D(n2), .CK(clk), .Q(q));

这会告诉工具:

U1 是 INVX1 的一个 instance。
U2 是 NAND2X1 的一个 instance。
U3 是 DFFQX1 的一个 instance。
这些 instance 通过 net 连接在一起。

但这只是逻辑骨架。后端实现还需要更多信息。

对于 INVX1,工具需要知道:

问题 需要的模型
这个 cell 多大? physical abstract view
它能否放进 row? site 与 row 兼容性
pin AY 在哪里? abstract view 中的 pin geometry
这些 pin 使用哪些 metal layer? LEF layer 和 pin shape
AY 的 delay 是什么? Liberty timing arc
output transition model 是什么? Liberty lookup table
input capacitance 是多少? Liberty pin capacitance
leakage power 是多少? Liberty power data
它能否被优化器使用? library attribute 和 flow rule
它是否有最终 layout view? GDS/OASIS 或等价 layout database

没有这些模型,instance 只是一个符号引用。它有名字,但还没有物理、时序、功耗和制造语义。

Project Library 就是为这些 instance 提供语义的层。


2. Project Library 是工具侧知识库

可以把 Project Library 理解为后端工具的知识库。

它回答的问题包括:

这个项目面向哪个 technology?
有哪些 routing layer?
有哪些 cut layer?
manufacturing grid 是什么?
有哪些 standard-cell site?
有哪些 cell master 可用?
哪些 cell 同时有 timing view 和 physical view?
哪些 cell 可以用于 placement?
哪些 cell 可以用于 clock tree construction?
哪些 cell 可以用于 hold fixing?
有哪些 macro abstract 可用?
哪些 layout cell 可用于 final export?
应该使用哪些 RC 或 parasitic model?
有哪些 antenna、EM 或 route rule?

这远远不只是 file loading。EDA 工具必须解析外部文件、归一化数据、检查一致性、绑定多个 view、缓存内部表示,并让这些信息能够被后续阶段查询。

因此,一个实际可用的 Project Library 通常有两种身份:

  1. 文件级身份:foundry、IP vendor、standard-cell vendor 或内部 methodology team 提供的外部文件。
  2. 数据库级身份:工具读取、转换、索引和验证这些文件之后创建出来的内部模型。

工程问题不只是“把文件收集齐”。真正的工程问题是:确认工具已经基于这些文件构建出一致的内部上下文。


3. 高层架构

下面的图展示了基本架构。

Technology 文件

Project Library

LEF Abstract

Liberty Timing/Power 模型

GDS/OASIS Layout View

RC / Parasitic 模型

EM / IR / Antenna 规则

NDR / Route Rule

Technology Context

Physical Cell Context

Logical / Timing Context

Layout / Export Context

Rule Context

Design Database

Floorplan

Placement

Clock Construction

Routing

Timing Analysis

PV Handoff

Export

关键点在于:Project Library 位于外部文件格式和实时 design database 之间。

Design database 并不是直接依赖 raw file 进行推理,而是依赖这些文件生成的内部 library context 进行推理。


4. Project Library 中的主要模型类型

Project Library 通常管理多类模型。每类模型提供不同层面的语义。

模型类型 典型来源 主要信息 使用阶段
Technology model technology file、LEF technology section unit、grid、layer、via、routing direction、rule primitive floorplan、route、DRC precheck、export
Site and row model LEF、technology setup standard-cell site、row height、symmetry、orientation floorplan、placement legalization
Standard-cell abstract LEF cell boundary、pin、obstruction、class、symmetry placement、routing、pin access
Macro abstract LEF macro boundary、pin、blockage、internal obstruction floorplan、top-level routing
Timing and power model Liberty timing arc、constraint、power、capacitance、function link、timing analysis、optimization
Layout view GDS/OASIS 最终版图几何 stream-out、signoff handoff
RC model TLU+、tech RC、extraction model layer resistance/capacitance、coupling model timing、extraction、route analysis
Antenna model rule file 或 technology setup antenna constraint 和 ratio routing、antenna repair
EM/IR model technology/rule file current limit、voltage-drop 假设 power network analysis
Route rule / NDR model route rule setup width、spacing、via preference clock routing、critical net、special net

薄弱的 Project Library 会把这些模型看成互不相关的文件;成熟的 Project Library 会把它们看成同一个 technology 和 cell universe 的多个协调 view。


5. File View 与 Internal View

一个常见误区是:以为文件成功加载,就代表模型已经准备好。

实际上,file loading 只是第一步。工具还需要把文件级内容转换成内部对象。

5.1 LEF 示例

一个 LEF cell abstract 可能包含:

MACRO INVX1
  CLASS CORE ;
  ORIGIN 0 0 ;
  SIZE 1.0 BY 2.0 ;
  PIN A ...
  PIN Y ...
  OBS ...
END INVX1

加载之后,工具可能创建如下内部对象:

lib cell master: INVX1
cell width: 1.0
cell height: 2.0
site compatibility
pin A physical shapes
pin Y physical shapes
routing obstruction list
placement class
symmetry rules

5.2 Liberty 示例

一个 Liberty cell 可能包含:

cell (INVX1) {
  area : ...;
  pin (A) { direction : input; capacitance : ...; }
  pin (Y) { direction : output; function : "!A"; timing() { ... } }
}

加载之后,工具可能创建:

timing cell: INVX1
input pin: A
output pin: Y
logic function: Y = !A
input capacitance table
delay arc A -> Y
transition model
leakage data
power model
usage attributes

5.3 Technology 示例

一个 technology model 可能描述:

unit
manufacturing grid
routing layer
cut layer
via definition
minimum width
minimum spacing
preferred direction

加载之后,工具可能构建:

technology database
layer table
routing resource table
cut/via rule table
track-grid basis
geometry legality rules
export layer mapping basis

重要的是:

外部文件是文件语法。
Project Library 对象是工具语义。

Backend flow 依赖的是后者,而不只是前者。


6. 多视图一致性

一个标准单元通常有多个 view。

Cell 名称: INVX1

Logical View

Physical Abstract View

Timing View

Power View

Layout View

function / port

LEF pin / boundary / blockage

timing arc / constraint

leakage / internal power

GDS/OASIS geometry

这些 view 往往来自不同文件,有时甚至来自不同团队或 vendor。Project Library 必须把它们绑定在一起。

这种绑定通常基于名称和结构化属性:

cell name
pin name
pin direction
cell class
site compatibility
power/ground pins
layout cell name
corner name
voltage domain
process condition

如果绑定失败,设计仍然可能部分加载,但后续行为会变得不可预测。

例如:

不一致问题 可能的下游症状
cell 存在于 Liberty,但不存在于 LEF timing 可能可用,但 placement 无法放置
cell 存在于 LEF,但不存在于 Liberty physical view 存在,但 timing analysis 无法建模
pin 存在于 Liberty,但不存在于 LEF timing arc 存在,但 routing 无法访问物理 pin
LEF pin shape 缺失或 layer 错误 route connection 或 pin access 失败
cell height 与 site row 不匹配 placement legalization 失败
GDS cell name 与 LEF cell name 不一致 stream-out 或 signoff mismatch
Liberty corner set 不完整 scenario setup 或 timing coverage 问题
power pin 在不同 view 中不一致 power routing 或 LVS mismatch 风险

因此,Project Library 必须被视为一致性系统,而不是单纯的文件导入步骤。


7. Technology Context 必须先建立

Technology context 是后端实现世界的最底层。

在工具能够理解 cell、row、track、pin、route 或 spacing 之前,它必须先知道 technology universe:

coordinate unit
manufacturing grid
routing layer
cut layer
layer direction
minimum width rule
minimum spacing rule
via definition
site definition
track-grid assumption

一个简化的 technology stack 可以这样表示:

+--------------------------------------------------+
| M6 : routing layer, horizontal, wide/global use   |
+--------------------------------------------------+
| V5 : cut layer                                    |
+--------------------------------------------------+
| M5 : routing layer, vertical                      |
+--------------------------------------------------+
| V4 : cut layer                                    |
+--------------------------------------------------+
| M4 : routing layer, horizontal                    |
+--------------------------------------------------+
| V3 : cut layer                                    |
+--------------------------------------------------+
| M3 : routing layer, vertical                      |
+--------------------------------------------------+
| V2 : cut layer                                    |
+--------------------------------------------------+
| M2 : routing layer, horizontal                    |
+--------------------------------------------------+
| V1 : cut layer                                    |
+--------------------------------------------------+
| M1 : local routing / pin access layer             |
+--------------------------------------------------+

如果这一层错误,后续阶段会以看似不相关的方式失败。

例如:

Technology context 问题 后续症状
database unit 错误 layout dimension 缩放错误
manufacturing grid 错误 off-grid shape、export 问题
routing layer 缺失 route 无法使用预期资源
cut layer 缺失 via insertion 失败
preferred direction 错误 routing congestion 或非标准拓扑
spacing rule 不完整 早期 physical check violation 数量巨大
site definition 错误 row generation 或 legalization 失败

这就是为什么 Project Library 构建应该从 technology model 开始,而不是从 netlist 开始。


8. LEF 是 Physical Abstract Contract

LEF 常被描述为 physical abstract format。在后端实现中,它更像是 library generation 与 physical implementation 之间的合同。

对于标准单元,LEF 告诉后端工具:

cell boundary 在哪里
它属于哪个 site
cell 的 width 和 height 是多少
每个 pin 位于哪里
每个 pin 使用哪些 layer
哪些内部区域被 block
cell 是 CORE、BLOCK、PAD,还是其他 class

对于 macro,LEF 告诉工具:

macro size
macro pin
routing blockage
placement boundary
obstruction geometry
macro 周围或上方允许使用哪些 routing layer

下面的简化图展示了 LEF 如何抽象一个标准单元。

+-------------------------------+
|           INVX1 LEF            |
|                               |
|  M1 pin A        M1 pin Y      |
|   +---+           +---+        |
|   | A |           | Y |        |
|   +---+           +---+        |
|                               |
|  OBS: internal metal shapes    |
|                               |
+-------------------------------+
| boundary / site-compatible box |
+-------------------------------+

Placement 使用 boundary 和 site 信息;routing 使用 pin shape 和 obstruction;pin access analysis 同时依赖 pin geometry 和局部 routing rule;export 与 physical verification handoff 依赖一致的命名和几何假设。

如果 LEF 不完整,flow 可能在 library loading 之后很久才失败。因此,LEF 检查应该成为 Project Library verification 的一部分。


9. Liberty 是 Timing、Power 和 Logical Semantics

Liberty 常被称为 timing library,但后端实现对它的使用范围更广。

一个 Liberty view 可以提供:

cell area
pin direction
logic function
timing arc
setup / hold constraint
minimum pulse width constraint
input capacitance
output drive behavior
transition table
internal power
switching power
leakage power
clock pin attribute
operating condition
usage restriction

对于 placement 和 optimization,timing model 不只是报告参考。它会影响很多决策,例如:

哪个 cell 可以替换另一个 cell
哪个 buffer 适合某条 net
哪个 inverter 或 buffer size 可以降低 delay
哪些 cell 适合 hold fixing
哪些 clock-related cell 被允许使用
哪些 cell 应该避免使用

对于 timing analysis,Liberty 定义 timing graph 的语义:

Input Pin A

Timing Arc A 到 Y

Output Pin Y

Net Delay

下一级 Cell Input

如果 Liberty 缺失或不一致,设计可能仍然有物理表示,但 timing closure 会变得不可靠。


10. Library Context 与 Design Linking

Project Library 和 design database 是不同层。

Project Library:
  定义有哪些 cell master,以及这些 cell master 的含义。

Design Database:
  定义当前设计中有哪些 instance,以及它们如何连接。

二者的关系可以表示为:

Gate-Level Netlist

Design Instance

Project Library

Library Master

Linking

Resolved Design Database

Instance 拥有 physical meaning

Instance 拥有 timing meaning

Instance 可以 placement/routing

在 linking 之前,instance 只是一个引用:

U123 : INVX1

在 linking 之后,工具可以解析:

U123 使用 master cell INVX1。
INVX1 有 LEF abstract。
INVX1 有 Liberty timing arc。
INVX1 有 pin geometry。
INVX1 与 standard-cell row 兼容。
INVX1 被 flow rule 允许或限制。

这就是为什么 link failure 往往是 library failure,而不一定是 netlist failure。

常见 link 症状包括:

unresolved cell master
missing macro abstract
missing timing view
pin mismatch
black-box reference
library corner mismatch
missing physical view

一个好的 library report 可以减少猜测到底哪个文件有问题的时间。


11. Project Library 状态机

Project Library 有自己的生命周期。它不是一条 load 命令就完成的事情。

加载 technology context

加载 LEF abstract

加载 Liberty view

加载 layout / RC / rule view

运行 library check

运行最小检查

被 flow gate 接受

design import 与 link

layer/site/cell 数据缺失

timing/pin/corner 数据缺失

optional view 不完整

一致性检查失败

clean/rebuild

warning 被策略接受

Empty

TechLoaded

PhysicalViewsLoaded

TimingViewsLoaded

OptionalViewsLoaded

Verified

ReadyForLink

UsedByDesign

LibraryError

LibraryWarning

这个状态机说明了一个方法论要点:

在 design linking 变得可信之前,library 应该先通过 verification gate。

flow 不应该在不检查内部 library context 是否一致的情况下,直接从 file loading 跳到 design linking。


12. Library Verification 方法论

实际可用的 Project Library verification 方法应该检查多个维度。

12.1 文件存在性与可访问性

第一类检查很简单,但非常关键:

预期文件是否存在?
文件是否可读?
路径是否以一致方式解析?
压缩文件是否被正确处理?
重复文件是否是有意的?

这类检查可以在工具进入更昂贵的阶段之前,提前发现大量环境和路径问题。

12.2 Technology Layer 检查

检查预期的 technology object 是否存在:

routing layer
cut layer
layer direction
layer order
site definition
via definition
track/grid assumption

最小报告可以包含:

检查项 期望结果
Routing layers exist PASS
Cut layers exist PASS
Standard-cell site exists PASS
Manufacturing grid defined PASS
Layer order consistent PASS

12.3 LEF 与 Liberty 的 Cell 匹配

这是最重要的检查之一。

对于每个设计使用或 flow 允许的 cell:
  是否有 physical abstract?
  是否有 timing view?
  pin name 是否匹配?
  power/ground pin 是否匹配?
  cell class 是否合理?

一个有用的 matching table 可以这样写:

Cell LEF view Liberty view Pin match Status
INVX1 yes yes yes PASS
NAND2X1 yes yes yes PASS
DFFQX1 yes yes yes PASS
FILL1 yes no n/a ACCEPTED_PHYSICAL_ONLY
MACRO_A yes optional check needed WARN

并不是每个 cell 都必须拥有所有 view。filler、tap cell、end cap、decap、tie cell 和 physical-only cell 可能有特殊策略。重点不是强行用一条规则覆盖所有 cell,而是把策略显式化。

12.4 Pin 级一致性

Pin mismatch 是后期发现时成本最高的问题之一。

典型检查包括:

Liberty 中有 pin,但 LEF 中缺失
LEF 中有 pin,但 Liberty 中缺失
pin direction mismatch
clock pin 未识别
power/ground pin mismatch
pin shape 缺失
pin layer 不可 routable

一个简单报告可以包含:

Cell Pin Liberty direction LEF shape Status
INVX1 A input exists PASS
INVX1 Y output exists PASS
DFFQX1 CK input/clock exists PASS
MACRO_A VDD pg_pin exists PASS

12.5 Site 与 Row 兼容性

标准单元必须能够放进 row。一个 cell abstract 可以成功加载,但如果 site 信息不一致,仍然可能在 placement 阶段失败。

检查内容包括:

cell height 是否匹配 site height
cell width 是否对齐 site grid
symmetry 是否支持 row orientation
technology context 中是否存在 row site
physical-only cell 是否与 row rule 兼容

这会直接影响 placement legalization。

12.6 Optional View 策略

有些 view 对 signoff 是必需的,但对早期探索不是必需的。flow 不应该把所有 missing file 都当成同一种问题。

View Early demo Implementation flow Signoff handoff
LEF required required required
Liberty timing 相关场景 required required required
GDS/OASIS optional 通常 export 需要 required
RC model minimal demo 中 optional 真实 timing 需要 required
antenna rules minimal demo 中 optional recommended clean handoff 需要
EM/IR rules optional project-dependent power integrity closure 需要

这类策略应该写清楚,而不是隐藏在个人经验中。


13. Project Library 报告体系

Project Library 阶段应该生成报告。这些报告不是装饰,而是证明 library context 已经构建出来的工程证据。

推荐报告包括:

reports/technology_layer_summary.rpt
reports/loaded_libraries.rpt
reports/library_cell_summary.rpt
reports/lef_liberty_match.rpt
reports/pin_mismatch.rpt
reports/site_summary.rpt
reports/library_verification.rpt
reports/library_context_status.rpt

每个报告回答不同工程问题。

Report 主要问题
technology_layer_summary.rpt 当前有哪些 technology layer 和 site 可用?
loaded_libraries.rpt 加载了哪些 library,来源路径是什么?
library_cell_summary.rpt 有哪些 cell master 可用?
lef_liberty_match.rpt 哪些 cell 的 physical view 和 timing view 匹配?
pin_mismatch.rpt pin name 和 direction 是否一致?
site_summary.rpt placement site 是否存在且可用?
library_verification.rpt library 是否通过 flow gate?
library_context_status.rpt Project Library 是否准备好进入 design link?

当下一阶段失败时,这些报告尤其有用。如果 design linking 失败,第一个问题应该是:

Project Library 是否通过了 library verification gate?

14. Demo 07 设计

LAY-BE-07_project_library 的目标是在真正关注 design import 与 linking 之前,先验证最小 Project Library context。

这个 demo 应该保持独立和小规模。它不需要完整芯片,只需要足够的数据来证明 library layer 可以被构建和查询。

推荐目录结构如下:

LAY-BE-07_project_library/
├── README.md
├── config/
│   └── env.csh
├── data/
│   ├── tech/
│   │   └── demo.tech
│   ├── lef/
│   │   └── demo_stdcell.lef
│   ├── liberty/
│   │   └── demo_stdcell.lib
│   └── netlist/
│       └── demo_top.v
├── scripts/
│   ├── run_demo.csh
│   └── clean.csh
├── tcl/
│   ├── run_demo.tcl
│   ├── load_library_context.tcl
│   ├── verify_library_context.tcl
│   └── report_library_context.tcl
├── logs/
├── reports/
└── tmp/

这个 demo 应该强调:

technology context loading
LEF abstract loading
Liberty timing/power loading
basic library query
LEF/Liberty consistency check
library summary report
library verification result

它不应该试图证明整个 backend flow。它的任务更窄:

工具能否基于最小 public/demo data 构建出一致的 Project Library context?

15. Demo 07 预期输入与输出

15.1 输入

Input Purpose
data/tech/demo.tech 最小 technology context 或 technology note
data/lef/demo_stdcell.lef 标准单元 physical abstract
data/liberty/demo_stdcell.lib 标准单元 timing 与 power model
data/netlist/demo_top.v 可选小设计,仅用于名称一致性检查
tcl/run_demo.tcl 工具侧 Tcl 主入口
config/env.csh 运行环境变量

15.2 输出

Output Purpose
logs/LAY-BE-07_project_library.log 主运行日志
logs/LAY-BE-07_project_library.cmd.log 命令轨迹
logs/LAY-BE-07_project_library.sum.log 摘要日志
reports/library_verification.rpt 主要 pass/fail 报告
reports/loaded_libraries.rpt 已加载 library 清单
reports/technology_layer_summary.rpt technology 与 layer 摘要
reports/lef_liberty_match.rpt physical/timing view 匹配报告
reports/site_summary.rpt site 与 row 相关摘要

一个好的 demo report 不应该只说文件存在,而应该说明 library context 是否已经准备好进入下一阶段。


16. 常见失败模式

Project Library 问题经常在后续 import、placement、routing 或 timing 阶段才表现出来。下面的表格可以帮助把症状映射回 library 层。

症状 可能的 library-layer 原因
link 阶段出现 unresolved standard cell netlist cell 在 library 中找不到
placement 无法 legalize cell site/row/cell height 不匹配
router 无法连接某个 pin LEF pin shape 缺失或非法
timing report 缺少路径 timing arc 或 constraint 缺失
cell 不能被 optimization 使用 cell usage attribute 问题或 timing view 缺失
macro routing 失败 macro obstruction 或 pin abstract 问题
exported layout 与 signoff 不匹配 LEF/GDS 命名或 boundary 不匹配
power routing 没有连接 cell power/ground pin 命名不一致
早期 physical check violation 数量很大 technology 或 rule context 不完整

方法论上应该自底向上 debug:

technology context
  ↓
LEF physical abstract
  ↓
Liberty timing/power view
  ↓
multi-view consistency
  ↓
design link
  ↓
implementation stage

当 library foundation 还没有验证时,不要一开始就修改 placement 或 routing 选项。


17. Project Library 作为 Stage Gate

成熟的 backend flow 应该把 Project Library 阶段视为一个 gate。

PASS

WARN Accepted

FAIL

收集 Library 输入

加载 Technology Context

加载 Physical Abstract

加载 Timing/Power View

运行 Library 一致性检查

Library Gate

允许 Design Import 和 Link

记录风险后继续

停止并修复 Library Context

这个 gate 不能模糊,应该有显式标准。

示例 gate criteria:

required files are readable
technology context is loaded
at least one valid standard-cell site exists
required standard cells have physical views
required standard cells have timing views
required pins match across physical and timing views
library summary reports are generated
no blocking library errors are present

对于最小 demo,criteria 可以较小;对于真实项目,criteria 应该更严格。


18. 工程检查清单

从 Project Library 进入 design import 之前,建议检查以下事项。

类别 检查项
File control technology 和 library path 是否全部显式?
Version control library release version 是否记录?
Technology routing layer、cut layer、grid 和 site 是否定义?
LEF standard-cell 和 macro abstract 是否加载?
Liberty required cell 的 timing 和 power view 是否加载?
Cell matching LEF 和 Liberty 的 cell name 是否匹配?
Pin matching pin name 和 direction 是否匹配?
Site compatibility cell 是否能放进合法 row?
Special cells tap、filler、end cap、tie、decap 和 clock cell 是否分类?
Reports library reports 是否生成并归档?
Gate link 前 library context 是否已被接受?

这个 checklist 比看到 import command 执行完成更重要。


19. 工程要点

Project Library 是后端实现的基础。

它把:

files 转换为 context,
names 转换为 objects,
models 转换为 constraints,
library release 转换为 flow-ready engineering assets。

后端 EDA 工具只有先理解一个设计所处的 technology 和 library universe,才能理解这个设计本身。

最重要的结论包括:

  1. 只有 netlist 不足以支撑后端实现。
  2. LEF、Liberty、technology rules、RC models 和 layout views 是同一个 implementation universe 的不同 view。
  3. Project Library construction 是语义转换步骤,而不仅是文件加载步骤。
  4. 多视图一致性对 link、placement、timing、routing 和 export 至关重要。
  5. 在 design linking 变得可信之前,应该先进行 library verification。
  6. library report 是工程证据,应该随 run 一起归档。
  7. 如果把 Project Library 阶段作为正式 gate,很多后续阶段失败会更容易解释。

20. 结语

在后端 EDA 工具理解芯片设计之前,它必须先理解这个设计所处的工艺世界。

Project Library 正是这个工艺世界进入工具内部工程上下文的入口。

可靠的 backend flow 不应该从 placement 或 routing 开始,而应该从确认 library foundation 正确、可见、可验证开始。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐