Substrate processing apparatus and program
The substrate processing apparatus optimizes loading order and timing through a control device to reduce total processing time and prevent substrate instability by dynamically adjusting the processing sequence and resource allocation.
Patent Information
- Application Number
- JP2022125311
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-08-05
- Publication Date
- 2026-01-08
- Estimated Expiration
- 2042-08-05
AI Technical Summary
Existing substrate processing apparatuses have fixed loading orders that do not allow for dynamic adjustments, leading to increased total processing time due to waiting states and instability of substrates, particularly when copper substrates experience corrosion during prolonged waiting times.
A substrate processing apparatus with a control device that calculates and adjusts the loading order and timing of substrates based on processing recipes, creating timetables to minimize waiting times and optimize the use of multiple polishing and cleaning units, allowing for substitution of polishing apparatuses and considering past performance data.
Reduces total processing time by minimizing waiting states and substrate instability, preventing corrosion, and optimizing the use of shared processing resources, while accommodating maintenance and transport disruptions.
Smart Images

Figure 0007795983000001 
Figure 0007795983000002 
Figure 0007795983000003
Abstract
Description
[Technical Field]
[0001] The present invention relates to a substrate processing apparatus and a program. [Background technology]
[0002] In recent years, substrate processing apparatuses for performing various processes on substrates have become known (see, for example, Patent Document 1). Specifically, such substrate processing apparatuses include a polishing unit including at least one polishing device that polishes a substrate, a cleaning unit including at least one cleaning device that cleans the substrate polished by the polishing unit, a transport unit including at least one transport device that transports the substrate, and a control device that controls the substrate processing apparatus.
[0003] When multiple substrates are continuously transported in a substrate processing apparatus, the substrates may be put into a waiting state due to waiting for the preceding substrate to be processed or waiting for an available processing apparatus shared with substrates transported along a different route. For example, if a substrate is put into a waiting state between the start of a polishing process and the end of a cleaning process, the state of the substrate may become unstable due to changes over time (e.g., corrosion) or external disturbances (e.g., dust). In particular, if the substrate contains copper (Cu), the impact of corrosion will be significant if the waiting time between the end of polishing and the start of cleaning is long.
[0004] In this regard, Patent Document 1 proposes a technique for controlling the timing of loading multiple substrates into the substrate processing apparatus based on a timetable that associates the processing completion times of the polishing apparatus, cleaning apparatus, and transport apparatus for each of multiple substrates loaded into the substrate processing apparatus so that a waiting state does not occur between the time the substrate is loaded into the substrate processing apparatus and the time the cleaning process is completed. This technique can reduce the waiting state of substrates between the time the substrate is loaded into the substrate processing apparatus and the time the cleaning process is completed. [Prior art documents] [Patent documents]
[0005] [Patent Document 1] Patent No. 6370084 Summary of the Invention [Problem to be solved by the invention]
[0006] However, in the above-mentioned conventional technology, the order in which substrates are loaded into the substrate processing apparatus is fixed (in other words, the configuration is not such that calculations can be performed while changing the order in which substrates are loaded into the substrate processing apparatus). Therefore, the conventional technology has room for improvement in terms of reducing the time from the start of processing of the first substrate loaded into the substrate processing apparatus to the end of processing of the last substrate loaded into the substrate processing apparatus, i.e., the "total processing time" of multiple substrates.
[0007] Therefore, an object of the present invention is to provide a technique that can reduce the total processing time for a plurality of substrates. [Means for solving the problem]
[0008] (Aspect 1) In order to achieve the above object, a substrate processing apparatus according to one aspect of the present invention is a substrate processing apparatus including a polishing unit including at least one polishing device for polishing a substrate, and a cleaning unit including at least one cleaning device for cleaning the substrate polished by the polishing unit. a transfer unit including at least one transfer device for transferring and processing the substrates; and a control device for controlling the substrate processing apparatus, wherein the control device performs an arithmetic control process for calculating a pattern for changing the order in which multiple substrates are loaded into the substrate processing apparatus based on a processing recipe that predetermines the processing contents to be performed on each of the multiple substrates loaded into the substrate processing apparatus; a timetable creation control process for creating a timetable that associates processing end times in the polishing apparatus, the cleaning apparatus, and the transfer device for each of the patterns obtained by the arithmetic control process so that a waiting state does not occur between the time when the substrate is loaded into the substrate processing apparatus and the time when the cleaning process is completed; a selection control process for selecting, from the timetables obtained by the timetable creation control process, a timetable that minimizes the time from the start of processing of the first substrate loaded into the substrate processing apparatus to the end of processing of the last substrate loaded into the substrate processing apparatus; and a timing control process for controlling the timing at which multiple substrates are loaded into the substrate processing apparatus based on the timetable selected by the selection control process.
[0009] According to this aspect, it is possible to reduce the waiting time of substrates between when they are loaded into the substrate processing apparatus and when the cleaning process is completed, while also reducing the time from when the processing of the first substrate loaded into the substrate processing apparatus begins to when the processing of the last substrate loaded into the substrate processing apparatus ends, i.e., the total processing time for multiple substrates.
[0010] (Aspect 2) In the above-mentioned aspect 1, the at least one polishing apparatus includes a plurality of polishing apparatuses capable of performing the same type of polishing process, and the plurality of polishing apparatuses includes a specific polishing apparatus group consisting of a plurality of polishing apparatuses that can be replaced with each other, and when, in the process recipe, the process contents to be performed on some of the plurality of substrates input into the substrate processing apparatus include polishing process by the specific polishing apparatus group, the control device executes a process recipe change control process, and in the process recipe change control process, the control device creates an additional process recipe that specifies the process contents when the plurality of polishing apparatuses included in the specific polishing apparatus group are replaced with other plurality of polishing apparatuses for substrates that are input into the substrate processing apparatus after substrates that, among the plurality of substrates input into the substrate processing apparatus, do not include polishing process by the specific polishing apparatus group, and adds the created additional process recipe to the process recipe, and the control device may perform the arithmetic control process based on the process recipe obtained in the process recipe change control process.
[0011] According to this aspect, the total processing time for multiple substrates can be reduced by further considering additional processing recipes when multiple polishing apparatuses included in a specific polishing apparatus group are replaced with other polishing apparatuses.
[0012] (Aspect 3) In the timetable creation control process according to aspect 1 or 2 above, the control device may create the timetable based on past performance data of the time required for processing in at least one of the polishing device and the cleaning device, and the time required for transport processing from the polishing unit to the cleaning unit in the transport device.
[0013] (Aspect 4) In the timetable creation control process according to any one of the above aspects 1 to 3, when creating the timetable for a substrate to be newly loaded into the substrate processing apparatus, the control device calculates a tentative arrival time of the newly loaded substrate at the polishing apparatus, the cleaning apparatus, and the transport apparatus, compares the tentative arrival time with the processing end time or scheduled processing end time of the substrate previously loaded into the substrate processing apparatus at the polishing apparatus, the cleaning apparatus, and the transport apparatus, and if there is a tentative arrival time that is earlier than the processing end time or scheduled processing end time at the same or competing processing apparatus, calculates the difference between the earlier tentative arrival time and the processing end time or scheduled processing end time as the tentative arrival time at the polishing apparatus, the cleaning apparatus, and the transport apparatus. The actual arrival time may be generated by adding the arrival time to the actual arrival time, and the timetable may be generated based on the actual arrival time.
[0014] (Aspect 5) In the timetable creation control process according to aspect 4 above, if there is no tentative arrival time in the same or competing processing device that is earlier than the processing end time or the scheduled processing end time, the control device may create the timetable based on the tentative arrival time.
[0015] (Aspect 6) In order to achieve the above-mentioned object, one aspect of the present invention provides a program for causing a computer to execute control processes, including: a calculation control process for calculating a pattern for changing the order in which multiple substrates are loaded into the substrate processing apparatus based on a processing recipe that predefines the processing contents to be performed on each of the multiple substrates loaded into the substrate processing apparatus; a timetable creation control process for creating a timetable that associates processing end times in polishing apparatuses, cleaning apparatuses, and transport apparatuses of the substrate processing apparatus for each of the patterns obtained by the calculation control process, so that no waiting state occurs between the time the substrate is loaded into the substrate processing apparatus and the time the cleaning process is completed; a selection control process for selecting, from the timetables obtained by the timetable creation control process, a timetable that minimizes the time from the start of processing of the first substrate loaded into the substrate processing apparatus to the end of processing of the last substrate loaded into the substrate processing apparatus; and a timing control process for controlling the timing of loading multiple substrates into the substrate processing apparatus based on the timetable selected by the selection control process.
[0016] According to this aspect, it is possible to reduce the waiting time of substrates between when they are loaded into the substrate processing apparatus and when the cleaning process is completed, while also reducing the time from when the processing of the first substrate loaded into the substrate processing apparatus begins to when the processing of the last substrate loaded into the substrate processing apparatus ends, i.e., the total processing time for multiple substrates. [Brief explanation of the drawings]
[0017] [Figure 1] 1 is a plan view showing an overall configuration of a substrate processing apparatus according to an embodiment; [Figure 2] 1 is a diagram showing an example of a transport route of a substrate from when the substrate is loaded into the substrate processing apparatus according to an embodiment until the cleaning process is completed; [Figure 3] 1 is a diagram showing an example of a transport route of a substrate from when the substrate is loaded into the substrate processing apparatus according to an embodiment until the cleaning process is completed; [Figure 4] 10 is an example of a flowchart illustrating a standby state reduction control process according to an embodiment. [Figure 5]FIG. 1 is a schematic diagram for explaining the process of creating a timetable. [Figure 6] 10 is an example of a timetable created in step S108 of the standby state reduction control process according to the embodiment. [Figure 7] 10 is an example of a flowchart of an overall time reduction control process according to the embodiment. [Figure 8] FIG. 3 is a diagram showing an example of a processing recipe for substrates No. 1 to No. 6 used in the embodiment. [Figure 9] FIG. 10 is a diagram for explaining a timetable obtained in step S230 according to the embodiment. [Figure 10] FIG. 10 is a diagram showing an example of a processing recipe for substrates No. 1 to No. 5 used in a modified example of the embodiment. [Figure 11] 10 is an example of a flowchart for explaining a control process ("process recipe change control process") according to a modified example of the embodiment. [Figure 12] FIG. 10 is a diagram for explaining a timetable obtained in step S230 according to a modified example of the embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0018] A substrate processing apparatus according to an embodiment of the present invention will be described below with reference to the drawings. In the following, a CMP (Chemical Mechanical Polishing) apparatus will be used as an example of the substrate processing apparatus, but the specific example of the substrate processing apparatus is not limited to the CMP apparatus.
[0019] <Substrate processing equipment> Fig. 1 is a plan view showing the overall configuration of a substrate processing apparatus according to an embodiment. As shown in Fig. 1, the substrate processing apparatus has a substantially rectangular housing 1, the interior of which is partitioned by partition walls 1a and 1b into a load / unload unit 2, a polishing unit 3, and a cleaning unit 4. The load / unload unit 2, the polishing unit 3, and the cleaning unit 4 are each assembled independently and evacuated independently. The substrate processing apparatus also has a control device 5 for controlling the substrate processing apparatus.
[0020] The control device 5 includes a computer 5c having a processor 5a and a storage device 5b. The storage device 5b stores programs, data, and the like. The storage device 5b includes a storage medium readable by the processor 5a of the computer 5c. An example of this storage medium is a read-only memory (ROM). The control device 5 executes control processing related to the substrate processing apparatus by operating the processor 5a based on commands from the program stored in the storage device 5b.
[0021] <Load / Unload Unit> The load / unload unit 2 has two or more (four in this embodiment) front loading sections 20 on which substrate cassettes for stocking a large number of substrates are placed. These front loading sections 20 are disposed adjacent to the housing 1 and are arranged along the width direction (direction perpendicular to the longitudinal direction) of the substrate processing apparatus. The front loading sections 20 are capable of mounting carriers for storing substrates, such as open cassettes, SMIF (Standard Manufacturing Interface) pods, or FOUPs (Front Opening Unified Pods). Here, SMIFs and FOUPs are airtight containers that store substrate cassettes and are covered with partitions to maintain an environment independent from the external space.
[0022] The load / unload unit 2 is also equipped with an ITM (In-line Thickness Monitor) 24 as a measuring device for measuring film thickness and the like on the surface of the substrate. The load / unload unit 2 is also equipped with a transfer robot 22 that can move along the row of front load sections 20. The transfer robot 22 is capable of accessing the substrate cassettes loaded in the front load sections 20. Each transfer robot 22 is equipped with two hands, one above the other. The upper hand is used to return the processed substrate to the substrate cassette. The lower hand is used to remove the unprocessed substrate from the substrate cassette. Furthermore, the lower hand of the transfer robot 22 is configured to be able to rotate about its axis to invert the substrate.
[0023] Because the load / unload unit 2 is the area that needs to be kept the cleanest, the interior of the load / unload unit 2 is always maintained at a higher pressure than the exterior of the substrate processing apparatus, the polishing unit 3, and the cleaning unit 4. The polishing unit 3 is the dirtiest area because it uses slurry as the polishing liquid. Therefore, a negative pressure is created inside the polishing unit 3, and this pressure is maintained lower than the internal pressure of the cleaning unit 4. The load / unload unit 2 is provided with a filter fan unit (not shown) having a clean air filter such as a HEPA filter, ULPA filter, or chemical filter, and this filter fan unit always blows out clean air from which particles, toxic vapors, and toxic gases have been removed.
[0024] <Polishing unit> The polishing unit 3 is an area where substrate polishing (planarization) is performed, and includes a first polishing apparatus 3A (Poli. A), a second polishing apparatus 3B (Poli. B), a third polishing apparatus 3C (Poli. C), and a fourth polishing apparatus 3D (Poli. D). The first polishing apparatus 3A, the second polishing apparatus 3B, the third polishing apparatus 3C, and the fourth polishing apparatus 3D are arranged along the longitudinal direction of the substrate processing apparatus, as shown in FIG.
[0025] The first polishing apparatus 3A includes a polishing table with a polishing pad attached, a top ring for holding a substrate and polishing it while pressing it against the polishing pad on the polishing table, a polishing liquid supply nozzle for supplying a polishing liquid or a dressing liquid (e.g., pure water) to the polishing pad, a dresser for dressing the polishing surface of the polishing pad, and an atomizer for spraying a mist of a mixed fluid of a liquid (e.g., pure water) and a gas (e.g., nitrogen gas) or a liquid (e.g., pure water) onto the polishing surface. The second polishing apparatus 3B, the third polishing apparatus 3C, and the fourth polishing apparatus 3D also have a configuration similar to that of the first polishing apparatus 3A.
[0026] <Transport unit> Next, a transfer unit (transfer mechanism) for transferring substrates will be described. As shown in Fig. 1, a first linear transporter 6 is disposed adjacent to the first polishing apparatus 3A and the second polishing apparatus 3B. This first linear transporter 6 is a mechanism for transferring substrates between four transfer positions (referred to as a first transfer position LTP1, a second transfer position LTP2, a third transfer position LTP3, and a fourth transfer position LTP4, in order from the load / unload unit side) along the direction in which the first polishing apparatus 3A and the second polishing apparatus 3B are arranged.
[0027] A second linear transporter 7 is disposed adjacent to the third polishing apparatus 3C and the fourth polishing apparatus 3D. The second linear transporter 7 is a mechanism that transports substrates between three transfer positions (referred to as a fifth transfer position LTP5, a sixth transfer position LTP6, and a seventh transfer position LTP7, in that order from the load / unload unit side) along the direction in which the third polishing apparatus 3C and the fourth polishing apparatus 3D are arranged.
[0028] Substrates are transported to the first polishing apparatus 3A and the second polishing apparatus 3B by the first linear transporter 6. The top ring of the first polishing apparatus 3A moves between the polishing position and the second transfer position LTP2 by swinging the top ring head. Therefore, the substrate is transferred to and from the top ring at the second transfer position LTP2. Similarly, the top ring of the second polishing apparatus 3B moves between the polishing position and the third transfer position LTP3, and the substrate is transferred to and from the top ring at the third transfer position LTP3. The top ring of the third polishing apparatus 3C moves between the polishing position and the sixth transfer position LTP6, and the substrate is transferred to and from the sixth transfer position LTP6. The top ring of the fourth polishing apparatus 3D moves between the polishing position and the seventh transfer position LTP7, and the substrate is transferred to and from the top ring at the seventh transfer position LTP7.
[0029] A lifter 11 for receiving a substrate from the transfer robot 22 is disposed at the first transfer position LTP1. The substrate is handed over from the transfer robot 22 to the first linear transporter 6 via this lifter 11. A shutter (not shown) is provided on the partition wall 1a, positioned between the lifter 11 and the transfer robot 22, and the shutter is opened during substrate transfer so that the substrate is handed over from the transfer robot 22 to the lifter 11. A swing transporter (STP) 12 is disposed between the first linear transporter 6, the second linear transporter 7, and the cleaning unit 4. This swing transporter 12 has a hand that is movable between the fourth transfer position LTP4 and the fifth transfer position LTP5, and the transfer of the substrate from the first linear transporter 6 to the second linear transporter 7 is performed via the swing transporter 12. The cleaning is performed by a transporter 12. The substrate is transported to the third polishing apparatus 3C and / or the fourth polishing apparatus 3D by a second linear transporter 7. The substrate polished in the polishing unit 3 is transported to the cleaning unit 4 via a swing transporter 12. The transport unit is also provided with a substrate temporary rest (WS1) 180.
[0030] The above-mentioned first linear transporter 6, second linear transporter 7, transport robot 22, lifter 11, swing transporter 12, and the transport robots RB1U, RB1L, and RB2 described below are examples of a "transport device" that transports and processes substrates.
[0031] <Cleaning unit> The cleaning unit 4 is divided into a first cleaning chamber 190, a first transfer chamber 191, a second cleaning chamber 192, a second transfer chamber 193, and a third cleaning chamber 194. Two cleaning apparatuses CL1A and CL1B and a substrate temporary rest WS2 are disposed in the first cleaning chamber 190. Two cleaning apparatuses CL2A and CL2B and a substrate temporary rest WS3 are disposed in the second cleaning chamber 192. Two cleaning apparatuses CL3A and CL3B for cleaning substrates are disposed in the third cleaning chamber 194. The cleaning apparatuses CL3A and CL3B are isolated from each other. The cleaning apparatuses CL1A, CL1B, CL2A, CL2B, CL3A, and CL3B are cleaning devices that clean substrates using a cleaning liquid.
[0032] The first transfer chamber 191 is equipped with transfer robots RB1U and RB1L, and the second transfer chamber 193 is equipped with a transfer robot RB2. The transfer robots RB1U and RB1L operate to transfer substrates between the temporary placement table 180, the cleaning apparatuses CL1A and CL1B, the temporary placement table WS2, and the cleaning apparatuses CL2A and CL2B. The transfer robot RB2 operates to transfer substrates between the cleaning apparatuses CL2A and CL2B, the temporary placement table WS3, and the cleaning apparatuses CL3A and CL3B. The transfer robot RB2 only transfers cleaned substrates, and is therefore equipped with only one hand. The transfer robot 22 removes substrates from the cleaning apparatuses CL3A and CL3B and returns the substrates to the substrate cassette.
[0033] <Reducing waiting time for boards> Next, a description will be given of reducing the waiting time of the substrate from the start of the polishing process until the end of the cleaning process.
[0034] First, the cause of the substrate waiting state will be explained. Figures 2 and 3 are diagrams showing an example of a substrate transport route from when the substrate is loaded into the substrate processing apparatus until the cleaning process is completed. In Figures 2 and 3, the description of the transport unit that transports the substrate between each processing apparatus is simplified. Also, "TR" shown in Figures 2 and 3 means transport.
[0035] As shown in Figures 2 and 3, when there are two systems each for polishing and cleaning, the degree of freedom in substrate transport routes is high. Also, as shown in Figures 2 and 3, a process recipe that performs cleaning without polishing is possible. Furthermore, as shown in Figure 3, after cleaning processing is completed in cleaning equipment CL2A, the substrate returns once and is transported to cleaning equipment CL2B in another system, making complex substrate transport routes possible.
[0036] In this way, when the cleaning unit 4 has a plurality of cleaning devices that can perform cleaning processes in parallel, the transport route of the substrates within the cleaning unit becomes complicated, and there is a risk that the substrates will have to wait within the cleaning unit. Once a substrate has to wait within the cleaning unit, there is a risk that subsequent substrates that are scheduled to pass through the location where the substrate is located will also have to wait.
[0037] In contrast, in this embodiment, the control device 5 creates a timetable so that a waiting state does not occur between the time when a substrate is loaded into the substrate processing apparatus and the time when the cleaning process is completed. The timetable is a table that associates the processing end times or scheduled processing end times in the polishing apparatus, cleaning apparatus, and transport apparatus for each of the multiple substrates loaded into the substrate processing apparatus. The control device 5 controls the loading timing of the multiple substrates into the substrate processing apparatus based on the timetable.
[0038] Specifically, the control device 5 according to this embodiment executes a standby state reduction control process described below. Fig. 4 is an example of a flowchart showing the "standby state reduction control process" according to this embodiment. First, the control device 5 predicts transport routes for all substrates to be loaded into the substrate processing apparatus based on the process recipe (step S101).
[0039] Specifically, a processing recipe that defines the processing to be performed on each of a plurality of substrates that are loaded into the substrate processing apparatus is prepared in advance and stored in the storage device 5b.
[0040] More specifically, this processing recipe specifies, for each substrate, the type of unit to be used, the type of processing equipment to be used in each unit (e.g., the type of polishing equipment to be used), and the time required for processing by the processing equipment to be used (i.e., processing time). Specifically, this processing time may be a predicted processing time. For example, the predicted time for polishing processing by the polishing equipment to be used may be used as the processing time of the polishing equipment to be used. Based on this processing recipe, the control device 5 predicts transport routes for all substrates to be loaded into the substrate processing apparatus.
[0041] Next, the control device 5 predicts the operation time for all substrates to be loaded into the substrate processing apparatus (step S102). Specifically, the control device 5 predicts the operation time for each substrate based on the predicted time set in the processing recipe or past performance values. This predicted operation time is used when creating a timetable. That is, the control device 5 creates a timetable based on past performance data of the time required for processing in at least one of the polishing apparatus and the cleaning apparatus, and the time required for transfer processing from the polishing unit 3 to the cleaning unit 4 in the transfer apparatus.
[0042] Next, the control device 5 calculates the arrival time of each substrate at each processing device (polishing device, transport device, and cleaning device) based on the operation time of each substrate predicted in step S102 (step S103), and then calculates the standby time of each substrate at each processing device (step S104).
[0043] This point will be explained using the drawings. Figure 5 is a schematic diagram for explaining the process of creating a timetable. Figure 5 shows the process of creating a timetable for substrate No. 4, which is newly loaded into the substrate processing apparatus, after timetables have already been created for substrates No. 1 to No. 3.
[0044] 5, timetable 210 associates the processing end times or estimated processing end times for each of substrates No. 1 to No. 3 at the polishing apparatus (Poli. A), cleaning apparatuses (CL1A, CL2A), and transport apparatuses (LTP3, WS1, RB1L, RB1U). On the other hand, when creating a timetable for substrate No. 4 newly loaded into the substrate processing apparatus, control device 5 calculates tentative arrival times for newly loaded substrate No. 4 at the polishing apparatus, cleaning apparatus, and transport apparatus. Tentative arrival timetable 220 associates the estimated arrival times for substrate No. 4 at the polishing apparatus (Poli. A), cleaning apparatuses (CL1A, CL2A), and transport apparatuses (LTP3, WS1, RB1L, RB1U).
[0045] The control device 5 calculates the tentative arrival time (tentative arrival time table 220) and the time to be input to the substrate processing apparatus in advance. The processing end time or estimated processing end time (timetable 210) of the entered substrate in the polishing apparatus, cleaning apparatus, and transport apparatus is compared. In this example, the estimated processing end time (0:04:35) of substrate No. 3 in RB1U is compared with the estimated arrival time (0:04:10) at WS1, a processing apparatus that competes with the processing at RB1U. The estimated arrival time at WS1 is 25 seconds earlier. In other words, if substrate No. 4 is introduced into the substrate processing apparatus according to the provisional arrival timetable 220, substrate No. 4 will wait 25 seconds at WS1. Note that competing processing apparatuses are, for example, processing apparatuses such as WS1 and RB1U, where one processing apparatus (WS1) requires the other processing apparatus (RB1U) to operate (transfer the substrate for transport) before the other processing apparatus (RB1U) can operate (receive the substrate from WS1).
[0046] As shown in FIG. 4, the control device 5 determines whether there is a waiting time (step S105), and if there is a waiting time (step S105, Yes), searches for a processing device with the longest waiting time (step S106).
[0047] 5, as mentioned above, a waiting time of 25 seconds occurs between the related processing equipment, RB1U for substrate No. 3 and WS1 for substrate No. 4. In addition, when the estimated processing time at CL1A for substrate No. 3 (0:04:30) is compared with the arrival time at CL1A for substrate No. 4 (0:04:15), the estimated arrival time at CL1A is 15 seconds earlier, resulting in a waiting time of 15 seconds.
[0048] In this case, the control device 5 recognizes that the longest waiting time is 25 seconds, and that the processing device with the longest waiting time is WS1 for substrate No. 4. In other words, when there are multiple early tentative arrival times (for example, 15 seconds and 25 seconds), the control device 5 generates the actual arrival time by adding the difference (25 seconds) between the earliest tentative arrival time and the processing end time or scheduled processing end time to the tentative arrival time at the polishing device, cleaning device, and transport device.
[0049] Next, as shown in Fig. 4, the control device 5 generates an actual arrival timetable 230 by adding the longest waiting time to the tentative arrival timetable 220 (step S107). That is, as shown in Fig. 5, the control device 5 adds the longest waiting time (25 seconds) to each processing device in the tentative arrival timetable 220. For example, the arrival time of board No. 4 at LTP3 was 0:04:00 in the tentative arrival timetable 220, but is now 0:04:25 in the actual arrival timetable 230. Also, the arrival time of board No. 4 at WS1 was 0:04:10 in the tentative arrival timetable 220, but is now 0:04:35 in the actual arrival timetable 230.
[0050] In this way, when there is a tentative arrival time at the same or competing processing device that is earlier than the processing end time or scheduled processing end time, the control device 5 creates the actual arrival time by adding the difference between the earlier tentative arrival time and the processing end time or scheduled processing end time to the tentative arrival time at the polishing device, cleaning device, and transport device.
[0051] 4, the control device 5 creates a timetable based on the actual arrival times (actual arrival timetable 230) created in step S107 (step S108). In other words, the actual arrival timetable 230 associates the arrival times of board No. 4 at each processing device. Therefore, the control device 5 adds the processing time at each processing device to the actual arrival timetable 230 to create a timetable that associates the processing end time or scheduled processing end time at each processing device.
[0052] On the other hand, if it is determined in step S105 that there is no waiting time (step S105, No), the control device 5 creates a tentative arrival timetable without creating the actual arrival timetable 230. 220 (step S108). That is, if there is no tentative arrival time that is earlier than the processing end time or the scheduled processing end time in the same or competing processing device, the control device 5 creates a timetable based on the tentative arrival time.
[0053] An example of the timetable created in step S108 of the standby state reduction control process shown in Fig. 4 described above is shown in Fig. 6. Specifically, timetable 240 shown in Fig. 6 associates the start time (Start) of a series of processes, the current position (Pos) of the substrate, and the end time or scheduled end time of the process in each processing apparatus for substrates No. 1 to No. 7 loaded into the substrate processing apparatus. Timetable 240 is a table designed to prevent a standby state from occurring between the time the substrate is loaded into the substrate processing apparatus and the time the cleaning process is completed. Control device 5 controls the loading timing of multiple substrates into the substrate processing apparatus based on this timetable 240.
[0054] According to the present embodiment as described above, by executing the standby state reduction control process described above, it is possible to achieve the following advantageous effects.
[0055] Specifically, according to this embodiment, a timetable is created by calculating the transfer times for all substrates loaded into the substrate processing apparatus to all processing apparatuses along the transfer path. This prevents substrates from having to wait for the use of shared processing apparatuses and controls the transfer start timing and route so that all processes from the start of polishing to the end of cleaning are completed in the shortest time possible. This reduces the waiting time for substrates in the substrate processing apparatus. As a result, this embodiment prevents substrates from becoming unstable due to changes over time (e.g., corrosion) or external disturbances (e.g., dust). In particular, if the substrate contains copper (Cu), the long waiting time between the end of polishing and the start of cleaning increases the impact of corrosion. However, reducing the waiting time can prevent copper corrosion.
[0056] Furthermore, according to the substrate processing apparatus of this embodiment (particularly the control device 5), if a processing device is unable to process substrates due to maintenance on some of the processing devices, for example, it is possible to create a route that bypasses the processing device undergoing maintenance, etc.
[0057] Furthermore, the substrate processing apparatus of this embodiment can appropriately update a timetable once it has been created. For example, the control device 5 can calculate the time difference between the actual arrival time of a substrate at each processing apparatus and the predicted arrival time, and update the timetable for subsequent substrates (substrates affected by delays) that pass through that processing apparatus. The control device 5 can also feed back delay information to substrates that have already been introduced into the substrate processing apparatus. Note that if the time difference between the actual arrival time of a substrate and the predicted arrival time is smaller than a threshold value (e.g., 0.5 seconds), the time difference can be considered an error, and therefore feedback of the delay information can be omitted.
[0058] Furthermore, in the substrate processing apparatus of this embodiment, if substrate transport is temporarily stopped due to a malfunction or a transport stop function of the substrate processing apparatus, the control device 5 can continue controlled transport by recreating the timetable when transport is resumed. When recreating the timetable, the control device 5 starts from the downstream side of the substrate transport route. Furthermore, if a substrate that was introduced into the substrate processing apparatus is removed from the substrate processing apparatus due to, for example, an abnormality in the substrate, the control device 5 can delete the substrate from the timetable, excluding it from the control target, and can regenerate the timetable.
[0059] Furthermore, in the substrate processing apparatus of this embodiment, when substrates share a processing apparatus, calculations are performed and control is performed so that the next substrate is processed after the preceding substrate, but if an interrupt is possible without changing the timetable, an interrupt timetable can be created so that the subsequent substrate can be processed before the preceding substrate.
[0060] Furthermore, in the substrate processing apparatus of this embodiment, once a timetable has been created, if the substrate transport route changes significantly due to maintenance of the processing apparatus or the like, it takes a long time to recreate the timetable. Therefore, in such a case, the control device 5 can suspend the introduction of new substrates until the substrates in the substrate processing apparatus are unloaded from the substrate processing apparatus without recreating the timetable. Furthermore, if creating or recreating the timetable takes a long time, the timetable creation or recreating function can be disabled.
[0061] Furthermore, the substrate processing apparatus of this embodiment can visualize the transfer status of multiple substrates so that an operator can monitor the transfer status of multiple substrates. For example, the control device 5 can display the created timetable on an output interface (such as a monitor) of the substrate processing apparatus. The control device 5 can also graph the created timetable and display it in real time on the output interface.
[0062] However, the above-described standby state reduction control process is configured such that the order in which substrates are loaded into the substrate processing apparatus is fixed (in other words, the process is not configured to allow calculations to be performed while changing the order in which substrates are loaded into the substrate processing apparatus). Therefore, there is room for improvement in terms of reducing the time from the start of processing of the first substrate loaded into the substrate processing apparatus to the end of processing of the last substrate loaded into the substrate processing apparatus, i.e., the "total processing time" for multiple substrates. Therefore, in this embodiment, the control process described below (referred to as the "total time reduction control process") is executed.
[0063] <Overall time reduction control process> Fig. 7 is an example of a flowchart of the overall time reduction control process according to this embodiment. Fig. 8 is a diagram showing an example of the process recipes for substrates No. 1 to No. 6 used in this embodiment.
[0064] 7, first, the control device 5 executes a calculation control process in step S210. In this calculation control process, the control device 5 calculates a pattern for rearranging the order in which substrates are loaded into the substrate processing apparatus, based on a processing recipe that predetermines the processing content to be performed on each of the substrates loaded into the substrate processing apparatus.
[0065] As a specific example, the control device 5 according to the present embodiment calculates all patterns for changing the order in which substrates are introduced into the substrate processing apparatus for multiple substrates (substrate No. 1 to substrate No. 6) based on a processing recipe such as that illustrated in FIG. 8. For example, the control device 5 calculates all patterns for changing the order in which substrates are introduced into the substrate processing apparatus, such as a "first pattern" in which substrates are introduced in the order of No. 1 → No. 2 → No. 3 → No. 4 → No. 5 → No. 6, a "second pattern" in which substrates are introduced in the order of No. 1 → No. 3 → No. 2 → No. 4 → No. 5 → No. 6, a "third pattern" in which substrates are introduced in the order of No. 1 → No. 4 → No. 2 → No. 3 → No. 5 → No. 6, and so on. In this embodiment, there are six factorial combinations of exchange patterns ("6 × 5 × 4 × 3 × 2 × 1"). Therefore, in step S210, six factorial exchange patterns are obtained.
[0066] In step S210, the control device 5 may calculate some of the patterns for changing the loading order rather than all of the patterns for changing the loading order (in other words, it may calculate patterns for changing the loading order for some of the multiple substrates loaded into the substrate processing apparatus). As an example, the loading order of substrates No. 1 to No. 3 into the substrate processing apparatus may be fixed, and all patterns for changing the loading order only for substrates No. 4 to No. 6 may be calculated.
[0067] Next, the control device 5 executes the timetable creation control process in step S220. In the timetable creation control process, the control device 5 creates a timetable for each pattern calculated in step S210 that associates the processing end times of the polishing device, cleaning device, and transport device so that a waiting state does not occur between the time the substrate is loaded into the substrate processing device and the time the cleaning process is completed.
[0068] Specifically, the control device 5 performs the above-described waiting state reduction control process (FIG. 4) for each of all patterns of the insertion order change calculated in step S210. That is, the control device 5 performs the waiting state reduction control process for the above-described first pattern, second pattern, third pattern, etc. As a result, in this embodiment, "6 factorial timetables" are obtained.
[0069] Next, the control device 5 executes a selection control process in step S230. In this selection control process, the control device 5 selects, from the timetables (6 factorial timetables) obtained in step S220, a timetable that provides the shortest time from the start of processing of the first substrate loaded into the substrate processing apparatus to the end of processing of the last substrate loaded (i.e., the "total processing time for the plurality of substrates").
[0070] Fig. 9 is a diagram for explaining the timetable obtained in step S230 according to this embodiment. Specifically, the timetable 260 illustrated in Fig. 9 is the timetable obtained as a result of executing step S230 according to this embodiment. That is, in this embodiment, this timetable 260 was selected in step S230 as the timetable with the shortest total processing time for multiple substrates.
[0071] Next, the controller 5 executes a timing control process in step S240. In this timing control process, the controller 5 controls the timing of loading multiple substrates into the substrate processing apparatus based on the timetable (timetable 260) selected in step S230. That is, the controller 5 loads substrates No. 1 to No. 6 into the substrate processing apparatus in accordance with the timetable 260 and processes these substrates.
[0072] 9 also shows a timetable 250. This timetable 250 is a timetable obtained as a result of executing the standby state reduction control process (FIG. 4) described above for substrates No. 1 to No. 6 shown in FIG. 8, when substrates are loaded into the substrate processing apparatus in the order of No. 1 → No. 2 → No. 3 → No. 4 → No. 5 → No. 6 without executing step S210. Note that this timetable 250 is also a timetable obtained by the "control process disclosed in Patent Document 1" described above.
[0073] This timetable 250 is a timetable in which substrates No. 1 to No. 6 are loaded into the substrate processing apparatus in this order so that the same processing apparatus (Poli. A, Poli. B, CL1A to CL3A) is not used simultaneously for substrates No. 1 to No. 6 and so that there are no waiting substrates.
[0074] On the other hand, timetable 260 obtained in step S230 according to this embodiment is a timetable in which the input order of substrates No. 2 and No. 3 in timetable 250 is swapped, and the processing start times of substrates No. 2 to No. 6 are adjusted so that the same processing equipment (Poli. A, Poli. B, CL1A to CL3A) is not used simultaneously and substrates No. 2 to No. 6 do not have to wait. As can be seen from comparing timetable 260 with timetable 250, the total processing time for multiple substrates is shorter in timetable 260 than in timetable 250.
[0075] As described above, according to this embodiment, it is possible to reduce the waiting time of the substrate from when it is loaded into the substrate processing apparatus until the cleaning process is completed, while also reducing the overall processing time for a plurality of substrates. This can be done.
[0076] The program according to this embodiment is a program for causing the computer 5c to execute the control process according to the embodiment described above. The description of this program overlaps with the description of the control process described above, so it will be omitted. Furthermore, this program may be stored in a storage medium (e.g., a non-transitory storage medium) readable by the computer 5c and transferred.
[0077] <Modifications of the embodiment> Next, a modified example of the above-described embodiment will be described. First, referring to FIG. 1, the four polishing apparatuses of the substrate processing apparatus according to this modified example include a plurality of polishing apparatuses that can be substituted for each other. Specifically, in this modified example, Poli. A and Poli. B are polishing apparatuses that can perform the same type of polishing process, and therefore can be substituted for each other. Furthermore, Poli. C and Poli. D are also polishing apparatuses that can perform the same type of polishing process, and therefore can be substituted for each other.
[0078] That is, the combination of "Poli. A and Poli. B" can be replaced with the combination of "Poli. C and Poli. D." Conversely, the combination of "Poli. C and Poli. D" can be replaced with the combination of "Poli. A and Poli. B." In this modified example, "Poli. A, Poli. B, Poli. C, and Poli. D" are referred to as a "specific polishing device group" consisting of multiple polishing devices that can be substituted for each other.
[0079] Fig. 10 is a diagram showing an example of the processing recipes for substrates No. 1 to No. 5 used in this modification. Specifically, Fig. 10 shows an example of a processing recipe 500 and an additional processing recipe 501 added thereto.
[0080] 10, in a processing recipe 500 according to this modification, some of the substrates input into the substrate processing apparatus include polishing processing by a specific group of polishing apparatuses in the processing to be performed. Specifically, in processing recipe 500, substrates No. 1, No. 2, No. 4, and No. 5 include polishing processing by a specific group of polishing apparatuses (Poli. A to Poli. D) in the processing to be performed. On the other hand, substrate No. 3 uses only Poli. B as the polishing apparatus, and therefore does not include polishing processing by a specific group of polishing apparatuses in the processing to be performed.
[0081] 11 is an example of a flowchart for explaining a control process (hereinafter referred to as a "processing recipe change control process") according to this modified example. The flowchart in FIG. 11 is executed before execution of step S210 in FIG. 7. First, the control device 5 according to this modified example determines whether or not the processing content to be performed on "some" of the multiple substrates input into the substrate processing apparatus in the processing recipe 500 includes polishing processing by a specific polishing apparatus group (step S201).
[0082] If the answer to step S201 is NO, i.e., if the processing performed on "all" of the multiple substrates input into the substrate processing apparatus includes polishing processing by a specific polishing apparatus group, or if the processing performed on none of the multiple substrates input into the substrate processing apparatus includes polishing processing by a specific polishing apparatus group, the control device 5 executes the above-mentioned step S210 without executing steps S202 and S203 described below.
[0083] On the other hand, if the determination in step S201 is YES (i.e., if the processing contents to be performed on some of the multiple substrates input into the substrate processing apparatus include polishing processing by a specific polishing apparatus group), the control device 5 executes step S202.
[0084] In this step S202, the control device 5 creates an additional processing recipe 501 that specifies the processing content when the multiple polishing devices included in the specific polishing device group (Poli. C and Poli. D in Figure 10) are replaced with other multiple polishing devices (Poli. A and Poli. B) for substrates (substrate No. 4 and substrate No. 5) that are loaded into the substrate processing device after a substrate (substrate No. 3 in Figure 10) whose processing content does not include polishing processing by a specific polishing device group among the multiple substrates loaded into the substrate processing device (step S202).
[0085] If the cleaning equipment to be used for each polishing equipment is determined, when replacing the polishing equipment (Poli.C and Poli.D) with the polishing equipment (Poli.A and Poli.B) in step S202, it is preferable to replace the cleaning equipment with the cleaning equipment (CL1A, CL2B, CL1A) used for the polishing equipment (Poli.A and Poli.B) (see additional process recipe 501). Also, if the transport equipment to be used for each polishing equipment is determined, it is preferable to replace the transport equipment with the transport equipment used for the polishing equipment (Poli.A and Poli.B) when replacing the polishing equipment (Poli.C and Poli.D) with the polishing equipment (Poli.A and Poli.B).
[0086] Furthermore, in step S202, if there is no substrate that includes polishing processing by a specific polishing device group after the substrate that does not include polishing processing by a specific polishing device group (substrate No. 3 in Figure 10), the control device 5 may interrupt the execution of step S202 and perform the calculation control processing related to step S210.
[0087] After step S202, the control device 5 adds the additional process recipe 501 created in step S202 to the process recipe 500 (step S203).
[0088] Next, the control device 5 performs the arithmetic control process in step S210 based on the process recipe after the additional process recipe 501 has been added (the process recipe combining the process recipe 500 in FIG. 10 and the additional process recipe 501).
[0089] As described above, the control device 5 according to this modification performs the calculation control process according to step S210 described above using a processing recipe in which the additional processing recipe 501 for substrates No. 4 and No. 5 is added to the processing recipe 500 for substrates No. 1 to No. 5 illustrated in Fig. 10. After step S210, the control device 5 performs steps S220, S230, and S240 described above.
[0090] Fig. 12 is a diagram for explaining the timetable obtained in step S230 according to this modified example. Specifically, the timetable 280 illustrated in Fig. 12 is the timetable obtained in step S230 according to this modified example. That is, the timetable 280 is a timetable obtained as a result of performing steps S210, S220, and S230 using a processing recipe in which an additional processing recipe 501 is added to the processing recipe 500 in Fig. 10. Note that in this modified example, the processing recipe for substrate No. 5 in the additional processing recipe 501 is used for substrate No. 5 in the timetable 280.
[0091] 12 also shows a timetable 270 obtained as a result of performing the above-described standby state reduction control process (FIG. 4) using the process recipe 500 of FIG. 10. Note that this timetable 270 is also a timetable obtained by the control process disclosed in the above-mentioned Patent Document 1. As can be seen from a comparison between timetable 270 and timetable 280 in FIG. 12, the total processing time for multiple substrates is shorter in timetable 280 obtained in this modified example than in timetable 270.
[0092] According to the present modified example described above, a plurality of polishing apparatuses included in a specific polishing apparatus group can be used to By further considering additional processing recipes when replacing the equipment, the total processing time for multiple substrates can be reduced.
[0093] The program according to this modification is a program for causing the computer 5c to execute the control process according to the modification of the embodiment described above. The description of this program overlaps with the description of the control process described above, so it will be omitted. Furthermore, this program may be stored in a storage medium readable by the computer 5c and transferred.
[0094] Although the embodiments and modifications of the present invention have been described in detail above, the present invention is not limited to such specific embodiments and modifications, and various modifications and alterations are possible within the scope of the present invention as defined in the claims. [Explanation of symbols]
[0095] 2 Load / Unload Unit 3 Polishing Unit 4 Cleaning Unit 5. Control device 6. First Linear Transporter ("Transporter") 7. Second Linear Transporter ("Transporter") 11 Lifter ("Transportation Device") 12 Swing Transporter ("Transporter") 22 Transport robot ("transport device") 210,240,250,260,270,280 timetable Poli.A Poli.B Poli.C Poli.D Polishing equipment CL1A, CL1B, CL2A, CL2B, CL3A, CL3B cleaning equipment RB1U, RB1L, RB2 transport robot ("transport device")
Claims
1. A substrate processing apparatus, a polishing unit including at least one polishing device for polishing a substrate; a cleaning unit including at least one cleaning device for cleaning the substrate polished by the polishing unit; a transport unit including at least one transport device for transporting and processing the substrate; a control device for controlling the substrate processing apparatus, The control device a calculation control process for calculating a pattern of rearrangement of the order in which the substrates are loaded into the substrate processing apparatus based on a process recipe that predetermines processing contents to be performed on each of the substrates loaded into the substrate processing apparatus; a timetable creation control process for creating a timetable that associates processing end times in the polishing apparatus, the cleaning apparatus, and the transport apparatus for each of the patterns obtained by the arithmetic control process so that a waiting state does not occur between the time the substrate is loaded into the substrate processing apparatus and the time the cleaning process is completed; a selection control process for selecting, from the timetables obtained by the timetable creation control process, a timetable that minimizes the time from the start of processing of the first substrate loaded into the substrate processing apparatus to the end of processing of the last substrate loaded into the substrate processing apparatus; and a timing control process for controlling timings at which a plurality of substrates are loaded into the substrate processing apparatus based on the timetable selected in the selection control process.
2. the at least one polishing apparatus includes a plurality of polishing apparatuses capable of performing the same type of polishing process; the plurality of polishing apparatuses includes a specific polishing apparatus group consisting of a plurality of polishing apparatuses that are mutually replaceable, When the processing recipe includes a polishing process by the specific polishing apparatus group for some of the substrates input into the substrate processing apparatus, the control device executes a processing recipe change control process; In the process recipe change control process, the control device creating an additional processing recipe that specifies processing contents when the plurality of polishing apparatuses included in the specific polishing apparatus group are replaced with other plurality of polishing apparatuses for substrates that are loaded into the substrate processing apparatus after substrates that do not include polishing processing by the specific polishing apparatus group in processing contents to be performed thereon among the plurality of substrates loaded into the substrate processing apparatus; adding the created additional process recipe to the process recipe; The substrate processing apparatus according to claim 1 , wherein the control device performs the arithmetic control process based on the process recipe obtained in the process recipe change control process.
3. 2. The substrate processing apparatus of claim 1, wherein in the timetable creation control process, the control device creates the timetable based on past performance data of the time required for processing in at least one of the polishing apparatus and the cleaning apparatus, and the time required for transport processing from the polishing unit to the cleaning unit in the transport device.
4. In the timetable creation control process, when creating the timetable for a substrate to be newly input into the substrate processing apparatus, the control device calculating a tentative arrival time of the newly loaded substrate at the polishing apparatus, the cleaning apparatus, and the transport apparatus, and comparing the tentative arrival time with the processing end time or estimated processing end time of the substrate previously loaded into the substrate processing apparatus at the polishing apparatus, the cleaning apparatus, and the transport apparatus; The virtual processing time or estimated processing time that is earlier than the processing end time or estimated processing end time in the same or competing processing device if there is an arrival time, the actual arrival time is created by adding the difference between the earlier tentative arrival time and the processing end time or the scheduled processing end time to the tentative arrival time at the polishing apparatus, the cleaning apparatus, and the transport apparatus; The substrate processing apparatus according to claim 1 , wherein the timetable is created based on the actual arrival times.
5. 5. The substrate processing apparatus of claim 4, wherein in the timetable creation control process, if there is no tentative arrival time in the same or competing processing apparatus that is earlier than the processing end time or scheduled processing end time, the control apparatus creates the timetable based on the tentative arrival time.
6. a calculation control process for calculating a pattern of rearrangement of the order in which a plurality of substrates are loaded into the substrate processing apparatus based on a processing recipe that predetermines processing contents to be performed on each of the plurality of substrates loaded into the substrate processing apparatus; a timetable creation control process for creating a timetable that associates processing end times of the polishing apparatus, cleaning apparatus, and transport apparatus of the substrate processing apparatus for each of the patterns obtained by the arithmetic control process, so that a waiting state does not occur between the time when the substrate is loaded into the substrate processing apparatus and the time when the cleaning process is completed; a selection control process for selecting, from the timetables obtained by the timetable creation control process, a timetable that minimizes the time from the start of processing of the first substrate loaded into the substrate processing apparatus to the end of processing of the last substrate loaded into the substrate processing apparatus; and a timing control process for controlling the timing of loading a plurality of substrates into the substrate processing apparatus based on the timetable selected in the selection control process.
Citation Information
Patent Citations
Refrigerator
JP1988070084A
Substrate treater, substrate treater simulating device and computer readable recording medium
JP2001102425A
Substrate processing apparatus, substrate processing method, computer program, and memory
JP2005286304A
Substrate processing apparatus and substrate processing method
JP2015111729A
Substrate processing method
JP2015211043A