(58)【調査した分野】(Int.Cl.,DB名)
製造プロセスの所定のステップと対応付けられた複数のデータ群それぞれの特徴空間における分布が、該複数のデータ群それぞれについて算出された該所定のステップにおける効果に応じて分類されるよう、該特徴空間が分割された場合の、各領域を特定する解析結果を格納する第1の格納部と、
前記特徴空間の各領域に分類されるデータ群が入力されることで、各領域に対応するそれぞれの効果を出力する複数のモデルを、各領域と対応付けて格納する第2の格納部と、
前記所定のステップと対応付けられたデータ群が新たに取得され、前記解析結果に基づいて該取得されたデータ群が分類される1の領域が判定された場合に、該1の領域に対応付けて格納されたモデルを用いてシミュレーション処理を行う実行部と
を有するデータ処理装置。
前記1の領域に対応付けて複数のモデルが格納されていた場合、所定の選択指標に基づいて1のモデルを選択する選択部を更に有する、請求項1に記載のデータ処理装置。
前記選択指標には、前記所定のステップが実行される装置の状態、前記所定のステップが実行される装置内の雰囲気、前記所定のステップが実行された際の処理対象物の経時変化のいずれかを予測した予測結果が含まれる、請求項2に記載のデータ処理装置。
前記選択指標には、前記所定のステップが実行される装置の種類及び前記所定のステップが実行された際の状態の変化を測定する装置内の位置のいずれかを判別した判別結果が含まれる、請求項2に記載のデータ処理装置。
前記所定のステップと対応付けられたデータ群が新たに取得された場合に、該取得されたデータ群が、前記特徴空間の各領域のいずれの領域に分類されるかを、前記解析結果に基づいて判定する判定部を更に有する、請求項1に記載のデータ処理装置。
製造プロセスの所定のステップと対応付けられた複数のデータ群それぞれの特徴空間における分布が、該複数のデータ群それぞれについて算出された該所定のステップにおける効果に応じて分類されるよう、該特徴空間が分割された場合の、各領域を特定する解析結果を格納する第1の格納部と、
前記特徴空間の各領域に分類されるデータ群が入力されることで、各領域に対応するそれぞれの効果を出力する複数のモデルを、各領域と対応付けて格納する第2の格納部と、を有するデータ処理装置におけるデータ処理方法であって、
前記所定のステップと対応付けられたデータ群が新たに取得され、前記解析結果に基づいて該取得されたデータ群が分類される1の領域が判定された場合に、該1の領域に対応付けて格納されたモデルを用いてシミュレーション処理を行う実行工程、
を有するデータ処理方法。
製造プロセスの所定のステップと対応付けられた複数のデータ群それぞれの特徴空間における分布が、該複数のデータ群それぞれについて算出された該所定のステップにおける効果に応じて分類されるよう、該特徴空間が分割された場合の、各領域を特定する解析結果を格納する第1の格納部と、
前記特徴空間の各領域に分類されるデータ群が入力されることで、各領域に対応するそれぞれの効果を出力する複数のモデルを、各領域と対応付けて格納する第2の格納部と、を有するデータ処理装置のコンピュータに、
前記所定のステップと対応付けられたデータ群が新たに取得され、前記解析結果に基づいて該取得されたデータ群が分類される1の領域が判定された場合に、該1の領域に対応付けて格納されたモデルを用いてシミュレーション処理を行う実行工程、
を実行させるためのプログラム。
【発明を実施するための形態】
【0008】
以下、各実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省略する。
【0009】
[第1の実施形態]
<データ処理システムの全体構成>
はじめに、データ処理システムの全体構成について説明する。
図1は、データ処理システムの全体構成の一例を示す図である。
図1に示すように、データ処理システム100は、データ処理装置110と、各事業所120、130、140(事業所名="事業所A"、"事業所B"、"事業所C")内の端末121、131、141とを有する。データ処理装置110と、各事業所120、130、140内の端末121、131、141とは、ネットワーク150を介して、通信可能に接続される。
【0010】
データ処理装置110には、データ解析プログラム、モデル生成プログラム、推定プログラムがインストールされている。データ処理装置110は、当該データ解析プログラム、モデル生成プログラム、推定プログラムを実行することで、データ解析部111、モデル生成部112、推定部113として機能する。
【0011】
データ解析部111は、各事業所120、130、140内の端末121、131、141よりデータ群(
図1の例では、初期データ、設定データ、出力データ、測定データ、実験データ、目標データ)をネットワーク150を介して収集する。また、データ解析部111は、収集したデータ群を、データ格納部114に格納する。なお、データ群の収集方法は、これに限定されず、例えば、データ群が記録された記録媒体を、データ処理装置110の管理者が各事業所120、130、140から取得し、該記録媒体からデータ群を読み出すことで、データ群を収集してもよい。
【0012】
また、データ解析部111は、データ格納部114に格納されたデータ群を解析し、解析結果データを解析結果格納部115(第1の格納部)に格納する。
【0013】
モデル生成部112は、解析結果データに基づいて、データ格納部114に格納したデータ群を分類し、分類したそれぞれのデータ群を用いて、半導体製造プロセス(例えば、半導体製造装置a)のモデルを生成する。モデル生成部112は、生成したモデルを、モデル格納部116(第2の格納部)に格納する。
【0014】
推定部113は、新たなデータ群が取得された場合に、モデル格納部116から読み出したモデルに当該データ群を入力することで、シミュレーション処理を行う。
【0015】
事業所120(事業所名="事業所A")には、半導体製造プロセスを実行する半導体製造装置(半導体製造装置a)が含まれる。また、事業所120内には、半導体製造プロセスにおいて測定データを測定する測定器と、半導体製造プロセスにおいて製造された結果物(半導体または中間生成物)について実験データを測定する実験値測定器とが含まれる。更に、事業所120内には、データ処理システム100を構成する端末121と、データ群を格納するデータベースとが含まれる。
【0016】
半導体製造装置aは、端末121より入力された初期データ、設定データ、目標データに基づいて半導体製造プロセスを実行する。また、半導体製造装置aは、半導体製造プロセスを実行することで得た出力データを、初期データ、設定データ、目標データと対応付けてデータベースに格納する。
【0017】
測定器は、半導体製造装置aによる半導体製造プロセスの実行中に測定データを測定し、データベースに格納する。実験値測定器は、半導体製造プロセスにおいて製造された結果物(半導体または中間生成物)について実験データを測定し、データベースに格納する。
【0018】
端末121は、半導体製造装置aが半導体製造プロセスを実行する際に用いる初期データ、設定データ、目標データを入力し、半導体製造装置aに設定する。また、端末121は、データベースに格納されたデータ群(初期データ、設定データ、出力データ、測定データ、実験データ、目標データ)を、データ処理装置110に送信する。
【0019】
事業所130(事業所名="事業所B")、事業所140(事業所名="事業所C")では、事業所120と同様の半導体製造プロセスが実行される。このため、事業所130、事業所140には、事業所120と同様の装置が含まれる。ただし、
図1の例では、事業所130には、実験値測定器が含まれていない。また、事業所140には、測定器及び実験値測定器が含まれていない。
【0020】
このように、事業所ごとに含まれている装置が異なる場合、各事業所120、130、140内の各端末121、131、141からデータ処理装置110に送信されるデータ群の情報の項目も異なってくる。例えば、事業所130内の端末131から送信されるデータ群には、実験データ(またはその一部)が含まれない。また、例えば、事業所140の端末141から送信されるデータ群には、測定データ及び実験データ(またはそれらの一部)は含まれない。
【0021】
<データ群の具体例>
次に、各事業所120、130、140で取り扱われるデータ群について説明する。
図2は、各事業所で取り扱われるデータ群の具体例を示す図である。ここでは、事業所120で取り扱われるデータ群について説明する。
【0022】
図2に示すように、事業所120の半導体製造装置aは、複数の半導体製造プロセス(プロセス名=プロセスI〜M)を実行する。半導体製造装置aが実行するそれぞれの半導体製造プロセスには、複数のステップ(例えば、ステップ名=ステップ1〜N)が含まれる。なお、ここでいう「ステップ」とは、半導体製造プロセスにおいて、状態(処理対象物の属性、半導体製造装置aの状態、半導体製造装置a内の雰囲気等)を変化させる最小の処理単位を指すものとする。したがって、時間の経過とともに状態が変化するような場合、本実施形態では、時間経過前と時間経過後とで、別々のステップとして捉えるものとする。
【0023】
図2において、データ群201は、
・事業所120の半導体製造装置aが実行する複数の半導体製造プロセスのうち、プロセス名="プロセスI"の半導体製造プロセスであって、
・該半導体製造プロセスに含まれる複数のステップのうち、ステップ名="STEP1"のステップ、
と対応付けられたデータ群である。
【0024】
図2に示すように、データ群201は、情報の項目として、"初期データ(I)"、"設定データ(R)"、"出力データ(E)"、"測定データ(Pl)"、"実験データ(Pr)"、"目標データ(Pf)"を含む。
【0025】
"初期データ(I)"には、事業所120内の端末121より入力された、初期データが含まれる。半導体製造プロセスの場合、初期データには、
・Initial CD(critical dimensions)
・Material(材料)
・Thickness(厚さ)
・Aspect ratio(アスペクト比)
・Mask coverage(マスク被覆性)
等が含まれる。
【0026】
"設定データ(R)"には、事業所120内の端末121より入力され、半導体製造装置aに設定される設定データが含まれる。半導体製造装置aに設定される設定データは、半導体製造装置aの特性に依存するデータである。半導体製造プロセスの場合、設定データには、
・Pressure(チャンバ内の圧力)
・Power(高周波電源の電力)
・Gas(ガス流量)
・Temperature(チャンバ内の温度または処理対象物表面の温度)
等が含まれる。
【0027】
"出力データ(E)"には、事業所120の半導体製造装置aによる、プロセス名="プロセスI"の半導体製造プロセス、ステップ名="STEP1"のステップの実行中に、事業所120の半導体製造装置aから出力される出力データが含まれる。半導体製造装置aから出力される出力データは、半導体製造装置aの特性に依存するデータである。半導体製造プロセスの場合、出力データには、
・Vpp(電位差)
・Vdc(直流自己バイアス電圧)
・OES(発光分光分析による発光強度)
・Reflect(反射波電力)
等が含まれる。
【0028】
"測定データ(Pl)"には、事業所120の半導体製造装置aによる、プロセス名="プロセスI"の半導体製造プロセス、ステップ名="STEP1"のステップの実行中に、事業所120の測定器により測定される測定データが含まれる。測定器により測定される測定データは、半導体製造装置aの特性に依存しないデータである。半導体製造プロセスの場合、測定データには、
・Plasma density(プラズマ密度)
・Ion energy(イオンエネルギ)
・Ion flux(イオン流量)
等が含まれる。
【0029】
"実験データ(Pr)"には、事業所120の半導体製造装置aにより、プロセス名="プロセスI"の半導体製造プロセス、ステップ名="STEP1"のステップが実行されたことで生成された結果物を、実験値測定器が測定することで得た実験データが含まれる。実験値測定器により測定される実験データは、半導体製造装置aの特性に依存しないデータである。半導体製造プロセスの場合、実験データには、
・Etching rate(エッチング速度)
・Deposition rate(成膜速度)
・XY position(XY座標)
・Film type(薄膜の種類)
・Vertical/Lateral(縦型/横型の区分)
等が含まれる。
【0030】
"目標データ(Pf)"には、事業所120内の端末121より入力された目標データが含まれる。目標データとは、事業所120の半導体製造装置aにより、プロセス名="プロセスI"の半導体製造プロセス全体が実行されることで生成される結果物が到達すべき属性である。半導体製造プロセスの場合、目標データには、
・CD(critical dimensions)
・Depth(深さ)
・Taper(テーパ角)
・Tilting(チルト角)
・Bowing(ボーイング)
等が含まれる。
【0031】
なお、
図2に示すデータ群は一例であり、各情報の項目に含まれるデータの種類は、図示したものに限定されない。また、データ群には、事業所ごと、プロセスごと、ステップごとに異なる情報の項目、異なる種類のデータが含まれるものとする。
【0032】
<解析結果データの概要>
次に、各事業所120、130、140から収集したデータ群を、データ処理装置110のデータ解析部111が解析することで、解析結果格納部115に格納される解析結果データの概要について説明する。
図3は、解析結果格納部に格納される解析結果データの概要を説明するための図である。
【0033】
図3において、データ群301は、プロセス名="プロセスI"の半導体製造プロセス、ステップ名="STEP1"のステップと対応付けられたデータ群であり、各事業所120、130、140から収集された複数のデータ群を含む。
【0034】
具体的には、データ群301には、事業所120より収集したデータ群201のほか、事業所130、140それぞれの、プロセス名="プロセスI"の半導体製造プロセス、ステップ名="STEP1"のステップと対応付けられたデータ群が含まれる。
【0035】
データ処理装置110では、同じプロセス、同じステップの複数のデータ群を解析し、同様の効果が得られるデータ群同士をグルーピングする。半導体製造装置では、同じプロセス、同じステップを実行する場合であっても、データ群に含まれるデータが異なることで、異なる結果物が得られる場合があるからである。したがって、同様の効果が得られるデータ群同士をグルーピングし、各グループを特定する特定データを算出することで、同様の効果を得るために許容される、データ群に含まれる各データの範囲を算出することができる。
【0036】
図3において、複数のグループ310は、データ群301のうち、同様の効果が得られるデータ群同士をグルーピングすることで得られたものである。同じプロセス、同じステップにおいて、同様の効果が得られるグループにより特定される特定データ(各データの範囲)とは、半導体製造プロセスにおいて、"状態"に同様の変化を与える最小のデータ単位ということができる。つまり、当該グループにより特定される特定データ(各データの範囲)は、半導体製造プロセスでの微細加工における最小のデータ単位ということができる。
【0037】
このように、半導体製造プロセスでの微細加工における最小のデータ単位(Process Element)を、第1の実施形態では、"Proxel"と称する。画像の最小単位(Picture Element)を"Pixel"、立体の最小単位(Volume Element)を"Voxel"と称するのと同様の呼称である。以降、複数のグループ310に含まれるそれぞれのグループにより特定される特定データを、Proxel311〜314と称する。
【0038】
第1の実施形態において、データ解析部111は、収集されたデータ群を解析することで"Proxel"を算出し、算出したProxelを解析結果データとして、解析結果格納部115に格納する。
【0039】
<データ処理装置のハードウェア構成>
次に、データ処理装置110のハードウェア構成について説明する。
図4は、データ処理装置のハードウェア構成の一例を示す図である。
【0040】
図4に示すように、データ処理装置110は、CPU(Central Processing Unit)401、ROM(Read Only Memory)402、RAM(Random Access Memory)403を有する。CPU401、ROM402、RAM403は、いわゆるコンピュータを形成する。また、データ処理装置110は、補助記憶装置404、操作装置405、表示装置406、I/F(Interface)装置407、ドライブ装置408を有する。なお、データ処理装置110の各ハードウェアは、バス409を介して相互に接続される。
【0041】
CPU401は、補助記憶装置404にインストールされた各種プログラム(例えば、データ解析プログラム、モデル生成プログラム、推定プログラム等)を実行する。
【0042】
ROM402は、不揮発性メモリであり、主記憶装置として機能する。ROM402は、補助記憶装置404にインストールされた各種プログラムをCPU401が実行するために必要な各種プログラム、データ等を格納する。具体的には、ROM402はBIOS(Basic Input/Output System)やEFI(Extensible Firmware Interface)等のブートプログラム等を格納する。
【0043】
RAM403は、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)等の揮発性メモリであり、主記憶装置として機能する。RAM403は、補助記憶装置404にインストールされた各種プログラムがCPU401によって実行される際に展開される、作業領域を提供する。
【0044】
補助記憶装置404は、各種プログラムや、各種プログラムがCPU401によって実行されることで収集されるデータ群、算出される解析結果データ、及び生成されるモデルを格納する。データ格納部114、解析結果格納部115、モデル格納部116は、補助記憶装置404において実現される。
【0045】
操作装置405は、データ処理装置110の管理者がデータ処理装置110に対して各種指示を入力する際に用いる入力デバイスである。表示装置406は、データ処理装置110の内部情報を表示する表示デバイスである。
【0046】
I/F装置407は、ネットワーク150に接続し、各事業所120、130、140内の端末121、131、141と通信するための接続デバイスである。
【0047】
ドライブ装置408は記録媒体410をセットするためのデバイスである。ここでいう記録媒体410には、CD−ROM、フレキシブルディスク、光磁気ディスク等のように情報を光学的、電気的あるいは磁気的に記録する媒体が含まれる。また、記録媒体410には、ROM、フラッシュメモリ等のように情報を電気的に記録する半導体メモリ等が含まれていてもよい。
【0048】
なお、補助記憶装置404にインストールされる各種プログラムは、例えば、配布された記録媒体410がドライブ装置408にセットされ、該記録媒体410に記録された各種プログラムがドライブ装置408により読み出されることでインストールされる。あるいは、補助記憶装置404にインストールされる各種プログラムは、ネットワーク150を介してダウンロードされることで、インストールされてもよい。
【0049】
<データ処理装置のデータ解析部の機能構成>
次に、データ処理装置110のデータ解析部111の機能構成について説明する。
図5は、データ解析部の機能構成の一例を示す図である。
図5に示すように、データ解析部111は、収集部510、効果算出部520、分割部530、Proxel算出部540を有する。
【0050】
収集部510は、各事業所120、130、140内の端末121、131、141から、ネットワーク150を介して、データ群(例えば、データ群201等)を収集する。
【0051】
効果算出部520は、収集したデータ群ごとに効果を算出する。効果算出部520は、収集したデータ群ごとに、対応するプロセス、対応するステップを実行する前の状態を示すデータと、実行した後の状態を示すデータとを取得しているものとし、これらのデータを用いて実行前後の状態の変化を効果として算出する。また、効果算出部520は、算出した効果を、設定データ、出力データ、測定データ、実験データとともに、データ群として、データ格納部114に格納する。
【0052】
分割部530は、データ格納部114に格納された複数のデータ群それぞれを読み出し、特徴空間における分布を解析する。各データ群に含まれるデータの種類が、K種類であった場合、分割部530は、K次元の特徴空間におけるデータ群の分布を解析する。
【0053】
具体的には、分割部530は、読み出した複数のデータ群について、同様の効果が得られるデータ群同士をグルーピングする。また、分割部530は、特徴空間に分布するデータ群がグループごとに分類されるよう、K次元の特徴空間を分割する。
【0054】
Proxel算出部540は、分割部530により分割されたK次元の特徴空間の各領域のK種類の各データの範囲(グループにより特定される特定データ)を算出することでProxelを算出し、解析結果データとして解析結果格納部115に格納する。
【0055】
<データ解析部の各部の処理の具体例>
次に、データ解析部111の各部(収集部510、効果算出部520、分割部530、Proxel算出部540)のうち、効果算出部520、分割部530、Proxel算出部540の処理の具体例について説明する。
【0056】
(1)効果算出部の処理の具体例
はじめに、効果算出部520の処理の具体例について説明する。
図6は、効果算出部の処理の具体例を示す図である。
【0057】
図6に示すように、所定の半導体製造プロセスの所定のステップ(プロセス名="プロセスI"、ステップ名="STEP1")とデータ群との関係は、点線600のように模式的に表すことができる。
【0058】
すなわち、設定データが設定された半導体製造装置が、所定の半導体製造プロセスの所定のステップを実行すると、実行前の状態(実行前の処理対象物の属性、半導体製造装置の状態、半導体製造装置内の雰囲気のいずれか)が、実行後に変化する。そして、このときの半導体製造プロセスの実行状況は、設定データ、出力データ、測定データ、実験データにより特定することができる。
【0059】
つまり、設定データ、出力データ、測定データ、実験データにより特定される実行状況のもとでは、所定の半導体製造プロセスの所定のステップにおける効果は、
・実行前の状態を示すデータと、
・実行後の状態を示すデータと、
の差分により表すことができる。
【0060】
そこで、効果算出部520では、プロセスごと、ステップごとのデータ群それぞれに対応する、実行前の状態を示すデータと実行後の状態を示すデータとを取得する。そして、効果算出部520では、両者の差分を算出することで、当該プロセス、当該ステップにおけるそれぞれの実行状況に対応する効果を算出する。また、効果算出部520は、算出した効果を、設定データ、出力データ、測定データ、実験データと対応付けて、データ群としてデータ格納部114に格納する。
【0061】
図7は、データ格納部に格納されたデータ群の一例を示す図であり、プロセス名="プロセスI"の半導体製造プロセス、ステップ名="STEP1"のステップについて、効果算出部520によりデータ格納部114に格納されたデータ群の一例である。
【0062】
図7に示すように、効果算出部520によりデータ格納部114に格納されるデータ群には、情報の項目として、"データ群識別子"、"設定データ(R)"、"出力データ(E)"、"測定データ(Pl)"、"実験データ(Pr)"、"効果"が含まれる。
【0063】
"データ群識別子"は、それぞれのデータ群を識別するための識別子である。
図7において、データ群識別子="データa001"は、例えば、事業所120(事業所名="事業所A")より収集したデータ群と効果とを含むデータ群である。また、データ群識別子="データb002"は、例えば、事業所130(事業所名="事業所B")より収集したデータ群と効果とを含むデータ群である。
【0064】
"設定データ(R)"から"実験データ(Pr)"までの各情報の項目には、各事業所120、130、140より収集したデータ群(
図2参照)のうち、初期データ(I)と目標データ(Pf)とを除くデータ群が格納される。
【0065】
"効果"には、効果算出部520により算出された効果が格納される。
図7の例によれば、プロセス名="プロセスI"の半導体製造プロセス、ステップ名="STEP1"のステップの場合、データ群識別子="データa001"に対応付けられた設定データ等により特定される実行状況のもとでは、"効果<1>"が得られる。同様に、プロセス名="プロセスI"の半導体製造プロセス、ステップ名="STEP1"のステップの場合、データ群識別子="データb002"に対応付けられた設定データ等により特定される実行状況のもとでは、"効果<2>"が得られる。
【0066】
(2)分割部の処理の具体例
次に、分割部530の処理の具体例について説明する。
図8は、分割部の処理の具体例を示す図である。
【0067】
図8に示すように、分割部530は、データ格納部114に格納された複数のデータ群をプロセスごと、ステップごとに読み出し、特徴空間800にプロットする。
図8において、数字が記載された実線丸印は、読み出した複数のデータ群のうちの1つを示しており、実線丸印内に記載された数字は、当該データ群のデータ群識別子を表している。
【0068】
なお、
図8の例では、説明を簡略化するために、特徴空間800を2次元としている(つまり、データ群に含まれる2種類のデータ(データの種類p、データの種類q)をプロットした様子を示している)。
【0069】
図8において、実線丸印の外側を囲む点線丸印は、同様の効果が得られるデータ群同士をグルーピングした様子を示している。つまり、点線丸印内部に含まれる実線丸印内に記載されたデータ群識別子により識別されるデータ群は、いずれも、プロセス名="プロセスI"の半導体製造プロセス、ステップ名="STEP1"のステップにおいて、同様の効果を有するデータ群である。
【0070】
例えば、点線丸印801には、データ群識別子="データa001"、"データa004"、"データa010"の各データ群が含まれる。これらのデータ群識別子が記載された各実線丸印は、特徴空間800において互いに近い位置に分布しているが、完全に重なっているわけではない。つまり、それぞれのデータ群識別子により識別されるデータ群は、互いに似ているが、完全に一致しているわけではない。
【0071】
一方で、これらのデータ群は、プロセス名="プロセスI"の半導体製造プロセス、ステップ名="STEP1"のステップが実行された際、いずれも効果<1>が得られたデータ群である。換言すると、特徴空間800において点線丸印801によりグルーピングされた複数のデータ群は、この中のいずれのデータ群のもとでプロセスI、STEP1が実行されても、効果<1>が得られるデータ群である。
【0072】
同様に、
図8において、点線丸印802には、データ群識別子="データa005"、"データa006"、"データa007"が含まれる。点線丸印802に含まれる各実線丸印内に記載されたデータ群識別子により識別されるデータ群は、それぞれのデータ群のもとでプロセスI、STEP1が実行された場合に、いずれも効果<4>が得られるデータ群である。
【0073】
同様に、
図8において、点線丸印803には、データ群識別子="データa002"が含まれる。点線丸印803に含まれる実線丸印内に記載されたデータ群識別子により識別されるデータ群は、当該データ群のもとでプロセスI、STEP1が実行された場合に、効果<2>が得られるデータ群である。
【0074】
同様に、
図8において、点線丸印804には、データ群識別子="データa003"、"データa008"、"データa009"が含まれる。点線丸印802に含まれる各実線丸印内に記載されたデータ群識別子により識別されるデータ群は、それぞれのデータ群のもとでプロセスI、STEP1が実行された場合に、いずれも効果<3>が得られるデータ群である。
【0075】
このように、分割部530は、特徴空間に分布する各データ群が、グループごとに分類されるように特徴空間を分割する。なお、分割部530は、例えば、K次元の特徴空間に分布する各データ群を、"効果"を分割指標としてクラスタリング処理を行うことで、特徴空間を分割する。
【0076】
(3)Proxel算出部の処理の具体例
次に、Proxel算出部540の処理の具体例について説明する。上述したとおり、Proxel算出部540は、分割部530により分割された特徴空間の各領域の各データの範囲(グループにより特定される特定データ)を算出することで、Proxelを算出する。
図9は、Proxel算出部により算出されたProxelの一例を示す図である。
【0077】
図9に示すように、Proxel算出部540は、分割部530により同じグループにグルーピングされたデータ群それぞれに含まれる各データについて、最小値と最大値を算出することで、特徴空間における各領域の各データの範囲を算出する。
【0078】
図9の例は、分割部530により、効果<1>と同様の効果が得られるデータ群が、グループ名="グループGr1"のグループにグルーピングされたことを示している。また、
図9の例は、グループ名="グループGr1"のグループにグルーピングされたデータ群に含まれる各データのうち、設定データの"Pressure"については、
・最小値="Pressure_1"
・最大値="Pressure_4"
であったことを示している。
【0079】
グループ名="グループGr1"のグループにグルーピングされたデータ群が分布する特徴空間の領域の各データの範囲は、具体的には、点線900により表すことができる。なお、点線900により表される各データの範囲は、
図3において説明したProxel311を指すものとする。
【0080】
<Proxel算出処理の流れ>
次に、分割部530及びProxel算出部540によるProxel算出処理の流れについて説明する。
図10は、分割部及びProxel算出部によるProxel算出処理の流れを示す第1のフローチャートである。
【0081】
ステップS1001において、分割部530は、所定のプロセス、所定のステップに対応付けられたデータ群を、データ格納部114より読み出す。
【0082】
ステップS1002において、分割部530は、各データ群について同様の効果が得られるデータ群が同じグループに分類されるようクラスタリング処理を行うことで、特徴空間を分割する。
【0083】
ステップS1003において、Proxel算出部540は、分割部530により分割された特徴空間の各領域の各データの範囲(各グループを特定する特定データ)を算出することでProxelを算出する。また、Proxel算出部540は、算出したProxelを、解析結果データとして、解析結果格納部115に格納する。
【0084】
<Proxel算出の利点>
次に、Proxel算出部540がProxelを算出することの利点について説明する。
【0085】
(1)データの取り扱い易さが向上
Proxel算出部540がProxelを算出することの利点の1つとして、各事業所120、130、140から収集した複数のデータ群の取り扱い易さが向上すること、が挙げられる。
【0086】
図11は、Proxelを算出することの利点を説明するための第1の図である。
図11において、複数のデータ群1100は、それぞれ、各事業所120、130、140から収集した複数のデータ群の一例であり、いずれも同様の効果が得られるデータ群であるとする。なお、
図11では、説明の簡略化のため、各データ群に含まれるデータの種類は5種類としている。
【0087】
複数のデータ群1100のうち、"測定データ"="Ion energy"の一部、"実験データ"="Etching rate"の一部が空欄になっているのは、当該データを測定する測定器または実験値測定器を、当該事業所が有していないためである。
【0088】
一方、
図11において、Proxel1110は、複数のデータ群1100に基づいてProxel算出部540により算出されたProxelの一例である。
【0089】
Proxel1110を算出することで、同じ効果("効果<10>")が得られる複数のデータ群を、1のデータ群として取り扱うことが可能となる。このように、Proxel1110を算出することで、空欄を含む不完全なデータ群を補間し、空欄を含まない汎用性の高い1のデータ群として取り扱うことが可能となる。つまり、Proxelを算出することで、汎用性の高いデータ処理を実現することができる。
【0090】
(2)データ群の密度を均一化
Proxel算出部540がProxelを算出することの他の利点の1つとして、各事業所120、130、140から収集した複数のデータ群の密度のばらつきの影響を受けにくくなること、が挙げられる。つまり、特徴空間におけるデータ群の密度を均一化できること、が挙げられる。
【0091】
図12は、Proxelを算出することの利点を説明するための第2の図である。
図12において、横軸は、データの種類P(ここでは、"HF power")を表し、縦軸は、データの種類Q(ここでは、"LF Power")を表している。
【0092】
図12に示す特徴空間1200において、白丸は、各データ群の分布を表しており、正六角形は、Proxelを表している。
図12に示すように、各事業所120、130、140から収集した複数のデータ群の、特徴空間1200における分布の密度には、ばらつきがある。これに対して、Proxelの場合、特徴空間1200において均一に配置することができる。
【0093】
このように、Proxelを算出することで、特徴空間1200の様々な領域のデータ群を均等に取り扱うことができるため、例えば、Proxelを用いて機械学習を行った場合、データ群のばらつきの影響を抑えることができる。つまり、Proxelを算出することで、汎用性の高いデータ処理を実現することができる。
【0094】
<データ処理装置のモデル生成部の機能構成>
次に、データ処理装置110のモデル生成部112の機能構成について説明する。
図13は、モデル生成部の機能構成の一例を示す図である。
図13に示すように、モデル生成部112は、モデル生成用データ取得部1310、モデル生成判定部1320、モデルパラメータ調整部1330を有する。
【0095】
モデル生成用データ取得部1310は、解析結果格納部115に格納された複数のProxelを順次読み出し、読み出した各Proxelに分類される複数のデータ群を、データ格納部114から読み出す。また、モデル生成用データ取得部1310は、各Proxelに分類される複数のデータ群を、Proxel単位でモデル生成判定部1320に通知する。
【0096】
モデル生成判定部1320は、Proxel単位で通知された複数のデータ群それぞれについて、当該Proxel用として新たなモデルを生成するか否かを判定する。
【0097】
具体的には、モデル生成判定部1320は、通知された複数のデータ群それぞれについて、データ群に含まれるデータ、その他のデータ、知見等に基づき、
・対応するステップが実行された際の半導体製造装置の状態(例えば、チャンバ内のデポ膜の量、チャンバ内を構成するパーツの消耗度合い等)、
・対応するステップが実行された際の半導体製造装置内の雰囲気、
・対応するステップが実行された際の処理対象物の経時変化(例えば、開口率等)
等を予測し、予測結果を得る。
【0098】
また、モデル生成判定部1320は、対応するステップを実行する際の前提である、
・状態の変化を測定する半導体製造装置内の位置(例えば、エッジ、センタ等)、
・半導体製造装置の種類(例えば、異なるハードウェア、同一のハードウェアの異なる個体等)、
等を判別し、判別結果を得る。
【0099】
そして、モデル生成判定部1320は、上記「予測結果」及び「判別結果」を判定指標として、当該Proxel用として新たなモデルを生成するか否かを判定する。モデル生成判定部1320では、例えば、予測結果及び判別結果が、当該Proxelに分類される他のデータ群の予測結果及び判別結果と同程度であれば、新たなモデルは生成しない。一方、モデル生成判定部1320では、予測結果及び判別結果が、当該Proxelに分類される他のデータ群の予測結果及び判別結果と異なっていれば、新たなモデルを生成する。
【0100】
なお、モデル生成判定部1320により生成されるモデルは、複数のシミュレータが入れ子構造により構成されているものとする。複数のシミュレータには、例えば、
・処理空間(チャンバ)シミュレータ、
・電磁界シミュレータまたは熱流体シミュレータ、
・プラズマシミュレータまたは解離シミュレータ、
・形状シミュレータ、
・MD(Molecular Dynamics)シミュレータ、
・量子化学反応シミュレータまたはマテリアルズインフォマティクス、
等が含まれる。
【0101】
モデルパラメータ調整部1330は、モデル生成判定部1320により生成されたモデルについて、モデルパラメータを調整する。モデルパラメータ調整部1330は、生成されたモデルに、
・データ群と、
・対応する処理対象物の属性(対応するステップが実行された際の実行前の処理対象物の属性)と、
を入力し、シミュレーション処理を行った場合の出力が、
・該データ群に含まれる"効果"、
と一致するように、モデルパラメータを調整する。
【0102】
これにより、モデルパラメータ調整部1330によれば、Proxelごとに、
・予測結果、及び、
・判別結果、
に応じて生成された複数のモデルについて、パラメータ調整することができる。
【0103】
なお、モデルパラメータ調整部1330では、パラメータ調整したモデルを、Proxelごとに、予測結果及び判別結果と対応付けてモデル格納部116に格納する。
【0104】
<モデル生成部の各部の処理の具体例>
次に、モデル生成部112の各部(モデル生成用データ取得部1310、モデル生成判定部1320、モデルパラメータ調整部1330)の処理の具体例について説明する。
【0105】
図14及び
図15は、モデル生成部の処理の具体例を示す第1及び第2の図である。
図14の例は、半導体製造装置aが、プロセス名="プロセスI"、ステップ名="STEP1"を実行したことで、
・実行前の状態を示すデータ"状態B001(実行前)"が、実行後の状態を示すデータ"状態R001(実行後)"に変化し、
・データ群識別子="データa001"のデータ群が収集された、
ことを示している。
【0106】
同様に、
図14の例は、半導体製造装置aが、プロセス名="プロセスI"、ステップ名="STEP1"を実行したことで、
・実行前の状態を示すデータ"状態B004(実行前)"が、実行後の状態を示すデータ"状態R004(実行後)"に変化し、
・データ群識別子="データa004"のデータ群が収集された、
ことを示している。
【0107】
以下、半導体製造装置aが、プロセス名="プロセスI"、ステップ名="STEP1"を実行したことによる、実行前の状態を示すデータと、実行後の状態を示すデータとの関係、及び、収集されたデータ群との関係は同様である。
【0108】
また、
図14の例は、データ群識別子="データa001"、"データa004"、"データa010"の各データ群がProxel311に分類されたことを示している。また、データ群識別子="データa002"のデータ群が、Proxel312に分類されたことを示している。
【0109】
また、
図14の例は、データ群識別子="データa001"、"データa004"、"データa010"、"データa002"の各データ群に、"効果a001"、"効果a004"、"効果a010"、"効果a002"の各効果が含まれていることを示している。更に、
図14の例は、"効果a001"、"効果a004"、"効果a010"が"効果<1>"に含まれ、"効果a002"が"効果<2>"に含まれることを示している。
【0110】
かかる前提のもと、モデル生成用データ取得部1310は、例えば、Proxel311に分類される複数のデータ群(データ群識別子="データa001"、"データa004"、"データa010"の各データ群)を読み出す。
【0111】
続いて、モデル生成判定部1320は、読み出した複数のデータ群(データ群識別子="データa001"、"データa004"、"データa010"の各データ群)について、Proxel311用の新たなモデルを生成するか否かを判定する。
【0112】
ここで、モデル生成判定部1320は、プロセス名="プロセスI"、ステップ名="STEP1"が実行された際の、半導体製造装置aの状態、半導体製造装置a内の雰囲気、処理対象物の経時変化を予測した結果、
・データ群識別子="データa001"のデータ群に含まれるデータ、その他のデータ、知見等に基づき予測した予測結果と、
・データ群識別子="データa004"のデータ群に含まれるデータ、その他のデータ、知見等に基づき予測した予測結果と、
・データ群識別子="データa010"のデータ群に含まれるデータ、その他のデータ、知見等に基づき予測した予測結果と、
が概ね等しいと判定したとする。
【0113】
また、モデル生成判定部1320は、プロセス名="プロセスI"、ステップ名="STEP1"が実行された際の前提について判別した各判別結果が、互いに等しいと判定したとする。
【0114】
このような予測結果及び判別結果であった場合、モデル生成判定部1320では、データ群識別子="データa001"、"データa004"、"データa010"の各データ群に対して、1のモデル(モデル名="モデルM1"のモデル)を生成する。
【0115】
そして、モデルパラメータ調整部1330では、モデル名="モデルM1"のモデルに、
・データ群識別子="データa001"のデータ群と、
・対応する処理対象物の属性(プロセス名="プロセスI"、ステップ名="STEP1"のステップが実行された際の実行前の処理対象物の属性)と、
を入力し、シミュレーション処理を行った場合の出力が、
・"効果a001"、
と一致し、かつ、
・データ群識別子="データa004"のデータ群と、
・対応する処理対象物の属性(プロセス名="プロセスI"、ステップ名="STEP1"のステップが実行された際の実行前の処理対象物の属性)と、
を入力し、シミュレーション処理を行った場合の出力が、
・"効果a004"、
と一致し、かつ
・データ群識別子="データa010"のデータ群と、
・対応する処理対象物の属性(プロセス名="プロセスI"、ステップ名="STEP1"のステップが実行された際の実行前の処理対象物の属性)と、
を入力し、シミュレーション処理を行った場合の出力が、
・"効果a010"、
と一致するよう、モデルパラメータを調整する。
【0116】
なお、モデルパラメータ調整部1330では、モデル名="モデルM2"のモデルについても同様の方法によりモデルパラメータを調整する。
【0117】
一方、
図15の例は、モデル生成判定部1320が、Proxel313用としてモデルを生成した後に、更に、新たなモデルを生成すると判定したケースを示している。
【0118】
具体的には、
図15の例は、データ群識別子="データa003"、"データa008"の各データ群に基づいて、モデル名="モデルM3"のモデルが生成されたケースを示している。また、
図15の例は、その後、データ群識別子="データa009"のデータ群について、更に新たなモデルを生成すると判定されたケースを示している。
【0119】
ここで、仮に、モデル生成判定部1320が新たなモデルを生成することなく、モデル名="モデルM3"のモデルに、
・データ群識別子="データa009"のデータ群と、
・対応する処理対象物の属性(プロセス名="プロセスI"、ステップ名="STEP1"のステップが実行された際の実行前の処理対象物の属性)と、
を入力し、シミュレーション処理を行ったとする。
【0120】
この場合、
図15の例の黒四角に示すように、シミュレーション処理を行った場合の出力が、効果<3>に含まれず、効果<3>から外れることになる。
【0121】
モデル生成判定部1320では、このような事態を回避するために、データ群識別子="データa009"のデータ群についても、予測結果及び判別結果を判定指標として、新たなモデルを生成するか否かを判定する。
【0122】
図15の例は、モデル生成判定部1320が、Proxel313用として新たなモデルを生成すると判定し、モデル名="モデルM3'"のモデルを生成した様子を示している。
【0123】
なお、この場合、モデルパラメータ調整部1330では、モデル名="モデルM3'"のモデルに、
・データ群識別子="データa009"のデータ群と、
・対応する処理対象物の属性(プロセス名="プロセスI"、ステップ名="STEP1"のステップが実行された際の実行前の処理相性物の属性)と、
を入力し、シミュレーション処理を行った場合の出力が、
・"効果a009"(不図示)、
と一致するよう、モデル名="モデルM3'"のモデルのモデルパラメータを調整する。
【0124】
<モデル生成処理の流れ>
次に、モデル生成部112によるモデル生成処理の流れについて説明する。
図16は、モデル生成部によるモデル生成処理の流れを示すフローチャートである。
【0125】
ステップS1601において、モデル生成用データ取得部1310は、Proxel数をカウントするカウンタiに"1"を入力する。
【0126】
ステップS1602において、モデル生成用データ取得部1310は、解析結果格納部115に格納されたi番目のProxelを読み出し、i番目のProxelに分類される複数のデータ群を、データ格納部114から読み出す。
【0127】
ステップS1603において、モデル生成用データ取得部1310は、読み出したデータ群の数をカウントするカウンタjに"1"を入力する。
【0128】
ステップS1604において、モデル生成判定部1320は、j番目のデータ群に含まれるデータ、その他のデータ、知見等に基づき、対応するステップが実行された際の半導体製造装置の状態、半導体製造装置内の雰囲気、処理対象物の経時変化を予測する。
【0129】
ステップS1605において、モデル生成判定部1320は、対応するステップが実行される際の前提である、状態の変化を測定する半導体製造装置内の位置、及び、半導体製造装置の種類を判別する。
【0130】
ステップS1606において、モデル生成判定部1320は、予測結果及び判別結果を判定指標として、j番目のデータ群に対応する新たなモデルを生成するか否かを判定する。
【0131】
ステップS1606において、新たなモデルを生成すると判定した場合には(ステップS1606においてYesの場合には)、ステップS1607に進む。
【0132】
ステップS1607において、モデル生成判定部1320は、j番目のデータ群に対応する新たなモデルを生成し、ステップS1608に進む。
【0133】
一方、ステップS1606において、新たなモデルを生成しないと判定した場合には(ステップS1606においてNoの場合には)、直接、ステップS1608に進む。
【0134】
ステップS1608において、モデルパラメータ調整部1330は、ステップS1607において新たなモデルが生成された場合には、j番目のデータ群と、対応する処理対象物の属性とを、新たなモデルに入力し、シミュレーション処理を行う。また、モデルパラメータ調整部1330は、シミュレーション処理を行った場合の出力が、j番目のデータ群に含まれる"効果"と一致するように、新たなモデルのモデルパラメータを調整する。
【0135】
一方、新たなモデルが生成されなかった場合、モデルパラメータ調整部1330は、j番目のデータ群と、対応する処理対象物の属性とを、既に生成済みのモデルに入力し、シミュレーション処理を行う。また、モデルパラメータ調整部1330は、シミュレーション処理を行った出力が、j番目のデータ群に含まれる"効果"と一致するように、既に生成済みのモデルのモデルパラメータを再調整する。
【0136】
ステップS1609において、モデル生成判定部1320は、ステップS1602において読み出された複数のデータ群全てについて、ステップS1604からステップS1608までの処理を実行したか否かを判定する。
【0137】
ステップS1609において、未だ処理を実行していないデータ群があると判定した場合には(ステップS1609においてNoの場合には)、ステップS1610に進む。ステップS1610において、モデル生成判定部1320は、カウンタjをインクリメントし、ステップS1604に戻る。
【0138】
一方、ステップS1609において、複数のデータ群全てについて処理を実行したと判定した場合には(ステップS1609においてYesの場合には)、ステップS1611に進む。
【0139】
ステップS1611において、モデル生成用データ取得部1310は、全てのProxelについて、ステップS1602からステップS1610までの処理を実行したか否かを判定する。
【0140】
ステップS1611において、未だ処理を実行していないProxelがあると判定した場合には(ステップS1611においてNoの場合には)、ステップS1612に進む。ステップS1612において、モデル生成用データ取得部1310は、カウンタiをインクリメントし、ステップS1602に戻る。
【0141】
一方、ステップS1611において、全てのProxelについて、ステップS1602からステップS1610までの処理を実行したと判定した場合には、モデル生成処理を終了する。
【0142】
<推定部の機能構成>
次に、データ処理装置110の推定部113の機能構成について説明する。
図17は、推定部の機能構成の一例を示す図である。
図17に示すように、推定部113は、推定用データ取得部1710、モデル選択部1720、モデル実行部1730、出力部1740を有する。
【0143】
推定用データ取得部1710は、データ格納部114から、シミュレーション処理を行う対象のデータ群(新たなデータ群)を読み出す。また、解析結果格納部115に格納された各Proxelを参照し、読み出したデータ群が、いずれのProxelに分類されるかを判定する。
【0144】
モデル選択部1720は選択部の一例である。モデル選択部1720は、新たなデータ群に含まれるデータ、その他のデータ、知見等に基づき、対応するステップが実行された際の半導体製造装置の状態、半導体製造装置内の雰囲気、処理対象物の経時変化を予測する。
【0145】
また、モデル選択部1720は、対応するステップが実行される際の前提である、状態の変化を測定する半導体製造装置内の位置及び半導体製造装置の種類を判別する。
【0146】
更に、モデル選択部1720は、モデル格納部116に格納された複数のモデルであって、新たなデータ群が分類されたProxelに対応付けて格納されたモデルの中から、選択指標に基づく1のモデルを選択する。具体的には、モデル選択部1720は、新たなデータ群が分類されたProxelに対応付けられたモデルの中から、同じ予測結果及び判別結果が対応付けられたモデルを選択する。
【0147】
モデル実行部1730は実行部の一例である。モデル実行部1730は、モデル選択部1720により選択された1のモデルに、新たなデータ群と、対応する処理対象物の属性とを入力し、シミュレーション処理を行う。
【0148】
出力部1740は、モデル実行部1730によりシミュレーション処理が行われることで推定された効果を、出力する。
【0149】
<推定部の各部の処理の具体例>
次に、推定部113の各部(推定用データ取得部1710、モデル選択部1720、モデル実行部1730、出力部1740)の処理の具体例について説明する。
図18は、推定部の処理の具体例を示す図である。
【0150】
図18の例は、半導体製造装置aが、プロセス名="プロセスI"、ステップ名="STEP1"を実行した際の実行前の状態を示すデータが"状態B201(実行前)"であって、
・実行後にデータ群識別子="データa201"のデータ群が新たに収集された、
ことを示している。
【0151】
同様に、
図18の例は、半導体製造装置aが、プロセス名="プロセスI"、ステップ名="STEP1"を実行した際の実行前の状態を示すデータが"状態B202(実行前)"であって、
・実行後にデータ群識別子="データa202"のデータ群が新たに収集された、
ことを示している。
【0152】
以下、半導体製造装置aが、プロセス名="プロセスI"、ステップ名="STEP1"を実行した際の実行前の状態を示すデータと、実行後に新たに収集されたデータ群との関係は同様である。
【0153】
かかる前提のもと、
図18の例は、推定用データ取得部1710が、データ群識別子="データa201"〜"データa205"の各データ群を読み出したことを示している。また、
図18の例は、推定用データ取得部1710が、データ群識別子="データa201"、"データa204"の各データ群をProxel311に分類したことを示している。また、推定用データ取得部1710が、データ群識別子="データa202"、"データa203"、"データa205"の各データ群を、それぞれ、Proxel313、314、312に分類したことを示している。
【0154】
ここで、
図18の例では、Proxel311、312に対応付けられたモデルはそれぞれ1つずつである。このため、モデル実行部1730では、例えば、モデル名="モデルM1"のモデルに、
・データ群識別子="データa201"、"データa204"の各データ群と、
・対応する処理対象物の属性(対応するステップが実行された際の実行前の処理対象物の属性)と、
を入力し、モデル名="モデルM2"のモデルに、
・データ群識別子="データa205"のデータ群と、
・対応する処理対象物の属性(対応するステップが実行された際の実行前の処理対象物の属性)と、
を入力し、それぞれ、シミュレーション処理を行うことで、推定効果a201、推定効果a204、推定効果a205を出力する。
【0155】
一方、Proxel313、314には、それぞれ、2つのモデルが対応付けられている。このため、モデル選択部1720では、データ群識別子="データa202"のデータ群に含まれるデータ、その他のデータ、知見等に基づき、プロセス名="プロセスI"、ステップ名="STEP1"が実行された際の、
・半導体製造装置aの状態、
・半導体製造装置a内の雰囲気、
・処理対象物の経時変化、
を予測する。また、モデル選択部1720は、プロセス名="プロセスI"、ステップ名="STEP1"が実行される際の前提である、状態の変化を測定する半導体製造装置a内の位置及び半導体製造装置aの種類を判別する。
【0156】
図18の例は、モデル選択部1720が、予測結果及び判別結果を選択指標として、モデル名="モデルM3"のモデルを選択し、モデル実行部1730が、モデル名="モデルM3"のモデルに、
・データ群識別子="データa202"のデータ群と、
・対応する処理対象物の属性(対応するステップが実行された際の実行前の処理対象物の属性)と、
を入力し、シミュレーション処理を行うことで、推定効果a202を出力した様子を示している。
【0157】
同様に、
図18の例は、モデル選択部1720が、予測結果及び判別結果を選択指標として、モデル名="モデルM4'"のモデルを選択し、モデル実行部1730が、モデル名="モデルM4'"のモデルに、
・データ群識別子="データa203"のデータ群と、
・対応する処理対象物の属性(対応するステップが実行された際の実行前の処理対象物の属性)と、
を入力し、シミュレーション処理を行うことで、推定効果a203を出力した様子を示している。
【0158】
<推定処理の流れ>
次に、推定部113による推定処理の流れについて説明する。
図19は、推定部による推定処理の流れを示すフローチャートである。
【0159】
ステップS1901において、推定用データ取得部1710は、データ格納部114から、新たなデータ群を読み出し、読み出したデータ群が、いずれのProxelに分類されるかを判定する。
【0160】
ステップS1902において、モデル選択部1720は、読み出したデータ群に含まれるデータ、その他のデータ、知見等に基づき、対応するステップが実行された際の半導体製造装置の状態、半導体製造装置内の雰囲気、処理対象物の経時変化を予測する。
【0161】
ステップS1903において、モデル選択部1720は、対応するステップが実行された際の前提である、状態の変化を測定する半導体製造装置内の位置、及び、半導体製造装置の種類を判別する。
【0162】
ステップS1904において、モデル選択部1720は、予測結果及び判別結果を選択指標として、ステップS1901において分類されたProxelに対応付けられたモデルの中から1のモデルを選択する。
【0163】
ステップS1905において、モデル実行部1730は、選択された1のモデルに、読み出したデータ群と、対応する処理対象物の属性とを入力し、シミュレーション処理を行うことで効果を推定する。
【0164】
ステップS1906において、出力部1740は、モデル実行部1730によりシミュレーション処理が行われることで推定された効果を出力する。
【0165】
<Proxel単位でモデルを用いてシミュレーション処理を行うことの利点>
次に、推定部113が、モデル生成部112によりProxel単位で生成されたモデルを用いて、シミュレーション処理を行うことの利点について説明する。
図20は、各モデルのProxelごとのシミュレーション精度の一例を示す図である。
【0166】
図20において、符号2001は、特徴空間における複数のProxelそれぞれに分類されるデータ群を入力として、モデル名="モデルM1"のモデルを用いてシミュレーション処理を行った場合の、各Proxelの正答率を示している。同様に、符号2002は、特徴空間における複数のProxelそれぞれに分類されるデータ群を入力として、モデル名="モデルM2"のモデルを用いてシミュレーション処理を行った場合の、各Proxelの正答率を示している。同様に、符号2003は、特徴空間における複数のProxelそれぞれに分類されるデータ群を入力として、モデル名="モデルM3"のモデルを用いてシミュレーション処理を行った場合の、各Proxelの正答率を示している。なお、
図20において、各Proxel内の色の濃淡は、各Proxelの正答率を表しており、色の濃い部分は、正答率が低いことを表しており、色の薄い部分は、正答率が高いことを表している。
【0167】
図20に示すように、特徴空間全体を高い正答率でカバーするモデルは存在せず、いずれのモデルも、特定のProxelに対して、高い正答率を有している。また、それぞれのモデルは、互いに、高い正答率を有するProxelが異なっている。
【0168】
したがって、推定部113のように、それぞれのProxelに応じたモデルを用いてシミュレーション処理を行うように構成することで、1のモデルのみで特徴空間全体をカバーする場合と比較して、シミュレーション精度を向上させることができる。
【0169】
<まとめ>
以上の説明から明らかなように、第1の実施形態に係るデータ処理装置110では、
・プロセスごと、ステップごとに、データ群を収集し、収集したデータ群ごとに効果を算出する。
・データ群それぞれの特徴空間における分布において、同様の効果が得られるデータ群同士が同じグループに分類されるよう、特徴空間を分割する。
・分割した特徴空間の各領域の各データの範囲を特定するProxelを算出し、解析結果データとして格納する。
・各Proxelに分類されるデータ群を入力することで、各Proxelに対応するそれぞれの効果を出力する複数のモデルを生成し、各Proxelと対応付けて格納する。
・新たなデータ群が取得された場合に、解析結果データに基づいて、該新たなデータ群が分類されるProxelを判定する。
・判定したProxelに対応付けて格納されたモデルを用いて、該新たなデータ群についてシミュレーション処理を行うことで、対応するステップが実行されたことによる効果を推定する。
【0170】
このように、Proxelに対応付けて生成したモデルを用いてシミュレーション処理を行うことで、1のモデルのみで特徴空間全体をカバーする場合と比較して、シミュレーション精度を向上させることができる。
【0171】
つまり、第1の実施形態によれば、製造プロセスのシミュレーション処理において、シミュレーション精度を向上させるデータ処理装置、データ処理方法及びプログラムを提供できる。
【0172】
[第2の実施形態]
上記第1の実施形態において、モデル生成判定部1320は、予測結果及び判別結果を判定指標として、新たなモデルを生成するか否かを判定するものとして説明した。
【0173】
しかしながら、モデル生成判定部1320において新たなモデルを生成するか否かを判定するための判定指標はこれに限定されない。例えば、
図15で示したように、モデル生成判定部1320は、既に生成済みのモデルを用いてシミュレーション処理を行い、推定された効果が、所定の効果に含まれるか否かを判定することで、新たなモデルを生成するか否かを判定してもよい。つまり、効果の誤差を判定指標とすることで、新たなモデルを生成するか否かを判定してもよい。
【0174】
具体的には、モデル生成判定部1320は、シミュレーション処理を行った際に推定された効果と、所定の効果との誤差が大きい場合に、新たなモデルを生成すると判定する。また、モデル生成判定部1320は、シミュレーション処理を行った際に推定された効果と、所定の効果との誤差が小さい場合に、新たなモデルを生成しないと判定する。
【0175】
この場合、モデル生成判定部1320は、新たなモデルを生成すると判定した後に、予測結果及び判別結果を求めるように構成される。
【0176】
このように、第2の実施形態によれば、Proxelごとに、適切なモデルを生成することが可能となる。この結果、第2の実施形態によれば、製造プロセスのシミュレーション処理において、シミュレーション精度を更に向上させるデータ処理装置、データ処理方法及びプログラムを提供できる。
【0177】
[その他の実施形態]
上記第1の実施形態において、モデル生成判定部1320は、予測結果及び判別結果を判定指標として、新たなモデルを生成するものとして説明した。しかしながら、予測結果または判別結果が異なっていた場合でも、効果が連続的な式で表現できる場合には、新たなモデルを生成することなく、モデルを連続的な式として表現してもよい。つまり、1のモデルは、所定の範囲の効果を網羅して推定できるように定義されるものとする。
【0178】
また、上記第1及び第2の実施形態では、分割された特徴空間の各領域の各データの範囲を算出することで、Proxelを算出した。しかしながら、Proxelの算出方法はこれに限定されない。
【0179】
例えば、分割された特徴空間の各領域が、特徴空間で著しく離れていた場合に、互いに隣接するように、それぞれの領域を変形する処理を加え、変形後の各領域の各データの範囲を算出することでProxelを算出してもよい。これにより、特徴空間における空き領域(Proxelが規定されていない領域)を低減させることができる。
【0180】
また、上記第1及び第2の実施形態では、分割された特徴空間の各領域の各データの範囲を算出することでProxelを算出し、当該Proxelを解析結果データとして解析結果格納部115に格納する構成とした。しかしながら、解析結果格納部115に格納する解析結果データは、Proxelに限定されない。例えば、分割された特徴空間の各領域を代表する代表データ(各グループを特定する特定データ)を、解析結果データとして格納してもよい。
【0181】
また、上記第1及び第2の実施形態では、データ解析プログラム、モデル生成プログラム、推定プログラムをデータ処理装置110にインストールし、データ処理装置110においてデータ解析部111、モデル生成部112、推定部113を実現した。しかしながら、これらのプログラムは、例えば、各事業所120、130、140内の端末121、131、141にインストールしてもよい。この場合、各事業所120、130、140内の端末121、131、141においてデータ解析部111、モデル生成部112、推定部113が実現される。
【0182】
また、上記第1及び第2の実施形態では、モデル生成判定部1320が、新たなモデルを生成するか否かを判定する際、及び、モデル選択部1720が、シミュレーション処理に用いるモデルを選択する際、
・対応するステップが実行された際の半導体製造装置内の状態、
・対応するステップが実行された際の半導体製造装置内の雰囲気、
・対応するステップが実行された際の処理対象物の経時変化、
を予測し、
・状態の変化を測定する半導体製造装置内の位置、
・半導体製造装置の種類、
を判別するものとして説明した。しかしながら、モデル生成判定部1320、モデル選択部1720が予測する内容及び判別する内容は、これらに限定されず、例示した内容以外の内容を予測または判別してもよい。
【0183】
また、上記第1及び第2の実施形態では、半導体製造プロセスにおいて収集されたデータ群について、Proxelを算出する場合について説明したが、Proxelを算出するデータ群は、半導体製造プロセスにおいて収集されたデータ群に限られない。半導体製造プロセス以外の製造プロセスであっても、例えば、プラズマを用いる装置が含まれる製造プロセスは、一般に設定データが複雑化する。このため、当該装置が含まれる製造プロセスにおいて収集されたデータ群に対して、Proxelを算出した場合も、上述のような利点を得ることができる。
【0184】
なお、上記実施形態に挙げた構成等に、その他の要素との組み合わせ等、ここで示した構成に本発明が限定されるものではない。これらの点に関しては、本発明の趣旨を逸脱しない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。