IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社SCREENホールディングスの特許一覧

<>
  • 特開-スケジュール変更方法 図1
  • 特開-スケジュール変更方法 図2
  • 特開-スケジュール変更方法 図3
  • 特開-スケジュール変更方法 図4
  • 特開-スケジュール変更方法 図5
  • 特開-スケジュール変更方法 図6
  • 特開-スケジュール変更方法 図7
  • 特開-スケジュール変更方法 図8
  • 特開-スケジュール変更方法 図9
  • 特開-スケジュール変更方法 図10
  • 特開-スケジュール変更方法 図11
  • 特開-スケジュール変更方法 図12
  • 特開-スケジュール変更方法 図13
  • 特開-スケジュール変更方法 図14
  • 特開-スケジュール変更方法 図15
  • 特開-スケジュール変更方法 図16
  • 特開-スケジュール変更方法 図17
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022181368
(43)【公開日】2022-12-08
(54)【発明の名称】スケジュール変更方法
(51)【国際特許分類】
   H01L 21/02 20060101AFI20221201BHJP
【FI】
H01L21/02 Z
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2021088283
(22)【出願日】2021-05-26
(71)【出願人】
【識別番号】000207551
【氏名又は名称】株式会社SCREENホールディングス
(74)【代理人】
【識別番号】100088672
【弁理士】
【氏名又は名称】吉竹 英俊
(74)【代理人】
【識別番号】100088845
【弁理士】
【氏名又は名称】有田 貴弘
(72)【発明者】
【氏名】沖田 有史
(72)【発明者】
【氏名】猶原 英司
(72)【発明者】
【氏名】後藤 裕典
(72)【発明者】
【氏名】岸本 卓也
(72)【発明者】
【氏名】竹田 大輔
(72)【発明者】
【氏名】角間 央章
(72)【発明者】
【氏名】増井 達哉
(72)【発明者】
【氏名】出羽 裕一
(57)【要約】
【課題】処理時間の変動に対応してスケジュールを作成できる技術を提供する。
【解決手段】スケジュール変更方法は、複数の処理ユニットによる基板の処理を時系列に従って規定するスケジュールを変更するためのスケジュール変更方法であって、開始工程S1と検出工程とリスケジュール工程S4とを備える。開始工程S1では、スケジュールに従って、複数の処理ユニットに基板を順次に搬送しつつ、複数の処理ユニットの各々が基板に対する処理を行う基板処理を開始する。検出工程では、数の処理ユニットのうち第1処理ユニットにおいて、センサが基板に対する所定処理の終了時刻を検出する。リスケジュール工程S4では、終了時刻に基づいて、スケジュールを再作成する。
【選択図】図6
【特許請求の範囲】
【請求項1】
複数の処理ユニットによる基板の処理を時系列に従って規定するスケジュールを変更するためのスケジュール変更方法であって、
前記スケジュールに従って、前記複数の処理ユニットに基板を順次に搬送しつつ、前記複数の処理ユニットの各々が前記基板に対する処理を行う基板処理を開始する開始工程と、
前記複数の処理ユニットのうちの第1処理ユニットにおいて、センサが前記基板に対する所定処理の終了時刻を検出する検出工程と、
前記終了時刻に基づいて、前記スケジュールを再作成するリスケジュール工程と
を備える、スケジュール変更方法。
【請求項2】
複数の処理ユニットによる基板の処理を時系列に従って規定するスケジュールを変更するためのスケジュール変更方法であって、
前記スケジュールに従って、前記複数の処理ユニットに基板を順次に搬送しつつ、前記複数の処理ユニットの各々が前記基板に対する処理を行う基板処理を開始する開始工程と、
前記複数の処理ユニットのうちの第1処理ユニットにおいて、前記基板に対する所定処理の終了時刻を検出する検出工程と、
前記終了時刻を検出した検出から、前記スケジュールで規定された前記第1処理ユニットからの前記基板の搬出開始までの第1時間が、前記スケジュールの再作成に要する規定の第2時間以上であるときに、前記スケジュールの再作成を行うリスケジュール工程と、
前記第1時間が前記第2時間未満であるときに、前記第1処理ユニットにおける前記所定処理よりも後の後処理の処理時間を増加させる処理時間変更工程と
を備える、スケジュール変更方法。
【請求項3】
請求項2に記載のスケジュール変更方法であって、
前記第1時間が前記第2時間未満であるときに、前記後処理であるリンス処理におけるリンス液の流量を低減させる流量変更工程をさらに備える、スケジュール変更方法。
【請求項4】
複数の処理ユニットによる基板の処理を時系列に従って規定するスケジュールを変更するためのスケジュール変更方法であって、
前記スケジュールに従って、前記複数の処理ユニットに基板を順次に搬送しつつ、前記複数の処理ユニットの各々が前記基板に対する処理を行う基板処理を開始する開始工程と、
前記複数の処理ユニットの各々においてセンサが前記基板に対する所定処理の終了時刻を検出したときに、前記終了時刻に関する情報を記憶媒体に記憶する記憶工程と、
前記記憶媒体に記憶された前記情報に基づいて前記スケジュールを作成した第1案と、前記複数の処理ユニットの各々における前記所定処理よりも後の後処理の処理時間を、前記記憶媒体に記憶された前記情報に基づいた時間だけ増加させた第2案とを、表示部に表示する表示工程と
を備える、スケジュール変更方法。
【請求項5】
請求項4に記載のスケジュール変更方法であって、
前記第2案において、前記複数の処理ユニットのうちの第1処理ユニットにおける前記後処理であるリンス処理におけるリンス液の流量は、前記第1案における前記第1処理ユニットでの前記流量よりも小さい、スケジュール変更方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、スケジュール変更方法に関する。
【背景技術】
【0002】
従来から、基板を処理する基板処理装置が提案されている。この基板処理装置は、基板を処理する複数の処理ユニットと、基板を搬送する搬送ロボットと、制御部とを含む。搬送ロボットは未処理の基板を各処理ユニットに搬入し、各処理ユニットで処理された処理済みの基板を当該処理ユニットから搬出する。制御部は搬送ロボットおよび処理ユニットを制御する。
【0003】
制御部は、搬送ロボットおよび処理ユニットの動作を規定したスケジュールを作成し、このスケジュールに従って搬送ロボットおよび処理ユニットを制御する(例えば特許文献1)。特許文献1では、制御部は、まず、処理ユニットごとに、各基板に対する処理内容を規定するブロックを時系列に従って結合して仮タイムテーブルを作成する。このブロックは、各処理ユニットの基板に対する処理、および、搬送ロボットの搬送処理を示しており、そのブロックの長さが各処理の所要処理時間を示している。
【0004】
次に、制御部は、この仮タイムテーブルからブロックを取得し、時系列に従って配置することにより、基板処理装置の全体における各部の処理の時間帯を規定するスケジュールを作成する。
【0005】
制御部は、作成したスケジュールに従った動作を搬送ロボットおよび処理ユニットに行わせることにより、基板を順次に各処理ユニットにおいて処理させることができる。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2013-77796号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
各処理ユニットにおける所要処理時間は、例えば処理ユニットの個体差によって相違し得る。また、当該所要処理時間は、処理ユニットの経時的な劣化によっても変動し得る。また、当該所要処理時間は、基板の個体差によっても変動し得る。よって、各処理ユニットにおいて所要処理時間は補正することが望ましい。
【0008】
しかしながら、特許文献1では、処理ユニットの所要処理時間を予め決定して作成されたスケジュールを利用しているので、このような処理時間の変動に対応できない。
【0009】
そこで、本願は、処理時間の変動に対応してスケジュールを作成できる技術を提供することを目的とする。
【課題を解決するための手段】
【0010】
スケジュール変更方法の第1の態様は、複数の処理ユニットによる基板の処理を時系列に従って規定するスケジュールを変更するためのスケジュール変更方法であって、前記スケジュールに従って、前記複数の処理ユニットに基板を順次に搬送しつつ、前記複数の処理ユニットの各々が前記基板に対する処理を行う基板処理を開始する開始工程と、前記複数の処理ユニットのうちの第1処理ユニットにおいて、センサが前記基板に対する所定処理の終了時刻を検出する検出工程と、前記終了時刻に基づいて、前記スケジュールを再作成するリスケジュール工程とを備える。
【0011】
スケジュール変更方法の第2の態様は、複数の処理ユニットによる基板の処理を時系列に従って規定するスケジュールを変更するためのスケジュール変更方法であって、前記スケジュールに従って、前記複数の処理ユニットに基板を順次に搬送しつつ、前記複数の処理ユニットの各々が前記基板に対する処理を行う基板処理を開始する開始工程と、前記複数の処理ユニットのうちの第1処理ユニットにおいて、前記基板に対する所定処理の終了時刻を検出する検出工程と、前記終了時刻を検出した検出から、前記スケジュールで規定された前記第1処理ユニットからの前記基板の搬出開始までの第1時間が、前記スケジュールの再作成に要する規定の第2時間以上であるときに、前記スケジュールの再作成を行うリスケジュール工程と、前記第1時間が前記第2時間未満であるときに、前記第1処理ユニットにおける前記所定処理よりも後の後処理の処理時間を増加させる処理時間変更工程とを備える。
【0012】
スケジュール変更方法の第3の態様は、第2の態様にかかるスケジュール変更方法であって、前記第1時間が前記第2時間未満であるときに、前記後処理であるリンス処理におけるリンス液の流量を低減させる流量変更工程をさらに備える。
【0013】
スケジュール変更方法の第4の態様は、複数の処理ユニットによる基板の処理を時系列に従って規定するスケジュールを変更するためのスケジュール変更方法であって、前記スケジュールに従って、前記複数の処理ユニットに基板を順次に搬送しつつ、前記複数の処理ユニットの各々が前記基板に対する処理を行う基板処理を開始する開始工程と、前記複数の処理ユニットの各々においてセンサが前記基板に対する所定処理の終了時刻を検出したときに、前記終了時刻に関する情報を記憶媒体に記憶する記憶工程と、前記記憶媒体に記憶された前記情報に基づいて前記スケジュールを作成した第1案と、前記複数の処理ユニットの各々における前記所定処理よりも後の後処理の処理時間を、前記記憶媒体に記憶された前記情報に基づいた時間だけ増加させた第2案とを、表示部に表示する表示工程とを備える。
【0014】
スケジュール変更方法の第5の態様は、第4の態様にかかるスケジュール変更方法であって、前記第2案において、前記複数の処理ユニットのうちの第1処理ユニットにおける前記後処理であるリンス処理におけるリンス液の流量は、前記第1案における前記第1処理ユニットでの前記流量よりも小さい。
【発明の効果】
【0015】
スケジュール変更方法の第1の態様によれば、処理ユニットの終了時刻を反映したスケジュールを作成することができる。つまり、処理ユニットの所要処理時間の変動に応じてスケジュールを作成することができる。
【0016】
スケジュール変更方法の第2の態様によれば、スケジュールの再作成が可能な場合には、スケジュールを再作成する。この場合、処理ユニットの処理時間の変動に応じてスケジュールを作成することができる。
【0017】
スケジュールの再作成が難しい場合には、後処理の処理時間を増加させる。これによれば、基板に処理が行われない待機時間を短くすることができるので、待機時間中に生じる基板へのパーティクル付着等の不具合を抑制することができる。
【0018】
スケジュール変更方法の第3の態様によれば、リンス液の消費量を低減させることができる。
【0019】
スケジュール変更方法の第4の態様によれば、第1案と第2案とが表示されるので、ユーザは第1案と第2案とを確認して一方を選択することができる。よって、ユーザビリティを向上させることができる。
【0020】
スケジュール変更方法の第5の態様によれば、第2案におけるリンス液の消費量を低減させることができる。
【図面の簡単な説明】
【0021】
図1】基板処理装置の構成の一例を概略的に示す平面図である。
図2】基板処理装置の構成の一例を概略的に示す側面図である。
図3】基板処理装置の電気的な構成の一例を概略的に示す機能ブロック図である。
図4】レシピの一例を模式的に示す図である。
図5】スケジュールの一例を模式的に示す図である。
図6】第1の実施の形態にかかる基板処理装置の動作の一例を示すフローチャートである。
図7】基板処理装置の状況をスケジュールの進行状況で示す図である。
図8】再作成後のスケジュールの一例を模式的に示す図である。
図9】基板処理装置の動作の一例を示すフローチャートである。
図10】仮タイムテーブルの一例を模式的に示す図である。
図11】第2の実施の形態にかかる基板処理装置の動作の一例を示すフローチャートである。
図12】処理ユニットによって実行される処理の一例を示す図である。
図13】第2の実施の形態にかかる基板処理装置の動作の他の一例を示すフローチャートである。
図14】処理ユニットによって実行される処理の他の一例を示す図である。
図15】第3の実施の形態にかかる基板処理装置の動作の一例を示すフローチャートである。
図16】削減時間の一例を示す図である。
図17】複数の処理ユニットにおいて一連処理の所要処理時間を共通に短縮させた例を示す図である。
【発明を実施するための形態】
【0022】
以下、添付される図面を参照しながら実施の形態について説明する。なお、図面は概略的に示されるものであり、説明の便宜のため、適宜、構成の省略、または、構成の簡略化がなされるものである。また、図面に示される構成の大きさおよび位置の相互関係は、必ずしも正確に記載されるものではなく、適宜変更され得るものである。
【0023】
また、以下に示される説明では、同様の構成要素には同じ符号を付して図示し、それらの名称と機能とについても同様のものとする。したがって、それらについての詳細な説明を、重複を避けるために省略する場合がある。
【0024】
<第1の実施の形態>
図1は、基板処理装置100の構成の一例を概略的に示す平面図であり、図2は、基板処理装置100の構成の一例を概略的に示す側面図である。この基板処理装置100は、インデクサセクション1と、処理セクション2とを含む。処理セクション2は受渡ユニット31を含んでいる。インデクサセクション1は、未処理の基板Wを受渡ユニット31に渡し、受渡ユニット31から処理済みの基板Wを受け取る。処理セクション2は、受渡ユニット31から未処理の基板Wを受け取って、その基板Wに対して、処理剤(処理液または処理ガス)を用いた処理、紫外線等の電磁波を用いた処理、および、物理洗浄処理(ブラシ洗浄およびスプレーノズル洗浄等)などの各種の処理を施す。そして、処理セクション2は、処理済みの基板Wを受渡ユニット31に渡す。
【0025】
インデクサセクション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が互いに間隔を開けて鉛直方向に積層された状態となる。ここでいう水平姿勢とは、基板Wの厚み方向が鉛直方向に沿う状態をいう。
【0026】
インデクサロボットIRは、例えば、基台部6と、多関節アーム7と、一対のハンド8A,8Bとを含む。基台部6は、例えば、当該基板処理装置100のフレームに固定されている。多関節アーム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を紙面に平行な方向(水平方向)にずらして描いてある。
【0027】
この構成により、インデクサロボットIRは、いずれかのステージST1~ST4に保持された基板収容器Cから1枚の未処理の基板Wをハンド8Aで搬出して受渡ユニット31に渡すように動作する。さらに、インデクサロボットIRは、受渡ユニット31から1枚の処理済みの基板Wをハンド8Bで受け取って、いずれかのステージST1~ST4に保持された基板収容器Cに収容するように動作する。
【0028】
処理セクション2は、複数(この実施形態では12個)の処理ユニット30と、基板搬送ユニットの一例である主搬送ロボットCRと、前述の受渡ユニット31とを含む。図1および図2の例では、複数の処理ユニット30として12個の処理ユニット30A~30Lが示されている。処理ユニット30は、この実施形態では、立体的に配置されている。より具体的には、三階建て構造をなすように複数の処理ユニット30が配置されており、各階部分に4つの処理ユニット30が配置されている。すなわち、三階部分に4つの処理ユニット30A~30Dが配置され、二階部分に別の4つの処理ユニット30E~30Hが配置され、一階部分にさらに別の処理ユニット30I~30Lが配置されている。さらに具体的には、平面視において処理セクション2の中央に主搬送ロボットCRが配置されており、この主搬送ロボットCRとインデクサロボットIRとの間に受渡ユニット31が配置されている。3つの処理ユニット30A,30E,30Iを積層した第1処理ユニット群G1と、別の3つの処理ユニット30B,30F,30Jを積層した第2処理ユニット群G2とが、受渡ユニット31を挟んで対向するように配置されている。そして、第1処理ユニット群G1に対してインデクサロボットIRから遠い側に隣接するように、3つの処理ユニット30C,30G,30Kを積層した第3処理ユニット群G3が配置されている。同様に、第2処理ユニット群G2に対してインデクサロボットIRから遠い側に隣接するように、3つの処理ユニット30D,30H,30Lを積層した第4処理ユニット群G4が配置されている。第1~第4処理ユニット群G1~G4によって、主搬送ロボットCRが取り囲まれている。
【0029】
主搬送ロボットCRは、例えば、基台部11と、多関節アーム12と、一対のハンド13A,13Bとを含む。基台部11は、例えば、当該基板処理装置100のフレームに固定されている。多関節アーム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を紙面に平行な方向(水平方向)にずらして描いてある。
【0030】
この構成により、主搬送ロボットCRは、受渡ユニット31から未処理の1枚の基板Wをハンド13Aで受け取り、その未処理の基板Wをいずれかの処理ユニット30に搬入する。また、主搬送ロボットCRは、各処理ユニット30で処理された処理済みの基板Wをハンド13Bで受け取り、その基板Wを受渡ユニット31に渡す。
【0031】
処理ユニット30は、基板Wを1枚ずつ処理する枚葉型の処理ユニットである。処理ユニット30は、例えば、1枚の基板Wを水平姿勢で保持して回転させるスピンチャック15と、スピンチャック15に対して処理液(薬液またはリンス液)を供給するノズル16とを処理室17(チャンバ)内に含んだ、回転液処理ユニットであってもよい。また図2に例示するように、処理ユニット30は遮断板18をさらに含んでいてもよい。遮断板18は処理室17内において、スピンチャック15よりも鉛直上方に設けられ、スピンチャック15と鉛直方向において対向する。遮断板18は、基板Wに近接する処理位置と基板Wから離れた待機位置との間で昇降可能に設けられる。遮断板18の水平な下面の中央部には、ガス吐出口18aが形成されており、ガス吐出口18aから基板Wに向けて不活性ガス(例えば窒素ガス)が吐出される。なお、図2では、処理ユニット30A,30Bについてのみ、その内部構成を示し、他の処理ユニット30の内部構成の図示を省いている。
【0032】
図3は、基板処理装置100の電気的な構成の一例を概略的に示す機能ブロック図である。基板処理装置100は、複数の処理ユニット30、主搬送ロボットCRおよびインデクサロボットIRを制御するコンピュータ20を含んでいる。コンピュータ20は、パーソナルコンピュータ(FAパソコン)の形態を有していてもよく、制御部(制御回路)21と、入力部22と、記憶媒体23と、表示部24とを含んでいる。制御部21は、CPU等の演算処理装置を含む。入力部22は、キーボード、ポインティングデバイスおよびタッチパネル等の入力機器を含む。さらに、入力部22は、ホストコンピュータとの通信のための通信モジュールを含む。記憶媒体23は、固体メモリデバイスおよびハードディスクドライブ等の記憶装置を含む。表示部24は、例えば液晶表示ディスプレイを含み、制御部21の制御下で各種情報を表示する。
【0033】
制御部21は、スケジューリング機能部(スケジューラ)25と、処理実行指示部26とを含む。スケジューリング機能部25は、基板Wを基板収容器Cから搬出し、処理ユニット30で処理した後、基板収容器Cに収容するために、基板処理装置100のリソースを時系列に従って動作させるための計画(スケジュール)を作成する。スケジュールは基板処理装置100の動作を規定した計画である。処理実行指示部26は、スケジューリング機能部25によって作成されたスケジュールに従って、基板処理装置100のリソースを動作させる。
【0034】
記憶媒体23は、制御部21が実行するプログラムと、処理内容データ40と、スケジューリング機能部25によって作成されたスケジュールデータ(スケジュールを示すデータ)とを含む各種データ等を記憶するように構成されている。処理内容データ40は、基板Wに対する処理の内容および処理の所要時間を示している。処理内容データ40の具体例は後に述べる。この処理内容データ40は例えばホストコンピュータから入力部22に入力されてもよく、あるいは、ユーザによる入力部22に対する操作によって入力されてもよい。
【0035】
記憶媒体23に記憶されたプログラムは、制御部21をスケジューリング機能部25として動作させるためのスケジュール作成プログラムと、制御部21を処理実行指示部26として動作させるための処理実行プログラムとを含む。なお、制御部21は必ずしもプログラムに基づいて動作する必要はなく、例えば、論理回路等の専用のハードウェア回路によって構成されてもよい。
【0036】
処理内容データ40は、各基板Wに付与されたプロセスジョブ(PJ)符号と、プロセスジョブ符号に対応付けられたレシピとを含む。レシピは、基板処理内容を定義したデータであり、基板処理条件および基板処理手順を含む。より具体的には、レシピは、使用処理液情報および処理時間(所要処理時間)情報等を含む。プロセスジョブとは、共通の処理が施される1枚または複数枚の基板Wをいう。プロセスジョブ符号とは、プロセスジョブを識別するための識別情報(基板群識別情報)である。すなわち、共通のプロセスジョブ符号が付与された複数枚の基板Wには、当該プロセスジョブ符号に対応付けられたレシピによる共通の処理が施される。ただし、異なるプロセスジョブ符号に対応する基板処理内容(レシピ)が同じである場合もあり得る。例えば、処理順序(基板収容器Cからの払い出し順序)が連続している複数枚の基板Wに対して共通の処理が施されるとき、それらの複数枚の基板Wに対して共通のプロセスジョブ符号が付与される。
【0037】
図4は、レシピで規定された基板処理手順の一例を示す図である。図4では、「ステップ」の項目が「処理」の項目の実行順番を示している。つまり、図4に例示された基板処理手順では、第1薬液処理、第1リンス処理、第2薬液処理、第2リンス処理および乾燥処理がこの順で実行される。第1薬液処理は例えばエッチング処理である。第1薬液処理において、処理ユニット30はノズル16から回転中の基板Wに第1エッチング液を供給する。図4の例では、第1薬液処理のレシピ上の所要処理時間(エッチング時間)は90秒である。第1リンス処理は基板W上の第1エッチング液を洗い流すための処理である。第1リンス処理において、処理ユニット30はノズル16から回転中の基板Wに第1リンス液(例えば純水)を供給する。図4の例では、第1リンス処理のレシピ上の所要処理時間(リンス時間)は30秒である。
【0038】
第2薬液処理は例えばエッチング処理である。第2薬液処理において、処理ユニット30はノズル16から回転中の基板Wに第2エッチング液を供給する。図4の例では、第2薬液処理のレシピ上のエッチング時間は60秒である。第2リンス処理は、基板W上の第2エッチング液を洗い流すための処理である。第2リンス処理において、処理ユニット30はノズル16から回転中の基板Wに第2リンス液(例えば純水)を供給する。図4の例では、第2リンス処理のレシピ上のリンス時間は30秒である。
【0039】
乾燥処理は、基板Wを乾燥させるための処理である。乾燥処理において、処理ユニット30はノズル16からの処理液の吐出を停止した状態で、スピンチャック15によって基板Wを高速回転させる(いわゆるスピン乾燥)。遮断板18が設けられている場合には、処理ユニット30は乾燥処理において、遮断板18を処理位置に下降させ、ガス吐出口18aから基板Wに向けて不活性ガスを供給する。図4の例では、乾燥処理のレシピ上の所要処理時間(乾燥時間)は20秒である。
【0040】
制御部21は、各基板Wに対する処理内容データ40を取得して、記憶媒体23に記憶させる。処理内容データ40の取得および記憶は、各基板Wに対するスケジューリング(つまり、スケジュールの作成)が実行されるよりも前に行われればよい。例えば、基板収容器CがステージST1~ST4に保持された直後に、ホストコンピュータから制御部21に当該基板収容器Cに収容された基板Wに対応する処理内容データ40が与えられてもよい。
【0041】
スケジューリング機能部25は処理内容データ40に基づいてスケジュールを作成する。図5は、スケジューリング機能部25によって作成されるスケジュールの一例を模式的に示す図である。図5の例では、スケジュールはブロックおよび矢印によって模式的に表現されている。なお、図5では、説明を簡単にすべく、代表的に4つの処理ユニット30A~30Dを用いたスケジュールが示されている。また、説明の簡単のために、8枚の基板Wに対する処理について述べる。実際にはより多くの基板Wが処理される。
【0042】
図5に示される各ブロックは、各ユニット(インデクサロボットIR、主搬送ロボットCRおよび処理ユニット30A~30D)における処理の内容を示している。より具体的には、記号Gで示されるブロックは、各基板搬送ユニット(インデクサロボットIRおよび主搬送ロボットCRの各々)による基板Wの搬出処理を示し、記号Pで示されるブロックは、各基板搬送ユニットによる基板Wの搬入処理を示し、空欄のブロックは各処理ユニット30A~30Dにおける処理を示している。また各ブロックの長さは、対応する処理の所要処理時間を示している。これらのブロックの内容および長さは処理内容データ40によって規定される。
【0043】
図5に示される各ブロックの位置は、当該ブロックに対応する処理の時間帯を示している。つまり、ブロックの両端の位置はそれぞれ処理の開始時刻および終了時刻を示している。また、ブロック同士をつなぐ矢印は基板Wの移動先を示している。
【0044】
ここで、代表的に、処理ユニット30Aによって処理される基板Wに着目して、スケジュールを説明する。図5の例では、処理ユニット30Aによって処理される基板Wに対応するブロックを、太線で示している。ここでは、処理ユニット30Aによって順次に処理される2枚の基板Wとして基板W1,W2を例として説明する。図5によれば、未処理の基板W1はインデクサロボットIRによって基板収容器Cから取り出され(ブロックA1)、受渡ユニット31に受け渡される(ブロックA2)。そして、この基板W1は主搬送ロボットCRによって受渡ユニット31から取り出され(ブロックA3)、処理ユニット30Aに受け渡される(ブロックA4)。基板W1には、この処理ユニット30Aにおいて処理が施される(ブロックA5)。より具体的な一例として、処理ユニット30Aは基板W1に対して、第1薬液処理、第1リンス処理、第2薬液処理、第2リンス処理および乾燥処理をこの順で施す。以下では、処理ユニット30が基板Wに対して行うこれらの処理を一連処理とも呼ぶ。
【0045】
図5の例では、処理ユニット30Aによる一連処理(ブロックA5)の終了時刻よりも前に、次の未処理の基板W2がインデクサロボットIRによって基板収容器Cから取り出され(ブロックB1)、受渡ユニット31に受け渡される(ブロックB2)。そして、基板W2は主搬送ロボットCRによって受渡ユニット31から取り出される(ブロックB3)。
【0046】
一方、処理ユニット30Aによる一連処理(ブロックA5)の終了後に、処理済みの基板W1は主搬送ロボットCRによって処理ユニット30Aから取り出され(ブロックA6)、引き続き、次の未処理の基板W2が主搬送ロボットCRによって処理ユニット30Aに受け渡される(ブロックB4)。なお、本実施の形態では、主搬送ロボットCRは2つのハンド13A,13Bを含むので、例えばハンド13Aによって処理済みの基板W1を処理ユニット30Aから取り出し(ブロックA6)、ハンド13Bによって未処理の基板W2を処理ユニット30Aに受け渡す(ブロックB4)ことができる。処理済みの基板W1は主搬送ロボットCRから受渡ユニット31に受け渡される(ブロックA7)。この基板W1はインデクサロボットIRによって受渡ユニット31から取り出され(ブロックA8)、基板収容器Cに受け渡される(ブロックA9)。
【0047】
一方、未処理の基板W2には、処理ユニット30Aによって一連処理が施される(ブロックB5)。より具体的な一例として、処理ユニット30Aは基板W2に対して、第1薬液処理、第1リンス処理、第2薬液処理、第2リンス処理および乾燥処理をこの順で施す。そして、処理ユニット30Aによる基板W2の一連処理が終了すると、処理済みの基板W2が主搬送ロボットCRによって処理ユニット30Aから取り出され(ブロックB6)、受渡ユニット31に受け渡される(ブロックB7)。続いて、処理済みの基板W2はインデクサロボットIRによって受渡ユニット31から取り出され(ブロックB8)、基板収容器Cに受け渡される(ブロックB9)。
【0048】
制御部21のスケジューリング機能部25が、図5に例示するようなスケジュールを作成し、処理実行指示部26がこのスケジュールに従って基板処理装置100の各部を制御すれば、スケジュールに従った動作を基板処理装置100に行わせることができる。図5のスケジュールによれば、処理ユニット30A~30Dがそれぞれ2回の一連処理を行うことにより、8枚の基板Wが処理される。
【0049】
しかしながら、処理ユニット30A~30Dにおける各処理の処理時間は種々の要因により、予め決められた時間と相違し得る。当該処理時間は、例えば、処理ユニット30の個体差によって相違し得るし、また、処理ユニット30の経時的な変化によっても相違し得る。また、当該処理時間は基板Wの個体差によっても相違し得る。
【0050】
そこで、本実施の形態では、図3に示すように、各処理ユニット30はセンサSRを含んでいる。このセンサSRは、所定処理の終了時刻を検出する。処理ユニット30はセンサSRの検出に応じて、所定処理の終了時刻を制御部21に通知する。
【0051】
例えば処理ユニット30が基板Wの表面の所定膜に対してエッチング処理を行う場合、所定膜の膜厚はエッチング処理の進行に応じて低減し、いずれゼロになる。よって、所定膜の膜厚が実質的にゼロに至る時点が処理の終了時刻に相当する。この場合、センサSRとして、当該所定膜の膜厚を測定する膜厚計を採用することができる。膜厚計としては、例えば、光学系の変位センサを採用することができる。この場合、センサSRによって測定された膜厚が規定の膜厚基準値に至る時刻が処理の終了時刻に相当する。
【0052】
あるいは、センサSRとして、基板Wの表面を撮像するカメラを採用してもよい。基板Wの表面はエッチング処理の進行度、つまり、所定膜の膜厚に応じて変化するので、カメラによって取得される画像も所定膜の膜厚に応じて変化する。よって、この画像における各画素の色情報(輝度を含む)に基づいて、所定膜の膜厚がゼロに至る時点を検出することができる。例えば、所定画素の色情報の値が規定の色基準値以下となった時点を処理の終了時刻として検出してもよい。
【0053】
このようなセンサSRは、処理の進行度を測定するセンサであるともいえる。センサSRによって測定された処理の進行度が規定の進行度に至る時刻は、処理の終了時刻に相当する。
【0054】
各処理ユニット30の各々は、センサSRによって測定された処理の進行度が規定の進行度に達すると、処理を終了する。より具体的な一例として、各処理ユニット30は、センサSRによって測定された所定膜の膜厚がゼロに至ると、ノズル16から基板Wへのエッチング液の供給を停止してエッチング処理を終了する。これにより、エッチングの不足および過多を抑制して適切に所定膜をエッチングすることができる。
【0055】
また、処理ユニット30の各々は、処理中にセンサSRによって検出された処理の終了時刻を制御部21に通知する。以下では、センサSRによって検出された終了時刻を検出終了時刻と呼ぶ。
【0056】
上述のレシピでは、第1薬液処理および第2薬液処理はエッチング処理である。センサSRは第1薬液処理の検出終了時刻も第2薬液処理の検出終了時刻も検出することができる。もちろん、第1薬液処理用のセンサSRおよび第2薬液用のセンサSRが個別に設けられてもよい。
【0057】
ここでは、処理ユニット30は上述のように第1薬液処理および第2薬液処理をそれぞれセンサSRの測定結果に基づいて終了する。一方で、処理ユニット30は第1リンス処理、第2リンス処理および乾燥処理を、各処理の開始時刻からの時間経過に基づいて終了する。つまり、処理ユニット30は、第1リンス処理の開始時刻からの経過時間を例えば公知のタイマ回路で測定し、当該経過時間がレシピで規定されたリンス時間に至ったときに第1リンス処理を終了する。第2リンス処理および乾燥処理も同様である。
【0058】
さて、センサSRによって検出された第1薬液処理の検出終了時刻は、レシピに基づいて作成されたスケジュール上の第1薬液処理の終了時刻とは相違し得る。例えば、検出終了時刻はスケジュール上の終了時刻よりも早くなり得る。第2薬液処理も同様である。よって、各処理ユニット30における一連処理の実際の終了時刻はスケジュール上の終了時刻よりも早くなり得る。
【0059】
そこで、本実施の形態では、スケジューリング機能部25は、センサSRによって検出された処理の検出終了時刻に基づいてスケジュールを再作成する。
【0060】
上述のレシピでは、処理ユニット30は第1薬液処理および第2薬液処理を実行する。よって、センサSRによって第1薬液処理の検出終了時刻が検出されても、第2薬液処理が終了するまでは、各処理ユニット30の一連処理の終了時刻は確定しない。そこで、ここでは一例として、スケジューリング機能部25は第2薬液処理の検出終了時刻に基づいてスケジュールを再作成する。
【0061】
<スケジュール変更方法>
図6は、基板処理装置100の上記動作の一例を示すフローチャートである。まず、制御部21は基板処理を開始する(ステップS1:開始工程)。具体的には、制御部21は、処理内容データ40に基づいて作成したスケジュール(例えば図4)に従って、基板処理装置100の動作を制御して基板Wに対する基板処理を開始する。言い換えれば、基板処理装置100は、スケジュールに従って、複数の処理ユニット30に基板Wを順次に搬送しつつ、複数の処理ユニット30が基板Wに対して一連処理を行う基板処理を開始する。スケジュールの作成方法の具体的な一例については後に述べる。
【0062】
次に、制御部21は、センサSRによって第2薬液処理の終了時刻が検出されたか否かを判断する(ステップS2)。つまり、制御部21は、処理ユニット30のいずれかから第2薬液処理の検出終了時刻の通知を受け取ったか否かを判断する。
【0063】
ここでは、一例として、処理ユニット30B(第1処理ユニットに相当)のセンサSRが第2薬液処理の検出終了時刻を検出するものとする。つまり、ここでは、処理ユニット30Bは他の処理ユニット30よりも短時間で第2薬液処理までの処理を行う。図7は、当該状況をスケジュールの進行状況で示す図である。なお、図7では、簡単のために、4つの処理ユニット30A~30Dが示されている。図7の例では、処理ユニット30Aが未だ第2薬液処理を終了していない状態で、処理ユニット30Bが第2薬液処理を終了し、検出終了時刻を制御部21に通知している。図7では、処理ユニット30Bにおいて第2薬液処理が行われる時間帯を斜線のブロックで模式的に示している。
【0064】
制御部21は通知を受け取ると、プロセスジョブ内に未処理の基板Wがあるか否かを判断する(ステップS3)。具体的な一例として、制御部21は、通知が、プロセスジョブ内の最後の基板Wについての通知であるか否かを判断する。ここでは、未処理の基板Wがあるものとする。未処理の基板Wがあるので、制御部21のスケジューリング機能部25は検出終了時刻に基づいてスケジュールを再作成する(ステップS4:リスケジュール工程)。
【0065】
図8は、再作成後のスケジュールの一例を概略的に示す図である。図8の例では、変更後のブロックを太線で示している。ここでは、処理ユニット30Bは他の処理ユニット30に比べて第2薬液処理までの処理を短時間で行うので、処理ユニット30Aからの基板Wの搬出時刻よりも早いタイミングで、処理ユニット30Bから基板Wが取り出され、次の基板Wがより早いタイミングで処理ユニット30Bに受け渡される。
【0066】
制御部21の処理実行指示部26はこの再作成後のスケジュールに従って基板処理装置100の動作を制御する(基板処理続行工程)。これにより、基板処理装置100は再作成後のスケジュールに従って基板処理を続行する。
【0067】
また、制御部21は再びステップS2を実行する。よって、制御部21は、各処理ユニット30のセンサSRが検出終了時刻を検出すると(ステップS2:YES)、例えばプロセスジョブ内に未処理の基板Wがある場合に限って(ステップS3:YES)、その検出終了時刻に基づいて、順次にスケジュールを再作成する(ステップS4)。一方で、プロセスジョブ内に未処理の基板Wがないとき(ステップS3:NO)には、制御部21はスケジュールの再作成を行わない。
【0068】
以上のように、制御部21は、各処理ユニット30におけるセンサSRが検出終了時刻を検出するたびに、この検出終了時刻に基づいてスケジュールを再作成する。よって、制御部21は、検出終了時刻を反映した適切なスケジュールを作成することができ、基板処理装置100に再作成後のスケジュールに従った基板処理を続行させることができる。
【0069】
上述の例では、処理ユニット30Bがより短時間で処理を行うことができるので、順次のスケジュール再作成によって、この処理ユニット30Bにより多くの基板Wが搬入されて処理されることになる。これによれば、基板処理装置100のスループットを向上させることができる。
【0070】
<スケジュール作成方法の具体的な一例>
次にスケジュールの作成方法の具体的な一例について述べ、次にスケジュールの変更方法の具体的な一例について述べる。ここでは、各ユニットの処理の時間帯の決定を、上述のように、当該処理に対応したブロックの配置で説明する。つまり、ブロックを時間軸上で仮想的に配置することで、当該ブロックに対応した処理の時間帯を決定する。
【0071】
図9は、基板処理装置100(スケジュール作成装置)の具体的な動作の一例を示すフローチャートである。図9の処理は繰り返し実行される。まず、スケジューリング機能部25は基板処理開始指示があったか否かを判断する(ステップS11)。例えばホストコンピュータまたはユーザから入力部22に当該開始指示が入力される。制御部21は当該入力に応答して、例えば開始指示のフラグをLからHに遷移させる。ここでいう「L」および「H」は情報の2値を示すものであり、開始指示のフラグがHであることは、基板処理開始指示が入力されたことを示す。この開始指示のフラグは、全ての基板Wに対する処理が終了するまでHを維持する。
【0072】
基板処理開始指示は、共通の基板収容器Cに収容された全ての基板Wを一単位として発行されてもよい。また、基板処理開始指示は、共通の基板収容器Cに収容された全数未満の1枚以上の基板Wの処理開始を指示するものであってもよいし、別々の基板収容器Cに収容された複数枚の基板Wの処理開始を指示するものであってもよい。
【0073】
基板処理開始指示がない、つまり開始指示のフラグがLであるときには、スケジューリング機能部25は再びステップS11を実行する。基板処理開始指示があったときには、スケジューリング機能部25は仮タイムテーブルを作成する(ステップS12)。
【0074】
例えば、処理内容データ40において或るプロセスジョブ符号に対応付けられたレシピが、処理ユニット30の並行処理を指定しているとする。すなわち、当該レシピに従う基板処理が、4つの処理ユニット30A~30Dのいずれにおいても実行可能である場合を考える。この場合、当該プロセスジョブ符号が付与された基板Wが処理を受けるときに通る経路は、4通りである。すなわち、その基板Wの処理のために選択し得る経路は、処理ユニット30A~30Dのいずれかを通る4つの経路である。そこで、スケジューリング機能部25は、その4つの経路に対応した仮タイムテーブルを作成する。
【0075】
図10は、処理ユニット30Aを通る経路に対応した仮タイムテーブルの一例を示す図である。図10の例では、仮タイムテーブルは、基板収容器Cから処理ユニット30Aを経由して基板収容器Cに戻るための複数のブロックが配置される。スケジューリング機能部25は、図10に示すように、複数のブロックを時間軸上で重なり合いのないように順番に配置することによって、仮タイムテーブルを作成する。
【0076】
スケジューリング機能部25は、同じ基板Wに対して、4つの処理ユニット30A~30Dをそれぞれ通る4つの経路に対応した同様の4つの仮タイムテーブル(ブロックを処理ユニット30A~30Dにそれぞれ配置した仮タイムテーブル)を作成する。こうして、1枚の基板Wに対して合計4経路分の仮タイムテーブルが作成される。
【0077】
同様の仮タイムテーブルが、同じプロセスジョブ符号が付与された基板W(ここでは、処理ユニット30A~30Dで処理される8枚の基板W)に対応して作成される。こうして作成された仮タイムテーブルは、スケジュールデータの一部として記憶媒体23に格納される。仮タイムテーブルの作成段階では、複数枚の基板Wに関するブロック同士の干渉(時間軸上での重なり合い)は考慮されない。
【0078】
スケジューリング指示が発生すると(ステップS13:YES)、当該プロセスジョブの基板Wに関するブロックの配置が行われる(ステップS14~S16)。なお、制御部21はスケジューリング指示の発生に応じて、スケジューリング指示のフラグをLからHに遷移させる。スケジューリング指示のフラグがHであることは、スケジューリング指示が発生したことを示す。このスケジューリング指示のフラグは、全ての基板Wに対する処理が終了するまでHを維持する。
【0079】
スケジューリング機能部25は、当該基板Wに対応する仮タイムテーブルを参照し、当該仮タイムテーブルを構成するブロックを一つ取得する(ステップS14)。このとき取得されるブロックは、未配置のブロックのうち仮タイムテーブルの時間軸上で最も早い位置に配置されているブロックである。さらに、スケジューリング機能部25は、当該取得したブロックを配置できる位置を検索し(ステップS15)、その検索された位置に当該ブロックを配置する(ステップS16)。各ブロックは、同一リソースが同じ時間に重複して使用されないようにしながら、時間軸上で最も早い位置に配置される。なお、ここでいうブロックの配置とは、実際にはブロックを配置しているのではなく、各処理の時間帯を仮決定している。
【0080】
次に、スケジューリング機能部25は、仮タイムテーブルの全てのブロックの配置が終了したかを判断し(ステップS17)、未配置であれば(ステップS17:NO)、同様の動作(ステップS14~S16)を繰り返す。そして、仮タイムテーブルの全てのブロックを配置し終えると(ステップS17:YES)、スケジューリング機能部25は、全ての仮タイムテーブルを用いた計画の作成が終了したか否かを判断する(ステップS18)。つまり、4つの処理ユニット30A~30Dを用いた全てのパターンの計画が作成されたか否かを判断する(ステップS18)。未だ全てのパターンが作成されていない場合(ステップS18:NO)、スケジューリング機能部25は再びステップS13を実行する。全てのパターンが作成されていると(ステップS18:YES)、スケジューリング機能部25は、作成済みの計画の一つをスケジュールとして選択するための判定を行う(ステップS19)。例えば、スケジューリング機能部25は、スループットが最も高い計画を特定し、その計画をスケジュールとして選択する。スループットが最も高い計画が複数あれば、スケジューリング機能部25は、例えば、その計画のうち、ブロックの間隔(使用間隔)が最も空いている計画を選択する。また、使用間隔も同じであれば、スケジューリング機能部25は、例えば、その計画のうち、識別番号が小さい処理ユニットから順に動作する計画を選択する。
【0081】
以上の動作によって、図4に例示するスケジュールが作成される。制御部21の処理実行指示部26は、図4のスケジュールに従った動作を基板処理装置100に実行させる(図6のステップS1)。よって、処理ユニット30A~30Dは図4のスケジュールに従って基板Wに対する一連処理を開始する。
【0082】
そして、各処理ユニット30A~30Dが一連処理を開始すると、その処理中において、各センサSRは検出終了時刻を検出し(検出工程)、その検出終了時刻を制御部21に通知する(ステップS2:YES)。図7の例に即して説明すれば、処理ユニット30Bが検出終了時刻を制御部21に通知する。この検出終了時刻は、スケジュール上の第2薬液処理の終了時刻よりも早い。逆に言えば、レシピ上のエッチング時間は余裕をもって長めに設定され得る。検出終了時刻からスケジュール上の終了時刻までの削減時間は例えば30秒であるものとする。
【0083】
制御部21のスケジューリング機能部25は検出終了時刻に基づいてスケジュールを再作成する(ステップS4)。この再作成手順も例えば図9のフローチャートに沿って行うことができる。基板処理装置100のスケジュールに従った動作の実行中においては、基板処理開始指示のフラグは常にHとなっているので、ステップS11の処理において、肯定的な判断(YESの判断)がなされる。
【0084】
次に、スケジューリング機能部25は検出終了時刻に基づいて仮タイムテーブルを更新する(ステップS12)。具体的には、スケジューリング機能部25は仮タイムテーブルにおいて、通知元の処理ユニット30の一連処理の所要処理時間を修正する。例えば、スケジューリング機能部25は処理ユニット30Bの一連処理の所要処理時間から削減時間(例えば30秒)を減算して、一連処理の所要処理時間を更新する。図7の例に即して説明すれば、スケジューリング機能部25は仮タイムテーブルにおいて、処理ユニット30Bの最初の基板Wに対するブロックの長さを、更新後の所要処理時間とする。
【0085】
次に、スケジューリング機能部25は、更新した仮タイムスケジュールに基づいてスケジュールを再作成する。具体的には、まずスケジューリング機能部25は、スケジュールにおいて変更可能なブロックを白紙とする。図7の例では、既に各処理ユニット30A~30Dが基板Wに対する処理を実行しているので、各処理ユニット30A~30Dの最初の基板Wに対するブロックよりも前のブロック(搬送のブロック)は実行済みである。よって、これらのブロックを変更することはできない。また、各処理ユニット30A~30Dが実行中のブロックの開始時刻も変更できない。そこで、各処理ユニット30A~30Dの最初の基板Wに対する処理のブロックのよりも後のブロックを白紙とする。なお、処理ユニット30Bの処理のブロックの長さは更新後の仮タイムテーブルのブロックの長さである。
【0086】
そして、スケジューリング機能部25は、更新した仮タイムテーブルから、変更可能なブロックに対応するブロックを取得し(ステップS14)、該ブロックを配置できる位置を検索し(ステップS15)、その検索された位置に該ブロックを配置する(ステップS16)。他のブロックについても同様の処理により順次に配置される(ステップS17:NO、ステップS14~S16)。これにより、スケジューリング機能部25は、検出終了時刻を反映した複数の計画を作成することができる。制御部21は、全ての仮タイムテーブルを用いた計画を作成すると(ステップS18:YES)、その一つの計画をスケジュールとして採用する(ステップS19)。
【0087】
これにより、スケジューリング機能部25は検出終了時刻に基づいて、最適なスケジュールを再作成することができる。例えば、スケジューリング機能部25は最もスループットの高いスケジュールを再作成することができる。なお、ここでいうスケジュールの再作成とは、上述の説明から理解できるように、基板Wの搬送スケジュールの変更を含む基板処理装置100のスケジュールの変更をいう。
【0088】
<第1の実施の形態の効果>
以上のように、第1の実施の形態によれば、各処理ユニット30A~30DのセンサSRが検出した検出終了時刻に基づいて、スケジュールを再作成する。よって、制御部21は実際の処理時間(実時間)が反映されたスケジュールを再作成することができ、当該スケジュールに応じた動作を基板処理装置100に行わせることができる。
【0089】
なお、上述の例では、制御部21は、センサSRの測定対象である第1薬液処理および第2薬液処理のうち最後に行われる第2薬液処理の検出終了時刻の検出に応答して、スケジュールを再作成した。しかしながら、制御部21は第1薬液処理の検出終了時刻の検出にも応答して、スケジュールを再作成してもよい。つまり、制御部21は第1薬液処理および第2薬液処理の検出終了時刻の検出のたびにスケジュールを再作成してもよい。
【0090】
<第2の実施の形態>
第2の実施の形態にかかる基板処理装置100の構成は第1の実施の形態と同様である。ただし、制御部21の動作が第1の実施の形態とは相違する。
【0091】
図11は、第2の実施の形態にかかる基板処理装置100の動作の一例を示すフローチャートである。第2の実施の形態でも、第1の実施の形態と同様に、ステップS1からステップS3が実行される。そして、未処理の基板Wがあるときには(ステップS3:YES)、制御部21は、現在時刻から、スケジュール上において通知元の処理ユニット30の乾燥処理の終了時刻までの時間(以下、残時間と呼ぶ)が、既定の基準時間以上であるか否かを判断する(ステップS5)。基準時間は、制御部21がスケジュールを再作成するのに要する時間以上であり、例えば予め設定される。
【0092】
要するに、制御部21は、センサSRが検出終了時刻を検出してから、処理ユニット30からの基板Wの搬出開始までの第1時間が、スケジュールの再作成に要する規定の第2時間以上であるか否かを判断する。
【0093】
第1時間が第2時間以上であるとき、つまり、残時間が基準時間以上であるときには、通知元の処理ユニット30からの基板Wの搬出時刻までにスケジュールの再作成が可能であるので、制御部21はスケジュールを再作成する(ステップS4)。
【0094】
一方で、残時間が基準時間未満であるときには、通知元の処理ユニット30からの基板Wの搬出までにスケジュールの再作成を完了できない。よってこのとき、制御部21は搬送スケジュールの変更を伴うスケジュールの再作成を行わない。その代わりに、制御部21は通知元の処理ユニット30において、第2薬液処理よりも後の第2リンス処理および乾燥処理の少なくともいずれか一方の処理時間を増加させる(ステップS6:処理時間変更工程)。
【0095】
図12は、処理ユニット30によって実行される処理の一例を示す図である。図12では、レシピによって規定された基板処理手順と各処理における所要処理時間の一例が示されている。また、図12では、第1薬液処理、第1リンス処理および第2薬液処理の実時間の一例も示されている。ここでいう実時間とは、センサSRの測定結果に基づいて行われるエッチング処理の実際の処理時間である。図12では、第1薬液処理の実時間は70秒であるので、実時間とレシピ上のエッチング時間(所要処理時間)との差(削減時間)は20秒である。また、図12の例では、第2薬液処理の実時間は50秒であるので、第2薬液処理の削減時間は10秒である。第1薬液処理の削減時間が20秒であり、第2薬液処理の削減時間が10秒であるので、第2薬液処理の検出終了時刻は、スケジュール上の第2薬液処理の終了時刻よりも、合計の30秒だけ早くなる。
【0096】
そこで、制御部21は、第2リンス処理のリンス時間および乾燥処理の乾燥時間の少なくともいずれか一方を削減時間に応じて増加させる。図12の例では、制御部21は第2リンス処理のリンス時間に削減時間の合計の30秒を加算してリンス時間を30秒から60秒に変更し、乾燥時間を変更しない。制御部21は変更後のリンス時間を通知元の処理ユニット30に通知する。通知元の処理ユニット30は、変更後のリンス時間で第2リンス処理を行い、その後、乾燥処理を行う。これによれば、通知元の処理ユニット30における一連処理の所要処理時間は変更前後で同じである。よって、一連処理の終了時刻(つまり、乾燥処理の終了時刻)はスケジュール上の一連処理の終了時刻と一致する。
【0097】
このような後処理の所要処理時間(例えばリンス時間)の変更処理は、ステップS14からステップS19のような複雑な演算処理を必要としないので、残時間が基準時間よりも短くても行うことができる。
【0098】
そして、制御部21は、ステップS4(リスケジュール工程)またはステップS6(処理時間変更工程)の後に、再びステップS2を実行する。
【0099】
以上のように、制御部21は残時間が基準時間以上であるとき(ステップS5:YES)には、スケジュールを再作成する(ステップS4)。これにより、基板処理装置100のスループットを向上させることができる。
【0100】
一方で、残時間が基準時間よりも短いとき(ステップS5:NO)には、制御部21は通知元の処理ユニット30において、第2薬液処理よりも後の後処理(ここでは、第2リンス処理)の所要処理時間を増加させる(ステップS6)。これによれば、通知元の処理ユニット30が一連処理を終了する終了時刻は、スケジュール上の終了時刻と同じとなる。よって、図4のスケジュールを再作成することなく、基板処理装置100が処理を進行させることができる。これによれば、ステップS14からステップS19までの処理を行う必要がないので、制御部21の負荷を軽減させることができる。
【0101】
また、後処理の所要処理時間を増加させるので、通知元の処理ユニット30は第2薬液処理の終了から一連処理の終了まで、基板Wに対して第2リンス処理および乾燥処理のいずれかを継続して行う。よって、この通知元の処理ユニット30において、基板Wに処理が行われない待機時間はほとんど生じない。この待機時間では基板Wが処理ユニットにおいて静止しているので、基板Wの表面に対してパーティクルが付着する等の不具合が生じ得るところ、そのような不具合を抑制することができる。
【0102】
<第2リンス液の流量>
図13は、第2の実施の形態にかかる基板処理装置100の動作の他の一例を示すフローチャートである。制御部21は図11と同様に、ステップS1からステップS6を実行する。よって、図13の例でも、残時間が基準時間未満であるときには(ステップS5:NO)、制御部21は、通知元の処理ユニット30での第2リンス処理のリンス時間を増加させる(ステップS6)。
【0103】
また、図13の例では、制御部21は、通知元の処理ユニット30での第2リンス処理における第2リンス液の流量を、第2リンス処理のリンス時間の増加に応じて低減させる(ステップS7:流量変更工程)。つまり、第2リンス処理のリンス時間を増加させれば、過剰に第2リンス処理が行われることになるので、第2リンス液の流量を低下させても、第2エッチング液を十分に基板Wから流し去ることができる。よって、ここでは、第2リンス液の流量を低下させる。具体的な一例として、制御部21はリンス時間と流量との積が変更前後で等しくなるように、変更後の流量を算出してもよい。
【0104】
制御部21は変更後のリンス時間および変更後の流量を通知元の処理ユニット30に通知する。通知元の処理ユニット30は、変更後のリンス時間および流量で第2リンス処理を行う。
【0105】
そして、制御部21は、ステップS4(リスケジュール工程)またはステップS6(流量変更工程)の後に、再びステップS2を実行する。
【0106】
以上のように、図13の動作によれば、残時間が基準時間未満であるときに、制御部21は第2リンス処理のリンス時間を増加させるとともに、第2リンス液の流量を低減させる。よって、第2リンス処理を適切に行いつつも、第2リンス液の消費量を低減させることができる。よって、ランニングコストを低減させることができる。
【0107】
なお、上述の例では、制御部21は第2薬液処理よりも後の第2リンス処理のリンス時間を増加させているものの、必ずしもこれに限らない。制御部21は第2リンス処理および乾燥処理の処理時間の両方を増加させてもよい。要するに、制御部21は第2薬液処理よりも後に実行される後処理(ここでは第2リンス処理および乾燥処理を含む)の所要処理時間を削減時間(合計)だけ増加させればよい。
【0108】
図14は、処理ユニットによって実行される処理の他の一例を示す図である。図14の例でも、第1薬液処理および第2薬液処理の実時間がそれぞれ20秒および10秒だけ短く、その結果、第2薬液処理の検出終了時刻がスケジュール上の終了時刻よりも合計の30秒だけ早くなる。図14の例では、制御部21はリンス時間および乾燥時間の両方を増加させる。具体的には、制御部21はリンス時間および乾燥時間をそれぞれ20秒および10秒だけ増加させて、それぞれ50秒および30秒に変更する。これによっても、通知元の処理ユニット30における一連処理の終了時刻をスケジュール上の終了時刻と一致させることができる。なお、リンス時間の増加量および乾燥時間の増加量の合計が削減時間の合計と等しければ、増加量の割合は適宜に変更することができる。
【0109】
あるいは、制御部21は第2リンス処理のリンス時間を変更せずに、乾燥処理の乾燥時間を増加させてもよい。例えば、第2薬液処理の検出終了時刻がスケジュール上の第2薬液処理の終了時刻よりも削減時間(例えば30秒)だけ短い場合、制御部21は乾燥処理の乾燥時間を当該削減時間だけ増加させてもよい。
【0110】
この技術は、特に次の状況で有益である。すなわち、当該技術は、第2薬液処理の後の基板Wの表面に金属膜が露出する場合に特に有益である。なぜなら、金属膜は第2リンス液(例えば純水)との反応により、酸化し得るからである。つまり、第2リンス液のリンス時間を増加させると、金属膜が酸化するおそれがあるものの、リンス時間を増加させないので、そのような酸化を抑制または回避することができる。逆に言えば、第2薬液処理によって基板Wの表面に金属膜が露出する場合には、制御部21は第2リンス処理のリンス時間を増加させずに乾燥処理の乾燥時間を増加させるとよい。
【0111】
<第3の実施の形態>
第3の実施の形態にかかる基板処理装置100の構成は第1の実施の形態と同様である。ただし、制御部21の動作が第1の実施の形態とは相違する。
【0112】
図15は、第3の実施の形態にかかる基板処理装置100の動作の一例を示すフローチャートである。ステップS31およびステップS32はそれぞれステップS1およびステップS2と同様である。
【0113】
制御部21は検出終了時刻の通知を受け取ったときに(ステップS32:YES)、通知元の処理ユニット30に対応付けて、検出終了時刻に関する情報を記憶媒体23に記憶させる(ステップS33:記憶工程)。当該情報は、例えば、処理の実時間、あるいは、レシピ上の所要処理時間から実時間を減算して得られる削減時間である。例えば、制御部21が処理ユニット30Aから第1薬液処理の検出終了時刻の通知を受け取ったときに、該検出終了時刻に基づいて第1薬液処理の実時間を算出し、第1薬液処理のスケジュール上のエッチング時間と実時間との差である削減時間を算出し、削減時間を処理ユニット30Aの第1薬液処理に対応して記憶媒体23に記憶させる。第2薬液処理についても同様である。
【0114】
次に、制御部21はステップS3と同様に、未処理の基板Wがあるか否かを判断する(ステップS34)。未処理の基板Wがあるときには、制御部21は再びステップS32を実行する。つまり、プロセスジョブ内の最後の基板Wに対する検出終了時刻が検出されるまで、繰り返しステップS3が実行される。これによれば、各処理ユニット30に対応する第1薬液処理の削減時間および第2薬液処理の削減時間が、全ての基板Wについて記憶媒体23に記憶されることとなる。
【0115】
図16は、削減時間の一例を示す図である。図16の例では、各処理ユニット30において、第1薬液処理の削減時間Td1、第2薬液処理の削減時間Td2および一連処理の削減時間Td0が示されている。一連処理の削減時間Td0は削減時間Td1と削減時間Td2との和である。なお、図16では図示省略するものの、各処理ユニット30は順次に基板Wを処理するので、記憶媒体23には、各処理ユニット30において処理された基板Wの枚数分の削減時間が記憶され得る。各処理ユニット30における各処理の削減時間は基板Wの枚数分の平均時間であってもよく、あるいは、複数枚の基板Wについての削減時間うちの最小値であってもよい。
【0116】
未処理の基板Wがないときには(ステップS34:NO)、制御部21はスケジュール案(第1案に相当)と処理時間増加案(第2案に相当)との両方を、記憶媒体23に記憶された削減時間Td1,Td2,Td0に基づいて作成する(ステップS35)。
【0117】
スケジュール案は、搬送スケジュールの変更を伴うスケジュールであり、図9と同様の手法により算出される。ただし、ステップS14の仮タイムテーブルの作成に際して、制御部21は、各処理ユニット30の一連処理の所要処理時間(処理のブロックの長さ)を、記憶媒体23に記憶された削減時間に基づいて算出する。より具体的な手順の一例として、まず、制御部21は、記憶媒体23に記録された第1薬液処理の削減時間Td1(図では20秒)だけ、レシピ上の第1薬液処理のエッチング時間から減算して該エッチング時間を変更する。第2薬液処理についても同様である。つまり、制御部21は、第1薬液処理および第2薬液処理のエッチング時間として前回の処理における実時間を採用する。そして、制御部21は、これらのエッチング時間と、他の処理のレシピ上の所要処理時間とに基づいて、一連処理の所要処理時間を算出する。これにより、制御部21は各処理ユニット30の実際のエッチング時間を反映したスケジュール案を作成することができる。
【0118】
なお、エッチング時間として必ずしも実時間を採用する必要はなく、実時間よりもわずかに長い時間を採用してもよい。
【0119】
処理時間増加案は、各処理ユニット30において第2薬液処理よりも後の後処理の処理時間を、記憶媒体23に記憶された情報に基づいた時間だけ増加させたスケジュールである。例えば制御部21は、記憶媒体23に記憶された処理ユニット30Aにおける一連処理の削減時間Td0(図では30秒)だけ、処理ユニット30Aにおける後処理の所要処理時間(例えば第2リンス処理のリンス時間)を増加させてもよい。他の処理ユニット30についても同様である。この処理時間増加案では、処理ユニット30における一連処理の所要処理時間が変わらないので、制御部21は図4と同様のスケジュール案を作成することができる。
【0120】
次に、制御部21は、ステップS35において作成したスケジュール案と処理時間増加案を表示部24に表示させる(ステップS36:表示工程)。
【0121】
ユーザは表示部24に表示された2つの案を確認する。入力部22は、いずれの案を採用するのかの入力情報を受け付けることができる。ユーザが入力情報を入力部22に入力すると、制御部21は入力情報によって指定された案に従って、基板処理装置100を制御する。これによれば、基板処理装置100は、次のプロセスジョブの複数枚の基板Wに対して、指定された案に従って基板処理を行うことができる。
【0122】
以上のように、第3の実施の形態では、スケジュール案および処理時間増加案がユーザによって選択される。よって、ユーザビリティを向上させることができる。
【0123】
<処理時間増加案の他の例>
次に、処理時間増加案の他の例について述べる。図17は、処理時間増加案の他の例を説明するための図である。制御部21は、記憶媒体23に記憶された削減時間Td0に基づいて、複数の処理ユニット30の一連処理の所要処理時間を同じ減少量だけ減少させてもよい。
【0124】
図17は、処理ユニット30A~30Dにおいて一連処理の所要処理時間を同じ減少量だけ減少させた例を示す図である。図17の例では、紙面上部において、基板処理装置100が基板Wを処理したときの各処理ユニット30における処理の結果を示している。具体的には、図17の紙面上部では、第1薬液処理のレシピ上のエッチング時間Te1、実時間Ta1および削減時間Td1と、第2薬液処理のレシピ上のエッチング時間Te2、実時間Ta2および削減時間Td2とが示されている。各処理ユニット30の削減時間Td1,Td2は図16の通りである。
【0125】
図16も参照して、複数の処理ユニット30において、一連処理の削減時間Td0の最小値Td0_minは25秒である。つまり、次回以降のプロセスジョブの基板処理において、複数の処理ユニット30の全てで、一連処理の所要処理時間を最小値Td0_minだけ減少させることが可能である。そこで、制御部21は、処理ユニット30の一連処理の所要処理時間を最小値Td0_minだけ共通に減少させて、処理時間増加案を作成してもよい。図17の紙面下部において、処理ユニット30A~30Dの一連処理の所要処理時間を最小値Td0_minだけ共通に減少させたときの一例を示している。
【0126】
そして、制御部21は、各処理ユニット30において、後処理の所要処理時間を、一連処理の削減時間Td0と最小値Td0_minとの差だけ増加させる。例えば図16の例では、処理ユニット30Aの一連処理の削減時間Td0は30秒であるので、処理ユニット30Aの後処理の所要処理時間を5秒(=30秒-25秒)だけ増加させる。処理ユニット30B~30Dも同様である。これにより、一連処理の所要処理時間を複数の処理ユニット30において一致させることができる。したがって、仮タイムテーブルの作成が容易である。
【0127】
これによれば、制御部21は図4と同様のスケジュール案を作成するものの、各処理ユニット30における一連処理の所要処理時間(ブロックの長さ)は従前よりも最小値Td0_minだけ短くなる。つまり、基板処理装置100のスループットを向上させることができる。
【0128】
<流量>
処理時間増加案において、第2リンス処理のリンス時間を増加させる場合、第2の実施の形態と同様に、その増加量に応じて第2リンス液の流量を低下させるとよい。具体的には、第2リンス処理のリンス時間と第2リンス液の流量との積が変更前後で同じになるように、第2リンス液の流量をリンス時間の増加に応じて低下させるとよい。この場合、処理時間増加案における第2リンス液の流量はスケジュール案における第2リンス液の流量よりも小さくなる。よって、処理時間増加案における第2リンス液の消費量を低減させることができ、ランニングコストを低減させることができる。
【0129】
以上、実施の形態が説明されたが、この基板処理装置100およびスケジュール変更方法はその趣旨を逸脱しない限りにおいて上述したもの以外に種々の変更を行うことが可能である。本実施の形態は、その開示の範囲内において、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。
【0130】
また、プログラムは、コンピュータ20に組み込まれた状態で提供されてもよいし、コンピュータ20とは別の記憶媒体(CD-ROM、DVD-ROM等のコンピュータ読取可能な記憶媒体)に記録された状態で提供されてもよい。
【0131】
その他、特許請求の範囲に記載された事項の範囲で種々の設計変更を施すことが可能である。
【符号の説明】
【0132】
23 記憶媒体
24 表示部
30,30A~30L 処理ユニット
S1 開始工程(ステップ)
S4 リスケジュール工程(ステップ)
S6 処理時間変更工程(ステップ)
S7 流量変更工程(ステップ)
S36 表示工程(ステップ)
SR センサ
W 基板
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17