NPN型双极晶体管半导体器件课程设计.docx
《NPN型双极晶体管半导体器件课程设计.docx》由会员分享,可在线阅读,更多相关《NPN型双极晶体管半导体器件课程设计.docx(12页珍藏版)》请在冰点文库上搜索。
NPN型双极晶体管半导体器件课程设计
微电子器件课程设计报告
题目:
NPN型双极晶体管
班级:
微电0802班
学号:
080803206
姓名:
李子忠
指导老师:
刘剑霜
2011年6月6日
一、目标结构
NPN型双极晶体管
二、目标参数
最终从IV曲线中提取出包括fT和Gain在内的设计参数。
三、在该例中将使用:
(1)多晶硅发射双极器件的工艺模拟;
(2)在DEVEDIT中对结构网格重新划分;
(3)提取fT和peakgain。
ATLAS中的解过程:
1。
设置集电极偏压为2V。
2。
用log语句用来定义Gummelplot数据集文件.
3。
用extract语句提取BJT的最大增益"maxgain”以及最大ft,"maxft".Gummelplot:
晶体管的集电极电流Ic、基极电流Ib与基极-发射极电压Vbe关系图(以半对数坐标的形式)。
四、制造工艺设计
4。
1.首先在ATHENA中定义0。
8um*1.0um的硅区域作为基底,掺杂为均匀的砷杂质,浓度为2。
0e16/cm3,然后在基底上注入能量为18ev,浓度为4。
5e15/cm3的掺杂杂质硼,退火,淀积一层厚度为0。
3um的多晶硅,淀积过后,马上进行多晶硅掺杂,掺杂为能量50ev,浓度7。
5e15/cm3的砷杂质,接着进行多晶硅栅的刻蚀(刻蚀位置在0。
2um处)此时形成N++型杂质(发射区)。
刻蚀后进行多晶氧化,由于氧化是在一个图形化(即非平面)以及没有损伤的多晶上进行的,所以使用的模型将会是fermi以及compress,进行氧化工艺步骤时分别在干氧和氮的气氛下进行退火,接着进行离子注入,注入能量18ev,浓度2。
5e13/cm3的杂质硼,随后进行侧墙氧化层淀积并进行刻蚀,再一次注入硼,能量30ev,浓度1.0e15/cm3,形成P+杂质(基区)并作一次镜像处理即可形成完整NPN结构,最后淀积铝电极。
4。
2.三次注入硼的目的:
第一次硼注入形成本征基区;第二次硼注入自对准(self—aligned)于多晶硅发射区以形成一个连接本征基区和p+基极接触的connection.多晶发射极旁的侧墙(spacer-like)结构用来隔开p+基极接触和提供自对准.在模拟过程中,relax语句是用来减小结构深处的网格密度,从而只需模拟器件的一半;第三次硼注入,形成p+基区。
4。
3。
遇到的问题
经常遇到这样一种情况:
一个网格可用于工艺模拟,但如果用于器件模拟效果却不甚理想。
在这种情况下,可以用网格产生工具DEVEDIT用来重建网格,从而以实现整个半导体区域内无钝角三角形。
五、原胞版图和工艺仿真结果:
用工艺软件ATHENA制作的NPN基本结构:
用Cutline工具截取Boron的浓度分布图如下:
用Cutline工具截取Arsenic的浓度分布图如下:
用Cutline工具截取净掺杂的浓度分布图如下:
最后结果如图。
可以看出:
发射极、基极、集电极的净掺杂浓度分别为10的19、17(接触处为19)、16次方量级.
参数提取:
结深及方块电阻的提取图:
运行结果:
结深:
bc—nxj=0。
10218um,be—nxj=0。
406303um
方块电阻:
b—sheet=121。
458ohm/square,e-sheet=103。
565ohm/square
电流方法倍数即电流增益和ft的提取图:
运行结果:
peakcollectorcurrent=0。
000397951A
peakgain=83。
1365,maxfT=7.69477e+09
特征频率:
使集电极电流与基极电流之比下降到1的信号频率,也就是无法将输入信号放大时的频率。
因此也称截至频率.
六、实验心得体会
近一周的微电子器件课程设计结束了,通过本次设计,我们学会了用silvaco进行器件仿真,并且懂得了NPN基本结构的工艺流程以及如何提取器件参数,培养了我们独立分析问题和解决问题的能力,懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,从而提高自己的实际动手能力和独立思考的能力。
在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,希望自己在今后的学习中不断加强理论和实践相结合,提高自己各方面能力.在此感谢老师的耐心指导和队友的默契合作.
附录:
模拟程序:
工艺模拟:
goathena
#TITLE:
PolysiliconEmitterBipolarExample-Ssuprem4-〉Devedit—〉Spisces2
#IfyoudonothaveDevedit:
Pleasecommenttheselinesout.。
.。
linexloc=0.0spacing=0.03
linexloc=0。
2spacing=0。
02
linexloc=0。
24spacing=0。
015
linexloc=0.3spacing=0。
015
linexloc=0。
8spacing=0.15
#
lineyloc=0.0spacing=0。
01
lineyloc=0.07spacing=0。
01
lineyloc=0.1spacing=0.01
lineyloc=0。
12spacing=0。
01
lineyloc=0.3spacing=0。
02
lineyloc=0.5spacing=0.06
lineyloc=1.0spacing=0。
35
#
initc.arsenic=2e16
#
implantboronenergy=18dose=2.5e13
diffusetime=60temp=920
#depositpolysilicon
depositpolythick=0。
3divisions=6min。
space=0.05
#Implanttodopepolysilicon
implantarsenicdose=7.5e15energy=50
#Patternthepoly
etchpolyrightp1.x=0。
2
relaxy.min=.2x。
min=0。
2
relaxy。
min=。
2x.min=0。
2
methodcompressfermi
diffusetime=25temp=920dryo2
diffusetime=50temp=900nitrogen
implantborondose=2。
5e13energy=18
#depositspacer
depositoxidethick=0.4divisions=10min.space=0.1
#etchthespacerback
etchoxidedrythick=0。
5
implantborondose=1e15energy=30
diffusetime=60temp=900nitrogen
#putdownAlandetchtoformcontacts
depositalumthick=0.05div=2
etchaluminstartx=0。
15y=—10
etchcontinuex=0.15y=10
etchcontinuex=0.6y=10
etchdonex=0。
6y=-10
structurereflectleft
stretchstretch.val=0。
1x.val=0.0
#NametheelectrodesforusewithATLAS.。
。
.。
baseandbase1willbeslaved
#duringdevicesimulationwiththe’CONTACT’statement。
。
..
electrodex=0。
0name=emitter
electrodex=—0.7name=base
electrodebacksidename=collector
electrodex=0。
7name=base1
#Savethefinalstructure
structureoutfile=bjtex03_0。
str
#Completelyremeshthestructurewithoutobtusetrianglesinthesemiconductor
#UsetheSensitivity&Minspacingparameterstoadjustthemeshdensity.。
。
.
#.。
thesmallertheSensitivity,thedenserthemesh。
.。
godevedit
base.meshheight=0.25width=0。
25
bound。
condapply=falsemax.ratio=300
constr.meshmax。
angle=90max.ratio=300max.height=1max.width=1\
min。
height=0.0001min.width=0.0001
constr。
meshtype=Semiconductordefault
constr。
meshtype=Insulatordefaultmax。
angle=170
constr.meshtype=Metaldefaultmax。
angle=180
#Definetheminimummeshspacingglobally。
..
imp。
refinemin。
spacing=0.025
#Selectalistofsolution(impurity)gradientstorefineupon。
。
.。
imp.refineimp=”Arsenic”sensitivity=0.5
imp.refineimp="Boron”sensitivity=0。
5
#nowmeshthestructure.。
..
mesh
#
structoutfile=bjtex03_1.str
tonyplotbjtex03_1。
str-setbjtex03_1。
set
#
#####################GummelPlotTest###########################
器件模拟
goatlas
#setmaterialmodelsetc。
materialtaun0=5e-6taup0=5e—6
contactname=emittern。
polysurf。
rec
contactname=basecommon=base1short
modelsbipolarprint
#initialsolution
solveinit
#changetotwocarriers
methodnewtonautonrtrap
solveprev
#setthecollectorbias
solvevcollector=2local
#startrampingthebase
solvevbase=0.1
#Rampthebaseto0。
9volts。
...
logoutf=bjtex03_2.logmaster
solvevbase=0.2vstep=0。
05vfinal=0。
9name=baseacfreq=1e6aname=base
#Nowdumpastructurefile,fortonyplotting...butfirstdecidewhat
#youwantinit,ontopofthedefaultquantities。
。
.。
.。
outpute。
fieldflowlinesjx。
eljx。
hojy。
eljy.ho
saveoutf=bjtex03_3。
str
#Nowextractsomedesignparameters。
.。
extractname="peakcollectorcurrent"max(curve(abs(v."base”),abs(i。
"collector”)))
extractname=”peakgain”max(i。
”collector"/i."base")
extractname=”maxfT”max(g。
”collector””base"/(2*3.1415*c。
”base”"base"))
#plottheresults
tonyplotbjtex03_2。
log-setbjtex03_2.set
quit