(57)【特許請求の範囲】
【請求項１】
基板を一枚ずつ処理する枚葉型の処理ユニットを有する基板処理装置の動作を時系列に従って規定するスケジュールを前記基板処理装置に備えられた制御部が作成するための方法であって、
前記制御部が、各基板に対する処理内容を規定するブロックを時系列に従って結合した仮タイムテーブルを作成するステップと、
前記制御部が、複数枚の基板に関する前記仮タイムテーブルからブロックを取得し、時系列に従って配置することにより、全体スケジュールを作成するスケジューリングステップとを含み、
前記スケジューリングステップが、基板に対する処理の前または後に前記処理ユニットで実行すべきメンテナンス工程のためのメンテナンスブロックを配置するメンテナンスブロック配置ステップを含む、スケジュール作成方法。
【請求項２】
前記仮タイムテーブルが、前記処理ユニットにおいて基板に対して実行される処理を表す処理ブロックを含み、
前記メンテナンスブロック配置ステップが、前記処理ブロックが所定のメンテナンス実行条件を満たすか否かを判定するステップと、前記処理ブロックが前記メンテナンス実行条件を満たすときに、時間軸上において前記処理ブロックよりも前に前記メンテナンスブロックを配置するステップとを含む、請求項１に記載のスケジュール作成方法。
【請求項３】
前記仮タイムテーブルが、前記処理ユニットにおいて基板に対して実行される処理を表す処理ブロックを含み、
前記メンテナンスブロック配置ステップが、第１基板に対して計画された前記処理ユニットによる第１処理と、前記第１基板の次に当該処理ユニットによって処理される第２基板に対して計画された当該処理ユニットによる第２処理とが、所定のメンテナンス実行条件を満たすか否かを判定するステップと、前記メンテナンス実行条件が満たされたときに前記第１処理のための第１処理ブロックと前記第２処理のための第２処理ブロックとの間に前記メンテナンスブロックを配置するステップとを含む、請求項１に記載のスケジュール作成方法。
【請求項４】
前記メンテナンス実行条件が、前記第１処理ブロックの終了から前記第２処理ブロックの開始までの経過時間に関する条件、前記第１処理および前記第２処理の処理内容に関する条件、および前記処理ユニットにおける処理済み基板枚数に関する条件のうちの一つ以上を含む、請求項３に記載のスケジュール作成方法。
【請求項５】
前記仮タイムテーブルが、前記処理ユニットにおいて基板に対して実行される処理を表す処理ブロックを含み、
前記メンテナンスブロック配置ステップが、第１基板に対して計画された前記処理ユニットによる第１処理と、前記第１基板の次に当該処理ユニットによって処理される第２基板に対して計画された当該処理ユニットによる第２処理とが同じかどうかを判定するステップと、前記第１処理と前記第２処理とが異なるときに前記第１処理のための第１処理ブロックと前記第２処理のための第２処理ブロックとの間に前記メンテナンスブロックを配置し、前記第１処理と前記第２処理とが同じであるときには前記メンテナンスブロックの配置を省くステップとを含む、請求項１に記載のスケジュール作成方法。
【請求項６】
前記仮タイムテーブルが、前記処理ユニットにおいて基板に対して実行される処理を表す処理ブロックを含み、
前記メンテナンスブロック配置ステップが、
第１基板に対する処理の後に前記処理ユニットにおいて実行されるべき後処理工程と、前記第１基板の次に当該処理ユニットによって処理される第２基板に対する処理の前に前記処理ユニットにおいて実行されるべき前準備工程とが同じかどうかを判定するステップと、
前記後処理工程と前記前準備工程とが異なるときに前記第１基板のための第１処理ブロックと前記第２基板のための第２処理ブロックとの間に前記後処理工程のための後処理ブロックおよび前記前準備工程のための前準備ブロックを前記メンテナンスブロックとして配置し、前記後処理工程と前記前準備工程とが同じであるときには前記メンテナンスブロックの配置を省くステップとを含む、請求項１に記載のスケジュール作成方法。
【請求項７】
前記メンテナンスブロック配置ステップが、
前記後処理工程および前記前準備工程のうちの一方の処理内容の一部がそれらのうちの他方の処理内容の全部と同じかどうかを判定するステップと、
前記一方の処理内容の一部が前記他方の処理内容の全部と同じであるときに、前記第１基板のための第１処理ブロックと前記第２基板のための第２処理ブロックとの間に、前記後処理工程および前記前準備工程のうちの前記一方に対応したメンテナンスブロックを配置し、前記後処理工程および前記前準備工程のうちの前記他方に対応したメンテナンスブロックの配置を省くステップとをさらに含む、請求項６に記載のスケジュール作成方法。
【請求項８】
基板を一枚ずつ処理する枚葉型の処理ユニットを有する基板処理装置の動作を時系列に従って規定するスケジュールを作成するためのコンピュータプログラムであって、
請求項１〜７のいずれか一項に記載の方法を前記制御部としてのコンピュータに実行させるようにステップ群が組み込まれたコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、基板処理装置の動作を時系列に従って規定するスケジュールを作成するための方法およびプログラムに関する。基板処理装置による処理対象となる基板の例には、半導体ウエハ、液晶表示装置用基板、プラズマディスプレイ用基板、ＦＥＤ(Field Emission Display)用基板、光ディスク用基板、磁気ディスク用基板、光磁気ディスク用基板、フォトマスク用基板、セラミック基板、太陽電池用基板などが含まれる。
【背景技術】
【０００２】
特許文献１および特許文献２は、基板処理装置に備えられたリソースの使用タイミングを決定するためのスケジュール作成を開示している。具体的には、複数枚の基板で構成されるロットを一括して処理するバッチ式の基板処理装置において、搬送機構、薬液処理部、純水洗浄処理部、乾燥処理部等のリソースの使用タイミングを規定するスケジュールを作成するための技術が開示されている。基板処理装置に備えられた制御部は、作成されたスケジュールに従って各リソースを作動させる。これにより、ロット毎の基板に対する処理が効率良く行われ、基板処理装置の生産性が高まる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２１８４４９号公報
【特許文献２】特開２００８−２１０９５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
基板に対する処理（たとえば洗浄処理）をより精密に行うために、基板を一枚ずつ処理する枚葉型の基板処理装置が用いられるようになってきている。しかし、特許文献１，２に係る先行技術は、いずれもバッチ式の基板処理装置に適したものであり、枚葉型の基板処理装置にそのまま適用しても、必ずしも効率的な基板処理を実現できるとは限らない。
そこで、この発明の目的は、枚葉型の基板処理装置に適したスケジュール作成方法およびスケジュール作成プログラムを提供することである。
【課題を解決するための手段】
【０００５】
上記の目的を達成するための請求項１記載の発明は、基板を一枚ずつ処理する枚葉型の処理ユニットを有する基板処理装置の動作を時系列に従って規定するスケジュールを前記基板処理装置に備えられた制御部が作成するための方法であって、前記制御部が、各基板に対する処理内容を規定するブロックを時系列に従って結合した仮タイムテーブルを作成するステップと、前記制御部が、複数枚の基板に関する前記仮タイムテーブルからブロックを取得し、時系列に従って配置することにより、全体スケジュールを作成するスケジューリングステップとを含み、前記スケジューリングステップが、基板に対する処理の前または後に前記処理ユニットで実行すべきメンテナンス工程のためのメンテナンスブロックを配置するメンテナンスブロック配置ステップを含む、スケジュール作成方法である。
【０００６】
この方法によれば、基板処理装置の制御部が、各基板に対応して仮タイムテーブルを作成する。仮タイムテーブルは、各基板に対する処理内容を規定する複数のブロックを時系列に従って結合することにより作成される。たとえば、制御部は、基板に対する処理条件および処理手順を規定するレシピに基づいて複数のブロックを時系列に従って結合することにより、仮タイムテーブルを作成する。仮タイムテーブルは、複数の基板相互間の干渉（使用リソースの時間軸上における重なり合い）を考慮することなく作成される。仮タイムテーブルが作成されると、制御部は、複数枚の基板を効率的に処理するための全体スケジュールを作成する。このとき、制御部は、複数枚の基板相互間の干渉が生じることがなく、かつ効率的にリソース（処理ユニット等）を稼働させて複数枚の基板に対する処理が行われるように、各基板の仮タイムテーブルを構成するブロックを時系列に従って配置する。こうして、個々の基板に対する処理ブロックを配置して枚葉型の処理ユニット等のリソースの稼働率を高めることができるので、枚葉型基板処理装置の生産性を向上できる。
【０００７】
メンテナンス工程の例は、処理ユニットにおける前準備工程、処理ユニットにおける後処理工程などである。
【０００８】
前準備工程の例としては、処理液ノズルから処理液を一定量だけ吐出するプリディスペンス工程を挙げることができる。たとえば、温度調整された処理液を基板に供給して当該基板を処理する場合に、プリディスペンス工程を実行することによって、処理液ノズルおよび処理液配管に滞留していて目標温度範囲外の温度となってしまった処理液を排出して、処理液ノズルの吐出口に温度調整された処理液を導くことができる。そして、プリディスペンス工程の後に、基板に対して処理液を吐出する処理液供給工程を実行することによって、当初から温度調整された処理液によって基板を処理できる。これにより、精密な基板処理を実現できる。前準備工程の例としては、ほかにも、処理ユニットに備えられた処理室（チャンバ）内の洗浄処理（チャンバ洗浄）を例示できる。処理室内の洗浄を実行することによって、次に処理室に搬入される基板に対して、前の基板に対する処理の影響が及ぶことを回避できる。これにより、精密な基板処理を実現できる。チャンバ洗浄は、たとえば、基板を保持して回転させるスピンチャックの洗浄、スピンチャックを収容する処理カップの洗浄、スピンチャックから飛び散る処理液を受けるガード（飛散防止部材）の洗浄などを含む。前準備工程の例としては、さらに、基板を保持するチャックピンの洗浄、処理室内のその他の部品の洗浄などを挙げることができる。
【０００９】
後処理工程としては、処理ユニットに備えられた処理室内の洗浄処理（チャンバ洗浄）を例示できる。処理室内の洗浄を実行することによって、次に処理室に搬入される基板に対して、前の基板に対する処理の影響が及ぶことを回避できる。これにより、精密な基板処理を実現できる。チャンバ洗浄の具体例は前述のとおりである。後処理工程の例としては、さらに、基板を保持するチャックピンの洗浄、処理室内のその他の部品の洗浄などを挙げることができる。
【００１０】
請求項２記載の発明は、前記仮タイムテーブルが、前記処理ユニットにおいて基板に対して実行される処理を表す処理ブロックを含み、前記メンテナンスブロック配置ステップが、前記処理ブロックが所定のメンテナンス実行条件を満たすか否かを判定するステップと、前記処理ブロックが前記メンテナンス実行条件を満たすときに、時間軸上において前記処理ブロックよりも前に前記メンテナンスブロックを配置するステップとを含む、請求項１に記載のスケジュール作成方法である。
【００１１】
この方法によれば、処理ブロックが所定のメンテナンス実行条件を満たすかどうかが判断され、その判断に基づいてメンテナンスブロックの配置の要否が決定される。すなわち、必要に応じてメンテナンスブロックが配置されるので、不必要なメンテナンス工程を省くことができる。これにより、基板処理装置の生産性を向上できる。
前記メンテナンスブロックは、処理ユニットでの処理の前に実行すべき前準備工程を表すブロックであってもよい。また、前記メンテナンスブロックは、当該処理ユニットでの処理に先立って当該処理ユニットで実行される別の処理の後に実行すべき後処理工程を表すブロックであってもよい。
【００１２】
請求項３記載の発明は、前記仮タイムテーブルが、前記処理ユニットにおいて基板に対して実行される処理を表す処理ブロックを含み、前記メンテナンスブロック配置ステップが、第１基板に対して計画された前記処理ユニットによる第１処理と、前記第１基板の次に当該処理ユニットによって処理される第２基板に対して計画された当該処理ユニットによる第２処理とが、所定のメンテナンス実行条件を満たすか否かを判定するステップと、前記メンテナンス実行条件が満たされたときに前記第１処理のための第１処理ブロックと前記第２処理のための第２処理ブロックとの間に前記メンテナンスブロックを配置するステップとを含む、請求項１に記載のスケジュール作成方法である。
【００１３】
この方法によれば、同じ処理ユニットにおいて相前後して実行される第１基板に対する第１処理および第２基板に対する第２処理が、所定のメンテナンス実行条件を満たすか否かが判断される。その判断結果に基づいて、メンテナンスブロックの配置の要否が決定される。したがって、不必要なメンテナンス工程を省くことができるから、基板処理装置の生産性を向上できる。
【００１４】
前記メンテナンス実行条件は、たとえば、第１基板に対して用いられる薬液と、第２基板に対して用いられる薬液とが異なることを含む。これにより、第１基板に対して用いられた薬液の影響が第２基板の処理に及ぶことを回避できる。また、第１および第２基板に対して同種の薬液による処理を行うときには、メンテナンス実行条件が満たされないので、メンテナンスブロックが配置されない。この場合には、第２基板に対して悪影響がなく、かつ、メンテナンス工程を省くことにより生産性を高めることができる。
【００１５】
前記メンテナンスブロックは、第１処理のための後処理工程を表すブロックであってもよいし、第２処理のための前準備工程を表すブロックであってもよい。
請求項４記載の発明は、前記メンテナンス実行条件が、前記第１処理ブロックの終了から前記第２処理ブロックの開始までの経過時間に関する条件、前記第１処理および前記第２処理の処理内容に関する条件、および前記処理ユニットにおける処理済み基板枚数に関する条件のうちの一つ以上を含む、請求項３に記載のスケジュール作成方法である。
【００１６】
たとえば、第１処理ブロックの終了から第２処理ブロックの開始までの経過時間が所定時間を超えることをメンテナンス実行条件の一つとしてもよい。これにより、第２基板に対する処理品質を高めることができる。たとえば、前記経過時間が所定時間を超える場合に、第２基板に対する処理に先立つ前準備工程として、処理液ノズルからのプリディペンス工程を表すメンテナンスブロックを配置してもよい。これにより、第２基板に対して、状態の整えられた（たとえば温度調節された）処理液を当初から供給できるから、基板処理品質を高めることができる。
【００１７】
また、第１処理および第２処理が異なること（たとえば使用薬液の種類が異なること）を、メンテナンス実行条件の一つとしてもよい。これにより、第２基板に対する処理品質を高めることができる。たとえば、第１処理と第２処理とで異なる種類の薬液を用いる場合に、第１処理の後の後処理工程として、処理ユニットの処理室内の洗浄（チャンバ洗浄）を表すメンテナンスブロックを配置してもよい。これにより、第１基板を処理した薬液の影響が第２基板に及ぶことを回避できる。また、第２処理に先立つ前準備工程として、第２処理で使用する薬液を吐出する処理液ノズルからのプリディスペンス工程を表すメンテナンスブロックを配置してもよい。これにより、第２基板に対して、状態の整えられた（たとえば温度調節された）処理液を当初から供給できるから、基板処理品質を高めることができる。
【００１８】
さらに、処理ユニットにおける処理済み基板枚数が所定枚数に達したことをメンテナンス実行条件の一つとしてもよい。これにより、所定枚数の基板が処理されるたびにメンテナンス工程が実行されるので、基板処理品質を高めることができる。この場合のメンテナンス工程は、具体的には、処理ユニットの処理室内の洗浄工程であってもよい。これにより、多数枚の基板を処理したことによって処理室内に蓄積された汚染物を定期的に洗浄して除去できるので、高品質な基板処理を継続できる。
【００１９】
請求項５記載の発明は、前記仮タイムテーブルが、前記処理ユニットにおいて基板に対して実行される処理を表す処理ブロックを含み、前記メンテナンスブロック配置ステップが、第１基板に対して計画された前記処理ユニットによる第１処理と、前記第１基板の次に当該処理ユニットによって処理される第２基板に対して計画された当該処理ユニットによる第２処理とが同じかどうかを判定するステップと、前記第１処理と前記第２処理とが異なるときに前記第１処理のための第１処理ブロックと前記第２処理のための第２処理ブロックとの間に前記メンテナンスブロックを配置し、前記第１処理と前記第２処理とが同じであるときには前記メンテナンスブロックの配置を省くステップとを含む、請求項１に記載のスケジュール作成方法である。
【００２０】
この方法によれば、同じ処理ユニットにおいて相前後して実行される第１および第２基板に対する処理が同じであるときには、メンテナンスブロックの配置が省かれる。したがって、不必要なメンテナンス工程を省くことができるので、基板処理装置の生産性を向上できる。
請求項６記載の発明は、前記仮タイムテーブルが、前記処理ユニットにおいて基板に対して実行される処理を表す処理ブロックを含み、前記メンテナンスブロック配置ステップが、第１基板に対する処理の後に前記処理ユニットにおいて実行されるべき後処理工程と、前記第１基板の次に当該処理ユニットによって処理される第２基板に対する処理の前に前記処理ユニットにおいて実行されるべき前準備工程とが同じかどうかを判定するステップと、前記後処理工程と前記前準備工程とが異なるときに前記第１基板のための第１処理ブロックと前記第２基板のための第２処理ブロックとの間に前記後処理工程のための後処理ブロックおよび前記前準備工程のための前準備ブロックを前記メンテナンスブロックとして配置し、前記後処理工程と前記前準備工程とが同じであるときには前記メンテナンスブロックの配置を省くステップとを含む、請求項１に記載のスケジュール作成方法である。
【００２１】
この方法によれば、先に処理される第１基板の後処理工程と、次に処理される第２基板の前準備工程とが同じであるときには、メンテナンス工程の配置が省かれる。後処理工程および前準備工程が同じであれば、第１基板のための処理と第２基板のための処理との内容が同じであり、したがって、第１基板と第２基板との処理の間にメンテナンス工程を入れる必要がない。このような場合にメンテナンス工程を省くことによって、基板処理装置の生産性を向上できる。
【００２２】
請求項７記載の発明は、前記メンテナンスブロック配置ステップが、前記後処理工程および前記前準備工程のうちの一方の処理内容の一部がそれらのうちの他方の処理内容の全部と同じかどうかを判定するステップと、前記一方の処理内容の一部が前記他方の処理内容の全部と同じであるときに、前記第１基板のための第１処理ブロックと前記第２基板のための第２処理ブロックとの間に、前記後処理工程および前記前準備工程のうちの前記一方に対応したメンテナンスブロックを配置し、前記後処理工程および前記前準備工程のうちの前記他方に対応したメンテナンスブロックの配置を省くステップとをさらに含む、請求項６に記載のスケジュール作成方法である。
【００２３】
この方法では、後処理工程と前準備工程とで処理内容が重複しており、一方の処理内容が他方の処理内容を全部含むときに、後処理工程および前準備工程のうち当該一方に対応するメンテナンスブロックが配置される。これにより、重複した処理を省くことができるので、必要なメンテナンス処理を実行しながら、基板処理装置の生産性を高めることができる。
【００２４】
請求項８記載の発明は、基板を一枚ずつ処理する枚葉型の処理ユニットを有する基板処理装置の動作を時系列に従って規定するスケジュールを作成するためのコンピュータプログラムであって、請求項１〜７のいずれか一項に記載の方法を前記制御部としてのコンピュータに実行させるようにステップ群が組み込まれたコンピュータプログラムである。
この発明により、スケジュール作成方法に関して説明した前述の効果を得ることができる。 
【図面の簡単な説明】
【００２５】
【図１】図１は、この発明の一実施形態に係る基板処理装置のレイアウトを示す図解的な平面図である。
【図２】図２は、前記基板処理装置の図解的な側面図である。
【図３】図３は、前記基板処理装置の電気的構成を説明するためのブロック図である。
【図４】図４は、この発明の第１の実施形態を説明するためのフローチャートであり、スケジューリング機能部による処理例が示されている。
【図５】図５は、前記第１の実施形態を説明するためのフローチャートであり、スケジューリング機能部による処理例が示されている。
【図６】図６は、仮タイムテーブルの一例を示す。
【図７】図７は、スケジューリングの一例（前準備ブロックの配置）を示す。
【図８】図８は、スケジューリングの一例（基板処理のためのブロックの配置）を示す。
【図９】図９は、スケジューリングの一例（基板処理のためのブロックの配置）を示す。
【図１０】図１０は、スケジューリングの一例（後処理ブロックを配置した例）を示す。
【図１１】図１１は、スケジューリングの一例（基板処理のためのブロックの配置）を示す。
【図１２】図１２は、スケジューリングの一例（基板処理のためのブロックの配置）を示す。
【図１３】図１３は、この発明の第２の実施形態を説明するためのフローチャートであり、スケジューリング機能部によって実行される処理例が示されている。
【図１４】図１４は、スケジューリングの一例（基板処理のためのブロックの配置。前準備実行条件および後処理実行条件がいずれも満たされない場合）を示す。
【図１５】図１５は、スケジューリングの一例（基板処理のためのブロックの配置。後処理ブロックを挿入した例）を示す。
【図１６】図１６は、スケジューリングの一例（基板処理のためのブロックの配置）を示す。
【図１７】図１７は、スケジューリングの一例（基板処理のためのブロックの配置。前準備ブロックを挿入した例）を示す。
【図１８】図１８は、スケジューリングの一例（基板処理のためのブロックの配置）を示す。
【図１９】図１９は、スケジューリングの一例（基板処理のためのブロックの配置）を示す。
【図２０】図２０は、スケジューリングの一例（基板処理のためのブロックの配置。後処理ブロックを配置した例）を示す。
【図２１】図２１は、スケジューリングの一例（基板処理のためのブロックの配置。後処理ブロックおよび前準備ブロックを配置した例）を示す。
【図２２】図２２は、前準備実行条件判断（図１３のステップＳ３１）の具体例を示すフローチャートである。
【図２３】図２３は、この発明の第３の実施形態を説明するためのフローチャートであり、スケジューリング機能部によって実行される処理例が示されている。
【図２４】図２４は、図２２のステップＳ４６，Ｓ４８および図２３のステップＳ５４における判断の別の例を示す図である。
【発明を実施するための形態】
【００２６】
以下では、この発明の実施の形態を、添付図面を参照して詳細に説明する。
図１は、この発明の一実施形態に係る基板処理装置のレイアウトを示す図解的な平面図であり、図２はその図解的な側面図である。この基板処理装置は、インデクサセクション１と、処理セクション２とを含む。処理セクション２は、インデクサセクション１との間で基板Ｗを受け渡しするための受け渡しユニットＰＡＳＳを備えている。インデクサセクション１は、未処理の基板Ｗを受け渡しユニットＰＡＳＳに渡し、受け渡しユニットＰＡＳＳから処理済みの基板Ｗを受け取る。処理セクション２は、受け渡しユニットＰＡＳＳから未処理の基板Ｗを受け取って、その基板Ｗに対して、処理剤（処理液または処理ガス）を用いた処理、紫外線等の電磁波を用いた処理、物理洗浄処理（ブラシ洗浄、スプレーノズル洗浄等）などの各種の処理を施す。そして、処理セクション２は、処理後の基板Ｗを受け渡しユニットＰＡＳＳに渡す。
【００２７】
インデクサセクション１は、複数のステージＳＴ１〜ＳＴ４と、インデクサロボットＩＲとを含む。
ステージＳＴ１〜ＳＴ４は、複数枚の基板Ｗ（たとえば半導体ウエハ）を積層状態で収容した基板収容器Ｃをそれぞれ保持することができる基板収容器保持部である。基板収容器Ｃは、基板Ｗを密閉した状態で収納するＦＯＵＰ（Front Opening Unified Pod）であってもよいし、ＳＭＩＦ（Standard Mechanical Inter Face）ポッド、ＯＣ（Open Cassette）等であってもよい。たとえば、基板収容器ＣをステージＳＴ１〜ＳＴ４に載置したとき、基板収容器Ｃでは、水平姿勢の複数枚の基板Ｗが互いに間隔を開けて鉛直方向に積層された状態となる。
【００２８】
インデクサロボットＩＲは、たとえば、基台部６と、多関節アーム７と、一対のハンド８Ａ，８Ｂとを含む。基台部６は、たとえば、当該基板処理装置のフレームに固定されている。多関節アーム７は、水平面に沿って回動可能な複数本のアーム部を互いに回動可能に結合して構成されており、アーム部の結合箇所である関節部でアーム部間の角度を変更することによって、屈伸するように構成されている。多関節アーム７の基端部は、基台部６に対して、鉛直軸線回りの回動が可能であるように結合されている。さらに、多関節アーム７は、基台部６に対して昇降可能に結合されている。換言すれば、基台部６には、多関節アーム７を昇降させるための昇降駆動機構、多関節アーム７を鉛直軸線回りに回動させるための回動駆動機構が内蔵されている。また、多関節アーム７には、各アーム部を独立して回動させるための個別回動駆動機構が備えられている。多関節アーム７の先端部に、鉛直軸線回りの個別回動および水平方向への個別進退が可能であるように、ハンド８Ａ，８Ｂが結合されている。多関節アーム７には、ハンド８Ａ，８Ｂを鉛直軸線回りに個別に回動させるためのハンド回動駆動機構と、ハンド８Ａ，８Ｂを水平方向に個別に進退させるためのハンド進退機構とが備えられている。ハンド８Ａ，８Ｂは、たとえば、１枚の基板Ｗをそれぞれ保持できるように構成されている。なお、ハンド８Ａ，８Ｂは上下に重なった状態で配置されていてもよいが、図１では、明瞭化のために、ハンド８Ａ，８Ｂを紙面に平行な方向（水平方向）にずらして描いてある。
【００２９】
この構成により、インデクサロボットＩＲは、いずれかのステージＳＴ１〜ＳＴ４に保持された基板収容器Ｃから一枚の未処理基板Ｗをハンド８Ａで搬出して受け渡しユニットＰＡＳＳに渡すように動作する。さらに、インデクサロボットＩＲは、受け渡しユニットＰＡＳＳから一枚の処理済み基板Ｗをハンド８Ｂで受け取って、いずれかのステージＳＴ１〜ＳＴ４に保持された基板収容器Ｃに収容するように動作する。
【００３０】
処理セクション２は、複数（この実施形態では１２個）の処理ユニットＳＰＩＮ１〜ＳＰＩＮ１２と、主搬送ロボットＣＲと、前述の受け渡しユニットＰＡＳＳとを含む。
処理ユニットＳＰＩＮ１〜ＳＰＩＮ１２は、この実施形態では、立体的に配置されている。より具体的には、三階建て構造をなすように複数の処理ユニットＳＰＩＮ１〜ＳＰＩＮ１２が配置されており、各階部分に４つの処理ユニットが配置されている。すなわち、一階部分に４つの処理ユニットＳＰＩＮ１，ＳＰＩＮ４，ＳＰＩＮ７，ＳＰＩＮ１０が配置され、二階部分に別の４つの処理ユニットＳＰＩＮ２，ＳＰＩＮ５，ＳＰＩＮ８，ＳＰＩＮ１１が配置され、三階部分にさらに別の処理ユニットＳＰＩＮ３，ＳＰＩＮ６，ＳＰＩＮ９，ＳＰＩＮ１２が配置されている。さらに具体的には、平面視において処理セクション２の中央に主搬送ロボットＣＲが配置されており、この主搬送ロボットＣＲとインデクサロボットＩＲとの間に受け渡しユニットＰＡＳＳが配置されている。受け渡しユニットＰＡＳＳを挟んで対向するように、３つの処理ユニットＳＰＩＮ１〜ＳＰＩＮ３を積層した第１処理ユニット群Ｇ１と、別の３つの処理ユニットＳＰＩＮ４〜ＳＰＩＮ６を積層した第２処理ユニット群Ｇ２とが配置されている。そして、第１処理ユニット群Ｇ１に対してインデクサロボットＩＲから遠い側に隣接するように、３つの処理ユニットＳＰＩＮ７〜ＳＰＩＮ９を積層した第３処理ユニット群Ｇ３が配置されている。同様に、第２処理ユニット群Ｇ２に対してインデクサロボットＩＲから遠い側に隣接するように、３つの処理ユニットＳＰＩＮ１０〜ＳＰＩＮ１２を積層した第４処理ユニット群Ｇ４が配置されている。第１〜第４処理ユニット群Ｇ１〜Ｇ４によって、主搬送ロボットＣＲが取り囲まれている。
【００３１】
主搬送ロボットＣＲは、たとえば、基台部１１と、多関節アーム１２と、一対のハンド１３Ａ，１３Ｂとを含む。基台部１１は、たとえば、当該基板処理装置のフレームに固定されている。多関節アーム１２は、水平面に沿って延びた複数本のアーム部を互いに回動可能に結合して構成されており、アーム部の結合箇所である関節部でアーム部間の角度を変更することによって、屈伸するように構成されている。多関節アーム１２の基端部は基台部１１に対して、鉛直軸線回りの回動が可能であるように結合されている。さらに、多関節アーム１２は、基台部１１に対して昇降可能に結合されている。換言すれば、基台部１１には、多関節アーム１２を昇降させるための昇降駆動機構、多関節アーム１２を鉛直軸線回りに回動させるための回動駆動機構が内蔵されている。また、多関節アーム１２には、各アーム部を独立して回動させるための個別回動駆動機構が備えられている。多関節アーム１２の先端部に、鉛直軸線回りの個別回動および水平方向への個別進退が可能であるように、ハンド１３Ａ，１３Ｂが結合されている。多関節アーム１２には、ハンド１３Ａ，１３Ｂを鉛直軸線回りに個別に回動させるためのハンド回動駆動機構と、ハンド１３Ａ，１３Ｂを水平方向に個別に進退させるためのハンド進退機構とが備えられている。ハンド１３Ａ，１３Ｂは、たとえば、１枚の基板Ｗをそれぞれ保持できるように構成されている。なお、ハンド１３Ａ，１３Ｂは上下に重なった状態で配置されていてもよいが、図１では、明瞭化のために、ハンド１３Ａ，１３Ｂを紙面に平行な方向（水平方向）にずらして描いてある。
【００３２】
この構成により、主搬送ロボットＣＲは、受け渡しユニットＰＡＳＳから未処理の一枚の基板Ｗをハンド１３Ａで受け取り、その未処理の基板Ｗをいずれかの処理ユニットＳＰＩＮ１〜ＳＰＩＮ１２に搬入する。また、主搬送ロボットＣＲは、処理ユニットＳＰＩＮ１〜ＳＰＩＮ１２で処理された処理済みの基板Ｗをハンド１３Ｂで受け取り、その基板Ｗを受け渡しユニットＰＡＳＳに渡す。
【００３３】
処理ユニットＳＰＩＮ１〜ＳＰＩＮ１２は、基板Ｗを１枚ずつ処理する枚葉型の処理ユニットである。処理ユニットＳＰＩＮ１〜ＳＰＩＮ１２は、たとえば、１枚の基板Ｗを水平姿勢で保持して回転させるスピンチャック１５と、スピンチャック１５に対して処理液（薬液またはリンス液）を供給する処理液ノズル１６とを処理室１７（チャンバ）内に備えた、回転液処理ユニットであってもよい。図２では、処理ユニットＳＰＩＮ３についてのみ、その内部構成を示し、他の処理ユニットの内部構成の図示を省いてある。
【００３４】
図３は、前記基板処理装置の電気的構成を説明するためのブロック図である。基板処理装置は、処理ユニットＳＰＩＮ１〜ＳＰＩＮ１２、主搬送ロボットＣＲおよびインデクサロボットを制御するコンピュータ２０を備えている。コンピュータ２０は、パーソナルコンピュータ（ＦＡパソコン）の形態を有していてもよく、制御部２１と、出入力部２２と、記憶部２３とを備えている。制御部２１は、ＣＰＵ等の演算ユニットを含む。出入力部２２は、表示ユニット等の出力機器と、キーボード、ポインティングデバイス、タッチパネル等の入力機器とを含む。さらに、出入力部２２は、ホストコンピュータ２４との通信のための通信モジュールを含む。記憶部２３は、固体メモリデバイス、ハードディスクドライブ等の記憶装置を含む。
【００３５】
制御部２１は、スケジューリング機能部２５と、処理実行指示部２６とを含む。スケジューリング機能部２５は、基板Ｗを基板収容器Ｃから搬出し、処理ユニットＳＰＩＮ１〜ＳＰＩＮ１２で処理した後、基板収容器Ｃに収容するために、基板処理装置のリソースを時系列に従って作動させるための計画（スケジュール）を作成する。処理実行指示部２６は、スケジューリング機能部２５によって作成されたスケジュールに従って、基板処理装置のリソースを作動させる。
【００３６】
記憶部２３は、制御部２１が実行するプログラム３０と、ホストコンピュータ２４から受信した処理内容データ４０と、スケジューリング機能部２５によって作成されたスケジュールデータ５０とを含む各種データ等を記憶するように構成されている。
記憶部２３に記憶されたプログラム３０は、制御部２１をスケジューリング機能部２５として作動させるためのスケジュール作成プログラム３１と、制御部２１を処理実行指示部２６として作動させるための処理実行プログラム３２とを含む。
【００３７】
処理内容データ４０は、各基板Ｗに付与されたプロセスジョブ（ＰＪ）符号と、プロセスジョブ符号に対応付けられたレシピとを含む。レシピは、基板処理内容を定義したデータであり、基板処理条件および基板処理手順を含む。より具体的には、並行処理ユニット情報、使用処理液情報、処理時間情報等を含む。並行処理ユニット情報とは、使用可能な処理ユニットを指定する情報であり、指定された処理ユニットによる並行処理が可能であることを表す。換言すれば、指定処理ユニットのうちの一つが使用できないときには、それ以外の指定処理ユニットによる代替が可能であることを表す。「使用できないとき」とは、当該処理ユニットが別の基板Ｗの処理のために使用中であるとき、当該処理ユニットが故障中であるとき、オペレータが当該処理ユニットで基板Ｗの処理をさせたくないと考えているとき、などである。プロセスジョブとは、共通の処理が施される１枚または複数枚の基板Ｗをいう。プロセスジョブ符号とは、プロセスジョブを識別するための識別情報（基板群識別情報）である。すなわち、共通のプロセスジョブ符号が付与された複数枚の基板Ｗには、当該プロセスジョブ符号に対応付けられたレシピによる共通の処理が施される。ただし、異なるプロセスジョブ符号に対応する基板処理内容（レシピ）が同じである場合もあり得る。たとえば、処理順序（基板収容器Ｃからの払い出し順序）が連続している複数枚の基板Ｗに対して共通の処理が施されるとき、それらの複数枚の基板Ｗに対して共通のプロセスジョブ符号が付与される。
【００３８】
制御部２１は、各基板Ｗに対する処理内容データを取得して、記憶部２３に記憶させる。処理内容データの取得および記憶は、各基板Ｗに対するスケジューリングが実行されるよりも前に行われればよい。たとえば、基板収容器ＣがステージＳＴ１〜ＳＴ４に保持された直後に、ホストコンピュータ２４から制御部２１に当該基板収容器Ｃに収容された基板Ｗに対応する処理内容データが与えられてもよい。
【００３９】
図４および図５は、スケジューリング機能部２５による処理例を説明するためのフローチャートである。より具体的には、制御部２１（コンピュータ２０）がスケジュール作成プログラム３１を実行することによって行われる処理が表されている。換言すれば、スケジュール作成プログラム３１には、図４および図５に示す処理をコンピュータに実行させるようにステップ群が組み込まれている。
【００４０】
ホストコンピュータ２４からもしくは出入力部２２からオペレータによって基板処理開始の指示が与えられると（ステップＳ１）、スケジューリング機能部２５は、基板処理開始指示が与えられた全ての基板Ｗに関して、仮タイムテーブルを作成する（ステップＳ２）。基板処理開始指示は、基板収容器Ｃに収容された全ての基板Ｗを一単位として発行されてもよい。基板処理開始指示は、一つまたは複数のプロセスジョブ符号が付与された基板Ｗの処理開始を指示するものであってもよい。
【００４１】
たとえば、処理内容データにおいて或るプロセスジョブ符号に対応付けられたレシピが、処理ユニットＳＰＩＮ１〜ＳＰＩＮ１２の並行処理を指定しているとする。すなわち、当該レシピに従う基板処理が、１２個の処理ユニットＳＰＩＮ１〜ＳＰＩＮ１２のいずれにおいても実行可能である場合を考える。この場合、当該プロセスジョブ符号が付与された基板Ｗが処理を受けるときに通る経路は、１２通りである。すなわち、その基板Ｗの処理のために選択し得る経路は、処理ユニットＳＰＩＮ１〜ＳＰＩＮ１２のいずれかを通る１２個の経路である。そこで、スケジューリング機能部２５は、その１２個の経路に対応した仮タイムテーブルを作成する。
【００４２】
処理ユニットＳＰＩＮ１を通る経路に対応した仮タイムテーブルを図６に示す。この仮タイムテーブルは、インデクサロボットＩＲによる基板収容器Ｃからの基板Ｗの搬出（Ｇｅｔ）を表すブロックと、インデクサロボットＩＲによる当該基板Ｗの受け渡しユニットＰＡＳＳへの搬入（Ｐｕｔ）を表すブロックと、主搬送ロボットＣＲによる受け渡しユニットＰＡＳＳからの当該基板Ｗの搬出（Ｇｅｔ）を表すブロックと、主搬送ロボットＣＲによる当該基板Ｗの処理ユニットＳＰＩＮ１への搬入（Ｐｕｔ）を表すブロックと、処理ユニットＳＰＩＮ１による当該基板Ｗに対する処理を表す処理ブロックと、主搬送ロボットＣＲによる処理ユニットＳＰＩＮ１からの処理済みの基板Ｗの搬出（Ｇｅｔ）を表すブロックと、主搬送ロボットＣＲによる当該基板Ｗの受け渡しユニットＰＡＳＳへの搬入（Ｐｕｔ）を表すブロックと、インデクサロボットＩＲによる当該基板Ｗの受け渡しユニットＰＡＳＳからの搬出（Ｇｅｔ）を表すブロックと、インデクサロボットＩＲによる当該基板Ｗの基板収容器Ｃへの搬入（Ｐｕｔ）を表すブロックとを含む。スケジューリング機能部２５は、これらのブロックを時間軸上で重なり合いのないように順番に配置することによって、仮タイムテーブルを作成する。スケジューリング機能部２５は、同じ基板Ｗに対して、処理ユニットＳＰＩＮ２〜ＳＰＩＮ１２をそれぞれ通る経路に対応した同様の仮タイムテーブル（処理ブロックを処理ユニットＳＰＩＮ２〜ＳＰＩＮ１２にそれぞれ配置した仮タイムテーブル）を作成する。こうして、一枚の基板Ｗに対して合計１２経路分の仮タイムテーブルが作成される。
【００４３】
同様の仮タイムテーブルが同じプロセスジョブ符号が付与された基板Ｗの全てに対応して作成される。こうして作成された仮タイムテーブルは、スケジュールデータ５０の一部として記憶部２３に格納される。仮タイムテーブルの作成段階では、別の基板Ｗに関するブロックとの干渉（時間軸上での重なり合い）は考慮されない。
スケジューリング指示が発生すると（ステップＳ３）、当該プロセスジョブの基板Ｗに関するブロックの配置が行われる（全体スケジューリング。ステップＳ４〜Ｓ１１）。具体的には、スケジューリング機能部２５は、当該基板Ｗの仮タイムテーブルを記憶部２３から読み出して、その仮タイムテーブルを構成しているブロックを時間軸上に配置していく。
【００４４】
さらに具体的に説明すると、スケジューリング機能部２５は、当該プロセスジョブの最初の基板Ｗかどうかを判断する（ステップＳ４）。当該プロセスジョブの最初の基板Ｗであるときは（ステップＳ４：ＹＥＳ）、そのプロセスジョブに対応したレシピは、前準備工程（プリディスペンス等）を必要としているかどうかが判断される（ステップＳ５）。前準備工程の要否は、プロセスジョブ符号に対応付けられたレシピにおいて指定される。前準備工程が必要なときは、当該基板Ｗを処理する可能性のある処理ユニットＳＰＩＮ１〜ＳＰＩＮ１２（前述の例では全ての処理ユニット）に関して、前準備工程の実行を表すブロック（前準備ブロック）が配置される（ステップＳ６）。全ての処理ユニットＳＰＩＮ１〜ＳＰＩＮ１２に関して前準備ブロックを配置した例を図７に示す。当該プロセスジョブの最初の基板Ｗ以外の基板Ｗのスケジューリングを実行するときには（ステップＳ４：ＮＯ）、ステップＳ５，Ｓ６の処理が省かれる。また、当該プロセスジョブの最初の基板Ｗのスケジューリングを行うときであっても、当該プロセスジョブに対応するレシピが前準備工程を指定していないものであれば（ステップＳ５：ＮＯ）、ステップＳ６の処理が省かれる。
【００４５】
次に、スケジューリング機能部２５は、当該基板Ｗに対応する仮タイムテーブルを参照し、当該仮タイムテーブルを構成するブロックを一つ取得する（ステップＳ７）。このとき取得されるブロックは、未配置のブロックのうち仮タイムテーブルの時間軸上で最も早い位置に配置されているブロックである。さらに、スケジューリング機能部２５は、当該取得したブロックを配置できる位置を検索し（ステップＳ８）、その検索された位置に当該ブロックを配置する（ステップＳ９）。各ブロックは、同一リソースが同じ時間に重複して使用されないようにしながら、時間軸上で最も早い位置に配置される。同様の動作が、仮タイムテーブルを構成する全てのブロックに関して繰り返し実行される（ステップＳ１０）。そして、仮タイムテーブルを構成する全てのブロックを配置し終えると（ステップＳ１０：ＹＥＳ）、当該基板Ｗに関するスケジューリングが完了する（ステップＳ１１）。同じプロセスジョブの全ての基板Ｗに関して、順に（たとえば基板収容器Ｃから払い出される順序で）、同様の処理が繰り返される。
【００４６】
図８に、プロセスジョブＡの最初の基板Ａ１に対応する仮タイムテーブルを構成する全てのブロックＡ１１〜Ａ１９を配置した例を示す。処理ユニットＳＰＩＮ１における前準備ブロックの後に、処理ブロックが配置される。つまり、前準備ブロックと処理ブロックとが時間的に重なり合わないように、当該基板Ａ１の仮タイムテーブルを構成する各ブロックが配置される。さらに具体的には、スケジューリング機能部２５は、仮タイムテーブルから取得されたブロックＡ１１〜Ａ１９を対応するリソースのスペースに時間軸上において最も早い位置に（すなわち前詰めで）順に配置していく。このとき、スケジューリング機能部２５は、同一リソースのスペースでブロックが重なり合わないように各ブロックを配置する。したがって、処理ブロックＡ１５は、既に配置されている前準備ブロックの後に配置されることになる。そのため、二点鎖線で示すように、ブロックＡ１１〜Ａ１４は時間的に隙間のない状態で配置できるが、処理ブロックＡ１５を配置するとブロックＡ１４と処理ブロックＡ１５との間に間隔が開く。そこで、この間隔が開かないように、スケジューリング機能部２５は、処理ブロックＡ１５を配置して間隔が開くことが判明した時点でブロックＡ１１〜Ａ１４を時間軸上で後方にシフトさせて、それらの開始時刻を遅らせる。こうして、図８の状態のスケジュールが得られる。
【００４７】
同じプロセスジョブＡの２枚目の基板Ａ２に対応する仮タイムテーブルを構成する全てのブロックＡ２１〜Ａ２９を配置した例を図９に示す。１枚目の基板Ａ１に対応してインデクサロボットＩＲのスペースに配置されたブロックＡ１１，Ａ１２から最小時間間隔を開けて２枚目の基板Ａ２に対応するインデクサロボットＩＲのブロックＡ２１，Ａ２２が配置されている。同様に、１枚目の基板Ａ１に対応して主搬送ロボットＣＲのスペースに配置されたブロックＡ１３，Ａ１４から最小時間間隔を開けて２枚目の基板Ａ２に対応する主搬送ロボットＣＲのブロックＡ２３，Ａ２４が配置されている。ブロックＡ２４の終了タイミングでは処理ユニットＳＰＩＮ１は使用中である（処理ブロックＡ１５が配置されている）ので、２枚目の基板Ａ２のための処理ブロックＡ２５は、処理ユニットＳＰＩＮ２のスペースに配置される。すなわち、２枚目の基板Ａ２は処理ユニットＳＰＩＮ２において処理を受けるように計画される。なお、２枚目の基板Ａ２を処理ユニットＳＰＩＮ２〜ＳＰＩＮ１２のいずれに配置してもスループットは同じであるが、スループットが同じである場合は若いチャンバ番号の処理ユニットが選択される。そして、処理ブロックＡ２５の終了タイミングと整合するように、１枚目の基板Ａ１に対応する主搬送ロボットＣＲのブロックＡ１６，Ａ１７から最小間隔を開けて２枚目の基板Ａ２に対応する主搬送ロボットＣＲのブロックＡ２６，Ａ２７が配置される。さらに、ブロックＡ２７の終了タイミングと整合するように、１枚目の基板Ａ１に対応するインデクサロボットＩＲのブロックＡ１８，Ａ１９から最小間隔を開けて２枚目の基板Ａ２に対応するインデクサロボットＩＲのブロックＡ２８，Ａ２９が配置される。
【００４８】
図５は、後処理ブロックの配置に関するスケジューリング機能部２５の動作を示す。後処理ブロックとは、処理ユニットＳＰＩＮ１〜ＳＰＩＮ１２での後処理の実行を指定するためのブロックである。後処理の具体例は、処理ユニットＳＰＩＮ１〜ＳＰＩＮ１２の処理室１７内の洗浄処理（チャンバ洗浄）である。処理室１７内の洗浄を実行することによって、次に処理室１７に搬入される基板に対して、前の基板に対する処理の影響が及ぶことを回避できる。これにより、精密な基板処理を実現できる。
【００４９】
基板ＷがステージＳＴ１〜ＳＴ４に保持された基板収容器Ｃから払い出されると（ステップＳ１５）、スケジューリング機能部２５は、その基板Ｗが現在処理中のプロセスジョブの最後の基板Ｗかどうかを判断する（ステップＳ１６）。最後の基板Ｗでなければ（ステップＳ１６：ＮＯ）、後処理ブロックの付加は不要であるので、処理を終了する。最後の基板Ｗの場合には、スケジューリング機能部２５は、当該プロセスジョブのレシピが後処理を要するものであるか否かを判断する（ステップＳ１７）。後処理の要否はレシピにおいて指定される。後処理が不要であれば（ステップＳ１７：ＮＯ）、処理を終了する。後処理が必要であれば（ステップＳ１７：ＹＥＳ）スケジューリング機能部２５は、当該プロセスジョブの基板Ｗの処理に用いられることが計画された全ての処理ユニットＳＰＩＮ１〜ＳＰＩＮ１２のスペースに後処理ブロックを配置する（ステップＳ１８）。
【００５０】
図１０に後処理ブロックを配置した例を示す。この例では、同じプロセスジョブ符号「Ａ」が付与された２枚の基板Ａ１，Ａ２に対して処理ユニットＳＰＩＮ１，ＳＰＩＮ２でそれぞれ処理を行い、これらの２つの処理ユニットＳＰＩＮ１，ＳＰＩＮ２における処理ブロックＡ１５，Ａ２５の後のスペースに後処理ブロックをそれぞれ配置した例を示す。
後処理ブロックを配置した後（ステップＳ１８）、または後処理の必要の無いとき（ステップＳ１６，Ｓ１７：ＮＯ）には、スケジューリング機能部２５は、次のプロセスジョブの基板Ｗの有無を判断する（ステップＳ１９）。次のプロセスジョブの基板Ｗがあれば（ステップＳ１９：ＹＥＳ）、図４に示された処理を当該プロセスジョブの基板Ｗに対して実行する。次のプロセスジョブの基板がなければ（ステップＳ１９：ＮＯ）、処理を終える。図１１には、次のプロセスジョブＢの一枚目の基板Ｂ１に対応するブロックＢ１１〜Ｂ１９を配置した例を示す。この例では、当該基板Ｂ１を処理ユニットＳＰＩＮ１で処理するように計画されている。
【００５１】
図１２には、プロセスジョブＡのレシピには後処理の指定があり（前準備の指定なし）、その次のプロセスジョブＢのレシピには前準備の指定がある場合が示されている。また、プロセスジョブＢのレシピは、処理ユニットＳＰＩＮ１，ＳＰＩＮ２での並行処理を指定しているものとする。
プロセスジョブＡの最後の基板Ａ２がスタートすると、当該プロセスジョブＡの基板処理に用いられた全ての処理ユニットＳＰＩＮ１，ＳＰＩＮ２に対して後処理ブロックが配置される。さらに、プロセスジョブＡの最後の基板Ａ２がスタートした時点で、当該指定された全ての処理ユニットＳＰＩＮ１，ＳＰＩＮ２に対して、後処理ブロックが配置される。その後、プロセスジョブＢの最初の基板Ｂ１のためのブロックＢ１１〜Ｂ１９、プロセスジョブＢの２番目の基板Ｂ２のためのブロックＢ２１〜Ｂ２９が順次配置される。
【００５２】
以上のように、この実施形態によれば、一枚一枚の基板Ｗに対して、処理内容を規定する複数のブロックを時系列に従って結合した仮タイムテーブルが、可能性のある全ての経路に関して作成される。そして、複数枚の基板Ｗに関する仮タイムテーブルからブロックを取得し、互いに干渉しないように（同一リソースが同時に使用されないように）、時系列に従って配置することによって、全体スケジュールが作成されて、記憶部２３に格納される。こうして、枚葉型の処理ユニットＳＰＩＮ１〜ＳＰＩＮ１２を効率的に稼働させることができる全体スケジュールを作成することができる。処理実行指示部２６は、記憶部２３に格納された全体スケジュールに従って基板処理装置の各リソースを稼働させる。これにより、枚葉型基板処理装置の各部の稼働率を高め、生産性を向上することができる。
【００５３】
また、この実施形態では、前準備工程および／または後処理工程のためのメンテナンスブロックを配置できるようになっている。これにより、異なるプロセスジョブの基板Ｗの処理の前または後に必要なメンテナンスを行うことができるので、品質の高い基板処理が可能となる。
図１３は、この発明の第２の実施形態を説明するためのフローチャートであり、スケジューリング機能部２５によって実行される処理例が示されている。この第２の実施形態の説明において、前述の図１〜図３を再び参照し、第１の実施形態との相違点を中心に説明する。図１３には、制御部２１（コンピュータ２０）がスケジュール作成プログラム３１を実行することによって行われる処理が表されている。換言すれば、この実施形態において、スケジュール作成プログラム３１には、図１３に示す処理をコンピュータに実行させるようにステップ群が組み込まれている。
【００５４】
ホストコンピュータ２４からもしくは出入力部２２からオペレータによって基板処理開始の指示が与えられると（ステップＳ２１）、スケジューリング機能部２５は、基板処理開始指示が与えられた全ての基板Ｗに関して、仮タイムテーブルを作成する（ステップＳ２２）。基板処理開始指示は、基板収容器Ｃに収容された全ての基板Ｗを一単位として発行されてもよい。基板処理開始指示は、一つまたは複数のプロセスジョブの基板Ｗの処理開始を指示するものであってもよい。仮タイムテーブルの作成に関しては、前述の第１の実施形態の場合と同様である（図６参照）。
【００５５】
スケジューリング指示が発生すると（ステップＳ２３）、当該プロセスジョブの基板Ｗに関するブロックの配置が行われる（ステップＳ２４〜Ｓ３８）。具体的には、スケジューリング機能部２５は、当該基板Ｗの仮タイムテーブルを記憶部２３から読み出して、その仮タイムテーブルを構成しているブロックを時間軸上に配置していく。
さらに具体的に説明すると、スケジューリング機能部２５は、当該基板Ｗに対応する仮タイムテーブルを参照し、当該仮タイムテーブルを構成するブロックを一つ取得する（ステップＳ２４）。このとき取得されるブロックは、未配置のブロックのうち仮タイムテーブルの時間軸上で最も早い位置に配置されているブロックである。さらに、スケジューリング機能部２５は、当該取得したブロックを配置できる位置を検索し（ステップＳ２５）、その検索された位置に当該ブロックを配置する（ステップＳ２６）。各ブロックは、同一リソースが同じ時間に重複して使用されないようにしながら、時間軸上で最も早い位置に配置される。
【００５６】
スケジューリング機能部２５は、配置したブロックの直前に配置された同一リソースのブロックに後処理が必要かどうかを判断する（ステップＳ２７）。すなわち、スケジューリング機能部２５は、所定の後処理実行条件が満たされているかどうかを判断する。ここでの後処理実行条件は、配置したブロックが処理ユニットでの処理を表す処理ブロックであること、および同一リソース（処理ユニット）に対して直前に配置されているブロックが、共通のプロセスジョブ符号が付与された基板群のうち当該処理ユニットで最後に処理される基板に対応する処理ブロックであることを含む。さらに、後処理実行条件は、配置した処理ブロックのプロセスジョブのレシピ（処理内容）と、同一リソースに対して直前に配置されている処理ブロックのプロセスジョブのレシピ（処理内容）とに関する条件を含んでいてもよい。より具体的には、後処理実行条件は、配置した処理ブロックのプロセスジョブに対応するレシピで指定されている使用薬液の種類と、直前のプロセスジョブに対応するレシピで指定されている使用薬液の種類とが異なることを含むことが好ましい。すなわち、連続するプロセスジョブの処理に同種の薬液が用いられるときには、後処理実行条件は満たされない。そのほか、後処理実行条件は、当該処理ユニットでの基板処理枚数が所定枚数に達したことを含んでいてもよい。所定枚数に達するたびに後処理（たとえば処理室１７内の洗浄）を行うことによって、基板処理品質を保つことができる。
【００５７】
スケジューリング機能部２５は、後処理が不要であると判断すると（ステップＳ２７：ＮＯ）、次に、配置したブロックに前準備が必要であるか否かを判断する（ステップＳ３１）。すなわち、スケジューリング機能部２５は、所定の前準備実行条件が満たされているかどうかを判断する。前準備実行条件は、配置したブロックが処理ユニットでの処理を表す処理ブロックであること、および共通のプロセスジョブ符号が付与された基板のうち当該処理ユニットで最初に処理される基板に対応する処理ブロックであることを含む。さらに、前準備実行条件は、配置した処理ブロックのプロセスジョブに対応するレシピ（処理内容）と、同一リソースに対して直前に配置されている処理ブロックのプロセスジョブに対応するレシピ（処理内容）とに関する条件を含んでいてもよい。より具体的には、前準備実行条件は、配置した処理ブロックのプロセスジョブに対応するレシピにおいて指定されている使用薬液の種類が、同一リソースに対して直前に配置されている処理ブロックのプロセスジョブのレシピにおいて指定されている使用薬液の種類と異なることを含むことが好ましい。すなわち、同種の薬液が用いられるときには、前準備実行条件は満たされない。そのほか、前準備実行条件は、当該処理ユニットが直前に使用されてからの経過時間が所定時間（たとえば５分）以上経過したことを含んでいてもよい。
【００５８】
前準備実行条件が満たされないときは（ステップＳ３１：ＮＯ）、スケジューリング機能部２５は、仮タイムテーブルを構成する全てのブロックの配置を完了したかどうかを判断し（ステップＳ３５）、未配置のブロックがあれば、ステップＳ２４からの処理を繰り返す。
前準備実行条件および後処理実行条件がいずれも満たされない場合のスケジューリング例を図１４に示す。この例では、プロセスジョブＡの１枚目の基板Ａ１に対応するブロックＡ１１〜Ａ１９が配置されている。処理ブロックＡ１５は、処理ユニットＳＰＩＮ１のスペースに配置されている。プロセスジョブＡの２枚目の基板Ａ２に関しては、当該基板Ａ２に対応したインデクサロボットＩＲおよび主搬送ロボットＣＲの基板搬送動作を表すブロックＡ２１〜Ａ２４が、１枚目の基板Ａ１に対応したインデクサロボットＩＲおよび主搬送ロボットＣＲの基板搬送動作を表すブロックＡ１１〜Ａ１４と干渉しないように配置されている。さらに、２枚目の基板Ａ２に対応した処理ブロックＡ２５は、処理ユニットＳＰＩＮ２のスペースに配置されている。こうして、プロセスジョブＡの２枚の基板Ａ１，Ａ２を処理ユニットＳＰＩＮ１およびＳＰＩＮ２で並行処理するための計画が策定されている。
【００５９】
次のプロセスジョブＢに対応するレシピは、たとえば、処理ユニットＳＰＩＮ１，ＳＰＩＮ２での並行処理を指定している。そこで、それらのうちで直前の使用終了時間が最も早い処理ユニットＳＰＩＮ１に対して、１枚目の基板Ｂ１の処理ブロックＢ１５が配置されるように、当該基板Ｂ１に対応した各ブロックＢ１１〜Ｂ１９が配置される。図１４において、主搬送ロボットＣＲによる基板Ｂ１の処理ユニットＳＰＩＮ１への搬入を表すブロックＢ１４と、主搬送ロボットＣＲによる基板Ａ１の処理ユニットＳＰＩＮ１からの搬出を表すブロックＡ１６とは、時間軸上で重なりあっている。これは、基板Ｂ１の搬入が一方のハンド８Ａで実行され、基板Ａ１の搬出が他方のハンド８Ｂで実行されるため、これらの動作が時間的に重複することを表している。
【００６０】
再び、図１３を参照する。配置した処理ブロックが後処理実行条件を満たすとき（ステップＳ２７：ＹＥＳ）、すなわち、配置した処理ブロックの直前に配置されている同一リソースの処理ブロックに対して後処理が必要であるとき、スケジューリング機能部２５は、その処理ブロックの直前、すなわち直前の処理ブロックの直後に、後処理ブロックを配置する（ステップＳ２８）。そして、ブロック配置位置を検索する（ステップＳ２９）。そして、検索された位置にブロックを再配置する（ステップＳ３０）。
【００６１】
具体的には、たとえば、図１４において、プロセスジョブＢの一枚目の基板Ｂ１に対応するブロックＢ１１〜Ｂ１５を配置したとする。そして、処理ブロックＢ１５を配置するとき、後処理実行条件が満たされ、同一リソース（処理ユニットＳＰＩＮ１）に対して直前に配置された処理ブロックＡ１５に対する後処理が必要であると判断されたとする。この場合、処理ブロックＡ１５，Ｂ１５間に後処理ブロックが挿入される。後処理ブロックを挿入した例を図１５に示す。後処理ブロックの挿入に伴って、処理ブロックＢ１５が後処理ブロックの後に配置され、それに合わせて、処理ブロックＢ１５よりも前のブロックＢ１１〜Ｂ１４も時間軸上で後にシフトされている。処理ブロックＢ１５を配置した後は、その処理ブロックＢ１５の配置に合わせて、残りのブロックＢ１６〜Ｂ１９が配置される。
【００６２】
配置した処理ブロックが前準備実行条件を満たすとき（図１３のステップＳ３１：ＹＥＳ）、スケジューリング機能部２５は、その処理ブロックの直前に、前準備ブロックを配置する（ステップＳ３２）。そして、ブロック配置位置を検索する（ステップＳ３３）。そして、検索された位置にブロックを再配置する（ステップＳ３４）。
具体的には、たとえば、図１６に示すように、プロセスジョブＡの一枚目の基板Ａ１に対応するブロックＡ１１〜Ａ１５を配置したとする。そして、処理ブロックＡ１５を配置するとき、前準備実行条件が満たされ、当該処理ブロックＡ１５に対する前準備が必要であると判断されたとする。この場合、処理ブロックＡ１５の直前に前準備ブロックが挿入される。前準備ブロックを挿入した例を図１７に示す。前準備ブロックの挿入に伴って、処理ブロックＡ１５が前準備ブロックの後に配置され、それに合わせて、処理ブロックＡ１５の前のブロックＡ１１〜Ａ１４も時間軸上で後にシフトされている。処理ブロックＡ１５を配置した後は、図１８に示すように、その処理ブロックＡ１５の配置に合わせて、残りのブロックＡ１６〜Ａ１９が配置される。
【００６３】
プロセスジョブＡのスケジューリングの開始に先立って全ての並行処理ユニットＳＰＩＮ１〜ＳＰＩＮ１２に前準備ブロックを配置するわけではなく、処理ブロックＡ１５が配置される処理ユニットＳＰＩＮ１に対してのみ前準備ブロックが配置される。そのため、図１９に示すように、前準備の必要のない別のプロセスジョブＢの基板Ｂ１の処理ブロックＢ１５を処理ユニットＳＰＩＮ２のスペースに配置するときに、基板Ｂ１のための処理ブロック群を、基板Ａ１の処理のための処理ブロック群よりも、時間軸上で前に配置できる場合がある。すなわち、基板収容器Ｃから後に払い出される基板Ｂ１に対する処理が先に払い出される基板Ａ１に対する処理を追い越す。このような追い越しが生じない場合であっても、処理ユニットＳＰＩＮ２における無駄な前準備を省くことができる結果、基板Ｂ１に対する処理を早く開始できる。したがって、無駄な前準備を省いてリソースの稼働率を高め、第１の実施形態の場合よりも生産性を向上できる。
【００６４】
図３を参照して、スケジューリング機能部２５は、当該プロセスジョブ符号が付与された全ての基板に対応する仮タイムテーブルを構成する全てのブロックの配置を終えると（ステップＳ３５：ＹＥＳ）、当該プロセスジョブで使用した処理ユニットに対して後処理が必要かどうかを判断する（ステップＳ３６）。すなわち、後処理実行条件が満たされるかどうかを判断する。この場合の後処理実行条件は、当該処理ユニットで処理された基板の枚数が所定枚数（たとえば４５枚）に達したことを含むことが好ましい。後処理実行条件満たされなければ（ステップＳ３６：ＮＯ）、当該プロセスジョブに対するスケジューリングを終了する（ステップＳ３８）。後処理実行条件が満たされると（ステップＳ３６：ＹＥＳ）、当該プロセスジョブで使用した処理ユニットの最後の処理ブロックの直後のスペースに後処理ブロックを配置し（ステップＳ３７）、当該プロセスジョブに対するスケジューリングを終える（ステップＳ３８）。
【００６５】
後処理ブロックを配置した具体例を図２０に示す。図２０では、プロセスジョブＢの処理のために処理ユニットＳＰＩＮ１およびＳＰＩＮ２が用いられている。より具体的には、１枚目の基板Ｂ１に対応した処理ブロックＢ１５および２枚目の基板Ｂ２に対応した処理ブロックＢ２５がそれぞれ処理ユニットＳＰＩＮ１およびＳＰＩＮ２に配置されており、それらの直後に、処理ユニットＳＰＩＮ１およびＳＰＩＮ２に対応するように後処理ブロックがそれぞれ配置されている。
【００６６】
図２１には、プロセスジョブＢの１枚目の基板Ｂ１の処理ブロックＢ１５において、その直前の同一リソースの処理ブロックＡ１５に対する後処理が必要であり、かつ当該処理ブロックＢ１５の前に前準備が必要であると判断された例を示す。したがって、処理ユニットＳＰＩＮ１のスペースに配置された処理ブロックＡ１５および処理ブロックＢ１５の間に後処理ブロックおよび前準備ブロックが相前後して配置されている。この場合、後処理ブロックが時間軸上で先に配置され、前準備ブロックが時間軸上で後に配置されている。同様に、この例では、プロセスジョブＢの１枚目の基板Ｂ２の処理ブロックＢ２５において、その直前の同一リソースの処理ブロックＡ２５に対する後処理が必要であり、かつ当該処理ブロックＢ２５の前に前準備が必要であると判断されている。それに応じて、処理ユニットＳＰＩＮ２のスペースに配置された処理ブロックＡ２５および処理ブロックＢ２５の間に後処理ブロックおよび前準備ブロックが相前後して配置されている。より具体的には、後処理ブロックが時間軸上で先に配置され、前準備ブロックが時間軸上で後に配置されている。
【００６７】
以上のように、この実施形態においても、一枚一枚の基板Ｗに対して、処理内容を規定する複数のブロックを時系列に従って結合した仮タイムテーブルが、可能性のある全ての経路に関して作成される。そして、複数枚の基板Ｗに関する仮タイムテーブルからブロックを取得し、互いに干渉しないように（同一リソースが同時に使用されないように）、時系列に従って配置することによって、全体スケジュールが作成され、記憶部２３に格納される。こうして、枚葉型の処理ユニットＳＰＩＮ１〜ＳＰＩＮ１２を効率的に稼働させることができる全体スケジュールを作成することができる。処理実行指示部２６は、記憶部２３に格納された全体スケジュールに従って、基板処理装置の各リソースを稼働させる。これにより、枚葉型基板処理装置の各部の稼働率を高め、生産性を向上することができる。
【００６８】
また、この実施形態では、前準備工程および／または後処理工程のためのメンテナンスブロックを配置できるようになっている。これにより、プロセスジョブの異なる基板Ｗの処理の前または後に必要なメンテナンスを行うことができるので、品質の高い基板処理が可能となる。
さらに、この実施形態では、各処理ブロックを配置するときに、メンテナンスブロック（後処理ブロックおよび前準備ブロック）の配置の要否が判断される。そのため、各プロセスジョブのレシピによって指定された並行処理ユニットの全てに対して予め前準備を計画する第１の実施形態に比較すると、無駄な前準備が実行されることがなくなる。それに応じて、ブロックを時間軸上において前詰めで配置することが可能となるから、リソースの稼働率を一層高めて生産効率を向上できる。また、メンテナンスブロックは必要なときにだけ配置されるので、不必要な前準備または後処理が行われることがない。これによっても、リソース（主に処理ユニット）の稼働率を高めて、生産性の向上に寄与することができる。
【００６９】
図２２は、前準備実行条件判断（図１３のステップＳ３１）の具体例を示すフローチャートである。スケジューリング機能部２５は、配置したブロックが処理ユニットでの処理を表す処理ブロックであるかどうか（ステップＳ４１）、計画中のプロセスジョブの基板のうち当該処理ユニットで最初に処理される基板に対応する処理ブロックであるかどうか（ステップＳ４２）、計画中のプロセスジョブのレシピで前準備が指定されているかどうか（ステップＳ４３）、を判断する。これらの判断のいずれかが否定であれば、スケジューリング機能部２５は、前準備ブロックを配置しない。
【００７０】
ステップＳ４１〜４３の判断がいずれも肯定であれば、スケジューリング機能部２５は、さらに、先にスタート指示されている別のプロセスジョブがあるか否かを判断する（ステップＳ４４）。この判断が肯定であれば、スケジューリング機能部２５は、先にスタートしているプロセスジョブに対して後処理が計画されたかどうか、すなわち後処理ブロックが配置されているかどうかを判断する（ステップＳ４５）。後処理ブロックが配置されていれば（ステップＳ４５：ＹＥＳ）、スケジューリング機能部２５は、前準備ブロックを配置する（ステップＳ３２）。後処理ブロックが配置されていなければ（ステップＳ４５：ＮＯ）、スケジューリング機能部２５は、先にスタートしているプロセスジョブと当該計画中のプロセスジョブとで、レシピが同じかどうかを判断する（ステップＳ４６）。レシピが異なる場合は（ステップＳ４６：ＮＯ）、スケジューリング機能部２５は、前準備ブロックを配置する（ステップＳ３２）。レシピが同じであれば（ステップＳ４６：ＹＥＳ）、スケジューリング機能部２５は、前準備ブロックの配置を省く。
【００７１】
先にスタート指示されている別のプロセスジョブがなければ（ステップＳ４４：ＮＯ）、スケジューリング機能部２５は、直前のプロセスジョブがスタートしてから、所定時間（たとえば５分）以上経過しているかどうかを判断する（ステップＳ４７）。所定時間以上経過していれば（ステップＳ４７：ＹＥＳ）、スケジューリング機能部２５は、前準備ブロックを配置する（ステップＳ３２）。所定時間の経過前であれば（ステップＳ４７：ＮＯ）、スケジューリング機能部２５は、さらに、直前のプロセスジョブと計画中のプロセスジョブとのレシピが同じかどうかを判断する（ステップＳ４８）。レシピが同じであれば（ステップＳ４８：ＹＥＳ）、スケジューリング機能部２５は、前準備ブロックの配置を省略する。レシピが異なる場合には（ステップＳ４８：ＮＯ）、スケジューリング機能部２５は、前準備ブロックを配置する。
【００７２】
なお、レシピが同じかどうかの判断（ステップＳ４６，Ｓ４８）の代わりに、使用薬液の種類が同じかどうかを判断するようにしてもよい。
図２３は、この発明の第３の実施形態を説明するためのフローチャートであり、スケジューリング機能部２５によって実行される処理例が示されている。この第３の実施形態の説明において、前述の図１〜図３等を再び参照し、第２の実施形態との相違点を中心に説明する。図２３には、制御部２１（コンピュータ２０）がスケジュール作成プログラム３１を実行することによって行われる処理が表されている。換言すれば、この実施形態において、スケジュール作成プログラム３１には、図２３に示す処理をコンピュータに実行させるようにステップ群が組み込まれている。図２３において、図１３に示された処理と同様の処理に対応したステップは、同一参照符号で示す。
【００７３】
第２の実施形態においては、プロセスジョブのスケジューリングにおいて、直前のプロセスジョブに対する後処理ブロックの付加が行われている（ステップＳ２７〜Ｓ３０）。これに対して、第３の実施形態では、これらの処理が省かれ、次に実行されるプロセスジョブとの関係に基づいて、スケジューリング中のプロセスジョブに後処理ブロックを付加するか否かが決定される。
【００７４】
具体的には、プロセスジョブの全基板に対応する仮タイムテーブルを構成する全てのブロックの配置を終えると（ステップＳ３５：ＹＥＳ）、当該プロセスジョブで使用した処理ユニットに対して後処理が必要かどうかを判断する後処理実行条件判断処理（ステップＳ５１〜Ｓ５４）が行われる。より具体的に説明すると、スケジューリング機能部２５は、計画中のプロセスジョブのレシピで後処理が指定されているかどうかを判断する（ステップＳ５１）。後処理の指定がなければ（ステップＳ５１：ＮＯ）、後処理ブロックの配置が省かれる。後処理の指定があれば（ステップＳ５１：ＹＥＳ）、スケジューリング機能部２５は、計画中のプロセスジョブの後にスタート指示された別のプロセスジョブがあるかどうかを判断する（ステップＳ５２）。該当する別のプロセスジョブがなければ（ステップＳ５２：ＮＯ）、スケジューリング機能部２５は、後処理ブロックを配置する（ステップＳ３７）。該当する別のプロセスジョブがあれば（ステップＳ５２：ＹＥＳ）、スケジューリング機能部２５は、当該プロセスジョブで使用する処理ユニットにおいて、直前に後処理を実行してからの処理基板枚数が、当該プロセスジョブの実行によって所定枚数（たとえば４５枚）に達することになるかどうかを判断する（ステップＳ５３）。この判断が肯定されると、スケジューリング機能部２５は、当該プロセスジョブで使用する処理ブロックのスペースに後処理ブロックを配置する（ステップＳ３７）。処理基板枚数が所定枚数に達しない場合には（ステップＳ５３：ＮＯ）、スケジューリング機能部２５は、後にスタート指示されたプロセスジョブと当該計画中のプロセスジョブとで、レシピが同じかどうかを判断する（ステップＳ５４）。レシピが異なる場合は（ステップＳ５４：ＮＯ）、スケジューリング機能部２５は、後処理ブロックを配置する（ステップＳ３７）。レシピが同じであれば（ステップＳ５４：ＹＥＳ）、スケジューリング機能部２５は、後処理ブロックの配置を省く。
【００７５】
なお、レシピが同じかどうかの判断（ステップＳ５４）の代わりに、使用薬液の種類が同じかどうかを判断するようにしてもよい。
このようにして、第３の実施形態においても、第２の実施形態と同様の効果を奏することができる。より具体的には、相前後して実行されるプロセスジョブのレシピが同じであれば、先に実行されるプロセスジョブの後処理ブロックが省かれ、かつ後に実行されるプロセスジョブの前準備ブロックが省かれる。これにより、処理ユニットの稼働率を高めることができ、基板処理の生産性を高めることができる。ただし、プロセスジョブ間に長い時間間隔が生じる場合や、所定枚数の基板を処理した場合には、後処理ブロックおよび前準備ブロックが配置され、処理室内の環境が整えられる。これにより、高品質な基板処理を保証できる。
【００７６】
図２４は、図２２のステップＳ４６，Ｓ４８および図２３のステップＳ５４における判断の別の例を示す図である。図２２および図２３に示した判断処理に加えて、またはそれらの判断処理に代えて、図２４に例示する判断基準に従って後処理ブロックおよび前準備ブロックの配置の可否を決定してもよい。
具体的に説明すると、図２４には、プロセスジョブＡのレシピで指定される後処理と、プロセスジョブＢのレシピで指定される前準備との組み合わせの例が示されている。ただし、プロセスジョブＡ，Ｂは、相前後して実行されるプロセスジョブである。
【００７７】
前準備の例として、「チャンバ洗浄」、「ピン洗浄」、「プリディスペンス」が挙げられている。「チャンバ洗浄」とは、処理室（チャンバ）内の洗浄処理である。「チャンバ洗浄」は、たとえば、スピンチャックの洗浄、スピンチャックを収容する処理カップの洗浄、スピンチャックから飛び散る処理液を受けるガード（飛散防止部材）の洗浄などを含む。「ピン洗浄」とは、スピンチャックに備えられ、基板を保持するためのチャックピンを洗浄する処理である。「プリディスペンス」とは、処理液ノズルから処理液を一定量だけ吐出する工程である。
【００７８】
また、後処理の例として、「チャンバ洗浄」、「ピン洗浄」、「その他チャンバ内部品洗浄」が挙げられている。チャンバ洗浄およびピン洗浄については前述のとおりである。「その他チャンバ内部品洗浄」は、たとえば、スピンチャックの上方に設けられた遮断板のような、処理室内の他の部品を洗浄する処理である。遮断板は、基板処理時に基板表面に接近させられ、基板への処理液の跳ね返りを防ぐ目的等で処理室内に備えられることがある。
【００７９】
図２４に示された第１の例では、プロセスジョブＡの後処理として「チャンバ洗浄」が指定されており、プロセスジョブＢの前準備として「チャンバ洗浄」が指定されている。この場合、プロセスジョブＡの後処理およびプロセスジョブＢの前準備が同じ処理であるので、プロセスジョブＡの後処理ブロックおよびプロセスジョブＢの前準備ブロックは、いずれも配置されない。第２の例では、プロセスジョブＡの後処理として「ピン洗浄」および「その他チャンバ内部品洗浄」の２つが指定されており、プロセスジョブＢの前準備として「ピン洗浄」が指定されている。この場合、プロセスジョブＡの後処理とプロセスジョブＢの前準備とでは、「ピン洗浄」が重複しており、プロセスジョブのＡの後処理はさらに「その他チャンバ内部品洗浄」を含む。そこで、プロセスジョブＡの後処理ブロックが配置される一方、プロセスジョブＢの前準備ブロックは配置されない。第３の例では、プロセスジョブＡの後処理として「チャンバ洗浄」が指定されており、プロセスジョブＢの前準備として「プリディスペンス」が指定されている。この場合、プロセスジョブＡの後処理およびプロセスジョブＢの前準備が異なっており、部分的な重複もない。そこで、プロセスジョブＡの後処理ブロックおよびプロセスジョブＢの前準備ブロックが、いずれも配置される。第４の例では、プロセスジョブＡの後処理として「チャンバ洗浄」が指定されており、プロセスジョブＢの前準備として「プリディスペンス」および「チャンバ洗浄」が指定されている。この場合、プロセスジョブＡの後処理とプロセスジョブＢの前準備とでは、「チャンバ洗浄」が重複しており、プロセスジョブのＢの前準備はさらに「プリディスペンス」を含む。そこで、プロセスジョブＡの後処理ブロックの配置が省かれる一方、プロセスジョブＢの前準備ブロックが配置される。
【００８０】
このように、この例では、先に実行されるプロセスジョブＡの後処理と、次いで実行されるプロセスジョブＢの前準備とが完全に一致しているときには、プロセスジョブＡの後処理ブロックおよびプロセスジョブＢの前準備ブロックの配置がいずれも省かれる。また、プロセスジョブＡの後処理とプロセスジョブＢの前準備とが部分的に重複しており、いずれか一方の処理（後処理または前準備）が他方の処理内容の全てを含むときには、当該一方の処理のブロックのみが配置され、その他方の処理のブロックの配置が省略される。これにより、後処理と前準備との重複を省くことができるので、処理ユニットの稼働効率を高めることができ、基板処理装置の生産性を向上できる。
【００８１】
以上、この発明のいくつかの実施形態について説明してきたが、この発明は、さらに他の形態で実施することもできる。たとえば、前述の実施形態で示した基板処理装置の構成や基板処理内容は一例に過ぎず、基板処理装置は他の構成を採ることができ、かつ別の基板処理内容に対してもこの発明を適用できる。
また、プログラム３０は、コンピュータ２０に組み込まれた状態で提供されてもよいし、コンピュータ２０とは別の記憶媒体（ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等のコンピュータ読取可能な記憶媒体）に記録された状態で提供されてもよい。
【００８２】
その他、特許請求の範囲に記載された事項の範囲で種々の設計変更を施すことが可能である。
【符号の説明】
【００８３】
Ｗ    基板
Ｃ    基板収容器
ＳＴ１〜ＳＴ４  ステージ
ＩＲ  インデクサロボット
ＰＡＳＳ  受け渡しユニット
ＣＲ  主搬送ロボット
ＳＰＩＮ１〜ＳＰＩＮ１２  処理ユニット
Ｇ１〜Ｇ４  処理ユニット群
１  インデクサセクション
２  処理セクション
６  基台部
７  多関節アーム
８Ａ，８Ｂ  ハンド
１１  基台部
１２  多関節アーム
１３Ａ，１３Ｂ  ハンド
１５  スピンチャック
１６  処理液ノズル
１７  処理室
２０  コンピュータ
２１  制御部
２２  出入力部
２３  記憶部
２４  ホストコンピュータ
２５  スケジューリング機能部
２６  処理実行指示部
３０  プログラム
３１  スケジュール作成プログラム
３２  処理実行プログラム
４０  処理内容データ
５０  スケジュールデータ
【図１】
0005852908.tif 000002
【図２】
0005852908.tif 000003
【図３】
0005852908.tif 000004
【図４】
0005852908.tif 000005
【図５】
0005852908.tif 000006
【図６】
0005852908.tif 000007
【図７】
0005852908.tif 000008
【図８】
0005852908.tif 000009
【図９】
0005852908.tif 000010
【図１０】
0005852908.tif 000011
【図１１】
0005852908.tif 000012
【図１２】
0005852908.tif 000013
【図１３】
0005852908.tif 000014
【図１４】
0005852908.tif 000015
【図１５】
0005852908.tif 000016
【図１６】
0005852908.tif 000017
【図１７】
0005852908.tif 000018
【図１８】
0005852908.tif 000019
【図１９】
0005852908.tif 000020
【図２０】
0005852908.tif 000021
【図２１】
0005852908.tif 000022
【図２２】
0005852908.tif 000023
【図２３】
0005852908.tif 000024
【図２４】
0005852908.tif 000025