欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Silvaco学习日记(六)--很失败的仿真

程序员文章站 2022-07-14 21:58:47
...

最近这几天一直在做关于某篇文献的仿真,文献为:Device design assessment of 4H–SiC n-IGBT – A simulation study
其中,我犯了两个巨大的错误:
①不知道这篇文献是用什么软件模拟的,但我天真的以为就是silvaco可能是有一部分比较兴奋的原因。
②准备不够详细,没有很耐心的看完整篇文献的细节,不同于之前看文献,对文献的结果进行仿真需要知道很多详细的数据才能出现类似的结果,但是我之前养成的习惯是看趋势,分析其中的物理原因,因此这次也是比较愚蠢的错误。
首先我们先看文献中给的器件结构以及参数:
Silvaco学习日记(六)--很失败的仿真
可以看到结构并不复杂,而且左边的掺杂浓度的图真的很像是silvaco,但是TCAD软件这么多,为什么一定是silvaco别的应该也可以达到类似的效果。然后,我开始对器件结构进行仿真,仿真代码如下:

go atlas simflag="-p 6"

mesh space.mult=1.0
x.mesh loc=0 spac=0.05
x.mesh loc=3 spac=0.1
x.mesh loc=9 spac=0.1
x.mesh loc=13 spac=0.1
x.mesh loc=15 spac=0.1
x.mesh loc=16 spac=0.1
x.mesh loc=22 spac=0.1

y.mesh loc=-0.1 spac=0.2
y.mesh loc=-0.05 spac=0.2
y.mesh loc=0 spac=0.05
y.mesh loc=0.25 spac=0.05
y.mesh loc=0.5 spac=0.05
y.mesh loc=140 spac=2
y.mesh loc=142 spac=0.05
y.mesh loc=145 spac=0.05
y.mesh loc=145.1 spac=0.1

region number=1 x.min=0 x.max=22 y.min=0 y.max=145 material=sic-4H
region number=2 x.min=0 x.max=22 y.min=-0.1 y.max=0 material=sio2
region number=3 x.min=0 x.max=9 y.min=-0.1 y.max=0 material=aluminum
region number=4 x.min=13 x.max=22 y.min=-0.1 y.max=-0.05 material=aluminum
region number=5 x.min=0 x.max=22 y.min=145 y.max=145.1 material=aluminum

electrode reg=3 name=emitter
electrode reg=4 name=gate
electrode reg=5 name=collector

doping uniform reg=1 x.min=0 x.max=22 y.min=0 y.max=145 n.type concentration=2e14
doping uniform reg=1 x.min=0 x.max=16 y.min=0 y.max=0.5 p.type concentration=5e17
doping uniform reg=1 x.min=0 x.max=3 y.min=0 y.max=0.25 p.type concentration=1e18
doping uniform reg=1 x.min=3 x.max=15 y.min=0 y.max=0.25 n.type concentration=1e19
doping uniform reg=1 x.min=0 x.max=22 y.min=140 y.max=142 n.type concentration=1e17
doping uniform reg=1 x.min=0 x.max=22 y.min=142 y.max=145 p.type concentration=1e19

material material=4H-sic eg300=3.24 egalpha=4.15e-4 egbeta=-131 permittivity=9.66 \
	affinity=4.2 augn=5e-32 augp=2e-32 eab=0.2 edb=0.1 gvb=4 gcb=2 lt.taun=5 \
	lt.taup=5 nsrhn=3e17 nsrhp=3e17 arichn=110 arichp=30

mobility   region=1  mu1n.caug=40 mu2n.caug=950 ncritn.caug=2e17 deltan.caug=0.73 \
	gamman.caug=-0.76 alphan.caug=0 betan.caug=-2.4 mu1p.caug=53.3 \
	mu2p.caug=105.4 ncritp.caug=2.2e18 deltap.caug=0.7 gammap.caug=0 \
	alphap.caug=0 betap.caug=-2.1 vsatn=2e7 vsatp=2e7 betan=2 betap=1

models  analytic conmob fldmob srh auger fermi optr bgn print temperature=300

save outf=n-longIGBT-lowgate.str

quit

仿真结果如下:
Silvaco学习日记(六)--很失败的仿真
这里开始与文献中的图片差别还是比较大的,主要是在几个横向PN结的耗尽区,但是我开始并没有注意这里,这或许不是我仿真失败的主要原因,但却是失败的预兆。
下面就是另一个比较烦的错误,由于我使用的silvaco并不是正版,因此,存在内存分配失败的问题,我对器件的行为进行分析,想要看其栅压为20V,漏极电压从0 到8的过程中集电极电流变化的趋势,代码如下:

go atlas simflag="-p 6"
mesh inf=n-longIGBT-lowgate.str


models bipolar

interface qf=1e11 

method newton itlimit=25 maxtrap=2

solve init
solve vgate=20

log outf=lowgate-VceJc-in1e11.log
solve vcollector=0 vstep=0.05 vfinal=8 name=collector
log off

save outf=lowgate-VceJc-in1e11.str

quit

在进行栅极电压的计算时,出现了问题,软件的提示为:
Silvaco学习日记(六)--很失败的仿真
memory allocation failure,我的笔记本为16G的内存,按理来说应该时够用的,但是注意左边的资源使用的那一栏的情况,内存最大使用为686m,这应该时软件的问题,可能更大内存的电脑silvaco可以用到更多的内存。
但是,在此之前,我曾进行过一些不成熟的仿真,主要表现在IGBT的各区域的结构瞎写,很主观,但是也暴漏出了一些问题。我本以为可以使用mos模型进行求解,但是IGBT作为双极性器件为什么要用单极性的MOS模型进行仿真呢,这确实是因为我对这个软件的了解不够。 因此这么仿真出来的曲线并不对。
我要仿真的目标曲线同样来自于文献为:
Silvaco学习日记(六)--很失败的仿真
改变界面处电荷密度看集电极的电流密度。
我的不成熟的仿真结果分别为:
①瞎写的IGBT结构
Silvaco学习日记(六)--很失败的仿真
②错误物理模型的仿真结果
Silvaco学习日记(六)--很失败的仿真
③命名集电极电压要仿真到8V却仿真到2V左右,界面电荷密度分别为0,5e11

Silvaco学习日记(六)--很失败的仿真
Silvaco学习日记(六)--很失败的仿真
③与文献结果不符合,我的仿真结果竟然为界面缺陷越多,器件性能越好(看到这个结果,当时我真的表情精彩)
Silvaco学习日记(六)--很失败的仿真
总之,这次遇到的错误很多,但确实是一次难得的学习过程,这篇文献我以后还会再仿真的,不一定是用silvaco也许是别的软件,以上出现的问题有哪位大佬可以解决,麻烦评论或者私信联系我,学习路漫漫,我将不懈努力。