JP2006220483A - 自己テスト回路のテスト応答エラー探索方法およびテスト応答エラー検出能力評価方法 - Google Patents

自己テスト回路のテスト応答エラー探索方法およびテスト応答エラー検出能力評価方法 Download PDF

Info

Publication number
JP2006220483A
JP2006220483A JP2005033010A JP2005033010A JP2006220483A JP 2006220483 A JP2006220483 A JP 2006220483A JP 2005033010 A JP2005033010 A JP 2005033010A JP 2005033010 A JP2005033010 A JP 2005033010A JP 2006220483 A JP2006220483 A JP 2006220483A
Authority
JP
Japan
Prior art keywords
test
pattern
test response
error
logical
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2005033010A
Other languages
English (en)
Inventor
Junichi Hirase
潤一 平瀬
Yoshiyuki Atoi
良之 後井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2005033010A priority Critical patent/JP2006220483A/ja
Publication of JP2006220483A publication Critical patent/JP2006220483A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Tests Of Electronic Circuits (AREA)

Abstract

【課題】 テスト応答解析器において見逃されるエラーを求めるにあたり、膨大な計算量を要するシミュレーションを必要とせず、一定の手順により数学的にエラーを探索する方法を提供する。
【解決手段】 テスト応答パターン104において、ビット位置iの論理値が0であれば論理変数diで置換し、ビット位置jの論理値が1であれば論理変数/djで置換する。ここで/は論理反転を意味する。テスト応答解析器における圧縮データパターン107をこれらの論理変数dを用いて表すと、論理変数dが満足すべき条件式が得られる。これを解いて「すべてのdiが0」以外の解を求めると、それぞれの解がテスト応答パターン104中のエラー発生パターンに対応している。
【選択図】 図1

Description

本発明は、半導体集積回路の組込み型自己テスト(BIST;Built In Self Test)回路のテスト応答エラー探索方法およびテスト応答エラー検出能力評価方法に関するものである。
近年、半導体プロセスの微細化の進歩により、半導体集積回路の大規模化、多機能・複合機能化などの技術変化が急激に起こっており、品質向上のためテスト技術がますます重要になっている。テストパターン作成工数の削減やテスト時間短縮のため、スキャンテストなどのテスト容易化設計が広く使用されるようになり、さらなる工数削減を目指して論理回路の組込み型自己テストが研究されている。
一般に、論理回路の組込み型自己テスト回路では、被テスト回路が出力する長大なビット数のテスト応答パターンを全ビットで期待値との比較を行うことが困難なため、線形フィードバックシフトレジスタ(LFSR;Linear Feedback Shift Register)や多入力シグネチャレジスタ(MISR;Multi−Input Signature Register)などの情報圧縮手段により圧縮し、より少ないビット数にて期待値との比較を行う。
一方で、上記の圧縮操作により、テスト応答パターンの複数のビットパターンが1つの圧縮結果に対応するようになる。これは、被テスト回路の故障の影響でテスト応答パターンにエラーが存在するにもかかわらず、圧縮結果が期待値と同一のパターンになり、エラーが見逃される場合があるということを意味する。結果として、被テスト回路に故障を含む不良品を誤って良品と判定するため、製品の品質低下につながる。
そこで、自己テスト回路の設計段階において、上記のようにテスト応答パターン中のエラーがどの程度の確率で見逃されるかを定量的に評価し、製品に要求される品質レベルを満足させる必要がある。
テスト応答パターン中のエラーが圧縮操作の過程で見逃されるかどうかを確認する方法としては、エラーを設定したテスト応答パターンを作成してシミュレーションを実行し、圧縮結果が期待値と一致するかどうかを確認するというものがある。
上記の方法は、通常、故障シミュレータを使用して、被テスト回路に故障を設定した故障シミュレーションとして実行され、故障検出率が算出される。故障シミュレーションは被テスト回路の規模の増大に伴い計算量が膨大となるため、被テスト回路を機能ブロックごと等の小ブロックに分割してシミュレーションを実行するなどの工夫が取られている(例えば、特許文献1参照)。
特許第3151787号公報
しかしながら、前記の従来技術では、被テスト回路の規模の増大とともに計算量も膨大となるため、分割による規模の縮小にも限度がある。また、被テスト回路の故障がテスト応答パターン中にエラーとして現れるかどうかという点と、圧縮操作の過程でテスト応答パターン中のエラーが見逃されるかどうかという点が明確に切り分けられていないため、故障検出率が低い場合に対する原因究明が困難である。
これに対して、情報圧縮手段の部分のみを取り出し、テスト応答パターン中のエラーが圧縮操作の過程で見逃されるかどうかをシミュレーションにより確認する方法が考えられる。しかし、テスト応答パターンが長大なビット数からなる場合、実行すべきシミュレーションの回数が膨大なものとなり、多大な工数を必要とする。
したがって、この発明の目的は、以上のような問題点を解消するためになされたものであり、被テスト回路内の故障の影響によりテスト応答パターンにエラーが存在するにもかかわらず、圧縮操作の結果が期待値と同一のパターンになり、見逃されてしまうエラーを数学的に探索することができ、さらに、上記の探索方法を用いて、圧縮操作の過程で見逃されてしまうエラーの定量的な評価を行うことにより、テスト応答解析器のエラー検出能力の評価を行う自己テスト回路のテスト応答エラー探索方法およびテスト応答エラー検出能力評価方法を提供することである。
上記課題を解決するために本発明の請求項1記載の自己テスト回路のテスト応答エラー探索方法は、テストパターンを発生するテストパターン発生器と、前記テストパターンを入力とし、内部回路動作を経てテスト応答パターンを出力する被テスト回路と、前記テスト応答パターンを入力とし、前記テスト応答パターンの情報をより少ないビット数によって表現し、圧縮データパターンとして出力する情報圧縮手段と、前記圧縮データパターンと予め用意された期待値データパターンを比較した結果を前記被テスト回路の良否判定結果として出力するパターン比較手段からなるテスト応答解析器とを含む自己テスト機能を備えた半導体集積回路において、前記テスト応答パターン中にエラーが存在するときに、前記情報圧縮手段における情報圧縮の過程で前記エラーの影響が消失し、前記圧縮データパターンが前記期待値パターンと同一になることにより、前記テスト応答解析器において見逃される前記エラーの候補を探索する方法であって、前記テスト応答パターンの各ビットデータの論理値に対して、全ての論理値0を、前記テスト応答パターン中のビット位置の属性を持つ論理変数により置換し、全ての論理値1を、前記テスト応答パターン中のビット位置の属性を持つ前記論理変数を用いて、論理値0の場合に対する論理反転の属性を付加して置換する第1の手順と、前記情報圧縮手段の回路動作に応じて前記圧縮データパターンを前記論理変数を用いて表し、前記圧縮データパターンと前記期待値データパターンが一致することに基づき、前記論理変数が満足すべき条件式を得る第2の手順と、前記条件式を解いて前記論理変数が全て0である場合以外の解を求めることにより、前記テスト応答パターン中に含まれる前記エラーを求める第3の手順とを含む。
本発明の請求項2記載のテスト応答エラー検出能力評価方法は、請求項1記載の自己テスト回路のテスト応答エラー探索方法により求められた前記テスト応答解析器が見逃す前記エラーの数と、前記テスト応答パターンの取り得る全状態数を用いて、前記テスト応答解析器が見逃す前記エラーの割合を算出し、前記テスト応答解析器の評価指標とする。
本発明の請求項1記載の自己テスト回路のテスト応答エラー探索方法によれば、テスト応答パターンの各ビットデータの論理値に対して、全ての論理値0を、テスト応答パターン中のビット位置の属性を持つ論理変数により置換し、全ての論理値1を、テスト応答パターン中のビット位置の属性を持つ論理変数を用いて、論理値0の場合に対する論理反転の属性を付加して置換する第1の手順と、情報圧縮手段の回路動作に応じて圧縮データパターンを論理変数を用いて表し、圧縮データパターンと期待値データパターンが一致することに基づき、論理変数が満足すべき条件式を得る第2の手順と、条件式を解いて論理変数が全て0である場合以外の解を求めることにより、テスト応答パターン中に含まれるエラーを求める第3の手順とを含むので、圧縮操作の過程で見逃されるテスト応答パターン中のエラーを数学的に求めることができる。従って、シミュレーションの実行により確認する方法と比較して、情報圧縮手段における情報圧縮の過程で見逃されるテスト応答パターン中のエラーを容易に探索できる。
本発明の請求項2記載のテスト応答エラー検出能力評価方法によれば、請求項1記載の自己テスト回路のテスト応答エラー探索方法により求められたテスト応答解析器が見逃すエラーの数と、テスト応答パターンの取り得る全状態数を用いて、テスト応答解析器が見逃すエラーの割合を算出し、テスト応答解析器の評価指標とするので、容易にテスト応答解析器のエラー検出能力の定量的評価を行うことができる。
以下、本発明の実施の形態を図面を参照しながら説明する。
本発明の第1の実施の形態を図1に基づいて説明する。
図1は、本発明の第1の実施の形態の自己テスト回路のテスト応答におけるエラーの探索方法について示したものである。
テストパターン発生器101はテストパターン102を出力し、被テスト回路103はテストパターン102を入力として内部回路動作を行い、その結果としてテスト応答パターン104を出力する。テスト応答解析器105はテスト応答パターン104を入力として受け取り、これを解析した結果として良否判定結果110を出力する。
テスト応答解析器105内部の動作は次のように行われる。情報圧縮手段106は、内部回路動作により入力されたテスト応答パターン104の情報圧縮を行い、その結果として圧縮データパターン107を出力する。パターン比較手段109は、圧縮データパターン107と予め用意された期待値データパターン108を比較し、両者が一致していれば良否判定結果110として「良品」を出力し、一致していなければ「不良品」を出力する。
ここで問題となるのが、被テスト回路103内の故障の影響によりテスト応答パターン104中にエラーが含まれているにもかかわらず、情報圧縮手段106による情報圧縮の過程でエラーがキャンセルされてしまう場合である。このような場合、圧縮データパターン107の内容は期待値データパターン108の内容と同一になるため、比較器109は良否判定結果110として「良品」を出力する。被テスト回路103に故障を含んだ製品を良品と判定したので、これは誤判定である。
以上のような誤判定を可能な限り少なくするため、情報圧縮手段106においてキャンセルされるようなテスト応答パターン104中のエラー候補の探索を行う。
第1の手順として、論理値0であるべきものが故障の影響等により論理値1となる可能性のあるデータを論理変数d、論理値1であるべきものが論理値0となる可能性のあるデータを論理変数/dと定義する。ここで、“/”は論理反転を表し、/(/d)=dである。
さらに、被テスト回路103に故障がない場合のテスト応答パターン104の内容においてビット位置を表す変数i、jを導入し、各ビットの論理値0、1に対してビット位置の属性を持つ論理変数di、/djで置換する。すなわち、ビット位置iの論理値が0の場合はdiで置換し、ビット位置jの論理値が1の場合は/djで置換する。
第2の手順として、まず、第1の手順で生成した論理変数di、/djで表されたテスト応答パターン104を情報圧縮手段106に入力した場合に得られる圧縮データパターン107を算出する。情報圧縮手段106での内部回路動作を反映させ、論理変数diと論理反転等の論理演算を用いた形式で表す。
そして、論理変数diと論理反転等の論理演算を用いた形式で表された圧縮データパターン107と、期待値データパターン108が一致することから、論理変数diが満足すべき条件式が得られる。
第3の手順として、第2の手順で得られた論理変数diが満足すべき条件式を解き、自明な解「全ての論理変数diが論理値0である場合」以外の解を求める。ここで、上記の自明な解は、「テスト応答パターン104中にエラーが全く無い場合」に対応しており、上記の自明な解以外のものが、「テスト応答パターン104中にエラーがあるにもかかわらず、情報圧縮手段106においてエラーがキャンセルされる場合」に対応する。これは次の理由による。
テスト応答パターン104のビット位置iにおいて「0→di」と置換した場合、di=0はビット位置iにおいてエラーがなく論理値が本来の値である0であることを表し、di=1はビット位置iにおいてエラーがあり論理値が本来の値でない1になったことを表す。また、テスト応答パターン104のビット位置iにおいて「1→/di」と置換した場合、di=0であれば/di=1であるので、ビット位置iにおいてエラーがなく論理値が本来の値である1であることを表し、di=1であれば/di=0であるので、ビット位置iにおいてエラーがあり論理値が本来の値でない0になったことを表す。
本発明の第2の実施の形態を図2および図3に基づいて説明する。
図2は、本発明の第2の実施の形態の自己テスト回路のテスト応答におけるエラーの探索方法について示したものである。
テストパターン発生器201はテストパターン202を出力し、被テスト回路203はテストパターン202を入力として内部回路動作を行い、その結果としてテスト応答パターン204を出力する。テスト応答解析器205はテスト応答パターン204を入力として受け取り、これを解析した結果として良否判定結果210を出力する。
テスト応答解析器205内部の動作は次のように行われる。情報圧縮手段206は、内部回路動作により入力されたテスト応答パターン204の情報圧縮を行い、その結果として圧縮データパターン207を出力する。パターン比較手段209は、圧縮データパターン207と予め用意された期待値データパターン208を比較し、両者が一致していれば良否判定結果210として「良品」を出力し、一致していなければ「不良品」を出力する。
ここで、情報圧縮手段206として、4個のフリップフロップFF0〜3および2個の排他的論理和XOR0、XOR1からなる線形フィードバックシフトレジスタ(LFSR;Linear Feedback Shift Register)を考える。
LFSRでは、入力ビット系列および各フリップフロップの保持データを多項式により表示することができる。入力ビット系列は図2のテスト応答パターン204であり、例として次のデータパターンを考える。
11011101001000101000100010111011 …(1)
ここで、(1)は、左のビットから順にLFSRに入力される。
フリップフロップFF0〜3の初期状態として全て0とし、(1)をLFSRに入力すると、最終状態は次のようになる。
FF3:0、 FF2:1、 FF1:1、 FF0:1 …(2)
(1)、(2)はそれぞれ、多項式を用いて(3)、(4)のように表記することができ、次の関係式が成立する。
D(x)=x31+x30+x28+x27+x26+x24+x21+x17+x15
+x11+x7+x5+x4+x3+x+1 …(3)
R(x)=x2+x+1 …(4)
D(x)=P(x)Q(x)+R(x) …(5)
ここで、D(x)は入力多項式、R(x)は最終状態を表す多項式であり、Q(x)はLFSRの出力ビット系列を表す多項式である。また、P(x)はLFSRの構成によって決まる多項式で特性多項式と呼ばれる。図2のLFSRでは、次のようになる。
P(x)=x4+x+1 …(6)
以上の多項式表示では、乗算、加減算の記号に対して、排他的論理和演算を適用する。図3に、(3)、(5)、(6)から(4)を求める方法についての説明を示す。
以下では、情報圧縮手段206として図2に示すLFSRを使用したテスト応答解析器205において、被テスト回路203に故障がない場合のテスト応答パターン204として(1)が与えられるという条件で、情報圧縮手段206においてキャンセルされるようなテスト応答パターン204中のエラー候補の探索を行う。
第1の手順として、論理値0であるべきものが故障の影響等により論理値1となる可能性のあるデータを論理変数d、論理値1であるべきものが論理値0となる可能性のあるデータを論理変数/dと定義する。ここで、“/”は論理反転を表し、/(/d)=dである。
さらに、被テスト回路203に故障がない場合のテスト応答パターン204の内容においてビット位置の変数i、jを導入し、各ビット位置の論理値0、1に対してビット位置の属性を持つ論理変数d、/dで置換する。データパターン(1)の多項式表示(3)に対して、上記の置換を行うと次のようになる。
D(x)=/d3131+/d3030+d2929+/d2828
+/d2727+/d2626+d2525+/d2424
+d2323+d2222+/d2121+d2020
+d1919+d1818+/d1717+d1616
+/d1515+d1414+d1313+d1212
+/d1111+d1010+d99+d88
+/d77+d66+/d55+/d44
+/d33+d22+/d1x+/d0 …(7)
第2の手順として、(7)で表されるテスト応答パターン204を情報圧縮手段206に入力した場合に得られる圧縮データパターン207を多項式表示にて算出する。図3に示した方法と同様の進め方により、次の式が得られる。
R(x)=d3,6,7,9,11,12,13,14,18,21,22,24,26,27,28,293
+/d2,5,6,8,10,11,12,13,17,20,21,23,25,26,27,28,302
+/d1,4,5,7,9,10,11,12,16,19,20,22,24,25,26,27,30,31
+/d0,4,7,8,10,12,13,14,15,19,22,23,25,27,28,29,30 …(8)
ここで、論理変数dの添え字は、「,」で区切られる各ビット位置の属性を持つ論理変数dについて排他的論理和演算を行ったことを示す。すなわち、
i,j=di^dj=dj^di=dj,i …(9)
(8)で表される圧縮データパターン207と、(2)あるいは(4)で表される期待値データパターン208が一致することから、論理変数dが満足すべき条件式が次のように得られる。
3,6,7,9,11,12,13,14,18,21,22,24,26,27,28,29=0
2,5,6,8,10,11,12,13,17,20,21,23,25,26,27,28,30=0
1,4,5,7,9,10,11,12,16,19,20,22,24,25,26,27,30,31=0
0,4,7,8,10,12,13,14,15,19,22,23,25,27,28,29,30=0 …(10)
第3の手順として、第2の手順で得られた条件式(10)を解き、全ての論理変数dが論理値0である場合以外の解を求める。以下では、2ビットエラーを想定し、その候補を求めるアルゴリズムについて説明する。2ビットエラーは、d0〜d31のうちの2個が1であり、残りが全て0であることと等価であるので、(10)を満足するような2個のdiを選び出す。
(10)の左辺の排他的論理和演算を行う個々の論理変数dを要素とする集合R3、R2、R1、R0を以下のように定義する。
3={d3,d6,d7,d9,d11,d12,d13,d14,d18,d21,
22,d24,d26,d27,d28,d29
2={d2,d5,d6,d8,d10,d11,d12,d13,d17,d20,
21,d23,d25,d26,d27,d28,d30
1={d1,d4,d5,d7,d9,d10,d11,d12,d16,d19,
20,d22,d24,d25,d26,d27,d30,d31
0={d0,d4,d7,d8,d10,d12,d13,d14,d15,d19,
22,d23,d25,d27,d28,d29,d30} …(11)
集合Ri(i=0,1,2,3)の1つだけに2ビットエラーが含まれる場合と、2以上の集合群Riに共通の2ビットエラーが含まれる場合が考えられる。
[1]1つの集合Riだけに2ビットエラーが含まれるとすると、2ビットエラーは1つの集合Ri以外の集合に含まれてはならない。そこで、集合Ri以外の集合の和集合を求め、その要素を集合Riから差し引く。残った要素のうちの任意の2個が2ビットエラー候補となる。
[2]2以上の集合Riに共通の2ビットエラーが含まれるとしたとき、1つの集合Riと集合群Rj(j>i)の中に共通の2ビットエラーが含まれる場合を考える。
まず、集合Riの要素から、[1]で探索された要素を差し引いた集合を求める。この集合の各要素が2ビットエラー候補の一方となりうるため、これをNとする。
次に、集合Rjの中から要素Nを含むものを全て選び出して集合群Rj-Nとし、Rj-NとRiの全ての集合についての積集合を求める。この積集合にN以外の要素があれば、2ビットエラー候補のもう一方となりうるため、そのうちの1つを選びMとする。
N、Mが2ビットエラー候補であることは次の操作で確認できる。すなわち、N、Mの一方のみが、集合群Rjの中の集合群Rj-N以外の集合に含まれていれば2ビットエラー候補ではあり得ない。Nはこれらの集合に含まれることはないため(Nを含む集合として集合群Rj-Nを選び出したので、集合群Rj-N以外の集合にNが含まれることはない)、Mが集合群Rjの中の集合群Rj-N以外の集合に含まれるかどうかを確認すればよい。
以上の操作を、集合R0と集合群R1、…に対して実行した後、集合R1と集合群R2、…に対して適用するにあたり、集合R1の代わりに、集合R1から集合R0の要素を差し引いて得られる集合R1’を使用する。これは、既に検討された要素を除去するためである。さらに、集合R2と集合群R3…に対して適用するにあたり、集合R2の代わりに、集合R2から集合R0およびR1の要素を差し引いて得られる集合R2’を使用する。同様の操作を続けて、全ての2ビットエラー候補が求められる。
具体的には、以下のようにして2ビットエラーの候補が全て求められる。
A)R0だけに2ビットエラーが含まれる場合
0以外、すなわち、R1、R2、R3の和集合R1∪R2∪R3は次のようになる。
1∪R2∪R3={d1,d2,d3,d4,d5,d6,d7,d8,d9,
10,d11,d12,d13,d14,d16,d17,d18,d19,
20,d21,d22,d23,d24,d25,d26,d27,d28,d29,
30,d31} …(12)
0以外にエラーは含まれないので、(12)の要素はエラー候補とはなり得ない。そこで、R0からR1∪R2∪R3を差し引くと次のようになる。
0−(R1∪R2∪R3)={d0,d15} …(13)
(13)より、2ビットエラーは、(d0,d15)の1組となる。
B)R1だけに2ビットエラーが含まれる場合
1以外、すなわち、R0、R2、R3の和集合R0∪R2∪R3は次のようになる。
0∪R2∪R3={d0,d2,d3,d4,d5,d6,d7,d8,d9,
10,d11,d12,d13,d14,d15,d17,d18,d19,
20,d21,d22,d23,d24,d25,d26,d27,d28,d29,
30} …(14)
1以外にエラーは含まれないので、(14)の要素はエラー候補とはなり得ない。そこで、R1からR0∪R2∪R3を差し引くと次のようになる。
1−(R0∪R2∪R3)={d1,d16,d31} …(15)
(15)より、2ビットエラーは、(d1,d16)、(d1,d31)、(d16,d31)の3組となる。
C)R2だけに2ビットエラーが含まれる場合
2以外、すなわち、R0、R1、R3の和集合R0∪R1∪R3は次のようになる。
0∪R1∪R3={d0,d1,d3,d4,d5,d6,d7,d8,d9,
10,d11,d12,d13,d14,d15,d16,d18,d19,
20,d21,d22,d23,d24,d25,d26,d27,d28,d29,
30,d31} …(16)
2以外にエラーは含まれないので、(16)の要素はエラー候補とはなり得ない。そこで、R2からR0∪R1∪R3を差し引くと次のようになる。
2−(R0∪R1∪R3)={d2,d17} …(17)
(17)より、2ビットエラーは(d2,d17)の1組となる。
D)R3だけに2ビットエラーが含まれる場合
3以外、すなわち、R0、R1、R2の和集合R0∪R1∪R2は次のようになる。
0∪R1∪R2={d0,d1,d2,d4,d5,d6,d7,d8,d9,
10,d11,d12,d13,d14,d15,d16,d17,d19,
20,d21,d22,d23,d24,d25,d26,d27,d28,d29,
30,d31} …(18)
3以外にエラーは含まれないので、(18)の要素はエラー候補とはなり得ない。そこで、R3からR0∪R1∪R2を差し引くと次のようになる。
3−(R0∪R1∪R2)={d3,d18} …(19)
(19)より、2ビットエラーは(d3,d18)の1組となる。
E)集合R0と集合群R1、R2、R3の中に2ビットエラーが含まれる場合
集合R0だけにエラーがあるとして求めた(13)を集合R0から差し引くと、次のようになる。
0−(R0−R1∪R2∪R3
={d4,d7,d8,d10,d12,d13,d14,d19,
22,d23,d25,d27,d28,d29,d30} …(20)
以下、(20)の各要素を2ビットエラー候補の一方Nとし、もう一方のエラー候補Mを求め、その妥当性を検証する。
e1)N=d4の場合
集合群R1、R2、R3においてN=d4を含むのは集合R1である。そこで、集合R0とR1の積集合を求めると次のようになる。
0∩R1={d4,d7,d10,d12,d19,d22,d25,d27,d30} …(21)
2ビットエラー候補のもう一方Mとして、(21)のN=d4以外の各要素を考えた場合、集合群R2、R3に含まれないのはM=d19である。従って、(d4,d19)が2ビットエラー候補となる。
e2)N=d7の場合
集合群R1、R2、R3においてN=d7を含むのは集合R1、R3である。そこで、集合R0とR1、R3の積集合を求めると次のようになる。
0∩R1∩R3={d7,d12,d22,d27} …(22)
2ビットエラー候補のもう一方Mとして、(22)のN=d7以外の各要素を考えた場合、集合R2に含まれないのはM=d22である。従って、(d7,d22)が2ビットエラー候補となる。
e3)N=d8の場合
集合群R1、R2、R3においてN=d8を含むのは集合R2である。そこで、集合R0とR2の積集合を求めると次のようになる。
0∩R2={d8,d10,d12,d13,d23,d25,d27,d28,d30} …(23)
2ビットエラー候補のもう一方Mとして、(23)のN=d8以外の各要素を考えた場合、集合R1、R3に含まれないのはM=d23である。従って、(d8,d23)が2ビットエラー候補となる。
e4)N=d10の場合
集合群R1、R2、R3においてN=d10を含むのは集合R1、R2である。そこで、集合R0とR1、R2の積集合を求めると次のようになる。
0∩R1∩R2={d10,d12,d25,d27,d30} …(24)
2ビットエラー候補のもう一方Mとして、(24)のN=d10以外の各要素を考えた場合、集合R3に含まれないのはM=d25,d30である。従って、(d10,d25)、(d10,d30)が2ビットエラー候補となる。さらに、(d25,d30)も2ビットエラー候補となる。
e5)N=d12の場合
集合群R1、R2、R3においてN=d12を含むのは集合R1、R2、R3である。そこで、集合R0とR1、R2、R3の積集合を求めると次のようになる。
0∩R1∩R2∩R3={d12,d27} (25)
2ビットエラー候補のもう一方Mとして、(25)のN=d12以外の各要素を考えた場合、妥当性を検証する対象の集合が存在しない。従って、(d12,d27)は2ビットエラー候補となる。
e6)N=d13の場合
集合群R1、R2、R3においてN=d13を含むのは集合R2、R3である。そこで、集合R0とR2、R3の積集合を求めると次のようになる。
0∩R2∩R3={d12,d13,d27,d28} …(26)
2ビットエラー候補のもう一方Mとして、(26)のN=d13以外の各要素を考えた場合、集合R1に含まれないのはM=d28である。従って、(d13,d28)が2ビットエラー候補となる。
e7)N=d14の場合
集合群R1、R2、R3においてN=d14を含むのは集合R3である。そこで、集合R0とR3の積集合を求めると次のようになる。
0∩R3={d7,d12,d13,d14,d22,d27,d28,d29} …(27)
2ビットエラー候補のもう一方Mとして、(27)のN=d14以外の各要素を考えた場合、集合R1、R2に含まれないのはM=d29である。従って、(d14,d29)が2ビットエラー候補となる。
e8)N=d19,d22,d23,d25,d27,d28,d29,d30の場合
e1)〜e7)において、既に2ビットエラー候補が求められている。
F)集合R1と集合群R2、R3の中に2ビットエラーが含まれる場合
始めに、集合R0との間で既に検討されたエラー候補を除去するため、集合R1から集合R0の要素を差し引いて集合R1’とすると、次のようになる。
1’={d1,d5,d9,d11,d16,d20,d24,d26,d30} …(28)
集合R1だけにエラーがあるとして求めた(15)を集合R1’から差し引くと、次のようになる。
1’−(R1−R0∪R2∪R3
={d5,d9,d11,d20,d24,d26} …(29)
以下、(29)の各要素を2ビットエラー候補の一方Nとし、もう一方のエラー候補Mを求め、その妥当性を検証する。
f1)N=d5の場合
集合群R2、R3においてN=d5を含むのは集合R2である。そこで、集合R1’とR2の積集合を求めると次のようになる。
1’∩R2={d5,d11,d20,d26} …(30)
2ビットエラー候補のもう一方Mとして、(30)のN=d5以外の各要素を考えた場合、集合R3に含まれないのはM=d20である。従って、(d5,d20)が2ビットエラー候補となる。
f2)N=d9の場合
集合群R2、R3においてN=d9を含むのは集合R3である。そこで、集合R1’とR3の積集合を求めると次のようになる。
1’∩R3={d9,d11,d24,d26} …(31)
2ビットエラー候補のもう一方Mとして、(31)のN=d9以外の各要素を考えた場合、集合R2に含まれないのはM=d24である。従って、(d9,d24)が2ビットエラー候補となる。
f3)N=d11の場合
集合群R2、R3においてN=d11を含むのは集合R2、R3である。そこで、集合R1’とR2、R3の積集合を求めると次のようになる。
1’∩R2∩R3={d11,d26} …(32)
2ビットエラー候補のもう一方Mとして、(32)のN=d11以外の各要素を考えた場合、妥当性を検証する対象の集合が存在しない。従って、(d11,d26)は2ビットエラー候補となる。
f4)N=d20,d24,d26の場合
f1)〜f3)において、既に2ビットエラー候補が求められている。
G)集合R2と集合R3の中に2ビットエラーが含まれる場合
始めに、集合R0、R1との間で既に検討されたエラー候補を除去するため、集合R2から集合R0、R1の要素を差し引いて集合R2’とすると、次のようになる。
2’={d2,d6,d17,d21} …(33)
集合R2だけにエラーがあるとして求めた(17)を集合R2’から差し引くと、次のようになる。
2’−(R2−R0∪R1∪R3)={d6,d21} …(34)
以下、(34)の各要素を2ビットエラー候補の一方Nとし、もう一方のエラー候補Mを求め、その妥当性を検証する。
g1)N=d6の場合
集合R3はN=d6を含む。そこで、集合R2’とR3の積集合を求めると次のようになる。
2’∩R3={d6,d21} …(35)
2ビットエラー候補のもう一方Mとして、(35)のN=d6以外の各要素を考えた場合、妥当性を検証する対象の集合が存在しない。従って、(d6,d21)は2ビットエラー候補となる。
g2)N=d21の場合
g1)において、既に2ビットエラー候補が求められている。
以上をまとめると、2ビットエラー候補は次の19通りである。
0のみ:(d0,d15
1のみ:(d1,d16)、(d1,d31)、(d16,d31
2のみ:(d2,d17
3のみ:(d3,d18
0、および、R1、R2、R3から選択:
(d4,d19)、(d7,d22)、(d8,d23)、(d10,d25)、
(d10,d30)、(d25,d30)、(d12,d27)、(d13,d28)、
(d14,d29
1、および、R2、R3から選択:
(d5,d20)、(d9,d24)、(d11,d26
2、および、R3から選択:
(d6,d21
本発明の第3の実施の形態を図4に基づいて説明する。
図4は、本発明の第3の実施の形態の自己テスト回路のテスト応答におけるエラーの探索方法について示したものである。
テストパターン発生器301はテストパターン302を出力し、被テスト回路303はテストパターン302を入力として内部回路動作を行い、その結果としてテスト応答パターン304a〜304dを出力する。テスト応答解析器305はテスト応答パターン304a〜304dを入力として受け取り、これを解析した結果として良否判定結果310を出力する。
テスト応答解析器305内部の動作は次のように行われる。情報圧縮手段306は、内部回路動作により入力されたテスト応答パターン304a〜304dの情報圧縮を行い、その結果として圧縮データパターン307を出力する。パターン比較手段309は、圧縮データパターン307と予め用意された期待値データパターン308を比較し、両者が一致していれば良否判定結果310として「良品」を出力し、一致していなければ「不良品」を出力する。
ここで、情報圧縮手段305として、図4に示す4個のフリップフロップFF0〜3および4個の排他的論理和XOR0〜XOR3からなる他入力シグネチャレジスタ(MISR;Multi−Input Signature Register)を考える。
入力ビット系列は図4のテスト応答パターン304a〜304dであり、例として次のデータパターンを考える。
304a:11011101
304b:00100010
304c:10001000
304d:10111011 …(36)
ここで、(36)は、左のビットから順にMISRに入力される。
フリップフロップFF0〜3の初期状態として全て0とし、(36)をMISRに入力すると、最終状態は次のようになる。
FF0:0、 FF1:0、 FF2:0、 FF3:0 …(37)
以下では、情報圧縮手段306として図4に示すMISRを使用したテスト応答解析器305において、被テスト回路303に故障がない場合のテスト応答パターン304a〜304dとして(36)が与えられるという条件で、情報圧縮手段306においてキャンセルされるようなテスト応答パターン304a〜304d中のエラー候補の探索を行う。
第1の手順として、論理値0であるべきものが故障の影響等により論理値1となる可能性のあるデータを論理変数d、論理値1であるべきものが論理値0となる可能性のあるデータを論理変数/dと定義する。ここで、“/”は論理反転を表し、/(/d)=dである。
さらに、被テスト回路303に故障がない場合のテスト応答パターン304a〜304dの内容においてビット位置の変数i、jを導入し、各ビット位置の論理値0、1に対してビット位置の属性を持つ論理変数d、/dで置換する。データパターン(36)に対して、上記の置換を行うと次のようになる。
304a:/d07,/d06,d05,/d04,/d03,/d02,d01,/d00
304b:d17,d16,/d15,d14,d13,d12,/d11,d10
304c:/d27,d26,d25,d24,/d23,d22,d21,d20
304d:/d37,d36,/d35,/d34,/d33,d32,/d31,/d30 …(38)
第2の手順として、(38)で表されるテスト応答パターン304a〜304dを情報圧縮手段306に入力した場合に得られる圧縮データパターン307を算出する次のようになる。
FF0:d00,04,13,17,22,26,31,35
FF1:d01,05,10,14,23,27,32,36
FF2:d02,06,11,15,20,24,33,37
FF3:d03,07,12,16,21,25,30,34 …(39)
(39)で表される圧縮データパターン307と、(37)で表される期待値データパターン308が一致することから、論理変数dが満足すべき条件式が次のように得られる。
00,04,13,17,22,26,31,35=0
01,05,10,14,23,27,32,36=0
02,06,11,15,20,24,33,37=0
03,07,12,16,21,25,30,34=0 …(40)
第3の手順として、第2の手順で得られた条件式(40)を解き、全ての論理変数dが論理値0である場合以外の解を求める。以下では、2ビットエラーを想定し、その候補を求めるアルゴリズムについて説明する。2ビットエラーは、d00〜d07、d10〜d17、d20〜d27、d30〜d37のうちの2つが1であり、残りが全て0であることと等価であるので、(40)を満足するような2つのdiを選び出す。
(40)を解くにあたり、第2の実施の形態と同様の手法を用いることもできるが、図4のMISRの場合はより簡単に解くことができる。すなわち、(40)の4つの式において、論理変数dの同じ添え字が2つ以上の式に現れないことに着目すると、1つの式の中で2つのdiを選び出せば2ビットエラーの候補となる。
例えば、FF0に関する式において、(d00,d04)は2ビットエラーの候補である。また、FF3に関する式において、(d30,d34)も同様である。従って、2ビットエラーの候補は、82×4=112通りになることが分かる。
本発明の第4の実施の形態について説明する。
本発明の第4の実施の形態の自己テスト回路のテスト応答解析器のエラー検出能力評価方法として、第2の実施の形態において使用した自己テスト回路、および、テストパターンを用いて説明する。
第2の実施の形態で説明した通り、テスト応答解析器205が見逃す2ビットエラーは19通り存在する。一方、32ビット長のテスト応答パターン(1)において、2ビットエラーは322=496通り存在する。
従って、テスト応答解析器205が見逃す2ビットエラーの割合は次のようになる。
19/496=3.83%
LFSRのフィードバックループの位置を変えるなど、回路を変更した場合に上記の数値を用いて、テスト応答解析器のエラー検出能力を評価することができる。
本発明の第5の実施の形態について説明する。
本発明の第5の実施の形態の自己テスト回路のテスト応答解析器のエラー検出能力評価方法として、第3の実施の形態において使用した自己テスト回路、および、テストパターンを用いて説明する。
第3の実施の形態で説明したとおり、テスト応答解析器305が見逃す2ビットエラーは112通り存在する。一方、8ビット長×4系統のテスト応答パターン(36)において、2ビットエラーは322=496通り存在する。
従って、テスト応答解析器305が見逃す2ビットエラーの割合は次のようになる。
112/496=22.58%
MISRのフィードバックループの追加、変更等に応じて、上記の数値を用いてテスト応答解析器のエラー検出能力を評価することができる。
本発明にかかる自己テスト回路のテスト応答エラー探索方法によれば、自己テスト回路において被テスト回路内の故障の影響によりテスト応答パターン中にエラーが存在するにもかかわらず、圧縮操作の結果が期待値と同一のパターンとなり、見逃されてしまうエラーについて、容易にその候補を探索することができる。
さらに、本発明にかかる自己テスト回路のテスト応答エラー検出能力評価方法によれば、自己テスト回路のテスト応答エラー探索方法を適用した結果を用いて、テスト応答解析器のエラー検出能力の定量的な評価を容易に実行することができる。
そのため、本発明を自己テスト回路の設計段階に適用することにより、テスト応答解析器のエラー検出能力の向上に有用であり、自己テスト回路を含む半導体集積回路等、製品の品質向上が期待される。
本発明の第1の実施の形態における自己テスト回路のテスト応答エラー探索方法に関する説明図である。 本発明の第2の実施の形態における自己テスト回路のテスト応答エラー探索方法に関する説明図である。 LFSRの多項式表示によるレジスタ最終状態の計算方法を示す図である。 本発明の第3の実施の形態における自己テスト回路のテスト応答エラー探索方法に関する説明図である。
符号の説明
101,201,301 パターン発生器
102,202,302 テストパターン
103,203,303 被テスト回路
104,204,304 テスト応答パターン
105,205,305 テスト応答解析器
106,206,306 情報圧縮手段
107,207,307 圧縮データパターン
108,208,308 期待値データパターン
109,209,309 パターン比較手段
110,210,310 良否判定結果
111,211,311 第1の手順
112,212,312 第2の手順
113,213,313 第3の手順

Claims (2)

  1. テストパターンを発生するテストパターン発生器と、
    前記テストパターンを入力とし、内部回路動作を経てテスト応答パターンを出力する被テスト回路と、
    前記テスト応答パターンを入力とし、前記テスト応答パターンの情報をより少ないビット数によって表現し、圧縮データパターンとして出力する情報圧縮手段と、前記圧縮データパターンと予め用意された期待値データパターンを比較した結果を前記被テスト回路の良否判定結果として出力するパターン比較手段からなるテスト応答解析器とを含む自己テスト機能を備えた半導体集積回路において、
    前記テスト応答パターン中にエラーが存在するときに、前記情報圧縮手段における情報圧縮の過程で前記エラーの影響が消失し、前記圧縮データパターンが前記期待値パターンと同一になることにより、前記テスト応答解析器において見逃される前記エラーの候補を探索する方法であって、
    前記テスト応答パターンの各ビットデータの論理値に対して、
    全ての論理値0を、前記テスト応答パターン中のビット位置の属性を持つ論理変数により置換し、
    全ての論理値1を、前記テスト応答パターン中のビット位置の属性を持つ前記論理変数を用いて、論理値0の場合に対する論理反転の属性を付加して置換する第1の手順と、
    前記情報圧縮手段の回路動作に応じて前記圧縮データパターンを前記論理変数を用いて表し、
    前記圧縮データパターンと前記期待値データパターンが一致することに基づき、前記論理変数が満足すべき条件式を得る第2の手順と、
    前記条件式を解いて前記論理変数が全て0である場合以外の解を求めることにより、前記テスト応答パターン中に含まれる前記エラーを求める第3の手順とを含む自己テスト回路のテスト応答エラー探索方法。
  2. 請求項1記載の自己テスト回路のテスト応答エラー探索方法により求められた前記テスト応答解析器が見逃す前記エラーの数と、
    前記テスト応答パターンの取り得る全状態数を用いて、
    前記テスト応答解析器が見逃す前記エラーの割合を算出し、前記テスト応答解析器の評価指標とすることを特徴とする自己テスト回路のテスト応答エラー検出能力評価方法。
JP2005033010A 2005-02-09 2005-02-09 自己テスト回路のテスト応答エラー探索方法およびテスト応答エラー検出能力評価方法 Pending JP2006220483A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005033010A JP2006220483A (ja) 2005-02-09 2005-02-09 自己テスト回路のテスト応答エラー探索方法およびテスト応答エラー検出能力評価方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005033010A JP2006220483A (ja) 2005-02-09 2005-02-09 自己テスト回路のテスト応答エラー探索方法およびテスト応答エラー検出能力評価方法

Publications (1)

Publication Number Publication Date
JP2006220483A true JP2006220483A (ja) 2006-08-24

Family

ID=36982912

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005033010A Pending JP2006220483A (ja) 2005-02-09 2005-02-09 自己テスト回路のテスト応答エラー探索方法およびテスト応答エラー検出能力評価方法

Country Status (1)

Country Link
JP (1) JP2006220483A (ja)

Similar Documents

Publication Publication Date Title
US8966355B2 (en) Apparatus and method for comparing pairs of binary words
JP2008089549A (ja) 論理回路における多重故障の故障箇所推定システム、故障箇所推定方法および故障箇所推定用プログラム
JP4636989B2 (ja) 遅延解析装置、遅延解析方法、遅延解析プログラム、および記録媒体
US10267857B2 (en) Method and system for functional safety verification
Prabhu et al. A SMT-based diagnostic test generation method for combinational circuits
US6311311B1 (en) Multiple input shift register (MISR) signatures used on architected registers to detect interim functional errors on instruction stream test
US9404972B2 (en) Diagnosis and debug with truncated simulation
US11193974B2 (en) Failure diagnostic apparatus and failure diagnostic method
US8671317B2 (en) Built-in self test circuit and designing apparatus
JP2012198065A (ja) 半導体集積回路、試験方法、情報処理装置、及びプログラム
JP2006220483A (ja) 自己テスト回路のテスト応答エラー探索方法およびテスト応答エラー検出能力評価方法
US10203370B2 (en) Scheme for masking output of scan chains in test circuit
US20220261986A1 (en) Diagnosis pattern generation method and computer
Le et al. Non-solution implications using reverse domination in a modern SAT-based debugging environment
US7516376B2 (en) Test pattern generator, test circuit tester, test pattern generating method, test circuit testing method, and computer product
Malburg et al. A simulation-based approach for automated feature localization
Malburg et al. Debugging hardware designs using dynamic dependency graphs
Raiola et al. Minimal witnesses for security weaknesses in reconfigurable scan networks
JP2005221457A (ja) 論理回路の故障解析方法
JP4899927B2 (ja) テストパターン自動生成方法およびテストパターン自動生成プログラム
Liang et al. Randomization for testing systems of systems
JP2007102877A (ja) 半導体記憶装置、およびメモリテスト回路
Ye et al. Information-theoretic syndrome evaluation, statistical root-cause analysis, and correlation-based feature selection for guiding board-level fault diagnosis
JP2008197851A (ja) プログラム論理の検証方法、プログラム論理の検証プログラム
Gharaybeh et al. A parallel-vector concurrent-fault simulator and generation of single-input-change tests for path-delay faults

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060922