Specific Process Knowledge/Lithography/EBeamLithography/BEAMER: Difference between revisions

From LabAdviser
Thope (talk | contribs)
Thope (talk | contribs)
Line 115: Line 115:
|}
|}


===Extract node===
===Extract===
The extract node allows one to extract only parts of a design for further processing and export. This is very powerful if different parts of a pattern should be treated differently or if only part of a pattern should be exposed, for instance for dose test of the most critical features of a design. The available options are:
The extract node allows one to extract only parts of a design for further processing and export. This is very powerful if different parts of a pattern should be treated differently or if only part of a pattern should be exposed, for instance for dose test of the most critical features of a design. The available options are:


Line 133: Line 133:
Beamer extract node.
Beamer extract node.
|}
|}


===Fracture node===
===Fracture node===

Revision as of 11:30, 17 August 2023

Feedback to this page: click here

Beamer guide

All users of the JEOL 9500 system must have their pattern converted to the JEOL52 V3.0 (V30) format, this conversion is done using Beamer. Beamer can however do many other operations than this simple format conversion. Proper pattern processen in Beamer can significantly enhance the quality of the lithographical result from an EBL process. As a minimum users should become familar with PEC. In this section we will describe some of the most frequently used nodes and also provide a few node setups for specialized tasks.

Beamer nodes

A quick overview of the Beamer nodes and their purpose is provided in the table below. Specific parameters of each node can be looked up in the help section of Beamer. A few of the most important nodes are described below.

Important Beamer modules and methods
Module/method Short description
Import Layout import
Export Export to JEOL V30 and Raith GDS
Edit Opens the pattern in LayoutEditor
Heal Used to remove pattern overlaps
Transform Used to rotate, scale or shift patterns
Bias Used to grow or shrink patterns
AND, OR, MINUS, XOR, P-XOR, NOT Applies a boolean operation to two inputs
Extract Used to extract layers or regions of a design
Replace Used to replace a cell in the design with a cell from another design
Merge Merges multiple patterns into one
Grid Can be used to increase layout grid and reduce geometry vertice count
Mapping Used to rename layers
Filter Used to select geometry based on rules, for instance by dimensions
Fracture Gives the user much more control over pattern fracturing than the default export fracturing
ChipPlace Graphical interface to set up arrays of patterns and assign dose to each element, excellent for dose testing
Visual-Job Graphical user interface that can be used to entirely setup a job and have Beamer write the SDF and JDF files
PEC Used to apply Proximity Effect Correction to a pattern by dose modulation
Shape-PEC Applies PEC by both dose modulation and shape modulation, i.e. by moving pattern edges
3D-PEC Can be used for PEC of thick resist layers for gray scale lithography or PEC on multi-resist layer structures
Corner-PEC PEC with emphasis on creating sharp corners
FDA Feature Dose Assignment, allows assignment of doses to pattern elements, regions or entire layers
Rule-OPC Used for rule based process control, for instance offset edges based on pattern dimensions
2D Simulation Used to simulate energy distribution (dose) in the resist and resulting dimensions
Metrology Can be used to measure pattern dimensions, for instance to generate table of dimensions after Shape-PEC

Import

The import node is used to import geometry into Beamer. While we recommend GDS for import Beamer supports the following formats: GDSII, DXF, OASIS, CIF, TXL, LEDB, PNG, STL, JEOL51, JEOL52, Raith (VB6, FRE, GPF, IWFL), NuFlare, MEBES, Micronic, NPI, HIMT and ADVANTEST. The options available are:

Import Zero Width Paths: Allows polygonal paths to be imported with a defined width, i.e. convert a 1D wire to a 2D structure.

Keep Path Elements: If checked, polygonal paths will be perserved in addition to the 2D structure.

Import Boxes: Some design tools use "area boxes", a special type of geometry that is not considered a polygon. These can be converted to polygons with this option.

Keep Order of Elements: Preserves the order in which elements are drawn/listed in the import file.

Flatten Layout: Flattens the layout to one layer and one cell.

Load Text Elements: Imports text objects. Notice that text defined in CleWin is not saved as text objects but as polygons when saving the file as GDS and hence this option is not necesarry if working with CleWin.

Convert Elements to Polygons: Allows read text elements to be converted to polygons of a chosen size.

Curve Detection: Detects curves and allows refinement of curve accuracy.

r400px

Beamer import node.

Export

The export node will export the pattern data to the machine specific format. For exposure on JEOL 9500 export to V30. For exposure on Raith E-line export to Raith EBL File (GDS). Export to V30 has multiple options distributed on the three main panes, General, Advanced and Multipass, while export to Raith GDS has almost no export options.

The main options on the General pane is

Machine type: Must be set to JBX-9500FS (100kV), notice it is not the default selection and must be set by the user.

Pattern units: Unit system of the pattern, should be set to 1 nm.

Shot pitch: Should be set to 4 units, hence 1 nm. Will be overruled by the SHOT A command in the SDF file.

Size: Size of the main writing field, maximum size is 1000 x 1000 µm.

Fracturing mode: This can be used to alter the way Beamer fractures the geometry into trapezoidal shapes. The options in the export module are fairly limited, much more control can be gained by using a Fracture node.

Feature Sorting in Field: Can be used to alter the writing order of pattern elements in each writing field. The actual result of these choices can be somewhat hard to predict. After export the result can be seen in the Viewer under Tool and either Show Traversal Path or Show Writing Order.


| |

JEOL V30 version of the Beamer export node.

Extract

The extract node allows one to extract only parts of a design for further processing and export. This is very powerful if different parts of a pattern should be treated differently or if only part of a pattern should be exposed, for instance for dose test of the most critical features of a design. The available options are:

Layer(s): Extract single or multiple layers from the design file.

Extraction type: Allows extraction of single cells of a design or a drawn region. In the example shown below a region has been drawn in the viewer by simply Shift-left clicking to select the region. The corners of a region can also be entered nummerically. Multiple regions can be defined for extraction. By clicking the Exclude Region(s)/Instance the selected parts can be omitted from the rest of the pattern instead.

Dose Classification: The dose modulation table (if any is present from PEC) can be truncated with the Shrink option to reflect the extracted region.

On the Extent pane one has the option to control the bounding box of the extracted geometry.

Beamer extract node.

Fracture node

ChipPlace

A pattern can easily be set up for a dose test using the ChipPlace module. In ChipPlace one can set up a pattern to be instanced a number of time and easily assign each instance a dose. The dose can be manually set or be linearly interpolated between a start and end value for the instanced array. The output of ChipPlace is a single pattern file with all array elements assigned to individual doses (shot ranks). This also works with patterns that already have PEC applied. In that case ChipPlace will create a combined modulation of the PEC modulation and the dose test modulation. In the example below we demonstrate how to set up dose test without PEC. If PEC is needed a PEC node can simply be added before the ChipPlace node. In the example we will use the Array_dots pattern found in the examples pane. It is a simple array of dots in a 100 x 100 µm2 box. The procedure is

  • Import a design
  • Add the ChipPlace node
  • In the Substrate tab define the substrate size. This is purely for visualization of how the pattern fits on the substrate

This example uses the Array_dots pattern supplied with Beamer. Image: Thomas Pedersen.

Choose a substrate size to visualize placement within the substrate in ChipPlace. Image: Thomas Pedersen.

  • Go to the Array and Data tab
  • Click Add Array
  • In Data to place choose Chip. It will then take the pattern connected to the ChipPlace module
  • Fill in array data in Repitition and Pitch to create as many dose test instance as you want. In this case we create a 10 x 2 array
  • Choose Center in Position Mode to have everything centered in the final output pattern (V30 file)
  • Click Assign Dose to open up the dose assignment page
  • Choose Dose Series and enter a start and end value. This is relative dose, i.e. a multiplier on the base dose defined by RESIST in the SDF file
  • Choose Raster X in Deploy Mode to increase dose from left to right for all rows
  • Click OK in both open windows to see the result

This will produce a 10 x 2 array of the pattern with a relative dose from 1 to 2. Remember this dose factor is acting as a multiplier onto the base dose defined by RESIST in the SDF file. Thus if a base dose of 200 is defined by RESIST this setup will start at 200 µC/cm2 and end at 400 µC/cm2.

The array and dose assignment can be set up with just a few inputs. Image: Thomas Pedersen.

Indicated for each element in the viewport is relative dose X and array number (x,y). Image: Thomas Pedersen.

To make analysis of the post exposure result easier let us add a dose label to each array element. This dose label will be exposed along with the pattern and thus when inspecting the result in SEM the (relative) dose will be visible next to the pattern. It is very easy to add:

  • Go to the Texts pane in the bottom window
  • Enter $DOSE_REL(3)$ to have the relative dose printed with 3 decimals accuracy
  • Choose array 1 in Array ID to assign the text label to that array
  • Assign text labels to all array elements with the (*,*,2) command. The "2" sets the relative dose of the labels to 2
  • Assign an y-axis offset of for instance -100 µm to avoid having the label printed on top of the pattern itself
  • Assign a decent size in the Size window, 20 µm will work for most cases
  • Click OK in the bottom of the window to return to the Beamer view
  • Run the ChipPlace node to see the result
  • Add an Export node and export the result as normal

Final result of the ChipPlace node with relative doses from 1 to 2, ready for export to V30. Image: Thomas Pedersen.

Example of the added dose labels. Image: Thomas Pedersen.

Beamer

The following is a short walkthrough of the most frequently used features of Beamer. For a more in depth look at Beamer please refer to GenISys own learning material found here.

The BEAMER software is used to convert files from GDSII format to v30-format. The BEAMER software is manufactured by GenISys (www.genisys-gmbh.de) and the software is installed on the ebprep computer.

The main functions of BEAMER are:

 Module      Function
 Import      Imports a GDS, CIF or v30-file
 Export      Exports to GDS, CIF or v30-format
 Grid 	     Modifies the base unit of the imported file
 Fracture    Optimizes the fracturing of the layout
 Heal 	     Removes overlaps in the layout and joins abutting polygons
 Bias 	     Adds or subtracts geometrical bias to the pattern
 Merge 	     Merges two layouts
 Minus 	     Subtracts two layouts
 PEC 	     Proximity Error Correction
 Split 	     Splits the output in two

To use the modules, they are dragged to the process flow area.

The inputs and outputs of each module are illustrated by white tags. Two modules are coupled to each other by positioning the input of e.g. the Export module on top of the output of the Import module. The input/output tags turns black when they are connected.

By clicking on active modules, the layout of the file becomes visible in the layout view area.



Node setups and usage examples

Proximity Effect Correction

Apart from conversion to V30 the prime use of Beamer is to do Proximity Effect Correction (PEC). This is done through the PEC node. The PEC node has a quite a few options and different ways to define a Point Spread Function (PSF). The PSF is a radially symmetric function around the beam spot that defines dose received by the resist both due to the incident beam but also from scattered electrons. The PSF used in Beamer can be defined in two ways; either based on gaussian functions where the user supplies the parameters used to define the functions, or the PSF can be based on Monte Carlo simulations of electron scattering. In any case the PSF is mainly dependent on beam energy (acceleration voltage) and substrate material. The JEOL 9500 system is always used at 100 kV, the Raith eLine system can however be used at any acceleration voltage between 1 and 30 kV. The PSF changes drastically with acceleration voltage and it is very important to use a PSF generated at the correct acceleration voltage. Beamer comes with its own Monte Carlo simulator called Tracer. In Tracer one can set up a substrate material stack and simulate electron scattering at the desired acceleration voltage. The PSF can be output as a file and loaded into Beamer for PEC.

ChipPlace - easy dose test setup

A pattern can easily be set up for a dose test using the ChipPlace module. In ChipPlace one can set up a pattern to be instanced a number of time and easily assign each instance a dose. The dose can be manually set or be linearly interpolated between a start and end value for the instanced array. The output of ChipPlace is a single pattern file with all array elements assigned to individual doses (shot ranks). This also works with patterns that already have PEC applied. In that case ChipPlace will create a combined modulation of the PEC modulation and the dose test modulation. In the example below we demonstrate how to set up dose test without PEC. If PEC is needed a PEC node can simply be added before the ChipPlace node. In the example we will use the Array_dots pattern found in the examples pane. It is a simple array of dots in a 100 x 100 µm2 box. The procedure is

  • Import a design
  • Add the ChipPlace node
  • In the Substrate tab define the substrate size. This is purely for visualization of how the pattern fits on the substrate

This example uses the Array_dots pattern supplied with Beamer. Image: Thomas Pedersen.

Choose a substrate size to visualize placement within the substrate in ChipPlace. Image: Thomas Pedersen.

  • Go to the Array and Data tab
  • Click Add Array
  • In Data to place choose Chip. It will then take the pattern connected to the ChipPlace module
  • Fill in array data in Repitition and Pitch to create as many dose test instance as you want. In this case we create a 10 x 2 array
  • Choose Center in Position Mode to have everything centered in the final output pattern (V30 file)
  • Click Assign Dose to open up the dose assignment page
  • Choose Dose Series and enter a start and end value. This is relative dose, i.e. a multiplier on the base dose defined by RESIST in the SDF file
  • Choose Raster X in Deploy Mode to increase dose from left to right for all rows
  • Click OK in both open windows to see the result

This will produce a 10 x 2 array of the pattern with a relative dose from 1 to 2. Remember this dose factor is acting as a multiplier onto the base dose defined by RESIST in the SDF file. Thus if a base dose of 200 is defined by RESIST this setup will start at 200 µC/cm2 and end at 400 µC/cm2.

The array and dose assignment can be set up with just a few inputs. Image: Thomas Pedersen.

Indicated for each element in the viewport is relative dose X and array number (x,y). Image: Thomas Pedersen.

To make analysis of the post exposure result easier let us add a dose label to each array element. This dose label will be exposed along with the pattern and thus when inspecting the result in SEM the (relative) dose will be visible next to the pattern. It is very easy to add:

  • Go to the Texts pane in the bottom window
  • Enter $DOSE_REL(3)$ to have the relative dose printed with 3 decimals accuracy
  • Choose array 1 in Array ID to assign the text label to that array
  • Assign text labels to all array elements with the (*,*,2) command. The "2" sets the relative dose of the labels to 2
  • Assign an y-axis offset of for instance -100 µm to avoid having the label printed on top of the pattern itself
  • Assign a decent size in the Size window, 20 µm will work for most cases
  • Click OK in the bottom of the window to return to the Beamer view
  • Run the ChipPlace node to see the result
  • Add an Export node and export the result as normal

Final result of the ChipPlace node with relative doses from 1 to 2, ready for export to V30. Image: Thomas Pedersen.

Example of the added dose labels. Image: Thomas Pedersen.

Beamer

The following is a short walkthrough of the most frequently used features of Beamer. For a more in depth look at Beamer please refer to GenISys own learning material found here.

The BEAMER software is used to convert files from GDSII format to v30-format. The BEAMER software is manufactured by GenISys (www.genisys-gmbh.de) and the software is installed on the ebprep computer.

The main functions of BEAMER are:

 Module      Function
 Import      Imports a GDS, CIF or v30-file
 Export      Exports to GDS, CIF or v30-format
 Grid 	     Modifies the base unit of the imported file
 Fracture    Optimizes the fracturing of the layout
 Heal 	     Removes overlaps in the layout and joins abutting polygons
 Bias 	     Adds or subtracts geometrical bias to the pattern
 Merge 	     Merges two layouts
 Minus 	     Subtracts two layouts
 PEC 	     Proximity Error Correction
 Split 	     Splits the output in two

To use the modules, they are dragged to the process flow area.

The inputs and outputs of each module are illustrated by white tags. Two modules are coupled to each other by positioning the input of e.g. the Export module on top of the output of the Import module. The input/output tags turns black when they are connected.

By clicking on active modules, the layout of the file becomes visible in the layout view area.



Simple conversion from GDSII to v30

Import a GDSII-file by dragging the 'Import' module to the process flow area. Select the file. In the 'Import Layout' window, type the layer number to import or type * if you wish to import all layers. Export the GDSII file to v30 by dragging an 'Export' module on top of the 'Import' icon. An 'Export JEOL' window appears. In the tab 'General' of this export window, choose JBX9500FS (100kV). In the tab 'Advanced', type the correct field size (maximum is 1000 mm in both X and Y). The fields will be distributed automatically by choosing 'Fixed'. In case you have small patterns, is it recommended to tick 'Center to Field'.



If your pattern is larger than one field size, it will be stitched by several fields. In the tab 'Multipass', you can choose to smooth the stitching errors by overlapping the fields to be stitched or by multipass method.

There are 3 types of overlap methods; for all 3 methods you define an overlap width:

a) standard: the overlap will be exposed with half dose both of field 1 and field2;
b) interleaving: the overlap will be finger-jointed by field 1 and field 2;
c) interleaving with extra field: the overlap will be finger-jointed by field 1, field 2 and an extra field 3, as illustrated to the right.

The multipass method smooths the field stitching errors by writing the pattern with half dose in different areas of the main deflector; by this method, pattern located in the corner of a writing field will be written partly by the corner of a writing field and partly by the central part of the writing field.



Dose variations

Dose variation defined by datatype or layertype

When designing your pattern, you can define a dose variation either by defining different areas in different GDS datatype or in different layertype.

In both cases you import the GDS-file as usual into BEAMER, importing all layers. The layers should be visible when you view the GDSfile:

If you defined different doses by different GDS layers, you should tick 'Datatype to Class' under 'Advanced' when you convert to v30.

If you defined different doses by different layer type, you should tick 'Layer to Class' under 'Advanced' when you convert to v30.

View the v30-file and make sure all variations have been converted correctly.

In the jdf-file, manually create a shot modulation (similar to the jdi-file created by PEC) that fits to the number of layers in your v30-file. This shot modulation should be defined in the end of the jdf-file (see the sdf- and jdf-file manual). In the example below, the three layers (green, blue and red in the BEAMER viewer to the right) are defined to have shot modulation from -20 % to + 20 % of the base-dose:



JOB/W  'TEST',4         ; 4 inch wafer
PATH DTU5M
  ARRAY    (0,1,0)/(10000,3,10000)
    ASSIGN  P(1)-> ((*,*),SHOT1)       
  AEND
PEND


LAYER    1
P(1)  'fredrikpnov1507prox.v30'
SPPRM 4.0,,,,1.0,1
STDCUR 0.22   ;nA

SHOT1:  MODULAT   (( 0, -20) , ( 1, 0) , ( 2, 20))

END

Dose variation defined by an array in jdf file

Another even faster way to define dose modulation (if you have less than 10-15 different doses) is to repeat the pattern (v30-file) in an array with different doses in the jdf file, just type the dose modulation you wish to apply to every chip in the array:


JOB/W  'TEST',4         ; 4 inch wafer
PATH DTU5M
  ARRAY    (-10000,2,10000)/(10000,1,10000)
    ASSIGN  P(1)-> ((1,1),SHOT1)
    ASSIGN  P(1)-> ((1,2),SHOT2)
    ASSIGN  P(1)-> ((2,1),SHOT3)
    ASSIGN  P(1)-> ((2,2),SHOT4)       
  AEND
PEND


LAYER    1
P(1)  'tjulahej.v30'
SPPRM 4.0,,,,1.0,1
STDCUR 0.22   ;nA

SHOT1:  MODULAT   (( 0, -20))
SHOT2:  MODULAT   (( 0, -10))
SHOT3:  MODULAT   (( 0, 0))
SHOT4:  MODULAT   (( 0, 10))

END

Proximity Error Correction (PEC)

BEAMER has a built-in proximity error correction simulation program; import the GDS-file as usual and connect the 'PEC' module to its output. In the 'Proximity Error Correction' window you can either type Beta and Eta manually or import a point spread function (PSF).


Add a PEC-module on top of the import module. A Proximity Error Correction parameter window opens. Here, you can either type in values of alpha, beta and eta or load a point spread function. After converting to v30-format, the dose variation is illustrated in your pattern BEAMER has at this point created a jdi-file in the same folder as the v30-file. This jdi-file is the shot modulation that should be inserted in the jdf-file. The jdi-file opens with SuperEdi.


Bulk and sleeve

If you have structures with both bulky and fine parts that you wish to pattern either with different doses or different currents, you can use BEAMER to divide the structures in different layers or different v30-files.

An illustration of how the 'bulk & sleeves' technique this is done by using the Bias and Minus modules; the Bias function subtracts in this case 1 micron from the pattern, defining layer 0 (red layer). Layer 1 (green) is the original pattern minus layer 0. In the flow to the left, the two layers are exported separately in two different v30-files. In the flow to the right, the two layers are combined in one single v30-file