Substrate processing apparatus, method for controlling substrate processing apparatus, and storage medium having program stored therein
The substrate processing apparatus addresses throughput and corrosion issues by using a control device to update transfer schedules and reroute substrates around unavailable modules during extended or retry cleaning processes.
Patent Information
- Application Number
- JP2023212458
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-12-15
- Publication Date
- 2025-06-26
AI Technical Summary
In semiconductor manufacturing, extended or retry cleaning processes in processing modules can lead to decreased throughput and potential substrate corrosion due to prolonged waiting times and improper process timing.
A substrate processing apparatus with a control device that creates a transfer time table to manage substrate transfer and processing between modules. When a retry or extension of cleaning is detected, the control device sets the affected module as unavailable and updates the time table to reroute subsequent substrates, preventing them from passing through the unavailable module.
This approach minimizes throughput reduction and maintains process constraints by ensuring that substrates are not delayed due to module cleaning issues, thereby reducing the risk of substrate corrosion.
Smart Images

Figure 2025096017000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a substrate processing apparatus, a control method for the substrate processing apparatus, and a storage medium storing a program for causing a computer to execute the control method for the substrate processing apparatus.
Background Art
[0002] In semiconductor manufacturing apparatuses, there are many cleaning processes, and in some cases, not only the cleaning of a substrate (for example, a wafer) but also the cleaning of a processing module (tank) of the apparatus is required. The cleaning of the processing module is performed after processing a substrate in the processing module and before the substrate is stored again. For example, Japanese Patent No. 7142812 (Patent Document 1) describes cleaning the contacts of a substrate holder after cleaning a substrate processed in a plating module.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] Although the cleaning time is basically adjusted and set to be completed within a certain time, there may be cases where the cleaning needs to be retried or extended due to some reasons. Since a substrate cannot be stored in the processing module during cleaning, the time when the next substrate uses (stores in) the processing module is shifted backward. In such a case, since it is necessary to wait until the module cleaning is completed and the module becomes available, there is a risk that the throughput of the apparatus will decrease. Further, when the substrate to be processed by the processing module next is present in the previous / upstream processing module, the time between processes is too wide (the process constraints / upper limit of the standing time after processing cannot be maintained), which may also cause the substrate to corrode.
[0005] An object of the present invention is to solve at least a part of the above-described problems. One object of the present invention is to suppress a decrease in the throughput of the apparatus even when a retry or extension of module cleaning occurs. One object of the present invention is to suppress a situation where process constraints cannot be maintained even when a retry or extension of module cleaning occurs.
Means for Solving the Problems
[0006] According to one aspect of the present invention, there is provided a substrate processing apparatus including: a plurality of processing modules that perform processing on a substrate; a transfer machine that transfers the substrate; and a control device that creates a transfer time table for transferring and processing the substrate between the plurality of processing modules, and controls the transfer of the substrate by the transfer machine and the substrate processing in the plurality of processing modules based on the transfer time table. When it is determined that a retry or extension of cleaning processing has occurred or has occurred in a first processing module among the plurality of processing modules, the control device sets the first processing module as unavailable and updates the transfer time table so that a subsequent substrate does not pass through the first processing module.
Brief Description of the Drawings
[0007]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9A
Figure 9B
Figure 9C
Figure 9D
Figure 9E
Figure 9F
Figure 9G
Figure 9H
Figure 9I
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
Embodiments for Carrying Out the Invention
[0008] Hereinafter, an embodiment of the present invention will be described with reference to the drawings. In the following embodiments, the same or corresponding members are denoted by the same reference numerals, and redundant descriptions are omitted. Also, in this specification, expressions such as "upper", "lower", "left", and "right" are used, but these indicate the positions and directions on the paper surface of the exemplary drawings for convenience of explanation, and may be different in the actual arrangement during device use or the like.
[0009] Here, as an example of a substrate processing apparatus, an electroplating apparatus will be described as an example. Note that the substrate processing apparatus is applicable to an electroplating apparatus, a CMP apparatus, an etching apparatus, or any other arbitrary substrate processing apparatus that transports a substrate between a plurality of processing modules based on a transfer schedule. The electroplating apparatus may be either an electrolytic electroplating apparatus or a chemical plating apparatus. The electroplating apparatus may be a horizontal electroplating apparatus (cup type / face-down type) that electroplates with the substrate lying horizontally, a vertical electroplating apparatus (dip type) that electroplates with the substrate standing upright, or any other arbitrary electroplating apparatus. The substrate may be a substrate or an object to be processed having a polygonal shape such as a circle or a square, or any other arbitrary shape. The substrate may be a semiconductor wafer, a glass substrate, a liquid crystal substrate, a printed circuit board, or any other arbitrary object to be processed.
[0010] FIG. 1 is a perspective view showing the overall configuration of an electroplating apparatus 1000, which is an example of a substrate processing apparatus. FIG. 2 is a plan view showing the overall configuration of an electroplating apparatus 1000, which is an example of a substrate processing apparatus. As shown in FIGS. 1 and 2, the electroplating apparatus 1000 includes a load port 100, a transfer robot 110, an aligner 120, a pre-wet module 200, a pre-soak module 300, an electroplating module 400, a cleaning module 500, a spin rinse dryer 600, a transfer device 700, and a control module 800.
[0011] The load port 100 is a module for loading a wafer (substrate) accommodated in a cassette such as a FOUP (not shown in the plating apparatus 1000) into the plating apparatus 1000 or unloading the substrate from the plating apparatus 1000 to the cassette. In the present embodiment, four load ports 100 are arranged side by side in the horizontal direction, but the number and arrangement of the load ports 100 are arbitrary. The transfer robot 110 is a robot for transferring the substrate and is configured to transfer the substrate between the load port 100, the aligner 120, and the transfer device 700. When transferring the substrate between the transfer robot 110 and the transfer device 700, the transfer robot 110 and the transfer device 700 can transfer the substrate via a temporary placement table (not shown).
[0012] The aligner 120 is a module for aligning the positions of the orientation flat, notch, etc. of the substrate in a predetermined direction. In the present embodiment, two aligners 120 are arranged side by side in the horizontal direction, but the number and arrangement of the aligners 120 are arbitrary. The pre-wet module 200 wets the surface to be plated of the substrate before the plating process with a processing liquid such as pure water or degassed water, thereby replacing the air inside the pattern formed on the substrate surface with the processing liquid. The pre-wet module 200 is configured to perform a pre-wet process that makes it easier to supply the plating liquid inside the pattern by replacing the processing liquid inside the pattern with the plating liquid during plating. In the present embodiment, two pre-wet modules 200 are arranged one above the other in the vertical direction, but the number and arrangement of the pre-wet modules 200 are arbitrary.
[0013] The pre-soak module 300 is configured to perform a pre-soak process of cleaning or activating the surface of the plating base by etching and removing an oxide film with a large electrical resistance present on the surface of a seed layer formed on the surface to be plated of the substrate before plating, for example, with a processing solution such as sulfuric acid or hydrochloric acid. In this embodiment, two pre-soak modules 300 are arranged side by side in the vertical direction, but the number and arrangement of the pre-soak modules 300 are arbitrary. The plating module 400 performs a plating process on the substrate. In this embodiment, there are two sets of 12 plating modules 400 arranged side by side in three in the vertical direction and four in the horizontal direction, and a total of 24 plating modules 400 are provided, but the number and arrangement of the plating modules 400 are arbitrary.
[0014] The cleaning module 500 is configured to perform a cleaning process on the substrate in order to remove the plating solution remaining on the substrate after the plating process. In this embodiment, two cleaning modules 500 are arranged side by side in the vertical direction, but the number and arrangement of the cleaning modules 500 are arbitrary. The spin rinse dryer 600 is a module for drying the substrate by rotating it at high speed after the cleaning process. In this embodiment, two spin rinse dryers 600 are arranged side by side in the vertical direction, but the number and arrangement of the spin rinse dryers 600 are arbitrary. The transfer device 700 is a device for transferring the substrate between a plurality of modules in the plating apparatus 1000. The control module 800 is configured to control a plurality of modules of the plating apparatus 1000, and can be composed of, for example, a general computer or a dedicated computer having an input / output interface with the operator.
[0015] An example of a series of plating processes by the plating apparatus 1000 will be described. First, the substrate accommodated in the cassette is carried into the load port 100. Subsequently, the transfer robot 110 takes out the substrate from the cassette of the load port 100 and transfers the substrate to the aligner 120. The aligner 120 aligns the positions such as the orientation flat and notch of the substrate in a predetermined direction. The transfer robot 110 delivers the substrate whose direction has been aligned by the aligner 120 to the transfer device 700.
[0016] The transfer device 700 transfers the substrate received from the transfer robot 110 to the pre-wet module 200. The pre-wet module 200 performs a pre-wet process on the substrate. The transfer device 700 transfers the substrate on which the pre-wet process has been performed to the pre-soak module 300. The pre-soak module 300 performs a pre-soak process on the substrate. The transfer device 700 transfers the substrate on which the pre-soak process has been performed to the plating module 400. The plating module 400 performs a plating process on the substrate.
[0017] The transfer device 700 transfers the substrate on which the plating process has been performed to the cleaning module 500. The cleaning module 500 performs a cleaning process on the substrate. The transfer device 700 transfers the substrate on which the cleaning process has been performed to the spin rinse dryer 600. The spin rinse dryer 600 performs a drying process on the substrate. The transfer device 700 receives the substrate on which the drying process has been performed and delivers it to the transfer robot 110. The transfer robot 110 transfers the substrate received from the transfer device 700 to the cassette in the load port 100. Finally, the cassette containing the substrate is unloaded from the load port 100.
[0018] Note that the configuration of the plating apparatus 1000 described in FIGS. 1 and 2 is merely an example, and the configuration of the plating apparatus 1000 is not limited to the configurations in FIGS. 1 and 2.
[0019] <Control Configuration> FIG. 3 is an explanatory diagram for explaining the control configuration of a plating apparatus 1000 which is an example of a substrate processing apparatus. In the present embodiment, some or all of the functions of the control module 800 can be configured by hardware such as an ASIC. Some or all of the functions of the control module 800 may be configured by a PLC, a sequencer, or the like. Some or all of the control module 800 can be disposed inside and / or outside the housing of the plating apparatus 1000. Some or all of the control module 800 is communicably connected to each part of the plating apparatus by wire and / or wirelessly.
[0020] As shown in FIG. 3, the plating apparatus 1000 can be configured to include a device computer 810 and a device controller 820 as a control module 800 that controls each part of the apparatus. The device computer 810 is connected to the device controller 820 via a wired or wireless network, cable, or the like. Various operating devices 130 of the plating apparatus 1000 are connected to the device controller 820 via a predetermined interface I / O. The device computer 810 and the device controller 820 cooperate to control various operating devices 130 of the plating apparatus 1000. By sending a control signal from the device computer 810 to the device controller 820 via the network, various operating devices 130 are controlled via the device controller 820. Further, the device computer 810 is configured to be able to communicate with a host controller (host computer) (not shown) that overall controls the plating apparatus 1000 and other related apparatuses, and can exchange data with a database possessed by the host controller.
[0021] The device controller 820 is constituted by, for example, a PLC, a sequencer, or the like, and controls various operating devices of the substrate processing apparatus 100 based on control commands, setting parameters, transfer time tables, etc. from the device computer 810. Here, the various operating devices of the substrate processing apparatus 100 include a transfer robot 110, a transfer device 700 (hereinafter also referred to as a transfer machine 700 or a transporter 700), and other devices. In the present embodiment, one transfer machine 700 is provided, but in the following description, a description applicable to the case where a plurality of transfer machines are provided (for example, FIG. 14) will be given.
[0022] The device computer 810 includes a memory (not shown) that stores various setting data such as machine constants (machine parameters) and various programs, and a CPU (not shown) that executes the programs in the memory. Note that the device computer 810 may be provided with an input / output interface including an output device such as a display and an input device including a keyboard, a mouse, and the like. The storage medium constituting the memory can include any volatile storage medium and / or any non-volatile storage medium. The storage medium can include, for example, one or more of any storage media such as ROM, RAM, hard disk, CD-ROM, DVD-ROM, and flexible disk.
[0023] The programs stored in the memory include, for example, as shown in FIG. 3, software that configures the operation screen application 811 in the device computer 810 and scheduling software that configures a module called the transfer scheduler 812 in the device computer 810. The scheduling software is scheduling software that calculates a transfer schedule (transfer time table), and when the scheduling software is executed by the CPU, the transfer scheduler 812 is configured. The transfer scheduler 812 functions as a substrate transfer control unit and creates a transfer time table for performing transfer control that maximizes throughput based on the operation times of each transfer machine and the like given in advance, the processing conditions (process recipe) of the target substrate for which a processing instruction has been received, the number of substrates to be processed, and the like. The operation screen application 811 displays a transfer time table and the like, which will be described later, on the display. The operation screen application 811 can receive an input from an operator (for example, selection of a recipe, etc.). The operation screen application 811 can receive an input from an operator (for example, selection of a recipe, etc.).
[0024] In addition, the program stored in the memory includes software that configures the retry determination unit 813 in the device computer 810. The retry determination unit 813 manages retry and completion events of module cleaning in the processing module. The retry determination unit 813 determines the result of module cleaning (in this example, contact cleaning of the plating module 400) in the processing module, issues a module cleaning retry event or a module cleaning completion event, and notifies the transport scheduler 812 of the module cleaning retry event or the module cleaning completion event. When the retry determination unit 813 determines during or at the end of module cleaning that the cleaning of the module has not been completed or is not completed within the set cleaning time, it issues a module cleaning retry event (including an extension of the cleaning time) in order to perform a retry of the module cleaning. Generally, the cleaning time (set time) of module cleaning is stored in the memory as a machine constant. Instead of or in addition to this, the cleaning time of module cleaning may be set in the recipe. When the retry determination unit 813 determines during or at the end of the first or retry module cleaning that the cleaning of the module has not been completed or is not completed within the set cleaning time, it issues a module cleaning retry event (including an extension of the cleaning time) in order to perform a retry of the module cleaning. Note that the first module cleaning means the first module cleaning before the retry. When the retry determination unit 813 determines during or at the end of the first or retry module cleaning that the module cleaning has been successfully completed or completed, it issues a module cleaning completion event. That is, the retry determination unit 813 repeatedly issues a module cleaning retry event and repeats the retry of the module cleaning until the module cleaning is successfully completed. Note that when the retry determination unit 813 repeats multiple retries of module cleaning (including an extension of the cleaning time) until the module cleaning is successfully completed, it may issue only the cleaning retry event for the first cleaning retry (not issue the cleaning retry event for the second and subsequent cleaning retries).In addition, an upper limit may be set for the number of retries, and if the module cleaning is still not completed even after cleaning the module the maximum number of times, a cleaning error may be issued.
[0025] As described above, the retry determination unit 813 forms part of the control module 800. Note that the retry determination unit 813 does not necessarily have to be provided in the apparatus computer 810, and it may be provided in the apparatus controller 820, the processing module to be subject to retry determination, or other locations.
[0026] The program stored in the memory may further include a program for controlling the processing of the substrate in each processing module / tank (including a program for controlling the plating process in the plating processing module 400), and other control programs.
[0027] <Overview of Scheduling by the Transfer Scheduler> FIG. 4 is a schematic diagram for explaining the overview of scheduling by the transfer scheduler 812. FIG. 5 is a schematic diagram for explaining a specific example of the input and output of the transfer scheduler 812.
[0028] As shown in FIG. 4, the conveyance scheduler 812 receives, as input data, a recipe, parameters other than the recipe, and input of constraint conditions, and creates a conveyance time table with the maximum throughput while satisfying the constraint conditions. Here, the constraint conditions include the "upper limit of standing time after processing" in each processing tank and the "interference area" for avoiding collisions between conveyors. The upper limit of standing time after processing is a time constraint set to prevent corrosion of the substrate in each processing tank, and is defined as the time from when the processing in the processing tank is completed until the substrate is carried out of the processing tank. The interference area is an area set to prevent collisions between a plurality of conveyors, and prohibits the movement of other conveyors into the interference area of each conveyor, and is set so that each conveyor does not approach within a predetermined distance. In the plating apparatus 1000 of the present embodiment, since one conveyor 700 is provided (FIGS. 1 and 2), the setting of the interference area is omitted. In the plating apparatus of FIG. 14 described later, since three conveyors 121 are provided, an interference area is set for each conveyor.
[0029] In FIG. 5, the recipe and parameters other than the recipe are collectively referred to as input parameters. As shown in the figure, the recipe includes, for example, the processing order and processing time set for each job, which are assigned for each substrate or for one or more substrates. The parameters other than the recipe include, for example, "device setting parameters", "processing module / tank setting parameters", and "conveyor setting parameters". The recipe includes the processing order, which is the order of processing in the device, the processing time for each process, and other conditions for each process. The device setting parameters include, for example, parameters such as the use / non-use of each tank, the number of tanks, and the number of substrate holders. The processing module / tank setting parameters include, for example, the operation time of various mechanisms included in the processing module / tank, the pre-processing time / post-processing time, and the reset time. The pre-processing time is the time taken from when the substrate is loaded into the tank until the start of processing. The post-processing time is the time until the substrate can be unloaded after processing in the tank. The reset time is the time until the tank can be used again after the substrate is unloaded from the tank. The conveyor setting parameters include, for example, the movement time, the take-out / loading time, etc. Note that the configuration of the input parameters is an example and can be appropriately changed according to the configuration of the device and the process. Note that in this specification, the processing module and the processing tank are used synonymously.
[0030] As shown in FIG. 5, the transport time table generated by the transport scheduler 812 includes the start time, the conveyor to be operated, the type of operation (take-out / loading), the source unit processing module / tank, the destination processing module / tank, etc. The configuration of the transport time table in FIG. 5 is an example and can be appropriately changed according to the configuration of the device and the process.
[0031] <Event Processing of Transport Scheduler> FIG. 6 is a schematic diagram showing the functional configuration of the transfer scheduler from the perspective of event processing. As shown in the figure, the transfer scheduler 812 has a "new substrate input scheduling function", a "recipe cancellation processing function", an "error recovery scheduling function", a "module cleaning retry scheduling function", and a "module cleaning completion scheduling function" as functions of event processing repeatedly executed from after the device startup to before the device stop. The transfer scheduler 812 according to the present embodiment is characterized by having the "module cleaning retry scheduling function" and the "module cleaning completion scheduling function". The "update function for wafer transfer schedule PLC" transmits the updated transfer schedule (transfer time table) to the device controller 820 and updates the transfer time table executed by the device controller 820.
[0032] When a new substrate transfer job (hereinafter, also simply referred to as a job) is issued, the transfer scheduler 812 calculates a transfer time table as a transfer schedule from the configuration of the plating apparatus 1000, the recipe, the operation time of each module (processing tank, transfer machine), the constraint time, etc. (new substrate input scheduling function). The substrate transfer job is assigned to one or more substrates. The transfer machine transfers the substrate according to the transfer time table. When an event such as a recovery process due to an error or a job cancellation process occurs, the transfer scheduler 812 can update the transfer time table and change the transfer of subsequent substrates (non-steady operation). The recovery process due to an error is performed by the error recovery scheduling function. The job cancellation process is performed by the recipe cancellation processing function. applied. The transfer machine transfers the substrate according to the transfer time table. When an event such as a recovery process due to an error or a job cancellation process occurs, the transfer scheduler 812 can update the transfer time table and change the transfer of subsequent substrates (non-steady operation). The recovery process due to an error is performed by the error recovery scheduling function. The job cancellation process is performed by the recipe cancellation processing function.
[0033] In addition, when a retry of module cleaning (including extensions in the retry) occurs, the transfer scheduler 812 temporarily makes the processing module unavailable. If there is a substrate scheduled to use the module, the transfer time table is updated so that the substrate does not pass through the processing module (module cleaning retry scheduling function). Also, when there is a substrate passing through a processing module being cleaned in the transfer time table, the transfer scheduler 812 updates the transfer time table to use another processing module of the same type, minimizing throughput degradation (module cleaning retry scheduling function). Further, when the module cleaning retry is completed, the transfer scheduler 812 returns the processed module that has completed cleaning to an available state and updates the transfer time table to use the processed module again (module cleaning completion scheduling function).
[0034] In addition, the transfer scheduler 812 can analyze the generated transfer time table and obtain the throughput (number of processed sheets per unit time). Also, the transfer scheduler 812 can determine the bottleneck point (the point that limits the processing speed of the plating apparatus 1000) from the operating rate of each module (processing tank, transfer machine).
[0035] <Configuration of Plating Module> FIG. 7 is a schematic diagram for explaining the configuration of the plating module. The plating module 400 mainly includes a plating tank 10, an overflow tank 20, a substrate holder 30 also referred to as a plating head, a rotation mechanism 40, an inclination mechanism 45, and a lifting mechanism 46. However, the inclination mechanism 45 may be omitted.
[0036] The plating tank 10 according to this embodiment is configured by a bottomed container having an opening at the top. The plating tank 10 has a bottom wall and an outer peripheral wall extending upward from the outer peripheral edge of the bottom wall, and the upper part of the outer peripheral wall is open. A plating solution Ps is stored inside the plating tank 10. In this embodiment, the plating tank 10 has a cylindrical shape.
[0037] The plating solution Ps may be a solution containing ions of the metal element constituting the plating film, and its specific examples are not particularly limited. In the present embodiment, as an example of the plating process, copper plating is used, and as an example of the plating solution Ps, a copper sulfate solution is used. Further, in the present embodiment, the plating solution Ps contains a predetermined additive. However, the present invention is not limited to this configuration, and the plating solution Ps may be configured not to contain an additive.
[0038] An anode 16 is disposed inside the plating bath 10. The specific type of the anode 16 is not particularly limited, and a soluble anode or an insoluble anode can be used. In the present embodiment, an insoluble anode is used as the anode 16. The specific type of this insoluble anode is not particularly limited, and platinum, iridium oxide, or the like can be used.
[0039] The overflow tank 20 is constituted by a bottomed container disposed outside the plating bath 10. The overflow tank 20 temporarily stores the plating solution Ps that has exceeded the upper end of the plating bath 10. In one example, the plating solution Ps in the overflow tank 20 is discharged from an outlet (not shown) for the overflow tank 2 0, temporarily stored in a reservoir tank (not shown), and then returned to the plating bath 10 again.
[0040] Above the anode 16 inside the plating bath 10, a porous resistor 17 is disposed. Specifically, the resistor 17 is constituted by a porous plate member having a plurality of holes (pores). The plating solution Ps below the resistor 17 can pass through the resistor 17 and flow to the upper side of the resistor 17. This resistor 17 is a member provided to make uniform the electric field formed between the anode 16 and the substrate Wf. By disposing such a resistor 17 in the plating bath 10, it is possible to easily make uniform the film thickness of the plating film (plating layer) formed on the substrate Wf. Note that the resistor 17 is not an essential configuration in this embodiment, and this embodiment can also be configured without the resistor 17.
[0041] As shown in FIG. 7, the substrate holder 30 is a member that holds the substrate Wf as a cathode. Specifically, the substrate holder 30 is disposed above the anode 16 (in this embodiment, further above the resistor 17). The substrate holder 30 holds the substrate Wf such that the lower surface Wfa of the substrate Wf faces the anode 16 and the resistor 17. Note that the lower surface Wfa of the substrate Wf corresponds to the surface to be plated.
[0042] The substrate holder 30 according to this embodiment includes a first holding member 31, a second holding member 32, a contact 50, and a seal member 55. The substrate holder 30 holds the substrate Wf so as to sandwich the substrate Wf between the first holding member 31 and the second holding member 32. The first holding member 31 holds the upper surface of the substrate Wf. The second holding member 32 holds the outer peripheral portion of the lower surface Wfa of the substrate Wf. Specifically, the second holding member 32 according to this embodiment holds the outer peripheral portion of the lower surface Wfa of the substrate Wf via the seal member 55. When the substrate holder 30 holds the substrate Wf, the seal member 55 adheres to the substrate Wf, and a seal space 33 is formed to protect the contact 50 and the contact region of the substrate Wf (the region that contacts the contact 50 on the outer periphery of the substrate) from the plating solution.
[0043] As shown in FIG. 7, the substrate holder 30 is connected to the rotating shaft 41 of the rotation mechanism 40. The rotation mechanism 40 is a mechanism for rotating the substrate holder 30. As the rotation mechanism 40, a known mechanism such as a motor can be used. The tilting mechanism 45 is a mechanism for tilting the rotation mechanism 40 and the substrate holder 30. As the tilting mechanism 45, a known tilting mechanism such as a piston-cylinder can be used. The lifting mechanism 46 is supported by a support shaft 47 extending in the vertical direction. The lifting mechanism 46 is a mechanism for moving the substrate holder 30, the rotation mechanism 40, and the tilting mechanism 45 up and down in the vertical direction. As the lifting mechanism 46, a known lifting mechanism such as a linear actuator can be used.
[0044] When performing the plating process, the rotation mechanism 40 rotates the substrate holder 30, and the lifting mechanism 46 moves the substrate holder 30 downward to immerse the substrate Wf in the plating solution Ps in the plating tank 10. Also, when immersing the substrate Wf in the plating solution Ps in this way, the tilting mechanism 45 may tilt the substrate holder 30 as necessary. Next, electricity is passed between the anode 16 and the substrate Wf through the plating solution Ps by a power source (not shown). Thereby, a plating film is formed on the lower surface Wfa of the substrate Wf.
[0045] <An Example of Module Cleaning> FIG. 8 is an explanatory diagram for explaining an example of the cleaning process in the plating module 400. In the figure, a wet contact for performing the plating process on the substrate with the contact 50 of the substrate holder 30 covered with DIW60 is illustrated, but it may be a dry contact for performing the plating process without covering the contact 50 of the substrate holder 30 with a liquid.
[0046] The substrate Wf on which the plating process has been completed by the plating module 400 is lifted above the liquid level of the plating solution while being held by the substrate holder 30, and is washed with a cleaning liquid (e.g., DIW which is an example of pure water) supplied from the cleaning nozzle 61 (Fig. (A) of the same figure). The cleaning liquid after being used for cleaning is collected in a liquid receiving tray 62 disposed below the substrate Wf, and is discharged through a drain pipe 63. The conductivity meter 64 provided in the liquid receiving tray 62 and / or the drain pipe 63 measures the conductivity of the collected cleaning liquid (pure water), and when the conductivity of the cleaning liquid after use drops below a predetermined value, the cleaning of the substrate Wf is completed. The cleaning nozzle 61 and the liquid receiving tray 62 can be configured to move below the substrate holder 30, for example, when the substrate holder 30 is lifted, and can retract from below the substrate holder 30 after the cleaning process.
[0047] The washed substrate Wf is removed from the substrate holder 30, and the removed substrate Wff is sequentially conveyed to the cleaning module 500 and the spin rinse dryer 600. After being subjected to a cleaning process and a drying process, it is conveyed to the cassette of the load port 100 (Fig. (B) of the same figure).
[0048] After removing the substrate Wf, the contacts 50 (and the seal member 55) of the substrate holder 30 are washed with a predetermined amount of cleaning liquid (e.g., DIW) supplied from the cleaning nozzle 71 (Fig. (C) of the same figure). At this time, the substrate holder 30 and / or the cleaning nozzle 71 are rotated at least one full turn so that pure water is uniformly supplied to the contacts 50. The cleaning liquid after being used for cleaning is collected in a liquid receiving tray 72 disposed below the substrate Wf, and is discharged through a drain pipe 73. The conductivity of the collected cleaning liquid (DIW) is measured by the conductivity meter 74 provided in the liquid receiving tray 72 and / or the drain pipe 73, and the measured conductivity is provided to the control module 800. The control module 800 (retry determination unit) determines whether the measured conductivity of the cleaning liquid is less than a threshold value, and when the conductivity of the cleaning liquid becomes less than the threshold value, it determines that the contact cleaning (module cleaning) is completed.
[0049] If the cleaning of the contact 50 is not completed in one cleaning process set in the recipe (the conductivity of the cleaning liquid after use does not drop below a predetermined value), a cleaning retry (including an extension of the cleaning time, i.e., a second cleaning process and / or an extension of the cleaning time) is performed. If the cleaning is not completed (the conductivity of the cleaning liquid after use does not drop below a predetermined value) in one cleaning retry (extension of the cleaning time), the cleaning retry is repeated until the cleaning is completed (the conductivity of the cleaning liquid after use drops below a predetermined value). That is, one or more cleaning retries are performed.
[0050] For example, when the retry determination unit 813 determines during or at the end of the first contact cleaning that the conductivity of the cleaning liquid does not become or has not become less than the threshold value within the set cleaning time, it issues a module cleaning retry event and notifies the transport scheduler 812. The determination before the end of the cleaning process can, for example, be made (estimated) based on the current conductivity of the cleaning liquid and the remaining cleaning time as to whether the conductivity of the cleaning liquid will become less than the threshold value within the cleaning time during the cleaning process.
[0051] When the retry determination unit 813 determines during or at the end of the contact cleaning during the first or (first or multiple) retries that the conductivity of the cleaning liquid does not become or has not become less than the threshold value within the cleaning time, it also issues a module cleaning retry event and notifies the transport scheduler 812 in order to perform a further module cleaning retry (including an extension of the cleaning time). The determination before the end of the cleaning process can, for example, be made (estimated) based on the current conductivity of the cleaning liquid and the remaining cleaning time as to whether the conductivity of the cleaning liquid will become less than the threshold value within the cleaning time during the cleaning process.
[0052] During or at the end of the first or (first or multiple) retries of contact cleaning, the retry determination unit 813 determines that the conductivity of the cleaning liquid becomes or does not become less than the threshold value within the cleaning time When it is determined that it is full, issue a module cleaning completion event. The determination before the end of the cleaning process can be made (estimated), for example, based on the current conductivity of the cleaning liquid and the remaining time of the cleaning time, whether the conductivity of the cleaning liquid becomes less than the threshold value within the cleaning time during the cleaning process.
[0053] That is, the retry determination unit 813 repeatedly issues a module cleaning retry event and retries the module cleaning until the contact cleaning is successfully completed. Note that an upper limit number of retries may be set, and if the module cleaning is not completed even after the upper limit number of module cleanings, a cleaning error may be issued. The cleaning time for each retry or extension can be the same as or different from the cleaning time of the first time (the cleaning before the retry). Also, the cleaning time for each retry (including extension) can be all or part of the same or different lengths.
[0054] As described above, the cleaning process time is basically adjusted and set to be completed in a certain time, but due to some reasons, it may be necessary to retry (including extension) the cleaning process. Therefore, in this embodiment, the following conveyance scheduling is implemented. When a retry of module cleaning occurs, the processing module (for example, the plating module 400) is temporarily set to an unusable state, and if there is a substrate scheduled to use the processing module, the conveyance time table is updated so that the substrate does not pass through the processing module. Also, when there is a substrate passing through the processing module being cleaned in the conveyance time table, the conveyance scheduler 812 updates the conveyance time table to use another processing module of the same type. Also, when the module cleaning retry is completed, the conveyance scheduler 812 returns the processing module whose cleaning has been completed to a usable state and updates the conveyance time table so that the processing module is used again.
[0055] <Flow of substrate conveyance during cleaning retry> Figures 9A - I are explanatory diagrams for explaining the flow of substrate transfer during cleaning retry. Here, a wafer is taken as an example of the substrate Wf, and the case of loading 10 wafers (wafer1 - wafer10) into the plating apparatus 1000 will be described as an example. In these figures, PW1 - PW2 indicate the pre - wet module 200, PL1 - PL4 indicate the plating module 400, and RD1 - RD2 indicate the spin rinse dryer 600. In this example, for the sake of convenience of explanation, the processing of the pre - soak module 300 is omitted, the processing proceeds from the pre - wet module 200 to the plating module 400, and the processing of the cleaning module 500 is omitted, and a simplified case where the transfer is from the plating module 400 to the spin rinse dryer 600 will be described as an example. The use tanks (plating modules 400) are assumed to be used by circulating through PL1 - PL4. wafer1 - 10 are assumed to be taken out from the cassette (FOUP) in this order.
[0056] First, when a recipe is selected for 10 wafers and a job is set, a transfer time table for 10 wafers is generated by the transfer scheduler 812 (the table and time table in Fig. 9A). Note that the transfer time table is shown schematically. As shown in the table of Fig. 9A, plating modules PL1 - PL4 are respectively assigned to wafer1 - 4, plating modules PL1 - PL4 are respectively assigned to wafer5 - 8, and plating modules PL1 - PL2 are respectively assigned to wafer9 - 10. At this time, the wafers are not accommodated in the pre - wet modules PW1 - PW2, the plating modules PL1 - PL4, and the spin rinse dryers RD1 - RD2 (the schematic diagram of the processing modules on the right side of Fig. 9A).
[0057] Fig. 9B shows the state where the transfer has proceeded until the 6th wafer, wafer6, is taken out from the FOUP. At this time, wafer1 - 4 are respectively accommodated in the plating modules PL1 - PL4 and wafer5 is accommodated in the pre - wet module PW1 (the schematic diagram of the processing modules on the right side of Fig. 9B).
[0058] In FIG. 9C, the first wafer 1 is taken out from the plating module PL1, showing a state where contact cleaning (module cleaning) has started in the plating module PL1. The wafer 1 is stored in the spin rinse dryer RD1. Next, the wafer 5 uses the plating module PL1. The wafer 5 is scheduled to be stored in the plating module PL1 after the contact cleaning of the plating module PL1 is completed.
[0059] In FIG. 9D, a state where a module cleaning retry event has occurred in the plating module PL1 is shown. That is, in the plating module PL1, after the wafer 1 is carried out, contact cleaning is performed, but it is assumed that the contacts could not be completely cleaned in one cleaning and a retry occurred. In this case, the retry determination unit 813 issues a module cleaning retry event and notifies the transfer scheduler 812, and the transfer scheduler 812 makes the plating module PL1 temporarily unavailable for use.
[0060] Note that in FIG. 9D, the wafer 2 is taken out from the plating module PL2 and stored in the spin rinse dryer RD2, and a state where contact cleaning has started in the plating module PL2 is also shown.
[0061] In FIG. 9E, a state where the transfer scheduler 812 has updated the transfer time table under the condition that the plating module PL1 is temporarily unavailable for use is shown. Specifically, as shown in the table on the left side of FIG. 9E, the transfer time table is updated so that wafers 5 to 7 use PL2 to PL4, and wafers 8 to 10 use PL2 to PL4. As a result, as shown in FIG. 9F, the wafer 5 is carried into the plating module PL2.
[0062] After that, based on the updated transfer time table, if the contact cleaning of the plating module PL1 is completed after taking out the eighth wafer 8 from the FOUP, the retry determination unit 813 notifies the transfer scheduler 812 of the module cleaning completion event, and the transfer scheduler 812 returns the plating module PL1 to an available state (Fig. 9G).
[0063] As shown in Fig. 9H, the transfer scheduler 812 updates the transfer time table under the condition that the plating module PL1 is available. As a result, as shown in the table on the left side of Fig. 9H, the transfer time table is updated so that wafer 9 uses the plating module PL1. Then, as shown in Fig. 9I, wafer 9 is carried into the plating module PL1.
[0064] <Flowchart of Transfer Scheduling> Fig. 10 is a flowchart showing the flow of transfer scheduling. Fig. 11 is a flowchart of transfer scheduling for a new job. Fig. 12 is a flowchart of transfer scheduling at the time of module cleaning retry. Fig. 13 is a flowchart of transfer scheduling at the time of module cleaning completion. These processes are carried out by the transfer scheduler 812.
[0065] In step S11, it is determined whether the transfer scheduler 812 has received an event. The transfer scheduler 812 repeats the process of step S11 until it receives an event.
[0066] If the transfer scheduler 812 determines in step S11 that it has received a new job event, it performs transfer scheduling for the new job (Fig. 11). Specifically, as shown in Fig. 11, in step S21, the transfer scheduler 812 creates a transfer time table for the new job. Next, in step S22, the transfer scheduler 812 transmits the created transfer time table to the device controller 820. Then, it returns to step S11.
[0067] On the other hand, when the transfer scheduler 812 determines in step S11 that it has received a module cleaning retry event, it performs transfer scheduling during module cleaning retry (FIG. 12). Specifically, as shown in FIG. 12, in step S31, in response to receiving the module cleaning retry event, the transfer scheduler 812 makes the processing module temporarily unavailable. In step S32, the transfer scheduler 812 updates the transfer time table on the condition that the processing module is made temporarily unavailable. In step S33, the transfer scheduler 812 transmits the updated transfer time table to the device controller 820. Then, it returns to step S11.
[0068] However, when the transfer scheduler 812 determines in step S11 that it has received a module cleaning retry event, if the processing module targeted by the module cleaning retry event is already temporarily unavailable, the transfer scheduler 812 ends the process without re - executing the transfer scheduling during module cleaning retry (end in FIG. 10). That is, when multiple retries of module cleaning are performed, the transfer scheduler 812 performs the transfer scheduling during module cleaning retry (FIG. 12) when it receives the first module cleaning retry event, and does not update the transfer schedule when receiving the second and subsequent module cleaning retry events. In addition, when multiple retries of module cleaning are repeated, if the retry determination unit 813 issues a cleaning retry event only for the first cleaning retry, the transfer scheduler 812 receives only the cleaning retry event for the first cleaning retry, performs the transfer scheduling during module cleaning retry (FIG. 12), and then receives the module cleaning completion event.
[0069] On the other hand, when the transfer scheduler 812 determines in step S11 that it has received a module cleaning completion event, it performs transfer scheduling at the time of module cleaning completion (FIG. 13). Specifically, as shown in FIG. 13, in step S41, in response to receiving the module cleaning completion event, the transfer scheduler 812 enables the processing module corresponding to the event. In step S42, the transfer scheduler 812 updates the transfer time table on the condition that the processing module is enabled. In step S43, the transfer scheduler 812 transmits the updated transfer time table to the device controller 820. Then, it returns to step S11.
[0070] When the transfer scheduler 812 determines in step S11 that it has received a transfer completion event (transfer of all substrates is completed and there are no substrates in the device), it ends the transfer scheduling (end in FIG. 10).
[0071] (Other substrate processing apparatuses) FIG. 14 is a plan view showing the overall configuration of another substrate processing apparatus. In the figure, a configuration example of a vertical plating apparatus is shown. In the above embodiment, the horizontal plating apparatus 1000 has been described as an example of the substrate processing apparatus, but the above embodiment is also applicable to the vertical plating apparatus 1000-1.
[0072] The plating apparatus 1000-1 includes a load / unload station 101A-1 that loads a substrate as an object to be processed onto a substrate holder 11-1 or unloads the substrate from the substrate holder 11-1, a processing station 101B-1 that processes the substrate, and a control module 150-1. In this example, the substrate is a rectangular substrate. Note that the substrate may be a circular, rectangular, or other polygonal substrate, or any other arbitrary-shaped substrate. Further, the substrate may be a semiconductor wafer, a glass substrate, a liquid crystal substrate, a printed circuit board, or other object to be processed. The control module 150-1 is configured in the same manner as the control module 800 in the above embodiment and can perform the same transfer scheduling as the control module 800.
[0073] The load / unload station 101A-1 includes a plurality of cassette tables 102-1, transfer robots 103-1 and 104-1, a cleaning machine 105-1, and a substrate attachment / detachment station 107-1. The cassette table 102-1 mounts a cassette (such as a FOUP) storing substrates. In this embodiment, the cleaning machine 105-1 is a rinse dryer (cleaning and drying device / module) having a drying function, and cleans and dries the substrate after plating. The cleaning machine 105-1 may be either a type that separately includes tanks or modules for cleaning and drying, or a type that performs cleaning and drying processes in the same tank or module. In other embodiments, a dryer that only performs drying may be used instead of the cleaning machine 105-1. As the drying mechanism of the cleaning machine 105-1, for example, an air knife that injects air (dry air, nitrogen, etc.) onto the substrate can be employed. In this example, two cleaning machines 105-1 are provided, but one or three or more cleaning machines 105-1 may be provided. One or a plurality of temporary placement tables 105-1A for temporarily placing the substrate when transferring the substrate among the transfer robot 103-1, the transfer robot 104-1, and the cleaning machine 105-1 may be provided.
[0074] The substrate attachment / detachment station 107-1 includes one or a plurality of substrate attachment / detachment devices configured to attach and detach the substrate to / from the substrate holder 11-1. In this example, the substrate attachment / detachment device is composed of a rotating device 107A and a support station 107B-1. With the rotating device 107A-1 supporting the second holding member 11B-1 of the substrate holder 11-1 in a horizontal posture, the substrate is placed on the second holding member 11B-1 by the transfer robot 104-1. Thereafter, the rotating device 107A-1 rotates the second holding member 11B-1 holding the substrate to a vertical posture, presses it against the first holding member 11A-1 in a vertical posture held by the support station 107B-1, sandwiches the substrate between the first holding member 11A-1 and the second holding member 11B-1, and fixes both of them by a fixing mechanism (such as a clamp) that fixes the first holding member 11A-1 and the second holding member 11B-1 to each other. In this way, the substrate is held by the substrate holder 11-1.
[0075] The processing station 101B-1 includes a stocker 108-1 for storing and temporarily placing the substrate holder 11-1, a substrate holder cleaning device 109-1 for cleaning the substrate holder 11-1, a pre-wet module 110-1, a temporary placement table 111-1, a pre-soak rinse module 112-1, a blow module 113-1, a rinse module 114-1, and a plating station 115-1. These modules may be collectively referred to as processing modules. Some or all of the processing modules, such as the substrate holder cleaning device 109-1, the pre-wet module 110A-1, the pre-soak rinse module 112-1, the rinse module 114-1, and the plating station 115-1, can be provided with a processing tank for holding a predetermined processing liquid.
[0076] In the pre-wet module 110, the substrate is immersed in a processing liquid (e.g., pure water), and the air inside the openings (e.g., resist openings) on the substrate surface is replaced with pure water. In the pre-soak rinse module 112-1, the oxide film on the surface of the conductive layer such as the seed layer formed on the surface of the substrate is etched and removed. Also, after pre-soaking, the substrate together with the substrate holder 11-1 is washed with a cleaning liquid (e.g., pure water) as the processing liquid. In the blow module 113-1, the liquid on the washed substrate is drained. In the rinse module 114-1, the plated substrate together with the substrate holder 11-1 is washed with a cleaning liquid (e.g., pure water) as the processing liquid. In the plating station 115-1, there are a plurality of plating modules (also referred to as cells) equipped with an overflow tank (not shown). Each plating module houses one substrate inside and immerses the substrate in the plating liquid held inside to perform plating such as copper plating on the substrate surface. Here, the type of the plating liquid is not particularly limited, and various plating liquids are used according to the application. When a plurality of different plating processes are performed on one substrate, an additional plating station can be provided.
[0077]
[0078] The plating apparatus 1000-1 is located on the side of each of these devices and has a substrate holder transfer device 120-1 that transfers a substrate holder between these devices, for example, adopting a linear motor system. This substrate holder transfer device 120-1 has one or more transporters (conveyors) 121. The transporter 121-1 travels on the rail 122-1. In this example, three transporters 121-1 are provided, and two transporters 121-1 are used. Note that, depending on the specifications (the number of installed modules) of the plating apparatus 1000-1, three transporters are used. Note that one, two, or four or more transporters 121-1 may be provided, and the transfer between the above-described parts may be performed using some or all of the transporters. The configuration of this plating apparatus 1000-1 is an example, and other configurations can be adopted.
[0079] In the plating apparatus 1000-1, the transfer robot 103-1 takes out an untreated substrate from a cassette placed on the cassette table 102-1 and delivers the substrate to the transfer robot 104-1 via the temporary placement table 105A. The transfer robot 104-1 carries the substrate into the substrate attachment / detachment station 107-1. At the substrate attachment / detachment station 107-1, the substrate is attached to the substrate holder 11-1 taken out from the stocker 108-1. The substrate attached to the substrate holder 11-1 is transferred to the pre-wet module 110 by the transporter 121-1, subjected to pre-wet treatment, and then transferred to the pre-soak rinse module 112-1, where pre-soak treatment and water washing treatment are performed.
[0080] The washed substrate is transferred by the transporter 121-1 to the plating module of the plating station 115-1 and immersed in the plating solution. Here, plating treatment is performed to form a metal film on the substrate. After the plating treatment, the substrate is transferred by the transporter 121-1 to the rinse module 114-1, washed with water, then transferred to the blow module 113-1 and subjected to rough drying treatment. Thereafter, it is transferred by the transporter 121-1 to the substrate loading / unloading station 107-1, where the substrate is removed from the substrate holder 11-1. The substrate removed from the substrate holder 11-1 is transferred by the transfer robot 104-1 to the cleaning machine 105-1, subjected to cleaning and drying treatment, and then stored in a cassette on the cassette table 102-1 by the transfer robot 103-1. The substrate holder 11-1 is returned to the stocker 108-1 by the transporter 121-1.
[0081] (Other embodiments) (1) In the above embodiment, as module cleaning, contact cleaning in the plating module was taken as an example for explanation. However, when a retry occurs in the cleaning of any part in any module (such as tank cleaning in a cleaning unit, spin rinse dryer, etc.), the above embodiment may be applied. Also, when a retry occurs in substrate cleaning, the above embodiment may be applied.
[0082] (2) In the above embodiment, in one plating module, the update of the transfer time table when a cleaning retry occurs was taken as an example for explanation. However, at overlapping times, in two or more plating modules or any processing module, when a retry of module cleaning occurs, the processes of FIGS. 10 and 12 may be repeated, two or more processing modules may be made unusable, and the transfer time table may be updated. Also, when module cleaning is completed in a plurality of processing modules that have been made unusable, the processing modules in which module cleaning has been completed may be sequentially made usable, and each time, the transfer schedule may be updated based on the usable processing modules (FIGS. 10 and 13).
[0083] At least the following technical ideas can be grasped from the above embodiments. [1] According to one aspect, there is provided a substrate processing apparatus including: a plurality of processing modules that perform processing on a substrate; a transfer mechanism that transfers the substrate; and a control device that creates a transfer time table for transferring and processing the substrate between the plurality of processing modules, and controls the transfer of the substrate by the transfer mechanism and the substrate processing in the plurality of processing modules based on the transfer time table. When it is determined that a retry or extension of a cleaning process has occurred or has occurred in a first processing module among the plurality of processing modules, the control device sets the first processing module as unavailable and updates the transfer time table so that subsequent substrates do not pass through the first processing module.
[0084] According to this aspect, when a retry (including extension) of a cleaning process occurs in an arbitrary processing module, the processing module is set as unavailable, and the transfer time table is updated so that subsequent substrates do not pass through the processing module. Therefore, it is possible to suppress a decrease in the throughput of the apparatus and to suppress a situation where substrates in upstream processing modules cannot keep within the upper limit of the standing time after processing. For example, when there is a substrate scheduled to use the processing module, the transfer time table can be updated so that the substrate passes through another processing module of the same type, and a decrease in the throughput of the apparatus can be suppressed to a minimum.
[0085] [2] According to one aspect, when the control device determines that the cleaning process for which a retry or extension has been performed has been completed or has been completed, the control device sets the first processing module as available and updates the transfer time table.
[0086] According to this aspect, when cleaning is completed by cleaning after a retry or extension, the processing module is made available again, and substrate processing is performed using the processing module that can be used to the maximum extent. Therefore, it is possible to further suppress a decrease in the throughput of the apparatus.
[0087] [3]According to one embodiment, when it is determined that a retry or extension of the cleaning process occurs during the cleaning process, the first processing module is made unavailable, and the transfer time table is updated.
[0088] According to this embodiment, during the first cleaning process or during the cleaning process during a retry or extension, without waiting for the end of the cleaning process, it is determined that a retry of the cleaning process is necessary, and the transfer time table is updated by making the processing module unavailable. Therefore, the transfer time table can be updated early in a state where the processing of other substrates has not progressed as much as possible, and a more effective update of the transfer time table can be performed. Also, it is easy to ensure sufficient time for the process of updating the transfer time table.
[0089] [4]According to one embodiment, when it is determined that the cleaning process is completed without further retry or extension during the retry or extension of the cleaning process, the first processing module is made available, and the transfer time table is updated.
[0090] According to this embodiment, during the retry or extension of the cleaning process, without waiting for the end of the cleaning process, it is determined that the cleaning process is successfully completed, and the transfer time table is updated by making the processing module available. Therefore, the transfer time table can be updated early in a state where the processing of other substrates has not progressed as much as possible and a more effective update of the transfer time table can be performed. Also, it is easy to ensure sufficient time for the process of updating the transfer time table.
[0091] [5]According to one embodiment, while the first processing module is made unavailable, when it is determined that a retry or extension of the cleaning process has occurred or occurs in a second processing module among the plurality of processing modules, the second processing module is made unavailable, and the transfer time table is updated so that subsequent substrates do not pass through the first and second processing modules.
[0092] According to this embodiment, while one processing module is made inoperable, when a retry or extension of the cleaning process also occurs in other processing modules, other processing modules can also be made inoperable to update the optimal transfer time table. Thereby, even when a retry or extension of the cleaning process occurs in overlapping time periods in two or more processing modules, it is possible to suppress a decrease in the throughput of the apparatus and / or suppress the possibility of not being able to maintain the upper limit of the standing time after processing.
[0093] [6] According to one embodiment, the cleaning process is contact cleaning of a substrate holder in a plating module or tank cleaning in an arbitrary processing module.
[0094] According to this embodiment, in various cleaning processes including contact cleaning of a substrate holder in a plating module, the transfer time table can be updated to a more suitable state in response to the occurrence of a retry or extension.
[0095] [7] A method for controlling a substrate processing apparatus including a plurality of processing modules that perform processing on a substrate and a transfer machine that transfers the substrate, the method including creating a transfer time table for transferring and processing the substrate among the plurality of processing modules, controlling the transfer of the substrate by the transfer machine and the substrate processing in the plurality of processing modules based on the transfer time table, when it is determined that a retry or extension of a cleaning process has occurred or has occurred in a first processing module among the plurality of processing modules, making the first processing module inoperable and updating the transfer time table. A method including the above is provided.
[0096] [8]According to one aspect, a storage medium storing a program for causing a computer to execute a method of controlling a substrate processing apparatus including a plurality of processing modules that perform processing on a substrate and a transfer machine that transfers the substrate, the method including: creating a transfer time table for transferring and processing the substrate among the plurality of processing modules; controlling the transfer of the substrate by the transfer machine and the substrate processing in the plurality of processing modules based on the transfer time table; when it is determined that a retry or extension of a cleaning process has occurred or has occurred in a first processing module among the plurality of processing modules, disabling the first processing module and updating the transfer time table. A storage medium storing a program for causing a computer to execute the above is provided.
[0097] As described above, embodiments of the present invention have been described based on several examples. However, the above-described embodiments of the invention are for facilitating understanding of the present invention and do not limit the present invention. The present invention can be changed and improved without departing from its gist, and it goes without saying that equivalents of the present invention are included. Also, within the scope of solving at least a part of the above-described problems or achieving at least a part of the effects, any combination or omission of each component described in the claims and the specification is possible.
Description of Reference Numerals
[0098] 10 plating bath 16 anode 17 resistor 20 overflow bath 30 substrate holder 31 first holding member 32 second holding member 40 rotation mechanism 45 tilting mechanism 46 elevating mechanism 50 contact 55 seal member 100 load port 110 transfer robot 120 aligner 130 Actuating machine 200 Pre-wet module 300 Presoak module 400 Plating module 500 Cleaning module 600 Spin rinse dryer 700 Conveyor (transport machine) 800 Control module 810 Device computer 811 Operation screen application 812 Conveyor scheduler 820 Device controller 1000 Plating device PW1 - PW2 Pre-wet module PL1 - PL4 Plating module RD1 - RD2 Spin rinse dryer
Claims
1. A substrate processing apparatus, comprising: a plurality of processing modules that perform processing on a substrate; a transporter that transports the substrate; a control device that creates a transport time table for transporting and processing the substrate between the plurality of processing modules, and controls the transport of the substrate by the transporter and the substrate processing in the plurality of processing modules based on the transport time table; wherein when the control device determines that a retry or extension of a cleaning process has occurred or occurs in a first processing module among the plurality of processing modules, the control device makes the first processing module unavailable and updates the transport time table so that subsequent substrates do not pass through the first processing module.
2. The substrate processing apparatus according to claim 1, wherein when the control device determines that the cleaning process for which a retry or extension has been performed has been completed or has completed, the control device makes the first processing module available and updates the transport time table.
3. The substrate processing apparatus according to claim 1 or 2, wherein when it is determined that a retry or extension of the cleaning process occurs during the cleaning process, the control device makes the first processing module unavailable and updates the transport time table.
4. The substrate processing apparatus according to claim 2, wherein when the control device determines that the cleaning process has been completed without further retry or extension during the retry or extension of the cleaning process, the control device makes the first processing module available and updates the transport time table.
5. The substrate processing apparatus according to claim 1 or 2, wherein when the control device determines that a retry or extension of a cleaning process has occurred or occurs in a second processing module among the plurality of processing modules while the first processing module is unavailable, the control device makes the second processing module unavailable and updates the transport time table so that subsequent substrates do not pass through the first and second processing modules.
6. The substrate processing apparatus according to claim 1 or 2, wherein the cleaning process is contact cleaning of a substrate holder in a plating module or tank cleaning in any processing module.
7. A method for controlling a substrate processing apparatus including a plurality of processing modules that perform processing on a substrate and a transfer machine that transfers the substrate, creating a transfer time table for transferring and processing the substrate among the plurality of processing modules, and controlling the transfer of the substrate by the transfer machine and the substrate processing in the plurality of processing modules based on the transfer time table; when it is determined that a retry or extension of a cleaning process has occurred or has occurred in a first processing module among the plurality of processing modules, disabling the first processing module and updating the transfer time table; A method including the above.
8. A storage medium storing a program for causing a computer to execute a method for controlling a substrate processing apparatus including a plurality of processing modules that perform processing on a substrate and a transfer machine that transfers the substrate, creating a transfer time table for transferring and processing the substrate among the plurality of processing modules, and controlling the transfer of the substrate by the transfer machine and the substrate processing in the plurality of processing modules based on the transfer time table; when it is determined that a retry or extension of a cleaning process has occurred or has occurred in a first processing module among the plurality of processing modules, disabling the first processing module and updating the transfer time table; A storage medium storing a program for causing a computer to execute the above.
Citation Information
Patent Citations
Leak detection method and plating device
JP7142812B1