Control of processing parameters for substrate polishing with substrate precession movement
The strategy for pressure distribution across CMP zones, considering substrate orientation and precession, addresses uneven polishing in CMP processes, achieving uniform substrate thickness and material removal.
Patent Information
- Application Number
- JP2025039656
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2021-03-05
- Filing Date
- 2025-03-12
- Publication Date
- 2025-07-08
- Estimated Expiration
- 2042-02-25
AI Technical Summary
Chemical mechanical polishing (CMP) processes face challenges in achieving consistent material removal rates due to variations in substrate thickness, slurry composition, polishing pad condition, relative speed, and applied load, leading to uneven polishing and difficulty in reaching the desired substrate layer profile.
A strategy is developed to control the polishing process by calculating pressure distributions across angularly spaced zones of the carrier head, using a minimization algorithm to align the predicted thickness profile with the target profile, accounting for substrate orientation and precession motion, and adjusting pressures dynamically to correct angular asymmetry.
This approach enhances the reliability of achieving uniform substrate thickness by minimizing angular direction asymmetry and optimizing operating parameters, ensuring consistent material removal across the substrate.
Smart Images

Figure 2025102803000001_ABST
Abstract
Description
Technical Field
[0001] The present disclosure generally relates to the control of processing parameters for chemical mechanical polishing.
Background Art
[0002] Integrated circuits are typically formed on a substrate by sequentially depositing conductive, semiconductive, or insulating layers on a silicon wafer. One manufacturing process involves depositing a fill layer over a non-planar surface and planarizing the fill layer until, for example, the top surface of a patterned layer is exposed or a predetermined thickness remains over the non-planar surface. Additionally, photolithography typically requires planarization of the substrate surface.
[0003] Chemical mechanical polishing (CMP) is an 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 in contact with a rotating polishing pad having a durable roughened surface. The carrier head provides a controllable load on the substrate to press the substrate against the polishing pad. A polishing fluid, such as a slurry having abrasive particles, is typically supplied to the surface of the polishing pad.
[0004] One challenge in CMP is selecting an appropriate polishing rate to achieve a desired profile, such as a substrate layer planarized to a desired flatness or thickness, or a desired amount of material removed. Additionally, variations in the initial thickness of the substrate layer, slurry composition, polishing pad condition, relative speed between the polishing pad and the substrate, and load applied to the substrate can cause variations in the material removal rate across and from substrate to substrate. These variations cause variations in the time required to reach the polishing endpoint and the amount removed.
Summary of the Invention
[0005] In one aspect, generating a strategy for a polishing process includes receiving a target removal profile including target thicknesses to be removed at a plurality of locations angularly spaced around the center of the substrate, storing a first function that provides the substrate orientation for a zone over time, storing a second function that defines the polishing rate under one of the zones as a function of one or more pressures from one or more of a plurality of pressurizable zones of the carrier head that are angularly spaced around the center of the substrate, and calculating a strategy that defines the pressure for a particular zone over time for each of the plurality of zones. Calculating the strategy includes calculating a predicted thickness profile after polishing from the second function that defines the polishing rate and the first function that provides the substrate orientation for the zone over time, and applying a minimization algorithm that reduces the difference between the predicted thickness profile and the target thickness profile.
[0006] In another aspect, generating a strategy for controlling a polishing system includes receiving a target removal profile including target thicknesses to be removed at a plurality of locations on the substrate that are angularly distributed around the center of the substrate, and storing a first function that defines the polishing rate of a zone from a plurality of pressurizable zones of the carrier head that are angularly distributed around the center of the carrier head. The first function defines the polishing rate for the zone as a function of one or more pressures from one or more of the plurality of pressurizable zones of the carrier head. For each particular zone of the plurality of zones, the strategy that defines the pressure for the particular zone over time is calculated by using the first function to calculate a predicted thickness profile after polishing and minimizing a cost function that incorporates a first term representing the difference between the predicted thickness profile and the target thickness profile.
[0007] The implementation form may include one or more of the following features. The cost function may include a factor based on the difference between the predicted thickness profile provided by the polishing parameters and the target thickness removal profile. The minimization of the cost function may be at least partially represented by the minimization of , where R is the target thickness removal profile, u[t] is a vector representing the polishing parameters as a function of time, B[t] is a selector matrix that changes over time in accordance with the first function, and Δt is the time step in the addition. The second function may be a matrix based on Preston's equation. The second term may be the sum of the pressure differences between consecutive pressures applied by a specific zone. The pressure for the strategy may be determined at a constant frequency. TIFF2025102803000002.tif13170, where R is the target thickness removal profile, u[t] is a vector representing the polishing parameters as a function of time, B[t] is a selector matrix that changes over time in accordance with the first function, and Δt is the time step in the addition. The second function may be a matrix based on Preston's equation. The second term may be the sum of the pressure differences between consecutive pressures applied by a specific zone. The pressure for the strategy may be determined at a constant frequency.
[0008] The implementation form may include one or more of the following potential advantages.
[0009] By more reliably controlling the polishing rate that changes in the angular direction around the center of these substrates, it may be possible to reduce the angular direction asymmetry in the polished substrates.
[0010] Understanding the rotation of the substrate with respect to the carrier head enables control of operating parameters, such as chamber pressure, which helps to achieve the desired (or target) thickness profile.
[0011] Operating parameters for the polisher, such as chamber pressure, platen rotation rate, etc., can be "optimized" simultaneously for multiple purposes that include one or more purposes other than simply minimizing the difference between the predicted thickness profile and the target thickness profile. It should be understood that the optimization (or "minimization") is subject to computational constraints in the algorithm, such as processing power or time.
[0012] Operational parameters that affect the polishing rate and incorporate the development of substrate orientation with respect to the carrier head, e.g., by using a stored function having pressure, can be generated to enable asymmetry correction for either the inherent asymmetry of the polishing process or the asymmetry of the incoming substrate thickness.
[0013] Details of one or more embodiments are set forth in the accompanying drawings and the following description. Other features, objects, and advantages will be apparent from the description and drawings, and from the claims.
Brief Description of the Drawings
[0014]
Figure 1
Figure 2
Figure 3
Figure 4A
Figure 4B
Figure 5A
Figure 5B
Mode for Carrying Out the Invention
[0015] Like reference numerals in the various drawings indicate like elements.
[0016] Conventional CMP systems are designed to remove material symmetrically with respect to the axis of rotation of the carrier head. This is because the removal rate across the wafer is ideally angularly symmetric by both the carrier head and the rotating platen. However, the incoming wafer may have a film with angularly asymmetric deposition, and the polishing process itself may result in angularly asymmetric removal. One proposal to compensate for this angular asymmetry is to provide a plurality of controllable zones angularly spaced about the central axis of the carrier head. These multiple zones may be able to cancel out the angular asymmetry by applying different pressures.
[0017] A factor of complication is that as polishing proceeds, the substrate can rotate with respect to the carrier head. This relative rotation is sometimes called "precession motion". If the CMP system does not account for precession motion, the different pressures applied by the angularly arranged zones may not correct the asymmetry and may actually worsen the asymmetry.
[0018] Therefore, understanding the substrate orientation with respect to the carrier head and setting the polishing rate under the zones of the carrier head based on the substrate orientation can help correct the non-symmetric polishing of the substrate. The technique for correcting the asymmetry is to select the pressure difference over time based on the substrate orientation with respect to the carrier head so as to reach the target thickness profile.
[0019] A polishing control model that takes into account the temporal change in the substrate orientation with respect to the carrier head can more reliably generate a predicted polishing profile and, therefore, is used to select or control polishing parameters to more reliably polish the substrate to the target profile. In particular, the Preston matrix that associates the polishing parameters with the polishing rate profile can change over time.
[0020] The algorithm of the polishing control model finds the polishing parameters, such as the value of the pressure, over time that minimize the difference between the predicted thickness profile that would be obtained from the polishing parameters and the target thickness profile. The calculation of the predicted thickness profile includes a function that provides the substrate orientation with respect to the carrier head over time.
[0021] The asymmetry correction technique may include generating a strategy that includes instructions for orienting the incoming substrate to a desired starting angle orientation. The desired starting angle orientation may be selected to minimize the difference between the predicted thickness profile and the target thickness profile.
[0022] Referring to FIG. 1, an example of a polishing apparatus 20 is shown. The polishing apparatus 20 may include a rotatable disk-shaped platen 22 with a polishing pad 30 thereon. The platen is operable to rotate about an axis 23. For example, a motor 24 may rotate a drive shaft 26 to rotate the platen 22. The polishing pad 30 may be removably fixed to the platen 22, for example, by an adhesive layer. The polishing pad 30 may be a two-layer polishing pad having an outer polishing layer 32 and a softer backing layer 34.
[0023] The polishing apparatus 20 may include a polishing liquid supply port 40 for dispensing a polishing liquid 42, such as a polishing agent slurry, onto the polishing pad 30. The polishing apparatus 20 may also include a polishing pad conditioning disk for polishing the polishing pad 30 to maintain the polishing pad 30 in a constant polishing state.
[0024] A carrier head 50 is operable to contact the polishing pad 30 and hold a substrate 10. The carrier head 50 may include a holding ring 56 that holds the substrate 10 during polishing.
[0025] The carrier head 50 may include a plurality of independently controllable pressurization zones 53a - 53d, such as those provided by chambers 52a - 52d, which can apply independently controllable pressure to the associated portion of the substrate 10 (see FIG. 2). Only two chambers 52a, 52c and the associated zones 53a, 53c are shown in FIG. 1 by way of cross - section. However, a different number of zones, for example, five or more zones may exist, and the zones may be arranged in a different pattern. For example, the bottom of the carrier head may be divided into zones in the radial and angular directions. FIG. 2 shows zones 53a - 53d of uniform size and equally spaced angularly around the axis of rotation. However, this is not essential.
[0026] Continuing to refer to FIG. 2, the substrate is divided angularly into a plurality of regions 10a - 10d. For ease of illustration and understanding, zones 53a - 53d are shown as quadrants covering different portions of the bottom of the carrier head, but regions 10a - 10d are quadrants of similar size covering different portions of the substrate. Similarly, a different number of regions, for example, five or more regions may exist, and the regions may be arranged in a different pattern. For example, the surface of the substrate may be divided into regions in the radial and angular directions.
[0027] Returning to FIG. 1, chambers 52a - 52d and the resulting zones 52a - 53d may be defined by a flexible membrane 54 having a bottom surface to which the substrate 10 is attached. However, another mechanism for adjusting the pressure applied to the substrate, such as a piezoelectric actuator, may be used within the carrier head 50.
[0028] Each carrier head 50 is suspended from a support structure 60, such as a carousel or a track, and is connected to a carrier head rotation motor 64 by a drive shaft 62 so that the carrier head can rotate about axis 51. Optionally, each carrier head 50 can vibrate laterally, for example, on a slider on the carousel, by movement along a track or by rotational vibrations of the carousel itself. During 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.
[0029] The polishing apparatus may also include an in-situ monitor system 70, as described below, which can be used to determine whether to adjust the polishing rate or to determine adjustments regarding the polishing rate. The in-situ monitor system 70 can include an optical monitor system, such as a spectrometer monitor system, or an eddy current monitor system.
[0030] In one embodiment, the monitor system 70 is an optical monitor system. Optical access through the polishing pad is provided by including an aperture (i.e., a hole through the pad) or a solid window 71. The solid window 71 can be fixed to the polishing pad 30, for example, as a plug that closes an aperture in the polishing pad, such as being molded into or adhesively fixed to the polishing pad. However, in some embodiments, the solid window can be supported on the platen 22 and protrude into an aperture in the polishing pad.
[0031] The optical monitoring system 70 may include a light source 68, a photodetector 72, and a remote controller 90, such as a computer, and a circuit 66 for transmitting and receiving signals between the light source 68 and the photodetector 72. One or more optical fibers may be used to transmit light from the light source 68 to the optical access within the polishing pad and to transmit the light reflected from the substrate 10 to the detector 72. For example, a branched optical fiber 74 may be used to transmit light from the light source 68 to the substrate 10 and back to the detector 72. The branched optical fiber 74 may include a trunk 76 disposed proximate to the optical access and two branches 78 and 80 respectively connected to the light source 68 and the detector 72.
[0032] In some implementations, the top surface of the platen may include a recess for fitting therein an optical head that holds one end of the trunk of the branched fiber. The optical head may include a mechanism for adjusting the vertical distance between the top of the trunk and the solid window.
[0033] The output of the circuit 66 may be a digital electronic signal that passes through a rotary coupler, such as a slip ring, within the drive shaft 26 to the controller 90 for the optical monitoring system. Similarly, the light source may be turned on or off in response to a control command within a digital electronic signal that passes from the controller 90 through the rotary coupler to the optical monitoring system 70. Alternatively, the circuit 66 may communicate with the controller 90 by wireless signals.
[0034] The light source 68 may be operable to emit white light. In one implementation, the emitted white light includes light having a wavelength of 200 to 800 nanometers. Suitable light sources are xenon lamps or xenon mercury lamps.
[0035] The photodetector 72 may be a spectrometer. A spectrometer is an optical instrument for measuring the intensity of light over a portion of the electromagnetic spectrum. A suitable spectrometer is a grating spectrometer. A typical output of the spectrometer is the intensity of light as a function of wavelength (or frequency).
[0036] As described above, the light source 68 and the photodetector 72 can be connected to a computing device, such as a controller 90, and are operable to control their operation and receive their signals. The computing device can include a microprocessor located near a polishing apparatus, such as a programmable computer. With regard to control, the computing device can, for example, synchronize the activation of the light source with the rotation of the platen 22.
[0037] In some implementations, the light source 68 and the detector 72 of the in-situ monitoring system 70 are installed within the platen 22 and rotate therewith. In this case, the operation of the platen causes the sensors to scan across each substrate. In particular, as the platen 22 rotates, the controller 90 can cause the light source 68 to emit a series of flashes that start just before each substrate 10 passes over the optical access and end just after. Alternatively, the computing device can cause the light source 68 to continuously emit light that starts just before each substrate 10 passes over the optical access and ends just after. In either case, the signal from the detector can be used to modify the control input at a sufficiently high frequency, such as every 2 - 20 seconds, to allow for multiple adjustments over the polishing process.
[0038] During operation, the controller 90 can receive a signal that conveys information, for example, describing the spectrum of the light received by the photodetector during a particular flash of the light source or within a time frame of the detector. Thus, this spectrum is the spectrum measured in-situ during polishing.
[0039] In some implementations, the controller calculates the angular (and optionally radial) position under the carrier head for each measurement by the in-situ monitoring system. This allows each measurement to be associated with one of the regions 10a - 10d of the substrate.
[0040] The controller 90 may include a central processing unit (CPU), memory, and support circuits, such as input / output circuits, a power supply, a clock circuit, a cache, etc. The memory is connected to the CPU. The memory is a non-transitory computer-readable medium and may be one or more readily available memories such as random access memory (RAM), read-only memory (ROM), a hard disk, or another form of digital storage. Additionally, although illustrated as a single computer, the controller 90 may be, for example, a distributed system including multiple, independently operating processors and memories.
[0041] The controller 90 stores a strategy that includes polishing parameter values over time, such as pressure values, for each zone. For example, during operation, the controller 90 activates a pressure source connected to chambers 52a - 52d to apply pressure to chambers 52a - 52d over time as indicated by the strategy. In the absence of precession motion, the pressure within different chambers may be easily kept constant over the course of the polishing operation, and the pressure may be selected based on a static Preston matrix to achieve a desired polishing profile. As a result, the polishing strategy may include a chamber pressure that is constant over time. However, this technique is not sufficient when the substrate is subject to precession motion.
[0042] As described above, during polishing, as the substrate undergoes precession within the carrier head, the substrate orientation (with respect to the carrier head) changes over time. As a result, the portion of the substrate on which a specific zone of pressure acts changes over time. For example, as shown in FIG. 2, when zone 52a first applies pressure to region 10a on the substrate, after sufficient precession (indicated by the arrow), zone 52a can ultimately apply pressure to region 10b, etc. If the CMP system does not account for these changes in substrate orientation, the different pressures applied by zones arranged in the angular direction may not correct for the existing angular asymmetry of the substrate. Therefore, material removal can also be asymmetric and undesirable. To better control the polishing process and achieve the target wafer profile, a model that takes into account the changing orientation of the substrate is described.
[0043] Techniques for generating polishing strategies that account for precession include finding pressure values that optimize a function that includes a target removal profile, the substrate orientation with respect to the carrier head, and one or more polishing parameters, such as the polishing rate predicted as a function of pressure, for a plurality of zones under the carrier head.
[0044] Referring to FIG. 3, an exemplary process 300 is shown in relation to the exemplary data shown in FIGS. 4A - 4B. First, a computer, such as a controller, receives (302) a target angular removal profile (e.g., the target target thickness to be removed for a plurality of locations angularly spaced around the center of the substrate).
[0045] The computer stores a function that provides the substrate orientation with respect to the carrier head over time (304), and stores another function that defines the expected polishing rate for each zone of the carrier head as a function of one or more polishing parameters, such as pressure (306). Based on the target angle removal profile, the computer calculates a strategy for removal by the pressure defined for each specific zone over time (308). The strategy is calculated using an algorithm that calculates an expected thickness profile resulting from polishing based on the function that defines the polishing rate and the function that provides the substrate orientation with respect to the carrier head over time. In particular, the algorithm minimizes the difference between the expected thickness profile and the target thickness profile by performing a minimization procedure using the pressure values over time as the variable to be adjusted.
[0046] The strategy is generated by first defining a cost function. The cost function uses a time-based relationship between the pressure applied to the chamber (and thus the zone) and the pressure applied to the area of the substrate. For example, if x(t) is a vector representing the pressure applied at various locations (areas) on the substrate and u(t) is a vector representing the pressure output by each zone of the carrier head, the vectors u and x are x[t]=B[t]*u[t] related by, where B[t] represents a selector matrix that takes into account the angular position of the substrate with respect to the carrier head as a function of time (t).
[0047] More specifically, the relational expression between the pressure applied to the chamber and the pressure applied to the area of the substrate is ρ(θ,r,t)=B(θ,r,t)u(θ,r,t,P) can be given by, where B(θ,r,t) is a selector matrix that indicates in relation to the position (within the reference frame of the carrier head) where pressure is applied at a location on the substrate (i.e., within the reference frame of the substrate) where pressure is applied at any given point in time. ρ(θ,r,t) is the pressure seen by the substrate at the location given by the angular position θ, the radial position r, and the time t.
[0048] In some embodiments, the cost function includes the difference between the predicted thickness profile and the target thickness profile. That is, the cost function is can be expressed as TIFF2025102803000003.tif23170, where T is the total polishing time and R(θ,r) is the desired removal profile.
[0049] Minimization of the above cost function can be transformed into the problem of minimizing TIFF2025102803000004.tif13170, where Δt is the time difference between steps in the addition, and u(t) is the process parameter to be adjusted during the minimization process, for example, the pressure as a function of time t. The expression inside the double-bar notation is a vector whose each element is a location on the substrate and the value of the element is the difference between the desired removal and the actual removal at that location over the process of polishing the substrate. The double-bar notation indicates taking the 2-norm of the vector, and thus effectively summing the (squared) removal error over the entire substrate.
[0050] By solving the described optimization problem, polishing parameters as a function of time, for example, pressure as a function of time, can be generated, thereby providing a strategy.
[0051] A potential problem associated with the above approach is that it can result in "bang-bang" pressure control where the pressure rapidly oscillates between the minimum pressure and the maximum pressure.
[0052] In some implementations, the optimization problem is further adjusted by including in the cost function a factor that takes into account rapidly changing pressure. For example, rapidly changing pressure can be represented by adding to the cost function a term that depends on the difference between pressures applied over successive time intervals. The weight for this term related to the effect of the difference between the predicted thickness profile and the desired thickness can be provided by the lambda term (λ).
[0053] In particular, in some embodiments, the cost function can be represented by the minimization of TIFF2025102803000005.tif23170.
[0054] The value of lambda (λ) can be determined empirically. For example, lambda (λ) can be from about 0.01 to 0.1.
[0055] Again, u(t) is the process parameter to be adjusted during the minimization process, e.g., the pressure as a function of time t. And solving the optimization problem generates the polishing parameter as a function of time, e.g., the pressure as a function of time, thereby providing a strategy.
[0056] FIG. 4A shows an example of a distribution diagram showing the results of pressure changes across different locations 10a - 10d on the substrate 10. The results are generated using the above model.
[0057] In some embodiments, the polishing parameter can be calculated in real time during processing in response to on - site measurements. As a simple solution, the current profile of the substrate can be measured based on measurements from an on - site monitoring system. The difference between the current thickness profile and the desired profile provides a corrected thickness removal profile R. The cost function can then be minimized at regular intervals given the most recent measured thickness profile, thereby providing a new polishing strategy to be executed as the polishing process proceeds.
[0058] However, another technique for achieving a desired thickness profile by correcting the angular asymmetry in real time based on on-site measurements is to use a cost function that takes into account the constraints of state development. For example, state development can be x[t + l]=A * x[t]+B[t]*u[t] x[t]=C[t]*y[t] expressed as, where u(t) is a polishing parameter as a function of time, e.g., pressure, x(t) is a state parameter as a function of time, e.g., thickness, and y[t] is a sensor measurement. Matrix A takes into account the change in substrate orientation during removal in the absence of a change in pressure, B[t] is a Preston matrix that changes over time based on a function that associates the substrate orientation with time, and C[t] provides a mapping of individual measurements from zones on the carrier head to locations on the substrate.
[0059] The controller can minimize the total cost function using a linear quadratic regulator (LQR) approach. The aggressiveness of the controller is defined by A, B[t], and C[t].
[0060] As shown in FIG. 5A, when the detector is installed within the platen, due to the rotation of the platen (indicated by arrow 504), when the window 71 moves under one carrier head (for example, the carrier head holding the substrate 10), the in-situ monitor system that performs pressure measurement at the sampling frequency causes the pressure measurement values to be taken at locations 501 within the arc across the substrate 10. For example, each of points 501a to 501k represents a location where the pressure is measured by the monitor system of the substrate 10 (the number of points is for illustration, and more or fewer measurement values can be taken depending on the sampling frequency than shown). As shown, over one rotation of the platen, pressure is obtained from different radii on the substrate 10. That is, some pressures are obtained from locations closer to the center of the substrate 10, and some are from locations closer to the edge. Thus, for any given scan of the in-situ monitor system across the substrate 10 based on timing, motor encoder information, and optical detection of the edges of the substrate and / or the holding ring, the controller 90 can calculate the radial position (with respect to the center of the substrate 10) for each measured pressure from the scan. The polishing system can also provide additional data for determining the position on the substrate of the measured pressure by including a rotational position sensor, for example, a flange attached to the edge of the platen that will pass through a fixed optical interrupter. The controller 90 can thus associate the various measured pressures with locations 10a to 10d (see FIG. 2) on the substrate 10. In some implementations, the time of pressure measurement can be used as an alternative to the accurate calculation of the radial position.
[0061] As an example, referring to FIG. 5B, in one rotation of the platen, pressures corresponding to different regions 503a - 503o are collected by the photodetector 72. Based on the radial positions of regions 503a - 503o, five pressures collected in regions 503a - 503b and 503m - 503o are respectively associated with outer locations 10c and 10d, five spectra collected in regions 503k - 503l are associated with location 10b, and five spectra collected in regions 503f - 503g are associated with position 10a. This example shows that each location is associated with the same number of pressure measurements, but the locations may be associated with different numbers of pressures based on on-site measurements. The number of pressures associated with each location may vary from one rotation of the platen to another. Of course, the number of regions described above is merely illustrative, and the actual number of pressures associated with each location depends at least on the sampling rate, the rotation rate of the platen, and the radial width of each location.
[0062] Without being limited to any particular theory, the measurements reflected from the substrate 10 change as polishing based on the change in the outermost layer thickness progresses (e.g., over multiple rotations of the platen, but not during a single sweep across the substrate), thereby resulting in a series of time-varying measurements.
[0063] For each measured pressure, the controller 90 may calculate characteristic values. These characteristic values then provide y[t]. The characteristic values are typically the thickness of the outer layer, but can be related characteristics such as the thickness removed. Additionally, the characteristic values can be physical properties other than thickness, such as conductivity. Additionally, the characteristic values can be a more general representation of the progress of the substrate through the polishing process, such as an index value representing the time or number of platen rotations at a pressure expected to be observed in a polishing step following a given progress.
[0064] As used herein, the term "substrate" can include, for example, a product substrate (e.g., including a plurality of memory or processor dies), a test substrate, a bare substrate, and a gating substrate. The substrate may be at various stages of integrated circuit manufacturing. For example, the substrate may be a bare wafer, or may include one or more deposited and / or patterned layers. The term "substrate" can include circular disks and rectangular sheets.
[0065] The polishing apparatus and method described above can be applied to various polishing systems. Either the polishing pad or the carrier head, or both, can move to provide relative movement 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 fixed to the platen. Some aspects of the endpoint detection system may be applicable to a linear polishing system where, for example, the polishing pad is a continuous or open reel type belt that moves linearly. The polishing layer can be a standard (e.g., polyurethane with or without filler) polishing material, a soft material, or a stationary wear material. It should be understood that the term "relative positioning" is used and the polishing surface and the substrate can be held in a vertical orientation or some other orientation.
[0066] The above description has focused on the control of chemical mechanical polishing systems, but in - sequence metrology stations can be applicable to other types of substrate processing systems, such as etching or deposition systems.
[0067] Embodiments of the subject matter and the functional operations described in this specification, such as filtering processes, may be implemented in digital electronic circuitry, in tangibly embodied computer software or firmware, in computer hardware including the structures disclosed in this specification and their structural equivalents, or in one or a combination of them. Embodiments of the subject matter described in this specification may be implemented as one or more computer programs, i.e., as one or more modules of computer program instructions encoded on a tangible non-transitory storage medium for execution by, or to control the operation of, a data processing apparatus. Alternatively or in addition, the program instructions may be encoded on an artificially generated propagated signal, e.g., a machine-generated electrical, optical, or electromagnetic signal, that is generated to encode information for transmission to a receiver apparatus suitable for execution by a data processing apparatus. The computer storage medium may be a computer-readable storage device, a computer-readable storage substrate, a random or serial access memory device, or a combination of one or more of them.
[0068] The term “data processing apparatus” refers to data processing hardware and includes, by way of example, all kinds of devices, apparatuses, and machines for processing data, including programmable digital processors, digital computers, or multiple digital processors or computers. The apparatus may also be, or further include, special purpose logic circuitry, e.g., an FPGA (field programmable gate array) or an ASIC (application specific integrated circuit), and may optionally include code that creates an execution environment for computer programs, e.g., processor firmware, protocol stack, database management system, operating system, or a combination of one or more of them.
[0069] A computer program may also be referred to as a program, software, software application, module, software module, script, or code, or may be described as such, and may be written in any form of programming language, including a compiled or interpreted language, or a declarative or procedural language. A computer program may be deployed in any form, as a stand-alone program or as a module, component, subroutine, or other unit suitable for use within a computing environment. A computer program may correspond to a file in a file system, but it need not. A program may be held in a part of a file held in another program or data, for example, one or more scripts may be held in a markup language document, in a single file dedicated to the program in question, or in multiple conditioning files, for example, files storing one or more modules, subprograms, or portions of code. A computer program may be deployed to be executed on one computer, or located at one site, or on multiple computers distributed across multiple sites and interconnected by a data communication network.
[0070] The processes and logical flows described in this specification can function by being executed by one or more programmable computers executing one or more computer programs, operating on input data and generating output. The processes and logical flows can also be executed by dedicated logic circuitry, such as an FPGA (Field Programmable Gate Array) or an ASIC (Application Specific Integrated Circuit), and the apparatus can also be implemented as dedicated logic circuitry. For a system of one or more computers, being "configured" to perform a particular operation or action means that the system has installed in it software, firmware, hardware, and combinations thereof that during operation cause the system to perform the operation or action. For one or more computer programs, being configured to perform a particular operation or action means that the one or more programs include instructions that, when executed by a data processing apparatus, cause the apparatus to perform the operation or action.
[0071] A computer suitable for the execution of a computer program may be based, for example, on a general-purpose or special-purpose microprocessor or both, or any other type of central processing unit. Generally, the central processing unit receives instructions and data from a read-only memory or a random access memory, or both. The main elements of a computer are a central processing unit for executing or running instructions, and one or more memory devices for storing instructions and data. Generally, a computer also includes one or more mass storage devices for storing data, such as magnetic, magneto-optical disks, or optical disks, or is operatively coupled to receive data from a mass storage device or transmit data to a mass storage device, or both. However, a computer may not have such devices. Further, a computer may be incorporated into another device, to name just a few examples, such as a mobile phone, a personal digital assistant (PDA), a mobile audio or video player, a game console, a global positioning system (GPS) receiver, or a portable storage device, such as a universal serial bus (USB) flash drive.
[0072] Computer-readable media suitable for storing computer program instructions and data include all forms of non-volatile memory, media and memory devices, including semiconductor memory devices such as EPROM, EEPROM, and flash memory devices, magnetic disks such as internal hard disks or removable disks, magneto-optical disks, and CD ROM and DVD-ROM disks. The processor and memory may be supplemented by, or incorporated in, special-purpose logic circuitry.
[0073] The control of the various systems and processes described herein, or portions thereof, may be implemented within a computer program product that resides on one or more non-transitory computer-readable storage media and includes instructions executable on one or more processing devices. The systems described herein, or portions thereof, may be implemented as an electronic system that may include one or more processing devices and memory storing executable instructions for performing the functions of the device, method, or operations described herein.
[0074] Although this specification contains many specific implementation details, these should not be construed as limitations on the scope of any invention or of what may be claimed, but rather as descriptions of features that may be specific to particular embodiments of a particular invention. The specific features described herein in the context of separate embodiments may also be implemented in combination within a single embodiment. Conversely, the various features described in the context of a single embodiment may also be implemented separately in multiple embodiments or in any suitable sub-combination. Further, although features may have been described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination may in some cases be excised from the combination, and the claimed combination may be directed to a sub-combination or variation of a sub-combination.
[0075] Likewise, although operations may be shown in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed to achieve desirable results. In certain circumstances, multitasking and parallel processing may be advantageous. Further, the separation of various system modules and components in the embodiments described above should not be understood as requiring such separation in all embodiments, and it should be understood that the described program components and systems may generally be integrated together within a single software product or packaged into multiple software products.
[0076] Certain embodiments of the subject matter have been described. Other embodiments are within the scope of the following claims. For example, the acts recited in the claims can be performed in a different order and still achieve desirable results. As one example, the processes shown in the accompanying figures do not necessarily require the particular order, or sequential order, shown to achieve desirable results. In some cases, multitasking and parallel processing may be advantageous.
[0077] Other embodiments are within the scope of the following claims.
Claims
1. A computer program product for generating a strategy for controlling a polishing system, encoded on a non-transitory computer-readable medium, causing one or more computers to receive a target removal profile including a target thickness to be removed at a plurality of locations angularly spaced around the center of a substrate; store a first function that provides a substrate orientation with respect to a carrier head over time; store a second function that defines a polishing rate under the pressurizable zone as a function of one or more pressures from one or more of the plurality of pressurizable zones of the carrier head, the plurality of pressurizable zones being angularly spaced around a rotation axis; for each particular zone of the plurality of zones, calculate a strategy for defining a pressure for the particular zone over time, the instructions for calculating the strategy including instructions for calculating a predicted thickness profile after polishing from the second function that defines the polishing rate and the first function that provides a substrate orientation with respect to the zone over time, and instructions for applying a minimization algorithm that reduces the difference between the predicted thickness profile and the target thickness profile; A computer program product including instructions for causing the above to be performed.
2. The computer program product of claim 1, wherein the first function maps a physical zone of the head to a location on the substrate.
3. The computer program product of claim 1, wherein the first function assumes a constant precession rate of the substrate with respect to the carrier head.
4. The computer program product of claim 3, wherein the first function includes calculating an angular offset based on an initial angular offset and the precession rate.
5. The computer program product of claim 4, wherein the first function includes calculating the precession rate based on a carrier head rotation rate.
6. The computer program product of claim 1, wherein calculating the strategy includes minimizing a cost function incorporating the first function and the second function.
7. The cost function is such that x[t] = B[t] * u[t], where x[t] is a vector representing the pressure on the substrate as a function of time, u[t] is a vector representing the polishing parameters as a function of time, and B[t] is a selector matrix that changes over time in accordance with the first function, the computer program product according to claim 6.
8. The computer program product according to claim 7, wherein B[t] calculates the angular position of the region on the substrate with respect to the zone on the carrier head as a function of time (t).
9. The computer program product according to claim 6, wherein the cost function is subject to the evolution constraint x[t + 1] = A * x[t] + B[t] * u[t].
10. The computer program product according to claim 9, wherein A is a matrix that transforms coordinate positions based on the rotation of the substrate orientation with respect to the carrier head over time.
11. The computer program product according to claim 7, wherein B[t] calculates the angular position of the region on the substrate with respect to the zone on the carrier head as a function of time (t).
12. The computer program product according to claim 6, wherein the cost function is subject to the constraint x[t] = C[t] * y[t], where y[t] represents measurements over time from the in-situ monitoring system.
13. The computer program product according to claim 12, wherein C[t] represents a matrix that provides a mapping of individual measurements from the zone on the carrier head to locations on the substrate.
14. A method for generating a strategy for controlling a polishing system, comprising: receiving a target removal profile including target thicknesses to be removed at a plurality of locations angularly spaced around the center of the substrate; storing a first function that provides the substrate orientation with respect to the carrier head over time; storing a second function that defines the polishing rate under the pressurizable zones as a function of one or more pressures from one or more of the plurality of pressurizable zones of the carrier head, wherein the plurality of pressurizable zones are angularly spaced around the axis of rotation. For each specific zone of the plurality of zones, calculating a strategy for defining the pressure for the specific zone over time, wherein calculating the strategy includes calculating an expected thickness profile after polishing from the second function that defines the polishing rate and the first function that provides the substrate orientation for the zone over time, and applying a minimization algorithm that reduces the difference between the expected thickness profile and the target thickness profile, calculating the strategy; A method comprising. **Claim 15** The method according to claim 14, further comprising polishing the substrate according to the strategy. **Claim 16** A platen that supports a polishing pad, A carrier head that holds a substrate in contact with the polishing pad, the carrier head including a plurality of pressurizable chambers angularly spaced about a rotation axis of the carrier head, Receiving a target removal profile that includes target thicknesses to be removed at a plurality of locations angularly spaced about the center of the substrate, Storing a first function that provides the substrate orientation with respect to the carrier head over time, Storing a second function that defines the polishing rate under the pressurizable zone as a function of one or more pressures of one or more zones from the plurality of pressurizable zones of the carrier head, wherein the plurality of pressurizable zones are angularly spaced about the rotation axis, storing the second function, For each specific zone of the plurality of zones, calculating an expected thickness profile after polishing from the second function that defines the polishing rate and the first function that provides the substrate orientation for the zone over time, and applying a minimization algorithm that reduces the difference between the expected thickness profile and the target thickness profile, thereby calculating a strategy for defining the pressure for the specific zone over time, and Applying the pressure to each chamber of the plurality of pressurizable chambers according to the strategy, A controller configured to perform; A polishing system comprising. **Claim 17** A computer program product for generating a strategy for controlling a polishing system, encoded on a non-transitory computer-readable medium, the computer program product causing one or more computers to, Receiving a target removal profile including target thicknesses to be removed at a plurality of locations on the substrate, distributed angularly around the center of the substrate; Storing a first function defining a polishing rate for zones from a plurality of pressurizable zones of the carrier head, distributed angularly around the center of the carrier head, wherein the first function defines the polishing rate for the zones as a function of one or more pressures from one or more of the plurality of pressurizable zones of the carrier head; For each particular zone of the plurality of zones, calculating a strategy for defining the pressure for the particular zone over time, the instructions for calculating the strategy including instructions for calculating a predicted thickness profile after polishing using the first function, and instructions for minimizing a cost function incorporating a first term representing a difference between the predicted thickness profile and the target thickness profile; A computer program product including instructions for causing the above to be performed.
18. The computer program product according to claim 17, including instructions for determining a polishing rate for each zone of the plurality of zones at a constant frequency.
19. The first term may be at least partially represented by where B[t] is a selector matrix, u[t] is a vector representing polishing parameters as a function of time, R is a target thickness removal profile, and Δt is a time step in the summation. The computer program product according to claim 18.
20. The computer program product according to claim 19, wherein the selector matrix B[t] represents the orientation of the substrate with respect to the carrier head over time.
21. A method for generating a strategy for controlling a polishing system, comprising: Receiving a target removal profile including target thicknesses to be removed at a plurality of locations on the substrate, distributed angularly around the center of the substrate; Storing a first function that defines a polishing rate for zones from a plurality of pressurizable zones of the carrier head that are distributed angularly about the center of the carrier head, wherein the first function defines the polishing rate for the zones as a function of one or more pressures of one or more of the plurality of pressurizable zones of the carrier head, and storing the first function; For each particular zone of the plurality of zones, calculating an expected thickness profile after polishing using the first function, and calculating a strategy for defining the pressure for the particular zone over time by minimizing a cost function that incorporates a first term representing the difference between the expected thickness profile and a target thickness profile; A method comprising. **Claim 22** A platen that supports a polishing pad; A carrier head that contacts the polishing pad to hold a substrate, the carrier head including a plurality of pressurizable chambers that are angularly spaced about a rotational axis of the carrier head; Receiving a target removal profile that includes a target thickness to be removed for a plurality of locations on the substrate that are distributed angularly about the center of the substrate; Storing a first function that defines a polishing rate for each zone of a plurality of pressurizable zones of the carrier head that are distributed angularly about the center of the carrier head, wherein the first function defines the polishing rate for the zones as a function of one or more pressures of one or more of the plurality of pressurizable chambers of the carrier head, and storing the first function, as well as For each particular zone of the plurality of zones, calculating an expected thickness profile after polishing using the first function, and calculating a strategy for defining the pressure for the particular zone over time by minimizing a cost function that incorporates a first term representing the difference between the expected thickness profile and a target thickness profile; A controller configured to perform; A polishing system comprising.
Citation Information
Patent Citations
Polishing apparatus and method
JP2002535151A
Polishing method and polishing device
JP2017064801A
Semiconductor manufacturing using machine learning approaches to generate process control parameters
JP2020535644A
Sensors in Carrier Head of a CMP System
US20140020829A1