(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-18
(45)【発行日】2024-10-28
(54)【発明の名称】半導体処理のモニタリングのための機械学習システム
(51)【国際特許分類】
H01L 21/304 20060101AFI20241021BHJP
B24B 49/12 20060101ALI20241021BHJP
B24B 37/013 20120101ALI20241021BHJP
G05B 23/02 20060101ALI20241021BHJP
【FI】
H01L21/304 622R
H01L21/304 622S
B24B49/12
B24B37/013
G05B23/02 T
【外国語出願】
(21)【出願番号】P 2023122586
(22)【出願日】2023-07-27
(62)【分割の表示】P 2020547198の分割
【原出願日】2019-03-08
【審査請求日】2023-08-22
(32)【優先日】2018-03-13
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】390040660
【氏名又は名称】アプライド マテリアルズ インコーポレイテッド
【氏名又は名称原語表記】APPLIED MATERIALS,INCORPORATED
【住所又は居所原語表記】3050 Bowers Avenue Santa Clara CA 95054 U.S.A.
(74)【代理人】
【識別番号】110002077
【氏名又は名称】園田・小林弁理士法人
(72)【発明者】
【氏名】イェニー, グレアム
(72)【発明者】
【氏名】シェリアン, ベンジャミン
【審査官】鈴木 孝章
(56)【参考文献】
【文献】特開2012-74574(JP,A)
【文献】特開2017-207939(JP,A)
【文献】特開2010-79896(JP,A)
【文献】特表2015-514984(JP,A)
【文献】特開2011-249833(JP,A)
【文献】特表2009-534854(JP,A)
【文献】米国特許第7001243(US,B1)
(58)【調査した分野】(Int.Cl.,DB名)
H01L 21/304
B24B 49/12
B24B 37/013
G05B 23/02
(57)【特許請求の範囲】
【請求項1】
基板処理システムを動作させる方法であって、
複数の組の訓練データを受け取ることであって、各組の訓練データが、複数の
生の訓練
値、前記複数の
生の訓練
値からの各
生の訓練
値についてのタイムスタンプ、並びに前記複数の
生の訓練
値についての開始特徴値及び/又は終了特徴値を含む、複数の組の訓練データを受け取ること、
複数の機械学習モデルを記憶することであって、各機械学習モデルが、少なくとも1つの異なるハイパーパラメータを提供する、複数の機械学習モデルを記憶すること、
複数の物理プロセスモデルを記憶することであって、各物理プロセスモデルが、異なる時間の関数及び/又は異なる物理プロセスパラメータとして特徴値を生成するための、異なる関数を提供する、複数の物理プロセスモデルを記憶すること、
前記複数の機械学習モデルからの機械学習モデルの選択及び前記複数の物理プロセスモデルからの物理プロセスモデルの選択を受け取って、選択された機械学習モデルと選択された物理プロセスモデルの組み合わせを提供すること、
前記選択された機械学習モデルについての少なくとも1つのハイパーパラメータ値及び前記選択された物理プロセスモデルについての少なくとも1つの物理パラメータ値を受け取ること、
前記選択された機械学習モデル及び前記少なくとも1つのハイパーパラメータ値に従って実装された機械学習モデルを生成すること、
前記複数の生の訓練値からの1以上の生の訓練値の複数の群の各々について、
前記1以上の生の訓練値、1以上の生の訓練値についての
1以上のタイムスタンプ、前記組の訓練データについての前記開始特徴値及び/又は前記終了特徴値、前記物理パラメータ値、並びに前記選択された物理プロセスモデルに基づいて特徴値を計算し、それによって、前記複数の
生の訓練
値からの1以上の生の訓練値の群に関連付けられた各訓練特徴値を有する複数の訓練特徴値を生成すること、
前記複数の訓練特徴値及び前記複数の
生の訓練
値を使用して、前記実装された機械学習モデルを訓練して、訓練された機械学習モデルを生成すること、並びに
前記訓練された機械学習モデルを前記基板処理システムの処理制御システムに渡すことを含む、方法。
【請求項2】
前記複数の生の訓練値が、渦電流モニタリングシステム、モータ電流若しくはトルクモニタシステム、又は光学モニタシステムからの測定値を含む、請求項1に記載の方法。
【請求項3】
前記基板処理システムが、化学機械研磨システムを備える、請求項1に記載の方法。
【請求項4】
前記研磨システム内で基板を研磨すること、
前記基板の研磨中に、インシトゥ
・モニタシステムで前記基板をモニタして、
前記複数の生の訓練値を生成すること、
前記複数の
生の訓練値を前記訓練された機械学習モデルに渡して、複数の特徴値を生成すること、及び
前記複数の特徴値に基づいて、前記研磨システムの少なくとも1つの処理パラメータを制御することを更に含む、請求項
3に記載の方法。
【請求項5】
前記少なくとも1つの処理パラメータを制御することが、研磨を停止すること及び/又はキャリヤヘッド圧力を調整することを含む、請求項
4に記載の方法。
【請求項6】
非一過性のコンピュータ可読媒体内に有形に具現化された、基板の処理を制御するためのコンピュータプログラム製品であって、プロセッサに、
複数の組の訓練データを受け取ることであって、各組の訓練データが、複数の
生の訓練
値、前記複数の
生の訓練
値からの各
生の訓練
値についてのタイムスタンプ、並びに前記複数の
生の訓練
値についての開始特徴値及び/又は終了特徴値を含む、複数の組の訓練データを受け取ること、
複数の機械学習モデルを記憶することであって、各機械学習モデルが、少なくとも1つの異なるハイパーパラメータを提供する、複数の機械学習モデルを記憶すること、
複数の物理プロセスモデルを記憶することであって、各物理プロセスモデルが、異なる時間の関数及び/又は異なる物理プロセスパラメータとして特徴値を生成するための、異なる関数を提供する、複数の物理プロセスモデルを記憶すること、
前記複数の機械学習モデルからの機械学習モデルの選択及び前記複数の物理プロセスモデルからの物理プロセスモデルの選択を受け取って、選択された機械学習モデルと選択された物理プロセスモデルの組み合わせを提供すること、
前記選択された機械学習モデルについての少なくとも1つのハイパーパラメータ値及び前記選択された物理プロセスモデルについての少なくとも1つの物理パラメータ値を受け取ること、
前記選択された機械学習モデル
及び前記少なくとも1つのハイパーパラメータ値に従って実装された機械学習モデルを生成すること、
前記複数の生の訓練値からの1以上の生の訓練値の複数の群の各々について、
前記1以上の生の訓練値、1以上の生の訓練値についての
1以上のタイムスタンプ、前記組の訓練データについての前記開始特徴値及び/又は前記終了特徴値、
前記物理パラメータ値、並びに前記選択された物理プロセスモデルに基づいて特徴値を計算し、それによって、前記複数の
生の訓練
値からの1以上の生の訓練値の群に関連付けられた各訓練特徴値を有する複数の訓練特徴値を生成すること、
前記複数の訓練特徴値及び前記複数の
生の訓練
値を使用して、前記実装された機械学習モデルを訓練して、訓練された機械学習モデルを生成すること、並びに
前記訓練された機械学習モデルを基板処理システムの処理制御システムに渡すこと、を実行させるための指示命令を含む、コンピュータプログラム製品。
【請求項7】
前記特徴値が、前記基板上の層についての厚さ値を含む、請求項
6に記載のコンピュータプログラム製品。
【請求項8】
前記複数の機械学習モデルが、畳み込みニューラルネットワーク及び完全接続型ニューラルネットワークを含む、請求項6に記載のコンピュータプログラム製品。
【請求項9】
少なくとも1つの異なるハイパーパラメータが、前記ニューラルネットワーク内の隠れ層の数を含む、請求項8に記載のコンピュータプログラム製品。
【請求項10】
前記複数の物理プロセスモデルの一部が、時間の線形関数を含み、前記複数の物理プロセスモデルの一部が、時間の非線形関数を含む、請求項
6に記載のコンピュータプログラム製品。
【請求項11】
前記複数の物理プロセスモデルが、異なる物理プロセスパラメータを含む、請求項6に記載のコンピュータプログラム製品。
【請求項12】
前記物理プロセスパラメータが、パターン密度、開始ステップ高さ、臨界ステップ高さ、及びプロセス選択性のうちの1以上を含む、請求項
6に記載のコンピュータプログラム製品。
【請求項13】
前記選択された機械学習モデルについての少なくとも1つのハイパーパラメータ値を受け
取るための指示命令を含み、前記実装された機械学習モデルを生成するための前記指示命令が、前記選択された機械学習モデル及び前記少なくとも1つのハイパーパラメータ値に従って、前記実装された機械学習モデルを生成するための指示命令を含
む、請求項6に記載のコンピュータプログラム製品。
【請求項14】
前記選択された物理プロセスモデルについての物理パラメータ値を受け取るための指示命令を含み、前記特徴値を計算するための前記指示命令が、前記物理パラメータ値に基づいて前記特徴値を計算するための指示命令を含む、請求項
6に記載のコンピュータプログラム製品。
【請求項15】
半導体製造システムであって、
複数の研磨システムであって、各研磨システムが、研磨パッドを保持するための支持体、前記研磨パッドに対して基板を保持するためのキャリヤ、前記基板と前記研磨パッドとの間で相対運動を起こさせるモータ、研磨中の前記基板の測定値のシーケンス及び前記測定値のシーケンス内の各測定値についてのタイムスタンプを生成するためのインシトゥ・モニタシステム、並びにコントローラを含む、複数の研磨システムを備え、
前記複数の研磨システムのうちの少なくとも1つの少なくとも1つのコントローラが、前記複数の研磨システムのうちの1以上に、一連の訓練基板を研磨させるように構成され、
前記複数の研磨システムからの1以上のシステムの1以上のコントローラが、訓練された機械学習モデルを受け取り、前記1以上のシステムからの前記研磨システムに一連のデバイス基板を研磨させ、前記1以上のシステムの前記インシトゥ・モニタシステムから前記デバイス基板の測定値のシーケンスを受け取り、前記測定値のシーケンス及び前記訓練された機械学習モデルに基づいて特徴値のシーケンスを生成し、前記特徴値のシーケンスに基づいて少なくとも1つの研磨制御パラメータを制御するように構成され、
前記半導体製造システムが更に、
前記一連の訓練基板のそれぞれについての開始特徴値及び/又は終了特徴値を生成するための、インライン又はスタンドアロン計測システム、並びに
1以上のプロセッサ、及び指示命令を含むコンピュータプログラム製品を記憶した非一過性のコンピュータ可読媒体を備えた、アルゴリズム生成プラットフォームを備え、前記指示命令が、前記1以上のプロセッサに、
複数の組の訓練データを受け取ることであって、各組の訓練データが、複数の生の訓練値、前記複数の生の訓練値からの各生の訓練値についてのタイムスタンプ、並びに前記複数の生の訓練値についての開始特徴値及び/又は終了特徴値を含む、複数の組の訓練データを受け取ること、
複数の機械学習モデルを記憶することであって、各機械学習モデルが、少なくとも1つの異なるハイパーパラメータを提供する、複数の機械学習モデルを記憶すること、
複数の物理プロセスモデルを記憶することであって、各物理プロセスモデルが、異なる時間の関数及び/又は異なる物理プロセスパラメータとして特徴値を生成するための、異なる関数を提供する、複数の物理プロセスモデルを記憶すること、
前記複数の機械学習モデルからの機械学習モデルの選択及び前記複数の物理プロセスモデルからの物理プロセスモデルの選択を受け取って、選択された機械学習モデルと選択された物理プロセスモデルの組み合わせを提供すること、
前記選択された機械学習モデルについての少なくとも1つのハイパーパラメータ値及び前記選択された物理プロセスモデルについての少なくとも1つの物理パラメータ値を受け取ること、
前記選択された機械学習モデル及び前記少なくとも1つのハイパーパラメータ値に従って実装された機械学習モデルを生成すること、
前記複数の生の訓練値からの1以上の生の訓練値の複数の群の各々について、
前記1以上の生の訓練値、1以上の生の訓練値についての
1以上のタイムスタンプ、前記組の訓練データについての前記開始特徴値及び/又は前記終了特徴値、前記物理パラメータ値、並びに前記選択された物理プロセスモデルに基づいて特徴値を計算し、それによって、前記複数の
生の訓練
値からの1以上の生の訓練値の群に関連付けられた各訓練特徴値を有する複数の訓練特徴値を生成すること、
前記複数の訓練特徴値及び前記複数の
生の訓練
値を使用して、前記実装された機械学習モデルを訓練して、訓練された機械学習モデルを生成すること、並びに
前記訓練された機械学習モデルを
基板処理システムの
処理制御システムに渡すこと、を実行させる、システム。
【請求項16】
前記複数の研磨システムのうちの前記少なくとも1つ及び前記複数の研磨システムのうちの前記1以上のシステムが、同一の研磨システムを少なくともいくつか含む、請求項15に記載のシステム。
【請求項17】
前記アルゴリズム生成プラットフォームが、複数の訓練された機械学習モデルを提供するデータを記憶するように構成されている、請求項
15に記載のシステム。
【請求項18】
前記アルゴリズム生成プラットフォームが、
前記複数の訓練された機械学習モデルのうちの1つを受け取り又は選択し、前記選択された訓練された機械学習モデルを前記コントローラに渡すように構成されている、請求項
17に記載のシステム。
【請求項19】
1以上のプロセッサ、及び複数のデバイス基板のそれぞれを特徴付けるデータを記憶するための指示命令を含んだコンピュータプログラム製品を記憶した非一過性のコンピュータ可読媒体を含む、基板追跡システムを更に備える、請求項
18に記載のシステム。
【請求項20】
前記アルゴリズム生成プラットフォームが、前記基板追跡システムからデバイス基板を特徴付けるデータを受け取り、前記特徴付けるデータに基づいて、前記複数の訓練された機械学習モデルから訓練された機械学習モデルを選択するように構成されている、請求項
19に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、例えば化学機械研磨などの処理中に、基板のモニタリングにおいて使用される機械学習システムに関する。
【背景技術】
【0002】
集積回路は、典型的には、シリコンウェハ上に導電層、半導電層、又は絶縁層を順次堆積させることによって、基板上に形成される。1つの製造ステップは、非平面表面上に充填層を堆積させ、該充填層を平坦化することを含む。用途によっては、パターン化層の上面が露出するまで、充填層を平坦化する。例えば、絶縁層内のトレンチ又は穴を充填するために、パターン化された絶縁層上に導電性充填層を堆積させることができる。平坦化後、絶縁層の隆起したパターン間に残っている導電層の部分が、基板上の薄膜回路間で導電経路を提供するビア、プラグ、及びラインを形成する。他の用途の場合、充填層は、所定の厚さが下層の上に残されるまで平坦化される。例えば、堆積された誘電体層は、フォトリソグラフィのために平坦化することができる。
【0003】
化学機械研磨(CMP)は、平坦化の1つの受け入れられている方法である。この平坦化方法は、典型的には、基板がキャリヤヘッドに取り付けられることを必要とする。基板の露出面は、典型的には、耐久性のある粗面を有する回転研磨パッドに対して配置される。キャリヤヘッドは、基板に制御可能な負荷を与えて、研磨パッドに押し付ける。研磨粒子を有するスラリのような研磨液が、典型的には、研磨パッドの表面に供給される。
【0004】
CMPにおける1つの問題は、所望のプロファイル、例えば、所望の平坦度若しくは厚さに平坦化された基板層、又は所望の量の材料が除去された基板層を実現するために適切な研磨速度を使用することである。基板層の初期厚さ、スラリ分布、研磨パッド条件、研磨パッドと基板との間の相対速度、及び基板への負荷の変動は、基板にわたって及び基板毎に材料除去速度の変動をもたらし得る。これらの変動は、研磨終点に到達するのに必要な時間及び除去される量の変動をもたらす。したがって、単に研磨時間の関数として研磨終点を特定すること、又は単に一定の圧力を加えることによって所望のプロファイルを実現することは不可能な場合がある。
【0005】
一部のシステムでは、基板は、例えば光学モニタシステムによって、研磨中にインシトゥ(その場)でモニタされる。インシトゥ・モニタシステムからの厚さ測定値は、基板に加えられる圧力を調整して、研磨速度を調整し且つウエハ内の不均一性(WIWNU)を低減させ、研磨終点を検出し研磨を止めるために使用され得る。
【発明の概要】
【0006】
一態様では、基板処理システムを動作させる方法が、複数の組の訓練データを受け取ること、複数の機械学習モデルを記憶すること、複数の物理プロセスモデルを記憶すること、複数の機械学習モデルからの機械学習モデルの選択及び複数の物理プロセスモデルからの物理プロセスモデルの選択を受け取って、選択された機械学習モデルと選択された物理プロセスモデルの組み合わせを提供すること、選択された機械学習モデルに従って実装された機械学習モデルを生成すること、各組の訓練データ内の各訓練スペクトルについての特徴値を計算し、それによって、複数の訓練スペクトルのうちの1つに関連付けられた各訓練特徴値を有する複数の訓練特徴値を生成すること、複数の訓練特徴値及び複数の訓練スペクトルを使用して、実装された機械学習モデルを訓練して、訓練された機械学習モデルを生成すること、並びに訓練された機械学習モデルを基板処理システムの処理制御システムに渡すことを含む。
【0007】
各組の訓練データは、複数の訓練スペクトル、複数の訓練スペクトルからの各訓練スペクトルについてのタイムスタンプ、並びに複数の訓練スペクトルについての開始特徴値及び/又は終了特徴値を含む。各機械学習モデルは、少なくとも1つの異なるハイパーパラメータを提供する。各物理プロセスモデルは、異なる時間の関数及び/又は異なる物理プロセスパラメータとして特徴値を生成するための、異なる関数を提供する。特徴値は、訓練スペクトルについてのタイムスタンプ、その組の訓練データについての開始特徴値及び/又は終了特徴値、並びに選択された物理プロセスモデルに基づいて計算される。
【0008】
別の一態様では、コンピュータ可読媒体内で有形に具現化された、基板の処理を制御するためのコンピュータプログラム製品が、プロセッサに、複数の組の訓練データを受け取ること、複数の機械学習モデルを記憶すること、複数の物理プロセスモデルを記憶すること、複数の機械学習モデルからの機械学習モデルの選択及び複数の物理プロセスモデルからの物理プロセスモデルの選択を受け取って、選択された機械学習モデルと選択された物理プロセスモデルの組み合わせを提供すること、選択された機械学習モデルに従って実装された機械学習モデルを生成すること、各組の訓練データ内の各訓練スペクトルについての特徴値を計算し、それによって、複数の訓練スペクトルのうちの1つに関連付けられた各訓練特徴値を有する複数の訓練特徴値を生成すること、複数の訓練特徴値及び複数の訓練スペクトルを使用して、実装された機械学習モデルを訓練して、訓練された機械学習モデルを生成すること、訓練された機械学習モデルを基板処理システムの処理制御システムに渡すこと、を実行させるための指示命令を含む。
【0009】
各組の訓練データは、複数の訓練スペクトル、複数の訓練スペクトルからの各訓練スペクトルについてのタイムスタンプ、並びに複数の訓練スペクトルについての開始特徴値及び/又は終了特徴値を含む。各機械学習モデルは、少なくとも1つの異なるハイパーパラメータを提供する。各物理プロセスモデルは、異なる時間の関数及び/又は異なる物理プロセスパラメータとして特徴値を生成するための、異なる関数を提供する。特徴値は、訓練スペクトルについてのタイムスタンプ、その組の訓練データについての開始特徴値及び/又は終了特徴値、並びに選択された物理プロセスモデルに基づいて計算される。
【0010】
別の一態様では、半導体製造システムが、複数の研磨システム、インライン又はスタンドアロン計測システム、及びアルゴリズム生成プラットフォームを含む。
【0011】
各研磨システムは、研磨パッドを保持するための支持体、研磨パッドに対して基板を保持するためのキャリヤ、基板と研磨パッドとの間に相対運動を生じさせるためのモータ、研磨中の基板の測定値のシーケンス、及び、測定値のシーケンス内の各測定値についてのタイムスタンプを生成するためのインシトゥ・モニタシステム、並びにコントローラを含む。複数の研磨システムのうちの少なくとも1つの少なくとも1つのコントローラは、複数の研磨システムのうちの1以上に一連の訓練基板を研磨させるように構成されている。複数の研磨システムからの1以上のシステムの1以上のコントローラは、訓練された機械学習モデルを受け取り、1以上のシステムからの研磨システムに一連のデバイス基板を研磨させ、1以上のシステムのインシトゥ・モニタシステムからデバイス基板の測定値のシーケンスを受け取り、測定値のシーケンス及び訓練された機械学習モデルに基づいて特徴値のシーケンスを生成し、特徴値のシーケンスに基づいて少なくとも1つの研磨制御パラメータを制御するように構成されている。
【0012】
インラインまたはスタンドアロン計測システムは、一連の訓練基板のそれぞれについての開始特徴値及び/又は終了特徴値を生成するように構成されている。
【0013】
アルゴリズム生成プラットフォームが、1以上のプロセッサ、及び1以上のプロセッサ向けの指示命令を有するコンピュータプログラム製品を記憶した非一過性のコンピュータ可読媒体を備える。訓練基板の研磨中に生成される複数の訓練スペクトル、及び複数の訓練スペクトルからの各訓練スペクトルについてのタイムスタンプが、各訓練基板について、訓練基板を研磨するために使用される複数の研磨システムのうちの1以上のインシトゥ・モニタシステムから受け取られる。訓練基板についての開始特徴値及び/又は終了特徴値が、各訓練基板について、インライン又はスタンドアロン計測システムから受け取られる。複数の組の訓練データが記憶される。各組の訓練データは、訓練基板からの複数の訓練スペクトル、複数のスペクトルからの各訓練スペクトルについてのタイムスタンプ、並びに訓練基板についての開始特徴値及び/又は終了特徴値を含む。複数の機械学習モデルが記憶され、各機械学習モデルは、少なくとも1つの異なるハイパーパラメータを提供する。複数の物理プロセスモデルが記憶され、各物理プロセスモデルは、異なる時間の関数及び/又は異なる物理プロセスパラメータとして特徴値を生成するための、異なる関数を提供する。複数の機械学習モデルからの機械学習モデルの選択及び複数の物理プロセスモデルからの物理プロセスモデルの選択を受け取って、選択された機械学習モデルと選択された物理プロセスモデルとの組み合わせを提供する。選択された機械学習モデルについて少なくとも1つのハイパーパラメータ値が受け取られ、選択された物理プロセスモデルについて少なくとも1つの物理パラメータ値が受け取られる。実装された機械学習モデルは、選択された機械学習モデル及び少なくとも1つのハイパーパラメータ値に従って生成される。各組の訓練データ内の各訓練スペクトルについて、訓練スペクトルについてのタイムスタンプ、その組の訓練データについての開始特徴値及び/又は終了特徴値、物理パラメータ値、並びに選択された物理プロセスモデルに基づいて特徴値が計算され、それによって、複数の訓練スペクトルのうちの1つに関連付けられた各訓練特徴値を有する複数の訓練特徴値が生成される。実装された機械学習モデルは、複数の訓練特徴値及び複数の訓練スペクトルを使用して訓練されて、訓練された機械学習モデルを生成し、訓練された機械学習モデルは、デバイス基板の研磨の制御のために、1以上の研磨システムのコントローラに渡される。
【0014】
実施態様は、以下の特徴のうちの1以上を含んでよい。
【0015】
基板処理システムは、化学機械研磨システムを含んでよい。基板は、研磨システム内で研磨されてよい。基板の研磨中に、基板をインシトゥ・分光モニタシステムでモニタして、複数の測定されたスペクトルを生成することができる。複数の測定されたスペクトルを訓練された機械学習モデルに渡して、複数の特徴値を生成することができる。研磨システムの少なくとも1つの処理パラメータは、複数の特徴値に基づいて制御されてよく、例えば、研磨を停止することができ及び/又はキャリヤヘッド圧力を調整することができる。
【0016】
複数の機械学習モデルは、畳み込みニューラルネットワーク及び完全接続型ニューラルネットワークを含んでよい。ハイパーパラメータは、ニューラルネットワーク内の隠れ層の数であってよい。選択された機械学習モデルについて、少なくとも1つのハイパーパラメータ値を受け取ることができる。実装された機械学習モデルは、選択された機械学習モデル及び少なくとも1つのハイパーパラメータ値に従って生成されてよい。
【0017】
複数の物理プロセスモデルの一部は、時間の線形関数を含んでよく、複数の物理プロセスモデルの一部は、時間の非線形関数を含んでよい。複数の物理プロセスモデルは、異なる物理プロセスパラメータ、例えば、パターン密度、開始ステップ高さ、臨界ステップ高さ、及びプロセス選択性のうちの1以上を含んでよい。物理パラメータ値が受け取られてよく、特徴値は、物理パラメータ値に基づいて計算されてよい。アルゴリズム生成プラットフォームは、複数の研磨システムのうちの2以上のそれぞれから、訓練基板からの複数の訓練スペクトル、及び複数の訓練スペクトルからの各訓練スペクトルについてのタイムスタンプを受け取るように構成されてよい。
【0018】
複数の研磨システムのうちの少なくとも1つ及び複数の研磨システムからの1以上のシステムは、同じ研磨システムの少なくとも一部を含んでよい。アルゴリズム生成プラットフォームは、複数の訓練された機械学習モデルを提供するデータを記憶するように構成されてよい。アルゴリズム生成プラットフォームは、複数の訓練された機械学習モデルのうちの1つを受け取り又は選択し、選択された訓練された機械学習モデルをコントローラに渡すように構成されてよい。
【0019】
基板追跡システムは、1以上のプロセッサ、及び複数のデバイス基板のそれぞれを特徴付けるデータを記憶するための指示命令を含むコンピュータプログラム製品を記憶するための非一過性のコンピュータ可読媒体を含んでよい。アルゴリズム生成プラットフォームは、基板追跡システムからデバイス基板を特徴付けるデータを受け取るように構成されてよく、特徴付けるデータに基づいて複数の訓練された機械学習モデルから訓練された機械学習モデルを選択するように構成されてよい。
【0020】
別の一態様では、研磨システムを動作させる方法が、機械学習アルゴリズムを使用して複数のモデルを訓練して、複数の訓練されたモデルを生成することを含み、各訓練されたモデルは、半導体処理システムのインシトゥ・モニタシステムからのモニタリング信号に基づいて、基板の層の特性値を特定するように構成されている。複数の訓練されたモデルが記憶され、処理されるべき基板の特性を示すデータが受け取られ、そのデータに基づいて複数の訓練されたモデルのうちの1つが選択され、選択された訓練されたモデルが処理システムに渡される。
【0021】
実施態様は、以下の特徴のうちの1以上を含むことができる。
【0022】
基板の層は、半導体処理システム内で処理されてよい。層の処理中に、基板は、インシトゥ・モニタシステムでモニタされてよく、信号は、インシトゥ・モニタシステムから生成されてよい。その信号は、訓練されたモデルに渡されて、層の厚さの測定値を生成することができる。1以上の制御信号が、厚さの測定値に基づいて、処理システム向けに生成されてよい。処理システムは、化学機械研磨システムであってよく、層を処理することは、層を研磨することを含んでよい。基板をモニタすることは、分光モニタシステムによるモニタリングを含んでよく、信号は、スペクトルのシーケンスを含んでよい。
【0023】
モデルの1以上のハイパーパラメータを取得することができる。生の予測モデルは、ハイパーパラメータに基づいて生成されてよい。訓練データはモデル向けに取得されてよく、訓練データを使用して生予測モデルを訓練して、モデルを生成する。訓練データは、複数の訓練の各訓練例について、訓練のための複数の入力情報項目及び厚さのグラウンドトゥルース(ground truth)測定値を含んでよい。厚さの各グラウンドトゥルース測定値は、特定の研磨された層を解析することに基づいて、インラインまたはスタンドアロンの計測システムによって生成されてよい。インライン又はスタンドアロンの計測システムは、4点プローブ、偏光解析厚さセンサ、及び透過型電子顕微鏡センサのうちの1以上を含んでよい。
【0024】
モデルは、ニューラルネットワークを含むことができる。人工ニューラルネットワークは、訓練データ及び既知の特性値を使用して、逆伝搬法(backpropagation)によって訓練され得る。
【0025】
ある種の実施態様は、下記の利点のうちの1以上を有してよい。基板上の層の厚さが、より正確且つ/又は迅速に測定され得る。ウエハ内厚さ不均一性及びウエハ毎厚さ不均一性(WIWNU及びWTWNU)の低減、及び、所望の処理終点を検出するための終点システムの信頼性の向上が可能になる。
【0026】
1以上の実施形態の詳細を、添付の図面及び以下の説明で明らかにする。他の態様、特徴、及び利点は、本説明、図面、及び特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【0027】
【
図2】研磨システムの一実施例の概略断面図を示す。
【
図3】研磨装置用のコントローラの部分として使用されるニューラルネットワークを示す。
【
図4】データを収集し、モデルを生成するためのプラットフォームのアーキテクチャを示す。
【発明を実施するための形態】
【0028】
様々な図面における同様の参照番号及び記号表示は、同様の要素を示す。
【0029】
処理、例えば研磨を受けている基板をモニタするために、様々なモニタシステムが使用されてきた。一部の半導体モニタプロセスでは、機械学習システム、例えばニューラルネットワークを訓練して、モニタシステムからのデータを評価し、必要とされる出力パラメータを生成することができる。例えば、機械学習システムに信号を入力することができ、機械学習システムは、基板の層の厚さ、又は処理を停止又は修正すべきであることを示す信号を出力することができる。
【0030】
一実施例として、モニタシステムが、基板の研磨中に使用される分光モニタシステムである場合、スペクトル又はスペクトルのシーケンスを機械学習システムに入力することができ、機械学習システムは、基板の層の厚さの測定値、又は研磨を停止すべきであること若しくはキャリヤヘッドの圧力を修正すべきであることを示す信号を生成することができる。
【0031】
無論、そのような機械学習システムは、訓練される必要があるだろう。各々が基板パラメータに対するモニタリング信号の異なる関係を有することができる様々なデバイス及び処理レシピが与えられるとすれば、処理システムの製造業者が機械学習システムを訓練することは非実用的であり得る。むしろ、機械学習システムが、半導体製造プラントのオペレータによって生成されたデータを使用して訓練される必要があるだろう。訓練データを記憶し、操作するための一般化された技法が説明される。
【0032】
異なる状況は、モニタシステムからのデータを処理するために、異なる機械学習モデルを必要とすることがある。異なる状況には、デバイス、処理される層、製造に使用される処理パラメータの履歴などの違いが含まれ得る。異なる機械学習モデルは、異なるニューラルネットワーク構成、又は、ニューラルネットワークを使用するモデルに対し、ニューラルネットワークを使用しないモデル(例えば、遺伝的アルゴリズム、サポートベクトルマシンなど)を含むことができる。機械学習モデルは、基板に関する入力情報、例えば、ファブ(fab)の基板追跡システムからの情報に基づいて選択することができる。
【0033】
別の課題として、半導体製造プラント内の様々なツールから得られる生データは、各測定についての特徴値を含んでいない可能性がある。例えば、処理ツール内のインシトゥ・光学モニタシステムを使用して、訓練データとして使用されるべきスペクトルのシーケンスを生成することができる。しかし、利用可能な唯一のグラウンドトゥルース測定値は、インライン又はスタンドアロン計測システムから得られる開始及び/又は終了厚さであるかもしれない。開始及び/又は終了厚さは、シーケンス内の最初及び/又は最後のスペクトルに関連付けられてよいが、シーケンス内の他のスペクトル(研磨プロセス内の中間時間についての)は、関連付けられた厚さを有さないだろう。これらのスペクトルについての訓練値を生成するための技法が必要とされる。
【0034】
物理プロセスモデルを使用して、処理時間の関数として特徴値を生成することができ、これらの特徴値をスペクトルに関連付けることができ、これにより、スペクトル(特徴値を有する)を訓練データとして使用することができる。異なる状況は、特徴値を生成するために異なる物理プロセスモデルを必要とすることがある。異なる状況は、デバイス、処理される層、製造に使用される処理パラメータの履歴の差異などを含み得る。異なる物理プロセスモデルは、異なる入力(例えば、ストップオンフィルムプロセスは、臨界ステップ高さを含むことができ、一方、下層の露出の前に研磨を停止するプロセスは、この変数を必要としない場合がある)を使用してよく、異なる入力値(例えば、パターン密度又は異なる選択性についての異なる値)を使用してよく、又は変数を特性値に変換(例えば、線形対非線形補間)するための、異なる関数を使用してよい。物理プロセスモデルは、特定の研磨プロセス(例えば、研磨プロセスで収集された事前の実験データ)に関する入力情報、又はファブの基板追跡システムからの情報に基づいて選択することができる。
【0035】
図1は、半導体製造プラント12の構成要素を示している。プラント12は、1以上の半導体処理ツール、例えば、堆積システム、エッチングシステム、研磨システムなどを含むことができる。例えば、プラントは、1以上の研磨システム20を含むことができる。各研磨システム20は、1以上の研磨ステーション20a、及び研磨されるべき基板を研磨システム20の中に又は研磨された基板を研磨システム20の外に移送するための移送ステーション20bを含むことができる。各研磨ステーション20aは、インシトゥ・モニタシステム70(
図2参照)、例えば分光モニタシステムを含む。
【0036】
また、プラント12は、基板について関心がある特性、例えば基板上の層の厚さの正確な測定値を生成することができるインライン又はスタンドアロンの計測システムも含むことができる。この基板特性の正確な測定値は、「グラウンドトゥルース測定値」と呼ぶことができる。グラウンドトゥルース測定値を生成するために使用され得るシステムの例は、4点プローブ、偏光解析センサ、又は透過型電子顕微鏡を含む。また、インライン又はスタンドアロン計測システム14は、他の測定値、例えば、基板上の1以上のスポットのスペクトル測定値、又は基板の画像を生成することもできる。一部の実施態様では、計測システム14が、基板の物理的特性についての値を生成せず、むしろ、処理動作、例えば研磨動作を通じた進行の程度を表す値を生成する。
【0037】
計測システム14は、処理ツール、例えば研磨システム20によって処理される前及び/又は後に、基板を測定するために使用することができる。例えば、計測システム14を使用して、研磨システム20内の基板の研磨前後の基板上の層の厚さの測定値を生成することができる。これにより、基板の研磨前の厚さと研磨後の厚さのグラウンドトゥルース測定値を提供することができる。
【0038】
プラント12はまた、基板についての識別情報、例えば、基板についてのid番号、基板を保持するカセットについてのid番号を追跡する基板追跡システム16も含むことができる。基板追跡システムはまた、基板の最終的な目的の表示、例えば、製造されるデバイスの種類、及び/又は基板の処理履歴、例えば、製造のステップのうちの1以上で使用される処理パラメータも記憶することができる。基板追跡システム16は、例えば、1以上のデータベースを使用して、1以上のコンピュータ上で実行されるソフトウェアで実装され得る。
【0039】
基板追跡システム16はまた、基板の1以上の物理パラメータ又は基板上で実行されるべきプロセスについての1以上の意図された値を記憶することもできる。例えば、基板追跡システム16は、基板のパターン密度、基板についての開始ステップ高さ、基板についての臨界ステップ高さ(除去速度が減速し始めるステップ高さ)、又は研磨動作についてのプロセス選択性(異なる材料についての除去速度の比)のうちの1以上を記憶することができる。
【0040】
プラント12はまた、以下で更に詳細に説明されることになるアルゴリズム生成プラットフォーム18も含むことができる。アルゴリズム生成プラットフォームは、機械学習システムを訓練するために1以上のコンピュータで実行されるソフトウェアを含む。システムの訓練は、機械学習モデルのインスタンス化(instantiation)を生成する。機械学習モデルのインスタンス化、例えばハイパーパラメータ値は、処理システム用のプロセスコントローラ、例えば研磨システム20用のコントローラ90に渡すことができる。ハイパーパラメータ値は、機械学習モデル、例えばニューラルネットワークが畳み込みであるか完全接続型であるか、ニューラルネットワーク内のノードの隠れ層の数、スペクトルが低減されるべき次元の数、又は訓練メトリックを示すことができる。
【0041】
処理ツールは、訓練されたモデルを使用して、インシトゥ・モニタシステムによる測定値に基づいて特性値を生成することができる。次いで、これらの特性値を使用して、処理システムの動作を制御することができ、例えば、処理を停止するか、又は処理パラメータを調整して処理の均一性を改善することができる。例えば、研磨システムは、訓練されたモデルを使用して、インシトゥ・モニタシステムからのスペクトルを厚さ値に変換することができ、これを使用して研磨終点を検出するか、又はキャリヤヘッド内の圧力に対する調整を決定することができる。
【0042】
単一プラントの部分として図示されているが、計測システム14、基板追跡システム16、及びアルゴリズム生成プラットフォーム18は、互いに又は処理ツールと同じ物理的場所にある必要はない。更に、基板追跡システム16及びアルゴリズム生成プラットフォーム18は、クラウドコンピューティング技法を用いて実装することができる。
【0043】
図2は、研磨システム20の研磨ステーションの一実施例を示している。研磨装置20は、上に研磨パッド30が載置されている、回転可能な円盤形状のプラテン22を含んでよい。プラテンは、軸23を中心として回転するように動作可能である。例えば、モータ24は、駆動シャフト26を回転させて、プラテン22を回転させることができる。研磨パッド30は、例えば接着剤の層によってプラテン22に取り外し可能に固定することができる。研磨パッド30は、外側研磨層32及びより柔らかいバッキング層34を有する2層研磨パッドとすることができる。
【0044】
研磨システム20は、研磨スラリなどの研磨液体42を研磨パッド30上に分注するための研磨液体供給ポート40を含んでよい。研磨システム20はまた、研磨パッド30を一定の研磨状態に維持するために、研磨パッド30を磨く研磨パッド調整器も含み得る。
【0045】
キャリヤヘッド50は、研磨パッド30に対して基板10を保持するように動作可能である。各キャリヤヘッド50はまた、複数の独立して制御可能な加圧可能チャンバ、例えば3つのチャンバ52a~52cも含む。それらのチャンバは、基板10の関連付けられた区域に、独立して制御可能な圧力を加えることができる。中央区域は、実質的に円形であってよく、残りの区域は、中央区域の周りの同心環状区域であってよい。
【0046】
チャンバ52a~52cは、基板10が取り付けられている底面を有する可撓性膜54によって画定され得る。キャリヤヘッド50はまた、基板10を可撓性膜54の下方に保持するための保持リング56も含むことができる。説明を簡略化するために、
図2には3個のチャンバのみを示したが、2個のチャンバ、又は4個若しくはそれより多いチャンバ、例えば、5個のチャンバがあってもよい。更に、基板に加えられる圧力を調整するための他の機構、例えば圧電アクチュエータをキャリヤヘッド50内で使用することができる。
【0047】
各キャリヤヘッド50は、支持構造物60、例えばカルーセル又はトラックから吊り下げられ、駆動シャフト62によってキャリヤヘッド回転モータ64に接続され、キャリヤヘッドが軸51の周りで回転できるようになっている。任意選択的に、各キャリヤヘッド50は、例えば、カルーセル上のスライダ上で、トラックに沿った運動によって又はカルーセル自体の回転振動によって、側方に振動することができる。動作中、プラテン22はその中心軸23の周りで回転され、キャリヤヘッド50はその中心軸51の周りで回転され、研磨パッド30の上面を横切って側方に平行移動される。
【0048】
研磨装置はまた、インシトゥ・モニタシステム70も含む。インシトゥ・モニタシステム70は、区域12a~12cのうちの1以上の研磨速度を制御するために、研磨パラメータ、例えばチャンバ52a~52cのうちの1以上に加えられる圧力を制御するように使用され得る。インシトゥ・モニタシステム70は、区域12a~12cのそれぞれにおいて研磨されている層の厚さを示す信号を生成する。インシトゥ・モニタシステムは、光学モニタシステム(例えば、分光モニタシステム)であってよい。
【0049】
光学モニタシステム70は、光源72、光検出器74、及びコントローラ90(コンピュータなど)と光源72及び光検出器74との間で信号を送受信するための回路76を含み得る。光源72から研磨パッド30内のウインドウ36に光を送信するため、及び、基板10からの反射光を検出器74に送信するために、1以上の光ファイバが使用されてよい。例えば分岐光ファイバ78を使用して、光源62から基板10に光を送信し、その光を検出器74に戻すように送信することができる。分光システムである場合には、光源72は白色光を放出するように動作可能であってよく、検出器74は分光計であってよい。
【0050】
回路76の出力はデジタル電子信号であってよく、このデジタル電子信号は、駆動シャフト26内の回転カプラ28(例えば、スリップリング)を通過して、コントローラ90へと至る。代替的に、回路76は、無線信号によってコントローラ90と通信してもよい。コントローラ90は、マイクロプロセッサ、メモリ、及び入力/出力回路を含む計算デバイス、例えば、プログラマブルコンピュータとすることができる。コントローラ90は、単一のブロックで図示されているが、複数のコンピュータに機能が分散されているネットワーク化されたシステムであってもよい。
【0051】
一部の実施態様では、インシトゥ・モニタシステム70が、プラテン22内に設置されプラテン22と共に回転するセンサ80を含む。例えば、センサ80は、光ファイバ78の端部であってよい。プラテン22の運動により、センサ80は、基板全体を走査することになる。プラテンの回転により、センサ80がキャリヤヘッドの下方で移動する際に、インシトゥ・モニタシステムはサンプリング周波数で測定を行う。結果として、基板10を横切る円弧内の場所14において測定が行われる。
【0052】
プラテンの一回転にわたって、基板10上の異なる位置からスペクトルが得られる。特に、一部のスペクトルは、基板10の中心により近い場所から得ることができ、また一部は、縁部により近い場所から得ることができる。コントローラ90は、タイミング、モータエンコーダ情報、プラテン回転若しくは位置センサデータ、並びに/又は基板及び/若しくは保持リングの縁部の光学的検出に基づいて、走査からの各測定値に対して(基板10の中心に対する)径方向位置を計算するように構成することができる。したがって、コントローラは、様々な測定値を様々な区域に関連付けることができる。一部の実施態様では、径方向位置の正確な計算に対する代替として、測定時間が使用されてよい。
【0053】
コントローラ90は、インシトゥ・モニタシステムからの信号に基づいて、基板の各区域について特徴値を導き出すことができる。特に、コントローラ90は、研磨が進行するにつれて、特徴値の経時的シーケンスを生成する。コントローラ90は、基板10の下方のセンサが走査する毎に、各区域につき少なくとも1つの特徴値を生成し得るか、又は、例えばセンサが基板全体を走査するわけではない研磨システムでは、ある測定周波数(サンプリング周波数と同じである必要はない)で、各区域について特徴値を生成し得る。一部の実施態様では、1回の走査につき単一の特徴値が生成される。例えば、特徴値を生成するために複数の測定値が合成されてよい。一部の実施態様では、特徴値を生成するために各測定値が使用されてよい。
【0054】
特徴値は、典型的には、外層の厚さであるが、除去される厚さなどの関連する特性であってもよい。加えて、特徴値は、研磨プロセスを経る基板の進捗をより一般的に表現するもの(例えば、既定の進捗に従った研磨プロセスにおいて測定が観測されることが予期され得る時間又はプラテンの回転数を表す指標値)であり得る。
【0055】
コントローラ90は、機械学習システムによって生成されたモデルのインスタンス化を使用して、特徴値を生成することができる。
【0056】
インシトゥ・分光モニタシステム70とコントローラ90とを組み合わせることで、終点及び/又は研磨均一性を制御するシステム100が提供され得る。つまり、コントローラ90は、一連の特徴値に基づき、研磨不均一性を低減させるために、研磨プロセス中、研磨終点を検出すること並びに研磨を停止し及び/又は研磨圧力を調整することが可能である。
【0057】
図3は、コントローラ90によって実装することができる機能ブロックを示している。これらの機能ブロックは、次元削減を実行する任意選択的な次元削減モジュール110、機械学習システム(ニューラルネットワークとして実装されるように示されている)120、並びに、研磨プロセスを調整するため(例えば、一連の特徴値に基づき、研磨不均一性を低減させるために、研磨プロセス中に、研磨終点を検出するため並びに研磨を停止し及び/又は研磨圧力を調整するため)のプロセス制御システム130を含み得る。上述したように、これらの機能ブロックは、複数のコンピュータに分散されてよい。
【0058】
ニューラルネットワーク120は、主成分のそれぞれについての複数の入力ノード122、複数の隠れノード124(以下では、「中間ノード」とも称される)、及び特性値を生成することとなる1つの出力ノード126を含む。単一層の隠れノードを有するニューラルネットワークでは、各隠れノード124が各入力ノード122に接続されてよく、出力ノード126は各隠れノード124に接続されてよい。
【0059】
一般に、隠れノード124は、隠れノードが接続される入力ノード122からの値の加重和の非線形関数である値を出力する。
【0060】
例えば、指定されたノードkである隠れノード124の出力は、次のように表すことができる。すなわち、
ここで、tanhは、双曲線正接であり、a
kxは、k番目の中間ノードと(Mの入力ノードからの)x番目の入力ノードとの間の接続のための重みであり、I
Mは、M番目の入力ノードにおける値である。しかし、tanhの代わりに他の非線形関数(正規化線形ユニット(ReLU)関数及びその変種など)も使用され得る。
【0061】
任意選択的な次元削減モジュール110は、成分値がより少ない数(例えば、L個の成分値)になるよう、測定されたスペクトルを削減することになる。ニューラルネットワーク120は、スペクトルがそこまで削減される各成分についての入力ノード122を含む。例えば、モジュール110がL個の成分値を生成するには、ニューラルネットワーク120は少なくとも入力ノードN1、N2…NLを含むことになる。
【0062】
しかし、ニューラルネットワーク120は、任意選択的に、他のデータを受け取るための1以上の他の入力ノード(例えば、ノード122a)を含んでよい。かかる他のデータは、インシトゥ・モニタシステムによる基板の事前の測定値(例えば、基板の処理のより早い段階から収集されたスペクトル)、先行する基板の測定値(例えば、別の基板の処理中に収集されたスペクトル)、研磨システム内の別のセンサ(例えば、温度センサによるパッド又は基板の温度の測定値)、研磨システムを制御するために使用されるコントローラによって記憶された研磨レシピ(例えば、基板を研磨するために使用されるキャリヤヘッド圧力やプラテン回転速度などの研磨パラメータ)、コントローラによって追跡された変数(例えばパッドが変更されてからの基板の数)、又は研磨システムの部分ではないセンサ(例えば計測ステーションによる下地フィルムの厚さの測定値)からのものであってよい。これにより、ニューラルネットワーク120が、特徴値の計算において、かかる他の処理変数又は環境変数を勘案することが可能になる。
【0063】
例えばデバイスウエハに使用される前に、機械学習システム112を構成する必要がある。
【0064】
次元削減モジュール110の構成手順の部分として、コントローラ90は、複数の参照スペクトル及び1つの特徴値(例えば、複数の参照スペクトルの各参照スペクトルに関連付けられた厚さ)を受け取ってよい。例えば、参照スペクトルが、1以上の試験基板上の複数の特定の場所で測定されてよい。加えて、計測器材(例えば、接触プロフィロメータやエリプソメータ)を用いて、これらの特定の場所で厚さの測定が実施され得る。したがって、厚さの測定値は、基板上の同じ場所からの参照スペクトルに関連付けられ得る。複数の参照スペクトルは、例えば、5~10個の参照スペクトルを含んでよい。
【0065】
図4は、データを収集し、モデルを生成するためのプラットフォームのアーキテクチャを示している。主な構成要素は、ファブツール(fab tool)、アルゴリズム生成プラットフォーム、及びユーザインターフェースを含む。
【0066】
ファブツールは、処理システム、例えば、化学機械研磨器20を含む。処理システムは、様々な制御パラメータによって制御される。時間の関数として制御パラメータを設定するためのデータは、「レシピ」と呼ぶことができる。例えば、研磨システムでは、制御パラメータが、キャリヤヘッドの様々なチャンバ内の研磨圧力、並びにキャリヤヘッド回転速度、プラテン回転速度、スラリ分注速度、キャリヤヘッド掃引、スラリ組成などの他のパラメータを示すレシピ内で設定され得る。これらの制御パラメータのいずれも、時間の関数として指定することができる。
【0067】
ファブツールはまた、インシトゥ・モニタシステム70も含むが、そのモニタシステムは、処理システム自体の部分と見なすことができる(仮想ボックスによって示されている)。インシトゥ・モニタシステム70は、上述したような分光モニタシステムとすることができるが、渦電流モニタリング、モータ電流若しくはトルクモニタリング、カメラ、温度センサなどのような他のセンサを、代わりに又は追加して使用することができる。
【0068】
ファブツールはまた、プロセスコントローラ、例えばコントローラ90も含むことができるが、プロセスコントローラは、処理システム自体の部分と見なすことができる(再び仮想ボックスによって示されている)。プロセスコントローラは、インシトゥ・モニタシステム70からデータを受け取り、処理システム20を制御する。この制御は、例えば、基板が処理されているときに、概してリアルタイムで行うことができる。例えば、プロセスコントローラ90は、処理を停止するかどうか、プロセス制御パラメータを調整するかどうか、又は処理レシピの新しい段階を開始するかどうかを検出することができる。研磨パラメータを調整することは、新しい制御パラメータ値を処理システムに供給することを含んでよい。例えば、研磨システムでは、プロセス制御システムが、キャリヤヘッドによって加えられる1以上の圧力を調整するかどうかを判定することができ、調整された値は、次いで、調整されたプロセスを実施する(例えば、調整された圧力を加える)処理システムに渡すことができる。
【0069】
プロセスコントローラ90によって使用される特定のアルゴリズムは、アルゴリズム生成プラットフォーム18から受け取ることができる。
【0070】
アルゴリズム生成プラットフォーム18は、1以上のコンピュータ、例えばサーバシステム内で実行されるソフトウェアとして実装することができる。アルゴリズム生成プラットフォーム18は、3つの主要な機能を有することができる。
【0071】
第1に、アルゴリズム生成プラットフォーム18は、様々なファブツールからデータを受け取り、そのデータをデータストア18a、例えばデータベース内に記憶する役割を担う。受け取られるデータは、インシトゥ・モニタシステムからの信号(例えば、分光モニタシステムによって測定されるスペクトルのシーケンス)、処理システムからの制御パラメータ(例えば、研磨レシピ)、ファブ基板追跡システムからの基板データ(例えば、製造される基板の製造履歴及び/又はデバイスの特定)、及びグラウンドトゥルース測定値、並びに任意選択的に計測システムからの他の測定値を含むことができる。
【0072】
特に、アルゴリズム生成プラットフォーム18は、複数の組の訓練データを受け取り、データストア18a内に記憶することができる。各組の訓練データは、単一基板上の単一の処理動作に対応し得る。基板は、訓練のために意図的に使用される基板、又は、集積回路の製造の通常の過程でモニタされ、開始厚さ値及び/若しくは終了厚さ値が計測システムによって測定された、デバイス基板とすることができる。
【0073】
例えば、研磨システム20が基板を研磨し、計測システム14が基板の層の厚さを測定する際に又はした後で、データを収集して、一組の訓練データを生成することができる。収集されたデータは、研磨中に測定されたスペクトル、スペクトルが測定された研磨動作中の時間(「タイムスタンプ」)、及び計測システムによって得られた(1以上の)グラウンドトゥルース測定値を含むことができる。したがって、各組の訓練データは、分光モニタシステムによって測定される複数の訓練スペクトル、複数の訓練スペクトルからの各訓練スペクトルについてのタイムスタンプ、並びに複数の訓練スペクトルについての開始厚さ値及び/又は終了厚さ値を含むことができる。
【0074】
複数の組の訓練データは、典型的には、単一の処理システムから、例えば単一の研磨システムから収集され得る。訓練データが収集されるこの処理システムは、制御アルゴリズムが生成されることとなる同じ処理システムであってもよいが、そうである必要はない。一部の実施態様では、複数の組の訓練データが、複数の処理システムのそれぞれ、例えば複数の研磨システム20のそれぞれから収集される。
【0075】
第2に、アルゴリズム生成プラットフォーム18は、ユーザ、例えば半導体製造プラント12のオペレータが、以下に説明する様々なオプションを選択することを可能にする、ユーザインターフェースを生成することができる。ユーザインターフェースは、例えばウェブサーバ18bを介して生成することができる。同様に、ユーザは、ウェブブラウザを介してユーザインターフェースにアクセスすることができる。ウェブブラウザは、ウェブサーバ18bと同じコンピュータにあっても、別のコンピュータであってもよい。
【0076】
第3に、アルゴリズム生成プラットフォーム18は、アルゴリズム生成エンジン18cを含む。アルゴリズム生成エンジン18cは、機械学習モデル・ビルダ・アプリケーション18d、物理プロセスモデル・ビルダ・アプリケーション18e、及びモデル訓練アプリケーション18fを含む幾つかのサブコンポーネントを含む。
【0077】
モデル・ビルダ・アプリケーション18dは、ユーザが機械学習システムの様々なモデルを構築することを可能にする。例えば、モデル・ビルダは、ユーザが、ニューラルネットワーク内の隠れノードの幾つかの列を選択すること、又はニューラルネットワーク内の特定のノード間の接続若しくは接続の欠如を指定すること、ニューラルネットワークによって使用される非線形関数を指定することなどを可能にする。これにより、ユーザは、ユーザによって実行されるプロセスに特有の様々なモデルを構築することができる。
【0078】
より具体的には、機械学習モデル・ビルダ18dが、複数の種類の機械学習モデルを生成するように構成されている。異なる種類の機械学習モデルは、ニューラルネットワーク、並びにニューラルネットワークを使用しない機械学習モデル(例えば、ランダムフォレスト、勾配ブーストツリー、サポートベクトルマシンなど)を含むことができる。異なる種類の機械学習モデルはまた、異なるニューラルネットワーク構成、例えば、完全接続型ニューラルネットワークに対し、畳み込みニューラルネットワークを含むことができる。
【0079】
機械学習モデル・ビルダ18dは、例えば、ユーザインターフェースを介して、半導体製造プラントのオペレータから機械学習モデルの選択を受け取ることができる。例えば、ウェブサーバ18bは、複数の種類の機械学習モデルをリストし、オペレータが複数の種類の機械学習モデルのうちの1つを選択することを可能にするグラフィック制御要素、例えば、ドロップダウンメニュー、チェックボックス、自動補完検索ボックスなどを含む、ウェブページを生成することができる。
【0080】
機械学習モデル・ビルダ18dはまた、例えばユーザインターフェースを介して、半導体製造プラントのオペレータから1以上のハイパーパラメータ値を受け取ることもできる。(1以上の)ハイパーパラメータは、機械学習モデルの構成を設定するパラメータであり、機械学習モデルの種類に依存することとなる。ニューラルネットワーク内の隠れ層の数は、ニューラルネットワークについてのハイパーパラメータの一例である。他の実施例は、ノードのドロップアウトのパーセンテージ、初期化重み、及びアクティブ化機能を含む。ここでも、ウェブサーバ18bは、オペレータが各ハイパーパラメータについての値を入力又は選択することを可能にするグラフィック制御要素、例えば、ドロップダウンメニュー、チェックボックス、自動補完検索ボックスなどを含む、ウェブページを生成することができる。
【0081】
機械学習モデル・ビルダ18dが、機械学習モデルの種類及び必要であれば任意のハイパーパラメータ値の選択を受け取ると、機械学習モデル・ビルダ18dは、機械学習モデルのインスタンスを生成することができる。この時点では、機械学習モデルは訓練されておらず、したがって、特性値の実際の計算には役に立たない。
【0082】
上述のように、物理プロセスモデルを使用して、処理時間の関数として特徴値を生成することができ、これらの特徴値をスペクトルに関連付けることができ、これにより、スペクトル(特徴値を有する)を訓練データとして使用することができる。
【0083】
物理プロセス機械学習モデル・ビルダ18dは、複数の種類の物理プロセスモデルを生成するように構成されている。各種類の物理プロセスモデルは、異なる時間の関数及び/又は異なる物理プロセスパラメータとして厚さ値を生成する関数を提供する。異なる種類の物理プロセスモデルは、(1)プロセスモデルの基本関数、例えば、線形又は非線形、(2)プロセスモデルの出力が、タイムスタンプ並びに開始値及び/又は終了値以外の物理プロセス変数に依存するかどうか、並びに(3)物理プロセスモデルにおいて他の物理プロセス変数がどのように使用されるかに基づいて区別することができる。
【0084】
例えば、単純な物理プロセスモデルの1つの種類は、シーケンスの最初と最後のスペクトルの時間に対する訓練スペクトルの時間に基づいて、開始値と終了値との間の線形補間により、訓練スペクトルついての厚さ値を生成することができる。これは、他の変数に依存せずに行うことができる。
【0085】
別の一実施例として、別の種類の物理プロセスモデルは、例えば他の変数に依存することなく、時間の予め設定された非線形関数に基づいて、厚さ値の補間を行うことができる。
【0086】
別の一実施例として、別の種類の物理プロセスモデルは、タイムスタンプ、開始値及び/又は終了値、並びに様々な物理プロセスパラメータ、例えば、プロセスがフィルム上で停止しているかどうか、プロセス選択性、プロセス開始時間、基板上のパターン密度に依存する関数を使用することができる。当該技術分野では、様々な物理プロセスモデルが知られている。
【0087】
物理プロセスモデル・ビルダ18eは、例えばユーザインターフェースを介して、半導体製造プラントのオペレータから物理プロセスモデルの種類の選択を受け取ることができる。例えば、ウェブサーバ18bは、複数の種類の物理プロセスモデルをリストし、オペレータが複数の種類の物理プロセスモデルのうちの1つを選択することを可能にするグラフィック制御要素、例えば、ドロップダウンメニュー、チェックボックス、自動補完検索ボックスなどを含む、ウェブページを生成することができる。
【0088】
図4は、機械学習モデル及び物理プロセスモデルの選択のための個別の制御要素を示しているが、既に対になっている機械学習モデルと物理プロセスモデルを同時に選択するための単一の制御要素、例えばドロップダウンメニューがあってもよい。
【0089】
物理プロセスモデル・ビルダ18eはまた、例えばユーザインターフェースを介して、半導体製造プラントのオペレータから1以上の物理プロセスパラメータ値を受け取ることもできる。この場合も、研磨動作では、物理プロセスパラメータの例には、プロセス選択性、プロセス開始時間、基板上のパターン密度が含まれる。ここでも、ウェブサーバ18bは、オペレータが各物理プロセスパラメータについての値を入力又は選択することを可能にするグラフィック制御要素、例えば、ドロップダウンメニュー、チェックボックス、自動補完検索ボックスなどを含む、ウェブページを生成することができる。
【0090】
モデル訓練アプリケーション18fは、オペレータが、モデルの特定のインスタンス化の訓練にどのデータを使用すべきかを選択することを可能にする。例えば、分光測定システムが使用されることを前提とすると、ユーザは、訓練のためにどの基板からのどのスペクトルが使用されることとなるか、及びそれらのスペクトルに関連付けられたグラウンドトゥルース測定値を選択することができる。
【0091】
データストア18aが、複数の組の訓練データを記憶すると仮定すると、モデル訓練アプリケーション18fは、例えばユーザインターフェースを介して、半導体製造プラントのオペレータから複数の組のうちの1以上の組の訓練データの選択を受け取ることができる。例えば、ウェブサーバ18bは、データの組をリストし、オペレータが1以上のデータの組を選択することを可能にするグラフィック制御要素、例えば、ドロップダウンメニュー、チェックボックス、自動補完検索ボックスなどを含む、ウェブページを生成することができる。
【0092】
物理プロセスモデル・ビルダ18dが、物理プロセスモデルの種類の選択及び必要であれば任意のプロセスパラメータ値を受け取ると、物理プロセスモデル・ビルダ18dは、特性値をまだ有していない各訓練スペクトルについて、特性値、例えば厚さ値を計算することができる。すなわち、様々な値、例えば訓練スペクトルのタイムスタンプ、開始値、及び終了値が、物理プロセスモデルの中に供給され、物理プロセスモデルは、その訓練スペクトルについての特性値を計算する。
【0093】
物理プロセスモデルのインスタンスが生成されると、物理プロセスモデルを使用して、まだ特徴値を有していない訓練データ内の各訓練スペクトルについて、特性値、例えば厚さ値を生成することができる。訓練は、従来の技法を使用してモデル訓練アプリケーション18fによって実行することができる。例えば、ニューラルネットワークの場合、訓練は、測定値のシーケンス、及び物理プロセスモデルによって生成された特性値を使用して、逆伝搬によって実行することができる。例えば、ニューラルネットワークの場合、訓練は、スペクトルのシーケンス、及び研磨プロセスモデルによって生成された特性値、例えば厚さ値を使用して、逆伝搬によって実行することができる。
【0094】
訓練が実行されると、機械学習モデルの訓練されたインスタンス化をプロセス制御システムに渡すことができ、次いで、プロセス制御システムは、上述のように訓練された機械学習モデルを使用することができる。
【0095】
例えば、研磨システム内での基板の研磨中に、基板をインシトゥ・分光モニタシステムでモニタして、研磨されている基板の複数の測定されたスペクトルを生成することができる。複数の測定されたスペクトルは、訓練された機械学習モデルに渡されて、複数の特徴値、例えば厚さの測定値を生成し、研磨システムの少なくとも1つの処理パラメータは、複数の特徴値に基づいて制御される。
【0096】
特に、アルゴリズム生成プラットフォームは、複数の種類の機械学習モデル(例えば、上述のように異なるアーキテクチャで構築されたモデル)のインスタンス化を含むことができ、インスタンス化は、同じ又は異なるデータの組によって訓練される。アルゴリズム生成プラットフォームはまた、同じ機械学習モデルの複数のインスタンス化を含むこともでき、各インスタンス化は、異なるデータの組によって訓練される。
【0097】
一部の実施態様では、ユーザが、プロセス制御システムの中にロードするための訓練されたモデルインスタンス化を選択する。一部の実施態様では、アルゴリズム生成器が、ファブツールからデータを受け取り、そのデータに基づいてモデルのインスタンス化を選択することができる。例えば、アルゴリズム生成器は、カセット内の基板が特定のデバイスの製造に使用されている基板追跡システムからデータを受け取ることができる。次いで、アルゴリズム生成器は、そのデバイスに関連付けられたモデルのインスタンス化を選択し、そのモデルのインスタンス化をプロセス制御システムに渡すことができる。
【0098】
本発明の実施形態及び本明細書で説明される機能動作の全ては、本明細書で開示される構造的手段及びその構造的等価物を含む、デジタル電子回路、又はコンピュータソフトウェア、ファームウェア、若しくはハードウェア、又はそれらの組合せで実装することができる。本発明の実施形態を1以上のコンピュータプログラム製品、すなわち、データ処理装置、例えばプログラマブルプロセッサ、コンピュータ、又は複数のプロセッサ若しくはコンピュータによって実行される、又はこれらの作業を制御するための非一過性の機械可読記憶媒体内で有形に具現化された1以上のコンピュータプログラムとして実装可能である。(プログラム、ソフトウェア、ソフトウェアアプリケーション、又はコードとしても知られている)コンピュータプログラムは、コンパイル又は翻訳された言語を含む、任意の形のプログラミング言語で書くことができ、また独立型プログラムとして、又はモジュール、構成要素、サブルーチン、若しくは計算環境で使用するのに適している他のユニットとして配置することを含め、任意の形で配置することができる。コンピュータプログラムは、必ずしもファイルに対応するわけではない。プログラムは、他のプログラム又はデータを保持するファイルの一部、問題のプログラム専用の単一ファイル、又は複数の調整されたファイル(例えば、1以上のモジュール、サブプログラム、若しくはコードの一部を記憶するファイル)に記憶することができる。コンピュータプログラムは、1つのコンピュータ、又は1つのサイトの複数のコンピュータで実行されるように配備することも、複数のサイトに分散させて通信ネットワークによって相互接続することもできる。
【0099】
本明細書で説明されるプロセス及び論理フローは、入力データで動作し出力を生成することによって機能を実行するために1以上のコンピュータプログラムを実行する1以上のプログラマブルプロセッサによって実行することができる。プロセス及び論理フローは、FPGA(フィールドプログラマブルゲートアレイ)又はASIC(application specific integrated circuit:特定用途向け集積回路)といった特殊用途の論理回路によって実施されてもよく、且つ、装置が、かかる特殊用途の論理回路として実装されることも可能である。
【0100】
上述の研磨システム及び方法は、種々の研磨システムに適用することができる。研磨パッド若しくはキャリヤヘッドのいずれか又は両方が移動して、研磨面と基板との間の相対運動を提供することができる。例えば、プラテンは、回転するのではなく軌道を回ることができる。研磨パッドは、プラテンに固定された円形状(又は何らかの他の形状)のパッドとすることができる。研磨システムは、例えば、研磨パッドが連続的であるか、又は直線的に移動するリール・ツー・リール・ベルトである、直線的な研磨システムとすることができる。研磨層は、標準的な(例えば、充填剤を含むか若しくは含まないポリウレタン)研磨材料、軟質材料、又は固定研磨材料とすることができる。相対的な配置に関する用語が、構成要素の相対的な配向又は配置に使用されているが、研磨面及び基板は、重力に対して垂直な配向又はその他の配向に保持できることを理解されたい。
【0101】
上述の説明は、化学機械研磨に焦点を当ててきたが、制御システムは、他の半導体処理技術、例えば、エッチング又は堆積(例えば、化学気相堆積)に適応させることができる。加えて、この技法は、インシトゥ・モニタではなく、インラインの又はスタンドアロンの計測システムにも適用され得る。
【0102】
本発明の特定の実施形態について説明してきた。本発明の実施形態は、以下の条項に記載される実施形態を含む。
[条項1]
基板処理システムを動作させる方法であって、
複数の組の訓練データを受け取ることであって、各組の訓練データが、複数の訓練スペクトル、前記複数の訓練スペクトルからの各訓練スペクトルについてのタイムスタンプ、並びに前記複数の訓練スペクトルについての開始特徴値及び/又は終了特徴値を含む、複数の組の訓練データを受け取ること、
複数の機械学習モデルを記憶することであって、各機械学習モデルが、少なくとも1つの異なるハイパーパラメータを提供する、複数の機械学習モデルを記憶すること、
複数の物理プロセスモデルを記憶することであって、各物理プロセスモデルが、異なる時間の関数及び/又は異なる物理プロセスパラメータとして特徴値を生成するための、異なる関数を提供する、複数の物理プロセスモデルを記憶すること、
前記複数の機械学習モデルからの機械学習モデルの選択及び前記複数の物理プロセスモデルからの物理プロセスモデルの選択を受け取って、選択された機械学習モデルと選択された物理プロセスモデルの組み合わせを提供すること、
前記選択された機械学習モデルについての少なくとも1つのハイパーパラメータ値及び前記選択された物理プロセスモデルについての少なくとも1つの物理パラメータ値を受け取ること、
前記選択された機械学習モデル及び前記少なくとも1つのハイパーパラメータ値に従って実装された機械学習モデルを生成すること、
各組の訓練データ内の各訓練スペクトルについて、前記訓練スペクトルについての前記タイムスタンプ、前記組の訓練データについての前記開始特徴値及び/又は前記終了特徴値、前記物理パラメータ値、並びに前記選択された物理プロセスモデルに基づいて特徴値を計算し、それによって、前記複数の訓練スペクトルのうちの1つに関連付けられた各訓練特徴値を有する複数の訓練特徴値を生成すること、
前記複数の訓練特徴値及び前記複数の訓練スペクトルを使用して、前記実装された機械学習モデルを訓練して、訓練された機械学習モデルを生成すること、並びに
前記訓練された機械学習モデルを前記基板処理システムの処理制御システムに渡すことを含む、方法。
[条項2]
前記基板処理システムが、化学機械研磨システムを備える、条項1に記載の方法。
[条項3]
前記研磨システム内で基板を研磨すること、
前記基板の研磨中に、インシトゥ・分光モニタシステムで前記基板をモニタして、複数の測定されたスペクトルを生成すること、
前記複数の測定されたスペクトルを前記訓練された機械学習モデルに渡して、複数の特徴値を生成すること、及び
前記複数の特徴値に基づいて、前記研磨システムの少なくとも1つの処理パラメータを制御することを更に含む、条項2に記載の方法。
[条項4]
前記少なくとも1つの処理パラメータを制御することが、研磨を停止すること及び/又はキャリヤヘッド圧力を調整することを含む、条項3に記載の方法。
[条項5]
非一過性のコンピュータ可読媒体内に有形に具現化された、基板の処理を制御するためのコンピュータプログラム製品であって、プロセッサに、
複数の組の訓練データを受け取ることであって、各組の訓練データが、複数の訓練スペクトル、前記複数の訓練スペクトルからの各訓練スペクトルについてのタイムスタンプ、並びに前記複数の訓練スペクトルについての開始特徴値及び/又は終了特徴値を含む、複数の組の訓練データを受け取ること、
複数の機械学習モデルを記憶することであって、各機械学習モデルが、少なくとも1つの異なるハイパーパラメータを提供する、複数の機械学習モデルを記憶すること、
複数の物理プロセスモデルを記憶することであって、各物理プロセスモデルが、異なる時間の関数及び/又は異なる物理プロセスパラメータとして特徴値を生成するための、異なる関数を提供する、複数の物理プロセスモデルを記憶すること、
前記複数の機械学習モデルからの機械学習モデルの選択及び前記複数の物理プロセスモデルからの物理プロセスモデルの選択を受け取って、選択された機械学習モデルと選択された物理プロセスモデルの組み合わせを提供すること、
前記選択された機械学習モデルに従って実装された機械学習モデルを生成すること、
各組の訓練データ内の各訓練スペクトルについて、前記訓練スペクトルについての前記タイムスタンプ、前記組の訓練データについての前記開始特徴値及び/又は前記終了特徴値、並びに前記選択された物理プロセスモデルに基づいて特徴値を計算し、それによって、前記複数の訓練スペクトルのうちの1つに関連付けられた各訓練特徴値を有する複数の訓練特徴値を生成すること、
前記複数の訓練特徴値及び前記複数の訓練スペクトルを使用して、前記実装された機械学習モデルを訓練して、訓練された機械学習モデルを生成すること、並びに
前記訓練された機械学習モデルを基板処理システムの処理制御システムに渡すこと、を実行させるための指示命令を含む、コンピュータプログラム製品。
[条項6]
前記特徴値が、前記基板上の層についての厚さ値を含む、条項5に記載のコンピュータプログラム製品。
[条項7]
前記複数の物理プロセスモデルの一部が、時間の線形関数を含み、前記複数の物理プロセスモデルの一部が、時間の非線形関数を含む、条項5に記載のコンピュータプログラム製品。
[条項8]
前記物理プロセスパラメータが、パターン密度、開始ステップ高さ、臨界ステップ高さ、及びプロセス選択性のうちの1以上を含む、条項5に記載のコンピュータプログラム製品。
[条項9]
前記選択された機械学習モデルについての少なくとも1つのハイパーパラメータ値を受け取り、前記選択された物理プロセスモデルについての物理パラメータ値を受け取るための指示命令を含み、前記実装された機械学習モデルを生成するための前記指示命令が、前記選択された機械学習モデル及び前記少なくとも1つのハイパーパラメータ値に従って、前記実装された機械学習モデルを生成するための指示命令を含み、前記特徴値を計算するための前記指示命令が、前記物理パラメータ値に基づいて前記特徴値を計算するための指示命令を含む、条項5に記載のコンピュータプログラム製品。
[条項10]
半導体製造システムであって、
複数の研磨システムであって、各研磨システムが、研磨パッドを保持するための支持体、前記研磨パッドに対して基板を保持するためのキャリヤ、前記基板と前記研磨パッドとの間で相対運動を起こさせるモータ、研磨中の前記基板の測定値のシーケンス及び前記測定値のシーケンス内の各測定値についてのタイムスタンプを生成するためのインシトゥ・モニタシステム、並びにコントローラを含む、複数の研磨システムを備え、
前記複数の研磨システムのうちの少なくとも1つの少なくとも1つのコントローラが、前記複数の研磨システムのうちの1以上に、一連の訓練基板を研磨させるように構成され、
前記複数の研磨システムからの1以上のシステムの1以上のコントローラが、訓練された機械学習モデルを受け取り、前記1以上のシステムからの前記研磨システムに一連のデバイス基板を研磨させ、前記1以上のシステムの前記インシトゥ・モニタシステムから前記デバイス基板の測定値のシーケンスを受け取り、前記測定値のシーケンス及び前記訓練された機械学習モデルに基づいて特徴値のシーケンスを生成し、前記特徴値のシーケンスに基づいて少なくとも1つの研磨制御パラメータを制御するように構成され、
前記半導体製造システムが更に、
前記一連の訓練基板のそれぞれについての開始特徴値及び/又は終了特徴値を生成するための、インライン又はスタンドアロン計測システム、並びに
1以上のプロセッサ、及び指示命令を含むコンピュータプログラム製品を記憶した非一過性のコンピュータ可読媒体を備えた、アルゴリズム生成プラットフォームを備え、前記指示命令が、前記1以上のプロセッサに、
各訓練基板について、前記訓練基板を研磨するために使用される前記複数の研磨システムのうちの1以上の前記インシトゥ・モニタシステムから、前記訓練基板の研磨中に生成された複数の訓練スペクトル及び前記複数の訓練スペクトルからの各訓練スペクトルについてのタイムスタンプを受け取ること、
各訓練基板について、前記インライン又はスタンドアロン計測システムから、前記訓練基板についての前記開始特徴値及び/又は前記終了特徴値を受け取ること、
複数の組の訓練データを記憶することであって、各組の訓練データが、前記訓練基板からの前記複数の訓練スペクトル、前記複数の訓練スペクトルからの各訓練スペクトルについての前記タイムスタンプ、並びに前記訓練基板についての前記開始特徴値及び/又は前記終了特徴値を含む、複数の組の訓練データを記憶すること、
複数の機械学習モデルを記憶することであって、各機械学習モデルが、少なくとも1つの異なるハイパーパラメータを提供する、複数の機械学習モデルを記憶すること、
複数の物理プロセスモデルを記憶することであって、各物理プロセスモデルが、異なる時間の関数及び/又は異なる物理プロセスパラメータとして特徴値を生成するための、異なる関数を提供する、複数の物理プロセスモデルを記憶すること、
前記複数の機械学習モデルからの機械学習モデルの選択及び前記複数の物理プロセスモデルからの物理プロセスモデルの選択を受け取って、選択された機械学習モデルと選択された物理プロセスモデルの組み合わせを提供すること、
前記選択された機械学習モデルについての少なくとも1つのハイパーパラメータ値及び前記選択された物理プロセスモデルについての少なくとも1つの物理パラメータ値を受け取ること、
前記選択された機械学習モデル及び前記少なくとも1つのハイパーパラメータ値に従って実装された機械学習モデルを生成すること、
各組の訓練データ内の各訓練スペクトルについて、前記訓練スペクトルについての前記タイムスタンプ、前記組の訓練データについての前記開始特徴値及び/又は前記終了特徴値、前記物理パラメータ値、並びに前記選択された物理プロセスモデルに基づいて特徴値を計算し、それによって、前記複数の訓練スペクトルのうちの1つに関連付けられた各訓練特徴値を有する複数の訓練特徴値を生成すること、
前記複数の訓練特徴値及び前記複数の訓練スペクトルを使用して、前記実装された機械学習モデルを訓練して、訓練された機械学習モデルを生成すること、並びに
前記訓練された機械学習モデルを前記デバイス基板の研磨の制御のために前記1以上の研磨システムの前記コントローラに渡すこと、を実行させる、システム。
[条項11]
前記アルゴリズム生成プラットフォームが、前記複数の研磨システムのうちの2以上のそれぞれから、前記訓練基板からの複数の訓練スペクトル、及び前記複数の訓練スペクトルからの各訓練スペクトルについての前記タイムスタンプを受け取るように構成されている、条項10に記載のシステム。
[条項12]
前記アルゴリズム生成プラットフォームが、複数の訓練された機械学習モデルを提供するデータを記憶するように構成されている、条項11に記載のシステム。
[条項13]
前記アルゴリズム生成プラットフォームが、複数の訓練された機械学習モデルのうちの1つを受け取り又は選択し、前記選択された訓練された機械学習モデルを前記コントローラに渡すように構成されている、条項12に記載のシステム。
[条項14]
1以上のプロセッサ、及び複数のデバイス基板のそれぞれを特徴付けるデータを記憶するための指示命令を含んだコンピュータプログラム製品を記憶した非一過性のコンピュータ可読媒体を含む、基板追跡システムを更に備える、条項13に記載のシステム。
[条項15]
前記アルゴリズム生成プラットフォームが、前記基板追跡システムからデバイス基板を特徴付けるデータを受け取り、前記特徴付けるデータに基づいて、前記複数の訓練された機械学習モデルから訓練された機械学習モデルを選択するように構成されている、条項14に記載のシステム。
[条項16]
研磨システムを動作させる方法であって、
機械学習アルゴリズムを使用して複数のモデルを訓練して、複数の訓練されたモデルを生成することであって、各訓練されたモデルが、モニタリング信号に基づいて基板の層の特性値を特定するように構成されている、複数の訓練されたモデルを生成すること、
前記複数の訓練されたモデルを記憶すること、
処理されるべき基板の特性を示すデータを受け取ること、
前記データに基づいて前記複数の訓練されたモデルのうちの1つを選択すること、及び
前記選択された訓練されたモデルを処理システムに渡すことを含む、方法。
[条項17]
半導体処理システム内で前記基板の前記層を処理すること、
前記層の処理中に、インシトゥ・モニタシステムで前記基板をモニタし、前記インシトゥ・モニタシステムからの信号を生成すること、
前記信号を前記訓練されたモデルに渡して、前記層の厚さの測定値を生成すること、及び
前記厚さの測定値に基づいて前記処理システム用の1以上の制御信号を生成することを含む、条項16に記載の方法。
[条項18]
モデルの1以上のハイパーパラメータを取得すること、
前記ハイパーパラメータに基づいて生の予測モデルを生成すること、
前記モデルについての訓練データを取得すること、及び
前記訓練データを使用して前記生の予測モデルを訓練して、前記モデルを生成することを更に含む、条項17に記載の方法。
[条項19]
研磨システムであって、
研磨パッドを支持するためのプラテン、
前記研磨パッドと接触するように基板を保持するためのキャリヤヘッド、
研磨中に前記基板をモニタするためのインシトゥ・モニタシステム、
前記インシトゥ・モニタシステムからモデル及び信号を受け取り、前記モデル及び前記信号から特性値を特定するように構成されたプロセス制御システム、並びに
機械学習アルゴリズムを使用して複数のモデルを訓練して、複数の訓練されたモデルを生成するように構成されたモデル生成器であって、各訓練されたモデルが、モニタリング信号に基づいて基板の層の特性値を特定するように構成され、前記モデル生成器が更に、前記複数の訓練されたモデルを記憶し、使用するために前記複数のモデルのうちの1つを選択し、前記選択された訓練されたモデルを前記プロセス制御システムに渡すように構成されている、モデル生成器を備える、システム。
[条項20]
非一過性のコンピュータ可読媒体内に有形に具現化された、基板の処理を制御するためのコンピュータプログラム製品であって、プロセッサに、
機械学習アルゴリズムを使用して複数のモデルを訓練して、複数の訓練されたモデルを生成することであって、各訓練されたモデルが、モニタリング信号に基づいて基板の層の特性値を特定するように構成されている、複数の訓練されたモデルを生成すること、
前記複数の訓練されたモデルを記憶すること、
処理されるべき基板の特性を示すデータを受け取ること、
前記データに基づいて前記複数の訓練されたモデルのうちの1つを選択すること、及び
前記選択された訓練されたモデルを処理システムに渡すこと、を実行させるための指示命令を含む、コンピュータプログラム製品。