The present invention relates to a dressing method for a polishing member to polish a substrate such as a wafer and a polishing apparatus.
As high-density integration of semiconductor devices advances, circuit wiring is becoming finer and dimensions of integrated devices are also becoming smaller. Steps of polishing a wafer having a metallic film or the like formed on its surface and flattening the surface of the wafer are therefore needed. One such flattening method is polishing by a chemical-mechanical polishing (CMP) apparatus. The chemical-mechanical polishing apparatus includes a polishing member (polishing cloth, polishing pad or the like) and a holding portion (top ring, polishing head, chuck or the like) for holding a polishing target such as a wafer. While supplying a polishing liquid (abrasive liquid, chemical liquid, slurry, pure water or the like) between the polishing member and the polishing target, the chemical-mechanical polishing apparatus pushes the surface of the polishing target (polished surface) against the surface of the polishing member and causes the polishing member and the polishing target to relatively move with respect to each other, and thereby polishes the surface of the polishing target flat.
Foamed resin or non-woven fabric cloth is generally used as a polishing member material used for such a chemical-mechanical polishing apparatus. The polishing member has fine projections and depressions on its surface and the fine projections and depressions act as a chip pocket which is effective in preventing clogging or reducing polishing resistance. However, continued polishing of the polishing target with the polishing member may cause the fine projections and depressions on the surface of the polishing member to be crushed and cause a reduction of a polishing rate. Therefore, the polishing member surface is dressed using a dresser in which many abrasive grains such as diamond particles are electrodeposited, and the fine projections and depressions are reconstructed on the polishing member surface.
As a dressing method for the polishing member, for example, dressing is performed while moving (circular or linear reciprocating motion or swinging) a rotating dresser, with the dressing surface being pushed against the rotating polishing member. When dressing the polishing member, a minute amount of the surface of the polishing member is shaved. Therefore, inappropriate dressing may result in inappropriate undulation on the surface of the polishing member, causing inconvenience of producing a variation within the polishing rate in the polished surface. The variation in the polishing rate may cause a polishing defect, and it is therefore necessary to perform dressing appropriately so as to prevent inappropriate undulation on the surface of the polishing member. That is, variations in the polishing rate are avoided by performing dressing under appropriate dressing conditions such as an appropriate rotation speed of the polishing member, an appropriate rotation speed of the dresser, an appropriate dressing load and an appropriate moving speed of the dresser.
In a polishing apparatus disclosed in Patent Literature 1 (Japanese Patent Laid-Open No. 2014-161944), a plurality of swing sections are set in a swing direction of a dresser, a difference between a current profile obtained from a measured value of a surface height of a polishing member in each swing section and a target profile is calculated and a moving speed of the dresser in each swing section is corrected so as to eliminate the difference.
However, when, for example, the difference from the target profile is large, the variation in the dresser moving speed in each swing section increases even using the correction method disclosed in the above-described Patent Literature, and the dresser moving speed is not stable, and as a result, the intended profile of the polishing member cannot be obtained.
The height (thickness) of a polishing member normally decreases gradually at a constant rate in accordance with the polishing processing on a wafer W. However, when the wafer W is not processed for a while, the polishing member may swell with moisture and the height of the polishing member may thereby increase. On the contrary, when the wafer W is not processed for a while, the polishing member may contract and the height of the polishing member may thereby decrease considerably.
The amount of swelling/contraction of the polishing member fluctuates depending on a type of the polishing member and a mode in use of the apparatus, but if the height of the polishing member fluctuates discontinuously due to swelling/contraction, a cut rate, and therefore the moving speed of the dresser cannot be calculated or the calculated value may be abnormal. In such a case, the performance of the polishing apparatus may be affected.
It is an object of the present invention to provide a method for implementing a profile of a target polishing member and dressing the polishing member. It is another object of the present invention to provide a method for implementing a profile of a target polishing member even when the height of the polishing member fluctuates discontinuously due to swelling/contraction and dressing the polishing member. It is a further object of the present invention to provide a polishing apparatus capable of executing a method for dressing such a polishing member.
According to an aspect of the present invention, a method for dressing a polishing member by causing a dresser to swing on the polishing member used for a polishing apparatus for a substrate, the dresser being enabled to adjust a swing speed in a plurality of scan areas set on the polishing member along a swing direction, the method comprising: a step of measuring a surface height of the polishing member in a plurality of monitoring areas set in advance on the polishing member along the swing direction of the dresser; a step of creating a dress model matrix defined from the monitoring areas, the scan areas and a dress model; a step of calculating a height profile predicted value using the dress model and the swing speed in each scan area or a staying time; a step of setting an evaluation index based on a difference from a target value of a height profile of the polishing member; and a step of setting the swing speed in each scan area of the dresser based on the evaluation index, wherein at least one of parameters to determine the target value of the height profile or the evaluation index is made to change automatically.
According to another aspect of the present invention, a method for dressing a polishing member by causing a dresser to swing on the polishing member used for a polishing apparatus for a substrate, the dresser being enabled to adjust a swing speed in a plurality of scan areas set on the polishing member along a swing direction, the method comprising: a step of measuring a surface height of the polishing member in a plurality of monitoring areas set in advance on the polishing member along the swing direction of the dresser; a step of correcting the surface height of the polishing member based on a measurement interval of the surface height and an amount of fluctuation in a measured value of the surface height; a step of creating a dress model matrix defined from the monitoring area, the scan area and a dress model; a step of calculating a height profile predicted value using the dress model and the swing speed in each scan area or a staying time; a step of setting an evaluation index based on a difference from a target value of a height profile of the polishing member; and a step of setting the swing speed in each scan area of the dresser based on the evaluation index.
An embodiment of the present invention will be described with reference to the accompanying drawings.
As shown in
The polishing unit 10 is provided with a top ring (substrate holding section) 20 connected at a bottom end of a top ring shaft 21. The top ring 20 is configured to hold the wafer W on an undersurface thereof by means of vacuum suctioning. The top ring shaft 21 is rotated driven by a motor (not shown) and the rotation of the top ring shaft 21 causes the top ring 20 and the wafer W to rotate. The top ring shaft 21 is configured to move in a vertical direction relative to the polishing pad 11 by a vertical movement mechanism (not shown) (e.g., vertical movement mechanism composed of a servo motor and a ball screw).
The polishing table 12 is connected to a motor (not shown) disposed there below. The polishing table 12 is rotated by the motor around a shaft center thereof. The polishing pad 11 is pasted to a top surface of the polishing table 12 and a top surface of the polishing pad 11 constitutes a polishing surface 11a for polishing the wafer W.
The wafer W is polished as follows. The top ring 20 and the polishing table 12 are caused to rotate respectively and a polishing liquid is supplied to the polishing pad 11. In this condition, the top ring 20 holding the wafer W is caused to descend and the wafer W is pushed against a polishing surface 11a of the polishing pad 11 through a pressurizing mechanism (not shown) made up of an airbag set in the top ring 20. The wafer W and the polishing pad 11 are brought into slidable contact with each other in the presence of the polishing liquid and the surface of the wafer W is thereby polished and flattened.
The dressing unit 14 is provided with a dresser 23 that comes into contact with the polishing surface 11a of the polishing pad 11, a dresser shaft 24 connected to the dresser 23, an air cylinder 25 provided at a top end of the dresser shaft 24 and a dresser arm 26 that rotatably supports the dresser shaft 24. Abrasive grains such as diamond particles are fixed to an undersurface of the dresser 23. The undersurface of the dresser 23 constitutes a dressing surface for dressing the polishing pad 11.
The dresser shaft 24 and the dresser 23 are movable in the vertical direction with respect to the dresser arm 26. The air cylinder 25 is an apparatus that gives a dressing load on the polishing pad 11 to the dresser 23. The dressing load is adjustable by an air pressure supplied to the air cylinder 25.
The dresser arm 26 is configured to be driven by a motor 30 and swing around a spindle 31. The dresser shaft 24 is caused to rotate by a motor (not shown) disposed in the dresser arm 26 and the rotation of the dresser shaft 24 causes the dresser 23 to rotate around a shaft center thereof. The air cylinder 25 pushes the dresser 23 against the polishing surface 11a of the polishing pad 11 with a predetermined load via the dresser shaft 24.
Conditioning of the polishing surface 11a of the polishing pad 11 is performed as follows. The polishing table 12 and the polishing pad 11 are caused to rotate by the motor and a dressing liquid (e.g., pure water) is supplied from a dressing liquid supply nozzle (not shown) to the polishing surface 11a of the polishing pad 11. Furthermore, the dresser 23 is caused to rotate around the shaft center thereof. The dresser 23 is pressed against the polishing surface 11a by the air cylinder 25 to cause the undersurface (dressing surface) of the dresser 23 to slidably contact with the polishing surface 11a. In this condition, the dresser arm 26 is caused to turn and the dresser 23 on the polishing pad 11 is caused to swing in a substantially radius direction of the polishing pad 11. The polishing pad 11 is shaved by the rotating dresser 23 and conditioning of the polishing surface 11a is thereby performed.
A pad height sensor (surface height measuring instrument) 32 for measuring a height of the polishing surface 11a is fixed to the dresser arm 26. A sensor target 33 located opposed to the pad height sensor 32 is fixed to the dresser shaft 24. The sensor target 33 moves in the vertical direction together with the dresser shaft 24 and the dresser 23, whereas the position in the vertical direction of the pad height sensor 32 is fixed. The pad height sensor 32 is a displacement sensor and can indirectly measure the height (thickness of the polishing pad 11) of the polishing surface 11a by measuring displacement of the sensor target 33. Since the sensor target 33 is connected to the dresser 23, the pad height sensor 32 can measure the height of the polishing surface 11a during conditioning of the polishing pad 11.
The pad height sensor 32 measures the height of the polishing surface 11a in a plurality of predetermined areas (monitoring areas) divided in the radius direction of the polishing pad. The pad height sensor 32 indirectly measures the polishing surface 11a from a position in the vertical direction of the dresser 23 which is in contact with the polishing surface 11a. Therefore, the pad height sensor 32 measures an average of the height of the polishing surface 11a in an area (certain monitoring area) with which the undersurface (dressing surface) of the dresser 23 is in contact, and measures the height of the polishing pad in a plurality of monitoring areas, and is thereby capable of obtaining a profile of the polishing pad (cross-sectional shape of the polishing surface 11a). As the pad height sensor 32, any types of sensors can be used such as a linear scale sensor, a laser type sensor, an ultrasonic sensor or an eddy current type sensor.
The pad height sensor 32 is connected to a dressing monitoring apparatus 35 and an output signal of the pad height sensor 32 (that is, a measured value of the height of the polishing surface 11a) is sent to the dressing monitoring apparatus 35. The dressing monitoring apparatus 35 acquires the profile of the polishing pad 11 from the measured value of the height of the polishing surface 11a and is further provided with a function of determining whether or not conditioning of the polishing pad 11 is correctly in progress.
The polishing apparatus is provided with a table rotary encoder 36 that measures an angle of rotation of the polishing table 12 and polishing pad 11 and a dresser rotary encoder 37 that measures a turning angle of the dresser 23. These table rotary encoder 36 and dresser rotary encoder 37 are absolute encoders that measure absolute values of angles. These rotary encoders 36 and 37 are connected to the dressing monitoring apparatus 35, and the dressing monitoring apparatus 35 can acquire the information of the angles of rotation of the polishing table 12 and the polishing pad 11 and further the turning angle of the dresser 23 during height measurement of the polishing surface 11a by the pad height sensor 32.
The dresser 23 is connected to the dresser shaft 24 via a universal joint 17. The dresser shaft 24 is connected to a motor (not shown). The dresser shaft 24 is rotatably supported by the dresser arm 26 and the dresser arm 26 causes the dresser 23 to swing in a radius direction of the polishing pad 11 while being in contact with the polishing pad 11 as shown in
Abrasive grains such as diamond particles are fixed to the undersurface of the dresser 23. The portion to which the abrasive grains are fixed constitutes the dressing surface for dressing the polishing surface of the polishing pad 11. Examples of aspects of the applicable dressing surface include a circular dressing surface (dressing surface on which abrasive grains are fixed to the entire undersurface of the dresser 23), a ring-shaped dressing surface (dressing surface on which abrasive grains are fixed to peripheral edges of the undersurface of the dresser 23) or a plurality of circular dressing surfaces (dressing surface on which abrasive grains are fixed to surfaces of a plurality of small-diameter pellets arrayed at substantially equal intervals around the center of the dresser 23). Note that the dresser 23 in the present embodiment is provided with the circular dressing surface.
When the polishing pad 11 is dressed, the polishing pad 11 is caused to rotate in a direction shown by an arrow at a predetermined rotational speed as shown in
Since the dresser 23 is connected to the dresser shaft 24 via the universal joint 17, even when the dresser shaft 24 is slightly tilted with respect to the surface of the polishing pad 11, the dressing surface of the dresser 23 is appropriately brought into contact with the polishing pad 11. A pad surface roughness measuring device 38 for measuring surface roughness of the polishing pad 11 is disposed above the polishing pad 11. As the pad surface roughness measuring device 38, a publicly known non-contact type surface roughness measuring device of an optical type or the like may be used. The pad surface roughness measuring device 38 is connected to the dressing monitoring apparatus 35 and measured values of surface roughness of the polishing pad 11 is sent to the dressing monitoring apparatus 35.
A film thickness sensor (film thickness measuring instrument) 39 for measuring a film thickness of the wafer W is disposed in the polishing table 12. The film thickness sensor 39 is disposed so as to face the surface of the wafer W held to the top ring 20. The film thickness sensor 39 is a film thickness measuring instrument that measures the film thickness of the wafer W while moving across the surface of the wafer W along with the rotation of the polishing table 12. As the film thickness sensor 39, a non-contact type sensor such as an eddy current sensor or an optical sensor may be used. A measured value of the film thickness is sent to the dressing monitoring apparatus 35. The dressing monitoring apparatus 35 is configured to generate a film thickness profile of the wafer W (a film thickness distribution along the radius direction of the wafer W) from the measured value of the film thickness.
Next, swinging of the dresser 23 will be described with reference to
The moving speed of the dresser 23 when swinging over the polishing pad 11 is set for each scanning area S1 to S7 in advance and can also be adjusted as appropriate. The moving speed distribution of the dresser 23 represents the moving speed of the dresser 23 in each scanning area S1 to S7.
The moving speed of the dresser 23 is one of determining elements of the pad height profile of the polishing pad 11. The cut rate of the polishing pad 11 represents an amount (thickness) per unit time of the polishing pad 11 shaved by the dresser 23. When the dresser is moved at a constant speed, the thickness of the polishing pad 11 shaved in each scanning area normally differs from one scanning area to another, and so the numerical value of the cut rate also differs from one scanning area to another. However, since it is normally preferable to keep the initial shape of the pad profile, the moving speed is adjusted so as to decrease the difference in the amount of shaving for each scanning area.
Here, increasing the moving speed of the dresser 23 means shortening the staying time of the dresser 23 on the polishing pad 11, that is, reducing the amount of shaving of the polishing pad 11. On the other hand, decreasing the moving speed of the dresser 23 means increasing the staying time of the dresser 23 on the polishing pad 11, that is, increasing the amount of shaving of the polishing pad 11. Therefore, by increasing the moving speed of the dresser 23 in a certain scanning area, it is possible to reduce the amount of shaving in the scanning area, and by decreasing the moving speed of the dresser 23 in a certain scanning area, it is possible to increase the amount of shaving in the scanning area. Thus, the pad height profile of the whole polishing pad can be adjusted.
As shown in
The dress model setting section 41 sets a dress model S to calculate an amount of polishing of the polishing pad 11 in a scanning area. The dress model S is a real number matrix with m rows and n columns when it is assumed that the number of division of monitoring areas is m (10 in the present embodiment), the number of division of monitoring areas is n (7 in the present embodiment), and is determined by various parameters which will be described later.
When it is assumed that the scanning speed of the dresser in each scanning area set by the polishing pad 11 is V=[v.sub.1, v.sub.2, . . . , v.sub.n], the width of each scanning area is W=[w.sub.1, w.sub.2, . . . , w.sub.n], the staying time of (the center of) the dresser in each scanning area is expressed by:
T=WN=[w.sub.1/v.sub.1,w.sub.2/v.sub.2, . . . ,w.sub.n/v.sub.n]
At this time, when an amount of wear of the pad in each monitoring area is assumed to be U=[u.sub.1, u.sub.2, . . . , u.sub.m], the amount of wear of the pad U is calculated by carrying out a matrix calculation of U=ST using the aforementioned dress model S and the staying time T in each scanning area.
To derive the dress model matrix S, it is possible to consider elements of 1) a cut rate model, 2) a dresser diameter and 3) scanning speed control and combine these elements as appropriate. The cut rate model is set on the assumption that each element of the dress model matrix S is proportional to the staying time in the monitoring area or proportional to scratch distance (moving distance).
Regarding the dresser diameter, each element of the dress model matrix S is set on the assumption that the dresser diameter is taken into consideration (the polishing pad is worn according to the same cut rate over the entire effective area of the dresser) or not taken into consideration (according to the cut rate only at the center position of the dresser). When the dresser diameter is taken into consideration, it is possible to define an appropriate dress model also for a dresser in which diamond particles are applied in a ring shape, for example. Furthermore, regarding the scanning speed control, each element of the dress model matrix S is set depending on whether a change in the moving speed of the dresser is in a stepped shape or slope shape. By combining these parameters as appropriate, it is possible to calculate an amount of cut that matches the embodiment from the dress model S and calculate a correct profile predicted value.
The pad height detection section 48 is configured to detect the pad height in each monitoring area by associating height data of the polishing pad consecutively measured by the pad height sensor 32 with measurement coordinate data on the polishing pad.
The base profile calculation section 42 calculates a target profile (base profile) of the pad height at convergence (see
The base of the target cut amount is calculated according to the following expression using a pad height profile H.sub.p(j) [j=1, 2, . . . , m] indicating a pad height for each monitoring area at a current point in time and a convergence time target wear amount A.sub.tg separately set by a parameter setting section 49 which will be described later.
min{H.sub.p(j)}−A.sub.tg
Furthermore, the target cut amount in each monitoring area can be calculated in consideration of the aforementioned base profile by the following expression:
min{H.sub.p(j)}−A.sub.tg+Diff(j)
The cut rate calculation section 43 calculates a cut rate of the dresser in each monitoring area. For example, the cut rate may also be calculated from tilt of a variation in the pad height in each monitoring area.
The evaluation index creation section 44 is intended to optimize the moving speed of the dresser in each scanning area by calculating an optimum staying time (swing time) in a scanning area and making a correction using an evaluation index which will be described later. The evaluation index is 1) a deviation from the target cut amount, 2) a deviation from the staying time according to a reference recipe and 3) an index based on a speed difference between neighboring scanning areas, and is a function of staying time T=[w.sub.1/v.sub.1, w.sub.2/v.sub.2, . . . , w.sub.n/v.sub.n] in each scanning area. The moving speed of the dresser is optimized by defining the staying time T in each scanning area so that the evaluation index becomes a minimum.
1) Deviation from Target Cut Amount
When the target cut amount of the dresser is assumed to be U.sub.0=[U.sub.ol, U.sub.02, . . . , U.sub.0m], a deviation from the target cut amount is calculated by calculating the square value (|U−U.sub.0|.sup.2) of the difference from the aforementioned pad wear amount U (=ST) in each monitoring area. Note that the target profile for determining the target cut amount can be determined at any timing after starting to use the polishing pad or may be determined based on a manually set value.
2) Deviation from Staying Time According to Reference Recipe
As shown in
3) Speed Difference Between Neighboring Scanning Areas
The polishing apparatus according to the present embodiment further suppresses influences accompanying a drastic change of the moving speed on the polishing apparatus by reducing a speed difference between neighboring scanning areas. That is, it is possible to calculate an index of the speed difference between neighboring scanning areas by calculating the square value (|.DELTA.V.sub.inv|.sup.2) of a speed difference between neighboring scanning areas. Here, as shown in
The evaluation index creation section 44 defines an evaluation index J shown in the following equation based on these three indices.
J=.gamma.|U−U.sub.0|.sup.2+.lamda.|T−T.sub.0|.sup.2+.eta.|.DELTA.V.sub.i−nv|.sup.2
Here, a first term, a second term and a third term on the right side of the evaluation index J are indices resulting from the deviation from the target cut amount, the deviation from the staying time according to a reference recipe and the speed difference between neighboring scanning areas, and all the terms depend on the staying time T of the dresser in each scanning area. In the above evaluation index J, .gamma., .lamda. and .eta. are predetermined weighting values and set by the parameter setting section 49.
The moving speed calculation section 45 performs optimization calculation such that the value of the evaluation index J becomes a minimum value, calculates the staying time T of the dresser in each scanning area and corrects the moving speed of the dresser. As an optimization calculation technique, a quadratic programming method can be used, but convergence calculation using simulation or PID control may also be used.
The present embodiment is configured such that the parameter setting section 49 changes the aforementioned convergence time target wear amount A.sub.tg as appropriate when the same polishing pad is in use.
The parameter setting section 49 is provided with a table corresponding to the relationship in
Note that when calculating the moving speed of the dresser, it is preferable to ensure that the total dress time falls within a predetermined value. Here, the total dress time refers to a moving time of the entire swing section (scanning areas S1 to S7 in the present embodiment) by the dresser. When the total dress time (time required for dressing) increases, other steps such as a wafer polishing step or a transporting step may be affected, and so it is preferable to correct the moving speed in each scanning area as appropriate in order to prevent the value from exceeding the predetermined value. Since there are mechanical constraints on the apparatus, it is preferable to set the moving speed of the dresser such that the maximum (and minimum) moving speed of the dresser and the ratio of the maximum speed (minimum speed) to the initial speed fall within a set value range.
IT is noted that when appropriate dress conditions are unknown in a combination of a new dresser and the polishing pad or when a reference speed of the dresser (reference staying time T.sub.0) is not determined as in a case immediately after replacement of the dresser or the polishing pad, the moving speed calculation section 45 may determine an evaluation index J (shown below) using only the condition of deviation from the target cut amount and perform optimization (initial setting) of the moving speed of the dresser in each scanning area.
J=|U−U.sub.0|sup.2
The setting input section 46 is an input device such as a keyboard or a mouse and configured to input various parameters such as a value of each component of the dress model matrix S, a setting of a constraint condition, a cut rate update cycle or a moving speed update cycle. The memory 47 stores various types of data such as data of a program for operating each component constituting the dressing monitoring apparatus 35, value of each component of the dress model matrix S, target profile, weighted value of the evaluation index J and set value of the moving speed of the dresser.
Next, it is determined whether or not to calculate reference speed of the dresser (whether or not the setting input section 46 inputs an instruction for calculating reference speed) (step S13). When calculating the reference speed, the moving speed calculation section 45 sets the moving speed (staying time T) of the dresser in each scanning area such that the next evaluation index J becomes a minimum value based on the target cut amount U.sub.0 of the dresser and the pad wear amount U in each monitoring area (step S14). The calculated reference speed may be set as an initial value of the moving speed.
J=|U−U.sub.0|.sup.2
After that, when dressing processing on the polishing pad 11 is performed accompanying the polishing processing on the wafer W, the pad height sensor 32 measures the height (pad height) of the polishing surface 11a (step S15). It is determined whether or not the base profile acquisition condition (e.g., polishing of a predetermined number of wafers W) is satisfied (step S16) and if the condition is satisfied, the base profile calculation section 42 calculates a target profile (base profile) of the pad height in convergence (step S17).
After that, when dressing processing on the polishing pad 11 is performed accompanying the polishing processing on the wafer W, the pad height sensor 32 measures the height (pad height) of the polishing surface 11a (step S18). It is determined whether or not a predetermined cut rate calculation cycle (e.g., polishing on a predetermined number of wafers W) is reached (step S19) and if the predetermined cut rate calculation cycle is reached, the cut rate update section 45 calculates a cut rate of the dresser in each scanning area (step S20).
Furthermore, it is determined whether or not the moving speed update cycle of the dresser (e.g., polishing of a predetermined number of wafers W) is reached (step S21), and when the moving speed update cycle of the dresser is reached, the parameter setting section 49 sets the convergence time target wear amount A.sub.tg from the value of the measured profile range (step S22).
The moving speed calculation section 45 determines an evaluation index J using the value of the set convergence time target wear amount A.sub.tg, calculates a staying time of the dresser corresponding to the minimum evaluation index J, and thereby optimizes the dresser moving speed in each scanning area (step S23). The optimized value of the moving speed is set and the moving speed of the dresser is updated (step S24). Thereafter, the flow returns to step S18 and the above-described process is repeated until the polishing pad 11 is replaced.
The above-described embodiment is configured such that the parameter setting section 49 changes the convergence time target wear amount A.sub.tg, but without being limited to this, the present invention may cause the weighting factor of the evaluation index J to fluctuate.
.eta.=A.times.sigmoid(−(Range−TargetRange))##EQU00001 ##sigmoid(x)=11+e−ax ##EQU00001.2 ##
In the above-described equation, “A” and “a” are predetermined parameters, “Range” is a profile range, “TargetRange” is a reference value, and in the example in
The graph in
On the other hand,
On the contrary, by adopting a configuration in which the weighting factor .eta. is automatically changed, it is possible to perform control such that the profile range is brought closer to a predetermined value (reference value) while suppressing the scan speed range. By changing the weighting factor of the evaluation index J, it is possible to adjust indices to be emphasized as appropriate in accordance with an operation situation of the apparatus without depending on characteristics of the polishing pad or the dresser.
The above-described embodiment has been described on the assumption that the height of the polishing pad is lowered accompanying the polishing processing on the wafer W, but in the case where the processing on the wafer W is not performed for a while, the polishing pad may contain water and swell, and an apparent height of the polishing pad may increase. The amount of swelling of the polishing pad varies depending on the type of the polishing pad or a state of using the apparatus, but when the height of the polishing pad varies due to swelling, the cut rate to be used to calculate the evaluation index J becomes a negative value, and as a result, the moving speed of the dresser cannot be calculated or the calculated value may become an abnormal value, and in such a case, the performance of the polishing apparatus may be affected.
Therefore, as shown in
It is noted that the cut rate calculation interval may be preferably determined by a combination of the polishing pad and the dresser. Alternatively, as the cut rate calculation method, it may be possible to select any one of a method of calculating the cut rate from the initial pad height and the current height (measured value) of the polishing pad and a method of calculating the cut rate from the pad height when the previous cut rate is calculated and the current height of the polishing pad.
Furthermore, the monitoring target is not limited to the height of the polishing pad, but surface roughness of the polishing pad may be measured and the moving speed may be calculated such that the surface roughness may be made uniform.
Hereinafter, another embodiment of the present invention will be described. Note that the same members as those described in the above first embodiment are assigned the same reference numerals and detailed description thereof will be omitted.
As shown in
The pad height detection section 48 detects a pad height in each monitoring area by associating height data of the polishing pad continuously measured by the pad height sensor 32 with measured coordinate data on the polishing pad. More specifically, the pad height detection section 48 calculates a value of the pad height in each monitoring area by performing averaging processing (spatial averaging) on the measured height data of the polishing pad (height data in the radius direction of the polishing pad) using a plurality of adjacent pieces of height data and then averaging the height data after moving averaging for each divided monitoring area. After that, the pad height detection section 48 generates height data after the moving averaging by performing averaging using height data (after averaging processing) obtained during wafer polishing processing on a plurality of immediately preceding wafers (e.g., 5 wafers) for each monitoring area. Thus, influences of drastic fluctuation or variation in the measured values are suppressed by taking moving average of the measured values of the polishing pad height through a plurality of immediately preceding measurements.
In the case where processing on a wafer W is not performed for a while, if the height of the polishing pad measured and detected by the pad height detection section 48 changes drastically, the pad height correction section 51 determines that swelling or contraction of the polishing pad has occurred and performs correction processing of the height of the polishing pad. Details of the correction processing will be described later.
The evaluation index creation section 44 defines an evaluation index J expressed by the following equation based on the following three indices described in the above-described first embodiment (a square value (|U−U.sub.0|.sup.2) of a difference from a pad wear amount U (=ST) in each monitoring area, a square value (.DELTA.T.sup.2=|T−T.sub.0|.sup.2) of a difference (.DELTA.T) from a moving speed (dresser staying time T) of the dresser in each scanning area and a square value (|.DELTA.V.sub.inv|.sup.2)) of a difference in speed between adjacent scanning areas).
J=.gamma.|U−U.sub.0|.sup.2+.lamda.|T−T.sub.0|.sup.2+|.DELTA.V.sub.inv|.s−up.2
where, the first term, second term and third term of the right side of the evaluation index J are a deviation from a target cut amount, a deviation from the staying time in a reference recipe and an index caused by a speed difference between adjacent scanning areas respectively and all the terms depend on a staying time T of the dresser in each scanning area.
The moving speed calculation section 45 performs optimization calculation such that the value of the evaluation index J takes a minimum value, thereby calculates the staying time T of the dresser in each scanning area and corrects the moving speed of the dresser. As a technique for optimization calculation, a quadratic programming can be used, but convergence calculation using a simulation or PID control may also be used.
In the above-described evaluation index J, .gamma., .lamda. and .eta. are predetermined weighting values and these can be changed as appropriate while the same polishing pad is in use. By changing these weighting values, it is possible to adjust indices to be emphasized as appropriate in accordance with characteristics of the polishing pad and the dresser or an operating situation of the apparatus.
Here, when processing on the wafer W is not performed for a while, if the polishing pad swells with moisture, the measured value of the height of the polishing pad may increase compared to the last measurement time. On the contrary, when processing on the wafer W is not performed for a while, if the polishing pad is contracted, the measured value of the height of the polishing pad may drastically decrease.
When the measured value of the height of the polishing pad discontinuously fluctuates because the polishing pad is not used for a long period of time, the cut rate that should be used to calculate the evaluation index J changes drastically (or the cut rate becomes a negative value), and as a result, it may be impossible to calculate the moving speed of the dresser or the calculated value may become abnormal. The performance of the polishing apparatus may be affected in such a case.
For this reason, the polishing apparatus of the present embodiment does not measure the height of the polishing pad for a time exceeding a reference value .DELTA.T.sub.TH and when the change of the measured value exceeds a threshold .DELTA.H.sub.TH, the polishing apparatus determines that an abnormality (swelling or contraction) has occurred in the polishing pad, corrects the measured value of the polishing pad height including the past measured values, and thereby reduces discontinuous changes of the cut rate.
On the other hand, when it is detected that swelling has occurred, the pad height correction section 51 corrects the measured value of the polishing pad height by adding a correction value which will be described later to the data of the polishing pad height for a past certain period (time t1 to tn). On the other hand, when it is detected that contraction has occurred in the polishing pad, the pad height correction section 51 corrects the measured value of the polishing pad height by subtracting a correction value which will be described later from the data of the polishing pad height for a past certain period (time t1 to tn). Such corrections make it possible to stably control the pad height profile even when a discontinuous change occurs in the measured value of the polishing pad height without affecting calculations of the cut rate.
In
In
Thus, it is possible to detect swelling or contraction of the polishing pad based on both the interval between detection times of the polishing pad height and a difference between the measured values, correct measured values including the past ones, and thereby appropriately correct measured values of the polishing pad and discontinuous changes of the cut rate.
Note that an abnormality (swelling or contraction) in the polishing pad may be determined using any one of the measured values of the pad height in the diameter direction of the polishing pad as a reference, and in this case, any one of measured values exceeding the threshold .DELTA.H.sub.TH is added (or subtracted) as a correction value. Alternatively, an average value of the measured values of the pad height in the diameter direction of the polishing pad may be used as a reference for determination, and in this case, when the average value exceeds the threshold .DELTA.H.sub.TH, a configuration can be adopted in which the average value is added (or subtracted) as a correction value. Furthermore, regarding the threshold .DELTA.H.sub.TH, different thresholds may be set for swelling and contraction.
When an abnormality (swelling or contraction) occurs in the polishing pad, the pad height correction section 51 determines whether or not a change of the measured value of the polishing pad height has exceeded the threshold .DELTA.H.sub.TH regardless of whether or not the measurement time interval of the pad height exceeds the reference value .DELTA.T.sub.TH (whether or not an idle time of wafer polishing is long). In the example in
It is noted that when calculating the moving speed of the dresser, it is preferable to make the total dressing time fall within a predetermined value. The total dressing time here refers to a moving time for a total swing period by the dresser (scanning areas S1 to S7 in the present embodiment). Since an extended total dressing time (time required for dressing) may affect other processes such as a wafer polishing process and a transporting process, it is preferable to make corrections as appropriate on the moving speed in each scanning area so that this value does not exceed a predetermined value. Furthermore, since there is a restriction on the mechanism of the apparatus, it is preferable to set the moving speed of the dresser so that a maximum (and minimum) moving speed of the dresser and the ratio of a maximum speed (minimum speed) to the initial speed are within the set value.
In a combination of a new dresser and a polishing pad, if no appropriate dress condition is clear or no reference speed (reference staying time T.sub.0) of the dresser is determined as in the case of immediately after replacement of the dresser or the polishing pad, the moving speed calculation section 45 may determine the evaluation index J (described below) using only a condition of deviation from the target cut amount to optimize the moving speed of the dresser (initial setting) in each scanning area.
J=|U−U.sub.0|.sup.2
The setting input section 46 is an input device such as a keyboard or a mouse, and inputs various parameters such as value of each component of dress model matrix S, setting of constraint conditions, cut rate update cycle and moving speed update cycle. The memory 47 also stores various kinds of data such as data of program to operate each component constituting a dressing monitoring apparatus 35, value of each component of the dress model matrix S, target profile, weighting value of the evaluation index J and set value of the moving speed of the dresser.
Next, it is determined whether or not to calculate a reference speed of the dresser (whether or not the setting input section 46 has input an instruction for calculating the reference speed) (step S33). When the reference speed is calculated, the moving speed calculation section 45 sets the moving speed (staying time T) of the dresser in each scanning area from the target cut amount U.sub.0 of the dresser and the pad wear amount U in each monitoring area so that the next evaluation index J becomes a minimum value (step S34). The calculated reference speed may be set as an initial value of the moving speed.
J=|U−U.sub.0|.sup.2
After that when polishing processing on the wafer W is performed, if dressing processing on the polishing pad 11 is performed, the base profile calculation section 42 calculates a target profile (base profile) of the pad height at the time of convergence (step S35).
After that, when polishing processing on the wafer W is performed, if dressing processing on the polishing pad 11 is performed, the pad height sensor 32 measures the height (pad height) of the polishing surface 11a and the pad height detection section 48 detects a profile of the pad height (step S36).
The pad correction section 49 determines whether or not swelling or contraction has occurred in the polishing pad based on the measured value of the height of the polishing pad and the measurement time interval (step S37). Upon determining that swelling or contraction has occurred, the pad correction section 49 corrects pad height data in a past certain period using the amount of fluctuation in the measured value of the height of the polishing pad as a correction value (step S38). After that, the cut rate update section 43 calculates the cut rate of the dresser in each scanning area (step S39).
Furthermore, it is determined whether or not the moving speed update cycle of the dresser (e.g., polishing of a predetermined number of wafers W) has been reached (step S40) and if the moving speed update cycle has been reached, the moving speed setting section 45 calculates a staying time of the dresser corresponding to the minimum evaluation index J, and thereby optimizes the dresser moving speed in each scanning area (step S41). The value of the optimized moving speed is set and the moving speed of the dresser is updated (step S42). Thereinafter, the flow returns to step S16 and the above-described processing is repeated until the polishing pad 11 is replaced.
It is noted that the calculation interval of the cut rate is preferably determined by a combination of the polishing pad and the dresser. As for the method for calculating the cut rate, it may be possible to select any one of a method for calculating the cut rate from the initial pad height and the height of the current polishing pad (measured value) and a method for calculating the cut rate from the pad height when the last cut rate is calculated and the height of the current polishing pad.
Furthermore, the monitoring target is not limited to the height of the polishing pad but it may be possible to calculate the moving speed so as to measure surface roughness of the polishing pad and uniformize the surface roughness.
The above-described embodiment has been described with the intention to allow a person ordinarily skilled in the art to which the present invention belongs to implement the present invention. Various modifications of the above-described embodiment can be naturally implemented by those skilled in the art and the technical thought of the present invention is also applicable to other embodiments. The present invention is not limited to the described embodiment, but should be interpreted within a broadest possible scope according to the technical thought defined in the scope of the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
2018-240102 | Dec 2018 | JP | national |
2018-243656 | Dec 2018 | JP | national |
This application is a divisional of U.S. patent application Ser. No. 16/721,758, filed Dec. 19, 2019, which claims the benefit of Japanese Priority Patent Application JP 2018-240102 filed on Dec. 21, 2018 and JP 2018-243656 filed on Dec. 26, 2018, the contents of each of which are incorporated herein by reference in their entirety.
Number | Date | Country | |
---|---|---|---|
Parent | 16721758 | Dec 2019 | US |
Child | 17895968 | US |