ALGORITHMS FOR MULTI-DIMENSIONAL ANALYSIS OF SEMICONDUCTORS DERIVED FROM FIRST PRINCIPLES Zvonko Fazarinc KEYWORDS: semiconductors, semiconductor structure, computer analysis, algorithms, C-language, charge carriers, transport equation, electron distribution, hole distribution, electric field, basic principles, multi-dimensional ABSTRACT: Expressions for multi-dimensional analysis of semiconductor structiires in the discrete domain are derived from first principles. A simple structure is analyzed and the algorithms are cast in C-language. Algoritmi za večdimenzionalno računalniško analizo polprevodnikov iz osnovnih fizikalnih principov KLJUČNE BESEDE: polprevodniki, strukture polprevodniške, računalniška analiza, algoritmi, C jezik, nosilci nabojev, enačba transportna, porazdelitev elektronov, porazdelitev vrzeli, polje električno, principi osnovni, večdimenzionalnost POVZETEK: Izrazi za večdimenzionalno računalniško analizo polprevodniških struktur so izvedeni iz osnovnih fizikalnih zakonov. Uporaba je ilustrirana na enostavnem primeru in algoritmi so prikazani v C-jeziku. 1. Introduction Multi-dimensional analysis of semiconductor structures is commonly deferred to pre-canned computer programs [1] which often drape a veil of mystery over the inner workings of such design tools. The Poisson's equation is usually taken as the basis for evaluation of Fermi levels which then control the distribution of charged carriers. When the transport equation is used instead, the carrier distributions are computed from its discrete counterpart. This is prone to producing wrong answeres and makes the imposition of boundary conditions quite difficult. We will be making use of the classical physics principles which are applicable to semiconductor structures larger than a few tenths of microns. For smaller structures quantum mechanics must be invoked and the reader should take note of this. 2. The Method of Approach Before we address the general case we introduce the methodology with a simple example. Fig. 1 illustrates three points in space separated by Ax. With each location we associate a particle count C(x,t) at time t. The purpose of this paper is to derive the relevant equations for multi-dimensional analysis of semiconductors in discrete form directly from first physical principles. Such approach effectively avoids the hazards of discretization of partial differential equations [2], makes the imposition of boundary conditions, intuitive and, most importantly, it provides the practicing engineer and the novice with an insight which enables them to independently access the analytical powers of computers. The limitations of a paper prevent us from developing anything resembling a complete source code. Nevertheless, we will address the crucial ideas and make them understandable so that they can be embellished with refinements when needed. C{x-Ax,t) x-Ax C(x,t) x -5>- Cix + Ax,t) x + Ax Fig. 1: Illustration of three points in one-dimensional space. Particles are assumed to be in random thermal agitation which implies that they are equally likely to move to the left or to the right. We denote the likelyhood of their motion in one and the other direction by I. This means that /-times the number of particles in a given position will move to the left and the same number will move to the right. We make a simplifying assumption that particles which do move make one single space step Ax in one time increment At. Armed with this information we can entertain the following question: "What will the concentration be in position x at time f-t-Af given the status at time /?" The answer proceeds along the following line of reasoning. If the likely hood of motion is / then /4imes the number of particles in position x - Ax will move into position X during one time interval At. During the same time /-times the number of particles will move into position X form X + Ax. 2/-times the number of particles initially residing at xwill have moved out of this position. What we have then left at x is C(x,/ + AO = C{x,t)+lC(x-Ax,t) +lC{x+Ax,t)-2lC{x,t) (1) The mathematical manipulation below is intended to show that (1) is the discrete form of the diffusion equation with diffusivity D given by D = lAx^/At (2) First we subtract C(x,t)or\ both sides of equation (1) and divide by At. Then we multiply and divide the RHS of the resulting equation by Ax^and obtain C(x,t+At)-C(x,t) ^ At lAx^ C(x-Ax,t) + C(x + Ax,t)-2C(x,t) At Ax^ We recognize the numerator of the LHS of the above equation as the temporal difference of C(x,t) and the numerator of the RHS as the second spatial difference of C(x,t). Upon taking the limit as Ax and At go to zero we end up with the familiar basic diffusion equation for which the relationship (2) applies. d t dx^ A temporal sequence of plots produced by (1) when the initial distribution is a 5-function in the center and a unit step at the left is shown in Fig.2, An implementation of our example in C-language is shown below // Initialization: for (X = 0; x<200; x+ -i-) C[x] = 0; for (x=0; x<20; x-t- -t-) C[x] = 1.0; C[100]= 10.0; //Time loop of N passes: for(t = 0;t + fy* • fx. • Fig. 5: The other points in two-dimensional space variable diffusivities and forces. This requires that we know all the influxes and outflows from (x,y). Fig.4 guided us to obtain two of them, expressed in (6) and (7). With the aid of Fig.5 we obtain the other two which flow to the right and upward of (x,y) respectively. We denote the net number of particles flowing out of (x,y) towards (x + Ax,y) by A/xfx+.yj. Their count is NAx + ,y) = [I, ix + ,y) (x + .y )]C {x,y,t) - iUx + ,>')■ fx(x ^ ,y)]Cixi-Ax,y,t) ^^^ The net number of particles Ny(x,y+), flowing from (x,y) upward towards (x,y+ Ay) is Ny{x,y + ) = [ly(x,y^)+fy(x,y^)]Cix,y,t) -[ly(x,y,)-fyix,y,)]Cix,y+Ay,t) We can write an expression for the particle count at time f + Af at the point (x,y) by adding all inflowing particles to C(x,y,t) and subtracting all outflowing particles from it. We will allow for the possibility that in addition to particle exchange some of them are being generated at the rate G(x,y) while some are being lost at the rate R(x,y). This produces a net particle increase of [G(x,y) -R(x,y)] At during the time interval At. The total particle count at (x,y) at t+ At. The total particle count at (x,y) at t+ At'is then Cix,y,t+At) = C{x,yj) +NAx.,y) + Nyix,y.)-NAx^,y)-Myix,y^) -^[G{x,y)-R{x,y)]At Equation (10) in association with (6) through (9) is the discrete form of the two dimensional transport equation and we will make use of it shortly. But first we will perform a limiting process on it to obtain the equivalent differential equation. Rather than blindly substituting expressions (6) through (9) into (10) by noting that the difference Nx(x+,y,t) - Nx(x-,y,t) refers to the midpoint between (x.,y) and (x^,y). But this is excatly (x,y) by our definition of x-and Consequently we can write the difference Nx(x^,y,t) - Nx(x-,y,t) as ^xNx(x,y,t)^N\^ere Ax signifies that the difference is with respect to x. When we do the same with the y-difference we get for (10) (11) The value for Nx(x,y,t) can be formally derived from (6) or (8) by respectively incrementing or decrementing all x-arguments by x/2. The result is C{x^,t +A0 = C{x,y,t) + - Ay[//A:j')2C (rj-.Ol + [G (^J-) By means of (4) we convert /-factors to /and then employ (2) to convert /-factors to diffusivity D. We also subtract C(x,y,t) on both sides of equation and divide them by At. A straightforward algebraic manipulation leads to C(x,y,t+A().C(x.v.t) ^ ^ Ar Ax A. Aa: Dxix^) A, Ay kT ^vC-^iV.O Ay Dyix^) Ax AyC(X^,t) Ay (12) In the limit when all increments go to zero the above becomes a differential equation In the above we have used the established notation for half-Ax values as, for example, C(x-Ax/2,y,f) = C(x.,y,f). Similarly we get by either incrementing (7) or decrementing (9) by Ay/2 the expression for Ny(x,y) Ny(x,y,t) = [ly{x,y)+fy(x,y)]C(x,y.,t) -[ly{x,y)-fyix,y)]C(x,y^,t) (13) Substitution of (12) and (13) into (11) yields -Ax fAx^)lCix.^,t) + Cix,o',t)] -Ay ly(xo>)[C(x,y.,t) ■R(x^)]At This time we recognize the term C(x-,y,t) - C(x,,y,t) to be the negative difference centered on (x,/). Consequently we can denote it by - AxC(x,y,t). Similarly for the y-direc-tion. Furthermore the sum of C(x.,y,t) + C(x^,yt) = 2C(x,y,f) and becomes exact when the increments go to zero which we are just about to do. We have now 9C(MA1 = Aß dl ate {x,y) ax kT IH {j'^x)j(',r) + 0.125[C(j:-Ax,.') ^C{x+Ax,l) + C{x^- Ay,t) + C(x^+ Ay.O] (18) Fig. 7: Impurity prof He before and after annealing. Denote the number of Ax steps by X and the number of Ay steps by Y and assign a two-dimensional array C(x,y) to the impurity concentration. We can then write the algorithm which represents the above equation in C-lan-guage as for (y = 0; y 0.0) {n[x,y] = C[x,y]/2,0 + sqrt(C[x,y]*C[x,y]/4.0 2.0e20); p[x,y] = 2.0e20/n[x,y]; } if(C[x,y]< 0.0) {p[x,y] = - C[x,y]/2.0 + sqrt(C[x,y]*C[x,y]/4.0 + 2.0e20); n[x,y]= 2.0e20/p(x,y); } if (C[x.y]= = 0.0) (n[x,y] = 0.0; p[x,y] = 0.0;} } } where 2.0e20 stands for squared intrinsic concentration of Silicon. Gradients of holes and electrons seen in Fig.8 give rise to their migration into the adjacent regions of low density which destroys the initially imposed neutrality. This gives rise to electric fields which tend to oppose the migration and which we will compute later. First we use (10) again to compute the movement of charges but this time we want to distinguish the migration rates of holes and Q{x,y) = C{x,y)+p{x,y)-n{x.y) Fig. 9: Net charge distribution after 10 picoseconds electrons. We assign a diffusivity Dn = 28 to the latter and Dp = 9 to the former. These numbers are in fair agreement with the respective impurity concentrations. We assign the value ln= .125 to the highest diffusivity. The corresponding value of Ip must then be .125x9/28 = .04. With these values and with the force factors initially set to zero we have obtained the net charge density distribution Q(x,y) shown in Fig.9 after approximately 10 picoseconds. It is apparent from Fig.9 that the departure of electrons along the four boundaries of the A/-region produces a net positive charge. Similarly the departure of holes from the P-region produces a net negative charge all around the boundary. A charge reversal is observed at the junction. Implemention in C-language of equations (8) through (10) which have produced Fig.9 is shown below. Fig. 8: Electron and hole distribution. for (i = 0; i < 5; i++) {for (x= 0; X < X; x++) {for(y= 0;y