1. DRC 基础概念
1.1 什么是设计规则检查(DRC)
设计规则检查(Design Rule Check,DRC)是芯片物理验证流程中最基础、最核心的环节。它通过自动化工具(如 Calibre)将版图(Layout)中的几何图形与代工厂(Foundry)定义的工艺规则进行逐条比对,确保版图在光刻、刻蚀、沉积等实际制造过程中能够被正确生产,不会因图形间距过近、线宽过窄或交叠异常而导致芯片失效。
核心定义: DRC 是连接“电路设计意图”与“工艺制造能力”之间的强制性质量关卡。任何 DRC 错误都意味着该版图区域在物理制造中存在短路、断路或可靠性风险。
1.2 DRC 在芯片设计流程中的位置
DRC 位于芯片设计后端流程的物理验证阶段,通常在版图设计完成之后、寄生参数提取(LVS/PEX)和流片(Tapeout)之前执行。下图展示了 DRC 在完整设计流程中的关键位置:
实践要点: 在大型 SoC 项目中,DRC 通常需要迭代多轮。每轮修复后必须重新运行 DRC 直至零错误(Clean),才能进入下一阶段。Calibre 的 DRC 运行效率和错误定位能力直接影响项目进度。
1.3 常见 DRC 错误类型概述
代工厂提供的 DRC 规则文件(通常为 .rul 或 .svrf 格式)包含数百到数千条规则。这些规则可以归纳为以下几大类,每类对应不同的物理制造约束:
| 错误类别 | 典型规则示例 | 物理含义 | 常见后果 |
|---|---|---|---|
| 宽度规则 (Width) |
最小线宽 ≥ 0.18μm 最小沟道长度 ≥ 0.13μm |
光刻胶显影时,过细的线条会断裂或缺失 | 断路、电阻增大 |
| 间距规则 (Spacing) |
同层金属间距 ≥ 0.20μm 多晶硅与有源区间距 ≥ 0.15μm |
相邻图形太近会导致桥接短路或漏电 | 短路、漏电流 |
| 包围规则 (Enclosure) |
接触孔被金属包围 ≥ 0.10μm 通孔被上下层金属包围 ≥ 0.12μm |
孔与金属层对位偏差时,必须保证完全接触 | 接触不良、断路 |
| 密度规则 (Density) |
金属密度 30% ~ 70% 多晶硅密度 20% ~ 60% |
CMP 平坦化需要均匀的图形密度,避免凹陷或凸起 | 平坦度失效、焦点偏移 |
| 天线规则 (Antenna) |
栅极天线比 ≤ 1000 | 等离子体刻蚀时,长金属线会收集电荷击穿栅氧 | 栅氧击穿、器件失效 |
| 阱/衬底接触规则 (Well/Tap) |
NMOS 距衬底接触 ≤ 20μm PMOS 距 N 阱接触 ≤ 20μm |
阱电位必须通过接触孔稳定偏置,防止闩锁效应 | 闩锁、噪声耦合 |
常见误区: 初学者往往只关注宽度和间距规则,忽略密度规则和天线规则。在先进工艺(如 28nm 以下)中,密度规则和天线规则的错误占比可能超过 40%,且修复难度更高。
1.4 DRC 错误在 Calibre 中的呈现方式
Calibre 运行 DRC 后,会生成两种主要输出:
- DRC 结果数据库(.db): 二进制文件,可在 Calibre RVE(Results Viewing Environment)中图形化查看错误位置和形状。
- DRC 摘要报告(.sum / .log): 文本文件,列出每条规则的检查结果、错误总数和违规示例坐标。
一个典型的 DRC 错误报告条目示例如下:
RULE: M1_MIN_SPACING (M1 spacing < 0.20um)
ERROR: 45 violations found
- Cell: INV_X1 (instance U1)
Layer: M1 (METAL1)
Coordinates: (12.345, 67.890) to (12.555, 68.100)
Description: M1 to M1 spacing = 0.15um, minimum required = 0.20um
- Cell: NAND2_X2 (instance U2)
Layer: M1 (METAL1)
Coordinates: (45.678, 23.456) to (45.878, 23.656)
Description: M1 to M1 spacing = 0.12um, minimum required = 0.20um
在 Calibre RVE 中,每个错误会以高亮图形叠加在版图上,并附带规则名称、违规数值和参考坐标,方便版图工程师快速定位和修复。