next up previous contents
Next: D1.1.1 Segment and Device Up: D1. Iteration Blocks Previous: D1. Iteration Blocks

D1.1 Equations and Quantities

The user can select which equation set is to be solved. To allow for a more flexible equation assembly, the equations are split into their constituent terms which can be selected independently. This allows for implementing iteration schemes as reported in [13] where, e.g., the recombination terms in the continuity equations or the contribution of the carrier densities to the charge in Poisson's equation are neglected.

When used for the first time, for each equation the appropriate quantities are automatically created and initialized with proper initial values. These initial values are either taken from a previous simulation or are calculated to give reasonable defaults as follows.

The quantities are added to the solution vector and remain there until the end of the simulation. Each quantity can be separately marked for solving in the next Newton iteration. Only the equations associated with the marked quantities will be used to build up the equation system and of course only the marked quantities will be updated after solving the equation system. However, all quantities already available in the solution vector can be used to calculate the system matrix. The available equations are summarized in the following. A more detailed description of the equations can be found in Chapter 3. The equations are given in differential form, whereas they are implemented in integral form using the box integration scheme [17].

$\displaystyle \underbrace{\mathrm{div}(\varepsilon\cdot\mathrm{grad}\psi)}_{P_{poiss}}^{}\,$ = $\displaystyle \underbrace{\mathrm{q}\cdot n}_{P_{n}}^{}\,$ - $\displaystyle \underbrace{\mathrm{q}\cdot p}_{P_{p}}^{}\,$ - $\displaystyle \underbrace{\mathrm{q}\cdot C}_{P_C}^{}\,$ - $\displaystyle \underbrace{\mathrm{q}\cdot C_{\mathit{Trap}}}_{P_{C_{\mathit{Trap}}}}^{}\,$ (D1)
$\displaystyle \underbrace{\rule[-0.3cm]{0cm}{.3cm}\mathrm{div}{\mathbf{J}_{n}}}_{E_{div}}^{}\,$ = $\displaystyle \underbrace{\rule[-0.3cm]{0cm}{.3cm}\mathrm{q}\cdot R}_{R}^{}\,$ + $\displaystyle \underbrace{\rule[-0.3cm]{0cm}{.3cm}\mathrm{q}\cdot\frac{\partial n}{\partial t}}_{E_t}^{}\,$ (D2)
$\displaystyle \underbrace{\rule[-0.3cm]{0cm}{.3cm}\mathrm{div}{\mathbf{J}_{p}}}_{H_{div}}^{}\,$ = $\displaystyle \underbrace{\rule[-0.3cm]{0cm}{.3cm}-\mathrm{q}\cdot R}_{R}^{}\,$ - $\displaystyle \underbrace{\rule[-0.3cm]{0cm}{.3cm}\mathrm{q}\cdot\frac{\partial p}{\partial t}}_{H_t}^{}\,$ (D3)
$\displaystyle \underbrace{\mathrm{q}\cdot n}_{P_{n}^{\mathit{QFL}}}^{}\,$ = q . NC . exp$\displaystyle \left(\vphantom{- \frac{\mathrm{q}\cdot(\varphi_{n}-\psi)+E_{C}}{\mathrm{k_{B}}\cdot T_{L}}}\right.$ - $\displaystyle {\frac{\mathrm{q}\cdot(\varphi_{n}-\psi)+E_{C}}{\mathrm{k_{B}}\cdot T_{L}}}$ $\displaystyle \left.\vphantom{- \frac{\mathrm{q}\cdot(\varphi_{n}-\psi)+E_{C}}{\mathrm{k_{B}}\cdot T_{L}}}\right)$ (D4)
$\displaystyle \underbrace{\mathrm{q}\cdot p}_{P_{p}^{\mathit{QFL}}}^{}\,$ = q . NV . exp$\displaystyle \left(\vphantom{\frac{\mathrm{q}\cdot(\varphi_{p}-\psi)+E_{V}}{\mathrm{k_{B}}\cdot T_{L}}}\right.$$\displaystyle {\frac{\mathrm{q}\cdot(\varphi_{p}-\psi)+E_{V}}{\mathrm{k_{B}}\cdot T_{L}}}$ $\displaystyle \left.\vphantom{\frac{\mathrm{q}\cdot(\varphi_{p}-\psi)+E_{V}}{\mathrm{k_{B}}\cdot T_{L}}}\right)$ (D5)
$\displaystyle \underbrace{\rule[-0.4cm]{0cm}{.4cm}\mathrm{div}\ \mathbf{S}_{n}}_{S_{\mathit{n,div}}}^{}\,$ = $\displaystyle \underbrace{\rule[-0.4cm]{0cm}{.4cm}\mathrm{grad}\left(\frac{E_{C}}{\mathrm{q}} -\psi\right)\cdot\mathbf{J}_{n}}_{S_{\mathit{n,J}}}^{}\,$ - $\displaystyle {\frac{3\cdot \mathrm{k_{B}}}{2}}$ . $\displaystyle \left(\vphantom{\underbrace{\rule[-0.4cm]{0cm}{.4cm}\frac{\partia...
...4cm}n\cdot\frac{T_{n} -T_{L}}{\tau_{\epsilon,n}}}_{S_{\mathit{n,\tau}}}}\right.$$\displaystyle \underbrace{\rule[-0.4cm]{0cm}{.4cm}\frac{\partial \,(n\cdot T_{n})}{\partial t}}_{S_{\mathit{n,t}}}^{}\,$ + $\displaystyle \underbrace{\rule[-0.4cm]{0cm}{.4cm}R\cdot T_{n}}_{S_{\mathit{n,R}}}^{}\,$ + $\displaystyle \underbrace{\rule[-0.4cm]{0cm}{.4cm}n\cdot\frac{T_{n} -T_{L}}{\tau_{\epsilon,n}}}_{S_{\mathit{n,\tau}}}^{}\,$ $\displaystyle \left.\vphantom{\underbrace{\rule[-0.4cm]{0cm}{.4cm}\frac{\partia...
...4cm}n\cdot\frac{T_{n} -T_{L}}{\tau_{\epsilon,n}}}_{S_{\mathit{n,\tau}}}}\right)$ (D6)
$\displaystyle \underbrace{\rule[-0.4cm]{0cm}{.4cm}\mathrm{div}\ \mathbf{S}_{p}}_{S_{\mathit{p,div}}}^{}\,$ = $\displaystyle \underbrace{\rule[-0.4cm]{0cm}{.4cm}\mathrm{grad}\left(\frac{E_{V}}{\mathrm{q}} -\psi\right)\cdot\mathbf{J}_{p}}_{S_{\mathit{p,J}}}^{}\,$ - $\displaystyle {\frac{3\cdot \mathrm{k_{B}}}{2}}$ . $\displaystyle \left(\vphantom{\underbrace{\rule[-0.4cm]{0cm}{.4cm}\frac{\partia...
...4cm}p\cdot\frac{T_{p} -T_{L}}{\tau_{\epsilon,p}}}_{S_{\mathit{p,\tau}}}}\right.$$\displaystyle \underbrace{\rule[-0.4cm]{0cm}{.4cm}\frac{\partial \,(p\cdot T_{p})}{\partial t}}_{S_{\mathit{p,t}}}^{}\,$ + $\displaystyle \underbrace{\rule[-0.4cm]{0cm}{.4cm}R\cdot T_{p}}_{S_{\mathit{p,R}}}^{}\,$ + $\displaystyle \underbrace{\rule[-0.4cm]{0cm}{.4cm}p\cdot\frac{T_{p} -T_{L}}{\tau_{\epsilon,p}}}_{S_{\mathit{p,\tau}}}^{}\,$ $\displaystyle \left.\vphantom{\underbrace{\rule[-0.4cm]{0cm}{.4cm}\frac{\partia...
...4cm}p\cdot\frac{T_{p} -T_{L}}{\tau_{\epsilon,p}}}_{S_{\mathit{p,\tau}}}}\right)$ (D7)
$\displaystyle \underbrace{\rule[-0.3cm]{0cm}{.3cm}\mathrm{div}\ \mathbf{S}_L}_{T_{\mathit{div}}}^{}\,$ = $\displaystyle \underbrace{\rule[-0.3cm]{0cm}{.3cm}H}_{T_H}^{}\,$ - $\displaystyle \underbrace{\rule[-0.3cm]{0cm}{.3cm}\rho_{\mathrm{L}}\cdot c_{\mathrm{L}}\cdot\frac{\partial T_{L}}{\partial t}}_{T_t}^{}\,$ (D8)

The unknown quantities of this equation system are the electrostatic potential $ \psi$, the electron and hole concentrations n and p, the carrier temperatures Tn and Tp, and the lattice temperature TL. C denotes the net concentration of the ionized dopants, CTrap denotes the concentration of the occupied traps, $ \varepsilon$ is the dielectric permittivity of the semiconductor, and R is the net recombination rate. Since only a few combination of terms yield meaningful results, these terms are collected to so-called model groups to simplify the selection mechanism.

Currently two different versions of Ediv exist depending on the current model used ((3.5) or (3.7)), namely EdivDD and EdivHD, vice-versa for holes. The groups resulting from the equation assembly models given above are listed in Table D.1.

Table D.1: Example model groups
Group name Equation assembly models
electrons EdivDD, Pn
electronsTrans Et
electronsQFL PnQFL
electronsHD EdivHD, Pn, Sn, div, Sn, J, Sn,$\scriptstyle \tau$
electronsHDTrans Et, Sn, t
holes HdivDD, Ph
holesTrans Ht
holesQFL PpQFL
holesHD HdivHD, Pp, Sp, div, Sp, J, Sp,$\scriptstyle \tau$
holesHDTrans Ht, Sp, t
potential Ppoiss, PC
<recombination> R,, PCTrap, Sn, R, Sp, R
selfHeating Tdiv, TH
selfHeatingTrans Tt

The important recombination groups are written as <recombination>, denoting that several different mechanisms exist which split the terms given above into terms handling only one single effect. Currently available are Shockley-Read-Hall recombination, Auger recombination, direct recombination, band to band tunneling, and impact ionization. In addition, interface groups are available which handle the interface and boundary conditions. These groups can be considered to be complete in the following sense: if it is desired to simulate the Poisson equation, e.g., inside an oxide, only the potential group is necessary. This is done by the following iteration block:

Iterate
{
   Scheme
   {
      models = "potential,potentialInt";
      ...
   }
}

If one is also interested in the electron concentration, e.g., in the channel of a HEMT, the electron group has to be added:

Iterate
{
   Scheme
   {
      models = "potential,potentialInt,electrons,electronsInt";
      ...
   }
}

If the derivative of the electron concentration with respect to time is relevant, e.g., for a transient simulation, the electronTrans group has to be added:

Iterate
{
   Scheme
   {
      models = "potential,potentialInt,"
               "electrons,electronsInt,electronsTrans";
      ...
   }
}


Table D.2: Quantity classes and the groups which create them
Group Name Created Quantity Classes
electrons Potential
  ElectronConcentration
electronsTrans ElectronConcentration
electronsQFL Potential
  ElectronConcentration
electronsHD Potential
  ElectronConcentration
  ElectronTemperature
electronsHDTrans ElectronConcentration
holes Potential
  HoleConcentration
holesTrans HoleConcentration
holesQFL Potential
  HoleConcentration
holesHD Potential
  HoleConcentration
  HoleTemperature
holesHDTrans HoleConcentration
potential Potential
<recombination> Potential
  ElectronConcentration
  HoleConcentration
selfHeating LatticeTemperature
selfHeatingTrans LatticeTemperature
potentialInt Potential on both segments
electronsInt Potential on both segments
  ElectronConcentration on both segments
electronsHDInt Potential on both segments
  ElectronConcentration on both segments
  ElectronTemperature on both segments
terminal ContactVoltage
  ContactCurrent
  ContactCharge
  ContactTemperature
  BoundaryCurrent
  BoundaryElectronCurrent
  BoundaryHoleCurrent
  BoundaryConductionCurrent
  BoundaryDisplacementCurrent

Several tests are implemented to simplify model assembly. Among these test are the following:

As pointed out above, each group automatically creates the quantities which form the unknowns of the equation system. Each quantity belongs to a so-called quantity class, e.g., the potentials inside all insulator, conductor, and semiconductor segments belong to the quantity class Potential. Table D.2 lists the quantity classes and the model groups which create them. It is important to note that each quantity is created and initialized when it is first requested by one of the model groups. The mere creation of a quantity does not imply that there is a controlling equation available. In case the user registers only the electrons group on one segment, the quantities $ \psi$ and n are created. The potential $ \psi$ is initialized to the built-in potential whereas the electron concentration n is computed using a charge-neutrality assumption. As there has been no Poisson equation requested (group Potential has not been used), the electron continuity equation will be solved stand-alone.

The same is true for interface models. When using for instance the HD interface group, carrier temperature quantities on both sides of the interface are created and are initialized to the lattice temperature. However, by simply creating these quantities the interface model does not make any assumptions about the transport models used on either side. It is possible to use a DD model on one side and a HD model on the other side which implies an equilibrium boundary condition for the carrier temperatures as the carrier temperatures are set equal to the lattice temperature in this case.

The terminal group needs some further attention. It creates an abundance of quantities which might seem unnecessary at a first glance. The quantities whose names start with Contact are the terminal quantities which are used to formulate the boundary conditions. The quantities with names beginning with Boundary are supplementary quantities which represent the current components and are used to simplify calculation of the contact current.

For mixed-mode simulations the basic semiconductor equations are augmented by the circuit equations resulting from the modified nodal approach (MNA) and the MNA equations for the thermal equivalent circuit. It is worthwhile to note that for the KCL equation the node voltage vector is split into two quantity classes namely node voltages (NodeVoltage) and fixed node voltages (FixNodeVoltage), respectively. Since each quantity class can be marked separately for the solving process, this separation has the major advantage that the fixed node voltage class can be arbitrarily solved or not. One way to utilize this feature is to emulate the behavior of typical circuit simulators like SPICE. To aid convergence, SPICE allows the user to set some critical node voltages to a constant value, iterate until convergence, release the critical node voltages, and continue iteration until final convergence. This has been implemented in the MixedDD and MixedHD iteration schemes.

Schemes
{
   MixedDD
   {
      DDPre : DDBlock
      {
         ignoreQuantities = "FixNodeVoltage";
      }
      DDPre : DDBlock;
   }
}

Iterate
{
   Scheme : ~Schemes.MixedDD;
}

However, due to the generality of this concept, it is possible to design own iteration schemes with a different behavior. One useful possibility might be to fix some node voltages only at distinct time points to their initial or last value (which is internally the same).




next up previous contents
Next: D1.1.1 Segment and Device Up: D1. Iteration Blocks Previous: D1. Iteration Blocks
Tibor Grasser
1999-05-31