JP5794027B2 - テストパターン生成装置,テストパターン生成方法およびテストパターン生成プログラム - Google Patents
テストパターン生成装置,テストパターン生成方法およびテストパターン生成プログラム Download PDFInfo
- Publication number
- JP5794027B2 JP5794027B2 JP2011169010A JP2011169010A JP5794027B2 JP 5794027 B2 JP5794027 B2 JP 5794027B2 JP 2011169010 A JP2011169010 A JP 2011169010A JP 2011169010 A JP2011169010 A JP 2011169010A JP 5794027 B2 JP5794027 B2 JP 5794027B2
- Authority
- JP
- Japan
- Prior art keywords
- arithmetic processing
- processing unit
- request value
- test pattern
- value
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/31813—Test pattern generators
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Tests Of Electronic Circuits (AREA)
Description
各入力ステートは、試験対象回路で発生しうる故障を検出するために当該試験対象回路の入力点に設定すべき値(以下、要求値という)であり、ATPG(Automatic Test Pattern Generator)により生成される。上記入力点は、例えばデータイン端子(Primary-input)やスキャンラッチ(Scan-input)等である。
上述したテストパターンを用いた試験では、試験対象回路の入力点に要求値を設定して当該試験対象回路を動作させ、当該試験対象回路からの応答値が取得される。そして、取得された応答値が上記期待値と一致する場合、試験結果は「良」と判定される一方、取得された応答値が上記期待値と一致しない場合、試験結果は「否」と判定される。このような試験が、図11に示す試験工程では、ステップS102,S106,S110で行なわれる。
回路分割技術では、ネットリストとネットに属する故障集合との両方を分割した回路モデルが用意され、各回路モデルについて複数の計算機により並列にテストパターンが生成され、各回路モデルについて生成されたテストパターンのマージが行なわれる。
なお、前記目的に限らず、後述する発明を実施するための最良の形態に示す各構成により導かれる作用効果であって、従来の技術によっては得られない作用効果を奏することも本件の他の目的の一つとして位置付けることができる。
〔1〕一般的なテストパターン生成装置
まず、図9および図10を参照しながら、並列処理によってテストパターンの生成を行なう一般的なテストパターン生成装置100の機能構成および動作について簡単に説明する。なお、図9は一般的なテストパターン生成装置100の機能構成を示すブロック図、図10は、図9に示すテストパターン生成装置100の動作を説明するためのフローチャートである。
また、各スレーブ110には、分割回路データベース115が付設されている。分割回路データベース115は、後述する回路分割部121aによって分割され各スレーブ110に割り当てられた回路のネットリスト,故障情報などを格納する。
ATPG111aは、分割回路データベース115の情報に基づいて、分割した回路毎に、当該回路で発生しうる故障を検出するために当該回路の入力点に設定すべき要求値を生成する。ATPG111aは、マスタ120からの開始信号を受けて動作を開始し、図10を参照しながら後述する処理(ステップA21〜A27)を実行する。
ATPG111aで得られた要求値と、故障シミュレータ111bで得られた期待値とは、当該回路のテストパターンとして各スレーブ110からマスタ120へ送信される。このとき、テストパターンによって検出される故障、つまり検出故障に関する情報も、各スレーブ110からマスタ120へ送信される。
回路分割部121aは、回路データベース125に格納された試験対象回路全体の情報に基づき、試験対象回路を複数の回路に分割する。なお、分割後の複数の回路は、一部重複し、共通の入力点を有する可能性がある。各分割した回路の情報は、当該回路の処理を割り当てられたスレーブ110の分割回路データベース115に格納される。
マージ部121dは、各スレーブ110の故障シミュレータ111bから受信した、分割回路についてのテストパターンをマージし、試験対象回路全体のテストパターンを生成しテストパターンデータベース126に保存する。
まず、マスタ120の回路分割部121aにより、回路データベース125に格納された試験対象回路が、複数の回路に分割される(ステップA10)。分割された回路の情報は、当該回路の処理を割り当てられたスレーブ110の分割回路データベース115に格納される。そして、ATPG制御部121bから、全てのスレーブ110のATPG111aに対し、要求値の生成開始を指示するATPG開始信号が送信される(ステップA11)。
上述したように、図9および図10に示すテストパターン生成装置100では、分割回路のテストパターンが、独立に並列動作する複数のスレーブにおけるATPGにより作成された後、マージされている。
これに対し、後述する本実施形態のテストパターン生成装置1(図1参照)では、スレーブを完全独立に動作させるのではなく、ATPGによる要求値の生成処理中にマスタとスレーブとの間で通信を行なって分割回路間で共通の入力点に設定される要求値のコンフリクトを回避する仕組みがそなえられている。
図1は、本実施形態のテストパターン生成装置1のハードウエア構成および機能構成を示すブロック図である。
図1に示すテストパターン生成装置1は、上述したテストパターン生成装置100と同様、LSI等の試験対象回路を複数の回路に分割し、分割した回路毎のテストパターンを、複数のコンピュータ(演算処理装置)10,20を用いて生成する。テストパターン生成装置1は、複数のスレーブコンピュータ(第1の演算処理装置;以下、単にスレーブという)10と、一つのマスタコンピュータ(第2の演算処理装置;以下、単にマスタという)20とを有している。
また、各スレーブ10には、分割回路データベース15が付設されている。分割回路データベース15は、後述する回路分割部21aによって分割され各スレーブ10に割り当てられた回路のネットリスト,故障情報などを格納する。
処理部11は、テストパターン生成プログラムを含む所定のプログラムを実行することにより、後述するATPG11aおよび故障シミュレータ11bとしての機能を果たす。
送信部13は、処理部11によって制御され、マスタ20へ各種情報(要求値,終了信号,完了信号,検出故障,期待値等)を送信する。
受信部14は、マスタ20から各種情報(開始信号,応答値,コンフリクトを抑制された要求値等)を受信し、処理部11に通知する。
処理部11は、テストパターン生成プログラムを含む所定のプログラムを実行することにより、後述する回路分割部21a,ATPG制御部21b,故障シミュレータ制御部21c,判定部21d,乱数付加部21eおよびマージ部21fとしての機能を果たす。
受信部24は、各スレーブ10から各種情報(要求値,終了信号,完了信号,検出故障,期待値等)を受信し、処理部21に通知する。
また、図3に示すように、一般に任意の観測点スキャンラッチからバックトレースにより回路を分割する場合、共通の入力(図3の重複スキャンイン参照)が、異なる分割回路に重複して登録されることがある。図3に示すような共通入力(重複スキャンイン)に対し、異なる分割回路を担当するスレーブ10毎に異なる要求値が設定されると、つまりコンフリクトが発生すると、テストパタンの増加の原因となる。
ATPG制御部21bは、各スレーブ10のATPG11aの動作を制御するもので、各スレーブ10のATPG11aに対し、要求値の生成開始を指示するATPG開始信号を、送信部23経由で送信する。具体的に、ATPG制御部21bは、後述する判定部21dと連携し、図4および図6を参照しながら後述する処理(ステップS11〜S15およびS141〜S147)を実行する。
各スレーブ10は、ATPG11aにおいて分割回路に含まれる要求対象となる入力点に要求値を設定する際、コンフリクトが発生するか否かを、送信部13および受信部24を介して、マスタ20の判定部21dに問い合わせる。ここで、コンフリクトとは、各スレーブ10のATPG11aが入力点に設定しようとする要求値が、当該入力点に対して他のスレーブ10が設定した要求値と異なる事象のことである。
より具体的に、判定部21dは、要求値バッファ22aにおいて、当該問い合わせに係る要求値を設定される入力点に対応するビットを参照し、当該ビットに保存されている要求値と当該問い合わせに係る要求値とを比較する。
次に、上述のごとく構成されたテストパターン生成装置1の動作について、図4に示すフローチャート(ステップS10〜S30)に従って、図5〜図8を参照しながら説明する。
まず、マスタ20の回路分割部21aにより、回路データベース25に格納された試験対象回路が、図2および図3を参照しながら前述した通り、複数の回路に分割される(ステップS10)。
回路分割部21aは、回路データベース25から、試験対象回路全体の回路モデルを取り込み(ステップS31)、出力状態を期待値として観測すべき試験対象回路の観測点スキャンラッチを、複数のラッチグループに分割する。各ラッチグループには、分割回路のID=1,2,…,n(nは分割数)のいずれか一つが付与される(ステップS32)。
ステップS344において、回路分割部21aは、レベルLの開始点集合から前段ロジックのスキャンラッチまでの1ステージ分のバックトレースを行なう。そして、回路分割部21aは、バックトレースによって到達したスキャンラッチを、次のレベルL=i+1の開始点集合に設定し、トレース範囲をマークする。
この後、マスタ20は、要求値バッファ22aのクリア処理を行なってから(ステップS11)、ATPG制御部21bから、送信部23を介して、全てのスレーブ10のATPG11aに対し、要求値の生成開始を指示するATPG開始信号を送信する(ステップS12)。
ここで、図6に示すフローチャート(ステップS141〜S147,S251〜S254)に従って、図4に示す要求値の同期化処理(ステップS14,S25)について説明する。
このような動作により、選択すべき故障がなくなったスレーブ10において、ATPG11aによる要求値生成処理はスキップされるが、故障シミュレーション処理を実行して期待値を得ることができる。
2つのスレーブ10(Slave#1, Slave#2)が、それぞれ、分割された故障集合における故障f11,f21に対し、要求値を生成した場合の具体例を図7(A)に示す。この図7(A)では、例えば、
Slave#1は故障f11に対し要求値A1={***11*0**}を生成し、
Slave#2は故障f21に対し要求値B1={*1*110***}を生成している。
図7(A)に示す状態では、故障f11に対する要求値A1と故障f21に対する要求値B1との間でコンフリクトは発生していない。したがって、この例の場合、要求値A1と要求値B1とをマージした要求値{*1*1100**}をテストパターンとして用いることができるので、テストパターンの増加は発生しない。
この場合、Slave#1とは完全に独立して並列処理を行なっているSlave#2は、要求値B1に要求値B2を重ね合わせ、要求値B3={*1*1101**}を生成している。このようにSlave#2で生成された要求値B3={*1*1101**}と、他のSlave#1で生成されている要求値A1={***11*0**}との間では、左から7ビット目の要求値が異なっており、コンフリクトが発生している。したがって、これらの要求値A1,B3はマージすることができず、テストパターンの増加が発生する。
このとき、Slave#1が図7(A)に示す要求値A1を生成した時点で、マスタ20の要求値バッファ22aに格納される要求値は、要求値A1と同じ{***11*0**}となっている。この後、Slave#2が図7(A)に示す要求値B1を生成した場合、Slave#2は、要求値B1についてマスタ20に問い合わせを行なう。このとき、上述したように要求値A1と要求値B1との間ではコンフリクトが生じない。したがって、要求値B1には、要求値バッファ22aに格納されている要求値が反映されるとともに、要求値バッファ22aには要求値B1が反映される。つまり、要求値バッファ22aの要求値は{*1*1100**}となり、マスタ20からSlave#2へ返信される要求値も{*1*1100**}となり、要求値の同期化が行なわれる。
このように、本実施形態のテストパターン生成装置1によれば、スレーブ10を完全独立に動作させるのではなく、ATPG11aによる要求値の生成処理中にマスタ20とスレーブ10との間で通信を行なって分割回路間で共通の入力点に設定される要求値のコンフリクトが回避される。
以上、本発明の好ましい実施形態について詳述したが、本発明は、係る特定の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲内において、種々の変形、変更して実施することができる。
なお、上述したスレーブ10におけるATPG11aおよび故障シミュレータ11bとしての機能や、上述したマスタ20における回路分割部21a,ATPG制御部21b,故障シミュレータ制御部21c,判定部21d,乱数付加部21eおよびマージ部21fとしての機能の全部もしくは一部は、コンピュータ(CPU,情報処理装置,各種端末を含む)が所定のアプリケーションプログラム(テストパターン生成プログラム)を実行することによって実現される。
以上の本実施形態を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
集積回路を複数の回路に分割した回路毎のテストパターンを、複数の演算処理装置を用いて生成するテストパターン生成装置であって、
各々いずれかの分割した回路のテストパターンの生成を行なう複数の第1の演算処理装置と、
前記複数の第1の演算処理装置によるテストパターン生成を制御し、各分割した回路に含まれる試験対象回路の故障検出に用いる要求値の設定対象となる入力点毎の要求値を格納する要求値バッファを有する第2の演算処理装置と
を備え、
前記第2の演算処理装置は、前記複数の第1の演算処理装置が要求値の設定対象となる同じ入力点に対してそれぞれ異なる要求値を設定するコンフリクトが発生するか否かを前記要求値バッファに格納された要求値に基づいて判定し、
前記第1の演算処理装置が要求値の設定対象となる入力点に設定しようとする要求値が他の第1の演算処理装置が当該入力点に設定する要求値と異なるコンフリクトが発生すると前記第2の演算処理装置により判定した場合、当該第1の演算処理装置は当該要求値の設定を抑止する
ことを特徴とするテストパターン生成装置。
付記1に記載のテストパターン生成装置であって、
前記第1の演算処理装置は、前記分割した回路に含まれる要求値の設定対象となる入力点に要求値を設定する際、設定しようとする要求値が、当該入力点に対して他の第1の演算処理装置が設定した要求値と異なるコンフリクトが発生するか否かを前記第2の演算処理装置に問い合わせ、
前記第2の演算処理装置は、前記第1の演算処理装置からの問い合わせがあった場合、前記要求値バッファに格納された要求値に基づいて当該問い合わせに係る判定を実行する
ことを特徴とするテストパターン生成装置。
付記2に記載のテストパターン生成装置であって、
前記第2の演算処理装置は、前記第1の演算処理装置からの前記コンフリクトの有無の問い合わせがあった場合、
前記第1の演算処理装置からの問い合わせに係る要求値が、前記要求値バッファに格納された対応する要求値と異なるコンフリクトが発生しない場合、当該問い合わせに係る要求値を、前記要求値バッファに格納された対応する要求値に反映させると共に、当該問い合わせの結果としてコンフリクトが発生しない旨を前記第1の演算処理装置に応答し、
前記第1の演算処理装置からの問い合わせに係る要求値が、前記要求値バッファに格納された対応する要求値と異なるコンフリクトが発生する場合、当該問い合わせの結果としてコンフリクトが発生する旨を前記第1の演算処理装置に応答する
ことを特徴とするテストパターン生成装置。
付記3に記載のテストパターン生成装置であって、
前記第1の演算処理装置は、前記問い合わせの結果としてコンフリクトが発生しない旨を受信すると、前記問い合わせに係る要求値の設定を行なう
ことを特徴とするテストパターン生成装置。
付記3または付記4に記載のテストパターン生成装置であって、
前記第2の演算処理装置は、前記コンフリクトが発生しない場合、前記問い合わせの結果としてコンフリクトが発生しない旨を前記第1の演算処理装置に応答すると共に、前記要求値バッファに格納されている前記入力点毎の要求値を前記第1の演算処理装置に応答し、
前記第1の演算処理装置は、前記要求値バッファに格納されている前記入力点毎の要求値を受信すると、受信した前記入力点毎の要求値に基づき、次の要求値の設定を行なう
ことを特徴とするテストパターン生成装置。
付記1〜付記5のいずれか一項に記載のテストパターン生成装置であって、
前記第2の演算処理装置は、前記複数の第1の演算処理装置が要求値の設定を終了すると、前記要求値バッファにおいて要求値が未設定の入力点に対し乱数を付加してから、前記乱数を付加された、前記要求値バッファにおける前記入力点毎の要求値を前記複数の第1の演算処理装置に送信し、
前記複数の第1の演算処理装置のそれぞれは、前記第2の演算処理装置から、前記乱数を付加された、前記要求値バッファにおける前記入力点毎の要求値を受信すると、受信した前記入力点毎の要求値に基づき、各第1の演算処理装置が担当する前記分割した回路の故障シミュレーションを行ない、当該分割した回路に前記要求値を入力した時の応答値を期待値として取得する
ことを特徴とするテストパターン生成装置。
付記1〜付記6のいずれか一項に記載のテストパターン生成装置であって、
前記第2の演算処理装置は、出力状態を期待値として観測すべき前記集積回路のスキャンラッチを複数のラッチグループに分割し、分割した各ラッチグループからバックトレースを実行することにより、前記集積回路を、前記複数のラッチグループにそれぞれ対応する前記複数の回路に分割し、分割した前記複数の回路をそれぞれ前記複数の第1の演算処理装置に割り当てる
ことを特徴とするテストパターン生成装置。
付記7に記載のテストパターン生成装置であって、
前記第2の演算処理装置は、ダブルパルスによるディレイ試験に対応すべく、前記分割した各ラッチグループから少なくとも2ステージ分のバックトレースを実行する
ことを特徴とするテストパターン生成装置。
集積回路を複数の回路に分割した回路毎のテストパターンを、各々いずれかの分割した回路のテストパターンの生成を行なう複数の第1の演算処理装置と前記複数の第1の演算処理装置によるテストパターン生成を制御する第2の演算処理装置とを用いて生成するテストパターン生成方法であって、
前記第2の演算処理装置は、各分割した回路に含まれる試験対象回路の故障検出に用いる要求値の設定対象となる入力点毎の要求値を、要求値バッファに格納すると共に、前記複数の第1の演算処理装置が要求値の設定対象となる同じ入力点に対してそれぞれ異なる要求値を設定するコンフリクトが発生するか否かを前記要求値バッファに格納された要求値に基づいて判定し、
前記第1の演算処理装置が要求値の設定対象となる入力点に設定しようとする要求値が他の第1の演算処理装置が当該入力点に設定する要求値と異なるコンフリクトが発生すると前記第2の演算処理装置により判定した場合、当該第1の演算処理装置は当該要求値の設定を抑止する
ことを特徴とするテストパターン生成方法。
付記9に記載のテストパターン生成方法であって、
前記第1の演算処理装置は、前記分割した回路に含まれる要求値の設定対象となる入力点に要求値を設定する際、設定しようとする要求値が、当該入力点に対して他の第1の演算処理装置が設定した要求値と異なるコンフリクトが発生するか否かを前記第2の演算処理装置に問い合わせ、
前記第2の演算処理装置は、前記第1の演算処理装置からの問い合わせがあった場合、前記要求値バッファに格納された故障設定値に基づいて当該問い合わせに係る判定を実行する
ことを特徴とするテストパターン生成方法。
付記10に記載のテストパターン生成方法であって、
前記第2の演算処理装置は、前記第1の演算処理装置からの前記コンフリクトの有無の問い合わせがあった場合、
前記第1の演算処理装置からの問い合わせに係る要求値が、前記要求値バッファに格納された対応する要求値と異なるコンフリクトが発生しない場合、当該問い合わせに係る要求値を、前記要求値バッファに格納された対応する要求値に反映させると共に、当該問い合わせの結果としてコンフリクトが発生しない旨を前記第1の演算処理装置に応答し、
前記第1の演算処理装置からの問い合わせに係る要求値が、前記要求値バッファに格納された対応する要求値と異なるコンフリクトが発生する場合、当該問い合わせの結果としてコンフリクトが発生する旨を前記第1の演算処理装置に応答する
ことを特徴とするテストパターン生成方法。
付記11に記載のテストパターン生成方法であって、
前記第1の演算処理装置は、前記問い合わせの結果としてコンフリクトが発生しない旨を受信すると、前記問い合わせに係る要求値の設定を行なう
ことを特徴とするテストパターン生成方法。
付記11または付記12に記載のテストパターン生成方法であって、
前記第2の演算処理装置は、前記コンフリクトが発生しない場合、前記問い合わせの結果としてコンフリクトが発生しない旨を前記第1の演算処理装置に応答すると共に、前記要求値バッファに格納されている前記入力点毎の要求値を前記第1の演算処理装置に応答し、
前記第1の演算処理装置は、前記要求値バッファに格納されている前記入力点毎の要求値を受信すると、受信した前記入力点毎の要求値に基づき、次の要求値の設定を行なう
ことを特徴とするテストパターン生成方法。
付記9〜付記13のいずれか一項に記載のテストパターン生成方法であって、
前記第2の演算処理装置は、前記複数の第1の演算処理装置が要求値の設定を終了すると、前記要求値バッファにおいて要求値が未設定の入力点に対し乱数を付加してから、前記乱数を付加された、前記要求値バッファにおける前記入力点毎の要求値を前記複数の第1の演算処理装置に送信し、
前記複数の第1の演算処理装置のそれぞれは、前記第2の演算処理装置から、前記乱数を付加された、前記要求値バッファにおける前記入力点毎の要求値を受信すると、受信した前記入力点毎の要求値に基づき、各第1の演算処理装置が担当する前記分割した回路の故障シミュレーションを行ない、当該分割した回路に前記要求値を入力した時の応答値を期待値として取得する
ことを特徴とするテストパターン生成方法。
付記9〜付記14のいずれか一項に記載のテストパターン生成方法であって、
前記第2の演算処理装置は、出力状態を期待値として観測すべき前記集積回路のスキャンラッチを複数のラッチグループに分割し、分割した各ラッチグループからバックトレースを実行することにより、前記集積回路を、前記複数のラッチグループにそれぞれ対応する前記複数の回路に分割し、分割した前記複数の回路をそれぞれ前記複数の第1の演算処理装置に割り当てる
ことを特徴とするテストパターン生成方法。
付記15に記載のテストパターン生成方法であって、
前記第2の演算処理装置は、ダブルパルスによるディレイ試験に対応すべく、前記分割した各ラッチグループから少なくとも2ステージ分のバックトレースを実行する
ことを特徴とするテストパターン生成方法。
集積回路を複数の回路に分割した回路毎のテストパターンを生成すべく、各々いずれかの分割した回路のテストパターンの生成を行なう複数の第1の演算処理装置の一つ、もしくは、前記複数の第1の演算処理装置によるテストパターン生成を制御する第2の演算処理装置として、コンピュータを機能させるテストパターン生成プログラムであって、
前記第2の演算処理装置として機能するコンピュータに、
各分割した回路に含まれる試験対象回路の故障検出に用いる要求値の設定対象となる入力点毎の要求値を、要求値バッファに格納すると共に、前記複数の第1の演算処理装置が要求値の設定対象となる同じ入力点に対してそれぞれ異なる要求値を設定するコンフリクトが発生するか否かを前記要求値バッファに格納された要求値に基づいて判定する処理を実行させ、
前記第1の演算処理装置として機能するコンピュータに、
前記第1の演算処理装置が要求値の設定対象となる入力点に設定しようとする要求値が他の第1の演算処理装置が当該入力点に設定する要求値と異なるコンフリクトが発生すると前記第2の演算処理装置により判定した場合、当該要求値の設定を抑止する処理を実行させる
ことを特徴とするテストパターン生成プログラム。
付記17に記載のテストパターン生成プログラムであって、
前記第1の演算処理装置として機能するコンピュータに、
前記分割した回路に含まれる要求対象となる入力点に要求値を設定する際、設定しようとする要求値が、当該入力点に対して他の第1の演算処理装置が設定した要求値と異なるコンフリクトが発生するか否かを前記第2の演算処理装置に問い合わせる処理を実行させ、
前記第2の演算処理装置として機能するコンピュータに、
前記第1の演算処理装置からの問い合わせがあった場合、前記要求値バッファに格納された要求値に基づいて当該問い合わせに係る判定を実行させる
ことを特徴とするテストパターン生成プログラム。
付記18に記載のテストパターン生成プログラムであって、
前記第2の演算処理装置として機能するコンピュータに、
前記第1の演算処理装置からの前記コンフリクトの有無の問い合わせがあった場合、
前記第1の演算処理装置からの問い合わせに係る要求値が、前記要求値バッファに格納された対応する要求値と異なるコンフリクトが発生しない場合、当該問い合わせに係る要求値を、前記要求値バッファに格納された対応する要求値に反映させると共に、当該問い合わせの結果としてコンフリクトが発生しない旨を前記第1の演算処理装置に応答し、
前記第1の演算処理装置からの問い合わせに係る要求値が、前記要求値バッファに格納された対応する要求値と異なるコンフリクトが発生する場合、当該問い合わせの結果としてコンフリクトが発生する旨を前記第1の演算処理装置に応答する、処理を実行させる
ことを特徴とするテストパターン生成プログラム。
付記19に記載のテストパターン生成プログラムであって、
前記第2の演算処理装置として機能するコンピュータに、
前記コンフリクトが発生しない場合、前記問い合わせの結果としてコンフリクトが発生しない旨を前記第1の演算処理装置に応答すると共に、前記要求値バッファに格納されている前記入力点毎の要求値を前記第1の演算処理装置に応答する処理を実行させ、
前記第1の演算処理装置として機能するコンピュータに、
前記要求値バッファに格納されている前記入力点毎の要求値を受信すると、受信した前記入力点毎の要求値に基づき、次の要求値の設定を実行させる
ことを特徴とするテストパターン生成プログラム。
10,110 スレーブコンピュータ(第1の演算処理装置)
11 処理部(CPU)
11a,111a ATPG
11b,111b 故障シミュレータ
12 記憶部
13 送信部
14 受信部
15,115 分割回路データベース
20,120 マスタコンピュータ(第2の演算処理装置)
21 処理部(CPU)
21a,121a 回路分割部
21b,121b ATPG制御部
21c,121c 故障シミュレータ制御部
21d,121d マージ部
21e 判定部
21f 乱数付加部
22 記憶部
22a 要求値バッファ
23 送信部
24 受信部
25,125 回路データベース
26,126 テストパターンデータベース
Claims (10)
- 集積回路を複数の回路に分割した回路毎のテストパターンを、複数の演算処理装置を用いて生成するテストパターン生成装置であって、
各々いずれかの分割した回路のテストパターンの生成を行なう複数の第1の演算処理装置と、
前記複数の第1の演算処理装置によるテストパターン生成を制御し、各分割した回路に含まれる試験対象回路の故障検出に用いる要求値の設定対象となる入力点毎の要求値を格納する要求値バッファを有する第2の演算処理装置と
を備え、
前記第2の演算処理装置は、前記複数の第1の演算処理装置が要求値の設定対象となる同じ入力点に対してそれぞれ異なる要求値を設定するコンフリクトが発生するか否かを前記要求値バッファに格納された要求値に基づいて判定し、
前記第1の演算処理装置は、前記分割した回路のテストパターンの生成中に前記第2の演算処理装置との通信を行ない、
前記第1の演算処理装置が要求値の設定対象となる入力点に設定しようとする要求値が他の第1の演算処理装置が当該入力点に設定する要求値と異なるコンフリクトが発生すると前記第2の演算処理装置により判定した場合、当該第1の演算処理装置は当該要求値の設定を抑止する
ことを特徴とするテストパターン生成装置。 - 請求項1に記載のテストパターン生成装置であって、
前記第1の演算処理装置は、前記分割した回路に含まれる要求値の設定対象となる入力点に要求値を設定する際、設定しようとする要求値が、当該入力点に対して他の第1の演算処理装置が設定した要求値と異なるコンフリクトが発生するか否かを前記第2の演算処理装置に問い合わせ、
前記第2の演算処理装置は、前記第1の演算処理装置からの問い合わせがあった場合、前記要求値バッファに格納された要求値に基づいて当該問い合わせに係る判定を実行する
ことを特徴とするテストパターン生成装置。 - 請求項2に記載のテストパターン生成装置であって、
前記第2の演算処理装置は、前記第1の演算処理装置からの前記コンフリクトの有無の問い合わせがあった場合、
前記第1の演算処理装置からの問い合わせに係る要求値が、前記要求値バッファに格納された対応する要求値と異なるコンフリクトが発生しない場合、当該問い合わせに係る要求値を、前記要求値バッファに格納された対応する要求値に反映させると共に、当該問い合わせの結果としてコンフリクトが発生しない旨を前記第1の演算処理装置に応答し、
前記第1の演算処理装置からの問い合わせに係る要求値が、前記要求値バッファに格納された対応する要求値と異なるコンフリクトが発生する場合、当該問い合わせの結果としてコンフリクトが発生する旨を前記第1の演算処理装置に応答する
ことを特徴とするテストパターン生成装置。 - 請求項3に記載のテストパターン生成装置であって、
前記第1の演算処理装置は、前記問い合わせの結果としてコンフリクトが発生しない旨を受信すると、前記問い合わせに係る要求値の設定を行なう
ことを特徴とするテストパターン生成装置。 - 請求項3または請求項4に記載のテストパターン生成装置であって、
前記第2の演算処理装置は、前記コンフリクトが発生しない場合、前記問い合わせの結果としてコンフリクトが発生しない旨を前記第1の演算処理装置に応答すると共に、前記要求値バッファに格納されている前記入力点毎の要求値を前記第1の演算処理装置に応答し、
前記第1の演算処理装置は、前記要求値バッファに格納されている前記入力点毎の要求値を受信すると、受信した前記入力点毎の要求値に基づき、次の要求値の設定を行なう
ことを特徴とするテストパターン生成装置。 - 請求項1〜請求項5のいずれか一項に記載のテストパターン生成装置であって、
前記第2の演算処理装置は、前記複数の第1の演算処理装置が要求値の設定を終了すると、前記要求値バッファにおいて要求値が未設定の入力点に対し乱数を付加してから、前記乱数を付加された、前記要求値バッファにおける前記入力点毎の要求値を前記複数の第1の演算処理装置に送信し、
前記複数の第1の演算処理装置のそれぞれは、前記第2の演算処理装置から、前記乱数を付加された、前記要求値バッファにおける前記入力点毎の要求値を受信すると、受信した前記入力点毎の要求値に基づき、各第1の演算処理装置が担当する前記分割した回路の故障シミュレーションを行ない、当該分割した回路に前記要求値を入力した時の応答値を期待値として取得する
ことを特徴とするテストパターン生成装置。 - 請求項1〜請求項6のいずれか一項に記載のテストパターン生成装置であって、
前記第2の演算処理装置は、出力状態を期待値として観測すべき前記集積回路のスキャンラッチを複数のラッチグループに分割し、分割した各ラッチグループからバックトレースを実行することにより、前記集積回路を、前記複数のラッチグループにそれぞれ対応する前記複数の回路に分割し、分割した前記複数の回路をそれぞれ前記複数の第1の演算処理装置に割り当てる
ことを特徴とするテストパターン生成装置。 - 請求項7に記載のテストパターン生成装置であって、
前記第2の演算処理装置は、ダブルパルスによるディレイ試験に対応すべく、前記分割した各ラッチグループから少なくとも2ステージ分のバックトレースを実行する
ことを特徴とするテストパターン生成装置。 - 集積回路を複数の回路に分割した回路毎のテストパターンを、各々いずれかの分割した回路のテストパターンの生成を行なう複数の第1の演算処理装置と前記複数の第1の演算処理装置によるテストパターン生成を制御する第2の演算処理装置とを用いて生成するテストパターン生成方法であって、
前記第2の演算処理装置は、各分割した回路に含まれる試験対象回路の故障検出に用いる要求値の設定対象となる入力点毎の要求値を、要求値バッファに格納すると共に、前記複数の第1の演算処理装置が要求値の設定対象となる同じ入力点に対してそれぞれ異なる要求値を設定するコンフリクトが発生するか否かを前記要求値バッファに格納された要求値に基づいて判定し、
前記第1の演算処理装置は、前記分割した回路のテストパターンの生成中に前記第2の演算処理装置との通信を行ない、
前記第1の演算処理装置が要求値の設定対象となる入力点に設定しようとする要求値が他の第1の演算処理装置が当該入力点に設定する要求値と異なるコンフリクトが発生すると前記第2の演算処理装置により判定した場合、当該第1の演算処理装置は当該要求値の設定を抑止する
ことを特徴とするテストパターン生成方法。 - 集積回路を複数の回路に分割した回路毎のテストパターンを生成すべく、各々いずれかの分割した回路のテストパターンの生成を行なう複数の第1の演算処理装置の一つ、もしくは、前記複数の第1の演算処理装置によるテストパターン生成を制御する第2の演算処理装置として、コンピュータを機能させるテストパターン生成プログラムであって、
前記第2の演算処理装置として機能するコンピュータに、
各分割した回路に含まれる試験対象回路の故障検出に用いる要求値の設定対象となる入力点毎の要求値を、要求値バッファに格納すると共に、前記複数の第1の演算処理装置が要求値の設定対象となる同じ入力点に対してそれぞれ異なる要求値を設定するコンフリクトが発生するか否かを前記要求値バッファに格納された要求値に基づいて判定する処理を実行させ、
前記第1の演算処理装置として機能するコンピュータに、
前記分割した回路のテストパターンの生成中に前記第2の演算処理装置との通信を行ない、
前記第1の演算処理装置が要求値の設定対象となる入力点に設定しようとする要求値が他の第1の演算処理装置が当該入力点に設定する要求値と異なるコンフリクトが発生すると前記第2の演算処理装置により判定した場合、当該要求値の設定を抑止する処理を実行させる
ことを特徴とするテストパターン生成プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011169010A JP5794027B2 (ja) | 2011-08-02 | 2011-08-02 | テストパターン生成装置,テストパターン生成方法およびテストパターン生成プログラム |
US13/463,885 US20130035891A1 (en) | 2011-08-02 | 2012-05-04 | Test pattern generator, method of generating test pattern, and computer readable storage medium having test generation program stored thereon |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011169010A JP5794027B2 (ja) | 2011-08-02 | 2011-08-02 | テストパターン生成装置,テストパターン生成方法およびテストパターン生成プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013032963A JP2013032963A (ja) | 2013-02-14 |
JP5794027B2 true JP5794027B2 (ja) | 2015-10-14 |
Family
ID=47627505
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011169010A Active JP5794027B2 (ja) | 2011-08-02 | 2011-08-02 | テストパターン生成装置,テストパターン生成方法およびテストパターン生成プログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20130035891A1 (ja) |
JP (1) | JP5794027B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8856720B2 (en) * | 2013-01-03 | 2014-10-07 | International Business Machines Corporation | Test coverage of integrated circuits with masking pattern selection |
JP6365273B2 (ja) * | 2014-12-01 | 2018-08-01 | 富士通株式会社 | テストパターン生成方法、テストパターン生成プログラム、およびテストパターン生成装置 |
CN109960645B (zh) * | 2017-12-22 | 2022-10-18 | 迈普通信技术股份有限公司 | 脚本测试方法、装置及脚本测试系统 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08185425A (ja) * | 1994-12-28 | 1996-07-16 | Hitachi Ltd | 論理回路のテストパターン生成方法およびその装置 |
US5802075A (en) * | 1997-01-16 | 1998-09-01 | Unisys Corporation | Distributed test pattern generation |
JP4228061B2 (ja) * | 2000-12-07 | 2009-02-25 | 富士通マイクロエレクトロニクス株式会社 | 集積回路の試験装置および試験方法 |
US6934900B1 (en) * | 2001-06-25 | 2005-08-23 | Global Unichip Corporation | Test pattern generator for SRAM and DRAM |
JP2003344512A (ja) * | 2002-05-31 | 2003-12-03 | Mitsubishi Electric Corp | 半導体集積回路の故障検出方法およびdcテストパターン発生方法 |
JP4174048B2 (ja) * | 2002-09-19 | 2008-10-29 | 富士通株式会社 | 集積回路試験装置および試験方法 |
JP4435615B2 (ja) * | 2003-04-03 | 2010-03-24 | 富士通株式会社 | プログラム、テストパターン作成方法及び装置 |
JP2008224315A (ja) * | 2007-03-09 | 2008-09-25 | Nec Electronics Corp | テストパターン生成装置およびテストパターン生成方法 |
-
2011
- 2011-08-02 JP JP2011169010A patent/JP5794027B2/ja active Active
-
2012
- 2012-05-04 US US13/463,885 patent/US20130035891A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
JP2013032963A (ja) | 2013-02-14 |
US20130035891A1 (en) | 2013-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5270458B2 (ja) | 故障箇所推定装置 | |
JPH04148882A (ja) | 論理集積回路の故障位置指摘方法 | |
US7228262B2 (en) | Semiconductor integrated circuit verification system | |
JP2005172549A (ja) | 半導体集積回路の検証方法及びテストパターンの作成方法 | |
US6707313B1 (en) | Systems and methods for testing integrated circuits | |
JP5794027B2 (ja) | テストパターン生成装置,テストパターン生成方法およびテストパターン生成プログラム | |
US9864004B1 (en) | System and method for diagnosing failure locations in electronic circuits | |
Wang et al. | Delay-fault diagnosis using timing information | |
Ghosh-Dastidar et al. | Adaptive techniques for improving delay fault diagnosis | |
US8719651B1 (en) | Scan chain diagnostic using scan stitching | |
CN101315412A (zh) | 一种扫描链故障诊断方法及系统 | |
US7191374B2 (en) | Method of and program product for performing gate-level diagnosis of failing vectors | |
JP2006309576A (ja) | 論理システムの検証装置及び検証方法、記憶媒体及びコンピュータプログラム | |
US20080295050A1 (en) | Semiconductor integrated circuit and method of designing thereof based on TPI | |
JP5567322B2 (ja) | テストフロー提示コンピュータプログラム、テストフロー提示コンピュータシステム | |
Remersaro et al. | ATPG heuristics dependant observation point insertion for enhanced compaction and data volume reduction | |
Remersaro et al. | A scalable method for the generation of small test sets | |
US10444282B2 (en) | Test point insertion for low test pattern counts | |
JP2000250946A (ja) | Lsi回路のテスト容易化設計方法および装置ならびにテスト容易化設計処理プログラムを記録したコンピュータ読取り可能な記録媒体 | |
TWI488246B (zh) | 資源整合及晶片測試方法 | |
Calame et al. | TTCN-3 testing of hoorn-kersenboogerd railway interlocking | |
JP2004317505A (ja) | プログラム、記憶媒体、テストパターン作成方法及び装置 | |
Becker et al. | Hybrid fault simulation for synchronous sequential circuits | |
Yoshimura et al. | A State Assignment Method to Improve Transition Fault Coverage for Controllers | |
US7188324B1 (en) | Assertion morphing in functional verification of integrated circuit design |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140404 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20141127 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20141202 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150114 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150714 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150727 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5794027 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |