Introduction

Below are a few useful tips to those working with the RAITH150 Two EBL System. This information is complementary to the SOP, and it is gathered here in an effort to keep that document as concise as possible.

Origin and angle correction

Origin correction

This task, one of the first to be completed after loading the sample and starting the SEM column, defines a coordinate system for the sample. This allows us to position our designs without having to worry about where on the stage the sample is or if its edges aren't parallel to the stage axes.

In the SOP we suggest using the bottom left corner of the sample as a reference and setting it to be the origin. But more than that, we can think of this point as a simple reference point and set it to be any other point on the plane, which would move the origin of this coordinate system accordingly. One simple example is to make this corner (-a/2, -b/2), where a and b are the sample dimensions in x- and y-direction, which would put the origin at the center of the sample. Moreover, we don't need to use the bottom-left corner, we can use any other part of the sample as a reference point, such as the top-right corner, and just set that point in a way that puts the origin where it is most convenient.

This gives us more flexibility if one of the corners is damaged and not well defined. Also, this is the principle behind 3-point alignment, where we chose 3 marks on the sample as our reference points and define the coordinate system such that they are where we want them to be.

Angle correction

In the SOP, this task follows immediately after the Origin correction, and it is suggested that the origin is used as P1 and the bottom-right corner as P2. However, corners may not be well defined depending on how the sample was cut, which may make it harder to obtain a good measurement of the angle.

Once again, these points are only suggestions. What the system needs are simply 2 different points, such that a line can be defined and the angle between this line and the stage x-axis calculated. Even though any 2 points may work, to avoid further complications down the line, we strongly recommend choosing 2 points along the bottom or top edges of the sample (the edges that are supposed to be parallel to the x-axis). So, if your corners are not well defined (it could be broken or hidden behind the resist edge bead), simply mark P1 and P2 on any part of the edge.

SEM adjustments (i.e., focus, aperture alignment and astigmatism correction)

This step requires the user to improve image quality by adjusting focus, aperture alignment and reducing astigmatism. Even though the contamination dot can be used as an objective measurement of the quality of the beam shape, during this process we rely solely on image quality to guide our efforts. This means that having a good quality image is key to be able to gauge our progress. Blow are some tips that may escape a beginner's attention when optimizing the SEM column.

Noise reduction

In the RAITH EO software (typically on the left-hand monitor) we can reduce noise by both slowing the scan speed (SEM Controls → Scanning tab → Scan speed) and different noise reduction methods (SEM Controls → Scanning tab → Noise reduction).

Scan speed will control how fast the beam scans the area to be imaged (the higher the number the slower it gets), with a fast beam producing a lower signal at each pixel and hence being more susceptible to noise. Typical numbers to be used while adjusting SEM parameters depend on EHT voltage and aperture size, but anything above 5 should be a good start for most cases.

The Noise Reduction options are:

  • Pixel average: Averages the signal of neighbouring pixels. Is very good removing high-frequency noise and fast, but very limited in how much it can achieve. This method should only be used when fast image updates are needed, e.g. when browsing around the sample searching for a point of interest.
  • Line average: Scans each line (horizontal) of the image N times and divides the final signal by N. Gets slow fast as N increases, but produces very good images. The number of lines to average (N) may vary a little, but anything between 3 and 5 should produce good enough results at reasonable scan speeds. Position shifts caused by vibration or charging effects may apear as distortions.
  • Line integration: Similar to the Line average option, it scans each line multiple times, summing their signal, but without averaging them. The draw back is that, depending on number of lines captured and signal level for each, some pixels (or portions of the image) may get saturated.
  • Frame average: Equivalent to Line average, but it averages signal frame by frame instead of line by line. This method may be faster than Line average, but small and consistent variations caused by charging effects may appear blurry, making especially focus and astigmatism correction harder.
  • Frame integration: Equivalent to Line integration, but sums the signal frame by frame instead of line by line. This method may have the same issue as frame average, as well as the possibility of pixels getting saturated.

Which method to use will depend on what the user is doing, but Line average with N = 3-5 should be preferred during image correction. This would allow scan speeds 5-9 (acceleration voltage, or EHT, dependent) to be usable and produce the high quality images needed to obtain good column parameters.

Small raster window

The above noise reduction suggestions may cause image update to be very slow (a few seconds for the whole field of view). To counter that without losing the low noise quality we must reduce the size of the image we are scanning. To activate this small window, just click the button and a green rectangle with 8 cyan squares will appear. You can drag and drop this square anywhere in the original image by dragging the green frame, as well as resize it as needed by dragging any of the cyan squares.

Focus wobble and scan speed

Unless the aperture is extremely misaligned, a static image will not provide any information about the quality of the alignment. This is why it is important to have the focus wobble active, such that the quality of the alignment can be assessed. Users should never attempt to adjust aperture alignment without focus wobble, at the risk of producing even worse misalignment.

It is also important to have a fast frame rate in order to see the image shifting. To increase frame rate we can either change the noise reduction method (from line average to pixel average or just reducing the N for the average) or using a faster scan speed (smaller number). If we make these changes after turning the focus wobble on, the system will automatically return to the previous low noise settings once the wobble is turned off.

How each component affects one another

The SOP follows a very specific order to adjust the column parameters. We start by adjusting focus, then aperture alignment and finally astigmatism. And there is a good reason to follow this order very strictly, these apparently separate and independent adjustments affect each other or our ability to fix each of them.

Changing focus first will give us 2 pieces of information at once: 1) if the image shifts we know immediately that aperture alignment needs attention; 2) if the image stretches in any specific direction we know that astigmatism is present.

Then we move to aperture alignment before correcting any astigmatism. The reason for this order is because the aperture is a physical structure, a hole, that the beam has to go through. Hence, it can potentially block some of the beam, changing its shape. If the beam doesn't start with a shape that resembles a gaussian beam, any attempt to correct for astigmatism may be frustrated or in vain. Unless astigmatism is so bad that it is making it difficult to determine aperture alignment quality, it should always be fixed after the aperture. And even if astigmatism needs to be coarsely adjusted before aperture alignment, it will have to be corrected once again after.

Finally, closing the circle, astigmatism and focus are complimentary, in a sense. You will notice in the images below that it is not easy to tell the difference between the astigmatic and out-of-focus images. For this reason, it is very useful to go back to focus and adjust it once more after correcting for astigmatism. And more than that, once aperture alignment has been corrected and further adjustments seem unnecessary (no more shift while adjusting focus), it is important to alternate between focus and astigmatism corrections — at this point image quality is the only benchmark being used, and both of these issues will affect how well the other can be corrected.

Coarse vs fine adjustment

In the SEM window (typically on left hand monitor) we can change how fast the parameters change when moving the mouse left and right. To do so, simply click the Coarse/Fine button at the bottom right of the window.

GDSII, CSF and position list

GDSII vs CSF

GDSII is one of the most widely used formats for technical designs, especially for printed circuit boards (PCB) and lithography. Given its simplicity, this format is typically accepted by most (if not all) EBL systems, and that would not be different on the RAITH150 Two EBL System. However, this format has a fundamental limitation that can sometimes be detrimental for high resolution EBL, which is the fact that all shapes are constructed as polygons. Because our EBL system relies on beam stirring and patterns polygons by exposing a series of successive lines, this can cause circles (and any shape with edges that are not parallel to the beam path) to have rough edges.

RAITH solved this issue by implementing extra "shapes" into GDSII, thus creating its CSF format. This new format is structurally identical to GDSII, but includes curved elements as an alternative to circles, elipses, arcs and curves. When using this type of element, instead of patterning say a circle with parallel lines the system will make the beam follow an actual circular path (within hardware limitations). This can potentially produce much smoother edges on these curved structures than normal polygons would.

Also, the area that can be patterned without stage motion is limited by the maximum beam deflection, which is in turn limited by working distance and magnification. For instance, the largest area that can be covered without significant distortions at 1000× magnification is a 100 μm square. Any structure larger than that will be broken down into smaller parts (writefields) that will be stitched together, each one addressed by stage motion. Since stage motion is not as precise as beam stirring, this unavoidably causes some defects at the boundaries of neighbour writefields. To avoid this, at least for long and narrow (<1 μm wide) structures, RAITH added FBMS (Fixed Beam Moving Stage) elements to their CSF file format.

In short, you can easily expose GDSII files with EBL, but if you want to take advantage of these extra element types implemented by RAITH you will need to produce CSF files. To do so there are currently two options: 1) use RAITH's software, which we make available free of charge on two computers in our common computing area next to the Staff Office; 2) use MATLAB, as suggested in our GDSII design suites page.

Dose factor and Datatype

In the RAITH150 Two EBL System we can set the dose (measured in charge density, e.g. μC/cm²) for the whole design, but we can also define different doses for different structures. In order to accomplish that we define a base dose for the whole design and a dose factor (DF) for each structure. The DF is a multiplier that can change the dose used to exposed a given structure, and it is easily set when creating a design using RAITH's software. However, RAITH's software is only available at the tool and in a couple of computers in our common computing area. What if you want to use your preferred GDSII editor and still set the DF?

When creating a layer in GDSII, you are typically asked for the Datatype as well, and most people simply leave it as zero since it has little meaning in most situations. But this is the information that the RAITH software uses to set the dose factor. The only trick here is that there is a factor of 1000 to convert the Datatype into dose factor (i.e., DF = Datatype × 1000). So, if you need a DF = 2, just set the Datatype to 2000 and the software will give you double the dose for all structures with this Datatype. And the system always defaults Datatype = 0 to DF = 1, since a zero dose would result in no exposure and that does not make sense.

References vs copies

Very often arrays of the same structure are needed, and the most obvious method to obtain such an array is to create copies of the structure. However, all elements in GDSII are defined by their vertices (be it a closed polygon or an open path). For example, to create a simple rectangle 2 vertices are needed, and when we copy it once 2 more vertices are created. Following this approach we can see that the number of vertices scales linearly with the number of copies, and for very large arrays this can create very big files (every vertex is a pair of numbers that needs to be saved).

To avoid enormous files when large arrays are created, GDSII has a special type of element called "Reference" (in KLayout this is called an Instance). References allow us to create a single structure and place them anywhere, which is accomplished internally by simply adding an overall translation to the vertices. And if an array is needed, this can be internally repeated many times in both x- and y-direction. What this means is that, for every copy, instead of adding one more pair of numbers for every vertex, we only add one pair of numbers (translation vector) regardless of the number of vertices the original structure has.

As an example, if you produce a circle by creating a polygon with 256 vertices, a 5×5 array of these would require 12800 (25 copies × 256 vertices × 2 coordinates per vertex) numbers to be stored in the file. Using references, on the other hand, reduces this number to 562 (25 copies × 2 coordinates per copy location + 256 vertices × 2 coordinates per vertex) numbers. That is ~95 % less numbers to be stored, which means a file that is ~95 % smaller! Also, if any changes need to be made to all copies, with references all that is required is to modify the source structure and all copies are instantly modified, while with simple copies we would have to either modify one by one or rebuild the whole array from scratch.

Now, there are some limitations that arise with the use of references. The first one is that all copies created by references will have the same layer/datatype, and consequently the same dose factor, as the source structure. The only way to obtain copies with different dose factors is by using simple copies and setting their layer/datatype individually. Does this mean that all dose test arrays must be created with simple copies? Not necessarily. We can still have a single structure and use the position list to produce the dose test array. But if the array is intended to be part of the GDSII file, then references cannot be used to produce varying dose factors.

The second limitation is related to how the array must be created. The RAITH software requires the array vectors to be orthogonal and positive. This means that arrays can only grow left to right and bottom-up, and the copies must be arranged in a rectangular grid. A typical case where this becomes a problem (with simple solutions) is when creating a hexagonal close packing (hcp) array, where the vectors to produce the array would have a 60° angle between them. The two easiest solutions to this case would be: 1) create 2 rectangular arrays of a single element with proper offset between the arrays; 2) create a rectangular array of a structure containing 2 elements — note that the pair of structures in the array source can also be produce by 2 references (not an array, which would require the non-orthogonal vectors we are trying to avoid).

Position list

The Position list is how we tell the EBL system where to expose our designs. Its creation is one of the last steps in the SOP, typically followed by exposure, and can be done at the machine just by dragging and dropping the desired structure from the list in the Design panel to the Position list window, as suggested in the SOP. However, when doing so, all items in the list are initially positioned on the same place, i.e. the current beam position (indicated by the crosshairs on the sample holder map and wafer map). To correct this we need to manually adjust all "U" and "V" column values for every item, which is fine if we only have a few items but gets ver laborious for long lists.

An alternative to dragging the structures to the position list window is dragging them to the wafermap and dropping them more or less where we need them to be. Of course, this is not as precise as typing the coordinates, but if we don't need that much precision this can save quite some time depending on the number of items to add.

The position list can also be created using the computers in the common area. But there is one caveat to this, which is the path to the GDSII/CSF file. When dragging and dropping the structures into the position list (or the wafermap) the system will automatically set the file path to the current value, but the path on the system computer will very likely be different than the one on the computer you used to create the file (if they are not the same). It is imperative to verify this parameter before exposing with a position list crated in a different computer, failing to do so will result in a failed exposure.

There is one easy way to verify if the file path is correct. Simply double-click an item in the position list, if the design viewer shows up the path is correct. If the path is not correct, then the window below will appear, in which case we must verify the correct path and fix the position list information.

Avoiding empty writefields

The EBL software determines the total area to be exposed from the working area (WA) set in the position list, and if this area is larger than a single writefield (WF) it will be split into as many WFs as needed. At first this is automatically set based on the smallest area that contains all structures, but it can also be manually adjusted. When set automatically, this WA will cover the entirety of the selected structure (cell, in KLayout terms), regardless of the selected layers. This means that if the selected layer doesn't contain structures throughout the whole area, there will be empty WFs. And these writefields will be addressed by stage motion during exposure, empty or not.

In many cases, this may not be a problem as the number of empty WFs are largely outnumbered by exposed ones. But this may unnecessarily increase exposure time of sparse arrays covering large areas or when there is a significant area difference between layers. To solve this in case of layers that cover smaller areas than the whole structure, an easy solution is to adjust the WA. Working area and position list coordinates have to be carefully set, though, especially if alignment between layers is needed.

To adjust the WA of a specific item in the position list, select the item and right-click on it, then click on Properties. The window below will appear, where the WA can be set by adjusting the U and V minimum and maximum values. Note that these coordinates in your GDSII/CFS file coordinate system — in the image below the origin of the design will be at the center of the WA, which in turn will be 100 μm × 100 μm in size.

We can also create a set of WAs, making it easy to switch between them as needed. To do so, open the design editor (so you can check the results) and click on View → Working area editor (or simply press W on the keyboard). The window below will appear, where you can crate new WAs by clicking on and edit them by either entering the edges coordinates or center coordinates and size. If WA and WFs are visible in the editor, they will be updated once you select a new WA or save () the current one. Once you have this table complete, you can select the proper WA for the position list item from the Working Area button in the Patterning Properties window.

An alternative solution to adjusting the WA is to have separate structures for every layer. In this case, instead of dragging the whole structure to the position list and selecting the proper layer, we can drag only the structure that needs to be patterned. This method will produce automatic WAs that only cover the structure being patterned, but attention still must be paid to how the system positions the design in the WA, as well as how to position it on the sample using the position list.

And when we have sparse arrays that would produce many empty WFs in between items, the best solution is to use the position list to produce the array instead of having it built into a structure. Simply create as many items as needed in the position list and set their position accordingly — the next section will cover array creation in the position list.

Creating arrays in the position list

To create arrays in the position list, simply drag and drop one item to a new position list and set the U/V coordinates — this will be the first item in in the array to be patterned. Then, click the Open PLS-processor button (see image below), which will bring up the Preprocessing window. Feel free to open the software help and learn what each tab does at your own pace, but here we are going to cover the Matrix Copy tab only.

 

In the Matrix Copy tab you can enter the size of the array in the Matrix size panel and the distance between copies in the Step size panel. In the Element order panel you can define if the array grows row-by-row (U (rows) first) or column-by-column (V (columns) first). And in the Dose factor panel you can set the dose factor for each item in the position list, which is an easy way of creating a dose test without having the array built in the GDSII file. Once all parameters are set, just click Apply and the position list will be populated.

Working area and design positioning

When we first draw any structure, the EBL software uses its extreme coordinates to determine a working area that would expose it all. In the examples below the structure is a simple pair of 25 μm × 25 μm squares centered at the origin, but this is true for any kind of structure, even arrays.

In the image below we can see the dashed line indicating the writefield (WF) size, as well as the working area (WA) indicated by a solid grey line. The WF will be addressed by the stage normally, i.e. the stage will put the column right at the centre of the WF, but only the working area will be exposed. Moreover, note that the bottom-left corner of the WA coincides with the bottom-left corner of the WF; this is a constant and the effects of these two entities being anchored at this point will be obvious in the following examples.

 

When building the position list, the coordinates we enter will determine where the center of the bottom-left-most WF will be. In the previous example, that would put the origin of the design (the vertex shared by both squares) 25 μm to the left and to the bottom of the position list coordinates. An easy way to make sure that the origin of the design goes where we want, without having to resort to offsets on the position list coordinates, us to adjust the WA. In the example below the center of the WA is kept at the origin of the design, but its size is increased from 50 μm to 100 μm in both directions. Because the bottom-left corners of both WA and WF have to match, this will force the design to be centered on the WF, making it very easy to built the position list and have the structures at the correct place.

Also, because all WFs inside a WA will be addressed the same way (column brought to center of WF), it is a lot easier to always make the WA size an integer multiple of the WF size. And for arrays, as long as the pitch is an integer fraction or integer multiple of the WF size, the WA size set this way will guarantee that no item falls in between two WFs (as long as the item or group of items are not larger than a WF).

 

One thing that users must be careful with when adjusting the WA is parts of the structure left outside of the solid line. These will NOT be exposed. In the example below, only the top square would be exposed while the bottom one would not show up after development.

 

The ability to position the design anywhere in the WA by changing its centre while maintaining its size, together with the fact that the bottom-left most WF position is fixed by the position list, allows us completely to adjust and fine tune the position design on the sample. The example below shows how much flexibility the WA adjustment gives us. In this case we have offset its center by 50 μm in both directions and doubled both width and height. With the centre of the working area being moved and the bottom-left corners of WA and WF being anchored, the design is forced to be in the bottom-left WF; but we could move the WA centre anywhere and, as long as the structures are still inside it, they will be exposed at the set relative position with respect to the WF array.

 

Just note that, as explained in the Avoiding empty WF section, the empty WFs in the last example will be addressed by stage motion, potentially delaying exposure of the design.

Finally, all the WAs created using this method are saved in the ".wor" file in the same folder and with the same name as your GDSII/CSF file. If you perform these adjustments and want to have them imported together with your design when you load it into the tool PC, make sure also to transfer this file with WinSCP.

Stage motion

Joystick speed

The joystick has 2 different speed modes that are activated by pressing the High Speed button. When the light above this button is on, the stage should move faster then when it is off. However, the RAITH software allows us to adjust what normal and high speed actually mean by changing their configuration. To do so, simply open the Configuration panel by clicking on the  symbol and move the fast and slow sliders up and down — note that keeping both sliders at the same position will make both normal and fast speed modes the same.

While in this panel, also make sure that the Magnification dependent stage speed option is unchecked. This option does not change stage speed at different magnifications, it changes the sliders positions at different magnifications.

Writefield alignment issues

Sometimes, after bringing a particle of interest to the centre of the SEM view, the writefield alignment moves the stage to another position and the particle cannot be found. The actual cause of this is not yet know, but the following procedure has proven to solve it:

  1. In the Writefield Control tab on the RAITH150-TWO software (typically on the right hand screen), look for the Writefield Alignment panel and expand it by clicking the down arrow
  2. Click Reset and then Yes.
  3. You will need to start at the 25 μm marks (for 100 μm WF, use the coarsest procedure for your WF size) procedure after this, but it should behave as expected.