Post on 13-Apr-2018
SILVACO International 69
TTCCAADD WWOORRKKSSHHOOPP
Chapter 3: NMOS Device Simulation Using ATLAS 3.1 Overview of ATLAS
ATLAS is a physically-based two dimensional device simulator. It predicts the electrical behavior of specified semiconductor structures, and provides insight into the internal physical
mechanisms associated with device operation.
ATLAS can be used standalone or as a core tool in SILVACO’s VIRTUAL WAFER FAB simulation environment. In the sequence of predicting the impact of process variables on
circuit performance, device simulation fits between process simulation and SPICE model
extraction.
3.1.1 ATLAS Inputs and Outputs
Figure 3-1 shows the types of information that flow in and out of ATLAS. Most ATLAS
simulations use two inputs: a text file that contains commands for ATLAS to execute, and a structure file that defines the structure that will be simulated.
ATLAS produces three types of output. The run-time output provides a guide to the progress of simulations running, and it is where error messages and warning messages appear. Log
files store all terminal voltages and currents from the device analysis, and solution files store
two- and three dimensional data relating to the values of solution variables within the device
for a single bias point.
Figure 3-1 ATLAS Inputs and Outputs
SILVACO International 70
TTCCAADD WWOORRKKSSHHOOPP
3.1.2 The Order of ATLAS Commands
In ATLAS, each input file must contain five groups of statements in the correct order.
The order of these groups is as shown in Figure 3-2. Failure to do this will usually cause an
error message and termination of the program and it could lead to incorrect operation of the
program. For example, material parameters or models set in the wrong order may not be used
in the calculations.
Figure 3-2 ATLAS Command Groups with the Primary Statements in each Group
3.1.3 Getting Started With ATLAS
To start ATLAS under DECKBUILD, type:
deckbuild –as&
at the UNIX system command prompt. The command line option -as instructs DECKBUILD
to start ATLAS as the default simulator.
After a short delay, DECKBUILD will appear as shown in Figure 3-3. As can be seen from
the DECKBUILD output window, the command prompt is now ATLAS instead of ATHENA.
SILVACO International 71
TTCCAADD WWOORRKKSSHHOOPP
Figure 3-3 DECKBUILD Window with ATLAS simulator.
3.1.4 Defining Structure in ATLAS
A device structure can be defined in three different ways in ATLAS.
1. An existing structure can be read in from a file. The structure can have been created
by another program such as ATHENA or DEVEDIT.
2. The input structure can be transferred from ATHENA or DEVEDIT through the
automatic interface feature of DECKBUILD.
3. A structure can be constructed using the ATLAS command language.
SILVACO International 72
TTCCAADD WWOORRKKSSHHOOPP
The first and second methods are more convenient than the third and are to be preferred
whenever possible. In this tutorial, we shall use the second method to transfer an NMOS
structure from ATHENA into ATLAS using the auto interface feature of DECKBUILD.
3.2 ATLAS Simulation with NMOS Structure
In this tutorial, we shall demonstrates the following:
1. Generation of simple Id versus Vgs curve with Vds = 0.1V
2. Extraction of device parameters such as Vt, Beta and Theta.
3. Generation of Id versus Vds curves with Vgs = 1.1V, 2.2V and 3.3V
The NMOS structure that was created by ATHENA in Chapter 1 of the TCAD Workshop
Volume I will be used here to simulate the electrical characteristics of the NMOS device.
3.3 Creating ATLAS Input Deck File
To start the simulator with ALTAS, type the statement:
go atlas
To load the “nmos.str” structure file created by ATHENA:
a. From the ATLAS Commands menu, select Structure follows by the Mesh… item.
The ATLAS Mesh menu will popup as shown in Figure 3-5.
Figure 3-4 Invoking ATLAS Mesh Menu.
b. From the Type field, click on the “Read from file” box.
SILVACO International 73
TTCCAADD WWOORRKKSSHHOOPP
c. Next, specify the structure file name “nmos.str” in the File name field.
Figure 3-5 ATLAS Mesh Menu.
d. Press the WRITE button to write the MESH statement into DECKBUILD text window as shown in Figure 3-6.
Figure 3-6 MESH Statement written into DECKBUILD Text Window.
3.4 Models Specification Command Group
Since the NMOS structure has already been created in ATHENA, we shall skip the Structure Specification command group and start with the Models Specification command group. In
this command group, we have to specify the models, contact characteristics and interface
properties using the Model statement, Contact statement and Interface statement
respectively.
3.4.1 Specifying Models
For simple MOS simulation, the parameters SRH and CVT define the recommend model.
SRH is the Shockley-Read-Hall recombination model while CVT is the inversion layer model
from Lombardi (refer to ATLAS User’s Manual vol.1 pp. 3-43) and it sets a general purpose mobility model including concentration, temperature, parallel field and transverse field
dependence. To define the two models for the NMOS structure:
a. From the ATLAS Commands menu, select Models follows by Models … The Deckbuild: ATLAS Model menu will appear as shown in Figure 3-7.
SILVACO International 74
TTCCAADD WWOORRKKSSHHOOPP
Figure 3-7 The DECKBUILD: ATLAS Model Menu
SILVACO International 75
TTCCAADD WWOORRKKSSHHOOPP
a. Under the Category field, choose the “Mobility” model.
b. A list of mobility model appears and select CVT.
c. To print the model status while running in the runtime output region, click “Yes” for
Print Model Status option.
To change the default value of the CVT model (if needed):
1. Click on Define Parameters followed by CVT… The ATLAS Model – CVT menu
appears as shown in Figure 3-8.
2. Press Apply after modifying the parameters.
Figure 3-8 ALTAS Model – CVT Parameters Menu.
To add recombination model:
a. Choose the “Recombination” option in the Category field. Three different
recombination models will then appear as shown in Figure 3-9. These models are the
Auger, SRH (Fixed Lifetimes) and SRH (Conc. Dep. Lifetimes)
SILVACO International 76
TTCCAADD WWOORRKKSSHHOOPP
Figure 3-9 The Recombination Model
b. Select the SRH (Fixed Lifetimes) model for the NMOS structure.
c. Next, click on the Write button and the Model statements will appear in the
DECKBUILD text window as shown in Figure 3-10.
Figure 3-10 The Model Statements
3.4.2 Specifying Contact Characteristics
An electrode in contact with semiconductor material is assumed by default to be ohmic. If a
work function is defined, the electrode is treated as a Schottky contact. The Contact statement is used to specify the metal workfunction of one or more electrodes. To specify the
workfunction of the n-type polysilicon gate contact using the Contact statement:
a. Select Models ⇒⇒⇒⇒ Contacts … from the ATLAS Commands menu. The
DECKBUILD: ATLAS Contact menu appears.
b. Enter ‘gate’ for the Electrode name field.
c. Then, select n-poly for n-type polysilicon as shown in Figure 3-11.
SILVACO International 77
TTCCAADD WWOORRKKSSHHOOPP
Figure 3-11 The DECKBUILD: ATLAS Contact Menu
d. Click the Write button and the following statement will appear in the input file:
contact name=gate n.poly
3.4.3 Specifying Interface Properties
To specify the interface properties of the NMOS structure, the Interface statement is used.
This statement is used to define the interface charge density and surface recombination
velocity at interfaces between semiconductors and insulators. To defines a fixed charge of 3 x
1010 cm
2 at the interface between silicon and oxide:
1. Select Models ⇒⇒⇒⇒ Interface… from the ATLAS Commands menu. The
DECKBUILD: ATLAS Interface menu appears.
2. Enter ‘3e10’ for the Fixed Charge Density field as shown in Figure 3-13.
3. Press the WRITE button to write the Interface statement into DECKBUILD text window.
SILVACO International 78
TTCCAADD WWOORRKKSSHHOOPP
The Interface statement should appears as:
interface s.n=0.0 s.p=0.0 qf=3e10
Figure 3-12 The DECKBUILD: ATLAS Interface Menu
3.5 Numerical Methods Selection Command Group Next, we shall select the type of numerical methods to be used for the simulation. Several
different methods can be used for calculating the solutions to semiconductor device
problems. For the MOS structure, the de-coupled (GUMMEL), and fully coupled
(NEWTON) methods are used. In simple terms, the de-coupled technique like the Gummel
method will solve for each unknown in turn keeping the other variables constant, repeating
the process until a stable solution is achieved. Fully coupled techniques such as the Newton
method solve the total system of unknowns together. The Method statement can be included
by:
a. Select Solutions ⇒⇒⇒⇒ Method … from the ATLAS Commands menu. The Deckbuild: ATLAS Method menu appears.
b. Select Newton and Gummel option in the Method field as shown in Figure 3-13.
c. The default setting of the maximum number of iterations is 25. Change this value if
necessary.
d. Press the WRITE button to write the Method statement into DECKBUILD text window.
SILVACO International 79
TTCCAADD WWOORRKKSSHHOOPP
Figure 3-13 The DECKBUILD: ATLAS Method Menu
e. The Method statement appears is as shown in Figure 3-14. This statement will cause
the solver to start with Gummel iterations and then switch to Newton, if convergence
is not achieved.
Figure 3-14 The Method Statement
SILVACO International 80
TTCCAADD WWOORRKKSSHHOOPP
3.6 Solution Specification Command Group In the Solution Specification command group, we need to include the Log statement to save
the log files which contains all the terminal characteristics calculated by ATLAS, the Solve statement for solving different bias conditions and the Load statement for loading the
solution files. All these can be done using the Deckbuild: ATLAS Test menu.
3.6.1 Obtaining Id versus Vgs curve with Vds = 0.1 V
In this tutorial, we wish to obtain a simple Id versus Vgs curve with Vds = 0.1 V for the NMOS
structure. To accomplish this:
a. From the ATLAS Commands menu, select the chain Solutions ⇒⇒⇒⇒ Solve…. The Deckbuild: ATLAS Test menu as shown in Figure 3-15.
Figure 3-15 Deckbuild: ATLAS Test menu.
b. Click on the Prop… button to invoke the ATLAS Solve properties menu.
c. Change the file name in the Log file field to “nmos1_” as shown in Figure 3-16.
Click OK when done.
SILVACO International 81
TTCCAADD WWOORRKKSSHHOOPP
d. Next, move the mouse within the Worksheet region, right click on the mouse and
select “Add new row” as shown in Figure 3-17.
Figure 3-16 ATLAS Solve properties menu.
Figure 3-17 Adding New Row.
e. A new row will be added in the worksheet as shown.
SILVACO International 82
TTCCAADD WWOORRKKSSHHOOPP
Figure 3-18 A New Row Added.
f. Move the mouse over the “gate” parameter, follow by right clicking on the mouse. A
list of electrode names will appear. Select the “drain” as shown below.
Figure 3-18 Changing “Gate” to “Drain.
g. Click on the value under the Initial Bias column and change it to 0.1 follows by the
WRITE button.
h. Next, move the mouse within the worksheet region again, right click on the mouse
and select “Add new row” again.
i. This adds another new row under the drain row as shown below.
SILVACO International 83
TTCCAADD WWOORRKKSSHHOOPP
Figure 3-19 Adding Another Row.
j. For the “gate” row, move the mouse over the CONST type, right click the mouse and
select “VAR1”. Change the Final Bias value to 3.3 and Delta value to 0.1 as shown in
Figure 3-20.
Figure 3-20 Set Gate Bias Parameters.
SILVACO International 84
TTCCAADD WWOORRKKSSHHOOPP
k. Click the WRITE button and the following statements will then appears in
DECKBUILD text windows as shown in Figure 3-21:
solve init solve vdrain=0.1 log outf=nmos1_0.log solve name=gate vgate=0 vfinal=3.3 vstep=0.1
The statements as shown above start with the “solve init” statement. This statement provides
an initial guess for the potential and carrier concentrations at the zero bias (or thermal
equilibrium) case.
After solving for the zero bias condition, the second Solve statement i.e. “solve vdrain=0.1”
will perform a dc bias of 0.1V at the drain electrode. When the voltage on a particular
electrode is never defined on any Solve statement, that voltage is zero. Therefore, it is not
necessary to explicitly state the voltage on all electrodes on all Solve statements.
The third statement is a Log statement i.e. log outf=nmos1_0.log. This statement is use to
save all the simulation results calculated by ATLAS in the nmos1_0.log log file. These results include the current and voltages for each electrode in the DC simulations. To stop the
terminal characteristics being saved to this file use another Log statement with the “off”
option i.e. log off or with a different log filename.
Finally, the last Solve statement i.e. solve name=gate vgate=0 vfinal=3.3 vstep=0.1 will
ramp the gate voltage from 0V to 3V with a bias step size of 0.1V. Note that the name
parameter in this statement is required and the electrode name is case-sensitive.
Figure 3-21 Statements used for simulating Id versus Vgs curve with Vds = 0.1 V
SILVACO International 85
TTCCAADD WWOORRKKSSHHOOPP
3.6.2 Extracting Device Parameters
In this workshop, the second objective is to obtain some of the device parameters such as Vt,
Beta and Theta. This can be done using the ATLAS Extract menu as follows:
a. From the ATLAS Commands menu, select the chain Extract ⇒⇒⇒⇒ Device…. The Deckbuild: ATLAS Extraction menu appear as shown in Figure 3-22.
Figure 3-22 The Deckbuild: ATLAS Extraction menu.
b. By default, Vt is being select in the Test name field. Also, user are allows to modify
the default extract expression.
c. Click on the WRITE button and the Vt Extract statement will then appear in
DECKBUILD text windows as shown:
extract name="vt"(xintercept(maxslope(curve(abs(v."gate") , abs(i."drain")))) - abs(ave(v."drain"))/2.0)
SILVACO International 86
TTCCAADD WWOORRKKSSHHOOPP
d. Next, invoke the Deckbuild: ATLAS Extraction menu again. Then, click on the Test
name field and change it to Beta as shown in Figure 3-23
Figure 3-23 Setting Extract Statement for Beta.
e. Click on the WRITE button and the Beta Extract statement will then appears in
DECKBUILD text windows as shown:
extract name="beta" slope(maxslope(curve(abs(v."gate") ,abs(i."drain")))) * (1.0/abs(ave(v."drain")))
f. Finally, we will invoke the Deckbuild: ATLAS Extraction menu again to set the
Extract statement for extracting the theta parameter. Then, click on the Test name
field and change it to Theta as shown in Figure 3-24.
Figure 3-24 Setting Extract Statement for Theta.
g. Click on the WRITE button and the Theta Extract statement will then appears in
DECKBUILD text windows as shown:
extract name="theta" ((max(abs(v."drain")) * $"beta")/max (abs(i."drain")))-(1.0 / (max(abs(v."gate")) - ($"vt")))
Before running the simulation, we need to use the Tonyplot statement to plot the simulation
results. To automatically plot the Id versus Vgs, simply type in the following Tonyplot
statement after the last Extract statement as follows:
tonyplot nmos1.log
SILVACO International 87
TTCCAADD WWOORRKKSSHHOOPP
Now, we can start running the simulation. Press the run button on the
Deckbuild control to start the device simulator.
Once the simulation is completed, TONYPLOT will automatically be invoked with the Id versus Vgs characteristics as shown in Figure 3-25.
Figure 3-25 A Plot of Id versus Vgs for the NMOS device.
Also, the extracted device parameters i.e. Vt, Beta and Theta can be seen from the runtime
output window of DECKBUILD as shown in Figure 3-26.
SILVACO International 88
TTCCAADD WWOORRKKSSHHOOPP
Figure 3-26 DECKBUILD Runtime Output showing the Extracted Device Parameters.
SILVACO International 89
TTCCAADD WWOORRKKSSHHOOPP
3.6.3 Generating Families of Curves Using Log, Solve and Load Statements
The next objective of this tutorial is to generate families of Id versus Vds curves with Vgs = 1.1
V, 2.2 V and 3.3 V and Vds is ramp from 0 V to 3.3 V. In order to stop the previous
“nmos1.log” from saving the later terminal characteristics, we need to add another Log
statement as follows:
log off
To generate the family of curves, first, we need to obtain the solution for each Vgs using the
Deckbuild: ATLAS Test menu as follow:
a. From the ATLAS Commands menu, select the chain Solutions ⇒⇒⇒⇒ Solve… to invoke the Deckbuild: ATLAS Test menu.
b. Click on the Prop… button to invoke the ATLAS Solve properties menu.
c. Change the Write mode field to “Line” as shown below and click OK when done.
Figure 3-27 Change Write mode field to “Line” mode.
d. Set the following parameters for biasing the gate as shown in Figure 3-28.
Figure 3-28 Parameters for Biasing the Gate.
e. Click on the WRITE button and the Solve statement will then appears in DECKBUILD text windows as shown:
SILVACO International 90
TTCCAADD WWOORRKKSSHHOOPP
solve vgate=1.1
In order to save the output from this solution in an ATLAS solution file, add-in the
“outf=solve1” option in the Solve statement as shown:
solve vgate=1.1 outf=solve1
f. Repeat the above for gate bias = 2.2V and 3.3V and save the solution file as
“solve2 and “solve3”. The following Solve statements shown be obtained:
solve vgate=2.2 outf=solve2 solve vgate=3.3 outf=solve3
Next, we will use the ATLAS Test menu again to set the Solve statement for ramping the
drain voltage from 0 V to 3.3 V. To do so,
a. From the ATLAS Commands menu, select the chain Solutions ⇒⇒⇒⇒ Solve… to invoke the Deckbuild: ATLAS Test menu.
b. From the ATLAS Test menu, click on the Prop… button to invoke the ATLAS Solve
properties menu.
c. Change the Write mode field to “Test” as shown.
d. Change the file name in the Log file field to “nmos2_” as shown in Figure 3-29.
Figure 3-29 Setting Solve Properties.
e. Click OK when done.
f. In the worksheet area, change the “Name” column from “gate” to “drain”, the Type
column from “CONST” to “VAR1”, the “Initial Bias” column to 0, “Final Bias”
column to 3.3 and “Delta” column to 0.3 as shown in Figure 3-30.
SILVACO International 91
TTCCAADD WWOORRKKSSHHOOPP
Figure 3-30 Setting Drain Bias Condition Using ATLAS Test Menu.
g. Click on the WRITE button and the following statement will then appears in
DECKBUILD text windows as shown:
solve init log outfile=nmos2_0.log solve name=drain vdrain=0 vfinal=3.3 vstep=0.3
Next, we will load in the solution file i.e. “solve1” of the gate bias at 1.1V using the Load
menu and replace it with the “solve init” statement as follows:
a. Highlight the “solve init” statement as shown in 3-31.
b. From the ATLAS Commands menu, select the chain Solutions ⇒⇒⇒⇒ Load… to invoke the Deckbuild: ATLAS Load menu.
SILVACO International 92
TTCCAADD WWOORRKKSSHHOOPP
Figure 3-31 Highlight the “solve init” statement.
c. From the Deckbuild: ATLAS Load menu, enter “solve1” for the File name field.
d. Next, from the Format field, select the SPISCES format.
Figure 3-31 Setting Load Statement Parameters.
e. Click on the WRITE button and a prompt will appears as shown in Figure 3-32. Click
on “Yes, replace selection” button.
SILVACO International 93
TTCCAADD WWOORRKKSSHHOOPP
Figure 3-32 Replace Current Selection Prompt.
f. The Load statement will then replace the “solve init” statement in the DECKBUILD text windows as shown below.
Figure 3-33 Load Statement Replacing Solve Init Statement.
Therefore, the statements starting from the Load statement i.e. “load infile=solve1” to the
Solve statement will generate the data of Id versus Vds for Vgs = 1.1V. To generate the data of
Id versus Vds for Vgs = 2.2V and 3.3V, simply copy these three statements and:
a. Change the input file name in the Load statement from “solve1” to “solve2” and
“solve3”.
b. Change the log file name in the Solve statement from “nmos2_0.log” to
“nmos3_0.log” and “nmos4_0.log”
SILVACO International 94
TTCCAADD WWOORRKKSSHHOOPP
c. The resulting statements are as shown below.
Figure 3-34 Statements for generating the data of Id versus Vds for Vgs = 2.2V and 3.3V.
To plot the family of curves i.e. plot all 3 log files results in a single plot, type the following
Tonyplot statement:
tonyplot –overlay nmos2_1.log nmos2_2.log nmos2_3.log -set nmos.set
In this statement, the –overlay option is to overlay all the 3 log files in a single plot and the –
set option is used to load the set file and restore the display to the condition that TONYPLOT was in when that set file was created.
3.6.4 Quitting from the Simulation Finally, type the statement:
quit
to quit from the simulation.
SILVACO International 95
TTCCAADD WWOORRKKSSHHOOPP
You can now continue running the device simulation by pressing the Cont button
on the Deckbuild control. Once the simulation is completed, TONYPLOT will automatically be invoked with the families of Id versus Vds characteristics as shown in Figure
3-35.
Figure 3-35 Families of Id versus Vds curves for NMOS.
SILVACO International 96
TTCCAADD WWOORRKKSSHHOOPP
Chapter 4: Creating a Polysilicon Emitter NPN BJT Device Structure using ATHENA
4.1 Overview of the Procedure
In this session, we shall create the input deck file to simulate a Polysilicon Emitter NPN
bipolar device. The process flow of the NPN bipolar transistor is summarized as follows:
a. First, a boron implant is carried out to forms the intrinsic base region;
b. A second boron implant is self-aligned to the polysilicon emitter region to form a
connection between the intrinsic base and p+ base contact regions;
c. Spacer-like structures are used on the side of the poly emitter to space the p+ base
contact and to provide self-alignment;
d. Only half of the full device is simulated. Mirroring of this half device into a full
structure is done with structure mirror left;
e. The final stage of the ATHENA syntax defines the electrode positions.
4.2 Creating An Initial Structure
First, we will create a non-uniform grid in a rectangular 0.8 µm by 1.0 µm simulation area.
With the help of the ATHENA Mesh Define menu, define the non-uniform rectangular as
follows as shown in Figure 4-1.
Figure 4-1 Defining Grids in the X Direction.
Next, click on the Y Direction and define the grids in the y direction as shown in Figure 4-2.
SILVACO International 97
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-2 Defining Grids in the Y Direction.
Once done, click on the View... button on the Mesh Define menu to preview the rectangular
grid. The View Grid window will be displayed as shown in Figure 4-3. (Notice that a total of
782 points and 1452 triangles are generated.)
Figure 4-3 Previewing the Grids.
Finally, write mesh define information to the DECKBUILD text window by pressing on the
WRITE button on the Mesh Define menu. A set of lines will appear as shown below:
go athena # Polysilicon Emitter Bipolar (NPN)
SILVACO International 98
TTCCAADD WWOORRKKSSHHOOPP
line x loc=0.00 spac=0.03 line x loc=0.2 spac=0.02 line x loc=0.24 spac=0.015 line x loc=0.3 spac=0.015 line x loc=0.8 spac=0.15 # line y loc=0.00 spac=0.01 line y loc=0.12 spac=0.01 line y loc=0.3 spac=0.02 line y loc=0.5 spac=0.06 line y loc=1.0 spac=0.35
4.3 Defining the Initial Substrate
Next, we shall initialize the substrate region using the ATHENA Mesh Initialize menu. Here,
we wish to initialize the simulation structure as the Silicon Material with <100> orientation
and a background doping of 2 x 1016 atom/cm
3 of Arsenic. To initialize the simulation
structure, set the initialization parameters in the Mesh Initialize menu as shown in Figure 4-4
Figure 4-4 Setting the Initialization Parameters of the BJT.
SILVACO International 99
TTCCAADD WWOORRKKSSHHOOPP
Note that for the Dimensionality field, the default “Auto” is being used. Once the
parameters have been set, press the WRITE button to write the mesh initialization
information into DECKBUILD text window. The following Comment and Initialize statements will appear in the text window:
# Initial Silicon Structure init silicon c.arsenic=2e16 orientation=100
In this tutorial, we will save all the simulated structures for individual process steps. To do
so, the ATHENA File I/O menu will be used. Select the Save button and specify a file name
“init_bjt.str” as shown in Figure 4-5.
Figure 4-5 Saving Structure File.
Press the WRITE button and the following line will appears in the input file:
struct outfile=init_bjt.str
Run the input deck file by pressing the run button on the DECKBUILD window. Then, plot the mesh of the initial structure by highlighting the “init_bjt.str” structure file, and
then click Tools ⇒ Plot ⇒ Plot Structure.... TONYPLOT will appear.
To plot the mesh, invoke the Display (Cross Section) menu by clicking Plot ⇒ Display …,
then click on the mesh icon as shown in Figure 4-6 follows by the Apply button.
Figure 4-6 Display (Cross Section) menu.
SILVACO International 100
TTCCAADD WWOORRKKSSHHOOPP
The initial triangular grid will appears as shown in Figure 4-7. As the “two.d” option was not included, all the process steps were done in a one-dimensional calculation as shown in
Figure 4-7.
Figure 4-7 BJT Initial Triangular Grids.
4.4 Boron Implantation
Next, we will perform an ion implantation using Boron with a dose of 2.5 x 1013 cm
-2 at an
implantation energy of 18 keV to form the intrinsic base region of the bipolar transistor.
To perform the implantation step, the ATHENA Implant menu as shown in Figure 4-8 will be
used. Define the implantation parameters in the Implant menu as show in this figure. Once
done, click on the WRITE button and the following Implant statement will then be
added into the input file:
# Implant Boron implant boron dose=2.5e13 energy=18 crystal
SILVACO International 101
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-8 Implant Parameters for first Boron Implantation.
The implantation step is followed by a diffusion of 60 minutes at 920oC and 1 Atmospheric
pressure. To perform this diffusion step, invoke the ATHENA Diffuse menu and define the
parameters as shown in Figure 4-9.
Figure 4-9 Diffuse Parameters for first Boron Implantation.
SILVACO International 102
TTCCAADD WWOORRKKSSHHOOPP
Press the WRITE button and the following line will appears in the input file:
# Diffuse Boron diffus time=60 temp=920 nitro
Next, invoke the ATHENA File I/O menu to save the structure of the first boron implantation
step. Specify the file name as “implant1_bjt.str” (see Figure 4-10).
Figure 4-10. Saving “implant1_bjt.str” file.
Press the WRITE button and the following line will appears in the input file:
struct outfile=implant1_bjt.str
To continue simulation without re-running from the start,
a. Highlight or place the cursor on the INIT statement (i.e. init silicon
c.arsenic=2e16 orientation=100) as shown in Figure 4-11.
Figure 4-11 Highlighting the INIT statement.
SILVACO International 103
TTCCAADD WWOORRKKSSHHOOPP
b. Next, click on the Initialize button on DECKBUILD Command Bar. This automatically output an initialize statement which invokes the input file
“.history01.str” in the DECKBUILD output window as shown below.
Figure 4-12 Initialize Input History File.
c. Click on the Cont button on the DECKBUILD control. The simulation continues as shown:
Figure 4-13 Continue Simulation of DECKBUILD.
d. Highlight the “implant1_bjt.str” structure file and plot it using TONYPLOT as shown in Figure 4-14.
SILVACO International 104
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-14 Forming the Intrinsic Base Region of the Bipolar Transistor.
4.5 Deposit Polysilicon
The next step is to perform conformal deposition of polysilicon for the polysilicon emitter
region. Here, a polysilicon region of 0.3 µm thickness is deposited using the ATHENA
Deposit menu.
Set the deposition parameters for polysilicon as shown in Figure 4-15 and press the WRITE
button once completed. The following line will appears in the input file:
# Deposit Polysilicon deposit polysilicon thick=0.3 divisions=6
Next, invoke the ATHENA File I/O menu to save the structure of the polysilicon deposition
step and specify the file name as “poly_bjt.str” (see Figure 4-16).
SILVACO International 105
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-15 Deposition Parameters for BJT.
Figure 4-16 Saving “implant1_bjt.str” file.
Press the WRITE button and the following line will appears in the input file:
struct outfile=poly_bjt.str
Continue the simulation by highlighting or placing the cursor on the Diffuse statement i.e.
diffus time=60 temp=920 nitro, follows by clicking on the init and
Cont button on DECKBUILD Command Bar and plot the structure as shown in Figure 4-17.
SILVACO International 106
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-17 Depositing Polysilicon for the Emitter Region.
4.6 Dope Polysilicon
After depositing polysilicon, the next step is to dope the polysilicon with Arsenic. Here, the
implantation is carried out with a high dose of 7.5 x 1015 cm
-2 Arsenic at an implantation
energy of 50 keV. Using the ATHENA Implant menu, set the implantation parameters to
implant Arsenic as shown in Figure 4-18.
Once done, press the WRITE button and the following line will appears in the input file:
# Implant to Dope Polysilicon implant arsenic dose=7.5e15 energy=50 crystal
Save the structure again by invoking the ATHENA File I/O menu and specify the file name as
“dopepoly_bjt.str” as shown in Figure 4-19.
SILVACO International 107
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-18 Implantation Parameters for Doping Polysilicon.
Figure 4-19 Saving “dopepoly_bjt.str” file.
Press the WRITE button and the following line will appears in the input file:
struct outfile=dopepoly_bjt.str
Continue the simulation by highlighting or placing the cursor on the Deposit statement i.e.
deposit polysilicon thick=0.3 divisions=6, follows by clicking on the init
and Cont button on DECKBUILD Command Bar and plot the structure as shown in Figure 4-20.
SILVACO International 108
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-20 Doping Polysilicon with Arsenic.
4.7 Etching Polysilicon The next step in the process simulation is the polysilicon emitter definition. In this tutorial,
we will use a polysilicon emitter edge at x = 0.2 µm and set the center of the emitter at x =
0.0 µm for the initial grid. Therefore, polysilicon should be etched to the right from x = 0.2 as
shown in Figure 4-23.
To perform the geometrical etch, invoke the ATHENA Etch menu and set the etch parameters
as shown in Figure 4-21. When this is done, click on the WRITE button and the following line
will appears in the input file:
# Pattern Polysilicon etch polysilicon right p1.x=0.2
SILVACO International 109
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-21 Defining Parameters for Etch Polysilicon.
Save the structure again by invoking the ATHENA File I/O menu and specify the file name as
“etchpoly_bjt.str” as shown in Figure 4-22.
Figure 4-22 Saving “etchpoly_bjt.str” file.
Press the WRITE button and the following line will appears in the input file:
struct outfile=etchpoly_bjt.str
Continue the simulation by highlighting or placing the cursor on the Implant statement i.e.
implant arsenic dose=7.5e15 energy=50 crystal, follows by clicking on
the init and Cont button on DECKBUILD Command Bar and plot the structure as shown in Figure 4-23.
SILVACO International 110
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-23 Etch Polysilicon.
4.8 Performing Polysilicon Oxidation
After etching the polysilicon, the next step is to perform polysilicon oxidation. The oxidation
recipe is dry oxidation for 25 minutes at 920oC and 1 Atmospheric pressure. To perform this
oxidation step, use the ATHENA Diffuse menu to define the oxidation parameters as shown
in Figure 4-24.
Click on the WRITE button when finished and the following line will appears in the input file:
# Polysilicon Oxidation method fermi compress diffus time=25 temp=920 dryo2 press=1.00
From the method statement, the fermi method is used for undamaged substrates with doping
concentrations < 1x1020 cm
-3 whereas the compress method is used to model oxidation on
non-planar structures and for 2-D oxidation.
SILVACO International 111
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-24 Parameters defined for Polysilicon Oxidation.
Save the structure again by invoking the ATHENA File I/O menu and specify the file name as
“etchpoly_bjt.str” as shown in Figure 4-25.
Figure 4-25 Saving “polyox_bjt.str” file.
Press the WRITE button and the following line will appears in the input file:
struct outfile=polyox_bjt.str
SILVACO International 112
TTCCAADD WWOORRKKSSHHOOPP
Continue the simulation by highlighting or placing the cursor on the Etch statement i.e.
etch polysilicon right p1.x=0.2, follows by clicking on the init and
Cont button on DECKBUILD Command Bar and plot the structure as shown in Figure 4-26.
Figure 4-26 Oxide Formed after the Oxidation Step.
4.9 Annealing Process
After the oxidation process, we will perform an annealing process. This annealing process is
carried out for 50 minutes at a temperature of 900oC in the nitrogen gas at 1 atmospheric
pressure. To perform this annealing step, use the ATHENA Diffuse menu again to define the
annealing parameters as shown in Figure 4-27.
Click on the WRITE button when finished and the following line will appears in the input file:
# Annealing Process diffus time=50 temp=900 nitro press=1.00
SILVACO International 113
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-27 Parameters defined for Annealing Process.
Save the structure and specify the file name as “anneal_bjt.str” as shown in Figure 4-28.
Figure 4-28 Saving “anneal_bjt.str” file.
Press the WRITE button and the following line will appears in the input file:
struct outfile=anneal_bjt.str
SILVACO International 114
TTCCAADD WWOORRKKSSHHOOPP
Continue the simulation by highlighting or placing the cursor on the Diffuse statement i.e.
diffus time=25 temp=920 dryo2 press=1.00, follows by clicking on the init
and Cont button on DECKBUILD Command Bar.
Next, we would like to see the change in the Net Doping before and after the annealing
process. To do this, first plot the annealed structure i.e. anneal_bjt.str and then plot the Net Doping of the current structure as shown in Figure 4-29.
Figure 4-29 After Annealing Process
Next, load the file “polyox_bjt.str” and overlay it onto the “anneal_bjt.str” using the File
menu in TONYPLOT. The overlay structure plots are as shown in Figure 4-30. After the two structure plots are overlay onto each other, perform a cutline using the Cutline menu in
TONYPLOT.
Then, click on the keyboard icon and enter the following values for X and Y as shown
in Figure 4-31.
SILVACO International 115
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-30 Overlaying “polyox_bjt.str” onto “anneal_bjt.str”.
Figure 4-31 Specifying Cutline Location using the Keyboard Option.
Once done, hit the [RETURN] button on keyboard and TONYPLOT will prompt you for confirmation as shown in Figure 4-32. Click on the Confirm button.
SILVACO International 116
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-32 Confirm Cutline
This result in the generation of a one-dimensional plot on the right hand side as shown in
Figure 4-33. From Figure 4-33, it can be seen that the doping profile has been broaden by
diffusion after the annealing process.
Figure 4-33 Net Doping Before and After Annealing Process.
SILVACO International 117
TTCCAADD WWOORRKKSSHHOOPP
4.10 Second Boron Implantation
Next, we will perform another Boron implantation with a dose of 2.5 x 1013 cm
-2 at an
implantation energy of 18 keV. This second Boron implant is self-aligned to the polysilicon
emitter region to form a connection between the intrinsic base and p+ base contact regions.
To perform this implantation step, use the ATHENA Implant menu to set the Implant
statement as shown in Figure 4-34.
Figure 4-34 Implantation Parameters for Second Boron Implant.
Click on the WRITE button when finished and the following line will appears in the input file:
# Second Boron Implantation implant boron dose=2.5e13 energy=18 crystal
Save the structure again by invoking the ATHENA File I/O menu and specify the file name as
“implant2_bjt.str” as shown in Figure 4-35.
Press the WRITE button and the following line will appears in the input file:
struct outfile=implant2_bjt.str
SILVACO International 118
TTCCAADD WWOORRKKSSHHOOPP
Continue the simulation by highlighting or placing the cursor on the Diffuse statement i.e.
diffus time=50 temp=900 nitro press=1.00, follows by clicking on the init
and Cont button on DECKBUILD Command Bar and plot the structure as shown in Figure 4-36.
Figure 4-35 Saving “implant2_bjt.str” file.
Figure 4-36 Net Doping After Second Boron Implantation.
SILVACO International 119
TTCCAADD WWOORRKKSSHHOOPP
4.11 Spacer Formation
We will now define a spacer-like structure on the side of the poly emitter to space the p+ base
contact and also to provide self-alignment. This done by first depositing a layer of 0.4 µm
thick oxide and a grid setting of 10 using the ATHENA Deposit menu as shown below.
Figure 4-37 Parameters Setting for Spacer Deposition.
Click on the WRITE button and the following line will appears in the input file:
# Deposit Spacer deposit oxide thick=0.4 divisions=10
Save the structure using the ATHENA File I/O menu and specify the file name as
“depositspacer_bjt.str” as shown in Figure 4-38.
Press the WRITE button and the following line will appears in the input file:
struct outfile=depositspacer_bjt.str
SILVACO International 120
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-38 Saving “depositspacer_bjt.str” file.
Next, the spacer is dry etch by 0.5 µm thick to form the poly emitter side wall using the
ATHENA Etch menu as shown below.
Figure 4-39 Parameters Setting for Etching Spacer.
Click on the WRITE button and the following line will appears in the input file:
# Etch the Spacer Back etch oxide dry thick=0.50
Save the structure using the ATHENA File I/O menu and specify the file name as
“etchspacer_bjt.str” as shown in Figure 4-40. Press the WRITE button and the following
line will appears in the input file:
SILVACO International 121
TTCCAADD WWOORRKKSSHHOOPP
struct outfile=etchspacer_bjt.str
Figure 4-40 Saving “etchspacer_bjt.str” file.
Continue the simulation by highlighting or placing the cursor on the Implant statement i.e.
implant boron dose=2.5e13 energy=18 crystal, follows by clicking on the
init and Cont button on DECKBUILD Command Bar and plot the structure as shown in Figure 4-41.
Figure 4-41 Forming the Spacer.
SILVACO International 122
TTCCAADD WWOORRKKSSHHOOPP
4.12 Third Boron Implant with Annealing
A third boron implant is carried out to form the p+ base region. In this implantation process,
boron with a high dose of 1 x 1015 cm
-2 is implanted using an energy of 30 keV. The
command statement is set using the ATHENA Implant menu again as shown in Figure 4-42.
Figure 4-42 Setting Parameters for Third Boron Implant.
Click on the WRITE button and the following line will appears in the input file:
# Forming P+ Base Region implant boron dose=1.0e15 energy=30 crystal
Save the structure using the ATHENA File I/O menu and specify the file name as
“implant3_bjt.str” as shown in Figure 4-43. Press the WRITE button and the following line
will appears in the input file:
struct outfile=implant3_bjt.str
SILVACO International 123
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-43 Saving “implant3_bjt.str” file.
Continue the simulation by highlighting or placing the cursor on the Etch statement i.e.
etch oxide dry thick=0.50, follows by clicking on the init and Cont
button on DECKBUILD Command Bar and plot the Net Doping and Junction of the structure as shown in Figure 4-44.
Figure 4-44 Forming the p+ Base Region.
SILVACO International 124
TTCCAADD WWOORRKKSSHHOOPP
After the Boron implantation, it is follow by another annealing process using the a
temperature of 900oC for a period of 60 minutes in Nitrogen gas. To perform this annealing
process, use the ATHENA Diffuse menu to set the Diffuse statement as shown below.
Figure 4-45 Setting Parameters for Second Annealing Process.
Click on the WRITE button and the following line will appears in the input file:
# Second Annealing Process diffus time=60 temp=900 nitro press=1.00
Save the structure again using the ATHENA File I/O menu and specify the file name as
“anneal2_bjt.str” as shown in Figure 4-46. Press the WRITE button and the following line
will appears in the input file:
struct outfile=anneal2_bjt.str
Continue the simulation by highlighting or placing the cursor on the Implant statement i.e.
implant boron dose=1.0e15 energy=30 crystal, follows by clicking on the
init and Cont button on DECKBUILD Command Bar and plot Net Doping and Junction of the structure as shown in Figure 4-46.
SILVACO International 125
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-46 Saving “anneal2_bjt.str” file.
Figure 4-47 Net Doping of the Structure After Second Annealing Process.
Again, we would like to see the change in the Net Doping before and after the annealing
process. To do so, load the file “implant3_bjt.str” and overlay it onto the “anneal2_bjt.str”
using the File menu in TONYPLOT. Then, perform a vertical cutline at Start X=0.7, Y=0 and End X=0.7 and Y=1. The one-dimensional plot will appear on the right hand side as shown in
Figure 4-48.
SILVACO International 126
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-48 Net Doping of the Base Region Before and After Second Annealing Process.
From the above plot, it can be seen that the P+ base region has been broaden by diffusion
after the second annealing process but with the junction still remaining at the same depth.
4.13 Reflecting the Half Structure in the “Y” plane
We have been building one half of a NPN Bipolar Transistor. After defining all the important
regions in the device structure, it is necessary to obtain the full transistor. To obtain the full
bipolar transistor structure, mirror it at its left boundary using the ATHENA Mirror menu as
shown below.
Figure 4-49Reflecting the half BJT Structure using Mirror Menu.
SILVACO International 127
TTCCAADD WWOORRKKSSHHOOPP
Click on the WRITE button and the following line will appears in the input file:
struct mirror left
Save the structure again using the ATHENA File I/O menu and specify the file name as
“full_bjt.str” as shown in Figure 4-50.
Figure 4-50 Saving “full_bjt.str” file.
Press the WRITE button and the following line will appears in the input file:
struct outfile=full_bjt.str
Continue the simulation by highlighting or placing the cursor on the Diffuse statement i.e.
diffus time=60 temp=900 nitro press=1.00, follows by clicking on the init
and Cont button on DECKBUILD Command Bar and plot Net Doping and Junction of the full structure as shown in Figure 4-51.
SILVACO International 128
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-51 Net Doping and Junction of the Full BJT Structure.
4.14 Forming Emitter and Base Contacts After obtaining the full BJT structure, the next step is to deposit and etch the aluminum on
the structure surface so as to form the Emitter and Base contacts. In this tutorial, first, a layer
of aluminum with a thickness of 0.05 µm will be deposit using ATHENA Deposit menu as
shown in Figure 4-52.
Click on the WRITE button when done and the following line will appears in the input file:
# Put down Aluminum and Etch to form the Emitter/Base Contacts deposit aluminum thick=0.05 divisions=2
Save the structure again using the ATHENA File I/O menu and specify the file name as
“anneal2_bjt.str” as shown in Figure 4-53.
SILVACO International 129
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-52 Defining Parameters for setting Aluminum Deposition.
Figure 4-53 Saving “deposit_Al_bjt.str” file.
Press the WRITE button and the following line will appears in the input file:
struct outfile=deposit_Al_bjt.str
Continue the simulation by highlighting or placing the cursor on the Structure statement i.e.
struct mirror left, follows by clicking on the init and Cont
button on DECKBUILD Command Bar and plot the structure with mesh as shown in Figure 4-54.
SILVACO International 130
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-54 Depositing Aluminum on the BJT Full Structure.
Next, we need to etch the aluminum to form the emitter and base contacts. The portion of
aluminum to be etch away is indicated by the shaded boxes as shown in Figure 4-55.
Figure 4-55 Aluminum in the Shaded Regions Are to be Etch Away.
Point 2
(x=-0.16,y=0.1) Point 3
(x=-0.6,y=0.1)
Point 1
(x=-0.16,y=-0.35)
Point 4
(x=-0.6,y=-0.35)
Base
Emitter
SILVACO International 131
TTCCAADD WWOORRKKSSHHOOPP
First, we will perform etching to the left hand side shaded box defined at (-0.16, -0.35), (-
0.16, 0.1), (-0.6, 0.1) and (-0.6, -0.35). Use the ATHENA Etch menu, define these location as
shown in Figure 4-56.
Figure 4-56 Setting Parameters to Etch to the Left.
Once finished, click on the WRITE button and the following line will appears in the input file:
# Etching the Left Hand Side Shaded Region etch aluminum start x=-0.16 y=-0.35 etch cont x=-0.16 y=0.1 etch cont x=-0.6 y=0.1 etch done x=-0.6 y=-0.35
The first Etch statement begins with the start option indicating the starting point (at x = -
0.16, y = -0.35) of the etch process and alumimum indicates that only this material will be
etch. Therefore, other materials such as the silicon, polysilicon and silicon dioxide will not be
etched.
The second and third Etch statements are to specify the second and third coordinate points of
the shaded box. The continue option is used in both statements. The last coordinate point is
defined together with the done option in the last Etch statement.
Save the structure using the ATHENA File I/O menu and specify the file name as
“etchleft_bjt.str” as shown in Figure 4-57.
SILVACO International 132
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-57 Saving “etchleft_bjt.str” file.
Press the WRITE button and the following line will appears in the input file:
struct outfile=etchleft_bjt.str
Continue the simulation by highlighting the Deposit statement i.e. deposit aluminum
thick=0.05 divisions=2. Then, click on the init and Cont
button on DECKBUILD Command Bar and plot the structure as shown in Figure 4-58.
Figure 4-58 Etching the Left Hand Side Shaded Box.
SILVACO International 133
TTCCAADD WWOORRKKSSHHOOPP
Next, we will etch the right hand side shaded box. In this case, we can simply etch the
aluminum starting at x = 0.16 all the way to the right using the Etch menu again as shown in
Figure 4-59.
Figure 4-59 Setting Parameters to Etch to the Right.
Click on the WRITE button and the following line will appears in the input file:
# Etching the Right Hand Side Shaded Region etch aluminum right p1.x=0.15
Save the structure using the ATHENA File I/O menu and specify the file name as
“etchright_bjt.str” as shown in Figure 4-60.
Figure 4-60 Saving “etchright_bjt.str” file.
SILVACO International 134
TTCCAADD WWOORRKKSSHHOOPP
Press the WRITE button to write the following into the input file:
struct outfile=etchright_bjt.str
Continue the simulation by highlighting the Etch statement i.e. etch done x=-0.6 y=-
0.35. Then, click on the init and Cont button on DECKBUILD Command Bar and plot the structure as shown in Figure 4-61.
Figure 4-61 Etched Structure.
4.15 Electrode Specification The purpose of specifying the electrodes for the BJT structure is to enable the structure to be
bias in the device simulator ATLAS. To place the emitter electrode at x = 0 µm, use the ATHENA Electrode menu and set the parameters as shown in Figure 4-62.
Press the WRITE button and the following line will appears in the input file:
electrode name=emitter x=0.00
SILVACO International 135
TTCCAADD WWOORRKKSSHHOOPP
Figure 4-62 Setting Emitter Electrode Location.
Similarly, set the base electrode at x = -0.65 µm as shown in Figure 4-63.
Figure 4-63 Setting Base Electrode Location.
The following statement should be obtained after clicking on the WRITE button:
electrode name=base x=-0.65
Finally, the collector electrode at the bottom of the structure is set using the Backside option
in the Electrode Type field as shown below.
Figure 4-64 Setting Collector Electrode at Backside.
The following statement should be obtained after clicking on the WRITE button:
electrode name=collector backside
SILVACO International 136
TTCCAADD WWOORRKKSSHHOOPP
The final structure is then saved using the ATHENA File I/O menu as shown in Figure 4-65.
Figure 4-65 Saving Final BJT Structure file.
Press the WRITE button to write the following into the input file:
struct outfile=bjt.str
Continue the simulation by highlighting the Etch statement i.e. etch aluminum right
p1.x=0.15. Then, click on the init and Cont button on DECKBUILD Command Bar and plot the final BJT structure as shown in Figure 4-66.
Figure 4-66 Final Emitter Polysilicon NPN BJT Structure.