JP2004110265A - 半導体集積回路のテスト容易化方法 - Google Patents

半導体集積回路のテスト容易化方法 Download PDF

Info

Publication number
JP2004110265A
JP2004110265A JP2002270069A JP2002270069A JP2004110265A JP 2004110265 A JP2004110265 A JP 2004110265A JP 2002270069 A JP2002270069 A JP 2002270069A JP 2002270069 A JP2002270069 A JP 2002270069A JP 2004110265 A JP2004110265 A JP 2004110265A
Authority
JP
Japan
Prior art keywords
register
test
scan
circuit
registers
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.)
Granted
Application number
JP2002270069A
Other languages
English (en)
Other versions
JP3785388B2 (ja
Inventor
Yukio Sugimura
杉村 幸夫
Atsushi Ogawa
小川 淳
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 JP2002270069A priority Critical patent/JP3785388B2/ja
Priority to CN03158977.4A priority patent/CN1266481C/zh
Priority to US10/663,993 priority patent/US7168004B2/en
Publication of JP2004110265A publication Critical patent/JP2004110265A/ja
Application granted granted Critical
Publication of JP3785388B2 publication Critical patent/JP3785388B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

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/318342Generation of test inputs, e.g. test vectors, patterns or sequences by preliminary fault modelling, e.g. analysis, simulation
    • G01R31/31835Analysis of test coverage or failure detectability

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

【課題】フルスキャンテスト方式に見られるチップ面積の無駄を解消するとともに、高速動作が行えるようにする。
【解決手段】第1の工程は、集積回路に対し所定のテストパターンに基づく故障シミュレーションを行って検出可能な故障と検出不可能な故障とを弁別する。第2の工程は、未検出故障をリストアップする。第3の工程は、未検出故障のテスト条件を求める。第4の工程は、所定のテストパターンのうち第3の工程のテスト条件に最も近いテストパターンを求める。第5の工程は、未検出故障に対応するレジスタをスキャンレジスタに置き換えるとともに、スキャンレジスタをスキャンチェーン接続して修正回路を構成する。第6の工程は、修正回路に対して所定のテストパターンを用いながら未検出故障相当のタイミングでは第4の工程で求めたテストパターンに切り換えて故障シミュレーションを行う。
【選択図】 図2

Description

【0001】
【発明の属する技術分野】
本発明は、半導体集積回路のテスト容易化方法に関する。
【0002】
【従来の技術】
図12は従来の集積回路テスト方法の構成図である(例えば、特許文献1参照。)。図12において、0201はチップ、0202は内部メモリ手段(RAM)、0203はCPU、0204は被テスト回路、0205はこれらを相互に接続する内部バス、0206は内部バス0205と被テスト回路0204に接続されたスキャンテスト用回路、0206aは被テスト回路0204のスキャンテスト関連端子をスキャンテスト用回路0206と接続する信号線、0207は内部バス0205を入出力端子0208に接続する外部バスIFユニットである。
【0003】
被テスト回路0204のテストにおいて、CPU0203または入出力端子0208からバス0205を介してスキャンテスト用回路0206を制御することにより、被テスト回路0204のスキャンテスト関連端子にテスト用データを設定入力するとともに、被テスト回路0204のスキャンテスト関連端子の値を読み出すことができる。
【0004】
【特許文献1】
特開平11−108998号公報(第3−4頁、図1)
【0005】
【発明が解決しようとする課題】
上記した従来の集積回路テスト方法はフルスキャンテストと呼ばれる方式で、被テスト回路0204内のレジスタをすべてスキャンレジスタに置き換えてスキャンチェーン接続することを前提としている。このため、バスから直接制御/観測可能なレジスタについてもスキャンレジスタに置き換えているが、スキャンレジスタは通常のレジスタに比べて、面積が大きいものであり、すべてを置き換えることから大きなチップ面積を必要としていた。
【0006】
また、通常動作時のクロックとは別に、バス0205を介してCPU0203または入出力端子0208からスキャンテスト用回路0206を制御し、スキャンテスト用回路0206からスキャンテスト用のスキャンクロックを被テスト回路0204に入力しテストを行う構成である。このため、チップが高速で動作する場合に、通常、バスのスピードは内部クロックのスピード以下であり、通常動作と同じスピードでテストを行うことは不可能であった。
【0007】
本発明は、このような事情に鑑みて創案されたものであり、チップ面積の無駄を削減するとともに、高速動作が行えるようにすることを目的とする。
【0008】
【課題を解決するための手段】
上記の課題を解決するために、本発明は次のような手段を講じる。すなわち、半導体集積回路のテスト容易化方法について、次のような複数の工程を含むものである。
【0009】
第1の工程において、半導体集積回路に対して所定のテストパターンに基づく故障シミュレーションを行って検出可能な故障と検出不可能な故障との弁別を行う。
【0010】
第2の工程において、前記検出不可能な故障を未検出故障としてリストアップする。
【0011】
第3の工程において、前記未検出故障をテストするためのテスト条件を求める。
【0012】
第4の工程において、前記第1の工程の故障シミュレーションの所定のテストパターンのうち前記第3の工程のテスト条件に最も近いテストパターンを求める。
【0013】
第5の工程において、前記第2の工程の未検出故障に対応するレジスタをスキャンレジスタに置き換えるとともに、前記スキャンレジスタをスキャンチェーン接続して修正回路を構成する。
【0014】
第6の工程において、前記修正回路に対して前記第1の工程における前記所定のテストパターンを用いながら前記未検出故障相当のタイミングでは前記第4の工程で求めたテストパターンに切り換えて故障シミュレーションを行う。
【0015】
この構成による作用は次のとおりである。すなわち、従来方式のすべてのレジスタをスキャンレジスタに置き換えるフルスキャンテストとは異なり、未検出故障に対応するレジスタのみをスキャンレジスタに置き換えるだけである。テスト対象の組み合わせ回路の入力側のスキャンレジスタに対しては外部よりテスト用データを設定入力する。組み合わせ回路の入力側でスキャンレジスタに関連するが故障相当ではないレジスタに対しては、搭載プロセッサまたは集積回路端子からテスト用データを設定入力する。組み合わせ回路の出力側のスキャンレジスタに対しては外部よりテスト用データを設定入力して出力の初期化を行う。このようにすれば、故障シミュレーション用にあらかじめ用意されている所定のテストパターンを利用して、故障相当ではないレジスタにテスト用データを設定入力するとともに、外部よりスキャンレジスタにテスト用データを設定入力し、故障シミュレーションを遂行することができる。フルスキャンテスト方式に比べて、スキャンレジスタに置き換えるべきレジスタの数を必要最小限とでき、チップ面積の増大を効果的に抑制することができる。また、故障相当ではないレジスタを動作させる通常の基本クロックのもとで、あらかじめ用意された所定のテストパターンを利用して、入出力動作全体を制御でき、高速処理が可能である。
【0016】
上記の半導体集積回路のテスト容易化方法の代替として、前記第5の工程については、前記未検出故障に対応する入力側のレジスタを、スキャンレジスタに置き換えることに代えて、セット付きレジスタまたはリセット付きレジスタに置き換えて修正回路を構成するのでもよい。この場合、上記同様の作用のほか、セット付きレジスタまたはリセット付きレジスタは搭載プロセッサまたは集積回路端子からの制御性が向上し、より効率の良い処理が可能である。
【0017】
別の解決手段として、本発明は次のような手段を講じる。すなわち、半導体集積回路のテスト容易化方法について、次のような複数の工程を含むものである。
【0018】
第1の工程において、半導体集積回路におけるテスト対象の組み合わせ回路に接続のレジスタ群を、搭載プロセッサで直接に制御および観察が可能な第1のレジスタ、前記半導体集積回路の端子から直接に制御および観察が可能な第2のレジスタ、および、前記第1および第2のレジスタ以外の第3のレジスタに区分する。そして、その上で、前記第3のレジスタをスキャンレジスタに置き換えるとともに、前記スキャンレジスタをスキャンチェーン接続して修正回路を構成する。
【0019】
第2の工程において、前記第1および第2のレジスタに対して前記プロセッサまたは前記集積回路端子からテスト用データを設定入力する。
【0020】
第3の工程において、前記第3のレジスタに対して前記スキャンチェーンを介するシフト動作を伴ってテスト用データを設定入力する。
【0021】
第4の工程において、前記組み合わせ回路に対する前記テスト用データのキャプチャー動作を行う。
【0022】
第5の工程において、前記第3のレジスタにあるテスト結果のデータを前記スキャンチェーンを介するシフト動作を伴って出力する。
【0023】
第6の工程において、前記第1および第2のレジスタにあるテスト結果のデータを出力する。
【0024】
この構成による作用は次のとおりである。すなわち、従来方式のすべてのレジスタをスキャンレジスタに置き換えるフルスキャンテストとは異なり、搭載プロセッサで直接に制御および観察が不可能な、および、集積回路端子から直接に制御および観察が不可能な第3のレジスタのみをスキャンレジスタに置き換えるだけである。そして、故障シミュレーションにおいては、第1および第2のレジスタに対しては通常のテスト用データの設定入力を行い、第3のレジスタはスキャンチェーンを利用してテスト用データの設定入力・シフト動作を行い、テスト結果のデータの観測のための出力に際しては第3のレジスタはスキャンチェーンを利用してシフト動作・出力を行い、第1および第2のレジスタでは通常のテスト結果のデータの読み出しとする。このようにすれば、フルスキャンテスト方式に比べて、スキャンレジスタに置き換えるべきレジスタの数を削減することができ、チップ面積の増大を抑制することができる。
【0025】
【発明の実施の形態】
以下、本発明にかかわる半導体集積回路のテスト容易化方法の実施の形態について図面に基づいて詳細に説明する。
【0026】
(実施の形態1)
図1はテスト容易化設計を行う前の元の回路C0を示す。論理回路設計段階において、元の回路C0に対してテスト容易化のための回路修正すなわちテスト容易化設計を行う。
【0027】
図1において、101,102,103は、入力が決まると出力が一意に決まる組み合わせ回路である。この組み合わせ回路は、内部にレジスタ、ラッチ、メモリを含まない。今回の例では、組み合わせ回路102がテスト対象であり、説明の簡単のため、AND回路29が1個のみ入っている回路としている。104は半導体集積回路に搭載されているプロセッサ、105はプロセッサ104と各部を接続するバス、106はアドレスデコーダである。アドレスデコーダ106は、バス105のアドレス部分をデコードし、書き込み制御信号WE2、読み出し制御信号RE1,RE3を生成して出力する。
【0028】
1,2,3,4,5,6,7,8,9,10,11,12,13,14はDフリップフロップからなるレジスタである。
【0029】
レジスタ1は、プロセッサ104から書き込み制御可能なレジスタであり、アドレスデコーダ106からの書き込み制御信号WE2により、バス105のデータ部分の値をセレクタ30を介して取り込むことができるように構成されている。
【0030】
レジスタ8は、プロセッサ104からデータ読み込み制御が可能なレジスタであり、アドレスデコーダ106からの読み出し制御信号RE1によりトライステートバッファ(読み出し制御回路)31を介してバス105のデータ部分に値を出力する。
【0031】
プロセッサ104は、バス105のデータ部分に出力された値を読む込むことができる。CKは組み合わせ回路で使用される基本クロックであり、プロセッサ104から供給される。
【0032】
図2は、テスト容易化設計を行う前の元の回路C0に対して、テスト容易化のために修正を行った後の修正回路C1を示す。図示例の修正回路C1は、元の回路C0におけるレジスタ2およびレジスタ10がスキャンレジスタ2′およびスキャンレジスタ10′に置き換えられている(置き換え方法については、図4、図5で説明する)。スキャンレジスタ2′,10′がスキャンチェーンを構成する。
【0033】
図3(a)は、図2に示す修正回路C1で使用されたスキャンレジスタの構成を示す。図3(b)は等価回路を示す。このスキャンレジスタは、通常動作時のデータ入力(D)とは別にスキャンテスト用のデータ入力(TD)を有し、さらに、スキャンイネーブル入力(SE)を有している。スキャンレジスタにおいて、スキャンイネーブル入力(SE)が“0”のときは、クロック入力(CK)の立ち上がりタイミングで、データ入力(D)の値を内部に取り込む。また、スキャンイネーブル入力(SE)が“1”のときは、クロック入力(CK)の立ち上がりタイミングで、テスト用データ入力(TD)の値を内部に取り込む。
【0034】
図2において、TDI(Test Data Input)は、スキャンレジスタ2′,10′からなるスキャンチェーンに対するデータ入力端子である。TDO(TestDataOutput)は、スキャンレジスタ2′,10′からなるスキャンチェーンのデータ出力端子である。TCKはテストクロック入力端子であり、テストデータ入力端子TDIからデータを取り込み、スキャンチェーン内でテスト用データをシフトさせ、組み合わせ回路102を経て得られたデータをテストデータ出力端子TDOへ出力する動作において、テストクロック入力端子TCKからのテストクロックはタイミング制御を司る。
【0035】
32はOR回路であり、外部のテストクロック入力端子TCKからのテストクロックとプロセッサ104からの基本クロックCKとを2入力とし、出力はスキャンチェーンを構成するスキャンレジスタ2′およびスキャンレジスタ10′のクロック入力(CK)に接続する。
【0036】
修正回路C1において、レジスタから置き換えられたスキャンレジスタ2′,10′およびこれに接続されたテストデータ入力端子TDI、テストデータ出力端子TDOでスキャンチェーンが構成される。このスキャンチェーンをテストするときは、プロセッサ104は基本クロックCKの出力を停止するとともに、スキャンイネーブル信号SEをアクティブの“1”に切り換える。このスキャンイネーブル信号SEはスキャンレジスタ2′,10′のスキャンイネーブル入力(SE)に与えられる。これにより、スキャンレジスタ2′,10′はデータ入力端子を通常動作時のデータ入力(D)からテスト用データ入力(TD)に切り換える。そして、外部のテストクロック入力端子TCKからのテストクロックをOR回路32を介してスキャンレジスタ2′,10′のクロック入力(CK)に供給する。これにより、外部のテストデータ入力端子TDIから任意のテスト用データをスキャンレジスタ2′のテスト用データ入力(TD)に入力することができる。スキャンレジスタ2′のデータ出力(Q)から出力されたデータは組み合わせ回路102において論理合成され、その結果がスキャンレジスタ10′のデータ入力(D)に入力され、さらにスキャンレジスタ10′のデータ出力(Q)から外部のテストデータ出力端子TDOに出力される。すなわち、組み合わせ回路102による論理合成を観測することができる。
【0037】
図4は、図1に示す元の回路C0を図2に示す修正回路C1に修正するとともに、修正回路C1用のテストパターンを作成して行うテスト動作を示すフローチャートである。
【0038】
元の回路C0に対するテストパターンが既にあるとする。故障検出率を上げるためにテスト容易化設計、テストパターン追加を行う。故障検出率とは、全故障のうち、与えられたテストパターンにより何%が検出できるかという割合であり、テストパターンの完成度の指標である。
【0039】
初めに、ステップS1において、元の回路C0で故障シミュレーションを行う。故障シミュレーションとは、設計、特にテスト関連の設計を行うテスト設計の一過程であり、与えられたテストパターン系列によって検出可能な故障、検出不可能な故障を調べることである。故障シミュレーションは、元の回路C0に対して、既に作成済みのテストパターンを印加することにより行う。
【0040】
次に、ステップS2において、故障シミュレーションで未検出であった故障をリストアップする。故障シミュレーションで未検出の故障とは、たとえ、その箇所が故障していても、故障シミュレーションで使用したテストパターンでは検出・発見できない故障のことである。今回の例では、元の回路C0のレジスタ2の出力の信号線16が“1”に縮退している故障(Stuck At “1”であり、これを“SA1”と記載する)が未検出であるとする。
【0041】
次に、ステップS3において、未検出故障〔信号線16:SA1〕をテストするための条件(テスト条件)を求める。未検出故障〔信号線16:SA1〕を検出するためには、信号線16が“1”に縮退するという故障が発生したときに期待値として観測される値が変るようなテストであればよい。そのための入力側のテスト条件は、
レジスタ1の出力の信号線15 ……“1”
レジスタ2の出力の信号線16 ……“0”
レジスタ3の出力の信号線17 ……“1”
レジスタ4の出力の信号線18 ……“1”
という入力条件になる。この条件のとき、〔信号線16:SA1〕という故障がなければ、AND回路29の出力の信号線24が“0”になり、〔信号線16:SA1〕という故障が起これば、AND回路29の出力の信号線24が“1”となる。
【0042】
次に、ステップS4において、テストパターンを作成するために、故障シミュレーションの実施中でテスト条件に最も近い状態を探す。今回の例では、時刻T12の状態、
レジスタ1の出力の信号線15 ……“1”
レジスタ2の出力の信号線16 ……“1”
レジスタ3の出力の信号線17 ……“1”
レジスタ4の出力の信号線18 ……“1”
が最も近い状態であるとする。
【0043】
次に、テストパターンが容易に作成できるように元の回路C0に対して修正を加える。
【0044】
すなわち、ステップS5において、テスト条件に最も近い状態で条件に合わないレジスタをスキャンレジスタに置き換える。今回の例では、レジスタ2をスキャンレジスタ2′に置き換える。また、故障が無いときと故障が起きたときとで出力/期待値の変化が起きる信号を設定入力するレジスタをスキャンレジスタに置き換える。今回の例では、レジスタ10をスキャンレジスタ10′に置き換える。
【0045】
併せて、スキャン用のテスト用データを設定入力するためのテストデータ入力端子TDI、スキャンデータを観測するためのテストデータ出力端子TDO、テスト用データの設定入力・シフト・出力のためのテストクロックを入力するテストクロック入力端子TCKを加える。また、プロセッサ104において、スキャンモードを設定するためのスキャンイネーブル信号SEを加える。そして、テストデータ入力端子TDIをスキャンチェーンの初段のレジスタとなるスキャンレジスタ2′のテスト用データ入力(TD)に接続する。また、テストデータ出力端子TDOをスキャンチェーンの最後のレジスタとなるスキャンレジスタ10′のデータ出力(Q)に接続する。スキャンイネーブル信号SEをスキャンレジスタ2′,10′のスキャンイネーブル入力(SE)に接続する。テストクロック入力端子TCKをOR回路32の1つの入力に接続し、OR回路32のもうひとつの入力をプロセッサ104の基本クロックCKに接続し、OR回路32の出力をスキャンレジスタ2′,10′のクロック入力(CK)に接続する。スキャンレジスタ2′のデータ出力(Q)をスキャンレジスタ10′のテスト用データ入力(TD)に接続する。
【0046】
今回の例では、未検出故障が1つなので、以上によって、図1に示す元の回路C0が図2に示す修正回路C1に修正されたことになる。未検出故障が複数ある場合には、未検出故障の数だけスキャンレジスタへの置き換えを繰り返す。
【0047】
次に、ステップS6において、図2に示す修正回路C1において、未検出故障〔信号線16:SA1〕を検出できるテストパターンを作成する。テスト条件に最も近い状態となる時刻T12まではステップS1の故障シミュレーションで用いたテストパターンをそのまま用いる(これについては、図5で詳述する)。そのテストパターンでは、時刻T12において、
レジスタ1の出力の信号線15 ……“1”
レジスタ2の出力の信号線16 ……“1”
レジスタ3の出力の信号線17 ……“1”
レジスタ4の出力の信号線18 ……“1”
となっている。この状態から、スキャンチェーンを動作させることにより、未検出故障〔信号線16:SA1〕を検出できるテストパターンを作る。今回の例では、作成されたテストパターンは、
レジスタ1の出力の信号線15 ……“1”
レジスタ2の出力の信号線16 ……“0”
レジスタ3の出力の信号線17 ……“1”
レジスタ4の出力の信号線18 ……“1”
となる。
【0048】
未検出故障が複数ある場合は、以上のパターン作成を繰り返す。
【0049】
図5は、図2に示す修正回路C1の動作を説明するタイミングチャートである。基本クロックCK、テストクロック入力端子TCK、スキャンイネーブル信号SE、テストデータ入力端子TDI、テストデータ出力端子TDOにおける各波形、レジスタ1〜4が保持する値およびレジスタ10が保持する値を示している。
【0050】
時刻T1から時刻T12はスキャン動作でない通常の動作モードで故障シミュレーションを行う。時刻T1から時刻T12では、テストクロック入力端子TCKは“0”であり、また、スキャンイネーブル信号SEは“0”であり、レジスタ1〜4(2′はスキャンレジスタ)およびスキャンレジスタ10′は、故障シミュレーションと同様に値を変化させていく。
【0051】
時刻T12において、レジスタ1〜4が図4のテスト設計フローの中のテスト条件に最も近い状態になる。この状態になると、一時的にスキャンレジスタ2′をスキャン動作に切り換える。スキャン動作により、スキャンレジスタ2′の値を書き換えてテスト条件を作る。時刻T12の後半から基本クロックCKを“0”、スキャンイネーブル信号SEを“1”、テストデータ入力端子TDIをスキャンレジスタ2′に設定入力するデータ“0”にする。
【0052】
時刻T13の開始タイミングにおいて、テストクロック入力端子TCKを立ち上げてテストデータ入力端子TDIのデータ“0”をスキャンレジスタ2′に取り込む。この状態で、テスト条件が整うことになる。作成されたテストパターンは、
レジスタ1の出力の信号線15 ………“1”
レジスタ2′の出力の信号線16 ……“0”
レジスタ3の出力の信号線17 ………“1”
レジスタ4の出力の信号線18 ………“1”
となる。
【0053】
テスト条件でのAND回路29の出力をスキャンレジスタ10′に取り込むため、時刻T13の後半からスキャンイネーブル信号SEを“0”にする。
【0054】
時刻T14の開始タイミングにおいて、テストクロック入力端子TCKを立ち上げてAND回路29の出力をスキャンレジスタ10′に取り込む。この例では、時刻T14でスキャンレジスタ10′が“0”の値をもち、テストデータ出力端子TDOにスキャンレジスタ10′の値が出力されている。時刻T14でのテストデータ出力端子TDOを期待値データ“0”と比較することにより未検出故障〔信号線16:SA1〕を検出することができる。今回の例では、未検出故障が1つであるので、これで必要なテストが終了する。
【0055】
未検出故障が複数の場合は、未検出故障の数だけテストを繰り返す。
【0056】
本実施の形態はパーシャルスキャンテストであり、必要なレジスタのみをスキャンレジスタに置き換えるため、すべてのレジスタをスキャンレジスタに置き換えるフルスキャンテストに比べて、チップ面積の増加が少ない。
【0057】
また、フルスキャンテストではスキャンチェーンを構成するレジスタが増え、チェーンが長くなると、テスト条件を設定入力するために多くのデータをテストデータ入力端子TDIから設定入力してなければならず、多くの時間がかかってしまう。また、結果をテストデータ出力端子TDOに読み出すのにも同様に多くの時間がかかってしまう。
【0058】
これに対して、本発明のこの実施の形態では、レジスタ群が並列に動作している通常の動作状態(ステップS1のテストパターンの動作状態)を利用してテスト条件を作成するとともに、スキャンチェーンの長さを必要最小限にしていることから、より短いテスト時間で未検出の故障を捕捉することができる。
【0059】
(実施の形態2)
図6は、図1に示すテスト容易化設計を行う前の元の回路C0に対して、テスト容易化のために修正を行った後の修正回路C2を示す。図示例の修正回路C2は、元の回路C0におけるレジスタ2がリセット付きレジスタ2″に置き換えられ、レジスタ10がスキャンレジスタ10′に置き換えられている。
【0060】
すなわち、図1において、プロセッサ104が制御しても、その値を“0”にすることが難しいと判断されたレジスタ2を強制的に“0”に設定入力できるようにするためにリセット付きレジスタ2″に置き換えている。RESETは、強制リセットのためのリセット信号であり、今回の例ではプロセッサ104が出力するものとしている。ただし、プロセッサ104の出力に限定する必要性はない。また、図1のレジスタ10は、プロセッサ104の制御では観測が難しいとされたもので、スキャンレジスタ10′に置き換えられている。リセット付きレジスタ2″への置き換え方法およびスキャンレジスタ10′への置き換え方法については、図7で説明する。
【0061】
スキャンイネーブル信号SEは、スキャンレジスタ10′がテスト用データ入力(TD)よりデータを取り込むことを指定する。スキャンレジスタ10′のデータ出力(Q)には、スキャンチェーンのデータ出力端子TDOが接続されている。今回の例ではスキャンレジスタはスキャンレジスタ10′の1つのみであるので、スキャンチェーンとなっていないが、スキャンレジスタが複数ある場合に、データ出力(Q)を次のスキャンレジスタのテスト用データ入力(TD)に連続して接続することによりスキャンチェーンを構成する。テストクロック入力端子TCKは、OR回路32を介してスキャンレジスタ10′のクロック入力(CK)に接続されている。すなわち、OR回路32は、プロセッサ104からの基本クロックCKと外部からのテストクロック入力端子TCKを2入力とし、出力はスキャンレジスタ10′のクロック入力(CK)に接続する。テストクロック入力端子TCKからのテストクロックは、スキャンチェーンのデータをシフトさせ、テストデータ出力端子TDOへ出力する動作をタイミング制御する。
【0062】
図7は、図1に示す元の回路C0を図6に示す修正回路C2に修正するとともに、修正回路C2用のテストパターンを作成して行うテスト動作を示すフローチャートである。
【0063】
元の回路C0に対するテストパターンが既にあるとする。故障検出率を上げるためにテスト容易化設計、テストパターン追加を行う。
【0064】
初めに、ステップS11において、元の回路C0で故障シミュレーションを行う。
【0065】
次に、ステップS12において、故障シミュレーションで未検出であった故障をリストアップする。今回の例では、元の回路C0のレジスタ2の出力の信号線16が“1”に縮退している故障が未検出であるとする。
【0066】
次に、ステップS13において、未検出故障〔信号線16:SA1〕をテストするための条件(テスト条件)を求める。未検出故障〔信号線16:SA1〕を検出するための入力側のテスト条件は、上記同様に、
レジスタ1の出力の信号線15 ……“1”
レジスタ2の出力の信号線16 ……“0”
レジスタ3の出力の信号線17 ……“1”
レジスタ4の出力の信号線18 ……“1”
である。この条件のとき、〔信号線16:SA1〕という故障がなければ、AND回路29の出力側の信号線24が“0”になり、〔信号線16:SA1〕という故障が起これば、信号線24が“1”となる。
【0067】
次に、ステップS14において、テストパターンを作成するために、故障シミュレーションの実施中でテスト条件に最も近い状態を探す。今回の例では、時刻T12の状態、
レジスタ1の出力の信号線15 ……“1”
レジスタ2の出力の信号線16 ……“1”
レジスタ3の出力の信号線17 ……“1”
レジスタ4の出力の信号線18 ……“1”
が最も近い状態であるとする。
【0068】
次に、テストパターンが容易に作成できるように元の回路C0に対して修正を加える。
【0069】
すなわち、ステップS15において、テスト条件に最も近い状態で条件に合わないレジスタをテスト条件に合うように、セット付きレジスタまたはリセット付きレジスタに置き換える。今回の例では、レジスタ2をリセット付きレジスタ2″に置き換える。また、故障が無いときと故障が起きたときとで出力/期待値の変化が起きる信号を設定入力するレジスタをスキャンレジスタに置き換える。今回の例では、レジスタ10をスキャンレジスタ10′に置き換える。
【0070】
併せて、スキャンデータを観測するためのテストデータ出力端子TDO、テスト用データの設定入力・シフト・出力のためのテストクロックを入力するテストクロック入力端子TCKを加える。また、プロセッサ104において、スキャンモードを設定するためのスキャンイネーブル信号SEを加える。そして、テストデータ出力端子TDOをスキャンレジスタ10′(一般的にはスキャンチェーンの最後のスキャンレジスタ)のデータ出力(Q)に接続する。スキャンイネーブル信号SEの信号線をスキャンレジスタ10′のスキャンイネーブル入力(SE)に接続する。テストクロック入力端子TCKをOR回路32の1つの入力に接続し、OR回路32のもうひとつの入力をプロセッサ104の基本クロックCKに接続し、OR回路32の出力をスキャンレジスタ10′のクロック入力(CK)に接続する。
【0071】
この例では、スキャンレジスタ10′(一般的にはスキャンチェーンの最初のスキャンレジスタ)のテスト用データ入力(TD)をVDDに固定している。GNDに固定しても良い。あるいは、スキャン用データを設定入力するためのテストデータ入力端子TDIを設けて、スキャンレジスタ10′のテスト用データ入力(TD)に接続しても良い。
【0072】
今回の例では、未検出故障が1つなので、以上によって、図1に示す元の回路C0が図6に示す修正回路C2に修正される。未検出故障が複数ある場合には、未検出故障の数だけレジスタの置き換えを繰り返す。
【0073】
次に、ステップS16において、図6に示す修正回路C2において、未検出故障〔信号線16:SA1〕を検出できるテストパターンを作成する。テスト条件に最も近い状態となる時刻T12まではステップS11のシミュレーションパターンをそのまま用いる(これについては、図8で詳述する)。この状態では、
レジスタ1の出力の信号線15 ………“1”
レジスタ2″の出力の信号線16 ……“1”
レジスタ3の出力の信号線17 ………“1”
レジスタ4の出力の信号線18 ………“1”
となっている。この状態から、リセット信号RESETを動作させることにより、未検出故障〔信号線16:SA1〕を検出できるテストパターンを作る。今回の例では、作成されたテストパターンは、
レジスタ1の出力の信号線15 ………“1”
レジスタ2″の出力の信号線16 ……“0”
レジスタ3の出力の信号線17 ………“1”
レジスタ4の出力の信号線18 ………“1”
となる。
【0074】
未検出故障が複数ある場合は、以上のパターン作成を繰り返す。
【0075】
図8は図6に示す修正回路C2の動作を説明するタイミングチャートである。
【0076】
時刻T1から時刻T12はスキャン動作でない通常の動作モードで故障シミュレーションを行う。時刻T1から時刻T12では、テストクロック入力端子TCKは“0”であり、また、スキャンイネーブル信号SEは“0”であり、レジスタ1〜4(2はリセット付きレジスタ)およびスキャンレジスタ10′は、故障シミュレーションと同様に値を変化させていく。
【0077】
時刻T12において、レジスタ1〜4が図10のテスト設計フローの中のテスト条件に最も近い状態になる。時刻T13において、基本クロックCKを止め、リセット信号RESETを立ち上げてリセット付きレジスタ2″の値を書き換え、テスト条件を作る。作成されたテストパターンは、
レジスタ1の出力の信号線15 ………“1”
レジスタ2″の出力の信号線16 ……“0”
レジスタ3の出力の信号線17 ………“1”
レジスタ4の出力の信号線18 ………“1”
となる。
【0078】
テスト条件でのAND回路29の出力をスキャンレジスタ10′に取り込むため、時刻T14の後半でスキャンイネーブル信号SEを“1”にし、時刻T15でテストクロック入力端子TCKを1発動作させ、AND回路29の出力をスキャンレジスタ10′に取り込む。今回の例では、スキャンチェーンがスキャンレジスタ10′のみであり、スキャンレジスタ10′の値をテストデータ出力端子TDOから観測できる。スキャンチェーンが複数のレジスタからなる場合は、スキャンイネーブル信号SEを“1”にしたままテストクロック入力端子TCKを動作させ、スキャンチェーンを通して順次、レジスタの値をテストデータ出力端子TDOから観測する。今回の例では、未検出故障が1つなので、これで必要なテストが終了する。
【0079】
未検出故障が複数の場合は、未検出故障の数だけテストを繰り返す。
【0080】
本実施の形態もパーシャルスキャンテストであり、必要なレジスタのみをリセット付きレジスタ(あるいはセット付きレジスタ)とスキャンレジスタに置き換えるため、すべてのレジスタをスキャンレジスタに置き換えるフルスキャンテストに比べて、チップ面積の増加が少ない。
【0081】
また、実施の形態1と同様に、レジスタ群が並列に動作している通常の動作状態(ステップS11のテストパターンの動作状態)を利用してテスト条件を作成するとともに、スキャンチェーンの長さを必要最小限にしていることから、より短いテスト時間で未検出の故障を捕捉することができる。
【0082】
(実施の形態3)
図9は、図1に示すテスト容易化設計を行う前の元の回路C0に対して、テスト容易化のために修正を行った後の修正回路C3を示す。元の回路C0において、レジスタ1はプロセッサ104からデータを設定入力でき、レジスタ8はそのデータをプロセッサ104から読み出すことができる。この2つのレジスタ1,8以外のレジスタをスキャンレジスタに置き換えて図9に示す修正回路C3としている。すなわち、元の回路C0におけるレジスタ2〜7およびレジスタ9〜14がスキャンレジスタ2′〜7′およびスキャンレジスタ9′〜14′に置き換えられている(置き換え方法については、図10、図11で説明する)。スキャンレジスタ2′〜7′,14′〜9′がスキャンチェーンを構成する。各スキャンレジスタのデータ出力(Q)は次段のスキャンレジスタのテスト用データ入力(TD)に接続されている。
【0083】
テストデータ入力端子TDIはスキャンチェーンにおける初段のスキャンレジスタ2′のテスト用データ入力(TD)に接続されている。テストデータ出力端子TDOはスキャンチェーンにおける最終段のスキャンレジスタ9′のデータ出力(Q)に接続されている。プロセッサ104からの基本クロックCKがOR回路32と外部からのテストクロック入力端子TCKを2入力とし、出力はスキャンチェーンを構成するスキャンレジスタ2′〜7′およびスキャンレジスタ9′〜14′のクロック入力(CK)に接続する。プロセッサ104からのスキャンイネーブル信号SEの信号線は各スキャンレジスタ2′〜7′,9′〜14′のスキャンイネーブル入力(SE)に接続されている。
【0084】
修正回路C3において、レジスタから置き換えられたスキャンレジスタ2′〜7′,14′〜9′およびこれに接続されたテストデータ入力端子TDI、テストデータ出力端子TDOでスキャンチェーンが構成される。このスキャンチェーンをテストするときは、プロセッサ104は基本クロックCKの出力を停止するとともに、スキャンイネーブル信号SEをアクティブの“1”に切り換える。これにより、スキャンレジスタ2′〜7′,14′〜9′はデータ入力端子を通常動作時のデータ入力(D)からテスト用データ入力(TD)に切り換える。そして、外部からテストクロックをテストクロック入力端子TCKから入力する。このテストクロックはOR回路32を介してスキャンレジスタ2′〜7′,14′〜9′のクロック入力(CK)に供給される。したがって、外部から任意のテスト用データをテストクロック入力端子TCKから初段のスキャンレジスタ2′のテスト用データ入力(TD)に設定入力、順次、次段のスキャンレジスタにシフトさせることができる。スキャンレジスタ2′〜7′に所望のテスト用データを設定入力した状態で、キャプチャー動作を行い、スキャンレジスタ2′〜7′のデータ出力(Q)から出力されたデータは組み合わせ回路102において論理合成され、その結果がスキャンレジスタ9′〜14′のデータ入力(D)に設定入力される。再びスキャン動作を行い、スキャンレジスタ14′のデータをスキャンレジスタ13′に、スキャンレジスタ13′のデータをスキャンレジスタ12′に、以下同様にして、スキャンレジスタ10′のデータをスキャンレジスタ9′にそれぞれシフトさせ、さらにスキャンレジスタ9′のデータ出力(Q)から外部のテストデータ出力端子TDOに出力させる。すなわち、組み合わせ回路102による論理合成を観測することができる。
【0085】
図10は、図1に示す元の回路C0を図9に示す修正回路C3に修正するとともに、修正回路C3のテストパターンを作成する動作を示すフローチャートである。本実施の形態では、実施の形態1,2のテスト容易化設計とは違い、元の回路C0用の既存テストパターンはなく、図9の状態になってからテストパターンを作成する。
【0086】
初めに、ステップS21において、元の回路C0で、データの設定入力または読み出しを直接に行えないレジスタをスキャンレジスタに置き換える。今回の例では、レジスタ2〜7,9〜14をスキャンレジスタに置き換える。
【0087】
併せて、スキャン用のテスト用データを設定入力するためのテストデータ入力端子TDI、スキャンデータを観測するためのテストデータ出力端子TDO、テスト用データの設定入力・シフト・出力のためのテストクロックを入力するテストクロック入力端子TCKを加える。また、プロセッサ104において、スキャンモードを設定するためのスキャンイネーブル信号SEを加える。そして、テストデータ入力端子TDIをスキャンチェーンの初段のレジスタとなるスキャンレジスタ2′のテスト用データ入力(TD)に接続する。テストデータ出力端子TDOをスキャンチェーンの最終段のレジスタとなるスキャンレジスタ9′のデータ出力(Q)に接続する。スキャンイネーブル信号SEをスキャンレジスタ2′〜7′,14′〜9′のスキャンイネーブル入力(SE)に接続する。テストクロック入力端子TCKをOR回路32の1つの入力に接続し、OR回路32のもうひとつの入力をプロセッサ104の基本クロックCKに接続し、OR回路32の出力をスキャンレジスタ2′〜7′,14′〜9′のクロック入力(CK)に接続する。以上によって、図1に示す元の回路C0が図9に示す修正回路C3に修正される。
【0088】
次に、ステップS22において、対象故障をリストアップする。今回の例では、信号線16が“1”に縮退している故障SA1の場合を考える。故障が複数ある場合は、以下の考え方/手順によるパターン作成を故障の数だけ繰り返す。
【0089】
ステップS23において、対象とする故障をテストするための条件を求める。今回の例では、組み合わせ回路102において、AND回路29の入出力にかかわる信号線を対象とする。AND回路29の入力側はレジスタ1、スキャンレジスタ2′,3′,4′の出力の信号線15〜18であり、出力側はスキャンレジスタ10′の信号線24である。そして、信号線16が“1”に縮退していることをテストするためのテスト条件を求める。そのテスト条件は、
レジスタ1の出力の信号線15 ………“1”
レジスタ2′の出力の信号線16 ……“0”
レジスタ3′の出力の信号線17 ……“1”
レジスタ4′の出力の信号線18 ……“1”
である。
【0090】
ステップS24において、プログラムでプロセッサ104を動作させて、または集積回路端子からの入力でテスト用データの設定入力ができるレジスタについては、プログラムまたは集積回路端子を用いてテスト用データを設定入力する。今回の例では、レジスタ1に対してプログラムによりテスト用データを設定入力するようなパターンとする。
【0091】
次に、ステップS25において、プログラムでプロセッサ104を動作させて、または集積回路端子からの入力でテスト用データの設定ができないレジスタについては、スキャンチェーンで値を設定入力する。今回の例では、スキャンレジスタ2′,3′,4′をスキャンチェーンでテスト用データを設定入力するパターンとする。以上でテスト条件を満たすようなパターンとなる。
【0092】
テスト条件が満たされた後、結果を観測するため、ステップS26において、プログラムでプロセッサ104を動作させて、または集積回路端子からの出力でテスト用データの観測ができないレジスタについては、スキャンチェーンでテスト用データを観測する。今回の例では、スキャンレジスタ10′の値をスキャンチェーンで観測する。すなわち、スキャンレジスタ9′にシフトした上で、データ出力端子TDOから読み出す。
【0093】
次に、ステップS27において、プログラムでプロセッサ104を動作させて、または集積回路端子からの出力でテスト用データの観測ができるレジスタについては、プログラムまたは集積回路端子を用いてテスト用データを観測する。今回の例では、本来必要無いが、例えば、レジスタ8の値などをプログラムでプロセッサ104を動作させて観測する。
【0094】
図11は図9に示す修正回路C3の動作を説明するタイミングチャートである。図5の場合と同じ要素と、書き込み制御信号WE2および読み出し制御信号RE1が示されている。
【0095】
時刻T1から時刻T2にかけては、スキャン動作でなく、通常の動作モードにおいて、プログラムまたは集積回路端子で制御できるレジスタに対してテスト用データの設定入力を行う。今回の例ではプロセッサ104を動作させてレジスタ1に“1”を設定入力する。すなわち、時刻T1において、プロセッサ104はバス105に対して、レジスタ1を示すアドレスとレジスタ1に書き込むデータ“1”を出力する。
【0096】
時刻T2において、基本クロックCKの立ち上がりタイミングで、レジスタ1に“1”が書き込まれる。
【0097】
時刻T3から時刻T5にかけてはスキャン動作を行って、スキャンレジスタ2′,3′,4′にテスト用データの設定入力を行う。スキャン動作にするために、時刻T2の後半からスキャンイネーブル信号SEを“1”にし、プロセッサ104からの基本クロックCKを停止する一方、テストクロック入力端子TCKからテストクロックを供給する。
【0098】
時刻T2の後半からテストデータ入力端子TDIを“1”にする。これは、最終的にスキャンレジスタ4′に設定入力すべき値である。
【0099】
時刻T3において、テストクロック入力端子TCKの立ち上がりタイミングでスキャンレジスタ2′にテストデータ入力端子TDIの値が取り込まれる。
【0100】
時刻T3の後半からテストデータ入力端子TDIを“1”にする。これは、最終的にスキャンレジスタ3′に設定入力すべき値である。
【0101】
時刻T4において、テストクロック入力端子TCKの立ち上がりタイミングでスキャンレジスタ2′の値がスキャンレジスタ3′に取り込まれ、スキャンレジスタ2′にテストデータ入力端子TDIの値が取り込まれる。
【0102】
時刻T4の後半からテストデータ入力端子TDIを“0”にする。これは、最終的にスキャンレジスタ2′に設定入力すべき値である。
【0103】
時刻T5において、テストクロック入力端子TCKの立ち上がりタイミングでスキャンレジスタ3′の値がスキャンレジスタ4′に取り込まれ、スキャンレジスタ2′の値がスキャンレジスタ3′に取り込まれ、スキャンレジスタ2′にテストデータ入力端子TDIの値が取り込まれる。時刻T5の状態でテスト状態となる。すなわち、レジスタ1,2′,3′,4′にデータ“1”,“0”,“1”,“1”が設定入力される。
【0104】
時刻T5の後半からスキャンイネーブル信号SEを“0”にする。
【0105】
時刻T6において、基本クロックCKを1発動作させ、テスト状態でのAND回路29の出力をスキャンレジスタ10′に取り込む。スキャンレジスタ10′の値をスキャンチェーンによりテストデータ出力端子TDOに読み出すため、時刻T6の後半からスキャンイネーブル信号SEを“1”にし、時刻T7において、テストクロック入力端子TCKを1発動作させ、スキャンレジスタ10′の値をスキャンレジスタ9′に取り込む。スキャンレジスタ9′のデータ出力(Q)からテストデータ出力端子TDOに出力され、その値を観測することができる。
【0106】
以上により信号線16が“1”に縮退している故障SA1を検出することができる。
【0107】
今回の例では本来必要無いが、プログラムでプロセッサ104を動作させてレジスタ8を観測する場合は、時刻T7の後半からスキャンイネーブル信号SEを“0”にするとともに、、バス105のアドレス部分にレジスタ8を指すアドレスを載せる。時刻T8に基本クロックCKを動作させ、レジスタ8の値をバス105のデータ部分に読み出し観測する。
【0108】
レジスタ1〜14のすべてをスキャンレジスタに置き換えるフルスキャンテストに比べて、本実施の形態では、プロセッサ104から直接制御/観測可能なレジスタ1,8についてはそのままとし、直接制御/観測が不可能なレジスタ2〜7,9〜14に限ってスキャンレジスタと置き換えるようにしたので、チップ面積の増加を抑制することができる。また、レジスタ群が並列に動作している通常の動作状態(プロセッサが動作している状態)を利用して、テスト条件を作成するとともに、スキャンチェーンの長さをなるべく短いものにしていることから、より短いテスト時間で未検出の故障を捕捉することができる。
【0109】
以上、3つの実施の形態について説明したが、実施の形態1と実施の形態2との組み合わせ、実施の形態2と実施の形態3との組み合わせ、実施の形態1と実施の形態3との組み合わせ、実施の形態1と実施の形態2と実施の形態3との組み合わせがある。
【0110】
【発明の効果】
本発明によれば、従来方式のすべてのレジスタをスキャンレジスタに置き換えるフルスキャンテストとは異なり、未検出故障に対応するレジスタのみをスキャンレジスタに置き換えるだけ、あるいは、セット付きレジスタ・リセット付きレジスタとスキャンレジスタとに置き換えるだけである。あるいは、搭載プロセッサまたは集積回路端子から直接に制御/観測できないレジスタのみをスキャンレジスタに置き換えるだけである。このようなパーシャルスキャンテスト方式を採用しているので、フルスキャンテスト方式に比べて、スキャンレジスタに置き換えるべきレジスタの数を少なくすることができ、チップ面積の増大を抑制できる。そして、一部のテストは通常の基本クロックのもとで実行でき、高速処理が可能である。
【0111】
セット付きレジスタまたはリセット付きレジスタとすれば、プロセッサまたは集積回路端子からの制御性が向上する。
【図面の簡単な説明】
【図1】本発明の実施の形態1〜3に共通のテスト容易化設計を行う前の元の回路を示す回路図
【図2】本発明の実施の形態1におけるテスト容易化のために元の回路に対して修正を行った後の修正回路を示す回路図
【図3】実施の形態1における修正回路で使用されたスキャンレジスタの構成を示すレジスタ構成図とその等価回路の回路図
【図4】実施の形態1における修正回路の作成とテストパターンの作成を含むテスト動作を示すフローチャート
【図5】実施の形態1における修正回路の動作を説明するタイミングチャート
【図6】本発明の実施の形態2におけるテスト容易化のために元の回路に対して修正を行った後の修正回路を示す回路図
【図7】実施の形態2における修正回路の作成とテストパターンの作成を含むテスト動作を示すフローチャート
【図8】実施の形態2における修正回路の動作を説明するタイミングチャート
【図9】本発明の実施の形態3におけるテスト容易化のために元の回路に対して修正を行った後の修正回路を示す回路図
【図10】実施の形態3における修正回路の作成とテストパターンの作成を含むテスト動作を示すフローチャート
【図11】実施の形態3における修正回路の動作を説明するタイミングチャート
【図12】従来の集積回路テスト方法の構成図
【符号の説明】
C0 元の回路
C1,C2,C3 修正回路
1〜14 レジスタ(Dフリップフロップ)
1,8 プロセッサから直接制御可能なレジスタ
2〜7 プロセッサから直接制御できないレジスタ
9〜14 プロセッサから直接制御できないレジスタ
2 スキャンレジスタ、リセット付きレジスタ
10 スキャンレジスタ
29 AND回路
30 セレクタ
31 トライステートバッファ(読み出し制御回路)
32 OR回路
101,102,103 組み合わせ回路
104 プロセッサ
105 バス
106 アドレスデコーダ
WE2 書き込み制御信号
RE1,RE3 読み出し制御信号
CK 基本クロック
TDI データ入力端子
TDO データ出力端子
TCK テストクロック入力端子
SE スキャンイネーブル信号

Claims (3)

  1. 半導体集積回路に対して所定のテストパターンに基づく故障シミュレーションを行って検出可能な故障と検出不可能な故障との弁別を行う第1の工程と、
    前記検出不可能な故障を未検出故障としてリストアップする第2の工程と、
    前記未検出故障をテストするためのテスト条件を求める第3の工程と、
    前記第1の工程の故障シミュレーションの所定のテストパターンのうち前記第3の工程のテスト条件に最も近いテストパターンを求める第4の工程と、
    前記第2の工程の未検出故障に対応するレジスタをスキャンレジスタに置き換えるとともに、前記スキャンレジスタをスキャンチェーン接続して修正回路を構成する第5の工程と、
    前記修正回路に対して前記第1の工程における前記所定のテストパターンを用いながら前記未検出故障相当のタイミングでは前記第4の工程で求めたテストパターンに切り換えて故障シミュレーションを行う第6の工程とを含む半導体集積回路のテスト容易化方法。
  2. 請求項1に記載の半導体集積回路のテスト容易化方法において、
    前記第5の工程は、前記未検出故障に対応する入力側のレジスタを、スキャンレジスタに置き換えることに代えて、セット付きレジスタまたはリセット付きレジスタに置き換えて修正回路を構成する半導体集積回路のテスト容易化方法。
  3. 半導体集積回路におけるテスト対象の組み合わせ回路に接続のレジスタ群を、搭載プロセッサで直接に制御および観察が可能な第1のレジスタ、前記半導体集積回路の端子から直接に制御および観察が可能な第2のレジスタ、および、前記第1および第2のレジスタ以外の第3のレジスタに区分した上で、前記第3のレジスタをスキャンレジスタに置き換えるとともに、前記スキャンレジスタをスキャンチェーン接続して修正回路を構成する第1の工程と、
    前記第1および第2のレジスタに対して前記プロセッサまたは前記集積回路端子からテスト用データを設定入力する第2の工程と、
    前記第3のレジスタに対して前記スキャンチェーンを介するシフト動作を伴ってテスト用データを設定入力する第3の工程と、
    前記組み合わせ回路に対する前記テスト用データのキャプチャー動作を行う第4の工程と、
    前記第3のレジスタにあるテスト結果のデータを前記スキャンチェーンを介するシフト動作を伴って出力する第5の工程と、
    前記第1および第2のレジスタにあるテスト結果のデータを出力する第6の工程とを含む半導体集積回路のテスト容易化方法。
JP2002270069A 2002-09-17 2002-09-17 故障検出方法 Expired - Fee Related JP3785388B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2002270069A JP3785388B2 (ja) 2002-09-17 2002-09-17 故障検出方法
CN03158977.4A CN1266481C (zh) 2002-09-17 2003-09-17 用于半导体集成电路的故障检测方法
US10/663,993 US7168004B2 (en) 2002-09-17 2003-09-17 Technique for testability of semiconductor integrated circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002270069A JP3785388B2 (ja) 2002-09-17 2002-09-17 故障検出方法

Publications (2)

Publication Number Publication Date
JP2004110265A true JP2004110265A (ja) 2004-04-08
JP3785388B2 JP3785388B2 (ja) 2006-06-14

Family

ID=32267814

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002270069A Expired - Fee Related JP3785388B2 (ja) 2002-09-17 2002-09-17 故障検出方法

Country Status (3)

Country Link
US (1) US7168004B2 (ja)
JP (1) JP3785388B2 (ja)
CN (1) CN1266481C (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006338565A (ja) * 2005-06-06 2006-12-14 Fujitsu Ltd 磁気ディスク装置、その予防保守検出方法及び予防保守検出プログラム
JP2008089545A (ja) * 2006-10-05 2008-04-17 Matsushita Electric Ind Co Ltd 解析装置

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1322423C (zh) * 2004-07-20 2007-06-20 华为技术有限公司 芯片故障的检测方法
US7519863B2 (en) * 2005-05-20 2009-04-14 Nokia Corporation Detection of a malfunction in a hardware module
JP4693526B2 (ja) * 2005-07-06 2011-06-01 株式会社東芝 半導体集積回路、および、半導体集積回路のテスト方法
US20070174679A1 (en) * 2006-01-26 2007-07-26 Ibm Corporation Method and apparatus for processing error information and injecting errors in a processor system
KR100901522B1 (ko) 2007-08-07 2009-06-08 연세대학교 산학협력단 심볼릭 시뮬레이션을 이용한 스캔 체인 고장 진단 방법 및장치
US8522080B2 (en) 2008-03-24 2013-08-27 Emulex Design & Manufacturing Corporation Generation of simulated errors for high-level system validation
KR20160080586A (ko) * 2014-12-30 2016-07-08 삼성전자주식회사 집적 회로의 설계 방법 및 집적 회로의 설계를 위한 컴퓨팅 시스템
CN105842607A (zh) * 2016-03-21 2016-08-10 北京航空航天大学 一种测试性设计中测试点定量选择方法及装置
US10598730B1 (en) * 2018-11-13 2020-03-24 Realtek Semiconductor Corporation Testing method and testing system
CN112698187B (zh) * 2020-12-08 2023-08-04 重庆百瑞互联电子技术有限公司 一种提高集成电路测试覆盖率的方法及装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL192801C (nl) * 1986-09-10 1998-02-03 Philips Electronics Nv Werkwijze voor het testen van een drager met meerdere digitaal-werkende geïntegreerde schakelingen, geïntegreerde schakeling geschikt voor het aanbrengen op een aldus te testen drager, en drager voorzien van meerdere van zulke geïntegreerde schakelingen.
US4742293A (en) * 1987-04-06 1988-05-03 Hughes Aircraft Company Pseudo-memory circuit for testing for stuck open faults
JPH0580120A (ja) 1991-04-16 1993-04-02 Matsushita Electric Ind Co Ltd 集積回路の検査方法
US5291495A (en) * 1991-07-12 1994-03-01 Ncr Corporation Method for designing a scan path for a logic circuit and testing of the same
JPH06230075A (ja) 1993-02-05 1994-08-19 Fujitsu Ltd シリアルスキャンチェーンにおける不良フリップフロップの検出方法
US5648733A (en) * 1995-11-01 1997-07-15 Lsi Logic Corporation Scan compatible 3-state bus control
US5717700A (en) * 1995-12-04 1998-02-10 Motorola, Inc. Method for creating a high speed scan-interconnected set of flip-flop elements in an integrated circuit to enable faster scan-based testing
US6285999B1 (en) * 1997-01-10 2001-09-04 The Board Of Trustees Of The Leland Stanford Junior University Method for node ranking in a linked database
EP0874315B1 (en) * 1997-04-25 2004-03-31 Matsushita Electric Industrial Co., Ltd. Method of design for testability, test sequence generation method and semiconductor integrated circuit
US6658615B2 (en) * 1998-06-30 2003-12-02 Texas Instruments Incorporated IC with IP core and user-added scan register
US6219812B1 (en) * 1998-06-11 2001-04-17 Sun Microsystems, Inc. Apparatus and method for interfacing boundary-scan circuitry with DTL output drivers
US6745357B2 (en) * 1998-10-27 2004-06-01 Intrinsity, Inc. Dynamic logic scan gate method and apparatus
US6415403B1 (en) * 1999-01-29 2002-07-02 Global Unichip Corporation Programmable built in self test for embedded DRAM
US6651197B1 (en) * 1999-05-20 2003-11-18 Silicon Graphics, Inc. Method for determining the optimum locations for scan latches in a partial-scan IC built in self test system
JP2001165999A (ja) * 1999-12-14 2001-06-22 Mitsubishi Electric Corp 半導体集積回路およびこれを用いた半導体集積回路装置
US6476636B1 (en) * 2000-09-02 2002-11-05 Actel Corporation Tileable field-programmable gate array architecture
US6807645B2 (en) * 2002-02-04 2004-10-19 International Business Machines Corporation Method and apparatus for implementing enhanced LBIST diagnostics of intermittent failures

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006338565A (ja) * 2005-06-06 2006-12-14 Fujitsu Ltd 磁気ディスク装置、その予防保守検出方法及び予防保守検出プログラム
JP4554441B2 (ja) * 2005-06-06 2010-09-29 富士通株式会社 磁気ディスク装置、その予防保守検出方法及び予防保守検出プログラム
JP2008089545A (ja) * 2006-10-05 2008-04-17 Matsushita Electric Ind Co Ltd 解析装置

Also Published As

Publication number Publication date
US20040153806A1 (en) 2004-08-05
JP3785388B2 (ja) 2006-06-14
CN1495434A (zh) 2004-05-12
CN1266481C (zh) 2006-07-26
US7168004B2 (en) 2007-01-23

Similar Documents

Publication Publication Date Title
JP3851782B2 (ja) 半導体集積回路及びそのテスト方法
JP4701244B2 (ja) マイクロコンピュータ及びそのテスト方法
JP2009270832A (ja) 論理回路
JP2770617B2 (ja) テスト回路
JP3785388B2 (ja) 故障検出方法
US8145963B2 (en) Semiconductor integrated circuit device and delay fault testing method thereof
JP2007205933A (ja) 半導体集積回路
US20070022343A1 (en) Semiconductor integrated circuit, method for testing semiconductor integrated circuit, and computer readable medium for the same
US20060236179A1 (en) Delay test method for large-scale integrated circuits
JP4265934B2 (ja) スキャンパス回路およびそれを備える論理回路ならびに集積回路のテスト方法
JP2005300308A (ja) 半導体集積回路
JP4610919B2 (ja) 半導体集積回路装置
JP3339479B2 (ja) クロック制御回路および方法
JP2005257366A (ja) 半導体回路装置及び半導体回路に関するスキャンテスト方法
JP2007003338A (ja) 半導体装置及びそのテスト方法
JP2001004710A (ja) スキャンテスト回路、自動テストパターン生成装置、スキャンテスト方法、スキャンテスト回路設計方法、自動テストパターン生成方法、スキャンテスト回路設計方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体および自動テストパターン生成方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
JP4416469B2 (ja) 半導体集積回路およびその設計方法
JP2009175154A (ja) 半導体集積回路およびその設計方法
JP5796404B2 (ja) 半導体回路及びテスト方法
JP5625241B2 (ja) 半導体装置及びその試験方法
JP3588052B2 (ja) バウンダリスキャンテスト回路
JP4650928B2 (ja) スキャンフリップフロップ回路とこれを用いたスキャンテスト回路およびテスト設計手法
JP2001296334A (ja) 集積回路および故障検出方法
JP3240744B2 (ja) 出力パッド回路及びテスト回路
JPH07174821A (ja) バウンダリスキャンセルおよびテスト回路の検証方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050726

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050926

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20051101

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051228

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20060125

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: 20060307

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060317

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100324

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110324

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110324

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees