(57)【要約】【課題】半導体処理装置の運用の効率化を図ること。【解決手段】探索装置は、半導体処理装置に設定される条件又は半導体処理装置により半導体が処理された結果を示す目標値と、条件と結果との範囲により規定される探索領域内における条件又は結果のうち目標値が示す方の基準値との入力を受付け、探索領域内の条件の設定値と設定値を半導体処理装置に与えた場合の結果の実測値とに基づいて、条件と結果との関係を示す予測モデルを生成し、予測モデルに目標値を与えることにより予測モデルから予測値を取得し、予測値の存在領域を探索領域から特定し、予測値に対応する結果の実測値が基準値よりも目標値に近いか否かを判断し、実測値が目標値に近いと判断された場合、予測値に対応する結果の実測値を基準値に設定し、予測値の存在領域を探索領域に設定し、実測値が目標値の達成条件を充足した場合に充足した予測値を出力する。【選択図】図４
2020025116.tif 000002
【特許請求の範囲】
【請求項１】
半導体を処理する半導体処理装置に設定される条件または前記半導体処理装置により前記半導体が処理された結果を示す目標値と、前記条件と前記結果との範囲により規定される探索領域内における前記条件または前記結果のうち前記目標値が示す方の基準値と、の入力を受け付ける入力部と、
前記探索領域内の前記条件の設定値と、当該設定値を前記半導体処理装置に与えた場合の前記結果の実測値と、に基づいて、前記条件と前記結果との関係を示す予測モデルを生成する生成部と、
前記生成部によって生成された予測モデルに、前記入力部に入力された目標値を与えることにより、前記予測モデルから予測値を取得し、前記予測値の存在領域を前記探索領域から特定する特定部と、
前記予測値に対応する前記結果の実測値が前記入力部に入力された基準値よりも前記目標値に近いか否かを判断する判断部と、
前記判断部によって前記予測値に対応する前記結果の実測値の方が前記目標値に近いと判断された場合、前記予測値に対応する前記結果の実測値を前記基準値に設定し、前記特定部によって特定された前記予測値の存在領域を前記探索領域に設定する設定部と、
前記予測値に対応する前記結果の実測値が前記目標値の達成条件を充足した場合に前記達成条件を充足した予測値を出力する出力部と、
を有することを特徴とする探索装置。
【請求項２】
請求項１に記載の探索装置であって、
前記判断部によって前記予測値に対応する前記結果の実測値の方が前記目標値に近くないと判断された場合、前記予測値の存在領域内の予測値および予測値に対応する前記結果の実測値を除外データに決定する決定部を有し、
前記設定部は、前記探索領域から前記決定部によって決定された除外データと当該除外データが得られた場合に前記半導体処理装置に与えられた目標値とにより特定される除外領域を除いた残存領域を前記探索領域に設定することを特徴とする探索装置。
【請求項３】
請求項１に記載の探索装置であって、
前記探索領域を複数の領域に分割する分割部を有し、
前記特定部は、前記判断部によって前記予測値に対応する前記結果の実測値の方が前記目標値に近いと判断された場合、前記予測値を前記基準値に設定し、前記特定部によって特定された前記予測値の存在領域を、前記分割部によって得られた複数の分割領域の中から特定することを特徴とする探索装置。
【請求項４】
請求項１に記載の探索装置であって、
前記探索領域を複数の領域に分割する分割部を有し、
前記生成部は、前記分割部によって得られた分割領域内における前記条件の設定値を前記半導体処理装置に与えた場合の前記結果の実測値を、前記分割領域ごとに取得し、前記各分割領域での前記条件の設定値と前記結果の実測値とに基づいて、前記予測モデルを生成することを特徴とする探索装置。
【請求項５】
請求項１に記載の探索装置であって、
前記設定部は、前記判断部によって前記予測値に対応する前記結果の実測値の方が前記目標値に近くないと判断された場合、前記予測値に対応する前記結果の実測値を前記基準値に設定せずに、前記予測値の存在領域を前記探索領域に設定することを特徴とする探索装置。
【請求項６】
請求項１に記載の探索装置であって、
前記判断部によって前記予測値に対応する前記結果の実測値の方が前記目標値に近くないと判断された場合、前記予測値の存在領域内の予測値および前記予測値に対応する前記結果の実測値を除外データに決定する決定部を有し、
前記生成部は、前記実測値から前記除外データを除いた特定の実測値と、前記設定値から前記除外データが得られた場合に前記半導体処理装置に与えられた設定値を除いた特定の設定値と、に基づいて、前記予測モデルを生成することを特徴とする探索装置。
【請求項７】
請求項１に記載の探索装置であって、
前記結果の実測値と、所定の出力しきい値と、に基づいて、前記半導体処理装置の不安定動作を検出する検出部を有し、
前記出力部は、前記検出部による検出結果を出力することを特徴とする探索装置。
【請求項８】
請求項１に記載の探索装置であって、
前記設定部は、前記予測モデルに与える前記条件の中心条件を設定し、
前記特定部は、前記生成部によって生成された予測モデルに、前記設定部によって設定された中心条件を示す目標値を与えることにより、前記予測モデルから前記予測値を取得し、前記予測値の存在領域を前記探索領域から特定する、
ことを特徴とする探索装置。
【請求項９】
請求項８に記載の探索装置であって、
前記中心条件は、一度に変更可能な前記条件の種類の数である、
ことを特徴とする探索装置。
【請求項１０】
請求項８に記載の探索装置であって、
前記中心条件は、変更可能な前記条件の種類である、
ことを特徴とする探索装置。
【請求項１１】
探索装置が実行する探索方法であって、
前記探索装置は、
半導体を処理する半導体処理装置に設定される条件または前記半導体処理装置により前記半導体が処理された結果を示す目標値と、前記条件と前記結果との範囲により規定される探索領域内における前記条件または前記結果のうち前記目標値が示す方の基準値と、の入力を受け付ける入力処理と、
前記探索領域内の前記条件の設定値と、当該設定値を前記半導体処理装置に与えた場合の前記結果の実測値と、に基づいて、前記条件と前記結果との関係を示す予測モデルを生成する生成処理と、
前記生成処理によって生成された予測モデルに、前記入力処理によって入力された目標値を与えることにより、前記予測モデルから予測値を取得し、前記予測値の存在領域を前記探索領域から特定する特定処理と、
前記予測値に対応する前記結果の実測値が前記入力処理によって入力された基準値よりも前記目標値に近いか否かを判断する判断処理と、
前記判断処理によって前記予測値の方が前記目標値に近いと判断された場合、前記予測値に対応する前記結果の実測値を前記基準値に設定し、前記特定処理によって特定された前記予測値の存在領域を前記探索領域に設定する設定処理と、
前記予測値が前記目標値の達成条件を充足した場合に前記達成条件を充足した予測値を出力する出力処理と、
を実行することを特徴とする探索方法。
【請求項１２】
請求項１１に記載の探索方法であって、
前記探索装置は、
前記判断処理によって前記予測値に対応する前記結果の実測値の方が前記目標値に近くないと判断された場合、前記存在領域内の予測値および予測値に対応する前記結果の実測値を除外データに決定する決定処理を実行し、
前記設定処理では、前記探索装置は、前記探索領域から前記決定処理によって決定された除外データと当該除外データが得られた場合に前記半導体処理装置に与えられた目標値とにより特定される除外領域を除いた残存領域を前記探索領域に設定することを特徴とする探索方法。
【請求項１３】
請求項１１に記載の探索方法であって、
前記探索装置は、
前記探索領域を複数の領域に分割する分割処理を実行し、
前記特定処理では、前記探索装置は、前記判断処理によって前記予測値に対応する前記結果の実測値の方が前記目標値に近いと判断された場合、前記予測値を前記基準値に設定し、前記特定処理によって特定された前記予測値の存在領域を、前記分割処理によって得られた複数の分割領域の中から特定することを特徴とする探索方法。
【請求項１４】
請求項１１に記載の探索方法であって、
前記探索装置は、
前記探索領域を複数の領域に分割する分割処理を実行し、
前記生成処理では、前記探索装置は、前記分割処理によって得られた分割領域内における前記条件の設定値を前記半導体処理装置に与えた場合の前記結果の実測値を、前記分割領域ごとに取得し、前記各分割領域での前記条件の設定値と前記結果の実測値とに基づいて、前記予測モデルを生成することを特徴とする探索方法。
【請求項１５】
請求項１１に記載の探索方法であって、
前記探索装置は、
前記設定処理では、前記探索装置は、前記判断処理によって前記予測値に対応する前記結果の実測値の方が前記目標値に近くないと判断された場合、前記予測値を前記基準値に設定せずに、前記予測値の存在領域を前記探索領域に設定することを特徴とする探索方法。
【請求項１６】
請求項１１に記載の探索方法であって、
前記探索装置は、
前記判断処理によって前記予測値に対応する前記結果の実測値の方が前記目標値に近くないと判断された場合、前記予測値の存在領域内の予測値および前記予測値に対応する前記結果の実測値を除外データに決定する決定処理を実行し、
前記生成処理では、前記探索装置は、前記実測値から前記除外データを除いた特定の実測値と、前記設定値から前記除外データが得られた場合に前記半導体処理装置に与えられた設定値を除いた特定の設定値と、に基づいて、前記予測モデルを生成することを特徴とする探索方法。
【請求項１７】
請求項１１に記載の探索方法であって、
前記探索装置は、
前記結果の実測値と、所定の出力しきい値と、に基づいて、前記半導体処理装置の不安定動作を検出する検出処理を実行し、
前記出力処理では、前記探索装置は、前記検出処理による検出結果を出力することを特徴とする探索方法。
【請求項１８】
請求項１１に記載の探索方法であって、
前記設定処理では、前記探索装置は、前記予測モデルに与える前記条件の中心条件を設定し、
前記特定処理では、前記探索装置は、前記生成部によって生成された予測モデルに、前記設定部によって設定された中心条件を示す目標値を与えることにより、前記予測モデルから前記予測値を取得し、前記予測値の存在領域を前記探索領域から特定する、
ことを特徴とする探索方法。
【請求項１９】
請求項１８に記載の探索方法であって、
前記中心条件は、一度に変更可能な前記条件の種類の数である、
ことを特徴とする探索方法。
【請求項２０】
請求項１８に記載の探索方法であって、
前記中心条件は、変更可能な前記条件の種類である、
ことを特徴とする探索方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、解を探索する探索装置および探索方法に関する。
【背景技術】
【０００２】
半導体デバイスの性能向上のため、半導体デバイスを構成する新材料が導入され、同時に半導体デバイスの構造が複雑化する。また、半導体デバイスの加工では、ナノメートルレベルの精度が要求される。また、半導体デバイスの生産性向上のために、当該精度を維持した状態での量産処理を可能な限り継続することが要求される。これらの要求を満たすためには、半導体デバイスは多種の材料および構造を極めて高精度に加工できる必要がある。したがって、半導体デバイスを処理する半導体処理装置の制御範囲が拡大され、多数の制御パラメータが追加される。半導体処理装置を用いることで、高い生産性を維持しながら、高性能な半導体デバイスが生産される。
【０００３】
その一方で、半導体処理装置の性能を十分に引出すためには、半導体処理装置毎に数種から数十種にも及ぶ入力パラメータを決定する必要がある。更に１つの工程内で多数のステップがあり、そのステップ毎に入力パラメータを変更する必要がある。したがって、目標の加工結果が得られる入力パラメータの組み合わせを突き止めることが、極めて困難である。
【０００４】
生産性の維持および向上のためには、半導体デバイスを量産中の半導体処理装置の状態および加工結果のデータを取得する必要がある。これらのデータ取得を目的とした複数のセンサおよびモニタが半導体処理装置に搭載されている。半導体デバイスを量産中の半導体処理装置の状態および加工結果のデータ変動を補正するための制御を実施するためには、センサデータおよびモニタデータと加工結果との関係を解析して、制御用パラメータを見出す必要がある。ナノメートルレベルの加工制御を行うため、半導体処理装置に搭載されるセンサおよび製造状況のモニタの数が増加し、データ取得の頻度も増加している。これにより、取得されるデータ量が増大する。したがって、必要とされる高精度な半導体処理装置の制御方法の開発は、膨大なデータの解析および制御性能の検証が必要であり、極めて困難である。
【０００５】
半導体デバイスのような先端デバイスの製造は、生産性を確保するために、半導体処理装置のエージング方法の開発を要求する。半導体処理装置のエージング方法とは、半導体処理装置間の性能差の抑制、量産中の加工特性の経時変化の補正、および、半導体処理装置のメンテナンスで補正しきれない半導体処理装置間の性能差を縮小するため方法である。半導体処理装置のエージング方法の開発は、高度な知識と技術を持ったトップエンジニアによって実施される。しかし、半導体デバイスの製造におけるウェハ処理枚数および高難度の工程数が増加し続けており、トップエンジニアの人数不足が深刻化している。そのため、データが取得されるだけで解析まで手が回らない工程が増加する。したがって、半導体処理装置自らが自動的に半導体処理装置の性能を引き出す機能、および半導体処理装置の性能を引き出すエンジニアを支援する機能が、半導体処理装置に要求される。
【０００６】
特許文献１は、生物学に基づいた自律学習システムを用いて、製造ツールのレシピをインクリメンタルまたはランダムに変更した際のデータ学習し、その結果を利用して調節されたレシピを生成する技術を開示する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特表２０１３−５１８４４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
たとえば、半導体処理装置の入力パラメータは、半導体処理装置の動作を決定するパラメータであり、ガス種、ガス流量、圧力、投入電力、電圧、電流、処理時間、加熱温度、冷却温度、ドーズ量、光量といった入力パラメータがある。半導体処理装置の出力パラメータは、半導体処理装置での処理中または処理された処理対象物（処理結果）を監視または計測することで得られるパラメータであり、ＣＤ（Ｃｒｉｔｉｃａｌ  Ｄｉｍｅｎｓｉｏｎ）、堆積膜厚、ＥＲ（Ｅｔｃｈ  Ｒａｔｅ）、加工形状、マスク選択比、更にこれらのウェハ面内分布および均一性といった加工結果を示す出力パラメータがある。また、これらの加工結果と関連のあるセンサデータおよびモニタデータとしては、光反射スペクトル、プラズマ光スペクトル、ウェハ入射電流、ウェハ電圧、ウェハ温度、装置部品温度、更にこれらの空間分布および均一性を示すデータもある。センサデータおよびモニタデータもまた、出力パラメータである。
【０００９】
半導体処理装置の入出力関係を解析するためには、１入力１出力から多入力多出力までの入出力データを解析できる必要がある。そして、目的の出力結果を満たす入力パラメータの組み合わせを得るためには、入力パラメータおよび出力パラメータからなる広大な装置パラメータ空間を探索する必要がある。
【００１０】
たとえば、探索する入力パラメータとして、使用ガス２種の各流量、ガス圧力、放電電力、ウェハ印加バイアス電力という基本的な５種類の入力パラメータを選んだ場合を考える。各入力パラメータの制御範囲は以下の通りである。両ガス流量の制御範囲は１００〜２００［ｓｃｃｍ］、ガス圧力の制御範囲は１〜１０［Ｐａ］、放電電力の制御範囲は５００〜１５００［Ｗ］、バイアス電力の制御範囲は０〜１００［Ｗ］といった典型的な範囲とする。なお、各パラメータを変更する際の最小幅の典型的な値は以下の通りである。両ガス流量の当該値は１［ｓｃｃｍ］、ガス圧力の当該値は０．１［Ｐａ］、放電電力の当該値は１［Ｗ］、バイアス電力の当該値は１［Ｗ］である。
【００１１】
この場合、装置パラメータ空間全体における入力パラメータの制御範囲の全組み合わせ、すなわち探索条件数を概算すると、１００×１００×１００×１０００×１００＝１０１１となる。探索１回にかかる時間が１分程度の場合には、全探索条件数の探索に１０万年以上かかり、実行不可能である。
【００１２】
また、探索１セット分において入力パラメータ毎の値の設定数を１０個とすると、探索における入力パラメータの組み合わせは１０５となる。探索１回の時間が１分程度の場合には、１セット分の探索に２カ月以上の時間が必要となる。探索および探索結果の解析を繰り返して目標の解へ到達するためには、探索１セットにかかる時間は長い場合でも数日以下、望ましくは１時間以下とする必要がある。従って、目標の解に到達するためには、探索における入力パラメータの設定、すなわち探索領域の決定が極めて重要である。
【００１３】
探索１セットにおける探索条件数を１００条件、また探索時間を１時間として、この探索を繰り返すことで１日に２０００条件を探索した場合には、装置パラメータ空間の条件数１０１１のうち、１日で０．０００００２％の領域が探索される。これを１カ月続けた場合、すなわち探索６万セットを実行した場合には装置パラメータ空間のうち０．００００６％の領域が探索されたことになる。したがって、探索１セットにおける探索領域が狭い場合において、探索領域をランダムに変更した場合には、最適な解へ到達できる可能性は極めて低い。また、重複した探索領域がある場合には、最適な解への到達に必要な時間はさらに長くなる。
【００１４】
さらに、半導体処理装置の入出力関係は、大半の場合において非線形であり、装置パラメータ空間には多数の局所解が存在する。そのため、１回のデータ解析および推定によって、出力パラメータの値を満たす入力パラメータの値が見つかることは極めて稀である。装置パラメータ空間のうち１％の探索領域に１つ程度の局所解が存在する場合について考えると、探索領域を狭い領域とし、探索領域をランダムに選択すると、探索領域内またはその近傍の最良の解に到達できたとしても、９９％の確率で局所解へ到達することになる。したがって、局所解を効率良く避ける、または局所解到達後において解へ到達できる可能性が高くなるように探索領域を決定する必要がある。
【００１５】
しかしながら、上述した特許文献１の技術は、データ学習に際し、レシピをインクリメンタルまたはランダムに変更するにすぎないため、解となる入力パラメータである最良解へ到達できる可能性は極めて低いという問題がある。換言すれば、最良解と比較して劣った結果がとなる局所解に到達してしまう可能性が極めて高くなるという問題がある。
【００１６】
本発明は、半導体処理装置における運用の効率化を図ることを目的とする。
【課題を解決するための手段】
【００１７】
本願において開示される発明の一側面となる探索装置は、半導体を処理する半導体処理装置に設定される条件または前記半導体処理装置により前記半導体が処理された結果を示す目標値と、前記条件と前記結果との範囲により規定される探索領域内における前記条件または前記結果のうち前記目標値が示す方の基準値と、の入力を受け付ける入力部と、前記探索領域内の前記条件の設定値と、当該設定値を前記半導体処理装置に与えた場合の前記結果の実測値と、に基づいて、前記条件と前記結果との関係を示す予測モデルを生成する生成部と、前記生成部によって生成された予測モデルに、前記入力部に入力された目標値を与えることにより、前記予測モデルから予測値を取得し、前記予測値の存在領域を前記探索領域から特定する特定部と、前記予測値に対応する前記結果の実測値が前記入力部に入力された基準値よりも前記目標値に近いか否かを判断する判断部と、前記判断部によって前記予測値に対応する前記結果の実測値の方が前記目標値に近いと判断された場合、前記予測値に対応する前記結果の実測値を前記基準値に設定し、前記特定部によって特定された前記予測値の存在領域を前記探索領域に設定する設定部と、前記予測値に対応する前記結果の実測値が前記目標値の達成条件を充足した場合に前記達成条件を充足した予測値を出力する出力部と、を有することを特徴とする。
【発明の効果】
【００１８】
本発明の代表的な実施の形態によれば、半導体処理装置における運用の効率化および処理の最適化を図ることができる。前述した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【００１９】
【図１】図１は、入力パラメータの探索例を示す説明図である。
【図２】図２は、半導体製造システムのシステム構成例を示す説明図である。
【図３】図３は、探索装置のハードウェア構成例を示すブロック図である。
【図４】図４は、探索装置の機能的構成例を示すブロック図である。
【図５】図５は、半導体処理装置の制御処理手順例を示すフローチャート１である。
【図６】図６は、半導体処理装置の制御処理手順例を示すフローチャート２である。
【図７】図７は、半導体処理装置の制御処理手順例を示すフローチャート３である。
【図８】図８は、半導体処理装置の制御処理手順例を示すフローチャート４である。
【図９】図９は、機差抑制方法を示すフローチャートである。
【図１０】図１０は、経時変化補正方法を示すフローチャートである。
【発明を実施するための形態】
【００２０】
＜入力パラメータの探索例＞
図１は、入力パラメータの探索例を示す説明図である。図１は、半導体処理装置において目標を満たす出力データ（上述した出力パラメータの値）が得られる入力データ（上述した入力パラメータの値）を探索する際の半導体処理装置に対する入出力データ入力データと出力データとの組み合わせの例を示す。
【００２１】
ここで、半導体処理装置とは、半導体または半導体を含む半導体デバイスを処理する装置である。半導体処理装置は、具体的には、たとえば、リソグラフィ装置、製膜装置、パターン加工装置、イオン注入装置、加熱装置、洗浄装置を含む。リソグラフィ装置は、露光装置、電子線描画装置、Ｘ線描画装置を含む。製膜装置は、たとえば、ＣＶＤ（Ｃｈｅｍｉｃａｌ  Ｖａｐｏｒ  Ｄｅｐｏｓｉｔｉｏｎ）、ＰＶＤ（Ｐｈｙｓｉｃａｌ  Ｖａｐｏｒ  Ｄｅｐｏｓｉｔｉｏｎ）、蒸着装置、スパッタリング装置、熱酸化装置を含む。パターン加工装置は、たとえば、ウェットエッチング装置、ドライエッチング装置、電子ビーム加工装置、レーザ加工装置を含む。イオン注入装置は、プラズマドーピング装置、イオンビームドーピング装置を含む。加熱装置は、たとえば、抵抗加熱装置、ランプ加熱装置、レーザ加熱装置を含む。洗浄装置は、液体洗浄装置、超音波洗浄装置を含む。
【００２２】
図１は、Ｘ１軸およびＸ２軸の２軸で２次元の座標平面を有するグラフ１００を示す。当該座標平面に直交する軸をＹ軸とする。Ｘ１軸は、半導体処理装置への入力となる入力パラメータＸ１の座標軸であり、Ｘ２軸は、半導体処理装置への入力となる入力パラメータＸ２の座標軸である。Ｘ１軸には、入力パラメータＸ１の値である入力データｘ１ｎ（ｎ＝１，２，３，…）がプロットされ、Ｘ２軸には、入力パラメータＸ２の値である入力データｘ２ｎがプロットされる。グラフ１００は、入力データｘ１ｎおよびｘ２ｎで決定される各領域におけるＹ軸の出力データを、等高線で表現する。例として、出力データｙ１を含む領域を最大値（すなわち、最良解）とし、ｙ１３の領域を最小値とした。また、グラフ１００では、Ｘ１軸が３分割され、領域ｘ１ａ、ｘ１ｂ、ｘ１ｃとする。同様に、グラフ１００では、Ｘ２軸が３分割され、領域ｘ２ａ、ｘ２ｂ、ｘ２ｃとする。
【００２３】
たとえば、目標として、出力データが最も高くなる領域、すなわち、出力データｙ１が得られる入力データｘ１ｎおよびｘ２ｎの組み合わせを探索する場合には、解析方法として装置パラメータ空間の出力データｙｎの傾きを取得し、出力データｙｎがより大きくなる方向へ探索を進めればよい。
【００２４】
しかし、その際の出力データがｘ１ａかつｘ２ｂで決定される領域の出力データを含んでいない場合、探索は局所解となる頂点の出力データｙ４’に向かう。またこの結果に従って探索すべき入力パラメータを決定すると、ｙ４’近傍の出力データを集中的に取得することになり、ｙ４’そのものまたはそれに非常に近い出力データが得られる入力パラメータが発見される。すなわち、この探索で取得した入力パラメータの値を用いた解析と更なる探索による出力パラメータの値の取得とを繰り返したとしても、出力データｙ１に対応する最良解の入力データを見つけることができない。
【００２５】
また、出力データｙ１の周辺やその他の領域に多数の局所解が存在する場合、装置パラメータ空間の広さに対して、取得した入力パラメータの値が少ないと、探索は局所解に陥ってしまい、出力データｙ１を発見できない可能性が高くなる。また、推定した解が存在する領域としてｘ１３かつｘ２３の領域が推定されたとする。その後も特許文献１のように探索領域をｘ１３かつｘ２３の一部のような微小な領域に限定すると、出力データｙｎの傾きが非常に小さいため、出力データｙ１にたどり着くまでの探索回数が膨大になり探索に失敗する可能性がある。また、出力データｙｎの傾きが出力データｙｎに含まれるノイズに埋もれることで、探索に失敗する可能性がある。解析対象である出力データｙｎの質が悪ければ、必然的に解の推定も悪い結果となるため、探索を成功させるためには、解に近付くことができる質の良いデータを取得するための探索空間を指定する必要がある。
【００２６】
図１では、ｘ１ｎ、ｘ２ｎおよびｙｎという３つのパラメータを用いている。実際の半導体処理装置では多数の入出力パラメータを持つため、図１の各軸の指標を多次元ベクトル化した広大な装置パラメータ空間が探索される。したがって、このような広大な装置パラメータ空間から効率良く解に近付くことができる質の良いデータを取得するために、装置パラメータ空間が指定される必要がある。また、半導体処理装置の入出力関係は、大半の場合において非線形であり、装置パラメータ空間には多数の局所解が存在する。
【００２７】
本実施例では、半導体処理装置の入出力データの解析結果を考慮した上で装置パラメータ空間を探索するための実験条件を自動で決定し、実験結果の検証を自動で行い、これらの自動動作を繰り返す。これにより、装置パラメータ空間を探索して最良解を効率的に取得する。すなわち、目標とする半導体処理装置の状態および加工結果を示す出力パラメータの値が得られる入力パラメータの値を効率的に発見する。
【００２８】
＜システム構成例＞
図２は、半導体製造システムのシステム構成例を示す説明図である。半導体製造システム２００は、半導体処理装置２０１と、装置制御システム２０２と、モニタシステム２０３と、センサシステム２０４と、データベース２０５と、自動制御システム（探索装置）２０６と、を有する。
【００２９】
半導体処理装置２０１は、上述した通り、ウェハ等の基板や半導体デバイスを処理する装置である。半導体処理装置２０１は、装置制御システム２０２、モニタシステム２０３およびセンサシステム２０４に接続される。
【００３０】
装置制御システム２０２は、半導体処理装置２０１の稼働および処理をする際に半導体処理装置２０１を制御するシステムである。装置制御システム２０２は、ＧＵＩなどの入力インタフェースを有し、入力インタフェースを介して入力された入力パラメータの値で半導体処理装置２０１の実行を制御する。また、装置制御システム２０２は、ネットワークインタフェースを有し、ネットワークインタフェースを介して外部のコンピュータおよびデータベース２０５から入力パラメータの値を取得する。
【００３１】
装置制御システム２０２は、レシピ設定コントローラ２２１と、装置基本設定コントローラ２２２と、設定エラー検出システム２２３と、を有する。レシピ設定コントローラ２２１は、半導体処理装置２０１の処理中の動作を決定する入力パラメータおよびその値を半導体処理装置２０１に設定する。装置基本設定コントローラ２２２は、半導体処理装置２０１が稼働するための入力パラメータおよびその値を半導体処理装置２０１に設定する。
【００３２】
設定エラー検出システム２２３は、装置基本設定コントローラ２２２での入力パラメータの設定の際に、実際に半導体処理装置２０１に入力パラメータが設定可能であるかを判定する。具体的には、たとえば、設定エラー検出システム２２３は、入力された入力パラメータが入力可能な範囲内であるか、また、半導体処理装置２０１の動作が可能となる入力パラメータの値の組み合わせであるかを判定する。設定不可能な入力パラメータの値またはその組み合わせが検出された場合には、設定エラー検出システム２２３は、設定エラーとして、エンジニアまたは、半導体処理装置２０１が接続される上位のシステムへ報告する。設定エラーが発生した際には、入力された入力パラメータの変更中止、または入力された入力パラメータの値を用いた処理を中止したことをログデータとして記録する。
【００３３】
モニタシステム２０３は、半導体処理装置２０１での処理中または処理された処理対象物（処理結果）を監視または計測してモニタデータを取得するシステムである。モニタシステム２０３は、光学式モニタ、電子顕微鏡を用いた加工寸法計測装置、赤外光を用いた温度計測装置、ケルビンプローブフォース顕微鏡を用いた欠陥検出装置、処理対象物の電気特性を評価するプローバ装置を含む。モニタシステム２０３は、たとえば、処理対象物へ光、レーザ光およびＸ線を入射させた際の反射、透過、吸収および偏光スペクトルを計測することで、処理対象物の加工形状、処理対象膜の厚さおよび加工欠陥をモニタデータとして取得する。モニタシステム２０３は、半導体処理装置２０１に直接接続されている必要はなく、処理対象をモニタシステム２０３へ運搬することで計測結果を取得し、その結果をデータベース２０５に保存してもよい。
【００３４】
モニタシステム２０３は、処理時において処理対象物へ作用するプラズマ、ガス、液体等の処理に使用される媒体、および処理によって発生する生成物を監視する。これらの媒体および生成物は、処理対象物と直接作用したり、その作用の結果発生する物である。モニタシステム２０３は、光スペクトル計測を用いたプラズマ発光モニタ、赤外分光計測を用いた処理室内の堆積物モニタ、質量分析器を用いた処理対象から放出された原子および分子モニタ、探針を用いた処理室内の電気特性モニタを含む。これらのモニタによる監視は、処理結果を間接的に評価できるモニタデータをリアルタイムかつ処理中においてその場で計測することができる。
【００３５】
センサシステム２０４は、半導体処理装置２０１の装置状態を示すセンサデータを取得するシステムである。センサシステム２０４は、センサの集合体である。センサデータは、電圧、電流、パワー等の電源出力値、整合器内のコンデンサやコイル等の可変電気素子の値、各種使用ガスの流量、装置躯体や装置構成部品の温度、処理室内の圧力、圧力制御弁の開度、バルブ開閉状態、ガス排気速度、処理および装置の動作タイミングおよび動作時刻を含む。
【００３６】
データベース２０５は、装置制御システム２０２によって設定される各種入力パラメータの値、半導体処理装置２０１からの処理結果である出力パラメータの値、モニタシステム２０３およびセンサシステム２０４が取得したモニタデータおよびセンサデータを保存する。また、データベース２０５は、学習データを保存する。学習データとは、過去に半導体処理装置２０１に与えられた入力パラメータの値（入力データ）と半導体処理装置２０１から出力された出力パラメータの値（出力データ）の組となる入出力データである。データベース２０５は、保存する各種データを異なる記憶デバイス３０２で保存する分散型データベース２０５でもよい。各システムで取り扱う情報をそれぞれのシステム内に保存する形の分散型のデータベースを構築しても良い。
【００３７】
自動制御システム２０６は、データベース２０５に保存されたデータを用いて、目標を満たす解を探索する。目標を満たす解は、半導体処理装置２０１の稼働に使用される入力パラメータの値、および、処理中の半導体処理装置２０１の動作に使用される入力パラメータの値のうち、少なくとも一方のパラメータの値である。自動制御システム２０６は、目標設定コントローラ２６１と、自律探索システム２６２と、不安定動作検出システム２６３と、を有する。
【００３８】
目標設定コントローラ２６１は、探索開始前の初期値として、目標とする入力パラメータの値、出力パラメータの値、探索結果と目標との差または乖離の許容値の入力を受け付ける。また、目標設定コントローラ２６１は、探索において１つの条件を実行する時間の上限、探索回数、探索１セットの合計時間の上限、探索全体の合計時間の上限、探索結果の解析時間の上限、解析データ数の上限の入力を受け付けることができる。また、目標設定コントローラ２６１は、各入力パラメータに対する探索可否の設定、探索する入力パラメータの制御範囲の上限値および下限値、探索する入力パラメータの制御範囲を限定するための値を設定することができる。更に、目標設定コントローラ２６１は、過去の結果を含む探索開始前の最良の解、その解を得るために用いた解析対象データ、その解析より得られた目標と入力パラメータの関係を説明するモデル関数の入力受け付けることができる。
【００３９】
自律探索システム２６２は、目標設定コントローラ２６１へ入力された内容を取得し、１つ以上のパラメータに対して、探索可能な入力パラメータの制御範囲を２つ以上の領域に分けた分割領域を設定する。前述の通り、探索および探索結果の解析を繰り返して目標の解へ到達するためには、探索１セットにかかる時間は長い場合でも数日以下、望ましくは１時間以下とする必要がある。すなわち、探索１セットの探索条件数Ｎｓ、探索１セットの探索時間をＴｓ［ｍｉｎ］、検索１条件に必要な時間ｔ１［ｍｉｎ］とすると、探索回数は式（１．１）となる。
【００４０】
Ｔｓ＝ｔ１・Ｎｓ・・・（１．１）
【００４１】
探索１セットを１日以内とする場合には、Ｔｓ≦１４４０、１時間以内とする場合には、Ｔｓ≦６０となるように探索条件数Ｎｓを決定すればよい。
【００４２】
探索条件数Ｎｓを増やすためには、探索結果を評価するセンサおよびモニタの計測時間を短くすることが有効である。特に、探索実験中においてリアルタイムで計測が可能なセンサおよびモニタを使用することが有効である。
【００４３】
また、前述した通り、処理結果を間接的に評価できるデータとなる処理対象物へ作用する媒体および処理によって発生する生成物の特性を、センサおよびモニタによって計測することで、リアルタイムかつ処理中においてその場での計測ができる。
【００４４】
探索において変更する入力パラメータの種類が増加するに従い、探索時間Ｔｓが急激に増大する。例えば、入力パラメータの種類の数ＤａをＤａ＝１０とし、各パラメータの領域分割数ＡをＡ＝３とした場合、全てのパラメータの組合せを探索する場合の探索条件数Ｎｓは式（１．２）となる。
【００４５】
Ｎｓ＝ＡＤａ・・・・（１．２）
【００４６】
探索条件数Ｎｓは５９０４９まで増加する。このような場合、解が存在すると予測される各入力パラメータの値を予測し、当該予測値を中心条件として、探索時に同時に変更可能な入力パラメータの数を制限するのが好ましい。これにより、探索条件数Ｎｓおよび探索時間Ｔｓは実行可能な値になる。中心条件を予測する際には、過去の探索結果またはエンジニアの知識を利用することができる。または、探索の初期値として、適当な中心条件を与え、探索を開始することも可能である。
【００４７】
例えば、入力パラメータの１０種のうち５種類について、解が存在すると推定される分割領域が指定された場合、他の５種類を変更することにより、次回の探索条件数Ｎｓは、Ｎｓ＝３５＝２４３にまで少なくできる。また、１０種の入力パラメータのうち、一度に変更可能な入力パラメータの種類の数をＤｃとする。探索条件数Ｎｓは組み合わせ論の記号Ｃを用いて式（１．３）より求められる。
【００４８】
【数１】
2020025116.tif 000003
【００４９】
一度に変更可能な入力パラメータを限定することで、探索条件数Ｎｓを小さくすることができる。例えば変更可能な入力パラメータの種類の数ＤｃをＤｃ＝１とすると探索条件数ＮｓはＮｓ＝２１、同様にＤｃをＤｃ＝２とすると、ＮｓはＮｓ＝２０１まで小さくできる。さらに、入力パラメータの種類のうち、いくつかの入力パラメータにおいて、解が存在すると推定される分割領域を指定する方法と、一度に変更可能なパラメータの種類を指定する方法とを組み合わせることもできる。
【００５０】
不安定動作検出システム２６３は、探索実行時において、半導体処理装置２０１が処理動作を継続可能ではあるが、処理が不安定になる場合を検出する。入力パラメータの入力を実行する前段階において、設定エラー検出システム２２３は入力パラメータが入力可能であるかを確認する。しかし、半導体処理装置２０１内の機器が制御対象とする媒体および部品は非線形性をもち、更にそれらを組み合わせることで処理を実行する。したがって、設定エラー検出システム２２３は設定エラー（入力パラメータの入力不可）を検出できずに、実際に処理を実行した際に初めて動作不安定となる入力パラメータが発見される可能性がある。
【００５１】
また、入力パラメータが多くなるほど、装置パラメータ空間は拡大するため、装置パラメータ空間において局所的な不安定動作領域が存在した場合に、事前に検出できない可能性が高くなる。
【００５２】
したがって、不安定動作検出システム２６３が半導体処理装置２０１の処理中に半導体処理装置２０１の不安定動作を検出した場合、半導体処理装置２０１は、不安定動作となった際の入力パラメータおよびその値を保存し、さらにエンジニアまたは、半導体処理装置２０１が接続される上位のシステムへ報告する。これにより、半導体処理装置２０１の不安定動作による処理および探索における動作不良を判断または予測することができる。
【００５３】
不安定動作が検出された場合には、処理完了後に半導体処理装置２０１を定常動作状態へ復旧するためのシーケンスを実施するか、処理を直ちに停止し、半導体処理装置２０１を定常動作状態へ復旧するためのシーケンスを実施することで、探索が継続される。
【００５４】
このような不安定動作としては、処理中における局所的な異常放電や放電強度の振動、急激な製膜速度変動や膜質変動、ガス圧力の振動、投入電力の瞬間的な増減や振動等がある。前述した発光スペクトルモニタ、堆積物モニタ、質量分析モニタ、電気特性モニタ、圧力モニタ等のリアルタイムかつ処理中においてその場での計測が可能なモニタが、不安定動作を検出する。
【００５５】
＜探索装置のハードウェア構成例＞
図３は、探索装置３００のハードウェア構成例を示すブロック図である。探索装置３００は、探索領域から解となる入力パラメータの値を探索する。自動制御システム２０６は、探索装置３００の一例である。探索装置３００は、プロセッサ３０１と、記憶デバイス３０２と、入力デバイス３０３と、出力デバイス３０４と、通信インターフェース（通信ＩＦ３０５）と、を有する。プロセッサ３０１、記憶デバイス３０２、入力デバイス３０３、出力デバイス３０４、および通信ＩＦ３０５は、バスにより接続される。プロセッサ３０１は、探索装置３００を制御する。記憶デバイス３０２は、プロセッサ３０１の作業エリアとなる。また、記憶デバイス３０２は、各種プログラムやデータを記憶する非一時的なまたは一時的な記録媒体である。記憶デバイス３０２としては、たとえば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、フラッシュメモリがある。入力デバイス３０３は、データを入力する。入力デバイス３０３としては、たとえば、キーボード、マウス、タッチパネル、テンキー、スキャナがある。出力デバイス３０４は、データを出力する。出力デバイス３０４としては、たとえば、ディスプレイ、プリンタがある。通信ＩＦ３０５は、ネットワークと接続し、データを送受信する。
【００５６】
＜探索装置３００の機構的構成例＞
図４は、探索装置３００の機能的構成例を示すブロック図である。探索装置３００は、入力部４０１と、生成部４０２と、特定部４０３と、判断部４０４と、設定部４０５と、出力部４０６と、決定部４０７と、分割部４０８と、検出部４０９と、を有する。各構成４０１〜４０９は、具体的には、たとえば、図３に示した記憶デバイス３０２に記憶されたプログラムをプロセッサ３０１に実行させることにより実現される機能である。
【００５７】
入力部４０１は、ユーザ操作またはデータベース２０５からの読み込みにより、各種データの入力を受け付ける。具体的には、たとえば、入力部４０１は、半導体デバイスを処理する半導体処理装置２０１に設定される条件値の入力を受け付ける。半導体処理装置２０１に設定される条件とは、上述した入力パラメータである。入力パラメータは、具体的には、たとえば、ガス種、ガス流量、圧力、投入電力、電圧、電流、処理時間、加熱温度、冷却温度、ドーズ量、光量を含む。
【００５８】
また、入力部４０１は、半導体処理装置２０１により半導体が処理された結果を示す目標値の入力を受け付ける。半導体処理装置２０１により半導体が処理された結果とは、上述した出力パラメータである。出力パラメータは、具体的には、たとえば、半導体処理装置２０１による半導体の処理結果と、半導体処理装置２０１の装置状態に関するデータと、を含む。半導体処理装置２０１による半導体の処理結果は、具体的には、たとえば、ＣＤ（Ｃｒｉｔｉｃａｌ  Ｄｉｍｅｎｓｉｏｎ）、堆積膜厚、ＥＲ（Ｅｔｃｈ  Ｒａｔｅ）、加工形状、マスク選択比、更にこれらのウェハ面内分布および均一性を含む。半導体処理装置２０１の処理結果、および半導体処理装置２０１の装置状態に関するデータは、具体的には、たとえば、光反射スペクトル、プラズマ光スペクトル、ウェハ入射電流、ウェハ電圧、ウェハ温度、装置部品温度、更にこれらの空間分布および均一性を示すデータ（センサデータおよびモニタデータ）を含む。半導体処理装置２０１により半導体が処理された結果を示す目標値とは、ユーザが要求する半導体処理装置２０１の出力パラメータの値である。
【００５９】
また、入力部４０１は、条件（入力パラメータ）と結果（出力パラメータ）との範囲により規定される探索領域内における条件の基準値の入力を受け付ける。探索領域とは、入力パラメータの制御範囲と半導体処理装置２０１の出力パラメータの制御範囲とにより規定され、入力パラメータの値を探索する領域である。具体的には、たとえば、図１に示した探索領域Ａである。条件の基準値とは、入力パラメータの基準値である。具体的には、たとえば、過去に得られた入力パラメータの値である。
【００６０】
また、入力部４０１は、探索領域内における結果の基準値の入力を受け付ける。結果の基準値とは、入力パラメータの基準値が半導体処理装置２０１に与えられた場合における半導体処理装置２０１の出力パラメータの値である。
【００６１】
生成部４０２は、探索領域内の条件の設定値と、当該設定値を半導体処理装置２０１に与えた場合の結果の実測値と、に基づいて、条件と結果との関係を示す予測モデルを生成する。条件の設定値とは、たとえば、学習データとして用意された入力パラメータの値である。結果の実測値とは、学習データとして用意された入力パラメータの値（条件の設定値）が半導体処理装置２０１に与えられた場合における半導体処理装置２０１の出力パラメータの値である。予測モデルとは、入力パラメータと出力パラメータとの関係を示す関数である。生成部４０２は、ニューラルネットワーク、サポートベクターマシン等の多入力多出力に応対可能な回帰分析や、相関分析、主成分分析、重回帰分析などの統計分析により、探索領域内の条件の設定値と出力の実測値との関係を示す予測モデルを生成する。
【００６２】
特定部４０３は、生成部４０２によって生成された予測モデルに、入力部４０１によって入力された目標値を与えることにより、目標値に対応する予測値を予測モデルから取得し、予測値の存在領域を探索領域から特定する。また、予測値の存在領域の出力パラメータが未取得の場合には生成部４０２は、分割領域内における条件の設定値を半導体処理装置２０１に与えた場合の出力の実測値を、分割領域ごとに取得する。
【００６３】
目標値が半導体処理装置２０１の出力パラメータの値である場合、特定部４０３は、予測モデルに当該出力パラメータの値を与えることにより、目標値に対応する予測値として入力パラメータの値を予測モデルから取得する。そして、特定部４０３は、予測値である入力パラメータの値の存在領域を探索領域から特定する。具体的には、たとえば、図１において、目標値が出力パラメータの値ｙ１２である場合、当該目標値ｙ１２に対応する予測値は、図１の目標値ｙ１２の等高線により特定される入力パラメータＸ１、Ｘ２の値である。したがって、特定部４０３は、探索領域Ａから目標値ｙ１２の等高線により特定される入力パラメータＸ１、Ｘ２の値の存在領域Ａ１，Ａ２，Ａ３，Ａ８，Ａ９を特定する。
【００６４】
判断部４０４は、予測値に対応する目標値が、入力部４０１によって入力された結果の基準値よりも目標値に近いか否かを判断する。具体的には、たとえば、判断部４０４は、探索領域Ａにおいて、予測値に対応する目標値と目標値との間の距離（第１距離）と、結果の基準値と目標値との間の距離（第２距離）とを求める。距離は、たとえば、ユークリッド距離である。判断部４０４は、第１距離が第２距離よりも短い場合、予測値に対応する目標値が結果の基準値よりも目標値に近いと判断する。判断部４０４は、第１距離が第２距離よりも短くない場合、予測値に対応する目標値が結果の基準値よりも目標値に近くないと判断する。
【００６５】
設定部４０５は、判断部４０４によって予測値に対応する目標値の方が、結果の基準値よりも目標値に近いと判断された場合、予測値および予測値に対応する目標値を条件の基準値および結果の基準値に設定し、特定部４０３によって特定された予測値の存在領域を探索領域に設定する。これにより、基準値が目標値に接近し、探索領域も予測値の存在領域に絞り込まれる。
【００６６】
出力部４０６は、予測値が目標値の達成条件を充足した場合に達成条件を充足した予測値を出力する。達成条件とは、たとえば、目標値の許容範囲である。出力部４０６は、達成条件を充足した予測値を出力デバイス３０４の一例であるディスプレイに表示してもよく、通信ＩＦ３０５を介して外部装置に送信してもよく、記憶デバイス３０２やデータベース２０５に保存してもよい。
【００６７】
決定部４０７は、判断部４０４によって予測値に対応する目標値の方が、結果の基準値よりも目標値に近くないと判断された場合、予測値および予測値に対応する目標値を除外データに決定する（図６のステップＳ６０１で後述）。除外データとは、予測モデルに与えてはいけない入力パラメータの値である。
【００６８】
またこの場合、設定部４０５は、決定部４０７によって決定された除外データを除いたデータを学習データに設定する。これにより、生成部４０２は、除外データが存在しない学習データを用いることができる。したがって、解である入力パラメータの値の探索速度の向上を図ることができる。
【００６９】
また、決定部４０７は、判断部４０４によって予測値に対応する目標値の方が結果の基準値よりも目標値に近くないと判断された場合、予測値の存在領域を除外領域に決定してもよい（図６のステップＳ６０２で後述）。除外領域とは、予測モデルが出力してはいけない入力パラメータの値の領域である。
【００７０】
またこの場合、設定部４０５は、探索領域から決定部４０７によって決定された除外領域を除いた残存領域を探索領域に設定する。これにより、目標値に近くない結果しか得られない予測値の範囲を除外して探索領域を絞り込むことができる。したがって、解である入力パラメータの値の探索速度の向上を図ることができる。
【００７１】
分割部４０８は、探索領域を複数の領域に分割する。具体的には、たとえば、分割部４０８は、図１に示したように、探索領域Ａを９個の領域（分割領域）Ａ１〜Ａ９に分割する。この場合、生成部４０２は、分割領域内における条件の設定値を半導体処理装置２０１に与えた場合の出力の実測値を、分割領域ごとに取得する。そして、生成部４０２は、各分割領域での条件の設定値と出力の実測値とに基づいて、予測モデルを生成する。複数の半導体処理装置２０１を用いることで、実測値を分割領域ごとに並列に取得することができ、予測モデルの生成速度の向上を図ることができる。
【００７２】
また、設定部４０５は、判断部４０４によって、予測値に対応する目標値の方が結果の基準値よりも目標値に近くないと判断された場合、予測値および予測値に対応する目標値を、条件の基準値および結果の基準値に設定せずに、予測値の存在領域を探索領域に設定してもよい（図６のステップＳ６０４〜Ｓ６０６で後述）。これにより、探索領域を更に細分化することで、より詳細な解の探索を実行し、解の見逃しがないか確認することができる。
【００７３】
また、決定部４０７は、上述したように、判断部４０４によって予測値に対応する目標値の方が結果の基準値よりも前記目標値に近くないと判断された場合、予測値および予測値に対応する目標値を除外データに決定してもよい。この場合、生成部４０２は、実測値から除外データを除いた残余の実測値と、設定値から残余の実測値に対応する設定値を除いた残余の設定値と、に基づいて、予測モデルを生成してもよい（図７で後述）。これにより、解である入力パラメータの値の探索速度の向上を図ることができる。
【００７４】
また、決定部４０７は、上述したように、判断部４０４によって予測値に対応する目標値の方が結果の基準値よりも目標値に近くないと判断された場合、予測値の存在領域を除外領域に決定してもよい。この場合、生成部４０２は、探索領域から除外領域を除いた残余の探索領域内の条件の設定値と、当該設定値を半導体処理装置２０１に与えた場合の出力の実測値と、に基づいて、予測モデルを生成してもよい（図８で後述）。これにより、解である入力パラメータの値の探索速度の向上を図ることができる。
【００７５】
検出部４０９は、半導体処理装置２０１の出力と、所定の出力しきい値と、に基づいて、半導体処理装置２０１の不安定動作を検出する。検出部４０９は、不安定動作検出システム２６３に相当する。この場合、出力部４０６は、検出部４０９による検出結果を出力する。
【００７６】
＜半導体処理装置２０１の制御処理手順例＞
図５は、半導体処理装置２０１の制御処理手順例を示すフローチャート１である。探索装置３００は、目標とする半導体処理装置２０１からの出力値（出力パラメータの目標値）、および探索設定の入力を受け付ける（ステップＳ５０１）。探索設定とは、たとえば、探索結果と目標値との差または乖離の許容値、探索において１つの条件を実行する時間の上限、探索回数、探索１セットの合計時間の上限、探索全体の合計時間の上限、探索結果の解析時間の上限、解析データ数の上限、半導体処理装置２０１からの出力データの取得頻度のしきい値、半導体処理装置２０１からの出力データ（出力パラメータの値）の取得時間の上限、半導体処理装置２０１からの出力データ数の下限である。
【００７７】
つぎに、探索装置３００は、ベースとなる解の入力およびその解に関する情報の入力を受け付ける（ステップＳ５０２）。具体的には、たとえば、探索装置３００は、過去に実用いた入力パラメータおよびその入力パラメータを用いた際の出力パラメータ、探索開始前の最良の解（入力パラメータの値）および最良の解を用いた際の出力パラメータ、探索開始前の出力パラメータの目標値、入力パラメータと出力パラメータとの関係を説明するモデル関数の入力を受け付ける。
【００７８】
つぎに、探索装置３００は、ステップＳ５０２で入力された最良の解を最良解ＯＳ１として保存する（ステップＳ５０３）。解が無い場合には、解から最も遠いことを示す記号または値が設定される。
【００７９】
つぎに、探索装置３００は、基本探索領域を探索領域として設定する（ステップＳ５０４）。具体的には、たとえば、探索装置３００は、各入力パラメータに対する探索可否の設定、探索する入力パラメータの制御範囲の上限値および下限値、探索する入力パラメータの制御範囲を限定するための値（たとえば、上限値や下限値）を設定する。また、探索装置３００は、設定エラー検出システム２２３によって設定エラーとして判断する入力パラメータの制御範囲を参照して、探索領域を決定する。さらに、探索装置３００は、不安定動作検出システム２６３によって検出されたパラメータを参照して、探索領域を決定する。また、不安定動作検出システム２６３は過去に、半導体処理装置２０１の動作が不能または不安定となった入力パラメータの組合せまたは各入力パラメータ範囲の値を保持しており、これを用いて探索装置３００は探索領域を決定できる。
【００８０】
たとえば、図１において、入力パラメータの種類としてＸ１、Ｘ２の２つの入力パラメータが選択された場合、入力パラメータＸ１の制御範囲を［ｘ１１，ｘ１ｎ］、入力パラメータＸ２の制御範囲を［ｘ２１，ｘ２ｎ］とすれば、図１に示した全範囲の領域Ａが探索領域となる。
【００８１】
ステップＳ５０１〜Ｓ５０４の目標設定コントローラ２６１の入力および設定内容は、自律探索システム２６２へ渡され、次に説明するステップＳ５０５〜Ｓ５１０の手順によって自動探索が実行される。
【００８２】
探索装置３００は、探索領域を分割する（ステップＳ５０５）。具体的には、たとえば、探索装置３００は、１つ以上の入力パラメータに対して、探索可能な入力パラメータの制御範囲を２つ以上の領域に分割する。分割された領域を分割領域と称す。探索条件数が多くなり、所望の時間内に探索が完了できないと予測される場合には、入力パラメータの種類のうちいくつかの入力パラメータにおいて解が存在すると推定される分割領域を指定する方法、および一度に変更可能な入力パラメータの種類を指定する方法を用いることで、探索領域を限定したり、探索条件数を少なくしたりすることができる。またこれら２つの方法を組み合わせることで、探索領域を限定したり、探索条件数を少なくしたりすることができる。
【００８３】
たとえば、図１において、入力パラメータの種類としてＸ１、Ｘ２の２つの入力パラメータが選択された場合、入力パラメータＸ１の制御範囲［ｘ１１，ｘ１ｎ］がｘ１ａ，ｘ１ｂ，ｘ１ｃに分割され、入力パラメータＸ２の制御範囲［ｘ２１，ｘ２ｎ］ｘ２ａ，ｘ２ｂ，ｘ２ｃに分割されたとすれば、図１に示した９つの分割領域Ａ１〜Ａ９が得られる。
【００８４】
探索装置３００は、分割領域ごとに自律探索を実行する（ステップＳ５０６）。具体的には、たとえば、探索装置３００は、分割領域および探索条件を用いた自律探索により、各探索条件における半導体処理装置２０１の入出力データを探索結果として取得する。入出力データとは、半導体処理装置２０１に与えられる入力パラメータの値（入力データ）と半導体処理装置２０１から得られる出力パラメータの値（出力データ）の組である。
【００８５】
具体的には、たとえば、探索装置３００は、分割領域ごとに、探索条件を満たす入力パラメータの値を選択し、選択した入力パラメータの値を半導体処理装置２０１に与える。そして、探索装置３００は、半導体処理装置２０１からの出力データ（出力パラメータの値）を取得する。この入力パラメータの値と、当該値に対応する出力パラメータの値と、の組み合わせが、探索結果である。
【００８６】
またこの場合、不安定動作検出システム２６３は、自律探索実行時において、半導体処理装置２０１が処理動作を継続可能ではあるが、半導体処理装置２０１の処理が不安定になる場合を検出する。不安定動作が検出された場合には、処理完了後に半導体処理装置２０１を定常動作状態へ復旧するためのシーケンスを実施するか、処理を直ちに停止し半導体処理装置２０１を定常動作状態へ復旧するためのシーケンスを実行することで、目標設定コントローラ２６１による自律探索を継続する。
【００８７】
探索装置３００は、分割領域ごとの探索結果をデータベース２０５に保存する（ステップＳ５０７）。具体的には、たとえば、探索装置３００は、分割領域ごとに、自律探索（ステップＳ５０６）で用いられた入力パラメータの値と、当該入力パラメータの値を用いて取得された半導体処理装置２０１の出力パラメータの値と、の組である入出力データを、分割領域ごとの探索結果としてデータベース２０５に保存する。
【００８８】
探索装置３００は、目標（目標出力）を満たす解（入力パラメータ）を予測するための予測モデルを生成する（ステップＳ５０８）。具体的には、たとえば、探索装置３００は、ステップＳ５０７でデータベース２０５に保存された学習データを用いて、半導体処理装置２０１の入出力データの関係を示す関数を予測モデルとして生成する。入出力データの関係を解析する方法としては、ニューラルネットワーク、サポートベクター回帰、カーネル法を用いた回帰等の多入力多出力に応対可能な回帰分析を使用できる。また、相関分析、主成分分析、重回帰分析等の統計解析が使用できる。
【００８９】
予測モデルの生成において、出力データとして、たとえば、半導体処理装置２０１の処理結果に対する間接的な計測値を取得するセンサデータおよびモニタデータが用いられる。出力データの取得頻度が探索設定で規定した頻度よりも低い、または、探索設定で規定した取得時間よりも長く、探索によって取得できる出力データ数が、探索設定で規定した出力データ数よりも少なくなる場合がある。この場合には、出力データの取得数と比較して多くのデータ数が取得可能なセンサデータおよびモニタデータを取得すればよい。これにより、出力データに対するセンサデータおよびモニタデータの関係や、センサデータおよびモニタデータに対する入力データの関係を解析することができる。また、これらの両方の解析結果を用いることで、出力データに対する入力データの関係を求めることができる。
【００９０】
探索装置３００は、解が存在する分割領域を推定する（ステップＳ５０９）。解が存在すると推定した領域内の出力データが取得済みである場合（ステップＳ５０９０Ａ：Ｙｅｓ）、探索装置３００は、推定した分割領域中から最良解ＯＳ２を特定し、特定した最良解ＯＳ２をデータベース２０５に保存する（ステップＳ５１０）。また、解が存在すると推定した領域内の出力データが未取得である場合（ステップＳ５０９０Ａ：Ｎｏ）、探索装置３００は、推定した領域内の自律探索を実行し（ステップ５０６０Ａ）、解が存在すると推定した領域内の出力データ、すなわち探索結果を取得し、データベース２０５に保存する（ステップ５０７０Ａ）。これらの自律探索および結果の保存はステップ５０６およびステップ５０７と同様の処理である。ステップＳ５０９の処理は、２通りの方法がある。１つは、予測モデルに、ステップＳ５０１で与えられた出力パラメータの目標値を与える方法（第１の推定方法）である。
【００９１】
第１の推定方法では、具体的には、たとえば、探索装置３００は、ステップＳ５０８で得られた予測モデルに、ステップＳ５０１で与えられた出力パラメータの目標値を代入することで、出力パラメータの目標値を満たす解となる入力データ（入力パラメータの値）を推定する。そして、探索装置３００は、解となる入力データが存在する分割領域を特定する。たとえば、予測モデルが図１の入出力関係を示す関数である場合、出力パラメータの目標値としてｙ６が与えられると、分割領域Ａ１〜Ａ９のうち、解が存在する分割領域として、Ａ１、Ａ４、Ａ７の３つの分割領域が推定される。Ａ１、Ａ４、Ａ７の各分割領域において出力データが未取得の場合には、前述した通りステップ５０６０Ａおよびステップ５０７０Ａが実行される。
【００９２】
ステップＳ５１０において、探索装置３００は、取得済みの出力データより目標値ｙ６と等しい出力データが存在する分割領域、出力データと目標値の差または乖離が許容値（Ｓ５０１で与えられた許容値）より小さい出力データが存在する分割領域、または目標値ｙ６に最も近い出力データが存在する分割領域を特定し、この分割領域を最良解ＯＳ２が存在する領域（以下、特定の分割領域）に決定する。特定の分割領域となりうる分割領域が複数特定された場合には、探索装置３００は、それら全てを最良解ＯＳ２が存在する分割領域に決定する。または、探索装置３００は、それら複数の分割領域のうち、出力データと目標値の差または乖離が許容値（Ｓ５０１で与えられた許容値）より小さい出力データ取得できた数が最も多い分割領域を、最良解ＯＳ２が存在する分割領域に決定する。上記の例の場合、取得した出力データが、予測モデルが示した図１と同様だったと場合には、ｙ６と等しいまたはｙ６に近い値が得られた分割領域Ａ１、Ａ４、Ａ７全て、または分割領域Ａ４が特定の分割領域に決定される。探索装置３００は、特定の分割領域において出力パラメータの目標値と等しい、出力データと目標値の差または乖離が許容値（Ｓ５０１で与えられた許容値）より小さい、または目標値に最も近い出力データが得られた際の入力パラメータの値を最良解ＯＳ２に決定する。
【００９３】
もう１つのステップＳ５０９の処理は、予測モデルにステップＳ５０１で与えられた出力パラメータの目標値を代入することでは、出力パラメータの目標値を満たす解となる入力パラメータを直接求められない場合に適用できる方法である（第２の推定方法）。第２の推定方法は、予測モデルに一度に与える入力パラメータを一組として、予測モデルに、多数の入力パラメータの組を与え、推定出力パラメータを計算し、最も目標出力に近い結果が得られる入力パラメータの組を取得する方法である。例えば、探索装置３００は、各分割領域に含まれるに入力パラメータの組を、分割領域毎に１つ以上作成し、これを予測モデルに与え、その際の出力パラメータを計算することができる。分割領域毎の代表的な推定出力を得る方法としては、分割領域に含まれる入力パラメータの組として、分割領域内の中心座標となる値を用いることができる。
【００９４】
極めて多数の入力パラメータの組を予測モデルに与え推定出力を計算する場合において、計算時間が膨大になる場合には、上記式（１．１）〜式（１．３）を用いて述べた通り、探索装置３００は、予測モデルに与える入力パラメータの中心条件を決定し、その中心条件から変更可能な入力パラメータの種類を制限することで、計算時間を抑制することができる。また、中心条件から一度に変更可能なパラメータの数を制限することで、計算時間を抑制することができる。これにより、探索装置３００は、予測モデルに与える入力パラメータの組の数を削減しながら、目標出力により近い結果が得られる入力パラメータを得ることができる。中心条件を設定する際には、過去の探索結果またはエンジニアの知識を利用することができる。または、全探索領域の中心座標を中心条件とすることができる。
【００９５】
第２の推定方法では、具体的には、探索装置３００は、ステップＳ５０８で得られた予測モデルに、入力パラメータの組の値を代入することで、予測値となる出力パラメータの値を取得する。たとえば、予測モデルが図１の入出力関係を示す関数である場合、予測モデルへ入力パラメータの値として、（ｘ１１，ｘ２１），（ｘ１１，ｘ２２），（ｘ１１，ｘ２３），（ｘ１２，ｘ２１），（ｘ１２，ｘ２２），（ｘ１２，ｘ２３），（ｘ１３，ｘ２１），（ｘ１３，ｘ２２），（ｘ１３，ｘ２３），（ｘ１ｎ，ｘ２１），（ｘ１ｎ，ｘ２２），（ｘ１ｎ，ｘ２３）が与えられると、各入力パラメータに対応する推定出力パラメータを得ることができる。
【００９６】
これらの各入力パラメータに対応する出力パラメータが未取得である場合（ステップＳ５０９０Ａ：Ｙｅｓ）には、探索装置３００は、各入力パラメータを用いて自律探索を実行し（ステップ５０６０Ａ）、解が存在すると推定した領域内の出力データ、すなわち探索結果を取得しデータベース２０５に保存する（ステップ５０７０Ａ）。これらの自律探索および結果の保存はステップ５０６およびステップ５０７と同様の処理である。また、各入力パラメータに対応する出力パラメータが取得済みである場合（ステップＳ５０９０Ａ：Ｎｏ）、ステップＳ５１０に移行する。
【００９７】
そして、ステップＳ５１０において、探索装置３００は、たとえば、分割領域において、出力パラメータの目標値から最も近い予測値となる出力パラメータの値が得られた入力パラメータの値を最良解ＯＳ２に決定する。たとえば、取得した出力データが、予測モデルが示した図１同様だったと場合には、出力パラメータの目標値がｙ１０であった場合、入力パラメータの値（ｘ１３，ｘ２３）に応じた出力パラメータの値ｙ１０が最も近い値となる。したがって、最良解ＯＳ２は、（ｘ１３，ｘ２３）となる。なお、第１の推定方法および第２の推定方法のうち、いずれを適用するかはあらかじめ設定される。
【００９８】
探索装置３００は、最良解ＯＳ２の値は最良解ＯＳ１の値より目標に近い出力パラメータが得られる解であるか否かを判断する（ステップＳ５１１）。そして、最良解ＯＳ２の値は最良解ＯＳ１の値より目標に近い出力パラメータが得られる解である場合（ステップＳ５１１：Ｙｅｓ）、ステップＳ５１２に移行し、そうでない場合（ステップＳ５１１：Ｎｏ）、ステップＳ６０１（図６）に移行する。
【００９９】
ステップＳ５１１：Ｙｅｓの場合、探索装置３００は、最良解ＯＳ２を最良解ＯＳ１に設定することで、最良解ＯＳ１を更新する（ステップＳ５１２）。また、探索装置３００は、更新後の最良解ＯＳ１の分割領域を探索領域に設定することで、探索領域を更新する（ステップＳ５１４）。
【０１００】
このあと、探索装置３００は、目標が達成されたか否かを判断する（ステップＳ５１４）。目標が達成された場合（ステップＳ５１４：Ｙｅｓ）、探索装置３００は、制御処理を終了する。一方、目標が達成されていない場合（ステップＳ５１４：Ｎｏ）、ステップＳ５０５またはステップＳ６０１（図６）に移行する。ステップＳ５０５またはステップＳ６０１（図６）のいずれに移行するかは、あらかじめ設定されていてもよく、その都度、ユーザに選択させてもよい。なお、目標未達成（ステップＳ５１４：Ｎｏ）で、かつ、ステップＳ５０５に移行する場合、探索装置３００は、ステップＳ５１３の更新後の探索領域を分割することになる（ステップＳ５０５）。
【０１０１】
ステップＳ５１４では、具体的には、たとえば、更新後の最良解ＯＳ１に対応する出力パラメータが目標値と等しいまたは目標値との差が許容範囲内である場合、探索装置３００は、目標達成と判断する（ステップＳ５１４：Ｙｅｓ）。また、更新後の最良解ＯＳ１に対応する出力パラメータが目標値と等しいまたは目標値との差が許容範囲内でなくても、ステップＳ５０１で設定した探索時間が経過した場合、目標を達成したと判断する（ステップＳ５１４：Ｙｅｓ）。一方、更新後の最良解ＯＳ１に対応する出力パラメータが目標値と等しいまたは目標値との差が許容範囲内でなく、かつ、ステップＳ５０１で設定した探索時間が経過していない場合、目標未達成と判断する（ステップＳ５１４：Ｎｏ）。
【０１０２】
図６は、半導体処理装置２０１の制御処理手順例を示すフローチャート２である。探索装置３００は、ステップＳ５０９で得られた分割領域内の探索データを除外データに決定する（ステップＳ６０１）。具体的には、たとえば、探索装置３００は、推定領域内の入力データ（入力パラメータの値）をおよび出力データ（出力パラメータ）を除外データに決定する。除外データは、今後の処理で除外される可能性のあるデータである（実際の解析対象となるデータからの除外は図７のＳ７０３、または図６〜図８のＳ６０８で実施）。同様に、探索装置３００は、ステップＳ５１０で得られた分割領域を除外領域に決定する（ステップＳ６０２）。除外領域は、今後の処理で除外される可能性のある領域である（実際の解析対象となるデータからの除外は図８のＳ８０３、または図６〜図８のＳ６０８で実施）。
【０１０３】
このあと、探索装置３００は、ステップＳ５０９で得られた分割領域を分割するか否かを判断する（ステップＳ６０３）。分割する場合（ステップＳ６０３：Ｙｅｓ）、ステップＳ６０４に移行し、分割しない場合（ステップＳ６０３：Ｎｏ）、ステップＳ６０８に移行する。
【０１０４】
ステップＳ６０３では、具体的には、たとえば、探索装置３００は、ユーザからの分割指示入力の有無により、分割領域を分割するか否かを判断する。また、探索装置３００は、強制的に分割領域を分割してもよい（ステップＳ６０３：Ｙｅｓ）。
【０１０５】
このあと、探索装置３００は、ステップＳ５０８と同様、予測モデルを生成する（ステップＳ６０４）。つぎに、探索装置３００は、ステップＳ５０９と同様、ステップＳ６０３で分割された分割領域群のうち、解が存在する分割領域を推定する（ステップＳ６０５）。推定された分割領域を、推定分割領域と称す。そして、探索装置３００は、ステップＳ６０９０Ａ、Ｓ６０６０Ａ、Ｓ６０７０Ａにおいて、ステップＳ５０９０Ａ、Ｓ５０６０Ａ、Ｓ５０７０Ａと同様の処理を実行する。具体的には、たとえば、解が存在すると推定した領域内の出力データが取得済みである場合（ステップＳ６０９０：Ｙｅｓ）には、探索装置３００は、推定した分割領域中から最良解ＯＳ３を特定し、特定した最良解ＯＳ３をデータベース２０５に保存する（ステップＳ６０６）。また同様に、解が存在すると推定した領域内の出力データが未取得である場合（ステップＳ６０９０：Ｎｏ）には、探索装置３００は、推定した領域内の自律探索を実行し（ステップＳ６０６０Ａ）、解が存在すると推定した領域内の出力データ、すなわち探索結果を取得し、データベース２０５に保存する（ステップＳ６０７０Ａ）。
【０１０６】
このあと、ステップＳ５１１と同様、探索装置３００は、最良解ＯＳ３に対応する出力パラメータの値は最良解ＯＳ１に対応する出力パラメータの値より目標に近い解であるか否かを判断する（ステップＳ６０７）。そして、最良解ＯＳ３に対応する出力パラメータの値は最良解ＯＳ１に対応する出力パラメータの値より目標に近い解である場合（ステップＳ６０７：Ｙｅｓ）、ステップＳ５１２に移行し、そうでない場合（ステップＳ６０７：Ｎｏ）、ステップＳ６０８に移行する。ステップＳ６０８において、探索装置３００は、探索領域から除外領域を除外するか、除外領域の除外および除外データを除外することにより、探索領域を更新して（ステップＳ６０８）、ステップＳ５０５に移行する。
【０１０７】
図７は、半導体処理装置２０１の制御処理手順例を示すフローチャート３である。フローチャート３は、図６に示したフローチャート２の他の処理例である。なお、図６と同一処理については、同一ステップ番号を付し説明を省略する。探索装置３００は、ステップＳ６０１のあと、探索装置３００は、ステップＳ６０１で決定された除外データを除外するか否かを判断する（ステップＳ７０３）。除外して解析する場合（ステップＳ７０３：Ｙｅｓ）、ステップＳ６０４に移行し、除外しないで解析する場合（ステップＳ７０３：Ｎｏ）、ステップＳ６０８に移行する。
【０１０８】
ステップＳ７０３では、具体的には、たとえば、探索装置３００は、ユーザからの除外指示入力の有無により、除外データを除外して解析するか否かを判断する。また、探索装置３００は、強制的に除外データを除外して解析してもよい（ステップＳ７０３：Ｙｅｓ）。
【０１０９】
このあと、探索装置３００は、除外データを使用せずに、分割領域の予測モデルを生成し（ステップＳ６０４）、ステップＳ６０５、Ｓ６０９０Ａ、Ｓ６０６０Ａ、Ｓ６０７０Ａ、Ｓ６０６、Ｓ６０７、Ｓ６０８を実行する。
【０１１０】
図８は、半導体処理装置２０１の制御処理手順例を示すフローチャート４である。フローチャート４は、図６に示したフローチャート２の他の処理例である。なお、図６と同一処理については、同一ステップ番号を付し説明を省略する。探索装置３００は、ステップＳ６０２のあと、探索装置３００は、ステップＳ６０２で決定された除外領域を除外して解析するか否かを判断する（ステップＳ８０３）。除外して解析する場合（ステップＳ８０３：Ｙｅｓ）、ステップＳ６０４に移行し、除外しないで解析する場合（ステップＳ８０３：Ｎｏ）、ステップＳ６０８に移行する。
【０１１１】
ステップＳ８０３では、具体的には、たとえば、探索装置３００は、ユーザからの除外指示入力の有無により、除外領域内の解（入力パラメータの値）を除外して解析するか否かを判断する。また、探索装置３００は、強制的に除外領域を除外して解析してもよい（ステップＳ８０３：Ｙｅｓ）。
【０１１２】
このあと、探索装置３００は、ステップＳ６０４と同様、分割領域の予測モデルを生成する（ステップＳ６０４）。つぎに、探索装置３００は、除外領域内の解（入力パラメータの値）を使用せずに、ステップＳ６０３で分割された分割領域群のうち、解が存在する分割領域を推定する（ステップＳ６０５）。推定された分割領域を、推定分割領域と称す。そして、探索装置３００は、ステップＳ６０９０Ａ、Ｓ６０６０Ａ、Ｓ６０７０Ａ、Ｓ６０６、Ｓ６０７、Ｓ６０８を実行する。
【０１１３】
なお、本制御処理において、データの解析、保存、転送等の規模が大きくなり、その実行時間が１条件を探索する時間より長くなる場合には、それらの実行と並列して探索を継続することが可能である。その際には、探索条件において変更する入力パラメータ数、同時に変更する入力パラメータ数、探索領域の分割数のうち１つ以上を増加させる。これにより、探索条件数を増加させ、この条件を探索することで、解析等を実行する時間を利用して探索結果を増加させることができる。特に、データの解析に必要な時間は数分から数時間以上になる場合があり、その解析中に探索を継続することで、探索速度を向上させることができる。
【０１１４】
＜半導体処理装置２０１の制御処理の適用例１＞
つぎに、半導体デバイスの量産前における半導体処理装置２０１のメンテナンスにおいて、半導体処理装置２０１の装置差を補正するための制御処理の適用例を示す。ここでは機差抑制の手順を説明する例として、半導体処理装置２０１を、放電処理を行うエッチング装置とした。また、ここでは放電処理を実行する際の入力パラメータをレシピと称する。放電処理を行うエッチング装置では、補正対象となる出力として、処理結果または処理に用いる放電の特性が挙げられる。補正の方法としては、基準となるエッチング装置と同一の出力が得られるように他のエッチング装置を補正する方法、または複数のエッチング装置の出力が均一となるように補正する方法がある。
【０１１５】
図９は、機差抑制方法を示すフローチャートである。図９は、具体的には、たとえば、半導体デバイスの量産前における半導体処理装置２０１のメンテナンス処理手順例を示す装置差の補正を行うために、探索装置３００は、メンテナンス後放電データ取得を開始する。
【０１１６】
まず、探索装置３００は、基本的な放電処理を行うためのレシピを用いて基準レシピ放電を行い、その際の入出力データを取得する。また、量産で用いられるレシピによる放電を行い、その際の出力データ（出力パラメータの値）を取得する（ステップＳ９０１）。ステップＳ９０１は、ステップＳ５０１〜Ｓ５０４に対応する処理である。
【０１１７】
つぎに、探索装置３００は、装置差補正レシピを探索する（ステップＳ９０２）。ステップＳ９０２は、ステップＳ５０５〜Ｓ５０７に対応する処理である。そして、探索装置３００は、ステップＳ９０２の探索した装置差補正レシピを用いた装置差補正を実行する（ステップＳ９０３）。ステップＳ９０３は、ステップＳ５０８〜Ｓ５１３、図６〜図８の処理に対応する処理である。補正目標を達成していない場合（ステップＳ９０４：Ｎｏ）、ステップＳ９０２に戻り、補正目標を達成した場合（ステップＳ９０４：Ｙｅｓ）、処理を終了する。ステップＳ９０４は、ステップＳ５１４に対応する処理である。
【０１１８】
なお、同一のエッチング装置を複数用いて探索を並列に進めることで探索速度を向上させてもよい。その際には、図９の手順によって装置差が補正された複数のエッチング装置を使用することで、目標を満たす解が探索できる可能性を高めることができる。更に、探索された解をそれらの複数の装置に展開し補正を行うことが可能となる。
【０１１９】
このように、半導体処理装置２０１のメンテナンス後に探索装置３００による探索方法を実行することにより、半導体処理装置２０１の出力パラメータの値を基準となる出力パラメータの値へ近付けることができる（自動機差補正機能）。
【０１２０】
＜半導体処理装置２０１の制御処理の適用例２＞
つぎに、半導体デバイスの量産処理において、経時変化を補正するための制御処理の適用例を示す。
【０１２１】
図１０は、経時変化補正方法を示すフローチャートである。図１０では、図９と同様に、経時変化を補正する手順を説明する例として、半導体処理装置２０１を、処理に放電を使用するエッチング装置とした。量産前放電データ取得では、量産中の経時変化の補正を行うために、探索装置３００は、まず基本的な放電処理を行うための基準レシピをエッチング装置に与えて基準レシピ放電を行い、その際の出力データ（出力パラメータの値）を取得する（ステップＳ１０１１）。ステップＳ１０１１は、ステップＳ５０１〜Ｓ５０４に対応する処理である。
【０１２２】
つぎに、探索装置３００は、装置差補正候補レシピを探索する（ステップＳ１０１２）。ステップＳ１０１２では、過去の量産時の入出力データの解析結果より、補正対象の経時変化を予測できる出力データまたはセンサデータおよびモニタデータが用いられる。そして、探索装置３００は、量産開始前のエッチング装置において、これらの経時変化を予想できるデータを経時変化後の値にまで変動させるための装置差補正候補レシピの探索を実行する。ステップＳ１０１２は、ステップＳ５０５〜Ｓ５０７に対応する処理である。
【０１２３】
つぎに、探索装置３００は、装置差補正を実行する（ステップＳ１０１３）。ステップＳ１０１３では、探索装置３００は、経時変化が発生していない状態にて用いる基本の量産用レシピとステップＳ１０１２で探索された装置差補正候補レシピとを比較して、装置差補正候補レシピで変更された入力パラメータを明らかにする。これにより、量産前の段階で、補正対象の入力パラメータと出力パラメータとの関係を説明する関数を生成することが可能となり、またその関係より補正候補となるレシピを生成することができる。ステップＳ１０１３は、ステップＳ５０８〜Ｓ５１３、図６〜図８の処理に対応する処理である。このあと、量産処理が開始される。
【０１２４】
ステップＳ１０１３のあと、半導体デバイスの量産処理が開始されると、ウェハが処理室に導入され（ステップＳ１０２１）、エッチング装置が、ウェハをエッチングする（ステップＳ１０２２）。エッチング（ステップＳ１０２２）は、１ステップまたは複数ステップから構成される。エッチング（ステップＳ１０２２）が複数ステップの場合、各ステップのエッチングは、放電条件を変更して実行される。エッチング（ステップＳ１０２２）の完了後に、ウェハは、処理室外へ搬出される（ステップＳ１０２３）。そして、エッチング中に発生し処理室表面に堆積した反応性生物を除去するため、プラズマクリーニングが実施される（ステップＳ１０２４）。次のウェハがあれば（ステップＳ１０２５：Ｙｅｓ）、ステップＳ１０２１に戻り、次のウェハがなければ（ステップＳ１０２５：Ｎｏ）、量産後放電データ取得に移行する。
【０１２５】
量産中のエッチング装置の入出力データは、データベース２０５に保存され、探索装置３００は、並列して入出力データをリアルタイムで解析し続ける。これにより、補正対象の経時変化を予測できる出力データまたはセンサデータおよびモニタデータの推定を量産中に継続することが可能である。また、探索装置３００は、同一の量産処理を実行する複数のエッチング装置の入出力データを集約することで、データ数を増加させることができる。
【０１２６】
量産後または量産開始から指定した時間が経過した際に放電データを取得した場合、探索装置３００は、経時変化を補正するレシピの探索を実行する（ステップＳ１０３１）。具体的には、たとえば、探索装置３００は、ステップＳ１０１１、Ｓ１０１２で取得したデータ、解析された入出力データの関係、および補正候補レシピをステップＳ５０２の入力として使用し、経時変化補正レシピを探索する。ステップＳ１０３１は、ステップＳ５０５〜Ｓ５０７に対応する処理である。
【０１２７】
そして、探索装置３００は、探索結果である経時変化補正レシピを用いて、補正結果の検証を行う（ステップＳ１０３２）。ステップＳ１０３２は、ステップＳ５０８〜Ｓ５１３、図６〜図８の処理に対応する処理である。
【０１２８】
また、ステップＳ１０３１、Ｓ１０３２の実行前に、探索装置３００は、半導体デバイスの量産中に取得した出力データを解析し、補正対象の経時変化を予測できる出力データまたはセンサデータおよびモニタデータを推定し、ステップＳ１０１２を実行してもよい。これにより、補正対象の入力パラメータと出力パラメータとの関係を説明する関数を生成し、またその関係より補正候補となるレシピを生成することができる。これらの結果を、ステップＳ５０２で用いることで、探索装置３００は、ステップＳ１０３１、Ｓ１０３２を実行することができる。
【０１２９】
さらに、上記探索におけるステップＳ５０２の入力としては、エンジニアの知識を用いて、補正に頻繁に用いられる入力パラメータを変更したレシピ、およびそのレシピを用いて放電した際の入出力データとその解析結果を用いてもよい。
【０１３０】
そして、補正目標を達成していない場合（ステップＳ１０３３：Ｎｏ）、ステップＳ１０３１に戻り、補正目標を達成した場合（ステップＳ１０３３：Ｙｅｓ）、処理を終了する。ステップＳ１０３３は、ステップＳ５１４に対応する処理である。図１０に示した探索を実行する際には、同一の量産処理を実施した量産後のエッチング装置を複数用いて探索を並列に進めることで探索速度を向上させることができる。更に、探索された解（入力パラメータ）は、同一の量産処理を実行する複数のエッチング装置に展開し補正を実行することが可能である。
【０１３１】
このように、半導体の量産後において探索装置３００による探索方法を実行することにより、量産中の半導体処理装置２０１の出力パラメータの値の経時変化を補正することができる（自動経時変化補正機能）。
【０１３２】
このように、探索装置３００は、半導体処理装置２０１の入力パラメータの値および出力パラメータの値を自動解析し、その解析結果を考慮した上で、入力パラメータの値を探索するための実験条件を自動で決定する。そして、探索装置３００は、当該実験結果の検証を自動で行い、これらの自動動作を繰り返すことで、目標とする装置状態および処理結果（出力パラメータの値）が得られる入力パラメータの値を自動的に探索することができる。これにより、半導体処理装置２０１自らが自動的に装置性能を引き出すことができ、加えて装置性能を引き出すための制御モデル開発や装置パラメータ（入力パラメータと出力パラメータとの組み合わせ）の選定を行うエンジニアを支援することができる。
【０１３３】
以上説明したように、本実施例にかかる探索装置３００は、半導体を処理する半導体処理装置２０１に設定される条件または半導体処理装置２０１により半導体が処理された結果を示す目標値と、条件と結果との範囲により規定される探索領域内における条件または結果のうち目標値が示す方の基準値と、の入力を受け付ける入力部４０１と、探索領域内の条件の設定値と、当該設定値を半導体処理装置２０１に与えた場合の結果の実測値と、に基づいて、条件と結果との関係を示す予測モデルを生成する生成部４０２と、生成部４０２によって生成された予測モデルに、入力部４０１によって入力された目標値を与えることにより、予測モデルから予測値を取得し、予測値の存在領域を探索領域から特定する特定部４０３と、予測値に対応する前記結果の実測値が入力部４０１によって入力された基準値よりも目標値に近いか否かを判断する判断部４０４と、判断部４０４によって予測値に対応する前記結果の実測値の方が目標値に近いと判断された場合、予測値を基準値に設定し、特定部によって特定された予測値の存在領域を探索領域に設定する設定部４０５と、予測値に対応する前記結果の実測値が目標値の達成条件を充足した場合に達成条件を充足した予測値を出力する出力部４０６と、を有する。
【０１３４】
これにより、半導体処理装置２０１の入出力に関する最良解への到達精度の向上を図ることができる。したがって、半導体処理装置２０１における運用の効率化および処理の最適化を図ることができる。
【０１３５】
また、探索装置３００は、判断部４０４によって予測モデルから得られた予測値に対応する前記結果の実測値の方が目標値に近くないと判断された場合、決定部４０７により予測値の存在領域内の予測値および予測値に対応する前記結果の実測値を除外データに決定し、設定部４０５により探索領域から除外データと当該除外データが得られた場合に半導体処理装置２０１に与えられた目標値とにより特定される除外領域を除いた残存領域を探索領域に設定する。これにより、目標値に近くない予測値と目標値との組み合わせが存在する除外領域を最新の探索領域から除外することができ、最良解への到達精度の向上を図ることができる。
【０１３６】
また、探索装置３００は、分割部４０８により探索領域を複数の領域に分割し、判断部４０４によって予測値に対応する前記結果の実測値の方が目標値に近いと判断された場合、特定部４０３により、予測値を基準値に設定し、予測値の存在領域を複数の分割領域の中から特定する。これにより、予測値の存在領域を容易に特定することができ、探索速度の向上を図ることができる。
【０１３７】
また、探索装置３００は、分割部４０８により探索領域を複数の領域に分割し、生成部４０２により、分割領域内における条件の設定値を半導体処理装置２０１に与えた場合の結果の実測値を、分割領域ごとに取得し、生成部４０２により、各分割領域での条件の設定値と結果の実測値とに基づいて、予測モデルを生成する。これにより、複数の半導体処理装置２０１を用いることで、実測値を分割領域ごとに並列に取得することができ、予測モデルの生成速度の高速化を図ることができる。
【０１３８】
また、探索装置３００は、判断部４０４によって予測値に対応する前記結果の実測値の方が目標値に近くないと判断された場合、決定部４０７により予測値の存在領域内で取得したデータを除外データに決定し、生成部４０２により、実測値から除外データを除いた特定の実測値と、設定値から除外データが得られた場合に半導体処理装置２０１に与えられた設定値を除いた特定の設定値と、に基づいて、予測モデルを生成する。また、目標値に近くない予測値と設定値との組み合わせが存在する除外領域を予測値の候補から除外することができ、予測モデルの精度向上を図ることができる。したがって、生成された予測モデルにより、より良い予測値を得ることができる。
【０１３９】
また、探索装置３００は、検出部４０９により、結果の実測値と、所定の出力しきい値と、に基づいて、半導体処理装置２０１の不安定動作を検出し、出力部４０６により、検出部４０９による検出結果を出力する。これにより、探索の継続可否をユーザに促すことができる。
【０１４０】
なお、本発明は前述した実施例に限定されるものではなく、添付した特許請求の範囲の趣旨内における様々な変形例及び同等の構成が含まれる。例えば、前述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに本発明は限定されない。また、ある実施例の構成の一部を他の実施例の構成に置き換えてもよい。また、ある実施例の構成に他の実施例の構成を加えてもよい。また、各実施例の構成の一部について、他の構成の追加、削除、または置換をしてもよい。
【０１４１】
また、前述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等により、ハードウェアで実現してもよく、プロセッサがそれぞれの機能を実現するプログラムを解釈し実行することにより、ソフトウェアで実現してもよい。
【０１４２】
各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶装置、又は、ＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）カード、ＳＤカード、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）の記録媒体に格納することができる。
【０１４３】
また、制御線や情報線は説明上必要と考えられるものを示しており、実装上必要な全ての制御線や情報線を示しているとは限らない。実際には、ほとんど全ての構成が相互に接続されていると考えてよい。
【符号の説明】
【０１４４】
２００  半導体製造システム
２０１  半導体処理装置
２０２  装置制御システム
２０３  モニタシステム
２０４  センサシステム
２０５  データベース
２０６  自動制御システム
２２１  レシピ設定コントローラ
２２２  装置基本設定コントローラ
２２３  設定エラー検出システム
２６１  目標設定コントローラ
２６２  自律探索システム
２６３  不安定動作検出システム
３００  探索装置
４０１  入力部
４０２  生成部
４０３  特定部
４０４  判断部
４０５  設定部
４０６  出力部
４０７  決定部
４０８  分割部
４０９  検出部
【図１】
2020025116.tif 000004
【図２】
2020025116.tif 000005
【図３】
2020025116.tif 000006
【図４】
2020025116.tif 000007
【図５】
2020025116.tif 000008
【図６】
2020025116.tif 000009
【図７】
2020025116.tif 000010
【図８】
2020025116.tif 000011
【図９】
2020025116.tif 000012
【図１０】
2020025116.tif 000013
【手続補正書】
【提出日】令和1年11月13日(2019.11.13)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
半導体を処理する半導体処理装置に設定される条件または前記半導体処理装置により前記半導体が処理された結果を示す目標値と、前記条件と前記結果との範囲により規定される探索領域内における前記条件または前記結果のうち前記目標値が示す方の基準値と、の入力を受け付ける入力部と、
前記探索領域内の前記条件の設定値と、当該設定値を前記半導体処理装置に与えた場合の前記結果の実測値と、に基づいて、前記条件と前記結果との関係を示す予測モデルを生成する生成部と、
前記生成部によって生成された予測モデルに、前記入力部に入力された目標値を与えることにより、前記予測モデルから予測値を取得し、前記予測値の存在領域を前記探索領域から特定する特定部と、
前記予測値に対応する前記結果の実測値が前記入力部に入力された基準値よりも前記目標値に近いか否かを判断する判断部と、
前記判断部によって前記予測値に対応する前記結果の実測値の方が前記目標値に近いと判断された場合、前記予測値に対応する前記結果の実測値を前記基準値に設定し、前記特定部によって特定された前記予測値の存在領域を前記探索領域に設定する設定部と、
前記予測値に対応する前記結果の実測値が前記目標値の達成条件を充足した場合に前記達成条件を充足した予測値を出力する出力部と、
を有することを特徴とする探索装置。
【請求項２】
請求項１に記載の探索装置であって、
前記判断部によって前記予測値に対応する前記結果の実測値の方が前記目標値に近くないと判断された場合、前記予測値の存在領域内の予測値および予測値に対応する前記結果の実測値を除外データに決定する決定部を有し、
前記設定部は、前記探索領域から前記決定部によって決定された除外データと当該除外データが得られた場合に前記半導体処理装置に与えられた目標値とにより特定される除外領域を除いた残存領域を前記探索領域に設定することを特徴とする探索装置。
【請求項３】
請求項１に記載の探索装置であって、
前記探索領域を複数の領域に分割する分割部を有し、
前記特定部は、前記判断部によって前記予測値に対応する前記結果の実測値の方が前記目標値に近いと判断された場合、前記予測値を前記基準値に設定し、前記特定部によって特定された前記予測値の存在領域を、前記分割部によって得られた複数の分割領域の中から特定することを特徴とする探索装置。
【請求項４】
請求項１に記載の探索装置であって、
前記探索領域を複数の領域に分割する分割部を有し、
前記生成部は、前記分割部によって得られた分割領域内における前記条件の設定値を前記半導体処理装置に与えた場合の前記結果の実測値を、前記分割領域ごとに取得し、前記各分割領域での前記条件の設定値と前記結果の実測値とに基づいて、前記予測モデルを生成することを特徴とする探索装置。
【請求項５】
請求項１に記載の探索装置であって、
前記設定部は、前記判断部によって前記予測値に対応する前記結果の実測値の方が前記目標値に近くないと判断された場合、前記予測値に対応する前記結果の実測値を前記基準値に設定せずに、前記予測値の存在領域を前記探索領域に設定することを特徴とする探索装置。
【請求項６】
請求項１に記載の探索装置であって、
前記判断部によって前記予測値に対応する前記結果の実測値の方が前記目標値に近くないと判断された場合、前記予測値の存在領域内の予測値および前記予測値に対応する前記結果の実測値を除外データに決定する決定部を有し、
前記生成部は、前記実測値から前記除外データを除いた特定の実測値と、前記設定値から前記除外データが得られた場合に前記半導体処理装置に与えられた設定値を除いた特定の設定値と、に基づいて、前記予測モデルを生成することを特徴とする探索装置。
【請求項７】
請求項１に記載の探索装置であって、
前記結果の実測値と、所定の出力しきい値と、に基づいて、前記半導体処理装置の不安定動作を検出する検出部を有し、
前記出力部は、前記検出部による検出結果を出力することを特徴とする探索装置。
【請求項８】
請求項１に記載の探索装置であって、
前記設定部は、前記予測モデルに与える前記条件の中心条件を設定し、
前記特定部は、前記生成部によって生成された予測モデルに、前記設定部によって設定された中心条件を与えることにより、前記予測モデルから前記予測値を取得し、前記予測値の存在領域を前記探索領域から特定する、
ことを特徴とする探索装置。
【請求項９】
請求項８に記載の探索装置であって、
前記設定部は、前記中心条件から一度に変更可能な前記条件の種類の数を指定する、
ことを特徴とする探索装置。
【請求項１０】
探索装置が実行する探索方法であって、
前記探索装置は、
半導体を処理する半導体処理装置に設定される条件または前記半導体処理装置により前記半導体が処理された結果を示す目標値と、前記条件と前記結果との範囲により規定される探索領域内における前記条件または前記結果のうち前記目標値が示す方の基準値と、の入力を受け付ける入力処理と、
前記探索領域内の前記条件の設定値と、当該設定値を前記半導体処理装置に与えた場合の前記結果の実測値と、に基づいて、前記条件と前記結果との関係を示す予測モデルを生成する生成処理と、
前記生成処理によって生成された予測モデルに、前記入力処理によって入力された目標値を与えることにより、前記予測モデルから予測値を取得し、前記予測値の存在領域を前記探索領域から特定する特定処理と、
前記予測値に対応する前記結果の実測値が前記入力処理によって入力された基準値よりも前記目標値に近いか否かを判断する判断処理と、
前記判断処理によって前記予測値の方が前記目標値に近いと判断された場合、前記予測値に対応する前記結果の実測値を前記基準値に設定し、前記特定処理によって特定された前記予測値の存在領域を前記探索領域に設定する設定処理と、
前記予測値が前記目標値の達成条件を充足した場合に前記達成条件を充足した予測値を出力する出力処理と、
を実行することを特徴とする探索方法。
【請求項１１】
請求項１０に記載の探索方法であって、
前記探索装置は、
前記判断処理によって前記予測値に対応する前記結果の実測値の方が前記目標値に近くないと判断された場合、前記存在領域内の予測値および予測値に対応する前記結果の実測値を除外データに決定する決定処理を実行し、
前記設定処理では、前記探索装置は、前記探索領域から前記決定処理によって決定された除外データと当該除外データが得られた場合に前記半導体処理装置に与えられた目標値とにより特定される除外領域を除いた残存領域を前記探索領域に設定することを特徴とする探索方法。
【請求項１２】
請求項１０に記載の探索方法であって、
前記探索装置は、
前記探索領域を複数の領域に分割する分割処理を実行し、
前記特定処理では、前記探索装置は、前記判断処理によって前記予測値に対応する前記結果の実測値の方が前記目標値に近いと判断された場合、前記予測値を前記基準値に設定し、前記特定処理によって特定された前記予測値の存在領域を、前記分割処理によって得られた複数の分割領域の中から特定することを特徴とする探索方法。
【請求項１３】
請求項１０に記載の探索方法であって、
前記探索装置は、
前記探索領域を複数の領域に分割する分割処理を実行し、
前記生成処理では、前記探索装置は、前記分割処理によって得られた分割領域内における前記条件の設定値を前記半導体処理装置に与えた場合の前記結果の実測値を、前記分割領域ごとに取得し、前記各分割領域での前記条件の設定値と前記結果の実測値とに基づいて、前記予測モデルを生成することを特徴とする探索方法。
【請求項１４】
請求項１０に記載の探索方法であって、
前記探索装置は、
前記設定処理では、前記探索装置は、前記判断処理によって前記結果の実測値の方が前記目標値に近くないと判断された場合、前記予測値に対応する前記結果の実測値を前記基準値に設定せずに、前記予測値の存在領域を前記探索領域に設定することを特徴とする探索方法。
【請求項１５】
請求項１０に記載の探索方法であって、
前記探索装置は、
前記判断処理によって前記予測値に対応する前記結果の実測値の方が前記目標値に近くないと判断された場合、前記予測値の存在領域内の予測値および前記予測値に対応する前記結果の実測値を除外データに決定する決定処理を実行し、
前記生成処理では、前記探索装置は、前記実測値から前記除外データを除いた特定の実測値と、前記設定値から前記除外データが得られた場合に前記半導体処理装置に与えられた設定値を除いた特定の設定値と、に基づいて、前記予測モデルを生成することを特徴とする探索方法。
【請求項１６】
請求項１０に記載の探索方法であって、
前記探索装置は、
前記結果の実測値と、所定の出力しきい値と、に基づいて、前記半導体処理装置の不安定動作を検出する検出処理を実行し、
前記出力処理では、前記探索装置は、前記検出処理による検出結果を出力することを特徴とする探索方法。
【請求項１７】
請求項１０に記載の探索方法であって、
前記設定処理では、前記探索装置は、前記予測モデルに与える前記条件の中心条件を設定し、
前記特定処理では、前記探索装置は、前記生成部によって生成された予測モデルに、前記設定部によって設定された中心条件を与えることにより、前記予測モデルから前記予測値を取得し、前記予測値の存在領域を前記探索領域から特定する、
ことを特徴とする探索方法。
【請求項１８】
請求項１７に記載の探索方法であって、
前記設定処理では、前記探索装置は、前記中心条件から一度に変更可能な前記条件の種類の数を指定する、
ことを特徴とする探索方法。