Introduction To Sentaurus TCAD
Introduction To Sentaurus TCAD
10
20
Y [um]
30
DopingConcentration [cm^-3]
40 9.7E+17
2.9E+15
8.9E+12
50 -9.2E+12
-3.0E+15
-40 -20 0 20
-1.0E+18
X [um]
Overview
Planar 3D
+ve +ve +ve -ve +ve
n-type n-type
electrode electrode
electrons
electrons
300
Lightly µm
doped
p-type
holes
silicon
holes
p-type
p-type electrode
electrode
Around
Particle Particle
-ve 30µm
Example simulations – 3D detectors
Electric field pattern in a new device structure
Z (um)
300um thick, 0
30
doping 7*10 11cm-3
p+ column
250um length
10um diameter 40
0
20 0 0
50
p+ 130000
On back side:
Oxide layer covered with metal 60
55um pitch All p+ columns connected together
30 00 0
0 10 20 30 40
D (um)
4000
400
00
Example simulations – 3D detectors
250
p+
Depletion voltage 3
Fit:
)
200
(ke-
2
V=0.07(X-13.5m) -1.5 14
12
ction
12
150 11
Bias (V)
e colle
4 10
10
8
100
Charg
5 6
25 9
4
6 20
7 2
50 8 15 25
0 0
20 2.0
Y(
10
15 4.0
m
0 n+ 10 m) 6.0
5
(
)
0 20 40 60 80 5 X 8.0
Electrode spacing (m) 00 10
6 12
14
Basics of simulation
• The structure of a device is approximated by a “mesh”
consisting of a large number of discrete elements
– This can be 1D, 2D or 3D
– Choice depends on symmetry of device
• Differential equations describing the electric potential
and carrier distributions are applied to each element
– End up with very large number of equations!
• Choose boundary conditions for the simulation
– E.g. potentials at each electrode
• Solve the equations to find the potential and carrier
concentrations in each element
– Software uses a numerical solver – iterates repeatedly until
solution is accurate enough
Simulation packages
Sentaurus Process (optional) {dios}
Process simulation Ligament can generate command files
for Process
*msh.bnd -
boundary file Graphs (images
or exported data)
*msh.cmd - *des.cmd –
command file command file
Inspect
*des.plt – current file
Sentaurus
Mesh
Device
*msh.grd – grid file *des.dat – plot files
(structure of mesh)
*msh.dat – doping file
Tecplot
(doping at each point)
Image files
(E-field etc.)
Overview
20
Y [um]
30
DopingConcentration [cm^-3]
40 9.7E+17
2.9E+15
8.9E+12
50 -9.2E+12
-3.0E+15
-40 -20 0 20
-1.0E+18
X [um]
Mesh input files
• StripDetector.bnd boundary file describes materials & contacts
Silicon "substrate" {rectangle [(-50,0) (50,300)]}
Placements {
Refinement "n-electrodes instance"
{
Reference = "n-electrode"
RefineWindow = rectangle [(-50 0), (50 3)]
}
.......}
Mesh design considerations
• Boundary conditions
– Default boundary conditions are that E and carrier currents
perpendicular to boundary are zero
– So, boundaries should either be far enough from active region not to
have any effect, or along a line of symmetry
– Mesh design depends on application – a simple electric field simulation
can simply use the smallest repeating region of the device
• Mesh for simulating charge sharing in strip detector below: has 2 full
electrodes which we use to measure charge sharing, and 2 half-electrodes
to approximate the “rest of the device”
01: Tutorial/StripDetector/n5_msh.grd : n5_msh.dat
20
Y [um]
40
60
-50 0 50 100
X [um]
MDraw
• Old graphical interface for designing meshes
• Can be used in “boundary” and “doping” modes
• Materials, contacts, doping and refinement regions can be drawn in
• Then, will call on “mesh” to build the mesh
• Downsides:
– Can’t be used for 3D meshes
– Can’t add parameters in Workbench
– Can’t be used with NOffset3D (see later)
Sentaurus Device Editor
• New feature of Sentaurus TCAD
• Start with sde
• Can work in 2D and 3D modes
• Has functions for complicated shapes like circles, spheres etc.
– In command files or MDraw, these must be built up point-by-point, which
is very inconvenient
• Has a built-in command line, and can be controlled with scripts
– In 3D, easier than using mouse!
– Possible to insert parameters
using Workbench
Sentaurus Device Editor
New mesh tool – NOffset3D
• noffset3d can be run using command files or through Structure
Editor, just like mesh
• Other mesh tool produce axis aligned meshes
• This tool produces unstructured meshes
– More effective for creating curved structures
• Input command files more complicated – see “Mesh Generation
Tools User Guide”
Overview
Physics {
# Standard physics models - no radiation damage or avalanche etc.
Temperature=300
Mobility( DopingDep HighFieldSaturation Enormal )
Recombination(SRH(DopingDep))
EffectiveIntrinsicDensity(Slotboom)
}
– “Length” is an array. The width of the profile (wt_hi) and the charge
generation per unit distance (LET_f) are piecewise-linear
– In Math section, use RecBoxIntegr command to improve accuracy of
charge generation.
• RecBoxIntegr(5e-3 50 5000)
– When designing mesh, mesh spacing should be small compared to
width of ion track, to ensure accurate generation
Sentaurus Device – Useful physics models
• Avalanche
– Recombination(SRH(DopingDep) Avalanche(Okuto))
– Simulates increase in generation from impact ionization
– Different models available, aside from Okuto – see manual
– In Plot, eAvalancheGeneration and hAvalancheGeneration
– If breakdown occurs during an IV ramp, simulation can become very
slow: set BreakCriteria in Math section
• Oxide charge
– Physics models can be specified for particular device regions by
inserting a separate physics section:
Physics(MaterialInterface="Oxide/Silicon") {
Charge(Conc=4e11)
}
2 50
0
field (V/cm)
130000
Potential SpaceCharge ElectricField/Vector Doping 10
50
90000
60000
40000
} 00
30000
20000
20
10000
0
10
n+ 00
Z (um)
0
30
40
0
20 0 0
50
p+ 130000
60
30 00 0
0 10 20 30 40
D (um)
40000
40000
5000
Math section
• Controls solving the simulation
– Many useful keywords are now default – not really needed in file!
• Extrapolate, Derivatives, RelErrControl, NewDiscretization
• Can choose numerical solver
– “Pardiso” is default, and works well
– Solvers user guide lists others
• Certain physics models use extra keywords
– E.g. RecBoxIntegr improves accuracy of charge generation from
HeavyIon or optical generation
• Can set break criteria (e.g. to stop simulation if device breaks down)
– BreakCriteria {Current(Contact=“pplus1" Absval=1e-6)
Solve section
• Various different processes can be done
• Basic solve of Poisson equation, or Poisson Electron Hole
– Simply solves device under steady bias conditions applied
• Quasistationary
– Ramps a parameter (usually bias voltage) from one value to another in
series of steps
– At each point, device is solved for a “steady state”
– E.g. simulating an IV ramp for a photodiode, or response of a transistor
• Transient
– Simulation over time
– E.g. signals produced in a radiation detector when hit by a particle
• For both of these, we can control stepping conditions – see file
– Smaller step sizes
• During the solve, we can produce .dat files (so we can view the state
of the simulation at a particular moment)
Solve
Solve {
# Get initial state of the device without a bias applied.
Poisson
Coupled{Poisson Electron Hole}
# Do a simulation over time, to get the current signal produced by the MIP.
The "iterations=8" means that if we take more than 8 iterations to solve a step,
it'll reduce the step size and try again
Transient(
InitialTime = 0.0
FinalTime=40.0e-9
InitialStep=0.5E-11
MaxStep=2E-9
Increment=1.1
Decrement=1.5
)
{Coupled (iterations=8, notdamped=15) { Poisson Electron Hole }
Plot (Time = (0.05e-9; 0.2e-9; 1e-9; 5e-9; 10e-9; 20e-9) noOverwrite
FilePrefix="StripDetector_transient")
}
}
Solve – Iteration tips
• Sentaurus solves each step by an iterative process
• We set a limit to the no of iterations
– Success: move on to next step with increased step size
– Failure – try again with a smaller step
• Generally better to keep number of iterations small (say, 8-10)
– More accurate, and frequently quicker, to do small steps with few
iterations than large steps with many iterations
• “Increment” and “decrement” control changes in step size
– Default increment is 2 (double step size after success). If sim starts fine,
but we get repeated failure later on, useful to reduce Increment
• des.log files record output
– Typing dessisstat whatever.log will look through a log file and
summarise the information
Mixed mode simulation
• In standard simulation, we have a single device with boundary
conditions
• Mixed mode simulates one or more devices, plus extra components
such as resistors, voltage sources etc., modelled by Spice
– See Compact Models User guide for details of components
– E.g. can have AC-coupled detector with strips biased through resistors
• Can do transient simulations with time-varying voltage sources
– E.g switching behaviour of a transistor
– CCD simulation – use HeavyIon to generate charge within one pixel,
then a time-varying voltage to transfer charge to next pixel
• Mixed-mode is needed to do C-V simulation
– “ACCoupled” command
File {
Output = "StripDetector_CV"
ACExtract = "StripDetector_CV"
}
System {
strip sample (nplus1=c1 nplus2=c2 nplus3=c3 pplus1=cp)
Vsource_pset vc1 (c1 0) {dc=0}
Vsource_pset vc2 (c2 0) {dc=0}
Vsource_pset vc3 (c3 0) {dc=0}
Vsource_pset vcp (cp 0) {dc=0}
}
Mixed mode simulation file
Device strip { # Set up strip detector
Electrode { ……}
File {….}
Physics {…….}
}
File {
Output = "StripDetector_CV"
ACExtract = "StripDetector_CV"
}
System {
strip sample (nplus1=c1 nplus2=c2 nplus3=c3 pplus1=cp)
Vsource_pset vc1 (c1 0) {dc=0}
Vsource_pset vc2 (c2 0) {dc=0}
Vsource_pset vc3 (c3 0) {dc=0}
Vsource_pset vcp (cp 0) {dc=0}
}
Mixed mode – typical CV commands
Solve {
# Get initial state of the device without a bias applied.
.................
n+ 00
Z (um)
– http://www.tecplot.com 30
0
30 00 0
0 10 20 30 40
pages) D (um)
40000
4 0 00 0
65000
– Tecplot Reference Manual gives
script commands (320 pages)
Tecplot SV
• Two different sidebars are available: Synopsys and
Tecplot
– Switch using the View menu at the top
• Synopsys sidebar - useful basic commands
– Basic commands for loading files, zooming, inserting
text/lines etc
– List of variables to plot, and ranges to set
• Can also add legend etc
– Menu to choose which material we apply commands to
– Options to make the following visible/invisible
• Mesh structure
• Boundary
• Vector plots (for quantities like E-field)
• Contour lines, flood
– (On right) options to make 2D cuts from 3D device
simulations
– (On right) display or hide p-n junctions and depletion
regions
Tecplot SV
• Tecplot Sidebar
– Option to switch between 2D and 3D!
– “Zone style” gives lots of options for controlling
contours, vectors etc.
– Better tools for:
• Controlling contour lines and streamtraces
• Moving and rotating 3D objects
• Menus at top of screen – many, many options!
– Same features as sidebars, but often more control
• E.g. taking 2D slices at unusual angles
– Saving states and images
• Saving a “layout” file saves state of simulation
• Saving a “style” file just saves formatting – can load
another data set then the style file to apply formatting
– Recording and using macros
– Creating new variables using existing ones
• E.g can find the components of a vector in a particular
plane
Overview
Control
simulations
and extract
results
Other information
• Synopsys website –
– https://solvnet.synopsys.com/amserver/UI/Login
– Can sign up to get a login ID. Can get all the manuals, plus some
simulation examples
• Sentaurus Device simulation examples
– $STROOT/tcad/$STRELEASE/lib/sdevice/GettingStarted
– Files corresponding to examples in SDevice manual
• Examples from this talk: SENTAURUS/Seminar/Introduction
– Basic strip detector simulation
• StripDetector.bnd/cmd files for mesh
• StripDetector_des.cmd file for Sentaurus Device
• The simulation has already been run, and output files are in the same folder
– CV simulation
• Uses the same mesh as before
• StripDetector_CV_des.cmd