A new general approach for solving the self-calibration problem on large area 2D ultra-precision coordinate measurement machines

The manufacturing of flat panel displays requires a number of photomasks for the placement of pixel patterns and supporting transistor arrays. For large area photomasks, dedicated ultra-precision writers have been developed for the production of these chromium patterns on glass or quartz plates. The dimensional tolerances in X and Y for absolute pattern placement on these plates, with areas measured in square meters, are in the range of 200–300 nm (3σ). To verify these photomasks, 2D ultra-precision coordinate measurement machines are used having even tighter tolerance requirements. This paper will present how the world standard metrology tool used for verifying large masks, the Micronic Mydata MMS15000, is calibrated without any other references than the wavelength of the interferometers in an extremely well-controlled temperature environment. This process is called self-calibration and is the only way to calibrate the metrology tool, as no square-meter-sized large area 2D traceable artifact is available. The only parameter that cannot be found using self-calibration is the absolute length scale. To make the MMS15000 traceable, a 1D reference rod, calibrated at a national metrology lab, is used. The reference plates used in the calibration of the MMS15000 may have sizes up to 1 m2 and a weight of 50 kg. Therefore, standard methods for self-calibration on a small scale with exact placements cannot be used in the large area case. A new, more general method had to be developed for the purpose of calibrating the MMS15000. Using this method, it is possible to calibrate the measurement tool down to an uncertainty level of <90 nm (3σ) over an area of (0.8 × 0.8) m2. The method used, which is based on the concept of iteration, does not introduce any more noise than the random noise introduced by the measurements, resulting in the lowest possible noise level that can be achieved by any self-calibration method.


Introduction
In the manufacturing process of large flat panel displays, square-meter-sized lithography photomasks are used. These Content from this work may be used under the terms of the Creative Commons Attribution 3.0 licence. Any further distribution of this work must maintain attribution to the author(s) and the title of the work, journal citation and DOI. masks consist of a chromium pattern on centimeter-thick glass or quartz plates. The pattern, typically made up of micrometersized lines and pixels, is written into a photoresist layer on top of the chromium layer by a mask writer, also referred to as a pattern generator. The geometric demands on the X, Yplacement of the pattern features are exceedingly tight. The required capability is assured by using a chromium patterned reference standard, called a golden plate (GP), with known placement errors relative to an absolute Cartesian grid. This GP is used to calibrate the mask writer and the mask measurement tool in order to let the end user make use of photomasks manufactured by different pattern generators.
In previous papers, the principles of the mask writers and the performance of the mask metrology tool MMS15000 have been discussed [1][2][3]. The MMS15000 is today the world standard metrology tool for measurements of photomasks with dimensions of up to (1.3 × 1.5) m 2 [4]. The most important conclusion from previous papers [1,2] was that the repeatability of the MMS15000, expressed as the standard deviation σ in the measured X, Y positions of hundreds of cross marks on a GP, is about 3 nm over a time frame of several hours. That level of stability of the measurement tool is an absolute requirement for being able to perform self-calibration of the entire system to a level where built-in deformations can be determined and finally be compensated for. In this paper, we present how we manage to calibrate the measurement tool to a perfect Cartesian grid using a novel self-calibration procedure.
As already pointed out, the most important prerequisite for achieving high absolute accuracy in X, Y measurements is that the measurement system is stable over time and shows good repeatability. In this context, it should also be explained that the display and mask manufacturing industries prefer to use the term registration instead of dimensional accuracy. Thus, in their terminology, the absolute registration requirement placed on the photomask pattern today is in the range of 200-300 nm (3σ ) over an area of square meters. It is obvious that the calibration and verification of these numbers requires a 2D measurement machine with extreme stability and ultra-high accuracy. Besides local measurements of critical dimensions of features, e.g. line widths, the MMS15000 is capable of absolute registration measurements with a traceable accuracy better than 90 nm (3σ ). To achieve this accuracy, a new self-calibration algorithm had to be developed, as there are no square-meter-sized traceable reference standards available today. The purpose of using the new algorithm is to find the absolute geometrical shape of both the stage of the measurement tool and the GP used in the calibration [3]. The self-calibration method presented in this paper differs in a number of aspects from the methods developed by Raugh and others in the 1990s [5][6][7]. Raugh put a lot of effort into deriving the mathematics behind self-calibration using a square lattice, and he also suggested implementations of the algorithms.
The fundamental principle of self-calibration is to solve an inverse problem and this is the same regardless of what kind of algorithm is used. It is in the details, generality and robustness against error sources that the differences between methods appear. With a measurement tool and a rigid plate filled with measurement marks, not necessarily with known X, Y locations, it is possible to achieve an absolute fit to a Cartesian coordinate system with a precision limited only by the noise level of the measurement tool. It is here assumed that the plate is rigid in the sense that it does not change shape when it is resting at different locations on the stage.
To minimize the noise level, a special measurement technique is used in the MMS15000. This technique does not rely on images grabbed by an ordinary CCD camera. Instead, we use our own developed measurement technique based on the principle of random sampling of pattern edges by a scanning laser beam. The measurement repeatability using this technique is better than 10 nm (3σ ) when measuring a matrix of cells on an artifact of (0.8 × 0.8) m 2 [1,2].
In figure 1, we show typical errors of a 2D measurement tool that can be assessed and compensated for by a selfcalibration process. These include first, second and higher orders of deviations from a Cartesian grid. A typical first-order deviation example is the orthogonality, defined as the angle deviation between the X-axis and Y-axis from 90 • . Another example is the stage bow, defined as the deviation from a straight line of the X-and Y-axes, respectively.
Although we refer to a rigid body GP in this paper, it must be realized that an almost square-meter-sized plate cannot be generally considered as rigid when we speak of a few hundred nm absolute placement accuracy. Therefore, the self-calibration algorithm must be robust not only against ordinary measurement noise but also for the 'shape instability' caused by the plate itself when subjected to gravitational forces on a non-perfectly flat stage. We have implemented a special function called Z-correction that automatically corrects for these kinds of deformations as described in [8]. The principle used is to put the plate at several different stage positions in order to minimize the errors caused by the fact that the plate is not rigid, and also to generate enough nonredundant measurements. A third reason for using several positions on the stage is that there are no available quartz glass plates large enough to cover the entire measurement stage.
Before describing the theory of the self-calibration procedure, the definitions of the parameters are presented in the following section. Then, simulation results are presented and discussed, and finally experimental results are shown.

Definitions
Throughout this paper, we use the definitions given below. Some are also graphically represented in figure 2.
Grid. A matrix of points in the X, Y plane separated by well-defined distances, the so-called pitch. We use two different grids, each with its own pitch, in the self-calibration of the MMS15000. One is the grid of physical measurement marks on a plate and the other is the correction grid used for correction of the MMS15000 stage after the calibration. i x , j y are integers indexing points in the X and Y directions, respectively, when addressing plate points (marks) distributed over the plate (P) and points in a measurement matrix (M).
(i x = 0, 1, 2, . . . , n x − 1) and (j y = 0, 1, 2, . . . , n y − 1) where n x , n y are the number of measurement marks on the plate in the X and Y directions, respectively. A nominal absolute position on the plate or stage is calculated by multiplying the index with the pitch in the corresponding direction, respectively. is x , js y are integers indexing in the X and Y directions, respectively, and used when addressing points in the matrix describing the stage (S).
Plate matrix (P) refers to the 8-16 mm thick large area plate with chromium measurement marks. On the nm scale, it is not perfect, and the 'shape' of the plate is described as a matrix of vectors P(i x , j y ) with their origin at the center of the plate.
Stage matrix (S). In analogy with the plate matrix, the 2D 'shape' of the measurement machine stage is described as a matrix of vectors S(i sx , j sy ) relative to the origin at the lower left corner of the stage.
Measurement matrix (M). Refers to a measurement of all plate measurement marks at a certain stage placement and rotation of the plate in the X, Y plane. A measurement of the measurement mark i x , j y on the plate is expressed as M k (i x , j y ) and represents the vector coordinates relative to the center of the stage.
Here, k is the index of the measurement view representing a specific rotation/placement of the plate on the stage.
Simulated measurement (SM). In the algorithm, simulated measurements are calculated based on the temporary representation of S, P and the placement and rotation, k, of each measurement M.
A simulated measurement at a certain location of the plate is expressed as a vector SM(i x , j y ).
Placement (pl k ) is a vector of two components x k , y k containing the absolute coordinates of the averaged center point of all measurement marks M k in a measurement view k on the stage.
Placement angle α(k) is obtained by calculating the angle from four corner marks of the measurement M k when it has been back-rotated (0, π /2, π , 3π /2). This angle is measured relative to the X-axis.

The self-calibration procedure
The goal of the self-calibration is to find the absolute geometrical shape of the stage of the measurement tool relative to a perfect Cartesian grid. As a bonus, we will also determine the shape deviations of the plate measurement marks. Thus, the shape of the plate, determined by the self-calibration, can then be used as an accurate reference, a so-called GP, for the calibration of other machines. In other words, the selfcalibration procedure is the method to use for the simultaneous calibration of both the stage and the GP. All deviations from the Cartesian grid can be found in the self-calibration procedure except the absolute scale, which needs a traceable calibration standard, e.g., the certified length artifact we use from Mikes [9]. However, the use of interferometers in an exceedingly well controlled environment, for the position read-out of the measurement head of the MMS15000, guarantees that errors in scale will be small before any traceable scale correction is done. The input data used in a self-calibration are obtained from several measurements of the same measurement marks on the plate when it is placed in different positions and rotations on the stage. We will refer to the position/rotation as a view of the plate. At least three different views are needed in the selfcalibration. Normally, more views are used for redundancy reasons and also in order to achieve good stability in the calibration along the edges of the plate as well as along the edges of the stage. In the large area display industry, it is very common to present these kinds of data using grid graphs with an absolute macro-scale combined with a local relative scale around each measurement mark. In figure 3, the principle of such a graph is shown.
In figure 4, we show a highly exaggerated example of a deformed plate with measurement marks (+) put on a deformed stage of the measurement machine. This is the starting point for the self-calibration process.
Masks used in the display manufacturing process are rectangular. Therefore, the matrix of measurement marks will not be a square matrix and the pitch between the measurement marks does not need to be the same in the X and Y directions. Throughout the self-calibration procedure, the deviations from the Cartesian grid, caused by the deformed stage, are internally described as a 2D function dependent on the absolute X and Y coordinates. By putting the plate with its measurement marks at different places on the stage, we obtain measurements that are samples of this 2D stage deformation function. This is based on  the assumption that the deformed plate with its measurement marks is rigid with a grid that is constant and independent of the position of the plate on the stage.
Precise alignment of square-meter-sized and heavy plates is very difficult. The traditional self-calibration methods [5][6][7] based on different views (i.e. very accurate placements by rotations and translations of the plate on the stage) cannot be fulfilled in our case. Therefore, we had to develop a self-calibration method that does not require precise alignment. A great advantage with this method is that we may use different placement schemes for different sizes of plates and stages and it provides access to the weighting of certain areas on the stage for a more accurate estimation of the stage shape.
On the plate, we use a set of the n x * n y measurement marks distributed in a matrix. The 'exact' locations of these marks are unknown but still they can be used to make a two-dimensional sampling of the MMS15000 stage deformation. Note that we will only have a representation of the shape of the plate at each discrete point i x , j y of the matrix P. The shape of the stage may be found at every accessible X and Y point. This is because the sampling of the stage can be done at any arbitrary point and not necessarily only in the matrix grid i sx , j sy representing the shape of the stage after the calibration. It is more a question of what spatial frequencies of errors we are interested in finding. In other words, the method we have developed is not limited to finding deviations on the stage with spatial frequencies lower than the Nyquist frequency set by the pitch of the marks on the plate [10]. Such a limitation is present in some other inverse self-calibration methods. In practice, several placements and rotations of the plate are used to cover the whole measurement machine stage that is normally much larger than the plate used for the calibration. Multiple placements will also generate redundancy and level out the small geometrical distortions generated by the plate itself when put at different positions and rotations on the stage. In the self-calibration process, the placement scheme for the different measurements of the plate on the stage is important. As mentioned before, three different placements of the plate are enough for a calibration provided that these placements are not redundant. This means that new spatial information on the plate and stage must be retrieved in each measurement. By representing each measurement of the plate as a set of equations, a large number of placements will generate a huge set of equations. For three placements, this system of equations will be over-determined and for this reason possible to solve. This problem is typically solved using a leastsquares fitting model and so it has been used by other authors regarding self-calibration [11]. But the interesting thing is that the system can actually be degenerate, i.e. the placements do not necessarily add information to generate a unique solution.
To avoid this problem, we have developed a dedicated software package to optimize the placement scheme for a given stage size in relation to the plate size. The details of that are beyond the scope of this paper.

Principle of the self-calibration algorithm
We start with an unknown plate matrix P and an unknown stage matrix S. The goal of the exercise is to find the absolute shape deviation of P and S relative to a perfect Cartesian grid. When S is known, we can subtract this systematic correction so that the stage will describe a Cartesian system only limited by the uncertainty caused by random noise and not by the shape deviations.
S will contain information about scale differences in the X and Y directions as well as orthogonality. By aligning Sy to the Cartesian Y-axis, the Sx components will carry information about the orthogonality error [3].
In the algorithm, we use two different coordinate systems, one for P with an origin in the center of P and one for S with the origin in the lower left corner of the stage S (see figure 4).
The over-determined problem gives us more data points than unknown parameters and we use a figure of merit similar to the least-squares criteria to determine when we cannot gain any more information from the measured data. The implementation of the self-calibration is performed by an iteration loop, see figure 5, for solving the inverse problem.
We can express the principles of the algorithm as follows. Let us assume that we have a flat rigid object, in our case a plate with measurement marks, and we put this object on a metrology tool stage for measurement. If this plate is strictly rigid, the measurement marks will be identically the same in the plate coordinate system. If the measured positions of the measurement marks relative to the center of the plate are identical when put at different locations on the tool stage, we can claim that the stage coordinate system of the measurement tool is consistent. On the contrary, if the measurement mark positions vary with the placement of the plate, the tool coordinate system is not consistent and needs to be adjusted. The different appearance of the plate in different views and placements, k, is therefore a measure of how much the tool coordinate system differs from the perfect Cartesian system in the certain placement of the plate. Using this difference for the compensation of the tool stage function is nothing more than a calibration of the tool stage, but with the important difference that we do not necessarily know anything about the absolute positions of the measurement marks, i.e. the 'shape' of the plate. Therefore, we approximate the measurement mark pattern on the plate by using the average shape of this pattern from the different views as the best estimation of the plate shape. By virtually replacing this new object on the tool stage in the same locations and rotations as in the first measurements, we can then update the tool stage coordinate system at these locations. If the plate shape in a second comparison is the same in all placements, we are through with the calibration, if not, the iterative procedure is repeated.
To explain this in more detail, we introduce a temporary stage correction function SCF which is a 2D function describing the correction of the stage S for the current iteration loop. This function is represented as a matrix with the pitch sp x and sp y and has the same size as S. This matrix is set to zero at the initiation of the calculation. M, P and SM are all matrices defined earlier and represent different states in the iteration. C is the merit matrix with the same size as S and the standard deviation of its elements gives the merit number of the calibration.
Details in the flow chart of figure 5 will now be described.
Finding a new version of the plate.
The brackets { . . . } represent in this step the average of k different measurement views, where 1 < k N. Each measurement has thus been done with different placements and rotations of the plate on the stage. For each placement, we calculate a new version of P new (k). Every placement and rotation also generates a calculated location vector pl(k) and an associated rotation angle α(k) in S that is saved.
The rotation α(k) is obtained from M(k) by calculating the angle from four corner measurement marks as shown in figure 6(a) for a −π /2 rotation measurement.
The properties pl(k) and α(k) are saved and updated in each iteration in the loop. The rotation of the plate on the stage is a multiple of right angle rotations, i.e. 0, π /2, π and 3π /2 with a small offset angle α due to a non-perfect alignment relative to the stage coordinate system.
Each point in M(k) that corresponds to an absolute coordinate in the stage coordinate system is now adjusted by an amount equal to the interpolated deviation in the current version of SCF old . A standard bi-linear interpolation is performed in the stage grid when this adjustment is calculated. After this operation, the result is back-rotated (R −1 ) with the placement rotation, i.e. 0, π /2, π and 3π /2 plus α as shown in figure 6(b). This can be expressed as pl(k)), (2) where R −1 α(k) expresses the back-rotation of the measurement k with the rotation angle α(k) plus a multiple of π /2, and SCF interpolated old (k) is a matrix of the same size as M(k) containing interpolated deviations in the measured points in M(k).
The result P new (k) is now aligned with the stage X-axis in the sense that the four corners do not have any rotation. This operation will therefore effectively lock each P new (k) rotation to be zero and therefore secure that the rotation of the final average plate P new is zero.
Finally, we calculate a new version of P new1 as the average of all P new0 (k) that may be expressed as Verify improvement by simulated measurements.
In this step, a simulated measurement is performed based on the current version of the calculated coordinates of the measurement marks on the plate, the SCF and the placement parameters (including placement angles). In other words, we ask the question 'what would a measurement be using current plate, stage and plate placements?' R + corresponds to a forward-rotation of a multiple of right angle rotations, i.e. 0, π /2, π and 3π /2 minus α(k).
N simulated measurements are created using the placement coordinates and rotations as where R + α(k) (P new1 ) express the forward-rotation of the P new with the angle α(k), and then placed in the stage coordinate system S by using the previously calculated placement pl(k).
Update the stage correction function.
In this step, we calculate the correction C based on the simulated measurements and the real measurements in the stage coordinate system. This correction is then used to update the SCF before the next iteration. Obviously, C = 0 if we have managed to calculate an absolutely correct SCF and P. So by calculating the standard deviation of the elements of matrix C, we obtain a figure of merit of the calibration. The value of this standard deviation is one of the termination criteria we use in the loop.
As the stage grid and plate measurement marks do not normally coincide, the simulated measurements SM new (k) and the real measurements M(k) will be located somewhere between the stage grid points. Therefore, a special 'backward'  (x i , y i ) is a plate measurement mark that is placed somewhere between four approximately correct stage grid points (black) represented by the SCF, which is in the process of being updated.
bi-linear interpolation method is used to distribute the difference SM new (k)−M(k) to the elements in the SCF.
We introduce the vector Cc(x i , y i ) as Here, x i , y i represents the coordinates, in the stage grid, of a plate measurement mark placement. The measurement mark will thus normally be surrounded by four approximately correct stage grid points given by the SCF. The coordinates x i , y i are extracted from the placement matrix pl(k) and α(k).
In figure 7, the principles of this method are shown. Only the nearest neighbors of the elements in the SCF to the measured Cc(x i , y i ) point will be adjusted in proportion to how far they are from that point. In the graph, this is exemplified for the SCF(i sx , j sy ) with the distances (dx, dy).
The position of Cc(x i , y i ) is thus a measure of how much the stage SCF shall be updated in the surrounding points. The update is only performed at grid points inside the rectangle defined by xfilter, yfilter from the point x i , y i in the correction map. xfilter is set to be equal to pp x and yfilter is set to be equal to pp y . These settings will guarantee that a point x i , y i will update all surrounding grid points in SCF inside the filter and not leave any non-updated points between the measured points in M(k).
The distribution of the adjustments to the grid points in the rectangle is performed by backward bi-linear interpolation based on distances between Cc(x i , y i ) and the grid points. Referring to figure 7, the correction SCF(i sx , j sy ) is calculated from Cc(x i , y i ) as and SCF(i sx , j sy )|yfilter − dy|/yfilter * c(i sx , j sy ) where dx is the distance between the stage grid point i sx and the point x i and dy is the distance between the stage grid point j sy and the point y i . C old (i sx , j sy ) is the current value in cell i sx , j sy that has been updated by other points in M.
Summing up the principles of the self-calibration procedure.
We start with an approximately correct but at the nm scale unknown stage and plate shape. As a first approximation, we assume that the stage is described as a perfect Cartesian grid, i.e. the SCF is just a table of zeros. If this assumption is correct, we must measure the same shape of the plate regardless of where it is placed on the stage. If this assumption is wrong, the best estimate we can make of the plate shape is to use the average shape of the plate as calculated from the measured measurement marks but represented in the plate coordinate system. After this correction of the marks on the plate, it is replaced on the stage in the same positions and rotations as before. After this replacement, we simulate a series of measurements. The difference between these new simulated measurements and the real measurements is a measure of how much we must modify the SCF. After this modification, we generate new measurements, using the current version of the SCF, that now differs less than the first one, where we assumed that the stage was perfect. By repeating this iterative procedure, we will gradually enhance the plate shape and the SCF. After the minimum error criteria have been reached, the process is terminated. As long we have measurements that are independent, i.e. no degeneration exists, this procedure will converge to the best estimation of both the shape of the plate and the SCF. In the following section, we will show the performance that can be achieved in large area measurements using this self-calibration approach.

Results and discussion
In order to demonstrate the performance of the self-calibration algorithm, we will perform two simulations and one case study of real data. The first simulation will illustrate the selfcalibration of a (0.75 × 0.80) m 2 area of the measurement tool stage function simultaneously with a deformed plate grid having 272 measurement marks. In the second simulation, the algorithm is subjected to random noise to test its robustness against variation in input data. As a final test of the algorithm, real measurement data are used from 380 measurement marks covering an area of (0.798 × 0.756) m 2 . In this case, the result is demonstrated as an overlay, i.e. how well the measurement marks of four independent measurements obtained at different rotations of the plate deviate from the average location of the four.
To avoid degeneration in the calibration process, the placement scheme of the plate is vital. For example, to extract orthogonality, rotations of π /2 must be involved for the plate. The algorithm we have developed therefore calculates a socalled coverage map for estimating the number of measured placements and rotated measurements covering a certain area around each grid point on the stage. Thus, a warning is raised if a certain placement scheme is degenerate or suffers from bad coverage. A detailed description of this is out of the scope of this paper.

Simulation of plate and stage shape
In the first simulation, we demonstrate a simple case of using four placements of a plate with (16 × 17) measurement marks Table 1. The different rotations and translations used in the simulation. Note that α (as described above) is the sum of the rotation and the misplacement angle. This is an example where all translations and misplacement angles are far from any grid points on the stage.

Misplacement Rotation angle
Translation X Translation Y Placement (radians) (milliradians) (mm) (mm) having a pitch of 50 mm in both pp x and pp y . The slightly deformed shape of this plate is shown in figure 8(a) using the multi-scale presentation introduced in figure 3.
For the simulated two-dimensional stage function, we use a grid of (30 × 30) points with a pitch of (40, 40) mm in the X and Y directions, respectively. We simulate a typical bow of the stage of about 5 μm in the Y direction as represented in the figure 8(b).
The first plate placement we use in this simulated measurement is the upper left corner of the stage. We aim the corner of the plate close to the absolute position (100,150) mm in the X and Y directions, respectively. Then we rotate and place the plate according to table 1 relative to the first plate position. The overlapping plate grid positions for the four cases are illustrated in figure 9.
By performing 10 000 iterations of the calibration loop shown in figure 5 and using the data obtained from the four placements/rotations in table 1, we obtain a result confirming the convergence of the algorithm. The result is presented as a grid difference graph between the simulated input plate ( figure 8(a)) and the calculated shape of the output plate and is a measure of the precision of the calibration. Another measure is the difference between the simulated stage grid and the final calculated shape of the stage grid function as delivered by the algorithm. In the latter case, it is only relevant to compare the output stage in the area covered by the placements of the plate. These two comparisons are shown in figures 10(a) and (b), respectively, showing that we have calculated the shape very accurately of both the plate and the stage. Note that the local scale revealing the errors is now reduced to 20 nm.
The 3σ variation for the difference of the plate is 3.7 nm and 2.6 nm in the X and Y directions, respectively. The 3σ variation for the difference of the stage is 4.5 nm and 3.3 nm in the X and Y directions, respectively.
In the calibrated area, it is likely that we have small absolute scale errors of the stage if it is compared to a traceable meter standard with higher accuracy than the interferometer-based systems we use in stage movements. For the same reason, the plate may have an absolute scale error. The algorithm will automatically move all scale errors into the matrix P that is a description of the plate. Since absolute scale needs to be calibrated using a traceable reference, the effect of the scale has been removed in the graphs in figure 10. As can be seen, the deviations along the edges are worse compared to the middle of the calibrated area. The reason  for this difference is the limited coverage of grid points at the edges, three measurements, compared to four different measurements in the middle.

Simulation of robustness against noise
In the second simulation, we add some random noise to the measurement. The three sigma variation of this noise is 18 nm in the X and Y directions, respectively. In this test, we will avoid interpolation errors and therefore we use the same pitch, 50 mm, of the plate and stage grids in the X and Y directions, respectively. Table 2 shows the placement scheme. The result after self-calibration yields a 3σ variation for the plate of 18 nm and 17 nm in the X and Y directions, respectively, and the corresponding 3σ variation for the stage is 16 nm and 15 nm, respectively, in the X and Y directions.  figure 11.

Misplacement Rotation angle
Translation X Translation Y Placement (radians) (milliradians) (mm) (mm) This simulation shows an ideal case never occurring in practice, but it is relevant for demonstrating the robustness of the algorithm against noise. As can be expected for a high performing system, the calculated output noise will be of the same order as the added input noise of the system.

Real measurement data
As a last demonstration of the performance of the algorithm, we will use real input data obtained from our MMS15000 measurement tool with the following placement scheme.
The pitch of the (20 × 19) matrix of measurement marks on the plate in this case is (42, 42) mm in the X and Y directions, respectively. Since we do not know the exact shape of the reference plate used, we need another measure of the quality of the calibration. So instead of comparing the output plate with a simulated input plate, we will measure the overlay, i.e. showing how well the measurement marks of four independent measurements at different rotations of the plate deviate from the average location of the four after the calibration algorithm has been applied. Each placement of the GP according to table 3 will thus generate its own output plate. We can express a measurement using the principal equation (b) (a) Figure 11. (a) The difference between the calculated output plate grid and the simulated plate grid when a random measurement noise of 18 nm (3σ ) has been added. (b) The same difference as in (a) but for the calculated output stage grid and the simulated stage grid in the covered area of the placements.
where P is placed in S as shown in table 3. In each placement, we therefore can calculate a plate as where i is the index of the placement. If we then back-rotate each P(i) (except the first one when i = 1) to 0 • , we have four different versions of the plate corresponding to each measurement M(i).
The output plate P ave is the average of these four calculated plates that may be expressed as In figure 12, the average plate and the overlay of the four plates are presented. In the overlay plot, each plate is compared with the average plate P ave .
In table 4, the 3σ variation of the difference between the measured marks for each placement and the average position of the marks is shown in the X and Y directions.
As seen in table 4, the deviations of the different plates compared to P ave are <150 nm (3σ ). These are typical  numbers in a self-calibration of the MMS15000 over an area of approximately (0.8 × 0.8) m 2 . The registration specification of the MMS15000 is 90 nm (3σ ) for a verification measurement of the placements 0, π /2, π and 3π /2 inside the calibrated area. It is not possible to fulfil this specification without correcting for the fact that the plate is not rigid during the calibration. As mentioned before, a special function called Z-correction is used for this purpose [8]. By using this function in a self-calibration, we have achieved a verified uncertainty around 50 nm (3σ ) over an area of (0.8 × 0.8) m 2 . In summary, we have shown by several simulations and also by use of real data that the presented self-calibration algorithm and its iteration loop converge and give robust results even when subjected to noise disturbances and arbitrary placements. We cannot prove convergence in a strict mathematical sense, although it is possible to prove it if we apply the same constraints as Raugh [5] did, i.e. exact placements of the plate, pitches of measurement marks and pitches used on the stage.

Conclusions
We have shown that by using a new 2D self-calibration algorithm for large area measurement machines we can achieve a calibrated precision in the nm range over square meters that is limited only by the noise level of the measurement tool. This is achieved by an iteration loop resulting in the stepwise improvement of fitted functions describing the shape of both the plate with measurement marks and the shape of the measurement machine stage. By simulations, we have verified that as long the placement is not degenerate, the algorithm converges to a correct solution. The presented results show that it is possible to achieve an absolute 3σ uncertainty of 150 nm over (0.8 × 0.8) m 2 by comparing the different plates corresponding to the different placements on the stage of the MMS15000 measurement tool. The presented algorithm is general in the sense that fewer constraints are needed compared to other self-calibration algorithms. The quality of the calibration can be measured in a robust way both by using simulations and also by comparing the different views of the plate on the stage when real data are used. To further improve the calibration, it is necessary to compensate the measurements for spatial deviations of the measurement sites caused by the mechanical deformations of the plate when it is placed on the stage. How this is done is the subject for a follow-up paper on our developed Z-correction method. It is possible to calibrate the entire measurement tool stage using a much smaller plate, either by first finding the shape of the plate with its measurement marks (in a smaller area of the stage) and then using it as a reference for a calibration of the larger area, or by designing a placement scheme covering the entire stage and in this way finding the shape of the stage and plate simultaneously. A full self-calibration plus verification of a large area stage (1.5 × 1.5 m 2 ) takes several days of time including tens of plate measurements. This means that an extremely time-and temperature-stable measurement machine has to be used if nanometer scale performance is to be achieved.