next up previous contents
Next: 4.4.2 Sensitivity Analysis Up: 4.4 Optimization Process Previous: 4.4 Optimization Process

4.4.1 Two-Dimensional Optimization

For the drive current optimizations following the two-dimensional optimization approach 62 optimization parameters are used to describe the doping profile as shown earlier in Fig. 3.4. Each of these parameters represents the logarithm of the doping value at one of the optimization grid points. For the constant background substrate doping $N_{\mathrm{sub}}$ a value of 10$^{15}$ cm$^{-3}$ is used.

In Listing 4.5 the parts of the device generation sub-model mkdev.mod are shown which define the substrate doping parameter Nsub as well as the initial values and bounds of the optimization parameters for Device Generation A and Device Generation B. The doping parameter K06_01, for example, belongs to the grid point in row 6, column 1 of the grid shown in Fig. 3.4. The optimization starts with a uniformly doped inverted-T region with an acceptor doping of 10$^{18}$ cm$^{-3}$ for Device Generation A and 10$^{18.5}$ cm$^{-3}$ for Device Generation B. The allowed range for each parameter lies within 10$^{15}$ cm$^{-3}$ and 10$^{20}$ cm$^{-3}$.

Listing 4.5: The two-dimensional optimization parameter setup.
          .
          .
          .
          (Nsub           float            15)
          (K06_01         bound-float      [18|18.5]    15    20)
          (K07_01         bound-float      [18|18.5]    15    20)
          (K08_01         bound-float      [18|18.5]    15    20)     
          (K09_01         bound-float      [18|18.5]    15    20)
          (K10_01         bound-float      [18|18.5]    15    20)
          (K11_01         bound-float      [18|18.5]    15    20)
          (K12_01         bound-float      [18|18.5]    15    20)
          (K06_02         bound-float      [18|18.5]    15    20)
          .
          .
          .
          (K12_06         bound-float      [18|18.5]    15    20) 
          (K13_06         bound-float      [18|18.5]    15    20) 
          (K14_06         bound-float      [18|18.5]    15    20) 
          (K15_06         bound-float      [18|18.5]    15    20) 
          (K16_06         bound-float      [18|18.5]    15    20) 
          (K17_06         bound-float      [18|18.5]    15    20))
          .
          .
          .

The Knots section in the Makedevice input deck is given in Listing 4.6. The doping parameters are given in a matrix K which defines the doping in a rectangular box at the semiconductor surface. The inverted-T region is embedded in this rectangle. Matrix entries outside the inverted-T region are set equal to the substrate doping $N_{\mathrm{sub}}$.

Listing 4.6: The Knots section in the Makedevice input deck for optimizations using the two-dimensional approach.
Knots {
  aux L    = ~Geometry.gateLength;
  aux SW   = ~Geometry.sourceWellLength;
  aux SG   = ~Geometry.sourceSpacerLength;
  aux Nsub = pow10(<(Nsub)>);
  on      = yes;                         // switch knots method on or off
  mode    = "cosine";                    // spline or cosine mode
  dopType = if (~type == "NMOS", "acceptor", "donor");
                                         // acceptor or donor doping
  Nx      = 16;                          // number of lateral doping sections
  Ny      = 5;                           // number of vertical doping sections
                                         
  latDopLeft  = SW+SG+L/2.-10/9.*L;      // left bound for the knots-doping region
  latDopRight = SW+SG+L/2.+10/9.*L;      // right bound for the knots-doping region
  vertDop     = L/4.;                    // lower bound for the knots-doping region
                                         
  spreadFactorLat  = 100;                // lateral doping spread factor
                                         // for the surrounding region
  spreadFactorVert = 1;                  // vertical doping spread factor
                                         // for the surrounding region
  smooth = yes;                          // smooth edges for the knots doping region
                                         // in spline mode
  f(x) = pow10(x);                       // function definition for convenience
  // matrix with knot-doping values:
  K=[[Nsub,         Nsub,         Nsub,         Nsub,         f(<(K01_05)>),f(<(K01_06)>)],   
     [Nsub,         Nsub,         Nsub,         Nsub,         f(<(K02_05)>),f(<(K02_06)>)],   
     [Nsub,         Nsub,         Nsub,         Nsub,         f(<(K03_05)>),f(<(K03_06)>)],   
     [Nsub,         Nsub,         Nsub,         Nsub,         f(<(K04_05)>),f(<(K04_06)>)],   
     [Nsub,         Nsub,         Nsub,         Nsub,         f(<(K05_05)>),f(<(K05_06)>)],   
     [f(<(K06_01)>),f(<(K06_02)>),f(<(K06_03)>),f(<(K06_04)>),f(<(K06_05)>),f(<(K06_06)>)],   
     [f(<(K07_01)>),f(<(K07_02)>),f(<(K07_03)>),f(<(K07_04)>),f(<(K07_05)>),f(<(K07_06)>)],   
     [f(<(K08_01)>),f(<(K08_02)>),f(<(K08_03)>),f(<(K08_04)>),f(<(K08_05)>),f(<(K08_06)>)],   
     [f(<(K09_01)>),f(<(K09_02)>),f(<(K09_03)>),f(<(K09_04)>),f(<(K09_05)>),f(<(K09_06)>)],   
     [f(<(K10_01)>),f(<(K10_02)>),f(<(K10_03)>),f(<(K10_04)>),f(<(K10_05)>),f(<(K10_06)>)],   
     [f(<(K11_01)>),f(<(K11_02)>),f(<(K11_03)>),f(<(K11_04)>),f(<(K11_05)>),f(<(K11_06)>)],   
     [f(<(K12_01)>),f(<(K12_02)>),f(<(K12_03)>),f(<(K12_04)>),f(<(K12_05)>),f(<(K12_06)>)],   
     [Nsub,         Nsub,         Nsub,         Nsub,         f(<(K13_05)>),f(<(K13_06)>)],   
     [Nsub,         Nsub,         Nsub,         Nsub,         f(<(K14_05)>),f(<(K14_06)>)],   
     [Nsub,         Nsub,         Nsub,         Nsub,         f(<(K15_05)>),f(<(K15_06)>)],   
     [Nsub,         Nsub,         Nsub,         Nsub,         f(<(K16_05)>),f(<(K16_06)>)],   
     [Nsub,         Nsub,         Nsub,         Nsub,         f(<(K17_05)>),f(<(K17_06)>)]]; 
}

Fig. 4.3 shows the improvement in drive current $I_{\mathrm{on}}$ during the optimization procedure for both device generations. The values are taken at each temporary minimum which is the last evaluation step before a gradient calculation as shown earlier in Fig. 3.8. The constraint was fulfilled at any time keeping the leakage current at 1 pA. It should be noted that the superior drive current of Device Generation A results from the higher supply voltage of 1.5 V compared to 0.9 V of Device Generation B.

During the whole optimization procedure more than 5000 device simulations had to be performed, most of them were gradient steps and took only a few seconds due to the very good initial solution provided. Anyway, an optimization like this with such a very large number of optimization parameters and simulation jobs claims considerable computational resources which can only be provided by a workstation cluster of high-speed machines. Assuming that, one optimization procedure like this can be finished within a few hours up to one day.

Figure 4.3: The drive current improvement during the optimization.
\resizebox{0.95\textwidth }{!}{
\psfrag{xlabel} [ct][ct] {optimization step cou...
...0}
\includegraphics[width=0.95\textwidth ]{../figures/drivecurrent-ion-opt.eps}}

Fig. 4.4 and Fig. 4.5 show the acceptor doping profiles as results of the two-dimensional optimization approach for Device Generation A and Device Generation B, respectively. These doping profiles look quite complex due to the numerical nature of the optimization procedure. The optimizer just handles a black box with input parameters delivering the target and the constraint (see Fig. 3.1). As a matter of fact, the influence of each parameter on the performance of the device varies, some have more influence, the others less. Therefore, parameters with very little influence can end up with almost arbitrary values.

Figure 4.4: The result of the two-dimensional drive current optimization for Device Generation A.
\resizebox{\textwidth}{!}{
\psfrag{x [um]} [ct][cb]{$x$\ ($\mu$m)}
\psfrag{y [um...
...aphics[height=\textwidth,angle=90]{../figures/top-twodim-0.25-drivecurrent.eps}}
\resizebox{0.95\textwidth }{!}{
\psfrag{x [um]} [ct][cb]{$x$\ ($\mu$m)}
\psfrag{...
...cs[height=0.95\textwidth ,angle=90]{../figures/3D-twodim-0.25-drivecurrent.eps}}

Figure 4.5: The result of the two-dimensional drive current optimization for Device Generation B.
\resizebox{\textwidth}{!}{
\psfrag{x [um]} [ct][cb]{$x$\ ($\mu$m)}
\psfrag{y [um...
...aphics[height=\textwidth,angle=90]{../figures/top-twodim-0.10-drivecurrent.eps}}
\resizebox{0.95\textwidth }{!}{
\psfrag{x [um]} [ct][cb]{$x$\ ($\mu$m)}
\psfrag{...
...cs[height=0.95\textwidth ,angle=90]{../figures/3D-twodim-0.10-drivecurrent.eps}}


next up previous contents
Next: 4.4.2 Sensitivity Analysis Up: 4.4 Optimization Process Previous: 4.4 Optimization Process
Michael Stockinger
2000-01-05