Drift-Diffusion Modeling Prepared by Dragica Vasileska Professor Arizona State University 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) • Burger’s 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 Well-Posed Problem Numerically well-posed Discretization equations Auxiliary conditions (discretized approximated) • the computational solution exists (existence) • the computational solution is unique (uniqueness) • the computational solution depends continuously on the approximate auxiliary data • the algorithm should be well-posed (stable) also 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 Simulation of Semiconductor Devices“, Springer, 1984. 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 PDEs Method of images Theoretical Approaches Poisson Green’s function method Laplace Numerical Methods: finite difference finite elements Method of separation of variables (Fourier analysis) Numerical Solution Sequence Numerical Solution Details Governing Equations ICS/BCS Continuous Solutions Discretization Finite-Difference Finite-Volume System of Algebraic Equations Equation (Matrix) Solver Discrete Nodal Values Tridiagonal φi (x,y,z,t) SOR p (x,y,z,t) Finite-Element Gauss-Seidel Spectral Krylov Boundary Element Multigrid Approximate Solution n (x,y,z,t) Hybrid D. Vasileska, EEE533 Semiconductor Device and Process Simulation Lecture Notes, Arizona State University, Tempe, AZ. 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. Mesh Size • Regarding the grid set-up, there are several points that need to be made: In critical device regions, where the charge density varies very rapidly, the mesh spacing has to be smaller than the extrinsic Debye length determined from the maximum doping concentration in that location of the device LD k B T N max e 2 Cartesian grid is preferred for particle-based simulations It is always necessary to minimize the number of node points to achieve faster convergence A regular grid (with small mesh aspect ratios) is needed for faster convergence Example for Meshing The function below is used to generate non-uniform mesh with constant mesh aspect ratio r. Input parameters are initial mesh size (X0), total number of mesh points (N) and the size of the domain over which we want these mesh points distributed (XT). This is determined by the maximum doping in the device in a particular region. 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. Let’s 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 Taylor’s 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 ) Φ => Φ + d eni / VT d 2 / VT e e C / ni 2 dx eni d e / VT e / VT d 2 eni e / VT / VT e dx 2 eni / VT / VT old e e d new old new eni / VT / VT e e C / ni Renormalized Form LD=sqrt(qni/εVT) d 2 p n C d p n 2 dx d 2 new old p n p n C p n 2 dx new old d Finite Difference Representation 1 n 1 2 n 1 1 n 1 2 ni pi i 2 i 1 2 i 1 n ( pi ni Ci ) ( pi ni )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) Criterion for Convergence There are several criteria for the convergence of the iterative procedure when solving the Poisson equation, but the simplest one is that nowhere on the mesh the absolute value of the potential update is larger than 1E-5 V. This criterion has shown to be sufficient for all device simulations that have been performed within the Computational Electronics community. 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: x0 x1 x2 Neumann x3 x4 x5 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 5 6 7 8 9 0 1 2 3 4 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 (cont’d) 1 b c 1 1 b2 a6 a7 d1 c2 d 2 b3 c3 d 3 1 2e1 2e2 2e3 1 b6 c6 b7 a8 d6 c7 b8 e6 d7 c8 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 f 2 3 f 3 4 0 V 5 a 6 f 6 7 f 7 8 f 8 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 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 Bernouli Function Implementation Others as Well … Numerical Solution Techniques for Sparse Matrices Numerical Methods Objective: Speed, Accuracy at minimum cost Numerical Accuracy (error analysis) Numerical Stability (stability analysis) Numerical Efficiency (minimize cost) Validation (model/prototype data, field data, analytic solution, theory, asymptotic solution) Reliability and Flexibility (reduce preparation and debugging time) Flow Visualization (graphics and animations) Solution Methods • The variety of methods for solving Poisson equation include: Direct methods • Gaussian elimination • LU decomposition method Iterative methods • Mesh relaxation methods - Jacobi Gaus-Seidel Successive over-relaxation method (SOR) Alternating directions implicit (ADI) method • Matrix methods - Thomas tridiagonal form - Sparse matrix methods: Stone’s Strongly Implicit Procedure (SIP), Incomplete Lower-Upper (ILU) decomposition method - Conjugate Gradient (CG) methods: Incomplete Choleski Conjugate Gradient (ICCG), Bi-CGSTAB - Multi–Grid (MG) method LU Decomposition (cont’d) • If LU decomposition exists, then for a tri-diagonal matrix A, resulting from the finite-difference discretization of the 1D Poisson equation, one can write a1 b 2 c1 a2 ... c2 ... bn 1 ... a n 1 bn where 1 a1 , 1 2 cn 1 a n k 1 3 ... ... ... n 1 1 bk , k a k k ck 1 , k 1 c1 2 c2 ... ... ... cn 1 n k 2,3,..., n Then, the solution is found by forward and back substitution: g1 f1 , g xn n , n g i f i i g i 1 , i 2,3,..., n, g ci xi 1 xi i , i n 1,...,2,1 i Iterative Methods Iterative (or relaxation) methods start with a first approximation which is successively improved by the repeated application (i.e. the “iteration”) of the same algorithm, until a sufficient accuracy is obtained. In this way, the original approximation is “relaxed” toward the exact solution which is numerically more stable. Iterative methods are used most often for large sparse system of equations, and always when a good approximation of the solution is known. Error analysis and convergence rate are two crucial aspects of the theory of iterative methods. Error Equation • The simple iterative methods for the solution of Ax = f proceed in the following manner: A sequence of approximations v0,v1,...,vn,..., of x is constructed that converges to x. Let vi be an approximation to x after the i-th iteration. One may define the residual ri = f - Avi as a computable measure of the deviation of vi from x. Next, the algebraic error ei of the approximation vi is defined by ei = x - vi . From the previous equations one can see that ei obeys the socalled residual equation: Aei = ri Jacobi, Gauss-Seidel Methods The expansion of Ax=f gives the relation xk n j 1, j k a ki x j f k , k 1,2,..., n ; a kk 0 a kk In Jacobi’s method the sequence v0,v1,...,vn,... is computed by v ki 1 n j 1, j k a kj v ij f k , k 1,2,..., n ; a kk 0 a kk Note that one does not use the improved values until after a complete iteration. The closely related Gauss-Seidel’s method solves this problem as follows: k 1 v ki 1 a kj v ij1 j 1 n i a kj v j f k j k 1 a kk , k 1,2,..., n ; a kk 0 SOR Method By a simple modification of Gauss-Seidel’s method it is often possible to improve the rate of convergence. Following the definition of residual ri = f - Avi, the Gauss-Seidel formula can be written v ki 1 v ki rki , where k 1 n j 1 j k a kj v ij1 a kj v ij f k rki The iterative method a kk , k 1,2,..., n ; a kk 0 v ki 1 v ki rki is the so-called successive over-relaxation (SOR) method. Here, , the relaxation parameter, should be chosen so that the rate of convergence is maximized. The rate of convergence of the SOR is often surprisingly higher than the one of Gauss-Seidel’s method. The value of depends on the grid spacing, the geometrical shape of the domain, and the type of boundary conditions imposed on it. Convergence • Convergence of the iterative methods: Any stationary iterative method can be written in the general form xk+1 = Bxk + c A relation between the errors in successive approximation can be derived by subtracting the equation x=Bx+c : xk+1 - x = B(xk - x)=…=Bk+1(x0-x) Now, let B have eigenvalues 1,2,...,n, and assume that the corresponding eigenvectors u1,u2,...,un are linearly independent. Then we can expand the initial error as x0 - x = u1 + u2 +…+un Convergence (cont’d) and thus x k x 1k1 u1 2 k2 u 2 ... n kn u n . This means that the process converges from an arbitrary approximation if and only if |i|<1, i=1,2,...,n. Theorem: A necessary and sufficient condition for a stationary iterative method xk+1 = Bxk + c to converge for an arbitrary initial approximation x0 is that (B ) max | i (B ) | 1 , 1i n where (B) is called the spectral radius of B. For uniform mesh and Dirichlet boundary conditions, one has for the SOR method 2 1 1 2 Multi-Grid Method two-grid iteration to solve Av=f on grid n n 5. 1. 1. pre-smoothing on n 4. 2. 2. restriction of r to n-1 n-1 3. solution of Ae=r on n-1 4. prolongation of e to n 5. post-smoothing on n 3. Coarsening Techniques • Coarsening techniques: importance of boundaries 18 points 17 points initial grid bad coarsening good coarsening When the number of points in one dimension is 2N+2 (N being a natural number), a geometric mismatch is generated in the coarser grids, which show pronounced in-homogeneity. The convergence of the method is severely slowed down in these cases. Coarsening Techniques (cont’d) • Coarsening techniques: importance of boundaries propagation of a contact (Neumann BC) through grids initial grid post-smoothing often required on these points no post-smoothing is required Restriction Restriction is used to transfer the value of the residual from a grid n to a grid n-1; relaxation is then a fine-to-coarse process. In a two-dimensional scheme is convenient to use two different restriction operators, namely the full-weighting and the halfweighting. In the simple case of a homogeneous, square grid, one has: 1 16 1 8 1 16 1 8 1 4 1 8 1 16 1 8 1 16 full-weighting 0 1 8 0 1 8 1 2 1 8 0 1 8 0 half-weighting The criteria to choose the most effective scheme in a given situation depend on the relaxation method, as will be discussed in the section devoted to relaxation. Prolongation The prolongation is used to transfer the computed error from a grid n-1 to a grid n. It is a coarse-to-fine process and, in two dimensions, can be described as follows (see figure below): b a a (1) Values on points on the fine grid, which correspond to points on the coarse one (framed points) are just copied. (2) Values on points of type a are linearly interpolated from the two closer values on the coarse grid. (3) Values on points of type b are bilinearly interpolated from the four closer values on the coarse grid. The Coarsest Grid Solver As shown by the algorithm description, the final coarsest grid has just a few grid-points. A typical grid has 3 up to 5 points per axis. On this grid, usually called W0, an exact solution of the basic equation Ae = r is required. The number of grid points is so small on W0 that any solver can be used without changing the convergence rate in a noticeable way. Typical choices are a direct solver (LU), a SOR, or even a few iterations of the error smoothing algorithm. Relaxation Scheme The relaxation scheme forms the kernel of the multigrid method. Its task is to reduce the short wavelength Fourier components of the error on a given grid. The efficiency of the relaxation scheme depends sensitively on details such as the grid topology and boundary conditions. Therefore, there is no single standard relaxation scheme that can be applied. Two Gauss-Seidel schemes, namely point-wise relaxation and line relaxation, can be considered. The correct application of one or more relaxation methods can dramatically imp-rove the convergence. The point numbering scheme plays also a crucial role. Relaxation Scheme (cont’d) (1) Relaxation scheme: point Gauss-Seidel The approximation is relaxed (i.e. the error is smoothed) on each single point, using the values on the point itself and the ones of the neighbors. This is equivalent to solve a single line of the system Au=f. Relaxation Scheme (cont’d) (2) Relaxation scheme: line Gauss-Seidel The approximation is relaxed on a complete row (column) of points, using the values on the point itself and the ones of the other points on that row (column). Successive rows (columns) are visited using a “zebra” numbering scheme. Different combinations of row/column relaxation can be used. This technique, which processes more than a point a the same time is called block relaxation. This is equivalent to solve an onedimensional problem with a direct method, that is to solve a tridiagonal problem. This method is very efficient when points are inhomogeneous in one direction. Comparison of Relaxation Schemes (3) Relaxation schemes: Comparison Point Gauß-Seidel 0.3 Line Gauß-Seidel 0.2 0.2 0.1 0.5 0. 1 t 05 . 0.2 0.9 0. 1 0.3 0.7 0.4 0.9 0.6 0.8 0. 3 0.6 0.1 0.2 0.4 0.2 0.3 0.1 s Smoothing factor 0.5 s Smoothing factor 0.14 Complexity of linear solvers Time to solve model problem (Poisson’s equation) on regular mesh n1/2 n1/3 2D 3D Sparse Cholesky: O(n1.5 ) O(n2 ) CG, exact arithmetic: O(n2 ) O(n2 ) CG, no precond: O(n1.5 ) O(n1.33 ) CG, modified IC: O(n1.25 ) O(n1.17 ) CG, support trees: Multigrid: O(n1.20 ) -> O(n1+ ) O(n1.75 ) -> O(n1.31 ) O(n) O(n) Validity of the Drift-Diffusion Model (a) Approximations made in its derivation • Temporal variations occur in a time-scale much longer than the momentum relaxation time. • The drift component of the kinetic energy was neglected, thus removing all thermal effects. • Thermoelectric effects associated with the temperature gradients in the device are neglected, i.e. J n ( x ) en ( x ) n E eDn n J p ( x ) ep ( x ) p E eD p p • The spatial variation of the external forces is neglected, which implies slowly varying fields. • Parabolic energy band model was assumed, i.e. degenerate materials can not be treated properly. Validity of the Drift-Diffusion Model (cont’d) (b) Extension of the capabilities of the DD model • • Introduce field-dependent mobility (E) and diffusion coefficient D(E) to empirically extend the range of validity of the DD Model. An extension to the model, to take into account the overshoot effect, has been accomplished in 1D by adding an extra term that depends on the spatial derivative of the electric field E n J n ( x ) en ( x ) n ( E ) n ( E ) L( E ) eDn ( E ) x x 1. K.K. Thornber, IEEE Electron Device Lett., Vol. 3 p. 69, 1982. 2. E.C. Kan, U. Ravaioli, and T. Kerkhoven, Solid-State Electron., Vol. 34, 995 (1991). Time-Dependent Simulations The time-dependent form of the drift-diffusion equations can be used both for steady-state, and transient calculations. Steady-state analysis is accomplished by starting from an initial guess, and letting the numerical system evolve until a stationary solution is reached, within set tolerance limits. Time-Dependent Simulations (cont’d) This approach is seldom used in practice, since now robust steady-state simulators are widely available. It is nonetheless an appealing technique for beginners since a relatively small effort is necessary for simple applications and elementary discretization approaches. If an explicit scheme is selected, no matrix solutions are necessary, but it is normally the case that stability is possible only for extremely small time-steps. Time-Dependent Simulations (cont’d) The simulation of transients requires the knowledge of a physically meaningful initial condition. The same time-dependent numerical approaches used for steady-state simulation are suitable, but there must be more care for the boundary conditions, because of the presence of displacement current during transients. Displacement Current In a true transient regime, the presence of displacement currents manifests itself as a potential variation at the contacts, superimposed to the bias, which depends on the external circuit in communication with the contacts. Displacement Current (cont’d) Neglect of the displacement current in a transient is equivalent to the application of bias voltages using ideal voltage generators, with zero internal impedance. In this arrangement, one observes the shortest possible switching time attainable with the structure considered. Hence, a simulation neglecting displacement current effects may be useful to assess the ultimate speed limits of a device structure. Displacement Current (cont’d) When a realistic situation is considered, it is necessary to include a displacement term in the current equations. It is particularly simple to deal with a 1-D situation. Consider a 1-D device with length W and a crosssectional area A. The total current flowing in the device is I D (t ) I n ( x, t ) cA E ( x, t ) t (1) The displacement term makes the total current constant at each position x. This property can be exploited to perform an integration along the device 1 I D (t ) W cA V * 0 I n ( x, t )dx W t W (2) The 1-D device, therefore, can be studied as the parallel of a current generator and of the cold capacitance which is in parallel with the (linear) load circuit. At every time step, Eq. (1) has to be updated, since it depends on the charge stored by the capacitors. Example: Gunn Diode • Consider a simple Gunn diode in parallel with an RLC resonant load containing the bias source. V * (t ) I (t ) Co I o (t ) t (3) where I0(t) is the particle current given by the first term on the right hand side of Eq. (1), calculated at the given time step with driftdiffusion. It is also V * (t ) Vb V * (t ) I (t ) dt R L (4) • Upon time differencing this last equation, with the use of finite differences, we obtain t Co V * (t t ) V * (t ) t I (t t ) I (t ) V * (t ) Vb ) R L V * (t t ) V * (t ) I (t ) I o (t ) (5) Some General Comments A robust approach for transient simulation should be based on the same numerical apparatus established for purely steady-state models. It is usually preferred to use fully implicit schemes, which require a matrix solution at each iteration, because the choice of the time-step is more likely to be limited by the physical time constants of the problem rather than by stability of the numerical scheme. Typical calculated values for the time step are not too far from typical values of the dielectric relaxation time in practical semiconductor structures. Solution of the Coupled DD Equations There are two schemes that are used in solving the coupled set of equations which comprises the Drift-Diffusion model: Gummel’s method Newton’s method Gummel’s Method Gummel’s 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 Gummel’s iteration is one matrix solution for each carrier type plus one iterative solution for the linearization of the Poisson Equation Gummel’s Method (cont’d) The solution strategy when using Gummel’s relaxation scheme is the following one: • Find the equilibrium solution of the linearized Poisson equation d 2 dV n i exp V exp V dV 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 ) exp V exp( p ) exp V A ni dx 2 N Gummel’s Method (cont’d) The 1D discretized electron current continuity equation (as long as Einstein’s 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 Gummel’s Method (cont’d) The criterion for convergence is: maxV k 1 nk pk , maxVT ln V , maxVT ln nk 1 pk 1 k In the case of strong coupling, one can use the extended Gummel’s scheme V k 1 V k dV n k 1 p k 1 dV dn n exp 1 dV VT ln nk VT k dp dV p exp 1 dV VT ln k VT p k Gummel’s Method (cont’d) Original Gummel’s scheme initial guess of the solution solve Poisson’s eq. n converged? Modified Gummel’s scheme initial guess of the solution Solve Poisson’s eq. Electron eq. Hole eq. n y y Solve electron eq. Solve hole eq. Update generation rate y n converged? y converged? n converged? Newton’s 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 p k 1 pk p k p Newton’s Method (cont’d) • 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 n 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 k 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