Polishing apparatus and polishing method
The polishing apparatus improves end point detection by using arm torque detection within a controlled angular range and advanced signal processing to isolate polishing frictional force changes, addressing the precision issues in existing technologies.
Patent Information
- Application Number
- JP2020216919
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2020-12-25
- Publication Date
- 2024-12-13
- Estimated Expiration
- 2040-12-25
AI Technical Summary
Existing polishing technologies face challenges in accurately detecting the end point of polishing due to interference from torque changes caused by the swinging arm, leading to issues such as overpolishing or insufficient polishing, especially when multiple polishing conditions are involved.
A polishing apparatus and method that includes an arm torque detection section to detect torque fluctuations within a predetermined angular range while the swinging arm is in motion, using techniques like averaging and differential analysis to isolate polishing frictional force changes, thereby improving the precision of end point detection.
Enhances the accuracy of polishing end point detection by minimizing interference from torque changes unrelated to polishing friction, reducing the risk of overpolishing and ensuring consistent film quality.
Smart Images

Figure 0007599330000001 
Figure 0007599330000002 
Figure 0007599330000003
Abstract
Description
[Technical field]
[0001] The present invention relates to a polishing apparatus and a polishing method. [Background technology]
[0002] In recent years, as semiconductor devices have become more highly integrated, the wiring of circuits has become finer and the distance between the wiring has become narrower. In the manufacture of semiconductor devices, many types of materials are repeatedly formed in film form on silicon wafers to form a layered structure. In order to form this layered structure, technology for flattening the wafer surface is important. As one method for flattening such wafer surfaces, polishing equipment that performs chemical mechanical polishing (CMP) (also known as chemical mechanical polishing equipment) is widely used.
[0003] This chemical mechanical polishing (CMP) apparatus generally has a polishing table on which a polishing pad for polishing an object to be polished (substrate such as a wafer) is attached, and a top ring for holding a wafer to hold the object to be polished and press it against the polishing pad. The polishing table and the top ring are each rotated by a drive unit (e.g., a motor). The polishing apparatus further has a nozzle for supplying a polishing liquid onto the polishing pad. While supplying the polishing liquid from the nozzle onto the polishing pad, the top ring presses the wafer against the polishing pad, and the top ring and the polishing table are moved relative to each other, thereby polishing the wafer and flattening its surface. Methods for holding the top ring and the drive unit for the top ring include a method in which they are held at the end of a swing arm (cantilever arm) and a method in which the top ring and the drive unit for the top ring are held on a carousel.
[0004] In a polishing machine, if the object to be polished is not polished sufficiently, the insulation between the circuits may not be achieved, which may cause a short circuit. In addition, if the object is over-polished, the cross-sectional area of the wiring may be reduced, causing an increase in resistance, or the wiring itself may be completely removed, resulting in no circuit formation. For this reason, a polishing machine is required to detect the optimal polishing end point.
[0005] One method for detecting the end point of polishing is to detect the change in the polishing frictional force when the polishing transfers to a different material. A semiconductor wafer, which is the object to be polished, has a layered structure made of different materials such as semiconductors, conductors, and insulators, and the friction coefficients differ between the layers of different materials. For this reason, this method detects the change in the polishing frictional force that occurs when the polishing transfers to a different material layer. According to this method, the end point of polishing is when the polishing reaches the different material layer.
[0006] The polishing apparatus can also detect the end point of polishing by detecting the change in the polishing frictional force when the polished surface of the object to be polished goes from an uneven state to a flat state.
[0007] Here, the polishing friction force generated when polishing an object appears as a driving load of a driving unit that rotates and drives the polishing table or the top ring. For example, if the driving unit is an electric motor, the driving load (torque) can be measured as the current flowing through the motor. Therefore, the motor current (torque current) can be detected by a current sensor, and the end point of polishing can be detected based on the change in the detected motor current.
[0008] Japanese Patent Application Publication No. 2004-249458 discloses a method for detecting the end point of polishing by measuring the polishing frictional force using the motor current of the motor that drives the polishing table in a system in which a top ring is held at the end of a swing arm. In a system in which multiple top rings are held on a carousel, there is a method for detecting the end point by detecting the torque current (motor current) of the carousel rotation motor (Japanese Patent Application Publication No. 2001-252866, U.S. Patent No. 6,293,845). In another method, the top ring is driven laterally by a linear motor attached to the rotor cell. In this method, an end point detection method is disclosed (US Patent Application Publication No. 2014 / 0020830) that detects the torque current (motor current) of the linear motor. [Prior art documents] [Patent documents]
[0009] [Patent Document 1] JP 2004-249458 A [Patent Document 2] Patent Publication No. 2001-252866 [Patent Document 3] U.S. Patent No. 6,293,845 [Patent Document 4] US Patent Application Publication No. 2014 / 0020830 Summary of the Invention [Problem to be solved by the invention]
[0010] In the polishing process performed by the polishing apparatus, there are a number of polishing conditions depending on the combination of the type of object to be polished, the type of polishing pad, the type of polishing abrasive liquid (slurry), whether the swing arm swings, and the like. For example, the swing arm may be swung during polishing to improve the uniformity (profile) of the polishing. In this case, when the polishing friction force is measured using the motor current of the motor (rotary motor) that drives the polishing table, the distance between the rotation center of the table and the rotation center of the wafer changes due to the swing of the swing arm. Therefore, a change according to the swing period of the swing arm caused by the change in the rotation moment of the table appears in the motor current of the rotary motor. As a result, it becomes difficult to detect the end point of polishing from the motor current of the rotary motor.
[0011] There is also a method (hereinafter referred to as the "arm torque method") in which an arm torque applied to a swing arm is detected from a current value of a motor (swing motor) for swinging the swing arm, and a polishing end point indicating the end of polishing is detected based on the detected arm torque. In the arm torque method, the swing motor rotates when the swing arm swings, and the arm torque changes due to the swing. In the arm torque method, the torque change caused by the change in the polishing friction force between the wafer and the pad is minute compared to the torque for rotating the swing motor when the swing arm swings. For this reason, unless the influence of the torque for rotating the swing motor is removed, the torque change cannot be detected, and there is a risk that the end point of polishing cannot be properly detected, which may cause a problem such as over-polishing. In other words, it is preferable to accurately detect the fluctuation in the arm torque and to detect the film quality change of the polishing object and / or the polishing end point with higher accuracy than before.
[0012] Incidentally, it is necessary to appropriately detect the end point of polishing even when polishing and dressing of the polishing pad are performed simultaneously. Dressing is performed by applying a pad dresser, which has a grinding stone such as diamond arranged on its surface, to the polishing pad. The pad dresser scrapes or roughens the surface of the polishing pad to improve the slurry retention of the polishing pad before the start of polishing, or to restore the slurry retention of the polishing pad during use, thereby maintaining the polishing ability.
[0013] Therefore, an object of one embodiment of the present invention is to improve the accuracy of detecting the polishing endpoint by detecting a change in frictional force between the wafer and pad during swinging of the swing arm, i.e., a fluctuation in arm torque, with improved accuracy compared to conventional methods in a system in which the top ring is held by a swing arm. [Means for solving the problem]
[0014] In order to solve the above problems, in a first embodiment, there is provided a polishing apparatus for performing polishing between a polishing pad and an object to be polished that is disposed opposite the polishing pad, the polishing apparatus comprising: a polishing table for holding the polishing pad; a holding part for holding the object to be polished; the arm torque detection unit detects, directly or indirectly, an arm torque applied to the swing arm when the swing arm swings within a predetermined angle range; and an end point detection unit detects a polishing end point indicating the end of the polishing based on the arm torque detected by the arm torque detection unit.
[0015] In a second embodiment, the polishing apparatus according to the first embodiment is configured so that the arm torque detection unit detects the arm torque within the specified angle range when the oscillating arm is oscillating in a specified direction.
[0016] In a third embodiment, the polishing apparatus of the first embodiment is configured such that the arm torque detection unit detects the arm torque within the specified angle range when the oscillating arm is oscillating in both directions.
[0017] In a fourth embodiment, the polishing apparatus is configured as described in any one of the first to third embodiments, characterized in that the arm torque detection unit detects the arm torque at a predetermined angle within the predetermined angle range.
[0018] In a fifth embodiment, the polishing apparatus is configured as described in any one of the first to third embodiments, characterized in that the arm torque detection unit detects the arm torque at a plurality of angles within the predetermined angle range, and the end point detection unit averages the arm torque obtained at the plurality of angles for at least one cycle of oscillation, and detects a polishing end point indicating the end of the polishing based on the arm torque obtained by averaging.
[0019] In a sixth embodiment, the polishing apparatus has a configuration as described in any one of the first to fifth embodiments, characterized in that at the connection portion of the oscillating arm to the arm drive portion, the arm torque detection portion detects the arm torque applied to the oscillating arm.
[0020] In a seventh embodiment, the polishing apparatus has a configuration as described in any one of the first to fifth embodiments, characterized in that the arm drive unit is a rotary motor that rotates the oscillating arm, and the arm torque detection unit detects the arm torque applied to the oscillating arm from a current value of the rotary motor.
[0021] In an eighth embodiment, the polishing apparatus has a configuration as described in any one of the first to fifth embodiments, characterized in that the end point detection unit detects a polishing end point indicating the end of the polishing based on a differential value of the current value of the rotary motor.
[0022] In a ninth embodiment, the polishing apparatus has a pad dresser that dresses the polishing pad, and the pad dresser performs the dressing when the oscillating arm is oscillating. The polishing apparatus has the configuration described in any one of the first to eighth embodiments.
[0023] In a tenth embodiment, the polishing apparatus has a configuration as described in any one of the first to ninth embodiments, characterized in that the end point detection unit determines a swing angle of the swing arm and determines the arm torque corresponding to the swing angle.
[0024] In an eleventh embodiment, in a polishing method for performing polishing between a polishing pad and an object to be polished arranged opposite to the polishing pad, the polishing pad is held on a polishing table, a swing arm holds a holding portion that holds the object to be polished, and an arm drive portion swings the swing arm. The polishing method is characterized in that, when the swing arm swings within a predetermined angle range, an arm torque applied to the swing arm is directly or indirectly detected, and a polishing end point indicating the end of the polishing is detected based on the detected arm torque. [Brief description of the drawings]
[0025] [Figure 1] FIG. 1 is a schematic diagram showing the overall configuration of a polishing apparatus according to one embodiment of the present invention. [Diagram 2] FIG. 2 is a schematic diagram showing the overall configuration of a polishing apparatus according to one embodiment of the present invention. [Diagram 3] FIG. 3 is a block diagram illustrating a method for detecting the arm torque by the arm torque detection unit. [Figure 4] FIG. 4 is a diagram showing how the top ring swings. [Diagram 5] FIG. 5 is a diagram showing an example of a specific swing angle range in which the torque is relatively stable. [Figure 6] FIG. 6 is a diagram showing another example of a specific swing angle range in which the torque is relatively stable. [Figure 7] FIG. 7 is a diagram showing yet another example of a specific swing angle range in which the torque is relatively stable. [Figure 8] FIG. 8 is a diagram showing the relationship between the oscillation period and a specific angle. [Figure 9] FIG. 9 is a flowchart showing the process performed by the end point detection unit. [Figure 10] FIG. 10 is a diagram illustrating an example of the motor rotation speed acquired by the end point detection unit. [Figure 11] FIG. 11 is a diagram showing an example of the motor angle obtained by the end point detection unit through integration. [Figure 12] FIG. 12 is a diagram illustrating an example of the torque command value acquired by the end point detection unit. [Figure 13] FIG. 13 is a diagram showing the torque command value after moving average. [Figure 14]FIG. 14 shows a diagram in which the torque command value is divided into torque command values for each angle. [Figure 15] FIG. 15 is a diagram showing torque command values obtained by data interpolation. [Figure 16] FIG. 16 is a diagram showing a torque command value obtained by the moving average. [Figure 17] FIG. 17 is a diagram showing a torque command value obtained by averaging each oscillation period. [Figure 18] FIG. 18 is a diagram showing a torque command value obtained by the moving average. [Figure 19] FIG. 19 is a diagram showing differential values obtained by differentiation. [Figure 20] FIG. 20 is a diagram showing the motor current and arm torque of the polishing table. [Figure 21] FIG. 21 is a diagram showing the position of the pad dresser when it reciprocates over a given area on the polishing pad. [Figure 22] FIG. 22 is a diagram showing a value obtained by differentiating the arm torque and a value obtained by differentiating the current. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0026] Hereinafter, embodiments of the present invention will be described with reference to the drawings. In each of the following embodiments, the same or corresponding components are designated by the same reference numerals, and duplicated descriptions may be omitted. Furthermore, the features shown in each embodiment can be applied to other embodiments as long as they are not mutually inconsistent.
[0027] Fig. 1 is a schematic diagram showing the overall configuration of a polishing apparatus 34 according to one embodiment of the present invention. As shown in Fig. 1, the polishing apparatus 34 performs polishing between a polishing pad 10 and an object to be polished that is disposed opposite the polishing pad 10. The polishing apparatus 34 includes a polishing table 30 for holding the polishing pad 10, and a top ring 31 (holding portion) for holding a substrate such as a semiconductor wafer 16, which is the object to be polished, and pressing it against a polishing surface on the polishing table.
[0028] The polishing apparatus 34 has a swing arm 110 for holding the top ring 31, a swing shaft motor 14 (arm drive unit) for swinging the swing arm 110, and a driver 18 for supplying drive power to the swing shaft motor 14. The polishing apparatus 34 further has an arm torque detection unit 26 for directly or indirectly detecting an arm torque applied to the swing arm 110 when the swing arm 110 swings within a predetermined angle range, and an end point detection unit 28 for detecting a polishing end point indicating the end of polishing based on the arm torque detected by the arm torque detection unit 26.
[0029] According to this embodiment, in a method in which the top ring 31 is held by the swing arm 110, when detecting a change in frictional force between the semiconductor wafer 16 and the polishing pad 10 during swinging of the swing arm 110, that is, a change in arm torque, can be detected with improved accuracy compared to the conventional method, thereby improving the accuracy of detecting the polishing end point. In this embodiment, when detecting torque fluctuations while swinging the swing arm 110 of the top ring 31, the sensitivity of detecting torque fluctuations is improved compared to the conventional method by noise reduction, etc., which will be described later. As described above, in the case of the arm torque method, the torque change caused by the change in the polishing frictional force between the wafer and the pad is minute compared to the torque for rotating the swing motor when the swing arm swings. Therefore, unless the effect of the torque for rotating the swing motor is removed, the torque change cannot be detected, and there is a risk that the end point of polishing cannot be detected properly, which may cause problems such as over-polishing. In this embodiment, as will be described later, this problem is solved by detecting the polishing end point when the swing arm 110 swings within a predetermined angle range.
[0030] In this figure, the polishing table 30 is connected via a table shaft 102 to a motor 52, which is a drive unit disposed below the polishing table 30, and is rotatable about the table shaft 102. A polishing pad 10 is attached to the upper surface of the polishing table 30, and a surface 101 of the polishing pad 10 forms a polishing surface for polishing the semiconductor wafer 16. A polishing liquid supply nozzle (not shown) is provided above the polishing table 30, and a polishing liquid Q is supplied to the polishing pad 10 on the polishing table 30 by the polishing liquid supply nozzle.
[0031] The polishing apparatus 34 has a driver 118 that supplies driving power to the motor 52. The polishing apparatus 34 may further have a torque detector 126 that detects a torque applied to the polishing table 30 while the polishing table 30 is rotating. The end point detector 28 may detect a polishing end point indicating the end of polishing based on the torque detected by the torque detector 126. As shown in FIG. 2, an eddy current sensor 50 may be embedded inside the polishing table 30, which is capable of detecting a polishing end point by generating an eddy current in the semiconductor wafer 16 and detecting the eddy current. The end point detector 28 may detect a polishing end point indicating the end of polishing based on the eddy current detected by the eddy current sensor 50.
[0032] The polishing apparatus 34 will be further described with reference to Fig. 2. Fig. 2 is a schematic diagram showing the overall configuration of the polishing apparatus 34 according to one embodiment of the present invention. The top ring 31 is made up of a top ring body 24 that presses the semiconductor wafer 16 against the polishing surface 101, and a retainer ring 23 that holds the outer periphery of the semiconductor wafer 16 to prevent the semiconductor wafer 16 from jumping out of the top ring.
[0033] The top ring 31 is connected to a top ring shaft 111. The top ring shaft 111 moves up and down relative to the swing arm 110 by a vertical movement mechanism (not shown). By the vertical movement of the top ring shaft 111, the entire top ring 31 is raised and lowered relative to the swing arm 110 for positioning.
[0034] The top ring shaft 111 is connected to a rotary cylinder 112 via a key (not shown). The rotary cylinder 112 is provided with a timing pulley 113 on its outer periphery. A top ring motor 114 is fixed to the swing arm 110. The rotating barrel 112 is connected to a timing pulley 116 provided on a top ring motor 114 via a timing belt 115. When the top ring motor 114 rotates, the rotating barrel 112 and the top ring shaft 111 rotate together via the timing pulley 116, the timing belt 115, and the timing pulley 113, and the top ring 31 rotates.
[0035] The swing arm 110 is connected to a rotating shaft of a swing shaft motor 14. The swing shaft motor 14 is fixed to a swing arm shaft 117. Therefore, the swing arm 110 is supported rotatably with respect to the swing arm shaft 117.
[0036] The top ring 31 can hold a substrate such as a semiconductor wafer 16 on its lower surface. The swing arm 110 can rotate around a swing arm shaft 117. The top ring 31 holding the semiconductor wafer 16 on its lower surface is moved from the receiving position of the semiconductor wafer 16 to above the polishing table 30 by the swing arm 110 rotating. Then, the top ring 31 is lowered to press the semiconductor wafer 16 against the surface (polishing surface) 101 of the polishing pad 10. At this time, the top ring 31 and the polishing table 30 are rotated. At the same time, a polishing liquid is supplied onto the polishing pad 10 from a polishing liquid supply nozzle provided above the polishing table 30. In this manner, the semiconductor wafer 16 is brought into sliding contact with the polishing surface 101 of the polishing pad 10 to polish the surface of the semiconductor wafer 16.
[0037] The polishing apparatus 34 has a table driving unit (motor 52) which rotates and drives the polishing table 30 as shown in FIG. 1. The polishing apparatus 34 may have a torque detection unit 126 which detects a table torque applied to the polishing table 30. The torque detection unit 126 can detect the table torque from the current of the table driving unit which is a rotary motor. The driver 118 supplies a three-phase (UVW phase) current 54 to the motor 52. The current sensor 56 detects the current of one of the phases and sends the detected current to the torque detection unit 126. The torque detection unit 126 sends the detected current to the end point detection unit 28 as a table torque. The end point detection unit 28 may detect the polishing end point indicating the end of polishing only from the arm torque detected by the arm torque detection unit 26, or may detect the polishing end point indicating the end of polishing by taking into consideration the table torque detected by the torque detection unit 126.
[0038] In FIG. 2, the arm torque detector 26 detects the arm torque applied to the swing arm 110 at the connection part of the swing arm 110 to the swing shaft motor 14. Specifically, the arm drive part is the swing shaft motor (rotation motor) 14 that rotates the swing arm 110, and the arm torque detector 26 detects the arm torque applied to the swing arm 110 from the current value of the swing shaft motor 14. The current value of the swing shaft motor 14 is an amount that depends on the arm torque at the connection part of the swing arm 110 to the swing shaft motor 14. In this embodiment, the current value of the swing shaft motor 14 is a current value 18b supplied from the driver 18 shown in FIG. 3 to the swing shaft motor 14, or a current command 18a (described later) generated within the driver 18. Here, the arm torque is a moment of force around the swing shaft 108 acting on the swing arm 110 around the swing shaft 108 of the swing arm 110. The table torque is a moment of force acting on the polishing table 30 about the rotation axis 192 of the polishing table 30 .
[0039] A method for detecting the arm torque by the arm torque detection unit 26 will be described with reference to Fig. 3. A position command 65a relating to the position of the swing arm 110 is input to the driver 18 from the control unit 65. The position command 65a is data corresponding to the rotation angle of the swing arm 110 relative to the swing arm shaft 117. The driver 18 also receives an input of a rotation angle 36a of the swing arm shaft 117 from an encoder 36 built into and attached to the swing shaft motor 14.
[0040] The encoder 36 can detect a rotation angle 36a of the rotary shaft of the oscillating shaft motor 14, i.e., a rotation angle 36a of the oscillating arm shaft 117. In Fig. 3, the oscillating shaft motor 14 and the encoder 36 are illustrated as being independent, but in reality, the oscillating shaft motor 14 and the encoder 36 are integrated. One example of such an integrated motor is a synchronous AC servo motor with a feedback encoder.
[0041] The driver 18 has a deviation circuit 38, a current generating circuit 40, and a PWM circuit 42. The deviation circuit 38 obtains a deviation 38a between the position command 65a and the rotation angle 36a from the position command 65a and the rotation angle 36a. The deviation 38a and a current value 18b are input to the current generating circuit 40. The current generating circuit 40 generates a current command 18a according to the deviation 38a from the deviation 38a and the current current value 18b. The PWM circuit 42 receives the current command 18a and generates the current value 18b by PWM (Pulse Width Modulation) control. The current value 18b is a three-phase (U-phase, V-phase, W-phase) current capable of driving the oscillating shaft motor 14. The current value 18b is supplied to the oscillating shaft motor 14.
[0042] The current command 18a is an amount that depends on the current value of the oscillating shaft motor 14 and on the arm torque. The arm torque detection unit 26 performs at least one of AD conversion, amplification, rectification, effective value conversion, etc. on the current command 18a, and then outputs it to the end point detection unit 28 as the arm torque 26a. A sensor 136 for detecting the rotation speed of the motor is attached to the oscillating shaft motor 14. The sensor 136 for measuring the rotation speed may be an electromagnetic type, a Hall element type, an optical type, an induction type, or the like. The sensor 136 outputs the detected motor rotation speed 138 to the end point detection unit 28.
[0043] The current value 18b is the current value of the oscillating shaft motor 14 itself, and is an amount that depends on the arm torque. The arm torque detection unit 26 may detect an arm torque 26a applied to the oscillating arm 110 from the current value 18b. The arm torque detection unit 26 may use a current sensor such as a Hall sensor when detecting the current value 18b. The torque detection unit 126 that detects the table torque of the polishing table 30 may also be configured in the same manner as the arm torque detection unit 26.
[0044] In the arm torque method, the swing motor rotates when the swing arm swings, and the arm torque changes due to the swing. It is necessary to remove the effect of the torque for rotating the swing shaft motor 14 and detect the torque change caused only by the polishing friction force. A method for detecting the torque change caused only by the polishing friction force will be described below. FIG. 4 is a diagram showing how the top ring 31 swings together with the swing arm 110. In this embodiment, the swing arm 110 swings as indicated by the arrow 60 within an angle range 58. Here, the angle range is a range in which the swing arm 110 swings when the swing arm 110 swings around the rotation shaft 108, and the whole range or a part of the range is specified by an angle (unit: degree (°)). In this embodiment, the angle range 58 is the maximum angle range in which the swing arm 110 swings, and the angle range 58 is constant. That is, the swing ends 62 and 64 are usually fixed during polishing. The positions of the swing ends 62 and 64 may be changed. The swing arm 110 reciprocates within an angular range 58. Note that the angular range 58 may be increased or decreased during polishing.
[0045] At the swing ends 62 and 64 of the angle range 58, the speed of the swing arm 110 is changed to change the swing direction. Acceleration occurs in the swing arm 110, so the swing arm 110 slightly overshoots or undershoots. Thus, at the swing ends 62 and 64, the torque for rotating the swing shaft motor 14 is not constant, but varies greatly. It is preferable to detect torque changes caused only by the grinding friction force outside the vicinity of the swing ends 62 and 64. Furthermore, noise is likely to occur in certain areas during swing. Therefore, in this embodiment, the arm torque is determined in a specific swing angle range where the torque is relatively stable. .
[0046] FIG. 5 is a diagram showing an example of a specific swing angle range in which the torque is relatively stable. In FIG. 5, when the swing arm 110 swings in a predetermined angle range 158 located inside the angle range 58, that is, when the swing arm 110 swinging in the entire angle range 58 passes through the angle range 158, the arm torque detection unit 26 directly or indirectly detects the arm torque applied to the swing arm 110. The reason why the torque is stable in the angle range 158 is that it is inside the angle range 58 that does not include the swing ends 62, 64 of the angle range 58. The angle range 158 is, for example, a range before and after the center line 128 (see FIG. 4) of the angle range 58. As for the angle size of the angle range 158, if the angle size of the angle range 58 is 100%, the angle size of the angle range 158 is, for example, 50%. The end point detection unit 28 detects the polishing end point indicating the end of polishing based on the arm torque detected by the arm torque detection unit 26.
[0047] 6 is a diagram showing another example of a specific swing angle range in which the torque is relatively stable. In FIG. 6, the arm torque detection unit 26 detects the arm torque in a predetermined angle range 258 located inside the angle range 58 when the swing arm 110 swings in the predetermined direction 120. That is, when the swing arm 110 swinging in the entire angle range 58 passes through the angle range 258 in the one direction 120, the arm torque is detected in the angle range 258. The reason why the arm torque is stable in the predetermined one direction 120 is that the swing direction of the swing arm 110 is the same as (or different from) the rotation direction of the polishing table 30, so that the arm torque is stable. That is, the arm torque differs depending on whether the swing direction of the swing arm 110 is the same as (or different from) the rotation direction of the polishing table 30. By monitoring only the arm torque when the swing arm 110 is swinging in a predetermined direction 120, the change in the arm torque caused by the rotation of the polishing table 30 is reduced, making it easier to detect only the change in the arm torque caused by the polishing friction force between the polishing pad 10 and the semiconductor wafer 16.
[0048] The arm torque detection unit 26 may detect the arm torque in a predetermined angle range 358 located inside the angle range 58 when the oscillating arm 110 oscillates in a predetermined direction 122 opposite to the predetermined direction 120.
[0049] The arm torque changes depending on whether the swing direction of the swing arm 110 is the same as or different from the rotation direction of the polishing table 30, but the arm torque detection unit 26 may detect the arm torque in a predetermined angle range 258, 358 when the swing arm 110 swings in both directions 120, 122. That is, when the swing arm 110 swinging over the entire angle range 58 passes through the angle range 258 in one direction 120 and the angle range 258 in the other direction 122, the arm torque is detected in the angle ranges 258, 358. This is because there are cases in which the amount of change in torque due to whether the swing direction of the swing arm 110 is the same as or different from the rotation direction of the polishing table 30 is small.
[0050] It is also possible to detect the arm torque in both directions 120, 122 and obtain an average value of the arm torque in both directions 120, 122. By averaging, it is possible to reduce the change in the arm torque caused by the difference in the rotation direction of the polishing table 30 and to detect only the change in the arm torque caused by the polishing friction force between the polishing pad 10 and the semiconductor wafer 16.
[0051] FIG. 7 is a diagram showing yet another example of a specific swing angle range in which the torque is relatively stable. The arm torque detection unit 26 may detect the arm torque at a predetermined angle 124 within the predetermined angle range 58. Here, the angle 124 is an angle measured from one end (swing end 62) of the angle range 58. The angle 124 is not limited to one position within the angle range 58, and may be at multiple positions. The arm torque is calculated by averaging the arm torque at multiple positions. You may do so.
[0052] The predetermined angle 124 does not have to be exactly one angle, for example, an angle of 4 degrees. If the angle size of the angle range 58 is 100%, it may be an angle range equivalent to, for example, 1% centered on 4 degrees. Also, when the swing arm 110 swings in both directions 120, 122, there are times when it rotates in one direction 120 to reach the 4 degree position, and times when it rotates in the opposite direction 122 to reach the 4 degree position. As in the case described with reference to FIG. 6, only the time when it rotates in one direction 120 to reach the 4 degree position, or only the time when it rotates in the opposite direction 122 to reach the 4 degree position, may be considered. It is also possible to consider the time when it reaches 4 degrees from both directions.
[0053] The reason why the arm torque is stable at a single predetermined angle 124 is that the torque that the swing arm 110 receives from the polishing table 30 is considered to be the same since the swing position of the swing arm 110 on the polishing table 30 is the same. Therefore, it is considered that monitoring the change in the arm torque at the specified angle 124 makes it easier to detect only the change in the arm torque caused by the polishing friction force between the polishing pad 10 and the semiconductor wafer 16. However, when the end point is detected only based on the change in the arm torque at one angle 124, it is easily affected by noise contained in the measured value, and it is necessary to reduce the noise.
[0054] 5, 6, and 7, the angle range for detecting the arm torque narrows in this order. As the angle range narrows, the influence of the rotation of the polishing table 30 decreases, making it easier to detect only the change in the arm torque caused by the polishing friction force between the polishing pad 10 and the semiconductor wafer 16. However, as the angle range narrows, the number of arm torque data that can be detected decreases. Therefore, the influence of noise in the data itself increases. Therefore, it is necessary to select an appropriate angle range.
[0055] In general, when detecting an arm torque within a predetermined angle range, the obtained arm torque usually contains noise. One method for reducing noise is averaging. The averaging may be performed over time. For example, the detected time series data is moved over a number of data points to reduce noise.
[0056] Therefore, in this embodiment, the detected time series data may be averaged over time for multiple data. Alternatively, the detected time series data may be classified into data for each swing angle and then averaged. As described above, the change in arm torque at a specific swing angle is considered to be the least affected by the interaction between the rotation of the polishing table 30 and the swing of the swing arm 110, and to show the change in arm torque caused by the polishing friction force between the polishing pad 10 and the semiconductor wafer 16.
[0057] When the time series data is averaged as it is, the following problems arise. The swing arm 110 slightly overshoots or undershoots. In addition, control to keep the swing period constant is not usually performed. Therefore, the swing period (the time it takes for the swing arm 110 to make one round trip from a specified angular position and return to that angular position) varies slightly and is not constant. When the time series data is averaged as it is, the swing period is not constant, and the relationship between time and angular position is not constant, so the angular position of the swing arm 110 is unknown. For this reason, in the worst case, a measurement value with many errors at the end of the swing is used, which reduces the accuracy of the polishing endpoint.
[0058] This point will be explained with reference to Fig. 8. Fig. 8 is a diagram showing the relationship between the oscillation period and a specific angle. The horizontal axis of Fig. 8 is time (seconds: unit is sec), and the vertical axis is the measured value of the arm torque (voltage: unit is V). The black circles represent the arm torque at the oscillation end 62 shown in Fig. 7, and the white circles represent the arm torque at the angle 124 shown in Fig. 7. When the oscillation arm 110 moves from one oscillation end 62 to the other oscillation end 62, The time 132 required for the swing arm 110 to go to the swing end 194 and then return to the swing end 62 is the swing period. The time 134 required for the swing arm 110 to move from the angle 124 to the swing end 62 is not constant as shown in FIG.
[0059] Therefore, if the time series data is averaged as is, the relationship between time and angular position is not constant as described above, and the angular position of the swing arm 110 is unknown. For this reason, in the worst case, a measurement value with many errors at the swing end will be used. Therefore, it is preferable to classify the detected time series data into data for each swing angle and then average it. In the following embodiment, the end point detection unit 28 determines the swing angle of the swing arm 110 and determines the arm torque corresponding to the swing angle.
[0060] The arm torque detection unit 26 detects the arm torque at a plurality of angles within a predetermined angle range 158 shown in Fig. 5, and the end point detection unit 28 averages the arm torque obtained at a plurality of angles for at least one period of the swing, and detects the polishing end point indicating the end of the polishing based on the arm torque obtained by averaging. That is, the detected time series data is classified into data for each swing angle, and then averaged. In other words, this can be said to monitor the arm torque at each angle position, that is, to focus on the change in the arm torque at the same angle position. Or, it can be said that the time series data is converted into data for each swing angle.
[0061] Fig. 9 is a flowchart showing the process performed by the end point detection unit 28. When the swing arm 110 is within a predetermined angle range 158 shown in Fig. 5, the end point detection unit 28 acquires the motor rotation speed as a voltage signal from the sensor 136 (step S10). An example of the acquired motor rotation speed 144 is shown in Fig. 10. In Figs. 10(a) and 10(b), the horizontal axis is time (sec) and the vertical axis is voltage (V). Fig. 10(b) is a part 140 of Fig. 10(a) enlarged in the horizontal direction. Fig. 10(b) is not enlarged in the vertical direction.
[0062] The end point detection unit 28 calculates a moving average over time to remove noise from the acquired motor rotation speed 144 (step S12). After calculating the moving average, the motor rotation speed 144 is integrated to calculate a motor angle 146 (step S14). The motor angle 146 is the rotational position of the swing arm 110. In this embodiment, the motor angle 146 is within an angle range 158 shown in FIG. 5. An example of the motor angle 146 obtained by integration is shown in FIG. 11. In FIGS. 11(a) and 11(b), the horizontal axis is time (sec) and the vertical axis is angle (degree). FIG. 11(b) is a part 142 of FIG. 11(a) enlarged in the horizontal direction. FIG. 11(b) is not enlarged in the vertical direction.
[0063] 11(b) for use in end point detection, or acquires the arm torque 26a in the entire angle range 58 but uses for end point detection only the arm torque 26a acquired in the angle range 158. Similarly, the arm torque detection unit 26 may also acquire the arm torque 26a only in the angle range 158 or acquires the arm torque 26a in the entire angle range 58 but outputs only the arm torque 26a acquired in the angle range 158 to the end point detection unit 28.
[0064] In parallel with acquiring the motor rotation speed as a voltage signal (step S10), the end point detection unit 28 acquires the torque command value 26a as a voltage signal from the arm torque detection unit 26 when the swing arm 110 is within a predetermined angle range 158 shown in Fig. 5 (step S16). An example of the acquired torque command value 26a is shown in Fig. 12. In Fig. 12, the horizontal axis represents time (sec) and the vertical axis represents voltage (V).
[0065] The end point detection unit 28 performs autocorrelation to obtain the oscillation period of the oscillation arm 110 from the acquired torque command value 26a (step S18). The reason for obtaining autocorrelation is to calculate the oscillation period. Knowing the oscillation period means knowing the time of the end of the oscillation. Since the torque command value 26a has a peak value at the end of the oscillation, the oscillation period may be obtained by detecting the peak value. However, the peak value of the torque command value 26a may not be clear, and therefore the period may not be clearly detected. When the signal contains noise, the method of obtaining autocorrelation generally allows the period to be detected more reliably. If the time of the end of the oscillation is known, when taking the moving average of the torque command value 26a, it is possible to prevent the moving average from being taken near the end of the oscillation or across the end of the oscillation. This is because the moving average near the end of the oscillation or across the end of the oscillation is not preferable as described above.
[0066] Next, the end point detection unit 28 calculates a moving average over time to remove noise from the acquired torque command value 26a (step S20). At this time, the moving average is not calculated near the end of the oscillation or across the end of the oscillation. Fig. 13 shows a torque command value 196 after the moving average is calculated. In Fig. 13, the horizontal axis is time (sec) and the vertical axis is voltage (V).
[0067] When the end point detection unit 28 obtains the motor angle and the torque command value, it obtains the swing angle of the swing arm 110 and the torque command value corresponding to that angle from these data, and divides the torque command value into torque command values for each angle (step S22). The reason why the term "divide" is used is that in this embodiment, the angle range 158 shown in Fig. 5 for the swing angle is divided into 100. The method for obtaining the torque command value corresponding to the angle is such that the motor angle is the swing angle of the swing arm 110, and the torque command value obtained at the time when the motor angle is obtained is the torque command value corresponding to the swing angle of the swing arm 110, so that the torque command value corresponding to the swing angle can be obtained.
[0068] FIG. 14 shows a diagram in which the torque command value is divided into torque command values for each angle. One circle 152 represents the torque command value at one angle divided into 100. In FIG. 14, the horizontal axis is time (sec) and the vertical axis is voltage (V). One vertical row of data 150 is the torque command value acquired during one reciprocation of the swing arm 110 and within an angle range 158. However, the vertical row of data 150 is not strictly on the same time axis because the data were acquired at different times. Each data is arranged at a position on the time axis corresponding to the time when the data was acquired. This also applies to the following FIGS. 15 and 16.
[0069] Of the data 150 in one vertical row, data 160 near the top is data acquired near either end 164 or 166 of the angle range 158 shown in FIG. 5. Of the data 150 in one vertical row, data 162 near the bottom is data acquired near either end 164 or 166 of the angle range 158 shown in FIG. 5. This also applies to FIGS. 15 and 16 below. At the ends 164 and 166 of the angle range 158, the arm torque is larger or smaller than between the ends 164 and 166, resulting in a distribution as shown in FIG. 14. It can be seen from FIGS. 12 and 13 that the arm torque is larger or smaller at the ends 164 and 166 of the angle range 158, compared to between the ends 164 and 166.
[0070] Next, in order to obtain a torque command value between the 100 divided torque command values, the end point detection unit 28 obtains a torque command value between the 100 divided torque command values that are adjacent in time by data interpolation (step S24). As a method of data interpolation, linear interpolation, interpolation by a quadratic function, etc. are possible. The torque command value obtained by the interpolation is shown in FIG. 5. In Fig. 15, the horizontal axis is time (sec) and the vertical axis is voltage (V). One horizontal line 154 represents a torque command value at one angle divided into 100. Interpolated data is not shown in Fig. 15. In Fig. 15, ends of adjacent horizontal lines 154 that are at the same angle are connected by a straight line.
[0071] After the interpolation, the end point detection unit 28 performs moving averaging to remove noise (step S26). The torque command value obtained by moving averaging is shown in FIG. 16. In FIG. 16, the horizontal axis is time (sec) and the vertical axis is voltage (V). One point 156 represents the torque command value after moving averaging at one angle divided into 100. The interpolated data is not shown in FIG. 16. In FIG. 15, adjacent points 16 at the same angle are not connected to each other. For this reason, what appears to be a single horizontally continuous line in FIG. 15 appears to be a series of isolated points 156.
[0072] From Figs. 14 to 16, and especially from Fig. 16, the following can be seen. As is clearly shown in Fig. 16, it looks like a plurality of identical curves extending linearly in the horizontal direction are lined up in the vertical direction. In other words, it looks like a plurality of horizontal stripes are lined up in the vertical direction. For example, the topmost data 160, the bottommost data 162, and the data between the topmost data 160 and the bottommost data 162 each seem to form one stripe. In reality, one stripe is made up of multiple points 156, and the points 156 are not continuous. However, the fact that it looks like one stripe indicates that the arm torque for each swing angle changes relatively slowly during polishing, even though the swing arm 110 is swinging during polishing, as shown in Fig. 16. Also, Fig. 16 shows that the arm torque changes significantly around the end of polishing 168, 172.
[0073] Returning to the flowchart of FIG. 9, the end point detection unit 28 calculates an average value for each oscillation period (for each time period) (step S28) after determining the moving average (step S26). This is equivalent to calculating an average value for one vertical column of data 150 shown in FIG. 16. The obtained averaged torque command value 174 is shown in FIG. 17. In FIG. 17, the horizontal axis is time (sec) and the vertical axis is voltage (V). Since the torque command value 174 is an average value for each oscillation period (for each time period), it is calculated discontinuously with respect to time. The torque command value 174 shown in FIG. 17 is a line graph obtained by connecting the torque command values 174 that are discontinuous with respect to time with straight lines.
[0074] Next, the end point detection unit 28 calculates a moving average of the torque command value 174 with respect to time (step S30). The torque command value 176 obtained by the moving average is shown in Fig. 18. In Fig. 18, the horizontal axis is time (sec) and the vertical axis is voltage (V).
[0075] The end point detection unit 28 then calculates the derivative of the torque command value 176 (step S32). The end point detection unit 28 then calculates a moving average with respect to time of the differentiated torque command value 176 (step S34). The derivative value 178 obtained by the moving average is shown in Fig. 19. In Fig. 19, the horizontal axis is time (sec) and the vertical axis is voltage (V) / time (min).
[0076] The end point detection unit 28 then judges whether the polishing end point has been reached from the differential value 178. This is judged based on whether the differential value 178 satisfies a predetermined detection condition for detecting the polishing end point (step S36). An example of the predetermined detection condition is whether the differential value 178 is greater than a predetermined value. The predetermined detection condition is not limited to this. An example of the predetermined detection condition may be whether the torque command value 176 shown in FIG. 18 is greater than a predetermined value.
[0077] When the end point detection unit 28 judges that the differential value 178 in FIG. 19 or the torque command value 176 in FIG. 18 satisfies a predetermined detection condition for detecting the polishing end point, it judges that the polishing end point has been detected (step S38). At this time, polishing ends. If it is determined that the predetermined detection condition for detecting the polishing end point is not satisfied, the process returns to steps S10 and S16 to continue detecting the polishing end point.
[0078] In the above embodiment, the polishing apparatus has the pad dresser 33 that dresses the polishing pad, but the pad dresser 33 is not performing dressing when the swing arm 110 is swinging for polishing. However, the pad dresser 33 may perform dressing when the swing arm 110 is swinging for polishing.
[0079] If the pad dresser 33 performs dressing while the swing arm 110 is swinging for polishing, this may adversely affect detection of the arm torque. The results of an experiment conducted to determine whether dressing by the pad dresser 33 adversely affects detection of the arm torque are shown in Figures 20 to 22. According to the experiment shown in Figures 20 to 22, it was confirmed that dressing has a large effect on the current of the motor 52 of the polishing table 30, but has an extremely small effect on the arm torque.
[0080] FIG. 20 shows a current 180 and an arm torque 182 of the motor 52 that drives the polishing table 30. In FIG. 20, the horizontal axis is time (sec) and the vertical axis is current (A). FIG. 20 also shows one cycle of time 184 required for the pad dresser 33 to make one reciprocating movement over a predetermined area on the polishing pad 10 for dressing. FIG. 21 shows a position 186 of the pad dresser 33 when the pad dresser 33 reciprocates over a predetermined area on the polishing pad 10. In FIG. 21, the horizontal axis is time (sec) and the vertical axis is distance (mm). The position 186 is the position of the pad dresser 33 measured from a predetermined reference point on the polishing pad 10.
[0081] 22 shows a value 188 obtained by differentiating the arm torque 182 and a value 190 obtained by differentiating the current 180. In FIG. 22, the horizontal axis is time (sec) and the vertical axis is current (A) / time (min). From FIGS. 20 and 22, it can be seen that the current 180 of the motor 52 has noise synchronized with the swinging motion of the pad dresser 33. On the other hand, it can be seen that the arm torque 182 does not have noise synchronized with the swinging motion of the pad dresser 33. Therefore, even if the pad dresser 33 performs dressing while the swing arm 110 is swinging for polishing, the arm torque 182 can be detected with high accuracy.
[0082] The arm torque can be detected by a method other than monitoring the current of the swing shaft motor 14 that drives the swing arm 110. For example, a torque sensor that detects torque fluctuations of the swing arm 110 may be attached to the swing arm 110 by adhesive or the like. A load cell or a strain gauge can be used as the torque sensor.
[0083] A polishing method for polishing between the polishing pad 10 and the semiconductor wafer 16 disposed opposite the polishing pad 10 will be described below. In the polishing method using the polishing apparatus 34 shown in FIG. 1, the polishing pad 10 is held on the polishing table 30, and a swing arm 110 holds a top ring 31 that holds the semiconductor wafer 16. A swing shaft motor 14 swings the swing arm 110. When the swing arm 110 swings within a predetermined angle range 158, an arm torque detection unit 26 directly or indirectly detects an arm torque 26a applied to the swing arm 110. An end point detection unit 28 detects a polishing end point indicating the end of polishing based on the detected arm torque 26a.
[0084] The operation of the embodiment of the present invention can also be performed using the following software and / or system. For example, the system (polishing apparatus) has a main controller (control unit) that controls the whole system, and multiple sub-controllers that control the operation of each unit (drive unit, holding unit, end point detection unit). The main controller and the sub-controllers each include a CPU, The device has a memory, a recording medium, and software (program) stored in the recording medium for operating each unit. The polishing method according to the embodiment of the present invention, for example, the "method of detecting a polishing end point indicating the end of polishing based on the detected arm torque 26a" executed by the end point detection unit, can also be executed by software (program).
[0085] Although the above describes examples of the embodiments of the present invention, the above-described embodiments of the present invention are intended to facilitate understanding of the present invention and do not limit the present invention. The present invention may be modified or improved without departing from the spirit thereof, and the present invention naturally includes equivalents thereof. Furthermore, any combination or omission of each component described in the claims and specification is possible within the scope of solving at least a part of the above-mentioned problems or achieving at least a part of the effects. [Explanation of symbols]
[0086] 10...Polishing pad 14...Oscillating shaft motor 16...Semiconductor wafer 26…Arm torque detector 28...End point detection unit 30…Polishing table 31…Top ring 33…Pad dresser 34...Polishing device 50...Eddy current sensor 52...Motor 56...Current sensor 58...Angle range 110...Swing arm 111…Top ring shaft 117...Swing arm shaft 120…One direction 122…One direction 124...Angle 126...Torque detector 158...Angle range 174, 176...Torque command value 180...Current 182…Arm torque 184…hours 18a…Current command 258...Angle range 26a…Torque command value 358…Angle range
Claims
1. A polishing apparatus for performing polishing between a polishing pad and an object to be polished that is disposed opposite the polishing pad, comprising: a polishing table for holding the polishing pad; A holding part for holding the object to be polished; A swing arm for holding the holding portion; an arm drive unit for swinging the swing arm; an arm torque detection unit that directly or indirectly detects an arm torque applied to the swing arm in an angle range excluding a swing end of a maximum angle range in which the swing arm swings; an end point detection unit that detects a polishing end point indicating an end of the polishing based on the arm torque detected by the arm torque detection unit.
2. 2. A polishing apparatus according to claim 1, wherein said arm torque detection section detects said arm torque in an angle range excluding said swing end only when said swing arm is swinging in one direction.
3. 2. A polishing apparatus according to claim 1, wherein said arm torque detection section detects said arm torque in an angle range excluding said swing ends when said swing arm swings in both directions.
4. 4. A polishing apparatus according to claim 1, wherein the arm torque detector detects the arm torque at a predetermined angle within an angle range excluding the swing end.
5. the arm torque detection unit detects the arm torque at a plurality of angles within an angle range excluding the swing end, The end point detection unit detects the angle obtained at the plurality of angles for at least one period of the oscillation.
4. The polishing apparatus according to claim 1, further comprising: an arm torque averaging step; and detecting a polishing end point indicating an end of the polishing step based on the arm torque obtained by averaging.
6. 6. A polishing apparatus according to claim 1, wherein the arm torque detection section detects the arm torque acting on the swing arm at a connection section of the swing arm to the arm drive section.
7. the arm driving unit is a rotary motor that rotates the swing arm, 6. The polishing apparatus according to claim 1, wherein said arm torque detection section detects said arm torque applied to said swing arm from a current value of said rotary motor.
8. 8. The polishing apparatus according to claim 7, wherein the end point detection unit detects a polishing end point indicating an end of the polishing based on a differential value of the current value of the rotary motor.
9. 9. The polishing apparatus according to claim 1, further comprising a pad dresser for dressing the polishing pad, the pad dresser performing the dressing while the swing arm is swinging.
10. 10. The polishing apparatus according to claim 1, wherein the end point detection section determines a swing angle of the swing arm, and determines the arm torque corresponding to the swing angle.
11. A polishing method for performing polishing between a polishing pad and an object to be polished that is disposed facing the polishing pad, comprising: The polishing pad is held on a polishing table; a swing arm holds a holder that holds the object to be polished; An arm drive unit swings the swing arm, directly or indirectly detecting an arm torque applied to the swing arm in an angle range excluding a swing end of a maximum angle range in which the swing arm swings; A polishing method comprising the steps of: detecting a polishing end point, which indicates an end of the polishing, based on the detected arm torque.
Citation Information
Patent Citations
Polishing device
JP2001252866A
Endpoint detection method of polishing
JP2004249458A
Polishing apparatus and polishing method
JP2018058197A
Carrier Head Sweep Motor Current for In-Situ Monitoring
US20140020830A1
System and method for end-point detection in a multi-head CMP tool using real-time monitoring of motor current
US6293845B1
