最近在B站上看到一个博主“八号芳华”基于comsol软件分享了一个晶圆翘曲仿真的视频教程,整个分析是在comsol里step by step。在本篇里,基于该模型尺寸,我将在ANSYS WB里来进行晶圆翘曲仿真,来复刻comsol过程。
1
几何模型
下图为晶圆的几何模型,是由SpaceClaim建立的,包含硅晶片Die(厚0.775mm,直径为300mm)和硅片上的图案Patterm,厚200nm。由于图案相比Die很薄,因此图案采用壳单元,当然Die也可使用壳单元。
2
材料模型
材料 | 弹性模量GPa | 泊松比 | 密度g/cm3 |
Silicon | 170 | 0.28 | 2.39 |
Si3N4 | 250 | 0.23 | 3.1 |
3
边界条件
约束晶圆的刚体 位移,即只需要打开弱弹簧(weak spring)即可。
图2 打开弱弹簧
对于该结构,图案在X,Y方向具有100MPa的初始应力,此初始应力作为外载荷。WB施加初始应力载荷需要使用APDL,用到的关键词为:
INISTATE,Action,Val1, Val2, Val3,Val4,Val5,Val6,Val7,Val8,Val9
Action可对初始应力进行指定set、定义define、写入write、读取read、删除delete等操作具体用法大家可以去help,这里使用define,用法如下:
INISTATE,DEFINE,ID,EINP,KLAYER,PARAMINT,Cxx,Cyy,Czz,Cxy,Cyz,Cxz
ID-Cxz依次代表单元号、高斯积分点、层号、层号积分点号,六个方向的预应力值。
例如:inistate,defi,,,,,100,100 给所有单元施加x,y方向的应力分别为100 MPa,100MPa
为了更加便利施加应力,在施加应力之前,对目标元件建立单元集合Named Selection,并通过cmsel,s,eleSet来进行选择。注意是单元集合,不是几何集合。
完整命令流为:
allsel,all
cmsel,s,eleSet
INISTATE,DEFI,,,,,100,100
allsel,all
下面还有一个很重要的就是接触问题。壳和实体使用MPC算法的绑定接触,否则约束自由度不够,图案的应力将无法传递到晶圆上。原因是壳体单元节点有6个自由度,而实体单元节点只有3个平动自由度,当使用默认算法时只约束了3个平动自由度,必须采用MPC多节点耦合,才可消除自由度旋转的影响。
4
计算结果
图4-图5为WB计算结果。其翘曲位移为7.85um,翘曲方向向下,圆心最大;翘曲应力为0.14MPa,位于图案的边缘位置。comsol的仿真结果分别为翘曲位移7.56um, 翘曲方向向下,圆心最大;应力为0.13MPa,位于图案的边缘位置,数值十分接近。
图4 位移7.85um
图5 Die的应力0.14MPa
comsol和WB实现同一个仿真,操作设置相差的还是蛮大的。Comsol在施加初始应力时较方便,有GUI,但WB目前只能使用命令流的方式,对使用者要求稍微高点。