(57)【要約】集積回路をテストする方法が、テストベクトルビットを直列的に、スキャン用の第１クロック信号(42)でタイミング制御されるシフトレジスタ装置(20)に供給することによって、テストベクトルをシフトレジスタ装置に供給するステップを具えている。上記テストベクトルビットは、第１クロック信号(42)でタイミング制御されるシフトレジスタ装置内の隣接する部分間で受け渡され、テストベクトルに対する集積回路の出力応答が供給されて解析される。テストベクトルに対する集積回路の出力応答は、第１クロック信号より低速な第２クロック信号(56)の制御下で供給される。このテスト方法は、テストベクトルをシフトレジスタ内にシフト入力し結果をシフトレジスタからシフト出力する速度を増加させることによって処理を加速するが、テスト処理の安定性は具えていない。さらに、この方法は、回路基板上に集積すべきテスト回路に複雑性を加える必要なしに実現することができる。
2009508101.tif 000002
【特許請求の範囲】
【請求項１】
集積回路をテストする方法において、
テストベクトルビットを直列的に、スキャン用の第１クロック信号でタイミング制御されるシフトレジスタ装置に供給することによって、テストベクトルを前記シフトレジスタに供給し、前記テストベクトルビットを、前記第１クロック信号でタイミング制御される前記シフトレジスタ装置内の隣接する部分間に伝搬させるステップと；
前記テストベクトルを、前記シフトレジスタ装置から前記集積回路の端子に供給するステップと；
イネーブル信号の制御下で、前記テストベクトルに対する前記集積回路の出力応答を、並列な出力応答ビットとして前記シフトレジスタ装置に供給するステップと；
前記出力応答ビットを、前記第１クロック信号でタイミング制御される前記シフトレジスタ装置内の隣接する部分間に伝搬させ、前記出力応答を、前記第１クロック信号でタイミング制御される前記シフトレジスタ装置から直列的に出力するステップと；
前記出力応答を解析して前記集積回路の機能をテストするステップとを具え、
前記テストベクトルに対する前記集積回路の前記出力応答は、前記第１クロック信号より低速な第２クロック信号の制御下で供給されることを特徴とする集積回路のテスト方法。
【請求項２】
前記第１クロック信号及び前記第２クロック信号が、少なくとも第１クロック信号部分及び第２クロック信号部分を有する単一の信号で構成され、前記第１クロック信号部分と前記第２クロック信号部分とは異なるクロックレートを有して、それぞれ前記第１クロック信号及び前記第２クロック信号を規定することを特徴とする請求項１に記載のテスト方法。
【請求項３】
さらに、前記第１クロック信号部分の終端と前記第２クロック信号部分の先頭との間にセットアップ期間を設けるステップを具え、前記イネーブル信号は前記セットアップ期間中に遷移を有することを特徴とする請求項２に記載のテスト方法。
【請求項４】
前記セットアップ期間中に、前記テストベクトルを前記シフトレジスタ装置から前記集積回路の端子に供給することを特徴とする請求項３に記載のテスト方法。
【請求項５】
前記セットアップ期間の持続時間が、前記第２クロック信号部分の１クロックサイクル分にほぼ相当することを特徴とする請求項３または４に記載のテスト方法。
【請求項６】
さらに、
前記第２クロック信号部分の終端と、次の前記第１クロック信号部分の先頭との間にエンド期間を設けるステップを具え、前記イネーブル信号は前記エンド期間中に遷移を有することを特徴とする請求項２〜５に記載のテスト方法。
【請求項７】
前記エンド期間中に、前記テストベクトルを前記シフトレジスタ装置から前記集積回路の端子に供給することを特徴とする請求項６に記載のテスト方法。
【請求項８】
前記エンド期間の持続時間が、前記第２クロック信号部分の１クロックサイクル分にほぼ相当することを特徴とする請求項６または７に記載のテスト方法。
【請求項９】
コンピュータ上で実行した際に、請求項１〜８のいずれかに記載の方法を実行するように構成されたコンピュータプログラムコード手段を具えたコンピュータプログラム。
【請求項１０】
コンピュータ可読媒体上に埋め込まれた請求項９に記載のコンピュータプログラム。
【請求項１１】
集積回路とテスト装置とを具えたシステムであって、
前記集積回路が、
組合せ論理回路と；
前記組合せ論理回路のテストを可能にするための集積テスト回路であって、テストベクトルを直列的なテストベクトルビットとして受信するシフトレジスタ装置と、前記シフトレジスタ装置の入力及び出力と前記組合せ論理回路の端子との間の接続とを具えた集積テスト回路と
を具えているシステムにおいて、
前記システムがさらに、
前記テストベクトルビットが前記シフトレジスタ装置内の隣接する部分間を伝搬するタイミングを制御するための、スキャン用の第１クロック信号を発生する手段と；
前記組合せ論理回路の出力応答を並列な出力応答ビットとして前記シフトレジスタ装置に供給することを制御するためのイネーブル信号を発生する手段とを具え、
前記第１クロック信号は、前記出力応答ビットが前記シフトレジスタ装置内の隣接する部分間を伝搬するタイミング、及び前記出力応答が前記シフトレジスタ装置から出力されるタイミングも調整し、
前記システムがさらに、前記集積回路の前記出力応答の前記シフトレジスタ装置への供給を制御するための、前記第１クロック信号より低速な第２クロック信号を発生する手段を具えている
ことを特徴とするシステム。
【請求項１２】
さらに、前記出力応答を解析して前記集積回路の機能をテストする手段を具えていることを特徴とする請求項１１に記載のシステム。
【請求項１３】
前記第１クロック信号を発生する手段及び前記第２クロック信号を発生する手段が、少なくとも第１クロック信号部分及び第２クロック信号部分を有する単一のクロック信号を発生する手段で構成され、前記第１クロック信号部分と前記第２クロック信号部分とが異なるクロックレートを有して、それぞれ前記第１クロック信号及び前記第２クロック信号を規定することを特徴とする請求項１１または１２に記載のシステム。
【請求項１４】
前記単一のクロック信号を発生する手段がさらに、前記第１クロック信号部分の終端と前記第２クロック信号部分の先頭との間にセットアップ期間を設ける手段を具えていることを特徴とする請求項１３に記載のシステム。
【請求項１５】
前記セットアップ期間の持続時間が、前記第１クロック信号部分の１クロックサイクル分にほぼ相当することを特徴とする請求項１４に記載のシステム。
【請求項１６】
前記単一のクロック信号を発生する手段が、前記第２クロック信号部分の終端と、次の前記第１クロック信号部分の先頭との間にエンド期間を設ける手段を具え、前記イネーブル信号は前記エンド期間中に遷移を有することを特徴とする請求項１３〜１５に記載のシステム。
【請求項１７】
前記エンド期間の持続時間が、前記第１クロック信号部分の１クロックサイクル分にほぼ相当することを特徴とする請求項１６に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般に、製造中の半導体集積回路のテストに関するものであり、より詳細には、スキャンテスト技術を用いた組合せロジックアレイのテストに関するものである。
【背景技術】
【０００２】
スキャンテスト技術は本質的に、（「ベクトル」と称する）テストパターンをデバイスパッケージのピンに入れ、デバイスのクロック速度に応じた特定時刻における出力応答を監視することを含む。一組のテストベクトルを用いて、テスト中のデバイスの挙動を測定可能にする。これらのベクトルは、デバイス内の製造欠陥の検出を可能にするように設計されている。
【０００３】
集積密度の増加は、ウエハー上に同時に形成されるチップ上により近接して配置することのできる能動素子数が増加することにより、集積回路デバイスの機能、性能、及び製造の経済性を大きく増加させてきた。しかし、すべての動作条件についてデバイスが正しく動作することを判定することができるためには、十分な数の異なるベクトルをデバイスに通して伝搬させて製造欠陥のないことを確認しなければならない。
【０００４】
比較的少数の入力を含み、前の実行サイクルへの依存性が比較的少ない比較的単純な回路については、比較的小規模かつ単純なテストプログラムを構成して製造欠陥のないことを確認することができる。しかし、集積回路デバイスの機能の増加、及びこれに対応した入力数の増加、及び前の多数の実行サイクルへの依存性の増加により、必要なテストベクトルの数は劇的に増加し、これに対応して必要なテスト時間も増加する。必要なテスト時間は許容外になり得る。
【０００５】
図１に、スキャンテスト・ハードウェアを簡略化形式で示す。
【０００６】
テスト中のデバイスは組合せ論理ユニット１０を具え、この論理ユニットが入力パラメータに対する回路応答を決定する。論理ユニット１０は主入力１２及び主出力１４を有し、スキャンテスト手順を施す必要のない電力線及びクロック線は除外する。
【０００７】
テスト・ハードウェアは、スキャンフリップフロップ２２のチェーンから成るシフトレジスタ２０を具え、簡単のためスキャンフリップフロップ２２は４つだけ示す。これらのフリップフロップはスキャンクロック２４によってクロック動作し、スキャンクロック２４は、テストベクトルがスキャン入力２６からレジスタ内に伝搬するタイミングを制御する。シフトレジスタ２０は本質的にシリアル−パラレル・コンバータ（直列−並列変換器）として機能し、ベクトル用のシリアルデータをスキャン入力２６で受信する。
【０００８】
各フリップフロップは２つの入力を有し、出力に伝搬される入力信号はスキャンイネーブル信号２８に依存する。スキャンイネーブル信号２８は、論理ユニット１０からの一組の信号がこれらのフリップフロップを通って伝搬されることを可能にする。従って、回路はスキャンベクトルをシフト入力するように動作し、スキャンベクトルは並列的に論理ユニット１０に供給される。従って、論理ユニット１０からの出力は、スキャンイネーブル信号２８の制御下で並列ベクトルとしてシフトレジスタ２０に供給される。この出力ベクトルはシフトレジスタ２０内で一旦伝搬されて、シリアル様式でシフトレジスタ２０の出力２９に出る。同時に、新たなスキャンベクトルをシフトレジスタ２０内に供給することができる。
【０００９】
各フリップフロップは、Ｄ入力にマルチプレクサ（多重器）を有するＤ型フリップフロップとして実現することができる。このマルチプレクサは、２つの入力のどちらをフリップフロップのＤ入力に供給するかをスキャンイネーブル信号２８に基づいて制御する。図２に、フリップフロップ３０及びマルチプレクサ３２を具えたフリップフロップの設計を示す。
【００１０】
上記シリアル出力を予期した出力と比較して、組合せ論理回路によって正しい回路機能が実現されているか否かを判定する。
【００１１】
図３に、図１のシフトレジスタ回路２０の動作のタイミングを示す。
【００１２】
スキャン入力２６のプロット４０はシリアル・スキャンベクトルを表し、このスキャンベクトルのビットはスキャンクロック（プロット４２）でタイミング制御される。期間４４中には、スキャンベクトルはシフトレジスタ２０内を伝搬する。期間４６中には、スキャンイネーブル線（プロット４３）がトグル（反転切替）され、これにより、スキャンクロックパルスが期間４６内に、論理ユニット１０からシフトレジスタ２０内に結合されたスキャンベクトルを出力２９に生じさせる。この期間４６は「捕捉サイクル」として考えることができ、組合せ論理回路はこのクロックサイクル中に通常（ノーマル）モードで動作し、従って入力に対する論理回路の応答をテストすることができる。期間４８中には、論理回路からの出力はレジスタ２０からシフト出力され、同時に新たなベクトルが供給される。プロット５０はスキャン出力信号である。
【００１３】
捕捉サイクル４６中には、スキャン入力信号２６は斜線領域５２で示すように使用されない（最後にシフトされた値は保持することができるが、このことは重要ではない）。
【００１４】
スキャンテストサイクルが動作することのできる速度には限界が存在し、この限界は、スキャンクロック信号（プロット４２）の最大周波数として現われる。例えば、この最大クロック信号周波数は約10MHzである。この限界は特に、論理回路が入力ベクトルに応答し、応答出力ベクトルがシフトレジスタ内に正しく伝搬されることを保証する必要性によって決まる。
【００１５】
【特許文献１】米国特許第６５９１３８８号明細書
【００１６】
米国特許第６５９１３８８号明細書は、複数のシフトレジスタのチェーンを並列的に設け、より高速の追加的なシフトレジスタを用いて、このチェーンの入力及び出力を制御し、マルチプレクサ及びデマルチプレクサ（多重分離器）として機能することによって、テストベクトルがシフトレジスタ装置内を伝搬してシフトレジスタ構成から出る速度を増加させるスキャンテストシステムを開示している。
【発明の開示】
【課題を解決するための手段】
【００１７】
本発明によれば、集積回路をテストする方法が提供され、この方法は：
テストベクトルビットを直列的に、スキャン用の第１クロック信号でタイミング制御されるシフトレジスタ装置内に供給することによって、テストベクトルをシフトレジスタ装置に供給し、このテストベクトルを、上記第１クロック信号でタイミング制御される上記シフトレジスタ装置内の隣接する部分間に伝搬させるステップと；
上記テストベクトルを上記シフトレジスタ装置から上記集積回路の端子に供給するステップと；
イネーブル信号の制御下で、上記テストベクトルに対する上記集積回路の出力応答を、並列な出力応答ビットとして上記シフトレジスタ装置に供給するステップと；
上記出力応答ビットを、上記第１クロック信号でタイミング制御される上記シフトレジスタ装置内の隣接する部分間に伝搬させ、上記出力応答を、上記第１クロック信号でタイミング制御される上記シフトレジスタ装置から直列的に出力するステップと；
上記出力応答を解析して上記集積回路の機能をテストするステップとを具え、
上記テストベクトルに対する上記集積回路の上記出力応答は、上記第１クロック信号より低速な第２クロック信号による別な制御下で供給される。
【００１８】
このテスト方法は、テストベクトルをシフトレジスタ内にシフト入力して結果をシフトレジスタからシフト出力する速度を増加させることによって処理を加速するが、テスト処理の安定性は具えていない。さらに、この方法は、回路基板上に集積すべきテスト回路に複雑性を加える必要なしに実現することができる。
【００１９】
上記シフトレジスタの各部分はフリップフロップで構成することが好ましい。
上記第１及び第２クロック信号は少なくとも第１及び第２部分を有する単一の信号で構成することができ、これらの第１部分と第２部分とは異なるクロックレート（クロック速度）を有して、それぞれ上記第１及び第２クロック信号を規定する。従って、テスト処理を実現するために必要なクロック信号の数は増加せず、ここでもテスト装置のハードウェアを、異なる線路上の複数のクロック信号間で選択することを可能にするように変更する必要はない。
【００２０】
この方法はさらに、上記第１クロック信号の終端と上記第２クロック信号の先頭との間にセットアップ（設定）期間を設けるステップを具え、上記イネーブル信号はこのセットアップ期間中に遷移を有する。
【００２１】
この方策は、上記イネーブル信号の先頭がシフトレジスタのラッチに供給されることの遅延を許容する。上記セットアップ期間中に、テストベクトルが上記シフトレジスタ装置から上記集積回路の端子に供給される。このことは、論理回路が、テストされる機能をこの時間中に実行することができることを意味する。上記セットアップ期間の持続時間は例えば、上記第２クロック信号部分の１クロックサイクル分にほぼ相当する。
【００２２】
本発明の方法はさらに、上記第２クロック信号部分の終端と次の上記第１クロック信号部分の先頭との間にエンド（終端）期間を設けるステップを具え、上記イネーブル信号はこのエンド期間中に遷移を有する。
【００２３】
この方策は、上記イネーブル信号の終端がシフトレジスタのラッチに供給されることの遅延を許容する。ここでも、上記セットアップ期間中に、テストベクトルが上記シフトレジスタ装置から上記集積回路の端子に供給され、上記エンド期間の持続時間も、上記第２クロック信号部分の１クロックサイクル分にほぼ相当する。
【００２４】
本発明は、集積回路及びテスト装置を具えたシステムも提供し、この集積回路は：
組合せ論理回路と；
この組合せ論理回路のテストを可能にする集積テスト回路とを具え、この集積テスト回路は、テストベクトルを直列的なテストベクトルビットとして受信するシフトレジスタ装置と、このシフトレジスタ装置の入力及び出力と上記組合せ論理回路の端子との間の接続とを具え、
上記システムはさらに：
上記テストベクトルビットが上記シフトレジスタ装置内の隣接する部分間を伝搬するタイミングを制御するためのスキャン用の第１クロック信号を発生する手段と；
上記組合せ論理回路の出力応答を並列な出力応答ビットとして上記シフトレジスタ装置に供給することを制御するためのイネーブル信号を発生する手段とを具え、
上記第１クロック信号は、上記出力応答ビットが上記シフトレジスタ装置内の隣接する部分間を伝搬するタイミング、及び上記出力応答が上記シフトレジスタ装置から出力されるタイミングも制御し、
上記システムはさらに、上記集積回路の上記出力応答の上記シフトレジスタ装置への供給を制御するための、上記第１クロック信号より低速な第２クロック信号を発生する手段を具えている。
【００２５】
上記信号の発生は、上記テスト装置の一部分とすることができる。
【００２６】
本発明は、本発明の方法のステップを実行するためのコンピュータプログラムも提供する。
【００２７】
以下、本発明の実施例を、図面を参照しながら詳細に説明する。
【発明を実施するための最良の形態】
【００２８】
本発明は、テストベクトルをシフトレジスタ内に入力して結果をシフトレジスタから出力するためのクロック信号と、テスト中の回路からテスト結果を得るためのクロック信号とに異なる速度のクロック信号を用いる、集積回路をテストする方法に関するものである。このことは、テスト中の回路内の伝搬遅延を考慮したままで、設計速度限界を増加させることを可能にする。
【００２９】
本発明は、図１の回路のようなベクトルベースのテスト回路を動作させることのできる最大速度に影響する複数の因子の認識に基づくものである。本発明を説明する前に、これらの因子を説明する。
【００３０】
回路を動作させることのできる速度には、本質的に次の４つの限界が存在する。
【００３１】
(i) テストベクトルが論理回路にとって利用可能になってから、結果のデータがシフトレジスタを通って伝搬される準備ができるまでに必要な時間遅延（図１の論理ユニット１０を通ってＱからＤＢに至る経路）。
不十分な遅延は、捕捉サイクル４６中に不適正なデータの捕捉を生じさせ得る。
【００３２】
ベクトルデータをシフトレジスタ内にシフト入力する最終サイクル中のスキャンクロック信号の立上りエッジは、テストベクトルをＩＣに供給し、テスト中のＩＣがこのテストベクトルを処理するために利用可能な時間の始点を規定する。図３にはこの時刻を５５として示す。捕捉サイクル４６中のスキャンクロックの次の立上りエッジが、テストベクトルのデータを処理するために利用可能な時間の終点を決める。このタイミングを５６として示す。この期間（５５から５６まで）は、フリップフロップのフィードバック経路（ＱからＤＢまで）より短くなり得る。このことは、ＩＣ内に深い論理が存在する際に、あるいは、高速なテストを行おうとするに当たりスキャンクロックの周期が過剰に短くされた際に発生する。必要な時間は、モデル化（モデリング）ツールを用いて事前に定めることができる。
【００３３】
(ii) スキャンイネーブル信号にとってあり得る遅延。
スキャンイネーブル信号はゲート処理されることが多く、フリップフロップに到着する前に、非常に多数のバッファ及びインバータ（高ファンアウトの合成）を通過する。これによる遅延は、設計において事前に良く考慮に入れていなければ、数ナノ秒になり得るし、高速テストの周波数に影響を与え得る。
【００３４】
(iii) スキャン出力と外部テスト回路の入力との間にあり得る遅延。
スキャンチェーン内の最終フリップフロップの出力は、回路信号の出力に供給される前に他の信号と多重化されることが多い。実際に、上記出力は出力パッドに達する前に多数のマルチプレクサを通過し得る。このことは、出力パッドが多くのテストモードで共用され、境界スキャンセル等を通過させ得るので、必要になり得る。この遅延も、シフト出力動作の速度を制約し得るし、テストの速度を制限し得る。
【００３５】
(iv) クロック信号にあり得る遅延。
ベクトルテストは、同じクロックサイクル内にチップ全体を通して、すべての入力信号が適正なラッチまたはフリップフロップに存在することを要求する。この要求を満たすために、いわゆる「クロックツリー」を用いて、複数のクロック信号をチップ全体を通して（ほぼ）同時に送達する。もちろん、ツリーの異なるブランチ（分枝）からクロック信号を受信する、チップ内の分離した異なる領域間の正確な同期からの幾分の変動は存在する。大きなクロックツリーについては、クロック・レイテンシは数ナノ秒のオーダーになり得る。テスト期間が非常に短くなると、この遅延は、データがシフトレジスタを通る伝搬中に不適正なデータ捕捉を生じさせ得る。特に、最初のフリップフロップは前のクロックサイクル中に捕捉されることを意図されたデータを捕捉し得る。
【００３６】
これらの制限の各々が、テスト回路用の最大可能なクロック速度を生じさせる。これらの制限のどれが支配的であるかは、特定の応用に依存する。
【００３７】
本発明は、データをシフトレジスタ内でシフトさせる速度の増加を与える。適正に実現したシフトレジスタは、ＩＣのクロック回路速度よりも大幅に高い速度で動作することができる。さらに、このシフト段階は一般にスキャンテストの最大の部分である。一般に、最長のスキャンチェーンは1000フリップフロップのオーダーを有し得る。このことの実現は、スキャンテストがテストデータ捕捉のサイクル毎に1000サイクルのシフトを行うことである。本発明は、互いに異なる捕捉サイクル周波数及びシフト周波数を提供し、これによりテストデータの捕捉は比較的低速であるが、シフトレジスタの伝搬は比較的高速である。
【００３８】
図４に、本発明の方法を用いた図１の回路の動作のタイミングを示す。図３と同じ変数をプロットし、同じ参照番号を用いる。
【００３９】
捕捉サイクル４６はここでも、論理ユニット１０からシフトレジスタ内へのデータの転送をトリガするためのクロックパルスを有する。しかし、このクロックパルスはスキャンクロックの他のパルスより広幅であり、これによりスキャンクロックは異なるクロックレートの２つの領域を有効に有する。一方の領域はラッチ・クロック信号部分、他方は捕捉クロック信号部分と考えることができる。
【００４０】
捕捉サイクルの動作用のクロック信号の周波数は、静的タイミング解析（ＳＴＡ：Static Timing Analysis）機能を用いて決定することができ、このクロック周波数は、テスト中のデバイスにあり得る最大可能な捕捉周波数に達する。
【００４１】
捕捉サイクル４６は３つの部分６０、６２、６４に分割され、中央部分６２はクロックパルスを含む。
【００４２】
部分６０はスキャンクロックパルス部分６２を排除し、この部分６０は、より高速なラッチ・スキャンクロック信号部分の終端と、より低速な捕捉サイクル・クロック信号部分の先頭との間のセットアップ期間として機能する。スキャンイネーブル信号はこのセットアップ期間中に遷移を有し、このセットアップ期間は、スキャンイネーブル線におけるあらゆる遅延がテスト動作に悪影響しないことを保証する。最終のラッチ・クロックパルスと捕捉サイクル・クロックパルスとの間に１つの割増サイクルを追加することが有効である。この期間中には、すべてのクロック信号が保留にされ、スキャンイネーブル線（及び主入力）のみが切り替わることができる。ラッチ出力はマスクされ、これにより、現在サイクル中には信号が測定されず次のサイクル中に測定され、テストベクトルに対する論理回路の出力応答がラッチ入力に供給される。このセットアップ期間は、図４に示すように、より低速な捕捉サイクル・クロック部分の１クロックサイクル分の持続時間を有することが好ましい。
【００４３】
部分６４は部分６２に続き、この部分６４は、より低速な捕捉サイクル・クロック信号部分の終端と、より高速なラッチ・クロック信号部分の先頭との間のエンド期間として機能する。スキャンイネーブル信号はエンド期間６４中に他の遷移を有する。ここでも、この期間中にすべてのクロック信号が保留にされ、スキャンイネーブル線（及び主入力）のみが切り替わることができる。ここでもラッチ出力はマスクされ、テストベクトルに対する論理回路の出力応答がラッチ入力に供給される。このエンド期間も、より低速な捕捉サイクル・クロック部分の１クロックサイクル分の持続時間を有することが好ましい。
【００４４】
セットアップ期間とエンド期間とは、例えばより高速なラッチ・クロック信号部分のクロックサイクルの整数倍に基づく異なる持続時間を有することができる。
【００４５】
ここでも、より高速なラッチ・クロック信号部分用のクロック周波数は静的タイミング解析（ＳＴＡ）によって決定することができ、この周波数は、シフトレジスタのラッチまたはフリップフロップの最大固有シフト周波数である。この周波数は数十MHzに達し得る。
【００４６】
シフトレジスタの最終のラッチまたはフリップフロップと出力パッドとの間の遅延を補償するためにとることのできる追加的な方策は、次のシフトサイクルへの出力データの供給を遅延させることである。このことは、スキャン出力線上に予期される値を（ソフトウェア・アルゴリズムによって）次のシフトサイクルにシフト（移動）することを必要とする。このことは、シフトレジスタがアンチスキュー素子で終端する際に特に適している。この素子は、スキャンクロックの負のエッジでクロック動作するフリップフロップ（またはラッチ）である。この素子は「ロックアップ・ラッチ」とも称され、スキャンテストの分野では、クロックツリーの異なるブランチ上のスキャンシフトレジスタ間のクロックスキューを固定するための周知の技術である。一部の設計は、こうした素子を用いてスキャンレジスタを終端させて、スキャン出力信号の半クロックサイクル分の遅延を与える。スキャンチェーンがこうしたアンチスキュー素子によって遅延させる場合には、スキャン出力信号は、クロックの立上りエッジの代わりに負のエッジ後にトグル（反転切替）し、このことは半クロックサイクル分の遅延をもたらす。
【００４７】
いくつかのスキャンチェーンが存在する場合には、異なるスキャンチェーンを独立して動作させることができる。一部のスキャンチェーンは１クロックサイクルだけシフトされた出力を持ち、他のスキャンチェーンはこうした出力を持たないこともできる。
【００４８】
本発明は、シフト速度を２倍、３倍、またはそれ以上に増加させることを可能にする。実際の結果は、約100MHz（10ns周期）以上では、シフトレジスタ内に安定した結果を有することが非常に困難になる。それにもかかわらず、このことは、テスト時間の１０分の１の低減が、組合せ論理回路を変更せずに達成されることを表すことができる。本発明は単に、既存のハードウェアに適用するテスト信号パターンを変更することによって実現することができる。
【００４９】
クロックツリーに関連する遅延も考慮に入れることができる。ここでも、ＳＴＡを用いてクロックツリーの最大レイテンシを決定することができる。対応するデータビットのスキャンが終了した後にクロックパルスが到着することができるようなクロック・レイテンシである場合には（スキャン入力からシフトレジスタにデータが到着する最小遅延、及び最大クロック・レイテンシに基づく）、データのスキャンは１クロックサイクル分だけ遅延させることができる。このことはテストベクトルのデータを並べ替えることによって実現することができる。
【００５０】
本発明の方法は、スキャンパターンのフォーマット化ステップ中にソフトウェアのテストツールで実現することができる。これらのツールは既に、図４に示すスキャンクロック及び波形のスキャンに必要なもののような複雑な波形を提供する能力を有する。本発明は、ラッチデータを100MHzのオーダー（例えば50MHz〜150MHz、あるいは60MHz〜120MHz）の周波数でシフトすることによって、現在のスキャン技術に比べてスキャンテスト時間を約１０分の１に圧縮することを可能にする。
【００５１】
図５に本発明のシステムを示し、このシステムは集積回路７０及びテスト装置７２を具えている。集積回路７０は、テストされる組合せ論理回路１０、及びシフトレジスタの形態の集積テスト回路２０を具えている。外部のテスト・ハードウェア及びソフトウェア７２は、（２速度の）ハイブリッドクロック信号、及びイネーブル信号を発生する。
【００５２】
本発明は、テスト装置７２が以上で概説した方法を実現するために用いるソフトウェアにも関するものである。
【００５３】
以上の例は、同じシフトレジスタが、スキャンベクトルを入力し、出力ベクトルを出力する結合を行う。このことは、テスト機能に必要な追加的ハードウェアを低減するが、その代わりに異なるシフトレジスタを用いることもできる。従って、シフトレジスタ装置は複数のシフトレジスタを具えることができる。
【００５４】
シフトレジスタ・アーキテクチャの一例のみを示してきたが、他の多くの特定構成が可能である。
他の種々の変形が、当業者にとって明らかである。
【図面の簡単な説明】
【００５５】
【図１】集積回路との統合用の既知のテスト回路を示す図である。
【図２】図１の回路の１つのラッチ素子をより詳細に示す図である。
【図３】図１の回路の既知の動作を説明するために用いるタイミング図である。
【図４】本発明の方法を用いた図１の回路の動作を説明するために用いるタイミング図である。
【図５】集積回路及びテスト装置を具えた本発明のシステムを示す図である。
【図１】
2009508101.tif 000003
【図２】
2009508101.tif 000004
【図３】
2009508101.tif 000005
【図４】
2009508101.tif 000006
【図５】
2009508101.tif 000007
【国際調査報告】
2009508101.tif 000008
2009508101.tif 000009