☰
Cadence SiP Layout实战:从叠层约束到wire bond与flip chip设计
2026/10/7 13:19:29 网站建设 项目流程

Cadence SIP Layout 这个工具,光看名字就能劝退一批人:APD、基板、wire bond、flip chip、激光埋孔……每一个词单独拿出来都够啃半天的。我写第一章的时候,重点放在怎么把流程跑通,也就是从建库、建基板到导网表、摆die、拉线,先让完全没接触过封装设计的人知道 SIP Layout 大概长什么样。但这章要聊的事情不一样——真正投过板之后你会发现,流程通只是第一步,后面还有一堆"规则"等着你。

这一章的目标是解决从"能画出来"到"能画对"之间的差距,会涉及叠层设计、约束规则、wire bond 和 flip chip 两种互联方式的实操、平面分割与铜皮处理、DRC 与制造文件输出。无论你是从 PCB Layout 转过来,还是学校出来直接做封装,只要手里有 Cadence SiP Layout 或者 APD 这类工具,这篇内容应该能帮你少走不少弯路。

1. 第二章该解决什么问题:从"通流程"到"做对设计"

1.1 先把SIP概念说透,顺便和通信SIP划清界限

很多人第一次看到"SiP"这个词,第一反应是通信协议里的 SIP(Session Initiation Protocol),甚至有人跑到群里问"Cadence 和防火墙 SIP ALG 有什么关系"。这里先明确一下,咱们聊的是 System in Package,系统级封装,是把多个裸芯片(die)、无源器件、甚至 MEMS 传感器集成在同一个封装基板上,通过引线键合(wire bond)、倒装焊(flip chip)等方式互联,最终形成一个完整功能模块的技术。

它和 SoC 最大的区别在于:SoC 是把所有功能模块做进同一颗硅片里,工艺制程必须统一,但如果你的系统里既有射频、又有数字、还有模拟,不同工艺节点之间往往互不相容——射频器件可能最优制程是 130nm 模拟工艺,数字逻辑却是 7nm 数字工艺,硬塞到一片晶圆上要么性能打折要么良率崩掉。SIP 的做法是各自用最优工艺做好 die,再在封装级把它们拼起来。这也是 SiP 这几年在射频模组、汽车雷达、高性能计算侧越来越火的原因。

从 Layout 角度看,SIP 基板比普通 PCB 要"细"得多。普通 PCB 走线宽度是 mil 级,也就是几 mil 到几十 mil,过孔是机械钻孔;SIP 基板的线宽线距是微米级,常见 15/15μm、25/25μm,过孔用激光打孔,孔径百微米以下。如果你过去一直画 PCB,第一次切到 SIP 设计时最直观的感受就是:规则不是做不出来,而是稍不注意就违反。所以在 SiP Layout 里,"先定规则再画图"不是口号,是保命用的。

1.2 第一章流程回顾:基础流程没做对,后面全是坑

第一章我展开讲过的链路是:建工艺库 → 创建基板外形(Package Symbol)→ 导入网表 → 摆放 die 和无源器件 → 手动布线 → 简单 DRC 检查。这套链路说起来不复杂,但很多人卡在第一步的"库"上:die 的 pad 尺寸写错、bond finger 放反、assembly 层和 silkscreen 层混用,后面每一步都会被连带崩掉。

这一章的时间点,我默认你手上已经有一个能跑通的工程,有基板外形、有元件库、网表导入没问题、至少画过几根线。如果你还没到这一步,建议先回去把第一章的基础流程过一遍,因为第二章讲的叠层、约束、wire bond、flip chip 这些操作,全都建立在一个"能跑通的最小工程"之上。

我实际带人的时候经常碰到一种情况:新手画到一半来问,"为什么我 DRC 报了一千多个错?"点开一看,全是约束规则没设置、叠层物理参数是默认值导致的。这就引出第二章的核心逻辑——SIP Layout 不是"画图",是"在规则约束下做规划和取舍"。这一章我按实际项目推进顺序来讲:先准备叠层和约束,再做互联设计,再处理平面,最后检查输出。顺序对了,返工就少。

2. 开工前的准备工作:叠层、约束和库,一项都不能省

2.1 叠层设计怎么做才靠谱:材料、Dk/Df 与阻抗预算

SIP 基板叠层不像 PCB 那样动辄十几层,常见的是 2~6 层,但每一层的材料选择和厚度直接决定电气性能。基板材料主流是 BT 树脂、ABF 载板材料,高频场景会用改进型或是混压方案。反映到设计上,你需要在 Setup → Cross Section 里把每一层的介质材料、厚度、铜箔厚度敲进工具,这些参数从哪来?不要自己拍脑袋,直接找基板厂要叠层建议书,或者参考你们公司量产过的同类基板。

介质层厚度和介电常数 Dk 决定阻抗。举个实际例子,有个项目要做 50Ω 单端,参考层距离 h=50μm、Dk 约 4.0、线厚 18μm,用阻抗计算器(Polar 或 Cadence 内建工具)扫出来线宽大约在 85~90μm 附近;如果把介质压薄到 h=35μm,同样的 50Ω 线宽会收到 60μm 左右。差分 100Ω 不是简单把单端线加宽或缩窄再复制一根就行,耦合关系会让线宽和线距同时影响阻抗,我习惯的做法是先定线距(比如 120μm),再扫线宽,直到目标阻抗落在容差范围内。

注意一个很多人踩过的坑:Cross Section 里每一层的金属厚度和介质厚度一定要按基板厂的真实叠层填,不要用 Cadence 默认值。默认值有时候看起来跑得很顺,但导出的阻抗和实际制造结果完全对不上,等流片回来用 TDR 测试一看,阻抗偏了 10% 以上,这种返工非常贵。

2.2 约束规则设置:把"该遵守的规矩"写进工具里

SIP 设计里约束规则的意思是,让工具在布线、摆放、检查时有没有一张"边界清单"。我见过不少新手,布线布得很欢,直到 DRC 才崩溃——线间距只有 8μm,而基板厂能力是 15/15μm,整版报废。所以在连线之前,先把约束建好,最基础的三类:

  • 物理约束(Physical):各网络的最小线宽、最大线宽。电源网络通常要给 50μm 以上,信号网络 15μm 或 25μm 起步。
  • 间距约束(Spacing):线与线、线与 pad、pad 与 pad 之间的最小间距。这个值必须不低于基板厂的工艺能力,我一般习惯取制程极限的 1.2 倍作为设计值,给产线留点余量。
  • 电气约束(Electrical):单端阻抗、差分阻抗、等长组、最大/最小延时。Cadence 里可以在 Electrical Constraint Set 里建阻抗剖面和相对延时规则。

我在 Cadence 里的常规操作是:先建好几个 Constraint Set(比如 "SIG_25_50" "PWR_50"),赋给对应网络,再开约束管理器检查。约束设置还有一个隐蔽好处——布线时工具的实时高亮和自动避让会按你的约束来,画出来的线在物理上大概率是可行的,而不是等 DRC 再返工。实操感受是:每换一个基板厂,我就会把工艺能力表里的线宽线距、激光孔径、最小 pad 尺寸更新到自己的模板库里,一劳永逸。

2.3 库的规范化:die 的 pad、bond finger 和 layer 管理

库是 SIP 设计里第一生产力,也是最容易翻车的地方。die 库最关键的是 pad 定义——pad 的开口尺寸、间距、所在层必须和晶圆厂提供的 die 文档一致。常见的错误是 pad 的 geometry 放错层,铜箔层没有开阻挡层(soldermask),导致后面生成 wire bond 时工具根本选不到连接点。

另外就是 subclass 管理。Cadence 里层很多,比如 PACKAGE_GEOMETRY/ASSEMBLY、PACKAGE_GEOMETRY/SILKSCREEN、BOARD_GEOMETRY/OUTLINE,各有各的用途。ASSEMBLY 是装配层,指导贴片;SILKSCREEN 是丝印,用于目视标识。有些新手把元件位号、外形线一股脑画在同一层,后面导入装配图时一团糟。我的习惯是每个层只放它该放的东西:外形、腔体、散热焊盘放详细规格的专用子类,位号统一放 silkscreen,装配说明放 assembly。这样出图、出贴装文件、做 3D 检查的时候不用临时改层,省大量时间。

3. 两种互联方式的实操:wire bond 与 flip chip

3.1 wire bond 设计:从 die pad 到 bond finger 的每一步

wire bond 是目前成本最低、最成熟的裸芯片互联方式,用金线、铜线或银合金线把 die 的 pad 和基板上的 bond finger 连起来。设计时最核心的几个参数:线径、弧高、跨距、pad 开口尺寸和 bond finger 尺寸。

常规金线线径在 20~25μm,线距(两条相邻引线中心距)不能小于线径加安全余量,常见要求是相邻线芯间距不小于 50~60μm,具体看封装厂能力。die pad 的开口尺寸一般在 60~90μm 见方,bond finger 的宽度 50~70μm、长度 150~250μm,相邻 bond finger 的间距和线距匹配。设计时不要把这些值写死成你喜欢的数字,而是先跟基板厂和封测厂确认,再落到库和约束里。

Cadence SiP Layout 里做 wire bond 大致路径是:先在 Package Symbol 里定义 bond finger(引脚),把 die 摆到基板对应腔体位置,然后用 Wire Bond 菜单里的 Bond Wire 工具选择 die pad 和 bond finger 生成互联。工具会自动按预设的线弧参数(弧高、距离)生成 3D 线形,你可以看 profile 是否超出模封厚度。

我这几年踩过最深的坑是 die 间距。两颗 die 摆太近,wire bond 工具头伸不进去,打线机根本没法打;或者打出来的金线跨过另一颗 die 的边角,导致短路风险。封装厂一般会给一个"键合工具可达距离"约束,比如 die 边缘到相邻键合区边界至少留 300μm 以上。所以摆放 die 的时候不要只盯着基板面积能不能放下,还要确认 wire bond 的"操作空间"够不够。

3.2 flip chip 设计:bump、UBM 与扇出布线

flip chip 和 wire bond 完全不同,die 翻转过来,通过焊料凸点(bump)直接和基板上对应 pad 相连,优点是寄生电感小、I/O 密度高、适合高频和高速信号。代价是基板精度要求更高,bump pitch(凸点中心距)小的只有 60~130μm,基板对应 pad 的精度必须在 ±10μm 以内。

做 flip chip 设计时,Cadence 里要定义 bump 的阵列、位置和 UBM(凸点下金属层)开口。很多 die 的 bump 是整体阵列,工具可以一次生成一排或一个阵列的 bump,再走 RDL(再分布层)把密集的 bump 区扇出到规则线宽线距的走线区域。这里有个关键矛盾:bump 区 pitch 很小,比如 80μm,但基板制程线宽线距可能只有 15/15μm,直接扇出会很挤,这时候就要用 RDL 层做"阶梯式"扇出,或者在基板较粗的走线层和较细的 RDL 层之间靠盲孔转换。

我实际项目里最常碰到的问题是 bump 位置和 die 中心对不齐。Cadence 的 flip chip 摆放通常要以 die 中心和 bump 阵列中心为基准对齐,不能只看 die 外形居中。如果发现导入网表后所有 bump net 都不匹配,八成是 die 摆偏了 0.1mm 级别,视觉上看不出来,一检查全是错误。把 Die 的 Place 坐标精确到小数点后至少 3 位,是比较稳妥的做法。

3.3 混合互联与其他方向:不急于一时但值得了解

现在不少高端 SiP 封装是 wire bond + flip chip 混用:电源和地用 flip chip 降低寄生电感,普通信号用 wire bond 控制成本;或者主芯片用 flip chip,外围小 die、无源件用 wire bond。Cadence SiP Layout 对两种模式同时存在支持得还可以,前提是你把两种类型的 die 分别在库里正确标记,wire bond die 和 flip chip die 不要混用同一套 pad 定义逻辑。混合键合(hybrid bonding)属于下一代技术,密度极高,目前工具支持也在成熟中,如果不是做最前沿的 HBM 类封装,可以先不追,把工程基础打牢更重要。

4. 平面处理与电源规划:铜皮和 shape 的优先级

4.1 为什么要做平面分割:电源域、隔离与参考面

SIP 基板面积小、层数少,但电源域可能有好几个,还有模拟、数字、射频的隔离需求。平面分割的意义在于:让每个电源域有自己的低阻抗通路,同时避免不同敏感电路之间通过公共回流路径互相干扰。模拟地和数字地如果没切开,射频 LNA 的电源纹波可能通过地平面串到基带数字电路,导致灵敏度恶化。

在 Cadence 里做平面分割的核心工具是 Shape。先在对应层画一个大的 shape 覆盖整个区域,指定网络为 GND,再根据需要在这个大 shape 里挖掉不属于它的区域(或者直接画多个各自独立的 shape),模拟地和数字地就分开了。这里要注意的是,同一层上同网络的多个 shape 之间不能只是"看起来相连",Cadence 对铜皮的连接关系会严格判断是否为同一网络;如果你用两个独立 shape 放在同一层、中间隔了 5μm,DRC 会认为它们没有连通,处理后发现有孤岛网络未连接。

4.2 在 Cadence 里做 shape 的关键操作:优先级与 thermal relief

铜皮优先级这个问题,我在群里真的回答过好多次,热度高到大家都以为 Cadence 只有 PCB 才有这个功能。实际上 SiP Layout/APD 里同样有 shape 优先级(Shape Priority),它的作用是在多个 shape 重叠时决定谁覆盖谁。比如你要在内层同时铺一个 3.3V 的电源 shape 和一个 GND shape,两个 shape 在同一层交叉重叠,就必须先给其中一个设定更高优先级,否则工具不知道覆盖关系,DRC 会报短路或者网络错误。

实际操作路径一般是 Setup → Shapes → Shape Priority 或者 Use Priorities 选项,把电源网络的 shape 优先级设成高于 GND,让电源 shape 覆盖 GND shape 的区域不会贴在一起。还有一个容易被忽略的点是 thermal relief——铜皮连接到过孔或者引脚时,如果直接整块连接,焊接时散热快、容易虚焊,所以要给电源 pin、地 pin 设置热焊盘开窗。Cadence 里可以通过设置 pad 的 thermal relief 形状来生成十字连接,这直接影响封装焊接良率,别省。

4.3 电流密度与过孔阵列:一个粗糙但实用的预估方法

电源走线能过多少电流,工程上有个粗算方法:铜箔厚度 18μm、线宽 100μm 的走线,温升 10℃ 时大约能走 0.5A 左右的电流,如果需要更大的电流,就加宽、加厚或者多个过孔并联。不要指望一层细线灌满 5A 电流的电源轨,实际做的话我习惯至少给电源网络铺层面或双面多段并联,再通过过孔阵列互联。

过孔数量同样可以粗算:每颗激光微孔(孔径 75~100μm)在常规工艺条件下大约能承受 0.3~0.5A 电流。设计一个 2A 的电源域,过孔最好不要少于 6~8 个,而且要分散排布,集中在一小块区域反而造成局部热点。这些数字只是经验参考,严谨的话应该在 Layout 完成后用 Sigrity 做一次 IR Drop 和电流密度仿真,Cadence 生态里通常就是 SiP Layout 出图 → Sigrity 做 PI/SI 验证,这个链路配合得还不错。

5. 检查与输出:DRC、比对和生产文件

5.1 DRC、几何检查与常见报错怎么读

画完设计不等于结束,投板前的检查是最容易暴露问题的环节。Cadence SiP Layout 的 DRC 分好几种:经典的几何间距检查(Spacing/Width)、连接性检查(Connectivity)、以及针对封装设计的高级规则检查(如 GMP 几何制造规则)。我习惯先跑一次 Database Check(DB Doctor)确认数据本身没坏,再跑 DRC 更新,最后针对报错一条条看。

有个很典型的报错类型,一句话大意是"port 2 的引脚间距在电气上过大",第一次看到的人都懵。这类报错本质是工具检测到你的引脚之间电气距离远大于约束设定(或者说有信号完整性风险),常见诱因是某个高速网络在布线时走了很长一段绕线,或者 pin 到 pin 之间的连接没有按等长规则约束。处理方式不是直接 Waive,而是回到约束管理器里检查这个网络的相对延时/等长规则是否设置合理,再看走线路径有没有绕出不必要的长线。封装基板面积本来就小,很难像 PCB 那样靠走线长度补偿,所以更多要靠结构设计(比如交换 pin 顺序、调整 die 摆放)来满足时序。

5.2 网表比对、BOM 和贴装文件

网表比对是很多人都做得不够彻底的一步。从原理图导入网表后,Layout 端可能因为人为操作增删了连接,导致最终 PCB/基板文件和原理图不一致。在 Cadence 里可以通过 Design Compare 或导出网表后与原理图网表做比对,确保每个网络的器件和 pin 连接完全一致。我有一个原则:所有 DRC 清完以后,网表比对也必须零差异,这两个条件同时满足才敢投板。

BOM 输出大家应该都熟,Cadence 里可以直接跑 Report → Bill of Materials 生成物料清单,注意别漏掉 Die 和特殊元件,无源器件如果有多个封装位号,一定要带位号输出。另外贴装坐标文件也很关键,类似 PCB 的 pick-and-place 文件,它给出每个元件在基板上的精确坐标和旋转角度。SIP 里 Die 的贴装精度要求比普通贴片高很多,坐标输出我习惯保留到 0.01mm 精度,方便贴片机程序直接使用。

5.3 制造文件输出清单:投板前最后一步别仓促

SIP 基板要交出去的制造文件比普通 PCB 复杂,常规清单包括:基板各层图形(Gerber 或 ODB++)、钻孔文件、防焊层、字符层/装配层、叠层说明、BOM、贴装坐标、关键尺寸标注图。Cadence 里出 Gerber 用 Manufacture → Artwork,出 ODB++ 用相应的 Export 功能,我个人的偏好是 ODB++,因为它包含更多制造信息和层叠逻辑,现代基板厂基本都支持。

出文件前有一份自检清单,我贴在工位上,每次投板前过一遍:叠层厚度和材料说明是否更新;钻孔文件是否包含所有微孔和机械孔;铜皮优先级设置是否正确;热焊盘是否都开了十字连接;特殊区域(射频走线、敏感模拟)是否有明确标注;BOM 里有没有料号缺失。这些项目全部打勾后,我才会把文件包发出去。

6. 实战问答:SIP Layout 里那些常见的坑

6.1 常见问题速查

问题现象可能原因排查思路
DRC 报线距不够约束规则没设或设得比制程能力小先看 Cross Section 和 Spacing 约束,按基板厂能力更新
wire bond 生成失败die pad 层定义错误或 bond finger 方向不对检查 die 库 pad 几何所在层,以及 bond finger 放置方向
flip chip 所有 bump 网络不匹配die 摆放位置偏移检查 die 中心与 bump 阵列中心对齐
同一网络铜皮中间出现孤岛shape 优先级或 shape 边界未连接查看 shape 边界是否被挖断,用 DRC 检查孤立连接
阻抗测试和设计不符叠层参数与工厂实际不一致更新 Cross Section 为基板厂真实叠层,重新算阻抗
电源压降过大走线太细、过孔数量不足按电流密度估算加宽走线或加过孔阵列,上 Sigrity 仿真确认

这里说一个通用技巧:遇到任何"看起来不该报错但报了"的情况,先查约束规则,再查层定义,最后才怀疑工具 bug。我碰到过很多次"工具出问题"的误判,实际都是 Cadence 某个层的开关没开、或者约束没赋给某个网络导致的灰色地带问题,把层的显示和约束规则捋一遍,九成都能找到原因。

6.2 我踩过的坑和一些小技巧

第一个坑:把 PCB 的思维完全搬到 SIP。在 PCB 上我习惯把电源和地做成完整平面,信号在相邻层走;但 SIP 基板层少、且可能有射频/模拟敏感区,完整平面往往不现实,更常见的做法是局部铜皮 + 屏蔽过墙(一群 GND 过孔围住敏感区域)。所以不要执着于"每层都是完整平面",要学会在极小面积里做局部低阻抗回路。

第二个坑:die 的摆放顺序。表面看 die 摆哪里只影响布线长度,实际上影响打线弧高、模封厚度、散热路径。尤其注意不要把两个有大量互联的高频 die 摆得太远,否则哪怕走线等长,插损和寄生也会变大。我习惯先把 I/O 互联最多的 die 放在基板中心附近,其他 die 围绕它展开,这样布线路径短,后续优化空间大。

第三个小技巧:多用 3D 视图检查。Cadence SiP Layout 的 3D 浏览器可以直观看到 wire bond 弧线是否超出模封、bump 阵列是否对齐、芯片边缘是否超出基板。每次布完线我都切到 3D 转一圈,比盯 2D 图容易发现空间干涉问题。

最后分享一个关于模板的体会:同样类型的封装,尽量沉淀成模板,比如叠层参数、约束规则、常用 bond finger 尺寸、DRC 断言文件。很多公司反复做同类产品,却每次从零开始建规则,不仅浪费时间,而且容易前后不一致。我在做了几个项目以后,把这些规则固化成了公司内部模板,后面新项目导入时直接复用,设计效率明显提升。

SIP Layout 这个方向,工具操作只是基本功,真正值钱的是对制程、材料、封测工艺的理解。第二章内容到这里,核心就是把"做对设计"这件事变成流程的一部分:先定叠层和约束,再选互联方式,中途处理好平面和电源,投板前做足检查和输出。接下来如果你还想往下走,可以试试把 Layout 导到 Sigrity 做信号完整性和电源完整性仿真,那才是真正检验设计能不能量产的一关。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询