以下、本発明の実施例を添付図面に基づいて説明する。以下おいて、処理結果観察画像から特徴量または特徴寸法を取得するための学習モデル用の学習データの生成技術を説明する。また、取得した特徴量または特徴寸法を学習することで装置の処理条件を探索する機能またはシステムを有する半導体製造システムを説明する。
以下においては、機械学習、特に深層学習による画像認識技術を用いて、SEM画像からの寸法抽出モデル構築に必要となる、学習用データベースを短期間で構築する方法、及び、寸法抽出モデルを用いてSEM(Scanning Electron Microscope)画像から所定の寸法を自動で計測することにより、寸法計測時間の短縮とオペレータ起因の誤差を含まない計測方法を説明する。
図1は、構造画像と生成画像のデータベース構築手法、及び生成画像から構造情報を求める構造取得モデルの学習の概要を示す。
<構造画像と生成画像のデータベース構築>
構造画像1000Aは、例えば、装置によって処理された試料の断面の観察画像において、その断面構造を示す画像である。具体的には、構造画像1000Aは、断面画像中の各構造の輪郭線や、各構造エリアを示す。これらは、例えば、線図、またはカラー図で示すことが可能である(図2の1000A1、1000A2参照)。構造画像の作成には、ドローソフト、ペイントソフト等の一般的な描画ソフトが使用できる。CADソフトを用いて構造画像1000Aを作成することもできる。
画像生成モデル(または画風変換モデル)1000は、構造画像1000Aを元にして、参照画像(またはスタイル画像)1000Cを参考とすることで、生成画像1000Bを生成する。生成画像1000Bは、参照画像1000Cの画風情報を抽出し、構造画像1000Aにその画風を反映させることで、実際の観察画像(実画像)に類似した画像になるように生成された画像である。
生成画像1000Bの具体例としては、カメラ画像、光学式顕微鏡画像、電子顕微鏡画像等が挙げられる。参照画像1000Cとしては、例えば、対象とする観察画像の典型例が使用される。
画像生成モデル1000は、例えばニューラルネットワークで構成され、画像認識モデル学習用のデータセットをあらかじめ学習したモデルを使用することができる。または、対象とする生成画像と類似の構造画像及び実画像(生成画像1000Bに対応する実際の画像)のデータセットがある場合には、そのデータセットを用いて画像生成モデルを構築することできる。この場合には、画像生成モデルは参照画像なしでの画像生成が可能となるため、参照画像なしに構造画像から生成画像を生成してもよい。
構造画像1000Aを複数作成し、それを画像生成モデル1000へ入力することで、生成画像1000Bを複数取得することができる。これらの構造画像1000Aと生成画像1000Bは、データベース1001に保存される。なお、構造画像1000Aを複数作成する際には、構造を定義する数値データまたはベクトルデータ等を、ランダムまたは一定幅もしくは一定の割合で変更しながら自動的に作成することができる。もしくは、特定の構造画像を人手によって作成してもよい。
画像生成モデル1000による生成画像1000Bの品質が不十分な場合には、生成画像1000Bに画像フィルタ処理を行うことで、輝度やコントラストを補正してもよい。
なお、構造画像と生成画像のデータセットを得る本実施例と異なる方法としては、生成画像1000Bに対応する実画像から、直接、構造画像を得るために、汎用画像データセットで学習した学習済みモデルを使う方法が考えられる。しかし、画像中の特徴寸法計測に必要となる高精度な輪郭情報やエリア情報を得るためには、通常、そのような学習済みモデルの精度は不十分となる。これは、輪郭部分は画像全体の画素数に対して非常に小さな割合であるため、ニューラルネットによる深層学習をもってしても、出力画像に輪郭情報を高精度に描画することが難しいためである。
本願の実施例と異なる他の方法としては、実画像に対する輪郭抽出処理が考えられるが、特開2012-68138号公報及び特開2002-350127号公報を参照して上述した通り、しきい値などのパラメータチューニングが必要になる、または界面位置の目視判断による指定が必要になり、データセットの準備に長時間を要する。
従って、本願の実施例は、構造画像(構造情報)を入力として、対応する生成画像を生成し、これら画像のペアのデータセットの学習により、構造取得モデルを構築する方法を用いる。
<生成画像から構造情報を求める構造取得モデルの学習>
構造画像と生成画像のペアのデータベース1001を構造取得モデル1010の学習に用いることで、生成画像から構造画像を求める構造取得モデルを構築できる。この際の学習では、構造取得モデル1010の入力側データとして生成画像1010A、出力側データとして構造画像1010Bを用いる。なお、生成画像1010Aは、生成画像1000Bとして生成されたものであり、構造画像1010Bは、構造画像1000Aとして作成された画像である。
本願の実施例と異なる方法の一つとして、生成画像1010Aと類似の実画像、及びその構造を示したアノテーションデータを作成することで、構造取得モデル1010を学習させることができる。しかし、前述した通り、実画像の取得には実際の装置での処理及び断面像のSEM観察等が必要であり、これに加えて構造を示すアノテーションデータ作成も必要となり、この学習データの準備に長期間を要する。
具体的には、半導体デバイス用の微細加工においてデータセットを取得する場合、その取得速度は、装置での加工処理、SEM観察、アノテーションデータ作成のセットについて、1日に5~10セット程度である。例えば、1日に5セット取得、また構造取得モデルの精度を十分に上げるために必要なデータセット数を100セットとすると、学習データの準備に20日かかることになる。
本願の実施例による方法では、構造取得モデル1010の学習用データセットの作成のため、学習済みの画像生成モデルを使用、かつ構造画像作成を自動的に行うことが可能である。このため、学習用データセットの画像生成には長くても数分、短ければ1秒以内に完了する。残りの必要な手順は、構造取得モデル1010の学習時間のみであり、これは短ければ数分、通常であれば数時間から1日程度で十分である。実画像を使用する場合と比較して、本願の実施例による方法では、20倍から500倍(構造取得モデルの学習時間が1時間弱の場合)以上の処理の高速化が可能となる。
図2は、構造画像、参照画像、生成画像の具体例を示す。生成画像1000B11、1000B12は、微細加工処理された試料断面のSEM観察画像である。参照画像1000C1は、微細加工処理された試料断面のSEM観察画像の参照画像の例である。構造画像1000A21、1000A22は、断面画像中の輪郭線によって構造を示した線図である。構造画像1000A11、1000A12は断面画像中の構造エリアを色付きで示したカラー図を模式的に示す。なお、本明細書において、カラー図の構造エリアの異なる色は、モノクロの異なるパターンで示されている。
構造画像1000A11または1000A21が画像生成モデル1000に入力され、画像生成モデル1000は、参照画像1000Cの画風となるような画像である生成画像1000B11を生成する。また、構造画像1000A12または1000A22が画像生成モデル1000に入力され、画像生成モデル1000は、参照画像1000Cの画風となるような画像である生成画像1000B12を生成する。
図3Aは、実画像から構造画像を生成し、さらに、構造画像から寸法データを取得する手法の概略を示す。図3Aにおいて、実画像1020Aは、装置によって処理された試料の断面の観察画像である。本手法は、実画像1020Aから、その構造画像1020Bを取得する。実画像1020Aと実画像より取得された構造画像1020Bは、データベース1021に格納される。さらに本手法は、実画像より取得された構造画像1030Aより寸法データ1030Bを取得する。
構造取得モデル1020は、学習後の構造取得モデル1010である。この構造取得モデル1020へ、実画像1020Aを入力することで、その出力として構造画像1020Bが得られる。実画像1020Aとその構造画像1020Bのデータセットより、データベース1021が構築される。
さらに、このデータベース1021に保存された構造画像1020Bは、構造画像1030Aとして、寸法抽出モデル1030へ入力される。寸法抽出モデル1030は、構造画像1030Aにおける特徴量または特徴寸法として、目的の寸法データ1030Bを抽出する。なお、ここで寸法抽出モデル1030は、入力された構造画像1030Aより寸法データ1030Bを抽出する学習済みモデルである。この寸法抽出モデルの学習方法については、実施例5及び実施例6にて後述する。
図3Bは、寸法抽出位置の例の概要図1031Bを示す。寸法抽出モデル1030は、例えば(i)、(ii)及び(iii)の幅寸法、(iv)及び(v)の深さ寸法を自動的に計測することができる。
以上、図1及び図3Aの手順を経ることで、短時間かつ自動での、実画像からの寸法抽出を行うために必要となる学習データベース構築、及びその寸法抽出が可能となる。
実施例2として、図1を参照して説明した構造画像と生成画像のデータベース構築の際に、複数の構造画像を短時間で作成する方法を説明する。
図4は、2つの代表構造画像より、それらの中間画像となる複数の構造画像を作成する方法を示す。まず代表画像A1041と代表画像A’1042の2つを作成する。指定された対応関係に従って、この代表画像A1041から代表画像A’1042に変化させた際の複数の画像を中間画像1043として作成する。このような画像処理の方法はモーフィングと呼ばれている。
具体的には、ユーザは、2つの構造画像中で対応関係となる構造を構成する角、線分、弧を指定することで、一方の構造(代表画像A1041)から他方の構造(代表画像A’1042)への変化を指示することができる。また、対応関係となる構造の指定方法としては、線分及び弧の特定位置やその両端等を指定することもできる。
図5は、代表構造A’1052を、装置での処理における試料の所望の目標形状とした場合を示す。装置により処理された試料の形状として目標形状を実現する装置処理条件を探索する過程の典型的な例では、最初は目標形状から離れた形状が取得されるが、探索がうまく進むと、徐々に目標形状に近い形状が得られるようになる。
従って、代表画像A1051と目標形状1052の画像との間の中間画像となる構造画像1053を、モーフィングによりあらかじめ準備しておけば、それに対応する生成画像を生成することができる。また、その生成画像と構造画像を学習した構造取得モデル1020が構築できる。従って、目標形状の探索中に取得される可能性が高い実画像に対して、高精度に構造抽出ができる構造取得モデル1020の構築ができることになる。
図6は、代表画像A’として取得済み実画像の内、最も目標形状に近い実画像の構造画像を設定した例を示す。画像1062は、最も目標形状に近い実画像の構造画像の例である。代表画像A1061から構造画像1062の中間画像となる構造画像1063を、モーフィングによりあらかじめ準備できることになる。
従って、目標形状の探索中に取得される可能性が高い実画像に対して、高精度に構造抽出ができる構造取得モデル1020の構築ができることになる。なお、最も目標形状に近い実画像に対する構造画像の作成は、人手で行うことも可能であるが、図3Aを参照して説明したように、これまでに学習済みの構造取得モデル1020を用いて、実画像から構造画像を自動的に取得することで、構造画像の作成時間を短縮することが可能である。
なお、目標形状と実画像の近さ、すなわち差異(もしくは類似度)は、両者の各特徴量または各特徴寸法の誤差の総和を用いて評価することができる。誤差は、各パラメータの差分、絶対値、または2乗誤差等を用いて計算できる。この誤差が小さいほど実画像が目標形状に近いことが分かる。
図7は、さらに取得される可能性が高い実画像への対応及び構造抽出の高精度化を実現するための代表画像の例を示す。具体的には、代表画像Aとして、取得済み実画像の内、最も目標形状に近い実画像より作成した構造図1062が設定され、代表画像A’として目標形状の構造画像1052が設定されている。
目標形状を実現する装置処理条件を探索する際、探索が成功する場合には、取得済みの最良形状と目標形状の中間となる形状が取得される可能性が極めて高い。従って、それらに対応する中間画像1073をあらかじめ準備することで、さらに取得される可能性が高い実画像への対応及び構造抽出の高精度化が可能となる。
なお、図4から図7において説明した代表画像Aと代表画像A’は、中間構造の画像を作成する際の両端となる構造を決定するため、両者を入れ替えて設定することが可能である。
上述にように、二つの構造画像から中間構造の画像を生成し、構造画像及び実際の画像に類似させた生成画像をデータベースとして構築する。実際の画像に類似させた生成画像を用いることで、構造画像と実際の画像の関係を、実際の画像を取得することなく学習することが可能となる。また、2つの異なる構造画像のうち一方を取得済み実画像の内で最も目標形状に近い形状に対応する構造画像とし、他方を目標形状とすることで、目標の加工形状を探索する際に、実際に取得される可能性が高い画像をあらかじめ学習データに含めることにより、実際の画像からの構造取得の際の精度を向上する。
実施例3として、図1及び図3を参照して説明した手法により構築される学習モデル及びデータベースを利用した、目標形状を得るための装置処理条件の最適化の方法を説明する。図8A及び8Bにその概要に示す。データベース1101は、目標形状の探索時に徐々に蓄積される、装置条件1100A及び装置条件を用いて処理された試料の断面画像である実画像1100B1を含む。また、データベース1101は、実画像1100B1より取得される構造画像を含む。構造画像1100B2、1100B3はその構造画像の例である。さらに、データベース1101は、構造画像より抽出された寸法データ1100B4を含む。
前述の通り、実画像1100B1から構造画像1100B2、1100B3を取得するためには、構造取得モデル1020が使用できる。また、寸法データ1100B4は、実画像1100B1から手動で計測した値を用いることができるが、寸法抽出モデル1030を用いて構造画像1100B2、1100B3から取得した寸法データ1100B4を使用することもできる。
装置条件1100Aと、その他のデータ1100B1~1100B4との関係を記述する学習モデル1110を構築することで、目標形状を取得するための装置条件を探索することができる。学習モデルの入出力として、装置条件と寸法データを選択した場合には、入出力は数値パラメータであり、多入出力回帰モデルが構築される。
または、学習モデルの入出力として、装置条件と実画像または構造画像とを選択した場合には、装置条件の数値パラメータと画像の関係を記述する学習モデルが構築される。そのモデルの具体的な例としては、畳み込みニューラルネットワーク(Convolutional Neural Network)や敵対的生成ネットワーク(Generative Adversarial Network)が挙げられる。
これらの学習モデルを用いて、目標形状1110Bを得るための最適装置条件1110Aを探索することが可能である。探索手法としては、多数の装置条件セットを入力し、寸法データまたは実画像形状を見積もることで、最も目標形状に近い寸法データまたは実画像形状が得られると推定される装置条件を選択することができる。または、目標形状を実現すると推定される装置条件を逆問題として解くこともできる。
これらの学習モデルでは、入力として装置条件1100A、出力としてその他データ1100B1~1100B4として説明を行ったが、これらの入出力を逆にして学習モデルを構築し、最適装置条件を探索することも可能である。
以上の実施例では、試料を加工処理する場合を例として説明してきたが、本開示の特徴を、その他の例として、劣化検出における対象物の断面検査に適用することができる。金属やコンクリートの疲労または経年劣化を評価する場合に、それらの断面を観察する。従って、構造画像として断面に発生する亀裂、欠陥、腐食、性質変化領域を示す構造画像を作成し、それらに対応する参照画像を使用することで、生成画像を生成することが可能である。
図9には、金属材料の例として、島と各島の境界領域の2つの相構造を持つ構造画像1200A1、参照画像1200C1、生成画像1200B1を示す。図9には、さらに、クラックがある構造画像1210A1、参照画像1210C1、生成画像1210B1を示す。
実施例1と同様の手順にて、実画像からの構造画像取得、その構造画像からの寸法データ、すなわち亀裂、欠陥、腐食、性質変化領域の特徴量または特徴寸法を取得することができる。相構造を持つ例では、寸法データとして、例えば、島の面積、各島の最大幅(島を構成する境界上の2点で最も距離が離れている2点間の幅)、島の数、2つの島の距離(向かい合う2つの島の境界線上の各点からの最短距離、またはそれら最短距離の平均値等)が使用される。
また、クラックがある例では、寸法データとして、例えば、クラックの面積、クラックの本数、クラックの幅(クラックを構成する向かい合う2本の境界線において、境界線上の各点からの最短距離、またはそれら最短距離の平均値等)が使用される。このように、本開示の特徴を、様々な種類の画像処理に適用することができる。
以下、実施例5と実施例6では、寸法抽出モデル及びその学習方法の詳細を説明する。実施例5では、加工構造と背景との間の境界線及び異種材料間の界面の境界線の座標を抽出するためにセマンティック・セグメンテーションモデル(第1画像認識モデル)と、単位パターンの座標を検出するために物体検出モデル(第2画像認識モデル)との2種類の画像認識技術を用いる。セマンティック・セグメンテーションモデルは、上記実施例における構造取得モデルに対応する。
事前の学習ステップでは、セマンティック・セグメンテーションモデルには、入力データである断面SEM画像と、出力データである領域ごとに色分けしたアノテーション画像とを、教師データとして与えて、領域の形状を学習させる。また、物体検出モデルには、入力データである断面SEM画像と、出力データである単位パターンの座標(パターンを囲む矩形のバウンディング・ボックスで指定する)を記したアノテーションデータとを、教師データとして与えて、単位パターン形状を学習させる。
推論ステップでは、与えられた入力画像に対し、学習済みセマンティック・セグメンテーションモデルで領域ごとに色分けした画像を推定し、学習済み物体検出モデルで単位パターンの座標を推定する。
計測ステップでは、領域ごとに色分けした画像から得られる領域境界線の座標を、単位パターン座標を用いてパターンごとに分割し、寸法計測に必要な特徴点の座標を求めることにより、所望の個所の寸法を自動で計測する。
図10は、半導体製造システムのシステム構成例を示す図である。半導体製造システム10は、処理条件探索装置100と、入力装置103と、出力装置114と、処理装置111と、評価装置112と、寸法計測装置200と、入出力装置206とを有する。ユーザは、目標処理結果(加工形状)と処理装置111で用いるパラメータ101を選択して入力装置103から入力し、出力装置114から目標加工形状を与える最適処理条件102を出力として得る。
処理条件探索装置100は、入力装置103から目標加工形状101を受け付け、処理装置111が最適に目標加工形状を得ることが可能な処理条件を探索し、探索した処理条件を出力装置114へ出力する装置である。
入力装置103は、GUIなどの入力インタフェースとカードリーダなどの記憶媒体読み出し装置を備え、処理条件探索装置100にデータを入力する。また、ユーザからのみならず、入出力装置206から寸法計測値も同様に受けつけ、処理条件探索装置100に入力する。入力装置103は、例えば、キーボード、マウス、タッチパネル、記憶媒体読み出し装置などを含む。
出力装置114は、処理条件探索装置100から渡された処理条件を、最適処理条件102としてユーザへ表示する。表示する手段としては、ディスプレイへの表示、またはファイルへの書き出しなどである。出力装置114は、例えば、ディスプレイ、プリンタ、記憶媒体書き出し装置などを含む。
処理装置111は、半導体または半導体を含む半導体デバイスを処理する装置である。処理装置111の処理の内容は特に限定されない。例えば、リソグラフィ装置、成膜装置、パターン加工装置を含む。リソグラフィ装置には、たとえば、露光装置、電子線描画装置、X線描画装置を含む。成膜装置は、たとえばCVD(Chemical Vapor Deposition)、PVD(Physical Vapor Deposition)、蒸着装置、スパッタリング装置、熱酸化装置を含む。パターン加工装置は、たとえば、ウェットエッチング装置、ドライエッチング装置、電子ビーム加工装置、レーザ加工装置を含む。処理装置111は、処理条件探索装置100から入力された処理条件に基づき半導体または半導体デバイスの処理を行い、評価装置112に渡す。
評価装置112は、処理装置111で処理された半導体または半導体デバイスの断面を撮影して、処理結果である断面画像208を取得する。評価装置112は、SEM、TEM(Transmission Electron Microscope)、光学式モニタを用いた加工寸法計測装置を含む。処理装置111で処理された半導体または半導体デバイスの一部を断片として取り出して、その断片を評価装置112へ運搬して計測してもよい。取得した断面画像208は、入出力装置206へ渡される。
寸法計測装置200は、中央処理部201、モデル学習部202、モデル推定部203、寸法計測部204とデータベース205を有する。入出力装置206を介して入力された特徴点と寸法の定義、倍率、学習データセット209と断面画像208を受け付け、断面画像208から所定の寸法を計測し、入出力装置206へ出力する。
入出力装置206は、GUIなどの入出力インタフェースとカードリーダなど記憶媒体読み出し装置を備え、寸法計測装置200に特徴点と寸法の定義、倍率、学習データセット209を入力する。また、評価装置112から断面画像208を受けとり、中央処理部201に渡す。入出力装置206は、例えば、キーボード、マウス、ディスプレイ、タッチパネル、記憶媒体読み出し装置などを含み、寸法計測装置200から渡された寸法値を、ユーザへ表示するか、あるいは直接入力装置103へ転送する。ユーザへ表示する場合、その手段はディスプレイへの表示、またはファイルへの書き出しなどである。
図11は、処理条件探索装置100のシステム構成例を示す図である。処理条件探索装置100は、中央処理部104と、データベース105と、初期処理条件設定部106と、ターゲット設定部107と、モデル学習部108と、処理条件探索部109と、装置制御部110と、収束判定部113とを有する。
図12に、寸法計測装置200のハードウェア構成を示すブロック図を示す。寸法計測装置200は、入出力装置206を介して評価装置112から入力された断面画像208から寸法を計測し、計測結果を入出力装置206へ出力する。寸法計測装置200は、プロセッサ116と、通信インタフェース115と、ROM117と、RAM118とを有する。通信インタフェース115は、プロセッサ116と、外部の入出力装置206とを接続する。プロセッサ116は、通信インタフェース115と、ROM117と、RAM118とが接続される。ROM117には、プロセッサ116で実行する処理プログラムが格納されている。RAM118には、学習データや学習モデル、特徴点と寸法の定義、倍率などが格納される。
なお、図10に示す寸法計測装置200との対応では、データベース205はROM117及びRAM118として実装され、モデル学習部202、モデル推定部203、寸法計測部204はROM117及びRAM118に格納されるプログラム及びパラメータとして実装される。
図13は、寸法計測装置200のモデル学習部202及びモデル推定部203で用いるセマンティック・セグメンテーションモデルの構成の一例である。なお、本例ではニューラルネットワーク20を用いる例を説明するが、これに限られず、決定木などの機械学習のモデルを用いることもできる。ニューラルネットワークは、入力層に入力された画素情報が、中間層、出力層へと順に伝播され演算されることにより、出力層から各画素の属する領域のラベル番号を出力する。中間層は畳み込み層、プーリング層などが多数層繰り返される。具体的な層構造は採用するモデルにより異なる。学習時には出力された各画素のラベルと正解であるアノテーションデータとの誤差が最小となるように、中間層のパラメータを調整する。
図14は、寸法計測装置200のモデル学習部202及びモデル推定部203で用いる物体検出モデルの構成の一例である。なお、本例ではニューラルネットワーク30を用いる例を説明するが、これに限られず、テンプレートマッチングなどの他のモデルを用いることもできる。ニューラルネットワークは、入力層に入力された画素情報が、中間層、出力層へと順に伝播され演算されることにより、出力層から画像に含まれる物体のラベル番号とバウンディング・ボックスの座標値を出力する。中間層は畳み込み層、プーリング層などが多数層繰り返される。具体的な層構造は採用するモデルにより異なる。学習時には出力された物体のラベル番号とバウンディング・ボックスの座標値と正解であるアノテーションデータとの誤差が最小となるように、中間層のパラメータを調整する。
図15は、寸法計測装置200が実行する、入力画像から必要な寸法を計測するまでのフローチャートである。
まず、事前に寸法計測装置200に入力すべき学習データセット209を作成する。学習データセットは、入力データである断面SEM画像に加え、出力データとなる物体検出モデルに対しては単位パターンを囲むバウンディング・ボックスの座標を記したアノテーションデータ209を、セマンティック・セグメンテーションモデルに対しては領域ごとに色分けしたアノテーション画像209の組を作成し、それら学習データセットを入出力装置206から入力する(ステップS100)。入力された学習データセットはデータベース205に保存される。
つぎに、中央処理部201はデータベース205からモデル学習部202に学習データセットとモデルを転送し、モデル学習部202で2つのモデルの学習を行う(ステップS101)。学習したモデルのパラメータはデータベース205へ保存される。以下の説明では、モデルとしては、畳み込み層やプーリング層を有するニューラルネットワークを用いる場合を説明するが、物体検出モデルとしてテンプレートマッチングなど、セマンティックセグメンテーションモデルとして決定木などの機械学習のモデルを用いることもできる。
つぎに、推定ステップで、寸法を計測したいテスト画像を入出力装置206から入力する(ステップS104)。同時に、寸法計測に必要となる特徴点の定義209と、計測する寸法の定義209とを入出力装置206を介してデータベース205に格納する(ステップS102、S103)。入力画像の倍率は、画像を格納するフォルダ名により判断させるようにする。例えば、倍率が100k倍ならフォルダ名を100kとする。各画像の倍率情報は、データベース205に保存される。中央処理部201はモデル推定部203にデータベース205からモデルとパラメータを渡すとともに、入力されたテスト画像を渡し、モデル推定部203で推定を行い(ステップS105)、パターン検出結果であるバウンディング・ボックス座標とセマンティック・セグメンテーション画像を得る(ステップS106)。
つぎに、計測ステップにおいて、中央処理部201は寸法計測部204にバウンディング・ボックス座標とセマンティック・セグメンテーション画像を渡し、セマンティック・セグメンテーション画像から境界線の座標を求める。つぎに、パターンごとに境界線座標を分割し、データベース205に格納してある特徴点の定義を呼び出して特徴点の座標を求め、寸法の定義を呼び出して主要寸法を計算する(ステップS107)。得られた寸法の単位はピクセル数であるので、データベース205に格納してある倍率を呼び出して実寸法に変換する(ステップS108)。計測した寸法値を入出力装置206へ出力するとともに、パターンごとの境界線座標データをデータベース205へ保存する(ステップS109)。
さらに、寸法計測個所を新規に追加したい場合には、寸法計測に必要となる新たな特徴点209の定義と、新たな寸法計測個所の定義209を入出力装置206から入力し、データベース205に格納する(ステップS110、S111)。
つぎに、新規の寸法計測個所の指定の有無を判定し(ステップS112)、指定がなければ、寸法計測処理をスキップする。指定があれば、データベース205に格納してあるパターンごとの境界線の座標データを読み出して寸法を計算し(ステップS114)、実寸法にスケール変換(ステップS115)後、計測した寸法値を入出力装置206へ出力する(ステップS116)。
ここで、加工形状の探索をしたい場合には、目標寸法値を入力する(ステップS117)。中央処理部201は形状探索の指定の有無を判定し(ステップS118)、指定がなければ、寸法計測処理を終了する(ステップS119)。指定があれば、データベース205に格納してある全画像の寸法値を探索し(ステップS120)、入力した寸法に近い形状を入出力装置206へ出力する(ステップS121)。以上で、処理を終了する(ステップS122)。
図16は、半導体製造システム10において処理条件探索装置100が実行する、目標処理結果(目標出力パラメータ値)から処理装置111の最適処理条件を決定するフローチャートである。
まず、処理装置111の行う処理について、目標とする目標処理結果(目標出力パラメータ値)及び、処理装置111を制御するパラメータとして選択する入力パラメータ101を、入力装置103から中央処理部104に受け渡す(ステップS200)。
つぎに、中央処理部104は受け付けた目標出力パラメータ値と選択された入力パラメータ(加工条件パラメータ)とをデータベース105に格納するとともに、選択された入力パラメータを初期処理条件設定部106へ渡す。初期処理条件設定部106では、渡された入力パラメータを元に、データベース105から入力パラメータの設定可能範囲のデータを読み取り、初期処理条件を自動設定する(ステップS201)。中央処理部104は設定された初期処理条件をデータベース105へ格納するとともに、初期処理条件を装置制御部110へ渡す。
装置制御部110は、初期処理条件を処理装置111に転送する。または装置制御部110が出力した初期処理条件をユーザが処理装置111に入力するのでもよい。処理装置111は入力された初期条件に従って処理を行い、評価装置112で評価し、入出力装置206を介して、評価結果である断面画像208を寸法計測装置200に渡す。寸法計測装置200で求められた寸法値(ターゲット出力パラメータ値)は入出力装置206を介して入力装置103へ入力される。中央処理部104は、入力装置103から初期処理結果を受け渡される(ステップS202)。中央処理部104は、初期処理条件と初期処理結果とを収束判定部113に渡す。
収束判定部113は、初期処理結果を目標処理結果と比較し、所定の精度内で目標処理結果に収束しているかどうかを判定する(ステップS203)。収束していれば、目標処理結果に収束した初期処理条件を出力装置114へ渡し、出力装置114は最適処理条件102として出力する(ステップS210)。
出力パラメータ値(処理結果)の収束性の判定には、(数1)で与えられる、用いる全出力パラメータに関する出力パラメータ値と目標出力パラメータ値との誤差の2乗和を用いることができる。
ここで、NPは用いる出力パラメータの総数、xiはi番目の目標出力パラメータ値、yiはi番目の出力パラメータ値(実績値)、Wiはユーザが出力パラメータごとに指定する重みである。
一方、収束していなければ処理を継続する命令が収束判定部113から中央処理部104へ送られ、中央処理部104はデータベース105に、初期処理条件(初期入力パラメータ値)と初期処理結果(初期出力パラメータ値)とからなる初期学習データを作成する(ステップS204)。
つぎに、中央処理部104は目標出力パラメータ値(目標処理結果)と初期学習データとをデータベース105から読み込み、ターゲット設定部107へ渡す。ターゲット設定部107は、ターゲット処理結果(ターゲット出力パラメータ値)を設定する(ステップS205)。設定されたターゲット出力パラメータ値は、中央処理部104へ渡され、データベース105に格納される。ターゲット設定部107は、既存の学習データの中から目標出力パラメータ値に最も近いベストデータ(出力パラメータ値(実績値))を選び出し、そのときベストな出力パラメータ値と目標出力パラメータ値との間を内挿補間することによりターゲット出力パラメータ値を設定する。設定するターゲットの個数は1個以上ならいくつでも良いが、効率を考えて複数個、例えば4~5個程度を設定することが望ましい。
つぎに、中央処理部104は、データベース105から初期学習データを読み込み、初期学習データをモデル学習部108へ送る。モデル学習部108は入力パラメータ値(処理条件)と出力パラメータ値(処理結果)とを関係づける推定モデルを学習する(ステップS206)。推定モデルとしては、ニューラルネットワーク、サポートベクターマシン、カーネル法などを用いることができる。学習した推定モデルは処理条件探索部109へ渡される。
つぎに、処理条件探索部109は、モデル学習部108から渡された推定モデル及びデータベース105から読み出した入力パラメータへの制約条件を用いて、データベース105から読み出した目標出力パラメータ値及びターゲット出力パラメータ値に対する処理条件を探索する(ステップS207)。推定モデルは処理条件が入力で、処理結果が出力となっているため、処理結果から処理条件を逆に求めるには、シミュレーテッド・アニーリング法、遺伝的アルゴリズムなど各種の最適解探索手法を用いることができる。処理条件探索部109は、探索した処理条件(ターゲット入力パラメータ値)を装置制御部110に渡すとともに、中央処理部104を介してデータベース105へ格納する。
装置制御部110は、渡された処理条件(ターゲット入力パラメータ値)を処理装置111に転送する。または、装置制御部110が出力した処理条件をユーザが処理装置111に入力するのでもよい。処理装置111は入力された初期条件に従って処理を行い、評価装置112で評価し、評価結果である断面画像208を入出力装置206を介して寸法計測装置200に渡す。寸法計測装置200で求められた寸法値(ターゲット出力パラメータ値)は入出力装置206を介して入力装置103へ入力される。中央処理部104は、入力装置103から処理結果(ターゲット出力パラメータ値)を受け渡される(ステップS208)。中央処理部104は、処理条件(ターゲット入力パラメータ値)と処理結果(ターゲット出力パラメータ値)とを収束判定部113に渡す。
収束判定部113は、処理結果(出力パラメータ値(実績値))を目標処理結果(目標出力パラメータ値)と比較し、所定の精度内で目標処理結果に収束しているかどうかを判定する(ステップS209)。収束していれば、目標処理結果に収束した処理条件を出力装置114へ渡し、出力装置114は最適処理条件102として出力する(ステップS210)。
一方、収束していなければ処理を継続する命令が収束判定部113から中央処理部104へ送られ、中央処理部104はデータベース105の学習データセットに、新たに探索した目標処理結果とターゲット処理結果についての処理条件(入力パラメータ値)と処理結果(出力パラメータ値(実績値))との組を追加学習データとして追加することにより、学習データセットを更新する(ステップS204)。
以下、学習データセットの作成・更新(ステップS204)~収束判定(ステップS209)までの推定プロセスを、処理結果が目標処理結果に収束されるまで繰り返す。このようにして、目標処理結果を実現する最適処理条件を自律的に探索する。
以上が、処理条件探索装置100と寸法計測装置200を備えた半導体製造システム10全体の処理フローである。
以下、処理装置111がエッチング装置である場合を例に説明する。
図17は、学習データセットの中の入力データセットとなる断面SEM画像の例である。この画像のサイズは1280×960ピクセルである。サンプルはライン/スペースの単位パターンが繰り返しているトレンチ構造であり、領域は背景300、マスク301、基板302の3領域からなる。なお、画像の左下には撮像条件が、右下にはスケールが重畳表示されている。
図18は、寸法計測個所の例である。この例では、寸法計測個所は、(1)L1:マスク上面の幅305、(2)L2:マスク/基板界面の幅306、(3)L3:基板最狭部の幅307、(4)L4:マスクの高さ308、(5)L5:トレンチの深さ309、の5カ所を設定している。なお、マスク上面の幅305は、凸状になっている2つのピーク位置の間隔と定義した。ピーク位置が1つしかない形状の場合には幅を0とする。図中のAからGまでの7つの点は寸法計測に用いる境界線上の特徴点であり、境界線データのみから一意に定義できる点を用いる。例えば、A、Bはマスク上面のピークとなる点、などである。特徴点A~Gの定義及び寸法L1~L5と特徴点A~Gとの対応関係(L1:A、B、L2:C、Dなど)はユーザが入出力装置206を介して入力し、データベース205に格納されている。具体的には、特徴点と寸法の定義を記述したスクリプトを格納しておく。特徴点と計測寸法の個数・位置は、計測対象の構造に応じて適宜設定する。
図19は、学習データセットの中の出力データセットとなるアノテーションデータのうち、物体検出モデルに与えるアノテーションデータに記述するバウンディング・ボックスの座標の定義を説明する図である。図中に示した枠線(バウンディング・ボックス)で囲まれたライン/スペースの繰り返しの単位構造であるマスクと基板の一部からなる領域に対し「パターン」というラベル名を定義する。この例では、ラベルは1種類のみであり、ラベル番号は0である。図19には5つのパターンが存在する。バウンディング・ボックスの座標は画像の左上を原点とし、水平方向にX軸を、垂直方向にY軸を取る。バウンディング・ボックスのY軸方向の境界は、マスク上部とトレンチ底が完全に含まれるように、それぞれ数ピクセルのマージンを持たせた位置に設定する。バウンディング・ボックスは矩形であるので、位置を特定するには、左上と右下の2つの座標を与えればよい。
図20は、図19に対応するアノテーションデータの記載例の抜粋である。必須となる項目のみ抜粋してある。この例ではデータはxmlフォーマットで記述されているが、使用する物体検出モデルが想定しているフォーマットであれば何でも良い。タグ<folder>~</folder>に画像ファイルを格納してあるフォルダ名を、タグ<filename>~</filename>に画像ファイル名を記載する。タグ<object>~</object>がバウンディング・ボックスに関する情報を記載する個所で、画像中に含まれるバウンディング・ボックスの個数分、繰り返される。その中のタグ<name>~</name>がラベル名を指定する個所である。タグ<bndbox>~</bndbox>に記載された4つの数値が、1つ目のバウンディング・ボックスの左上と右下の点の座標である。アノテーションデータは手作業で作成するか、学習済みの物体検出モデルを用いて作成できる。
図21は、学習データセットの中の出力データセットとなるアノテーションデータのうち、セマンティック・セグメンテーションモデルに対するアノテーションデータの例である。アノテーションデータは専用ソフトウェアを用いて手作業で作成するか、学習済みのセマンティック・セグメンテーションモデルを用いて作成できる。データは、領域別に色分けされた画像である。ここで領域は、測定対象とする半導体デバイスの断面を構成する各層と半導体デバイスの断面以外の背景とを含む。この例では、背景310、半導体デバイスの断面を構成する各層としてマスク311及び基板312の3領域からなる。3領域のラベル名は、それぞれ「背景」、「マスク」、「基板」であり、色は、それぞれ黒、グレー、白である。
図22は、ラベル名、ラベル番号、色の対応関係であり、データベース205に格納されている。各ラベルに付与するラベル番号と色は任意であるが、寸法計測装置200内では固定する必要がある。
図23は、学習ステップを行う際に入出力装置206に表示されるGUI画面の一例である。画面は入力データウィンドウ323と、アノテーションデータウィンドウ331と、ターミナルウィンドウ339を含む。入力データウィンドウ323では、ロードボタン320により、学習データセットの入力データセットが格納されているフォルダを選択する。セレクトボタン321により、入力データウィンドウ323に表示したい画像ファイルを選択する。クリアボタン322により表示結果をクリアする。セル324と325には選択したフォルダ名とファイル名とが表示される。画像ウィンドウ326には選択した画像が表示される。
アノテーションデータウィンドウ331では、モデルボタン328によりセマンティック・セグメンテーションモデルか、物体検出モデルかのいずれかを選択する。選択したモデルに応じてアノテーションデータウィンドウ331に表示されるデータの種類は変わる。また、アノテーションデータが含まれるフォルダもモデルに応じて自動で選択される。図23はセマンティック・セグメンテーションモデルを選択した場合の例である。セレクトボタン329によって、ウィンドウ334に表示したいサンプルを指定する。セル332と333には選択したサンプルのあるフォルダ名とファイル名とが表示される。ウィンドウ334にはアノテーション画像が、テーブル335にはラベル名、ラベル番号、色の対応表が表示される。
ターミナルウィンドウ339では、スタートボタン336により、モデルボタン328で選択したモデルの学習が開始される。ターミナルウィンドウ339には計算中の途中経過、最終結果がメッセージで表示される。ストップボタン337により計算途中でも停止できる。計算結果である学習済みモデルは自動で保存される。
図24は、寸法を計測したいテスト画像の例である。このテスト画像には、前述したように、不要な奥の構造の輪郭が写っている。この構造は、寸法計測の際には無視すべき構造である。
図25は、図24に示したテスト画像を学習済み物体検出モデルに入力して推論させた結果である。検出された物体のラベル名とともに、バウンディング・ボックス座標が黒枠で示されている。図25の例では4つのパターンが検出されている。
図26は、図25に対応するバウンディング・ボックスの座標値データであり、推論後にデータベース205に自動で保存される。
図27は、図24に示したテスト画像を学習済みセマンティック・セグメンテーションモデルに入力して推論させた結果である。領域それぞれの色は、図22で設定した対応関係に従っており、背景が黒、マスクがグレー、基板が白である。
図27から各領域間の境界線の座標が求まるので、それを図26のバウンディング・ボックスの座標値を用いて、バウンディング・ボックスごとに境界線座標を切り出す。切り出したバウンディング・ボックスごとの境界線座標から、寸法計測に必要な特徴点A~Gの座標を求め、寸法L1~L5を求める。このようにして、入力した画像からパターンごとに寸法が自動で計測される。
図28は、計測した寸法値を元の入力画像上に表示した例であり、検出されたバウンディング・ボックス位置も矩形で示されている。
図29は図28の計測結果であり、5つの寸法L1~L5が、パターンごとの値の他に統計値(平均値、標準偏差)も計算され、表示される。結果はデータベース205に自動で保存されるとともに、平均値は入出力装置206へ出力される。
図30は、推論・計測ステップを行う際に入出力装置206に表示されるGUI画面の一例である。画面は入力データウィンドウ345と、推論・計測結果ウィンドウ353とを含む。入力データウィンドウ345では、定義ボタン340により特徴点と寸法との対応を定義したスクリプトを読み込む。読み込まれた定義は定義テーブル349に表示される。つぎに、マニュアルボタン341によりテスト画像を1枚ずつ選択して推論・計測を行うか、バッチボタン342によりテスト画像を含むフォルダを指定してフォルダ内の全画像を一括で推論・計測を行うかを選択する。フォルダ名は画像の倍率に一致させることにより、倍率に関する情報はフォルダ名から得られる。セル346と347には選択したフォルダ名とファイル名とが表示される。画像ウィンドウ350には選択されたテスト画像が表示される。バッチを選択した場合には1枚目のテスト画像のファイル名と画像が、セル347と画像ウィンドウ350に表示される。スタートボタン343により2つの学習済みモデルを用いて推論と寸法計測が行われる。計算結果は自動で保存される。クリアボタン344により表示結果をクリアする。
推論・計測結果ウィンドウ353では、ロードボタン351により結果を表示したい元画像を選択する。セル354と355には選択した画像のフォルダ名とファイル名とが表示される。ウィンドウ356にはセマンティック・セグメンテーション結果が、ウィンドウ357には物体検出結果が表示される。最終結果ウィンドウ358には、元画像上に寸法値が表示された画像が表示され、数値テーブル359には計測された寸法値と統計値が表示される。
図31は、所望の寸法に近い形状をデータベース205から探索する探索ステップの際に、入出力装置206に表示されるGUI画面の一例であり、ターゲットウィンドウ360と探索結果ウィンドウ363とを含む。ターゲットウィンドウ360では、ターゲット構造セル361に目標とする寸法値を入力する。定義ウィンドウ362には寸法L1~L5の定義が図示される。
探索結果ウィンドウ363では、サーチボタン364により探索を実行する。探索結果は誤差の小さい順にソートして表示され、フォルダ名366、ファイル名367、寸法値を記載した画像368、寸法の平均値369が表示される。
実施例5では第1画像認識モデルとしてセマンティック・セグメンテーションモデルを、第2画像認識モデルとして物体検出モデルを用いたが、寸法計測方法としてはこの組み合わせに限られない。実施例6として、2種類のセマンティックセグメンテーションモデルを用いる方法について説明する。実施例6では、輪郭線を検出させる第1のセマンティック・セグメンテーションモデルと、特徴点を検出させる第2のセマンティック・セグメンテーションモデルとを用いる。以下、実施例6については、画像認識モデルを用いた特徴点の抽出を中心に説明し、実施例5と重複する点については説明を省略する。
図32は、寸法計測装置200が実行する、事前の学習ステップを経て入力された画像から寸法を計測するフローチャートである。
まず、寸法計測に必要な特徴点209を定義し、入出力装置206を介してデータベース205に格納する(ステップS300)。これは学習ステップの前に行う。
つぎに、第1のセマンティックセグメンテーションモデル(第1画像認識モデル)に対しては輪郭線とそれ以外に領域分けしたアノテーション画像を、第2のセマンティック・セグメンテーションモデル(第2画像認識モデル)に対しては寸法計測に必要な特徴点とそれ以外に領域分けしたアノテーション画像を作成し、入出力装置206から入力する(ステップS302)。
つぎに、中央処理部201はモデル学習部202に学習データセットを渡し、モデル学習部202でモデルの学習を行う(ステップS303)。以下の説明では、モデルとしては、畳み込み層を有するニューラルネットワークを用いる場合を説明するが、決定木などの機械学習のモデルを用いることもできる。
つぎに、寸法を計測したいテスト画像を評価装置112から読み込む(ステップS304)。中央処理部201はモデル学習部202に画像を渡し、モデル推定部203で推定を行い(ステップS305)、2種類のセマンティック・セグメンテーション画像を得る(ステップS306)。
つぎに、特徴点と寸法計測個所の対応関係209を入出力装置206から入力し、データベース205に格納する(ステップS301)。
つぎに、寸法計測部204にて、2種類のセマンティック・セグメンテーション画像から、輪郭線上の特徴点座標を求め、主要寸法を計算し、輪郭線全体の座標データを求める(ステップS307)。続いて、得られた寸法を実寸法のスケールに変換する(ステップS308)。計測した寸法値を入出力装置206へ出力するとともに、輪郭線の座標データをデータベース205へ保存する(ステップS309)。
さらに、加工形状の比較をしたい場合には、比較したい2つのサンプルを指定する(ステップS310)。続いて、形状比較の指定の有無を判定し(ステップS311)、指定がなければ、寸法計測処理を終了する(ステップS312)。指定があれば、データベース205に格納してある輪郭線データと寸法値を読み出し、比較した結果を入出力装置206へ出力する(ステップS313)。以上により、処理を終了する(ステップS314)。
以下、処理装置111がエッチング装置である場合を例に説明する。図33は、図17の学習データセットの入力データ画像に対応する輪郭線を教えるアノテーションデータの例である。領域は背景400と輪郭線401との2領域からなる。ラベル名はそれぞれ「背景」、「輪郭」であり、ラベル番号はそれぞれ0、1である。図34は、ラベル名、ラベル番号、色の対応関係である。各ラベルに付与するラベル番号と色は任意であるが、寸法計測装置200内では固定する必要がある。
図35は、図17の学習データセットの入力データ画像に対応する特徴点の位置を教えるアノテーションデータの例である。特徴点として図18に示したA~Gの7点のうち、A411、C412、E413、G414の4点をラベルとして設定し、背景410を含めた5つのラベル別に色分けした画像である。他の3つの特徴点B、D、Fは、対称性を仮定すればA、C、Eから求まるのでラベルには含めないこととした。後述するように、特徴点A、C、Eについては特徴点B、D、Fと輪郭線から求めることにより、目視によらなくても、特徴点B、D、Fと特徴点A、C、Eとが一つの単位パターンについての特徴点であることを担保することが可能になる。図36は、ラベル名、ラベル番号、色の対応関係である。各ラベルに付与するラベル番号と色は任意であるが、寸法計測装置200内では固定する必要がある。
図37は、学習ステップを行う際に入出力装置206に表示されるGUI画面の一例である。画面は入力データウィンドウ323と、アノテーションデータウィンドウ331と、ターミナルウィンドウ339とを含む。入力データウィンドウ323では、ロードボタン320により、入力画像ファイルの格納されているフォルダを選択する。セレクトボタン321により、表示したい画像ファイルを選択する。クリアボタン322により表示結果をクリアする。セル324と325には選択したフォルダ名とファイル名とが表示される。画像ウィンドウ326には選択した画像が表示される。
アノテーションデータウィンドウ331では、モデルボタン415により輪郭線用セマンティック・セグメンテーションモデル(第1のセマンティック・セグメンテーションモデル)か、特徴点用セマンティック・セグメンテーションモデル(第2のセマンティック・セグメンテーションモデル)かのいずれかを選択する。選択したモデルに応じてアノテーションデータウィンドウ331に表示されるデータの種類は変わる。また、アノテーションデータが含まれるフォルダもモデルに応じて自動で選択される。図37は輪郭線用セマンティック・セグメンテーションモデルを選択した場合の例である。セレクトボタン329によって、ウィンドウに表示したいサンプルを指定する。セル324と325には選択したサンプルのあるフォルダ名とファイル名とが表示される。ウィンドウ334にはアノテーション画像が、テーブル335にはラベル名、ラベル番号、色の対応表が表示される。
ターミナルウィンドウ339では、スタートボタン336により、モデルボタン415で選択したモデルの学習が開始される。ターミナルウィンドウ339には計算中の途中経過、最終結果がメッセージで表示される。ストップボタン337により計算途中で停止できる。計算結果であるモデルパラメータは自動で保存される。
図38は、図24に示したテスト画像を第1の学習済みセマンティックセグメンテーションモデルに入力して推論させた輪郭線の検出結果の画像である。同時に、輪郭線の座標も求まる。
図39は、図24に示したテスト画像を第2の学習済みセマンティックセグメンテーションモデルに入力して推論させた特徴点A、C、E、Gの検出結果の画像である。同時に、これら特徴点の座標も求まる。なお、これらの特徴点の座標は図38で得られた輪郭線上に必ずしも位置しているとは限らないので、図39で得られた特徴点座標に最も近い図38の輪郭線上の点を特徴点の座標として採用する。
図40は、特徴点A、C、Eから、対応する特徴点B、D、Fを求める方法を説明する図である。対応点は、元の点とY座標が同一でX座標の差が最小、すなわち右側の最近傍の輪郭線上の点とする。実施例5では境界線座標をパターンごとに分割したが、実施例6では対となる2点の座標がわかっているので、分割は不要である。得られた7種の特徴点の座標と、データベース205から呼び出した特徴点と寸法の定義により、所定の寸法が計算される。このように、入力した画像から寸法が自動的に計測される。
図41は、推論・計測ステップを行う際に入出力装置206に表示されるGUI画面の一例である。画面は入力データウィンドウ345と、推論・計測結果ウィンドウ353とを含む。入力データウィンドウ345では、定義ボタン340により特徴点と寸法との対応を定義したスクリプトを選択して読み込む。読み込まれた定義は定義テーブル349に表示される。つぎに、マニュアルボタン341によりテスト画像を1枚ずつ選択して推論・計測を行うか、バッチボタン342によりテスト画像を含むフォルダを指定してフォルダ内の全画像を一括で推論・計測を行うかを選択する。フォルダ名は画像の倍率に一致させることにより、倍率に関する情報はフォルダ名から得られる。セル346と347には選択したフォルダ名とファイル名とが表示される。画像ウィンドウ350には選択されたテスト画像が表示される。バッチを選択した場合には1枚目のテスト画像のファイル名と画像が、セル347と画像ウィンドウ350に表示される。スタートボタン343により2つの学習済みモデルを用いて推論と寸法計測が行われる。計算結果は自動で保存される。クリアボタン344により表示結果をクリアする。
推論・計測結果ウィンドウ353では、ロードボタン351により結果を表示したい元画像を選択する。セル354と355には選択した画像のフォルダ名とファイル名とが表示される。ウィンドウ416には輪郭線に対するセマンティック・セグメンテーション結果が、ウィンドウ417には特徴点に対するセマンティック・セグメンテーション結果が表示される。最終結果ウィンドウ358には、元画像上に寸法値が表示された画像が表示され、数値テーブル359には計測された寸法値と統計値が表示される。
図42は、2つの画像の形状を比較する比較ステップを行う際に入出力装置206に表示されるGUI画面の一例である。画面は入力データウィンドウ423と、比較結果ウィンドウ436とを含む。入力データウィンドウ423では、ロード1ボタン420により比較したい1枚目の画像を、ロード2ボタン421により比較したい2枚目の画像を選択する。セル424と425には選択した1枚目の画像のフォルダ名とファイル名が、セル426と427には選択した2枚目の画像のフォルダ名とファイル名が表示される。画像ウィンドウ428と429には選択した2つの画像が表示される。輪郭線ウィンドウ430、431には、選択した2つの画像に対して抽出された輪郭線画像が、データベース205から読み出され、表示される。
比較結果ウィンドウ436は、輪郭線を重ねて表示したウィンドウ437と、2つの画像の寸法値の平均値とその差分を示したテーブル438が表示される。オートボタン432は、2つの輪郭線430、431を縦方向はマスク上面が一致し、横方向はトレンチ中央が一致するように自動で調整するボタンである。自動調整が失敗した場合あるいは手動で調整したい場合には、マニュアルボタン433を押し、ユーザがマウスで画像をドラッグすることにより、位置を調整する。テーブル438には、2つの画像に対して計測された寸法値がデータベース205から読みだされ、両者の差分が計算されて表示される。セーブボタン434によって、重ね書きした輪郭線画像とテーブルの数値をデータベース205へ保存する。
なお、本発明は前述した実施例に限定されるものではなく、添付した特許請求の範囲の趣旨内における様々な変形例及び同等の構成が含まれる。例えば、前述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに本発明は限定されない。
また、ある実施例の構成の一部を他の実施例の構成に置き換えてもよい。また、ある実施例の構成に他の実施例の構成を加えてもよい。また、各実施例の構成の一部について、他の構成の追加、削除、または置換をしてもよい。例えば、実施例5においてセマンティック・セグメンテーションモデルは半導体デバイスの断面を構成する各層を領域として色分けした画像を出力する例を説明したが、実施例6のように特徴点を出力するセマンティック・セグメンテーションモデルとしてもよい。ただし、この場合は、実施例6の例と違って全ての特徴点(実施例6の例では特徴点A~G)を出力する必要がある。
実施例5と同様の構成において、画像生成装置を搭載した半導体製造システムを構成することができる。具体的には、図10及び図12に示した寸法計測装置200を、画像生成装置と置き換えることができる。画像生成装置2000は、実施例1から4において説明した、構造画像の生成、及び、構造画像から(必要により参照画像を使用した)生成画像の生成等の処理を、実行するように構成できる。
図43は、画像生成装置2000の論理構成例を示す。画像生成装置2000は、図12に示す寸法計測装置200のように、1以上のプロセッサ及び1以上の記憶装置を含む、一つの計算機または複数の計算機で構成することができる。1以上プロセッサがプログラムに従って動作することで、画像生成装置2000の各種機能及び処置を実現できる。画像生成装置2000においては、評価装置112からの入力は不要である。
画像生成装置2000は、寸法計測装置200と同様に、中央処理部201、モデル学習部202、データベース205を有する。また、寸法計測装置200のモデル推定部203及び寸法計測部204の両方を含めた部分に代えて画像生成部2040を有する。画像生成部2040は、構造画像に対応する、実際の観察画像に類似させた画像として推定される画像を生成する。画像生成部2040の機能から、モデル推定部203の機能を分離してもよい。
寸法計測装置200のモデル推定部203と寸法計測部204の両方を含めた部分の代わりとして学習データセットを使用する場合には、画像生成部2040は、学習データセット209の代わりに、構造画像と実画像のデータセットを有する学習データセットを使用する。
実施例1にて説明した通り、学習済みの画像生成モデル1000を使用する場合には、モデル学習部202での画像生成モデル1000の学習は不要である。データベース205または外部のデータ保存領域に学習済みモデルデータまたは実行ファイルを保存しておき、それをロードすることで、画像生成モデル1000を動作させることができる。
また、画像生成モデル1000用の学習データセットがある場合には、ユーザは、それをデータベース205に予め保存しておき、その学習データデータセットを用いて、モデル学習部202が、学習済み画像生成モデル1000を構築できる。
参照画像はデータベース205または外部のデータ保存領域に保存され、画像生成モデル1000による画像生成時に使用される。
画像生成装置2000は、例えば入出力装置206を介して入力された、構造画像または構造画像と参照画像とを受け付け、これらの画像を画像生成モデル1000に入力して生成画像を出力し、データベース205に保存し、また入出力装置206に出力する。
入出力装置206は、GUIなどの入出力インタフェースとカードリーダなど記憶媒体読み出し装置を備え、画像生成装置2000に学習データセットを入力する。
入出力装置206は、例えば、キーボード、マウス、ディスプレイ、タッチパネル、記憶媒体読み出し装置などを含む。画像生成装置2000から渡された生成画像を、ユーザへ表示する。ユーザへ表示する場合、入出力装置206はは、例えばディスプレイへの表示、またはファイルへの書き出しなどを実行する。
画像生成装置2000は、例えば入出力装置206を介して構造画像または構造画像及び参照画像を取得し、それら画像より生成画像を生成して、入出力装置206へ出力する。
画像生成装置2000は、プロセッサ116と、通信インタフェース115と、ROM117と、RAM118とを有する。通信インタフェース115は、プロセッサ116と、外部の入出力装置206とを接続する。プロセッサ116は、通信インタフェース115と、ROM117と、RAM118とが接続される。ROM117には、プロセッサ116で実行する処理プログラムが格納されている。RAM118には、学習データや学習モデル、構造画像及び参照画像などが格納される。
なお、データベース205はROM117及びRAM118に格納され、モデル学習部202、画像生成部2040は、ROM117及びRAM118に格納されるプログラム及びパラメータに従って動作するプロセッサ116により実現できる。
画像生成装置2000で用いられる画像生成モデル構成は、例えば、図13を参照して説明した構成と同様である。画像生成モデルでは、構造画素データの各画素が入力であり、生成画像データの各画素が出力となる。なお、図13では、ニューラルネットワーク20を用いる例を説明するが、これに限らず、決定木などの機械学習のモデルを用いることもできる。
半導体製造システム10は、寸法計測装置200及び画像生成装置2000を有することが可能であり、画像生成装置2000によって、構造画像と生成画像のデータセットをデータベースに保存したのち、そのデータを学習データとして寸法計測装置200の学習モデル構築及び寸法計測を行うことができる。なお、画像生成装置2000、寸法計測装及び処理条件探索装置100それぞれの一部または全部の機能は、他の装置に含まれていてもよい。
図44は、画像生成装置2000が実行する、構造画像を入力として、生成画像を出力するするフローチャートである。
画像生成モデルの学習を行う場合には、ユーザは、事前に画像生成装置2000に入力すべき学習データセットを作成する。学習データセットは、例えば、入力データとして構造画像、出力データとして実際の観察画像と同じような画像になるように生成された生成画像の入出力の組で構成される。ユーザは、学習データセットを、入出力装置206から入力する(ステップS300)。入力された学習データセットはデータベース205に保存される。
つぎに、中央処理部201はデータベース205からモデル学習部202に学習データセットと画像生成モデルを転送し、モデル学習部202で画像生成モデルの学習を行う(ステップS301)。学習した画像生成モデルのパラメータは、データベース205へ保存される。なお、事前に学習済みの画像生成モデルを使用する場合には、ステップS300及びS301はスキップする。
ユーザは、構造画像を入出力装置206より入力する(ステップS302)。図2を参照して説明した通り、構造画像の作成には、ドローソフト、ペイントソフト等の一般的な描画ソフトが使用できる。CADソフトを用いて構造画像を作成することもできる。
また、構造画像の入力方法として、図4から図7にて説明した通り、2つの代表的な構造画像を登録し(ステップS303)、その中間となる複数の構造画像を作成する方法を使用することができる(ステップS304)。ユーザは、二つの代表画像を入出力装置206より入力すると共に、モーフィングのための情報を入力する。画像生成部2040は、二つの代表画像とユーザ指定情報に従って、モーフィングにより中間画像を生成する。
構造画像からの画像生成では(ステップS305)、画像生成部2040は、画像生成モデルとして、ステップ301にて学習した画像生成モデル、または事前に学習済みの画像生成モデルを使用する。また構造画像として、ステップ302の登録画像、またはステップ303の登録画像及びステップ304で作成した中間画像を用いる。または、構造画像として、これらすべての構造画像を用いてもよい。画像生成部2040は、構造画像及び生成画像をデータベースへ保存する(ステップS306)。なお、構造画像のデータベースへの保存は、構造画像登録時に行ってもよい。
ステップS306にて保存されたデータは、図15にて説明した学習データセットとして使用される(ステップS100)。
具体的には、図3Aを参照して説明した通り、実画像を構造取得モデルへ入力することで、構造画像を出力し、これらの実画像及び構造画像をデータベースへ登録する。次に、この構造画像を寸法抽出モデルへ入力することで、寸法データを出力する。構造取得モデル及び寸法取得モデルの学習方法は、図15のフローチャートにて説明した通りである。
図45は、画像生成装置2000において、構造画像の作成、また構造画像を入力として、生成画像の出力等を行う際のGUI画面の例である。本GUIでは、ユーザは、まず二つの代表構造画像を指定する。指定された代表構造画像がGUIに表示される。また、代表構造画像及び、代表構造画像を用いて作成された中間画像が表示される。これらの構造画像は、中間画像保存先に保存される。
構造画像より生成画像を生成する際には、ユーザはGUIにおいて、保存された中間構造画像及び代表構造画像を使用するか、別途作成した構造画像を使用するか、選択することができる。また、ユーザは、参照画像を参考とすることで、生成画像を生成する方式を使用するか、学習用構造画像と学習用生成画像を用いて学習させた画像生成モデルを使用する方法を選択することができる。
参照画像を使用する場合には、ユーザは、使用する参照画像を指定する。その際、指定した参照画像がGUIに表示される。画像生成モデルを学習させる場合には、ユーザは、学習に試用する学習用構造画像及び学習用生成画像を指定する。
上記手順の後、画像生成ボタンを押すことで、画像生成が行われ、生成画像がGUIに表示される。また、ユーザは、生成画像の保存先を指定することができる。
上述のように、実際の画像から取得した構造画像に対して、所定の特徴寸法を取得できる寸法抽出モデルを用いて特徴寸法を計測することで、実際の画像を取得した際の装置条件、実際の画像、実際の画像より取得した構造画像、特徴寸法のデータベースを自動で構築できる。加えて、これらのデータベースを用いて、装置条件に対応した構造画像を出力する学習モデルを構築し、前記学習モデルを用いて、目標形状を実現する装置条件を推定できる。
前述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等により、ハードウェアで実現してもよく、プロセッサがそれぞれの機能を実現するプログラムを解釈し実行することにより、ソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、SSD(Solid State Drive)等の記憶装置、又は、IC(Integrated Circuit)カード、SDカード、DVD(Digital Versatile Disc)の非一過性記録媒体に格納することができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、実装上必要な全ての制御線や情報線を示しているとは限らない。実際には、ほとんど全ての構成が相互に接続されていると考えてよい。
特許請求範囲に記載されている構成に加え、本開示の観点の代表的な例を以下に記載する。
本開示の一態様である、繰り返しパターンを有する半導体デバイスの断面画像から半導体デバイスの寸法を計測する寸法計測装置は、プロセッサと、メモリと、メモリに格納され、プロセッサに実行されることにより、半導体デバイスの寸法を計測する寸法計測プログラムとを有し、寸法計測プログラムは、モデル推定部と寸法計測部とを有し、モデル推定部は、第1画像認識モデルにより、断面画像に対して領域別にラベル付けしたラベル付け画像を出力し、第2画像認識モデルにより、断面画像において繰り返しパターンを構成する単位パターンそれぞれが位置する座標を出力し、寸法計測部は、ラベル付け画像及び単位パターンそれぞれが位置する座標を用いて、単位パターンごとにあらかじめ定義された複数の特徴点の座標を求め、複数の特徴点のうちの所定の2点間の距離として定義される寸法を計測する。
また、本開示の他の一態様である、繰り返しパターンを有する半導体デバイスの断面画像から半導体デバイスの寸法を計測する寸法計測装置であって、プロセッサと、メモリと、メモリに格納され、プロセッサに実行されることにより、半導体デバイスの寸法を計測する寸法計測プログラムとを有し、寸法計測プログラムは、モデル推定部と寸法計測部とを有し、モデル推定部は、第1画像認識モデルにより、断面画像を、輪郭線と背景とにラベル付けした第1のラベル付け画像を出力し、第2画像認識モデルにより、断面画像を、繰り返しパターンを構成する単位パターンにおいて定義される第1の複数の特徴点と背景とにラベル付けした第2のラベル付け画像を出力し、寸法計測部は、第1のラベル付け画像からの輪郭線の座標及び第2のラベル付け画像からの第1の複数の特徴点の座標を用いて第2の複数の特徴点の座標を求め、第1の複数の特徴点のうちの所定の点と第2の複数の特徴点のうちの所定の点との間の距離として定義される寸法を計測する。