JP2009527737A - マルチステージ・テスト応答コンパクタ - Google Patents

マルチステージ・テスト応答コンパクタ Download PDF

Info

Publication number
JP2009527737A
JP2009527737A JP2008555415A JP2008555415A JP2009527737A JP 2009527737 A JP2009527737 A JP 2009527737A JP 2008555415 A JP2008555415 A JP 2008555415A JP 2008555415 A JP2008555415 A JP 2008555415A JP 2009527737 A JP2009527737 A JP 2009527737A
Authority
JP
Japan
Prior art keywords
compactor
masking
test response
test
scan chain
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
JP2008555415A
Other languages
English (en)
Other versions
JP5268656B2 (ja
Inventor
ムルガルスキ,グジェゴシュ
ラジェスキ,ヤヌーシュ
ティスザー,イェジ
チェン,ウ−タン
ムケルジー,ニランジャン
カッサブ,マーク
Original Assignee
メンター グラフィックス コーポレイション
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 メンター グラフィックス コーポレイション filed Critical メンター グラフィックス コーポレイション
Publication of JP2009527737A publication Critical patent/JP2009527737A/ja
Application granted granted Critical
Publication of JP5268656B2 publication Critical patent/JP5268656B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318544Scanning methods, algorithms and patterns
    • G01R31/318547Data generators or compressors
    • 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/3177Testing of logic operation, e.g. by logic analysers
    • 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/2851Testing of integrated circuits [IC]
    • 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/31723Hardware for routing the test signal within the device under test to the circuits to be tested, e.g. multiplexer for multiple core testing, accessing internal nodes
    • 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/31727Clock circuits aspects, e.g. test clock circuit details, timing aspects for signal generation, circuits for testing clocks
    • 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/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318558Addressing or selecting of subparts of the device under test
    • G01R31/318563Multiple simultaneous testing of subparts
    • 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/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318566Comparators; Diagnosing the device under test

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

【課題】より高い圧縮比を提供し得る圧縮スキームが必要とされている。
【解決手段】本明細書は、いわゆる「Xプレス」テスト応答コンパクタの例示的な実施形態を開示する。開示するコンパクタのある実施形態は、オーバードライブ・セクションとスキャンチェーン選択ロジックとを含む。開示する技術のある実施形態は約1000倍の圧縮比を提供する。開示するコンパクタの例示的な実施形態は、従来のスキャンベースのテストシナリオとほぼ同じカバレッジおよびほぼ同じ診断分解能を維持できる。スキャンチェーン選択スキームのいくつかの実施形態は、テスト応答で発生してコンパクタに入る未知状態を有意に減らすことができ、または完全に排除できる。また、本明細書は、オンチップ・コンパクタ回路の実施形態および選択回路をマスクする制御回路網を生成する方法も開示する。
【選択図】図1

Description

開示する技術は、電子回路のテストに関し、具体的には圧縮ハードウェアの使用に関する。
本出願は、2006年2月17日に出願された「マルチステージ・テスト応答コンパクタ」と題する米国仮特許出願第60/774,431号明細書、2006年7月22日に出願された「マルチステージ・テスト応答コンパクタ」と題する米国仮特許出願第60/832,466号明細書、および2006年10月20日に出願された「マルチステージ・テスト応答コンパクタ」と題する米国仮特許出願第60/853,055号明細書の利益を主張する。上記出願はそれぞれ引用により本明細書に組み込まれている。
考えられる欠陥を検出する電子回路のテストでは、とくに回路が大型かつ/または複雑であれば、大量のテストデータ(たとえば、テスト応答)が生じる可能性がある。回路のスキャンチェーンに記憶されるテスト応答を圧縮すると、たとえば、おそらく回路外部の自動テスト装置(ATE)によって、より少ないテストリソース(たとえば、テストピン)を使って応答の分析が可能である。
米国特許第6,557,129号明細書 米国特許第6,829,740号明細書 米国特許出願公開第2005/0222816号明細書 I.Bayraktaroglu 外1名, "Test volume and application time reduction through scan chain concealment," Proc.DAC, pp.151-155, 2001
テスト応答コンパクタは現在も存在するが、これらデバイスの圧縮比は、スキャンチェーンの数対コンパクタの出力数の比に制限されることが多い。したがって、これより高い圧縮比を提供し得る圧縮スキームが必要とされている。
本明細書は、改良されたテスト応答コンパクタの例示的な実施形態、前記コンパクタの操作および設計方法、ならびに前記コンパクタを使用するシステムを開示する。前記コンパクタのある実施形態を本明細書において「X(サ)プレス」または「Xプレス」テスト応答コンパクタと呼び、第1コンパクション・セクションと、第2コンパクション・セクション(本明細書においては「オーバードライブ・セクション」と呼ぶこともある)と、1つまたは複数のテスト応答ビットを選択的にマスクするスキャンチェーン選択ロジックとを含む。開示する技術のある実施形態は約1000倍の圧縮比を提供する。開示するコンパクタの例示的な実施形態は、従来のスキャンベースのテストシナリオとほぼ同じカバレッジ(検出率)およびほぼ同じ診断分解能を維持できる。スキャンチェーン選択スキームのいくつかの実施形態は、テスト応答で発生してコンパクタに入る未知状態を有意に(大幅に)減らすことができ、または完全に排除できる。
開示する技術の様々な態様および特徴(これは単独または互いに組み合わせて実現できる)は、(1)複数のスキャンチェーンと協働し、ほぼ空間圧縮の利益を残しながら、比較的高い圧縮比を提供するマルチステージ・テスト応答コンパクタのアーキテクチャと、(2)コンパクタに組込みできるマルチレベル・スキャンチェーン選択ロジックと、(3)スキャンチェーンのランキングに基づいて未知(「X」)状態を抑制するのに採用されるパターン毎にスキャンチェーン選択マスクを判定する方法論とを含み得る。
開示する技術のいくつかの実施形態では、(たとえば、1つまたは複数のテスト応答ビットを選択的にマスクするため)スキャンチェーン選択ロジックを有する2ステージのテスト応答コンパクタを提供する。コンパクタの実施形態は幅広い範囲のX状態のプロファイルに対処でき、スキャンチェーンに対するコンパクタの出力の比よりも高い圧縮比を提供でき、および/または高い診断分解能を提供できる。加えて、また、ある実施形態では、オンチップ・コンパクタおよび記録回路網が故障ログ情報を記録する。これによりテスト時間の大幅な短縮ができる。さらに、本明細書に記述するマルチステージ・コンパクタは、そのスキャンチェーンの構成が一般的に変更できないため、外部ソリューションによってしかより高い圧縮比が達成できないレガシーコアに役立てられる。
本明細書では、1つまたは複数のテスト応答ビットをマスクするための選択ロジックを合成する例示的な方法も記述する。これら技法は選択ロジックの動作に必要なデータを減少できる。さらに、選択ロジックのマスクビット(本明細書において、「マスキング命令」または「マスキング命令ビット」とも呼ぶ)を判定する例示的な選択技法を開示する。
本明細書で開示する一例示的な実施形態は、被テスト回路のテスト応答を圧縮する装置である。前記装置は、たとえば、複数の第1コンパクタ入力と第1コンパクタ出力とを含む第1空間コンパクタと、前記第1コンパクタ出力に連結されたレジスタ入力および複数のレジスタ出力を含むレジスタと、前記複数のレジスタ出力に連結された複数の第2コンパクタ入力と第2コンパクタ出力とを含む第2空間コンパクタとを含む。これら実施形態のある実施態様では、前記レジスタは前記レジスタ入力からテスト応答ビットをロードして、前記複数のレジスタ出力を介して前記テスト応答ビットを並列で出力するように作動可能である。いくつかの実施形態では、前記第1空間コンパクタおよび前記第2空間コンパクタはフィードバックなしである。ある実施形態では、前記第1空間コンパクタおよび前記第2空間コンパクタはXORまたはXNORゲートのそれぞれのネットワークを含む。いくつかの実施例では、前記第1空間コンパクタおよび前記第2空間コンパクタのうちの少なくとも一方がパイプライン化された空間コンパクタである。前記レジスタは、直列に連結された2つ以上の順序素子を含むことができる。前記レジスタは前記テスト応答ビットを直列にロードするように作動可能にもできる。ある実施形態では、前記第1空間コンパクタは複数の第1コンパクタ出力を含み、またいくつかの実施形態では、前記第2空間コンパクタは複数の第2コンパクタ出力を含む。
さらに別の実施形態では、前記装置はさらに、前記複数の第1コンパクタ入力に連結された第1マスキング・ロジック・セットと、前記複数のレジスタ出力と前記複数の第2コンパクタ入力との間に連結された第2マスキング・ロジック・セットとを含むことができる。いくつかの実施形態では、前記装置はさらに、1つまたは複数の選択ロジック入力および複数の選択ロジック出力を有する選択ロジックを含み、前記複数の選択ロジック出力を前記第1マスキング・ロジック・セットのそれぞれの入力および前記第2マスキング・ロジック・セットのそれぞれの入力に連結し、前記選択ロジックは、前記1つまたは複数の選択ロジック入力で受信される1つまたは複数のマスキング命令ビットに応答して、前記第1マスキング・ロジック・セットと前記第2マスキング・ロジック・セットとを選択的に制御するように作動可能である。ある実施形態では、前記選択ロジックは、多項式にしたがって構成されるデジタル論理ゲート(たとえば、XORまたはXNORゲート)のネットワークを含む(たとえば、多項式は少なくとも1つの選択ロジック入力と少なくとも1つの選択ロジック出力とのそれぞれの関係を記述する)。いくつかの実施形態では、前記レジスタは第1レジスタであり、前記選択ロジックは複数の選択ロジック入力を含み、この装置は第2レジスタ入力と複数の第2レジスタ出力とを有する第2レジスタをさらに含み、前記複数の第2レジスタ出力が前記複数の選択ロジック入力に連結されている。前記装置に関するある実施形態では、前記マスキング命令ビットは、たとえば、外部テスタ、オンチップメモリ、またはオンチップデコンプレッサから受信される未圧縮ビットである。
本明細書で開示する別の例示的な実施形態は、被テスト回路のテスト応答を圧縮する方法である。この例示的な実施形態では、複数の未圧縮テスト応答ビットを圧縮し、それによって、第1圧縮テスト応答ビット・セットを生成する。前記第1圧縮テスト応答ビット・セットを複数の順序素子にロードする。前記第1圧縮テスト応答ビット・セットは前記複数の順序素子から並列でアンロードされて、前記第1圧縮テスト応答ビット・セットはさらに圧縮される。いくつかの実施形態では、前記ローディングは2以上のクロックサイクルの第1期間に起こり、前記アンローディングは1クロックサイクルの第2期間に起こる。ある実施形態では、前記未圧縮テスト応答ビットを圧縮および/またはさらに圧縮をする前に、前記未圧縮テスト応答ビットのうち1つまたは複数を選択的にマスクする。いくつかの実施形態では、前記未圧縮テスト応答ビットを圧縮しようとするときに、および/または前記圧縮テスト応答ビットをさらに圧縮しようとするときに、前記選択的なマスキングを制御するマスキング命令ビットをロードする。これら方法を実施するように構成したテスト応答を圧縮する回路も開示する。
本明細書で開示する別の例示的な実施形態は、被テスト回路のテスト応答を圧縮する装置である。この実施形態の装置は、それぞれ入力および出力を有する2つ以上の順序素子を含む。前記順序素子は、前記順序素子の入力を介して2つ以上の未圧縮テスト応答ビットのグループを入力するように作動可能であり、さらに前記未圧縮テスト応答ビットのグループを前記順序素子の出力を介して並列で出力するように作動可能である。前記装置はさらに、複数の第1コンパクタ入力と、第1コンパクタ出力とを含む第1空間コンパクタを含む。前記第1コンパクタ入力は前記順序素子の出力に連結している。いくつかの実施形態では、前記装置は、複数の第2コンパクタ入力と、1つの第2コンパクタ出力とを含む第2空間コンパクタをさらに含む。これら実施形態では、前記複数の第2コンパクタ入力の1つは前記第1コンパクタ出力に連結している。ある実施形態では、前記2つ以上の順序素子は被テスト回路のスキャンチェーン内のスキャンセルである。いくつかの実施形態では、前記2つ以上の順序素子は、被テスト回路のスキャンチェーンの出力に連結されるレジスタを形成している。ある実施形態では、前記第1空間コンパクタおよび前記第2空間コンパクタはフィードバックなしである。いくつかの実施形態では、前記第1空間コンパクタおよび前記第2空間コンパクタは、XORまたはXNORゲートのそれぞれのネットワークを含む。ある実施形態では、前記第2コンパクタ入力は複数の追加空間コンパクタの出力に連結している。これらの実施形態では、各追加空間コンパクタは、追加のそれぞれの順序素子から並列で受信される追加の未圧縮テスト応答ビットを入力するように構成されている。いくつかの実施形態は、前記複数の第1コンパクタ入力に連結された第1マスキング・ロジック・セットと、前記複数の第2コンパクタ入力に連結された第2マスキング・ロジック・セットとをさらに含む。ある実施形態では、前記装置はさらに、1つまたは複数の選択ロジック入力と複数の選択ロジック出力とを有する選択ロジックを含む。これらの実施形態では、前記複数の選択ロジック出力は、前記第1マスキング・ロジック・セットのそれぞれの入力および前記第2マスキング・ロジック・セットのそれぞれの入力に連結している。さらに、前記選択ロジックは、前記1つまたは複数の選択ロジック入力において受信される1つまたは複数のマスキング命令ビットに応答して、前記第1マスキング・ロジック・セットおよび前記第2マスキング・ロジック・セットを選択的に制御するよう作動可能にできる。前記選択ロジックは、たとえば、多項式にしたがって構成されるXORまたはXNORゲートのネットワークを含むことができる。ある実施形態では、前記装置は、レジスタ入力および複数のレジスタ出力を有するレジスタをさらに含む。これら実施形態では、前記複数のレジスタ出力は前記複数の選択ロジック入力に連結している。
本明細書で開示する別の例示的な実施形態は、被テスト回路のテスト方法である。この例示的な実施形態では、第1インターバル中にテストパターン・データを被テスト回路の入力に供給する。第2インターバル中に、マスキング回路のマスキング命令を前記被テスト回路の前記入力に供給する。ある実施形態では、前記第1インターバルは前記第2インターバルより先行する。他の実施形態では、前記第2インターバルが前記第1インターバルより先行する。いくつかの実施形態では、前記第1インターバルは第3および第4のインターバルを含み、前記第2インターバルは第5および第6のインターバルを含み、前記第3および第4のインターバルは、前記第5および第6のインターバルの間にある。ある実施形態では、前記テストパターンデータから生成されるテストパターンに対するテスト応答を前記被テスト回路からアンロードしようとするときに、前記マスキング命令をマスキング回路に適用する。いくつかの実施形態では、他のテストパターンデータから生成されるテストパターンに対するテスト応答を前記被テスト回路からアンロードしようとするときに、前記マスキング命令をマスキング回路に適用する。前記方法は、前記マスキング命令にしたがって1つまたは複数のテスト応答ビットをマスクする工程をさらに含むことができる。これら例示的な方法を実施する回路も開示する。
本明細書に記述する別の例示的な実施形態は、テスト応答の圧縮中に未知状態のマスキングを制御するために使用する選択回路用の選択ロジックを生成する方法である。この実施形態では、承認済み多項式セットに包含可能な候補多項式を生成する(たとえば、無作為に)。前記候補多項式および承認済み多項式は、前記選択ロジックの2つ以上の入力と前記選択回路のそれぞれの出力との接続を記述する。多項式のなかから1つまたは複数のテストセットを選択する。前記テストセットはそれぞれ、少なくとも前記候補多項式と前記承認済み多項式セットのうち1つまたは複数の多項式とを含む。前記テストセットのランク値を計算する。少なくとも部分的に前記ランク値に基づいて、前記承認済み多項式セットに包含する前記候補多項式を選択する。前記承認済み多項式セット(前記候補多項式も含む)を1つまたは複数のコンピュータ読取可能媒体に記憶する。ある実施形態では、前記方法はさらに、前記選択ロジックの回路記述を生成する工程と、前記選択ロジックの前記回路記述を1つまたは複数のコンピュータ読取可能媒体に記憶する工程とを含む。これら実施形態では、前記選択ロジックは前記承認済み多項式セットからの多項式を実施している。いくつかの実施形態では、前記方法はさらに、前記候補多項式が一定数以上の項を前記承認済み多項式セットのなかの1つまたは複数の多項式と共有するかどうかを判定する工程と、前記候補多項式が前記一定数以上の項を前記承認済み多項式セットのなかの1つまたは複数と共有する場合に、新たな候補多項式を生成する工程とを含む。ある実施形態では、前記ランク値を計算する工程は、前記多項式の2つ以上のテストセットの前記ランク値を平均化する工程をさらに含み、前記候補多項式を選択する工程は少なくとも部分的に前記平均ランク値に基づく。いくつかの実施形態では、生成、選択および計算する工程を、複数の追加候補多項式に繰り返す。ある実施形態では、前記承認済み多項式セットに含有する前記候補多項式を選択する工程はさらに、前記候補多項式の前記平均ランク値と前記追加の候補多項式のそれぞれの平均ランク値との比較に基づく。いくつかの実施形態では、前記2つ以上の多項式セットの前記ランク値を計算する工程は、前記多項式の2つ以上のテストセットの縮小列エシュロンフォーム(既約階段行列)を判定する工程を含む。
本明細書で開示する別の例示的な実施形態は、被テスト回路のテスト中に、テスト応答ビットをマスクするように作動可能な選択回路用のマスキング命令を生成する方法である。この実施形態では、前記被テスト回路に適用するテストパターンをシミュレーションしてテスト応答を生成する。前記テスト応答内の1つまたは複数の未知状態を特定する。少なくとも部分的に前記特定した1つまたは複数の未知状態に基づいて、マスクする1つまたは複数のテスト応答ビットを選択する。前記選択されるテスト応答ビットの1つまたは複数の指標を1つまたは複数のコンピュータ読取可能媒体に記憶する。ある実施形態では、選択回路用のマスキング命令を、少なくとも部分的に前記選択される1つまたは複数のテスト応答ビットに基づいて符号化(エンコード)する。いくつかの実施形態では、前記テスト応答内の1つまたは複数の故障観測サイトを特定し、マスクする前記1つまたは複数のテスト応答ビットの選択はさらに、少なくとも部分的に前記特定した1つもしくは複数の故障観測サイトに基づく。ある実施形態では、前記マスクする1つもしくは複数のテスト応答ビットを選択する工程は、少なくとも部分的に前記特定した1つもしくは複数の未知状態、前記特定した1つもしくは複数の故障観測サイト、または前記特定した1つもしくは複数の未知状態および前記特定した1つまたは複数の故障観測サイトの双方に基づいて、前記被テスト回路の選択されるスキャンチェーンの1つまたは複数のスキャンセルに重みを割り当てる工程を含む。前記方法はさらに、前記選択されるスキャンチェーン内の1つまたは複数のスキャンセルのグループの前記重みを総計する工程と、少なくとも部分的に前記総計した重みに基づいて、前記選択されるスキャンチェーンの1つまたは複数のスコアを計算する工程と、少なくとも部分的に前記スコアに基づいて前記選択されるスキャンチェーンからのテスト応答ビットをマスクするかどうかを判定する工程とを含む。いくつかの実施形態では、前記重みは、前記テストパターンのシミュレーションを適用した後に前記スキャンセルに記憶される1種の値を表す。ある実施形態では、前記選択されたスキャンチェーンに関して計算した前記スコアの1つは、前記選択されたスキャンチェーンをマスクする場合に残る推定エラー数に比例し、および/または前記選択されたスキャンチェーンに関して計算した前記スコアの1つは、前記選択されたスキャンチェーンをマスクしない場合に残る推定エラー数に比例する。
本明細書で開示する別の例示的な実施形態は、回路のテスト中にテスト応答ビットをマスクするように作動可能な選択回路用のマスキング命令を生成する方法である。この実施形態によると、選択されたスキャンチェーンの1つまたは複数のスキャンセルに重みを割り当てる。前記選択されたスキャンチェーン内のスキャンセルの1つまたは複数のグループの前記重みを総計する。少なくとも部分的に前記総計した重みに基づいて、前記選択されたスキャンチェーンの1つまたは複数のスコアを計算する。少なくとも部分的に前記スコアに基づいて、前記選択されたスキャンチェーンからテスト応答ビットをマスクするかどうかの判定をする。前記判定を1つまたは複数のコンピュータ読取可能媒体に記憶する。ある実施形態では、少なくとも部分的に前記判定に基づいて前記選択回路用のマスキング命令を符号化し、前記マスキング命令を1つまたは複数のコンピュータ読取可能媒体に記憶する。いくつかの実施形態では、前記重みは、テストパターンを被テスト回路に適用した後、前記スキャンセルに記憶される1種の値を表す。ある実施形態では、前記重みを割り当てる工程は、前記選択されたスキャンチェーンにおいて未知の値を捕獲する第1のそれぞれのスキャンセルに第1重みを割り当てる工程を含む。いくつかの実施形態では、前記重みを割り当てる工程は、前記選択されたスキャンチェーンにおいて対象とする故障を示す値を捕獲する第2のそれぞれのスキャンセルに第2重みを割り当てる工程を含む。ある実施形態では、前記第2重みは前記第1重みよりも大きい。いくつかの実施形態では、前記重みを割り当てる工程は、前記選択されたスキャンチェーンにおいて未知の値または対象とする故障を示す値のいずれでもない値を捕獲する第3のそれぞれのスキャンセルに第3重みを割り当てる工程をさらに含む。ある実施形態では、前記第2重みは前記第1重みおよび前記第3重みの双方よりも大きく、前記第3重みは前記第1重みよりも大きい。いくつかの実施形態では、前記選択されたスキャンチェーンに関して計算した前記スコアの1つは、前記選択されたスキャンチェーンをマスクしない場合に残る推定エラー数に比例し、および/または前記選択されたスキャンチェーンに関して計算した前記スコアの1つは、前記選択されたスキャンチェーンをマスクする場合に残る推定エラー数に比例する。ある実施形態では、1つまたは複数の追加スキャンチェーンに関して、前記割り当て、総計、および計算する工程を繰り返し、それによって、前記1つまたは複数の追加スキャンチェーンの各々に関して1つまたは複数のスコアを計算する。いくつかの実施形態では、前記選択されるスキャンチェーンからテスト応答ビットをマスクするかどうかを判定する工程はさらに、前記選択されるスキャンチェーンの前記1つまたは複数のスコアを、各それぞれの追加スキャンチェーンの前記1つまたは複数のスコアと比較する工程を含む。
本明細書で開示する別の例示的な実施形態は、テスティング・システム内の複数の回路をテストする方法を含む。前記複数の回路のうち1つの第1入力で、マスキング回路を制御するためのマスキングデータを受信する。前記複数の回路のうち前記1つの第2入力で、前記複数の回路のうち前記1つのテスト中に生成されるテスト応答を評価するための期待テスト応答データを受信する。この例示的な実施形態では、前記マスキングデータおよび前記期待テスト応答データが、前記第1入力および前記第2入力で同時に受信される。いくつかの実施形態では、前記テスト応答は圧縮されたテスト応答である。ある実施形態では、前記テスト応答を多入力シフトレジスタ(MISR)にロードし、前記MISRで1つまたは複数のコンパクタ・シグネチャを生成し、前記1つまたは複数のコンパクタ・シグネチャを1つまたは複数のコンピュータ読取可能媒体に記憶する。いくつかの実施形態では、前記1つまたは複数のコンパクタ・シグネチャにしたがって故障候補位置のリストを生成し、前記故障候補位置のリストを1つまたは複数のコンピュータ読取可能媒体に記憶する。ある実施形態では、少なくとも部分的に前記テスト応答および前記期待テスト応答データに基づいて、1つまたは複数のエラーベクトルを生成する。これらの実施形態では、前記エラーベクトルを多入力シフトレジスタ内で圧縮して、1つまたは複数のコンパクタ・シグネチャを生成することができ、前記1つまたは複数のコンパクタ・シグネチャを1つまたは複数のコンピュータ読取可能媒体に記憶できる。前記多入力シフトレジスタは複数のシフトサイクルにわたって複数のエラーベクトル入力からコンパクタ・シグネチャを生成することができる。たとえば、前記多入力シフトレジスタはテストパターン毎に1つのコンパクタ・シグネチャを生成することができる。ある実施形態では、少なくとも部分的に(たとえば、1シフトサイクルに)前記テスト応答および前記期待テスト応答データに基づいて、エラーベクトルを生成し、前記エラーベクトルを1つまたは複数のコンピュータ読取可能媒体に記憶する。いくつかの実施形態では、前記テスト応答をプライオリティ・エンコーダ回路にロードする。これらの実施形態では、前記テスト応答は3以上のコンパクタ出力からのテスト応答値を含み、前記プライオリティ・エンコーダ回路は1シフトサイクル中の前記テスト応答入力に3つ以上のエラーを検出するように構成されている。
本明細書で開示する別の例示的な実施形態は、複数のスキャンチェーン・グループを含む装置であり、前記複数のスキャンチェーン・グループの各々が、1つまたは複数のスキャンチェーンと、対応する1つまたは複数のスキャンチェーン・グループ出力とを含む。前記装置はさらに複数のコンパレータ回路を含み、前記複数のコンパレータ回路の各々がコンパレータ入力とコンパレータ出力とを含む。前記装置は、多入力シフトレジスタ(MISR)入力とMISR出力とを含むMISRも含有する。前記装置はさらに複数のコンパクタを含み、前記複数のコンパクタの各々が、前記複数のスキャンチェーン・グループの個々の前記スキャンチェーン・グループ出力に連結する1つまたは複数のコンパクタ入力を含み、前記MISR入力の個々に直接連結されるとともに、各コンパレータの前記コンパレータ入力にも連結されるコンパクタ出力をさらに含む。いくつかの実施形態では、前記装置はさらに、前記MISR出力に連結された第1入力およびパターン・カウンタに連結された第2入力を有するメモリを含有する。ある実施形態では、前記装置はさらに、複数のマスキング・ゲートを含み、各マスキング・ゲートは前記コンパレータの個々の前記コンパクタ出力と前記MISRの各入力との間に連結されている。
本明細書で開示する別の例示的な実施形態は、複数のスキャンチェーン・グループを含む装置であり、前記複数のスキャンチェーン・グループの各々が、1つまたは複数のスキャンチェーンと、対応する1つまたは複数のスキャンチェーン・グループ出力とを含む。この実施形態の装置はさらに、複数のコンパレータ回路を含み、前記複数のコンパレータ回路の各々がコンパレータ入力とコンパレータ出力とを含む。前記装置はまた、各コンパレータの前記コンパレータ出力に連結された多入力シフトレジスタ(MISR)入力およびMISR出力を含むMISRも含む。前記装置はさらに複数のコンパクタを含み、前記複数のコンパクタの各々が前記複数のスキャンチェーン・グループの個々の前記スキャンチェーン・グループ出力に連結される1つまたは複数のコンパクタ入力を含み、さらに各コンパレータの前記コンパレータ入力に連結されるコンパクタ出力を含む。前記装置は、前記コンパレータ出力のうち1つまたは複数に連結された第1コレクタ回路をさらに含む。前記第1コレクタ回路は、テスト中に前記複数のコンパクタのうちのどの1つまたは複数のコンパクタが1つまたは複数のエラー出力を出すかを記録するように構成できる。前記装置は、1つまたは複数のコンパレータ出力に連結される第2コレクタ回路も含有する。前記第2コレクタ回路は、前記1つまたは複数のエラー出力について1つまたは複数のタイム・インジケータを記録するように構成できる。ある実施形態では、前記第2コレクタ回路はORゲートを介して前記コンパレータ出力の2つ以上に連結されている。いくつかの実施形態はさらに、MISR出力に連結された入力を有するメモリを含む。ある実施形態はさらに複数のマスキング回路を含み、各マスキング回路が、各コンパレータの前記コンパレータ出力に連結されたマスキング回路入力と、前記MISRの各MISR入力に連結されたマスキング回路出力とを有する。
本明細書に開示する別の例示的な実施形態は、複数の電子回路をテストする装置である。前記装置は複数のスキャンチェーン・グループを含み、前記複数のスキャンチェーン・グループの各々が、1つまたは複数のスキャンチェーンと、対応する1つまたは複数のスキャンチェーン・グループ出力とを含む。前記装置はまた複数のコンパレータ回路も含み、前記複数のコンパレータ回路の各々がコンパレータ入力とコンパレータ出力とを含む。前記装置はさらに、複数のエンコーダ入力と1つのエンコーダ出力とを含むエンコーダ回路を含む。前記エンコーダ入力は各コンパレータ出力に連結されている。前記装置は複数のコンパクタも含み、各コンパクタが前記スキャンチェーン・グループの個々の前記スキャンチェーン・グループ出力に連結された1つまたは複数のコンパクタ入力を含み、さらに各コンパレータの前記コンパレータ入力に連結されたコンパクタ出力を含む。この実施形態のエンコーダは、(たとえば、1シフトサイクル中の)前記コンパクタ出力から3つ以上のエラー値出力を検出するように構成されている。加えて、前記エンコーダを前記コンパクタ出力から2つ以下のエラー値出力を検出するように構成することもできる。いくつかの実施形態はさらに複数のマスキング回路を含み、各マスキング回路が、各コンパクタの前記コンパレータ出力に連結されたマスキング回路入力と、各エンコーダ入力に連結されたマスキング出力とを有する。ある実施形態は前記エンコーダ出力に連結されたメモリも含む。
開示する方法のいずれも、コンピュータに前記方法を行わせるコンピュータ実行可能命令を含むコンピュータ読取可能媒体として実施できる。また、開示するコンパクタのいずれかによって出されるシグネチャを記憶し、開示する方法のいずれかによって特定される故障候補と思われるものまたは欠陥スキャンセル候補のリストを記憶し、開示するコンパクタの実施形態のいずれかを実施する回路記述を記憶し、または記述する方法のいずれかの最終結果または中間結果を記憶するコンピュータ読取可能媒体も開示する。
本発明の上述およびその他の目的、特徴および利点は、添付の図面を参照しながら進める以下の詳細な説明からより明らかになるであろう。
以下に、電子回路テスト技術および関連装置の代表的な実施形態を開示するが、これらは決して限定として解釈してはならない。そうではなく、本開示は、単独および互いの様々な組合わせおよび準組合せの状態にある開示する様々な方法、装置およびその均等物の新規かつ非自明の特徴および態様のすべてを対象とする。開示する技術は、いずれか特定の態様もしくは特徴、またはその組合わせに限定されるものではなく、また開示する方法および装置はいずれか1つまたは複数の特定の利点が存在するまたは問題が解決されることを必要とするわけではない。
本出願および請求項で使用する単数形の「a」、「an」および「the」は、本文に別段の記載が明示されていない限り、複数形を含む。さらに、「含有する(includes)」という用語は「含む(comprises)」を意味する。また、本文に別段の記載がない限り、「連結される(coupled)」という用語は電気的または電磁的に接続またはリンクされていることを意味し、直接的な接続または直接的なリンクおよび回路の意図する動作に影響しない1つまたは複数の中間要素を介した間接的な接続または間接的なリンクの双方を含有する。
提示の便宜上、開示する方法および装置のいくつかの動作を特定の連続的な順序で記述しているが、この記述方式は、以下に明記する特有の言語で特定の順序で行うことが必要とされない限り、順序の変更を包含することは理解されたい。たとえば、順次記述されている動作はある場合には順序を変更してまたは同時に行ってもよい。また、簡潔にするために、添付の図面は、開示する方法および装置を他の方法および装置とともに使用できる様々な方法を示していないことがある。さらに、本説明は開示する方法を記述するために「判定(決定)する(determine)」および「選択する(select)」のような用語を使用することがある。これらの用語は実施する実際の動作の高次の抽象表現である。これらの用語に対応する実際の動作は具体的な実施態様に応じて変わり、当業者には容易に認識できる。
開示する実施形態は、たとえば、スキャンベースまたは一部スキャンベースのテスティングを利用する多様な集積回路(たとえば、特定用途向け集積回路(ASIC)(混合信号ASICを含む)、システムオンチップ(SoC)、またはフィールド・プログラマブル・ゲートアレイ(FPGA)などのプログラマブル・ロジック・デバイス(PLD))に実装できる。このような集積回路は、携帯電子機器(携帯電話、メディアプレーヤー、および同様なものなど)からより大規模なアイテム(コンピュータ、制御システム、航空機、自動車、および同様なものなど)まで、多種多様な電子デバイスで使用できる。開示する技術の実施形態または同等物を組み込んだ集積回路を含むこのようなアイテムのすべてが本開示の範囲内にあると考えられる。
本明細書に記述する装置はいずれも、1つまたは複数のコンピュータ読取可能媒体上に記憶されるコンピュータ実行可能命令を含むソフトウェアを使用して設計、検証、および/またはシミュレーションをすることができる。このようなソフトウェアは、たとえば、設計ツール、検証ツールまたはシミュレーション・ツールなど、電子設計自動化(EDA)ソフトウェア・ツールを含むことができる。同様に、本明細書に記述する方法のいずれも、1つまたは複数のコンピュータ読取可能媒体に記憶されたコンピュータ実行可能命令を含むソフトウェアを使用し実施またはシミュレーションをすることができる(少なくとも部分的には)。また、開示する方法の中間結果または最終結果のいずれも1つまたは複数のコンピュータ読取可能媒体に記憶できる。たとえば、ソフトウェア・ツールを使用して、開示する装置のいずれかを制御するために使用する1つまたは複数の制御信号(たとえば、マスクビット)を判定および記憶することができる。このようなソフトウェアのいずれも単一のコンピュータ上またはネットワーク・コンピュータ上で(たとえば、インターネット、広域ネットワーク、ローカル・エリア・ネットワーク、クライアント・サーバー・ネットワーク、またはその他同様なネットワークを介して)実行できる。分かりやすくするために、ソフトウェアベースの実施態様のある選択された態様だけを記述する。当技術分野でよく知られている他の明細は省略する。同じ理由で、コンピュータ・ハードウェアはさらに細部まで記述しない。開示する技術はある特定のコンピュータ言語、プログラム、またはコンピュータに限定されるものではないことは理解されたい。たとえば、商業的に利用できる多様なコンピュータ言語、プログラムおよびコンピュータを使用できる。
また、開示する装置のいずれも回路設計情報として1つまたは複数のコンピュータ読取可能媒体に記憶できる。たとえば、開示する装置のいずれかの設計情報を含有するように設計情報(たとえば、ネットリスト、HDLファイル、またはGDSIIファイル)を含んでいる1つまたは複数のデータ構造を作成(または更新)および記憶することができる。このようなデータ構造をローカル・コンピュータまたはネットワーク上(たとえば、サーバー・コンピュータによって)で作成(または更新)および記憶できる。同様に、開示する装置のいずれかが発する圧縮テスト応答または開示する装置のいずれかを動作させるために使用する制御信号(たとえば、マスクビット)は、1つまたは複数のコンピュータ読取可能媒体に(たとえば、1つまたは複数のデータ構造の形で)記憶できる。このようなコンピュータ読取可能媒体は、開示する技術の範囲内にあると考えられる。
さらに、開示する方法のいずれもコンピュータ・シミュレーション、ATPG、またはその他EDA環境で使用でき、そこでテストパターン、テスト応答および圧縮テスト応答を1つまたは複数のコンピュータ読取可能媒体に記憶されている回路の表現で判定し、または回路の表現を使用しその他の形で分析する。しかし、提示のために、本開示は1回路またはその回路コンポーネントをその物理的な対応物(たとえば、スキャンセル、空間コンパクタ、レジスタ、選択ロジック、論理ゲート、およびその他同様な用語)によって言及することがある。しかし、本開示および請求項において物理的なコンポーネントの言及はいずれも、シミュレーション、ATPGまたはその他同様なEDA環境で使用されるような回路コンポーネントの表現を含有する。
開示する技術の概論および概要
テスト応答圧縮は、刺激圧縮とともに、テストデータ容量の増大に対処するうえで重要な役割を果たすことができる。様々な圧縮スキームの開発は様々なアプリケーション・ドメインのニーズを反映しているが、テスト応答コンパクタは、幅広い範囲の未知状態のプロファイルに対するあらゆるスキャンセルの可観測性を保つとともに、高い圧縮比を維持し、現実のシリコンにおいて発見される多様な故障を検出する能力を備え、および/または設計の簡便さを達成することが望ましい。また、コンパクタの動作を最小限度の追加情報で制御し、このデータが効果的なテストデータ容量圧縮にほとんどまたはまったくマイナスの影響をもたないようにできることが望ましい。
ある場合において、テスト応答圧縮を採用すると、未知状態(本明細書では「X状態」とも呼ぶ)がテストを無用のものにしてしまう可能性がある。多くのスキャンベースの設計では、X状態がスキャンセルでいったん捕獲されてしまうと、その後コンパクタに注入される。そのため、とくに時間コンパクタを使用している場合、(フィードバックのファンアウトにより)X状態はすぐに増殖し、読み出し動作までコンパクタに留まるので、これに伴うシグネチャに影響を与える可能性がある。未知状態の増殖は、フィードバックで単純な二項式を使用するモジュラー型の時間コンパクタなど一部のコンパクタ・アーキテクチャでは防止することができる。ある場合には、このような配列がX状態のマイナスの影響を有意に低減できる。組合せコンパクタはX状態を一掃できるが、スキャンチェーンからの入力をマスキングさせないで診断を可能にするには、このようなコンパクタは、典型的には、各スキャンチェーンの2つ以上の出力を観測しなければならない。有限メモリ・コンパクタは多数のスキャンシフトサイクルでX状態を一掃できる。しかし、テスト応答コンパクタを予め指定した量のX状態に耐えるように設計しても、幅広い範囲のX状態プロファイルに対処できるようにするには、典型的にはスキャンチェーン選択(マスキング)メカニズムが必要である。たとえば、引用により本明細書に組み込む上記特許文献1および上記特許文献2を参照のこと。あるいは、自動テストパターン生成(ATPG)で排除できない一定のX状態の組み合わせは、いくつかのスキャンセルの可観測性を妨げ、有意な故障カバレッジの低下を招く可能性がある。
例示的なテスト回路コンパクタ・アーキテクチャ
図1は、コンパクタ・アーキテクチャ(Xプレス・コンパクタ・アーキテクチャ)の例示的な実施形態100を示しており、n個のスキャンチェーン120を有する埋め込み決定論的テスト環境に第1テスト応答コンパクタ110と第2テスト応答コンパクタ152とを含む。圧縮テスト刺激は、1つまたは複数の入力チャネル(または入力パス)132、134からデコンプレッサ130を介してスキャンチェーン120に供給できる。いくつかの実施形態では、これらチャネルは入力チャネル136、138とともに使用し、マスクビット(マスキング命令)をコンポーネント160、162を介してセレクタ回路140に送ることもできる。ある実施形態では、コンポーネント160、162はパイプライン・レジスタであり、別の実施形態ではデマルチプレクサである。別の実施形態では、以下でより詳細に述べるように、圧縮テスト刺激とマスクビットとの間には必ずしもデータ依存性があるとは限らない。コンパクタ110はXORまたはXNORツリーを含むスペース・コンパクタ(または空間コンパクタ)になることができ、セレクタ回路140を介してスキャンチェーン120に連結できる。第1コンパクタ110の出力112はvビットのオーバードライブ・レジスタ150に連結できる。いくつかの実施形態では、オーバードライブ・レジスタ150は、逐次ロードするレジスタ、たとえば、シフトレジスタとして実施できる。オーバードライブ・レジスタ150は、直列で連結されている、フリップフロップまたはラッチなどの1つまたは複数の順序素子を含むことができる。オーバードライブ・レジスタ150は第1コンパクタ110から圧縮テスト応答を受信し、第2コンパクタ152に供給するように構成できる。第2コンパクタ152は、XORまたはXNORツリーを含むスペース・コンパクタ(または空間コンパクタ)となることができる。ある実施形態では、第1コンパクタ110および/または第2コンパクタ152はフィードバックなしのコンパクタを含む。別の実施形態では、第1コンパクタ110および/または第2コンパクタ152はパイプライン方式の空間コンパクタを含む。
図2は、図1の実施形態100などのテスト応答コンパクタ・アーキテクチャを使用してテスト応答を圧縮する方法200の一例示的な実施形態のブロック図を示している。工程210において、スキャンチェーン120からのテスト応答ビットをコンパクタ110で圧縮する。工程220において、圧縮したテスト応答ビットをvビットのオーバードライブ・レジスタ150にロードする。例示的な実施形態では、圧縮したテスト応答ビットをレジスタに順次ロードする。このローディングは、たとえば、2以上のクロックサイクルの期間にわたって行うことができる。工程230において、圧縮したテスト応答ビットをさらに第2コンパクタ152で圧縮する。例示的な実施形態では、オーバードライブ・レジスタのコンテンツは並列で(できれば、1クロックサイクルの期間にわたって)第2コンパクタ152にアンロードしvスキャンシフトサイクル毎に圧縮する。オーバードライブ・レジスタ150のアンローディングおよび第2コンパクタ152における圧縮は、vスキャンシフトからの最終シフトサイクルと同じクロックサイクル中に行うことができる。ある実施形態では、圧縮したテスト応答ビットを毎クロックサイクル中に第2コンパクタ152にアンロードおよび圧縮するが、記録はvスキャンシフトサイクル毎にしかしない。
図2に記述するようなものなど、2ステージの圧縮スキームを使用して潜在的に達成できるスキャンチェーン入力対コンパクタ出力の圧縮比は、スキャンチェーンの数nとコンパクタ出力の数wとの間の比によってほぼ決まる限界を超えることができる。いくつかの実施形態では、たとえば、圧縮比を約v倍だけ上げることができる(たとえば、比は約n×v:wになることができる)。
たとえば、図1のアーキテクチャによるテスト応答コンパクタ・アーキテクチャの一実施形態は、2つのテスタ入力チャネル(たとえば、チャネル132、134)と、1つのコンパクタ出力チャネル(w=1)と、100個の内部スキャンチェーン(n=100)と、オーバードライブ・レジスタ10ビット(v=10)とを含む。従来の技術では、スキャンチェーン対テスタ入力チャネルの比が最大圧縮レベル(たとえば、50倍)を決める。しかし開示する技術を使えば、テストデータの圧縮比は約100×10/1=1000倍である。
図1に戻ると、セレクタ回路140は、第1論理ゲート・グループ142と第2論理ゲート・グループ144とを含むことができる。このような論理ゲートの1つまたは複数のグループを、本明細書では「マスキング・ロジック」と呼ぶことがある。図示する実施形態では、これらゲートはANDゲートとして示しているが、別の実施形態では他の論理ゲート(複数の種類の論理ゲートを含む)を使用できる。セレクタ回路140はさらに、第1および第2の論理ゲート・グループ142、144のうち少なくとも一部に信号を与えるように構成されている選択ロジック回路146を含むことができる。いくつかの実施形態では、セレクタ回路140は(たとえば、入力パス136、138を介して)受信したマスクビットに応答して動作できる。別の実施形態では、マスクビットの少なくとも一部を、マスク・レジスタ148を介して選択ロジック146に供給する。選択ロジック回路146の設計および実施態様は以下でより詳細に説明する。
いくつかの実施形態では、セレクタ回路140は第1コンパクタ110および/または第2コンパクタ152への選択した1つまたは複数の入力をブロックまたは「マスク」できる。選択した入力は、たとえば、スキャンチェーン120および/またはオーバードライブ・レジスタ150から未知状態および/または不要な応答を搬送できる。論理ゲート・グループ142、144への入力は、未知状態および/または不要な応答がコンパクタ110、152に届かないように供給でき、かわりに既知の値(たとえば、「0」または「1」)に置換する。
いくつかの実施形態では、次に続く信号を論理ゲート・グループ142、144のうち1つまたは複数のゲートに供給できる。選択したスキャンチェーン出力または選択したオーバードライブ・レジスタ出力をブロックするために(たとえば、X状態を抑制するために)、1つまたは複数のゲートに「0」値を供給できる。「1」値を1つまたは複数のゲートに供給して、セレクタ回路140に値(たとえば、対象とする故障または非対象とする故障を示す値)をコンパクタに渡すようにさせることができる。コンテンツがクリティカルと見なされないスキャンチェーン出力またはオーバードライブ出力(たとえば、値が対象とする故障または非対象とする故障を示すスキャンセルに関連しないもの)については、その出力の論理ゲートに「0」または「1」いずれかの「ドントケア」値を割り当てることができる。これらの値は実施態様に応じて変えることができる。
本出願および請求項において、「第1コンパクタ・ステージ」は一般に第1コンパクタ110および論理ゲート・グループ142を指し、「第2コンパクタ・ステージ」は一般に第2コンパクタ152、論理ゲート・グループ144およびオーバードライブ・レジスタ150を指す。
図3は、セレクタ回路140を使用してスキャンチェーン120に発生する可能性があるX状態にどのように対処できるかに関しての一例を示す模式的なブロック図である。図3の図において、オーバードライブ・レジスタ150は4ビットのシフトレジスタである。したがって、図3の左半分は、スキャンチェーン120のデータサイクルを4サイクルのブロックにまとめて示しており、大文字「A」、「B」および「C」で表示している。各ブロックの個々のサイクルはそれぞれ小文字「a」、「b」、「c」および「d」の符号を付している。図3の右半分は、ブロックAの圧縮テスト応答ビット302が、オーバードライブ・レジスタ150にロードするところを示している(図3の左半分および右半分は同時に起こらないイベントを示しているが、参照しやすくするために1つの図に示している)。図3の右半分のブロックAは、複数のスキャンチェーンからの未圧縮テスト応答ビットを圧縮した結果であるビットを含む。たとえば、圧縮テスト応答ビット308は未圧縮テスト応答ビット1をAブロックのdサイクルからのnまでXOR演算した値である。ブロックBおよびCの圧縮テスト応答ビット304、306は、それぞれ、オーバードライブ・レジスタ150に連続してロードできる。
図3の左側に示すように、スキャンチェーン・サイクル310(すなわち、ブロックBのサイクルb)はスキャンチェーン2のセル312にX状態を含んでいる。このX状態は同じスキャンアウト・サイクル(すなわち、他のスキャンチェーンのブロックBのサイクルb)に捕獲されているエラーを隠す可能性がある。その結果、このX状態はブロックBのテスト結果全部を無効にする可能性がある(たとえば、ブロックBをコンパクタ152で圧縮した後)。このため、図示する実施形態および何らかのマスキングが存在しない場合、ブロックBを含むセルの圧縮したコンテンツを、ブロックのサイクルa、b、cおよびdのデータを第2コンパクタ152で同時に処理するようにオーバードライブ・レジスタ150にロードする。いくつかの実施形態では、X状態は、X状態が第1コンパクタ110に渡されないように論理ゲート142のうちの1つによってマスクできる。いくつかの実施形態では、マスク信号をパターン毎に論理ゲートに供給するが、他の実施形態では、マスキング信号を他の間隔(たとえば、複数のパターン毎、サイクル毎、または複数のサイクル毎)で与える。したがって、論理ゲート142を使用してスキャンチェーン120内の1つのセルをマスクすると、スキャンチェーン全体の値をマスクすることになり、対象とする故障(エラー値)を示すテスト応答ビットがマスクされたスキャンチェーンから観測されないようにすることができる。代わりのアプローチは、サイクル310を第1コンパクタ110で圧縮させることである。次に、第2ステージ論理ゲート144を使って、未知状態を含んでいる圧縮したbサイクルをマスクできる。マスク信号をパターン毎に第2ステージ論理ゲート144に供給する場合、このステージでのマスキングはスキャンチェーン内のv番目のセル毎に発生するエラーだけでなく、それらのセルで捕獲される未知状態も潜在的に排除できる。
テスト回路コンパクタ・アーキテクチャのさらに別の実施形態を図4ないし図7に示す。図4はテスト応答コンパクタ・アーキテクチャ400の一実施形態を示しており、スキャンチェーン410はグループ412および414に区画化されている。各スキャンチェーン・グループからのデータを個別のコンパクタ420、422で圧縮してから、それぞれ個別のオーバードライブ・レジスタ430、432に送り込む。オーバードライブ・レジスタ430、432の値を別のコンパクタ440で圧縮できる。前述と同様に、コンパクタ420、422、440への入力を1つまたは複数のセレクタ回路450を使ってマスクできる。図4の実施形態では、一方のオーバードライブ・レジスタのビットはマスクしないままで、他方のオーバードライブ・レジスタのビットをマスクできる。このように、スキャンチェーン・グループ412、414の一方のX状態が、他方のスキャンチェーン・グループから得られる結果に与える影響を低減できる。図4では第1ステージ・コンパクタおよびオーバードライブ・レジスタを2つしか示していないが、図示するアーキテクチャで複数の追加のコンパクタおよびレジスタを使用できることは理解されたい。
図5は、複数の出力を供給するように構成したテスト応答コンパクタ・アーキテクチャ500の別の実施形態を示している。図4のテスト回路コンパクタ・アーキテクチャと同様に、アーキテクチャ500はグループ512、514に区画化したスキャンチェーン510を含み、前記グループがコンパクタ520、522で圧縮されるテスト応答データを供給する。これらコンパクタ520、522はデータをそれぞれオーバードライブ・レジスタ530、532に送り込む。アーキテクチャ500では、オーバードライブ・レジスタ530、532は圧縮した応答を、同じコンパクタではなくそれぞれ個別のコンパクタ540、542に送り込む。このことにより、コンパクタ520、540、542への1つまたは複数の入力をマスクするかどうかに関係なく、第1スキャンチェーン・グループを第2スキャンチェーン・グループのX状態の影響から分離できる。マスキングを使用できる実施形態では、アーキテクチャはさらに1つまたは複数のセレクタ回路550を含むことができる。図5には第1ステージ・コンパクタ、オーバードライブ・レジスタ、および第2ステージ・コンパクタを2つしか示していないが、図示するアーキテクチャで複数の追加のコンパクタおよびレジスタを使用できることは理解されたい。
図6は、複数の出力を供給するように構成したテスト応答コンパクタ・アーキテクチャ600のさらに別の実施形態を図示している。この実施形態では、コンパクタ610、612が複数の各スキャンチェーン・グループ(図示せず)からの出力を圧縮して、圧縮した出力をそれぞれオーバードライブ・レジスタ620、622に供給する。オーバードライブ・レジスタ620、622は2つのコンパクタ630、632に入力を供給する。この実施形態では、オーバードライブ・レジスタからの非連続ビットをコンパクタ630、632に供給して、バースト・エラーの影響を低減できる。たとえば、オーバードライブ・レジスタ620からの出力640は、コンパクタ630の入力ではなく、コンパクタ632の入力642に経路指定できる。他のルーティング構成も使用できる。テスト回路コンパクタ・アーキテクチャはさらに1つまたは複数のセレクタ回路650を含むことができる。図6では第1ステージ・コンパクタ、オーバードライブ・レジスタおよび第2ステージ・コンパクタを2つしか示していないが、図示するアーキテクチャで複数の追加のコンパクタおよびレジスタを使用できることは理解されたい。
テスト応答コンパクタ・アーキテクチャ700のさらに別の実施形態を図7に示している。図示する実施形態は、単一の出力を供給しながら、バースト・エラーの影響を低減するように構成されている。コンパクタ710から圧縮された出力を第1オーバードライブ・レジスタ720およびマルチプレクサ(MUX)730に供給する。オーバードライブ・レジスタ720はMUX730にも送り込み、MUX730をさらに第2オーバードライブ・レジスタ722に連結する。オーバードライブ・レジスタ720、722はクロック信号732によって刻時されて、クロック信号(クロックディバイダ733により生成される)の分割されたものをMUX730に供給する。この配列にすると、オーバードライブ・レジスタ722はコンパクタ740に非連続の出力グループを供給できる。アーキテクチャ700はさらに1つまたは複数のセレクタ回路750を含むことができる。図7には1つの第1ステージ・コンパクタ、2つのオーバードライブ・レジスタ、および1つの第2ステージ・コンパクタしか示していないが、図示するアーキテクチャで複数の追加のコンパクタおよびレジスタを使用できることは理解されたい。
図8は、テスト応答コンパクタ・アーキテクチャ800の別の実施形態のブロック図を示している。この実施形態では、1つまたは複数のオーバードライブ・レジスタ802、804をコンパクタ・アーキテクチャ800の第1ステージに配置する。より具体的には、オーバードライブ・レジスタ802、804は1つまたは複数のスキャンチェーンからの入力を受信する。たとえば、オーバードライブ・レジスタ802はスキャンチェーン812からの入力を受信する。図8はオーバードライブ・レジスタを2つしか示していないが、この実施形態で、1つのオーバードライブ・レジスタをスキャンチェーン810の各々に連結することは理解されたい。他の実施形態では、他の数のレジスタをスキャンチェーンに連結する。オーバードライブ・レジスタ802、804はそのそれぞれのスキャンチェーンからの入力をコンパクタの第1ステージにロードするように構成されている。たとえば、オーバードライブ・レジスタ802、804はスキャンチェーン812、814から受信した値をそれぞれ第1ステージ・コンパクタ822、824にロードする。一般に、値はオーバードライブ・レジスタ802、804から第1ステージ・コンパクタ822、824に並列でロードされる。第1ステージ・コンパクタ822、824からの出力をその後第2ステージ・コンパクタ830で圧縮できる。コンパクタ・アーキテクチャ800はさらに、コンパクタ822、824、830への1つまたは複数の入力をマスクするセレクタ回路840を含むことができる。セレクタ回路840は前述した他のコンパクタ・アーキテクチャのセレクタ回路と同様にすることができる。図8には第1ステージ・コンパクタおよびオーバードライブ・レジスタを2つしか示していないが、図示するアーキテクチャで複数の追加のコンパクタおよびレジスタを使用できることは理解されたい。
図9は、テスト応答コンパクタ・アーキテクチャ900の別の実施形態のブロック図を示している。この実施形態では、オーバードライブ・レジスタから第1ステージ・コンパクタ902に入力を供給する代わりに、入力をvクロックサイクル毎にスキャンチェーン内のv個のスキャンセル(通常、チェーンの最後のv個のセル)から直接並列でロードできる。たとえば、図9では、スキャンチェーン912はチェーン912の末尾のv個のスキャンセル922からコンパクタ902に入力を供給する(図9では、分かりやすくするために、個々のセルは図示していない)。
図31は、第1ステージのコンパクタ3110と第2ステージのコンパクタ3120とを含むテスト応答コンパクタ・アーキテクチャ3100の別の実施形態のブロック図を示している。コンパクタ3110はそれぞれオーバードライブ・レジスタ3130、3132に連結されている複数の出力3112、3114を含む。コンパクタ3120は複数の出力3122、3124、3126を含む。一般に、本明細書に記述するテスト・コンパクタ・アーキテクチャは複数の出力を有する1つまたは複数のコンパクタを含む実施形態に適応できる。
図32は、1つまたは複数のスキャンチェーン出力および/またはオーバードライブ・レジスタ出力の各々が複数のコンパクタ入力を駆動できる(たとえば、出力がファンアウトを有することができる)テスト応答コンパクタ・アーキテクチャ3200の別の実施形態のブロック図を示している。たとえば、図示する実施形態では、スキャンチェーン3202はスキャンチェーン出力3204を有し、これがマスキング・ゲート3214、3216を介してそれぞれコンパクタ入力3210、3212に連結されている。このためスキャンチェーン出力3204は2つのコンパクタ3220、3222を駆動できる。オーバードライブ・レジスタ出力3230は同様に2つの第2ステージ・コンパクタ3240、3242それぞれの入力3232、3234を駆動する。
図33は、テスト応答コンパクタ・アーキテクチャ3300のさらに別の実施形態のブロック図である。この実施形態は図9のアーキテクチャ900に似ており、コンパクタ3310への入力をスキャンチェーン内のv個のセルから並列でロードできる。たとえば、スキャンチェーン3320はスキャンチェーン3320のスキャンセル3330からコンパクタ3310に入力を供給する。図示する実施形態では、コンパクタ3310は複数の出力を含み、アーキテクチャ3300は1つのステージのコンパクタ・アーキテクチャである。別の実施形態では、図8のアーキテクチャ800と同様に、コンパクタの入力を、スキャンチェーン自体から直接ではなく、1つまたは複数のオーバードライブ・レジスタからロードできる。
マスキング信号選択方法
セレクタ回路のマスキング信号の選択(たとえば、図1のセレクタ回路140では、選択ロジック146によって論理ゲート・グループ142、144に供給されるマスク信号)は、テスト品質に有意な影響を持つ可能性がある。マスキング信号は様々な方法を使用して選択できる。いくつかの実施形態では、回路設計に適用される所与のテストパターンに関し、スキャンチェーンを1つまたは複数の因子(たとえば、チェーンをマスクするまたはマスクしないことから得ることができる、考えられる故障を検出する際の潜在的なカバレッジのゲインまたはロス)にしたがってランク付けする。本議論の目的上、一次故障伝播サイトとして単一のスキャンセルを選ぶ。このアプローチにより故障を均一に扱うことができる。そうではなく、少数の伝播サイトをもつ故障は、故障の最有力位置が多数の観測点をもつため検出が難しいであろう。
図10は、セレクタ回路140などのセレクタ回路とともに使用するためのマスキング信号を判定する一般的な方法1000のある実施形態のブロック図を示している。開示する実施形態は、たとえば、テストセットの各テストパターンをテスト中に適用して実施でき、(たとえば、テストパターンのシミュレーションを被テスト回路に適用して得られる)シミュレーション結果を使用して、割り当てるそれぞれの重みを判定できる。方法1000は様々なコンパクタ・アーキテクチャ(たとえば、XOR、Xコンパクト、Iコンパクトおよびその他)でも使用できる。工程1010において、1つまたは複数のスキャンチェーンの複数の個々のスキャンセルに重みを割り当てる。たとえば、所与のセルを観測すると仮定すると、セルの重みはエラーカバレッジ全体に対するそのセルの寄与分を示すことができる。いくつかの実施形態では、重みは次のように割り当てることができる。未知状態を捕獲するスキャンセルに重み「0」を割り当てることができ、ドントケア状態を捕獲するスキャンセルには値「1」を割り当てることができ、故障によって影響を受けそうなスキャンセル(本明細書では「一次(プライマリ)」セルと呼ぶ)には重み「C」を割り当てることができる。ドントケア状態を捕獲するセルに重み1を割り当てることによって、これらのセルを、マスキング決定を導く分析に含有できる。故障は1つ以上のスキャンセルに伝播することが多いため、このようなセルを観測させるのは有益となる可能性がある(たとえば、一次セルをマスクする場合)。しかし、スキャンセル間の優先度を保持するために、一次セルに関連する重みCは、ドントケア値を持つ多くまたはすべてのセルを観測させる総合的な効果が1つまたは複数の一次セルの可視性を有意に減少させないように十分大きくすることが望ましい。
図11は、各々が24個のスキャンセルからなる5個のスキャンチェーン1102、1104、1106、1108、1110の表現1100の一実施形態を示している。スキャンセルには工程1010にしたがって重み0、1または30(本実施形態におけるCの値)を割り当てている。たとえば、スキャンセル1120には重み1を割り当て、ドントケア値を捕獲したことを示しており、一方スキャンセル1122には重み30を割り当て、故障の存在を示す値を捕獲したことを示す。
図10に戻って、工程1020において、1つまたは複数のスキャンチェーン内の複数のスキャンセルの重みを総計する。次の圧縮ステージでスキャンセルをどのように圧縮するかに応じて、重みを総計することが望ましい。たとえば、ある例示的な実施形態では、スキャンチェーン表現1100は本明細書において「複合チェーン」と呼ばれる表現にマッピングする。1つの複合セル内のチェーンから数個のスキャンセルを表すことによって、スキャンチェーンに割り当てた重みから複合チェーンを作成できる。いくつかの実施形態では、チェーン内のv個の連続したスキャンセルは1つの複合セルで表すことができる。複合セルを表す1つまたは複数の元のスキャンセルの値に少なくとも部分的に基づいて、重みを複合セルに割り当てることができる。いくつかの実施形態では、複合セルの重みは元のセルの重みの合計である。くわえて、複合セルの一部として含まれる元のセルの1つの重みが「0」である場合(たとえば、元のセルの1つがX状態を捕獲する場合)、複合セルに重み「0」を割り当てることができる。特定の実施形態では、このことから、オーバードライブ・レジスタによって供給されるデータの圧縮により考えられる結果をある程度予測できる。上記説明したように、第1圧縮ステージ前に抑制されないX状態は、Xマスキングまたは2番目のステージのゲーティングのいずれかのために、多数のエラーデータを無用に(使えなく)する可能性がある。いくつかの実施形態では、圧縮プロセスの早期に一定のX状態をブロックすると、有意なカバレッジの低下を防ぐのに役立てることができる。
図11は、複合チェーン1132、1134、1136、1138、1140のそれぞれにマッピングしたスキャンチェーン1102、1104、1106、1108、1110の例示的な実施形態を示している。参照しやすくするために、図11では、スキャンチェーン1102、1104、1106、1108、1110は4つのセル・グループT、U、W、X、YおよびZに分けて示している。複合チェーンの列(本明細書では「タイムフレーム」と呼ぶこともある)は、複合セルが示すのがどの4つのセル・グループを表すかを示すように符号を付ける。たとえば、複合チェーン1136のT列の複合セルの重みは33であるが、これはスキャンチェーン1106のグループTのスキャンセルの総和である。複合チェーン1132の列Tの複合セルの値は0であるが、これはスキャンチェーン1106のグループTの1つのセルの重みが0だからである。
ある実施形態では、マスクの選択は、複合スキャンチェーンの重みの代わりに、元のスキャンチェーンの重みに基づくことができる。これは、たとえば、複合チェーン内に重みが少なくともCに等しいセルがないまたは少ししかない場合に使用できる。
方法1000の工程1030において、たとえば、1つまたは複数の複合スキャンチェーンの総計重みに基づいて係数(本明細書では「スコア」と呼ぶこともある)を判定できる。いくつかの実施形態では、複合スキャンチェーンについて係数SおよびMを計算する。上記例示的な実施形態では、Sはスキャンチェーンiが選択される場合に残る推定エラー数に比例し、係数Mはスキャンチェーンiがマスクされる場合に残る推定エラー数に比例する。
X(i)を複合スキャンチェーンiに内包される(複合スキャンチェーンがホストとなる)重み0のセルの集合と仮定する。また、すべての複合スキャンチェーンのあるc番目のセルについて、EおよびXは、それぞれこれらセルの重みの合計と、重み0のセルの数を表すと仮定する。すると、係数Sは例示的な式1によって求めることができる。
上記式において、wi,cは複合スキャンチェーンiのセルcの重みである。式1のSは、所与の複合スキャンチェーンで発生する全セルの重みの総和に等しく、対応するタイムフレームで発生するX状態がマスクされる確率によって増減する(1つのスキャンチェーンは0.5の確率でマスクされると仮定する)。式1において、Sは所与のスキャンチェーンに内包されるX状態のものと同じタイムフレームに関連する重みEに影響を受ける。Eは二重数(ダブルカウント)を避けるために対応するX状態の数によって増減する。以上のように、2番目の成分は、スキャンチェーン自体がマスクされない場合、Xマスクできるエラーを考慮できる。
例として、図11に示している複合スキャンチェーンについて、i=1(すわなち、複合スキャンチェーン1134)の場合の上記数値を判定できる。この例では、C=30かつX(1)={0,3}(すなわち、複合スキャンチェーン1のセル0およびセル3の重みが0)である。また、E=37、E=70、X=3、X=2である。このため、Sは以下のように計算する。
=62×0.5+33×0.5+4×0.5+4×0.25−37/3−70/2=3.2(2)
いくつかの実施形態では、数値Mは以下のように判定できる。
この例示的な式では、最初の項は、同じシフトサイクルから他の未知状態によってマスクされないと仮定すると、所与のスキャンチェーンに内包されるX状態(現在マスクされている)のものと同じタイムフレームに対応する重みEの総和に等しい。2番目の項は、他のスキャンチェーンからのXを調整したうえで、マスクされるチェーン自体を含めて、マスクされるスキャンチェーンで発生するセルの重みの分だけ最初の項を減少させる。様々な実施形態において、SまたはMのいずれもマイナスになることができ、したがって、このことは所与のスキャンチェーンを選択またはゲーティングする場合、考えられるカバレッジの低下を示す。
図10に戻って、工程1040において、少なくとも部分的に係数(たとえば、チェーンのSおよび/またはMの値)に基づいて、所与のチェーンをマスクするかどうかの決定を行うことができる。
図12は、あるテストパターン、検出された1つまたは複数の故障、およびそれに対応する故障スキャンセルおよび未知状態の位置が与えられたとして、マスクするスキャンチェーンを選択する方法1200の一実施形態を示している。方法1200は上記紹介した一般的な方法1000と統合できる。
工程1210において、1つまたは複数のスキャンチェーンの係数(たとえば、Sおよび/またはM)を判定する。工程1220において、2以上のスキャンチェーンの係数を比較する。工程1230において、少なくとも部分的に係数に基づいて、選択またはマスクする1つまたは複数のチェーンを選ぶことができる。たとえば、いくつかの実施形態では、Sの値が大きいまたは値が最大のスキャンチェーンにマスクビット値1を割り当てることができ、これはそのチェーンからの値はコンパクタに渡されることを示すものである。Mの値が大きいまたは値が最大のスキャンチェーンにはマスクビット値0を割り当てることができ、これはそのスキャンチェーンからの値はマスクされることを示すものである。
工程1240において、スキャンチェーンのコンテンツの表現を、工程1230の決定(これは仮決定にできる)に基づいて更新できる。たとえば、表現(表現1100など)において、マスキング値0を割り当てられているスキャンチェーンからエラーおよび/またはX状態を削除できる。矢印1242で示すように、マスクビット値を1つまたは複数の他のスキャンチェーンに反復的に割り当てることができるように、前述の工程のうちの1つまたは複数を繰り返すことができる。
工程1250において、マスクビットの割り当てを符号化する。たとえば、ある実施形態では、この手順は、被テスト回路のスキャンチェーンにマスキング信号を割り当て、所望のマスキングを達成するのに選択回路に入力する必要のあるマスクビットを判定することを伴う。特定の実施形態では、SまたはMの値にしたがってマスキング信号を割り当て、上記工程でスキャンチェーンを考慮した順序で順次考慮する。ある実施形態では、この確認手順は、所望のマスキング信号を選択回路で生成するかどうか、およびどのように生成するかを判定する線形方程式を解くことを伴う。図示する実施形態では、プロセスは、最初の符号化エラーが発生する(たとえば、マスキング信号を仮に割り当てることのできない最初のスキャンチェーンが考えられる)まで進める。さらに、ある特定の実施形態では、係数SおよびMによって判定される順序に関係なく、符号化プロセスはマスク信号が1のスキャンチェーンから始める。この変型例は、手順のまさに最初に、マスクするスキャンチェーンの大きいグループのマスキング信号を符号化することによって、すべてのマスクビットを0に設定しないように実施できる。このようなアプローチはすべてのスキャンチェーンを観測できなくする可能性があるだろう。
工程1260において、符号化の対象ではなかった符号化されていない残りのマスキング信号を、できれば、セレクタ・アーキテクチャを考慮して評価および符号化する。
さらに別の実施形態では、前述の選択方法を圧縮の2番目のステージにも同様に適用できる。前記実施形態では、マスキング信号は、図3の圧縮サイクル302、304、306などの圧縮サイクルの値に関して判定できる。圧縮サイクルの値に重みを割り当てることができる。重みは、たとえば、圧縮値を生成した(マスクされていないチェーンの)スキャンセルのうちどれくらいが故障伝播サイトであるかを示すエラー数に関係付けることができる。いくつかの実施形態では、あるスキャンセルがXを捕獲し、セルのスキャンチェーンがマスクされていない場合、ある重み(たとえば、0)をセルから生成された圧縮値に割り当てることができる。
例示的な実験の圧縮結果
図1に示しているテスト回路コンパクタ・アーキテクチャの例示的な実施形態を、いくつかの工業設計でテストした。報告された実験では、マスク・レジスタをパターン毎に1度ロードした。このようなアプローチは、テスト・データの総量に対し比較的少量のデータを与えた結果、全体の圧縮比を損なうことはなかった。一般に、X状態の存在および選択ロジックの使用により、元のテストパターンを適用した場合いくつかのテスト回避を生じさせる可能性がある。そのため、完全な故障カバレッジを回復するために付加パターンを使用した。それに応じたパターン数および有効な圧縮の増加を、圧縮スキームの性能を評価する基本的な性能指数として使用できる。
図13に、選択的コンパクタ(たとえば、図1のコンパクタ・アーキテクチャ100)とともにテストパターンを使用する方法1300のブロック図を示している。以下に述べる実験結果を得るために方法1300を使用した。元の故障リストから始めて、工程1310でテストパターンを生成し、工程1320において、テスト回路アーキテクチャの1つまたは複数のスキャンチェーンの故障伝播サイトおよびX状態の位置を判定した。たとえば、被テスト回路へのテストパターンの適用およびテストパターンに対する被テスト回路の応答(テスト応答)をシミュレーションできる。工程1330において、(前述の方法1200を使って)スキャンチェーンをマスクまたは選択する値および/またはオーバードライブ・レジスタの値を求めた。工程1340において、判定したマスキング値を考慮して故障カバレッジを調べた。工程1350において、検出した故障を元の故障リストから削除した。工程1360で、所与のレベルの故障カバレッジに達するのに用いたテストパターンの数を記録し、工程1370で、コンパクタを制御するマスクビットも記憶した。矢印1372で示すように、元の故障リストの故障が検出されるまで方法1300を繰り返した。
実験結果を表1(図14に掲載)および表2(図15に掲載)にまとめている。各回路について、次の情報を記載している。名前、スキャンアーキテクチャ、および故障の総数、エラー・ビットの総数(誤りのある信号を捕獲するスキャンセルの数)、圧縮しない場合の故障カバレッジ(「FC」)に寄与するテストパターンの数、展開するテストパターンの順序(シーケンシャル)深度、捕獲されるX状態の総数対スキャンセルの数の比に、テストパターンの数を乗じて計算したXフィルレート、マスク・レジスタのサイズm、オーバードライブ・レジスタのサイズv、パターンの総数および絶対値で表される対応するパターン数の増加(「IPC」と標記される列)ならびに元のテスト数の割合として表される対応するパターン数の増加(「%」と標記される列)、および有効圧縮比C。表1および表2において、C=AsL/T(L/v+c)であり、この式でAは元のパターン数、Tはテストパターンの総数、sはスキャンチェーンの数、Lは最長のスキャンチェーンのサイズ、およびc=m+vはXプレス・コンパクタ制御データの量(たとえば、マスクビットの数)である。
実験は、所与のスキャンチェーン構成で必要な最小のものから始まる4つのmの値、8つのオーバードライブ因子vの値、および単一出力コンパクタを使って行った。表1および表2で報告する回路は、約0.001%(C6)から約2.6%(C7)までの幅広い範囲のXフィルレートを示す。その結果生じたパターン数の増加は、Xフィルレートが低い回路(たとえば、C6)の1%未満から、設計がXの高い割合を示す場合の111%までと著しいばらつきがある。また、その発生頻度と同じく未知状態が捕獲されるサイトがこのばらつきの要因であるようだ。たとえば、すべてのテストパターンにわたって均一に、X状態が設計C2、C7およびC8のスキャンチェーンの大部分に存在することが観測されている。他方で、設計C5では、X状態がひどく集中しているスキャンチェーンはわずか少ししかない。この場合、スキャンの大部分はXフィルレートが低かったか、または未知状態をまったく示さなかったのである。そのため、Xがスキャンセルの小部分(1.41%)に限られる設計C5は、完全なカバレッジを回復するのに3%〜16%だけ多くのパターンが必要であった。設計C2およびC8は3倍少ないXを示すが、対応するパターン数の増加は40%〜80%であった。
設計C7は、多くの未知状態(報告されている回路のうちで割合が一番高いもの)が扱いにくいクラスタを形成した「最悪の場合」のシナリオを示している。この場合、依然としてパターン数の増加は111%以下である。X状態の影響は、数値s・v(Xが存在せず、制御データがない理想的な圧縮)に対して、達成されたもっとも高い(強調される)圧縮比Cを比較するともっとはっきりさせることができる。表3は100C/svのような圧縮効率を報告している(最初の列)。以上のように、圧縮効率はオーバードライブ因子(および圧縮)の値が増加するにしたがって低下し、高い圧縮比に関するかぎり、制御データが考慮成分となることを示している。
表3 実験結果を得るために用いた回路の圧縮効率
実験結果から別のトレードオフの関係も分かる。少なくとも一部の場合において、特にXフィルレートが高い場合(C7、C8)、小さいオーバードライブ因子で最大の圧縮を得るには、比較的大きなマスク・レジスタが必要である。しかし、圧縮はvの値が大きくなるにしたがって増加するため、制御データの量が考慮要因となる。このように、高い圧縮度を達成するのに、そうでない場合ほどパターン数が低くなくても、より小型のレジスタを使用できる。
セレクタ回路およびセレクタ回路合成の例示的な実施形態
本セクションでは、スキャンチェーン選択ロジックおよび上記スキャンチェーン選択ロジックを作成する方法のさらに別の例示的な実施形態を説明する。開示する装置および方法は、前述のマルチステージ・コンパクタの実施形態の一方のステージまたは両方のステージで使用できる。説明する方法および装置は単一ステージのコンパクタ(たとえば、単一XORまたはXNORツリー)または他のスペース・コンパクタに接続して使用することもできる。たとえば、以下の議論は一般に単一ステージのコンパクタに接続する例示的な装置および方法を説明するが、開示する原理はマルチステージ・アーキテクチャに容易に適用可能である。
開示する技術のいくつかの実施形態は、テスト応答コンパクタ用のフレキシブルX状態制御ロジックとして作用することができる。開示する技術の実施形態は、X状態の割合が大きいテスト応答であっても、スキャンエラーの良好な可観測性を提供できる。開示する選択ロジックの実施形態は、シリコン面積およびそれを制御するのに必要な情報量の点で効率的なものにもできる。開示する回路の実施形態は診断のためにスキャンチェーンを選択的にゲートするのにも採用できる。
前述したように、図1は、選択ロジック146とマスク・レジスタ148とを含むセレクタ回路140の例示的な実施形態を示している。選択ロジック146は、第1および第2の論理ゲート・グループ142、144のうち少なくとも一部に入力を供給するように構成した線形論理回路にできる。いくつかの実施形態では、論理ゲートのうちの1つまたは複数がANDゲートであり、別の実施形態では1つまたは複数の他の種類の論理ゲートも使用できる(たとえば、OR、NOR、NANDおよび他の種類)。論理ゲートに供給する入力は以下のようにすることができる。スキャンチェーンまたはオーバードライブ・レジスタの圧縮出力からの値をブロックするために「0」を供給できる(たとえば、未知状態を抑制するため、または故障診断およびシリコンのデバッギングなどの他の理由のためにスキャンチェーンを使用不可にするため)。スキャンチェーンからの未圧縮テスト応答ビットまたはオーバードライブ・レジスタからの圧縮テスト応答ビットを渡すために「1」を供給できる(たとえば、スキャンチェーンのスキャンセルで捕獲されるエラーを含んでいるテスト応答ビットを搬送してもよいので、値をコンパクタに渡すため)。スキャンチェーンまたはオーバードライブ・レジスタの位置がクリティカルとみなされないコンテンツを有していることを示すために、「ドントケア」値を供給できる(たとえば、論理ゲートはゲート信号として1または0のいずれかを受信できる)。
いくつかの実施形態では、セレクタ回路内のそれぞれまたは実質的に各論理ゲート(たとえば、コンパクタの1つまたは2つのステージ)のマスクビットまたはマスキング命令ビットをセレクタ回路に供給する。これはテスト応答ビットをマスクすることに対しトータル制御またはほぼトータル制御を提供できる。しかし、いくつかの実施形態では、特に比較的多数の論理ゲートがあるものの場合、このアプローチが実用的でないことがあり、テスト回路アーキテクチャの負荷を著しく増大させる可能性がある。くわえて、制御データの量がアーキテクチャの圧縮比を著しく低下させる可能性がある。
特定の実施形態では、選択ロジック146は、マスクビット・セットにしたがって論理ゲートの1つまたは複数にマスキング信号を供給するように構成した組合せ回路を含む。組合せ回路は、少なくとも部分的に特定のマスクビット(いくつかの実施形態ではマスク・レジスタ148に記憶されており、1つまたは複数のステージを含むことができる)を選択ロジック146の出力にどのように接続するかを示すセレクタ多項式で定義できる。ある望ましい実施形態では、選択ロジック146はm入力、n出力線形マッピング回路として設計でき、mはマスクビットの数、nはスキャンチェーンの数(またはオーバードライブ・レジスタ150のセルの数)であり、m<<nである。それから入力の所与の数FをXOR演算することによって、出力を得ることができる。m=6、n=12、およびF=3の場合のこのような回路1600の一実施形態を図16に示している。入力1610は図の左側に現れ、一方出力1620は図の底部に沿って現れている。別の実施形態では、回路1400は2つの部分、たとえば、それぞれm入力、n出力の線形マッピング回路およびr入力、v出力の線形マッピング回路を含むことができ、m+rはマスクビットの総数、nはここでもスキャンチェーンの数、vはオーバードライブ・レジスタのサイズである。
いくつかの実施形態では、vはスキャンチェーンの数nに比べて小さい。これにより、少数のマスクビットを使用して2番目のステージを制御でき、それによって選択ロジックのその部分をマスキング信号だけを記憶するvビットレジスタに縮小する。このような場合、通常個別の符号化ロジックを実装する必要はない。
回路1600などの回路を合成する例示的な方法の実施形態を以下に説明する。開示する実施形態の一部では、選択ロジックの合成は高い符号化効率を達成することを主な目的にでき、符号化効率はマスクビットの数mに対しうまく符号化された予め指定されているゲート信号の比率として定義される。この目的は、1つのゲート信号の符号化に失敗すると、スキャンチェーン全体が観測できなくなることによって著しいカバレッジの低下を招くおそれがあるため重要である。(しかし、いくつかの実施形態では、システムがテスト結果をマスクすることに対し完全な制御を提供しない場合でさえも、なお十分な結果を得ることができる。)これはテストパターン圧縮とは対照的であり、指定ビットが1つ欠落しても典型的にはテストの質は大幅に劣化しない。符号化効率はセレクタ多項式間の一次従属の確率に直接関係するため、望ましいセレクタを設計する作業は、第1多項式セットの一部およびいくつかの考えられる「候補」多項式が1つまたは複数の一次従属セットを形成する確率を示すデータによって導くことができる。この情報を使って、また、一例示的な実施形態によると、合成は以下に述べる選択手順によってn回行える。
図17は、選択回路用の制御ロジックを生成する方法1700の一実施形態を示している。工程1710において、第1候補多項式を生成する。いくつかの実施形態では、第1多項式は無作為に生成するが、別の実施形態では代替方法を使用できる。
工程1720において、生成された多項式を評価して、解セットの多項式に対し従属閾値を満たすかどうかを判定する。いくつかの実施形態では、解セットは当初無作為で生成できるが、別の実施形態では辞書式順序で生成できる。たとえば、候補が所定または一定数以下のマスクビットを解セットの一部または全部の多項式と共有することを検証するために、候補を調べることができる。候補多項式が所定数(たとえば、予め決めた数、これはユーザ選択可能にできる)より多くを共有する場合、候補多項式は捨てて、新たな多項式を生成する。これは、解セットの多項式間の一次従属を減らすのに役立てることができる。
工程1730において、解セットから承認済み多項式を用いて候補多項式をm要素のセットにまとめる(このセットは「テストセット」とも呼ぶ)。この工程の解セットの多項式は、解セットから無作為に選ぶことができる。このm要素のセットのランクを判定できる(たとえば、ガウスの消去法を使用してm要素セットの(縮小列エシュロンフォーム(既約階段行列)を求める)。様々な解セットの多項式を使って複数の様々なm要素セットにまとめた候補多項式についてこれを繰り返すことができる。特定の実施形態では、候補多項式について平均ランクを計算できる。
工程1735において、複数の追加の候補多項式について上記工程を繰り返し、候補多項式(たとえば、各平均ランク)のセットを作る。セット内の候補多項式の数は任意の数にできる。
工程1740において、解セットに入れるために、候補多項式セットから1つまたは複数の多項式を選択する。いくつかの実施形態では、平均ランクが高いまたは最も高い候補多項式を選択する。いくつかの実施形態では、1つの多項式ではなく、複数の多項式に一度に工程1710、1720および1730を行うことができる。
工程1750において、解セットの明細を1つまたは複数のコンピュータ読取可能媒体に記憶する、または(たとえば、コンピュータの画面上に)表示する。いくつかの実施形態では、また工程1760において、解セットにしたがって選択ロジック回路を合成する。本明細書に開示するもの以外のアプリケーション用の制御回路を生成するために、方法1700を使用できる(たとえば、汎用の制御回路を生成するのに使用できる)。
セレクタ回路を制御するために使用するデータ(いくつかの実施形態では、圧縮データ)は多数の方法で回路に送ることができる。いくつかの実施形態では、セレクタ回路が埋め込み決定論的テスト環境に組み込まれている場合、たとえば、データはテストデータ・デコンプレッサからアップロードできる。たとえば、データは追加の指定ビットとして見なすことができ、実際のテストキューブのものと同様なやり方で符号化プロセスの対象となることができる。しかし、このアプローチはテストパターン生成プロセスにおいてフィードバック・ループを作成することができる。たとえば、一旦生成されたテストキューブは、その後圧縮および解凍すると故障シミュレータで使用するランダムフィルを得ることができ、検出される故障の特定に役立たせることができる。この時点で、マスクビットを一意に判定できる。しかし、これらが圧縮刺激の一部になる場合、典型的には圧縮、解凍および故障シミュレーションのプロセス全体を繰り返さなければならない。そのため、ランダムフィルが変わり、すでに割り当てられているマスキング信号は以前に判定されたよりも効果が低下する可能性がある。また、刺激に新しい指定ビットを追加すると、符号化プロセスがうまくいかないこともある。典型的なATPGエンジンは新たな対象とする故障を徐々に追加することによって、テストパターンを段階的に増やして作成する。このスキームでは、パターンに故障を追加するたびに圧縮、解凍および故障シミュレーションを行うかどうか、または最終テストパターンを適用して、マスクビットがパターンの圧縮に失敗した場合にある故障を取り除くかどうかを決定しなければならない。後者のアプローチでは、各パターンについて計算量の多い圧縮、解凍および故障シミュレーションを何度もすることになる可能性もある。
いくつかの実施形態では、最終テストパターンを生成する前のATPGプロセスのある時点で、マスクビットを指定することもできる。しかし、それでもX状態のサイトは典型的にはランダムフィルが行われるまで分からない。マスクビットの割り当てはここでも解凍および故障シミュレーションをすることになる可能性があり、テスト刺激とマスクビットとの間の相互依存性の問題は残るであろう。
他の実施形態では、1つまたは複数の追加チャネル(または入力パス)を使用して、直接セレクタ・レジスタを駆動できる。これにより、スキャンチェーンにロードされる刺激とは独立して、マスクビットの指定を可能にできる。このアプローチの刺激は必ずしもセレクタのマスクビットに依存するという訳ではない。このアプローチは、たとえば、最長のスキャンチェーンのサイズが1つまたは複数の追加チャネルのセレクタ・レジスタのサイズの総和を有意に超えない場合に使用できる。このような場合、セレクタ・レジスタの入力タップは、チャネル入力ピンとデコンプレッサとの間に挿入することが望ましい。そうすると余計な入力ピンではなく追加のシフトサイクルを使用してマスキング・データを送ることができる。単一入力チャネルのデコンプレッサの使用も可能である。
いくつかの実施形態では、第1インターバル中にテストパターンデータを1つまたは複数のチャネル上の回路(たとえば、デコンプレッサ)に供給し、第2インターバル中にマスキング命令をセレクタ・チャネルの1つまたは複数上のセレクタ・ロジック回路に供給する。これにより、回路は1つまたは複数のチャネルをテストパターンデータおよびマスキング命令の間で「共有」できる。このような構成は、たとえば、図1のコンポーネント160、162を使用して実施できる。特定の実施形態では、第1インターバルは第2インターバルよりも先に起こるが、別の実施形態では第2インターバルが第1インターバルより先に起こる。さらに別の実施形態では、第1インターバルおよび第2インターバルは、少なくとも部分的に互いの合間に起こるサブインターバル散在させることができる。
方法1700の例示的な実験結果を以下の表4に提示する。表4は、n=128のスキャンチェーンの論理ゲートを駆動する2つの例示的な選択ロジック回路(m=32またはm=34、F=3)の一次独立の確率を示す。指定されるゲート信号の数は16から32の範囲である。比較のために、純粋なランダム線形刺激デコンプレッサに関する「上記非特許文献1」)で報告された結果も含んでいる。一次従属の確率に関し、上記非特許文献1で使用されているスキームより、方法1700のアプローチで実現された改善点を表に示している。たとえば、ある一次独立の尤度(見込み)が与えられたとして、方法1700により作成した選択ロジック回路の実施形態は、mおよびnが同じ値の場合、上記非特許文献1の回路よりも約4だけ多い指定ビットを符号化できる。また、指定ビットの数が増えると、いったん指定ビットの数がマスクビットの数に近づいてきたら、一次独立の確率がはるかに高い状態を維持する。
表4 一次独立の確率(%)
以下は、前述の方法により作成した選択ロジック回路の実施形態の符号化効率を測定した実験結果である。値m、nおよびFが与えられているとして、各実験を多数の連続ステージを含む方法にしたがって行った。ステージkで、(対応する線形方程式を解くことによって)k個の指定ビット(マスキング信号)がロジック回路で符号化できるかどうかを判定した。工程kで符号化を受ける指定ビットは、ステージk−1ですでに使用したビットに新しい指定ビットを加えることによって得た。これらの実験は特性実験であるため、新しい指定ビットはロジック回路で選択される出力および回路から要求される値によって無作為に設定した。プロセスは最初に失敗するまで続けた。この場合、符号化されたビットの数(前の工程で使用されたもの)を、ヒストグラムの対応する項目を増分することによって記録した。その後、ゲーティング・ビットの新しい組み合わせが符号化の対象になった。
表5はF=3およびF=5の場合の結果を示している。表5のデータは形式Eを仮定しており、sは各事例においてセレクタ多項式の任意の対によってマスク・レジスタのステージが(最大で)共有する数を示している。表の各項目はゲート信号を符号化できるスキャンチェーンの平均数に対応する。たとえば、三項式(F=3)を使う64出力セレクタおよび32ビットのマスク・レジスタを考えてみる。得られる符号化効率は98.23%に等しい。すなわち、このロジックは、平均で32×0.9823=31.43のゲート信号(スキャンチェーン)を符号化できる。通常低い割合のスキャンチェーンしか未知(X)状態のほとんどを含んでいないことから、このように出力の大きな部分を制御できる能力は有利である。スキャンチェーンの数が増えると符号化効率がわずかに低下するが、実験したすべての事例で、90%をゆうに上回る閾値のままであった。同時に、Fの値が増えると符号化効率は上昇した。このことから、セレクタのハードウェアのコストとその性能との間にトレードオフの関係が存在することが分かる。
表5 平均符号化効率(%)
この観測結果を使用して、ハードウェアのコストをF=3の回路のコストと同じに維持しながら、性能を一層高めた選択ロジック回路を設計できる。このような設計の例示的な実施形態を図18で入力1810および出力1820を有する回路1800として示している。例示的なアーキテクチャでは、各事例でいくつかの三項式の実施にすでに使用した2つの2入力XORゲート
を再利用することによって後半の項を形成するように、ある三項式を五項の多項式(五項式)に置換した。いくつかの実施形態では、さらに五項式は次のような2つの2入力XORゲートだけを使用して形成できる。
で、eは新たに作成する多項式の5番目の項である。たとえば、回路1800では、出力1、4、7および10は五項式を実施する出力である。
ある実施形態では、選択ロジック回路の合成は、方法1700を使用して得られる回路を洗練するスティンソンの山登り法手順を含有できる。例示的な方法1700が完了すると、いくつかの実施形態では、1つまたは複数のセレクタの三項式について関連平均ランクを判定することができる。ランクが低いまたは最低の1つまたは複数の三項式を、より高いランクの三項式に基づいて作成した1つまたは複数の五項式に置換できる。別の実施形態では、いくつかの候補五項式を形成でき、ランクがもっとも高いものを解セットに追加できる。一般に、解セットに追加する五項式の数はn/3を超えることはできない。
表7は、Fがある多項式で3に等しく、他の場合で5に等しい選択ロジック回路の性能を実験した1組の実験結果を示している。他のパラメータは表5の結果を得るために使用したものと同じである。表6は表5と同じ表形式を使用している。
表6 F=3およびF=5の場合の平均符号化効率
さらに、いくつかの工業設計において、単一ステージの圧縮スキームのスキャンチェーン選択ロジックに適用する例示的な実施形態をテストした。テストした各設計では、一次故障伝播サイトとして1つのスキャンセルだけを選んだ。そのため、方法1700を適用すると、特にそうしなければブロックされてしまう少数の伝播サイトを持つものの場合、より均一に故障に対処できた。実際、以下に示すように、例示的な選択アルゴリズムの実施形態は、多数の観測点をもつ故障が支配的な役割を果たすことになるため、多くの場合上記マスキング決定を扱うことができる。以下の実験結果を出すために使用したテスト回路アーキテクチャでは、組合せテスト応答コンパクタとして単一出力のXORツリーを使用した。セレクタ回路内のマスク・レジスタはパターン毎に1度ロードした。このようなアプローチはマスキング信号にごくわずかな量の追加データしか供給する必要がなく、そのため圧縮比を有意に損なうことはなかった。またタイミング収束の違反も防いだ。このマスキング・シナリオの場合、X状態はあるエラーの可観測性を2倍阻止できる。所与のX状態が抑制されない場合、それにより同じスキャンアウト・サイクルで捕獲され、X状態をXOR演算したスキャンチェーンから到着するエラーは観測しにくくなる可能性がある。他方で、X状態をブロックすることは典型的には同じスキャンチェーンで発生するすべてのエラーを隠す。
以下の結果では、スキームの性能を評価する性能指数として、パターン数の増加数値を採用した。実際、元のテストパターンを適用する場合、X状態および選択ロジックの使用によりいくつかのテスト回避が観測される可能性がある。そのため、典型的には、完全な故障カバレッジが回復するまで、多数の付加パターンを適用するべきである。
以下に報告する実験結果は、図19に示されている例示的な方法1900を使用して得られた。方法1900は図12に示す方法と実質的に同じであるが、単一ステージの圧縮スキームであることを考えた場合、スキャンチェーンを複合スキャンチェーンに変換する工程を省略できる点が異なる。方法1900は単一ステージおよびマルチステージのコンパクタ・アーキテクチャの双方で使用できる。例示的な方法1900は、故障スキャンセルの位置および各テストパターンについて1つまたは複数の未知状態が与えられていると仮定する。
工程1910で、各スキャンチェーンについて、2つの係数SおよびMを判定するが、Sはスキャンチェーンiが選択される場合に残る推定エラー数を表し、Mはマスクされたとした場合のスキャンチェーンiの推定エラー数である。E(i)およびX(i)は、それぞれエラーおよび未知状態を捕獲するスキャンチェーンi内のスキャンセルのセットを表す。EおよびXは、スキャンアウト・サイクルcに属するスキャンセルが捕獲するそれぞれのエラー数およびX状態の数を表す。係数SおよびMはそれぞれ式4および式5で以下のように求められる。
この例示的なアプローチでは、Sは所与のスキャンチェーンで発生するエラー数と、所与のスキャンチェーンが内包するX状態と同じタイムフレームで発生するエラー数との差として計算される。図示する実施形態では、式4の最初の項は、たとえば、同じタイムフレームで発生するX状態すべてがマスクされる確率(1つのスキャンチェーンは確率0.5でマスクされると仮定する)によって調整される。式4の2番目の項は、二重数(ダブルカウント)を避けるために対応するX状態の数によって調整される。この例示的なアプローチでは、Mは、所与のスキャンチェーンが内包する(現在抑制されている)X状態と同じタイムフレームで発生するエラー数に等しい。しかし、これは、同じシフトサイクルから他の未知状態によってマスクされていないと仮定している。この数はマスクされているスキャンチェーンで発生するエラーの分だけ減少できる(たとえば、他のスキャンチェーンからのXによって調整し、マスクされているチェーン自体を含む)。
工程1920で、スキャンチェーンiの係数SとMとを比較し、工程1930で、スキャンチェーンiは、選んだのがSまたはMかによって、マスキング信号の値1(選択)または0(マスク)をマークされる。いくつかの実施形態では、これらの信号を特定の選択回路についてまだ符号化する必要があるため、これは最終のマスキングではない。
工程1940で、工程1930の結果に基づいて、1つまたは複数のスキャンチェーン(いくつかの実施形態では、すべてのスキャンチェーン)のコンテンツを、マスクされることになるスキャンチェーンのエラーおよびX状態を削除することによって、または選択したスキャンチェーンが未知状態を示すタイムフレームのエラーおよびX状態を削除することによって更新する。図示する実施形態では、矢印1932で示すように、上記工程を繰り返すことによって、マスキング信号を1つまたは複数の他のスキャンチェーンに反復的に割り当てる。
工程1950で、線形方程式を解いて(たとえば、工程1920で判定した順序で)、連続するスキャンチェーンの選択ロジックでマスキング信号を符号化できることを確認する。これら線形方程式は選択ロジックの入力と出力との関係を記述する。いくつかの実施形態では、最初の符号化の失敗が発生するまでこのプロセスを続ける。
工程1960で、符号化の対象とならなかったすべてのマスキング信号の値を判定して(たとえば、選択ロジックを調べることによって)、得られる故障カバレッジを判定する。検出された故障は対象から外すことができ、判定した故障カバレッジを達成するのに効果的に使用したテストパターンの数を記憶できる。
工程1970で示すように、本実験のために、所望の数の対象とする故障が検出されるまで、方法1900を繰り返す。
実験結果を表7および表8に示す。テストした各回路について、次の情報を記載している。名前(記号−dkは回路に関連して深度−kの順次パターンの使用を示している)、スキャンアーキテクチャおよび故障の総数、エラー・ビットの総数(誤りのある信号を捕獲するスキャンセルの数)、捕獲されるX状態の数に対するスキャンセルの数の比にテストパターンの数を乗じて計算するXフィルレート、圧縮がないと仮定した場合の故障カバレッジ(FC)に寄与するパターン数、マスク・レジスタのサイズm、ここでは絶対および相対IPCとして報告されている付加パターン、ならびに有効圧縮比C(x)である。実験では単一出力コンパクタを使用したため、圧縮比は、元のテストパターンに対する効果的に適用されるパターンの総数(付加ベクトルおよびセレクタのマスクビットを含む)の比で正規化したスキャンチェーンの数として求められる。
表7 実験結果―1
表8 実験結果―2
表7および表8で報告されている回路は、0.001%(C6)から約5%(C4)までの幅広い範囲のXフィルレートを示した。結果として、生じたパターン数の増加は、Xフィルレートが低い回路(たとえば、C6)の約1%未満から、Xが高い割合で見られた設計(たとえば、C1およびC4)の約300%までとばらつきがあった。また、その発生頻度と同様に、未知状態が捕獲されるサイトがますます重要となる可能性があると思われる。たとえば、すべてのテストパターンにわたって均一に、X状態が設計C1−d3のスキャンチェーンの大部分に存在することが観測されている。この現象とは逆に、設計C4−d0でX状態がひどく集中しているパターンはほんの少ししかない。この場合、パターンの大部分はXフィルレートが低かったか、または未知状態を示さなかったのである。結果として、深度−3の順次パターンと8ビットのセレクタとを使用する設計C1−d3(平均して、スキャンチェーンの16%の完全な可制御性を示す)は、同様の回路を非圧縮モードで使用した場合よりも4倍多くのテストパターンを使用した。他方で、回路C4−d0は、設計C1−d3よりもXフィルレートが高いにもかかわらず、1.3倍多くのテストパターンを使用した(回路C4−d0の場合、12ビットのセレクタ回路が同様なスキャンチェーンの可制御性を提供したため)。
表7および表8の結果を得た実験は、所与のスキャンチェーン構成の最小値から始まるいくつかのmの値を使用して行った。すべての回路で、mがスキャンチェーンの数のほぼ10〜20%の場合に最良の観測された圧縮結果が得られた。レジスタを大型化して得られたであろうゲインは、マスクビットのために減少した。Xフィルレートが低い回路(C6.1−d0、C6.2−d0)は、スキャンチェーン構成によって決まる最小のレジスタで最良の観測された実験結果を得た。
オンチップ・コンパクタおよび応答コレクタの例示的な実施形態
スキャンベースの製造テストのいくつかの実施形態では、被テスト回路(CUT)のテスト応答を既知の良好な応答と比較して、CUTの故障を分離するために、外部のテスタ(たとえば、ATE)に送る。通常、テスト応答の各ビットはATEで2ビットにマッピングし、3つの論理値0、1およびXに対応させる。これは製造テストおよび故障情報収集の標準的なアプローチであるが、制約を有している可能性がある。たとえば、スキャンデータをアンロードしてATEで比較しているときにミスマッチが起こると、多くの場合テストサイクル全体(たとえば、スキャンチェーンのスライス全体)が捕獲されて、テスタのメモリに記憶される。通常、テスタのメモリの制約により、記憶装置(「故障ログ」)は最大わずか256の故障サイクルに規定される。そのため、故障ログはしばしば切り捨てられて、多くの故障テストパターンは記録されない。また、CUTからATEにデータをアンロードし、応答を比較し、発生する故障がかなりの時間かかるかどうかを判定する。このためにテストの適用時間が増え、それによってテストフロアのスループットが低下する可能性がある。テストのスループットを改善するために、マルチサイトのテスティングが業界で人気を得ている。通常これはテスタ上で同時に複数のデバイス(ある場合には、64または128にもなる)をテストすることを伴う。現在のATE技術では、これが少なくとも次の2つの理由のためにボトルネックとなっている。デバイス毎の観測専用のチェーン数が限られてくること、および複数のデバイスでATEメモリを共有するためデバイス毎に記憶するデータ量がさらに限られることである。
以上の問題の少なくとも一部に対処するために、以下に説明するオンチップ比較および応答収集スキームの実施形態を使用できる。ATEで比較を行う代わりに、たとえば、追加のハードウェアをオンチップに組み込み、期待テスト応答と実際のテスト応答との比較をやりやすくすることができる。さらに、ある既存のメモリ・オンチップを利用することによって、診断を容易にするのに役立つより大量の故障データを記憶することが可能である。いくつかの実施形態では、既知の良好な応答はそのままATEメモリに記憶される。
図20は、例示的なオンチップ・テスティング回路コンパクタ・アーキテクチャ2000の一実施形態のブロック図を示している。図示する実施形態は、コンパクタ2020などのコンパクタに連結される、グループ2010(スキャンチェーン1〜12から成る)などの複数のスキャンチェーン・グループを含む。図示するアーキテクチャでは、コンポーネント2012はアーキテクチャ2000に1つまたは複数ビットのチャネル毎(たとえば、コンパクタ毎)の情報を供給できる。いくつかの実施形態では、コンポーネント2012は、たとえば、ATE、オンチップ・メモリ、またはオンチップ・デコンプレッサのうちの1つまたは複数にすることができる。これらのビットは入力パス2030、2032上に供給できる。たとえば、入力パス2030上に供給される第1ビット・セットは、コンパクタの出力と比較するために供給されるデバイスから期待される実際のテスト応答ビットにすることができる。第1ビット・セットは、図20の実施形態ではXORゲートを含むコンパレータ2034に供給される。
いくつかの実施形態では、第2ビット・セット(「マスク信号」とも言う)を入力パス2032上に供給して、コンパレータ2034の出力を(たとえば、ANDゲート2040または他の適切な論理ゲートを使用して)マスクするべきかどうかを示すために使用できる。所与のコンパレータのマスクビットを、期待応答がX状態の場合、そのために、コンパレータの結果を無視する場合に、コンパレータの出力をマスクするように設定できる。
ある実施形態では、入力パス2030上に供給される期待テスト応答ビットは、入力パス2032上に供給されるマスク信号と同時に入力される。本明細書および請求項で使用する場合、「同時に」という用語は回路の意図する動作が損なわれない限り、ある程度の小さなずれは許容する。たとえば、いくつかの実施形態では、ほぼ1クロックサイクルまでのずれは許容できる。
別の実施形態では、テスト応答のサイクル毎にエラー・ベクトルを判定できる。エラー・ベクトル(nチャネルと仮定する)をプライオリティ・エンコーダ2050への入力として直接送ることができ、プライオリティ・エンコーダ2050はそれをlognビットのベクトルに符号化できる。さらに別の実施形態では、プライオリティ・エンコーダ2050は、1サイクル中に2つ以上のチャネル出力でエラーが観測されるかどうかを示すロジックを含むことができ、それに応じて出力(図示せず)に1ビットを設定することができる。さらに別の実施形態では、アーキテクチャ2000はパターン・カウンタ2060とシフト・カウンタ2062とを含み、エラーが観測されたパターンおよびサイクル番号を追跡する。メモリ2070は他のコンポーネント(たとえば、プライオリティ・エンコーダ2050、パターン・カウンタ2060および/またはシフト・カウンタ2062)からのデータを記録できる。追加ロジック2072を使って、メモリ2070への入力を管理できる。パターン・カウンタ2060、シフト・カウンタ2062および追加ロジック2072などのコンポーネントは、図20に示すようにクロック信号および制御信号に応答して動作できる。
図21は、テスティング回路アーキテクチャ2000とともに使用できるプライオリティ・エンコーダ2100の一実施形態のブロック図を示している。
テスト中にm個のパターンを適用し、スキャンチェーンの最長長さがlビットと仮定すると、開示する技術の一例示的な実施態様により故障サイクル毎に記録されるビットの総数(T)は以下のとおりである。
T=logn+logm+logl+1(6)
式6の最後の項(追加の出力サイクルを表す)は、プライオリティ・エンコーダ2050の入力に2つ以上のエラーがあるかどうかを示すことができる出力ビットに対応する。たとえば、64個のチャネル、10,000個のパターン、最長スキャンチェーンの長さが400ビットの設計の場合、この実施態様によると合計30ビットが記録できる。メモリ2070がたとえば1K×32メモリの場合、すべてのチャネルに1つのエラーがあると仮定すると、1024の故障サイクルまで記憶できる。1サイクル中にすべてのチャネルで最大2つのエラーがある場合、最悪の場合でも512までの故障サイクルを記憶できる。故障パターン情報のコレクタとして機能する記憶メモリを追加および構成できるか、またはデバイスの既存のメモリを、故障情報を記憶するために再利用できる。メモリサイズおよびサイクル毎に記録されるエラー・ビットの数に応じて、診断分解能は変わることができる。
図22は例示的なオンチップ比較および応答収集アーキテクチャ2200の別の実施形態のブロック図を示している。この実施形態では、多入力シグネチャレジスタ(MISR)2202を使用して、グループ2210などのスキャンチェーン・グループからの出力を圧縮する1つまたは複数のコンパクタ(コンパクタ2220など)から回路応答を収集することもできる。MISR2202はMISRシグネチャを生成でき、それをパターン・カウンタ2260のコンテンツとともに、1つまたは複数の故障パターンについてメモリ2270に記憶できる。アーキテクチャ2200はコンパレータとANDゲートとを含むことができ(コンパレータ2234およびANDゲート2240など)、これらを、アーキテクチャ2100と同様に、ATEからの入力によって制御できる。さらに別の実施形態では、メモリ2270への書込みを、ANDゲートからの1つまたは複数の信号およびATEからの「パターン終了」信号2274とともに調整する書込み許可回路2272を構成できる。
図23は、例示的な比較および応答収集アーキテクチャ2300のさらに別の実施形態のブロック図を示している。この実施形態では、(MISR2302が出した)エラーシグネチャを、ほとんどの故障パターンまたはすべての故障パターンについてメモリ2370に記憶する。加えて、パターン・カウンタ2360のコンテンツおよび故障ビットの数(たとえば、エラー加算器2362で判定する)も、エラーを出した1つまたは複数のテストパターンについて記憶できる。別の実施形態では、テストセットを適用した後で、2つの追加データ・セットを利用できる。すなわち、垂直コレクタ2364および水平コレクタ2366がそれぞれ収集した故障サイクルと故障スキャンチェーン(またはスキャンチェーンのグループ)である。図24は垂直コレクタ回路2364の一実施形態のブロック図を示し、一方図25は水平コレクタ回路2366の一実施形態のブロック図を示している。
前述したオンチップ・テスティング・アーキテクチャは、本明細書に記述するあらゆる他の技術(たとえば、Xプレス・コンパクタ、制御回路合成)と組み合わせて使用できる。
実験では、オンチップ・ティスティング・アーキテクチャ2100を、製造フロアから、それぞれ26,000個および10,000個の実際の故障ログのある2つの工業用回路(すなわち、設計AおよびB)に使用した。本明細書に記述するコンパクタの実施形態の診断分解能は、たとえば、上記特許文献1および上記特許文献2に記述される選択的コンパクタに似ていた。一般に、チップに故障サイクルを記憶させて情報の実質的な損失を招かない限り、診断分解能を保つことができる。
実験では、設計Aはスキャンチェーン32個、外部データ出力用にチャネル1個、最長スキャンチェーンの長さを4000ビットにして構成した。256倍の有効圧縮を目標として、8ビットのオーバードライブ・レジスタを選択した。テスティング・アーキテクチャ1900が故障サイクル毎に1つのエラーを記録した場合、故障ログの88%(合計26,000個のうち)について、診断分解能は同じままであることが観測された。26,000個すべての故障ログ全体で、わずか2.7%の故障パターンがあり少数のエラーがマスクされたが、その多くは診断分解能に影響していないようである。設計Bはチェーン32個、チャネル1個、最長スキャンチェーンの長さを14000にして構成した。それぞれ有効圧縮256倍、512倍および1024倍を目標にして、8ビット、16ビットおよび32ビットのオーバードライブ・レジスタを選択した。10,000個の故障ログを分析したところ、事例の87.5%(256倍)、87%(512倍)および86.4%(1024倍)について、すべてのパターンにわたり故障サイクルに1つのエラー・ビットを記録することによって、診断分解能は同じままであった。同様に、オーバードライブ・レジスタのサイズに基づくと、故障パターンの1.6%、2.4%および3.1%だけが少数のエラーをマスクさせた。
故障診断に対する影響
一般に、診断フローの大容量モニタリングを可能にするには、診断ツールが圧縮モードでの分析をサポートするのが望ましい。様々なテスト応答コンパクタに採用できる故障診断技法が上記特許文献3に記述されており、引用により本明細書に組み込む。この技法を本明細書に開示するXプレス・コンパクタの例示的な実施形態が生成するデータに適用する場合、圧縮された応答のビットPは、圧縮前にスキャンセルに捕獲される値のセットの関数として表現できる。Φで表すこのいわゆる「変換関数」は、P=Φ(C)となるようにし、CはPを得るために一緒に圧縮されるスキャンセルのセットの値である。ΦおよびCはともに、コンパクタ・アーキテクチャおよび各パターンのマスキング条件によって判定できるため、Φは加算モジュロ2として定義でき、一方Cは選択ロジックを介してスキャン出力チャネルに接続されている複合スキャンチェーン・グループ(図3を参照)で同じシフトアウト・サイクルに位置するスキャンセルのセットとして定義できる。このセクションでは、複合スキャンチェーン内のスキャンセルを「複合スキャンセル」と言う。各複合スキャンセルの値は、(たとえば、圧縮の第1ステージから)v個の圧縮スキャンセルをXOR演算することによって求められることに留意されたい。また、マスクされるスキャンセルの値は0である。
Xプレス・コンパクタベースの診断に関する例示的な実施形態により、観測された不完全な応答は1つまたは複数の候補ロジックコーン(LC)によって表現する。このような関係を求めるために、概念的な回路変換を行い、元の設計を数がXプレスの出力の数に等しい擬似スキャンチェーンを持つ回路に変換できる。擬似スキャンチェーンの各々にあるセルの数は、元の回路のシフトサイクル数をvで割った値である。擬似スキャンセルはその値を含意するロジックコーンの和集合によって駆動する。
図26は、スキャンセル16個(およびそれらを駆動するロジックコーン16個)、スキャンチェーン2個を備え、2ビットのオーバードライブ・レジスタを有する例示的な単一出力Xプレス・コンパクタを使用する元の回路設計に対応する変換回路2600のブロック図を示している。変換回路は、ロジックコーンLC…LC15と、擬似スキャンセル2610、2611、2612、2613とを含む。
は、Xプレス・コンパクタの第1ステージが行う空間圧縮に対応し、一方擬似スキャンセル2610、2611、2612、2613は、オーバードライブ・レジスタによって送られるスペース・コンパクタを表すモジュロ2の総和によって駆動する。この実施形態では、マスクされたどのロジックコーンの出力もその後の処理から除外される。圧縮後、各テストパターンに4ビットが観測される。
擬似スキャンセル2610および2612で故障が観測された場合を考えてみる。図26の変換回路とパターン毎に1箇所の仮定とに基づいて、不完全なロジックは、ロジックコーンLCおよびLCの和集合と、ロジックコーンLCおよびLC11の和集合との間の共通部分に位置すると判定できる。これにより、考えられる故障と思われるもの(故障候補)の探索空間が減少する。
次に、図26に図示する変換回路に故障シミュレーションを適用できる。故障と思われるものを変換回路に注入して、シミュレーションをする。シミュレーション結果をテスタによって記録されているデータと比較する。シミュレーション結果が、テスタが観測した故障と一致する場合、故障は真の故障と見なすことができる。
図27は、テストするCUTの故障診断を行うある例示的な方法2700のブロック図を示している。工程2710で、Xプレス・コンパクタの1つまたは複数の応答の変換関数を判定する。いくつかの実施形態では、これは、コンパクタから応答として与えられた各ビットの変換関数を判定する工程を含む。工程2720で、元のCUTを1つまたは複数の擬似スキャンチェーンを持つ回路表現(「変換回路」)に変換する。工程2730で、ATEが生成する故障ファイルを読み込む(一般に、擬似スキャンセルのうちの1つまたは複数がテスト故障を捕獲すると仮定する)。1つまたは複数の故障セルからの接続を変換回路にマッピングして、当初故障と思われるものリストを構成する1つまたは複数のロジックコーンの位置を割り出すことができる(工程2740)。変換回路を使用して、1つまたは複数の候補故障に故障シミュレーションを行うことができる(工程2750)。工程2760で、1つまたは複数のシミュレーション結果をATEからの故障データと比較できる。シミュレーションおよび/または比較の結果を1つまたは複数のコンピュータ読取可能媒体に記憶できる(工程2770)。
別の実施形態では、縮退故障、ブリッジ故障、オープン故障および/または遷移(移行,トランジション)故障を特定できるように原因結果分析を使用できる。方法2700のある実施形態は、1シフトサイクルに複数の欠陥スキャンセルがある場合にも対処できる。また、開示する技術のある実施形態は、コンパクタをバイパスして診断のために異なるテストセットを適用する必要がないため、生産テストの故障診断を可能にすることができる。
以下は、前述した診断技術をCUTに行った実験結果である。各CUT設計について、1000個の無作為に選択した単一縮退故障を注入して、Xプレス・コンパクタの実施形態がある場合とない場合との設計バージョンについて1000個の故障ログを作成した。Xフィルレートが相対的に高く(たとえば、Xフィルが設計の特徴である場合)、マスキング・レジスタのサイズがm=12または13で、オーバードライブ因子がv=8のXプレス・コンパクタの設計(たとえば、図1の実施形態100)を選んだ。Xプレス・コンパクタの実施形態は、典型的には、同じカバレッジを維持するためにいくつかの付加パターンを使用したが、これら実験では、元のテストパターンを使用して比較を行った。一般に、様々な欠陥の挙動の特定は、コンパクタのタイプに関係なく、主に故障サイトに記録される値に基づくことができる。そのため、縮退故障を使用して比較を簡単にした。性能指数として診断分解能を使用したが、ここでは故障と思われるものの数の逆数として定義している。たとえば、診断手順の結果(呼び出し)ただ1つの可能性がある場合、分解能は100%である。結果が2つの可能性であれば、分解能は50%に低下する。以下の表9は、本出願の他の箇所で説明している実験結果を出すために使用したいくつかの回路設計の平均診断分解能を示している。表9で、2番目の列に圧縮なしの平均診断分解能を列記し、次の列にXプレス・コンパクタの例示的な実施形態を使用した平均診断分解能を列記している。残り2つの列は、前2列の統計値の差と、例示的なXプレス・コンパクタを使用した場合としない場合との故障パターン数の比率とを示している。
表9 平均診断分解能
表9で分かるように、例示的なXプレス・コンパクタを使用すると診断分解能に影響を与えることができる。しかし、多くの場合、この影響は、圧縮比が1000倍より高い場合であっても無視できる程度である。いくつかの実施形態では、診断分解能の損失は、表1および表2で示すように、Xプレスを採用する設計により多くのテストパターンを使用することによって実際に軽減できる。たとえば、付加パターンを使用する場合、C2の分解能の差は6.72から2.23に低下し、故障パターン比は1.9693から1.1701に低下する。故障データを圧縮すると、例示的なXプレス・コンパクタは、限られた故障データバッファしかもたないほとんどのATEにとって有利である。例示的なXプレス・コンパクタはATEに約30%〜50%少ない故障パターンを報告でき、故障ログが切り捨てられる確率を低下させることができる。また、1000倍より高い圧縮の場合であっても、診断のランタイムは約2倍にしかならず、Xプレス・コンパクタの実施形態を使用した診断はスケーラブルであり、かつ大量生産のアプリケーションに適することができる。
例示的なネットワーク環境
前述した技術のいずれの態様も、分散コンピュータ・ネットワークを使用して実施してもよい。図28は一つの適した例示的なネットワークを示している。サーバー・コンピュータ2800は関連記憶デバイス2802(サーバー・コンピュータの内部または外部)を有することができる。たとえば、サーバー・コンピュータ2800は、所与の被テスト回路用に開示されるモジュラー型コンパクタの実施形態のいずれかを生成する(たとえば、テストパターン生成ツールなどEDAソフトウェア・ツールの一部として)、または開示する実施形態のいずれかによって作成するシグネチャの診断を行う(たとえば、診断ソフトウェア・ツールとして)ように構成できる。サーバー・コンピュータ2800は、全体を2804に示すように、ネットワークに連結でき、たとえば、広域ネットワーク、ローカル・エリア・ネットワーク、クライアント・サーバー・ネットワーク、インターネット、またはその他適したネットワークを含むことができる。2806、2808で示すもののような1つまたは複数のクライアント・コンピュータは、ネットワーク・プロトコルを使用してネットワーク2804に連結してもよい。また、作業は、それ自身のメモリと1つまたは複数のCPUとを有する単一の専用ワークステーションで行ってもよい。
図29は別の例示的なネットワークを示している。1つまたは複数のコンピュータ2902はネットワーク2904を介して通信し、コンピューティング環境2900(たとえば、分散コンピューティング環境)を形成する。コンピューティング環境1700内のコンピュータ2902の各々を使って、コンパクタ生成プロセスまたは診断プロセスの少なくとも一部を行うことができる。図示する実施形態のネットワーク2904は1つまたは複数のクライアント・コンピュータ2908にも連結されている。
図30は、被テスト回路の設計情報(たとえば、HDLファイル、ネットリスト、GDSIIファイル、Oasisファイル、またはそのスキャンチェーンと合わせて被テスト回路を表すその他適する設計ファイル)は、開示する技術にしたがって適したマルチステージ・コンピュータ、選択回路および/またはオンチップ比較および応答収集回路を生成するために、リモート・サーバー・コンピュータ(図28に示すサーバー・コンピュータ2800など)またはリモート・コンピューティング環境(図29に示すコンピューティング環境2900など)を使って分析できる。処理ブロック3002で、たとえば、クライアント・コンピュータはCUT設計情報をリモート・サーバーまたはコンピューティング環境に送る。処理ブロック3004で、CUT設計情報がリモート・サーバーまたはリモート・コンピューティング環境のそれぞれのコンポーネントによって受信およびロードされる。処理ブロック3006で、コンパクタ、選択回路またはオンチップ・テスト・ハードウェアの生成を行って、開示される実施形態のいずれかの設計情報を作成する。処理ブロック3008で、リモート・サーバーまたはコンピューティング環境は作成された設計情報(たとえば、HDLファイル、ネットリスト、GDSIIファイル、Oasisファイル、または単独または被テスト回路およびスキャンチェーンと合わせてコンパクタを表すその他適した設計ファイル)をクライアント・コンピュータに送り、処理ブロック3010でクライアント・コンピュータがデータを受信する。
図18に示している例は、複数のコンピュータを使って開示するハードウェアの実施形態のいずれかを生成する唯一の方法ではないことは当業者には明らかなはずである。たとえば、CUT設計情報は、ネットワーク上になく、かつサーバーまたはコンピューティング環境に個別に送るコンピュータ読取可能媒体(たとえば、CD−ROM、DVDまたは携帯ハードドライブ)に記憶してもよい。あるいは、サーバー・コンピュータまたはリモート・コンピューティング環境はハードウェア設計手順の一部のみを行ってもよい。リモート・サーバーまたはコンピューティング環境を使う同様の手順を行って、開示するコンパクタ・アーキテクチャの実施形態が作成するシグネチャを診断できる。
開示する技術の原理を例示および説明してきたが、開示する実施形態は上記原理から逸脱することなく構成および詳細を変更できることは当業者には明らかであろう。たとえば、実施形態のいくつかはマルチステージの圧縮を行うために使用する2つのコンパクタを含むが、1つのコンパクタを使用することもできる。たとえば、オーバードライブ・レジスタの出力を、マルチプレクサを含むフィードバック・ネットワークを介して第1コンパクタの入力に連結することもできよう。オーバードライブ・レジスタ、スキャンチェーンおよびマルチプレクサをさらに制御回路(たとえば、有限状態機械)で制御して、vスキャンシフトサイクル毎に第2コンパクタとして第1コンパクタを動作させることができよう。考えられる多くの実施形態を鑑みて、例示する実施形態は単なる例しか含まれておらず、本発明の範囲の制限と解釈してはならないことは認識されるであろう。そうではなく、本発明は以下の特許請求の範囲およびその均等物によって定義される。そのため、本発明として、上記実施形態およびこれら特許請求の範囲内にある均等物のすべてを請求する。
テスト応答コンパクタのアーキテクチャの例示的な実施形態を示している。 テスト応答の圧縮方法の一実施形態のブロック図を示している。 セレクタ回路を使用し、被テスト回路のスキャンチェーンに発生する可能性があるX状態にどのように対処できるかに関しての一例を示している。 テスト応答コンパクタのアーキテクチャのさらに別の実施形態のブロック図を示している。 テスト応答コンパクタのアーキテクチャのさらに別の実施形態のブロック図を示している。 テスト応答コンパクタのアーキテクチャのさらに別の実施形態のブロック図を示している。 テスト応答コンパクタのアーキテクチャのさらに別の実施形態のブロック図を示している。 テスト応答コンパクタのアーキテクチャのさらに別の実施形態のブロック図を示している。 テスト応答コンパクタのアーキテクチャのさらに別の実施形態のブロック図を示している。 セレクタ回路とともに使用するためのマスキング信号の判定方法の一実施形態のブロック図を示している。 スキャンチェーンの表現の一実施形態を示している。 マスクするスキャンチェーンの選択方法の一実施形態のブロック図を示している。 選択的コンパクタの存在下でテストパターンを使用する方法の一実施形態のブロック図を示している。 本明細書に記述する方法および装置を使用した実験結果を記述する表を示している。 本明細書に記述する方法および装置を使用した実験結果を記述する表を示している。 選択ロジック回路の一実施形態を示している。 選択回路の制御ロジックの生成方法の一実施形態のブロック図を示している。 選択ロジック回路の一実施形態を示している。 テスト応答コンパクタのアーキテクチャの付加刺激を見つける方法の一実施形態のブロック図を示している。 例示的なオンチップ・テスティング・アーキテクチャの一実施形態のブロック図を示している。 プライオリティ・エンコーダの一実施形態のブロック図を示している。 例示的なオンチップ・テスティング・アーキテクチャの別の実施形態のブロック図を示している。 例示的なオンチップ・テスティング・アーキテクチャのさらに別の実施形態のブロック図を示している。 図23のオンチップ・テスティング・アーキテクチャとともに使用する垂直コレクタ回路の一実施形態のブロック図を示している。 図23のオンチップ・テスティング・アーキテクチャとともに使用する水平コレクタ回路の一実施形態のブロック図を示している。 診断用に変換した回路のブロック図を示している。 テストした回路の故障診断を行う一例示的な方法のブロック図を示している。 開示する方法のいずれかを行う、または開示するコンパクタの実施形態のいずれかを生成するのに使用できるネットワークの模式的なブロック図である。 開示する方法のいずれかを行う、または開示するコンパクタの実施形態のいずれかを生成するのに使用できる分散コンピューティング・ネットワークの模式的なブロック図である。 開示するコンパクタの実施形態が図28または図29のネットワークでどのように生成されることができるかを示すフローチャートである。 テスト応答コンパクタのアーキテクチャのさらに別の実施形態のブロック図である。 テスト応答コンパクタのアーキテクチャのさらに別の実施形態のブロック図である。 テスト応答コンパクタのアーキテクチャのさらに別の実施形態のブロック図である。

Claims (95)

  1. 複数の第1コンパクタ入力と、第1コンパクタ出力とを含む第1空間コンパクタと、
    レジスタ入力と、複数のレジスタ出力とを含み、前記第1コンパクタ出力に連結して、前記レジスタ入力を介してテスト応答ビットをロードするとともに、前記テスト応答ビットを前記複数のレジスタ出力を介して並列に出力するように作動可能なレジスタと、
    複数の第2コンパクタ入力と、第2コンパクタ出力とを含む第2空間コンパクタであって、前記複数の第2コンパクタ入力が前記複数のレジスタ出力に連結されている、第2空間コンパクタとを含む、
    被テスト回路のテスト応答を圧縮する装置。
  2. 前記第1空間コンパクタおよび前記第2コンパクタが、フィードバックなしであることを特徴とする、請求項1に記載の装置。
  3. 前記第1空間コンパクタおよび前記第2空間コンパクタが、それぞれXORまたはXNORゲートのネットワークを含むことを特徴とする、請求項1に記載の装置。
  4. 前記第1空間コンパクタおよび前記第2空間コンパクタのうち少なくとも一方が、パイプライン化された空間コンパクタであることを特徴とする、請求項1に記載の装置。
  5. 前記第1空間コンパクタおよび前記第2空間コンパクタが、同じコンパクタであることを特徴とする、請求項1に記載の装置。
  6. 前記レジスタが、直列に連結された2つ以上の順序素子を含むことを特徴とする、請求項1に記載の装置。
  7. 前記レジスタが、前記テスト応答ビットを直列にロードするように作動可能であることを特徴とする、請求項1に記載の装置。
  8. 前記第1空間コンパクタが、複数の第1コンパクタ出力を含むことを特徴とする、請求項1に記載の装置。
  9. 前記第2空間コンパクタが、複数の第2コンパクタ出力を含むことを特徴とする、請求項1に記載の装置。
  10. 前記複数の第1コンパクタ入力に連結された第1マスキング・ロジック・セットと、
    前記複数のレジスタ出力と前記複数の第2コンパクタ入力との間に連結された第2マスキング・ロジック・セットとをさらに含む、請求項1に記載の装置。
  11. 1つまたは複数の選択ロジック入力および複数の選択ロジック出力を有する選択ロジックをさらに含み、前記複数の選択ロジック出力が前記第1マスキング・ロジック・セットのそれぞれの入力および前記第2マスキング・ロジック・セットのそれぞれの入力に連結されており、前記選択ロジックは、前記1つまたは複数の選択ロジック入力で受信される1つまたは複数のマスキング命令ビットに応答して、前記第1マスキング・ロジック・セットと前記第2マスキング・ロジック・セットとを選択的に制御するように作動可能である、請求項10に記載の装置。
  12. 前記選択ロジックが、多項式にしたがって構成される論理ゲートのネットワークを含むことを特徴とする、請求項11に記載の装置。
  13. 前記論理ゲートの少なくとも一部が、XORまたはXNORゲートであることを特徴とする、請求項12に記載の装置。
  14. 前記多項式が、少なくとも1つの選択ロジック入力と少なくとも1つの選択ロジック出力とのそれぞれの関係を記述することを特徴とする、請求項12に記載の装置。
  15. 前記レジスタが第1レジスタであり、前記選択ロジックが複数の選択ロジック入力を含み、当該装置が第2レジスタ入力と、複数の第2レジスタ出力とを有する第2レジスタをさらに含み、前記複数の第2レジスタ出力が前記複数の選択ロジック入力に連結されていることを特徴とする、請求項11に記載の装置。
  16. 前記マスキング命令ビットは、外部テスタ、オンチップ・メモリ、またはオンチップ・デコンプレッサから受信される未圧縮ビットであることを特徴とする、請求項11に記載の装置。
  17. 請求項1に記載の装置を実装するための回路設計情報を記憶している1つまたは複数のコンピュータ読取可能媒体。
  18. コンピュータに請求項1に記載の装置を作製させるためのコンピュータ実行可能命令を記憶している1つまたは複数のコンピュータ読取可能媒体。
  19. 複数の未圧縮テスト応答ビットを圧縮し、それによって第1圧縮テスト応答ビット・セットを生成する工程と、
    前記第1圧縮テスト応答ビット・セットを複数の順序素子にロードする工程と、
    前記第1圧縮テスト応答ビット・セットを前記複数の順序素子から並列でアンロードする工程と、
    前記第1圧縮テスト応答ビット・セットをさらに圧縮する工程とを含む、
    被テスト回路のテスト応答を圧縮する方法。
  20. 前記ロードする工程が、2以上のクロックサイクルの第1期間に起こり、前記アンロードする工程が、1クロックサイクルの第2期間に起こることを特徴とする、請求項19に記載の方法。
  21. 前記第1期間と前記第2期間とが重複することを特徴とする、請求項20に記載の方法。
  22. 前記未圧縮テスト応答ビットを圧縮する前に、前記未圧縮テスト応答ビットのうち1つまたは複数を選択的にマスクする工程をさらに含む、請求項19に記載の方法。
  23. 前記圧縮テスト応答ビットをさらに圧縮する前に、前記圧縮テスト応答ビットのうち1つまたは複数を選択的にマスクする工程をさらに含む、請求項19に記載の方法。
  24. 前記選択的にマスクする工程を制御するためにマスキング命令ビットをロードする工程をさらに含む、請求項23に記載の方法。
  25. 請求項19に記載の方法を実施するように構成したテスト応答を圧縮する回路。
  26. それぞれ入力および出力を有する2つ以上の順序素子であって、この2つ以上の順序素子が、前記2つ以上の順序素子の前記入力を介して2つ以上の未圧縮テスト応答ビットのグループを入力するように作動可能であり、さらに前記2つ以上の未圧縮テスト応答ビットのグループを前記2つ以上の順序素子の前記出力を介して並列で出力するように作動可能な、2つ以上の順序素子と、
    複数の第1コンパクタ入力と、第1コンパクタ出力とを含む第1空間コンパクタであって、前記第1コンパクタ入力が前記順序素子の前記出力に連結している、前記第1空間コンパクタとを含む、
    被テスト回路のテスト応答を圧縮する装置。
  27. 複数の第2コンパクタ入力と、第2コンパクタ出力とを含む第2空間コンパクタをさらに含み、前記複数の第2コンパクタ入力の1つが前記第1コンパクタ出力に連結している、請求項26に記載の装置。
  28. 前記2つ以上の順序素子が、前記被テスト回路のスキャンチェーン内のスキャンセルであることを特徴とする、請求項26に記載の装置。
  29. 前記2つ以上の順序素子が、前記被テスト回路のスキャンチェーンの出力に連結されるレジスタを形成していることを特徴とする、請求項26に記載の装置。
  30. 前記第1空間コンパクタおよび前記第2空間コンパクタが、フィードバックなしであることを特徴とする、請求項26に記載の装置。
  31. 前記第1空間コンパクタおよび前記第2空間コンパクタが、それぞれXORまたはXNORゲートのネットワークを含むことを特徴とする、請求項26に記載の装置。
  32. 前記第2コンパクタ入力が複数の追加空間コンパクタの出力に連結されており、各追加空間コンパクタは追加の各順序素子から並列に受信される追加の未圧縮テスト応答ビットを入力するように構成されていることを特徴とする、請求項26に記載の装置。
  33. 前記複数の第1コンパクタ入力に連結された第1マスキング・ロジック・セットと、
    前記複数の第2コンパクタ入力に連結された第2マスキング・ロジック・セットとをさらに含む、請求項26に記載の装置。
  34. 1つまたは複数の選択ロジック入力と複数の選択ロジック出力とを有する選択ロジックをさらに含み、前記複数の選択ロジック出力が前記第1マスキング・ロジック・セットのそれぞれの入力および前記第2マスキング・ロジック・セットのそれぞれの入力に連結されており、前記選択ロジックが、前記1つまたは複数の選択ロジック入力において受信される1つまたは複数のマスキング命令ビットに応答して、前記第1マスキング・ロジック・セットおよび前記第2マスキング・ロジック・セットを選択的に制御するように作動可能である、請求項33に記載の装置。
  35. 前記選択ロジックが、多項式にしたがって構成されるXORまたはXNORゲートのネットワークを含むことを特徴とする、請求項34に記載の装置。
  36. レジスタ入力および複数のレジスタ出力を有するレジスタをさらに含み、前記複数のレジスタ出力が前記複数の選択ロジック入力に連結している、請求項34に記載の装置。
  37. 請求項26に記載の装置を実装するための回路設計情報を記憶している1つまたは複数のコンピュータ読取可能媒体。
  38. コンピュータに請求項26に記載の装置を作製させるためにコンピュータ実行可能命令を記憶している1つまたは複数のコンピュータ読取可能媒体。
  39. 第1インターバル中に、テストパターン・データを被テスト回路の入力に供給する工程と、
    第2インターバル中に、マスキング回路のマスキング命令を前記被テスト回路の前記入力に供給する工程とを含む、
    被テスト回路をテストする方法。
  40. 前記第1インターバルが、前記第2インターバルより先行することを特徴とする、請求項39に記載の方法。
  41. 前記第2インターバルが、前記第1インターバルより先行することを特徴とする、請求項39に記載の方法。
  42. 前記第1インターバルが、第3および第4のインターバルを含み、前記第2インターバルが第5および第6のインターバルを含み、さらに前記第3および第4のインターバルが前記第5および第6のインターバルの間にあることを特徴とする、請求項39に記載の方法。
  43. 前記テストパターンデータから生成されるテストパターンに対するテスト応答を前記被テスト回路からアンロードしようとするときに、前記マスキング命令をマスキング回路に適用する工程をさらに含む、請求項39に記載の方法。
  44. 他のテストパターンデータから生成されるテストパターンに対するテスト応答を前記被テスト回路からアンロードしようとするときに、前記マスキング命令をマスキング回路に適用する工程をさらに含む、請求項39に記載の方法。
  45. さらに、前記マスキング命令にしたがって1つまたは複数のテスト応答ビットをマスクする工程を含む、請求項39に記載の方法。
  46. 請求項39に記載の方法を実施するように構成した回路。
  47. テスト応答の圧縮中に未知状態のマスキングを制御するために使用する選択回路用の選択ロジックを生成する方法であって、この方法が、
    承認済み多項式セットに包含可能な候補多項式を生成する工程であって、前記候補多項式および前記承認済み多項式は、前記選択ロジックの2つ以上の入力と前記選択回路のそれぞれの出力との接続を記述する、工程と、
    多項式の1つまたは複数のテストセットを選択する工程であって、前記テストセットはそれぞれ、少なくとも前記候補多項式と前記承認済み多項式セットからの1つまたは複数の多項式とを含む、工程と、
    前記1つまたは複数のテストセットのランク値を計算する工程と、
    少なくとも部分的に前記ランク値に基づいて、前記承認済み多項式セットに包含する前記候補多項式を選択する工程と、
    前記候補多項式を包含した前記承認済み多項式セットを、1つまたは複数のコンピュータ読取可能媒体に記憶する工程とを含む、方法。
  48. 前記選択ロジックの回路記述を生成する工程であって、前記選択ロジックは前記承認済み多項式セットからの多項式を実施する、工程と、
    前記選択ロジックの前記回路記述を1つまたは複数のコンピュータ読取可能媒体に記憶する工程とをさらに含む、請求項47に記載の方法。
  49. 前記候補多項式は無作為に生成されることを特徴とする、請求項47に記載の方法。
  50. 前記候補多項式が一定数以上の項を前記承認済み多項式セットのなかの1つまたは複数の前記多項式と共有するかどうかを判定する工程と、
    前記候補多項式が前記一定数以上の項を前記承認済み多項式セットのなかの1つまたは複数の前記多項式と共有する場合に、新たな候補多項式を生成する工程とをさらに含む、請求項47に記載の方法。
  51. 前記ランク値を計算する工程が、前記多項式の2つ以上のテストセットの前記ランク値を平均化する工程をさらに含むとともに、前記候補多項式を選択する工程が、少なくとも部分的に前記平均ランク値に基づくことを特徴とする、請求項47に記載の方法。
  52. 複数の追加候補多項式について生成、選択、および計算する工程を繰り返す工程をさらに含む、請求項47に記載の方法。
  53. 前記承認済み多項式セットに含有する前記候補多項式を選択する工程が、さらに前記候補多項式の前記平均ランク値と前記追加の候補多項式のそれぞれの平均ランク値との比較に基づくことを特徴とする、請求項52に記載の方法。
  54. 前記2以上の多項式セットの前記ランク値を計算する工程が、前記多項式の2以上のテストセットの縮小列エシュロンフォームを判定する工程を含むことを特徴とする、請求項47に記載の方法。
  55. コンピュータに請求項47に記載の方法を実施させるためにコンピュータ実行可能命令を記憶している1つまたは複数のコンピュータ読取可能媒体。
  56. 被テスト回路のテスト中に、テスト応答ビットをマスクするように作動可能な選択回路用のマスキング命令を生成する方法であって、この方法が、
    前記被テスト回路に適用するテストパターンをシミュレーションして、テスト応答を生成する工程と、
    前記テスト応答内の1つまたは複数の未知状態を特定する工程と、
    少なくとも部分的に前記特定した1つまたは複数の未知状態に基づいて、マスクする1つまたは複数のテスト応答ビットを選択する工程と、
    前記選択したテスト応答ビットの1つまたは複数の指標を1つまたは複数のコンピュータ読取可能媒体に記憶する工程とを含む、方法。
  57. 少なくとも部分的に前記選択した1つまたは複数のテスト応答ビットに基づいて、選択回路のマスキング命令を符号化する工程をさらに含む、請求項56に記載の方法。
  58. 前記テスト応答内の1つまたは複数の故障観測サイトを特定する工程をさらに含み、マスクする前記1つまたは複数のテスト応答ビットの選択がさらに、少なくとも部分的に前記特定した1つまたは複数の故障観測サイトに基づく、請求項56に記載の方法。
  59. 前記マスクする1つまたは複数のテスト応答ビットを選択する工程が、
    少なくとも部分的に前記特定した1つもしくは複数の未知状態、前記特定した1つもしくは複数の故障観測サイト、または前記特定した1つもしくは複数の未知状態および前記特定した1つもしくは複数の故障観測サイトの双方に基づいて、前記被テスト回路の選択されるスキャンチェーンの1つまたは複数のスキャンセルに重みを割り当てる工程と、
    前記選択されるスキャンチェーン内の1つまたは複数のスキャンセルのグループの前記重みを総計する工程と、
    少なくとも部分的に前記総計した重みに基づいて、前記選択されるスキャンチェーンの1つまたは複数のスコアを計算する工程と、
    少なくとも部分的に前記スコアに基づいて、前記選択されるスキャンチェーンからのテスト応答ビットをマスクするかどうかを判定する工程とを含むことを特徴とする、請求項58に記載の方法。
  60. 前記重みは、前記テストパターンの前記シミュレーションを適用した後に、前記スキャンセルに記憶される1種の値を表すことを特徴とする、請求項59に記載の方法。
  61. 前記選択されたスキャンチェーンに関して計算した前記スコアの1つが、前記選択されたスキャンチェーンをマスクする場合に残る推定エラー数に比例することを特徴とする、請求項60に記載の方法。
  62. 前記選択されるスキャンチェーンに関して計算した前記スコアの1つが、前記選択されたスキャンチェーンをマスクしない場合に残る推定エラー数に比例することを特徴とする、請求項60に記載の方法。
  63. 回路のテスト中にテスト応答ビットをマスクするように作動可能な選択回路のマスキング命令を生成する方法であって、この方法が、
    選択されたスキャンチェーンの1つまたは複数のスキャンセルに重みを割り当てる工程と、
    前記選択されたスキャンチェーン内の1つまたは複数のスキャンセルのグループの前記重みを総計する工程と、
    少なくとも部分的に前記総計した重みに基づいて、前記選択されたスキャンチェーンの1つまたは複数のスコアを計算する工程と、
    少なくとも部分的に前記スコアに基づいて、前記選択されたスキャンチェーンからのテスト応答ビットをマスクするかどうかを判定する工程と、
    前記判定の指標を1つまたは複数のコンピュータ読取可能媒体に記憶する工程とを含む、方法。
  64. 少なくとも部分的に前記判定に基づいて、前記選択回路用のマスキング命令を符号化する工程と、
    前記マスキング命令を1つまたは複数のコンピュータ読取可能媒体に記憶する工程とをさらに含む、請求項63に記載の方法。
  65. 前記重みが、テストパターンを被テスト回路に適用した後、前記スキャンセルに記憶される1種の値を表すことを特徴とする、請求項63に記載の方法。
  66. 前記重みを割り当てる工程が、前記選択されたスキャンチェーンにおいて未知の値を捕獲する第1のそれぞれのスキャンセルに第1重みを割り当てる工程を含むことを特徴とする、請求項63に記載の方法。
  67. 前記重みを割り当てる工程が、前記選択されたスキャンチェーンにおいて対象とする故障を示す値を捕獲する第2のそれぞれのスキャンセルに第2重みを割り当てる工程を含むことを特徴とする、請求項66に記載の方法。
  68. 前記第2重みが前記第1重みよりも大きいことを特徴とする、請求項67に記載の方法。
  69. 前記重みを割り当てる工程が、前記選択されたスキャンチェーンにおいて、未知の値または対象とする故障を示す値のいずれでもない値を捕獲する第3のそれぞれのスキャンセルに第3重みを割り当てる工程をさらに含むことを特徴とする、請求項67に記載の方法。
  70. 前記第2重みが前記第1重みおよび前記第3重みの双方より大きく、かつ前記第3重みが前記第1重みよりも大きいことを特徴とする、請求項69に記載の方法。
  71. 前記選択されたスキャンチェーンに関して計算した前記スコアの1つが、前記選択されたスキャンチェーンをマスクしない場合に残る推定エラー数に比例することを特徴とする、請求項63に記載の方法。
  72. 前記選択されたスキャンチェーンに関して計算した前記スコアの1つが、前記選択されたスキャンチェーンをマスクする場合に残る推定エラー数に比例することを特徴とする、請求項63に記載の方法。
  73. 1つまたは複数の追加スキャンチェーンに関して、前記割り当て、総計および計算する工程を繰り返し、それによって前記1つまたは複数の追加スキャンチェーンの各々に関して1つまたは複数のスコアを計算する工程をさらに含む、請求項63に記載の方法。
  74. 前記選択されたスキャンチェーンからテスト応答ビットをマスクするかどうかを判定する工程が、前記選択されたスキャンチェーンの前記1つまたは複数のスコアを、各それぞれの追加スキャンチェーンの前記1つまたは複数のスコアと比較する工程をさらに含むことを特徴とする、請求項73に記載の方法。
  75. コンピュータに請求項63に記載の方法を実施させるためのコンピュータ実行可能命令を記憶している1つまたは複数のコンピュータ読取可能媒体。
  76. 複数の回路のうち1つの第1入力で、マスキング回路を制御するためのマスキングデータを受信する工程と、
    前記複数の回路のうち前記1つの第2入力で、前記複数の回路のうち前記1つのテスト中に生成されるテスト応答を評価するための期待テスト応答データを受信する工程とを含み、
    前記マスキングデータおよび前記期待テスト応答データが前記第1および第2の入力で同時に受信される、
    テスティング・システム内で複数の回路をテストする方法。
  77. 前記テスト応答が、圧縮されたテスト応答であることを特徴とする、請求項76に記載の方法。
  78. 前記テスト応答を多入力シフトレジスタ(MISR)にロードする工程と、
    前記MISRで1つまたは複数のコンパクタ・シグネチャを生成する工程と、
    前記1つまたは複数のコンパクタ・シグネチャを1つまたは複数のコンピュータ読取可能媒体に記憶する工程とをさらに含む、請求項76に記載の方法。
  79. 前記1つまたは複数のコンパクタ・シグネチャにしたがって故障候補位置のリストを生成する工程と、
    前記故障候補位置のリストを1つまたは複数のコンピュータ読取可能媒体に記憶する工程とをさらに含む、請求項78に記載の方法。
  80. 少なくとも部分的に前記テスト応答および前記期待テスト応答データに基づいて、1つまたは複数のエラーベクトルを生成する工程と、
    前記エラーベクトルを多入力シフトレジスタ内で圧縮して、1つまたは複数のコンパクタ・シグネチャを生成する工程と、
    前記1つまたは複数のコンパクタ・シグネチャを1つまたは複数のコンピュータ読取可能媒体に記憶する工程とをさらに含む、請求項76に記載の方法。
  81. 前記多入力シフトレジスタが、複数のシフトサイクルにわたって複数のエラー・ベクトル入力からコンパクタ・シグネチャを生成することを特徴とする、請求項80に記載の方法。
  82. 前記多入力シフトレジスタがテストパターン毎に1つのコンパクタ・シグネチャを生成することを特徴とする、請求項80に記載の方法。
  83. 少なくとも部分的に前記テスト応答および前記期待テスト応答データに基づいて、エラー・ベクトルを生成する工程であって、前記エラー・ベクトルは1シフトサイクルに生成される、工程と、
    前記エラー・ベクトルを1つまたは複数のコンピュータ読取可能媒体に記憶する工程とをさらに含む、請求項76に記載の方法。
  84. 前記テスト応答をプライオリティ・エンコーダ回路にロードする工程をさらに含み、前記テスト応答は3つ以上のコンパクタ出力からのテスト応答値を含み、前記プライオリティ・エンコーダ回路が1シフトサイクル中の前記テスト応答入力に3つ以上のエラーを検出するように構成した、請求項76に記載の方法。
  85. コンピュータに請求項76に記載の方法をシミュレーションさせるように構成した命令を含む1つまたは複数のコンピュータ読取可能媒体。
  86. スキャンチェーン・グループの各々が、1つまたは複数のスキャンチェーンと、対応する1つまたは複数のスキャンチェーン・グループ出力とを含む、複数のスキャンチェーン・グループと、
    コンパレータ回路の各々がコンパレータ入力とコンパレータ出力とを含む、複数のコンパレータ回路と、
    多入力シフトレジスタ(MISR)入力とMISR出力とを含むMISRと、
    コンパクタの各々が前記複数のスキャンチェーン・グループの個々の前記1つまたは複数のスキャンチェーン・グループ出力に連結された1つまたは複数のコンパクタ入力を含み、前記MISR入力の個々に直接連結されるとともに、各コンパレータの前記コンパレータ入力にも連結されたコンパクタ出力を含む、複数のコンパクタとをさらに含む、装置。
  87. メモリをさらに含み、前記メモリが前記MISR出力に連結された第1入力と、パターン・カウンタに連結された第2入力とを含む、請求項86に記載の装置。
  88. 複数のマスキング・ゲートをさらに含み、各マスキング・ゲートが前記コンパレータの個々の前記コンパクタ出力と前記MISRの各入力との間に連結されている、請求項86に記載の装置。
  89. スキャンチェーン・グループの各々が、1つまたは複数のスキャンチェーンと、対応する1つまたは複数のスキャンチェーン・グループ出力とを含む、複数のスキャンチェーン・グループと、
    コンパレータ回路の各々がコンパレータ入力とコンパレータ出力とを含む、複数のコンパレータ回路と、
    複数のエンコーダ入力と、エンコーダ出力とを含むエンコーダ回路であって、前記エンコーダ入力が各コンパレータ出力に連結された、エンコーダ回路と、
    各コンパクタが前記スキャンチェーン・グループの個々の前記スキャンチェーン・グループ出力に連結された1つまたは複数のコンパクタ入力を含み、各コンパレータの前記コンパレータ入力に連結されたコンパクタ出力をさらに含む、複数のコンパクタとを含み、前記エンコーダ回路が、前記コンパクタ出力から3つ以上のエラー値を検出するように構成した、
    複数の電子回路をテストする装置。
  90. 前記エンコーダ回路が、1シフトサイクル中に前記コンパクタ出力から前記3つ以上のエラー値を検出するように構成されていることを特徴とする、請求項89に記載の装置。
  91. 前記エンコーダ回路が、さらに、前記コンパクタ出力から2つ以下のエラー値出力を検出するように構成されていることを特徴とする、請求項89に記載の装置。
  92. 複数のマスキング回路をさらに含み、各マスキング回路が、各コンパクタの前記コンパレータ出力に連結されたマスキング回路入力と、各エンコーダ入力に連結されたマスキング出力とを有する、請求項89に記載の装置。
  93. 前記エンコーダ出力に連結されたメモリをさらに含む、請求項89に記載の装置。
  94. 複数の回路のうちの1つでマスキング回路を制御するためのマスキングデータを受信する手段と、
    前記複数の回路のうちの前記1つで期待テスト応答データを受信する手段であって、前記マスキングデータおよび前記期待テスト応答データが同時に受信される、受信する手段とを含むテスティング・システム内で複数の回路をテストするシステム。
  95. 前記テスト応答を圧縮して、1つまたは複数のコンパクタ・シグネチャを生成する手段と、
    前記1つまたは複数のコンパクタ・シグネチャを記憶する手段とをさらに含む、請求項94に記載のシステム。
JP2008555415A 2006-02-17 2007-02-19 マルチステージ・テスト応答コンパクタ Expired - Fee Related JP5268656B2 (ja)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US77443106P 2006-02-17 2006-02-17
US60/774,431 2006-02-17
US83246606P 2006-07-22 2006-07-22
US60/832,466 2006-07-22
US85305506P 2006-10-20 2006-10-20
US60/853,055 2006-10-20
PCT/US2007/004422 WO2007098167A2 (en) 2006-02-17 2007-02-19 Multi-stage test response compactors

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2012092236A Division JP5554365B2 (ja) 2006-02-17 2012-04-13 マルチステージ・テスト応答コンパクタ

Publications (2)

Publication Number Publication Date
JP2009527737A true JP2009527737A (ja) 2009-07-30
JP5268656B2 JP5268656B2 (ja) 2013-08-21

Family

ID=38437956

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2008555415A Expired - Fee Related JP5268656B2 (ja) 2006-02-17 2007-02-19 マルチステージ・テスト応答コンパクタ
JP2012092236A Expired - Fee Related JP5554365B2 (ja) 2006-02-17 2012-04-13 マルチステージ・テスト応答コンパクタ

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2012092236A Expired - Fee Related JP5554365B2 (ja) 2006-02-17 2012-04-13 マルチステージ・テスト応答コンパクタ

Country Status (5)

Country Link
US (8) US20070234169A1 (ja)
EP (2) EP1994419B1 (ja)
JP (2) JP5268656B2 (ja)
CN (2) CN101405609B (ja)
WO (1) WO2007098167A2 (ja)

Families Citing this family (95)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8099642B2 (en) * 2008-11-03 2012-01-17 Texas Instruments Incorporated Formatter selectively outputting scan stimulus data from scan response data
CN100489797C (zh) * 2001-10-11 2009-05-20 阿尔特拉公司 可编程逻辑设备上的错误检测
EP1994419B1 (en) 2006-02-17 2013-11-06 Mentor Graphics Corporation Multi-stage test response compactors
US7793184B2 (en) * 2007-01-11 2010-09-07 International Business Machines Corporation Lowering power consumption during logic built-in self-testing (LBIST) via channel suppression
US8286040B2 (en) * 2007-02-09 2012-10-09 Freescale Semiconductor, Inc. Device and method for testing a circuit
JP5537158B2 (ja) 2007-02-12 2014-07-02 メンター グラフィックス コーポレイション 低消費電力スキャンテスト技術および装置
US7840865B2 (en) * 2007-03-23 2010-11-23 Mentor Graphics Corporation Built-in self-test of integrated circuits using selectable weighting of test patterns
EP2135104B1 (en) * 2007-04-05 2010-10-20 Nxp B.V. Testable integrated circuit and test data generation method
JP4802139B2 (ja) * 2007-05-15 2011-10-26 株式会社東芝 半導体集積回路モジュール
US7644329B2 (en) * 2007-09-11 2010-01-05 Ali Corporation Integrated circuit testing method and related circuit thereof
US7882409B2 (en) * 2007-09-21 2011-02-01 Synopsys, Inc. Method and apparatus for synthesis of augmented multimode compactors
US7831876B2 (en) * 2007-10-23 2010-11-09 Lsi Corporation Testing a circuit with compressed scan chain subsets
US8166359B2 (en) * 2007-12-20 2012-04-24 Mentor Graphics Corporation Selective per-cycle masking of scan chains for system level test
US7971176B2 (en) * 2008-03-18 2011-06-28 International Business Machines Corporation Method for testing integrated circuits
US8584073B2 (en) * 2008-07-21 2013-11-12 Synopsys, Inc. Test design optimizer for configurable scan architectures
US7979763B2 (en) * 2008-10-21 2011-07-12 Synopsys, Inc. Fully X-tolerant, very high scan compression scan test systems and techniques
FR2938676B1 (fr) * 2008-11-18 2011-01-21 Eads Europ Aeronautic Defence Procede de reconnaissance de motifs sequentiels pour procede de traitement des messages de pannes
US8065638B2 (en) 2009-01-30 2011-11-22 Synopsys, Inc. Incremental concurrent processing for efficient computation of high-volume layout data
US8893061B2 (en) * 2009-01-30 2014-11-18 Synopsys, Inc. Incremental concurrent processing for efficient computation of high-volume layout data
US8006150B2 (en) * 2009-02-24 2011-08-23 Kuwait University Circuit and method for increasing scan cell observability of response compactors
US8527821B2 (en) * 2009-04-13 2013-09-03 Texas Instruments Incorporated Hybrid test compression architecture using multiple codecs for low pin count and high compression devices
WO2010124148A1 (en) * 2009-04-22 2010-10-28 Mentor Graphics Corporation At-speed scan testing with controlled switching activity
CN101551438B (zh) * 2009-04-28 2011-03-30 钰创科技股份有限公司 芯片数据压缩测试多路复用电路与芯片测试电路
US8108742B2 (en) * 2009-06-11 2012-01-31 Texas Instruments Incorporated Tap control of TCA scan clock and scan enable
US8112685B2 (en) 2009-06-11 2012-02-07 Texas Instruments Incorporated Serial compressed data I/O in a parallel test compression architecture
US7996741B2 (en) * 2009-08-24 2011-08-09 Syntest Technologies, Inc. Method and apparatus for low-pin-count scan compression
WO2011084535A2 (en) * 2009-12-15 2011-07-14 Corensic, Inc. Establishing a useful debugging state for a multithreaded computer program
EP2548037B1 (en) * 2010-03-16 2015-10-14 Mentor Graphics Corporation Test scheduling and test access in test compression environment
US8522097B2 (en) * 2010-03-16 2013-08-27 Qualcomm Incorporated Logic built-in self-test programmable pattern bit mask
WO2011144331A1 (en) * 2010-05-19 2011-11-24 Universität Potsdam High performance compaction for test responses with many unknowns
US8521464B2 (en) * 2010-06-03 2013-08-27 Synopsys, Inc. Accelerating automatic test pattern generation in a multi-core computing environment via speculatively scheduled sequential multi-level parameter value optimization
US8887018B2 (en) * 2010-06-11 2014-11-11 Texas Instruments Incorporated Masking circuit removing unknown bit from cell in scan chain
US8843796B2 (en) * 2010-06-11 2014-09-23 Mentor Graphics Corporation Profiling-based scan chain diagnosis
US8343781B2 (en) * 2010-09-21 2013-01-01 International Business Machines Corporation Electrical mask inspection
WO2012040293A1 (en) 2010-09-21 2012-03-29 Ansaldo Sts Usa, Inc. Method of analyzing the safety of a device employing on target hardware description language based fault injection
US8539389B2 (en) 2010-09-27 2013-09-17 Teseda Corporation Correlation of device manufacturing defect data with device electrical test data
US8473792B2 (en) * 2011-01-06 2013-06-25 Lsi Corporation Logic BIST for system testing using stored patterns
US10110226B2 (en) * 2011-02-24 2018-10-23 New York University Architecture, system, method, and computer-accessible medium for expedited-compaction for scan power reduction
US9378560B2 (en) * 2011-06-17 2016-06-28 Advanced Micro Devices, Inc. Real time on-chip texture decompression using shader processors
US8907697B2 (en) 2011-08-31 2014-12-09 Teseda Corporation Electrical characterization for a semiconductor device pin
US8615693B2 (en) 2011-08-31 2013-12-24 Lsi Corporation Scan test circuitry comprising scan cells with multiple scan inputs
US9939488B2 (en) 2011-08-31 2018-04-10 Teseda Corporation Field triage of EOS failures in semiconductor devices
EP2608039B1 (en) * 2011-12-22 2014-05-21 Nxp B.V. Secure low pin count scan
WO2013136248A1 (en) * 2012-03-11 2013-09-19 Cigol Digital Systems Ltd. Vlsi circuit signal compression
US8700962B2 (en) * 2012-07-27 2014-04-15 Lsi Corporation Scan test circuitry configured to prevent capture of potentially non-deterministic values
US9157939B2 (en) * 2012-08-09 2015-10-13 Infineon Technologies Ag System and device for determining electric voltages
US10345369B2 (en) 2012-10-02 2019-07-09 Synopsys, Inc. Augmented power-aware decompressor
US8856720B2 (en) 2013-01-03 2014-10-07 International Business Machines Corporation Test coverage of integrated circuits with masking pattern selection
US8839061B2 (en) * 2013-02-07 2014-09-16 Freescale Semiconductor, Inc. System and method for scan chain re-ordering
US9329235B2 (en) 2013-03-13 2016-05-03 Synopsys, Inc. Localizing fault flop in circuit by using modified test pattern
US9411014B2 (en) 2013-03-22 2016-08-09 Synopsys, Inc. Reordering or removal of test patterns for detecting faults in integrated circuit
US9239897B2 (en) 2013-04-03 2016-01-19 Synopsys, Inc. Hierarchical testing architecture using core circuit with pseudo-interfaces
US9057765B2 (en) 2013-04-12 2015-06-16 International Business Machines Corporation Scan compression ratio based on fault density
US9417287B2 (en) * 2013-04-17 2016-08-16 Synopsys, Inc. Scheme for masking output of scan chains in test circuit
US9588179B2 (en) 2013-06-12 2017-03-07 Synopsys, Inc. Scheme for masking output of scan chains in test circuit
US9009553B2 (en) * 2013-06-17 2015-04-14 Mentor Graphics Corporation Scan chain configuration for test-per-clock based on circuit topology
US10067187B2 (en) 2013-07-19 2018-09-04 Synopsys, Inc. Handling of undesirable distribution of unknown values in testing of circuit using automated test equipment
US9448282B1 (en) * 2014-02-12 2016-09-20 Cadence Design Systems, Inc. System and method for bit-wise selective masking of scan vectors for X-value tolerant built-in self test
CN104950241B (zh) * 2014-03-31 2017-10-24 联发科技(新加坡)私人有限公司 集成电路及在集成电路中建立扫描测试架构的方法
CN105629148B (zh) 2014-10-28 2018-08-28 国际商业机器公司 测试电路中的多个模块的测试方法和测试设备
JP6544958B2 (ja) * 2015-03-18 2019-07-17 ルネサスエレクトロニクス株式会社 半導体装置及び設計装置、スキャンフリップフロップ
JP6424271B2 (ja) * 2015-04-16 2018-11-14 ルネサスエレクトロニクス株式会社 半導体装置
DE102015110144B8 (de) * 2015-06-24 2018-06-28 Infineon Technologies Ag Chip und Verfahren zum Testen einer Verarbeitungskomponente eines Chips
US9881694B2 (en) 2015-07-15 2018-01-30 International Business Machines Corporation Built-in-self-test (BIST) engine configured to store a per pattern based fail status in a pattern mask register
US10380303B2 (en) 2015-11-30 2019-08-13 Synopsys, Inc. Power-aware dynamic encoding
US9864004B1 (en) * 2016-03-17 2018-01-09 Cadence Design Systems, Inc. System and method for diagnosing failure locations in electronic circuits
US10060978B2 (en) * 2016-06-21 2018-08-28 International Business Machines Corporation Implementing prioritized compressed failure defects for efficient scan diagnostics
US10184980B2 (en) * 2016-09-06 2019-01-22 Texas Instruments Incorporated Multiple input signature register analysis for digital circuitry
US9733307B1 (en) 2016-10-20 2017-08-15 International Business Machines Corporation Optimized chain diagnostic fail isolation
US9934138B1 (en) * 2016-12-07 2018-04-03 International Business Machines Corporation Application testing on a blockchain
US10613142B2 (en) * 2017-02-22 2020-04-07 International Business Machines Corporation Non-destructive recirculation test support for integrated circuits
US10247780B2 (en) * 2017-08-02 2019-04-02 Texas Instruments Incorporated Re-programmable self-test
US10416226B2 (en) 2017-08-03 2019-09-17 Globalfoundries Inc. Test response compaction scheme
US10685157B2 (en) * 2017-09-28 2020-06-16 Taiwan Semiconductor Manufacturing Company, Ltd. Power-aware scan partitioning
KR102453710B1 (ko) * 2018-02-12 2022-10-11 삼성전자주식회사 반도체 장치
US11193975B2 (en) * 2018-06-29 2021-12-07 Intel Corportion Compressed test patterns for a field programmable gate array
US10908213B1 (en) * 2018-09-28 2021-02-02 Synopsys, Inc. Reducing X-masking effect for linear time compactors
US11461522B1 (en) * 2018-12-06 2022-10-04 Cadence Design Systems, Inc. Emulation system supporting computation of four-state combinational functions
US10678667B1 (en) * 2018-12-21 2020-06-09 Micron Technology, Inc. Holdup self-tests for power loss operations on memory systems
US10866280B2 (en) * 2019-04-01 2020-12-15 Texas Instruments Incorporated Scan chain self-testing of lockstep cores on reset
US10963612B2 (en) * 2019-04-10 2021-03-30 Mentor Graphics Corporation Scan cell architecture for improving test coverage and reducing test application time
US11422186B1 (en) * 2019-06-20 2022-08-23 Synopsys, Inc. Per-shift X-tolerant logic built-in self-test
EP4025922A1 (en) * 2019-09-06 2022-07-13 Siemens Industry Software Inc. Universal compactor architecture for testing circuits
US11238129B2 (en) * 2019-12-11 2022-02-01 International Business Machines Corporation Root cause analysis using Granger causality
US11175338B2 (en) 2019-12-31 2021-11-16 Alibaba Group Holding Limited System and method for compacting test data in many-core processors
KR102279047B1 (ko) * 2020-03-31 2021-07-16 연세대학교 산학협력단 필터를 이용한 스캔 체인 고장 진단 방법 및 그를 위한 장치
US11423202B2 (en) 2020-08-31 2022-08-23 Siemens Industry Software Inc. Suspect resolution for scan chain defect diagnosis
US11862117B2 (en) * 2020-11-25 2024-01-02 Texas Instruments Incorporated Method and apparatus for matched buffer decompression
US11639962B1 (en) * 2021-03-12 2023-05-02 Xilinx, Inc. Scalable scan architecture for multi-circuit block arrays
US11592482B1 (en) * 2021-03-17 2023-02-28 Cadence Design Systems, Inc. Scan channel slicing for compression-mode testing of scan chains
US11740288B1 (en) * 2021-06-02 2023-08-29 Synopsys, Inc. Localization of multiple scan chain defects per scan chain
EP4361650A1 (en) * 2021-07-30 2024-05-01 Huawei Technologies Co., Ltd. Method for designing test circuit, and electronic device
WO2023107096A1 (en) * 2021-12-07 2023-06-15 Siemens Industry Software Inc. X-masking for in-system deterministic test
US20230288477A1 (en) * 2022-03-14 2023-09-14 Duke University Dynamic scan obfuscation for integrated circuit protections
US11782092B1 (en) 2022-05-18 2023-10-10 Stmicroelectronics International N.V. Scan compression through pin data encoding

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0511975A (ja) * 1991-07-04 1993-01-22 Hitachi Ltd データ圧縮/復元方法および装置
WO2004072660A2 (en) * 2003-02-13 2004-08-26 Mentor Graphics Corporation Compressing test responses using a compactor

Family Cites Families (97)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4122399A (en) 1977-12-07 1978-10-24 Bell Telephone Laboratories, Incorporated Distortion generator
US4320509A (en) 1979-10-19 1982-03-16 Bell Telephone Laboratories, Incorporated LSI Circuit logic structure including data compression circuitry
US4513418A (en) 1982-11-08 1985-04-23 International Business Machines Corporation Simultaneous self-testing system
US4503537A (en) 1982-11-08 1985-03-05 International Business Machines Corporation Parallel path self-testing system
JPS6026925U (ja) 1983-07-30 1985-02-23 株式会社豊田自動織機製作所 産業車両におけるエアクリ−ナの支持構造
JPS6128531A (ja) 1984-07-19 1986-02-08 Toyoda Gosei Co Ltd プラズマ処理装置
JPH032579Y2 (ja) 1984-11-24 1991-01-24
US4801870A (en) 1985-06-24 1989-01-31 International Business Machines Corporation Weighted random pattern testing apparatus and method
US4687988A (en) 1985-06-24 1987-08-18 International Business Machines Corporation Weighted random pattern testing apparatus and method
US4754215A (en) 1985-11-06 1988-06-28 Nec Corporation Self-diagnosable integrated circuit device capable of testing sequential circuit elements
JPS63286780A (ja) 1987-05-20 1988-11-24 Hitachi Ltd 故障検出方式および故障検出装置
JPH0815382B2 (ja) 1987-06-18 1996-02-14 三菱電機株式会社 磁石発電機
JPH0511975Y2 (ja) 1987-06-29 1993-03-25
JPH01239486A (ja) 1988-03-18 1989-09-25 Nec Corp 出力応答圧縮器
JPH02300304A (ja) 1989-05-11 1990-12-12 Nozaki Sewing Mach Shokai:Kk ふとんカバーにおける縫代処理方法
JP2591825B2 (ja) 1989-05-30 1997-03-19 富士通株式会社 圧縮データを用いた論理回路試験方法及びその装置
JP2584673B2 (ja) 1989-06-09 1997-02-26 株式会社日立製作所 テストデータ変更回路を有する論理回路テスト装置
WO1991010182A1 (en) 1989-12-21 1991-07-11 Bell Communications Research, Inc. Generator of multiple uncorrelated noise sources
JPH03214809A (ja) 1990-01-19 1991-09-20 Nec Corp リニアフィードバック・シフトレジスタ
DE69114183T2 (de) 1990-06-07 1996-05-30 Ibm System zur Reduzierung von Prüfdatenspeichern.
US5173906A (en) 1990-08-31 1992-12-22 Dreibelbis Jeffrey H Built-in self test for integrated circuits
JP2584172B2 (ja) 1991-08-23 1997-02-19 インターナショナル・ビジネス・マシーンズ・コーポレイション デイジタル試験信号発生回路
US5369648A (en) 1991-11-08 1994-11-29 Ncr Corporation Built-in self-test circuit
JPH05215816A (ja) 1991-12-06 1993-08-27 Nec Corp 情報処理装置
US5301199A (en) 1991-12-16 1994-04-05 Nippon Telegraph And Telephone Corporation Built-in self test circuit
JP2711492B2 (ja) 1992-03-05 1998-02-10 日本電信電話株式会社 組込み自己試験回路
JP2882743B2 (ja) 1993-12-21 1999-04-12 川崎製鉄株式会社 半導体集積回路装置
JP3179646B2 (ja) 1993-12-28 2001-06-25 日本電信電話株式会社 共有型試験レジスタおよびこれを用いた組み込み自己試験回路
US5631913A (en) 1994-02-09 1997-05-20 Matsushita Electric Industrial Co., Ltd. Test circuit and test method of integrated semiconductor device
JP3403814B2 (ja) 1994-07-04 2003-05-06 富士通株式会社 自己試験機能組込み型回路
US5642362A (en) 1994-07-20 1997-06-24 International Business Machines Corporation Scan-based delay tests having enhanced test vector pattern generation
JP3499034B2 (ja) * 1995-03-13 2004-02-23 富士通株式会社 非対称信号検出回路
US5574733A (en) 1995-07-25 1996-11-12 Intel Corporation Scan-based built-in self test (BIST) with automatic reseeding of pattern generator
US5831992A (en) * 1995-08-17 1998-11-03 Northern Telecom Limited Methods and apparatus for fault diagnosis in self-testable systems
US5680543A (en) 1995-10-20 1997-10-21 Lucent Technologies Inc. Method and apparatus for built-in self-test with multiple clock circuits
US5790562A (en) * 1996-05-06 1998-08-04 General Motors Corporation Circuit with built-in test and method thereof
US5991909A (en) 1996-10-15 1999-11-23 Mentor Graphics Corporation Parallel decompressor and related methods and apparatuses
US5694402A (en) 1996-10-22 1997-12-02 Texas Instruments Incorporated System and method for structurally testing integrated circuit devices
US5991898A (en) 1997-03-10 1999-11-23 Mentor Graphics Corporation Arithmetic built-in self test of multiple scan-based integrated circuits
US5968194A (en) 1997-03-31 1999-10-19 Intel Corporation Method for application of weighted random patterns to partial scan designs
JPH1130646A (ja) 1997-07-10 1999-02-02 Nec Eng Ltd 半導体集積回路及びそれに含まれるテスト回路
US6272653B1 (en) 1997-11-14 2001-08-07 Intrinsity, Inc. Method and apparatus for built-in self-test of logic circuitry
JP3047883B2 (ja) 1998-03-17 2000-06-05 日本電気株式会社 テストモードを有する半導体装置の出力回路
US6256759B1 (en) 1998-06-15 2001-07-03 Agere Systems Inc. Hybrid algorithm for test point selection for scan-based BIST
US6286119B1 (en) 1998-12-22 2001-09-04 Nortel Networks Limited Delay fault testing with IEEE 1149.1
US6467058B1 (en) 1999-01-20 2002-10-15 Nec Usa, Inc. Segmented compaction with pruning and critical fault elimination
JP2000276510A (ja) * 1999-03-26 2000-10-06 Kawasaki Steel Corp 回路設計装置および回路設計プログラム記憶媒体
US6308290B1 (en) 1999-05-20 2001-10-23 International Business Machines Corporation Look ahead scan chain diagnostic method
US6590929B1 (en) 1999-06-08 2003-07-08 International Business Machines Corporation Method and system for run-time logic verification of operations in digital systems
US6463560B1 (en) * 1999-06-23 2002-10-08 Agere Systems Guardian Corp. Method for implementing a bist scheme into integrated circuits for testing RTL controller-data paths in the integrated circuits
US6557129B1 (en) 1999-11-23 2003-04-29 Janusz Rajski Method and apparatus for selectively compacting test responses
US6353842B1 (en) * 1999-11-23 2002-03-05 Janusz Rajski Method for synthesizing linear finite state machines
US6874109B1 (en) 1999-11-23 2005-03-29 Janusz Rajski Phase shifter with reduced linear dependency
US6327687B1 (en) 1999-11-23 2001-12-04 Janusz Rajski Test pattern compression for an integrated circuit test environment
US6684358B1 (en) * 1999-11-23 2004-01-27 Janusz Rajski Decompressor/PRPG for applying pseudo-random and deterministic test patterns
JP3845016B2 (ja) * 1999-11-23 2006-11-15 メンター・グラフィクス・コーポレーション テスト中回路技術分野へのテストパターンの連続的な適用およびデコンプレッション
JP2001155043A (ja) * 1999-11-25 2001-06-08 Nec Ic Microcomput Syst Ltd 論理シミュレーションにおけるタイミングチェック方法およびタイミングチェック方法を記録した記録媒体
US6421794B1 (en) * 2000-03-09 2002-07-16 John T. Chen Method and apparatus for diagnosing memory using self-testing circuits
DE60108993T2 (de) 2000-03-09 2005-07-21 Texas Instruments Inc., Dallas Anpassung von "Scan-BIST"-Architekturen für einen Betrieb mit niedrigem Verbrauch
US6611933B1 (en) * 2000-04-12 2003-08-26 International Business Machines Corporation Real-time decoder for scan test patterns
US6510398B1 (en) 2000-06-22 2003-01-21 Intel Corporation Constrained signature-based test
US6813761B1 (en) * 2000-06-30 2004-11-02 Microsoft Corporation Methods for enhancing flow analysis
JP4228061B2 (ja) 2000-12-07 2009-02-25 富士通マイクロエレクトロニクス株式会社 集積回路の試験装置および試験方法
US6988232B2 (en) * 2001-07-05 2006-01-17 Intellitech Corporation Method and apparatus for optimized parallel testing and access of electronic circuits
US7644333B2 (en) * 2001-12-18 2010-01-05 Christopher John Hill Restartable logic BIST controller
US7552373B2 (en) * 2002-01-16 2009-06-23 Syntest Technologies, Inc. Method and apparatus for broadcasting scan patterns in a scan-based integrated circuit
US7185253B2 (en) * 2002-03-27 2007-02-27 Intel Corporation Compacting circuit responses
JP2003332443A (ja) * 2002-05-08 2003-11-21 Toshiba Corp 半導体集積回路とその設計支援装置およびテスト方法
US6745359B2 (en) 2002-06-06 2004-06-01 Logicvision, Inc. Method of masking corrupt bits during signature analysis and circuit for use therewith
JP4031954B2 (ja) * 2002-06-11 2008-01-09 富士通株式会社 集積回路の診断装置および診断方法
US6671839B1 (en) * 2002-06-27 2003-12-30 Logicvision, Inc. Scan test method for providing real time identification of failing test patterns and test bist controller for use therewith
JP4211326B2 (ja) * 2002-08-28 2009-01-21 ヤマハ株式会社 半導体検査方法及び装置
US7131046B2 (en) * 2002-12-03 2006-10-31 Verigy Ipco System and method for testing circuitry using an externally generated signature
US7058869B2 (en) 2003-01-28 2006-06-06 Syntest Technologies, Inc. Method and apparatus for debug, diagnosis, and yield improvement of scan-based integrated circuits
US7509550B2 (en) 2003-02-13 2009-03-24 Janusz Rajski Fault diagnosis of compressed test responses
US7437640B2 (en) 2003-02-13 2008-10-14 Janusz Rajski Fault diagnosis of compressed test responses having one or more unknown states
US7302624B2 (en) 2003-02-13 2007-11-27 Janusz Rajski Adaptive fault diagnosis of compressed test responses
JP3828502B2 (ja) 2003-03-26 2006-10-04 株式会社東芝 集積回路
US6907554B2 (en) * 2003-05-09 2005-06-14 International Business Machines Corporation Built-in self test system and method for two-dimensional memory redundancy allocation
CN1277181C (zh) * 2003-06-25 2006-09-27 中国科学院计算技术研究所 一种单输出无反馈时序测试响应压缩电路
US7032148B2 (en) 2003-07-07 2006-04-18 Syntest Technologies, Inc. Mask network design for scan-based integrated circuits
ATE374951T1 (de) * 2003-09-26 2007-10-15 Nxp Bv Verfahren und system zum selektiven maskieren von testantworten
JP2005121399A (ja) * 2003-10-15 2005-05-12 Matsushita Electric Ind Co Ltd バーンインシステムおよびバーンイン試験方法
US7506332B2 (en) * 2004-03-24 2009-03-17 Sap Ag Object set optimization using dependency information
US7239978B2 (en) 2004-03-31 2007-07-03 Wu-Tung Cheng Compactor independent fault diagnosis
JP4294531B2 (ja) * 2004-04-06 2009-07-15 三菱電機株式会社 論理回路検証・テストシステム
JP2005309867A (ja) * 2004-04-22 2005-11-04 Fujitsu Ltd マルチコア・プロセサ試験方法
US7231570B2 (en) 2004-05-26 2007-06-12 Syntest Technologies, Inc. Method and apparatus for multi-level scan compression
JP4733935B2 (ja) * 2004-06-29 2011-07-27 富士通セミコンダクター株式会社 試験パターン生成装置、テスト回路試験装置、試験パターン生成方法、テスト回路試験方法、試験パターン生成プログラム、テスト回路試験プログラム、および記録媒体
US7143324B2 (en) 2004-11-04 2006-11-28 Avago Technologies General Ip (Singapore) Pte. Ltd. System and method for automatic masking of compressed scan chains with unbalanced lengths
US7210083B2 (en) 2004-12-16 2007-04-24 Lsi Logic Corporation System and method for implementing postponed quasi-masking test output compression in integrated circuit
US7610527B2 (en) * 2005-03-16 2009-10-27 Nec Laboratories America, Inc. Test output compaction with improved blocking of unknown values
US7260760B2 (en) * 2005-04-27 2007-08-21 International Business Machines Corporation Method and apparatus to disable compaction of test responses in deterministic test-set embedding-based BIST
US7631237B2 (en) * 2005-05-23 2009-12-08 Kabushiki Kaisha Toshiba Multi-test method for using compare MISR
EP1994419B1 (en) 2006-02-17 2013-11-06 Mentor Graphics Corporation Multi-stage test response compactors
US7558996B2 (en) * 2006-03-16 2009-07-07 Kabushiki Kaisha Toshiba Systems and methods for identifying errors in LBIST testing
US7404126B2 (en) * 2006-03-29 2008-07-22 Texas Instruments Incorporated Scan tests tolerant to indeterminate states when employing signature analysis to analyze test outputs

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0511975A (ja) * 1991-07-04 1993-01-22 Hitachi Ltd データ圧縮/復元方法および装置
WO2004072660A2 (en) * 2003-02-13 2004-08-26 Mentor Graphics Corporation Compressing test responses using a compactor

Also Published As

Publication number Publication date
US20130305107A1 (en) 2013-11-14
EP1994419A4 (en) 2012-04-04
CN102129031B (zh) 2015-03-11
US20180156867A1 (en) 2018-06-07
US8418007B2 (en) 2013-04-09
US7913137B2 (en) 2011-03-22
WO2007098167A3 (en) 2008-04-24
US10120024B2 (en) 2018-11-06
US20160320450A1 (en) 2016-11-03
CN102129031A (zh) 2011-07-20
JP2012154947A (ja) 2012-08-16
US9778316B2 (en) 2017-10-03
CN101405609B (zh) 2012-11-14
JP5554365B2 (ja) 2014-07-23
WO2007098167A2 (en) 2007-08-30
US9250287B2 (en) 2016-02-02
US20110231722A1 (en) 2011-09-22
EP2677328A1 (en) 2013-12-25
US20070234169A1 (en) 2007-10-04
US7818644B2 (en) 2010-10-19
US8914694B2 (en) 2014-12-16
US20070234157A1 (en) 2007-10-04
EP1994419A2 (en) 2008-11-26
CN101405609A (zh) 2009-04-08
US20150160290A1 (en) 2015-06-11
EP1994419B1 (en) 2013-11-06
EP2677328B1 (en) 2015-07-29
US20070234163A1 (en) 2007-10-04
JP5268656B2 (ja) 2013-08-21

Similar Documents

Publication Publication Date Title
JP5554365B2 (ja) マルチステージ・テスト応答コンパクタ
JP4791954B2 (ja) コンパクタを使用する試験応答の圧縮
US8280688B2 (en) Compactor independent direct diagnosis of test hardware
US8301414B2 (en) Compactor independent fault diagnosis
US8280687B2 (en) Direct fault diagnostics using per-pattern compactor signatures
US7962820B2 (en) Fault diagnosis of compressed test responses
US20150135030A1 (en) Speeding up defect diagnosis techniques
US10963612B2 (en) Scan cell architecture for improving test coverage and reducing test application time
Holst et al. A diagnosis algorithm for extreme space compaction
Li et al. Column parity row selection (CPRS) BIST diagnosis technique: Modeling and analysis
TWI403746B (zh) 測試圖案最佳化的方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111005

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111013

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20111228

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120111

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120113

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120120

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120308

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120315

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120413

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120517

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20120629

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120816

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120823

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121004

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20121218

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20121226

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130131

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130304

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130507

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5268656

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees