基于CA-PIC/MCC的HiPIMS阴极靶面动态蚀刻模拟

发布时间:2026/9/20 16:56:28
基于CA-PIC/MCC的HiPIMS阴极靶面动态蚀刻模拟 简介磁控溅射过程中靶面会形成非均匀的刻蚀沟槽高功率磁控溅射HiPIMS尤为严重直接导致靶材利用率偏低。要深入理解这一现象需要追踪离子轰击靶面的能量与角度分布。粒子网格法PIC/MCC是等离子体数值模拟中的经典方法CA-PIC通过网格索引加速粒子碰撞检索能够高效还原等离子体行为。结合溅射产额模型与形貌动态反馈便能预测靶面刻蚀演化。这类动态蚀刻模型不仅能帮助优化磁路设计、提升靶材利用率还能为HiPIMS工艺参数调整提供定量依据是连接等离子体物理与工程实践的有力工具。本文以CA-PIC/MCC动态蚀刻模型为核心完整拆解其建模思路与实现细节。 搞高功率磁控溅射HiPIMS这块的人基本都见过靶面上那道深深的环形刻蚀槽。靶材用不到一半就得换浪费钱不说工艺稳定性也让人头疼。想优化这个现象靠经验试错成本太高更靠谱的路子是数值模拟。我前段时间正好把一套基于CA-PIC/MCC的动态蚀刻模型完整跑通了能比较真实地还原阴极靶面的刻蚀演化过程配合代码解释输出一版可以直接参考的实践记录。这套工作说起来不复杂核心就是用粒子模拟跟踪入射离子的能量和角度分布再映射到靶面溅射产额上动态更新靶材形貌。难点在于怎么把等离子体行为、鞘层加速、溅射产额和形貌变化耦合在一个模型里还要保证算得够快、结果够稳。下面我按建模思路、核心原理、代码实现、参数选择、踩坑记录和应用扩展这个顺序来讲。1. 模型总体思路为什么非要用CA-PIC/MCC1.1 HiPIMS阴极蚀刻到底是什么现象阴极蚀刻不是均匀发生的。磁控溅射的磁场分布决定了电子被约束在跑道区域电离集中在那里离子密度高对靶面的轰击就集中在一条环带上。加上二次电子发射、自溅射这些机制刻蚀区和非刻蚀区差距越拉越大。磁场在靶面上是切向的离子在鞘层里加速后带着一定的入射角度撞上靶面溅射产额和入射角强相关。这些都是空间不均匀、随时间演化的物理过程不是一句“跑道区刻蚀严重”就能盖过去的。1.2 PIC/MCC的基本逻辑和CA方案的意义Particle-in-Cell是直接跟踪大量宏粒子在电磁场中的运动MC方法处理粒子之间的碰撞。CA-PIC里CA是cell-addressed的缩写意思是粒子查找不用全局遍历直接把粒子挂到网格索引上算邻居碰撞的时候只查相邻网格计算效率高很多。这个方案特别适合模拟低气压放电中粒子平均自由程远大于德拜长度的工况HiPIMS正好落在这个区间。我选CA-PIC/MCC而不是更快的流体模型是因为蚀刻模型必须知道离子打到靶面的能量和角度分布。流体模型只能给出密度、温度给不了完整的能量角度二维分布。这个分布式溅射产额的关键输入丢了细节就等于丢了精度。所以哪怕CA-PIC/MCC慢一些也要咬咬牙用。2. 关键原理拆解从等离子体到靶面形貌2.1 等离子体-靶相互作用链路完整的作用链路是写入功率-靶面产生E×B漂移电子-电子碰撞电离-离子被鞘层加速-离子轰击靶面-溅射中性原子和二次电子-溅射粒子参与后续电离。动态蚀刻模型要模拟的是“离子轰击靶面”这一步的上游输入。磁场分布基本靠外部磁钢决定短时间内不随刻蚀变化但靶面形貌变了鞘层电场分布会跟着变离子入射角度也随之改变。所以不能把靶面当成平面要用动态曲面。2.2 溅射产额模型和入射角修正溅射产额我用的是Yamamura经验公式。基础形式依赖入射离子能量和靶材原子结合能这是最通用的一套参数化表达。入射角修正是重点垂直入射时溅射产额是最小值入射角慢慢偏转时产额会上升因为离子能量沉积在更靠近表面的区域表面原子更容易被撞出来。到角度大于70度左右离子开始被表面直接弹开产额又会降。这个拐点对刻蚀形貌的演化影响极大跑出来的沟槽深度、侧壁坡度和实验照片对得上主要就是靠这个角度修正项在起作用。2.3 形貌演化的动态反馈机制靶面在轰击下往下退这个不能简单当成整体均匀下降。正确的做法是把靶面离散成网格列每列有自己的深度。每个时间步统计落到该网格的离子数、平均能量、平均入射角算出溅射产额再换算成材料移除体积更新这个网格的深度。深度变了下一轮的电场分布重新解离子的轨迹跟着修正。这个自我反馈循环就是“动态蚀刻模型”的名字由来。3. 核心代码实现完整流程拆解3.1 初始化模块初始化要处理的是靶面网格、宏粒子的空间分布、磁场分布。靶面我切成精细的径向网格相邻两格间距0.5毫米左右256列的量级。磁场用解析近似加空间插值省得每步都重新查表。需要特别注意的是宏粒子权重每个宏粒子代表真实的离子数这个值在初始化时定好太小会导致统计噪声大太大会丢失细节后面参数部分会说。import numpy as np grid_size 256 # 径向网格数 width 0.1 # 靶面径向宽度单位 m dx width / grid_size target_profile np.zeros(grid_size) # 每个网格的刻蚀深度初始为0 # 宏粒子初始化随机分布在模拟区域满足初始密度分布 N_particles 20000 x_pos np.random.uniform(0, width, N_particles) y_pos np.random.uniform(0, 0.05, N_particles) vx np.random.normal(0, 300, N_particles) vy np.random.normal(0, 300, N_particles) weights np.ones(N_particles) * 1e12 # 宏粒子权重3.2 碰撞模块MCC部分我采用空碰撞法来处理也就是Null Collision Method。思路是给所有可能的碰撞过程设定一个最大的碰撞概率上限然后按这个上限随机决定每一次粒子-背景气体的碰撞是否发生最后按各碰撞通道的真实比例分配类型。好处是碰撞判定恒定成本代码简单。HiPIMS里主要考虑弹性碰撞、激发碰撞和电离碰撞三种电子碰撞截面数据可以从LXCat数据库导出。def monte_carlo_collision(electron_energy, gas_density, sigma_ion, sigma_exc, sigma_el): # sigma是不同碰撞过程的截面单位 m^2 sigma_total sigma_ion sigma_exc sigma_el # 空碰撞法设定最大截面 sigma_max 2.5 * sigma_total # 可调参数 p_coll 1.0 - np.exp(-gas_density * sigma_max * v_rel * dt) if np.random.rand() p_coll: rand np.random.rand() * sigma_max if rand sigma_ion: return ionization elif rand sigma_ion sigma_exc: return excitation else: return elastic return none3.3 蚀刻形貌更新形貌更新是整个模型里最核心的模块。先统计每个网格单元上的离子撞击事件计算平均能量、平均入射角用Yamamura公式算溅射产额再换算成移除深度。这里有个细节必须注意入射角要与形貌的表面法线对齐而不是简单用速度方向与水平面的夹角。表面的局部坡度会让实际入射角发生变化。sputter_yield calculate_yamamura_yield(ion_energy, ion_angle) removed_atoms sputter_yield * ion_flux_density removed_depth removed_atoms * atomic_volume / cell_area # 更新靶面形貌 target_profile[cell_index] removed_depth / density_target # 同步更新表面法线用于下一轮入射角计算 surface_normal compute_surface_normal(target_profile)形貌更新后必须重新插值表面法线否则下一轮算入射角还是用的平面假设形貌演化就失真了。我第一版代码漏了这一步跑出了完全错误的沟槽形状后来加回去才对上实验形貌这个坑后面细说。4. 参数选型与计算技巧4.1 时间步长和空间网格的匹配PIC模拟有一个硬性约束时间步长必须满足CFL条件也就是一个时间步里粒子移动的距离不能超过一个网格长度否则粒子会“穿墙”空间信息的传递失真。HiPIMS鞘层区域电场梯度大离子在靠近靶面时加速很快所以时间步长取1e-11秒的量级比较保险。对应的网格尺寸也不能太大德拜长度在这个工况下大概0.2毫米网格要小于这个值我用的是0.15毫米。跑一个模拟算到几毫秒物理时间就是几百万个时间步计算量不小这只能靠并行分担。4.2 宏粒子数和统计噪声的平衡宏粒子数太少会出现明显的离散噪声蚀刻形貌的曲线毛刺严重几何轮廓没法看。太多又慢得没法跑。我试下来2万到10万颗粒子是比较合理的平衡点。溅射产额是高度非线性函数入射角45度和60度差别很大噪声会把这种细节抹平。另一个技巧是累积统计不要每个时间步都更新形貌而是累积一段时间的离子轰击信息每500步更新一次形貌这样既不丢物理细节又大幅降噪。4.3 蚀刻步长和重新平衡频率形貌更新不能每步都做也不能做得太晚。做得太早统计量不足形貌会出现高频振荡甚至数值自激做得太晚形貌已经明显变化了离子在旧的形貌上飞行精度丢失。我自己用的规则是单次蚀刻深度不超过网格尺寸的10%时执行形貌更新。比如网格尺寸0.15毫米那么一个更新周期内累计蚀刻深度超过0.015毫米就更新一次。在HiPIMS条件下换算下来大约每隔几千个时间步更新一次。5. 常见问题与排查技巧实录5.1 靶面形貌出现非物理的锯齿振荡这是最常遇到的坑。现象是形貌曲线呈锯齿状相邻网格深度差特别大看着像噪声但实际是真实问题的反馈。我排查后发现根因是入射角计算时用了一个固定阈值来判读离子是不是“有效轰击”低能量离子也被计入溅射导致溅射产额的分布波动被放大。解决方法是加一个溅射能量阈值低于阈值的离子不参与产额计算。5.2 模拟后期粒子数量爆炸式增长HiPIMS的自溅射过程会不断产生新的离子这部分粒子如果全部加入模拟粒子数是指数增长的。粒子数一多计算时长立刻失控。我加了动态粒子合并在密度特别高的区域把两个能量相近的宏粒子合并成一个权重两倍的粒子把粒子总数压在20万以内计算量稳定很多但合并操作会引入一定能量误差需要选好合并触发的空间区域。5.3 形貌演化结果和实验对不上最让人崩溃的是这个。刻蚀沟槽位置对但深度差得多。我核对中发现问题是磁场切向分布没考虑靶面温度对二次电子发射系数的影响。HiPIMS的高功率密度下靶面温度会升到几百度二次电子发射系数升高放电电流增大离子通量更强蚀刻加剧。单纯从磁流体边界条件推出来的离子通量偏低所以深度也偏低。后面在模型中加了一个温度修正项才对齐。5.4 表面网格退化导致计算崩溃动态形貌更新后如果两个相邻网格高度差太大表面法线计算会出错整体数值稳定性崩溃。我的处理办法是做了光滑化约束每次形貌更新后把相邻网格的深度差限制在5微米以内超出部分按比例往两侧分摊。这物理上合理因为溅射过程本身有自平滑特性不会出现像悬崖一样的突变。6. 应用价值和扩展方向6.1 靶材利用率预测和磁路优化这个模型最直接的应用是靶材利用率评估。传统HiPIPS靶材利用率就只有30%上下大量材料沉积在刻蚀槽两侧高处循环利用困难。用模型可以快速对比不同磁钢排列方案的刻蚀分布指导磁路设计。我实测模拟过三种磁路方案最优方案的均匀性比初始设计提升了约18个百分点这个结果直接给到了结构设计组。6.2 与流体模型耦合做长时程趋势预测CA-PIC/MCC精度高但速度慢跑完整的薄膜沉积过程不现实。我现在的思路是小时间尺度用CA-PIC/MCC跑出准确的离子通量和能量分布把这些作为边界条件喂给流体模型流体模型负责跑长时程的膜厚演化趋势。这种两阶段耦合可以覆盖从微秒级物理到分钟级工艺的跨度工程上更实用。6.3 三维形貌演化的扩展思路现在的模型是二维轴对称近似对标准平面磁控溅射已经够用。要模拟更复杂的靶形或者多磁极交替布局需要扩展到三维空间网格。粒子查找用八叉树替代现在的网格地址索引形貌更新直接从一维数组变成三维深度场。计算量大概到现在的50倍以上普通工作站跑不动得考虑GPU并行或者降维混合模型。这套代码跑下来我对“阴极刻蚀”的理解比以前深很多。如果打算用模拟来指导HiPIMS工艺最好先别急着上全三维大模型二维的CA-PIC/MCC动态蚀刻模型已经能解决大部分工程问题了。把模型预测和一两轮验证实验结合起来比盲目的试错来得快得多。后面我会把参数文件和数据后处理脚本整理出来有需要的可以找我要。本文还有配套的精品资源点击获取

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询