600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > Silvaco TCAD仿真学习Lesson2——Athena仿真

Silvaco TCAD仿真学习Lesson2——Athena仿真

时间:2018-12-24 02:29:10

相关推荐

Silvaco TCAD仿真学习Lesson2——Athena仿真

哈喽爱吾瑞巴蒂!今天来和大家分享习经验之使用工艺仿真Process Simulation来设计器件~~会涉及到many Silvaco的技巧喔。emm关于在做好的器件上做性能分析,下次在分享吧,内容有点多多

Athena工艺仿真的操作流程

几何初始化 initial geometry

仿真网格、基底初始化保存与加载 save & load

保存仿真结构、载入仿真结构并进行工艺仿真工艺步骤 Process Simulation

沉积deposition、离子注入ion implantation、蚀刻etching、扩散diffusing、

Photo process、外延层生长Epitaxial电极 Electrode

电极定义 electrode define结果分析 Result Analysis

参数萃取 extract、图像显示Tony Plot

在做工艺仿真前,打开DeckBild,要设置一下,保存工艺过程中每一步的结果,这样的话,就可以查看每一个工艺所产生的结构图,非常利于初学者!!!操作方法是:Edit -> Preference -> History Settings 勾选Athena前的enable,并将length值设置为999,应用确认就可以了。

今天的案例是用Athena做工艺仿真,生成器件,这真的狠狠狠吃器件物理的功底唉。就以解读代码的方式,一起学习吧~废话不多说,直接上代码:

go athena #就是执行Athena编辑器呗

#接下来和上章一样,先画网格,不过为了和atlas区分,把关键词mesh改成line哦,画网格必须的两步:画网线切割、材料初始化。为了减少工艺时间,对称器件只需要做一半,然后通过对称操作补全另一半即可!~

#几何初始化画横线

line x loc=0.0 spac=0.05

line x loc=0.1 spac=0.02

line x loc=0.35 spac=0.01

line x loc=0.6 spac=0.1

#画竖线

line y loc=0.0 spac=0.002

line y loc=10 spac=1

#网格材料Si初始化、掺杂硼原子初始化、晶向100、2D

init silicon c.boron=1.0e17 orientation=100 two.d #history001

#以上完成了几何初始化操作

#下面在这个几何结构上做一系列的工艺操作,从而制作出nMOS

#sacrificial "cleaning"oxide 制作氧化层做保护层

diffus time=20 temp=1000 dryo2 #扩散干氧 #history002

#vt adjust 电压调节 implant 注入硼

implant boron dose=1e11 energy=30 tilt=0 rotation=0 #history003

strip oxide #把oxide 全部吃掉 #history004

#gate oxide grown here:做栅极氧化增长:

diffus time=10 temp=945 dryo2 #氧化 #history005

#Extract a design parameter #萃取器件参数

extract name=“gateox” thickness oxide mat.occno=1 x.val=0.05 #萃取栅极氧化层厚度

depo poly thick=0.2 divi=10 #沉积生长多晶硅 #history006

#from now on the situation is 2-D #开始以二维操作

etch poly left p1.x=0.35 #吃掉0.35以左的多晶硅 #history007

diffuse time=3 temp=900 weto2 #湿氧氧化 #history008

implant phosphor dose=2e14 energy=11 tilt=0 rotation=0 #注入磷原子 #history009

depo oxide thick=0.120 divisions=8 #沉积氧化层 #history010

etch oxide dry thick=0.120 #干蚀刻 氧化层 #history011

implant arsenic dose=4.0e15 energy=28 tilt=0 rotation=0 #注入砷原子 #history012

diffuse time=1 temp=900 inert #注入惰性物 #history013

#pattern s/d contact metal 漏源极

etch oxide left p1.x=0.1 #吃掉x=0.1以左的氧化层 #history014

etch oxide start x=0.357 y=-0.15 #吃掉一个矩形,把栅极多晶硅上面的氧化层吃掉

etch cont x=0.6 y=-0.15

etch cont x=0.6 y=-0.3

etch done x=0.357 y=-0.3 #history015

#上面四行代码从start 到 done 是一条语句,蚀刻掉了(0.357,-0.15)->(0.6,-0.15)->(0.6,-0.3)->(0.357,-0.3)区域内的氧化层。

deposit alumin thick=0.1 div=20 #沉积铝 #history016

etch alumin start x=0.35 y=0.1 #吃掉一个矩形区域的铝

etch cont x=0.1 y=0.1

etch cont x=0.1 y=-0.4

etch done x=0.35 y=-0.4 #history017

#上面四行代码从start 到 done 是一条语句,蚀刻掉了(0.35,0.1)->(0.1,0.1)->(0.1,-0.4)->(0.35,0.4)区域内的铝。

#以上时工艺操作,下面是结果分析之萃取,查看器件特性

#Extract design parameters

#extract final S/D Xj

extract name=“nxj” xj silicon mat.occno=1 x.val=0.1 junc.occno=1

#extract the N++ regions sheet resistance

extract name=“n++ sheet rho” sheet.res material=“Silicon” mat.occno=1 x.val=0.05 region.occno=1

#extract the sheet rho under the spacer,of the LDD region

extract name=“ldd sheet rho” sheet.res material=“Silicon”

mat.occno=1 x.val=0.3 region.occno=1

#extract the surface conc under the channel.

extract name=“chan surf conc” surf.conc impurity=“Net Doping”

material=“Silicon” mat.occno=1 x.val=0.45

#extract a curve of conductance versus bias.

extract start material=“Polysilicon” mat.occno=1

bias=0.0 bias.step=0.2 bias.stop=2 x.val=0.45

extract done name=“sheet cond v bias”

curve(bias,1dn.conduct material=“Silicon” mat.occno=1 region.occno=1)

outfile=“extract.dat”

#extract the long chan Vt

extract name=“n1dvt” 1dvt ntype vb=0.0 qss=1e10 x.val=0.49

#以上萃取语句不需要刻意记忆,可以用Dialog生成。方法与上一章的器件模拟方法不同,工艺仿真方式中的方法是:commands->syntax dialogs ->extract diags->process extract.

#以上时萃取物理特性,下面是镜像和电极定义

structure mirror right #镜像对称

structure outfile=mirror.str #保存镜像结构,完整的nMOS

electrode name=gate x=0.5 y=-0.2 #history018

electrode name=source x=0.05 y=0 #history019

electrode name=drain x=1.15 y=0 #history020

electrode name=substrate backside #history021

structure outfile=nMOS_athena.str #工艺仿真器件制作完成,保存

quit

至此,已经通过工艺仿真,制备出了nMOS,此后可以在这个器件上进行一系列物理特性分析。

源代码呈上:

go athena#line x loc=0.0 spac=0.05line x loc=0.1 spac=0.02line x loc=0.35 spac=0.01line x loc=0.6 spac=0.1#line y loc=0.0 spac=0.002line y loc=10 spac=1#init silicon c.boron=1.0e17 orientation=100 two.d#sacrificial "cleaning"oxidediffus time=20 temp=1000 dryo2##vt adjust implantimplant boron dose=1e11 energy=30 tilt=0 rotation=0strip oxide#gate oxide grown here:-diffus time=10 temp=945 dryo2##Extract a design parameterextract name="gateox" thickness oxide mat.occno=1 x.val=0.05#depo poly thick=0.2 divi=10##from now on the situation is 2-Detch poly left p1.x=0.35#diffuse time=3 temp=900 weto2#implant phosphor dose=2e14 energy=11 tilt=0 rotation=0#depo oxide thick=0.120 divisions=8#etch oxide dry thick=0.120#implant arsenic dose=4.0e15 energy=28 tilt=0 rotation=0#diffuse time=1 temp=900 inert#pattern s/d contact metaletch oxide left p1.x=0.1etch oxide start x=0.357 y=-0.15etch cont x=0.6 y=-0.15etch cont x=0.6 y=-0.3etch done x=0.357 y=-0.3deposit alumin thick=0.1 div=20etch alumin start x=0.35 y=0.1etch cont x=0.1 y=0.1etch cont x=0.1 y=-0.4etch done x=0.35 y=-0.4#Extract design parameters#extract final S/D Xjextract name="nxj" xj silicon mat.occno=1 x.val=0.1 junc.occno=1#extract the N++ regions sheet resistanceextract name="n++ sheet rho" sheet.res material="Silicon" mat.occno=1 x.val=0.05 region.occno=1#extract the sheet rho under the spacer,of the LDD regionextract name="ldd sheet rho" sheet.res material="Silicon"\mat.occno=1 x.val=0.3 region.occno=1#extract the surface conc under the channel.extract name="chan surf conc" surf.conc impurity="Net Doping"\material="Silicon" mat.occno=1 x.val=0.45# extract a curve of conductance versus bias.extract start material="Polysilicon" mat.occno=1 \bias=0.0 bias.step=0.2 bias.stop=2 x.val=0.45extract done name="sheet cond v bias" \curve(bias,1dn.conduct material="Silicon" mat.occno=1 region.occno=1) \outfile="extract.dat"#extract the long chan Vtextract name="n1dvt" 1dvt ntype vb=0.0 qss=1e10 x.val=0.49structure mirror rightstructure outfile=mirror.strelectrode name=gate x=0.5 y=-0.2electrode name=source x=0.05 y=0electrode name=drain x=1.15 y=0electrode name=substrate backsidestructure outfile=nMOS_athena.strquit

下面是一些在器件上做物理特性分析

######IdVd @Vg=1,2,3 Vd=0~5V 栅压为1V,2V,3V时,漏电流与漏电压的关系:(上章解释过的语句都没有在本章加注释)

go atlas simflags="-P 3"

mesh inf=nMOS_athena.str

models mos

interface qf=3e10

method newton itlimit=25 maxtrap=4

output con.band val.band charge #我不懂这句

solve init

#下面三行 分别在器件结构上设置栅压为 1v 2v 3v 分别存档,以备下面使用

solve vgate=1 outf=tempVg1

solve vgate=2 outf=tempVg2

solve vgate=3 outf=tempVg3

#使用栅压为1v的器件结构文档

load inf=tempVg1

log outf=IdVd_Vg1.log

solve vdrain=0 vstep=0.05 vfinal=5 name=drain

log off

save outf=IdVd_V1.str

#使用栅压为2v的器件结构文档

load inf=tempVg2

log outf=IdVd_Vg2.log

solve vdrain=0 vstep=0.05 vfinal=5 name=drain

log off

save outf=IdVd_V3.str

#使用栅压为3v的器件结构文档

load inf=tempVg3

log outf=IdVd_Vg3.log

solve vdrain=0 vstep=0.05 vfinal=5 name=drain

save outf=IdVd_Vg3_Vd5.str

quit

#######BVoff 计算击穿电压

go atlas simflags="-P 3"

mesh inf=nMOS_athena.str

models mos

impact selb

interface qf=3e10

method newton itlimit=25 maxtrap=4

output con.band val.band charge flowlines #(啥玩意儿啊这是,我不理解)

solve init

log outf=BVoff.log

solve vdrain=0 vstep=0.1 vfinal=1 name=drain

solve vstep=0.5 vfinal=20 name=drain compl=1e-11 cname=drain

#我觉着上面这两句意思是,在0~1v上每次增长0.1v;然后在电流达到1e-11前,漏压每次增加0.5v

save outf=BVoff_Id1e-11.str

solve vstep=0.1 vfinal=20 name=drain compl=1e-9 cname=drain

#我jio着就是在漏电流达到1e-9前,漏压每次增长0.1v

save outf=BVoff_Id1e-9.str

contact name=drain current

solve imult istep=2 ifinal=1e-6 name=drain #(救命啊,我不理解)哦对了,可以看文档!!

log off

save outf=BVoff_Id1e-6.str

extract init inf=“BVoff.log”#

extract name=“bvoff” x.val from curve(abs(v.“drain”),abs(i.“drain”)) where y.val=1.0e-7

quit

上个源码:

###### IdVd @Vg=1,2,3 Vd=0~5Vgo atlas simflags="-P 3"mesh inf=nMOS_athena.strmodels mosinterface qf=3e10method newton itlimit=25 maxtrap=4output con.band val.band chargesolve initsolve vgate=1 outf=tempVg1solve vgate=2 outf=tempVg2solve vgate=3 outf=tempVg3load inf=tempVg1log outf=IdVd_Vg1.logsolve vdrain=0 vstep=0.05 vfinal=5 name=drainlog offsave outf=IdVd_V1.strload inf=tempVg2log outf=IdVd_Vg2.logsolve vdrain=0 vstep=0.05 vfinal=5 name=drainlog offsave outf=IdVd_V3.strload inf=tempVg3log outf=IdVd_Vg3.logsolve vdrain=0 vstep=0.05 vfinal=5 name=drainsave outf=IdVd_Vg3_Vd5.strquit###### BVoffgo atlas simflags="-P 3"mesh inf=nMOS_athena.strmodels mosimpact selbinterface qf=3e10method newton itlimit=25 maxtrap=4output con.band val.band charge flowlinessolve initlog outf=BVoff.logsolve vdrain=0 vstep=0.1 vfinal=1 name=drainsolve vstep=0.5 vfinal=20 name=drain compl=1e-11 cname=drainsave outf=BVoff_Id1e-11.strsolve vstep=0.1 vfinal=20 name=drain compl=1e-9 cname=drainsave outf=BVoff_Id1e-9.strcontact name=drain currentsolve imult istep=2 ifinal=1e-6 name=drainlog offsave outf=BVoff_Id1e-6.strextract init inf="BVoff.log"#extract name="bvoff" x.val from curve(abs(v."drain"),abs(i."drain")) where y.val=1.0e-7quit

下面写一些课程中讲到的关于DeckBuild的使用技巧:

工艺步骤

工艺步骤一共有七个,都可以从Dialogs中直接生成代码

蚀刻etching的不同蚀刻方法

①etchall #把某材料全部etch

②etchleft p1.x= #左边的某个位置全部etch,如果x positiong刚好不存在,就会在x position附近以左etch , 下同

③etchright p1.x=

④etchabove p1.y= #上研磨

⑤etchbelow p1.y= #基板研磨

⑥etchstart x= y=

etch continue x= y=

etch continue x= y=

…………

etch done x= y= #逆时针有序画“圈”

⑦etchdry thick= #把某材料干蚀刻多少um

# 干蚀刻就是 保留原有形状进行etch

关于注入

注入的默认值是default tilt=7, rotation=30;tilt=0才是垂直注入

定义电极

可以利用dialogs进行设置;athena认识的名称:drain,source,bulk(主体),substrate(基底),emitter,collector,base,anode,cathode,nsource,psource,ndrain,pdrain,vdd,vss,vee,vbbvcc

Athena使用操作

关于运行:

Op1.将光标定位在某一行,设置停止位,点击 ;或者可以右击行号,选择set a stop,这样,程序就可以执行到此停止,然后再次点击 会继续向下执行。

Op2.单步执行按钮

Op3.又一种执行方式run to line,就是执行到设有此标志的行,光标定位到此行,点击 ,然后执行程序,就会在标记的行处停止,标记行不会被执行!!

关于图形Plot

Op1. plot工具中同时对多张图同步操作, 可以将所有图片同时选中,但是不能取消全选,慎用。

Op2.查看掺杂情况,右击图片,选择显示

可以选择自己需要在图中显示的内容。其中等高线图可以大概看出杂质分布情况。

Op3.使用cut line 的方式看图中掺杂情况,在plot中,选择工具tools->切割线cut line,有纵向切、横向切、斜线切、任意切、点切和输入起始点切。进行切后就会出现杂质分布曲线。注意,切线后产生的杂质分布曲线是和你切线的起末点一致的。

Op4.将三幅曲线图合并到一张图上,操作方法是:将需要操作的曲线图选中,然后编辑Edit->做覆盖图make overlay就可以了。但是,我不知道怎么选中多幅图(但如果不全选的话)!老师说用滑鼠中键???俺不会呜呜呜

Op5.查看氧化层厚度,方式1:通过萃取extract;方式2:通过plot的工具栏有标尺ruler

Okay,that’s all.感谢浏览!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。