WO2015198885A1 - 基板処理装置のためのスケジュール作成方法および基板処理装置 - Google Patents

基板処理装置のためのスケジュール作成方法および基板処理装置 Download PDF

Info

Publication number
WO2015198885A1
WO2015198885A1 PCT/JP2015/066901 JP2015066901W WO2015198885A1 WO 2015198885 A1 WO2015198885 A1 WO 2015198885A1 JP 2015066901 W JP2015066901 W JP 2015066901W WO 2015198885 A1 WO2015198885 A1 WO 2015198885A1
Authority
WO
WIPO (PCT)
Prior art keywords
substrate
processing
schedule
unit
high load
Prior art date
Application number
PCT/JP2015/066901
Other languages
English (en)
French (fr)
Inventor
智史 山中
Original Assignee
株式会社Screenホールディングス
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社Screenホールディングス filed Critical 株式会社Screenホールディングス
Priority to KR1020187018201A priority Critical patent/KR101902160B1/ko
Priority to US15/320,055 priority patent/US10514684B2/en
Priority to KR1020177001162A priority patent/KR101874268B1/ko
Publication of WO2015198885A1 publication Critical patent/WO2015198885A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/02Manufacture or treatment of semiconductor devices or of parts thereof
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41865Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/4188Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by CIM planning or realisation
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01HELECTRIC SWITCHES; RELAYS; SELECTORS; EMERGENCY PROTECTIVE DEVICES
    • H01H43/00Time or time-programme switches providing a choice of time-intervals for executing one or more switching actions and automatically terminating their operations after the programme is completed
    • H01H43/02Details
    • H01H43/04Means for time setting
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01HELECTRIC SWITCHES; RELAYS; SELECTORS; EMERGENCY PROTECTIVE DEVICES
    • H01H43/00Time or time-programme switches providing a choice of time-intervals for executing one or more switching actions and automatically terminating their operations after the programme is completed
    • H01H43/10Time or time-programme switches providing a choice of time-intervals for executing one or more switching actions and automatically terminating their operations after the programme is completed with timing of actuation of contacts due to a part rotating at substantially constant speed
    • H01H43/16Time or time-programme switches providing a choice of time-intervals for executing one or more switching actions and automatically terminating their operations after the programme is completed with timing of actuation of contacts due to a part rotating at substantially constant speed stopping automatically after a predetermined plurality of cycles of operation
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/02Manufacture or treatment of semiconductor devices or of parts thereof
    • H01L21/02002Preparing wafers
    • H01L21/02005Preparing bulk and homogeneous wafers
    • H01L21/02008Multistep processes
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/02Manufacture or treatment of semiconductor devices or of parts thereof
    • H01L21/04Manufacture or treatment of semiconductor devices or of parts thereof the devices having potential barriers, e.g. a PN junction, depletion layer or carrier concentration layer
    • H01L21/18Manufacture or treatment of semiconductor devices or of parts thereof the devices having potential barriers, e.g. a PN junction, depletion layer or carrier concentration layer the devices having semiconductor bodies comprising elements of Group IV of the Periodic Table or AIIIBV compounds with or without impurities, e.g. doping materials
    • H01L21/30Treatment of semiconductor bodies using processes or apparatus not provided for in groups H01L21/20 - H01L21/26
    • H01L21/302Treatment of semiconductor bodies using processes or apparatus not provided for in groups H01L21/20 - H01L21/26 to change their surface-physical characteristics or shape, e.g. etching, polishing, cutting
    • H01L21/304Mechanical treatment, e.g. grinding, polishing, cutting
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/67Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
    • H01L21/67005Apparatus not specifically provided for elsewhere
    • H01L21/67011Apparatus for manufacture or treatment
    • H01L21/67017Apparatus for fluid treatment
    • H01L21/67028Apparatus for fluid treatment for cleaning followed by drying, rinsing, stripping, blasting or the like
    • H01L21/6704Apparatus for fluid treatment for cleaning followed by drying, rinsing, stripping, blasting or the like for wet cleaning or washing
    • H01L21/67051Apparatus for fluid treatment for cleaning followed by drying, rinsing, stripping, blasting or the like for wet cleaning or washing using mainly spraying means, e.g. nozzles
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/67Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
    • H01L21/67005Apparatus not specifically provided for elsewhere
    • H01L21/67011Apparatus for manufacture or treatment
    • H01L21/67155Apparatus for manufacturing or treating in a plurality of work-stations
    • H01L21/67207Apparatus for manufacturing or treating in a plurality of work-stations comprising a chamber adapted to a particular process
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/67Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
    • H01L21/67005Apparatus not specifically provided for elsewhere
    • H01L21/67242Apparatus for monitoring, sorting or marking
    • H01L21/67253Process monitoring, e.g. flow or thickness monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/45Nc applications
    • G05B2219/45031Manufacturing semiconductor wafers
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Definitions

  • the present invention relates to a method for creating a schedule for defining operations of a substrate processing apparatus according to a time series, and a substrate processing apparatus.
  • substrates to be processed by the substrate processing apparatus include semiconductor wafers, liquid crystal display substrates, plasma display substrates, FED (FieldEDEmission (Display) substrates, optical disk substrates, magnetic disk substrates, and magneto-optical disks.
  • FED FieldEDEmission
  • Substrates, photomask substrates, ceramic substrates, solar cell substrates and the like are included.
  • Patent Document 1 discloses a method for creating a schedule that defines the operation of a single-wafer type substrate processing apparatus according to a time series.
  • a single wafer processing apparatus includes, for example, a plurality of processing units.
  • the control unit provided in the substrate processing apparatus performs the operation (processing) of each processing unit according to the created schedule.
  • the control load CPU load and communication processing
  • the control unit is required for transmission / reception of processing content data, reading of processing content data, and data interpretation. (Load) may be high. Therefore, when simultaneously starting the substrate processing process among a plurality of processing units, the processing content data is transmitted at the same time, so that the control load is concentrated on the control unit and the data processing cannot be performed smoothly.
  • the start of the substrate processing step, the preparatory step, and the like may be delayed. Therefore, the uniformity of the substrate processing in each processing unit cannot be guaranteed, and there is a possibility that a problem may occur in the processing result of the substrate. For example, if the time from when the substrate is loaded into the processing unit until the substrate processing is started varies, the time during which the substrate is exposed to the mist in the processing unit becomes non-uniform. Since mist may affect the surface condition of the substrate, it is desirable that the time until the substrate processing is started be uniform between the substrates.
  • the time required for unloading a substrate that has been processed from the processing unit varies, the time until the substrate processing can be started in the next processing unit becomes uneven, and the effects of the previous substrate processing are reduced. There is a possibility that it cannot be stably applied to the substrate processing.
  • one of the objects of the present invention is to provide a schedule creation method capable of creating a schedule in which the data processing efficiency in the control unit is improved.
  • Another object of the present invention is to provide a substrate processing apparatus capable of processing a substrate while improving the efficiency of data processing in a control unit.
  • the present invention provides a schedule for defining the operation of a substrate processing apparatus having at least one single-wafer processing unit for processing substrates one by one and a control unit for controlling the processing unit according to a time series.
  • a method for creating a schedule creation unit provided in the substrate processing apparatus, wherein a plurality of blocks defining the operation contents of the substrate processing apparatus for each substrate are arranged in time series, and the substrate A schedule creating step for creating a schedule of the plurality of substrates, wherein the schedule creating step corresponds to a high load operation which is an operation for causing a high control load at least temporarily in the control unit with respect to creating a schedule for a plurality of substrates.
  • Set the block so that the high load time period, which is the time period during which a high control load is generated, is not concentrated Containing high load avoid placing step of placing on the axis, to provide a scheduling method.
  • the schedule creation unit creates a schedule for the board by arranging a plurality of blocks that define the processing content for each board in time series, and the schedule for the board is determined based on the number of boards to be processed. Create minutes. At this time, the blocks corresponding to the high load operation are arranged on the time axis so that the high load time period is not concentrated. In the schedule created in this way, control load concentration in the control unit is avoided. Accordingly, it is possible to provide a schedule creation method capable of creating a schedule in which data processing efficiency in the control unit is improved.
  • high load information is added to a portion corresponding to the high load time zone in the block corresponding to the high load operation, and the high load avoidance arranging step includes a plurality of pieces of high load information.
  • a block corresponding to the high load operation is arranged so that a predetermined number or more of the high load information is not assigned in the same time zone.
  • the schedule creation unit arranges blocks corresponding to high-load operations so that a predetermined number or more of high-load information is not allocated in the same time zone.
  • movement can be arrange
  • the high load time period may be at the start of the high load operation.
  • the control load on the control unit may increase due to transmission / reception of processing data and data interpretation of the processing data at the control unit. That is, the start time of the high load operation is a high load time zone.
  • the blocks corresponding to the high load operation are arranged on the time axis so that the high load operation starts at the same time in the schedule of a plurality of substrates, the control load of the control unit at the start of the high load operation There is a risk that data processing will not be performed smoothly by the control unit. As a result, the start of operation of any resource may be delayed.
  • the schedule creation unit arranges the blocks corresponding to the high load operation on the time axis so that the start time of the corresponding high load operation is not concentrated at the same time. Therefore, as a result of avoiding the concentration of the control load in the control unit, it is possible to create a schedule in which the data processing in the control unit is made more efficient. Therefore, it is possible to reliably prevent the delay in starting the resource operation.
  • the high load operation includes a substrate processing step in which the processing unit processes a substrate, a preliminary processing step in which the processing unit prepares the substrate processing step, and an operation for the processing unit to carry a substrate into the processing unit. At least one of a pre-carrying-in process step of performing the above and a substrate recovery step of performing a predetermined process on the substrate prior to the recovery of the substrate from the processing unit.
  • the processing order of the plurality of substrates after the first substrate is later than the first substrate.
  • Execution of the created schedule may be started in a state where the creation of the schedule for the second substrate is not completed.
  • the method may further include a schedule changing step of changing an unexecuted part of the created schedule after the execution of the created schedule is started.
  • the created schedule is executed even if the creation of the schedule for another substrate is not completed.
  • Patent Document 1 when the operation of a substrate processing apparatus is started after the creation of a schedule for all substrates having a common process job is completed, a huge amount of data is stored in the substrate processing apparatus. Need to be remembered.
  • the unexecuted portion of the created schedule is changed after the schedule is started, the contents of the schedule can be changed according to the actual operation status (substrate processing status) of the substrate processing apparatus. Thereby, a flexible schedule according to an actual operation situation can be created.
  • the schedule changing step includes a step of deleting an unexecuted block in the created schedule after the start of execution of the schedule, and a deleted block in parallel with the arrangement of the blocks on the second substrate. And a rearrangement step of rearranging according to a time series.
  • the unexecuted blocks deleted from the created schedule are rearranged in time series.
  • the rearrangement of the deleted block and the arrangement of the blocks relating to the second substrate do not cause interference between the plurality of substrates, and efficiently operate resources (processing units, etc.) with respect to the plurality of substrates. It is performed according to a time series so that processing is performed. Since the arrangement positions of the blocks related to the deleted block and the second substrate can be determined more finely, the resource utilization rate can be increased, thereby improving the productivity of the substrate processing apparatus.
  • At least one single-wafer processing unit for processing substrates one by one, a control unit for controlling the processing unit, and operations of resources including the processing unit are defined in time series.
  • the schedule creation unit creates a schedule for the board by arranging a plurality of blocks that define the processing contents for each board in time series, and the schedule for the board is determined based on the number of boards to be processed. Create minutes. At this time, the blocks corresponding to the high load operation are arranged on the time axis so that the high load time period is not concentrated. In the schedule created in this way, control load concentration in the control unit is avoided. Since the control unit controls resources according to this schedule, it is possible to provide a substrate processing apparatus that can process a substrate while improving the efficiency of data processing in the control unit.
  • control unit After the completion of the schedule creation of a predetermined first substrate among a plurality of substrates having a common process job, the control unit performs a second processing order after the first substrate among the plurality of substrates. Execution of the created schedule may be started in a state where the creation of the substrate schedule is not finished.
  • FIG. 1 is a schematic plan view showing a layout of a substrate processing apparatus according to an embodiment of the present invention. It is a schematic side view of the substrate processing apparatus. It is the schematic diagram which looked at the inside of the processing unit with which the said substrate processing apparatus was equipped in the horizontal direction. It is a block diagram for demonstrating the electrical structure of the said substrate processing apparatus. It is a flowchart for demonstrating one Embodiment of this invention, and the process example by a scheduling function part is shown. It is a flowchart for demonstrating one Embodiment of this invention, and the process example by a scheduling function part is shown. It is a flowchart for demonstrating one Embodiment of this invention, and the process example by a scheduling function part is shown. It is a flowchart for demonstrating one Embodiment of this invention, and the process example by a scheduling function part is shown.
  • An example of a temporary time table is shown. It is a flowchart which shows the flow of a temporary time table preparation process. It is a flowchart which shows the flow of a block arrangement position search process.
  • An example of creating a schedule is shown. An example of creating a schedule is shown. An example of creating a schedule is shown. An example of creating a schedule is shown. An example of creating a schedule is shown. An example of creating a schedule is shown. An example of creating a schedule is shown. An example of creating a schedule is shown. An example of creating a schedule is shown. An example of creating a schedule is shown.
  • An example of creating a schedule is shown.
  • An example of creating a schedule is shown.
  • An example of creating a schedule is shown.
  • An example of creating a schedule is shown.
  • An example of creating a schedule is shown.
  • An example of creating a schedule is shown.
  • the entire schedule of a plurality of substrates created by the scheduling function unit is shown.
  • the 1st modification of preparation of a schedule is shown.
  • the data flow until it starts a substrate process is shown.
  • the 2nd modification of preparation of a schedule is shown.
  • the 3rd modification of preparation of a schedule is shown.
  • FIG. 1 is a schematic plan view showing a layout of a substrate processing apparatus 1 according to an embodiment of the present invention
  • FIG. 2 is a schematic side view thereof
  • FIG. 3A is a schematic view of the inside of the processing units SPIN1 to SPIN12 provided in the substrate processing apparatus 1 as viewed in the horizontal direction.
  • the substrate processing apparatus 1 includes an indexer section 2 and a processing section 3.
  • the processing section 3 includes a delivery unit PASS for delivering the substrate W to and from the indexer section 2.
  • the indexer section 2 delivers the unprocessed substrate W to the delivery unit PASS and receives the processed substrate W from the delivery unit PASS.
  • the processing section 3 receives an unprocessed substrate W from the delivery unit PASS, and processes the substrate W using a processing agent (processing liquid or processing gas), processing using electromagnetic waves such as ultraviolet rays, and physical cleaning. Various processing such as processing (brush cleaning, spray nozzle cleaning, etc.) is performed. Then, the processing section 3 delivers the processed substrate W to the delivery unit PASS.
  • the indexer section 2 includes a plurality of stages ST1 to ST4 and an indexer robot IR.
  • Stages ST1 to ST4 are substrate container holders that can each hold a substrate container C containing a plurality of substrates W (for example, semiconductor wafers) in a stacked state.
  • the substrate container C may be a FOUP (Front-Opening-Unified-Pod) that stores the substrate W in a sealed state, a SMIF (Standard-Mechanical-Inter Face) pod, an OC (Open Cassette), or the like.
  • FOUP Front-Opening-Unified-Pod
  • SMIF Standard-Mechanical-Inter Face
  • OC Open Cassette
  • the indexer robot IR includes, for example, a base unit 6, an articulated arm 7, and a pair of hands 8A and 8B.
  • the base unit 6 is fixed to the frame of the substrate processing apparatus 1, for example.
  • the multi-joint arm 7 is configured by mutually connecting a plurality of arm portions that can rotate along a horizontal plane, and the angle between the arm portions is changed at a joint portion where the arm portions are connected. By doing so, it is configured to bend and stretch.
  • the base end portion of the articulated arm 7 is coupled to the base portion 6 so as to be able to rotate around the vertical axis. Further, the articulated arm 7 is coupled to the base portion 6 so as to be movable up and down.
  • the base unit 6 incorporates an elevating drive mechanism for elevating the articulated arm 7 and a rotation drive mechanism for rotating the articulated arm 7 about the vertical axis.
  • the articulated arm 7 is provided with an individual rotation drive mechanism for independently rotating each arm portion.
  • Hands 8A and 8B are coupled to the tip of the articulated arm 7 so that individual rotation about the vertical axis and individual advance and retreat in the horizontal direction are possible.
  • the articulated arm 7 includes a hand rotation drive mechanism for individually rotating the hands 8A and 8B around the vertical axis, and a hand advancing and retracting mechanism for individually moving the hands 8A and 8B in the horizontal direction. It has been.
  • the hands 8A and 8B are configured to hold, for example, one substrate W, respectively.
  • the hands 8A and 8B may be arranged so as to overlap each other. However, for the sake of clarity, the hands 8A and 8B are drawn in a direction parallel to the paper surface (horizontal direction) in FIG. is there.
  • the indexer robot IR operates to unload one unprocessed substrate W from the substrate container C held on any of the stages ST1 to ST4 by the hand 8A and pass it to the transfer unit PASS. Further, the indexer robot IR operates to receive one processed substrate W from the delivery unit PASS with the hand 8B and store it in the substrate container C held in any of the stages ST1 to ST4.
  • the processing section 3 includes a plurality (12 in this embodiment) of processing units SPIN1 to SPIN12, the main transfer robot CR, and the above-described delivery unit PASS.
  • the processing units SPIN1 to SPIN12 are three-dimensionally arranged in this embodiment. More specifically, a plurality of processing units SPIN1 to SPIN12 are arranged so as to form a three-story structure, and four processing units are arranged on each floor portion. That is, four processing units SPIN1, SPIN4, SPIN7, and SPIN10 are arranged on the first floor portion, another four processing units SPIN2, SPIN5, SPIN8, and SPIN11 are arranged on the second floor portion, and another processing unit is arranged on the third floor portion. SPIN3, SPIN6, SPIN9, and SPIN12 are arranged.
  • the main transfer robot CR is arranged at the center of the processing section 3 in plan view, and a delivery unit PASS is arranged between the main transfer robot CR and the indexer robot IR.
  • a first processing unit group G1 in which three processing units SPIN1 to SPIN3 are stacked and a second processing unit group G2 in which another three processing units SPIN4 to SPIN6 are stacked are arranged so as to face each other across the delivery unit PASS.
  • a third processing unit group G3 in which three processing units SPIN7 to SPIN9 are stacked is arranged so as to be adjacent to the first processing unit group G1 on the side far from the indexer robot IR.
  • a fourth processing unit group G4 in which three processing units SPIN10 to SPIN12 are stacked is arranged so as to be adjacent to the second processing unit group G2 on the side far from the indexer robot IR.
  • the main transfer robot CR is surrounded by the first to fourth processing unit groups G1 to G4.
  • the main transfer robot CR includes, for example, a base unit 11, an articulated arm 12, and a pair of hands 13A and 13B.
  • the base unit 11 is fixed to the frame of the substrate processing apparatus 1, for example.
  • the multi-joint arm 12 is configured such that a plurality of arm portions extending along a horizontal plane are rotatably coupled to each other, and an angle between the arm portions is changed at a joint portion which is a joint portion of the arm portions. Is configured to bend and stretch.
  • the base end portion of the articulated arm 12 is coupled to the base portion 11 so as to be able to rotate around the vertical axis. Further, the articulated arm 12 is coupled to the base 11 so as to be movable up and down.
  • the base 11 includes a lift drive mechanism for lifting the articulated arm 12 and a rotation drive mechanism for rotating the articulated arm 12 about the vertical axis.
  • the multi-joint arm 12 is provided with an individual rotation drive mechanism for independently rotating each arm portion.
  • Hands 13 ⁇ / b> A and 13 ⁇ / b> B are coupled to the distal end portion of the articulated arm 12 so that individual rotation about the vertical axis and individual advance and retreat in the horizontal direction are possible.
  • the articulated arm 12 includes a hand rotation drive mechanism for individually rotating the hands 13A and 13B around the vertical axis, and a hand advance / retreat mechanism for individually moving the hands 13A and 13B in the horizontal direction. It has been.
  • the hands 13A and 13B are configured to hold, for example, one substrate W, respectively.
  • the hands 13A and 13B may be arranged so as to overlap each other. However, in FIG. 1, the hands 13A and 13B are drawn while being shifted in a direction parallel to the paper surface (horizontal direction) for the sake of clarity. is there.
  • the main transfer robot CR receives an unprocessed substrate W from the delivery unit PASS with the hand 13A, and carries the unprocessed substrate W into any of the processing units SPIN1 to SPIN12. Further, the main transport robot CR receives the processed substrate W processed by the processing units SPIN1 to SPIN12 by the hand 13B and transfers the substrate W to the transfer unit PASS.
  • the processing units SPIN1 to SPIN12 are single wafer processing units that process the substrates W one by one.
  • the processing units SPIN1 to SPIN12 may be liquid processing units that supply a processing liquid to the substrate W while rotating the substrate W around a vertical axis passing through the central portion of the substrate W, or processing using a processing gas It may be a gas processing unit that performs an electromagnetic wave, an electromagnetic wave processing unit that performs processing using electromagnetic waves such as ultraviolet rays, or a physical cleaning processing unit that performs physical cleaning processing (brush cleaning, spray nozzle cleaning, etc.) It may be.
  • FIG. 3A shows an example in which the processing units SPIN1 to SPIN12 are liquid processing units.
  • each of the processing units SPIN1 to SPIN12 includes a box-shaped processing chamber 17 having an internal space, and a single substrate W held in a horizontal posture in the processing chamber 17 to hold the central portion of the substrate W.
  • a spin chuck 15 that rotates the substrate W around a vertical rotation axis X1 that passes through, and a cylindrical processing cup 16 that surrounds the spin chuck 15 around the rotation axis X1 of the substrate W are included.
  • the processing chamber 17 is partitioned by a box-shaped partition wall 17a.
  • an opening 17b for carrying the substrate W in and out of the processing chamber 17 is formed in the partition wall 17a.
  • the opening 17b is opened and closed by a shutter 17c.
  • the shutter 17c is between a closed position (indicated by a two-dot chain line in FIG. 3A) and an open position (indicated by a solid line in FIG. 3A) that opens the opening 17b by a shutter lifting mechanism (not shown). Can be raised and lowered.
  • the main transfer robot CR accesses the hands 13A and 13B into the processing chamber 17 through the opening 17b.
  • the unprocessed substrate W can be placed on the spin chuck 15, and the processed substrate W can be removed from the spin chuck 15.
  • the spin chuck 15 includes a disc-shaped spin base 15a in a horizontal posture, a plurality of chuck pins 15b protruding upward from the outer peripheral portion of the upper surface of the spin base 15a, and a plurality of chuck pins 15b.
  • the chuck opening / closing mechanism that presses the substrate W against the peripheral edge of the substrate W, the rotating shaft 15c extending downward from the central portion of the spin base 15a, and the rotating shaft 15c are rotated to rotate the substrate W held by the plurality of chuck pins 15b.
  • a rotating spin motor 15d The spin chuck 15 is not limited to the clamping chuck shown in FIG. 3A, and may be a vacuum chuck that holds the substrate in a horizontal posture by attracting the lower surface of the substrate to the upper surface of the spin base.
  • each of the processing units SPIN1 to SPIN12 includes a chemical liquid nozzle 51 that discharges the chemical liquid toward the upper surface of the substrate W held by the spin chuck 15 and a chemical liquid that stores the chemical liquid supplied to the chemical liquid nozzle 51.
  • a tank 52 a chemical solution pipe 53 that guides the chemical solution in the chemical solution tank 52 to the chemical solution nozzle 51, a liquid feeder 54 (for example, a pump) that sends the chemical solution in the chemical solution tank 52 to the chemical solution pipe 53, and the inside of the chemical solution pipe 53
  • a chemical valve 55 that opens and closes.
  • the processing units SPIN1 to SPIN12 further include a circulation pipe 56 that connects the chemical liquid pipe 53 and the chemical liquid tank 52 on the upstream side (chemical liquid tank 52 side) of the chemical liquid valve 55, and a circulation valve 57 that opens and closes the inside of the circulation pipe 56. And a temperature adjusting device 58 that adjusts the temperature of the chemical solution flowing through the circulation pipe 56.
  • the opening and closing of the chemical solution valve 55 and the circulation valve 57 are controlled by the computer 21 (see FIG. 3B).
  • the chemical solution valve 55 is opened and the circulation valve 57 is closed.
  • the chemical solution sent from the chemical solution tank 52 to the chemical solution pipe 53 by the liquid delivery device 54 is supplied to the chemical solution nozzle 51.
  • the chemical valve 55 is closed and the circulation valve 57 is opened.
  • the chemical liquid sent from the chemical liquid tank 52 to the chemical liquid pipe 53 by the liquid feeding device 54 returns to the chemical liquid tank 52 through the circulation pipe 56.
  • the chemical liquid continues to circulate through the circulation path constituted by the chemical liquid tank 52, the chemical liquid pipe 53, and the circulation pipe 56.
  • the temperature adjusting device 58 adjusts the temperature of the chemical solution flowing through the circulation pipe 56. Therefore, the chemical solution in the chemical solution tank 52 is heated in the circulation path during supply stop, and is maintained at a temperature higher than room temperature.
  • the opening degree of the chemical liquid valve 55 can be adjusted so that a small amount of chemical liquid can be discharged from the chemical liquid nozzle 51 to perform pre-dispensing.
  • a chemical solution recovery member (not shown) is disposed in the vicinity of the chemical solution nozzle 51 so that the pre-dispensed chemical solution can be collected from the chemical solution nozzle 51.
  • the processing units SPIN1 to SPIN12 include a rinsing liquid nozzle 59 that discharges a rinsing liquid toward the upper surface of the substrate W held by the spin chuck 15, and a rinsing liquid supply source (not shown).
  • DIW deionized water
  • the chemical liquid adhering to the substrate W can be washed away by supplying the rinse liquid from the rinse liquid nozzle 59 to the substrate W.
  • the processing units SPIN1 to SPIN12 have a cleaning liquid nozzle 62 for discharging the cleaning liquid toward a predetermined portion (for example, the spin base 15a) in the processing chamber 17, and a cleaning liquid nozzle 62 for cleaning liquid from a cleaning liquid supply source (not shown). And a cleaning liquid valve 64 for switching supply and stop of supply of the cleaning liquid from the cleaning liquid pipe 63 to the cleaning liquid nozzle 62.
  • a cleaning liquid As the cleaning liquid, DIW (deionized water) or the like is used.
  • the cleaning liquid nozzle 62 is attached to the inner wall of the processing chamber 17.
  • the spin base 15a and the chuck pins 15b are rotated and the cleaning liquid is discharged from the cleaning liquid nozzle 62.
  • the cleaning liquid discharged from the cleaning liquid nozzle 62 rebounds on the upper surface of the dummy substrate or the upper surface of the substrate W held by the chuck pins 15 b, so that the cleaning liquid is scattered in the processing chamber 17.
  • various components chuck pins 15b and processing cup 16 arranged in the processing chamber 17 can be cleaned.
  • FIG. 3B is a block diagram for explaining the electrical configuration of the substrate processing apparatus 1.
  • the substrate processing apparatus 1 includes a computer 21 that controls the processing units SPIN1 to SPIN12, the main transfer robot CR, and the indexer robot.
  • the computer 21 includes a main controller 22 and a sub controller 23.
  • the main controller 22 may have a form of a personal computer (FA personal computer), and includes a first control unit 24, an input / output unit 25, and a first storage unit 26.
  • the first control unit 24 includes an arithmetic unit such as a CPU.
  • the input / output unit 25 includes output devices such as a display unit and input devices such as a keyboard, a pointing device, and a touch panel. Further, the input / output unit 25 includes a communication module for communication with the host computer HC.
  • the first storage unit 26 includes a storage device such as a solid-state memory device or a hard disk drive.
  • the first control unit 24 includes an online control unit 27, a device management unit 28, and a scheduling function unit (schedule creation unit) 29.
  • the scheduling function unit 29 includes a scheduling engine 30 and a process execution instruction unit 31.
  • the scheduling engine 30 carries out the resources of the substrate processing apparatus 1 in accordance with the time series in order to process the substrate W from the substrate container C by the processing units SPIN1 to SPIN12 and store the substrate W in the substrate container C (time series). Plan).
  • the schedule creation result (scheduling result 32) by the scheduling engine 30 is given to the process execution instruction unit 31.
  • the process execution instructing unit 31 transmits a command for operating the resources of the substrate processing apparatus 1 to the sub-controller 23 according to the given schedule.
  • the first storage unit 26 is configured to store data including a schedule creation program 39 for operating the first control unit 24 as a scheduling function unit, and schedule data 33 created by the scheduling function unit. Has been.
  • the sub-controller 23 is configured by, for example, a control VME (VERSAmodule Eurocard) board, and includes a second control unit 34, a second storage unit 35, and a serial communication unit 36.
  • the second control unit 34 includes a CPU 37 that executes arithmetic processing.
  • the second control unit 34 corresponds to a “control unit” in the claims.
  • the second storage unit 35 is configured to store various data including processing content data 38 that is processing content data by the substrate processing apparatus 1.
  • the processing content data 38 includes a process job code assigned to each substrate W and a recipe associated with the process job code.
  • the recipe is data defining the substrate processing content and includes the substrate processing conditions and the substrate processing procedure. More specifically, it includes parallel processing unit information, used processing liquid information, processing time information, post-processing execution conditions, pre-preparation execution conditions, and the like.
  • “Parallel processing unit information” is information for specifying a processing unit capable of executing the substrate processing included in the recipe, and indicates that parallel processing by the specified processing unit is possible. In other words, when one of the designated processing units cannot be used, it indicates that replacement by other designated processing units is possible. “Unusable” means that when the processing unit is in use for processing another substrate W, or when the processing unit is in failure, the operator wants the processing unit to process the substrate W. For example, when you don't think so.
  • “Used processing liquid information” is information on processing liquids (various chemicals and rinsing liquids) used in substrate processing included in the recipe.
  • “Processing time information” is information relating to the time required to execute each process included in the recipe. Specifically, it includes the residence time of the substrate in the designated processing unit of the recipe, the time required to execute the preliminary processing steps (pre-preparation step and post-processing step) described below.
  • the preliminary processing step is processing for preparing a substrate processing step so that the substrate processing can be performed accurately before executing the substrate processing in a predetermined processing unit. In this embodiment, the preliminary processing step is performed before the substrate processing.
  • the pre-preparation step to be performed corresponds to the post-processing step executed after the immediately preceding substrate processing.
  • Pre-preparation execution condition is information related to the pre-preparation process.
  • the pre-preparation step is a pre-preparation operation that should be executed by the processing unit before executing a predetermined substrate processing.
  • the processing units SPIN 1 to 12 are provided with a temperature adjusting device 58 for discharging a predetermined chemical solution toward the substrate W at a specified temperature.
  • a temperature adjusting device 58 for discharging a predetermined chemical solution toward the substrate W at a specified temperature.
  • the temperature adjusting device 58 it takes a certain time for the temperature adjusting device 58 to heat the chemical liquid to the target temperature.
  • the circulation valve 57 is opened and the liquid supply device 54 is operated in the state in which the temperature adjustment device 58 is operated.
  • the chemical solution may be circulated (Example 1 of the preparatory step).
  • the pre-preparation execution conditions include any pre-preparation (for example, when performing the pre-preparation process example 1), the circulation valve 57 is opened, the temperature adjusting device 58 and the liquid feeding device 54 are operated, and the temperature adjusting device 58 is predetermined.
  • a predetermined time before starting the substrate processing for example, a predetermined time before starting the substrate processing in the assigned processing unit, or a chemical nozzle
  • the specific content of the pre-preparation process such as a predetermined time before the chemical solution is actually discharged from 51) is described.
  • the pre-preparation execution condition also includes information on the necessity of the pre-preparation process.
  • the necessity of the pre-preparation process is determined by the content of the substrate processing, the content of the substrate processing executed before the substrate processing, and the like.
  • the following example is given as an example of the necessity of the pre-preparation process.
  • the pre-dispensing processing is unnecessary, and therefore the pre-preparation process is set to “No”. Note that the contents and necessity of the preparatory process are defined for each process job.
  • the substrate processing requiring the preparatory process is continuously performed, it is not necessary in principle to perform the preparatory process before the second and subsequent substrate processes of the same processing unit. However, even if the preparatory process is executed for the previous substrate processing, the preparatory process is necessary if a long time elapses due to an apparatus abnormality or the like before starting the next substrate processing process. May be determined.
  • Post-processing execution condition is information related to the post-processing process.
  • the post-processing step is an operation to be performed for the next substrate processing of the processing units SPIN1 to SPIN12 after executing a predetermined substrate processing.
  • the post-processing execution condition includes information regarding the specific contents of the post-processing process and information regarding the necessity of the post-processing process.
  • the necessity and content of the post-processing step are defined for each block included in the recipe.
  • a specific example of the post-processing process is a cleaning process (chamber cleaning process) in the processing chamber 17 of the processing units SPIN1 to SPIN12.
  • the post-processing process is not limited to the cleaning process (chamber cleaning process), but also cleaning of the chuck pins that hold the substrate (chuck pin cleaning process) and other components in the processing chamber 17 (for example, the processing cup 16 (see FIG. 3A)).
  • Cleaning process part cleaning process
  • Chamber cleaning and component cleaning can be performed by discharging the cleaning liquid from the cleaning liquid nozzle 62 (see FIG. 3A).
  • post-processing execution conditions information on the necessity of post-processing steps is described.
  • the necessity of the post-processing process is defined for each block included in the recipe.
  • the necessity of the post-processing step is determined by the content of the substrate processing, the content of the substrate processing performed before the substrate processing, the content of the substrate processing performed immediately after the substrate processing, and the like.
  • the following example is given as an example of the necessity of the post-processing step.
  • the substrate processing performed immediately after in the same processing chamber 17 may be affected, it is necessary to perform a post-processing step after the substrate processing, and thus “necessary” is set.
  • the substrate processing does not affect the immediately following substrate processing, such as when only the same processing liquid is used in the immediately preceding substrate processing, it is not necessary to perform a post-processing step after the substrate processing.
  • a process job refers to one or more substrates W on which a common process is performed.
  • the process job code is identification information for identifying a process job.
  • a plurality of substrates W to which a common process job code is assigned are subjected to a common process using a recipe associated with the process job code.
  • the processing content (recipe) corresponding to different process job codes may be the same. For example, when a common process is performed on a plurality of substrates W in which the processing order (the order of dispensing from the substrate container C (see FIG. 1 and the like)) is continuous, A common process job code is assigned.
  • the creation and storage of the processing content data 38 is performed by an operator's operation prior to substrate processing in the substrate processing apparatus 1. Specifically, based on information input by the operator by operating the input / output unit 25, the first control unit 24 generates a process job and a recipe. The generated processing content data 38 (process job and recipe) is given to the sub-controller 23 and stored in the second storage unit 35.
  • the serial communication unit 36 performs serial communication with the processing units SPIN1 to SPIN12, the main transfer robot CR, and the indexer robot IR.
  • the sub-controller 23 may be configured with the same computer as the main controller 22 or may be configured with a computer different from the main controller 22.
  • the host computer HC transmits a process job generation instruction to the main controller 22.
  • the process job generation instruction includes a process job code and recipe identification information.
  • Each process job includes recipe identification information specified in the process job generation instruction.
  • the second control unit 34 selects a recipe corresponding to the identification information of the recipe specified by the process job generation instruction from the plurality of recipes stored in the second storage unit 35, and selects the selected recipe. Read. As a result, a recipe corresponding to the process job is prepared by the sub-controller 23.
  • FIG. 4A to 4D and FIG. 5 are flowcharts for explaining an example of processing by the scheduling function unit 29. 4A to 4D and the process of FIG. 5 are executed in parallel. Specifically, in the processes of FIGS. 4A to 4D, scheduling of the substrates A1 to A12 belonging to the process job is performed. In the process of FIG. 5, in parallel with this, the timing at which the scheduling of each of the substrates A1 to A12 ends is monitored.
  • FIG. 6 shows an example of a temporary time table.
  • FIG. 7 is a flowchart showing the flow of the provisional time table creation process.
  • FIG. 8 is a flowchart showing the flow of the block arrangement position search process.
  • 9 to 23 show an example of schedule creation.
  • FIG. 4A to 4D show processing performed by the first control unit 24 executing the schedule creation program 39.
  • FIG. the schedule creation program 39 incorporates a process group so as to cause the first control unit 24 to execute the process shown in FIG.
  • One of the features of the schedule creation method according to the present embodiment is that blocks corresponding to “high load operation” to be described later are arranged on the time axis so that the high load time zone is not concentrated. is there.
  • another feature of the schedule creation method according to the present embodiment is that a schedule for the first substrate W to be dispensed first from the substrate container C among a plurality of substrates W that have been subjected to a common process job code is created. After completion of the above, the created schedule is started at a timing when the creation of the schedule for the substrates W other than the first substrate W is not completed.
  • an allowable range of “high load operation” described later (conditions determined not to be “high load operation”) is stored in the first storage unit 26 (step S0).
  • the usage rate of the CPU 37 at the time of executing the program is an average of less than 90% in any one second, and the usage rate of the CPU 37 at the time of executing the program is 100%. It can be exemplified that the state does not continue for 0.1 seconds.
  • the scheduling function unit 29 When an instruction to start substrate processing is given from the host computer HC or the input / output unit 25 by the operator (step S1: YES), the scheduling function unit 29 temporarily outputs all the substrates W to which the substrate processing start instruction is given. A time table is created (step S2).
  • the substrate processing start instruction may be issued not for each substrate W but for every substrate W accommodated in the substrate container C as a unit.
  • the substrate processing start instruction may be an instruction to start processing of the substrate W to which one or more process job codes are assigned.
  • the recipe associated with a process job code in the processing content data 38 specifies parallel processing of the processing units SPIN1 to SPIN12. That is, consider a case where the substrate processing according to the recipe can be executed in any of the 12 processing units SPIN1 to SPIN12. In this case, there are 12 paths through which the substrate W to which the process job code is assigned undergoes processing. That is, the paths that can be selected for processing the substrate W are twelve paths that pass through any one of the processing units SPIN1 to SPIN12. Therefore, the scheduling function unit 29 creates a temporary time table corresponding to the 12 routes.
  • FIG. 6 shows an example of a temporary time table corresponding to a route passing through the processing unit SPIN1.
  • This temporary time table includes a preparation block that represents execution of the preparation process, a pre-loading processing block that represents execution of the pre-loading processing process, a substrate processing block that represents processing for the substrate W by the processing unit SPIN1, and A post-unloading processing block representing execution of the processing step, a first unloading block representing unloading (unloading) of the substrate W from the substrate container C by the indexer robot IR, and a delivery unit PASS for the substrate W by the indexer robot IR.
  • the second loading block to be represented and the processing unit SPI by the main transport robot CR A third unloading block representing unloading of the processed substrate W from 1, a third unloading block representing unloading of the substrate W into the delivery unit PASS by the main transfer robot CR, and the substrate W by the indexer robot IR
  • the first carry-in block and / or the fourth carry-out block are shown as corresponding to the operation of the delivery unit PASS, but these blocks are actually Corresponds to the operation of the indexer robot IR.
  • the second carry-in block and / or the third carry-out block are shown as corresponding to the processing of the processing units SPIN1 to SPIN12, but these blocks are actually the main transfer robot. This corresponds to the operation of CR.
  • the temporary time table shown in FIG. 6 includes a pre-preparation block, but does not include a post-processing block that is a block representing execution of a post-processing step.
  • first to fourth carry-out blocks and the first to fourth carry-in blocks may be collectively referred to as “carry block”.
  • the generic name of each block excluding the preparatory block among the blocks shown in FIG. 6 may be referred to as “processing / conveyance block”.
  • the pre-loading process step is an operation for the processing unit to load the substrate W into the processing unit.
  • an opening operation of the shutter 17c, an opening operation of the chuck pin 15b (an attitude not holding the substrate W), and the like can be exemplified.
  • the post-unloading processing step is an operation after the processing unit unloads the substrate from the processing unit.
  • Examples of the post-unloading processing step include a closing operation of the shutter 17c and a displacement operation of the chuck pin 15b to a closed posture (a posture for holding the substrate W).
  • the scheduling function unit 29 acquires recipes for all the substrates W to which the substrate processing start instruction is given (step S51 in FIG. 7), and uses the acquired recipes. Based on this, a block to be included in the temporary time table is generated (step S52 in FIG. 7), and a temporary time table is created.
  • the scheduling function unit 29 checks whether or not the operation corresponding to the generated block includes (includes) a high load time period, which is a time period with a high control load generated in the second control unit 34 (FIG. 7). Step S53).
  • the high load time period means, for example, that the usage rate of the CPU 37 at the time of program execution is 90% or more on average in any one second, and the usage rate of the CPU 37 at the time of program execution is 100%. Is a time period that satisfies at least one of the duration of 0.1 seconds.
  • the operation of the resource including the high load time zone is referred to as “high load operation”.
  • the pre-preparation process, the substrate processing process, and the pre-loading process process correspond to “high load operation”.
  • the serial communication unit 36 of the sub-controller 23 reads out the recipe necessary for the substrate processing from the second storage unit 35 based on the scheduling result 32.
  • the CPU 37 interprets the read recipe and generates control signals for realizing the recipe in each of the processing units SPIN1 to SPIN12.
  • the CPU 37 transmits the generated control signal to the processing units SPIN1 to SPIN12 to be controlled via the serial communication unit 36.
  • the processing units SPIN 1 to SPIN 12 to be controlled transmit a reception confirmation signal to the serial communication unit 36 immediately after receiving the control signal. Since the amount of processing data in the preparatory process is large, a high control load is temporarily generated when the serial communication unit 36 or the CPU 37 performs data communication or data interpretation. That is, a high load time zone exists at the start of the substrate processing process.
  • the serial communication unit 36 of the second control unit 34 transmits the recipe to the processing units SPIN1 to SPIN12 to be controlled. Further, the processing units SPIN 1 to SPIN 12 to be controlled transmit a reception confirmation signal to the serial communication unit 36 immediately after receiving the recipe. Since the amount of recipe data is enormous, a high control load is temporarily generated in the serial communication unit 36 and the CPU 37. That is, a high load time zone exists at the start of the substrate processing process.
  • the serial communication unit 36 of the second control unit 34 also sends a recipe to the control target processing units SPIN1 to SPIN12 together with the processing data relating to the pre-loading process step. . Since the amount of recipe data is enormous, a high control load is temporarily generated in the serial communication unit 36 and the CPU 37. That is, a high load time zone exists at the start of the pre-loading treatment process.
  • step S53 YES in FIG. 7
  • the scheduling function unit 29 completes the creation of the temporary time table (step S55 in FIG. 7). That is, the high load information HL is added to the portion corresponding to the high load time zone in the block corresponding to the high load operation.
  • step S53 in FIG. 7: NO the scheduling function unit 29 completes the creation of the temporary time table as it is (step S55 in FIG. 7).
  • the scheduling function unit 29 creates a temporary time table by arranging all the blocks to be included in the temporary time table in order so as not to overlap on the time axis.
  • the scheduling function unit 29 creates the same temporary time table (temporary time table in which blocks are arranged in the processing units SPIN2 to SPIN12) corresponding to the paths passing through the processing units SPIN2 to SPIN12, respectively, on the substrate W. In this way, a temporary time table for a total of 12 paths is created for one substrate W.
  • a similar temporary time table is created corresponding to all the substrates W to which a common process job code is assigned.
  • the temporary time table created in this way is stored in the first storage unit 26 as part of the schedule data 33.
  • step S3 when a scheduling instruction is generated (step S3: YES), blocks relating to the substrate W assigned with the common process job code are arranged (steps S4 to S32). Specifically, the scheduling function unit 29 reads the temporary time table of the substrate W from the first storage unit 26, and arranges the blocks constituting the temporary time table on the time axis.
  • the scheduling function unit 29 refers to the content of the pre-preparation execution condition and determines whether or not to perform the pre-preparation process (step S4). If the process job requires a pre-preparation process (that is, if the pre-preparation execution condition corresponding to the substrate W is “necessary”; step S4: YES), a schedule for the pre-preparation process is created ( Steps S5 and S6) and when the preparatory process is not required (that is, when the preparatory execution condition corresponding to the substrate W is “No”), the processes of S5 and S6 are skipped.
  • a schedule for the pre-preparation process is created (Stes S5 and S6) and when the preparatory process is not required (that is, when the preparatory execution condition corresponding to the substrate W is “No”), the processes of S5 and S6 are skipped.
  • step S4 the scheduling function unit 29 prepares for the processing units SPIN1 to SPIN12 (all processing units in the above example) that may process the substrate W.
  • Blocks are arranged (S5, S6). That is, the schedule of the preparatory process is created collectively prior to creating a schedule for individual substrates W to be described later.
  • the scheduling function unit 29 determines whether the high load information HL is added to the preparatory block to be searched (the preparatory block to be searched is “ Whether or not it corresponds to “high load operation” is checked (step S61 in FIG. 8).
  • the scheduling function unit 29 transfers the high resource information to other resources (such as processing units). It is checked whether or not a block including the load information HL (a block corresponding to “high load operation”) has been arranged (step S62 in FIG. 8).
  • the high load information HL is not added to the search target preparation block (step S61 in FIG.
  • the scheduling function unit 29 determines the earliest position on the time axis as the arrangement position of the preparation block to be searched (step S64 in FIG. 8), and thereby the arrangement position of the preparation block The search is completed (step S65 in FIG. 8).
  • the high load information HL is added to the preparation block to be searched for the arrangement position (step S61 in FIG. 8: YES), and the block including the high load information HL in other resources (“high”
  • the scheduling function unit 29 sets the height of the already arranged block as the arrangement position of the preparation target block to be searched.
  • the earliest position on the time axis is determined (step S63 in FIG. 8), thereby completing the arrangement position search for the preparatory block (step S65 in FIG. 8).
  • scheduling section 29 places the pre-preparation block SP 1 processing unit SPIN1.
  • the scheduling function unit 29 reads out the provisional timetable of first substrate A1 from the first storage unit 26, as shown in FIG. 9, a preparation block SP 1 before included in the provisional timetable , It is arranged at the earliest position on the time axis, that is, at the current time.
  • the attached high load information HL Preparing block SP 1 prior to being placed, the attached high load information HL.
  • the attached high load information HL Preparing block SP 2 before being placed, the attached high load information HL.
  • the scheduling function unit 29, a temporary timetable second substrate A2 is read from the first storage unit 26, as shown in FIG. 10, a preparation block SP 2 before being included in the provisional timetable , in the pre-preparation block high load information HL it is not assigned the time zone contained in a preparation block SP 1 high load information HL processing unit SPIN1 added to the SP 2, the earliest position on the time axis Deploy.
  • the scheduling function unit 29, a pre-preparation block SP 2 processing unit SPIN2 so that high load information HL included in the preparatory block SP 2 is not assigned to the same time zone as the preparatory block SP 1 processing unit SPIN1
  • the position is shifted from the earliest position on the time axis to the rear on the time axis (high load avoidance placement step).
  • the scheduling function unit 29 reads out the provisional timetable of the substrate W of the third piece from the first storage unit 26, as shown in FIG. 11, a preparation block SP 3 before being included in the provisional timetable , the pre Preparing block SP 3 in addition has been that a high load information HL processing unit SPIN1, preparation block SP 1, SP time slot that is not heavily loaded information HL is assigned included in each of the two previous SPIN2, time Located at the earliest position on the axis.
  • the scheduling function unit 29, a pre-preparation block SP 3 processing unit Spin3 high high load information HL included in the preparatory block SP 3 is included in the preparation block SP 1, SP 2 before treatment unit SPIN1, SPIN2
  • the position is shifted and arranged later on the time axis from the earliest position on the time axis (high load avoidance arrangement step).
  • the scheduling function unit 29 sets the preparation blocks included in the read temporary time table so that the same resource is not used redundantly at the same time, and the high load information HL is arranged. While avoiding being assigned to the same time zone as the high load information HL, the information is sequentially arranged at the earliest position on the time axis (that is, left-justified).
  • step S7 YES
  • the scheduling function unit 29 selects each of the substrates W. Processing / conveying blocks are arranged (steps S8 to S12).
  • the scheduling function unit 29 reads out the temporary time table corresponding to the first substrate A1 from the first storage unit 26, refers to the temporary time table corresponding to the first substrate A1, and executes the temporary time table.
  • One processing / conveying block included in the table is acquired (step S8).
  • the processing / conveying block acquired at this time is the processing / conveying block arranged at the earliest position on the time axis of the temporary time table among the non-arranged processing / conveying blocks.
  • the scheduling function unit 29 searches for the position where the acquired processing / conveyance block is to be arranged (step S9), and arranges the processing / conveyance block according to the search result (step S10).
  • the scheduling function unit 29 determines whether or not the high load information HL is added to the processing / transport block to be searched (processing / processing to be searched / It is checked whether or not the conveyance block corresponds to “high load operation” (step S61 in FIG. 8). In addition, when the high load information HL is added to the processing / transport block to be searched (step S61 in FIG. 8: YES), the scheduling function unit 29 then transfers to other resources (processing units, etc.) It is checked whether or not a block including high load information (a block corresponding to “high load operation”) has been arranged (step S62 in FIG. 8).
  • step S61 When the high load information HL is not added to the search target processing / transport block (step S61: NO in FIG. 8), or when the block including the high load information HL is not arranged in another resource (FIG. 8)
  • step S62: NO the scheduling function unit 29 determines the earliest position on the time axis as the arrangement position of the processing / conveyance block to be searched (step S64 in FIG. 8), whereby the processing / conveyance block is determined.
  • the arrangement position search is completed (step S65 in FIG. 8).
  • the high load information HL is added to the processing / transport block that is the search target of the arrangement position (step S61 in FIG. 8: YES), and the block including the high load information HL in other resources (“
  • the scheduling function unit 29 sets the already arranged block as the arrangement position of the processing / transport block to be searched.
  • the earliest position on the time axis is determined (step S63 in FIG. 8), thereby completing the processing / conveying block arrangement position search (step in FIG. 8). S65).
  • first, first-out block A1 1 of the first sheet of substrate A1, the first carrying block A1 2 and the second carry-out block A1 3 are arranged in order on the time axis.
  • Scheduling unit 29, the first-out block A1 1 of the first sheet of substrate A1, the earliest position (ie current time) rather than on the time axis, can be processed time in the processing unit SPIN1 (i.e., the processing unit
  • the estimated transfer time is calculated backward (from the end of the pre-preparation step at SPIN1) and arranged at an appropriate position.
  • First carrying block A1 2 and the second carry-out block A1 3, respectively, are arranged in chronological in response to a first position of the unloading block A1 1.
  • scheduling unit 29, as shown in FIG. 14, performs the arrangement of the carry pre-processing block A1 4 of first substrate A1. While allowing the same resources are not used in duplicate at the same time, when considering only be placed in the earliest position on the time axis, the broken line the carry pre-processing block A1 4 of first substrate A1 in FIG. 14 it should be arranged in a position indicated by, in this manner, high-load information HL which is added to the carry-pre-processing block A1 4, before preparation block processing unit SPIN12 (SP 12 shown in FIG. 14) since may overlap with high load information HL included, the carry pre-processing block A1 4, is arranged offset to the rear in the time axis from the position shown in broken lines in FIG. 14. In this case, loading the pre-processing block A1 4 is desirably to be placed before filling as possible.
  • scheduling unit 29 as shown in FIG. 15, disposing a second substrate carrying blocks A1 5 and a substrate processing blocks A1 6 of the first sheet of substrates A1 on the time axis. Then, scheduling unit 29, as shown in FIG. 16, arranged third out block A1 7 and the third carrying blocks A1 8 of the first sheet of substrates A1 on the time axis, then unloaded after treatment
  • the block A1 9 , the fourth carry-out block A1 10 and the fourth carry-in block A1 11 are arranged on the time axis.
  • step S11 when all the blocks constituting the temporary time table for the first substrate A1 have been arranged (step S11: YES), the creation of the schedule for the first substrate A1 is completed ( In step S12), a prepared schedule including the preparation blocks SP 1 to SP 12 of the processing units SPIN1 to SPIN12 and the processing / transfer blocks A1 1 to A1 11 of the first substrate A1 is part of the schedule data 33. It is stored in the first storage unit 26 (step S13).
  • step S41 the block of step S41 in the flowchart of FIG. 5 executed in parallel with the scheduling process of FIGS. 4A to 4D becomes YES (step S41: YES).
  • the scheduling function unit 29 shifts the process of FIG. 5 from step S41 to S42, and starts executing the created schedule (step S42). That is, the scheduling function unit 29 starts the resource operation according to the created schedule. Specifically, the preparatory process is started in the processing units SPIN1 to SPIN12. Further, the first substrate A1 is discharged (unloaded) from the substrate container C by the indexer robot IR.
  • step S13 when the schedule data 33 of the first substrate A1 is stored in the first storage unit 26 (step S13), is it time to start scheduling of the second substrate A2? A determination of whether or not is made (step S14).
  • the timing at which the immediately preceding substrate A N (the Nth substrate, “N” is an integer equal to or greater than “2”) is paid out from the substrate container C schedules the immediately subsequent substrate A N + 1 . It is set to start timing.
  • step S14 determines that the timing for starting the scheduling of the second substrate A2 has been reached. That is, when the first substrate A1 is dispensed from the substrate container C, the schedule creation for the second substrate A2 (that is, the arrangement of the processing / transport blocks A2 1 to A2 11 described below) is the first one. This is performed in parallel with the substrate processing of the substrate A1. If the change of the created schedule is permitted (step S15: YES), the scheduling function unit 29, as shown in FIGS. 17 and 18, all blocks constituting the schedule of the first substrate A1. Among these, the future block is deleted from the time axis (step S16). In the future block deletion, only the block corresponding to the already started resource operation and the block scheduled to start immediately after the current time are left, and all other blocks are deleted.
  • This schedule example are currently already started resource at time processing units SPIN1 ⁇ SPIN6 in FIG. 17, blocks corresponding to these resources is a preparatory block SP 1 ⁇ SP 6.
  • the resource scheduled to start immediately after the current time is the indexer robot IR and processing unit SPIN7, blocks corresponding to these resources is a first conveying block A1 1 and a preparation block SP 7. Therefore, as shown in FIGS. 17 and 18, the scheduling function unit 29 performs processing from the processing / transport blocks A1 1 to A1 11 and the preparatory blocks SP 1 to SP 12 scheduled at the current time in FIG. Blocks other than the transport block A1 1 and the preparatory blocks SP 1 to SP 7 , that is, the processing transport blocks A1 2 to A1 11 and the preparatory blocks SP 8 to SP 12 are deleted.
  • blocks that correspond to the operation of resources that have already been started but also blocks that correspond to the operations of resources that are scheduled to start immediately after the current time are the operations of resources that are scheduled to start immediately after the current time. This is because it may have already started.
  • the scheduling function unit 29 again arranges the preparation blocks SP 8 to SP 12 deleted in step S16 on the time axis (step S17).
  • the search for the positions where the preparatory blocks SP 8 to SP 12 are to be rearranged is performed in the same manner as the search for the arrangement positions of the preparatory blocks in step S6. Blocks SP 8 to SP 12 are rearranged.
  • the scheduling function unit 29 rearranges the processing / transport blocks A1 2 to A1 11 deleted in step S16 on the time axis and sets the processing / transport blocks A2 2 to A2 11 of the second substrate A2 to time. Place on the axis. The rearrangement of the deleted processing / transfer blocks A1 2 to A1 11 is performed in parallel with the arrangement of the processing / transfer blocks of the second substrate A2.
  • the scheduling function unit 29 acquires one deleted processing / transport block A1 2 to A1 11 (step S18).
  • the processing / transport block acquired at this time is the processing / transport block arranged at the earliest position on the time axis before deletion.
  • the scheduling function unit 29 reads out the temporary time table corresponding to the second substrate A2 from the first storage unit 26, refers to the temporary time table corresponding to the second substrate A2, and executes the temporary time table.
  • One processing / conveyance block included in the table is acquired (step S18).
  • the processing / conveying block acquired at this time is the processing / conveying block arranged at the earliest position on the time axis of the temporary time table among the non-arranged processing / conveying blocks.
  • the scheduling function unit 29 searches for the position where the acquired processing / transport block (the deleted processing / transport block and the processing / transport block of the second substrate) should be placed (step S19), and according to the search result.
  • the processing / conveying block is arranged (step S20).
  • the deleted process / transport block relocation position search and the second substrate A2 process / transport block layout position search are performed in parallel with each other.
  • the search for the position where the processing / conveyance block is to be arranged is performed in the same manner as the search for the arrangement position of the processing / conveyance block in step S9.
  • the scheduling function unit 29 determines that the process / transport block (the deleted process / transport block or the process / transport block of the second substrate A2) that is the target of the arrangement position is the same resource at the same time.
  • the earliest position on the time axis is searched while avoiding the redundant use and avoiding the high load information HL being assigned to the same time zone as the high load information HL of the arranged blocks (FIG. 8). Steps S61 to S65).
  • the scheduling function unit 29 As shown in FIG. 20, to reposition the first carrying block A1 2 deleted in step S16 to the original position. Further, as shown in FIG. 21, the scheduling function unit 29 arranges the first carry-out block A21 of the second substrate A2 after the first carry-out block A11 of the first substrate A1. In the example of FIG. 21, first-out block A2 1 second substrate A2 is disposed in substantially the same axial location the first carrying block A1 2 with time.
  • the rearranged position of the deleted processing / transport block and the processing / transport block placement position of the second substrate are performed in line (in parallel).
  • step S21 When the arrangement of all the deleted processing / conveying blocks and all the blocks constituting the temporary time table of the second substrate A2 is completed (step S21: YES), as shown in FIG.
  • the scheduling of the substrate A2 ends, and the change of the schedule (created schedule) of the first substrate A1 ends (step S22).
  • the schedule created and changed in this way is stored in the first storage unit 26 as part of the schedule data 33 (step S23).
  • step S15 when the change of the created schedule is prohibited (step S15: NO), the scheduling function unit 29 does not change the schedule of the first substrate A1, and does not change the schedule of the second substrate A2. Arrange processing / conveying blocks.
  • the scheduling function unit 29 reads the temporary time table corresponding to the second substrate A2 from the first storage unit 26, refers to the temporary time table corresponding to the second substrate A2, and performs the temporary time table.
  • One processing / conveying block included in the table is acquired (step S24).
  • the processing / conveying block acquired at this time is the processing / conveying block arranged at the earliest position on the time axis of the temporary time table among the non-arranged processing / conveying blocks.
  • the scheduling function unit 29 prevents the same processing / transport block from being used repeatedly at the same time, and the same time as the high load information HL of the block in which the high load information HL is already arranged. While avoiding assignment to a band, the earliest position on the time axis is searched (step S25), and the processing / conveying block is arranged according to the search result (step S26).
  • step S27 When the arrangement of all the blocks constituting the temporary time table for the second substrate A2 is completed (step S27: YES), the creation of the schedule for the second substrate A2 is completed (step S22).
  • the schedule of the second substrate A2 thus created is stored in the first storage unit 26 as part of the schedule data 33 (step S23).
  • the scheduling function unit 29 starts executing the schedule for the second substrate A2. That is, the scheduling function unit 29 starts the resource operation according to the schedule of the second substrate A2 that has been created. Specifically, the second substrate A2 is dispensed (unloaded) from the substrate container C by the indexer robot IR. The time of paying out the second substrate A2 from the substrate container C is the scheduling timing of the third substrate A3. When the scheduling timing of the third substrate A3 is reached (step S14: YES), that is, when the second substrate A2 is paid out from the substrate container C, a schedule for the third substrate A3 is created. .
  • the schedule for the third and subsequent substrates W is performed in the same manner as the schedule for the second substrate A2. That is, the processes in steps S14 to S27 in FIGS. 4B and 4C are applied in common to the third and subsequent substrates W. That is, when the change of the created schedule is allowed, the future block is deleted from each schedule of the (N ⁇ 1) th and previous substrates W when the schedule of the Nth substrate W is created. In parallel with the processing / transport block placement (schedule creation) of the Nth substrate, the rearranged position of the deleted processing / transport block is performed. Until “N” becomes 12 (that is, until the creation of the schedule for all the substrates W is completed. Step S28: YES), the same processing as Steps S14 to S27 of FIGS. 4B and 4C is repeated. An example of the entire schedule of a plurality of substrates W created by the scheduling function unit 29 is shown in FIG.
  • the scheduling function unit 29 refers to the content of the post-processing execution condition and determines whether or not to perform the post-processing process on the substrate W (step S29). ).
  • the scheduling function unit 29 determines that the substrate Post-processing blocks are arranged for the processing units SPIN1 to SPIN12 that may process W (steps S30 and S31).
  • the post-processing process is not required (that is, when the post-processing execution condition corresponding to the substrate W is “No”), the processes of steps S30 to S32 are skipped.
  • the scheduling function unit 29 determines whether the high-load information HL is added to the post-processing block to be searched (the post-processing block to be searched is “ Whether or not it corresponds to “high load operation” is checked (step S61 in FIG. 8). Further, when the high load information HL is added to the post-processing block to be searched (step S61 in FIG. 8: YES), the scheduling function unit 29 then transfers the high resource information to other resources (processing unit etc.). It is checked whether or not a block including load information (a block corresponding to “high load operation”) has been arranged (step S62 in FIG. 8).
  • step S61 NO in FIG. 8
  • step S64 the scheduling function unit 29 determines the earliest position on the time axis as the position of the post-processing block to be searched (step S64 in FIG. 8), and thereby the position of the post-processing block The search is completed (step S65 in FIG. 8).
  • the high-load information HL is added to the post-processing block that is the search target of the arrangement position (step S61 in FIG. 8: YES), and the block including the high-load information HL in other resources (“high” When the block corresponding to “load operation”) is arranged (step S62: YES in FIG. 8), the scheduling function unit 29 sets the height of the already arranged block as the arrangement position of the post-processing block to be searched. In the time zone not assigned to the load information HL, the earliest position on the time axis is determined (step S63 in FIG. 8), thereby completing the post-processing block arrangement position search (step S65 in FIG. 8).
  • the scheduling function unit 29 sets the post-processing block in the time zone in which the high-load information HL added to the post-processing block is not allocated the high-load information HL included in the arranged post-processing block. Thus, they are arranged at the earliest position on the time axis (by left-justified) in order (step S31).
  • the scheduling function unit 29 creates a schedule for the substrate W by arranging a plurality of blocks of each substrate W in time series, and creates a plurality of schedules for the substrate W. To do. At this time, blocks corresponding to the “high load operation” (that is, the substrate processing process, the pre-preparation process, and the pre-loading process process) are arranged on the time axis so that the corresponding “high load operation” does not start at the same time. Place it at a shifted position.
  • the “high load operation” that is, the substrate processing process, the pre-preparation process, and the pre-loading process process
  • the plurality of (for example, ten) preparation blocks will start the plan start time (schedule start There is a risk of being arranged at the same time.
  • the control load of the second controller 34 is concentrated at the start of the preparatory step.
  • the second controller 34 Data processing cannot be performed smoothly, which may cause problems such as processing delay in the substrate processing being performed (processing in the processing units SPIN1 and SPIN2).
  • the preparation block is set so that the same resource is not used repeatedly at the same time, and the high load information HL is in the same time zone as the high load information HL of the arranged block. While avoiding being assigned, it is arranged at the earliest position on the time axis. Therefore, as shown in FIG. 25A, the preparation steps of the processing units SPIN3 to SPIN12 are planned so that the start times thereof are shifted from each other. Therefore, problems such as processing delay can be avoided in the substrate processing being performed (processing in the processing units SPIN1 and SPIN2).
  • the substrate processing based on the same recipe is performed.
  • the effect can be made uniform among the substrates. This will be described more specifically.
  • a data flow until the substrate processing is started is shown in FIG. 25B.
  • the CPU 37 of the sub-controller 23 determines that the timing for starting the substrate processing has arrived based on the schedule data 33 or based on the process execution instruction issued by the process execution instruction unit 31 based on the schedule data 33 (time t1). ).
  • the CPU 37 requests a recipe corresponding to the substrate processing to be executed from the second storage unit 35 (time t2).
  • the second storage unit 35 selects a recipe and transmits it to the CPU 37 (time t3 to time t4).
  • the CPU 37 interprets the received recipe as data, and generates a control signal for causing the processing unit to be controlled (for example, the processing unit SPIN1) to execute the recipe (time t5 to t6). Then, the CPU 37 transmits the generated control signal to the processing unit SPIN1 (time t7 to t8). In response to this, the processing unit SPIN1 actually starts the substrate processing (time t9). As described above, a predetermined length of time is required for the processing unit SPIN1 to actually start the substrate processing after the timing for starting the substrate processing arrives (time t1 to t9).
  • the processing speed of the CPU 37 is not delayed. Therefore, the time required for recipe transmission / reception (time t3 to t4), data interpretation (time t5 to t6), and control signal transmission / reception (time t7 to t8) does not vary greatly for each substrate W. Therefore, the time from when the timing for starting substrate processing comes to when substrate processing is actually started in each processing unit SPIN can be made substantially the same. Therefore, it is possible to ensure the uniformity of substrate processing.
  • the creation of a schedule for a certain substrate for example, the first substrate A1
  • the creation of the schedule for another substrate for example, the substrate W after the second substrate A2
  • start the scheduled schedule it is possible to reduce the amount of schedule data stored in the first storage unit 26.
  • the unexecuted blocks deleted from the created schedule are rearranged in time series in parallel with the arrangement of the blocks related to the substrate W for which a new schedule is to be created.
  • the rearrangement of the deleted block and the arrangement of the block relating to the new substrate W do not cause interference between the plurality of substrates W, and a plurality of resources (processing units SPIN1 to SPIN12) are operated efficiently.
  • the processing is performed in time series so that the processing on the single substrate W is performed. Since the arrangement positions of the deleted blocks and the blocks related to the new substrate W can be determined more finely, the operating rate of resources such as the processing units SPIN1 to SPIN12 can be increased, thereby improving the productivity of the substrate processing apparatus 1. it can.
  • FIG. 26 shows a second modification of schedule creation.
  • This 2nd modification shows the example of arrangement
  • post-processing steps are planned during substrate processing in the processing units SPIN1 to SPIN7.
  • the processing units SPIN1 to SPIN7 are used, but the processing units SPIN8 to SPIN12 are usable but not actually used. That is, the number of processing units actually used is smaller than the number of usable processing units.
  • the scheduling function unit 29 creates a schedule for the post-processing process.
  • the post-processing steps of the processing units SPIN1 to SPIN12 are based only on the logic that “the same resource is not used redundantly at the same time and is arranged at the earliest position on the time axis”.
  • the post-processing blocks of the processing units SPIN8 to SPIN12 may be arranged at the planned start time (time when the schedule can be started).
  • the control load of the second control unit 34 is concentrated at the start of the post-processing step.
  • the second control unit 34 smoothly performs the data processing.
  • problems such as processing delays may occur in the substrate processing being performed (processing in the processing units SPIN1 to SPIN7).
  • the post-processing block is set so that the same resource is not used redundantly at the same time, and the high load information HL is the same time zone as the high load information HL of the arranged block. It is arranged at the earliest position on the time axis while avoiding being assigned to. For this reason, as shown in FIG. 26, the post-processing blocks of the processing units SPIN8 to SPIN12 are shifted from each other on the time axis. That is, it is planned that the start times of the post-processing steps of the processing units SPIN8 to SPIN12 are shifted from each other. Accordingly, problems such as processing delay can be avoided in the substrate processing being executed (processing in the processing units SPIN1 to SPIN7).
  • FIG. 27 shows a third modification of schedule creation.
  • the third modified example shows an arrangement example of post-processing blocks that are blocks for defining a substrate recovery process described below.
  • the substrate processing apparatus 1 there may be prepared a parallel recovery for simultaneously recovering the substrates W from each processing unit in a state where the substrates W are accommodated in a plurality of processing units. Prior to this parallel collection, a substrate collection step is executed in each processing unit.
  • the substrate recovery step is an operation performed to bring the substrate W into a state where it can be taken out of the processing chamber 17 (see FIG. 3A).
  • a specific example of the substrate recovery process is a water washing treatment of the substrate W. By washing the substrate W with water, the substrate W can be transferred to the outside of the processing chamber 17 regardless of the state of the substrate W before execution of the substrate recovery step.
  • the washing process of the substrate W can be performed by discharging the rinsing liquid onto the substrate W from the rinsing liquid nozzle 59 (see FIG. 3A) while rotating the substrate W. After the substrate recovery process, the substrate W is unloaded from the processing chamber 17 of each processing unit by the main transfer robot CR (see FIG. 1 and the like).
  • the substrate recovery process corresponds to the aforementioned “high load operation”. That is, at the start of the substrate collection process, the serial communication unit 36 of the sub-controller 23 (see FIG. 3B) reads the substrate collection recipe from the second storage unit 35.
  • the CPU 37 interprets the read recipe, and generates a control signal for realizing a recipe for substrate recovery in the processing units SPIN1 to SPIN12 to be controlled.
  • the serial communication unit 36 transmits the generated control signal to the processing units SPIN1 to SPIN12 to be controlled. Further, the processing units SPIN 1 to SPIN 12 to be controlled transmit a reception confirmation signal to the serial communication unit 36 immediately after receiving the control signal. Since the amount of data in the recipe for the substrate recovery process is enormous, a high control load is temporarily generated in the CPU 37 (see FIG. 3B). Therefore, a high load time zone exists at the start of the substrate processing process.
  • the substrate recovery block When planning such a substrate recovery process, suppose that the block of the substrate recovery process (hereinafter referred to as the substrate recovery block) is “the most same on the time axis while preventing the same resource from being used repeatedly at the same time. If it is arranged based only on the logic of “arrange at an early position”, there is a possibility that the substrate recovery blocks of the processing units SPIN1 to SPIN12 are arranged at the same time. In this case, since the substrate recovery process of the processing units SPIN1 to SPIN12 starts simultaneously, the control load of the second control unit 34 is concentrated at the start of the substrate recovery process. As a result, the second control unit 34 performs data processing smoothly. This is not possible, and there is a risk of delaying the substrate recovery process.
  • the substrate recovery block is set so that the same resource is not used redundantly at the same time, and the high load information HL has the same time zone as the high load information HL of the arranged block. It is arranged at the earliest position on the time axis while avoiding being assigned to. For this reason, as shown in FIG. 27, the substrate recovery blocks of the processing units SPIN1 to SPIN12 are shifted from each other on the time axis. That is, the substrate recovery steps of the processing units SPIN1 to SPIN12 are planned so that the start times thereof are shifted from each other. Therefore, problems such as processing delay in the substrate recovery process can be avoided.
  • the configuration and substrate processing contents of the substrate processing apparatus 1 shown in the above-described embodiment are merely examples, and the substrate processing apparatus 1 can take other configurations, and this can be applied to other substrate processing contents.
  • the invention can be applied.
  • the creation of the schedule for the first substrate A1 after the creation of the schedule for the first substrate A1, the creation of the schedule that has already been created in the state where the creation of the schedule for the second and subsequent substrates (second substrates) W has not been completed.
  • the schedule may be started after the schedule of all the substrates W of the process job is created.

Landscapes

  • Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Power Engineering (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Quality & Reliability (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • Cleaning Or Drying Semiconductors (AREA)
  • General Factory Administration (AREA)

Abstract

 この基板処理方法は、基板を1枚ずつ処理する少なくとも1つの枚葉式の処理ユニットと、前記処理ユニットを制御するための制御部とを有する基板処理装置の動作を時系列に従って規定するためのスケジュールを、前記基板処理装置に備えられたスケジュール作成部が作成するための方法であって、各基板に対する前記基板処理装置の動作の内容を規定する複数のブロックを時系列に従って配置することにより、その基板のスケジュールを作成するスケジュール作成工程を含み、前記スケジュール作成工程は、複数枚の基板のスケジュールの作成に関し、前記制御部に高い制御負荷を少なくとも一時的に生じさせる動作である高負荷動作に対応するブロックを、当該制御部に高い制御負荷が生じる時間帯である高負荷時間帯が集中しないように時間軸上に配置する高負荷回避配置工程を含む。

Description

基板処理装置のためのスケジュール作成方法および基板処理装置
 この発明は、基板処理装置の動作を時系列に従って規定するスケジュールを作成するための方法、および基板処理装置に関する。基板処理装置による処理対象となる基板の例には、半導体ウエハ、液晶表示装置用基板、プラズマディスプレイ用基板、FED(Field Emission Display)用基板、光ディスク用基板、磁気ディスク用基板、光磁気ディスク用基板、フォトマスク用基板、セラミック基板、太陽電池用基板などが含まれる。
 半導体装置や液晶表示装置などの製造工程では、半導体ウエハや液晶表示装置用ガラス基板などの基板を1枚ずつ処理する枚葉式の基板処理装置や、複数枚の基板で構成されるロットを一括して処理するバッチ式の基板処理装置が用いられる。特許文献1には、枚葉式の基板処理装置の動作を時系列に従って規定するスケジュールを作成する方法が開示されている。
特開2013-77796号公報
 枚葉式の基板処理装置は、たとえば複数の処理ユニットを備えている。基板処理装置に備えられている制御部は、作成されたスケジュールに従って、各処理ユニットの動作(処理)を行う。各処理ユニットで行われる種々の動作のうち基板処理工程や前準備工程の開始時には、処理内容データの送受信や処理内容データの読み込みやデータ解釈のため、制御部の制御負荷(CPU負荷や通信処理負荷)が高くなるおそれがある。したがって、複数の処理ユニット同士で基板処理工程等を同時に開始させる場合、処理内容データを同時に送信するために、制御部に制御負荷が集中してデータ処理を円滑に行えなくなり、その結果、いずれかの処理ユニットにおいて、基板処理工程、前準備工程等の開始が遅延するおそれがある。そのため、各処理ユニットでの基板処理の均一性が保証できず、基板の処理結果に問題が発生するおそれがある。例えば、処理ユニットに搬入されてから基板処理を開始するまでの時間がばらつくと、基板が処理ユニット内のミストに曝される時間が不均一になる。ミストは基板の表面状態に影響を与えることがあるため、基板処理を開始するまでの時間は基板間で均一になることが望ましい。また、基板処理が終了した基板を処理ユニットから搬出するまでの時間がばらつくと、次の処理ユニットで基板処理を開始可能になるまでの時間が不均一になり、前の基板処理の効果を次の基板処理に対して安定的に及ぼすことができなくなるおそれがある。
 このような現象が生じると、各基板に対して同一のレシピを適用しても同一の基板処理の効果を得ることができなくなるおそれがある。
 処理開始の遅延を防止するための方策として、制御部の処理性能を向上させたり、制御部の台数を増やしたりすることが考えられるが、これらの方策では、新たな制御部の設置によりコストアップになるおそれがある。また、それだけでなく、消費電力の上昇や、基板処理装置の構成の複雑化を招くおそれもある。そのため、本願発明者は、スケジュールの作成を工夫して制御部でのデータ処理の効率化を図ることにより、制御部での制御負荷の集中を回避させることを検討している。
 そこで、この発明の目的の一つは、制御部でのデータ処理の効率化が図られたスケジュールを作成できるスケジュール作成方法を提供することである。
 また、この発明の他の目的は、制御部でのデータ処理の効率化を図りながら基板を処理できる基板処理装置を提供することである。
 この発明は、基板を1枚ずつ処理する少なくとも1つの枚葉式の処理ユニットと、前記処理ユニットを制御するための制御部とを有する基板処理装置の動作を時系列に従って規定するためのスケジュールを、前記基板処理装置に備えられたスケジュール作成部が作成するための方法であって、各基板に対する前記基板処理装置の動作の内容を規定する複数のブロックを時系列に従って配置することにより、その基板のスケジュールを作成するスケジュール作成工程を含み、前記スケジュール作成工程は、複数枚の基板のスケジュールの作成に関し、前記制御部に高い制御負荷を少なくとも一時的に生じさせる動作である高負荷動作に対応するブロックを、当該制御部に高い制御負荷が生じる時間帯である高負荷時間帯が集中しないように時間軸上に配置する高負荷回避配置工程を含む、スケジュール作成方法を提供する。
 この方法によれば、スケジュール作成部は、各基板に対する処理内容を規定する複数のブロックを時系列に従って配置することにより当該基板のスケジュールを作成し、この基板のスケジュールを、処理対象となる基板枚数分作成する。このとき、高負荷動作に対応するブロックを、その高負荷時間帯が集中しないように時間軸上に配置する。こうして作成されたスケジュールでは、制御部での制御負荷の集中が回避されている。これにより、制御部でのデータ処理の効率化が図られたスケジュールを作成できるスケジュール作成方法を提供できる。
 この発明の一実施形態では、前記高負荷動作に対応するブロックには、前記高負荷時間帯に対応する部分に、高負荷情報が付加されており、前記高負荷回避配置工程は、複数枚の基板のスケジュールの作成に関し、同じ時間帯に所定数以上の前記高負荷情報が割り当てられないように当該高負荷動作に対応するブロックを配置する。
 この方法によれば、スケジュール作成部は、高負荷動作に対応するブロックを、同じ時間帯に所定数以上の高負荷情報が割り当てられないように配置する。これにより、高負荷動作に対応するブロックを、その高負荷時間帯が集中しないように、確実および簡単に配置できる。
 前記高負荷時間帯は、前記高負荷動作の開始時であってもよい。
 この方法によれば、各リソースの動作の開始時には、制御部での処理データの送受信や当該処理データのデータ解釈のために、制御部の制御負荷が高まることがある。すなわち、高負荷動作の開始時が高負荷時間帯になる。
 仮に、複数枚の基板のスケジュールにおいて、高負荷動作に対応するブロック同士を、当該高負荷動作が同時に開始するように時間軸上に配置すると、当該高負荷動作の開始時に、制御部の制御負荷が集中し制御部にてデータ処理を円滑に行えないおそれがある。その結果、いずれかのリソースの動作開始が遅延するおそれがある。
 これに対し、この方法では、スケジュール作成部は、高負荷動作に対応するブロックを、対応する高負荷動作の開始時が同時期に集中しないように時間軸上に配置する。したがって、制御部での制御負荷の集中が回避される結果、制御部でのデータ処理の効率化が図られたスケジュールを作成でき、ゆえに、リソースの動作開始の遅延を確実に防止できる。
 前記高負荷動作は、前記処理ユニットが基板を処理する基板処理工程、前記処理ユニットが前記基板処理工程の準備を行う予備処理工程、前記処理ユニットが当該処理ユニット内に基板を搬入するための動作を行う搬入前処理工程、および前記処理ユニットからの基板の回収に先立って基板に所定の処理を施す基板回収工程の少なくとも一つを含んでいてもよい。
 前記基板処理装置では、プロセスジョブが共通する複数枚の基板のうち所定の第1の基板のスケジュールの作成終了後、前記複数枚の基板のうち処理順序が前記第1の基板よりも後の第2の基板のスケジュールの作成が終わっていない状態で、作成済みのスケジュールの実行が開始されるようになっていてもよい。この場合、前記方法は、前記作成済みのスケジュールの実行開始後において、当該作成済みのスケジュールのうち未実行の部分を変更するスケジュール変更工程をさらに含んでいてもよい。
 この方法によれば、プロセスジョブが共通する複数枚の基板のうちいずれかの基板のスケジュールの作成が終了すると、他の基板のスケジュールの作成が未終了であっても、作成したスケジュールの実行を開始する。
 たとえば、特許文献1に記載のように、プロセスジョブが共通する全ての基板のスケジュールの作成が終了した後に、基板処理装置の動作を開始させるようにする場合、膨大な量のデータを基板処理装置に記憶させる必要がある。
 これに対し、この方法では、少なくとも実行対象の基板のスケジュールを記憶しておけば足り、これにより、基板処理装置に記憶させるべきスケジュールのデータ量の低減を図ることができる。
 また、作成済みのスケジュールのうち未実行の部分を、当該スケジュールの開始後に変更するので、基板処理装置の実際の動作状況(基板処理状況)に応じて、スケジュールの内容を変更できる。これにより、実際の動作状況に応じた柔軟なスケジュールを作成できる。
 前記スケジュール変更工程は、前記スケジュールの実行開始後において、前記作成済みのスケジュールのうち未実行のブロックを削除する工程と、削除したブロックを、前記第2の基板についてのブロックの配置と並行して、時系列に従って再配置する再配置工程とを含んでいてもよい。
 この方法によれば、第2の基板に関するブロックの配置と並行して、作成済みのスケジュールから削除した未実行のブロックを、時系列に従って再配置する。削除したブロックの再配置および第2の基板に関するブロックの配置は、複数枚の基板相互間の干渉が生じることがなく、かつ効率的にリソース(処理ユニット等)を稼働させて複数枚の基板に対する処理が行われるように、時系列に従って行われる。削除したブロックおよび第2の基板に関するブロックの配置位置をよりきめ細かに決定できるので、リソースの稼働率を高めることができ、これにより、基板処理装置の生産性を向上できる。
 また、この発明は、基板を1枚ずつ処理する少なくとも1つの枚葉式の処理ユニットと、前記処理ユニットを制御するための制御部と、前記処理ユニットを含むリソースの動作を、時系列に従って規定するためのスケジュールを作成するためのスケジュール作成部とを含み、前記スケジュール作成方法によって前記スケジュール作成部が作成したスケジュールに従って、前記制御部は前記リソースを制御する、基板処理装置を提供する。
 この構成によれば、スケジュール作成部は、各基板に対する処理内容を規定する複数のブロックを時系列に従って配置することにより当該基板のスケジュールを作成し、この基板のスケジュールを、処理対象となる基板枚数分作成する。このとき、高負荷動作に対応するブロックを、その高負荷時間帯が集中しないように時間軸上に配置する。こうして作成されたスケジュールでは、制御部での制御負荷の集中が回避されている。このスケジュールに従って制御部がリソースを制御するので、制御部でのデータ処理の効率化を図りながら基板を処理できる基板処理装置を提供できる。
 前記制御部は、プロセスジョブが共通する複数枚の基板のうち所定の第1の基板のスケジュール作成の終了後、前記複数枚の基板のうち処理順序が前記第1の基板よりも後の第2の基板のスケジュールの作成が終わっていない状態で、作成済みのスケジュールの実行を開始してもよい。
 この構成によれば、ある基板のスケジュールの作成が終了すると、他の基板のスケジュールの作成が未終了であっても、作成したスケジュールの実行を開始する。したがって、基板処理装置に記憶させるスケジュールのデータ量の低減を図ることが可能である。
 本発明における前述の、またはさらに他の目的、特徴および効果は、添付図面を参照して次に述べる実施形態の説明により明らかにされる。
この発明の一実施形態に係る基板処理装置のレイアウトを示す図解的な平面図である。 前記基板処理装置の図解的な側面図である。 前記基板処理装置に備えられた処理ユニットの内部を水平方向に見た模式図である。 前記基板処理装置の電気的構成を説明するためのブロック図である。 この発明の一実施形態を説明するためのフローチャートであり、スケジューリング機能部による処理例が示されている。 この発明の一実施形態を説明するためのフローチャートであり、スケジューリング機能部による処理例が示されている。 この発明の一実施形態を説明するためのフローチャートであり、スケジューリング機能部による処理例が示されている。 この発明の一実施形態を説明するためのフローチャートであり、スケジューリング機能部による処理例が示されている。 この発明の一実施形態を説明するためのフローチャートであり、スケジューリング機能部による処理例が示されている。 仮タイムテーブルの一例を示す。 仮タイムテーブル作成処理の流れを示すフローチャートである。 ブロックの配置位置検索処理の流れを示すフローチャートである。 スケジュールの作成の一例を示す。 スケジュールの作成の一例を示す。 スケジュールの作成の一例を示す。 スケジュールの作成の一例を示す。 スケジュールの作成の一例を示す。 スケジュールの作成の一例を示す。 スケジュールの作成の一例を示す。 スケジュールの作成の一例を示す。 スケジュールの作成の一例を示す。 スケジュールの作成の一例を示す。 スケジュールの作成の一例を示す。 スケジュールの作成の一例を示す。 スケジュールの作成の一例を示す。 スケジュールの作成の一例を示す。 スケジュールの作成の一例を示す。 スケジューリング機能部によって作成される、複数枚の基板のスケジュールの全体を示す。 スケジュールの作成の第1の変形例を示す。 基板処理を開始するまでのデータフローを示す。 スケジュールの作成の第2の変形例を示す。 スケジュールの作成の第3の変形例を示す。
 図1は、この発明の一実施形態に係る基板処理装置1のレイアウトを示す図解的な平面図であり、図2は、その図解的な側面図である。図3Aは、基板処理装置1に備えられた処理ユニットSPIN1~SPIN12の内部を水平方向に見た模式図である。
 基板処理装置1は、インデクサセクション2と、処理セクション3とを含む。処理セクション3は、インデクサセクション2との間で基板Wを受け渡しするための受け渡しユニットPASSを備えている。インデクサセクション2は、未処理の基板Wを受け渡しユニットPASSに渡し、受け渡しユニットPASSから処理済みの基板Wを受け取る。処理セクション3は、受け渡しユニットPASSから未処理の基板Wを受け取って、その基板Wに対して、処理剤(処理液または処理ガス)を用いた処理、紫外線等の電磁波を用いた処理、物理洗浄処理(ブラシ洗浄、スプレーノズル洗浄等)などの各種の処理を施す。そして、処理セクション3は、処理後の基板Wを受け渡しユニットPASSに渡す。
 インデクサセクション2は、複数のステージST1~ST4と、インデクサロボットIRとを含む。
 ステージST1~ST4は、複数枚の基板W(たとえば半導体ウエハ)を積層状態で収容した基板収容器Cをそれぞれ保持できる基板収容器保持部である。基板収容器Cは、基板Wを密閉した状態で収納するFOUP(Front Opening Unified Pod)であってもよいし、SMIF(Standard Mechanical Inter Face)ポッド、OC(Open Cassette)等であってもよい。たとえば、基板収容器CをステージST1~ST4に載置したとき、基板収容器Cでは、水平姿勢の複数枚の基板Wが互いに間隔を開けて鉛直方向に積層された状態となる。
 インデクサロボットIRは、たとえば、基台部6と、多関節アーム7と、一対のハンド8A,8Bとを含む。基台部6は、たとえば、当該基板処理装置1のフレームに固定されている。多関節アーム7は、水平面に沿って回動可能な複数本のアーム部を互いに回動可能に結合して構成されており、アーム部の結合箇所である関節部でアーム部間の角度を変更することによって、屈伸するように構成されている。多関節アーム7の基端部は、基台部6に対して、鉛直軸線回りの回動が可能であるように結合されている。さらに、多関節アーム7は、基台部6に対して昇降可能に結合されている。換言すれば、基台部6には、多関節アーム7を昇降させるための昇降駆動機構、多関節アーム7を鉛直軸線回りに回動させるための回動駆動機構が内蔵されている。また、多関節アーム7には、各アーム部を独立して回動させるための個別回動駆動機構が備えられている。多関節アーム7の先端部に、鉛直軸線回りの個別回動および水平方向への個別進退が可能であるように、ハンド8A,8Bが結合されている。多関節アーム7には、ハンド8A,8Bを鉛直軸線回りに個別に回動させるためのハンド回動駆動機構と、ハンド8A,8Bを水平方向に個別に進退させるためのハンド進退機構とが備えられている。ハンド8A,8Bは、たとえば、1枚の基板Wをそれぞれ保持できるように構成されている。なお、ハンド8A,8Bは上下に重なった状態で配置されていてもよいが、図1では、明瞭化のために、ハンド8A,8Bを紙面に平行な方向(水平方向)にずらして描いてある。
 この構成により、インデクサロボットIRは、いずれかのステージST1~ST4に保持された基板収容器Cから一枚の未処理基板Wをハンド8Aで搬出して受け渡しユニットPASSに渡すように動作する。さらに、インデクサロボットIRは、受け渡しユニットPASSから一枚の処理済み基板Wをハンド8Bで受け取って、いずれかのステージST1~ST4に保持された基板収容器Cに収容するように動作する。
 処理セクション3は、複数(この実施形態では12個)の処理ユニットSPIN1~SPIN12と、主搬送ロボットCRと、前述の受け渡しユニットPASSとを含む。
 処理ユニットSPIN1~SPIN12は、この実施形態では、立体的に配置されている。より具体的には、三階建て構造をなすように複数の処理ユニットSPIN1~SPIN12が配置されており、各階部分に4つの処理ユニットが配置されている。すなわち、一階部分に4つの処理ユニットSPIN1,SPIN4,SPIN7,SPIN10が配置され、二階部分に別の4つの処理ユニットSPIN2,SPIN5,SPIN8,SPIN11が配置され、三階部分にさらに別の処理ユニットSPIN3,SPIN6,SPIN9,SPIN12が配置されている。さらに具体的には、平面視において処理セクション3の中央に主搬送ロボットCRが配置されており、この主搬送ロボットCRとインデクサロボットIRとの間に受け渡しユニットPASSが配置されている。受け渡しユニットPASSを挟んで対向するように、3つの処理ユニットSPIN1~SPIN3を積層した第1処理ユニット群G1と、別の3つの処理ユニットSPIN4~SPIN6を積層した第2処理ユニット群G2とが配置されている。そして、第1処理ユニット群G1に対してインデクサロボットIRから遠い側に隣接するように、3つの処理ユニットSPIN7~SPIN9を積層した第3処理ユニット群G3が配置されている。同様に、第2処理ユニット群G2に対してインデクサロボットIRから遠い側に隣接するように、3つの処理ユニットSPIN10~SPIN12を積層した第4処理ユニット群G4が配置されている。第1~第4処理ユニット群G1~G4によって、主搬送ロボットCRが取り囲まれている。
 主搬送ロボットCRは、たとえば、基台部11と、多関節アーム12と、一対のハンド13A,13Bとを含む。基台部11は、たとえば、当該基板処理装置1のフレームに固定されている。多関節アーム12は、水平面に沿って延びた複数本のアーム部を互いに回動可能に結合して構成されており、アーム部の結合箇所である関節部でアーム部間の角度を変更することによって、屈伸するように構成されている。多関節アーム12の基端部は基台部11に対して、鉛直軸線回りの回動が可能であるように結合されている。さらに、多関節アーム12は、基台部11に対して昇降可能に結合されている。換言すれば、基台部11には、多関節アーム12を昇降させるための昇降駆動機構、多関節アーム12を鉛直軸線回りに回動させるための回動駆動機構が内蔵されている。また、多関節アーム12には、各アーム部を独立して回動させるための個別回動駆動機構が備えられている。多関節アーム12の先端部に、鉛直軸線回りの個別回動および水平方向への個別進退が可能であるように、ハンド13A,13Bが結合されている。多関節アーム12には、ハンド13A,13Bを鉛直軸線回りに個別に回動させるためのハンド回動駆動機構と、ハンド13A,13Bを水平方向に個別に進退させるためのハンド進退機構とが備えられている。ハンド13A,13Bは、たとえば、1枚の基板Wをそれぞれ保持できるように構成されている。なお、ハンド13A,13Bは上下に重なった状態で配置されていてもよいが、図1では、明瞭化のために、ハンド13A,13Bを紙面に平行な方向(水平方向)にずらして描いてある。
 この構成により、主搬送ロボットCRは、受け渡しユニットPASSから未処理の一枚の基板Wをハンド13Aで受け取り、その未処理の基板Wをいずれかの処理ユニットSPIN1~SPIN12に搬入する。また、主搬送ロボットCRは、処理ユニットSPIN1~SPIN12で処理された処理済みの基板Wをハンド13Bで受け取り、その基板Wを受け渡しユニットPASSに渡す。
 処理ユニットSPIN1~SPIN12は、基板Wを1枚ずつ処理する枚葉型の処理ユニットである。処理ユニットSPIN1~SPIN12は、基板Wの中央部を通る鉛直な軸線まわりに基板Wを回転させながら、基板Wに処理液を供給する液処理ユニットであってもよいし、処理ガスを用いた処理を行うガス処理ユニットであってもよいし、紫外線等の電磁波を用いた処理を行う電磁波処理ユニットであってもよいし、物理洗浄処理(ブラシ洗浄、スプレーノズル洗浄等)を行う物理洗浄処理ユニットであってもよい。図3Aには、処理ユニットSPIN1~SPIN12が、液処理ユニットである例を示している。
 図3Aに示すように、各処理ユニットSPIN1~SPIN12は、内部空間を有する箱形の処理室17と、処理室17内で1枚の基板Wを水平姿勢で保持して基板Wの中央部を通る鉛直な回転軸線X1まわりに基板Wを回転させるスピンチャック15と、基板Wの回転軸線X1まわりにスピンチャック15を取り囲む筒状の処理カップ16とを含む。
 処理室17は、箱状の隔壁17aによって隔壁されている。隔壁17aには、処理室17内に基板Wを搬出入するための開口17bが形成されている。開口17bはシャッタ17cによって開閉される。シャッタ17cは、シャッタ昇降機構(図示しない)によって、開口17bを覆う閉位置(図3Aに二点鎖線で示す)と、開口17bを開放する開位置(図3Aに実線で示す)との間で昇降させられる。
 基板Wの搬出入の際には、主搬送ロボットCRが、開口17bを通して処理室17内にハンド13A,13Bをアクセスさせる。これにより、スピンチャック15上に未処理の基板Wを載置したり、スピンチャック15から処理済の基板Wを取り除いたりできる。
 図3Aに示すように、スピンチャック15は、水平な姿勢をなす円板状のスピンベース15aと、スピンベース15aの上面外周部から上方に突出する複数のチャックピン15bと、複数のチャックピン15bを基板Wの周縁部に押し付けるチャック開閉機構と、スピンベース15aの中央部から下方に延びる回転軸15cと、回転軸15cを回転させることにより、複数のチャックピン15bに保持されている基板Wを回転させるスピンモータ15dとを含む。スピンチャック15は、図3Aに示す挟持式のチャックに限らず、基板の下面をスピンベースの上面に吸着させることにより基板を水平な姿勢で保持するバキューム式のチャックであってもよい。
 図3Aに示すように、処理ユニットSPIN1~SPIN12は、スピンチャック15に保持されている基板Wの上面に向けて薬液を吐出する薬液ノズル51と、薬液ノズル51に供給される薬液を貯留する薬液タンク52と、薬液タンク52内の薬液を薬液ノズル51に導く薬液配管53と、薬液タンク52内の薬液を薬液配管53に送る送液装置54(たとえば、ポンプ)と、薬液配管53の内部を開閉する薬液バルブ55とを含む。処理ユニットSPIN1~SPIN12は、さらに、薬液バルブ55よりも上流側(薬液タンク52側)で薬液配管53と薬液タンク52とを接続する循環配管56と、循環配管56の内部を開閉する循環バルブ57と、循環配管56を流れる薬液の温度を調節する温度調節装置58とを含む。
 薬液バルブ55および循環バルブ57の開閉は、コンピュータ21(図3B参照)によって制御される。薬液タンク52内の薬液が薬液ノズル51に供給されるときには、薬液バルブ55が開かれ、循環バルブ57が閉じられる。この状態では、送液装置54によって薬液タンク52から薬液配管53に送られた薬液が、薬液ノズル51に供給される。一方、薬液ノズル51への薬液の供給が停止されるときには、薬液バルブ55が閉じられ、循環バルブ57が開かれる。この状態では、送液装置54によって薬液タンク52から薬液配管53に送られた薬液が、循環配管56を通じて薬液タンク52内に戻る。そのため、薬液ノズル51への薬液の供給が停止されている供給停止中は、薬液が、薬液タンク52、薬液配管53、および循環配管56によって構成された循環経路を循環し続ける。温度調節装置58は、循環配管56内を流れる薬液の温度を調節する。したがって、薬液タンク52内の薬液は、供給停止中に循環経路で加熱され、室温よりも高い温度に維持される。
 さらに、薬液ノズル51から微少量の薬液を吐出してプリディスペンスが行えるように、薬液バルブ55は開度が調整可能となっている。また、薬液ノズル51近傍には薬液回収部材(図示しない)が配置されており、薬液ノズル51からプリディスペンスされた薬液が回収できるようになっている。
 また、図3Aに示すように、処理ユニットSPIN1~SPIN12は、スピンチャック15に保持されている基板Wの上面に向けてリンス液を吐出するリンス液ノズル59と、リンス液供給源(図示しない)からのリンス液をリンス液ノズル59に供給するリンス液配管60と、リンス液配管60からリンス液ノズル59へのリンス液の供給および供給停止を切り換えるリンス液バルブ61とを含む。リンス液としては、DIW(脱イオン水)等が用いられる。薬液ノズル51により基板Wに薬液を供給後に、リンス液ノズル59からリンス液を基板Wに供給することにより、基板Wに付着している薬液を洗い流すことができる。
 さらに、処理ユニットSPIN1~SPIN12は、処理室17内の所定部位(たとえばスピンベース15a)に向けて洗浄液を吐出するための洗浄液ノズル62と、洗浄液供給源(図示しない)からの洗浄液を洗浄液ノズル62に供給する洗浄液配管63と、洗浄液配管63から洗浄液ノズル62への洗浄液の供給および供給停止を切り換える洗浄液バルブ64とを含む。洗浄液としては、DIW(脱イオン水)等が用いられる。洗浄液ノズル62は、処理室17の内壁)に取り付けられている。複数のチャックピン15bにダミー基板(図示しない。洗浄用治具)や基板Wが保持された状態で、スピンベース15aおよびチャックピン15bが回転されると共に、洗浄液ノズル62から洗浄液が吐出される。洗浄液ノズル62から吐出される洗浄液が、チャックピン15bに保持されているダミー基板の上面または基板Wの上面で跳ね返って、処理室17内に洗浄液が飛散するようになる。洗浄液をこのように飛散させることで、処理室17内に配置された各種部品(チャックピン15bや処理カップ16)を洗浄できる。
 図3Bは、基板処理装置1の電気的構成を説明するためのブロック図である。基板処理装置1は、処理ユニットSPIN1~SPIN12、主搬送ロボットCRおよびインデクサロボットを制御するコンピュータ21を含む。
 コンピュータ21は、メインコントローラ22と、サブコントローラ23とを備えている。
 メインコントローラ22は、パーソナルコンピュータ(FAパソコン)の形態を有していてもよく、第1の制御部24と、出入力部25と、第1の記憶部26とを備えている。第1の制御部24は、CPU等の演算ユニットを含む。出入力部25は、表示ユニット等の出力機器と、キーボード、ポインティングデバイス、タッチパネル等の入力機器とを含む。さらに、出入力部25は、ホストコンピュータHCとの通信のための通信モジュールを含む。第1の記憶部26は、固体メモリデバイス、ハードディスクドライブ等の記憶装置を含む。
 第1の制御部24は、オンライン制御部27と、装置管理部28と、スケジューリング機能部(スケジュール作成部)29とを含む。スケジューリング機能部29は、スケジューリングエンジン30と、処理実行指示部31とを含む。スケジューリングエンジン30は、基板Wを基板収容器Cから搬出し処理ユニットSPIN1~SPIN12で処理した後基板収容器Cに収容するために、基板処理装置1のリソースを時系列に従って作動させるためのスケジュール(計画)を作成する。スケジューリングエンジン30によるスケジュールの作成の結果(スケジューリング結果32)は、処理実行指示部31に与えられる。処理実行指示部31は、与えられたスケジュールに従って、基板処理装置1のリソースを作動させる旨のコマンドを、サブコントローラ23に向けて送信する。
 第1の記憶部26は、第1の制御部24をスケジューリング機能部として作動させるためのスケジュール作成プログラム39と、スケジューリング機能部によって作成されたスケジュールデータ33とを含むデータ等を記憶するように構成されている。
 サブコントローラ23は、たとえば制御VME(VERSAmodule Eurocard)ボードにより構成されており、第2の制御部34と、第2の記憶部35と、シリアル通信部36とを備えている。第2の制御部34は、演算処理を実行するCPU37を含む。第2の制御部34が、特許請求の範囲の「制御部」に相当する。
 第2の記憶部35は、基板処理装置1による処理内容のデータである処理内容データ38を含む各種データ等を記憶するように構成されている。処理内容データ38は、各基板Wに付与されたプロセスジョブ符号と、プロセスジョブ符号に対応付けられたレシピとを含む。
 レシピは、基板処理内容を定義したデータであり、基板処理条件および基板処理手順を含む。より具体的には、並行処理ユニット情報、使用処理液情報、処理時間情報、後処理実行条件、前準備実行条件等を含む。
 「並行処理ユニット情報」は、当該レシピに含まれる基板処理を実行することのできる処理ユニットを指定する情報であり、指定された処理ユニットによる並行処理が可能であることを表す。換言すれば、指定処理ユニットのうちの一つが使用できないときには、それ以外の指定処理ユニットによる代替が可能であることを表す。「使用できないとき」とは、当該処理ユニットが別の基板Wの処理のために使用中であるとき、当該処理ユニットが故障中であるとき、オペレータが当該処理ユニットで基板Wの処理をさせたくないと考えているときなどである。
 「使用処理液情報」は、当該レシピに含まれる基板処理の際に使用される処理液(各種薬液およびリンス液)に関する情報である。
 「処理時間情報」は、レシピに含まれる各工程の実行に要する時間に関する情報である。具体的には当該レシピの指定処理ユニットにおける基板の滞在時間、次に述べる予備処理工程(前準備工程および後処理工程)の実行に要する時間などが含まれる。予備処理工程とは所定の処理ユニットにおいて基板処理を実行する前に、当該基板処理が精密に実行できるよう、基板処理工程の準備を行う処理であり、本実施形態では、基板処理の前に実行される前準備工程と、直前の基板処理の後に実行される後処理工程とが対応する。
 「前準備実行条件」は、前準備工程に関する情報である。
 前準備工程とは、所定の基板処理を実行する前に処理ユニットで実行すべき前準備作業である。
 たとえば、図3Aを用いて前述したように、処理ユニットSPIN1~12には、所定の薬液を規定された温度で基板Wに向けて吐出するための温度調節装置58が設けられている。レシピに規定された目的温度で薬液を基板Wに向けて吐出させる必要があるが、温度調節装置58が薬液を目的温度まで加熱するには一定時間を要する。このため、薬液ノズル51から基板Wに向けて薬液を吐出させる前から、循環バルブ57を開放し温度調節装置58を作動させた状態で送液装置54を作動させることで循環配管56の中で薬液を循環させることがある(前準備工程の例1)。
 また、薬液ノズル51および薬液配管53の少なくとも一方に目的温度範囲外となってしまった薬液が残留していると目的温度外の薬液が基板Wに向けて吐出されるおそれがある。このため、実際に薬液吐出を開始する所定時間前から薬液ノズル51から少量の薬液を排出する、いわゆるプリディスペンスを実行することがある(前準備工程の例2)。
 前準備実行条件には、どのような前準備(たとえば前準備工程の例1を行う場合には、循環バルブ57の開放、温度調節装置58および送液装置54の作動、温度調節装置58の所定の設定温度での温度調整等)を、どのタイミング(たとえば、基板処理の開始の所定時間前)から開始すべきか(たとえば、割り当てられた処理ユニットにおいて基板処理を開始する所定時間前、あるいは薬液ノズル51から実際に薬液を吐出する所定時間前)等の前準備工程の具体的内容が記述されている。
 さらに、前準備実行条件には、前準備工程の要否に関する情報も記述されている。
 前準備工程の要否は、基板処理の内容や、当該基板処理の前に実行される基板処理の内容等によって決定される。前準備工程の要否の一例として次のような例を挙げる。たとえば、温度依存性の高い処理液を用いる基板処理を実行する場合には、前準備工程としてのプリディスペンス処理を実行することが必要であると考えられるから、前準備工程の実行を「要」にする。一方、温度依存性の低い処理液を用いる基板処理を実行する場合には、プリディスペンス処理は不要であるから、前準備工程の実行を「否」にする。なお、前準備工程の内容と要否とは、プロセスジョブ毎に規定されている。
 また、前準備工程を必要とする基板処理を連続して実行する場合、同一の処理ユニットの2回目以降の基板処理の前には、原則として、前準備工程を実行する必要がない。しかしながら、前の基板処理のために前準備工程が実行された場合であっても、次の基板処理工程を開始するまでに装置異常等により長時間が経過した場合には、前準備工程が必要であると判断される場合がある。
 「後処理実行条件」は、後処理工程に関する情報である。
 後処理工程とは、所定の基板処理を実行した後に、処理ユニットSPIN1~SPIN12の次の基板処理のために実行すべき作業である。
 後処理実行条件には、後処理工程の具体的内容に関する情報、後処理工程の要否に関する情報が含まれている。後処理工程の要否および内容は、レシピに含まれるブロック毎に規定されている。
 後処理工程の具体例は、処理ユニットSPIN1~SPIN12の処理室17内の洗浄処理(チャンバ洗浄工程)である。処理室17(図3A参照)内の洗浄を実行することによって、処理室17に次に搬入される基板Wに対して、前の基板Wに対して行われた基板処理の影響が及ぶことを回避できる。これにより、精密な基板処理を実現でき、基板処理品質を保つことができる。後処理工程は、洗浄処理(チャンバ洗浄工程)に限らず、基板を保持するチャックピンの洗浄(チャックピン洗浄工程)や、処理室17内のその他の部品(たとえば処理カップ16(図3A参照))の洗浄処理(部品洗浄工程)であってもよいし、これらの洗浄処理の2つ以上を含んでいてもよい。チャンバ洗浄や部品洗浄は洗浄液ノズル62(図3A参照)から洗浄液を吐出することで実行できる。
 後処理実行条件には、後処理工程の要否に関する情報が記述されている。後処理工程の要否は、レシピに含まれるブロック毎に規定されている。
 後処理工程の要否は、基板処理の内容や、当該基板処理の前に実行される基板処理の内容、当該基板処理の直後に実行される基板処理の内容等によって決定される。後処理工程の要否の一例として次のような例を挙げる。処理室17を汚染するおそれが大きい基板処理を行う場合には、その次に基板処理を行うか否かに拘わらず後処理工程の実行を「要」
にする。また、たとえば同一の処理室17で処理工程が実行されないまま、所定時間が経過した場合や所定枚数の基板Wが処理された場合には、後処理工程の実行を「要」にする。さらに、同一の処理室17で直後に行われる基板処理に影響を与える可能性がある場合には、当該基板処理後に後処理工程を実行する必要があるから「要」にする。反対に、直前の基板処理で同じ処理液しか使用しない場合など、当該基板処理が直後の基板処理に影響を与えない場合には、基板処理の後に後処理工程を行う必要がないから「否」にする。
 プロセスジョブとは、共通の処理が施される1枚または複数枚の基板Wをいう。プロセスジョブ符号とは、プロセスジョブを識別するための識別情報である。すなわち、共通のプロセスジョブ符号が付与された複数枚の基板Wには、当該プロセスジョブ符号に対応付けられたレシピによる共通の処理が施される。ただし、異なるプロセスジョブ符号に対応する処理内容(レシピ)が同じである場合もあり得る。たとえば、処理順序(基板収容器C(図1等参照)からの払い出し順序)が連続している複数枚の基板Wに対して共通の処理が施されるとき、それらの複数枚の基板Wに対して共通のプロセスジョブ符号が付与される。
 処理内容データ38の作成および記憶は、基板処理装置1での基板処理に先立ってオペレータの操作により行われる。具体的には、出入力部25の操作によりオペレータが入力する情報に基づいて、第1の制御部24は、プロセスジョブおよびレシピを生成する。生成された処理内容データ38(プロセスジョブおよびレシピ)は、サブコントローラ23に付与されて、第2の記憶部35に格納される。
 シリアル通信部36は、処理ユニットSPIN1~SPIN12、主搬送ロボットCRおよびインデクサロボットIRとの間でシリアル通信を行う。
 なお、サブコントローラ23は、メインコントローラ22と同一のコンピュータで構成されていてもよいし、メインコントローラ22と別のコンピュータで構成されていてもよい。
 基板収容器Cが基板処理装置1に搬入されると、ホストコンピュータHCは、プロセスジョブ生成指示をメインコントローラ22に送信する。プロセスジョブ生成指示には、プロセスジョブ符号と、レシピの識別情報とが含まれる。
 各プロセスジョブには、プロセスジョブ生成指示で指定されているレシピの識別情報が含まれている。第2の制御部34は、第2の記憶部35に記憶されている複数のレシピの中からプロセスジョブ生成指示で指定されているレシピの識別情報に対応するレシピを選択し、選択したレシピを読み込む。これにより、プロセスジョブに対応するレシピがサブコントローラ23によって準備される。
 図4A~4Dおよび図5は、スケジューリング機能部29による処理例を説明するためのフローチャートである。なお、図4A~4Dのプロセスと図5のプロセスとは並行して実行される。具体的には、図4A~4Dのプロセスではプロセスジョブに属する各基板A1~A12の基板のスケジューリングが行われる。図5のプロセスではこれと並行して、各基板A1~A12のスケジューリングの終了するタイミングが監視されるようになっている。図6は、仮タイムテーブルの一例を示す。図7は、仮タイムテーブル作成処理の流れを示すフローチャートである。図8は、ブロックの配置位置の検索処理流れを示すフローチャートである。図9~図23は、スケジュールの作成の一例を示す。
 図4A~4Dには、第1の制御部24がスケジュール作成プログラム39を実行することによって行われる処理が表されている。換言すれば、スケジュール作成プログラム39には、図4に示す処理を第1の制御部24に実行させるように工程群が組み込まれている。
 本実施形態に係るスケジュール作成方法の特徴の一つは、後述する「高負荷動作」に対応するブロック同士を、その高負荷時間帯が集中しないように時間軸上に配置するようにした点である。また、本実施形態に係るスケジュール作成方法の他の特徴は、共通のプロセスジョブ符号された複数枚の基板Wのうち、基板収容器Cから最初に払い出される一枚目の基板Wのスケジュールの作成の完了後、当該一枚目の基板W以外の基板Wのスケジュールの作成が未完了であるタイミングで、作成済みのスケジュールを開始する点である。
 以下、図1~図5を主に参照して、スケジュールの作成の例について説明する。図6~図23は適宜参照する。
 以下のスケジュール例では、同じプロセスジョブ符号「A」が付与された「N」(Nは「2」以上「12」以下の整数)枚の基板Wの計画(スケジュール)を作成する例を説明する。便宜上、最初に払い出される1枚目の基板(第1の基板)Wを「基板A1」とし、その次に払い出される2枚目の基板(第2の基板)Wを「基板A2」として説明する。
 スケジュールの作成に先立って、後述する「高負荷動作」の許容範囲(「高負荷動作」ではないと判定される条件)が第1の記憶部26に記憶される(ステップS0)。たとえば、「高負荷動作」の許容範囲の一例として、プログラム実行時のCPU37の使用率が、任意の1秒間で平均90%未満であること、およびプログラム実行時のCPU37の使用率100%である状態が0.1秒間継続しないことを例示できる。
 ホストコンピュータHCから、もしくは出入力部25からオペレータによって基板処理開始の指示が与えられると(ステップS1:YES)、スケジューリング機能部29は、基板処理開始指示が与えられた全ての基板Wに関して、仮タイムテーブルを作成する(ステップS2)。基板処理開始指示は、基板W一枚単位でなく、基板収容器Cに収容されている全ての基板Wを一単位として発行されてもよい。基板処理開始指示は、一つまたは複数のプロセスジョブ符号が付与された基板Wの処理開始を指示するものであってもよい。
 たとえば、処理内容データ38においてあるプロセスジョブ符号に対応付けられたレシピが、処理ユニットSPIN1~SPIN12の並行処理を指定しているとする。すなわち、当該レシピに従う基板処理が、12個の処理ユニットSPIN1~SPIN12のいずれにおいても実行可能である場合を考える。この場合、当該プロセスジョブ符号が付与された基板Wが処理を受けるときに通る経路は、12通りである。すなわち、その基板Wの処理のために選択し得る経路は、処理ユニットSPIN1~SPIN12のいずれかを通る12個の経路である。そこで、スケジューリング機能部29は、その12個の経路に対応した仮タイムテーブルを作成する。
 処理ユニットSPIN1を通る経路に対応した仮タイムテーブルの例を図6に示す。この仮タイムテーブルは、前準備工程の実行を表す前準備ブロックと、搬入前処理工程の実行を表す搬入前処理ブロックと、処理ユニットSPIN1による当該基板Wに対する処理を表す基板処理ブロックと、搬出後処理工程の実行を表す搬出後処理ブロックと、インデクサロボットIRにより基板収容器Cから基板Wの払い出し(搬出)を表す第1の搬出ブロックと、インデクサロボットIRによる当該基板Wの受け渡しユニットPASSへの搬入を表す第1の搬入ブロックと、主搬送ロボットCRによる受け渡しユニットPASSからの当該基板Wの搬出を表す第2の搬出ブロックと、主搬送ロボットCRによる当該基板Wの処理ユニットSPIN1への搬入を表す第2の搬入ブロックと、主搬送ロボットCRによる処理ユニットSPIN1からの処理済みの基板Wの搬出を表す第3の搬出ブロックと、主搬送ロボットCRによる当該基板Wの受け渡しユニットPASSへの搬入を表す第3の搬入ブロックと、インデクサロボットIRによる当該基板Wの受け渡しユニットPASSからの搬出を表す第4の搬出ブロックと、インデクサロボットIRによる当該基板Wの基板収容器Cへの搬入を表す第4の搬入ブロックとを含む。図6および図13~図24では、図示の便宜上、第1の搬入ブロックおよび/または第4の搬出ブロックを受け渡しユニットPASSの動作に対応するものとして示しているが、これらのブロックは、実際にはインデクサロボットIRの動作に対応するものである。また、図示の便宜上、第2の搬入ブロックおよび/または第3の搬出ブロックを、各処理ユニットSPIN1~SPIN12の処理に対応するものとして示しているが、これらのブロックは、実際には主搬送ロボットCRの動作に対応するものである。なお、図6に示すこの仮タイムテーブルは、前準備ブロックを含むが、後処理工程の実行を表すブロックである後処理ブロックを含んでいない。
 なお、以降の説明において、第1~第4の搬出ブロックおよび第1~第4の搬入ブロックの総称を「搬送ブロック」という場合がある。また、図6に示すブロックのうち前準備ブロックを除く各ブロックの総称を「処理/搬送ブロック」という場合がある。
 搬入前処理工程とは、処理ユニットが当該処理ユニット内に基板Wを搬入するための動作である。搬入前処理工程として、シャッタ17cの開放動作や、チャックピン15bの開姿勢(基板Wを挟持しない姿勢)への変位動作等を例示できる。
 搬出後処理工程とは、処理ユニットが当該処理ユニットから基板を搬出した後の動作である。搬出後処理工程として、シャッタ17cの閉塞動作やチャックピン15bの閉姿勢(基板Wを挟持する姿勢)への変位動作等を例示できる。
 図7に示すように、仮タイムテーブルの作成では、スケジューリング機能部29は、基板処理開始指示が与えられた全ての基板Wについて、レシピを取得し(図7のステップS51)、取得したレシピに基づいて仮タイムテーブルに含めるべきブロックを生成し(図7のステップS52)、仮タイムテーブルを作成する。
 スケジューリング機能部29は、生成したブロックに対応する動作に、第2の制御部34に生じる制御負荷の高い時間帯である高負荷時間帯が存在する(含まれる)か否かを調べる(図7のステップS53)。この実施形態では、高負荷時間帯とは、たとえば、プログラム実行時のCPU37の使用率が、任意の1秒間で平均90%以上であること、およびプログラム実行時のCPU37の使用率100%の状態が0.1秒間継続することの少なくとも一方を満たす時間帯である。以降の説明において、高負荷時間帯を含むリソースの動作を「高負荷動作」という。
 図6の仮タイムテーブルで規定されている基板処理装置1の各動作のうち、前準備工程、基板処理工程、および搬入前処理工程が「高負荷動作」に相当する。
 前準備工程の開始時において、サブコントローラ23のシリアル通信部36は、スケジューリング結果32に基づいて当該基板処理に必要なレシピを第2の記憶部35から読み出す。CPU37は読み出されたレシピをデータ解釈して、各処理ユニットSPIN1~SPIN12において当該レシピを実現するための制御信号を生成する。CPU37は、生成した制御信号を、シリアル通信部36を介して制御対象の処理ユニットSPIN1~SPIN12に対し送信する。また、制御対象の処理ユニットSPIN1~SPIN12は、制御信号を受信すると直ちに、受信確認信号をシリアル通信部36に向けて送信する。前準備工程の処理データのデータ量が大きいので、シリアル通信部36やCPU37がデータ通信やデータ解釈を行う際に一時的に高い制御負荷が生じる。すなわち、基板処理工程の開始時に高負荷時間帯が存在する。
 また、基板処理工程の開始時において、第2の制御部34のシリアル通信部36は、制御対象の処理ユニットSPIN1~SPIN12に対し、レシピを送信する。また、制御対象の処理ユニットSPIN1~SPIN12は、レシピを受信すると直ちに、受信確認信号をシリアル通信部36に向けて送信する。レシピのデータ量が膨大なので、シリアル通信部36やCPU37に一時的に高い制御負荷が生じる。すなわち、基板処理工程の開始時に高負荷時間帯が存在する。
 また、搬入前処理工程の開始時において、第2の制御部34のシリアル通信部36は、制御対象の処理ユニットSPIN1~SPIN12に対し、当該搬入前処理工程に関する処理データに併せてレシピも送信する。レシピのデータ量が膨大なので、シリアル通信部36やCPU37に一時的に高い制御負荷が生じる。すなわち、搬入前処理工程の開始時に高負荷時間帯が存在する。
 生成したブロックが「高負荷動作」に対応する場合(図7のステップS53:YES)には、スケジューリング機能部29は、図6に示すように、当該ブロックの最初の時間帯(すなわち、高い制御負荷が生じる、搬入前処理工程の開始時に対応する時間帯)に高負荷情報HLを付与する(図7のステップS54)。これにより、スケジューリング機能部29は仮タイムテーブルの作成を完了する(図7のステップS55)。すなわち、高負荷動作に対応するブロックには、高負荷時間帯に対応する部分に、高負荷情報HLが付加される。一方、生成したブロックが「高負荷動作」に対応しない場合(図7のステップS53:NO)には、スケジューリング機能部29は、そのまま、仮タイムテーブルの作成を完了する(図7のステップS55)。
 スケジューリング機能部29は、仮タイムテーブルに含めるべき全てのブロックを時間軸上で重なり合いのないように順番に配置することによって、仮タイムテーブルを作成する。スケジューリング機能部29は、基板Wに対して、処理ユニットSPIN2~SPIN12をそれぞれ通る経路に対応した同様の仮タイムテーブル(ブロックを処理ユニットSPIN2~SPIN12にそれぞれ配置した仮タイムテーブル)を作成する。こうして、一枚の基板Wに対して合計12経路分の仮タイムテーブルが作成される。
 同様の仮タイムテーブルが共通するプロセスジョブ符号が付与された基板Wの全てに対応して作成される。こうして作成された仮タイムテーブルは、スケジュールデータ33の一部として第1の記憶部26に格納される。
 図4Aに示すように、スケジューリング指示が発生すると(ステップS3:YES)、当該共通するプロセスジョブ符号が付された基板Wに関するブロックの配置が行われる(ステップS4~S32)。具体的には、スケジューリング機能部29は、当該基板Wの仮タイムテーブルを第1の記憶部26から読み出して、その仮タイムテーブルを構成しているブロックを時間軸上に配置していく。
 さらに具体的に説明すると、スケジューリング機能部29は、前準備実行条件の内容を参照し、前準備工程を行うかどうかを判断する(ステップS4)。プロセスジョブが前準備工程を必要としている場合(すなわち、当該基板Wに対応する前準備実行条件が「要」になっている場合。ステップS4:YES)には、前準備工程のスケジュールが作成(ステップS5,S6)され、前準備工程を必要としていない場合(すなわち、当該基板Wに対応する前準備実行条件が「否」になっている場合)には、S5,S6の各処理はスキップされる。
 前準備工程が必要なときは(ステップS4:YES)、スケジューリング機能部29は、当該基板Wを処理する可能性のある処理ユニットSPIN1~SPIN12(前述の例では全ての処理ユニット)に関して、前準備ブロックを配置する(S5,S6)。すなわち、前準備工程のスケジュールは、後述する個別の基板Wのスケジュールの作成に先立って、まとめて作成される。
 前準備ブロックの配置位置検索(S5)では、スケジューリング機能部29は、図8に示すように、検索対象の前準備ブロックに高負荷情報HLが付加されているか(検索対象の前準備ブロックが「高負荷動作」に対応しているか)否かを調べる(図8のステップS61)。また、検索対象の前準備ブロックに高負荷情報HLが付加されている場合(図8のステップS61:YES)には、次いで、スケジューリング機能部29は、他のリソース(処理ユニット等)に、高負荷情報HLを含むブロック(「高負荷動作」に対応するブロック)が配置済みであるか否かを調べる(図8のステップS62)。検索対象の前準備ブロックに高負荷情報HLが付加されていない場合(図8のステップS61:NO)や、高負荷情報HLを含むブロックが他のリソースに配置されていない場合(図8のステップS62:NO)には、スケジューリング機能部29は、検索対象の前準備ブロックの配置位置として、時間軸上で最も早い位置を決定し(図8のステップS64)、これにより前準備ブロックの配置位置検索を完了する(図8のステップS65)。
 一方、配置位置の検索対象になっている前準備ブロックに、高負荷情報HLが付加されており(図8のステップS61:YES)、かつ他のリソースに高負荷情報HLを含むブロック(「高負荷動作」に対応するブロック)が配置されている場合(図8のステップS62:YES)には、スケジューリング機能部29は、検索対象の前準備ブロックの配置位置として、既に配置済みのブロックの高負荷情報HLが割り当てられていない時間帯で、時間軸上で最も早い位置を決定し(図8のステップS63)、これにより前準備ブロックの配置位置検索を完了する(図8のステップS65)。
 先ず、スケジューリング機能部29は、処理ユニットSPIN1の前準備ブロックSPを配置する。このとき、スケジューリング機能部29は、1枚目の基板A1の仮タイムテーブルを第1の記憶部26から読み出して、図9に示すように、その仮タイムテーブルに含まれる前準備ブロックSPを、時間軸上において最も早い位置、すなわち現在時刻に配置する。こうして配置される前準備ブロックSPには、高負荷情報HLが付加されている。
 次いで、スケジューリング機能部29は、処理ユニットSPIN2の前準備ブロックSPを配置する。こうして配置される前準備ブロックSPには、高負荷情報HLが付加されている。このとき、スケジューリング機能部29は、2枚目の基板A2の仮タイムテーブルを第1の記憶部26から読み出して、図10に示すように、その仮タイムテーブルに含まれる前準備ブロックSPを、当該前準備ブロックSPに付加されている高負荷情報HLが処理ユニットSPIN1の前準備ブロックSPに含まれる高負荷情報HLが割り当てられていない時間帯で、時間軸上の最も早い位置に配置する。すなわち、スケジューリング機能部29は、処理ユニットSPIN2の前準備ブロックSPを、前準備ブロックSPに含まれる高負荷情報HLが処理ユニットSPIN1の前準備ブロックSPと同じ時間帯に割り当てられないように、時間軸上の最も早い位置から時間軸上の後にシフトして配置する(高負荷回避配置工程)。
 次いで、スケジューリング機能部29は、処理ユニットSPIN3の前準備ブロックSPを配置する。こうして配置される前準備ブロックSPには、高負荷情報HLが付加されている。このとき、スケジューリング機能部29は、3枚目の基板Wの仮タイムテーブルを第1の記憶部26から読み出して、図11に示すように、その仮タイムテーブルに含まれる前準備ブロックSPを、当該前準備ブロックSPに付加されている高負荷情報HLが処理ユニットSPIN1,SPIN2の前準備ブロックSP,SPの各々に含まれる高負荷情報HLが割り当てられていない時間帯で、時間軸上の最も早い位置に配置される。すなわち、スケジューリング機能部29は、処理ユニットSPIN3の前準備ブロックSPを、前準備ブロックSPに含まれる高負荷情報HLが処理ユニットSPIN1,SPIN2の前準備ブロックSP,SPに含まれる高負荷情報HLと同じ時間帯に割り当てられないように、時間軸上の最も早い位置から時間軸上の後にシフトして配置する(高負荷回避配置工程)。
 このように、スケジューリング機能部29は、読み出した仮タイムテーブルに含まれる前準備ブロックを、同一のリソースが同じ時間に重複して使用されないようにしながら、かつ高負荷情報HLが配置済みのブロックの高負荷情報HLと同じ時間帯に割り当てられることを回避しながら、時間軸上で最も早い位置に(すなわち前詰めで)順に配置していく。
 処理ユニットSPIN1~SPIN12の全てに対応する前準備ブロックSP~SP12の配置が完了すると(この状態を図12に示す。ステップS7:YES)、スケジューリング機能部29は、次いで、各基板Wの処理/搬送ブロックを配置する(ステップS8~ステップS12)。
 先ず、スケジューリング機能部29は、1枚目の基板A1に対応する仮タイムテーブルを第1の記憶部26から読み出して、1枚目の基板A1に対応する仮タイムテーブルを参照し、当該仮タイムテーブルに含まれる処理/搬送ブロックを一つ取得する(ステップS8)。このとき取得される処理/搬送ブロックは、未配置の処理/搬送ブロックのうち仮タイムテーブルの時間軸上で最も早い位置に配置されている処理/搬送ブロックである。さらに、スケジューリング機能部29は、当該取得した処理/搬送ブロックを配置すべき位置を検索し(ステップS9)、その検索結果に従って、当該処理/搬送ブロックを配置する(ステップS10)。
 処理/搬送ブロックの配置位置の検索(S9)では、スケジューリング機能部29は、図8に示すように、検索対象の処理/搬送ブロックに高負荷情報HLが付加されているか(検索対象の処理/搬送ブロックが「高負荷動作」に対応しているか)否かを調べる(図8のステップS61)。また、検索対象の処理/搬送ブロックに高負荷情報HLが付加されている場合(図8のステップS61:YES)には、次いで、スケジューリング機能部29は、他のリソース(処理ユニット等)に、高負荷情報を含むブロック(「高負荷動作」に対応するブロック)が配置済みであるか否かを調べる(図8のステップS62)。検索対象の処理/搬送ブロックに高負荷情報HLが付加されていない場合(図8のステップS61:NO)や、高負荷情報HLを含むブロックが他のリソースに配置されていない場合(図8のステップS62:NO)には、スケジューリング機能部29は、検索対象の処理/搬送ブロックの配置位置として、時間軸上で最も早い位置を決定し(図8のステップS64)、これにより処理/搬送ブロックの配置位置検索を完了する(図8のステップS65)。
 一方、配置位置の検索対象になっている処理/搬送ブロックに、高負荷情報HLが付加されており(図8のステップS61:YES)、かつ他のリソースに高負荷情報HLを含むブロック(「高負荷動作」に対応するブロック)が配置されている場合(図8のステップS62:YES)には、スケジューリング機能部29は、検索対象の処理/搬送ブロックの配置位置として、既に配置済みのブロックの高負荷情報HLが割り当てられていない時間帯で、時間軸上で最も早い位置を決定し(図8のステップS63)、これにより処理/搬送ブロックの配置位置検索を完了する(図8のステップS65)。
 具体的には、スケジューリング機能部29は、図13に示すように、先ず、1枚目の基板A1の第1の搬出ブロックA1、第1の搬入ブロックA1および第2の搬出ブロックA1を時間軸上に順に配置する。スケジューリング機能部29は、1枚目の基板A1の第1の搬出ブロックA1を、時間軸上で最も早い位置(すなわち現在時刻)ではなく、処理ユニットSPIN1での処理可能時刻(すなわち、処理ユニットSPIN1での前準備工程の終了時点)から搬送予定時間を逆算して妥当な位置に配置する。第1の搬入ブロックA1および第2の搬出ブロックA1は、それぞれ、第1の搬出ブロックA1の配置位置に応じて時系列に従って配置される。
 次いで、スケジューリング機能部29は、図14に示すように、1枚目の基板A1の搬入前処理ブロックA1の配置を行う。同一のリソースが同じ時間に重複して使用されないようにしながら、時間軸上で最も早い位置に配置することだけを考慮すると、1枚目の基板A1の搬入前処理ブロックA1を図14に破線で示す位置に配置すべきであるが、このようにすると、この搬入前処理ブロックA1に付加されている高負荷情報HLが、処理ユニットSPIN12の前準備ブロック(図14に示すSP12)に含まれる高負荷情報HLと重複してしまうので、搬入前処理ブロックA1を、図14に破線で示す位置よりも時間軸の後方にずらして配置する。この場合、搬入前処理ブロックA1は、できる限り前詰めで配置されることが望ましい。
 次いで、スケジューリング機能部29は、図15に示すように、1枚目の基板A1の第2の基板搬入ブロックA1および基板処理ブロックA1を時間軸上に配置する。次いで、スケジューリング機能部29は、図16に示すように、1枚目の基板A1の第3の搬出ブロックA1および第3の搬入ブロックA1を時間軸上に配置し、その後、搬出後処理ブロックA1、第4の搬出ブロックA110および第4の搬入ブロックA111を時間軸上に配置する。
 図16に示すように、1枚目の基板A1についての仮タイムテーブルを構成する全てのブロックを配置し終えると(ステップS11:YES)、1枚目の基板A1のスケジュールの作成が終了し(ステップS12)、処理ユニットSPIN1~SPIN12の前準備ブロックSP~SP12および1枚目の基板A1の処理/搬送ブロックA1~A111を含む作成済みのスケジュールが、スケジュールデータ33の一部として第1の記憶部26に格納される(ステップS13)。1枚目の基板A1のスケジュールの作成が終了すると図4A~4Dのスケジューリング処理と並行して実行されていた図5のフローチャートのステップS41のブロックがYESとなる(ステップS41:YES)。この後、スケジューリング機能部29は、図5のプロセスをステップS41からS42に移行させ、作成済みのスケジュールの実行を開始する(ステップS42)。すなわち、スケジューリング機能部29は、作成済みのスケジュールに従ってリソースの動作を開始させる。具体的には、処理ユニットSPIN1~SPIN12で前準備工程が開始させられる。また、インデクサロボットIRにより基板収容器Cから1枚目の基板A1が払い出される(搬出される)。
 図4Bのフローチャートに戻って、1枚目の基板A1のスケジュールデータ33が第1の記憶部26に格納される(ステップS13)と、2枚目の基板A2のスケジューリングを開始するタイミングにあるか否かの判断が行われる(ステップS14)。この実施の形態では、直前の基板A(N枚目の基板。「N」は「2」以上の整数)が基板収容器Cから払い出されたタイミングが、直後の基板AN+1のスケジューリングを開始するタイミングに設定されている。
 したがって、1枚目の基板A1が基板収容器Cから払い出されると、2枚目の基板A2のスケジューリングを開始するタイミングに達したと判断される(ステップS14:YES)。すなわち、1枚目の基板A1が基板収容器Cから払い出されると、2枚目の基板A2に対するスケジュールの作成(つまり、次に述べる処理/搬送ブロックA2~A211の配置)が1枚目の基板A1の基板処理と並行して行われる。作成済みスケジュールの変更が許容されている場合(ステップS15:YES)には、スケジューリング機能部29は、図17および図18に示すように、1枚目の基板A1のスケジュールを構成する全てのブロックのうち、未来のブロックを時間軸上から削除する(ステップS16)。この未来のブロックの削除では、既に開始済みのリソースの動作に対応するブロックと、現在時刻の直後に開始予定のブロックとのみを残し、その他のブロックを全て削除する。
 このスケジュール例では、図17の現在時刻で既に開始済みのリソースは処理ユニットSPIN1~SPIN6であり、これらのリソースに対応するブロックは前準備ブロックSP~SPである。また、現在時刻の直後に開始予定のリソースはインデクサロボットIRおよび処理ユニットSPIN7であり、これらのリソースに対応するブロックは第1の搬送ブロックA1および前準備ブロックSPである。したがって、スケジューリング機能部29は、図17および図18に示すように、図17の現在時刻で予定されていた処理/搬送ブロックA1~A111および前準備ブロックSP~SP12から、第1の搬送ブロックA1および前準備ブロックSP~SP以外のブロック、すなわち処理搬送ブロックA1~A111および前準備ブロックSP~SP12を削除する。
 開始済みのリソースの動作に対応するブロックだけでなく、現在時刻の直後に開始予定のリソースの動作に対応するブロックをも残すようにしたのは、現在時刻の直後に開始予定のリソースの動作は既に開始している可能性があるからである。
 次いで、スケジューリング機能部29は、図19に示すように、ステップS16で削除した前準備ブロックSP~SP12を時間軸上に再度配置する(ステップS17)。前準備ブロックSP~SP12を再配置すべき位置の検索は、ステップS6の前準備ブロックの配置位置の検索と同様の手法で行われ、その検索結果に従って、処理ユニットSPIN8~SPIN12の前準備ブロックSP~SP12が再配置される。
 次いで、スケジューリング機能部29は、ステップS16で削除した処理/搬送ブロックA1~A111を時間軸上に再配置すると共に、2枚目の基板A2の処理/搬送ブロックA2~A211を時間軸上に配置する。削除した処理/搬送ブロックA1~A111の再配置は、2枚目の基板A2の処理/搬送ブロックの配置に並行して行われる。
 スケジューリング機能部29は、削除した処理/搬送ブロックA1~A111を一つ取得する(ステップS18)。このとき取得される処理/搬送ブロックは、削除前の時間軸上で最も早い位置に配置されている処理/搬送ブロックである。
 また、スケジューリング機能部29は、2枚目の基板A2に対応する仮タイムテーブルを第1の記憶部26から読み出して、2枚目の基板A2に対応する仮タイムテーブルを参照し、当該仮タイムテーブルに含まれる処理/搬送ブロックを一つ取得する(ステップS18)。このとき取得される処理/搬送ブロックは、未配置の処理/搬送ブロックのうち仮タイムテーブルの時間軸上で最も早い位置に配置されている処理/搬送ブロックである。
 次いで、スケジューリング機能部29は、取得した処理/搬送ブロック(削除した処理/搬送ブロックおよび2枚目の基板の処理/搬送ブロック)を配置すべき位置を検索し(ステップS19)、その検索結果に従って、当該処理/搬送ブロックを配置する(ステップS20)。削除した処理/搬送ブロックの再配置位置の検索と、2枚目の基板A2の処理/搬送ブロックの配置位置検索とは互いに並行して行われる。ステップS19において、処理/搬送ブロックを配置すべき位置の検索は、ステップS9の処理/搬送ブロックの配置位置の検索と同様の手法で行われる。すなわち、スケジューリング機能部29は、配置位置の検索対象になっている処理/搬送ブロック(削除した処理/搬送ブロックまたは2枚目の基板A2の処理/搬送ブロック)が、同一のリソースが同じ時間に重複して使用されないようにしながら、かつ高負荷情報HLが配置済みのブロックの高負荷情報HLと同じ時間帯に割り当てられることを回避しながら、時間軸上で最も早い位置を検索する(図8のステップS61~S65)。
 以下、削除した処理/搬送ブロックおよび2枚目の基板A2の処理/搬送ブロックの配置位置検索(S19)および配置(S20)の一例を、順に説明する。具体的には、スケジューリング機能部29は、図20に示すように、ステップS16で削除した第1の搬入ブロックA1を元の位置に再配置する。また、スケジューリング機能部29は、図21に示すように、2枚目の基板A2の第1の搬出ブロックA2を、1枚目の基板A1の第1の搬出ブロックA1の後に配置する。図21の例では、2枚目の基板A2の第1の搬出ブロックA2は、第1の搬入ブロックA1と時間軸上の略同位置に配置される。
 次いで、スケジューリング機能部29は、図22に示すように、削除した第2の搬出ブロックA1を配置する。このように、削除した処理/搬送ブロックの再配置位置と、2枚目の基板の処理/搬送ブロックの配置位置とが足並みを揃えて(並行して)行われる。
 そして、削除した全ての処理/搬送ブロックおよび2枚目の基板A2の仮タイムテーブルを構成する全てのブロックを配置し終えると(ステップS21:YES)、図23に示すように、2枚目の基板A2のスケジューリングが終了すると共に、1枚目の基板A1のスケジュール(作成済みのスケジュール)の変更が終了する(ステップS22)。こうして作成および変更されるスケジュールが、スケジュールデータ33の一部として第1の記憶部26に格納される(ステップS23)。
 一方、作成済みスケジュールの変更が禁止されている場合(ステップS15:NO)には、スケジューリング機能部29は、1枚目の基板A1のスケジュールの変更を行わずに、2枚目の基板A2の処理/搬送ブロックを配置する。
 そして、スケジューリング機能部29は、2枚目の基板A2に対応する仮タイムテーブルを第1の記憶部26から読み出して、2枚目の基板A2に対応する仮タイムテーブルを参照し、当該仮タイムテーブルに含まれる処理/搬送ブロックを一つ取得する(ステップS24)。このとき取得される処理/搬送ブロックは、未配置の処理/搬送ブロックのうち仮タイムテーブルの時間軸上で最も早い位置に配置されている処理/搬送ブロックである。さらに、スケジューリング機能部29は、取得した処理/搬送ブロックを、同一のリソースが同じ時間に重複して使用されないようにしながら、かつ高負荷情報HLが配置済みのブロックの高負荷情報HLと同じ時間帯に割り当てられることを回避しながら、時間軸上で最も早い位置を検索し(ステップS25)、その検索結果に従って、当該処理/搬送ブロックを配置する(ステップS26)。
 2枚目の基板A2についての仮タイムテーブルを構成する全てのブロックを配置し終えると(ステップS27:YES)、2枚目の基板A2のスケジュールの作成が終了する(ステップS22)。こうして作成される2枚目の基板A2のスケジュールが、スケジュールデータ33の一部として第1の記憶部26に格納される(ステップS23)。
 基板処理装置1において各リソースの動作が進行し、2枚目の基板A2のスケジュールの実行タイミングになると、スケジューリング機能部29は、2枚目の基板A2のスケジュールの実行を開始する。すなわち、スケジューリング機能部29は、作成済みの2枚目の基板A2のスケジュールに従ってリソースの動作を開始させる。具体的には、インデクサロボットIRにより基板収容器Cから2枚目の基板A2が払い出される(搬出される)。2枚目の基板A2の基板収容器Cからの払い出し時が、3枚目の基板A3のスケジューリングタイミングである。3枚目の基板A3のスケジューリングタイミングに達すると(ステップS14:YES)、すなわち、2枚目の基板A2が基板収容器Cから払い出されると、3枚目の基板A3に対するスケジュールの作成が行われる。
 3枚目以降の基板Wに対するスケジュールは、2枚目の基板A2に対するスケジュールと同様に行われる。すなわち、図4B,4CのステップS14~S27の各処理は、3枚目以降の基板Wにも共通して適用される。すなわち、作成済みスケジュールの変更が許容されている場合には、N枚目の基板Wのスケジュールの作成時に、(N-1)枚目以前の基板Wの各スケジュールのうち未来のブロックを削除し、N枚目の基板の処理/搬送ブロックの配置(スケジュールの作成)に並行して、削除した処理/搬送ブロックの再配置位置を行う。「N」が12になるまで(すなわち全ての基板Wのスケジュールの作成が終了するまで。ステップS28:YES)、図4B,4CのステップS14~S27の各処理と同等の処理が繰り返される。スケジューリング機能部29によって作成される、複数枚の基板Wのスケジュールの全体の例を、図24に示す。
 全ての基板Wのスケジュールの作成が終了すると(ステップS28:YES)、スケジューリング機能部29は、後処理実行条件の内容を参照し、基板Wに後処理工程を行うかどうかを判断する(ステップS29)。プロセスジョブが後処理工程を必要としている場合(すなわち、当該基板Wに対応する後処理実行条件が「要」になっている場合。ステップS29:YES)には、スケジューリング機能部29は、当該基板Wを処理する可能性のある処理ユニットSPIN1~SPIN12に関して、後処理ブロックを配置する(ステップS30,S31)。一方、後処理工程を必要としていない場合(すなわち、当該基板Wに対応する後処理実行条件が「否」になっている場合)には、ステップS30~S32の各処理はスキップされる。
 後処理ブロックの配置位置検索(S30)では、スケジューリング機能部29は、図8に示すように、検索対象の後処理ブロックに高負荷情報HLが付加されているか(検索対象の後処理ブロックが「高負荷動作」に対応しているか)否かを調べる(図8のステップS61)。また、検索対象の後処理ブロックに高負荷情報HLが付加されている場合(図8のステップS61:YES)には、次いで、スケジューリング機能部29は、他のリソース(処理ユニット等)に、高負荷情報を含むブロック(「高負荷動作」に対応するブロック)が配置済みであるか否かを調べる(図8のステップS62)。検索対象の後処理ブロックに高負荷情報HLが付加されていない場合(図8のステップS61:NO)や、高負荷情報HLを含むブロックが他のリソースに配置されていない場合(図8のステップS62:NO)には、スケジューリング機能部29は、検索対象の後処理ブロックの配置位置として、時間軸上で最も早い位置を決定し(図8のステップS64)、これにより後処理ブロックの配置位置検索を完了する(図8のステップS65)。
 一方、配置位置の検索対象になっている後処理ブロックに、高負荷情報HLが付加されており(図8のステップS61:YES)、かつ他のリソースに高負荷情報HLを含むブロック(「高負荷動作」に対応するブロック)が配置されている場合(図8のステップS62:YES)には、スケジューリング機能部29は、検索対象の後処理ブロックの配置位置として、既に配置済みのブロックの高負荷情報HLに割り当てられていない時間帯で、時間軸上で最も早い位置を決定し(図8のステップS63)、これにより後処理ブロックの配置位置検索を完了する(図8のステップS65)。
 このように、スケジューリング機能部29は、後処理ブロックを、当該後処理ブロックに付加されている高負荷情報HLが、配置済みの後処理ブロックに含まれる高負荷情報HLが割り当てられていない時間帯で、時間軸上の最も早い位置に(前詰めで)順に配置していく(ステップS31)。
 後処理の必要のある処理ユニットSPIN1~SPIN12への後処理ブロックの配置が完了すると(ステップS32でYES)、図4A~4Dに示す一連の処理はリターンされる。
 一方、後処理工程を必要としていない場合(すなわち、当該基板Wに対応する後処理実行条件が「否」になっている場合。ステップS29でNO)には、ステップS30,S31の各処理はスキップされ、その後、図4A~4Dに示す一連の処理はリターンされる。
 なお、図24に示すスケジュールは、各基板Wで後処理実行条件を満たしていない場合を示している。
 以上により、この実施形態によれば、スケジューリング機能部29は、各基板Wの複数のブロックを時系列に従って配置することにより当該基板Wのスケジュールを作成し、この基板Wのスケジュールを複数枚分作成する。このとき「高負荷動作」(すなわち、基板処理工程、前準備工程および搬入前処理工程)に対応するブロックを、対応する「高負荷動作」の開始時が集中しないように、時間軸上の互いにずれた位置に配置する。
 こうして作成されたスケジュールでは、第2の制御部34での制御負荷の集中が回避されている。これにより、第2の制御部34でのデータ処理の効率化が図られたスケジュールを作成でき、ゆえに、リソースの動作開始の遅延を確実に防止できる。
 仮に、「同一のリソースが同じ時間に重複して使用されないようにしながら、時間軸上で最も早い位置に配置する」というロジックのみに基づいて、処理ユニットSPIN1~SPIN12の前準備工程を計画すれば、複数の前準備工程が同時に開始するおそれがある。とくに、図25Aに示す、スケジュールの作成の第1の変形例のように、いずれかのプロセスジョブ符号が付された基板Wについてのスケジュール作成時に、それとは異なるプロセスジョブ符号が付された基板Wに対する基板処理が既に実行開始している場合に、当該所定のプロセスジョブの基板Wについての(処理ユニットSPIN3~SPIN12の)前準備工程を、「各ブロックを、同一のリソースが同じ時間に重複して使用されないようにしながら、時間軸上で最も早い位置に配置する」というロジックのみに基づいて計画するとすれば、これら複数(たとえば10個)の前準備ブロックが、計画開始可能時刻(スケジュールを開始可能な時刻)に揃って配置されるおそれがある。この場合、処理ユニットSPIN3~SPIN12の前準備工程が同時に開始するように計画されるので、前準備工程の開始時に第2の制御部34の制御負荷が集中する結果、第2の制御部34がデータ処理を円滑に行えず、これにより、実行中の基板処理(処理ユニットSPIN1,SPIN2での処理)において処理遅延が生じるなどの問題が発生するおそれがある。
 これに対し、この実施形態では、前準備ブロックを、同一のリソースが同じ時間に重複して使用されないようにしながら、かつ高負荷情報HLが配置済みのブロックの高負荷情報HLと同じ時間帯に割り当てられることを回避しながら、時間軸上で最も早い位置に配置する。そのため、図25Aに示すように、処理ユニットSPIN3~SPIN12の前準備工程は、互いに開始時がずれるように計画される。したがって、実行中の基板処理(処理ユニットSPIN1,SPIN2での処理)において、処理遅延などの問題を回避できる。
 特に、この実施形態によれば、基板処理の開始が指示されてから実際に基板処理を開始するまでの期間を各基板W間で略同一にすることができるため、同一のレシピに基づく基板処理の効果を各基板間で均一にすることができる。より具体的に説明する。基板処理を開始するまでのデータフローを図25Bに示す。サブコントローラ23のCPU37はスケジュールデータ33に基づいて、または処理実行指示部31がスケジュールデータ33に基づいて発する処理実行指示に基づいて、基板処理を開始するタイミングが到来したことを判断する(時刻t1)。CPU37は実行しようとする基板処理に対応するレシピを第2の記憶部35に要求する(時刻t2)。第2の記憶部35はレシピを選択してCPU37に送信する(時刻t3~時刻t4)。CPU37は受信したレシピをデータ解釈して、制御対象の処理ユニット(たとえば処理ユニットSPIN1)に当該レシピを実行させるための制御信号を生成する(時刻t5~t6)。そしてCPU37は生成した制御信号を処理ユニットSPIN1に送信する(時刻t7~t8)。これを受けて処理ユニットSPIN1が実際に基板処理を開始する(時刻t9)。このように、基板処理を開始するタイミングが到来してから処理ユニットSPIN1が実際に基板処理を開始するには所定長の時間を要する(時刻t1~t9)。この実施形態では多数枚の基板Wのための基板処理が同一時刻に開始されないようにスケジューリングされているためCPU37の処理速度が遅延することがない。このため、レシピの送受信(時刻t3~t4)、データ解釈(時刻t5~t6)および制御信号の送受信(時刻t7~t8)に要する時間が基板W毎に大きく異なることがない。よって、基板処理を開始するタイミングが到来してから各処理ユニットSPINにおいて実際に基板処理が開始されるまでの時間を略同一にすることができる。従って、基板処理の均一性を確保することができる。
 また、ある基板(たとえば1枚目の基板A1)のスケジュールの作成が終了すると、他の基板(たとえば2枚目の基板A2以降の基板W)のスケジュールの作成が未終了であっても、作成したスケジュールの実行を開始する。したがって、第1の記憶部26に記憶されるスケジュールのデータ量の低減を図ることができる。
 また、作成済みのスケジュールから削除した未実行のブロックを、新たにスケジュールを作成すべき基板Wに関するブロックの配置と並行して、時系列に従って再配置する。削除したブロックの再配置および新たな基板Wに関するブロックの配置は、複数枚の基板W相互間の干渉が生じることがなく、かつ効率的にリソース(処理ユニットSPIN1~SPIN12等)を稼働させて複数枚の基板Wに対する処理が行われるように、時系列に従って行われる。削除したブロックおよび新たな基板Wに関するブロックの配置位置をよりきめ細かに決定できるので、処理ユニットSPIN1~SPIN12等のリソースの稼働率を高めることができ、これにより、基板処理装置1の生産性を向上できる。
 図26は、スケジュールの作成の第2の変形例を示す。この第2の変形例は、後処理工程を規定するためのブロックである後処理ブロックの配置例を示す。
 図26では、処理ユニットSPIN1~SPIN7での基板処理中に、後処理工程を計画する。このプロセスジョブでは処理ユニットSPIN1~SPIN7を使用しているが、処理ユニットSPIN8~SPIN12は使用可能であるものの、実際には使用されていない。つまり、実際に使用する処理ユニットの数が、使用可能な処理ユニットの数よりも少ない。前述のように、プロセスジョブの最後の基板Wのスケジュールの作成が終了したタイミングで、スケジューリング機能部29は、後処理工程のスケジュールを作成する。
 この場合、仮に、「同一のリソースが同じ時間に重複して使用されないようにしながら、時間軸上で最も早い位置に配置する」というロジックのみに基づいて、処理ユニットSPIN1~SPIN12の後処理工程を計画するとすれば、処理ユニットSPIN8~SPIN12の後処理ブロックが、計画開始可能時刻(スケジュールを開始可能な時刻)に揃って配置されるおそれがある。この場合、処理ユニットSPIN8~SPIN12の後処理工程が同時に開始するので、後処理工程の開始時に第2の制御部34の制御負荷が集中する結果、第2の制御部34がデータ処理を円滑に行えず、これにより、実行中の基板処理(処理ユニットSPIN1~SPIN7での処理)において処理遅延が生じるなどの問題が発生するおそれがある。
 これに対し、図26の例では、後処理ブロックを、同一のリソースが同じ時間に重複して使用されないようにしながら、かつ高負荷情報HLが配置済みのブロックの高負荷情報HLと同じ時間帯に割り当てられることを回避しながら、時間軸上で最も早い位置に配置する。そのため、図26に示すように、処理ユニットSPIN8~SPIN12の後処理ブロックは、時間軸上に互いにずれて配置される。すなわち、処理ユニットSPIN8~SPIN12の各後処理工程の開始時が互いにずれるように計画される。したがって、実行中の基板処理(処理ユニットSPIN1~SPIN7での処理)において処理遅延などの問題を回避できる。
 図27は、スケジュールの作成の第3の変形例を示す。この第3の変形例は、次に述べる基板回収工程を規定するためのブロックである後処理ブロックの配置例を示す。
 基板処理装置1では、複数の処理ユニットに基板Wが収容されている状態で、各処理ユニットから基板Wを一斉に回収する並列回収が用意されることがある。この並列回収に先立って、各処理ユニットでは、基板回収工程が実行される。
 基板回収工程とは、基板Wを処理室17(図3A参照)外に搬出可能な状態にするために実行する作業である。基板回収工程の具体例は、基板Wの水洗処理である。基板Wを水洗することにより、基板回収工程の実行前の基板Wの状態の如何に拘らず、処理室17外に基板Wを搬送可能である。基板Wの水洗処理は、基板Wを回転させながらリンス液ノズル59(図3A参照)から基板Wにリンス液を吐出することで実行できる。基板回収工程後、各処理ユニットの処理室17から、主搬送ロボットCR(図1等参照)によって基板Wが搬出される。
 基板回収工程は、前述の「高負荷動作」に相当する。すなわち、基板回収工程の開始時において、サブコントローラ23(図3B参照)のシリアル通信部36は、基板回収のレシピを第2の記憶部35から読み出す。CPU37は読み出されたレシピをデータ解釈し、制御対象の処理ユニットSPIN1~SPIN12において基板回収のレシピを実現するための制御信号を生成する。シリアル通信部36は生成された制御信号を、制御対象の処理ユニットSPIN1~SPIN12に対し送信する。また、制御対象の処理ユニットSPIN1~SPIN12は、制御信号を受信すると直ちに、受信確認信号をシリアル通信部36に向けて送信する。基板回収工程のレシピのデータ量が膨大なので、CPU37(図3B参照)に一時的に高い制御負荷が生じる。そのため、基板処理工程の開始時に高負荷時間帯が存在する。
 このような基板回収工程を計画する場合に、仮に、基板回収工程のブロック(以下、基板回収ブロック)を、「同一のリソースが同じ時間に重複して使用されないようにしながら、時間軸上で最も早い位置に配置する」というロジックのみに基づいて配置するとすれば、処理ユニットSPIN1~SPIN12の基板回収ブロックが、同時期に揃って配置されるおそれがある。この場合、処理ユニットSPIN1~SPIN12の基板回収工程が同時に開始するので、基板回収工程の開始時に第2の制御部34の制御負荷が集中する結果、第2の制御部34がデータ処理を円滑に行えず、基板回収工程に遅延が生じるおそれがある。
 これに対し、図27の例では、基板回収ブロックを、同一のリソースが同じ時間に重複して使用されないようにしながら、かつ高負荷情報HLが配置済みのブロックの高負荷情報HLと同じ時間帯に割り当てられることを回避しながら、時間軸上で最も早い位置に配置する。そのため、図27に示すように、処理ユニットSPIN1~SPIN12の基板回収ブロックは、時間軸上に互いにずれて配置される。すなわち、処理ユニットSPIN1~SPIN12の各基板回収工程は、その開始時が互いにずれるように計画される。したがって、基板回収工程において処理遅延などの問題を回避できる。
 以上、この発明のいくつかの実施形態について説明してきたが、この発明は、さらに他の形態で実施することもできる。
 たとえば、前述の実施形態で示した基板処理装置1の構成や基板処理内容は一例に過ぎず、基板処理装置1は他の構成を採ることができ、かつ別の基板処理内容に対してもこの発明を適用できる。
 また、前述の実施形態では、同じ時間帯に複数の高負荷情報HLが割り当てられないようにブロックを配置する場合を示したが、高負荷情報HLが同じ時間帯に所定数(たとえば3)以上割り当てられることを禁止し、所定数未満であれば、複数の高負荷情報HLを同じ時間に割り当てることを許容するようにしてもよい。
 また、前述の実施形態では、1枚目の基板A1のスケジュール作成の終了後、2枚目以降の基板(第2の基板)Wのスケジュールの作成が終わっていない状態で、作成済みのスケジュールの実行を開始する場合を例に挙げたが、プロセスジョブの全ての基板Wのスケジュールを作成した後に、スケジュールの開始を実行するようにしてもよい。
 本発明の実施形態について詳細に説明してきたが、これらは本発明の技術的内容を明らかにするために用いられた具体例に過ぎず、本発明はこれらの具体例に限定して解釈されるべきではなく、本発明の範囲は添付の請求の範囲によってのみ限定される。
 この出願は、2014年6月23日に日本国特許庁に提出された特願2014-128331号に対応しており、この出願の全開示はここに引用により組み込まれるものとする。
 1 基板処理装置
 15 スピンチャック
 17 処理室
 22 メインコントローラ
 23 サブコントローラ
 24 第1の制御部
 25 出入力部
 26 第1の記憶部
 28 装置管理部
 29 スケジューリング機能部
 30 スケジューリングエンジン
 31 処理実行指示部
 32 スケジュール作成プログラム
 33 スケジュールデータ
 34 第2の制御部
 35 第2の記憶部
 36 シリアル通信部
 37 CPU
 C  基板収容器
 CR 主搬送ロボット
 G1~G4 処理ユニット群
 IR インデクサロボット
 PASS 受け渡しユニット
 SPIN1~SPIN12 処理ユニット
 ST1~ST4 ステージ
 W  基板

Claims (8)

  1.  基板を1枚ずつ処理する少なくとも1つの枚葉式の処理ユニットと、前記処理ユニットを制御するための制御部とを有する基板処理装置の動作を時系列に従って規定するためのスケジュールを、前記基板処理装置に備えられたスケジュール作成部が作成するための方法であって、
     各基板に対する前記基板処理装置の動作の内容を規定する複数のブロックを時系列に従って配置することにより、その基板のスケジュールを作成するスケジュール作成工程を含み、
     前記スケジュール作成工程は、複数枚の基板のスケジュールの作成に関し、前記制御部に高い制御負荷を少なくとも一時的に生じさせる動作である高負荷動作に対応するブロックを、当該制御部に高い制御負荷が生じる時間帯である高負荷時間帯が集中しないように時間軸上に配置する高負荷回避配置工程を含む、スケジュール作成方法。
  2.  前記高負荷動作に対応するブロックには、前記高負荷時間帯に対応する部分に、高負荷情報が付加されており、
     前記高負荷回避配置工程は、複数枚の基板のスケジュールの作成に関し、同じ時間帯に所定数以上の前記高負荷情報が割り当てられないように前記高負荷動作に対応するブロックを配置する、請求項1に記載のスケジュール作成方法。
  3.  前記高負荷時間帯は、前記高負荷動作の開始時である、請求項1または2に記載のスケジュール作成方法。
  4.  前記高負荷動作は、前記処理ユニットが基板を処理する基板処理工程、前記処理ユニットが前記基板処理工程の準備を行う予備処理工程、前記処理ユニットが当該処理ユニット内に基板を搬入するための動作を行う搬入前処理工程、および前記処理ユニットからの基板の回収に先立って基板に所定の処理を施す基板回収工程の少なくとも一つを含む、請求項1~3のいずれか一項に記載のスケジュール作成方法。
  5.  前記基板処理装置では、プロセスジョブが共通する複数枚の基板のうち所定の第1の基板のスケジュールの作成終了後、前記複数枚の基板のうち処理順序が前記第1の基板よりも後の第2の基板のスケジュールの作成が終わっていない状態で、作成済みのスケジュールの実行が開始されるようになっており、
     前記作成済みのスケジュールの実行開始後において、当該作成済みのスケジュールのうち未実行の部分を変更するスケジュール変更工程をさらに含む、請求項1~4のいずれか一項に記載のスケジュール作成方法。
  6.  前記スケジュール変更工程は、
     前記スケジュールの実行開始後において、前記作成済みのスケジュールのうち未実行のブロックを削除する工程と、
     削除したブロックを、前記第2の基板についてのブロックの配置と並行して、時系列に従って再配置する再配置工程とを含む、請求項5に記載のスケジュール作成方法。
  7.  基板を1枚ずつ処理する少なくとも1つの枚葉式の処理ユニットと、
     前記処理ユニットを制御するための制御部と、
     前記処理ユニットを含むリソースの動作を、時系列に従って規定するためのスケジュールを作成するためのスケジュール作成部とを含み、
     請求項1~6のいずれか一項に記載のスケジュール作成方法によって前記スケジュール作成部が作成したスケジュールに従って、前記制御部は前記リソースを制御する、基板処理装置。
  8.  前記制御部は、プロセスジョブが共通する複数枚の基板のうち所定の第1の基板のスケジュール作成の終了後、前記複数枚の基板のうち処理順序が前記第1の基板よりも後の第2の基板のスケジュールの作成が終わっていない状態で、作成済みのスケジュールの実行を開始する、請求項7に記載の基板処理装置。
PCT/JP2015/066901 2014-06-23 2015-06-11 基板処理装置のためのスケジュール作成方法および基板処理装置 WO2015198885A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020187018201A KR101902160B1 (ko) 2014-06-23 2015-06-11 기판 처리 장치를 위한 스케줄 작성 방법 및 기판 처리 장치
US15/320,055 US10514684B2 (en) 2014-06-23 2015-06-11 Schedule preparation method for substrate processing device and substrate processing device
KR1020177001162A KR101874268B1 (ko) 2014-06-23 2015-06-11 기판 처리 장치를 위한 스케줄 작성 방법 및 기판 처리 장치

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014128331A JP6313671B2 (ja) 2014-06-23 2014-06-23 基板処理装置のためのスケジュール作成方法および基板処理装置
JP2014-128331 2014-06-23

Publications (1)

Publication Number Publication Date
WO2015198885A1 true WO2015198885A1 (ja) 2015-12-30

Family

ID=54937976

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/066901 WO2015198885A1 (ja) 2014-06-23 2015-06-11 基板処理装置のためのスケジュール作成方法および基板処理装置

Country Status (5)

Country Link
US (1) US10514684B2 (ja)
JP (1) JP6313671B2 (ja)
KR (2) KR101874268B1 (ja)
TW (1) TWI543233B (ja)
WO (1) WO2015198885A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111102097A (zh) * 2019-11-21 2020-05-05 中国航发沈阳黎明航空发动机有限责任公司 航空发动机滚转喷管作动筒控制与测量装置及方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10438828B2 (en) * 2016-10-03 2019-10-08 Applied Materials, Inc. Methods and apparatus to prevent interference between processing chambers
US10359769B2 (en) * 2017-09-15 2019-07-23 Applied Materials, Inc. Substrate routing and throughput modeling
JP6951269B2 (ja) * 2018-01-29 2021-10-20 株式会社荏原製作所 基板処理装置、基板処理装置の制御装置、基板処理装置の制御方法、プログラムを格納した記憶媒体
KR102363113B1 (ko) * 2018-03-01 2022-02-15 가부시키가이샤 에바라 세이사꾸쇼 스케줄러, 기판 처리 장치, 및 기판 반송 방법
JP6942660B2 (ja) 2018-03-09 2021-09-29 株式会社Screenホールディングス 基板処理装置及び基板処理方法
CN113299587B (zh) * 2021-05-21 2022-04-26 无锡亚电智能装备有限公司 一种晶圆清洗工艺任务排列方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003100576A (ja) * 2001-09-20 2003-04-04 Dainippon Screen Mfg Co Ltd 基板処理装置のスケジュール作成方法及びそのプログラム
JP2006230146A (ja) * 2005-02-18 2006-08-31 Tokyo Electron Ltd 複数の電力使用系の動作制御装置、動作制御方法及び記憶媒体
JP2010161164A (ja) * 2009-01-07 2010-07-22 Tokyo Electron Ltd 処理装置及び処理装置の運転方法
JP2010217945A (ja) * 2009-03-13 2010-09-30 Panasonic Corp アプリケーション動作調整システム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5128860A (en) 1989-04-25 1992-07-07 Motorola, Inc. Manufacturing or service system allocating resources to associated demands by comparing time ordered arrays of data
JP2002274844A (ja) * 2001-03-15 2002-09-25 Fuji Photo Film Co Ltd 無機微粒子の製造方法、無機微粒子、希土類賦活フッ化ハロゲン化バリウム蛍光体、放射線像変換パネル
US6898702B1 (en) * 2001-06-29 2005-05-24 Ciena Corporation System and method for staggered starting of embedded system modules in an optical node
JP3982270B2 (ja) 2002-01-29 2007-09-26 信越半導体株式会社 半導体ウエーハの製造方法および半導体ウエーハ製造の受注方法ならびに半導体ウエーハ製造の受注システム
JP4353498B2 (ja) 2002-04-30 2009-10-28 キヤノン株式会社 管理装置及び方法、デバイス製造方法、並びにコンピュータプログラム
JP2008118068A (ja) 2006-11-08 2008-05-22 Renesas Technology Corp 半導体装置の生産管理システム
JPWO2010119808A1 (ja) 2009-04-15 2012-10-22 シャープ株式会社 製品の製造方法および製造システム
JP5852908B2 (ja) 2011-09-16 2016-02-03 株式会社Screenホールディングス 基板処理装置のためのスケジュール作成方法およびスケジュール作成プログラム
US10600010B2 (en) * 2013-03-15 2020-03-24 The Board Of Trustees Of The Leland Stanford Junior University Systems and methods for generating scheduling options in consideration of elements within a construction site

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003100576A (ja) * 2001-09-20 2003-04-04 Dainippon Screen Mfg Co Ltd 基板処理装置のスケジュール作成方法及びそのプログラム
JP2006230146A (ja) * 2005-02-18 2006-08-31 Tokyo Electron Ltd 複数の電力使用系の動作制御装置、動作制御方法及び記憶媒体
JP2010161164A (ja) * 2009-01-07 2010-07-22 Tokyo Electron Ltd 処理装置及び処理装置の運転方法
JP2010217945A (ja) * 2009-03-13 2010-09-30 Panasonic Corp アプリケーション動作調整システム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111102097A (zh) * 2019-11-21 2020-05-05 中国航发沈阳黎明航空发动机有限责任公司 航空发动机滚转喷管作动筒控制与测量装置及方法
CN111102097B (zh) * 2019-11-21 2022-03-08 中国航发沈阳黎明航空发动机有限责任公司 航空发动机滚转喷管作动筒控制与测量装置及方法

Also Published As

Publication number Publication date
US20170160731A1 (en) 2017-06-08
KR20180074819A (ko) 2018-07-03
KR101902160B1 (ko) 2018-09-27
JP6313671B2 (ja) 2018-04-18
JP2016009717A (ja) 2016-01-18
US10514684B2 (en) 2019-12-24
TW201611088A (zh) 2016-03-16
KR20170018936A (ko) 2017-02-20
KR101874268B1 (ko) 2018-07-03
TWI543233B (zh) 2016-07-21

Similar Documents

Publication Publication Date Title
JP6313671B2 (ja) 基板処理装置のためのスケジュール作成方法および基板処理装置
JP5852908B2 (ja) 基板処理装置のためのスケジュール作成方法およびスケジュール作成プログラム
KR102285183B1 (ko) 기판 처리 장치를 위한 스케줄 작성 방법 및 스케줄 작성 프로그램을 기록한 기록 매체
JP5168300B2 (ja) 基板処理装置及び基板処理方法
TW200822273A (en) Scheduling method for processing equipment
KR20150100532A (ko) 기판 처리 방법 및 기판 처리 장치
JP2015122477A (ja) 基板搬送方法および基板処理装置
TWI706458B (zh) 基板處理方法、基板處理裝置及電腦程式
JP2010056318A (ja) 基板処理ユニットおよび基板処理装置
JP5199792B2 (ja) 基板処理ユニット、基板処理装置および基板処理方法
JP5987796B2 (ja) 基板処理装置、基板処理方法及び記憶媒体
JP6573693B2 (ja) 基板処理装置のためのスケジュール作成方法および基板処理装置
JP2019021934A (ja) 基板搬送方法
JP6435388B2 (ja) 基板処理方法および基板処理装置
JP4496073B2 (ja) 基板処理装置及び基板処理方法
JP3960761B2 (ja) 基板処理装置のスケジュール作成方法及びそのプログラム
JP7112836B2 (ja) 基板処理方法および基板処理装置
JP5620530B2 (ja) 基板処理ユニットおよび基板処理装置
JP2010034222A (ja) 基板処理ユニット、基板処理装置およびノズルの位置制御方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15811048

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 15320055

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 20177001162

Country of ref document: KR

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 15811048

Country of ref document: EP

Kind code of ref document: A1