DRC为零代表版图没问题吗:LVS、天线、密度和可靠性还都没算
更新时间:2026-10-28。本文是「集成电路大类 · 芯片设计」入门层的一篇问答。前面 布局布线入门 讲了版图怎么从门级网表长出来,流片(Tape-out)是怎么回事 讲了交给晶圆厂之前要过一串签核。这一篇只回答一个新人最常误判的问题:工具报「DRC 0 violations」,是不是版图就没问题、可以交片了?
本文要回答的问题
- DRC 为零,到底证明了什么、没证明什么?
- DRC clean 之后,LVS、天线规则、密度这些检查各管什么?
- 为什么电迁移、IR Drop 这类可靠性问题 DRC 根本看不见?
- 把「DRC=0 就当版图过关」交出去,会发生什么?
简短结论
不代表。 DRC(Design Rule Check,设计规则检查)只回答一个问题:「版图上的几何图形是否违反工艺厂给的最小线宽、最小间距、最小包围这类几何规则」。它为零,只说明版图「画得不违规」,离「版图没问题」还差得远——连接关系对不对(LVS)、加工时会不会被等离子体打坏栅氧(天线规则)、金属密度是否均匀(CMP 良率)、芯片上电后会不会几年内烧断导线(电迁移)、电压掉到门电路翻转是否还正常(IR Drop),这些 DRC 一概不管。把 DRC=0 当签核完成,是后端新人最常见、也最贵的一个误区。
理由一:DRC 只管几何,不管「连得对不对」
DRC 的输入是版图图形本身,它不知道这份版图应该实现什么电路。于是会出现一种极端情况:版图里少连了一根线,DRC 照样报零——少一根金属不违反任何间距规则。
管「连接对不对」的是 LVS(Layout Versus Schematic,版图与原理图一致性检查):它从版图里提取出器件和连线网络,跟门级网表逐一比对,确认每个晶体管的源漏栅接到了该接的网络上。DRC 和 LVS 的分工是签核里最基本的一对:
读这张对比卡抓一条主线:DRC 和 LVS 是两个正交的维度,一个管「形状合不合法」,一个管「连得是不是设计要的」。只有两列都绿了,版图才进入「下一步该看可靠性」的阶段,第三列那些检查才排得上号。
理由二:天线规则管的是「加工过程中就被打坏」
天线规则(Antenna Rule)是独立于普通 DRC 的一类工艺损伤检查。芯片制造时,金属层是逐层用等离子体刻蚀出来的;刻蚀过程中金属线会像天线一样积累电荷,如果某一段金属只连到一个晶体管的栅极、面积又很大,积累的电荷无处泄放,就可能把薄薄的栅氧击穿——芯片还没出厂,管子已经伤了。
普通 DRC 不报这个,因为它不是「间距/线宽」问题,而是「导体面积与所连栅面积的比值」问题。EDA 工具用专门的 antenna check 规则跑,常见的修法是给长线二极管泄放路径、插 buffer 把长线打断、或跳层走线。这类违规只在天线检查里现形,DRC 报告里永远看不到。
理由三:密度规则管的是「整片晶圆磨不磨得平」
先进工艺里金属层要靠 CMP(化学机械抛光)把表面磨平,才能往上叠下一层。如果版图上金属密度很不均匀——一块区域挤满线、隔壁一大片空着——抛光垫压下去受力不均,就会磨出坑(dishing)和介质侵蚀(erosion),上层金属落在坑洼表面上,良率直接打折。
所以工艺厂给的是密度上下限规则(每层金属在每个检查窗口内的填充比例必须落在某个区间),违反下限的区域要由工具自动填哑元金属(dummy fill)补足。这类检查常单独跑密度规则卡,填哑元之后还可能引入新的寄生电容、反过来影响时序——所以它是「DRC 报零」之后才轮到的一道工序,而不是 DRC 本身。
理由四:电迁移与 IR Drop 是「上电之后」的问题,几何检查看不见
DRC 是静态几何检查,它假设「线画出来就行」。但芯片是要通电跑很多年的,这里有两个 DRC 原理上就管不了的问题:
- 电迁移(EM,Electromigration):大电流长期流过分窄的金属线,会把金属原子慢慢「吹走」,几年后导线可能断开或短路。规则是「这段电流需要多宽的线」,DRC 不知道电流多大,必须由专门的 EM 分析结合功耗数据来判。
- IR Drop(压降):电源网电阻会让芯片内部实际电压低于供电电压,掉得太多门电路就变慢甚至翻转不动。这要做电源网络仿真,同样是 DRC 视野之外的东西。
可以把「版图签核」想成一座分层的楼,DRC 只是最底下那层:
读这张图抓住一点:四层是递进的,下层不过查上层没意义,但下层过了完全不代表上层没问题。DRC=0 只是拿到「继续检查」的入场券,最上面红色那层(可靠性)恰恰是出问题代价最大的地方。
一个典型例子
一个真实的翻车场景是这样的:后端工程师跑完 P&R,工具报告 DRC 0 violations,就直接出了 GDS 交给下游。结果 LVS 一跑发现几千个 mismatch——时钟树工具在优化时换了部分单元的驱动档位,导出的网表没同步,版图里器件的 W/L 参数和网表对不上;再跑天线检查又报出两百多处,集中在布线后期自动插的 repeater 上。两轮修复花了三周,流片窗口差点错过。
这个例子里 DRC 从头绿到尾,但版图在「连接正确」和「制造可行」两层都不合格。DRC=0 给出的是虚假的安全感。
常见误区
- 「DRC=0 就等于 foundry 会收」:晶圆厂的 sign-off 要求是一整份清单,DRC、LVS、天线、密度、ERC 一个都不能少,少任何一项 tape-out 审查都过不了。
- 「天线违规可以 waive 掉」:少量可以评估后豁免,大面积天线违规说明布线方法有问题,豁免只是把风险带进硅片。
- 「dummy fill 是工具自动的事,不用管」:自动填充会改变寄生参数,填完要重新提寄生、重跑时序,见 时序分析 的基本流程。
- 「模拟版图 DRC 干净就够了」:模拟版图对匹配、寄生更敏感,还有对称性、共质心等 DRC 查不出的要求。
- 「RTL 仿真过了,物理验证只是走流程」:恰恰相反,RTL 过了不代表能流片,物理验证和时序签核是独立的一整条线。
这一篇在知识体系里的位置
- 想看版图是怎么从网表长出来的 → 布局布线入门、物理设计;
- 想看交片前完整签核清单与流程 → 流片(Tape-out)是怎么回事;
- 想看交给晶圆厂的文件格式本身 → GDSII 与 OASIS;
- 想看密度、缺陷如何影响成品率 → 良率基础;
- 想看这些检查都靠什么工具跑 → EDA 工具链全景。
一句话总结
一句话总结:DRC 为零只证明版图没有违反最小线宽、间距这类几何规则,它不管连接对不对(那是 LVS 的事)、不管加工过程会不会打坏栅氧(天线规则)、不管金属密度是否均匀影响抛光良率(密度与 dummy fill)、更管不到上电之后的电迁移和 IR Drop——版图签核是「几何正确 → 连接正确 → 制造可行 → 工作可靠」四层递进,DRC=0 只是最底层过关,把四层全走完才算版图真的没问题。