Beruflich Dokumente
Kultur Dokumente
math coord.ucs
AdvancedCalibration
AdvancedCalibrationMechanics
SiGe_and_Stress_Effect 1 1 1 0
#-----------------------------------------------------
# Derived dimensions
set AX0 0.0
set AX1 [expr (0.5*$Ppitch)]
#-----------------------------------------------------
#-----------------------------------------------------
#---------------------------------------------------------------------#
# SIMULATION CONTROLL
set debug 1
set DoStrain 1
set DoDiff 1
set DoRound 1
set Type @Type@
#---------------------------------------------------------------------#
# USER-DEFINED PROCEDURES
source user_proc.fps
proc WriteBND {} {
global count
line x loc=-0.15
line x loc=0 tag=top
line x loc=$H
line x loc=$Tsub tag=bottom
# refinement at interfaces
mgoals min.normal.size=0.005 max.box.angle=165 normal.growth.ratio=2
accuracy=1e-6
refinebox interface.materials= {Silicon Polysilicon Oxide Nitride
Oxynitride}
pdbSet InfoDefault 1
#------------------------------------------------------------------------
--------------
#------------------------------------------------------------------------
--------------
if { $DoRound } {
#########################################################################
#############
#####----- Fin Corner Round Etch
-----#####
#####----- Polyhedron is used to accurately control the fin Corner
Rounding -----#####
#####----- Dummy polyhedron is overlapped with Si fin and removed.
-----#####
#####----- Rounded fin is left.
-----#####
set PI 3.14159265
set cR 0.0025 ;# Fin corner radius
strip Oxynitride
if { $debug } { WriteBND }
#########################################################################
#############
}
##-- Define the channel stop region and the channel region for the
convenience -##
polyhedron name=sstop brick = { $Hgate $Ymin $Xmin $Tsti $Ymax
$Xmax } info=2
polyhedron list
insert polyhedron=sstop replace.materials= { Silicon }
new.material=SiStop new.region=ChStop
point clear
polygon clear
polyhedron clear
if { $debug } { WriteBND }
##DFISE -Z Y X
refinebox name=WellIIP1 \
min= " $H-0.001 $tYmin $Xmin" \
max= " $H+0.004 $tYmax $Xmax" \
xrefine= 0.0005 yrefine= $W/5.0 zrefine= $L/5.0
pdbSet InfoDefault 1
} else {
}
if { $debug } { WriteBND }
#- Remove thin layers in the non-active region (STI) for the mesh and the
convergence
polyhedron name=sti brick= { $H $Ymin-0.001 $Xmin-0.001 $H+$Tox+0.001
$Ymax+0.001 $Xmax+0.001 }
polyhedron list
insert polyhedron=sti replace.materials= { HfO2 GATEox Gas } \
new.material=Oxide new.region=TRENCH
PolyHedronClear
if { $debug } { WriteBND }
#----- Generate S/D SiGe epi shape using polyhedron command -----
set tx0 [expr (0.5*$L+$Lsp0-0.0000)]
set tx1 [expr ($Ppitch-0.5*$L-$Lsp0+0.0000)]
strip Oxynitride
strip Oxynitride
#else
strip Oxynitride
#endif
if { $debug } { WriteBND }
EpitaxySD sd $tx0 $tx1 $ty0 $ty1 $th $bHepi $mHepi $tHepi $bLepi $mLepi
$tLepi $Fangle
polyhedron list
insert polyhedron=sd replace.materials= { Gas } \
new.material=SiGeSD new.region=SDepi
PolyHedronClear
#else
#endif
if { $debug } { WriteBND }
if { $DoStrain } {
###----------------------------------------------------------------------
--------------
#----- S/D stressor -----
#--- Assign intrinsic stress to S/D SiGe epi ----------------------------
-----
#if "@Type@" == "nMOS"
#--- Calculate intrinsic stress from C Mole fraction --------------------
-------------
#--- C11=165.7GPa C12=63.9GPa C44=79.6GPa for Silicon - 2% C negiligible
set iS [expr (1.0 * ( 165.7 + 2 * 63.9 ) * 1e10 * 0.449 *
$CMoleFraction )]
stressdata SiSD sxxi=$iS syyi=$iS szzi=$iS
#else
set Nge [expr ($GeMoleFraction*5.0e22)]
sel SiGeSD z=$Nge name=Germanium store
#endif
diffuse temp=600 time=1.0e-6<s> stress.relax
struct tdr=n@node@_SDepi !gas !interfaces !bnd alt.maternames
if { $DoStrain } {
#--- Stress Rebalance after gate removal --------------------------------
-
diffuse temp=600 time=1.0e-6<s> stress.relax
struct tdr=n@node@_GateRemoval !gas !interfaces !bnd alt.maternames
}
###----------------------------------------------------------------------
--------------
#----- Assign doping profile -----
if { $DoDiff } {
sel SiFin z=$Nch name=$Dch store
###----------------------------------------------------------------------
--------------
#----- Metal Gate Deposition -----
if { $DoStrain } {
} else {
}
if { $debug } { WriteBND }
if { $DoStrain } {
}
if { $debug } { WriteBND }
polygon list
point clear
polygon clear
polyhedron clear
if { $debug } { WriteBND }
polygon list
point clear
polygon clear
polyhedron clear
if { $debug } { WriteBND }
##DFISE -Z Y X
refinebox name=eAll \
min= "-2.0 $Ymin $Xmin" \
max= " 1.0 $Ymax $Xmax" \
xrefine= 0.5 yrefine= 2.0*$W zrefine= 0.5*$L
pdbSet InfoDefault 1
exit