JP2016139667A - Substrate processing method and substrate processing device - Google Patents
Substrate processing method and substrate processing device Download PDFInfo
- 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
Links
- 238000012545 processing Methods 0.000 title claims abstract description 898
- 239000000758 substrate Substances 0.000 title claims abstract description 521
- 238000003672 processing method Methods 0.000 title claims description 23
- 238000000034 method Methods 0.000 claims abstract description 879
- 101000702132 Homo sapiens Protein spinster homolog 1 Proteins 0.000 abstract description 127
- 101000629319 Homo sapiens Spindlin-1 Proteins 0.000 abstract description 127
- 102100027005 Spindlin-1 Human genes 0.000 abstract description 127
- 101000828807 Homo sapiens Spindlin-2A Proteins 0.000 abstract description 63
- 102100023505 Spindlin-2A Human genes 0.000 abstract description 63
- 239000000126 substance Substances 0.000 description 321
- 239000000243 solution Substances 0.000 description 150
- 239000007788 liquid Substances 0.000 description 125
- 238000003860 storage Methods 0.000 description 19
- 238000012546 transfer Methods 0.000 description 17
- 239000008155 medical solution Substances 0.000 description 15
- 238000004140 cleaning Methods 0.000 description 9
- 238000004519 manufacturing process Methods 0.000 description 5
- 230000000052 comparative effect Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 4
- 101000629410 Homo sapiens Spindlin-3 Proteins 0.000 description 3
- 102100026814 Spindlin-3 Human genes 0.000 description 3
- 235000012431 wafers Nutrition 0.000 description 3
- 101000629413 Homo sapiens Spindlin-4 Proteins 0.000 description 2
- 102100026815 Spindlin-4 Human genes 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000003028 elevating effect Effects 0.000 description 2
- 239000012530 fluid Substances 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000012993 chemical processing Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000003749 cleanliness Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000011109 contamination Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 239000007921 spray Substances 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Landscapes
- Cleaning Or Drying Semiconductors (AREA)
Abstract
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.
ホストコンピュータからのプロセスジョブ情報の入力順序は、必ずしも、使用者が意図する処理順序に整合しているわけではない。たとえば、トランジスタ等のデバイスを作り込むべき製品基板を処理ユニットに搬入する前に、デバイスの作り込みを予定していない非製品基板が処理ユニットに搬入される場合がある。非製品基板の一つの例は、処理ユニットの内部の洗浄の都合で搬入されるユニット洗浄用基板であり、他の例は、処理条件の適否や処理ユニットの内部の環境等をモニタするためのモニタ用基板である。その他、様々な理由で、非製品基板が処理ユニットに搬入される場合がある。 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
この方法では、禁止属性情報が生成されている場合に、第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
この方法では、禁止属性情報が生成されている場合に、第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
この方法により、無効条件情報によって処理条件が無効とされることによって、第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
この方法によれば、プロセスジョブ情報は基板処理の内容を規定したレシピを含むので、それに基づいて、プロセスジョブを実行すべき処理ユニットを特定できる。レシピが、第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
請求項12記載の発明は、前記属性情報生成手段が、前記第2処理スケジューリング手段が前記第2処理スケジュールを作成する前に前記属性情報を生成する、請求項11に記載の基板処理装置である。
請求項13記載の発明は、前記属性情報生成手段が、前記第1プロセスジョブのカテゴリとは異なるカテゴリのプロセスジョブの前記処理ユニットにおける実行を禁止する禁止属性情報を生成する、請求項11または12に記載の基板処理装置である。
The invention according to
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
請求項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
請求項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
以下では、この発明の実施の形態を、添付図面を参照して詳細に説明する。
図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
この構成により、インデクサロボット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
処理セクション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
この構成により、主搬送ロボット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
処理ユニット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
薬液キャビネット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
図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
制御部21は、スケジューリング機能部25と、処理実行指示部26とを含む。スケジューリング機能部25は、基板Wを基板収容器Cから搬出し、処理ユニットSPIN1〜SPIN12のうちの一つ以上で処理した後、基板収容器Cに収容するために、基板処理装置のリソースを時系列に従って作動させるための計画(スケジュール)を作成する。処理実行指示部26は、スケジューリング機能部25によって作成されたスケジュールに従って、基板処理装置のリソースを作動させる。リソースとは、基板処理装置に備えられ、基板の処理のために用いられる各種のユニットであり、具体的には、処理ユニットSPIN1〜SPIN12、インデクサロボットIR、主搬送ロボットCR、薬液キャビネットCC1およびそれらの構成要素を含む。
The
記憶部23は、制御部21が実行するプログラム30と、ホストコンピュータ24から受信したプロセスジョブデータ(プロセスジョブ情報)40と、スケジューリング機能部25によって作成されたスケジュールデータ50とを含む各種データ等を記憶するように構成されている。
記憶部23に記憶されたプログラム30は、制御部21をスケジューリング機能部25として作動させるためのスケジュール作成プログラム31と、制御部21を処理実行指示部26として作動させるための処理実行プログラム32とを含む。
The
The
プロセスジョブデータ40は、各基板Wに付与されたプロセスジョブ(PJ)符号と、プロセスジョブ符号に対応付けられたレシピとを含む。
レシピは、基板処理内容を定義したデータであり、基板処理条件および基板処理手順を含む。より具体的には、基板種情報、並行処理ユニット情報、使用処理液情報、処理時間情報等を含む。基板種情報は、処理対象の基板の種類を表す情報である。基板の種類の具体例は、製品を作り込むために使用される製品基板、処理ユニットのメンテナンス等のために使用され、製品の製造には使用されない非製品基板などである。並行処理ユニット情報とは、使用可能な処理ユニットを指定する処理ユニット指定情報であり、指定された処理ユニットによる並行処理が可能であることを表す。換言すれば、指定処理ユニットのうちの一つが使用できないときには、それ以外の指定処理ユニットによる代替が可能であることを表す。「使用できないとき」とは、当該処理ユニットが別の基板Wの処理のために使用中であるとき、当該処理ユニットが故障中であるとき、オペレータが当該処理ユニットで基板Wの処理をさせたくないと考えているとき、などである。使用処理液情報とは、基板処理のために用いる処理液の種類を指定する情報である。具体例は、薬液の種類および薬液の温度を指定する情報である。処理時間情報とは、処理液を供給する継続時間などである。使用処理液情報および処理時間情報は、処理条件情報の例である。
The
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
図4〜図7は、スケジューリング機能部25による処理例を説明するためのフローチャートである。より具体的には、制御部21(コンピュータ20)がスケジュール作成プログラム31を実行することによって、所定の制御周期で繰り返し行われる処理が表されている。換言すれば、スケジュール作成プログラム31には、図4〜図7に示す処理をコンピュータに実行させるようにステップ群が組み込まれている。
4 to 7 are flowcharts for explaining processing examples by the
ホストコンピュータ24は、プロセスジョブデータを制御部21に与えて、そのプロセスジョブデータによって定義されるプロセスジョブの開始を指示する。制御部21は、そのプロセスジョブデータを受信して記憶部23に格納する(ステップS1,S2)。そのプロセスジョブデータを用いて、スケジューリング機能部25は、プロセスジョブを実行するためのスケジューリングを行う。
The
スケジューリング機能部25は、まず、各基板を処理するための仮タイムテーブルを作成する(ステップS3)。たとえば、プロセスジョブデータにおいて或るプロセスジョブ符号に対応付けられたレシピが、処理ユニットSPIN1〜SPIN12の並行処理を指定しているとする。すなわち、当該レシピに従う基板処理が、12個の処理ユニットSPIN1〜SPIN12のいずれにおいても実行可能である場合を考える。この場合、当該プロセスジョブ符号が付与された基板Wが処理を受けるときに通る経路は、12通りである。すなわち、その基板Wの処理のために選択し得る経路は、処理ユニットSPIN1〜SPIN12のいずれかを通る12個の経路である。そこで、スケジューリング機能部25は、その12個の経路に対応した仮タイムテーブルを各基板に対して作成する。
The
処理ユニット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
スケジューリング機能部25は、同じ基板Wに対して、処理ユニットSPIN2〜SPIN12をそれぞれ通る経路に対応した同様の仮タイムテーブル(処理ブロックを処理ユニットSPIN2〜SPIN12にそれぞれ配置した仮タイムテーブル)を作成する。こうして、一枚の基板Wに対して合計12経路分の仮タイムテーブルが作成される。
一方、図4に示すように、スケジューリング機能部25は、プロセスジョブデータに基づいて、プロセスジョブのカテゴリを判別する(ステップS4)。カテゴリとは、処理の種別である。より具体的には、処理対象の基板の種類は、カテゴリの一つの例である。カテゴリの他の例は、基板の処理条件である。より具体的には、プロセスジョブデータ中のレシピで指定された処理液(とくに薬液)の種類、処理液の温度などが基板の処理条件の例である。
The
On the other hand, as shown in FIG. 4, the
スケジューリング機能部25は、プロセスジョブのカテゴリを判別して、必要に応じて、仮想リソースの計画を追加する(ステップS5,S6)。仮想リソースとは、基板処理装置に実際に備えられたユニットに対応する実リソースではなく、制御の都合上、仮想的に設けられるリソースである。スケジューリング機能部25は、必要に応じて仮想リソースを追加して(ステップS5,S6)、実リソースおよび仮想リソースを利用したスケジュールを作成する。
The
仮想リソースの一例は、製品リソースである。図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
受信済みの全てのプロセスジョブに対して仮タイムテーブルの作成を終えると(ステップ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
FIG. 5 is a flowchart for explaining the details of the overall scheduling (step S10 in FIG. 4). The
さらに具体的には、スケジューリング機能部25は、受信時間が最も早い未計画のプロセスジョブの1枚の基板Wに対応する仮タイムテーブルを読み出す(ステップS21)。スケジューリング機能部25は、その読み出した仮タイムテーブルを構成する全てのブロックを配置するのに必要なリソースが全て使用可能かどうかを判断する(ステップS22)。全ての必要なリソースが使用可能であれば(ステップS22:YES)、当該仮タイムテーブルを構成する各ブロックを対応するリソースに時間軸上で前詰めに配置する(ステップS23)。すなわち、各ブロックは、同一リソースが同じ時間に重複して使用されないようにしながら、時間軸上で最も早い位置に配置される。仮タイムテーブルを構成する全てのブロックを配置し終えると、スケジューリング機能部25は、その仮タイムテーブルの処理ブロックを配置した処理ユニットに関連する製品リソースの占有状態を設定する(ステップS24。図6参照)。また、スケジューリング機能部25は、その仮タイムテーブルが薬液供給ブロックを含む場合に、薬液温度リソースの占有状態を設定する(ステップS25。図7参照)。
More specifically, the
同様の処理が同じプロセスジョブの最後の基板の仮タイムテーブルまで順に実行される(ステップ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
ステップ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
最初の非製品基板でない場合には(ステップS42:NO)、スケジューリング機能部25は、当該非製品基板が最後の非製品基板かどうかを判断する(ステップS44)。たとえば、未スケジューリングの基板のなかに非製品基板がない場合に、スケジューリング機能部25は、最後の非製品基板であると判断してもよい。また、プロセスジョブデータが、最後の非製品基板であることを表す情報を有している場合には、当該プロセスジョブの最後の基板を最後の非製品基板であると判断してもよい。
If it is not the first non-product substrate (step S42: NO), the
最後の非製品基板である場合には(ステップ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
その薬液温度リソースを使う最初の基板でない場合には(ステップS52:NO)、スケジューリング機能部25は、その薬液温度リソースを使う最後の基板かどうかを判断する(ステップS54)。たとえば、未スケジューリングの基板の仮タイムテーブルのなかに、同じ薬液温度リソースを使うものがない場合に、スケジューリング機能部25は、その薬液温度リソースを使う最後の基板であると判断してもよい。また、プロセスジョブデータが、その薬液温度リソースを使う最後の基板であることを表す情報を有している場合には、当該プロセスジョブの最後の基板を、その薬液温度リソースを使う最後の基板であると判断してもよい。
If it is not the first substrate that uses the chemical temperature resource (step S52: NO), the
その薬液温度リソースを使う最後の基板である場合には(ステップ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
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
図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
プロセスジョブ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
プロセスジョブ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
このようにして、次のプロセスジョブ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
そこで、スケジューリング機能部25は、図12に示すように、処理ユニットSPIN2を使う仮タイムテーブル(図10Bの下段)を選択し、その仮タイムテーブルを構成するブロックを、同一リソースの他のブロックと重複しないように時間軸上で前詰めに配置していく(ステップS112b)。これにより、処理ブロックが処理ユニットSPIN2に配置され、その処理ブロックと同じ期間において、「SPIN2製品」リソースに製品処理ブロックが配置される。「SPIN1製品」リソースが占有状態のままであるので、プロセスジョブPJ2の2枚の基板の処理は、いずれも処理ユニットSPIN2に計画される。
Therefore, as shown in FIG. 12, the
処理実行指示部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
そこで、スケジューリング機能部25は、図13Aに示すように、プロセスジョブPJ3の仮タイムテーブルを構成するブロックを、同一リソースの他のブロックと重複しないように時間軸上で前詰めに配置していく。これにより、処理ブロックが処理ユニットSPIN1に配置される(ステップS113b)。プロセスジョブPJ3は製品リソースを使用する製品処理ブロックを有していないので、「SPIN1製品」リソースが占有状態であっても、プロセスジョブPJ3の仮タイムテーブルを構成する全てのブロックを配置することができる。
Therefore, as shown in FIG. 13A, the
もしも、プロセスジョブ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
プロセスジョブ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
ただし、図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
「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
図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
次いで、スケジューリング機能部25は、プロセスジョブPJ4の2枚目の製品基板の処理を計画する。「SPIN1製品」リソースの占有状態が開放されているので、「SPIN1製品」リソースおよび「SPIN2製品」リソースはいずれも利用可能である。したがって、スケジューリング機能部25は、プロセスジョブPJ4の仮タイムテーブルのうち処理ユニットSPIN1およびSPIN2を使う仮タイムテーブルがいずれも使用可能であると判断する(ステップS116a)。
Next, the
図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
こうして、プロセスジョブ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
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
そこで、この実施形態では、プロセスジョブデータの受信順によらずに、処理条件(具体的には薬液温度)が等しいプロセスジョブを連続して実行するための仕組みが備えられている。
薬液キャビネット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
プロセスジョブ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
また、プロセスジョブ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
このようにして、次のプロセスジョブ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
スケジューリング機能部25は、「80℃薬液」ブロックが「CC1薬液80℃」リソースに配置可能か否かを判断し、それによって、先行するプロセスジョブPJ1で使用される薬液温度と等しいかどうかを判断する。この判断工程は、プロセスジョブPJ2の処理条件とプロセスジョブPJ1の処理条件との異同を判断する工程(カテゴリの異同を判断する工程)である。この具体例では、プロセスジョブPJ2の処理条件がプロセスジョブPJ1の処理条件と異なるので、プロセスジョブPJ2の計画が留保される(ステップS133)。
The
次に、図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
図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
プロセスジョブ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
プロセスジョブ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
たとえば、図20に示すように、スケジューリング機能部25は、プロセスジョブPJ3の最後の基板に対する薬液供給ブロックの終了時刻以降の期間における「CC1薬液80℃」リソースの占有状態を解除してもよい。これにより、プロセスジョブPJ3の最後の基板に対する薬液供給ブロック終了時以降の期間には、「CC1薬液80℃」リソースへの「80℃薬液」ブロックの配置が可能になる。
For example, as illustrated in FIG. 20, the
ただし、薬液キャビネット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
次いで、スケジューリング機能部25は、図21に示すように、プロセスジョブPJ2の最初の基板の仮タイムテーブルを構成するブロックを配置する。このとき、液交換(温度調節)ブロックの直後に薬液供給ブロックが配置されるように、仮タイムテーブルを構成する各ブロックが対応するリソースに対して時間軸上で前詰めに配置される。図21の例では、薬液供給ブロックの配置から逆算される処理ブロックの開始時刻において、処理ユニットSPIN1およびSPIN2のいずれもが使用可能である。したがって、いずれの処理ユニットSPIN1,SPIN2を通る仮タイムテーブルが採用されてもよい。図21には、処理ユニットSPIN1を通る仮タイムテーブルが適用された例を示す(ステップS137b)。
Next, as shown in FIG. 21, the
また、プロセスジョブ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
次に、スケジューリング機能部25は、図23に示すように、未計画のプロセスジョブPJ4に対するスケジューリングを開始する(ステップS140。第2処理スケジューリング工程)。プロセスジョブPJ4のレシピは、処理ユニットSPIN1またはSPIN2での1枚の基板の処理を指定し、かつ80℃の薬液の使用を指定している。スケジューリング機能部25は、プロセスジョブPJ4の仮タイムテーブルを構成する全てのブロックが対応するリソースに対して配置可能かどうかを判断する。
Next, as shown in FIG. 23, the
この判断は、プロセスジョブ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
そこで、スケジューリング機能部25は、「80℃薬液」ブロックを「CC1薬液80℃」リソースに配置するとともに、処理ユニットSPIN1またはSPIN2で処理を実行するようにプロセスジョブPJ4の基板処理を計画する(ステップS140b)。
図23の例では、プロセスジョブPJ2のために処理ユニットSPIN1が用いられているので、処理ユニットSPIN2を用いるよりも処理ユニットSPIN2を用いる方が処理ブロックを早い時刻に配置できる。そこで、スケジューリング機能部25は、処理ユニットSPIN2を用いる仮タイムテーブルを採用し、その仮タイムテーブルを構成するブロックを、同一リソースの他のブロックと重複しないように時間軸上で前詰めに配置していく。これにより、処理ブロックが処理ユニットSPIN2に配置される。
Therefore, the
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
また、プロセスジョブ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
プロセスジョブ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
図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
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
プロセスジョブ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
以上のように、この実施形態によれば、基板処理装置のコンピュータ20は、ホストコンピュータ24からプロセスジョブデータを受信し、受信したプロセスジョブデータによって規定されるプロセスジョブの処理スケジュールを作成する。処理スケジュールを作成するスケジューリング機能部25は、基板処理装置に備えられているユニットに対応する実リソースのほかに、基板処理装置に備えられているユニットとは別の仮想リソースを設けて、それらの実リソースおよび仮想リソースに対するスケジューリングを行う。具体的には、仮想リソースとして、処理ユニットSPIN1〜SPIN2で処理される基板種を表す製品リソースが設けられる。具体的には、製品リソースとして、「SPIN1製品」リソースおよび「SPIN2製品」リソースが設けられる。また、別の仮想リソースとして、薬液キャビネットCC1が供給する薬液の温度を表す薬液温度リソースが設けられる。具体的には、薬液温度リソースとして、「60℃薬液」リソースと、「80℃薬液」リソースとが設けられる。
As described above, according to this embodiment, the
スケジューリング機能部25は、プロセスジョブデータ中のレシピに含まれる基板種情報に基づいて、処理ユニットで製品基板を処理する期間に、当該処理ユニット関連付けて、対応する製品リソースを使用する処理スケジュールを作成する。具体的には、処理ユニットに対して処理ブロックを配置する期間と同じ期間に、当該製品リソースに対して製品処理ブロックを配置する。
Based on the substrate type information included in the recipe in the process job data, the
また、スケジューリング機能部25は、プロセスジョブデータに含まれるレシピによって指定される薬液温度に基づいて、薬液キャビネットCC1から薬液を供給する期間に、当該薬液キャビネットCC1に関連付けて、対応する薬液温度リソースを使用する処理スケジュールを作成する。具体的には、薬液キャビネットCC1に対して薬液供給ブロックを配置する期間と同じ期間に、当該薬液温度リソースに対して、薬液温度ブロックを配置する。
Further, the
一方、スケジューリング機能部25は、非製品基板の処理を計画すると、その非製品基板を処理する処理ユニットの製品リソースを無効化する。具体的には、製品リソースの全期間を占有状態として、製品リソースへの製品処理ブロックの配置を禁止する。これにより、製品リソースを使用するプロセスジョブ、すなわち、製品基板を処理するためのプロセスジョブは、当該処理ユニットには計画できなくなる。その一方で、製品リソースを使用しないプロセスジョブ、すなわち、非製品基板を処理するためのプロセスジョブは、当該処理ユニットに計画できる。これにより、非製品基板を処理する複数のプロセスジョブが連続するようにスケジューリングできる。つまり、たとえ、非製品基板の処理を規定する2つのプロセスジョブデータの受信の間に、製品基板の処理を規定する別のプロセスジョブデータの受信が割り込んだとしても、それらの2つの非製品基板処理のためのプロセスジョブを連続させることができる。
On the other hand, when scheduling the non-product substrate processing, the
また、スケジューリング機能部25は、レシピで指定された薬液温度に対応する薬液温度ブロックを、それに対応する温度の薬液温度リソースに配置すると、他の薬液温度リソースを無効化する。具体的には、当該他の薬液温度リソースの全期間を占有状態として、当該他の薬液温度リソースへの薬液温度ブロックの配置を禁止する。これにより、当該他の薬液温度リソースを使用するプロセスジョブ、すなわち、当該他の温度の薬液での基板処理を指定するプロセスジョブは計画できなくなる。その一方で、当該レシピ指定薬液温度と同じ温度の薬液で基板を処理するプロセスジョブは、引き続き計画することができる。これにより、同じ温度の薬液を用いる複数のプロセスジョブが連続するようにスケジューリングできる。つまり、たとえ、同じ温度の薬液での基板処理を規定するレシピを有する2つのプロセスジョブデータの受信の間に、他の温度の薬液での基板処理を規定するレシピを有する別のプロセスジョブデータの受信が割り込んだとしても、それらの2つの同じ温度の薬液処理のためのプロセスジョブを連続させることができる。
Moreover, the
このように、プロセスジョブのカテゴリ(基板種、薬液温度)に対応した属性情報として、異なるカテゴリ(基板種、薬液温度)の仮想リソースを無効化する禁止属性情報が生成される。そして、その禁止属性情報に基づいて、その後のプロセスジョブのスケジューリングが行われる。これにより、先に情報を受信したプロセスジョブのカテゴリに応じて、その後に情報を受信したプロセスジョブを適切に計画することができる。薬液温度の仮想リソースを無効化する禁止属性情報は、計画済みのプロセスジョブの実行のために無効となる処理条件(上記の場合には薬液温度)を表す無効条件情報の一例である。禁止属性情報が解除されれば、制限がなくなり、異なるカテゴリのプロセスジョブのスケジューリングが可能になる。 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
また、前述の実施形態では、薬液キャビネットが一つだけ設けられた構成について説明したが、複数の薬液キャビネットが備えられてもよい。この場合には、薬液キャビネットごとに、薬液温度リソースを設け、使用する薬液キャビネットおよび使用する薬液温度を指定した処理スケジューリングを作成すればよい。
また、前述の実施形態では、レシピにおいて処理ユニットが指定されている例について説明したが、プロセスジョブデータは、処理ユニット指定情報を含んでいなくてもよい。この場合、スケジューリング機能部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
また、プログラム30は、コンピュータ20に組み込まれた状態で提供されてもよいし、コンピュータ20とは別の記憶媒体(CD−ROM、DVD−ROM等のコンピュータ読取可能な記憶媒体)に記録された状態で提供されてもよい。
処理対象の基板の種類はとくに限定されるものではなく、半導体基板、ガラス基板等に代表される基板一般に対して、この発明の適用が可能である。
The
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
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.
前記禁止属性情報が生成されている場合に、前記第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.
前記第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.
前記第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処理ユニットにおける実行を禁止する禁止属性情報を生成する工程であり、
前記第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.
前記第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〜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〜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.
前記禁止属性情報が生成されている場合に、前記第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.
前記第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. .
前記第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処理ユニットにおける実行を禁止する禁止属性情報を生成し、
前記第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.
前記第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処理ユニットを特定する、請求項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処理ユニットを特定する、請求項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. .
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)
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)
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 |
-
2015
- 2015-01-26 JP JP2015012680A patent/JP6481977B2/en active Active
Patent Citations (3)
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)
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 |