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