4. 先进封装DRC规则开发实战

先进封装DRC与前端CMOS DRC最大的区别在于:版图层不再只是“多晶硅—扩散—金属”的平面堆叠,而是由RDL再布线层、UBM凸点下金属、Bump开窗、TSV深孔、介质开孔与钝化层共同构成的准三维结构。规则检查必须同时回答两个问题:平面尺寸是否满足工艺窗口,以及层与层之间的覆盖、开窗、包围关系是否满足可靠性要求。本节以SVRF为实现语言,围绕五类典型规则展开,并给出可调试的写法。

一、RDL线宽、间距与拐角规则

RDL通常用铜大马士革或铜柱工艺实现,线宽与间距直接决定电流密度与串扰。SVRF中先用层运算提取RDL图形,再做宽度与间距检查。以某示例工艺为例,RDL最小线宽0.8μm、最小间距0.8μm、拐角处最小内角半径0.5μm,写法如下:

// 提取RDL主体图形
RDL = LAYER RDL_DRAW 1
// 线宽检查:小于0.8μm报错
RDL_WIDTH = WIDTH RDL < 0.8
// 间距检查:同层间距小于0.8μm报错
RDL_SPACE = SPACE RDL < 0.8
// 拐角检查:内角小于90°且边长不足时提示
RDL_CORNER = INTERNAL RDL < 90 ANGLE
// 输出到结果层
DRC ERROR RDL_WIDTH "RDL线宽不足0.8μm"
DRC ERROR RDL_SPACE "RDL间距不足0.8μm"
DRC ERROR RDL_CORNER "RDL拐角过尖,建议圆角化"

调试时最常见的误报来自“线宽检查把拐角斜边当成窄线”。解决方法是先用ANGLE或INSIDE把拐角区域单独提取,再对非拐角区域做WIDTH检查。另一个坑是RDL与Pad连接处的渐变收窄,若工艺允许局部收窄,应通过REGION或AREA限定检查范围,而不是全局放宽阈值。

二、Bump开窗与UBM规则

Bump开窗是钝化层上为凸点预留的开口,UBM是开窗内露出的金属叠层。核心规则有三条:开窗必须完全落在UBM内(UBM包围开窗),开窗不能超出钝化层边界,UBM不能与相邻RDL短路。SVRF实现:

// 开窗与UBM的包围关系
OPEN = LAYER BUMP_OPEN 1
UBM  = LAYER UBM_DRAW 1
// UBM必须包围开窗,包围量≥1.5μm
UBM_ENCLOSE = ENCLOSE UBM OPEN < 1.5
// 开窗不得超出钝化层
PASS = LAYER PASSIVATION 1
OPEN_OUT = NOT OPEN PASS
// UBM与RDL间距
RDL = LAYER RDL_DRAW 1
UBM_RDL_SPACE = SPACE UBM RDL < 1.0
DRC ERROR UBM_ENCLOSE "UBM对开窗包围不足1.5μm"
DRC ERROR OPEN_OUT "Bump开窗超出钝化层"
DRC ERROR UBM_RDL_SPACE "UBM与RDL间距不足1.0μm"

调试要点:ENCLOSE的方向性必须明确——是UBM包围OPEN,不是OPEN包围UBM。若写反,会得到大量“包围不足”的假错。另外,开窗通常由多个子图形拼成,建议先做MERGE再检查,避免相邻开窗被误判为超出钝化层。

先进封装DRC五类规则检查关系图 RDL 再布线层 线宽 ≥ 0.8μm 间距 ≥ 0.8μm 拐角内角 ≥ 90° Bump开窗 / UBM UBM包围开窗 ≥ 1.5μm 开窗不超出钝化层 UBM与RDL间距 ≥ 1.0μm TSV / 微凸点 TSV直径 ≥ 5μm TSV间距 ≥ 10μm 微凸点直径 ≥ 20μm 介质开孔 开孔尺寸 ≥ 2μm 开孔间距 ≥ 1.5μm 开孔与RDL对准 钝化层覆盖 覆盖RDL ≥ 1.0μm 覆盖UBM边缘 ≥ 0.5μm 无针孔/断裂 调试核心:先MERGE再检查,明确ENCLOSE方向,拐角区域单独提取 误报排查顺序:层提取 → 方向性 → 阈值 → 区域限定

三、TSV与微凸点规则

TSV是穿透硅通孔,微凸点是芯片间互连的微小焊点。TSV规则关注直径、间距、与有源区的距离;微凸点关注直径、高度比与对准精度。示例参数:TSV直径≥5μm、TSV间距≥10μm、TSV到有源区距离≥3μm;微凸点直径≥20μm、高度比0.5~1.0。SVRF写法:

TSV = LAYER TSV_DRAW 1
AA  = LAYER ACTIVE 1
TSV_D = WIDTH TSV < 5
TSV_S = SPACE TSV < 10
TSV_AA = SPACE TSV AA < 3
DRC ERROR TSV_D "TSV直径不足5μm"
DRC ERROR TSV_S "TSV间距不足10μm"
DRC ERROR TSV_AA "TSV距有源区不足3μm"

TSV检查的难点在于深孔侧壁的倾斜角。若工艺为锥形孔,版图上的直径是顶部尺寸,底部更小,规则应基于底部尺寸或给出锥度补偿。调试时可用SIZE对TSV做内缩模拟底部,再检查间距。

四、介质开孔与钝化层覆盖

介质开孔用于连接不同金属层,钝化层覆盖则保护芯片表面。介质开孔规则包括开孔尺寸、开孔间距、开孔与下层金属的对准;钝化层覆盖规则包括覆盖RDL的宽度、覆盖UBM边缘的宽度以及针孔检查。示例:介质开孔≥2μm、开孔间距≥1.5μm、钝化层覆盖RDL≥1.0μm、覆盖UBM边缘≥0.5μm。

VIA = LAYER VIA_DRAW 1
VIA_W = WIDTH VIA < 2
VIA_S = SPACE VIA < 1.5
PASS = LAYER PASSIVATION 1
RDL  = LAYER RDL_DRAW 1
PASS_RDL = ENCLOSE PASS RDL < 1.0
UBM  = LAYER UBM_DRAW 1
PASS_UBM = ENCLOSE PASS UBM < 0.5
DRC ERROR VIA_W "介质开孔不足2μm"
DRC ERROR VIA_S "介质开孔间距不足1.5μm"
DRC ERROR PASS_RDL "钝化层覆盖RDL不足1.0μm"
DRC ERROR PASS_UBM "钝化层覆盖UBM边缘不足0.5μm"

钝化层覆盖检查最容易出现“覆盖量够但形状断裂”的问题。建议在ENCLOSE之后追加DENSITY或AREA检查,确认覆盖区域连续。若钝化层开窗与Bump开窗共用同一层,需先用NOT或AND分离两类开窗,否则覆盖检查会把Bump开窗误判为钝化层缺失。

五、调试流程与常见误报

面对一个报错,建议按以下顺序排查:第一,确认层提取是否正确,用LAYOUT或LAYER把中间层输出到GDS对照;第二,确认方向性,ENCLOSE、SPACE、WIDTH的先后顺序不能颠倒;第三,确认阈值单位,SVRF默认单位与工艺库一致,若库为μm而规则写nm会差1000倍;第四,确认区域限定,用REGION排除Pad、划片槽等特殊区域;第五,确认图形合并,相邻小图形未MERGE会导致间距误报。

调试时可在规则文件中插入DRC CHECK MAP或DRC RESULTS DATABASE,把中间层和结果层同时输出,便于在版图工具中逐层比对。对于拐角、TSV锥度、钝化层断裂这类几何敏感规则,建议先用小面积测试图形验证规则,再全芯片运行。
注意:ENCLOSE A B表示A包围B,不是B包围A。若写反,报错数量会急剧增加且方向完全错误。另外,WIDTH检查默认测量图形内部最短距离,对斜边和圆弧会给出近似值,高精度工艺应改用WIDTH ... ANGLE或EXTERNAL组合。

把上述五类规则组织成一个可维护的规则文件时,建议按“层定义—提取—检查—输出”四段式排列,每类规则独立成块并加注释。这样在工艺迭代时只需修改对应块的阈值,而不必通读全文。规则开发完成后,用一组已知合格与已知不合格的测试图形做回归,确认每条规则都能正确报错且不误报,才算完成闭环。