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

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

▶ アプライド マテリアルズ インコーポレイテッドの特許一覧

特許7586933機械学習を使用した基板プロセスのドリフトの検出及び補正
<>
  • 特許-機械学習を使用した基板プロセスのドリフトの検出及び補正 図1
  • 特許-機械学習を使用した基板プロセスのドリフトの検出及び補正 図2
  • 特許-機械学習を使用した基板プロセスのドリフトの検出及び補正 図3
  • 特許-機械学習を使用した基板プロセスのドリフトの検出及び補正 図4
  • 特許-機械学習を使用した基板プロセスのドリフトの検出及び補正 図5
  • 特許-機械学習を使用した基板プロセスのドリフトの検出及び補正 図6
  • 特許-機械学習を使用した基板プロセスのドリフトの検出及び補正 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-11
(45)【発行日】2024-11-19
(54)【発明の名称】機械学習を使用した基板プロセスのドリフトの検出及び補正
(51)【国際特許分類】
   H01L 21/02 20060101AFI20241112BHJP
   H01L 21/66 20060101ALI20241112BHJP
   G06N 20/00 20190101ALI20241112BHJP
【FI】
H01L21/02 Z
H01L21/66 Z
G06N20/00
【請求項の数】 20
(21)【出願番号】P 2022572401
(86)(22)【出願日】2021-08-27
(65)【公表番号】
(43)【公表日】2023-08-16
(86)【国際出願番号】 US2021048061
(87)【国際公開番号】W WO2022047235
(87)【国際公開日】2022-03-03
【審査請求日】2023-01-20
(31)【優先権主張番号】63/072,824
(32)【優先日】2020-08-31
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】17/379,728
(32)【優先日】2021-07-19
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】390040660
【氏名又は名称】アプライド マテリアルズ インコーポレイテッド
【氏名又は名称原語表記】APPLIED MATERIALS,INCORPORATED
【住所又は居所原語表記】3050 Bowers Avenue Santa Clara CA 95054 U.S.A.
(74)【代理人】
【識別番号】110002077
【氏名又は名称】園田・小林弁理士法人
(72)【発明者】
【氏名】ウメサラ, ウペンドラ
(72)【発明者】
【氏名】エリクソン, ブレイク
(72)【発明者】
【氏名】クマール, プラシャンス
(72)【発明者】
【氏名】カットニー, マイケル
(72)【発明者】
【氏名】ティンデル, スティーヴン トレイ
(72)【発明者】
【氏名】シュ, ツァオツァオ
【審査官】平野 崇
(56)【参考文献】
【文献】米国特許出願公開第2020/0264335(US,A1)
【文献】国際公開第2019/239380(WO,A1)
【文献】特表2014-507801(JP,A)
【文献】米国特許出願公開第2012/0185813(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H01L 21/02
H01L 21/66
G06N 20/00
G05B 19/418
(57)【特許請求の範囲】
【請求項1】
トレーニングされた機械学習モデルを記憶するためのメモリと、
前記メモリに連結された処理デバイスと
を備え、前記処理デバイスは、
トレーニングされた機械学習モデルへの入力として、プロセスレシピに従って製造システムにおいて第1のセットの基板の各々を処理することに関連した測定されたデータを提供することと、
前記トレーニングされた機械学習モデルから1つ又は複数の出力を取得することと、
前記1つ又は複数の出力から、
ターゲット計測測定値からの前記第1のセットの基板についての第1のセットの計測測定値のドリフト量、並びに
前記プロセスレシピに対する1つ又は複数の修正を識別するプロセスレシピ修正データ、及び、前記修正の各々について、前記プロセスレシピに対するそれぞれの修正が、第2のセットの基板についてのドリフト基準を満たすという信頼度の表示
を決定することと、
信頼度基準を満たす信頼度を有する前記それぞれの修正を識別することに応答して、前記それぞれの修正に基づいて前記プロセスレシピを更新することと
を実行する、システム。
【請求項2】
前記処理デバイスは、
基板測定サブシステムから、前記第1のセットの基板の各々についての第1のセットの測定値を受信すること
を更に実行し、前記第1のセットの測定値は、前記第1のセットの基板のそれぞれの基板のプロファイルに関連したスペクトルデータ又は非スペクトルデータのうちの少なくとも1つを含み、前記第1のセットの基板の各々の処理に関連した前記測定されたデータは、前記第1のセットの測定値の前記スペクトルデータ又は前記非スペクトルデータのうちの前記少なくとも1つを含む、請求項1に記載のシステム。
【請求項3】
前記処理デバイスは、
前記第1のセットの基板の各々についての第2のセットの測定値を受信すること
を更に実行し、
前記第2のセットの測定値は、前記製造システムの処理チャンバ、移送チャンバ、ロードロック、ファクトリインターフェース、又は基板保管容器のうちの少なくとも1つの、1つ又は複数のセンサから受信される、請求項2に記載のシステム。
【請求項4】
前記処理デバイスは、
前記トレーニングされた機械学習モデルへの追加の入力として、前記第1のセットの基板についての前記第1のセットの計測測定値を提供すること
を更に実行する、請求項1に記載のシステム。
【請求項5】
前記プロセスレシピに対するそれぞれの修正が、前記第2のセットの基板についての予測されるセットの計測測定値のドリフトの量を閾値量未満にすると予測されるという決定に応答して、前記プロセスレシピに対する前記それぞれの修正は、前記第2のセットの基板についての前記ドリフト基準を満たす、請求項1に記載のシステム。
【請求項6】
前記それぞれの修正に基づいて前記プロセスレシピを更新することは、前記プロセスレシピの動作を修正すること、又は前記第2のセットの基板についての前記プロセスレシピの実行を終了するための命令を生成することのうちの少なくとも1つを含む、請求項1に記載のシステム。
【請求項7】
前記それぞれの修正に基づいて前記プロセスレシピを更新するために、前記処理デバイスは、
製造システムに接続されたクライアントデバイスに、前記第2のセットの基板のための前記プロセスレシピを修正するリクエストを送信することと、
前記クライアントデバイスから、前記第2のセットの基板のための前記プロセスレシピを修正するための命令を受信することと
を更に実行し、前記プロセスレシピは、受信された前記命令に従って更新される、請求項6に記載のシステム。
【請求項8】
前記それぞれの修正の前記信頼度は、前記信頼度が信頼度の閾値を超えるとの決定に応答して、前記信頼度基準を満たす、請求項1に記載のシステム。
【請求項9】
製造システムにおいて処理されている現在の基板についての特定のプロセスレシピについての修正を予測するために、機械学習モデルをトレーニングするための方法であって、
前記機械学習モデルのための第1のトレーニングデータを生成することであって、前記第1のトレーニングデータは、第1のプロセスレシピに従って前記製造システムで以前に処理された第1のセットの先の基板に関連した履歴データと、前記第1のセットの先の基板の各々に関連した第1のセットの履歴計測測定値とを含む、第1のトレーニングデータを生成することと、
前記機械学習モデルのための第2のトレーニングデータを生成することであって、前記第2のトレーニングデータは、第2のプロセスレシピに従って前記製造システムで以前に処理された第2のセットの先の基板に関連した履歴データと、前記第2のセットの先の基板の各々に関連した第2のセットの履歴計測測定値とを含む、第2のトレーニングデータを生成することと、
前記機械学習モデルのための第3のトレーニングデータを生成することであって、前記第3のトレーニングデータは、前記第1のプロセスレシピと前記第2のプロセスレシピとの間の差の表示を含む、第3のトレーニングデータを生成することと、
前記機械学習モデルをトレーニングして、前記製造システムにおいて処理されている前記現在の基板についての前記特定のプロセスレシピに関し、前記プロセスレシピに対するどのような修正が、前記現在の基板の後に処理される後続のセットの基板についてのドリフト基準を満たすかを予測するために、前記第1のトレーニングデータ、前記第2のトレーニングデータ、及び前記第3のトレーニングデータを提供することと
を含む、方法。
【請求項10】
前記第1のトレーニングデータを生成することは、
前記第1のセットの先の基板のうちの先の基板の各々について、前記先の基板の1つ又は複数の部分について生成された履歴スペクトルデータ又は履歴非スペクトルデータのうちの少なくとも1つに基づいて、それぞれの履歴計測測定値を決定すること
を含む、請求項9に記載の方法。
【請求項11】
前記製造システムの基板測定サブシステムから、前記第1のセットの先の基板のうちの第1の先の基板の一部についての第1のセットの測定値を受信すること
を更に含み、前記第1のセットの測定値は、前記第1の先の基板の前記一部について生成されたそれぞれの履歴スペクトルデータ又はそれぞれの履歴非スペクトルデータのうちの少なくとも1つを含む、請求項10に記載の方法。
【請求項12】
前記第1のトレーニングデータを生成することは、
前記製造システムに通信可能に連結された計測システムから、前記第1のセットの先の基板の各々に関連した前記第1のセットの履歴計測測定値を受信すること
を含む、請求項9に記載の方法。
【請求項13】
前記第1のトレーニングデータを生成することは、前記第1のセットの先の基板のうちの前記先の基板の各々について、それぞれの前記先の基板の1つ又は複数の部分についての履歴スペクトルデータ又は履歴非スペクトルデータのうちの少なくとも1つに基づいて、それぞれの履歴計測測定値を決定することを含み、前記第2のトレーニングデータを生成することは、前記製造システムに接続されたクライアントデバイス又は前記製造システムに接続された計測測定ツールのうちの少なくとも1つから、前記第2のセットの先の基板の各々に関連した前記第2のセットの履歴計測測定値を受信することを含む、請求項9に記載の方法。
【請求項14】
前記第1のトレーニングデータを生成することは、
前記製造システムの処理チャンバ、移送チャンバ、ロードロック、ファクトリインターフェース、又は基板保管容器のうちの少なくとも1つの、1つ又は複数のセンサから、セットの測定値を受信すること
を含み、前記セットの測定値は、前記第1のセットの先の基板の各々について前記第1のプロセスレシピの実行中に生成され、前記第1のセットの先の基板に関連した前記履歴データは、受信した前記セットの測定値を含む、請求項9に記載の方法。
【請求項15】
処理デバイスによって実行されると、前記処理デバイスに、
トレーニングされた機械学習モデルへの入力として、プロセスレシピに従って製造システムにおいて第1のセットの基板の各々を処理することに関連した測定されたデータを提供することと、
前記トレーニングされた機械学習モデルから1つ又は複数の出力を取得することと、
前記1つ又は複数の出力から、
ターゲット計測測定値からの前記第1のセットの基板についての第1のセットの計測測定値のドリフト量、及び
前記プロセスレシピに対する1つ又は複数の修正を識別するプロセスレシピ修正データ、及び、前記修正の各々について、前記プロセスレシピに対するそれぞれの修正が、第2のセットの基板についてのドリフト基準を満たすという信頼度の表示
を決定することと、
信頼度基準を満たす信頼度を有する前記それぞれの修正を識別することに応答して、前記それぞれの修正に基づいて前記プロセスレシピを更新することと
を実行させる命令を含む、非一時的コンピュータ可読記憶媒体。
【請求項16】
前記処理デバイスは、
基板測定サブシステムから、前記第1のセットの基板の第1の基板についての第1のセットの測定値を受信すること
を更に実行し、前記第1のセットの測定値は、前記第1の基板の各々のプロファイルに関連したスペクトルデータ又は非スペクトルデータの少なくとも1つを含み、前記第1のセットの基板の各々の処理に関連した前記測定されたデータは、前記第1のセットの測定値の前記スペクトルデータ又は前記非スペクトルデータの前記少なくとも1つを含む、請求項15に記載の非一時的コンピュータ可読記憶媒体。
【請求項17】
前記処理デバイスは、
前記製造システムの処理チャンバ、移送チャンバ、ロードロック、ファクトリインターフェース、又は基板保管容器のうちの少なくとも1つの、1つ又は複数のセンサから、前記第1の基板についての第2のセットの測定値を受信すること
を更に実行する、請求項16に記載の非一時的コンピュータ可読記憶媒体。
【請求項18】
前記処理デバイスは、
前記トレーニングされた機械学習モデルへの追加の入力として、前記第1のセットの基板についての前記第1のセットの計測測定値を提供すること
を更に実行する、請求項15に記載の非一時的コンピュータ可読記憶媒体。
【請求項19】
前記プロセスレシピに対するそれぞれの修正が、前記第2のセットの基板についての予測される推定セットの計測測定値のドリフト量を閾値量未満にすると予測されるとの決定に応答して、前記プロセスレシピに対する前記それぞれの修正は、前記第2のセットの基板についての前記ドリフト基準を満たす、請求項15に記載の非一時的コンピュータ可読記憶媒体。
【請求項20】
前記それぞれの修正に基づいて前記プロセスレシピを更新することは、前記プロセスレシピの動作を修正すること、又は前記第2のセットの基板についての前記プロセスレシピの実行を終了するための命令を生成することのうちの少なくとも1つを含む、請求項15に記載の非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
[0001] 本開示の実施形態は、概して、製造システムに関し、より詳細には、機械学習を使用して基板プロセスのドリフトを検出及び補正することに関する。
【背景技術】
【0002】
[0002] 製造システムで実行されるプロセスレシピは、特定の基板品質及び一貫性を達成するように構成されうる。製造システムの構成要素に欠陥が生じ、基板の処理中に、製造システムにおける1つ又は複数の条件が予期せずに変化する可能性がある。欠陥のある構成要素に対処する(欠陥のある構成要素を識別及び交換する、欠陥のある構成要素の影響を打ち消すためにプロセスレシピを修正するなど)措置を講じないと、基板の処理中にエラーが発生し、完成した基板に欠陥が生じる可能性がある。時間の経過とともに、製造システムで処理される基板についての品質及び一貫性は、プロセスレシピに関連するターゲット品質及び一貫性から離れてドリフトする(drift)ことがある。しかしながら、製造システムのオペレータが、ターゲット品質と一貫性からドリフトを識別し、ドリフトの原因となっている欠陥のある構成要素を決定し、品質と一貫性のドリフトに対処するための適切な処置を決定することは、困難な場合がある。
【発明の概要】
【0003】
[0003] 説明される実施形態のいくつかは、メモリと、メモリに連結された処理デバイスとを含むシステムの範囲に及ぶ。処理デバイスは、トレーニングされた機械学習モデルへの入力として、プロセスレシピに従って製造システムにおいて第1のセットの基板の各々を処理することに関連したデータを提供することを実行する。処理デバイスは、トレーニングされた機械学習モデルから1つ又は複数の出力を取得することを更に実行する。処理デバイスは、1つ又は複数の出力から、第1のセットの基板についての第1のセットの計測測定値のターゲット計測測定値からのドリフト量を決定することを更に実行する。処理デバイスは、1つ又は複数の出力から、プロセスレシピに対する1つ又は複数の修正を識別するプロセスレシピ修正データと、修正の各々について、プロセスレシピに対するそれぞれの修正が第2のセットの基板についてのドリフト基準を満たす信頼度の表示とを更に決定することを実行する。処理デバイスは、信頼度基準(level of confidence criterion)を満たす信頼度(level of confidence)を有するそれぞれの修正を識別することを更に実行する。処理デバイスは、それぞれの修正に基づいてプロセスレシピを更新することを更に実行する。
【0004】
[0004] いくつかの実施形態では、製造システムにおいて処理されている現在の基板についての特定のプロセスレシピの修正を予測するために機械学習モデルをトレーニングするための方法が提供される。本方法は、機械学習モデルのための第1のトレーニングデータを生成することを含む。第1のトレーニングデータは、第1のプロセスレシピに従って製造システムで以前に処理された第1のセットの先の基板に関連した履歴データと、セットの先の基板の各々に関連した第1のセットの履歴計測測定値とを含む。本方法は、機械学習モデルのための第2のトレーニングデータを生成することを更に含む。第2のトレーニングデータは、第2のプロセスレシピに従って製造システムで以前に処理された第2のセットの先の基板に関連した履歴データと、セットの先の基板の各々に関連した第2のセットの履歴計測測定値とを含む。本方法は、機械学習モデルのための第3のトレーニングデータを生成することを更に含む。第3のトレーニングデータは、第1のプロセスレシピと第2のプロセスレシピとの間の差の表示を含む。本方法は、機械学習モデルをトレーニングして、製造システムにおいて処理されている現在の基板についての特定のプロセスレシピに関し、プロセスレシピに対するどのような修正が、現在の基板の後に処理される後続のセットの基板についてのドリフト基準を満たすかを予測するために、第1のトレーニングデータ、第2のトレーニングデータ、及び第3のトレーニングデータを提供することを更に含む。
【0005】
[0005] いくつかの実施形態では、非一時的コンピュータ可読記憶媒体は、処理デバイスによって実行されると、処理デバイスに、トレーニングされた機械学習モデルへの入力として、プロセスレシピに従って製造システムにおいて第1のセットの基板の各々を処理することに関連したデータを提供させる命令を含む。処理デバイスは、トレーニングされた機械学習モデルから1つ又は複数の出力を取得することを更に実行する。処理デバイスは、1つ又は複数の出力から、ターゲット計測測定値からの第1のセットの基板についての第1のセットの計測測定値のドリフト量を決定することを更に実行する。処理デバイスは、1つ又は複数の出力から、プロセスレシピに対する1つ又は複数の修正を識別するプロセスレシピ修正データと、修正の各々について、プロセスレシピに対するそれぞれの修正が第2のセットの基板についてのドリフト基準を満たす信頼度の表示とを更に決定することを実行する。処理デバイスは、信頼度基準(level of confidence criterion)を満たす信頼度(level of confidence)を有するそれぞれの修正を識別することを更に実行する。処理デバイスは、それぞれの修正に基づいてプロセスレシピを更新することを更に実行する。
【0006】
[0006] 本開示は、添付図面において、限定ではなく例として示されており、類似の参照符号は類似の要素を示している。本開示における「ある(an)」又は「1つの(one)」実施形態に対する異なる言及は、必ずしも同じ実施形態に対するものではなく、そのような言及は、少なくとも1つを意味することに留意されたい。
【図面の簡単な説明】
【0007】
図1】[0007] 本開示の態様による例示的なコンピュータシステムアーキテクチャを示す。
図2】[0008] 本開示の態様による、機械学習モデルをトレーニングするための方法のフローチャートである。
図3】[0009] 本開示の態様による、例示的な製造システムの上面概略図である。
図4】[0010] 本開示の態様による、基板測定サブシステムの断面概略側面図である。
図5】[0011] 本開示の態様による、基板について収集されたスペクトルデータを示す。
図6】[0012] 本開示の態様による、機械学習を使用して、基板ドリフトを検出し、特定のプロセスレシピの修正を予測するための方法のフローチャートである。
図7】[0013] 本開示の1つ又は複数の態様に従って動作する例示的なコンピュータシステムのブロック図を示す。
【発明を実施するための形態】
【0008】
[0014] 本明細書に記載する実施態様は、機械学習モデルを使用して、基板プロセスドリフトを検出及び補正する方法及びシステムを提供する。基板プロセスドリフトは、特定のプロセスレシピに従って製造システムで処理される基板の品質及び/又は一貫性のドリフトを指す。基板プロセスドリフトは、ターゲット計測測定値からのプロセスレシピに従って製造システムで処理されるセットの基板に対する計測測定値のドリフトに基づいて検出されうる。計測測定値は、エッチング速度(即ち、基板の表面上に堆積された特定の材料が処理チャンバ内でエッチングされる速度)、エッチング速度の均一性(即ち、基板の表面の2つ以上の部分におけるエッチング速度の変動)、限界寸法(即ち、線、列、開口部、空間などの基板の要素の寸法を測定するための測定単位)、限界寸法の均一性(即ち、基板の表面にわたる限界寸法の変動)、エッジ間の配置誤差(edge to edge placement error(EPE))(即ち、基板の表面上に含まれる意図された特徴と結果として生じる特徴との間の差)などを含みうる。
【0009】
[0015] 処理デバイス(例えば、製造システムのためのシステムコントローラ)は、プロセスレシピに従って製造システムにおいてセットの基板を処理することに関連したデータを受信しうる。データは、製造システムの様々なステーションでセンサから受信されうる。例えば、処理デバイスは、処理チャンバ、移送チャンバ、ロードロック、ファクトリインターフェースなどでセンサからデータを受信しうる。いくつかの実施形態では、処理デバイスは、基板測定サブシステムから、基板が製造システムで処理される前又は後に、基板に関連したデータを受信しうる。例えば、処理デバイスは、各基板が処理チャンバでエッチングされた後に、各基板のプロファイルに関連したスペクトルデータを受信しうる。
【0010】
[0016] 処理デバイスは、トレーニングされた機械学習モデルの入力として基板が処理される前又は後に、セットの基板及び/又は基板に関連したデータを処理することに関連するデータを提供し、機械学習モデルから1つ又は複数の出力を取得しうる。いくつかの実施形態では、処理デバイスはまた、セットの基板についてのセットの計測測定値(例えば、エッチング速度、エッチング速度均一性、限界寸法、限界寸法均一性、エッジ間配置誤差など)を機械学習モデルへの入力として提供しうる。例えば、処理デバイスは、サブ基板測定サブシステムから受信したスペクトルデータ又は非スペクトルデータに基づいて、セットの計測測定値の各々を決定しうる。別の例では、処理デバイスは、製造システムに連結された計測システムからセットの計測測定値の各々を受信しうる。
【0011】
[0017] 処理デバイスは、機械学習モデルの出力から、ターゲット計測測定値からのセットの基板についてのセットの計測測定値のドリフト量を決定しうる。処理デバイスはまた、プロセスレシピに対する1つ又は複数の修正を識別するプロセスレシピ修正データを決定しうる。プロセスレシピの修正は、特定のプロセスレシピの動作を修正すること、又は製造システムにおいて処理される後続のセットの基板のためのプロセスレシピの実行を終了するための命令を生成することを含みうる。プロセスレシピ修正データはまた、プロセスレシピに対するそれぞれの修正が第2のセットの基板のドリフト基準を満たすという信頼度の表示を含みうる。処理デバイスは、製造システムでその後に処理されるセットの基板についての基板プロセスドリフトの量を低減するために、それぞれの修正が予測されるとの決定に応答して、プロセスレシピに対する修正がドリフト基準を満足させることを決定しうる。処理デバイスは、信頼基準を満たす信頼度を有するそれぞれの修正を識別し、識別された修正に基づいてプロセスレシピを更新しうる。
【0012】
[0018] いくつかの実施形態では、プロセスレシピ修正データは、基板プロセスドリフトの原因である欠陥を含む製造システムの1つ又は複数のステーションの表示を含みうる。そのような実施形態では、処理デバイスは、欠陥を含む1つ又は複数のステーションの表示を含む製造システムのユーザ(例えば、オペレータ)に通知を送信しうる。いくつかの実施形態では、表示は、欠陥を含む1つ又は複数のステーションの特定の構成要素を含みうる。いくつかの実施形態では、通知は、プロセスレシピに対するそれぞれの修正についての予測とともに製造システムのユーザに送信されうる。
【0013】
[0019] 機械学習モデルは、第1のプロセスレシピ及び第2のプロセスレシピに従って、製造システムにおいて以前に処理された先の基板に関連した履歴データを使用してトレーニングされうる。また、機械学習モデルは、先の基板の各々に関連した履歴計測測定値を使用してトレーニングされうる。例えば、処理デバイス(例えば、システムコントローラ)は、第1のプロセスレシピに従って処理された第1のセットの先の基板に関連した履歴データと、第1のセットの先の基板の各々に関連した第1のセットの履歴計測測定値とを含む第1のトレーニングデータを生成しうる。また、処理デバイスは、第2のプロセスレシピに従って処理された第2のセットの先の基板に関連した履歴データと、第2のセットの先の基板の各々に関連した第2のセットの履歴計測測定値とを含む第2のトレーニングデータを生成しうる。第1のプロセスレシピの少なくとも1つの動作が第2のプロセスレシピの動作と異なることを除いて、第1のプロセスレシピは第2のプロセスレシピに類似しうる。例えば、第1のプロセスレシピの特定の動作は、処理チャンバの内部温度を摂氏100度(℃)に設定することを含みうる。第2のプロセスレシピの対応する動作は、処理チャンバの内部温度を110℃に設定することを含みうる。処理デバイスは、第1のプロセスレシピと第2のプロセスレシピとの間の差の表示を含む第3のトレーニングデータを生成しうる。先の例に従って、第3のトレーニングデータは、第1のプロセスレシピと第2のプロセスレシピとの間の差が特定の動作のための温度設定における10℃の差に対応することを示しうる。処理デバイスは、機械学習モデルをトレーニングするために、第1のトレーニングデータ、第2のトレーニングデータ、及び第3のトレーニングデータを提供しうる。
【0014】
[0020] 本開示の態様は、製造システムにおいて基板プロセスドリフトを検出及び補正するためのシステム及び方法を提供することによって、従来技術の上述の欠点に対処する。基板プロセスドリフトは、ターゲット計測測定値からの計測測定値のドリフトに基づいて検出されうる。製造システムで処理された基板に関連したデータを使用して、機械学習モデルは、基板プロセスドリフトがいつ発生したかを検出し、製造システムでその後に処理される基板についてドリフトを補正する可能性がある修正を予測しうる。システムコントローラは、予測された修正に基づいてプロセスレシピを更新しうる。予測された修正に基づいてプロセスレシピを更新することによって、製造システムにおける基板プロセスドリフトの量が減少し、製造システム内で発生する多数の欠陥を減少させ、システム全体の効率を向上させることになる。加えて、基板についてのターゲット計測測定値からの基板ドリフトが検出され、検出された偏差に基づいて、エラープロトコル(例えば、製造システムのオペレータにエラーメッセージを送信すること、製造システムでの動作を停止することなど)が開始されうる。よって、基板及び/又は製造システムへの不要な損傷が防止される。
【0015】
[0021] 図1は、本開示の態様による、例示的なコンピュータシステムアーキテクチャ100を示す。いくつかの実施形態では、コンピュータシステムアーキテクチャ100は、図3の製造システム300などの、基板を処理するための製造システムの一部として含まれうる。コンピュータシステムアーキテクチャ100は、クライアントデバイス120、製造機器124、計測機器128、予測サーバ112(例えば、予測データを生成するため、モデル適応を提供するため、知識ベースを使用するためなど)、及びデータストア140を含む。予測サーバ112は、予測システム110の一部でありうる。予測システム110は、サーバマシン170及び180を更に含みうる。製造機器124は、製造システムにおいて処理されている基板についてのデータを捕捉するように構成されたセンサ125を含みうる。いくつかの実施形態では、製造機器124及びセンサ126は、センササーバ(例えば、製造設備におけるフィールドサービスサーバ(FSS))及びセンサ識別子リーダ(例えば、センサシステムのための前方開口型統一ポッド(FOUP)無線周波数識別(RFID)リーダ)を含むセンサシステムの一部でありうる。いくつかの実施形態では、計測機器128は、計測サーバ(例えば、計測データベース、計測フォルダなど)及び計測識別子リーダ(例えば、計測システムのためのFOUP RFIDリーダ)を含む計測システムの一部でありうる。
【0016】
[0022] 製造機器124は、レシピに従って又はある期間にわたって連続稼働を実行して(or performing runs over a period of time)製品を生産しうる。製造機器124は、基板測定サブシステム内に埋め込まれた基板のためのスペクトルデータ及び/又は位置データを生成するように構成された1つ又は複数のセンサ126を含む基板測定サブシステムを含みうる。スペクトルデータ(本明細書でスペクトル感知構成要素と称される)を生成するように構成されたセンサ126は、反射率測定センサ、エリプソメトリセンサ、熱スペクトルセンサ、容量性センサなどを含みうる。いくつかの実施形態では、スペクトル感知構成要素は、基板測定サブシステム又は製造システムの別の部分内に含まれうる。1つ又は複数のセンサ126(例えば、渦電流センサなど)はまた、基板についての非スペクトルデータを生成するように構成されうる。製造機器124及び基板測定サブシステムに関する更なる詳細が、図3及び図4に関して提供される。
【0017】
[0023] いくつかの実施形態では、センサ126は、製造機器124に関連したセンサデータを提供しうる。センサデータは、温度(例えば、ヒータ温度)、間隔(SP)、圧力、高周波無線周波数(HFRF)、静電チャックの電圧(ESC)、電流、流れ、電力、電圧などのうちの1つ又は複数の値を含みうる。センサデータは、製造機器124の設定又は構成要素(例えば、サイズ、タイプなど)といったハードウェアパラメータ、又は製造機器124のプロセスパラメータなどの製造パラメータに関連付けられうるか、又はこれらを示しうる。センサデータは、製造機器124が製造プロセスを実行している間に提供されうる(例えば、製品を処理する際の機器読み取り値)。センサデータ142は、基板ごとに異なりうる。
【0018】
[0024] 計測機器128は、製造機器124によって処理された基板(例えば、ウエハなど)に関連した計測データを提供しうる。計測データは、膜特性データ(例えば、ウエハ空間膜特性)、寸法(例えば、厚さ、高さなど)、誘電率、ドーパント濃度、密度、欠陥などの1つ又は複数の値を含みうる。いくつかの実施形態では、計測データは、1つ又は複数の表面プロファイル特性データ(例えば、エッチング速度、エッチング速度均一性、基板の表面上に含まれる1つ又は複数のフィーチャの限界寸法、基板の表面にわたった限界寸法均一性、エッジ配置誤差など)の値を更に含みうる。計測データは、完成品であっても又は半完成品であってもよい。計測データは、基板ごとに異なりうる。
【0019】
[0025] クライアントデバイス120は、パーソナルコンピュータ(PC)、ラップトップ、携帯電話、スマートフォン、タブレットコンピュータ、ネットブックコンピュータ、ネットワーク接続テレビ(「スマートTV」)、ネットワーク接続メディアプレーヤ(例えば、ブルーレイプレーヤ)、セットトップボックス、オーバーザトップ(OTT)ストリーミングデバイス、オペレータボックスなどのコンピューティングデバイスを含みうる。いくつかの実施形態では、計測データは、クライアントデバイス120から受信されうる。クライアントデバイス120は、グラフィカルユーザインターフェース(GUI)を表示しうる。GUIにより、ユーザは、入力として、製造システムにおいて処理された基板についての計測測定値を提供できるようになる。
【0020】
[0026] データストア140は、メモリ(例えば、ランダムアクセスメモリ)、ドライブ(例えば、ハードドライブ、フラッシュドライブ)、データベースシステム、又はデータを記憶可能な別のタイプの構成要素若しくはデバイスでありうる。データストア140は、複数のコンピューティングデバイス(例えば、複数のサーバコンピュータ)に及びうる複数の記憶構成要素(例えば、複数のドライブ又は複数のデータベース)を含みうる。データストア140は、製造機器124における基板の処理に関連したデータを記憶しうる。例えば、データストア140は、基板プロセスの前、間、又は後に、製造機器124においてセンサ126によって収集されたデータ(プロセスデータと称される)を記憶しうる。プロセスデータは、履歴プロセスデータ(例えば、製造システムで処理された先の基板について生成されたプロセスデータ)及び/又は現在のプロセスデータ(例えば、製造システムで処理される現在の基板について生成されるプロセスデータ)を指しうる。また、データストアは、製造機器124で処理される基板の一部に関連したスペクトルデータ又は非スペクトルデータを記憶しうる。スペクトルデータは、履歴スペクトルデータ及び/又は現在のスペクトルデータを含みうる。現在のプロセスデータ及び/又は現在のスペクトルデータは、予測データが生成されるデータでありうる。いくつかの実施形態では、データストアは、履歴計測データ(例えば、製造システムで処理された先の基板についての計測測定値)を含む計測データを記憶しうる。
【0021】
[0027] データストア140はまた、製造システムで処理された1つ又は複数の基板に関連したコンテキストデータを記憶しうる。コンテキストデータは、レシピ名、レシピステップ番号、予防保守インジケータ、オペレータなどを含むことができる。いくつかの実施形態では、コンテキストデータはまた、2つ以上のプロセスレシピ又はプロセスステップ間の差の表示を含むことができる。例えば、第1のプロセスレシピは、プロセスチャンバの内部温度を100℃に設定することを含む動作を含むことができる。第2のプロセスレシピは、プロセスチャンバの内部温度を110℃に設定することを含む対応する動作を含むことができる。コンテキストデータは、第1のプロセスレシピと第2のプロセスレシピとの間のプロセスチャンバの内部温度の差の表示を含むことができる。
【0022】
[0028] いくつかの実施形態では、データストア140は、製造システムのユーザがアクセスできないデータを記憶するように構成されうる。例えば、製造システムにおいて処理されている基板について取得されたプロセスデータ、スペクトルデータ、非スペクトルデータ、及び/又は位置データは、製造システムのユーザがアクセスできないことがある。いくつかの実施形態では、データストア140に記憶されたすべてのデータが、製造システムのユーザ(例えば、オペレータ)によりアクセス不可能でありうる。他の実施形態又は類似の実施形態では、データストア140に記憶されたデータの一部がユーザによりアクセス不可能であり、データストア140に記憶されたデータの別の部分はユーザによりアクセス可能でありうる。いくつかの実施形態では、データストア140に記憶されたデータの1つ又は複数の部分は、ユーザに知られていない暗号化メカニズムを使用して暗号化されうる(例えば、データは、秘密暗号化キーを使用して暗号化される)。他の実施形態又は類似の実施形態では、データストア140は、複数のデータストアを含みうる。その複数のデータストアでは、ユーザにはアクセスできないデータが1つ又は複数の第1のデータストアに記憶され、ユーザがアクセス可能なデータが1つ又は複数の第2のデータストアに記憶される。
【0023】
[0029] いくつかの実施形態では、予測システム110は、サーバマシン170及びサーバマシン180を含む。サーバマシン170は、機械学習モデル190をトレーニング、検証、及び/又は試験するためのトレーニングデータセット(例えば、データ入力のセット及びターゲット出力のセット)を生成可能なトレーニングセット生成器172を含む。トレーニングセット生成器172のいくつかの工程が、図2に関して以下で詳細に説明される。いくつかの実施形態では、トレーニングセット生成器172は、トレーニングデータを、トレーニングセット、検証セット、及び試験セットに分割しうる。いくつかの実施形態では、予測システム110は、トレーニングデータの複数のセットを生成する。
【0024】
[0030] サーバマシン180は、トレーニングエンジン182、検証エンジン184、選択エンジン185、及び/又は試験エンジン186を含みうる。エンジンは、ハードウェア(例えば、回路、専用ロジック、プログラマブルロジック、マイクロコード、処理デバイスなど)、ソフトウェア(処理デバイス、汎用コンピュータシステム、又は専用マシン上で実行される命令など)、ファームウェア、マイクロコード、又はこれらの組合せを指しうる。トレーニングエンジン182は、機械学習モデル190をトレーニング可能でありうる。機械学習モデル190は、トレーニング入力及び対応するターゲット出力(それぞれのトレーニング入力についての正解)を含むトレーニングデータを使用してトレーニングエンジン182によって作成されるモデルアーチファクトを指しうる。トレーニングエンジン182は、トレーニング入力をターゲット出力(予測される回答)にマッピングするトレーニングデータ内のパターンを見つけ、これらのパターンを捕捉する機械学習モデル190を提供しうる。機械学習モデル190は、サポートベクトルマシン(SVM)、動径基底関数(RBF)、クラスタリング、教師あり機械学習、半教師あり機械学習、教師なし機械学習、k最近傍法アルゴリズム(k-NN)、線形回帰、ランダムフォレスト、ニューラルネットワーク(例えば、人工ニューラルネットワーク)などのうちの1つ又は複数を使用しうる。
【0025】
[0031] 検証エンジン184は、トレーニングセット生成器172からの検証セットの対応する特徴セットを使用して、トレーニングされた機械学習モデル190を検証可能でありうる。検証エンジン184は、検証セットの特徴の対応するセットに基づいて、トレーニングされた機械学習モデル190の各々の精度を決定しうる。検証エンジン184は、閾値精度を満たさない精度を有するトレーニングされた機械学習モデル190を破棄しうる。いくつかの実施形態では、選択エンジン185は、閾値精度を満たす精度を有するトレーニングされた機械学習モデル190を選択可能でありうる。いくつかの実施形態では、選択エンジン185は、トレーニングされた機械学習モデル190の精度が最も高い、トレーニングされた機械学習モデル190を選択可能でありうる。
【0026】
[0032] 試験エンジン186は、トレーニングセット生成器172からの試験セットの対応するセットの特徴を使用して、トレーニングされた機械学習モデル190を試験可能でありうる。例えば、トレーニングセットの第1のセットの特徴を使用してトレーニングされた、第1のトレーニングされた機械学習モデル190は、試験セットの第1のセットの特徴を使用して試験されうる。試験エンジン186は、試験セットに基づいて、トレーニングされた機械学習モデルの全ての中で最も高い精度を有するトレーニングされた機械学習モデル190を決定しうる。
【0027】
[0033] 予測サーバ112は、トレーニングされた機械学習モデル190への入力としてのプロセスレシピに従って、製造システムにおいてセットの基板の各々を処理することに関連したデータを提供し、1つ又は複数の出力を取得するために、入力においてトレーニングされた機械学習モデル190を実行することができる予測構成要素114を含む。図4に関して以下で詳細に説明するように、いくつかの実施形態では、予測構成要素114はまた、トレーニングされた機械学習モデル190の出力からプロセスレシピ修正データを決定し、ドリフト基準を満たす製造システムにおいて処理されている現在の基板についてのプロセスレシピに対する修正を予測するために、プロセスレシピ修正データを使用することができる。
【0028】
[0034] プロセスレシピ修正データは、プロセスレシピへの1つ又は複数の修正と、各修正について、それぞれの修正がドリフト基準を満たす信頼度とを含みうるか又は示しうる。それぞれの修正が、処理される後続のセットの基板についての予測されるセットの計測測定値のドリフト量を閾値量未満にするよう処理されると予測されるとの決定に応答して、予測システム110は、それぞれの修正がドリフト基準を満たすと決定することができる。例えば、処理チャンバの内部温度を10℃変化させる修正は、予測システム110が、この修正が処理される基板についての計測測定値のドリフト量を閾値量まで減少させる可能性があると決定することに応答して、ドリフト基準を満たすことができる。いくつかの実施形態では、プロセスレシピ修正データは、基板プロセスドリフトを引き起こしている製造システム100における1つ又は複数のステーションの表示を含むことができる。例えば、プロセスレシピ修正データは、特定のプロセスチャンバの温度センサが欠陥であることを示すことができる。いくつかの実施形態では、予測システム110は、基板プロセスドリフトを引き起こしている1つ又は複数のステーション(又は特定のステーションの1つ又は複数の構成要素)を示す通知を、製造システム100のユーザ(例えば、オペレータ)に送信することができる。
【0029】
[0035] クライアントデバイス120、製造機器124、センサ126、計測機器128、予測サーバ112、データストア140、サーバマシン170、及びサーバマシン180は、ネットワーク130を介して互いに連結されうる。いくつかの実施形態では、ネットワーク130は、予測サーバ112、データストア140、及び他の公的に利用可能なコンピューティングデバイスへのアクセスをクライアントデバイス120に提供する公衆ネットワークである。いくつかの実施形態では、ネットワーク130は、クライアントデバイス120に、製造機器124、計測機器128、データストア140、及び他のプライベートに利用可能なコンピューティングデバイスへのアクセスを提供するプライベートネットワークである。ネットワーク130は、1つ以上のワイドエリアネットワーク(WAN)、ローカルエリアネットワーク(LAN)、有線ネットワーク(例えば、Ethernetネットワーク)、無線ネットワーク(例えば、802.11ネットワーク又はWi-Fiネットワーク)、セルラネットワーク(例えば、ロングタームエボリューション(LTE)ネットワーク)、ルータ、ハブ、スイッチ、サーバコンピュータ、クラウドコンピューティングネットワーク、及び/又はこれらの組み合わせを含みうる。
【0030】
[0036] 他のいくつかの実施態様では、サーバマシン170及び180、並びに予測サーバ112の機能は、より少ない数のマシンによって提供されうることに留意されたい。例えば、いくつかの実施形態では、サーバマシン170及び180は、単一のマシンに統合されてもよく、その一方で、いくつかの他の実施形態又は類似の実施形態では、サーバマシン170及び180、並びに予測サーバ112は、単一のマシンに統合されてもよい。
【0031】
[0037] 概して、サーバマシン170、サーバマシン180、及び/又は予測サーバ112によって実行されるように、1つの実施態様で説明される機能はまた、クライアントデバイス120上でも実行されうる。加えて、特定の構成要素に帰属される機能性は、共に動作する異なる又は複数の構成要素によって実行されうる。
【0032】
[0038] 実施形態では、「ユーザ(user)」は、単一の個人として表されうる。しかしながら、本開示の他の実施形態は、「ユーザ」が複数のユーザ及び/又は自動化されたソースによって制御されるエンティティであることを包含する。例えば、管理者のグループとして連合した個々のユーザのセットが「ユーザ」と見なされうる。
【0033】
[0039] 図2は、本開示の態様による、機械学習モデルをトレーニングするための方法200のフローチャートである。方法200は、ハードウェア(回路、専用ロジックなど)、ソフトウェア(汎用コンピュータシステム又は専用マシン上で実行されるものなど)、ファームウェア、又はこれらの何らかの組合せを含みうる処理ロジックによって実行される。1つの実施形態では、方法200は、図1のコンピュータシステムアーキテクチャ100などのコンピュータシステムによって実行されうる。他の実施態様又は類似の実施態様では、方法200の1つ又は複数の工程は、図に示されていない1つ又は複数の他の機械によって実行されうる。いくつかの態様では、方法200の1つ又は複数の工程は、サーバマシン170のトレーニングセット生成器172によって実行されうる。
【0034】
[0040] 説明を簡単にするために、これらの方法は、一連の動作として図示され、説明される。しかしながら、本開示による動作は、様々な順序で、及び/又は同時に、及び本明細書で提示及び説明されていない他の動作と共に、実行されうる。更に、開示された主題による方法を実施するために、すべての図示された動作が実行されうるわけではない。加えて、当業者は、方法が、代替的に、状態図又は事象を介して一連の相互に関連する状態として表されうることを理解し認識するだろう。更に、本明細書に開示される方法は、そのような方法をコンピューティングデバイスに移送及び転送することを容易にするために、製品上に記憶可能であることを理解されたい。本明細書で使用される際に、製品という用語は、任意のコンピュータ可読デバイス又は記憶媒体からアクセス可能なコンピュータプログラムを包含することを意図する。
【0035】
[0041] ブロック210において、処理ロジックは、トレーニングセットTを空のセット(例えば、{})に初期化する。ブロック212において、処理ロジックは、第1のプロセスレシピに従って第1のセットの基板を処理し、第2のプロセスレシピに従って第2のセットの基板を処理することに関連したデータを受信する。いくつかの実施形態では、第1のセットの基板の処理に関連したデータは、前述のように、センサ126から受信することができる。例えば、処理ロジックは、処理チャンバ、移送チャンバ、ロードロック、ファクトリインターフェース、基板キャリアなどでセンサからデータを受信することができる。他の実施形態又は類似の実施形態では、処理ロジックはまた、図4に関して説明した基板測定サブシステム400などの基板測定サブシステムからデータを受信することもできる。基板測定サブシステムは、基板が製造システムで処理される前又は後に、基板に関連したスペクトルデータ又は非スペクトルデータを捕捉するように構成されうる。処理ロジックは、基板測定サブシステムから、第1のセットの基板の各々に関連したデータを受信することができる。基板測定サブシステムは、(例えば、ファクトリインターフェースの一部として)製造システムと一体化されてもよく又は製造システムと一体化されなくてもよく、代わりに、製造システムと通信可能に連結されてもよい。基板測定システムに関する更なる詳細が、以下の図3及び図4に関して説明される。追加的実施形態又は代替的実施形態では、第1のセットの基板を処理することに関連したデータは、何らかの他の方法で受信されてもよく、製造システムの一部から受信されなくてもよいことに留意されたい。
【0036】
[0042] ブロック214では、処理ロジックは、第1のセットの基板及び第2のセットの基板の各々についての計測測定値を取得する。計測測定値は、製造システムで処理される基板についての、エッチング速度、エッチング速度の均一性、限界寸法、限界寸法の均一性、エッジ間配置誤差等のうちの少なくとも1つを含むことができる。いくつかの実施形態において、計測測定値は、図1に関して説明したように、製造システムに連結された外部計測システムから受信されうる。いくつかの実施形態では、外部計測測定システムは、(例えば、図1のネットワーク130によって)製造システムに通信可能に連結されうる。このような実施形態では、処理ロジックは、ネットワークを介して、外部の計測測定システムから、基板についての1つ又は複数の計測測定値を受信しうる。他の実施形態では、計測測定値は、外部の計測測定システムにおいて生成され、クライアントデバイスを介して製造システムに提供されうる。例えば、製造システムに連結されたクライアントデバイスは、製造システムのユーザ(例えば、オペレータ)にグラフィカルユーザインターフェース(GUI)を提供しうる。基板が外部計測サブシステムで測定された後に、ユーザは、GUIを介して計測測定値をクライアントデバイスに提供しうる。提供された計測測定値の受信に応答して、クライアントデバイスは、製造システムのデータストア140などのデータストアに計測測定値を記憶しうる。
【0037】
[0043] 他の実施形態又は類似の実施形態では、処理ロジックは、製造システムで処理された基板についての計測測定値を予測するようにトレーニングされた機械学習モデル(計測機械学習モデルと称される)を用いて、計測測定値を決定することができる。例えば、スペクトルデータは、製造システムにおける基板プロセス中又は後に、基板について(例えば、基板測定サブシステムにおいて、処理チャンバにおいて)生成されうる。スペクトルデータは、入力としてトレーニングされた計測機械学習モデルに提供されうる。いくつかの実施形態では、位置データはまた、基板について(例えば、基板測定サブシステムにおいて)生成されうる。位置データは、スペクトルデータに関連付けられる。そのような実施形態では、位置データは、別の入力としてスペクトルデータを用いて、トレーニングされた計測機械学習モデルに提供されうる。トレーニングされた計測機械学習モデルは、製造システムにおいて処理された先の基板についての計測測定値と、製造システムにおいて処理されている現在の基板が先の基板の計測測定値と関連付けられているという信頼度(level of confidence)とを含む1つ又は複数の出力を生成することができる。処理ロジックは、現在の基板についての信頼度がある信頼度基準を満たしているとの決定に応答して、計測測定値が現在の基板に対応すると決定しうる。
【0038】
[0044] いくつかの実施形態では、処理ロジックは、製造システムに連結された計測システムから、第1のセットの基板及び/又は第2のセットの基板の各々についての各計測測定値を受信することができる。他の実施形態又は類似の実施形態では、処理ロジックは、トレーニングされた計測機械学習モデルを用いて、第1のセットの基板及び/又は第2のセットの基板の各々についての各計測測定値を決定することができる。他の実施形態又は類似の実施形態では、処理ロジックは、第1のセットの基板及び/又は第2のセットの基板のうちの1つ又は複数の基板についての計測測定値を計測システムから受信し、トレーニングされた計測機械学習モデルを用いて計測測定値を決定することができる。
【0039】
[0045] ブロック216において、処理ロジックは、第1のプロセスレシピに従って処理された第1のセットの基板に関連した履歴データと、第1のセットの基板の各々についての計測測定値とに基づいて、第1のトレーニングデータを生成する。ブロック218において、処理ロジックは、第1のプロセスレシピに従って処理された第1のセットの基板に関連した履歴データと、第1のセットの基板の各々についての計測測定値とに基づいて、第2のトレーニングデータを生成する。ブロック220において、処理ロジックは、第1のプロセスレシピと第2のプロセスレシピとの間の差の表示を含む第3のトレーニングデータを生成する。例えば、第1のプロセスレシピは、プロセスチャンバの内部温度を100℃に設定することを含む動作を含むことができる。第2のプロセスレシピは、プロセスチャンバの内部温度を110℃に設定することを含む対応する動作を含むことができる。第3のトレーニングデータは、第1のプロセスレシピと第2のプロセスレシピとの間のプロセスチャンバの内部温度の差の表示を含むことができる。
【0040】
[0046] ブロック222で、処理ロジックは、第1のトレーニングデータ、第2のトレーニングデータ、及び第3のトレーニングデータの間のマッピングを生成する。マッピングは、第1のプロセスレシピに従って処理された第1のセットの基板についてのデータを含むか又はこれに基づく第1のトレーニングデータ、第2のプロセスレシピに従って処理された第2のセットの基板についてのデータを含むか又はこれに基づく第2のトレーニングデータ、及び第1のプロセスレシピと第2のプロセスレシピとの間の差の表示を含む第3のトレーニングデータを指す。第1のトレーニングデータ及び第2のトレーニングデータは、第3のトレーニングデータに関連付けられる(又はこれにマッピングされる)。ブロック224において、処理ロジックは、マッピングをトレーニングセットTに追加する。
【0041】
[0047] ブロック226において、処理ロジックは、トレーニングセットTが機械学習モデルをトレーニングするのに十分な量のトレーニングデータを含むかどうかを決定する。いくつかの実施態様では、トレーニングセットTが十分であることは、単にトレーニングセット中のマッピングの数に基づいて決定されうるが、いくつかの他の実施態様では、トレーニングセットTが十分であることは、入力/出力マッピングの数に加えて又はこの数の代わりに、1つ又は複数の他の基準(例えば、トレーニング例の多様性の尺度など)に基づいて決定されうることに留意されたい。トレーニングセットが機械学習モデルをトレーニングするのに十分な量のトレーニングデータを含まないとの決定に応答して、方法200はブロック212に戻る。トレーニングセットTが機械学習モデルをトレーニングするのに十分な量のトレーニングデータを含むとの決定に応答して、方法200はブロック228に続く。
【0042】
[0048] ブロック228において、処理ロジックは、機械学習モデルをトレーニングするためにトレーニングセットTを提供する。1つの実施態様では、トレーニングセットTは、トレーニングを実行するために、サーバマシン180のトレーニングエンジン182に提供される。ニューラルネットワークの場合、例えば、所与の入力/出力マッピングの入力値(例えば、先の基板についてのスペクトルデータ)がニューラルネットワークに入力され、入力/出力マッピングの出力値がニューラルネットワークの出力ノードに記憶される。次いで、学習アルゴリズム(例えば、逆伝搬など)に従ってニューラルネットワーク内の接続の重みが調整され、トレーニングセットT内の他の入力/出力マッピングについて、その手順が繰り返される。ブロック228の後に、製造システムにおいて処理されている現在の基板についての特定のプロセスレシピに関し、プロセスレシピに対するどのような修正が、現在の基板の後に処理される後続のセットの基板についてのドリフト基準を満たすかを予測するために、機械学習モデル190が使用されうる。。
【0043】
[0049] 図3は、本開示の態様による、例示的製造システム300の上面概略図である。製造システム300は、基板302上で1つ又は複数のプロセスを実行しうる。基板302は、例えば、シリコン含有ディスク又はウエハ、パターニングされたウエハ、ガラスプレートなど、電子デバイス又は回路構成要素をその上に製造するのに適した任意の適切な剛性の固定寸法の平面物品でありうる。
【0044】
[0050] 製造システム300は、プロセスツール304と、プロセスツール304に連結されたファクトリインターフェース306とを含みうる。プロセスツール304は、内部に移送チャンバ310を有するハウジング308を含みうる。移送チャンバ310は、周囲に配置され、そこに連結された1つ又は複数の処理チャンバ(プロセスチャンバとも呼ばれる)314、316、318を含みうる。処理チャンバ314、316、318は、スリットバルブなどのようなそれぞれのポートを通して移送チャンバ310に連結されうる。移送チャンバ310はまた、プロセスチャンバ314、316、318、ロードロック320などの間で基板302を移送するように構成された移送チャンバロボット312を含みうる。移送チャンバロボット312は、1つ又は複数のアームを含みうる。各アームは、各アームの端部に1つ又は複数のエンドエフェクタを含む。エンドエフェクタは、ウエハなどの特定の物体を取り扱うように構成されうる。
【0045】
[0051] 処理チャンバ314、316、318は、基板302上で任意の数のプロセスを実行するように適合されうる。同じ又は異なる基板プロセスが、各処理チャンバ314、316、318において実施されうる。基板プロセスは、原子層堆積(ALD)、物理的気相堆積(PVD)、化学気相堆積(CVD)、エッチング、アニーリング、硬化、予洗浄、金属又は金属酸化物除去などを含みうる。いくつかの実施形態では、基板プロセスは、原子層堆積(ALD)、物理的気相堆積(PVD)、化学気相堆積(CVD)、エッチング、アニーリング、硬化、予洗浄、金属又は金属酸化物除去などのうちの2つ以上の組み合わせを含みうる。他のプロセスは、その中の基板上で実行されうる。処理チャンバ314、316、318は各々、基板プロセスの前、後、又は間に基板302についてのデータを捕捉するように構成された1つ又は複数のセンサを含みうる。例えば、1つ又は複数のセンサは、基板プロセス中に基板302の一部のスペクトルデータ及び/又は非スペクトルデータを捕捉するように構成されうる。他の実施形態又は類似の実施形態では、1つ又は複数のセンサは、基板プロセスの前、後、又は間に、処理チャンバ314、316、318内の環境に関連したデータを捕捉するように構成されうる。例えば、1つ又は複数のセンサは、基板プロセス中に処理チャンバ314、316、318内の環境の温度、圧力、ガス濃度などに関連したデータを捕捉するように構成されうる。
【0046】
[0052] また、ロードロック320は、ハウジング308及び移送チャンバ310に連結されうる。ロードロック320は、片側の移送チャンバ310及びファクトリインターフェース306とインターフェース接続し、これらに連結されるように構成されうる。ロードロック320は、いくつかの実施形態では、真空環境(基板が移送チャンバ310との間で移送されうる)から、大気圧又は大気圧に近い不活性ガス環境(基板がファクトリインターフェース306との間で移送されうる)に変更されうる、環境制御された大気を有しうる。ロードロック320は、処理チャンバ314、316、318における基板プロセスの前、後、又は間に基板302に関連したデータを捕捉するための1つ又は複数のセンサを含みうる。例えば、ロードロック320は、処理チャンバ314、316、318での基板プロセスの間にロードロック320内で発生する振動の量を検出及びモニタするように構成された振動センサ(例えば、圧電センサ)を含みうる。別の例では、ロードロック320は、基板プロセス中にロードロック320の温度を検出及びモニタするための温度センサ(例えば、赤外線カメラ)を含みうる。本開示の実施形態は、基板プロセス中にロードロック320の状態をモニタするためにロードロック320における振動センサ又は温度センサなどのセンサを説明するが、基板プロセス中にステーションの状態及び/又は健全性をモニタするために、任意のタイプのセンサが製造システム100の任意のステーションにおいて使用できることに留意されたい。
【0047】
[0053] ファクトリインターフェース306は、例えば、機器フロントエンドモジュール(EFEM)などの任意の適切な筐体でありうる。ファクトリインターフェース306は、ファクトリインターフェース306の様々なロードポート324にドッキングされた基板キャリア322(例えば、前方開口型統一ポッド(FOUP))から基板302を受け取るように構成されうる。ファクトリインターフェースロボット326(点線で示される)は、キャリア(容器とも称される)322とロードロック320との間で基板302を移送するように構成されうる。キャリア322は、基板保管キャリア又は交換部品保管キャリアでありうる。ファクトリインターフェース306及び/又はキャリア322は、前述の実施形態による、処理チャンバ314、316、318における基板プロセスの前、後、又は間に基板302に関連したデータを捕捉するための1つ又は複数のセンサ(例えば、振動センサ、温度センサなど)を含みうる。
【0048】
[0054] 製造システム300はまた、製造システム300に関する情報をユーザ(例えば、オペレータ)に提供するように構成されているクライアントデバイス(図示せず)に接続されうる。いくつかの実施形態では、クライアントデバイスは、1つ又は複数のグラフィカルユーザインターフェース(GUI)を介して、製造システム300のユーザに情報を提供しうる。例えば、クライアントデバイスは、GUIを介して基板302についてのプロセスレシピに対して行われる1つ又は複数の修正に関する情報を提供しうる。
【0049】
[0055] 製造システム300はまた、システムコントローラ328を含みうる。システムコントローラ328は、パーソナルコンピュータ、サーバコンピュータ、プラグラム可能な論理制御装置(PLC)、マイクロコントローラなどのコンピューティングデバイスでありうる及び/又はこれを含みうる。システムコントローラ328は、マイクロプロセッサ、中央処理装置などの汎用処理デバイスでありうる1つ又は複数の処理デバイスを含みうる。より詳細には、処理デバイスは、複雑な命令セットコンピューティング(CISC)マイクロプロセッサ、縮小命令セットコンピューティング(RISC)マイクロプロセッサ、超長命令語(VLIW)マイクロプロセッサ、又は命令セットの組み合わせを実装する他の命令セット又はプロセッサでありうる。処理デバイスはまた、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、ネットワークプロセッサなどの1つ又は複数の専用処理デバイスでありうる。システムコントローラ328は、データストレージデバイス(例えば、1つ又は複数のディスクドライブ及び/又はソリッドステートドライブ)、メインメモリ、スタティックメモリ、ネットワークインターフェース、及び/又は他の構成要素を含みうる。システムコントローラ328は、本明細書で説明される方法及び/又は実施形態のうちの任意の1つ又は複数を実行する命令を実施しうる。いくつかの実施形態では、システムコントローラ328は、プロセスレシピにしたがって、製造システム300で1つ又は複数の動作を実行する命令を実行しうる。命令は、メインメモリ、静的メモリ、二次ストレージ及び/又は処理デバイスを含みうるコンピュータ可読記憶媒体に記憶されうる(命令の実行中に)。
【0050】
[0056] システムコントローラ328は、製造システム300の様々な部分(例えば処理チャンバ314、316、318、移送チャンバ310、ロードロック320など)の上又は内部に含まれるセンサからデータを受信しうる。いくつかの実施形態では、システムコントローラ328によって受信されたデータは、基板302の一部のスペクトルデータ及び/又は非スペクトルデータを含みうる。他の実施形態又は類似の実施形態では、システムコントローラ328によって受信されるデータは、前述のように、処理チャンバ314、316、318において処理基板302に関連したデータを含みうる。本説明の目的で、システムコントローラ328は、処理チャンバ314、316、318内に含まれるセンサからデータを受信するものとして説明される。しかしながら、システムコントローラ328は、製造システム300の任意の部分からデータを受信し、本明細書に記載の実施形態にしたがって、その部分から受信したデータを使用しうる。例示的な実施例では、システムコントローラ328は、処理チャンバ314、316、318における基板処理の前、後、又はその間に、処理チャンバ314、316、318のための1つ又は複数のセンサからデータを受信しうる。製造システム300の様々な部分のセンサから受信したデータは、データストア350に記憶されうる。データストア350は、システムコントローラ328内の構成要素として含まれうるか、又はシステムコントローラ328とは別個の構成要素でありうる。いくつかの実施形態では、データストア350は、図1に関して説明したデータストア140でありうる。
【0051】
[0057] 製造システム300は、基板測定サブシステム340を更に含みうる。基板測定サブシステム340は、基板302が製造システム300で処理される前又は後に、基板302の1つ又は複数の部分についてのスペクトル測定値を取得しうる。いくつかの実施形態では、基板測定サブシステム340は、システムコントローラ328からスペクトル測定値についてのリクエストを受信することに応答して、基板302の1つ又は複数の部分のスペクトル測定値を取得しうる。基板測定サブシステム340は、製造システム300の一部内に統合されうる。いくつかの実施形態では、基板測定サブシステム340は、ファクトリインターフェース306内に統合されうる。他の実施形態又は類似の実施形態では、基板測定サブシステム340は、製造システム300の任意の部分と統合されないこともあり、代わりに独立型構成要素であってもよい。そのような実施形態では、基板測定サブシステム340で測定された基板302は、基板302が製造システム300で処理される前又は後に、製造システム300の一部との間で移送されうる。
【0052】
[0058] 基板測定サブシステム340は、基板302の一部のスペクトルデータ及び/又はスペクトルを生成することによって、基板302の一部についてのスペクトル測定値を取得しうる。いくつかの実施形態では、基板測定サブシステム340は、基板302(例えば、基板302の厚さ、基板302の幅など)に関するスペクトルデータ、非スペクトルデータ、位置データ、及び他の基板特性データを生成するように構成される。基板302についてのデータを生成した後に、基板測定サブシステム340は、生成されたデータをシステムコントローラ328に送信しうる。基板測定サブシステム340からのデータの受信に応答して、システムコントローラ328は、データストア350でデータを記憶しうる。
【0053】
[0059] 図4は、本開示の態様による、基板測定サブシステム400の断面概略側面図である。基板測定サブシステム400は、処理チャンバでの基板302の処理の前又は後に、図3の基板302などの基板の1つ又は複数の部分の測定値を取得するように構成されうる。基板測定サブシステム400は、基板302の一部に関連したデータ(例えば、スペクトルデータ、非スペクトルデータなど)を生成することによって、基板302の一部についての測定値を取得しうる。いくつかの実施形態では、基板測定サブシステム400は、基板302に関連したスペクトルデータ、非スペクトルデータ、位置データ、及び/又は他の特性データを生成するように構成されうる。基板測定サブシステム400は、基板302の一部に関連するデータを生成するための1つ又は複数の命令を実行するように構成されたコントローラ430を含みうる。
【0054】
[0060] 基板測定サブシステム400は、基板302が基板測定サブシステム400に移送されたことを検出しうる。基板302が基板測定サブシステム400に移送されたことを検出することに応答して、基板測定サブシステム400は、基板302の位置及び/又は配向を決定しうる。基板302の位置及び/又は配向は、基板302の基準位置の識別に基づいて決定されうる。基準位置は、基板302の特定の部分に関連する識別特徴を含む基板302の部分でありうる。コントローラ328は、決定された基板302の識別情報に基づいて、基板302の特定の部分に関連する識別特徴を決定しうる。
【0055】
[0061] コントローラ430は、基板302についての画像データを捕捉するように構成された1つ又は複数のカメラ構成要素450を用いて、基板302についての基準位置を識別しうる。カメラ構成要素450は、基板302の1つ又は複数の部分に関する画像データを生成し、その画像データをコントローラ430に送信しうる。コントローラ430は、基板302の基準位置に関連した識別特徴を識別するために、画像データを分析しうる。コントローラ430は、基板302の識別された識別特徴に基づいて、画像データに示されるような基板302の位置及び/又は配向を更に決定しうる。コントローラ430は、画像データに示されるように、基板302の識別された識別特徴と、基板302の決定された位置及び/又は配向とに基づいて、基板302の位置及び/又は配向を決定しうる。基板302の位置及び/又は配向を決定することに応答して、コントローラ430は、基板302の1つ又は複数の部分に関連した位置データを生成しうる。いくつかの実施形態では、位置データは、各々が基板302の一部に関連した1つ又は複数の座標(例えば、デカルト座標、極座標など)を含みうる。ここで各座標は、基板302についての基準位置からの距離に基づいて決定される。
【0056】
[0062] 基板測定サブシステム400は、基板302を測定するための1つ又は複数の測定構成要素を含みうる。いくつかの実施形態では、基板測定サブシステム400は、基板302の1つ又は複数の部分のスペクトルデータを生成するように構成された1つ又は複数のスペクトル感知構成要素420を含みうる。前述のように、スペクトルデータは、検出された波の波長ごとのエネルギーの検出された波の強度(即ち、エネルギーの強度又は量)に対応しうる。収集されたスペクトルデータに関する更なる詳細が、図5に関して提供される。
【0057】
[0063] スペクトル感知構成要素420は、基板302の一部から反射されたエネルギーの波を検出し、検出された波に関連したスペクトルデータを生成するように構成されうる。スペクトル感知構成要素420は、波発生器422と反射波受信器424とを含みうる。いくつかの実施形態では、波発生器422は、基板302の一部に向かって光のビームを発生させるように構成された光波発生器でありうる。このような実施形態では、反射波受信器424は、基板302の一部から反射光ビームを受信するように構成されうる。波発生器422は、エネルギーストリーム426(例えば、光ビーム)を生成し、エネルギーストリーム426を基板302の一部に伝達するように構成されうる。反射エネルギー波428は、基板302の一部から反射され、反射波受信器424によって受信されうる。図3Aは、基板302の表面で反射された単一のエネルギー波を示しているが、複数のエネルギー波は、基板302の表面で反射され、反射波受信器424によって受信されうる。
【0058】
[0064] 反射波受信器424が基板302の一部から反射エネルギー波428を受信することに応答して、スペクトル感知構成要素420は、反射エネルギー波428に含まれる各波の波長を測定しうる。スペクトル感知構成要素420は、各測定波長の強度を更に測定しうる。各波長及び各波長強度の測定に応じて、スペクトル感知構成要素420は、基板302の一部に対するスペクトルデータを生成しうる。スペクトル感知構成要素420は、発生したスペクトルデータをコントローラ430に送信しうる。コントローラ430は、生成されたスペクトルデータの受信に応答して、受信したスペクトルデータと基板302の測定部分についての位置データとの間のマッピングを生成しうる。
【0059】
[0065] 基板測定サブシステム400は、基板測定サブシステム400で取得される測定値のタイプに基づいて、特定のタイプのスペクトルデータを生成するように構成されうる。いくつかの実施形態において、スペクトル感知構成要素420は、1つのタイプのスペクトルデータを生成するように構成されている第1のスペクトル感知構成要素でありうる。例えば、スペクトル感知構成要素420は、反射率測定スペクトルデータ、エリプソメトリスペクトルデータ、ハイパースペクトルイメージングデータ、化学イメージングデータ、熱スペクトルデータ、又は導電性スペクトルデータを生成するように構成されうる。このような実施形態では、第1のスペクトル感知構成要素は、基板測定サブシステム400から取り外され、異なるタイプのスペクトルデータ(例えば、反射率測定スペクトルデータ、エリプソメトリスペクトルデータ、ハイパースペクトルイメージングデータ、化学イメージングデータ、渦電流スペクトルデータ、熱スペクトルデータ、又は導電性スペクトルデータ)を生成するように構成された第2のスペクトル感知構成要素と置き換えられうる。
【0060】
[0066] いくつかの実施形態では、スペクトル感知構成要素420などの1つ又は複数の測定構成要素は、基板測定サブシステム400内の静止構成要素でありうる。そのような実施形態では、基板測定サブシステム400は、スペクトル感知構成要素420に対する基板302の位置及び/又は配向を修正するように構成された1つ又は複数の位置構成要素440を含みうる。いくつかの実施形態では、位置構成要素440は、スペクトル感知構成要素420に対して、第1の軸及び/又は第2の軸に沿って基板302を平行移動させるように構成されうる。他の実施形態又は類似の実施形態では、位置構成要素440は、スペクトル感知構成要素420に対する第3の軸の周りで基板302を回転させるように構成されうる。
【0061】
[0067] スペクトル感知構成要素420が基板302の1つ又は複数の部分のスペクトルデータを生成すると、位置構成要素440は、基板302について測定される1つ又は複数の決定された部分にしたがって基板302の位置及び/又は配向を修正しうる。例えば、スペクトル感知構成要素420が基板302についてのスペクトルデータを生成する前に、位置構成要素440が基板302をデカルト座標(0,0)に位置決めし、スペクトル感知構成要素420が基板302についての第1のスペクトルデータをデカルト座標(0,0)に生成しうる。スペクトル感知構成要素420がデカルト座標(0,0)で基板302についての第1のスペクトルデータを生成することに応答して、スペクトル感知構成要素420がデカルト座標(0,1)で基板302についての第2のスペクトルデータを生成するよう構成されるように、位置構成要素440は、基板302を第1の軸に沿って平行移動させうる。スペクトル感知構成要素420がデカルト座標(0,1)での基板302についての第2のスペクトルデータを生成することに応答して、スペクトル感知構成要素420がデカルト座標(1,1)での基板302についての第3のスペクトルデータを生成するよう構成されるように、コントローラ430は、第2の軸に沿って基板302を回転させうる。このプロセスは、基板302の決定された部分ごとにスペクトルデータが生成されるまで、複数回実行されうる。
【0062】
[0068] いくつかの実施形態では、材料の1つ又は複数の層412が、基板302の表面上に含まれうる。1つ又は複数の層412は、エッチング材料、フォトレジスト材料、マスク材料、堆積材料などを含みうる。いくつかの実施形態では、1つ又は複数の層412は、処理チャンバで実行されるエッチング処理にしたがってエッチングされるエッチング材料を含みうる。そのような実施形態では、以前に開示された実施形態にしたがって、基板302上に堆積された層412のエッチングされていない材料のうちの1つ又は複数の部分についてスペクトルデータが収集されうる。他の実施形態又は類似の実施形態では、1つ又は複数の層412は、処理チャンバにおけるエッチングプロセスにしたがってすでにエッチングされたエッチング材料を含みうる。そのような実施形態では、1つ又は複数の構造的特徴(例えば、線、列、開口部など)が、基板302の1つ又は複数の層412にエッチングされうる。そのような実施形態では、スペクトルデータは、基板302の1つ又は複数の層412にエッチングされた1つ又は複数の構造的特徴について収集されうる。
【0063】
[0069] 基板302についてのスペクトルデータ、位置データ、又は特性データのうちの少なくとも1つを受信することに応答して、コントローラ430は、本明細書に記載の実施形態にしたがって、処理及び分析のために、受信したデータをシステムコントローラ328に送信しうる。
【0064】
[0070] 図5は、本開示の態様による、基板について収集されたスペクトルデータ500を示す。スペクトルデータは、本開示の態様による、図4の基板測定サブシステム400、又は図3の処理チャンバ314、316、318などの処理チャンバのセンサによって受け取られた反射エネルギーから生成されうる。図示されたように、基板測定サブシステム400により受け取られる反射エネルギー波には、複数の波長が含まれうる。各反射エネルギー波は、基板302の異なる部分に関連付けられうる。いくつかの実施形態において、基板測定サブシステム400によって受け取られる反射エネルギー波毎に、強度が測定されうる。図5に見られるように、基板測定サブシステム400によって受け取られる反射エネルギー波の波長毎に、各強度が測定されうる。各強度と各波長との間の関連付けは、スペクトルデータ500の形成のための基礎でありうる。いくつかの実施形態では、1つ又は複数の波長は、強度値の予想される範囲外にある強度値と関連付けられうる。例えば、線510は、線520によって示されるように、強度値の予想される範囲外にある強度値に関連付けられうる。そのような実施形態では、強度値の予想される範囲外にある強度値は、基板302の一部に欠陥が存在することの表示でありうる。
【0065】
[0071] 図6は、本開示の態様による、基板ドリフトを検出し、機械学習を使用して特定のプロセスレシピについての修正を予測するための方法600のフローチャートである。方法600は、ハードウェア(回路、専用ロジックなど)、ソフトウェア(汎用コンピュータシステム又は専用マシン上で実行されるものなど)、ファームウェア、又はこれらの何らかの組合せを含みうる処理ロジックによって実行される。いくつかの実施形態では、方法600は、図1の予測サーバ112及びトレーニングされた機械学習モデル190を使用して実行されうる。他の又は類似の実施形態では、図6の1つ又は複数のブロックは、図1に示されていない1つ又は複数の他のマシンによって実行されうる。
【0066】
[0072] ブロック610において、処理ロジックは、第1のプロセスレシピに従って製造システムにおいてセットの基板を処理することに関連したデータを受信する。いくつかの実施形態において、処理ロジックは、前述のように、センサ126からのセットの基板の処理に関連したデータを受信しうる。例えば、処理ロジックは、処理チャンバ、移送チャンバ、ロードロック、ファクトリインターフェース、基板キャリアなどでセンサからデータを受信することができる。他の実施形態又は類似の実施形態ではまた、処理ロジックは、基板測定サブシステムからデータを受信することもできる。
【0067】
[0073] ブロック612において、処理ロジックは、トレーニングされた機械学習モデルへの入力として、セットの基板を処理するための受信データを提供する。いくつかの実施形態では、処理ロジックは、前述の実施形態に従って、基板のセットの各々についてセットの計測測定値を取得することができる。例えば、処理ロジックは、製造システムに接続された外部計測システム又はクライアントデバイスからセットの計測測定値を受信することができる。別の例では、処理ロジックは、トレーニングされた計測機械学習モデルを用いて、セットの計測測定値の各々を決定することができる。
【0068】
[0074] ブロック614において、処理ロジックは、機械学習モデルから出力を取得する。ブロック616では、処理ロジックが、1つ又は複数の出力から、ターゲット計測測定値からの第1のセットの基板についての第1のセットの計測測定値のドリフト量を決定する。処理ロジックはまた、1つ又は複数の出力から、プロセスレシピに対する1つ又は複数の修正を識別するプロセスレシピ修正データと、修正の各々について、それぞれの修正が第2のセットの基板のドリフト基準を満たす信頼度の表示とを決定する。プロセスレシピの修正は、特定のプロセスレシピの動作を修正すること、又は製造システムにおいて処理される後続のセットの基板のためのプロセスレシピの実行を終了するための命令を生成することを含みうる。いくつかの実施形態では、処理ロジックはまた、1つ又は複数の出力から、ドリフトを引き起こしている製造システムにおける1つ又は複数の構成要素の識別子を決定することができる。そのような実施形態では、プロセスレシピの修正は、構成要素が交換されるかどうかを決定するために、システムコントローラが後続のプロセス中に構成要素の状態をモニタするための命令を生成することを含みうる。
【0069】
[0075] ブロック618において、処理ロジックは、1つ又は複数の修正の各々についての信頼度基準が満たされているかどうかを決定する。信頼度基準が、1つ又は複数の修正のいずれについても満たされていないとの決定に応答して、方法600は終了する。製造システムでその後に処理されるセットの基板に対する基板プロセスのドリフト量を減少させるために、それぞれの修正が予測されるとの決定に応答して、プロセスレシピに対する修正がドリフト基準を満たしていることを処理ロジックが決定しうる。1つ又は複数の修正のうちの少なくとも1つについて信頼度基準が満たされているとの決定に応答して、処理ロジックは、信頼度基準を満たす修正を識別する。
【0070】
[0076] ブロック620で、処理ロジックは、識別された修正に基づいてプロセスレシピを更新する。例えば、処理ロジックは、製造システムで処理される後続の基板についてのプロセスレシピの1つ又は複数の動作を実行することができる。別の例では、処理ロジックは、後続のセットの基板についてのプロセスレシピの実行を終了するための命令を生成することができる。いくつかの実施形態では、処理ロジックは、識別された修正を示す、製造システムのオペレータへの通知を生成することができる。例えば、通知は、クライアントデバイスを介して、GUI表示を介して提供されうる。通知は、オペレータが修正を許容又は拒否できるようにする1つ又は複数のGUI要素とともに、識別された修正を含みうる。他の実施形態又は類似の実施形態では、通知は、オペレータが他の代替的な修正よりも予測を選択できるようにする1つ又は複数のGUI要素とともに、プロセスレシピに対する複数の代替的な修正を提供しうる。他の実施形態又は類似の実施形態では、処理ロジックは、製造システムのオペレータに通知を提供しなくてもよく、代わりに、識別された修正に基づいてプロセスレシピを修正してもよい。
【0071】
[0077] いくつかの実施形態では、動作の修正は、製造システムの1つ又は複数のステーションで発生する欠陥の結果として予測することができる。そのような実施形態では、処理ロジックは、欠陥を含むステーションと、場合によっては、欠陥を引き起こしているステーションにおける特定の構成要素とを示す、製造システムのオペレータへの通知を提供することができる。この通知は、プロセスレシピに対する修正の通知とともに、又は修正の通知とは別に、提供することができる。
【0072】
[0078] 図7は、本開示の1つ又は複数の態様に従って動作する例示的なコンピュータシステム700のブロック図を示す。代替的な実施形態では、マシンは、ローカルエリアネットワーク(LAN)、イントラネット、エクストラネット、又はインターネット内の他のマシンに接続(例えばネットワーク化)されうる。マシンは、クライアント-サーバネットワーク環境におけるサーバ又はクライアントマシンの役割で、又はピアツーピア(又は分散)ネットワーク環境におけるピアマシンとして動作しうる。このマシンは、パーソナルコンピュータ(PC)、タブレットコンピュータ、セットトップボックス(STB)、パーソナルデジタルアシスタント(PDA)、携帯電話、ウェブアプライアンス、サーバ、ネットワークルータ、スイッチ若しくはブリッジ、又はそのマシンによって実行されるべき動作を指定する一連の命令(連続した若しくは連続していない)を実行することができる任意のマシンでありうる。更に、単一のマシンのみが図示されているが、「マシン」という用語は、本明細書で論じられる方法のうちの任意の1つ又は複数を実行するために、命令のセット(又は複数のセット)を個々に又は連携的に実行する、マシン(例えば、コンピュータ)の任意の集合体を含むものと解釈されるべきである。実施形態では、コンピューティングデバイス1100は、図3のシステムコントローラ328又は製造システム100の別の処理デバイスに対応しうる。
【0073】
[0079] 例示的なコンピューティングデバイス700は、バス708を介して互いに通信する、処理デバイス702、メインメモリ704(例えば、読み出し専用メモリ(ROM)、フラッシュメモリ、ダイナミックランダムアクセスメモリ(DRAM)(例えば、シンクロナスDRAM(SDRAM)など)、スタティックメモリ706(例えば、フラッシュメモリ、スタティックランダムアクセスメモリ(SRAM)など)、及び二次メモリ(例えば、データストレージデバイス728)を含む。
【0074】
[0080] 処理デバイス702は、マイクロプロセッサ、中央処理ユニットなどの1つ又は複数の汎用プロセッサを表しうる。より詳細には、処理デバイス702は、複雑な命令セットコンピューティング(CISC)マイクロプロセッサ、縮小命令セットコンピューティング(RISC)マイクロプロセッサ、超長命令ワード(VLIW)マイクロプロセッサ、他の命令セットを実装するプロセッサ、又は命令セットの組み合わせを実装するプロセッサでありうる。処理デバイス802はまた、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、ネットワークプロセッサなどの1つ又は複数の特殊用途処理デバイスでありうる。処理デバイス702はまた、システムオンチップ(system on a chip(SoC))、プラグラム可能な論理制御装置(PLC)、又は他のタイプの処理デバイスでありうる又はこれらを含みうる。処理デバイス702は、本明細書で論じられる動作及びステップを実行するための処理ロジックを実行するように構成される。
【0075】
[0081] コンピューティングデバイス700は、ネットワーク764と通信するためのネットワークインターフェースデバイス722を更に含みうる。コンピューティングデバイス700はまた、ビデオディスプレイユニット710(例えば、液晶ディスプレイ(LCD)又は陰極線管(CRT))、英数字入力デバイス712(例えば、キーボード)、カーソル制御デバイス714(例えば、マウス)、及び信号生成デバイス720(例えば、スピーカ)を含みうる。
【0076】
[0082] データストア728は、マシン可読記憶媒体(又はより具体的には、非一時的コンピュータ可読記憶媒体)724を含みうる。この媒体には、本明細書に記載する方法又は機能の任意の1つ又は複数を具体化する1つ又は複数の命令セット726が記憶される。ここで、非一時的記憶媒体とは、搬送波以外の記憶媒体を指す。命令726はまた、コンピュータデバイス700によって実行される間に、メインメモリ704内及び/又は処理デバイス702内に、完全に又は少なくとも部分的に存在しうる。メインメモリ704及び処理デバイス702はまた、コンピュータ可読記憶媒体を構成する。
【0077】
[0083] コンピュータ可読記憶媒体724はまた、モデル190と、モデル190をトレーニングするために使用されるデータとを記憶するために使用されうる。コンピュータ可読記憶媒体724はまた、モデル190を呼び出す方法を含むソフトウェアライブラリを記憶しうる。コンピュータ可読記憶媒体724は、例示的実施形態において、単一媒体として示されるが、「コンピュータ可読記憶媒体」という用語は、1つ又は複数のセットの命令を記憶する単一の媒体又は複数の媒体(例えば、集中型又は分散型データベース、及び/又は関連するキャッシュ及びサーバ)を含むものと理解すべきである。「コンピュータ可読記憶媒体」という用語はまた、マシンによって実行される命令のセットを記憶又は符号化することが可能であり、マシンに本開示の方法の任意の1つ又は複数を実行させる任意の媒体を含むと解釈されるべきである。したがって、「コンピュータ可読記憶媒体」という用語は、限定されないが、ソリッドステートメモリ、並びに光媒体及び磁気媒体を含むものと解釈されるべきである。
【0078】
[0084] 前述の説明は、本開示のいくつかの実施形態の良好な理解をもたらすために、特定のシステム、構成要素、方法などの例など、多数の特定の詳細を示している。しかしながら、本開示の少なくともいくつかの実施形態はこれらの具体的な詳細がなくても実施されうることが、当業者には明らかであろう。他の例では、本開示を不必要に不明瞭にすることを避けるために、周知の構成要素又は方法が、詳細に説明されないか、又は単純なブロック図形式で提示される。したがって、説明される具体的な詳細は、単なる例示にすぎない。特定の実施態様は、これらの例示的な詳細とは異なることがあり、依然として、本開示の範囲内であることが企図されうる。
【0079】
[0085] 本明細書を通して「1つの実施形態」又は「実施形態」への言及は、実施形態に関連して説明される特定の特徴、構造、又は特性が少なくとも1つの実施形態に含まれることを意味する。したがって、本明細書全体の様々な場所における「1つの実施形態では」又は「実施形態では」という表現は、必ずしも同じ実施形態を指すわけではない。加えて、「又は」という用語は、排他的な「又は」ではなく、包括的な「又は」を意味することを意図している。「約」又は「およそ」という用語が本明細書で使用される場合、これは、提示される公称値が±10%以内で正確であることを意味することが意図される。
【0080】
[0086] 本明細書の方法の工程は、特定の順序で図示され説明されるが、特定の工程が逆の順序で実行され、特定の工程が他の工程と同時に少なくとも部分的に実行されるように、各方法の工程の順序が変更されてもよい。別の実施形態では、別個の工程の命令又はサブ工程は、断続的及び/又は交互であってもよい。
【0081】
[0087] 上記の説明は、例示を意図したものであり、限定を意図したものではないと理解すべきである。上記の説明を読み理解すれば、多くの他の実施形態が当業者に明らかになるだろう。したがって、開示の範囲は、添付の特許請求の範囲を参照し、そのような特許請求の範囲が権利を有する均等物の全範囲と共に決定されるべきである。
図1
図2
図3
図4
図5
図6
図7