You are on page 1of 199

VLSI DEVICE MODELING

AND SIMULATION
N.B.Balamurugan
Associate Professor
ECE Department
Thiagarajar College of Engineering
Madurai-15 (nbbalamurugan @tce.edu)

OLD SYALLABUS OF SSDMAS


UNIT II
NOISE MODELING 9
Noise sources in MOSFET, Flicker noise modeling, Thermal noise modeling, model for
accurate distortion analysis, nonlinearities in CMOS devices and modeling, calculation
ofdistortion in analog CMOS circuit
UNIT III
BSIM4 MOSFET MODELING 9
Gate dielectric model, Enhanced model for effective DC and AC channel length and
width, Threshold voltage model, Channel charge model, mobility model, Source/drain
resistance model, I-V model, gate tunneling current model, substrate current models,
Capacitance models, High speed model, RF model, noise model, junction diode
models, Layout-dependent parasitics model.
UNIT IV
OTHER MOSFET MODELS 9
The EKV model, model features, long channel drain current model, modeling second
order effects of the drain current, modeling of charge storage effects, Non-quasi-static
modeling, noise model temperature effects, MOS model 9, MOSAI model)
UNIT V MODELLING OF PROCESS VARIATION AND QUALITY 9
ASSURANCE
Influence of process variation, modeling of device mismatch for Analog/RF
Applications, Benchmark circuits for quality assurance, Automation of the tests

24 October 2013

OUTLINE
UNIT 2:

MESH, NODE, MODIFIED NODAL ANALYSIS

Solving Linear Networks : Sparse Matrix


Solving Non linear Networks using NEWTON
RAPHSON Method.
UNIT 3

Stiffness and MULTISTEP Method

UNIT 4

Finite Difference Solution to


Poisson Equation, Continuity equation,
Schodinger Equation, drift diffusion Equation
HydroDynamic Equation

24 October 2013

Introduction
Circuit Simulations
Circuit Simulators SPICE
Device Equations
Network Equations
Elements
Passive and Active Elements
Equivalent circuit Model
Networks
Mesh, Nodal, Modified Nodal, Hybrid
Solution of Linear Circuit Equation
Solution of Nonlinear Circuit Equation
Solution of Differential Circuit Equation
Solution of Partial Differential Circuit Equation
24 October 2013

CIRCUIT SIMULATION
It is a technique for checking and verifying the design
of electrical and electronic circuits and systems.
Circuit simulation combines
Mathematical modeling of the circuit elements or devices.
Formulation of circuit / Network Equation.

Techniques for solution of these equations.

24 October 2013

Circuit Simulation
Input and setup
Simulator:
dX (t )
f (X ) C
Solve
dt
Output

Circuit

numerically
dX (t )
f (X ) C
GX (t ) BU (t )
dt
Y DX (t ) FU (t )

Types of analysis:
DC Analysis
DC Transfer curves
Transient Analysis
AC Analysis, Noise, Distortions, Sensitivity
24 October 2013

Program Structure (a closer look)


Models

Input and setup

Numerical Techniques:
Formulation of circuit equations
Solution of ordinary differential equations
Solution of nonlinear equations
Solution of linear equations

Output
24 October 2013

CIRCUIT SIMULATORS
They use a Detailed (so called circuit level /
Transistor Level) description of the circuit and perform
relatively accurate simulation.

Typically a simulation uses physical models of the circuit


elements,solves the resuliting differential and algebraic
equations and generates time waveforms of node
Voltages and element Currents.
Early techniques for circuit simulation using computer
were introduced in 1950 and 1960s.
24 October 2013

SPICE
It is Universal standard simulator used to simulate
the operation of various electric circuits and devices.
It was developed by L.W.Nagel at the Univ. of California,
Berkeley in 1968.
The first simulator was named as CANCER (Computer Analysis
of Non-Linear Circuits Excluding Radiation).
It could not handle more components or circuit nodes.
1970
Improvements in CANCER continued
1971
an improved version of CANCER named SPICE 1 was
released.
1975
SPICE2 was introduced.
1983
SPICE 2G.6 version was released. All these version
were written in FORTRAN source code. Later it was
rewriten in C.
24 October 2013

SPICE 3

New C version of the program

Many SPICE like simulators in the market.


Meta-softwares HSPICE
Intusofts IS-SPICE
Spectrum Softwares MICRO-CAP
Microsims PSPICE
Texas instruments TINA SPICE
National Instruments LT SPICE

24 October 2013

10

24 October 2013

11

24 October 2013

12

DEVICE EQUATIONS
A device is a any simulation elements described by
means of a current voltage relationship.
Ex: Resistor
V=IR
I is found from V.
Linear Element
When the element equation contains no terms with
powers of 2 or higher, the element is said to be linear
Element circuit circuit.
Linear Circuit
A network of linear elements is said to be a linear circuit.
24 October 2013

13

Branch Constitutive Equations


(BCE)
Ideal elements
Element

24 October 2013

Branch Eqn

Variable parameter

Resistor

v = Ri

Capacitor

i = Cdv/dt

Inductor

v = Ldi/dt

Voltage Source

v = vs

i=?

Current Source

i = is

v=?

VCVS

vs = AV vc

i=?

VCCS

is = GT vc

v=?

CCVS

vs = RT ic

i=?

CCCS

is = AI ic

v=?
14

NETWORK EQUATIONS
ELEMENTS and NETWORKS

An element is a two terminal electrical device.


An electrical Network or Circuit is a system consisting of
a set of elements and a set of nodes, where every element
terminal is unique node,and every node is identified
with atleast the element terminal.
A network is completely connected, i.e there is always
atleast one path from one node to another.
24 October 2013

15

Passive Elements

24 October 2013

16

24 October 2013

17

24 October 2013

18

24 October 2013

19

24 October 2013

20

24 October 2013

21

24 October 2013

22

24 October 2013

23

24 October 2013

24

NETWORK
They are two basic important techniques used in finding solutions
for a network

MESH

ANALYSIS

If a network has a large


number of voltage sources, it is
useful to use MESH analysis.
It is only applicable only for
planar networks.
1. Check whether the circuit
is applicable.
2. To select mesh current
3. Writing Kirchhoffs voltage
law equations in terms of
unknowns and solving them to
the final solution

24 October 2013

NODE ANALYSIS
If a network has more
current sources, Node
analysis is more useful.

25

DC MESH Analysis
BRANCH AND MESH CURRENTS:
Applying KVL around the left loop
Applying KVL around the right loop

MATRICES AND MESH CURRENTS:


The n simultaneous equations of an n-mesh network can be written in
matrix form
When KVL is applied to the three mesh network

24 October 2013

26

Basic Circuits
Mesh Analysis: Example 7.1.

Write the mesh equations and solve for the currents I1, and I2.
4

10V +_

2
7

6
I1

2V +_

I2

_
+

20V

Figure 7.2: Circuit for Example 7.1.


Mesh 1 4I1 + 6(I1 I2) = 10 - 2

Eq (7.9)

Mesh 2 6(I2 I1) + 2I2 + 7I2 = 2 + 20

Eq (7.10)

24 October 2013

27

Basic Circuits
Mesh Analysis: Example 7.1, continued.
Simplifying Eq (7.9) and (7.10) gives,
10I1 6I2 = 8

Eq (7.11)

-6I1 + 15I2 = 22

Eq (7.12)

% A MATLAB Solution

R = [10 -6;-6 15];

V = [8;22];

I = inv(R)*V
I=

I1 = 2.2105
I2 = 2.3509

2.2105
2.3509
24 October 2013

28

Basic Circuits
Mesh Analysis: Example 7.2
9

12V
_
_+

10

I3

6
20V +_
_

8V
+ _

11
4

I1

_
+

10V

I2

Mesh 2:

6I1 + 10(I1 I3) + 4(I1 I2) = 20 + 10 Eq (1)


4(I2 I1) + 11(I2 I3) + 3I2 = - 10 - 8 Eq (2)

Mesh 3:

9I3 + 11(I3 I2) + 10(I3 I1) = 12 + 8 Eq (3)

Mesh 1:

24 October 2013

29

Basic Circuits
Mesh Analysis:
Clearing Equations (1), (2) and (3) gives,
Standard Equation form
20I1 4I2 10I3 = 30
-4I1 + 18I2 11I3 = -18
-10I1 11I2 + 30I3 = 20

In matrix form:

20 4 10 I1
30
4 18 11 I 18

10 11 30 I 3
20

WE NOW MAKE AN IMPORTANT


OBSERVATION!!

24 October 2013

30

Basic Circuits
Mesh Analysis: Standard form for mesh equations
Consider the following:
R11 R12 R13 I1
emfs(1)
R
I emfs( 2)
R
R
22
23 2
21

R31 R32 R33 I 3


emfs( 3)

R11 = of resistance around mesh 1, common to mesh 1 current I1.


R22 = of resistance around mesh 2, common to mesh 2 current I2.

R33 = of resistance around mesh 3, common to mesh 3 current I3.

24 October 2013

31

NODE VOLTAGE METHOD


In a N node circuit one of the nodes is chosen as
reference, then it is possible to write N-1 nodal
equations by assuming N-1 node voltages.
Applying KCL at node 1,2,3

24 October 2013

32

Nodal Analysis

24 October 2013

33

STEADY STATE AC ANALYSIS


Two analysis have applied it only resistive circuits.
These concepts can also be used for sinusoidal steady
state condition.
In the sinusoidal steady state analysis,
we use voltage phasors, current Phasors,
impedances,admittances, to write branch
equations, KVL and KCL equations.
For ac circuits, the method of writing loop equation is
modified slightly. If the impedances are complex,
the sum of their voltages is found by vector addition.
24 October 2013

34

Modified Nodal Approach


It is another Method of writing circuit equations that is less
demanding of space and almost as flexible.
It allows a broad range of elements to be modeled.
we will consider networks with two terminals elements only.
We will label the elements as either being current controlled or
voltage controlled.
R , Inductor,and Independent voltage source will be considered
current controlled.
Conductors , Capacitors and independent currnet source will
be considered voltage controlled.
24 October 2013

35

If the branch relation is written


i = f(v)
The element is considered voltage controlled.
If the branch relation is written
v = g(i)
The element is considered current controlled.

This generates a set of equations with more


unknowns than equations

24 October 2013

36

24 October 2013

37

Advantages and problems of MNA

24 October 2013

38

Modified Nodal Analysis (MNA)

24 October 2013

39

Modified Nodal Analysis (2)

1
1
G2
R3
R1
1

R3

E7

24 October 2013

1
G2
R3

1
1

R3 R4
0
0
1
E7

1
R8
1

R8
1
0

1
R8
1
R8
0
1

0
e 0
1
1 0 e i
2 s5
e 0
3
1 0

e4 0

0 1 i6 ES 6
i7 0
0 0

0 0
0

40

SOLVING OF NETWORK
EQUATIONS
USING SPARSE MATRICES
SPARSE MATRIX
A sparse matrix is a matrix in which the great majority of the
elements are zeros. Such matrices are used to solve network equations
and other engineering disciplines.

SPARSITY IN A CIRCUIT
Consider a complex linear circuit, containing large number of nodes.
By writing the node equations we came to know that the matrix have
large number of zeroes since each node is connected to only a few other
nodes. Sparsity is a key feature of large scale circuits such as VLSI digital
circuits or electric networks.

Sparse matrix
x
0
0
0
0
0
0
0

x
x
0
0
0
0
0
0

0
x
x
0
0
0
0
0

0
0
x
x
0
0
0
0

0
0
0
x
x
0
0
0

0
0
0
0
x
x
0
0

0
0
0
0
0
x
x
0

0
0
0
0
0
0
x
x

An Sparse Matrix of order 8x8


x-non-zero elements

A circuits node equations when represented in matrix will also have same
matrix like the above one.
Storing of all entries need more space and harder to manipulate. Hence we
can store only the non zero elements and it will be easy to manipulate.

Solving sparse matrices


In network theory, big problem is solving a large system of linear
equations.
Ax=B
Sparse matrix can be solved using LU factorization.
Solution procedure
Rewrite A=LU,where L is Lower triangular matrix,U is upper triangular
matrix.
Solve Lz=b for z.
Solve Ux=z for b.
5 1 2
A= 1 4 1 =
2 2 5

1 0 0
0.2 1 0
0.4 0.42 1
L

5 1
2
0 3.8 0.6
0 0 3.94
U

Fill-in
When a sparse matrix is factorize into L and U ,it contains non zero
elements in places whereas the same place in sparse matrix contains zeros.
This unwanted non zero elements are called as fill-ins.
Fill-in is a major problem in large matrices. Hence it should be reduced.
It can be either reduced by permuting or more easier elimination graphs. Also
in elimination graphs minimal degree ordering is the best way to reduce
fill-ins.
example
for the resistor circuit given ,we can
Apply sparsity since each node is
connected to few other nodes. While
Solving,a matrix of order 12x12 will be
obtained with large number of zeros,
Which is a sparse matrix.

Newtons Method,
Solving NonLinear Equation

Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

History
Discovered by Isaac Newton and published in
his Method of Fluxions, 1736
Joseph Raphson described the method in
Analysis Aequationum in 1690
Method of Fluxions was written earlier in 1671
Today it is used in a wide variety of subjects,
including Computer Vision and Artificial
Intelligence

51
October 24, 2013

Review: Classification of
Equations
Linear: independent variable appears to the
first power only, either alone or multiplied by a
constant
Nonlinear:
Polynomial: independent variable appears raised to
powers of positive integers only
General non-linear: all other equations

52
October 24, 2013

Review: Solution Methods


Linear: Easily solved analytically
Polynomials: Some can be solved analytically
(such as by quadratic formula), but most will
require numerical solution
General non-linear: unless very simple, will
require numerical solution

53
October 24, 2013

Newtons Method
Newtons Method (also know as the NewtonRapshon Method) is another widely-used
algorithm for finding roots of equations
In this method, the slope (derivative) of the
function is calculated at the initial guess value
and projected to the x-axis
The corresponding x-value becomes the new
guess value
The steps are repeated until the answer is
obtained to a specified tolerance
54
October 24, 2013

Newtons Method

y(xi)

Tangent
Line: Slope =
y(xi)

Initial guess xi
55
October 24, 2013

Newton Raphson
Slope =x
f

If Initial guess at the root is x


tangent a tangent can be extended fro
the point [xi,f(xi)]. The poin
this tangent crosses the x axi
f x
represents an improved estim
f(xi) of
the
root. dy f '
tan
gent
dx
0

'

f(xi)

'

xi+1

xi

f ' xi

f xi 0
xi xi 1

rearrange
xi 1 xi

f xi
f ' xi
56

October 24, 2013

Newtons Method
New guess for x:
xn = xi - y(xi)/y(xi)

y(xi)

xi
y(xi)/y(xi)
57
October 24, 2013

Newtons Method Example


Find a root of this equation:

The first derivative is:

Initial guess value: x = 10


58
October 24, 2013

Newtons Method Example


For x = 10:

This is the new value of x


59
October 24, 2013

Newtons Method Example


y = 1350
y = 580
New x-value =
7.6724

Initial
guess =
10

60
October 24, 2013

Newtons Method Example


For x = 7.6724:

61
October 24, 2013

Newtons Method Example


y = 368.494
y = 279.621

New x-value =
6.3546

Initial
value =
7.6724

62
October 24, 2013

Newtons Method Example


Continue iterations:

Method quickly converges to this root


63
October 24, 2013

Newtons Method - Comments


Usually converges to a root much faster than the
bisection method
In some cases, the method will not converge
(discontinuous derivative, initial slope = 0, etc.)
In most cases, however, if the initial guess is
relatively close to the actual root, the method will
converge
Dont necessarily need to calculate the derivative:
can approximate the slope from two points close
to the x-value. This is called the Secant Method
64
October 24, 2013

Nonlinear Problems - Example


1
Vd

I1

Id

Ir

I d I s (e

Vt

1) 0

Need to Solve
I r I d I1 0
e1
Vt

1
e1 I s (e 1) I1 0
R
October 24, 2013

g (e1 ) I1
65

Nonlinear Equations
Given g(V)=I
It can be expressed as: f(V)=g(V)-I
Solve g(V)=I equivalent to solve f(V)=0
Hard to find analytical solution for f(x)=0
Solve iteratively

October 24, 2013

66

Nonlinear Equations Iterative Methods


Start from an initial value x0
Generate a sequence of iterate xn-1, xn, xn+1
which hopefully converges to the solution x*
Iterates are generated according to an iteration
function F: xn+1=F(xn)

October 24, 2013

67

Newton-Raphson (NR) Method


Consists of linearizing the system.
Want to solve f(x)=0 Replace f(x) with its linearized version
and solve.

df ( x )
f ( x*) f ( x )
( x * x ) ...
dx
k
df
(
x
) k 1
k 1
k
k
f (x ) f (x )
(x x )
dx
x

k 1

df ( x )
k
x
f
(
x
)

dx
k

Taylor Ser ies

Iteration function

Note: at each step need to evaluate f and f


October 24, 2013

68

Solving Nonlinear Equations


nonlinear elements when simulating integrated
circuits.
For a simple nonlinear equation
f(x)=0

the usual method of solution is some variant on


the Newton-Raphson (NR) procedure.

69
October 24, 2013

In order to understand the NR procedure we


must realize that the entire procedure is based
upon a linear approximation to the function at
the current point, xc.
Thus, if we expand the function in a Taylor
series about the current point we have

if we further assume that the x+ is the solution,


i.e.,
(which is the basic NR step.)
70
October 24, 2013

Newton-Raphson example.

71
October 24, 2013

Newton-Raphson Applied to Circuit


Simulation
The first difficulty is that nonlinear circuit equations are not just a
function of a single variable. Further, there is a set of equations and not
just a single one. This problem is easily handled by extending the 1D
NR Scheme to multidimensions using vector calculus.
The update formula now becomes

were f/x is known is the Jacobian of the set of circuit equations and
is the matrix of partial derivatives.

72
October 24, 2013

Rewriting this set of equations we have

This is precisely in the form

The final difficulty we face that is how to generate the equa


and how to take the partial derivative of this large set of equ

First individual elements can be linearised and the equation


And we still have the same set of equations required for NR.
73
October 24, 2013

Example

We will consider the netw

We will assume a simple form for the diode equation


The linearized form of this becomes

If we rewrite this grouping the known and unknown quantities we have

74
October 24, 2013

Nonlinear network used for NR

75
October 24, 2013

October 24, 2013

76

Adv and disadv of NR method


ADV:

convergence rate for Newtons method is very high.


Error estimates are very good.
NR method can find complex roots.

DIS ADV:

If the local min/max is selected as an initial Guess,the


with X axis.
77

October 24, 2013

In-Class Exercise
Draw a flow chart of Newtons Method
Write the MATLAB code to apply Newtons
Method to the previous example:

78
October 24, 2013

Define converge
tolerance tol
Input initial guess x
Calculate f(x)
while abs(f(x)) > tol
Calculate slope fpr(x)
x = x f(x)/fpr(x)
Calculate f(x)

Output root x
79
October 24, 2013

MATLAB Code
MATLAB functions defining the function and
its derivative:

80
October 24, 2013

MATLAB Code

81
October 24, 2013

MATLAB Results
>> Newton
Enter initial guess
10
Root found: 5.6577
>> Newton
Enter initial guess
0
Root found: 1.4187
>> Newton
Enter initial guess
-10
Root found: -2.0764
82
October 24, 2013

Excel and MATLAB Tools


General non-linear equations:
Excel: Goal Seek, Solver
MATLAB: fzero

Polynomials:
MATLAB: roots

Graphing tools are also important to locate


roots approximately
83
October 24, 2013

roots Example
For polynomials, the MATLAB function roots
finds all of the roots, including complex roots
The argument of roots is an array containing
the coefficients of the equation
For example, for the equation

the coefficient array is [3, -15, -20, 50]


84
October 24, 2013

roots Example
>> A = [3, -15, -20, 50];
>> roots(A)
ans =
5.6577
-2.0764
1.4187

85
October 24, 2013

roots Example
Now find roots of

>> B = [3, -5, -20, 50];


>> roots(B)
ans =
-2.8120
2.2393 + 0.9553i Two complex roots
2.2393 - 0.9553i
86
October 24, 2013

Summary
The bisection method and Newtons method
(or secant method) are widely-used algorithms
for finding the roots of equations
When using any tool to find the roots of nonlinear equations, remember that multiple roots
may exist
The initial guess value will affect which root is
found
87
October 24, 2013

Ordinary Differential Equations


Equations which are composed of an unknown
function and its derivatives are called differential
equations.
Differential equations play a fundamental role in
engineering because many physical phenomena are
best formulated mathematically in terms of their rate
of change.

dv
c
g v
dt
m

v- dependent variable
t- independent variable

88

When a function involves one dependent variable, the


equation is called an ordinary differential equation
(or ODE). A partial differential equation (or PDE)
involves two or more independent variables.
Differential equations are also classified as to their
order.
A first order equation includes a first derivative as its
highest derivative.
A second order equation includes a second derivative.

Higher order equations can be reduced to a system of


first order equations, by redefining a variable.
89

Figure PT7.2

90

UNIT 3:Stiffness and


Multistep Methods
Stiff problem:
1.
2.
3.

Natural time constants


Input time constants
Interval of interest

If these are widely separated, then the problem is


stiff
91

Stiff system are both individual and systems of ODEs


that have both fast and slow components to their
solution.
We introduce the idea of an implicit solution technique
as one commonly used remedy for this problem

92

Stiffness and Multistep Methods

Two areas are covered:


Stiff ODEs will be described - ODEs that have both
fast and slow components to their solution.
Implicit solution technique and multistep methods
will be described.

93

STIFFNESS

In many cases, the rapidly varying components are transien


quickly,after which the solution becomes dominated by th
components. Although the transient phenomena exist for o
the integration interval, they can dictate the time step for t

94

STIFFNESS

Definition
Proof one problem
Solving the problem by Numerically
Explicit Eulers Method
Implicit Eulers Method
Step size
Literature survey

95

Stiffness
A stiff system is the one involving rapidly changing
components together with slowly changing ones.
Both individual and systems of ODEs can be stiff:

dy
1000y 3000 2000e t
dt
If y(0)=0, the analytical solution is developed as:

y 3 0.998e1000t 2.002et
Suppose that lemda1 = 1000 and lemda2 =1 are widely
sepatared and giving a stiff system. Note that the first
exponential waveform dies out in 5 micro secs.
To get an accurate solution of the fast waveform we need
96
a small time step and to have an efficient simulatin of the

Figure 26.1

97

98

99

If Eulers method is used to solve the problem


numerically:
dyi
yi 1 yi
h
dt
yi 1 yi ayi h

or

yi 1 yi (1 ah)

The stability of this formula depends on the step size


h:

1 ah 1
h 2/a

yi as i
100

Thus, for transient part of the equation, the step size


must be <2/1000=0.002 to maintain stability.
While this criterion maintains stability, an even
smaller step size would be required to obtain an
accurate solution.
Rather than using explicit approaches, implicit
methods offer an alternative remedy.
An implicit form of Eulers method can be developed
by evaluating the derivative at a future time.
101

102

Insight into the step size required for stability of such a


solution can be gained by examining the homogeneous
part of the ODE:

dy
ay
dt
at
y y0 e

is the solution.

The solution starts at y(0)=y0 and asymptotically


approaches zero.

103

If Eulers method is used to solve the problem


numerically:
dyi
yi 1 yi
h
dt
yi 1 yi ayi h

or

yi 1 yi (1 ah)

The stability of this formula depends on the step size


h:

1 ah 1
h 2/a

yi as i
104

dy
ay
dt

Backward or implicit Eulers method


dyi 1
yi 1 yi
h
dt
yi 1 yi ayi 1h
yi
yi 1
1 ah

The approach is called unconditionally stable.


Regardless of the step size:
yi 0 as i
105

106

MULTI STEP METHODS

Definition
Non self staring Heun method
Eulers method as Predictor
Trapezoidals rule as a corrector
Slightly Modified Predictor and corrector
Derivation and Error analysis of Predictor- corrector F
One step methods give information at a single xi to predict a
Error Estimates
the dependent variable yi+1 at a future point xi+1.
Modifiers

Multistep gives valuable information from previous points. T


the lines connecting these previous values that provides info
the trajectory of the solution.
107

Graphical depiction of the fundamental difference between


108
(b) Multistep methods for solving ODEs.

Multistep Methods
The Non-Self-Starting Heun Method
It is characteristic of most multistep methods.
It use an open integration formula (the mid point method) to
make an initial estimate.
Huen method uses Eulers method as a predictor and
trapezoidal rule as a corrector.
Predictor is the weak link in the method because it has the
greatest error, O(h2).
One way to improve Heuns method is to develop a predictor
that has a local error of O(h3).

yi01 yi 1 f ( xi , yi )2h

109

Multistep Methods
Corrector formula
j
i 1

f (x , y ) f (x
y
i

j 1
,
y
i 1
i 1 )

and you iterate until a maximum number of iteratios


is reached.

110

111

112

113

114

115

116

Integration Formulas/
Newton-Cotes Formulas.
Open Formulas.

yi 1 yi n

xi1

f n ( x)dx

xin

fn(x) is an nth order interpolating


polynomial.

Closed Formulas.

yi 1 yi n1

xi1

( x)dx

xin1

117

Adams Formulas (Adams-Bashforth).


Open Formulas.
The Adams formulas can be derived in a variety of
ways. One way is to write a forward Taylor series
expansion around xi. A second order open Adams
formula:
1
3
5 3
yi 1 yi h f i f i 1 h f i O(h 4 )
2
2
12

Closed Formulas.
A backward Taylor series around xi+1 can be written:
n 1

yi 1 yi h k f i 1 k O(h n 1 )
k 0

Listed in Table

118

Higher-Order multistep Methods/


Milnes Method.
Uses the three point Newton-Cotes open
formula as a predictor and three point NewtonCotes closed formula as a corrector.
Fourth-Order Adams Method.

Based on the Adams integration formulas.


Uses the fourth-order Adams-Bashforth
formula as the predictor and fourth-order
Adams-Moulton formula as the corrector.
119

Finite Difference Method


Schrodinger equation

Need of Scaling (Moores Law )

Dr. Gordon Moore

Gordon Moore, a physical chemist working in electronics, made a prediction


in 1965, the number of transistors on an integrated chip, would double every
18 months.

15/3/2012

121
Karunya

Device Modeling Enable System


Transformations

15/3/2012

122
Karunya

Miniaturisation: why?
Smaller

Faster
Cheaper

15/3/2012

123
Karunya

Scaling
Shrink dimensions maintaining aspect-ratio
Must shrink electrostatic features as well (depletion regions doping
level and profiles)

1980
1985
1991
1999
2003
2003

1980
1994
1980
1985
1985
1988
1988
1991
1991
1994
1994
1999
1999
2011
LGATE = 10 m
5 m 2.5 m 1.3 m 0.63 m 0.25 m 130
130 nm
nm .
L
= 10 m
5 m 2.5 m 1.3 m 0.63 m 0.25 m 22 nm
.

GATE

15/3/2012

124
Karunya

In Classical systems,
The particle will take a path between
the two positions.

In Quantum systems,

Instead, the particle is a


wave and it doesnt
take one path from the
initial position to the final
position, it takes all
possible paths.

DOS- Density of states


Describes the number of
states at each energy
that
p are available
levels
to be occupied by charge
carriers.

is the
Momentum of the
charge carriers.

Typically, near the silicon surface, the inversion layer charges are confined to a
potential well formed by:
Oxide barrier
bend Si-conduction band at the surface due to the applied voltage, Vg

Due to the confinement of inversion layer e-:


e- energy levels are grouped in discrete sub-bands of energy, Ej

Energy
Potential

Wavefunction

Particle

mass

Plank
Constant

Reduced

If the potential is dependent of x, then the solution is


based on numerical solution

f ' ( x ) lim

x 0

f x x f x
x

Continuity Equation

Derivation of Continuity
Equation

Consider carrier-flux into/out-of an infinitesimal volume:

Area A, volume Adx


Jn(x)

Jn(x+dx)

dx

1
n
n
Adx J n ( x) A J n ( x dx) A
Adx
q
n
t
EE130/230M Spring 2013

Lecture 6, Slide 139

J n ( x)
J n ( x dx) J n ( x)
dx
x
n 1 J n ( x) n

t
q x
n

Continuity
Equations:

EE130/230M Spring 2013

n 1 J n ( x) n

GL
t
q x
n
p
1 J p ( x) p

GL
t
q x
p

Lecture 6, Slide 140

Derivation of
Minority Carrier Diffusion
Equations
The minority carrier diffusion equations are derived from

the general continuity equations, and are applicable only


for minority carriers.
Simplifying assumptions:
1. The electric field is small, such that

n
n
J n q n n qDn
qDn
in p-type
x
x
material
p
p
J p q p p qDp
qDp
x
x in n-type material
2. n0 and p0 are independent of x (i.e. uniform doping)
3. low-level injection conditions prevail
EE130/230M Spring 2013

Lecture 6, Slide 141

Starting with the continuity equation for electrons:

n 1 J n ( x) n

GL
t q x
n

n0 n 1
n0 n n

qDn

GL

t
q x
x
n
n
n n
Dn

GL
2
t
x
n
2

EE130/230M Spring 2013

Lecture 6, Slide 142

Carrier Concentration Notation


The subscript n or p is used to explicitly denote n-type or
p-type material, e.g.
pn is the hole (minority-carrier) concentration in n-type matl
np is the electron (minority-carrier) concentration in n-type matl
Thus the minority carrier diffusion equations are

n p
t

Dn

2 n p
x

n p

GL

pn
2 pn pn
Dp

GL
2
t
x
p

EE130/230M Spring 2013

Lecture 6, Slide 143

Summary
The continuity equations are established based on
conservation of carriers, and therefore hold generally:

n 1 J n ( x) n

GL
t q x
n

p
1 J n ( x) p

GL
t
q x
p

The minority carrier diffusion equations are derived from


the continuity equations, specifically for minority carriers
under certain conditions (small E-field, low-level injection,
uniform doping profile):

n p
t

DN

2 n p
x

EE130/230M Spring 2013

n p

GL

pn
2 pn pn
DP

GL
2
t
x
p

Lecture 6, Slide 144

Drift-Diffusion Modeling

Outline of the Lecture

Classification of PDEs
Why Numerical Analysis?
Numerical Solution Sequence
Flow-Chart of Equilibrium Poisson Equation Solver
Discretization of the Continuity Equation
Numerical Solution Techniques for Sparse Matrices
Flow-Chart of 1D Drift-Diffusion Simulator

Classification of PDEs

Classification of PDEs
Different mathematical and physical
behaviors:
Elliptic Type
Parabolic Type
Hyperbolic Type
System of coupled equations for several
variables:
Time : first-derivative (second-derivative for wave
equation)
Space: first- and second-derivatives

Classification of PDEs (cont.)


General form of second-order PDEs ( 2
variables)

PDE Model Problems


Hyperbolic (Propagation)
Advection equation (First-order linear)

Wave equation

(Second-order linear )

PDE Model Problems (cont.)


Parabolic (Time- or space-marching)
Burgers equation (Second-order nonlinear)
(Diffusion / dispersion)

Fourier equation (Second-order linear )

PDE Model Problems (cont.)


Elliptic (Diffusion, equilibrium problems)
Laplace/Poisson (second-order linear)

Helmholtz equation

Boundary and Initial


Conditions
Initial conditions: starting
point for propagation problems
Boundary conditions: specified
on domain boundaries to provide
the interior solution in
computational domain

R
R
s
n

Numerical Methods
Complex geometry
Complex equations (nonlinear, coupled)
Complex initial / boundary conditions
No analytic solutions
Numerical methods needed !!

Why Numerical Analysis?

Coupling of Transport Equations to


Poisson and Band-Structure Solvers

D. Vasileska and S.M. Goodnick, Computational


Electronics, published by Morgan & Claypool , 2006.

Drift-Diffusion Approach
Constitutive Equations
Poisson

V p n N D N A

Continuity Equations

n
1
Jn Un
t
q
p
1
J p U p
t
q

Current Density Equations


S. Selberherr: "Analysis and

dn
J n qn( x) n E ( x) qDn
dx
dn
J p qp( x) p E ( x) qD p
dx

Poisson/Laplace Equation
Solution
Poisson/Laplace Equation

No knowledge of solving of PDEs

With knowledge for solving of PDE


Method of images

Theoretical Approaches
Poisson

Laplace

Numerical Me
finite differe
finite elemen

Greens function method


Method of separation of variables

Numerical Solution Sequence

Numerical Solution Details


Governing
Equations
ICS/BCS

Continu
ous
Solution
s

Discretization

FiniteDifference
FiniteVolume
FiniteElement

System of
Algebraic
Equations

Equation
(Matrix)
Solver

Discret
e Nodal
Values

Tridiago
nal
SOR

Approximate
Solution

i (x,y,z,t)
p (x,y,z,t)
n (x,y,z,t)

GaussSeidel
Krylov

D. Vasileska, EEE533 Semiconductor Device and Process Simulation Lecture Notes,


Arizona State University, Tempe, AZ.

Spectral

What is next?
MESH
Finite Difference Discretization
Boundary Conditions

MESH TYPE
The course of action taken in three steps is dictated by the nature of the problem
being solved, the solution region, and the boundary conditions. The most commonly
used grid patterns for two-dimensional problems are

Common grid patterns: (a) rectangular grid, (b) skew grid, (c) triangular grid, (d)
circular grid.

Finite Difference Schemes


Before finding the finite difference solutions to specific PDEs, we will look at how
one constructs finite difference approximations from a given differential equation. This
essentially involves estimating derivatives numerically. Lets assume f(x) shown below:

Estimates for the derivative of f (x) at P using forward, backward, and central
differences.

Finite Difference Schemes


We can approximate derivative of f(x), slope or the tangent at P by the slope of the arc
PB, giving the forward-difference formula,

f ( x0 )

f ( x0 x ) f ( x0 )
x

or the slope of the arc AP, yielding the backward-difference formula,

f ( x0 )

f ( x0 ) f ( x0 x )
x

or the slope of the arc AB, resulting in the central-difference formula,

f ( x0 )

f ( x0 x ) f ( x0 x )
2x

Finite Difference Schemes


We can also estimate the second derivative of f (x) at P as

f ( x0 x / 2) f ( x0 x / 2)
x
1 f ( x0 x ) f ( x0 ) f ( x0 ) f ( x0 x )

x
x
x

f ( x0 )

or

f ( x0 )

f ( x0 x ) 2 f ( x0 ) f ( x0 x )
x 2

Any approximation of a derivative in terms of values at a discrete set of points is


called finite difference approximation.

Finite Difference Schemes


The approach used above in obtaining finite difference approximations is rather
intuitive. A more general approach is using Taylors series. According to the wellknown
expansion,

f ( x0 x ) f ( x0 ) xf ( x0 )

1
1
( x )2 f ( x0 ) ( x )3 f ( x0 )
2!
3!

and

f ( x0 x ) f ( x0 ) xf ( x0 )

1
1
( x )2 f ( x0 ) ( x )3 f ( x0 )
2!
3!

Upon adding these expansions,

f ( x0 x ) f ( x0 x ) 2 f ( x0 ) ( x)2 f ( x0 ) ( x )4
where O(x)4 is the error introduced by truncating the series. We say that this error is of the
order (x)4 or simply O(x)4. Therefore, O(x)4 represents terms that are not greater than (
x)4. Assuming that these terms are negligible,

f ( x0 )

f ( x0 x ) 2 f ( x0 ) f ( x0 x )
x 2

Finite Difference Schemes


Subtracting

f ( x0 x ) f ( x0 ) xf ( x0 )

1
1
2

( x ) f ( x0 ) ( x )3 f ( x0 )
2!
3!

from

f ( x0 x ) f ( x0 ) xf ( x0 )

1
1
( x )2 f ( x0 ) ( x )3 f ( x0 )
2!
3!

We obtain

f ( x0 x ) f ( x0 x) 2( x ) f ( x0 ) ( x )3
and neglecting terms of the order (x)3 yields

f ( x0 x ) f ( x0 x )
f ( x0 )
2x

This shows that the leading errors of the order (x)2. Similarly, the forward and backward
difference formula have truncation errors of O(x).

Poisson Equation
The Poisson equation is of the following general form:

2 (r ) f (r )
It accounts for Coulomb carrier-carrier interactions in the
Hartree approximation
It is always coupled with some form of transport simulator
except when equilibrium conditions apply
It has to be frequently solved during the simulation procedure
to properly account for the fields driving the carriers in the
transport part
There are numerous ways to numerically solve this equation
that can be categorized into direct and iterative methods

Poisson Equation Linearization


The 1D Poisson equation is of the form:

d 2
e
p n ND N A
2
dx

EF Ei
n ni exp
ni exp( / VT )
k BT
Ei EF
p ni exp
k BT

ni exp( / VT )

Finite Difference Representation


1 n 1 2
n 1 1 n 1
2 ni pi i 2 i 1
2 i 1

( pi ni Ci ) ( pi ni )

n
i

Equilibrium:

ni exp( ),
n
i

pi exp( )
n
i

Non-Equilibrium:

n calculated using PM coupling and p still calculated

as in equilibrium case (quasi-equilibrium approximation)

Boundary Conditions
There are three types of boundary conditions that
are specified during the discretization process of the
Poisson equation:
Dirichlet (this is a boundary condition on the potential)
Neumann (this is a boundary condition on the derivative of
the potential, i.e. the electric field)
Mixed boundary condition (combination of Dirichlet and
Neumann boundary conditions)

Note that when applying the boundary conditions for


a particular structure of interest, at least one point
MUST have Dirichlet boundary conditions specified
on it to get the connection to the real world.

1D Discretization
The resultant finite difference equations can be represented in a
matrix form Au= f, where:

x 0 x 1 x2

Neumann

x3

x4 x 5

Dirichlet

u ( 0 , 1 , 2 , 3 , 4 , 5 ) , f ( f 0 , f1 , f 2 , f 3 , f 4 , 5 ) ,
b0
a
1
A

ai

2 c0
b1
a2
0

c1
b2
a3

0
c2
b3
a4

2
dxiw ( dxiw dxie )

c3
b4
0

; bi

where

c4
1
2
dxie dxiw

; ci

2
dxie ( dxiw dxie )

2D Discretization
In 2D, the finite-difference discretization of the Poisson equation
leads to a five point stencil:
N=5,M=4

Va
15 16

17

18

19

10 11

12

13

14

Dirichlet: 0,4,5,9,10,14,15,19
Neuman: 1,2,3,16,17,18

xi+N
dx in

dx ie

dx iw

xi

xi-1
dx is

xi-N

xi+1

2D Discretization (contd)
1
b c
1 1
b2

a6
a7

d1
c2 d2
b3 c3 d3
1

2e1
2e2
2e3
1
b6

a8

c6 d6
b7 c7 d7
b8 c8

e6
e7
d8
1

e8
1
b11

a11
a12

c11
b12

a13

d11
c12 d12
b13 c13 d13
1

2a16
2a17
2a18

e11

1
b16 c16 d16
b17 c17
b18

0 Va
f
1 1
2 f2
3 f3
4 0
V
5 a
6 f6
7 f7
8 f8
0
9
10 Va
11 f11
12 f12
e12
e13 13 f13
0
14
15 Va
16 f16
17 f17
d17
c18 d18 18 f18

1 19 0

Dirichlet: 0,4,5,9,10,14,15,19
Neuman: 1,2,3,16,17,18

Flow-Chart of Equilibrium
Poisson Equation Solver

Initialize parameters:
-Mesh size
-Discretization coefficients
-Doping density
-Potential based on charge neutrality

Solve for the updated potential


given the forcing function using LU decomposition
Update:
- Central coefficient of the linearized Poisson Equation
- Forcing function
> tolerance
Equilibrium solver
Non-Equilibrium solver

Test maximum
absolute error update
< tolerance

Discretization of the Continuity


Equation

Sharfetter-Gummel Discretization Scheme


The discretization of the continuity equation in conservative
form requires the knowledge of the current densities

J n ( x ) en( x ) n E eDnn
J p ( x ) ep ( x ) p E eD p p
on the mid-points of the mesh lines connecting neighboring
grid nodes. Since solutions are available only on the grid
nodes, interpolation schemes are needed to determine the
solutions.
There are two schemes that one can use:
(a)Linearized scheme: V, n, p, and D vary linearly
between neighboring mesh points
(b) Scharfetter-Gummel scheme: electron and hole
densities follow exponential variation between mesh
points

(a) Linearized Scheme


Within the linearized scheme, one has that
Vi 1 Vi
J i 1 / 2 eni 1 / 2 i 1 / 2
eDi 1 / 2n i 1 / 2
ai

ni 1 ni
ni 1 ni
ai
2
ei 1 / 2 Vi 1 Vi eDi 1 / 2
J i 1 / 2 ni 1

2
a
a

i
i
ei 1 / 2 Vi 1 Vi eDi 1 / 2
ni

2
a
a

i
i
This scheme can lead to substantial errors in regions of high
electric fields and highly doped devices.

(b) Sharfetter-Gummel Scheme


One solves the electron current density equation

V V
n
J i 1 / 2 eni 1 / 2 i 1 i eDi 1 / 2
ai
x
V V
n V
eni 1 / 2 i 1 i eDi 1 / 2
ai
V x
for n(V), subject to the boundary conditions
n (V ) n
i

and n (V ) n
i 1

i 1

The solution of this first-order differential equation leads to


e (V Vi ) / Vt 1

n(V ) ni 1 g (V ) ni 1g (V ), g (V ) (V V ) / Vt
e i 1 i
1
eD
V V
V Vi 1

J i 1 / 2 i 1 / 2 ni 1B i 1 i ni B i

ai
Vt
Vt
x
B( x) x
is the Bernouli function

e 1

Solution of the Coupled DD


Equations
There are two schemes that are used in solving the
coupled set of equations which comprises the DriftDiffusion model:
Gummels method
Newtons method

Gummels Method
Gummels relaxation method, which solves the equations with
the decoupled procedure, is used in the case of weak coupling:
Low current densities (leakage currents, subthreshold regime),
where the concentration dependent diffusion term in the current
continuity equation is dominant

The electric field strength is lower than the avalanche threshold,


so that the generation term is independent of V
The mobility is nearly independent of E
The computational cost of the Gummels iteration is one matrix
solution for each carrier type plus one iterative solution for the
linearization of the Poisson Equation

Gummels Method (contd)


The solution strategy when using Gummels relaxation
scheme is the following one:
Find the equilibrium solution of the linearized Poisson
equation
d 2 V

n
i exp V exp V V
N
dx 2

d 2V

n
N ND
i exp V exp V A

ni
dx 2 N

After the solution in equilibrium is obtained, the applied


voltage is increased in steps V VT
Now the scaled Poisson equation becomes:
d 2V

n
N ND
i exp( n ) expV exp( p ) exp V A

ni
dx 2 N

Gummels Method (contd)


The 1D discretized electron current continuity equation (as
long as Einsteins relations are valid) is:
Di 1/ 2
ni 1BVi 1 Vi ni BVi Vi 1
ai
D
1
i 1/ 2 ni 1BVi 1 Vi ni BVi Vi 1 ai 1 ai G R i 0
ai 1
2

For holes, one can obtain analogous equations by


substituting: V V , n p
The decoupled iteration scheme goes as follows:
(1) Solve the Poisson equation with a guess for the quasiFermi levels (use the applied voltage as initial guess)
(2) The potential is used to update the Bernouli functions
(3) The above equations are solved to provide an update for
the quasi-Fermi levels, that enter into the Poisson
equation

Gummels Method (contd)


The criterion for convergence is:
maxV

k 1

nk
pk
, maxVT ln

V , maxVT ln
nk 1
pk 1

In the case of strong coupling, one can use the extended


Gummels scheme

V k 1 V k V
n

k 1

k 1

V
n
n exp 1 V VT ln
nk
VT
k

p
V
p exp 1 V VT ln
k
VT
p
k

Gummels Method (contd)


Original Gummels scheme
initial guess
of the solution

solve
Poissons eq.
n

converged?

Modified Gummels scheme


initial guess
of the solution

Solve Poissons eq.


Electron eq.
Hole eq.
n

Solve electron eq.


Solve hole eq.

Update
generation rate

y
n

converged?

y
converged?

converged?

Newtons Method
The three equations that constitute the DD model, written in
residual form are:
Fv (v , n, p) 0

Fn (v , n, p) 0

Fp (v , n, p) 0

Starting from an initial guess, the corrections are calculated by


solving:
Fv

v
Fn
v
F
p
v

Fv
n
Fn
n
Fp
n

Fv

V k 1 V k V k
p v F
v
Fn
n Fn n k 1 n k n k
p

Fp p Fp
pk 1 pk pk

Newtons Method (contd)


The method can be simplified by the following iterative
scheme:
Fv
V
F
n
V
Fp
V

0
Fn
n
Fp
n

0 Fv
0

V
F

v
0 n Fn 0 0
F
p
p 0 0
Fp

p
k+1

Fv
F
F
V k 1 Fv v n k v p k
V
n
p
Fv
F
Fn k
n k 1 Fn n V k 1
p
V
V
p
Fp
Fp
k 1
k 1 Fp
p
Fp
V

n k 1
p
V
n

Fv
p
V
Fn
n
n p
0

Flow-Chart of 1D DriftDiffusion Simulator

Initialize parameters:
-Mesh size
-Discretization coefficients
-Doping density
-Potential based on charge neutrality

Solve for the updated potential


given the forcing function using LU decomposition
Update:
- Central coefficient of the linearized Poisson Equation
- Forcing function
> tolerance
Equilibrium solver

Test maximum
absolute error update
< tolerance

Non-Equilibrium solver

VA = VA+V

V is a fraction of the
thermal voltage VT

Calculate coefficients for:


- Electron continuity equation
- Hole continuity equation
- Update generation recombination rate
Solve electron continuity equation using LU decomposition
Solve hole continuity equation using LU decomposition
Update:
- Central coefficient of the linearized Poisson Equation
- Forcing function
Solve for the updated potential
given the forcing function using LU decomposition
> tolerance

Test maximum
absolute error update
< tolerance

Calculate current
no

STOP

Maximum voltage exceeded?


yes

Hydrodynamic Modeling
In small devices there exists non-stationary
transport and carriers are moving through the
device with velocity larger than the saturation
velocity
In Si devices non-stationary transport occurs
because of the different order of magnitude of the
carrier momentum and energy relaxation times
In GaAs devices velocity overshoot occurs due to
intervalley transfer
T. Grasser (ed.): "Advanced Device Modeling and Simulation, World Scientific Publishing
Co., 2003, ISBN: 9-812-38607-6 M.
M. Lundstrom, Fundamentals of Carrier Transport, 1990.

Velocity Overshoot in Silicon


kz

ky

kx

Drift velocity [cm/s]

2.5x10

1 kV/cm
5 kV/cm
10 kV/cm
50 kV/cm

2x10

1.5x10

1x107
6

5x10

0
6

-5x10

0.5

1.5

2.5

3.5

time [ps]

Scattering mechanisms:
Acoustic deformation potential scattering
Zero-order intervalley scattering (f and gphonons)
First-order intervalley scattering (f and gphonons)

Energy [eV]

0.25
0.2
1 kV/cm
5 kV/cm
10 kV/cm
50 kV/cm

0.15
0.1
0.05
0
0

X. He, MS Thesis, ASU, 2000.

0.5

1.5

2.5

time [ps]

3.5

How is the Velocity Overshoot Accounted


For?
In Hydrodynamic/Energy balance modeling
the velocity overshoot effect is accounted for
through the addition of an energy conservation
equation in addition to:
Particle Conservation (Continuity Equation)
Momentum (mass) Conservation Equation

Hydrodynamic Model due to


Blotakjer
Constitutive
More convenientEquations:
set of balance Poisson
equations is+in terms of n, vd
and w:

n
n
(nvd )
t
t coll

vd
v
2
1

d (m * vd )
nw nm * v d2
t
m*
3nm *
2

eE ( vd )

m * t coll

m * v d2
w
2

vd w
nvd
w

t
3n
kB
2

(w )
eE vd

t coll

Closure
To have a closed set of equations, one either:
(a) ignores the heat flux altogether
(b) uses a simple recipe for the calculation of the heat flux:

nq T ,

5k B2 nT

2m * v (w )

Substituting T with the density of the carrier energy, the


momentum and energy balance equations become:

npd
2
1
(npd )
2
(nvd pd ) nw nm * v d enE

t
3
2

t col

nw
2

1
2
nvd w nvd
w m * v d
t
3
k
2

Momentum Relaxation Rate


The momentum rate is determined by a steady-state MC
calculation in a bulk semiconductor under a uniform bias
electric field, for which:

vd
eE vd

t
m * t

eE

p (w )vd 0

m*
coll

eE
p (w )
m * vd

K. Tomizawa, Numerical Simulation Of


Submicron Semiconductor Devices.

Energy Relaxation Rate


The emsemble energy relaxation rate is also determined by a
steady-state MC calculation in a bulk semiconductor under a
uniform bias electric field, for which:

w
w
eE vd
eE vd w (w w 0 ) 0

t
t coll
eE vd
w (w )
w w0

K. Tomizawa, Numerical Simulation Of


Submicron Semiconductor Devices.

You might also like