JP3937034B2 - 半導体集積回路のテスト方法及びテストパターン発生回路 - Google Patents
半導体集積回路のテスト方法及びテストパターン発生回路 Download PDFInfo
- Publication number
- JP3937034B2 JP3937034B2 JP2000378423A JP2000378423A JP3937034B2 JP 3937034 B2 JP3937034 B2 JP 3937034B2 JP 2000378423 A JP2000378423 A JP 2000378423A JP 2000378423 A JP2000378423 A JP 2000378423A JP 3937034 B2 JP3937034 B2 JP 3937034B2
- Authority
- JP
- Japan
- Prior art keywords
- pattern
- test
- circuit
- sequence
- patterns
- 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.)
- Expired - Fee Related
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
-
- 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/3183—Generation of test inputs, e.g. test vectors, patterns or sequences
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/10—Test algorithms, e.g. memory scan [MScan] algorithms; Test patterns, e.g. checkerboard patterns
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)
Description
【発明の属する技術分野】
本発明は、半導体集積回路のテスト方法及びそのテスト方法に使用するテストパターン発生回路並び半導体集積回路に関するものである。
【0002】
【従来の技術】
半導体集積回路の良否を検査するテスト方法として、ストアドテスト方式と組込み自己テスト(Built-In Self-Test、 BIST)方式が代表的である。ストアドテスト方式は、仮定した故障に対しアルゴリズムによりテストパターンを求め、それを記憶したテスト装置によりテスト対象回路に印加してテスト対象回路からの応答パターンを期待値と比較するテスト方法である。BIST方式は、擬似乱数パターン発生器と符号圧縮器を半導体集積回路に内蔵して、テスト対象回路に大量の擬似乱数パターンを与え、応答パターンの圧縮結果を期待値と比較するテスト方法である。
【0003】
ストアドテスト方式では、大規模のテスト対象回路に対し高い故障検出率を得るにはテストパターン数あるいはテストデータ量が増大し、半導体集積回路テスト装置に記憶しきれないという問題がある。BIST方式では、線形フィードバックシフトレジスタ(LFSR)で発生される擬似乱数パターンを用いるため、テストデータ量は少ないが、大規模なテスト対象回路に対しては限られた数の擬似乱数パターンでは高い故障検出率が得られないという問題がある。
【0004】
また、BIST方式の故障検出率を改善する案が多数提案されている。特開平10-197601号公報や特開平11-142481号公報に記載された検査点挿入方式では、検査点と呼ぶ回路をテスト対象回路中に付加することにより乱数パターンでも高い故障検出率を得る。文献Proceeding of Design Automation Conference 97 (1997年) 472-477頁に掲載されたK. H. Tsai等の論文 “STARBIST: Scan Autocorrelated Random Pattern Generation" で記述された方式では、基準となる1つのパターンに対し1ビットずつ反転した近傍パターンを特定の確率で発生するために、LFSRによる乱数パターンの重みを制御する回路とビット反転を制御する回路をスキャンチェーンの途中に付加し、故障を効率的に検出する。文献Proceeding of International Test Conference 98 (1998年)1057-1064頁に掲載されたG. Kiefer等の論文 “Deterministic BIST with Multiple Scan Chains" で記述された方式では、LFSRで発生した擬似乱数パターンを類似したテストパターンに変更するために一部のビットを反転させる論理を付加する。文献Proceeding of International Test Conference 92 (1992年)120-129頁に掲載されたS. Hellebrandの論文 “Generation of vector patterns through reseeding of multiple-polynomial linear feedback shift registers" で記述されたReseeding方式では、LFSRの初期値(seedと呼ぶ)を発生したいテストパターンから計算し、そのseedを次々に入れ換える。
【0005】
【発明が解決しようとする課題】
上述のBIST方式の故障検出率を改善するいずれの方法も大規模な半導体集積回路に適用するには課題がある。まず、検査点挿入方式では、テスト対象の半導体集積回路(以下テスト対象回路とも略称)中のパスに検査点を挿入するため回路の動作速度を遅くするオーバーヘッドがあるという問題に加え、テスト対象回路に依存して検査点を変更する必要があるため、検査点の挿入位置が決まらないとテスト対象回路のレイアウトや配線が局所的にも決まらないという半導体集積回路の設計期間が増大するという問題がある。
【0006】
また、K. H. Tsai等の方法やG. Kiefer等の方法では、テスト対象回路に対し、時間のかかるテストパターン生成処理結果に依存してビット反転等を制御する回路やスキャンチェーンを変更しなければレイアウトや配線ができないという設計期間が増大するという問題のほかに、テスト対象回路が大規模回路になると、H. Tsai等の方法ではスキャンチェーンの貼り方の制限による配線オーバーヘッドの増加、G. Kiefer等の方法ではビット反転を制御する回路の増大がある。さらに、Reseeding方式では、オリジナルのBIST方式と比べてハード面でのオーバーヘッドや設計期間の増大の問題はないが、seed数がストアドパターン数と同等以上になることが予想され、BIST方式本来の目的であるテストデータ量削減の効果が小さいという問題がある。
【0007】
本発明の主な目的は、少ないテストデータ量で高い故障検出率を得る半導体集積回路等ののテスト方法、特にBIST方式を用いたテスト方法を実現することである。
本発明の他の目的は、上記テスト方法を実施するため、付加する回路がテスト対象回路に依存せず、テストのための回路設計が容易な半導体回路装置を実現することである。
本発明の更に他の目的は、上記テスト方法を実施するため付加する回路による動作速度のオーバーヘッドがなく、ゲートや配線のハード的なオーバーヘッドも小さいテストのための回路装置を実現することである。
【0008】
【課題を解決するための手段】
上記目的を達成するため、本発明の半導体集積回路のテスト方法は、擬似乱数パターンであるテストパターン信号(以下単にテストパターンと呼ぶ)をテスト対象回路に加え、そのテスト対象回路の応答パターンを期待値と比較するテスト方法であって、
上記テストパターンを発生するステップが、一定のビット数及び時刻数のパターン列が複数個集まったパターン列群であって、そのパターン列群内のパターン列は全て同一である同一パターン列であるパターン列群を一回以上発生する第1ステップと、前記パターン列群内のパターン列における一部のビットを反転させる第2ステップと、前記第2ステップでパターン列群、パターン列群内パターン列番号、パターン列内時刻に応じて、反転するパターン内ビット位置を変更する第3ステップとを有する。
【0009】
また、本発明の半導体集積回路テスト方法の好ましい実施形態では、スキャンチェーン本数や外部入力端子数から定まるビット数及び最大スキャンチェーン長や単位テスト系列長から定まる時刻数のパターン列が複数個集まったパターン列群を1回以上テスト対象回路に印加し、パターン列群内では1つの基準となるパターン列が存在し、その基準となるパターン列に対し、反転ビットのないパターン列、1パターンの一部又は全部のビットが反転したパターン列、連続あるいは所定のパターン数分の間隔があいた複数パターンの一部又は全部のビットが反転したパターン列の、全て、あるいは一部のパターン列を用いる。
【0010】
また、上記半導体集積回路のテスト方法を実施するため、本発明のテストパターン発生回路は、一定のビット数及び時刻数のパターン列が複数個集まったパターン列群を1回以上発生する回路で、そのパターン列群内のパターン列は全て同一である同一パターン列発生部と、前記同一パターン列発生部から発生されたパターン列群を入力とし、前記パターン列群内のパターン列における一部のビットを反転させ、パターン列群及びパターン列群内パターン列番号及びパターン列内時刻に応じて、反転するパターン内ビット位置を変更する回路であるビット反転制御部とをもつ。
【0011】
本発明の好ましい実施形態では、上記パターン発生回路とテスト対象回路とを単一の半導体集積回路として構成する場合、上記パターン発生回路のビット反転制御部とテスト対象回路とを単一の半導体集積回路として構成する場合、上記パターン発生回路をテスト対象回路と独立した半導体集積回路として構成する場合があり、上記テスト対象回路と分離されたパターン発生部、あるいはパターン発生回路は、これらを含む半導体回路テスト装置を構成し、半導体回路テスト装置を構成するプローブを上記テスト対象回路の外部入力端子に接続してテストを実行する。
【0012】
また、同一パターン列発生部は、線形フィードバックシフトレジスタと、1つのパターン群を発生する間、その線形フィードバックシフトレジスタ内の初期値を保持するレジスタを持ち、更に、線形フィードバックシフトレジスタ内のレジスタに、シリアル又はパラレルにコピーする機能を持つ。また、前記複数のパターン列群を発生するため、前記線形フィードバックシフトレジスタ内のレジスタの初期値を複数個保存するレジスタを設ける場合もある。
【0013】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照し説明する。
【0014】
図1は、本発明によるテスト方法を実施する回路の一実施例の構成を示す。
【0015】
本テスト方法を実施するためには回路は、同一パターン列発生部110と、ビット反転制御部120と、テスト対象回路130から構成される。同一パターン列発生部110の出力線群PT1、PT2…PTnは、ビット反転制御部120に入力され、ビット反転制御部120の出力線群は、テスト対象回路130の入力端IN1、IN2…INnに入力される。
【0016】
同一パターン列発生部110は、クロックに同期して出力線数nをビット幅とするパターンを出力する。同一パターン列発生部110が出力するパターンで、所定の時刻数分のパターンをパターン列と呼ぶとき、同一のパターン列を複数個順次出力し、この複数個の同一のパターン列をパターン列群と呼び、ビット反転制御部120から異なるパターン列群を順次出力する。
【0017】
ビット反転制御部120は、入力されるパターン列群の各パターンに対し、パターン列番号やパターン列内時刻に応じて、パターン中の一部のビットを反転する回路である。ビット反転制御部120は、各時刻に対し入力パターン中のビット反転位置を表現したパターン(ビット反転位置に対応するビットのみ論理値1)を出力する反転制御回路121と、ビット反転制御部120の入力パターンの各ビットを反転制御回路121の出力したパターンの各ビットに応じて排他的論理和を得る回路122〜124をもつ。
【0018】
さらに、反転制御回路121の出力するパターン列群は、全て論理値0の成分をもつパターン列と、1パターンだけ一部又は全部のビットが論理値1であるパターン列と、連続あるいは所定のパターン数分の間隔があいた複数パターンの一部又は全部のビットが論理値1であるパターン列の、全て、あるいは一部のパターン列を含む。このとき、ビット反転制御部120の出力する各パターン列群は、1つの基準となるパターン列に対し、反転ビットのないパターン列、1パターンの一部又は全部のビットが反転したパターン列、連続あるいは所定のパターン数分の間隔があいた複数パターンの一部又は全部のビットが反転したパターン列の、全て、あるいは一部から構成される。テスト対象回路130は、論理設計者が設計した回路の中でテストの対象にする半導体集積回路等である。
【0019】
図2(a)は、上記テスト対象回路の第一の回路例を示す。第一の回路例は、フルスキャン設計されたテスト対象回路200であり、テスト対象回路200中の全ての記憶素子(211、212……233)に対し、テスト中に設定、読み出しが可能となるようにスキャン機能をつけ、テスト対象回路200を組合せ回路としてテストする。図2(b)は上記スキャン機能付き記憶素子の回路240を示す。クロック入力C、データ入力D、出力Qを持つ記憶素子241に対し、セレクタ242を付加し、入力線SEの入力が論理値0のときは、入力線Dの入力の値を格納する通常動作で、入力線SEの入力が論理値1のときは入力線SIの入力値を格納するスキャン動作となる。
【0020】
図2(a)に戻って、スキャン機能付き記憶素子211〜213、221〜223、231〜233は、それぞれスキャンチェーン201、202、203上に直列に接続される。なお、図には記憶素子のみ記載しており、通常動作で使われる組合せ回路部分は省略している。外部入出力端子にはバウンダリスキャン記憶素子が挿入されている(図示せず)。テスト対象回路200の動作は、端子204のスキャンイネーブル信号SENが0のとき端子205のクロックCLKを叩けば回路本来の通常動作となり、信号SENが1のときクロックCLKを叩けば各スキャンチェーン201、202、203上でスキャンシフト動作となる。テスト対象回路200の入力IN1、IN2、…、INnが有効となるのは、スキャンシフト動作のときである。
【0021】
図2(c)は、上記テスト対象回路の第二の回路例を示す。第二の回路例は、ノンスキャン設計されたテスト対象回路260であり、記憶素子251、252、261、262、271、272等にはスキャン機能を付けず、外部入力端子と等価な信号線をテスト対象回路260の入力INnとする。この場合、テスト対象回路260は順序回路としてテストする。
【0022】
上述のように、本実施例によれば、フルスキャン設計又はノンスキャン設計のいずれの回路に対しも、同一パターン列発生部110とビット反転制御部120を備えるパターン発生回路により、テストパターンとして故障検出に有効とされる近傍パターン、即ち、基準となる1つのパターンに対し数ビット反転したパターンを発生することができるので、Reseeding方式と組み合わせることにより、BIST方式で高い故障検出率を得ることができる。
【0023】
ここで、同一パターン列発生部110の構成例の一部である線形フィードバックシフトレジスタ(以下、LFSRと略称)を先に説明する。
図3は、線形フィードバックシフトレジスタの回路例で、従来知られているパターン発生器のものと同じである。LFSR300は、シフトレジスタとして動作する記憶素子群301〜303と、最下段の記憶素子303の値と特定の記憶素子の値との排他的論理和を得る回路304、305の出力をセレクタ306を通して最上段の記憶素子301にフィードバックする。なお、記憶素子301〜303はクロック入力が変化した時にデータ入力を取り込むエッジトリガ型とする。以下の説明では、LFSR300内のシフトレジスタの状態をseedと呼ぶ。
【0024】
図9の(a)は、LFSR300の動作モードを示す。入力INTSELを論理値1のとき初期設定モードと呼び、記憶素子群301〜303は入力BRCに同期してシフトし、入力SEEDINからseedの初期値を設定できる。入力INTSELが論理値0のときパターン発生モードと呼び、入力BRCに同期して、各記憶素子の出力PT1、PT2、…、PTnから疑似乱数パターンを発生する。
【0025】
LFSRの性質として、nビットのLFSRにおける記憶素子の出力をフィードバックに用いる排他的論理和の入力に用いるか否かを論理値0、1で表現したn個のビット列と、2の剰余系でn次多項式の1次からn次の係数(0又は1)を対応させたとき、そのn次多項式が原始多項式、即ち既約であるならば、nビットのLFSRはseedの成分が全て論理値0でないとき発生するパターンの周期は最大、即ち2のn乗から1を減じた数となる。例えば、2の剰余系で4次多項式X^4+X+1=0は原始多項式であるので、LFSR300が4ビットとすると、出力PT1とPT4の排他的論理和をフィードバックすれば、発生するパターンの周期は最大の15となる。
【0026】
図4、図5、図6、図7及び図8はいずれも、上記本発明の実施例における同一パターン列発生部110の回路例を示す。
図4は、同一パターン列発生部110の第一の回路構成例で、パラレルなseed復元が可能なLFSR400を示す。シフトレジスタとして動作する記憶素子群401〜403と、最下段の記憶素子403の値と特定の記憶素子の値との排他的論理和404、405をセレクタ406を通して最上段の記憶素子401にフィードバックする部分の構成は、図3のLFSR300と同じである。seedを記憶するために、記憶素子群401〜403にそれぞれ対応した記憶素子群407〜409を備え、セレクタ410〜412でseedの復元を制御する。
【0027】
LFSR400の動作モードを図9(b)に示す。入力INTSELが論理値1、入力RDSELが論理値0でクロックBRCが印加されるとき初期設定モードと呼び、記憶素子群401〜403はクロックBRCに同期してシフトし、入力SEEDINからseedの初期値を設定する。そのseedを記憶素子群407〜409にパラレルにコピーする。入力INTSELが論理値0、RDSELが論理値0のときパターン発生モードと呼び、クロックBRCに同期して、各記憶素子4001〜403の出力PT1、PT2、…、PTnから疑似乱数パターンを発生し、記憶素子群407〜409の値は保持される。入力INTSELが0、RDSELが1のときseed復元モードと呼び、クロックBRCに同期して、記憶素子群407〜409の値が記憶素子群401〜403にseedとしてパラレルに(一斉に)復元される。入力INTSELが1、RDSELが0でクロックBRCが印加されないとき、seed更新モードと呼び、記憶素子群401〜403の値を記憶素子群407〜409にパラレルにコピーする。
【0028】
図5は同一パターン列発生部110の第二の回路構成例で、シリアルなseed復元が可能なLFSR420を示す。シフトレジスタとして動作する記憶素子群421〜423と、最下段の記憶素子423の値と特定の記憶素子の値との排他的論理和回路424、425の出力をセレクタ426を通して先頭の記憶素子421にフィードバックする部分の構成は、前記LFSR300と同じである。seedを記憶するために、記憶素子群421〜423にそれぞれ対応した記憶素子群427〜429を備え、セレクタ430でseedの復元を制御する。
【0029】
LFSR420の動作モードを図9(c)に示す。入力INTSELが論理値1、入力RDSELが論理値0でクロックBRCが印加されるとき初期設定モードと呼び、記憶素子群421〜423はクロックBRCに同期してシフトし、入力SEEDINからseedの初期値を設定する。そのseedを記憶素子群427〜429にシリアルにコピーする。入力INTSELが論理値0、入力RDSELが論理値0のときパターン発生モードと呼び、クロックBRCに同期して、各記憶素子の出力PT1、PT2、…、PTnから疑似乱数パターンを発生し、記憶素子群427〜429の値は保持される。入力INTSELが0、入力RDSELが1のときseed復元モードと呼び、クロックBRCに同期して、記憶素子群427〜429の値が記憶素子群421〜423にseedとしてシリアルに復元される。
【0030】
図6は、同一パターン列発生部110の第三の回路構成例で、パラレルなseed復元される複数の多項式に対応したLFSR440を示す。図では4ビットの例を示す。シフトレジスタとして動作する記憶素子群441〜444と、最下段の記憶素子444の値と最上段の記憶素子441の値との排他的論理和回路445をセレクタ446を通して最上段の記憶素子441にフィードバックする構成と、seedを記憶するための記憶素子群447〜450と、seedの復元を制御するセレクタ451〜454は、前記LFSR400と同じである。LFSR440では、排他的論理和445の入力にAND素子456の出力端を接続し、記憶素子455で設定された値に応じてフィードバックに用いる排他的論理和の入力の一部をマスクする構成を追加した。
【0031】
この構成により、LFSRに対応した2の剰余系の多項式を複数個もつことができる。図の例では、x^4+x+1=0(原始多項式)と、x^4+1=0(シフトレジスタ)である。また、LFSR440の動作はLFSR400の動作とほぼ同様で、異なる点は、初期設定モード時にフィードバックに用いる排他的論理和の入力を制御する記憶素子455の値を設定する必要があることである。
【0032】
図7は、同一パターン列発生部110の第四の回路構成例で、パラレルなseed復元及びシフトによるパターン発生を可能にしたLFSR460を示す。LFSR460の4ビットのシフトレジスタ部分461〜464及びseed復元機能467〜470の構成は前記LFSR440と同じである。ただし、パターン発生モードで、記憶素子475の値が論理値0のときは記憶素子461と464の値の排他的論理和を記憶素子461にフィードバックするが、記憶素子475の値が論理値1のときは入力SEEDINからの値を記憶素子475をバイパスしてシフトレジスタ461〜464に取り込む。これは、後で図17説明する複数個のLFSRをもつ同一パターン列発生部で、別のLFSRの状態を利用する時に用いる。
【0033】
図8は、同一パターン列発生部110の第五の回路構成例で、シフトレジスタ群480を示す。記憶素子群481、482、483とセレクタ484、記憶素子群485、486、487とセレクタ488、記憶素子群489、490、491とセレクタ492は、入力INTSELが1のとき、入力BRCに同期してシフトすることにより入力群SEEDIN1、SEEDIN2、…SEEDINnから初期値を設定し、入力INTSELが論理値0のとき、それぞれがシフトレジスタとして動作して、出力PT1、PT2、…、PTnからは最終記憶素子483、487、491の値からなるパターン信号を出力する。
【0034】
以上の同一パターン発生部110の回路構成例5つに対して、その特長をまとめる。第一の回路構成例LFSR400は、seedの復元がパラレルにできるためテスト時間を短くできる。第二の回路構成例LFSR420は、seedの復元はシリアルなためテスト時間は長くなるがゲートオーバーヘッドがLFSR400より小さい。第三の回路構成例LFSR460は、LFSR多項式を複数もつことができる。第四の回路構成例LFSR480は、複数個のLFSRをもつときに別のLFSRの状態を利用してパターンを発生できる。第五の回路構成例では、ゲートオーバーヘッドや全記憶素子に設定するためのデータ量は大きいが、パターン列として全ての組合せを表現できる。
【0035】
次に、反転制御回路121の詳細な構成について説明する。なお、パターン列内パターン数は256として説明する。
図10は、反転制御回路121の第一の回路構成例を示す。反転制御回路600では、1パターンだけ全部のビットが論理値1であるパターン列を256通り出力する。反転制御回路600は、出力C1-C 8をもつパターン列内時刻用8bitカウンタ601と出力C1-C8をもつパターン列番号用8bitカウンタ602と、2つのカウンタ601及び602の値が一致しているか否かを求める比較器604を備え、その出力はマスク用のAND素子605を通してn個の出力RVS1、RVS2、…、RVSnに分配される。クロックBRCは、パターン列内時刻用カウンタ601のクロックCとして使われ、パターン列番号用カウンタ602のクロックCはクロックBRCと入力HCCKENとの論理積素子603で供給される。
【0036】
ここで、反転制御回路600に使われるnビットカウンタの回路例を図14(a)に示す。nビットカウンタ700は、カウンタの状態を表す記憶素子701〜704と、排他的論理和を求めるための素子712〜714と、カウンタの0リセットをする素子721〜724と、カウンタとしての動作かシフト動作かを選択するセレクタ731〜734から構成され、カウンタの状態をn個の出力C1、C2、…、Cnによって出力する。
【0037】
図14(b)は、カウンタ700の動作モードを示す。入力SFTENが論理値1、入力Rが論理値0のときシフトモードと呼び、入力SFTINよりクロックCに同期してカウンタ内記憶素子701〜704をシフトすることでカウンタの初期値を設定する。入力SFTENが論理値0、Rが論理値1のときリセットモードと呼び、クロックCに同期してカウンタを0に設定する。入力SFTENが論理値0、Rが論理値0のときインクリメントモードと呼び、クロックCに同期してカウンタのもつ値を1増加させる。
【0038】
反転制御回路600の説明に戻り、その動作モードを説明する。入力INTSELが論理値1、入力RDSELが論理値0、入力HCCKENが論理値1のとき、クロックBRCに同期して2つのカウンタ601、602内の記憶素子の内容がシフトするので、入力CTINよりそれらの初期値を設定できる。入力INTSELが論理値0、入力RDSELが論理値1のとき、クロックBRCに同期してパターン列内時刻用カウンタ601を値0(記憶素子を全て0)に設定する。入力INTSELが論理値0、入力RDSELが論理値0のとき、入力HCCKENが論理値0であればクロックBRCでパターン列内時刻用カウンタ601のみインクリメントし、入力HCCKENが論理値1であればクロックBRCで2つのカウンタ601、602をインクリメントする。さらに、パターン列内で常に入力NBENが論理値1のとき、2つのカウンタの値が一致する場合のみ成分が全て論理値1であるパターンを出力し、それ以外のパターンでは全て論理値0であるパターンを出力する。パターン列内で常に入力NBENが論理値0のとき、全て論理値0の成分をもつパターン列が出力される。
【0039】
図11は、反転制御回路121の第二の回路構成例を示す。反転制御回路では、1パターンだけ半分のビットが論理値1であるパターン列を512通り出力する。反転制御回路620は、パターン列内時刻用カウンタ621と、比較器624を備え、マスク用のAND素子625、入力HCCKENとの論理積素子623は、反転制御回路600のAND素子605及び論理積素子603と同じである。パターン列番号用カウンタ622は反転制御回路600のパターン列番号用カウンタ602に9ビット目C9が追加された構成であり、ビットC9の論理値あるいはその反転値との論理積素子626〜630を通してn個の出力RVS1、RVS2、…、RVSnに接続する。図11の回路の場合、パターン列番号用カウンタ622の9ビット目C9が論理値0であれば、RVS1、RVS3、…のみ論理値1をもつパターンを出力し、9ビット目C9が論理値1であれば、RVS2、RVS4、…、RVSn…のみ論理値1をもつパターンを出力する。
【0040】
図12は反転制御回路121の第三の回路構成例を示す。反転制御回路640では、1パターンだけ全ビットが論理値1であるパターン列を256通り、周期128の間隔をもつ2パターンの全ビットが論理値1であるパターン列を256通り、計512通りのパターン列を出力する。反転制御回路640は、パターン列内時刻用カウンタ641を備え、マスク用のAND素子645、入力HCCKENの論理積643は、それぞれ前記反転制御回路600のAND素子605及び論理積素子603と同じである。
【0041】
パターン列番号用カウンタ642はAND素子605及び論理積素子603に9ビット目C9が追加されており、回路644は前記比較器604の機能が一部変更されている。回路644は、パターン列番号用カウンタ642の9ビット目C9が論理値0のとき従来の8ビット比較器と同じ動作をするが、その9ビット目C9が論理値1のとき下位7ビットの比較器となる。この結果、パターン列番号用カウンタ642の9ビット目C9が論理値0のとき1パターンだけ全ビットが論理値1であるパターン列を出力し、パターン列番号用カウンタ642の9ビット目C9が論理値1のとき周期128ので出現する2パターンの全ビットが論理値1であるパターン列を出力する。
【0042】
図13は、反転制御回路121の第四の回路構成例を示す。反転制御回路660は、1パターンだけ全ビットが論理値1であるパターン列を256通り、時刻の連続した2パターンの全ビットが論理値1であるパターン列を256通り、1時刻分間隔のある2パターン全ビットが論理値1であるパターン列を256通り、2時刻分間隔のある2パターン全ビットが論理値1であるパターン列を256通り、計1024通りのパターン列を出力する。
【0043】
反転制御回路660は、パターン列内時刻用カウンタ661と、比較器664と、マスク用のAND素子665、入力HCCKENと信号BRDの論理積回路663とを備える。これらはそれぞれ前記反転制御回路600のパターン列内時刻用カウンタ601と、比較器604と、マスク用のAND素子605及び論理積回路603と同じである。パターン列番号用カウンタ662は反転制御回路600のカウンタ602に9、10ビット目C9,C10が追加された構成であり、AND素子666、667、668はカウンタ602に9、10ビット目C9,C10の出力を制御する。上記9、10ビット目C9,C10の論理値がどちらも0のときAND素子666、667、668の出力は全て論理値0、9ビット目C9が論理値1で10ビット目C10が論理値0のときAND素子666の出力のみが論理値1、9ビット目C9が論理値0で10ビット目C10が論理値1のときAND素子667の出力のみが論理値1、上記9、10ビット目C9,C10がどちらも論理値1のときAND素子668の出力のみが論理値1となる。
【0044】
記憶素子669〜672は、順にその時点での時刻、1時刻前、2時刻前、3時刻前における比較器664の出力値を記憶する。OR素子673には、4つの入力、すなわち、比較器664の出力値、1時刻前の比較器664の出力値をもつ記憶素子670とAND素子666との出力値との論理積、2時刻前の比較器664の出力値をもつ記憶素子671とAND素子667との出力値との論理積、3時刻前の比較器664の出力値をもつ記憶素子672とAND素子668との出力値との論理積があり、そのいずれか1つが1であれば、出力RVS1、RVS2、…、RVSnへ論理値1が伝わる。この結果、パターン列番号用カウンタ662の9、10ビット目C9,C10の論理値がどちらも0のとき1パターンだけ全ビットが論理値1であるパターン列を出力し、9ビット目C9が論理値1で10ビット目C10が論理値0のとき時刻の連続した2パターンの全ビットが論理値1であるパターン列を出力し、9ビット目C9が論理値0で10ビット目C10が論理値1のとき1時刻分間隔のある2パターン全ビットが論理値1であるパターン列を出力し、9、10ビット目C9,C10がどちらも論理値1のとき2時刻分間隔のある2パターン全ビットが論理値1であるパターン列を出力する。
【0045】
ここで、反転制御回路121内のカウンタのビット数について、例えば、反転制御回路600ではパターン列内時刻用カウンタ601のビット数を8としたが、この数から求まるカウンタの周期256はパターン列内のパターン数上限を意味するもので、8に限定されない。もしパターン列内のパターン数がパターン列内時刻用カウンタ601の周期より大きい場合、反転制御回路600は、全部のビットが論理値1であるパターンがその周期で出現するパターン列を順次出力する。
【0046】
一方、反転制御回路600ではパターン列番号用カウンタ602のビット数を8としたが、この数から求まるカウンタの周期256はパターン列群内のパターン列の個数上限を意味するもので、この例のように8でなくても良い。パターン列群内のパターン列の個数がパターン列番号用カウンタ602の周期より大きいと同じパターン列が出現するだけであるので、この場合は想定しない。以上のカウンタのビット数に関する注意は、反転制御回路121の他の構成例でも同じである。
【0047】
好ましい実施形態では、上述の各パターン発生部、ビット反転制御部、反転制御回路部は、単独又は組み合わせた形態で単一の半導体集積回路で構成される。以下の本発明による半導体集積回路を説明する。
図15の(a)は、本発明によるテストパターン発生回路を持つ半導体集積回路の第一の実施例の構成を示す。半導体集積回路800は、同一パターン列発生部810と、ビット反転制御部820と、パターン発生制御部830が1つの半導体集積回路(テストパターン発生器)として構成される。同一パターン列発生部810は、図4、図5、図6に示した同一パターン列発生部400、420、440のいずれかとする。ビット反転制御部820内の反転制御回路821は、図10、図11、図12、図13に示した反転制御回路600、620、640、660のいずれかとする。パターン発生制御部830は、2つの入力BINIT、NHGENから出力INTSEL、RDSEL、NBEN、HCCKENを4つの信号に設定するデコーダで、上記2つの入力に対する出力の組合せ及び動作モードの呼称を図15の
(b)に示す。
【0048】
初期設定モード841では、同一パターン列発生部810及び反転制御回路821内の記憶素子に対し、入力SEEDINからシリアルに同一パターン列発生器810の初期値を設定する。パターン発生モード842では、同一パターン列発生部810はLFSRとして動作して疑似乱数パターンを順次発生し、反転制御回路821は全ての成分RVS1、RVS2…RVSnが論理値0であるパターンを出力し続けるため、パターン発生器800は、同一パターン列発生部810の発生する疑似乱数パターンをそのまま出力する。seed復元モード843では、同一パターン発生部内のseedが記憶されていたレジスタにパラレルあるいはシリアルに復元され、反転制御回路821内のパターン列内時刻用カウンタが0にリセットされる。
【0049】
近傍パターン発生モード844では、近傍パターン群、すなわち、基準となるパターン列に対し、反転ビットのないパターン列、1パターンの一部又は全部のビットが反転したパターン列、連続あるいは所定のパターン数分の間隔があいた複数パターンの一部又は全部のビットが反転したパターン列の、全て、あるいは一部のパターン列を発生する。なお、以下の説明では、パターン発生器800が発生する近傍パターン群の中で、基準となるパターン列のことを親パターン、それ以外の基準となるパターン列と一部のビットが反転しているパターン列のことを子パターンと呼ぶ。
【0050】
図16は、本発明によるテストパターン発生回路を持つ半導体集積回路の第二の実施例の構成を示す。半導体集積回路900は、パターン発生器901とテスト対象回路902から構成される。パターン発生器901は、図15(a)のパターン発生器800と同じ構成で、同一パターン列発生部810とビット反転制御部820の組合せは前述の回路のいずれの組み合わせでも良い。テスト対象回路902は、図2の(a)、(c)に示したテスト対象回路200、260のいずれでもよい。本実施例では、故障検出に有効な近傍パターンを発生できるので、少ないテストデータ量で高い故障検出率を得ることができる。
【0051】
図17は、本発明によるパターン発生回路を持つ半導体集積回路の第三の実施例の構成を示す。半導体集積回路920は、複数のパターン発生器921…922と1つのテスト対象回路923から構成される。パターン発生器921…922のぞれそれは、前記パターン発生器800と同じで、同一パターン列発生部810とビット反転制御部820の組合せはいずれの組み合わせでも良い。テスト対象回路923は、図の2(a)、(c)に示したテスト対象回路200、260のいずれでもよい。本実施例では、少ないテストデータ量で高い故障検出率を得ることができる効果に加えて、サイズの小さいパターン発生器を複数もち半導体集積回路内に分散して配置することにより、テスト対象回路内のスキャンチェーンを配線するオーバーヘッドを低減できる。
【0052】
図18は、本発明によるパターン発生回路を持つ半導体集積回路の第四の実施例の構成を示す。半導体集積回路940は、パターン発生器941とテスト対象回路942とパターン圧縮器943が1つ半導体集積回路を構成する。本実施例は本発明に基づいたBIST方式の標準的な構成である。パターン発生器941は、前記パターン発生器800と同じ構成で、同一パターン列発生部810とビット反転制御部820の組合せはいずれの組み合わせでも良い。テスト対象回路942は、図2(a)に示したフルスキャン設計されたテスト対象回路200と同じ構成である。
【0053】
図19は、図18のパターン圧縮器の回路を示す。パターン圧縮器943の回路960は、BIST方式で一般に使われるMultiple Input Signature Resister(MISR)と同じ構成である。MISRは、記憶素子961〜964と排他的論理和965、966及びそのフィードバックからなる部分はLFSRで、各入力SA1、SA2、…、SAnの論理値を各記憶素子961〜964の直前で排他的論理和967〜980をとる構成である。入力SA1、SA2、…、SAnから入力されるパターン列を順次クロックBMCに同期して記憶素子961〜964にコード化(圧縮)していく。LFSRに対応する2の剰余系の多項式が原始多項式であれば、誤り見逃し(入力パターン列に誤りがある場合に最終的な記憶素子961〜964のビット列に誤りがない)確率は非常に小さい事が知られている。すなわち、MISRの最終状態の期待値のみを読み出した結果と比較することは、各パターンごとの期待値と比較する場合と同等の故障検出能力があることを意味する。従って、図19の回路構成では、さらに少ないテストデータ量で高い故障検出率を得ることができる。
【0054】
図20は、本発明によるパタン発生回路を持つ半導体集積回路の第五の実施例の構成を示す。半導体集積回路980は、初期値保存レジスタ981とパターン発生器941とテスト対象回路942とパターン圧縮器943から構成される。前記第四の実施例である半導体集積回路940に比較して、入力TDIとパターン発生器941との間に初期値保存レジスタ981が追加されている点が異なり、第四の実施例である半導体集積回路940と同じ部分は同じ符号で示している。初期値保存レジスタ981は、入力BINITが論理値1、入力NHGENが論理値0の初期設定モードのときに、クロックBRCに同期してシフトレジスタとして動作する。記憶素子983〜985はその数がパターン圧縮器943内の記憶素子数で、パターン圧縮器943の初期値を格納する。記憶素子986〜988、989〜991、992〜994は、それぞれ、その数がパターン発生器941内の記憶素子数で、パターン発生器941の第一回目の初期値、第二回目の初期値、第s回目の初期値を格納する。なお、sはパターン列群の数である。前述の第四の実施例では、パターン列群毎に半導体集積回路テスト装置からパターン発生器941の初期値を与えるため、半導体集積回路テスト装置とのインターフェースにおけるオーバーヘッドがあった。しかし、第五の実施例では、複数のパターン列群に対するパターン発生器941の初期値を最初に格納できるため、半導体集積回路テスト装置とのインターフェースにおけるオーバーヘッドが小さくなる。
【0055】
以上の第一ないし第五の半導体集積回路の構成では、本発明による同一パターン列発生部110とビット反転制御部120が半導体集積回路内に内蔵されているが、これらがテスト対象回路と別の半導体集積回路テスト装置として構成してもよい。また、上記半導体集積回路テスト装置が同一パターン列発生部110を内蔵し、テストの対象となる半導体集積回路がビット反転制御部120を内蔵してもよい。さらに、同一パターン列発生部110やビット反転制御部120は、半導体集積回路外のウェハー部分に作成して、いわゆるウェハー上での半導体集積回路テスト装置に適用してもその効果は失われない。
【0056】
次に、本発明によるパターン発生回路を持つ半導体集積回路の動作をタイムチャートを使用して説明する。
図21は、図18に示した半導体集積回路940の基本的な動作のタイムチャートを示す。まず、BIST初期設定モード1001では、パターン発生器941(図15の800と同じ)内のパターン発生制御部830を初期設定モード841に設定し、パターン発生器941とパターン圧縮器943の記憶素子数分、クロックBMCとクロックBRCを交互にパルスを与え、入力TDIからseedを含むパターン発生器941とパターン圧縮器943の初期値を順に入力する。
【0057】
親パターン設定モード1002では、パターン発生器941内のパターン発生制御部830をパターン発生モード842に設定、スキャンイネーブルSENを論理値1に設定し、最大のスキャンチェーン長分、スキャンチェーンシフト用クロックCLKとクロックBRCに交互にパルスを与えることで、テスト対象回路942内の記憶素子全てに論理値が設定され、テスト対象回路942をテストする親パターンとなる。
【0058】
クロックアドバンス及びseed復元モード1003では、パターン発生器941内のパターン発生制御部830をseed復元モード843に設定、スキャンイネーブルSENを論理値0に設定し、データキャプチャー用のクロックCLKとseed復元用のクロックBRCに1回ずつパルスを与える。
【0059】
近傍パターン設定・圧縮モード1004では、パターン発生器941内のパターン発生制御部830を近傍パターン発生モード844に設定、スキャンイネーブルSENを論理値1に設定し、最大のスキャンチェーン長分、クロックBMC、スキャンチェーンシフト用クロックCLK、クロックBRCに順にパルスを与え、クロックアドバンス結果の圧縮と次の子パターンの設定を同時に行う。そして、モード1003とモード1004を親パターン用の1回分+子パターン数分ほど繰り返す。ここまでのモード1001〜1004までの手順で、パターン発生器941において1つのパターン列群を発生し、テスト対象回路942に対し親パターン1つと子パターン群によるテストを行い、その応答パターン結果をパターン圧縮器943の最終状態(全記憶素子の値)に圧縮している。
【0060】
このモード1001〜1004までの手順をseed数、即ちパターン列群の数ほど、繰り返す。なお、2回目以降のBIST初期設定モード1001では、パターン発生器941とパターン圧縮器943の初期値設定と同時に、テストの応答パターンを圧縮した結果であるパターン圧縮器943の最終状態も読み出す。そして、上記手順の繰り返しの最終回については、圧縮結果抽出モード1005でパターン圧縮器943の最終状態を読み出す。
【0061】
ここで、図18に示した半導体集積回路940と図21に示したタイムチャートで、テスト対象回路942をどのようなパターンでテストできるかを説明する。説明のため、フルスキャン設計であるテスト対象回路942のスキャンチェーン長を259、スキャンチェーン本数をn個とする。従って、パターン発生器941の発生するパターン列内のパターン数は259となる。1つのパターン列群において、基準となるパターン列をスキャン展開したパターン、即ち、親パターンに対し、どのような子パターンが発生されるのかを、図10〜図13で示した反転制御回路ごとに図24〜図27を用いて説明する。
【0062】
図24〜図27の各図は図2(a)に示したテスト対象回路200を簡略化したもので、1つ1つの小さな正方形はスキャン機能付き記憶素子に対応し、ハッチングがあるときは親パターンと反転したビットであることを表す。また、子パターンの番号は、その子パターンが生成されたときのパターン列番号用カウンタの値を表す。
【0063】
図24は、反転制御回路600を用いた場合の子パターン256個を示す。子パターン0〜2は周期256で2列が反転したパターンで、子パターン3〜255は1列のみ反転したパターンとなる。
【0064】
図25は、反転制御回路620を用いた場合の子パターン512個をに示す。反転ビットのある列は、子パターン0〜255と子パターン256〜511が図24に対応している。ただし、列内での反転しているビットは、子パターン0〜255では奇数行目(IN1、IN3、…で接続されるスキャンチェーン上の記憶素子)で、子パターン256〜511では偶数行目(IN2、IN4、…で接続されるスキャンチェーン上の記憶素子)である。
【0065】
図26は、反転制御回路640を用いた場合の子パターン256〜384を示す。子パターン384個の中で、子パターン0〜255は図24と同じであるため省いている。子パターン256〜258は周期128で3列が反転したパターンで、子パターン259〜383は周期128で2列反転したパターンとなる。
【0066】
図27は、反転制御回路660を用いた場合の子パターン1024個の中で、子パターン256〜1023をに示す。子パターン0〜255は図24と同じであるため省かれている。子パターン256〜511は周期256で連続した2列が反転したパターンで、子パターン256、257は計4列、子パターン258は計3列、子パターン259〜511は2列が反転したパターンである。子パターン512〜767は周期256で1列間隔のある2列が反転したパターンで、子パターン512は計4列、子パターン513、514は計3列、子パターン515〜767は2列が反転したパターンである。子パターン768〜1023は周期256で2列間隔のある2列が反転したパターンで、子パターン768〜770は計3列、子パターン771〜1023は2列が反転したパターンである。
【0067】
図28は、本発明によるパターン発生回路を持つ半導体集積回路の第六の実施例の構成を示す。半導体集積回路1200は、パターン発生器1210とテスト対象回路1220から構成される。テスト対象回路1220は、8個の記憶素子1221〜1228と、それらの出力x1〜x8を入力とするAND素子1229と、AND素子1229の出力x0を入力する記憶素子1230をもち、記憶素子1230の出力y0は記憶素子1221〜1228のそれぞれの入力Dに加えられる。
【0068】
テスト対象回路1220はフルスキャン設計されており、記憶素子1230はスキャンチェーン1231上にあり、記憶素子1221〜1228はスキャンチェーン1232上にある。パターン発生回路1210は、図15に示したパターン発生器800と同じ構成である。ただし、その発生するパターンのビット数は出力PG1、PG2、PG3、PG4の4ビットである。同一パターン列発生部810は図6に示した同一パターン列発生部440と同じ構成である。反転制御回路821は図10に示した反転制御回路600と同様の構成で、2つのカウンタ601、602のビット数はどちらも3ビットとする。
【0069】
テスト対象回路1220で、記憶素子の出力x0、x1、…、x8、y0に対し0縮退故障と1縮退故障を仮定したときのテストパターン集合を図28(b)に示す。列1241は各テストパターンの番号、列1242は各テストパターンを記憶素子出力名に対する論理値の組で表現したもの、列1243は各テストパターンで検出可能な縮退故障を「信号線名/縮退値」で表現し列挙したものである。なお、列1242で論理値がXとなっているのは、不定値、即ち、論理値0でも論理値1でもよいことを表す。
【0070】
図28(b)で示したテストパターン集合の性質を述べる。パターン番号2〜9のパターンは、記憶素子の出力x1〜x8の8ビット全てが論理値1であるパターン番号1のパターンに対し、1ビットずつ反転したパターンである。即ち、パターン番号1のパターンとハミング距離が1である近傍パターンでほどんどの故障を検出できることがわかる。前述したK. H. Tsai等の論文によると、多くの回路に対し、近傍パターンがテストパターンとして有効であることが指摘されている。
【0071】
図29は、上記半導体集積回路1200のテスト時における詳細な動作を示す。タイムチャートは図21で示したものに従うが、パターン圧縮器を持たないためクロックBMCはない。図中の「P」はクロックにパルスが与えられることを示す。また、パターン発生器の初期値に関しては、フィードバックイネーブル用の記憶素子の値を0、LFSR部分のseedを(1,1,1,1)、パターン列番号用3ビットカウンタの値を7に設定する。なお、パターン列内時刻用3ビットカウンタの値は、子パターン出現ごとに0にリセットされるため、初期化する必要はない。
【0072】
時刻1〜11はパターン発生器の初期値設定で、時刻11で上記の設定が完了する。時刻12〜19はスキャンのシフトによる親パターン設定で、時刻19の記憶素子y0、x1、…x8の親パターンが設定される。時刻20ではクロックアドバンスにより、親パターンに対する応答結果を記憶素子y0、x1、…x8に格納する。時刻21〜28では、親パターンに対する応答結果をスキャンのシフトにより外部出力端子O1、O2で読み出すと同時に、時刻28の記憶素子x0、x1、…x8に子パターン0(x8のみ論理値0に反転)が設定される。このように、クロックアドバンスと子パターン設定・結果読み出しを繰り返す。時刻91で記憶素子y0、x1、…x8に子パターン7を設定し、時刻92でクロックアドバンスにより応答パターンを記憶素子y0、x1、…x8に格納する。そして、最後に、時刻93〜100で、子パターン7の応答パターンを読み出す。
【0073】
以上の動作によって実現できるテストパターンは、図28(b)で示したテストパターン集合の全てをカバーする。即ち、親パターンはパターン番号1とパターン番号10をカバーし、子パターン0はパターン番号2とパターン番号10、子パターン1はパターン番号3とパターン番号10、子パターン2はパターン番号4とパターン番号10、子パターン3はパターン番号5とパターン番号10、子パターン4はパターン番号6とパターン番号10、子パターン5はパターン番号7とパターン番号10、子パターン6はパターン番号8とパターン番号10、子パターン7はパターン番号9とパターン番号11を全て含む。
【0074】
よって、半導体集積回路1200の全縮退故障をテストするためのテストデータ量は、パターン発生器1210の初期値の1seed、10ビット(カウンタの初期値を含む)である。一方、仮にテスト対象回路1220をストアドテスト方式で全縮退故障をテストする場合のテストデータ量は、11パターン、計74ビットである。このように、本発明を用いた半導体集積回路は、そのテストに必要なデータ量を著しく減らすことができる。
【0075】
次に、本発明による半導体集積回路について、疑似乱数パターンを発生させるタイムチャートと、複雑なタイムチャートとそのときのテストパターンを説明する。
図22は、図18に示した半導体集積回路940を例に、従来のLFSRと同様な疑似乱数パターンを発生するタイムチャートを示す。まず、BIST初期設定モード1011と初期パターン設定モード1012は、それぞれ図21のモード1001、1002と同じである。クロックアドバンスモード1013と乱数パターン設定・圧縮モード1014では、パターン発生モード842(図15(b))に設定する。このとき、図4〜図7に示した同一パターン列発生部400、420、440、460はいずれもLFSRそのものと同じ動作をするため、その出力パターンは疑似乱数パターンとなる。最後の圧縮結果判定モード1015は、図21のモード1005と同じである。
【0076】
図23は、図18に示した半導体集積回路940に対する複雑なタイムチャートの例を示す。図18は図21で示したタイムチャートに比べて、親パターン設定モード1022〜1025と、近傍パターン設定・圧縮モード1027〜1030が複雑になっており、seed更新モード1031が新たに追加されている。以下変更があった部分についてのみ説明する。
【0077】
親パターン設定モードにおいて、空回し1022では、クロックBRCのみパルスを与えるため、LFSRのみ状態を遷移し、スキャンチェーンはシフトしない。これを指定された空回し数分繰り返す。空送り1023では、クロックCLKのみパルスを与えるため、LFSRの状態は変わらずにスキャンチェーンのみはシフトする。これを指定された空送り数分繰り返す。設定1024では、クロックCLKとクロックBRCに交互にパルスを与えることで、スキャンチェーンはシフトし、LFSRの状態も遷移する。以上1022〜1024のモードを、テスト対象回路942内の記憶素子全てに論理値が設定されるまで繰り返す。その後、空送り追加1025で、クロックCLKのみパルスを与えるためスキャンチェーンのみシフトする。これを指定された空送り追加数分繰り返す。なお、空回し数はスキャンチェーン本数以下、空送り数は最大スキャンチェーン長以下、空送り追加数は空送り数以下でなければならない。
【0078】
また、近傍パターン設定・圧縮モード1027〜1030も、パターン圧縮回路943を動作させるためのクロックBMCを除いては、親パターン設定モード1022〜1025と同じである。seed更新モード1031については、パターン発生器941内のパターン発生制御部830を初期設定モード841に設定し、クロックBRCにパルスを与えないので、LFSRの状態をseed保存用記憶素子群にコピーする。
【0079】
上記の「空回し」、「空送り」、「seed更新」という動作について説明する。図18に示した半導体集積回路940を例に、パターン発生器941は4ビットのLFSRをベースにした同一パターン列発生器440(図6)と同様で、テスト対象回路942内のスキャンチェーン本数は4つ、スキャンチェーン長は全て5とする。このとき、テスト対象回路942に設定されたテストパターンと設定完了時点のLFSRの状態を、図31〜32に示す。図では、パターン発生器941内の論理値を表現した部分1401はLFSRの4ビットのみを記述し、フィードバック制御1402とseed入力1403を模式化している。LFSRの初期値(seed)は、s1、s2、s3、s4が順にseed入力1403からシリアルに設定され、LFSRの初期値設定後に生成する乱数列を、r1、r2、r3、…と表現する。もし、フィードバック制御1402の入力が0であれば、r1=s1、r2=s2、r3=s3、…である。フィードバック制御1402の入力が1であれば、r1=s1+s4、r2=s2+r1、r3=s3+r2、…となる。
【0080】
図31の(a)は、空回し数=0、空送り数=0の場合で、テスト対象回路1411で設定されたテストパターンは、右上から左下に向かって記憶素子間の相関があることがわかる。図31の(b)は、空回し数=1、空送り数=0の場合で、テスト対象回路1412で設定されたテストパターンは、右上から左下に向かって1列ずつあいた記憶素子間の相関があることがわかる。図31の(c)は、空回し数=0、空送り数=1、空送り追加数=0の場合で、テスト対象回路1413で設定されたテストパターンは、スキャンチェーンのシフト方向に2個ずつ同じ論理値が設定されており、右上から左下への相関もあることがわかる。図31の(d)は、空回し数=0、空送り数=1、空送り追加数=1の場合で、テスト対象回路1414で設定されたテストパターンは、テスト対象回路1413で設定されたテストパターンを1つ右にシフトしたもので、記憶素子間の相関関係が変わっていることがわかる。また、図31の(e)は、空回し数=0、空送り数=0で、seed更新を行った場合を示しており、テスト対象回路1415で設定されたテストパターンは、LFSRから発生する擬似乱数パターンの2つ目であるし、LFSRの初期値をr2、r3、r4、r5と設定した場合のテストパターンとみることもできる。
【0081】
このように、「空回し」動作は、テストパターン中の記憶素子の相関を変えて、故障検出率を向上できるという効果がある。「空送り」動作は、スキャンチェーンシフト中やクロックアドバンス時の遷移信号発生の割合を抑える効果があり、テスト時のノイズを低減できる。「空送り追加」動作は、「空送り」動作において生じる記憶素子の相関を変えて、故障検出率を向上できる。
【0082】
さらに、他の実施例として、図17で示した半導体集積回路920のように、複数のパターン発生器をもつときのテストパターンとその効果を述べる。各パターン発生器921〜922には、パターン発生時に擬似乱数発生とシフト動作を切換えることができる同一パターン列発生部460(図7)をもつ。テスト対象回路923のスキャンチェーンは12本で4本ずつパターン発生回路921〜922に接続し、スキャンチェーン長は5とする。このとき、全ての同一パターン列発生部460の記憶素子475に論理値0を設定したときのテストパターンを図32の(a)に示し、初期設定用の入力TDIに最も近いパターン発生器1423の記憶素子475のみ論理値0で、それ以外のパターン発生器1421、1422の記憶素子475に論理値1を設定したときのテストパターンを図32の(b)に示す。
【0083】
同一パターン列発生部1421、1422、1423内のLFSRの初期値を、順に、(s11、s12、s13、s14)、(s21、s22、s23、s24)、(s31、s32、s33、s34)とする。また、LFSRの初期値設定後に生成する乱数列を、順に、(r11、r12、r13、…)、(r21、r22、r23、…)、(r31、r32、r33、…)とし、これらの値はそれぞれ(s11、s12、s13、s14)、(s21、s22、s23、s24)、(s31、s32、s33、s34)の一次式で表現できる。
【0084】
ここで、図32の(a)の場合と図32の(b)の場合を比較して、seed変換の容易さを説明する。テストパターン中の設定すべき記憶素子の集合は、1つのパターン発生器から接続されたスキャンチェーン上にあると仮定する。このとき、記憶素子群1431、1432、1433、1443における次元数、即ち、連立一次方程式を立てたときの変数の数は4であるが、記憶素子群1441、1442における次元数は8(記憶素子群1441における変数は、s11、s12、s13、s14、s21、s22、s23、s24。記憶素子群1442における変数は、s21、s22、s23、s24、s31、s32、s33、s34。)である。次元数が大きいほどseed変換成功の可能性が高いといえるため、図32(b)のシフト動作によるパターン発生はseed変換に有利だといえる。このように、パターン発生時に擬似乱数発生とシフト動作を切換えることができる同一パターン列発生部460は、複数のパターン生成期をもつ場合に、seed変換成功の可能性を高くするという効果がある。
【0085】
以下では、本発明による半導体集積回路のテスト方法に必要な情報の抽出方法、特に、同一パターン列発生部110における発生するパターン列の決定方法の一実施例を述べる。
説明の前提となるハード構成として、同一パターン列発生部110は同一パターン発生部400、420、440、460のようなLFSRをベースにした構成、テスト対象回路はテスト対象回路200のようなフルスキャン設計された場合について述べる。
【0086】
テスト手順は、100%に近い故障検出率を効率的に得るために、まず、BIST方式で図22に示した乱数パターン発生モード1014で所定のパターン数分テストした後、図21に示した近傍パターン発生モード1004を実行し、最後にBIST方式による故障検出率を補うストアドテスト方式によるテストがあるという前提で述べる。従って、求めるべき情報は、同一パターン列発生部で用いるseed集合と、故障検出率を補う追加テストパターン集合である。なお、seed集合の各要素は、パターン発生器の初期値であり、その各初期値には、LFSRのseedの他に、空回し数、空送り数、空送り追加数、LFSR多項式切換え、パターン列番号用カウンタの初期値を含む。
【0087】
まず、seed集合及び追加テストパターン集合を求める手順の概略を図33に示す。ステップ1501では、BIST方式の乱数パターンモードにおける期待値計算と故障シミュレーションを実行し、故障検出情報1512を出力する。ステップ1502では、故障検出情報1512からわかる未検出故障に対し、テストパターンの生成あるいは冗長判定を行い、テストパターン集合1513を出力するとともに、故障検出情報1512に冗長判定結果を反映する。ステップ1503では、テストパターン集合1513を利用して近傍パターンの中心パターンである親パターンを生成し、親パターン集合1514を出力する。ステップ1504では、親パターン集合1514をBIST近傍パターン発生モードを実行できる情報であるseed集合1515に変換し、そのときの期待値計算と故障シミュレーションを実行して、故障検出情報1512を更新する。ステップ1505では、テストパターン集合1513と故障検出情報1512から故障検出率を補うのに必要なテストパターンを抽出して、追加テストパターン集合1516を出力し、故障検出情報1512を更新する。
【0088】
ステップ1502のテストパターン生成では、後で述べる親パターン生成1503でのパターンクラスタが効果的になるために、各パターンは設定不要な記憶素子はできるだけ不定値となるように生成する。例えば、1つの故障に対するテストパターンを既存のテストパターン生成アルゴリズムを利用して生成し、設定不要な記憶素子は不定値のままとして故障シミュレーションを行い、同時に検出される故障を見つける、といった処理を繰り返せばよい。ただし、生成したパターン同士の不定値部分を利用してマージするといった、いわゆるテストパターン圧縮は行わない方が望ましい。
【0089】
図34は前記親パターン生成処理1503の手順を示す。ステップ1701では、テストパターン集合を、各テストパターンの論理値0又は1を設定された記憶素子の集合が一致するグループに分割する。ステップ1702では、ステップ1701で求めたパターンのグループをさらに分割し、分割された各グループ内のテストパターンが、使用する反転制御回路121の機能に応じて定まるハミング距離以下とする。例えば、反転制御回路600、620の場合はハミング距離が1以下で、反転制御回路640、660の場合はハミング距離が2以下とすればよい。このようにして生成されたテストパターンのグループの1つ1つをパターンクラスタと呼ぶ。ステップ1703では、各パターンクラスタに対し、各ビットごとに多数決をとることで求まるパターンを親パターンとする。
【0090】
図35は、前記seed集合生成処理1504の手順を示す。ステップ1811で、親パターン集合1514から未試行の親パターンを選択し、ステップ1812で、空回し数、空送り数、空送り追加数、LFSR多項式の与えられたパターン生成条件の中から、未試行の条件を選択する。選択した親パターン、パターン生成条件に対し、以下の処理を行う。ステップ1813では、スキャンチェーンの接続と空回し数、空送り数、空送り追加数に依存する記憶素子間の相関についてチェックする。もし、実現できないパターンと判明すれば、ステップ1814で未試行のパターン生成条件があればステップ1812に戻り、未試行のパターン生成条件がなければステップ1820に進む。もし、ステップ1813での相関チェックが問題無ければ、ステップ1815へ進み、選択したLFSR多項式から発生する乱数列より親パターンを実現できるように、LFSRのseedを連立一次方程式の解法を利用して求める。もし条件を満たすseedが存在しない場合は、ステップ1816からステップ1614へ進む。条件を満たすseedが存在する場合はステップ1817へ進み、親パターン及び使用する反転制御回路121の機能に応じて発生される子パターン群に対し、故障シミュレーションを行う。このとき、ステップ1818で新規に検出される故障がなければステップ1820へ進む。新規に検出される故障があれば、有効な子パターンの番号の集合を記憶しておく。そして、ステップ1819では、LFSRのseedと、選択したLFSR多項式から求まるLFSRフィードバック位置を指定する記憶素子の値と、有効な子パターンの最初の番号から求まるパターン列番号用カウンタの値から決まるパターン発生器の初期値を採用するとともに、空回し数、空送り数、空送り追加数と、有効な子パターンの最初の番号と最後の番号からそれらの差に1加えた値として求まる子パターン数を記憶する。ステップ1820では、未試行の親パターンがあればステップ1811に戻り、全ての親パターンに対し試行したならば、処理を終了する。
【0091】
図36は、前記追加テストパターン生成処理1505の手順を示す。ステップ1931では、テストパターン集合1513から未試行のテストパターンを選択し、そのパターンに対しステップ1932で故障シミュレーションを行う。ステップ1933で、新規に故障を検出した場合、ステップ1934へ進み、そうでなければステップ1937へ進む。ステップ1934では、試行中のテストパターンが既に保存してあるパターンにマージ可能な場合は、ステップ1936でマージし、そうでなければ、ステップ1935で新規にそのパターンを保存する。ステップ1937では未試行のテストパターンがあれば、ステップ1931へ進み、テストパターン集合1513のテストパターン全てについて試行したならば、処理を終了する。
【0092】
ここで、図28で示した半導体集積回路1200に対し、ステップ1502、1503、1504を実行した例を説明する。まず、テストパターン生成処理1502の結果であるテストパターン集合1513は、図28(b)のテストパターン1242である。次に、親パターン生成1503における処理を説明する。ステップ1701により、テストパターンの番号1〜11を、信号線x1、x2、…、x8を設定する必要のあるパターン番号1〜9のグループと、信号線y0を設定する必要のあるパターン番号10〜11のグループに分類する。ステップ1702で、所定のハミング距離を1とするとき、パターン番号1〜9のグループはパターン番号1の近傍であり、パターン番号10〜11のグループはパターン番号10の近傍であることから、それぞれのグループがパターンクラスタとなりうる。ステップ1703により、パターン番号1〜9のグループでビット毎多数決をとると親パターンはパターン番号1に一致し、同様に、パターン番号10〜11のグループでは親パターンはパターン番号10に一致する。
【0093】
次に、seed生成処理1504に進む。ステップ1711で親パターンであるパターン番号1を選択し、ステップ1712で空回し数=0、空送り数=0、LFSR多項式をx^4+1=0(シフトレジスタとして動作)を選択する。ステップ1613で記憶素子間の相関チェックをするが、テスト対象回路1220では相関がなくOKである。ステップ1615では、seedを(s1、s2、s3、s4)とするとき、記憶素子1228〜1221に対する条件として、順に、s1=1、s2=1、s3=1、s4=1、r1=1、r2=1、r3=1、r4=1、r5=1となり、この連立一次方程式を解く。ただし、r1、r2、…、r5は、LFSRの初期値設定後に生成する乱数列で、r1=s1、r2=s2、r3=s3、r4=s4、r5=s1である。この連立一次方程式の解は存在し、s1=1、s2=1、s3=1、s4=1である。即ち、seed変換が成功したので、ステップ1617でこのseedから生成される親パターンと子パターン8個に対する故障シミュレーションを実行すると、図29で示したテストパターンが出現するので、全縮退故障を検出する。従って、ステップ1619でこのseedを採用し、seedである(1、1、1、1)と、パターン生成条件である、空回し数=0、空送り数=0、LFSR多項式をx^4+1=0という情報を記憶する。そして、ステップ1611に戻り、親パターンであるパターン番号10に対する処理がステップ1612、1613、1615、1616、1617と進み、(X、1、X、X)というseedを求められるが、ステップ1618にて新規故障検出がないため、このseedは採用しない。
【0094】
図37は、本発明のテストパターン発生回路における反転制御回路の別の回路を示す。図11の回路では、図25に示すように偶数列又は奇数列での反転制御を可能にする。これに対して、図37の回路では、任意の列に対して、反転制御を可能にする。パターン列内時刻用カウンタ681、パターン列番号用カウンタ682、比較器684、AND素子685は、図10に示すパターン列内時刻用カウンタ601、パターン列番号用カウンタ602、比較器604、AND素子605とそれぞれ同じ機能を持つ構成要素であり、ここでは説明を省略する。本構成回路の特徴は、列ごとに反転を制御するために反転情報レジスタ694を設けた点にある。反転情報レジスタ694はn個のレジスタを含み、各レジスタの出力とAND素子685の出力との論理積が各出力RVS1,RVS2,…RVSnに出力される。
【0095】
反転情報レジスタ694には、入力CTINから列反転パターンが入力される。図38は、(レジスタ1、レジスタ2、レジスタ3…レジスタn)(尚、レジスタiは出力RVSiに対応するレジスタである。)に列反転パターンとして(1,1,0,…1)が入力された場合の子パターンの出力を示したものである。この場合、反転行(例えば子パターン0における第3行)において、第1,2、n列は親パターンの反転パターンであり、第3列は非反転パターンとなる。もちろん、本回路構成に対して、図12の回路構成を適用することにより反転する行の周期を可変としてもよく、図13の回路構成を適用することにより反転する行を複数行にしてもよい。これらの場合においても反転行において、所定の列が非反転パターンとなる。
【0096】
また、反転情報レジスタに格納する値は、レジスタに格納された値としたが、子パターンごとに変化させることもできる。この場合、所望の列反転パターンを形成するための回路を別途反転情報レジスタ694に付加する必要がある。また、図37の回路構成では別途反転情報レジスタ694、カウンタ681,682が一本のスキャンチェーンにつながれているが、反転情報レジスタ694についてはカウンタとは別に初期値を入力するように構成してもよい。この場合、反転情報レジスタ694がカウンタとは独立にその値を制御することができる。
以上のように、上記の処理に従えば、本発明による半導体集積回路のテスト方法に必要な情報、即ち、パターン発生器の初期値を計算する事ができる。
【0097】
【発明の効果】
本発明による半導体集積回路は、近傍パターンを発生する回路をテスト対象回路と独立に付加することにより、設計期間の増大の問題がなく、テスト対象回路の動作速度オーバーヘッドがなく、ハード的なオーバーヘッドが小さく、そして、少ないテストデータ量で、高い故障検出率を得ることができる。
【図面の簡単な説明】
【図1】本発明によるテスト方法を実施する回路の一実施例の構成を示す図。
【図2】上記テスト対象回路の回路を示す図。
【図3】LFSR(LFSR)の回路図。
【図4】本発明によるパターン発生回路の実施例における同一パターン発生部の第一の回路構成例の回路図。
【図5】本発明によるパターン発生回路の実施例における同一パターン列発生部の第二の回路構成例の回路図。
【図6】本発明によるパターン発生回路の実施例における同一パターン列発生部の第三の回路構成例の回路図。
【図7】本発明によるパターン発生回路の実施例における同一パターン列発生部の第四の回路構成例の回路図。
【図8】本発明によるパターン発生回路の実施例における同一パターン列発生部の第五の回路構成例の回路図。
【図9】同一パターン列発生部の動作を表す図。
【図10】本発明によるパターン発生回路の実施例における反転制御回路の第一の回路構成例の回路図。
【図11】本発明によるパターン発生回路の実施例における反転制御回路の第二の回路構成例の回路図。
【図12】本発明によるパターン発生回路の実施例における反転制御回路の第三の回路構成例の回路図。
【図13】本発明によるパターン発生回路の実施例における反転制御回路の第四の回路構成例の回路図。
【図14】上記反転制御回路に使用されるnビットカウンタの回路図と、その動作を表す図。
【図15】本発明によるパターン発生回路を持つ半導体集積回路(パターン発生器)の第一の実施例の構成及びその動作を表す図。
【図16】本発明によるパターン発生回路を持つ半導体集積回路の第二の実施例の構成を図。
【図17】本発明によるパターン発生回路を持つ半導体集積回路の第三の実施例の構成を示す図。
【図18】本発明によるパターン発生回路を持つ半導体集積回路の第四の実施例の構成を示す図。
【図19】図18のパターン圧縮器の回路図。
【図20】本発明によるパターン発生回路を持つ半導体集積回路の第五の実施例の構成を示す図。
【図21】図18に示した半導体集積回路の基本的な動作のタイムチャート図。
【図22】図18に示した半導体集積回路の疑似乱数パターンを発生するタイムチャート図。
【図23】図18に示した半導体集積回路に疑似乱数パターンを発生するタイムチャート図。
【図24】図10の反転制御回路を用いた場合の子パターンの様子を示す図。
【図25】図11の反転制御回路を用いた場合の子パターンの様子を示す図。
【図26】図12の反転制御回路を用いた場合の子パターンの様子を示す図。
【図27】図13の反転制御回路を用いた場合の子パターンの様子を示す図。
【図28】本発明によるパターン発生回路を持つ半導体集積回路の第六の実施例の構成及び動作をを示す図。
【図29】図28の半導体集積回路のテスト時における詳細な動作を示す図。
【図30】図28の半導体集積回路のテスト時における詳細な動作を示す図。
【図31】本発明による半導体集積回路において、パターン発生条件による動作の違いを説明する模式図。
【図32】本発明による半導体集積回路において、パターン発生条件による動作の違いを説明する模式図。
【図33】本発明による半導体集積回路のテストに必要な情報の抽出方法の一実施例の処理フロー図。
【図34】図33の親パターン生成処理の詳細な処理フロー図。
【図35】図33のseed集合生成処理の詳細な処理フロー図。
【図36】図33のテストパターン生成処理の詳細な処理フロー図。
【図37】本発明によるパターン発生回路の実施例における反転制御回路の別の回路図。
【図38】図37の反転制御回路を用いた場合の子パターンの様子を示す図。
【符号の説明】
110…同一パターン列発生部、
120…ビット反転制御部、121…反転制御回路
122,123,124…排他論理和回路、
130…テスト対象回路、
800…パターン発生器。
Claims (7)
- 一定のビット数及び時刻数のパターン列が複数個集まったパターン列群を1回以上発生する回路であって、
上記パターン列群内のパターン列は全て同一である同一パターン列発生部と、前記同一パターン列発生部から発生されたパターン列群を入力とし、前記パターン列群内のパターン列における一部のビットを反転させ、パターン列群及びパターン列群内パターン列番号及びパターン列内時刻に応じて、反転するパターン内ビット位置を変更する回路であるビット反転制御部とを有することを特徴とするテストパターン発生回路。 - 請求項1において、前記同一パターン列発生部が線形フィードバックシフトレジスタと、前記パターン列群の1つを発生する間、前記線形フィードバックシフトレジスタ内のレジスタの初期値を保持し続けるレジスタを少なくとも1つ有することを特徴とするテストパターン発生回路。
- 請求項1又は2において、前記ビット反転制御部が、入力されるパターン列群内で、反転ビットのないパターン列、1パターンの一部又は全部のビットが反転したパターン列、連続又は所定のパターン数分の間隔があいた複数パターンの一部又は全部のビットが反転したパターン列の複数パターン列の全て、あるいは上記複数パターン列の一部のパターン列を含むようにビット反転を制御する制御回路を有することを特徴とするテストパターン発生回路。
- 請求項1ないし3のいずれか1つに記載されたテストパターン発生回路又は前記ビット反転制御部と、テスト対象回路とが集積され、前記テスト対象回路内に貼られたスキャンチェーンの入力信号線又はテスト対象回路への外部入力信号線と前記テストパターン発生回路又は前記ビット反転制御部の出力信号線が接続されたことを特徴とする半導体集積回路。
- スキャンチェーンの入力信号線又は外部入力信号線を持つテスト対象回路にテストパターンの信号を加え、上記テスト対象回路の応答パターンを期待値と比較する半導体集積回路のテスト方法であって、上記テストパターンの信号の発生ステップとして、一定のビット数及び時刻数のパターン列が複数個集まったパターン列群内のパターン列が全て同一である同一パターン列を発生するステップと、
前記同一パターン列のパターン列群のパターン列における一部のビットを反転させ、パターン列群及びパターン列群内パターン列番号及びパターン列内時刻に応じて、反転するパターン内ビット位置を変更するステップを有することを特徴とする半導体集積回路のテスト方法。 - 請求項5記載のテスト方法において、前記同一パターン列を発生するステップの同一パターン列生成方法が、
仮定した故障を検出するテストパターンの集合を生成する第一のステップと、前記テストパターンの集合をパターン列の集合に変換して考え、設定すべきパターン列内時刻とパターン内ビット位置の組の集合が一致し、かつ、所定のハミング距離以下のパターン列同士を同じクラスタとなるように前記パターン列の集合を分類する第二のステップと、前記パターン列のクラスタそれぞれに対し、属するパターン列からパターン列内時刻及びパターン内ビット位置ごとの多数決により求まるパターン列を生成する第三のステップを有することを特徴とする半導体集積回路のテスト方法。 - 請求項5記載のテスト方法において、前記同一パターン列を発生するステップが、
仮定した故障を検出するテストパターンの集合を生成する第一のステップと、前記テスト パターンの集合をパターン列の集合に変換して考え、設定すべきパターン列内時刻とパターン内ビット位置の組の集合が一致し、かつ、所定のハミング距離以下のパターン列同士を同じクラスタとなるように前記パターン列の集合を分類する第二のステップと、前記パターン列のクラスタそれぞれに対し、属するパターン列からパターン列内時刻及びパターン内ビット位置ごとの多数決により求まるパターン列を生成する第三のステップと、前ステップで求めた各パターン列を LFSR のレジスタ初期値に変換する第四のステップと、前ステップで求められた LFSR レジスタ初期値の中で、パターン列群に展開すると新規に故障を検出できるあるいはテストパターンを含むものを選択する第五のステップを有することを特徴とする半導体集積回路のテスト方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000378423A JP3937034B2 (ja) | 2000-12-13 | 2000-12-13 | 半導体集積回路のテスト方法及びテストパターン発生回路 |
TW090105864A TW546483B (en) | 2000-12-13 | 2001-03-13 | Test method of semiconductor integrated circuit and test pattern generating circuit |
KR1020010014415A KR100859394B1 (ko) | 2000-12-13 | 2001-03-20 | 반도체 집적 회로의 테스트 방법 및 테스트 패턴 발생 회로 |
US09/811,435 US6922803B2 (en) | 2000-12-13 | 2001-03-20 | Test method of semiconductor intergrated circuit and test pattern generator |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000378423A JP3937034B2 (ja) | 2000-12-13 | 2000-12-13 | 半導体集積回路のテスト方法及びテストパターン発生回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002181905A JP2002181905A (ja) | 2002-06-26 |
JP3937034B2 true JP3937034B2 (ja) | 2007-06-27 |
Family
ID=18846996
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000378423A Expired - Fee Related JP3937034B2 (ja) | 2000-12-13 | 2000-12-13 | 半導体集積回路のテスト方法及びテストパターン発生回路 |
Country Status (4)
Country | Link |
---|---|
US (1) | US6922803B2 (ja) |
JP (1) | JP3937034B2 (ja) |
KR (1) | KR100859394B1 (ja) |
TW (1) | TW546483B (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009141849A1 (ja) * | 2008-05-21 | 2009-11-26 | 株式会社アドバンテスト | パターン発生器 |
Families Citing this family (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7137048B2 (en) * | 2001-02-02 | 2006-11-14 | Rambus Inc. | Method and apparatus for evaluating and optimizing a signaling system |
US7490275B2 (en) | 2001-02-02 | 2009-02-10 | Rambus Inc. | Method and apparatus for evaluating and optimizing a signaling system |
US6873939B1 (en) | 2001-02-02 | 2005-03-29 | Rambus Inc. | Method and apparatus for evaluating and calibrating a signaling system |
US6901546B2 (en) * | 2001-06-07 | 2005-05-31 | International Business Machines Corporation | Enhanced debug scheme for LBIST |
US6922262B2 (en) * | 2001-08-06 | 2005-07-26 | Kabushiki Kaisha Toshiba | Image processing apparatus |
JP2003121499A (ja) * | 2001-10-09 | 2003-04-23 | Hitachi Ltd | 組込みテスト機能付き半導体集積回路、テストコード生成プログラムから成る電子設計データを保存する記憶媒体、該半導体集積回路のテスト方法、テストコード生成自動化方法及びそのプログラム |
US20040034820A1 (en) * | 2002-08-15 | 2004-02-19 | Soltis, Donald C. | Apparatus and method for pseudorandom rare event injection to improve verification quality |
US7032202B2 (en) * | 2002-11-19 | 2006-04-18 | Broadcom Corporation | System and method for implementing a flexible top level scan architecture using a partitioning algorithm to balance the scan chains |
US7076377B2 (en) * | 2003-02-11 | 2006-07-11 | Rambus Inc. | Circuit, apparatus and method for capturing a representation of a waveform from a clock-data recovery (CDR) unit |
EP1605271B1 (en) * | 2003-03-14 | 2008-05-14 | Advantest Corporation | Testing apparatus, program for testing apparatus, and method of controlling testing appratus |
JP4520103B2 (ja) * | 2003-04-02 | 2010-08-04 | ルネサスエレクトロニクス株式会社 | スキャンテストパタン入力方法および半導体集積回路 |
US7336749B2 (en) * | 2004-05-18 | 2008-02-26 | Rambus Inc. | Statistical margin test methods and circuits |
US7590175B2 (en) * | 2003-05-20 | 2009-09-15 | Rambus Inc. | DFE margin test methods and circuits that decouple sample and feedback timing |
US7627029B2 (en) | 2003-05-20 | 2009-12-01 | Rambus Inc. | Margin test methods and circuits |
DE602004009817T2 (de) * | 2003-09-19 | 2008-08-21 | Nxp B.V. | Elektronische schaltung mit einem geheimen submodul |
JP2005135226A (ja) * | 2003-10-31 | 2005-05-26 | Matsushita Electric Ind Co Ltd | 半導体集積回路のテスト回路挿入方法及び装置 |
WO2005124378A1 (ja) * | 2004-06-17 | 2005-12-29 | Advantest Corporation | 試験装置及び試験方法 |
US7346823B1 (en) * | 2004-06-24 | 2008-03-18 | Cypress Semiconductor Corporation | Automatic built-in self-test of logic with seeding from on-chip memory |
JP4733935B2 (ja) * | 2004-06-29 | 2011-07-27 | 富士通セミコンダクター株式会社 | 試験パターン生成装置、テスト回路試験装置、試験パターン生成方法、テスト回路試験方法、試験パターン生成プログラム、テスト回路試験プログラム、および記録媒体 |
JP4588421B2 (ja) * | 2004-11-29 | 2010-12-01 | 富士通株式会社 | テストパターン生成装置、回路設計装置、テストパターン生成方法、回路設計方法、テストパターン生成プログラム、回路設計プログラム |
US7447958B2 (en) * | 2005-05-05 | 2008-11-04 | Cypress Semiconductor Corporation | Parallel input/output self-test circuit and method |
US8046655B2 (en) * | 2005-05-18 | 2011-10-25 | Stmicroelectronics Pvt. Ltd. | Area efficient memory architecture with decoder self test and debug capability |
US7350124B2 (en) * | 2005-10-18 | 2008-03-25 | International Business Machines Corporation | Method and apparatus for accelerating through-the pins LBIST simulation |
JP4717027B2 (ja) * | 2006-05-02 | 2011-07-06 | 富士通株式会社 | 半導体集積回路、テストデータ生成装置およびlsi試験装置 |
JP5034576B2 (ja) * | 2006-05-02 | 2012-09-26 | 富士通株式会社 | 半導体集積回路、テストデータ生成装置およびlsi試験装置 |
KR100768549B1 (ko) * | 2006-07-27 | 2007-10-18 | 연세대학교 산학협력단 | 분할된 lfsr을 이용한 저전력 결정패턴 bist 방법및 장치 |
US7730373B2 (en) * | 2006-09-12 | 2010-06-01 | Nec Laboratories America, Inc. | Test data compression method for system-on-chip using linear-feedback shift register reseeding |
US8615691B2 (en) * | 2006-10-13 | 2013-12-24 | Advantest (Singapore) Pte Ltd | Process for improving design-limited yield by localizing potential faults from production test data |
US8453026B2 (en) * | 2006-10-13 | 2013-05-28 | Advantest (Singapore) Pte Ltd | Process for improving design limited yield by efficiently capturing and storing production test data for analysis using checksums, hash values, or digital fault signatures |
JP5179861B2 (ja) * | 2007-12-27 | 2013-04-10 | 株式会社日立製作所 | 半導体装置 |
US7948256B2 (en) * | 2008-09-12 | 2011-05-24 | Advantest Corporation | Measurement apparatus, test system, and measurement method for measuring a characteristic of a device |
US7979763B2 (en) * | 2008-10-21 | 2011-07-12 | Synopsys, Inc. | Fully X-tolerant, very high scan compression scan test systems and techniques |
FR2960977B1 (fr) * | 2010-06-07 | 2012-07-13 | St Microelectronics Grenoble 2 | Generateur de sequence a sollicitation variable pour circuit d'autotest integre |
JP2012198065A (ja) * | 2011-03-18 | 2012-10-18 | Fujitsu Ltd | 半導体集積回路、試験方法、情報処理装置、及びプログラム |
US8549369B2 (en) * | 2011-05-26 | 2013-10-01 | GlobalFoundries, Inc. | Semiconductor-based test device that implements random logic functions |
JP5988443B2 (ja) * | 2012-01-10 | 2016-09-07 | 国立研究開発法人科学技術振興機構 | テストパターン生産装置、故障検出システム、テストパターン生産方法、プログラム及び記録媒体 |
JP2014185981A (ja) * | 2013-03-25 | 2014-10-02 | Toshiba Corp | 半導体集積回路および半導体集積回路の自己テスト方法 |
CN112585486A (zh) * | 2018-08-22 | 2021-03-30 | 康姆索利德有限责任公司 | 扩展jtag控制器和使用扩展jtag控制器进行功能复位的方法 |
CN112997089A (zh) * | 2018-08-22 | 2021-06-18 | 康姆索利德有限责任公司 | 扩展jtag控制器和使用扩展jtag控制器进行功能调试的方法 |
US11585853B2 (en) * | 2019-11-21 | 2023-02-21 | Siemens Industry Software Inc. | Trajectory-optimized test pattern generation for built-in self-test |
US20240085471A1 (en) * | 2022-09-09 | 2024-03-14 | Infineon Technologies Ag | Test arrangement and method for testing an integrated circuit |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5258985A (en) * | 1991-11-12 | 1993-11-02 | Motorola, Inc. | Combinational data generator and analyzer for built-in self test |
GB2295700B (en) * | 1994-12-02 | 1999-04-21 | Westinghouse Brake & Signal | Data testing |
JPH0991997A (ja) * | 1995-09-28 | 1997-04-04 | Mitsubishi Electric Corp | メモリテスト回路 |
JP3941191B2 (ja) * | 1997-11-13 | 2007-07-04 | 株式会社日立製作所 | 半導体集積回路検査点の解析方法,解析装置 |
JP3910244B2 (ja) * | 1997-01-06 | 2007-04-25 | 株式会社日立製作所 | 論理回路検査点の解析方法 |
US6327687B1 (en) * | 1999-11-23 | 2001-12-04 | Janusz Rajski | Test pattern compression for an integrated circuit test environment |
US6615380B1 (en) * | 1999-12-21 | 2003-09-02 | Synopsys Inc. | Dynamic scan chains and test pattern generation methodologies therefor |
US6578180B2 (en) * | 2000-11-30 | 2003-06-10 | International Business Machines Corporation | Method and system for testing interconnected integrated circuits |
-
2000
- 2000-12-13 JP JP2000378423A patent/JP3937034B2/ja not_active Expired - Fee Related
-
2001
- 2001-03-13 TW TW090105864A patent/TW546483B/zh not_active IP Right Cessation
- 2001-03-20 US US09/811,435 patent/US6922803B2/en not_active Expired - Fee Related
- 2001-03-20 KR KR1020010014415A patent/KR100859394B1/ko not_active IP Right Cessation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009141849A1 (ja) * | 2008-05-21 | 2009-11-26 | 株式会社アドバンテスト | パターン発生器 |
US8423840B2 (en) | 2008-05-21 | 2013-04-16 | Advantest Corporation | Pattern generator |
Also Published As
Publication number | Publication date |
---|---|
KR20020046896A (ko) | 2002-06-21 |
US20020073373A1 (en) | 2002-06-13 |
KR100859394B1 (ko) | 2008-09-22 |
TW546483B (en) | 2003-08-11 |
JP2002181905A (ja) | 2002-06-26 |
US6922803B2 (en) | 2005-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3937034B2 (ja) | 半導体集積回路のテスト方法及びテストパターン発生回路 | |
JP4177807B2 (ja) | 回路テストシステム | |
US7234092B2 (en) | Variable clocked scan test circuitry and method | |
US5383143A (en) | Self re-seeding linear feedback shift register (LFSR) data processing system for generating a pseudo-random test bit stream and method of operation | |
US7900104B2 (en) | Test pattern compression for an integrated circuit test environment | |
US7404126B2 (en) | Scan tests tolerant to indeterminate states when employing signature analysis to analyze test outputs | |
US5258986A (en) | Tightly coupled, low overhead RAM built-in self-test logic with particular applications for embedded memories | |
US8914695B2 (en) | synthesizing circular decompressors | |
KR19980086574A (ko) | 메모리 번인 및 테스트를 위한 패턴 발생기 | |
WO2007013306A1 (ja) | 半導体論理回路装置のテストベクトル生成方法及びテストベクトル生成プログラム | |
JP2010539518A (ja) | 完全に不定値許容性であって非常に高スキャン圧縮なスキャンテストシステム及び技術(関連出願)本出願は、2008年10月21日に出願され「完全に不定値許容性であって非常に高いスキャン圧縮」と題された米国特許仮出願61/107,239号の優先権を主張する。 | |
JP2003332443A (ja) | 半導体集積回路とその設計支援装置およびテスト方法 | |
US20150100841A1 (en) | Linear decompressor with two-step dynamic encoding | |
JP2000266815A (ja) | 自己診断機能付き電子システム及び電子システムのシミュレーション装置 | |
US7681097B2 (en) | Test system employing test controller compressing data, data compressing circuit and test method | |
US11397841B2 (en) | Semiconductor integrated circuit, circuit designing apparatus, and circuit designing method | |
US7668893B2 (en) | Data generator having linear feedback shift registers for generating data pattern in forward and reverse orders | |
US7210083B2 (en) | System and method for implementing postponed quasi-masking test output compression in integrated circuit | |
JP2008128795A (ja) | 半導体集積回路 | |
JP4520103B2 (ja) | スキャンテストパタン入力方法および半導体集積回路 | |
JP3570944B2 (ja) | 半導体集積回路 | |
JP4272898B2 (ja) | 半導体テスト回路及びそのテスト方法 | |
JP4025301B2 (ja) | 電子回路試験用回路、電子回路試験装置、および電子回路試験方法 | |
JP5453981B2 (ja) | Lsi、及びそのテストデータ設定方法 | |
JP4351786B2 (ja) | 集積回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050314 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060606 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060613 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060811 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20060811 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061114 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061220 |
|
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: 20070206 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20070220 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070305 |
|
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: 20110406 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120406 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120406 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130406 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140406 Year of fee payment: 7 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |