Patent Number: 
Section: description

Embodiments in accordance with the invention will now be described with reference to the drawing figures. All automation systems need to be set properly before running automatic batch jobs. Settings required to run beam automation are not extreme, but fairly common: Charged-particle-beam (e.g., SEM) column is working properly The primary beam of the charged-particle-beam system (e.g., SEM) is well aligned and the FIIR center is within the image and not close to the edges of the image There are at least some features in image Detailed functional steps for auto-focus will now be described with reference to FIGS. 4-6. Auto-astigmatism correction in the x-direction or y-direction is performed using the same mechanism as for auto-focus except that the stigmator setting in x or y is adjusted instead of the focus. In our work, the image sharpness is used to measure the degree of defocus and astigmatism. (Prior-art techniques do not use the same measurement for both.) This is an advantage in simplifying and having the integrity of the processes. The ideal of image sharpness is similar to the ideal of focus goodness in auto-focus. In the prior art, the astigmatism is measured in different ways, for example, by the spot shape in the FFT image after thresholding. Some previous work uses the term image sharpness as well, but the definition and calculation of the image sharpness is different. Before auto-focus, image contrast or saturation level is automatically checked. Once the level is beyond a certain criteria, image contrast is automatically triggered. (A method for performing this xe2x80x9cauto-contrastxe2x80x9d adjustment is described below with reference to FIGS. 12A-12F.) Focus range could vary a lot at different system magnification settings. The focus range in the work is determined as a function of magnification, and automatically adjusted during run time. An image is xe2x80x9cgrabbedxe2x80x9d (e.g., acquired using the SEM or FIB, or retrieved from memory if previously acquired). Image sharpness is calculated as in the following three steps: (1) A ROI image is taken from the grabbed image, a round area with a radius of 150 pixels or a 300xc3x97300 pixels box, around the image rotation center. (The image rotation center may be previously determined using the method described below with reference to FIGS. 8-10.) (2) The ROI image is edge-enhanced using the Sobel edge enhancement method. The key of this enhancement is that it enhances the edges isotropically at every orientation. (3) The enhanced result is then calculated using a semi-Kurtosis method for all pixels in the ROI image. The final result represents the image sharpness. A number of selective positions of focus (stigmator setting if in the case of auto-astigmatism-correction) are chosen for the above process. The positions are chosen with the optimization method of Golden-Section-Search, described below with reference to FIGS. 11A-11F. The good focus position is searched in a loop until the pre-set resolution is met. The system is set at the focus. Frame averaging is usually not necessary, and is thus another good point for saving processing time. FIG. 4 shows principal steps of an automation process which can be used for auto-focus as well as for astigmatism correction. After initial setup, the column is aligned (steps 405 to 415). The center of rotation of the image is determined (step 415) and, if the center of RIIR is not in the image, the column is re-aligned. If the center of FIIR is in the image and not far from the image center, the center is captured and the position is stored for the use of automatic batch run. During batch job run, the beam automation process is done either at each new position of the sample or at selective positions depending on applications. The beam automation process is performed at every such position repetitively. In the process, the image contrast is checked first to see whether the image saturation is severe. If the contrast is bad, the auto-contrast routine is performed (step 425). If good, the image sharpness is checked and compared with a pre-stored sharpness score (step 430). If the sharpness is bad, the auto-focus process is started (step 435), otherwise it is skipped. The auto-focus is done at step 440 for the current sample position. The auto-focus could be triggered without the sharpness check. The check is designed to save time. Same as the auto-contrast, it could be performed without the saturation check and be started directly. The same mechanism applies to auto-astigmatism-correction. Step 435 could be replaced by a number of iterative loops of auto-focus and auto-astigmatism-correction, and at the end of each loop the store is checked to see whether the image sharpness is sufficiently high. This replacement procedure works under severe astigmatism as well. FIG. 5 shows principal steps of a focus automation process in accordance with the invention. The search range [f0, f3] is calculated according to the system""s magnification, and the tolerance xcex4 is defined (Step 500) according to the resolution requirement. Golden focus section points for focus f1 and focus f2 are obtained (step 505) using the Golden Section search method described below with reference to FIGS. 12A-12F. An image is acquired at a first focus f1 (step 510) and another image is acquired at focus f2 (step 515), where f0 less than f1 less than f2 less than f3. The image data is processed (step 520) to obtain two sharpness measurements: M(f1) and M(f2). The two measurements M(f1) and M(f2) are compared (step 525). If M(f1) is greater than M(f2) at step 525, the section smaller than f1 is cut off (step 530). The new search range is [f1, f3]. Replace M(f1) by M(f2) (step 535). The new search points (f0, f1, f2, f3) in the new search range are defined (step 540). An image is acquired at the new focus value f2 (step 545). The image data is processed to obtain a new sharpness measurement M(f2) (step 550). If the new smaller range is not less than the resolution factor xcex4 (step 555), the process repeats from step 525. If the range is less than the resolution factor xcex4, the larger index and focus are selected (step 595) and the charged-particle-beam system (e.g., SEM or FIB) is set at this focus (step 598). Oppositely, if M(f1) is not greater than M(f2) at step 525, the section larger than f2 is cut off (step 560), so that the remaining M(f2) is equal to M(f1) (step 565). Golden Sections are acquired with the new values of f1 and f2 (step 570). An image is acquired at the new focus value f1 (step 575). The image data is processed to obtain a new measurement M(f1) (step 580). If the range is not less than the resolution factor xcex4 (step 590), the process repeats from step 525. If the range is less than xcex4, the larger index and focus are selected (step 595) and the charged-particle-beam system (e.g., SEM or FIB) is set at this focus (step 598). The process of FIG. 5 is also used for astigmatism correction in the x-direction or the y-direction by substituting adjustment of the system stigmator for adjustment of focus. FIG. 6 shows principal steps of data processing methods in accordance with the invention. The FIIR center previously measured is read (step 605). A ROI image is selected having its center at the focus-rotation center (step 610), the ROI image preferably being a circular image area. The selected ROI image is processed with a Sobel edge enhancement filter (step 615). The final sharpness measurement is calculated using a semi-Kurtosis method for all pixels in the ROI image (Step 620). Because focus, correction of x-direction astigmatism and correction of y-direction astigmatism are functionally independent, the search for the ideal points can be achieved by running auto-focus, auto-x-stigmatism, and auto-y-stigmatism, respectively. However, since the auto-focus and auto-astigmatism corrections are all based on image processing, a good image cannot always be set by adjusting focus or stigmator settings only. For example, good focus cannot be set if astigmatism is severe, and vice versa. Therefore, in case of severe coexistence of out-of-focus and astigmatism, multiple loops of auto-focus and auto-stigmatism need to be done. Good image contrast is important to successfully performing auto-focus and auto-stigmatism. It is important to obtain more image information and avoid large digitization errors and therefore increase the reliability and repeatability. In summary, an auto-contrast method in accordance with the invention includes the following steps: set contrast to far ends grab ROI images (regardless of the rotation center) count the saturation levels average the counting to reduce noise effect reset contrast using Bisection method to search the desired contrast until a pre-set criteria is reached More detailed functional steps for auto-contrast in accordance with the invention are: set high and low end contrast so that the desired contrast is in between set the system at one contrast grab a ROI image around the center of the image, not specific count how many pixel values are above the pre-defined critical gray value T1 grab another ROI image count how many pixel values are above the same critical gray value T1 repeat a few more times the above steps in case of severe noise (normally one time is enough) average the number of pixels if more than one time check if the result is above the critical pixel number T2 if the result is above T1, it is stored as the new high end contrast if the result is below T1, it is stored as the new low end contrast, either the previous or this step will cut the search range by half the average of the low and high is used to set the system""s contrast repeat the above until the difference of low and high end contrast is smaller than a third criteria T3, the contrast resolution factor FIG. 7 shows an auto-contrast method in accordance with the invention. The search path is also optimized using Newton""s Bisection method (described below with reference to FIGS. 12A-12F). Values for the search range, tolerance xcex4, intensity xe2x80x9cpassxe2x80x9d level Ip, and xe2x80x9cpixels to passxe2x80x9d Np are defined (step 705). The system contrast setting is set at Clow (step 710). An image is acquired and a ROI image is selected from the grabbed image (step 715). Pixels having an intensity value greater than level Ip are counted (step 720). Steps 715 and 720 are repeated in case of severe noise, for example n times. The pixels are then averaged, M=Average {Ip(i)} (step 725). The result M is compared with Np (step 730). If M is greater than the defined xe2x80x9cpassxe2x80x9d value Np, it is stored as the new high-end contrast, Chigh (step 735). If the pixel-intensity average M is smaller than the defined xe2x80x9cpassxe2x80x9d value Np, it is stored as the new low-end contrast, Clow (step 740). The new system contrast is set equal to the average of the high-end contrast value and the low-end contrast value, (Chigh+Clow)/2, at step 745. In doing this, the new search range is decreased to half of the previous one. The difference, xcex94, between the high-end contrast value Chigh and the low-end contrast value Clow is determined (step 750) and checked against a defined resolution threshold (step 755). If the contrast-value difference xcex94 is not small enough, the charged-particle-beam-system contrast level is reset (step 760) and the process repeats from step 715. When the contrast-value difference xcex94 is within the tolerance, the process ends (step 765). Coarse auto-focus and coarse auto-astigmatism correction, and coarse auto-contrast are achieved in the same manner respectively as for the fine adjustments simply by setting the range factor larger. Increasing the search range by a factor of 2 increases the search time only by xcx9c10%, mostly importantlyxe2x80x94without the lost of resolution and reliability. Typically, the total number of frames for each of the above processes is about 11. The time for each process is less than 12 seconds for our system configuration, using a Pentium II computer and Windows NT operating-system platform. The achieved focus accuracy is high enough and comparable to what an expert can achieve manually. FIG. 8 illustrates a method of capturing the rotation center of an image in accordance with the invention. It is important that the ROI images have their center on or near the focus-image-rotation center, and the FIIR center should also stay still while focus changes. Notice that the FIIR center is not the image rotation center when scanning direction is adjusted. Image rotation during focus is not considered in prior-art auto-focus methods, and ironically is a nature of the focus, but ignored. It is perhaps partially because the prior-art works are dealing with the fine adjustment only. Even for the fine adjustment, ignoring FIIR will cause problems in accuracy and reliability. The system is designed to capture the rotation center in accordance with the invention. To do this, two images are acquired at two focus settings, one on each side of good focus, with the same off-focus level, as described below with reference to FIG. 10. A ROI of any unique feature is selected. Pattern recognition is used to find the offset and rotation angle with the 2nd image. The FIIR center is calculated based on the offset and the angle, as described below with reference to FIG. 9. The method of FIG. 8 begins with selection of a well-focused image that contains at least one unique feature (step 805). Let the focus be represented by F. The charged-particle-beam-system focus is set to over-focus at Fxe2x88x92xcex94F (step 810). An image is acquired (step 815). A model is trained using the unique feature in the image by pattern recognition (step 820). The charged-particle-beam-system focus is then set to under-focus at F+xcex94F (step 825). An image is acquired (step 830). The pattern is searched in this image using the trained model obtained in step 820 (step 835). The (x,y) offset and rotation angle xcex8 between the images acquired in steps 815 and 830 are found through pattern recognition (step 840). The focus-rotation center is then calculated mathematically (step 845). FIGS. 9 and 10 illustrate a method of calculating focus rotation center in accordance with the invention. Referring to FIG. 9, every feature on the image, in the plane of the semiconductor wafer, rotates the same angle xcex8. The rotation center point is at A(XA,YA). Due to the focus-induced image rotation, a corner point of a feature in the image moves from position P(x,y) to position Pxe2x80x2(xxe2x80x2,yxe2x80x2). To acquire the focus-rotation center point A(XA,YA): Adjust the focus setting to a level F at which the image is focused. The image is considered focused when the image sharpness is maximized. Set focus to a level at which the image is over focus, Fxe2x88x92xcex94F, acquire the image, and search the trained feature. Set focus to a level at which the image is under focused, F+xcex94F, acquire an image with a unique feature, and train the feature for image recognition. The search provides the coordinates of P(x,y) and Pxe2x80x2(xxe2x80x2,yxe2x80x2), and the rotation angle xcex8. Calculate the position of focus-rotation center A(XA, YA) as follows: Draw a line linking points P(x,y) and Pxe2x80x2(xxe2x80x2,yxe2x80x2). The distance {overscore (P Pxe2x80x2)} is a={square root over ((xxe2x80x2xe2x88x92x)2+(yxe2x80x2xe2x88x92y)2)}xe2x80x83xe2x80x83Equation [1] At the mid-point between points P and Pxe2x80x2, draw a line b perpendicular to {overscore (P Pxe2x80x2)}. The focus-rotation center must be on this line b. Draw a line through point Pxe2x80x2 and parallel to line b. Draw another line through point Pxe2x80x2 with an angle of xcex8/2 as shown. This lines crosses line b at the center of rotation A. A is the center of rotation. Clearly,                     b        =                              a            2                    ⁢          c          ⁢                      xe2x80x83                    ⁢                      tan            ⁡                          (                              θ                2                            )                                                          Equation  [2]                                          Y          A                =                  y          +                                                    y                xe2x80x2                            -              y                        2                    +                      b            ⁢                          xe2x80x83                        ⁢            cos            ⁢                          xe2x80x83                        ⁢            α                                              Equation  [3]                                          Since          ⁢                      xe2x80x83                    ⁢          α                =                              tan                          -              1                                ⁢                                                    y                xe2x80x2                            -              y                                                      x                xe2x80x2                            -                              x                xe2x80x2                                                                        Equation  [4]             xe2x80x83using Equations [1]-[4],       Y    A    =                    y        +                  y          xe2x80x2                    2        +                                                                                        (                                                            x                      xe2x80x2                                        -                    x                                    )                                2                            +                                                (                                                            y                      xe2x80x2                                        -                    y                                    )                                2                                              2                ·        c            ⁢              xe2x80x83            ⁢                        tan          ⁡                      (                          θ              2                        )                          ·                  cos          ⁡                      (                                          tan                                  -                  1                                            ⁡                              (                                                                            y                      xe2x80x2                                        -                    y                                                                              x                      xe2x80x2                                        -                    x                                                  )                                      )                               Similarly,             X      A        =                  x        xe2x80x2            +                        x          -                      x            xe2x80x2                          2            +              b        ⁢                  xe2x80x83                ⁢        sin        ⁢                  xe2x80x83                ⁢        α                        X      A        =                            x          +                      x            xe2x80x2                          2            +                                                                                                        (                                                                  x                        xe2x80x2                                            -                      x                                        )                                    2                                +                                                      (                                                                  y                        xe2x80x2                                            -                      y                                        )                                    2                                                      2                    ·          c                ⁢                  xe2x80x83                ⁢                              tan            ⁡                          (                              θ                2                            )                                ·                      sin            ⁡                          (                                                tan                                      -                    1                                                  ⁡                                  (                                                                                    y                        xe2x80x2                                            -                      y                                                                                      x                        xe2x80x2                                            -                      x                                                        )                                            )                                           FIGS. 12A-12F illustrate the sequence of Newton""s bisection method used in auto-contrast methods in accordance with the invention. As shown in FIG. 12A, the region [a,b] is searched, bisected, and truncated. At the midpoint x=(a+b)/2 of the search region in FIG. 12A, f(x) less than n, so the region from a to x is truncated and the region from x to b of FIG. 12A is searched in the next iteration shown in FIG. 12B as the region from a to b. At the midpoint x=(a+b)/2 in FIG. 12B, f(x) greater than n. The process is repeated as shown in FIGS. 12C-12F until the desired limit |bxe2x88x92a| less than xcex4 is achieved. The Golden Section Search method is known, for example, from W. PRESS et al., Golden Section Search in One Dimension, Numerical Recipes in C, Cambridge University Press (1992), xc2xa710.1, pp. 397-401. FIGS. 11A-11F illustrate the sequence of a Golden Section search in which a section of F is chosen as the search range. S as a function of F is searched for a peak value until a desired limit is reached. The Sobel edge enhancement filter used in embodiments of the invention is also known in the art. Matrices xe2x80x9cAxe2x80x9d and xe2x80x9cBxe2x80x9d are applied to the pixels of an image, to the eight closest neighbors of each pixel as well as the pixel itself A and B are operators. When they are applied to the pixels, A is equivalent to partial gradient along x direction, and B along y. DV/dr is the total gradient. The resulting enhancement is             Matrix      ⁢              xe2x80x83            ⁢      A        =                  [                                                            -                2                                                    0                                      2                                                                          -                1                                                    0                                      1                                                                          -                2                                                    0                                      2                                      ]            ⇒              δ                  δ          ⁢                      xe2x80x83                    ⁢          x                                Matrix      ⁢              xe2x80x83            ⁢      B        =                  [                                                            -                2                                                                    -                1                                                                    -                2                                                                        0                                      0                                      0                                                          2                                      1                                      2                                      ]            ⇒              δ                  δ          ⁢                      xe2x80x83                    ⁢          y                     Let""s denote the neighbor pixel values as:                     V        11                            V        12                            V        13                                V        21                            V        22                            V        23                                V        31                            V        32                            V        33             Thus, AV=xe2x88x922 V11+2 V13xe2x88x92V21+V23xe2x88x922 V31+V33 BV=xe2x88x922 V11xe2x88x92V12xe2x88x922 V13+2 V31+V32+2 V32 After this operation, the value of dv/dr is taken to replace V22 in the next image. The same operation goes for each pixel in the ROI including the pixels on the edge/edges. The resulting enhancement is                     ⅆ        v                    ⅆ        r              =                                        (                                          δ                ⁢                                  xe2x80x83                                ⁢                v                                            δ                ⁢                                  xe2x80x83                                ⁢                x                                      )                    2                +                              (                                          δ                ⁢                                  xe2x80x83                                ⁢                v                                            δ                ⁢                                  xe2x80x83                                ⁢                y                                      )                    2                                        ⅆ        v                    ⅆ        r              =                                        (                          A              ⁢                              xe2x80x83                            ⁢              V                        )                    2                +                              (                          B              ⁢                              xe2x80x83                            ⁢              V                        )                    2                     Thus for a circular ROI, the resulting image has a radius one pixel smaller. For a box ROI, the resultant ROI in the image is two rows and two columns smaller in size than the ROI prior to application of the Sobel filter. The full Kurtosis method is   K  =                    1        N            ⁢                        ∑          i          N                ⁢                              (                                                            V                  i                                -                                  V                  _                                            σ                        )                    4                      -    3   A semi-Kurtosis method can be used in embodiments of the present invention because the values are consistent and are being compared against one another rather than performing an absolute calculation:       K    xe2x80x2    =            ∑      i      N        ⁢                  (                              V            i                    -                      V            _                          )            4       The semi-Kurtosis method is statistical, so noise is averaged out at the same time as focusing is performed. This renders the operation insensitive to noise. Improvements of performance accurate repeatable far more robust than other gradient methods a lot faster than FFT method, and more robust independent of sample feature geometry independent of focus-induced image rotation independent of image deformation including changes in aspect ratio, and orthogonality very insensitive to various kinds of noise auto-contrast considered, which is crucial, and another factor not considered in other auto beam methods all search paths are optimized in various ways In many other methods, the curve of focus versus image sharpness measurement has two peaks in charged-particle-beam-system conditions with astigmatisms. However, with our definition of image sharpness, the measurement is not as sensitive to either one of the x and y directional astigmatism. The measurement curve therefore has only one peak in normal operation conditions that do not have huge astigmatism run time drift in x and/or y directions. Only with extremely bad astigmatisms, the image sharpness curve will show two peaks. If this happens, running auto-astigmatism-correct could bring the image sharpness curve back to one peak. The foregoing will focus on beam automation under normal operation conditions. Embodiments in accordance with the invention provide ROI method in every aspect of the listed automation methods. The purpose is to speed the process with a smaller block of data without loss of sufficient representative information. Specifically for auto-focus, the ROI selection is essential to avoid the FIIR effect. For auto-astigmatism-correction and auto-contrast, there is no need to place the ROI around the FIIR center. The size of ROI has been experimentally chosen and can vary within some range. Embodiments in accordance with the invention provide: 1. Method for processing data to obtain a measurement of focus, combining edge enhancement and Kurtosis (or variance) calculation 2. Method for processing data to get the measurement of astigmatism, same method as above 3. Optimization of the search paths 4. Method for Auto contrast 5. Method to measure focus rotation center Basic functional steps for an auto-focus method in accordance with the invention are shown in FIGS. 4, 5 and 6. test the system status is tested to assure it is in good condition to proceed with beam automation measure the image rotation center by imaging recognition grab an image and get data in the region of interest around image rotation center process the region of interest images with Sobel Edge enhancement filter statistically calculate the processed result with semi-Kurtosis to get image sharpness score search the focus position with the optimization method of Golden-Section-Search (FIG. 5) judge the level of image sharpness set the system at the focus found if proper While the detailed description above has been given with respect to a SEM system, methods and principles of the invention are applicable to charged-particle-beam systems of other types, such as focused-ion-beam (FIB) systems. Such systems include a charged-particle-beam column with associated control apparatus for controlling column parameters (such as focus, x-astigmatism and y-astigmatism); a processor with associated memory, display and input/output devices; operating software including instruction sets for operation of the column and the processor to acquire, process and manipulate images of a sample. Suitable SEM and FIB systems are commercially available, for example, from Schlumberger Technologies, Inc., of San Jose, Calif. FIG. 13 shows in block diagram some elements of such a system 1300. A vacuum chamber 1302 evacuated by pumps 1304 encloses a charged-particle-beam column 1306, a specimen stage 1308 for holding a sample specimen 1310 such as an integrated-circuit device, a detector 1312, and (in the case of a FIB system) a gas injector 1314. Column 1306 includes a charged-particle (e.g., electron or ion) source 1316, and charged-particle-optical elements 1318 for controlling alignment and deflection of a charged-particle beam 1320. Detector 1312 may comprise a scintillator 1322 and a photo-multiplier tube 1324 for detecting secondary electrons 1326 emitted when charged-particle beam 1320 impinges on sample specimen 1310. The system includes a workstation 1330 having a processor unit (CPU) 1334, a monitor 1336 and input/output (I/O) devices 1338 such as a keyboard and/or mouse. Workstation 1330 is linked by a bus 1340 to a system control unit 1342 comprising a control CPU, an image processor and image memory. System control unit 1342 communicates via a bus 1344 with a vacuum-pumps control 1346 for controlling vacuum pumps 1304, with gas injector control 1348 for controlling gas injector 1314 (in the case of a FIB system), with charged-particle-beam high-voltage control 1350 for controlling charged-particle source 1316, with charged-particle-beam alignment and deflection control 1352 for controlling charged-particle optical elements 1318, with imaging electronics 1354 which receive a detector signal from detector 1312, and with specimen-stage control 1356 for controlling specimen stage 1308 to position sample specimen 1310. System control unit 1342 preferably receives image information from imaging electronics 1354 and supplies beam control information to charged-particle-beam alignment and deflection control 1352. In operation, a specimen 1310 is placed in vacuum chamber 1302. Chamber 102 is evacuated. Under control of system control unit 1342, charged-particle beam 1320 is scanned over a selected region of the sample specimen to acquire an image of the selected region. Various techniques have been developed for using such systems in the diagnosis and (with FIB systems) repair of semiconductor integrated circuit devices. Those of skill in the art will recognize that these and other modifications can be made within the spirit and scope of the invention as defined in the claims and their full scope of equivalents.