Professional Documents
Culture Documents
ED-30, VOL.
DEVICES,
ELECTRON
IEEE TRANSACTIONS
ON
9,
SEPTEMBER
1983
1031
I. INTRODUCTION
discretization of Scharfetter and Gummel [16]. Our finiteelementapproach is presented inSubsection 111-E. Although we use piecewise linear elements on triangles here
as contrasted with rectangular-oriented finite differences,
nevertheless, the two approaches lead to discrete systems
with nearly identical properties when the finite-element
quadrature rule is chosen to correspond to a generalized
box-typemethod. Finally in Subsection 111-Fwe make
on methods for solving the
somecomparativeremarks
discrete equations.
11. EQUATIONS
AND BASICMETHODOLOGY
In this section we present the central ideas used in our
numerical approaches to solving the system of nonlinear
PDEs modeling semiconductor devices. The discussion
here is descriptive and methodologically oriented with
pointers to the published literature included for many
details of the algorithms and their analyses. After summarizing the equations, we focus on the iss'ues of nonlinear
iterations, choice of variables and scaling, and gridcontinuation.
A. Equations
Webeginbysummarizing
the static system of PDE's
derived in [13].We consider them in dimensionless form
withmixed
Neumannand
Dirichlet conditions as described there. Furthermore, the Laplace equation, - q A u
= 0, and the constant e, are explicitly suppressed and
considered implicitly in the Poisson equation g, = 0 following, although they will be treated in more detail during
discretization.
As in [13] we consider the coupled system of PDEs
g,(u,n,p)=-Aufn-p-k,=O
(1a)
g,(u, n , p ) = - v.j, + k ,
(Ib)
g , ( u , n , p ) = v-j,+ k ,
=0
=0
(14
jp = -p p p v u - D p v p
(2b)
1032
9, SEPTEMBER 1983
works well when the applied voltages insure that the solution currents are relatively small and the recombination( k , = 0). In this
generation term k , canbeneglected
setting (4b) and (4c) can be regarded assmall perturbations of the electrostatic potential equation (4a), and we
suggest solving (7), rather than (6), fairly accurately. Equations (5b) and (512) canbe taken as linear equations by
selecting u k and w, from zk or by introducing the changes
of variables v = e-', w = ew in (4b), (4c),respectively;
p ew-u.
(3b)
however, in some computing environments such changes
of
Using these quasi-Fermi variables u and w, we may write variables may lead to undesirable numerical difficulties
(1) as
(underflow, overflow, loss of precision).
The major objection to G-S/J iteration is slow converg , ( u , u , w )= - Au e'-' - ew-' - k , = 0
(4a)
gence for high currents and complicated functions k, + 0.
g 2 (u , u , w ) = v p , , e " - " v u k , = 0
(ab) Although the multilevel adaptive refinement approach disthis
g , ( u ,u , w ) = - v p p e w - u v w k , = 0 .
( 4 4 cussedin Subsection 111-E attemptstocircumvent
objection, an approach which couples the equations more
B. Nonlinear Iterations
tightly is desirable. This leads to the second basic approach
There are two basic approaches to solving the system (1) which attempts to apply some form of Newton-like iteraor (4) which dominate the literature on device simulat.lon. tion.
In most of the literature dealing with the system (1) or
The first approach would be known to numerical analysts
as a nonlinear operator Gauss-Seidel/Jacobi (G-S/J) iter- (4), the (perhaps approximate) Jacobian neededfor a Newation. Theiteration associates with each g j the highest-order ton-like iteration is calculated after the discretization prodifferential dependent variable, e.g., u in (la) and (4a), as cedure. That is, (1) is discretized, perhaps by finite difthe "output" variable for that equation. Given value; of ferences, yielding a system of nonlinear equations like (1)
the dependent variables (including possibly the ou1:put whereeach gj isnow a vectorvalued function of three
variable itself), the operator equation gi = 0 is solved 'lap- vectors u , IY,w. Each "block" of the Jacobian is a matrix;
proximately) to obtain a new approximation to the output for example, the diagonal blocks are square matrices
variable. Consider the formulation (4).Symbolically we dg,/du, dg,/dn and d g , / d p , respectively.
We have foundan alternative view more convenient.
can write the iteration as follows. Let zk = ( u k , u k , w,)"~,zo
given. The iteration proceeds by looping through solutions Consider the formal Jacobian of the differential system (1)
or (4). This is a 3 x 3 matrix of linear operators all in
of
gl('k
Uk+l) =
( 5 4 differential form. It is computed by repeatedly applying
the identity
gZ('k, ' k + l
'k+1> = O
8:5b)
{d/du[d/dxf(x,u)]}=
* d/dx[df/du*].
(8)
gj('k9 ' k i - 1 7 ' k + l
wk+l)"o*
(54
are regarded as il:~put Here d / d x is a derivative, usually a gradient or a diverThe variables tothe left of
gence operator, and d f / d u is a linear operator acting on
variables; the output variable is on the right.
the "placeholder" function * . For example, (considering
The symbolic representation of the iteration (5) allows
(1))
considerable flexibility in determining the one-variable opdgl/du = - A *
(94
erator equation. For example, consider g, as in (4a). If the
entire vector zk is"selected"by
3 the linear operator
dg,/dn = - v.(dj,,/dn * ) - d k , / d n *
(9b)
equation is
a g , / a p = - v.(aj,/ap * ) - d k , / d p *
(94
- A u k + , + eUk-"k - ewkPuk- k 1 -- 0
(6)
arethe diagonal entries (* hasbeen suppressed on the
while the selection of only uk and wk explicitly leads ti3 the
left-hand side). Similarly, using (2a) we see that
nonlinear equation
d j=, ,[/ -dpn,*, v u + D , , v ] * .
(10)
- A u k + , + euk+l-"k - ewk-uk+l - k , = 0.
(7)
We consider now the operator Jacobian of the system (4)
Some suggestions on variants of the iteration ( 5 ) as well in greater detail, assuming momentarily that the functions
as methods to solve the individual nonlinear and/or linear pLnand p p are only spatially dependent. Using (8) and (4)
discretized equations are given in 1121, [5], [6]. For the types we obtain the 3 X 3 operator Jacobian (letting k , = 0 for
of problems we have encountered, the G-S/J iteration convenience)
-+
- A* + (
v(pn* e N - " v u )
v ( p P* e w - u v w )
- eu-v
-
v ( p n e u v (- e - ' * ) )
- ew-u
0
-v(ppe-Uv(eW*))
(11)
BANKeZ d .:
1033
= - gk
Z k . + l = zk
+ tkx
-(gixn + gk)
(13)
(144
(14b)
= - ( ap,,/aueu-u
=
(12b)
- xn-l)
aj,,/au
(124
( 6 u , 6v,6
Lk(xn
+pL,eu-v)v~
[l-(a~n/au)/pnl
a/auln p n ]j,.
ja
= [I -
(15)
o n )= -p L , e u - u ~ u
(16a)
+ v p ) = - pP'e W - " v w
(16b)
= - p n ( n v u-
and
jp= - p p ( p v u
= e-'
(174
and
w
= ew
(17b)
1034
(1 8 4
and
g3( u , a) = - vp.,e-"vo
= 0.
(18b)
(19 4
L2q = - V . ( P p e - " v 1 7 )
(19b)
and
which appear on the diagonal of (11) and in (18) be
addressed as follows. Consider (18a). Discretization of
L1v = 0 as we shall see in Sections 111 and IV, leads to a
matrix vector product
A(Pne")rl = k
(20)
where A(p,,e") is an m X m and q and k are now rn vectors.
For the discretizations we consider, A(p.,e") will be symmetric positive definite; however, the entries a i j will vary
as e" varies on the discretization mesh.
We have tried several scalings of (20). A symmetric
scaling
A1ql = D - 1 / 2 A D - 1 / 2 ( D 1 /=2 ~D)P 1 I 2 k= k ,
(21a)
where
D
= diag [ e " ]
(2:l.b)
is a diagonal matrix with entries e" evaluated at meshpoints, preserves the symmetry and positive definitenesz, in
the matrix A , = D-1/2AD-1/2. It is easy to compute the
scaled matrix A , during assembly. Alternatively, we have
considered the scaled linear system
D
A qD)- ' (
=k
(22)
(23)
= diag[ e']
(2!4)
(Z)
= A4173 = k2 = D1k
= diag [ e'-"].
(2 6)
9, SEPTEMBER 1983
BANKei ul. :
1035
Local mesh refinement seems most appropriate for finiteelement discretization, since if can more easily cope with
the host of technical difficulties which arise.
Thedomainpartitioning
idea makes use of (possibly
nonuniform) tensor product grids. The coarsest grid(s)
cover the entire domain. The problem issolved to (say)
sec0n.d-order accuracy, and then the accuracy is improved
using Richardson extrapolation, deferred correction or
some similar technique (see for example [4]). At this point
we assume that the solution is sufficiently accurate in large
portions of the domain where the solution is smooth. We
take the improved solution and fit it with a tensor product
(say, cubic) spline interpolant, which we take as the exact
solution on the smooth region. We may then consider one
or more small subregions of the original domain where the
solution is still deemed inaccurate. On these subregions, we
solve reduced problems, using the spline interpolants to set
both the boundary conditions and provide the initial iterate.
This approach seems well suited to finite-difference calculations, which are relatively easy to implement on tensor
product grids. The tensor product structure also allows for
easy vectorization of many of the inner loop computations,
and thus leads to extremely efficient implementations on
vector computers.
111. DISCRETE
EQUATION
FORMULATION
As we suggested in Subsection 11-B, the nonlinear iteration schemes we have discussed there implicitly assume
that the operator systems (l),(2), or (4)will be solved
approximately in the sense that they will be solved in
discrete form. In this section we present some of the details
of our discretization schemes. Both the finite-difference
and finite-element methods discussed are suitable for dealing with systems such as (l), (2), or (4)which are in
divergence form. Furthermore, linearization of the system
whichgives rise to the Jacobianoperator g of (11) or
linearization of any component operator gi again yield
operators in divergence form. We will limit our detailed
discussion to discretization of the component operators gi
of (1)and (4). Discretization of any of the operators in (11)
not included in this discussion is similar and straightforward..
Our finite-difference discretization is based on the box
method as discussed, for example, in [19, sec. 6.31. Subsection 111-A reviews this method and Subsections 111-B and
111-C apply the method to derive our discretizations. Subsection 111-D discusses the relation of our discretizations to
the Scharfetter-Gummel [16] approach often used in semicondluctor simulation. In Subsection 111-Ewe present our
finite-element approach which is an adaptation of the
piecewise-linear-triangular element approach of Bank et al.
[2], [3], [7], [9]. Interestingly we show that, with the right
choice of quadrature rule, this finite-element discretization
is a box-method finite-difference discretization where now
the boxes are general polygons ratherthan
rectangles.
Finally in Subsection 111-F we discuss briefly some of the
linear equations schemes for solving the linearized discrete
equaiions.
I
L
__________-_ ___--____
(xi,Yj-r)
(28)
where
1036
9,
SEPTEMBER
1983
+ k j + , ) ( h ,+ hi,,)/4].
=Sij[(kj
(32)
ji,j-l,=
[ ( k j+ kj+1)/2] fl(xi,,Y,>
(3:;a)
(33b)
( X i , Yj-1)
As we shall see below, fl and f 2 usually involve derivatives and other functions known (or to be determined) at
the meshpoints M . Hence f , and f 2 are further appro.Kimated by functions, say, f , and f 2 , usually using centered
difference quotients and interpolated values of mesh functions. This leads to an approximate left-hand side of (30),
say
Ti,j- Ti,,, f i , j,. (34)
lhs( i, j ) =
,,+
- EIAU = s
(35)
(36)
(394
-c2Au=0
(39b)
]oxide
(394
as suggested earlier; hence f 2 is continuous there. Application of (32)-(35)is straightforward. Consider a point
(i, j ) as in Fig. 1 in the silicon region.Then, withf, = - rlu,
and f 2 = - c l u y , wewill
approximate fl(xi., y j ) and
- f 2 ( x i , ~j-1)by
f l < x i ( Yj)
, = (1/hi+1)(ui,j-
ui+l,j)
(40a)
and
j i , j - 1 , = [ ~ l ( h , + h i + l ) / 2 k , ] ( u , , - u ~ , ~).- 1 (41b)
((~lkj+l+~2kj)/2hj+1)(~iu
j -i + l , j ) *
(42)
1037
SIMULATION
C. ContinuityEquations
as
-V.j, =s
(444
v - j p =- s
(44b)
and
with the current densities in terms of quasi-Fermi levels
J ;= = - p,,eu-vvu
(454
jp= -pPew-"vw.
(4W
and
We also consider simultaneously the variables v
w = ew which allows (45) to be rewritten as
and
j,, = p , , e " v v
(464
jp= -ppe-"vw.
(46b)
and
To minimize notation we first discretize the equation
-v.j=s
(474
j
(47b)
=pe'vv
.A(x;,,Y
~ =I - ( p e ' ) i , , ( v i , , -
~ ( x= )x / ( e x -1).
Note that
E3/E,
.(peu);,,(v;,-vi+l,j).
(48b)
+ Pi+l,j)/2.
= S( A
u/~)
S ( x) = x/sinh x
- ( ( k , + kj+1)/2h;+,)
P;'j = ( P i j
(55)
where Au = u i j - u , + ~ ,and B ( x ) is the Bernoulli function
v,+l,j)/hi+l
and
f;,,j=
(564
(56b)
f,,,-,.= -(hi/2kj)(peu)i,j-1,(vjj-vi,j-1).
Finally, in this case, we have
(49)
rhs(i, j ) = ~ ; ~ [ ( k , + k ~ + ~ ) h , / 4 ]
(57)
The evaluation of
is more interesting and has
been the subject of considerable discussion in tKe semiconductor simulation literature. The analogue of (49),
namely
E , = (e",, + e"t+I.j)/2
(50)
replacing (32).
The derivation of the discretization for the current densities as given by (45a) is completely analogous to (47)-(56).
We obtain, in place of (48b), the expression
(58)
can be calculated as in our discussion of
iiJj=( ( ~ j + ~ j + l ) / 2 ~ , + l ) ( p e u ~ v ) ) i ~ j ( u j + l , j - u i j ) .
Here
(heu-");,
1038
(49),(51),
could be
ED-30,NO. 9,
SEPTEMBER
1983
and (55). The analogue of (55) for ( e u - l ' ) l , j computed as before, contributing a multiplicative factor of
- ( k, + k J +1)/2 (recalling the " - " in (44a)). When a = 1
and
n = e"-" we obtain
B ( A ( u- u))e"~I-"~I
(594
or
( B ( A u ) e " z l ) ( B (- Au)e-"jj
(513b)
ij,,=
-((kJ
+ k j + 1 ) / 2 h i + l ) ( p e U ) I ~ , (-e e- -u"~~~+ l I )
D. PhysicallyMotivatedDiscretizationsandComparal'iue
Remarks
with
+ D(dn/dx).
(61)
+ En +j ,
(62)
1039
SIMULATION
The finite-element method offers several potentialadvantages as a discretization procedure. Perhaps most important is its ability to handle unusual geometry and
nonuniform meshes ina straightforward fashion. In our
experience, its main disadvantage has been the relatively
costly process of assembling the Jacobian (stiffness)
matrices and nonlinear residuals (right-hand sides) required by approximate Newton methods.
The finite-element procedure is based on a weak formulation of the system of partial-differential equations. (See
[18] for standard termin.ology.) As with the finite-difference
discretization, we consider the variables ( u , u, w ) and
( u , v , 0).Let H ' ( 9 ) be the usual Sobelev space equipped
with the norm
L
\
1
Fig. 3. Vertex in triangulation.
and denote by H t ( 9 ) the subspace of H ' ( 9 ) whose elements satisfy homogeneous boundary conditions on the
Dirichlet portion of the boundary. Let H L ( 9 ) be the affine
space whose elements satisfy the Dirichlet boundary conditions satisfied by u. (I.e., p , q E H,' implies p - q E H t ) .
Similar spaces can be defined for u, w,v , and w .
Let H = H,!@H@Hi, H = H,'@H,,%)H;, and H o =
Then a weak form of (4)is: find ( u , u, w ) E H , such
that, for all (@,'E, y ) E Ho
L v ~ v+@
(eU-0
- ew-u - k,)+dx = 0
+ k2ydx = 0.
(70)
1040
9, SEPTEMBER 1983
13
+,(
+,,
aij.
d i = ljlkcos 8,
(72)
=dj
+dk.
(73)
(74)
REFERENCES
1041
I21 R. E. Bank, PLTMG users guide, June 1981 version, Dep. Math.,
Univ. of California, San Diego, Tech. Rep., Aug. 1982.
optimalorder process for
131 R. E. Bank and T. F.Dupont,An
solving finite element equations, Math.Comput., vol.36, pp.
35-51, 1981.
[41 R. E. Bank and D. J. Rose, Extrapolated fast direct algorithms for
elliptic boundary value problems, in New Directions and Recent
Results in Algorithms and Complexity, J. F. Traub, Ed. New York:
Academic Press, 1916, pp. 201-247.
Parameter selection for Newton-like methods applicable to
(51 -,
nonlinearpartial differential equations, SZAM J . Numer.Anal.,
V O ~17,
. pp. 806-822, 1980.
Global approximateNewton methods, Numer.Math.,
161 -,
V O ~37,
. pp. 279-295, 1981.
Analysis of a multilevel iterative method for nonlinear
171 -,
finite element equations, Math.Comput., vol. 39, pp. 453-465,
1982.
-,
Discretization and multilevel solution techniques for nonlinear elliptic systems, in Elliptic Problem Sohers, G. Birkhoff and
A. Schoenstadt, Eds. New York: Academic I?ress, to be published.
[91 R. E. Bank and A. Weiser, Some a posteriori error estimates for
elliptic partial differential equations, Math. Comput.,submitted for
publication.
S . Eisenstat, M. Gursky, M. Schultz, and A. Sherman, Yale sparse
matrix package I: The symmetric codes, Int. J . Numer. Meth. Eng.,
vol. 18, pp. 1145-1151, 1982; also Dep. Comput. Sci., Yale Univ.,
New Haven, CT, Tech. Rep. 112, 1977.
-,
Yale sparse matrix package 11: Nonsymmetric matrices,
Dep. Comput. Sci., Yale Univ., New Haven, CT, Tech. Rep. 114,
1977.
W. Fichtner and D. J. Rose, On the numerical solution of nonlinear elliptic PDEs arising from semiconductor device modeling, in
Elliptic Problem Solvers, M. Schultz, Ed. Mew York: Academic
Press, 1981, pp. 277-284.
~ 3 1W. Fichtner, D. J. Rose, and R. E. Bank, Semiconductor device
modeling, IEEE Trans. Electron Devices, this issue, pp. 1018-1030;
also S I A M J . Sci. Stat. Comp., to be published.
1141 R. G. Grimes, D. R. Young, and D. M. Young, ITPACK 2A: A
Fortran implementation of adaptive accelerated iterative methods
for solving large sparse linear systems, Center for Numerical
Analysis, Univ. of Texas, Austin, Tech. Rep. CNA-164, 1980.
M. S . Mock, A two-dimensional mathematical model of the insulated-gate field-effect transistor, Solid-StateElectron., vol. 16,
pp. 601-609,1973,
D. Scharfetter and H. Gummel, Large-signal analysis of a silicon
Read diode oscillator, IEEE Trans. Electron Devices, vol. ED-16,
pp. 64-17, 1969.
J. W. Slotboom, Computer-aided two-dimensional analysis of bipolar transistors, IEEE Trans. Electron Devices, vol. ED-20, pp,
669-679, 1913.
I181 G. Strang and G. J. Fix, A n Analysis of the Finite Element Method.
Englewood Cliffs, NJ: Prentice-Hall, 1973.
1191 R. S . Varga, Matrix Iterative Analysis. Englewood Cliffs, NJ:
Prentice-Hall. 1962.