JP2000214906A - テスト生成問題解決システム及びテスト生成問題解決方法 - Google Patents

テスト生成問題解決システム及びテスト生成問題解決方法

Info

Publication number
JP2000214906A
JP2000214906A JP11694A JP2000011694A JP2000214906A JP 2000214906 A JP2000214906 A JP 2000214906A JP 11694 A JP11694 A JP 11694A JP 2000011694 A JP2000011694 A JP 2000011694A JP 2000214906 A JP2000214906 A JP 2000214906A
Authority
JP
Japan
Prior art keywords
solution
sub
test generation
dependent
subproblem
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
JP11694A
Other languages
English (en)
Inventor
T Chakuradaa Surimatto
スリマット・ティー・チャクラダー
B Doresuwamii Kiran
キラン・ビー・ドレスワミ―
Surendra K Bommu
スレンドラ・ケイ・ボムー
Rin Jijan
ジジャン・リン
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Publication of JP2000214906A publication Critical patent/JP2000214906A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • G01R31/318392Generation of test inputs, e.g. test vectors, patterns or sequences for sequential circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Feedback Control In General (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【課題】 シーケンス回路に関するテスト生成問題を解
決するための方法を提案する。 【解決手段】 この方法は、原テスト生成問題をより規
模の小さい副問題に再帰的に分割し、副問題が従属関係
にありながらも、1つかそれ以上の従属副問題が特定の
解に対して独立性を有することができ、副問題の解を検
出し、従属副問題が特定の解に対して独立性を有する場
合に、当該副問題の解を再使用し、複数の目標を達成す
るために解決すべき副問題に解がない場合に、対立する
目標の最小サブセットを識別する。

Description

【発明の詳細な説明】
【0001】
【発明が属する技術分野】本発明は複合問題の解決に関
する。本発明は、特に、シーケンス回路に関するテスト
生成問題を解決する方法に関する。本発明は、問題を解
決するための方法、シーケンス回路に関するテスト生成
問題を解決するための方法、シーケンス回路テスト用の
テストベクトルを生成するための方法、テストベクトル
を生成するためのシステム、およびシーケンス回路に関
するテスト生成問題を解決するためのコンピューター・
コードを備えるコンピューター・プログラム製品として
実施される。
【0002】
【従来の技術】複合問題は大規模な制約セットによって
定義されることが多い。シーケンス回路をテストするた
めのテスト生成は、こうした複合問題の一例である。問
題によっては、解を得るための現実的な方法はオンライ
ン解法しかない。図20に、オンライン解法を説明する
フローチャートを示す。これらのオンライン解法による
と、(20.1)および(20.2)で示すように、主
問題の1つの副問題に対応する制約サブセットがまず考
慮される。この副問題について解が導き出される(2
0.3)。こうした副問題の解は主問題の1つの制約サ
ブセットだけを満足するので、「部分解」と呼ばれる。
副問題の部分解が存在しない場合は、主問題自体の解も
ないことは明らかである。この場合は、解の存在を阻む
制約サブセットが識別される(20.4)。
【0003】次に、部分解が主問題のさらに別の制約を
すべて満足するかどうかのチェックが行われる(20.
5)。部分解がこれらの追加の制約を満足する場合は、
部分解自体が主問題の完全解となる(20.6)。当該
副問題に対応する制約の一部を成さない追加の制約を部
分解が満足しない場合、オンライン解法では当該副問題
に関する制約サブセットが増補される。これは、1つか
それ以上の追加の制約を組み込むことによって行われる
(20.7)。オンライン解法では、増補の後、別の部
分解が導き出される。図20のループに示すように、こ
のプロセスは、すべての制約を満足する部分解が導き出
されるか、制約サブセットが部分解を持たないと判断さ
れるまで繰り返される。通常は、すべての制約が考慮さ
れる最終反復のかなり前に、解が検出されるか、解の不
在が確立されるかのいずれかである。
【0004】オンライン解法の一例としては、従来の時
間フレーム展開法が挙げられる。ここで、従来の時間フ
レーム展開法を使用してシーケンステスト生成問題を解
決する場合について考察する。時間フレーム展開法につ
いては、以下の参考文献で詳細に記述されている。G.
R. Puzolu and J.P. Roth,
“A Heuristic Algorithm fo
r the Testing of Asynchro
nous Circuits(非対称回路のテストのた
めのヒューリスティック・アルゴリズム)”, IEE
E Trans. on Computers, p
p. 639−647, Jun. 1971、R.
Marlett, “An Efficient Te
st Generation System for
Sequential Circuits(シーケンス
回路のための効率的なテスト生成システム)”, 23
rdDesign Automation Confe
rence, June1986, pp. 250−
256、H−K.T. Ma, et. al.,
“Test Generation for Sequ
ential Circuits(シーケンス回路のた
めのテスト生成)”, IEEE Trans. on
Computer−Aided Design, V
ol.7,No.10, pp. 1081−109
3, Oct. 1988、M. Schulz an
d E. Auth, “ESSENTIAL: An
Efficient Self−Learning
Test Pattern Generation A
lgorithm For Sequential C
ircuits(基本: シーケンス回路のための効率
的な自己学習テストパターン生成アルゴリズム)”,
1989 International Test C
onference, pp. 28−37、W. C
heng andT. Chakraborty,
“Gentest −− An Automatic
Test Generation System fo
r Sequential Circuits(Gen
test −− シーケンス回路のための自動テスト生
成システム)”, IEEE Computer p
p.43−49, April 1989、D.H.
Lee and S.M.Reddy, “A New
Test Generatin Methodfor
Sequential Circuits(シーケン
ス回路のための新しいテスト生成法)”, Proc.
of International Confere
nce on Computer Aided Des
ign,pp. 446−449, 1991、T.
Niermann and J.Patel, “HI
TEC: A Test Generation Pa
ckage for Sequential Circ
uits(HITEC:シーケンス回路のためのテスト
生成パッケージ)”, European Conf.
on Design Automation 199
1, pp.214−218、およびT. Kelse
y, K. Saluja, andS. Lee,
“An Efficient Algorithm f
orSequential Circuit Test
Generation(シーケンス回路テスト生成の
ための効率的なアルゴリズム)”, IEEE Tra
ns. on Computer, vol.42,
pp. 1361−1371, Nov. 1993。
【0005】
【発明が解決しようとする課題】時間フレーム展開法で
は、シーケンス回路に関するテスト生成問題が副問題に
分割される。各副問題は、対応する時間フレームによっ
て識別される。これらの副問題は互いに独立していな
い。副問題間の従属関係は、ある時間フレームについ
て、状態変数入力によって想定できる(または、想定で
きない)値の組み合わせに制約があるときに生じる。し
かし、ある時間フレームが近傍の時間フレームから受け
るすべての制約を明示的に決定することもまた困難であ
る。さらに、この決定は原テスト生成問題を解決するの
と同程度に困難となることもある。それは、状態変数値
の合法的な組み合わせと違法な組み合わせのすべてを決
定するためには、ときに法外な計算資源が必要となるか
らである。しかも、ターゲットとする故障に関して考慮
しなければならない副問題(時間フレーム)の数が不明
なこともある。こうした事情から、代わりに、(時間フ
レームに対応する)副問題の1つの部分解は、近傍の時
間フレームから受ける制約を無視して決定される。その
結果得られる部分解は、無視された制約を満足しないこ
とがある(例えば、部分解が正当化できない現在状態を
必要とする場合など)。満足されない制約を追加する
と、その副問題の初期制約セットが増補され、これによ
って新たな部分解が導き出される。このことから、シー
ケンステスト生成で使用される時間フレーム展開法がオ
ンライン解法であることは明らかである。
【0006】換言すれば、オンライン解法とは、関連す
る一連の問題P,・・・,Pを解決することによっ
て解を導き出す方法である。ここで、(1) 問題P
(1≦i≦n−1)を定義する制約セットは、問題P
i+1に関する制約セットのサブセットであり、(2)
問題Pi+1に関する制約は、通常、問題Pの解を
導き出す間には不明である。
【0007】Pの解の検出にアルゴリズムを使用でき
る場合は、各P(1≦i≦n)を互いに独立した問題
とみなすことにより、同じアルゴリズムを繰り返し使っ
て問題P,・・・,Pの解を導き出すことができ
る。ただし、これはオンライン解法で解を検出する方法
としては効率的なものではない。
【0008】一般に、問題は副問題に再帰的に区分化す
ることによって解決される。区分化を行うと、以下の2
点を期待できるようになる。
【0009】(1) 副問題を互いに独立して解決する
ことができる。および、(2) 副問題の解を結合し
て、原問題の解を導き出すことができる。
【0010】副問題が互いに独立しているのは、副問題
の解を検出する際にチェックすべき検索スペースが互い
に独立している場合である。ただし、副問題間の独立性
を必須にすると、1つの副問題が原問題と同程度の規模
になる恐れがあることは明らかであろう。
【0011】当業者の間では、オンライン解法で再帰的
な区分化を使用するとさらに別の問題点が発生すること
はよく知られている。問題Pについて管理可能で独立
した区分を導き出すことができたとしても、これらの区
分が問題Pi+1にとっても独立した区分であるとは限
らない。それは、問題Pi+1に組み込まれた追加の制
約によって、P内の独立副問題に従属関係が発生する
可能性があるからである。
【0012】本発明の目的は、前述の問題点を解消した
改良型オンライン問題解法を提供することにある。本発
明の具体的な目的は、区分化された副問題が従属関係を
持つことのできる、シーケンス回路に関するテスト生成
問題を解決するためのオンライン解法を提供することに
ある。本発明の他の具体的な目的は、シーケンス回路テ
スト用のテストベクトルを生成するための改良型生成法
を提供することにある。
【0013】
【課題を解決するための手段】本発明の目的を達成する
ため、下記要件を備えるシーケンス回路に関するテスト
生成問題を解決するための方法が提供される。すなわ
ち、原テスト生成問題をより規模の小さい副問題に再帰
的に分割し、前記副問題が従属関係にありながらも、1
つかそれ以上の前記従属副問題が特定の解に対して独立
性を有することができる。前記副問題の解を検出する。
従属副問題が特定の解に対して独立性を有する場合に、
当該副問題の解を再使用する。および、複数の目標を達
成するために解決すべき副問題に解がない場合に、対立
する目標の最小サブセットを識別する。
【0014】本発明の他の態様は、シーケンス回路をテ
ストするためのテストベクトルを生成する方法であっ
て、前記方法は下記要件を備える。すなわち、テスト生
成問題を識別する。次の決定変数を選択する。当該決定
変数の次の値を選択する。選択された値が無矛盾ラベル
付けに対応するかどうかチェックし、無矛盾ラベル付け
が存在しない場合は、対立セットを戻す。前記チェック
により無矛盾ラベル付けが検出された場合は、以下の3
つのサブステップを実行する。すなわち、(1)テスト
生成問題を副問題に区分化して、前記副問題の各々に本
請求の方法を再帰的に適用する、(2)現在の副問題に
解が存在せず、従属区分が存在する場合は、前記従属区
分をマージする、および(3)現在の副問題に解が存在
せず、従属区分も存在しない場合は、終了する。上記サ
ブステップを実行した後、前記チェックで矛盾ラベル付
けが検出された場合で、変数が現在の区分の一部ではな
い場合に、矛盾ラベル付けを発生させる変数を追加す
る。選択された変数のすべての値について繰り返す。す
べての変数について繰り返す。および、解が検出された
場合は解を戻し、検出されなかった場合は識別された対
立セットを戻す。
【0015】本発明の他の態様は、問題を解決する方法
であって、前記方法は下記要件を備える。すなわち、問
題をより規模の小さい副問題に再帰的に分割し、前記副
問題が従属関係にありながらも、1つかそれ以上の前記
従属副問題が特定の解に対して独立性を有することがで
きる。前記副問題の解を検出する。従属副問題が特定の
解に対して独立性を有する場合に、当該副問題の解を再
使用する。および、複数の目標を達成するために解決す
べき副問題に解がない場合に、対立する目標の最小サブ
セットを識別する。
【0016】本発明の他の態様は、コンピューターを備
えるテスト生成システムであって、前記コンピューター
がCPUとメモリーを有し、前記メモリーが前記システ
ムのコンポーネントを実装することのできる命令を備
え、前記コンポーネントは下記要件を備える。すなわ
ち、テスト生成問題を再帰的に解決するためのテスト生
成問題ソルバーであって、副問題の解が再使用される。
テスト生成問題を受け取り、前記テスト生成問題を副問
題に区分化するための問題パーティショナーであって、
前記副問題が従属関係にあることができ、前記副問題が
特定の問題に対する従属性を有することができる。問題
ソルバーからテスト生成問題を受け取り、無矛盾ラベル
付けが存在するかどうかを判断するための無矛盾ラベル
チェッカー。副問題の前記サブセットの解が存在せず、
副問題の前記サブセットが従属関係にある場合に、副問
題のサブセットをマージするための区分マージャー。お
よび、特定の副問題が解を持つことを阻む目標の対立セ
ットを生成するための対立セット・ジェネレーター。
【0017】本発明のさらに他の態様は、命令を有する
コンピューター読み取り可能媒体を備えるコンピュータ
ー・プログラム製品であって、前記命令はコンピュータ
ーがテスト生成問題を解決することを可能にし、前記命
令が下記要件を備える。すなわち、コンピューターがテ
スト生成問題を再帰的に解決することを可能にするため
のテスト生成問題ソルバーであって、副問題の解が再使
用される。コンピューターがテスト生成問題を受け取
り、前記テスト生成問題を副問題に区分化することを可
能にする問題パーティショナー・コードであって、前記
副問題は従属関係にあることができ、前記副問題は特定
の解に対して従属性を有することができる。コンピュー
ターが問題ソルバーからテスト生成問題を受け取ること
を可能にし、無矛盾ラベル付けが存在するかどうかを判
断するための無矛盾ラベル・チェッカー・コード。副問
題の前記サブセットの解が存在せず、副問題の前記サブ
セットが従属関係にある場合に、コンピューターが副問
題のサブセットをマージすることを可能にする区分マー
ジャー・コード。および、コンピューターが特定の副問
題が解を持つことを阻む目標の対立セットを生成するこ
とを可能にする対立セット・ジェネレーター・コード。
【0018】
【発明の実施の形態】オンライン解法の適用を必要とす
る問題を解決するための新規な手法が提供される。本発
明の手法では、以下を行う新規なオンライン区分化手法
が使用される。
【0019】(1)副問題の部分解を検出する。およ
び、(2)オンライン解法によって解決された連続する
問題の間に存在しうる有意な類似性を認識し、形式化
し、活用する。
【0020】オンライン区分化は、以下の3点において
従来の区分化とは大きく異なる。
【0021】(1)副問題が独立していなくてもよい。
【0022】(2)分岐・結合検索プロセス中に、問題
が数回にわたって再区分化される。
【0023】(3)区分が明示的に計算されない。
【0024】副問題は独立している必要はないので、複
合問題をより小規模で管理可能な副問題に分割すること
ができる。このようなプロセスでは、区分間の従属関係
が検索プロセス中にオンザフライで認識される。検索プ
ロセス中の各決定後に問題が再区分化されるので、大規
模な問題の場合は区分化コストがかなりのレベルとな
る。ただし、すべての区分を明示的に計算する必要がな
いことに留意する必要がある。オンライン区分化は、従
来型区分化が持つ以下の利点を継承している。
【0025】(1)副問題の部分解を容易に結合して、
問題全体の解を得ることができる。および、(2)複数
の同一の副問題が同じ解を共有できる。 (オンライン区分)本発明の第1の実施例について、図
1に示すサンプル回路を使用して説明する。この回路
は、a、b、c、d、eという5個の1次入力を備え
る。この回路は、7個の排他ORゲート1.1〜1.7
を備える。1次出力は、信号1のみである。目標は、信
号j上の0値縮退故障に関するテストを検出することで
ある。0値縮退故障は、特定の信号が、回路の他の部分
が変動しているにもかかわらず値0のまま動かない状態
を示す。この問題は、2個の独立副問題S={a,
b,c,f,g,h,i,j}とS={d,e,k}
に分割される。副問題Sの副目標は、信号jに値1を
取らせる入力a、b、およびcの値を検出することであ
る。第2の副問題の副目標は、信号kに値0または1を
取らせる入力dおよびeの値を検出することである。S
の解が得られると、故障が活動化される。S の解が
得られると、故障の影響が1次出力1に伝搬される。こ
こで、SおよびSは共通の信号を持たないことに留
意する必要がある。そのため、2個の副問題は互いに独
立している。この実施例では、副問題が互いに独立して
いることは明らかである。
【0026】テスト生成問題の区分化は、静的区分化と
して知られている。区分化により以下の3つの利点が得
られる。
【0027】(1)どの副問題にも解が存在しない場
合、故障は冗長である。
【0028】(2)副問題SまたはSを解決するの
は1回だけでよい。および、(3)副問題の解を単純に
構成する(結合する)だけで、原問題の解が得られる。
【0029】このサンプル回路では、副問題Sおよび
の目標を満足する1次入力の値が、当該故障のため
のテストとなる。副問題は互いに独立しているので、ど
んな順序で解決してもよい。Sの解決に分岐・結合プ
ロシージャーを使用する場合、このプロシージャーが検
査しなければならない信号a、b、およびcの値の組み
合わせは、多くて8組である。このサンプル回路では、
副問題Sに解が存在しない。この場合に検索プロシー
ジャーが行うバックトラックは多くて8回である。S
に解が存在しないので、副問題Sを解決する必要はな
い。
【0030】区分化を使用しない場合、原問題を解決す
るための分岐・結合プロシージャーは非常に効率が悪く
なる。ここでも、信号jの0値縮退故障に関するテスト
を検出する問題(図1)について考察する。この解は、
1次入力の値のさまざまな組み合わせを系統だって検査
することによって決定される。この解を検出するため
に、分岐・結合プロシージャーを使用すると想定する。
すべての1次入力は、決定変数である。分岐・結合プロ
シージャーが、d、e、a、b、およびcの順序で決定
変数に値を割り当てると想定する。故障は冗長なので、
5個の決定変数値における32通りの組み合わせはいず
れもテストではない。そのため、解が存在する可能性が
ないことを確立するために、分岐・結合プロシージャー
が必要とするバックトラックは32回にもなりうる。決
定変数a、b、およびcは副問題S の一部であり、変
数dおよびeは副問題Sの一部である。選択された決
定順序により、副問題SはSの前に考慮されること
が暗黙に定義される。分岐・結合プロシージャーは副問
題Sの4個の解を決定する。これは、Sが2個の決
定変数dおよびeを持ち、これらの変数の値のどの組み
合わせもSの解となるからである。副問題SはS
の各解について1回ずつ解決される。そのため、分岐・
結合プロシージャーは副問題Sを4回も解決すること
になる。これとは対照的に、区分化方式では、ワースト
・ケースでも、SまたはSの1個の解について1回
検査するだけでよい。さらに、SまたはSに解がな
い場合、故障は冗長であることが確立される。
【0031】区分化が有利なことは明白である。ただ
し、問題をより小規模な独立副問題に分割できないケー
スが多々ある。図2は、サンプル回路を使用して本発明
の第2の実施例を説明したものである。この回路は6個
の1次入力と1個の1次出力を備える。この回路は、3
個の排他ORゲート2.1〜2.3、2個のORゲート
2.4および2.5、および1個のANDゲート2.6
を備える。ここで、信号g上の0値縮退故障に関するテ
ストベクトルを生成する問題について考察する。ゲート
jはドミネーターなので、故障のない回路ではg=1お
よびh=i=0という信号割り当てを必須割り当てとし
て実行できる。
【0032】次のステップは、1次入力に適切な値を選
択することによって、これらすべての割り当てを正当化
することである。初期区分は、信号{a,b,c,d,
e,f,g,h,i,j}から成る。目標g=1は、信
号{a,b,e}から成る副回路(副問題)Sを考慮
することによって達成できる。目標h=0は、副問題S
={a,b,e}を考慮することによって達成でき
る。目標i=0は、副問題S={b,c,d,f}を
考慮することによって達成できる。副問題SおよびS
は、共通の信号a、b、およびeを有する。これらの
信号への値の割り当ては、両方の副問題の目標を満足す
るように行わなければならない。そのため、副問題S
およびSは互いに独立していない。同様の分析によ
り、副問題S およびSも互いに独立していないこと
が示される。そのため、原問題を静的に独立副問題に小
分割することは不可能である。第2の実施例では、副問
題は互いに独立していない。
【0033】2個の副問題SおよびSは従属関係に
ある。ただし、副問題Sの一部の解については、この
2個の副問題は互いに独立していると考えることができ
る。例えば、副問題Sの解としてd=0が可能であ
る。この解については、信号b、c、またはfの値は副
問題Sにより制約を受けない。そのため、これらの変
数は副問題Sの目標だけを満足する値を取ることがで
きる。よって、Sに解が存在しなければ、原問題にも
解は存在しないと結論付けて安全である。本サンプル回
路の場合、信号aおよびbの値における組み合わせの中
で、目標g=1およびh=0を同時に満足できるものは
ない。Sの解がb=c=0とすると、副問題Sおよ
びSは互いに独立していない。これは、Sが解決さ
れた後に、副問題Sがb=0との想定のもとで解決さ
れるからである。この場合、Sに解が存在しなくて
も、原問題に解が存在しないとは結論付けることはでき
ない。
【0034】本発明のオンライン区分化の主眼は、問題
をより小規模な、従属関係にあることができる副問題に
分割することにある。副問題が独立しているかどうかの
判断は、副問題について検出された特定の解を分析する
ことによって行われる。独立副問題に解が存在しない場
合は、原問題に解が存在しないことが示唆される。ただ
し、副問題Sの特定の解が副問題Sの独立性を示さ
ない場合は、Sに解が存在しないことはSに異なる
解が検出されうることを示唆するにとどまる。(テスト
ベクトルを生成するためのオンライン区分化方法の好適
な実施の形態)図21に、オンライン区分化方法の好適
な実施例のフローチャートを示す。原テスト生成問題2
1.1は、副問題21.2に分割される。21.3で、
アルゴリズムは副問題ごとにループに入る。解決すべき
副問題がさらに存在する場合は、21.4で未解決の副
問題が選択される。ステップ21.5でテストが実行さ
れ、その副問題が解決可能かどうか判断される。選択さ
れた副問題が解決不能な場合は、21.7で対立目標セ
ットが識別される。副問題が解決可能な場合、選択され
た副問題は再帰的に解決される。この副問題の解決にお
いては、従属副問題の解が再使用される。21.9で
は、すべての副問題が解決されたかどうか判断するため
のテストが実行される。すべての副問題が解決されてい
る場合は、21.8で解が戻され、解決されていない場
合は、21.91で対立目標セットが戻される。
【0035】この新規なオンライン区分化手法の一般的
フレームワークは、図25に示すアルゴリズム1に示さ
れている。ここで、1つの例を取り上げて、当該アルゴ
リズムの主プロシージャーについて説明する。図3に示
す回路を、この好適な実施例を説明するための例として
取り上げる。このサンプル回路は、排他ORゲートg1
〜g4およびg6〜g8、ORゲートg5およびg9、
および出力信号yを有する1個のANDゲートを備え
る。1次入力は、a、b、c、d、およびeである。信
号y上の0値縮退故障に関するテストを生成するという
問題があるとする。この問題の決定変数セットは、1次
入力{a,b,c,d,e}である。関数NEXT_D
ECISION_VARIABLE、PARTITIO
N NEXT_UNSOLVED_PARTITIO
N、およびCONSISTENT_LABELING
は、変数と区分の順序付けを決定する検索である。これ
らは、さまざまな方法で実装できる。これらを実際にど
のように実装するかによって、アルゴリズムの実行時間
に劇的な差が生じうる。効率的な実装については本明細
書で後述する。
【0036】アルゴリズム1の挙動は、図4のようなA
ND−ORツリーとしてグラフィカルに描写することが
できる。ツリーの各ノードは、括弧で囲んだ信号リスト
によって示される区分か∧のいずれかである。区分によ
って示されるノードは、ORノードに対応する。ここで
は、各子ノードは、区分の信号に値が割り当てられたと
きに発生する問題を表す。ここでは、各分岐の下で1つ
の解が検出されなければならない。∧で示される各ノー
ドはANDノードを表す。これらのノードの子ノード
は、親決定から生じる区分を示す。ここでは、解決すべ
き問題に関して、これらすべての区分が解決されなけれ
ばならない。太線の矢印は、回路の無矛盾ラベル付けを
表す。「conflict(対立)」のラベルが付けら
れた細線の矢印は、矛盾信号ラベル付けを表す。これら
のラベルに関連付けられた括弧内の信号リストは、矛盾
を引き起こした割り当てのリストを示す。関数CONS
ISTENT_LABELINGが「矛盾」と判断する
とき、このリストが戻されると想定される。
【0037】オンライン解決への最初の呼び出しは、O
NLINE_SOLVE(C={a,e,c,d,
b})である。第2行のNEXT_DECISION_
VARIABLE(c)の呼び出しによって、決定変数
aが戻されると想定する。これは0に設定されているの
で、CONSISTENT_LABELINGは矛盾信
号割り当てを検出しない。第7行でPARTITION
が呼び出され、{e,c}および{d,b}という2個
の区分を戻される。
【0038】次の試行は区分{e,c}に対して行われ
ると想定すると、次の再帰呼び出しはONLINE_S
OLVE{e,c}である。この区分は、以降の再帰呼
び出しでeを0に、続いてcを0に設定することにより
解決される。このプロセスは、図4のAND−ORツリ
ーにおける左側の分岐に対応する。
【0039】次の試行は区分C={d,b}に対して行
われる。NEXT_DECISION_VARIABL
E(c)が、決定変数dを戻すと想定する。dを0に設
定すると、CONSISTENT_LABELINGは
g7上で対立項は{d,e}を持つ対立を検出する。制
御は第20行に転送される。この対立項には区分の一部
を成すdが含まれているので、関数VARIABLE_
INDEPENDENT_PARTITIONは偽を戻
す。制御は第4行に転送され、dが1に設定される。関
数CONSISTENT_LABELINGはg8上の
矛盾を戻す。ここでも対立項は{d,e}である。この
対立項は、現在の区分{d,b}のメンバーであるdを
含むので、関数VARIABLE_INDEPENDE
NT_PARTITIONは偽を戻す。上記は、図4の
AND−ORツリーのa=0,d=1分岐上にグラフィ
カルに描かれている。
【0040】変数dの両方の値に対する試行が完了して
いるので、第4行のテストはVva lueに対してNU
LLを戻す。これにより、第10行でONLINE_S
OLVE{d,b}がNOを戻す。この時点で、区分
{d,b}は区分{e,c}に従属していることが判明
する。そのため、これらの区分は第14行でマージされ
る。制御は第9行に移動する。ここでは、先ほどマージ
された区分の解の検出が試行される。ONLINE_S
OLVE(e,c,d,b)が呼び出される。これは、
適応区分化の一例である。区分化の決定が行われたとき
には、{e,c}と{d,b}間の区分従属関係は明ら
かではなかった。この従属関係は後の段階で検出され、
その時点で区分のマージが実行された。続いて、このマ
ージされた区分について解の検出が試行される。このマ
ージは、図4内の対応するORノードの隣にアスタリス
クを付けることによって示される。
【0041】次の再帰呼び出しは、ONLINE_SO
LVE(C={e,c,d,b})である。第2行のN
EXT_DECISION_VARIABLE(c)が
eを戻すと想定する。信号eはその後0 に設定される
(第4行のNEXT_VALUE(e))。続いて、第
7行のPARTITION(C={e,c,d,b})
が2つの区分{c}および{d,b}を戻す。次に
{c}が選択されると想定すると、変数cが0に設定さ
れ、それにより無矛盾ラベル付けが発生する。次の試行
は区分{d,b}に対してなされる。dへのいずれの割
り当ても、矛盾ラベル付けを発生させる結果となる。C
ONSISTENT_LABELINGへのいずれの呼
び出しでも、cから独立した対立セットが戻される。そ
のため、この区分化の失敗は、その兄弟区分から独立し
ていると考えられる。そのため、親区分へのバックトラ
ックが行なわれ、次に信号e上で1の値について試行が
なされる。以上は、区分が独立しており、解が存在しな
いことを確立するために構成要素の信号の全組み合わせ
について試行する必要がないケースの説明である。
【0042】eを1に設定すると、同じ2つの区分
{c}および{d,b}が発生する。ここで、区分
{d,b}の失敗は区分{c}に従属すると考えられ
る。その結果、この兄弟区分はマージされる。次に行わ
れる再帰呼び出しは、ONLINE_SOLVE(C=
{c,d,b})である。これも、{c}と{b,d}
間の区分従属関係が事前に明らかとなっていないケース
である。よって、対立により従属関係が明らかになる
と、従属区分がマージされる。
【0043】図4には、制御フローのその他の部分も描
かれている。次に試行されるのは、マージされた区分
{c,d,b}である。最終解は、図4の右端の分岐に
描かれている。最終信号割り当ては、a=1,b=0,
c=0,d=1、e=1である。この値の割り当てが、
出力信号y上の0値縮退故障に関するテストを構成す
る。
【0044】(テストベクトルを生成するためのオンラ
イン区分化方法の効率的な実装を示すもっとも好適な実
施例)図26に示すアルゴリズム2は、オンライン区分
化の概念の効率的な実装を示すもっとも好適な実施例を
示している。この実装では、特に、従属関係にありうる
区分が特定の解に対して有する独立性を決定および活用
し、その区分を再使用する方法が記述されている。
【0045】アルゴリズム2は、汎用オンライン区分化
アルゴリズムの効率的な実装を提供する。ここでは、特
定の解に対する独立性を効率的に実装するために必要な
主要データ構造、区分の解の再使用、および初期目標の
対立目標の選択について説明する。区分化概念の中核を
成す主データ構造は、partitiondb(区分の
データベース)と呼ばれる。これは、有向グラフとして
実装される。グラフ内の各ノードは、その親によって暗
黙に定義される。そのため、ソース・ノードは決定ポイ
ントである。したがって、このグラフ内の連結されたコ
ンポーネントは、回路内の関連区分に対応する。
【0046】このアルゴリズムは関数BACKTRAC
KおよびPARTITION_REUSEを使用する。
これらの関数にはこの新規な手法の核心部分が組み込ま
れている。これらの関数に可能な実装を、図27のアル
ゴリズム3、および図28のアルゴリズム4に示す。そ
の他の関数の実装については、文脈から明らかであろ
う。この節の残りの部分では、これらの関数について説
明する。
【0047】関数NEXT_DECISION_VAR
は、決定変数をピックするために使用される。この関数
は、Merged_partitiondbの内容に従
って変数をピックする。このデータベースは、非結合セ
ットのツリー・ベース実装であると想定される。Mer
ged_partitiondbには、検索プロセスに
おける対立によって関連付けられた区分のセットが保持
される。関数NEXT_DECISION_VARは、
Stackの現在の最上位と同じセットに帰属する、未
だ割り当てられていない変数を戻そうとする。これによ
り、可能な限り同じ区分から、連続する変数が確実にピ
ックされるようになる。
【0048】この例では、関数NEXT_DECISI
ON_VARは、Merged_partition
dbの内容により次にピックすべき特定の変数が暗黙に
定義されていなければ、デフォルトの変数順序でa、
e、c、d、bの順序に従ってピックする。
【0049】関数CONSISTENT_LABELI
NGは、決定が回路内の矛盾する信号割り当てセットを
発生させる状況を検出するために呼び出される。この例
の趣旨においては、この関数は、純粋に回路上のシミュ
レーション調整パスのセットとして実装されると想定さ
れる。この関数が回路内で信号割り当てを検出すると、
常に、有向弧がpartitiondbに追加される。
これを行うためには、関数ADD_TO_PARTIT
ION_DBが呼び出される。これらの弧は、新規な区
分従属関係セットが検出されたことを示す。
【0050】関数CONSISTENT_LABELI
NGが矛盾する信号割り当てセットを検出すると、常
に、関数BACKTRACKが呼び出される。BACK
TRACKは、対立分析を実装する。この関数は、pa
rtitiondbの内容を使用して、現在の対立を取
消すために再解決されなければならない区分の最大数を
決定する。これは、最初にDEPENDENT_PAR
TITIONSを呼び出し、次にMOS_RECENT
_PARTITIONを呼び出すことによって行われ
る。また、BACKTRACKは、関数PARTITI
ON_REUSEを呼び出すことによって、Stack
を再編成してこの情報を組み込む。
【0051】関数PARTITION_REUSEは、
現在の対立により暗黙に定義される関連区分から独立し
た区分を決定する。この関数は、区分が再使用に適格と
なるために満足しなければならない2つの条件を実装す
る。例を使用して、これらの条件について説明する。
【0052】関数MERGE_PARTITIONS
は、回路内の各対立の後に呼び出される。この関数は、
現在対立している区分のセットを使用して、Merge
d_partitiondb内の情報を更新する。
【0053】関数SET_VALUEおよびUNSET
_VALUEは、信号値で構造をカプセル化する。関数
FIRST_VALUEおよびNEXT_VALUE
は、決定変数の連続する値割り当てをステップスルーす
るために使用される。
【0054】ここで再び、信号y上の0値固定故障に関
するテストを生成する問題について考察する(図3)。
この例では、テストは信号g4、g8、およびg7に値
1を想定する必要がある。
【0055】図5〜19は、それぞれ2つの部分に分か
れている。各図の左半分は、Stackデータ構造の内
容を示し、右半分はpartitiondbの状態を示
す。図6〜19はそれぞれ、図26に示すアルゴリズム
2における最外部ループの1回の反復に対応する。
【0056】図5は、最外部ループを1回目から3回目
まで反復した後のデータ構造の状態を示す。この場合、
3回のいずれの決定も対立とはならない。各回の反復に
おける実行パスは、アルゴリズム2の第4、5、6、
7、19、20、および21行に対応する。信号eを0
に設定した後にCONSISTENT_LABELIN
Gを呼び出すと、g9がa0に割り当てられた。これに
より、partitiondbがeおよびcからg9ま
での弧によって増補される結果となった。
【0057】次にNEXT_DECISION_VAR
IABLEを呼び出すと、変数順序に従ってdが戻され
る。ここで、dは第6行の0(FIRST_VALU
E)に設定される。その後、CONSISTENT_L
ABELINGが呼び出され、シミュレーションによっ
て信号g5、g6、g7、g8が決定される。区分デー
タベースは、これらの固定を示すために増補される。図
6は、Stackとpartitiondbの対応する
状態を示す。必須割り当てによってg7およびg8は1
でなければならないことが示されているので、g7とg
8を0に割り当てると、矛盾した信号割り当てセットが
発生する。ほとんどの実装システムは、最初に決定され
た対立で停止する。この例の趣旨においては、最初に検
出された対立はg7上にあると想定される。変数con
flictは、無矛盾ラベル付けによってYESに設定
される。また、conflicting_values
はg7に設定される。制御は、ルーチンBACKTRA
CKに転送される。BACKTRACKの第4行でDE
PENDENT_PARTITIONSを呼び出すと、
{d,e}が戻される。これは、区分データベースか
ら、g7の値を決定するために必要とされる区分はeと
dだけであることが明らかなためである。MOST_R
ECENT_PARTITIONを呼び出すとdが戻さ
れ、制御はPARTITION_REUSEに転送され
る。この場合、mrpはStackの最上位と同じなの
で、制御は第17行のPARTITION_REUSE
に転送される。これによりdの値が値テーブル内で設定
解除され、partitiondb内のdに対応する弧
が削除される。制御は、アルゴリズム2の第16行に戻
される。これにより、{d,e}がMerged_pa
rtitiondbに追加される。第19行では、dが
NEXT_VALUEの1に設定される。第20行で、
eからdまでの弧がpartitiondbに追加され
る。これは、区分dの値が区分eによって完全に決定さ
れたことを示す。
【0058】この時点で、partitiondbが同
様の制御フローによって図7のように増補される。今回
は、CONSISTENT_LABELINGが信号g
8上の対立を決定する。ここでは、関数DEPENDE
NT_PARTITIONSがeを戻す。PARTIT
ION_REUSEが、mrp=eと共に呼び出され
る。制御は、partion_list{d,c}を持
つ第9行に到達する。設定delete_setは、e
を保持している。続いて第10行でpartition
_listの各要素がチェックされ、再使用が可能かど
うかが判断される。テストCHILDは、wをdele
te_setの各要素と比較して、そのペアによって固
定が導き出されるかどうか判断する。partitio
dbの有向グラフ実装では、これはそのペアの各ノー
ドから深度1の走査となる可能性がある。検査対象の区
分が現在の対立によって暗黙に定義された区分関係から
独立している場合は、このような固定は存在しないはず
である。テストANCESTORは、partitio
db内のwの祖先のうち現在delete_set内
にあるものがあるかどうかを判断するためのチェックを
行う。delete_set内に祖先が1つでもある
と、区分は独立していないことになる。この場合、区分
cは、eと結合して固定g9を生成しているので、再使
用はできない(すなわち、CHILD({c,e})=
g9)。ANCESTOR(d)==eなので、par
titiondbから区分dを使用することはできな
い。そのため、d、c、およびeは設定解除され、区分
データベースpartitiondbから削除される。
第20行で変数eはスタック上にプッシュバックされ、
制御はアルゴリズム2の第13行に転送される。アルゴ
リズム2の第22行では、partitiondbとス
タックは図8の状態となる。
【0059】次に、Merged_partition
db内に区分セット{d,e}が存在するという事実を
利用するために、NEXT_DECISION_VAR
IABLEを呼び出す。現在、Stackの最上位はe
なので、NEXT_DECISION_VARIABL
Eはdを戻す。それは、dとeは以前は従属関係にある
区分だったからである。ここでは、区分分析によって、
変数順序付けが強制的に変更されている。デフォルトの
変数順序付けであればdではなくcがピックされていた
はずである。変数dは0(FIRST_VALUE)に
設定され、CONSISTENT_LABELINGの
呼び出しによって、partition dbが図9のよ
うに増補される。g7およびg8上で対立が検出され
る。いずれかが検出されると、BACKTRACKの呼
び出しによってdep_partionsが{d,e}
に設定される。アルゴリズム2内の第20行での呼び出
しによって、partitiondb内にeからdまで
の弧が発生する。CONSISTENT_LABELI
NGの呼び出しが実行されると、図10のようなpar
titiondbとなる。
【0060】図11〜16は、Stack上に変数dお
よびcを追加すると実行されるオンライン区分化プロセ
スを示したものである。cを1に設定した後に呼び出さ
れる関数CONSISTENT_LABELINGは、
g4上の対立を検出する。これは図16に示されてい
る。これに対応するBACKTRACKへの呼び出しに
よって、mrpが{a}であることが検出される。関数
PARTITION_REUSEが呼び出される。PA
RTITION_REUSEの第2行で変数delet
e_setがaに初期化され、第9行でpartion
_listが{e,d,b,c}を格納する。変数cお
よびbはANCESTORテストに不合格となるので、
後退されなければならない。変数dおよびeはいずれも
テストに合格するので、再使用できる。PARTITI
ON_REUSEを呼び出した後のStackは、図1
7のようになる。従来の分岐・結合解法では、a上の新
規な値に対する試行の前に、dおよびeの影響が解消さ
れる。一方、オンライン区分化法では、dとeの含意は
解消されない。図18および19は、アルゴリズム2の
最外部ループにおける以後2回の反復を示したものであ
る。決定変数cおよびbがピックされる。図19では、
対立は検出されず、故障の検出に有効な値の割り当てが
取得されている。 (テスト生成システム)図22に、テスト生成システム
の好適な実施例を示す。このテスト生成システムは、コ
ンピューターを備える。ここで、コンピューターは、P
C、メインフレーム、ワークステーション、ネットワー
ク上のリモート・コンピューターなど、どんな種類でも
よいことに留意する必要がある。このコンピューター
は、CPU22.1およびメモリー22.2を備える。
メモリーは、コンピューターがテスト生成システムの各
種コンポーネントを実装することを可能にする命令を保
持している。テスト生成システムのコンポーネントに
は、副問題の解が再使用されるテスト生成問題を再帰的
に解決するテスト生成問題ソルバー22.21が含まれ
る。問題パーティショナー22.22は、テスト生成問
題を受け取り、前記テスト生成問題を副問題に区分化す
る。これらの副問題は従属関係にあってもよい。これら
の副問題は、従属関係にありながらも、特定の解に対す
る独立性を有することができる。無矛盾ラベルチェッカ
ー22.23は、問題ソルバーからテスト生成問題を受
け取り、無矛盾ラベル付けが存在するかどうかを判断す
る。区分マージャー22.24は、副問題の当該サブセ
ットの解が存在せず、副問題の前記サブセットが従属関
係にある場合に、副問題のサブセットをマージする。最
後に、対立セット・ジェネレーターは、特定の副問題が
解を持つことを阻む目標の対立セットを生成する。 (テスト生成コンピューター・プログラム製品)本発明
の重要な態様は、コンピューター・プログラム製品であ
る。このプログラム製品は、コンピューターがテスト生
成問題を解決することを可能にする命令を有するコンピ
ューター読み取り可能媒体を備える。ここで、コンピュ
ーター読み取り可能媒体は、フロッピー・ディスク、ハ
ード・ディスク、CD、チップ、テープ、大容量記憶装
置付きのカートリッジを含みそれに限定されないどんな
固定媒体でもよいことに留意する必要がある。コンピュ
ーター読み取り可能媒体は、さらに、ネットワークを介
して伝送されるか、インターネットからダウンロードさ
れる命令を備える。命令は、テスト生成問題ソルバー・
コードを備える。問題ソルバー・コードは、コンピュー
ターがテスト生成問題を再帰的に解決することを可能に
する。問題ソルバーは、副問題の解を再使用することが
できる。問題パーティショナー・コードは、コンピュー
ターがテスト生成問題を受け取り、前記テスト生成問題
を副問題に区分化することを可能にする。これらの副問
題は、特定の解に対して従属性を有しながら、従属関係
にあることができる。
【0061】無矛盾ラベル・チェッカー・コードは、コ
ンピューターが問題ソルバーからテスト生成問題を受け
取り、無矛盾ラベル付けが存在するかどうかを判断する
ことを可能にする。区分マージャー・コードは、コンピ
ューターが副問題のサブセットの解が存在せず、副問題
の前記サブセットが従属関係にある場合に、副問題のサ
ブセットをマージする。対立セット・ジェネレーター・
コードは、特定の副問題が解を持つことを阻む目標の対
立セットを生成する。 (実験結果)先の節で説明したオンライン区分化手法
を、推移閉包ベースATPGシステムの一部として実装
した。図23および24に示す表1および2は、それぞ
れ、本発明によるオンライン区分化手法で増補されたA
TPGシステムのパフォーマンスを示す。「Basel
ine system(ベースライン・システム)」と
して示されるカラムは、これらの新規な手法を使用しな
いATPGシステムのパフォーマンスを示す。
【0062】「Total(合計)」のラベルが付けら
れたカラムは、テスト生成が試みられた故障の総数を示
す。カラム「Solved(解決済み)」は、ATPG
システムがテストを生成できたか、UNTESTABL
E(テスト不能)として分類した故障の総数を示す。カ
ラム「Bt(バックトラック)」は、各回路内の故障を
分類しようとする過程でATPGシステムが実行を強い
られたバックトラックの総数を示す。カラム「Time
(時間)」は、ATPGシステムがその回路に費やした
時間の合計である。各故障に与えられた制限時間は1秒
間である。いずれの実験も、300MHz SPARC
プロセッサーを備えるSolarisシステム上で実行
された。最後の3カラムは、新手法の使用によって実現
されたベースライン・システムからの改善をパーセンテ
ージで示す。表1は、ISCAS回路での結果を示す。
表2は、いくつかの生産回路での結果を示す。これらの
回路の規模は、10K〜400Kゲートである。
【0063】本発明のその他の変更態様と異型について
は、前述の開示と教示から当業者には明らかであろう。
したがって、本書では本発明の一部の実施例を具体的に
説明したにすぎないが、本発明の精神と範囲から乖離す
ることなく無数の変更態様を作成できることは明らかで
あろう。
【0064】
【発明の効果】以上説明したように本発明によれば、従
来の問題点を解消した改良型オンライン問題解法を提供
することができる。すなわち、区分化された副問題が従
属関係を持つことのできる、シーケンス回路に関するテ
スト生成問題を解決するためのオンライン解法を実現す
る。さらに、シーケンス回路テスト用のテストベクトル
を生成するための改良型生成法を提供することができ
る。
【図面の簡単な説明】
【図1】 静的区分化を説明するための回路の例を示す
回路図である。
【図2】 従属副問題をともなうオンライン区分化を説
明するための回路の例を示す回路図である。
【図3】 オンライン区分化手法の好適な実施例を説明
するためのサンプル回路を示す回路図である。
【図4】 図25に示されるオンライン解法の好適な実
施例の挙動を説明するためのAND−ORツリーを示す
図である。
【図5】 本発明のテスト生成方法の好適な実施例の実
装における各ステップを経た後のスタックと区分化され
たデータベースの内容を示す図である。
【図6】 本発明のテスト生成方法の好適な実施例の実
装における各ステップを経た後のスタックと区分化され
たデータベースの内容を示す図である。
【図7】 本発明のテスト生成方法の好適な実施例の実
装における各ステップを経た後のスタックと区分化され
たデータベースの内容を示す図である。
【図8】 本発明のテスト生成方法の好適な実施例の実
装における各ステップを経た後のスタックと区分化され
たデータベースの内容を示す図である。
【図9】 本発明のテスト生成方法の好適な実施例の実
装における各ステップを経た後のスタックと区分化され
たデータベースの内容を示す図である。
【図10】 本発明のテスト生成方法の好適な実施例の
実装における各ステップを経た後のスタックと区分化さ
れたデータベースの内容を示す図である。
【図11】 本発明のテスト生成方法の好適な実施例の
実装における各ステップを経た後のスタックと区分化さ
れたデータベースの内容を示す図である。
【図12】 本発明のテスト生成方法の好適な実施例の
実装における各ステップを経た後のスタックと区分化さ
れたデータベースの内容を示す図である。
【図13】 本発明のテスト生成方法の好適な実施例の
実装における各ステップを経た後のスタックと区分化さ
れたデータベースの内容を示す図である。
【図14】 本発明のテスト生成方法の好適な実施例の
実装における各ステップを経た後のスタックと区分化さ
れたデータベースの内容を示す図である。
【図15】 本発明のテスト生成方法の好適な実施例の
実装における各ステップを経た後のスタックと区分化さ
れたデータベースの内容を示す図である。
【図16】 本発明のテスト生成方法の好適な実施例の
実装における各ステップを経た後のスタックと区分化さ
れたデータベースの内容を示す図である。
【図17】 本発明のテスト生成方法の好適な実施例の
実装における各ステップを経た後のスタックと区分化さ
れたデータベースの内容を示す図である。
【図18】 本発明のテスト生成方法の好適な実施例の
実装における各ステップを経た後のスタックと区分化さ
れたデータベースの内容を示す図である。
【図19】 本発明のテスト生成方法の好適な実施例の
実装における各ステップを経た後のスタックと区分化さ
れたデータベースの内容を示す図である。
【図20】 問題を解決するためのオンライン解法を説
明するフローチャートである。
【図21】 本発明によるテスト生成問題の解法の好適
な実施例を説明するフローチャートである。
【図22】 本発明によるテスト生成システムの好適な
実施例を示すブロック図である。
【図23】 ISCASベンチマーク回路に関するオン
ライン区分化の結果を描写する表1を示す図である。
【図24】 生産回路に関するオンライン区分化の結果
を描写する表2を示す図である。
【図25】 本発明によるテスト生成方法の好適な実施
例に関する疑似コードを示す図である。
【図26】 本発明によるテスト生成方法のもっとも好
適な実施例に関する疑似コードを示す図である。
【図27】 本発明によるテスト生成方法のもっとも好
適な実施例で使用されるBACKTRACK関数に関す
る疑似コードを示す図である。
【図28】 本発明によるテスト生成方法のもっとも好
適な実施例で使用されるPARTITION_REUS
E関数に関する疑似コードを示す図である。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 キラン・ビー・ドレスワミ― アメリカ合衆国,ニュージャージー 08540,プリンストン,4 インディペン デンス ウェイ エヌ・イー・シー・ユ ー・エス・エー インク内 (72)発明者 スレンドラ・ケイ・ボムー アメリカ合衆国,ニュージャージー 08540,プリンストン,4 インディペン デンス ウェイ エヌ・イー・シー・ユ ー・エス・エー インク内 (72)発明者 ジジャン・リン アメリカ合衆国,アイオワ 52246,アイ オワシティ,1512 ダーウェンドライブ アイオワ大学内

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 シーケンス回路に関するテスト生成問題
    を解決する方法であって、下記ステップを備える。 a) 原テスト生成問題をより規模の小さい副問題に再
    帰的に分割し、前記副問題が従属関係にありながらも、
    1つかそれ以上の前記従属副問題が特定の解に対して独
    立性を有することができる。 b) 前記副問題の解を検出する。 c) 従属副問題が特定の解に対して独立性を有する場
    合に、当該副問題の解を再使用する。および、 d) 複数の目標を達成するために解決すべき副問題に
    解がない場合に、対立する目標の最小サブセットを識別
    する。
  2. 【請求項2】 シーケンス回路をテストするためのテス
    トベクトルを生成する方法であって、前記方法は下記ス
    テップを備える。 a) テスト生成問題を識別する。 b) 次の決定変数を選択する。 c) ステップbの決定変数に関する次の値を選択す
    る。 d) ステップbで選択された値が無矛盾ラベル付けに
    対応するかどうかチェックし、無矛盾ラベル付けが存在
    しない場合は、対立セットを戻す。 e) ステップdのチェックにより無矛盾ラベル付けが
    検出された場合は、以下のサブステップを実行する。 i) テスト生成問題を副問題に区分化して、前記副問
    題の各々に本請求の方法を再帰的に適用する。 ii) 現在の副問題に解が存在せず、従属区分が存在
    する場合は、従属区分をマージする。 iii) 現在の副問題に解が存在せず、従属区分も存
    在しない場合は、ステップcに進む。 f) 前記チェックで矛盾ラベル付けが検出された場合
    で、変数が現在の区分の一部ではない場合に、矛盾ラベ
    ル付けを発生させる変数を追加する。 g) 選択された変数のすべての値についてc〜fを繰
    り返す。 h) すべての変数についてb〜gを繰り返す。およ
    び、 i) 解が検出された場合は解を戻し、検出されなかっ
    た場合は識別された対立セットを戻す。
  3. 【請求項3】 問題を解決する方法であって、前記方法
    は下記ステップを備える。 a) 問題をより規模の小さい副問題に再帰的に分割
    し、前記副問題が従属関係にありながらも、1つかそれ
    以上の前記従属副問題が特定の解に対して独立性を有す
    ることができる。 b) 前記副問題の解を検出する。 c) 従属副問題が特定の解に対して独立性を有する場
    合に、当該副問題の解を再使用する。および、 d) 複数の目標を達成するために解決すべき副問題に
    解がない場合に、対立する目標の最小サブセットを識別
    する。
  4. 【請求項4】 コンピューターを備えるテスト生成シス
    テムであって、前記コンピューターがCPUとメモリー
    を有し、前記メモリーが前記システムのコンポーネント
    を実装することのできる命令を備え、前記コンポーネン
    トは下記要件を備える。テスト生成問題を再帰的に解決
    するためのテスト生成問題ソルバーであって、副問題の
    解が再使用されるテスト生成問題ソルバー、 テスト生
    成問題を受け取り、前記テスト生成問題を副問題に区分
    化するための問題パーティショナーであって、前記副問
    題が従属関係にあることができ、前記副問題が特定の問
    題に対する従属性を有することができる問題パーティシ
    ョナー、 問題ソルバーからテスト生成問題を受け取り、無矛盾ラ
    ベル付けが存在するかどうかを判断するための無矛盾ラ
    ベルチェッカー、 副問題の前記サブセットの解が存在せず、副問題の前記
    サブセットが従属関係にある場合に、副問題のサブセッ
    トをマージするための区分マージャー、及び特定の副問
    題が解を持つことを阻む目標の対立セットを生成するた
    めの対立セット・ジェネレーター。
  5. 【請求項5】 命令を有するコンピューター読み取り可
    能媒体を備えるコンピューター・プログラム製品であっ
    て、前記命令はコンピューターがテスト生成問題を解決
    することを可能にし、前記命令が下記要件を備える。コ
    ンピューターがテスト生成問題を再帰的に解決すること
    を可能にするためのテスト生成問題ソルバー・コードで
    あって、副問題の解が再使用されるテスト生成問題ソル
    バー・コード、 コンピューターがテスト生成問題を受け取り、前記テス
    ト生成問題を副問題に区分化することを可能にする問題
    パーティショナー・コードであって、前記副問題は従属
    関係にあることができ、前記副問題は特定の解に対して
    従属性を有することができる問題パーティショナー・コ
    ードであって、 コンピューターが問題ソルバーからテスト生成問題を受
    け取ることを可能にし、無矛盾ラベル付けが存在するか
    どうかを判断するための無矛盾ラベル・チェッカー・コ
    ード、 副問題の前記サブセットの解が存在せず、副問題の前記
    サブセットが従属関係にある場合に、コンピューターが
    副問題のサブセットをマージすることを可能にするため
    の区分マージャー・コード、及びコンピューターが特定
    の副問題が解を持つことを阻む目標の対立セットを生成
    することを可能にするための対立セット・ジェネレータ
    ー・コード。
JP11694A 1999-01-20 2000-01-20 テスト生成問題解決システム及びテスト生成問題解決方法 Pending JP2000214906A (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US11658399P 1999-01-20 1999-01-20
US09/389,591 US6378096B1 (en) 1999-01-20 1999-09-03 On-line partitioning for sequential circuit test generation
US09389591 1999-09-03
US60116583 1999-09-03

Publications (1)

Publication Number Publication Date
JP2000214906A true JP2000214906A (ja) 2000-08-04

Family

ID=26814389

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11694A Pending JP2000214906A (ja) 1999-01-20 2000-01-20 テスト生成問題解決システム及びテスト生成問題解決方法

Country Status (2)

Country Link
US (1) US6378096B1 (ja)
JP (1) JP2000214906A (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7234726B2 (en) * 2004-12-16 2007-06-26 Visteon Global Technologies, Inc. Airbag assembly for improving force distribution
US7376876B2 (en) * 2004-12-23 2008-05-20 Honeywell International Inc. Test program set generation tool
US9720792B2 (en) 2012-08-28 2017-08-01 Synopsys, Inc. Information theoretic caching for dynamic problem generation in constraint solving
US11468218B2 (en) 2012-08-28 2022-10-11 Synopsys, Inc. Information theoretic subgraph caching
US8904320B2 (en) 2013-03-13 2014-12-02 Synopsys, Inc. Solving multiplication constraints by factorization

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5559811A (en) * 1994-09-14 1996-09-24 Lucent Technologies Inc. Method for identifying untestable and redundant faults in sequential logic circuits.
US5657240A (en) * 1995-05-01 1997-08-12 Nec Usa, Inc. Testing and removal of redundancies in VLSI circuits with non-boolean primitives
US5875196A (en) * 1997-01-03 1999-02-23 Nec Usa, Inc. Deriving signal constraints to accelerate sequential test generation
US6163867A (en) * 1998-08-28 2000-12-19 Hewlett-Packard Company Input-output pad testing using bi-directional pads

Also Published As

Publication number Publication date
US6378096B1 (en) 2002-04-23

Similar Documents

Publication Publication Date Title
Zhao et al. Static logic implication with application to redundancy identification
Kunz et al. Recursive learning: a new implication technique for efficient solutions to CAD problems-test, verification, and optimization
Van Eijk Sequential equivalence checking based on structural similarities
US5377197A (en) Method for automatically generating test vectors for digital integrated circuits
KR100337696B1 (ko) 모델 검사를 위한 동작 환경을 자동적으로 생성하는 방법
Tafertshofer et al. A SAT-based implication engine for efficient ATPG, equivalence checking, and optimization of netlists
Schulz et al. Parallel pattern fault simulation of path delay faults
US20080109776A1 (en) Method and System for Enhanced Verification by Closely Coupling a Structural Overapproximation Algorithm and a Structural Satisfiability Solver
US5491639A (en) Procedure for verifying data-processing systems
Tafertshofer et al. Igraine-an implication graph-based engine for fast implication, justification, and propagation
Lee et al. A new ATPG algorithm to limit test set size and achieve multiple detections of all faults
US7047139B2 (en) Sharing information between instances of a propositional satisfiability (SAT) problem
KR20180112725A (ko) 장애 지점을 검출하기 위한 장치 및 방법
Tafertshofer et al. SAT based ATPG using fast justification and propagation in the implication graph
JP2001337143A (ja) 論理回路における故障箇所推定システム、及び、故障箇所推定方法、並びに、記録媒体
JP2000214906A (ja) テスト生成問題解決システム及びテスト生成問題解決方法
Bychko et al. Automation of anti-race state encoding of asynchronous FSM for robust systems
JP2001021618A (ja) 故障伝搬経路推定方法、故障伝搬経路推定装置及び記録媒体
Tekumalla et al. Identification of primitive faults in combinational and sequential circuits
Bosio et al. A comprehensive framework for logic diagnosis of arbitrary defects
Syal et al. A novel, low-cost algorithm for sequentially untestable fault identification
Oh et al. Efficient logic-level timing analysis using constraint-guided critical path search
Mongelli et al. Accelerating Cell-Aware Model Generation for Sequential Cells using Graph Theory
JP3863423B2 (ja) 論理回路の故障箇所推定方法、および、論理回路の故障箇所推定プログラム
JPH063420A (ja) 組み合わせ論理回路のテストパタン生成方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040225

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040426

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041118

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050408