JP2016139667A - Substrate processing method and substrate processing device - Google Patents

Substrate processing method and substrate processing device Download PDF

Info

Publication number
JP2016139667A
JP2016139667A JP2015012680A JP2015012680A JP2016139667A JP 2016139667 A JP2016139667 A JP 2016139667A JP 2015012680 A JP2015012680 A JP 2015012680A JP 2015012680 A JP2015012680 A JP 2015012680A JP 2016139667 A JP2016139667 A JP 2016139667A
Authority
JP
Japan
Prior art keywords
processing
substrate
process job
processing unit
information
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
JP2015012680A
Other languages
Japanese (ja)
Other versions
JP6481977B2 (en
Inventor
山本 真弘
Shinko Yamamoto
真弘 山本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Screen Holdings Co Ltd
Original Assignee
Screen Holdings Co Ltd
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 Holdings Co Ltd filed Critical Screen Holdings Co Ltd
Priority to JP2015012680A priority Critical patent/JP6481977B2/en
Publication of JP2016139667A publication Critical patent/JP2016139667A/en
Application granted granted Critical
Publication of JP6481977B2 publication Critical patent/JP6481977B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Cleaning Or Drying Semiconductors (AREA)

Abstract

PROBLEM TO BE SOLVED: To schedule a process job while taking not only the input order of process job information but also the category of process job.SOLUTION: From an external computer, process job data defining the process jobs PJ1-PJ4 are received in this order. A processing schedule for executing the process job PJ1, i.e., the processing of a non-product substrate, in a processing unit SPIN1 is created (S109). A (SPIN1 product), i.e., a virtual resource corresponding to the processing unit SPIN1 is brought into entire period occupied state, and invalidated (S111). Consequently, the processing of a product substrate, i.e., the process job PJ2 cannot be planned in the processing unit SPIN1, and planned in other processing unit SPIN2 (S112). Since the process job PJ3 is the processing of a non-product substrate, it is planned in the processing unit SPIN1 (S113).SELECTED DRAWING: Figure 9B

Description

この発明は、基板を処理するための基板処理装置および基板処理方法に関する。   The present invention relates to a substrate processing apparatus and a substrate processing method for processing a substrate.

特許文献1は、基板を一枚ずつ処理する枚葉型の処理ユニットを有する基板処理装置の動作を規定するスケジュールを作成する方法を開示している。基板の処理を規定するプロセスジョブ情報がホストコンピュータから入力され、入力された順序でプロセスジョブ情報に対応するスケジュールが作成される。その作成されたスケジュールに従って、基板が処理ユニットに搬送され、処理ユニットにおいて基板に対する処理が実行され、処理後の基板が処理ユニットから搬出される。   Patent Document 1 discloses a method for creating a schedule that defines the operation of a substrate processing apparatus having a single wafer processing unit for processing substrates one by one. Process job information defining substrate processing is input from the host computer, and a schedule corresponding to the process job information is created in the input order. In accordance with the created schedule, the substrate is transported to the processing unit, the processing on the substrate is executed in the processing unit, and the processed substrate is unloaded from the processing unit.

特開2013−77796号公報JP 2013-77796 A

ホストコンピュータからのプロセスジョブ情報の入力順序は、必ずしも、使用者が意図する処理順序に整合しているわけではない。たとえば、トランジスタ等のデバイスを作り込むべき製品基板を処理ユニットに搬入する前に、デバイスの作り込みを予定していない非製品基板が処理ユニットに搬入される場合がある。非製品基板の一つの例は、処理ユニットの内部の洗浄の都合で搬入されるユニット洗浄用基板であり、他の例は、処理条件の適否や処理ユニットの内部の環境等をモニタするためのモニタ用基板である。その他、様々な理由で、非製品基板が処理ユニットに搬入される場合がある。   The input order of process job information from the host computer is not necessarily consistent with the processing order intended by the user. For example, before a product substrate on which a device such as a transistor is to be manufactured is transferred into the processing unit, a non-product substrate on which no device is scheduled to be transferred may be transferred into the processing unit. One example of a non-product substrate is a unit cleaning substrate that is carried in for the convenience of cleaning inside the processing unit, and the other example is for monitoring the suitability of processing conditions, the environment inside the processing unit, and the like. This is a monitor substrate. In addition, a non-product substrate may be carried into the processing unit for various reasons.

複数枚の非製品基板に対して処理ユニットで所定の処理(たとえば処理ユニット内部の洗浄)を行った後に、製品基板を当該処理ユニットで処理することが望まれる場合もある。必要枚数の非製品基板を準備できない場合には、使用された非製品基板が再度処理ユニットに搬入されて、必要枚数分の処理が繰り返される。このようなときには、必要枚数の非製品基板を一度に基板処理装置にセットすることができないため、非製品基板に対するプロセスジョブ情報が2つ以上に分かれる。一方、必要枚数の非製品基板の処理が終わる前であっても製品基板を基板処理装置にセットすることは可能であるので、2つ以上に分割された非製品基板用のプロセスジョブの間に製品基板用のプロセスジョブが割り込むこともあり得る。   In some cases, it may be desirable to process a product substrate with the processing unit after performing predetermined processing (for example, cleaning inside the processing unit) on a plurality of non-product substrates. When the required number of non-product substrates cannot be prepared, the used non-product substrates are loaded again into the processing unit, and the processing for the required number of sheets is repeated. In such a case, since the required number of non-product substrates cannot be set in the substrate processing apparatus at one time, the process job information for the non-product substrates is divided into two or more. On the other hand, since it is possible to set the product substrate in the substrate processing apparatus even before the processing of the required number of non-product substrates is completed, during the process job for the non-product substrate divided into two or more A process job for a product substrate may interrupt.

このような場合に、プロセスジョブ情報の入力順にスケジュールを作成すると、必要枚数の非製品基板の処理が実行される前に、製品基板が処理ユニットに搬入されるおそれがあり、必ずしも、使用者の意図する動作を行わせることができない。
また、ホストコンピュータからのプロセスジョブ情報の入力順は、必ずしも、処理効率を考慮された順序であるとは限らない。たとえば、60℃の薬液温度を指定した第1プロセスジョブ情報、80℃の薬液温度を指定した第2プロセスジョブ情報、60℃の薬液温度を指定した第3プロセスジョブ情報が、この順序で入力される場合があり得る。このような場合に、プロセスジョブ情報の入力順にスケジュールを作成すると、第1プロセスジョブと第2プロセスジョブとの間、および第2プロセスジョブと第3プロセスジョブとの間に、それぞれ、基板処理装置の動作を一旦停止させて、薬液温度を変更しなければならない。つまり、薬液温度を60℃から80℃に変更し、その後に80℃から60℃に戻すことになる。薬液温度の変更には、数時間を要する場合もあるから、前述のようなプロセスジョブ情報の入力順で実際の基板処理を実行すると、生産効率が悪い。
In such a case, if the schedule is created in the input order of the process job information, the product substrate may be carried into the processing unit before the required number of non-product substrates are processed. The intended operation cannot be performed.
Further, the input order of the process job information from the host computer is not necessarily an order in which processing efficiency is taken into consideration. For example, first process job information specifying a chemical solution temperature of 60 ° C., second process job information specifying a chemical solution temperature of 80 ° C., and third process job information specifying a chemical solution temperature of 60 ° C. are input in this order. It may be possible. In such a case, when the schedule is created in the order of input of process job information, the substrate processing apparatus is respectively provided between the first process job and the second process job and between the second process job and the third process job. It is necessary to temporarily stop the operation and change the chemical temperature. That is, the chemical temperature is changed from 60 ° C. to 80 ° C., and then returned from 80 ° C. to 60 ° C. Since it may take several hours to change the chemical temperature, if the actual substrate processing is executed in the input order of the process job information as described above, the production efficiency is poor.

そこで、この発明の一つの目的は、プロセスジョブ情報の入力順だけでなくプロセスジョブのカテゴリをも考慮してプロセスジョブをスケジューリングして実行できる基板処理方法および基板処理装置を提供することである。   Accordingly, an object of the present invention is to provide a substrate processing method and a substrate processing apparatus capable of scheduling and executing a process job in consideration of not only the process job information input order but also the process job category.

上記の目的を達成するための請求項1記載の発明は、基板処理を実行するための処理ユニット(SPIN1〜SPIN12)を備えた基板処理装置における基板処理方法であって、外部コンピュータ(24)から、1枚または複数枚の第1基板に対する処理である第1プロセスジョブを規定する第1プロセスジョブ情報を受信する第1受信工程(S101;S121)と、外部コンピュータ(24)から、1枚または複数枚の第2基板に対する処理である第2プロセスジョブを規定する第2プロセスジョブ情報を、前記第1受信工程よりも後に受信する第2受信工程(S102,S103;S122,S123)と、前記第1プロセスジョブを前記処理ユニットで実行するための第1処理スケジュールを作成する第1処理スケジューリング工程(S109;S129,S137)と、前記第1プロセスジョブのカテゴリに基づいて属性情報を生成する属性情報生成工程(S111;S131,S139)と、前記第2プロセスジョブ情報および前記属性情報に基づいて、前記第2プロセスジョブを前記処理ユニットで実行するための第2処理スケジュールを作成する第2処理スケジューリング工程(S112,S113;S132,S133,S134,S140)と、を含む基板処理方法である。なお、括弧内の英数字は、後述の実施形態における対応構成要素等を表す。以下、この項において同じ。   The invention described in claim 1 for achieving the above object is a substrate processing method in a substrate processing apparatus provided with processing units (SPIN1 to SPIN12) for executing substrate processing, from an external computer (24). A first receiving step (S101; S121) for receiving first process job information defining a first process job that is a process for one or a plurality of first substrates, and one or more from an external computer (24) A second receiving step (S102, S103; S122, S123) for receiving second process job information defining a second process job, which is processing for a plurality of second substrates, after the first receiving step; A first process scheduling process for creating a first process schedule for executing the first process job in the processing unit (S109; S129, S137), an attribute information generation step (S111; S131, S139) for generating attribute information based on the category of the first process job, and the second process job information and the attribute information. And a second processing scheduling step (S112, S113; S132, S133, S134, S140) for creating a second processing schedule for executing the second process job in the processing unit. In addition, the alphanumeric characters in parentheses represent corresponding components in the embodiments described later. The same applies hereinafter.

この方法によれば、外部コンピュータから第1プロセスジョブ情報および第2プロセスジョブ情報を順に受信して、それらによってそれぞれ規定される第1プロセスジョブおよび第2プロセスジョブを実行するための第1処理スケジュールおよび第2処理スケジュールが作成される。基板処理装置がそれらの第1処理スケジュールおよび第2処理スケジュールに従って動作することによって、第1プロセスジョブおよび第2プロセスジョブが実行される。   According to this method, the first process schedule for sequentially receiving the first process job information and the second process job information from the external computer and executing the first process job and the second process job respectively defined by them. And the 2nd processing schedule is created. As the substrate processing apparatus operates according to the first processing schedule and the second processing schedule, the first process job and the second process job are executed.

第2処理スケジュールの作成は、第2プロセスジョブ情報に基づくだけでなく、第1プロセスジョブのカテゴリに基づいて生成される属性情報にも基づいて作成される。そのため、第1プロセスジョブのカテゴリを考慮して、第2プロセスジョブが計画される。つまり、先に情報を受信したプロセスジョブのカテゴリに応じて適切に第2プロセスジョブを計画することができる。   The second processing schedule is created not only based on the second process job information but also based on attribute information generated based on the category of the first process job. Therefore, the second process job is planned in consideration of the category of the first process job. That is, the second process job can be appropriately planned according to the category of the process job that has received the information first.

たとえば、第1プロセスジョブのカテゴリに応じて、第2プロセスジョブおよびその後に受信される他のプロセスジョブの順序を適切に定めることにより、受信順序とは異なる順序でプロセスジョブを実行する計画を策定することができる。たとえば、処理ユニットのメンテナンスのためのプロセスジョブを第2プロセスジョブに先行して実行させたり、生産性が高まるようにプロセスジョブの順序を最適化したりすることができる。また、第1プロセスジョブのカテゴリに応じて、第2プロセスジョブの実行を留保することにより、第1プロセスジョブが実行された処理ユニットが第2プロセスジョブの実行のために適切な状態になるまで待機することができる。これにより、適切な状態の処理ユニットで第2プロセスジョブを実行でき、それにより、品質の高い基板処理を実現できる。   For example, by appropriately determining the order of the second process job and other process jobs received after that according to the category of the first process job, a plan for executing the process jobs in a different order from the reception order is formulated. can do. For example, a process job for maintenance of the processing unit can be executed prior to the second process job, or the order of the process jobs can be optimized to increase productivity. Also, by retaining the execution of the second process job according to the category of the first process job, until the processing unit in which the first process job is executed becomes an appropriate state for the execution of the second process job Can wait. Accordingly, the second process job can be executed by the processing unit in an appropriate state, thereby realizing high-quality substrate processing.

請求項2記載の発明は、前記属性情報生成工程(S111;S131,S139)が、前記第2処理スケジューリング工程の前に実行される、請求項1に記載の基板処理方法である。
第2処理スケジューリング工程よりも前に属性情報生成工程が完了していれば、第2プロセスジョブ情報および属性情報の両方に基づいて第2処理スケジュールを作成できる。それにより、無駄なスケジューリング処理が行われたり、基板処理装置の無駄な動作が生じたりすることを回避できる。
A second aspect of the present invention is the substrate processing method according to the first aspect, wherein the attribute information generating step (S111; S131, S139) is executed before the second processing scheduling step.
If the attribute information generation process is completed before the second process scheduling process, the second process schedule can be created based on both the second process job information and the attribute information. As a result, it is possible to avoid unnecessary scheduling processing and unnecessary operation of the substrate processing apparatus.

たとえば、第2処理スケジューリング工程の後に属性情報が生成されると、第2処理スケジューリングを事後的に無効化する必要が生じるので、無駄なスケジューリング処理が行われることになる。また、第2処理スケジュールに基づいて、基板処理装置の動作が開始した後に属性情報が生成されると、第2プロセスジョブが無駄に途中まで実行されてしまう。たとえば、第2プロセスジョブが、処理ユニットへの基板搬送、処理ユニットでの基板処理、および処理ユニットからの基板搬出を含むとする。この場合、処理ユニットの前まで基板が搬送された時点で第2処理スケジュールが無効とされると、その基板をたとえば基板待機位置まで戻す必要が生じ、無駄な基板搬送動作が生じる。これらの無駄な処理または動作は、第2処理スケジューリング工程よりも前に属性情報を生成することによって回避できる。   For example, if the attribute information is generated after the second process scheduling step, the second process scheduling needs to be invalidated afterwards, so that a useless scheduling process is performed. Further, if the attribute information is generated after the operation of the substrate processing apparatus starts based on the second processing schedule, the second process job is unnecessarily executed halfway. For example, it is assumed that the second process job includes substrate transport to the processing unit, substrate processing in the processing unit, and substrate unloading from the processing unit. In this case, if the second processing schedule is invalidated when the substrate is transported to the front of the processing unit, it is necessary to return the substrate to, for example, the substrate standby position, and a wasteful substrate transport operation occurs. These useless processes or operations can be avoided by generating the attribute information before the second process scheduling step.

前記属性情報生成工程は、第2受信工程よりも前に実行されてもよい。この場合、属性情報に基づかない第2処理スケジューリング工程をより確実に回避できる。
請求項3記載の発明は、前記属性情報生成工程が、前記第1プロセスジョブのカテゴリとは異なるカテゴリのプロセスジョブの前記処理ユニットにおける実行を禁止する禁止属性情報を生成する工程(S111;S131),S139を含む、請求項1または2に記載の基板処理方法である。
The attribute information generation step may be executed before the second reception step. In this case, the second process scheduling step that is not based on the attribute information can be avoided more reliably.
According to a third aspect of the present invention, the attribute information generating step generates forbidden attribute information for prohibiting execution of a process job in a category different from the category of the first process job in the processing unit (S111; S131). , S139, the substrate processing method according to claim 1 or 2.

この方法により、第1プロセスジョブが計画された処理ユニットにおいて、第1プロセスジョブのカテゴリとは異なるカテゴリのプロセスジョブが計画されることを回避できる。換言すれば、第1プロセスジョブが計画された処理ユニットにおいて、少なくとも2回にわたって同一カテゴリのプロセスジョブが実行されることを保証できる。
とくに、次のプロセスジョブのスケジューリングよりも前に禁止属性情報を予め生成しておけば、第1プロセスジョブとは異なるカテゴリの処理が同じ処理ユニットに対して計画されることを確実に回避できる。また、第1プロセスジョブが計画された処理ユニットにおいて、別のカテゴリの処理を実行するための無駄な準備動作が計画されることを回避することもできる。
By this method, it is possible to avoid planning a process job in a category different from the category of the first process job in the processing unit in which the first process job is planned. In other words, it can be guaranteed that the process job of the same category is executed at least twice in the processing unit in which the first process job is planned.
In particular, if the prohibition attribute information is generated in advance prior to the scheduling of the next process job, it is possible to reliably avoid planning a process of a category different from that of the first process job for the same processing unit. It is also possible to avoid planning a useless preparation operation for executing another category of processing in the processing unit in which the first process job is planned.

請求項4記載の発明は、前記第2処理スケジューリング工程が、前記禁止属性情報が生成されている場合に、前記第1プロセスジョブのカテゴリと前記第2プロセスジョブのカテゴリとの異同を判断する工程(S112a,S113a;S132a,S134a,140a)と、前記第1および第2プロセスジョブのカテゴリが同じであれば、前記処理ユニットにおいて前記第2プロセスジョブを実行する第2処理スケジュールの作成を許容し、前記第1および第2プロセスジョブのカテゴリが異なれば、前記処理ユニットにおいて前記第2プロセスジョブを実行する第2処理スケジュールの作成を禁止する工程(S112a,S113a;S132a,S134a,140a)とを含む、請求項3に記載の基板処理方法である。   According to a fourth aspect of the present invention, the second process scheduling step determines a difference between the category of the first process job and the category of the second process job when the prohibition attribute information is generated. (S112a, S113a; S132a, S134a, 140a) and the category of the first and second process jobs are the same, the second processing schedule for executing the second process job in the processing unit is allowed. If the categories of the first and second process jobs are different, the process unit prohibits creation of a second process schedule for executing the second process job (S112a, S113a; S132a, S134a, 140a). It is a substrate processing method of Claim 3 containing.

この方法により、禁止属性情報が生成されている場合には、第1および第2プロセスジョブのカテゴリが同じであれば、第1および第2プロセスジョブの同一処理ユニットでの処理が許容される一方で、それらのカテゴリが異なれば、第1および第2プロセスジョブの同一処理ユニットでの処理が禁止される。
たとえば、或るプロセスジョブ1(第1プロセスジョブ)の情報の次に情報が受信されたプロセスジョブ2(第2プロセスジョブ)のカテゴリがプロセスジョブ1のカテゴリとは異なり、プロセスジョブ2の情報の次に情報が受信されたプロセスジョブ3(別の第2プロセスジョブ)のカテゴリがプロセスジョブ1のカテゴリと同じである場合を考える。この場合、プロセスジョブ1が計画された処理ユニットにおけるプロセスジョブ2の計画は禁止され、当該処理ユニットにおけるプロセスジョブ3の計画が許容される。したがって、当該処理ユニットにおいて、プロセスジョブ1に続いてプロセスジョブ3が実行されるように、プロセスジョブ3の処理スケジュールが作成される。プロセスジョブ2については、たとえば、別の処理ユニットにおいて実行するように処理スケジュールが作成されてもよい。禁止属性情報が取り消されれば、プロセスジョブ1が計画された処理ユニットにおけるプロセスジョブ2の計画が許容される。このようにして、禁止属性情報を利用することによって、カテゴリに応じて、プロセスジョブの順序を適切に定めることができる。
When the prohibition attribute information is generated by this method, if the first and second process jobs have the same category, the first and second process jobs can be processed in the same processing unit. If these categories are different, processing of the first and second process jobs in the same processing unit is prohibited.
For example, the category of the process job 2 (second process job) in which information is received after the information of a certain process job 1 (first process job) is different from the category of the process job 1, and the information of the process job 2 Next, consider a case where the category of process job 3 (another second process job) from which information is received is the same as the category of process job 1. In this case, the planning of the process job 2 in the processing unit in which the process job 1 is planned is prohibited, and the planning of the process job 3 in the processing unit is allowed. Accordingly, the processing schedule of the process job 3 is created so that the process job 3 is executed after the process job 1 in the processing unit. For the process job 2, for example, a processing schedule may be created to be executed in another processing unit. If the prohibition attribute information is canceled, the process job 2 can be planned in the processing unit in which the process job 1 is planned. In this way, by using the prohibited attribute information, it is possible to appropriately determine the order of process jobs according to the category.

請求項5記載の発明は、前記第1プロセスジョブ情報が前記第1基板の種類を表す第1基板種情報を含み、前記第2プロセスジョブ情報が前記第2基板の種類を表す第2基板種情報を含み、前記カテゴリの異同を判断する工程は、前記第1基板種情報および前記第2基板種情報に基づいて前記第1および第2基板の種類の異同を判断する工程(S112a,S113a)を含む、請求項4に記載の基板処理方法である。   According to a fifth aspect of the present invention, the first process job information includes first substrate type information representing the type of the first substrate, and the second process job information represents a second substrate type representing the type of the second substrate. The step of determining the difference between the categories including information includes determining the difference between the types of the first and second substrates based on the first substrate type information and the second substrate type information (S112a, S113a). The substrate processing method according to claim 4, comprising:

この方法では、禁止属性情報が生成されている場合に、第1および第2プロセスジョブの基板の種類が同じであれば、第1プロセスジョブが計画された処理ユニットにおける第2プロセスジョブの計画が許容される。その一方で、第1および第2プロセスジョブの基板の種類が異なる場合には、第1プロセスジョブが計画された処理ユニットにおける第2プロセスジョブの計画が禁止される。   In this method, when the prohibited attribute information is generated, if the substrate types of the first and second process jobs are the same, the plan of the second process job in the processing unit in which the first process job is planned is determined. Permissible. On the other hand, when the substrate types of the first and second process jobs are different, the planning of the second process job in the processing unit where the first process job is planned is prohibited.

たとえば、或るプロセスジョブ1(第1プロセスジョブ)の情報およびその次に受信されたプロセスジョブ2(第2プロセスジョブ)の情報が異なる基板の種類を指定しており、プロセスジョブ2の情報の次に受信されたプロセスジョブ3(別の第2プロセスジョブ)の情報がプロセスジョブ1と同じ基板の種類を指定している場合を考える。この場合、プロセスジョブ1が計画された処理ユニットにおけるプロセスジョブ2の計画は禁止される。その一方で、当該処理ユニットにおけるプロセスジョブ3の計画が許容される。したがって、当該処理ユニットにおいて、プロセスジョブ1に続いてプロセスジョブ3が実行されるように、プロセスジョブ3の処理スケジュールが作成される。プロセスジョブ2については、たとえば、禁止属性情報が取り消されるまで処理スケジュールの作成が保留されるか、または別の処理ユニットにおいて実行するように処理スケジュールが作成されてもよい。禁止属性情報が取り消されれば、プロセスジョブ1が計画された処理ユニットにおけるプロセスジョブ2の計画が許容される。   For example, the information of a certain process job 1 (first process job) and the information of the next received process job 2 (second process job) specify different board types, and the information of the process job 2 information Next, consider a case where the received process job 3 (another second process job) information designates the same substrate type as the process job 1. In this case, the planning of the process job 2 in the processing unit where the process job 1 is planned is prohibited. On the other hand, the planning of the process job 3 in the processing unit is allowed. Accordingly, the processing schedule of the process job 3 is created so that the process job 3 is executed after the process job 1 in the processing unit. For the process job 2, for example, the creation of the processing schedule is suspended until the prohibition attribute information is canceled, or the processing schedule may be created to be executed in another processing unit. If the prohibition attribute information is canceled, the process job 2 can be planned in the processing unit in which the process job 1 is planned.

基板の種類の一つの例は、製品の製造のために用いられる製品基板である。基板の種類の他の例は、製品の製造以外の目的、たとえば処理ユニットのメンテナンス(洗浄等)または処理品質モニタのために用いられる非製品基板である。製品基板の処理に先立って、非製品基板を用いた複数のプロセスジョブの連続実行が必要とされる場合がある。
たとえば、非製品基板の処理(プロセスジョブ1)を指定するプロセスジョブ情報、製品基板の処理(プロセスジョブ2)を指定するプロセスジョブ情報、非製品基板の処理(プロセスジョブ3)を指定するプロセスジョブ情報が順に受信された場合を想定する。この場合に、プロセスジョブ1に対応するプロセスジョブ情報に基づいて禁止属性情報が生成されることにより、プロセスジョブ1が計画された処理ユニットにおける製品基板の処理計画が禁止される。したがって、プロセスジョブ1が計画された処理ユニットで、プロセスジョブ1の次にプロセスジョブ2を実行するような計画は禁止される。一方、プロセスジョブ3を当該処理ユニットでプロセスジョブ1の次に実行する計画は許容される。その結果、当該処理ユニットにおいて、プロセスジョブ1およびプロセスジョブ3を連続して実行させることができる。このように、プロセスジョブ情報の受信順序によらずに、製品基板の処理に相当する複数のプロセスジョブを連続実行させる処理スケジューリングが可能になる。
One example of a substrate type is a product substrate used for the manufacture of products. Other examples of substrate types are non-product substrates used for purposes other than product manufacture, such as processing unit maintenance (cleaning, etc.) or process quality monitoring. Prior to processing a product substrate, it may be necessary to continuously execute a plurality of process jobs using a non-product substrate.
For example, process job information specifying non-product substrate processing (process job 1), process job information specifying product substrate processing (process job 2), and process job specifying non-product substrate processing (process job 3) Assume that information is received in order. In this case, the prohibition attribute information is generated based on the process job information corresponding to the process job 1, thereby prohibiting the product substrate processing plan in the processing unit in which the process job 1 is planned. Accordingly, a plan in which the process job 2 is executed after the process job 1 in the processing unit in which the process job 1 is planned is prohibited. On the other hand, a plan for executing process job 3 next to process job 1 in the processing unit is allowed. As a result, the process job 1 and the process job 3 can be continuously executed in the processing unit. In this way, it is possible to perform processing scheduling for continuously executing a plurality of process jobs corresponding to processing of a product substrate, regardless of the reception order of process job information.

プロセスジョブ3の計画の後に禁止属性情報が取り消されれば、その後は、当該処理ユニットにおけるプロセスジョブ2の計画が許容される。したがって、非製品基板の処理である複数のプロセスジョブを連続実行した後に、製品基板の処理を計画できる。
請求項6記載の発明は、前記第1プロセスジョブ情報が前記第1基板に対する処理条件を表す第1処理条件情報を含み、前記第2プロセスジョブ情報が前記第2基板に対する処理条件を表す第2処理条件情報を含み、前記カテゴリの異同を判断する工程は、前記第1処理条件情報および前記第2処理条件情報に基づいて前記第1および第2基板に対する処理条件の異同を判断する工程(S132a,S134a,140a)を含む、請求項4または5に記載の基板処理方法である。
If the prohibition attribute information is canceled after the process job 3 is planned, the process job 2 plan in the processing unit is allowed thereafter. Therefore, the processing of the product substrate can be planned after continuously executing a plurality of process jobs that are processing of the non-product substrate.
According to a sixth aspect of the present invention, the first process job information includes first processing condition information indicating processing conditions for the first substrate, and the second process job information indicates second processing conditions for the second substrate. The step of determining the difference between the categories including the processing condition information includes determining the difference between the processing conditions for the first and second substrates based on the first processing condition information and the second processing condition information (S132a). , S134a, 140a), the substrate processing method according to claim 4 or 5.

この方法では、禁止属性情報が生成されている場合に、第1および第2プロセスジョブの処理条件が同じであれば、第1プロセスジョブが計画された処理ユニットにおける第2プロセスジョブの計画が許容される。その一方で、第1および第2プロセスジョブの処理条件が異なる場合には、第1プロセスジョブが計画された処理ユニットにおける第2プロセスジョブの計画が禁止される。   In this method, when the prohibition attribute information is generated, if the processing conditions of the first and second process jobs are the same, the plan of the second process job in the processing unit in which the first process job is planned is allowed. Is done. On the other hand, when the processing conditions of the first and second process jobs are different, the planning of the second process job in the processing unit where the first process job is planned is prohibited.

たとえば、或るプロセスジョブ1の情報(第1プロセスジョブ情報)、プロセスジョブ2の情報(第2プロセスジョブ情報)、およびプロセスジョブ3の情報(別の第2プロセスジョブ情報)が、この順序で受信された場合を考える。そして、プロセスジョブ1およびプロセスジョブ2の情報が異なる処理条件を指定しており、プロセスジョブ1およびプロセスジョブ3の情報が同じ処理条件を指定していると仮定する。この場合、プロセスジョブ1が計画された処理ユニットにおいて、プロセスジョブ1の次にプロセスジョブ2を実行するような計画は禁止される。その一方で、当該処理ユニットにおいてプロセスジョブ1の次にプロセスジョブ3を実行する計画は許容される。したがって、当該処理ユニットにおいて、プロセスジョブ1に続いてプロセスジョブ3が実行されるように、プロセスジョブ3の処理スケジュールが作成される。プロセスジョブ2については、たとえば、禁止属性情報が取り消されるまで処理スケジュールの作成が保留されるか、または別の処理ユニットにおいて実行するように処理スケジュールが作成されてもよい。禁止属性情報が取り消されれば、プロセスジョブ1が計画された処理ユニットにおけるプロセスジョブ2の計画が許容される。   For example, information on a certain process job 1 (first process job information), information on a process job 2 (second process job information), and information on a process job 3 (other second process job information) are in this order. Consider the case where it is received. It is assumed that the process job 1 and process job 2 information specify different processing conditions, and the process job 1 and process job 3 information specify the same processing condition. In this case, in the processing unit where the process job 1 is planned, a plan for executing the process job 2 after the process job 1 is prohibited. On the other hand, a plan for executing process job 3 after process job 1 in the processing unit is allowed. Accordingly, the processing schedule of the process job 3 is created so that the process job 3 is executed after the process job 1 in the processing unit. For the process job 2, for example, the creation of the processing schedule is suspended until the prohibition attribute information is canceled, or the processing schedule may be created to be executed in another processing unit. If the prohibition attribute information is canceled, the process job 2 can be planned in the processing unit in which the process job 1 is planned.

処理条件の一例は、基板処理のために用いられる処理流体の種類である。処理流体は、気体または液体である。たとえば、処理液の種類の例は、処理液の化学組成、処理液の構成液の混合比、処理液の濃度、処理液の温度などである。
たとえば、基板処理装置が複数の温度に切り換えて処理液を供給可能な処理液供給ユニット(CC1)を備えている場合を考える。ただし、処理液の温度の変更は瞬時に行うことはできず、処理液の温度の変更には、温度調整のための一定以上の時間が必要である。このような場合には、等しい処理液温度での基板処理を規定する複数のプロセスジョブを連続して処理することができれば、生産性を向上できる可能性が高い。
An example of processing conditions is the type of processing fluid used for substrate processing. The processing fluid is a gas or a liquid. For example, examples of the type of the processing liquid include the chemical composition of the processing liquid, the mixing ratio of the constituent liquids of the processing liquid, the concentration of the processing liquid, the temperature of the processing liquid, and the like.
For example, consider a case where the substrate processing apparatus includes a processing liquid supply unit (CC1) that can supply processing liquid by switching to a plurality of temperatures. However, the change of the temperature of the treatment liquid cannot be instantaneously performed, and the change of the temperature of the treatment liquid requires a certain time or more for temperature adjustment. In such a case, if a plurality of process jobs that define substrate processing at the same processing liquid temperature can be successively processed, it is highly possible that productivity can be improved.

たとえば、第1処理液温度(たとえば60℃)を指定するプロセスジョブ1の情報、第2処理液温度(たとえば80℃)を指定するプロセスジョブ2の情報、第1処理液温度を指定するプロセスジョブ3の情報が順に受信された場合を想定する。この場合に、プロセスジョブ1の情報に基づいて禁止属性情報が生成されることにより、プロセスジョブ1が計画された処理ユニットにおける、第1処理液温度以外の処理液温度を指定した基板処理の計画が禁止される。したがって、プロセスジョブ1が計画された処理ユニットで、プロセスジョブ1の次にプロセスジョブ2を実行するような計画は禁止される。一方、プロセスジョブ3を当該処理ユニットでプロセスジョブ1の次に実行する計画は許容される。その結果、当該処理ユニットにおいて、プロセスジョブ1およびプロセスジョブ3を連続して実行させることができる。このように、プロセスジョブ情報の受信順序によらずに、処理液温度の等しい複数のプロセスジョブを連続実行させる処理スケジューリングが可能になる。   For example, information on process job 1 that specifies the first processing liquid temperature (for example, 60 ° C.), information on process job 2 that specifies the second processing liquid temperature (for example, 80 ° C.), and process job that specifies the first processing liquid temperature Assume that information 3 is received in order. In this case, the prohibition attribute information is generated based on the information of the process job 1, so that the substrate processing plan in which the processing liquid temperature other than the first processing liquid temperature is specified in the processing unit in which the process job 1 is planned. Is prohibited. Accordingly, a plan in which the process job 2 is executed after the process job 1 in the processing unit in which the process job 1 is planned is prohibited. On the other hand, a plan for executing process job 3 next to process job 1 in the processing unit is allowed. As a result, the process job 1 and the process job 3 can be continuously executed in the processing unit. In this way, it is possible to perform processing scheduling for continuously executing a plurality of process jobs having the same processing liquid temperature regardless of the order in which the process job information is received.

プロセスジョブ3の計画の後に禁止属性情報が取り消されれば、その後は、当該処理ユニットにおけるプロセスジョブ2の計画が許容される。したがって、第1処理液温度での複数のプロセスジョブを連続実行した後に、第2処理液温度での基板処理を計画できる。
基板処理装置が複数の処理ユニットを備えている場合に、処理条件の変更が複数の処理ユニットにおいて共通に生じる場合がある。具体的には、処理液供給ユニットが複数の処理ユニットに対して共通に処理液を供給するように構成されている場合が一つの例である。この場合、プロセスジョブ1を或る処理ユニットで計画すると、当該処理ユニットに処理液を供給する処理液供給ユニットが処理液を供給する他の処理ユニットにおいても処理条件が切り換わる。このように、第1プロセスジョブを或る処理ユニットに対して計画することによって他の処理ユニットの処理条件が変化する場合には、処理条件が変化する複数の処理ユニットについて他の処理条件のプロセスジョブの計画を禁止するように禁止属性情報が生成されることが好ましい。
If the prohibition attribute information is canceled after the process job 3 is planned, the process job 2 plan in the processing unit is allowed thereafter. Therefore, the substrate processing at the second processing liquid temperature can be planned after continuously executing a plurality of process jobs at the first processing liquid temperature.
When the substrate processing apparatus includes a plurality of processing units, a change in processing conditions may occur in common in the plurality of processing units. Specifically, the case where the processing liquid supply unit is configured to supply the processing liquid to a plurality of processing units in common is one example. In this case, when the process job 1 is planned in a certain processing unit, the processing conditions are switched in the other processing units in which the processing liquid supply unit that supplies the processing liquid to the processing unit supplies the processing liquid. In this way, when the processing conditions of other processing units change by planning the first process job for a certain processing unit, the processes of the other processing conditions are performed for a plurality of processing units whose processing conditions change. Prohibition attribute information is preferably generated so as to prohibit job planning.

たとえば、第1プロセスジョブを計画した場合に、処理液供給ユニットに関連して、当該第1プロセスジョブで使用する処理液種以外の処理液種を使用する計画を禁止する禁止属性情報を生成してもよい。これにより、その処理液供給ユニットからの処理液の供給を受ける全ての処理ユニットにおいて、第1プロセスジョブで使用する処理液種以外の種類の処理液種を指定するプロセスジョブの計画が禁止される。   For example, when a first process job is planned, forbidden attribute information for prohibiting a plan to use a processing liquid type other than the processing liquid type used in the first process job is generated in association with the processing liquid supply unit. May be. This prohibits the planning of a process job that designates a type of processing liquid other than the type of processing liquid used in the first process job in all the processing units that receive the processing liquid supplied from the processing liquid supply unit. .

請求項7記載の発明は、前記第1処理スケジューリング工程が、前記第1基板に対する処理を実行する第1処理ユニットを特定する第1処理ユニット特定工程(109a)を含み、前記属性情報生成工程が、前記第1プロセスジョブのカテゴリとは異なるカテゴリのプロセスジョブの前記第1処理ユニットにおける実行を禁止する禁止属性情報を生成する工程(S111)であり、前記第2処理スケジューリング工程が、前記禁止属性情報が生成されている場合に、前記第1プロセスジョブのカテゴリと前記第2プロセスジョブのカテゴリとの異同を判断するカテゴリ判断工程(S112a,S113a)と、前記カテゴリ判断工程の判断結果に基づいて前記第2基板に対する処理を実行する第2処理ユニットを特定する第2処理ユニット特定工程(S112b,S113b)とを含み、前記第2処理ユニット特定工程が、前記第1および第2プロセスジョブのカテゴリが同じであれば、前記第1処理ユニットを前記第2処理ユニットとして特定し、前記第1および第2プロセスジョブのカテゴリが異なれば、前記第1処理ユニットとは異なる処理ユニットを前記第2処理ユニットとして特定する、請求項1または2に記載の基板処理方法である。   According to a seventh aspect of the present invention, the first process scheduling step includes a first processing unit specifying step (109a) for specifying a first processing unit that executes a process on the first substrate, and the attribute information generating step includes A step (S111) of generating prohibition attribute information for prohibiting execution of a process job in a category different from the category of the first process job in the first processing unit, wherein the second process scheduling step includes the prohibition attribute A category determination step (S112a, S113a) for determining the difference between the category of the first process job and the category of the second process job when information is generated, and based on the determination result of the category determination step A second processing unit that identifies a second processing unit that performs processing on the second substrate. If the second processing unit specifying step includes the same category of the first and second process jobs, the first processing unit is specified as the second processing unit, including the steps (S112b, S113b) 3. The substrate processing method according to claim 1, wherein if the categories of the first and second process jobs are different, a processing unit different from the first processing unit is specified as the second processing unit. 4.

この方法により、第1プロセスジョブを実行する第1処理ユニットが特定され、その第1処理ユニットにおいて第1プロセスジョブとは異なるカテゴリの他のプロセスジョブを実行するような計画が禁止される。それに応じて、第2プロセスジョブのカテゴリが第1プロセスジョブと同じであれば、第1処理ユニットに第2プロセスジョブが計画される。第2プロセスジョブのカテゴリが第1プロセスジョブとは異なれば、第1処理ユニットにおける第2プロセスジョブの計画は禁止され、別の処理ユニットにおいて第2プロセスジョブが計画される。これにより、第1処理ユニットでは、カテゴリが同じ複数のプロセスジョブの連続実行が保証される。   With this method, the first processing unit that executes the first process job is specified, and a plan for executing another process job in a category different from the first process job in the first processing unit is prohibited. Accordingly, if the category of the second process job is the same as the first process job, the second process job is planned in the first processing unit. If the category of the second process job is different from that of the first process job, the planning of the second process job in the first processing unit is prohibited, and the second process job is planned in another processing unit. Thereby, in the first processing unit, continuous execution of a plurality of process jobs having the same category is guaranteed.

たとえば、或るプロセスジョブ1(第1プロセスジョブ)の情報の次に情報受信されたプロセスジョブ2(第2プロセスジョブ)のカテゴリがプロセスジョブ1のカテゴリとは異なり、プロセスジョブ2の情報の次に情報受信されたプロセスジョブ3(別の第2プロセスジョブ)のカテゴリがプロセスジョブ1のカテゴリと同じである場合を考える。この場合、プロセスジョブ1が計画された処理ユニット1において、プロセスジョブ1の次にプロセスジョブ2を実行する計画は禁止され、当該処理ユニット1においてプロセスジョブ1の次にプロセスジョブ3を実行する計画は許容される。したがって、当該処理ユニット1において、プロセスジョブ1に続いてプロセスジョブ3が実行されるように、プロセスジョブ3の処理スケジュールが作成される。プロセスジョブ2については、たとえば、別の処理ユニット2において実行するように処理スケジュールが作成される。このようにして、処理ユニット1において、プロセスジョブ1,3の間にプロセスジョブ2が割り込むことを回避できる。   For example, the category of the process job 2 (second process job) received after the information of a certain process job 1 (first process job) is different from the category of the process job 1, and the information of the process job 2 is next. Assume that the category of the process job 3 (another second process job) received in step S3 is the same as the category of the process job 1. In this case, in the processing unit 1 in which the process job 1 is planned, the plan for executing the process job 2 after the process job 1 is prohibited, and the plan for executing the process job 3 after the process job 1 in the processing unit 1 is prohibited. Is acceptable. Therefore, the processing schedule of the process job 3 is created so that the process job 1 is executed after the process job 1 in the processing unit 1. For the process job 2, for example, a processing schedule is created so as to be executed in another processing unit 2. In this way, in the processing unit 1, the process job 2 can be prevented from interrupting between the process jobs 1 and 3.

前記属性情報生成工程は、前記第1処理ユニットに関連付けた禁止属性情報を生成する工程(S111)であってもよい。この場合、個々の処理ユニットに関連付けて禁止属性情報が生成される。それにより、各処理ユニットについて個別に異カテゴリのプロセスジョブの計画を禁止できる。
請求項8記載の発明は、前記属性情報生成工程が、前記第1プロセスジョブの実行のために無効となる処理条件を表す無効条件情報を生成する工程(S131)であり、前記第2処理スケジューリング工程が、前記無効条件情報が生成されている場合に、前記第1プロセスジョブの処理条件と前記第2プロセスジョブの処理条件との異同を判断する処理条件判断工程(S132a,S134a,140a)と、前記処理条件判断工程において、前記第1および第2プロセスジョブの処理条件が異なると判断された場合には、前記無効条件情報が解除されるまで、前記第2処理スケジュールの作成を留保する工程(S133)とを含む、請求項1または2に記載の基板処理方法である。
The attribute information generation step may be a step of generating prohibited attribute information associated with the first processing unit (S111). In this case, prohibited attribute information is generated in association with each processing unit. Thereby, it is possible to prohibit the planning of process jobs of different categories for each processing unit.
The invention according to claim 8 is the step (S131) in which the attribute information generation step generates invalid condition information representing a processing condition that becomes invalid for execution of the first process job, and the second process scheduling. A process condition determining step (S132a, S134a, 140a) for determining a difference between the process condition of the first process job and the process condition of the second process job when the invalid condition information is generated; In the processing condition determination step, if it is determined that the processing conditions of the first and second process jobs are different, the creation of the second processing schedule is reserved until the invalid condition information is canceled The substrate processing method according to claim 1, further comprising (S133).

この方法により、無効条件情報によって処理条件が無効とされることによって、第1プロセスジョブと処理条件の異なるプロセスジョブが相次いで実行されることを回避できる。無効条件情報が解除されれば、処理条件の異なるプロセスジョブの計画が許容される。こうして、プロセスジョブ情報の受信順序によらずに、処理条件が同じプロセスジョブを連続させることができる。それにより、処理条件の変更回数を少なくして、生産性を向上することができる。   By this method, it is possible to avoid that process jobs having different processing conditions from the first process job are executed one after another because the processing conditions are invalidated by the invalid condition information. If the invalid condition information is canceled, the planning of process jobs having different processing conditions is permitted. In this way, process jobs having the same processing conditions can be continued regardless of the process job information reception order. Thereby, the number of times of changing the processing conditions can be reduced, and the productivity can be improved.

請求項9記載の発明は、前記第1プロセスジョブ情報が、前記第1基板に対する処理の内容を規定した第1レシピを含み、前記第1処理スケジューリング工程が、前記第1レシピに基づいて、前記第1基板に対する処理を実行する第1処理ユニットを特定する工程(S109a,S129a,137b)を含む、請求項1〜8のいずれか一項に記載の基板処理方法である。   The invention according to claim 9 is characterized in that the first process job information includes a first recipe that defines processing contents for the first substrate, and the first process scheduling step is based on the first recipe. The substrate processing method according to any one of claims 1 to 8, further comprising a step (S109a, S129a, 137b) of specifying a first processing unit that performs processing on the first substrate.

この方法によれば、プロセスジョブ情報は基板処理の内容を規定したレシピを含むので、それに基づいて、プロセスジョブを実行すべき処理ユニットを特定できる。レシピが、第1基板に対する処理を実行すべき処理ユニットを指定する処理ユニット指定情報を含んでいてもよい。この場合、処理ユニット指定情報に基づいて処理ユニットが特定される。また、レシピが、処理ユニット指定情報を含んでいなくてもよい。この場合、処理条件その他の処理内容に基づいて、処理ユニットが特定されればよい。   According to this method, since the process job information includes a recipe that defines the contents of the substrate processing, a processing unit that should execute the process job can be specified based on the recipe. The recipe may include processing unit designation information that designates a processing unit that is to execute processing on the first substrate. In this case, the processing unit is specified based on the processing unit designation information. Further, the recipe may not include the processing unit designation information. In this case, the processing unit may be specified based on the processing conditions and other processing contents.

請求項10記載の発明は、前記第1プロセスジョブ情報が、前記第1基板に対する処理を実行すべき処理ユニットを指定する処理ユニット指定情報を含み、前記第1処理スケジューリング工程が、前記処理ユニット指定情報に基づいて、前記第1基板に対する処理を実行する第1処理ユニットを特定する工程(S109a,S129a,137b)を含む、請求項1〜8のいずれか一項に記載の基板処理方法である。   According to a tenth aspect of the present invention, the first process job information includes processing unit designation information for designating a processing unit to execute processing on the first substrate, and the first processing scheduling step includes the processing unit designation. The substrate processing method according to any one of claims 1 to 8, further comprising a step (S109a, S129a, 137b) of identifying a first processing unit that performs processing on the first substrate based on information. .

この方法では、プロセスジョブ情報が、処理ユニット指定情報を含むので、その処理ユニット指定情報に基づいてプロセスジョブを実行すべき処理ユニットを特定できる。処理ユニット指定情報は、1つの処理ユニットを指定する情報であってもよいし、複数の処理ユニットを指定する情報であってもよい。複数の処理ユニットが指定されている場合には、その複数の処理ユニットのうちのいずれかを選択して、当該プロセスジョブを構成する基板のための処理を計画すればよい。   In this method, since the process job information includes the processing unit designation information, it is possible to specify the processing unit that should execute the process job based on the processing unit designation information. The processing unit designation information may be information for designating one processing unit or information for designating a plurality of processing units. When a plurality of processing units are designated, any one of the plurality of processing units may be selected and a process for a substrate constituting the process job may be planned.

請求項11記載の発明は、基板処理を実行するための処理ユニット(SPIN1〜SPIN12)と、前記処理ユニットを制御する制御ユニット(20)とを含む、基板処理装置である。前記制御ユニットは、外部コンピュータ(24)から、1枚または複数枚の第1基板に対する処理である第1プロセスジョブを規定する第1プロセスジョブ情報を受信する第1受信手段(22,S101;S121)と、外部コンピュータ(24)から、1枚または複数枚の第2基板に対する処理である第2プロセスジョブを規定する第2プロセスジョブ情報を、前記第1プロセスジョブ情報の受信よりも後に受信する第2受信手段(22,S102,S103;S122,S123)と、前記第1プロセスジョブを前記処理ユニットで実行するための第1処理スケジュールを作成する第1処理スケジューリング手段(25,S109;S129,S137)と、前記第1プロセスジョブのカテゴリに基づいて属性情報を生成する属性情報生成手段(25,S111;S131,S139)と、前記第2プロセスジョブ情報および前記属性情報に基づいて、前記第2プロセスジョブを前記処理ユニットで実行するための第2処理スケジュールを作成する第2処理スケジューリング手段(25,S112,S113;S132,S133,S134,S140)と、を含む。   The invention described in claim 11 is a substrate processing apparatus including processing units (SPIN1 to SPIN12) for executing substrate processing and a control unit (20) for controlling the processing unit. The control unit receives, from an external computer (24), first receiving means (22, S101; S121) that receives first process job information that defines a first process job that is a process for one or more first substrates. ) And second process job information defining a second process job that is a process for one or a plurality of second substrates is received after receiving the first process job information from the external computer (24). Second receiving means (22, S102, S103; S122, S123) and first processing scheduling means (25, S109; S129, S1) for creating a first processing schedule for executing the first process job in the processing unit S137) and attribute information generation for generating attribute information based on the category of the first process job Means (25, S111; S131, S139) and a second process for creating a second process schedule for executing the second process job in the processing unit based on the second process job information and the attribute information Scheduling means (25, S112, S113; S132, S133, S134, S140).

請求項12記載の発明は、前記属性情報生成手段が、前記第2処理スケジューリング手段が前記第2処理スケジュールを作成する前に前記属性情報を生成する、請求項11に記載の基板処理装置である。
請求項13記載の発明は、前記属性情報生成手段が、前記第1プロセスジョブのカテゴリとは異なるカテゴリのプロセスジョブの前記処理ユニットにおける実行を禁止する禁止属性情報を生成する、請求項11または12に記載の基板処理装置である。
The invention according to claim 12 is the substrate processing apparatus according to claim 11, wherein the attribute information generating means generates the attribute information before the second process scheduling means creates the second process schedule. .
According to a thirteenth aspect of the present invention, the attribute information generating means generates prohibition attribute information for prohibiting execution of a process job in a category different from the category of the first process job in the processing unit. The substrate processing apparatus according to claim 1.

請求項14記載の発明は、前記第2処理スケジューリング手段が、前記禁止属性情報が生成されている場合に、前記第1プロセスジョブのカテゴリと前記第2プロセスジョブのカテゴリとの異同を判断する手段(25,S112a,S113a;S132a,S134a,140a)と、前記第1および第2プロセスジョブのカテゴリが同じであれば、前記処理ユニットにおいて前記第2プロセスジョブを実行する第2処理スケジュールの作成を許容し、前記第1および第2プロセスジョブのカテゴリが異なれば、前記処理ユニットにおいて前記第2プロセスジョブを実行する第2処理スケジュールの作成を禁止する手段(25,S112a,S113a;S132a,S134a,140a)とを含む、請求項13に記載の基板処理装置である。   According to a fourteenth aspect of the present invention, the second process scheduling unit determines whether the category of the first process job is different from the category of the second process job when the prohibition attribute information is generated. (25, S112a, S113a; S132a, S134a, 140a) and if the categories of the first and second process jobs are the same, a second processing schedule for executing the second process job in the processing unit is created. If the category of the first and second process jobs is different, means for prohibiting creation of a second processing schedule for executing the second process job in the processing unit (25, S112a, S113a; S132a, S134a, 140a). The substrate processing apparatus of claim 13, comprising: That.

請求項15記載の発明は、前記第1プロセスジョブ情報が前記第1基板の種類を表す第1基板種情報を含み、前記第2プロセスジョブ情報が前記第2基板の種類を表す第2基板種情報を含み、前記カテゴリの異同を判断する手段(25,S112a,S113a)は、前記第1基板種情報および前記第2基板種情報に基づいて前記第1および第2基板の種類の異同を判断する、請求項14に記載の基板処理装置である。   According to a fifteenth aspect of the present invention, the first process job information includes first substrate type information representing a type of the first substrate, and the second process job information represents a second substrate type representing the type of the second substrate. The means (25, S112a, S113a) that includes information and determines the difference between the categories determines the difference between the types of the first and second substrates based on the first substrate type information and the second substrate type information. The substrate processing apparatus according to claim 14.

請求項16記載の発明は、前記第1プロセスジョブ情報が前記第1基板に対する処理条件を表す第1処理条件情報を含み、前記第2プロセスジョブ情報が前記第2基板に対する処理条件を表す第2処理条件情報を含み、前記カテゴリの異同を判断する手段(25,S132a,S134a,140a)は、前記第1処理条件情報および前記第2処理条件情報に基づいて前記第1および第2基板に対する処理条件の異同を判断する、請求項14または15に記載の基板処理装置である。   According to a sixteenth aspect of the present invention, the first process job information includes first processing condition information indicating processing conditions for the first substrate, and the second process job information indicates second processing conditions for the second substrate. Means (25, S132a, S134a, 140a) including processing condition information for determining the difference between the categories is a process for the first and second substrates based on the first processing condition information and the second processing condition information. The substrate processing apparatus according to claim 14, wherein differences in conditions are determined.

請求項17記載の発明は、前記第1処理スケジューリング手段が、前記第1基板に対する処理を実行する第1処理ユニットを特定する第1処理ユニット特定手段(25,109a)を含み、前記属性情報生成手段(25,S111)が、前記第1プロセスジョブのカテゴリとは異なるカテゴリのプロセスジョブの前記第1処理ユニットにおける実行を禁止する禁止属性情報を生成し、前記第2処理スケジューリング手段が、前記禁止属性情報が生成されている場合に、前記第1プロセスジョブのカテゴリと前記第2プロセスジョブのカテゴリとの異同を判断するカテゴリ判断手段(25,S112a,S113a)と、前記カテゴリ判断手段の判断結果に基づいて前記第2基板に対する処理を実行する第2処理ユニットを特定する第2処理ユニット特定手段(25,S112b,S113b)とを含み、前記第2処理ユニット特定手段が、前記第1および第2プロセスジョブのカテゴリが同じであれば、前記第1処理ユニットを前記第2処理ユニットとして特定し、前記第1および第2プロセスジョブのカテゴリが異なれば、前記第1処理ユニットとは異なる処理ユニットを前記第2処理ユニットとして特定する、請求項11または12に記載の基板処理装置である。   According to a seventeenth aspect of the present invention, the first process scheduling means includes first process unit specifying means (25, 109a) for specifying a first process unit for executing a process on the first substrate, and generating the attribute information. A means (25, S111) generates prohibition attribute information for prohibiting execution of a process job of a category different from the category of the first process job in the first processing unit, and the second processing scheduling means Category determination means (25, S112a, S113a) for determining the difference between the category of the first process job and the category of the second process job when the attribute information is generated, and the determination result of the category determination means A second processing unit for specifying a second processing unit for performing processing on the second substrate based on If the second processing unit specifying means has the same category of the first and second process jobs, the second processing unit specifying means (25, S112b, S113b) The substrate processing apparatus according to claim 11, wherein the substrate processing apparatus is specified as a unit, and if a category of the first and second process jobs is different, a processing unit different from the first processing unit is specified as the second processing unit. It is.

請求項18記載の発明は、前記属性情報生成手段(25,S131)が、前記第1プロセスジョブの実行のために無効となる処理条件を表す無効条件情報を生成し、前記第2処理スケジューリング手段が、前記無効条件情報が生成されている場合に、前記第1プロセスジョブの処理条件と前記第2プロセスジョブの処理条件との異同を判断する処理条件判断手段(25,S132a,S134a,140a)と、前記処理条件判断手段において、前記第1および第2プロセスジョブの処理条件が異なると判断された場合には、前記無効条件情報が解除されるまで、前記第2処理スケジュールの作成を留保する手段(25,S133)とを含む、請求項11または12に記載の基板処理装置である。   The invention according to claim 18 is characterized in that the attribute information generating means (25, S131) generates invalid condition information indicating a processing condition that becomes invalid for execution of the first process job, and the second process scheduling means. However, when the invalid condition information is generated, the processing condition determining means (25, S132a, S134a, 140a) for determining the difference between the processing condition of the first process job and the processing condition of the second process job When the processing condition determining means determines that the processing conditions of the first and second process jobs are different, the creation of the second processing schedule is reserved until the invalid condition information is canceled. The substrate processing apparatus according to claim 11 or 12, comprising means (25, S133).

請求項19記載の発明は、前記第1プロセスジョブ情報が、前記第1基板に対する処理の内容を規定した第1レシピを含み、前記第1処理スケジューリング手段(25,S109a,S129a,137b)が、前記第1レシピに基づいて、前記第1基板に対する処理を実行する第1処理ユニットを特定する、請求項11〜18のいずれか一項に記載の基板処理装置である。   According to a nineteenth aspect of the present invention, the first process job information includes a first recipe that defines processing contents for the first substrate, and the first process scheduling means (25, S109a, S129a, 137b) The substrate processing apparatus according to claim 11, wherein a first processing unit that performs processing on the first substrate is specified based on the first recipe.

請求項20記載の発明は、前記第1プロセスジョブ情報が、前記第1基板に対する処理を実行すべき処理ユニットを指定する処理ユニット指定情報を含み、前記第1処理スケジューリング手段が(25,S109a,S129a,137b)、前記処理ユニット指定情報に基づいて、前記第1基板に対する処理を実行する第1処理ユニットを特定する、請求項11〜18のいずれか一項に記載の基板処理装置である。   According to a twenty-second aspect of the present invention, the first process job information includes processing unit designating information for designating a processing unit to execute processing on the first substrate, and the first processing scheduling means includes (25, S109a, The substrate processing apparatus according to any one of claims 11 to 18, wherein a first processing unit that performs processing on the first substrate is specified based on the processing unit designation information (S129a, 137b).

図1は、この発明の一実施形態に係る基板処理装置のレイアウトを示す図解的な平面図である。FIG. 1 is a schematic plan view showing a layout of a substrate processing apparatus according to an embodiment of the present invention. 図2は、前記基板処理装置の図解的な側面図である。FIG. 2 is a schematic side view of the substrate processing apparatus. 図3は、前記基板処理装置の電気的構成を説明するためのブロック図である。FIG. 3 is a block diagram for explaining an electrical configuration of the substrate processing apparatus. 図4は、前記基板処理装置に備えられたスケジューリング機能部による処理例を説明するためのフローチャートである。FIG. 4 is a flowchart for explaining a processing example by the scheduling function unit provided in the substrate processing apparatus. 図5は、全体スケジューリング(図4のステップS10)の詳細を説明するためのフローチャートである。FIG. 5 is a flowchart for explaining the details of the overall scheduling (step S10 in FIG. 4). 図6は、製品リソース占有状態設定(図5のステップS24)に関連する処理を説明するためのフローチャートである。FIG. 6 is a flowchart for explaining processing related to the product resource occupation state setting (step S24 in FIG. 5). 図7は、薬液温度リソース占有状態設定(図5のステップS25)に関連する処理を説明するためのフローチャートである。FIG. 7 is a flowchart for explaining processing related to the chemical temperature resource occupation state setting (step S25 in FIG. 5). 図8は、処理ユニットSPIN1を通る経路に対応した仮タイムテーブルの一例を示す。FIG. 8 shows an example of a temporary time table corresponding to a route passing through the processing unit SPIN1. 図9Aは、プロセスジョブPJ1〜PJ4の情報を順に受信してスケジューリングする第1の具体例を説明するためのフローチャートである。FIG. 9A is a flowchart for explaining a first specific example of receiving and scheduling information of process jobs PJ1 to PJ4 in order. 図9Bは、プロセスジョブPJ1〜PJ4の情報を順に受信してスケジューリングする第1の具体例を説明するためのフローチャートである。FIG. 9B is a flowchart for explaining a first specific example of receiving and scheduling information of process jobs PJ1 to PJ4 in order. 図10Aは、前記第1の具体例において、プロセスジョブPJ1,PJ3の各基板に対して作成される仮タイムテーブルを示す。FIG. 10A shows a temporary time table created for each substrate of the process jobs PJ1 and PJ3 in the first specific example. 図10Bは、プロセスジョブPJ2,PJ4の各基板に対して作成される仮タイムテーブルを示す。FIG. 10B shows a temporary time table created for each substrate of the process jobs PJ2 and PJ4. 図11Aは、最初に受信したプロセスジョブPJ1の最初の基板に対応する仮タイムテーブルを構成する全てのブロックを配置した例を示す。FIG. 11A shows an example in which all the blocks constituting the temporary time table corresponding to the first substrate of the process job PJ1 received first are arranged. 図11Bは、「SPIN1製品」リソースを占有状態として無効化した状態を示す。FIG. 11B shows a state in which the “SPIN1 product” resource is invalidated as an occupation state. 図12は、プロセスジョブPJ2のスケジューリング例を示す。FIG. 12 shows a scheduling example of the process job PJ2. 図13Aは、プロセスジョブPJ3の仮タイムテーブルを構成するブロックを全て配置した例を示す。FIG. 13A shows an example in which all the blocks constituting the temporary time table of the process job PJ3 are arranged. 図13Bは、「SPIN1製品」リソースの占有状態を解除した状態を示す。FIG. 13B shows a state where the occupation state of the “SPIN1 product” resource is released. 図14は、プロセスジョブPJ4のスケジューリング例を示す。FIG. 14 shows a scheduling example of the process job PJ4. 図15Aは、プロセスジョブPJ1〜PJ4の情報を順に受信してスケジューリングする第2の具体例を説明するためのフローチャートである。FIG. 15A is a flowchart for explaining a second specific example of receiving and scheduling information of process jobs PJ1 to PJ4 in order. 図15Bは、プロセスジョブPJ1〜PJ4の情報を順に受信してスケジューリングする第2の具体例を説明するためのフローチャートである。FIG. 15B is a flowchart for explaining a second specific example of receiving and scheduling information of process jobs PJ1 to PJ4 in order. 図15Cは、プロセスジョブPJ1〜PJ4の情報を順に受信してスケジューリングする第2の具体例を説明するためのフローチャートである。FIG. 15C is a flowchart for explaining a second specific example of receiving and scheduling information of process jobs PJ1 to PJ4 in order. 図16Aは、前記第2の具体例において、プロセスジョブPJ1,PJ3の各基板に対して作成される仮タイムテーブルを示す。FIG. 16A shows a temporary time table created for each substrate of the process jobs PJ1 and PJ3 in the second specific example. 図16Bは、プロセスジョブPJ2,PJ4の各基板に対して作成される仮タイムテーブルを示す。FIG. 16B shows a temporary time table created for each substrate of the process jobs PJ2 and PJ4. 図17は、最初に受信したプロセスジョブPJ1の最初の基板に対応する仮タイムテーブルを構成する全てのブロックを配置した例を示す。FIG. 17 shows an example in which all the blocks constituting the temporary time table corresponding to the first substrate of the process job PJ1 received first are arranged. 図18は、「CC1薬液80℃」リソースを占有状態として無効化した状態を示す。FIG. 18 shows a state in which the “CC1 chemical 80 ° C.” resource is invalidated as an occupation state. 図19は、プロセスジョブPJ2のスケジューリングを留保した状態で、プロセスジョブPJ3に対するスケジューリングを行った状態を示す。FIG. 19 shows a state in which scheduling for the process job PJ3 is performed while the scheduling of the process job PJ2 is reserved. 図20は、「CC1薬液80℃」リソースの占有状態を解除した状態を示す。FIG. 20 shows a state in which the occupation state of the “CC1 chemical 80 ° C.” resource is released. 図21は、プロセスジョブPJ3の次に液交換(温度調節)ブロックを配置し、さらにプロセスジョブPJ2をスケジューリングした状態を示す。FIG. 21 shows a state in which a liquid replacement (temperature adjustment) block is arranged next to the process job PJ3 and the process job PJ2 is scheduled. 図22は、プロセスジョブPJ2で使用されない「CC1薬液60℃」リソースを占有状態として無効化した状態を示す。FIG. 22 shows a state in which the “CC1 chemical 60 ° C.” resource that is not used in the process job PJ2 is invalidated as an occupied state. 図23は、プロセスジョブPJ4のスケジューリング例を示す。FIG. 23 shows a scheduling example of the process job PJ4. 図24は、「CC1薬液60℃」リソースの占有状態を解除した状態を示す。FIG. 24 shows a state where the occupation state of the “CC1 chemical 60 ° C.” resource is released. 図25は、前記第2の具体例の効果を説明するための図である。FIG. 25 is a diagram for explaining the effect of the second specific example.

以下では、この発明の実施の形態を、添付図面を参照して詳細に説明する。
図1は、この発明の一実施形態に係る基板処理装置のレイアウトを示す図解的な平面図であり、図2はその図解的な側面図である。この基板処理装置は、インデクサセクション1と、処理セクション2と、薬液キャビネットCC1とを含む。処理セクション2は、インデクサセクション1との間で基板Wを受け渡しするための受け渡しユニットPASSを備えている。インデクサセクション1は、未処理の基板Wを受け渡しユニットPASSに渡し、受け渡しユニットPASSから処理済みの基板Wを受け取る。処理セクション2は、受け渡しユニットPASSから未処理の基板Wを受け取って、その基板Wに対して、処理剤(処理液または処理ガス)を用いた処理、紫外線等の電磁波を用いた処理、物理洗浄処理(ブラシ洗浄、スプレーノズル洗浄等)などの各種の処理を施す。そして、処理セクション2は、処理後の基板Wを受け渡しユニットPASSに渡す。
Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
FIG. 1 is a schematic plan view showing a layout of a substrate processing apparatus according to an embodiment of the present invention, and FIG. 2 is a schematic side view thereof. The substrate processing apparatus includes an indexer section 1, a processing section 2, and a chemical liquid cabinet CC1. The processing section 2 includes a delivery unit PASS for delivering the substrate W to and from the indexer section 1. The indexer section 1 delivers the unprocessed substrate W to the delivery unit PASS and receives the processed substrate W from the delivery unit PASS. The processing section 2 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 2 delivers the processed substrate W to the delivery unit PASS.

インデクサセクション1は、複数のステージ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が互いに間隔を開けて鉛直方向に積層された状態となる。
The indexer section 1 includes a plurality of stages ST1 to ST4 and an indexer robot IR.
Stages ST <b> 1 to ST <b> 4 are substrate container holders that can respectively hold a substrate container C that houses 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. For example, when the substrate container C is placed on the stages ST <b> 1 to ST <b> 4, the substrate container C is in a state where a plurality of horizontal substrates W are stacked in the vertical direction with a space between each other.

インデクサロボットIRは、たとえば、基台部6と、多関節アーム7と、一対のハンド8A,8Bとを含む。基台部6は、たとえば、当該基板処理装置のフレームに固定されている。多関節アーム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を紙面に平行な方向(水平方向)にずらして描いてある。   The indexer robot IR includes, for example, a base unit 6, a multi-joint arm 7, and a pair of hands 8A and 8B. The base unit 6 is fixed to the frame of the substrate processing apparatus, 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. In other words, 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.

この構成により、インデクサロボットIRは、いずれかのステージST1〜ST4に保持された基板収容器Cから一枚の未処理基板Wをハンド8Aで搬出して受け渡しユニットPASSに渡すように動作する。さらに、インデクサロボットIRは、受け渡しユニットPASSから一枚の処理済み基板Wをハンド8Bで受け取って、いずれかのステージST1〜ST4に保持された基板収容器Cに収容するように動作する。   With this configuration, the indexer robot IR operates to unload a single 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 delivery 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.

処理セクション2は、複数(この実施形態では12個)の処理ユニットSPIN1〜SPIN12と、主搬送ロボットCRと、前述の受け渡しユニットPASSとを含む。
処理ユニットSPIN1〜SPIN12は、この実施形態では、立体的に配置されている。より具体的には、三層構造をなすように複数の処理ユニットSPIN1〜SPIN12が配置されており、各層部分に4つの処理ユニットが配置されている。すなわち、第1層部分に4つの処理ユニットSPIN1,SPIN4,SPIN7,SPIN10が配置され、第2層部分に別の4つの処理ユニットSPIN2,SPIN5,SPIN8,SPIN11が配置され、第3層部分にさらに別の処理ユニットSPIN3,SPIN6,SPIN9,SPIN12が配置されている。
The processing section 2 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-layer structure, and four processing units are arranged in each layer portion. That is, four processing units SPIN1, SPIN4, SPIN7, and SPIN10 are arranged in the first layer portion, another four processing units SPIN2, SPIN5, SPIN8, and SPIN11 are arranged in the second layer portion, and further in the third layer portion. Another processing unit SPIN3, SPIN6, SPIN9, SPIN12 is arranged.

さらに具体的には、平面視において処理セクション2の中央に主搬送ロボット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が取り囲まれている。   More specifically, the main transfer robot CR is arranged at the center of the processing section 2 in plan view, and the transfer 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 other three processing units SPIN4 to SPIN6 are stacked are arranged so as to face each other across the delivery unit PASS. Has been. 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. Similarly, 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.

主搬送ロボットCRは、たとえば、基台部11と、多関節アーム12と、一対のハンド13A,13Bとを含む。基台部11は、たとえば、当該基板処理装置のフレームに固定されている。多関節アーム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を紙面に平行な方向(水平方向)にずらして描いてある。   The main transfer robot CR includes, for example, a base part 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, 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. In other words, 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. Further, 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.

この構成により、主搬送ロボットCRは、受け渡しユニットPASSから未処理の一枚の基板Wをハンド13Aで受け取り、その未処理の基板Wをいずれかの処理ユニットSPIN1〜SPIN12に搬入する。また、主搬送ロボットCRは、処理ユニットSPIN1〜SPIN12で処理された処理済みの基板Wをハンド13Bで受け取り、その基板Wを受け渡しユニットPASSに渡す。   With this configuration, the main transport 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.

処理ユニットSPIN1〜SPIN12は、基板Wを1枚ずつ処理する枚葉型の処理ユニットである。処理ユニットSPIN1〜SPIN12は、たとえば、1枚の基板Wを水平姿勢で保持して回転させるスピンチャック15と、スピンチャック15に対して処理液(薬液またはリンス液)を供給する処理液ノズル16とを処理室17(チャンバ)内に備えた、回転液処理ユニットであってもよい。図2では、処理ユニットSPIN3についてのみ、その内部構成を示し、他の処理ユニットの内部構成の図示を省いてある。   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 include, for example, a spin chuck 15 that holds and rotates a single substrate W in a horizontal posture, and a processing liquid nozzle 16 that supplies a processing liquid (chemical liquid or rinsing liquid) to the spin chuck 15. May be a rotating liquid processing unit provided in the processing chamber 17 (chamber). In FIG. 2, only the processing unit SPIN3 is shown as its internal configuration, and the internal configuration of other processing units is not shown.

薬液キャビネットCC1は、処理ユニットSPIN1〜SPIN12に処理液としての薬液を供給する処理液供給ユニットの一例である。この実施形態では、薬液キャビネットCC1は、全ての処理ユニットSPIN1〜SPIN12に共通に薬液を供給するように構成されている。ただし、複数の薬液キャビネットを設けて、各薬液キャビネットが別の一つまたは複数の処理ユニットに対して薬液をそれぞれ供給する構成としてもよい。薬液キャビネットCC1は、薬液を貯留するタンク3と、タンク3内の薬液の温度を調節する温度調節ユニット4と、タンク3内の薬液を処理ユニットSPIN1〜SPIN12に送り出すポンプ5とを備えている。   The chemical liquid cabinet CC1 is an example of a processing liquid supply unit that supplies a chemical liquid as a processing liquid to the processing units SPIN1 to SPIN12. In this embodiment, the chemical liquid cabinet CC1 is configured to supply the chemical liquid commonly to all the processing units SPIN1 to SPIN12. However, it is good also as a structure which provides a some chemical | medical solution cabinet and each chemical | medical solution cabinet supplies a chemical | medical solution with respect to another one or several processing unit, respectively. The chemical liquid cabinet CC1 includes a tank 3 that stores the chemical liquid, a temperature adjustment unit 4 that adjusts the temperature of the chemical liquid in the tank 3, and a pump 5 that sends the chemical liquid in the tank 3 to the processing units SPIN1 to SPIN12.

図3は、前記基板処理装置の電気的構成を説明するためのブロック図である。基板処理装置は、制御ユニットとしてのコンピュータ20を備えている。コンピュータ20は、処理ユニットSPIN1〜SPIN12、薬液キャビネットCC1、主搬送ロボットCRおよびインデクサロボットを制御する。コンピュータ20は、パーソナルコンピュータ(FAパソコン)の形態を有していてもよい。コンピュータ20は、制御部21と、出入力部22と、記憶部23とを備えている。制御部21は、CPU等の演算ユニットを含む。出入力部22は、表示ユニット等の出力機器と、キーボード、ポインティングデバイス、タッチパネル等の入力機器とを含む。さらに、出入力部22は、外部コンピュータであるホストコンピュータ24との通信のための通信モジュールを含む。記憶部23は、固体メモリデバイス、ハードディスクドライブ等の記憶装置を含む。   FIG. 3 is a block diagram for explaining an electrical configuration of the substrate processing apparatus. The substrate processing apparatus includes a computer 20 as a control unit. The computer 20 controls the processing units SPIN1 to SPIN12, the chemical liquid cabinet CC1, the main transfer robot CR, and the indexer robot. The computer 20 may have the form of a personal computer (FA personal computer). The computer 20 includes a control unit 21, an input / output unit 22, and a storage unit 23. The control unit 21 includes an arithmetic unit such as a CPU. The input / output unit 22 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 22 includes a communication module for communication with a host computer 24 which is an external computer. The storage unit 23 includes a storage device such as a solid-state memory device or a hard disk drive.

制御部21は、スケジューリング機能部25と、処理実行指示部26とを含む。スケジューリング機能部25は、基板Wを基板収容器Cから搬出し、処理ユニットSPIN1〜SPIN12のうちの一つ以上で処理した後、基板収容器Cに収容するために、基板処理装置のリソースを時系列に従って作動させるための計画(スケジュール)を作成する。処理実行指示部26は、スケジューリング機能部25によって作成されたスケジュールに従って、基板処理装置のリソースを作動させる。リソースとは、基板処理装置に備えられ、基板の処理のために用いられる各種のユニットであり、具体的には、処理ユニットSPIN1〜SPIN12、インデクサロボットIR、主搬送ロボットCR、薬液キャビネットCC1およびそれらの構成要素を含む。   The control unit 21 includes a scheduling function unit 25 and a process execution instruction unit 26. The scheduling function unit 25 unloads the substrate W from the substrate container C, processes it in one or more of the processing units SPIN1 to SPIN12, and then allocates the resources of the substrate processing apparatus to store the substrate W in the substrate container C. Create a plan (schedule) to operate according to the sequence. The process execution instruction unit 26 operates the resources of the substrate processing apparatus in accordance with the schedule created by the scheduling function unit 25. The resources are various units provided in the substrate processing apparatus and used for processing the substrate. Specifically, the processing units SPIN1 to SPIN12, the indexer robot IR, the main transport robot CR, the chemical liquid cabinet CC1, and the like. Of components.

記憶部23は、制御部21が実行するプログラム30と、ホストコンピュータ24から受信したプロセスジョブデータ(プロセスジョブ情報)40と、スケジューリング機能部25によって作成されたスケジュールデータ50とを含む各種データ等を記憶するように構成されている。
記憶部23に記憶されたプログラム30は、制御部21をスケジューリング機能部25として作動させるためのスケジュール作成プログラム31と、制御部21を処理実行指示部26として作動させるための処理実行プログラム32とを含む。
The storage unit 23 stores various data including the program 30 executed by the control unit 21, process job data (process job information) 40 received from the host computer 24, and schedule data 50 created by the scheduling function unit 25. It is configured to memorize.
The program 30 stored in the storage unit 23 includes a schedule creation program 31 for operating the control unit 21 as the scheduling function unit 25 and a process execution program 32 for operating the control unit 21 as the process execution instruction unit 26. Including.

プロセスジョブデータ40は、各基板Wに付与されたプロセスジョブ(PJ)符号と、プロセスジョブ符号に対応付けられたレシピとを含む。
レシピは、基板処理内容を定義したデータであり、基板処理条件および基板処理手順を含む。より具体的には、基板種情報、並行処理ユニット情報、使用処理液情報、処理時間情報等を含む。基板種情報は、処理対象の基板の種類を表す情報である。基板の種類の具体例は、製品を作り込むために使用される製品基板、処理ユニットのメンテナンス等のために使用され、製品の製造には使用されない非製品基板などである。並行処理ユニット情報とは、使用可能な処理ユニットを指定する処理ユニット指定情報であり、指定された処理ユニットによる並行処理が可能であることを表す。換言すれば、指定処理ユニットのうちの一つが使用できないときには、それ以外の指定処理ユニットによる代替が可能であることを表す。「使用できないとき」とは、当該処理ユニットが別の基板Wの処理のために使用中であるとき、当該処理ユニットが故障中であるとき、オペレータが当該処理ユニットで基板Wの処理をさせたくないと考えているとき、などである。使用処理液情報とは、基板処理のために用いる処理液の種類を指定する情報である。具体例は、薬液の種類および薬液の温度を指定する情報である。処理時間情報とは、処理液を供給する継続時間などである。使用処理液情報および処理時間情報は、処理条件情報の例である。
The process job data 40 includes a process job (PJ) code assigned to each substrate W and a recipe associated with the process job code.
The recipe is data defining the contents of substrate processing, and includes substrate processing conditions and substrate processing procedures. More specifically, it includes substrate type information, parallel processing unit information, used processing liquid information, processing time information, and the like. The substrate type information is information indicating the type of substrate to be processed. Specific examples of the types of substrates include product substrates used for manufacturing products, non-product substrates that are used for maintenance of processing units, etc., and are not used for manufacturing products. The parallel processing unit information is processing unit designation information that designates an available processing unit, and represents that parallel processing by the designated 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. When you think it is not. The used processing liquid information is information that designates the type of processing liquid used for substrate processing. A specific example is information specifying the type of chemical and the temperature of the chemical. The processing time information is a continuation time for supplying the processing liquid. The used processing liquid information and the processing time information are examples of processing condition information.

プロセスジョブとは、共通の処理が施されるべき1枚または複数枚の基板Wに対して行われる当該処理をいう。プロセスジョブ符号とは、プロセスジョブを識別するための識別情報(基板群識別情報)である。すなわち、共通のプロセスジョブ符号が付与された複数枚の基板Wには、当該プロセスジョブ符号に対応付けられたレシピによる共通の処理が施される。ただし、異なるプロセスジョブ符号に対応する基板処理内容(レシピ)が同じである場合もあり得る。たとえば、処理順序(基板収容器Cからの払い出し順序)が連続している複数枚の基板Wに対して共通の処理が施されるとき、それらの複数枚の基板Wに対して共通のプロセスジョブ符号が付与される。   A process job is a process performed on one or a plurality of substrates W to be subjected to a common process. The process job code is identification information (substrate group identification information) for identifying a process job. In other words, 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. However, the substrate 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) is continuous, a common process job is performed on the plurality of substrates W. A sign is given.

制御部21は、各基板Wに対するプロセスジョブデータを、ホストコンピュータ24から出入力部22を介して取得し、記憶部23に記憶させる。プロセスジョブデータの取得および記憶は、各基板Wに対するスケジューリングが実行されるよりも前に行われればよい。たとえば、基板収容器CがステージST1〜ST4に保持された直後に、ホストコンピュータ24から制御部21に当該基板収容器Cに収容された基板Wに対応するプロセスジョブデータが与えられてもよい。スケジューリング機能部25は、記憶部23に格納されたプロセスジョブデータ40に基づいて各プロセスジョブを計画し、その計画を表すスケジュールデータ50を記憶部23に格納する。処理実行指示部26は、記憶部23に格納されたスケジュールデータ50に基づいて、インデクサロボットIR、主搬送ロボットCR、処理ユニットSPIN1〜SPIN12、および薬液キャビネットCC1を制御することにより、基板処理装置にプロセスジョブを実行させる。   The control unit 21 acquires process job data for each substrate W from the host computer 24 via the input / output unit 22 and stores it in the storage unit 23. The acquisition and storage of the process job data may be performed before the scheduling for each substrate W is executed. For example, immediately after the substrate container C is held on the stages ST1 to ST4, the process data corresponding to the substrate W accommodated in the substrate container C may be given from the host computer 24 to the control unit 21. The scheduling function unit 25 plans each process job based on the process job data 40 stored in the storage unit 23, and stores schedule data 50 representing the plan in the storage unit 23. The process execution instructing unit 26 controls the indexer robot IR, the main transfer robot CR, the processing units SPIN1 to SPIN12, and the chemical liquid cabinet CC1 based on the schedule data 50 stored in the storage unit 23, thereby allowing the substrate processing apparatus to Execute a process job.

図4〜図7は、スケジューリング機能部25による処理例を説明するためのフローチャートである。より具体的には、制御部21(コンピュータ20)がスケジュール作成プログラム31を実行することによって、所定の制御周期で繰り返し行われる処理が表されている。換言すれば、スケジュール作成プログラム31には、図4〜図7に示す処理をコンピュータに実行させるようにステップ群が組み込まれている。   4 to 7 are flowcharts for explaining processing examples by the scheduling function unit 25. More specifically, a process that is repeatedly performed at a predetermined control cycle when the control unit 21 (computer 20) executes the schedule creation program 31 is shown. In other words, the schedule creation program 31 includes a group of steps so that the computer can execute the processes shown in FIGS.

ホストコンピュータ24は、プロセスジョブデータを制御部21に与えて、そのプロセスジョブデータによって定義されるプロセスジョブの開始を指示する。制御部21は、そのプロセスジョブデータを受信して記憶部23に格納する(ステップS1,S2)。そのプロセスジョブデータを用いて、スケジューリング機能部25は、プロセスジョブを実行するためのスケジューリングを行う。   The host computer 24 gives the process job data to the control unit 21 and instructs the start of the process job defined by the process job data. The control unit 21 receives the process job data and stores it in the storage unit 23 (steps S1 and S2). Using the process job data, the scheduling function unit 25 performs scheduling for executing the process job.

スケジューリング機能部25は、まず、各基板を処理するための仮タイムテーブルを作成する(ステップS3)。たとえば、プロセスジョブデータにおいて或るプロセスジョブ符号に対応付けられたレシピが、処理ユニットSPIN1〜SPIN12の並行処理を指定しているとする。すなわち、当該レシピに従う基板処理が、12個の処理ユニットSPIN1〜SPIN12のいずれにおいても実行可能である場合を考える。この場合、当該プロセスジョブ符号が付与された基板Wが処理を受けるときに通る経路は、12通りである。すなわち、その基板Wの処理のために選択し得る経路は、処理ユニットSPIN1〜SPIN12のいずれかを通る12個の経路である。そこで、スケジューリング機能部25は、その12個の経路に対応した仮タイムテーブルを各基板に対して作成する。   The scheduling function unit 25 first creates a temporary time table for processing each substrate (step S3). For example, it is assumed that a recipe associated with a certain process job code in the process job data 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 25 creates a temporary time table corresponding to the 12 routes for each substrate.

処理ユニットSPIN1を通る経路に対応した仮タイムテーブルを図8に示す。この仮タイムテーブルは、インデクサロボットIRによる基板収容器Cからの基板Wの搬出(Get)を表すブロックと、インデクサロボットIRによる当該基板Wの受け渡しユニットPASSへの搬入(Put)を表すブロックと、主搬送ロボットCRによる受け渡しユニットPASSからの当該基板Wの搬出(Get)を表すブロックと、主搬送ロボットCRによる当該基板Wの処理ユニットSPIN1への搬入(Put)を表すブロックと、処理ユニットSPIN1による当該基板Wに対する処理を表す処理ブロックと、主搬送ロボットCRによる処理ユニットSPIN1からの処理済みの基板Wの搬出(Get)を表すブロックと、主搬送ロボットCRによる当該基板Wの受け渡しユニットPASSへの搬入(Put)を表すブロックと、インデクサロボットIRによる当該基板Wの受け渡しユニットPASSからの搬出(Get)を表すブロックと、インデクサロボットIRによる当該基板Wの基板収容器Cへの搬入(Put)を表すブロックとを含む。スケジューリング機能部25は、これらのブロックを時間軸上で重なり合いのないように順番に配置することによって、仮タイムテーブルを作成する。さらに、図8の仮タイムテーブルは、処理ブロックが配置された期間中において、薬液キャビネットCC1からの薬液の供給を表す薬液供給ブロックを含む。   FIG. 8 shows a temporary time table corresponding to the route passing through the processing unit SPIN1. The temporary time table includes a block that represents unloading (Get) of the substrate W from the substrate container C by the indexer robot IR, and a block that represents unloading (Put) of the substrate W to the delivery unit PASS by the indexer robot IR. A block representing the unloading (Get) of the substrate W from the delivery unit PASS by the main transfer robot CR, a block representing the loading (Put) of the substrate W to the processing unit SPIN1 by the main transfer robot CR, and the processing unit SPIN1 A processing block representing processing on the substrate W, a block representing unloading (Get) of the processed substrate W from the processing unit SPIN1 by the main transport robot CR, and a transfer unit PASS of the substrate W by the main transport robot CR to the transfer unit PASS. Block that represents the carry-in (put) Comprising the the blocks representing unloaded from the transfer unit PASS of the substrate W by the indexer robot IR (The Get), the blocks representing the carry of the substrate container C of the substrate W by the indexer robot IR (Put). The scheduling function unit 25 creates a temporary time table by arranging these blocks in order so as not to overlap on the time axis. Further, the provisional time table of FIG. 8 includes a chemical solution supply block representing supply of the chemical solution from the chemical solution cabinet CC1 during the period in which the processing block is arranged.

スケジューリング機能部25は、同じ基板Wに対して、処理ユニットSPIN2〜SPIN12をそれぞれ通る経路に対応した同様の仮タイムテーブル(処理ブロックを処理ユニットSPIN2〜SPIN12にそれぞれ配置した仮タイムテーブル)を作成する。こうして、一枚の基板Wに対して合計12経路分の仮タイムテーブルが作成される。
一方、図4に示すように、スケジューリング機能部25は、プロセスジョブデータに基づいて、プロセスジョブのカテゴリを判別する(ステップS4)。カテゴリとは、処理の種別である。より具体的には、処理対象の基板の種類は、カテゴリの一つの例である。カテゴリの他の例は、基板の処理条件である。より具体的には、プロセスジョブデータ中のレシピで指定された処理液(とくに薬液)の種類、処理液の温度などが基板の処理条件の例である。
The scheduling function unit 25 creates the same temporary time table corresponding to the paths passing through the processing units SPIN2 to SPIN12 (temporary time table in which processing blocks are arranged in the processing units SPIN2 to SPIN12) for the same substrate W, respectively. . In this way, a temporary time table for a total of 12 paths is created for one substrate W.
On the other hand, as shown in FIG. 4, the scheduling function unit 25 determines the category of the process job based on the process job data (step S4). A category is a type of processing. More specifically, the type of substrate to be processed is an example of a category. Another example of the category is substrate processing conditions. More specifically, the types of processing liquids (particularly chemicals) designated by the recipe in the process job data, the temperature of the processing liquid, etc. are examples of substrate processing conditions.

スケジューリング機能部25は、プロセスジョブのカテゴリを判別して、必要に応じて、仮想リソースの計画を追加する(ステップS5,S6)。仮想リソースとは、基板処理装置に実際に備えられたユニットに対応する実リソースではなく、制御の都合上、仮想的に設けられるリソースである。スケジューリング機能部25は、必要に応じて仮想リソースを追加して(ステップS5,S6)、実リソースおよび仮想リソースを利用したスケジュールを作成する。   The scheduling function unit 25 determines the category of the process job and adds a virtual resource plan as necessary (steps S5 and S6). The virtual resource is not a real resource corresponding to a unit actually provided in the substrate processing apparatus, but a resource provided virtually for convenience of control. The scheduling function unit 25 adds virtual resources as necessary (steps S5 and S6), and creates a schedule using real resources and virtual resources.

仮想リソースの一例は、製品リソースである。図8には、処理ユニットSPIN1〜SPIN12に対応した製品リソースとして、「SPIN1製品」リソース、「SPIN2製品」リソース、…、「SPIN12製品」リソースを示す。製品リソースとは、処理ユニットでの処理対象が製品基板であるときに用いられる仮想的なユニットを表す仮想リソースである。具体的には、製品基板を処理するための処理ブロックと同じ期間に、当該処理ブロックが計画される処理ユニットに対して、製品リソースを占有する製品処理ブロックが配置される(図8参照)。非製品基板に対しては、製品リソースを利用するためのブロックは配置されない。したがって、或る処理ユニットの製品リソースが占有されている期間であっても、当該処理ユニットの同期間に対して製品処理ブロックが配置されていなければ、非製品基板の処理を計画することができる。   An example of a virtual resource is a product resource. FIG. 8 shows “SPIN1 product” resource, “SPIN2 product” resource,..., “SPIN12 product” resource as product resources corresponding to the processing units SPIN1 to SPIN12. The product resource is a virtual resource that represents a virtual unit used when a processing target in the processing unit is a product substrate. Specifically, in the same period as the processing block for processing the product substrate, a product processing block that occupies product resources is arranged for the processing unit in which the processing block is planned (see FIG. 8). Blocks for using product resources are not arranged for non-product substrates. Therefore, even if a product resource of a certain processing unit is occupied, processing of a non-product substrate can be planned if no product processing block is arranged for the synchronization of the processing unit. .

仮想リソースの他の例は、処理条件リソースである。処理条件リソースとは、処理ユニットでの使用可能な処理条件に対応する仮想的なユニットを表す仮想リソースである。処理条件リソースの一つの例は、使用薬液の温度を表す薬液温度リソースである。図8には、薬液キャビネットCC1からの60℃の薬液供給を表す薬液温度リソースとしての「CC1薬液60℃」リソースと、薬液キャビネットCC1からの80℃の薬液供給を表す薬液温度リソースとしての「CC1薬液80℃」リソースとを示す。たとえば、プロセスジョブのレシピが、薬液キャビネットCC1からの60℃の薬液供給を指定しているとき、薬液キャビネットCC1のリソース(実リソース)の使用とともに、60℃の薬液の使用を表す薬液温度リソースを使う計画が行われる。すなわち、処理ブロックが配置される期間の一部に薬液キャビネットCC1の使用を表す薬液供給ブロックが配置され、その薬液供給ブロックと同じ期間に、「CC1薬液60℃」リソースに対して60℃の薬液の使用を表す「60℃薬液」ブロックが配置される。   Another example of the virtual resource is a processing condition resource. The processing condition resource is a virtual resource that represents a virtual unit corresponding to a processing condition that can be used in the processing unit. One example of the processing condition resource is a chemical temperature resource that represents the temperature of the chemical used. In FIG. 8, a “CC1 chemical 60 ° C.” resource as a chemical temperature resource representing a 60 ° C. chemical supply from the chemical cabinet CC 1 and a “CC1” as a chemical temperature resource representing an 80 ° C. chemical supply from the chemical cabinet CC 1 are shown. “Chemical solution 80 ° C.” resource. For example, when the recipe of the process job specifies the supply of the chemical solution at 60 ° C. from the chemical solution cabinet CC1, the chemical temperature resource indicating the use of the chemical solution at 60 ° C. is used together with the use of the resource (actual resource) of the chemical solution cabinet CC1. Plan to use is done. That is, a chemical solution supply block representing the use of the chemical solution cabinet CC1 is arranged in a part of a period in which the processing block is arranged, and a chemical solution of 60 ° C. with respect to the “CC1 chemical solution 60 ° C.” resource in the same period as the chemical solution supply block A “60 ° C. chemical solution” block representing the use of is placed.

図8には仮想リソースとして、「SPIN1製品」リソース〜「SPIN12製品」リソース、「CC1薬液60℃」リソース、「CC1薬液80℃」リソースを示してあるが、これらは必要時に追加されれば良い。すなわち、仮タイムテーブルは、不要な仮想リソースの記述を含む必要はない。
薬液キャビネットCC1が同時に異なる2つ以上の温度の薬液供給が不可能な構成の場合には、同時には1種類の温度の薬液供給のみが計画可能である。異なる温度の薬液を供給するためには、タンク3(図2参照)内の薬液の温度を変更するための調節が必要である。したがって、異なる温度の薬液供給は、異なる時間に計画される必要がある。より具体的には、薬液温度の変更に要する充分な時間を空けた異なる期間に計画される必要がある。したがって、或る温度の薬液の使用が計画されている期間には、他の温度の薬液を使うプロセスジョブの計画は禁止される。この実施形態では、全ての処理ユニットSPIN1〜SPIN12に対して、一つの薬液キャビネットCC1からの薬液が供給されるように構成されており、かつ薬液キャビネットCC1は同時には一種類のみの温度の薬液供給が可能である。そこで、或る温度の薬液の使用がいずれかの処理ユニットに対して計画されると、いずれの処理ユニットにおいても、他の温度の薬液使用の計画は禁止される。
FIG. 8 shows “SPIN1 product” resource to “SPIN12 product” resource, “CC1 chemical solution 60 ° C.” resource, and “CC1 chemical solution 80 ° C.” resource as virtual resources, but these may be added when necessary. . That is, the temporary time table does not need to include a description of unnecessary virtual resources.
In the case where the chemical liquid cabinet CC1 has a configuration in which chemical liquids at two or more different temperatures cannot be supplied at the same time, only one type of chemical liquid supply can be planned at the same time. In order to supply chemical liquids having different temperatures, adjustment for changing the temperature of the chemical liquid in the tank 3 (see FIG. 2) is necessary. Therefore, different temperature chemical supply needs to be planned at different times. More specifically, it is necessary to plan for different periods with sufficient time required for changing the chemical temperature. Therefore, during the period when the use of a chemical solution at a certain temperature is planned, the planning of a process job that uses a chemical solution at another temperature is prohibited. In this embodiment, the chemical liquid is supplied from one chemical liquid cabinet CC1 to all the processing units SPIN1 to SPIN12, and the chemical liquid cabinet CC1 supplies chemical liquids of only one type at the same time. Is possible. Therefore, if the use of a chemical solution at a certain temperature is planned for any of the processing units, the use of the chemical solution at any other temperature is prohibited in any of the processing units.

薬液キャビネットCC1は、所定の複数個の処理ユニットへと同時に薬液を供給できるように構成されていてもよい。この場合には、重複した期間に異なる処理ユニットで同じ温度の同種薬液を使用する計画を立てることが許容される。
作成された仮タイムテーブルは、スケジュールデータ50の一部として記憶部23に格納される(図4のステップS7)。同様の仮タイムテーブルが同じプロセスジョブ符号が付与された基板Wの全てに対応して作成される(ステップS8)。仮タイムテーブルの作成段階では、別の基板Wに関するブロックとの干渉(時間軸上での重なり合い)は考慮されない。
The chemical solution cabinet CC1 may be configured to supply the chemical solution to a plurality of predetermined processing units at the same time. In this case, it is permissible to make a plan to use the same chemical solution at the same temperature in different processing units in the overlapping period.
The created temporary time table is stored in the storage unit 23 as part of the schedule data 50 (step S7 in FIG. 4). A similar temporary time table is created corresponding to all the substrates W to which the same process job code is assigned (step S8). In the stage of creating the temporary timetable, interference with the block relating to another substrate W (overlap on the time axis) is not considered.

受信済みの全てのプロセスジョブに対して仮タイムテーブルの作成を終えると(ステップS9:YES)、スケジューリング機能部25は、全体スケジューリングを実行する(ステップS10)。全体スケジューリングとは、作成された仮タイムテーブルのブロックを、各リソースの他のブロックと重複しないように、時間軸上に配置することである。全体スケジューリングによって作成されたスケジュールデータは記憶部23に格納される(ステップS11)
図5は、全体スケジューリング(図4のステップS10)の詳細を説明するためのフローチャートである。スケジューリング機能部25は、基板Wの仮タイムテーブルを記憶部23から読み出して、その仮タイムテーブルを構成しているブロックを時間軸上に配置していく。
When the provisional time table has been created for all the received process jobs (step S9: YES), the scheduling function unit 25 executes overall scheduling (step S10). The overall scheduling is to arrange the created temporary time table block on the time axis so as not to overlap with other blocks of each resource. The schedule data created by the overall scheduling is stored in the storage unit 23 (step S11).
FIG. 5 is a flowchart for explaining the details of the overall scheduling (step S10 in FIG. 4). The scheduling function unit 25 reads the temporary time table of the substrate W from the storage unit 23 and arranges the blocks constituting the temporary time table on the time axis.

さらに具体的には、スケジューリング機能部25は、受信時間が最も早い未計画のプロセスジョブの1枚の基板Wに対応する仮タイムテーブルを読み出す(ステップS21)。スケジューリング機能部25は、その読み出した仮タイムテーブルを構成する全てのブロックを配置するのに必要なリソースが全て使用可能かどうかを判断する(ステップS22)。全ての必要なリソースが使用可能であれば(ステップS22:YES)、当該仮タイムテーブルを構成する各ブロックを対応するリソースに時間軸上で前詰めに配置する(ステップS23)。すなわち、各ブロックは、同一リソースが同じ時間に重複して使用されないようにしながら、時間軸上で最も早い位置に配置される。仮タイムテーブルを構成する全てのブロックを配置し終えると、スケジューリング機能部25は、その仮タイムテーブルの処理ブロックを配置した処理ユニットに関連する製品リソースの占有状態を設定する(ステップS24。図6参照)。また、スケジューリング機能部25は、その仮タイムテーブルが薬液供給ブロックを含む場合に、薬液温度リソースの占有状態を設定する(ステップS25。図7参照)。   More specifically, the scheduling function unit 25 reads a temporary time table corresponding to one substrate W of an unplanned process job having the earliest reception time (step S21). The scheduling function unit 25 determines whether or not all the resources necessary for arranging all the blocks constituting the read temporary time table can be used (step S22). If all necessary resources can be used (step S22: YES), the blocks constituting the temporary time table are arranged on the corresponding resource in the left-justified manner on the time axis (step S23). That is, each block is arranged at the earliest position on the time axis while preventing the same resource from being used repeatedly at the same time. When all the blocks constituting the temporary time table are arranged, the scheduling function unit 25 sets the occupation state of the product resource related to the processing unit in which the processing block of the temporary time table is arranged (step S24, FIG. 6). reference). Moreover, the scheduling function part 25 sets the occupation state of a chemical | medical solution temperature resource, when the temporary timetable contains a chemical | medical solution supply block (step S25, refer FIG. 7).

同様の処理が同じプロセスジョブの最後の基板の仮タイムテーブルまで順に実行される(ステップS26)。さらに、同様の処理が、記憶部23に格納された未計画のプロセスジョブデータに対して、繰り返される(ステップS27)。
仮タイムテーブルを構成するブロックを配置すべき少なくとも一つのリソースが使用不可能であるときは(ステップS22:NO)、スケジューリング機能部25は、計画中の基板に係るプロセスジョブの計画全体を留保する(ステップS28)。そして、次のプロセスジョブデータがある場合には(ステップS29:YES)、スケジューリング機能部25は、次のプロセスジョブデータの仮タイムテーブルを記憶部23から読み出して(ステップS30)、ステップS22からの処理を繰り返す。次のプロセスジョブデータとは、受信時間が次のプロセスジョブデータである。次のプロセスジョブデータがなければ(ステップS29:NO)、スケジューリング機能部25の処理は、ステップS27に移る。
Similar processing is sequentially executed up to the provisional time table of the last substrate of the same process job (step S26). Further, similar processing is repeated for unplanned process job data stored in the storage unit 23 (step S27).
When at least one resource in which a block constituting the temporary time table is to be arranged is unavailable (step S22: NO), the scheduling function unit 25 reserves the entire plan of the process job related to the planned substrate. (Step S28). When there is next process job data (step S29: YES), the scheduling function unit 25 reads the temporary time table of the next process job data from the storage unit 23 (step S30), and from step S22. Repeat the process. The next process job data is the next process job data with the reception time. If there is no next process job data (step S29: NO), the process of the scheduling function unit 25 proceeds to step S27.

ステップS28において計画が留保されたプロセスジョブの計画は、必要なリソースが使用可能になるまで後回しにされる。より具体的には、占有状態に設定された製品リソースまたは薬液温度リソース(ステップS24,S25参照)を使うプロセスジョブは、後回しになる。
図6は、製品リソース占有状態設定(図5のステップS24)に関連する処理を説明するためのフローチャートである。スケジューリング機能部25は、処理を計画している基板が非製品基板かどうかを判断する(ステップS41)。非製品基板の場合には(ステップS41:YES)、スケジューリング機能部25は、さらに、最初の非製品基板かどうかを判断する(ステップS42)。具体的には、スケジューリング機能部25は、同じ処理ユニットに対して直前に処理が計画された基板が製品基板であれば、最初の非製品基板であると判断する。さもなければ(同じ処理ユニットに対して直前に処理が計画された基板がない場合を含む)、スケジューリング機能部25は、最初の非製品基板ではないと判断する。最初の非製品基板の場合には(ステップS42:YES)、スケジューリング機能部25は、当該非製品基板の処理を計画した処理ユニットに対応する製品リソースの以後の全期間を占有状態に設定する(ステップS43)。したがって、その占有状態の製品リソースを使う仮タイムテーブルの計画はできなくなる(図5のステップS22参照)。すなわち、最初の非製品基板の処理を計画した処理ユニットに対して、製品基板の処理の計画が禁止される。このように、製品リソースを占有状態に設定すること(ステップS43)は、対応する処理ユニットに対して製品基板の処理の計画を禁止する禁止属性情報を生成することに相当する。
The process job plan for which the plan has been reserved in step S28 is postponed until the necessary resources become available. More specifically, the process job that uses the product resource or the chemical temperature resource (see steps S24 and S25) set to the occupied state is postponed.
FIG. 6 is a flowchart for explaining processing related to the product resource occupation state setting (step S24 in FIG. 5). The scheduling function unit 25 determines whether the substrate on which processing is planned is a non-product substrate (step S41). In the case of a non-product substrate (step S41: YES), the scheduling function unit 25 further determines whether or not it is the first non-product substrate (step S42). Specifically, the scheduling function unit 25 determines that it is the first non-product substrate if the substrate for which processing was planned immediately before for the same processing unit is a product substrate. Otherwise (including the case where there is no board for which processing is planned immediately before for the same processing unit), the scheduling function unit 25 determines that it is not the first non-product board. In the case of the first non-product substrate (step S42: YES), the scheduling function unit 25 sets the entire period after the product resource corresponding to the processing unit that planned the processing of the non-product substrate to the occupied state ( Step S43). Therefore, it is not possible to plan a temporary time table that uses the product resources in the occupied state (see step S22 in FIG. 5). In other words, the product substrate processing plan is prohibited for the processing unit that planned the processing of the first non-product substrate. In this way, setting the product resource to the occupied state (step S43) corresponds to generating prohibition attribute information that prohibits the corresponding processing unit from planning the processing of the product substrate.

最初の非製品基板でない場合には(ステップS42:NO)、スケジューリング機能部25は、当該非製品基板が最後の非製品基板かどうかを判断する(ステップS44)。たとえば、未スケジューリングの基板のなかに非製品基板がない場合に、スケジューリング機能部25は、最後の非製品基板であると判断してもよい。また、プロセスジョブデータが、最後の非製品基板であることを表す情報を有している場合には、当該プロセスジョブの最後の基板を最後の非製品基板であると判断してもよい。   If it is not the first non-product substrate (step S42: NO), the scheduling function unit 25 determines whether the non-product substrate is the last non-product substrate (step S44). For example, when there is no non-product substrate among unscheduled substrates, the scheduling function unit 25 may determine that it is the last non-product substrate. Further, when the process job data includes information indicating that it is the last non-product substrate, the last substrate of the process job may be determined to be the last non-product substrate.

最後の非製品基板である場合には(ステップS44:YES)、製品リソースの全期間占有状態が解除される(ステップS45)。それにより、当該製品リソースに対応する処理ユニットにおいて、製品基板の処理を計画できる状態に復帰する。一方、最後の非製品基板でなければ(ステップS44:NO)、製品リソースの全期間占有状態が保持される。   If it is the last non-product substrate (step S44: YES), the entire product resource occupation state is released (step S45). As a result, the processing unit corresponding to the product resource returns to a state where processing of the product substrate can be planned. On the other hand, if it is not the last non-product substrate (step S44: NO), the entire occupation state of the product resource is maintained.

仮タイムテーブルのブロックを配置した基板が製品基板の場合には(ステップS41:NO)、ステップS42〜S45の処理が省かれる。
最初の非製品基板の処理を含むプロセスジョブのスケジューリングを終えた後に、次の非製品基板のプロセスジョブデータの受信までに長い待機時間が生じるときには、ステップS41,S42の判断に依らずに、製品リソースの占有状態を解除してもよい。たとえば、最初の非製品基板の処理を含むプロセスジョブのスケジューリング終了後、一定の待機時間内に次の非製品基板のプロセスジョブデータが受信されないときに、非製品リソースの占有状態を解除してもよい。また、最初の非製品基板の処理を含むプロセスジョブのスケジューリング終了後、製品基板の処理を指定する一定数以上のプロセスジョブデータの受信が連続した場合に、非製品リソースの占有状態を解除してもよい。また、最初の非製品基板の処理を含むプロセスジョブのスケジューリング終了後、一定枚数以上の製品基板のスケジューリングを完了するまで次の非製品基板のプロセスジョブデータが受信されないときに、非製品リソースの占有状態を解除してもよい。
When the substrate on which the temporary timetable block is arranged is a product substrate (step S41: NO), the processing of steps S42 to S45 is omitted.
When a long standby time occurs after receiving the process job data of the next non-product substrate after finishing the scheduling of the process job including the processing of the first non-product substrate, the product is not dependent on the determination in steps S41 and S42. The resource occupation state may be released. For example, if the process job data for the next non-product board is not received within a certain waiting time after the scheduling of the process job including the processing of the first non-product board is completed, the occupation state of the non-product resource may be released. Good. In addition, after the completion of the scheduling of the process job including the first non-product board processing, if the reception of a certain number of process job data specifying the product board processing continues, the non-product resource occupation state is released. Also good. Also, after the process job scheduling including the processing of the first non-product substrate is completed, the non-product resource is occupied when the process job data of the next non-product substrate is not received until the scheduling of a certain number of product substrates or more is completed. The state may be released.

図7は、薬液温度リソース占有状態設定(図5のステップS25)に関連する処理を説明するためのフローチャートである。スケジューリング機能部25は、計画対象の基板処理が薬液温度リソースを使用するかどうか、すなわち、仮タイムテーブルが薬液温度リソースを使用するブロックを含むかどうかを判断する(ステップS51)。薬液温度リソースを使用する場合には(ステップS51:YES)、スケジューリング機能部25は、さらに、当該薬液温度リソースを使う最初の基板かどうかを判断する(ステップS52)。具体的には、スケジューリング機能部25は、いずれかの薬液温度リソースを使用する直前の基板処理において、異なる温度の薬液温度リソースが使用されているか、または薬液温度リソースを使用する処理が未計画の場合には、その薬液温度リソースを使う最初の基板であると判断する。さもなければ、スケジューリング機能部25は、その薬液温度リソースを使う最初の基板ではないと判断する。その薬液温度リソースを使う最初の基板の場合には(ステップS52:YES)、スケジューリング機能部25は、他の薬液温度リソースに関して、以後の全期間を占有状態に設定する(ステップS53)。したがって、その占有状態の薬液温度リソースを使う仮タイムテーブルの計画はできなくなる(図5のステップS22参照)。すなわち、別の薬液温度での基板処理の計画が禁止される。このように、薬液温度リソースを占有状態に設定すること(ステップS53)は、異なる薬液温度(処理条件の一例)での基板処理の計画を禁止する禁止属性情報を生成することに相当する。   FIG. 7 is a flowchart for explaining processing related to the chemical temperature resource occupation state setting (step S25 in FIG. 5). The scheduling function unit 25 determines whether the substrate processing to be planned uses the chemical temperature resource, that is, whether the temporary time table includes a block using the chemical temperature resource (step S51). When the chemical temperature resource is used (step S51: YES), the scheduling function unit 25 further determines whether or not it is the first substrate using the chemical temperature resource (step S52). Specifically, the scheduling function unit 25 uses the chemical solution temperature resource of a different temperature in the substrate processing immediately before using any chemical solution temperature resource, or has not planned the processing using the chemical solution temperature resource. In this case, it is determined that this is the first substrate that uses the chemical temperature resource. Otherwise, the scheduling function unit 25 determines that it is not the first substrate that uses the chemical temperature resource. In the case of the first substrate that uses the chemical temperature resource (step S52: YES), the scheduling function unit 25 sets all the subsequent periods to the occupied state for the other chemical temperature resources (step S53). Therefore, it is not possible to plan a temporary time table that uses the occupied chemical temperature resource (see step S22 in FIG. 5). That is, the substrate processing plan at another chemical temperature is prohibited. As described above, setting the chemical temperature resource to the occupied state (step S53) corresponds to generation of prohibition attribute information for prohibiting the substrate processing plan at the different chemical temperature (an example of the processing condition).

その薬液温度リソースを使う最初の基板でない場合には(ステップS52:NO)、スケジューリング機能部25は、その薬液温度リソースを使う最後の基板かどうかを判断する(ステップS54)。たとえば、未スケジューリングの基板の仮タイムテーブルのなかに、同じ薬液温度リソースを使うものがない場合に、スケジューリング機能部25は、その薬液温度リソースを使う最後の基板であると判断してもよい。また、プロセスジョブデータが、その薬液温度リソースを使う最後の基板であることを表す情報を有している場合には、当該プロセスジョブの最後の基板を、その薬液温度リソースを使う最後の基板であると判断してもよい。   If it is not the first substrate that uses the chemical temperature resource (step S52: NO), the scheduling function unit 25 determines whether it is the last substrate that uses the chemical temperature resource (step S54). For example, if there is no temporary time table for unscheduled substrates that uses the same chemical temperature resource, the scheduling function unit 25 may determine that this is the last substrate that uses the chemical temperature resource. In addition, when the process job data has information indicating that it is the last substrate that uses the chemical temperature resource, the last substrate of the process job is the last substrate that uses the chemical temperature resource. You may judge that there is.

その薬液温度リソースを使う最後の基板である場合には(ステップS54:YES)、当該薬液温度リソースの全期間占有状態が解除される(ステップS55)。それにより、当該薬液温度以外の薬液温度条件での基板処理を計画できる状態に復帰する。一方、その薬液温度リソースを使用する最後の基板でなければ(ステップS54:NO)、その薬液温度リソースの全期間占有状態が保持される。   If it is the last substrate that uses the chemical temperature resource (step S54: YES), the entire occupation state of the chemical temperature resource is released (step S55). As a result, the state returns to the state where the substrate processing under the chemical temperature conditions other than the chemical temperature can be planned. On the other hand, if it is not the last board | substrate which uses the chemical | medical solution temperature resource (step S54: NO), the whole period occupation state of the chemical | medical solution temperature resource is hold | maintained.

当該基板の仮タイムテーブルが薬液温度リソースを使用するブロックを有しない場合には、(ステップS51:NO)、ステップS52〜S55の処理が省かれる。
或る薬液温度リソースを使う最初の基板の処理を含むプロセスジョブのスケジューリングを終えた後に、次の同じ薬液温度リソースを使う次の基板のプロセスジョブデータの受信までに長い待機時間が生じるときには、ステップS51,S52の判断に依らずに、他の薬液温度リソースの占有状態を解除してもよい。たとえば、或る薬液温度リソースを使う最初の基板の処理を含むプロセスジョブのスケジューリング終了後、一定の待機時間内に同じ薬液温度リソースを使う次の基板のプロセスジョブデータが受信されないときに、他の薬液温度リソースの占有状態を解除してもよい。また、或る薬液温度リソースを使う最初の基板の処理を含むプロセスジョブのスケジューリング終了後、他の薬液温度リソースを使う一定数以上のプロセスジョブデータの受信が連続した場合に、他の薬液温度リソースの占有状態を解除してもよい。また、或る薬液温度リソースを使う最初の基板の処理を含むプロセスジョブのスケジューリング終了後、他の薬液温度リソースを使う一定枚数以上の基板処理を指定する一つ以上のプロセスジョブデータが受信されたときに、他の薬液温度リソースの占有状態を解除してもよい。
When the temporary timetable of the substrate does not have a block that uses the chemical temperature resource (step S51: NO), the processes of steps S52 to S55 are omitted.
When a long wait time occurs after finishing the scheduling of a process job including the processing of the first substrate using a certain chemical temperature resource until receiving the processing job data of the next substrate using the same chemical temperature resource, Regardless of the determination in S51 and S52, the occupation state of other chemical solution temperature resources may be released. For example, after the process job scheduling including the processing of the first substrate using one chemical temperature resource is completed, the process job data of the next substrate using the same chemical temperature resource is not received within a certain waiting time. The occupation state of the chemical temperature resource may be released. In addition, after the completion of scheduling of a process job including processing of the first substrate that uses a certain chemical temperature resource, when reception of a certain number or more of process job data that uses another chemical temperature resource continues, another chemical temperature resource You may cancel the occupation state. In addition, after the scheduling of the process job including the processing of the first substrate using a certain chemical temperature resource, one or more process job data specifying a certain number of substrate processing using another chemical temperature resource is received. Sometimes, the occupation state of other chemical solution temperature resources may be released.

次に、スケジューリングの第1の具体例について、図9Aおよび図9B等を参照して説明する。
以下のような内容のレシピを有するプロセスジョブPJ1,PJ2,PJ3,PJ4の情報(プロセスジョブデータ)をこの順序でホストコンピュータ24から受信し、処理のスタートを指示された場合について説明する(ステップS101,S102,S103,S104)。
Next, a first specific example of scheduling will be described with reference to FIGS. 9A and 9B.
A case will be described where information (process job data) of process jobs PJ1, PJ2, PJ3, and PJ4 having recipes as described below is received from the host computer 24 in this order and an instruction to start processing is given (step S101). , S102, S103, S104).

PJ1:SPIN1で1枚の非製品基板を処理
PJ2:SPIN1〜SPIN2で2枚の製品基板を並行処理
PJ3:SPIN1で1枚の非製品基板を処理
PJ4:SPIN1〜SPIN2で2枚の製品基板を並行処理
使用者の意図は、処理ユニットSPIN1に関しては、製品基板を用いた処理を間に挟むことなく非製品基板を用いた内部洗浄処理等を2回連続して行うことである。たとえば、非製品基板をスピンチャック15に保持させた状態で処理液ノズル16から純水を吐出することで、処理ユニットSPIN1の内部を洗浄することができる。非製品基板を用いた内部洗浄処理の回数は、たとえば、製品基板に対して処理を行うときに要求される処理ユニット内部の清浄度に依存する。すなわち、その回数は、使用者が必要に応じて設定する。たとえば、準備できる非製品基板の枚数の制限などのために、2枚の非製品基板に対する処理を一つのプロセスジョブにまとめることができなかったり、連続する2つのプロセスジョブで非製品基板の使用を指定できなかったりすることがある。このような場合でも、この基板処理装置は、2枚以上の非製品基板による連続処理を実現する。
PJ1: Processing one non-product substrate with SPIN1 PJ2: Parallel processing with two product substrates with SPIN1-SPIN2 PJ3: Processing one non-product substrate with SPIN1 PJ4: Processing two product substrates with SPIN1-SPIN2 Parallel processing The intention of the user is to perform, for the processing unit SPIN1, an internal cleaning process or the like using a non-product substrate twice in succession without interposing a process using a product substrate. For example, the inside of the processing unit SPIN1 can be cleaned by discharging pure water from the processing liquid nozzle 16 with the non-product substrate held by the spin chuck 15. The number of internal cleaning processes using a non-product substrate depends on, for example, the cleanliness inside the processing unit required when processing a product substrate. That is, the number of times is set by the user as needed. For example, due to restrictions on the number of non-product substrates that can be prepared, the processing for two non-product substrates cannot be combined into one process job, or the use of non-product substrates in two consecutive process jobs is not possible. You may not be able to specify. Even in such a case, this substrate processing apparatus realizes continuous processing with two or more non-product substrates.

図10Aは、プロセスジョブPJ1,PJ3の各基板に対して作成される仮タイムテーブルを示し、図10BはプロセスジョブPJ2,PJ4の各基板に対して作成される仮タイムテーブルを示す。スケジューリング機能部25は、プロセスジョブPJ1〜PJ4に対応するプロセスジョブデータを受信すると(ステップS101〜S104。受信工程)、各プロセスジョブPJ1〜PJ4を受信する度にそれらに対応する仮タイムテーブルをそれぞれ作成する(ステップS105〜S108)。   FIG. 10A shows a provisional time table created for each substrate of process jobs PJ1 and PJ3, and FIG. 10B shows a provisional time table created for each substrate of process jobs PJ2 and PJ4. When the scheduling function unit 25 receives the process job data corresponding to the process jobs PJ1 to PJ4 (steps S101 to S104, the receiving process), each time the process job PJ1 to PJ4 is received, the temporary time table corresponding to each is received. Create (steps S105 to S108).

プロセスジョブPJ2,PJ4については、図10Bに示すように、2つの処理ユニットSPIN1〜SPIN2での並行処理を指定して製品基板に対する処理を行うための仮タイムテーブルが作成される。すなわち、処理ユニットSPIN1,SPIN2に処理ブロックをそれぞれ配置した仮タイムテーブルが作成される。処理ブロックは、基板処理のために当該処理ユニットが占有されることを表す。また、処理ユニットSPIN1に配置された処理ブロックと重複する期間には、処理ユニットSPIN1に対応する製品リソース「SPIN1製品」に対して、製品処理ブロックが配置されている。この製品処理ブロックは、処理ユニットSPIN1において製品基板が処理されること、すなわち、製品基板の処理のために処理ユニットSPIN1が占有されることを表す。同様に、処理ユニットSPIN2に配置された処理ブロックと重複する期間には、処理ユニットSPIN2に対応する製品リソース「SPIN2製品」に対して、製品処理ブロックが配置されている。この製品処理ブロックは、処理ユニットSPIN2において製品基板が処理されること、すなわち、製品基板の処理のために処理ユニットSPIN2が占有されることを表す。   For the process jobs PJ2 and PJ4, as shown in FIG. 10B, a temporary time table is created for performing processing on the product substrate by designating parallel processing in the two processing units SPIN1 and SPIN2. That is, a temporary time table in which processing blocks are arranged in the processing units SPIN1 and SPIN2 is created. The processing block represents that the processing unit is occupied for substrate processing. Further, during a period overlapping with the processing block arranged in the processing unit SPIN1, a product processing block is arranged for the product resource “SPIN1 product” corresponding to the processing unit SPIN1. This product processing block represents that the product substrate is processed in the processing unit SPIN1, that is, the processing unit SPIN1 is occupied for processing the product substrate. Similarly, in a period overlapping with the processing block arranged in the processing unit SPIN2, a product processing block is arranged for the product resource “SPIN2 product” corresponding to the processing unit SPIN2. This product processing block represents that the product substrate is processed in the processing unit SPIN2, that is, the processing unit SPIN2 is occupied for processing the product substrate.

プロセスジョブPJ1,PJ3については、図10Aに示すように、一つの処理ユニットSPIN1を指定して非製品基板に対する処理を行うための仮タイムテーブルが作成される。すなわち、処理ユニットSPIN1に処理ブロックが配置されている。非製品基板に対する処理であるので、製品リソース「SPIN1製品」は使用されない。
図11A〜図14は、全体スケジューリングの例を示す。
For the process jobs PJ1 and PJ3, as shown in FIG. 10A, a temporary time table for performing processing on a non-product substrate by designating one processing unit SPIN1 is created. That is, processing blocks are arranged in the processing unit SPIN1. Since the process is for a non-product substrate, the product resource “SPIN1 product” is not used.
11A to 14 show examples of overall scheduling.

図11Aは、最初に受信したプロセスジョブPJ1の最初の基板に対応する仮タイムテーブルを構成する全てのブロックを配置した例を示す。スケジューリング機能部25は、プロセスジョブデータを受信した順序に、各プロセスジョブの仮タイムテーブルを用いてスケジューリングを実行する(処理スケジューリング工程)。すなわち、スケジューリング機能部25は、まず、プロセスジョブPJ1の仮タイムテーブルから取得されたブロックを対応するリソースのスペースに時間軸上において最も早い位置に(すなわち前詰めで)順に配置していく(ステップS109。第1処理スケジューリング工程)。このとき、スケジューリング機能部25は、同一リソースのスペースでブロックが重なり合わないように各ブロックを配置する。プロセスジョブPJ1は1枚の非製品基板に対する処理を処理ユニットSPIN1で行うべきことを指定する処理であるので、処理ブロックは処理ユニットSPIN1に対応するように配置される(ステップS109a)。こうして、プロセスジョブPJ1に対するスケジューリングを終える。   FIG. 11A shows an example in which all the blocks constituting the temporary time table corresponding to the first substrate of the process job PJ1 received first are arranged. The scheduling function unit 25 executes scheduling using the temporary time table of each process job in the order in which the process job data is received (processing scheduling step). That is, the scheduling function unit 25 first arranges the blocks acquired from the temporary time table of the process job PJ1 in the corresponding resource space in the earliest position on the time axis (that is, left-justified) (step). S109. First process scheduling step). At this time, the scheduling function unit 25 arranges the blocks so that the blocks do not overlap in the same resource space. Since the process job PJ1 is a process for designating that processing for one non-product substrate should be performed by the processing unit SPIN1, the processing block is arranged so as to correspond to the processing unit SPIN1 (step S109a). Thus, the scheduling for the process job PJ1 is completed.

プロセスジョブPJ1に対するスケジューリング(ステップS109)の後、スケジューリング機能部25は、それが1枚目の非製品基板に対する処理スケジューリングであると判断する(ステップS110)。そこで、スケジューリング機能部25は、図11Bに示すように、次の基板の処理を計画する前に、「SPIN1製品」リソースを、プロセスジョブPJ1の開始時以後の全期間について占有状態とし、それによって、「SPIN1製品」リソースを無効化する(ステップS111。禁止属性情報の生成)。これは、処理ユニットSPIN1が製品基板の処理のために全期間において占有されていることを表す。これにより、「SPIN1製品」リソースへの製品処理ブロックの配置が禁止される。それによって、処理ユニットSPIN1を用いた製品基板の処理の計画が禁止される。「SPIN2製品」リソースは占有されていないので、処理ユニットSPIN2については、製品基板の処理を計画できる。   After scheduling for the process job PJ1 (step S109), the scheduling function unit 25 determines that this is processing scheduling for the first non-product substrate (step S110). Therefore, as shown in FIG. 11B, the scheduling function unit 25 sets the “SPIN1 product” resource to the occupied state for the entire period after the start of the process job PJ1, before planning the processing of the next substrate. , “SPIN1 product” resource is invalidated (step S111, generation of prohibited attribute information). This represents that the processing unit SPIN1 is occupied for the entire period for processing the product substrate. This prohibits the placement of the product processing block in the “SPIN1 product” resource. As a result, the planning of the product substrate processing using the processing unit SPIN1 is prohibited. Since the “SPIN2 product” resource is not occupied, processing of the product substrate can be planned for the processing unit SPIN2.

このようにして、次のプロセスジョブPJ2の処理スケジューリングよりも前に、「SPIN1製品」リソースの使用を禁止する禁止属性情報が生成され、それによって、処理ユニットSPIN1を製品基板の処理のために使用することが禁止される。処理実行指示部26は、プロセスジョブPJ1のスケジューリング完了後、プロセスジョブPJ1に対して作成されたスケジュールに従って基板処理装置のリソースを作動させる。処理実行指示部26は、任意のタイミングでプロセスジョブPJ1の実行を開始することができるが、プロセスジョブPJ1の次のプロセスジョブPJ2の受信(ステップS102)よりも前にプロセスジョブPJ1の実行を開始してもよい。   In this way, prohibition attribute information for prohibiting the use of the “SPIN1 product” resource is generated before processing scheduling of the next process job PJ2, thereby using the processing unit SPIN1 for processing the product substrate. Is prohibited. After completing the scheduling of the process job PJ1, the processing execution instruction unit 26 operates the resources of the substrate processing apparatus according to the schedule created for the process job PJ1. The process execution instruction unit 26 can start execution of the process job PJ1 at an arbitrary timing, but starts execution of the process job PJ1 before reception of the process job PJ2 next to the process job PJ1 (step S102). May be.

次に、スケジューリング機能部25は、プロセスジョブPJ1の次に情報(プロセスジョブデータ)が受信されたプロセスジョブPJ2に対するスケジューリングを行う(ステップS112。第2処理スケジューリング工程)。プロセスジョブPJ2のレシピは、2つの処理ユニットSPIN1,SPIN2での2枚の製品基板の並行処理を指定しているので、仮タイムテーブルは「SPIN1製品」リソースまたは「SPIN2製品」リソースに配置すべき製品処理ブロックを含む。プロセスジョブPJ2の仮タイムテーブルのうち処理ユニットSPIN1を使う仮タイムテーブル(図10Bの上段)は、占有状態となっている「SPIN1製品」リソースを用いるので、適用できない。すなわち、スケジューリング機能部25は、プロセスジョブPJ2について作成された、処理ユニットSPIN1を通る仮タイムテーブルの製品処理ブロックを「SPIN1製品」リソースに配置できるか否かを判断する(ステップS112a)。この判断は、プロセスジョブPJ1の基板種(非製品基板)とプロセスジョブPJ2の基板種(製品基板)との異同の判断にほかならない(カテゴリ(基板種)の異同を判断する工程)。「SPIN1製品」リソースが占有されているため、製品処理ブロックを「SPIN1製品」リソースに配置できない。これは、プロセスジョブPJ1とプロセスジョブPJ2とで基板の種類が異なるため、プロセスジョブPJ2を処理ユニットSPIN1に対して計画することが禁止されることを意味する。   Next, the scheduling function unit 25 performs scheduling for the process job PJ2 for which information (process job data) has been received next to the process job PJ1 (step S112, second process scheduling step). Since the recipe of the process job PJ2 specifies parallel processing of two product substrates in the two processing units SPIN1 and SPIN2, the temporary timetable should be placed in the “SPIN1 product” resource or the “SPIN2 product” resource Includes product processing blocks. Of the temporary time table of the process job PJ2, the temporary time table using the processing unit SPIN1 (the upper part of FIG. 10B) cannot be applied because it uses the “SPIN1 product” resource in the occupied state. That is, the scheduling function unit 25 determines whether or not the product processing block of the temporary time table created for the process job PJ2 and passing through the processing unit SPIN1 can be placed in the “SPIN1 product” resource (step S112a). This determination is nothing but the determination of the difference between the substrate type (non-product substrate) of the process job PJ1 and the substrate type (product substrate) of the process job PJ2 (step of determining the difference of category (substrate type)). Since the “SPIN1 product” resource is occupied, the product processing block cannot be placed in the “SPIN1 product” resource. This means that the process job PJ2 is prohibited from being planned for the processing unit SPIN1 because the substrate types are different between the process job PJ1 and the process job PJ2.

そこで、スケジューリング機能部25は、図12に示すように、処理ユニットSPIN2を使う仮タイムテーブル(図10Bの下段)を選択し、その仮タイムテーブルを構成するブロックを、同一リソースの他のブロックと重複しないように時間軸上で前詰めに配置していく(ステップS112b)。これにより、処理ブロックが処理ユニットSPIN2に配置され、その処理ブロックと同じ期間において、「SPIN2製品」リソースに製品処理ブロックが配置される。「SPIN1製品」リソースが占有状態のままであるので、プロセスジョブPJ2の2枚の基板の処理は、いずれも処理ユニットSPIN2に計画される。   Therefore, as shown in FIG. 12, the scheduling function unit 25 selects a temporary time table (lower stage in FIG. 10B) that uses the processing unit SPIN2, and sets the blocks constituting the temporary time table as other blocks of the same resource. They are arranged on the time axis so as not to overlap (step S112b). Thus, the processing block is arranged in the processing unit SPIN2, and the product processing block is arranged in the “SPIN2 product” resource in the same period as the processing block. Since the “SPIN1 product” resource remains in the occupied state, the processing of the two substrates of the process job PJ2 is planned in the processing unit SPIN2.

処理実行指示部26は、プロセスジョブPJ2のスケジューリング完了後、プロセスジョブPJ2に対して作成されたスケジュールに従って基板処理装置のリソースを作動させる。処理実行指示部26は任意のタイミングでプロセスジョブPJ2の実行を開始することができるが、プロセスジョブPJ2の次のプロセスジョブPJ3の受信(ステップS103)よりも前にプロセスジョブPJ2の実行を開始してもよい。   After completing the scheduling of the process job PJ2, the processing execution instruction unit 26 operates the resources of the substrate processing apparatus according to the schedule created for the process job PJ2. The process execution instructing unit 26 can start executing the process job PJ2 at an arbitrary timing, but starts executing the process job PJ2 before receiving the process job PJ3 next to the process job PJ2 (step S103). May be.

スケジューリング機能部25は、プロセスジョブPJ2の処理スケジューリングを終えた後、プロセスジョブPJ2の次に情報(プロセスジョブデータ)が受信されたプロセスジョブPJ3に対するスケジューリングを行う(ステップS113。第2処理スケジューリング工程)。プロセスジョブPJ3のレシピは、処理ユニットSPIN1での1枚の非製品基板の処理を指定している。プロセスジョブPJ3の仮タイムテーブル(図10A)は、占有状態となっている「SPIN1製品」リソースを用いないので、スケジューリング機能部25は、この仮タイムテーブルを適用可能であると判断する(ステップS113a)。占有状態となっている「SPIN1製品」リソースを用いるか否かの判断は、プロセスジョブPJ1,PJ3の基板種の異同の判断に相当する(カテゴリ(基板種)の異同を判断する工程)。そして、プロセスジョブPJ3が占有状態である「SPIN1製品」リソースを用いないことは、プロセスジョブPJ3がプロセスジョブPJ1と同種の基板種に対する処理であることを意味する。   After finishing the process scheduling of the process job PJ2, the scheduling function unit 25 performs scheduling for the process job PJ3 for which information (process job data) is received next to the process job PJ2 (step S113, second process scheduling step). . The recipe of the process job PJ3 designates processing of one non-product substrate in the processing unit SPIN1. Since the temporary time table (FIG. 10A) of the process job PJ3 does not use the “SPIN1 product” resource that is in the occupied state, the scheduling function unit 25 determines that this temporary time table is applicable (step S113a). ). The determination of whether to use the “SPIN1 product” resource in the occupied state corresponds to the determination of the difference in the substrate type of the process jobs PJ1 and PJ3 (step of determining the difference in category (substrate type)). Not using the “SPIN1 product” resource in which the process job PJ3 is occupied means that the process job PJ3 is processing for the same type of substrate as the process job PJ1.

そこで、スケジューリング機能部25は、図13Aに示すように、プロセスジョブPJ3の仮タイムテーブルを構成するブロックを、同一リソースの他のブロックと重複しないように時間軸上で前詰めに配置していく。これにより、処理ブロックが処理ユニットSPIN1に配置される(ステップS113b)。プロセスジョブPJ3は製品リソースを使用する製品処理ブロックを有していないので、「SPIN1製品」リソースが占有状態であっても、プロセスジョブPJ3の仮タイムテーブルを構成する全てのブロックを配置することができる。   Therefore, as shown in FIG. 13A, the scheduling function unit 25 arranges the blocks constituting the temporary time table of the process job PJ3 on the time axis so as not to overlap with other blocks of the same resource. . As a result, the processing block is arranged in the processing unit SPIN1 (step S113b). Since the process job PJ3 does not have a product processing block that uses product resources, even if the “SPIN1 product” resource is in an occupied state, all blocks constituting the temporary time table of the process job PJ3 can be arranged. it can.

もしも、プロセスジョブPJ3が2枚以上の非製品基板に対する処理である場合には、2枚目以降の非製品基板に対しても同様にして処理ユニットSPIN1での処理が繰り返し計画される。
プロセスジョブPJ3の最後の基板の仮タイムテーブルを構成する全てのブロックの配置を終えると、スケジューリング機能部25は、プロセスジョブPJ3が非製品基板を基板種として指定する最後のプロセスジョブかどうかを判断する(ステップS114)。たとえば、スケジューリング機能部25は、受信済みのプロセスジョブデータを参照して、スケジューリングが未了のプロセスジョブのなかに非製品基板を基板種として指定しているものがあるかどうかを判断してもよい。また、プロセスジョブPJ3のためのプロセスジョブデータが、非製品基板を指定する最後のプロセスジョブであることを表す情報を有していてもよい。この場合、スケジューリング機能部25は、その情報に基づいて、プロセスジョブPJ3が非製品基板の最後のプロセスジョブかどうかを判断できる。
If the process job PJ3 is processing for two or more non-product substrates, the processing in the processing unit SPIN1 is repeatedly planned in the same manner for the second and subsequent non-product substrates.
When the arrangement of all the blocks constituting the temporary time table of the last substrate of the process job PJ3 is completed, the scheduling function unit 25 determines whether or not the process job PJ3 is the last process job that designates a non-product substrate as a substrate type. (Step S114). For example, the scheduling function unit 25 refers to the received process job data, and determines whether there is a process job that has not been scheduled that specifies a non-product board as the board type. Good. Further, the process job data for the process job PJ3 may have information indicating that it is the last process job that designates a non-product substrate. In this case, the scheduling function unit 25 can determine whether the process job PJ3 is the last process job for a non-product substrate based on the information.

プロセスジョブPJ3が非製品基板の処理のための最後のプロセスジョブである場合には、スケジューリング機能部25は、「SPIN1製品」リソースの全期間占有状態を解除する(ステップS115)。すなわち、処理ユニットSPIN1での製品基板の処理を禁止する禁止属性情報が取り消される。それによって、「SPIN1製品」リソースが有効になる。たとえば、図13Bに示すように、スケジューリング機能部25は、プロセスジョブPJ3の最後の基板(非製品基板)に対する最初のブロック開始時以降の期間における「SPIN1製品」リソースの占有状態を解除してもよい。これにより、プロセスジョブPJ3の最後の基板の最初のブロック開始時以降の期間には、「SPIN1製品」リソースへの製品処理ブロックの配置が可能になる。   If the process job PJ3 is the last process job for processing a non-product substrate, the scheduling function unit 25 releases the entire period occupation state of the “SPIN1 product” resource (step S115). That is, the prohibition attribute information prohibiting the processing of the product substrate in the processing unit SPIN1 is canceled. This enables the “SPIN1 product” resource. For example, as illustrated in FIG. 13B, the scheduling function unit 25 may cancel the occupation state of the “SPIN1 product” resource in the period after the start of the first block for the last substrate (non-product substrate) of the process job PJ3. Good. As a result, in the period after the start of the first block of the last substrate of the process job PJ3, the product processing block can be arranged in the “SPIN1 product” resource.

ただし、図13Bの例では、プロセスジョブPJ3の最後の基板の処理ブロックが処理ユニットSPIN1に配置されていて、プロセスジョブPJ3の最後の基板の最初のブロック開始と当該基板に対する処理ブロックとの間には、別の基板の処理のための処理ブロックが配置可能な充分な期間が存在しない。したがって、実質的には、処理ブロックの配置は、プロセスジョブPJ3の最後の基板の処理ブロックの後の期間に制限され、それに応じて、製品処理ブロックの配置もプロセスジョブPJ3の最後の基板の処理ブロックの後の期間に制限される。   However, in the example of FIG. 13B, the processing block of the last substrate of the process job PJ3 is arranged in the processing unit SPIN1, and the first block start of the last substrate of the process job PJ3 is between the processing block for the substrate. However, there is not a sufficient period in which a processing block for processing another substrate can be arranged. Therefore, the arrangement of the processing blocks is substantially limited to the period after the processing block of the last substrate of the process job PJ3, and accordingly, the arrangement of the product processing blocks is also the processing of the last substrate of the process job PJ3. Limited to a period after the block.

したがって、「SPIN1製品」リソースの開放は、最後の非製品基板の処理ブロックの前に同じ処理ユニットでの基板処理を指定する別の処理ブロックの配置を禁止できるタイミングに設定すればよい。たとえば、プロセスジョブPJ3の最後の非製品基板に対応する処理ブロックの終了時以降の期間において「SPIN1製品」リソースを開放してもよい。   Accordingly, the release of the “SPIN1 product” resource may be set at a timing at which disposition of another processing block designating substrate processing in the same processing unit before the processing block of the last non-product substrate can be prohibited. For example, the “SPIN1 product” resource may be released in a period after the end of the processing block corresponding to the last non-product substrate of the process job PJ3.

処理実行指示部26は、プロセスジョブPJ3のスケジューリング完了後、プロセスジョブPJ3に対して作成されたスケジュールに従って基板処理装置のリソースを作動させる。処理実行指示部26は任意のタイミングでプロセスジョブPJ3の実行を開始することができるが、プロセスジョブPJ3の次のプロセスジョブPJ4の受信(ステップS104)よりも前にプロセスジョブPJ3の実行を開始してもよい。   After completing the scheduling of the process job PJ3, the processing execution instruction unit 26 operates the resources of the substrate processing apparatus according to the schedule created for the process job PJ3. The process execution instructing unit 26 can start executing the process job PJ3 at an arbitrary timing, but starts executing the process job PJ3 before receiving the process job PJ4 next to the process job PJ3 (step S104). May be.

スケジューリング機能部25は、プロセスジョブPJ3の処理スケジューリングを終えた後、図14に示すように、プロセスジョブPJ3の次に情報(プロセスジョブデータ)が受信されたプロセスジョブPJ4に対するスケジューリングを行う(ステップS116。処理スケジューリング工程)。プロセスジョブPJ4のレシピは、2つの処理ユニットSPIN1,SPIN2での2枚の製品基板の並行処理を指定しているので、仮タイムテーブルは「SPIN1製品」リソースまたは「SPIN2製品」リソースに配置すべき製品処理ブロックを含む。   After finishing the process scheduling of the process job PJ3, the scheduling function unit 25 performs scheduling for the process job PJ4 for which information (process job data) is received next to the process job PJ3 as shown in FIG. 14 (step S116). Process scheduling process). Since the recipe of the process job PJ4 specifies the parallel processing of two product boards in the two processing units SPIN1 and SPIN2, the temporary timetable should be placed in the “SPIN1 product” resource or the “SPIN2 product” resource Includes product processing blocks.

「SPIN1製品」リソースの占有状態が開放されており、かつ「SPIN2製品」リソースは利用可能であるので、スケジューリング機能部25は、プロセスジョブPJ4の仮タイムテーブルのうち処理ユニットSPIN1およびSPIN2をそれぞれ使う仮タイムテーブルがいずれも使用可能であると判断する(ステップS116a)。したがって、スケジューリング機能部25は、処理ユニットSPIN1またはSPIN2を使う仮タイムテーブルのいずれかを選択して処理を計画する(ステップS116b)。   Since the occupation state of the “SPIN1 product” resource is released and the “SPIN2 product” resource is available, the scheduling function unit 25 uses the processing units SPIN1 and SPIN2 in the temporary time table of the process job PJ4. It is determined that any of the temporary time tables can be used (step S116a). Therefore, the scheduling function unit 25 selects one of the temporary time tables using the processing units SPIN1 and SPIN2 and plans the processing (Step S116b).

図14の例では、処理ユニットSPIN2に配置済みの処理ブロックの終了時刻が、処理ユニットSPIN1に配置済みの処理ブロックの終了時刻よりも早い。そこで、スケジューリング機能部25は、処理ユニットSPIN2を使う仮タイムテーブル(図10B下段)を選択し、その仮タイムテーブルを構成するブロックを、同一リソースの他のブロックと重複しないように時間軸上で前詰めに配置していく。これにより、1枚目の製品基板の処理ブロックが処理ユニットSPIN2に配置され、その処理ブロックと同じ期間において「SPIN2製品」リソースに製品処理ブロックが配置される。   In the example of FIG. 14, the end time of the processing block arranged in the processing unit SPIN2 is earlier than the end time of the processing block arranged in the processing unit SPIN1. Therefore, the scheduling function unit 25 selects a temporary time table (lower part of FIG. 10B) that uses the processing unit SPIN2, and on the time axis so that the blocks constituting the temporary time table do not overlap other blocks of the same resource Place them in front. As a result, the processing block of the first product substrate is arranged in the processing unit SPIN2, and the product processing block is arranged in the “SPIN2 product” resource in the same period as the processing block.

次いで、スケジューリング機能部25は、プロセスジョブPJ4の2枚目の製品基板の処理を計画する。「SPIN1製品」リソースの占有状態が開放されているので、「SPIN1製品」リソースおよび「SPIN2製品」リソースはいずれも利用可能である。したがって、スケジューリング機能部25は、プロセスジョブPJ4の仮タイムテーブルのうち処理ユニットSPIN1およびSPIN2を使う仮タイムテーブルがいずれも使用可能であると判断する(ステップS116a)。   Next, the scheduling function unit 25 plans processing of the second product substrate of the process job PJ4. Since the occupation state of the “SPIN1 product” resource is released, both the “SPIN1 product” resource and the “SPIN2 product” resource can be used. Accordingly, the scheduling function unit 25 determines that any of the temporary time tables using the processing units SPIN1 and SPIN2 among the temporary time tables of the process job PJ4 can be used (step S116a).

図14の例では、処理ユニットSPIN1に配置済みの処理ブロックの終了時刻が、処理ユニットSPIN2に配置済みの処理ブロック(プロセスジョブPJ2の1枚目の製品基板)の終了時刻よりも早い。そこで、スケジューリング機能部25は、処理ユニットSPIN1を使う仮タイムテーブル(図10Bの上段)を選択し、その仮タイムテーブルを構成するブロックを、同一リソースの他のブロックと重複しないように時間軸上で前詰めに配置していく(ステップS116b)。これにより、2枚目の製品基板の処理ブロックが処理ユニットSPIN1に配置され、その処理ブロックと同じ期間において「SPIN1製品」リソースに製品処理ブロックが配置される。   In the example of FIG. 14, the end time of the processing block arranged in the processing unit SPIN1 is earlier than the end time of the processing block arranged in the processing unit SPIN2 (the first product substrate of the process job PJ2). Therefore, the scheduling function unit 25 selects a temporary time table (upper stage in FIG. 10B) using the processing unit SPIN1, and on the time axis so that the blocks constituting the temporary time table do not overlap with other blocks of the same resource. Are arranged at the front (step S116b). As a result, the processing block of the second product substrate is arranged in the processing unit SPIN1, and the product processing block is arranged in the “SPIN1 product” resource in the same period as the processing block.

こうして、プロセスジョブPJ4のスケジューリングが終了する。
処理実行指示部26は、プロセスジョブPJ4のスケジューリング完了後、プロセスジョブPJ4に対して作成されたスケジュールに従って任意のタイミングで基板処理装置のリソースを作動させる。
次に、スケジューリングの第2の具体例について、図15A、図15Bおよび図15C等を参照して説明する。
Thus, the scheduling of the process job PJ4 is completed.
After completing the scheduling of the process job PJ4, the processing execution instruction unit 26 operates the resources of the substrate processing apparatus at an arbitrary timing according to the schedule created for the process job PJ4.
Next, a second specific example of scheduling will be described with reference to FIGS. 15A, 15B, and 15C.

以下のような内容のレシピを有するプロセスジョブPJ1,PJ2,PJ3,PJ4のプロセスジョブデータをこの順序でホストコンピュータ24から受信し、スタート指示された場合について説明する(ステップS121,S122,S123,S124)。
PJ1:SPIN1〜SPIN2で、CC1の薬液を60℃で使用して1枚の基板を処理
PJ2:SPIN1〜SPIN2で、CC1の薬液を80℃で使用して1枚の基板を処理
PJ3:SPIN1〜SPIN2で、CC1の薬液を60℃で使用して1枚の基板を処理
PJ4:SPIN1〜SPIN2で、CC1の薬液を80℃で使用して1枚の基板を処理
前述のとおり、薬液キャビネットCC1は、タンク3に貯留された薬液の温度を調節する温度調節ユニット4を備えている。しかし、温度調節ユニット4はタンク3内の薬液の温度を瞬時に変更できるわけではなく、たとえば、薬液の温度を60℃と80℃との間で変更するには、相応の時間(たとえば数時間)が必要である。したがって、薬液温度を変更し、変更後の薬液温度で安定した薬液供給を行える状態になるまでの待機時間には、基板を処理することができない。したがって、基板処理装置のダウンタイムが長くなり、生産性が悪くなる。
A case will be described in which process job data of process jobs PJ1, PJ2, PJ3, and PJ4 having the following recipes are received in this order from the host computer 24 and a start instruction is given (steps S121, S122, S123, and S124). ).
PJ1: SPIN1-SPIN2 uses CC1 chemical solution at 60 ° C to process one substrate PJ2: SPIN1-SPIN2 uses CC1 chemical solution at 80 ° C to process one substrate PJ3: SPIN1- SPIN2 uses CC1 chemical at 60 ° C to process one substrate PJ4: SPIN1-SPIN2 uses CC1 chemical at 80 ° C to process one substrate As mentioned above, chemical cabinet CC1 The temperature adjusting unit 4 is provided for adjusting the temperature of the chemical solution stored in the tank 3. However, the temperature adjusting unit 4 cannot change the temperature of the chemical solution in the tank 3 instantaneously. )is necessary. Therefore, the substrate cannot be processed during the standby time until the chemical solution temperature is changed and a stable chemical solution can be supplied at the changed chemical solution temperature. Accordingly, the downtime of the substrate processing apparatus is lengthened and productivity is deteriorated.

そこで、この実施形態では、プロセスジョブデータの受信順によらずに、処理条件(具体的には薬液温度)が等しいプロセスジョブを連続して実行するための仕組みが備えられている。
薬液キャビネットCC1は、同時に一つの処理ユニットのみに対して薬液が供給可能に構成されていてもよいし、複数の処理ユニットに対して薬液を供給できる能力を備えていてもよい。以下では、薬液キャビネットCC1は、少なくとも2つ(たとえば12個全部)の処理ユニットに対して同時に薬液を供給できる能力を備えている場合を想定する。
Therefore, in this embodiment, there is provided a mechanism for continuously executing process jobs having the same processing conditions (specifically, chemical temperature) regardless of the order of reception of the process job data.
The chemical liquid cabinet CC1 may be configured to be able to supply a chemical liquid to only one processing unit at the same time, or may have a capability of supplying chemical liquids to a plurality of processing units. In the following, it is assumed that the chemical liquid cabinet CC1 has a capability of supplying chemical liquids simultaneously to at least two (for example, all twelve) processing units.

図16AはプロセスジョブPJ1,PJ3の各基板に対して作成される仮タイムテーブルを示し、図16BはプロセスジョブPJ2,PJ4の各基板に対して作成される仮タイムテーブルを示す。スケジューリング機能部25は、プロセスジョブPJ1〜PJ4に対応するプロセスジョブデータを受信すると(ステップS121〜S124。受信工程)、それらに対応する仮タイムテーブルをそれぞれ作成する(ステップS125〜S128)。   FIG. 16A shows a temporary time table created for each substrate of process jobs PJ1 and PJ3, and FIG. 16B shows a temporary time table created for each substrate of process jobs PJ2 and PJ4. When the scheduling function unit 25 receives process job data corresponding to the process jobs PJ1 to PJ4 (steps S121 to S124, a receiving process), it creates temporary time tables corresponding to them (steps S125 to S128).

プロセスジョブPJ1〜PJ4のそれぞれについて、2つの処理ユニットSPIN1〜SPIN2での並行処理を指定して製品基板に対する処理を行うための仮タイムテーブルが作成される。すなわち、処理ユニットSPIN1,SPIN2に処理ブロックをそれぞれ配置した2つの仮タイムテーブルが各基板に対して作成される。また、処理ブロックが配置された期間内において、薬液キャビネットCC1からの薬液が供給される期間には、薬液キャビネットCC1に対して、薬液供給ブロックが配置される。薬液供給ブロックは、薬液キャビネットCC1が薬液供給のために使用されることを表す。   For each of the process jobs PJ1 to PJ4, a provisional time table for performing parallel processing in the two processing units SPIN1 and SPIN2 and performing processing on the product substrate is created. That is, two temporary time tables in which processing blocks are arranged in the processing units SPIN1 and SPIN2 are created for each substrate. In addition, during the period in which the chemical liquid from the chemical liquid cabinet CC1 is supplied within the period in which the processing block is arranged, the chemical liquid supply block is arranged for the chemical liquid cabinet CC1. The chemical solution supply block represents that the chemical solution cabinet CC1 is used for supplying the chemical solution.

仮タイムテーブルには、さらに、薬液温度リソース(仮想リソース)として、薬液キャビネットCC1から60℃の薬液を供給することを表す「CC1薬液60℃」リソースと、薬液キャビネットCC1から80℃の薬液を供給することを表す「CC1薬液80℃」リソースとが設けられている。そして、プロセスジョブPJ1,PJ3に対応する仮タイムテーブルでは、薬液供給ブロックと同じ期間に、「CC1薬液60℃」リソースを占有する「60℃薬液」ブロックが配置されている。同様に、プロセスジョブPJ2,PJ4に対応する仮タイムテーブルでは、薬液供給ブロックと同じ期間に、「CC1薬液80℃」リソースを占有する「80℃薬液」ブロックが配置されている。「60℃薬液」ブロックは、薬液キャビネットCC1が60℃の薬液を供給する状態であることを表す。同様に、「80℃薬液」ブロックは、薬液キャビネットCC1が80℃の薬液を供給する状態であることを表す。   In addition to the chemical temperature resource (virtual resource), the “CC1 chemical 60 ° C.” resource indicating that the chemical solution is supplied from the chemical cabinet CC1 and the chemical solution 80 ° C. are supplied from the chemical cabinet CC1 to the temporary timetable. “CC1 chemical solution 80 ° C.” resource is provided. In the temporary time table corresponding to the process jobs PJ1 and PJ3, the “60 ° C. chemical solution” block occupying the “CC1 chemical solution 60 ° C.” resource is arranged in the same period as the chemical solution supply block. Similarly, in the temporary time table corresponding to the process jobs PJ2 and PJ4, the “80 ° C. chemical solution” block occupying the “CC1 chemical solution 80 ° C.” resource is arranged in the same period as the chemical solution supply block. The “60 ° C. chemical solution” block indicates that the chemical solution cabinet CC1 is in a state of supplying a 60 ° C. chemical solution. Similarly, the “80 ° C. chemical solution” block indicates that the chemical solution cabinet CC1 is in a state of supplying an 80 ° C. chemical solution.

図17は、最初に受信したプロセスジョブPJ1の最初の基板に対応する仮タイムテーブルを構成する全てのブロックを配置した例を示す。
スケジューリング機能部25は、プロセスジョブデータを受信した順序に、各プロセスジョブの仮タイムテーブルを用いてスケジューリングを実行する(処理スケジューリング工程)。すなわち、スケジューリング機能部25は、まず、プロセスジョブPJ1の仮タイムテーブルから取得されたブロックを対応するリソースのスペースに時間軸上において最も早い位置に(すなわち前詰めで)順に配置していく(ステップS129。第1処理スケジューリング工程)。このとき、スケジューリング機能部25は、同一のリソースのスペースでブロックが重なり合わないように各ブロックを配置する。プロセスジョブPJ1は1枚の基板に対する処理を処理ユニットSPIN1またはSPIN2で行うべきことを指定する処理である。処理ユニットSPIN1,SPIN2のいずれにおいても処理が計画されていないときには、処理ブロックはいずれの処理ユニットに対応させてもよい。図17には、処理ブロックを処理ユニットSPIN1に対応するように配置した例を示す(ステップS129a)。
FIG. 17 shows an example in which all the blocks constituting the temporary time table corresponding to the first substrate of the process job PJ1 received first are arranged.
The scheduling function unit 25 executes scheduling using the temporary time table of each process job in the order in which the process job data is received (processing scheduling step). That is, the scheduling function unit 25 first arranges the blocks acquired from the temporary time table of the process job PJ1 in the corresponding resource space in the earliest position on the time axis (that is, left-justified) (step). S129. First process scheduling step). At this time, the scheduling function unit 25 arranges the blocks so that the blocks do not overlap in the same resource space. The process job PJ1 is processing for designating that processing for one substrate should be performed by the processing unit SPIN1 or SPIN2. When processing is not planned in any of the processing units SPIN1 and SPIN2, the processing block may correspond to any processing unit. FIG. 17 shows an example in which processing blocks are arranged so as to correspond to the processing unit SPIN1 (step S129a).

また、プロセスジョブPJ1は、60℃の薬液の使用を指定しているので、処理ブロックを配置した期間内において薬液を使用する期間には、薬液キャビネットCC1に対応付けて薬液供給ブロックが配置される。さらに、同じ期間において、「CC1薬液60℃」リソースに対して、「60℃薬液」ブロックが配置される(ステップS129a)。こうして、プロセスジョブPJ1に対するスケジューリングを終える。   Further, since the process job PJ1 designates the use of a chemical solution at 60 ° C., the chemical solution supply block is arranged in association with the chemical solution cabinet CC1 during the period in which the chemical solution is used within the period in which the processing block is arranged. . Furthermore, in the same period, the “60 ° C. chemical solution” block is arranged for the “CC1 chemical solution 60 ° C.” resource (step S129a). Thus, the scheduling for the process job PJ1 is completed.

もしも、プロセスジョブPJ1が2枚以上の基板に対する処理である場合には、2枚目以降の基板に対しても同様にして処理ユニットSPIN1またはSPIN2での処理が繰り返し計画される。この場合、処理ブロックがより早い時刻に配置できるように、処理ユニットSPIN1またはSPIN2のいずれかを用いる仮タイムテーブルが選択される。
プロセスジョブPJ1に対するスケジューリング(ステップS129)の後、スケジューリング機能部25は、それが60℃の薬液温度での1枚目の基板を含むプロセスジョブの処理スケジューリングであると判断する(ステップS130)。そこで、スケジューリング機能部25は、次の基板の処理を計画する前に、図18に示すように、プロセスジョブPJ1で使用されない「CC1薬液80℃」リソースを占有状態とし、それによって、「CC1薬液80℃」リソースを無効化する(ステップS131。禁止属性情報の生成)。これは、薬液キャビネットCC1が、プロセスジョブPJ1の開始以降の全ての期間において、80℃の薬液供給のための使用が不可能な状態であることを表す。これにより、「CC1薬液80℃」リソースへの薬液温度ブロックの配置が禁止される。それによって、80℃の薬液を用いたプロセスジョブの計画が禁止される。「CC1薬液60℃」リソースは未占有の期間があるので、60℃の薬液を用いる別の基板処理の計画は許容される。
If the process job PJ1 is processing for two or more substrates, the processing in the processing unit SPIN1 or SPIN2 is repeatedly planned in the same manner for the second and subsequent substrates. In this case, a temporary time table using either the processing unit SPIN1 or SPIN2 is selected so that the processing block can be arranged at an earlier time.
After scheduling for the process job PJ1 (step S129), the scheduling function unit 25 determines that it is processing scheduling of the process job including the first substrate at the chemical liquid temperature of 60 ° C. (step S130). Therefore, the scheduling function unit 25 occupies the “CC1 chemical solution 80 ° C.” resource that is not used in the process job PJ1, as shown in FIG. 18, before the next substrate processing is planned. The “80 ° C.” resource is invalidated (step S131, generation of prohibited attribute information). This indicates that the chemical liquid cabinet CC1 cannot be used for supplying chemical liquid at 80 ° C. in all periods after the start of the process job PJ1. This prohibits the placement of the chemical temperature block on the “CC1 chemical 80 ° C.” resource. As a result, the planning of a process job using a chemical solution at 80 ° C. is prohibited. Since the “CC1 chemical 60 ° C.” resource has an unoccupied period, another substrate processing plan using a 60 ° C. chemical is acceptable.

このようにして、次のプロセスジョブPJ2の処理スケジューリングよりも前に、「CC1薬液80℃」リソースの使用を禁止する禁止属性情報が生成され、それによって、80℃の薬液を用いる処理が禁止される。
次に、スケジューリング機能部25は、プロセスジョブPJ1の次に情報(プロセスジョブデータ)が受信されたプロセスジョブPJ2に対するスケジューリングを開始する(ステップS132。第2処理スケジューリング工程)。プロセスジョブPJ2のレシピは、2つの処理ユニットSPIN1〜SPIN2のいずれかでの1枚の基板の処理を指定している。プロセスジョブPJ2について作成された仮タイムテーブルは、処理ユニットSPIN1およびSPIN2のいずれを使う仮タイムテーブルにおいても、「CC1薬液80℃」リソースに配置すべき「80℃薬液」ブロックを含む。ところが、「CC1薬液80℃」リソースは全期間において占有状態となっているため、「80℃薬液」ブロックを配置することができない(ステップS132a)。よって、スケジューリング機能部25は、プロセスジョブPJ2の計画を留保する(ステップS133)。
In this way, before the process scheduling of the next process job PJ2, prohibition attribute information prohibiting the use of the “CC1 chemical solution 80 ° C.” resource is generated, thereby prohibiting the processing using the chemical solution at 80 ° C. The
Next, the scheduling function unit 25 starts scheduling for the process job PJ2 for which information (process job data) is received next to the process job PJ1 (step S132, second process scheduling step). The recipe of the process job PJ2 designates processing of one substrate in one of the two processing units SPIN1 to SPIN2. The temporary time table created for the process job PJ2 includes an “80 ° C. chemical solution” block to be placed in the “CC1 chemical solution 80 ° C.” resource in both of the temporary time tables using the processing units SPIN1 and SPIN2. However, since the “CC1 chemical solution 80 ° C.” resource is in the occupied state for the entire period, the “80 ° C. chemical solution” block cannot be arranged (step S132a). Therefore, the scheduling function unit 25 reserves the plan for the process job PJ2 (step S133).

スケジューリング機能部25は、「80℃薬液」ブロックが「CC1薬液80℃」リソースに配置可能か否かを判断し、それによって、先行するプロセスジョブPJ1で使用される薬液温度と等しいかどうかを判断する。この判断工程は、プロセスジョブPJ2の処理条件とプロセスジョブPJ1の処理条件との異同を判断する工程(カテゴリの異同を判断する工程)である。この具体例では、プロセスジョブPJ2の処理条件がプロセスジョブPJ1の処理条件と異なるので、プロセスジョブPJ2の計画が留保される(ステップS133)。   The scheduling function unit 25 determines whether or not the “80 ° C. chemical solution” block can be placed in the “CC1 chemical solution 80 ° C.” resource, and thereby determines whether or not it is equal to the chemical temperature used in the preceding process job PJ1. To do. This determination step is a step of determining the difference between the processing condition of the process job PJ2 and the processing condition of the process job PJ1 (step of determining a difference in category). In this specific example, since the processing condition of the process job PJ2 is different from the processing condition of the process job PJ1, the plan of the process job PJ2 is reserved (step S133).

次に、図19に示すように、スケジューリング機能部25は、プロセスジョブPJ2の処理スケジューリングを留保した状態で、プロセスジョブPJ2の次に情報(プロセスジョブデータ)が受信されたプロセスジョブPJ3に対するスケジューリングを行う(ステップS134。第2処理スケジューリング工程)。プロセスジョブPJ3のレシピは、処理ユニットSPIN1またはSPIN2での1枚の基板の処理を指定し、かつ60℃の薬液の使用を指定している。プロセスジョブPJ3の仮タイムテーブルは、処理ユニットSPIN1,SPIN2のいずれを用いる場合であっても、「CC1薬液80℃」リソースを使用しないので、適用可能である。すなわち、スケジューリング機能部25は、仮タイムテーブルに含まれる「60℃薬液」ブロックを「CC1薬液60℃」リソースに配置できるかどうかを判断することにより、直前に計画済みのプロセスジョブPJ1の処理条件(薬液温度)と計画中のプロセスジョブPJ3の処理条件(薬液温度)との異同を判断する(ステップS134a。カテゴリの異同を判断する工程)。   Next, as shown in FIG. 19, the scheduling function unit 25 performs scheduling for the process job PJ3 for which information (process job data) has been received next to the process job PJ2 in a state where the processing scheduling of the process job PJ2 is reserved. It performs (step S134. 2nd process scheduling process). The recipe of the process job PJ3 specifies the processing of one substrate in the processing unit SPIN1 or SPIN2, and specifies the use of a chemical solution at 60 ° C. The temporary time table of the process job PJ3 is applicable because it does not use the “CC1 chemical solution 80 ° C.” resource regardless of which of the processing units SPIN1 and SPIN2. That is, the scheduling function unit 25 determines whether the “60 ° C. chemical solution” block included in the temporary time table can be placed in the “CC1 chemical solution 60 ° C.” resource, thereby determining the processing conditions of the process job PJ1 that has been planned immediately before. The difference between (chemical solution temperature) and the processing condition (chemical solution temperature) of the planned process job PJ3 is determined (step S134a, a step of determining the difference between categories).

図19の例では、プロセスジョブPJ1のために処理ユニットSPIN1が用いられているので、処理ユニットSPIN2を用いるよりも処理ユニットSPIN2を用いる方が処理ブロックを早い時刻に配置できる。そこで、スケジューリング機能部25は、処理ユニットSPIN2を用いる仮タイムテーブルを採用し、その仮タイムテーブルを構成するブロックを、同一リソースの他のブロックと重複しないように時間軸上で前詰めに配置していく。これにより、処理ブロックが処理ユニットSPIN2に配置される(ステップS134b)。また、プロセスジョブPJ3は、60℃の薬液の使用を指定しているので、処理ブロックを配置した期間内において薬液を使用する期間には、薬液キャビネットCC1に対応付けて薬液供給ブロックが配置される。さらに、同じ期間において、「CC1薬液60℃」リソースに対して、「60℃薬液」ブロックが配置される(ステップS134b)。こうして、プロセスジョブPJ3に対するスケジューリングを終える。   In the example of FIG. 19, since the processing unit SPIN1 is used for the process job PJ1, it is possible to arrange processing blocks at an earlier time using the processing unit SPIN2 than using the processing unit SPIN2. Therefore, the scheduling function unit 25 adopts a temporary time table using the processing unit SPIN2, and arranges the blocks constituting the temporary time table on the time axis so as not to overlap with other blocks of the same resource. To go. As a result, the processing block is arranged in the processing unit SPIN2 (step S134b). Further, since the process job PJ3 designates the use of the chemical solution at 60 ° C., the chemical solution supply block is arranged in association with the chemical solution cabinet CC1 during the period in which the chemical solution is used within the period in which the processing block is arranged. . Furthermore, in the same period, the “60 ° C. chemical solution” block is arranged for the “CC1 chemical solution 60 ° C.” resource (step S134b). Thus, the scheduling for the process job PJ3 is completed.

プロセスジョブPJ3は、占有状態の「CC1薬液80℃」リソースを使用するブロックを有していないので、「CC1薬液80℃」リソースが占有状態であっても、プロセスジョブPJ3の仮タイムテーブルを構成する全てのブロックを配置することができる。
もしも、プロセスジョブPJ3が2枚以上の基板に対する処理である場合には、2枚目以降の基板に対しても同様にして処理ユニットSPIN1またはSPIN2での処理が繰り返し計画される。
Since the process job PJ3 does not have a block that uses the “CC1 chemical 80 ° C.” resource in the occupied state, even if the “CC1 chemical 80 ° C.” resource is in the occupied state, the temporary job time table of the process job PJ3 is configured. You can place all the blocks you want.
If the process job PJ3 is processing for two or more substrates, the processing in the processing unit SPIN1 or SPIN2 is repeatedly planned in the same manner for the second and subsequent substrates.

プロセスジョブPJ3の最後の基板の仮タイムテーブルを構成する全てのブロックの配置を終えると、スケジューリング機能部25は、プロセスジョブPJ3が60℃の薬液使用を指定する最後のプロセスジョブかどうかを判断する(ステップS135)。たとえば、スケジューリング機能部25は、受信済みのプロセスジョブデータを参照して、スケジューリングが未了のプロセスジョブのなかに60℃の薬液使用を指定しているものがあるかどうかを判断してもよい。また、プロセスジョブPJ3のためのプロセスジョブデータが、60℃の薬液使用を指定する最後のプロセスジョブであることを表す情報を有していてもよい。この場合、スケジューリング機能部25は、その情報に基づいて、プロセスジョブPJ3が60℃の薬液を用いる最後のプロセスジョブかどうかを判断できる。   When the arrangement of all the blocks constituting the temporary time table of the last substrate of the process job PJ3 is completed, the scheduling function unit 25 determines whether or not the process job PJ3 is the last process job that designates use of a chemical solution at 60 ° C. (Step S135). For example, the scheduling function unit 25 may refer to the received process job data to determine whether any process job that has not been scheduled is designated to use a chemical solution at 60 ° C. . Further, the process job data for the process job PJ3 may have information indicating that it is the last process job designating use of a chemical solution at 60 ° C. In this case, the scheduling function unit 25 can determine whether the process job PJ3 is the last process job using a chemical solution at 60 ° C. based on the information.

プロセスジョブPJ3が60℃の薬液使用を指定する最後のプロセスジョブである場合には、スケジューリング機能部25は、「CC1薬液80℃」リソースの全期間占有状態を解除する(ステップS136)。すなわち、80℃の薬液を用いる基板処理の計画を禁止する禁止属性情報が取り消される。それによって、「CC1薬液80℃」リソースが有効になる。   If the process job PJ3 is the last process job that designates the use of the chemical solution at 60 ° C., the scheduling function unit 25 releases the entire period occupation state of the “CC1 chemical solution 80 ° C.” resource (step S136). That is, the prohibition attribute information prohibiting the substrate processing plan using the chemical solution at 80 ° C. is cancelled. Thereby, the “CC1 chemical 80 ° C.” resource becomes effective.

たとえば、図20に示すように、スケジューリング機能部25は、プロセスジョブPJ3の最後の基板に対する薬液供給ブロックの終了時刻以降の期間における「CC1薬液80℃」リソースの占有状態を解除してもよい。これにより、プロセスジョブPJ3の最後の基板に対する薬液供給ブロック終了時以降の期間には、「CC1薬液80℃」リソースへの「80℃薬液」ブロックの配置が可能になる。   For example, as illustrated in FIG. 20, the scheduling function unit 25 may cancel the occupation state of the “CC1 chemical solution 80 ° C.” resource in a period after the end time of the chemical solution supply block for the last substrate of the process job PJ3. Thereby, in the period after the end of the chemical supply block for the last substrate of the process job PJ3, the “80 ° C. chemical solution” block can be placed in the “CC1 chemical 80 ° C.” resource.

ただし、薬液キャビネットCC1において薬液の温度を60℃から80℃に変更するために温度調節のための時間が必要であるので、プロセスジョブPJ3の最後の基板に対する薬液供給ブロックから一定時間以上を開けて80℃の薬液を用いる処理を計画する必要がある。
次に、スケジューリング機能部25は、未計画のプロセスジョブPJ2,PJ4のうち、最先に受信したプロセスジョブPJ2に対するスケジューリングを開始する(ステップS137。第1処理スケジューリング工程)。プロセスジョブPJ2のレシピは、2つの処理ユニットSPIN1またはSPIN2での1枚の基板の処理を指定し、80℃の薬液の使用を指定しているので、仮タイムテーブルは「80℃薬液」ブロックを含む。「CC1薬液80℃」リソースの占有状態が開放されているので、プロセスジョブPJ2の仮タイムテーブルの全てのブロックが配置可能である。しかし、前述のとおり、薬液温度の変更には時間を要するので、スケジューリング機能部25は、図21に示すように、プロセスジョブPJ3の最後の薬液供給ブロックの後に、薬液キャビネットCC1に対応して、液交換(温度調節)ブロックを配置する(ステップS137a)。これにより、薬液キャビネットCC1における薬液温度の変更が計画される。
However, in order to change the temperature of the chemical solution from 60 ° C. to 80 ° C. in the chemical solution cabinet CC1, it takes time to adjust the temperature, so a certain time or more is opened from the chemical supply block for the last substrate of the process job PJ3. It is necessary to plan a treatment using a chemical solution at 80 ° C.
Next, the scheduling function unit 25 starts scheduling for the process job PJ2 received first among the unplanned process jobs PJ2 and PJ4 (step S137, first process scheduling step). The recipe for process job PJ2 specifies the processing of one substrate in two processing units SPIN1 or SPIN2, and specifies the use of a chemical solution at 80 ° C, so the temporary timetable contains the "80 ° C chemical solution" block. Including. Since the occupation state of the “CC1 chemical 80 ° C.” resource is released, all the blocks of the temporary time table of the process job PJ2 can be arranged. However, as described above, since it takes time to change the chemical temperature, the scheduling function unit 25 corresponds to the chemical cabinet CC1 after the last chemical supply block of the process job PJ3, as shown in FIG. A liquid exchange (temperature adjustment) block is arranged (step S137a). Thereby, the change of the chemical | medical solution temperature in the chemical | medical solution cabinet CC1 is planned.

次いで、スケジューリング機能部25は、図21に示すように、プロセスジョブPJ2の最初の基板の仮タイムテーブルを構成するブロックを配置する。このとき、液交換(温度調節)ブロックの直後に薬液供給ブロックが配置されるように、仮タイムテーブルを構成する各ブロックが対応するリソースに対して時間軸上で前詰めに配置される。図21の例では、薬液供給ブロックの配置から逆算される処理ブロックの開始時刻において、処理ユニットSPIN1およびSPIN2のいずれもが使用可能である。したがって、いずれの処理ユニットSPIN1,SPIN2を通る仮タイムテーブルが採用されてもよい。図21には、処理ユニットSPIN1を通る仮タイムテーブルが適用された例を示す(ステップS137b)。   Next, as shown in FIG. 21, the scheduling function unit 25 arranges blocks constituting the temporary time table for the first substrate of the process job PJ2. At this time, each block constituting the temporary time table is arranged on the time axis in front of the corresponding resource so that the chemical supply block is arranged immediately after the liquid exchange (temperature adjustment) block. In the example of FIG. 21, both of the processing units SPIN1 and SPIN2 can be used at the start time of the processing block calculated backward from the arrangement of the chemical solution supply block. Therefore, a temporary time table passing through any of the processing units SPIN1, SPIN2 may be employed. FIG. 21 shows an example in which a temporary time table passing through the processing unit SPIN1 is applied (step S137b).

また、プロセスジョブPJ2は、80℃の薬液の使用を指定しているので、薬液供給ブロックと同じ期間において、「CC1薬液80℃」リソースに対して、「80℃薬液」ブロックが配置される(ステップS137b)。こうして、プロセスジョブPJ2に対するスケジューリングを終える。
もしも、プロセスジョブPJ2が2枚以上の基板に対する処理である場合には、2枚目以降の基板に対しても同様にして処理ユニットSPIN1またはSPIN2での処理が繰り返し計画される。この場合、処理ブロックがより早い時刻に配置できるように、処理ユニットSPIN1またはSPIN2のいずれかを用いる仮タイムテーブルが選択される。
Further, since the process job PJ2 designates the use of the chemical solution at 80 ° C., the “80 ° C. chemical solution” block is arranged for the “CC1 chemical solution 80 ° C.” resource in the same period as the chemical solution supply block ( Step S137b). Thus, the scheduling for the process job PJ2 is completed.
If the process job PJ2 is processing for two or more substrates, the processing in the processing unit SPIN1 or SPIN2 is repeatedly planned in the same manner for the second and subsequent substrates. In this case, a temporary time table using either the processing unit SPIN1 or SPIN2 is selected so that the processing block can be arranged at an earlier time.

プロセスジョブPJ2のスケジューリングの後、スケジューリング機能部25は、プロセスジョブPJ2が80℃の薬液で処理すべき最初の基板を含むプロセスジョブかどうかを判断する。プロセスジョブPJ2の前の薬液処理は60℃の薬液を用いているので、この判断が肯定される(ステップS138)。そこで、スケジューリング機能部25は、プロセスジョブPJ2のスケジューリングの後、次のプロセスジョブの処理を計画する前に、プロセスジョブPJ2で使用されない「CC1薬液60℃」リソースを占有状態とする禁止属性情報を生成し、それによって、「CC1薬液60℃」リソースを無効化する(ステップS139。図22を併せて参照)。これは、薬液キャビネットCC1が、プロセスジョブPJ2の開始以降の全ての期間において、60℃の薬液供給のための使用が不可能な状態であることを表す。これにより、プロセスジョブPJ2以降、「CC1薬液60℃」リソースへのブロックの配置が禁止される。それによって、60℃の薬液を用いたプロセスジョブの計画が禁止される。「CC1薬液80℃」リソースは、プロセスジョブPJ2以降に未占有の期間があるので、80℃の薬液を用いる別のプロセスジョブの計画は許容される。   After scheduling the process job PJ2, the scheduling function unit 25 determines whether or not the process job PJ2 is a process job including the first substrate to be processed with a chemical solution at 80 ° C. Since the chemical solution process before the process job PJ2 uses a chemical solution at 60 ° C., this determination is affirmed (step S138). Therefore, after scheduling the process job PJ2, the scheduling function unit 25 sets the prohibition attribute information for occupying the “CC1 chemical 60 ° C.” resource not used in the process job PJ2 before planning the processing of the next process job. And thereby invalidate the “CC1 chemical 60 ° C.” resource (step S139; see also FIG. 22). This indicates that the chemical liquid cabinet CC1 is in a state in which it cannot be used for supplying chemical liquid at 60 ° C. in all periods after the start of the process job PJ2. Thereby, after the process job PJ2, the placement of the block in the “CC1 chemical 60 ° C.” resource is prohibited. As a result, the planning of a process job using a chemical solution at 60 ° C. is prohibited. Since the “CC1 chemical solution 80 ° C.” resource has an unoccupied period after the process job PJ2, another process job plan using the chemical solution of 80 ° C. is allowed.

次に、スケジューリング機能部25は、図23に示すように、未計画のプロセスジョブPJ4に対するスケジューリングを開始する(ステップS140。第2処理スケジューリング工程)。プロセスジョブPJ4のレシピは、処理ユニットSPIN1またはSPIN2での1枚の基板の処理を指定し、かつ80℃の薬液の使用を指定している。スケジューリング機能部25は、プロセスジョブPJ4の仮タイムテーブルを構成する全てのブロックが対応するリソースに対して配置可能かどうかを判断する。   Next, as shown in FIG. 23, the scheduling function unit 25 starts scheduling for the unplanned process job PJ4 (step S140, second process scheduling step). The recipe of the process job PJ4 specifies the processing of one substrate in the processing unit SPIN1 or SPIN2, and specifies the use of a chemical solution at 80 ° C. The scheduling function unit 25 determines whether or not all the blocks constituting the temporary time table of the process job PJ4 can be arranged for the corresponding resource.

この判断は、プロセスジョブPJ4の仮タイムテーブルが有する「80℃薬液」ブロックを、それに対応する「CC1薬液80℃」リソースに配置可能であるかどうかの判断を含む。プロセスジョブPJ4の仮タイムテーブルは、処理ユニットSPIN1,SPIN2のいずれを用いる場合であっても、「CC1薬液60℃」リソースを使用しない。すなわち、プロセスジョブPJ4の仮タイムテーブルは、「80℃薬液」ブロックを含み、「60℃薬液」ブロックを含まない。そのため、スケジューリング機能部25は、「80℃薬液」ブロックが配置可能であると判断する(ステップS140a)。この判断は、プロセスジョブPJ4の処理条件がプロセスジョブPJ3の処理条件と同じであるとの判断(カテゴリが同じであるとの判断)にほかならない。   This determination includes determination of whether or not the “80 ° C. chemical solution” block included in the temporary time table of the process job PJ4 can be placed in the corresponding “CC1 chemical solution 80 ° C.” resource. The temporary time table of the process job PJ4 does not use the “CC1 chemical 60 ° C.” resource regardless of which of the processing units SPIN1 and SPIN2. That is, the temporary time table of the process job PJ4 includes the “80 ° C. chemical solution” block and does not include the “60 ° C. chemical solution” block. Therefore, the scheduling function unit 25 determines that the “80 ° C. chemical solution” block can be arranged (step S140a). This determination is nothing but a determination that the processing conditions of the process job PJ4 are the same as the processing conditions of the process job PJ3 (determination that the categories are the same).

そこで、スケジューリング機能部25は、「80℃薬液」ブロックを「CC1薬液80℃」リソースに配置するとともに、処理ユニットSPIN1またはSPIN2で処理を実行するようにプロセスジョブPJ4の基板処理を計画する(ステップS140b)。
図23の例では、プロセスジョブPJ2のために処理ユニットSPIN1が用いられているので、処理ユニットSPIN2を用いるよりも処理ユニットSPIN2を用いる方が処理ブロックを早い時刻に配置できる。そこで、スケジューリング機能部25は、処理ユニットSPIN2を用いる仮タイムテーブルを採用し、その仮タイムテーブルを構成するブロックを、同一リソースの他のブロックと重複しないように時間軸上で前詰めに配置していく。これにより、処理ブロックが処理ユニットSPIN2に配置される。
Therefore, the scheduling function unit 25 places the “80 ° C. chemical solution” block in the “CC1 chemical solution 80 ° C.” resource, and plans the substrate processing of the process job PJ4 so that the processing is executed by the processing unit SPIN1 or SPIN2 (step S1). S140b).
In the example of FIG. 23, since the processing unit SPIN1 is used for the process job PJ2, it is possible to arrange processing blocks at an earlier time using the processing unit SPIN2 than using the processing unit SPIN2. Therefore, the scheduling function unit 25 adopts a temporary time table using the processing unit SPIN2, and arranges the blocks constituting the temporary time table on the time axis so as not to overlap with other blocks of the same resource. To go. Thereby, the processing block is arranged in the processing unit SPIN2.

また、プロセスジョブPJ4は、80℃の薬液の使用を指定しているので、処理ブロックを配置した期間内において薬液を使用する期間には、薬液キャビネットCC1に対応付けて薬液供給ブロックが配置される。さらに、同じ期間において、「CC1薬液80℃」リソースに対して、「80℃薬液」ブロックが配置される。こうして、プロセスジョブPJ4に対するスケジューリングを終える。   Further, since the process job PJ4 designates the use of the chemical solution at 80 ° C., the chemical solution supply block is arranged in association with the chemical solution cabinet CC1 during the period in which the chemical solution is used within the period in which the processing block is arranged. . Furthermore, in the same period, the “80 ° C. chemical solution” block is arranged for the “CC1 chemical solution 80 ° C.” resource. Thus, the scheduling for the process job PJ4 is completed.

プロセスジョブPJ4は、占有状態の「CC1薬液60℃」リソースを使用するブロックを有していないので、「CC1薬液60℃」リソースが占有状態であっても、プロセスジョブPJ4の仮タイムテーブルを構成する全てのブロックを配置することができる。
もしも、プロセスジョブPJ4が2枚以上の基板に対する処理である場合には、2枚目以降の基板に対しても同様にして処理ユニットSPIN1またはSPIN2での処理が繰り返し計画される。
Since the process job PJ4 does not have a block that uses the “CC1 chemical 60 ° C.” resource in the occupied state, even if the “CC1 chemical 60 ° C.” resource is in the occupied state, the temporary time table of the process job PJ4 is configured. You can place all the blocks you want.
If the process job PJ4 is processing for two or more substrates, the processing in the processing unit SPIN1 or SPIN2 is repeatedly planned in the same manner for the second and subsequent substrates.

プロセスジョブPJ4の最後の基板の仮タイムテーブルを構成する全てのブロックの配置を終えると、スケジューリング機能部25は、プロセスジョブPJ4が80℃の薬液使用を指定する最後のプロセスジョブかどうかを判断する(ステップS141)。たとえば、スケジューリング機能部25は、受信済みのプロセスジョブデータを参照して、スケジューリングが未了のプロセスジョブのなかに80℃の薬液使用を指定しているものがあるかどうかを判断してもよい。また、プロセスジョブPJ4のためのプロセスジョブデータが、80℃の薬液使用を指定する最後のプロセスジョブであることを表す情報を有していてもよい。この場合、スケジューリング機能部25は、その情報に基づいて、プロセスジョブPJ4が80℃の薬液を用いる最後のプロセスジョブかどうかを判断できる。   When the arrangement of all the blocks constituting the provisional time table of the last substrate of the process job PJ4 is completed, the scheduling function unit 25 determines whether or not the process job PJ4 is the last process job designating use of a chemical solution at 80 ° C. (Step S141). For example, the scheduling function unit 25 may refer to the received process job data to determine whether any process job that has not been scheduled has designated use of a chemical solution at 80 ° C. . Further, the process job data for the process job PJ4 may have information indicating that it is the last process job that specifies the use of the chemical solution at 80 ° C. In this case, the scheduling function unit 25 can determine whether the process job PJ4 is the last process job using a chemical solution at 80 ° C. based on the information.

プロセスジョブPJ4が80℃の薬液使用を指定する最後のプロセスジョブである場合には、プロセスジョブPJ4の最後の基板の処理を計画した後、スケジューリング機能部25は、「CC1薬液60℃」リソースの全期間占有状態を解除する(ステップS142)。たとえば、図24に示すように、スケジューリング機能部25は、プロセスジョブPJ4の最後の基板に対する薬液供給ブロックの終了時刻以降の期間における「CC1薬液60℃」リソースの占有状態を解除してもよい。これにより、プロセスジョブPJ4の最後の基板に対する薬液供給ブロック終了時以降の期間には、「CC1薬液60℃」リソースへの「60℃薬液」ブロックの配置が可能になる。ただし、実際には、「60℃薬液」ブロックを配置する前に、液交換(温度調節)ブロックの配置が必要である。   If the process job PJ4 is the last process job that designates the use of a chemical solution at 80 ° C., after scheduling the processing of the last substrate of the process job PJ4, the scheduling function unit 25 sets the resource of the “CC1 chemical solution 60 ° C.” resource. The entire period occupation state is released (step S142). For example, as illustrated in FIG. 24, the scheduling function unit 25 may release the occupation state of the “CC1 chemical 60 ° C.” resource in a period after the end time of the chemical supply block for the last substrate of the process job PJ4. Thereby, in the period after the end of the chemical supply block for the last substrate of the process job PJ4, the “60 ° C. chemical solution” block can be arranged in the “CC1 chemical 60 ° C.” resource. However, actually, before the “60 ° C. chemical solution” block is arranged, the liquid exchange (temperature adjustment) block needs to be arranged.

図25は、以下のようなプロセスジョブPJ1,PJ2,PJ3,PJ4を指定するプロセスジョブデータをこの順序でホストコンピュータ24から受信し、スタート指示された場合のプロセスジョブ実行順序を説明するための図である。
PJ1:薬液を60℃で使用して基板を処理
PJ2:薬液を60℃で使用して基板を処理
PJ3:薬液を80℃で使用して基板を処理
PJ4:薬液を60℃で使用して基板を処理
プロセスジョブPJ1,PJ2はいずれも60℃の薬液を使用するので、その順序で計画される。プロセスジョブPJ3は80℃の薬液を使用するので、プロセスジョブPJ1,PJ2の実行後に液交換(温度調節)が必要になる。そこで、図25(b)(実施例)に示すように、60℃の薬液を使用するプロセスジョブPJ4を先行して実行することにより、液交換(温度調節)が一回だけとなり、プロセスジョブPJ1〜PJ4の全体の処理時間を短縮できる。
FIG. 25 is a diagram for explaining the process job execution order when process job data specifying the following process jobs PJ1, PJ2, PJ3, and PJ4 is received from the host computer 24 in this order and a start instruction is given. It is.
PJ1: Processing substrate using chemical solution at 60 ° C PJ2: Processing substrate using chemical solution at 60 ° C PJ3: Processing substrate using chemical solution at 80 ° C PJ4: Substrate using chemical solution at 60 ° C Since both the process jobs PJ1, PJ2 use a chemical solution of 60 ° C., they are planned in that order. Since the process job PJ3 uses a chemical solution at 80 ° C., liquid replacement (temperature adjustment) is necessary after the execution of the process jobs PJ1 and PJ2. Therefore, as shown in FIG. 25 (b) (example), by executing the process job PJ4 using the chemical solution at 60 ° C. in advance, the liquid change (temperature adjustment) is performed only once, and the process job PJ1 The overall processing time of .about.PJ4 can be shortened.

プロセスジョブPJ1,プロセスジョブPJ2の計画を終えた時点でプロセスジョブPJ4に対応するプロセスジョブデータが未受信の場合、スケジューリング機能部25は、プロセスジョブPJ3の計画、より具体的には、液交換(温度調節)ブロックの配置を、所定の待機時間だけ待機する。この待機時間は、液交換(温度調節)ブロックの時間を限度に定めてもよい。   When the process job data corresponding to the process job PJ4 has not been received when the planning of the process job PJ1 and the process job PJ2 is completed, the scheduling function unit 25 sets the plan of the process job PJ3, more specifically, liquid replacement ( (Temperature adjustment) Wait for a predetermined waiting time before placing the block. This waiting time may be determined by limiting the time of the liquid exchange (temperature adjustment) block.

プロセスジョブPJ2の計画後、液交換(温度調節)ブロックの時間に等しく定めた待機時間以内にプロセスジョブPJ4のプロセスジョブデータを受信した場合には、図25(b)に示すように、プロセスジョブPJ1〜PJ4を受信順に計画して最短で処理を終える図25(a)の比較例の場合よりも早くプロセスジョブPJ1〜PJ4の処理が終わる。
液交換(温度調節)ブロックの時間だけ待機してプロセスジョブPJ4のプロセスジョブデータを受信し、プロセスジョブPJ4をプロセスジョブPJ3に先行して計画した例を図25(c)(実施例)に示す。この場合、プロセスジョブPJ1〜PJ4を受信順に計画して最短で処理を終える図25(a)の比較例の場合とほぼ同時刻にプロセスジョブPJ1〜PJ4の処理が終わる。
When the process job data of the process job PJ4 is received within the waiting time set equal to the time of the liquid exchange (temperature adjustment) block after the process job PJ2 is planned, as shown in FIG. The processing of the process jobs PJ1 to PJ4 is completed earlier than in the comparative example of FIG. 25A in which PJ1 to PJ4 are planned in the order of reception and the processing is completed in the shortest time.
FIG. 25C shows an example in which the process job data of the process job PJ4 is received after waiting for the time of the liquid exchange (temperature adjustment) block, and the process job PJ4 is planned prior to the process job PJ3. . In this case, the processing of the process jobs PJ1 to PJ4 is completed at approximately the same time as in the comparative example of FIG. 25A in which the process jobs PJ1 to PJ4 are planned in the order of reception and the processing is completed in the shortest time.

液交換(温度調節)ブロックの時間を超える待機時間を設定すると、液交換所要時間を超えて待機してプロセスジョブPJ4のプロセスジョブデータを受信した場合には、図25(d)(実施例)に示すように、全体の処理時間が図25(a)の比較例よりも長くなる。
また、液交換ブロックに等しい待機時間を設定した場合に、その待機時間後にプロセスジョブPJ4のプロセスジョブデータを受信したときには、図25(e)(実施例)に示すように、プロセスジョブPJ3がプロセスジョブPJ4よりも前に計画されることになる。その結果、2回の液交換ブロックの配置が必要になり、全体の処理時間は、図25(a)の比較例よりも長くなる。
When the standby time exceeding the time of the liquid exchange (temperature control) block is set, when the process job data of the process job PJ4 is received after waiting for the time required for the liquid exchange, FIG. 25 (d) (Example) As shown, the overall processing time is longer than that of the comparative example of FIG.
In addition, when a standby time equal to the liquid replacement block is set and the process job data of the process job PJ4 is received after the standby time, the process job PJ3 is processed as shown in FIG. It is planned before the job PJ4. As a result, it is necessary to arrange the liquid exchange block twice, and the entire processing time becomes longer than that of the comparative example of FIG.

したがって、或るプロセスジョブの計画終了から次のプロセスジョブデータの受信までの待機時間の期待値が液交換ブロックの時間以下であれば、この実施形態に従ってプロセスジョブを計画することによって、全体の処理時間を短縮して基板処理装置の生産性を向上できる。たとえ、その待機時間の期待値が液交換ブロックの時間を超える場合であっても、液交換回数を少なくできる利益がある。液交換回数を少なくすることにより、たとえば、液交換(温度調節)に要するエネルギーを削減できる。   Therefore, if the expected value of the waiting time from the end of the planning of a certain process job to the reception of the next process job data is equal to or less than the time of the liquid exchange block, the entire processing is performed by planning the process job according to this embodiment It is possible to shorten the time and improve the productivity of the substrate processing apparatus. Even if the expected value of the waiting time exceeds the time of the liquid exchange block, there is an advantage that the number of liquid exchanges can be reduced. By reducing the number of times of liquid replacement, for example, energy required for liquid replacement (temperature adjustment) can be reduced.

また、ホストコンピュータからプロセスジョブPJ4の受信時刻に関する情報が与えられれば、スケジューリング機能部25は、プロセスジョブPJ4のデータ受信を待機すべきか否かを判断できる。すなわち、プロセスジョブPJ2の終了から液交換所要時間以内にプロセスジョブPJ4のデータが受信できるならば、スケジューリング機能部25は、プロセスジョブPJ3の計画を保留して、プロセスジョブPJ4の受信を待機し、プロセスジョブPJ3に先行してプロセスジョブPJ4を計画すればよい。一方、プロセスジョブPJ2の終了から液交換所要時間以内にプロセスジョブPJ4のデータが受信できないのであれば、スケジューリング機能部25は、プロセスジョブPJ4の受信を待つことなく、プロセスジョブPJ3の計画を開始すればよい。   In addition, when information regarding the reception time of the process job PJ4 is given from the host computer, the scheduling function unit 25 can determine whether or not to wait for data reception of the process job PJ4. That is, if the data of the process job PJ4 can be received within the time required for the liquid exchange from the end of the process job PJ2, the scheduling function unit 25 suspends the plan of the process job PJ3 and waits for the reception of the process job PJ4. The process job PJ4 may be planned prior to the process job PJ3. On the other hand, if the data of the process job PJ4 cannot be received within the time required for liquid replacement from the end of the process job PJ2, the scheduling function unit 25 starts planning the process job PJ3 without waiting for the reception of the process job PJ4. That's fine.

以上のように、この実施形態によれば、基板処理装置のコンピュータ20は、ホストコンピュータ24からプロセスジョブデータを受信し、受信したプロセスジョブデータによって規定されるプロセスジョブの処理スケジュールを作成する。処理スケジュールを作成するスケジューリング機能部25は、基板処理装置に備えられているユニットに対応する実リソースのほかに、基板処理装置に備えられているユニットとは別の仮想リソースを設けて、それらの実リソースおよび仮想リソースに対するスケジューリングを行う。具体的には、仮想リソースとして、処理ユニットSPIN1〜SPIN2で処理される基板種を表す製品リソースが設けられる。具体的には、製品リソースとして、「SPIN1製品」リソースおよび「SPIN2製品」リソースが設けられる。また、別の仮想リソースとして、薬液キャビネットCC1が供給する薬液の温度を表す薬液温度リソースが設けられる。具体的には、薬液温度リソースとして、「60℃薬液」リソースと、「80℃薬液」リソースとが設けられる。   As described above, according to this embodiment, the computer 20 of the substrate processing apparatus receives the process job data from the host computer 24 and creates a process job processing schedule defined by the received process job data. The scheduling function unit 25 for creating a processing schedule provides virtual resources other than the units provided in the substrate processing apparatus in addition to the real resources corresponding to the units provided in the substrate processing apparatus, Schedule real resources and virtual resources. Specifically, a product resource representing a substrate type processed by the processing units SPIN1 and SPIN2 is provided as a virtual resource. Specifically, a “SPIN1 product” resource and a “SPIN2 product” resource are provided as product resources. In addition, as another virtual resource, a chemical temperature resource indicating the temperature of the chemical liquid supplied by the chemical liquid cabinet CC1 is provided. Specifically, a “60 ° C. chemical” resource and an “80 ° C. chemical” resource are provided as chemical temperature resources.

スケジューリング機能部25は、プロセスジョブデータ中のレシピに含まれる基板種情報に基づいて、処理ユニットで製品基板を処理する期間に、当該処理ユニット関連付けて、対応する製品リソースを使用する処理スケジュールを作成する。具体的には、処理ユニットに対して処理ブロックを配置する期間と同じ期間に、当該製品リソースに対して製品処理ブロックを配置する。   Based on the substrate type information included in the recipe in the process job data, the scheduling function unit 25 creates a processing schedule that uses the corresponding product resource in association with the processing unit during the period of processing the product substrate in the processing unit. To do. Specifically, the product processing block is arranged for the product resource in the same period as the processing block is arranged for the processing unit.

また、スケジューリング機能部25は、プロセスジョブデータに含まれるレシピによって指定される薬液温度に基づいて、薬液キャビネットCC1から薬液を供給する期間に、当該薬液キャビネットCC1に関連付けて、対応する薬液温度リソースを使用する処理スケジュールを作成する。具体的には、薬液キャビネットCC1に対して薬液供給ブロックを配置する期間と同じ期間に、当該薬液温度リソースに対して、薬液温度ブロックを配置する。   Further, the scheduling function unit 25 associates the chemical temperature resource with the chemical liquid cabinet CC1 in a period in which the chemical liquid is supplied from the chemical liquid cabinet CC1 based on the chemical liquid temperature specified by the recipe included in the process job data. Create a processing schedule to use. Specifically, the chemical liquid temperature block is arranged for the chemical liquid temperature resource in the same period as the chemical liquid supply block is arranged for the chemical liquid cabinet CC1.

一方、スケジューリング機能部25は、非製品基板の処理を計画すると、その非製品基板を処理する処理ユニットの製品リソースを無効化する。具体的には、製品リソースの全期間を占有状態として、製品リソースへの製品処理ブロックの配置を禁止する。これにより、製品リソースを使用するプロセスジョブ、すなわち、製品基板を処理するためのプロセスジョブは、当該処理ユニットには計画できなくなる。その一方で、製品リソースを使用しないプロセスジョブ、すなわち、非製品基板を処理するためのプロセスジョブは、当該処理ユニットに計画できる。これにより、非製品基板を処理する複数のプロセスジョブが連続するようにスケジューリングできる。つまり、たとえ、非製品基板の処理を規定する2つのプロセスジョブデータの受信の間に、製品基板の処理を規定する別のプロセスジョブデータの受信が割り込んだとしても、それらの2つの非製品基板処理のためのプロセスジョブを連続させることができる。   On the other hand, when scheduling the non-product substrate processing, the scheduling function unit 25 invalidates the product resource of the processing unit that processes the non-product substrate. Specifically, the entire period of the product resource is set to the occupied state, and the placement of the product processing block on the product resource is prohibited. As a result, a process job that uses product resources, that is, a process job for processing a product substrate cannot be planned in the processing unit. On the other hand, process jobs that do not use product resources, that is, process jobs for processing non-product substrates, can be planned in the processing unit. Thereby, it is possible to schedule a plurality of process jobs for processing non-product substrates to be continuous. That is, even if reception of another process job data defining the processing of a product substrate is interrupted between the reception of two process job data defining the processing of a non-product substrate, the two non-product substrates Process jobs for processing can be continued.

また、スケジューリング機能部25は、レシピで指定された薬液温度に対応する薬液温度ブロックを、それに対応する温度の薬液温度リソースに配置すると、他の薬液温度リソースを無効化する。具体的には、当該他の薬液温度リソースの全期間を占有状態として、当該他の薬液温度リソースへの薬液温度ブロックの配置を禁止する。これにより、当該他の薬液温度リソースを使用するプロセスジョブ、すなわち、当該他の温度の薬液での基板処理を指定するプロセスジョブは計画できなくなる。その一方で、当該レシピ指定薬液温度と同じ温度の薬液で基板を処理するプロセスジョブは、引き続き計画することができる。これにより、同じ温度の薬液を用いる複数のプロセスジョブが連続するようにスケジューリングできる。つまり、たとえ、同じ温度の薬液での基板処理を規定するレシピを有する2つのプロセスジョブデータの受信の間に、他の温度の薬液での基板処理を規定するレシピを有する別のプロセスジョブデータの受信が割り込んだとしても、それらの2つの同じ温度の薬液処理のためのプロセスジョブを連続させることができる。   Moreover, the scheduling function part 25 will invalidate other chemical | medical solution temperature resources, if the chemical | medical solution temperature block corresponding to the chemical | medical solution temperature designated by the recipe is arrange | positioned to the chemical | medical solution temperature resource of the temperature corresponding to it. Specifically, the entire period of the other chemical liquid temperature resource is occupied, and the placement of the chemical liquid temperature block on the other chemical liquid temperature resource is prohibited. As a result, a process job that uses the other chemical solution temperature resource, that is, a process job that designates substrate processing with a chemical solution at the other temperature cannot be planned. On the other hand, a process job for processing a substrate with a chemical solution having the same temperature as the recipe-designated chemical solution temperature can be continuously planned. Thereby, it can schedule so that the several process job using the chemical | medical solution of the same temperature may continue. In other words, even if two process job data having a recipe that defines a substrate process with a chemical solution at the same temperature are received, another process job data having a recipe that defines a substrate process with a chemical solution at another temperature is received. Even if reception is interrupted, these two process jobs for the same temperature chemical processing can be continued.

このように、プロセスジョブのカテゴリ(基板種、薬液温度)に対応した属性情報として、異なるカテゴリ(基板種、薬液温度)の仮想リソースを無効化する禁止属性情報が生成される。そして、その禁止属性情報に基づいて、その後のプロセスジョブのスケジューリングが行われる。これにより、先に情報を受信したプロセスジョブのカテゴリに応じて、その後に情報を受信したプロセスジョブを適切に計画することができる。薬液温度の仮想リソースを無効化する禁止属性情報は、計画済みのプロセスジョブの実行のために無効となる処理条件(上記の場合には薬液温度)を表す無効条件情報の一例である。禁止属性情報が解除されれば、制限がなくなり、異なるカテゴリのプロセスジョブのスケジューリングが可能になる。   In this way, prohibited attribute information for invalidating virtual resources of different categories (substrate type, chemical solution temperature) is generated as attribute information corresponding to the process job category (substrate type, chemical solution temperature). Based on the prohibition attribute information, subsequent process job scheduling is performed. Thereby, according to the category of the process job which received information previously, the process job which received information after that can be planned appropriately. The prohibition attribute information for invalidating the chemical temperature virtual resource is an example of invalid condition information indicating a processing condition (chemical liquid temperature in the above case) that becomes invalid for execution of a planned process job. If the prohibition attribute information is canceled, there is no restriction, and it becomes possible to schedule process jobs of different categories.

より具体的には、先に情報が受信されて計画されたプロセスジョブのカテゴリに応じて、カテゴリの異なるプロセスジョブの実行を留保できる。たとえば、非製品基板を用いた処理ユニットのメンテナンス処理が所要回数だけ連続するのを待って、製品基板の処理を当該処理ユニットにおいて計画できる。それにより、適切にメンテナンスされた状態の処理ユニットで製品基板を処理することができ、それにより、品質の高い基板処理を実現できる。また、第1温度の薬液での処理を規定する複数のプロセスジョブを連続して処理した後に、第2温度の薬液での処理を規定するプロセスジョブを計画できる。それにより、薬液温度の変更回数を少なくできるので、基板処理装置の生産性を向上できる。   More specifically, it is possible to reserve execution of process jobs having different categories according to the category of the process job that has been previously received and planned. For example, processing substrate processing can be planned in the processing unit after waiting for maintenance processing of the processing unit using the non-product substrate to continue for a required number of times. As a result, the product substrate can be processed by the processing unit properly maintained, thereby realizing high-quality substrate processing. In addition, after a plurality of process jobs that prescribe the treatment with the chemical solution at the first temperature are successively processed, a process job that prescribes the treatment with the chemical solution at the second temperature can be planned. Thereby, since the frequency | count of change of chemical | medical solution temperature can be decreased, the productivity of a substrate processing apparatus can be improved.

また、この実施形態では、一つのプロセスジョブの処理スケジュールが作成されると、次のプロセスジョブの処理スケジュールを作成する前に、必要に応じて、すなわち、プロセスジョブのカテゴリに応じて、仮想リソースの無効化(禁止属性情報の生成)が行われる。これにより、無駄なスケジューリング処理や、基板処理装置の無駄な動作を回避できる。   In this embodiment, when a process schedule for one process job is created, a virtual resource is created as necessary, that is, according to the category of the process job, before creating the process schedule for the next process job. Is invalidated (prohibited attribute information is generated). Thereby, useless scheduling processing and useless operation of the substrate processing apparatus can be avoided.

仮想リソースを無効化するタイミングが遅い場合、無効化されることになる仮想リソースを使う別のプロセスジョブのスケジューリング処理が当該仮想リソースの無効化よりも先行するおそれがある。この場合には、当該別のプロセスジョブのスケジューリングを事後的に取り消すことになるから、無駄なスケジューリング処理が生じる。また、無効化されることになる仮想リソースを使う別のプロセスジョブが計画され、さらに実行開始されてから、その仮想リソースを無効化すると、基板処理装置の無駄な動作が生じる。具体的には、非製品基板を処理ユニットSPIN1で処理した後に、製品基板を処理ユニットSPIN1の前まで搬送した後に製品リソースが無効化されると、その製品基板の搬送動作が無駄になる。そればかりでなく、その製品基板をたとえば基板収容器まで一旦戻す基板搬送動作が生じるから、処理効率の悪化を招く。しかも、余分な搬送動作によって、基板が不必要な汚染を受けるリスクもある。そこで、仮想リソースの無効化は、次のプロセスジョブのスケジューリングを開始するよりも前に行うことで、前述のような無駄な処理および動作を回避できる。また、或るプロセスジョブが計画された処理ユニットにおいて、別のカテゴリのプロセスジョブを実行するための無駄な準備動作が計画されることを回避することもできる。   When the timing for invalidating the virtual resource is late, there is a possibility that the scheduling process of another process job using the virtual resource to be invalidated precedes the invalidation of the virtual resource. In this case, since the scheduling of the other process job is canceled afterwards, useless scheduling processing occurs. Further, when another process job that uses the virtual resource to be invalidated is planned and started to be executed, the virtual resource is invalidated, resulting in a wasteful operation of the substrate processing apparatus. Specifically, after the non-product substrate is processed by the processing unit SPIN1, if the product resource is invalidated after the product substrate is transferred to the front of the processing unit SPIN1, the transfer operation of the product substrate is wasted. Not only that, but a substrate transport operation for returning the product substrate to, for example, a substrate container occurs, resulting in deterioration of processing efficiency. In addition, there is a risk that the substrate is subjected to unnecessary contamination due to an extra transport operation. Therefore, by invalidating the virtual resource before starting the scheduling of the next process job, it is possible to avoid the above-described useless processing and operation. It is also possible to avoid planning a useless preparation operation for executing another category of process job in a processing unit in which a certain process job is planned.

仮想リソースの無効化(禁止属性情報の生成)は、次のプロセスジョブデータを受信するよりも前に実行されてもよい。この場合、前述のような無駄な処理および動作をより確実に回避できる。
以上、この発明の一実施形態について説明してきたが、この発明はさらに他の形態で実施することもできる。たとえば、前述の実施形態で示した基板処理装置の構成や基板処理内容は一例に過ぎず、基板処理装置は他の構成を採ることができ、かつ別の基板処理内容に対してもこの発明を適用できる。
The invalidation of virtual resources (generation of prohibited attribute information) may be performed before receiving the next process job data. In this case, the wasteful processing and operation as described above can be avoided more reliably.
As mentioned above, although one Embodiment of this invention was described, this invention can also be implemented with another form. For example, the configuration of the substrate processing apparatus and the substrate processing contents shown in the above-described embodiments are merely examples, and the substrate processing apparatus can take other configurations, and the present invention can be applied to other substrate processing contents. Applicable.

また、前述の実施形態では、仮想リソースおよびその仮想リソースに配置すべき仮想ブロック(製品処理ブロック、薬液温度ブロック)を用い、さらに仮想リソースを必要に応じて占有状態として無効化することによって、複数のプロセスジョブ間のカテゴリの異同が判断されている。しかし、このような構成は、一例であり、例えば、スケジューリング機能部25が、複数のプロセスジョブのレシピの内容を比較して、カテゴリの異同を判断してもよい。ただし、仮想リソース等を用いる構成は、実リソースに対する処理スケジューリングと同様の処理でカテゴリの異同判別を併せて行えるので、処理の実行のためのプログラミングが容易であるという利点がある。たとえば、仮想リソースを占有状態とする処理は、処理ユニット等の実リソースを異常発生状態として無効化する処理と同様の処理で実現できる。   In the above-described embodiment, a plurality of virtual resources are used by disabling the virtual resources as occupied states as needed using virtual resources (virtual blocks (product processing blocks, chemical liquid temperature blocks) to be arranged in the virtual resources). The category differences between the process jobs are determined. However, such a configuration is an example, and for example, the scheduling function unit 25 may compare the contents of recipes of a plurality of process jobs and determine whether the categories are different. However, the configuration using a virtual resource or the like has an advantage that programming for execution of the process is easy because the category difference determination can be performed together with the process similar to the process scheduling for the real resource. For example, the process of setting the virtual resource to the occupied state can be realized by the same process as the process of invalidating the real resource such as the processing unit as the abnormality occurrence state.

また、前述の実施形態では、薬液キャビネットが一つだけ設けられた構成について説明したが、複数の薬液キャビネットが備えられてもよい。この場合には、薬液キャビネットごとに、薬液温度リソースを設け、使用する薬液キャビネットおよび使用する薬液温度を指定した処理スケジューリングを作成すればよい。
また、前述の実施形態では、レシピにおいて処理ユニットが指定されている例について説明したが、プロセスジョブデータは、処理ユニット指定情報を含んでいなくてもよい。この場合、スケジューリング機能部25は、レシピに基づいて、基板処理に使用すべき処理ユニットを特定すればよい。
In the above-described embodiment, the configuration in which only one chemical liquid cabinet is provided has been described. However, a plurality of chemical liquid cabinets may be provided. In this case, a chemical temperature resource may be provided for each chemical liquid cabinet, and processing scheduling specifying the chemical liquid cabinet to be used and the chemical liquid temperature to be used may be created.
In the above-described embodiment, the example in which the processing unit is specified in the recipe has been described. However, the process job data may not include the processing unit specifying information. In this case, the scheduling function unit 25 may specify a processing unit to be used for substrate processing based on the recipe.

また、プログラム30は、コンピュータ20に組み込まれた状態で提供されてもよいし、コンピュータ20とは別の記憶媒体(CD−ROM、DVD−ROM等のコンピュータ読取可能な記憶媒体)に記録された状態で提供されてもよい。
処理対象の基板の種類はとくに限定されるものではなく、半導体基板、ガラス基板等に代表される基板一般に対して、この発明の適用が可能である。
The program 30 may be provided in a state incorporated in the computer 20 or recorded on a storage medium (computer-readable storage medium such as a CD-ROM or DVD-ROM) different from the computer 20. May be provided in the state.
The type of substrate to be processed is not particularly limited, and the present invention can be applied to general substrates typified by semiconductor substrates, glass substrates and the like.

その他、特許請求の範囲に記載された事項の範囲で種々の設計変更を施すことが可能である。   In addition, various design changes can be made within the scope of matters described in the claims.

W 基板
PASS 受け渡しユニット
ST1〜ST4 ステージ
IR インデクサロボット
SPIN1〜SPIN12 処理ユニット
CC1 薬液キャビネット
CR 主搬送ロボット
C 基板収容器
G1〜G4 第1〜第4処理ユニット群
1 インデクサセクション
2 処理セクション
3 タンク
4 温度調節ユニット
5 ポンプ
6 基台部
7 多関節アーム
8A,8B ハンド
11 基台部
12 多関節アーム
13A,13B ハンド
15 スピンチャック
16 処理液ノズル
17 処理室
20 コンピュータ
21 制御部
22 出入力部
23 記憶部
24 ホストコンピュータ
25 スケジューリング機能部
26 処理実行指示部
30 プログラム
31 スケジュール作成プログラム
32 処理実行プログラム
40 プロセスジョブデータ
50 スケジュールデータ
W substrate PASS delivery unit ST1 to ST4 Stage IR indexer robot SPIN1 to SPIN12 Processing unit CC1 Chemical solution cabinet CR Main transfer robot C Substrate container G1 to G4 First to fourth processing units 1 Indexer section 2 Processing section 3 Tank 4 Temperature control Unit 5 Pump 6 Base part 7 Articulated arm 8A, 8B Hand 11 Base part 12 Articulated arm 13A, 13B Hand 15 Spin chuck 16 Treatment liquid nozzle 17 Processing chamber 20 Computer 21 Control part 22 I / O part 23 Storage part 24 Host computer 25 Scheduling function unit 26 Process execution instruction unit 30 Program 31 Schedule creation program 32 Process execution program 40 Process job data 50 Schedule data

Claims (20)

基板処理を実行するための処理ユニットを備えた基板処理装置における基板処理方法であって、
外部コンピュータから、1枚または複数枚の第1基板に対する処理である第1プロセスジョブを規定する第1プロセスジョブ情報を受信する第1受信工程と、
外部コンピュータから、1枚または複数枚の第2基板に対する処理である第2プロセスジョブを規定する第2プロセスジョブ情報を、前記第1受信工程よりも後に受信する第2受信工程と、
前記第1プロセスジョブを前記処理ユニットで実行するための第1処理スケジュールを作成する第1処理スケジューリング工程と、
前記第1プロセスジョブのカテゴリに基づいて属性情報を生成する属性情報生成工程と、
前記第2プロセスジョブ情報および前記属性情報に基づいて、前記第2プロセスジョブを前記処理ユニットで実行するための第2処理スケジュールを作成する第2処理スケジューリング工程と、
を含む基板処理方法。
A substrate processing method in a substrate processing apparatus including a processing unit for performing substrate processing,
A first reception step of receiving, from an external computer, first process job information that defines a first process job that is a process for one or more first substrates;
A second receiving step of receiving, from an external computer, second process job information defining a second process job, which is a process for one or more second substrates, after the first receiving step;
A first process scheduling step of creating a first process schedule for executing the first process job in the processing unit;
An attribute information generating step for generating attribute information based on the category of the first process job;
A second process scheduling step of creating a second process schedule for executing the second process job in the processing unit based on the second process job information and the attribute information;
A substrate processing method.
前記属性情報生成工程が、前記第2処理スケジューリング工程の前に実行される、請求項1に記載の基板処理方法。   The substrate processing method according to claim 1, wherein the attribute information generation step is executed before the second processing scheduling step. 前記属性情報生成工程が、前記第1プロセスジョブのカテゴリとは異なるカテゴリのプロセスジョブの前記処理ユニットにおける実行を禁止する禁止属性情報を生成する工程を含む、請求項1または2に記載の基板処理方法。   The substrate processing according to claim 1, wherein the attribute information generation step includes a step of generating prohibition attribute information for prohibiting execution of a process job of a category different from the category of the first process job in the processing unit. Method. 前記第2処理スケジューリング工程が、
前記禁止属性情報が生成されている場合に、前記第1プロセスジョブのカテゴリと前記第2プロセスジョブのカテゴリとの異同を判断する工程と、
前記第1および第2プロセスジョブのカテゴリが同じであれば、前記処理ユニットにおいて前記第2プロセスジョブを実行する第2処理スケジュールの作成を許容し、前記第1および第2プロセスジョブのカテゴリが異なれば、前記処理ユニットにおいて前記第2プロセスジョブを実行する第2処理スケジュールの作成を禁止する工程とを含む、請求項3に記載の基板処理方法。
The second process scheduling step includes:
Determining the difference between the category of the first process job and the category of the second process job when the prohibited attribute information is generated;
If the categories of the first and second process jobs are the same, the processing unit is allowed to create a second processing schedule for executing the second process job, and the categories of the first and second process jobs must be different. The substrate processing method according to claim 3, further comprising a step of prohibiting creation of a second processing schedule for executing the second process job in the processing unit.
前記第1プロセスジョブ情報が前記第1基板の種類を表す第1基板種情報を含み、
前記第2プロセスジョブ情報が前記第2基板の種類を表す第2基板種情報を含み、
前記カテゴリの異同を判断する工程は、前記第1基板種情報および前記第2基板種情報に基づいて前記第1および第2基板の種類の異同を判断する工程を含む、請求項4に記載の基板処理方法。
The first process job information includes first substrate type information representing a type of the first substrate;
The second process job information includes second substrate type information indicating a type of the second substrate;
The step of determining the difference between the categories includes a step of determining a difference between the types of the first and second substrates based on the first substrate type information and the second substrate type information. Substrate processing method.
前記第1プロセスジョブ情報が前記第1基板に対する処理条件を表す第1処理条件情報を含み、
前記第2プロセスジョブ情報が前記第2基板に対する処理条件を表す第2処理条件情報を含み、
前記カテゴリの異同を判断する工程は、前記第1処理条件情報および前記第2処理条件情報に基づいて前記第1および第2基板に対する処理条件の異同を判断する工程を含む、請求項4または5に記載の基板処理方法。
The first process job information includes first processing condition information indicating a processing condition for the first substrate;
The second process job information includes second processing condition information representing a processing condition for the second substrate;
The step of determining the difference between the categories includes a step of determining a difference in processing conditions for the first and second substrates based on the first processing condition information and the second processing condition information. The substrate processing method as described in 2. above.
前記第1処理スケジューリング工程が、前記第1基板に対する処理を実行する第1処理ユニットを特定する第1処理ユニット特定工程を含み、
前記属性情報生成工程が、前記第1プロセスジョブのカテゴリとは異なるカテゴリのプロセスジョブの前記第1処理ユニットにおける実行を禁止する禁止属性情報を生成する工程であり、
前記第2処理スケジューリング工程が、前記禁止属性情報が生成されている場合に、前記第1プロセスジョブのカテゴリと前記第2プロセスジョブのカテゴリとの異同を判断するカテゴリ判断工程と、前記カテゴリ判断工程の判断結果に基づいて前記第2基板に対する処理を実行する第2処理ユニットを特定する第2処理ユニット特定工程とを含み、
前記第2処理ユニット特定工程が、前記第1および第2プロセスジョブのカテゴリが同じであれば、前記第1処理ユニットを前記第2処理ユニットとして特定し、前記第1および第2プロセスジョブのカテゴリが異なれば、前記第1処理ユニットとは異なる処理ユニットを前記第2処理ユニットとして特定する、
請求項1または2に記載の基板処理方法。
The first processing scheduling step includes a first processing unit specifying step of specifying a first processing unit for executing processing on the first substrate;
The attribute information generating step is a step of generating prohibited attribute information for prohibiting execution of a process job of a category different from the category of the first process job in the first processing unit;
The second process scheduling step includes a category determination step for determining whether the category of the first process job is different from the category of the second process job when the prohibition attribute information is generated, and the category determination step. And a second processing unit specifying step for specifying a second processing unit for executing processing on the second substrate based on the determination result of
If the category of the first and second process jobs is the same in the second processing unit specifying step, the first processing unit is specified as the second processing unit, and the first and second process job categories Is different, the processing unit different from the first processing unit is identified as the second processing unit.
The substrate processing method according to claim 1 or 2.
前記属性情報生成工程が、前記第1プロセスジョブの実行のために無効となる処理条件を表す無効条件情報を生成する工程であり、
前記第2処理スケジューリング工程が、前記無効条件情報が生成されている場合に、前記第1プロセスジョブの処理条件と前記第2プロセスジョブの処理条件との異同を判断する処理条件判断工程と、前記処理条件判断工程において、前記第1および第2プロセスジョブの処理条件が異なると判断された場合には、前記無効条件情報が解除されるまで、前記第2処理スケジュールの作成を留保する工程とを含む、請求項1または2に記載の基板処理方法。
The attribute information generation step is a step of generating invalid condition information indicating a processing condition that is invalid for execution of the first process job;
A processing condition determining step for determining a difference between the processing condition of the first process job and the processing condition of the second process job when the invalid condition information is generated; and In the processing condition determination step, when it is determined that the processing conditions of the first and second process jobs are different, a step of reserving creation of the second processing schedule until the invalid condition information is canceled The substrate processing method of Claim 1 or 2 containing.
前記第1プロセスジョブ情報が、前記第1基板に対する処理の内容を規定した第1レシピを含み、
前記第1処理スケジューリング工程が、前記第1レシピに基づいて、前記第1基板に対する処理を実行する第1処理ユニットを特定する工程を含む、請求項1〜8のいずれか一項に記載の基板処理方法。
The first process job information includes a first recipe that defines processing details for the first substrate,
The substrate according to claim 1, wherein the first process scheduling step includes a step of identifying a first processing unit that performs a process on the first substrate based on the first recipe. Processing method.
前記第1プロセスジョブ情報が、前記第1基板に対する処理を実行すべき処理ユニットを指定する処理ユニット指定情報を含み、
前記第1処理スケジューリング工程が、前記処理ユニット指定情報に基づいて、前記第1基板に対する処理を実行する第1処理ユニットを特定する工程を含む、請求項1〜8のいずれか一項に記載の基板処理方法。
The first process job information includes processing unit designation information for designating a processing unit to perform processing on the first substrate;
The said 1st process scheduling process includes the process of specifying the 1st process unit which performs the process with respect to the said 1st board | substrate based on the said process unit designation | designated information. Substrate processing method.
基板処理を実行するための処理ユニットと、
前記処理ユニットを制御する制御ユニットとを含み、
前記制御ユニットが、
外部コンピュータから、1枚または複数枚の第1基板に対する処理である第1プロセスジョブを規定する第1プロセスジョブ情報を受信する第1受信手段と、
外部コンピュータから、1枚または複数枚の第2基板に対する処理である第2プロセスジョブを規定する第2プロセスジョブ情報を、前記第1プロセスジョブ情報の受信よりも後に受信する第2受信手段と、
前記第1プロセスジョブを前記処理ユニットで実行するための第1処理スケジュールを作成する第1処理スケジューリング手段と、
前記第1プロセスジョブのカテゴリに基づいて属性情報を生成する属性情報生成手段と、
前記第2プロセスジョブ情報および前記属性情報に基づいて、前記第2プロセスジョブを前記処理ユニットで実行するための第2処理スケジュールを作成する第2処理スケジューリング手段と、
を含む、基板処理装置。
A processing unit for performing substrate processing;
A control unit for controlling the processing unit,
The control unit is
First receiving means for receiving, from an external computer, first process job information that defines a first process job that is a process for one or more first substrates;
Second receiving means for receiving, from an external computer, second process job information defining a second process job that is a process for one or a plurality of second substrates, after receiving the first process job information;
First processing scheduling means for creating a first processing schedule for executing the first process job in the processing unit;
Attribute information generating means for generating attribute information based on the category of the first process job;
Second process scheduling means for creating a second process schedule for executing the second process job in the processing unit based on the second process job information and the attribute information;
A substrate processing apparatus.
前記属性情報生成手段が、前記第2処理スケジューリング手段が前記第2処理スケジュールを作成する前に前記属性情報を生成する、請求項11に記載の基板処理装置。   The substrate processing apparatus according to claim 11, wherein the attribute information generating unit generates the attribute information before the second processing scheduling unit creates the second processing schedule. 前記属性情報生成手段が、前記第1プロセスジョブのカテゴリとは異なるカテゴリのプロセスジョブの前記処理ユニットにおける実行を禁止する禁止属性情報を生成する、請求項11または12に記載の基板処理装置。   The substrate processing apparatus according to claim 11, wherein the attribute information generation unit generates prohibited attribute information that prohibits execution of a process job of a category different from the category of the first process job in the processing unit. 前記第2処理スケジューリング手段が、
前記禁止属性情報が生成されている場合に、前記第1プロセスジョブのカテゴリと前記第2プロセスジョブのカテゴリとの異同を判断する手段と、
前記第1および第2プロセスジョブのカテゴリが同じであれば、前記処理ユニットにおいて前記第2プロセスジョブを実行する第2処理スケジュールの作成を許容し、前記第1および第2プロセスジョブのカテゴリが異なれば、前記処理ユニットにおいて前記第2プロセスジョブを実行する第2処理スケジュールの作成を禁止する手段とを含む、請求項13に記載の基板処理装置。
The second process scheduling means comprises:
Means for determining the difference between the category of the first process job and the category of the second process job when the prohibited attribute information is generated;
If the categories of the first and second process jobs are the same, the processing unit is allowed to create a second processing schedule for executing the second process job, and the categories of the first and second process jobs must be different. The substrate processing apparatus according to claim 13, further comprising: a unit that prohibits creation of a second processing schedule for executing the second process job in the processing unit.
前記第1プロセスジョブ情報が前記第1基板の種類を表す第1基板種情報を含み、
前記第2プロセスジョブ情報が前記第2基板の種類を表す第2基板種情報を含み、
前記カテゴリの異同を判断する手段は、前記第1基板種情報および前記第2基板種情報に基づいて前記第1および第2基板の種類の異同を判断する、請求項14に記載の基板処理装置。
The first process job information includes first substrate type information representing a type of the first substrate;
The second process job information includes second substrate type information indicating a type of the second substrate;
The substrate processing apparatus according to claim 14, wherein the means for determining the difference between the categories determines the difference between the types of the first and second substrates based on the first substrate type information and the second substrate type information. .
前記第1プロセスジョブ情報が前記第1基板に対する処理条件を表す第1処理条件情報を含み、
前記第2プロセスジョブ情報が前記第2基板に対する処理条件を表す第2処理条件情報を含み、
前記カテゴリの異同を判断する手段は、前記第1処理条件情報および前記第2処理条件情報に基づいて前記第1および第2基板に対する処理条件の異同を判断する、請求項14または15に記載の基板処理装置。
The first process job information includes first processing condition information indicating a processing condition for the first substrate;
The second process job information includes second processing condition information representing a processing condition for the second substrate;
16. The unit according to claim 14 or 15, wherein the means for determining whether the categories are different determines whether the processing conditions for the first and second substrates are different based on the first processing condition information and the second processing condition information. Substrate processing equipment.
前記第1処理スケジューリング手段が、前記第1基板に対する処理を実行する第1処理ユニットを特定する第1処理ユニット特定手段を含み、
前記属性情報生成手段が、前記第1プロセスジョブのカテゴリとは異なるカテゴリのプロセスジョブの前記第1処理ユニットにおける実行を禁止する禁止属性情報を生成し、
前記第2処理スケジューリング手段が、前記禁止属性情報が生成されている場合に、前記第1プロセスジョブのカテゴリと前記第2プロセスジョブのカテゴリとの異同を判断するカテゴリ判断手段と、前記カテゴリ判断手段の判断結果に基づいて前記第2基板に対する処理を実行する第2処理ユニットを特定する第2処理ユニット特定手段とを含み、
前記第2処理ユニット特定手段が、前記第1および第2プロセスジョブのカテゴリが同じであれば、前記第1処理ユニットを前記第2処理ユニットとして特定し、前記第1および第2プロセスジョブのカテゴリが異なれば、前記第1処理ユニットとは異なる処理ユニットを前記第2処理ユニットとして特定する、
請求項11または12に記載の基板処理装置。
The first processing scheduling means includes first processing unit specifying means for specifying a first processing unit for executing processing on the first substrate;
The attribute information generating means generates prohibited attribute information for prohibiting execution of a process job of a category different from the category of the first process job in the first processing unit;
A category determining unit that determines whether the category of the first process job is different from the category of the second process job when the prohibition attribute information is generated; and the category determining unit. And a second processing unit specifying means for specifying a second processing unit for performing processing on the second substrate based on the determination result of
If the category of the first and second process jobs is the same, the second processing unit specifying means specifies the first processing unit as the second processing unit, and the category of the first and second process jobs Is different, the processing unit different from the first processing unit is identified as the second processing unit.
The substrate processing apparatus according to claim 11 or 12.
前記属性情報生成手段が、前記第1プロセスジョブの実行のために無効となる処理条件を表す無効条件情報を生成し、
前記第2処理スケジューリング手段が、前記無効条件情報が生成されている場合に、前記第1プロセスジョブの処理条件と前記第2プロセスジョブの処理条件との異同を判断する処理条件判断手段と、前記処理条件判断手段において、前記第1および第2プロセスジョブの処理条件が異なると判断された場合には、前記無効条件情報が解除されるまで、前記第2処理スケジュールの作成を留保する手段とを含む、請求項11または12に記載の基板処理装置。
The attribute information generating means generates invalid condition information indicating a processing condition that is invalid for execution of the first process job;
A processing condition judging means for judging the difference between the processing condition of the first process job and the processing condition of the second process job when the invalid condition information is generated; Means for retaining the creation of the second processing schedule until the invalid condition information is canceled when the processing condition determining means determines that the processing conditions of the first and second process jobs are different; The substrate processing apparatus of Claim 11 or 12 containing.
前記第1プロセスジョブ情報が、前記第1基板に対する処理の内容を規定した第1レシピを含み、
前記第1処理スケジューリング手段が、前記第1レシピに基づいて、前記第1基板に対する処理を実行する第1処理ユニットを特定する、請求項11〜18のいずれか一項に記載の基板処理装置。
The first process job information includes a first recipe that defines processing details for the first substrate,
The substrate processing apparatus according to claim 11, wherein the first process scheduling unit specifies a first process unit that performs a process on the first substrate based on the first recipe.
前記第1プロセスジョブ情報が、前記第1基板に対する処理を実行すべき処理ユニットを指定する処理ユニット指定情報を含み、
前記第1処理スケジューリング手段が、前記処理ユニット指定情報に基づいて、前記第1基板に対する処理を実行する第1処理ユニットを特定する、請求項11〜18のいずれか一項に記載の基板処理装置。
The first process job information includes processing unit designation information for designating a processing unit to perform processing on the first substrate;
The substrate processing apparatus according to claim 11, wherein the first processing scheduling unit specifies a first processing unit that executes processing on the first substrate based on the processing unit designation information. .
JP2015012680A 2015-01-26 2015-01-26 Substrate processing method and substrate processing apparatus Active JP6481977B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015012680A JP6481977B2 (en) 2015-01-26 2015-01-26 Substrate processing method and substrate processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015012680A JP6481977B2 (en) 2015-01-26 2015-01-26 Substrate processing method and substrate processing apparatus

Publications (2)

Publication Number Publication Date
JP2016139667A true JP2016139667A (en) 2016-08-04
JP6481977B2 JP6481977B2 (en) 2019-03-13

Family

ID=56559315

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015012680A Active JP6481977B2 (en) 2015-01-26 2015-01-26 Substrate processing method and substrate processing apparatus

Country Status (1)

Country Link
JP (1) JP6481977B2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018195145A (en) * 2017-05-18 2018-12-06 株式会社Screenホールディングス Substrate processing method and substrate processing apparatus
KR20200040914A (en) * 2017-09-15 2020-04-20 어플라이드 머티어리얼스, 인코포레이티드 Board routing and throughput modeling
JP2020068245A (en) * 2018-10-23 2020-04-30 株式会社Screenホールディングス Heat treatment method and heat treatment equipment
CN113299587A (en) * 2021-05-21 2021-08-24 无锡亚电智能装备有限公司 Wafer cleaning process task arrangement method and device
WO2024063004A1 (en) * 2022-09-22 2024-03-28 株式会社Screenホールディングス Substrate processing system, schedule creating method, storage medium, and schedule creating program

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004335750A (en) * 2003-05-08 2004-11-25 Tokyo Electron Ltd Treatment scheduling method
JP2013074059A (en) * 2011-09-27 2013-04-22 Dainippon Screen Mfg Co Ltd Schedule generating method and schedule generating program for substrate processing apparatus
JP2013077796A (en) * 2011-09-16 2013-04-25 Dainippon Screen Mfg Co Ltd Schedule generating method and schedule generating program for substrate processing apparatus

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004335750A (en) * 2003-05-08 2004-11-25 Tokyo Electron Ltd Treatment scheduling method
JP2013077796A (en) * 2011-09-16 2013-04-25 Dainippon Screen Mfg Co Ltd Schedule generating method and schedule generating program for substrate processing apparatus
JP2013074059A (en) * 2011-09-27 2013-04-22 Dainippon Screen Mfg Co Ltd Schedule generating method and schedule generating program for substrate processing apparatus

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018195145A (en) * 2017-05-18 2018-12-06 株式会社Screenホールディングス Substrate processing method and substrate processing apparatus
JP2021182433A (en) * 2017-05-18 2021-11-25 株式会社Screenホールディングス Substrate processing method and substrate processor
JP7112836B2 (en) 2017-05-18 2022-08-04 株式会社Screenホールディングス Substrate processing method and substrate processing apparatus
KR20200040914A (en) * 2017-09-15 2020-04-20 어플라이드 머티어리얼스, 인코포레이티드 Board routing and throughput modeling
KR102430459B1 (en) * 2017-09-15 2022-08-05 어플라이드 머티어리얼스, 인코포레이티드 Board routing and throughput modeling
JP2020068245A (en) * 2018-10-23 2020-04-30 株式会社Screenホールディングス Heat treatment method and heat treatment equipment
JP7091221B2 (en) 2018-10-23 2022-06-27 株式会社Screenホールディングス Heat treatment method and heat treatment equipment
CN113299587A (en) * 2021-05-21 2021-08-24 无锡亚电智能装备有限公司 Wafer cleaning process task arrangement method and device
WO2024063004A1 (en) * 2022-09-22 2024-03-28 株式会社Screenホールディングス Substrate processing system, schedule creating method, storage medium, and schedule creating program
JP7504493B2 (en) 2022-09-22 2024-06-24 株式会社Screenホールディングス SUBSTRATE PROCESSING SYSTEM, SCHEDULE CREATION METHOD, RECORDING MEDIUM, AND SCHEDULE CREATION PROGRAM

Also Published As

Publication number Publication date
JP6481977B2 (en) 2019-03-13

Similar Documents

Publication Publication Date Title
JP5852908B2 (en) Schedule creation method and schedule creation program for substrate processing apparatus
JP6481977B2 (en) Substrate processing method and substrate processing apparatus
JP5168300B2 (en) Substrate processing apparatus and substrate processing method
KR102285183B1 (en) Scheduling method and recording medium recording scheduling program for substrate processing apparatus
JP6313671B2 (en) Method for creating schedule for substrate processing apparatus and substrate processing apparatus
JP2017183545A (en) Substrate processing apparatus and substrate processing method
JP2012235087A (en) Substrate processing apparatus, substrate processing method and storage medium
JP6512445B2 (en) Substrate processing apparatus and substrate processing method
TWI770598B (en) Substrate processing method, substrate processing apparatus, and computer readable recording medium
JP6499563B2 (en) Substrate processing apparatus schedule creation method and program thereof
JP5847515B2 (en) Schedule creation method and schedule creation program for substrate processing apparatus
JP6538436B2 (en) Substrate processing apparatus and substrate processing method
JP7112836B2 (en) Substrate processing method and substrate processing apparatus
JP6435388B2 (en) Substrate processing method and substrate processing apparatus
JP2021036582A (en) Schedule creation method and schedule creation device
JP6573693B2 (en) Method for creating schedule for substrate processing apparatus and substrate processing apparatus
JP5904294B2 (en) Substrate processing apparatus and substrate processing method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181025

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181101

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181227

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190117

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190204

R150 Certificate of patent or registration of utility model

Ref document number: 6481977

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250