Pixel and area membrane heterogeneity classification based on processing of substrate images
Color image processing and threshold-based classification of film non-uniformities on substrates enhance the efficiency and accuracy of CMP processes by enabling rapid detection and compensation for under-polishing and over-polishing.
Patent Information
- Application Number
- JP2023553541
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2021-03-04
- Filing Date
- 2022-02-24
- Publication Date
- 2025-07-29
- Estimated Expiration
- 2042-02-24
AI Technical Summary
Existing optical measurement systems for film non-uniformity on substrates during chemical mechanical polishing (CMP) are inefficient, requiring precise alignment and leading to reduced throughput, making it difficult to classify and compensate for under-polishing and over-polishing.
A method using color image processing to classify film non-uniformities on substrates by analyzing difference vectors between pixel colors and applying thresholds, combined with a control system to adjust polishing parameters based on the classification results.
Enables rapid detection and classification of film abnormalities, allowing for real-time compensation of polishing processes to improve throughput and accuracy.
Smart Images

Figure 0007714670000004 
Figure 0007714670000005 
Figure 0007714670000006
Abstract
Description
Technical Field
[0001] The present disclosure relates to optical measurement, for example, a technique for classifying non-uniformity of a film on a substrate.
Background Art
[0002] Integrated circuits are generally formed on a substrate by sequentially depositing conductive, semiconductive, or insulating layers on a silicon wafer. Planarization of the substrate surface may be necessary to improve flatness for fill layer removal or for photolithography during integrated circuit manufacturing.
[0003] Chemical mechanical polishing (CMP) is an acceptable planarization method. This planarization method generally requires placing the substrate on a carrier or polishing head. The exposed surface of the substrate is generally placed in contact with a rotating polishing pad. The carrier head applies a controllable load to the substrate to press the substrate against the polishing pad. Generally, an abrasive polishing slurry is supplied to the surface of the polishing pad.
[0004] Various optical measurement systems, such as spectroscopic or polarization analysis systems, can be used to measure the thickness of substrate layers before and after polishing, for example, within an in-line or stand-alone measurement station.
[0005] At the same time, advancements in hardware resources such as graphics processing units (GPUs) and tensor processing units (TPUs) have led to significant improvements in deep learning algorithms and their applications. One of the expanding fields of deep learning is computer vision and image recognition. Most such computer vision algorithms are designed for image classification or segmentation.
Summary of the Invention
[0006] In one aspect, a method for classifying film non-uniformities on a substrate includes acquiring a color image of the substrate including a plurality of color channels; acquiring a standard color for the color image of the substrate; determining, for each pixel along a path in the color image, a vector of differences between the color of each pixel and the standard color to generate a set of difference vectors; and sorting the pixels along the path into a plurality of regions, including at least one normal region and at least one abnormal region, based on the set of difference vectors, including comparing the plurality of difference vectors to a set of thresholds.
[0007] In another aspect, a computer program product can be provided for classifying membranes.
[0008] In another aspect, a chemical mechanical polishing system includes a control system configured to classify the film.
[0009] Implementations may include one or more of the following features. The sorting may include labeling the pixel as anomalous in response to determining that the magnitude of each difference exceeds a first threshold. The determining the difference may include calculating a magnitude of a difference between a vector of a first tuple representing the color of each pixel and a second tuple representing the standard color. The sorting may include labeling the pixel as normal based on determining that the magnitude of each difference is less than a first threshold. A mask may be applied to the color image to remove scribe lines and / or regions outside the substrate. The first two color channels may be green and red, and the second two color channels may be blue and red. The plurality of radial paths may be uniformly spaced around a center of the substrate.
[0010] Embodiments can include one or more of the following potential advantages. Abnormalities in the film on the substrate, such as thickness non-uniformities, and the presence of residues or defects, can be analyzed quickly. In some embodiments, abnormalities in the film on the substrate can be analyzed quickly for die-to-die measurements. For example, an in-line measurement system can measure film abnormalities on the substrate based on a color image of the substrate. Using the measured abnormalities, such as the measured non-uniformities, polishing parameters can be controlled to compensate for under-polishing and over-polishing of the substrate.
[0011] The approach described can detect abnormalities in the film on the substrate and classify the types of abnormalities using color values of a series of pixels. A model can be trained to determine different types of abnormalities based on the color values.
[0012] The measurement system can have a high inference speed for non-uniform regions as well as excellent detectability and classification. This approach can also consider variations in sub-layers.
[0013] Details of one or more embodiments are described in the accompanying drawings and the following description. Other aspects, features, and advantages will be apparent from the description and drawings, and from the claims.
Brief Description of the Drawings
[0014] [Figure 1] It is a diagram showing an example of an in-line optical measurement system. [Diagram 2] It is a flowchart showing a method of classifying non-uniformities in a film on a substrate using a computer approach. [Figure 3A] It is a diagram showing a mask applied to an exemplary image of a substrate used for computer analysis. [Figure 3B] It is a graph showing histograms for three color channels. [Figure 4A]FIG. showing an exemplary image of a substrate having a radial profile and an example of the result of non-uniformity analysis. [Figure 4B] FIG. showing an exemplary image of a substrate having a radial profile and an example of the result of non-uniformity analysis. [Figure 4C] FIG. showing an exemplary image of a substrate having a radial profile and an example of the result of non-uniformity analysis. [Figure 5A] FIG. showing an exemplary image of a substrate having a radial profile and another example of the result of non-uniformity analysis. [Figure 5B] FIG. showing an exemplary image of a substrate having a radial profile and another example of the result of non-uniformity analysis. [Figure 5C] FIG. showing an exemplary image of a substrate having a radial profile and another example of the result of non-uniformity analysis. DETAILED DESCRIPTION OF THE INVENTION
[0015] Like reference symbols in the various drawings indicate like elements.
[0016] Due to the variation in polishing rate that occurs in the CMP process, in the CMP process, thin film thickness measurement by a dry metrology system is used. Such dry metrology measurement techniques often use a spectroscopic or polarization analysis approach that fits the variables in the optical model of the film stack to the collected measurements. Such measurement techniques generally require precise alignment of the sensor to the measurement spot on the substrate to ensure that the model is applicable to the collected measurements. Therefore, it may take time to measure a large number of points on the substrate, and the classification of the types and degrees of under-polishing and over-polishing may be infeasible because it results in an unacceptable reduction in throughput.
[0017] However, image processing techniques based on color images can detect abnormalities on the substrate faster and classify the types of abnormalities with sufficient accuracy. In particular, a color image of a die taken from the substrate can be divided into a plurality of regions. Each region can be divided into a plurality of ranges of the same color or similar colors. For example, pixels having a color vector sufficiently close to the target vector can be classified as properly polished, and pixels that fail the test can be classified as abnormal. In one embodiment, for each of a plurality of paths across the substrate, the color of each pixel along the path can be analyzed, and for pixels at the boundary between a properly polished region and an improperly polished region along the path, the type and degree of the abnormality can be determined based on a sequence of vectors in the color space. For example, whether a region is over-polished or under-polished compared to other regions, and the degree of over-polishing or under-polishing can be determined based on the vectors.
[0018] Referring to FIG. 1, the polishing apparatus 100 includes one or more carrier heads 126 each configured to hold a substrate 10, one or more polishing stations 106, and a transfer station for loading the substrate onto the carrier head and unloading the substrate from the carrier head. Each polishing station 106 includes a polishing pad 130 supported on a platen 120. The polishing pad 130 can be a two-layer polishing pad having an outer polishing layer and a softer backing layer.
[0019] The carrier head 126 can be suspended from a support 128 and can be movable between polishing stations. In some embodiments, the support 128 is an overhead track, and each carrier head 126 is coupled to a carriage 108 attached to the track such that each carriage 108 can selectively move between a polishing station 124 and the transfer station. Alternatively, in some embodiments, the support 128 is a rotary carousel, and as the carousel rotates, the carrier head 126 moves simultaneously along a circular path.
[0020] Each polishing station 106 of the polishing apparatus 100 may include a port, for example, at the end of an arm 134, for dispensing a polishing fluid 136, such as an abrasive slurry, onto the polishing pad 130. Each polishing station 106 of the polishing apparatus 100 may also include a pad conditioner for abrading the polishing pad 130 to maintain the polishing pad 130 in a consistent abrasive state.
[0021] Each carrier head 126 is operable to hold a substrate 10 against a polishing pad 130. Each carrier head 126 can have independent control of a polishing parameter, e.g., pressure, associated with each substrate. In particular, each carrier head 126 can include a retaining ring 142 that retains the substrate 10 beneath a flexible membrane 144. Each carrier head 126 can also include multiple independently controllable pressurizable chambers, e.g., three chambers 146a-146c, defined by the membrane that can apply independently controllable pressures to associated zones on the flexible membrane 144 and, therefore, on the substrate 10. For ease of illustration, only three chambers are shown in FIG. 1 , but there can be one or two chambers, or four or more chambers, e.g., five chambers.
[0022] Each carrier head 126 is suspended from a support 128 and connected by a driver shaft 154 to a carrier head rotation motor 156 so that the carrier head can rotate about an axis 127. Optionally, each carrier head 126 can be oscillated laterally, for example, by driving carriage 108 on a track or by rotational oscillation of the carousel itself. In operation, the platen rotates about its central axis and each carrier head rotates about its central axis 127 and translates laterally across the upper surface of the polishing pad.
[0023] A controller 190, such as a programmable computer, serves as the control system. The controller 190 is connected to each motor and independently controls the rotational speeds of the platen 120 and the carrier head 126. The controller 190 can include a central processing unit (CPU), a memory, and support circuits, such as input / output circuits, a power source, a clock circuit, a cache, etc. The memory is connected to the CPU. The memory is a non-transitory computable readable medium and can be one or more readily available memories, such as random access memory (RAM), read-only memory (ROM), a floppy disk, a hard disk, or another form of digital storage. Additionally, although shown as a single computer, the controller 190 can be a distributed system, for example, including a plurality of independently operating processors and memories.
[0024] The polishing apparatus 100 also includes an in-line (also called in-sequence) optical measurement system 160. The color imaging system of the in-line optical measurement system 160 is disposed within the polishing apparatus 100, but does not perform measurements during the polishing operation. Rather, measurements are collected during the intervals between polishing operations, for example, while the substrate is being moved from one polishing station to another, or before or after polishing, for example, while the substrate is being moved from a transfer station to a polishing station or vice versa. Additionally, the in-line optical measurement system 160 can be positioned within a fab interface unit or a module accessible from the fab interface unit to measure the substrate after the substrate has been extracted from the cassette but before it is moved to the polishing unit, or after the substrate has been cleaned but before it is returned to the cassette.
[0025] The in-line optical measurement system 160 includes a sensor assembly 161 that color-images the substrate 10. The sensor assembly 161 can include a light source 162, a photodetector 164, and a circuit 166 that transmits and receives signals between the controller 190 and the light source 162 and the photodetector 164.
[0026] Light source 162 can be operable to emit white light. In one embodiment, the emitted white light includes light having a wavelength between 200 and 800 nanometers. A suitable light source is an array of white light emitting diodes (LEDs), or a xenon or mercury xenon lamp. Light source 162 is oriented to direct light 168 toward the exposed surface of substrate 10 at a non-zero angle of incidence α. The angle of incidence α can be, for example, between about 30° and 75°, such as 50°.
[0027] The light source 162 can illuminate a substantially linear, elongated region across the width of the substrate 10. For example, the light source 162 can include an optical component, such as a beam expander, that spreads the light from the light source into the elongated region. Alternatively or additionally, the light source 162 can include a linear array of light sources. The light source 162 itself, and the illuminated region on the substrate, can be elongated, with a longitudinal axis parallel to the surface of the substrate.
[0028] A diffuser 170 can be placed in the path of the light 168 or the light source 162 can include a diffuser to scatter the light before it reaches the substrate 10 .
[0029] Detector 164 is a color camera sensitive to light from light source 162. The camera includes an array of detector elements. For example, the camera may include a CCD array. In some embodiments, the array is a single row of detector elements. For example, the camera may be a line scan camera. The row of detector elements may extend parallel to the longitudinal axis of the elongated area illuminated by light source 162. If light source 162 includes an array of light emitting elements, the row of detector elements may extend along a first axis that is parallel to the longitudinal axis of light source 162. The row of detector elements may include 1024 or more elements.
[0030] Camera 164 is composed of appropriate focusing optics 172 so as to project the field of view of the substrate onto the array of detector elements. The field of view can be long enough to see the entire length of substrate 10, for example, with a length of 150 - 300 mm. Camera 164 can be configured so that, including the associated optics 172, each pixel corresponds to an area having a length of about 0.5 mm or less. For example, assuming that the field of view is about 200 mm in length and detector 164 includes 1024 elements, the image generated by the line scan camera can have pixels with a length of about 0.5 mm. To determine the length resolution of the image, the length of the field of view (FOV) can be divided by the number of pixels at which the FOV is imaged to achieve the length resolution.
[0031] Camera 164 can also be configured so that the pixel width is equal to the pixel length. For example, the advantage of the line scan camera is that the frame rate is very high. The frame rate can be at least 5 kHz. The frame rate can be set at a frequency such that, when the imaging range scans the entire length of substrate 10, the pixel width is equal to the pixel length, for example, about 0.3 mm or less.
[0032] Light source 162 and photodetector 164 can be supported on stage 180. When photodetector 164 is a line scan camera, light source 162 and camera 164 are movable relative to substrate 10 so that the imaging range can scan the entire length of the substrate. In particular, the relative movement can be parallel to the surface of substrate 10 and perpendicular to the column of detector elements of line scan camera 164.
[0033] In some embodiments, the stage 182 is stationary and the substrate support moves. For example, the carrier head 126 can move, e.g., either by the wobble of the carriage 108 or the rotational oscillation of a carousel, or a robotic arm holding the substrate in a factory interface unit can move the substrate 10 past the line scan camera 182. In some embodiments, the stage 180 is movable and the carrier head or robotic arm remains stationary for image acquisition. For example, the stage 180 can be movable along rails 184 by a linear actuator 182. In either case, this allows the light source 162 and camera 164 to remain in fixed positions relative to each other as the scanned area moves across the substrate 10.
[0034] For example, a possible advantage of having a line scan camera and light source that move together across the substrate, compared to a traditional 2D camera, is that the relative angle between the light source and camera remains constant for different positions across the wafer. As a result, artifacts caused by variations in viewing angle can be reduced or eliminated. In addition, traditional 2D cameras exhibit inherent perspective distortion that must then be corrected by image transformation, whereas a line scan camera can eliminate perspective distortion.
[0035] The sensor assembly 161 may include a mechanism for adjusting the vertical distance between the substrate 10 and the light source 162 and detector 164. For example, the sensor assembly 161 may include an actuator for adjusting the vertical position of the stage 180.
[0036] Optionally, a polarization filter 174 can be positioned anywhere in the optical path, for example, between the substrate 10 and the detector 164. The polarization filter 174 can be a circular polarizing plate (CPL). A typical CPL is a combination of a linear polarizer and a quarter-wave plate. By properly orienting the polarization axis of the polarization filter 174, image blur can be reduced and desirable visual features can be sharpened or enhanced.
[0037] Assuming that the outermost layer on the substrate is a translucent layer, for example, a dielectric layer, the color of the light detected by the detector 164 depends on, for example, the composition of the substrate surface, the smoothness of the substrate surface, and / or the amount of interference of light reflected from different interfaces of one or more layers (e.g., dielectric layers) on the substrate. As described above, the light source 162 and the photodetector 164 can be connected to a computing device, such as a controller 190, that is operable to control the operation and receive signals. A computing device that performs various functions to convert a color image into thickness measurements can be considered part of the measurement system 160.
[0038] FIG. 2 shows an image processing method 200 that is used to detect and classify anomalies in a film on a substrate. The method can be performed by the controller 190. The controller 190 receives a color image of the substrate. The color image can be an RGB image or an image in another color space, such as XYZ or HCL.
[0039] The controller executes an image processing algorithm for processing color images. The controller combines the individual scan lines from the photodetector 164 into a two-dimensional color image (step 205). The controller can apply offset and / or gain adjustments to the intensity values of the pixels in the image in each color channel (step 210). Each color channel may have different offsets and / or gains. Optionally, the image can be normalized (step 215). For example, the difference between the measured image and a standard defined image can be calculated. For example, the controller can store a background image for each of the red, green, and blue channels and subtract the background image from the measured image for each color channel. Also, the image can be transformed, for example, scaled and / or rotated and / or translated to a standard image coordinate frame (step 220). For example, the image can be translated such that the center of the substrate is at the center point of the image, and / or the image can be scaled such that the end face of the substrate is at the end face of the image, and / or the image can be rotated such that the angle between the x-axis of the image and the radial segment connecting the center of the substrate and a substrate orientation feature, such as a notch or flat of a wafer, is 0°. The substrate orientation can be determined, for example, by a notch finder or by image processing of the color image 320, for determining the angle of the scribe lines in the image. The substrate position can also be determined by image processing of the color image 320, for example, by detecting the circular substrate end face and then determining the center of the circle.
[0040] The mask can be applied to the image 320. The mask can exclude unwanted pixels, for example, pixels from portions of the substrate corresponding to scribe lines, from the calculation. As an example, the controller 190 can store a die mask that identifies the region of interest and the range of interest in the image. For example, in the case of a rectangular region, the range can be defined by the upper right and lower left coordinates within the image. Thus, the mask can be a data file that includes a pair of upper right and lower left coordinates for each region. In other cases where the region is not rectangular, more complex functions can be used. In some embodiments, the orientation and position of the substrate can be determined and the die mask can be aligned to the image.
[0041] Referring to FIG. 3, an example is shown in which an image 300 of the substrate 10 is collected by the in-line optical measurement system 160. The in-line optical measurement system 160 creates a color image 300 having at least three color channels, for example, RGB channels. The image can be a high-resolution image, for example, a high-resolution image of at least 720×1080 pixels, but lower resolutions, for example, down to 150×150 pixels, or even higher resolutions can be used. The color at any particular pixel is determined according to the thickness of one or more layers, including the upper layer, in the range of the substrate corresponding to the pixel.
[0042] Next, the algorithm determines the "uniform color" of the unmasked portion of the image (step 225). In some embodiments, an intensity histogram is determined for each color channel, and the algorithm finds the peak of each of the three histograms (R plane, G plane, and B plane). The tuple of intensity values from the peaks of the histograms becomes the color value. This color value is referred to as the "uniform color" (UC) of the image 300. For example, FIG. 3B shows histograms 360, 370, 380 for the red, green, and blue channels respectively, and the peaks at R1, G1, and B1 of each histogram. The tuple (R1, G1, B1) becomes the uniform color. However, other techniques for defining the uniform color, such as simply calculating the mode value or average value of each channel, can be used.
[0043] The collected color image can be saved as a PNG image for later analysis or processing, although many other formats, such as JPEG, are possible.
[0044] Returning to FIG. 2, the masked image can be supplied to an image processing algorithm. The controller can store data defining a plurality of paths across the image. For example, the paths can be lines extending radially outward from the center of the substrate (see path 406 in FIG. 4A), although other paths are possible. For the radial lines, the lines can be positioned at equal angular intervals around the center of the substrate, for example, at 1 - 10°.
[0045] For each path, the controller calculates a difference vector (DV) between each pixel of a series of pixels along the path and the uniform color (UC) (step 230). The difference vector can be represented as a tuple, for example, (D R , D G , D B ). The difference vector of the pixels can be represented in either Cartesian or spherical coordinates within the calculation algorithm shown below. DV=(D r , D g , Db ) (in Cartesian coordinates) D X = X - PPMEAN X where X = R, G, or B DV = (ρ, θ, φ) (in spherical coordinates) TIFF0007714670000001.tif19170 θ = tan -1 (D g / D r ) φ = tan -1 (D b / S), where TIFF0007714670000002.tif20170 is the projection of DV onto the (RG) plane.
[0046] A series of difference vectors along a particular path results in a difference vector profile. Each difference vector profile is analyzed to detect regions or segments along a non-uniform radial profile (step 240).
[0047] In some embodiments, uniform regions are distinguished from non-uniform regions by using a threshold. Pixels for which the magnitude of the difference vector (e.g., calculated as the conventional Euclidean distance) exceeds the threshold are classified as "non-uniform". In contrast, pixels for which the magnitude of the difference vector is below the threshold are classified as "uniform". In some embodiments, the interpretation of regions can be automatically set by using machine learning.
[0048] In some embodiments, the controller established four possible classifications for the pixels: properly polished (type 1), under-polished (type 2), over-polished (type 3), or non-uniformly polished but unclassified or exceptional (type 4).
[0049] The algorithm first divides the path into groups of appropriately polished adjacent pixels and groups of adjacent unclassified pixels. For a selected pixel, if the previous pixel was appropriately polished but the magnitude of the difference vector (MagDV) is greater than the threshold, a new non-uniform region (i.e., nonPP or type 4) region is identified. The algorithm continues to group the pixels along the path into the identified non-uniform regions until it hits a group of multiple consecutive appropriately polished pixels. By repeating this process along the path, the pixels are divided into a group of normal pixels and a group of abnormal pixels. The "nSustain" parameter can be used as a noise filter to determine how long a sequence of adjacent pixels is required to start a new type of region. For example, if a type 1 (i.e., normal pixel) region is shorter than the nSustain parameter value, those type 1 pixels are assigned to the adjacent region of type 4 (i.e., non-normal pixels).
[0050] The pixels along the path can be grouped and classified for different types of anomalies, such as under-polishing (type 2) or over-polishing (type 3), for each group (step 250). The type of anomaly can be determined by examining the difference vector, particularly at the start of the group of abnormal pixels. Without being limited to any particular theory, although the color values at the center of the non-uniform regions may be the same, the transition from a PP region to an under-polished (i.e., UP or type 2) region may be different from the transition from a PP region to an over-polished (i.e., OP type 3) region.
[0051] In some embodiments, the value F is calculated based on the ratio of differences in a particular color channel. For example, F can be calculated based on the sum of a first difference ratio in two color channels and a second difference ratio in two color channels. Next, the value F can be compared with one or two threshold values to determine whether the area is under-polished (type 2) or over-polished (type 3). If F does not meet either threshold, the area can be identified as an anomaly, such as the remaining type 4.
[0052] In some embodiments, F and the type of anomaly are determined according to the following formula. TIFF0007714670000003.tif35170In the formula, D R , D G , and D B are the difference values of the red, green, and blue channels, and FT1 and FT2 are empirically determined threshold values.
[0053] The preset number of pixels of the non-PP region that are consecutive along a path starting from adjacent PP regions is determined. The preset number of pixels can be selected by the user, for example, by user input. The classification sequence is performed by looking at 3 to 10 pixels, such as 3 to 5 pixels (for example, one region can be 50 to 60 pixels wide) and calculating the ratio of differences. For example, for each pixel in an N-pixel sequence, the controller calculates a coefficient (F) to provide F1, F2, F3,....., FN. The calculated F, i.e., F1, F2, F3,....., FN are compared with each threshold value FT1, FT2,..., FTn respectively. If all pixels meet the same condition, for example, if F1,..., FN are all less than FT1 or all exceed FT2, the area is classified as "over-polished" or "under-polished". Otherwise, it is classified as an unclassified non-uniformity or anomaly.
[0054] In another embodiment, the interpretation of under-polishing or over-polishing can be determined using the spherical coordinate angles (e.g., θ and φ) of the DV points in the type 4 region (i.e., the points adjacent to the adjacent type 1 regions). Thus, the sequence for determining UP or OP is as follows: a) set the upper and lower threshold values of θ and φ for UP behavior, b) analyze some PP adjacent points in the type 4 region, and c) classify as type 2 if θ and φ are within the type 2 range, and otherwise classify as type 3.
[0055] Based on the calculated data, the "non-uniformity" can be further classified by type (step 250a) and severity (step 250b) (step 250). Similar to the previous steps, the color image is input into the image processing algorithm, divided into volumes, and then the DV is calculated for each volume. For each non-uniform region, the severity is determined by a semi-quantitative description such as "mild", "moderate", or "severe". This is done for each radial profile by converting the set of RGB pixels in the non-uniform region to the rg chromaticity space. Next, the bounding rectangle area (BRA) of the non-uniform pixel sequence in the rg space is calculated. Then, the BRA is compared with the threshold area to determine the level of severity. For example, if there are two threshold values A1 and A2 with A1 < A2, and the BRA is less than A1, it is classified as "mild". If the BRA is between A1 and A2, it is classified as "moderate". If the BRA exceeds A2, it is classified as "severe". As described above, only three categories are listed, but the algorithm can have more or fewer categories based on the number of area thresholds.
[0056] As another method for determining severity, the arc length of the rg sequence can be calculated (instead of the BRA). This can be more difficult, but should correspond to the underlying theory. However, the calculation of the bounding rectangle is a simpler calculation and seems to be sufficient in terms of accuracy.
[0057] 4A-4C, a first example of an illustrative image 400 of a substrate having a radial profile showing non-uniform regions 402 and 404 with a "severe" level of anomaly is shown. The severity levels are classified and represented by the data in the chart shown in FIG. 4B. A line 408 indicates a threshold level, with data 412 above the threshold line 408 being non-uniform and data 410 below the threshold line 408 being uniform. The size of the BRA area is calculated and represented in FIG. 4C, confirming that the non-uniformity of this radial profile 400 is severe.
[0058] 5A-5C show another example of an illustrative image 500 of a substrate having a radial profile showing a mild to moderate case of non-uniformity.
[0059] Generally, the data can be used to control one or more operating parameters of the CMP apparatus, including, for example, platen rotation speed, substrate rotation speed, polishing path of the substrate, speed at which the substrate moves across the plate, pressure on the substrate, slurry composition, slurry flow rate, and substrate surface temperature. The operating parameters can be controlled in real time and can be adjusted automatically without the need for human intervention.
[0060] As used herein, the term substrate can include, for example, a product substrate (e.g., containing multiple memory or processor dies), a test substrate, a bare substrate, and a gating substrate. The substrate can be in various stages of integrated circuit manufacturing; for example, the substrate can be a bare wafer or can include one or more deposited and / or patterned layers. The term substrate can include a circular disk and a rectangular sheet.
[0061] Embodiments of the invention and all of the functional operations described in this specification can be implemented in digital electronic circuitry, or in computer software, firmware, hardware, or in combinations of them that include the structural means disclosed in this specification and their structural equivalents. Embodiments of the invention can be implemented as one or more computer program products, i.e., one or more computer programs tangibly embodied in a non-transitory machine-readable storage medium, executed, or operable to be executed, by one or more data processing apparatuses, e.g., a programmable processor, a computer, or multiple processors or computers.
[0062] The term relative positioning is used to indicate the positioning of the components of the system relative to each other, not necessarily with respect to gravity, and it should be understood that the polishing surface and the substrate can be held in a vertical orientation or any other orientation.
[0063] Numerous embodiments have been described. Nevertheless, it will be understood that various modifications may be made. For example, · Instead of a line scan camera, a camera that images the entire substrate can be used. In this case, movement of the camera relative to the substrate is not required. · The camera may cover a range that is narrower than the full width of the substrate. In this case, in order to scan the entire substrate, it is necessary to move the camera in two orthogonal directions, e.g., support it on an X-Y stage. · The light source can illuminate the entire substrate. In this case, the light source does not necessarily have to move relative to the substrate. · The photodetector can be a spectrometer instead of a color camera, and thus spectral data can be reduced to the RGB color space. ·The sensing assembly does not necessarily have to be an in-line system positioned between polishing stations or between a polishing station and a transfer station. For example, the sensor assembly can be positioned within a transfer station, positioned in a cassette interface unit, or be a stand-alone system.
[0064] Accordingly, other embodiments are within the scope of the claims.
Claims
1. A non-transitory computer-readable medium comprising a computer program for classifying film non-uniformity on a substrate, the computer program comprising: obtaining a color image of the substrate, the color image including a plurality of color channels; obtaining a standard color for the color image of the substrate; for each pixel along the path of the color image, determining a difference vector between the color of each pixel and the standard color to generate a series of difference vectors; classifying the pixels along the path as normal or abnormal based on the series of difference vectors by comparing a plurality of difference vectors included in the series of difference vectors with a threshold; sorting the pixels into one or more regions in response to the pixels being identified as normal or abnormal; including instructions for causing one or more computers to perform the above, wherein the instructions for obtaining the standard color include instructions for determining an intensity histogram for each channel of the plurality of color channels of the color image, selecting the intensity of the peak of each histogram, and setting the standard color as a tuple having a value corresponding to the intensity of the peak. A non-transitory computer-readable medium.
2. The computer-readable medium according to claim 1, wherein the instructions for classifying the pixels include instructions for determining, for each of the plurality of difference vectors, whether the magnitude of each difference vector exceeds a first threshold.
3. The computer-readable medium according to claim 1, wherein the instructions for classifying the pixels include instructions for labeling the pixels based on a determination of whether each of a plurality of consecutive pixels along the path exceeds a second threshold.
4. A non-transitory computer-readable medium comprising a computer program for classifying film non-uniformity on a substrate, the computer program comprising: obtaining a color image of the substrate, the color image including a plurality of color channels; obtaining a standard color for the color image of the substrate; for each pixel along the path of the color image, determining a difference vector between the color of each pixel and the standard color to generate a series of difference vectors; By comparing a plurality of difference vectors included in the series of difference vectors with a threshold value, classifying the pixels along the path as normal or abnormal based on the series of difference vectors; Sorting the pixels into one or more regions in response to the pixels being identified as normal or abnormal; Including instructions for causing one or more computers to perform; A computer-readable medium, wherein the instructions for obtaining the standard color include instructions for determining an average color of the color image. **Claim 5** The computer-readable medium according to claim 1 or 4, including instructions for determining a plurality of paths on the substrate, determining, for each path, a difference vector for each pixel along each path, and sorting the pixels along each path into the one or more regions. **Claim 6** The computer-readable medium according to claim 5, wherein the plurality of paths are radial paths extending from the center of the substrate to the outside. **Claim 7** A non-transitory computer-readable medium comprising a computer program for classifying film non-uniformity on a substrate, the computer program comprising: Obtaining a color image of the substrate including a plurality of color channels; Obtaining a standard color for the color image of the substrate; Determining a difference vector between the color of each pixel and the standard color for each pixel along a path of the color image to generate a series of difference vectors; By comparing a plurality of difference vectors included in the series of difference vectors with a threshold value, classifying the pixels along the path as normal or abnormal based on the series of difference vectors; Sorting the pixels into one or more regions in response to the pixels being identified as normal or abnormal; Including instructions for causing one or more computers to perform; The instructions for classifying the pixels along the path as normal or abnormal include instructions for classifying the abnormal region as over-polished or under-polished based on at least one difference vector of the pixels at the boundary between the abnormal region and the adjacent normal region. **Claim 8** The computer-readable medium according to claim 7, including instructions for classifying the abnormal region as over-polished or under-polished based on a plurality of difference vectors for each of a plurality of consecutive pixels along the path at the boundary.
9. The computer-readable medium according to claim 8, wherein the plurality of consecutive pixels are five or fewer pixels.
10. The computer-readable medium according to claim 8, including instructions for classifying the abnormal region as over-polished or under-polished based on each of the plurality of difference vectors that meet a criterion.
11. The computer-readable medium according to claim 10, wherein the instructions for classifying the abnormal region as over-polished or under-polished include instructions for calculating a coefficient based on a ratio of difference values in two color channels.
12. The computer-readable medium according to claim 11, wherein the instructions for calculating the coefficient include instructions for calculating a sum of a first ratio of difference values in a first two color channels and a second ratio of difference values in a second two color channels.
13. The computer-readable medium according to claim 11, wherein the instructions for classifying the abnormal region as over-polished or under-polished include instructions for comparing the coefficient with at least a third threshold.
14. A non-transitory computer-readable medium comprising a computer program for classifying film non-uniformity on a substrate, the computer program comprising: acquiring a color image of the substrate including a plurality of color channels; acquiring a standard color for the color image of the substrate; determining a difference vector between the color of each pixel and the standard color for each pixel along a path of the color image to generate a series of difference vectors; classifying the pixels along the path as normal or abnormal based on the series of difference vectors by comparing a plurality of difference vectors included in the series of difference vectors with a threshold; sorting the pixels into one or more regions in response to the pixels being identified as normal or abnormal; including instructions for causing one or more computers to perform, The computer-readable medium, wherein the instructions for classifying the pixels along the path as normal or abnormal include instructions for determining a severity of an abnormal region based on the plurality of difference vectors.
15. Determining the severity includes determining a minimum bounding region including the difference vectors for pixels within the abnormal region in the color space in at least two of the color channels, and comparing the area of the bounding region with a fifth threshold value. The computer-readable medium according to claim 14.
16. The computer-readable medium according to claim 15, wherein the minimum bounding region includes a rectangle.
17. Obtaining a color image of a substrate including a plurality of color channels; Obtaining a standard color for the color image of the substrate; For each pixel along the path of the color image, determining a difference vector between the color of each pixel and the standard color to generate a series of difference vectors; Sorting the pixels along the path into a plurality of regions including at least one normal region and at least one abnormal region based on the series of difference vectors, including comparing a plurality of difference vectors included in the series of difference vectors with a threshold value. Sorting the pixels along the path. including Obtaining the standard color includes determining an intensity histogram for each channel of the plurality of color channels of the color image, selecting the intensity of the peak of each histogram, and setting the standard color as a tuple having a value corresponding to the intensity of the peak. A method for classifying film non-uniformity on a substrate.
18. Obtaining a color image of a substrate including a plurality of color channels; Obtaining a standard color for the color image of the substrate; For each pixel along the path of the color image, determining a difference vector between the color of each pixel and the standard color to generate a series of difference vectors; Sorting the pixels along the path into a plurality of regions including at least one normal region and at least one abnormal region based on the series of difference vectors, including comparing a plurality of difference vectors included in the series of difference vectors with a threshold value. Sorting the pixels along the path. including Obtaining the standard color includes determining the average color of the color image. A method for classifying film non-uniformity on a substrate.
19. The method according to claim 17 or 18, wherein obtaining the color image includes scanning the substrate with an in-line measurement system including a line scan imaging device.
20. A polisher for polishing a substrate, An in-line measurement system for obtaining a color image of the substrate including a plurality of color channels, A controller, Obtaining the color image from the in-line measurement system, Obtaining a standard color for the color image of the substrate, For each pixel along the path of the color image, determining a difference vector between the color of each pixel and the standard color to generate a series of difference vectors, By comparing a plurality of difference vectors included in the series of difference vectors with a threshold value, classifying the pixels along the path as normal or abnormal based on the series of difference vectors, In response to the pixels being identified as normal or abnormal, sorting the pixels into one or more regions, A controller configured to adjust the polishing parameters of the polisher based on the pixels sorted into at least one abnormal region Comprising, The polishing system, wherein the controller configured to obtain the standard color determines an intensity histogram for each channel of the plurality of color channels of the color image, selects the intensity of the peak of each histogram, and sets the standard color as a tuple having a value corresponding to the intensity of the peak.
21. A polisher for polishing a substrate, An in-line measurement system for obtaining a color image of the substrate including a plurality of color channels, A controller, Receiving the color image from the in-line measurement system, Obtaining a standard color for the color image of the substrate, For each pixel along the path of the color image, determining a difference vector between the color of each pixel and the standard color to generate a series of difference vectors, By comparing a plurality of difference vectors included in the series of difference vectors with a threshold value, classifying the pixels along the path as normal or abnormal based on the series of difference vectors, In response to the pixels being identified as normal or abnormal, sorting the pixels into one or more regions, A controller configured to adjust the polishing parameters of the polisher based on the pixels sorted into at least one abnormal region comprising, a polishing system, wherein obtaining the standard color includes determining an average color of the color image. **Claim 22**: Obtaining a color image of a substrate including a plurality of color channels, obtaining a reference color for the color image of the substrate, for each pixel along a path of the color image, determining a difference vector between the color of each pixel and the reference color to generate a series of difference vectors, classifying the pixels along the path as normal or abnormal based on the series of difference vectors by comparing a plurality of difference vectors included in the series of difference vectors with a threshold, sorting the pixels into one or more regions in response to the pixels being identified as normal or abnormal, wherein classifying the pixels along the path as abnormal or normal includes classifying the abnormal region as over-polished or under-polished based on at least one difference vector of pixels at a boundary between the abnormal region and an adjacent normal region, a method for classifying film non-uniformity on a substrate. **Claim 23**: Obtaining a color image of a substrate including a plurality of color channels, obtaining a reference color for the color image of the substrate, for each pixel along a path of the color image, determining a difference vector between the color of each pixel and the reference color to generate a series of difference vectors, classifying the pixels along the path as normal or abnormal based on the series of difference vectors by comparing a plurality of difference vectors included in the series of difference vectors with a threshold, sorting the pixels into one or more regions in response to the pixels being identified as normal or abnormal, wherein classifying the pixels along the path as abnormal or normal includes an instruction for determining a severity of the abnormal region based on the plurality of difference vectors, a method for classifying film non-uniformity on a substrate. **Claim 24**: The method according to claim 22 or 23, wherein obtaining the color image includes scanning the substrate with an in-line measurement system including a line scan imaging device. **Claim 25**: A polisher for polishing a substrate, an in-line measurement system for obtaining a color image of the substrate including a plurality of color channels, a controller, Obtain the color image including a plurality of color channels from the in-line measurement system, Obtain a standard color for the color image of the substrate, For each pixel along the path of the color image, determine a difference vector between the color of each pixel and the standard color to generate a series of difference vectors, By comparing a plurality of difference vectors included in the series of difference vectors with a threshold value, classify the pixels along the path as normal or abnormal based on the series of difference vectors, A controller configured to sort the pixels into one or more regions in response to the pixels being identified as normal or abnormal, Comprising, The controller classifies the abnormal region as over-polished or under-polished based on at least one difference vector of pixels at the boundary between the abnormal region and the adjacent normal region, and is configured to classify the pixels along the path as abnormal or normal. A polishing system.
26. A polisher for polishing a substrate, An in-line measurement system for obtaining a color image of a substrate including a plurality of color channels, A controller, Obtain the color image including a plurality of color channels from the in-line measurement system, Obtain a standard color for the color image of the substrate, For each pixel along the path of the color image, determine a difference vector between the color of each pixel and the standard color to generate a series of difference vectors, By comparing a plurality of difference vectors included in the series of difference vectors with a threshold value, classify the pixels along the path as normal or abnormal based on the series of difference vectors, A controller configured to sort the pixels into one or more regions in response to the pixels being identified as normal or abnormal, Comprising, The controller is configured to classify the pixels along the path as abnormal or normal based on the plurality of difference vectors and determine the severity of the abnormal region. A polishing system.
Citation Information
Patent Citations
End point detecting device and end point detecting method
JP2000033561A
Residual film monitoring device, polishing device, semiconductor device manufacturing method and semiconductor device
JP2004009259A
Substrate Thickness Measurement Using Color Metrology
JP2019532274A
Thickness measurement of substrate using color metrology
US20190244374A1