JP2004302894A - 集積回路のテスト容易化設計 - Google Patents
集積回路のテスト容易化設計 Download PDFInfo
- Publication number
- JP2004302894A JP2004302894A JP2003095388A JP2003095388A JP2004302894A JP 2004302894 A JP2004302894 A JP 2004302894A JP 2003095388 A JP2003095388 A JP 2003095388A JP 2003095388 A JP2003095388 A JP 2003095388A JP 2004302894 A JP2004302894 A JP 2004302894A
- Authority
- JP
- Japan
- Prior art keywords
- test
- state
- state transition
- controller
- test sequence
- 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
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 330
- 238000013461 design Methods 0.000 title claims description 9
- 230000007704 transition Effects 0.000 claims abstract description 142
- 238000000034 method Methods 0.000 claims description 38
- 238000013507 mapping Methods 0.000 claims description 22
- 238000001514 detection method Methods 0.000 claims description 7
- 238000000605 extraction Methods 0.000 abstract description 36
- 238000010586 diagram Methods 0.000 description 37
- 238000012545 processing Methods 0.000 description 17
- 229920000333 poly(propyleneimine) Polymers 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 5
- 238000007796 conventional method Methods 0.000 description 3
- 101100481793 Arabidopsis thaliana TOC33 gene Proteins 0.000 description 2
- 101150031304 ppi1 gene Proteins 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 101100137363 Arabidopsis thaliana PPI2 gene Proteins 0.000 description 1
- 101100536527 Arabidopsis thaliana TOC159 gene Proteins 0.000 description 1
- 101100481794 Arabidopsis thaliana TOC34 gene Proteins 0.000 description 1
- 101001010513 Homo sapiens Leukocyte elastase inhibitor Proteins 0.000 description 1
- 101000694017 Homo sapiens Sodium channel protein type 5 subunit alpha Proteins 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011990 functional testing Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Landscapes
- Tests Of Electronic Circuits (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
【課題】実動作速度機能テストにおけるテスト品質の高いテスト系列をコンパクトに生成する。
【解決手段】論理合成したコントローラから組み合わせ回路を抽出し(step1)、それに対するテストパターンを生成する(step2)。テストパターンに対してX抽出を行ない(step3)、各テストパターンをFSMの状態遷移にマッピングする(step4)。状態遷移にマッピングされた有効テストパターンが生成されたテスト系列にすべて被覆されるまで(step5)、所定の基準に従ってテストパターンを被覆する所定長の状態遷移系列を決定してテスト系列に追加し(step7)X抽出する操作(step)を繰り返す。最後に、残ったテストパターンを実現する状態遷移をテスト系列に追加する(step8)。
【選択図】 図6
【解決手段】論理合成したコントローラから組み合わせ回路を抽出し(step1)、それに対するテストパターンを生成する(step2)。テストパターンに対してX抽出を行ない(step3)、各テストパターンをFSMの状態遷移にマッピングする(step4)。状態遷移にマッピングされた有効テストパターンが生成されたテスト系列にすべて被覆されるまで(step5)、所定の基準に従ってテストパターンを被覆する所定長の状態遷移系列を決定してテスト系列に追加し(step7)X抽出する操作(step)を繰り返す。最後に、残ったテストパターンを実現する状態遷移をテスト系列に追加する(step8)。
【選択図】 図6
Description
【0001】
【発明の属する技術分野】
本発明は、RTL回路の段階においてRTL回路に含まれるコントローラをテスト容易化する集積回路の非スキャンテスト容易化設計に関する。
【0002】
半導体回路または半導体回路を構成するコアの設計工程において、ゲートレベル回路に変換する前の段階においては、RTL回路はデータを処理するデータパスとデータパスの動作を制御するコントローラとから構成される。本明細書では、このコントローラの非スキャンテスト容易化設計に言及する。
【0003】
【従来の技術】
下記非特許文献1および特許文献1には、RTL回路に含まれるコントローラの非スキャンテスト容易化に適用可能なテスト容易化設計の手法が開示されている。
【0004】
コントローラは、レジスタ転送レベルでは図1に示されるように有限状態機械(FSM:Finite State Machine)として記述される。FSMの各状態si に状態レジスタの実際の値をそれぞれ割り当てて論理合成を行なって、図2に示すような、状態レジスタSRと組み合わせ論理回路CCとからなる順序回路を得る。上記論文に開示された手法においては、まず、図3に示すように、状態レジスタSRを状態レジスタSRの出力である現状態PSに相当する疑似外部入力PPIと状態レジスタSRの入力である次状態NSに相当する疑似外部出力PPOで置き換えて組み合わせテスト生成モデルを生成し、組み合わせ回路CCに周知の組み合わせテスト生成アルゴリズムを適用してテスト生成を行なってテストパターンの集合を得る。
【0005】
生成された各テストパターンを構成する外部入力PIと疑似外部入力PPIのうち、外部入力PIは集積回路の外部から与え、疑似外部入力PPIは内部的に生成する。各テストパターンに含まれるPPIのうち図1の状態s0 〜s6 (有効状態と呼ばれる)のいずれかに相当するものはコントローラ本来の機能によりリセット状態S0 から順次状態遷移させてそれぞれの状態に到達させることにより実現可能であり、これらは有効テスト状態と呼ばれる。一方、これらs0 〜s6 とは異なる状態(無効状態と呼ばれる)のうち、生成されたテストパターンに含まれる疑似外部入力PPIに相当する状態is1 〜is5 (無効テスト状態と呼ばれる)が存在すればそれらはコントローラ本来の機能で実現できないので、テスト容易化のために回路を付加して実現しなければならない。
【0006】
そこで、図4に示すように、状態遷移モード切換信号tが1のときにリセット状態s0 からすべての無効テスト状態is1 〜is5 を通る経路が追加され、図5に示すように、この遷移を実現するための無効テスト状態生成論理ISGとマルチプレクサMUXが追加される。テストパターン集合の中には、PIの値が異なっていてもPPIの値が同じであるものが通常含まれているので、これらを効率良く実現するため、レジスタSRにはホールド信号Hが追加される。PPIの値が同じテストパターンを印加するときは、ホールド信号HによりレジスタSRをホールドする間に異なるPIの値が印加される。そして、すべての有効テスト状態を通る最短の状態遷移系列を求め、t=0としてこれを順次印加して状態遷移させ、必要に応じてホールドすることにより有効テスト状態に属するすべてのテストパターンを印加し、さらにt=1として図4の経路に沿って遷移させ必要に応じてホールドすることにより無効テスト状態に属するすべてのテストパターンを印加する。テストパターンの印加と同時に、テスト用にt_outとして引き出されたMUXの出力を用いて疑似外部出力PPOへ伝播してきた出力を観測することで故障の観測が行なわれる。
【0007】
【特許文献1】
特許第3243207号
【非特許文献1】
大竹哲史他「完全故障検出効率を保証するコントローラの非スキャンテスト容易化設計法」、電子情報通信学会論文誌D−1 Vol.J81−D−I, N O.12, pp.1259−1270、1998年12月
【非特許文献2】
S. Kajihara and K. Miyase,“On Identifying Don’t Care Inputs o f Test Patterns for Combinational Circuits,”Proc. of Int’l Co nf. of CAD, pp.364−369, 2001
【非特許文献3】
K. Miyase et al.,“Don’t−Care Identification on Specific Bits of Test Patterns”, ICCD, 2002
【非特許文献4】
K. Yamaguchi et al.,“Hierarchical BIST: Test−Per−Clock BIST w ith Low Overhead”, Proceedings of 3rd Workshop on RTL and Hig h Level Testing, pp.42−47
【非特許文献5】
T. Hosokawa, et al.,“A State Reduction Method for Non−scan Ba sed FSM Testing with Don’t Care Inputs Identification Techniqu e”, Proceedings of the Eleventh Asian Test Symposium, pp.55−6 0
【0008】
【発明が解決しようとする課題】
コントローラの組み合わせ論理部CCにテストパターンを実動作速度で与えるだけでなく、同時に、状態から状態への状態遷移を実動作速度で動作させることができれば実動作速度における機能テストの品質が向上する。
【0009】
上記論文に記載された手法においては、各テストパターンをコントローラの「状態」にマッピングし、コントローラ本来の機能を利用してテストパターンを生成している。したがって、異なる状態にマッピングされたテストパターンへ移る際には状態遷移を動作させることになる。しかしながら、テスト長をできるだけ短かくするため、同一の状態にマッピングされたテストパターンの生成にあたっては状態レジスタSRをホールドしてテストパターンを生成しているので、全体として状態遷移を動作させる割合が低いという問題がある。
【0010】
したがって本発明の目的は、コントローラの組み合わせ論理部を完全故障検出効率でテストすることが可能で、コントローラの状態遷移を被覆する割合が高く、かつ、可能な限りコンパクトなテスト系列を与えるテスト容易化設計方法を提供することにある。
【0011】
【課題を解決するための手段】
本発明によれば、RTL回路の段階においてコントローラをテスト容易化することによる集積回路のテスト容易化設計方法であって、コントローラを、コントローラの現在の状態を表わす疑似外部入力とコントローラ外部からの外部入力とを入力としてコントローラの次の状態を表わす疑似外部出力とコントローラ外部への外部出力とを出力する組み合わせ回路で表し、組み合わせ回路と組み合わせ回路が出力する現在の状態を保持して組み合わせ回路へ供給するレジスタによって到達可能なコントローラの状態を有効状態、到達不可能な状態を無効状態とするとき、(a)組み合わせ回路をテストするための複数のテストパターンの集合であって各テストパターンが疑似外部入力と外部入力とからなるものを生成し、(b)複数のテストパターンのうち、コントローラの1つの有効状態から他の有効状態への状態遷移に対応するものを、対応する状態遷移にマッピングし、(c)状態遷移にマッピングされたすべてのテストパターンを被覆するテスト系列を決定し、(d)ステップ(c)の後、状態遷移にマッピングされていないテストパターンがあれば、それを実現する状態遷移をテスト系列に追加し、(e)ステップ(d)の後、テスト系列に基いてテスト容易化済みコントローラを生成するステップを具備する集積回路のテスト容易化方法が提供される。
【0012】
ステップ(c)は、(i)nを所定の自然数として、コントローラの初期状態から始まり、状態遷移にマッピングされたテストパターンを被覆する長さnの経路をテスト系列として決定し、(ii)決定されたテスト系列に続き、状態遷移にマッピングされたテストパターンを被覆する長さnの経路を決定してテスト系列に追加し、(iii )状態遷移にマッピングされたすべてのテストパターンがテスト系列に被覆されるまで、サブステップ(ii)を繰り返すサブステップを含むことが好ましい。
【0013】
前述の方法は、ステップ(a)の後、ステップ(b)の前において、テストパターンの集合を構成する複数のビットの中で、いずれの値をとっても故障検出効率に変化のないものをドントケアビットとして特定するステップをさらに具備し、ステップ(c)は、(iv)ステップ(ii)の後、ステップ(iii )の前において、テスト系列に被覆されているテストパターンをドントケアビット特定の対象から除外した上で、テストパターンの集合に対してドントケアビットを特定するサブステップをさらに含むことがさらに好ましい。
【0014】
本発明によれば上記手法により生成されたテスト容易化済みコントローラを具備する集積回路もまた提供される。
【0015】
【発明の実施の形態】
図6は本発明で提案する品質の高い実動作速度機能テストを行うための、テスト生成方法のフローチャートである。テスト容易化回路は図7に示したようになる。図5と比較すると、レジスタSRにホールド信号が供給されないのが注目される。
【0016】
図6において、Step1はFSMを論理合成し、その組合せ回路部を抽出するステップである。抽出した組合せ回路を組合せテスト生成モデルとする。Step2は組合せテスト生成モデルに対して、単一縮退故障を仮定してテスト生成を行うステップである。Step3は生成したテストパターンに対して、前記非特許文献2および3に記載された手法により、ドントケア(X)抽出を行うステップである。Step4はFSMの状態遷移に対応するテストパターンをマッピングし、有向グラフで構成されるFSMテスト生成グラフを生成するステップである。以下、状態遷移にマッピングされたテストパターンを有効テストパターンと呼ぶ。Step5は、生成したFSMのテスト系列による状態遷移がすべての有効テストパターンを被覆しているか否かを判断するステップである。すべての有効テストパターンを被覆している場合、Step8へ進み、それ以外の場合はStep6へ進む。Step6は深さn(自然数)の状態遷移を探索し、有効テストパターンを最も多く被覆する状態遷移経路を選択する処理である。すなわち長さnのテスト系列を生成する。経路選択後、状態遷移にマッピングされている被覆された有効テストパターンを削除し、FSMテスト生成グラフを更新する。Step7はテスト系列に被覆されたテストパターンはX抽出の対象としない条件付X抽出を行うステップである。X抽出後、再度有効テストパターンをFSMの状態遷移にマッピングし直し、FSMテスト生成グラフを更新する。Step8は、生成したテスト系列がすべての有効テストパターンを被覆した後で、最終的にFSMの状態遷移にマッピングできなかったテストパターンを無効テストパターンとし、その無効テスト状態をFSMの状態遷移に追加し、図7に示したテスト機能をFSMに挿入するステップである。
【0017】
図8は本発明の実施例を説明するために用いる2入力6状態のFSMである。図8において、頂点S0〜S5は有効状態(特にS0はリセット状態)であり、FSMの入力が状態遷移の辺上に示した値であれば、次のクロックで状態遷移先に遷移することを示す。S0〜S5の下に示した符号はエンコードされた状態値を示す。
【0018】
図9はStep3のX抽出の例を示している。T1はStep1,Step2の処理の後、FSMの組合せテスト生成モデルに対して生成されたテストパターン集合である。T2はX抽出後のテストパターン集合である。図中、テストパターンのビットの並びは(PI1,PI2,PPI1,PPI2,PPI3)である。
【0019】
図10はStep4でT2の有効テストパターンを図8のFSMの状態遷移にマッピングした結果を示す。例えば、t4=(10101)であるので、状態101(S5)から入力条件10で状態遷移する状態遷移上にマッピングされている。またt10=(0100X)であるので、状態000(S0)から入力条件01で状態遷移する状態遷移上と、状態001(S1)から入力条件XXで状態遷移する状態遷移上にマッピングされている。S1からの状態遷移は入力が何であってもS2に遷移するので、t1は入力値がX0に相当し、t10は入力値が01に相当することを表すために( )に入力値が記述されている。S4からS5への状態遷移にマッピングされているt8,t11、S2からS4への状態遷移にマッピングされているt12も同様である。
【0020】
図11は図10からテスト系列を生成するために作られたFSMテスト生成グラフ(有向グラフ)である。FSMテスト生成グラフにおいて、頂点は状態を表し、頂点の重みw5はテスト系列をFSMに印加した時に、各頂点を通る回数を表す(w5→Z+(非負の整数))。枝は状態遷移を表し、枝の重みw1〜w4の意味は以下のとおりである。
【0021】
・w1→{0,1}:1は枝にテスト系列に被覆されていない有効テストパターンが存在することを表す。それ以外のときは0となる。
【0022】
・w2→R+(非負の実数):テスト系列に被覆されていないかつ、枝にマッピングされているテストパターン数を表す。ただしテストパターンtがm個の枝にマッピングされている時、その枝にマッピングされているテストパターンtは1/m個と数える。
【0023】
・w3→{0,1}:1はテスト系列によって、その枝に対する状態遷移を行ったことを示す。それ以外のときは0である。
【0024】
・w4→Z+(非負の整数):その枝に対する状態遷移の条件となる入力の組合せで、テスト系列にない組合せ数を示す。
【0025】
例えば、S0からS5への枝には重み(1,0.5,0,1)が割り付けられている。w1=1は、この枝にテスト系列に被覆されていないテストパターンt11がマッピングされていることを示す。w2=0.5はt11がS4からS5への枝にもマッピングされているので1/2、すなわち0.5となる。w3=0はまだこの枝、すなわち状態遷移はテスト系列によって行われていないことを示す。w4=1はこの枝に対する状態遷移は入力組み合わせ(11)のとき、実行されるが、まだテスト系列にこの状態遷移を起こした履歴がないので、1となる。
【0026】
まだ、テスト系列は生成されていないので、Step5ですべての有効テストパターンはテスト系列に被覆されていないと判断される。
【0027】
Step6で、図11のFSMテスト生成グラフに対してn状態遷移系列を探索する(n=3)。図12に、リセット状態S0から3状態遷移を起こす状態遷移系列をすべて探索した結果を示す。太線は結果として選択された状態遷移経路を示す。状態遷移経路の選択基準は以下の通りである。探索した状態遷移経路数をm、枝の数をNe、超点数Nvとする。また状態遷移経路pに枝eが存在するか否かを示す関数としてRe(p,e)∈{0,1}を用いる。pにeが含まれるならばRe(p,e)=1となり、それ以外のときはRe(p,e)=0となる。同様に状態遷移経路pに頂点vが存在するか否かを示す関数Rv(p,v)∈{0,1}を用いる。pにvが含まれるならばRv(p,v)=1となり、それ以外のときはRv(p,v)=0となる。
【0028】
【数1】
【0029】
優先度1〜2はできるだけ多数の有効テストパターンが被覆されるためのヒューリスティックである。テスト長を短くすることが目的である。優先度3〜5は、テスト系列による状態遷移の被覆率、すなわち実動作速度機能テストの品質を向上させるためのヒューリスティックである。上記に示した優先度1〜5は、一例として1→2→…5の順に適用されるが、他の順序で適用しても良い。
【0030】
図12ではS0→S0→S1→(S2)の状態遷移経路が優先度1,2の計算結果から一意に選択される。テスト系列(00,01,00)が生成される。3番目の系列はt1を被覆するように決定した。結果として、このテスト系列により、{t6,t10,t1}が被覆された。図13はこのテスト系列により被覆されたテストパターンをFSMの状態遷移のマッピングから削除したものである。またテスト系列によって状態遷移が行われた部分を太線で示している。図14は図13の処理を反映したFSMテスト生成グラフである。
【0031】
次にStep7において条件付X抽出が実行される。図15に示すように、前回のn状態遷移経路探索の結果、生成されたテスト系列で被覆された有効テストパターンをX抽出の対象からはずして、T2′のX抽出を行っている。T2′はt1とt10のXの部分を実際のテスト系列によって組合せ回路部分に印加される値に置き換えたテストパターン集合である。X抽出ビットでFに相当するテストパターンのビットはX抽出を行わないことを示す。またX抽出ビットでXに相当するテストパターンのビットはX抽出を行うことを示す。今回は、この処理によってXは増えなかった。
【0032】
図13に示すように、Step5でまだテスト系列ですべての有効テストパターンが被覆されていないと判断され、Step6へ進む。
【0033】
Step6で、図14のFSMテスト生成グラフに対してn状態遷移系列を探索する(n=3)。図16に、状態S2から3状態遷移を起こす状態遷移系列をすべて探索した結果を示す。太線は結果として選択された状態遷移経路を示す。図16ではS2→S4→S5→(S3)の状態遷移経路が優先度1,2,3,4,5の計算結果から一意に選択される。テスト系列(10,00,00)が生成される。1番目、2番目の系列はそれぞれt12,t8を被覆するように決定した。結果として、このテスト系列により、{t12,t8,t2}が被覆された。図17はこのテスト系列により被覆されたテストパターンをFSMの状態遷移のマッピングから削除したものである。またテスト系列によって状態遷移が行われた部分を太線で示している。図18は図17の処理を反映したFSMテスト生成グラフである。
【0034】
次にStep7において条件付X抽出が実行される。図19に示すように、前回のn状態遷移経路探索の結果、生成されたテスト系列で被覆された有効テストパターンをX抽出の対象からはずして、T2″のX抽出を行っている。T2″はt8のXの部分を実際のテスト系列によって組合せ回路部分に印加される値に置き換えたテストパターン集合である。今回は、この処理によってt13のPPI1の値がXとなった。よって、新たなテストパターン集合としてT3とする。これにより、t13は無効テストパターンから有効テストパターンに変化した。図20は新たに生じた有効テストパターンt13をS4からS3への状態遷移にマッピングしたものである。図21は図20の処理を反映したFSMテスト生成グラフである。
【0035】
図20に示すように、Step5でまだテスト系列ですべての有効テストパターンが被覆されていないと判断され、Step6へ進む。
【0036】
Step6で、図21のFSMテスト生成グラフに対してn状態遷移系列を探索する(n=3)。図22に、状態S3から3状態遷移を起こす状態遷移系列をすべて探索した結果を示す。太線は結果として選択された状態遷移経路を示す。図22ではS3→S2→S5→(S0)の状態遷移経路が優先度1の計算結果から一意に選択される。テスト系列(10,01,10)が生成される。結果として、このテスト系列により、{t7,t4}が被覆された。図23はこのテスト系列により被覆されたテストパターンをFSMの状態遷移のマッピングから削除したものである。またテスト系列によって状態遷移が行われた部分を太線で示している。図24は図23の処理を反映したFSMテスト生成グラフである。
【0037】
次にStep7において条件付X抽出が実行される。図25に示すように、前回のn状態遷移経路探索の結果、生成されたテスト系列で被覆された有効テストパターンをX抽出の対象からはずして、T3′のX抽出を行っている。T3′はS3からS2への状態遷移によって得られた新しいテストパターンt14=(1,0,0,1,1)をT3に加えたテストパターン集合である。今回は、この処理によってt5のすべての値がXとなった。t5は不要なテストパターンと判断される。図26は不要となった有効テストパターンt5に対するS5からS1への状態遷移のマッピングを削除したものである。図27は図26の処理を反映したFSMテスト生成グラフである。
【0038】
図26に示すように、Step5でまだテスト系列ですべての有効テストパターンが被覆されていないと判断され、Step6へ進む。
【0039】
Step6で、図27のFSMテスト生成グラフに対してn状態遷移系列を探索する(n=3)。図28に、状態S0から3状態遷移を起こす状態遷移系列をすべて探索した結果を示す。太線は結果として選択された状態遷移経路を示す。図28ではS0→S5→S4→(S3)の状態遷移経路が優先度1の計算結果から一意に選択される。テスト系列(11,11,01)が生成される。結果として、このテスト系列により、{t11,t13}が被覆された。図29はこのテスト系列により被覆されたテストパターンをFSMの状態遷移のマッピングから削除したものである。またテスト系列によって状態遷移が行われた部分を太線で示している。図30は図29の処理を反映したFSMテスト生成グラフである。
【0040】
次にStep7において条件付X抽出が実行される。図31に示すように、前回のn状態遷移経路探索の結果、生成されたテスト系列で被覆された有効テストパターンをX抽出の対象からはずして、T4′のX抽出を行っている。T4′はt11とt13のXの部分を実際のテスト系列によって組合せ回路部分に印加される値に置き換えたテストパターン集合である。今回は、この処理によってXは増えなかった。
【0041】
図29に示すように、Step5でまだテスト系列ですべての有効テストパターンが被覆されていないと判断され、Step6へ進む。
【0042】
Step6で、図30のFSMテスト生成グラフに対してn状態遷移系列を探索する(n=3)。図32に、状態S3から3状態遷移を起こす状態遷移系列をすべて探索した結果を示す。太線は結果として選択された状態遷移経路を示す。図32ではS3→S4→S1→(S2)の状態遷移経路が優先度1の計算結果から一意に選択される。テスト系列(01,10,10)が生成される。結果として、このテスト系列により、{t9}が被覆された。図33はこのテスト系列により被覆されたテストパターンをFSMの状態遷移のマッピングから削除したものである。またテスト系列によって状態遷移が行われた部分を太線で示している。
【0043】
次にStep7において条件付X抽出が実行される。図34に示すように、前回のn状態遷移経路探索の結果、生成されたテスト系列で被覆された有効テストパターンをX抽出の対象からはずして、T4″のX抽出を行っている。T4″はS3からS4への状態遷移、S1からS2への状態遷移によって得られた新しいテストパターンt16=(0,1,0,1,1),t17=(10001)をT4′に加えたテストパターン集合である。今回は、この処理によってT4″のXの数は増加しなかった。
【0044】
図33に示すように、Step5でテスト系列ですべての有効テストパターンが被覆されたと判断され、Step8へ進む。
【0045】
Step8で、t3=(0111X)は無効テストパターンと判断され、無効状態11XがFSMに追加される。このとき、残った無効テストパターンに対応する無効状態が複数存在するときは、無効テストパターン数が多い無効状態をリセット状態により近く配置することが望ましい。
【0046】
以上の処理により、単一縮退故障の故障検出効率が100%のテスト系列は図35のようになり、そのテスト長は16となった。またFSMの全状態遷移数18のうち、生成したテスト系列で14の状態遷移を実行させることができた。状態遷移の被覆率14/18=77.78%となり(図33参照)、実動作速度機能テストの品質を改善することができた。前述の従来技術における状態遷移の被覆率は4/18=22.2%である(図36参照)。追加した無効テスト状態数も1と従来技術における方法の追加無効テスト状態数2を削除することができた。
【0047】
上記の例では、Step5ですべての有効テストパターンがテスト系列に被覆されたと判断されたらStep8へ進んでいるが、FSMの状態遷移のうちテスト系列に被覆されていないものが残っていればそれをテスト系列に追加した後Step8へ進むようにすれば、被覆率を100%とすることができる。
【0048】
以上の処理はコンピュータに上記の処理を実行させるソフトウェアにより実現することができる。
【0049】
図7に示したテスト容易化済みコントローラは、PIのパターンを外部から与え、POの出力を外部で判定する外部テスト方式の構成のものである。図7の回路に、上記の処理で決定されたテスト系列を順次発生するテストパターン発生器と出力POおよび疑似外部出力PPOの結果を符号化するMISR(Multiple Input Signature Register)を付加してBIST(Built−in Logic Block Observer)構成とすることができる。図37には、前述の例において、テスト容易化済みコントローラをBIST方式とした例を示す。テストパターン発生器10はリセット信号(R)が入力された後、図35のテストパターンを順次出力する。信号Bが“1”であるときテストパターン発生器10が出力するPIがセレクタ12で選択されて組み合わせ回路18へ印加され、テストパターン発生器10が出力する信号Rがセレクタ14で選択されて状態レジスタ16のリセット端子へ印加される。RA20は、2ビットのPO出力および3ビットのPPO出力を符号化する。
【0050】
組み合わせ回路のテストパターンをFSMの有効状態および無効状態にマッピングし、同一の状態に属するテストパターンについては状態レジスタをホールドしてテストパターンを発生する従来技術についても同様に、図38に示すようにBIST構成とすることができる。図37との回路構成上の相違は状態レジスタのホールド信号がパターン発生器から与えられる点のみである。
【0051】
【発明の効果】
以上説明したように本発明によれば、コントローラの組み合わせ論理部を完全故障検出効率でテストすることが可能で、コントローラの状態遷移を被覆する割合が高く、かつ、可能な限りコンパクトなテスト系列およびテスト容易化済みコントローラが得られる。
【図面の簡単な説明】
【図1】FSMとして記述されたコントローラの図である。
【図2】順序回路として表わしたコントローラの図である。
【図3】図2の回路から生成された組み合わせテスト生成モデルの図である。
【図4】無効テスト状態を実現する状態遷移を示す図である。
【図5】従来技術におけるテスト容易化済みのコントローラを示す図である。
【図6】本発明の一実施形態に係るテスト生成方法のフローチャートである。
【図7】本発明の一実施形態に係るテスト容易化済みコントローラの構成を示すブロック図である。
【図8】FSMとして示したコントローラの一例を示す図である。
【図9】図8のコントローラについて生成されたテストパターンに対する最初のX抽出を示す図である。
【図10】最初のX抽出後の有効テストパターンをFSMの状態遷移にマッピングした結果を示す図である。
【図11】図10から得られたFSMテスト生成グラフを示す図である。
【図12】図11のFSMテスト生成グラフに対する3状態遷移系列の探索結果と長さ3の経路選択結果を示す図である。
【図13】テスト系列に被覆されたテストパターンを削除した後の状態遷移マッピングを示す図である。
【図14】図13から得られたFSMテスト生成グラフを示す図である。
【図15】2回目のX抽出処理を示す図である。
【図16】図14のFSMテスト生成グラフに対する3状態遷移系列の探索結果と長さ3の経路選択結果を示す図である。
【図17】テスト系列に被覆されたテストパターンを削除した後の状態遷移マッピングを示す図である。
【図18】図17から得られたFSMテスト生成グラフを示す図である。
【図19】3回目のX抽出処理を示す図である。
【図20】3回目のX抽出後の状態遷移マッピングを示す図である。
【図21】図20から得られたFSMテスト生成グラフを示す図である。
【図22】図21のFSMテスト生成グラフに対する3状態遷移系列の探索結果と長さ3の経路選択結果を示す図である。
【図23】テスト系列に被覆されたテストパターンを削除した後の状態遷移マッピングを示す図である。
【図24】図23から得られたFSMテスト生成グラフを示す図である。
【図25】4回目のX抽出処理を示す図である。
【図26】4回目のX抽出後の状態遷移マッピングを示す図である。
【図27】図26から得られたFSMテスト生成グラフを示す図である。
【図28】図27のFSMテスト生成グラフに対する3状態遷移系列の探索結果と長さ3の経路選択結果を示す図である。
【図29】テスト系列に被覆されたテストパターンを削除した後の状態遷移マッピングを示す図である。
【図30】図29から得られたFSMテスト生成グラフを示す図である。
【図31】5回目のX抽出処理を示す図である。
【図32】図30のFSMテスト生成グラフに対する3状態遷移系列の探索結果と長さ3の経路選択結果を示す図である。
【図33】テスト系列に被覆されたテストパターンを削除した後の状態遷移マッピングを示す図である。
【図34】6回目のX抽出処理を示す図である。
【図35】最終的に生成されたテスト系列を示す図である。
【図36】従来技術により生成されたテスト系列における状態遷移の被覆割合を示す図である。
【図37】BIST方式で実現した本発明の一実施例に係るテスト容易化済みコントローラを示す図である。
【図38】従来技術により生成されたテスト系列に基づくBIST方式で実現されたテスト容易化済みコントローラの例を示す図である。
【発明の属する技術分野】
本発明は、RTL回路の段階においてRTL回路に含まれるコントローラをテスト容易化する集積回路の非スキャンテスト容易化設計に関する。
【0002】
半導体回路または半導体回路を構成するコアの設計工程において、ゲートレベル回路に変換する前の段階においては、RTL回路はデータを処理するデータパスとデータパスの動作を制御するコントローラとから構成される。本明細書では、このコントローラの非スキャンテスト容易化設計に言及する。
【0003】
【従来の技術】
下記非特許文献1および特許文献1には、RTL回路に含まれるコントローラの非スキャンテスト容易化に適用可能なテスト容易化設計の手法が開示されている。
【0004】
コントローラは、レジスタ転送レベルでは図1に示されるように有限状態機械(FSM:Finite State Machine)として記述される。FSMの各状態si に状態レジスタの実際の値をそれぞれ割り当てて論理合成を行なって、図2に示すような、状態レジスタSRと組み合わせ論理回路CCとからなる順序回路を得る。上記論文に開示された手法においては、まず、図3に示すように、状態レジスタSRを状態レジスタSRの出力である現状態PSに相当する疑似外部入力PPIと状態レジスタSRの入力である次状態NSに相当する疑似外部出力PPOで置き換えて組み合わせテスト生成モデルを生成し、組み合わせ回路CCに周知の組み合わせテスト生成アルゴリズムを適用してテスト生成を行なってテストパターンの集合を得る。
【0005】
生成された各テストパターンを構成する外部入力PIと疑似外部入力PPIのうち、外部入力PIは集積回路の外部から与え、疑似外部入力PPIは内部的に生成する。各テストパターンに含まれるPPIのうち図1の状態s0 〜s6 (有効状態と呼ばれる)のいずれかに相当するものはコントローラ本来の機能によりリセット状態S0 から順次状態遷移させてそれぞれの状態に到達させることにより実現可能であり、これらは有効テスト状態と呼ばれる。一方、これらs0 〜s6 とは異なる状態(無効状態と呼ばれる)のうち、生成されたテストパターンに含まれる疑似外部入力PPIに相当する状態is1 〜is5 (無効テスト状態と呼ばれる)が存在すればそれらはコントローラ本来の機能で実現できないので、テスト容易化のために回路を付加して実現しなければならない。
【0006】
そこで、図4に示すように、状態遷移モード切換信号tが1のときにリセット状態s0 からすべての無効テスト状態is1 〜is5 を通る経路が追加され、図5に示すように、この遷移を実現するための無効テスト状態生成論理ISGとマルチプレクサMUXが追加される。テストパターン集合の中には、PIの値が異なっていてもPPIの値が同じであるものが通常含まれているので、これらを効率良く実現するため、レジスタSRにはホールド信号Hが追加される。PPIの値が同じテストパターンを印加するときは、ホールド信号HによりレジスタSRをホールドする間に異なるPIの値が印加される。そして、すべての有効テスト状態を通る最短の状態遷移系列を求め、t=0としてこれを順次印加して状態遷移させ、必要に応じてホールドすることにより有効テスト状態に属するすべてのテストパターンを印加し、さらにt=1として図4の経路に沿って遷移させ必要に応じてホールドすることにより無効テスト状態に属するすべてのテストパターンを印加する。テストパターンの印加と同時に、テスト用にt_outとして引き出されたMUXの出力を用いて疑似外部出力PPOへ伝播してきた出力を観測することで故障の観測が行なわれる。
【0007】
【特許文献1】
特許第3243207号
【非特許文献1】
大竹哲史他「完全故障検出効率を保証するコントローラの非スキャンテスト容易化設計法」、電子情報通信学会論文誌D−1 Vol.J81−D−I, N O.12, pp.1259−1270、1998年12月
【非特許文献2】
S. Kajihara and K. Miyase,“On Identifying Don’t Care Inputs o f Test Patterns for Combinational Circuits,”Proc. of Int’l Co nf. of CAD, pp.364−369, 2001
【非特許文献3】
K. Miyase et al.,“Don’t−Care Identification on Specific Bits of Test Patterns”, ICCD, 2002
【非特許文献4】
K. Yamaguchi et al.,“Hierarchical BIST: Test−Per−Clock BIST w ith Low Overhead”, Proceedings of 3rd Workshop on RTL and Hig h Level Testing, pp.42−47
【非特許文献5】
T. Hosokawa, et al.,“A State Reduction Method for Non−scan Ba sed FSM Testing with Don’t Care Inputs Identification Techniqu e”, Proceedings of the Eleventh Asian Test Symposium, pp.55−6 0
【0008】
【発明が解決しようとする課題】
コントローラの組み合わせ論理部CCにテストパターンを実動作速度で与えるだけでなく、同時に、状態から状態への状態遷移を実動作速度で動作させることができれば実動作速度における機能テストの品質が向上する。
【0009】
上記論文に記載された手法においては、各テストパターンをコントローラの「状態」にマッピングし、コントローラ本来の機能を利用してテストパターンを生成している。したがって、異なる状態にマッピングされたテストパターンへ移る際には状態遷移を動作させることになる。しかしながら、テスト長をできるだけ短かくするため、同一の状態にマッピングされたテストパターンの生成にあたっては状態レジスタSRをホールドしてテストパターンを生成しているので、全体として状態遷移を動作させる割合が低いという問題がある。
【0010】
したがって本発明の目的は、コントローラの組み合わせ論理部を完全故障検出効率でテストすることが可能で、コントローラの状態遷移を被覆する割合が高く、かつ、可能な限りコンパクトなテスト系列を与えるテスト容易化設計方法を提供することにある。
【0011】
【課題を解決するための手段】
本発明によれば、RTL回路の段階においてコントローラをテスト容易化することによる集積回路のテスト容易化設計方法であって、コントローラを、コントローラの現在の状態を表わす疑似外部入力とコントローラ外部からの外部入力とを入力としてコントローラの次の状態を表わす疑似外部出力とコントローラ外部への外部出力とを出力する組み合わせ回路で表し、組み合わせ回路と組み合わせ回路が出力する現在の状態を保持して組み合わせ回路へ供給するレジスタによって到達可能なコントローラの状態を有効状態、到達不可能な状態を無効状態とするとき、(a)組み合わせ回路をテストするための複数のテストパターンの集合であって各テストパターンが疑似外部入力と外部入力とからなるものを生成し、(b)複数のテストパターンのうち、コントローラの1つの有効状態から他の有効状態への状態遷移に対応するものを、対応する状態遷移にマッピングし、(c)状態遷移にマッピングされたすべてのテストパターンを被覆するテスト系列を決定し、(d)ステップ(c)の後、状態遷移にマッピングされていないテストパターンがあれば、それを実現する状態遷移をテスト系列に追加し、(e)ステップ(d)の後、テスト系列に基いてテスト容易化済みコントローラを生成するステップを具備する集積回路のテスト容易化方法が提供される。
【0012】
ステップ(c)は、(i)nを所定の自然数として、コントローラの初期状態から始まり、状態遷移にマッピングされたテストパターンを被覆する長さnの経路をテスト系列として決定し、(ii)決定されたテスト系列に続き、状態遷移にマッピングされたテストパターンを被覆する長さnの経路を決定してテスト系列に追加し、(iii )状態遷移にマッピングされたすべてのテストパターンがテスト系列に被覆されるまで、サブステップ(ii)を繰り返すサブステップを含むことが好ましい。
【0013】
前述の方法は、ステップ(a)の後、ステップ(b)の前において、テストパターンの集合を構成する複数のビットの中で、いずれの値をとっても故障検出効率に変化のないものをドントケアビットとして特定するステップをさらに具備し、ステップ(c)は、(iv)ステップ(ii)の後、ステップ(iii )の前において、テスト系列に被覆されているテストパターンをドントケアビット特定の対象から除外した上で、テストパターンの集合に対してドントケアビットを特定するサブステップをさらに含むことがさらに好ましい。
【0014】
本発明によれば上記手法により生成されたテスト容易化済みコントローラを具備する集積回路もまた提供される。
【0015】
【発明の実施の形態】
図6は本発明で提案する品質の高い実動作速度機能テストを行うための、テスト生成方法のフローチャートである。テスト容易化回路は図7に示したようになる。図5と比較すると、レジスタSRにホールド信号が供給されないのが注目される。
【0016】
図6において、Step1はFSMを論理合成し、その組合せ回路部を抽出するステップである。抽出した組合せ回路を組合せテスト生成モデルとする。Step2は組合せテスト生成モデルに対して、単一縮退故障を仮定してテスト生成を行うステップである。Step3は生成したテストパターンに対して、前記非特許文献2および3に記載された手法により、ドントケア(X)抽出を行うステップである。Step4はFSMの状態遷移に対応するテストパターンをマッピングし、有向グラフで構成されるFSMテスト生成グラフを生成するステップである。以下、状態遷移にマッピングされたテストパターンを有効テストパターンと呼ぶ。Step5は、生成したFSMのテスト系列による状態遷移がすべての有効テストパターンを被覆しているか否かを判断するステップである。すべての有効テストパターンを被覆している場合、Step8へ進み、それ以外の場合はStep6へ進む。Step6は深さn(自然数)の状態遷移を探索し、有効テストパターンを最も多く被覆する状態遷移経路を選択する処理である。すなわち長さnのテスト系列を生成する。経路選択後、状態遷移にマッピングされている被覆された有効テストパターンを削除し、FSMテスト生成グラフを更新する。Step7はテスト系列に被覆されたテストパターンはX抽出の対象としない条件付X抽出を行うステップである。X抽出後、再度有効テストパターンをFSMの状態遷移にマッピングし直し、FSMテスト生成グラフを更新する。Step8は、生成したテスト系列がすべての有効テストパターンを被覆した後で、最終的にFSMの状態遷移にマッピングできなかったテストパターンを無効テストパターンとし、その無効テスト状態をFSMの状態遷移に追加し、図7に示したテスト機能をFSMに挿入するステップである。
【0017】
図8は本発明の実施例を説明するために用いる2入力6状態のFSMである。図8において、頂点S0〜S5は有効状態(特にS0はリセット状態)であり、FSMの入力が状態遷移の辺上に示した値であれば、次のクロックで状態遷移先に遷移することを示す。S0〜S5の下に示した符号はエンコードされた状態値を示す。
【0018】
図9はStep3のX抽出の例を示している。T1はStep1,Step2の処理の後、FSMの組合せテスト生成モデルに対して生成されたテストパターン集合である。T2はX抽出後のテストパターン集合である。図中、テストパターンのビットの並びは(PI1,PI2,PPI1,PPI2,PPI3)である。
【0019】
図10はStep4でT2の有効テストパターンを図8のFSMの状態遷移にマッピングした結果を示す。例えば、t4=(10101)であるので、状態101(S5)から入力条件10で状態遷移する状態遷移上にマッピングされている。またt10=(0100X)であるので、状態000(S0)から入力条件01で状態遷移する状態遷移上と、状態001(S1)から入力条件XXで状態遷移する状態遷移上にマッピングされている。S1からの状態遷移は入力が何であってもS2に遷移するので、t1は入力値がX0に相当し、t10は入力値が01に相当することを表すために( )に入力値が記述されている。S4からS5への状態遷移にマッピングされているt8,t11、S2からS4への状態遷移にマッピングされているt12も同様である。
【0020】
図11は図10からテスト系列を生成するために作られたFSMテスト生成グラフ(有向グラフ)である。FSMテスト生成グラフにおいて、頂点は状態を表し、頂点の重みw5はテスト系列をFSMに印加した時に、各頂点を通る回数を表す(w5→Z+(非負の整数))。枝は状態遷移を表し、枝の重みw1〜w4の意味は以下のとおりである。
【0021】
・w1→{0,1}:1は枝にテスト系列に被覆されていない有効テストパターンが存在することを表す。それ以外のときは0となる。
【0022】
・w2→R+(非負の実数):テスト系列に被覆されていないかつ、枝にマッピングされているテストパターン数を表す。ただしテストパターンtがm個の枝にマッピングされている時、その枝にマッピングされているテストパターンtは1/m個と数える。
【0023】
・w3→{0,1}:1はテスト系列によって、その枝に対する状態遷移を行ったことを示す。それ以外のときは0である。
【0024】
・w4→Z+(非負の整数):その枝に対する状態遷移の条件となる入力の組合せで、テスト系列にない組合せ数を示す。
【0025】
例えば、S0からS5への枝には重み(1,0.5,0,1)が割り付けられている。w1=1は、この枝にテスト系列に被覆されていないテストパターンt11がマッピングされていることを示す。w2=0.5はt11がS4からS5への枝にもマッピングされているので1/2、すなわち0.5となる。w3=0はまだこの枝、すなわち状態遷移はテスト系列によって行われていないことを示す。w4=1はこの枝に対する状態遷移は入力組み合わせ(11)のとき、実行されるが、まだテスト系列にこの状態遷移を起こした履歴がないので、1となる。
【0026】
まだ、テスト系列は生成されていないので、Step5ですべての有効テストパターンはテスト系列に被覆されていないと判断される。
【0027】
Step6で、図11のFSMテスト生成グラフに対してn状態遷移系列を探索する(n=3)。図12に、リセット状態S0から3状態遷移を起こす状態遷移系列をすべて探索した結果を示す。太線は結果として選択された状態遷移経路を示す。状態遷移経路の選択基準は以下の通りである。探索した状態遷移経路数をm、枝の数をNe、超点数Nvとする。また状態遷移経路pに枝eが存在するか否かを示す関数としてRe(p,e)∈{0,1}を用いる。pにeが含まれるならばRe(p,e)=1となり、それ以外のときはRe(p,e)=0となる。同様に状態遷移経路pに頂点vが存在するか否かを示す関数Rv(p,v)∈{0,1}を用いる。pにvが含まれるならばRv(p,v)=1となり、それ以外のときはRv(p,v)=0となる。
【0028】
【数1】
【0029】
優先度1〜2はできるだけ多数の有効テストパターンが被覆されるためのヒューリスティックである。テスト長を短くすることが目的である。優先度3〜5は、テスト系列による状態遷移の被覆率、すなわち実動作速度機能テストの品質を向上させるためのヒューリスティックである。上記に示した優先度1〜5は、一例として1→2→…5の順に適用されるが、他の順序で適用しても良い。
【0030】
図12ではS0→S0→S1→(S2)の状態遷移経路が優先度1,2の計算結果から一意に選択される。テスト系列(00,01,00)が生成される。3番目の系列はt1を被覆するように決定した。結果として、このテスト系列により、{t6,t10,t1}が被覆された。図13はこのテスト系列により被覆されたテストパターンをFSMの状態遷移のマッピングから削除したものである。またテスト系列によって状態遷移が行われた部分を太線で示している。図14は図13の処理を反映したFSMテスト生成グラフである。
【0031】
次にStep7において条件付X抽出が実行される。図15に示すように、前回のn状態遷移経路探索の結果、生成されたテスト系列で被覆された有効テストパターンをX抽出の対象からはずして、T2′のX抽出を行っている。T2′はt1とt10のXの部分を実際のテスト系列によって組合せ回路部分に印加される値に置き換えたテストパターン集合である。X抽出ビットでFに相当するテストパターンのビットはX抽出を行わないことを示す。またX抽出ビットでXに相当するテストパターンのビットはX抽出を行うことを示す。今回は、この処理によってXは増えなかった。
【0032】
図13に示すように、Step5でまだテスト系列ですべての有効テストパターンが被覆されていないと判断され、Step6へ進む。
【0033】
Step6で、図14のFSMテスト生成グラフに対してn状態遷移系列を探索する(n=3)。図16に、状態S2から3状態遷移を起こす状態遷移系列をすべて探索した結果を示す。太線は結果として選択された状態遷移経路を示す。図16ではS2→S4→S5→(S3)の状態遷移経路が優先度1,2,3,4,5の計算結果から一意に選択される。テスト系列(10,00,00)が生成される。1番目、2番目の系列はそれぞれt12,t8を被覆するように決定した。結果として、このテスト系列により、{t12,t8,t2}が被覆された。図17はこのテスト系列により被覆されたテストパターンをFSMの状態遷移のマッピングから削除したものである。またテスト系列によって状態遷移が行われた部分を太線で示している。図18は図17の処理を反映したFSMテスト生成グラフである。
【0034】
次にStep7において条件付X抽出が実行される。図19に示すように、前回のn状態遷移経路探索の結果、生成されたテスト系列で被覆された有効テストパターンをX抽出の対象からはずして、T2″のX抽出を行っている。T2″はt8のXの部分を実際のテスト系列によって組合せ回路部分に印加される値に置き換えたテストパターン集合である。今回は、この処理によってt13のPPI1の値がXとなった。よって、新たなテストパターン集合としてT3とする。これにより、t13は無効テストパターンから有効テストパターンに変化した。図20は新たに生じた有効テストパターンt13をS4からS3への状態遷移にマッピングしたものである。図21は図20の処理を反映したFSMテスト生成グラフである。
【0035】
図20に示すように、Step5でまだテスト系列ですべての有効テストパターンが被覆されていないと判断され、Step6へ進む。
【0036】
Step6で、図21のFSMテスト生成グラフに対してn状態遷移系列を探索する(n=3)。図22に、状態S3から3状態遷移を起こす状態遷移系列をすべて探索した結果を示す。太線は結果として選択された状態遷移経路を示す。図22ではS3→S2→S5→(S0)の状態遷移経路が優先度1の計算結果から一意に選択される。テスト系列(10,01,10)が生成される。結果として、このテスト系列により、{t7,t4}が被覆された。図23はこのテスト系列により被覆されたテストパターンをFSMの状態遷移のマッピングから削除したものである。またテスト系列によって状態遷移が行われた部分を太線で示している。図24は図23の処理を反映したFSMテスト生成グラフである。
【0037】
次にStep7において条件付X抽出が実行される。図25に示すように、前回のn状態遷移経路探索の結果、生成されたテスト系列で被覆された有効テストパターンをX抽出の対象からはずして、T3′のX抽出を行っている。T3′はS3からS2への状態遷移によって得られた新しいテストパターンt14=(1,0,0,1,1)をT3に加えたテストパターン集合である。今回は、この処理によってt5のすべての値がXとなった。t5は不要なテストパターンと判断される。図26は不要となった有効テストパターンt5に対するS5からS1への状態遷移のマッピングを削除したものである。図27は図26の処理を反映したFSMテスト生成グラフである。
【0038】
図26に示すように、Step5でまだテスト系列ですべての有効テストパターンが被覆されていないと判断され、Step6へ進む。
【0039】
Step6で、図27のFSMテスト生成グラフに対してn状態遷移系列を探索する(n=3)。図28に、状態S0から3状態遷移を起こす状態遷移系列をすべて探索した結果を示す。太線は結果として選択された状態遷移経路を示す。図28ではS0→S5→S4→(S3)の状態遷移経路が優先度1の計算結果から一意に選択される。テスト系列(11,11,01)が生成される。結果として、このテスト系列により、{t11,t13}が被覆された。図29はこのテスト系列により被覆されたテストパターンをFSMの状態遷移のマッピングから削除したものである。またテスト系列によって状態遷移が行われた部分を太線で示している。図30は図29の処理を反映したFSMテスト生成グラフである。
【0040】
次にStep7において条件付X抽出が実行される。図31に示すように、前回のn状態遷移経路探索の結果、生成されたテスト系列で被覆された有効テストパターンをX抽出の対象からはずして、T4′のX抽出を行っている。T4′はt11とt13のXの部分を実際のテスト系列によって組合せ回路部分に印加される値に置き換えたテストパターン集合である。今回は、この処理によってXは増えなかった。
【0041】
図29に示すように、Step5でまだテスト系列ですべての有効テストパターンが被覆されていないと判断され、Step6へ進む。
【0042】
Step6で、図30のFSMテスト生成グラフに対してn状態遷移系列を探索する(n=3)。図32に、状態S3から3状態遷移を起こす状態遷移系列をすべて探索した結果を示す。太線は結果として選択された状態遷移経路を示す。図32ではS3→S4→S1→(S2)の状態遷移経路が優先度1の計算結果から一意に選択される。テスト系列(01,10,10)が生成される。結果として、このテスト系列により、{t9}が被覆された。図33はこのテスト系列により被覆されたテストパターンをFSMの状態遷移のマッピングから削除したものである。またテスト系列によって状態遷移が行われた部分を太線で示している。
【0043】
次にStep7において条件付X抽出が実行される。図34に示すように、前回のn状態遷移経路探索の結果、生成されたテスト系列で被覆された有効テストパターンをX抽出の対象からはずして、T4″のX抽出を行っている。T4″はS3からS4への状態遷移、S1からS2への状態遷移によって得られた新しいテストパターンt16=(0,1,0,1,1),t17=(10001)をT4′に加えたテストパターン集合である。今回は、この処理によってT4″のXの数は増加しなかった。
【0044】
図33に示すように、Step5でテスト系列ですべての有効テストパターンが被覆されたと判断され、Step8へ進む。
【0045】
Step8で、t3=(0111X)は無効テストパターンと判断され、無効状態11XがFSMに追加される。このとき、残った無効テストパターンに対応する無効状態が複数存在するときは、無効テストパターン数が多い無効状態をリセット状態により近く配置することが望ましい。
【0046】
以上の処理により、単一縮退故障の故障検出効率が100%のテスト系列は図35のようになり、そのテスト長は16となった。またFSMの全状態遷移数18のうち、生成したテスト系列で14の状態遷移を実行させることができた。状態遷移の被覆率14/18=77.78%となり(図33参照)、実動作速度機能テストの品質を改善することができた。前述の従来技術における状態遷移の被覆率は4/18=22.2%である(図36参照)。追加した無効テスト状態数も1と従来技術における方法の追加無効テスト状態数2を削除することができた。
【0047】
上記の例では、Step5ですべての有効テストパターンがテスト系列に被覆されたと判断されたらStep8へ進んでいるが、FSMの状態遷移のうちテスト系列に被覆されていないものが残っていればそれをテスト系列に追加した後Step8へ進むようにすれば、被覆率を100%とすることができる。
【0048】
以上の処理はコンピュータに上記の処理を実行させるソフトウェアにより実現することができる。
【0049】
図7に示したテスト容易化済みコントローラは、PIのパターンを外部から与え、POの出力を外部で判定する外部テスト方式の構成のものである。図7の回路に、上記の処理で決定されたテスト系列を順次発生するテストパターン発生器と出力POおよび疑似外部出力PPOの結果を符号化するMISR(Multiple Input Signature Register)を付加してBIST(Built−in Logic Block Observer)構成とすることができる。図37には、前述の例において、テスト容易化済みコントローラをBIST方式とした例を示す。テストパターン発生器10はリセット信号(R)が入力された後、図35のテストパターンを順次出力する。信号Bが“1”であるときテストパターン発生器10が出力するPIがセレクタ12で選択されて組み合わせ回路18へ印加され、テストパターン発生器10が出力する信号Rがセレクタ14で選択されて状態レジスタ16のリセット端子へ印加される。RA20は、2ビットのPO出力および3ビットのPPO出力を符号化する。
【0050】
組み合わせ回路のテストパターンをFSMの有効状態および無効状態にマッピングし、同一の状態に属するテストパターンについては状態レジスタをホールドしてテストパターンを発生する従来技術についても同様に、図38に示すようにBIST構成とすることができる。図37との回路構成上の相違は状態レジスタのホールド信号がパターン発生器から与えられる点のみである。
【0051】
【発明の効果】
以上説明したように本発明によれば、コントローラの組み合わせ論理部を完全故障検出効率でテストすることが可能で、コントローラの状態遷移を被覆する割合が高く、かつ、可能な限りコンパクトなテスト系列およびテスト容易化済みコントローラが得られる。
【図面の簡単な説明】
【図1】FSMとして記述されたコントローラの図である。
【図2】順序回路として表わしたコントローラの図である。
【図3】図2の回路から生成された組み合わせテスト生成モデルの図である。
【図4】無効テスト状態を実現する状態遷移を示す図である。
【図5】従来技術におけるテスト容易化済みのコントローラを示す図である。
【図6】本発明の一実施形態に係るテスト生成方法のフローチャートである。
【図7】本発明の一実施形態に係るテスト容易化済みコントローラの構成を示すブロック図である。
【図8】FSMとして示したコントローラの一例を示す図である。
【図9】図8のコントローラについて生成されたテストパターンに対する最初のX抽出を示す図である。
【図10】最初のX抽出後の有効テストパターンをFSMの状態遷移にマッピングした結果を示す図である。
【図11】図10から得られたFSMテスト生成グラフを示す図である。
【図12】図11のFSMテスト生成グラフに対する3状態遷移系列の探索結果と長さ3の経路選択結果を示す図である。
【図13】テスト系列に被覆されたテストパターンを削除した後の状態遷移マッピングを示す図である。
【図14】図13から得られたFSMテスト生成グラフを示す図である。
【図15】2回目のX抽出処理を示す図である。
【図16】図14のFSMテスト生成グラフに対する3状態遷移系列の探索結果と長さ3の経路選択結果を示す図である。
【図17】テスト系列に被覆されたテストパターンを削除した後の状態遷移マッピングを示す図である。
【図18】図17から得られたFSMテスト生成グラフを示す図である。
【図19】3回目のX抽出処理を示す図である。
【図20】3回目のX抽出後の状態遷移マッピングを示す図である。
【図21】図20から得られたFSMテスト生成グラフを示す図である。
【図22】図21のFSMテスト生成グラフに対する3状態遷移系列の探索結果と長さ3の経路選択結果を示す図である。
【図23】テスト系列に被覆されたテストパターンを削除した後の状態遷移マッピングを示す図である。
【図24】図23から得られたFSMテスト生成グラフを示す図である。
【図25】4回目のX抽出処理を示す図である。
【図26】4回目のX抽出後の状態遷移マッピングを示す図である。
【図27】図26から得られたFSMテスト生成グラフを示す図である。
【図28】図27のFSMテスト生成グラフに対する3状態遷移系列の探索結果と長さ3の経路選択結果を示す図である。
【図29】テスト系列に被覆されたテストパターンを削除した後の状態遷移マッピングを示す図である。
【図30】図29から得られたFSMテスト生成グラフを示す図である。
【図31】5回目のX抽出処理を示す図である。
【図32】図30のFSMテスト生成グラフに対する3状態遷移系列の探索結果と長さ3の経路選択結果を示す図である。
【図33】テスト系列に被覆されたテストパターンを削除した後の状態遷移マッピングを示す図である。
【図34】6回目のX抽出処理を示す図である。
【図35】最終的に生成されたテスト系列を示す図である。
【図36】従来技術により生成されたテスト系列における状態遷移の被覆割合を示す図である。
【図37】BIST方式で実現した本発明の一実施例に係るテスト容易化済みコントローラを示す図である。
【図38】従来技術により生成されたテスト系列に基づくBIST方式で実現されたテスト容易化済みコントローラの例を示す図である。
Claims (12)
- RTL回路の段階においてコントローラをテスト容易化することによる集積回路のテスト容易化設計方法であって、
コントローラを、コントローラの現在の状態を表わす疑似外部入力とコントローラ外部からの外部入力とを入力としてコントローラの次の状態を表わす疑似外部出力とコントローラ外部への外部出力とを出力する組み合わせ回路で表し、組み合わせ回路と組み合わせ回路が出力する現在の状態を保持して組み合わせ回路へ供給するレジスタによって到達可能なコントローラの状態を有効状態、到達不可能な状態を無効状態とするとき、
(a)組み合わせ回路をテストするための複数のテストパターンの集合であって各テストパターンが疑似外部入力と外部入力とからなるものを生成し、
(b)複数のテストパターンのうち、コントローラの1つの有効状態から他の有効状態への状態遷移に対応するものを、対応する状態遷移にマッピングし、
(c)状態遷移にマッピングされたすべてのテストパターンを被覆するテスト系列を決定し、
(d)ステップ(c)の後、状態遷移にマッピングされていないテストパターンがあれば、それを実現する状態遷移をテスト系列に追加し、
(e)ステップ(d)の後、テスト系列に基いてテスト容易化済みコントローラを生成するステップを具備する集積回路のテスト容易化方法。 - ステップ(c)は、
(i)nを所定の自然数として、コントローラの初期状態から始まり、状態遷移にマッピングされたテストパターンを被覆する長さnの経路をテスト系列として決定し、
(ii)決定されたテスト系列に続き、状態遷移にマッピングされたテストパターンを被覆する長さnの経路を決定してテスト系列に追加し、
(iii) 状態遷移にマッピングされたすべてのテストパターンがテスト系列に被覆されるまで、サブステップ(ii)を繰り返すサブステップを含む請求項1記載の方法。 - ステップ(c)は、(iv)サブステップ(iii )において状態遷移にマッピングされたすべてのテストパターンがテスト系列に被覆された後、1つの有効状態から他の有効状態への状態遷移であって、テスト系列に被覆されていないものがあればそれをテスト系列に追加するサブステップをさらに含む請求項2記載の方法。
- (f)ステップ(a)の後、ステップ(b)の前において、テストパターンの集合を構成する複数のビットの中で、いずれの値をとっても故障検出効率に変化のないものをドントケアビットとして特定するステップをさらに具備し、
ステップ(c)は、
(iv)ステップ(ii)の後、ステップ(iii )の前において、テスト系列に被覆されているテストパターンをドントケアビット特定の対象から除外した上で、テストパターンの集合に対してドントケアビットを特定するサブステップをさらに含む請求項2または3記載の方法。 - RTL回路の段階においてコントローラをテスト容易化することによる集積回路のテスト容易化設計装置であって、
コントローラを、コントローラの現在の状態を表わす疑似外部入力と集積回路外部からの外部入力とを入力としてコントローラの次の状態を表わす疑似外部出力と集積回路外部への外部出力とを出力する組み合わせ回路で表し、組み合わせ回路と組み合わせ回路が出力する現在の状態を保持して組み合わせ回路へ供給するレジスタによって到達可能なコントローラの状態を有効状態、到達不可能な状態を無効状態とするとき、
組み合わせ回路をテストするための複数のテストパターンの集合であって各テストパターンが疑似外部入力と外部入力とからなるものを生成する手段と、
複数のテストパターンのうち、コントローラの1つの有効状態から他の有効状態への状態遷移に対応するものを、対応する状態遷移にマッピングする手段と、
状態遷移にマッピングされたすべてのテストパターンを被覆するテスト系列を決定する手段と、
テスト系列の決定の後、状態遷移にマッピングされていないテストパターンがあれば、それを実現する状態遷移をテスト系列に追加する手段と、
テスト系列に基いてテスト容易化済みコントローラを生成する手段とを具備する集積回路のテスト容易化装置。 - テスト系列決定手段は、
nを所定の自然数として、コントローラの初期状態から始まり、状態遷移にマッピングされたテストパターンを被覆する長さnの経路をテスト系列として決定する手段と、
決定されたテスト系列に続き、状態遷移にマッピングされたテストパターンを被覆する長さnの経路を決定してテスト系列に追加する手段と、
状態遷移にマッピングされたすべてのテストパターンがテスト系列に被覆されるまで、テスト系列の追加を繰り返す手段とを含む請求項4記載の装置。 - テスト系列決定手段は、状態遷移にマッピングされたすべてのテストパターンがテスト系列に被覆された後、1つの有効状態から他の有効状態への状態遷移であって、テスト系列に被覆されていないものがあればそれをテスト系列に追加する手段をさらに含む請求項6記載の装置。
- テストパターン集合の生成の後、テストパターンのマッピングの前において、テストパターンの集合を構成する複数のビットの中で、いずれの値をとっても故障検出効率に変化のないものをドントケアビットとして特定する手段をさらに具備し、
テスト系列決定手段は、
テスト系列の追加の後、次の繰り返しの前において、テスト系列に被覆されているテストパターンをドントケアビット特定の対象から除外した上で、テストパターンの集合に対してドントケアビットを特定する手段をさらに含む請求項5記載の装置。 - 請求項1〜4のいずれかに記載の方法をコンピュータに実現させるプログラム。
- 請求項1〜4のいずれか記載の方法により生成されたテスト容易化済みコントローラを具備する集積回路。
- テスト容易化済みコントローラへ与える前記テスト系列を生成するテストパターン発生器と、テスト系列が与えられたコントローラの応答を符号化する符号化ユニットとをさらに具備する請求項10記載の集積回路。
- コントローラの組み合わせ回路をテストする複数のテストパターンを生成し、複数のテストパターンの各々をコントローラの有効状態または無効状態にマッピングし、マッピング結果に基いてテスト容易化済みコントローラおよびテスト系列を生成する方法により生成されたテスト容易化済みコントローラと、該テスト系列を生成するテストパターン発生器と、テスト系列が与えられたコントローラの応答を符号化する符号化ユニットとを具備する集積回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003095388A JP2004302894A (ja) | 2003-03-31 | 2003-03-31 | 集積回路のテスト容易化設計 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003095388A JP2004302894A (ja) | 2003-03-31 | 2003-03-31 | 集積回路のテスト容易化設計 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004302894A true JP2004302894A (ja) | 2004-10-28 |
Family
ID=33407730
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003095388A Pending JP2004302894A (ja) | 2003-03-31 | 2003-03-31 | 集積回路のテスト容易化設計 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004302894A (ja) |
-
2003
- 2003-03-31 JP JP2003095388A patent/JP2004302894A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Cheng et al. | Classification and identification of nonrobust untestable path delay faults | |
US7610539B2 (en) | Method and apparatus for testing logic circuit designs | |
JP2001014298A (ja) | 合成及びレイアウトのオーバーヘッドが少ないsatソルバー・アーキテクチャーを得るための方法及び装置 | |
JP2007516423A (ja) | スケーラブルなスキャンパステスト点挿入技術 | |
JPH08171576A (ja) | Vlsi回路の構成方法および設計方法 | |
TWI351527B (ja) | ||
US20070011543A1 (en) | Test pattern generation method | |
Pomeranz | Static test compaction for delay fault test sets consisting of broadside and skewed-load tests | |
Jervan et al. | Test cost minimization for hybrid BIST | |
Brglez et al. | Automated synthesis for testability | |
JP2865136B2 (ja) | テスト考慮論理合成システム | |
US6708315B2 (en) | Method of design for testability, method of design for integrated circuits and integrated circuits | |
JP2967749B2 (ja) | テスト容易化論理合成システム | |
JP2004302894A (ja) | 集積回路のテスト容易化設計 | |
Sethuram et al. | Zero cost test point insertion technique to reduce test set size and test generation time for structured ASICs | |
Kim et al. | Combinational test generation for various classes of acyclic sequential circuits | |
JP3803283B2 (ja) | 集積回路のテストのための圧縮テストプランの生成、テスト系列生成およびテスト | |
US6253343B1 (en) | Method of design for testability test sequence generation method and semiconductor integrated circuit | |
JP3805298B2 (ja) | 集積回路のテスト容易化設計方法および装置 | |
JP4368355B2 (ja) | テストコントローラ | |
Kanjilal et al. | A partition and resynthesis approach to testable design of large circuits | |
Dobai et al. | SAT-based generation of compressed skewed-load tests for transition delay faults | |
Kanjilal et al. | A synthesis approach to design for testability | |
JP3961006B2 (ja) | 集積回路のテスト容易化設計方法および装置 | |
Kim et al. | Combinational automatic test pattern generation for acyclic sequential circuits |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060913 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060919 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070403 |