(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-20
(45)【発行日】2024-05-28
(54)【発明の名称】オン・ウェーハ測定を予測するための多段LSTMを用いたツール制御
(51)【国際特許分類】
H01L 21/66 20060101AFI20240521BHJP
G06N 3/04 20230101ALI20240521BHJP
G05B 13/02 20060101ALI20240521BHJP
H01L 21/02 20060101ALI20240521BHJP
【FI】
H01L21/66 Z
G06N3/04
G05B13/02 L
H01L21/02 Z
(21)【出願番号】P 2022521521
(86)(22)【出願日】2020-09-09
(86)【国際出願番号】 IB2020058381
(87)【国際公開番号】W WO2021069984
(87)【国際公開日】2021-04-15
【審査請求日】2023-02-24
(32)【優先日】2019-10-08
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】390009531
【氏名又は名称】インターナショナル・ビジネス・マシーンズ・コーポレーション
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MACHINES CORPORATION
【住所又は居所原語表記】New Orchard Road, Armonk, New York 10504, United States of America
(74)【代理人】
【識別番号】100112690
【氏名又は名称】太佐 種一
(72)【発明者】
【氏名】ファン、ティエン、ズン
(72)【発明者】
【氏名】ベースマン、ロバート
(72)【発明者】
【氏名】ムラリダ、ラマチャンドラン
(72)【発明者】
【氏名】ティプー、ファテー
(72)【発明者】
【氏名】グェン、ナム
【審査官】庄司 一隆
(56)【参考文献】
【文献】特開平06-348679(JP,A)
【文献】米国特許第05467883(US,A)
【文献】特開2006-024195(JP,A)
【文献】特表2005-536887(JP,A)
【文献】米国特許出願公開第2004/0040001(US,A1)
【文献】特表2006-506800(JP,A)
【文献】国際公開第03/081663(WO,A2)
【文献】特開2006-157029(JP,A)
【文献】特開2005-150340(JP,A)
【文献】特開2019-047100(JP,A)
【文献】特開2004-157029(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H01L 21/66
G06N 3/04
G05B 13/02
H01L 21/02
(57)【特許請求の範囲】
【請求項1】
製造工程の現行の工程ステップの間に製造工程をリアルタイムで制御する方法であって、
前記製造工程の以前の製品に関して得られた履歴的な工程後測定値を取得すること、
前記現行の工程ステップを以前に反復していた間に以前のワークピースに関して得られた履歴的な工程中測定値を取得すること、
ニューラル・ネットワークを訓練して少なくとも1つの前記履歴的な工程後測定値を予測することであって、対応する前記履歴的な工程中測定値に応答して、および前記予測される少なくとも1つの前記履歴的な工程後測定値に先立つ前記履歴的な工程後測定値のサブセットに応答して、予測すること、
前記現行の工程ステップの間に現在のワークピースに関する現在の工程中測定値を取得すること、
前記現在の工程中測定値および前記履歴的な工程後測定値を入力として前記ニューラル・ネットワークに与えることによって、前記現在のワークピースに対する未来の工程後測定値を予測すること、ならびに
前記未来の工程後測定値の予測に応答して、前記製造工程の少なくとも1つの制御可能な変数を調整すること
を含む方法。
【請求項2】
前記ニューラル・ネットワークは、前記現在の工程中測定値を入力として得て前記未来の工程後測定値のナイーブ予測を出力として生じる第1の長・短期記憶層を含む、請求項1に記載の方法。
【請求項3】
前記ニューラル・ネットワークは、履歴的な工程後測定値および前記工程後測定値の前記ナイーブ予測を入力として得て前記未来の工程後測定値の情報に基づいた予測を出力として生じる第2の長・短期記憶層を含む、請求項2に記載の方法。
【請求項4】
前記ナイーブ予測は、第1のナイーブ予測を含み、前記ニューラル・ネットワークは、前記現在のワークピースに関する前記現行の工程ステップに先立つ過去の工程ステップから工程中測定値を入力として得て前記未来の工程後測定値の第2のナイーブ予測を出力として生じる第2の長・短期記憶層を含む、請求項2に記載の方法。
【請求項5】
前記ニューラル・ネットワークは、前記第1のナイーブ予測、前記第2のナイーブ予測、および履歴的な工程後測定値を入力として得て前記未来の工程後測定値の情報に基づいた予測を出力として生じる第3の長・短期記憶層を含む、請求項4に記載の方法。
【請求項6】
前記少なくとも1つの制御可能な変数を調整することは、少なくとも1つの工程中測定値を繰り返し取得すること、および前記未来の工程後測定値を予測することを含む、請求項1に記載の方法。
【請求項7】
前記少なくとも1つの制御可能な変数を調整することは、前記少なくとも1つの制御可能な変数に対する前記未来の工程後測定値についての経験誤差関数と整合する前記少なくとも1つの制御可能な変数を変更することを含む、請求項6に記載の方法。
【請求項8】
コンピュータによって実行された際に、前記製造工程の現行の工程ステップの間に製造工程をリアルタイムで制御するための請求項1から7のいずれかに記載される方法を前記コンピュータに推進させる、コンピュータ実行可能な命令を具現化する、非一時的なコンピュータ可読媒体。
【請求項9】
コンピュータ実行可能な命令を具現化するメモリと
前記メモリに結合されており、前記製造工程の現行の工程ステップの間に製造工程をリアルタイムで制御するための請求項1から7のいずれかに記載される方法を推進するように前記コンピュータ実行可能な命令によって動作する、少なくとも1つのプロセッサと
を含む工程制御システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電気、電子、およびコンピュータ技術に関し、より具体的には、半導体デバイスの製造に関する。
【背景技術】
【0002】
半導体製造では、プロセス・ツールを制御するためにオン・ウェーハ測定が重要である。このような測定は、異なるツールから届くトレース・センサ・データのような物理的変数に依存する。しかし、鍵となる測定は、ウェーハが完全に製作された後にしか行うことができない。事後のウェーハ厚さに寄与する鍵となる状態の変数の測定を含む、工程中センサ・ネットワークからの観察は、センサ・ノイズ、材料中の固有の変動、機械的ノイズなど、偶然性の変動に起因する確率的なプロセスである。オン・ウェーハ測定を信頼性高く予測すること(すなわち、現在達成可能なものよりも精密かつ正確な方法で、確率的ノイズを遮るウェーハ厚さの実際の値に近似すること)は、重要な難題である。
【0003】
時系列データをモデル化するためのいくつかの深層学習モデルがある。しかし、これらを半導体の問題に対して効率的に適用することはできなかった。例えば、ARMAX、動的線形モデル、拡張カルマンフィルタなどの時系列データの状態の識別および予測のための統計モデルに関する文献は大量にある。以前の統計モデルの大部分は、線形化またはガウス分布仮定に基づく。
【発明の概要】
【0004】
本発明の原理は、オン・ウェーハ測定を予測するための多段LSTMを用いたツール制御のための技術を提供する。一態様では、製造工程の現行の工程ステップの間に製造工程をリアルタイムで制御するための例示的な方法は、その製造工程の以前の製品に関して得られる履歴的な工程後測定値を取得すること、および現行の工程ステップを以前に反復していた間に以前のワークピースに関して得られた履歴的な工程中測定値を取得することを含む。(本方法はまた、履歴的な工程後測定値および関連付けられた履歴的な工程中測定値から得られるデータを訓練することによって、ニューラル・ネットワークを訓練することも含む。)そして、本方法は、現行の工程ステップの間に現在のワークピースに関する現在の工程中測定値を取得することと、現在の工程中測定値および履歴的な工程後測定値を入力としてニューラル・ネットワークに与えることによって、現在のワークピースについて未来の工程後測定値を予測することと、未来の工程後測定値の予測に応答して、製造工程の少なくとも1つの制御可能な変数を調整することとを含む。
【0005】
本発明またはその要素の1つまたは複数の実施形態は、指示された方法ステップを推進するためのコンピュータ使用可能なプログラム・コードを有するコンピュータ可読記憶媒体を含むコンピュータ・プログラム製品の形態で実装することができる。さらに、本発明またはその要素の1つまたは複数の実施形態は、コンピュータ実行可能命令を具現化するメモリを含むシステム(または装置)の形態で実装することができ、少なくとも1つのプロセッサが、メモリに結合され、例示的な方法ステップを推進するための命令によって動作する。さらに別の態様では、本発明またはその要素の1つまたは複数の実施形態は、本明細書に記載される方法ステップの1つまたは複数を行うための手段の形態で実装することができ、この手段は、(i)ハードウェアモジュール、(ii)有形コンピュータ可読記憶媒体(または複数のそのような媒体)に格納され、ハードウェア・プロセッサ上で実装されるソフトウェア・モジュール、または(iii)(i)および(ii)の組合せを含むことができ、(i)~(iii)のいずれかは、本明細書に記載される特定の技術を実装する。
【0006】
本明細書に用いられる際に、アクションを「推進する」は、アクションを実施するか、アクションを容易にするか、アクションを実行するのを助けるか、またはアクションを実施させることを含む。このように、一例として、限定するものではないが、1つのプロセッサ上で実行する命令が、遠隔プロセッサ上で実行される命令によって行われるアクションを、実施されるアクションを引き起こすかまたは補助するために適切なデータまたはコマンドを送ることによって推進する可能性がある。疑義を避けるため、行為者がアクションを実施する以外のアクションを推進する場合には、やはりアクションは、あるエンティティまたはエンティティの組合せによって実施される。
【0007】
以上の観点から、本発明の技術は、実質的に有益な技術的効果を提供することができる。例えば、1つまたは複数の実施形態は、以下のうち1つまたは複数を提供する。
【0008】
ウェーハ製作中のウェーハ厚さまたは抵抗率を信頼性高く予測し、それによって、完成ウェーハの厚さをリアルタイムで調整する工程中ツール制御を可能とすること。
【0009】
製造工程中にリアルタイムで工程後測定値を信頼性高く予測し、それによって、工程後測定値を調整する工程中ツール制御を可能にすること。
【0010】
工程後測定値の信頼性の高い予測に応答してリアルタイムで工程を調整する能力に基づいて、ウェーハ厚さと他の工程後測定値との一貫性を向上させてウェーハを製作し、それゆえ結果として、従来技術と比較してさらに高品質のウェーハとさらに高品質の集積回路とをもたらすこと。
【0011】
本発明のこれらおよび他の特徴および利点は、添付図面に関連して読まれるものとなるその例示的な実施形態の以下の詳細な説明から明らかになってゆくものとなろう。
【図面の簡単な説明】
【0012】
【
図1】例示的な実施形態が適用可能な例示的な製造工程フローを概略的に示す図である。
【
図2】例示的な実施形態による制御工程をフローチャートで示す図である。
【
図3】例示的な実施形態によるニューラル・ネットワークを概略的に示す図である。
【
図4】例示的な実施形態による、
図3のニューラル・ネットワークを訓練する方法を概略的に示す図である。
【
図5】
図4の方法をフローチャートで示す図である。
【
図6】例示的な実施形態によるニューラル・ネットワークを概略的に示す図である。
【
図7】例示的な実施形態によるニューラル・ネットワークを概略的に示す図である。
【
図9】例示的な実施形態による制御工程を概略的に示す図である。
【
図10】本発明の1つまたは複数の態様もしくは要素またはその両方を実装するのに有用であり得るコンピュータ・システムを示す図である。
【発明を実施するための形態】
【0013】
1つまたは複数の実施形態は、履歴的なウェーハ測定値および工程中センサ・データを活用することによって工程後オン・ウェーハ測定値を予測するための、半導体製造における使用のための予測モデルに関する。例示的な工程中センサ・データは、温度、圧力、プラズマ流速、電流、および電圧を含む。1つまたは複数の実施形態では、基礎となるモデルは、混合ガウス確率分布から予測を標本抽出することのできる確率論的な多段長短期記憶(LSTM)システムである。工程中の工程後測定値を予測することにより、本発明の実施形態は、他の変数に関連する工程中信号に応答して工程後測定値を調整するリアルタイムのツール制御を可能にする。
【0014】
本発明の態様は、工程後測定値に対する深層学習ベースの予測モデルを開発することを含む。1つまたは複数の実施形態では、予測モデルは、現行の工程の反復について工程後測定値を予測するために、多層LSTMアーキテクチャを介して工程中センサ・データを工程後測定値の履歴と組み合わせる。1つまたは複数の実施形態では、予測モデルは、LSTMネットワークの出力を条件付き混合ガウスとしてモデル化する。
【0015】
1つまたは複数の実施形態では、予測モデルは、確率分布の予測のための無作為標本抽出法(例えば、モンテカルロ標本抽出)を採用し、次いで、予測された確率密度関数を工程制御システムまたは制御アクションのための制御オペレータに送信する。1つまたは複数の実施形態では、制御アクションは、最も確からしい予測測定値を最適化することに基づいて、1つまたは複数の工程パラメータを調整することを含む。例示的な工程パラメータ(制御可能な変数)としては、堆積工程の持続時間、堆積温度、プラズマ流速、プラズマ発生器の電圧または電流が挙げられる。
【0016】
図面を参照すると、
図1は、半導体ウェーハのための例示的な製造工程フロー100を示す。この例示的なシステムが半導体ウェーハを製作するが、実施形態は、他の製造システムにも同様に適用可能であり、その非限定的な例としては、鋼またはアルミニウム圧延機、自動化化学プロセスプラントなどがある。
【0017】
例示的な製造工程フロー100は、コンポーネント・アセンブリLLA、LLB、A、B、C、D、E、F、1、2、3、4、および5を含む装置内で行われる。コンポーネント・アセンブリの具体的な機能は、本発明の1つまたは複数の実施形態の範囲内では重要ではないが、工程フロー100は、コンポーネント・アセンブリLLAにおいて行われるステップs1と、次いでコンポーネント・アセンブリFにおいて行われるステップs2とを含むことに注目すべきである。また、コンポーネント・アセンブリBのステップs3と、コンポーネント・アセンブリ2のステップs4と、コンポーネント・アセンブリAのステップs5とが含まれている。ステップs5の後、完成ウェーハは工程フローを離れ、工程中測定値が取得される。様々な工程の間に、工程中測定値が取得される。工程後測定値の非限定的な例はウェーハ抵抗率である。工程中測定値の非限定的な例はプラズマ電圧、電流、温度、および圧力、ならびに材料の堆積またはエッチング中の経過時間である。
【0018】
図2は、例示的な実施形態による制御工程200をフローチャートで示す図である。工程s1・・・s5のそれぞれの間に、工程中測定値を202で取得し、それらの工程中測定値に基づいて204で工程後測定値を予測する。206では、工程後測定値の予測に応答して、この予測と工程後測定値の目標値との間の誤差分を減少させるように現在の工程ステップの少なくとも1つの制御可能な変数を調整する。
【0019】
図3は、例示的な実施形態による、単一の工程ステップのための工程中センサ信号から工程後測定値または目標変数を予測するために使用されるニューラル・ネットワーク300を概略的に示す。例えば、この単一の工程ステップは、化学的気相蒸着であってもよい。ニューラル・ネットワーク300は、工程中センサ信号x
1、・・・x
10、・・・x
M(時系列的であっても同時的であってもよい)を受け取る第1のLSTM層302を内蔵し、工程後の標的変数のナイーブ予測y
t’を生じる。なお、図面は、10個以上の工程中センサ信号を示しているが、1つまたは複数の実施形態は、10個未満の工程中センサ信号でも同等に機能する。また、ネットワーク300は、現行の予測y
t’とともに、目標変数y
t-L・・・y
t-1の履歴的な測定値を受け取る第2のLSTM層304を含む。任意選択的に、第2のLSTM層304はまた、予測の履歴y’
t-L・・・y’
t-1を受け取る。第2のLSTM層304は、その出力を全結合層(FCN)306に渡し、FCNは、測定値の履歴を考慮した条件付き混合ガウス確率分布として情報に基づいた予測y’’’
tを生じる。
【0020】
図4は、
図3のニューラル・ネットワーク300がどのように訓練されているかを概要400として示す図である。第1のLSTM層302について、履歴的な工程中測定値X
i(すなわち、x
1、・・・x
10、・・・x
M)を入力として提供し、一方で、履歴的な工程後測定値y
iを所望の出力として提供する。第2のLSTM層304およびFCN306を訓練するために、履歴的な工程後測定値y
t-L・・・y
i-1および履歴的な工程後予測y
i’(第1のLSTM層302から)を入力として提供するとともに、履歴的な工程後測定値y
iを所望の出力とする。1つまたは複数の実施形態では、LSTMおよびFCNの重みが各時間ステップで予測y
t’と実測値y
tとの間に許容可能なレベルの誤差(誤差分)を生じる値に収束するまで、時間ステップiがt-Lからt-1に繰り返し走るのと同時に、第1および第2のLSTM層302、304を併せて訓練する。非限定的な例として、許容誤差は、目標変数に対するエンドユーザの製造公差に依存して、6%、3%、1%、0.5%、または0.01%であってもよい。
【0021】
図5は、
図4の概要と一致する方法500をフローチャートで示す。502では、履歴的な工程後測定値Yを取得する。504では、履歴的な工程中測定値x
1、・・・x
10・・・x
Mを取得する。506では、履歴的な工程後測定値y
t-L、・・・y
t-1を目標値として用いて、履歴的な工程中測定値Xに関しニューラル・ネットワークの第1のLSTM層を訓練し、同時に、最新の履歴的な工程後測定値y
tを目標値として用いて、履歴的な工程後測定値と工程後測定値の履歴的な予測y’
tに関しニューラル・ネットワークの第2のLSTM層を訓練する。
【0022】
図6は、例示的な実施形態による、複数の工程ステップのための工程中センサ信号から工程後測定値または目標変数を予測するために使用されるさらに複雑なニューラル・ネットワーク600を概略的に示す。
図6は、例示的な実施形態による、複数の工程ステップのための工程中センサ信号から工程後測定値または目標変数を予測するために使用されるさらに複雑なニューラル・ネットワーク600を概略的に示す。例えば、第1の工程ステップをプラズマ蒸着とすることができ、第2の工程ステップを原子層堆積とすることができる。ニューラル・ネットワーク600は、第1の工程からセンサ信号x
1・・・x
10・・・x
Mを受信する第1のLSTM層602と、第1の工程により相前後して走る第2の工程からセンサ信号z
1・・・z
10・・・z
Sを受け取る第2のLSTM層603とを内蔵する。なお、図面は第2の工程からの10個以上のセンサ信号を示しているが、1つまたは複数の実施形態は、10個未満の工程中センサ信号により同等に機能的である。LSTM層602、603のそれぞれは、目標変数に対しそれぞれの予測y
t’、y
t”を生じる。予測y
t’およびy
t”は第3のLSTM層604に入力され、第3のLSTM層604はまた、目標変数測定値y
t-L・・・y
t-1の履歴を入力とする。第3のLSTM層604は、その出力を全結合層606に通過させ、全結合層606は、条件付き混合ガウス確率分布として最終的な予測y’’’tを生成する。
【0023】
ニューラル・ネットワーク600は、例えば、ニューラル・ネットワーク300と同様に訓練される。
【0024】
図7は、例示的な実施形態による、工程の外部の信号Uと組み合わされた単一の工程ステップのための工程中センサ信号x
1・・・x
10・・・x
Mから工程後測定値または目標変数を予測するために使用される、概略的な別のニューラル・ネットワーク700を示す。例えば、外部信号を工程ステップに入るウェーハの限界寸法とすることができつつ、工程ステップをリソグラフィとすることができる。ニューラル・ネットワーク700は、第1のLSTM層302と、第2のLSTM層304と、全結合層(FCN)(706)とを含む。ニューラル・ネットワーク700は、FCN706が第2のLSTM層304の出力のみならず外部信号に対する値Uをも入力として受け取るように構成される点で、ニューラル・ネットワーク300とは異なる。
【0025】
ニューラル・ネットワーク700は、例えば、ニューラル・ネットワーク300または600と同様に訓練される。さらに、FCN306は、履歴的な測定yiを所望の出力として、外部信号値Uおよび履歴的な予測y’iを入力として訓練される。
【0026】
このように、1つまたは複数の実施形態は、工程中センサ・データXとの組合せで、目標変数の履歴的な測定値から目標変数Yの分布を学習する。
Yt = g (Xt, yt-1, yt-2,…., yt-L)
【0027】
このような実施形態は、Ytの条件付き分布
P(Yt | Xt, yt-1, yt-2,…., yt-L),
を以下の混合ガウスとしてモデル化する。
【0028】
【0029】
図8は、例示的な混合ガウス確率分布800を実線で示す。破線は、単一のガウス分布802、804、806を示す。混合ガウス800は、3つの単一のガウシアンから構成される。
【0030】
図9は、例示的な実施形態に従って実装される制御工程900の概観を概略的に示す。
図1の製造工程フロー100から、リアルタイムで(
図2の202のように)工程中測定値x
1・・・x
Mを得る。深層学習モデル(例えば、ニューラル・ネットワーク300、600、または700)を工程中測定値に適用して、工程後測定値(目標変数)の予測y’’’
tを生じる(
図2の204のように)。予測y’’’tは、目標変数が所望の値に近づくように、製造工程フロー100をリアルタイムで(
図2の206のように)調整する制御システム902に供給される。1つまたは複数の実施形態では、制御システム902は、工程後測定値の変化をもたらすことが経験的に実証された工程パラメータを調整してもよい。例えば、工程パラメータは、工程パラメータに対する1つまたは複数の工程中測定値についての経験誤差関数に従って調整されてもよい。あるいは、工程パラメータは、工程パラメータに対する工程後測定値についての経験誤差関数に従って調整されてもよい。1つまたは複数の実施形態では、工程パラメータに新たな調整を結果として生じ得る新たな予測を得るために、さらに別の工程中測定値が得られてもよく、学習モデル300、600、または700が再度適用されてもよい。1つまたは複数の実施形態では、工程パラメータの調整のために制御システム902を動作させる際に、人間の熟練者が関与してもよい。
【0031】
このように、本発明の実施形態によって生じた予測に基づいて、製造工程オペレータは、工程の結果が所望の仕様に適合しそうか否かの理解を強めることができる。工程の結果が仕様に適合しそうにない場合には、本発明の実施形態により、工程オペレータが工程をリアルタイムで(すなわち、工程が進行している間に)調整することが可能になる。
【0032】
以上の考察を考慮すると、概して、本発明の一態様による、製造工程の現在の工程ステップ中に製造工程をリアルタイムで制御するための例示的な方法は、502ではその製造工程の以前の製品で取得された履歴的な工程後測定値Yを取得すること、504では現行の工程ステップを以前に反復していた間に以前のワークピースに関して得られた履歴的な工程中測定値Xを取得すること、506ではニューラル・ネットワークを訓練して少なくとも1つの履歴的な工程後測定値を予測することであって、対応する履歴的な工程中測定値に応答して、および予測される少なくとも1つの履歴的な工程後測定値に先立つ履歴的な工程後測定値のサブセットに応答して、予測すること、202では現行の工程ステップの間に現在のワークピースに関する現在の工程中測定値を取得すること、204では現在の工程中測定値および履歴的な工程後測定値を入力としてニューラル・ネットワークに与えることによって、現在のワークピースに対する未来の工程後測定値を予測すること、ならびに206では未来の工程後測定値の予測に応答して、製造工程の少なくとも1つの制御可能な変数を調整することを含む。
【0033】
1つまたは複数の実施形態では、ニューラル・ネットワークは、現在の工程ステップからの工程中測定値Xを入力として得て未来の工程後測定値の(第1の)ナイーブ予測y’tを出力として生じる、第1の長・短期記憶層302を含んでいる。さらに、ニューラル・ネットワークは、履歴的な工程後測定値yt-L、・・・yt-1および工程後測定値の(第1の)ナイーブ予測y’tを入力として得て、情報に基づいた未来の工程後測定値予測y’’’tを出力として生じる、第2の長・短期記憶層304を含むことがある。あるいは、ニューラル・ネットワークは、過去の工程ステップから工程中測定値z1・・・z10・・・zSを入力として得て、未来の工程後測定値の第2のナイーブ予測y’’tを出力として生じる、第2の長・短期記憶層603を含むことがある。1つまたは複数の実施形態では、ニューラル・ネットワークは、第1のナイーブ予測、第2のナイーブ予測、および履歴的な工程後測定値を入力として得て、情報に基づいた未来の工程後測定値予測y’’’tを出力として生じる、第3の長・短期記憶層604を含むことがある。
【0034】
1つまたは複数の実施形態では、少なくとも1つの制御可能変数を調整することは、少なくとも1つの工程中測定値を繰り返し取得すること、および未来の工程後測定値を予測することを含む。例えば、工程ステップの実装中にステップ202・・・206を繰り返してもよい。少なくとも1つの制御可能な変数を調整することは、少なくとも1つの制御可能な変数に対する工程後測定値についての経験誤差関数と整合する少なくとも1つの制御可能な変数を変更することを含む。
【0035】
本発明の1つまたは複数の実施形態またはその要素は、メモリとメモリに結合されており例示的な方法ステップを推進するように動作する少なくとも1つのプロセッサとを含む装置の形態で、または、コンピュータによって実行されるとコンピュータに例示的な方法ステップを推進させる、コンピュータ実行可能な命令を具現化する非一時的なコンピュータ可読媒体の形態で、実装することができる。
【0036】
図10は、本発明の1つまたは複数の態様もしくは要素またはその両方を実装するのに有用であり得る工程制御システム10を示す図である。製造工程制御システム10では、多数の他の汎用または専用のコンピューティング・システム環境または構成で動作するコンピュータ・システム/サーバ12がある。コンピュータ・システム/サーバ12と共に使用するのに適し得る周知のコンピューティング・システム、環境、もしくは構成、またはそれらの組合せの例としては、以下に限定されないが、パーソナル・コンピュータ・システム、サーバ・コンピュータ・システム、シン・クライアント、シック・クライアント、ハンドヘルドまたはラップトップ・デバイス、マルチプロセッサ・システム、マイクロプロセッサベース・システム、セット・トップ・ボックス、プログラマブル・コンシューマ・エレクトロニクス、ネットワークPC、ミニコンピュータ・システム、メインフレーム・コンピュータ・システム、および前記システムまたはデバイスのいずれかを含む分散型クラウド・コンピューティング環境などが挙げられる。
【0037】
コンピュータ・システム/サーバ12は、コンピュータ・システムによって実行されるコンピュータ・システム実行可能な命令、例えばプログラム・モジュールなどの一般的なコンテキストで記述されてもよい。一般に、プログラム・モジュールは、特定のタスクを実行するかまたは特定の抽象的なデータタイプを実装するルーチン、プログラム、オブジェクト、コンポーネント、ロジック、データ構造などを含む。コンピュータ・システム/サーバ12は、通信ネットワークを介してリンクされた遠隔処理デバイスによってタスクが実行される分散型クラウド・コンピューティング環境で実践されてもよい。分散型クラウド・コンピューティング環境では、プログラム・モジュールは、メモリ・ストレージ・デバイスを含むローカルおよびリモートの両方のコンピュータ・システム記憶媒体に位置していてもよい。
【0038】
図10に示すように、製造工程制御システム10におけるコンピュータ・システム/サーバ12は、汎用コンピューティング・デバイスの形態で示されている。コンピュータ・システム/サーバ12のコンポーネントは、1つまたは複数のプロセッサまたは処理ユニット16と、システム・メモリ28と、システム・メモリ28を含む様々なシステム・コンポーネントをプロセッサ16に結合するバス18とを含むが、これらに限定されない。
【0039】
バス18は、メモリバスまたはメモリコントローラと、周辺バスと、加速グラフィックス・ポートと、種々のバス・アーキテクチャのうちいずれかを使用するプロセッサまたはローカル・バスとを含む、いくつかのタイプのバス構造のいずれか1つまたは複数を表す。例として、および限定なく、このようなアーキテクチャとしては、業界標準アーキテクチャ(ISA)バス、マイクロチャネル・アーキテクチャ(MCA)バス、拡張ISA(EISA)バス、ビデオ・エレクトロニクス規格協会(VESA)ローカル・バス、および周辺コンポーネント相互接続(PCI)バスが挙げられる。
【0040】
コンピュータ・システム/サーバ12は、典型的には、種々のコンピュータ・システム可読媒体を含む。このような媒体は、コンピュータ・システム/サーバ12によってアクセス可能な任意の利用可能な媒体であってもよく、揮発性媒体と不揮発性媒体との両方、取り外し可能な媒体と取り外し不能な媒体との両方を含む。
【0041】
システム・メモリ28は、ランダム・アクセス・メモリ(RAM)30もしくはキャッシュ・メモリ32またはその両方などの揮発性メモリの形態のコンピュータ・システム可読媒体を含むことができる。コンピュータ・システム/サーバ12は、さらに、他の取り外し可能/不能な揮発性/不揮発性のコンピュータ・システム記憶媒体を含むことができる。一例に過ぎないが、記憶システム34を、取り外し不能な不揮発性磁気媒体(図示せず、典型的には「ハード・ドライブ」と呼ばれる)からの読み出しおよびそれへの書き込みのために提供することができる。図示されていないが、取り外し可能な不揮発性の磁気ディスク(例えば、「フロッピー・ディスク」)、およびCD-ROM、DVD-ROM、または他の光学ディスクなどの取り外し可能な不揮発性光学ディスクから読み出すかまたはそれに書き込むための光学ディスクドライブを提供することができる。このような場合、それぞれを、1つまたは複数のデータ媒体インターフェースによってバス18に接続することができる。下記にさらに図示し記載するように、メモリ28は、本発明の実施形態の機能を実行するように構成されている一連の(例えば、少なくとも1つの)プログラム・モジュールを有する少なくとも1つのプログラム製品を含むことがある。
【0042】
プログラム/ユーティリティ40は、一連の(少なくとも1つの)プログラム・モジュール42を有し、一例としてメモリ28に格納されてもよく、限定はないが同様にオペレーティング・システム、1つまたは複数のアプリケーション・プログラム、他のプログラム・モジュール、およびプログラム・データに格納されてもよい。オペレーティング・システム、1つまたは複数のアプリケーション・プログラム、他のプログラム・モジュール、およびプログラム・データまたはそれらのいくつかの組合せのそれぞれは、ネットワーキング環境の実装を含んでいてもよい。プログラム・モジュール42は、概して、本明細書に記載される本発明の実施形態の機能もしくは方法論またはその両方を実施する。
【0043】
コンピュータ・システム/サーバ12はまた、キーボード、ポインティング・デバイス、ディスプレイ24などの1つもしくは複数の外部デバイス14と、ユーザがコンピュータ・システム/サーバ12と対話することを可能にする1つもしくは複数のデバイスと、またはコンピュータ・システム/サーバ12が半導体fabツール・チャンバ・コントローラのような1つまたは複数の他のコンピューティング・デバイスと通信することを可能にする任意のデバイス(例えば、ネットワーク・カード、モデムなど)と、またはそれらの組合せと、通信することもできる。このような通信は、入力/出力(I/O)インターフェース22を介して起こり得る。さらに、コンピュータ・システム/サーバ12は、ローカル・エリア・ネットワーク(LAN)、一般広域ネットワーク(WAN)、もしくは公衆ネットワーク(例えば、インターネット)、またはそれらの組合せなどの1つまたは複数のネットワークと、ネットワーク・アダプタ20を介して通信することができる。図示のように、ネットワーク・アダプタ20は、バス18を介してコンピュータ・システム/サーバ12の他のコンポーネントと通信する。示されていないが、他のハードウェアもしくはソフトウェアまたはその両方のコンポーネントを、コンピュータ・システム/サーバ12と併せて使用することができることを理解するべきである。例としては、以下に限定されないが、マイクロコード、デバイス・ドライバ、冗長処理ユニット、および外部ディスク・ドライブ・アレイ、RAIDシステム、テープ・ドライブ、およびデータ・アーカイブ・ストレージ・システムなどが挙げられる。一部の例では、工程制御も、ネットワーク・アダプタ20を介して起こり得る。
【0044】
ゆえに、1つまたは複数の実施形態は、汎用コンピュータまたはワークステーション上で実行されるソフトウェアを利用することができる。
図10を参照すると、このような実装は、例えば、プロセッサ16と、メモリ28と、ディスプレイ24およびキーボード、ポインティング・デバイスなどの外部装置14に対する入力/出力インターフェース22とを採用する可能性がある。本明細書に用いられる際の用語「プロセッサ」は、例えば、CPU(中央処理装置)もしくは他の形式の処理回路またはその両方を含む任意の処理デバイスを含むことを意図されている。さらに、用語「プロセッサ」は、1つを超える個々のプロセッサを指し得る。用語「メモリ」は、プロセッサまたはCPUに関連付けられたメモリ、例えば、RAM(ランダム・アクセス・メモリ)30、ROM(リード・オンリ・メモリ)、固定メモリ・デバイス(例えば、ハード・ドライブ34)、取り外し可能なメモリ・デバイス(例えば、ディスケット)、フラッシュ・メモリなどを含むことが意図されている。さらに、本明細書に用いられる際の語句「入力/出力インターフェース」は、例えば、処理ユニット(例えばマウス)にデータを入力するための1つまたは複数の機構との、および処理ユニット(例えばプリンタ)に関連付けられた結果を提供するための1つまたは複数の機構とのインターフェースを意図されている。プロセッサ16、メモリ28、および入力/出力インターフェース22は、例えば、データ処理ユニット12の一部としてバス18を介して相互接続することができる。適切な相互接続、例えばバス18を介した接続は、コンピュータ・ネットワークとのインターフェースに提供することができるネットワーク・カードなどのネットワーク・インターフェース20に、および適切な媒体とのインターフェースに提供することができるディスケットまたはCD-ROMドライブなどのメディア・インターフェースに、提供することもできる。
【0045】
したがって、本明細書に記載されるように、本発明の方法論を実行するための命令またはコードを含むコンピュータ・ソフトウェアは、1つまたは複数の関連するメモリ・デバイス(例えば、ROM、固定または取り外し可能なメモリ)を格納することができ、利用する準備ができた際には、一部または全体に(例えば、RAM内に)ロードされてCPUによって実装される。このようなソフトウェアには、ファームウェア、常駐ソフトウェア、マイクロコードなどが含まれるが、これらに限定されない。
【0046】
プログラム・コードを格納もしく実行またはその両方とするのに適したデータ処理システムは、システムバス18を通じてメモリ要素28に直接または間接的に結合された少なくとも1つのプロセッサ16を含むものとなる。メモリ要素は、プログラム・コードの実際の実装中に採用されるローカル・メモリと、バルク・ストレージと、実装中にバルク・ストレージからコードが読み出されなければならない回数を減少させるために少なくともいくつかのプログラム・コードの一時的なストレージを提供するキャッシュ・メモリ32とを含むことができる。
【0047】
入力/出力またはI/Oデバイス(キーボード、ディスプレイ、ポインティング・デバイスなどを含むがこれらに限定されない)は、直接的にまたは介在するI/Oコントローラを介してのどちらかで、システムに結合することができる。
【0048】
ネットワーク・アダプタ20はまた、データ処理システムが介在するプライベート・ネットワークまたは公衆ネットワークを介して他のデータ処理システムまたは遠隔プリンタまたはストレージ・デバイスに結合されてゆくことが可能になるように、システムに結合されてもよい。モデム、ケーブル・モデム、およびイーサネット・カードは、ごく少数の現行で利用可能なタイプのネットワーク・アダプタである。
【0049】
特許請求の範囲を含めて、本明細書に用いられる際に、「サーバ」は、サーバ・プログラムを実行する物理的データ処理システム(例えば、
図10に示すシステム12)を含む。このような物理サーバは、ディスプレイおよびキーボードを含んでいてもいなくてもよいことが理解されよう。
【0050】
1つまたは複数の実施形態は、クラウドまたは仮想マシン環境のコンテキストにおいて少なくとも部分的に実装され得るが、これは例示的かつ非限定的である。
【0051】
本明細書に記載の任意の方法が、コンピュータ可読記憶媒体上に具現化された別個のソフトウェア・モジュールを含むシステムを提供する追加のステップを含むことができることに留意するべきである。すなわち、モジュールは、例えば、ブロック図に図示されているかもしくは本明細書に記載されているかまたはその両方である適切な要素のいずれかまたは全てを含むことができ、一例としてかつ限定はないが、記載されているモジュール/ブロックもしくはサブモジュール/サブブロックまたはそれらの組合せのうち1つまたはいくつかまたは全てを含むことができる。この方法ステップは、次いで、上述されるように、システムの別個のソフトウェア・モジュールもしくはサブモジュールまたはその両方を使用して実施することができ、16などの1つまたは複数のハードウェア・プロセッサ上で実行され得る。さらに、コンピュータ・プログラム製品は、別個のソフトウェア・モジュールを有するシステムの提供を含む本明細書に記載の1つまたは複数の方法ステップを実施するよう実装されるように適合されたコードを有する、コンピュータ可読記憶媒体を含むことができる。
【0052】
例示的なシステムおよび製品の詳細
【0053】
本発明は、任意の可能な技術的詳細レベルの統合におけるシステム、方法、もしくはコンピュータ・プログラム製品、またはそれらの組合せであり得る。コンピュータ・プログラム製品は、プロセッサに本発明の態様を行わせるためのコンピュータ可読プログラム命令をその上に有するコンピュータ可読記憶媒体(または複数の媒体)を含んでいてもよい。
【0054】
コンピュータ可読記憶媒体は、命令実行デバイスによる使用のための命令を保持および格納することができる有形デバイスとすることができる。コンピュータ可読記憶媒体は、以下に限定されないが、例えば、電子記憶デバイス、磁気記憶デバイス、光記憶デバイス、電磁記憶デバイス、半導体記憶デバイス、または前述の任意の適した組合せとしてよい。コンピュータ可読記憶媒体のより具体的な例の非網羅的な一覧としては、ポータブル・コンピュータ・ディスケット、ハードディスク、ランダム・アクセス・メモリ(RAM)、読出し専用メモリ(ROM)、消去可能なプログラム可能な読出し専用メモリ(EPROMまたはフラッシュ・メモリ)、スタティック・ランダム・アクセス・メモリ(SRAM)、ポータブル・コンパクト・ディスク読出し専用メモリ(CD-ROM)、デジタル汎用ディスク(DVD)、メモリ・スティック、フロッピー・ディスク、機械的に符号化されたデバイス、例えば、命令を上に記録したパンチ・カードまたは溝内の隆起構造など、および前述の任意の適切な組合せが挙げられる。コンピュータ可読記憶媒体は、本明細書で使用される際に、それ自体が電波または他の自由に伝搬する電磁波、導波管または他の伝送媒体(例えば、光ファイバ・ケーブルを通る光パルス)を伝搬する電磁波、またはワイヤを介して伝送される電気信号などの一時的な信号であるものと解釈されるべきではない。
【0055】
本明細書に記載のコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体から各演算/処理デバイスに、またはネットワーク、例えば、インターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、もしくは無線ネットワーク、またはそれらの組合せを介して外部コンピュータまたは外部記憶装置に、ダウンロードすることができる。ネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、もしくはエッジ・サーバ、またはそれらの組合せを含むことができる。各演算/処理デバイス内のネットワーク・アダプタ・カードまたはネットワーク・インターフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、各演算/処理デバイス内のコンピュータ可読記憶媒体に格納するためにコンピュータ可読プログラム命令を送る。
【0056】
本発明の動作を実施するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路のための構成データ、または1つもしくは複数のプログラミング言語の任意の組み合わせで書かれたソースコードもしくはオブジェクトコードのいずれかとしてよく、プログラミング言語としては、Smalltalk、C++などのオブジェクト指向プログラミング言語と、および「C」プログラミング言語または同様のプログラミング言語などの手続き型プログラミング言語が挙げられる。コンピュータ可読プログラム命令は、ユーザのコンピュータ上で全体的に、ユーザのコンピュータ上で部分的に、スタンドアロン・ソフトウェア・パッケージとして、ユーザのコンピュータ上で部分的にかつリモート・コンピュータ上に部分的に、またはリモート・コンピュータ上で部分的にもしくはリモート・コンピュータ上で全体的に、実行してもよい。後者のシナリオでは、リモート・コンピュータが、ローカル・エリア・ネットワーク(LAN)または広域ネットワーク(WAN)を含めた任意のタイプのネットワークを介してユーザのコンピュータに接続されていてもよいし、または接続が、外部コンピュータに(例えば、インターネットサービスプロバイダを用いてインターネットを介して)なされていてもよい。いくつかの実施形態では、例えば、プログラム可能なロジック回路、フィールド・プログラマブル・ゲート・アレイ(FPGA)、またはプログラム可能なロジックアレイ(PLA)を含めた電子回路は、本発明の態様を実施するために、コンピュータ可読プログラム命令の状態情報によって、コンピュータ可読プログラム命令を実行してもよい。
【0057】
本発明の態様は、本発明の実施形態による方法、装置(システム)、およびコンピュータ・プログラム製品のフローチャート図もしくはブロック図またはその両方を参照して本明細書に説明される。フローチャート図もしくはブロック図またはその両方の各ブロック、ならびにフローチャート図もしくはブロック図またはその両方におけるブロックの組合せは、コンピュータ可読プログラム命令によって実装できることが理解されよう。
【0058】
これらのコンピュータ可読プログラム命令は、汎用コンピュータ、専用コンピュータ、または他のプログラム可能なデータ処理装置のプロセッサに提供されて、コンピュータまたは他のプログラム可能なデータ処理装置のプロセッサを介して実行される命令がフローチャートもしくはブロック図またはその両方の1つまたは複数のブロックにおいて指定された機能/動作を実装する手段を生成するように、機械を生成し得る。これらのコンピュータ可読プログラム命令はまた、コンピュータ、プログラム可能なデータ処理装置、もしくは他のデバイス、またはそれらの組合せを特定の方法で機能させることのできるコンピュータ可読記憶媒体に格納されてもよく、ゆえに、命令を中に格納したコンピュータ可読記憶媒体は、フローチャートもしくはブロック図またはその両方の1つまたは複数のブロックにおいて指定された機能/動作の態様を実装する命令を含む、製品を含み得る。
【0059】
コンピュータ可読プログラム命令はまた、コンピュータ、他のプログラム可能な装置、または他のデバイス上で実行される命令がフローチャートもしくはブロック図またはその両方の1つまたは複数のブロックにおいて指定された機能/動作を実装するように、コンピュータ、他のプログラム可能なデータ処理装置、または他のデバイス上にロードされて、一連の動作ステップをコンピュータ、他のプログラマブル装置、または他のデバイス上で実施させて、コンピュータ実装プロセスを生じる。
【0060】
図中のフローチャートおよびブロック図は、本発明の様々な実施形態によるシステム、方法、およびコンピュータ・プログラム製品の可能な実施形態のアーキテクチャ、機能性、および動作を説明する。この点に関して、フローチャートまたはブロック図の各ブロックは、指定されたロジック機能を実装するための1つまたは複数の実行可能な命令を含む、命令のモジュール、セグメント、または部分を表すことがある。いくつかの代替的な実施形態では、ブロックに記載された機能は、図に記載された順序の外に生じ得る。例えば、連続して示される2つのブロックが、実際には、実質的に同時に実行されてもよいし、またはブロックが、関与する機能性に応じて、逆の順序で実行されてもよい。また、ブロック図もしくはフローチャート図またはその両方の各ブロック、ならびにブロック図もしくはフローチャート図またはその両方におけるブロックの組合せは、指定された機能もしくは動作を実行するか、または専用ハードウェアとコンピュータ命令との組合せを実施する、専用ハードウェアベースのシステムによって実装できることに留意されたい。
【0061】
本発明の様々な実施形態の説明が、例示のために提示されてきたが、網羅的であること、または開示された実施形態に限定されることを意図するものではない。記載された実施形態の範囲から逸脱することなく、多くの修正および変形が当業者には明らかになるであろう。本明細書で使用される用語は、実施形態の原理、実用的な適用、もしくは市場で発見された技術を超える技術的な改善を最も良く説明するために、または本明細書に開示された実施形態を他の当業者が理解することを可能にするように選択されたものである。