原因推定装置、原因推定方法、プログラム、及び、記録媒体
【課題】 推論結果が○とされない場合にもユーザによるルール追加等の処理を行うだけでなくその推論結果を用いて更なる推論を行って推論結果をより○に導く可能性をあげることが可能な原因推定装置等を提供する。
【解決手段】 半導体のテスト不良解析における診断に用いられる不良の原因を推定する原因推定装置1は、データベース7と、ルールベース11と、推定部13とを備える。推定部13は、適用可能ルール抽出部21と、ルール選択部23と、推論エンジン19とを有し、推論エンジン19が不良の原因を推定できなかった場合で且つ不明な原因であると判断しなかった場合に、適用可能ルール抽出部21が、推論エンジン19が推論した推論結果を新たな事実として追加して適用可能ルール抽出部21とルール選択部23と推論エンジン19とに動作を繰り返させて新たな推論結果を得る。
【解決手段】 半導体のテスト不良解析における診断に用いられる不良の原因を推定する原因推定装置1は、データベース7と、ルールベース11と、推定部13とを備える。推定部13は、適用可能ルール抽出部21と、ルール選択部23と、推論エンジン19とを有し、推論エンジン19が不良の原因を推定できなかった場合で且つ不明な原因であると判断しなかった場合に、適用可能ルール抽出部21が、推論エンジン19が推論した推論結果を新たな事実として追加して適用可能ルール抽出部21とルール選択部23と推論エンジン19とに動作を繰り返させて新たな推論結果を得る。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、原因推定装置、原因推定方法、プログラム、及び、記録媒体に関し、特に、例えば半導体のテスト不良解析診断に用いられる原因推定装置等に関する。
【背景技術】
【0002】
特許文献1には、従来の実装工程等における不良要因を推定する装置が開示されている。この推定装置は、特許文献2〜4に開示されている推定装置の問題を解決している。より具体的には、特許文献2〜4記載の技術では、最初に知識データベースが作成される。この知識データベースは、システム開発者が不良に対する要因を推定するための知識を保存することによって、又は、自動学習によって作成される。しかし、この知識データベースを用いると、ユーザ、特に知識データベースを作成したユーザ以外のユーザにとっては、思うとおりの要因が思うとおりの順番で表示されないことがある。そのため、ユーザが知識データベースを改訂しようとしても、適切でない箇所を訂正してしまい、要因推定の性能が向上しないという問題があった。そこで、特許文献1記載の技術は、ユーザが知識データベースの改定を適切に行えるようにするものである。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2009−223550号公報
【特許文献2】特許第3511632号公報
【特許文献3】特開2007−257285号公報
【特許文献4】特開2003−228485号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1記載の技術では、ユーザが知識データベースを改定する作業を積極的に行うものである。そのため、ユーザの能力に依存し、ユーザがその分野のエキスパートであるか否かなどに極めて大きく依存する。一方、特許文献2〜4に記載の技術では上記した問題が残ったままである。
【0005】
また、事実とそれに対応する結果との関係が明確であれば、それを学習機能により学習させていくことで精度が上がることが予想される。しかし、例えば、半導体のテスト不良解析における診断過程では、予め整理してルールベース構築を行うこと自体が容易ではない。すなわち、予め整理したルールベースを構築するためには、膨大なデータを得る必要があるとともに、それを整理する労力が必要になる。これは現実的ではなく、結局、特許文献1記載の技術のように、ユーザが積極的に改定することが一つの解決策として浮上する。しかし、ユーザの能力に依存するにはデータ量が膨大であり、さらに、ユーザの専門性の影響も大きく出てしまうことから、十分な精度で適切な原因推定とはならないことが頻繁に起こってしまう。
【0006】
以上のような問題は、推論された結果を判断する際に、その推論結果が○か或いはそれ以外については×かという二者選択という発想に起因していることから生じていると考えられる。すなわち、○とされない推論結果であって単純に×とされるべきではない推論結果から新たな情報を得ていないことが原因の一つだと考えられる。
【0007】
ゆえに、本発明は、推論結果が○とされない場合にも、ユーザによるルール追加等の処理を行うだけでなく、その推論結果を用いて更なる推論を行って推論結果をより○に導く可能性を上げることが可能な原因推定装置、原因推定方法、プログラム、及び、記録媒体を提供することを目的とする。また、本発明は、単純な学習機能による反復による使用頻度を優先するのではなく、上記○とされない推論結果を用いて更なる推論を行うことと相まって、ルール自体の適正化を進め、使用を進めるにつれて適切なルールベース構築を図り、対象としている例えば半導体の不良の全容を把握して、より適切な不良解析診断を行うための原因推定装置、原因推定方法、プログラム、及び、記録媒体を提供することを目的とする。
【課題を解決するための手段】
【0008】
請求項1に係る発明は、発生した不良に対して、その原因を推定する原因推定装置であって、現象又は条件という事実を表す事実データが記憶されたデータベースと、前記事実を表す事実データと当該事実に対応する結果を表す結果データとの関係がルール付けされてそれぞれの関係についてのルールが記憶されたルールベースと、前記データベースに記憶された事実データの全部又は一部を前提条件に不良の原因を推定する推定手段とを備え、前記推定手段は、前記前提条件のもとで前記ルールベースに記憶されたルールの中から適用可能な適用可能ルールを抽出する適用可能ルール抽出手段と、前記適用可能ルールの中から優先度に従って一つ又は複数の選択ルールを選択するルール選択手段と、前記選択ルールを適用して不良解析の対象である解析対象データを解析して推論する推論エンジンとを有し、前記推論エンジンが前記不良の原因を推定できなかった場合で且つ不明な原因であると判断しなかった場合に、前記適用可能ルール抽出部が、前記推論エンジンが推論した推論結果を新たな事実として追加して再度適用可能なルールを抽出し、さらに、前記ルール選択手段と前記推論エンジンとが再度繰り返し動作して新たな推論結果を得ることを特徴とする。
【0009】
請求項2に係る発明は、請求項1記載の原因推定装置であって、前記データベースに記憶された事実データには、半導体を実際にテストすることにより得られたテストデータが含まれており、前記推定手段は、前記テストデータにも基づいて推定するものであり、前記半導体のテスト不良解析における診断に用いられるものである。
【0010】
請求項3に係る発明は、請求項1又は2記載の原因推定装置であって、前記ルールベースは、前記推論エンジンが不明な原因であると判断した場合に、新たなルールが追加される。
【0011】
請求項4に係る発明は、発生した不良に対して、その原因を推定する原因推定方法であって、データベースには、現象又は条件という事実を表す事実データが記憶されており、ルールベースには、前記事実を表す事実データと当該事実に対応する結果を表す結果データとの関係がルール付けされてそれぞれの関係についてのルールが記憶されており、推定手段が、前記データベースに記憶された事実データの全部又は一部を前提条件に不良の原因を推定する推定ステップを含み、前記推定ステップは、適用可能ルール抽出手段が、前記前提条件のもとで前記ルールベースに記憶されたルールの中から適用可能な適用可能ルールを抽出する抽出ステップと、ルール選択手段が、前記適用可能ルールの中から優先度に従って一つ又は複数の選択ルールを選択する選択ステップと、推論エンジンが、前記選択ルールを適用して不良解析の対象である解析対象データを解析して推論する推論ステップとを含み、前記推論エンジンが前記不良の原因を推定できなかった場合で且つ不明な原因であると判断しなかった場合に、前記適用可能ルール抽出部が、前記推論エンジンが推論した推論結果を新たな事実として追加して再度適用可能なルールを抽出し、さらに、前記ルール選択手段と前記推論エンジンとが再度繰り返し動作して新たな推論結果を得ることを特徴とする。
【0012】
請求項5に係る発明は、請求項4記載の原因推定方法であって、前記データベースに記憶された事実データには、半導体を実際にテストすることにより得られたテストデータが含まれており、前記推定ステップにおいて、前記推定手段が、前記テストデータにも基づいて推定し、前記半導体のテスト不良解析における診断に用いられる。
【0013】
請求項6に係る発明は、請求項4又は5記載の原因推定方法であって、前記優先度はランク付けられた評価値で表され、前記選択ステップで選択された各選択ルールの評価値は加点される。
【0014】
請求項7に係る発明は、請求項4から6のいずれかに記載の原因推定方法をコンピュータに実行させるためのプログラムである。
【0015】
請求項8に係る発明は、請求項7記載のプログラムを記録するコンピュータ読み取り可能な記録媒体である。
【発明の効果】
【0016】
本発明によれば、推論結果が不良の原因であると推定できないと判断した場合で且つ推論結果が不明な原因であるとも判断できない場合には、推論結果から得られる新たな事実を追加して再度適用可能ルール抽出とルール選択と推論エンジンによる推論とを行う。これにより、推論結果が○とされない場合にも、ユーザによるルール追加等の処理を行うだけでなく、その推論結果を用いて更なる推論を行って推論結果をより○に導く可能性を上げることが可能となる。
【0017】
また、本発明によれば、上記効果と相まって、半導体のテスト不良解析における診断のように予め整理したルールベース構築が困難であっても、運用しながらルールの適正化を進め、使用を進めるにつれて適切なルールベース構築を図ることにより、対象としている半導体の不良の全容を把握して、より適切な不良解析診断を行うことが可能になる。
【0018】
さらに、本発明によれば、上記効果に加えて、ルールの優先度を、ルールが推論成功までに用いられる頻度と関係付けることにより、適切なルールが選択されることが増え、効率的なルール運用が行えることになる。したがって、実際の経験に基づく判断と直観的に似てくる不良解析診断へ近づけることができる。
【図面の簡単な説明】
【0019】
【図1】本発明の実施の形態にかかる原因推定装置の概略ブロック図である。
【図2】図1の原因推定装置の動作を説明するフロー図である。
【図3】図1の適用可能ルール抽出部の動作を説明するための図である。
【図4】図1のルール選択部の動作を説明するための図である。
【図5】図1の推論エンジンの動作を説明するための図である。
【図6】図1の適用可能ルール抽出部の動作を説明するための他の図である。
【図7】ルールについて説明するための図である。
【図8】図7のルールによって作成されるF(*)の状態遷移の解析木を示した図である。
【図9】使用可能なルールの状態遷移の解析木を示した図である。
【図10】図2のステップS11の処理において、ルールを追加する際のユーザ支援のために提示される画面の一例を示した図である。
【図11】図2のステップS11の処理においてルールを編集する際のユーザ支援のために提示される画面の一例を示した図である。
【発明を実施するための形態】
【0020】
図1は、本発明の実施の形態にかかる原因推定装置の概略ブロック図である。原因推定装置1は、半導体のテスト不良解析における診断に用いられる不良の原因を推定する原因推定装置である。原因推定装置1は、ユーザ3との間でのインターフェイスとなるユーザインターフェイス(UI)5と、ユーザインターフェイス5を介してユーザが指定するテストデータ9が入力されて事実データが蓄えられるデータベース7とを備える。ここで、テストデータ9は事実を表すデータである。テストデータ9には、テストプログラムについてのデータが含まれ、例えばテストに関する印加条件等のデータが具体例としては挙げられる。また、テストデータ9には、テスターによる測定値も含まれ、対象製品の過去のテストデータ等も含まれる。なお、ここでは、データベース7にはユーザが直接データ入力することを想定しておらず、ユーザは外部のテストデータ9をユーザインターフェイス(UI)5を介してデータベース7に格納する指示のみを行うようにしている。なお、必要があれば、ユーザが直接入力することがなされることを可能にした構成にしてもよい。また、原因推定装置1は、事実(例えば、テスト結果やテストプログラム等のデータや、ユーザによって判断された事象)と推定結果(例えば、データ、現象等から判断される事象および推定原因)の関係についてのルールをデータとして蓄積したルールベース11も備える。ルールベース11に蓄積されたルールは、ユーザ3によりユーザインターフェイス5を介した追加のほか、修正・削除などの編集が行われたものである。さらに、原因推定装置1は、推定部13と、ユーザインターフェイス5に対して入出力・表示制御を行う入出力・表示制御部15とを備える。
【0021】
推定部13は、データベース7に記憶された事実データの中からルール毎に必要な情報を前提条件として抽出して不良の原因を推定するものである。ここで、前提条件はルール毎に異なり、それぞれのルールに記述がなされていることにしている。さらに前提条件について説明すると、ルールを記述する際にそのルールで推論を行うために必要なデータ又は事象の存在がそのルールを発動する前提条件になっていると言える。そのため、データベース7に記憶された事実データは、全て、前提条件として使用され得る可能性がある状況とも言える。推定部13は、ルール制御部17と、推論エンジン19とを備える。ルール制御部17は、適用可能ルール抽出部21と、ルール選択部23とを備える。
【0022】
図2は、図1の原因推定装置1の動作を説明するフロー図である。図3は、図1の適用可能ルール抽出部21の動作を説明するための図である。図4は、図1のルール選択部23の動作を説明するための図である。図5は、図1の推論エンジン19の動作を説明するための図である。図6は、図1の適用可能ルール抽出部21の動作を説明するための他の図である。図7は、ルールについて説明するための図である。図2を参照して、適宜図3から図6を用いて処理動作を説明する。
【0023】
まず、図1のルールベース11には、ルールが蓄積されている。ルールの属性記述形式は、例えば、rule(名称;前提条件;評価値;アクションアイテム・・・)が考えられる。図2に戻って、ステップST1において、適用可能ルールの抽出が行われる。この処理は、図3に示すように、適用可能ルール抽出部21が、入力される前提条件25をもとに、プレコンディション(前提条件と同義であり、各ルールが結論を導き出すために必要な情報(データ又は事象)がルール毎に個別に定義されている。)という形での検索を行って、条件が一致したとき、ルールベース11に蓄えられたルールの中から適用可能ルール27を抽出するものである。ステップST2において、ルールの選択が行われて、そのルールが実行される。この処理では、図4に示すように、ルール選択部23が適用可能ルール27から優先度に従って1つのルールを選択し、選択ルール29を得る。ここで、優先度について説明する。一例として、優先度は以下の順番になっている。ルールには、それぞれ評価値によりランク付けが行われている。最も優先度が高いものは評価値が最上位のものであり、これが最優先で選択される。次の選択は、評価値(rank())が同じ場合には、前提条件であるプレコンディションの条件数(項数)が少ないルールが、次に優先度が高いものとして行われる。そして、その次の選択は、記述順という基準により優先度が決められて行われる(すなわち、より新しく記述されて選択可能になったものが優先される。)。なお、ステップST2の処理が行われることにより、選択されて実行されたルールの評価値が1点加点されるべく、rank+1という処理も実行される。
【0024】
ステップST3において、ルールが選択されて実行されて得られた結果が、新事実であるのか、原因を推定できるのか、又は、処理が失敗であったのかの3つに区別される判断が行われる。
【0025】
新事実でもなく原因推定できずにRule不備で判定不能としてfailと判断された場合には、ステップST4において、Ruleの修正(補完)が行われる。この修正(補完)は後述するRuleの追加処理(ステップST11)に似ており、ユーザによって行われる。具体的には、必要なデータはあるが、判定ルールの閾値外のデータであるようなケースが該当する。この場合には、既存ルールの修正(補完)が可能となるように、その対応画面がユーザに提示されてユーザによる修正が可能になる。修正が行われるとステップST2に戻ることになる。そして、修正されてステップST2に戻るとルールの選択と実行が再度行われるが、ルールの修正(補完)が必要な状況であっても修正(補完)がなされない場合には、図示を省略しているがステップST1の処理に戻る。具体的には、例えば処理の都合上上記のような修正(補完)という人的な介入ができない設定のような場合には、修正されずにそのルールは捨てられて次のルールを適用するように、図示を省略しているがステップST1の適用可能ルール抽出処理という処理に戻って処理が行われる。また、ステップST2に戻る際、直前に適用したルールの評価値は1点減点されるべく、rank−1という処理も実行される。
【0026】
ステップST3においてfailでなければ、ステップST5に進む。ステップST5では、新事実がある場合には事実追加の処理が行われ、原因を推定できそうであればステップST6に進んで判断が行われる。ステップST6の判断処理は、得られた解析結果が推定原因か否かを判断する処理である。ここでの処理は、データ判定又は事象判定等の属性を持ったルールから導出された結果は新事実として追加され、原因判定の属性を持ったルールによる導出結果は推定原因であると判断される。なお、図2において、全体フローにおいて、初期の段階ではデータ判定の属性を持ったルールが多様される傾向にあり、次に事実判定の属性を持ったルール、最後に原因推定の判定を持ったルールが適用される傾向があるが、必ずしもこれらの傾向になるとは限らない。そして、推定原因であればステップST7に進む。ステップST8では、ユーザである技術者によって解析結果の妥当性を評価する処理が行われる。原因推定結果が正解と判断される場合には、成功(Success)としてステップST9に進んで推定原因の導出が成功したものとして推定結果が決まる。この際適用した全てのRuleにはrank+1が行われる。原因推定結果が不正解と判断される場合には、失敗(Fail)としてステップST10に進んで推定原因の導出が失敗したものとしてされる。この際適用した全てのRuleにはrank−1が行われる。
【0027】
ステップST6に戻って、事実の追加とされた場合には、othersとしてステップST1に戻って処理の繰り返しが行われる。そして、図5には、図1の推論エンジンの動作を説明するために、ステップST2からステップST6までの処理の一部が示されている。推論エンジン19には、データベース7から与えられている選択された選択ルール29と、解析対象データ31とが与えられる。ここで、解析対象データ31とは、選択されたルールが判定処理に必要なデータであり、具体的には、例えばテストデータ9の部分集合である場合もあれば、別のルールにより導出された結果(新事実)集合の部分集合である場合もあれば、その双方からなる集合の部分集合の場合もある。推論エンジン19は、選択ルール29を用いて結果33を導き出す。図5では、導き出された結果33について、ステップST6の推定結果35として得られる場合と、ステップST1に戻る処理となる新事実37として得られる場合とが示されている。また、図6には、ステップST1に戻って、適用可能ルール抽出部21が、前提条件25に加えて新事実37も参照して、ルールベース11から適用可能ルール39を抽出する処理が示されている。
【0028】
再度、ステップST6に戻って、原因推定ともされずothersとも判断されなかった場合には、Unknownという判断となり、ステップST11においてルールの追加の処理が行われる。この処理は、図1のユーザ3がユーザインターフェイス5を用いてルールベースに追加することにより行われる。このようなUnknownは、推論エンジン19にとっては手詰まり状態(既存のルールでは最適な解が取得できなかった状態)である。具体的には、推定原因が導出できない状態で、実行可能な選択できるルールが無い状態が挙げられる。この場合には、ユーザという人間が、新規のルールを作成して追加して、ルールベースをより良いものにする必要がある。
【0029】
図7には、ルールベースに蓄積されたルールの一例が示されている。4つのそれぞれのルールに対して、事実(fact)とそれに関係する結果(result)が示されている。図8には、図7のルールによって作成されるF(*)の状態遷移の解析木が示されている。図9には、使用可能なルールの状態遷移の解析木が示されている。これらの解析木は、全てを網羅した状態で示している。図1等に示す本願の発明では、当初から完全に網羅した状態ではなく、使用を通じて図8及び図9に示すような解析木で示されるルールとF(*)が得られていく。
【0030】
図8及び図9について補足説明する。図8では、F(*)の状態が、選択可能ルール及び使用したルールの集合で示されている。これは、便宜上、複数の経路により任意の状態に遷移することから、状態の数を最小限にまとめて示すためである。状態表記中の数字の直後にある*は、その直前に記載されている数字のルールがfailであることを示している。以下、簡単に説明する。まず、Statusが初期状態で、前提条件として事実F(a),F(b)が抽出されている。これに対しては、Rule_1又はRule_2が適用可能な選択ルールとして選択され得る。StatusがS1では、Rule_1が実行(パスT1)されてF(c)が新たに得られている。StatusがS2では、S1についての上記説明を参照することで理解できるため、説明を省略する。なお、この解析木では明確には表されていないが、Statusが初期状態の場合にRule_1とRule_2とのいずれが優先して選択されるかは、上記した優先度で決まる。例えば、Rule_1が優先されて選択された場合には、そのresultとしてfailがあり、そのfailによりRule_2が選択される。StatusがS12でRule_2が適用されてF(d)が得られていることに加えて、StatusがS13でfailとされてF(b)に対してRule_2が適用されるS13*2も示されている。ここで、「S13*2」は、Rule_1を実行し新事実を追加し、次にRule_3 を実行したがFailであり、その後、Rule_2を実行し新事実を得た状態に遷移していることを表現している。また、「T13*2」は、同様に当該状態(S13*2)への遷移パスを示している。また、例えば、Result1は、T13,T2*13,T12*3,T123,T124*3,T213,T214*3,T24*13に対応してS13,S2*13,S12*3,S123,S124*3,S213,S214*3,S24*13で得られている。図9でも、同様である。なお、図9において、T13ではResult1の他にRule_2も得られており、T123,T213ではResult1の他にRule_4も得られている。これは、一部の情報のみで解を導出できる場合(解の導出時に使用可能且つ使用されていないルールがある場合)には、他にも解としての候補があるといえる。一方、T12*3,T2*13,T24*13,T124*3,T214*3では、Result1のみが得られている。この場合には解のみあり、解の候補は単独であるといえる。
【0031】
図10は、図2のステップS11の処理において、ルールを追加する際のユーザ支援のために提示される画面の一例を示した図である。
【0032】
ここでは、手詰まり状態(Unknown)時に、ルールの追加をユーザへ促すことを示す。概念を簡単に説明する。まず、手詰まり状態時、つまり推定原因が導出されないままの状態で、発動可能なルールが無い場合、使用可能ルール抽出部の抽出条件を操作し、前提条件がただ一つのみ不足しているルールを抽出する。そして、追加すべき残りの1つの条件(例えば、プロセスパラメータと測定値の相関関係等)を生成するルール作成の支援が行われる。なお、使用可能一歩手前のルール(前提条件がただ一つのみ不足しているルール:以下、「−1ルール」という。)が複数抽出される場合には、rankを参照して優先順位が決定されればよい。図10では、−1ルール且つ優先順位の高いものが、「テストリミット起因」判定ルールとして示されている。ここで、「テストリミット起因」判定ルールは、例えば、条件がパラメータの範囲として規定されている場合に、範囲ごとのルールを決めるものである。図10では、不足している事象が「当該Waferのプロセスパラメータは通常範囲内」であると判定されている。この判定結果は、ルールに不備などがあり、導出されていない事象としてのものである。図10では、冒頭に、追加すべきルールの内容として「当該Waferのプロセスパラメータは通常範囲内」により「テストリミット起因」が判定可能であることが示されて、ルール作成が促される画面になっている。なお、図中、Caseとあるのは、場合分けで記述可能なことを示している。Item1では、プロセスパラメータが選択されている。St1では、プロセスパラメータの平均が選択されている。Case1の場合にはTrue(成功)、Case2の場合にはFalse(失敗)とされている。なお、このような画面は、図2のステップST4においても使用されてよい。
【0033】
図11は、図2のステップS11の処理においてルールを編集する際のユーザ支援のために提示される画面の一例を示した図である。
【0034】
図11では、取得されているデータ類、判定された事象等が入力となって、ルールの作成(追加)が可能となっている。タイトルとして「ルール:推論」とあり、「Inference」の部分のタブは、ルールの種類の選択を可能としている。「Test Item」「Item1」「Item2」「Item3」の部分では、要素の定義(データ、任意ルールの判定結果等)を選択できるようになっている。その下の「Item1」「Item2」「Item3」では、判定条件の定義の入力が可能になっている。また、タイトルとして「ルールデータ判定(相関係数)」とあり、ここでは、例えば、相関係数の定義の例としてItemと判断閾値の入力が可能になっている。また、タイトルとして「データ定義」とあり、参照場所、計算方法、範囲の入力が可能になっている。
【0035】
以上を簡単にまとめる。図1に示された原因推定装置では、新事実が得られた場合には再度推論を行い、可能な限り、Unknownとされるケースを減らしてSuccessとされるケースを増やすように工夫されている。しかも、評価値によるランク付けを行うことにより、獲得した知識の使用方法を最適化に、ユーザの使用履歴に基づいて学習する仕組みを取り入れている。
【0036】
特に、半導体のテストについては、以下のこともいえる。事例により収集された又は技術者により論理的に生成されたルールは、各ルールに設けられるルール発動の前提条件により、ケースにおいて、適用可能ルールと適用不可能ルールに大別できる。技術者は、経験により可能性の高いと判断した事象から確認し、推定原因を模索する。確認の結果により原因の候補から排除する等し、原因を絞り込む。優れた技術者は効率よく且つ合理的な解析を実施するように、任意の状況下でどのルールを適用するかが効率的な推論結果の導出には重要になる。図1の原因推定装置では、新事実の追加による再度の処理を行いつつ、ルールを個別に使用頻度を基にしたレーティングを行っており、経験からくる直観的なオペレーションの実現が図られている。このようにすることにより、テストの不良解析には有効なものが得られる。すなわち、テストの不良解析では、予め整理してルールベース構築を行うこと自体が容易ではなく、膨大なデータを得る必要があるとともに、それを整理する労力が必要になる。しかし、図1の原因推定装置では、断片的な判断(事実)を知識ルールとして記述してルールベースとした場合にも、まずは新事実の追加による再度の処理を行いつつ、できるだけ推論を成功に導くとともに、ユーザが行うルールの追加を必要性のあるものに限って行わせている。そして、運用して、ルールそのものを適正化し、さらに、ルールに設けられたレーティングを変動させることにより、効率的なルール運用が実現されることになる。したがって、運用すればするほど、ルール運用が効率的で且つ適切なものとなる。そのため、半導体のテスト不良解析における診断に関して、適切な診断結果を得られることになる。
【符号の説明】
【0037】
1・・・原因推定装置、7・・・データベース、9・・・テストデータ、11・・・ルールベース、13・・・推定部、19・・・推論エンジン、21・・・適用可能ルール抽出部、23・・・ルール選択部
【技術分野】
【0001】
本発明は、原因推定装置、原因推定方法、プログラム、及び、記録媒体に関し、特に、例えば半導体のテスト不良解析診断に用いられる原因推定装置等に関する。
【背景技術】
【0002】
特許文献1には、従来の実装工程等における不良要因を推定する装置が開示されている。この推定装置は、特許文献2〜4に開示されている推定装置の問題を解決している。より具体的には、特許文献2〜4記載の技術では、最初に知識データベースが作成される。この知識データベースは、システム開発者が不良に対する要因を推定するための知識を保存することによって、又は、自動学習によって作成される。しかし、この知識データベースを用いると、ユーザ、特に知識データベースを作成したユーザ以外のユーザにとっては、思うとおりの要因が思うとおりの順番で表示されないことがある。そのため、ユーザが知識データベースを改訂しようとしても、適切でない箇所を訂正してしまい、要因推定の性能が向上しないという問題があった。そこで、特許文献1記載の技術は、ユーザが知識データベースの改定を適切に行えるようにするものである。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2009−223550号公報
【特許文献2】特許第3511632号公報
【特許文献3】特開2007−257285号公報
【特許文献4】特開2003−228485号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1記載の技術では、ユーザが知識データベースを改定する作業を積極的に行うものである。そのため、ユーザの能力に依存し、ユーザがその分野のエキスパートであるか否かなどに極めて大きく依存する。一方、特許文献2〜4に記載の技術では上記した問題が残ったままである。
【0005】
また、事実とそれに対応する結果との関係が明確であれば、それを学習機能により学習させていくことで精度が上がることが予想される。しかし、例えば、半導体のテスト不良解析における診断過程では、予め整理してルールベース構築を行うこと自体が容易ではない。すなわち、予め整理したルールベースを構築するためには、膨大なデータを得る必要があるとともに、それを整理する労力が必要になる。これは現実的ではなく、結局、特許文献1記載の技術のように、ユーザが積極的に改定することが一つの解決策として浮上する。しかし、ユーザの能力に依存するにはデータ量が膨大であり、さらに、ユーザの専門性の影響も大きく出てしまうことから、十分な精度で適切な原因推定とはならないことが頻繁に起こってしまう。
【0006】
以上のような問題は、推論された結果を判断する際に、その推論結果が○か或いはそれ以外については×かという二者選択という発想に起因していることから生じていると考えられる。すなわち、○とされない推論結果であって単純に×とされるべきではない推論結果から新たな情報を得ていないことが原因の一つだと考えられる。
【0007】
ゆえに、本発明は、推論結果が○とされない場合にも、ユーザによるルール追加等の処理を行うだけでなく、その推論結果を用いて更なる推論を行って推論結果をより○に導く可能性を上げることが可能な原因推定装置、原因推定方法、プログラム、及び、記録媒体を提供することを目的とする。また、本発明は、単純な学習機能による反復による使用頻度を優先するのではなく、上記○とされない推論結果を用いて更なる推論を行うことと相まって、ルール自体の適正化を進め、使用を進めるにつれて適切なルールベース構築を図り、対象としている例えば半導体の不良の全容を把握して、より適切な不良解析診断を行うための原因推定装置、原因推定方法、プログラム、及び、記録媒体を提供することを目的とする。
【課題を解決するための手段】
【0008】
請求項1に係る発明は、発生した不良に対して、その原因を推定する原因推定装置であって、現象又は条件という事実を表す事実データが記憶されたデータベースと、前記事実を表す事実データと当該事実に対応する結果を表す結果データとの関係がルール付けされてそれぞれの関係についてのルールが記憶されたルールベースと、前記データベースに記憶された事実データの全部又は一部を前提条件に不良の原因を推定する推定手段とを備え、前記推定手段は、前記前提条件のもとで前記ルールベースに記憶されたルールの中から適用可能な適用可能ルールを抽出する適用可能ルール抽出手段と、前記適用可能ルールの中から優先度に従って一つ又は複数の選択ルールを選択するルール選択手段と、前記選択ルールを適用して不良解析の対象である解析対象データを解析して推論する推論エンジンとを有し、前記推論エンジンが前記不良の原因を推定できなかった場合で且つ不明な原因であると判断しなかった場合に、前記適用可能ルール抽出部が、前記推論エンジンが推論した推論結果を新たな事実として追加して再度適用可能なルールを抽出し、さらに、前記ルール選択手段と前記推論エンジンとが再度繰り返し動作して新たな推論結果を得ることを特徴とする。
【0009】
請求項2に係る発明は、請求項1記載の原因推定装置であって、前記データベースに記憶された事実データには、半導体を実際にテストすることにより得られたテストデータが含まれており、前記推定手段は、前記テストデータにも基づいて推定するものであり、前記半導体のテスト不良解析における診断に用いられるものである。
【0010】
請求項3に係る発明は、請求項1又は2記載の原因推定装置であって、前記ルールベースは、前記推論エンジンが不明な原因であると判断した場合に、新たなルールが追加される。
【0011】
請求項4に係る発明は、発生した不良に対して、その原因を推定する原因推定方法であって、データベースには、現象又は条件という事実を表す事実データが記憶されており、ルールベースには、前記事実を表す事実データと当該事実に対応する結果を表す結果データとの関係がルール付けされてそれぞれの関係についてのルールが記憶されており、推定手段が、前記データベースに記憶された事実データの全部又は一部を前提条件に不良の原因を推定する推定ステップを含み、前記推定ステップは、適用可能ルール抽出手段が、前記前提条件のもとで前記ルールベースに記憶されたルールの中から適用可能な適用可能ルールを抽出する抽出ステップと、ルール選択手段が、前記適用可能ルールの中から優先度に従って一つ又は複数の選択ルールを選択する選択ステップと、推論エンジンが、前記選択ルールを適用して不良解析の対象である解析対象データを解析して推論する推論ステップとを含み、前記推論エンジンが前記不良の原因を推定できなかった場合で且つ不明な原因であると判断しなかった場合に、前記適用可能ルール抽出部が、前記推論エンジンが推論した推論結果を新たな事実として追加して再度適用可能なルールを抽出し、さらに、前記ルール選択手段と前記推論エンジンとが再度繰り返し動作して新たな推論結果を得ることを特徴とする。
【0012】
請求項5に係る発明は、請求項4記載の原因推定方法であって、前記データベースに記憶された事実データには、半導体を実際にテストすることにより得られたテストデータが含まれており、前記推定ステップにおいて、前記推定手段が、前記テストデータにも基づいて推定し、前記半導体のテスト不良解析における診断に用いられる。
【0013】
請求項6に係る発明は、請求項4又は5記載の原因推定方法であって、前記優先度はランク付けられた評価値で表され、前記選択ステップで選択された各選択ルールの評価値は加点される。
【0014】
請求項7に係る発明は、請求項4から6のいずれかに記載の原因推定方法をコンピュータに実行させるためのプログラムである。
【0015】
請求項8に係る発明は、請求項7記載のプログラムを記録するコンピュータ読み取り可能な記録媒体である。
【発明の効果】
【0016】
本発明によれば、推論結果が不良の原因であると推定できないと判断した場合で且つ推論結果が不明な原因であるとも判断できない場合には、推論結果から得られる新たな事実を追加して再度適用可能ルール抽出とルール選択と推論エンジンによる推論とを行う。これにより、推論結果が○とされない場合にも、ユーザによるルール追加等の処理を行うだけでなく、その推論結果を用いて更なる推論を行って推論結果をより○に導く可能性を上げることが可能となる。
【0017】
また、本発明によれば、上記効果と相まって、半導体のテスト不良解析における診断のように予め整理したルールベース構築が困難であっても、運用しながらルールの適正化を進め、使用を進めるにつれて適切なルールベース構築を図ることにより、対象としている半導体の不良の全容を把握して、より適切な不良解析診断を行うことが可能になる。
【0018】
さらに、本発明によれば、上記効果に加えて、ルールの優先度を、ルールが推論成功までに用いられる頻度と関係付けることにより、適切なルールが選択されることが増え、効率的なルール運用が行えることになる。したがって、実際の経験に基づく判断と直観的に似てくる不良解析診断へ近づけることができる。
【図面の簡単な説明】
【0019】
【図1】本発明の実施の形態にかかる原因推定装置の概略ブロック図である。
【図2】図1の原因推定装置の動作を説明するフロー図である。
【図3】図1の適用可能ルール抽出部の動作を説明するための図である。
【図4】図1のルール選択部の動作を説明するための図である。
【図5】図1の推論エンジンの動作を説明するための図である。
【図6】図1の適用可能ルール抽出部の動作を説明するための他の図である。
【図7】ルールについて説明するための図である。
【図8】図7のルールによって作成されるF(*)の状態遷移の解析木を示した図である。
【図9】使用可能なルールの状態遷移の解析木を示した図である。
【図10】図2のステップS11の処理において、ルールを追加する際のユーザ支援のために提示される画面の一例を示した図である。
【図11】図2のステップS11の処理においてルールを編集する際のユーザ支援のために提示される画面の一例を示した図である。
【発明を実施するための形態】
【0020】
図1は、本発明の実施の形態にかかる原因推定装置の概略ブロック図である。原因推定装置1は、半導体のテスト不良解析における診断に用いられる不良の原因を推定する原因推定装置である。原因推定装置1は、ユーザ3との間でのインターフェイスとなるユーザインターフェイス(UI)5と、ユーザインターフェイス5を介してユーザが指定するテストデータ9が入力されて事実データが蓄えられるデータベース7とを備える。ここで、テストデータ9は事実を表すデータである。テストデータ9には、テストプログラムについてのデータが含まれ、例えばテストに関する印加条件等のデータが具体例としては挙げられる。また、テストデータ9には、テスターによる測定値も含まれ、対象製品の過去のテストデータ等も含まれる。なお、ここでは、データベース7にはユーザが直接データ入力することを想定しておらず、ユーザは外部のテストデータ9をユーザインターフェイス(UI)5を介してデータベース7に格納する指示のみを行うようにしている。なお、必要があれば、ユーザが直接入力することがなされることを可能にした構成にしてもよい。また、原因推定装置1は、事実(例えば、テスト結果やテストプログラム等のデータや、ユーザによって判断された事象)と推定結果(例えば、データ、現象等から判断される事象および推定原因)の関係についてのルールをデータとして蓄積したルールベース11も備える。ルールベース11に蓄積されたルールは、ユーザ3によりユーザインターフェイス5を介した追加のほか、修正・削除などの編集が行われたものである。さらに、原因推定装置1は、推定部13と、ユーザインターフェイス5に対して入出力・表示制御を行う入出力・表示制御部15とを備える。
【0021】
推定部13は、データベース7に記憶された事実データの中からルール毎に必要な情報を前提条件として抽出して不良の原因を推定するものである。ここで、前提条件はルール毎に異なり、それぞれのルールに記述がなされていることにしている。さらに前提条件について説明すると、ルールを記述する際にそのルールで推論を行うために必要なデータ又は事象の存在がそのルールを発動する前提条件になっていると言える。そのため、データベース7に記憶された事実データは、全て、前提条件として使用され得る可能性がある状況とも言える。推定部13は、ルール制御部17と、推論エンジン19とを備える。ルール制御部17は、適用可能ルール抽出部21と、ルール選択部23とを備える。
【0022】
図2は、図1の原因推定装置1の動作を説明するフロー図である。図3は、図1の適用可能ルール抽出部21の動作を説明するための図である。図4は、図1のルール選択部23の動作を説明するための図である。図5は、図1の推論エンジン19の動作を説明するための図である。図6は、図1の適用可能ルール抽出部21の動作を説明するための他の図である。図7は、ルールについて説明するための図である。図2を参照して、適宜図3から図6を用いて処理動作を説明する。
【0023】
まず、図1のルールベース11には、ルールが蓄積されている。ルールの属性記述形式は、例えば、rule(名称;前提条件;評価値;アクションアイテム・・・)が考えられる。図2に戻って、ステップST1において、適用可能ルールの抽出が行われる。この処理は、図3に示すように、適用可能ルール抽出部21が、入力される前提条件25をもとに、プレコンディション(前提条件と同義であり、各ルールが結論を導き出すために必要な情報(データ又は事象)がルール毎に個別に定義されている。)という形での検索を行って、条件が一致したとき、ルールベース11に蓄えられたルールの中から適用可能ルール27を抽出するものである。ステップST2において、ルールの選択が行われて、そのルールが実行される。この処理では、図4に示すように、ルール選択部23が適用可能ルール27から優先度に従って1つのルールを選択し、選択ルール29を得る。ここで、優先度について説明する。一例として、優先度は以下の順番になっている。ルールには、それぞれ評価値によりランク付けが行われている。最も優先度が高いものは評価値が最上位のものであり、これが最優先で選択される。次の選択は、評価値(rank())が同じ場合には、前提条件であるプレコンディションの条件数(項数)が少ないルールが、次に優先度が高いものとして行われる。そして、その次の選択は、記述順という基準により優先度が決められて行われる(すなわち、より新しく記述されて選択可能になったものが優先される。)。なお、ステップST2の処理が行われることにより、選択されて実行されたルールの評価値が1点加点されるべく、rank+1という処理も実行される。
【0024】
ステップST3において、ルールが選択されて実行されて得られた結果が、新事実であるのか、原因を推定できるのか、又は、処理が失敗であったのかの3つに区別される判断が行われる。
【0025】
新事実でもなく原因推定できずにRule不備で判定不能としてfailと判断された場合には、ステップST4において、Ruleの修正(補完)が行われる。この修正(補完)は後述するRuleの追加処理(ステップST11)に似ており、ユーザによって行われる。具体的には、必要なデータはあるが、判定ルールの閾値外のデータであるようなケースが該当する。この場合には、既存ルールの修正(補完)が可能となるように、その対応画面がユーザに提示されてユーザによる修正が可能になる。修正が行われるとステップST2に戻ることになる。そして、修正されてステップST2に戻るとルールの選択と実行が再度行われるが、ルールの修正(補完)が必要な状況であっても修正(補完)がなされない場合には、図示を省略しているがステップST1の処理に戻る。具体的には、例えば処理の都合上上記のような修正(補完)という人的な介入ができない設定のような場合には、修正されずにそのルールは捨てられて次のルールを適用するように、図示を省略しているがステップST1の適用可能ルール抽出処理という処理に戻って処理が行われる。また、ステップST2に戻る際、直前に適用したルールの評価値は1点減点されるべく、rank−1という処理も実行される。
【0026】
ステップST3においてfailでなければ、ステップST5に進む。ステップST5では、新事実がある場合には事実追加の処理が行われ、原因を推定できそうであればステップST6に進んで判断が行われる。ステップST6の判断処理は、得られた解析結果が推定原因か否かを判断する処理である。ここでの処理は、データ判定又は事象判定等の属性を持ったルールから導出された結果は新事実として追加され、原因判定の属性を持ったルールによる導出結果は推定原因であると判断される。なお、図2において、全体フローにおいて、初期の段階ではデータ判定の属性を持ったルールが多様される傾向にあり、次に事実判定の属性を持ったルール、最後に原因推定の判定を持ったルールが適用される傾向があるが、必ずしもこれらの傾向になるとは限らない。そして、推定原因であればステップST7に進む。ステップST8では、ユーザである技術者によって解析結果の妥当性を評価する処理が行われる。原因推定結果が正解と判断される場合には、成功(Success)としてステップST9に進んで推定原因の導出が成功したものとして推定結果が決まる。この際適用した全てのRuleにはrank+1が行われる。原因推定結果が不正解と判断される場合には、失敗(Fail)としてステップST10に進んで推定原因の導出が失敗したものとしてされる。この際適用した全てのRuleにはrank−1が行われる。
【0027】
ステップST6に戻って、事実の追加とされた場合には、othersとしてステップST1に戻って処理の繰り返しが行われる。そして、図5には、図1の推論エンジンの動作を説明するために、ステップST2からステップST6までの処理の一部が示されている。推論エンジン19には、データベース7から与えられている選択された選択ルール29と、解析対象データ31とが与えられる。ここで、解析対象データ31とは、選択されたルールが判定処理に必要なデータであり、具体的には、例えばテストデータ9の部分集合である場合もあれば、別のルールにより導出された結果(新事実)集合の部分集合である場合もあれば、その双方からなる集合の部分集合の場合もある。推論エンジン19は、選択ルール29を用いて結果33を導き出す。図5では、導き出された結果33について、ステップST6の推定結果35として得られる場合と、ステップST1に戻る処理となる新事実37として得られる場合とが示されている。また、図6には、ステップST1に戻って、適用可能ルール抽出部21が、前提条件25に加えて新事実37も参照して、ルールベース11から適用可能ルール39を抽出する処理が示されている。
【0028】
再度、ステップST6に戻って、原因推定ともされずothersとも判断されなかった場合には、Unknownという判断となり、ステップST11においてルールの追加の処理が行われる。この処理は、図1のユーザ3がユーザインターフェイス5を用いてルールベースに追加することにより行われる。このようなUnknownは、推論エンジン19にとっては手詰まり状態(既存のルールでは最適な解が取得できなかった状態)である。具体的には、推定原因が導出できない状態で、実行可能な選択できるルールが無い状態が挙げられる。この場合には、ユーザという人間が、新規のルールを作成して追加して、ルールベースをより良いものにする必要がある。
【0029】
図7には、ルールベースに蓄積されたルールの一例が示されている。4つのそれぞれのルールに対して、事実(fact)とそれに関係する結果(result)が示されている。図8には、図7のルールによって作成されるF(*)の状態遷移の解析木が示されている。図9には、使用可能なルールの状態遷移の解析木が示されている。これらの解析木は、全てを網羅した状態で示している。図1等に示す本願の発明では、当初から完全に網羅した状態ではなく、使用を通じて図8及び図9に示すような解析木で示されるルールとF(*)が得られていく。
【0030】
図8及び図9について補足説明する。図8では、F(*)の状態が、選択可能ルール及び使用したルールの集合で示されている。これは、便宜上、複数の経路により任意の状態に遷移することから、状態の数を最小限にまとめて示すためである。状態表記中の数字の直後にある*は、その直前に記載されている数字のルールがfailであることを示している。以下、簡単に説明する。まず、Statusが初期状態で、前提条件として事実F(a),F(b)が抽出されている。これに対しては、Rule_1又はRule_2が適用可能な選択ルールとして選択され得る。StatusがS1では、Rule_1が実行(パスT1)されてF(c)が新たに得られている。StatusがS2では、S1についての上記説明を参照することで理解できるため、説明を省略する。なお、この解析木では明確には表されていないが、Statusが初期状態の場合にRule_1とRule_2とのいずれが優先して選択されるかは、上記した優先度で決まる。例えば、Rule_1が優先されて選択された場合には、そのresultとしてfailがあり、そのfailによりRule_2が選択される。StatusがS12でRule_2が適用されてF(d)が得られていることに加えて、StatusがS13でfailとされてF(b)に対してRule_2が適用されるS13*2も示されている。ここで、「S13*2」は、Rule_1を実行し新事実を追加し、次にRule_3 を実行したがFailであり、その後、Rule_2を実行し新事実を得た状態に遷移していることを表現している。また、「T13*2」は、同様に当該状態(S13*2)への遷移パスを示している。また、例えば、Result1は、T13,T2*13,T12*3,T123,T124*3,T213,T214*3,T24*13に対応してS13,S2*13,S12*3,S123,S124*3,S213,S214*3,S24*13で得られている。図9でも、同様である。なお、図9において、T13ではResult1の他にRule_2も得られており、T123,T213ではResult1の他にRule_4も得られている。これは、一部の情報のみで解を導出できる場合(解の導出時に使用可能且つ使用されていないルールがある場合)には、他にも解としての候補があるといえる。一方、T12*3,T2*13,T24*13,T124*3,T214*3では、Result1のみが得られている。この場合には解のみあり、解の候補は単独であるといえる。
【0031】
図10は、図2のステップS11の処理において、ルールを追加する際のユーザ支援のために提示される画面の一例を示した図である。
【0032】
ここでは、手詰まり状態(Unknown)時に、ルールの追加をユーザへ促すことを示す。概念を簡単に説明する。まず、手詰まり状態時、つまり推定原因が導出されないままの状態で、発動可能なルールが無い場合、使用可能ルール抽出部の抽出条件を操作し、前提条件がただ一つのみ不足しているルールを抽出する。そして、追加すべき残りの1つの条件(例えば、プロセスパラメータと測定値の相関関係等)を生成するルール作成の支援が行われる。なお、使用可能一歩手前のルール(前提条件がただ一つのみ不足しているルール:以下、「−1ルール」という。)が複数抽出される場合には、rankを参照して優先順位が決定されればよい。図10では、−1ルール且つ優先順位の高いものが、「テストリミット起因」判定ルールとして示されている。ここで、「テストリミット起因」判定ルールは、例えば、条件がパラメータの範囲として規定されている場合に、範囲ごとのルールを決めるものである。図10では、不足している事象が「当該Waferのプロセスパラメータは通常範囲内」であると判定されている。この判定結果は、ルールに不備などがあり、導出されていない事象としてのものである。図10では、冒頭に、追加すべきルールの内容として「当該Waferのプロセスパラメータは通常範囲内」により「テストリミット起因」が判定可能であることが示されて、ルール作成が促される画面になっている。なお、図中、Caseとあるのは、場合分けで記述可能なことを示している。Item1では、プロセスパラメータが選択されている。St1では、プロセスパラメータの平均が選択されている。Case1の場合にはTrue(成功)、Case2の場合にはFalse(失敗)とされている。なお、このような画面は、図2のステップST4においても使用されてよい。
【0033】
図11は、図2のステップS11の処理においてルールを編集する際のユーザ支援のために提示される画面の一例を示した図である。
【0034】
図11では、取得されているデータ類、判定された事象等が入力となって、ルールの作成(追加)が可能となっている。タイトルとして「ルール:推論」とあり、「Inference」の部分のタブは、ルールの種類の選択を可能としている。「Test Item」「Item1」「Item2」「Item3」の部分では、要素の定義(データ、任意ルールの判定結果等)を選択できるようになっている。その下の「Item1」「Item2」「Item3」では、判定条件の定義の入力が可能になっている。また、タイトルとして「ルールデータ判定(相関係数)」とあり、ここでは、例えば、相関係数の定義の例としてItemと判断閾値の入力が可能になっている。また、タイトルとして「データ定義」とあり、参照場所、計算方法、範囲の入力が可能になっている。
【0035】
以上を簡単にまとめる。図1に示された原因推定装置では、新事実が得られた場合には再度推論を行い、可能な限り、Unknownとされるケースを減らしてSuccessとされるケースを増やすように工夫されている。しかも、評価値によるランク付けを行うことにより、獲得した知識の使用方法を最適化に、ユーザの使用履歴に基づいて学習する仕組みを取り入れている。
【0036】
特に、半導体のテストについては、以下のこともいえる。事例により収集された又は技術者により論理的に生成されたルールは、各ルールに設けられるルール発動の前提条件により、ケースにおいて、適用可能ルールと適用不可能ルールに大別できる。技術者は、経験により可能性の高いと判断した事象から確認し、推定原因を模索する。確認の結果により原因の候補から排除する等し、原因を絞り込む。優れた技術者は効率よく且つ合理的な解析を実施するように、任意の状況下でどのルールを適用するかが効率的な推論結果の導出には重要になる。図1の原因推定装置では、新事実の追加による再度の処理を行いつつ、ルールを個別に使用頻度を基にしたレーティングを行っており、経験からくる直観的なオペレーションの実現が図られている。このようにすることにより、テストの不良解析には有効なものが得られる。すなわち、テストの不良解析では、予め整理してルールベース構築を行うこと自体が容易ではなく、膨大なデータを得る必要があるとともに、それを整理する労力が必要になる。しかし、図1の原因推定装置では、断片的な判断(事実)を知識ルールとして記述してルールベースとした場合にも、まずは新事実の追加による再度の処理を行いつつ、できるだけ推論を成功に導くとともに、ユーザが行うルールの追加を必要性のあるものに限って行わせている。そして、運用して、ルールそのものを適正化し、さらに、ルールに設けられたレーティングを変動させることにより、効率的なルール運用が実現されることになる。したがって、運用すればするほど、ルール運用が効率的で且つ適切なものとなる。そのため、半導体のテスト不良解析における診断に関して、適切な診断結果を得られることになる。
【符号の説明】
【0037】
1・・・原因推定装置、7・・・データベース、9・・・テストデータ、11・・・ルールベース、13・・・推定部、19・・・推論エンジン、21・・・適用可能ルール抽出部、23・・・ルール選択部
【特許請求の範囲】
【請求項1】
発生した不良に対して、その原因を推定する原因推定装置であって、
現象又は条件という事実を表す事実データが記憶されたデータベースと、
前記事実を表す事実データと当該事実に対応する結果を表す結果データとの関係がルール付けされてそれぞれの関係についてのルールが記憶されたルールベースと、
前記データベースに記憶された事実データの全部又は一部を前提条件に不良の原因を推定する推定手段とを備え、
前記推定手段は、
前記前提条件のもとで前記ルールベースに記憶されたルールの中から適用可能な適用可能ルールを抽出する適用可能ルール抽出手段と、
前記適用可能ルールの中から優先度に従って一つ又は複数の選択ルールを選択するルール選択手段と、
前記選択ルールを適用して不良解析の対象である解析対象データを解析して推論する推論エンジンとを有し、
前記推論エンジンが前記不良の原因を推定できなかった場合で且つ不明な原因であると判断しなかった場合に、前記適用可能ルール抽出部が、前記推論エンジンが推論した推論結果を新たな事実として追加して再度適用可能なルールを抽出し、さらに、前記ルール選択手段と前記推論エンジンとが再度繰り返し動作して新たな推論結果を得ることを特徴とする、原因推定装置。
【請求項2】
前記データベースに記憶された事実データには、半導体を実際にテストすることにより得られたテストデータが含まれており、
前記推定手段は、前記テストデータにも基づいて推定するものであり、
前記半導体のテスト不良解析における診断に用いられる請求項1記載の原因推定装置。
【請求項3】
前記ルールベースは、前記推論エンジンが不明な原因であると判断した場合に、新たなルールが追加される、請求項1又は2記載の原因推定装置。
【請求項4】
発生した不良に対して、その原因を推定する原因推定方法であって、
データベースには、現象又は条件という事実を表す事実データが記憶されており、
ルールベースには、前記事実を表す事実データと当該事実に対応する結果を表す結果データとの関係がルール付けされてそれぞれの関係についてのルールが記憶されており、
推定手段が、前記データベースに記憶された事実データの全部又は一部を前提条件に不良の原因を推定する推定ステップを含み、
前記推定ステップは、
適用可能ルール抽出手段が、前記前提条件のもとで前記ルールベースに記憶されたルールの中から適用可能な適用可能ルールを抽出する抽出ステップと、
ルール選択手段が、前記適用可能ルールの中から優先度に従って一つ又は複数の選択ルールを選択する選択ステップと、
推論エンジンが、前記選択ルールを適用して不良解析の対象である解析対象データを解析して推論する推論ステップとを含み、
前記推論エンジンが前記不良の原因を推定できなかった場合で且つ不明な原因であると判断しなかった場合に、前記適用可能ルール抽出部が、前記推論エンジンが推論した推論結果を新たな事実として追加して再度適用可能なルールを抽出し、さらに、前記ルール選択手段と前記推論エンジンとが再度繰り返し動作して新たな推論結果を得ることを特徴とする、原因推定方法。
【請求項5】
前記データベースに記憶された事実データには、半導体を実際にテストすることにより得られたテストデータが含まれており、
前記推定ステップにおいて、前記推定手段が、前記テストデータにも基づいて推定し、
前記半導体のテスト不良解析における診断に用いられる請求項4記載の原因推定方法。
【請求項6】
前記優先度はランク付けられた評価値で表され、
前記選択ステップで選択された各選択ルールの評価値は加点される、
請求項4又は5記載の原因推定方法。
【請求項7】
請求項4から6のいずれかに記載の原因推定方法をコンピュータに実行させるためのプログラム。
【請求項8】
請求項7記載のプログラムを記録するコンピュータ読み取り可能な記録媒体。
【請求項1】
発生した不良に対して、その原因を推定する原因推定装置であって、
現象又は条件という事実を表す事実データが記憶されたデータベースと、
前記事実を表す事実データと当該事実に対応する結果を表す結果データとの関係がルール付けされてそれぞれの関係についてのルールが記憶されたルールベースと、
前記データベースに記憶された事実データの全部又は一部を前提条件に不良の原因を推定する推定手段とを備え、
前記推定手段は、
前記前提条件のもとで前記ルールベースに記憶されたルールの中から適用可能な適用可能ルールを抽出する適用可能ルール抽出手段と、
前記適用可能ルールの中から優先度に従って一つ又は複数の選択ルールを選択するルール選択手段と、
前記選択ルールを適用して不良解析の対象である解析対象データを解析して推論する推論エンジンとを有し、
前記推論エンジンが前記不良の原因を推定できなかった場合で且つ不明な原因であると判断しなかった場合に、前記適用可能ルール抽出部が、前記推論エンジンが推論した推論結果を新たな事実として追加して再度適用可能なルールを抽出し、さらに、前記ルール選択手段と前記推論エンジンとが再度繰り返し動作して新たな推論結果を得ることを特徴とする、原因推定装置。
【請求項2】
前記データベースに記憶された事実データには、半導体を実際にテストすることにより得られたテストデータが含まれており、
前記推定手段は、前記テストデータにも基づいて推定するものであり、
前記半導体のテスト不良解析における診断に用いられる請求項1記載の原因推定装置。
【請求項3】
前記ルールベースは、前記推論エンジンが不明な原因であると判断した場合に、新たなルールが追加される、請求項1又は2記載の原因推定装置。
【請求項4】
発生した不良に対して、その原因を推定する原因推定方法であって、
データベースには、現象又は条件という事実を表す事実データが記憶されており、
ルールベースには、前記事実を表す事実データと当該事実に対応する結果を表す結果データとの関係がルール付けされてそれぞれの関係についてのルールが記憶されており、
推定手段が、前記データベースに記憶された事実データの全部又は一部を前提条件に不良の原因を推定する推定ステップを含み、
前記推定ステップは、
適用可能ルール抽出手段が、前記前提条件のもとで前記ルールベースに記憶されたルールの中から適用可能な適用可能ルールを抽出する抽出ステップと、
ルール選択手段が、前記適用可能ルールの中から優先度に従って一つ又は複数の選択ルールを選択する選択ステップと、
推論エンジンが、前記選択ルールを適用して不良解析の対象である解析対象データを解析して推論する推論ステップとを含み、
前記推論エンジンが前記不良の原因を推定できなかった場合で且つ不明な原因であると判断しなかった場合に、前記適用可能ルール抽出部が、前記推論エンジンが推論した推論結果を新たな事実として追加して再度適用可能なルールを抽出し、さらに、前記ルール選択手段と前記推論エンジンとが再度繰り返し動作して新たな推論結果を得ることを特徴とする、原因推定方法。
【請求項5】
前記データベースに記憶された事実データには、半導体を実際にテストすることにより得られたテストデータが含まれており、
前記推定ステップにおいて、前記推定手段が、前記テストデータにも基づいて推定し、
前記半導体のテスト不良解析における診断に用いられる請求項4記載の原因推定方法。
【請求項6】
前記優先度はランク付けられた評価値で表され、
前記選択ステップで選択された各選択ルールの評価値は加点される、
請求項4又は5記載の原因推定方法。
【請求項7】
請求項4から6のいずれかに記載の原因推定方法をコンピュータに実行させるためのプログラム。
【請求項8】
請求項7記載のプログラムを記録するコンピュータ読み取り可能な記録媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2012−113371(P2012−113371A)
【公開日】平成24年6月14日(2012.6.14)
【国際特許分類】
【出願番号】特願2010−259580(P2010−259580)
【出願日】平成22年11月19日(2010.11.19)
【出願人】(391043332)財団法人福岡県産業・科学技術振興財団 (53)
【Fターム(参考)】
【公開日】平成24年6月14日(2012.6.14)
【国際特許分類】
【出願日】平成22年11月19日(2010.11.19)
【出願人】(391043332)財団法人福岡県産業・科学技術振興財団 (53)
【Fターム(参考)】
[ Back to top ]