Source: https://patents.google.com/patent/US9142466B2/en
Timestamp: 2018-09-21 11:06:45
Document Index: 787727969

Matched Legal Cases: ['Application No. 0301248', 'application No. 60', 'Application No. 08730580', 'Application No. 2009', 'Application No. 2013', 'Application No. 10']

US9142466B2 - Using spectra to determine polishing endpoints - Google Patents
Using spectra to determine polishing endpoints Download PDF
US9142466B2
US9142466B2 US14041113 US201314041113A US9142466B2 US 9142466 B2 US9142466 B2 US 9142466B2 US 14041113 US14041113 US 14041113 US 201314041113 A US201314041113 A US 201314041113A US 9142466 B2 US9142466 B2 US 9142466B2
US14041113
US20140045282A1 (en )
Methods of determining a polishing endpoint are described using spectra obtained during a polishing sequence. In particular, techniques for using only desired spectra, faster searching methods and more robust rate determination methods are described.
This application is a continuation of U.S. patent application Ser. No. 12/036,174, filed Feb. 22, 2008, which claims priority to U.S. Provisional Application Ser. No. 60/891,487, filed on Feb. 23, 2007. The disclosure of the prior applications is considered part of and is incorporated by reference in the disclosure of this application.
One problem in CMP is determining whether the polishing process is complete, i.e., whether a substrate layer has been planarized to a desired flatness or thickness, or when a desired amount of material has been removed. Overpolishing (removing too much) of a conductive layer or film leads to increased circuit resistance.
On the other hand, underpolishing (removing too little) of a conductive layer leads to electrical shorting. Variations in the initial thickness of the substrate layer, the slurry composition, the polishing pad condition, the relative speed between the polishing pad and the substrate, and the load on the substrate can cause variations in the material removal rate. These variations cause variations in the time needed to reach the polishing endpoint. Therefore, the polishing endpoint cannot be determined merely as a function of polishing time.
Techniques are described for improving endpoint determination.
FIG. 1 is a schematic cross-sectional view of a polishing system.
FIG. 2 is a schematic top view of a substrate on a platen with representative flash locations.
FIG. 3 is a flow diagram of determining a polishing endpoint.
FIG. 4 is a representative GUI of spectra obtained for a library.
FIG. 5 is a representative GUI of spectra obtained for a library after an outlier spectrum has been removed.
FIG. 6 is a graph showing multiple spectra and robust line fitting to determine endpoint.
FIG. 7 is a graph showing spectra averaging and robust line fitting to determine endpoint.
Described herein are systems for polishing substrates and determining a polishing endpoint. An optical detector is used to obtain spectra from a substrate during polishing. Once the spectra are obtained, the spectra are compared to spectra in a library. The comparison can be done using various techniques, such as least sum of the squares matching method, which is described further in U.S. application Ser. No. 11/213,344, filed Aug. 36, 2005, and U.S. application Ser. No. 60/747,768, filed May 19, 2006, which are incorporated herein for all purposes. If each spectrum in the library is assigned an index number, the matching index numbers can be plotted according to time and a line fit to the plotted index numbers using robust line fitting. When the line intersects the index corresponding to a target spectrum the target endpoint is reached and polishing can be stopped.
Spectra that are obtained to create the library and during polishing are prone to include noise or undesirable features. The spectra that include spurious data (e.g., due to noise or flashing a location such as a scribe line) can skew results when used to determine the endpoint. The spectra with noise will depart significantly from the “true” spectra that should result from a measurement of the substrate. These outlier spectra can be removed from the endpoint determination or can be compensated for using techniques described herein.
FIG. 1 shows a polishing apparatus 20 operable to polish a substrate 10. The polishing apparatus 20 includes a rotatable disk-shaped platen 24, on which a polishing pad 30 is situated. The platen is operable to rotate about axis 25. For example, a motor can turn a drive shaft 22 to rotate the platen 24.
The polishing apparatus 20 includes a combined slurry/rinse arm 39. During polishing, the arm 39 is operable to dispense a polishing liquid 38, such as a slurry. Alternatively, the polishing apparatus includes a slurry port operable to dispense slurry onto polishing pad 30.
As mentioned above, the platen 24 includes the recess 26, in which the optical head 53 is situated. The optical head 53 holds one end of the trunk 55 of the bifurcated fiber cable 54, which is configured to convey light to and from a substrate surface being polished. The optical head 53 can include one or more lenses or a window overlying the end of the bifurcated fiber cable 54. Alternatively, the optical head 53 can merely hold the end of the trunk 55 adjacent the solid window in the polishing pad. The optical head 53 can hold the above described nozzles of the flushing system. The optical head 53 can be removed from the recess 26 as required, for example, to effect preventive or corrective maintenance.
The light source 51 is operable to emit white light. In one implementation, the white light emitted includes light having wavelengths of 200-800nanometers. A suitable light source is a xenon lamp or a xenon mercury lamp.
The light detector 52 can be a spectrometer. A spectrometer is basically an optical instrument for measuring intensity of light over a portion of the electromagnetic spectrum. A suitable spectrometer is a grating spectrometer. Typical output for a spectrometer is the intensity of the light as a function of wavelength.
The light source 51 and light detector 52 are connected to a computing device operable to control their operation and to receive their signals. The computing device can include a microprocessor situated near the polishing apparatus, e.g., a personal computer. With respect to control, the computing device can, for example, synchronize activation of the light source 51 with the rotation of the platen 24. As shown in FIG. 2, the computer can cause the light source 51 to emit a series of flashes starting just before and ending just after the substrate 10 passes over the in-situ monitoring module. (Each of points 501-511 depicted represents a location where light from the in-situ monitoring module impinged and reflected off.) Alternatively, the computer can cause the light source 51 to emit light continuously starting just before and ending just after the substrate 10 passes over the in-situ monitoring module. Although not shown, each time the substrate 10 passes over the monitoring module, the alignment of the substrate with the monitoring module can be different than in the previous pass. Over one rotation of the substrate, spectra are obtained from different angular locations on the substrate, as well as from different radial locations. That is, some spectra are obtained from locations closer to the center of the substrate and some are closer to the edge. The substrate can be sectioned off in to radial zones. Three, four, five, six, seven or more zones can be defined on the surface of the substrate. In some of the methods described herein, spectra are grouped in their corresponding zones.
With respect to receiving signals, the computing device can receive, for example, a signal that carries information describing a spectrum of the light received by the light detector. The computing device can process the signal to determine an endpoint of a polishing step. Without being limited to any particular theory, the spectra of light reflected from the substrate evolve as polishing progresses. Properties of the spectrum of the reflected light changes as a thickness of the film changes, and particular spectra are exhibited by particular thicknesses of the film. The computing device can execute logic that determines, based on one or more of the spectra, when an endpoint has been reached. The one or more spectra on which an endpoint determination is based can include a target spectrum. Herein, target spectrum are referred to, but a reference spectrum is also intended to be covered. A target spectrum can be the spectrum that corresponds to a wafer when the polishing endpoint is achieved. Because of the lag time between the system receiving a stop polishing signal and the time that the platen stops rotating, the signal to stop polishing may be sent at a time prior to the actual endpoint, that is when a reference spectrum is achieved. Because the correlation between the reference spectrum and target spectrum depends on the polishing and system parameters, for the sake of simplicity, the target spectrum is referred to in this application.
FIG. 3 shows a method 300 for determining an endpoint of a polishing step. Spectra are collected from polishing a set up substrate (step 302). The spectra are stored in a library (step 304). Alternatively, the library can include spectra that are not collected but rather are calculated based on theory (e.g., from a model that includes expected thicknesses in the substrate and indexes of refraction of the layers). The spectra are indexed so that each spectrum has a unique index value. An index value can be selected to monotonically increase as polishing progresses, e.g., the index values can be proportional to a number of platen rotations. Thus, each index number can be a whole number, and the index number can represent the expected platen rotation at which the associated spectrum would appear. The library can be implemented in memory of the computing device of the polishing apparatus.
A substrate from the batch of substrates is polished, and the following steps are performed for each platen revolution. One or more spectra are measured to obtain a current spectra for a current platen revolution (step 306). The spectra stored in the library which best fits the current spectra is determined (step 308). The index of the library spectrum determined to best fit the current spectra is appended to an endpoint index trace (step 310). Endpoint is called when the endpoint trace reaches the index of the target spectrum (step 312).
In some embodiments, the indexes that are matched to each obtained spectrum are plotted according to time or platen rotation. A line is fit to the plotted index numbers using robust line fitting. Where the line meets the target index defines the endpoint time or rotation.
In some embodiments, the collected spectra are processed to enhance accuracy and/or precision. The processing techniques described herein can be used alone or in combination to improve the results of endpoint determination.
One method of improving the endpointing technique is to improve the library against which the sample data are compared. Referring to FIG. 4, a GUI 400 shows a graphical representation of the eight spectra obtained from a single zone on a substrate during a single rotation. One of the spectra 410 is significantly different from the rest. Here, seven of the spectra 401, 402, 403, 404, 405, 406, 407 appear to have similar intensities at each wavelength. However, one of the spectra 410 exhibits different intensities at most of the wavelengths from the other seven.
The outlier spectra can be visually determined and selected by the user. Alternatively, the system can automatically determine that there is an outlier spectra. The outlier can be found by calculating for each spectrum the cumulative sum of squares difference between the spectrum and all other spectra. In some embodiments, all of the spectra that are compared to one another are within the same radial zone and are obtained during a either the same rotation or within a predefined time period. The cumulative sum of squares difference 415 can be displayed on GUI 400. Optionally, this value can be normalized by dividing each spectrum by the lowest cumulative sum of squares difference for the spectra. The normalized results 420 can be displayed in the GUI. The spectrum with a normalized sum of squares value that exceeds a predetermined value or threshold 440, such as 1.5 or 2, is discarded. If the cumulative sum of squares difference is not normalized, the absolute value of the cumulative sum of squares difference can be used to determine which spectrum is an outlier. Again, a predefined value can be set as the threshold for the outlier. The predetermined value can be determined experimentally.
Referring to FIG. 5, the remaining spectra can be displayed after the outlier is discarded. Because all of the spectra may be very close or there may be more than one outlier, the results can be visually inspected and altered by the user. The user can select which spectra to use by checking a box 430. Alternatively, the user can change the threshold 440 that defines which spectra are kept and which are discarded. Discarding the spectrum can mean simply not using that spectrum in subsequent calculations or deleting the spectrum.
Although eight spectra, or flashes, are shown, any number of spectra that are obtained during a rotation can be used. However, typically at least three spectra are desirable, and between five and ten spectra provide an adequate amount of data along with a desirable, i.e., fast, processing speed.
The automatic method applied to the library can similarly, or alternatively, be applied to the spectra obtained during substrate polishing. The source spectra used to generate an endpoint signal can be similarly sorted to discard any spectra which do not match the majority of measured spectra obtained during polishing. The outlier or outliers can be determined by calculating for each spectrum the cumulative sum of squares difference between the spectrum and all other spectra. Spectra taken during a single rotation are grouped together. Optionally, the spectra can be grouped into zones and single zones can be addressed individually. This value is normalized by dividing each spectrum by the lowest cumulative sum of squares difference for the spectra. The spectrum with a normalized sum of squares value that exceeds a predetermined value is discarded. The remaining spectra can be displayed for user review and editing after the outlier is discarded, such as for the user to determine whether the threshold should be reset for the next polishing sequence.
Another method that can be applied during the endpointing process is to limit the portion of the library that is searched for matching spectra. The library typically includes a wider range of spectra than will be obtained while polishing a substrate. The wider range accounts for spectra obtained from a thicker starting layer and spectra obtained after overpolishing. During substrate polishing, the library searching is limited to a predetermined range of library spectra. In some embodiments, the current rotational index N of a substrate being polished is determined. N can be determined by searching all of the library spectra. For the spectra obtained during a subsequent rotation, the library is searched within a range of freedom of N. That is, if during one rotation the index number is found to be N, during a subsequent rotation which is X rotations later, where the freedom is Y, the range that will be searched is (N+X)±Y. For example, if at the first polishing rotation of a substrate, the matching index is found to be 8 and the freedom is selected to be 5, for spectra obtained during the second rotation, only spectra corresponding to index numbers 9±5 are looked at for a match.
Alternatively, if the index numbers assigned to the spectra in the library approximate a platen rotation, then the library search can be limited to the predetermined freedom by the platen rotation. That is, if spectra are obtained at rotation 8 and the degrees of free is 6, the library can be searched for matches with spectra that are within 8 ±6.
Either of the above mentioned techniques can be faster than searching the entire library for a match. Increasing the processing speed can enable the spectra matching to be performed during substrate polishing to determine the endpoint. Additionally, this can prevent order skipping, that is, where a system provides the same spectra for layer thickness that differ by a regularly recurring thickness, such as 2000 angstroms, which can occur because spectra patterns tend to repeat.
As noted above, multiple spectra can be obtained during a single rotation. In one method of determining the endpoint, each spectrum is matched to an index number in the library. Each spectrum is then used for the robust line fit. The line corresponds to the rate of polishing. Referring to FIG. 6, graph 600 shows twenty spectra that were matched to rotational indices in the library and were plotted according to time. There is some scatter of the data due to each of the spectra matching up with different indices. The scatter may be due to non-uniform thicknesses within the zone, noisy data or a combination of factors. Where two or more spectra overlap, a larger symbol is drawn on the graph 600.
As an alternative method, the spectra are first averaged and then matched to the library. Referring to FIG. 7, all spectra are averaged and the average spectrum is used to search the library for the best index match. Using the same raw spectra as used in the technique described with respect to FIG. 6, a different robust line fit result is obtained. This results in a different endpoint determination.
1. A method for determining outlier spectra, comprising:
while polishing a substrate, obtaining at least three spectra from a surface of the substrate during a scan of an optical monitoring module across the substrate;
calculating a cumulative sum of differences for each spectrum of the at least three spectra from the scan to generate at least three cumulative sums of differences, wherein calculating the cumulative sum of differences for the each spectrum includes calculating a sum of differences between the each spectrum of the at least three spectra of the scan and each of all other spectra of the at least three spectra of the scan to generate a plurality of sums of differences and summing the plurality of sums of differences to generate the cumulative sum of differences;
selecting an outlier spectrum from the at least three spectra based on comparing the at least three cumulative sums of differences to a threshold; and
discarding the outlier spectrum.
2. The method of claim 1, wherein calculating the sum of differences between the each spectrum of the at least three spectra and the each of all other spectra of the at least three spectra comprises calculating a sum of squared differences between the each spectrum and the each of the all other spectra of the at least three spectra.
3. The method of claim 1, wherein comparing the at least three cumulative sums of differences to the threshold comprises selecting a lowest cumulative sum of the at least three cumulative sums of differences and dividing each cumulative sum of differences by the lowest cumulative sum to obtain a normalized number for each spectrum of the at least three spectra.
4. The method of claim 3, wherein selecting the outlier spectrum comprises selecting the spectrum having a normalized number over a predetermined threshold.
5. The method of claim 1, wherein the scan of the optical monitoring module across the substrate corresponds to a single rotation of a platen supporting the optical monitoring module.
6. The method of claim 1, wherein the scan of the optical monitoring module across the substrate corresponds to a single rotation of a platen supporting the optical monitoring module.
7. A method of determining an endpoint, comprising:
while polishing a substrate, obtaining at least three spectra from a surface of the substrate during a first scan of an optical monitoring module across the substrate;
calculating a cumulative sum of differences for each spectrum of the at least three spectra of the first scan to generate at least three cumulative sums of differences, wherein calculating the cumulative sum of differences for the each spectrum includes calculating a sum of differences between the each spectrum of the at least three spectra of the first scan and each of all other spectra of the at least three spectra of the first scan to generate a plurality of sums of differences and summing the plurality of sums of differences to generate the cumulative sum of differences;
selecting an outlier spectrum from the at least three spectra based on comparing the at least three cumulative sums of differences to a threshold;
discarding the outlier spectrum; and
comparing non-discarded spectra obtained from the first scan to a library of spectra to find a first matching spectrum.
while polishing the substrate, obtaining at least three spectra from a surface of the substrate during a second scan of an optical monitoring module across the substrate;
calculating a cumulative sum of differences for each spectrum of the at least three spectra of the second scan to generate at least three more cumulative sums of differences, wherein calculating the cumulative sum of differences for the each spectrum of the second scan includes calculating a sum of differences between the each spectrum of the at least three spectra of the second scan and each of all other spectra of the at least three spectra of the second scan to generate a second plurality of sums of differences and summing the second plurality of sums of differences to generate the cumulative sum of differences for the each spectrum of the at least three spectra of the second scan;
selecting a second outlier spectrum from the at least three spectra of the second scan based on comparing the at least three more cumulative sums of differences to the threshold;
discarding the second outlier spectrum;
comparing non-discarded spectra obtained during the second scan to the library of spectra to find a second matching spectrum;
determining a polishing rate based on a change of the first matching spectrum for the spectra of the first scan and the second matching spectrum for the spectra of the second scan; and
projecting a polishing endpoint based on the polishing rate and a target spectrum.
9. The method of claim 7, wherein calculating the sum of differences between the each spectrum of the at least three spectra and the each of all other spectra of the at least three spectra comprises calculating a sum of squared differences between the each spectrum and the each of the all other spectra of the at least three spectra.
10. The method of claim 7, wherein comparing the at least three cumulative sums of differences to the threshold comprises selecting a lowest cumulative sum of the at least three cumulative sums of differences and dividing each cumulative sum of differences by the lowest cumulative sum to obtain a normalized number for each spectrum of the at least three spectra.
11. The method of claim 10, wherein selecting the outlier spectrum comprises selecting the spectrum having a normalized number over a predetermined threshold.
12. A computer program product, encoded on a tangible computer-readable storage device, operable to cause data processing apparatus to perform operations comprising:
receiving at least three spectra from a surface of the substrate during a scan of an optical monitoring module across the substrate;
calculating a cumulative sum of differences for each spectrum of the at least three spectra from the scan to generate at least three cumulative sums of differences, wherein calculating the cumulative sum of differences for the each spectrum includes calculating a sum of differences between the each spectrum of the at least three spectra from the scan and each of all other spectra of the at least three spectra from the scan to generate a plurality of sums of differences and summing the plurality of sums of differences to generate the cumulative sum of differences;
13. The computer program product of claim 12, wherein calculating the sum of differences between the each spectrum of the at least three spectra and the each of all other spectra of the at least three spectra comprises calculating a sum of squared differences between the each spectrum and the each of the all other spectra of the at least three spectra.
14. The computer program product of claim 12, wherein comparing the at least three cumulative sums of differences to the threshold comprises selecting a lowest cumulative sum of the at least three cumulative sums of differences and dividing each cumulative sum of differences by the lowest cumulative sum to obtain a normalized number for each spectrum of the at least three spectra.
15. The computer program product of claim 14, wherein selecting the outlier spectrum comprises selecting the spectrum having a normalized number over a predetermined threshold.
16. The computer program product of claim 12, wherein the scan of the optical monitoring module across the substrate corresponds to a single rotation of a platen supporting the optical monitoring module.
US14041113 2007-02-23 2013-09-30 Using spectra to determine polishing endpoints Active US9142466B2 (en)
US89148707 true 2007-02-23 2007-02-23
US30617408 true 2008-02-22 2008-02-22
US12036174 US8569174B2 (en) 2007-02-23 2008-02-22 Using spectra to determine polishing endpoints
US14041113 US9142466B2 (en) 2007-02-23 2013-09-30 Using spectra to determine polishing endpoints
US30617408 Continuation 2008-02-22 2008-02-22
US12036174 Continuation US8569174B2 (en) 2007-02-23 2008-02-22 Using spectra to determine polishing endpoints
US20140045282A1 true US20140045282A1 (en) 2014-02-13
US9142466B2 true US9142466B2 (en) 2015-09-22
ID=39710785
US12036174 Active 2032-03-25 US8569174B2 (en) 2007-02-23 2008-02-22 Using spectra to determine polishing endpoints
US14041113 Active US9142466B2 (en) 2007-02-23 2013-09-30 Using spectra to determine polishing endpoints
US (2) US8569174B2 (en)
EP (1) EP2125291A4 (en)
JP (2) JP5654753B2 (en)
KR (3) KR101504508B1 (en)
WO (1) WO2008103964A3 (en)
US8942842B2 (en) 2011-04-28 2015-01-27 Applied Materials, Inc. Varying optical coefficients to generate spectra for polishing control
WO2013133974A1 (en) 2012-03-08 2013-09-12 Applied Materials, Inc. Fitting of optical model to measured spectrum
KR20150007967A (en) 2013-07-11 2015-01-21 가부시키가이샤 에바라 세이사꾸쇼 Polishing apparatus and polished-state monitoring method
JP2006525593A (en) 2003-04-29 2006-11-09 アノト アクティエボラーク The method for position decoding, apparatus, computer program and storage medium the present application, the Swedish Patent Application No. 0301248-1, filed April 29, 2003 included herein by reference together, and 2003 4 It claims the benefit of U.S. provisional Patent application No. 60 / 466,036, filed 29th month.
JP2005012218A (en) 2003-06-18 2005-01-13 Applied Materials Inc Method and system for monitoring etch process
JP2009505847A (en) 2005-08-22 2009-02-12 アプライド マテリアルズ インコーポレイテッドＡｐｐｌｉｅｄ Ｍａｔｅｒｉａｌｓ，Ｉｎｃｏｒｐｏｒａｔｅｄ Apparatus and method for monitoring based on the spectrum of the chemical mechanical polishing
David et al., "Spectrum Based Polishing Control", U.S. Appl. No. 60/747,768, filed May 19, 2006, 56 pp.
Extended European Search Report in EP Application No. 08730580.1, dated Jul. 5, 2013, 7 pages.
International Search Report and Written Opinion of the International Searching Authority, International Application U.S. Appl. No. PCT/US2006/032659, May 16, 2007, 17 pp.
International Search Report and Written Opinion of the International Searching Authority, International Application U.S. Appl. No. PCT/US2008/054807, Jul. 11, 2008, 11 pp.
Office Action in Japanese Application No. 2009-551052, dated Dec. 18, 2012, 4 pages (No English Translation).
Office Action in JP Application No. 2013-127106, issued Jun. 3, 2014, 5 pages (with English translation).
Office Action in KR Application No. 10-2014-7032982, dated Jan. 12, 2015, 3 pages.
WO2008103964A3 (en) 2008-11-27 application
EP2125291A4 (en) 2013-08-07 application
KR101504508B1 (en) 2015-03-20 grant
KR101643992B1 (en) 2016-07-29 grant
JP2010519771A (en) 2010-06-03 application
JP2013232660A (en) 2013-11-14 application
JP5654753B2 (en) 2015-01-14 grant
KR20150140400A (en) 2015-12-15 application
JP5774059B2 (en) 2015-09-02 grant
US20080206993A1 (en) 2008-08-28 application
KR20140147146A (en) 2014-12-29 application
US8569174B2 (en) 2013-10-29 grant
WO2008103964A2 (en) 2008-08-28 application
KR20090112765A (en) 2009-10-28 application
EP2125291A2 (en) 2009-12-02 application
US20140045282A1 (en) 2014-02-13 application
KR101678082B1 (en) 2016-11-21 grant
US20030181139A1 (en) 2003-09-25 Windows configurable to be coupled to a process tool or to be disposed within an opening in a polishing pad
WO1994007110A1 (en) 1994-03-31 Optical endpoint determination during the processing of material layers
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:LEE, HARRY Q.;SWEDEK, BOGUSLAW A.;BENVEGNU, DOMINIC J.;AND OTHERS;SIGNING DATES FROM 20080319 TO 20080320;REEL/FRAME:031881/0020