4、封装与PCB的协同:封装与PCB的物理接口、BGA扇出与布线协同、信号完整性考量
封装与PCB的协同设计,说白了就是让芯片和板子“好好说话”。
我做了这么多年封装,见过太多芯片性能很好,结果上板就翻车的案例。问题出在哪?就是封装和PCB没协同好。
今天咱们就聊聊这个环节。我会从物理接口、BGA扇出、信号完整性三个角度展开。
4.1 封装与PCB的物理接口
物理接口,就是封装和PCB怎么连在一起。最常见的当然是BGA(球栅阵列)。
我个人习惯把BGA看成“桥”。桥的一头是芯片内部,另一头是PCB走线。桥搭不好,信号就过不去。
4.1.1 BGA焊球布局
BGA焊球的布局不是随便排的。它要兼顾散热、信号、电源、地。
- 核心区:芯片正下方,通常是电源和地焊球。我建议这里多放地焊球,能有效降低回路电感。
- 外围区:信号焊球。速度高的信号尽量往外围放,方便PCB扇出。
- 角落区:机械支撑和散热。有些大芯片会在四角放热焊球。
关键点:BGA焊球的间距(pitch)决定了PCB的布线难度。0.8mm pitch是主流,0.5mm pitch就需要HDI工艺了。
4.1.2 封装与PCB的叠层匹配
封装内部的叠层和PCB的叠层要匹配。为什么?因为阻抗控制。
我在项目中遇到过这样的情况:封装内部走线阻抗50欧姆,PCB也设计50欧姆,结果连起来反射很大。查了半天,发现是封装和PCB的参考层不连续。
嗯,这里要注意:封装和PCB的参考层要尽量对齐。如果封装用第2层做参考,PCB最好也用第2层。
4.2 BGA扇出与布线协同
BGA扇出,就是把BGA焊球引出来,让PCB能走线。这是封装和PCB协同最关键的环节。
4.2.1 扇出策略
扇出有几种常见策略:
- 直接扇出:从焊球直接拉线到内层。适合pitch较大的BGA。
- 狗骨扇出:焊球先连到一个小焊盘,再打孔到内层。适合pitch较小的BGA。
- 埋孔扇出:用埋孔或盲孔扇出。适合高密度BGA。
我个人习惯用狗骨扇出。它灵活,而且方便后期调整。
小技巧:扇出时,尽量让信号走线方向一致。比如所有DDR信号都朝一个方向扇出,这样布线时好控制等长。
4.2.2 布线协同
封装和PCB的布线要协同,不能各干各的。
我曾经见过一个项目,封装工程师把高速信号都放在封装边缘,结果PCB工程师发现这些信号根本扇不出去——因为PCB那边有机械结构挡住。
所以,我建议封装和PCB工程师在项目初期就一起看布局。至少要把关键信号(时钟、高速数据)的走线方向定下来。
下面这张图展示了BGA扇出与布线的协同流程:
4.3 信号完整性考量
信号完整性(SI),说白了就是信号从封装到PCB,能不能保持“原样”。
我刚开始做封装时,总觉得SI是PCB的事。后来发现,封装对SI的影响非常大。
4.3.1 封装对信号完整性的影响
封装会引入三个主要问题:
- 寄生电容:封装基板上的走线、焊球都会引入寄生电容。高频信号会被“吃掉”一部分。
- 寄生电感:焊球和过孔是电感大户。电感会导致信号边沿变缓。
- 阻抗不连续:封装和PCB的阻抗不一样,信号就会反射。
注意:我曾经遇到一个DDR3项目,封装内部走线阻抗50欧姆,PCB也是50欧姆,但信号质量就是不好。后来发现,封装和PCB连接处的焊球引入了额外的电感,导致阻抗突变。解决办法是在封装内部做阻抗补偿。
4.3.2 协同仿真
封装和PCB的SI问题,最好通过协同仿真来解决。
我建议的做法是:
- 提取封装模型(S参数或SPICE模型)
- 提取PCB模型
- 把两个模型级联起来仿真
下面是一个简单的仿真设置示例:
// 封装与PCB协同仿真示例(使用SPICE)
// 封装模型
.subckt PKG_MODEL in out
L_bond in 1 1nH // 键合线电感
C_pad 1 0 0.5pF // 焊盘电容
L_ball 1 out 0.3nH // 焊球电感
.ends
// PCB模型
.subckt PCB_MODEL in out
L_trace in 1 2nH // PCB走线电感
C_load 1 0 1pF // 负载电容
.ends
// 协同仿真
X1 A B PKG_MODEL
X2 B C PCB_MODEL
V1 A 0 PULSE(0 1.8 0 0.1n 0.1n 5n 10n)
R1 C 0 50
.tran 0.01n 20n
.end
4.3.3 常见问题与对策
| 问题 | 表现 | 对策 |
|---|---|---|
| 反射 | 信号过冲、下冲 | 匹配阻抗,减少封装与PCB的阻抗差 |
| 串扰 | 相邻信号互相干扰 | 增加间距,加地线隔离 |
| 电源噪声 | 信号抖动 | 增加去耦电容,优化电源网络 |
| 时序偏差 | 信号到达时间不一致 | 等长布线,封装内部做延迟补偿 |
个人经验:对于高速信号(比如DDR4、PCIe),我建议封装和PCB的协同仿真至少做两轮。第一轮在布局阶段,看大方向对不对。第二轮在布线完成后,看细节有没有问题。
好了,关于封装与PCB的协同,今天就聊这么多。核心就一句话:封装和PCB不是孤立的,它们是一个整体。设计时一定要协同考虑,否则后面改起来,成本和时间都受不了。