JP2007040921A - スキャンチェーンにおける故障位置特定方法 - Google Patents
スキャンチェーンにおける故障位置特定方法 Download PDFInfo
- Publication number
- JP2007040921A JP2007040921A JP2005227722A JP2005227722A JP2007040921A JP 2007040921 A JP2007040921 A JP 2007040921A JP 2005227722 A JP2005227722 A JP 2005227722A JP 2005227722 A JP2005227722 A JP 2005227722A JP 2007040921 A JP2007040921 A JP 2007040921A
- Authority
- JP
- Japan
- Prior art keywords
- scan chain
- flip
- defective
- flop
- scan
- 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.)
- Withdrawn
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/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318533—Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
- G01R31/318566—Comparators; Diagnosing the device under test
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Tests Of Electronic Circuits (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
【課題】すべてのフリップフロップがセット・リセット端子を有していない場合、故障している可能性のあるフリップフロップは1つに特定することができない。1つに特定するためには、回路に修正を加える必要があった。
【解決手段】組み合わせ回路n1,n2間に形成されるスキャンチェーンの複数について故障の有無の判定を行い、次いで、不良スキャンチェーンc2に隣接する組み合わせ回路n1からキャプチャ動作により不良スキャンチェーンに対して任意のデータ列をセットし、次いで、不良スキャンチェーンにおいてセットされたデータ列をシフトアウトし、シフトアウトされたデータ列を期待値と比較して不良スキャンチェーンにおける故障位置を特定する。不良スキャンチェーンにも正しく値をセットでき、不良フリップフロップを1つに特定することが可能になる。
【選択図】図1
【解決手段】組み合わせ回路n1,n2間に形成されるスキャンチェーンの複数について故障の有無の判定を行い、次いで、不良スキャンチェーンc2に隣接する組み合わせ回路n1からキャプチャ動作により不良スキャンチェーンに対して任意のデータ列をセットし、次いで、不良スキャンチェーンにおいてセットされたデータ列をシフトアウトし、シフトアウトされたデータ列を期待値と比較して不良スキャンチェーンにおける故障位置を特定する。不良スキャンチェーンにも正しく値をセットでき、不良フリップフロップを1つに特定することが可能になる。
【選択図】図1
Description
本発明は、半導体集積回路のスキャンチェーンにおける故障位置特定方法に関するものである。
図4は、従来の半導体集積回路のスキャンチェーンの構成図の一例である。スキャンチェーンc10を構成するスキャンフリップフロップF1〜F5はそれぞれセット端子、リセット端子を有し、セット・リセット可能に構成されている。不良フリップフロップの検出に際して、まず各フリップフロップF1〜F5をセット端子、リセット端子を用いて所定のビット値“0”または“1”にセットする。この工程により、スキャンチェーンc10は所定のビット列にセットされることとなる。次いで、そのスキャンチェーンc10内をスキャンシフトさせてスキャンアウト端子からのシフトアウトにより出力ビット列を得る。次いで、出力ビット列と期待値ビット列(セットビット列)とを比較して、その不一致箇所に基づいて不良フリップフロップを特定する。いずれかのフリップフロップが不良で、“0”または“1”のいずれかにホールドされていると、その前段の値がどのようなものであっても、これ以降、ホールドされた値が出力されることとなり、出力ビット列において値が期待値と一致しない箇所に対応するフリップフロップが不良として特定される。
次に具体例を説明する。図4で×印で示すようにフリップフロップF2とフリップフロップF3の間に0縮退故障があるとする。ここで記載しているビット列の並び“11111”については、一番左がフリップフロップF1の値、一番右がフリップフロップF5の値のように、図示されたフリップフロップF1〜F5と同じ順序で記載している。したがって、シフトイン・シフトアウトされる順序はビット列の右側からとなる。この不良のスキャンチェーンc10のセット端子を用いて“11111”というビット列をセットし、スキャンアウト端子からシフトアウトした値とを比較する。この場合、フリップフロップF2の出力側に×印で示す0縮退故障が存在するため、フリップフロップF2よりスキャンイン側のフリップフロップの値がどのような値であっても、シフトアウトされる値は“00111”となる。期待値“11111”に対して、フリップフロップF2よりスキャンイン側のフリップフロップで値が異なっている。したがって、フリップフロップF2の出力からフリップフロップF3の入力の間に不良が存在すると特定できる。
特開平6−230075号公報(第2−3頁、第1−2図)
しかし、従来の方法で不良フリップフロップを特定する場合、すべてのフリップフロップがセット・リセット端子を有している必要がある。もしすべてのフリップフロップがセット・リセット端子を有していない場合は、故障している可能性のあるフリップフロップは1つに特定できるとは限らず、不良フリップフロップの位置がある範囲内であるとしか判定できなくなる場合があるという問題がある。
その問題について、図5(a),図5(b)に基づいて一例を説明する。図5に示すスキャンチェーンc20に属するフリップフロップF1〜F5のうち、フリップフロップF2,F4はセット端子を有し、フリップフロップF3はリセット端子を有し、その他のフリップフロップはセット端子もリセット端子も有していない。図5(a)では、フリップフロップF2とフリップフロップF3の間に×印で示す0縮退故障があるとする。図5(b)では、フリップフロップF3とフリップフロップF4の間に0縮退故障があるとする。そして、セット端子を用いて“X1X1X”というビット列をセットし、スキャンアウト端子からシフトアウトした値と比較する。
図5(a)の場合、スキャンアウト端子からシフトアウトされる値は“00X1X”となり、フリップフロップF2にて期待値と不一致となる。したがって、フリップフロップF2の出力側には故障の可能性があることが分かり、実際の故障箇所と一致する。
しかし、図5(b)のようにセット端子がないフリップフロップF3に0縮退故障があった場合、シフトアウトされる値は“0001X”となるが、これも期待値と不一致となるフリップフロップはやはりフリップフロップF2となり、フリップフロップF2の出力側に故障あると誤った判断をしてしまう。
このように期待値が“X”となってしまう箇所、つまりセット・リセット端子を有していないフリップフロップに故障が存在していた場合を考慮すると、故障の可能性はフリップフロップF2の出力側とフリップフロップF3の出力側のどちらにあるかが直接には判断できず、故障フリップフロップを1つに特定できないことになる。
本発明の目的は、従来技術における問題点を解決し、すべてのフリップフロップがセット・リセット端子を有していなくても、回路構成に特別な変更を加えることなく、スキャンチェーンにおける故障位置を正確に特定することができる故障位置特定方法を提供することにある。
本発明によるスキャンチェーンにおける故障位置特定方法は、
組み合わせ回路間に形成される複数のフリップフロップのチェーンであるスキャンチェーンの複数について故障の有無の判定を行うステップと、
次いで、故障のあった不良スキャンチェーンに隣接する組み合わせ回路からキャプチャ動作により前記不良スキャンチェーンに対して任意のデータ列をセットするステップと、
次いで、前記不良スキャンチェーンにおいてセットされた前記データ列をシフトアウトするステップと、
次いで、シフトアウトされた前記データ列を期待値と比較して前記不良スキャンチェーンにおける故障位置を特定するステップとを含むものである。
組み合わせ回路間に形成される複数のフリップフロップのチェーンであるスキャンチェーンの複数について故障の有無の判定を行うステップと、
次いで、故障のあった不良スキャンチェーンに隣接する組み合わせ回路からキャプチャ動作により前記不良スキャンチェーンに対して任意のデータ列をセットするステップと、
次いで、前記不良スキャンチェーンにおいてセットされた前記データ列をシフトアウトするステップと、
次いで、シフトアウトされた前記データ列を期待値と比較して前記不良スキャンチェーンにおける故障位置を特定するステップとを含むものである。
すなわち、スキャンチェーンのフリップフロップが必ず有している組み合わせ回路からの入力端子を用いて、組み合わせ回路からのキャプチャ動作により不良スキャンチェーンに任意のビット列をセットし、スキャンシフトによりその出力ビット列を得て、期待値ビット列と比較することにより、不良フリップフロップの位置を特定する。このように、不良スキャンチェーンに対して組み合わせ回路経由で任意のビット列をセットできるので、すべてのフリップフロップがセット・リセット端子を有していなくても、回路構成に特別な変更を加えることなく、スキャンチェーンにおける故障位置を正確に特定することができる。
上記において、さらに、前記故障の有無の判定を行うステップと前記不良スキャンチェーンに対して任意のデータ列をセットするステップとの間に、前記不良スキャンチェーンにも正しく初期値をシフトイン可能とするために、前記不良スキャンチェーン上の初期値を不定値“X”の連続データとしてテストパターン自動生成を行い、得られたテストパターンを前記複数のスキャンチェーンにシフトインするステップを有しているものとする。
フリップフロップにおける組み合わせ回路からの入力端子を用いて不良スキャンチェーンに任意のビット列をセットするためには、テストパターンの自動生成を行い、前段のスキャンチェーンのフリップフロップに初期値を入力する必要がある。また、生成したテストパターンを不良スキャンチェーンに正しくシフトインするためには、不良スキャンチェーンにシフトイン可能なパターンにする必要がある。パターン生成時に、不良スキャンチェーンにシフトインすべき値を不定値“X”としてパターン生成を行うことで、不良スキャンチェーンでも生成したパターンを正しくシフトインすることができる。
あるいは、上記において、さらに、前記故障の有無の判定を行うステップと前記不良スキャンチェーンに対して任意のデータ列をセットするステップとの間に、前記不良スキャンチェーンにも正しく初期値をシフトイン可能とするために、前記不良スキャンチェーン上の初期値を、スキャンチェーン上に存在する故障値の連続データとしてテストパターン自動生成を行い、得られたテストパターンを前記複数のスキャンチェーンにシフトインするステップを有しているものとする。これによれば、生成可能なパターンのバリエーションを増やすことができ、キャプチャ動作後における不良スキャンチェーンの状態を任意の値にセットしやすくなり、結果として、故障位置の特定が容易になる。
また、上記において、前記テストパターン自動生成を伴うステップは、前記不良スキャンチェーン上の初期値の設定にフリップフロップのセット・リセット端子も併用することは好ましい。これによれば、生成可能なパターンのバリエーションを増やすことができ、キャプチャ動作後における不良スキャンチェーンの状態を任意の値にセットしやすくなり、結果として、故障位置の特定が容易になる。
また、上記において、前記キャプチャ動作により前記組み合わせ回路を介して前記不良スキャンチェーンにセットした任意のデータ列が不定値“X”を含んでいる場合には、セット端子付きのフリップフロップではそのセットを行い、リセット端子付きのフリップフロップではそのリセットを行って任意にデータ列の再設定を行うという態様がある。これによれば、組み合わせ回路から不良スキャンチェーンにセットした任意のデータ列に不定値“X”が含まれていても、不良スキャンチェーンを任意の値に再度セットし直すことができ、結果的に不良位置を特定しやすくなる。
本発明によれば、不良スキャンチェーンに対して組み合わせ回路経由で任意のビット列をセットできるので、すべてのフリップフロップがセット・リセット端子を有していなくても、回路構成に特別な変更を加えることなく、スキャンチェーンにおける故障位置を正確に特定することができる。
以下、本発明にかかわる故障位置特定方法の実施の形態を図面に基づいて詳細に説明する。
(実施の形態1)
図3は、本発明の実施の形態におけるスキャンチェーンにおける故障位置特定方法を説明するための半導体集積回路の回路概略図である。図3に示す半導体集積回路1は、第1ないし第3のスキャンチェーンc1,c2,c3を備えている。第1のスキャンチェーンc1はチェーン状に接続された5段のスキャンフリップフロップF11〜F15を備えている。同様に、第2のスキャンチェーンc2は5段のスキャンフリップフロップF21〜F25を備え、第3のスキャンチェーンc3は5段のスキャンフリップフロップF31〜F35を備えている。第1のスキャンチェーンc1を構成するフリップフロップF11〜F15は第2のスキャンチェーンc2を構成するフリップフロップF21〜F25に対して第1の組み合わせ回路n1を介して接続され、第2のスキャンチェーンc2を構成するフリップフロップF21〜F25は第3のスキャンチェーンc3を構成するフリップフロップF31〜F35に対して第2の組み合わせ回路n2を介して接続されている。各フリップフロップは、組み合わせ回路からの入力端子とスキャン入力するための入力端子とを備えており、スキャンイネーブル信号により制御される。
図3は、本発明の実施の形態におけるスキャンチェーンにおける故障位置特定方法を説明するための半導体集積回路の回路概略図である。図3に示す半導体集積回路1は、第1ないし第3のスキャンチェーンc1,c2,c3を備えている。第1のスキャンチェーンc1はチェーン状に接続された5段のスキャンフリップフロップF11〜F15を備えている。同様に、第2のスキャンチェーンc2は5段のスキャンフリップフロップF21〜F25を備え、第3のスキャンチェーンc3は5段のスキャンフリップフロップF31〜F35を備えている。第1のスキャンチェーンc1を構成するフリップフロップF11〜F15は第2のスキャンチェーンc2を構成するフリップフロップF21〜F25に対して第1の組み合わせ回路n1を介して接続され、第2のスキャンチェーンc2を構成するフリップフロップF21〜F25は第3のスキャンチェーンc3を構成するフリップフロップF31〜F35に対して第2の組み合わせ回路n2を介して接続されている。各フリップフロップは、組み合わせ回路からの入力端子とスキャン入力するための入力端子とを備えており、スキャンイネーブル信号により制御される。
分かりやすくするために、言葉の定義を行う。本方法では、ビット列をスキャンチェーンに入力する動作が2通りある。1つ目は、不良スキャンチェーンに対して組み合わせ回路からキャプチャ動作により任意の値を代入する動作であり、これを“セットする”と定義する。2つ目は、不良スキャンチェーンに値をセットするために、テストパターンの自動生成で生成したパターンを初期値として、組み合わせ回路の入力側のフリップフロップに対してスキャンイン端子から入力する動作であり、これを“初期値を入力する“と定義する。
本発明の実施の形態1におけるスキャンチェーンにおける故障位置特定方法の動作を図1に示すフローチャートを用いて説明する。ここでは、図3のスキャンチェーンc2において、×印で示すようにスキャンイン端子i2から2段目のフリップフロップF22と3段目のフリップフロップF23の間に0縮退故障が存在する場合を例に挙げて説明する。
まずステップS1において、第1ないし第3のスキャンチェーンc1〜c3における故障の有無の判定を行う。すなわち、それぞれスキャンイン端子i1〜i3から第1ないし第3のスキャンチェーンc1〜c3のフリップフロップにデータを入力し、スキャンシフトにより入力したデータをそのままそれぞれスキャンアウト端子o1〜o3から出力する。この動作により、スキャンイン端子i1〜i3から入力したデータと5段シフトした後にスキャンアウト端子o1〜o3から出力されるデータがそれぞれ一致するか否かを判断し、一致すれば、第1ないし第3のスキャンチェーンc1〜と第3のスキャンチェーンc3のそれぞれには故障がないと判断でき、不一致があれば故障があると判断できる。図3の例では、第1のスキャンチェーンc1と第3のスキャンチェーンc3には故障が存在しないため、スキャンインした値とスキャンアウトした値が一致し、故障が存在しないと判断できる。一方、第2のスキャンチェーンc2には例に挙げた0縮退故障が存在しているので、スキャンイン端子i2の入力値とスキャンアウト端子o2からの出力値が不一致となり、故障があると判断できる。
次いでステップS2において、故障のあった不良スキャンチェーンがどのスキャンチェーンかを特定するとともに、第2のスキャンチェーンc2上の故障が0縮退か1縮退かを判断する。なお、このステップでは故障位置までは特定できない。
具体的には、第2のスキャンチェーンc2のスキャンイン端子i2から“11100”というデータをシフトインし、スキャンアウト端子o2からシフトアウトされるデータが“00000”となるため、入力したデータと出力されたデータの不一致が生じる。また、シフトアウトされるデータから第2のスキャンチェーンc2に存在する故障は0縮退故障であると判断できる。
次いでステップS3において、故障位置特定用のテストパターンの自動生成を行う。これは、後述するステップS4、ステップS5にて不良スキャンチェーンに任意の値が正しく設定できるように考慮した上で生成されるパターンである。故障のある第2のスキャンチェーンc2に対してスキャンイン端子i2から入力する初期値がすべて不定値“XXXXX”であっても、キャプチャ動作で第1の組み合わせ回路n1を経由してセットされる値が例えば“11111”となるように、その他のスキャンチェーンc1,c3にシフトインすべき初期値を定める。ここで、テストパターンの生成について詳しく説明する。
キャプチャ動作により第2のスキャンチェーンc2に任意の値を正しくセットする上で、第1のスキャンチェーンc1だけでなく、全スキャンチェーンc1〜c3に正しく初期値を代入する必要がある。それは、例えば、第2のスキャンチェーンc2において、フリップフロップF22の出力信号が組み合わせ回路を経由してフリップフロップF24にフィードバックされるような場合もあるからである。
第2のスキャンチェーンc2に“11111”をセットするためのテストパターンが、第1のスキャンチェーンc1に初期値“11000”、第2のスキャンチェーンc2に初期値“10111”、第3のスキャンチェーンc3に初期値“00001”であるとする。しかし、第2のスキャンチェーンc2には0縮退故障が存在しているため、スキャンイン端子i2から初期値“10111”を入力しようとしても、実際には“10000”という初期値が設定されてしまう。この場合、第1の組み合わせ回路n1からの出力値により第2のスキャンチェーンc2にセットする値は“11111”とならない。
そこで、ステップS3でパターン生成を行うときには、スキャンイン端子i2から第2のスキャンチェーンc2に入力する初期値がすべて不定値“XXXXX”でも、組み合わせ回路を経由してセットされる値が“11111”となるように、その他のスキャンチェーンc1,c3にシフトインすべき初期値のテストパターンの自動生成を行う。これにより、第2のスキャンチェーンc2の初期値にかかわらず、ステップS5での組み合わせ回路経由で第2のスキャンチェーンc2にセットされる値は正しく“11111”に設定されることになるはずである。
次いでステップS4において、上記で生成したテストパターンを各スキャンイン端子i1〜i3からそれぞれシフトイン動作によりスキャンチェーンc1〜c3に入力する。不良でない第1および第3のスキャンチェーンc1,c3にはそれぞれスキャンイン端子i1,i3からシフトインにて初期値を正しく入力できる。
次いでステップS5において、キャプチャ動作を行い、スキャンチェーンc1〜c3に入力された値を用いて不良の第2のスキャンチェーンc2に値をセットする。すなわち、スキャンイン端子i2から第2のスキャンチェーンc2に入力された初期値がすべて不定値“XXXXX”でも、第1の組み合わせ回路n1を(場合によっては第2の組み合わせ回路n2も)経由して第2のスキャンチェーンc2にセットされる値は所望の通りの“11111”となる。
次いでステップS6において、第2のスキャンチェーンc2の値をスキャンアウト端子o2からシフトアウトすることで、第2のスキャンチェーンc2に代入されているビット列を出力する。
そしてステップS7において、出力値を期待値と比較する。ここでは期待値は“11111”のはずであるが、例の場合、フリップフロップF22とフリップフロップF23の間に0縮退故障が存在するため、スキャンアウト端子o2から出力した値は“00111”となる。したがって、フリップフロップF22の出力側に故障が存在すると判断できる。
本実施の形態によれば、すべてのフリップフロップがセット・リセット端子を有していなくても、回路構成に特別な変更を加えることなく、スキャンチェーンにおける故障位置を正確に特定することができる。
(実施の形態2)
なお、上記実施の形態1では、ステップS3で、第2のスキャンチェーンc2にもシフトイン可能なテストパターンの自動生成にてすべて不定値“XXXXX”を設定した。しかし、第2のスキャンチェーンc2上の故障値はスキャンチェーンが故障しているかどうかを調べるステップS2の段階で分かっている。したがって、パターン生成時に故障が存在する第2のスキャンチェーンc2に与える初期値を“XXXXX”とする代わりに、第2のスキャンチェーンc2にて観測した故障値0(縮退値)を入力側に伝播させた値“00000”を初期値として用いてもよい。このように組み合わせ回路の入力として与える初期値のバリエーションを増やすことで、故障が存在する第2のスキャンチェーンc2に任意の値をセットするためのテストパターンの自動生成を行うときに、より多くのパターンを生成することができるため、故障位置の特定が容易になる。
なお、上記実施の形態1では、ステップS3で、第2のスキャンチェーンc2にもシフトイン可能なテストパターンの自動生成にてすべて不定値“XXXXX”を設定した。しかし、第2のスキャンチェーンc2上の故障値はスキャンチェーンが故障しているかどうかを調べるステップS2の段階で分かっている。したがって、パターン生成時に故障が存在する第2のスキャンチェーンc2に与える初期値を“XXXXX”とする代わりに、第2のスキャンチェーンc2にて観測した故障値0(縮退値)を入力側に伝播させた値“00000”を初期値として用いてもよい。このように組み合わせ回路の入力として与える初期値のバリエーションを増やすことで、故障が存在する第2のスキャンチェーンc2に任意の値をセットするためのテストパターンの自動生成を行うときに、より多くのパターンを生成することができるため、故障位置の特定が容易になる。
(実施の形態3)
なお、上記実施の形態1,2と同様に、ステップS3で、第2のスキャンチェーンc2にもシフトイン可能なテストパターンの自動生成にてすべて不定値の“XXXXX”や“00000”を生成するようにした。これを、第2のスキャンチェーンc2に属するフリップフロップF21〜F25が有しているセット・リセット端子を使用したパターン“X101X”を併用することで、初期値として用いてもよい。このように組み合わせ回路の入力として与える初期値のバリエーションを増やすことで、故障が存在する第2のスキャンチェーンc2に任意の値をセットするためのテストパターンの自動生成を行うときに、より多くのパターンを生成することができるため、故障位置の特定が容易になる。
なお、上記実施の形態1,2と同様に、ステップS3で、第2のスキャンチェーンc2にもシフトイン可能なテストパターンの自動生成にてすべて不定値の“XXXXX”や“00000”を生成するようにした。これを、第2のスキャンチェーンc2に属するフリップフロップF21〜F25が有しているセット・リセット端子を使用したパターン“X101X”を併用することで、初期値として用いてもよい。このように組み合わせ回路の入力として与える初期値のバリエーションを増やすことで、故障が存在する第2のスキャンチェーンc2に任意の値をセットするためのテストパターンの自動生成を行うときに、より多くのパターンを生成することができるため、故障位置の特定が容易になる。
(実施の形態4)
本発明の実施の形態4におけるスキャンチェーンにおける故障位置特定方法は、図2のフローチャートに従うものである。フローの違いは、図1のステップS5、ステップS6の間に新たなステップS5aが加わった点である。ステップS5にて、組み合わせ回路からの値をキャプチャ動作により不良の第2のスキャンチェーンc2にセットする。このときテストパターンの自動生成で生成したパターンを用いてキャプチャ動作を行った結果、不良の第2のスキャンチェーンc2にセットされる値が“1X1X1”というパターンしか生成できなかった場合、ステップS5aにて不良の第2のスキャンチェーンc2に属するフリップフロップF21〜F25の有するセット・リセット端子を併用し、値を再度設定することで、不良の第2のスキャンチェーンc2に最終的に“11111”を代入することができる。このようにキャプチャ動作後に不良の第2のスキャンチェーンc2に代入されている値のバリエーションを増やすことで、故障位置の特定が容易になる。
本発明の実施の形態4におけるスキャンチェーンにおける故障位置特定方法は、図2のフローチャートに従うものである。フローの違いは、図1のステップS5、ステップS6の間に新たなステップS5aが加わった点である。ステップS5にて、組み合わせ回路からの値をキャプチャ動作により不良の第2のスキャンチェーンc2にセットする。このときテストパターンの自動生成で生成したパターンを用いてキャプチャ動作を行った結果、不良の第2のスキャンチェーンc2にセットされる値が“1X1X1”というパターンしか生成できなかった場合、ステップS5aにて不良の第2のスキャンチェーンc2に属するフリップフロップF21〜F25の有するセット・リセット端子を併用し、値を再度設定することで、不良の第2のスキャンチェーンc2に最終的に“11111”を代入することができる。このようにキャプチャ動作後に不良の第2のスキャンチェーンc2に代入されている値のバリエーションを増やすことで、故障位置の特定が容易になる。
上記実施の形態1〜4では、0縮退故障がある場合を想定して、その故障箇所を特定する例を挙げて説明したが、本発明では1縮退故障も同様にその故障箇所を特定可能である。また、スキャンチェーンのどこに故障があっても、その故障位置を正確に特定することができる。
本発明のスキャンチェーンにおける故障位置特定方法は、スキャンチェーンを有する半導体集積回路において、スキャンチェーン上のフリップフロップ群における不良フリップフロップを特定する技術として有用である。
1 半導体集積回路
c1,c2,c3 スキャンチェーン
F11〜F15,F21〜F25,F31〜F35 スキャンフリップフロップ
c1,c2,c3 スキャンチェーン
F11〜F15,F21〜F25,F31〜F35 スキャンフリップフロップ
Claims (5)
- 組み合わせ回路間に形成される複数のフリップフロップのチェーンであるスキャンチェーンの複数について故障の有無の判定を行うステップと、
次いで、故障のあった不良スキャンチェーンに隣接する組み合わせ回路からキャプチャ動作により前記不良スキャンチェーンに対して任意のデータ列をセットするステップと、
次いで、前記不良スキャンチェーンにおいてセットされた前記データ列をシフトアウトするステップと、
次いで、シフトアウトされた前記データ列を期待値と比較して前記不良スキャンチェーンにおける故障位置を特定するステップとを含むスキャンチェーンにおける故障位置特定方法。 - 前記故障の有無の判定を行うステップと前記不良スキャンチェーンに対して任意のデータ列をセットするステップとの間に、前記不良スキャンチェーンにも正しく初期値をシフトイン可能とするために、前記不良スキャンチェーン上の初期値を不定値“X”の連続データとしてテストパターン自動生成を行い、得られたテストパターンを前記複数のスキャンチェーンにシフトインするステップを有している請求項1に記載のスキャンチェーンにおける故障位置特定方法。
- 前記故障の有無の判定を行うステップと前記不良スキャンチェーンに対して任意のデータ列をセットするステップとの間に、前記不良スキャンチェーンにも正しく初期値をシフトイン可能とするために、前記不良スキャンチェーン上の初期値を、スキャンチェーン上に存在する故障値の連続データとしてテストパターン自動生成を行い、得られたテストパターンを前記複数のスキャンチェーンにシフトインするステップを有している請求項1に記載のスキャンチェーンにおける故障位置特定方法。
- 前記テストパターン自動生成を伴うステップは、前記不良スキャンチェーン上の初期値の設定にフリップフロップのセット・リセット端子も併用する請求項2または請求項3に記載のスキャンチェーンにおける故障位置特定方法。
- 前記キャプチャ動作により前記組み合わせ回路を介して前記不良スキャンチェーンにセットした任意のデータ列が不定値“X”を含んでいる場合には、セット端子付きのフリップフロップではそのセットを行い、リセット端子付きのフリップフロップではそのリセットを行って任意にデータ列の再設定を行う請求項2から請求項4までのいずれかに記載のスキャンチェーンにおける故障位置特定方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005227722A JP2007040921A (ja) | 2005-08-05 | 2005-08-05 | スキャンチェーンにおける故障位置特定方法 |
US11/498,757 US20070043989A1 (en) | 2005-08-05 | 2006-08-04 | Method for specifying failure position in scan chain |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005227722A JP2007040921A (ja) | 2005-08-05 | 2005-08-05 | スキャンチェーンにおける故障位置特定方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007040921A true JP2007040921A (ja) | 2007-02-15 |
Family
ID=37768536
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005227722A Withdrawn JP2007040921A (ja) | 2005-08-05 | 2005-08-05 | スキャンチェーンにおける故障位置特定方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20070043989A1 (ja) |
JP (1) | JP2007040921A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100901522B1 (ko) * | 2007-08-07 | 2009-06-08 | 연세대학교 산학협력단 | 심볼릭 시뮬레이션을 이용한 스캔 체인 고장 진단 방법 및장치 |
JP2010286383A (ja) * | 2009-06-12 | 2010-12-24 | Renesas Electronics Corp | 故障箇所推定装置、故障箇所推定方法及びプログラム |
US8356217B2 (en) | 2009-06-29 | 2013-01-15 | Fujitsu Limited | Storage circuit, integrated circuit, and scanning method |
CN106164687A (zh) * | 2014-04-11 | 2016-11-23 | 高通股份有限公司 | 针对具有异步复位信号的扫描链的复位方案 |
JP7107602B1 (ja) * | 2021-02-25 | 2022-07-27 | Necプラットフォームズ株式会社 | スキャンパス回路の故障個所特定装置、故障個所特定方法およびプログラム |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8316265B2 (en) | 2007-03-04 | 2012-11-20 | Mentor Graphics Corporation | Test pattern generation for diagnosing scan chain failures |
US8261142B2 (en) | 2007-03-04 | 2012-09-04 | Mentor Graphics Corporation | Generating test sets for diagnosing scan chain failures |
JPWO2008120362A1 (ja) * | 2007-03-29 | 2010-07-15 | 富士通株式会社 | 不良箇所特定装置、不良箇所特定方法および集積回路 |
US8281279B2 (en) * | 2010-12-08 | 2012-10-02 | International Business Machines Corporation | Creating scan chain definition from high-level model using high-level model simulation |
US8775882B2 (en) * | 2010-12-28 | 2014-07-08 | Stmicroelectronics International N.V. | Testing circuits |
US8862956B2 (en) * | 2011-02-15 | 2014-10-14 | Mentor Graphics Corporation | Compound hold-time fault diagnosis |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6694454B1 (en) * | 2000-06-30 | 2004-02-17 | International Business Machines Corporation | Stuck and transient fault diagnostic system |
US7010735B2 (en) * | 2002-01-10 | 2006-03-07 | International Business Machines Corporation | Stuck-at fault scan chain diagnostic method |
TW583745B (en) * | 2003-03-07 | 2004-04-11 | Silicon Integrated Sys Corp | Methodology of locating faults of scan chains in logic integrated circuits |
JP3828502B2 (ja) * | 2003-03-26 | 2006-10-04 | 株式会社東芝 | 集積回路 |
JP2004301661A (ja) * | 2003-03-31 | 2004-10-28 | Hitachi Ltd | 半導体集積回路 |
US7225374B2 (en) * | 2003-12-04 | 2007-05-29 | International Business Machines Corporation | ABIST-assisted detection of scan chain defects |
-
2005
- 2005-08-05 JP JP2005227722A patent/JP2007040921A/ja not_active Withdrawn
-
2006
- 2006-08-04 US US11/498,757 patent/US20070043989A1/en not_active Abandoned
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100901522B1 (ko) * | 2007-08-07 | 2009-06-08 | 연세대학교 산학협력단 | 심볼릭 시뮬레이션을 이용한 스캔 체인 고장 진단 방법 및장치 |
JP2010286383A (ja) * | 2009-06-12 | 2010-12-24 | Renesas Electronics Corp | 故障箇所推定装置、故障箇所推定方法及びプログラム |
US8356217B2 (en) | 2009-06-29 | 2013-01-15 | Fujitsu Limited | Storage circuit, integrated circuit, and scanning method |
CN106164687A (zh) * | 2014-04-11 | 2016-11-23 | 高通股份有限公司 | 针对具有异步复位信号的扫描链的复位方案 |
JP2017514222A (ja) * | 2014-04-11 | 2017-06-01 | クゥアルコム・インコーポレイテッドQualcomm Incorporated | 非同期リセット信号をもつ走査チェーンのためのリセット方式 |
JP7107602B1 (ja) * | 2021-02-25 | 2022-07-27 | Necプラットフォームズ株式会社 | スキャンパス回路の故障個所特定装置、故障個所特定方法およびプログラム |
Also Published As
Publication number | Publication date |
---|---|
US20070043989A1 (en) | 2007-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20070043989A1 (en) | Method for specifying failure position in scan chain | |
US8645778B2 (en) | Scan test circuitry with delay defect bypass functionality | |
JP2010223585A (ja) | 電源制御可能領域を有する半導体集積回路 | |
US6799292B2 (en) | Method for generating test pattern for semiconductor integrated circuit and method for testing semiconductor integrated circuit | |
JPWO2008120362A1 (ja) | 不良箇所特定装置、不良箇所特定方法および集積回路 | |
JP4839856B2 (ja) | スキャンチェーン抽出プログラム、スキャンチェーン抽出方法及び試験装置 | |
JPWO2006106626A1 (ja) | 半導体論理回路装置のテスト方法及びテストプログラム | |
JP2009122009A (ja) | テスト回路 | |
JP5099869B2 (ja) | 半導体集積回路および半導体集積回路のテスト方法 | |
JP2019145048A (ja) | 半導体集積回路、その設計方法、プログラム及び記憶媒体 | |
JP2010025903A (ja) | スキャンチェーンの不良フリップフロップ特定回路およびその特定方法 | |
JP2010122009A (ja) | 半導体集積回路 | |
JP2007051936A (ja) | スキャンチェーンにおける故障位置特定方法 | |
JP2006292646A (ja) | Lsiのテスト方法 | |
JP2006162490A (ja) | スキャンテスト回路 | |
JP5426933B2 (ja) | 半導体集積装置の故障検出方法 | |
JP3531635B2 (ja) | 半導体集積回路装置 | |
JPH10307169A (ja) | スキャン回路 | |
JP2006004509A (ja) | 半導体集積回路およびハードマクロ回路 | |
KR20150018551A (ko) | 고장 검출 시스템, 생성 회로 및 프로그램 | |
JP2009085632A (ja) | 半導体集積回路 | |
JP2005043259A (ja) | スキャンパステスト回路及びその設計方法 | |
JP2006242781A (ja) | スキャンテスト回路およびスキャンテスト回路の設計方法 | |
JPH1090368A (ja) | 半導体集積回路および半導体集積回路の検証方法 | |
KR20080050858A (ko) | 기능 로직을 이용한 스캔 체인 검사 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20090123 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090128 |