D.2 Stacked Segments

If the tunneling current through stacked segments is of interest, the explicit specification of all tunneling boundaries of the stack member segments may be quite cumbersome. Therefore, the input deck function registerStack was implemented which finds all boundaries for a number of given stack member segments. In the following example a stack is defined which consists of the two segments SecondOxide and GateOxide. The respective boundaries are found automatically by the registerStack function.

Phys 
{  tunnel = registerStack("Device", "SecondOxide, GateOxide");
   +GateOxide { Electron { tunnel = "FNPure";}}
   +SecondOxide : GateOxide;
}
All stack member segments must share the same tunneling model. This can easily be done using the inheritance mechanism of the input deck: in the above input deck, the tunneling model in the SecondOxide segment is simply inherited from the GateOxide section. Note that it is also possible to evaluate tunneling in several independent stacks and segments simultaneously by concatenating the respective tunnel strings together:
  Phys 
  {  tunnel = registerStack("Device", "LeftStackUpperOxide,
                                       LeftStackMiddleOxide,
                                       LeftStackLowerOxide") +
              registerStack("Device", "RightStackUpperOxide,
                                       RightStackMiddleOxide,
                                       RightStackLowerOxide") +
              "GateOxide,GateOxide_Semiconductor,GateOxide_FloatingGate";
     +GateOxide {  Electron { tunnel = "TsuEsaki"; } }
     +LeftStackLowerOxide   : GateOxide;
     +LeftStackMiddleOxide  : GateOxide;
     +LeftStackUpperOxide   : GateOxide;
     +RightStackLowerOxide  : GateOxide;
     +RightStackMiddleOxide : GateOxide;
     +RightStackUpperOxide  : GateOxide;
  }}
Log
{  currentComponents = yes;
   tunnel            = yes; 
}
In the Log section of the input deck the keywords currentComponents and tunnel can be set to print logging information to the standard output. If the keyword currentComponents in the Log section is set to yes, the electron, hole, and total tunneling currents are printed in the output as IE, IH and It.

If the tunnel keyword is set in the Log section of the input deck, some information about the chosen tunneling segments, boundaries, and the respective stacks is printed to stdout before the simulation is started:

                  Tunneling Information for "Device"
--------------------------------------------------------------------------
Tunneling segment: LowerBarrier                         member of stack #0
   Using boundary: Gate_LowerBarrier
   Using boundary: LowerBarrier_LowerSemi
Tunneling segment: LowerSemi                            member of stack #0
   Using boundary: LowerBarrier_LowerSemi
   Using boundary: LowerSemi_MiddleBarrier
Tunneling segment: MiddleBarrier                        member of stack #0
   Using boundary: LowerSemi_MiddleBarrier
   Using boundary: MiddleBarrier_UpperSemi
Tunneling segment: UpperSemi                            member of stack #0
   Using boundary: MiddleBarrier_UpperSemi
   Using boundary: UpperSemi_UpperBarrier
Tunneling segment: UpperBarrier                         member of stack #0
   Using boundary: UpperSemi_UpperBarrier
   Using boundary: TopContact_UpperBarrier
--------------------------------------------------------------------------

                             Stack 0
--------------------------------------------------------------------------
 Member           Master           Reference Nbr    Opposite Nbr    Points
 LowerBarrier     UpperBarrier     Gate             LowerSemi       47 x 2
 LowerSemi        UpperBarrier     LowerBarrier     MiddleBarrier   47 x 8
 MiddleBarrier    UpperBarrier     LowerSemi        UpperSemi       47 x 2
 UpperSemi        UpperBarrier     MiddleBarrier    UpperBarrier    47 x 9
 UpperBarrier     UpperBarrier     UpperSemi        TopContact      47 x 2
 Inner stack reference segment : LowerBarrier
 Inner stack opposite  segment : UpperBarrier
 Outer stack reference segment : Gate
 Outer stack opposite  segment : TopContact
--------------------------------------------------------------------------
In the upper part of this logging information all tunneling segments with their tunneling boundaries are listed and it is stated, if they belong to a stack. In the lower part the stack members are listed for each stack. Each stack has a master segment (UpperBarrier in this case) and inner and outer reference and opposite segments which denote the direct neighbors of the stack. Also, each segment in a stack has a reference neighbor segment and an opposite neighbor segment. Furthermore, the number of grid points is given for each segment.

A. Gehring: Simulation of Tunneling in Semiconductor Devices