第一章:规则检查概述
什么是设计规则检查(DRC)
设计规则检查,简称DRC。说白了,就是给芯片设计做「体检」。
你想想看,芯片制造就像盖房子。光刻机、刻蚀机这些设备,它们有各自的物理极限。线宽不能太窄,间距不能太小,否则生产出来的芯片就会短路或者断路。DRC就是确保你的设计能顺利通过制造这道关。
我刚开始做芯片设计那会儿,总觉得DRC是「找麻烦」的。画好的版图,一跑DRC,满屏的报错。后来吃过亏才明白——这些规则,每一条都是用真金白银换来的教训。
核心定义:DRC是一组几何约束规则,用于验证芯片版图是否符合制造工艺的物理限制。它检查的是「能不能造出来」这个基本问题。
DRC在芯片设计流程中的位置
DRC不是最后才做的。它在整个流程中出现了好几次。
我习惯把芯片设计流程分成三个阶段:
- 前端设计阶段——写RTL代码,做功能验证。这时候不涉及DRC。
- 后端实现阶段——综合、布局布线。这时候开始接触DRC了。
- 物理验证阶段——DRC、LVS、RC提取。这是流片前的最后一道防线。
嗯,这里要注意:DRC在布局布线过程中就会跑。不是等到最后才做。现代EDA工具会在布线时实时检查,避免后期大量返工。
我的经验:我曾经在一个项目中,因为赶进度跳过了中间步骤的DRC检查,结果最后阶段发现上千个DRC违例。改了一个星期才搞定。从那以后,我坚持每完成一个模块就跑一次DRC。
DRC的基本概念与重要性
DRC检查什么?说白了就是几类几何规则:
| 规则类型 | 检查内容 | 典型值(28nm工艺) |
|---|---|---|
| 宽度规则 | 金属线、多晶硅的最小宽度 | 金属1:0.1μm |
| 间距规则 | 同层图形之间的最小距离 | 金属1间距:0.1μm |
| 包围规则 | 通孔被金属包围的最小余量 | VIA1包围:0.02μm |
| 密度规则 | 每层材料的面积密度范围 | 金属密度:20%~80% |
你可能会问:「这些规则是谁定的?」答案是晶圆厂。台积电、三星这些代工厂,会根据自家工艺线的能力,制定一套DRC规则文件。设计公司必须严格遵守。
血的教训:我曾经参与过一个项目,因为DRC规则理解有误,导致芯片流片后金属线断裂。那批芯片全部报废,损失了几十万。从那以后,我每次拿到新的工艺规则文件,都会逐条研读,不懂的地方直接找晶圆厂的AE确认。
为什么DRC如此重要?
原因有三点:
- 保证可制造性——DRC是连接设计和制造的桥梁。没有DRC,设计再漂亮也只是一堆画不出来的图形。
- 提高良率——严格的DRC规则能确保芯片在量产时有足够高的良率。我见过一些设计,DRC刚好卡在边界值上,结果量产时良率只有60%。
- 缩短开发周期——早期发现DRC问题,比流片后再改要快得多。改一次光罩的成本是几十万,时间要花好几周。
我的建议:新手工程师最容易犯的错误是「先画完再跑DRC」。正确的做法是边画边跑,每完成一个模块就检查一次。这样问题早发现早解决,不会到最后堆成山。
嗯,说到这儿,我想起一个案例。有个同事做了一版设计,DRC跑了三天三夜才出结果。为什么这么久?因为他把所有模块堆在一起一次性检查。后来我建议他分模块检查,每个模块跑半小时,发现问题立刻改。整体效率反而更高。
DRC工具本身也在进化。早期的DRC只能做简单的几何检查,现在的工具已经能处理复杂的层次化检查、天线效应检查、Latch-up检查等。但核心逻辑没变——用规则约束设计,确保它能被造出来。
最后说一句:DRC不是万能的。它只检查几何规则,不检查电路功能。功能正确性要靠LVS和仿真来保证。但DRC是流片前的第一道关卡,也是最基本的一道。这道关过不去,后面的都白搭。
可可精品资料库