Plating apparatus, method for estimating state within plating apparatus, and computer program

The plating apparatus uses a potential sensor and neural network model to estimate current density accurately, addressing the challenge of varying plating conditions and ensuring precise film thickness distribution monitoring and adjustment.

JP7733260B1Active Publication Date: 2025-09-02EBARA CORP
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2025040915
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2025-03-14
Publication Date
2025-09-02
Estimated Expiration
2045-03-14

AI Technical Summary

Technical Problem

Existing methods for measuring the thickness distribution of plating films struggle with accuracy when plating conditions change, particularly in real-time monitoring, due to variations in substrate holder position and orientation, necessitating improved estimation of current density.

Method used

A plating apparatus equipped with a potential sensor, anode, and state estimator using a trained neural network model or lookup table to calculate current density at the substrate's outer edge, enabling precise estimation of current density distribution within the substrate.

Benefits of technology

Accurately estimates current density and thickness distribution of plating films despite changes in plating conditions, facilitating real-time monitoring and adjustment of plating processes for improved film uniformity.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007733260000001_ABST
    Figure 0007733260000001_ABST
Patent Text Reader

Abstract

A plating device is provided that makes it possible to estimate the current density on a surface to be plated with high accuracy even when plating conditions change. [Solution] The plating apparatus includes a sensor configured to measure the potential of a plating solution near the outer edge of a substrate held by a substrate holder, and a state estimator configured to use the measured potential as an input and calculate a state estimate representing a current density at the outer edge of the substrate based on an observation model and a state transition model. The state estimator is configured to perform calculations based on the observation model using a first trained neural network model, and the first trained neural network model is configured to output an estimate representing the potential of the plating solution near the outer edge when a state variable representing the current density at the outer edge of the substrate is input.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a plating technique, and more particularly to a technique for measuring the film thickness distribution of a plating film. [Background technology]

[0002] In recent years, plating has become one of the important steps in the device manufacturing process. For example, plating is widely used to form fine structures such as wiring and bumps (protruding metal terminals) in semiconductor integrated circuits. Controlling the thickness distribution of plating films (e.g., achieving uniform thickness distribution) is an important factor in ensuring product performance and reliability, and technology for measuring this thickness distribution plays an important role in controlling the quality of plating films and optimizing manufacturing processes.

[0003] A method for measuring the thickness distribution of a plating film is disclosed, for example, in Patent Document 1 (JP 2023-160356 A). This method uses a potential sensor disposed near the outer edge of a substrate having a surface to be plated and a state space model. According to this method, when the potential sensor measures the potential during the plating film formation process, the measured potential is used to perform a state estimation process based on the state space model, thereby estimating the current density of the plating current at the outer edge (hereinafter referred to as the "outer edge current density"). Furthermore, based on the outer edge current density, the current density in a region inside the outer edge of the substrate is estimated, and then the thickness distribution of the plating film on the substrate is calculated using the estimated current density distribution (see paragraphs

[0043] to

[0069] of Patent Document 1). [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Japanese Patent Publication No. 2023-160356 Summary of the Invention [Problem to be solved by the invention]

[0005] During a plating process to deposit a plating film on a substrate, various parameters (e.g., the position and orientation of the substrate holder) that determine the conditions of the plating process (i.e., the plating conditions) may change over time. Furthermore, the plating conditions may also change for each plating process (e.g., the plating conditions may differ between the plating process for depositing a plating film on the first substrate and the plating process for depositing a plating film on the second substrate). Even with such changes in plating conditions, it is desirable to measure the thickness distribution of the plating film with high accuracy. When the thickness distribution of the plating film is estimated from the current density distribution, highly accurate measurement of the thickness distribution requires highly accurate estimation of the current density on the substrate in response to changes in the plating conditions. This is particularly important when monitoring the thickness distribution of the plating film in real time.

[0006] In view of the above, an object of the present invention is to provide a plating apparatus, a method for estimating the state within the plating apparatus, and a computer program that enable the current density on a substrate to be estimated with high accuracy even if changes in plating conditions occur. [Means for solving the problem]

[0007] A plating apparatus according to a first aspect of the present invention includes a plating tank for containing a plating solution, a substrate holder for holding a substrate, an anode disposed in the plating tank so as to face the substrate held by the substrate holder, and an anode disposed on an outer edge of the substrate held by the substrate holder. and a state estimator configured to use the measured potential as an input and to calculate a state estimate representing a current density at the outer edge of the substrate based on an observation model and a state transition model. The state estimator is configured to perform calculations based on the observation model using a first trained neural network model or a first lookup table, and the first trained neural network model or the first lookup table is configured to output an estimate representing the potential of the plating solution near the outer edge when a state variable representing the current density at the outer edge is input.

[0008] A plating apparatus according to a second aspect of the present invention comprises a plating tank for containing a plating solution, a substrate holder for holding a substrate, an anode arranged in the plating tank so as to face the substrate held by the substrate holder, a sensor configured to measure the potential of the plating solution near the outer edge of the substrate held by the substrate holder, a state estimator configured to calculate a state estimate representing the current density at the outer edge of the substrate from the measured potential, and a current density calculation unit configured to calculate the distribution of current density in an inner region of the substrate that is located inside the outer edge from the state estimate calculated by the state estimator using a trained neural network model or a lookup table.

[0009] A third aspect of the present invention provides a method for estimating a state within a plating apparatus comprising: a plating tank for containing a plating solution; a substrate holder for holding a substrate; an anode disposed in the plating tank facing the substrate held by the substrate holder; and a sensor configured to measure the potential of the plating solution near the outer edge of the substrate held by the substrate holder, the method comprising the steps of: receiving data of the measured potential from the sensor; and calculating, from the measured potential, a state estimate representing the current density at the outer edge of the substrate based on an observation model and a state transition model. The step of calculating the state estimate includes a step of performing an operation based on the observation model using a first trained neural network model or a first lookup table, and the first trained neural network model or the first lookup table is configured to output an estimate representing the potential of the plating solution near the outer edge when a state variable representing the current density at the outer edge is input.

[0010] A fourth aspect of the present invention provides a method for estimating a state within a plating apparatus comprising a plating tank for containing a plating solution, a substrate holder for holding a substrate, an anode disposed in the plating tank facing the substrate held by the substrate holder, and a sensor configured to measure the potential of the plating solution near the outer edge of the substrate held by the substrate holder, the method comprising the steps of: receiving data of the measured potential from the sensor; calculating, from the measured potential, a state estimate representing the current density at the outer edge of the substrate; and calculating, from the calculated state estimate, a distribution of current density in an inner region of the substrate that is located inside the outer edge, using a trained neural network model or a lookup table.

[0011] A computer program according to a fifth aspect of the present invention comprises a plurality of instructions which, when executed by a processor, cause the processor to carry out a method according to the fourth or fifth aspect. [Brief explanation of the drawings]

[0012] [Figure 1] 1 is a perspective view showing the overall configuration of a plating apparatus according to a first embodiment of the present invention. [Figure 2] 1 is a plan view of a plating apparatus according to a first embodiment as viewed from above. [Figure 3] FIG. 2 is a schematic diagram illustrating an example of a hardware configuration that realizes a control module according to the first embodiment. [Figure 4] FIG. 1 is a cross-sectional view schematically showing the configuration of a plating module in a first embodiment. [Figure 5] FIG. 2 is a schematic plan view of a substrate. [Figure 6] FIG. 2 is an enlarged view of the area surrounding the conduit in the plating module of the first embodiment. [Figure 7] 3 is a schematic diagram of the shield and the substrate of the first embodiment viewed from below. FIG. [Figure 8] FIG. 2 is a functional block diagram showing a schematic configuration of a control module in the first embodiment. [Figure 9] FIG. 10 is a diagram for explaining current density at a position on the outer edge of a substrate. [Figure 10] FIG. 2 is a diagram illustrating a schematic configuration of a first neural network model according to the first embodiment. [Figure 11] FIG. 2 is a diagram illustrating a schematic configuration of a second neural network model according to the first embodiment. [Figure 12] 4 is a flowchart illustrating an example of a processing procedure for calculating a film thickness distribution of a plating film according to the first embodiment. [Figure 13] FIG. 10 is a functional block diagram showing a schematic configuration of a control module according to a second embodiment of the present invention. [Figure 14] FIG. 10 is a diagram illustrating a schematic configuration of a first lookup table according to a second embodiment. [Figure 15] FIG. 10 is a diagram illustrating a schematic configuration of a second lookup table according to the second embodiment. [Figure 16]10 is a flowchart illustrating an example of a processing procedure for calculating a film thickness distribution of a plating film according to a second embodiment. [Figure 17] FIG. 3 is a cross-sectional view schematically showing the configuration of a plating module according to a modification of the first or second embodiment. [Figure 18] FIG. 10 is a cross-sectional view schematically showing the configuration of a plating module in a third embodiment of the present invention. DETAILED DESCRIPTION OF THE INVENTION

[0013] Various embodiments of the present invention will be described in detail below with reference to the drawings. Components with the same reference numerals throughout the drawings have the same configurations and functions. The X-axis, Y-axis, and Z-axis shown in the drawings are perpendicular to one another.

[0014] First Embodiment FIG. 1 is a perspective view showing the overall configuration of a plating apparatus 1000 according to a first embodiment. FIG. 2 is a plan view of the plating apparatus 1000 according to this embodiment as viewed from above. For ease of explanation, FIG. 2 does not show the upper part of the housing of the plating apparatus 1000 so that the internal structure of the plating apparatus 1000 can be seen through. As shown in FIGS. 1 and 2, the plating apparatus 1000 includes a load port 100, a transfer robot 110, an aligner 120, a pre-wet module 200, a pre-soak module 300, a plating module 400, a cleaning module 500, a spin rinse dryer 600, a transfer device 700, and a control module 800.

[0015] The load port 100 is a module for loading substrates stored in cassettes such as a FOUP (Front-Opening Unified Pod) (not shown) into the plating apparatus 1000, and for unloading substrates from the plating apparatus 1000 to the cassette. In this embodiment, four load ports 100 are arranged side by side in the horizontal direction (X-axis direction), but the number and arrangement of the load ports 100 are not limited to this and may be arbitrary. The transfer robot 110 is a robot for transporting substrates, and has the function of transferring substrates between the load port 100, the aligner 120, and the transfer device 700. The transfer robot 110 and the transfer device 700 are used for transferring substrates between the transfer robot 110 and the transfer device 700. When transferring the substrate between the two, the substrate can be transferred via a temporary stage (not shown).

[0016] The aligner 120 is a module for aligning the positions of the substrate's orientation flat, notch, and the like in a predetermined direction. In this embodiment, two aligners 120 are arranged side by side in the horizontal direction (Y-axis direction), but the number and arrangement of the aligners 120 are not limited to this and may be arbitrary. The prewet module 200 is configured to wet the surface of the substrate to be plated with a treatment liquid such as pure water or degassed water before plating, thereby replacing air inside a pattern formed on the surface of the substrate with the treatment liquid. The prewet module 200 can perform a prewet process by replacing the treatment liquid inside the pattern with a plating liquid (electrolyte solution) during plating, thereby making it easier to supply the plating liquid inside the pattern. In this embodiment, two prewet modules 200 are arranged side by side in the vertical direction (Z-axis direction), but the number and arrangement of the prewet modules 200 are not limited to this and may be arbitrary.

[0017] Presoak module 300 is configured to perform a presoak process in which, for example, a highly electrically resistant oxide film present on the surface of a seed layer or the like formed on the surface to be plated of a substrate before plating is etched away with a treatment liquid such as sulfuric acid or hydrochloric acid to clean or activate the surface of the substrate to be plated. In this embodiment, two presoak modules 300 are arranged side by side in the vertical direction (Z-axis direction), but the number and arrangement of presoak modules 300 are not limited to this and may be arbitrary.

[0018] The plating modules 400 are configured to perform plating processing on substrates. In this embodiment, a total of 24 plating modules 400 are arranged. Specifically, on one side of the plating apparatus 1000, 12 plating modules 400 are arranged in a matrix of three rows in the vertical direction (Z-axis direction) and four columns in the horizontal direction (Y-axis direction). On the other side of the plating apparatus 1000, 12 plating modules 400 are arranged in a matrix of three rows in the vertical direction (Z-axis direction) and four columns in the horizontal direction (Y-axis direction). However, the number and arrangement of the plating modules 400 are not limited to those shown in the figure and may be arbitrary. Specific configuration examples of the plating modules 400 will be described later.

[0019] The cleaning module 500 is configured to perform a cleaning process on the substrate to remove unnecessary residues, such as plating solution, remaining on the substrate after plating. In this embodiment, two cleaning modules 500 are arranged side by side in the vertical direction (Z-axis direction), but the number and arrangement of the cleaning modules 500 are not limited to this and may be arbitrary. The spin rinse dryer 600 is a module for drying the substrate after cleaning by rotating it at high speed. In this embodiment, two spin rinse modules 600 are arranged side by side in the vertical direction (Z-axis direction), but the number and arrangement of the spin rinse dryers 600 are not limited to this and may be arbitrary. The transfer device 700 is a device for transferring substrates between multiple modules within the plating apparatus 1000.

[0020] Control module 800 is configured to control the operation and status of multiple modules in plating apparatus 1000. For example, control module 800 may be configured as a computer that can be operated by an operator, and preferably includes user interface devices such as a pointing device and a key input device so that the operator can input information.

[0021] Such a control module 800 may be realized by a single computer including one or more processors, or may be realized by multiple computers connected to each other via a communication path. The control module 800 may be realized by one or more processors including one or more processing units that execute processing based on software or firmware code (multiple instructions) read from a memory (computer-readable recording medium). For example, the processing unit may be a central processing unit (CPU), a graphics processing unit (GPU), or a neural network processing unit (NPU). GPUs and NPUs are processing units designed to have a structure suitable for calculations (e.g., tensor calculations) based on an artificial neural network (ANN), i.e., a neural network model (NN model). Alternatively, all or some of the components of the control module 800 may be realized by one or more processors including a semiconductor integrated circuit such as an FPGA (field-programmable gate array). Alternatively, all or some of the components of the control module 800 may be realized by one or more processors including a combination of a semiconductor integrated circuit such as an FPGA and a processing unit such as a CPU or GPU.

[0022] FIG. 3 is a schematic diagram of an information processing device (computer) 900, which is an example of a hardware configuration for implementing the control module 800. The information processing device 900 includes a processor 901, a random access memory (RAM) 902, a nonvolatile memory 903, a large-capacity storage 904, an input / output interface circuit 905, and a signal path 906. The signal path 906 is a bus for interconnecting the processor 901, the RAM 902, the nonvolatile memory 903, the storage 904, and the input / output interface circuit 905. The RAM 902 is a data storage area used when the processor 901 performs digital signal processing. If the processor 901 incorporates an arithmetic unit such as a CPU or a GPU, the nonvolatile memory 903 may have a data storage area for storing software code executed by the processor 901. For example, the input / output interface circuit 905 can be connected to a user interface device (not shown).

[0023] Next, an example of a series of plating processes using the plating apparatus 1000 will be described.

[0024] First, a substrate stored in a cassette is loaded into the load port 100. Next, the transfer robot 110 removes the substrate from the cassette in the load port 100 and transfers the substrate to the aligner 120. The aligner 120 aligns the positions of the orientation flat, notch, etc. of the substrate to a predetermined direction. The transfer robot 110 delivers the substrate, whose direction has been aligned by the aligner 120, to the transfer device 700.

[0025] The transfer device 700 transfers the substrate received from the transfer robot 110 to the prewet module 200. The prewet module 200 performs a prewet process on the substrate. The transfer device 700 transfers the substrate that has been subjected to the prewet process to the presoak module 300. The presoak module 300 performs a presoak process on the substrate. The transfer device 700 transfers the substrate that has been subjected to the presoak process to the plating module 400. The plating module 400 performs a plating process on the substrate.

[0026] The transfer device 700 transfers the plated substrate to the cleaning module 500. The cleaning module 500 performs a cleaning process on the substrate. The transfer device 700 transfers the cleaned substrate to the spin rinse dryer 600. The spin rinse dryer 600 dries the substrate. The transfer device 700 delivers the dried substrate to the transfer robot 110. The transfer robot 110 transfers the substrate received from the transfer device 700 to a cassette on the load port 100. Finally, the cassette containing the substrate is removed from the load port 100.

[0027] It should be noted that the configuration of the plating apparatus 1000 described with reference to FIGS. 1 and 2 is merely an example, and the configuration of the plating apparatus 1000 is not limited to the above-described configuration.

[0028] Next, an example of the configuration of the plating module 400 will be described.

[0029] Since the 24 plating modules 400 in this embodiment have the same configuration, only one plating module 400 will be described. FIG. 4 is a cross-sectional view that schematically shows the configuration of the plating module 400 of the first embodiment. As shown in FIG. 4, the plating module 400 includes a plating tank 410 for containing a plating solution Ps. The plating tank 410 includes a cylindrical inner tank 412 with an open top, and an outer tank (not shown) that is provided around the inner tank 412 so as to collect plating solution that overflows from the upper edge of the inner tank 412.

[0030] The plating module 400 includes a substrate holder 440 for holding a substrate Wf having a plating surface Wf-a. As shown in FIG. 4 , the substrate holder 440 is configured to grip the outer edge of the substrate Wf with the plating surface Wf-a facing the opening of the plating tank 410. The plating module 400 includes a lifting mechanism 442 for raising and lowering the substrate holder 440 in the Z-axis direction. In one embodiment, the plating module 400 also includes a rotation mechanism 448 for rotating the substrate holder 440 about a vertical axis. The lifting mechanism 442 and the rotation mechanism 448 can be realized by known mechanisms such as motors. During plating, the lifting mechanism 442 lowers the substrate holder 440 to immerse the plating surface Wf-a of the substrate Wf in the plating solution Ps.

[0031] The substrate holder 440 has one or more power supply contacts for supplying power to the substrate Wf from a power supply (not shown) while the surface to be plated Wf-a is immersed in the plating solution Ps. FIG. 5 is a schematic plan view of the substrate Wf. The outer edge 62 of the substrate Wf is also the portion where the substrate Wf is gripped by the substrate holder 440. In the example of FIG. 5, the outer edge 62 of the substrate Wf has six electrical contacts 441 spaced equally along the circumferential direction of the substrate Wf, but the number of electrical contacts 441 is not limited to six. The electrical contacts 441 are connected to the negative terminal of the power supply via electrical wiring (not shown) built into the substrate holder 440, and a plating current can be passed through the electrical contacts 441 to the substrate Wf. As will be described later, the control module 800 can calculate the distribution of the current density of the plating current in an inner region 64 of the substrate Wf that is located inside the outer edge 62, based on a state estimate representing the current density near the outer edge 62 of the substrate Wf.

[0032] Referring to FIG. 4, the plating module 400 includes an anode 430 provided on the bottom surface of an inner tank 412. The anode 430 is disposed within the inner tank 412 so as to face the plating surface Wf-a of a substrate Wf held by a substrate holder 440. The plating module 400 also includes a membrane 420 that separates the interior region of the inner tank 412 into an upper region and a lower region. That is, the interior region of the inner tank 412 is divided by the membrane 420 into a cathode region 422 that is relatively close to the plating surface Wf-a, and an anode region 424 that is relatively close to the anode 430. The cathode region 422 and the anode region 424 are each filled with a plating solution Ps. Note that, although an example in which the membrane 420 is provided has been shown in this embodiment, a configuration in which the membrane 420 is not provided is also possible.

[0033] In the anode region 424, an anode mask 426 is disposed for adjusting the electrolysis conditions between the anode 430 and the substrate Wf. The anode mask 426 is, for example, a substantially plate-shaped member made of a dielectric material, and is provided in front of (above) the anode 430. The anode mask 426 has an opening through which a current flows between the anode 430 and the substrate Wf. In this embodiment, the anode mask 426 is configured so that the size of the opening is changeable. The opening dimensions can be adjusted by the control module 800. Here, the opening dimension refers to the diameter if the opening is circular, and refers to the length of one side or the longest opening width if the opening is polygonal. A known mechanism can be used to change the opening dimensions of the anode mask 426. While the present embodiment illustrates an example in which the anode mask 426 is provided, a configuration in which the anode mask 426 is not provided is also possible. In the example of FIG. 4, the membrane 420 and the anode mask 426 are spatially separated from each other. Alternatively, the membrane 420 may be provided in the opening of the anode mask 426.

[0034] A resistor 450 facing the membrane 420 is disposed in the cathode region 422. The resistor 450 is a component for achieving uniformity in the plating process on the plating surface Wf-a of the substrate Wf. In this embodiment, the resistor 450 is configured to be movable in the vertical direction (Z-axis direction) within the plating tank 410 by a drive mechanism 452, and the position of the resistor 450 can be adjusted by the control module 800. However, there may also be a configuration in which the resistor 450 is not disposed in the plating module 400. The specific material of the resistor 450 is not particularly limited, but one example of a material that can be used for the resistor 450 is a porous resin such as polyether ether ketone.

[0035] A paddle 456 for stirring the plating solution Ps is provided in a region of the cathode region 422 close to the surface of the substrate Wf. The paddle 456 can be made of, for example, titanium (Ti) or resin. The paddle 456 reciprocates in a direction parallel to the plating surface Wf-a of the substrate Wf, thereby stirring the plating solution so that sufficient metal ions are uniformly supplied to the plating surface Wf-a during plating of the substrate W. Alternatively, the paddle 456 may be configured to move in a direction perpendicular to the plating surface Wf-a of the substrate Wf. Note that the plating module 400 may also be configured without the paddle 456.

[0036] Furthermore, a conduit 462 is disposed in the cathode region 422. The conduit 462 is a hollow tube and can be formed of, for example, a resin such as PP (polypropylene) or PVC (polyvinyl chloride). When a resistor 450 is provided in the cathode region 422, the conduit 462 is disposed between the substrate Wf and the resistor 450. When a paddle 456 is provided, the conduit 462 is disposed so as not to interfere with the paddle 456. For example, the conduit 462 is preferably disposed at the same height as the paddle 456 (the same position in the Z-axis direction) and on the outer periphery of the paddle 456 (a position on the outer side in the horizontal direction in FIG. 4).

[0037] FIG. 6 is an enlarged view of the peripheral area of ​​the conduit 462 in the plating module 400 of the first embodiment. FIG. 6 shows a state in which the substrate holder 440 has descended into the plating tank 410 and is immersed in the plating solution Ps. As shown in FIGS. 4 and 6, the conduit 462 has an open end 464 located in the area between the substrate Wf and the anode 430. This open end 464 is located between the substrate Wf and the anode 430 in a direction perpendicular to the plating surface Wf-a of the substrate Wf (the Z-axis direction), and is positioned so as to overlap with the substrate Wf when viewed from that perpendicular direction. The open end 464 is preferably located near the plating surface Wf-a and is preferably configured to face the plating surface Wf-a. For example, the distance between the open end 464 and the plating surface Wf-a is several hundred micrometers, several millimeters, or several tens of millimeters. 4 and 6, the opening end 464 is open in the direction facing the plating surface Wf-a (Z-axis direction), but is not limited to this. The opening end 464 may be open in a direction perpendicular to the direction connecting the substrate Wf and the anode 430 (negative direction of the Y-axis), or may be open in a direction inclined with respect to the normal direction of the plating surface Wf-a of the substrate Wf.

[0038] In this embodiment, the conduit 462 extends to a region away from the region between the substrate Wf and the anode 430 and extends to the outside of the plating tank 410. Hereinafter, as shown in FIGS. 4 and 6, the portion of the conduit 462 located in the region between the substrate Wf and the anode 430 will be referred to as the "first portion 462a," and the portion of the conduit 462 located in a region away from the region between the substrate Wf and the anode 430 will be referred to as the "second portion 462b." The conduit 462 preferably extends in a direction (Y-axis direction) perpendicular to the direction (Z-axis direction) connecting the substrate Wf and the anode 430. However, the present invention is not limited to this example, and the conduit 462 may extend in any direction.

[0039] The interior of conduit 462 is filled with the plating solution, similar to cathode region 422. Conduit 462 may be provided with a filling mechanism 468 for filling conduit 462 with the plating solution. Various known mechanisms can be used as filling mechanism 468, and examples of such mechanisms include an air vent valve or a mechanism for supplying the plating solution. As an example, filling mechanism 468 is provided in second portion 462b of conduit 462.

[0040] 4 and 6 show a single conduit 462 for ease of viewing, but instead, multiple conduits may be provided in the plating tank 410. When multiple conduits are provided, the open ends of the respective conduits may be positioned at different distances from the center of the substrate Wf. Furthermore, when multiple conduits are provided, it is preferable that the open ends of the respective conduits be positioned at equal distances from the plating surface Wf-a of the substrate Wf.

[0041] A potential sensor 470 is provided in the second portion 462b of the conduit 462. While the potential sensor 470 is disposed outside the plating tank 410 in the examples of FIGS. 4 and 6, it may alternatively be disposed inside the plating tank 410. The potential sensor 470 detects or measures the potential of the plating solution Ps filled in the conduit 462. Here, the plating solution Ps in the conduit 462 has substantially the same potential as the plating solution near the open end 464, and the potential detected by the potential sensor 470 is generally equal to the potential of the plating solution Ps near the open end 462a. Therefore, the vicinity of the open end 464 can be used as a pseudo potential detection position for the potential sensor 470, and the potential near the plating surface Wf-a can be measured by the potential sensor 470 provided in the second portion 462b of the conduit 462. The potential sensor 470 supplies a measurement signal representing the measured potential to the control module 800.

[0042] In one embodiment, a reference potential sensor (not shown) may be provided in a location in plating tank 410 where potential changes are relatively small, and the difference between the potential detected by the reference potential sensor and the potential detected by potential sensor 470 is preferably obtained. The potential changes measured by potential sensor 470 are very small and therefore susceptible to noise. To reduce noise, it is preferable to provide an independent electrode in the plating solution and connect the electrode directly to ground.

[0043] The control module 800 has a function of estimating the thickness distribution of the plating film formed on the substrate Wf based on a measurement signal indicating the potential measured by the potential sensor 470. Furthermore, the control module 800 may detect the end point of the plating process or predict the time until the end point of the plating process based on the measurement signal. As an example, the control module 800 may terminate the plating process when the thickness of the plating film reaches a desired thickness based on the measurement signal. Furthermore, as an example, the control module 800 may calculate the rate of increase in thickness of the plating film based on the measurement signal and predict the time until the plating film reaches the desired thickness, i.e., the time until the end point of the plating process.

[0044] 4, in one embodiment, the cathode region 422 is provided with a shield 480 for partially shielding the amount of current flowing from the anode 430 to the substrate Wf. , which is a substantially plate-shaped member made of, for example, a dielectric material. FIG. 7 is a schematic diagram of the shield 480 and the substrate Wf of this embodiment when viewed from below (the negative side of the Z axis). Note that FIG. 7 does not show the substrate holder 440 that holds the substrate Wf. The shield 480 is configured to be movable to any position between a shielding position (position indicated by a dashed line in FIG. 7) interposed between the plating surface Wf-a of the substrate Wf and the anode 430, and a retracted position (position indicated by a solid line in FIG. 7) retracted from between the plating surface Wf-a and the anode 430. In other words, the shield 480 is configured to be movable between a shielding position directly below the plating surface Wf-a and a retracted position away from directly below the plating surface Wf-a. The position of the shield 480 is controlled by the control module 800 using a drive mechanism (not shown). The movement of the shield 480 can be achieved by a known mechanism such as a motor or a solenoid. In the example of Fig. 7, the shield 480, when at the shielding position, shields a portion of the outer peripheral region of the plating surface Wf-a of the substrate Wf in the circumferential direction. Also, in the example of Fig. 7, the shield 480 is formed in a tapered shape that becomes thinner toward the center of the substrate Wf. However, without being limited to this example, the shield 480 can be formed in any shape predetermined by experiment or the like.

[0045] Next, the plating process in the plating module 400 of this embodiment will be described in more detail.

[0046] The substrate Wf is exposed to the plating solution by immersing it in the plating solution in the cathode region 422 using the lifting mechanism 442. In this state, the plating module 400 can apply a voltage between the anode 430 and the substrate Wf to perform plating on the plating surface Wf-a of the substrate Wf. In one embodiment, the plating process is performed while rotating the substrate holder 440 using the rotation mechanism 448. A conductive film (plating film) is deposited on the plating surface Wf-a of the substrate Wf-a through the plating process. In this embodiment, during the plating process, the potential sensor 470 detects or measures the potential of the plating solution near the outer edge of the substrate Wf (for example, at a predetermined detection point Sp shown in FIG. 7) in real time. The control module 800 can then measure the thickness of the plating film in real time based on a measurement signal representing the potential measured by the potential sensor 470. This makes it possible to measure and monitor in real time the film thickness distribution of the plating film formed on the plating surface Wf-a of the substrate Wf during plating processing.

[0047] Furthermore, by detecting the potential using the potential sensor 470 in accordance with the rotation of the substrate holder 440 (rotation of the substrate Wf), the detection position by the potential sensor 470 can be changed, and the film thickness can also be measured at multiple points in the circumferential direction of the substrate Wf or over the entire circumferential direction.

[0048] The plating module 400 may change the rotation speed of the substrate Wf by the rotation mechanism 448 during the plating process. For example, the plating module 400 may slowly rotate the substrate Wf to allow the film thickness estimation function of the control module 800 to estimate the plating film thickness. For example, the plating module 400 may rotate the substrate Wf at a first rotation speed Rs1 during the plating process and then rotate the substrate Wf at a second rotation speed Rs2 slower than the first rotation speed Rs1 at predetermined intervals (e.g., every few seconds) while the substrate Wf rotates one or several times. This allows the plating film thickness of the substrate Wf to be estimated accurately, especially when the sampling period of the potential sensor 470 is short compared to the rotation speed of the substrate Wf. Here, the second rotation speed Rs2 may be one-tenth the first rotation speed Rs1.

[0049] The data of the change in the thickness of the plating film measured by the film thickness measurement function of the control module 800 is recorded. In the next and subsequent plating processes, such data can be referenced to adjust the plating conditions, including at least one of the plating current value, plating time, opening size of the anode mask 426, and position of the shield 480. The adjustment of the plating conditions is performed by This may be performed by a user of the plating apparatus 1000 or by a function of the control module 800. As an example, the adjustment of the plating conditions by the control module 800 may be performed based on a conditional formula or a program that is predetermined by an experiment or the like.

[0050] The adjustment of the plating conditions may be performed when plating another substrate Wf, or the adjustment of the plating conditions for the current plating process may be performed in real time. For example, the control module 800 may change the plating conditions by adjusting the position of the shield 480.

[0051] The control module 800 may also adjust the plating conditions in real time by driving the lifting mechanism 442 or the drive mechanism 452 to adjust the distance between the substrate Wf and the resistor 450. The distance between the substrate Wf and the resistor 450 may have a relatively large effect on the amount of plating formed near the outer periphery of the substrate Wf, while having relatively little effect on the amount of plating formed near the center of the substrate Wf. For this reason, as an example, the control module 800 may perform control such that the distance between the substrate Wf and the resistor 450 is decreased when the thickness of the plating film near the outer periphery of the substrate Wf is greater than the target, and the distance between the substrate Wf and the resistor 450 is increased when the thickness of the plating film near the outer periphery is smaller than the target. The control module 800 may also perform control such that the longer the time the shield 480 is in the shielding position, the greater the distance between the substrate Wf and the resistor 450 is increased, and the shorter the time the shield 480 is in the shielding position, the shorter the distance between the substrate Wf and the resistor 450 is decreased. In this way, the amount of plating formed near the outer periphery of the substrate Wf can be adjusted, and the uniformity of the plating film formed over the entire substrate Wf can be improved.

[0052] Furthermore, the control module 800 may adjust the plating conditions in real time by adjusting the opening size of the anode mask 426. As an example, the control module 800 may execute control such that the opening size of the anode mask 426 is reduced when the thickness of the plating film near the outer periphery of the substrate Wf is larger than the target, and the opening size of the anode mask 426 is increased when the thickness of the plating film near the outer periphery is smaller than the target.

[0053] Next, the configuration of the control module 800 in this embodiment will be described in detail below.

[0054] Fig. 8 is a functional block diagram showing a schematic configuration of a control module 800 in the first embodiment. Fig. 8 shows only functional blocks related to measuring the thickness distribution of a plating film among the various functions of the control module 800. As shown in Fig. 8, the control module 800 includes a parameter data storage unit 802, a parameter designation unit 803, a state estimator 804, a current density calculation unit 812, a film thickness calculation unit 820, and an end point determination unit 822.

[0055] As described above, the potential sensor 470 measures the potential of the plating solution Ps near the outer edge of the substrate Wf held by the substrate holder 440 during plating processing, and outputs a measurement signal representing the measured potential to the state estimator 804. The state estimator 804 receives the potential measurement amount represented by the measurement signal and estimates the current density j at the outer edge of the substrate Wf based on a state space model expressed by an observation model and a state transition model. con Hereinafter, for convenience of explanation, the current density at the outer edge of the substrate Wf may be referred to as the "outer edge current density." As shown in FIG. 8, the state estimator 804 includes a state transition processing unit 806 that performs calculations based on a state transition model, a neural network model (NN model) 810, and an observation processing unit 808 that performs calculations based on an observation model using the NN model 810. The NN model 810 is a trained neural network model (first trained neural network model), and may be realized by a computer program or by a hardware configuration such as a semiconductor integrated circuit.

[0056] The state transition processing unit 806 and the observation processing unit 808 cooperate with each other to execute state estimation processing using a Kalman filter based on the input potential measurement amount, thereby estimating the outer edge current density j con The potential measurement amount at each time may be a scalar amount representing the potential at one point on the outer edge of the substrate Wf, or may be a vector amount representing the potential at multiple points on the outer edge of the substrate Wf.

[0057] The position on the outer edge of the substrate Wf is expressed by a pair (θ, ψ) of a rotation angle θ relative to the electrical contact of the substrate Wf and a rotation angle ψ of the substrate holder 440. Figure 9 shows the current density j at the position (θ, ψ) on the outer edge of the substrate Wf. con A diagram for explaining (θ, ψ) of the outer edge current density j con (θ, ψ) is expressed by the following equation (1) using Fourier series expansion.

[0058]

number

[0059] In this formula, a i ,b i (i is an integer in the range 0 to n; n is a positive integer) are Fourier coefficients, and R i (ψ) is the rotation matrix. The set of Fourier coefficients {a i ,b i}, the outer edge current density j con (θ,ψ) can be expressed as a set {a i ,b i} is a state variable, which can be expressed in the form of a state vector, for example.

[0060] The state transition model is based on the outer edge current density j con For example, a state transition model that describes the relationship between a state variable at time t and a state variable at time t-1 is expressed as a state transition function F i can be expressed in the form of the following equation of state (2) using

[0061]

number

[0062] In this formula, a i,t ,b i,t is the Fourier coefficient at time t, a i,t-1 ,b i,t-1 is the Fourier coefficient at time t-1, v t-1 is noise.

[0063] State transition function F i may be expressed as a linear operator such as a matrix. The state transition function F i is expressed by the following equations (3) and (4), for example.

[0064]

number

[0065] In these equations, ω is the angular velocity of rotation of the substrate Wf, and Δt is the time step (i.e., the time difference between time t and time t-1). Note that the state equations are not limited to those expressed by equations (2) to (4). Any state equation can be used as long as it is applicable to state estimation processing using a Kalman filter.

[0066] In the state estimation process using the Kalman filter, the state transition processing unit 806 is configured to calculate prior information corresponding to a prior distribution in Bayesian estimation based on a predetermined update formula based on the state transition model. For example, the prior information includes a prior state estimate and a prior error covariance matrix.

[0067] On the other hand, the observation model is based on the potential measurement (i.e., the sensor observation) and the outer edge current density j con For example, the observation model is a model that describes the relationship between the measured potential φ at time t and the state variables that represent the t and the outer edge current density j at time t con The state variable x t The observation equation can be expressed as an observation equation that describes the relationship between the observation function G at time t. t Using this, it can be expressed in the form of the following equation (5).

[0068]

number

[0069] In this equation, the observation function G t is the outer edge current density j con is the response of the potential sensor 470 to t is noise.

[0070] In the state estimation process using the Kalman filter, the observation processing unit 808 is configured to calculate posterior information corresponding to the posterior distribution in Bayesian estimation based on a predetermined update formula based on the observation model, the potential measurement, and prior information each time a potential measurement is given. For example, the posterior information includes a posterior state estimate and a posterior error covariance matrix. The posterior state estimate is an estimate of the state at the current time t that is updated using the actual potential measurement and prior information. The observation processing unit 808 applies the calculated posterior state estimate to the outer edge current density j con can be output to the current density calculation unit 812 as a state estimation quantity representing

[0071] The NN model 810 uses the outer edge current density j con The state variables that represent the plating conditions and the parameters that determine the plating conditions When parameter data μ is input, the system can be trained to output an estimated value (potential estimated value) representing the potential of the plating solution Ps near the outer edge of the substrate Wf. The parameter data μ that determines the plating conditions will be described later.

[0072] The observation processing unit 808 calculates the observation function G t When performing the calculation based on t Specifically, the NN model 810 can be used as an observation function G t8, the observation processing unit 808 calls the NN model 810 and inputs the variable x to the NN model 810. The NN model 810 outputs the inference result Gn(x, μ) according to the input variable x and parameter data μ.

[0073] The parameter data storage unit 802 stores plating process parameters related to at least one component of the plating module 400 (e.g., the plating solution Ps, the plating tank 410, the substrate holder 440, and the anode 430). The parameters are data that define the conditions of the plating film formation process (i.e., the plating conditions). For example, the parameters include, but are not limited to, the position and orientation of the substrate holder 440, the rotation speed of the substrate Wf by the rotation mechanism 448, the type of plating solution, the electrical conductivity of the plating solution, the polarization gradient of the plating solution, the plating current value, the plating time, the opening dimensions of the anode mask 426, the position of the shield 480, and the distance between the substrate Wf and the resistor 450.

[0074] In response to a command from the parameter designation unit 803, the parameter data storage unit 802 selects a parameter designated by the command from among the parameters stored in the parameter data storage unit 802, and inputs parameter data μ indicating the numerical value of the selected parameter to the NN model 810. The parameter designation unit 803 has a function of providing a command to the parameter data storage unit 802 in accordance with information input by an operator through a user interface device. As described above, the control module 800 also has a control function of adjusting plating conditions in accordance with the measured or estimated thickness distribution of the plating film during the plating process. The parameter designation unit 803 can provide a command to the parameter data storage unit 802 to designate parameters that define the plating conditions adjusted by this control function.

[0075] FIG. 10 is a diagram illustrating a schematic configuration of an NN model 810 of this embodiment. As shown in FIG. 10, the NN model 810 is a hierarchical artificial neural network including an input layer 810i, an intermediate layer (hidden layer) 810h, and an output layer 810t, and is configured as a deep learning model. The input layer 810i is configured to receive parameter data μ and state variables x provided from the parameter data storage unit 802. The intermediate layer 810h is configured to connect the input layer 810i and the output layer 810t and to perform an inference operation based on the input state variables x and parameter data μ. The output layer 810t is configured to output an inference result Gn(x, μ) that is the result of the inference operation. The NN model 810 may be configured to include an existing forward propagation type neural network, or may be configured to include a recurrent neural network such as a convolutional neural network (CNN) or a long short term memory (LSTM), or a transformer with an attention mechanism.

[0076] The NN model 810 is trained by supervised learning, unsupervised learning, or semi-supervised learning according to a known machine learning algorithm. The machine learning algorithm includes a back-propagation learning algorithm consisting of back propagation and gradient descent. A gradient descent algorithm may be used, such as, but not limited to, stochastic gradient descent (SGD), momentum stochastic gradient descent (SGD), or adaptive moment estimation (Adam).

[0077] Next, referring to FIG. 8, the current density calculation unit 812 calculates the outer edge current density j calculated by the state estimator 804. con The current density calculation unit 812 receives a state estimation value representing the current density j in the inner region 64 (FIG. 5) of the substrate Wf, which is located inside the outer edge 62, from the state estimation value. wafer Hereinafter, for convenience of explanation, the current density in the inner region 64 may be referred to as the "plating current density." Specifically, the current density calculation unit 812 includes an estimation unit 814 and a neural network model (NN model) 816 as a second trained neural network model. The estimation unit 814 calculates the plating current density j from the state estimation quantity using the NN model 816. wafer The NN model 816 may be realized by a computer program, or may be realized by a hardware configuration such as a semiconductor integrated circuit.

[0078] The NN model 816 uses the outer edge current density j con When the variable y representing the plating current density j and the parameter data μ that defines the plating conditions are input, wafer The estimation unit 814 is configured to output an inference result En(y, μ) representing the estimated plating current density j. As shown in FIG. 8, the estimation unit 814 calls the NN model 816 and inputs the variable y to the NN model 814. The NN model 816 outputs the inference result En(y, μ) in accordance with the input variable y and parameter data μ. The estimation unit 814 converts the inference result En(y, μ) into the estimated plating current density j. wafer can be output to the film thickness calculation unit 820 as

[0079] FIG. 11 is a diagram illustrating a schematic configuration of the NN model 816 of this embodiment. As shown in FIG. 11, the NN model 816 is a hierarchical artificial neural network including an input layer 816i, an intermediate layer (hidden layer) 816h, and an output layer 816t, and is configured as a deep learning model. The input layer 816i is configured to receive parameter data μ and a state variable y provided from the parameter data storage unit 802. The intermediate layer 816h is configured to connect the input layer 816i and the output layer 816t and to perform an inference calculation based on the input state variable y and parameter data μ. The output layer 816t is configured to output an inference result En(y, μ), which is the result of the inference calculation. The NN model 816 may be configured to include an existing forward propagation neural network, but may also be configured to include a convolutional neural network (CNN), a recurrent neural network such as a LSTM, or a transformer with an attention mechanism.

[0080] The NN model 816 is trained by supervised learning, unsupervised learning, or semi-supervised learning according to a known machine learning algorithm. The machine learning algorithm may be a backpropagation learning algorithm consisting of backpropagation and gradient descent. For example, the gradient descent may be, but is not limited to, stochastic gradient descent (SGD), momentum SGD, or adaptive moment estimation (Adam).

[0081] Next, referring to FIG. 8, the film thickness calculation unit 820 calculates the plating current density j obtained from the current density calculation unit 812. wafer (k, t) where t is the current time and k is a number indicating the position of the inner region 64 on the substrate Wf. In one embodiment, the film thickness calculation unit 820 calculates the film formation rate v(k, t) of the plating film at the position k on the substrate Wf and the current time t using the following equations (6) and (7): ) and the film thickness distribution w(k,t) can be calculated.

[0082]

number

[0083] In these equations, M is the molecular weight of the plating deposited on the substrate Wf, ρ is the density of the plating deposited on the substrate Wf, z is the valence of the plating reaction, and F is the Faraday constant. The film thickness calculation unit 820 may calculate the film thickness w(k,T) at the end of the plating process (time q=T) instead of the current film thickness distribution w(k,t) by predicting the future plating current density and film formation rate using the above state equation.

[0084] The end point determination unit 822 determines the end point of the plating process on the substrate Wf based on the film thickness distribution w(k, t) of the plating film obtained by the film thickness calculation unit 820. For example, the end point determination unit 822 may terminate the plating process when the estimated current film thickness distribution w(k, t) becomes a desired thickness distribution, or may predict the time until the end point of the plating process based on the estimated current film thickness w(k, t) and the predicted future film formation rate v(k, s) (s = t, ..., T).

[0085] Next, a description will be given below of the processing procedure performed by the control module 800. Fig. 12 is a flowchart showing an example of the processing procedure for calculating the film thickness distribution of the plating film.

[0086] 12, first, the state estimator 804 initializes time t (step S10). Next, the state estimator 804 reads parameter data μ supplied from the parameter data storage unit 802 (step S11), and then obtains a potential measurement amount from the potential sensor 470 (step S12). Here, the order of steps S11 and S12 may be reversed.

[0087] Thereafter, the state estimator 804 executes state estimation processing using a Kalman filter based on the observation model and the state transition model from the potential measurement amount and the parameter μ, thereby estimating the current density j con At this time, the calculation based on the observation model is performed using the NN model 810.

[0088] Next, the current density calculation unit 812 calculates the current density (plating current density) j in the inner region of the substrate Wf from the state estimation quantity and the parameter data μ using the NN model 816. wafer Next, the film thickness calculation unit 820 calculates the distribution of the plating current density j obtained from the current density calculation unit 812 (step S14). wafer Based on this, the end point determination unit 822 calculates the film thickness distribution w(k,t) of the plating film formed on the substrate Wf (step S15). Then, as described above, based on the film thickness distribution w(k,t) of the plating film obtained by the film thickness calculation unit 820, the end point determination unit 822 determines whether the end point of the plating process on the substrate Wf has been detected (step S20). If it is determined that the end point of the plating process has been detected (YES in step S20), the control module 800 terminates the plating process. On the other hand, if the end point of the plating process has not been detected (NO in step S20), the control module 800 increments the time t (step S21) and repeats the processes from step S11 onwards.

[0089] As described above, according to the first embodiment, the state estimator 804 of the control module 800 receives the potential measured by the potential sensor 470 as an input, and calculates the current density j at the outer edge of the substrate Wf based on the observation model and the state transition model. conThe NN model 810 is configured to calculate a state estimate representing the current density at the outer edge of the substrate Wf, and calculations based on the observation model are performed using the NN model 810. The NN model 810 is trained to output an estimate representing the potential of the plating solution Ps near the outer edge when a state variable representing the current density at the outer edge of the substrate Wf is input. The NN model 810 can learn, through machine learning training data, time-series changes in the measured potential depending on changes in plating conditions during the plating process. When multiple plating processes are performed consecutively, changes in plating conditions may occur between one plating process and another (for example, plating conditions may change between the plating process for forming a plating film on a first substrate and the plating process for forming a plating film on a second substrate). The NN model 810 can also learn, through machine learning training data, time-series changes in the measured potential depending on changes in plating conditions between such plating processes. Therefore, even if changes in plating conditions occur, the current density j at the outer edge can be accurately calculated. con This allows the state estimation quantity representing the current density j on the plating surface Wf-a to be calculated with high accuracy. wafer The accuracy of estimating the thickness distribution w(k,t) of the plating film is improved, and the accuracy of estimating the thickness distribution w(k,t) of the plating film is also improved. Note that the NN model 810 can be trained to learn both changes in plating conditions due to parameter data μ and changes over time in plating conditions independent of parameter data μ.

[0090] Furthermore, the state estimator 804 performs state estimation processing using a Kalman filter based on the state transition model and the observation model, thereby estimating the current density j con Since the state estimator 804 of this embodiment can sequentially calculate a state estimate representing the thickness distribution w(k,t), a highly reliable thickness distribution w(k,t) can be obtained in real time. Conventionally, the thickness distribution of a plating film has been calculated by numerical analysis using a numerical simulation that requires a high computational load, but this method requires a large amount of computational resources for fast calculations. In contrast, the state estimator 804 of this embodiment can perform highly accurate thickness distribution calculations in real time using relatively few computational resources.

[0091] Furthermore, the current density calculation unit 812 of the control module 800 calculates the current density j con From the state estimator representing the plating current density j wafer The NN model 816 can calculate the outer edge current density j according to the change in plating conditions during the plating process through the training data for machine learning. con When multiple plating processes are performed consecutively, the plating conditions may change between one plating process and another (for example, the plating conditions may change between the plating process for depositing a plating film on a first substrate and the plating process for depositing a plating film on a second substrate). The NN model 816 learns the time-series changes in the outer edge current density j according to such changes in the plating conditions between plating processes through training data for machine learning. con Therefore, even if the plating conditions change, the current density calculation unit 812 can learn the time-series change of the current density j wafer can be estimated with high accuracy. This further improves the accuracy of estimating the film thickness distribution w(k,t) of the plating film. Note that the NN model 816 can be trained to learn both changes in plating conditions due to parameter data μ and changes over time in plating conditions independent of parameter data μ.

[0092] Second Embodiment Next, the control module in the second embodiment will be described in detail below.

[0093] 13 is a functional block diagram showing a schematic configuration of a control module 800T in the second embodiment. The second embodiment is substantially the same as the first embodiment, except that the control module 800T of this embodiment is used instead of the control module 800 of the first embodiment. .

[0094] 13 shows only the functional blocks related to measuring the thickness distribution of a plating film among the various functions of the control module 800T. As shown in FIG. 13, the control module 800T includes a parameter data storage unit 802, a parameter designation unit 803, a state estimator 804T, a current density calculation unit 812T, a film thickness calculation unit 820, and an end point determination unit 822. In the control module 800T, the functions of the parameter data storage unit 802, the parameter designation unit 803, the film thickness calculation unit 820, and the end point determination unit 822 are the same as those in the control module 800 of the first embodiment.

[0095] The state estimator 804T of this embodiment has the same function as the state estimator 804 of the first embodiment, except that a look-up table (LUT) 811 is used instead of the above-mentioned NN model 810. The state estimator 804T receives as input a potential measurement amount represented by a measurement signal obtained from the potential sensor 470, and derives a current density j at the outer edge of the substrate Wf based on a state space model represented by an observation model and a state transition model. con As shown in Fig. 13, the state estimator 804T includes a state transition processing unit 806 that performs calculations based on a state transition model, an LUT (first lookup table) 811, and an observation processing unit 808 that performs calculations based on an observation model using the LUT 811. In the state estimation process using the Kalman filter, the observation processing unit 808 of the state estimator 804T calculates a state estimate that represents the observation function G t When performing calculations based on t It can be used as.

[0096] The LUT 811 receives parameter data μ provided from the parameter data storage unit 802 as a first input to the LUT 811, and current density j at the outer edge of the substrate Wf as a second input to the LUT 811. con and an estimated quantity (potential estimated quantity) that represents the potential of the plating solution Ps near the outer edge of the substrate Wf as the output of the LUT 811.

[0097] As described above, in response to a command from the parameter designation unit 803, the parameter data storage unit 802 selects a parameter designated by the command from among the parameters stored in the parameter data storage unit 802 and inputs parameter data μ indicating the numerical value of the selected parameter to the LUT 811. The parameter designation unit 803 has a function of providing a command to the parameter data storage unit 802 in accordance with information input by an operator through a user interface device. The control module 800 also has a control function of adjusting plating conditions in accordance with the measured or estimated film thickness distribution of the plating film during the plating process. The parameter designation unit 803 can provide a command to the parameter data storage unit 802 to designate parameters that define the plating conditions adjusted by this control function.

[0098] LUT811 is used as the observation function G of the observation model. t 13, the observational processing unit 808 inputs the state variable x to the LUT 811. The LUT 811 can output calculation data Gt(x, μ) according to the input state variable x and parameter data μ.

[0099] 14 is a diagram illustrating a schematic configuration of the LUT 811 of this embodiment. As shown in FIG. 14, the LUT 811 includes an input unit 811i, a memory 811m, and an output unit 811t. The memory 811m stores N data sets GT1, GT2, GT3, GT4, ..., GT N are stored in advance. Here, N is a positive integer. Data sets GT1 to GT N For example, N data sets corresponding to parameter sets that define plating conditions for tens of thousands to millions of cases may be stored.

[0100] For example, the training data used in the machine learning of the NN model 810 according to the first embodiment is set as data sets GT1 to GT NThe training data used in supervised learning consists of a set of input data to the NN model 810 and corresponding teacher data (output data with a correct answer label). A data set of such sets can be stored in the memory 811m.

[0101] When parameter data μ and state variables x that define plating conditions are input, the input unit 811i decodes the parameter data μ and state variables x and generates a data set GT n The memory 811m generates a read address that identifies a memory cell that stores the calculation data Gt(x, μ) corresponding to the state variable x from among a group of memory cells in which the calculation data Gt(x, μ) corresponding to the state variable x is stored. The memory 811m reads the calculation data Gt(x, μ) from the memory cell specified by the generated read address. The output unit 811t can output the read calculation data Gt(x, μ).

[0102] Next, referring to FIG. 13, a current density calculation unit 812T calculates the outer edge current density j con The current density calculation unit 812T receives a state estimation value representing the plating current density j in the inner region 64 (FIG. 5) of the substrate Wf from the state estimation value using a look-up table (LUT) 817. wafer Specifically, the current density calculation unit 812 includes an estimation unit 814 and an LUT 817 as a second lookup table. The estimation unit 814 calculates the plating current density j from the state estimation quantity using the LUT 817. wafer The method is configured to calculate

[0103] The LUT 817 of the current density calculation unit 812T calculates the outer edge current density j con When the variable y representing the plating current density j and the parameter data μ that defines the plating conditions are input, waferThe estimation unit 814 inputs a variable y to the LUT 817 as shown in FIG. 13. The LUT 817 outputs the calculation data Et(y, μ) in accordance with the input variable y and parameter data μ. The estimation unit 814 converts the calculation data Et(y, μ) into the estimated plating current density j wafer and outputs it to the film thickness calculation unit 820.

[0104] 15 is a diagram illustrating a schematic configuration of the LUT 817 of this embodiment. As shown in FIG. 15, the LUT 817 includes an input unit 817i, a memory 817m, and an output unit 817t. The memory 817m stores N data sets ET1, ET2, ET3, ET4, ..., ET N are stored in advance. Here, N is a positive integer. Data sets ET1 to ET N For example, N data sets corresponding to parameter sets that define plating conditions for tens of thousands to millions of cases may be stored.

[0105] For example, the training data used in the machine learning of the NN model 816 according to the first embodiment is set as data sets ET1 to ET N The training data used in supervised learning consists of a set of input data to the NN model 816 and corresponding teacher data (output data with a correct answer label). A data set of such a set can be stored in the memory 817m.

[0106] When parameter data μ and state variables y that define plating conditions are input, the input unit 817i decodes the parameter data μ and state variables y and generates a data set ET that matches the plating conditions. nThe memory 817m generates a read address that identifies a memory cell that stores operation data Et(y, μ) corresponding to the state variable y from among a group of memory cells in which the operation data Et(y, μ) corresponding to the state variable y is stored. The memory 817m reads out the operation data Et(y, μ) from the memory cell specified by the generated read address. The output unit 817t can output the read operation data Et(y, μ).

[0107] Next, referring to FIG. 13, the film thickness calculation unit 820 calculates the plating current density j obtained from the current density calculation unit 812 in the same manner as in the first embodiment. wafer Based on (k, t), the film thickness distribution of the plating film formed on the substrate Wf is calculated. Here, t is the current time, and k is a number indicating the position of the inner region 64 on the substrate Wf. In one embodiment, the film thickness calculation unit 820 can calculate the film formation rate v(k, t) and film thickness distribution w(k, t) of the plating film at position k on the substrate Wf and the current time t using the above equations (6) and (7). The film thickness calculation unit 820 may calculate the film thickness w(k, T) at the end of the plating process (time q=T) instead of the current film thickness distribution w(k, t) by predicting the future plating current density and film formation rate using the above equation of state.

[0108] The end point determination unit 822 determines the end point of the plating process on the substrate Wf based on the film thickness distribution w(k, t) of the plating film obtained by the film thickness calculation unit 820. For example, the end point determination unit 822 may terminate the plating process when the estimated current film thickness distribution w(k, t) becomes a desired thickness distribution, or may predict the time until the end point of the plating process based on the estimated current film thickness w(k, t) and the predicted future film formation rate v(k, s) (s = t, ..., T).

[0109] Next, the processing procedure performed by the control module 800T will be described below. Fig. 16 is a flowchart showing an example of the processing procedure for calculating the film thickness distribution of the plating film.

[0110] 16, the state estimator 804T initializes time t (step S10), reads parameter data μ supplied from the parameter data storage unit 802 (step S11), and obtains a measured potential amount from the potential sensor 470 (step S12). Here, the order of steps S11 and S12 may be reversed.

[0111] Thereafter, the state estimator 804T executes state estimation processing using a Kalman filter based on the observation model and the state transition model from the potential measurement amount and the parameter μ, thereby estimating the current density j con At this time, the calculation based on the observation model is performed using the LUT 811.

[0112] Next, the current density calculation unit 812T calculates the current density (plating current density) j in the inner region of the substrate Wf from the state estimation quantity and the parameter data μ using the LUT 817. wafer Next, the film thickness calculation unit 820 calculates the distribution of the plating current density j obtained from the current density calculation unit 812 (step S14T). wafer Based on this, the film thickness distribution w(k,t) of the plating film formed on the substrate Wf is calculated (step S15). Then, the end point determination unit 822 determines whether the end point of the plating process on the substrate Wf has been detected based on the film thickness distribution w(k,t) of the plating film obtained by the film thickness calculation unit 820 (step S20). If it is determined that the end point of the plating process has been detected (YES in step S20), the control module 800T terminates the plating process. On the other hand, if the end point of the plating process has not been detected (NO in step S20), the control module 800T increments the time t (step S21) and repeats the processes from step S11 onwards.

[0113] As described above, according to the second embodiment, the state estimator 804T of the control module 800T receives the potential measured by the potential sensor 470 as an input, and calculates the current density j at the outer edge of the substrate Wf based on the observation model and the state transition model. conThe LUT 811 is configured to calculate a state estimate representing the potential of the plating solution Ps in the vicinity of the outer edge of the substrate Wf when a state variable representing the current density at the outer edge of the substrate Wf is input. The LUT 811 can store a number of data sets that can flexibly accommodate both changes in plating conditions during plating processing and changes in plating conditions between different plating processing. Therefore, even if changes in plating conditions occur, the current density j at the outer edge can be con This allows the state estimation quantity representing the current density j on the plating surface Wf-a to be calculated with high accuracy. wafer The estimation accuracy of the thickness distribution w(k,t) of the plating film is also improved.

[0114] Furthermore, the state estimator 804T executes state estimation processing using a Kalman filter based on the state transition model and the observation model, thereby estimating the current density j con Since the state estimate representing the thickness distribution w(k,t) can be calculated sequentially, a highly reliable thickness distribution w(k,t) can be obtained in real time.

[0115] In addition, the current density calculation unit 812T of the control module 800T calculates the current density j con From the state estimator representing the plating current density j wafer The LUT 817 can store a number of data sets that can flexibly accommodate both changes in plating conditions during plating processing and changes in plating conditions between different plating processing. Therefore, even if changes in plating conditions occur, the current density calculation unit 812T can calculate the current density j wafer This allows for highly accurate estimation of the thickness distribution w(k,t) of the plating film, further improving the accuracy of estimation.

[0116] <Modification> As a first modified example of the first embodiment, a current density calculation unit 812T of the second embodiment may be used instead of the current density calculation unit 812. Also, as a second modified example of the first embodiment, a state estimator 804T of the second embodiment may be used instead of the state estimator 804.

[0117] Furthermore, FIG. 17 is a cross-sectional view schematically illustrating the configuration of a plating module 400M according to a modification of the first or second embodiment. In the plating module 400M according to this modification, parts that overlap with those in the plating module 400 according to the first embodiment are designated by the same reference numerals, and their description will be omitted. The control module 800M has the same functions as either the control module 800 according to the first embodiment or the control module 800T according to the second embodiment. In the plating module 400M according to this modification, the conduit 462 is configured to be movable by a drive mechanism 466. The drive mechanism 466 is controlled by the control module 800M. The control module 800M can adjust the position of the open end 464 (see FIG. 6) of the conduit 462 by controlling the operation of the drive mechanism 466. The drive mechanism 466 can be realized by a known mechanism such as a motor or a solenoid. As described above, the potential inside the conduit 462 detected by the potential sensor 470 is approximately equal to the potential near the open end 464, and therefore, the pseudo detection position of the potential sensor 470 can be changed by adjusting the position of the open end 464 of the conduit 462 with the drive mechanism 466. Note that, although not limited thereto, the drive mechanism 468 may have a function of moving the potential sensor 470 along the radial direction of the substrate Wf.

[0118] <Third embodiment> FIG. 18 is a cross-sectional view schematically illustrating the configuration of a plating module 400A according to a third embodiment of the present invention. In the third embodiment, the substrate Wf is held so that it extends vertically, i.e., so that the normal direction of the substrate Wf faces horizontally. As shown in FIG. 18, the plating module 400A includes a plating tank 410A that holds a plating solution Ps therein, an anode 430A disposed in the plating tank 410A, and a substrate holder 440A. In the third embodiment, a rectangular substrate will be described as an example of the substrate Wf. However, as in the first embodiment, the substrate Wf is not limited to a rectangular substrate and may be a circular substrate.

[0119] The anode 430A is disposed in the plating tank so as to face the surface of the substrate Wf to be plated. The anode 430A is connected to the positive terminal of a power source 90, and the substrate Wf is connected to the negative terminal of the power source 90 via a substrate holder 440A. When a voltage is applied between the anode 430A and the substrate Wf, a current flows through the substrate Wf, and a plating film (metal film) is formed on the surface of the substrate Wf in the presence of the plating solution Ps.

[0120] The plating tank 410A includes an inner tank 412A in which the substrate Wf and the anode 430A are placed, and an overflow tank (outer tank) 414A adjacent to the inner tank 412A. The plating solution Ps in the inner tank 412A flows over the side wall of the inner tank 412A and flows into the overflow tank 414A.

[0121] One end of a plating solution circulation line 58a is connected to the bottom of the overflow tank 414A, and the other end of the plating solution circulation line 58a is connected to the bottom of the inner tank 412A. A circulation pump 58b, a thermostatic unit 58c, and a filter 58d are attached to the plating solution circulation line 58a. When the plating solution Ps overflows the sidewall of the inner tank 412A and flows into the overflow tank 414A, the flowing plating solution is returned from the overflow tank 414A to the inner tank 412A via the plating solution circulation line 58a. In this manner, the plating solution circulates between the inner tank 412A and the overflow tank 414A via the plating solution circulation line 58a.

[0122] The plating module 400A further includes a regulation plate 454 that regulates the potential distribution on the substrate Wf. The regulation plate 454 is disposed between the substrate Wf and the anode 430A and has an opening 454a for limiting the electric field in the plating solution.

[0123] The plating module 400A also includes a conduit 462A provided in the plating tank 410A. The conduit 462A may be formed of, for example, a resin such as PP (polypropylene) or PVC (polyvinyl chloride). Similar to the conduit 462 of the first or second embodiment described above, the conduit 462A has a first portion 462Aa including an open end and disposed in a region between the substrate Wf and the anode 430A, and a second portion 462Ab disposed in a region away from the region between the substrate Wf and the anode 430A. The second portion 462Ab of the conduit 462A is also provided with a potential sensor 470A. A detection signal from the potential sensor 470A is input to the control module 800A.

[0124] In the plating module 400A of the third embodiment, the control module 800A has the same functions as the control module 800 of the first embodiment or the control module 800T of the second embodiment. Therefore, the control module 800A can estimate the thickness distribution of the plating film based on the detection value of the potential sensor 470A. This allows the thickness distribution of the plating film formed on the plating surface of the substrate Wf during plating processing to be measured in real time. Furthermore, the control module 800A can also adjust the plating conditions based on the thickness of the plating film, as described in the first and second embodiments.

[0125] It should be understood that modifications, additions, and improvements to the above-described embodiments can be made as appropriate without departing from the spirit and scope of the present invention. The scope of the present invention should be interpreted based on the description of the claims, and should be understood to include equivalents thereof. [Explanation of symbols]

[0126] 1000: plating equipment, 58a: liquid circulation line, 58b: circulation pump, 58c: constant temperature unit, 58d: filter, 62: outer edge, 64: inner area, 90: power supply, 100: load port, 110: transfer robot, 120: aligner, 200: pre-wet module, 300: pre-soak module, 400, 400M, 400A: plating module, 410, 410A: plating tank, 412, 412A: inner tank, 414A: overflow tank (outer tank), 420: membrane, 422: cathode area, 424 : anode region, 426: anode mask, 430, 430A: anode, 440, 440A: substrate holder, 441: electrical contact, 442: lifting mechanism, 448: rotation mechanism, 450: resistor, 452: drive mechanism, 454: regulation plate, 454a: opening, 462: conduit, 462a, 462Aa: first portion, 462b, 462Ab: second portion, 464: opening end, 466: drive mechanism, 468: filling mechanism, 470, 470A: potential sensor, 480: shield, 500: cleaning module, 600: Spin rinse module, 700: transport device, 800, 800T, 800A: control module, 802: parameter data storage unit, 803: parameter designation unit, 804, 804T: state estimator, 806: state transition processing unit, 808: observation processing unit, 810: neural network model (NN model), 810i: input layer, 810h: intermediate layer (hidden layer), 810t: output layer, 811: lookup table (LUT), 811i: input unit, 811m: memory, 811t: output unit, 812, 812T: current density degree calculation unit, 814: estimation unit, 816: neural network model (NN model), 816i: input layer, 816h: intermediate layer (hidden layer), 816t: output layer, 817: lookup table (LUT), 817i: input unit, 817m: memory, 817t: output unit, 820: film thickness calculation unit, 822: end point determination unit, 900: information processing device, 901: processor, 902: random access memory (RAM), 903: non-volatile memory, 904: storage, 905: input / output interface circuit, 906: signal path.

Claims

1. A plating apparatus comprising: a plating tank for containing a plating solution; a substrate holder for holding a substrate; an anode disposed in the plating tank so as to face the substrate held by the substrate holder; a sensor configured to measure the potential of the plating solution near an outer edge of the substrate held by the substrate holder; a state estimator configured to use the measured potential as an input and to execute a state estimation process using a Kalman filter based on an observation model and a state transition model to calculate a state estimate representing a current density at the outer edge of the substrate; Equipped with the observation model is a model that describes a relationship between a potential measured by the sensor and a state variable that represents a current density at the outer edge; the state transition model is a model describing a temporal transition of a state variable representing a current density at the outer edge portion, the state estimator is configured to perform calculations based on the observation model using a first trained neural network model or a first lookup table; the first trained neural network model or the first lookup table is configured to output an estimated quantity representing a potential of the plating solution in the vicinity of the outer edge when parameter data defining plating conditions and a state variable representing a current density at the outer edge are input; the state estimator is configured to execute a calculation based on the observation model using the estimated quantity output in the state estimation process by the Kalman filter.

2. 2. The plating apparatus according to claim 1, further comprising a data storage unit in which the parameter data is stored, the parameter data is data relating to at least one component of a plating module including at least the plating solution, the plating tank, the substrate holder, and the anode; The first trained neural network model is an input layer configured to receive the parameter data provided from the data storage unit and a state variable representing a current density at the outer edge; an output layer configured to output an estimate representing the potential near the periphery; an intermediate layer that connects the input layer and the output layer; 1. A plating apparatus comprising:

3. 2. The plating apparatus according to claim 1, further comprising a data storage unit in which the parameter data is stored, the parameter data is data relating to at least one component of a plating module including at least the plating solution, the plating tank, the substrate holder, and the anode; The first lookup table comprises: the parameter data provided from the data store as a first input to the first lookup table; a state variable representing a current density at the outer edge as a second input to the first lookup table; an estimate representing the potential near the outer edge as an output of the first lookup table; A plating apparatus having a data structure in which correspondence relationships between the

4. 4. The plating apparatus according to claim 1, further comprising a current density calculation unit configured to calculate a current density distribution in an inner region of the substrate that is located inside the outer edge portion from the state estimation quantity calculated by the state estimator.

5. 5. The plating apparatus according to claim 4, wherein the current density calculation unit is configured to calculate a current density distribution in the inner region from the state estimation quantity calculated by the state estimator, using a second trained neural network model or a second lookup table.

6. a plating tank for containing a plating solution; a substrate holder for holding a substrate; an anode disposed in the plating tank so as to face the substrate held by the substrate holder; a sensor configured to measure the potential of the plating solution near an outer edge of the substrate held by the substrate holder; A method for estimating a state in a plating apparatus comprising: receiving the measured electrical potential data from the sensor; a step of calculating a state estimate representing a current density at the outer edge of the substrate by performing a state estimation process using a Kalman filter based on an observation model and a state transition model from the measured potential; Equipped with the observation model is a model that describes a relationship between a potential measured by the sensor and a state variable that represents a current density at the outer edge; the state transition model is a model describing a temporal transition of a state variable representing a current density at the outer edge portion, the step of calculating the state estimator includes performing a calculation based on the observation model using a first trained neural network model or a first lookup table; the first trained neural network model or the first lookup table is configured to output an estimated quantity representing a potential of the plating solution in the vicinity of the outer edge when parameter data defining plating conditions and a state variable representing a current density at the outer edge are input; A method in which the calculation based on the observation model is performed using the output estimator in the state estimation process by the Kalman filter.

7. 7. The method of claim 6, further comprising a step of calculating a current density distribution in an inner region of the substrate that is located inside the outer edge portion from the calculated state estimate using a second trained neural network model or a second lookup table.

8. A computer program comprising a plurality of instructions, said plurality of instructions, when executed on a processor, causing said processor to carry out the method according to claim 6 or 7.

Citation Information

Patent Citations

  • Plating apparatus

    JP2023160356A

  • Plating apparatus

    JP2024123875A

  • Plating Equipment

    JP7542782B1

  • JPP7542782B