1. 芯片实现项目交付体系总览

芯片实现(Chip Implementation)是把 RTL 代码变成可流片 GDSII 的工程过程。它不是一个工具、一次运行,而是一条由多环节工具链、多类交付物、多个角色共同支撑的工程体系。Synopsys 的 Fusion Compiler、IC Compiler II、PrimeTime、StarRC、IC Validator、Formality、SpyGlass 等工具,分别承担综合、布局布线、时序签核、寄生提取、物理验证、形式验证与静态检查等职责。理解这套体系的第一步,是看清"工具链—交付物—阶段—角色"四者之间的对应关系。

一、Synopsys 全流程工具链的定位

工具链的定位可以按"设计阶段"和"签核属性"两个维度理解。设计阶段维度上,前端从 RTL 出发,经逻辑综合(Fusion Compiler / Design Compiler)得到门级网表;中端做布局规划、时钟树综合、布线(IC Compiler II / Fusion Compiler);后端完成寄生提取(StarRC)、时序签核(PrimeTime)、物理验证(IC Validator)与形式验证(Formality)。签核属性维度上,工具分为"实现类"和"签核类":实现类工具负责生成结果,签核类工具负责独立判定结果是否达标。例如 PrimeTime 的时序结论才是签核依据,而实现工具内部的时序估计只用于优化引导。这一区分决定了项目中的"谁说了算"。

需要特别注意的是,Synopsys 工具链并非孤立运行。它与工艺库(.db / .lib)、物理库(LEF)、寄生技术文件(ITF / QRC techfile)、约束文件(SDC)、UPF 电源意图文件共同构成输入集合。工具只是执行者,输入质量直接决定交付质量。

二、交付物的定义与层次

交付物(Deliverable)是项目阶段完成的客观证据。芯片实现项目的交付物可分为四层:

  • 数据交付物:门级网表、SDC 约束、UPF、DEF、GDSII、SPEF、SDF 等,是后续环节的直接输入。
  • 报告交付物:时序报告、DRC/LVS 报告、功耗报告、面积报告、形式验证报告,用于判定是否达标。
  • 签核交付物:由签核工具产出的最终结论,如 PrimeTime 的时序签核报告、IC Validator 的 clean DRC/LVS 结果。
  • 文档交付物:约束说明、时钟架构文档、签核清单(Sign-off Checklist)、版本记录。

交付物的关键属性是"可复现":给定同一版输入与脚本,应能重新生成同一结果。因此脚本、版本号、工具版本必须随交付物一并归档。

三、项目阶段划分

典型芯片实现项目可划分为六个阶段:RTL 准备与约束开发、逻辑综合、布局规划与电源规划、布局布线与时钟树综合、寄生提取与时序签核、物理验证与流片交付。每个阶段都有明确的入口条件、出口交付物和判定标准。阶段之间不是简单串行,时序、功耗、面积(PPA)的权衡往往需要回溯迭代。

阶段推进的核心判断逻辑:上一阶段的出口交付物是否满足下一阶段的入口条件。例如综合后的网表必须通过形式验证(Formality)且时序无重大违例,才能进入布局规划。

四、角色职责

项目角色通常包括:RTL 设计工程师(提供 RTL 与功能意图)、实现工程师(综合、布局布线、优化)、时序签核工程师(PrimeTime 签核与约束审查)、物理验证工程师(DRC/LVS/ERC)、DFT 工程师(扫描链与测试逻辑)、项目负责人(进度、风险与交付物完整性)。角色之间通过约束文件、网表版本和签核报告进行交接,交接点的清晰程度直接决定项目返工率。

芯片实现项目交付体系:工具链 · 交付物 · 阶段 · 角色 ① RTL与约束 SDC / UPF 开发 ② 逻辑综合 Fusion Compiler ③ 布局与电源 Floorplan / PG ④ 布线与CTS IC Compiler II ⑤ 提取与签核 StarRC / PrimeTime ⑥ 验证 ICV RTL / SDC / UPF 约束版本 门级网表 综合报告 DEF / PG网表 布局报告 布线DEF / SPEF 时序报告 签核时序报告 SDF / SPEF GDSII DRC/LVS 角色职责映射 RTL设计工程师 实现工程师 实现工程师 实现工程师 时序签核工程师 物理验证 签核工具(独立判定,不参与优化) PrimeTime 时序签核 StarRC 寄生提取 IC Validator DRC/LVS Formality 形式验证 SpyGlass 静态检查 PPA 不达标时回溯迭代 入口条件:上一阶段出口交付物通过判定 → 下一阶段启动;签核结论以签核工具为准 阶段 交付物 角色 签核工具 回溯迭代

五、阶段入口与出口的判定示例

以逻辑综合阶段为例,其入口条件是:RTL 代码通过 SpyGlass 静态检查、SDC 约束完成时钟定义与 I/O 约束、工艺库版本确认。出口交付物包括:门级网表(.v)、综合后 SDC、面积/时序/功耗报告、Formality 形式验证通过记录。判定标准可量化为:WNS(最差负裕量)不低于 -0.05 ns(示例阈值,实际以项目签核标准为准)、TNS 在可接受范围、面积不超过预算的 105%。若未达标,需回到约束或 RTL 层面调整,而非直接进入布局阶段。

阶段推进的"门禁"思维:每个阶段结束时,用一份签核清单逐项确认交付物是否齐全、报告是否达标、脚本是否可复现。门禁不通过,不进入下一阶段。

六、交付物完整性检查清单(示例)

阶段关键交付物判定依据责任角色
逻辑综合门级网表、综合SDCFormality通过、WNS≥-0.05ns实现工程师
布局规划DEF、PG网表电源网络IR drop初评通过实现工程师
布线与CTS布线DEF、SPEFDRC初检无短路、时钟偏差达标实现工程师
时序签核PrimeTime报告、SDFWNS/TNS满足签核标准时序签核工程师
物理验证GDSII、DRC/LVS报告DRC/LVS clean物理验证工程师

这张清单的价值在于把"项目是否可推进"从主观判断变成可核对的事实。实际项目中,清单字段会随工艺节点、项目类型(SoC、IP、ASIC)和签核标准调整,但"交付物—判定依据—责任角色"三要素始终保留。

七、体系运行中的常见风险

第一,约束与实现脱节:SDC 中的时钟定义与实际时钟树结构不一致,导致签核阶段出现大量虚假违例。第二,交付物版本混乱:网表、SDC、SPEF 版本不匹配,签核结果不可复现。第三,角色交接模糊:综合工程师与签核工程师对"时序达标"的理解不同,返工成本高。第四,工具版本漂移:不同阶段使用不同版本的库或工具,结果不可比。这些风险的共同解法是:版本受控、脚本固化、签核标准前置定义、交接点书面确认。