3、几何建模与网格划分:TSV单孔与阵列的几何参数、对称模型简化技巧、网格质量对耦合仿真的影响
各位好,咱们接着聊TSV仿真。前面讲了多物理场耦合的基本概念,今天这节,我打算把重点放在「怎么把模型建好」这件事上。
说实话,在TSV仿真里,几何建模和网格划分这步,往往决定了整个仿真的成败。我见过太多人,物理模型选得挺对,求解器设置也没毛病,结果算出来结果就是不对。为什么?说白了,几何简化过头了,或者网格质量太差。
咱们今天就把这块掰开揉碎了讲清楚。
3.1 TSV单孔与阵列的几何参数
先说说最基本的。一个TSV单孔,你需要关注的几何参数其实就那么几个:
- 直径(D):通常5-50μm,取决于工艺节点
- 深度(H):也就是硅衬底的厚度,一般50-300μm
- 深宽比(AR):H/D,这个值很关键,高深宽比的TSV网格划分特别头疼
- 绝缘层厚度(t_ox):SiO₂层,通常0.1-1μm
- 阻挡层厚度(t_barrier):Ta/TiN等,几十到几百纳米
- 种子层厚度(t_seed):Cu种子层,也是纳米级
嗯,这里要注意,绝缘层和阻挡层的厚度跟TSV直径比起来,差了两个数量级。这就带来了一个典型的多尺度问题——你想想看,整个模型尺寸是几百微米,但最薄的层只有几十纳米。网格怎么画?硬画的话,网格数量会爆炸。
我的经验:对于电热耦合仿真,绝缘层必须保留,因为它直接影响热阻和电容。但对于纯热仿真,如果绝缘层很薄(<0.5μm),我有时候会忽略它,用等效热导率来补偿。这个取舍,得看你关注什么物理场。
阵列参数就更复杂了。除了单孔参数,你还要考虑:
- 节距(Pitch):相邻TSV中心距,通常2-5倍直径
- 阵列规模:比如10×10、20×20
- 排列方式:正方形排列还是六边形排列
我记得有一次做项目,客户给了一个100×100的TSV阵列,每个孔直径10μm,节距20μm。如果全模型仿真,网格量轻松上千万。这显然不现实。怎么办?简化。
3.2 对称模型简化技巧
简化模型,说白了就是利用对称性。这块我踩过不少坑,跟大家分享一下。
3.2.1 单孔对称模型
单个TSV,如果结构是轴对称的(圆形TSV),你可以用2D轴对称模型。这招最狠,能把3D问题降成2D,网格量减少90%以上。
// 在COMSOL中设置轴对称
// 几何:画一个矩形截面,代表TSV的一半
// 物理场:选择"轴对称"空间维度
// 边界条件:对称轴上设为"轴对称"边界
但要注意,轴对称模型只适用于单孔,或者阵列中每个孔完全独立的情况。如果孔之间有热耦合或电耦合,轴对称就不够用了。
3.2.2 阵列的周期性简化
对于大规模阵列,最常用的简化是「单胞模型」。什么意思?就是只取一个TSV及其周围的硅区域,然后施加周期性边界条件。
小技巧:对于正方形排列,单胞是一个正方形,边长等于节距。对于六边形排列,单胞是一个六边形。我个人习惯用正方形单胞,因为网格划分更规整,后处理也方便。
我曾经做过一个对比:全模型(20×20阵列)vs 单胞模型(加周期性边界)。结果呢?电热耦合的温升误差不到3%,但计算时间从6小时降到了15分钟。你说值不值?
3.2.3 四分之一对称模型
如果阵列规模不大(比如4×4),而且你关心边缘效应,可以用四分之一对称模型。就是把整个阵列切成四块,只仿真其中一块,在切割面上加对称边界。
注意:对称边界条件要求物理场在边界上是对称的。对于热仿真,对称边界相当于绝热边界。对于电仿真,对称边界相当于绝缘边界。如果你的TSV阵列边缘有特殊结构(比如接地环),对称模型就不适用了。
3.3 网格质量对耦合仿真的影响
网格这东西,说起来简单,做起来全是坑。我刚开始做TSV仿真时,觉得网格嘛,画密点就行了。结果呢?算出来热应力分布乱七八糟,一检查,网格质量太差。
3.3.1 网格质量的关键指标
| 指标 | 理想值 | 可接受值 | 说明 |
|---|---|---|---|
| 偏斜度(Skewness) | <0.3 | <0.7 | 越接近0越好,高偏斜度会导致收敛困难 |
| 正交质量(Orthogonal Quality) | >0.9 | >0.3 | 越接近1越好,影响梯度计算精度 |
| 长宽比(Aspect Ratio) | <5 | <20 | TSV薄层处容易超标,需要局部加密 |
| 增长率(Growth Rate) | <1.2 | <1.5 | 相邻网格尺寸变化不宜过大 |
为什么会这样?因为TSV结构里,绝缘层和阻挡层非常薄,如果网格在这些区域质量不好,计算出的电场和热流密度就会严重失真。我记得有一次,就因为绝缘层网格偏斜度到了0.85,算出来的电容值偏差了15%。
3.3.2 网格策略:分层与过渡
对于TSV这种多尺度结构,我的网格策略是「分层划分,平滑过渡」。
- 第一层:TSV铜芯,用较粗的网格,因为铜的导热和导电性能好,场分布均匀
- 第二层:绝缘层和阻挡层,必须用极细的网格,至少3-5层单元
- 第三层:硅衬底,用渐变网格,靠近TSV处密,远处疏
// 网格划分示例(COMSOL脚本风格)
// TSV铜芯:最大单元尺寸 2μm
// 绝缘层:最大单元尺寸 0.1μm,最小单元尺寸 0.01μm
// 硅衬底:最大单元尺寸 10μm,靠近TSV处加密到 1μm
避坑指南:我曾经在做一个热应力耦合仿真时,为了省事,把绝缘层和铜芯用了同样的网格尺寸。结果算出来的热应力在界面处出现了奇异的应力集中。后来把绝缘层网格加密到0.05μm,应力分布才变得合理。所以,薄层处千万别偷懒。
3.3.3 网格无关性验证
这个步骤,我建议每个人都做。怎么做?很简单:
- 先用较粗的网格算一遍,记录关键结果(比如最大温度、最大应力)
- 把网格加密一倍,再算一遍
- 对比两次结果,如果偏差小于5%,说明网格够用了
- 如果偏差大,继续加密,直到收敛
你想想看,如果网格没收敛,你算出来的结果有什么意义?我见过有人拿着粗网格算出的数据发论文,结果审稿人一问网格无关性,直接露馅了。
3.4 知识体系总结
好了,咱们把今天的内容串一下。我画了一张图,把几何建模和网格划分的核心逻辑展示出来:
这张图把咱们今天讲的三块内容串起来了。几何参数是基础,对称简化是手段,网格质量是保障。三者缺一不可。
最后说一句:建模和网格划分,没有标准答案。不同的物理场耦合(电-热、热-力、电-热-力),对网格的要求都不一样。我的建议是:先做小规模试算,找到合适的网格密度,再推广到全模型。这样既省时间,又不容易翻车。
好了,今天就到这儿。下次咱们聊聊材料参数和边界条件怎么设置,那块也有不少坑等着咱们。
公众号:蓝海资料掘金营,微信deep3321