(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-11-08
(54)【発明の名称】機械学習ベースのアルゴリズムを使用した予防保守の回復とレシピの最適化の促進
(51)【国際特許分類】
H01L 21/02 20060101AFI20241031BHJP
【FI】
H01L21/02 Z
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024529351
(86)(22)【出願日】2022-11-18
(85)【翻訳文提出日】2024-05-16
(86)【国際出願番号】 US2022050484
(87)【国際公開番号】W WO2023096839
(87)【国際公開日】2023-06-01
(32)【優先日】2021-11-23
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】390040660
【氏名又は名称】アプライド マテリアルズ インコーポレイテッド
【氏名又は名称原語表記】APPLIED MATERIALS,INCORPORATED
【住所又は居所原語表記】3050 Bowers Avenue Santa Clara CA 95054 U.S.A.
(74)【代理人】
【識別番号】100101502
【氏名又は名称】安齋 嘉章
(72)【発明者】
【氏名】ハン ペンギュ
(57)【要約】
センサデータと機械学習モデルを使用して処理チャンバの状態を決定する方法が提供される。この方法は、処理デバイスにより、現在の処理の処理パラメータのセットに従って基板を処理する処理チャンバの環境の状態を示すセンサデータを受信する工程を含む。更に、センサデータは、処理チャンバ内に配置されたプラズマの発光スペクトル(OES)測定値を示すスペクトルデータを含む。更に、方法は、センサデータを機械学習モデルへの入力として使用する工程と、1つ以上のチャンバ状態メトリックを示す1つ以上の出力を取得する工程を含む。更に、方法は、1つ以上のチャンバ状態メトリックに基づいて処理チャンバの回復状態を決定する工程を含む。更に、方法は、処理デバイスにより、処理チャンバの回復状態に基づいて処理チャンバの性能を変更する工程を含む。
【特許請求の範囲】
【請求項1】
方法であって、
処理デバイスにより、(i)現在の処理の処理パラメータのセットに従って基板を処理する処理チャンバの環境の状態を示すチャンバデータと、(ii)現在の処理の処理パラメータのセットに従って基板を処理する処理チャンバ内に配置されたプラズマの発光スペクトル(OES)測定値を示すスペクトルデータを含むセンサデータを受信する工程と、
処理デバイスにより、センサデータを機械学習モデルへの入力として使用する工程と、
処理デバイスにより、機械学習モデルの1つ以上の出力を取得する工程であって、1つ以上の出力は1つ以上のチャンバ状態メトリックを示す工程と、
処理デバイスにより、1つ以上のチャンバ状態メトリックに基づいて処理チャンバの回復状態を決定する工程であって、回復状態は予防保守手順の後に実行されるチャンバ回復処理に対応する工程と、
処理デバイスにより、処理チャンバの回復状態に基づいて処理チャンバの性能を変更する工程を含む方法。
【請求項2】
処理デバイスにより、1つ以上のチャンバ状態メトリックに基づいて処理パラメータのセットの少なくとも1つの処理パラメータの更新を決定し、更新された処理パラメータのセットを生成する工程であって、処理チャンバの性能の変更は、処理パラメータのセットの少なくとも1つの処理パラメータの更新に基づく、請求項1に記載の方法。
【請求項3】
処理チャンバの性能を変更する工程は、
更新された処理パラメータのセットに従って基板又は新しい基板を処理するここと、又は
処理チャンバ内での基板処理を停止すること、
の少なくとも1つを生じさせる第1のコマンドを送信する工程を含む、請求項2に記載の方法。
【請求項4】
処理チャンバの性能の変更を示す通知をグラフィカルユーザインターフェース(GUI)上に表示する工程を含む、請求項1に記載の方法。
【請求項5】
性能の変更がチャンバシーズニング手順に対応する、請求項1に記載の方法。
【請求項6】
スペクトルデータは、処理チャンバ内に配置された基板の表面から反射された光の反射率パターンに対応する光反射率スペクトル測定値に対応する、請求項1に記載の方法。
【請求項7】
発光スペクトル測定値と光反射率スペクトル測定値の組み合わせに基づいて1つ以上のスペクトルフィーチャを決定し、フィーチャデータを生成する工程と、
フィーチャデータを機械学習モデルへの入力として使用する工程を含む、請求項6に記載の方法。
【請求項8】
センサデータを統計モデルへの入力として使用する工程と、
統計モデルから1つ以上の出力を受信する工程であって、1つ以上の出力は、チャンバデータとスペクトルデータの一時的に関連付けられたデータポイントが処理チャンバの状態を正確に示す信頼性レベルを示し、統計モデルは履歴チャンバデータと履歴スペクトルデータの間の回帰を使用して生成される工程と、
信頼性レベルが閾値条件を満たしているかどうかを決定する工程を含む、請求項1に記載の方法。
【請求項9】
センサデータの受信と処理チャンバの性能の変更の両方が、処理チャンバが処理パラメータのセットに従って基板を処理している間に行われる、請求項1に記載の方法。
【請求項10】
チャンバ回復手順における処理チャンバの状態を決定するために機械学習モデルをトレーニングするための方法であって、処理チャンバが現在の処理に従って現在の基板を処理する方法であって、
機械学習モデルのトレーニングデータを生成する工程であって、
i)以前の処理に従って以前の基板を処理する第2の処理チャンバの環境の状態を示す履歴チャンバデータと、ii)以前の処理に従って以前の基板を処理する第2の処理チャンバ内に配置された以前のプラズマの発光スペクトル(OES)測定値を示す履歴スペクトルデータとを含む履歴センサデータを有する第1トレーニング入力を識別する工程と、
第1のトレーニング入力のための第1の目標出力を特定する工程であって、第1の目標出力は、以前の処理に従って第2の処理チャンバを使用して処理された以前の基板の処理結果測定値を有する履歴処理結果データを含む工程を含む、機械学習モデルのトレーニングデータを生成する工程と、
(i)第1のトレーニング入力を含むトレーニング入力のセット、及び(ii)第1の目標出力を含む目標出力のセットに基づいて機械学習モデルをトレーニングするためのトレーニングデータを提供する工程であって、
トレーニング済み機械学習モデルは、i)新しい工程に従って新しい基板を処理する新しい処理チャンバの新しい環境の新しい状態を示す新しいチャンバデータと、ii)新しい処理に従って新しい基板を処理する新しい処理チャンバ内に配置される新しいプラズマの発光スペクトル(OES)測定値を示す新しいスペクトルデータを含む新しいセンサデータを有する新しい入力を受信し、新しい入力に基づいて新しい出力を生成し、新しい出力は、予防保守手順後に実行されるチャンバ回復処理に関連する回復状態に対応するチャンバ状態メトリックを示す、トレーニングデータを提供する工程を含む方法。
【請求項11】
履歴スペクトルデータは、
第2処理チャンバ内に配置された以前の基板の表面から反射された光の反射パターンに対応する光反射スペクトル測定値を含む、請求項10に記載の方法。
【請求項12】
発光スペクトル測定値と光反射スペクトル測定値の組み合わせに基づいて1つ以上のスペクトルフィーチャを決定し、フィーチャデータを生成する工程であって、トレーニングデータはフィーチャデータを含む、請求項11に記載の方法。
【請求項13】
履歴スペクトルデータを使用してデータ外挿手順を実行し、OES測定の前又は後に生じる時間インスタンスに対応する光発光スペクトル(OES)推定値を生成する、請求項10に記載の方法。
【請求項14】
履歴スペクトルデータを使用してデータ内挿手順を実行し、発光スペクトル(OES)測定値のペア間で発生する1つ以上の時間インスタンスのOES推定値を生成する、請求項10に記載の方法。
【請求項15】
トレーニング入力のセットの各々のトレーニング入力は、目標出力のセットの目標出力にマッピングされる、請求項10に記載の方法。
【請求項16】
トレーニング済み機械学習モデルは、ロジスティック回帰型アルゴリズム、多層知覚アルゴリズム、又はリカレントニューラルネットワーク(RNN)の少なくとも1つを含む、請求項10に記載の方法。
【請求項17】
非一時的なコンピュータ可読媒体であって、処理装置により実行されると、
処理デバイスにより、(i)現在の処理の処理パラメータのセットに従って基板を処理する処理チャンバの環境の状態を示すチャンバデータと、(ii)現在の処理の処理パラメータのセットに従って基板を処理する処理チャンバ内に配置されたプラズマの発光スペクトル(OES)測定値を示すスペクトルデータを含むセンサデータを受信させ、
処理デバイスにより、センサデータを機械学習モデルへの入力として使用させ、
処理デバイスにより、機械学習モデルの1つ以上の出力を取得させ、1つ以上の出力は1つ以上のチャンバ状態メトリックを示し、
処理デバイスにより、1つ以上のチャンバ状態メトリックに基づいて処理チャンバの回復状態を決定させ、回復状態は予防保守手順の後に実行されるチャンバ回復処理に対応し、
処理デバイスにより、処理チャンバの回復状態に基づいて処理チャンバの性能を変更させる、命令を含むコンピュータ可読媒体。
【請求項18】
非一時的なコンピュータ可読媒体であって、処理デバイスにより実行されると、
処理デバイスにより、1つ以上のチャンバ状態メトリックに基づいて処理パラメータのセットの少なくとも1つの処理パラメータの更新を決定し、更新された処理パラメータのセットを生成させ、処理チャンバの性能の変更は、処理パラメータのセットの少なくとも1つの処理パラメータの更新に基づく、命令を含む、請求項17に記載のコンピュータ可読媒体。
【請求項19】
性能の変更はチャンバシーズニング手順に対応する、請求項17に記載のコンピュータ可読媒体。
【請求項20】
非一時的なコンピュータ可読媒体であって、処理デバイスにより実行されると、
センサデータを統計モデルへの入力として使用し、
統計モデルから1つ以上の出力を受信し、1つ以上の出力は、チャンバデータとスペクトルデータの一時的に関連付けられたデータポイントが処理チャンバの状態を正確に示す信頼性レベルを示し、統計モデルは履歴チャンバデータと履歴スペクトルデータの間の回帰を使用して生成され、
信頼性レベルが閾値条件を満たしているかどうかを決定する、命令を含む、請求項17に記載のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示の実施形態は、一般に、製造システムのチャンバ状態を予測することに関する。具体的には、本開示はチャンバ条件を決定し、チャンバ回復状態を特定し、及び/又は処理のパラメータを更新することに関する。
【背景】
【0002】
基板処理は、回路設計に従って半導体(例えば、シリコンウエハ)内に電気回路を製造する一連の処理を含む場合がある。これらの処理は、一連のチャンバ内で実行することができる。最新の半導体製造施設のオペレーションを成功させるには、ウエハ内に電気回路を形成する過程で、ウエハをあるチャンバから他のチャンバに移動する定常的な流れを促進することを目的とする場合がある。多くの基板処理を実行する処理では、処理チャンバの条件が変更される可能性があり、その結果、処理された基板が所望の条件及び結果を満たさない場合がある。
【0003】
このような基板処理の1つはプラズマエッチングを含む場合があり、プラズマエッチングは、ウエハ表面から層状材料を除去することにより、マスク材料層のパターンをマスクの下の他の層(例えば、導電性材料又は誘電体材料の層)に転写する処理である。このような処理では、層状の材料やエッチングケミストリに応じて、様々な種類のエッチング副生成物(例えば、酸化シリコンや有機ポリマー等)が必然的に生成される。副生成物の一部は、例えば、プラズマエッチングプロセスが実行されるチャンバの内面に堆積する。副生成物の堆積は、基板上に粒子(例えば、フレーク)が堆積することにより、又はプラズマと反応して処理結果に影響を与えることにより、エッチング性能に影響を与える可能性がある。
【0004】
エッチング副生成物の影響を軽減するため、予防保守(例えば、チャンバ洗浄等)を使用し、チャンバ壁から堆積物を定期的に除去することができる。予防保守の例は、チャンバを生産から外し、シリコンエッチング中に堆積した酸化シリコンを洗浄するための洗浄プラズマ(例えば、CF4+O2プラズマ等)をチャンバに導入することを含むことができる。このプラズマは堆積した材料と反応し、この反応の生成物がチャンバから排出される。しかしながら、そのようなチャンバの洗浄後、チャンバ壁が清浄な場合、チャンバが即時の製造ウエハのエッチングに適さなくなることが観察された。チャンバシーズニングは、一連の基板(例えば、ブランクシリコンウエハ)をエッチングして、生産基板処理に適したチャンバ条件を復元する手順である。チャンバのシーズニング後、酸化シリコンの薄い層がチャンバの壁を覆うことができる。その後、次のラウンドのチャンバのクリーニングとシーズニングが行われるまで、チャンバは製品ウエハのエッチングに戻る。また、予防保守には、物理的方法(例えば、処理チャンバの1つ以上の表面を拭き取る)により汚れ及び/又は堆積物を除去することを含む場合がある。
【概要】
【0005】
以下は、本開示の幾つかの態様の基本的な理解を提供するために、本開示の簡略化した概要である。この概要は、開示内容の広範な概要を示すものではない。これは、本開示のキーとなる又は重要な要素を特定することを意図したものではなく、また、本開示の特定の実施の範囲又は特許請求の範囲を特定することも意図していない。その唯一の目的は、以下で提示されるより詳細な説明への前置きとして、本開示の幾つかの概念を簡略化された形式で提示することである。
【0006】
例示的な実施形態では、方法は、現在の処理の処理パラメータのセットに従って基板を処理する処理チャンバの環境の状態を示すチャンバデータを含むセンサデータを受信する処理デバイスを含む。チャンバデータには、処理チャンバ内に配置されたプラズマの発光スペクトル(OES)測定値を示すスペクトルデータが更に含まれる。処理チャンバは、現在の処理の処理パラメータのセットに従って基板を処理する。方法は更に、機械学習モデルへの入力としてセンサデータを使用することを含む。方法は更に、機械学習モデルの1つ以上の出力を取得することを含む。1つ以上の出力は、1つ以上のチャンバ状態メトリクスを示す。方法は更に、1つ以上のチャンバ状態メトリクスに基づいて処理チャンバの回復状態を決定する工程を含み、回復状態は、予防保守手順の後に実行されるチャンバ回復処理(例えば、チャンバシーズニング手順)に関連する。方法は更に、処理チャンバの回復状態に基づいて処理チャンバの性能を変更させることを含む。
【0007】
例示的な実施形態では、チャンバ回復手順において処理チャンバの状態を決定するために機械学習モデルをトレーニングする方法が提供される。処理チャンバは、現在の処理に従って現在の基板を処理する。方法は、機械学習モデルのトレーニングデータを生成することを含む。トレーニングデータを生成することは、履歴チャンバデータを含む履歴センサデータを有する第1のトレーニング入力を識別することを含む。履歴チャンバデータは、以前の処理に従って以前の基板を処理する第2の処理チャンバの環境の状態を示す。センサデータは更に、以前の処理に従って以前の基板を処理する第2の処理チャンバ内に配置された以前のプラズマの発光スペクトル(OES)測定値を示す履歴スペクトルデータを含む。トレーニングデータを生成することは、第1のトレーニング入力に対する第1の目標出力を識別することを更に含む。第1の目標出力は、以前の処理に従って第2の処理チャンバを使用して処理された以前の基板の処理結果測定値を有する履歴処理結果データを含む。方法は、第1のトレーニング入力を含むトレーニング入力のセット及び第1の目標出力を含む目標出力のセットに基づき機械学習モデルをトレーニングするためのトレーニングデータを提供する工程を更に含む。
【0008】
例示的な実施形態では、非一時的なコンピュータ可読媒体は、処理装置により実行されると、処理装置にアクションを実行させる命令を含む。実行されるアクションには、現在の処理の処理パラメータのセットに従って基板を処理する処理チャンバの環境の状態を示すチャンバデータを含むセンサデータを受信することが含まれる。チャンバデータには、更に、処理チャンバ内に配置されたプラズマの発光スペクトル(OES)測定値を示すスペクトルデータが含まれる。処理チャンバは、現在の処理の処理パラメータのセットに従って基板を処理する。アクションには、センサデータを機械学習モデルへの入力として使用することが更に含まれる。方法は、機械学習モデルの1つ以上の出力を取得することも更に含まれる。1つ以上の出力は、1つ以上のチャンバ状態メトリックを示す。アクションには、1つ以上のチャンバ状態メトリックに基づいて処理チャンバの回復状態を決定することが更に含まれ、回復状態は、予防保守手順の後に実行されるチャンバ回復処理に関連付けられる。アクションには、更に、処理チャンバの回復状態に基づいて処理チャンバの性能を変更することが含まれる。
【図面の簡単な説明】
【0009】
本開示は、限定するものではなく例として添付図面に示されており、同様の参照符号は同様の要素を示している。本開示における「一」又は「1つの」実施形態への異なる言及は、必ずしも同じ実施形態を指すわけではなく、そのような言及は少なくとも1つを意味することに留意すべきである。
【
図1】本開示の態様による、例示的なシステムアーキテクチャを示す。
【
図2】本開示の態様による、例示的な製造システムの上面概略図である。
【
図3】本開示の態様による、処理チャンバのチャンバ状態を予測するための例示的なシステムアーキテクチャを示す。
【
図4】本開示の態様による、機械学習モデルをトレーニングする方法のフローチャートである。
【
図5】本発明の態様による、チャンバ状態装置の断面概略側面図である。
【
図6】本開示の態様による、処理チャンバのチャンバ状態を予測するための機械学習モデルをトレーニング及び/又は更新する方法のフローチャートである。
【
図7】本開示の態様による、処理チャンバのチャンバ状態を予測するための機械学習モデルをトレーニング及び/又は更新する方法のフローチャートである。
【
図8】本開示の態様による、機械学習モデルを使用して現在のチャンバを処理する処理チャンバのチャンバ状態を予測する方法のフローチャートである。
【
図9】本開示の態様による、計測測定値のタイプを推定するための機械学習モデルを選択する方法のフローチャートである。
【
図10】本明細書で説明される方法のいずれか1つ以上をマシンに実行させるための命令セットを実行することができるコンピューティングデバイスの例示的な形態のマシンの図表示を示す。
【実施形態の詳細な説明】
【0010】
本開示の実施形態は、スペクトルデータ収集を強化し、機械学習を使用してチャンバ状態メトリクスを予測するためのスペクトル測定システムに関する。製造処理の処理結果は多くの要因に依存し、その1つはプロセスレシピ及び/又は1つ以上のチャンバパラメータ設定である。頻繁に発生する他の要因は、予防保守(PM)又はその他のイベントに起因するプロセスシフトであり、レシピが同じであっても処理結果が変化する原因となる。新しくサービスされたチャンバ(ポストPM)又はコールドチャンバには、多くの場合「ファーストウエハ効果」があり、新しくサービスされたチャンバ又はコールドチャンバを使用して処理された基板の処理結果が、最近サービスされていないチャンバで処理された基板の処理結果から逸脱する。PMの影響は、1回又は数回のシーズニングウエハランを実行してチャンバを「通常の」オペレーション状態にシーズニングすることで改善することができる。幾つかの場合及び幾つかのアプリケーションでは、ポストPMチャンバでは、目標となる「通常の」動作状態に達するまでに数日/数週間かかる。
【0011】
予防保守手順(例えば、チャンバ洗浄)は、処理チャンバの状態を基板処理生産モード(例えば、基板の大量処理)に入るのに適した状態に戻すためのチャンバ回復処理の一部としてよく使用される。回復手順は、予防保守手順の後にチャンバを生産モードに準備する(例えば、チャンバを「ウォームアップ」する)ためによく使用される。従来使用されている一般的な回復手順は、処理チャンバのシーズニングである。チャンバのシーズニングは、一連の基板(例えば、ブランクのシリコンウエハ)を処理して、生産基板処理に適したチャンバ状態(例えば、チャンバで処理された基板が、所望の閾値基準を満たす処理結果を有する)を回復する(例えば、チャンバの壁をコーティングする)手順である。チャンバのシーズニング後、チャンバは、他のラウンドの予防保守と更なるチャンバのシーズニングが実行されるか、又は処理チャンバの状態の回復が推奨されるまで、一定期間生産モードでオペレーションすることができる。
【0012】
「異常な」チャンバ条件のペナルティには、基板処理が目標処理結果(例えば、膜深さ、ウエハ上の臨界寸法、側壁角度等)を満たす基板を生産できないことが含まれる可能性がある。例えば、プロセスレシピは処理時間を示すことがあり、「異常」状態により、示されたレシピ時間内に基板が目標処理結果を満たすことが妨げられることになる。チャンバの異常により、基板のバッチ全体にわたってプロセス/エッチング結果が目標処理結果から逸脱する可能性がある。例えば、異常なチャンバ条件により、処理された基板のエッチングパターンが目標のエッチングパターンから逸脱する可能性がある。基板の表面上で目標のエッチングパターンを達成できないと、基板から最終的に製造される集積回路(IC)チップの歩留まりが低下する可能性がある。
【0013】
チャンバの現在のチャンバ状態(チャンバ状態メトリクス等)を知ることで、製造システムは処理パラメータを適応的に修正し、目標の処理結果を達成することができる。但し、チャンバ状態を特定するのは困難である。この困難さは、チャンバパラメータの「正常」状態と「異常」状態の間の微妙な違いに一部起因する。例えば、チャンバが最近予防保守(PM)を受けた後、発光スペクトル(OES)に若干の違いが生じる可能性がある。しかし、これらの微妙な違いが処理結果に与える影響を予測するのは依然として複雑である。
【0014】
従来、一連の基板は、予防保守手順の後に処理チャンバ内で処理される。一連の基板の処理に続いて、テストサンプルが処理され、評価される。テストサンプルには、処理チャンバ内で処理され、テストサンプルが閾値条件を満たす処理結果を含むかどうかを判断するために評価される(例えば、処理結果が測定される)基板が含まれる場合がある。条件が満たされない場合、更なるシーズニング基板が処理され、他のテストサンプルが処理されて、チャンバが完全に回復したかどうかを判断することができる。この処理は、チャンバ条件が満たされるか、又は閾値量のシーズニングウエハが使用されるまで繰り返される場合がある。前述のようなチャンバ条件を判断する従来の方法では、最初の量のシーズニングウエハが使用されるが、実際にはチャンバを基板製造を実行するために動作可能な状態に回復させるのに必要な数はより少ない場合、不必要な量のシーズニングウエハ(例えば、チャンバの「過剰シーズニング」)が必要になる可能性がある。更に、従来の方法では、チャンバが十分に回復したかどうかを判断するために必要なテストサンプルの測定及び評価を待つため、チャンバを製造モードに戻すのに遅延が必要になる可能性がある。ツール又はチャンバがダウンしている(例えば、生産モードで動作していない)ため、回復手順にかかる時間は生産性の損失になる。更に、従来の方法では、チャンバの状態をその場(インサイチュ、in-situ)で監視することはできず、テストサンプルに依存し、シーズニングプロセス中にテストサンプルの評価を待つことになる。
【0015】
本開示の態様及び実施形態は、機械学習を利用してチャンバ内で処理される基板の処理結果に関連するチャンバ状態メトリクスを特定することにより、従来技術のこれら及び他の欠点に対処する。機械学習と深層学習の応用により、データ内の固有のフィーチャを特定し、データとチャンバラベル間の相関モデルを構築する方法が提供される。トレーニング済みモデルを使用すると、処理チャンバはリアルタイムのチャンバ状態の予測と制御に使用することができるインサイチュのスペクトルデータを提供することができる。これは、例えば、チャンバ条件が多様な場合でも一貫した処理結果を達成するために使用することができる。チャンバ状態は、チャンバ回復処理における処理チャンバの状態にマッピングすることができる。例えば、予防保守がチャンバに対して実行され、チャンバは回復処理(例えば、チャンバシーズニング手順)を受けて、チャンバを一貫した動作状態に戻すことができる。回復処理の異なる段階は異なるチャンバ条件をもたらす可能性があり、チャンバ条件を使用して、処理チャンバが現在回復処理のどの段階で動作しているかを示すことができる。
【0016】
本開示の態様及び実施形態は、テストサンプルの検査結果に依存せずにチャンバ状態を推定し、予防保守手順後のチャンバの健全性及び回復に関する定量的情報を提供し、人工パラメータ調整によるチャンバ状態のシミュレーションを可能にする、様々な実施形態の方法及びシステムを提供することにより、既存技術のこれらの欠点及びその他の欠点に対処する。幾つかの実施形態では、本開示は、チャンバのシーズニングシーケンス中の健全性チェック及び予防措置、及びサンプル試験前の異常なチャンバ状態の早期検出を可能にする。これらの態様及び/又は実施形態の1つ以上により、処理ツール(処理チャンバ等)のダウンタイムが短縮され、製造装置の生産性を向上することができる。更に、チャンバセンサ又は光発スペクトル(OES)を使用して、MLモデルに基づいて処理パラメータを修正することが可能である。処理パラメータの修正により、チャンバは、完全なシーズニング及び計測測定によるチャンバ状態の完全な検証を待つことなく、はるかに迅速に生産に戻ることができる。
【0017】
発光スペクトル(OES)、反射率スペクトル(例えば、終点検出干渉法(IEP)等)、及びチャンバセンサデータ(例えば、温度、圧力、高周波(RF)電力、プラズマ状態、真空状態等)をチャンバの状態の指標にすることができる。チャンバの状態は、PM以降、コールドの場合に、更にチャンバがシーズニングされた後でも変化する。これらの変化により、同じレシピが使用された場合でも処理結果(例えば、エッチング結果等)が変化する。様々な処理結果(例えば、歩留まり、電気測定、計測データ等)を処理して、モデルのトレーニングに適切なラベルを特定することができる。関連するOES及びチャンバセンサデータを伴うチャンバ状態ラベル(例えば、チャンバ状態メトリクス)は、機械学習モデルのトレーニングデータとして使用することができる。幾つかの実施形態では、機械学習タイプは、ニューラルネットワークを含むことができ、及び/又はロジスティック回帰及び多層パーセプトロンを含むことができる。モデルがトレーニング、検証、テストされた後、予測エンジンに適用することができる。エンジンは、インサイチュのOESスペクトルとセンサデータを取得し、チャンバの状態を予測する。現在及び/又は将来のウエハ処理に最適なチャンバパラメータを更に改訂/提案することができる。
【0018】
基板(例えば、生産ロットからの)の処理結果(例えば、プロセス歩留まり、電気測定、計測データ等)を利用して、モデルの性能を調べることができる。結果が満足できない場合は、チャンバを検査、テストし、改善することができる。結果が満足できない場合、又は新しいロットの実行で新しいチャンバ条件が特定/発見された場合(例えば、より完全なチャンバ条件に対応するため)、更なるトレーニングを実施することができる。
【0019】
例示的な実施形態では、方法は、現在の処理の処理パラメータのセットに従って基板を処理する処理チャンバの環境の状態を示すチャンバデータを含むセンサデータを受信する処理デバイスを含む。更に、チャンバデータは、処理チャンバ内に配置されたプラズマの発光スペクトル(OES)測定を示すスペクトルデータを含む。処理チャンバは、現在の処理の処理パラメータのセットに従って基板を処理する。更に、この方法は、機械学習モデルへの入力としてセンサデータを使用することを含む。更に、この方法は、機械学習モデルの1つ以上の出力を取得することを含む。1つ以上の出力は、1つ以上のチャンバ状態メトリクスを示す。更に、この方法は、1つ以上のチャンバ状態メトリクスに基づいて処理チャンバの回復状態を決定することを含み、回復状態は、予防保守手順の後に実行されるチャンバ回復処理に関連付けられる。更に、この方法は、処理チャンバの回復状態に基づいて処理チャンバの性能を変更することを含む。例えば、現在の基板又は将来の基板の処理パラメータは、処理チャンバの変更に従って処理又は更に処理することができる。
【0020】
例示的な実施形態では、チャンバ回復手順における処理チャンバの状態を決定するための機械学習モデルをトレーニングする方法が提供される。この方法は、機械学習モデルのトレーニングデータを生成することを含む。トレーニングデータを生成することは、履歴チャンバデータを含む履歴センサデータを有する第1トレーニング入力を識別することを含む。履歴チャンバデータは、以前のプロセスに従って以前の基板を処理した第2処理チャンバの環境の状態を示す。更に、センサデータには、以前の処理に従って以前の基板を処理した第2処理チャンバ内に配置された以前のプラズマの発光スペクトル(OES)測定を示す履歴スペクトルデータも含まれる。更に、トレーニングデータを生成することは、第1トレーニング入力の第1目標出力を特定することを含む。第1目標出力には、以前のプロセスに従って第2処理チャンバを使用して処理された以前の基板の処理結果測定を含む履歴処理結果データが含まれる。更に、この方法は、第1トレーニング入力を含むトレーニング入力のセットと、第1目標出力を含む目標出力のセットに基づいて機械学習モデルをトレーニングするためのトレーニングデータを提供することを含む。
【0021】
幾つかの実施形態では、トレーニング済み機械学習モデルは、新しいプロセスに従って新しい基板を処理する新しい処理チャンバの新しい環境の新しい状態を示す新しいチャンバデータと、新しい入力に基づいて新しい出力を生成する新しい処理に従って、新しい基板を処理する新しい処理チャンバ内に配置された新しいプラズマの発光スペクトル(OES)測定を示す新しいスペクトルデータとを有する新しいセンサデータを有する新しい入力を受信することである。新しい出力は、予防保守手順の後に実行されるチャンバ回復処理に関連する回復ステータスに対応するチャンバ状態メトリックを示す。
【0022】
例示的な実施形態では、非一時的なコンピュータ可読媒体は、処理装置により実行されると、処理装置にアクションを実行させる命令を含む。実行されるアクションには、現在の処理の処理パラメータのセットに従って基板を処理する処理チャンバの環境の状態を示すチャンバデータを含むセンサデータを受信することが含まれる。例えば、処理チャンバは、チャンバ回復処理の一部として、1つ以上のシーズニングウエハを処理している場合がある。更に、チャンバデータは、処理チャンバ内に配置されたプラズマの発光スペクトル(OES)測定を示すスペクトルデータを含む。処理チャンバは、現在の処理の処理パラメータのセットに従って基板を処理する。更に、アクションは、センサデータを機械学習モデルへの入力として使用することを含む。更に、方法は、機械学習モデルの1つ以上の出力を取得することを含む。1つ以上の出力は、1つ以上のチャンバ状態メトリックを示す。更に、アクションは、1つ以上のチャンバ状態メトリックに基づいて処理チャンバの回復状態を決定することを含み、回復状態は、予防保守手順の後に実行されるチャンバ回復処理(例えば、チャンバシーズニング手順)に関連付けられる。更に、アクションは、処理チャンバの回復状態に基づいて、処理チャンバの性能を変更することを含む。例えば、変更は、更新された処理パラメータに従って現在の基板を処理する等、現在の基板処理に関連付けることができる。処理パラメータは、温度、ガス流量、ガス圧、電力、電気バイアス等を含むことができる。他の例では、変更は、現在の基板処理を停止することを含むことができる。他の例では、変更は、将来の基板を処理するために使用されるプロセスレシピを変更することを含むことができる。
【0023】
図1は、本開示の態様による、例示的なシステムアーキテクチャ100を示す。システムアーキテクチャ100は、クライアントデバイス120、製造装置122、計測装置132、予測サーバ112(例えば、予測データを生成するため、モデルアプリケーションを提供するため、知識ベースを使用するため等)、及びデータストア150を含む。予測サーバ112は、予測システム110の一部であってもよい。更に、予測システム110は、サーバマシン170及び180を含むことができる。幾つかの実施形態では、システムアーキテクチャ100は、基板を処理するための製造システム(例えば、
図2の製造システム200等)を含むか、又はその一部であってもよい。追加的又は代替的実施形態では、システムアーキテクチャ100は、チャンバ状態予測システム(例えば、PM手順からのチャンバの回復状態を決定する)を含むか、又はその一部であってもよい。チャンバ状態予測システムに関する更なる詳細は、
図3に関連して提供される。
【0024】
クライアントデバイス120、製造装置122、計測装置132、予測システム110、及び/又はデータストア150のコンポーネントは、ネットワーク140を介して相互に接続することができる。幾つかの実施形態では、ネットワーク140は、クライアントデバイス120に予測サーバ112、データストア150、及びその他の公開されているコンピューティングデバイスへのアクセスを提供するパブリックネットワークである。幾つかの実施形態では、ネットワーク140は、クライアントデバイス120に製造装置122、計測装置132、データストア150、及びその他の私的に利用可能なコンピューティングデバイスへのアクセスを提供するプライベートネットワークである。ネットワーク140には、ワイドエリアネットワーク(WAN)、ローカルエリアネットワーク(LAN)、有線ネットワーク(例えば、イーサネットネットワーク)、無線ネットワーク(例えば、802.11ネットワーク又はWi-Fiネットワーク)、セルラーネットワーク(例えば、ロングタームエボルーション(LTE)ネットワーク)、ルータ、ハブ、スイッチ、サーバコンピュータ、クラウドコンピューティングネットワーク、及び/又はこれらの組み合わせの1つ以上が含まれる。
【0025】
クライアントデバイス120には、パーソナルコンピュータ(PC)、ラップトップ、携帯電話、スマートフォン、タブレットコンピュータ、ネットブックコンピュータ、ネットワーク接続テレビ(「スマートTV」)、ネットワーク接続メディアプレーヤー(例えば、ブルーレイプレーヤー)、セットトップボックス、オーバーザトップ(OTT)ストリーミングデバイス、オペレータボックス等のコンピューティングデバイスが含まれる。
【0026】
製造装置122は、レシピに従って、又は一定期間にわたって実行して製品を製造することができる。幾つかの実施形態では、製造装置122は、基板に対して異なる機能を実行するように構成された1つ以上のステーション(例えば、処理チャンバ、搬送チャンバ、ロードロック等)を含むプロセスツールを含むか、又はその一部であることができる。幾つかの実施形態では、製造装置122は、製造装置122で基板に対してプロセスを実行する処理チャンバのチャンバ状態(例えば、チャンバ状態メトリック)を決定するために使用されるデータを収集するように構成されたチャンバ状態装置124を更に含むことができる。チャンバの状態とは、PM手順の実行後の回復処理(例えば、チャンバシーズニング手順)における処理チャンバの状態を意味することができる。チャンバ状態装置124は、基板処理中に基板の表面のプロファイルの1つ以上の部分に関連するスペクトルデータ(例えば、OES又は反射率測定スペクトル)を収集及び/又は生成するように構成された1つ以上のコンポーネントを含むことができる。スペクトルデータとは、検出された波の各波長におけるエネルギー波の強度(即ち、エネルギーの強さ又は量)に関連付けられたデータを意味する。
【0027】
幾つかの実施形態では、チャンバ状態装置124は、光源からの入射光を基板の表面に向け、基板表面からの反射光を光検出コンポーネントに伝送するように構成された光ファイバ束及びコリメータアセンブリを含むことができる。チャンバ状態装置124に結合された処理装置(例えば、プロセスツールのシステムコントローラ)は、光検出コンポーネントに伝送された反射光及び/又は処理チャンバ内で放出されたプラズマのOESに関連するスペクトルデータに基づいて、基板プロファイルのスペクトルデータを生成することができる。他の又は同様の実施形態では、チャンバ状態装置124は、基板プロファイルに関連するスペクトルデータを生成するように構成された任意のセンサを含むことができる。このようなセンサには、反射率測定センサ、エリプソメトリセンサ、熱スペクトルセンサ、静電容量センサ等が含まれる。製造装置122及びチャンバ状態装置124に関する更なる詳細は、各々、
図2及び
図5に関連して説明される。
【0028】
幾つかの実施形態では、製造装置122の1つ以上のステーションは、製造装置122に関連するセンサデータを生成及び/又は収集するように構成されたセンサを含むことができる。センサデータは、温度(ヒータ温度等)、空間(SP)、圧力、高周波無線周波数(HFRF)、静電チャック(ESC)の電圧、電流、流量、電力、電圧等の1つ以上の値を含むことができる。センサデータは、製造装置122の設定又はコンポーネント(サイズ、タイプ等)等のハードウェアパラメータ、又は製造装置122の処理パラメータ等の製造パラメータに関連付けられるか、又は製造パラメータを示すことができる。センサデータは、製造装置122が基板処理を実行している間に提供することができる。センサデータは、基板毎に異なる場合がある。
【0029】
幾つかの実施形態では、製造装置122は計測装置126を含むことができる。計測装置126は、製造装置122により処理される基板に関連する計測データを生成するように構成することができる。計測データは、膜特性データ(例えば、ウエハ空間膜特性)、寸法(例えば、厚さ、高さ等)、誘電率、ドーパント濃度、密度、欠陥等の1つ以上の値を含むことができる。幾つかの実施形態では、計測データは、更に、1つ以上の表面プロファイル特性データ(例えば、エッチング速度、エッチング速度の均一性、基板の表面に含まれる1つ以上のフィーチャの臨界寸法、基板の表面全体に亘る臨界寸法の均一性、エッジ配置エラー等)の値を含むことができる。計測データは、完成品又は半完成品のものであってもよい。計測データは、基板毎に異なる場合がある。
【0030】
計測装置126は、基板処理の前又は後に基板に関連する計測データを生成するように構成することができる。計測装置126は、製造装置122のプロセスツールのステーションと統合することができる。幾つかの実施形態では、計測装置126は、真空環境下で維持されるプロセスツールのステーション(例えば、処理チャンバ、搬送チャンバ等)に結合されるか、又はその一部であってもよい。このような計測装置126は統合計測装置128と称される。従って、基板は、真空環境にある間に統合計測装置128により測定することができる。例えば、基板に対して基板処理(例えば、エッチング処理、堆積処理等)を実行した後、処理された基板を真空環境から取り出すことなく、統合計測装置128により処理された基板の計測データを生成することができる。他の又は同様の実施形態では、計測装置126は、真空環境下で維持されないプロセスツールステーション(例えば、ファクトリインターフェイスモジュール等)に結合されるか、又はその一部であってもよい。このような計測装置126は、インライン計測装置130と称される。従って、基板は、真空環境外でインライン計測装置130により測定される。
【0031】
計測装置126に加えて、又は計測装置126の代わりに、システムアーキテクチャ100は、計測装置132を含むことができる。計測装置132は、製造装置122とは別個(即ち、外部)の計測測定デバイスを含むことができる。例えば、計測装置132は、製造装置122のいかなるステーションとも接続されない独立型の機器であってもよい。計測装置132を使用して基板の測定値を取得するために、製造システムのユーザ(例えば、エンジニア、オペレータ)は、製造装置122で処理された基板を製造装置122から取り出し、計測のため計測装置132に搬送することができる。幾つかの実施形態では、計測装置132は、基板に対して生成された計測データを、ネットワーク140を介して計測装置132に結合されたクライアントデバイス120に搬送することができる(例えば、オペレータ又はエンジニア等の製造ユーザへの提示のために)。他の又は同様の実施形態では、製造システムのユーザは、計測装置132から基板の計測データを取得することができ、クライアントデバイス120のグラフィカルユーザインターフェース(GUI)を介してシステムアーキテクチャに計測データを提供することができる。
【0032】
データストア150は、メモリ(例えば、ランダムアクセスメモリ)、ドライブ(例えば、ハードドライブ、フラッシュドライブ)、データベースシステム、又はデータを格納することができる他の種類のコンポーネント又はデバイスであってもよい。データストア150は、複数のコンピューティングデバイス(例えば、複数のサーバコンピュータ)にスパンすることができる複数のストレージコンポーネント(例えば、複数のドライブ又は複数のデータベース)を含むことができる。データストア150は、スペクトルデータ、非スペクトルデータ(例えば、センサデータ)、計測データ、予測データ等を格納することができる。スペクトルデータは、履歴スペクトルデータ(例えば、製造装置122又はネットワーク140を介してデータストア150に結合された他の製造装置で処理された以前の基板に対して生成されたスペクトルデータ)及び/又は現在のスペクトル(製造装置122で処理されている現在の基板に対して生成されるスペクトルデータ)を含むことができる。現在のスペクトルデータは、予測データを生成されするためのデータとなることができる。幾つかの実施形態では、計測データは、履歴計測データ(例えば、製造装置122又は他の製造装置で処理された以前の基板の計測測定値)を含むことができる。また、データストア150は、製造システムで処理されている基板に関連するコンテキストデータ(例えば、レシピ名、レシピステップ番号、予防保守インジケータ、オペレータ等)を格納することができる。
【0033】
データストア150の1つ以上の部分は、製造システムのユーザがアクセスできないデータを格納するように構成することができる。幾つかの実施形態では、データストア150に格納されているすべてのデータは、製造システムのユーザがアクセスできないようにすることができる。他の又は同様の実施形態では、データストア150に格納されているデータの一部はユーザがアクセスできないが、データストア150に格納されているデータの他の部分はユーザがアクセスすることができる。幾つかの実施形態では、データストア150に格納されているアクセスできないデータは、ユーザには知られていない暗号化メカニズムを使用して暗号化される(例えば、データは秘密の暗号化キーを使用して暗号化される)。他の又は同様の実施形態では、データストア150は複数のデータストアを含むことができ、ユーザがアクセスできないデータは第1のデータストアに格納され、ユーザがアクセスすることができるデータは第2のデータストアに格納される。
【0034】
幾つかの実施形態では、予測システム110は、サーバマシン170及びサーバマシン180を含む。サーバマシン170には、機械学習モデル190又は機械学習モデル190のセットをトレーニング、検証、及び/又はテストするためのトレーニングデータセット(例えば、データ入力のセットと目標出力のセット)を生成することができるトレーニングセットジェネレータ172が含まれる。トレーニングセットジェネレータ172の幾つかの操作については、
図4を参照して以下で詳しく説明される。幾つかの実施形態では、トレーニングセットジェネレータ172は、トレーニングデータをトレーニングセット、検証セット、及びテストセットに分割することができる。
【0035】
サーバマシン180は、トレーニングエンジン182を含むことができる。エンジンとは、ハードウェア(例えば、回路、専用ロジック、プログラマブルロジック、マイクロコード、処理デバイス等)、ソフトウェア(例えば、処理デバイス、汎用コンピュータシステム、専用マシンで実行される命令等)、ファームウェア、マイクロコード、又はこれらの組み合わせを意味する。トレーニングエンジン182は、機械学習モデル190又は機械学習モデル190のセットをトレーニングすることができる。機械学習モデル190は、トレーニング入力と対応する目標出力(各々のトレーニング入力に対する正しい回答)を含むトレーニングデータを使用して、トレーニングエンジン182により作成されるモデル成果物を意味する。トレーニングエンジン182は、トレーニング入力を目標出力(予測される回答)にマッピングするパターンをトレーニングデータ内で見つけ、これらのパターンをキャプチャする機械学習モデル190を提供する。機械学習モデル190は、線形回帰モデル、部分最小二乗回帰モデル、ガウス回帰モデル、ランダムフォレストモデル、サポートベクタマシンモデル、ニューラルネットワーク、リッジ回帰モデル等を含むことができる。
【0036】
また、トレーニングエンジン182は、トレーニングセットジェネレータ172からの検証セットの対応するフィーチャセットを使用して、トレーニング済み機械学習モデル190を検証することができる。幾つかの実施形態では、トレーニングエンジン182は、トレーニング済み機械学習モデル190のセットの各々に対して性能評価を割り当てることができる。性能評価は、各々のトレーニングされたモデルの精度、各々のモデルの速度、及び/又は各々のモデルの効率に対応することができる。トレーニングエンジン182は、本明細書に記載の実施形態に従って、予測エンジン114により使用される性能基準を満たす性能評価を有するトレーニング済み機械学習モデル190を選択することができる。トレーニングエンジン182に関する更なる詳細は、
図9に関連して提供される。
【0037】
予測サーバ112には、製造装置122で処理中の現在の基板の一部のスペクトルデータを、トレーニング済み機械学習モデル190への入力として提供し、その入力に対してトレーニング済みモデル190を実行して1つ以上の出力を取得することができる予測エンジン114が含まれる。幾つかの実施形態では、予測エンジン114により実行されるトレーニング済みモデル190は、前述のように、性能基準を満たす性能評価を有するものとしてトレーニングエンジン182により選択される。
図8に関連して更に説明されるように、幾つかの実施形態では、予測エンジン114は、トレーニング済み機械学習モデル190の出力からデータを抽出し、その信頼性データを使用して、製造装置122の処理チャンバの状態(チャンバ状態メトリック等)を決定することもできる。
【0038】
信頼性データは、チャンバ状態メトリックが、現在のスペクトルデータに関連付けられた処理チャンバの1つ以上の特性に対応するという信頼度のレベルを含むか、又は示すことができる。一例では、信頼レベルは0と1の間の実数であり、0はチャンバ状態メトリックが現在のスペクトルデータに関連する処理チャンバの1つ以上の特性に対応するという信頼がないことを示し、1は、チャンバ状態メトリックが現在のスペクトルデータに関連する処理チャンバの1つ以上の特性に対応するという絶対的な信頼を示す。幾つかの実施形態では、チャンバ状態予測システムは、インライン計測装置130、統合計測装置130、及び/又は外部計測装置132を使用する代わりに、予測システム110を使用して、製造システム122で基板を処理する処理チャンバのチャンバ状態メトリクスを提供し、測定された計測値を決定することができる。チャンバ状態予測システムは、本明細書に提供される実施形態に従って、PM手順(例えば、チャンバ洗浄)の後に実行される回復処理(例えば、チャンバシーズニング)に関連する処理チャンバの状態を決定することができる。
【0039】
幾つかの他の実施形態では、予測サーバ112と同様にサーバマシン170及び180の機能は、より多くの又はより少ない数のマシンにより提供することができることに留意すべきであえる。例えば、幾つかの実施形態では、サーバマシン170及び180を単一のマシンに統合することができるが、他の幾つかの又は類似の実施形態では、サーバマシン170及び180、及び予測サーバ112を単一のマシンに統合することができる。一般に、一実施形態においてサーバマシン170、サーバマシン180、及び/又は予測サーバ112により実行されるものとして説明されている機能は、クライアントデバイス120上でも実行することができる。更に、特定のコンポーネントに起因する機能は、連携して動作する異なる又は複数のコンポーネントにより実行することもできる。サーバマシン170、180及び予測サーバ112の機能のグループ化に関する更なる詳細は、
図3に関連して提供される。
【0040】
実施形態では、「ユーザ」は単一の個人として表すことができる。しかしながら、本開示の他の実施形態は、複数のユーザ及び/又は自動ソースにより制御されるエンティティである「ユーザ」を包含する。例えば、管理者のグループとして組織化された一連の個々のユーザを「ユーザ」とみなすことができる。
【0041】
図2は、本発明の態様による製造システム200の一例の上面概略図である。製造システム200は、基板202に対して1つ以上のプロセスを実行することができる。基板202は、本発明の態様による、電子デバイス又は回路部品を製造するのに適した、任意の適切な剛性、固定寸法、平面物品(例えば、シリコン含有ディスク又はウエハ、パターン化ウエハ、ガラス板等)であってもよい。幾つかの実施形態では、製造システム200は、
図1に関連して説明された実施形態に従って、システムアーキテクチャ100を含むか、又はその一部とすることができる。
【0042】
製造システム200は、プロセスツール204と、プロセスツール204に結合されたファクトリインターフェイス206を含むことができる。プロセスツール204は、内部に搬送チャンバ210を備えたハウジング208を含むことができる。搬送チャンバ210は、その周囲に配置され、搬送チャンバ210に結合された1つ以上の処理チャンバ(プロセスチャンバとも称される)214、216、218を含むことができる。処理チャンバ214、216、218は、各々のポート(例えば、スリットバルブ等)を介して搬送チャンバ210に結合することができる。また、搬送チャンバ210は、処理チャンバ214、216、218、ロードロック220等の間で基板202を搬送するように構成された搬送チャンバロボット212も含むことができる。搬送チャンバロボット212は1つ以上のアームを含むことができ、各々のアームは、各々のアームの端に1つ以上のエンドエフェクタを含む。エンドエフェクタは、ウエハ等の特定のオブジェクトを処理するように構成することができる。
【0043】
また、幾つかの実施形態では、搬送チャンバ210は、
図1に関連して説明された統合計測装置128等の計測装置を含むこともできる。統合計測装置128は、基板が真空環境に維持されている間に、基板処理の前又は最中に基板202に関連する計測データを生成するように構成することができる。
図2に示されるように、統合計測装置128は、搬送チャンバ210内に配置することができる。他の又は同様の実施形態では、統合計測装置128を搬送チャンバ210に結合することができる。統合計測装置128が搬送チャンバ210内に配置されるか又はそれに結合されると、基板202を真空環境から取り出す(例えば、ファクトリインターフェース206に移す)ことなく、基板202に関連する計測データを生成することができる。
【0044】
処理チャンバ214、216、218は、基板202に対して任意の数のプロセスを実行するように適合させることができる。各々の処理チャンバ214、216、218では、同じ又は異なる基板処理を行うことができる。基板処理には、原子層堆積(ALD)、物理気相堆積(PVD)、化学気相堆積(CVD)、エッチング、アニーリング、硬化、前洗浄、金属又は金属酸化物の除去等が含まれる。他の処理も、基板上で実行することができる。幾つかの実施形態では、
図1に関連して説明されたチャンバ状態装置124等のチャンバ状態装置は、処理チャンバ214、216、218に結合されるか、又は処理チャンバ214、216、218内に配置されることができる。チャンバ状態装置124は、スペクトルデータを収集するように構成することができる。スペクトルデータは、処理チャンバ214、216、218のプラズマに関連するOESデータ、及び基板処理中の基板の表面のプロファイル用の反射率データを含むことができる。チャンバ状態装置124(例えば、システムコントローラ228)に結合された処理デバイスは、収集されたスペクトルデータに基づいて、エッチング処理を実行している処理チャンバ214、216、218のチャンバ状態メトリクス(例えば、チャンバが正常又は異常な状態で動作しているかどうかを示す)を決定することができる。幾つかの実施形態では、チャンバ状態装置124の1つ以上のコンポーネントは、
図5に関連して説明されるコンポーネント(例えば、光ファイバ束、コリメータアセンブリ等)を含むことができる。他の又は同様の実施形態では、チャンバ状態装置124は、処理チャンバ214、216、218の内部又は外部に配置され、基板処理の前、後、又は最中に基板202の一部及び/又は処理チャンバ214、216、218内の環境のスペクトルデータを収集するように構成された1つ以上のセンサを含むことができる。
【0045】
また、ロードロック220は、ハウジング208及び搬送チャンバ210にも結合することができる。ロードロック220は、片側で搬送チャンバ210と、もう片側でファクトリインタフェース206とインタフェースし、結合するように構成することができる。ロードロック220は、幾つかの実施形態では、真空環境(基板を搬送チャンバ210との間で搬送することができる環境)から大気圧(又は大気圧に近い)の不活性ガス環境(基板をファクトリインタフェース206との間で搬送することができる環境)に変更することができる環境制御された雰囲気を有することができる。
【0046】
ファクトリインターフェース206は、機器フロントエンドモジュール(EFEM)等の任意の適切なエンクロージャであってもよい。ファクトリインターフェース206は、ファクトリインターフェース206の様々なロードポート224にドッキングされた基板キャリア222(例えば、フロントオープニングユニファイドポッド(FOUP))から基板202を受け取るように構成することができる。ファクトリインターフェースロボット226(点線で表示)は、基板キャリア(コンテナとも称される)222とロードロック220の間で基板202を搬送するように構成することができる。他の及び/又は同様の実施形態では、ファクトリインターフェース206は、交換部品保管コンテナ222から交換部品を受け取るように構成することができる。
【0047】
幾つかの実施形態では、製造システム200は、真空環境の外側で基板202に関連する計測データを生成するように構成された計測装置を含むことができる。例えば、
図2に示されるように、統合計測装置128は、処理チャンバ(例えば、処理チャンバ214、216、及び/又は218)に結合することができる。統合計測装置128は、基板202が真空環境に置かれる(例えば、ロードロック220に搬送される)前、及び/又は基板202が真空環境から取り出された(例えば、ロードロック220から取り出された)後に、基板202に関連する計測データを生成するように構成することができる。
図2はファクトリインターフェース206に結合されたインライン計測装置130を示すが、インライン計測装置130は、真空環境の外側にあるプロセスツール204の任意の部分に結合することができる(例えば、ロードロック220に結合される等)。
【0048】
また、製造システム200は、製造システム200に関する情報をユーザ(例えば、オペレータ)に提供するように構成されたクライアントデバイス(例えば、
図1のクライアントデバイス120)に接続することもできる。幾つかの実施形態では、クライアントデバイスは、1つ以上のグラフィカルユーザインターフェース(GUI)を介して、製造システム200のユーザに情報を提供することができる。例えば、クライアントデバイスは、GUIを介して、処理チャンバ214、216、218の(例えば、基板処理の実行中の)1つ以上のチャンバ状態メトリクスに関する情報を提供することができる。
【0049】
また、製造システム200は、システムコントローラ228を含むか、システムコントローラ228に結合することもできる。システムコントローラ228は、パーソナルコンピュータ、サーバコンピュータ、プログラマブルロジックコントローラ(PLC)、マイクロコントローラ等のコンピューティングデバイスであってもよく、及び/又はこれらを含むことができる。システムコントローラ228は1つ以上の処理デバイスを含むことができ、これらの処理デバイスは、マイクロプロセッサ、中央処理装置等の汎用処理デバイスとすることができる。より具体的には、処理装置は、複合命令セットコンピューティング(CISC)マイクロプロセッサ、縮小命令セットコンピューティング(RISC)マイクロプロセッサ、超長命令ワード(VLIW)マイクロプロセッサ、又は他の命令セットを実行するプロセッサ、若しくは命令セットの組み合わせを実行するプロセッサであってもよい。また、処理デバイスは、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタルシグナルプロセッサ(DSP)、ネットワークプロセッサ等の1つ以上の専用処理デバイスであってもよい。システムコントローラ228は、データ記憶デバイス(例えば、1つ以上のディスクドライブ及び/又はソリッドステートドライブ)、メインメモリ、スタティックメモリ、ネットワークインターフェース、及び/又は他のコンポーネントを含むことができる。システムコントローラ228は、本明細書に記載される方法及び/又は実施形態の任意の1つ以上を実行するための命令を実行することができる。幾つかの実施形態では、システムコントローラ228は、プロセスレシピに従って製造システム300で1つ以上のオペレーションを実行するための命令を実行することができる。命令は、メインメモリ、スタティックメモリ、二次記憶装置、及び/又は処理デバイス(命令の実行中)を含むことができるコンピュータ可読記憶媒体に記憶することができる。
【0050】
幾つかの実施形態では、システムコントローラ228は、製造システム200の様々な部分(例えば、処理チャンバ214、216、218、搬送チャンバ210、ロードロック220等)上又はその中に含まれるセンサ又は他のコンポーネント(例えば、チャンバ状態装置124)からデータを受信することができる。システムコントローラ228により受信されるデータは、基板202の一部に関するスペクトルデータ及び/又は非スペクトルデータを含むことができる。本説明の目的上、システムコントローラ228は、処理チャンバ214、216、218に結合されるか、又は内部に配置されるチャンバ状態装置124からデータを受信するものとして説明される。しかしながら、システムコントローラ228は、本明細書に記載の実施形態に従って、製造システム200の任意の部分からデータを受信することができ、その部分から受信したデータを使用することができる。例示的な一例では、システムコントローラ228は、処理チャンバ214、216、218における基板処理の前、後、又は最中に、処理チャンバ214、216、218に結合されたチャンバ状態装置124からスペクトルデータを受信することができる。製造システム200のチャンバ状態装置124又は他のセンサから受信されたデータはデータストア250に記憶することができる。データストア250は、システムコントローラ228内のコンポーネントとして含まれることができ、又はシステムコントローラ228とは別個のコンポーネントであってもよい。幾つかの実施形態では、データストア250は、システムコントローラ228内のコンポーネントとして含まれることができる。250は、
図1に関連して説明されたように、データストア150の一部であるか、又はその一部を含むことができる。
【0051】
図3は、本発明の態様による、処理チャンバ(例えば、基板処理を実行する)のチャンバ状態予測のための例示的なシステムアーキテクチャ300を示す。幾つかの実施形態では、チャンバ状態予測システム300は、システムアーキテクチャ100及び/又は製造システム200の1つ以上のコンポーネントを含むか、又はその一部であってもよい。チャンバ状態予測システム300は、製造装置122(例えば、チャンバ状態装置124)、計測装置130、サーバマシン320、及びサーバマシン350の1つ以上のコンポーネントを含むことができる。
【0052】
前述したように、製造装置122は、レシピに従って製品を生産するか、又は一定期間にわたって処理を実行することができる。製造装置122は、基板処理レシピに従って基板の基板処理を実行するように構成された処理チャンバ310を含むことができる。幾つかの実施形態では、処理チャンバ310は、
図2に関連して説明された処理チャンバ214、218、218のいずれであってもよい。また、製造装置122は、本明細書に記載されるように、チャンバ状態装置124を含むこともできる。チャンバ状態装置124を処理チャンバ310に結合又は処理チャンバ310内に配置することができ、基板処理レシピのステップの終点を検出するために使用されるスペクトルデータを収集することができる。また、幾つかの実施形態では、製造装置122は、本明細書に記載されるように、統合計測装置128を含むこともできる。統合計測装置128は、基板処理が完了する前又は後に、基板に関連する計測データを生成するように構成することができる。
【0053】
製造装置122は、サーバマシン320に接続することができる。サーバマシン320は、処理デバイス322及び/又はデータストア332を含むことができる。幾つかの実施形態では、処理デバイス322は、製造装置122でオペレーションを実行するために1つ以上の命令を実行するように構成することができる。例えば、処理デバイス322には、
図2で説明されたシステムコントローラ228を含めたり、その一部にしたりすることができる。幾つかの実施形態では、データストア332には、データストア150及び/又はデータストア250を含めたり、その一部にしたりできる。
【0054】
処理デバイス322は、製造装置122の1つ以上のコンポーネントからデータを受信するように構成することができる(即ち、ネットワークを介して)。例えば、処理デバイス322は、処理チャンバ310での基板の基板処理中にチャンバ状態装置124により収集されたスペクトルデータ336(例えば、チャンバ内に配置されたプラズマのOESデータ、処理チャンバ内に配置された基板の表面から反射された光の反射パターンに対応する光反射率測定)を受信することができる。他の例では、処理デバイス322は、基板の基板処理の前、及び/又は後に統合計測装置128により収集された計測データ338を受信することができる。計測データ338は、統合計測装置128により基板に対して生成された計測測定値を含むことができる。幾つかの実施形態では、処理デバイス322は、受信したスペクトルデータ及び/又は受信した計測データ338をデータストア332に保存することができる。
【0055】
幾つかの実施形態では、処理デバイス322は、他の計測装置から計測データ338を受信することができる。例えば、幾つかの実施形態では、サーバ320をインライン計測装置130に(即ち、ネットワークを介して)接続することができる。基板は、本明細書で説明されるように、処理チャンバ210から取り出され、インライン計測装置130に搬送される。インライン計測装置130は、基板の計測データ338を生成し、生成された計測データ338をネットワークを介して処理デバイス322に送信することができる。他の例では、基板は、製造装置122から取り出され、
図1に関連して説明された外部計測装置132等の外部計測装置に搬送されることができる。クライアントデバイス120等のクライアントデバイスを、サーバ320に(即ち、ネットワークを介して)接続することができる。幾つかの実施形態では、製造装置122のユーザは、外部計測装置132を使用して計測データ338を取得し、取得した計測データ338をクライアントデバイス120のGUIを介して提供することができる。クライアントデバイス120は、ネットワークを介して計測データ338を送信することができる。追加的又は代替的実施形態では、外部計測装置132をネットワークを介してサーバ320に接続し、外部計測装置132が計測データ338を処理デバイス352に直接送信することができる。
【0056】
処理デバイス352は、予測エンジン328及びチャンバ条件エンジン330を含むことができる。予測エンジン328は、基板処理中に基板について収集されたスペクトルデータ336に基づいて計測測定値を提供するように構成することができる。例えば、予測エンジン328は、処理チャンバ310で現在の基板に対して実行されている現在の処理について収集されたスペクトルデータ336を、トレーニング済み機械学習モデル334への入力として提供することができる。予測エンジン328は、機械学習モデル334の出力として、現在の基板に対応する計測測定値の表示を含む予測計測データ338を取得することができる。幾つかの実施形態では、予測エンジン328は、
図1に関連して説明された予測エンジン114に対応することができる。
【0057】
処理デバイス322のチャンバメトリックエンジン330は、基板処理を実行する処理チャンバ310のチャンバ状態を決定するように構成することができる。チャンバ状態エンジン330は、現在の基板を処理している処理チャンバ310の1つ以上のチャンバ状態メトリクスを予測エンジン328から取得又は決定することができる。チャンバ状態メトリクスは、予測エンジン328へ入力として識別される組み合わせ、フィーチャ、又はパターンに関連付けられた値の選択を含むことができる。例えば、第1の値は、所与の時間における特定のスペクトルデータとセンサデータの組み合わせを表示することができる。他の例では、他の値を、予測エンジン328により決定及び/又は識別される1つ以上の変数の組み合わせの勾配に関連付けることができる。幾つかの実施形態では、チャンバ状態メトリックは、センサデータに存在する特定のデータの組み合わせの相関、相関、パターン、及び/又は関係の相関を示す一連の値(例えば、ベクトル、行列等)を含むことができる。例えば、チャンバ状態メトリックは、データ内の特定のフィーチャの有無を示すバイナリ値を含むフィーチャベクトルを含むことができる。
【0058】
チャンバ状態メトリクスは、既知のパターン及び/又はチャンバ状態メトリクスの組み合わせ(例えば、目標チャンバ状態メトリクス)と比較することができる。目標チャンバ状態メトリクスは、回復処理の1つ以上の段階(例えば、シーズニング手順)に関連付けることができる。チャンバ状態メトリクスが1つ以上のチャンバ状態閾値(例えば、処理チャンバの回復処理に関連する状態)を満たしていると決定したことに応じて、チャンバ状態エンジン330は、処理チャンバ310の性能を変更することができる(例えば、処理パラメータを変更するコマンドを含む命令を生成することにより)。チャンバ状態閾値は、チャンバ状態メトリクスにより示される値の特定の組み合わせであってもよい。例えば、チャンバ状態エンジン330は、予測エンジン328により受信されたチャンバ状態メトリクス間の識別されたパターン、フィーチャ、相関関係、関係に基づいて、処理チャンバ内に1つ以上のチャンバ状態が存在すると決定することに基づいて、受信したセンサデータに関連付けられた最小プロセスレシピへの更新を決定することができる。例えば、変更は、更新された処理パラメータに従って現在の基板を処理する等、現在の基板処理に関連付けることができる。他の例では、変更には、現在の基板処理の停止が含まれる。他の例では、変更には、将来の基板を処理するために使用されるプロセスレシピの変更を含めることができる。処理デバイス322は製造装置122に命令を送信して、処理チャンバの特定されたフォーマンスに変更を加えることができる。例えば、命令は、更新された処理パラメータのセットに従って基板の処理を継続するように処理チャンバに命ずることができる。他の例では、命令には、処理チャンバ内の基板処理を停止することを含めることができる。幾つかの実施形態では、目標チャンバメトリックは、PM回復手順の段階に関連付けられる。現在の処理に従って基板を処理する処理チャンバのチャンバ状態を予測することに関連する詳細は、
図7で提供される。
【0059】
図3に示されるように、幾つかの実施形態では、処理デバイス322は、トレーニングセットジェネレータ324及び/又はトレーニングエンジン326を含むことができる。幾つかの実施形態では、トレーニングセットジェネレータ324は、
図1に関連して説明されたトレーニングセットジェネレータ172に対応することができ、及び/又はトレーニングエンジン326はトレーニングエンジン182に対応することができる。トレーニングセットジェネレータ324は、機械学習モデル334又は機械学習モデルのセット334をトレーニングするためのトレーニングセット340を生成するように構成することができる。例えば、トレーニングセットジェネレータ324は、以前の基板に関連付けられた履歴スペクトルデータ336に基づいてトレーニング入力を生成することができる。幾つかの実施形態では、トレーニングセットジェネレータ324は、データストア332から履歴スペクトルデータ336を取得して、トレーニング入力を生成することができる。トレーニングセットジェネレータ324は、以前の基板について得られた履歴計測データ338に基づいて、トレーニング入力に対するチャンバ状態(例えば、チャンバ状態メトリクス)を示す目標出力を生成することができる。上述したように、履歴計測データ338は、インライン計測装置130、統合計測装置128、又は外部計測装置132により生成することができる。トレーニングセットジェネレータ324は、生成されたトレーニング入力及び生成された目標出力をトレーニングセット340に含むことができる。トレーニングセット340の生成に関する詳細は、
図4に関連して提供される。
【0060】
トレーニングエンジン326は、機械学習モデル334又は機械学習モデルのセット334をトレーニング、検証、及び/又はテストするように構成することができる。トレーニングエンジン326は、機械学習モデル334をトレーニングし、トレーニング済み機械学習モデルをデータストア332に保存するためのトレーニングセット340を提供することができる。幾つかの実施形態では、トレーニングエンジン326は、検証セット342を使用して、トレーニング済み機械学習モデル334を検証することができる。検証セット342は、スペクトルデータ336と、以前の基板(即ち、処理チャンバ310又は他の処理チャンバで処理された)について取得された計測データ338に対応するチャンバ状態メトリクスを含むことができる。トレーニングセットジェネレータ324及び/又はトレーニングエンジン326は、以前の基板について取得された履歴スペクトルデータ336及び履歴計測データ338に基づいて検証セット342を生成することができる。幾つかの実施形態では、検証セット342は、トレーニングセット340に含まれる履歴スペクトルデータ336及び履歴計測データ338とは異なる履歴スペクトルデータ336及び履歴計測データ338を含むことができる。
【0061】
トレーニングエンジン326は、トレーニング済み機械学習モデル334への入力として以前の基板のスペクトルデータ336(及び幾つかの実施形態ではセンサデータ)を提供することができ、トレーニング済みモデル334の1つ以上の出力から、以前の基板を処理する処理チャンバのチャンバ状態メトリックを抽出することができる。トレーニングエンジン326は、以前の基板を処理する処理チャンバのチャンバ状態メトリックの精度に基づき、検証セット342に含まれる以前の基板の計測データ338の計測されたチャンバ状態を考慮して、トレーニング済みモデル334に性能スコアを割り当てることができる。性能スコアが性能スコア基準を満たしている(例えば、性能スコアの閾値を超えている)と決定したことに応答して、トレーニングエンジン326は、処理チャンバ310で処理される将来の基板のための将来の計測測定値を提供するために用いられるトレーニング済みモデル334を選択することができる。トレーニング済みモデル334の選択に関する更なる詳細は
図9に関連して提供される。
【0062】
前述のように、幾つかの実施形態では、トレーニングセットジェネレータ324及び/又はトレーニングエンジン326は、サーバ320の処理デバイス322のコンポーネントであってもよい。追加的又は代替的な実施形態では、トレーニングセットジェネレータ324及び/又はトレーニングエンジン326は、サーバ350の処理デバイス352のコンポーネントであってもよい。サーバ350は、製造システム200とは別個のコンピューティングシステムを含むか、その一部であってもよい。前述のように、幾つかの実施形態では、サーバ320は、
図2に関連して説明されたシステムコントローラ228を含むか、その一部であってもよい。このような実施形態では、サーバ350は、システムコントローラ228に結合されている(即ち、ネットワークを介して)が、システムコントローラ228とは別個のコンピューティングシステムを含むか、又はその一部であってもよい。例えば、製造システム200のユーザは、データストア332の1つ以上の部分に格納されているデータ、又は処理デバイス322で実行される1つ以上のプロセスにアクセスできる場合がある。但し、製造システム200のユーザは、データストア354の1つ以上の部分に格納されているデータ、又は処理デバイス352で実行されるプロセスにアクセスできない場合がある。
【0063】
処理デバイス352は、処理デバイス322と同様の方法でトレーニングセットジェネレータ324及び/又はトレーニングエンジン326を実行するように構成することができる。幾つかの実施形態では、サーバ350を、ネットワークを介して製造装置122及び/又はインライン計測装置130に結合することができる。従って、処理デバイス352は、トレーニングセットジェネレータ324及び/又はトレーニングエンジン326により使用される計測データ338に対応するスペクトルデータ336及びチャンバ状態メトリクスを取得することができ、処理デバイス322に関して説明される実施形態に従って、トレーニングセット340及び検証セット342を生成することができる。他の又は同様の実施形態では、サーバ350は、製造装置122及び/又は外部計測装置132に結合されていない。従って、処理デバイス352は、処理デバイス322からスペクトルデータ336及び/又は計測データ338を取得することができる。例えば、処理デバイス322は、前述したように、チャンバ状態装置124からスペクトルデータ336を受信することができる。処理デバイス322は、受信したスペクトルデータ336を処理デバイス352に(即ち、ネットワークを介して)送信することができる。幾つかの実施形態では、処理デバイス352はスペクトルデータ336をデータストア354に保存することができる。幾つかの実施形態では、処理デバイス322は、同様に、基板に関して取得された計測データ338を処理デバイス352に送信することができる。例えば、前述したように、処理デバイス322は、インライン計測装置130、統合計測装置128、及び/又は外部計測装置132から計測データ338を受信することができる。処理デバイス352は、受信した計測データ338を処理デバイス322から送信することができ、幾つかの実施形態では、計測データ338をデータストア354に格納することができる。
【0064】
処理デバイス352のトレーニングセットジェネレータ324は、前述の実施形態に従ってトレーニングセット340を生成することができる。処理デバイス352のトレーニングエンジン326は、前述の実施形態に従って、機械学習モデル334をトレーニング及び/又は検証することができる。幾つかの実施形態では、サーバ350は、製造装置122及び/又はサーバマシン320とは異なる他の製造装置及び/又は他のサーバマシンに結合することができる。本明細書に記載の実施形態に従い、処理デバイス352は、他の製造装置及び/又サーバマシンからスペクトルデータ336及び/又は計測データ338を取得することができる。幾つかの実施形態では、トレーニングセット340及び/又は検証セット342は、処理チャンバ310で処理された基板について取得されたスペクトルデータ336及び計測データ338、及び他の製造システムの処理チャンバで処理された他の基板について取得された他のスペクトルデータ及び計測データに基づいて、生成することができる。
【0065】
トレーニングエンジン326が、処理チャンバ310の将来の基板の将来のスペクトルデータに適用するトレーニング済みモデル334を選択すると、処理デバイス352は、トレーニング済みモデル334を処理デバイス322に送信することができる。予測エンジン328は、前述のように、トレーニング済みモデル334を使用して、処理チャンバ310の将来の基板の計測測定値を提供することができる。
【0066】
図4は、本開示の態様による、機械学習モデルをトレーニングする方法400のフローチャートである。方法400は、ハードウェア(回路、専用ロジック等)、ソフトウェア(汎用コンピュータシステム又は専用マシンで実行されるもの等)、ファームウェア、又はこれらの組み合わせを含むことができる処理ロジックにより実行される。一実施形態では、方法400は、
図1のシステムアーキテクチャ100等のコンピュータシステムにより実行することができる。他の又は同様の実施形態では、方法400の1つ以上のオペレーションは、図示されていない1つ以上の他のマシンにより実行することができる。幾つかの態様では、方法400の1つ以上の操作は、
図3に関連して説明されたサーバマシン320又はサーバマシン350のトレーニングセットジェネレータ324により実行することができる。
【0067】
ブロック410では、処理ロジックはトレーニングセットTを空セット(例:{})に初期化する。ブロック412では、処理ロジックは、製造システムの処理チャンバで処理される基板に関連するスペクトルデータ及び/又はチャンバデータを取得する。幾つかの実施形態では、スペクトルデータ及び/又はチャンバデータは、処理チャンバ内に配置されているか、処理チャンバに結合されている1つ以上のセンサから受信することができる。他の又は同様の実施形態では、スペクトルデータは、処理チャンバ内に配置されているか、又は処理チャンバに結合されているチャンバ状態装置から受信することができる。
【0068】
図4に戻ると、ブロック414では、処理ロジックは基板の計測データを取得する。前述のように、計測データには、膜特性データ(例えば、ウエハ空間膜特性)、寸法(例えば、厚さ、高さ等)、誘電率、ドーパント濃度、密度、欠陥等の1つ以上の値が含まれる。幾つかの実施形態では、計測データには、更に、1つ以上の表面プロファイル特性データ(例えば、エッチング速度、エッチング速度の均一性、基板の表面に含まれる1つ以上のフィーチャの臨界寸法、基板の表面全体に亘る臨界寸法の均一性、エッジ配置エラー等)が含まれる。幾つかの実施形態では、計測測定値は、製造システム200の計測装置(例えば、インライン計測装置130、統合計測装置128等)から受信することができる。例えば、基板処理が完了した後、基板は製造システム200のインライン計測装置130又は統合計測装置130に搬送される。インライン計測装置130又は統合計測装置128は、基板に関連する計測データを生成し、その計測データをネットワークを介して処理ロジックを含むコンピューティングデバイス(例えば、サーバマシン320、サーバマシン350等)に送信することができる。他の又は同様の実施形態では、計測測定値は、本明細書で説明されているように、製造システム200とは別個の計測装置(例えば、外部計測装置132)から受信することができる。
【0069】
ブロック416で、処理ロジックは、ブロック412で基板に対して取得されたスペクトルデータに基づいてトレーニング入力を生成する。幾つかの実施形態では、トレーニング入力は、処理装置及び基板に関して得られたスペクトルデータに基づいて生成される正規化されたスペクトルデータのセット(例えば、本明細書で説明されるOESデータと基板表面反射率データの両方を含む)を含むことができる。正規化されたスペクトルデータのセットには、特定のタイプの計測測定に対応する1つ以上のスペクトルフィーチャを含むことができる。スペクトルフィーチャは、最適な発光測定値と光反射率スペクトル測定値の組み合わせに基づくことができる。トレーニング入力の生成に関する更なる詳細は、
図6に関連して説明される。ブロック418で、処理ロジックは、ブロック414で基板に対して取得された計測データに基づいて目標出力を生成することができる。目標出力は、基板に関連する計測測定値に対応するチャンバ条件メトリクス(計測計測のパターンを示すデータ)に対応することができる。例えば、ブロック414で、処理ロジックは、エッチングプロセス後の基板の表面の1つ以上の部分における膜の厚さを示す計測データを取得することができる。厚さは、チャンバの状態(例えば、回復処理又はコールドチャンバから完全に回復されていないチャンバ)を示す場合がある。処理ロジックは、識別されたチャンバ状態(例えば、異常なチャンバ状態、正常なチャンバ状態、完全に回復していない、完全にシーズニングけされていない等)に対応する目標出力を生成することができる。
【0070】
ブロック420では、処理ロジックが入力/出力マッピングを生成する。入力/出力マッピングは、基板のデータを含むか、基板のデータに基づくトレーニング入力と、トレーニング入力の目標出力を参照する。目標出力は基板の計測測定値を特定し、トレーニング入力は目標出力に関連付けられる(又はマッピングされる)。ブロック422では、処理ロジックが入力/出力マッピングをトレーニングセットTに追加する。
【0071】
ブロック424で、処理ロジックは、トレーニングセットTが機械学習モデルをトレーニングするのに十分な量のトレーニングデータを含むかどうかを決定する。幾つかの実施形態では、トレーニングセットTの十分性は、単にトレーニングセット内の入力/出力マッピングの数に基づいて決定することができるが、他の幾つかの実施形態では、トレーニングセットTの十分性は、入力/出力マッピングの数に加えて、又はその代わりに、1つ以上の他の基準(例えば、トレーニング例の多様性の尺度等)に基づいて決定することができることに留意すべきである。トレーニングセットTに機械学習モデルをトレーニングするのに十分な量のトレーニングデータが含まれていると判断すると、処理ロジックは機械学習モデルをトレーニングするためのトレーニングセットTを提供する。トレーニングセットが機械学習モデルをトレーニングするのに十分な量のトレーニングデータを含んでいないという決定に応答して、方法400はブロック412に戻る。
【0072】
ブロック426で、処理ロジックは、機械学習モデルをトレーニングするためにトレーニングセットTを提供する。幾つかの実施形態では、トレーニングセットTは、トレーニングを実行するためにサーバマシン320及び/又はサーバマシン350のトレーニングエンジン326に提供される。例えば、ニューラルネットワークの場合、所与の入力/出力マッピングの入力値(例えば、以前の基板のスペクトルデータ及び/又はチャンバデータ)がニューラルネットワークに入力され、入力/出力マッピングの出力値がニューラルネットワークの出力ノードに保存される。次いで、ニューラルネットワーク内の接続重みが、学習アルゴリズム(例えば、バックプロパゲーション等)に従って調整され、この手順が、トレーニングセットT内の他の入出力マッピングに対して繰り返される。ブロック426の後、機械学習モデル190は、(例えば、後述する
図8の方法800に従って)将来の基板を処理する将来の処理チャンバのチャンバ条件(例えば、チャンバ条件メトリクス)を提供するために使用することができる。
【0073】
図5は、本発明の態様による、処理チャンバ310に結合されたチャンバ状態装置124の断面概略側面図である。幾つかの実施形態では、処理チャンバ310は、腐食性プラズマ環境が提供されるプロセスに使用することができる。例えば、処理チャンバ310は、プラズマエッチング装置又はプラズマエッチングリアクタ、プラズマクリーナ等のチャンバであってもよい。他の又は同様の実施形態では、処理チャンバ310は、非腐食性環境が提供されるプロセスに使用することができる。例えば、処理チャンバ310は、化学気相堆積(CVD)チャンバ、物理気相堆積(PVD)チャンバ、原子層堆積(ALD)チャンバ、イオンアシスト堆積(IAD)チャンバ、及び他のタイプの処理チャンバとして使用することができる。
【0074】
簡単に言えば、処理チャンバ310は、チャンバ本体502、蓋530及び/又は内部容積506を囲むシャワーヘッド(図示せず)を含む。一般的に、チャンバ本体502は、側壁508及び底部510を含む。シャワーヘッドは、シャワーヘッドベース及びシャワーヘッドガス分配プレートを含むことができる。蓋530及び/又はシャワーヘッドは、チャンバ本体502の側壁508上に支持することができる。蓋530(又はシャワーヘッド)は、処理チャンバ310の内部容積506にアクセスできるように開くことができ、閉じている間は処理チャンバ310を密閉することができる。ガスパネル(図示せず)を処理チャンバ310に結合して、蓋530及びノズル(例えば、シャワーヘッド又は蓋及びノズルの開口部を介して)及び/又はシャワーヘッドを介して、内部容積506にプロセスガス及び/又は洗浄ガスを供給することができる。排気ポート526をチャンバ本体502内に画成することができ、内部容積506をポンプシステム528に結合することができる。ポンプシステム528は、処理チャンバ310の内部容積506を排気し圧力を調節するために用いられル1つ以上のポンプ及びスロットルバルブを含むことができる。基板支持アセンブリ548は、内部容積506、蓋530及び/又はシャワーヘッド内に配置される。基板支持アセンブリ548は、処理中に
図2の基板202等の基板を保持する。一実施形態では、基板支持アセンブリ548は、静電チャック550を支持する台座552を含む。
【0075】
チャンバ状態装置124は、基板202の基板処理中に内部容積506の環境を光学的に監視するように構成することができる。幾つかの実施形態では、チャンバ状態装置124は、チャンバ本体502に機械的に結合され、内部容積506の環境と光学的にインターフェース(即ち、光インターフェース570を介して)することができる。チャンバ状態装置124は、コリメータアセンブリ554、光ファイバ束556、光コンポーネント562、処理デバイス576、及び、幾つかの実施形態では、偏光子コンポーネント586を含むことができる。
図5に示されるように、コリメータアセンブリ554を、チャンバインターフェース570に結合することができる。幾つかの実施形態では、チャンバインターフェース570は、オリフィス、収束レンズ又は発散レンズ、透明スラブ、又は、コリメータアセンブリ554と内部容積506の環境との間で光を搬送することができる他の任意のデバイス又は材料であってもよい。
図5はチャンバインターフェース570が蓋530内に埋め込まれているように示しているが、チャンバインターフェース570を処理チャンバ310の任意の部分(例えば、側壁508、底部510等)内に埋め込むか、又は結合することができる。
【0076】
光ファイバ束556の第1端をコリメータアセンブリ554に結合し、光ファイバ束556の第2端を光コンポーネント562に結合することができる。光コンポーネント562は、光を生成するように構成された光源564を含むことができる。ここで、「光」とは、可視光線、遠赤外線及び近赤外線(IR)、遠紫外線及び近紫外線(UV)等を含む、任意のスペクトル範囲の電磁放射を意味する。更に、「光」には、非偏光(例えば、自然光)、直線偏光、円偏光、又は楕円偏光、部分偏光、集束光、発散光、平行光等が含まれる。幾つかの実施形態では、光源564には、発光ダイオード(LED)、レーザ、電球等の狭帯域光源が含まれる。他の又は同様の実施形態では、光源564には、広帯域光源が含まれる。光源564は、幾つかの実施形態では、複数の狭帯域光源(一緒に使用して広帯域光入力を生成する)等の複数のコンポーネント光源を含むことができる。光源564は、光のスペクトル分布及び/又は偏光を制御するための追加の光学要素(即ち、フィルタ、吸収体、偏光子等)を含むことができる。
【0077】
光源564により生成された光(本明細書では入力光と呼ぶ)は、光束556の1つ以上の発光光ファイバ558を介してコリメータアセンブリ554に送信することができる。発光光ファイバ558を介して入力光を受け取ると、コリメータアセンブリ554は入力光を光ビーム572に変換するように構成することができる。例えば、入力光は、レンズ、反射器、フィルタ、アパーチャ等のコリメータアセンブリ554の1つ以上の光学要素を通過することができる。幾つかの実施形態では、コリメータアセンブリ554により生成される光ビームの空間特性は、光ビーム572の複数のスペクトル成分について同じであってもよい。例えば、光ビーム572の直径は、入力光、及び、従って光ビーム572に含まれる様々なスペクトル成分の波長λの広い範囲内で同じであってもよい。幾つかの実施形態では、コリメータアセンブリ554は、1つ以上の色消しレンズを含むことができる。従って、コリメータアセンブリ554により生成される光ビーム572は、無彩色の光ビームであってもよい。
【0078】
図5に示されるように、幾つかの実施形態では、コリメータアセンブリ554は、偏光子コンポーネント568を含むことができる。偏光子コンポーネント568は、光源564により生成された非偏光(例えば、自然光)を偏光するように構成される。例えば、偏光子コンポーネント568は、非偏光の入力光を線形偏光、円偏光又は楕円偏光に変換することができる。
図5は偏光子コンポーネント568をコリメータアセンブリ554の一部として示しているが、偏光子コンポーネント568は、入力光を光インターフェース570に通過させるチャンバ状態装置124の任意の部分に結合することができることに留意すべきである。例えば、偏光子コンポーネント568を、光源564の出口、1つ以上の放射光ファイバ558の出口、コリメータアセンブリと光インターフェース570の間に接続することができる。
【0079】
コリメータアセンブリ554は、光学インターフェース570を介して、基板支持アセンブリ548上に配置された基板202の表面に光ビーム572を導くことができる。光ビーム572は、反射光ビーム574として基板202の表面で反射され、コリメータアセンブリ554により受光されることができる。光束556の1つ以上の受信光ファイバ560は、反射光ビーム574を光コンポーネント562の光検出器566に送信することができる。光検出器566は、分光器、分光計、回折格子、ミラー、レンズ、フォトダイオード、及び他のデバイスの1つ以上を含むことができる。光検出器566は、単独で、又は処理デバイス576と連携して、反射光ビーム574に基づいて基板202の表面に関連する1つ以上の光学応答を決定することができる。例えば、光検出器566及び/又は処理デバイス576は、反射率R(l )、屈折率n(l )、又は反射光574に基づいて基板202を特徴付けるために使用することができる他の光学量を決定することができる。幾つかの実施形態では、光学応答を使用して、基板202について、反射率の偏光依存性、反射時の偏光面の回転角、発光強度等を特徴ずけることができる。本出願に関連して説明されるスペクトルデータは、反射光574の光学応答及び/又は反射光574の光学応答から導かれる基板202の光学特性に対応するデータを意味することができる。
【0080】
チャンバ状態装置124は、内部容積506内に配置されたプラズマのプラズマ放出を捕捉する光学センサ582が含むことができる。光学センサ582は、プラズマ放出に対応する光信号を光検出器566に伝送する光ファイバ584に結合される。光検出器566には、発光スペクトル装置(OES)を含むことができる。OESは、光ファイバ584から受信した光信号を分析して、信号内の放出ピーク及びパターンを識別し、特定の放出ピークを特定の元素のエネルギー遷移に対応するものとして識別する。幾つかの実施形態では、スペクトル及び/又は放出ピークを特徴付ける情報は、OESで表示及び/又は操作することができる。これらの実施形態及び他の実施形態の幾つかにおいて、スペクトルデータは放出ピーク情報を含むことができる。スペクトルデータは、更なる処理のために処理デバイス576に搬送することができる。
【0081】
チャンバ状態装置124は、処理チャンバ310に関連するセンサデータを生成及び/又は収集するように構成された1つ以上のセンサ512を含むことができる。センサデータは、温度(例えば、ヒータ温度)、間隔(SP)、圧力、高周波無線周波数(HFRF)、静電チャック(ESC)の電圧、電流、流量、電力、電圧等の1つ以上の値を含むことができる。センサデータは、製造装置の設定やコンポーネント(サイズ、タイプ等)、又は製造装置の処理パラメータ等のハードウェアパラメータ等の製造パラメータに関連付けし、又はこれを示すことができる。センサデータは、処理装置310が基板処理を実行している間に提供することができる。センサデータは各々の基板毎に異なる場合がある。センサデータを処理デバイス576に提供することができる。
【0082】
幾つかの実施形態では、処理デバイス576は、処理チャンバ310を含む製造システム用のシステムコントローラ(例えば、システムコントローラ228)の一部として含まれることができる。そのような実施形態では、処理デバイス576は、基板202に対して生成されたスペクトルデータを処理デバイス576に結合されたデータストア(例えば、データストア250、332、354等)に格納することができる。他の又は同様の実施形態では、処理デバイス576はシステムコントローラとは別個であるが、ネットワークを介してシステムコントローラに結合される処理コンポーネントであってもよい。処理デバイス576は、生成されたスペクトルデータを、製造システムの各々のデータストアに記憶するためにシステムコントローラに送信することができる。
【0083】
図6は、本開示の態様による、処理チャンバのチャンバ状態を予測するための機械学習モデルをトレーニング及び/又は更新するための方法600のフローチャートである。方法600は、ハードウェア(回路、専用ロジック等)、ソフトウェア(汎用コンピュータシステム又は専用マシン上で実行されるもの等)、ファームウェア、又はこれらの何らかの組み合わせを含むことができる処理ロジックにより実行される。一実施形態では、方法600は、
図1のシステムアーキテクチャ100等のコンピュータシステムにより実行することができる。他の又は同様の実施形態では、方法600の1つ以上のオペレーションは、図示されていない1つ以上の他のマシンにより実行することができる。幾つかの態様では、方法600の1つ以上のオペレーションは、
図3に関連して説明されたサーバマシン320のチャンバ条件エンジン330により実行することができる。
【0084】
ブロック602で、処理ロジックはデータ収集を実行する。データ収集は、製造システムからチャンバデータ及びスペクトルデータ(例えば、OES及び反射率測定データ)、計測値、データラベル(プロセス歩留まり、電気測定値等)を含むセンサデータを受信することを含むことができる。データは、1つ以上の基板を処理する1つ以上の処理チャンバに関連付けることができる。センサデータは、チャンバ状態装置124、統合計測装置128、及び/又はインライン計測装置130により取得されたデータを含むことができる。幾つかの実施形態では、スペクトルデータは、処理チャンバ内に配置されたプラズマの発光スペクトル(OES)測定値を含むことができる。幾つかの実施形態では、スペクトルデータは、処理チャンバ内に配置された基板の表面から反射された光の反射率パターンに対応する光反射率スペクトル測定値を含むことができる。幾つかの実施形態では、スペクトル及びチャンバデータは、前述の実施形態に従って、チャンバ状態装置124等のチャンバ状態装置、又は処理チャンバ内に配置された、又は処理チャンバに結合された他のセンサから受信することができる。
【0085】
ブロック604で、処理ロジックは、センサデータを使用してトレーニングされる機械学習の1つ以上のアルゴリズム、サイズ、及び速度閾値要件を決定することを含むデータ前処理を実行する。処理ロジックは、スペクトルフィーチャの指標を含む正規化されたセンサデータを生成する。処理ロジックは、ファンクション及び/又は方法を実行して、フィーチャを抽出し、及び/又は受信したセンサデータに関連する合成/加工データを生成することができる。例えば、処理ロジックは、スペクトルデータのフィーチャ抽出を実行して、スペクトルフィーチャを識別することができる。スペクトルフィーチャは、スペクトルデータの特定された相関、パターン、及び/又は異常に対応することができる。他の例では、処理ロジックは、スペクトルデータの組み合わせを使用してフィーチャ抽出を実行し、基準が満たされているかどうかを決定することができる。処理ロジックは、関連するパラメータの複数のデータポイントを分析し、基板処理の一部中にパラメータに急速な変化が発生したかどうかを決定するすることができる。幾つかの実施形態では、処理ロジックは、様々な処理チャンバ条件に関連する様々なセンサデータ(例えば、スペクトルデータ及び/又はチャンバデータ)に亘って正規化を実行する。正規化には、データを取得するために使用される様々なチャンバ及びセンサに亘って同様に識別できるように、入力センサデータ(例えば、スペクトルデータ及び/又はチャンバデータ)を処理することを含むことができる。
【0086】
幾つかの実施形態では、処理ロジックは、データ外挿手順及び/又はデータ内挿手順の1つ以上を実行して、受信した測定データポイント以外の追加データを取得する。処理ロジックは、測定値とは異なる時間におけるスペクトルデータを予測することができる。例えば、処理ロジックは、スペクトルデータの個々のデータポイント間の1つ以上のフィーチャ、パターン、及び/又は関係を特定し、内挿手順を使用して、測定スペクトルデータ(例えば、OES測定)が捕獲されたデータポイント間のポイントで発生するスペクトルデータポイント(例えば、異なる時間間隔又は測定が行われなかった時間)の推定値を決定することができる。他の例では、処理ロジックは、スペクトルデータの個々のデータポイント間の1つ以上のフィーチャ、パターン、及び/又は関係を特定し、外挿手順を使用して、スペクトルデータの測定データポイントに対応する時間枠外で発生するスペクトルデータポイント(例えば、スペクトルデータの取得前及び/又は取得後のインスタンスに関連付けられたスペクトルデータ予測)を決定することができる。
【0087】
処理ロジックは、受信したセンサデータをトレーニングセット及び/又は検証セットに分割することができる。更に、処理ロジックはデータをグループに分類し、個々のデータの組み合わせをトレーニングセット及び/又は検証セットの一方又は両方に割り当てることができる。
【0088】
ブロック606では、処理ロジックは1つ以上の機械学習アルゴリズムのセットに対してモデルトレーニングを実行する。機械学習モデルのセットは各々、異なる機械学習モデルタイプに対応することができる。例えば、機械学習モデルのセットは各々、線形回帰モデル、部分最小二乗回帰モデル、ガウス回帰モデル、ランダムフォレストモデル、サポートベクタマシンモデル、ニューラルネットワーク、リッジ回帰モデル、ロジスティック回帰型アルゴリズム、多層知覚アルゴリズム、リカレントニューラルネットワーク(RNN)等に対応することができる。機械学習モデルのセットのトレーニングの実行は、
図4の方法400に関連して説明された実施形態に従って実行することができる。
【0089】
幾つかの実施形態では、トレーニング済み機械学習モデルは、新しい入力に基づき新しい出力を生成する新しいプロセスに従って新しい基板を処理する新しい処理チャンバ内に配置される新しいプラズマの発光スペクトル(OES)測定を示す新しいプロセスと新しいスペクトルデータに従って、新しい基板を処理する新しい処理チャンバの新しい環境の新しい状態を示す新しいチャンバデータを有する新しいセンサデータを有する新しい入力を受信する。新しい出力は、予防保守手順の後に実行されるチャンバ回復処理に関連する回復状態に対応するチャンバ状態メトリックを示す。
【0090】
ブロック608で、処理ロジックは、1つ以上のトレーニング済み機械学習モデルの検証を実行する。トレーニングデータセットと検証データセットの両方からの結果と統計が比較され、全体として「最良の」モデルが選択される。モデルの選択は、
図9の方法900に従って決定することができる。検証は、各々のトレーニングセットの対応するフィーチャのセットに基づいて、各々のトレーニング済み機械学習モデルの精度を決定することを含むことができる。処理ロジックは、精度の閾値を満たさないトレーニング済みの機械学習モデルを破棄することができる。処理ロジックは、テスト(及び任意で検証)セットに基づいて、トレーニング済み機械学習モデルの全ての中で最も高い精度を有するトレーニング済み機械学習モデルを決定することができる。
【0091】
ブロック610で、1つ以上のモデルがサーバ(例えば、オンツールサーバ)にインストールされる。一実施形態では、1つ以上の選択されたモデルは、新しい基板のセンサデータ(例えば、スペクトルデータ及びチャンバデータ)を受信し、処理結果の予測に対応する1つ以上のチャンバ状態メトリクスを予測する。処理結果予測は、受信したセンサデータに対応する基板の処理結果(例えば、膜厚、臨界寸法、側壁角度等)の推定を示す1つ以上の値を含むことができる。チャンバ状態メトリクスは、予測エンジン328への入力データにおいて識別される組み合わせ、フィーチャ、又はパターンに各々関連付けられた値の選択を含むことができる。例えば、第1の値は、与えられた時間における、あるスペクトルデータとセンサデータの組み合わせを示すことができる。他の例では、他の値が、予測エンジン328により決定及び/又は識別される1つ以上の変数の組み合わせの勾配に関連付けられてもよい。幾つかの実施形態では、チャンバ状態メトリックは、センサデータに存在する特定のデータの組み合わせ、相関、パターン、及び/又は関係の相関を示す一連の値(例えば、ベクトル、行列等)を含むことができる。例えば、チャンバ状態メトリックは、データ内の特定のフィーチャの有無を示すバイナリ値を含むフィーチャベクトルを含むことができる。チャンバ状態メトリックを、処理チャンバの性能を変更するために使用することができる。例えば、チャンバ条件を利用して、プロセスレシピの処理パラメータを更新することができる。更新は、決定されたチャンバ状態メトリクスと、プロセスレシピに関連付けられた目標チャンバ状態メトリクスとの差に基づくことができる。他の例では、処理ロジックは、グラフィカルユーザインターフェース(GUI)上に通知を表示することができる。通知は、処理チャンバ(又はより一般的には製造装置)により行われるべき変更を示すことができる。例えば、処理ロジックは、更新された処理パラメータのセットに従って、現在処理されている基板又は新しい基板を処理させることができる。他の例では、処理ロジックにより、処理チャンバ内での基板処理を停止させることができる。
【0092】
ブロック612では、処理ロジックは、ライブ基板処理環境の現場(インサイチュ)データ収集を実行する。収集されたデータは、スペクトルデータ、計測データ、データラベル(例えば、歩留まり等の処理結果、計測データ、電気データ等)を含むことができる。データは、現在基板を処理している1つ以上の処理チャンバに関連付けることができる。センサデータは、チャンバ状態装置124、統合計測装置128、及び/又はインライン計測装置130により取得されたデータを含むことができる。幾つかの実施形態では、スペクトルデータは、処理チャンバ内に配置されたプラズマの発光スペクトル(OES)測定値を含むことができる。幾つかの実施形態では、スペクトルデータは、処理チャンバ内に配置された基板の表面から反射された光の反射率パターンに対応する光反射率スペクトル測定値を含むことができる。幾つかの実施形態では、スペクトル及びチャンバデータは、前述の実施形態に従って、チャンバ状態装置124等のチャンバ状態装置、又は処理チャンバ内に配置され又は処理チャンバに結合された他のセンサから受信することができる。
【0093】
ブロック614では、処理ロジックは、受信データと履歴センサデータの比較に基づいて、基板処理に関連して収集された受信インサイチュデータに異常があるかどうかを決定する。処理ロジックは、計測データと履歴計測データ及び関連ラベルとの比較に基づいて、計測及び処理結果ラベルが適切であるかどうか(例えば、閾値性能評価を満たしているかどうか)を決定する。処理ロジックは、処理異常がないと決定し、「いいえ」の経路に沿ってブロック610に進み、現在の処理チャンバ及び基板、又は1つ以上の追加の処理チャンバ及び/又は1つ以上の追加の基板に関連する更なるセンサデータ及び処理結果データを引き続き処理する。処理ロジックは、受信データセット内に異常があると決定し、「はい」の分岐に沿ってブロック616に進む。
【0094】
幾つかの実施形態では、処理ロジックは、受信したデータ(例えば、センサデータ、スペクトルデータ、チャンバデータ、処理結果データ)をモデル(例えば、統計モデル)に入力する。処理ロジックは、統計モデルから1つ以上の出力を受け取る。1つ以上の出力は、チャンバデータ、スペクトルデータ、及び/又は処理結果データの一時的に関連付けられたデータポイントが処理チャンバの状態(例えば、コールドチャンバ、回復したチャンバ、故障したチャンバ)を正確に示す信頼レベルを示すことができる。統計モデルは、履歴チャンバデータ、履歴スペクトルデータ、及び/又は履歴処理結果データの間の回帰を使用して生成することができる。処理ロジックは信頼度が閾値を満たしていると決定し、受信データ内に異常が存在するかどうかを決定することができる。
【0095】
幾つかの実施形態では、統計モデルは、統計的プロセス制御(SPC)分析を使用して生成され、受信データの管理限界を決定し、これらの管理限界に基づいてデータが多かれ少なかれ信頼することができるものとして識別される。幾つかの実施形態では、統計モデルは、(例えば、履歴データの)単変量及び/又は多変量データ分析に関連付けられる。例えば、統計モデルを使用して様々なパラメータを分析し、統計プロセス(範囲、最小値、最大値、四分位数、分散、標準偏差等)を通じてパターン及び相関関係を決定することができる。他の例では、複数の変数(例えば、チャンバデータとスペクトルデータ)間の関係は、回帰分析、経路分析、因子分析、多変量統計的プロセス制御(MCSPC)及び/又は多変量分散分析(MANOVA)を使用して確認することができる。
【0096】
ブロック616で、チャンバ検査が実行される。チャンバ検査には、製造システムの個々のコンポーネントの検査を含めることができる。処理ロジックにより、エラー、データ異常、及び/又は実行すべき修正措置を示す通知をGUIに表示することができる。幾つかの実施形態では、処理ロジックは、本明細書で説明されるアクションを実行するために、1つ以上の新しいモデルの作成、トレーニング、検証、及び/又は選択を開始する。幾つかの実施形態では、処理ロジックは、検出された異常を修正するために、現在使用されているモデルを更新することができる。例えば、ユーザは、モードのタイプ、設定/パラメータ、モデルの作成に使用された古いデータを指定する古いモデルをロードする場合がある。処理ロジックは、更新されたモデルをトレーニングするための開始場所(例えば、最初の推測)として古いモデルを使用することができる。追加のデータをシステムに追加し、モデルを更にトレーニング及び/又は検証して更新されたモデルを生成するために使用することができる。
【0097】
図7は、本開示の態様による、処理チャンバのチャンバ状態を予測するため機械学習モデルをトレーニング及び/又は更新する方法700のフローチャートである。方法700は、ハードウェア(回路、専用ロジック等)、ソフトウェア(汎用コンピュータシステム又は専用マシンで実行されるもの等)、ファームウェア、又はこれらの組み合わせを含むことができる処理ロジックにより実行される。一実施形態では、方法700は、
図1のシステムアーキテクチャ100等のコンピュータシステムにより実行することができる。他の又は同様の実施形態では、方法700の1つ以上のオペレーションは、図示されていない1つ以上の他のマシンにより実行することができる。幾つかの態様では、方法700の1つ以上のオペレーションは、
図3に関連して説明されたサーバマシン320のチャンバ状態エンジン330により実行することができる。
【0098】
ブロック710では、処理ロジックは、製造システム200の処理チャンバ内の現在の処理に従って処理される現在の基板(例えば、リアルタイムのインサイチュデータ)に関連付けられるセンサデータ(例えば、スペクトルデータ、チャンバデータ等)を受信する。幾つかの実施形態では、処理ロジックは、前述のように、現在の処理を実行している処理チャンバ内に配置されているか、又は処理チャンバに結合されているチャンバ状態装置124又はその他のセンサから現在のスペクトルデータを受信することができる。幾つかの実施形態では、処理ロジックは、現在の処理の特定の期間に現在のセンサデータを受信することができる。例えば、チャンバ状態装置124は、基板処理中に特定の間隔(例えば、1秒毎に1回)で現在の基板のセンサデータを収集するように構成することができる。チャンバ状態装置124は、基板処理の各々の間隔でセンサデータを収集し、スペクトルデータをサーバマシン320に送信し、チャンバ状態エンジン330の処理ロジックによりスペクトルデータが受信される。
【0099】
ブロック712では、処理ロジックは、スペクトルフィーチャの指標を含む正規化されたセンサデータ(例えば、データ前処理)を生成する。処理ロジックは、ファンクション及び/又は方法を実行して、フィーチャを抽出し、及び/又は受信したセンサデータに関連する合成/加工データを生成することができる。例えば、処理ロジックは、スペクトルデータのフィーチャ抽出を実行して、スペクトルフィーチャを特定することができる。他の例では、処理ロジックは、スペクトルデータの組み合わせを使用してフィーチャ抽出を実行し、基準が満たされているかどうかを決定することができる。幾つかの実施形態では、処理ロジックは、スペクトルデータの最も重要なフィーチャを選択するために主成分分析(PCA)を実行することができる。主成分分析とは、実座標空間内の点の集合を分析して、点の集合に対して基底変更を行うことを意味する。幾つかの実施形態では、スペクトルフィーチャのセットは、個々のチャンバ状態メトリックに対応する検出光の波長範囲を含む。このような実施形態では、処理ロジックは、スペクトルデータの分析に基づいて特定の波長を特定することができる。例えば、処理ロジックは、基板の構造(例えば、CD、厚さ、材料特性、SWA等)に関連するデータを波形解析モデルへの入力として提供し、1つ以上の出力を抽出することができる。処理ロジックは、1つ以上の出力に基づいて、光スペクトルの特定の範囲が特定のタイプの計測測定に対応し、波長X及びYが特定の範囲に含まれることを決定することができる。追加的又は代替的実施形態では、波動解析モデルの出力は、波長X及びYが特定のタイプの計測測定に対応することを示すことができる。特定のタイプの計測測定に対応する特定の波長の識別に応じて、処理ロジックは、正規化されたスペクトルデータから波長X及びYに対応するスペクトルデータのセットを抽出することができる。
【0100】
幾つかの実施形態では、スペクトルフィーチャのセットは、特定のチャンバ条件に対応する特定のタイプの計測測定に対応する1つ以上の波長のスペクトルデータに存在するスペクトル傾向又はパターンを含む。処理ロジックは、1つ以上の波長の正規化されたスペクトルデータに対して1つ以上の分析操作(例えば、厳密結合波解析(RCWA))を実行して、チャンバの状態に対応する特定の種類の計測測定値に対応するスペクトル傾向又はパターンを特定することができる。幾つかの実施形態では、処理ロジックは、特定の種類の計測測定に関連する特定の波長の正規化されたスペクトルデータの一部を特定することができる。例えば、処理ロジックは、初期期間と第1の中間期間との間の波長Yの正規化されたスペクトルデータが限界寸法測定に関連付けられていることを特定することができる。正規化には、データを取得するために使用される様々なチャンバ及びセンサに亘って同様に識別できるように、入力センサデータ(例えば、スペクトルデータ及び/又はチャンバデータ)を処理することを含めることができる。
【0101】
ブロック714で、処理ロジックは、基板処理に関連して収集された受信インサイチュデータに異常があるかどうかを決定する。異常には、関連値の過去の組み合わせと相関しない値の組み合わせ(例えば、スペクトル値、チャンバパラメータ値等)を有する1つ以上のデータポイントを特定することを含めることができる。処理ロジックは、受信したデータが閾値条件(例えば、閾値仕様)を満たしていると決定することができる。閾値条件は、履歴データと一致する(例えば、相関する)データ(例えば、相関係数を超える閾値条件を有する)を含むことができる。処理ロジックは、処理異常が存在しないと判断し、「いいえ」の経路に沿ってブロック720に進み、受信データを更に処理し続けることができる。処理ロジックは、受信したデータセット内の異常の存在を判断し、「はい」の分岐に沿ってブロック716に進むことができる。
【0102】
幾つかの実施形態では、処理ロジックは、受信したデータ(例えば、センサデータ、スペクトルデータ、チャンバデータ)をモデル(例えば、統計モデル)に入力する。処理ロジックは、モデルから1つ以上の出力を受け取る。1つ以上の出力は、チャンバデータ、スペクトルデータ、及び/又は処理結果データの一時的に関連付けられたデータポイントが処理チャンバの状態を正確に示すという信頼性レベルを示すことができる。統計モデルは、履歴チャンバデータ、履歴スペクトルデータ、及び/又は履歴処理結果データ間の回帰を使用して生成することができる。処理ロジックは、信頼性レベルが閾値の決定を満たしているかどうかを判断し、受信したデータ内の異常の有無を決定する。
【0103】
幾つかの実施形態では、統計モデルは、統計的プロセス制御(SPC)分析を使用して生成され、受信データの管理限界を決定し、これらの管理限界に基づいてデータの信頼性が高いか低いかを決定する。幾つかの実施形態では、統計モデルは、単変量及び/又は多変量データ分析(例えば、履歴データの)に関連付けられている。例えば、統計モデルを使用して様々なパラメータを分析し、統計プロセス(例えば、範囲、最小値、最大値、四分位数、分散、標準偏差等)を通じてパターンと相関関係を決定することができる。他の例では、回帰分析、パス分析、因子分析、多変量統計的プロセス制御(MCSPC)、及び/又は多変量分散分析(MANOVA)を使用して、複数の変数(例えば、チャンバデータとスペクトルデータ)間の関係を確かめることができる。
【0104】
幾つかの実施形態では、処理ロジックは、基板基準が満たされるかどうかに基づいてデータを決定する。基板基準は、膜厚要件、プロセス均一性要件、臨界寸法仕様、SWA仕様等の1つ以上を含むことができる。幾つかの実施形態では、処理ロジックは、受信したスペクトルデータが特定の種類の基板処理及び/又は特定の種類の基板に関連するスペクトルデータに対応すると決定することにより、基板基準が満たされると決定することができる。例えば、処理ロジックは、特定の種類のプロセスに従って処理された特定の種類の基板について以前に収集されたスペクトルデータを(例えば、データストア150から)取得することができる。以前に収集されたスペクトルデータは、基板のタイプ及び/又はプロセスのタイプ、又はプロセスのタイプの特定のステップ又は期間に特有の1つ以上のスペクトルデータフィーチャ(例えば、スペクトルシグネチャ)を含むことができる。処理ロジックは、現在の基板について受信したスペクトルデータが、以前に収集されたスペクトルデータに含まれる各々のスペクトルデータフィーチャに対応する(即ち、ほぼ等しい)1つ以上のスペクトルデータフィーチャを含むかどうかを決定するすることができる。
【0105】
ブロック716で、修正措置が実行される。幾つかの実施形態では、製造装置の1つ以上の欠陥を特定するためにチャンバ検査が実行され、欠陥を修復するための是正措置を決定する。処理ロジックは、エラー、データ異常、及び/又はとるべき修正措置等を示す通知をGUI上に表示することができる。幾つかの実施形態では、処理ロジックは、本明細書で説明されるアクションを実行するための1つ以上の新しいモデルの作成、トレーニング、検証、及び/又は選択を開始する。幾つかの実施形態では、処理ロジックは、現在使用されているモデルを更新して、検出された異常を修正することができる。例えば、ユーザは、モデルの作成に使用されたモードのタイプ、設定/パラメータ、古いデータを指定する古いモデルをロードする場合がある。処理ロジックは、更新されたモデルをトレーニングするための開始場所(例えば、最初の推測)として古いモデルを使用することができる。追加のデータをシステムに追加し、モデルを更にトレーニング及び/又は検証して更新されたモデルを生成するために使用することができる。処理ロジックは、新しいデータの更新を続行し、新しいデータで修正アクションを実行した後、システムを更に評価する。
【0106】
ブロック720では、処理ロジックは、トレーニング済み機械学習モデルへの入力として使用されるセンサデータを提供する。幾つかの実施形態では、処理ロジックは、スペクトルデータを予測エンジン328に提供することができ、これにより、予測エンジン328は、
図8に関連して説明される方法800の1つ以上のオペレーションを実行することができる。
【0107】
ブロック722では、処理ロジックは、トレーニング済み機械学習モデルの1つ以上の出力から抽出されたチャンバ状態メトリックを取得する。幾つかの実施形態では、処理ロジックは、方法800に従って取得された予測エンジン328からのチャンバ状態メトリックの表示を受け取ることができる。ブロック724では、処理ロジックは、チャンバ状態メトリック基準が満たされているかどうかを決定する。幾つかの実施形態では、処理ロジックは、現在のチャンバ条件下でチャンバ内で処理された基板が、現在の処理に関連付けられた処理結果基準を満たしているかどうかを決定することにより、チャンバ状態メトリック基準が満たされているかどうかを決定することができる。抽出されたチャンバ状態メトリックは、PM手順後の回復処理(例えば、チャンバシーズニング)に関連付けられた処理チャンバの回復状態に対応することができる。
【0108】
処理ロジックがチャンバ状態メトリック基準が満たされていると決定したことに応じて、方法700はブロック728に進む。ブロック728では、処理ロジックは現在の基板に対して現在の処理を継続する。幾つかの実施形態では、処理ロジックは、システムコントローラ228又は処理チャンバのローカルコントローラに現在の処理を継続するように命令を送信することにより、現在の処理を継続することができる。他の又は同様の実施形態では、処理ロジックは、命令を生成及び送信せずに、現在の処理を継続することができる。処理ロジックは、上記のように、追加のトレーニングデータとして使用するために、センサデータ(例えば、スペクトルデータ、チャンバデータ等)及び抽出された計測測定値をトレーニングセットジェネレータ324に送信することができる。
【0109】
処理ロジックがチャンバ状態メトリック基準が満たされていないと決定したことに応じて、方法700はブロック726に進む。ブロック726では、処理ロジックは製造装置の性能を変更する命令を生成する。幾つかの実施形態では、処理ロジックは製造システムで現在の処理を終了する命令を送信する。幾つかの実施形態では、処理ロジックは命令をシステムコントローラ(例えば、システムコントローラ228)に送信し、これによりシステムコントローラは現在の処理を終了することができる。他の又は同様の実施形態では、処理ロジックは命令を処理チャンバのローカル処理デバイスに送信し、これにより処理チャンバは現在の処理を終了することができる。追加的又は代替的実施形態では、処理ロジックはスペクトルデータ及び抽出された計測測定値をトレーニングセットジェネレータ324(即ち、サーバマシン320又はサーバマシン350)に送信して、追加のトレーニングデータとして使用することができる。幾つかの実施形態では、処理ロジックは製造装置に関連付けられた1つ以上の処理パラメータを更新する命令を送信する。命令は、更新された処理パラメータに従って現在の基板を更に処理する命令を含むことができる。
【0110】
ブロック724に戻ると、幾つかの実施形態では、処理ロジックは、チャンバ状態メトリックが現在の処理の期間に関連付けられた予測されるチャンバ状態メトリック値の範囲内にあるかどうかを決定することにより、チャンバ状態メトリック基準が満たされているかどうかを更に決定することができる。予測されるチャンバ状態メトリックの範囲は、現在の処理の現在の期間に現在の基板に関連付けられると予測される値のセットを含むことができる。幾つかの実施形態では、処理ロジックは、抽出されたチャンバ状態メトリック値を考慮して、トレーニング済み機械学習モデルの精度がもはや精度基準を満たしていない(即ち、トレーニング済み機械学習モデルの全体的な精度が閾値全体精度を下回っている)ことを決定することができる。インライン又は統合された計測データを使用して、トレーニング済み機械学習モデルの精度を検証することができる。例えば、モデルは、チャンバが通常の動作条件下で動作していると出力するが、想定される通常の動作条件下で処理された関連する計測データは、処理結果要件(例えば、厚さ要件、臨界寸法要件、SWA要件等)を満たさない場合がある。従って、処理ロジックは、機械学習モデルを再トレーニングする必要があることを示す通知をクライアントデバイスに送信することができる。幾つかの実施形態では、処理ロジックは、本明細書で説明される実施形態に従って、機械学習モデルを再トレーニングするために、トレーニングセットジェネレータ324及び/又はトレーニングエンジン326に通知を送信することができる。
【0111】
ブロック730では、処理ロジックは測定の次の反復に進む。基板及び/又はプロセスレシピは、現在の基板の更なる処理及び/又は次の基板の処理及び/又は次のプロセスレシピの使用に関連するデータを使用して方法700を実行する。
【0112】
図8は、本開示の態様による、機械学習モデルを使用して現在のチャンバを処理する処理チャンバのチャンバ状態を予測する方法800のフローチャートである。方法800は、ハードウェア(回路、専用ロジック等)、ソフトウェア(汎用コンピュータシステム又は専用マシンで実行されるもの等)、ファームウェア、又はこれらの組み合わせを含むことができる処理ロジックにより実行される。一実施形態では、方法800は、
図1のシステムアーキテクチャ100等のコンピュータシステムにより実行することができる。他の又は同様の実施形態では、方法800の1つ以上のオペレーションは、図示されていない1つ以上の他のマシンにより実行することができる。幾つかの態様では、方法800の1つ以上のオペレーションは、
図3に関連して説明されたサーバマシン320の予測エンジン328により実行することができる。
【0113】
ブロック810で、処理ロジックは、基板を処理する処理チャンバに関連するスペクトルデータ及びチャンバデータを受け取る。幾つかの実施形態では、スペクトルデータは、処理チャンバ内に配置されたプラズマの発光スペクトル(OES)測定値を含むことができる。幾つかの実施形態では、スペクトルデータは、処理チャンバ内に配置された基板の表面から反射された光の反射率パターンに対応する光反射率スペクトル測定値を含むことができる。幾つかの実施形態では、スペクトル及びチャンバデータは、前述の実施形態に従って、チャンバ状態装置124等のチャンバ状態装置、又は処理チャンバ内に配置され、又は処理チャンバに結合された他のセンサから受信することができる。
【0114】
ブロック812で、処理ロジックは、スペクトルフィーチャの表示を含む正規化されたセンサを生成する。処理ロジックは、ファンクション及び/又は方法を実行して、フィーチャを抽出し、及び/又は受信したセンサデータに関連する合成/加工データを生成することができる。例えば、処理ロジックは、スペクトルデータのフィーチャ抽出を実行して、スペクトルフィーチャを特定することができる。他の例では、処理ロジックは、スペクトルデータの組み合わせを使用してフィーチャ抽出を実行し、基準が満たされているかどうかを決定することができる。処理ロジックは、関連パラメータの複数のデータポイントを分析して、基板処理の一部中に急速な変化が発生したかどうかを決定することができる。幾つかの実施形態では、処理ロジックは、様々な処理チャンバ条件に関連する様々なセンサデータ(例えば、スペクトルデータ及び/又はチャンバデータ)に亘って正規化を実行する。正規化は、データを取得するために使用される様々なチャンバ及びセンサに亘って同様に識別できるように、入力センサデータ(例えば、スペクトルデータ及び/又はチャンバデータ)を処理することを含むことができる。
【0115】
ブロック814では、処理ロジックは、正規化されたセンサデータをトレーニング済み機械学習モデルへの入力として提供する。幾つかの実施形態では、トレーニング済み機械学習モデルは、
図3に関連して説明された機械学習モデル334に対応することができる。幾つかの実施形態では、トレーニングエンジン326は、以下の
図9に関連して説明される実施形態に従って、予測エンジン328が使用するために機械学習モデル334を選択する。ブロック816では、処理ロジックは、機械学習モデルの1つ以上の出力を取得する。ブロック818では、処理ロジックは、1つ以上の出力から、(i)センサデータに関連付けられた1つ以上のチャンバ状態、及び(2)1つ以上のチャンバ状態の各々が処理チャンバの状態に対応する信頼度のレベルの表示を特定するチャンバ状態メトリックを抽出する。一例では、信頼性レベルは0から1までの実数である。幾つかの実施形態では、信頼性レベルは確率に対応しないことに留意すべきである。例えば、全てのチャンバ状態メトリックの信頼性レベルの合計は1に等しくならない場合がある。
【0116】
幾つかの実施形態では、処理ロジックは、チャンバ状態メトリクスを使用して、予防保守(PM)手順の実行後に実行される回復手順に対応する処理チャンバの回復状態を決定することができる。幾つかの実施形態では、チャンバ状態メトリクスの信頼性レベルが閾値条件を満たす場合、処理チャンバの処理状態は、チャンバ状態メトリクスに関連付けられていると特定される。処理ロジックは、信頼性レベルが信頼性閾値レベルを超えると決定したことに応じて、計測測定値の信頼性レベルが閾値条件を満たすと決定することができる。処理ロジックは、
図10に関連して説明される実施形態に従って、チャンバ状態メトリクスをチャンバ状態エンジン330に提供することができる。
【0117】
図9は、本開示の態様による、計測測定値のタイプを推定する機械学習モデルを選択するための方法900のフローチャートである。方法900は、ハードウェア(回路、専用ロジック等)、ソフトウェア(汎用コンピュータシステム又は専用マシン上で実行されるもの等)、ファームウェア、又はこれらの何らかの組み合わせを含むことができる処理ロジックにより実行される。一実施形態では、方法900は、
図1のシステムアーキテクチャ100等のコンピュータシステムにより実行することができる。他の又は同様の実施形態では、方法900の1つ以上のオペレーションは、図示されていない1つ以上の他のマシンにより実行することができる。幾つかの態様では、方法900の1つ以上のオペレーションは、
図3に関連して説明されたサーバマシン320又は350のトレーニングエンジン326により実行することができる。
【0118】
ブロック910で、処理ロジックは、機械学習モデルのセットのトレーニングデータ及び/又は検証データを受信する。機械学習モデルのセットの各々は、異なる機械学習モデルタイプに対応することができる。例えば、機械学習モデルのセットの各々は、線形回帰モデル、部分最小二乗回帰モデル、ガウス回帰モデル、ランダムフォレストモデル、サポートベクタマシンモデル、ニューラルネットワーク、リッジ回帰モデル等に対応することができる。幾つかの実施形態では、処理ロジックは、サーバマシン320又は350のトレーニングセットジェネレータ324からトレーニングデータ及び検証データを受信することができる。トレーニングセットジェネレータ324は、
図4の方法400に関連して説明された実施形態に従ってトレーニングデータを生成することができる。他の又は同様の実施形態では、処理ロジックはトレーニングセットジェネレータ324からトレーニングデータを受信し、受信したトレーニングデータに基づいて検証データを生成することができる。
図3に関連して説明されたように、トレーニングデータはトレーニングセット340に対応し、検証データは検証セット342に含まれるデータに対応することができる。
【0119】
ブロック912で、処理ロジックは、受信したトレーニングデータを使用して機械学習モデルのセットの各々をトレーニングする。ブロック914で、処理ロジックは、検証データを使用して機械学習モデルのセットの各々に対して1つ以上のテストオペレーションを実行する。上述のように、検証セット342は、センサデータ(例えば、チャンバデータ及びスペクトルデータ)と、センサデータ(例えば、スペクトルデータ及びチャンバデータ)とは異なる、以前の基板を処理した処理チャンバの計測データに対応するチャンバ条件と、トレーニングデータに含まれる計測データに対応するチャンバ条件を含むことができる。1つ以上のテストオペレーションを実行するために、処理ロジックは、検証セット342のセンサデータを、トレーニング済み機械学習モデルのセットの各々に入力として提供することができ、トレーニングされたモデルの各々の1つ以上の出力を取得することができる。処理ロジックは、本明細書で提供される実施形態に従って、取得された1つ以上の出力からチャンバ状態メトリックを抽出することができる。
【0120】
幾つかの実施形態では、トレーニング済み機械学習モデルは、新しいプロセスに従って新しい基板を処理する新しい処理チャンバの新しい環境の新しい状態を示す新しいチャンバデータを有する新しいセンサデータと、新しい入力に基づいて新しい出力を生成する新しいプロセスに従って新しい基板を処理する新しい処理チャンバ内に配置される新しいプラズマの発光スペクトル(OES)測定を示す新しいスペクトルデータとを含む新しい入力を受信する。新しい出力は、予防保守手順の後に実行されるチャンバ回復処理に関連付けられた回復ステータスに対応するチャンバ状態メトリックを示す。
【0121】
ブロック916では、処理ロジックは、ブロック914に関して実行された1つ以上のテストオペレーションの結果に基づいて、機械学習モデルのセットの各々に性能評価を割り当てる。幾つかの実施形態では、処理ロジックは、機械学習モデルに対して決定された精度スコアに基づいて、各々の機械学習モデルに性能評価を割り当てることができる。処理ロジックは、各々の機械学習モデルの出力から抽出されたチャンバ状態メトリックと、処理チャンバ処理の実際のチャンバ状態との差に基づいて、精度スコアを決定することができる。例えば、ブロック914に関連して説明されたように、処理ロジックは、検証セット342からのセンサデータを各々の機械学習モデルへの入力として提供し、モデルの出力からチャンバ状態メトリックを抽出することができる。処理ロジックは、抽出されたチャンバ状態メトリックを実際のチャンバ状態と比較し(例えば、両方の条件下でのウエハ処理の計測結果を比較することにより)、検証セット342の提供されたセンサデータと比較することができる。処理ロジックは、抽出された値と検証セット342の実際の値との差に基づいて、モデルに精度スコアを割り当てることができる。例えば、処理ロジックは、モデルにより生成された抽出された値と実際の値との差が小さい場合、各々のモデルに高い精度スコアを割り当てることができる。同様に、処理ロジックは、差が大きい場合、各々のモデルに低い精度スコアを割り当てることができる。
【0122】
追加的又は代替的実施形態では、処理ロジックは更に、機械学習モデルに対して決定された速度スコアに基づいて、各々の機械学習モデルに性能評価を割り当てることができる。幾つかの実施形態では、処理ロジックは、処理ロジックがモデルへの入力としてセンサデータを提供した後、モデルの1つ以上の出力が取得されるまでの時間量に基づいて速度スコアを決定することができる。他の又は同様の実施形態では、処理ロジックは、処理ロジックがモデルへの入力としてスペクトルデータを提供した後、処理ロジックが取得した1つ以上の出力から計測測定値を抽出するまでの時間量に基づいて速度スコアを決定することができる。一例では、処理ロジックがモデルへの入力としてセンサデータを提供した後、モデルが1つ以上の出力を提供する(又は処理ロジックが計測測定値を抽出する)までの時間が小さい場合、処理ロジックは、各々のモデルに高速スコアを割り当てることができる。
【0123】
幾つかの実施形態では、処理ロジックは、機械学習モデルに対して決定された効率スコアに基づいて、各々の機械学習モデルに性能評価を割り当てることができる。
図3に関連して説明されたように、幾つかの実施形態では、トレーニングエンジン356は、サーバマシン320とは別個のサーバマシン350に含まれることができる。そのような実施形態では、トレーニングエンジン356は、サーバマシン350で機械学習モデルのセットの各々をトレーニングすることができる。トレーニングエンジン356は、ブロック914に関して説明された1つ以上のテストオペレーションを実行して、機械学習モデルのセットのどれを予測エンジン328で使用するためにサーバマシン320に送信するかを決定することができる。処理ロジックは、サーバマシン350からサーバマシン320に各々の機械学習モデルを送信すること、及び/又はサーバマシン320で各々の機械学習モデルを初期化することに関する全体的なシステム効率(例えば、製造システムについて)に基づいて、各々の機械学習モデルの効率スコアを決定することができる。幾つかの実施形態では、処理ロジックは、各々のトレーニング済み機械学習モデルを格納するために使用されるメモリの量、サーバマシン320のデータストア332で使用可能なメモリの量、各々のトレーニング済み機械学習モデルをサーバマシン320に送信するために使用可能なネットワーク帯域幅の量等に基づいて、効率スコアを決定することができる。
【0124】
ブロック918では、処理ロジックは、各々の機械学習モデルに割り当てられた性能評価に基づいて、性能基準が満たされているかどうかを決定する。幾つかの実施形態では、処理ロジックは、各々の機械学習モデルに割り当てられた性能評価(即ち、精度スコアに基づいて決定され、幾つかの実施形態では、速度スコア及び/又は効率スコアに基づいて決定される)が閾値性能スコアを超えているかどうかを決定することにより、性能基準が満たされているかどうかを決定することができる。他の又は同様の実施形態では、処理ロジックは、各々のモデルの精度スコアが閾値スコアを超えているかどうか、及び各々のモデルの全体的な性能評価(即ち、精度スコアと速度スコア及び/又は効率スコアに基づいて決定)が閾値性能スコアを超えているかどうかを決定することにより、性能基準が満たされているかどうかを決定することができる。幾つかの実施形態では、複数のトレーニング済み機械学習モデルが、各々閾値スコア及び/又は閾値評価を満たす精度スコア及び/又は性能評価に関連付けられている場合がある。このような実施形態では、処理ロジックは、複数のトレーニング済みモデルのうち、性能基準を満たす最高の精度スコア及び/又は性能評価に関連付けられている各々のモデルを決定することができる。幾つかの実施形態では、処理ロジックは、機械学習モデルのセットのトレーニング済み機械学習モデルが、各々閾値スコア及び/又は閾値評価を満たす精度スコア及び/又は性能評価に関連付けられていないことを決定することができる。このような実施形態では、処理ロジックは、性能基準を満たすモデルが存在しないことを決定することができる。
【0125】
性能基準が満たされるとの決定に応答して、処理ロジックはブロック920に進む。ブロック920で、処理ロジックは、将来の基板処理に従って処理される将来の基板について収集される将来のセンサデータに適用される各々の機械学習モデルを選択する。上述したように、幾つかの実施形態では、トレーニングエンジン326は、サーバマシン320の予測エンジン328に含まれることができる。そのような実施形態では、将来のスペクトルデータに適用される各々の機械学習モデルの選択に応答して、処理ロジックは、各々のモデル及び/又は各々のモデルが予測エンジン328により使用されるとの表示をデータストア332に記憶することができる。他の実施形態では、トレーニングエンジン326はサーバマシン350に含まれることができる。そのような実施形態では、トレーニングエンジン326が将来のセンサデータに適用される各々の機械学習モデルを選択することに応答して、サーバマシン350は、データストア150に記憶するために各々の機械学習モデルをサーバ320に送信することができる。
【0126】
性能基準が満たされていないとの決定に応答して、処理ロジックはブロック922に進む。ブロック922で、処理ロジックは、機械学習モデルのセットを更にトレーニングするための追加のトレーニングデータを受け取る。処理ロジックは、前述の実施形態に従って、トレーニングセットジェネレータ324から追加のトレーニングデータを受信することができる。性能基準が満たされない場合、ブロック922によりデータが受信された後、システムはデータをブロック910に送信し、他の反復を通じて方法900のフローを開始することができる。
【0127】
図10は、本明細書で説明した方法の1つ以上をマシンに実行させるための命令のセットを実行することができるコンピューティングデバイス1000の例示の形式でのマシンの図表示を示す。代替的実施形態では、マシンは、ローカルエリアネットワーク(LAN)、イントラネット、エクストラネット、又はインターネット内の他のマシンに接続(例えば、ネットワーク化)することができる。マシンは、クライアントサーバネットワーク環境ではサーバ又はクライアントマシンとして、又はピアツーピア(又は分散)ネットワーク環境ではピアマシンとしてキャパシティー内で動作することができる。マシンは、パーソナルコンピュータ(PC)、タブレットコンピュータ、セットトップボックス(STB)、パーソナルデジタルアシスタント(PDA)、携帯電話、Webアプライアンス、サーバ、ネットワークルータ、スイッチ又はブリッジ、又はマシンにより実行されるアクションを特定する命令のセット(シーケンシャル又はそれ以外)を実行することができる任意のマシンであってもよい。更に、単一のマシンのみが図示されているが、「マシン」という用語は、本明細書で説明されている方法のいずれか1つ以上を実行するために、命令セット(又は複数のセット)を個別に又は共同で実行するマシンの集合(例えば、コンピュータ)も含むと解釈される。実施形態では、コンピューティングデバイス1000は、本明細書で説明されているように、サーバマシン170、サーバマシン180、予測サーバ112、システムコントローラ228、サーバマシン320、又はサーバマシン350の1つ以上に対応することができる。
【0128】
例示のコンピューティングデバイス1000には、処理デバイス1002、メインメモリ1004(例えば、リードオンリメモリ(ROM)、フラッシュメモリ、同期DRAM(SDDRAM)等のダイナミックランダムアクセスメモリ(DRAM)等)、スタティックメモリ1006(例えば、フラッシュメモリ、スタティックランダムアクセスメモリ(RAM)等)、及び二次メモリ(例えば、データストレージデバイス1028)が含まれ、これらはバス1008を介して相互に通信する。
【0129】
処理デバイス1002は、マイクロプロセッサ、中央処理装置等の1つ以上の汎用プロセッサを表すことができる。より具体的には、処理デバイス1002は、複合命令セットコンピューティング(CISC)マイクロプロセッサ、縮小命令セットコンピューティング(RISC)マイクロプロセッサ、超長命令ワード(VLIW)マイクロプロセッサ、他の命令セットを実行するプロセッサ、又は命令セットの組み合わせを実施するプロセッサであってもよい。また、処理デバイス1002は、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタルシグナルプロセッサ(DSP)、ネットワークプロセッサ等の1つ以上の専用処理装置であってもよい。また、処理装置1002は、システムオンチップ(SoC)、プログラマブルロジックコントローラ(PLC)、又は他の種類の処理装置であってもよく、又はこれらを含むこともできる。処理装置1002は、本明細書で説明されるオペレーション及び工程を実行するための処理ロジックを実行するように構成される。
【0130】
更に、コンピューティングデバイス1000は、ネットワーク1064と通信するためのネットワークインターフェースデバイス1022を含むことができる。また、コンピューティングデバイス1000は、ビデオ表示ユニット1010(例えば、液晶ディスプレイ(LCD)又は陰極線管(CRT))、英数字入力デバイス1012(例えば、キーボード)、カーソル制御デバイス1014(例えば、マウス)、及び信号生成デバイス1020(例えば、スピーカ)を含むことができる。
【0131】
データ記憶デバイス1028は、記載された方法又はファンクションの1つ以上を具体化する1つ以上の命令セット1026が記憶される機械可読記憶媒体(即ち、より具体的には、非一時的なコンピュータ可読記憶媒体)1024を含むことができる。ここで、非一時的記憶媒体とは、搬送波以外の記憶媒体を意味する。また、命令1026は、コンピュータ装置1000による実行中に、完全に又は少なくとも部分的にメインメモリ1004内及び/又は処理デバイス1002内に常駐することもでき、メインメモリ1004及び処理デバイス1002もコンピュータ可読記憶媒体を構成する。
【0132】
コンピュータ読み取り可能な記憶媒体1024は、例示的実施形態では単一の媒体として示されているが、「コンピュータ可読記憶媒体」という用語は、1つ以上の命令セットを格納する単一の媒体又は複数の媒体(例えば、集中型又は分散型データベース、及び/又は関連するキャッシュ及びサーバ)を含むと解釈される。また、「コンピュータ読み取り可能な記憶媒体」という用語は、マシンにより実行される命令セットを格納又はエンコードすることができ、マシンに本開示の1つ以上の方法を実行させるあらゆる媒体を含むと解釈される。従って、「コンピュータ可読記憶媒体」という用語は、ソリッドステートメモリ、光学媒体、磁気媒体を含むと解釈されるが、これらに限定されない。
【0133】
前述の説明では、本開示の幾つかの実施形態の十分な理解を提供するために、特定のシステムコンポーネント、方法等の例等の多くの特定の詳細を記載した。しかしながら、本開示の少なくとも幾つかの実施形態は、これらの特定の詳細がなくても実施することができることが当業者には明らかである。他の例では、本開示を不必要に曖昧にすることを避けるために、周知の構成要素又は方法は詳細に説明されないか、又は単純なブロック図形式で提示されている。従って、記載された具体的な詳細は単なる例示にすぎない。特定の実施は、これらの例示的な詳細とは異なる場合があるが、依然として本開示の範囲内にあると考えられる。
【0134】
本明細書全体に亘る「一実施形態」又は「実施形態」への言及は、実施形態に関連して説明される特定のフィーチャ、構造、又は特徴が少なくとも1つの実施形態に含まれることを意味する。従って、本明細書全体の様々な場所で「一実施形態において」又は「実施形態において」という語句が出現するが、必ずしもすべてが同じ実施形態を指すわけではない。更に、用語「又は」は、排他的な「又は」ではなく、包括的な「又は」を意味することを意図している。「約」又は「およそ」という用語が本明細書で使用される場合、これは、提示された公称値が±10%以内の精度であることを意味することを意図している。
【0135】
本明細書のオペレーションは特定の順序で示され、説明されているが、各々の方法のオペレーションの順序は変更可能であり、特定の動作を逆の順序で実行し、特定の動作を少なくとも部分的に他の動作と同時に実行することができる。他の実施形態では、別個のオペレーションの命令又はサブ命令はは、断続的及び/又は交互に実行することができる。
【0136】
上記の説明は、例示を目的としたものであり、限定するものではないと理解される。当業者であれば、上記の説明を読んで理解すれば、他の多くの実施形態が明らかになる。従って、開示の範囲は、添付の特許請求の範囲及びこのような特許請求の範囲が権利を有する均等物の全範囲を参照して決定されるべきである。
【国際調査報告】