PhoeniX Software PROCESS FLOW MODULES Integrated SOIMUMPs design by jls43972

VIEWS: 0 PAGES: 29

									          PhoeniX Software

    PROCESS FLOW MODULES



Integrated SOIMUMPs design by using

 MaskEngineer, FlowDesigner, and

             MaskSliceLink




         Application Note 022007

   Sesilia Kriswandhi, Application Engineer,
         PhoeniX B.V, The Netherlands
Table of Contents
1. Introduction..........................................................................................................................3
2. Terminology.........................................................................................................................4
3. Process Flow Description......................................................................................................5
    3.1. Silicon-on-Insulator Wafer Fabrication...........................................................................5
    3.2. Shadow-Mask Fabrication............................................................................................10
    3.3. Bonding : Silicon-on-Insulator wafer and Shadow-Mask...............................................11
4. MaskSliceLink : ..................................................................................................................13
    4.1. Introduction for MaskSliceLink....................................................................................13
    4.2. Application for SOIMUMPS...........................................................................................16
5. Design Mask.......................................................................................................................18
    5.1. Layout mask_SHADOWMASK.......................................................................................19
    5.2. Layout mask_MIDHOLE...............................................................................................21
    5.3. layout mask_SOI.........................................................................................................22
6. Conclusion..........................................................................................................................28
7. References.........................................................................................................................29
                                                     Application Note - Integrated SOIMUMPS design


 1. Introduction
        This application note narrates the utilization of PhoeniX Process Modules to optimize
the design of the micro- and nano-devices. The applied study case is the SOIMUMPs1 process
which is offered by MEMSCAP2 , since this is a well documented and publicly available
specification3 on which the real devices are fabricated.
       PhoeniX Process Modules consist of the software to design the mask layout, and to
export the mask to simulate the etch's and the deposition's processes. The access to the
process's database in the cleanroom is part of the modules as well.
       PhoeniX MaskEngineer is a software targeted to design the mask layout. PhoeniX
MaskSliceLink exports the mask's slices from MaskEngineer to simulate the deposition and the
etching processes in FlowDesigner. PhoeniX Cleanroom “Living” Database is a library to
consist the process's information such as process steps and variables.
        Summarizing the interaction among the utilities, it suffices to state that FlowDesigner
is to set up the basic process, and to retrieve a visualization of the cross section. Afterward,
MaskSliceLink exports slices of the mask from MaskEngineer to FlowDesigner for immediate
inspection; if the mask would give the expected cross section profile.
       Finally we will use a SOIMUMP's design published by Brown et al4 to exemplify the
design flow using MaskEngineer, MaskSliceLink, and FlowDesigner.




1 Silicon-on-Insulator Multi User MEMS Processes
2 See also http://www.memsrus.com/nc-mumps.soi.html
3 a MUMPs® process, MEMScAP, Keith Miller, Allen Cowen, Greg Hames, Busbee Hardy,
“SOIMUMPs Design Handbook, Revision 4.0”, 2004, pp 1-14
(http://www.memsrus.com/documents/SOIMUMPs.dr.v4.pdf)
4 G Brown, L Li, D Uttamchandani, “MEMS Based Retroreflective Phase Modulator”, 3rd EMRS
DTC Technical Conference – Edinburg, 2006
(http://www.emrsdtc.com/conferences/2006/downloads/pdf/conference_papers/B030.pdf)

                                                                                             3 / 29
                                                   Application Note - Integrated SOIMUMPS design


 2. Terminology
References to some terminologies of this application note: we use the terms “Topview” and
“Cross Section”. MaskEngineer is to design the Topview. FlowDesigner is to design the cross
section.
The Topview is the mask on top of the wafer. Cross Section is the “depth” resulting from the
etch and the deposition process on the mask onto the wafer.




                                                                                           4 / 29
                                                      Application Note - Integrated SOIMUMPS design


 3. Process Flow Description
First we will show the process of Silicon-on-Insulator (SOI) Micromachining simulated by
FlowDesigner. There are three process flows to be executed: SOI-wafer fabrication, Shadow-
mask fabrication, and the bonding. The Shadow-mask is bonded to the SOI-wafer and it is
used to deposit the pad metal at the designated part of SOI-wafer.

 3.1. Silicon-on-Insulator Wafer Fabrication
The process flow starts with a Silicon-on-Insulator (SOI) wafer.




Then we deposit the wafer with the Phosphosilicate glass (PSG) layer. Annealing at 1050 °C
for 1 hour in Argon to drive the PSG dopant into the top surface of the silicon layer. The PSG
layer is subsequently removed by using the wet chemical etching.




Next, the photoresist is applied to the front side.




                                                                                              5 / 29
                                                  Application Note - Integrated SOIMUMPS design




Then we pattern the photoresist to deposit the pad metal. In FlowDesigner, we define the
mask as an array of the opened- and closed- points.




Deposit a metal stack which consists of 20 nm chrome and 50 nm gold over the photoresist.




Remove the photoresist to leave the metal stack on the SOI wafer.




                                                                                           6 / 29
                                                   Application Note - Integrated SOIMUMPS design




We deposit the second photoresist as preparation to deposit the rest of the pad metals.




Pattern the photoresist.




Via the opening at the photoresist, we etch the Silicon layer by the Deep Reactive Ion Etching
(DRIE) process.




                                                                                           7 / 29
                                                    Application Note - Integrated SOIMUMPS design




Now we deposit the front side with a protection material. The protection material is to protect
the front side from the etchant that we will use to etch the back-side later.




Deposit the photoresist at the back of the wafer.




Pattern the photoresist to etch the certain part of the substrate from the back.




                                                                                            8 / 29
                                                    Application Note - Integrated SOIMUMPS design




Etch the substrate by DRIE from the back.




Further etch the oxide layer from the back.




Remove the protection layer at the front side to etch the oxide from the front side also.




                                                                                            9 / 29
                                                     Application Note - Integrated SOIMUMPS design




The illustration above shows the final structure of the SOI wafer fabrication.
Now we will bond the SOI wafer with the shadow-mask. The shadow-mask fabrication is
described in the next chapter.

 3.2. Shadow-Mask Fabrication
Get a silicon wafer to fabricate the shadow mask.




Deposit photoresist to pattern the front side of with DRIE.




Pattern the back side with DRIE.




                                                                                            10 / 29
                                                  Application Note - Integrated SOIMUMPS design




Remove the photoresist to get the final structure of the shadow-mask.




Now we will bond the shadow-mask with the SOI wafer. We will use the shadow-mask to
deposit the pad-metals on the SOI wafer.

3.3. Bonding : Silicon-on-Insulator wafer and Shadow-Mask
The Silicon-on-Insulator (SOI) Micromachining Process involves the bonding between the SOI
wafer and the shadow-mask wafer. Thus the alignment, the mask's size and dimension
between these wafers are important.
Bonding the SOI-wafer and the ShadowMask.




Deposit the metal stack (20 nm chroom and 50 nm gold) over the bonded structure.




                                                                                         11 / 29
                                                     Application Note - Integrated SOIMUMPS design




From the illustration above, we can see that the alignment of both wafers to each other
defines where the pad metals (the yellow layer) will be deposited.
After the metal deposition, we remove the Shadow Mask.




The script file that gives the pictures in this chapter is fd_001.spt in the directory :
\\PhoeniX BV\ApplicationNote\SOI_MUMPS\script_files_FlowDesigner
We can open and run this file in FlowDesigner.




                                                                                            12 / 29
                                                      Application Note - Integrated SOIMUMPS design


 4. MaskSliceLink :
4.1. Introduction for MaskSliceLink
This introductory chapter is dedicated for the novices, to describe how MaskSliceLink
exports the mask (slices) from MaskEngineer to FlowDesigner.
Since FlowDesigner is a 2D process's visualization, the “mask” we export ought to be a 1-
dimensional array of the opening and the closing points. Hence the terminology “mask's
slice”.
The goal of this chapter is to administer moderate perception regarding this mask's slice's
alignment with the 2D wafer. This is a matter of importance since the SOI Micromachining
Process involves the bonding between the SOI wafer and the shadow-mask wafer.
The procedures are described straightforwardly as following: we design the mask in
MaskEngineer, then we export the mask-slice to FlowDesigner by using the script
command :
 mask::Slicer(<Append> or <Clear>, {zleft, xleft},{zright,xright});
with the attributes of mask::Slicer :
   1. Append to append (combined) the selected mask slices.
       Clear to replace the previous mask slice with the new one.
   2. {zleft, xleft},{zright,xright} are the starting and the ending positions of the
      slice.
This script command ''mask::Slicer()'' ought to be written in the MaskEngineer.
The following settings for mask::Slicer,:


                      Illustration 1: MaskEngineer : use MaskSlicer


in which the variable “xleft” is equals to (-width/2.0) and the variable “xright” is equals
to (width/2.0) is illustrated by the “imaginary purple-dashed” line in the illustration on the
left below :




                                                                                             13 / 29
                                                         Application Note - Integrated SOIMUMPS design




Illustration 2: MaskEngineer : topview layout     Illustration 3: FlowDesigner : cross-section
and mask-slice.                                   patterning by the mask.


Remark :
    Notice the axis/orientation of the “width”, “length”, “height” in MaskEngineer
and FlowDesigner. MaskEngineer designs the Topview (width, length) in X and Z axis.
FlowDesigner visualizes the Cross-section (width, height) in X and Y axis.
In order for FlowDesigner to receive the mask slice from MaskEngineer, we have to use the
script below :
 MaskSet.<layer>;
The script MaskSet.<layer> reads each layers which are intersected by the mask-slicer's
“line” in MaskEngineer. The layer's starting and ending points are a 1-D array of the opened
and closed points, so we can set this information in the variable for mask (see below) :
 var mask[<the amount of the opened-closed points>]=MaskSet.<layer>;
The example is below :




                                                                              I
                       llustration 4: FlowDesigner : MaskSet

To make the FlowDesigner able to communicate with MaskEngineer, we have to open both
software.
Now open the script files below in their consecutive software :
   1. Open the script file fd_002.spt in FlowDesigner.
       The script file can be found in the directory :
       \\PhoeniX BV\ApplicationNote\SOI_MUMPS\script_files_FlowDesigner



                                                                                                 14 / 29
                                                      Application Note - Integrated SOIMUMPS design

   2. Open the script file me_001.spt in MaskEngineer.
       This script file can be found in the directory :
       \\PhoeniX BV\ApplicationNote\SOI_MUMPS\script_files_MaskEngineer .

Remark:
     Should a message “Runtime error: Attribute 'PadMetal' not known” appear in
the InfoWindow of FlowDesigner, then you can remove this message by running the file
“me_001.spt” in MaskEngineer (press the “start” button). This error refers to the layer's
attributes which are defined in MaskEngineer.

Please note that unlike the previous example fd_001.spt, the FlowDesigner's example
fd_002.spt takes the mask's information directly from MaskEngineer.
Now if we to press the “start” button in MaskEngineer, then MaskSliceLink will export the
Mask-slice's set(s) to FlowDesigner.
Consequently, FlowDesigner will use the information to run the process flow automatically,
so we will get the result like below :




Illustration 5: FlowDesigner : get the mask sets from MaskEngineer, and print them in the Info Window
(the window on the right)


Remark:
The opening and the closing points in MaskEngineer are defined by parameters xleft, x1a,
etc. In FlowDesigner, they are located as follow:




                                                                                             15 / 29
                                                        Application Note - Integrated SOIMUMPS design




More information about MaskSliceLink is available in the MaskSliceLink's manual.

4.2. Application for SOIMUMPS
In the previous chapter, we were using a very simple mask layout (me_001.spt) which
consists of a series of rectangles only. Now we are using a real mask for SOIMUMPS.
Remember that we have to open both MaskEngineer and FlowDesigner when we want to
export the mask-slice(s).
Open the MaskEngineer's file : me_002.spt ; and open the FlowDesigner's file :
fd_002.spt




Illustration 6: MaskEngineer : file me_002.spt .The topview (width X, length Z). The mask-slice is
indicated by the “imaginary” dash-black dotted-line.

Illustration below shows the mask layer's name, and its respective colour which were set in
MaskEngineer :



                                                                                                 16 / 29
                                                           Application Note - Integrated SOIMUMPS design




Press the “start” button at MaskEngineer to export the mask slice to FlowDesigner and
start the process flows.




Illustration 7: Cross-section (width X, height Y) from the mask's slice which is shown in the illustration
above. Metal Deposition before the mask lift-off.
To make the mask we use in this chapter, please refer to the next chapter ''Design Mask''.




                                                                                                      17 / 29
                                                           Application Note - Integrated SOIMUMPS design


 5. Design Mask
First are several terminologies that are regularly appointed to design mask in MaskEngineer,
see below:

-1- User-Defined Element : Layout
      In this application note, we use the term “layout” to refer to the user-defined
elements. Whilst the term “element” itself refers to the PhoeniX's default elements such as
rectangle, S-bends, and the whole lot in the PhoeniX's Element's Library.
       A layout can be a group of several elements. One reason to make a layout is to
place a group of connected elements easily and consistently in one step.

-2- Ports
      Ports are used to connect elements and layouts to each other. The illustration below
shows the essential ports of the PhoeniX's elements, their location and direction, provided by
the default:

Remark:
     -i- Port has a direction, see the arrows in the illustration below. Change its direction,
will also change the element's orientation.
     -ii- The initials “l”, “c”, and “r” in the port's names refer to the “left”, “centre”, and
“right”. Hence, “lin” is the abbreviation of “left-input” , “lcen” is “left-centre” , “lout” is
“left-output”.




Illustration 8: PhoeniX's Ports and their respective direction (by default).


-3-    User-Defined Ports
When we make a user-defined element (layout), we also need to make its user-defined
ports. Otherwise our layout cannot connect to the other elements or layouts.
User-defined ports are made from the PhoeniX's ports by using the command “this”.
For example, if we want to make a user-defined port named “P0” from the PhoeniX's port


                                                                                                  18 / 29
                                                      Application Note - Integrated SOIMUMPS design

“ccen”, then the syntax below should suffice :
    ccen->this@P0

NOTE :
      The name for the user-defined port should NOT exceed 4 characters.

 5.1. Layout mask_SHADOWMASK
The Shadow-Mask is bonded to the Silicon-on-Insulator wafer to deposit the pad-metal.
It is a simple mask, so we use it to make our first user-defined element (layout).




Illustration 9: The shadow-mask. We select to “fill” the material “blanketmetal_top” to see where it
is used.

Illustration below shows :
–    Elements' name : mtop_l, mbot_l, mtop_c, mtop_r, mbot_r
–    Layout's parameters : w_botLeft, d_bot, w_botRight, and the rest.
–    Layout's port : RIN (refer to the red arrow) for the user-defined element (layout)
     mask_SHADOWMETAL




Illustration 10: User-defined element : layout mask_SHADOWMETAL



                                                                                             19 / 29
                                                           Application Note - Integrated SOIMUMPS design

The layout mask_SHADOWMETAL is constructed by a group of the PhoeniX's Element
ml::Rectangle.
The illustration below shows the script's part to make this layout.
You can see where to define the element's name, the layout's parameters, and the layout's
port.
The layout's ports and parameters will become part of the PhoeniX's Graphical User Interface
(GUI). Click on the Element button, and select the User lib. There we will find our user-defined
elements.




Illustration 11: The layout, its ports (if defined) and its parameters (if defined) will become part of the
PhoeniX GUI.

The complete script can be seen in the file me_002.spt , which can be opened in
MaskEngineer.



                                                                                                       20 / 29
                                                      Application Note - Integrated SOIMUMPS design


 5.2. Layout mask_MIDHOLE
The second layout to make is the mask for the openings in the middle. We use the PhoeniX's
rectangles to construct this layout, see illustration below :




Illustration 12: User-defined element : layout mask_MIDHOLE


The script to define this layout, and the resulted user library can be seen below :




                                                                                             21 / 29
                                                           Application Note - Integrated SOIMUMPS design




Illustration 13: The layout, its ports (if defined) and its parameters (if defined) will become part of the
PhoeniX GUI.

The complete script can be seen in the file me_002.spt , which can be opened in
MaskEngineer.
The tricky part is to set the parameters, because the holes should be properly aligned to the
SHADOWMASK and the SOI mask.

5.3. layout mask_SOI
The final user-defined element is layout mask_SOI. The illustration below shows the layout's
parameters :




                                                                                                       22 / 29
                                                          Application Note - Integrated SOIMUMPS design




Illustration 14: User-defined element : layout mask_SOI

The illustration below show the name of the (LOCAL) elements. We use the name as
reference to connect elements to each other.
The illustration below also shows the layout's ports (see the red arrows). The layout's ports
connect the layout with the other layouts.




                                                                                                 23 / 29
                                                        Application Note - Integrated SOIMUMPS design




Illustration 15: BLACK letters (bs1a, pm1a, and the rest) are the names of the (LOCAL) elements that build
the layout mask_SOI. RED letters (LIN, CIN, RIN, COUT) are the layout's ports (the GLOBAL ports) that
connect the layout with the outside world.

The illustration below also shows how to set the dimension and the position of the grids. The
grids are made by layer soihole_mask (black layer).




                                                                                                  24 / 29
                                                          Application Note - Integrated SOIMUMPS design




Illustration 16: Set the location for ''nc'' amount of grids (wh3 , lh3). The blue ports are the local ports.
The local ports only work inside the layout.

Variable dp2 calculates the difference between port bs1c@cin with bs1g@cout :
 var dp2 = ml::diffPort(bs1c@cin , bs1g@cout);
We take the absolute value of the variable ''dp2''in X-direction :
 abs(dp2.x)
Then we use this value to set the length “lh3” of each grid :
 double lh3 = abs(dp2.x)-2*dl;


Here we use 10 grids (the amount of grids is set in the variable “nc”). We use for-loop to
draw the grids :
 for ( int ts=1; ts<(nc+1); ts++) { <draw the grids> }
To draw the grids :
-1- Connect the left-input ''lin'' port of grid with the left-output ''lout'' port of element
''bs1g'' :
 ml::Rectangle( lin->bs1g@lout : wfix(wh3), lh3);
-2- Introduce the fix horizontal offset ''dl'', and the varying vertical offset ''dw'' to the grid :
 ml::Rectangle( lin->bs1g@lout + [dl,-(ts*dw+(ts-1)*wh3)] : wfix(wh3), lh3);
The relevant script is illustrated below, and can be seen in the file me_006.spt which can be
opened in MaskEngineer :


                                                                                                     25 / 29
                                                                     Application Note - Integrated SOIMUMPS design




Illustration 17: The script to define the layout mask_SOI, its parameters, and its ports (RIN, COUT, LIN, CIN).

          The resulted user library can be seen below :




                                                                                                                  26 / 29
                                                                    Application Note - Integrated SOIMUMPS design




Illustration 18: The layout, its ports and parameters (if were defined) will become part of the PhoeniX GUI.




                                                                                                               27 / 29
                                                   Application Note - Integrated SOIMUMPS design


 6. Conclusion
       This application note reveals the benefit of the PhoeniX Process Modules to optimize
the process and the design of the SOIMUMPs.
       PhoeniX MaskEngineer settings up standard element's library for SOIMUMPs. The
important parameters of the mask layout can be set as the library's parameters. The value of
the mask's dimension can be utilized as the default value for the library's parameters. This
approach allows everybody to be able to make a standard mask layout that will result in a
correct product.
       PhoeniX FlowDesigner geometrically visualizes the process. MaskSliceLink exports the
mask from MaskEngineer to FlowDesigner for the etch and deposition processes.
MaskSliceLink allows the users to directly inspect the mask's dimensions, the etch and the
deposition profiles.




                                                                                          28 / 29
                                                Application Note - Integrated SOIMUMPS design


 7. References
1. a MUMPs® process, MEMScAP, Keith Miller, Allen Cowen, Greg Hames, Busbee Hardy,
“SOIMUMPs Design Handbook, Revision 4.0”, 2004, pp 1-14
2. G Brown, L Li, D Uttamchandani, “MEMS Based Retroreflective Phase Modulator”, 3rd EMRS
DTC Technical Conference – Edinburg, 2006




                                                                                       29 / 29

								
To top