(57)【要約】  本書では、一体型基板処理システムにおける基板処理シーケンスをスケジューリングするための方法、システム、及び非一過性のコンピュータ可読媒体が開示されている。処理デバイスが、半導体基板のバッチの処理モデルを生成する。この処理モデルは、一体型基板処理システムにおける各処理チャンバ内の各半導体基板について、対応する始動時点を規定する。一又は複数のグラフィック処理ユニット（ＧＰＵ）が、処理モデルに基づいて並列入力を生成し、かつ一又は複数のＧＰＵの複数のコアによってこの並列入力を同時処理して、半導体基板のバッチのための並列出力を生成する。並列入力の各々は、対応する並列出力を生成するために、一又は複数のＧＰＵの複数のコアの個別のコアで処理される。処理デバイスは、並列出力に基づいて、一体型基板処理システムにおいて半導体基板のバッチが処理されるようにする。【選択図】図２
2021522695.tif 000002
【特許請求の範囲】
【請求項１】
一体型基板処理システムにおいて半導体基板の処理シーケンスをスケジューリングする方法であって、
半導体基板のバッチの処理モデルを生成することであって、前記処理モデルは、前記一体型基板処理システムにおける各処理チャンバ内の各半導体基板について、対応する始動時点を規定する、処理モデルを生成することと、
前記処理モデルに基づいて、並列入力を生成することと、
一又は複数のグラフィック処理ユニット（ＧＰＵ）の複数のコアによって、前記並列入力を同時処理して、前記半導体基板のバッチのための並列出力を生成することであって、前記並列入力の各々は、対応する並列出力を生成するために前記一又は複数のＧＰＵの前記複数のコアの個別のコアで処理される、並列出力を生成することと、
前記並列出力に基づいて、前記一体型基板処理システムにおいて前記半導体基板のバッチが処理されるようにすることとを含む、
方法。
【請求項２】
前記一又は複数のＧＰＵの第１ＧＰＵによって、行列を含む前記処理モデルを受信することを更に含み、前記並列入力を生成することが、前記第１ＧＰＵによって、前記行列に基づいて複数の行列を生成することを含み、前記並列出力が、前記半導体基板のバッチを処理するための値のセットに対応する、請求項１に記載の方法。
【請求項３】
前記並列出力を生成することが、
前記複数の行列の各々を解いて、前記複数の行列の各々について複数の値のセットのうちの対応する値のセットを生成することであって、前記複数の値のセットの各々が、前記半導体基板のバッチの処理のための各処理持続時間に対応する、対応する値のセットを生成することと、
前記複数の値のセットのうちの、前記半導体基板のバッチの前記処理のための最小処理持続時間に対応する値のセットを選択することとを含む、請求項２に記載の方法。
【請求項４】
前記並列出力に基づいて、前記一体型基板処理システムのスループットを予測することを更に含む、請求項１に記載の方法。
【請求項５】
前記一体型基板処理システムにおける障害を検出することと、
前記障害に基づいて、更新された処理モデルを生成することと、
前記更新された処理モデルに基づいて、更新された並列入力を生成することと、
前記一又は複数のＧＰＵによって、前記更新された並列入力を処理して、前記半導体基板のバッチのための更新された並列出力を生成することと、
前記更新された並列出力に基づいて、前記基板処理システムにおいて前記半導体基板のバッチが処理されるようにすることとを更に含む、請求項１に記載の方法。
【請求項６】
前記並列出力に基づいて前記半導体基板のバッチが処理されるようにすることが、前記並列出力に基づいて、前記一体型基板処理システム内で前記半導体基板のバッチをルーティングすることを含み、
前記更新された並列出力に基づいて前記半導体基板のバッチが処理されるようにすることが、前記更新された並列出力に基づいて、前記一体型基板処理システム内で一又は複数の半導体基板をルーティングし直すことを含む、請求項５に記載の方法。
【請求項７】
前記一又は複数のＧＰＵが第１ＧＰＵ及び第２ＧＰＵを含み、
前記第１ＧＰＵによって前記処理モデルを受信することであって、前記並列入力を生成することが前記第１ＧＰＵによる、前記処理モデルを受信することと、
前記第１ＧＰＵによって、前記並列入力の第１の数量が前記第１ＧＰＵの第１の複数のコアの第２の数量を超えると判定することと、
前記第１ＧＰＵに前記並列入力の第１サブセットを割り当て、前記第２ＧＰＵに前記並列入力の第２サブセットを割り当てることであって、前記第１ＧＰＵが前記第１サブセットを処理するものであり、前記第２ＧＰＵが前記第２サブセットを処理するものである、サブセットを割り当てることとを更に含む、請求項１に記載の方法。
【請求項８】
前記半導体基板のバッチに基づいて、処理されるべき半導体基板のリストを生成することと、
前記半導体基板のリストに対応する各半導体基板に、対応する処理シーケンスを割り当てることと、
前記半導体基板のリスト内の各半導体基板について、前記対応する処理シーケンスにおける各プロセスに、対応する処理チャンバを割り当てることとを更に含み、前記半導体基板のリスト、前記半導体基板のリストの各半導体基板の前記対応する処理シーケンス、及び、前記半導体基板のリストの各半導体基板の前記対応するシーケンスにおける各プロセスのための前記対応する処理チャンバに基づいて、前記処理モデルが生成される、請求項１に記載の方法。
【請求項９】
前記並列出力に基づいて、前記半導体基板のバッチのためのタイムテーブルを生成することを更に含み、前記並列出力に基づいて前記半導体基板のバッチが処理されるようにすることが、前記タイムテーブルにしたがって前記半導体基板のバッチが処理されるようにすることを含む、請求項１に記載の方法。
【請求項１０】
メモリと、
半導体基板のバッチの処理モデルを生成するための、前記メモリに連結された処理デバイスであって、前記処理モデルが、一体型基板処理システムにおける各処理チャンバ内の各半導体基板について、対応する始動時点を規定する、処理デバイスと、
前記メモリ及び前記処理デバイスに連結されたグラフィック処理ユニット（ＧＰＵ）であって、前記処理モデルに基づいて並列入力を生成し、かつ前記ＧＰＵの複数のコアによって前記並列入力を同時処理して、前記半導体基板のバッチのための並列出力を生成するための、ＧＰＵとを備える、システムであって、前記並列入力の各々は、対応する並列出力を生成するために前記ＧＰＵの前記複数のコアの個別のコアで処理され、前記処理デバイスは、前記並列出力に基づいて、前記一体型基板処理システムにおいて前記半導体基板のバッチが処理されるようにするものである、
システム。
【請求項１１】
前記ＧＰＵは、行列を含む前記処理モデルを受信することを更に行うものであり、前記ＧＰＵは、前記並列入力を生成するために、前記行列に基づいて複数の行列を生成するものであり、前記並列出力が、前記半導体基板のバッチを処理するための値のセットに対応する、請求項１０に記載のシステム。
【請求項１２】
前記ＧＰＵは、前記並列出力を生成するために、
前記複数の行列の各々を解いて、前記複数の行列の各々について複数の値のセットのうちの対応する値のセットを生成することであって、前記複数の値のセットの各々が、前記半導体基板のバッチの処理のための各処理持続時間に対応する、対応する値のセットを生成することと、
前記複数の値のセットのうちの、前記半導体基板のバッチの前記処理のための最小処理持続時間に対応する値のセットを選択することとを行うものである、請求項１１に記載のシステム。
【請求項１３】
前記処理デバイスは、前記並列出力に基づいて前記一体型基板処理システムのスループットを予測することを更に行うものである、請求項１１に記載のシステム。
【請求項１４】
前記処理デバイスは、前記一体型基板処理システムにおける障害を検出し、かつ前記障害に基づいて更新された処理モデルを生成するものであり、
前記ＧＰＵは、前記更新された処理モデルに基づいて更新された並列入力を生成し、かつ前記更新された並列入力を処理して、前記半導体基板のバッチのための更新された並列出力を生成するものであり、前記処理デバイスは、前記更新された並列出力に基づいて、前記基板処理システムにおいて前記半導体基板のバッチが処理されるようにするものである、請求項１０に記載のシステム。
【請求項１５】
前記処理デバイスは、前記並列出力に基づいて前記半導体基板のバッチが処理されるようにするために、前記並列出力に基づいて、前記一体型基板処理システム内で前記半導体基板のバッチをルーティングするものであり、前記処理デバイスは、前記更新された並列出力に基づいて前記半導体基板のバッチが処理されるようにするために、前記更新された並列出力に基づいて、前記一体型基板処理システム内で一又は複数の半導体基板をルーティングし直すものである、請求項１４に記載のシステム。
【請求項１６】
前記処理デバイスは、
前記半導体基板のバッチに基づいて、処理されるべき半導体基板のリストを生成することと、
前記半導体基板のリストに対応する各半導体基板に、対応する処理シーケンスを割り当てることと、
前記半導体基板のリスト内の各半導体基板について、前記対応する処理シーケンスにおける各プロセスに、対応する処理チャンバを割り当てることとを更に行うものであり、前記半導体基板のリスト、前記半導体基板のリストの各半導体基板の前記対応する処理シーケンス、及び、前記半導体基板のリストの各半導体基板の前記対応するシーケンスにおける各プロセスのための前記対応する処理チャンバに基づいて、前記処理モデルが生成される、請求項１０に記載のシステム。
【請求項１７】
命令が記憶された非一過性のコンピュータ可読媒体であって、前記命令は、グラフィック処理ユニット（ＧＰＵ）によって実行されると、前記ＧＰＵに、
半導体基板のバッチの処理モデルを受信することであって、前記処理モデルは、一体型基板処理システムにおける各処理チャンバ内の各半導体基板について、対応する始動時点を規定する、処理モデルを受信することと、
前記処理モデルに基づいて、並列入力を生成することと、
前記ＧＰＵの複数のコアによって、前記並列入力を同時処理して、前記半導体基板のバッチのための並列出力を生成することであって、前記並列入力の各々は、対応する並列出力を生成するために前記ＧＰＵの前記複数のコアの個別のコアで処理される、並列出力を生成することとを実行させ、前記半導体基板のバッチは、前記並列出力に基づいて前記一体型基板処理システムにおいてが処理されるものである、
非一過性のコンピュータ可読媒体。
【請求項１８】
前記処理モデルが行列を含み、前記ＧＰＵは、前記並列入力を生成するために、前記行列に基づいて複数の行列を生成するものであり、前記並列出力が、前記半導体基板のバッチを処理するための値のセットに対応する、請求項１７に記載の非一過性のコンピュータ可読媒体。
【請求項１９】
前記ＧＰＵは、前記並列出力を生成するために、
前記複数の行列の各々を解いて、前記複数の行列の各々について複数の値のセットのうちの対応する値のセットを生成することであって、前記複数の値のセットの各々が、前記半導体基板のバッチの処理のための各処理持続時間に対応する、対応する値のセットを生成することと、
前記複数の値のセットのうちの、前記半導体基板のバッチの前記処理のための最小処理持続時間に対応する値のセットを選択することとを行うものである、請求項１８に記載の非一過性のコンピュータ可読媒体。
【請求項２０】
前記一体型基板処理システムのスループットが、前記並列出力に基づいて予測されるものである、請求項１８に記載の非一過性のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一体型処理システムにおいて基板を移送することに関し、より詳細には、一体型処理システムにおける基板ルーティング及びスループットモデリングを改善するためにグラフィック処理ユニット（ＧＰＵ）を使用することに関する。
【背景技術】
【０００２】
半導体処理では、多数の処理動作を有する特定の処理レシピを使用して、多層フィーチャが半導体基板上に製造される。半導体基板を処理する際には、処理環境（例えば制御された環境）から基板を取り出すことなくプロセスシーケンスを実行するためにいくつかのプロセスチャンバを一体化しているクラスタツールが、一般に使用される。プロセスシーケンスは、一般に、クラスタツールにおける一又は複数の処理チャンバ内で完遂されるデバイス製造動作（すなわちプロセスレシピ動作）のシーケンスと定義される。プロセスシーケンスは、一般に、（例えば、電子デバイス製造のための）様々な基板処理動作を包含しうる。
【０００３】
クラスタツールは、基板を種々の位置に移動させ、ユーザ入力に基づいて基板上にプロセスを実行する上で責任を負う、シーケンサを含みうる。このシーケンサは、基板移動を改善することによりスループットを増大させうるよう構成される。シーケンサにより、クラスタツール内で基板を移送している時、プロセスエンジニア又はユーザによって指定された全ての制約条件が満たされることも確実になる。従来的なアプローチはヒューリスティックである（すなわち、各製品は、クラスタツールが関与しうる最も一般的な統計とトポロジとを扱うカスタムソフトウェアコードで書かれている）。新製品のためにこのコードを書くには時間がかかり、安定化にも長い時間を要する。
【発明の概要】
【０００４】
以下に示しているのは、本開示の態様の一部の基本的な理解を提供するための、簡略化された本開示の概要である。この概要は、本開示の網羅的な要約ではない。これは、本開示の主要点又は重要要素を特定するためのものでも、本開示の特定の実行形態の何らかの範囲又は特許請求の何らかの範囲を画定するためのものでもない。この概要の唯一の目的は、本開示の概念の一部を、後述するより詳細な説明の導入部として、簡略化した形態で提示することである。
【０００５】
本開示の一態様では、方法は、半導体基板のバッチの処理モデルを生成することを含みうる。この処理モデルは、一体型基板処理システムにおける各処理チャンバ内の各半導体基板について、対応する始動時点を規定しうる。この方法は、処理モデルに基づいて、並列入力を生成することを更に含みうる。方法は、一又は複数のＧＰＵの複数のコアによって並列入力を同時処理して、半導体基板のバッチのための並列出力を生成することを更に含みうる。並列入力の各々は、対応する並列出力を生成するために、一又は複数のＧＰＵの複数のコアの個別のコアで処理される。方法は、並列出力に基づいて、一体型基板処理システムにおいて半導体基板のバッチが処理されるようにすることを更に含みうる。
【０００６】
本開示は、添付図面の図において、限定としてではなく例として示されている。
【図面の簡単な説明】
【０００７】
【図１】ある種の実施形態による演算環境を示す。
【図２】ある種の実施形態による、並列出力に基づいて半導体基板が処理されるようにするための方法のフロー図である。
【図３】ある種の実施形態による、タイムテーブルに基づいて半導体基板のスループットを予測するための方法のフロー図である。
【図４】ある種の実施形態による、一又は複数のＧＰＵによって並列入力を処理するための方法のフロー図である。
【図５】ある種の実施形態による演算プラットフォームを示す。
【発明を実施するための形態】
【０００８】
本書では、基板ルーティング及び（例えばクラスタツール内の基板の）スループット予測を対象とする技術について説明している。多くの場合、基板ルーティングのための新たな基板処理シーケンスが受け入れられる（例えば、各基板オーダーで基板処理シーケンスが異なる）。基板処理シーケンスは更新されうる。基板処理シーケンスは、不具合に対応する（例えば、クラスタツールの部分的な不具合に応じて基板をルーティングし直す）ものである。基板処理シーケンスの複雑度は、処理チャンバの数が増加するにつれて増大しうる。基板処理が厳密なタイミング制御を有することにより、基板処理中に発生しうるイベントの各々が勘案されることになりうる。イベントとは、ロボットスケジュール、予防的保守タスク、ダミーウエハ移動、洗浄、複雑なシーケンス、又は同じ基板が同じチャンバに複数回入ること、のうちの一又は複数を含みうる。基板処理では、キュー時間（例えば、基板がプロセス完了後に処理チャンバ内で待機する時間量）の限度がありうる。次の処理チャンバが利用できない場合、又はロボットが別の材料を移動させている場合、キュー時間は増大しうる。
【０００９】
基板ルーティング及び／又は基板の予測スループットのためのソフトウェアコードが書かれることがある。基板ルーティング及び／又は予測スループットのためのソフトウェアコードを書くことは、時間がかかり、安定化にも長時間を要し、かつ、発生しうるイベント及び不具合が勘案されない（例えば不正確である）可能性がある。
【００１０】
本書で開示されているデバイス、システム、及び方法は、基板ルーティング及びスループットモデリングのための一又は複数のＧＰＵの使用を提供するものである。（例えば複雑な順序付け要件を伴う）基板ルーティング、及びスループットは、処理モデルを使用してモデル化されうる。この処理モデルでは、イベント、不具合、キュー時間限度などのうちの一又は複数が勘案されうる。処理モデルに基づいて並列入力が生成されてよく、一又は複数のＧＰＵのコアが並列入力を同時処理して、並列出力を生成しうる。並列出力は、処理持続時間を最小化するための値（例えば、別々の処理チャンバにおける別々のプロセスの始動時点など）を示しうる。基板は処理され、基板スループットは並列出力に基づいて予測されうる。障害の検出に応じて、この障害に基づいて更新された処理モデルが生成され、更新された並列入力が生成されてよく、更新された並列入力は、基板をルーティングし直すため又はスループットを再予測するための更新された並列出力を生成するために、一又は複数のＧＰＵのコアによって処理されうる。
【００１１】
基板ルーティング及びスループットモデリングのために一又は複数のＧＰＵを使用することで、技術的利点が提供される。これらの技術的利点は、処理モデルを生成し、この処理モデルを短時間で（例えば、リアルタイムで又は数秒以内で）解くことによって、新たな処理シーケンスに対する対処法（例えば、新たな基板順序や処理シーケンスの更新など）を見いだすことを含む。技術的利点は、障害を検出すること、この障害に基づいて処理モデルを更新すること、及び更新された処理モデルを短時間で解くことによって、不具合に対応することも含む。技術的利点は、キュー時間の限度に合致した基板処理のためのタイムテーブルを生成すること、及び不具合に応じてこのタイムテーブルを更新することも含む。
【００１２】
本開示の態様は、エネルギー消費、帯域幅、処理持続時間などの大幅削減という技術的利点をもたらす。本開示の態様は、基板処理中の待機時間を減少させ、これにより、全体的なエネルギー消費を削減する。処理モデルを生成し、クライアントデバイスの一又は複数のＧＰＵを使用してこの処理モデルを解き、解かれた処理モデルに基づいてタイムテーブルを生成し、かつこのタイムテーブルを送信するクライアントデバイスは、処理モデル、この処理モデルに基づく並列入力、又は解かれた処理モデル、のうちの一又は複数を、ネットワークを介して別の構成要素に送信するクライアントデバイスよりも、狭い帯域幅を使用する。
【００１３】
図１は、ある種の実施形態による演算環境１５０を示す。演算環境１５０は、コントローラ１６０と、クライアントデバイス１７０とを含む。クライアントデバイス１７０は、一又は複数のＧＰＵ１８０を含みうる。各ＧＰＵ１８０は、並列入力を同時処理して並列出力を生成しうる、複数のコア（例えば数百のコア）を含みうる。コントローラ１６０は、ネットワーク１９０を介してクライアントデバイス１７０と通信する。演算環境１５０は、クラスタツール１００を含みうる。クラスタツール１００は、基板処理に使用されうる。本書に記載の方法は、プロセスシーケンスを実施するよう構成された別のツールと共に使用されることもある。一例では、図１のクラスタツール１００は、カリフォルニア州Ｓａｎｔａ  ＣｌａｒａのＡｐｐｌｉｅｄ  Ｍａｔｅｒｉａｌｓ，Ｉｎｃ．から市販されているＥｎｄｕｒａ（登録商標）クラスタツールでありうる。
【００１４】
クライアントデバイス１７０は、種々の段階で基板が入る実現可能な処理チャンバと、各処理チャンバ内で実行される対応プロセスとを記述するシーケンスレシピを、（例えばユーザ入力を介して）受信しうる。クライアントデバイス１７０は、処理モデルを生成すること、この処理モデルに基づいて並列入力を生成すること、及び一又は複数のＧＰＵ１８０のコアによって並列入力を同時処理して並列出力を生成することが、可能である。クライアントデバイス１７０は、並列出力に基づいてクラスタツール１００内で処理される基板のバッチの、プロセススケジュール（例えば、基板が比較的短い持続時間で処理されうるような基板移動のスケジュール）を生成しうる。例えば、クライアントデバイス１７０は、クラスタツール１００の数理モデルを作成し、次いで、クラスタツール１００の既定の制約条件を満たしつつ、クラスタツール１００内で基板を移送する方式を改善するための対処法を提供するよう、このモデルを最適化する。
【００１５】
一部の実施形態では、クライアントデバイスは（例えば、クライアントツール１００に連結されていなくとも）、タイムテーブルに基づいてクラスタツール１００のスループットを予測しうる。一部の実施形態では、クライアントデバイス１７０は、基板処理スケジュール（例えばタイムテーブル）及び命令を、コントローラ１６０に伝送しうる。コントローラ１６０は、これらの基板処理スケジュール及び命令に基づいて、半導体基板のバッチがクラスタツール１００によって処理されるようにしうる。シーケンスレシピの更新やクラスタツール１００内の不具合などに応じて、クライアントデバイス１７０は、更新された処理スケジュール及び命令を生成しうる。
【００１６】
クラスタツール１００は、真空気密処理プラットフォーム１０１と、ファクトリインターフェース１０２とを含む。プラットフォーム１０１は、真空基板移送チャンバ１０３、１０４に連結されている、複数の処理チャンバ１１０、１０８、１１４、１１２、１１８、１１６及び少なくとも１つのロードロックチャンバ１２０を備える。ファクトリインターフェース１０２は、ロードロックチャンバ１２０によって移送チャンバ１０４に連結されている。
【００１７】
一実施形態では、ファクトリインターフェース１０２は、少なくとも１つのドッキングステーションと、少なくとも１つの基板移送ロボット１３８と、少なくとも１つの基板整列器１４０とを備える。ドッキングステーションは、一又は複数の前方開口型統一ポッド１２８（ＦＯＵＰ）を受容するよう構成される。図１の実施形態では、２つのＦＯＵＰ１２８Ａ、１２８Ｂが図示されている。基板移送ロボット１３８は、ファクトリインターフェース１０２からロードロックチャンバ１２０に基板を移送するよう構成される。
【００１８】
ロードロックチャンバ１２０は、ファクトリインターフェース１０２に連結された第１ポートと、第１移送チャンバ１０４に連結された第２ポートとを有する。ロードロックチャンバ１２０は、移送チャンバ１０４の真空環境とファクトリインターフェース１０２の実質的周囲環境（例えば大気環境）との間の基板の通行を容易にするために、必要に応じて、チャンバ１２０をポンプダウンし、通気する、圧力制御システムに連結されている。
【００１９】
第１移送チャンバ１０４と第２移送チャンバ１０３はそれぞれ、内部に配置された第１ロボット１０７と第２ロボット１０５を有する。ロボット１０５と１０７の間での基板の移送を容易にするために、２つの基板移送プラットフォーム１０６Ａ、１０６Ｂが、移送チャンバ１０４内に配置される。プラットフォーム１０６Ａ、１０６Ｂは、移送チャンバ１０３、１０４に通じているか、又は、移送チャンバ１０３、１０４の各々内に異なる動作圧力を維持することを可能にするよう、移送チャンバ１０３、１０４から選択的に隔離されて（すなわち密封されて）いるかの、いずれかでありうる。
【００２０】
第１移送チャンバ１０４内に配置されたロボット１０７は、ロードロックチャンバ１２０と、処理チャンバ１１６、１１８と、基板移送プラットフォーム１０６Ａ、１０６Ｂとの間で、基板を移送することが可能である。第２移送チャンバ１０３内に配置されたロボット１０５は、基板移送プラットフォーム１０６Ａ、１０６Ｂと処理チャンバ１１２、１１４、１１０、１０８との間で、基板を移送することが可能である。
【００２１】
クライアントデバイス１７０は、基板のリストと、このリストの各基板に対応する処理シーケンスと、リスト内の各基板に対応するシーケンスにおける各プロセスに対応する処理チャンバ（例えば処理チャンバ１１２、１１４、１１０、１０８）とに基づいて、スケジュール（例えばタイムテーブル）を生成しうる。
【００２２】
図２〜図４は、ある種の実施形態による、（例えば基板ルーティング及び／又はスループット予測のために、）一又は複数のＧＰＵを使用して、一又は複数のＧＰＵによって並列入力を処理する方法２００、３００、及び４００のフロー図である。方法２００、３００、及び４００は、ハードウェア（例えば回路、専用ロジック、プログラマブルロジック、マイクロコードなど）、ソフトウェア（処理デバイス、一又は複数のＧＰＵ、汎用コンピュータシステム、又は専用マシンで実行される命令など）、ファームウェア、マイクロコード、又はこれらの組合せを含みうる、処理ロジックによって実施されうる。一実施形態では、方法２００、３００、及び４００は、部分的にクライアントデバイス１７０によって実施されうる。一部の実施形態では、非一過性の記憶媒体が命令を記憶し、この命令は、クライアントデバイス１７０（例えば、クライアントデバイス１７０の処理デバイスと一又は複数のＧＰＵとの少なくとも一方）によって実行されると、クライアントデバイス１７０（例えば、処理デバイスと一又は複数のＧＰＵとの少なくとも一方）に方法２００、３００、及び４００を実施させる。
【００２３】
説明をシンプルにするために、方法２００、３００、及び４００は、一連の動作として図示され、記述されている。しかし、本開示に従った複数の動作は、様々な順序でかつ／又は同時に行われ、本書で提示も説明もされていない別の動作と共に行われうる。更に、開示されている主題に従って方法２００、３００、及び４００を実装するために、図示している動作の全てが実施されないこともある。更に、当業者には、方法２００、３００、及び４００が、状態図を通じて一連の相互関連状態として、又はイベントとして、代替的に表わされうることが理解され、認識されよう。
【００２４】
図２は、ある種の実施形態による、並列出力に基づいて半導体基板が処理されるようにするための方法２００のフロー図である。
【００２５】
図２を参照するに、ブロック２０２において、クライアントデバイス１７０は、（例えばクライアントデバイス１７０の処理デバイスによって）半導体基板のバッチの処理モデルを生成する。
【００２６】
処理モデルを生成するために、クライアントデバイス１７０は、基板のバッチ内の各基板のシーケンスを定義しうる。一実施形態では、クライアントデバイス１７０は、ユーザから各基板のシーケンスを受信する。例えば、ユーザは、進入、堆積、アニール、エッチング、アニール、堆積、退出という、処理シーケンスを定義しうる。数学的には、基板の第１バッチは｛Ｗｉ｝と定義されてよく、ここでｉは１〜ｎの範囲にわたる。一部の実施形態では、各基板Ｗｉは、同じ動作シーケンスを経ることがある。シーケンスにおける動作は、数学的には、｛ｓｉ｝と表わされてよく、ここでｉは１〜ｎの範囲にわたる。ゆえに、各基板Ｗｉは、クライアントデバイス１７０によって定義されたシーケンスにおける各動作ｓｉを経ることが可能である。
【００２７】
処理モデルを生成するために、クライアントデバイス１７０は、処理シーケンスにおける各動作につき、各基板に処理チャンバを割り当てうる。例えば、図１を参照するに、基板のバッチ内の各基板のプロセスシーケンスを支援するために、チャンバ１０８、１１０、１１２、１１４、１１６、及び１１８から適したチャンバが選択されうる。一具体例では、チャンバ１１６、１１８は化学気相堆積（ＣＶＤ）チャンバであってよく、チャンバ１０８、１１４は分離プラズマ窒化（ＤＰＮ）チャンバであってよく、チャンバ１１０、１１２は急速熱プロセス（ＲＴＰ）チャンバでありうる。一又は複数の冷却チャンバが、基板移送プラットフォーム１０６Ａ、１０６Ｂの上方に配置されることもある。したがって、クラスタツール１００内の構成が決定されると、クライアントデバイス１７０は、処理シーケンスにおける各プロセス動作及び動作間の移行に対して、チャンバ、ロードロック、及びロボットを割り当てうる。
【００２８】
クライアントデバイス１７０は、処理チャンバの割り当てに基づいて処理モデルを生成しうる。一般に、各基板Ｗｘは、時点Ｔｘ．に動き出す。各シーケンス動作ｓｉのプロセス持続時間はＤｓと定義され、ここでｓは、シーケンスの動作番号である。例えばＤ３は、シーケンス動作ｓ３．のプロセス時間となる。一般に、基板は、プロセスチャンバ内でのプロセスが完了した後に、そのプロセスチャンバ内で待機することがある。この待機時間はＱｘｓと定義され、ここで、ｘは基板番号であり、ｓはシーケンス動作番号である。例えばＱ２１は、シーケンス動作ｓ１における基板Ｗ２の待機時間と解釈される。前述の定義を踏まえると、基板Ｗ１は、Ｔｘ＋Ｄ１＋Ｑ１１と等しい時点において動作ｓ１を開始する。概括的には、基板Ｗ１は、いかなる動作ｓｉも、
2021522695.tif 000003
と等しい時点において開始することになる。
【００２９】
ブロック２０２は、クラスタツール１００内の各処理チャンバについて、クライアントデバイス１７０がシーケンス制約条件を定義することを更に含みうる。このシーケンス制約条件は、基板のバッチ内の全ての基板を処理するのにかかる時間を減少させるか、又は最終的には最小化するという目的に役立つ。このことは、コントローラ１６０が、可能な限り迅速に基板をクラスタツール１００内に送り、基板をクラスタツール１００から取り出すということを意味しうる。このために、クライアントデバイス１７０は、プロセスモデルの生成に線形最適化の原理を活用する。
【００３０】
線形最適化とは、数理モデルであって、その要件が線形関係によって表わされる数理モデル（例えば行列）において、「最良の（ｂｅｓｔ）」結果（例えば最短プロセス時間）を達成する方法である。数学的には、これは次のように表わされうる。
最小化：
2021522695.tif 000004
ただし、以下を条件とする：
Ａ１１Ｘ１＋Ａ１２Ｘ２＋Ａ１３Ｘ３＋．．．≦Ｂ１
Ａ２１Ｘ１＋Ａ２２Ｘ２＋Ａ２３Ｘ３＋．．．≦Ｂ２
…
Ａｍ１Ｘ１＋Ａｍ２Ｘ２＋Ａｍ３Ｘ３＋．．．≦Ｂｍ
ここでＸｉは変数であり、
2021522695.tif 000005
である。
【００３１】
この原理を上記に適用することで、クライアントデバイス１７０は、次のような最小化を行い、
2021522695.tif 000006
ここで、Ａｉ、Ｂｊは、始動時点変数Ｔｉと待機時間Ｑｊｋにそれぞれ適用されうる重みである。例えば、これらの重みは、半導体製造プロセスの追加フィーチャを対象としうる。一実施形態では、重みは、処理チャンバ内で基板の処理が終了した後に洗浄プロセスが実行されることに応じて調整されうる。別の実施形態では、重みは、クラスタツール１００全体にわたる「ダミー（ｄｕｍｍｙ）」基板の移動に応じて調整されうる。別の実施形態では、重みは、ロボットが単一ブレードロボットであるか、それともデュアルブレードロボットであるかに応じて調整されうる。別の実施形態では、重みは、バッチ処理チャンバである処理チャンバ（すなわち、この処理チャンバは、２つ以上の基板を一度に処理することが可能である）に応じて調整されうる。更に別の実施形態では、重みは、ある特定の処理チャンバに基板が再度入ることが必要な基板処理シーケンスに応じて、調整されうる。
【００３２】
一般に、所与の基板は先行基板の処理が完了するまで所与の処理チャンバに入ることができないという、制約条件が定義されうる。数学的には、シーケンス動作ｓｓにおいて同じ処理チャンバを使用する、２つの基板Ｗｘ、Ｗｙ、があると仮定される。Ｗｘは、Ｗｙ．よりも前にこのチャンバに到達する。したがって、Ｗｙの始動時点は、Ｗｘの始動時点＋動作ｓｓの持続時間＋動作ｓｓの後のＷｘの待機時間よりも後になる。始動時点の定義を使用すると、この制約条件は次のように表わされうる。
2021522695.tif 000007
【００３３】
この制約条件は、（例えば、基板ルーティングに関連する一又は複数の問題を解決するよう）基板ルーティングを最適化するために解かれることがある。例えば、
2021522695.tif 000008
は、
2021522695.tif 000009
を条件として、
このシーケンス動作で使用される各チャンバについて、かつ、Ｗｘ、Ｗｙがシーケンス動作ｓｓにおいて連続して同じチャンバを使用する場合の連続する基板の全ての対（すなわち各（ｘ，ｙ））について、最小化されることが可能である。別の例では、この制約条件は、ロボットの動きを最小化するために解かれることもある。別の例では、この制約条件は、チャンバのアイドル時間を最小化するために解かれることもある。別の例では、この制約条件は、チャンバの障害、及び、システムが全ての基板を連続して処理することができなくなることに応じて、生産を停止することなく残りの基板が処理されうるようにＦＯＵＰに送り返されうる基板の最小数を決定するために、解かれることもある。一部の実施形態では、この制約条件は、基板のスループットを予測するために解かれることもある。
【００３４】
クライアントデバイス１７０は、全てのシーケンス制約条件に基づいて、バッチ内の全ての基板の処理モデルを同時に生成しうる。一部の実施形態では、クライアントデバイス１７０は、各基板に同じ処理シーケンスが割り当てられることに応じて、処理モデルを一度に生成しうる。
【００３５】
ブロック２０４において、クライアントデバイス１７０は、処理モデルに基づいて、（例えば、クライアントデバイス１７０の一又は複数のＧＰＵ１８０の第１ＧＰＵ１８０Ａによって）並列入力を生成する。例えば、処理モデルは行列であってよく、並列入力を生成することは、この行列に基づいて複数の行列を生成することを含みうる。
【００３６】
行列の中の一又は複数の値は１つの変数に対応しうる。例えば、一又は複数の値は、基板の数という変数に対応しうる。一部の変数は、対応する値に対する要件を有しうる。例えば、基板の数という変数は、対応する値が整数でなくてはならないという要件を有しうる。クライアントデバイス１７０は、対応する変数の要件を満たさない値の全てについて、追加の行列を生成しうる。例えば、クライアントデバイス１７０は、行列内の、整数でなくてはならない変数（例えば基板の数）に対応する非整数値を特定しうる。クライアントデバイス１７０は、非整数値（例えば３．５）をこの非整数値よりも大きい第１の整数（例えば４）で置換することによって、複数の行列うちの第１行列を生成しうる。クライアントデバイス１７０は、非整数値（例えば３．５）をこの非整数値よりも小さい第２の整数（例えば３）で置換することによって、複数の行列のうちの第２行列を生成しうる。クライアントデバイス１７０は、クライアントデバイス１７０のＧＰＵ１８０を介して、並列入力を生成しうる。第１行列及び第２行列は行列のスーパーセットであってよく、このスーパーセットは、非整数値を整数（例えば、第１行列では４、第２行列では３）で置換するという、追加の制限を含む。
【００３７】
ブロック２０６において、クライアントデバイス１７０は、一又は複数のＧＰＵ１８０のコアによって並列入力を同時処理して、半導体基板のバッチのための並列出力を生成する。並列入力の各々（例えば、複数の行列のうちの対応する一行列）は、対応する並列出力を生成するために、一又は複数のＧＰＵ１８０の複数のコアのうちの個別のコアで処理されうる。各コアは、対応する行列を解いて、各行列について、半導体基板のバッチの処理のための対応する値のセットを生成しうる。クライアントデバイス１７０は、半導体基板のバッチの処理の最小処理持続時間に対応する値のセットを、（例えばＧＰＵ１８０を介して）選択しうる。
【００３８】
一部の実施形態では、クライアントデバイス１７０は、並列出力に基づいて、（一体型基板処理システムの、すなわちクラスタツール１００の）スループットを（例えばクライアントデバイス１７０の処理デバイスによって）予測しうる。スループットを予測すること（及び、予測されたスループットが表示されるようにすること）に応じて、クライアントデバイス１７０は、予測されたスループットに基づく処理モデルの更新を（例えばユーザ入力を介して）受信してよく、フローはブロック２０２に戻りうる。フローは、処理モデルの更なる更新を受信しないことに応じて、ブロック２０８に続きうる。
【００３９】
ブロック２０８において、クライアントデバイス１７０は、半導体基板が、並列出力（例えば、最小処理持続時間に対応する選択された値のセット）に基づいて、（例えばクライアントデバイス１７０の処理デバイスによって）処理されるようにする。一部の実施形態では、クライアントデバイスデバイス１７０は、並行出力に基づく基板のタイムテーブル（例えば、各基板の始動時点Ｔｘ及び各処理チャンバにおける基板処理の順序を含むタイムテーブル）を生成する。クライアントデバイス１７０は、オプションで、タイムテーブルをコントローラ１６０に送信しうる。クライアントデバイス１７０とコントローラ１６０とが同じ１つのものである実施形態では、クライアントデバイス１７０がタイムテーブルを送信する必要はない。
【００４０】
ブロック２０８において、クライアントデバイス１７０は、一体型クラスタツール（図１のクラスタツール１００など）内で基板上に電気層を堆積させるためのプロセスシーケンスに従って、半導体基板のバッチが処理されるようにしうる。ブロック２０８は、ブロック２１０〜２２０のうちの一又は複数のブロックを含みうる。ブロック２１０において、クライアントデバイス１７０は、基板がクラスタツール１００内に配置されるようにしうる。
【００４１】
ブロック２１２において、クライアントデバイス１７０は、基板上に誘電体層が堆積されるようにしうる。この誘電体層は、金属酸化物であってよく、かつＡＬＤプロセス、ＭＯＣＶＤプロセス、従来的なＣＶＤプロセス、又はＰＶＤプロセスによって堆積されうる。
【００４２】
ブロック２１４において、クライアントデバイスは、（例えば堆積プロセスの後に）基板が堆積後アニール（ＰＤＡ）プロセスに曝露されるようにしうる。このＰＤＡプロセスは、急速アニール処理チャンバ（カリフォルニア州Ｓａｎｔａ  ＣｌａｒａのＡｐｐｌｉｅｄ  Ｍａｔｅｒｉａｌｓ，Ｉｎｃ．から市販されているＲａｄｉａｎｃｅ（登録商標）ＲＴＰチャンバなど）において実施されうる。
【００４３】
ブロック２１６において、クライアントデバイス１７０は、誘電体材料を高密度化してプラズマ処理層を形成するために、誘電体層が不活性プラズマプロセスに曝露されるようにしうる。不活性プラズマプロセスは、分離プラズマ窒化（ＤＰＮ）チャンバに不活性ガスを流入させることによって実施される、分離不活性ガスプラズマプロセスを含みうる。
【００４４】
ブロック２１８において、クライアントデバイス１７０は、基板上に配置されたプラズマ処理層が熱アニール処理プロセスに曝露されるようにしうる。
【００４５】
ブロック２２０において、クライアントデバイス１７０は、ゲート電極層がアニール処理された誘電体層を覆って堆積されるようにしうる。このゲート電極層は、多結晶Ｓｉ、アモルファスＳｉ、又は、例えばＬＰＣＶＤチャンバを使用して堆積される他の好適な材料でありうる。
【００４６】
図１を再度参照するに、クラスタツール１００はコントローラ１６０と通信しうる。コントローラ１６０は、クラスタツール１００内の基板処理チャンバ１０８、１１０、１１２、１１４、１１６、及び１１８の各々のプロセスパラメータの制御に役立つコントローラでありうる。更に、コントローラ１６０は、クラスタツール１００内で処理される基板の順序付け及びスケジューリングにも役立ちうる。ブロック２０８において、クライアントデバイス１７０は、並列出力に基づいて半導体基板が処理されるようにするために、コントローラ１６０に、クラスタツール１００の処理パラメータを制御させうる。
【００４７】
図３は、ある種の実施形態による、タイムテーブルに基づいて半導体基板のスループットを予測するための方法３００のフロー図である。方法３００は、半導体基板が図１のクラスタツール１００において処理されるようにしうる。他の例では、方法３００は、半導体基板が他のクラスタツールで処理されるようにしうる。一部の実施形態では、全ての基板Ｗｉが同じ動作シーケンスを経るわけではない。
【００４８】
図３を参照するに、ブロック３０２において、クライアントデバイス１７０は、半導体基板のバッチに基づいて、処理されるべき半導体基板のリストを（例えばクライアントデバイス１７０の処理デバイスによって）生成する。例えば、クラスタツール１００の処理チャンバに進入する２つの基板（例えばＷｘ、Ｗｙ）が選択されうる。
【００４９】
ブロック３０４において、クライアントデバイス１７０は、半導体基板のリストに対応する各半導体基板に、対応する処理シーケンスを（例えばクライアントデバイス１７０の処理デバイスによって）割り当てる。クラスタツール１００に進入するよう選択された各基板のシーケンスが定義されうる。一実施形態では、クライアントデバイス１７０は、各基板のシーケンスをユーザから受信する。例えば、ユーザは、進入、堆積、アニール、エッチング、アニール、堆積、退出という、処理シーケンスを定義しうる。シーケンスにおける動作は、数学的には、｛ｓｉ｝と表わされてよく、ここでｉは１〜ｎの範囲にわたる。ゆえに、Ｗｘは動作のセット｛ｓｉ｝を含み、Ｗｙは動作のセット｛ｓｊ｝を含み、｛ｓｉ｝という成分は｛ｓｊ｝という成分と等しくない。
【００５０】
ブロック３０６において、クライアントデバイス１７０は、半導体基板のリスト内の各半導体基板について、対応する処理シーケンス内の各プロセスに、対応する処理チャンバを（例えばクライアントデバイス１７０の処理デバイスによって）割り当てる。例えば、図１を参照するに、ブロック４０２において上記で定義したプロセスシーケンスを支援にするために、チャンバ１０８、１１０、１１２、１１４、１１６、及び１１８から好適なチャンバが選択されうる。一具体例では、チャンバ１１６、１１８は化学気相堆積（ＣＶＤ）チャンバであってよく、チャンバ１０８、１１４は分離プラズマ窒化（ＤＰＮ）チャンバであってよく、チャンバ１１０、１１２は急速熱プロセス（ＲＴＰ）チャンバでありうる。一又は複数の冷却チャンバが、基板移送プラットフォーム１０６Ａ、１０６Ｂの上方に配置されることもある。したがって、クライアントデバイス１７０は、Ｗｘに関してはセット｛ｓｉ｝内の各動作に１つの処理チャンバを割り当て、Ｗｙに関してはセット｛ｓｊ｝内の各動作に１つの処理チャンバを割り当てる。ゆえに、クラスタツール１００内の構成が決定されると、クライアントデバイス１７０は、Ｗｘ、Ｗｙの処理シーケンスにおける各プロセス動作及び動作間の移行に対して、チャンバ、ロードロック、及びロボットを割り当てうる。
【００５１】
ブロック３０８において、クライアントデバイス１７０は、半導体基板（例えば、クラスタツール１００に進入するよう選択された全ての基板）のリスト、各半導体基板に対応する処理シーケンス、及び各半導体基板の各プロセスに対応する処理チャンバ（例えば処理チャンバの割り当て）に基づいて、（例えばクライアントデバイス１７０の処理デバイスによって）処理モデルを生成する。例えば、クライアントデバイス１７０は、基板Ｗｘ、Ｗｙの処理チャンバ割り当てに基づいて、モデルを生成する。一部の実施形態では、ブロック３０８は、クラスタツール１００内の各処理チャンバについて、クライアントデバイス１７０がシーケンス制約条件を定義することを含みうる。このシーケンス制約条件は、基板のバッチ内の全ての基板を処理するのにかかる時間を減少させるか、又は最終的に最小化するという目的に役立ちうる。直感的には、このことは、コントローラ１６０が、可能な限り迅速に基板をクラスタツール１００内に送り、基板をクラスタツール１００から取り出すということを意味しうる。このために、クライアントデバイス１７０は、プロセスモデルの生成に線形最適化の原理を活用する。
【００５２】
例えば、クライアントデバイス１７０は、基板Ｗｘ、Ｗｙがその処理シーケンスにおいて進んで行くクラスタツール１００内の各処理チャンバについて、シーケンス制約条件を生成しうる。クライアントデバイス１７０は、上述した方法に従ってシーケンス制約条件を生成しうる。
【００５３】
一部の実施形態では、基板のバッチ内の各基板のシーケンスは、同じではないことがある。したがって、クライアントデバイス１７０は、２つの基板（すなわちＷｘ、Ｗｙ）から開始すること、及びバッチ内のすべての基板が追加されるまで追加基板（例えばＷｚ）を追加することによって、区分的に処理するためのタイムテーブルを生成しうる。
【００５４】
ブロック３１０において、クライアントデバイス１７０は、基板のバッチ内に解析される基板がまだ残っているかどうかを（例えばクライアントデバイス１７０の処理デバイスによって）判定する。基板のバッチ内に解析される基板が残っている場合、フローはブロック３１２に進む。しかし、ブロック３１０において、クライアントデバイス１７０が、基板のバッチ内に残っている基板はないと判定した場合には、フローはブロック３１４に進む。
【００５５】
ブロック３１２において、クライアントデバイス１７０は、処理されるべき基板のリストに基板（例えばＷｚ）を（例えばクライアントデバイス１７０の処理デバイスによって）追加する（すなわち、クライアントデバイス１７０は処理されるべき基板Ｗｘ、ＷｙにＷｚを追加する）。方法３００は次いで、基板Ｗｘ、Ｗｙ、Ｗｚに関する解析のために、ブロック３０４に戻る。
【００５６】
ブロック３１４において、クライアントデバイス１７０は、処理モデルに基づいて、（例えばクライアントデバイス１７０のＧＰＵ１８０によって）並列入力を生成する。ブロック３１４は、図２のブロック２０４と同様でありうる。
【００５７】
ブロック３１６において、クライアントデバイス１７０は、一又は複数のＧＰＵ１８０のコアによって並列入力を同時処理して、半導体基板のバッチのための並列出力を生成する。ブロック３１６は、図２のブロック２０６と同様でありうる。
【００５８】
ブロック３１８において、クライアントデバイス１７０は、ブロック３１６で生成された並列出力に基づいて、基板のバッチのタイムテーブル（例えばスケジュール）を（例えばクライアントデバイス１７０の処理デバイスによって）生成する。例えば、このタイムテーブルは、各基板の始動時点Ｔｘ、及び各処理チャンバにおける基板処理の順序を含む。
【００５９】
一部の実施形態では、ブロック３２０において、クライアントデバイス１７０は、タイムテーブルに基づいて（例えばクライアントデバイス１７０の処理デバイスによって）スループットを予測する（例えば、スループットモデリングを実施する）。例えば、クライアントデバイス１７０は、ツール（例えば図１のクラスタツール１００）がタイムテーブルに基づいて設定された時間量（例えば１時間）で処理しうる、基板の数を予測しうる。ブロック３２０において、クライアントデバイス１７０は（例えばＧＰＵも）、クラスタツール（例えばクラスタツール１００）に接続されていないことがあるが、スループットを予測するための数理モデルソルバとして使用されうる。一部の実施形態では、クライアントデバイス１７０は、予測スループットを生成し、この予測スループットを別のデバイスに送信する。一部の実施形態では、クライアントデバイス１７０は、予測スループットを生成し、この予測スループットを、クライアントデバイス１７０のグラフィカルユーザインターフェース（ＧＵＩ）を介してユーザに表示する。
【００６０】
ブロック３２２において、クライアントデバイス１７０は、何らかの更新があるかどうかを（例えばクライアントデバイス１７０の処理デバイスによって）判定する。この更新は、クライアントデバイス１７０のＧＵＩを介して、ユーザ入力を通じて受信されうる。更新は、処理モデルの少なくとも１つの制約条件、基板のリスト、少なくとも１つの処理シーケンス、又は少なくとも１つの割り当てられた処理チャンバ、のうちの一又は複数、又はこれらのうちの新たに受信された一又は複数に対する改変でありうる。例えば、予測スループットを表示すること、又は送信（して表示されるように）することに応じて、クライアントデバイス１７０は、（例えば制約条件、リスト、処理シーケンス、処理チャンバ、処理モデルなどに対する）一又は複数の更新を受信して、（例えば予測スループットを変える）予測スループットに対する更新の影響を特定しうる。更新があれば、フローはブロック３２４に進む。しかし、ブロック３２２において、クライアントデバイス１７０が更新はないと判定した場合には、フローは終了する。
【００６１】
ブロック３２４において、クライアントデバイス１７０は、（例えばクライアントデバイス１７０の処理デバイスによって）処理モデルを更新して、（この更新に基づいて）更新された処理モデルを生成する。フローはブロック３１４に続く。ブロック３１４からブロック３２４までのフローは、望ましい予測スループットが達成されるまで継続されうる。
【００６２】
クライアントデバイス１７０は、スループットを予測することを通じて、開発早期段階の新たな機器アーキテクチャがあればそれを評価して、そのスループットがどのようになるかを特定することが可能であり、多くの代替例のうち最良のものが、投資及び更なる開発の対象として選択されうる。既存のツールでは、クライアントデバイス１７０は、スループットを予測して、スループットに対する変化があればその影響を定量化するために、モデリングを実施しうる。この変化は、基板処理動作、ツールトポロジ、又はプロセス制約条件のいずれかにおけるものでありうる。スループットを予測するクライアントデバイス１７０は、顧客に正確なスループットの見積もりを提供しうる。障害又は予期しないイベントが発生した時に実際のツールがどのように反応するかをシミュレートするために、全体を通じて予測を行うクライアントデバイス１７０が使用されうる。かかるシミュレーションの結果は、数分以内に入手可能であるので、試験及び開発における項目（ｉｔｅｍ）が削減されうる。
【００６３】
一部の実施形態では、スループットを予測することに（例えば、処理モデルを更新することにも）応じて、クライアントデバイスは、タイムテーブルに基づいて（例えばクライアントデバイス１７０の処理デバイスによって）半導体基板のバッチが処理されるようにする。例えば、クライアントデバイス１７０は、（例えばクライアントデバイス１７０の処理デバイスによって）コントローラ１６０にタイムテーブルを送信し、このタイムテーブルに基づいて、コントローラ１６０に基板処理を開始させて（例えば、基板処理を開始するようクラスタツール１００を制御させて）よい。クライアントデバイス１７０とコントローラとが同じ１つのものである実施形態では、クライアントデバイス１７０は、タイムテーブルを送信しないことがある。
【００６４】
図４は、ある種の実施形態による、一又は複数のＧＰＵによって並列入力を処理するための方法４００のフロー図である。
【００６５】
図４を参照するに、ブロック４０２において、クライアントデバイス１７０は、（例えばクライアントデバイス１７０の処理デバイスによって）半導体基板のバッチの処理モデルを生成する。ブロック４０２は、図２のブロック２０２又は図３のブロック３０２〜３１２、のうちの一又は複数と同様でありうる。
【００６６】
ブロック４０４において、クライアントデバイス１７０は、第１コアを含む第１ＧＰＵ１８０Ａによって、処理モデルを受信する。クライアントデバイス１７０は、ＧＰＵのクラスタ１８０（例えば２つ以上のＧＰＵ）を含みうる。一部の実施形態では、第１ＧＰＵ１８０Ａは、ＧＰＵのクラスタ１８０のマスタＧＰＵ（例えばマスタノード）である。
【００６７】
ブロック４０６で、クライアントデバイス１７０は、第１ＧＰＵ１８０Ａによって、処理モデルに基づいて並列入力を生成する。ブロック４０６は図２のブロック２０４と同様でありうる。
【００６８】
ブロック４０８において、クライアントデバイス１７０は、第１ＧＰＵ１８０Ａによって、並列入力の第１の量が第１ＧＰＵ１８０Ａの第１コアの第２の量よりも大きいかどうかを判定する。並列入力の第１の量が第１コアの第２の量よりも大きくない（例えば、５００の並列入力という第１の量が７８６の第１コアという第２の量のよりも大きくない）場合、フローはブロック４１０に進む。しかし、ブロック４０８において、クライアントデバイス１７０（例えば第１ＧＰＵ１８０Ａ）が、並列入力の第１の量が第１コアの第２の量よりも大きい（例えば、１０００の並列入力という第１の量が７８６の第１コアという第２の量のよりも大きい）と判定した場合には、フローはブロック４１２に進む。
【００６９】
ブロック４１０において、クライアントデバイス１７０は、第１ＧＰＵ１８０Ａの第１コアによって並列入力を同時処理して、半導体基板のバッチのための並列出力を生成する。ブロック４１０は、図２のブロック２０６と同様でありうる。
【００７０】
ブロック４１２において、クライアントデバイス１７０は、第１ＧＰＵ１８０Ａによって、第１ＧＰＵ１８０Ａの第１コアに並列入力の第１サブセットを割り当て、第２ＧＰＵ１８０Ｂの第２コアに並列入力の第２サブセットを割り当てる。一部の実施形態では、第１ＧＰＵ１８０Ａは、並列入力のほぼ半分を第１ＧＰＵ１８０Ａの第１コアに割り当て、並列入力のほぼ半分を第２ＧＰＵ１８０Ｂの第２コアに割り当てる。一部の実施形態では、第１ＧＰＵ１８０Ａは、並列入力を３つ以上のＧＰＵ１８０に割り当てる。
【００７１】
ブロック４１４において、クライアントデバイス１７０は、第１ＧＰＵ１８０Ａの第１コアによって第１サブセットを処理し、それと同時に第２ＧＰＵ１８０Ｂの第２コアによって第２サブセットを処理して、半導体基板のバッチのための並列出力を生成する。ブロック４１４は、図２のブロック２０６と同様でありうる。
【００７２】
ブロック４１６において、クライアントデバイス１７０は、並列出力に基づいてタイムテーブルを生成する。ブロック４１６は、図３のブロック３１８と同様でありうる。
【００７３】
ブロック４１８において、クライアントデバイス１７０は、オプションで、タイムテーブルに基づいてスループットを予測する。ブロック４１８は、図３のブロック３２０と同様でありうる。（例えば処理モデル、制約条件、処理シーケンス、処理チャンバなどに対する）更新の受信に応じて、処理モデルが更新されてよく、フローはブロック４０２に続きうる。
【００７４】
ブロック４２０において、クライアントデバイス１７０は、タイムテーブルに基づいて半導体基板のバッチが処理されるようにする。ブロック４２０は、図３のブロック３２２又は図２のブロック２０８と同様でありうる。
【００７５】
ブロック４２２において、クライアントデバイス１７０は、（例えば一体型基板処理システム内で）障害が発生したかどうかを（例えばクライアントデバイス１７０の処理デバイスによって）判定する。クライアントデバイス１７０が障害が発生したと判定すると、フローはブロック４０２に進み、ブロック４０２において、クライアントデバイスは、この障害に基づいて更新された処理モデルを生成する。しかし、ブロック４２２において、クライアントデバイス１７０が障害は発生していないと（例えば、基板処理は終了したとも）判定した場合、方法４００は終了しうる。
【００７６】
図５は、ある種の実施形態による演算プラットフォーム５００を示している。演算プラットフォーム５００は、コントローラ５１０（例えばコントローラ１６０）と、クライアントデバイス５５０（例えばクライアントデバイス１７０）とを含む。コントローラ５１０は、処理デバイス５１２、メモリ５１４、ストレージ５１６、及びネットワークインターフェース５１８を含む。一部の実施形態では、コントローラ５１０は、連結された一又は複数の入出力（Ｉ／Ｏ）デバイス５２０を更に含みうる。処理デバイス５１２は、メモリ５１４に記憶されたプログラミング命令（プログラムコード５２２など）を読み出して実行する。単一の処理デバイス、複数の処理デバイス、複数の処理コアを有する単一の処理デバイス、プロセッサ、中央処理デバイス（ＣＰＵ）などを代表する、処理デバイス５１２が含まれる。
【００７７】
ストレージ５１６はディスクドライブストレージでありうる。ストレージ５１６は、単一ユニットとして図示されているが、取り外し可能なストレージデバイス及び／又は不可能なストレージデバイス（例えば取り外し不可能なディスクドライブ、取り外し可能なメモリカード、光ストレージ、ネットワーク接続ストレージ（ＮＡＳ）、又はストレージエリアネットワーク（ＳＡＮ））の組み合わせでありうる。ネットワークインターフェース５１８は、コントローラ５１０がネットワーク５３０（例えばネットワーク１９０）を介して他のコンピュータと（例えばクライアントデバイス５５０などと）通信することを可能にする、任意の種類のネットワーク通信でありうる。
【００７８】
クライアントデバイス５５０は、処理デバイス５５２、メモリ５５４、ストレージ５５６、及びネットワークインターフェース５５８を含む。一部の実施形態では、クライアントデバイス５５０は、連結された一又は複数のＩ／Ｏデバイス５６０を更に含みうる。単一の処理デバイス、複数の処理デバイス、複数の処理コアを有する単一の処理デバイス、プロセッサ、ＣＰＵなどを代表する、処理デバイス５５２が含まれる。クライアントデバイス５５０は、一又は複数のＧＰＵ５８０（例えばＧＰＵ１８０）を更に含みうる。
【００７９】
処理デバイス５５２は、処理モデル生成器５６２、タイムテーブル生成器５６４、及び予測スループット生成器５６５を含みうる。処理モデル生成器５６２は、処理シーケンス内の各動作について各基板に１つの処理チャンバを割り当て、その後、この処理チャンバ割り当てに基づいて処理モデル５７２を生成するよう構成されうる。例えば、処理モデル生成器５６２は、図２〜図４と併せて上述した一又は複数のブロックのプロセスを実行するよう構成されうる。生成された処理モデルはストレージ５５６に記憶されうる。例えば、処理モデル５７２はストレージ５５６内にありうる。タイムテーブル生成器５６４は、並列出力５７４に基づいて処理タイムテーブルを生成するよう構成される。例えば、タイムテーブル生成器５６４は、図３のブロック３１８又は図４のブロック４１６に従って上述のプロセスを実行するよう構成されうる。生成されたタイムテーブルはストレージ５５６に記憶されうる。例えば、タイムテーブル５７６はストレージ５５６内にありうる。予測スループット生成器５６５は、タイムテーブルに基づいてスループットを予測するよう構成される。例えば、予測スループット生成器５６５は、図３のブロック３２０又は図４のブロック４１８に従って上述のプロセスを実行するよう構成されうる。
【００８０】
メモリ５５４はプログラムコード５６６を含む。処理デバイス５５２と一又は複数のＧＰＵ５８０との一方又は両方は、メモリ５５４に記憶されたプログラミング命令（例えばプログラムコード５６６）を読み出して実行しうる。プログラムコード５６６は、（例えば、処理スケジュール、タイムテーブル、並列出力などに基づいて、）基板のバッチが処理されるようにする命令を実行するよう構成されうる。例えば、プログラムコード５６６は、図２〜図４と併せて上述した一又は複数のブロックを含みうる。
【００８１】
一又は複数のＧＰＵ５８０はコア５８６、５８８を含みうる（例えば、ＧＰＵ５８０Ａはコア５８６Ａ〜Ｎを含み、ＧＰＵ５８０Ｎはコア５８８Ａ〜Ｎを含む）。ＧＰＵ５８０のうちの一又は複数は、並列入力生成器５８２、並列出力生成器５８４、又は並列出力セレクタ５９２のうちの一又は複数を含みうる。並列出力生成器５８４はコア５８６又は５８８を含みうる。
【００８２】
一部の実施形態では、ＧＰＵ５８０Ａは、処理モデル５７２を受信し、並列出力５７４を出力する（例えば、ＧＰＵ５８０Ａは並列入力生成器５８２Ａ及び並列出力セレクタ５９２Ａを含む）。一部の実施形態では、一又は複数のＧＰＵ５８０は、並列入力を受信し、かつ並列出力を出力する（例えば、処理デバイス５５２は並列入力生成器５８２Ａ及び並列出力セレクタ５９２Ａを含む）。
【００８３】
一例では、処理モデル生成器５６２は、半導体基板のバッチの処理モデル５７２を生成しうる（例えば、図２のブロック２０２、図３のブロック３０２〜３１２、図４のブロック４０２など）。並列入力生成器５８２Ａは、処理モデル５７２を受信し、この処理モデル５７２に基づいて並列入力を生成しうる（例えば、図２のブロック２０４、図３のブロック３１４、図４のブロック４０４〜４０６など）。
【００８４】
並列入力生成器５８２Ａは、並列入力の第１の量はＧＰＵ５８０Ａの第１コア５８６の第２の量を超えないと判定したことに応じて、並列入力を並列出力生成器５８４Ａに送信する（例えば、並列入力生成器５８２Ａは、並列入力の各々を並列出力生成器５８４Ａの個別のコア５８６に分配する）。
【００８５】
並列入力生成器５８２Ａは、並列入力の第１の量がＧＰＵ５８０Ａの第１コア５８６の第２の量を超えると判定したことに応じて、並列入力を２つ以上の並列出力生成器５８４に送信する（例えば、並列入力生成器５８２Ａは、並列入力を２つ以上の並列出力生成器５８４の個別のコア５８６、５８８に分配する）。
【００８６】
並列入力生成器５８２Ａは、並列入力の第１の量がクライアントデバイス５５０のＧＰＵ５８０の総コアの第３の量を超えると判定したことに応じて、並列入力の第１のセットを、同時処理されるようＧＰＵのコアに分配しうる。コアの各々に関して、並列入力生成器５８２Ａは、コアが利用可能になると（例えば、対応する並列入力の処理を完了すると）、利用可能になったコアに別の並列入力を分配しうる。並列入力生成器５８２Ａは、全ての並列入力が処理されるまで、利用可能なコアに並列入力を分配し続けうる。
【００８７】
並列出力セレクタ５９２（例えば、ＧＰＵ５８０Ａの並列出力セレクタ５９２Ａ）は、並列出力同士を比較して、（例えば、並列出力の全ての中で）最小の処理持続時間を提供する並列出力５７４を選択しうる。一部の実施形態では、並列出力セレクタ５９２は、ＧＰＵ５８０Ａ内に配置される。一部の実施形態では、並列出力セレクタ５９２は、ＧＰＵ５８０の各々内に配置される。一部の実施形態では、並列出力セレクタ５９２は、処理デバイス５５２内に配置される。
【００８８】
タイムテーブル生成器５６４は、（例えば、並列出力セレクタ５９２によって選択された）並列出力５７４を受信し、この並列出力５７４に基づいてタイムテーブル５７６を生成しうる。ネットワークインターフェース５５８は、タイムテーブル５７６に基づいて半導体基板のバッチが基板処理システム内で処理されるようにするために、タイムテーブル５７６を受信し、ネットワーク５３０を介してこのタイムテーブル５７６をコントローラ５１０のネットワークインターフェース５１８に送信しうる。
【００８９】
上記の説明は、本書に記載の実施形態を対象としているが、本書の基本的な範囲から逸脱することなく、その他の実施形態及び更なる実施形態が考案されうる。例えば、本開示の態様は、ハードウェア若しくはソフトウェアにおいて、又はハードウェアとソフトウェアとの組み合わせにおいて、実装されうる。本書に記載の一実施形態は、コンピュータシステムと共に使用されるプログラム製品として実装されうる。プログラム製品のプログラム（複数可）は、実施形態（本書に記載の方法を含む）の機能を定義するものであり、多種多様なコンピュータ可読記憶媒体に包含されうる。例示的なコンピュータ可読記憶媒体は、（ｉ）情報を恒久的に記憶する、書き込み不能記憶媒体（例えば、ＣＤ−ＲＯＭドライブによって可読なＣＤ−ＲＯＭディスク、フラッシュメモリ、ＲＯＭチップ、又は任意の種類のソリッドステート不揮発性半導体メモリといった、コンピュータ内の読み出し専用メモリデバイス）、及び、（ｉｉ）変更可能な情報を記憶する、書き込み可能記憶媒体（例えば、ディスケットドライブ若しくはハードディスクドライブの中のフロッピーディスク、又は、任意の種類のソリッドステートランダムアクセス半導体メモリ）、を含むが、これらに限定されるわけではない。かかるコンピュータ可読記憶媒体は、開示されている実施形態の機能を指示するコンピュータ可読命令を伴う場合に、本開示の実施形態となる。
【００９０】
前述した例は例示的なものであって限定的なものではないことが、当業者には認識されよう。本明細書を読み、図面を精査することで当業者に明らかになる、これらの例の置換例、強化例、均等物、及び改良例は全て、本開示の本質及び範囲内に含まれることが意図されている。したがって、本書に付随する以下の特許請求の範囲も、これらの教示の本質及び範囲に内包されるものとして、かかる改変例、置換例、及び均等物の全てを含むことが意図されている。
【００９１】
上記の説明は本開示の実施形態を対象としているが、本開示の基本的な範囲から逸脱しなければ、本開示の他の実施形態及び更なる実施形態が考案されてよく、本開示の範囲は、以下の特許請求の範囲によって決定される。
【図１】
2021522695.tif 000010
【図２】
2021522695.tif 000011
【図３】
2021522695.tif 000012
【図４】
2021522695.tif 000013
【図５】
2021522695.tif 000014
【手続補正書】
【提出日】令和3年4月9日(2021.4.9)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
一体型基板処理システムにおいて半導体基板の処理シーケンスをスケジューリングする方法であって、
半導体基板のバッチの処理モデルを生成することであって、前記処理モデルは行列を有し、前記一体型基板処理システムにおける各処理チャンバ内の各半導体基板について、対応する始動時点を規定する、処理モデルを生成することと、
前記処理モデルに基づいて、並列入力を生成することであって、一又は複数のグラフィック処理ユニット(ＧＰＵ)のうちの第１ＧＰＵによって、前記行列に基づいて複数の行列を生成することを含む、並列入力を生成することと、
前記一又は複数のＧＰＵの複数のコアによって、前記並列入力を同時処理して、前記半導体基板のバッチのための並列出力を生成することであって、前記並列入力の各々は、対応する並列出力を生成するために前記一又は複数のＧＰＵの前記複数のコアの個別のコアで処理される、並列出力を生成することと、
前記並列出力に基づいて、前記一体型基板処理システムにおいて前記半導体基板のバッチが処理されるようにすることと
を含む、方法。
【請求項２】
前記第１ＧＰＵによって、行列を含む前記処理モデルを受信することを更に含み、前記並列出力が、前記半導体基板のバッチを処理するための値のセットに対応する、請求項１に記載の方法。
【請求項３】
前記並列出力を生成することが、
前記複数の行列の各々を解いて、前記複数の行列の各々について複数の値のセットのうちの対応する値のセットを生成することであって、前記複数の値のセットの各々が、前記半導体基板のバッチの処理のための各処理持続時間に対応する、対応する値のセットを生成することと、
前記複数の値のセットのうちの、前記半導体基板のバッチの前記処理のための最小処理持続時間に対応する値のセットを選択することとを含む、請求項２に記載の方法。
【請求項４】
前記並列出力に基づいて、前記一体型基板処理システムのスループットを予測することを更に含む、請求項１に記載の方法。
【請求項５】
前記一体型基板処理システムにおける障害を検出することと、
前記障害に基づいて、更新された処理モデルを生成することと、
前記更新された処理モデルに基づいて、更新された並列入力を生成することと、
前記一又は複数のＧＰＵによって、前記更新された並列入力を処理して、前記半導体基板のバッチのための更新された並列出力を生成することと、
前記更新された並列出力に基づいて、前記一体型基板処理システムにおいて前記半導体基板のバッチが処理されるようにすることと
を更に含む、請求項１に記載の方法。
【請求項６】
前記並列出力に基づいて前記半導体基板のバッチが処理されるようにすることが、前記並列出力に基づいて、前記一体型基板処理システム内で前記半導体基板のバッチをルーティングすることを含み、
前記更新された並列出力に基づいて前記半導体基板のバッチが処理されるようにすることが、前記更新された並列出力に基づいて、前記一体型基板処理システム内で一又は複数の半導体基板をルーティングし直すことを含む、請求項５に記載の方法。
【請求項７】
前記一又は複数のＧＰＵが第１ＧＰＵ及び第２ＧＰＵを含み、
前記第１ＧＰＵによって前記処理モデルを受信することであって、前記並列入力を生成することが前記第１ＧＰＵによる、前記処理モデルを受信することと、
前記第１ＧＰＵによって、前記並列入力の第１の数量が前記第１ＧＰＵの第１の複数のコアの第２の数量を超えると判定することと、
前記第１ＧＰＵに前記並列入力の第１サブセットを割り当て、前記第２ＧＰＵに前記並列入力の第２サブセットを割り当てることであって、前記第１ＧＰＵが前記第１サブセットを処理するものであり、前記第２ＧＰＵが前記第２サブセットを処理するものである、サブセットを割り当てることと
を更に含む、請求項１に記載の方法。
【請求項８】
前記半導体基板のバッチに基づいて、処理されるべき半導体基板のリストを生成することと、
前記半導体基板のリストに対応する各半導体基板に、対応する処理シーケンスを割り当てることと、
前記半導体基板のリスト内の各半導体基板について、前記対応する処理シーケンスにおける各プロセスに、対応する処理チャンバを割り当てることと
を更に含み、前記半導体基板のリスト、前記半導体基板のリストの各半導体基板の前記対応する処理シーケンス、及び、前記半導体基板のリストの各半導体基板の前記対応する処理シーケンスにおける各プロセスのための前記対応する処理チャンバに基づいて、前記処理モデルが生成される、請求項１に記載の方法。
【請求項９】
前記並列出力に基づいて、前記半導体基板のバッチのためのタイムテーブルを生成することを更に含み、前記並列出力に基づいて前記半導体基板のバッチが処理されるようにすることが、前記タイムテーブルにしたがって前記半導体基板のバッチが処理されるようにすることを含む、請求項１に記載の方法。
【請求項１０】
メモリと、
半導体基板のバッチの処理モデルを生成するための、前記メモリに連結されたプロセッサであって、前記処理モデルが行列を有し、一体型基板処理システムにおける各処理チャンバ内の各半導体基板について、対応する始動時点を規定する、処理デバイスと、
前記メモリ及び前記プロセッサに連結されたグラフィック処理ユニット（ＧＰＵ）であって、前記処理モデルに基づいて並列入力を生成し、かつ前記ＧＰＵの複数のコアによって前記並列入力を同時処理して、前記半導体基板のバッチのための並列出力を生成するための、ＧＰＵと
を備える、システムであって、前記ＧＰＵは、前記並列入力を生成するために、前記行列に基づいて複数の行列を生成するものであり、前記並列入力の各々は、対応する並列出力を生成するために前記ＧＰＵの前記複数のコアの個別のコアで処理され、前記プロセッサは、前記並列出力に基づいて、前記一体型基板処理システムにおいて前記半導体基板のバッチが処理されるようにするものである、
システム。
【請求項１１】
前記ＧＰＵは、行列を含む前記処理モデルを受信することを更に行うものであり、前記並列出力が、前記半導体基板のバッチを処理するための値のセットに対応する、請求項１０に記載のシステム。
【請求項１２】
前記ＧＰＵは、前記並列出力を生成するために、
前記複数の行列の各々を解いて、前記複数の行列の各々について複数の値のセットのうちの対応する値のセットを生成することであって、前記複数の値のセットの各々が、前記半導体基板のバッチの処理のための各処理持続時間に対応する、対応する値のセットを生成することと、
前記複数の値のセットのうちの、前記半導体基板のバッチの前記処理のための最小処理持続時間に対応する値のセットを選択することと
を行うものである、請求項１１に記載のシステム。
【請求項１３】
前記プロセッサは、前記並列出力に基づいて前記一体型基板処理システムのスループットを予測することを更に行うものである、請求項１１に記載のシステム。
【請求項１４】
前記プロセッサは、前記一体型基板処理システムにおける障害を検出し、かつ前記障害に基づいて更新された処理モデルを生成するものであり、前記ＧＰＵは、前記更新された処理モデルに基づいて更新された並列入力を生成し、かつ前記更新された並列入力を処理して、前記半導体基板のバッチのための更新された並列出力を生成するものであり、前記プロセッサは、前記更新された並列出力に基づいて、前記一体型基板処理システムにおいて前記半導体基板のバッチが処理されるようにするものである、請求項１０に記載のシステム。
【請求項１５】
前記プロセッサは、前記並列出力に基づいて前記半導体基板のバッチが処理されるようにするために、前記並列出力に基づいて、前記一体型基板処理システム内で前記半導体基板のバッチをルーティングするものであり、前記プロセッサは、前記更新された並列出力に基づいて前記半導体基板のバッチが処理されるようにするために、前記更新された並列出力に基づいて、前記一体型基板処理システム内で一又は複数の半導体基板をルーティングし直すものである、請求項１４に記載のシステム。
【請求項１６】
前記プロセッサは、
前記半導体基板のバッチに基づいて、処理されるべき半導体基板のリストを生成することと、
前記半導体基板のリストに対応する各半導体基板に、対応する処理シーケンスを割り当てることと、
前記半導体基板のリスト内の各半導体基板について、前記対応する処理シーケンスにおける各プロセスに、対応する処理チャンバを割り当てることとを更に行うものであり、前記半導体基板のリスト、前記半導体基板のリストの各半導体基板の前記対応する処理シーケンス、及び、前記半導体基板のリストの各半導体基板の前記対応する処理シーケンスにおける各プロセスのための前記対応する処理チャンバに基づいて、前記処理モデルが生成される、請求項１０に記載のシステム。
【請求項１７】
命令が記憶された非一過性のコンピュータ可読媒体であって、前記命令は、グラフィック処理ユニット（ＧＰＵ）によって実行されると、前記ＧＰＵに、
半導体基板のバッチの処理モデルを受信することであって、前記処理モデルは行列を有し、一体型基板処理システムにおける各処理チャンバ内の各半導体基板について、対応する始動時点を規定する、処理モデルを受信することと、
前記処理モデルに基づいて、並列入力を生成することと、
前記ＧＰＵの複数のコアによって、前記並列入力を同時処理して、前記半導体基板のバッチのための並列出力を生成することであって、前記並列入力の各々は、対応する並列出力を生成するために前記ＧＰＵの前記複数のコアの個別のコアで処理される、並列出力を生成することと
を実行させ、前記ＧＰＵは、前記並列入力を生成するために、前記行列に基づいて複数の行列を生成するものであり、前記半導体基板のバッチは、前記並列出力に基づいて前記一体型基板処理システムにおいてが処理されるものである、
非一過性のコンピュータ可読媒体。
【請求項１８】
前記並列出力が、前記半導体基板のバッチを処理するための値のセットに対応する、請求項１７に記載の非一過性のコンピュータ可読媒体。
【請求項１９】
前記ＧＰＵは、前記並列出力を生成するために、
前記複数の行列の各々を解いて、前記複数の行列の各々について複数の値のセットのうちの対応する値のセットを生成することであって、前記複数の値のセットの各々が、前記半導体基板のバッチの処理のための各処理持続時間に対応する、対応する値のセットを生成することと、
前記複数の値のセットのうちの、前記半導体基板のバッチの前記処理のための最小処理持続時間に対応する値のセットを選択することと
を行うものである、請求項１８に記載の非一過性のコンピュータ可読媒体。
【請求項２０】
前記一体型基板処理システムのスループットが、前記並列出力に基づいて予測されるものである、請求項１８に記載の非一過性のコンピュータ可読媒体。
【国際調査報告】
2021522695.tif 000015