Abstract:
A laser trimming apparatus calibration system including controlling a laser beam positioning mechanism to move a laser beam to a desired nominal laser position, imprinting a mark on a medium to establish an actual laser position, comparing the imprinted mark with the desired nominal position and producing a result indicative of the difference between the actual position and the desired nominal position. The system further including providing an illuminated mark at a desired illuminated mark nominal position, controlling the laser beam positioning mechanism to direct an optical path to the desired illuminated mark position, establishing an actual illuminated mark position by directing light from the desired illuminated mark nominal position along the optical path to the detection device and comparing the actual illuminated mark position with the nominal illuminated mark position.

Description:
BACKGROUND OF THE INVENTION 
     The present invention relates to calibrating laser trimming apparatus. 
     Laser trimmers are used to trim electrical components (e.g., resistors, capacitors or conductors) on semiconductor wafers used in integrated circuits. They typically employ a laser beam source, a laser beam positioning mechanism which directs the beam to a desired location on the semiconductor workpiece using mirrors that are precisely moved by galvanometers or x-y stage, and a lens, which focuses the beam. 
     Wells et al., &#34;A Technique for Automatic Focusing and Alignment of Monolithic Circuits for Laser Trimming,&#34; Third Annual Microelectronics Measurement, Technology Seminar Proceedings (Mar. 17-18, 1981 San Jose, CA) discloses calibrating the positioning of a beam by moving a laser beam over a surface that is marked at known locations in a manner that affects reflectance of the beam and measuring the beam&#39;s reflectance at various galvanometer positions associated with nominal positions on the workpiece, using a photodetector that receives part of the reflectance back through the optical path. 
     As used herein, &#34;nominal laser position&#34; means the desired position of the laser on the workpiece; it is the position to which the laser beam positioning mechanism is instructed to place the laser. &#34;Actual position&#34; means the actual position of the laser on the workpiece. 
     SUMMARY OF THE INVENTION 
     It has been discovered that laser trimming apparatus can be advantageously calibrated by controlling a laser beam positioning mechanism to move a laser beam to a desired nominal laser position on a workpiece region, imprinting a mark (e.g., cutting a line) on a medium to establish an actual laser position, scanning the imprinted mark to detect an actual laser position, and comparing the actual laser position with the desired nominal position. 
     In preferred embodiments, the laser beam operates on one wavelength, and the mark is scanned with a detection device that operates on a different wavelength; the detection device views a field that covers a portion of the overall workpiece region, and determines the position of a mark within the field; the laser beam is moved to and calibrated at a plurality of positions within the workpiece region; the system operates over two perpendicular axes; there is generation of a function that describes the relationship between the nominal position and the actual position; and the function accurately describes the relationship between the actual position and the nominal position over the entire workpiece region; and the laser trimming apparatus is additionally calibrated by providing an illuminated mark (e.g., a reference grid) at a second wavelength, controlling the laser beam positioning mechanism so as to direct an optical path to a desired illuminated mark nominal position, establishing an actual illuminated mark position by directing light from the nominal position along the optical path to a detection device and comparing the actual illuminated mark position with the desired nominal illuminated mark position. 
     In another aspect, the invention involved advantageously determining where a beam position is in relation to a camera field of view by controlling a laser beam positioning mechanism to move a laser beam to a desired nominal laser position on a workpiece region, imprinting a mark on a medium to establish an actual laser position, scanning the imprinted mark to detect an actual laser position, comparing the actual position with the desired nominal position and determining the beam position based on the comparing. 
     Other advantages and features of the invention will be apparent from the following description of a preferred embodiment thereof and from the claims. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENT 
     I first briefly describe the drawings. 
     DRAWINGS 
     FIG. 1 is a block-diagram of laser trimming apparatus according to the invention. 
     FIG. 1A shows a diagrammatic, perspective view of components of the FIG. 1 system. 
     FIGS. 2 and 2A are flow charts describing a method of calibrating the FIG. 1 laser trimming appartus according to the invention. 
     FIG. 3 is a flow chart describing a calibration step of the FIG. 2 method. 
     FIGS. 4A and 4B are diagrams illustrating positioning errors that are corrected by the invention. 
     FIG. 5 is an illustration of data matrices of the FIG. 2 method. 
    
    
     STRUCTURE 
     Referring to FIG. 1, laser trimming apparatus 10 includes infrared laser 12 (having a wavelength of 1064 nm and available from Quantronix), which outputs laser beam 14 along optical path 15 to and through laser beam positioning mechanism 16 to workpiece region 20. Laser beam positioning mechanism 16, includes a pair of mirrors and attached respective galvanometers 17, 19 (available from General Scanning under the trade designation Z619). Beam positioning mechanism 16 directs laser beam 14 through lens 18 (a nontelecentric, achromatized at two frequencies, 10-inch focal length lens manufactured by Melles-Griot) to workpiece region 20, having a field size of 4000×4000 mils broken down into four quadrants by x and y coordinate axes (each axis having locations from -2000 to +2000). Laser beam positioning mechanism 16 moves laser beam 14 along two perpendicular axes thereby providing two dimensional positioning of laser beam 12, across workpiece region 20. Each mirror and associated galvanometer 17, 19 moves the beam along its respective x or y axis under control of computer 21. Each galvanometer can move its respective mirror through 2 16  distinct angular positions when causing beam 12 to move 4,000 mils across region 20. Illumination devices 22 are yellow halogen lights that produce visible light having a narrow bandwidth to illuminate workpiece region 20. 
     Beam splitter 24 (a partially reflective mirror) is located within optical path 15 to direct light energy reflected back along path 15 from workpiece region 20 to detection device 26. Detection device 26 includes television camera 29, and associated frame grabber 27, which digitizes the video input from television camera 29 to obtain pixel data representing a two-dimensional image of a portion of workpiece region 20. The pixel data are stored in a memory of frame grabber 27. 
     Camera 29 has a 110 mil×160 mil field of view, and frame grabber 27 has an associated 480×520 pixel array. Each pixel is assigned a 8-bit intensity value. Computer 21 analyzes the pixel data to determine where a mark (e.g., a line) in the workpiece region 20 is located. E.g., when determining the location of the vertical line, computer 21 takes the first derivative of pixel data along a horizontal row. The derivative shows where the change in intensity has the greatest, thereby showing the two edges of the actual line of interest. 
     OPERATION 
     Referring to FIG. 1, the position of the laser beam 14 on workpiece region 20 is controlled along two axes by beam positioning mechanism 16. Beam positioning mechanism 16 moves beam 14 a plurality of distinct angles that correspond to linear distances called &#34;beam steps&#34; along the workpiece surface. The average beam step size is the average resolution, which is given by equation 1: 
     
         Resolution=workpiece region width/number of beam steps along axis (1) 
    
     The number of beam steps from the edge of the workpiece region required to position beam 12 to a nominal beam position in the -2000 to 2000 coordinate axis system equals the total number of beam steps (4000) divided by two (to set beam 12 to the center of workpiece region 20) plus the desired position divided by the resolution. (See equation 2.) 
     
         Steps=(total steps)/2+desired position/resolution          (2) 
    
     Equation 2 applies to both the x and the y axes. This position is &#34;nominal&#34; because the actual beam position is different, owing to, e.g., linearity error due to the nonlinearity of the beam steps on work piece region 20 with respect to angular steps of the galvanometer, distortion error due to the distorting effects of the optical elements, and orthogonality error due to the galvanometers not being perfectly perpendicular to each other. 
     FIGS. 4A and 4B illustrate the differences between a 0.5 inch spaced grid of nominal positions and the actual positions. FIG. 4A shows the differences between the nominal and actual x values (assuming that the nominal y value equals the actual y value), and FIG. 4B shows the differences between the nominal and actual y values (assuming that the nominal x value equals the actual x value). The data of this example were averaged to be symmetric about both axes. The differences are in mils, and the opposite half of each field (not shown in the figures) is a mirror image of the half shown. In practice, the differences are not necessarily symmetric about the origin, nor are the errors at axis intersections necessarily zero. 
     The calibrating system according to the invention makes adjustments to remove the effects of these sources of error and provides accurate positioning over the whole field of the system. Additionally, because different wavelengths are used by laser 12 and detection device 26, which determines the actual position of the laser beam, refraction error due to the different paths of light of different wavelengths through the lens must also be corrected. Refraction errors offset actual positions from nominal positions by amounts which are substantially linear throughout the workpiece region. 
     Referring to FIG. 2, a method of calibrating laser trimming apparatus 10 includes steps 30-36. Step 30 involves generating data used in calibrating the system using light energy having a first frequency, e.g., visible light. Step 32 involves calibrating apparatus 10 at the first frequency. Step 34 involves generating data used in calibrating the system for light energy at a second frequency, i.e., infrared. Step 36 involves calibrating apparatus 10 at the second frequency. 
     In generating data step 30, a surface with vertical and horizontal etched lines precisely spaced every 250 mils is placed in position to act as a reference grid. The surface is illuminated with illumination devices 22; beam positioning mechanism 16 is adjusted to position optical path 15 to a nominal position on workpiece region 20; detection device 26 detects the difference along the x axis between the nominal position and the actual position of the optical path, and this information is stored in computer 21. Beam positioning mechanism 16 is adjusted to a new nominal position (one galvanometer (the x galvanometer) is stationary while the other galvanometer (the y galvanometer) is moved) and detection device 26 detects a new actual position. Measurements are made for fifteen more nominal positions to generate data along a first vertical line; then the x galvanometer is moved, and data along a second vertical line are generated by adjusting the y galvanometer. These steps are repeated until a first 17×17 illuminated calibration matrix of data is generated for differences along the x axis between the nominal positions and the actual positions. (E.g., FIG. 4A shows actual positions and the differences along the x axis between these positions and nominal positions for four lines of data and FIG. 5 shows an illustration of the first illuminated calibration matrix with data from FIG. 4A in respective locations.) 
     The differences between the nominal positions and the actual positions along the y axis are then determined in a similar manner. Beam positioning mechanism 16 is adjusted to move optical path 15 to a nominal position on the grid; detection device 26 detects the difference between the nominal position and the actual position of optical path 15 and stores this information in computer 21. Beam positioning mechanism 16 is then adjusted to a new nominal position along the horizontal axis by moving the x galvanometer while the y galvanometer remains stationary. Detection device detects the new actual position and stores this information in computer 21. Measurements are made for fifteen more nominal positions to generate data along a first horizontal line; then the y galvanometer is moved to a new position; data along a second horizontal line are generated by moving the x galvanometer and detecting the differences between the actual positions and the nominal positions. The steps are repeated until a second 17×17 illuminated calibration matrix of data is generated for differences along the y axis. (E.g. FIG. 4B shows differences along the y axis between actual positions and nominal positions for four lines of data). 
     In generating laser data step 34, laser 12 is activated, and beam positioning mechanism 16 moves laser beam 14 to a desired nominal position along one axis. Laser beam 14 then imprints a line on paper sensitive to laser light by holding one galvanometer stationary while the other galvanometer is moved. After a first line is finished, the stationary galvanometer is moved and then a new line is imprinted by adjusting the other galvanometer, and so on until 17 lines have been imprinted. Detection device 26 then scans these marks and detects the laser position differences between actual positions, as shown by the imprinted marks, and the desired nominal positions at predetermined points. These differences are stored in a 17×17 laser calibration matrix for a first axis, e.g., the x axis. As with step 30, this entire process is repeated for the other axis, e.g. the y axis, and a second 17×17 laser calibration matrix is generated. 
     In data generation steps 30, 34, the movements of the x and y galvanometers are controlled by computer 21. Because the field of view of camera 29 of detection device 26 is smaller than the 250 mil difference between nominal positions, computer 21 utilizes the difference of the previous measurement to adjust the amount a galvanometer is moved for the next measurement. E.g., if the difference of the previous measurement if +10 mils, then the galvanometer is instructed by computer 21 to move the position of the optical path 260 mils. In this way, the field of view of camera 29 is approximated to the next measurement location. Each galvanometer is moved 17 times for detection device 26 to detect positions at 17 points along a line of data. 
     Referring to FIGS. 2 and 3, calibrating step 32 receives the first illuminated calibration matrix and performs a third order, least squares fit on the first row of the matrix to produce the following third order equation to describe the error, E(x), i.e., the difference along the x axis between an actual position and a desired position: 
     
         E(x)=C.sub.1 x+C.sub.2 x.sup.2 +C.sub.3 x.sup.3 +C.sub.4   (3) 
    
     where: C 1 , C 2 , C 3  and C 4  are coefficients determined by the least squares fit. This process is repeated for the remaining 16 rows of difference data of the first illuminated calibration matrix, generating 16 further sets of C 1 , C 2 , C 3 , C 4  coefficients, which are placed with the first set as the values in a 4×17 first intermediate matrix. (See FIG. 5) Next a third order least squares fit of each column of the first intermediate matrix is performed, and the data outputted from this step are stored in a first 4×4 illuminated calibration result matrix, where the coefficients of the first column&#39;s third order fit are the matrix values C 11 , C 12 , C 13  and C 14  and the coefficients of the second column&#39;s third order fit are the matrix values C 21 , C 22 , C 23 , and C 24 , etc. The values in the result matrix provide the coefficients of a first two-dimensional, third order, least squares fit of the  inputted data for errors along the x axis. Equation 4 is used to obtain e x  (x,y), the difference between the actual position and a desired position along the x axis when inputted with the desired positions: 
     
         e.sub.x (x,y)=F.sub.1 (y)x+F.sub.2 (y)x.sup.2 +F.sub.3 (y)x.sup.3 +F.sub.4 (4) 
    
     where: 
     
         F.sub.1 (y)=C.sub.11 y+C.sub.12 y.sup.2 +C.sub.13 y.sup.3 +C.sub.14 (5) 
    
     
         F.sub.2 (y)=C.sub.21 y.sup.2 +C.sub.22 y.sup.2 +C.sub.23 y.sup.3 +C.sub.24 (6) 
    
     
         F.sub.3 (y)=C.sub.31 y+C.sub.32 y.sup.2 +C.sub.33 y.sup.3 +C.sub.34 (7) 
    
     
         F.sub.4 (y)=C.sub.41 y+C.sub.42 y.sup.2 +C.sub.43 y.sup.3 +C.sub.44 (8) 
    
     Calibrating step 32 continues by receiving the second illuminated calibration matrix, and performing a third order, least squares fit on the first column of the matrix to produce the following third order equation to describe the error, E(y), i.e., the difference along the y axis between an actual position and a desired position: (See equation 9) 
     
         E(y)=C&#39;.sub.1 y+C&#39;.sub.2 y.sup.2 +C&#39;.sub.3 y.sup.3 +C&#39;.sub.4 (9) 
    
     where: C&#39; 1 , C&#39; 2 , C&#39; 3 , and C&#39; 4  are coefficients determined by the least squares fit. This process is repeated for each column of the second illuminated calibration matrix, generating 16 further sets of C&#39; 1 , C&#39; 2 , C&#39; 3 , C&#39; 4  coefficients, which are placed with the first set as the values of a 17×4 second intermediate matrix. Next, a third order least squares fit of each row of the second intermediate matrix is performed and the data outputted from this step are stored in a second 4×4 illuminated calibration result matrix, where the coefficients of the first row&#39;s third order fit are the matrix values C&#39; 11 , C&#39; 12 , C&#39; 13  and C&#39; 14  and the coefficients of the second row&#39;s third order fit are the matrix values C&#39; 21 , C&#39; 22 , C&#39; 23  and C&#39; 24 , etc. The values in the result matrix provide the coefficients of a second two-dimensional, third order, least squares fit of the inputted data for errors along the y axis. Equation 10 is used to obtain e y  (x,y), the difference between the actual position and a desired position along the y axis when inputted with the desired position: 
     
         e.sub.y (x,y)=F&#39;.sub.1 (x)y+F&#39;.sub.2 (x)y.sup.2 +F&#39;.sub.3 (x)y.sup.3 +F&#39;4 (10) 
    
     where: 
     
         F&#39;.sub.1 (y)=C&#39;.sub.11 y+C&#39;.sub.12 y.sup.2 +C&#39;.sub.13 y.sup.3 +C&#39;.sub.14 (11) 
    
     
         F&#39;.sub.2 (y)=C&#39;.sub.21 y+C&#39;.sub.22 y.sup.2 +C&#39;.sub.23 y.sup.3 +C&#39;.sub.24 (12) 
    
     
         F&#39;.sub.3 (y)=C&#39;.sub.31 y+C&#39;.sub.32 y.sup.2 +C&#39;.sub.33 y.sup.3 +C&#39;.sub.34 (13) 
    
     
         F&#39;.sub.4 (y)=C&#39;.sub.41 y+C&#39;.sub.42 y.sup.2 +C&#39;.sub.43 y.sup.3 +C&#39;.sub.44 (14) 
    
     The steps of calibrating step 36 correspond to the steps of calibrating step 32. I.e., first and second 17×17 laser calibration matrices are inputted into calibration step 36 and first and second laser calibration equations (one for each perpendicular axis) are outputted. 
     Generating data step 34 and calibrating step 36 advantageously determine where a beam position is in relation to a camera field of view; i.e., the steps make apparatus 10 self-aligning. Thus, laser beam 14 need not be bore-sited to a known reference point with beam positioning mechanism 16. 
     In operation of laser trimming apparatus 10, x and y coordinates of a desired trimming position are used as the x and y inputs to the x and y axis illuminated calibration equations (equations 4 and 10, including the coefficients described in step 32), which outputs intermediate data, e x  (x,y), e y  (x,y) representing the difference between the desired trimming position and an actual visible trimming position at the desired trimming position x,y. The intermediate data are added to respective desired trimming position coordinates, the sums of which are inputted into respective x and y laser calibration equations (equations 4 and 10, including the coefficients described in step 36). The outputs of these equations are the calibrated trimming position coordinates. Upon providing the calibrated laser trimming position coordinates to laser beam positioning mechanism 16, a laser beam inputted to beam positioning mechanism 16 is directed to the desired trimming position. I.e., laser trimming apparatus is calibrated to compensate for the errors of the system, including those discussed above. 
     OTHER EMBODIMENTS 
     Other embodiments of the invention are within the scope of the following claims.