我是用AlGaN做光电探测的,所以我只需要用到Atlas做仿真,首推唐龙谷的半导体工艺和器件仿真工具 Silvaco TCAD 实用教程 ,以及Atlas的用户手册。

我的学习模式是用知云打开,然后读师兄师姐的程序,不清楚的参数或者代码就用知云的搜索功能搜,我一般先看唐龙谷的,如果唐龙谷的没有再去用户手册上找,一般这样就能慢慢看懂代码了。

下面是一些Atlas仿真中需要用到的参数的英文简写。(这是对20级学长的SAM结构的一个代码的注释)

首先该软件的默认长度单位是um。

permittivity表示材料介电常数。

nc300表示300K时导带电子有效密度,nv300表示300K时价带空穴有效密度。

mun表示低电场时的电子迁移率,指定了迁移率浓度依赖模型。mup表示低电场时的空穴迁移率,指定了迁移率浓度依赖模型。

vsatn和vsatp是电子和空穴的饱和速度。

augn和augp分别是电子与空穴的俄歇复合系数。我看论文给的参数,这两个一般相等。

taun0与taup0是电子与空穴的SRH寿命。

copt是材料的光学复合速率,设定模型时需要用model optr。

index.file是复折射率,从文件中导入不同波长时的复折射率。

格式如下图所示。

200
0.41333    1.5    1.02982E-15
0.41143    1.5    1.64313E-15

最上面的200就表示不同波长的光波总数为200,然后下面0.41333表示光波长,单位是um,即413nm,然后1.5就是波长为413nm时的折射率实部,1.02982E-15就是波长为413nm时的折射率虚部。

m.vthn 和 m.vthp是有效质量。

关于模型的选择,使用models和IMPACT语句可以指定物理模型。

bb.a,bb.b,bb.gamma是用户自定义参数,这三个参数可以决定BBT,然后BBT可以决定选择什么模型。

conmob and fldmob是标准的浓度依赖模型和平行电场模型。

bbt.std 是 Band-to-Band (standard)。

models polarization对于我们做氮化物半导体来说至关重要,因为这包含了极化电荷的定义,通过models语句的polariz参数可以纤锌矿材料中的STET由自发极化(Psp)和压电极化(Ppi)两个组分表征。因此,总极化Pt就等于这两个相加了。

极化正电荷加在底部,极化负电荷加在顶部,polar.scale可以修改极性。

impact selb表示Selberherr冲击电离模型,然后后面的那些an1,bn1,ap1,bp1,ergan就去参考论文里给的数值就好了。

output e.field jx.e jy.e jx.h jy.h opt.int con.band val.band u.bbt u.srh  polar.charge qss

以上就是输出的信息,你要输出什么就得在上面打什么。

e.field就是输出电场信息。

jx.e,jy.e,jx.h,jy.h就是输出x与y方向上的电子与空穴的电流密度。

opt.int就是输出一个包含光强分布的结构文件。

con.band和val.band表示输出导带与价带信息。

u.bbt指定了带带隧穿几率,包含在standard structure file。

u.srh表示SRH重组速率。(不太确定,手册上的表达是Specifies that the integrated SRH recombination rate)

polar.charge表示极化电荷,将被包含在structure file。

qss指定了表面电荷参数。

method climit=1e-4

然后是climit,一般都是1e-4,只要器件击穿前的电流不是太大。经过 solve之后保存的结构文件中将包含有电学信息(电势,电流密度,电极的电流电压等,但是上面的output我们应该也设置了吧)。

然后是solve init ,该语句的作用是把所有电极的电压变成0V。

save outf=0charge040.str
log outf=charge040.log
solve vanode=0.0
solve vanode=-0.1 vstep=-0.1 vfinal=-5 name=anode
solve vanode=-5 vstep=-1 vfinal=-75 name=anode
solve vanode=-75 vstep=-0.1 vfinal=-125 name=anode
save outf=charge040.str 
tonyplot charge040.str

log off

最上面两句是必须要加的,应该相当于创立文件夹?

第三句就是给阳极电压定成0。

然后第四句,给阳极加上-0.1V的电压,然后再每次加上-0.1V,直到最后anode的电压变为-5V。

第五句就是给阳极加上-5V的电压,然后每次再加上-1V,直到最后anode的电压变成了-75V。

第六句同理。

第七句保存。

第八句展示对应的暗电流的I-V图,因为这个时候没加光。

log off就是结束写日志。

beam num=1 wavelength=0.270 angle=270 x.ori=60 y.ori=1

solve init

solve b1=9e-02

然后求完了暗电流再求光电流,首先定义光源,如上所示。这显然是单色光,因为波长只有270nm,然后x.ori和y.ori是指光源所在的位置,然后angle是指发出的光和x轴的夹角,如下图所示,如果这个不定义就是默认0°。

由于上面求了暗电流,所以要初始化一下电极电压,然后在beam语句中是没有定义定义光强的,光强是用solve语句定义的,就是第三句,光强为9e-2,单位为W/cm^2

在二维仿真中,Atlas的y轴是指向下的,x轴指向右。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐