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

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

▶ ガウス ラブズ インコーポレイテッドの特許一覧

特開2025-29595プロセス制御または監視のエンドツーエンド最適化のためのシステムおよび方法
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025029595
(43)【公開日】2025-03-06
(54)【発明の名称】プロセス制御または監視のエンドツーエンド最適化のためのシステムおよび方法
(51)【国際特許分類】
   H01L 21/02 20060101AFI20250227BHJP
   G06N 20/00 20190101ALI20250227BHJP
   G05B 23/02 20060101ALI20250227BHJP
   G05B 19/418 20060101ALI20250227BHJP
   G06Q 50/04 20120101ALI20250227BHJP
【FI】
H01L21/02 Z
G06N20/00
G05B23/02 R
G05B19/418 Z
G06Q50/04
【審査請求】未請求
【請求項の数】25
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2024138467
(22)【出願日】2024-08-20
(31)【優先権主張番号】63/520,894
(32)【優先日】2023-08-21
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】63/558,346
(32)【優先日】2024-02-27
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】63/680,230
(32)【優先日】2024-08-07
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】524053476
【氏名又は名称】ガウス ラブズ インコーポレイテッド
(74)【代理人】
【識別番号】100078282
【弁理士】
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【弁理士】
【氏名又は名称】森下 夏樹
(74)【代理人】
【識別番号】100181674
【弁理士】
【氏名又は名称】飯田 貴敏
(74)【代理人】
【識別番号】100181641
【弁理士】
【氏名又は名称】石川 大輔
(74)【代理人】
【識別番号】230113332
【弁護士】
【氏名又は名称】山本 健策
(72)【発明者】
【氏名】シン ミンソク
(72)【発明者】
【氏名】ジュン ミンジュ
(72)【発明者】
【氏名】サイモン ザブロッキ
(72)【発明者】
【氏名】イム ドンキュン
(72)【発明者】
【氏名】モハク シャー
(72)【発明者】
【氏名】アビマニュ アディティヤ
(72)【発明者】
【氏名】チェ ブレンダン ビョンウォン
【テーマコード(参考)】
3C100
3C223
5L050
【Fターム(参考)】
3C100AA22
3C100AA29
3C100AA68
3C100BB12
3C100BB13
3C100BB33
3C223AA13
3C223BA01
3C223BB01
3C223CC01
3C223EA02
3C223EB01
3C223EB02
3C223FF05
3C223FF22
3C223FF26
3C223HH29
5L050CC03
(57)【要約】
【課題】製造環境における製造プロセスのプロセス制御または監視を最適化するためのシステムおよび方法の提供。
【解決手段】システムおよび方法は、プロセス変数、標的性質、または異常の根本原因に関する予測または推奨を発生させ得る。システムは、データおよび機械学習層を含み得、データおよび機械学習層は、クライアントアプリケーション層からデータを受信するように構成されているデータ収集器と、ユーザがデータからカスタマイズされたデータセットを作成することを可能にするように構成されているデータセット発生器と、ユーザが、機械学習モデルを構築、訓練、および/または更新することを可能にするように構成されているモデル管理モジュールと、予測または推奨を発生させるために機械学習モデルを使用するように構成されている推論モジュールとを含み得る。
【選択図】なし
【特許請求の範囲】
【請求項1】
製造環境のプロセス制御または監視を最適化するためのシステムであって、前記システムは、
製造環境と関連付けられたクライアントアプリケーション層とインターフェースをとるように構成されているデータおよび機械学習層であって、前記データおよび機械学習層は、(1)前記クライアントアプリケーション層内の少なくとも1つのソースからデータを受信するように構成されているデータ収集器と、(2)ユーザが、前記データから1つ以上のカスタマイズされたデータセットを作成することを可能にするように構成されているデータセット発生器と、(3)前記ユーザが、少なくとも部分的に、前記1つ以上のカスタマイズされたデータセットを使用して、1つ以上の機械学習モデルを構築、訓練、および/または更新することを可能にするように構成されているモデル管理モジュールと、(4)前記製造環境において、1つ以上のプロセスが実施されている際、および/または機器が動作されている際、1つ以上の予測を発生させるために前記1つ以上の機械学習モデルを使用するように構成されている推論モジュールとを備える、データおよび機械学習層と、
少なくとも前記データ、新しいデータ更新、前記1つ以上のカスタマイズされたデータセット、および前記1つ以上の機械学習モデルを記憶するように構成されている複数のデータストアと
を備える、システム。
【請求項2】
前記1つ以上の予測は、仮想計測(VM)に基づいて発生させられる、請求項1に記載のシステム。
【請求項3】
前記1つ以上の機械学習モデルは、集約的適応型オンラインモデル(AggAOM)を備える、請求項1に記載のシステム。
【請求項4】
前記AggAOMは、前記機器および関連付けられたチャンバまたはステーションにおける共通性を利用するように構成されており、前記共通性は、制御システムアーキテクチャ、センサタイプ、プロセスフロー、または品質制御手順のうちの1つ以上を含む、請求項3に記載のシステム。
【請求項5】
前記AggAOMは、前記機器および関連付けられたチャンバまたはステーションの階層構造を採用するように構成されている、請求項4に記載のシステム。
【請求項6】
前記階層構造は、少なくとも2つのレベルの階層を含む、請求項5に記載のシステム。
【請求項7】
前記階層構造は、(1)大域的モデルを各機器に割り当てる機器レベルであって、前記大域的モデルは、各機器と関連付けられた種々のチャンバまたはステーションを横断して生じる残差の第1のセットを評価するために共通性を処理するように構成されている、機器レベルと、(2)前記大域的モデルよりも高い分解能のチャンバモデルを発生させるチャンバレベルであって、前記チャンバモデルは、残差の第2のセットを評価するために共通性を処理するように構成されている、チャンバレベルと、(3)前記チャンバモデルよりも高い分解能のステーション関連モデルを含むステーションレベルであって、前記ステーション関連モデルは、前記1つ以上の予測を発生させるために少なくとも前記残差の第1のセットおよび前記残差の第2のセットを処理するように構成されている、ステーションレベルとを含む、請求項6に記載のシステム。
【請求項8】
前記複数のデータストアは、前記クライアントアプリケーション層内の前記少なくとも1つのソースから受信された前記データを記憶するように構成されているデータベースを備える、請求項1に記載のシステム。
【請求項9】
前記複数のデータストアは、前記1つ以上の機械学習モデルと関連付けられた1つ以上のモデルデータファイルを記憶するように構成されているオブジェクト記憶装置を備える、請求項1に記載のシステム。
【請求項10】
前記システムは、前記製造環境と関連付けられたプロセス制御ワークフローへの統合のために前記1つ以上の予測を公開するように構成されている公開モジュールをさらに備える、請求項1に記載のシステム。
【請求項11】
前記1つ以上の予測は、前記製造環境における前記1つ以上のプロセスおよび/または前記機器への特性評価、監視、制御、および/または修正を実質的にリアルタイムで可能にするために、または最適化するために使用可能である、請求項1に記載のシステム。
【請求項12】
前記システムは、前記1つ以上の機械学習モデルに関する1つ以上のパフォーマンスメトリックを発生させるように構成されているモデルパフォーマンス評価モジュールをさらに備える、請求項1に記載のシステム。
【請求項13】
前記1つ以上のパフォーマンスメトリックは、少なくとも感度分析またはストレス試験から導出される、請求項12に記載のシステム。
【請求項14】
前記システムは、ダッシュボード上に前記1つ以上のパフォーマンスメトリックを表示するように構成されているグラフィカルユーザインターフェース(GUI)を備えるフロントエンドユーザ管理モジュールをさらに備える、請求項12に記載のシステム。
【請求項15】
前記データは、機器データ、プロセスデータ、メタデータ、および/または測定データを備える、請求項1に記載のシステム。
【請求項16】
前記データ収集器は、少なくとも2つの異なるソースから前記データを同期的に受信するように構成されている、請求項1に記載のシステム。
【請求項17】
前記データ収集器は、少なくとも部分的に、所定のスケジュールに基づいて、前記少なくとも1つのソースから前記データを受信するように構成されている、請求項1に記載のシステム。
【請求項18】
前記データ収集器は、少なくとも部分的に、前記製造環境内で生じる1つ以上のイベントの検出に基づいて、前記少なくとも1つのソースから前記データを受信するように構成されている、請求項1に記載のシステム。
【請求項19】
前記1つ以上のイベントは、前記製造環境内の少なくとも1つのプロセスまたはプロセス機器におけるドリフト、エクスカーション、シフト、逸脱、または異常と関連付けられている、請求項18に記載のシステム。
【請求項20】
前記データは、(1)履歴プロセスデータ、(2)現在のプロセスデータ、(3)1つ以上のメトリックの履歴測定データ、(4)1つ以上のメトリックの現在の測定データ、(5)動作データ、または(6)機器仕様メタデータを備える複数のデータタイプおよびデータセットを備える、請求項1に記載のシステム。
【請求項21】
前記データセット発生器は、前記1つ以上のカスタマイズされたデータセット内の1つ以上の特徴の選択を自動化するように構成されている、請求項1に記載のシステム。
【請求項22】
前記モデル管理モジュールは、ハイパーパラメータ最適化を含む前記1つ以上の機械学習モデルを訓練するように構成されている、請求項1に記載のシステム。
【請求項23】
前記ハイパーパラメータ最適化は、1つ以上のパフォーマンスメトリックが所定の閾値レベルを下回って劣化するとき、前記1つ以上のパフォーマンスメトリックに基づいて実施される、請求項22に記載のシステム。
【請求項24】
前記製造環境は、半導体製造、LCDディスプレイ製造、ソーラーパネル製造、電子機器製造、バッテリー製造、自動車製造、または医薬品製造のうちの少なくとも1つと関連付けられている、請求項1に記載のシステム。
【請求項25】
製造環境のプロセス制御または監視を最適化するためのコンピュータプログラム製品であって、前記コンピュータプログラム製品は、少なくとも1つの非一時的なコンピュータ読み取り可能な媒体を備え、前記少なくとも1つの非一時的なコンピュータ読み取り可能な媒体は、前記少なくとも1つの非一時的なコンピュータ読み取り可能な媒体内に具体化されるコンピュータ読み取り可能なプログラムコード部分を有し、
前記コンピュータ読み取り可能なプログラムコード部分は、製造環境と関連付けられたクライアントアプリケーション層とインターフェースをとるように構成されている実行可能部分を備え、前記実行可能部分は、(1)前記クライアントアプリケーション層内の少なくとも1つのソースからデータを受信するように構成されている実行可能部分と、(2)ユーザが、前記データから1つ以上のカスタマイズされたデータセットを作成することを可能にするように構成されている実行可能部分と、(3)前記ユーザが、少なくとも部分的に、前記1つ以上のカスタマイズされたデータセットを使用して、1つ以上の機械学習モデルを構築、訓練、および/または更新することを可能にするように構成されている実行可能部分と、(4)前記製造環境において、1つ以上のプロセスが実施されている際、および/または機器が動作されている際、1つ以上の予測を発生させるために前記1つ以上の機械学習モデルを使用するように構成されている実行可能部分とを備える、コンピュータプログラム製品。
【発明の詳細な説明】
【背景技術】
【0001】
(背景)
半導体製造プロセス等の現代の製造プロセスは、発生させられるデータの量に起因して、ますます複雑になってきている。典型的なシステムおよび方法は、プロセス制御および監視の最適化を提供するために十分ではない疎な測定データしか発生させない場合がある。プロセス制御および監視を最適化することは、製造プロセスを改良するために、より大きいデータセットを処理および分析する負担およびコストを低減させることに役立ち得る。プロセス制御および監視の最適化は、仮想計測(VM)、画像計測(IM)、および根本原因分析(RCA)のためのシステムおよび方法の使用を含み得る。VMおよびIMは、予測的測定を発生させ、それによって、統計的プロセス制御(SPC)または高度プロセス制御(APC)におけるより精密な統計的測定のためにデータサンプルサイズを拡大することに役立ち得る。RCAは、異常を決定する、予測する、または原因分析することに役立ち得る。異常な製造プロセスの時機を誤った制御または監視は、さらなる処理異常をもたらし得、これは、アラームを発生させ、異常が訂正されるまで、製造プロセスを中断させる。
【0002】
プロセス制御および監視の最適化は、VM、IM、およびRCAの補足的使用に起因して生じ得る。VM、IM、およびRCAの補足的使用は、プロセス変動性を低減させること、予測的保守を確実に管理すること、機器パフォーマンス劣化(例えば、データドリフトまたはデータシフト)を監視すること、異常なプロセスを収率に関連付けること、機器可用性を増加させること、機器網羅範囲を拡大すること、または、SPCまたはAPCに関する入力データ品質を改良することを改良または支援し得る。加えて、プロセス制御および監視の最適化は、ユーザ、例えば、プロセスエンジニア等の専門家との相互作用から利益を享受し得る。ユーザ相互作用は、例えば、プロセスデフォルトをオーバーライドすること、ユーザ選好をプロセスに組み込むこと、決定および洞察をプロセスに組み込むこと、またはユーザ定義設定を通して実験することを含み得る。
【0003】
さらに、VMシステムおよび方法は、典型的な物理的計測に取って代わることによって、半導体製造において生産性を向上させ、品質を改良し、保守コストを低減させるために有用であり得る。VMの多くの実装は、有用なプロセス成果変数を推定するために機器センサデータを活用し得る予測的モデル化アプローチに依拠し得る。VM実装の利点にもかかわらず、製造におけるVMの限定された展開が、正確度およびスケーラビリティの問題に起因する一方、MLベースのVMは、特に、半導体プロセスにおいて、データドリフト、シフト、スパース性、および一貫しない品質のような課題に直面する。
【0004】
VM、IM、およびRCAを使用してプロセス制御および監視を最適化し、また、そのユーザ相互作用を可能にするためのより良好なシステムおよび方法に関する必要性が、存在する。さらに、大量製造におけるプロセス制御および監視を最適化するために少なくとも希少または疎データを利用し得る改良されたシステムおよび方法に関する必要性が、存在する。
【発明の概要】
【課題を解決するための手段】
【0005】
(概要)
製造環境における製造プロセスのプロセス制御または監視を最適化するためのシステムが、本明細書に開示される。プロセス制御または監視を最適化することは、仮想計測(VM)、画像計測(IM)、または根本原因分析(RCA)と関連付けられたシステムまたは方法を含み得る。プロセス制御または監視は、例えば、統計的プロセス制御(SPC)または高度プロセス制御(APC)を用いて実施され得る。
【0006】
ある側面では、製造環境のプロセス制御または監視を最適化するためのシステムが、本明細書に開示され、システムは、製造環境と関連付けられたクライアントアプリケーション層とインターフェースをとるように構成されているデータおよび機械学習層であって、(1)クライアントアプリケーション層内の少なくとも1つのソースからデータを受信するように構成されているデータ収集器と、(2)ユーザがデータから1つ以上のカスタマイズされたデータセットを作成することを可能にするように構成されているデータセット発生器と、(3)ユーザが、少なくとも部分的に、1つ以上のカスタマイズされたデータセットを使用して、1つ以上の機械学習モデルを構築、訓練、および/または更新することを可能にするように構成されているモデル管理モジュールと、(4)製造環境において、1つ以上のプロセスが実施されている際、および/または機器が動作されている際、1つ以上の予測を発生させるために1つ以上の機械学習モデルを使用するように構成されている推論モジュールとを備える、データおよび機械学習層と、少なくともデータ、新しいデータ更新、1つ以上のカスタマイズされたデータセット、および1つ以上の機械学習モデルを記憶するように構成されている複数のデータストアとを備える。いくつかの実施形態では、1つ以上の予測は、仮想計測(VM)に基づいて発生させられる。いくつかの実施形態では、1つ以上の機械学習モデルは、集約的適応型オンラインモデル(AggAOM)を備える。いくつかの実施形態では、AggAOMは、機器および関連付けられたチャンバまたはステーションにおける共通性を利用するように構成されており、共通性は、制御システムアーキテクチャ、センサタイプ、プロセスフロー、または品質制御手順のうちの1つ以上を含む。いくつかの実施形態では、AggAOMは、機器および関連付けられたチャンバまたはステーションの階層構造を採用するように構成されている。いくつかの実施形態では、階層構造は、少なくとも2つのレベルの階層を含む。いくつかの実施形態では、階層構造は、(1)大域的モデルを各機器に割り当てる機器レベルであって、大域的モデルは、各機器と関連付けられた種々のチャンバまたはステーションを横断して生じる残差の第1のセットを評価するために共通性を処理するように構成されている、機器レベルと、(2)大域的モデルよりも高い分解能のチャンバモデルを発生させるチャンバレベルであって、チャンバモデルは、残差の第2のセットを評価するために共通性を処理するように構成されている、チャンバレベルと、(3)チャンバモデルよりも高い分解能のステーション関連モデルを含むステーションレベルであって、ステーション関連モデルは、1つ以上の予測を発生させるために少なくとも残差の第1のセットおよび第2のセットを処理するように構成されている、ステーションレベルとを含む。いくつかの実施形態では、複数のデータストアは、クライアントアプリケーション層内の少なくとも1つのソースから受信されたデータを記憶するように構成されているデータベースを備える。いくつかの実施形態では、複数のデータストアは、1つ以上の機械学習モデルと関連付けられた1つ以上のモデルデータファイルを記憶するように構成されているオブジェクト記憶装置を備える。いくつかの実施形態では、システムは、製造環境と関連付けられたプロセス制御ワークフローへの統合のために1つ以上の予測を公開するように構成されている公開モジュールをさらに備える。いくつかの実施形態では、1つ以上の予測は、製造環境における1つ以上のプロセスおよび/または機器への特性評価、監視、制御、および/または修正を実質的にリアルタイムで可能にするために、または最適化するために使用可能である。いくつかの実施形態では、システムは、1つ以上の機械学習モデルに関する1つ以上のパフォーマンスメトリックを発生させるように構成されているモデルパフォーマンス評価モジュールをさらに備える。いくつかの実施形態では、1つ以上のパフォーマンスメトリックは、少なくとも感度分析またはストレス試験から導出される。いくつかの実施形態では、システムは、ダッシュボード上に1つ以上のパフォーマンスメトリックを表示するように構成されているグラフィカルユーザインターフェース(GUI)を備えるフロントエンドユーザ管理モジュールをさらに備える。いくつかの実施形態では、データは、機器データ、プロセスデータ、メタデータ、および/または測定データを備える。いくつかの実施形態では、データ収集器は、少なくとも2つの異なるソースからデータを同期的に受信するように構成されている。いくつかの実施形態では、データ収集器は、少なくとも部分的に、所定のスケジュールに基づいて、少なくとも1つのソースからデータを受信するように構成されている。いくつかの実施形態では、データ収集器は、少なくとも部分的に、製造環境内で生じる1つ以上のイベントの検出に基づいて、少なくとも1つのソースからデータを受信するように構成されている。いくつかの実施形態では、1つ以上のイベントは、製造環境内の少なくとも1つのプロセスまたはプロセス機器におけるドリフト、エクスカーション、シフト、逸脱、または異常と関連付けられている。いくつかの実施形態では、データは、(1)履歴プロセスデータ、(2)現在のプロセスデータ、(3)1つ以上のメトリックの履歴測定データ、(4)1つ以上のメトリックの現在の測定データ、(5)動作データ、または(6)機器仕様メタデータを備える複数のデータタイプおよびデータセットを備える。いくつかの実施形態では、データセット発生器は、1つ以上のカスタマイズされたデータセット内の1つ以上の特徴の選択を自動化するように構成されている。いくつかの実施形態では、モデル管理モジュールは、ハイパーパラメータ最適化を含む1つ以上の機械学習モデルを訓練するように構成されている。いくつかの実施形態では、ハイパーパラメータ最適化は、1つ以上のパフォーマンスメトリックが所定の閾値を下回って劣化するとき、1つ以上のパフォーマンスメトリックに基づいて実施される。いくつかの実施形態では、製造環境は、半導体製造、LCDディスプレイ製造、ソーラーパネル製造、電子機器製造、バッテリー製造、自動車製造、または医薬品製造のうちの少なくとも1つと関連付けられている。
【0007】
別の側面では、製造環境のプロセス制御または監視を最適化するためのコンピュータプログラム製品が、本明細書に開示され、コンピュータプログラム製品は、少なくとも1つの非一時的なコンピュータ読み取り可能な媒体を備え、少なくとも1つの非一時的なコンピュータ読み取り可能な媒体は、その中に具体化されるコンピュータ読み取り可能なプログラムコード部分を有し、コンピュータ読み取り可能なプログラムコード部分は、製造環境と関連付けられたクライアントアプリケーション層とインターフェースをとるように構成されている実行可能部分を備え、実行可能部分は、(1)クライアントアプリケーション層内の少なくとも1つのソースからデータを受信するように構成されている実行可能部分と、(2)ユーザがデータから1つ以上のカスタマイズされたデータセットを作成することを可能にするように構成されている実行可能部分と、(3)ユーザが、少なくとも部分的に、1つ以上のカスタマイズされたデータセットを使用して、1つ以上の機械学習モデルを構築、訓練、および/または更新することを可能にするように構成されている実行可能部分と、(4)製造環境において、1つ以上のプロセスが実施されている際、および/または機器が動作されている際、1つ以上の予測を発生させるために1つ以上の機械学習モデルを使用するように構成されている実行可能部分とを備える。
【0008】
さらに、本開示は、大量製造におけるプロセス制御および監視を最適化するために少なくとも希少または疎データを利用し得る改良されたシステムおよび方法を提供する。例えば、少なくとも仮想計測(VM)におけるデータ希少性またはスパース性の技術的課題を効果的に解決し得る集約的適応型オンラインモデル(AggAOM)が、本明細書に開示される。データ希少性またはスパース性は、限定された物理的測定比(例えば、典型的には、5%未満)のため、プロセス後測定値、例えば、厚さおよび質量からもたらされ得る。ある場合には、データ希少性またはスパース性は、2つの因子、例えば、サンプリング率およびデータ収集持続時間によってさらに決定され得る、訓練サンプルの数として決定され得る。製造機器の階層構造を活用することによって、AggAOMは、それらの個々の変動に加えて、同一の階層内の機器チャンバ間の基礎的共通性を捕捉および利用し得る。本明細書のシステムおよび方法は、限定されたデータ(例えば、希少または疎データ)のより効率的な使用を可能にし得、統計的に有意な方法において、大量製造施設、例えば、メガファブまたは半導体ファブにおいて採用されるVMの予測正確度を実質的に改良し得る。本明細書の改良は、ある時間周期(例えば、9ヵ月)にわたってSK hynixから発生させられたデータセットを利用し、AggAOMが正確度および有用性において他のモデルよりも有意に優れていることを実証することによって実証された。故に、本明細書のシステムおよび方法は、半導体製造等の大量製造のためにVMを最適化するための改良された技術的解決策を提供し得る。
【0009】
本開示の付加的側面および利点が、本開示の例証的実施形態のみが示され、説明される、以下の詳細な説明から容易に明白となる。認識されるように、本開示は、他の異なる実施形態が可能であり、そのいくつかの詳細は、全て本開示から逸脱することなく、種々の明白な点において修正が可能である。故に、図面および説明は、制限的ではなく、本質的に例証的と見なされるものである。
本発明は、例えば、以下の項目を提供する。
(項目1)
製造環境のプロセス制御または監視を最適化するためのシステムであって、前記システムは、
製造環境と関連付けられたクライアントアプリケーション層とインターフェースをとるように構成されているデータおよび機械学習層であって、前記データおよび機械学習層は、(1)前記クライアントアプリケーション層内の少なくとも1つのソースからデータを受信するように構成されているデータ収集器と、(2)ユーザが、前記データから1つ以上のカスタマイズされたデータセットを作成することを可能にするように構成されているデータセット発生器と、(3)前記ユーザが、少なくとも部分的に、前記1つ以上のカスタマイズされたデータセットを使用して、1つ以上の機械学習モデルを構築、訓練、および/または更新することを可能にするように構成されているモデル管理モジュールと、(4)前記製造環境において、1つ以上のプロセスが実施されている際、および/または機器が動作されている際、1つ以上の予測を発生させるために前記1つ以上の機械学習モデルを使用するように構成されている推論モジュールとを備える、データおよび機械学習層と、
少なくとも前記データ、新しいデータ更新、前記1つ以上のカスタマイズされたデータセット、および前記1つ以上の機械学習モデルを記憶するように構成されている複数のデータストアと
を備える、システム。
(項目2)
前記1つ以上の予測は、仮想計測(VM)に基づいて発生させられる、上記項目に記載のシステム。
(項目3)
前記1つ以上の機械学習モデルは、集約的適応型オンラインモデル(AggAOM)を備える、上記項目のいずれか一項に記載のシステム。
(項目4)
前記AggAOMは、前記機器および関連付けられたチャンバまたはステーションにおける共通性を利用するように構成されており、前記共通性は、制御システムアーキテクチャ、センサタイプ、プロセスフロー、または品質制御手順のうちの1つ以上を含む、上記項目のいずれか一項に記載のシステム。
(項目5)
前記AggAOMは、前記機器および関連付けられたチャンバまたはステーションの階層構造を採用するように構成されている、上記項目のいずれか一項に記載のシステム。
(項目6)
前記階層構造は、少なくとも2つのレベルの階層を含む、上記項目のいずれか一項に記載のシステム。
(項目7)
前記階層構造は、(1)大域的モデルを各機器に割り当てる機器レベルであって、前記大域的モデルは、各機器と関連付けられた種々のチャンバまたはステーションを横断して生じる残差の第1のセットを評価するために共通性を処理するように構成されている、機器レベルと、(2)前記大域的モデルよりも高い分解能のチャンバモデルを発生させるチャンバレベルであって、前記チャンバモデルは、残差の第2のセットを評価するために共通性を処理するように構成されている、チャンバレベルと、(3)前記チャンバモデルよりも高い分解能のステーション関連モデルを含むステーションレベルであって、前記ステーション関連モデルは、前記1つ以上の予測を発生させるために少なくとも前記残差の第1のセットおよび前記残差の第2のセットを処理するように構成されている、ステーションレベルとを含む、上記項目のいずれか一項に記載のシステム。
(項目8)
前記複数のデータストアは、前記クライアントアプリケーション層内の前記少なくとも1つのソースから受信された前記データを記憶するように構成されているデータベースを備える、上記項目のいずれか一項に記載のシステム。
(項目9)
前記複数のデータストアは、前記1つ以上の機械学習モデルと関連付けられた1つ以上のモデルデータファイルを記憶するように構成されているオブジェクト記憶装置を備える、上記項目のいずれか一項に記載のシステム。
(項目10)
前記システムは、前記製造環境と関連付けられたプロセス制御ワークフローへの統合のために前記1つ以上の予測を公開するように構成されている公開モジュールをさらに備える、上記項目のいずれか一項に記載のシステム。
(項目11)
前記1つ以上の予測は、前記製造環境における前記1つ以上のプロセスおよび/または前記機器への特性評価、監視、制御、および/または修正を実質的にリアルタイムで可能にするために、または最適化するために使用可能である、上記項目のいずれか一項に記載のシステム。
(項目12)
前記システムは、前記1つ以上の機械学習モデルに関する1つ以上のパフォーマンスメトリックを発生させるように構成されているモデルパフォーマンス評価モジュールをさらに備える、上記項目のいずれか一項に記載のシステム。
(項目13)
前記1つ以上のパフォーマンスメトリックは、少なくとも感度分析またはストレス試験から導出される、上記項目のいずれか一項に記載のシステム。
(項目14)
前記システムは、ダッシュボード上に前記1つ以上のパフォーマンスメトリックを表示するように構成されているグラフィカルユーザインターフェース(GUI)を備えるフロントエンドユーザ管理モジュールをさらに備える、上記項目のいずれか一項に記載のシステム。
(項目15)
前記データは、機器データ、プロセスデータ、メタデータ、および/または測定データを備える、上記項目のいずれか一項に記載のシステム。
(項目16)
前記データ収集器は、少なくとも2つの異なるソースから前記データを同期的に受信するように構成されている、上記項目のいずれか一項に記載のシステム。
(項目17)
前記データ収集器は、少なくとも部分的に、所定のスケジュールに基づいて、前記少なくとも1つのソースから前記データを受信するように構成されている、上記項目のいずれか一項に記載のシステム。
(項目18)
前記データ収集器は、少なくとも部分的に、前記製造環境内で生じる1つ以上のイベントの検出に基づいて、前記少なくとも1つのソースから前記データを受信するように構成されている、上記項目のいずれか一項に記載のシステム。
(項目19)
前記1つ以上のイベントは、前記製造環境内の少なくとも1つのプロセスまたはプロセス機器におけるドリフト、エクスカーション、シフト、逸脱、または異常と関連付けられている、上記項目のいずれか一項に記載のシステム。
(項目20)
前記データは、(1)履歴プロセスデータ、(2)現在のプロセスデータ、(3)1つ以上のメトリックの履歴測定データ、(4)1つ以上のメトリックの現在の測定データ、(5)動作データ、または(6)機器仕様メタデータを備える複数のデータタイプおよびデータセットを備える、上記項目のいずれか一項に記載のシステム。
(項目21)
前記データセット発生器は、前記1つ以上のカスタマイズされたデータセット内の1つ以上の特徴の選択を自動化するように構成されている、上記項目のいずれか一項に記載のシステム。
(項目22)
前記モデル管理モジュールは、ハイパーパラメータ最適化を含む前記1つ以上の機械学習モデルを訓練するように構成されている、上記項目のいずれか一項に記載のシステム。
(項目23)
前記ハイパーパラメータ最適化は、1つ以上のパフォーマンスメトリックが所定の閾値レベルを下回って劣化するとき、前記1つ以上のパフォーマンスメトリックに基づいて実施される、上記項目のいずれか一項に記載のシステム。
(項目24)
前記製造環境は、半導体製造、LCDディスプレイ製造、ソーラーパネル製造、電子機器製造、バッテリー製造、自動車製造、または医薬品製造のうちの少なくとも1つと関連付けられている、上記項目のいずれか一項に記載のシステム。
(項目25)
製造環境のプロセス制御または監視を最適化するためのコンピュータプログラム製品であって、前記コンピュータプログラム製品は、少なくとも1つの非一時的なコンピュータ読み取り可能な媒体を備え、前記少なくとも1つの非一時的なコンピュータ読み取り可能な媒体は、前記少なくとも1つの非一時的なコンピュータ読み取り可能な媒体内に具体化されるコンピュータ読み取り可能なプログラムコード部分を有し、
前記コンピュータ読み取り可能なプログラムコード部分は、製造環境と関連付けられたクライアントアプリケーション層とインターフェースをとるように構成されている実行可能部分を備え、前記実行可能部分は、(1)前記クライアントアプリケーション層内の少なくとも1つのソースからデータを受信するように構成されている実行可能部分と、(2)ユーザが、前記データから1つ以上のカスタマイズされたデータセットを作成することを可能にするように構成されている実行可能部分と、(3)前記ユーザが、少なくとも部分的に、前記1つ以上のカスタマイズされたデータセットを使用して、1つ以上の機械学習モデルを構築、訓練、および/または更新することを可能にするように構成されている実行可能部分と、(4)前記製造環境において、1つ以上のプロセスが実施されている際、および/または機器が動作されている際、1つ以上の予測を発生させるために前記1つ以上の機械学習モデルを使用するように構成されている実行可能部分とを備える、コンピュータプログラム製品。
(摘要)
システムおよび方法は、プロセス変数、標的性質、または異常の根本原因に関する予測または推奨を発生させ得る。システムは、データおよび機械学習層を含み得、データおよび機械学習層は、クライアントアプリケーション層からデータを受信するように構成されているデータ収集器と、ユーザがデータからカスタマイズされたデータセットを作成することを可能にするように構成されているデータセット発生器と、ユーザが、機械学習モデルを構築、訓練、および/または更新することを可能にするように構成されているモデル管理モジュールと、予測または推奨を発生させるために機械学習モデルを使用するように構成されている推論モジュールとを含み得る。機械学習モデルは、希少または疎データを用いて予測を発生させるための集約的適応型オンラインモデル(AggAOM)を含み得る。
【0010】
(参照による援用)
本明細書に言及される全ての刊行物、特許、および特許出願は、各個々の刊行物、特許、または特許出願が具体的かつ個々に参照することによって援用されることが示される場合と同程度に、参照することによって本明細書に援用される。参照することによって援用される刊行物および特許または特許出願が本明細書に含有される開示と矛盾する範囲において、本明細書が、任意のそのような矛盾する資料に優先し、および/またはその上位にあることが、意図される。
【図面の簡単な説明】
【0011】
本開示の新規の特徴が、付属の請求項に詳細に記載される。本開示の特徴および利点のより深い理解が、本開示の原理が利用される、例証的実施形態を記載する以下の詳細な説明と、付随の図面とを参照することによって取得される。
【0012】
図1A図1A~1Cは、いくつかの実施形態による、(i)図1Aの仮想計測(VM)と、画像計測(IM)と、根本原因分析(RCA)との間の高レベル関係、(ii)図1BのVMに関するシステムアーキテクチャ、および(iii)図1CのVMに関する高レベルシステムワークフローを含む、製造環境における製造プロセスのプロセス制御または監視を最適化するための非限定的実施例を図示する。
図1B図1A~1Cは、いくつかの実施形態による、(i)図1Aの仮想計測(VM)と、画像計測(IM)と、根本原因分析(RCA)との間の高レベル関係、(ii)図1BのVMに関するシステムアーキテクチャ、および(iii)図1CのVMに関する高レベルシステムワークフローを含む、製造環境における製造プロセスのプロセス制御または監視を最適化するための非限定的実施例を図示する。
図1C図1A~1Cは、いくつかの実施形態による、(i)図1Aの仮想計測(VM)と、画像計測(IM)と、根本原因分析(RCA)との間の高レベル関係、(ii)図1BのVMに関するシステムアーキテクチャ、および(iii)図1CのVMに関する高レベルシステムワークフローを含む、製造環境における製造プロセスのプロセス制御または監視を最適化するための非限定的実施例を図示する。
【0013】
図2A図2A~2Bは、いくつかの実施形態による、仮想計測(VM)、画像計測(IM)、または根本原因分析(RCA)を利用し得る、製造プロセスの非限定的実施例を図示する。図2Aは、例示的製造プロセスを図示する。図2Bは、例示的計測を図示する。
図2B図2A~2Bは、いくつかの実施形態による、仮想計測(VM)、画像計測(IM)、または根本原因分析(RCA)を利用し得る、製造プロセスの非限定的実施例を図示する。図2Aは、例示的製造プロセスを図示する。図2Bは、例示的計測を図示する。
【0014】
図3A図3A~3Fは、いくつかの実施形態による、製造環境における製造プロセスのプロセス制御または監視を最適化するための高レベル人工知能(AI)ワークフローの非限定的実施例を図示する。図3Aは、例示的高レベルアーキテクチャまたはワークフローを図示する。図3Bは、ソリューションエンジニアリングまたは顧客システム統合のための例示的データインターフェースを図示する。図3Cは、データインターフェースからデータを受信する、またはデータをフェッチするための例示的製品データ層を図示する。図3Dは、予測または推奨を促進するための例示的インフラストラクチャモジュールまたは層を図示する。図3Eは、機械学習(ML)モデルまたは推論モデルを開発または展開するための例示的AI層を図示する。図3Fは、予測、推奨、パフォーマンスメトリック、および同等物を提供するための例示的製品エンジニアリング層を図示する。
図3B図3A~3Fは、いくつかの実施形態による、製造環境における製造プロセスのプロセス制御または監視を最適化するための高レベル人工知能(AI)ワークフローの非限定的実施例を図示する。図3Aは、例示的高レベルアーキテクチャまたはワークフローを図示する。図3Bは、ソリューションエンジニアリングまたは顧客システム統合のための例示的データインターフェースを図示する。図3Cは、データインターフェースからデータを受信する、またはデータをフェッチするための例示的製品データ層を図示する。図3Dは、予測または推奨を促進するための例示的インフラストラクチャモジュールまたは層を図示する。図3Eは、機械学習(ML)モデルまたは推論モデルを開発または展開するための例示的AI層を図示する。図3Fは、予測、推奨、パフォーマンスメトリック、および同等物を提供するための例示的製品エンジニアリング層を図示する。
図3C図3A~3Fは、いくつかの実施形態による、製造環境における製造プロセスのプロセス制御または監視を最適化するための高レベル人工知能(AI)ワークフローの非限定的実施例を図示する。図3Aは、例示的高レベルアーキテクチャまたはワークフローを図示する。図3Bは、ソリューションエンジニアリングまたは顧客システム統合のための例示的データインターフェースを図示する。図3Cは、データインターフェースからデータを受信する、またはデータをフェッチするための例示的製品データ層を図示する。図3Dは、予測または推奨を促進するための例示的インフラストラクチャモジュールまたは層を図示する。図3Eは、機械学習(ML)モデルまたは推論モデルを開発または展開するための例示的AI層を図示する。図3Fは、予測、推奨、パフォーマンスメトリック、および同等物を提供するための例示的製品エンジニアリング層を図示する。
図3D図3A~3Fは、いくつかの実施形態による、製造環境における製造プロセスのプロセス制御または監視を最適化するための高レベル人工知能(AI)ワークフローの非限定的実施例を図示する。図3Aは、例示的高レベルアーキテクチャまたはワークフローを図示する。図3Bは、ソリューションエンジニアリングまたは顧客システム統合のための例示的データインターフェースを図示する。図3Cは、データインターフェースからデータを受信する、またはデータをフェッチするための例示的製品データ層を図示する。図3Dは、予測または推奨を促進するための例示的インフラストラクチャモジュールまたは層を図示する。図3Eは、機械学習(ML)モデルまたは推論モデルを開発または展開するための例示的AI層を図示する。図3Fは、予測、推奨、パフォーマンスメトリック、および同等物を提供するための例示的製品エンジニアリング層を図示する。
図3E図3A~3Fは、いくつかの実施形態による、製造環境における製造プロセスのプロセス制御または監視を最適化するための高レベル人工知能(AI)ワークフローの非限定的実施例を図示する。図3Aは、例示的高レベルアーキテクチャまたはワークフローを図示する。図3Bは、ソリューションエンジニアリングまたは顧客システム統合のための例示的データインターフェースを図示する。図3Cは、データインターフェースからデータを受信する、またはデータをフェッチするための例示的製品データ層を図示する。図3Dは、予測または推奨を促進するための例示的インフラストラクチャモジュールまたは層を図示する。図3Eは、機械学習(ML)モデルまたは推論モデルを開発または展開するための例示的AI層を図示する。図3Fは、予測、推奨、パフォーマンスメトリック、および同等物を提供するための例示的製品エンジニアリング層を図示する。
図3F図3A~3Fは、いくつかの実施形態による、製造環境における製造プロセスのプロセス制御または監視を最適化するための高レベル人工知能(AI)ワークフローの非限定的実施例を図示する。図3Aは、例示的高レベルアーキテクチャまたはワークフローを図示する。図3Bは、ソリューションエンジニアリングまたは顧客システム統合のための例示的データインターフェースを図示する。図3Cは、データインターフェースからデータを受信する、またはデータをフェッチするための例示的製品データ層を図示する。図3Dは、予測または推奨を促進するための例示的インフラストラクチャモジュールまたは層を図示する。図3Eは、機械学習(ML)モデルまたは推論モデルを開発または展開するための例示的AI層を図示する。図3Fは、予測、推奨、パフォーマンスメトリック、および同等物を提供するための例示的製品エンジニアリング層を図示する。
【0015】
図4図4は、いくつかの実施形態による、製造環境における製造プロセスのプロセス制御または監視を最適化するためのAIワークフローの非限定的実施例を図示する。
【0016】
図5図5は、いくつかの実施形態による、製造環境における製造プロセスのプロセス制御または監視を最適化するための特徴エンジニアリングの非限定的実施例を図示する。
【0017】
図6図6は、本開示の製造環境における製造プロセスのプロセス制御または監視を最適化するためのデータの非限定的実施例を図示する。
【0018】
図7図7は、いくつかの実施形態による、適応型オンラインモデル(AOM)の高レベルアーキテクチャまたはフローを図示する。
【0019】
図8A図8A~8Bは、いくつかの実施形態による、異なるモデルが機器、チャンバ、およびステーションを利用し得る方法の実施例を図示する。図8Aは、単一のモデルによって使用される機器、チャンバ、およびステーションの実施例を図示する。図8Bは、ステーション関連モデルによって使用される機器、チャンバ、およびステーションの実施例を図示する。
図8B図8A~8Bは、いくつかの実施形態による、異なるモデルが機器、チャンバ、およびステーションを利用し得る方法の実施例を図示する。図8Aは、単一のモデルによって使用される機器、チャンバ、およびステーションの実施例を図示する。図8Bは、ステーション関連モデルによって使用される機器、チャンバ、およびステーションの実施例を図示する。
【0020】
図9図9は、いくつかの実施形態による、本明細書の集約的適応型オンラインモデル(AggAOM)が機器、チャンバ、およびステーションを利用し得る方法の実施例を図示する。
【0021】
図10図10は、いくつかの実施形態による、半導体製造プロセスにおける3つの機器に関する標準化されたウエハ厚さの実施例を図示する。
【0022】
図11図11は、いくつかの実施形態による、本明細書の集約的適応型オンラインモデル(AggAOM)の例示的高レベルアーキテクチャまたはフローを図示する。
【0023】
図12A図12A~12Dは、いくつかの実施形態による、異なるモデル、例えば、線形モデル、部分最小二乗法(PLS)モデル、XGBoost(XGB)モデル、適応型オンラインモデル(AOM)、および本明細書の集約的適応型オンラインモデル(AggAOM)の間のパフォーマンスの比較を図示する。図12Aは、第1の化学蒸着(CVD1)データセットを用いてパフォーマンス、例えば、r二乗(R2)を比較する。図12Bは、第1の化学蒸着(CVD1)データセットを用いてパフォーマンス、例えば、二乗平均平方根誤差(RMSE)を比較する。図12Cは、第2の化学蒸着(CVD2)データセットを用いてパフォーマンス、例えば、R2を比較する。図12Dは、第2の化学蒸着(CVD1)データセットを用いてパフォーマンス、例えば、RMSEを比較する。
図12B図12A~12Dは、いくつかの実施形態による、異なるモデル、例えば、線形モデル、部分最小二乗法(PLS)モデル、XGBoost(XGB)モデル、適応型オンラインモデル(AOM)、および本明細書の集約的適応型オンラインモデル(AggAOM)の間のパフォーマンスの比較を図示する。図12Aは、第1の化学蒸着(CVD1)データセットを用いてパフォーマンス、例えば、r二乗(R2)を比較する。図12Bは、第1の化学蒸着(CVD1)データセットを用いてパフォーマンス、例えば、二乗平均平方根誤差(RMSE)を比較する。図12Cは、第2の化学蒸着(CVD2)データセットを用いてパフォーマンス、例えば、R2を比較する。図12Dは、第2の化学蒸着(CVD1)データセットを用いてパフォーマンス、例えば、RMSEを比較する。
図12C図12A~12Dは、いくつかの実施形態による、異なるモデル、例えば、線形モデル、部分最小二乗法(PLS)モデル、XGBoost(XGB)モデル、適応型オンラインモデル(AOM)、および本明細書の集約的適応型オンラインモデル(AggAOM)の間のパフォーマンスの比較を図示する。図12Aは、第1の化学蒸着(CVD1)データセットを用いてパフォーマンス、例えば、r二乗(R2)を比較する。図12Bは、第1の化学蒸着(CVD1)データセットを用いてパフォーマンス、例えば、二乗平均平方根誤差(RMSE)を比較する。図12Cは、第2の化学蒸着(CVD2)データセットを用いてパフォーマンス、例えば、R2を比較する。図12Dは、第2の化学蒸着(CVD1)データセットを用いてパフォーマンス、例えば、RMSEを比較する。
図12D図12A~12Dは、いくつかの実施形態による、異なるモデル、例えば、線形モデル、部分最小二乗法(PLS)モデル、XGBoost(XGB)モデル、適応型オンラインモデル(AOM)、および本明細書の集約的適応型オンラインモデル(AggAOM)の間のパフォーマンスの比較を図示する。図12Aは、第1の化学蒸着(CVD1)データセットを用いてパフォーマンス、例えば、r二乗(R2)を比較する。図12Bは、第1の化学蒸着(CVD1)データセットを用いてパフォーマンス、例えば、二乗平均平方根誤差(RMSE)を比較する。図12Cは、第2の化学蒸着(CVD2)データセットを用いてパフォーマンス、例えば、R2を比較する。図12Dは、第2の化学蒸着(CVD1)データセットを用いてパフォーマンス、例えば、RMSEを比較する。
【0024】
図13図13は、いくつかの実施形態による、コンピューティングシステムの非限定的実施例を図示する。
【発明を実施するための形態】
【0025】
(詳細な説明)
本開示の種々の実施形態が、本明細書に示され、説明されているが、そのような実施形態は、実施例としてのみ提供される。多数の変形例、変更、または代用が、本開示から逸脱することなく、生じ得る。本明細書に説明される本開示の実施形態の種々の代替が採用され得ることを理解されたい。
【0026】
製造プロセスにおけるプロセス制御または監視を最適化するための典型的なシステムは、不十分である。本明細書に説明されるシステムは、製造プロセスにおけるプロセス制御または監視を最適化するための仮想計測(VM)、画像計測(IM)、または根本原因分析(RCA)と関連付けられた接続されたシステムを含み得る。
【0027】
VMまたはIMでは、個々のプロセスに関する測定データ、または複数のプロセスまたは異なるプロセスエリアを横断する測定データが、プロセス監視の質のために重要であり得る。製造プロセスは、例えば、メモリおよび論理デバイスのための半導体製造プロセスを含み得る。各プロセスステップの終了時に生じる変形の監視の質は、時間、コスト、および技術の観点から極めて高価であり得、または法外でさえあり得る。その結果、製造プロセスは、典型的には、非常に限定されたデータ、例えば、サンプル測定の数に依拠する。サンプリングサイズは、サンプルをもたらす製品が破壊される、またはプロセスにおいて使用不可能にされる破壊的サンプリングシナリオの場合にさらに限定される。上記の問題に起因する限定されたサンプリングは、種々のレベルにおいて最適でないプロセス制御または監視をもたらす。仮想計測は、製品の測定値を効果的に予測するための能力を提供し、それによって、関連付けられたコストを回避しながら、製品の物理的サンプリングを補足する。画像計測は、同一の画像上でより多くの測定情報を発生させることによって、従来の計測を最適化する。各プロセスステップ後に製品空間全体をサンプリングするための能力は、変動性低減、収率最適化、および、スクラップ(例えば、動作不能な製品)、機器中断時間、測定コストに起因する損失収益の低減をもたらす非常に厳密なプロセス制御または監視最適化を可能にし得る。
【0028】
RCAでは、典型的なシステムは、半導体製造プロセス等の製造プロセスにおいて観察されるデータドリフト、データシフト、または階層データ構造をモデル化することが可能ではない場合がある。データドリフトは、一般に、例えば、製造プロセスにおいて使用される機器の老朽化に起因するプロセス動力学の漸進的な変化を指し得る。データシフトは、一般に、例えば、保守または較正等の外部動作に起因するプロセス動力学の急激な変化を指し得る。VMまたはIMと関連付けられた高度プロセス制御(APC)方法または統計的プロセス制御(SPC)方法は、製造プロセスにおけるプロセス変数または標的性質の正確な予測を必要とし得る。しかしながら、いくつかのシステムは、現実または実際のデータ、例えば、最新または履歴センサデータにおいて観察される非定常性をモデル化することが可能ではない場合がある。非定常性は、例えば、化学蒸着(CVD)、エッチング、拡散、または他のプロセス等の半導体製造プロセスにおいて発生させられ得る。例えば、データドリフトは、VMまたはIMモデルと関連付けられた予測の正確度の定常または緩慢な減少を引き起こし得る。データシフトは、VMまたはIMモデルの急激な不具合を引き起こし得る。移動ウィンドウベースの方法を使用するいくつかのVMまたはIMシステムは、例えば、データの小さいサブセットを選択することに起因して、不正確であり得る。ジャストインタイム学習方法を使用するいくつかのVMまたはIMシステムは、プロセス変数または標的性質の間の基礎的関係の変化に適応し得ない。
【0029】
本明細書に説明されるシステムの特徴は、例えば、ドメインサポート特徴、機械学習(ML)特徴、および製品特徴を含み得る。ドメインサポート特徴は、ユーザ(例えば、プロセスエンジニア等の専門家)がドメイン知識をプロセスに組み込むことを可能にすることと関連付けられた特徴を含み得る。ドメイン知識を組み込むことは、カスタムプロセス実験を作成すること、カスタム論理(例えば、カスタムプロセスレシピ)を発生させること、VM、RCA、およびIMに関するMLモデルに対してユーザパフォーマンスを比較または査定すること、ドメイン情報に基づく特徴およびデータセットをプロセス実験に含めること、またはドメイン情報に基づくパフォーマンスおよび評価メトリックを定義することを含み得る。機械学習特徴は、自動化およびカスタムの両方のVM、RCA、およびIMモデルを構築すること、多種多様なモデルをベンチマーキングおよび評価すること、自動化計測または双方向計測のいずれかのためのモデルパフォーマンスおよびドメイン特有情報をプロビジョニングすること、カスタムMLモデルのための実験構築、製品内モデル構築、変化する動作条件に応答して精緻化および調整すること(例えば、データドリフトおよびシフトに適合すること)、モデル再訓練に関するスケジューリングを自動化すること、またはユーザの必要性に応じて展開された製品環境におけるMLモデル訓練および推論プロセスをサポートすることによってユーザデータプライバシをサポートすることと関連付けられた特徴を含み得る。製品特徴は、異なるデータおよびコンピューティングインフラストラクチャ(例えば、オンサイトサービス、クラウドサービス、カスタムサービス、またはそれらの組み合わせ)をサポートすること、またはサポートされる使用事例(例えば、機器健全性を監視するためのVM出力)を横断する使用およびそれ以外の使用を可能にするために製品特徴をモジュール化することと関連付けられた特徴を含み得る。
【0030】
(プロセス制御または監視を最適化するためのシステム)
(システムの概観)
ある側面では、製造環境における製造プロセスのプロセス制御または監視を最適化するためのシステムが、本明細書に開示される。システムは、製造環境と関連付けられたクライアントアプリケーション層とインターフェースをとるように構成されているデータおよび機械学習層を備え得る。データおよび機械学習層は、クライアントアプリケーション層内の少なくとも1つのソースからデータを受信するように構成されているデータ収集器を含み得る。データおよび機械学習層は、ユーザがデータから1つ以上のカスタマイズされたデータセットを作成することを可能にするように構成されているデータセット発生器を含み得る。データおよび機械学習層は、ユーザが、少なくとも部分的に、1つ以上のカスタマイズされたデータセットを使用して、1つ以上の機械学習モデルを構築、訓練、および/または更新することを可能にするように構成されているモデル管理モジュールを含み得る。データおよび機械学習層は、製造環境において、1つ以上のプロセスが実施されている際、および/または機器が動作されている際、1つ以上の予測を発生させるために1つ以上の機械学習モデルを使用するように構成されている推論モジュールを含み得る。システムは、少なくともデータ、新しいデータ更新、1つ以上のカスタマイズされたデータセット、および1つ以上の機械学習モデルを記憶するように構成されている複数のデータストアを含み得る。いくつかの実施形態では、複数のデータストアは、クライアントアプリケーション層内の少なくとも1つのソースから受信されたデータを記憶するように構成されているデータベースを備える。
【0031】
いくつかのVMシステムは、製造プロセス、例えば、半導体産業におけるウエハの処理の制御または監視に関連するプロセスおよび特性をモデル化し得る。プロセスおよび特性を統計的にモデル化することは、部分的に、現在のデータまたは履歴データ、例えば、最新センサデータまたは履歴センサデータからの測定値を使用し得る。仮想計測システムは、例えば、製造プロセスを制御または監視するために、より正確な測定値を提供し得る。仮想計測システムおよび方法は、例えば、従来的な計測を使用する製造プロセスの物理的検査と比較されたとき、生産性を増加させ得、品質を改良し得、または保守コストを低下させ得る。例えば、VMシステムおよび方法が、製造プロセスにおいて全てまたは実質的に全てのユニット(例えば、半導体ウエハ)をサンプリングすることが可能であり得る一方、従来的な計測を使用する人間オペレータは、ユニットのごく一部しかサンプリングすることが可能ではない場合がある。仮想計測システムおよび方法は、部分的に、製造プロセスにおけるプロセス制御または監視を最適化するために、プロセス変数または標的性質を予測するために、ML方法を使用し得る。
【0032】
典型的なVMシステムは、少なくともいくつかの理由から不十分である。いくつかのシステムは、半導体製造プロセス等の製造プロセスにおいて観察されるデータドリフト、データシフト、または階層的データ構造をモデル化することが可能ではない場合がある。データドリフトは、一般に、例えば、製造プロセスにおいて使用される機器の老朽化に起因するプロセス動力学の漸進的な変化を指し得る。データシフトは、一般に、例えば、保守または較正等の外部動作に起因するプロセス動力学の急激な変化を指し得る。VMと関連付けられた高度プロセス制御方法は、製造プロセスにおけるプロセス変数または標的性質の正確な予測を必要とし得る。しかしながら、いくつかのシステムは、現実または実際のデータ、例えば、最新または履歴センサデータにおいて観察される非定常性をモデル化することが可能ではない場合がある。非定常性は、例えば、化学蒸着(CVD)、エッチング、拡散、または他のプロセス等の半導体製造プロセスにおいて発生させられ得る。例えば、データドリフトは、VMモデルと関連付けられた予測の正確度の定常または緩慢な減少を引き起こし得る。データシフトは、VMモデルの急激な不具合を引き起こし得る。移動ウィンドウベースの方法を使用するいくつかのVMシステムは、例えば、データの小さいサブセットを選択することに起因して、不正確であり得る。ジャストインタイム学習方法を使用するいくつかのVMシステムは、プロセス変数または標的性質の間の基礎的関係の変化に適応し得ない。
【0033】
いくつかの実施形態では、製造環境は、半導体製造、電子機器製造、バッテリー製造、自動車製造、または医薬品製造のうちの少なくとも1つと関連付けられている。本明細書に説明されるシステム(例えば、VM、RCA、またはIMのためのシステム)は、製造環境におけるプロセス制御または監視を最適化するために使用され得る。例えば、図1Aに図示されるように、製造環境は、旧来の製造システム110と関連付けられ得る。旧来の製造システム110は、旧来のデータソースおよび旧来のソフトウェアシステムと関連付けられ得る。
【0034】
図1Aにさらに図示されるように、旧来の製造システム110は、旧来の製造システム110からデータを発生させる、または伝送するように構成されている旧来のデータソースと関連付けられ得る。データソースは、処理機器または機械、計測器具または機械、検査機器または機械、輸送機器または機械、処理センサ、または機器センサから発生させられる、または受信されるデータを含み得る。データソースからのデータは、同時に発生させられる、または受信されるデータ(例えば、リアルタイムデータ)、または、非同時に受信される、または発生させられるデータ(例えば、履歴データ)を含み得る。本明細書に説明されるシステムは、最新データまたは履歴データを使用して、より正確なモデル(例えば、VM、RCA、またはIMモデル)を構築し得、またはその既存のモデルを改良し得る。
【0035】
図1Aにさらに図示されるように、旧来の製造システム110は、データソースからデータを受信する、データソースからのデータを分析する、またはデータソースからデータを発生させるように構成されている旧来のソフトウェアシステムと関連付けられ得る。旧来のソフトウェアシステムは、製造実行システム(MES)、高度プロセス制御(APC)システム、統計的プロセス制御(SPC)システム、レシピ管理(RMS)システム、および同等物を含み得る。旧来の製造システム110は、データを受信、記憶、または伝送するように構成されているデータハブと関連付けられ得る。
【0036】
図1Aにさらに図示されるように、システム120は、旧来の製造システム110からデータを受信して、製造プロセスの制御または監視を最適化するための予測または推奨を発生させ得る。データは、製造プロセスのプロセス制御または監視を最適化するためのMLモデルを訓練するためのシステム120による使用のための未加工データ(例えば、未処理データ)および処理済データを含み得る。旧来の製造システム110から受信される未加工データは、例えば、本明細書の別の場所に説明されるセンサトレースデータ、プロセス応答、ログ、画像、および同等物を含み得る。ある場合には、システム120は、データを受信、処理、または伝送するために、本明細書の別の場所に説明されるデータインターフェースを含み得る。データインターフェースは、データを収集する、データを検証する、またはデータをラングリングするように構成され得る。
【0037】
図1Aにさらに図示されるように、システム120は、予測または推奨を発生させるためのMLモデルを開発するために、人工知能(AI)アプリケーションを伴って構成され得る。予測または推奨は、旧来の製造システム110の制御または監視を最適化するために使用され得る。機械学習モデルは、MLモデルの開発からの洞察、例えば、MLモデルを訓練、試験、調整、または検証することからの洞察を発生させるための推論モデルを含み得る。ある場合には、システム120は、旧来の製造システム110を最適化するための予測、推奨、または洞察を伝送または公開するために、フィードバックループにおいて構成されているサービングエージェントを含み得る。
【0038】
図1Aにさらに図示されるように、システム120は、旧来の製造システム110のプロセス制御または監視を最適化するためのMLモデルの発生を促進するために、本明細書の別の場所に説明されるインフラストラクチャ130を利用するように構成され得る。インフラストラクチャ130は、製造環境における製造プロセスのプロセス制御または監視を最適化するために、オンサイトで構成されているサービス、1つ以上のクラウドサービスにおいて構成されているサービス、MLフレームワーク、分散データ処理システム、クラウドコンピューティングフレームワーク、および同等物を含み得る。
【0039】
製造環境は、半導体製造プロセスを有する半導体製造環境と関連付けられ得る。例えば、図2A~2Bに図示されるように、半導体製造環境は、半導体製造プロセスを実行するように構成されている半導体製造機器と関連付けられ得る。システム120は、半導体製造プロセス、例えば、プロセス変数、標的性質、または異常の根本原因のプロセス制御または監視を最適化するための予測または推奨を発生させ得る。プロセスは、ウエハ加工プロセス、例えば、インゴット引上、インゴットスライス、ウエハ研削、または酸化を含み得る。プロセスは、マスク加工プロセス、例えば、回路設計、パターン設計、またはフォトマスキングを含み得る。プロセスは、フロントエンドプロセス、例えば、パターンリソグラフィ、エッチング、化学蒸着(例えば、イオン注入、酸化、拡散)、フォトレジストコーティング、または平坦化を含み得る。プロセスは、中間検査、例えば、ウエハの検査を含み得る。プロセスは、バックエンドプロセス、例えば、ウエハダイシング、チップ搭載、ワイヤ接合、成型、トリミング、または形成を含み得る。プロセスは、中間試験、例えば、バーンイン温度または電圧試験を含み得る。プロセスは、最終検査または信頼性試験を含み得る。プロセスは、マーキングを含み得る。
【0040】
(仮想計測(VM)のためのシステム)
図1Bに図示されるものは、製造環境における製造プロセスのプロセス制御または監視を最適化するための本開示のシステム120を実装するための高レベルシステムアーキテクチャ500(以降「アーキテクチャ500」)である。アーキテクチャ500は、システム120を実装するように構成されている層またはモジュールを備える。層またはモジュールは、アプリケーション層510と、VMエンジン層520と、AI層530と、データおよびインフラストラクチャ層540と、パフォーマンス管理層550とを含み得る。
【0041】
図1Bにさらに図示されるように、アーキテクチャ500は、システム120とのユーザ相互作用を提供するように構成されているアプリケーション層510を備える。層510は、半導体製造プロセスと関連付けられたシステムまたはプロセスとのユーザ相互作用を提供するように構成されている層またはモジュールを備え得る。プロセスは、化学蒸着(CVD)プロセス、物理蒸着(PVD)プロセス、拡散(DIFF)プロセス、化学的機械的平坦化(CMP)プロセス、エッチング(D-Mass)プロセス、エッチング臨界寸法(CD)プロセス、または図2Aに図示されるもの等の任意の半導体製造プロセスに関連するプロセスを含み得る。
【0042】
図1Bにさらに図示されるように、アーキテクチャ500は、プロセス管理521、データエンジニアリング522、およびAIパイプライン523のために構成されているVMエンジン層520を備える。プロセス管理521は、データソースからのメタデータを処理する、MLパイプラインを監視または再訓練する、MLパイプラインをシャドウイングする、またはMLパイプラインと関連付けられた正確度メトリックまたは分析を発生させるように構成されているモジュールまたは層を備え得る。データエンジニアリング522は、データをラングリングする、データを前処理する(例えば、フィルタリング、クリーニング、拡張、異常の検出、標準化、および同等物)、または、特徴を選択またはエンジニアリングするように構成されているモジュールまたは層を備え得る。AIパイプライン523は、アルゴリズムディレクトリを発生させる、アルゴリズムマッピングを処理する、実験を発生させる、または実施する、パイプラインを発生させる、または推論を発生させるように構成されているモジュールまたは層を備え得る。
【0043】
図1Bにさらに図示されるように、アーキテクチャ500は、データエンジニアリング531、学習および最適化532、推論および正確度メトリック533、またはML動作534のために構成されているAI層530を備える。データエンジニアリング531は、データを処理する(例えば、フィルタリング、クリーニング、ラングリング、および同等物)、データを拡張する、異常を検出する、データを標準化する、または、特徴を選択またはエンジニアリングするように構成されているモジュールまたは層を備え得る。学習および最適化532は、学習または最適化のためのアルゴリズムを決定する、発生させる、または使用する、パイプラインを最適化または学習する、訓練を最適化または学習する、またはハイパーパラメータを最適化または学習するように構成されているモジュールまたは層を備え得る。推論および正確度メトリック533は、MLパイプラインと関連付けられた関数をスコアリングするように構成されているモジュールまたは層を備え得る。ML動作534は、データセット系統制御を発生させる、データセットバージョン制御を発生させる、MLモデルバージョン制御を発生させる、パイプラインバージョン制御を発生させる、継続的統合(CI)バージョン制御を発生させる、継続的展開(CD)バージョン制御を発生させる、ジョブスケジューリングを発生させる、分散訓練および調整を発生させる、またはMLモデルをサービングするように構成されているモジュールまたは層を備え得る。
【0044】
図1Bにさらに図示されるように、アーキテクチャ500は、編成541、永続性542、またはコンピューティング543のために構成されているデータおよびインフラストラクチャ層540を備える。編成541は、ワークフローサービス(例えば、Apache Airflow)または展開サービス(例えば、RedisAI)を提供するように構成されているモジュールまたは層を備え得る。永続性542は、リレーショナルデータベース管理システム(RDBMS、例えば、MongoDB)におけるデータ(例えば、動作データ)の記憶装置を提供する、ビッグデータの記憶装置(例えば、Hive、Athena、Delta Lake、および同等物)を提供する、またはオブジェクト記憶装置(S3、例えば、MinIO)を提供するように構成されているモジュールまたは層を備え得る。コンピューティング543は、オンサイトコンピューティングサービス(例えば、オンプレミスK8、Kubernetes、管理されたK8、および同等物)、クラウドコンピューティングサービス(例えば、Elastic Kubernetes Services、Apache Spark、および同等物)、またはMLモデルの開発と関連付けられたコンピューティングを実施するように構成されている任意のコンピューティングサービスを提供するように構成されているモジュールまたは層を備え得る。
【0045】
図1Bにさらに図示されるように、アーキテクチャ500は、アーキテクチャ500と関連付けられたパフォーマンスデータを受信する、発生させる、または伝送するように構成されているパフォーマンス管理層550を備える。パフォーマンス管理層550は、アプリケーションおよびパフォーマンス監視(APM)、ダッシュボード、アラート、ログ付け、メトリック、および同等物を伴って構成されているモジュールまたは層を備え得る。いくつかの実施形態では、システムは、ダッシュボード上に1つ以上のパフォーマンスメトリックを表示するように構成されているグラフィカルユーザインターフェース(GUI)を備えるフロントエンドユーザ管理モジュールをさらに備える。
【0046】
(仮想計測(VM)のための高レベルシステムワークフロー)
図1Cに図示されるものは、製造環境における製造プロセスのプロセス制御または監視を最適化するための本開示のシステム120またはアーキテクチャ500を実装するための高レベルシステムワークフロー600(以降「ワークフロー600」)である。ワークフロー600は、システム120を実装するように構成されているワークフローを備える。ワークフローは、ソースデータ610、処理および記憶620、VM630、および後処理および監視640と関連付けられたワークフローを含み得る。
【0047】
図1Cにさらに図示されるように、ワークフロー600は、ソースデータ610と関連付けられたワークフローを備える。ワークフローは、旧来の製造システム110からデータを受信する、発生させる、記憶する、または伝送することと関連付けられたワークフローを備え得る。本明細書の別の場所に説明されるデータソース611は、例えば、処理機械、計測機械、または検査機械を含み得る。データは、データを受信または伝送するように構成されているアプリケーションプログラミングインターフェース(API)を使用して受信または伝送され得る。データソースからのデータは、データを記憶するように構成されているデータベース内に記憶され得る。データは、ストリーミングモードまたはバッチモードにおいて伝送され得る。ソースデータ610からのデータは、処理および記憶620に伝送され得る。処理および記憶620は、ソースデータ610からデータを受信またはフェッチし得る。
【0048】
図1Cにさらに図示されるように、ワークフロー600は、処理および記憶620と関連付けられたワークフローを備える。ワークフローは、データ収集サービス621またはデータプラットフォーム622と関連付けられたワークフローを備え得る。データ収集サービス621は、データプラットフォーム622から、またはそれにデータを受信または伝送するように構成されているデータベースを含み得る。ある場合には、データ収集サービス621は、VM630に直接データを伝送するために、パブ/サブサービスを使用し得る。データ収集サービス621は、データを低分解能データ(「ブロンズ」)から中分解能データ(「シルバー」)に、および高分解能データ(「ゴールド」)に変換することと関連付けられたワークフローを備え得る。データを中分解能データに変換することと関連付けられたワークフローは、データを検証すること、データをクリーニングすること、ビジネスルールをデータに適用すること、または他の典型的なデータ変換を含み得る。データを高分解能データに変換することと関連付けられたワークフローは、データを最適化すること、データをインデックス化すること、データを複製すること、または他の典型的なデータ変換を含み得る。ある場合には、ユーザ(例えば、ソリューション設計者)は、例えば、処理および記憶620をカスタマイズまたは構成するために、処理および記憶620と相互作用し得る。処理および記憶620からのデータは、VM630に伝送され得る。VM630は、ソースデータ610、処理および記憶620からデータを受信またはフェッチし得る。
【0049】
図1Cにさらに図示されるように、ワークフロー600は、VM630と関連付けられたワークフローを備える。ワークフローは、アプリケーション631と関連付けられたワークフローを備え得る。本明細書の別の場所に説明されるアプリケーション631は、化学蒸着(CVD)アプリケーション、物理蒸着(PVD)アプリケーション、拡散(DIFF)アプリケーション、化学的機械的平坦化(CMP)アプリケーション、エッチング(D-Mass)アプリケーション、エッチング臨界寸法(CD)アプリケーション、または図2Aに説明されるもの等の任意の半導体製造アプリケーションを含み得る。ユーザ、例えば、プロセスエンジニアは、例えば、実験を構成または実行する、実用的な洞察を提供する、または実用的な洞察を受け取るために、アプリケーション631と相互作用し得る。VM630からのデータは、後処理および監視640に伝送され得る。データは、例えば、予測、推奨、推論、アラーム、異常スコア、または本明細書に説明される任意のデータと関連付けられたデータを含み得る。後処理および監視640は、VM630からデータを受信またはフェッチし得る。
【0050】
図1Cにさらに図示されるように、ワークフロー600は、後処理および監視640と関連付けられたワークフローを備える。ワークフローは、公開サービス641または監視アラートサービス642と関連付けられたワークフローを備え得る。公開サービス641は、ビジネスルールまたはカスタムフォーマットと関連付けられたワークフローを備え得る。公開サービス641は、データを旧来の製造システム110、例えば、MES、APC、YMS、SPC、および同等物に伝送し得る。ユーザ、例えば、プロセスエンジニアは、MLモデルを選択し得る。選択されたMLモデルは、好ましいMLモデルであり得る。監視アラートサービス642は、ダッシュボードまたはアラートと関連付けられたワークフローを備え得る。
【0051】
図1Cにさらに図示されるように、ワークフロー600は、処理および記憶620と後処理および監視640との間でデータを伝送または受信するためのワークフローを備える。データは、推論または動作データと関連付けられたデータを含み得る。ワークフロー600は、処理および記憶620とVM630との間でデータを伝送または受信するためのワークフローを備える。データは、バッチデータ(例えば、故障検出および分類(FDC)データ、計測データ、メタデータ、および同等物)、推論、動作データ、および同等物と関連付けられたデータを含み得る。
【0052】
(仮想計測(VM)のための高レベルAIワークフロー)
図3A~3Fに図示されるものは、製造環境における製造プロセスのプロセス制御または監視を最適化するための本開示のシステム120、アーキテクチャ500、またはワークフロー600を実装するための高レベルAIワークフロー300(以降「ワークフロー300」)である。図3Aに図示されるように、ワークフロー300は、データインターフェース310、製品層320、インフラストラクチャ層330、AI層340、および製品エンジニアリング層350と関連付けられたワークフローを備える。
【0053】
図3Bに図示されるように、ワークフロー300は、ソリューションエンジニアリングまたは顧客システム統合のために構成されているデータインターフェース310を含み得る。ある場合には、データインターフェース310は、ユーザ、例えば、プロセスエンジニアによって構成されている。ある場合には、データインターフェース310は、顧客データソース(例えば、旧来の製造システム110)をシステム120に接続するように構成されている。データインターフェース310は、製造プロセスにおける機器またはユニット(例えば、旧来の製造システム110)と関連付けられたデータを受信する、データをフェッチする、またはデータを記憶するように構成されているデータベース、例えば、データウェアハウスを含み得る。データインターフェース310は、データを受信する、またはデータをフェッチするように構成されているAPIを介してデータを受信またはフェッチし得る。
【0054】
いくつかの実施形態では、データは、(1)履歴プロセスデータ、(2)現在のプロセスデータ、(3)1つ以上のメトリックの履歴測定データ、(4)1つ以上のメトリックの現在の測定データ、(5)動作データ、または(6)機器仕様データを備える複数のデータタイプおよびデータセットを備える。データは、未加工データ、例えば、FDCシステムからのトレースデータを含み得る。データは、異なる構造のデータ、例えば、構造化データ、非構造化データ、半構造化データ、またはそれらの組み合わせを含み得る。データは、異なるデータタイプのデータ、例えば、整数データ、浮動小数点データ、ストリングデータ、ブールデータ、日付データ、時間データ、オブジェクトデータ、バリアントデータ、またはそれらの組み合わせを含み得る。データは、計測機器からの応答データ、顧客データベースからのメタデータまたは動作データ、アラームデータ、機械ログ、システムログ、および同等物を含み得る。データは、システム発生ログまたは機械発生ログと関連付けられたデータを含み得る。いくつかの実施形態では、データは、バッチデータ、機器データ、プロセスデータ、メタデータ、および/または測定データを備える。
【0055】
データは、応答データ、測定データ、FDCデータ、応答限界データ、動作データ、および同等物と関連付けられたデータを含み得る。応答データは、測定識別(ID)、ウエハID、ウエハ起源、再作業ステータス、ウエハロットID、機器ID、チャンバID、モジュールID、応答、開始日または時間、終了日または時間、作成日または時間、更新日または時間、サンプル、および同等物を含み得る。測定データは、ロットコード、測定動作ID、エイリアス、加工ID、加工セレクタ、加工エリア、製品ID、説明、応答パラメータ、および同等物を含み得る。故障検出および分類データは、動作ID、ウエハID、プロセスステップID、プロセスステップ名、起源、レシピID、ロットID、機器ID、チャンバID、モジュールID、FDCの要約、開始日または時間、終了日または時間、測定ステータス、サンプル番号、再作業ステータス、動作開始日または時間、動作終了日または時間、作成日または時間、更新日または時間、および同等物を含み得る。応答限界データは、標的限界、制御限界(例えば、上限、下限)、仕様限界(例えば、上限、下限)、および同等物を含み得る。動作データは、アラームデータ、ロットコード、動作ID、エイリアス、加工ID、加工セレクタ、加工エリア、製品ID、説明、FDC名、ステップ、レシピID、および同等物を含み得る。
【0056】
データは、特徴またはモデルを発生させることと関連付けられたデータを含み得る。いくつかの実施形態では、データセット発生器は、1つ以上のカスタマイズされたデータセット内の1つ以上の特徴の選択を自動化するように構成されている。データは、データセット仕様、特徴説明、特徴仕様、モデル、モデル予測、モデルパフォーマンス、モジュールによる予測パフォーマンス、および同等物と関連付けられ得る。データセット仕様と関連付けられたデータは、測定ID、動作ID、データセット名、データセット説明、選択された応答名、プロセスステップ、選択されたレシピID、所有者、作成日または時間、ラングリングの構成、および同等物を含み得る。特徴説明と関連付けられたデータは、FDC名、スコア、ステップID、および同等物を含み得る。特徴仕様と関連付けられたデータは、データセット仕様ID、特徴、共線特徴、作成日または時間、更新日または時間、および同等物を含み得る。モデルと関連付けられたデータは、測定ID、データセット仕様ID、名称、加工ID、ロットコード、加工エリア、ハイパーパラメータ、選択された特徴、作成者、ブロブへのリンク、ステータス、作成日または時間、更新日または時間、および同等物を含み得る。モデル予測と関連付けられたデータは、モデルID、ウエハID、ロットコード、測定動作ID、ロットID、機器ID、チャンバID、モジュールID、予測、作成日または時間、動作終了日または時間、および同等物を含み得る。モデルパフォーマンスと関連付けられたデータは、展開日数、モデルID、ベースモデル終了日または時間、標的測定値、測定上限または下限(UML、LML)、制御上限または下限(UCL、LCL)、統計的シックスシグマ、二乗平均平方根誤差(RMSE)、R二乗(R)、トポロジカルデータ分析(TDA)、収集日数、データカウント、TDAデータカウント、TDA符号カウント、応答の要約、二乗応答の要約、誤差の要約、作成日または時間、および同等物を含み得る。モデルパフォーマンスと関連付けられたデータは、モジュールによる予測パフォーマンス、展開日数、モデルID、モジュールID、ベースモデル終了日または時間、標的測定値、測定上限または下限、統計的シックスシグマ、二乗平均平方根誤差(RMSE)、R二乗(R)、TDA、収集日数、データカウント、TDAデータカウント、TDA符号カウント、応答の要約、二乗応答の要約、誤差の要約、作成日または時間、および同等物を含み得る。
【0057】
データインターフェース310は、データベース内に保存する前にデータを修正または別様に変換するように構成されているデータパイプラインを含み得る。データを修正または変換することは、データを他のデータ構造、データタイプ、またはそれらの組み合わせに修正または変換することを含み得る。代替として、または加えて、データパイプラインは、製品層320に伝送する前にデータを他のデータ構造、データタイプ、またはそれらの組み合わせに修正または別様に変換するように構成され得る。
【0058】
図3Bにさらに図示されるように、データインターフェース310は、グラフィカルユーザインターフェース(GUI)(明確化のために図示せず)等のユーザインターフェースを含み得る。グラフィカルユーザインターフェースは、ユーザが、例えば、ファブ番号、エリア名、製品識別(ID)、プロセスID、動作ID、測定動作ID、および同等物と関連付けられた製造プロセスを選択することを可能にし得る。ユーザは、モデル開発のためのデータ範囲を規定し得、他のデータ処理動作、例えば、MLモデルの開発のためのデータラングリングを選択し得る。ある場合には、グラフィカルユーザインターフェースは、関連する特徴を選択すること、データセットを構築すること、レシピを識別し、組み合わせること、時間窓を選択すること、機器タイプを選択すること、チャンバタイプを選択すること、および同等物のために構成され得る。ワークフロー300は、特徴抽出、特徴選択、特徴エンジニアリング、モデル開発、またはそれらの組み合わせを実施し得る。ある場合には、ユーザは、部分的に、ユーザのドメイン知識に基づいて、モデル開発のために使用されるべき特徴を選択し得る。
【0059】
図3Cに図示されるように、ワークフロー300は、データインターフェース310からデータを受信する、またはデータをフェッチするように構成されている製品データ層320を含み得る。製品データ層320は、データを受信する、またはデータをフェッチするように構成されているAPIを介してデータを受信またはフェッチし得る。製品データ層320は、データインターフェース310から受信されたデータを検証または別様に変換し得る。ある場合には、製品データ層320は、MLモデルパフォーマンス、監視および可観測性機能、製品使用およびパフォーマンス測定値および統計、モデルおよび実験追跡、および同等物を分析するためのデータと関連付けられたメタデータを使用または処理するように構成され得る。ある場合には、製品データ層320は、メタデータ、動作データ、統計的方法、ML方法、またはそれらの任意の組み合わせに基づいて、データを自動的に検証し得る。ある場合には、製品データ層320は、ユーザ、例えば、プロセスエンジニア、ソリューションエンジニア、ドメイン専門家、エンドユーザ、および同等の人によって決定されるルール(例えば、ビジネスルール)に基づいて、データを自動的に検証し得る。データを修正または変換することは、データを他のデータ構造、データタイプ、またはそれらの組み合わせに修正または変換することを含み得る。製品データ層320は、データが検証または別様に変換された後、データを受信する、データをフェッチする、またはデータを記憶するように構成されているデータベース、例えば、データウェアハウスを含み得る。製品データ層320は、人工知能(AI)層340(以降「AI層340」)に伝送する前にデータを修正または別様に変換するように構成されているデータパイプラインを含み得る。データを修正または変換することは、データを他のデータ構造、データタイプ、またはそれらの組み合わせに修正または変換することを含み得る。製品データ層320は、データを伝送する、またはデータをプッシュするように構成されているAPIを介してAI層340にデータを伝送またはプッシュし得る。製品データ層320は、バッチモードまたはリアルタイムモードにおいてデータを伝送またはプッシュし得る。ある場合には、AI層340は、製品層320からデータをプルするように構成され得る。
【0060】
図3Eに図示されるように、ワークフロー300は、MLモデルまたは推論モデルを開発または展開するように構成されているAI層340を含み得る。本明細書に説明されるシステムは、プロセス変数、標的性質、異常の根本原因、またはそれらの組み合わせに関する予測または推奨を発生させ得る。予測または推奨は、製造環境における製造プロセスのプロセス制御または監視を最適化するために使用され得る。ある場合には、MLモデルを訓練、試験、または検証することと関連付けられた特徴重みが、ユーザのための洞察(「推論」)を提供し得る。洞察は、ユーザが、MLモデルが予測または推奨を発生させるために使用した特徴を決定することを可能にし得る。AI層340は、データを受信する、またはデータをフェッチするように構成されているAPIを介して製品データ層320からデータを受信またはフェッチし得る。AI層340は、予測または推奨を伝送するように構成されているAPIを介して製品エンジニアリング層350に予測または推奨を伝送し得る。
【0061】
図3Eにさらに図示されるように、AI層340は、MLモデルまたは推論モデルを開発する、またはMLモデルまたは推論モデルを別様に展開するように構成されているモジュールを備え得る。ある場合には、MLモデルは、推論モデルと互換的に使用される。ある場合には、推論モデルは、MLモデルから洞察、例えば、MLモデルを訓練するために使用される重要な特徴または重み付けについての洞察を導出する。モジュールは、データ品質のために構成されているモジュール341、モデル開発のために構成されているモジュール342、モデルを展開するために構成されているモジュール343、モデルのパフォーマンスを分析するために構成されているモジュール344、モデルの可観測性のために構成されているモジュール345、モデルの継続的統合または送達のために構成されているモジュール346、モデルをスケーリングするために構成されているモジュール347、または、ユーザがモデルとインターフェースをとるために構成されているモジュール348を含み得る。
【0062】
図3Eにさらに図示されるように、AI層340は、データ品質、例えば、データスクラビングのために構成されているモジュール341を含み得る。モジュール341は、データを検証する、データを変換する、データに対して統計的方法を実施する、またはそれらの組み合わせのために構成され得る。動作は、行圧縮、ワンホットエンコーディング、ビニング、正規化、標準化、データエンリッチメント、またはそれらの組み合わせと関連付けられた動作を含み得る。データは、モジュール342に伝送され得る。データは、モジュール342によって受信またはフェッチされ得る。
【0063】
図3Eにさらに図示されるように、AI層340は、モデル開発のために構成されているモジュール342を含み得る。データは、モジュール341から受信またはフェッチされ得る。動作は、特徴抽出、特徴選択、特徴エンジニアリング、モデル開発、またはそれらの組み合わせと関連付けられた動作を含み得る。統計的方法またはML方法は、モデル開発に含めるための特徴を決定し得る。統計的方法は、トレンド除去、線形回帰、ロジスティック回帰、k最近傍、k平均クラスタリング、サポートベクターマシン、人工ニューラルネットワーク、決定木、またはそれらの組み合わせと関連付けられ得る。
【0064】
例えば、統計的またはML方法は、例えば、FDCトレースデータを処理して、特徴を抽出し得る。ある場合には、統計的方法は、故障検出および分類(FDC)トレースデータの要約平均を含み得る。例えば、FDCトレースデータは、製造プロセスにおける機器と関連付けられた200個のセンサから受信され得る。トレースデータは、20分にわたって毎秒測定されたセンサ測定値の時系列データを含み得る。統計的方法は、データの統計的性質を決定するための方法を含み得る。例えば、統計的方法は、200次元特徴ベクトルを取得するために、トレースデータを平均化することを含み得る。
【0065】
例えば、統計的またはML方法は、例えば、FDCトレースデータを処理して、特徴を選択し得る。ある場合には、スライディングウィンドウ相関係数(SWCC)方法が、最も関連する特徴を選択するために使用され得る。スライディングウィンドウ相関係数(SWCC)方法と関連付けられた動作は、相関係数を計算し、Fisher Z変換を使用して相関係数を平均化することを含み得る。最も大きいスライディングウィンドウ相関係数(SWCC)値を有する特徴が、選択され得る。ある場合には、特徴間の多重共線性が、特徴選択のために使用され得る。
【0066】
例えば、統計的またはML方法は、例えば、FDCトレースデータを処理して、特徴をトレンド除去または正規化し得る。方法は、XおよびYのイノベーションを計算し得、Xは、FDCからの特徴を含み得、Yは、応答測定値を含み得る。XおよびYのイノベーションを発生させるために、トレンド除去方法は、過去のデータの重み付けされた平均値を減算し、それによって、過去のデータとの時間的差異を決定し得る。Yの時間的差異は、Xとの関係をより良好に説明し得る。深層学習または他の統計的方法(例えば、ランダムフォレストまたは部分最小二乗法)等の典型的な方法と比較して、トレンド除去は、より良好な予測または推奨を提供し得る。ある場合には、XおよびYは、トレンド除去後に正規化され得る。
【0067】
例えば、統計的またはML方法は、例えば、FDCトレースデータを処理して、オンライン学習を使用してモデルを発生させ得る。図5に図示されるように、オンライン学習方法は、フォローザリーディングヒストリー(FLH)と関連付けられた方法を含み得る。例えば、方法は、複数のN個のデータ点の各時点、例えば、N個のデータ点の(x,y)対と関連付けられた時点で新しいリグレッサf(x)を発生させることを含み得る。N個の線形リグレッサを有する線形リグレッサf(x)が、N個のデータ点から取得され得る。重みwが、w(x)+w(x)+w(x)としてアンサンブルリグレッサを発生させるように、各線形リグレッサf(x)に割り当てられ得る。(x,y)毎に、yは、N個のリグレッサから予測され得る。
【0068】
ある場合には、リグレッサは、リッジリグレッサ、線形リグレッサ、または非線形リグレッサを含み得る。ハイパーパラメータ最適化(HPO)を使用して、重みwが、少なくとも各リグレッサの回帰誤差に基づくルールを使用して更新され得る。ハイパーパラメータ最適化(HPO)は、ラプラシアン正則化を使用する層別化モデル化のための分散方法を含み得る。リグレッサ誤差を決定することは、例えば、二乗平均平方根誤差(RMSE)またはMLモデルのパフォーマンスを決定するための他の典型的な記述子またはメトリックの決定のための方法を含み得る。ある場合には、メトリックは、カスタムメトリック、例えば、ユーザによって定義されたメトリックを含み得る。リグレッサ誤差を決定することは、ソフトマックスのための方法、例えば、データを入力の指数関数に比例する確率分布確率に正規化することを含み得る。ある場合には、リグレッサは、パフォーマンス履歴、例えば、リグレッサの誤差と関連付けられたルールに基づいて、プルーニングされ得る。ある場合には、リグレッサは、リグレッサの寿命と関連付けられたルールに基づいて、プルーニングされ得る。リグレッサを更新またはプルーニングすることは、製造プロセスと関連付けられた機器またはユニットにおけるデータドリフトまたはデータシフトと関連付けられ得る。機械学習モデルは、モデルを展開するために構成されているモジュール343に伝送され得る。モジュール343は、MLモデルを受信またはフェッチし得る。
【0069】
図3Eにさらに図示されるように、AI層340は、モデルを展開するために構成されているモジュール343を含み得る。モジュール343は、モジュール342からモデルを受信またはフェッチし得る。モジュール343は、モデルを再訓練する、モデルを展開する、またはモデルをサービングするように構成され得る。モデルを再訓練することは、評価または最適化のためにモデルをスケジューリングすること、モデルを評価すること、モデルを最適化すること、および同等物を含み得る。モデルを展開することは、ステルスモードにおいてモデルを展開すること(例えば、シャドウモデル)、または段階的モードにおいてモデルを展開すること(例えば、カナリアモデル)を含み得る。ステルスモードは、データを新しく展開されたモデルに提供するが、予測または推奨をユーザまたは他のシステムに提供しないことを含み得る。より古いモデルが、予測または推奨を提供し続け得る一方、新しく展開されたモデルは、パフォーマンス、例えば、予測または推奨の正確度に関して分析され得る。段階的モードは、データを新しく展開されたモデルに提供し、予測または推奨を一部のユーザまたはいくつかの他のシステムに提供し、例えば、新しく展開されたモデルに関する早期の問題または誤差を検出することを含み得る。モデルサービングは、製造環境と関連付けられたユーザによる展開および使用のためにモデルをパッケージングすることを含み得る。モジュール343は、予測、推奨、パフォーマンスメトリック、および同等物を伝送するように構成されているAPIを介して製品エンジニアリング層350に予測、推奨、パフォーマンスメトリック、および同等物を伝送または公開し得る。
【0070】
図3Eにさらに図示されるように、AI層340は、モデルのパフォーマンスを分析するために構成されているモジュール344を含み得る。モジュール344は、統合試験、バックテスティング、感度分析、ストレス試験、および同等物を実施するように構成され得る。モデルパフォーマンスは、部分的に、所定の閾値を満たすモデルパフォーマンスを取得するために、モジュール341、342、343、またはそれらの組み合わせによるさらなる動作を決定するために使用され得る。所定の閾値は、予測、推奨、パフォーマンスメトリック、および同等物の正確度または信頼レベルと関連付けられ得る。いくつかの実施形態では、1つ以上のパフォーマンスメトリックは、少なくとも感度分析またはストレス試験から導出される。
【0071】
図3Eにさらに図示されるように、AI層340は、モデルの可観測性を決定するように構成されているモジュール345を含み得る。モジュール345は、モデルが開発から展開に移動する際、モデルを監視する、トラブルシューティングする、または解説するように構成され得る。動作は、モデルのパフォーマンスを分析すること、モデルにおけるドリフトまたはシフトを分析すること、モデルのデータ品質を分析すること、モデルの結果を解説すること、および同等物を含み得る。モジュール345からの洞察(「推論」)は、所定の閾値を満たすモデルパフォーマンスを取得するために、モジュール341、342、343、またはそれらの組み合わせによるさらなる動作を決定し得る。所定の閾値は、予測、推奨、パフォーマンスメトリック、および同等物の正確度または信頼レベルと関連付けられ得る。
【0072】
図3Eにさらに図示されるように、AI層340は、モデルの継続的統合または送達のために構成されているモジュール346を含み得る。モデルの継続的展開または統合のためのパイプラインが、イベントに応じて実行され得る。イベントは、要求に応じたもの(例えば、パイプラインのアドホック手動実行)、スケジュール通りのもの(例えば、新しく標識化されたデータが、日単位、週単位、または月単位等のスケジュールで利用可能である)、新しい訓練データの可用性に応じたもの、モデルパフォーマンスの劣化に応じたもの、データの分布の有意な変化に応じたもの、および同等物を含み得る。
【0073】
継続的統合は、パッケージを発生させること、コンテナ画像を発生させること、実行可能ファイルを発生させること、試験を発生させること、および同等物のための動作を含み得る。試験は、特徴エンジニアリング方法を試験すること、モデルにおいて実装される方法を試験すること、モデル訓練収束に関して試験すること、モデル訓練出力に関して試験すること(例えば、非数(NaN)である出力を発生させない)、モデルパイプラインが予期されるアーチファクトを生産することを試験すること、パイプライン成分の間の統合を試験すること、および同等物を含み得る。
【0074】
継続的送達は、予測または推奨を発生させるために標的環境にパイプライン実装を送達すること等の動作を含み得る。継続的送達は、モデルと製造プロセスと関連付けられた機器またはユニットとの適合性を立証すること、入力を予期される出力と比較することによって予測または推奨を試験すること、予測または推奨パフォーマンスを試験すること、予測または推奨を再訓練またはバッチするためにデータを検証すること、展開前にモデルが予測または推奨パフォーマンス標的を満たすことを立証すること、試験環境への展開を自動化すること、生産前環境への自動化展開、生産前環境への半自動化展開、生産前環境上でのパイプラインのいくつかの成功裏の実行後の生産環境への手動展開等の動作を含む。モデルの継続的統合または送達のためのモジュール346は、特徴ストア、データセットバージョニング、実験管理、モデル登録、および同等物を使用して、統合または送達を実施し得る。特徴ストアは、特徴に関する標準化された定義、特徴の記憶、または、モデルを訓練、試験、検証、サービング、送達、または展開するための特徴へのアクセスのための中心場所を含み得る。
【0075】
図3Eにさらに図示されるように、AI層340は、モデルをスケーリングするために構成されているモジュール347を含み得る。モジュール347は、1つより多くの機器、1つより多くのユニット、または1つより多くのプロセスから受信されたデータを用いてモデルを訓練、試験、または検証することによって、モデルをスケーリングするように構成され得る。例えば、データは、化学蒸着(CVD)プロセスと関連付けられ得る。化学蒸着(CVD)プロセスは、化学蒸着(CVD)プロセスを実施するように構成されている1つ以上のサブプロセス、1つ以上の機器、または1つ以上のチャンバを含み得る。サブプロセス、機器、またはチャンバから受信されたデータは、全てのサブプロセス、機器、またはチャンバを横断してプロセス制御または監視(例えば、予測または推奨すること)を最適化するためのモデルを発生させるために使用され得る。
【0076】
図3Eにさらに図示されるように、AI層340は、モデル開発、継続的統合、継続的送達、またはスケーリングの間にユーザがモデルとインターフェースをとるために構成されているモジュール348を含み得る。モジュール348は、継続的統合、継続的送達、またはスケーリングと関連付けられたログまたはメトリックを発生させるように構成され得る。モジュール348は、継続的統合、継続的送達、またはスケーリングの間にログまたはメトリックを監視するように構成され得る。モジュール348は、ログからユーザダッシュボードまたはアラートを発生させるように構成され得る。アラートは、継続的統合、継続的送達、またはスケーリングと関連付けられ得る。ダッシュボードは、ログまたはメトリックをユーザに表示または伝送する、ユーザがログまたはメトリックを読み出すことを可能にする、ユーザがログまたはメトリックを処理することを可能にする、ユーザがログまたはメトリックを操作することを可能にする、および同等物を行うように構成され得る。ある場合には、モジュール348は、モデル開発と関連付けられたMLログを発生させるように構成され得る。
【0077】
図3Fに図示されるように、ワークフロー300は、製造環境(例えば、旧来の製造システム110)における製造プロセスと関連付けられた機器、ユニット(例えば、顧客システム)、またはユーザに予測、推奨、パフォーマンスメトリック、および同等物を提供するように構成されている製品エンジニアリング層350を含み得る。製品エンジニアリング層350は、API、例えば、製品バックエンド、製品フロントエンド、またはデータを受信、記憶、伝送、またはフェッチするための任意の手段を介してAI層340から予測、推奨、パフォーマンスメトリック、ログ、および同等物を受信またはフェッチするように構成され得る。ある場合には、予測、推奨、パフォーマンスメトリック、ログ、および同等物は、製品バックエンド内に記憶され得、製品バックエンドを介して機器、ユニット(例えば、顧客システム)、またはユーザに伝送され得る。予測、推奨、パフォーマンスメトリック、および同等物の提供は、製造環境における製造プロセスのプロセス制御または監視を最適化するために、機器またはユニットとのフィードバックループにおいて構成され得る。
【0078】
図3Dに図示されるように、ワークフロー300は、製造環境におけるプロセス制御または監視を最適化することと関連付けられた予測または推奨を促進するように構成されているインフラストラクチャモジュールまたは層330を含み得る。モジュール330は、リレーショナルデータベース、マルチクラウドデータベース、ランタイムデータベース、ランタイムコンテナ、展開、スケーリングまたは管理サービス、バッチデータ処理サービス、ストリーミングデータ処理サービスまたは機械学習(ML)サービス、MLワークフローサービス、分散スケーリングおよびモデル化サービス、分散ログ記憶データベースサービス、および同等物を備え得る。モジュール330は、モジュール330のサービスまたは方法を実施するように構成されているAPIと関連付けられ得る。モジュール330は、図4のモジュール430と類似する方法を使用するように構成され得る。リレーショナルデータベースの非限定的実施例は、PostgreSQLを含む。マルチクラウドデータベースの非限定的実施例は、MongoDBを含む。ランタイムコンテナの非限定的実施例は、Dockerを含む。展開、スケーリングまたは管理サービスの非限定的実施例は、Kubernetesを含む。バッチデータ処理サービス、ストリーミングデータ処理サービスまたはMLサービスの非限定的実施例は、Apache Sparkを含む。MLワークフローサービスの非限定的実施例は、Apache Airflowを含む。分散スケーリングおよびモデル化サービスの非限定的実施例は、Rayを含む。分散ログ記憶データベースサービスの非限定的実施例は、Elastic Search Kibanaを含む。ダッシュボードの非限定的実施例は、GrafanaまたはKibanaを含む。ダッシュボードアラートの非限定的実施例は、GrafanaまたはPagerDutyを含む。
【0079】
(仮想計測(VM)のためのAIワークフロー)
図4に図示されるものは、製造環境における製造プロセスのプロセス制御または監視を最適化するための本開示のシステム120、アーキテクチャ500、ワークフロー600、またはワークフロー300を実装するためのAIワークフロー400(以降「ワークフロー400」)である。ワークフロー400は、本明細書に説明される方法またはワークフローを実施するように構成されているモジュールを含み得る。ワークフロー400は、プロセス制御または監視のための予測または推奨を発生させるモデルを開発するためのデータ(例えば、顧客データ)を保存または伝送するように構成されているクライアントアプリケーションモジュールまたは層410を含み得る。ワークフロー400は、ユーザがワークフロー400とインターフェースをとるために構成されているフロントエンドユーザ管理モジュールまたは層420を含み得る。ワークフロー400は、プロセス制御または監視を最適化するためにユーザまたはモデルを管理するように構成されているインフラストラクチャモジュールまたは層430を含み得る。ワークフロー400は、プロセス制御または監視を最適化するための予測または推奨を発生させる、または公開するように構成されているデータおよび機械学習モジュールまたは層440を含み得る。
【0080】
図4に図示されるように、ワークフロー400は、製造環境におけるプロセス制御または監視を最適化するための予測または推奨を発生させるモデルを開発するためのデータを保存または伝送するように構成されているクライアントアプリケーションモジュールまたは層410を含み得る。データは、処理機器、計測器具、検査機器、自動的材料取扱システム、および同等物と関連付けられたデータを含み得る。データは、データレイク、データマート、データハブ、および同等物等のデータベース内に保存され得る。ある場合には、旧来のシステムが、モデルを開発するためのデータを伝送し得る。旧来のシステムは、MESシステム、APCシステム、SPCシステム、RMSシステム、および同等物を含み得る。データは、データを伝送または受信するように構成されているAPIを介してデータおよび機械学習モジュールまたは層440に伝送され得る。ある場合には、データは、データおよび機械学習モジュールまたは層440内のデータ収集器モジュール441によって受信またはフェッチされ得る。
【0081】
図4に図示されるように、ワークフロー400は、製造環境におけるプロセス制御または監視を最適化するための予測または推奨を発生させる、または公開するように構成されているデータおよび機械モジュールまたは層440を含み得る。モジュール440は、予測または推奨を発生させる、または公開するためのモジュールを含み得る。モジュールは、データ収集器モジュール441、モデル管理モジュール442、ハイパーパラメータ最適化モジュール443、モデルパフォーマンス評価モジュール444、予測または推奨モジュール445、公開モジュール446、データモジュール447、FDCトレースモジュール448、またはタスクモジュール449を含み得る。モジュール440は、図1BのVMエンジン520およびAI層530と類似する様式において構成され得る。
【0082】
図4にさらに図示されるように、データおよび機械学習モジュールまたは層440は、データ収集器モジュール441を含み得る。モジュール441は、データ収集器スケジューラと、データ収集器ワーカーとを備え得る。データ収集器スケジューラは、クライアントアプリケーションモジュールまたは層410からデータを受信またはフェッチするように構成され得る。データは、データを受信またはフェッチするように構成されているAPIを介して受信またはフェッチされ得る。ある場合には、データは、バッチモードにおいて受信される。ある場合には、データは、実質的にリアルタイムで受信される。データ収集器ワーカーは、図3Aの人工知能(AI)層340のモジュール341または図1Bのアプリケーション層510と類似する様式においてデータを修正または別様に変換するように構成され得る。
【0083】
いくつかの実施形態では、データ収集器は、少なくとも2つの異なるソースからデータを同期的に受信するように構成されている。いくつかの実施形態では、データ収集器は、少なくとも2つの異なるソースからデータを非同期的に受信するように構成されている。いくつかの実施形態では、データ収集器は、少なくとも部分的に、所定のスケジュールに基づいて、少なくとも1つのソースからデータを受信するように構成されている。いくつかの実施形態では、データ収集器は、少なくとも部分的に、製造環境内で生じる1つ以上のイベントの検出に基づいて、少なくとも1つのソースからデータを受信するように構成されている。いくつかの実施形態では、1つ以上のイベントは、製造環境内の少なくとも1つのプロセスまたはプロセス機器におけるドリフト、エクスカーション、シフト、逸脱、または異常と関連付けられている。
【0084】
図4にさらに図示されるように、データおよび機械学習モジュールまたは層440は、モデル管理モジュール442を含み得る。モジュール442は、ベースMLモデルを開発する、カスタムMLモデルを開発する、またはMLモデルを更新するように構成されているモジュールを備え得る。モジュール442は、図3Aの人工知能(AI)層340のモジュール342と類似する方法を使用するように構成され得る。いくつかの実施形態では、システムは、1つ以上の機械学習モデルに関する1つ以上のパフォーマンスメトリックを発生させるように構成されているモデルパフォーマンス評価モジュールをさらに備える。モジュール442は、図1BのVMエンジン520およびAI層530と類似する様式において構成され得る。
【0085】
図4にさらに図示されるように、データおよび機械学習モジュールまたは層440は、ハイパーパラメータ最適化(HPO)モジュール443を含み得る。いくつかの実施形態では、モデル管理モジュールは、ハイパーパラメータ最適化を使用して1つ以上の機械学習モデルを自動的に更新するように構成されている。モジュール443は、ハイパーパラメータ最適化器スケジューラまたはハイパーパラメータ最適化器ワーカーを備え得る。ハイパーパラメータ最適化器スケジューラは、モデルハイパーパラメータの最適化をスケジューリングするように構成され得る。いくつかの実施形態では、ハイパーパラメータ最適化は、所定のスケジュールで実施される。ハイパーパラメータ最適化器ワーカーは、モデルハイパーパラメータを最適化するように構成され得る。いくつかの実施形態では、ハイパーパラメータ最適化は、少なくとも部分的に、製造環境内で生じる1つ以上のイベントの検出に基づいて実施される。最適化は、モデルが予測または推奨を発生させるための閾値レベルまたはパフォーマンス基準を満たすように訓練、試験、または検証されるときに生じ得る。例えば、パフォーマンス基準は、本明細書の別の場所に説明される二乗平均平方根誤差(RMSE)またはソフトマックスと関連付けられ得る。モジュール443は、図3Aの人工知能(AI)層340の341または342または図1BのVMエンジン520およびAI層530と類似するモジュール、方法、またはワークフローを使用するように構成され得る。
【0086】
図4にさらに図示されるように、データおよび機械学習モジュールまたは層440は、モデルパフォーマンス評価モジュール444を含み得る。モジュール444は、日単位トレンドスケジューラまたは日単位トレンド分析器を備え得る。日単位トレンドスケジューラは、モデルのパフォーマンスと関連付けられたトレンドの分析をスケジューリングするように構成され得る。トレンドは、時間間隔にわたって、またはイベントに応じてスケジューリングされ得る。例えば、時間間隔またはイベントは、要求に応じたもの(例えば、手動スケジュール)、スケジュール通りのもの(例えば、時間単位、日単位、週単位、または月単位等のスケジュール通りのもの)、新しい訓練データの可用性に応じたもの、モデルパフォーマンスの劣化に応じたもの、データの分布の有意な変化に応じたもの、および同等物を含み得る。日単位トレンド分析器は、モデルのパフォーマンスと関連付けられたトレンドを分析するように構成され得る。モジュール444は、図3Aの人工知能(AI)層340の344または346または図1BのAI層530と類似するモジュール、方法、またはワークフローを使用するように構成され得る。
【0087】
図4にさらに図示されるように、データおよび機械学習モジュールまたは層440は、予測または推奨モジュール445を含み得る。モジュール445は、図3Aの人工知能(AI)層340のモジュール343と類似する方法を使用するように構成され得る。いくつかの実施形態では、1つ以上の予測は、製造環境における1つ以上のプロセスおよび/または機器への特性評価、監視、制御、および/または修正を実質的にリアルタイムで可能にするために、または最適化するために使用可能である。モジュール445は、図1BのAI層530と類似するモジュール、方法、またはワークフローを使用するように構成され得る。
【0088】
図4にさらに図示されるように、データおよび機械学習モジュールまたは層440は、公開モジュール446を含み得る。モジュール446は、図3Aの人工知能(AI)層340の343または図1Bのパフォーマンス管理550と類似するモジュール、方法、またはワークフローを使用するように構成され得る。いくつかの実施形態では、システムは、製造環境と関連付けられたプロセス制御ワークフローへの統合のために1つ以上の予測を公開するように構成されている公開モジュールをさらに備える。
【0089】
図4にさらに図示されるように、データおよび機械学習モジュールまたは層440は、データモジュール447を含み得る。モジュール447は、応答データを得る、または標的データを得るように構成されている動作を備え得る。応答データまたは標的データは、モジュール410のデータハブから受信またはフェッチされ得る。データは、データを受信する、またはデータをフェッチするように構成されているAPIを介してデータハブから受信またはフェッチされ得る。ある場合には、データは、データを伝送するために構成されている具体的にプロビジョニングされたデータストアを介してデータハブから直接受信またはフェッチされ得る。ある場合には、データは、処理機器、処理センサ、または計測機器から直接受信またはフェッチされ得る。ある場合には、データは、SPC機器、APC機器、またはFDC機器から直接受信またはフェッチされ得る。モジュール447は、図3Aの310または320または図1Bのアプリケーション層510と類似するモジュール、方法、またはワークフローを使用するように構成され得る。
【0090】
図4にさらに図示されるように、データおよび機械学習モジュールまたは層440は、FDCトレースモジュール448を含み得る。モジュール448は、FDCトレースデータを得るように構成されている動作を備え得る。故障検出および分類トレースデータは、モジュール410の旧来のシステムから受信またはフェッチされ得る。故障検出および分類トレースデータは、モジュール447から受信またはフェッチされ得る。モジュール448は、予測または推奨を発生させるためにデータをモジュール445に伝送し得る。データは、データを伝送する、データを受信する、またはデータをフェッチするように構成されているAPIを介して伝送、受信、またはフェッチされ得る。モジュール448は、図3Aの310または320または図1Bのアプリケーション層510と類似するモジュール、方法、またはワークフローを使用するように構成され得る。
【0091】
図4にさらに図示されるように、データおよび機械学習モジュールまたは層440は、タスクモジュール449を含み得る。モジュール449は、モジュール430によって実施されるタスクをスケジューリングする、またはタスクを監視するように構成されている動作を備え得る。モジュール449は、図3Aの330または図1BのVMエンジン520およびAI層530と類似するモジュール、方法、ワークフローを使用するように構成され得る。
【0092】
図4にさらに図示されるように、ワークフロー400は、製造環境におけるプロセス制御または監視を最適化するための予測または推奨を発生させるモデルを開発するために、ユーザがワークフロー400、例えば、ワークフロー400のコアサービスとインターフェースをとるために構成されているフロントエンド管理モジュール420を含み得る。コアサービスは、VMと関連付けられたサービスを含み得る。ユーザは、経営幹部、顧客、プロセスエンジニア、技師、供給元、および製造環境における製造プロセスと関連付けられた同等の人を含み得る。モジュール420は、フロントエンドアプリケーションサービス、バックエンドアプリケーションサービス、ユーザ管理サービス、アラートサービス、ログ監視サービス、またはユーザ管理データベースサービスを備え得る。本明細書に説明されるサービスは、サービスを実施するように構成されているAPIを使用して構成され得る。フロントエンド管理モジュール420は、図3Aの350または図1Bのアプリケーション層510またはパフォーマンス管理550と類似するモジュール、方法、またはワークフローを使用するように構成され得る。
【0093】
モジュール420のフロントエンドアプリケーションサービスは、ユーザがワークフロー400と相互作用することを可能にするように構成されているユーザアプリケーションを含み得る。例えば、ユーザは、付加的プロセスを接続すること、付加的機器またはユニットを接続すること、プロセス、機器、またはユニットからデータを収集すること、データからデータセットを発生させること、ベースMLモデルを発生させること、カスタムMLモデルを発生させること、MLモデルのパフォーマンスを閲覧すること、および同等物を行い得る。モジュール420は、サービスを実施するように構成されているAPIを使用して構成され得る。フロントエンドアプリケーションサービスを実施するように構成され得るAPIの非限定的実施例は、Reactを含む。フロントエンドアプリケーションサービスは、図3Aの350または図1Bのアプリケーション層510またはパフォーマンス管理550と類似するモジュール、方法、またはワークフローを使用するように構成され得る。
【0094】
モジュール420のバックエンドアプリケーションサービスは、ワークフロー400の(例えば、ゲートウェイ)コアサービスにアクセスするように構成され得る。バックエンドアプリケーションサービスは、サービスを実施するように構成されているAPIを使用して構成され得る。バックエンドアプリケーションサービスは、図3Aの350または図1Bのアプリケーション層510またはパフォーマンス管理550と類似するモジュール、方法、ワークフローを使用するように構成され得る。
【0095】
モジュール420のユーザ管理サービスは、ユーザがバックエンドアプリケーションサービスを介してコアサービスにアクセスすることを可能にするように構成され得る。ユーザ管理サービスは、サービスを実施するように構成されているAPIを使用して構成され得る。ユーザ管理サービスは、図3Aの350または図1Bのアプリケーション層510またはパフォーマンス管理550と類似するモジュール、方法、またはワークフローを使用するように構成され得る。
【0096】
モジュール420のアラートサービスは、ワークフロー400と関連付けられたアラートに関するユーザアラートを提供するように構成され得る。アラートサービスは、サービスを実施するように構成されているAPIを使用して構成され得る。アラートサービスを実施するように構成され得るAPIの非限定的実施例は、Elastic Kibanaを含む。アラートサービスは、図3Aのモジュール350と類似するモジュール、方法、またはワークフローを使用するように構成され得る。
【0097】
モジュール420のログ監視サービスは、ワークフロー400と関連付けられたログのユーザ可視化のために構成され得る。ログは、ダッシュボードまたはグラフィカルユーザインターフェース(GUI)を介してユーザに提供され得る。ログは、ワークフロー400と関連付けられた統計を備え得る。統計は、モデルのパフォーマンスに関連する統計を含み得る。ログ監視サービスは、サービスを実施するように構成されているAPIを使用して構成され得る。ログ監視サービスは、図3Aの350または図1Bのパフォーマンス管理550と類似するモジュール、方法、またはワークフローを使用するように構成され得る。
【0098】
モジュール420のユーザ管理データベースサービスは、データベース内のワークフロー400とのユーザ相互作用を受信および記憶するように構成され得る。ユーザ相互作用は、ワークフロー400との後続ユーザ相互作用のためにユーザによって呼び出され得、または受信され得る。ユーザ管理データベースサービスは、サービスを実施するように構成されているAPIを使用して構成され得る。ユーザ管理データベースサービスを実施するように構成され得るデータベースの非限定的実施例は、Oracleデータベースを含む。ユーザ管理データベースサービスは、図3Aの350または図1Bのデータおよびインフラストラクチャ層540と類似するモジュール、方法、またはワークフローを使用するように構成され得る。
【0099】
図4に図示されるように、ワークフロー400は、製造環境におけるプロセス制御または監視を最適化するための予測または推奨を発生させるモデルを開発するためにユーザまたはモデルを管理するように構成されているインフラストラクチャモジュール430を含み得る。モジュール430は、分散ログ記憶データベース、マルチクラウドデータベース、オブジェクト記憶装置、展開サービス、および同等物のためのモジュールを備え得る。分散ログ記憶データベースは、ログを記憶する、またはログを検索するように構成され得る。いくつかの実施形態では、複数のデータストアは、1つ以上の機械学習モデルと関連付けられた1つ以上のモデルデータファイルを記憶するように構成されているオブジェクト記憶装置を備える。分散ログ記憶データベースの非限定的実施例は、Elastic Kibanaを含む。マルチクラウドデータベースは、VMと関連付けられたデータを記憶するように構成され得る。マルチクラウドデータベースの非限定的実施例は、MongoDBを含む。オブジェクト記憶装置は、モデルと関連付けられたファイルを記憶するように構成され得る。展開サービスは、モデルを展開することと関連付けられたタスクをスケジューリングする、またはタスクを監視するように構成され得る。ワーカーアプリサービスに関するジョブキューを管理する。展開サービスの非限定的実施例は、RedisAIを含む。インフラストラクチャモジュール430は、図3Aの330または図1Bのデータおよびインフラストラクチャ層540と類似するモジュール、方法、またはワークフローを使用するように構成され得る。
【0100】
いくつかの実施形態では、1つ以上の予測は、仮想計測(VM)に基づいて発生させられる。製造環境は、プロセスを実行するように構成されている機器と関連付けられ得る。プロセスは、フィードバック制御ループにおいて構成されている入力および出力と関連付けられ得る。フィードバック制御ループは、出力を改良するために、異なる入力を発生させ得る。入力および出力は、プロセス変数または標的性質と関連付けられたデータを含み得る。プロセス変数または標的性質は、センサまたは器具を使用して検出または測定され得る。例えば、半導体製造プロセス、例えば、化学蒸着と関連付けられたプロセス変数は、温度、圧力、電力、電流、ガス量、および同等物を含み得る。半導体製造プロセス、例えば、化学蒸着と関連付けられた標的変数は、ウエハフィルム厚さ、ウエハ屈折率、臨界寸法、および同等物を含み得る。入力および出力は、最新(例えば、現在の、またはリアルタイムの)データまたは履歴データと関連付けられたデータを含み得る。最新データまたは履歴データは、センサデータ、センサ仕様データ、プロセスデータ、プロセス仕様データ、測定データ、動作データ、機器データ、機器仕様データ、またはFDCデータと関連付けられ得る。
【0101】
本明細書に説明されるシステム(例えば、VMシステムまたはIMシステム)は、製造環境における製造プロセスのプロセス制御または監視を最適化するための予測または推奨を発生させるために、製造環境と関連付けられた入力および出力を使用し得る。プロセスは、SPCプロセスまたはAPCプロセスと関連付けられ得る。高度プロセス制御は、監視プロセス、制御プロセス、改良プロセス、またはトラブルシューティングプロセスのための方法を備え得る。
【0102】
(仮想計測のためのデータおよびモデルを集約するための方法)
本開示はまた、大量製造におけるプロセス制御および監視を最適化するために収集されたセンサデータを利用し得る改良されたシステムおよび方法を提供する。収集されたセンサデータは、厚さ、質量、屈折率、および臨界寸法等のプロセス後測定値から提供され得る。上記に議論されたように、仮想計測(VM)は、物理的計測を伴わずにウエハのプロセス後測定値を予測する技法であり得る。ある場合には、VMは、半導体製造における収率を向上させるために、高度プロセス制御(APC)または統計的プロセス制御(SPC)のために利用され得る100%ウエハ測定を提供し得る。物理的計測は、それが処理能力を限定する計測機器を動作させるオーバーヘッドコストを招き得るため、そのような結果を達成し得ない。VM実装の利点にもかかわらず、VMは、例えば、半導体製造データにおける極端なデータドリフト、データシフト、およびデータ希少性等の半導体製造データの固有の特性によって引き起こされる正確度およびスケーラビリティの欠如に起因して、実際の製造プロセスにおいて広く展開されない場合がある。
【0103】
半導体製造では、多くの異なる因子が、データドリフトおよびデータシフトを引き起こし得る。例えば、温度、圧力、およびプロセス持続時間のようなプロセスレシピ変数を含む機器パラメータの変化、ならびに周期的保守が、データドリフトおよびシフトにつながり得る。データシフトが、典型的には、予防的保守またはレシピ調節に起因して生じる一方、データドリフトは、継続的動作の間の機器ステータスの漸進的な変化からもたらされる。機器のステータスは、予防的保守イベント後に極端に変化し得、これは、データシフトにつながり得る。勾配ブースティングおよびニューラルネットワークのような従来的な回帰方法は、多くの場合、半導体製造のためのVM用途においてパフォーマンス不足となる。これらの方法は、典型的には、プロセスパラメータと標的測定値との間の関係が経時的に一定のままである静的環境を想定する。しかしながら、半導体製造環境は、モデル訓練と展開との間のデータ特性の頻繁な変化を伴って、動的である。データドリフトおよびデータシフトの技術的課題に対処するために、入力と出力との間の関係の変化を捕捉し得る適応型オンラインモデルが、以前に開示された。ある場合には、入力は、機器センサデータと、プロセスレシピパラメータとを含み得、出力は、厚さおよび質量等のプロセス後測定値を含み得る。例えば、Zabrocki et al.「Adaptive Online Time-Series Prediction for Virtual Metrology in Semiconductor Manufacturing」2023 34th Annual SEMI Advanced Semiconductor Manufacturing Conference (ASMC). IEEE, 2023(参照することによってその全体として本明細書に援用される)を参照されたい。この方法を用いることで、適応型オンラインモデルは、現実の大量製造施設において適用可能であるVM予測正確度のレベルを達成した。製造施設、例えば、SK Hynixは、化学蒸着(CVD)、物理蒸着(PVD)、およびETCHプロセスの主要な成果変数の1,005個のデータストリームに関して適応型オンラインモデルを展開し、プロセス制御および監視において統計的に有意な改良を達成した。具体的には、APCに関して結果として生じる仮想測定値を使用することは、平均して少なくとも約30%のプロセス変動性の低減をもたらし、それによって、収率を改良した。そのような技術的改良は、半導体製造に特有の課題に対処することが、非常に正確なVMモデルのために重要であり得ることを実証する。この実証は、実施例の節において下記にさらに説明される。
【0104】
本開示はさらに、半導体製造における別の技術的課題である、希少または疎データを用いてVM予測を行うことに焦点を当てることによって、適応型オンラインモデルの予測パフォーマンスを改良する。データ希少性またはスパース性は、多くの場合、低い測定サンプリング率および種々の製造プロセスおよびレシピを横断する異質データセットからもたらされる、VMにおける有意な技術的課題を提示する。この文脈では、異質性は、1つの環境に関して(例えば、特定のレシピを伴う具体的機器から)確立された入力変数と出力測定値との間の真の関係が、他の場合に関して成り立たない場合がある状況を指す。ある場合には、チップ製造業者は、例えば、物理的計測測定のオーバーヘッドおよびプロセス、レシピ、または機器を横断するデータセットの大いに異なる特性に起因して、サンプリング率を低く保ち得る。機器タイプおよびレシピが同じである、または類似するときであっても、個々のチャンバのステータスは、有意に変動し得る。チャンバステータスに影響を及ぼす因子は、稼働時間、保守履歴、コンポーネントの摩耗、プロセス残渣の蓄積、および温度および湿度増減等の環境条件を含む。したがって、単純なデータ集約は、そのような異質性(または多様性)のため、VMにおいて効果的ではない場合であり、これは、希少または疎データの技術的問題を悪化させ得る。
【0105】
データ希少性またはスパース性に対処するために、半導体製造機器の階層構造のために利用され得る集約的適応型オンラインモデル(AggAOM)と呼ばれる改良されたVMモデルまたはアルゴリズムが、本明細書に提供される。同一の階層内の機器ツールは、多くの場合、保守スケジュールおよび部品交換等の共有される基礎的物理学および動作イベントに起因して、高レベルの共通性を呈する。共通性は、各ツールの相関行列を発生させ、行列の間の類似性を比較することによって算出され得る。これらの共通性は、制御システムアーキテクチャ、センサタイプ、プロセスフロー、および品質制御手順を含み得、類似する機器を横断する知識移転および統一されたモデル化アプローチに関する潜在性に寄与し得る。そのような階層構造は、AggAOMによって利用または考慮されると、機器ツールの共通性および特異性の両方を捕捉し得る。そのようなモデルは、データ希少性またはスパース性の技術的課題およびデータドリフトまたはデータシフトからもたらされる不安定性の問題に成功裏に対処し得る。これらの技術的問題を解決することによって、AggAOMは、実世界における大量製造データセットに対するVMの予測パフォーマンスを有意に改良し得る。
【0106】
(適応型オンラインモデル)
以前に、Zabrockiは、新しい測定値が観察される際にモデルを更新することによって、半導体データにおける有意なデータドリフトおよびデータシフトに迅速に適合するように調整され得る適応型オンラインモデル(AOM)を導入した。本明細書のZabrocki et alを参照されたい。AOMの本質は、図7に図示され得る。ある場合には、AOMは、AOMが新しい情報をシームレスに吸収するため、データが継続的にシフトおよび発展し得る環境のために設計された動的システムと見なされ得る。例えば、AOMは、データの時間的変遷を組み込むことに焦点を当てるように構成され得、これは、AOMをVMにおけるリアルタイムデータ分析のための極めて重要なツールとして位置付け得る。AOMは、比較的に高レベルの予測正確度を達成し得る。しかしながら、AOMを単独で使用することは、それがチャンバによって独立して訓練され得るため、製造プロセスの間の基礎的物理学および動作イベントに関するチャンバ関連の高レベルの共通性を不注意にも見落とし得る。
【0107】
簡潔に言うと、AOMは、AOMへの入力としてセンサデータおよび履歴測定値を受信することを含み得る。AOMは、そのタイムスタンプに基づいてデータを正規化する時間認識正規化器を含み得る。次いで、適応型オンライン学習器が、正規化されたデータに基づいて、測定値を学習および予測し得る。予測された測定値は、サンプリングされたデータを補足するために使用され得るVMの結果であり得る。
【0108】
(集約的モデル)
本明細書のシステムおよび方法は、AOMおよび他のVMアプローチの両方を改良し得る。例えば、AOMと比較して、他のVMモデルは、図8Aに示されるような異なる機器、チャンバ、およびステーションを横断して予測する、統一された単一のモデルを開発することに焦点を当て得る。例えば、Chan et al.「Just-in-time modeling with variable shrinkage based on Gaussian processes for semiconductor manufacturing」IEEE Transactions on Semiconductor Manufacturing 31.3 (2018): 335-342、Chen et al.「Virtual metrology of semiconductor PVD process based on combination of tree-based ensemble model」Isa Transactions 103 (2020): 192-202、Lynn et al.「Global and local virtual metrology models for a plasma etch process」IEEE Transactions on Semiconductor Manufacturing 25.1 (2011): 94-103(これらのそれぞれは、参照することによってその全体として本明細書に援用される)を参照されたい。統一された単一のモデルと比較して、AOMは、図8Bに示されるように、機器(EQ1、EQ2、EQ3、および以下同様)およびチャンバ(ChA、ChB、ChC、および以下同様)に関する各ステーション(S1、S2、S3、および以下同様)の異なる予測的挙動を捕捉するために、個々のモデル(M1、M2、M3、および以下同様)を採用し得る。結果として、ステーション関連モデルは、別個のチャンバおよびステーションにおいて現れ得るデータドリフトおよびデータシフトを伴っても、より良好な予測を発生させ得る。
【0109】
AOMおよび他のVMアプローチと比較して、本明細書のAggAOMは、ブースティングアルゴリズム内に階層構造を一意に組み込み得、それによって、学習器またはリグレッサが、それらの先行処理の誤差を訂正するように順次訓練され、最終的に、強力な学習器/リグレッサを作成する。ブースティングアルゴリズムは、例えば、XGBoost、LightGBM、CatBoost、および同等物を含み得る。例えば、重要となるステップが複数台の機器(例えば、機器1および2)を伴い得、それぞれがいくつかのチャンバ(例えば、チャンバAおよびB)を含有し、これが、ひいては、2つのステーション(例えば、ステーションS1およびS2)を包含する、典型的な半導体製造プロセスを考慮しよう。図10は、3つの機器によって処理されたウエハの標準化された厚さを示す実施例を図示し、これによって、x軸は、プロセス時間である。これらの3つの時系列データは、異なる挙動を呈するが、それらは、判別可能な増減のパターンを共有する。本明細書に認識されるように、図9に図示されるように、プロセス関連またはステーション関連方法において独立したモデルを構築するのではなく、集約的モデル、例えば、AggAOMが、機器のマルチレベル階層を横断する共有パターンを捕捉するために開発され得る。このアプローチは、機器、チャンバ、およびステーションからの集合的洞察を施用することを可能にし得る。その結果、AggAOMは、チャンバレベルにおける重要なパターンを捕捉し得、同一のチャンバ内の着目するステーションに関する予測能力を向上させ得る。このアプローチは、予測正確度における有意な改良をもたらすことが予期される。対照的に、ステーション関連の個々のモデルは、この階層的情報を達成し得ない。
【0110】
(集約的適応型オンラインモデル(AggAOM))
本明細書のAggAOMは、いくつかの弱いモデル(または学習器)を含み得るアンサンブルモデルである。図11は、AggAOMの1つの潜在的なインスタンス化の高レベルアーキテクチャまたはフローを図示する。機器における固有の階層構造を捕捉するために、AggAOMは、ドメイン知識に基づく3つのレベル、すなわち、「機器レベル」、「チャンバレベル」、「ステーションレベル」を含み得る。最高レベルである「機器レベル」は、モデルを各機器に割り当て、本機器に属する種々のチャンバまたはステーションを横断して起こる共通性を捕捉する。機器レベルからの出力は、その残差、例えば、予測と実際の測定値との間の不一致または差異を評価するために使用され得る。これらの残差は、より高レベルの共通性の除去を前提として、それらが後続レベルにおける着目する粒度を提供し得るため、訓練信号としての役割を果たし得る。第2のレベルは、「チャンバレベル」であり、これは、個々のチャンバに焦点を当て得る、より粒度の細かいレベルのモデル化を発生させ得る。チャンバレベルの残差は、後続レベルにおいてモデルを訓練するために利用され得る。最終レベルは、「ステーションレベル」であり、これは、チャンバ内の個々のステーションに焦点を当てることによって、モデル化の最も詳細な層を表し得る。最終予測は、全てのレベルからの予測を処理(例えば、加算)し、アンサンブルモデルを発生させることによって行われる。
【0111】
半導体製造プロセスでは、各ウエハは、階層構造、すなわち、機器(例えば、EQ1)内のチャンバ(例えば、ChA_EQ1)内のステーション(例えば、S1_ChA_EQ1)を通して処理される。対応するFDCセンサ値は、各レベルにおいてモデルを反復的に精緻化するために使用される。最初に、それらは、EQ1に関する大域的モデルを更新する。次いで、この大域的モデルからの残差は、ChA_EQ1に関するチャンバモデルを更新する。最後に、チャンバモデルからの残差は、S1_ChA_EQ1に関するステーションモデルを更新する。全てのウエハは、機器、チャンバ、およびステーションモデルを更新するために、同一の方法において使用され得る。この階層的アプローチは、全ての大域的および局所的モデルが機器の構造に基づいて精緻化されることを確実にする。いくつかの事例では、AggAOMは、チャンバおよびステーションレベルのみが利用可能であり得る場合に適用され得る。
【0112】
高レベルアーキテクチャまたはフローは、大域的および局所的データパターンの両方を活用することによって、および、反復的精緻化によって、予測正確度を改良することに対する系統的アプローチを提供し得る。ある場合には、残差は、訓練データのグラウンドトゥルース(または標的変数)として使用され得、これは、前のレベルまたは段階の訓練されたモデルを使用して、各レベルまたは段階において決定され得る。
【0113】
本明細書の方法を使用して予測または出力するべきデータは、少なくとも希少性に基づいて決定され得る。希少性は、訓練サンプルの数として定量化され得る。例えば、訓練サンプルの数が、閾値(例えば、着目するエリアあたりのサンプルの数、プロセス時間あたりのサンプルの数等)を下回る場合、訓練サンプルの数は、2つの因子によって決定され得、一方は、サンプリング率であり、他方は、データ収集持続時間である。アブレーション研究が、データセットが希少であるかどうかを決定および/または確認するために、希少対非希少データセットを比較するために実施され得る。例えば、実験は、1つのデータセットを選択し、次いで、標的値をランダムに低下させ、訓練サンプルの数を低減させることを含み得る。
【0114】
(プロセス制御または監視を最適化するための機械学習方法)
アルゴリズムとして実装される多くの機械学習(ML)方法が、本明細書に説明される方法を実施するためのアプローチとして好適である。そのような方法は、限定ではないが、教師あり学習アプローチ、教師なし学習アプローチ、半教師ありアプローチ、またはそれらの任意の組み合わせを含む。
【0115】
機械学習アルゴリズムは、限定ではないが、ニューラルネットワーク(例えば、人工ニューラルネットワーク(ANN)、多層パーセプトロン(MLP)、長短期記憶(LSTM))、サポートベクターマシン、k最近傍、ガウス混合モデル、ガウス過程、ナイーブベイズ、決定木、ランダムフォレスト、または勾配ブースティング木を含み得る。線形機械学習アルゴリズムは、限定ではないが、正則化器の有無を問わない線形回帰、ロジスティック回帰、ナイーブベイズ分類器、パーセプトロン、またはサポートベクターマシン(SVM)を含み得る。本開示による方法との併用のための他の機械学習アルゴリズムは、限定ではないが、二次分類器、k最近傍、ブースティング、決定木、ランダムフォレスト、ニューラルネットワーク、パターン認識、ベイジアンネットワーク、または隠れマルコフモデルを含み得る。機械学習のために一般的に使用される、これらのうちのいずれかの改良または組み合わせを含む他の機械学習アルゴリズムもまた、本明細書に説明される方法との併用のために好適であり得る。ワークフローにおける機械学習アルゴリズムの任意の使用もまた、本明細書に説明される方法との併用のために好適であり得る。ワークフローは、例えば、交差検証、入れ子交差検証、特徴選択、行圧縮、データ変換、ビニング、正規化、標準化、およびアルゴリズム選択を含み得る。
【0116】
機械学習アルゴリズムは、一般に、機械学習モデルを構築するために、以下の方法論によって訓練され得る。例えば、発生させられたモデルは、プロセス制御または監視を最適化するために、プロセス変数または標的性質を決定または予測し得る。入力データは、例えば、本明細書の別の場所に説明されるプロセス変数データ、標的性質データ、FDCデータ、測定データ、センサデータ、特徴、および同等物を含み得る。出力データは、例えば、本明細書の別の場所に説明されるプロセス変数、標的性質、異常の根本原因、および同等物の決定または予測を含み得る。
【0117】
1.機械学習モデルを「訓練」および「試験」するためのデータセットを集める。データセットは、多くの特徴、例えば、センサデータ、機器、プロセス、異常、および同等物と関連付けられた特徴を含み得る。訓練データセットは、機械学習モデルを「訓練」するために使用される。試験データセットは、訓練された機械学習モデルを評価するために使用される。
【0118】
2.訓練および試験のために使用するべき機械学習アルゴリズムのための「特徴」を決定する。機械学習アルゴリズムの正確度は、特徴がどのように表されるかに依存し得る。例えば、特徴値は、ワンホットエンコーディング、ビニング、標準化、または正規化を使用して変換され得る。また、データセット内の全ての特徴が、機械学習アルゴリズムを訓練および試験するために使用されるわけではない場合がある。特徴の選択は、例えば、利用可能なコンピューティングリソースおよび時間または反復試験および訓練の間に発見される特徴の重要度に依存し得る。例えば、センサデータまたは機器仕様と関連付けられた特徴がプロセス変数、標的性質、または異常の根本原因を予測することが、発見され得る。
【0119】
3.適切な機械学習アルゴリズムを選定する。例えば、本明細書の別の場所に説明される機械学習アルゴリズムが、選定され得る。選定される機械学習アルゴリズムは、例えば、利用可能なコンピューティングリソースおよび時間、または、予測が性質において継続的またはカテゴリ的であるかどうかに依存し得る。機械学習アルゴリズムは、機械学習モデルを構築するために使用される。
【0120】
4.機械学習モデルを構築する。機械学習アルゴリズムは、集められた訓練データセットに対して実行される。機械学習アルゴリズムのパラメータは、訓練データセットに対するパフォーマンスを最適化することによって、または交差検証データセットを介して調節され得る。パラメータ調節および学習後、機械学習アルゴリズムのパフォーマンスは、訓練データセットおよび試験データセットとは別個であるナイーブサンプルのデータセットに対して検証され得る。構築された機械学習モデルは、個々の特徴に割り当てられた特徴係数、重要度測度、または重み付けを伴い得る。
【0121】
機械学習モデルが上記に説明されたように決定(「訓練」)されると、それは、製造環境における製造プロセスのプロセス制御または監視の最適化のためのプロセス変数または標的性質に関する予測または推奨を発生させるために使用され得る。
【0122】
(実施例)
本開示の種々の実施例が、本明細書に示され、説明されているが、そのような実施例は、実施例としてのみ提供される。多数の変形例、変更、または代用が、本開示から逸脱することなく、生じ得る。本明細書に説明される実施例の種々の代替が採用され得ることを理解されたい。
【0123】
(実施例1:AggAOMの統計的に有意なパフォーマンス改良)
(ベンチマーク)
2つのベンチマークデータセットが、使用され、SK Hynixによって提供された。データセットは、現実の製造環境(例えば、半導体ファブ環境)における化学蒸着(CVD)プロセスから収集され、ベースラインモデルおよび異なるモデル、例えば、線形モデル、部分最小二乗法(PLS)モデル、XGBoost(XGB)モデル、AOM、および本明細書のAggAOMのパフォーマンスを評価するために使用された。データセットは、機器、チャンバ、またはステーションに取り付けられた種々のセンサから収集された故障検出および分類(FDC)要約統計とともに、厚さ測定値を含有していた。厚さ測定値が、実施例として提供されるが、本明細書の方法は、デルタ質量、屈折率、臨界寸法、および同等物を備えるデータセットを使用し得る。第1のベンチマークデータセット(CVD1)は、合計で86個のステーション(例えば、43個の関連付けられたチャンバ)を含有する15個の機器からの10,789個の測定されたウエハを備えていた。第2のベンチマークデータセット(CVD2)は、合計で84個のステーションを含有する15個の機器からの12,685個の測定されたウエハを含んでいた。両方のデータセットは、ある時間のスパン、例えば、9ヵ月にわたって収集された。ある場合には、時間のスパンは、少なくとも1日、1ヵ月、1年、またはそれより長くであり得る。ある場合には、時間のスパンは、最大で1年、1ヵ月、1日、またはそれ未満であり得る。
【0124】
(実証詳細)
各ベンチマークデータセットは、プロセス時間でソートされた(例えば、図10参照)。プロセス時間によってソートすることが、実施例として提供されるが、本明細書の方法は、他の前処理ステップ、例えば、スケーリング、補完、外れ値除去、および同等物を使用してソートし得る。ウエハの最初の70%が、訓練データセットとして利用された一方、残りのウエハは、試験データセットとして指定された。ハイパーパラメータ最適化(HPO)が、モデル毎に行われた。一般に、HPOは、本明細書のAggAOMを含む異なる機械学習モデルに依存しない場合があり、機械学習モデルが検証データセットに対するそのパフォーマンスを最大限にする、または最適化するための、ハイパーパラメータの最良セットを見出すための最適化プロセスとして構成され得る。HPOに関して、訓練データセットは、加えて、訓練のための最初の75%と、検証のための残りの部分とに分割された。検証データセットは、具体的なハイパーパラメータセットを伴うモデルのパフォーマンスを査定するために使用された。HPO後、検証データセットを含む訓練データセット全体が、最良または最適なハイパーパラメータセットを伴うモデルを訓練するために使用され、試験データセットに対して評価された。
【0125】
(結果)
本明細書の集約的適応型オンラインモデル(AggAOM)が、適応型オンラインモデル(AOM)および3つのベースラインモデル、すなわち、線形モデル、PLSモデル、およびXGBモデルと比較された。例えば、PLSモデルに関してWold et al.「PLS-regression: a basic tool of chemometrics」Chemometrics and intelligent laboratory systems 58.2 (2001): 109-130、XGBモデルに関してChen et al.「Xgboost: A scalable tree boosting system」Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. 2016(これらのそれぞれは、参照することによってその全体として本明細書に援用される)を参照されたい。図12A~12Dに図示されるように、AOMおよびAggAOMは、r二乗(R2、図12Aおよび図12C)および二乗平均平方根誤差(RMSE、図12Bおよび図12D)の両方の観点からベースラインモデル(例えば、PLSモデルおよびXGBモデル)に優る統計的に有意な改良されたパフォーマンスを実証した。PLSモデルおよびXGBモデルのパフォーマンスは、単純な線形モデルのものよりもわずかに良好であった。これは、データドリフトおよびデータシフトに対処することが、VMのために有用であり得ることを示唆する。AggAOMは、AOMと比較して、両方のデータセットに関して統計的に有意なパフォーマンス改良を達成した。具体的には、図12Bおよび図12Dに図示されるように、AggAOMは、単純な線形モデルと比較して、CVD1における30.3%およびCVD2における35.7%のRMSE低減を達成し、AOMをCVD1において7.3%、CVD2において6.1%改良した。これは、VM予測パフォーマンスを改良する際に機器のマルチレベル階層を横断する共有パターンを捕捉することの有効性を実証する。
【0126】
(結論)
本明細書のAggAOMは、データドリフト、データシフト、および測定値のデータ希少性またはスパース性の技術的問題を解決することによって、VM予測の正確度を有意に改良し得る。AggAOMは、複数のツールの階層構造を組み込み得、または使用し得ることにより、それらの一意の変動に適応しながら、同一の階層内の異なる機器、チャンバ、またはステーションを横断する物理的共通性を活用し得る。AggAOMは、SK-40-ynixのメガファブ等の大量製造施設に実証または展開されており、大量製造からの膨大な量のデータで広範に評価されている。SK-40-ynixからの2つのCVDデータセットに関する結果は、他のVMモデルに優るAggAOMの技術的改良を実証する。パフォーマンスにおける統計的に有意な改良は、大量半導体製造環境におけるAggAOMの有効性を実証し、また、他のモデルが解決し得ない製造データと関連付けられたVMの具体的な技術的課題に対処し得る機械学習モデルを構築することの有用性および重要性を実証する。SK hynix等の半導体製造施設においてAggAOMを利用することによって、および、1年を超えて毎日の高度プロセス制御(APC)ランツーラン(R2R)動作を用いてAggAOMを実行することによって、本明細書のシステムおよび方法は、適用されたプロセスにおける有意に低減されたプロセス変動性を実証し、それによって、収率、処理能力、および費用対効果を改良した。
【0127】
(コンピューティングシステム)
ある側面では、製造環境のプロセス制御または監視を最適化するためのコンピュータプログラム製品が、本明細書に開示され、コンピュータプログラム製品は、少なくとも1つの非一時的なコンピュータ読み取り可能な媒体を備え、少なくとも1つの非一時的なコンピュータ読み取り可能な媒体は、その中に具体化されるコンピュータ読み取り可能なプログラムコード部分を有し、コンピュータ読み取り可能なプログラムコード部分は、製造環境と関連付けられたクライアントアプリケーション層とインターフェースをとるように構成されている実行可能部分を備え、実行可能部分は、(1)クライアントアプリケーション層内の少なくとも1つのソースからデータを受信するように構成されている実行可能部分と、(2)ユーザがデータから1つ以上のカスタマイズされたデータセットを作成することを可能にするように構成されている実行可能部分と、(3)ユーザが、少なくとも部分的に、1つ以上のカスタマイズされたデータセットを使用して、1つ以上の機械学習モデルを構築、訓練、および/または更新することを可能にするように構成されている実行可能部分と、(4)製造環境において、1つ以上のプロセスが実施されている際、および/または機器が動作されている際、1つ以上の予測を発生させるために1つ以上の機械学習モデルを使用するように構成されている実行可能部分とを備える。
【0128】
図13を参照すると、コンピュータシステム1300(例えば、処理またはコンピューティングシステム)を含む例示的機械を描写するブロック図が、示され、コンピュータシステム1300の中で、命令のセットが、デバイスに本開示の静的コードスケジューリングのための側面および/または方法論のうちのいずれか1つ以上を実施または実行させるために実行し得る。図13のコンポーネントは、実施例にすぎず、特定の実施形態を実装する任意のハードウェア、ソフトウェア、埋め込まれた論理コンポーネント、または2つ以上のそのようなコンポーネントの組み合わせの使用または機能性の範囲を限定しない。
【0129】
コンピュータシステム1300は、バス1340を介して相互および他のコンポーネントと通信する1つ以上のプロセッサ1301と、メモリ1303と、記憶装置1308とを含み得る。バス1340はまた、ディスプレイ1332、(例えば、キーパッド、キーボード、マウス、スタイラス等を含み得る)1つ以上の入力デバイス1333、1つ以上の出力デバイス1334、1つ以上の記憶デバイス1335、および種々の有形記憶媒体1336をリンクさせ得る。これらの要素は全て、直接、または1つ以上のインターフェースまたはアダプタを介してバス1340とインターフェースをとり得る。例えば、種々の有形記憶媒体1336は、記憶媒体インターフェース1326を介してバス1340とインターフェースをとり得る。コンピュータシステム1300は、限定ではないが、1つ以上の集積回路(IC)、プリント回路基板(PCB)、モバイルハンドヘルドデバイス(モバイル電話またはPDA等)、ラップトップまたはノートブックコンピュータ、分散コンピュータシステム、コンピューティンググリッド、またはサーバを含む任意の好適な物理的形態を有し得る。
【0130】
コンピュータシステム1300は、機能を実行する1つ以上のプロセッサ1301(例えば、中央処理ユニット(CPU)または汎用グラフィック処理ユニット(GPGPU))を含む。プロセッサ1301は、随意に、命令、データ、またはコンピュータアドレスの一時的なローカル記憶のためのキャッシュメモリユニット1302を含有する。プロセッサ1301は、コンピュータ読み取り可能な命令の実行を補助するように構成されている。コンピュータシステム1300は、プロセッサ1301がメモリ1303、記憶装置1308、記憶デバイス1335、および/または記憶媒体1336等の1つ以上の有形コンピュータ読み取り可能な記憶媒体内に具体化される非一時的なプロセッサ実行可能命令を実行する結果として、図13に描写されるコンポーネントのための機能性を提供し得る。コンピュータ読み取り可能な媒体は、特定の実施形態を実装するソフトウェアを記憶し得、プロセッサ1301は、ソフトウェアを実行し得る。メモリ1303は、1つ以上の他のコンピュータ読み取り可能な媒体(大容量記憶デバイス1335、1336等)から、またはネットワークインターフェース1320等の好適なインターフェースを通して1つ以上の他のソースからソフトウェアを読み取り得る。ソフトウェアは、プロセッサ1301に、本明細書に説明または図示される1つ以上のプロセス、または1つ以上のプロセスの1つ以上のステップを実行させ得る。そのようなプロセスまたはステップを実行することは、メモリ1303内に記憶されるデータ構造を定義し、ソフトウェアによって指示されるようにデータ構造を修正することを含み得る。
【0131】
メモリ1303は、限定ではないが、ランダムアクセスメモリコンポーネント(例えば、RAM1304)(例えば、スタティックRAM(SRAM)、ダイナミックRAM(DRAM)、強誘電体ランダムアクセスメモリ(FRAM(登録商標))、相変化ランダムアクセスメモリ(PRAM)等)、読み取り専用メモリコンポーネント(例えば、ROM1305)、およびそれらの任意の組み合わせを含む種々のコンポーネント(例えば、機械読み取り可能な媒体)を含み得る。ROM1305は、プロセッサ1301に一方向にデータおよび命令を通信するように作用し得、RAM1304は、プロセッサ1301と双方向にデータおよび命令を通信するように作用し得る。ROM1305およびRAM1304は、下記に説明される任意の好適な有形コンピュータ読み取り可能な媒体を含み得る。一実施例では、立ち上げの間等にコンピュータシステム1300内の要素の間で情報を転送することに役立つ基本ルーチンを含む基本入/出力システム1306(BIOS)が、メモリ1303内に記憶され得る。
【0132】
固定記憶装置1308が、随意に記憶装置制御ユニット1307を通して、プロセッサ1301に双方向に接続される。固定記憶装置1308は、付加的データ記憶装置容量を提供し、また、本明細書に説明される任意の好適な有形コンピュータ読み取り可能な媒体を含み得る。記憶装置1308は、オペレーティングシステム1309、実行可能ファイル1310、データ1311、アプリケーション1312(アプリケーションプログラム)、および同等物を記憶するために使用され得る。記憶装置1308はまた、光学ディスクドライブ、ソリッドステートメモリデバイス(例えば、フラッシュベースのシステム)、または上記のうちのいずれかの組み合わせを含み得る。記憶装置1308内の情報は、適切な場合には、メモリ1303内に仮想メモリとして組み込まれ得る。
【0133】
一実施例では、記憶デバイス1335が、記憶デバイスインターフェース1325を介して(例えば、外部ポートコネクタ(図示せず)を介して)コンピュータシステム1300と取り外し可能にインターフェースをとられ得る。特に、記憶デバイス1335および関連付けられた機械読み取り可能な媒体が、コンピュータシステム1300のための機械読み取り可能な命令、データ構造、プログラムモジュール、および/または他のデータの不揮発性および/または揮発性記憶を提供し得る。一実施例では、ソフトウェアが、完全または部分的に、記憶デバイス1335上の機械読み取り可能な媒体内に常駐し得る。別の実施例では、ソフトウェアは、完全または部分的に、プロセッサ1301内に常駐し得る。
【0134】
バス1340は、多種多様なサブシステムを接続する。本明細書では、バスへの言及は、適切な場合、一般的な機能を供与する1つ以上のデジタル信号ラインを包含し得る。バス1340は、限定ではないが、様々なバスアーキテクチャのうちのいずれかを使用するメモリバス、メモリコントローラ、周辺機器バス、ローカルバス、およびそれらの任意の組み合わせを含むいくつかのタイプのバス構造のうちのいずれかであり得る。限定としてではなく、実施例として、そのようなアーキテクチャは、業界標準アーキテクチャ(ISA)バス、拡張ISA(EISA)バス、マイクロチャネルアーキテクチャ(MCA)バス、ビデオエレクトロニクススタンダーズアソシエーションローカルバス(VLB)、周辺機器コンポーネント相互接続(PCI)バス、PCIエクスプレス(PCI-X)バス、アクセラレーテッドグラフィックスポート(AGP)バス、ハイパートランスポート(HTX)バス、シリアル高度技術アタッチメント(SATA)バス、およびそれらの任意の組み合わせを含む。
【0135】
コンピュータシステム1300はまた、入力デバイス1333を含み得る。一実施例では、コンピュータシステム1300のユーザは、入力デバイス1333を介してコマンドおよび/または他の情報をコンピュータシステム1300の中に打ち込み得る。入力デバイス1333の実施例は、限定ではないが、英数字入力デバイス(例えば、キーボード)、ポインティングデバイス(例えば、マウスまたはタッチパッド)、タッチパッド、タッチスクリーン、マルチタッチスクリーン、ジョイスティック、スタイラス、ゲームパッド、オーディオ入力デバイス(例えば、マイクロホン、音声応答システム等)、光学スキャナ、ビデオまたは静止画像捕捉デバイス(例えば、カメラ)、およびそれらの任意の組み合わせを含む。いくつかの実施形態では、入力デバイスは、Kinect、Leap Motion、または同等物である。入力デバイス1333は、限定ではないが、シリアル、パラレル、ゲームポート、USB、FIREWIRE(登録商標)、THUNDERBOLT(登録商標)、または上記の任意の組み合わせを含む、様々な入力インターフェース1323(例えば、入力インターフェース1323)のうちのいずれかを介してバス1340にインターフェースをとられ得る。
【0136】
特定の実施形態では、コンピュータシステム1300がネットワーク1330に接続されると、コンピュータシステム1300は、他のデバイス、具体的には、ネットワーク1330に接続されるモバイルデバイスおよび企業システム、分散コンピューティングシステム、クラウド記憶システム、クラウドコンピューティングシステム、および同等物と通信し得る。コンピュータシステム1300への、およびそれからの通信が、ネットワークインターフェース1320を通して送信され得る。例えば、ネットワークインターフェース1320は、ネットワーク1330から1つ以上のパケット(インターネットプロトコル(IP)パケット等)の形態における着信通信(他のデバイスからの要求または応答等)を受信し得、コンピュータシステム1300は、処理のために着信通信をメモリ1303内に記憶し得る。コンピュータシステム1300は、同様に、1つ以上のパケットの形態にある、ネットワークインターフェース1320からネットワーク1330に通信される発信通信(他のデバイスへの要求または応答等)をメモリ1303内に記憶し得る。プロセッサ1301は、処理のために、メモリ1303内に記憶されたこれらの通信パケットにアクセスし得る。
【0137】
ネットワークインターフェース1320の実施例は、限定ではないが、ネットワークインターフェースカード、モデム、およびそれらの任意の組み合わせを含む。ネットワーク1330またはネットワークセグメント1330の実施例は、限定ではないが、分散コンピューティングシステム、クラウドコンピューティングシステム、広域ネットワーク(WAN)(例えば、インターネット、企業ネットワーク)、ローカルエリアネットワーク(LAN)(例えば、オフィス、建物、キャンパス、または他の比較的に小さい地理的空間と関連付けられたネットワーク)、電話ネットワーク、2つのコンピューティングデバイスの間の直接接続、ピアツーピアネットワーク、およびそれらの任意の組み合わせを含む。ネットワーク1330等のネットワークが、有線および/または無線通信モードを採用し得る。一般に、任意のネットワークトポロジが、使用され得る。
【0138】
情報およびデータが、ディスプレイ1332を通して表示され得る。ディスプレイ1332の実施例は、限定ではないが、陰極線管(CRT)、液晶ディスプレイ(LCD)、薄膜トランジスタ液晶ディスプレイ(TFT-LCD)、パッシブマトリクスOLED(PMOLED)またはアクティブマトリクスOLED(AMOLED)ディスプレイ等の有機液晶ディスプレイ(OLED)、プラズマディスプレイ、およびそれらの任意の組み合わせを含む。ディスプレイ1332は、バス1340を介して、プロセッサ1301、メモリ1303、および固定記憶装置1308、ならびに入力デバイス1333等の他のデバイスとインターフェースをとり得る。ディスプレイ1332は、ビデオインターフェース1322を介してバス1340にリンクされ、ディスプレイ1332とバス1340との間のデータのトランスポートが、グラフィック制御1321を介して制御され得る。いくつかの実施形態では、ディスプレイは、ビデオプロジェクタである。いくつかの実施形態では、ディスプレイは、VRヘッドセット等の頭部搭載型ディスプレイ(HMD)である。さらなる実施形態では、好適なVRヘッドセットは、非限定的実施例として、HTC Vive、Oculus Rift、Samsung Gear VR、Microsoft HoloLens、Razer OSVR、FOVE VR、Zeiss VR One、Avegant Glyph、Freefly VRヘッドセット、および同等物を含む。なおもさらなる実施形態では、ディスプレイは、本明細書に開示されるもの等のデバイスの組み合わせである。
【0139】
ディスプレイ1332に加えて、コンピュータシステム1300は、限定ではないが、オーディオスピーカー、プリンタ、記憶デバイス、およびそれらの任意の組み合わせを含む1つ以上の他の周辺出力デバイス1334を含み得る。そのような周辺出力デバイスは、出力インターフェース1324を介してバス1340に接続され得る。出力インターフェース1324の実施例は、限定ではないが、シリアルポート、パラレル接続、USBポート、FIREWIRE(登録商標)ポート、THUNDERBOLT(登録商標)ポート、およびそれらの任意の組み合わせを含む。
【0140】
加えて、または代替として、コンピュータシステム1300は、回路内に配線される、または別様に具体化される論理の結果として、機能性を提供し得、回路は、ソフトウェアの代わりに、またはそれとともに動作して、本明細書に説明または図示される1つ以上のプロセス、または1つ以上のプロセスの1つ以上のステップを実行し得る。本開示におけるソフトウェアへの言及は、論理を包含し得、論理への言及は、ソフトウェアを包含し得る。また、コンピュータ読み取り可能な媒体への言及は、適切である場合、実行のためのソフトウェアを記憶する回路(IC等)、実行のための論理を具体化する回路、または両方を包含し得る。本開示は、ハードウェア、ソフトウェア、または両方の任意の好適な組み合わせを包含する。
【0141】
本明細書に開示される実施形態に関連して説明される種々の例証的論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、または両方の組み合わせとして実装され得る。ハードウェアおよびソフトウェアのこの互換性を明確に例証するために、種々の例証的コンポーネント、ブロック、モジュール、回路、およびステップが、概して、それらの機能性の観点から上記に説明されている。
【0142】
本明細書に開示される実施形態に関連して説明される種々の例証的論理ブロック、モジュール、および回路は、本明細書に説明される機能を実施するように設計される汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)または他のプログラマブル論理デバイス、離散ゲートまたはトランジスタ論理、離散ハードウェアコンポーネント、またはそれらの任意の組み合わせを用いて実装または実施され得る。汎用プロセッサは、マイクロプロセッサであり得るが、代替では、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、またはステートマシンであり得る。プロセッサはまた、コンピューティングデバイスの組み合わせ、例えば、DSPおよびマイクロプロセッサ、複数のマイクロプロセッサ、DSPコアと併せた1つ以上のマイクロプロセッサ、または任意の他のそのような構成の組み合わせとして実装され得る。
【0143】
本明細書に開示される実施形態に関連して説明される方法またはアルゴリズムのステップは、ハードウェアにおいて、1つ以上のプロセッサによって実行されるソフトウェアモジュールにおいて、または2つの組み合わせにおいて直接具体化され得る。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、リムーバブルディスク、CD-ROM、または任意の他の形態の記憶媒体内に常駐し得る。プロセッサが記憶媒体から情報を読み取り得、それに情報を書き込み得るように、例示的記憶媒体が、プロセッサに結合される。代替では、記憶媒体は、プロセッサに一体化され得る。プロセッサおよび記憶媒体は、ASIC内に常駐し得る。ASICは、ユーザ端末内に常駐し得る。代替では、プロセッサおよび記憶媒体は、ユーザ端末内に離散コンポーネントとして常駐し得る。
【0144】
本明細書の説明によると、好適なコンピューティングデバイスは、非限定的実施例として、サーバコンピュータ、デスクトップコンピュータ、ラップトップコンピュータ、ノートブックコンピュータ、サブノートブックコンピュータ、ネットブックコンピュータ、ネットパッドコンピュータ、セットトップコンピュータ、メディアストリーミングデバイス、ハンドヘルドコンピュータ、インターネットアプライアンス、モバイルスマートフォン、タブレットコンピュータ、携帯情報端末、ビデオゲームコンソール、および車両を含む。随意のコンピュータネットワークコネクティビティを伴うセレクトテレビ、ビデオプレーヤ、およびデジタル音楽プレーヤが、本明細書に説明されるシステムにおける使用のために好適である。好適なタブレットコンピュータは、種々の実施形態では、ブックレット、スレート、およびコンバーチブル構成を伴うものを含む。
【0145】
いくつかの実施形態では、コンピューティングデバイスは、実行可能命令を実施するように構成されているオペレーティングシステムを含む。オペレーティングシステムは、例えば、プログラムおよびデータを含むソフトウェアであり、これは、デバイスのハードウェアを管理し、アプリケーションの実行に関するサービスを提供する。好適なサーバオペレーティングシステムは、非限定的実施例として、FreeBSD、OpenBSD、NetBSD、Linux(登録商標)、Apple Mac OS(登録商標) X Server、Oracle Solaris(登録商標)、Windows(登録商標) Server、およびNovell NetWareを含む。好適なパーソナルコンピュータオペレーティングシステムは、非限定的実施例として、Microsoft Windows(登録商標)、Apple Mac OS(登録商標) X、UNIX(登録商標)、およびGNU/Linux(登録商標)等のUNIX(登録商標)のようなオペレーティングシステムを含む。いくつかの実施形態では、オペレーティングシステムは、クラウドコンピューティングによって提供される。好適なモバイルスマートフォンオペレーティングシステムは、非限定的実施例として、Nokia Symbian OS、Apple iOS、Research In Motion BlackBerry(登録商標) OS、Google Android(登録商標)、Microsoft Windows Phone OS、Microsoft Windows Mobile(登録商標) OS、Linux(登録商標)、およびPalm WebOSを含む。好適なメディアストリーミングデバイスオペレーティングシステムは、非限定的実施例として、Apple TV、Roku、Boxee、Google TV、Google Chromecast、Amazon Fire、およびSamsung HomeSyncを含む。好適なビデオゲームコンソールオペレーティングシステムは、非限定的実施例として、Sony PS3、Sony PS4、Microsoft Xbox 360、Microsoft Xbox One、Nintendo Wii、Nintendo Wii U、およびOuyaを含む。好適な仮想現実ヘッドセットシステムは、非限定的実施例として、Meta Oculusを含む。
【0146】
(非一時的なコンピュータ読み取り可能な記憶媒体)
いくつかの実施形態では、本明細書に開示されるプラットフォーム、システム、媒体、および方法は、随意にネットワーク化されたコンピューティングデバイスのオペレーティングシステムによって実行可能な命令を含むプログラムを用いてエンコードされる1つ以上の非一時的なコンピュータ読み取り可能な記憶媒体を含む。さらなる実施形態では、コンピュータ読み取り可能な記憶媒体は、コンピューティングデバイスの有形コンポーネントである。なおもさらなる実施形態では、コンピュータ読み取り可能な記憶媒体は、随意に、コンピューティングデバイスから取り外し可能である。いくつかの実施形態では、コンピュータ読み取り可能な記憶媒体は、非限定的実施例として、CD-ROM、DVD、フラッシュメモリデバイス、ソリッドステートメモリ、磁気ディスクドライブ、磁気テープドライブ、光学ディスクドライブ、クラウドコンピューティングシステムおよびサービスを含む分散コンピューティングシステム、および同等物を含む。ある場合には、プログラムおよび命令は、永久に、実質的に永久に、半永久に、または非一時的に媒体上にエンコードされる。
【0147】
(コンピュータプログラム)
いくつかの実施形態では、本明細書に開示されるプラットフォーム、システム、媒体、および方法は、少なくとも1つのコンピュータプログラムまたはそれの使用を含む。コンピュータプログラムは、コンピューティングデバイスのCPUの1つ以上のプロセッサによって実行可能である、規定されたタスクを実施するように記述される命令のシーケンスを含む。コンピュータ読み取り可能な命令は、特定のタスクを実施する、または特定の抽象データタイプを実装する関数、オブジェクト、アプリケーションプログラミングインターフェース(API)、コンピューティングデータ構造、および同等物等のプログラムモジュールとして実装され得る。本明細書に提供される本開示に照らして、コンピュータプログラムは、種々の言語の種々のバージョンにおいて記述され得る。
【0148】
コンピュータ読み取り可能な命令の機能性は、種々の環境において所望に応じて組み合わせられ得、または分散され得る。いくつかの実施形態では、コンピュータプログラムは、命令の1つのシーケンスを備える。いくつかの実施形態では、コンピュータプログラムは、命令の複数のシーケンスを備える。いくつかの実施形態では、コンピュータプログラムは、1つの場所から提供される。他の実施形態では、コンピュータプログラムは、複数の場所から提供される。種々の実施形態では、コンピュータプログラムは、1つ以上のソフトウェアモジュールを含む。種々の実施形態では、コンピュータプログラムは、部分的または全体的に、1つ以上のウェブアプリケーション、1つ以上のモバイルアプリケーション、1つ以上のスタンドアロンアプリケーション、1つ以上のウェブブラウザプラグイン、拡張機能、アドイン、またはアドオン、またはそれらの組み合わせを含む。
【0149】
(用語および定義)
別様に定義されない限り、本明細書で使用される全ての技術用語は、本開示が属する技術分野の当業者によって一般的に理解されるものと同一の意味を有する。
【0150】
本明細書で使用されるとき、単数形「a」、「an」、および「the」は、文脈が明確に別様に決定付けない限り、複数の指示物を含む。本明細書における「または」のいかなる言及も、別様に記載されない限り、「および/または」を包含することを意図される。
【0151】
本明細書で使用されるとき、用語「約」は、ある場合には、おおよそで記載される量である量を指す。
【0152】
本明細書で使用されるとき、用語「約」は、記載される量に10%、5%、または1%(その中に増分を含む)近接する量を指す。
【0153】
本明細書で使用されるとき、パーセンテージに関連する用語「約」は、記載されるパーセンテージよりも10%、5%、または1%(その中に増分を含む)多い、または少ない量を指す。
【0154】
本明細書で使用されるとき、語句「少なくとも1つ」、「1つ以上」、および「および/または」は、動作において接続的および離接的の両方である非制約的表現である。例えば、表現「A、B、およびCのうちの少なくとも1つ」、「A、B、またはCのうちの少なくとも1つ」、「A、B、およびCのうちの1つ以上」、「A、B、またはCのうちの1つ以上」、および「A、B、および/またはC」はそれぞれ、Aを単独で、Bを単独で、Cを単独で、AおよびBをともに、AおよびCをともに、BおよびCをともに、またはA、B、およびCをともに、を意味する。
【0155】
本開示の好ましい実施形態が、本明細書に示され、説明されているが、そのような実施形態は、実施例としてのみ提供される。本開示が、本明細書中に提供される具体的実施例によって限定されることは、意図されない。本開示は、前述の明細書を参照して説明されているが、本明細書の実施形態の説明および例証は、限定的意味で解釈されることを意味しない。多数の変形例、変更、および代用が、本開示から逸脱することなく、生じ得る。さらに、本開示の全ての側面が、様々な条件および変数に依存する、本明細書に記載される具体的描写、構成、または相対的割合に限定されないことを理解されたい。本明細書に説明される本開示の実施形態の種々の代替が、本開示を実践する際に採用され得ることを理解されたい。したがって、本開示がまた、任意のそのような代替、修正、変形例、または均等物を網羅するものとすることが、想定される。以下の請求項が、本開示の範囲を定義し、これらの請求項の範囲内のシステム、方法、および構造およびそれらの均等物が、それによって網羅されることが、意図される。
図1A
図1B
図1C
図2A
図2B
図3A
図3B
図3C
図3D
図3E
図3F
図4
図5
図6
図7
図8A
図8B
図9
図10
図11
図12A
図12B
図12C
図12D
図13
【外国語明細書】