(57)【特許請求の範囲】
【請求項１】
少なくとも一つのチャンバを有する基板処理システムを洗浄する方法であって、
（ａ）前記チャンバにおいて一以上のウェハを処理した後に、チャンバ操作パラメータに基づき、前記チャンバに対する洗浄間隔を決定する工程と、
（ｂ）前記チャンバが使用中でないとき、前記洗浄間隔に従い前記チャンバに対する洗浄プロセスを自動的に実行するようシーケンサータスクモジュールを使用する工程と、
を含む方法。
【請求項２】
前記チャンバ操作パラメータは、ウェハのロットサイズの測度である、請求項１に記載の方法。
【請求項３】
前記チャンバ操作パラメータは、処理されたウェハの枚数の測度である、請求項１に記載の方法。
【請求項４】
前記チャンバ操作パラメータは、ＲＦコイルが通電されていた時間であるＲＦ積算通電時間の測度である、請求項１に記載の方法。
【請求項５】
前記チャンバ操作パラメータは、前記チャンバで処理された化学薬品の種類の測度である、請求項１に記載の方法。
【請求項６】
前記チャンバ操作パラメータは、先回の洗浄からのチャンバ使用の経過時間の長さの測度である、請求項１に記載の方法。
【請求項７】
前記決定する工程（ａ）が定期的に遂行される、請求項１に記載の方法。
【請求項８】
前記使用する工程（ｂ）は、複数の洗浄パラメータを格納するために第１データ構造を使用する、請求項１に記載の方法。
【請求項９】
前記第１データ構造は、少なくとも一つの洗浄プロセスを、ウェハが受ける操作を規定するプロセスレシピプログラムへリンクするためのデータフィールドを含む、請求項８に記載の方法。
【請求項１０】
前記少なくとも一つの洗浄プロセスは、第２データ構造に格納される、請求項９に記載の方法。
【請求項１１】
前記第２データ構造は、一連の洗浄レシピ工程を含み、前記洗浄レシピ工程は、前記プロセスレシピプログラムの一つ以上のプロセス工程に対応する、請求項１０に記載の方法。
【請求項１２】
前記洗浄レシピ工程の各々は、第３データ構造に格納される、請求項１１に記載の方法。
【請求項１３】
前記第３データ構造は、前記洗浄プロセスにおいて洗浄ウェハの必要を示すデータフィールドを含む、請求項１２に記載の方法。
【請求項１４】
前記シーケンサータスクモジュールは、更に、オペレータが前記洗浄プロセスに関するデータを対話的に入力することを可能にするための画面タスクモジュールを更に備える、請求項１に記載の方法。
【請求項１５】
前記使用する工程（ｂ）は、前記オペレータ入力データに従い、またはウェハが受ける操作を規定するプロセスレシピプログラムに従い、前記洗浄プロセスを実行する、請求項１４に記載の方法。
【請求項１６】
前記シーケンサータスクモジュールは、更に、前記チャンバに対して少なくとも一つの洗浄レシピ工程を行うためのチャンバタスクモジュールを備える、請求項１に記載の方法。
【請求項１７】
前記シーケンサータスクモジュールは、更に、前記基板処理システムに対して遅いタスクを監視するための遅いタスクモジュールを備える、請求項１に記載の方法。
【請求項１８】
前記シーケンサータスクモジュールは、更に、前記基板処理システム内でウェハの移動を制御するためのバッファチャンバタスクモジュールを備える、請求項１に記載の方法。
【請求項１９】
半導体ウェハ等のワークピースを処理する基板処理システムであって、
少なくとも一つの洗浄プロセスを遂行するための、少なくとも一つのプロセスチャンバと、
プロセスチャンバに接続され、前記プロセスチャンバ内における一以上のウェハの処理の後にチャンバ操作パラメータに基づき前記プロセスチャンバに対して洗浄間隔を決定するための、および、前記少なくとも一つのプロセスチャンバが使用中でない場合に、前記洗浄間隔に従い前記少なくとも一つのプロセスチャンバに対して前記少なくとも一つの洗浄プロセスを実行するための、シーケンスタスクモジュールを有する、コントローラと、
を備えるシステム。
【請求項２０】
前記チャンバ操作パラメータは、ウェハのロットサイズの測度である、請求項１９に記載のシステム。
【請求項２１】
前記チャンバ操作パラメータは、処理されたウェハの数の測度である、請求項１９に記載のシステム。
【請求項２２】
前記チャンバ操作パラメータは、ＲＦコイルが通電されていた時間であるＲＦ積算通電時間の測度である、請求項１９に記載のシステム。
【請求項２３】
前記チャンバ操作パラメータは、前記チャンバでプロセスされた化学薬品の種類の測度である、請求項１９に記載のシステム。
【請求項２４】
前記チャンバ操作パラメータは、先回の洗浄からのチャンバ使用の経過時間の長さの測度である、請求項１９に記載のシステム。
【請求項２５】
前記コントローラは、複数の洗浄パラメータを格納するために第１データ構造を使用し、前記第１データ構造は、少なくとも一つの洗浄プロセスを、ウェハが受ける操作を規定するプロセスレシピプログラムへリンクするためのデータフィールドを含む、請求項１９に記載のシステム。
【請求項２６】
前記少なくとも一つの洗浄プロセスは、第２データ構造に格納され、前記第２データ構造は、一連の洗浄レシピ工程を含み、前記洗浄レシピ工程は、前記プロセスレシピプログラムの一つ以上のプロセス工程に対応する、請求項２５に記載のシステム。
【請求項２７】
前記洗浄レシピ工程の各々は、第３データ構造に格納される、請求項２６に記載のシステム。
【請求項２８】
前記シーケンサータスクモジュールは、更に、オペレータが前記少なくとも一つの洗浄プロセスに関するデータを対話的に入力することを可能にするための画面タスクモジュールを備える、請求項１９に記載のシステム。
【請求項２９】
コンピュータの可読可能な媒体上に格納されるデータ構造であって、
一以上のウェハを処理するチャンバ用の洗浄プロセスの種類を格納するための第１データフィールドと、
前記洗浄シーケンスでの現行工程を格納するための第２データフィールドと、
前記洗浄プロセスにおける工程の全数を格納するための第３データフィールドと、
前記データ構造が現在実行されていることを示すようステータスフラグを格納するための第４データフィールドと、
チャンバ操作パラメータを格納するための少なくとも一つの第５フィールドと、
を備えるデータ構造。
【請求項３０】
前記データ構造は、更に、
洗浄データのソースを格納するための第６データフィールドと、
ＲＦコイルが通電されていた時間である積算ＲＦ通電時間を格納するための第７データフィールドと、
洗浄シーケンスプログラムファイルの名前を格納するための第８データフィールドと、
プロセスレシピプログラムファイルを格納するための第９データフィールドと、
前記洗浄シーケンスプログラムファイルの少なくとも一つの工程のためにＲＦコイルが通電されていた時間である積算ＲＦ通電時間を格納するための第１０データフィールドと、
を備える請求項２９に記載のデータ構造。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、集積回路ウェハ処理システムに関し、より詳細には、プロセスシーケンスにおける遅延を軽減する自動洗浄特長を利用するマルチチャンバウェハ処理システムに関する。
【０００２】
【従来の技術】
集積回路ウェハ等のワークピースへ、マルチプロセスを順次および同時に遂行する能力のあるマルチチャンバ集積回路処理システムは、Maydan 他へ発行された米国特許第４，９５１，６００号 (Maydan I)、同じく Maydan 他へ発行された米国特許第５，２９２，３９３号 (Maydan II) に示されており、その開示を引用して本明細書に組み入れる。
【０００３】
Maydan I および Maydan II に記載のマルチチャンバ処理システムは、基本的に統合真空処理システムであり、それは、ひとつ以上のロードロックチャンバと、転送チャンバと、各チャンバでの選択的に閉鎖可能なスリットバルブを介してロードロックチャンバおよび転送チャンバに連通する複数の真空プロセスチャンバとを含む。各プロセスチャンバは、チャンバ内に位置決めされた一枚以上のウェハの化学的気相成長、物理蒸着、および急速熱処理等、ひとつ以上の集積回路プロセスを果たすように成すことができる。
【０００４】
マルチチャンバ処理システムの構成要素の、化学的プロセスの調整と制御は、対話的なユーザの入力と監督とを可能にするリアルタイムのマルチタスク制御プログラムにより提供される。一般に、シーケンサータスクモジュールは、ウェハ毎の識別標と処理レシピ、すなわちシーケンスを含むウェハオーダーリストを読み、プロセスチャンバ間のウェハの転送と、そこで出現するプロセス化学薬品とをスケジューリングする。
【０００５】
一定時間後、プロセスチャンバは処理薬品による汚染状態になり、洗浄されねばならない。この期間は、一般に、チャンバが使用しプロセスの回数と種類を記述する数多くのパラメータに依存するので、比較的変動する。いくつかの化学薬品、特に腐食性のもの、後続化学薬品を汚染する可能性を有するもの、または全てのウェハにとって包括的なプロセス化学薬品、を利用するプロセスチャンバは、一般に、より頻繁な洗浄を必要とする。化学薬品の特定シーケンスは、プロセスチャンバをより迅速に汚染状態にさせ、手当り次第の間隔であると思えるほど洗浄を行なわなくてはならない。
【０００６】
従来、チャンバの洗浄にかかる時間は、リアルタイムプロセスシーケンス以外でユーザーが測定し、一定の時間経過を示すアラームが起動されたとき、すなわち定期間隔で全体のシステムが遮断され、洗浄プロセスが行なわれていた。これは、オペレータが、その時点以前にどんなプロセス化学薬品が出現したか、それが何回で、どんな順序であったか、を理解する必要があることを意味する。次に、オペレータは、組み合わせ洗浄リストから選定して、自動プロセスシーケンスを再開する前に、そのチャンバへ数多くの洗浄レシピを実施する。
【０００７】
この従来の洗浄手順は、非常に手間取り、マルチチャンバ処理システムのスループットに多大な悪影響を及ぼす。洗浄プロセスがなされている間、システムは処理を行わず、洗浄プロセス完了後に、システムはポンプ引きされて真空にする必要がある。更に、追加のプロセスチャンバがあり、より複雑な順序のプロセスでは、オペレータが正しい洗浄レシピを適切な時期に始動させるが、それでも最適のスループットを維持するのは非常に困難である。オペレータが、使用されたプロセスの経緯データと先の洗浄間隔から、使用するレシピを決定する間に、これは更なる遅延を生ずる。加えて、オペレータが、洗浄プロセスを選択する中で、後続のウェハ処理および製品品質に影響を及ぼすかもしれない間違いを犯すある程度の確率が依然としてある。
【０００８】
従って、当該技術において、プロセス化学薬品レシピと自動製造シーケンスとに完全に統合できる自動洗浄シーケンスに対するニーズがある。自動洗浄プロセスに対して特に有利な候補のひとつは、「ドライ洗浄」プロセスと呼ばれ、それは、プロセスチャンバを洗浄するために、ウエット化学薬品の代りに、ガス状態の洗浄薬剤と熱とを使用する。そのようなドライ洗浄工程は、コンピュータ制御の下で調整されることができ、プロセスチャンバがオフラインであり、残りの製造シーケンスが正規に完了している間に遂行されることができる。
【０００９】
【課題を解決するための手段】
本発明は、システムのプロセスチャンバのために自動ドライ洗浄プロセスを行うマルチタスクシーケンサ制御装置を備えるマルチチャンバ処理システムを提供する。洗浄プロセスは、製造プロセスと組合せて遂行され、それは、プロセスチャンバのうちの特定のひとつが洗浄されている間に、システムが集積回路ウェハタイプのワークピースを連続処理することを可能にする。
【００１０】
ドライ洗浄プロセスは、システムでのワークピースの処理スケジュールとの間がシームレスであるように自動的にスケジューリングされる。次にプロセスチャンバのドライ洗浄を、別のプロセスが隣のプロセスチャンバで出現しているのと同時に行うことができる。自動洗浄プロセスの、システムプロセスとしての統合は、プロセスチャンバが洗浄すべきときに、全てのプロセスを停止するために、以前は多大に使われた休止時間をなくす。ワークピースは、別のウェハが処理されていた際にそうであるように、使用中のプロセスチャンバを回避して自動的にスケジューリングされる。これは、製造プロセスが真に連続的であることを可能にするとともに、スループットを著しく高める。
【００１１】
ドライ洗浄プロセスは、レシピに従い実施される。洗浄されることになるプロセスチャンバで使用されたプロセス化学薬品に対応する。従って、特定チャンバ用洗浄レシピは、チャンバの実際の使用に基づいて作成され、それにより：（１）洗浄がなされる必要がある場合、効率的に洗浄でき、他のウェハに対する他のプロセス工程はチャンバ内の残留化学薬品から汚染されず、そして（２）プロセスチャンバを洗浄する必要のない場合、プロセスチャンバは不必要に洗浄されず、それはシステム資源を節約し、システムの総合的利用率を高める。
【００１２】
洗浄プロセスは、各プロセスチャンバに対して個別化され、使用時間基準で呼び出すことができ、好ましい実施形態では、プロセスチャンバで処理されたウェハ数、または、プロセスチャンバの加熱素子に対する積算ＲＦ通電時間で呼出せる。代替として、個別化洗浄プロセスは、チャンバにより処理された特定ロットの終了の注書きにより、被処理ウェハのタイプ変更を理由に呼出せる。
【００１３】
本発明の図示実施形態では、これらの方法は、ひとつ以上のロードロックチャンバ、バッファチャンバ、配向チャンバ、複数の真空プロセスチャンバを含むマルチチャンバ処理システムを制御するプロセス制御シーケンサにより実行される。各プロセスチャンバは、ワークピースにひとつ以上の集積回路プロセスを実施するように成されている。転送チャンバへ集中的に配置されたウェハ転送機構は、プロセスシーケンス中にウェハを専用化チャンバとプロセスチャンバとの間で移動させるのに使用される。
【００１４】
プロセス制御シーケンサはマルチタスク制御プログラムの一部であり、この制御プログラムは、プロセスチャンバ内でのプロセス制御のための、そしてプロセスチャンバからプロセスチャンバへのウェハの転送のためのモジュールを含む幾つかのリアルタイムモジュールを含む。プロセスシーケンサは、ウェハの特定ロットのウェハと、それが受けることになる操作、すなわちそのプロセスレシピとを識別するウェハオーダーリスト上で動作する。プロセスレシピでの化学薬品工程をプロセスチャンバの能力と整合させることにより、ウェハは、チャンバからチャンバへ、プロセス制御シーケンサから、実際にウェハ転送機構を制御するチャンバタスクモジュールへのコマンドにより転送される。ウェハ転送は、移動される必要のあるワークピースと、その転送のためのシーケンスとを識別するウェハ移動リストに従い指図される。
【００１５】
ウェハオーダーリストは、特定のウェハに対して使用されるプロセスレシピを示す。好ましくは、各プロセスレシピプログラムは、ヘッダー部を含み、それは、実際の使用に基づく洗浄シーケンスを呼出すための対応する洗浄シーケンスと設定条件を示す。洗浄シーケンスは、関連するプロセスレシピプログラムの化学薬品を基礎としてアセンブルされた数多くの洗浄レシピプログラム、すなわちルーチンから構成される。プロセスレシピプログラムと洗浄レシピプログラムとを連合して形成するためのオフラインエディタは、プロセス制御により提供される。
【００１６】
代替として、プロセスレシピに予めプログラムされたシーケンスが無い場合、格納された洗浄シーケンスをオペレータは呼出すことができる。この特長は、プロセスチャンバの自動洗浄が、洗浄プロセスをプログラムされたことの無い専用化プロセスに対してプロセス制御によりスケジューリングされることを可能にする。
【００１７】
【発明の実施の形態】
本発明の教示は、添付の図面に関連させて以下に記載の詳細な説明を熟慮することにより容易に理解できる。理解を容易にするために、可能な場合には、同一符号を用いて図面に共通な同一要素を指示する。
【００１８】
図１は、本発明に従って動作するマルチチャンバ半導体ウェハ処理システム１０（クラスタツール）の好ましい実施の形態の平面図である。クラスタツールは、超大規模集積化（ＶＬＳＩ）タイプの集積回路に対する、シリコンウェハのようなワークピースを真空処理するのに特に適合されている。クラスタツール１０は、密閉された真空転送エンクロージャ、すなわちチャンバ１４を画成する８つの側壁１３を有する、密閉された略８角形のメインフレームすなわちハウジング１２を備える。
【００１９】
クラスタツール１０は、例えば、４個のプロセスチャンバ（ＰＣ１〜ＰＣ４）１６、１８、２０、２２、転送チャンバ１４、バッファチャンバ２８、ウェハ配向／デガスチャンバ２０、および一対のロードロックチャンバ２４と２６を含む。各プロセスチャンバは、半導体ウェハ処理の異なる段階、すなわちフェーズを表す。これらのチャンバ間のウェハ転送を果たすために、転送チャンバ１４は、第１ロボット転送機構８２、例えば、単一ブレードロボット（ＳＢＲ）を含む。ウェハ１５は、普通には、貯蔵部からシステムまでプラスチック製移送カセット２７、２９に入れて搬送され、カセットはロードロックチャンバ２４または２６の一方に入れられる。ロボットの移送機構８２は、一度に一枚、ウェハ１５をカセット２７、２９からウェハ配向／デガスチャンバ３０へ移送する。バッファチャンバ２８は、ウェハがプロセスチャンバ１６、１８、２０、２２内での処理後まで使用されないのが一般的である。個々のウェハは、第１ロボット機構８２の最遠端８４に配置されるウェハ移送ブレード１０６に載せて運ばれる。移送動作はコントローラ７０により制御される。
【００２０】
コントローラ７０は、クラスタツール１０により行なわれる処理とウェハ転送とを制御する。コントローラは、マイクロプロセッサ（ＣＰＵ）、制御ルーチンを格納するためのメモリ、および、電源、クロック回路、キャッシュ等の補助回路を含む。コントローラ７０は、キーボード、マウス、およびディスプレイ等の入力／出力周辺器も含む。コントローラ７０は、ウェハの処理と移送とを容易にする操作をシーケンスして、スケジューリングするようプログラムされた汎用コンピュータである。クラスタツールを制御するソフトウエアルーチンはメモリに格納され、クラスタツールの制御を容易にするようマイクロプロセッサにより実行される。
【００２１】
本明細書でソフトウエアプロセスとして検討するプロセス工程の幾つかは、ハードウエア、例えば、種々のプロセス工程を果たすためにマイクロプロセッサと協動する回路として実施可能であることが考慮される。コントローラは、種々のスケジューリング化ルーチンを遂行するようプログラムされる汎用コンピュータとして図示されているが、ソフトウエアにより実施されるプロセスは、特定用途向け集積回路（ＡＳＩＣ）または個別回路部品としてハードウエアで実施されてもよい。その場合、本明細書で説明されるプロセス工程は、ソフトウエア、ハードウエア、またはそれらの任意な組合せにより同等に遂行される、と広く解釈されることとする。
【００２２】
転送チャンバ１４は、４つのプロセスチャンバ１６、１８、２０、２２に囲まれ、そこへのアクセス権を有する。プロセスチャンバ内で処理が完了した後、移送機構８２は、ウェハをプロセスチャンバから移動させ、ウェハをバッファチャンバ２８へ移送する。次に、ウェハは、バッファチャンバから取り出され、ロードロックチャンバ２４または２６内の移送カセット２７、２９に置かれる。
【００２３】
コントローラ７０は、システムプロセス制御ソフトウエアを実行し、図２を参照して、より充分に説明するように、自動制御とプロセスのシーケンスを行う。より詳細には、コントローラ７０は、マルチチャンバ処理システムを制御するために、汎用コンピュータ（例えば、メインフレームコンピュータ、ワークステーション、パーソナルコンピュータ、または、マイクロコントローラ）として実施されることができる。汎用コンピュータは、中央演算処理装置（ＣＰＵ）すなわちプロセサ７２、メモリ７１、ＲＯＭ７３、および、種々の入力／出力装置７４、例えば、モニタ、キーボードおよび／または種々の記憶装置を備えることができる。
【００２４】
好ましい実施の形態では、コントローラは、マイクロコンピュータであり、以下説明するように斬新なシステムソフトウエアアプリケーションを組込む。システムソフトウエアは、ひとつ以上のソフトウエアアプリケーションすなわちモジュールにより表され、それは、Ｉ／Ｏ装置７４からメモリ７１、例えば、磁気または光ディスクドライブ、ディスケット、またはテープにロードされる。代替として、システムソフトウエアは、例えば、読出専用メモリ（ＲＯＭ）７３等に格納されるファームウエアとして実施されることができる。その場合、本発明のシステムソフトウエアは、ひとつ以上のコンピュータの可読媒体上に格納されることができる。最後に、ソフトウエアアプリケーションがロードされた後、プロセッサ７２は、メモリ内の斬新なシステムソフトウエアを適用し、ウェハ装置洗浄プロセスを実施する。一般に、プロセッサ７２は、市販で入手可能なマイクロプロセッサのひとつ、例えば、Motorola, Inc. により製造されるモデル６８０ｘ０でよい。
【００２５】
より詳細には、システムソフトウエアは、マルチタスクであり、定期的な呼出信号を生成するタイマからの割込み基準で呼出されるリアルタイムタスク指向モジュールに分割される。基本的なシステムソフトウエアは、図２に示すように、シーケンサータスクモジュール２００、画面タスクモジュール２０２、遅いタスクモジュール２０４、チャンバタスクモジュール２０６、および、バッファチャンバタスクモジュール２０８を含む。本発明の好ましい実施の形態は、多数のマルチのタスク指向モジュールの使用を説明するが、これらのモジュールにより遂行される機能は、任意の数の異なるモジュール（例えば、より大量のモジュールを使用すること、より少ない数のモジュールを使用すること、または、全ての必要な機能を遂行する単一シーケンサータスクモジュールを使用することさえ）でも実施できることを理解すべきである。
【００２６】
図２へ戻ると、先に説明したモジュール２００〜２０８の各々は、呼出された場合、ゆっくり実行するモジュールの処理を中断し、それらの処理を完了し、それから、中断されたルーチンへ最後の退出点で戻る。この従来のマルチタスク階層操作は、より重要な操作が、リアルタイム基準でシステムでの他のタスクの処理に重大な影響を与えずに処理できるようにする。モジュール２００〜２０８の各々は、他のモジュールが操作するデータ構造を変更することにより、他のモジュールに対してその出口上にメッセージまたはデータを残すことにより、または、命令されたモジュールにより処理中に、その後実行されるコマンドをその処理中に別のモジュールへ発行することにより、他の何れのモジュールとも通信できる。
【００２７】
一般に、シーケンサータスクモジュール２００は、プロセスレシピプログラムと洗浄レシピプログラムとを含むウェハ製造の順次のすなわち段階的なプロセスを制御する。モジュール２００は、ロードロック２４と２６にローディングされたウェハ、および、そのプロセスレシピと洗浄レシピ、すなわち異なるチャンバに対するプロセスのシーケンスと化学薬品を記述するデータ構造、ウェハオーダーリスト（ＷＯＬ）上で動作する。プロセスレシピと洗浄レシピは、別のデータ構造、ウェハ管理データ構造（ＷＭＤＳ）を介して、情報へのポインタによりＷＯＬの特定のウェハと各々関連する。ＷＯＬとＷＭＤＳでの情報上で動作するシーケンサータスクモジュール２００は、正確な時期に特定のチャンバに対する特定のプロセスレシピまたは洗浄レシピのプロセス工程を行うよう、チャンバタスクモジュールへコマンドを発する。ウェハは、特定のチャンバの処理化学薬品を整合させるようシステムの転送操作を記述するデータ構造、ウェハ移動キュー（ＷＭＱ）上で動作するシーケンサータスクモジュール２００により、異なるチャンバを介して移動される。ＷＭＱ上にいずれかのウェハがある場合、シーケンサモジュールは、チャンバの入口スリットとウェハ転送機構８０の制御により移動を行なうよう緩衝タスクモジュール２０８へ命令する。
【００２８】
チャンバタスクモジュール２０６は、真空バルブ、異なる化学薬品のプロセスイオン化、加熱素子／ランプの通電または切断等の実際の制御を含む、ウェハ上への集積回路プロセスに対する、およびチャンバのための洗浄レシピに対する種々のレシピを取扱う。チャンバタスクモジュール２０６は、プロセスチャンバで出現するプロセスを、データ構造、チャンバデータ構造（ＣＤＳ）上でのその動作により監視し制御する。
【００２９】
画面タスクモジュール２０２は、オペレータが、一定のデータを他のモジュールのデータ構造内へプログラムすること、および、メッセージとコマンドを、プロセスへ対話様式で、それが開始される前およびその実行中に残すことを可能にする。画面タスクモジュール２０２の主要な役割のひとつは、対話的テキストエディタであり、オペレータが、データとコマンドをオペレータインタフェースすなわちディスプレイを介して入力し編集し、および、それをプロセスのために制御と管理のモジュールへ格納することを可能にする。画面タスクモジュール２０２は、オペレータが種々の状態、警報、および監視情報をシステムの自動制御シーケンスの実行中に表示することも可能にする。
【００３０】
遅いタスクモジュール２０４も、比較的ゆっくりしたペースで動作するシステムに対する一定のタスクを監視し時間を計るよう提供される。例えば、チャンバに対する洗浄時間は、洗浄プラズマを生成することでＲＦコイルが励起された、すなわち活性化された時間の長さを決定することにより監視できる。
【００３１】
ドライ洗浄プロセスは、遂行される洗浄プロセス、洗浄プロセスが遂行されるべき時期、および洗浄が遂行されるプロセスチャンバを記述する、２つの専用化データ構造上で動作するシーケンサータスクモジュール２００により管理される。第１データ構造は、ドライ洗浄データ構造と呼ばれ、プロセスの全てのオプションに対する入力フィールドを有する洗浄プロセスのための一般的データ構造である。それは、ドライ洗浄プロセスを特定のプロセスレシピプログラムと、そのリンクのために選定されたオプションとへリンクする重要な機能を果たす。ドライ洗浄データ構造によりリンクされる洗浄プロセスは、第２データ構造、ドライ洗浄シーケンスプログラム（ＤＳＣＰ）により提供される。ＤＳＣＰは、洗浄工程がプロセスレシピプログラムの化学的プロセス工程に対応するよう編成される、洗浄レシピプログラム（ＣＲＰ）（すなわち、洗浄レシピ工程）のシーケンスである。各プロセスレシピプログラムに対する関連セットのこれらデータ構造は、マルチチャンバシステムが真空下に留まり、洗浄されないチャンバでウェハを処理し続ける間に、自動洗浄プロセスを提供することに使用できる。チャンバに対する洗浄プロセスは、このように、製造プロセスのそれと類似してスケジューリングされる。
【００３２】
ドライ洗浄データ（ＤＣＤ）構造２１０（第１データ構造）を、構造の好ましい実施の形態の図式表示である図３を参照してより充分に以下説明する。（ＤＣＤ）構造２１０は、洗浄プロセスを先導する初期のパラメータをロードされた数多くのデータフィールド（洗浄パラメータ）と、ドライ洗浄プロセス中に使用される中間パラメータの格納のための空のデータフィールドとを含む。ＤＣＤ構造２１０の第１フィールドは、関連するプロセスチャンバとプロセスレシピとで使用される、定期的またはロット毎であることができる洗浄プロセスのタイプを識別する。定期的えある場合、洗浄は、処理されたウェハ数、またはプロセスチャンバの積算ＲＦ通電時間に基づくことができる。次のフィールドは、システム制御画面またはＤＣＳＰファイルのどちらかからのＤＣＤ構造２１０のドライ洗浄データ（ＤＣＤ）のソースを示す。
【００３３】
次の２つのフィールドは、シーケンサータスクモジュール２００が、洗浄プロセス中に、チャンバに対するドライ洗浄シーケンスでの現在工程の番号を格納し、それを、次のフィールドに格納された洗浄プロセスでの全工程数と比較することを可能にするためのものである。この構造の第５フィールドは、使用中のフラグが設定されているので、ＤＣＤ構造２１０が現在シーケンサータスクモジュールにより実行されていることをシーケンサータスクモジュール２００に警告するためのものである。
【００３４】
引き続き、３つのフィールドは、この特定の洗浄プロセスを呼出すためのパラメータすなわち条件（チャンバ操作パラメータ）のために予約されている。第１のフィールドは、洗浄がウェハのロットに基づき遂行されることになる条件のためであり、洗浄プロセスを起動するであろう最小ロットサイズである。次の２つのフィールドは、洗浄プロセスが、定期的基準で、すなわちウェハ計数によりまたはＲＦ積算通電時間により出現することになる起動条件のためであり、洗浄間の間隔である。
【００３５】
３つのチャンバ操作パラメータが上で説明されたが、他のチャンバ操作パラメータ、例えば、チャンバが先回の洗浄から操作された持続時間（経過時間）、チャンバでの汚染の検出、チャンバ内で処理された化学薬品のタイプ等が、洗浄プロセスを起動するために使用できると理解されるべきである。チャンバ洗浄は、チャンバで採用されるプロセスにより指示されることが多いので、チャンバ操作パラメータは、一般に、基板処理システムにより遂行されるプロセスに基づく。
【００３６】
中間格納場所が、次に、ＲＦ通電時間を積算するために提供され、それにより、それは洗浄プロセスに対して測定できる。次の２つのフィールドは、それぞれドライ洗浄シーケンスプログラムファイル、および関連するプロセスレシピプログラムファイル（へのポインタ）の名前を含み、それによって、２つをリンクする。最後のフィールドは、中間格納場所のＤＣＤ構造２１０が、洗浄レシピプログラムのひとつの工程のためにＲＦ通電時間を積算することを許容する。
【００３７】
ドライ洗浄シーケンスプログラム（ＤＣＳＰ）ファイル構造を、図４に関して、より充分に以下説明する。ＤＣＳＰファイルは、ヘッダー２１１で始まり、それはプログラムを識別し、接頭辞「ＤＳＥＱ」を含む。ヘッダー２１１に続くのが、種々の洗浄工程２１２、２１３、と２１４であり、それは１〜１３工程を取ることができる。工程の最大数は、慣習的には図示した方法の場合の数であり、洗浄シーケンスにとって普通に必要とされるよりも実質的に多い工程である。しかし、必要な場合は、もっと多くの工程が追加できる。工程２１２、２１３、と２１４の各々は、プロセスレシピプログラムと並行してレシピエディタに作成された、洗浄レシピプログラム（へのポインタ）の名前である。従って、ＤＣＳＰファイルは、洗浄プロセスを指図するために便利な効率的な方法であり、プロセスレシピの洗浄ニーズに整合するであろうＤＳＣＰファイルを作成することに柔軟な様式でアセンブルされることができる。洗浄プロセスがチャンバに対して発動された後に、シーケンサータスクモジュール２００は、ＤＳＣＰファイルの洗浄レシピプログラム工程を開始して、次々に正確なシーケンスでファイルの終りまで実行するであろう。
【００３８】
各洗浄レシピプログラムすなわち工程は、図６に示すデータ構造（第３データ構造）を有する。洗浄レシピ構造すなわちファイルは、ヘッダー２２２で始まり、それは、プログラムを識別し、洗浄ウェハがプログラムで使用されねばならないか否かを示し、説明用に１から２０であることができる数多くのレシピ工程（２２４、２２６）に続く。各レシピ工程は、実際には、チャンバタスクモジュール２０６に、加熱素子またはＲＦ電力を通電または切断させる、扉を開放または閉鎖させる、またはひとつ以上の洗浄ガスを送入または排気させるためのコマンドである。洗浄プロセス工程は、また、シーケンサータスクモジュール２００へ工程を終了する仕方を示す２つの種類、つまり「ＲＦ積算％」または「済みまで (until done)」のひとつであることができる。「済みまで」工程は、一般に時間を計る必要のないコマンドのためである一方、「ＲＦ積算％」工程は、特定の時期に起るよう時間を計測され、すなわち事実上持続時間的であってタイマーを必要とする。特に、プラズマを必要とする洗浄プロセス工程に対して、ＲＦ積算％タイプの工程終了識別子が使用される。
【００３９】
各プロセスレシピプログラムは、図５に示すものと類似の構造を有する。プロセスレシピファイルは、ヘッダーで始まり、それは、関連するＤＣＤを含み、説明の目的のために１から２０であり得る数多くのレシピ工程（２１８、２２２）に続く。各レシピ工程は、実際には、チャンバタスクモジュール２０６に、ＲＦ電力を通電または切断させる、扉を開放または閉鎖させる、ウェハをひとつのチャンバから他へ移動させる、またはひとつ以上のプロセスガスを送入または排気させるためのコマンドである。この特定のウェハプロセスに対する自動洗浄プロセスを発動もするヘッダーは、「定期的」または「ロット毎」であることができるドライ洗浄タイプを示すフィールド、および、発動される特定の洗浄プロセスを示す、またはこのプロセスに関連する、ＤＣＳＰファイルを含むフィールドを含む。ヘッダーの残部は、最小ロットサイズ、ウェハ計数、ＲＦ起動継続時間を含むプロセスパラメータで構成される。
【００４０】
図７〜１２に関して、より充分に説明するように、ドライ洗浄データ構造と洗浄プロセスは、画面タスクモジュール２０２の対話的プログラムの幾つかを使用することによりオペレータによりプログラムされ制御される。
【００４１】
図７での制御システム画面表示プログラム２３０が、オペレータにより画面タスクモジュール２２８のタスクとして呼出される。制御画面表示は、オペレータが、システムデータを示すコントローラ７０（図１）のモニタ上の対話的画面を観察することによりプロセスの制御変数を決定することを可能にし、オペレータが、ドライ洗浄データ構造２３２上のそのデータを、必要な場合、変更することを可能にする。図８ａを以下参照して、自動プロセスシーケンスとドライ洗浄プロセスを始動するために、オペレータは、行われるプロセスレシピおよびそれに関連するドライ洗浄データ構造を決定しなくてはならない。ブロック２３４で、制御システム画面表示を呼出した後に、プログラムは、最初に、プロセスレシピプログラムヘッダーを読み、ブロック２３６で、ＤＣＤ構造が既に設定されているかどうか判定する。データがプロセスレシピプログラムヘッダーに無い場合、オペレータは、制御システム画面表示の対話的画面内へ、その後、ブロック２３８で、ＤＣＤ構造内へパラメータ（オペレータ入力データ）を入力できる。
【００４２】
図８ｂの工程は、図８ａのブロック２３６を実施し、ここで、ブロック２４０で、プロセスチャンバに対するプロセスレシピプログラムが、メモリからそれを読出すことにより開かれ、それがドライ洗浄データ構造に対して必要なドライ洗浄データをそのヘッダーに持つか否かを判定する。ドライ洗浄シーケンスプログラムファイル名も、チャンバに対するＰＲＰファイルのヘッダーから読出される。ブロック２４２で、ドライ洗浄シーケンスファイル名が、ドライ洗浄シーケンスプログラムファイルへだけ与えられる接頭辞である「ＤＳＥＱ」の接頭辞につき試験される。ヘッダーでのファイル名がドライ洗浄シーケンスプログラムでない場合、プログラムは、更なる処理のために制御システム画面表示へ戻る。工程２４２での質問の回答が肯定である場合、ファイル内のデータは、ドライ洗浄シーケンス用であり、ブロック２４４で、ドライ洗浄データ構造がアセンブルできる。アセンブルは、ドライ洗浄パラメータソースをＤＣＤ構造でのプロセスレシピプログラム、すなわち、「ドライ洗浄パラメータソース＝レシピから (Dryc Parameter Source = From Recipe)」として識別することにより始まる。プロセスレシピファイルのヘッダーでのドライ洗浄データは、次に、ＤＣＤ構造のそれぞれの領域へ転送される。ドライ洗浄データ構造のアセンブルの後に、それは、シーケンサータスクモジュール２００とチャンバタスクモジュール２０４とによる使用のためにメモリに格納される。
【００４３】
代替として、その工程が図８ａのブロック２３８を実施する図８ｃで、制御システム画面表示は、「定期洗浄毎 (Periodic Clean Every)」とラベルされたフィールドを含み、それは、ＤＣＳＰファイル名を含有できる。ドライ洗浄データがプロセスレシピプログラムのヘッダーに見出せない場合、ブロック２４６で、このファイル名は読まれ、検査され、ブロック２４８で、それを「ＤＳＥＱ」の接頭辞につき試験することによりそれがドライ洗浄シーケンスプログラムファイルであるかどうかを判定する。フィールドにあるファイル名がドライ洗浄シーケンスプログラムでない場合、プログラムは、更なる処理のために制御システム画面表示へ戻る。工程２４８での質問への回答が肯定である場合、ファイル内のデータは、ドライ洗浄シーケンス用であり、ブロック２５０で、ドライ洗浄データ構造がアセンブルできる。アセンブルは、ドライ洗浄パラメータのソースを画面入力、すなわち、「ドライ洗浄パラメータソース＝画面から (Dryc Parameter Source = From Screen)」として識別することにより始まる。ＤＣＳＰファイルでのドライ洗浄データは、次に、データ構造の対応する領域へ転送される。ドライ洗浄データ構造のアセンブル後に、それは、シーケンサータスクモジュール２００とチャンバタスクモジュール２０４とによる使用のためにメモリに格納される。
【００４４】
このシーケンスは、ＤＣＳＰを制御するドライ洗浄データ構造に関するデータが、プロセスレシピプログラム、すなわちオペレータ選定である以前の定義されたＤＣＳＰのヘッダー、またはオペレータのいずれかから来ることを可能にするが、それには優先順位を持たせる。プロセスレシピプログラムすなわちＤＣＳＰからの入力は、それらが存在して要求される場合、オペレータの入力に優先する。それらが要求されない場合、または存在しない場合、プログラムは、デフォルトモードとしてドライ洗浄データ構造への洗浄パラメータの手入力を可能にし、それにより、システムが依存して動作するいくらかの仕様が存在することになる。
【００４５】
オフラインのシーケンスエディタプログラム２６４は、通常、図９の画面タスク２６２として、オペレータによりドライ洗浄シーケンスプログラム（ＤＣＳＰ）ファイルを構築するために呼出される。より詳細には、図１０は、画面タスクモジュール２０２に対する対話的テキストエディタのユーザ入力モードを示し、ここで、ユーザは、要求："sequence editor" を打ち込む。ブロック２５２で、プログラムが、呼出され、オペレータに第１洗浄レシピプログラムの名前を尋ねる。ブロック２５４で、ユーザは、ＤＳＣＰファイルが、洗浄レシピプログラムでファイルに関連するプロセスレシピプログラムに整合する正確なシーケンスで構築されるまで、洗浄レシピプログラム（ＣＲＰ）の名前を入力し続ける。このプログラムは、オペレータが、使用される特定のプロセスレシピに対して必要とされる程度の複雑さ、つまり単純さである洗浄工程のシーケンスを構築することを可能にする。洗浄レシピは、システムニーズと、関連するプロセスレシピプログラムとに依存していずれの順序にも配置されることができる。ブロック２５６で試験されるように、ＤＣＳＰファイルが一旦完成すると、ブロック２５８でプログラムは、ＤＳＣＰファイルを、例えば、メモリ２６６に、再呼出中における後の識別のための特別な接頭辞「ＤＳＥＱ」を用いて格納する。ＤＳＣＰファイルがアセンブルされた後、オペレータは、画面タスクモジュール２０２へユーザ入力モードで退出して戻るようプログラムに命令できる。
【００４６】
図１１で、レシピエディタプログラム２７０が、画面タスクモジュール２６８の操作の一部として呼出されることができ、オペレータが、プロセスレシピプログラム（ＰＲＰ）と洗浄レシピプログラム（ＣＲＰ）とをアセンブルすることを可能にし、次いでそれらは、例えばコントローラ７０のメモリ２７２に格納される。これらのＣＲＰは、シーケンスエディタで使用され、ドライ洗浄シーケンスプログラムを生成し、それは、長期間メモリ、例えばシステム１０の記憶装置に格納されることができる。
【００４７】
図１２の工程は、図１１のブロック２７０を実施する。画面タスクモジュール２０２に対する対話的テキストエディタのユーザ入力モードにおいて、ユーザは、要求："recipe editor" を打ち込む。ブロック２７４で、レシピエディタプログラムが呼出され、ブロック２７６で、入力されるレシピは、プロセスレシピ用かまたは洗浄レシピ用かをオペレータに尋ねる。レシピが洗浄レシピであると判定された場合、ブロック２８６で、プログラムは、洗浄レシピモードへ分枝し、洗浄レシピプログラムの第１工程についての情報を要求する。ユーザは、ファイルが、洗浄レシピで、ファイルに関連するプロセスレシピプログラムに整合する正確なシーケンスで構築されるまで、洗浄レシピデータ工程を入力し続ける。このプログラムは、オペレータが、使用される特定のプロセスレシピに対して必要とされる程度の複雑さ、つまり単純さである洗浄レシピ工程のプロセスを構築することを可能にする。洗浄レシピ工程は、システムニーズと、関連するプロセスレシピプログラムとに依存していずれの順序にも配置できる。ブロック２８８で判定されるように、洗浄レシピプログラムファイルが完成した後、ブロック２９０でプログラムは、ファイルをメモリ２９２にＣＲＰファイルとして、ＤＣＳＰファイルとドライ洗浄データ構造とを構築するためにオペレータによる呼出のために、格納する。オペレータは、次に、主力画面タスクモジュール２６８へユーザ入力モードで退出して戻ることができる。
【００４８】
ブロック２７６での判定が、「構築されるレシピはプロセスレシピである」場合、プログラムは、プロセスレシピモードへ分枝し、ブロック２７８で、プロセスレシピプログラムの第１工程についての情報を要求する。オペレータは、ファイルが正確なシーケンスにプロセスレシピ工程で構築されるまで、プロセスレシピデータ工程を入力し続ける。プロセスレシピデータに加えて、オペレータは、ドライ洗浄シーケンスプログラムファイルの名前もヘッダーに入力できる。これは、プロセスレシピプログラムファイルのヘッダーを、ドライ洗浄データ構造に対する洗浄データを伴ってロードすることをプログラムに行なわせるであろう。、ユーザは、洗浄プロセスの場合、ＤＣＳＰファイルデータと共に、チャンバが洗浄プロセス中に特定の工程に費やしたＲＦ通電時間の長さを示す工程データも入力できる。このプログラムは、オペレータが、使用される特定のプロセスに対して必要とされる程度の複雑さつまり単純さであるプロセスレシピ工程のシーケンスを構築することを可能にする。プロセスレシピ工程は、システムニーズに依存していずれの順序にも配置できる。ブロック２８０で試験されるように、プロセスレシピプログラムファイルが完成した後、ブロック２８２でプログラムは、シーケンサータスクモジュール２００による動作中にオペレータまたはシステムによる呼出のために、ファイルをメモリ２８４に格納する。プログラムは、次に、画面タスクモジュールへユーザ入力モードで戻る。
【００４９】
図１３は、シーケンサータスクモジュール２９６によるドライ洗浄プロセスの操作を示す。一般に、シーケンサータスクモジュール２９６は、５０ｍｓ毎の割り込みによりリアルタイム基準で呼出される。（本発明で検討される種々の割り込み期間は、特定の実施法に適応するよう調節できると理解すべきである。）シーケンサ主力プログラムは、シーケンサータスクモジュール２９６のパーティション (partitions) の全てを特定順序で行い、それが終った後に休止状態へ戻る。基本的に、ドライ洗浄プロセスの起動条件が出現したかどうか、すなわち特定チャンバが、設定ロットのウェハ、つまり被処理ウェハ数を処理したか、または、そのチャンバに対する積算ＲＦ通電時間が定期的間隔を超過したか否か、のことごとくの経過を、それは決定する。洗浄プロセスが起動される場合、シーケンサータスクモジュール２９６は、チャンバに対して規定された洗浄プロセスをＤＣＤ構造３０２からの、そしてそのシーケンスを記憶装置２９４からのＤＣＳＰファイルから、プロセスレシピヘッダーを読むことにより獲得する。シーケンサータスクモジュールは、次に、プロセスレシピ工程と類似の様式でチャンバタスクモジュール２９８に命令することによりこれらのタスクをスケジューリングし、チャンバ洗浄を実現化するようそれらを特定の時期に特定のシーケンスで遂行する。遅いタスクモジュール３００は、シーケンサータスクモジュール２９６とチャンバタスクモジュール２９８の両方と、コマンドとＤＣＤ構造３０２とを介して通信し、洗浄に対する呼出を起動するためにチャンバに対するＲＦ通電時間を積算し、一定の洗浄工程へ終了を示すために洗浄プロセス中にＲＦ通電時間を積算する。遅いタスク３００は、定期的に積算ＲＦ通電時間を（同様に他のデータも）ＤＣＤ構造３０２で更新し、ＤＣＤ構造３０４を形成する。その場合、ＤＣＳＰは、必要とされる場合、最新のＤＣＤ構造を利用するであろう。
【００５０】
ドライ洗浄プロセスに対する主力モジュールは、シーケンサ主力プログラムリストからリアルタイムプログラムのひとつとして入力され、図１４ａ〜１４ｅに、より細部にわたり開示される。詳細には、図１４ａで、処理ウェハを前シーケンスし、ウェハオーダーリストを実行した後に、ドライ洗浄プロセスのための主力モジュールは、シーケンサ主力プログラム３０８で入力される。工程３１０と３１２で、ドライ洗浄プロセスのスケジューリング化が、チャンバを使用中か否か判定することにより遂行される。第１チャンバが使用中である場合、次のチャンバが、使用中か否か判定するよう検査される。シーケンサータスクモジュール２００がチャンバに対するスケジューリングされたプロセスタスクを有する場合、それは、洗浄ルーチンが実行されることを可能にしない使用中フラグ設定をチャンバデータ構造に有する。しかし、特定チャンバに対するプロセスレシピ工程が完了した後でルーチンが退出する前に、ルーチンは、チャンバデータ構造でのチャンバの使用中フラグを解除する。そのチャンバはそれ以降、洗浄可能である。
【００５１】
チャンバがウェハプロセスを行っていないという理由だけでは、その特定のチャンバに対して洗浄が開始されることを意味しない。工程３１４、３１６と３１８での数多くの検査すなわち起動が、チャンバを洗浄する時期かどうかを決定するために使用される。そうでない場合、ブロック３２０で、ドライ洗浄主力プログラムは、チャンバデータ構造でのウェハ計数を更新するか、または、ロット終了フラグがドライ洗浄データ構造に設定されるべきか否かを決定するであろう。プログラムは、それが次の５０ｍｓのシーケンサータスクモジュール間隔中に呼出されるまで戻ることになる。従って、不使用中のチャンバはいずれも、５０ｍｓ毎に検査され、洗浄可能であるか否か、そしてスケジューリングされた洗浄が行なわれるべき特定時点にあるか否か判定される。この条件の両方が同時に起る場合、ドライ洗浄プロセスが実行され、洗浄レシピが発動される。
【００５２】
第１検査ルーチン３１４は、チャンバに対するウェハ計数が特定の数（ウェハ間隔）を超えるか否か判定することである。これは、チャンバの絶対的スループットに基づく定期的洗浄を可能にする。第２検査ルーチン３１６は、チャンバに対する積算ＲＦ通電時間による。積算ＲＦ通電時間が特定の限界閾値（ＲＦ間隔）を超える場合、定期的洗浄プロセスがチャンバで行われる。最後に、特定ロットの終了に対する検査が、ブロック３１８で決定され、その条件が見出される場合に、ドライ洗浄プロセスが行われる。これは、チャンバがウェハロットの終了で変更され得る場合に、ウェハプロセスの特定種類に対して洗浄プロセスが発動されることを可能にする。通例、唯一の設定基準が、洗浄を起動するためにＤＣＤ構造で使用されるが、２つ以上がいずれの異なる組合せでも使用できることは明白である。この技法は、特定のチャンバの洗浄をスケジューリングする非常に柔軟な方法を提供する一方で、洗浄プロセスが用いられるであろうチャンバにより処理されたウェハ数、または積算のＲＦ通電時間を含め、特定の絶対的間隔でそれを依然として許容する。
【００５３】
洗浄プロセスの主力プログラムは、図１４ａのブロック３１４を実施する、図１４ｂでのルーチンにより、処理されたウェハ数に基づきドライ洗浄定期的間隔に対する検査を決定する。ブロック３２２で、ルーチンは、対象の特定チャンバのためのドライ洗浄データ構造のウェハ計数間隔を、そのチャンバデータ構造でのそのチャンバに対するウェハ計数に対して比較する。ＤＣＤ構造でのウェハ計数が、チャンバデータ構造でのウェハ計数（処理されたウェハの実際の計数）を超えるおよび／または等しい場合、未だドライ洗浄プロセスを行う時期ではなく、プログラムは、シーケンサータスクモジュール２００でのドライ洗浄主力プログラムへ戻って他の洗浄検査を行う。しかし、そのチャンバに対して、処理された実際のウェハ計数が計数間隔を超える場合、ブロック３２４で肯定回答を見つけて、洗浄プロセスが実行されるよう準備される。
【００５４】
ブロック３２６で、プログラムは、ＤＣＳＰファイルシーケンス工程の数が、現在の工程番号より大きいか否かを判定することにより、遂行される更なる洗浄があるか否かを最初に判定する。ブロック３２８で、否定の回答で決定されるように、更なる洗浄が必要とされない場合、ブロック３３７で、ウェハ計数がリセットされ、プログラムは、シーケンサータスクモジュール２００でのドライ洗浄主力プログラムへ戻り、全ての他チャンバのリアルタイム検査を完了する。
【００５５】
実行される更なるドライ洗浄シーケンスプログラム工程がまだある場合、ブロック３２８での回答は肯定であり、次のブロック３３０は、ＤＣＳＰファイルがロードされているか否か質問する。ＤＣＳＰファイルがロードされている場合、ＤＣＤ洗浄構造２１０での現在工程番号が繰上げられ、次の洗浄レシピファイル名がＤＣＳＰファイルから獲得され、現在メモリにロードされる。ＣＲＰ名は、後に説明するように、シーケンサータスクモジュール２００によりチャンバタスクモジュール２０４へ実行のために回送される。
【００５６】
ＤＣＳＰファイルが未だロードされていない場合、それはこの経路を通る最初の場合であるが、ブロック３３４で、ファイル名が検査され、それが有効か否か（すなわち、接頭辞を文字ＤＳＥＱにつき審査することにより）判定する。ＤＣＳＰファイルが何らかの理由で有効でない場合、プログラムは、ドライ洗浄主力モジュールへ戻る。しかし、有効なＤＣＳＰファイルが見出される場合、ブロック３３６で、ファイルはディスクから読出され、第１洗浄レシピ名が、ＤＣＳＰファイルからそれを読むことにより決められる。洗浄シーケンス現在工程は、ＤＣＤ構造で１に設定され、ＤＣＳＰでロードされたフラグが設定され、この洗浄シーケンスプログラムが今実行されるスケジューリングであることを示す。チャンバデータ構造でのドライ洗浄定期フラグも、シーケンサータスクモジュール２００へチャンバが使用中であることを示すよう、設定される。ブロック３３６と３３８からのプログラム経路は、次に収束され、図１４ｅでのブロック３７６へ制御を転送する。ブロック３３８を通るループは、全てのＤＳＣＰプログラム工程（洗浄レシピファイル）が実行されるまで継続され、退出はブロック３２８を通り取られる。
【００５７】
洗浄プロセスの主力プログラムは、図１４ａのブロック３１６を実施する図１４ｃでのルーチンによりＲＦ積算通電時間に基づきドライ洗浄定期的間隔に対する検査を決定する。ブロック３４０で、ルーチンは、対象の特定のチャンバに対するドライ洗浄データ構造の積算ＲＦ通電時間間隔を、そのチャンバデータ構造でのそのチャンバに対する実際のＲＦ通電時間に対して比較する。ＤＣＤ構造での間隔が、チャンバデータ構造での実際のＲＦ通電時間を超えるおよび／または等しい場合、未だドライ洗浄プロセスを行う時期ではなく、プログラムは、シーケンサータスクモジュール２００でのドライ洗浄主力プログラムへ戻り、他の洗浄検査を行う。しかし、チャンバに対する実際のＲＦ通電時間が積算ＲＦ通電時間間隔を超過する場合、ブロック３４２で、肯定回答を見つけて、洗浄プロセスが行われるよう準備される。
【００５８】
ブロック３４４で、プログラムは、ＤＣＳＰファイルシーケンス工程の数が、現在の工程番号より大きいか否か判定することにより成される更なる洗浄があるか否かを最初に判定する。ブロック３４６で、否定回答から決定されるように、遂行する更なる洗浄がない場合、ブロック３５０で、積算ＲＦ通電時間がリセットされ、プログラムは、シーケンサータスクモジュール２００でのドライ洗浄主力プログラムへ戻り、全ての他チャンバのリアルタイム検査を完了する。
【００５９】
実行される更なるドライ洗浄シーケンスプログラム工程がまだある場合、ブロック３４６での回答は肯定であり、次のブロック３４８は、ＤＣＳＰファイルプログラムがロードされているか否か質問する。ＤＣＳＰファイルがロードされている場合、ブロック３５４で、ＤＣＤ洗浄構造２１０での現在工程番号が繰上げられ、次の洗浄レシピファイル名がＤＣＳＰファイルから獲得され、現在メモリにロードされる。ＣＲＰ名は、後に説明するように、シーケンサータスクモジュール２００によりチャンバタスクモジュール２０４へ実行のために回送される。
【００６０】
ＤＣＳＰファイルが未だロードされていない場合、それはこの経路を通る最初である場合であるが、ブロック３５２で、ファイル名が検査され、接頭辞を文字ＤＳＥＱにつき審査することにより、それが有効か否か判定する。ＤＣＳＰファイルが何らかの理由で有効でない場合、プログラムは、ドライ洗浄主力モジュールへ戻る。しかし、有効なＤＣＳＰファイルが見出される場合、ブロック３５６で、ファイルはディスクから読出され、第１洗浄レシピ名が、ＤＣＳＰファイルからそれを読むことにより決められる。洗浄シーケンス現在工程は、ＤＣＤ構造で１に設定され、ＤＣＳＰでロードされたフラグが設定され、この洗浄シーケンスプログラムが今実行されるスケジューリングであることを示す。チャンバデータ構造でのドライ洗浄定期フラグも、シーケンサータスクモジュール２００へチャンバが使用中であることを示すよう、設定される。ブロック３５４と３５６からのプログラム経路は、次に収束され、図１４ｅでのブロック３７６へ制御を転送する。ブロック３５４を通るループは、全てのＤＳＣＰプログラム工程（洗浄レシピファイル）が実行されるまで継続され、退出はブロック３４６を通じて行なわれる。
【００６１】
洗浄プロセスの主力プログラムは、図１４ａのブロック３１８を実施する図１４ｄでのルーチンによりロットに基づきドライ洗浄に対する検査を決定する。ブロック３５８で、ルーチンは、ウェハロットの終了を示すチャンバデータ構造でのフラグが設定されているか否か判定する。フラグが設定されていない場合、未だドライ洗浄プロセスを行う時期ではなく、プログラムは、シーケンサータスクモジュール２００でのドライ洗浄主力プログラムへ戻り、他の洗浄検査を行う。しかし、フラグが設定されている場合、ブロック３６０で、肯定回答を見つけ、洗浄プロセスが行われるよう準備される。
【００６２】
ブロック３６２で、プログラムは、ＤＣＳＰファイルシーケンス工程の数が、現在の工程番号より大きいか否か判定することにより、遂行される更なる洗浄があるか否かを最初に判定する。ブロック３６４で、否定回答により決定されるように、遂行する更なる洗浄がない場合、ブロック３６８で、ロットフラグがリセットされ、プログラムは、シーケンサータスクモジュール２００でのドライ洗浄主力プログラムへ戻り、全ての他チャンバのリアルタイム検査を完了する。
【００６３】
実行される更なるドライ洗浄シーケンスプログラム工程がまだある場合、ブロック３６４での回答は肯定であり、次のブロック３６６は、ＤＣＳＰファイルプログラムがロードされているか尋ねる。ＤＣＳＰファイルがロードされている場合、ブロック３７２で、ＤＣＤ洗浄構造２１０での現在工程番号が繰上げられ、次の洗浄レシピファイル名がＤＣＳＰファイルから獲得され、現在メモリにロードされる。ＣＲＰ名は、後に説明するように、シーケンサータスクモジュール２００によりチャンバタスクモジュール２０４へ実行のために回送される。
【００６４】
ＤＣＳＰファイルが未だロードされていない場合、それはこの経路を通る最初である場合であるが、ブロック３７０で、ファイル名が検査され、接頭辞を文字ＤＳＥＱにつき審査することにより、それが有効か否か判定する。ＤＣＳＰファイルが何かの理由で有効でない場合、プログラムは、ドライ洗浄主力モジュールへ戻る。しかし、有効なＤＣＳＰファイルが見出される場合、ブロック３７４で、ファイルはディスクから読出され、第１洗浄レシピ名が、ＤＣＳＰファイルからそれを読むことにより決定される。洗浄シーケンス現在工程は、ＤＣＤ構造で１に設定され、ＤＣＳＰでロードされたフラグが設定され、この洗浄シーケンスプログラムが今実行されるスケジューリングであることを示す。チャンバデータ構造でのドライ洗浄定期的フラグも、シーケンサータスクモジュール２００へチャンバが使用中であることを示すよう設定される。ブロック３７２と３７４からのプログラム経路は次に収束され、図１４ｅでのブロック３７６へ制御を転送する。ブロック３７２を通るループは、全てのＤＳＣＰプログラム工程（洗浄レシピファイル）が実行されるまで継続され、ブロック３６４を通じて退出する。
【００６５】
図１４ｂ、１４ｃ、と１４ｄのプログラムに引続き、図１４ｅのブロック３７６で、シーケンス工程に対するＣＲＰの洗浄レシピヘッダーが読まれ、検査され、洗浄ウェハが洗浄レシピに対して必要とされるか否か判定される。洗浄ウェハが必要とされない場合、ブロック３８２で、チャンバタスクモジュール２０４は、洗浄レシピを開始するようコマンドを送られる。ブロック３７８で、試験されるように、洗浄ウェハが必要とされる場合、ブロック３８０で、洗浄ウェハが選定され、洗浄ウェハをロードロックからローディングするようコマンドが、バッファチャンバタスクモジュール２０８へ送られ、ウェハをロードロックから洗浄されようとしているチャンバへ移動する。ウェハ移動コマンドが発行された後に、チャンバタスクモジュール２０４は、以前のとおり洗浄レシピを開始するよう命令される。
【００６６】
洗浄プロセスに関するチャンバタスクモジュール２９８の機能を、図１５で、より充分に説明する。チャンバタスクモジュール２９８は、１０ｍｓ周期基準で割り込みにより呼出される別のリアルタイムモジュールである。チャンバタスクモジュールは、その主力プログラム３８４で識別される他のモジュールからのメッセージを受取る。チャンバモジュールが、洗浄レシピ工程を行うコマンドを受取る場合、それは、対象のプロセスチャンバに対する対応するＤＣＳＰファイル内の全てのレシピ工程３８３を完了するであろう洗浄レシピルーチンをブロック３８６で行うよう呼出すであろう。ブロック３９０で、最初の決定は、レシピ工程が洗浄レシピであるか否か、および、その工程の工程終了条件は全時間のパーセントとしてのＲＦ積算時間（すなわち、ＲＦ積算パーセント）であるか否かである。そうでない場合、プログラムは、ブロック３９４で、直ちにレシピ工程に実施に進み、プロセスチャンバで必要な動作または化学薬品を作成する。レシピ工程が開始された後に、ブロック３９６で、工程終了時期フラグが、設定されているか否か判定するようチャンバデータ構造で検査される。ブロック３９８で試験されるように、設定されていない場合、プログラムは、ブロック３９４へ分枝して戻り、工程が完了するまで実行を続けるであろう。工程が完了した場合、ブロック４００で、ルーチンは、これがシーケンスの終了かどうか試験するであろう。終了でない場合、ブロック３９０への分枝が、チャンバに対して次のレシピ工程を実行させるであろう。ＲＦ積算パーセントに基づく工程終了を有するレシピ工程に対して、工程３９０を通る代替の分枝がブロック３９２へ至り、ここで、ＲＦ積算パーセントが、ドライ洗浄データ構造からＲＦ積算パーセントデータを読むことにより演算され、ＲＦ積算パーセントデータをチャンバデータ構造の終了時間データと比較する。それらが等しい場合、工程終了フラグが、チャンバデータ構造に設定される。ブロック４００で試験されるように、全てのレシピ工程が特定のチャンバに対して行われた後に、プログラムは、それが呼出されたモジュールまたはサブモジュールへ退出する。
【００６７】
本発明が、好ましい実施の形態に関して説明されたが、この明細は、示された特定の形態に発明の範囲を限定する意図ではなく、対照的に、本発明は、付帯する特許請求の範囲により定義される発明の精神と範囲内に含まれることができるいずれのそのような代替、変更、同等も包含することを意図している。
【図面の簡単な説明】
【図１】  本発明に従い構築されたマルチチャンバ処理システムの平面図である。
【図２】  図１に示すコントローラのプロセス制御プログラムの図式システムフロー図である。
【図３】  図２に示すプロセス制御プログラムにより、使用されるドライ洗浄データ構造を表示した表である。
【図４】  図２に示すプロセス制御プログラムにより使用されるドライ洗浄シーケンスプログラムを表示にした表である。
【図５】  図２に示すプロセス制御プログラムにより使用されるプロセスレシピプログラムを表示した表である。
【図６】  図２に示すプロセス制御プログラムにより使用される洗浄レシピプログラムを表示した表である。
【図７】  図２に示すプロセス制御プログラムにより使用されるドライ洗浄データ構造を形成するための操作のシステムフロー図である。
【図８ａ】  図７に示すプロセスの詳細なフロー図である。
【図８ｂ】  図７に示すプロセスの詳細なフロー図である。
【図８ｃ】  図７に示すプロセスの詳細なフロー図である。
【図９】  図９は、図２に示すプロセス制御プログラムにより使用されるドライ洗浄シーケンスプログラムを形成するための操作のシステムフロー図である。
【図１０】  図９に示すプロセスの詳細なフロー図である。
【図１１】  図２に示すプロセス制御プログラムにより使用されるプロセスレシピプログラムファイルおよび洗浄レシピプログラムファイルを形成するための操作のシステムフロー図である。
【図１２】  図１１に示すプロセスの詳細なフロー図である。
【図１３】  図２に示すプロセス制御プログラムの部分システムフロー図であり、本発明に従い遂行される自動洗浄プロセスで使用されるタスクモジュールとデータ構造を示す。
【図１４ａ】  図１３に示すシーケンスタスクモジュールの自動洗浄プロセス操作の詳細なフロー図である。
【図１４ｂ】  図１３に示すシーケンスタスクモジュールの自動洗浄プロセス操作の詳細なフロー図である。
【図１４ｃ】  図１３に示すシーケンスタスクモジュールの自動洗浄プロセス操作の詳細なフロー図である。
【図１４ｄ】  図１３に示すシーケンスタスクモジュールの自動洗浄プロセス操作の詳細なフロー図である。
【図１４ｅ】  図１３に示すシーケンスタスクモジュールの自動洗浄プロセス操作の詳細なフロー図である。
【図１５】  図１３に示すチャンバタスクモジュールの自動洗浄プロセス操作の詳細なフロー図である。
【符号の説明】
１０：クラスタツール、１２：ハウジング、１３：側壁、４：転送チャンバ、１６、１８、２０、２２：プロセスチャンバ、２４、２６：ロードロックチャンバ、２７、２９：プラスチック製移送カセット、８２：移送機構。
【図１】
0004264196.tif 000002
【図２】
0004264196.tif 000003
【図３】
0004264196.tif 000004
【図４】
0004264196.tif 000005
【図５】
0004264196.tif 000006
【図６】
0004264196.tif 000007
【図７】
0004264196.tif 000008
【図８ａ】
0004264196.tif 000009
【図８ｂ】
0004264196.tif 000010
【図８ｃ】
0004264196.tif 000011
【図９】
0004264196.tif 000012
【図１０】
0004264196.tif 000013
【図１１】
0004264196.tif 000014
【図１２】
0004264196.tif 000015
【図１３】
0004264196.tif 000016
【図１４ａ】
0004264196.tif 000017
【図１４ｂ】
0004264196.tif 000018
【図１４ｃ】
0004264196.tif 000019
【図１４ｄ】
0004264196.tif 000020
【図１４ｅ】
0004264196.tif 000021
【図１５】
0004264196.tif 000022