Silvaco 仿真NMOS 差分对器件剖面结构图

一、设计要求

本次需要使用 Silvaco ATHENA 完成:W/L = 10 μm / 0.35 μm 的 NMOS 差分对器件剖面结构及净掺杂分布图。

说明:

  • W = 10 μm:器件宽度,在二维剖面中是垂直纸面方向;

  • L = 0.35 μm:沟道长度,在二维剖面中由多晶硅栅长度体现;

  • 本仿真为简化工艺结构示意,主要用于展示 NMOS 差分对的剖面结构、栅极、源漏区以及净掺杂分布。

二、ATHENA 工艺仿真代码

新建文件:

nmos_diff_035um.in

将下面代码完整复制进去:

复制代码
go athena

# =====================================================
# NMOS Differential Pair Process Simulation
# W/L = 10 um / 0.35 um
# Technology: simplified 0.35 um CMOS
#
# Debug notes:
# 1. init cannot use conc=, use c.boron= instead.
# 2. deposit does not support x.min / x.max in this version.
# 3. etch left/right can easily remove all polysilicon.
# 4. etch dry without correct mask may remove all material.
# 5. etch cont must be written as: etch cont x=... y=...
# 6. Use new outfile name to avoid opening old .str file.
# =====================================================

# ---------- Mesh ----------
line x loc=0.00 spac=0.05
line x loc=0.50 spac=0.02
line x loc=0.55 spac=0.005
line x loc=0.90 spac=0.005
line x loc=1.10 spac=0.005
line x loc=1.45 spac=0.005
line x loc=1.50 spac=0.02
line x loc=2.00 spac=0.05

line y loc=0.00 spac=0.005
line y loc=0.05 spac=0.005
line y loc=0.20 spac=0.02
line y loc=0.50 spac=0.05
line y loc=1.50 spac=0.10

# ---------- Initialize P-type silicon substrate ----------
init silicon c.boron=1e15 orientation=100 two.d

# ---------- Grow gate oxide ----------
diffuse time=25 temp=900 dryo2

# ---------- Deposit polysilicon gate ----------
deposit polysilicon thick=0.20 divisions=5

# ---------- Dope polysilicon ----------
implant phosphorus dose=3e15 energy=20

# Save checkpoint: full polysilicon layer
structure outfile=dbg_01_full_poly.str

# =====================================================
# Pattern polysilicon
# Keep two gates:
# Left gate : x = 0.55 ~ 0.90, L = 0.35 um
# Right gate: x = 1.10 ~ 1.45, L = 0.35 um
#
# Etch away:
# Region 1: x = 0.00 ~ 0.55
# Region 2: x = 0.90 ~ 1.10
# Region 3: x = 1.45 ~ 2.00
# =====================================================

# Etch region 1: x = 0.00 ~ 0.55
etch polysilicon start x=0.00 y=-0.30
etch cont        x=0.00 y= 0.05
etch cont        x=0.55 y= 0.05
etch done        x=0.55 y=-0.30

# Etch region 2: x = 0.90 ~ 1.10
etch polysilicon start x=0.90 y=-0.30
etch cont        x=0.90 y= 0.05
etch cont        x=1.10 y= 0.05
etch done        x=1.10 y=-0.30

# Etch region 3: x = 1.45 ~ 2.00
etch polysilicon start x=1.45 y=-0.30
etch cont        x=1.45 y= 0.05
etch cont        x=2.00 y= 0.05
etch done        x=2.00 y=-0.30

# Save checkpoint: patterned polysilicon gates
structure outfile=dbg_02_poly_pattern.str

# ---------- Light oxidation / sidewall oxide simplified ----------
diffuse time=10 temp=900 dryo2

# ---------- N+ source/drain implantation ----------
implant arsenic dose=5e14 energy=30

# ---------- Anneal activation ----------
diffuse time=20 temp=1000 nitrogen

# ---------- Deposit aluminum ----------
deposit aluminum thick=0.20 divisions=3

# =====================================================
# Pattern aluminum
# Etch several intervals and keep metal contact blocks
# =====================================================

# Etch x = 0.40 ~ 0.60
etch aluminum start x=0.40 y=-0.80
etch cont      x=0.40 y= 0.10
etch cont      x=0.60 y= 0.10
etch done      x=0.60 y=-0.80

# Etch x = 0.85 ~ 0.95
etch aluminum start x=0.85 y=-0.80
etch cont      x=0.85 y= 0.10
etch cont      x=0.95 y= 0.10
etch done      x=0.95 y=-0.80

# Etch x = 1.05 ~ 1.15
etch aluminum start x=1.05 y=-0.80
etch cont      x=1.05 y= 0.10
etch cont      x=1.15 y= 0.10
etch done      x=1.15 y=-0.80

# Etch x = 1.40 ~ 1.60
etch aluminum start x=1.40 y=-0.80
etch cont      x=1.40 y= 0.10
etch cont      x=1.60 y= 0.10
etch done      x=1.60 y=-0.80

# ---------- Save final structure ----------
structure outfile=nmos_diff_v8_final.str

# ---------- Open TonyPlot ----------
tonyplot nmos_diff_v8_final.str

quit

三、运行仿真

新建文件并命名后

  1. 打开 Silvaco DeckBuild;
  1. 点击:

File → Open

打开 `nmos_diff_035um.in`;

  1. 点击绿色三角形 Run;

  2. 等仿真运行结束;

  3. TonyPlot 会自动打开结构文件。

运行成功后,TonyPlot 标题栏应显示:

四、在 TonyPlot 中显示净掺杂分布

4.1 打开 Display 设置

在 TonyPlot 菜单栏点击:

```text

Plot → Display...

```

弹出图标窗口后,点击第 4 个彩虹色块图标,即 Contours 图标,然后点击:

```text

APPLY

```

4.2 设置 Contours 参数

设置完成后点击:

```text

Apply → OK

```

注意:

Log 坐标下最小值不要填 0。

因为对数坐标中 0 没有意义,容易导致整张图显示异常或者变成单一颜色。

五、正确结果应该长什么样?

正常情况下,TonyPlot 图中应该能看到:

  • Silicon 硅衬底;

  • SiO2 栅氧化层;

  • 两个 Polysilicon 多晶硅栅;

  • Aluminum 金属接触块;

  • 栅极两侧的 N+ 源漏重掺杂区;

  • 两个 NMOS 管共用中间源区,形成差分对结构。

Materials 列表中应该至少有:

```text

Silicon

SiO2

Polysilicon

Aluminum

```

六、结果图解释

图中不同颜色表示不同掺杂浓度范围。

一般可以这样理解:

  • 红色/橙红色区域:源漏 N+ 重掺杂区,掺杂浓度最高;

  • 黄色/绿色区域:衬底和过渡区域;

  • 栅极下方区域:沟道区域;

  • 上方块状结构:多晶硅栅和金属接触。

七、保存图片

八、简单排错思路

不用死记命令,主要按下面思路判断。

1. 如果 DeckBuild 报错

先看第一条红色 error,不要只看最后一行。

parameter conc does not exist,说明某个参数不被当前 ATHENA 版本支持。

这次的解决方式是把conc=1e15改成:c.boron=1e15


2. 如果图全是一个颜色

这通常不是仿真失败,而是 TonyPlot 显示设置问题。

检查:

  • Quantity 是否为 Abs Net Doping
  • Type 是否为 Log
  • Range 最小值是否填了 0。

3. 如果一直改代码但图不变

很可能是打开了旧结构文件。

解决方法:

每次调试时可以换一个新的输出文件名

十、总结

本次使用 Silvaco ATHENA 完成了 W/L=10 μm/0.35 μm NMOS 差分对器件剖面结构仿真。通过衬底初始化、栅氧化、多晶硅沉积与刻蚀、源漏注入、退火以及金属化,最终得到包含两个 NMOS 栅极、源漏区和金属接触的二维剖面结构。

这次主要问题不是原理复杂,而是 ATHENA 不同版本对部分命令参数支持不完全一致,所以调试时应重点关注 DeckBuild 的第一条 error,并确认 TonyPlot 打开的是否为最新生成的 .str 文件。最终结果图可以用于课程设计报告中的器件结构与净掺杂分布分析。

相关推荐
魔法阵维护师2 小时前
从零开发游戏需要学习的c#模块,第十二章(rpg小游戏入门,中篇,金币收集与ui显示)
学习·游戏·c#
阳光九叶草LXGZXJ2 小时前
达梦数据库-堆栈看问题-01-asmapi_asm_extent_load
linux·运维·数据库·sql·学习
魔法阵维护师2 小时前
从零开发游戏需要学习的c#模块,第十九章(在游戏画面里显示文字 —— FontStashSharp)
学习·游戏·c#
清平乐的技术专栏2 小时前
【FlinkSQL笔记】(二)Flink SQL 基础语法详解
笔记·sql·flink
Dontla2 小时前
(小浪)LangGraph多Agent教程笔记(多智能体)
笔记
kobesdu3 小时前
【ROS2实战笔记-23】参数系统中的动态参数与远程加载安全剖析
笔记·安全·slam·ros2
PNP Robotics3 小时前
PNP机器人亮相南京学术论坛,分享具身智能多模态数据采集前沿成果
人工智能·深度学习·学习·机器学习·virtualenv
毕小宝3 小时前
AI 编程应用:实现 npm CLI 工具 scp-upload
学习
清钟沁桐3 小时前
mlir 编译器学习笔记之十 -- 数据类型
笔记·学习·mlir