The present disclosure relates to optical monitoring of a substrate, e.g., during processing such as chemical mechanical polishing.
An integrated circuit is typically formed on a substrate by the sequential deposition of conductive, semiconductive, or insulative layers on a silicon wafer. One fabrication step involves depositing a filler layer over a non-planar surface and planarizing the filler layer. For some applications, the filler layer is planarized until the top surface of a patterned layer is exposed. For example, a conductive filler layer can be deposited on a patterned insulative layer to fill the trenches or holes in the insulative layer. After planarization, the portions of the conductive layer remaining between the raised pattern of the insulative layer form vias, plugs, and lines that provide conductive paths between thin film circuits on the substrate. For other applications, the filler layer is planarized until a predetermined thickness is left over an underlying layer. For example, a dielectric layer deposited can be planarized for photolithography.
Chemical mechanical polishing (CMP) is one accepted method of planarization. This planarization method typically requires that the substrate be mounted on a carrier head. The exposed surface of the substrate is typically placed against a rotating polishing pad with a durable roughened surface. The carrier head provides a controllable load on the substrate to push it against the polishing pad. A polishing liquid, such as a slurry with abrasive particles, is typically supplied to the surface of the polishing pad.
One problem in CMP is using an appropriate polishing rate to achieve a desirable profile, e.g., a substrate layer that has been planarized to a desired flatness or thickness, or a desired amount of material has been removed. Variations in the initial thickness of a substrate layer, the slurry distribution, the polishing pad condition, the relative speed between the polishing pad and a substrate, and the load on a substrate can cause variations in the material removal rate across a substrate, and from substrate to substrate. These variations cause variations in the time needed to reach the polishing endpoint and the amount removed. Therefore, it may not be possible to determine the polishing endpoint merely as a function of the polishing time, or to achieve a desired profile merely by applying a constant pressure.
In some systems, a substrate is monitored in-situ during polishing, e.g., by an optical monitoring system. Thickness measurements from the in-situ monitoring system can be used to adjust pressure applied to the substrate to adjust the polishing rate and reduce within-wafer non-uniformity (WIWNU).
In one aspect, a method of training a neural network for spectrographic monitoring includes polishing a test substrate, measuring by an in-situ spectrographic monitoring system a sequence of test spectra of light reflected from the substrate during polishing of the test substrate, measuring by an in-situ non-optical monitoring system a sequence of test values from the substrate during polishing of the test substrate, measuring at least one of an initial characterizing value for the substrate before polishing or a final characterizing value for the substrate after polishing, inputting the sequence of test values and the initial characterizing value and/or final characterizing value into a thickness predictive model that outputs a sequence of training values with each respective training value in the sequence of training values associated with a respective test spectrum from the sequence of test spectra, and training an artificial neural network using the plurality of training spectra and the plurality of training values. The artificial neural network has a plurality of input nodes for a plurality of spectral values, an output node to output a characterizing value, and a plurality of hidden nodes connecting the input nodes to the output node.
These aspects may be embodied in computer program product tangibly embodied in a non-transitory computer readable media and comprising instructions for causing a processor to carry out operations, or in a processing system, e.g., a polishing system, having a controller to carry out the operations.
Implementations of any of the aspects may include one or more of the following features.
Certain implementations may have, but are not limited to, one or more of the following advantages. The spectra used for training of a machine learning system, e.g., a neural network, can be labelled more accurately, thus improving the predictive performance of the machine learning system. The thickness of a layer on a substrate can be measured more accurately and/or more quickly. Within-wafer thickness non-uniformity and wafer-to-wafer thickness non-uniformity (WIWNU and WTWNU) may be reduced, and reliability of an endpoint system to detect a desired processing endpoint may be improved.
The details of one or more embodiments are set forth in the accompanying drawings and the description below. Other features, aspects, and advantages will become apparent from the description, the drawings, and the claims.
Like reference numbers and designations in the various drawings indicate like elements.
One monitoring technique is to measure a spectrum of light reflected from a substrate being polished. A variety of techniques have been proposed to determine a characteristic value, e.g., a thickness of the layer being polished, from the measured spectrum. A possible technique is to train a neural network based on training spectra from sample substrates and measured characteristic values for those sample substrates. After training, during normal operation, a measured spectrum from a device substrate can be input to the neural network, and the neural network can output a characterizing value, e.g., a calculated thickness of a top layer of the substrate. A motivation to use neural networks is the potential to remove the impact of under-layer film thickness on the calculated thickness of the top layer.
In order to obtain the training data, a sequence of spectra can be measured during polishing of a test substrate. A characterizing value, e.g., the thickness, of the substrate can be measured before and after polishing, e.g., with a stand-alone or in-line metrology system. These two values would then be associated with the first and last spectra in sequence. Characterizing values for the remaining spectra in the sequence can be generated by linear interpolation, e.g., based on time. The training data would thus include the set of spectra, with each spectra having an associated characterizing value.
A problem with this technique is that the characterizing values, e.g., the thickness values, are known with certainty only for the initial and final spectra in the sequence. For many processes, the characterizing value can change non-linearly over time. In order to address this, signals from another in-situ monitoring system, e.g., non-optical monitoring system such as a motor current monitoring system, can be fed to a thickness predictive model. The thickness predictive model can output a thickness value for the time stamp of each spectrum in the sequence that is more accurate than simply using linear interpolation based on time.
The polishing apparatus 20 can include a polishing liquid supply port 40 to dispense a polishing liquid 42, such as an abrasive slurry, onto the polishing pad 30. The polishing apparatus 20 can also include a polishing pad conditioner to abrade the polishing pad 30 to maintain the polishing pad 30 in a consistent abrasive state.
A carrier head 50 is operable to hold a substrate 10 against the polishing pad 30. Each carrier head 50 also includes a plurality of independently controllable pressurizable chambers, e.g., three chambers 52a-52c, which can apply independently controllable pressurizes to associated zones 12a-12c on the substrate 10 (see
Returning to
Each carrier head 50 is suspended from a support structure 60, e.g., a carousel or track, and is connected by a drive shaft 62 to a carrier head rotation motor 64 so that the carrier head can rotate about an axis 51. Optionally each carrier head 50 can oscillate laterally, e.g., on sliders on the carousel, by motion along or track; or by rotational oscillation of the carousel itself. In operation, the platen 22 is rotated about its central axis 23, and the carrier head 50 is rotated about its central axis 51 and translated laterally across the top surface of the polishing pad 30.
The polishing apparatus also includes an in-situ spectrographic monitoring system 70, which can be used to control the polishing parameters, e.g., the applied pressure in one or more of the chambers 52a-52c, to control the polishing rate of one or more of the zones 12a-12c. The in-situ monitoring spectrographic system 70 generates measurement of the spectrum of light reflected from the substrate, which can be converted into a characteristic value indicative of the thickness of the layer being polished in each of the zones 12a-12c.
The spectrographic monitoring system 70 can include a light source 72, a light detector 74, and circuitry 76 for sending and receiving signals between a controller 90, e.g., a computer, and the light source 72 and light detector 74. One or more optical fibers can be used to transmit the light from the light source 72 to a window 36 in the polishing pad 30, and to transmit light reflected from the substrate 10 to the detector 74. For example, a bifurcated optical fiber 78 can be used to transmit the light from the light source 62 to the substrate 10 and back to the detector 74. As a spectrographic system, then the light source 72 can be operable to emit white light and the detector 74 can be a spectrometer.
The output of the circuitry 76 can be a digital electronic signal that passes through a rotary coupler 28, e.g., a slip ring, in the drive shaft 26 to the controller 90. Alternatively, the circuitry 76 could communicate with the controller 90 by a wireless signal. The controller 90 can be a computing device that includes a microprocessor, memory and input/output circuitry, e.g., a programmable computer. Although illustrated with a single block, the controller 90 can be a networked system with functions distributed across multiple computers.
In some implementations, the in-situ spectrographic monitoring system 70 includes a sensor 80 that is installed in and rotate with the platen 22. For example, the sensor 80 could be the end of the optical fiber 78. The motion of the platen 22 will cause the sensor 80 to scan across the substrate. As shown by in
Over one rotation of the platen, spectra are obtained from different positions on the substrate 10. In particular, some spectra can be obtained from locations closer to the center of the substrate 10 and some can be obtained from locations closer to the edge. The controller 90 can be configured to calculate a radial position (relative to the center of the substrate 10) for each measurement from a scan based on timing, motor encoder information, platen rotation or position sensor data, and/or optical detection of the edge of the substrate and/or retaining ring. The controller can thus associate the various measurements with the various zones 12a-12c (see
Returning to
The characterizing value is typically the thickness of the outer layer, but can be a related characteristic such as thickness removed. In addition, the characterizing value can be a more generic representation of the progress of the substrate through the polishing process, e.g., an index value representing the time or number of platen rotations at which the measurement would be expected to be observed in a polishing process that follows a predetermined progress.
The controller 90 can use a two-step process to generate a characterizing value from a measured spectrum from the in-situ spectrographic monitoring system 70. First, the dimensionality of the measured spectrum is reduced, and then the reduced dimensionality data is input to an artificial neural network, which will output the characterizing value. By performing this process for each measured spectrum, the artificial neural network can generate a sequence of characterizing values. This sequence can include characterizing values for different radial locations on the substrate, e.g., assuming that the sensor 80 is passing below the substrate.
The combination of the in-situ spectrographic monitoring system 70 and the controller 90 can provide an endpoint and/or polishing uniformity control system 100. That is, the controller 90 can detect a polishing endpoint and halt polishing and/or adjust polishing pressures during the polishing process to reduce polishing non-uniformity, based on the series of characterizing values.
The neural network 120 includes a plurality of input nodes 122 for each principal component, a plurality of hidden nodes 124 (also called “intermediate nodes” below), and an output node 126 that will generate the characteristic value. In a neural network having a single layer of hidden nodes, each hidden node 124 can be coupled to each input node 122, and the output node 126 can be coupled to each hidden node 220. In some implementations there are multiple output nodes, one of which provides the characteristic value.
In general, a hidden node 124 outputs a value that a non-linear function of a weighted sum of the values from the input nodes 122 to which the hidden node is connected.
For example, the output of a hidden node 124, designated node k, can be expressed as:
tan h(0.5*ak1(I1)+ak2(I2)+ . . . +akM(IM)+bk) Equation 1
where tan h is the hyperbolic tangent, akx is a weight for the connection between the kth intermediate node and the xth input node (out of M input nodes), and IM is the value at the Mth input node. However, other non-linear functions can be used instead of tan h, such as a rectified linear unit (ReLU) function and its variants.
The dimensional reduction module 110 will reduce a measured spectrum to a more limited number of component values, e.g., L component values. The neural network 120 includes an input node 122 for each component into which the spectrum is reduced, e.g., where the module 110 generates L component values the neural network 120 will include at least input nodes N1, N2 . . . NL.
Thus, where the number of input nodes corresponds the number of components to which the measured spectrum is reduced (i.e., L=M), the output Hk of a hidden node 124, designated node k, can be expressed as:
H
k=tan h(0.5*ak1(I1)+ak2(I2)+ . . . +akL(IL)+bk)
Assuming that the measured spectrum S is represented by a column matrix (i1, i2, . . . , in), the output of an intermediate node 124, designated node k, can be expressed as:
H
k=tan h(0.5*ak1(V1·S)+ak2(V2·S)+ . . . +akL(VL·S)+bk) Equation 2
where Vx is a row matrix (v1, v2, . . . , vn) that will provide a transformation of the measured spectrum to a value for the xth component of the reduced dimensionality data (out of L components). For example, Vx can be provided by the xth column (out of L columns) of the matrix W or W′ described below, i.e., Vx is the xth row of WT. Thus, Wx can represent an xth eigenvector from the dimensional reduction matrix.
The output node 126 can generate a characteristic value CV that is a weighted sum of the outputs of the hidden nodes. For example, this can be expressed as
CV=C
1
*H
1
+C
2
*H
2
+ . . . +C
L
*H
L
where Ck is the weight for the output of the kth hidden node.
However, neural network 120 may optionally include one or more other input nodes (e.g., node 122a) to receive other data. This other data could be from a prior measurement of the substrate by the in-situ monitoring system, e.g., spectra collected from earlier in the processing of the substrate, from a measurement of a prior substrate, e.g., spectra collected during processing of another substrate, from another sensor in the polishing system, e.g., a measurement of temperature of the pad or substrate by a temperature sensor, from a polishing recipe stored by the controller that is used to control the polishing system, e.g., a polishing parameter such as carrier head pressure or platen rotation rate use for polishing the substrate, from a variable tracked by the controller, e.g., a number of substrates since the pad was changed, or from a sensor that is not part of the polishing system, e.g., a measurement of a thickness of an underlying films by a metrology station. This permits the neural network 120 to take into account these other processing or environmental variables in calculation of the characterizing value.
Returning to
As a temperature monitoring system, the second in-situ monitoring system 150 can include a temperature sensor 152 to monitor a temperature of the polishing process, e.g., of the polishing pad 30 or substrate 10. The temperature sensor can be an infrared sensor, e.g., an infrared camera positioned to take an infrared image of the polishing pad 30. Alternatively, the temperature sensor 152 could be a thermocouple attached or embedded in another component, e.g., in the platen 22 or the carrier head 50, to measure a temperature of the polishing pad or substrate.
As an acoustic monitoring system, the second in-situ monitoring system 150 can include an active or passive acoustic sensor 154 to monitor vibrations from the interface between the substrate 10 and polishing pad 10.
As a motor torque monitoring system, the second in-situ monitoring system 150 can include a sensor to measure a motor torque. The measurement of motor torque can be a direct measurement of torque and/or a measurement of current supplied to a motor. For example, a current sensor 170 can monitor the current supplied to the platen motor 24 and/or a current sensor 172 can monitor the current supplied to the carrier head motor 64. Although the current sensor is illustrated as part of the motor, the current sensor could be part of the controller (if the controller itself outputs the drive current for the motors) or a separate circuit. Alternatively, a torque meter can be placed on the platen drive shaft 26 and/or a torque meter can be placed on the carrier head drive shaft 62.
As a friction monitoring, the second in-situ monitoring system 150 can include a sensor to measure friction against the substrate or carrier head, e.g., a strain gauge placed on the carrier head drive shaft 62 or on an internal spindle of the carrier head.
In any event, the output signal of the sensor of the second in-situ monitoring system 150, e.g., the temperature sensor 152, acoustic sensor 154, or current sensor 170 and/or 172, is directed to the control system 90.
Before being used for, e.g., device wafers, the dimensional reduction module 110 and the neural network 112 need to be configured. Referring to
Returning to
Ranking the eigenvectors by their associated eigenvalues shows the directions in which the dataset varies the most. A projection of a measured spectrum onto the highest ranked eigenvectors provides an efficient representation of the original vector in a significantly reduced basis.
As explanation, each training spectrum can be represented by a matrix:
R=(i1,i2, . . . ,in),
where ij represents the light intensity at the jth wavelength of a total of n wavelengths. The spectrum can include, for example, two-hundred to five-hundred intensity measurements; n can be two-hundred to five-hundred.
Suppose that m training spectra are generated, the m matrixes R can be combined to form the following matrix:
where ijk represents the light intensity at the kth wavelength of the jth training spectrum. Each row of the matrix A represents a training spectrum (e.g., a measurement at one location on a substrate).
A dimensional reduction process, such as principal component analysis (PCA), is applied to the matrix A. PCA performs an orthogonal linear transformation that transforms the data in the A matrix (m×n dimensions) to a new coordinate system such that the greatest variance by any projection of the data comes to lie on the first coordinate (called the first principal component), the second greatest variance on the second coordinate, and so on. Mathematically, the transformation is defined by a set of p-dimensional vectors of weights wk=(wk1, wk2, . . . wkp) that map each m-dimensional row vector Ai of the matrix A to a new vector of principal component scores ti=(tk1, tk2, . . . , tip), where tki is:
t
ki
=A
i
·w
k.
Each vector wk is constrained to be a unit vector. As a result, the individual variables of ti inherits the maximum possible variance from the matrix A. The decomposition of the matrix A can be written as:
T=AW,
where W is a n-by-p matrix whose columns are the eigenvectors of ATA.
Details of PCA are also discussed in Functional Data Analysis by James Ramsay and B. W. Silverman (Springer; 2nd edition (Jul. 1, 2005)), and Principal Component Analysis by I. T. Jolliffe (Springer; 2nd edition (Oct. 2, 2002).
Instead of PCA, the controller can use SVD (Singular Value Decomposition), which is a generalized eigen-decomposition of the training spectrum dataset, or ICA (Independent Component Analysis), in which a pre-specified number of statistically independent signals are found whose additive combinations give rise to the training spectrum dataset.
Next, the dimensionality can be reduced by keeping only the highest ranked eigenvectors. In particular, instead of p principal components, a total of L principal components, with L being an integer between 0 and p, e.g., three to ten, can be kept. For example, the T matrix can be reduced to a m×L matrix T′, e.g., by keeping using the leftmost L columns of the T matrix. Similarly, the W matrix can be reduced to a n×L matrix W′, e.g., by keeping the leftmost L columns of the W matrix.
As another example, a non-linear dimensionality reduction technique such as autoencoding could be used. An autoencoder used could be implemented as a neural network which attempts to reconstruct the original input (which may have a dimensionality of N) by passing it through multiple layers. One of the intermediate layers will have a reduced number of hidden neurons. The network is trained by minimizing the difference between the output layer and input layer. The values of the hidden neurons can be considered to be the reduced dimensionality spectra in such a case. This technique can provide an advantage over PCA and other similar techniques due to the fact that the dimensionality reduction is no longer a linear process.
For the configuration procedure for the neural network 120, the neural network 120 is trained using the component values and characteristic value for each training spectrum.
Each row of the matrix T′ corresponds to one of the training spectra, and is thus associated with a characteristic value. While the neural network 120 is operating in a training mode, such as a backpropagation mode, the values (t1, t2, . . . , tL) along a particular row are fed to the respective input nodes N1, N2 . . . NL for the principle components while the characteristic value V for the row is fed to the output node 126. This can be repeated for each row. This sets the values for ak1, etc., above.
Determination of the principal components, e.g., by PCA, SVD, ICA, etc., can be performed using a larger data than the data set used for training of the neural network. That is, the number of spectra used for determination of the principal components can be larger than the number of spectra having known characteristic values that are used for training. Once trained, the system should be ready for operation.
The system is now ready for operation. A spectrum measured from a substrate during polishing using the in-situ spectrographic monitoring system 70. The measured spectrum can be represented by a column matrix S=(i1, i2, . . . , in), where ij represents the light intensity at the jth wavelength of a total of n wavelengths. The column matrix S is multiplied by the W′ matrix to generate a column matrix, i.e., S·W′=P, where P=(P1, P2, . . . , PL), with Pi representing the component value of the ith principle component.
While the neural network 120 is used in an inference mode, these values (P1, P2, . . . , PL) are fed as inputs to the respective input nodes N1, N2, . . . NL. As a result, the neural network 120 generates a characteristic value, e.g., a thickness, at the output node 126.
The combined calculation performed by the dimensional reduction module 110 and the neural network 120 to generate the characteristic value CV can be expressed as follows: CV=C1*tan h(0.5(N1·S)+0.5b1)+C2*tan h(0.5(N2·S)+0.5b2)+ . . . +CL*tan h(0.5(NL·S)+0.5bL) where Nk=(ak1V1·+ak2V2·+ . . . +akLVL) with the weights aki being the weights set by the neural network 120 and the vectors Vi being the eigenvectors determined by the dimensional reduction module 110.
The architecture of the neural network 120 can vary in depth and width. For example, although the neural network 120 is shown with a single column of intermediate nodes 124, it could include multiple columns. The number of intermediate nodes 124 can be equal to or greater than the number of input nodes 122.
Although a neural network has been described above, other algorithms that are trainable by machine learning techniques can be used, e.g., gradient boosted trees, or approximate nearest neighbors methods such as locality-sensitive hashing.
As noted above, the controller 90 can associate the various measured spectra with different zones 12a-12c (see
The sequence of characteristic values can be used to control the polishing system. For example, referring to
A polishing endpoint can be triggered by the controller 90 at the time that a function indicates the characteristic values reaches the target value V.
Returning to
Although linear interpolation based on time could be used to generate characterizing values D1, . . . DN-1, for some applications linear interpolation does not generate sufficiently accurate characterizing values.
The thickness predictive model 260 includes a model of the substrate being polished, e.g., an indication of the number of layers to be polished in the polishing operation and an approximate thickness of each layer or a relative polishing rate for each layer. Based on data from the second in-situ monitoring system 150, the predictive model 260 can make more accurate determination of characteristic values than simple linear interpolation.
For example, the predictive model 260 can detect from the data from the second in-situ monitoring system a time during polishing of a transition between layers being polished. Characterizing values from the start of polishing to the transition time can be linearly interpolated at a first slope, and characterizing values from the transition time to the end of polishing can be linearly interpolated at a second slope, with the ratio between the first slope and second slope set by the relative polishing rate for each layer stored by the thickness predictive model.
More particularly, in order to generate the training data set 200, at least one test substrate can be polished by a polishing apparatus 20 in a data-gathering mode. During polishing in the data-gathering mode, the test substrate is monitored by both the spectrographic in-situ monitoring system 70 and the second in-situ monitoring system 150. The spectrographic in-situ monitoring system 70 measures a sequence of spectra, S0, S1, . . . SN, and the control system stores both the spectra S0, S1, . . . SN, and the respective time of measurement T0, T1, T2, . . . , TN for each respective spectrum. Similarly, the second in-situ monitoring system 150 generates a sequence of measurements X0, X1, X2, . . . XM, and the control system stores both the measurements X0, X1, X2, . . . XM, and the respective time of measurement t0, t1, t2, . . . , tM for each respective measurement. What the measurements X0, X1, X2, . . . XM, represent depend on the type of monitoring system, e.g., temperature values for a temperature monitoring system, motor current values for a motor current monitoring system, acoustic signal strength for an acoustic monitoring system, etc.
In some implementations, the spectrographic in-situ monitoring system 70 and the second in-situ monitoring system 150 generate measurements at the same frequency. In this case M=N. However, this is not required, e.g., the second in-situ monitoring system 150 can generate measurements at a higher or lower frequency than the spectrographic in-situ monitoring system 70.
Referring to
In some implementations, the predictive model 270 analyzes the measurements X0, X1, X2, . . . XM, to segment the polishing process by time into two or more time periods. The predictive model 270 can calculate a transition time between the segments by detecting a sharp change in the measurements, e.g., by detecting that the first derivative of the sequence of measurements exceeds a threshold. For example,
The characterizing values D0, D1, . . . Da in the first time segment, e.g., before transition time tA, can be computed by the thickness predictive model according to a first function, whereas characterizing values Da+1, Da+2, . . . DN in the second time segment, e.g., after transition time tA, can be computed by the thickness predictive model according to a different second function. The first and second functions can be linear functions with different slopes, although other functions, e.g., higher order polynomial functions, are possible.
In some implementations, the predictive model stores a preset polishing rate ratio, e.g., an empirically derived ratio, indicating the ratio of polishing rates for the different time segments. For example, if the predictive model indicates that the polishing rate in the second time period is R times the polishing rate in the first time period, the predictive model can generate values for D from subject to the restraints that D=D0 at time T0, D=DN at time TN, D is a first linear function from T0 to tA, D is linear a second linear function from tA to TN, and the slope of the second linear function is R times slope of the first linear function. This is sufficient information to generate the training characterizing values D0, D1, D2, . . . DN at respective times T0, T1, T2, . . . , TN.
In some implementations, the predictive model generates a polishing rate ratio based on the measurements X0, X1, X2, . . . XM, during the respective time periods. For example, the predictive model can calculate an average value XA for the measurements in the first time period, and an average value XB for the measurements in the second time period. These values can then be compared to infer which time segment was polishing faster, and a polishing rate ratio. For example, if the average motor torque for the second time segment (tA to TN) is higher than the first time segment (T0 to tA), then the predictive model can infer that more material was during the second time segment. Similarly, higher temperature can indicate a higher polishing rate, and a higher acoustic signal can indicate a higher polishing rate. The predictive model can generates a polishing rate ratio based on the relative difference between XA and XB.
In some implementations, the predictive model includes a function that converts the measurements X0, X1, X2, . . . XM, into a respective normalized polishing rate for each measurement. This effectively permits continuous variation of the polishing rate rather than linear interpolation.
Although the discussion above has focused on time segments within polishing of a single test substrate, if multiple test substrates are used to generate the test spectra, then similar comparisons can be made between polishing of different test substrates.
For any of the above approaches, once the test characterizing values D0, D1, . . . DN have been generated for the respective time T0, T1, T2, . . . , TN, the predictive model can pair each respective characterizing value with the respective test spectrum S0, S1, S2, . . . SN, that was measured at that respective time T0, T1, T2, . . . , TN. This data can then be output as the training data 200 (see
The processes and logic flows described in this specification can be performed by one or more programmable processors executing one or more computer programs to perform functions by operating on input data and generating output. The processes and logic flows can also be performed by, and apparatus can also be implemented as, special purpose logic circuitry, e.g., an FPGA (field programmable gate array) or an ASIC (application-specific integrated circuit).
The above described polishing apparatus and methods can be applied in a variety of polishing systems. Either the polishing pad, or the carrier heads, or both can move to provide relative motion between the polishing surface and the substrate. For example, the platen may orbit rather than rotate. The polishing pad can be a circular (or some other shape) pad secured to the platen. The polishing system can be a linear polishing system, e.g., where the polishing pad is a continuous or a reel-to-reel belt that moves linearly. The polishing layer can be a standard (for example, polyurethane with or without fillers) polishing material, a soft material, or a fixed-abrasive material. Terms of relative positioning are used relative orientation or positioning of the components; it should be understood that the polishing surface and substrate can be held in a vertical orientation or some other orientation with respect to gravity.
Although the description above has focused on chemical mechanical polishing, the control system can be adapted to other semiconductor processing techniques, e.g., etching or deposition, e.g., chemical vapor deposition. In addition, the technique can be applied to an in-line or stand-alone metrology system rather than in-situ monitoring. Al
Particular embodiments of the invention have been described. Other embodiments are within the scope of the following claims.
This application claims priority to U.S. Application Ser. No. 63/155,926, filed on Mar. 3, 2021, the disclosure of which is incorporated by reference.
Number | Date | Country | |
---|---|---|---|
63155926 | Mar 2021 | US |