Method and device for controlling and monitoring a position of a holding element

Abstract
A system for controlling and monitoring a position of a holding element, which is provided to hold a sample to be examined, is disclosed. The system may use a beam device, such as an electron microscope. The system provides for controlling and monitoring a position of a holding element taking into account any errors with respect to irregularities and may include interpolation of possible errors.
Description
TECHNICAL FIELD

This application relates to a method and a device for controlling and monitoring a position of a holding element, which may be provided to hold a sample to be examined, in particular by a beam device such as an electron microscope.


BACKGROUND OF THE INVENTION

In devices such as optical microscopes or electron microscopes, it may often be desirable to accurately identify points of interest on a sample which is to be examined by a user with the device. It may also be desirable to record information about points of interest on such a sample so that the points of interest can be reviewed. In some applications, a first device (for example an optical microscope) is used to identify points of interest such as defects on a sample which are then to be examined in detail with a second device such as an electron microscope. Since those defects are rather small, their location must be recorded with high accuracy to be able to find those defects again and to identify them correctly when they are examined. High accuracy could be achieved with a holding element which can be moved very precisely or can be controlled very precisely, for example by laser interferometry. However, the aforementioned solutions for achieving high accuracy are rather expensive.


It is known that each device has its own coordinate system, in particular due to manufacturing reasons. Therefore, when taking a sample to be examined from a first device with a first coordinate system to a second device with a second coordinate system, it is necessary to translate the coordinates of the sample of the first coordinate system into coordinates of the second coordinate system. This can be done by establishing the location of three points of the sample in both coordinate systems and by calculating the effects of translation, shear, rotation and scaling. However, this translation requires the assumption that coordinates of both coordinate systems consist of straight lines and is, therefore, a linear translation. This assumption is, in reality, not very accurate as mentioned below.


In reality, the coordinate systems for movable parts which hold a sample to be examined (e.g. a motorized holding element of an electron microscope) deviate, albeit only slightly, from this assumption. There exist errors which have to be taken into account. One of these errors is based on mechanical and/or design irregularities of the holding element or the movable parts of the holding element. This error can cause false absolute positioning of the holding element. Another of the errors is based on the weight of the sample which could cause such a physical loading of the holding element that the holding element could move or bend by small amounts, thus changing the exact position of a sample mounted on the holding element under, for example, an electron beam. Additionally, magnetic properties of the sample might influence the position of the holding element. Therefore, a desired position set by a user often does not correspond to a current position which was taken by the holding element after setting the desired position. In other words, when a position comprising a coordinate X and a coordinate Y is desired or reported to a user, the current position of a holding element is in fact X+eX and Y+eY, respectively, where eX and eY are small errors.


These errors also may be taken into account when a sample is only examined with a single device having a holding element for that sample, since the coordinate system of the holding element is different from the coordinate system which is used by a user to identify points of interest.


Some methods and systems for positioning a holding element known in the art consider the above-mentioned errors. For example, a method and a system is known for positioning a driven part of a numerically controlled device and for overcoming, in such positioning, repeatable errors due to mechanical limitations. A memory device forming part of a computer associated with the system is filled with a table of error correction values corresponding to different reference points or areas in the field of movement of the driven part, and as the part is moved to such points or areas, corrections are made in accordance with the table of error correction values. In more detail, by driving the driven part through a grid of positions spread over the entire area of a reference member, error values may be obtained on a two axis basis, with an X error value and a Y error value associated with each reference point. From this, the aforementioned error table is set up which actually represents a family of correction curves, the error values associated with each reference point dependent on, or a function of, the position of the driven part along both of its axes of movement. The computer may be programmed to interpolate the error correction required for any position of the driven part from the error values associated with adjacent reference points and to make error corrections in accordance with such interpolated values as the driven part is moved between reference points.


Another known system is designed as a particle beam device including a standard substrate formed with a chip-shaped first mark group having a plurality of first marks and a chip-shaped second mark group having a plurality of second marks, a correction map having misalignment factors of the first marks based on the position of the second marks, and a deflection control unit for controlling an amount of deflection in a deflector for the particle beam. The particle beam is irradiated on a sample while the deflection control unit refers to the correction map and corrects the amount of deflection as equivalent to the misalignment factors.


A further known method includes a detection step of placing a calibration substrate having a plurality of marks on a stage (holding element) and detecting positions of the plurality of marks by a first position detection section using a particle beam and by a second position detection section using light while adjusting a position of the stage. Furthermore, the method includes a correction step of correcting a position where the particle beam is incident on the substrate on which a pattern is to be drawn, in accordance with the position of the stage on the basis of the difference between detection results by the particle beam and the light in the detection step.


References U.S. Pat. No. 3,555,254, US 2005/0211929 A1 and U.S. Pat. No. 6,864,488 B2 are prior art examples. However, the above-mentioned prior art does not take into account a bending of the reference member (reference object), the sample or the holding element. Therefore, the physical loading of a holding element or any other irregularity causing a bending of the holding element automatically leads to further errors. Moreover, the prior art provides corrected coordinates to drive a holding element to the correct physical position which corresponds to a desired position of a user. The desired position is determined in the coordinate system of the user, whereas the correct physical position is determined in the coordinate system of the holding element. However, this correct physical position then reported to the user is not identical to the desired position due to the different coordinate systems. This might confuse the user. Furthermore, the user might position the holding element without entering a desired position in a control device, for example via a mechanical and/or electronic device (for example a joystick). After having positioned the holding element, the position should be reported to the user. However, as mentioned above, the prior art reports the physical position taken by the holding element in the coordinate system of the holding element or the beam device instead of the position in the user's coordinate system. This leads automatically to errors in further processing the sample since the user would not be able to return to the position he actually has chosen before. This occurs because the holding element will not be moved to this reported physical position when entering the reported physical position given in the coordinates of the coordinate system of the holding element or the beam device as a desired position. Rather, it will be moved to a further physical position due to the errors mentioned above.


Accordingly, it would be desirable to provide a method and a device for controlling and/or monitoring a position of a holding element which take into account errors and provide accurate positioning and monitoring of a holding element.


SUMMARY OF THE INVENTION

The system described herein may be based on the following basic idea. A hypothetical solution for avoiding any error would be to create a table which would record errors of any possible position X, Y with their corresponding errors eX and eY (eX and eY are errors at position X, Y). When a user requests a physical position (X′, Y′), one could simply search the table for the location where X+eX most closely matches X′ and Y+eY most closely matches Y′. To do a reverse translation when a device reports the position X, Y, one could simply look at the table and report X+eX and Y+eY to tell the user the actual physical position X′, Y′. Obviously, creating such a table is not economically feasible since recording every addressable point on any sort of holding element would require enormous computational storage.


Therefore, the system described herein may be based on the idea of determining exact positions of some reference points and the errors at those reference points. Considering those reference points and those errors, the errors at each possible location (point of interest) are determined. To create such a determination, it is useful to consider the translation of the position X,Y to eX and X,Y to eY as a pair of surfaces. X and Y are the x-coordinate and y-coordinate, respectively, of a Cartesian coordinate system, whereas the errors eX and eY are the “heights” of the surfaces and are, therefore, the zcoordinate of the Cartesian coordinate system. If the reference points are placed as dots in two three dimensional spaces (one space for (X, Y, eX) and the other space for (X, Y, eY)), each surface (one for eX and one for eY) can be created by “filling in” each point between the reference points. This “filling in” may be carried out by (but is not limited to) interpolation, as further explained elsewhere herein.


The system described herein may use a reference object which might be a reference object separate from the sample to be examined or which can be designed as the sample itself. The reference object may provide at least one first position as a reference point.


A method according to the system described herein may be based on providing a non-linear transformation between two coordinate systems, in particular between the coordinate system of a user and a coordinate system of a device or between the coordinate systems of two different devices. The non-linear transformation may be used due to the effects mentioned above and may be carried out in both directions, e.g. from the coordinate system of a device into a coordinate system of a user and vice versa. The coordinate system of a user can typically be the coordinates of the surface of a sample, whereas the coordinate system of the device is the coordinate system of the holding element which is given for example by the drive system of the holding element. In particular, a user is often interested in some areas on a sample in relation to each other. It should be noted that the system described herein is not limited to user coordinate systems with a physical existence, but may also be useful with any non linear abstract user defined coordinate systems.


The method according to the system described herein may control and monitor a position of a holding element, the holding element being provided to hold a sample to be examined and being part of a device. Furthermore, the holding element takes a physical position in a first coordinate system when being in a corresponding position in a second coordinate system. The second coordinate system may be, for example, the coordinate system of the user. The method may comprise the following steps. At least one first position in the second coordinate system is provided as a reference point (calibration). The first position is provided by a reference object. The holding element takes a first physical position in said first coordinate system in said first position. The first position can be any arbitrary or well known position. Furthermore, it is assumed that the first position has a first position error (“zero error”). This will be further explained in detail elsewhere herein. The method may also comprise the step of providing at least one error map which is based on the first position. The error map comprises a deviation of at least one second physical position of the holding element in the first coordinate system from a corresponding position of the holding element in the second coordinate system. In other words, the error map provides deviations for some physical positions of the holding element in the first coordinate system from their corresponding position of the holding element in the second coordinate system. Moreover, the method may comprise the step of providing at least one correction map based on the error map. The correction map comprises a deviation of at least one third physical position of the holding element in the first coordinate system from a corresponding position of the holding element in the second coordinate system. It provides the possibility to find the correct position for each and every position in each coordinate system. The correction map provides a non-linear coordinate translation between the first coordinate system and the second coordinate system. Moreover, the method further comprises at least one of the steps of: moving the holding element to the third physical position in the first coordinate system corresponding to the position as a desired position in the second coordinate system according to the correction map; and reporting the position in the second coordinate system corresponding to the third physical position in the first coordinate system using the correction map.


An advantage of the method mentioned above is that a transformation taking into account the effects mentioned above, in particular mechanical irregularities of the holding element or bending due to the weight of a sample, provides transformation between two coordinate systems and is accurately carried out in both directions, e.g. from the coordinate system of a device into a coordinate system of a user and vice versa. Therefore, the method provides moving the holding element to a correct physical position when a user requires the holding element to be at a desired position as well as reporting a position in the user's coordinate system when the holding element is in a corresponding physical position. This avoids, in particular, errors in further processing the sample since the user is able to return to this physical position at any time by moving the holding element to the corresponding position in his coordinate system.


Moreover, the system described herein may provide a method for controlling and monitoring a position of a holding element without requiring recalibration when changing the sample, but instead using a calibration based on the sample type being used. Furthermore the error map and the correction map can be generated automatically, for example by using image recognition techniques and standard samples.


It should be noted that a correction of a position of the holding element may be carried out by a movement of the holding element itself. In this embodiment, the correction is not carried out by other means.


In an embodiment of the system described herein, a method may further comprise the step of storing the error map and/or correction map so that the one or more maps may be used, for example, when changing the sample to be examined.


Moreover, the step of providing the error map may comprise taking into account an initial rotation and/or deformation of the reference object or sample which could also cause position errors. Furthermore, the step of providing an error map may comprise correcting a tilt of the reference object or sample. If there is some tilt in the reference object or sample, this could cause position errors. A way to compensate the effect of a tilt is by measuring of a focal length (necessary to generate a smallest particle probe on the sample) of the device at a number of positions of the reference object or sample and calculating the tilt using the different focal lengths measured. The result of the calculation can then be used to avoid the position errors. The errors with respect to the tilt are linear in effect and, therefore, can be removed by transformations such as the so called three point registration.


In an embodiment, the reference object may be provided by a reference grid having at least one vertex being said first position. At least one further vertex given by a second position may also be given by the grid or is determined using the first position, as is explained in detail further below. A grid can be obtained by converting arbitrary points to a grid (for example by interpolation). Moreover, it should be noted that the system described herein is not limited to grids. Using other reference objects is also possible.


Another embodiment of the method according to the system described herein may comprise the step of measuring the deviation mentioned above visually, e.g. via an optical microscope or any other suitable optical device. However, it should be noted that determining the deviation(s) is not limited to visual measurement. Any other non-visual means suitable for determining the deviation(s) may also be used, for example an iterative process.


As mentioned above, the reference object may be provided by the sample itself. Alternatively, a separate reference object (not being the sample) may be provided. The reference object may be designed as a grid. A grid having several grid points as reference positions may be preferably given. However, this does not mean that a complete grid must be provided by the reference object. Two grid points may be sufficient for the system described herein. Further grid points can be determined by a calculation which is further explained in detail elsewhere herein.


The error map rnay be provided as follows. A reference object is given providing a grid with at least two vertices as grid points. One grid point is designed as a first position, and the other vertex is designed as (or the other vertices are designed as) a second position(s). The grid spacing between the vertices (i.e. the grid spacing in the x-coordinate and the grid spacing in the y-coordinate) can be measured and, therefore, is known. Nevertheless, the grid points of the grid can also be calculated and are defined as






X=X
0+(GX*N)  [EQUATION 1]






Y=Y
0+(GY*M)  [EQUATION 2]


whereby X0,Y0 represents the first position, N is iterated from 0 to the number of grid points in the direction of the x-coordinate, M is iterated from 0 to the number of grid points in the direction of the y-coordinate, GX is the grid spacing in the x-coordinate and GY is the grid spacing in the y-coordinate. One should note that equations 1 and 2 may not comprise the initial rotation, which is further explained elsewhere herein. This method of providing calculated grid points is not limited to one specific position of the reference object as the basis. Any suitable position can be used. After having determined the further grid points, the errors at these grid points can be determined, e.g. the errors can be visually measured. Another method for providing grid points uses the top left corner of the grid as the first position. The grid spacing in the x-coordinate and the grid spacing in the y-coordinate are also given or measured.


The first position may be chosen to have zero error. The reason why a zero error is acceptable for the first position is that any real error position would be a translation error of the entire error map. Since each position of the grid is taken relative to the first position (and the zero error), all errors of all grid positions will be translated by the actual real error of the first position. Since this is a constant translation over the entire reference object or sample, the assumption of the first position having zero error does not cause any problems.


The theoretical position(s) XT,YT of the grid points can be determined by using equations 1 and 2, wherein X0,Y0 is the first position. When positioning the holding element at XT,YT, the holding element will take another position (the current or actual physical position) which is different to XT,YT. Therefore, deviations between XT,YT and the actual physical position in the x-direction (eX) and in the y-direction (eY) are measured. The measured deviations eX, eY, the corresponding theoretical grid point XT,YT and/or the actual physical grid point are stored. Alternatively, an iterative process is performed to ensure maximum accuracy. First, the holding element is moved to XT,YT, then deviations (errors) between XT, YT and the actual physical position in the x-direction (eX1) and in the y-direction (eY1) are measured. If the deviations are small (that means in a similar order of the absolute accuracy of the holding element), then eX1 and eY1 are stored. However, if the deviations are larger, the holding element is then moved to XT+eX1,YT+eY1. Then the deviations of this position from the physical position are measured as eX2 and eY2. If these deviations are small, then eX1+eX2, eY1+eY2 is stored as the error for this theoretical and actual position. If these deviations are still large, the cycle is repeated. The iterative process is carried out for two reasons. First, simply measuring the error between where the holding element was requested to go and where it actually went does not necessarily provide with sufficient precision where it physically should match the theoretical position. Secondly, there may be errors in the measurement mechanism. If the measurement distance is reduced, then normally the measurement error is reduced.


The initial rotation is considered as follows. First, the initial rotation is preferably measured. Alternatively, the initial rotation is calculated. The following equations are applied when considering the rotation:






D=√{square root over ((N×GX)2+(M×GY)2)}{square root over ((N×GX)2+(M×GY)2)}  [EQUATION 3]









A
=


tan

-
1




(


N
×
GX


M
×
GY


)






[

EQUATION





4

]









X=X
0
+D×cos(R+A)  [EQUATION 5]






Y=Y
0
+D×sin(R+A)  [EQUATION 6]


where R is the rotation of the grid.


It should be noted that the grid points do not need to be regularly spaced, as long as there is some way of determining the error at each point.


An embodiment of the system described herein comprises the step of providing the error map by interpolation, for example by the method of Delaunay Triangulation. In particular, it is possible to determine more grid points which are not actually in the determined or given grid in each embodiment for providing the grid. This determination can be carried out by interpolation of further grid points and, additionally by their corresponding error(s)). In various embodiments, the method of Delaunay Triangulation and/or the method of inverse distance weighting as interpolation functions may be used. The purpose of the Delaunay Triangulation is to take unevenly spaced points and to interpolate those to form a grid of evenly spaced points which are more suitable for use with smooth interpolation methods (for example bicubic interpolation, cubic splines) which require a grid. Thus, the mapping can then be used when the reference sample does not have evenly spaced features. First the existing points are triangulated, then a grid spacing and origin may be determined. The spacing and origin is calculated by using standard minimization algorithms that try to minimize the distance between new grid points and actual sampled points. The minimization function has four parameters, namely Origin X, Origin Y, Separation X, and Separation Y. These are modified iteratively and a quality of fit is measured. This may be done by calculating the average distance squared from each sample point to the nearest grid point. Because this would tend to reduce the spacing parameters to the greatest common divisor of the sampled points (creating a vast number of grid points) the quality of fit also calculates the accumulated average distance squared of all grid points that are closer to a given sampled point than any other sampled point. This prevents an excessively fine grid spacing being generated, as it reduces the score as more grid points are introduced (with a tendency to provide the best scores when the ratio of grid points to sample points is near 1).


Another embodiment of the system described herein comprises the step of providing the correction map by interpolation. For example, the grid points and their corresponding errors may be used for that interpolation. This interpolation may include polynomial interpolation, such as interpolation functions based on bilinear, biquadratic, bicubic, and/or cubic splines and/or Delaunay Triangulation. This embodiment may be performed in two steps. As described above, the first step comprises determining deviations of grid points (error map). The second step comprises determining deviations of any possible position (correction map) which is based on the deviations of the grid points determined in the first step. This second step may be done by the aforementioned interpolation to provide a correction map.


A further embodiment of the system described herein comprises the step of entering a desired position of the holding element in an input device. The holding element is then moved to the corresponding physical position according to the correction map.


Furthermore, the step of reporting may include the step of calculating the position in the second coordinate system by an iterative process. The reason is that the position returned from the holding element to the user must cause the holding element to move to the same position when the reported position is used as a desired position. One may consider that the position S of the holding element in the user's coordinate system for a physical position P of the holding element suggested by a transformation from the first coordinate system to the second coordinate system (P→S) will change when using a transformation from the second coordinate system to the first coordinate system (S→P). In other words, P→S applied to X, Y gives X′, Y′, but S→P applied to X′, Y′ may not give back X, Y, but a new position X″, Y″ which is due to the errors introduced by the interpolation. Although, it is reasonable to assume that the difference between X,Y and X″,Y″ is small, it is still confusing for the user if he request a desired position X, Y and, after moving of the holding element, the position X″, Y″ is reported back. This problem is solved by the following solution. It is necessary to search for the position Xu, Yu in the user's coordinate system that will result in the currently physical position Xp, Yp of the holding element when error values for Xu, Yu are calculated. This can be done by solving the following equations






X
p
−eX(Xu,Yu)−Xu=0  [EQUATION 7]






Y
p
−e
Y(Xu,Yu)−Yu=0  [EQUATION 8]


The simultaneous roots of equations 7 and 8 are found by routines, for example the iterative multidimensional Broyden secant method. This method basically evaluates the equations 7 and 8 and determines partial derivatives and then chooses a new value for Xu and Yu, until it has a value as close to zero as possible for both equations. The final value of Xu and Yu is reported to the user. Another iterative method, which might be used, is the Newton Raphson method. On a modern desktop PC it is possible to determine the roots and the interpolation for example for 50000 positions in a few seconds, making this invention suitable for near real time use. The general multidimensional Broyden Secant method for finding roots of equations was originally described in Mathematics of Computation, Vol 19 pp 557-593 in 1965 by C. G. Broyden. The system described herein may use a modified version of this (based on the routines described in Chapter 9.7 of Numerical Recipes in C, Cambridge University Press, 1992). However, the principles involved are the same and different mechanisms may be used to find the roots of equation 7 and 8, as long as the process is sufficiently fast and accurate enough to be practical. The iterative methods (Newton/Broyden) use an initial estimate of the correct value and a mechanism for evaluating the current best value to see if the equation is at its root—i.e. zero. The process is as follows: A hardware device reads a current physical position Xp,Yp and reports it to software. The software may generate an Xu,Yu such that Xp=Xu+eX(Xu,Yu) and Yp=Yu+eY(Xu, Yu). The software uses a set of points as a starting point for the iterative methods. Multiple points may be used in case the iterative method fails to converge or converges to a local minima which is not the global optimum solution (i.e. not sufficiently accurate). The base point is given by Xu=Xp−eX(Xp,Yp) and Yu=Yp−eY(Xp,Yp) which is the “naive” solution to the inversion of the map. As explained above, it is unlikely that this Xu satisfies Xu+eX(Xu, Yu)=Xp as this would require (by substitution) that






X
p
−eX(Xp,Yp)+eX(Xp−eX(Xp,Yp),Yp−eY(Xp,Yp)=XpYp−eY(Xp,Yp)+eY(Xp−eX(Xp,Yp),






Y
p
−eY(Xp,Yp)=Yp which would require






eX(Xp−eX(Xp,Yp),Yp−eY(Xp,Yp))=eX(Xp,Yp).






eY(Xp−eX(Xp,Yp),Yp−eY(Xp,Yp))=eY(Xp,Yp).


which is not generally true (it would be true if, for example, between Xp, Yp and Xp−eX(Xp, Yp), Yp−eY(Xp, Yp) the derivative of eX and eY is zero).


However, if eX(Xp, Yp) is small and the rate of change of eX is small near Xu,Yu then this will be approximately true, and is good enough for a first guess for iterative methods, although it would not be good enough for display to the user.


The first point may be evaluated using





Xp−eX(Xu,Yu)−Xu





Yp−eY(Xu,Yu)−Yu


to form a result Xu,Yu represented as a two dimensional vector. This result is used by the respective iterative method to generate a new Xu,Yu which is again evaluated as above and so on. The generation of the new Xu,Yu is determined by the mechanism being used. Basically this typically involves projecting a gradient of the combined function towards a zero point and then evaluating the function at that new point. If the accuracy is sufficient then the method has to stop, otherwise the method projects the gradient again. The methods used also use some back tracking, limitation of travel and other techniques to improve reliability, but they are all widely known methods in a preferred embodiment.


If the iterative procedure fails to converge as described, then other starting points may be tried. Failing to converge is determined by the process taking too long to reach a value of Xu (and simultaneously Yu) such that Xp produced by Xu+eX(X u, Yu)=Xp (or Yp from the “Y-version” of the equation) is greater than a predetermined acceptable distance from the Xp or Yp measured. Additionally, singular matrices may occur during the evaluation of the iterative methods (basically the mechanism will require a divide by zero to determine the next point), which will result in another starting point being required, or the iterative methods may fail to be improving the value of Xu, Yu. In any of these cases a new point is taken which is distinct from any previous starting point and within the range of error from the base point. The selection of such new starting points, whilst not random, is arbitrary. In principal it is possible for the iterative mechanisms to fail to converge from all attempted starting points thus breaking the mapping so that the reported Xu, Yu, will not result in Xp, Yp but in practice this does not occur (this would typically require for example a surface is extremely uneven, producing areas that cannot be inverted, given the mathematical precision of the CPU—for a physical holding element errors will vary smoothly and thus avoid such pathological cases). If convergence is not achieved then the best value that was found during all iterations is used.


In another embodiment, the system described herein may include an implementation of a multi-axis interpolation. This embodiment may include the step of providing the correction map for the holding element being tilted around an axis. If correction maps are created for the holding element being tilted for example at 0°, 10° or 20°, then the correction of the physical position and of the position in the user's coordinate system at a given holding element coordinate at tilt angles of, for example, 5° and 15° can be derived by interpolation in each of the provided correction maps. The interpolation may be a non linear cubic spline interpolation. Such interpolation is able to cope with changes of several axes (for example changes in the z-direction or rotation of the holding element, in addition to the tilt of the holding element). In an embodiment, only single additional axis may be considered—in particular the tilt axis (T). In other embodiments, a rotational axis (R), a vertical movement axis (Z) and/or orthogonal movement axis (M) may also be considered. The position of these axes is assumed to be correct and not in need of independent correction. However, as the tilt, vertical position etc. is changed, the loading of the holding element hardware may change, causing position errors in X and Y.


It is now described how the mapping works with a single additional axis in an embodiment, and then it is discussed how more axes can be added. It may only be necessary to consider how an axis Xp,Yp is generated from a user request Xu Yu (i.e. how eX(Xu, Yu) is evaluated), because as in the 2-dimensional case, the reverse translation is determined by an iterative process calculating Xp, Yp from testing Xu,Yu values determined iteratively by a generic method. If only a single correction map is available then the additional axis data is ignored. If multiple correction maps (e.g. at 5°, 10°, 20°, 30°) are available then the following process may be used.


If the axis position of the independent axis (e.g. the tilt axis) is below the axis position of the lowest correction map, then the system may ignore all but the lowest map and returns a value as if in the 2-dimensional case from the lowest map. It is done similarly if the position is above the highest map. Otherwise, eX(Xu, Yu) may be calculated from every correction map in that axis. These eX values are converted to cubic splines and the value is interpolated at the current axis (tilt) position to give a new eX(Xu, Yu). This is done similarly for eY.


If there are more axes to consider then there are two possible approaches. One method is to consider the effects of the axes independently. Thus, setting a position T will add a certain error to a given position and setting a position Z will add another error to the same position, providing a combined error. Thus, the position Xp, Yp is considered to made of (Xu+eXZ+eXT, Yu+eYZ+eYT), with eXZ, eYZ, eXT, eYT are errors of the axis mentioned above and are considered independent, meaning that, for example, changing Z will not alter the value of eXT. If this assumption is made then this reduces considerably the amount of calculation required. A first correction map is made at position (T=T1, Z=Z1). The exact values of T1 and Z1 are not important. Further correction maps are made at (T=T2, Z=Z1), (T=T3, Z=Z1) and so forth. However, Z remains unchanged. Then correction maps are made at (T=T1, Z=Z2), (T=T1, Z=Z3) and so on. However, T remains unchanged. The correction maps are stored as a set with each axis, every axis stores the first map plus all maps taken where that axis was changed. So in this example if 5 tilt values were used and 4 Z values were used there would be 8 maps (as there is one map included in both), with axis T would be stored 5 maps and with axis Z would be stored 4 maps. To calculate eX(Xu, Yu, T, Z), eY(Xu, Yu, T, Z) the single additional axis method is used as above for Z and T. Thus, N values for eX(Xu,Yu) and eY(Xu, Yu) are produced where N is the number of axes—in this example 2. To combine these values, look again at the components of error. If the correction values from each axis were simply added, then the result would be erroneous. This is because correction map values for Z have a component from T1 in them (eXT1, eYT1) which is already present in the correction map values for T and similarly the T maps have the component from Z1. To remove this from eX, the sum of eXT1+eXZ1 is needed. This is available in the correction map taken at T=+T1 and Z=Z1. Thus the values eXT1Z1, eYT2Z1 are calculated from this map and subtracted from the sum of all other axes. Thus, the multidimension values for eX, eY are








eX
map



(


X
u

,

Y
u


)


=


(




n
=
1

N




eX
n



(


X
u

,

Y
u


)



)

-


(

N
-
1

)




eX
0



(


X
u

,

Y
u


)












eY
map



(


X
u

,

Y
u


)


=


(




n
=
1

N




eY
n



(


X
u

,

Y
u


)



)

-


(

N
-
1

)




eY
0



(


X
u

,

Y
u


)








where eX0 eY0 is the first correction map taken at the starting position for all axes. N represents the axes 1 to number of axes. eXn eYn are the error values that would be returned for the single axis interpolation. With the assumption of axis independence, the number of maps is in effect increased only linearly with each additional axis and the number of calculations grows similarly.


One should note that these do not need to be physical axes on the holding element, but could be environmental factors such as stage loading (loading of the holding element). For example weighted sample blocks can be added to the holding element (stage) to simulate different sample weights and correction maps recorded at each of these weightings. The weights are then removed. The sample can then be weighed and then the “weight axis” can be set to the weight of the sample.


If it is determined that the axes are not independent (e.g. combining the hypothetical weight axis above with a tilt axis), then maps may be generated for each combination of axis values. This gives larger growth in complexity and number of maps required as the number of axes is increased. In practical terms this means that only a few additional axes can be implemented. Splines may be generated for each in this case to calculate eX, eY. For example, if there are correction maps for T=0°, 10°, 20°, 30° and each combination with Z=5, 15, 25 then there are 12 maps in total. Getting a value eX for T=15, Z=20, X=5, Y=10 may involve calculating eX(5, 10) on every correction map. This creates a new surface x=T, y=Z, z=eXTZ(5, 10). First N splines are created with x, z pairs. (i.e. T, eXTZ pairs). All of these may then be interpolated to create M new values at T=15. These new values are formed into a spline and interpolated at Z=20. That gives the final eXTZ. By using splines to interpolate in one dimension at a time and then forming a spline in the next dimension from the results, this method can be expanded into any number of axes in an automatic fashion; however, even with a few axes, many maps and many calculations may be required, especially when iterative inversion is used.


Another embodiment of the system described herein may include, during the step of providing the error map, performing a step of correcting errors due to temperature influences. Since many grid positions can be examined during providing the error map, involving several movements of the holding element, thermal effects can cause temporary positioning errors as the holding element is warmed beyond normal use. To compensate for this, the current first position (current point zero) may be periodically measured and compared to the original first position. If there is any difference, the difference is then removed from the measured/calculated positions.


A further embodiment of the system described herein may use a light overlay reference sample as a reference object. A light manufactured reference sample can be used to get a baseline correction map for the holding element. The light reference sample can be mounted on top of another sample of the user. Since the weight of the reference sample is low in comparison to the user's heavy sample, the error map and correction map provided with the light reference sample mounted on another sample are, in principal, still accurate when compared to those without it. This reference sample can comprise features that make it easy to provide the error map or the correction map, for example a combination of large and small features regularly spaced and easily recognisable.


A further embodiment of the system described herein may include a step of storing the error map and providing a correction map only during later applications of the method for controlling and monitoring the holding element. Alternatively, the error map and the correction map are stored, and the stored correction map is used during later applications of the method. Another embodiment of the system described herein may include steps of providing a plurality of sample loads and providing an error map and a correction map for each of the sample loads. When a sample is used in later applications, one error map of the error maps and/or one correction map of the corrections maps is used which fits best to this sample.


A further embodiment of the system described herein may include providing several first positions and providing the error map as well as the correction map for each of said several first positions.


According further to the system described herein, a computer-readable medium storing executable code may be provided, wherein the executable code comprises a method, the steps of which include at least one of the method features as discussed elsewhere herein. The executable code can be carried out by at least one microprocessor.


According further to the system described herein, a device for controlling and monitoring a position of a holding element may be provided, wherein the holding element may hold a sample to be examined. The device may be capable of carrying out a method comprising at least one of the steps discussed elsewhere herein. The holding element may be part of the device and take a physical position in a first coordinate system when it is in a corresponding position in a second coordinate system. The device may further comprise a position device for providing at least one first position in the second coordinate system as a reference point. The first position may be provided by a reference object and the holding element may take a first physical position in the first coordinate system when it is in the first position in the second coordinate system. Furthermore, the device may include an error map device for providing at least one error map using at least one first position. The error map may include a deviation of at least one second physical position of the holding element in the first coordinate system from a corresponding position of the holding element in the second coordinate system. Moreover, the device may include a correction map device for providing at least one correction map using the error map, wherein the correction map may include a deviation of at least one third physical position of the holding element in the first coordinate system from a corresponding position of the holding element in the second coordinate system, wherein the correction map provides a non-linear coordinate translation between the first coordinate system and the second coordinate system. Additionally, the device may include a movement device for moving the holding element to the third physical position in the first coordinate system corresponding to the desired position in the second coordinate system according to the correction map, and/or a reporting device for reporting the position in the second coordinate system corresponding to the third physical position in the first coordinate system using the correction map.


In another embodiment, a device according to the system described herein may include at least one storing unit and/or at least one microprocessor.


The device may include a reference object which is designed as a reference grid having at least one vertex being the first position. The reference object can be designed as the sample to be examined.


In another embodiment, a device according to the system described herein may include, with respect to the error map, a deviation device for determining the deviation of the at least one second physical position of the holding element in the first coordinate system from the corresponding position of the holding element in the second coordinate system using interpolation.


Further, a device according to the system described herein may include, with respect to the correction map, a deviation device for determining the deviation of the at least one third physical position of the holding element in the first coordinate system from the corresponding position of the holding element in the second coordinate system using interpolation.


Furthermore, a device according to the system described herein may include an input device and an output device.


According further to the system described herein, a beam device, in particular a particle beam device, may be provided that includes a beam generator that generates a beam; an objective lens that focuses the beam on an object (sample) being held by a holding element; and a device for controlling and monitoring a position of said holding element and having at least one of the features as mentioned above. The beam device may be an electron beam device, such as a scanning electron microscope or a transmission electron microscope. The device may also be an ion beam device and/or any other particle beam device.


An advantage of the system described herein is that the values stored as discussed elsewhere herein may be used as a diagnostic tool for the device having the holding element. If the values currently stored are different from the values of a further measurement/calculation, then there may be an indication of some problems with the device.





BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the system described herein will now be explained in detail using the accompanying figures, briefly described as follows.



FIG. 1 is a schematic drawing of a scanning electron microscope according to an embodiment of the system described herein.



FIG. 2 is a schematic drawing of a part of a transmission electron microscope according to an embodiment of the system described herein.



FIG. 3 is a schematic drawing of a part of a beam device according to an embodiment of the system described herein.



FIG. 4 is a flow chart showing a method according to an embodiment of the system described herein.



FIG. 5 is another flow chart showing further method steps according to an embodiment of the system described herein.



FIG. 6 is a schematic drawing of a grid with initial rotation according to an embodiment of the system described herein.



FIG. 7
a,b are schematic drawings of reference objects according to an embodiment of the system described herein.



FIG. 8 is a flow chart showing a method according to an embodiment of the system described herein.



FIG. 9 is another flow chart showing another method according to an embodiment of the system described herein.



FIG. 10 is a further flow chart showing another method according to an embodiment of the system described herein.





DETAILED DESCRIPTION OF VARIOUS EMBODIMENTS

The system described herein will now be explained with respect to beam devices, in particular to two electron beam devices. One should note that the system described herein is not limited to electron beam devices, but can be arranged and/or used in any device involving the control of a position of a movable part, in particular in any particle beam device.



FIG. 1 shows a schematic drawing of a scanning electron microscope 1 (hereinafter also referred to as SEM) according to an embodiment of the system described herein. The SEM 1 comprises an electron gun 2 providing electrons. The electron gun 2 is designed as a cathode, preferably as a field emitter. Furthermore, the SEM 1 comprises an extraction electrode 3 and a further electrode 4 designed as an anode. The electrons emitted by the electron gun 2 are accelerated to the potential of the anode due to a potential difference between the electron gun 2 and the electrode 4. The electrode 4 is also one end of a beam guiding tube 5 which is arranged in a bore of an objective lens 8. The objective lens 8 comprises pole shoes 6 having coils 7. A deceleration unit is arranged in the direction of the optical axis 13 of the SEM 1, starting from the electron gun 2. This deceleration unit comprises an electrode 9 being a further end of the beam guiding tube 5 and a single electrode 10. The electrode 9 has anode potential like the beam guiding tube 5, whereas the single electrode 10 as well as a sample 12 arranged on a holding element 11 have a potential which is less than the anode potential. This enables the electrons provided by the electron gun 2 to be slowed down to a desired low energy which is suitable for a desired examination to be carried out by a user. The beam guiding tube 5 also comprises scanning means 15 which provide scanning of the electrons over the sample 12.


The holding element 11 is movable in three directions in space, namely the x-, the y- and the z-direction as schematically shown in FIG. 1. Each direction is perpendicular to each other direction, as schematically shown in FIG. 1. Additionally, the holding element 11 can be rotated about the optical axis 13 of the SEM 1, as schematically shown by arrow A. Furthermore, the holding element 11 is tiltable about the z-direction, as schematically shown by arrow B. The movement of the holding element 11 is controlled by a controlling device 27 comprising a memory unit 28 and a microprocessor 29. The controlling device 27 also comprises a display 32 and is also designed as an input device. Therefore, a user is able to input commands into the controlling device 27 and sees inputs and further information (like the position of a sample) on the display 32. Additionally, the controlling device 27 comprises a recordable medium 31 comprising executable code of a method which will be described below.


The SEM 1 also comprises a detector 14 which detects electrons resulting from an interaction of the electrons scanned over the sample 12. The detected electrons are backscattered electrons (BSE) and secondary electrons (SE). This detector 14 is used for providing an image of the sample 12.



FIG. 2 shows another example of a beam device having a movable holding element 11 for a sample to be examined according to an embodiment of the system described herein. The beam device is a transmission electron microscope 16 (hereinafter also referred to as TEM). FIG. 2 only shows an upper part of the TEM 16 comprising an electron source 17 in the form of a field emitter. In the direction of the optical axis 13, the TEM 16 also comprises electrodes 18, 19 and 20. The electrode 18 has a potential capable of extracting electrons from the electron source 17. The electrode 19 is capable of focussing the source position and the electrode 20 is capable of accelerating electrons provided by the electron source 17 to a desired potential. Furthermore, the TEM 16 comprises a multi-stage condenser having three magnet lenses 21, 22 and 23 followed by an objective lens 24. The objective lens 24 comprises a sample plane in which the holding element 11 is arranged. The holding element 11 is identical to the holding element 11 of FIG. 1 and is controlled by the same controlling device 27 as mentioned above. Therefore, it is also movable as described above. The TEM 16 also comprises a means 30 capable of visually measuring distances on a sample.


Since TEMs in general are well known in the art, further details are not described, in particular not the part of a TEM arranged behind the objective lens 24 in the direction of the optical axis 13.



FIG. 3 shows another schematic drawing of a beam device according to an embodiment of the system described herein. The features shown in FIG. 3 can also be features of the devices shown in FIGS. 1 and 2. The electron beam is generated by the electron gun 2. The sample 12 is mounted on the holding element 11. The sample 12 is a piece of material, for example a glass mask used in lithography or a silicon wafer with microchips. The sample 12 has mass and possible magnetic properties that may distort the position of the holding element 11. The sample 12 does not need to be flat and may have any appropriate shape.


The holding element 11 is motorized and driven by motors 34 and 35 as well as motor control 33, moving the holding element 11 in the x-direction and y-direction, respectively. Furthermore, the holding element 11 can be tilted around tilt axis 31. The holding element 11 can also be moved in the z-direction being perpendicular to the x-direction and y-direction. Furthermore, the holding element 11 can be rotated around the axis in the z-direction.


The motorized holding element 11 allows the user to position an area of interest of the sample 12 under the electron beam. As mentioned above, the weight of the sample 12 can influence the holding element 11 to move or bend by small amounts, thus changing the position under the electron beam. In addition, irregularities in the construction of the holding element 11 and/or the motors 34 and 35 and/or the motor control 33 can cause position errors of the holding element II.


The holding element 11 can be moved via a computer 38 having an input device as shown in FIG. 1 or via a joystick 42. However, the holding element 11 may be moved by other appropriate devices, including devices which are not controlled by the computer 38.


The motor control 33 converts the position information from the computer 38 (for example a position desired by the user and entered into the input device) into signals to move the motors 34 and 35 to the precise location as requested and according to a correction, as further described elsewhere herein. In addition, motor control 33 accepts signals from the joystick 42 to directly move the holding element 11 without computer control.


The device according to the system described herein may also include a position feedback 36 that receives signals from the motors 34 and 35 (or motor encoders not shown) and converts them to position information for the computer 38. The computer 38 can detect the position of the holding element 11 and can report the position of the holding element 11, even if the holding element 11 has been moved independently from the computer 38. In a further embodiment (not shown), the feedback position 36 and the motor control 33 may be embodied in one single unit.


The detector 14 detects electrons (secondary electrons or backscattered electrons) from the sample 12. The detector 14 converts detection signals into digital information. This digital information takes the form of an image of the sample 12 (area of sample 12) being irradiated by the electron beam. A frame grabber/display 37 takes this information and stores it. Moreover, the frame grabber/display 37 displays the image to the user.


One further unit of the device may be the coordinate display and entry unit 39. To navigate to points of interest (positions of interest) on the sample 12 the user (or an automatic user software) enters coordinates of a desired position. This may be a desired position stored in a file of an optical defect classification system 40 or a position directly entered by the user into the input device. Furthermore, the user can move the holding element 11 with the joystick 42. If the user sees a feature of interest, he can record the position of this feature so that he can examine this feature later. It should be noted that the user could be in fact an automated process and/or a human being.


The device according to the system described herein may also include a holding element mapping unit 41 which comprises previously stored relationships (error map and/or correction map) between requested holding element positions and actual physical positions of the holding element 11 that are used to find the correct position.


The computer 38 converts the position information from the position feedback 36 into coordinates of the user's coordinate system for display. In addition, it converts position coordinates entered by the user into signals for the motor control 33 to move the holding element II to the corrected requested desired position. This is done by a non-linear translation. However, the user only ever sees and enters position coordinates according to this translation which is explained further below.


An embodiment of the system described herein, explained below, may be used in connection with the devices of FIGS. 1, 2 and 3. First, an error map is provided by determining and storing deviations relating to a grid for specific grid points, those grid points and deviations being the basis for the determination of any deviation of any position of the holding element 11 which can be found in a correction map.


The embodiment mentioned below refers to movements of the holding element 11 in the plane defined by the x-direction and y-direction. However, the system described herein is not limited to such movements. In fact, the system described herein may also refer to any other movement, in particular to any other linear, rotational or tilt movement of the holding element.



FIGS. 4 and 5 are flow charts explaining a method according to the system described herein with respect to the deviations of grid points. In a step S1, a reference object comprising a grid is arranged at the holding element 11. FIG. 7a shows one example of a reference object 25 having a grid 26. Please note that it may not necessary for the system described herein to have a reference object 25 separate to the sample 12 to be examined. As already mentioned above, the sample 12 can itself be the reference object 25 comprising the grid 26, for example the light overlay grid as mentioned above.


In a step S2, the grid spacing between the given grid points is determined, e.g. by visually measuring the spacing between the grid points in the x-direction (grid spacing GX) and in the y-direction (grid spacing GY). This can be done by imaging via the detector 14 of the SEM 1 or by means 30 of the TEM 16. Following the step S2, at a step S3, a first position X0,Y0 is determined. This can be any grid point on the given grid 26. The first position X0,Y0 may be given by the top left corner of the grid 26. In a step S4, two variables, namely N and M are set to zero. N is iterated later on from 0 to the number of grid points in the direction of the x-coordinate, whereas M is iterated from 0 to the number of grid points in the direction of the y-coordinate.


As mentioned above, the grid 26 might have an initial rotation R which has to be taken into account. This rotation is determined in a step S5 by measuring the rotation or by calculating the rotation by suitable algorithms. Furthermore, a possible temperature influence on the holding element 11 is determined in the step S5. If there is any temperature influence, it is corrected in the step S5 as mentioned above. Additionally, in the step S5, if there is some tilt in the reference object 26 or sample 12, this could cause position errors. A way to compensate the effect of a tilt is by measuring of a focal length (necessary to generate a smallest particle probe on the sample) of the device 1, 16 at a number of positions of the reference object 26 or sample 12 and calculating the tilt using the different focal lengths measured. The result of the calculation can then be used to avoid the position errors. The errors with respect to the tilt are linear in effect and, therefore, can be removed by transformations such as the so called three point registration. After having concluded the step S5, the next theoretical grid point XT,YT is determined in a step S6. This is done by using the equations 5 and 6. When positioning the holding element 11 at XT,YT, the holding element 11 may take another position (namely the current or actual physical position XA,YA at which a further given grid point of the grid is arranged) which is different from XT,YT. Therefore, deviations between XT,YT and the actual physical position XA,YA in the x-direction (eX) and in the y-direction (eY) are measured in a step S7 (e.g. via imaging with detector 14 in the SEM 1 or by means 30 of the TEM 16). This can also be done by using the iterative process mentioned above to ensure a more accuracy.


In a following step S8, the measured deviations eX, eY, the corresponding theoretical grid point XT,YT and the actual physical grid point XA,YA are stored in the memory unit 28 of controlling device 27 (FIGS. 1 and 2) or the holding element mapping unit 41 (FIG. 3). The steps S6 to S8 may be repeated for any given grid point of grid 26, and the variables N and M are increased in increments of one for any further grid point.


According to another embodiment of the system described herein, it may be desirable to have more grid points than already given by the grid 26. Therefore, further grid points not originally in the grid 26 may be determined using interpolation (see FIG. 5, step S21). Step S21 may include the calculation of an optimum spacing between the given grid points, thereby minimizing the distance between the grid points and points of interest to be examined. In an embodiment, interpolation may be carried out by the procedure known as Delaunay Triangulation which is used for connecting the grid points with a series of lines so that every grid point is a vertex of at least one triangle, and no triangles overlap. A step S22 is carried out after the step S21 which provides the deviations eX and eY at each interpolated grid point. For determining eX and eY at one specific grid point, the triangle enclosing the specific grid point is found and a plane is formed using the deviations at the grid points determined in steps S1 to S10. The deviations eX and eY at that specific grid point is then determined using the plane. For specific grid points lying outside the convex hull determined by the Delaunay Triangulation, an interpolation based on inverse distance weighting may be used. The specific grid points and their corresponding deviations eX and eY are stored in the memory unit 28 of the controlling device 27 (step S23) or the holding element mapping unit 41.


Where reference marks are not evenly distributed across a sample or where parts of the sample do not contain reference marks, the reference marks are not necessarily arranged in a grid fashion, they are converted to a grid by interpolating from the triangulation. Then this grid is what is used for the error map stage later on. This means that random points are taken and are converted to a grid by determining an ideal spacing and origin. Then, the points are triangulated and a value is taken from the plane of the triangle that intersects with the grid point. This gives a grid that is suitable for use with cubic splines/bicubic interpolation.



FIG. 6 shows a schematic view of an embodiment of the grid 26 comprising several vertices and lines connecting the vertices. As mentioned above, the grid 26 can have an initial rotation and the grid spacing between the vertices might not be regular, as shown by some of the lines connecting the vertices. Any of the vertices shown can be the first position X0,Y0.


Determining the grid of this embodiment is not limited to a reference object comprising a grid with several grid points. In fact, two grid points, namely P1 (given by X1,Y1) and P2 (given by X2,Y2) having a specific distance from each other, are sufficient to carry out the steps as mentioned above. A reference object 25 and a sample 12, respectively, comprising positions P1 and P2 are shown in FIG. 7b.


The method mentioned above can be repeated for further first positions X0,Y0. An error map based on a grid is provided for each of the first positions and the method is repeated starting from the step S1 or the step S3.


The above-mentioned determined grid points and their corresponding deviations eX and eY stored in the memory unit 28 and holding element mapping unit 41 are used for providing a correction map, i.e. to determine any deviation at any position X,Y. This is done for the first position X0,Y0 or for each first position X0,Y0 (if there is more than one). Providing the correction map is further explained with the flow charts shown in FIGS. 8 and 9. FIG. 8 shows a flow chart of the steps involved when a desired position XD,YD of a sample 12 is entered in the controlling device 27 or the computer 38 by a user (step S24). Then, the error map based on the grid points and the deviations determined in the first step are taken (step S25) and are the basis for an interpolation of the deviations eXD and eYD for the desired position XD,YD (step S26). The interpolation used in this main step is a polynomial interpolation. In one particular embodiment, when XD,YD is requested, the determined grid is checked to find the 16 grid points that surround XD,YD in a 4 by 4“mini-grid”, with XD,YD lying in one of the central squares. If this lies outside the given grid points, the deviations eXD and eYD for XD,YD are determined using inverse distance weighting, whereas the eXD and eYD are taken from the stored values corresponding to the given grid points if XD,YD lies inside the given grid points.


The aforementioned is now explained in more detail. Each line of the “mini-grid” in the x-direction comprises 4 points. For each line a cubic interpolation is calculated for the X-value of XD. That means a cubic polynomial is determined that passes through the correct eX at all four points, and eXD at XD is calculated for that polynomial. This yields four more points (one for each line). The cubic polynomial that fits these points is calculated and solved for the Y-value of YD. This gives eYD.


Instead of the 16 point bicubic interpolation, a bicubic splines interpolation might also be used. This provides a globally smoothed function that normally leads to better results. The cubic splines embodiment functions as follows. When the points have been converted into a regularly spaced grid of dimension N*M (N and M are integers), N cubic splines are created using the value of eX (or eY) at each value of Y in an X column. To generate a spline in a column, the software determines a cubic function between each two consecutive values such that at the ends of the cubic the second derivative is zero and across the entire set of splines the second derivative has no discontinuities and the first derivative at the edge of each section matches that of the next cubic spline section and that has a value at each section boundary that matches the recorded values. This provides a smooth continuous function, along the entire length of the spline. When a position is requested, each of the N cubic splines is evaluated at Y=YD. This gives a set of M values eX1, eX2, . . . eXM. This set of values is used to create a new spline across the columns. This spline is then evaluated at X=XD, which provides a new value of eX. This is determined similarly for eY.


After having determined eXD and eYD for XD,YD, the holding element 11 is moved to XD+eXD/YD+eYD, corresponding to the XD,YD desired by a user (step S27). Alternatively, before moving the holding element 11, the interpolated values are stored in step S26A for the purpose of using them in later applications.



FIG. 9 shows the method used when reporting an actual physical position XP,YP to a user in coordinates of the user's coordinate system according to an embodiment of the system described herein. After having determined the actual physical position XP,YP (step S28), the corresponding coordinates Xu,Yu are searched (step S29) by the iterative process mentioned above using equations 7 and 8 and are shown in step S30 after finding the right values. Before showing them, the found values can be stored in step S29A. The simultaneous roots of equations 7 and 8 are found by routines, for example the iterative multidimensional Broyden secant method. This method was described above and basically evaluates the equations 7 and 8 and determines partial derivatives and then chooses a new value for Xu and Yu, until it has a value as close to zero as possible for both equations. The final value of Xu and Yu is reported to the user. Another iterative method, which might be used, is the Newton Raphson method.


The above mentioned steps may all be controlled by the microprocessor 29 of the controlling device 27 or the computer 38. This microprocessor 29 or computer 38 also controls the movement of the holding element 11. As mentioned above, in other embodiments, the holding element 11 may also be moved without using the microprocessor 29 or the computer 38 (for example by some external interface). However, the microprocessor 29 or the computer 38 may be provided with knowledge of the current physical position of the holding element 11 even if the holding element is not moved by the microprocessor 29 or the computer 38.


The method described above may be carried out in two ways. One way includes storing the error map and providing a correction map only during later applications of moving and monitoring the holding element. In the other way, the error map and the correction map are stored before the application, and the stored correction map is used during later applications of the method. The method described above may also be carried out in the following way. A plurality of sample loads is provided. Then, an error map and/or a correction map for each of these sample loads is/are provided. Therefore, a plurality of error maps and/or correction maps is/are provided. Then, one error map of these error maps and/or one correction map of these corrections maps is used for moving the holding element II and/or for reporting the position of the holding element 11 in the coordinate system of the user.


A further embodiment of the system described herein may include an implementation of a multi-axis interpolation which is shown in FIG. 10. This embodiment comprises the step of providing the correction map for the holding element 11 being tilted around the axis 31 and which was described further above. If correction maps are created for the holding element 11 being tilted for example at 0°, 10° or 20°, then the correction of the physical position and of the position in the user's coordinate system at a given holding element coordinate at tilt angles of, for example, 5° and 15° can be derived by interpolation. Error maps at different tilt angles α1, α2 and α3 are provided in step S100. A tilt angle β of the holding element 11 is provided in step S200. Then, the correction map for angle β is given by interpolation. The interpolation is preferably a non linear cubic spline interpolation. Such interpolation is able to cope with changes of several axes (for example changes in the z-direction or rotation of the holding element in addition to the tilt of the holding element).


Other embodiments of the invention will be apparent to those skilled in the art from a consideration of the specification or practice of the invention disclosed herein. It is intended that the specification and examples be considered as exemplary only, with the true scope and spirit of the invention being indicated by the following claims.

Claims
  • 1. A method for controlling and monitoring a position of a holding element, comprising: providing a first coordinate system for a current physical position of the holding element and providing a second coordinate system for a corresponding position of the holding element, the corresponding position corresponding in the second coordinate system to the current physical position in the first coordinate system;providing at least one first position in said second coordinate system as a reference point, wherein said first position is provided by a reference object, and wherein said holding element takes a first physical position in said first coordinate system in said first position;providing at least one error map using said at least one first position, wherein said at least one error map includes a deviation of at least one second physical position of said holding element in said first coordinate system from a corresponding position of said holding element in said second coordinate system;providing at least one correction map using said at least one error map, wherein said at least one correction map includes a deviation of at least one third physical position of said holding element in said first coordinate system from a corresponding position of said holding element in said second coordinate system, and wherein said at least one correction map provides a non-linear coordinate translation between said first coordinate system and said second coordinate system; andat least one of:moving said holding element to said third physical position in said first coordinate system corresponding to said corresponding position as a desired position in said second coordinate system according to said at least one correction map; andreporting said corresponding position in said second coordinate system corresponding to said third physical position in said first coordinate system using said at least one correction map.
  • 2. The method according to claim 1, further comprising: storing at least one of: the at least one error map and the at least one correction map.
  • 3. The method according to claim 1, wherein providing the at least one error map includes taking into account an initial rotation of said reference object.
  • 4. The method according to claim 1, wherein providing the at least one error map includes correcting a tilt of the reference object.
  • 5. The method according to claim 1, wherein said reference object is provided by a reference grid having at least one vertex being said first position.
  • 6. The method according to claim 1, wherein said deviation is measured visually.
  • 7. The method according to claim 1, wherein said deviation is calculated by an iterative process.
  • 8. The method according to claim 1, wherein said reference object is provided by a sample to be examined.
  • 9. The method according to claim 1, wherein providing said at least one error map includes determining said deviation of said at least one second physical position of said holding element in said first coordinate system from said corresponding position of said holding element in said second coordinate system using interpolation.
  • 10. The method according to claim 9, wherein said interpolation includes the method of Delaunay Triangulation.
  • 11. The method according to claim 9, wherein said interpolation includes the method of inverse distance weighting.
  • 12. The method according to claim 1, wherein providing said at least one correction map includes determining said deviation of said third physical position of said holding element in said first coordinate system from said corresponding position of said holding element in said second coordinate system using interpolation.
  • 13. The method according to claim 12, wherein said interpolation includes polynomial interpolation.
  • 14. The method according to claim 12, wherein said interpolation includes interpolation functions based on at least one of: bilinear splines, biquadratic splines, bicubic cubic splines and Delaunay Triangulation.
  • 15. The method according to claim 1, further comprising: entering a desired position of said holding element in an input device.
  • 16. The method according to claim 1, wherein reporting said corresponding position includes calculating said corresponding position in said second coordinate system by an iterative process.
  • 17. The method according to claim 1, wherein providing said at least one correction map includes providing said at least one correction map for said holding element being tilted around an axis.
  • 18. The method according to claim 1, wherein providing said at least one error map includes correcting errors due to temperature influences.
  • 19. The method according to claim 1, wherein a light overlay reference sample is used as said reference object.
  • 20. The method according to claim 1, wherein providing said at least one first position includes providing several first positions, and providing said at least one error map and said at least one correction map for each of said several first positions.
  • 21. The method according claim 1, further comprising: providing a plurality of sample loads;providing said at least one error map and said at least one correction map for each of said sample loads to generate a plurality of error maps and a plurality of correction maps; andusing at least one of: one error map of said plurality of error maps and one correction map of said plurality of corrections maps for at least one of:moving said holding element and reporting said corresponding position.
  • 22. A device for controlling and monitoring a position of a holding element, comprising: a first coordinate system for a current physical position for the holding element and a second coordinate system for a corresponding position of the holding element, the corresponding position corresponding in the second coordinate system to the current physical position in the first coordinate system;a position device that provides at least one first position in said second coordinate system as a reference point, wherein said first position is provided by a reference object, and wherein said holding element takes a first physical position in said first coordinate system in said first position;an error map device that provides at least one error map using said at least one first position, said at least one error map including a deviation of at least one second physical position of said holding element in said first coordinate system from a corresponding position of said holding element in said second coordinate system;a correction map device that provides at least one correction map using said at least one error map, wherein said at least one correction map includes a deviation of at least one third physical position of said holding element in said first coordinate system from a corresponding position of said holding element in said second coordinate system, and wherein said at least one correction map provides a non-linear coordinate translation between said first coordinate system and said second coordinate system; andat least one of:a movement device that moves said holding element to said third physical position in said first coordinate system corresponding to said corresponding position as a desired position in said second coordinate system according to said correction map; anda reporting device that reports said corresponding position in said second coordinate system corresponding to said third physical position in said first coordinate system using said at least one correction map.
  • 23. The device according to claim 22, further comprising: at least one storing unit.
  • 24. The device according to claim 22, further comprising: at least one microprocessor.
  • 25. The device according to claim 22, wherein said reference object is a reference grid having at least one vertex being said first position.
  • 26. The device according to claim 22, wherein said reference object is said sample to be examined.
  • 27. The device according to claim 22, further comprising: a determining device that determines said deviation of said second physical position of said holding element in said first coordinate system from said corresponding position of said holding element in said second coordinate system using interpolation.
  • 28. The device according to claim 22, further comprising: a determining device that determines said deviation of said third physical position of said holding element in said first coordinate system from said corresponding position of said holding element in said second coordinate system using interpolation.
  • 29. The device according to claim 22, further comprising: an input device and an output device.
  • 30. A beam device, comprising: a beam generator that generates a beam;an objective lens that focuses the beam on a sample to be examined being held by a holding element; anda device for controlling and monitoring a position of said holding element, wherein the device for controlling and monitoring includes: a first coordinate system for a current physical position for the holding element and a second coordinate system for a corresponding position of the holding element, the corresponding position corresponding in the second coordinate system to the current physical position in the first coordinate system;a position device that provides at least one first position in said second coordinate system as a reference point, wherein said first position is provided by a reference object, and wherein said holding element takes a first physical position in said first coordinate system in said first position;an error map device that provides at least one error map using said at least one first position, said at least one error map including a deviation of at least one second physical position of said holding element in said first coordinate system from a corresponding position of said holding element in said second coordinate system;a correction map device that provides at least one correction map using said at least one error map, wherein said at least one correction map includes a deviation of at least one third physical position of said holding element in said first coordinate system from a corresponding position of said holding element in said second coordinate system, and wherein said at least one correction map provides a non-linear coordinate translation between said first coordinate system and said second coordinate system; andat least one of:a movement device that moves said holding element to said third physical position in said first coordinate system corresponding to said corresponding position as a desired position in said second coordinate system according to said correction map; anda reporting device that reports said corresponding position in said second coordinate system corresponding to said third physical position in said first coordinate system using said at least one correction map.
  • 31. The beam device according to claim 30, wherein said beam device is a particle beam device.
  • 32. The beam device according to claim 30, wherein said beam device is an electron beam device.
  • 33. The beam device according to claim 31, wherein said beam device is at least one of: a scanning electron microscope and a transmission electron microscope.
  • 34. A computer-readable medium storing executable code that controls and monitors a position of a holding element, the computer-readable medium comprising: executable code that provides a first coordinate system for a current physical position of the holding element and a second coordinate system for a corresponding position of the holding element, the corresponding position corresponding in the second coordinate system to the current physical position in the first coordinate system;executable code that provides at least one first position in said second coordinate system as a reference point, wherein said first position is provided by a reference object, and wherein said holding element takes a first physical position in said first coordinate system in said first position;executable code that provides at least one error map using said at least one first position, said at least one error map including a deviation of at least one second physical position of said holding element in said first coordinate system from a corresponding position of said holding element in said second coordinate system;executable code that provides at least one correction map using said at least one error map, wherein said at least one correction map includes a deviation of at least one third physical position of said holding element in said first coordinate system from a corresponding position of said holding element in said second coordinate system, and wherein said at least one correction map provides a non-linear coordinate translation between said first coordinate system and said second coordinate system; andat least one of:executable code that moves said holding element to said third physical position in said first coordinate system corresponding to said corresponding position as a desired position in said second coordinate system according to said at least one correction map; andexecutable code that reports said corresponding position in said second coordinate system corresponding to said third physical position in said first coordinate system using said at least one correction map.
Priority Claims (1)
Number Date Country Kind
EP 07 011 573.8 Jun 2007 EP regional