Abstract:
A profile parameter value is determined in integrated circuit metrology by: a) determining a diffraction signal difference based on a measured diffraction signal and a previously generated diffraction signal; b) determining a first profile parameter value based on the previously generated diffraction signal; c) determining a first profile parameter value change based on the diffraction signal difference; d) determining a second profile parameter value based on the first profile parameter value change; e) determining a second profile parameter value change between the first and second profile parameter values; f) determining if the second profile parameter value change meets one or more preset criteria; and g) when the second profile parameter value change fails to meet the one or more preset criteria, iterating c) to g) using as the diffraction signal difference in the iteration of step c), a diffraction signal difference determined based on the measured diffraction signal and a diffraction signal for the second profile parameter value previously determined in step d), and as the first profile parameter value in the iteration of step e), the second profile parameter value previously determined in step d).

Description:
BACKGROUND 
   1. Field of the Invention 
   The present application relates to integrated circuit (IC) metrology, and more particularly to a sample structure profile determining method in an optical metrology system. 
   2. Related Art 
   The use of integrated circuit (IC) metrology has been successful for measuring sample structures. With the progress of deep sub-micron technology, the accuracy and efficiency of sample structure profile measurement are becoming increasingly critical. Examples of a sample structure comprise IC and test structure on a wafer. 
   For example, an optical metrology system employs a light source to beam light on a wafer structure. The diffracted light is then measured as a diffraction signal. In turn, regression-based methods or library-based methods can be used for determining the sample structure profile that matches the measured diffraction signal. 
   In one approach, in order to find a match, the measured diffraction signal is compared with previously generated (pre-generated) diffraction signals in a diffraction signal library. These pre-generated diffraction signals are typically simulated by using a rigorous coupled-wave analysis (RCWA) method. 
   An associated profile parameter, which characterizes a sample structure profile that corresponds to the nearest diffraction signal, is typically determined using pre-generated profile parameters found in a profile library. Furthermore, a profile parameter value change is calculated according to the diffraction signal change. This calculated profile parameter value change is evaluated to determine whether the profile parameter value change satisfies preset criteria. If the preset criteria are met, the new profile parameter value, which is calculated by adding the profile parameter value change to the associated profile parameter, is considered an acceptable approximation of the true profile parameter value corresponding to the measured diffraction signal. Otherwise, another diffraction signal is simulated based on this newly calculated profile parameter value by using RCWA method (or some other rigorous or approximation methods) in order to get a new diffraction signal change between the measured diffraction signal and the newly simulated diffraction signal. Several iterations of the profile parameter value computation and the diffraction signal simulation might be needed to finally converge to a profile parameter value that is considered an acceptable approximation of the true profile parameter value. 
   The conventional computing method for calculating a profile parameter value change from a diffraction signal change is to use the inverse of a Jacobian matrix from a conversion matrix library or directly calculated during the optimization process. (The definition of the inverse of a Jacobian matrix is provided in the detailed description.) The Jacobian matrix reflects sensitivities of sample structure profile parameters, meaning the magnitude of change of a diffraction signal corresponding to a change in a profile parameter value. However, when these sensitivities as reflected by the Jacobian matrix are highly correlated, this conventional approach may lack convergent speed and/or accuracy. 
   To increase the convergent speed, large number of CPUs or supercomputers are used. However, adding multiple CPUs or supercomputers not only increases the production cost, but also may not solve the profile parameter value convergence/inaccuracy problem. Moreover, beside the method described above, other optimization methods also do not solve the profile parameter value convergence/inaccuracy problem. 
   Through experiments, optical metrology engineers determine if the profile parameters in a profile library are generated from certain ways of parameterization of the profile, some of the corresponding conversion Jacobian matrices in the conversion matrix library contain highly correlated sensitivities of the sample structure profile parameters. On the other hand, if some other profile parameterization methods are used to generate the profiles in a profile library, the Jacobian matrix high correlation problem, which results in a greater number of iterations to be performed and thus increases processing time, might be avoided. Since no one knows exactly which sample structure profile parameterization will generate an accurate mapping and fast converging profile parameter in a profile library, each optical metrology engineer uses his or her own sample structure profile parameters relying on his or her past experience and know-how. As such, multiple profile libraries are typically created for the same sample structure structure. However, in so doing, having to perform optical metrology from different libraries causes inconsistency and confusion in the metrology industry. 
   SUMMARY 
   In an exemplary embodiment, a profile parameter value is determined in integrated circuit metrology by: a) determining a diffraction signal difference based on a measured diffraction signal and a previously generated diffraction signal; b) determining a first profile parameter value based on the previously generated diffraction signal; c) determining a first profile parameter value change based on the diffraction signal difference; d) determining a second profile parameter value based on the first profile parameter value change; e) determining a second profile parameter value change between the first and second profile parameter values; f) determining if the second profile parameter value change meets one or more preset criteria; and g) when the second profile parameter value change fails to meet the one or more preset criteria, iterating c) to g) using as the diffraction signal difference in the iteration of step c), a diffraction signal difference determined based on the measured diffraction signal and a diffraction signal for the second profile parameter value previously determined in step d), and as the first profile parameter value in the iteration of step e), the second profile parameter value previously determined in step d). 

   
     DESCRIPTION OF DRAWING FIGURES 
     The present application can be better understood by reference to the following description taken in conjunction with the accompanying drawing figures, in which like parts may be referred to by like numerals: 
       FIG. 1  is an architectural diagram illustrating the use of optical metrology to measure the diffraction signals off wafer structures in a library-based metrology system in accordance with one embodiment. 
       FIG. 2  is a conceptual block diagram illustrating two profile determining methods and the conversion matrices involved in accordance with one embodiment. 
       FIG. 3  is a flow chart outlining steps for determining the true profile parameter value by either of the two profile determining methods in accordance with one embodiment. 
       FIG. 4  is a detailed flow chart outlining steps for determining the true profile parameter value by using a first profile determining method in accordance with the embodiment depicted in FIG.  3 . 
       FIG. 5  is an illustration of profile parameter value convergence steps from the initial profile parameter value to the true profile parameter value corresponding to the measured diffraction signal in accordance with one embodiment. 
       FIG. 6  is a detailed flow chart outlining steps for determining the true profile parameter value by using a second profile determining method in accordance with the embodiment depicted in FIG.  3 . 
       FIG. 7  is an illustration demonstrating the one-to-one relationship among the profile parameters, the diffraction signals, and the intermediate profile parameter values in their respective data spaces when the second profile determining method is used in accordance with one embodiment. 
       FIG. 8  is an illustration demonstrating the concept that the linear transformation matrix for a middle profile parameter point of a profile library can be used to perform the profile parameter value mapping from the intermediate profile data space to the profile data space for the whole profile library in accordance with one embodiment. 
   

   DETAILED DESCRIPTION 
   The following description sets forth numerous specific configurations, parameters, and the like. It should be recognized, however, that such description is not intended as a limitation on the scope of the present invention, but is instead provided as a description of exemplary embodiments. 
   In the following description, an optical metrology system is described to provide an example of a metrology system that can be used with the exemplary embodiments to be described. It is understood that various metrology systems can be used. In a similar manner, although a profile library, a diffraction signal library, and a conversion matrix library are described, a data space comprising profile parameters or a data space comprising diffraction signal parameters from diffraction signals or a data space comprising conversion Jacobian matrices or a data space comprising corresponding metrology signals can also be used. 
   Referring now to  FIG. 1 , an architectural diagram of a library-based optical metrology system is shown in accordance with one embodiment. Diagram  100  comprises a metrology system  110 , a profile application server  120 , a profile library  140 , a diffraction signal library  160 , a conversion matrix library  180 , and an IC fabrication system  190 . 
   Metrology system  110  may be an optical metrology system, electron metrology system, and the like. Examples of optical metrology systems include spectroscopic ellipsometers and reflectometers. Examples of electron metrology systems include critical dimension-scanning electron microscopes (CD-SEMs). The common characteristic of these systems is that one can simulate the response of a detected signal from a sample structure, but cannot determine the structure directly from the detected signal. 
   Profile application server  120  may be a device, software, or firmware capable of executing profile determining methods and procedures. 
   Profile library  140  may be a physical library in a storage device or a data store in a computer memory or a data store in a storage device. Profile library  140  includes a collection of previously generated (pre-generated) profile parameters created from the sample structure profile parameters of sample structure profiles. 
   Diffraction signal library  160  may be a physical library in a storage device or a data store in a computer memory or a data store in a storage device. Simulated by RCWA or other methods, diffraction signal library  160  comprises a collection of diffraction signals under ideal hardware specification and ideal material properties of the testing sample structures to be profiled, where the ideal hardware specification and ideal material properties may have been provided as nominal values by a manufacturer. Each pre-generated diffraction signal and its neighborhood in diffraction signal library  160  are associated with one profile parameter and its neighborhood in profile library  140 . 
   Conversion matrix library  180  may be a physical library in a storage device or a data store in a computer memory or a data store in a storage device. Conversion matrix library  180  comprises a collection of pre-calculated Jacobian matrices. The matrices can also be calculated during the profile inversion process. One Jacobian matrix corresponds to one pair of a diffraction signal and its neighborhood in diffraction signal library  160  and the associated profile parameter and its neighborhood in profile library  140 . 
   IC fabrication system  190  may be a lithographic, etching, stripping unit, and the like. 
   When metrology system  110  is an optical metrology system, metrology system  110  beams light on a wafer structure, measures the diffraction signal, and transmits the measured diffraction signal to the coupled profile application server  120 . 
   Profile application server  120  accesses diffraction signal library  160  to find a matching or nearest previously generated (pre-generated) diffraction signal by comparing the received diffraction signal with the pre-generated diffraction signals. After finding the matching or nearest diffraction signal to the measured diffraction signal, profile application server  120  accesses profile library  140  to find the associated profile parameter. Profile application server  120  also accesses conversion matrix library  180  to find the corresponding conversion Jacobian matrix. Note that the pre-simulated diffraction signal, profile parameters, and conversion Jacobian matrix can be stored and thus obtained from a single library. 
   Profile application server  120  computes the diffraction signal change between the measured diffraction signal and the nearest pre-generated diffraction signal, and selects a profile determining method to be used to calculate the profile parameter value change according to the degree of correlation among the sensitivities of sample structure profile parameters of the corresponding Jacobian matrix. 
   In one embodiment, the profile parameter value change can be computed using a profile determination method selected from a set of profile determination methods. For example, in the present embodiment, either a first profile determination method (method A) or a second profile determination method (method B). The profile parameter value change is evaluated in profile application server  120  to determine whether this profile parameter value change meets one or more preset criteria. If the preset criteria are not met, the profile determination method used is iterated. The preset criteria may be that certain error metric value is less than a preset value, or goodness of fit (GOF) is higher than a preset value, or the difference between the profile parameter values of the last two consecutive iterations is less than a preset value. Method A and method B will be described with respect to FIG.  2 . 
   If the profile parameter value change satisfies the preset criteria, the profile parameter value, calculated by adding the profile parameter value change to the associated profile parameter, is considered an acceptable approximation of the true profile parameter value corresponding to the measured diffraction signal. Otherwise, a new diffraction signal is simulated based on the calculated profile parameter value using RCWA method or any other rigorous or simulation method. A new profile parameter value change is computed from the new diffraction signal change between the newly simulated diffraction signal and the measured diffraction signal. The iteration of the profile parameter value computation and the diffraction signal simulation continues until the profile parameter value change meets the preset criteria. 
   Profile application server  120  makes the profile parameter value, which is considered an acceptable approximation of the true profile parameter value, available to IC fabrication system  190 . Alternatively, profile application server  120  transmits the profile parameter value, which is considered an acceptable approximation of the true profile parameter value, back to metrology system  110 . 
   Referring now to  FIG. 2  in view of  FIG. 1 , a conceptual block diagram  200  is shown illustrating two profile determining methods used by profile application server  120  to calculate the profile parameter value change Δp  210  from the diffraction signal change Δs  230  in accordance with one embodiment. 
   After finding a corresponding conversion Jacobian matrix J from conversion matrix library  180 , profile application server  120  evaluates this Jacobian matrix J to determine if the matrix J has a degree of correlation above a threshold level. If the degree of correlation is greater than the threshold level, the sensitivities of the sample structure profile parameters of matrix J are highly correlated. In one embodiment, a threshold level of about 0.95 is used. Note, however, that various threshold levels may be used depending on the application. 
   In one embodiment, when the sensitivities of sample structure profile parameters as provided by Jacobian matrix J are not highly correlated, profile determining method A is used to calculate a profile parameter value change from a diffraction signal data space S to a profile data space P. Profile determining method A directly uses matrix J −1    220 , the inverse of Jacobian matrix J, to calculate the profile parameter value change Δp  210  from the diffraction signal change Δs  230 . As understood herein, J −1  is defined as J −1 ≡(J t J) −1  J t . 
   When the sensitivities of sample structure profile parameters as provided by Jacobian matrix J are highly correlated, parameter decorrelation is performed. For parameter decorrelation, profile determining method B is used to introduce a third data space, an intermediate profile data space {tilde over (Q)}, to indirectly calculate a profile parameter value change from a diffraction signal data space S to a profile data space P. Specifically, an alternative Jacobian matrix L and a linear transformation matrix U  260  are derived from the Jacobian matrix J. In comparison to the sensitivities of sample structure profile parameters as provided by Jacobian matrix J, the sensitivities of sample structure profile parameter as provided by Jacobian matrix L are not as highly correlated. More specifically, for an entire domain of the profile data space, sensitivities of sample structure profile parameters as provided by L could be correlated. But the degree of correlation for L is expected to be smaller than that of J. Depending on the accuracy required, different Jacobian matrices could be used for different profile points within a profile data space. Or, a single Jacobian matrix could be used for an entire domain of the profile data space. 
   An intermediate profile parameter value change Δ{tilde over (q)}  250  within the intermediate profile data space {tilde over (Q)} is computed first from the diffraction signal change Δs  230  by using either local or global optimization method. In turn, the profile parameter value change Δp  210  will be mapped from the intermediate profile parameter value change Δ{tilde over (q)}  250  by using the linear transformation matrix U  260 . Examples of local optimization methods are Gauss-Newton method and Levenberg-Marquardt method, and examples of global optimization methods are genetic algorithm and simulated annealing. 
   As shown in diagram  200  in  FIG. 2 , profile determining method B comprises two steps. In step  1  of profile determining method B, the intermediate profile parameter value change Δ{tilde over (q)}  250  within a intermediate profile data space {tilde over (Q)} is computed from the diffraction signal change Δs  230  within a diffraction signal data space S by using an optimization algorithm. 
   In step  2  of profile determining method B, the profile parameter value change Δp  210  within a profile data space P is mapped from the intermediate profile parameter value change Δ{tilde over (q)}  250  calculated in step  1  by using the linear transformation matrix U  260 . 
   Referring now to  FIG. 3  in view of  FIGS. 1 and 2 , a flow chart  300  is shown outlining the true profile parameter value p t  convergence steps used by profile application server  120  in accordance with one embodiment. 
   The entry condition for flow chart  300  is that the measured diffraction signal s m  is already received by profile application server  120  from metrology system  110 . 
   In step  310 , profile application server  120  accesses diffraction signal library  160  to find a nearest diffraction signal s s  by comparing the received diffraction signal s m  with the pre-generated diffraction signals. As understood herein, step  310  can also be performed using global optimization techniques. 
   In step  320 , profile application server  120  computes the diffraction signal change Δs between the measured diffraction signal s m  and the nearest diffraction signal s s :
 
 Δs=s   m   −s   s 
 
   In step  330 , profile application server  120  accesses profile library  140  to find the pre-generated profile parameter p s  that characterizes a sample structure profile associated with the diffraction signal s s  This associated profile parameter p s  is the profile convergence starting point for determining p t . 
   In step  340 , profile application server  120  accesses conversion matrix library  180  to find the corresponding conversion Jacobian matrix J s  according to the pre-generated diffraction signal s s . The Jacobian matrix J s  is used to map the neighborhood of p s  to the neighborhood of s s . Specifically, the inverse of J s  is used to obtain the profile parameter value change Δp from the diffraction signal change Δs calculated in step  320 . 
   In step  350 , the Jacobian matrix J s  is evaluated by profile application server  120  to determine whether the sensitivities of sample structure profile parameters as provided by J s  are highly correlated. If these sensitivities of sample structure profile parameters are not highly correlated, the profile parameter value considered an acceptable approximation of the true profile parameter value p t  is determined in step  360  by using profile determining method A. Otherwise, if the sensitivities of sample structure profile parameters of J s  are highly correlated, the profile parameter value p t  is determined in step  370  by using profile determining method B. 
   Referring now to  FIG. 4  in view of  FIG. 3 , a detailed flow chart  400  is shown outlining profile determining method A in accordance with one embodiment. Specifically, flow chart  400  is the detailed explanation for step  360  of flow chart  300  in FIG.  3 . 
   The entry condition for flow chart  400  is that the conversion Jacobian matrix J s  is already evaluated (in step  350 ) as not having highly correlated sensitivities of sample structure profile parameters. The diffraction signal change Δs between the measured diffraction signal s m  and the nearest pre-generated diffraction signal s s  is computed (in step  320 ). The associated profile parameter p s  is obtained from profile library  140  (in step  330 ). The profile parameter p s , corresponding to the nearest diffraction signal s s , is used as the profile convergence starting point. 
   In step  410 , a loop count i is set to one. The loop count i is used to track the number of profile computing iterations needed to converge to the profile parameter value considered an acceptable approximation of the true profile parameter parameter value p t , which characterizes a sample structure profile corresponds to the measured diffraction signal s m . 
   In step  420 , the profile parameter value change Δp is calculated directly through the inverse of Jacobian matrix J s . 
   Since the change of each profile parameter value p will contribute to the change of the diffraction signal s through the Jacobian matrix J s . The approximation equation between the profile parameter value change Δp and the diffraction signal change Δs is as follows:
 
Δ s≈J   s   Δp. 
 
   Therefore, the profile parameter value change Δp can be calculated as: 
    Δ p≈J   s   −1   Δs.   
   In step  430 , the profile parameter value p 1  is calculated by adding the profile parameter value change Δp to the profile convergence starting point p s :
 
 p   1   =p   s   +Δp 
 
where i is the number of iterations for profile parameter value computation and diffraction signal simulation.
 
   In step  440 , the profile parameter value change Δp calculated in step  420  is evaluated to determine whether this profile parameter value change Δp satisfies the preset criteria. The preset criteria may be that certain error metric value is less than a preset value, or goodness of fit (GOF) is higher than a preset value, or the difference between the profile parameter values of the last two consecutive iterations is less than a preset value. One exemplary matching test that is well known in the art is that of minimum mean square error. It is understood that other error metric algorithms may also be used. 
   In step  450 , the profile parameter value change Δp meets the preset criteria. Therefore, the profile parameter value p 1  calculated in step  430  is deemed as an acceptable approximation of the true profile parameter value p t  for the measured diffraction signal s m . 
   In step  460 , the profile parameter value change Δp does not meet the preset criteria. Therefore, the profile parameter value p i  calculated in step  430  is set as the new profile convergence starting point p s :
 
 p   s   =p   1 
 
where i is the number of iterations for the diffraction signal simulation and profile computation.
 
   In step  470 , a diffraction signal s 1  is simulated by using RCWA method (or another rigorous or approximation method) based on the profile parameter value p 1  calculated in step  430 . 
   In step  480 , the new diffraction signal change Δs between the measured diffraction signal s m  and the newly simulated diffraction signal s i  is calculated as
 
 Δs=s   m   −s   1 .
 
   In step  490 , the loop count i is increased by one to keep track the number of diffraction signal simulation and profile computation iterations. The profile parameter value computation loops back to step  420  and the calculation of the simulated diffraction signal and the profile parameter value is iterated until the profile parameter value change Δp calculated in step  420  meets the preset criteria. The loop count can be an integer and the iterations can be terminated if the loop count reaches a predetermined maximum value. 
   The extraction of the profile parameter value considered an acceptable approximation of the true profile parameter parameter value can be viewed as an optimization process. Exemplary optimization techniques include global optimization techniques such as genetic algorithm and local optimization techniques such as the steepest descent algorithm. 
   Referring now to  FIG. 5  in view of  FIGS. 3 and 4 , an illustration  500  is shown demonstrating the profile convergence steps in a profile data space P by using profile determining method A. The dashed lines mark the border of the neighborhood of each profile parameter and diffraction signal point. The point of p s  is a pre-generated profile parameter according to the sample structure profile parameters of a wafer structure. The point of s s  is the associated diffraction signal, which is simulated using RCWA method based on the point of p s . The point of s m  is the measured diffraction signal obtained from metrology system  110  by profile application server  120 . Since s m  is located in the neighborhood of s s , s s  is the nearest pre-generated diffraction signal for s m  (step  310  of flow chart  300 ). After calculating the diffraction signal change Δs between s m  and s s  (step  320 ), the associated profile parameter p s  is found for s s  (Step  330 ) and is set to be the profile convergence starting point. The conversion Jacobian matrix J s  is obtained from conversion matrix library  180  (step  340 ). The inverse of Jacobian matrix J s  is used to compute the corresponding profile parameter value change from any diffraction signal change within the neighborhood of s s  (step  420  of flow chart  400  in FIG.  4 ). 
   Referring still to  FIG. 5 , four profile parameter values p 1 , p 2 , p 3 , and p 4  are calculated by profile determining method A, and three diffraction signals s 1 , s 2 , and s 3  are simulated by using RCWA methods based on the profile parameter value p 1 , p 2 , and p 3  respectively. The profile parameter value change Δp between p 3  and p 4  is assumed to meet the preset criteria. Therefore, p 4  is determined as the profile parameter value p t  for the measured diffraction signal s m . 
   Specifically, since s m  is located within the neighborhood of s s , s s  is the nearest diffraction signal for s m . After the associated profile parameter p s  is found for the nearest diffraction signal s s  (step  330  of flow chart  300 ), the number of iteration loop count is reset to one (step  410  of flow chart  400 ). The profile parameter value change Δp is computed (step  420  of flow chart  400 ), and p 1  is calculated to be the first convergent profile parameter value (step  430  of flow chart  400 ). The computed profile parameter value change Δp is evaluated to determine whether the profile parameter value change Δp meets the preset criteria (step  440  of flow chart  400  in FIG.  4 ). Since the profile parameter value change Δp between p 1  and p s  does not meet the preset criteria, the calculated profile parameter value p 1  is set to be the new profile convergence starting point (step  460  of flow chart  400 ). An associated diffraction signal s 1  is simulated according to p 1  by using RCWA method (step  470  of flow chart  400 ). According to this new simulated diffraction signal s 1 , a new diffraction signal change Δs between the measured diffraction signal s m  and the newly simulated diffraction signal s 1  is calculated (step  480  of flow chart  400 ). After the increase of the iteration loop count by one (step  490  of flow chart  400 ), a new profile parameter value change Δp is calculated and evaluated (step  420  and  440  of flow chart  400 ). The iteration of profile parameter value computation and diffraction signal simulation continues until the profile parameter value change Δp, which is the profile difference between profile parameter value p 3  and p 4  meets the preset criteria. Thus, p 4  is identified as the approximation of the true profile parameter value p t  for the measured diffraction signal s m  (step  450  of flow chart  400 ). 
   Referring now to  FIG. 6  in view of  FIG. 3 , a detailed flow chart  600  is shown outlining profile determining method B. Flow chart  600  is the detailed explanation for step  370  of flow chart  300  in FIG.  3 . The entry condition for flow chart  600  is that the conversion Jacobian matrix J s  is already evaluated (in step  350  of flow chart  300  in  FIG. 3 ) to have highly correlated sensitivities of sample structure profile parameters. The diffraction signal change Δs between the measured diffraction signal s m  and the nearest diffraction signal s s  is computed (step  320  of flow chart  300 ). The profile parameter p s  is obtained from profile library  140  (step  330  of flow chart  300 ). The profile parameter p s , corresponding to the nearest diffraction signal s s , is used as the starting point for converging to p t . Moreover, the loop count i is set to one in order to keep track the number of iterations for the profile computation and diffraction signal simulation. 
   In step  615 , the alternative uncorrelated Jacobian matrix L s  and the linear transformation matrix T s  are derived from the highly correlated Jacobian matrix J s . 
   Specifically, for a given matrix J s mxn , the covariance matrix M can be written as:
 
 M= cov( J   s )=( K   t   K )/( m− 1)
 
where: 
       K   =       J   s     -       1   m     ⁢       (         1       …       1           ⋮                                   1       …       1         )       m   ×   m       ×       J   s     ·             
 
   Because sensitivities of sample structure profile parameters as provided by Jacobian matrix J s  are highly correlated, another Jacobian matrix L s  is derived through the matrix M. Matrix M can be diagonalized to obtain matrix N that is the cov(L s ). In so doing, L s  has sensitivities of sample structure profile parameters that are not correlated. 
   Specifically, since the matrix M is real and symmetrical, a linear transformation matrix T s  exists and satisfies:
 
 N=T   s   t    MT   s 
 
where N results from diagonalizing the matrix M, and N is the covariance matrix of the alternative uncorrelated Jacobian matrix L s , and where:
 
 L   s   =J   s   T   s .
 
That is:
 
 Δs≈J   s   Δp≈[∂s/∂p][∂p/∂q]Δ{tilde over (q)}≈   J   s    T   s    Δ{tilde over (q)}≈   L   s   Δ{tilde over (q)} 
 
where:
 
 J   s   =[∂s/∂p], T   s   =[∂p/∂q], L   s   =[∂s/∂q]. 
 
   In step  620 , the intermediate profile parameter value change Δ{tilde over (q)} is determined using an optimization algorithm based on Δs. 
   In step  625 , the profile parameter value change p 1 =p s +Δp is mapped by the linear transformation matrix U s  from the intermediate profile parameter value change
 
 {tilde over (q)}   i   ={tilde over (q)}   s   +Δ{tilde over (q)} 
 
where {tilde over (q)} is the mapping of P using the transformation matrix U from space P to {tilde over (Q)}:
 
 p   i   ≈U   s   {tilde over (q)}   i , wherein  U   s   =λI +(1−λ) T   s ,
 
where λε[0,1], and I is an identity matrix.
 
   In step  630 , the profile parameter value Δp is calculated, where i is the number of iterations for profile computation and diffraction signal simulation. 
   In step  635 , the profile parameter value change Δp calculated in step  625  is evaluated to determine whether this profile parameter value change Δp satisfies the preset criteria. The preset criteria may be that certain error metric value is less than a preset value, or goodness of fit (GOF) is higher than a preset value, or the difference between the profile parameter values of the last two consecutive iterations is less than a present value. One exemplary matching test that is well known in the art is that of minimum mean square error. It is understood that other error metric algorithms may also be used. 
   In step  640 , the profile parameter value change Δp 1  meets the preset criteria, and therefore, the profile parameter value p i  calculated in step  630  is deemed as an acceptable approximation to the true profile parameter value p t  for the measured diffraction signal s m . 
   In step  645 , since the profile parameter value change Δp does not meet the preset criteria, the profile parameter value p 1  calculated in step  625  is set as the new profile convergence starting point p s :
 
 p   s   =p   1 
 
where i is the number of iterations for the diffraction signal simulation and profile computation.
 
   In step  650 , a new diffraction signal s 1  is simulated by using RCWA method based on the profile parameter value p 1  calculated in step  630 . 
   In step  655 , the new diffraction signal change Δs between the measured diffraction signal s m  and the newly simulated diffraction signal s 1  is computed as
 
 Δs=s   m   −s   i .
 
   In step  660 , the loop count i is increased by one to keep track the number of iterations for diffraction signal simulation and profile computation. The profile parameter value computation loops back to step  620  and the calculation of the simulated diffraction signal and the profile parameter value is iterated until the profile parameter value change Δp calculated in step  625  meets the preset criteria. 
   The extraction of the profile parameter value considered an acceptable approximation of the true profile parameter parameter value can be viewed as an optimization process. Exemplary optimization techniques include global optimization techniques such as genetic algorithm and local optimization techniques such as the steepest descent algorithm. 
   Referring now to  FIG. 7  in view of  FIG. 6 , a graphical illustration  700  is shown demonstrating the one-to-one corresponding relationship among the profile parameters in a profile data space P, the diffraction signals in a diffraction signal data space S, and the intermediate profile parameter values in an intermediate profile data space {tilde over (Q)} when profile determining method B is used. 
   In diagram  700 , the dashed lines represent the neighborhood borders of the data points. The optimization algorithm is used to convert from the diffraction signal change Δs within the neighborhood of s B  in the diffraction signal data space S to the corresponding intermediate profile parameter value change Δ{tilde over (q)} within the neighborhood of {tilde over (q)} B  in the intermediate profile data space {tilde over (Q)}. 
   The linear transformation matrix U B  maps {tilde over (Q)} to P. Specifically, U B  is used to map {tilde over (q)} B  (in the intermediate profile data space {tilde over (Q)}) to p B  in the profile data space P. 
   RCWA method is used to simulate the diffraction signals in the diffraction signal data space S from the profile parameters in the profile data space P. The diffraction signal s B  is simulated based on the profile parameter p B . 
   Referring now to  FIG. 8 , a graphical illustration  800  is shown demonstrating that a linear transformation matrix U for a profile point in a profile library can be used to perform the profile parameter value mapping from a domain of an intermediate profile data space {tilde over (Q)} to a domain of a profile data space P in accordance with one embodiment. 
   As shown in diagram  800 , a linear transformation matrix U exists for every profile parameter point (and its neighborhood) in a profile data space {tilde over (Q)}. On the other hand, the profile mapping process can be further simplified. 
   Specifically, the matrix U (i.e., U E ) of a point in the middle of a domain in a profile library can be used to perform all the profile mapping from the shown domain of the intermediate profile data space {tilde over (Q)} to the shown domain of the profile data space P. In so doing, a Jacobian matrix (from {tilde over (Q)} to S) can have a covariance matrix that deviates from a diagonal matrix. However, as understood herein, in domain {tilde over (Q)} the size of the domain sharing one transformation matrix U is chosen to limit the deviation of the covariance matrix (of a Jacobian matrix) from a diagonal matrix. 
   The foregoing descriptions of specific embodiments have been presented for purposes of illustration and description. They are not intended to be exhaustive or to limit the invention to the precise forms disclosed. Obviously, many modifications and variations are possible in light of the above teaching. The embodiments were chosen and described in order to explain the principles and the application of the invention, thereby enabling others skilled in the art to utilize the invention in its various embodiments and modifications according to the particular purpose contemplated. The scope of the invention is intended to be defined by the claims appended hereto and their equivalents.