Specific Process Knowledge/Lithography/EBeamLithography/BEAMER: Difference between revisions
Appearance
No edit summary |
|||
| (68 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
'''Feedback to this page''': '''[mailto: | '''Feedback to this page''': '''[mailto:labadviser@nanolab.dtu.dk?Subject=Feed%20back%20from%20page%20http://labadviser.nanolab.dtu.dk/index.php/Specific_Process_Knowledge/Lithography/EBeamLithography/BEAMER click here]''' | ||
Content and illustration by Thomas Pedersen, DTU Nanolab unless otherwise noted. | |||
=Beamer guide= | =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. | 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 (via the export node). 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. | ||
For a more in depth look at Beamer please refer to GenISys own [https://www.genisys-gmbh.com/in-action.html learning material found here.] | |||
Currently the content below is a mix of Beamer 6 and 7, we are working towards changing it all to Beamer 7. The difference is mostly visual though. | |||
==Beamer nodes== | ==Beamer nodes== | ||
| Line 11: | Line 20: | ||
|+ Important Beamer modules and methods | |+ Important Beamer modules and methods | ||
|- | |- | ||
! | ! Node/module !! Short description | ||
|- | |- | ||
| Import || Layout import | | Import || Layout import | ||
| Line 62: | Line 71: | ||
|} | |} | ||
===Import | ===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 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. Import options differ somewhat between formats, for GDS import the options available are: | ||
''Layer Set:'' Allows import of only a selected range of layers. | |||
''Import Zero Width Paths:'' Allows polygonal paths to be imported with a defined width, i.e. convert a 1D wire to a 2D structure. | ''Import Zero Width Paths:'' Allows polygonal paths to be imported with a defined width, i.e. convert a 1D wire to a 2D structure. | ||
| Line 70: | Line 81: | ||
''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. | ''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. | ||
''Ignore text, Load Text, Text as Polygon:'' Either ignores text objects, imports them as text objects or converts them to polygons. 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 the design originates from CleWin. | |||
''Generic curve:'' Allows the detection of curved structures such as arcs or circles. Opens the "Approximation accuracy" field where the user can input the highest allowable deviation from the drawn polygonal structure. If curved elements are found Beamer will determine the right amount of vertices to fit the curved structure. | |||
''Keep Order of Elements:'' Preserves the order in which elements are drawn/listed in the import file. | ''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. | ''Flatten Layout:'' Flattens the layout to one layer and one cell. | ||
{| style="border: none; border-spacing: 0; margin: 1em auto; text-align: center;" | {| style="border: none; border-spacing: 0; margin: 1em auto; text-align: center;" | ||
|- | |- | ||
| [[image: | | [[image:BEAMER7_Import.png|400px]] | ||
|- | |- | ||
| colspan="1" style="text-align:center;| | | colspan="1" style="text-align:center;| | ||
| Line 89: | Line 98: | ||
|} | |} | ||
===Export | ===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 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. | ||
| Line 102: | Line 111: | ||
''Size:'' Size of the main writing field, maximum size is 1000 x 1000 µm. | ''Size:'' Size of the main writing field, maximum size is 1000 x 1000 µm. | ||
'' | ''Fracture 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. See the ''Fracture'' node for more details. | ||
''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''. | ''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''. | ||
'''Important notice:''' If using the ''Fracture'' node to define the fracturing it is important in the ''Export'' node to explicitly choose not to fracture the layout during export. To ensure this select ''Cell To Field'' in the ''Field Ordering'' menu and ''NoCompaction'' in the ''Feature Sorting in Field'' of the export node. | |||
{| style="border: none; border-spacing: 0; margin: 1em auto; text-align: center;" | {| style="border: none; border-spacing: 0; margin: 1em auto; text-align: center;" | ||
|- | |- | ||
| [[image: | | [[image:BEAMER7_Export1.png|400px]] | [[image:BEAMER7_Export2.png|400px]] | [[image:BEAMER7_Export3.png|400px]] | ||
|- | |- | ||
| colspan="3" style="text-align:center;| | | colspan="3" style="text-align:center;| | ||
| Line 115: | Line 127: | ||
|} | |} | ||
===Extract | ===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 121: | Line 133: | ||
''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. | ''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. | ||
''Region Layer:'' A layer of the design can be used to define regions for extraction. | |||
''Dose Classification:'' The dose modulation table (if any is present from PEC) can be truncated with the ''Shrink'' option to reflect the extracted region. | ''Dose Classification:'' The dose modulation table (if any is present from PEC) can be truncated with the ''Shrink'' option to reflect the extracted region. | ||
| Line 128: | Line 142: | ||
{| style="border: none; border-spacing: 0; margin: 1em auto; text-align: center;" | {| style="border: none; border-spacing: 0; margin: 1em auto; text-align: center;" | ||
|- | |- | ||
| [[image: | | [[image:BEAMER7_Extract.png|800px]] | ||
|- | |- | ||
| colspan="1" style="text-align:center;| | | colspan="1" style="text-align:center;| | ||
| Line 134: | Line 148: | ||
|} | |} | ||
===Fracture=== | |||
The ''Fracture'' node has changed considerably between Beamer 6 and Beamer 7. In Beamer 7 all features related to field placement has been moved into a new ''Field'' node. To gain the same functionality as in Beamer 6 simply put a ''Field'' node after the ''Fracture'' node in Beamer 7. | |||
Before pattern writing the shapes/polygons of a design must be fractured into trapezoids filled with beam/shot positions. Careful setup of how a design is fractured and shots are placed can greatly enhance the end result both in terms of critical dimension accuracy, line edge roughness and pattern stitching between writing fields. | |||
{| style="border: none; border-spacing: 0; margin: 1em auto; text-align: center;" | {| style="border: none; border-spacing: 0; margin: 1em auto; text-align: center;" | ||
|- | |- | ||
| [[image: | | [[image:BEAMER7_Fracture.png|400px]] | ||
|- | |- | ||
| colspan=" | | colspan="3" style="text-align:center;| | ||
The ''Fracture'' node in Beamer. | |||
|} | |} | ||
''Maintain grid:'' Check this to fracture at the database grid size, in most cases 1 nm. If unchecked the fracturing resolution can be changed in the ''Resolution'' field. The fracture resolutions should be set to the writing grid resolution, in most cases 1 nm. | |||
''Beam Step Size Correction:'' If checked, the program will attempt to preserve original shape outlines when beam shots are placed. | |||
''Fracturing Type:'' | |||
*''Hierarchical:'' This mode will preserve the hierarchical layout structure. | |||
*''Flat:'' This mode will remove the hierarchy in the pattern while preserving the layer information of the shapes. | |||
''Fracturing mode'' determines the method used for fracturing. | |||
*''Conventional:'' The conventional algorithm performs mainly horizontal fractures at polygon vertices that maintain the original design intent as good as possible. This leads to many slices of trapezoids to best represent the original layout. | |||
*''Large Rectangle Fine Trapezoid:'' The LRFT algorithm attempts to minimize the number of shapes using very large rectangles for large areas and fine trapezoids for smaller features. In other words, this mode fractures the polygons with as many large rectangles as possible and completes the filling with small trapezoids. | |||
*''Curved:'' This algorithm should typically be used to fracture circles and rings. This mode allows BEAMER to shift the vertices along curves to get fractures consistent with the specified resolution and beam step size. In other words, this mode will try to detect curves in the given polygons and fracture these curves within a specified tolerance consistent with the specified resolution and beam step size. | |||
*''Symmetric Fracturing:'' This will attempt to perserve as high symmetry across the x- and y-axis as possible. | |||
{| style="border: none; border-spacing: 0; margin: 1em auto; text-align: center;" | {| style="border: none; border-spacing: 0; margin: 1em auto; text-align: center;" | ||
|- | |- | ||
| [[image: | | [[image:BEAMER_Conventional.png|300px]] | [[image:BEAMER_LRFT.png|300px]] | [[image:BEAMER_Curved.png|300px]] | ||
|- | |- | ||
| colspan=" | | colspan="3" style="text-align:center;| | ||
Illustration of the three different fracture modes on a 400 nm diameter circle. From left to right the fracture modes are ''Conventional'', ''LRFT'' and ''Curved''. | |||
|} | |} | ||
===Fields=== | |||
The ''Advanced'' pane allows one to divide a design into different regions and apply different fracturing methods to different regions. Simply shift-click in the layout to draw out regions. It can also be used to assign different methods by layer. Multiple setups can be added with the ''+'' button. | |||
{| style="border: none; border-spacing: 0; margin: 1em auto; text-align: center;" | {| style="border: none; border-spacing: 0; margin: 1em auto; text-align: center;" | ||
|- | |- | ||
| [[image: | | [[image:BEAMER_A1.png|300px]] [[image:BEAMER_A2.png|300px]] [[image:BEAMER_A3.png|300px]] [[image:BEAMER_A4.png|300px]] | ||
|- | |- | ||
| colspan="2" style="text-align: center;| | | colspan="2" style="text-align:center;| | ||
Advanced pane of the ''Fracture'' node. | |||
|} | |} | ||
''Field Traversal:'' ''Fixed'', ''Floating'' or ''Fields Follow Geometry''. The ''Fixed'' traversal will lay out main fields in a perfect grid starting from the bottom left feature of the design. The ''Floating'' field option will attempt to place geometry in the center of writing fields and is best used for sparse layouts. ''Fields Follow'' will attempt to lay out fields and their writing order such that they follow geometry. This is a good choice for waveguides and spiral structures. | |||
''Multipass Mode:'' In order to mitigate beam fluctations it is possible to divide an exposure into multiple exposures of each writing field. It is a simple averaging technique whare each pattern element is written n times, each time with 1/n of the total dose. Options are ''Single Pass'', ''Two Passes'', ''Four Passes'' and ''Dose Selective''. In the first three cases the pattern is written in either one pass (i.e. not multipass), two passes or four passes. In the dose selective approach it is possible to set the number of passes based on the dose using the table in the bottom of the window. When using multipass one must assign either a ''Mainfield Offset'', a ''Subfield Offset'' or both, such that elements are written at different placements of the writing field. | |||
''Overlap Method:'' Allows one to setup a pattern overlap between main fields to mitigate stiching problems. The overlap dimension is controlled with the ''Size'' fields. The methods available are: | |||
*''Share between fields:'' This method divides pattern elements at main field boundaries and assigns the entire dose of an element to a single writing field. An overlap region can be defined such that small elements within this overlap are placed in a single writing field to avoid stitching. | |||
*''Split Dose between Fields:'' The dose is split evenly across neighbouring fields over the designated distance. | |||
*''Interleaving:'' In this method an interleave is made between writing field boundaries over the distance set by ''Size''. The width of the interleaved strips is set in the ''Element Size Interleaving''. | |||
*''Interleaving + extra field:'' This method is somewhat similar to ''Interleave'' but in addition it creates an extra writing field with the interleaving part only. Thus, the interleaving part is written at 50% dose in each of the neighbouring fields and then written at 50% dose in a third (floating) writing field. | |||
{| style="border: none; border-spacing: 0; margin: 1em auto; text-align: center;" | {| style="border: none; border-spacing: 0; margin: 1em auto; text-align: center;" | ||
|- | |- | ||
| [[image: | | [[image:BEAMER_Share2.png|400px]] [[image:BEAMER_Share1.png|400px]] | ||
|- | |- | ||
| colspan="2" style="text-align: center;| | | colspan="2" style="text-align:center;| | ||
Illustration of ''Share between Fields'' overlap. On the left side the overlap distance is 0, i.e. no overlap. The rods are simply divided along the main field boundary. On the right side an overlap has been introduced such that the line of rods at the boundary is entirely placed in either of the writing fields and hence will not be stitched across two fields. | |||
|} | |} | ||
{| style="border: none; border-spacing: 0; margin: 1em auto; text-align: center;" | {| style="border: none; border-spacing: 0; margin: 1em auto; text-align: center;" | ||
|- | |- | ||
| [[image: | | [[image:BEAMER_Split.png|400px]] | ||
|- | |- | ||
| colspan=" | | colspan="2" style="text-align:center;| | ||
Illustration of ''Split between fields'' overlap. Over a defined distance at the writing field boundary the geometry is present in both fields but only written with half the dose, as can bee seen by the color of the overlap. | |||
|} | |} | ||
{| style="border: none; border-spacing: 0; margin: 1em auto; text-align: center;" | {| style="border: none; border-spacing: 0; margin: 1em auto; text-align: center;" | ||
|- | |- | ||
| [[image: | | [[image:BEAMER_Interleave1.png|400px]] [[image:BEAMER_Interleave2.png|400px]] | ||
|- | |- | ||
| colspan=" | | colspan="2" style="text-align:center;| | ||
Illustration of the ''Interleave'' overlap methods. On the left side ''Interleaving'' is used to interleave the structures at the main field boundary between the fields. On the right side "Interleaving + extra field'' is used to interleave but also add an additional writing field for the interleaved part. | |||
|} | |} | ||
The main | The ''Fields'' pane is very simple and can be used to limit the main or subfield dimensions. The maximum main field size is 1000 x 1000 µm<sup>2</sup> and the maximum subfield size is 4 x 4 µm<sup>2</sup>. | ||
'''Important notice:''' The export node will re-fracture the layout with other parameters unless one selects ''Cell To Field'' in the ''Field Ordering'' menu and ''NoCompaction'' in the ''Feature Sorting in Field'' of the export 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 µm<sup>2</sup> box. The procedure is | 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 µm<sup>2</sup> box. The procedure is | ||
| Line 333: | Line 326: | ||
|} | |} | ||
== | ===Visual-Job=== | ||
Visual Job is essentially a graphical interface where one can setup a job consisting of multiple patterns. After setup Visual Job vil write the corresponding SDF and JDF files. A short video guide to [https://youtu.be/Mi_HimB0Xa8?si=7WemvXTKJMGLY2jb Visual Job is available here.] Notice that the video is from Beamer 6.2, there is only a few minor changes in Beamer 7. | |||
===PEC=== | |||
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. | |||
==Node setups and usage examples== | |||