Nano-Fab Simulator Layout - Sinclair Community College

Download Report

Transcript Nano-Fab Simulator Layout - Sinclair Community College

NanoFab Trainer Update
Nick Reeder, February 28, 2014
Updates to User Interface
• Added progress bars to show progress during
time-consuming operations.
Performance Improvement
• Added code that removes points from
displayed polygons if the points are spaced
more closely than a pixel’s width; in some
cases this greatly reduces the number of
polygon vertices, improving performance of
subsequent operations.
• See next slide for comparison of original code
to revised code.
Performance Improvement
Original Code
SiO2 polygons contain
2112 vertices.
Revised Code
SiO2 polygons contain
29 vertices.
Change to Etch Code
• Etch code now has a time resolution of one
second instead of one-half minute. New
code requires considerably more time for
etch operations but gives the user greater
control and sometimes results in smoother
edge profiles after an etch. (See next slide.)
• Question: Should dialog box for etch let user
specify time in seconds only or in combined
minutes:seconds?
Change to Etch Code
Original Resolution
(One half-minute )
SiO2 polygons contain
29 vertices.
New Resolution (One
second)
SiO2 polygons contain
32 vertices.
Change to Materials Database
• Added Cl2 plasma as an etchant.
• Williams’ 1996 paper has little data for Cl2
plasma, and 2003 paper has none. See next
slide for etch rates.
Etch Rates (nm/min) per Williams 1996
Cl2 +
He
W
W
Al + 2% Si Sputtered
Ti Sputtered
W Sputtered
Si
SiO2
Single crystal
Poly n+
Poly undoped
Wet oxide
Dry oxide
LTO undoped
anneald
Unan. PSG LPCVD
500
570
320
0.8
6
Ann. PSG LPCVD
14
Stoich LPCVD
Low-stress LPCVD
56
53
23
Proposed Simulated Etch Rates (nm/min)
Ag, Evap or Sputtered
Al, Evap or Sputtered
Au, Evap or Sputtered
Cr, Evap or Sputtered
Cu, Evap or Sputtered
Ni, Evap or Sputtered
Pt, Evap or Sputtered
Ti, Evap, CVD, or Sputtered
W, CVD or Sputtered
Cl2
0 + warn
10
0 + warn
0 + warn
0 + warn
0 + warn
0 + warn
0 + warn
10
Ge, Evap or Sputtered
Si, Wafer or Evap or Sputtered
0 + warn
500
Al2O3, Evap or Sputtered
0 + warn
10
SiO2, Thermal Evap or CVD or Sputtered
Si3N4
OCG820 positive resist
Olin Hunt 6512 positive resist
300
270
Si3N4, Evap or CVD or Sputtered
Ta2O5
TiO2
SPR 955
SU8 2015
55
0 + warn
0 + warn
285
285
Updates to Expose Code
• Making progress on passing results from
Andrew’s Dill exposure code to the trainer.
Image below is from 15 second exposure.
Questions about Exposing Photoresist
•
How to generate the
incident beam profile at
resist surface (as in the
figure at right from p. 5 of
Andrew’s photoresist
chapter), given intensity,
wavelength, distance of
mask from surface, and
width of mask opening?
•
What if surface of
resist being exposed is
uneven? Can Andrew’s
code handle this?
Another Question about Exposing
Photoresist
• Page 1 of Andrew’s photoresist chapter states
that solubility of exposed resist is about four
orders of magnitude greater (i.e., about
10,000 times greater) than solubility of
unexposed resist. Why on page 5 do we use
S0 = 2 µm/min and S1 = 0.05 µm/min, an
increase of less than two orders of
magnitude?
Question about Developing
Photoresist
•
Page 5 of Andrew’s photoresist chapter states that
example uses S0 = 2 µm/min. How can image on p.
6 show about 1.0 µm removed in a 15-second
develop, which equates to a rate of 4 µm/min?
Performance of Expose Code
• Wondering how far can we reduce the
following parameters in Andrew’s code
without sacrificing accuracy?
– Number of columns in 2D grid (xp) = 1001
– Number of rows in 2D grid (zp) = 500
– Number of time points (tp) = 1000
• See next slide for test using 501 for xp and
500 for tp.
Performance Comparison
10-second exposure, resist thickness  1.5 µm.
xp = 1001
zp = 500
tp = 1000
Time to run = 221 seconds
xp = 501
zp = 500
tp = 500
Time to run = 42 seconds
More Questions about Exposing
Photoresist
•
•
•
•
In Andrew’s code, what is the point of including
a two-wavelength-thick layer of air above the
resist surface? Is it just to leave some blank
space in the final images, or does the air layer
play a role in the computations?
Can Andrew’s model based on Dill parameters
handle negative resist as well as positive?
Do we want to let user choose UV wavelengths
other than 365 nm? If so, where to find Dill
values for other wavelengths?
Do we want to wash out the interference
ripples, as discussed on last page of Andrew’s
photoresist chapter?
Date
Who’s
Date
To-Do Item
Added
Responsible Finished
3/16/12 Write code to provide top-down view of mask.
NR
3/30/12 Add Cl2 as an etchant.
NR
2/11/14
Write code to implement polish, given user parameters of grit size &
3/30/12
NR
time.
Provide algorithm to determine polish rate given material and grit
3/30/12
JM
size.
4/20/12 Incorporate Andrew’s code for photoresist exposure.
NR
4/20/12 Fix photoresist underhang problem in spin-coat code.
NR
Write code to implement stopping powers of layers to determine
5/4/12
NR
whether underlying Si is doped during implantation.
5/27/12 Write code to implement lift-off.
NR
1/29/14
5/29/12 Write code to implement bake of photoresist.
NR
Provide realistic limits on the following user-provided parameters:
5/31/12 pressure and temperature when performing CVD; dose and ion
AS
energy when performing implantation.
6/28/12 Niu suggests iterating etch code in seconds instead of minutes .
NR
2/9/14
Provide look-up table data for 1.) CVD deposition rates based on usersupplied pressure & temperature; 2.) evaporation deposition rates
1/18/13 based on user-supplied current & voltage; 3.) sputter deposition rates
AS
of Au, Ni, Pt, W, Si3N4, Ta2O5, TiO2, and Si based on user-supplied
pressure & power.
1/18/13 Write code to implement annealing after implantation.
NR
1/18/13 Write code to implement doping by diffusion.
NR
Date
Added
To-Do Item
Write code to implement projection lithography as well as contact
lithography.
Decide whether to accept Nick’s suggested edits (sent on 4/14/13
4/14/13
and 5/8/13) to Andrew’s seventeen tutorial chapters.
Surinder suggests automatically filling in dialog-box parameters if
6/19/13
user clicks a point in a “View Rate” graph.
Jamshid suggests providing link in dialog boxes to display the
10/23/13
relevant “View Rate” graph.
Jamshid’s student Rajput suggests making it easier for user to know
10/30/13
which solvents etch which materials.
11/3/13 Fix bug causing photoresist spikes per Jamshid’s student Chico.
11/3/13 Address performance issue per Jamshid’s student Jarrod.
Write code to track and plot time, cost, quality of user operations.
Provide algorithm for tracking time, cost, quality of user operations.
Write code to implement cleaning.
Write code to implement profilometer.
Record video clips (in .flv format) of lab operations.
Write online help text.
Test the trainer and report problems to Nick.
1/17/14 Revise CVD code to distinguish LPCVD and PECVD.
3/1/13
Who’s
Responsible
Date
Finished
NR
AS
NR
NR
1/21/14
NR
1/21/14
NR
NR
NR
AS
NR
NR
AS & JM
NR
ALL
NR
1/6/14
2/2/14