夜雨聆风学习资料网

ARTICLE · 1041337

半导体工艺和器件仿真软件Silvaco TCAD实用教程(2.1-ATHENA 概述)

半导体工艺和器件仿真软件Silvaco TCAD实用教程(2.1-ATHENA 概述)

2.1 ATHENA 概述

从第二章开始,我们正式进入:

二维工艺仿真。

这一章的主角就是:

ATHENA

如果前面只是认识 Silvaco TCAD 的基本环境,那么从这里开始,我们真正要学习:

怎样在计算机里模拟一个半导体器件“被制造出来”的过程。


一、ATHENA 是干什么的?

原书一开始就说,ATHENA 具有很强的工艺仿真功能。

它可以模拟很多单项半导体工艺,例如:

  • 离子注入;
  • 扩散;
  • 淀积;
  • 刻蚀;
  • 外延;
  • 光刻;
  • 氧化。

这些工艺我们以后会分别学习。

但是实际制造一个器件,当然不可能只做一次注入或者一次刻蚀。

真正的器件工艺通常是:

衬底 ↓氧化 ↓光刻 ↓刻蚀 ↓离子注入 ↓退火 / 扩散 ↓淀积 ↓……

所以原书强调:

所谓集成工艺,本质上就是把很多单项工艺按照一定顺序组合起来。

这也是 ATHENA 最重要的用途之一。


二、为什么我们平时感觉不到 ATHENA 内部有很多模块?

原书这里特别提了一点:

不同的工艺步骤,实际上可能对应 ATHENA 内部不同的仿真模块。

但是在 DeckBuild 里面,这些模块可以被灵活调用。

所以作为用户,我们通常只需要按照工艺顺序写:

implant ...diffuse ...deposit ...etch ...

并不需要每做一个工艺,就自己手动切换一次底层模块。

也就是说:

ATHENA 把很多不同的工艺仿真能力统一到了一个使用环境中。

这也是为什么初学时我们可以先把 ATHENA 整体理解成:

二维半导体工艺模拟器。


三、ATHENA 的输入是什么?

原书图 2.1 给出了 ATHENA 的输入输出框架。

先看输入端。

主要包括三类信息:

1. 工艺步骤

也就是告诉 ATHENA:

晶圆接下来经历什么工艺?

例如:

离子注入扩散氧化刻蚀淀积

2. GDS 版图

GDS 可以先简单理解成:

芯片版图中的几何图形信息。

它决定某些工艺区域在哪里。


3. 掩膜

尤其在光刻过程中,需要告诉软件:

哪些区域被遮挡,哪些区域被曝光。

所以 ATHENA 的输入,本质上是在描述:

“这个晶圆接下来应该怎么加工?”


四、ATHENA 能输出什么?

经过一系列工艺步骤以后,ATHENA 可以得到器件结构。

原书图 2.1 列出了很多输出,例如:

  • 一维和二维结构;
  • 材料厚度;
  • 结深;
  • 淀积和刻蚀外形;
  • CD 外形、开口槽等;
  • 电阻和 C-V 分析;
  • 某些简单结构的电学信息。

其中有一个非常重要的输出:

把工艺仿真得到的结构交给 ATLAS。

所以一个非常典型的 TCAD 工作流程就是:

ATHENA模拟器件怎么制造得到器件结构ATLAS模拟这个器件怎么工作

这也把第一章讲过的 ATHENA 和 ATLAS 真正连接起来了。


五、ATHENA 自己带有大量默认参数

接下来原书介绍了一件很重要的事情:

ATHENA 并不是要求我们把所有物理参数都自己写出来。

软件本身已经带有大量默认参数。

这些参数保存在 ATHENA 的一些文件中。


1. athenamod

这个我们前面已经碰到过。

它里面保存了很多默认信息,例如:

  • 物理模型参数;
  • 扩散参数;
  • 氧化参数;
  • 数值计算参数;
  • 淀积、刻蚀设备特性;
  • 材料和光刻胶的光学参数等。

所以启动 ATHENA 时看到:

Loading model file ... athenamod ... done.

就是软件正在读取这些默认模型和参数。


2. 离子注入相关参数文件

原书还提到:

implant_tabl

目录下面的:

std_table

以及一些:

svdp****

文件。

这些主要保存:

离子注入模型所需要的参数。


3. 高级扩散模型参数

原书说:

pls

和:

models

目录下面的一些:

*.mod

文件,

保存了高级扩散模型使用的参数。


4. athenares

这个文件则保存了一些:

电阻率随掺杂浓度变化的数据。


六、这些默认参数文件能不能直接改?

原书这里特别提醒:

不要直接修改这些参数文件。

因为这些文件属于 ATHENA 的基础模型和参数数据库。

直接修改可能导致软件工作异常。

如果确实希望根据实验结果调整模型参数,应该使用正规的:

工艺校准(Process Calibration)

方法。

原书把这部分放到了后面的第 5.3 节。

所以现在只需要记住:

默认参数可以使用,但不要随便去修改 ATHENA 安装目录里的模型文件。


七、ATHENA 生成的结构可以继续给其他软件使用

原书接下来介绍了:

SSF——Standard Structure File,标准结构文件。

ATHENA 生成的标准结构文件,可以继续被其他仿真工具调用,例如:

ATLAS

或者:

DevEdit

这个结构文件中不只是保存了一张“器件图片”。

它还包含:

  • mesh 信息;
  • solution 信息;
  • model 信息;
  • 以及其他相关参数。

所以可以把结构文件理解成:

某一个工艺步骤结束之后,器件当前完整状态的数字化保存。


八、ATHENA 到底能模拟哪些工艺?

原书接下来用了很大篇幅列出 ATHENA 的功能。

这里不用把每一个模型名字都背下来。

我们只需要先建立“大分类”。

ATHENA 可以模拟:

1. 扩散

例如:

  • 杂质扩散;
  • 缺陷相关扩散;
  • 快速热退火;
  • 氧化增强或阻止扩散等。

2. 氧化

例如:

  • 单晶硅、多晶硅氧化;
  • 应力相关氧化;
  • 沟槽和复杂结构氧化等。

3. 刻蚀

包括:

  • 几何刻蚀;
  • 各向同性和各向异性刻蚀;
  • RIE;
  • 蒙特卡洛等离子体刻蚀等。

4. CMP

也就是:

化学机械抛光。

ATHENA 也包含相关模型。


5. 淀积

包括:

  • 普通淀积;
  • CVD;
  • 表面扩散和迁移;
  • 弹道淀积;
  • 用户自定义模型等。

6. 烘烤

例如:

  • 时间、温度相关的烘烤过程;
  • 光刻胶材料流动等。

7. 曝光

主要用于光刻过程中的:

光在结构和光刻胶中的传播与吸收。


8. 成像

ATHENA 可以使用:

  • 解析模型;
  • Monte Carlo 等方法;

模拟相关成像和注入过程。


9. 显影

用于模拟:

光刻胶曝光以后怎样被显影。


10. 外延

也就是:

Epitaxy,外延生长。


11. 硅化

包括一些常见金属硅化物的形成模型。


12. C 注释器

用于:

允许用户进一步自定义某些工艺模型。

所以从这一长串功能其实可以看出:

ATHENA 并不只是一个“离子注入软件”或者“扩散软件”,而是一套比较完整的二维半导体工艺模拟平台。


九、学习 ATHENA 时应该充分利用 Examples

原书在这里再次强调了第一章已经讲过的学习方法:

充分使用 ATHENA 自带的示例。

ATHENA 的示例按照不同工艺类型进行了分类,例如原书列出了:

athena_adaptmeshathena_advancedathena_calibrationathena_complexathena_compoundathena_diffusionathena_eliteathena_implantathena_miscathena_optolithathena_oxidationdoe

这些名称现在不需要背。

真正需要理解的是:

ATHENA 自带大量完整的工艺仿真案例。

所以学习某种新工艺时,可以先:

找到相近 Example      ↓跑通      ↓看懂每一步      ↓再查手册      ↓修改参数

这与第一章作者推荐的学习方法是一致的。


十、一个完整的工艺仿真是怎样组织的?

这一节后面给出了图 2.3。

这张图其实非常重要,因为它把整个 ATHENA 工艺仿真流程串起来了。

最基本的流程可以理解成:

启动 ATHENA      ↓建立网格      ↓初始化衬底      ↓工艺步骤 1      ↓工艺步骤 2      ↓……      ↓工艺步骤 n      ↓结构操作 / 特性提取      ↓TonyPlot 显示      ↓结束 ATHENA

以后第二章很多内容,实际上就是在逐个学习这个流程里的每一个“框”。


第一步:建立网格

首先需要定义:

计算区域怎么划分。

ATHENA 是基于网格进行数值计算的,所以必须先建立网格。


第二步:初始化衬底

接下来告诉 ATHENA:

  • 衬底是什么材料;
  • 掺杂是什么;
  • 晶向是什么;
  • 初始状态是什么。

也就是:

仿真从什么晶圆开始。


第三步:执行工艺步骤

然后按照真实工艺依次写:

implantdiffuseoxidationetchdeposit...

每一步都有:

模型 + 工艺参数。


第四步:提取参数

工艺做完以后,可以使用前面已经学过的:

extract

提取:

  • 结深;
  • 材料厚度;
  • 掺杂浓度;
  • 其他工艺参数。

第五步:保存或操作结构

还可以:

  • 保存结构;
  • 导入结构;
  • 旋转;
  • 镜像等。

第六步:TonyPlot 显示

最后:

tonyplot

把工艺仿真结果显示出来。


十一、原书用一个最简单的例子把这个流程串起来

原书例 2-1 只做两件真正的工艺:

硼离子注入 + 退火扩散。

首先:

go athena

启动 ATHENA。


然后定义网格:

line x ...line y ...

再初始化一个含磷的硅衬底:

init silicon c.phos=1.0e14

这里先不用深入语法。

它的意思就是:

建立一个初始硅衬底,并定义磷掺杂。


然后进行硼离子注入:

implant boron dose=1e13 energy=70

也就是:

向硅中注入硼。


接着退火扩散:

diffuse time=30 temperature=1000

表示:

在指定温度和时间下进行扩散/退火。


然后提取结深:

extract name="xj" ...

得到:

PN 结的位置。


再保存结构:

structure outfile=boron_implant.str

最后:

tonyplot boron_implant.str

把最终掺杂分布显示出来。

整个流程就是:

启动 ATHENA      ↓定义网格      ↓初始化含磷硅衬底      ↓注入硼      ↓退火扩散      ↓提取结深      ↓保存结构      ↓TonyPlot 显示      ↓quit

这其实就是一个完整 ATHENA 工艺仿真的最小版本。


十二、原书借这个例子强调了一个非常重要的问题:网格

例 2-1 最后的 TonyPlot 图显示:

  • 横轴是深度;
  • 纵轴是杂质浓度;
  • 一条曲线是硼;
  • 一条曲线是原有的磷。

两条浓度曲线相交的位置,就形成了 PN 结。

原书在这里特别提醒:

网格定义会对仿真结果产生很大影响。

甚至有时候:

网格带来的影响可能超过某些工艺参数或者物理模型本身的影响。

所以如果要比较:

某一个工艺参数改变以后,结果有什么变化?

一定要尽量保证:

使用相同的网格进行比较。

否则可能把“网格不同造成的差异”,误认为是“工艺参数造成的差异”。

这个概念在后面的工艺仿真中会一直出现。


十三、工艺仿真的结果保存在哪里?

2.1 最后,原书总结了几种工艺仿真结果:

1. 结构文件

例如:

*.str

保存最终或者中间结构。


2. 实时输出窗口

DeckBuild 运行过程中会显示:

  • 当前步骤;
  • 提取结果;
  • 运行信息等。

3. dat 文件

某些提取结果也可以保存成:

*.dat

文件。

结构文件和 dat 文件都可以进一步用 TonyPlot 查看。


本节小结

2.1「ATHENA 概述」真正想做的是:

先给我们画出整个二维工艺仿真的地图。

ATHENA 的输入可以包括:

  • 工艺步骤;
  • 版图;
  • 掩膜。

然后通过:

  • 扩散;
  • 氧化;
  • 刻蚀;
  • 淀积;
  • CMP;
  • 光刻;
  • 外延;
  • 硅化等;

模拟真实半导体制造过程。

最终得到:

一个包含材料、网格、掺杂以及其他信息的器件结构。

而一个最基本的 ATHENA 工艺仿真流程就是:

启动 ATHENA      ↓定义网格      ↓初始化衬底      ↓执行一系列工艺步骤      ↓提取工艺参数      ↓保存结构      ↓TonyPlot 查看结果

第二章后面的内容,基本就是把这个流程中的每一个步骤逐个拆开详细学习。

如果这一节只记一句话:

ATHENA 的本质,就是在计算机中按照工艺顺序一步一步“制造”半导体结构,并记录每一步之后材料、几何形状和掺杂分布怎样发生变化。


资料依据:《半导体工艺和器件仿真软件 Silvaco TCAD 实用教程》第 2.1 节“ATHENA 概述”。

相关学习资料