(57)【要約】集積回路コアをテストするための命令データを記憶するシフトレジスタ回路を提供する。このシフトレジスタ回路は複数の回路段を有し、各回路段が、シリアル入力端子（si）と、シリアル出力端子（so）と、パラレル出力端子（wir_output）とを有し、このパラレル出力端子は、シフトレジスタ回路のパラレル出力の１つの端子を構成する。第１のシフトレジスタ記憶素子（３２）は、前記シリアル入力端子（si）から受ける信号を記憶し、且つこの信号をスキャンチェーン動作モードで前記シリアル出力端子（so）に供給する。第２のパラレルレジスタ記憶素子（３８）は、前記第１のシフトレジスタ記憶素子（３２）からの信号を記憶し、且つこの信号を更新動作モードで前記パラレル出力端子（wir_output）に供給する。各回路段は更に、テスト動作モードで、前記パラレル出力端子（wir_output）に供給された信号の反転信号を前記第１のシフトレジスタ記憶素子（３２）に供給するためのフィードバック経路（４０）を有している。この構成により、現存する制御ラインを用いてシフトレジスタ回路の各回路段をテストすることができるようになる。特に、前記反転信号は、前記シフトレジスタ記憶素子及びパラレルレジスタ記憶素子を伝播させるためにクロックによる同期がとられるようにでき、反転信号が回路中を伝播したことを示すために出力の最終的な反転をモニタリングする。
2009512874.tif 000002
【特許請求の範囲】
【請求項１】
集積回路コアをテストするための命令データを記憶するシフトレジスタ回路であって、このシフトレジスタ回路が複数の回路段を有し、各回路段が、
シリアル入力端子及びシリアル出力端子と、
このシフトレジスタ回路におけるパラレル出力の１つの端子を構成するパラレル出力端子と、
前記シリアル入力端子から受ける信号を記憶し、且つこの信号をスキャンチェーン動作モードで前記シリアル出力端子に供給する第１のシフトレジスタ記憶素子と、
前記第１のシフトレジスタ記憶素子からの信号を記憶し、且つこの信号を更新動作モードで前記パラレル出力端子に供給する第２のパラレルレジスタ記憶素子と
を有する当該シフトレジスタ回路において、
前記各回路段が、テスト動作モードで、前記パラレル出力端子に供給される信号の反転信号を前記第１のシフトレジスタ記憶素子に供給するためのフィードバック経路を有しているシフトレジスタ回路。
【請求項２】
請求項１に記載のシフトレジスタ回路において、このシフトレジスタ回路が、埋め込みコアのテストアーキテクチャ用のラッパー命令レジスタを有しているシフトレジスタ回路。
【請求項３】
請求項２に記載のシフトレジスタ回路において、IEEE STD 1500 規格による埋め込みコアのテストアーキテクチャ用のラッパー命令レジスタを有しているシフトレジスタ回路。
【請求項４】
請求項１〜３のいずれか一項に記載のシフトレジスタ回路において、前記第１のシフトレジスタ記憶素子が第１のフリップフロップを有し、前記第２のパラレルレジスタ記憶素子が第２のフリップフロップを有しているシフトレジスタ回路。
【請求項５】
請求項４に記載のシフトレジスタ回路において、前記シリアル入力端子から受ける前記信号は、シフトイネーブル信号により制御される第１のマルチプレクサを介して前記第１のフリップフロップに供給されるようになっているシフトレジスタ回路。
【請求項６】
請求項４又は５に記載のシフトレジスタ回路において、前記シリアル出力端子に供給される信号が、更新イネーブル信号により制御される第２のマルチプレクサを経て前記第２のフリップフロップに供給されるようになっており、この第２のマルチプレクサは、前記シリアル出力端子を第１の入力端子として、且つ前記第２のフリップフロップの出力端子からのフィードバック経路を第２の入力端子として有しているシフトレジスタ回路。
【請求項７】
請求項４〜６のいずれか一項に記載のシフトレジスタ回路において、前記シリアル出力端子に供給される信号が、テストイネーブル信号により制御される第３のマルチプレクサに供給されるようになっており、この第３のマルチプレクサは、前記シリアル出力端子を第１の入力端子として、且つ前記第２のフリップフロップの反転出力端子を第２の入力端子として有しているシフトレジスタ回路。
【請求項８】
請求項７に記載のシフトレジスタ回路において、前記第３のマルチプレクサの出力が前記第１のマルチプレクサの第１の入力を提供し、前記シリアル入力端子から受ける前記信号が前記第１のマルチプレクサの第２の入力を提供するようになっているシフトレジスタ回路。
【請求項９】
請求項１〜８のいずれか一項に記載のシフトレジスタ回路において、最後の回路段以外の各回路段のシリアル出力端子を次の回路段のシリアル入力端子に接続することにより、前記複数の回路段が互いにチェーン接続されているシフトレジスタ回路。
【請求項１０】
請求項１〜９のいずれか一項に記載のシフトレジスタ回路において、各回路段がシフトイネーブル制御信号、テストイネーブル制御信号及び更新イネーブル制御信号を共有しているシフトレジスタ回路。
【請求項１１】
請求項１〜１０のいずれか一項に記載のシフトレジスタ回路を有するラッパー命令レジスタと、
ラッパー境界レジスタと、
ラッパーバイパスレジスタと
を有するIEEE STD 1500 規格のラッパー。
【請求項１２】
回路コアと、請求項１１に記載のIEEE STD 1500 規格のラッパーとを有する集積回路。
【請求項１３】
集積回路コアをテストするための命令データを記憶するシフトレジスタ回路であって、複数の回路段を有する当該シフトレジスタ回路をテストするテスト方法において、このテスト方法が、
各回路段のパラレルレジスタ記憶素子をリセットして既知の出力を生じさせる工程と、
この既知の出力を反転させ、この反転出力を各回路段のシリアルレジスタ記憶素子の入力端子に供給する工程と、
前記シフトレジスタ回路からシリアル出力を生ぜしめ、このシリアル出力をモニタリングして前記複数の回路段をテストする工程と
を有するテスト方法。
【請求項１４】
請求項１３に記載のテスト方法において、このテスト方法が更に、前記シリアルレジスタ記憶素子の内容を前記パラレルレジスタ記憶素子へ転送するために、更新機能を実行する工程を有しているテスト方法。
【請求項１５】
請求項１４に記載のテスト方法において、このテスト方法が更に、前記パラレルレジスタ記憶素子の出力を再反転させ、この再反転した出力を各回路段の前記シリアルレジスタ記憶素子の入力端子に供給する工程を有しているテスト方法。
【請求項１６】
請求項１５に記載のテスト方法において、更新及び再反転機能を、シリアル出力を生じる前に行うテスト方法。
【請求項１７】
請求項１６に記載のテスト方法において、このテスト方法が更に、前記シリアルレジスタ記憶素子の内容を前記パラレルレジスタ記憶素子へ転送するための更なる更新機能を実行する工程を有するテスト方法。
【請求項１８】
請求項１７に記載のテスト方法において、このテスト方法が更に、前記パラレルレジスタ記憶素子の出力の３度目の反転を行い、この３度目の反転出力を各回路段の前記シリアルレジスタ記憶素子の入力端子に供給し、前記シフトレジスタ回路から更なるシリアル出力を生ぜしめ、この更なるシリアル出力をモニタリングして前記複数の回路段をテストする工程を有するテスト方法。
【請求項１９】
請求項１３〜１８のいずれか一項に記載の方法において、コアテストラッパーのラッパー命令レジスタをテストするテスト方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概して半導体集積回路のテストに関するものであり、特にコアテスト方法及びその装置に関するものである。
【背景技術】
【０００２】
半導体集積回路（半導体ＩＣ）をテストする一般的なテスト技術の１つはスキャンテスト技術である。スキャンテスト技術は本質的には、テストパターン（“テストベクタ”と称されている）をデバイスパッケージのピンに送る工程と、デバイスのクロック速度に依存するある特定の時間に出力応答をモニタリングする工程とを含む。一組のテストベクタを用いて、テストすべきデバイスの動作特性が決定される。これらのテストベクタは、デバイス内の製造欠陥を検出できるように設計されている。
【０００３】
集積回路で用いられているトランジスタの個数が増えるにつれて、集積回路の設計を再利用できることがますます重要となる。設計機能（“コア”と称されている）の再利用に関する重要な課題の１つは、設計の再利用と同様にテストの再利用も実行できるように、テスト手法を再設計することなしにこれらのコアをテストできるようにすることにある。複数の機能コアを有するシステムオンチップ（ＳｏＣ）回路をテストすることもますます難しい課題となっている。
【０００４】
これらの課題に主として取り組むために、IEEE P1500ワーキンググループが編成され、テストの統合及びテストの再利用を容易にするためにコアレベルでの解決策を打ち立てている。現在、IEEE STD 1500 が標準規格として採用され、コアとコアの外部の論理回路との境界を規定する一組の規則及び標準インタフェースが規定されている。この境界は“ラッパー”と称され、これによりシステムオンチップ構造の外部を経由しなければならない最小信号でコアの分離テストを可能にする。ラッパーは、コアの各機能入力及び機能出力に対するいわゆる“ラッパーセル”を具えている。
【０００５】
図１は、IEEE STD 1500 規格のラッパーの基本的なレイアウトを示す線図である。コア１は、全ての外部信号とコアとの間のインタフェースとして機能するラッパー２によって囲まれている。ラッパーは、コアの機能入力端子（ＦＩ）及び機能出力端子（ＦＯ）とラッパーの機能入力端子及び機能出力端子との間にラッパー境界レジスタ（ＷＢＲ）を有している。コアの端子を４で示してあり、これらのコアの端子のいくつかは機能入力端子であり、他のいくつかは機能出力端子である。標準規格により、コア１は一方向端子を有するものと規定されている。矢印６は、ラッパー境界レジスタが、外部の機能入力端子及び機能出力端子と、コアの機能入力端子及び機能出力端子との間のインタフェースとして機能することを線図的に示したものである。
【０００６】
ラッパー境界レジスタＷＢＲは、一連のセル８を有している。これらの一連のセル８はそれぞれ、コアの個々の機能入力端子又は機能出力端子と関連している。これらのセルは、コアの機能入力端子を制御するための所望のテストベクタを供給するか、又はコアの機能出力端子における結果をシフトするスキャンチェーンに構成されている。従って、ＷＢＲのセルは本質的に、選択されたテストベクタをコアの機能入力端子及び機能出力端子に供給することによりスキャンテスト技術を実行する。
【０００７】
ラッパー２はラッパーシリアル（直列）入力端子（ＷＳＩ）及びラッパーシリアル出力端子（ＷＳＯ）を有しており、これら端子はラッパー命令レジスタ（ＷＩＲ）と称される命令レジスタ及びラッパー境界レジスタと通信する。
【０００８】
ラッパー境界レジスタＷＢＲは、機能コアの端子（ポート）４を制御し且つ監視する。ＷＢＲのセル８は、ラッパー命令レジスタＷＩＲに供給された命令に応答するように構成され、ラッパー命令レジスタは基本的にテストプロセスを制御する。
【０００９】
特にＷＩＲ及びＷＢＲは、「選択」、「捕捉（キャプチャ）」、「シフト」及び「更新」の命令を表わす制御信号に応答するように構成されている。
【００１０】
シフトには、ＷＢＲの１つの記憶場所にあるデータをテスト出力端子に一層近づくように前進させることを（及びＷＩＲ又は他のレジスタのデータを前進させることをも）含んでいる。従って、シフト命令により所望のテストベクタをＷＢＲセルにローディングする。
【００１１】
捕捉には、ＷＢＲの機能入力端子又は機能出力端子に存在するデータをＷＢＲセルに記憶することが含まれている。
【００１２】
更新には、付加的な更新記憶素子を用いてＷＢＲセルシフト記憶素子内のデータを記憶することが含まれている。
【００１３】
転送には、データをＷＢＲセルシフト記憶素子へ移動させることが含まれている。
【００１４】
図１に示されていないがラッパーは、信号をラッパー捕捉信号（捕捉ＷＲ）、ラッパーシフト信号（シフトＷＲ）及びラッパー更新信号（更新ＷＲ）の形態で受ける。更にラッパーは、ラッパークロック信号（ＷＲＣＫ）、ラッパーリセット信号（ＷＲＳＴＮ）及び命令レジスタ選択信号（選択ＷＩＲ）によって制御される。
【００１５】
ラッパー命令レジスタ（ＷＩＲ）は、ラッパーを、ＷＩＲにシフトされた命令によって決定される所望の動作モードに構成するのに用いられる。この命令の長さは数十又は数百ビットとすることができ、この命令により様々なテスト及び診断動作モードを規定することができる。ＷＩＲの付加的な回路（図示せず）が、ローディングされたＷＩＲ命令を解釈し、且つコアとの相互作用を制御するＷＢＲに適切な制御信号を供給するのに用いられている。
【００１６】
ラッパーは、ＷＢＲセル内にシフトされるべきシリアルテストベクタをローディングする場合も命令データをローディングする場合と同じシリアル入力端子を用いており、選択ＷＩＲが、どの動作モードを使用するかを決定する。
【００１７】
従ってＷＩＲが、ローディングされた命令を復号し、次に特定の制御を実行するためにラッパー境界レジスタＷＢＲを制御する。ＷＩＲ回路は、上述した捕捉ＷＲ、シフトＷＲ、更新ＷＲ及びクロック信号ＷＲＣＫ、リセット信号ＷＲＳＴＮ、選択ＷＩＲを受ける。
【００１８】
ラッパー命令レジスタは、ラッパーバイパスレジスタ（ＷＢＹ）をも制御するようにすることができる。このラッパーバイパスレジスタは、コアとのいかなる相互作用もなくラッパーシリアル入力（ＷＳＩ）をラッパーシリアル出力端子（ＷＳＯ）に通す作用をする。この場合のＷＢＹはＷＩＲ命令に応答して動作する。更に、ＷＩＲによって外部テストを制御して、外部からのコアの可制御性及び可監視性を達成するようにしうる。この外部テストには、ラッパー境界レジスタＷＢＲをラッパーシリアル入力及び出力端子（ＷＳＩ及びＷＳＯ）に接続することが含まれる。これにより顧客の特定のデータをＷＢＲセルにローディングすることができる。
【００１９】
ラッパー命令レジスタは、ラッパーシリアル制御（ＷＳＣ）入力端子からラッパー命令レジスタの制御入力を受ける。
【００２０】
上述の入力端子はシリアルポートのものである。ラッパーは、図１にパラレル（並列）入力ポートＰＩ及びパラレル出力ポートＰＯとして示すパラレルポートを有することもできる。
【発明の開示】
【発明が解決しようとする課題】
【００２１】
本発明は、特にラッパー命令レジスタのテストに関するものである。ＷＩＲは代表的に、いわゆる“シフト／シャドウレジスタ”を用いて構成されている。この種類のレジスタの基本的構造は、シリアルシフトレジスタ及びパラレル更新レジスタから成っている。これら２つの順次の層に対する１つの利点は、シリアルシフトレジスタ内に一組の新規なテストモード状態（テストベクタ）をローディングしている間、パラレル更新レジスタ内のテストモード状態（命令データ）を維持することができるということである。これらのレジスタはシステムオンチップデバイスの一部として集積化されるので、これらのレジスタもテストする必要がある。
【課題を解決するための手段】
【００２２】
本発明によれば、集積回路コアをテストするための命令データを記憶するシフトレジスタ回路であって、このシフトレジスタ回路が複数の回路段を有し、各回路段が、
シリアル入力端子及びシリアル出力端子と、
このシフトレジスタ回路におけるパラレル出力の１つの端子を構成するパラレル出力端子と、
前記シリアル入力端子から受ける信号を記憶し、且つこの信号をスキャンチェーン動作モードで前記シリアル出力端子に供給する第１のシフトレジスタ記憶素子と、
前記第１のシフトレジスタ記憶素子からの信号を記憶し、且つこの信号を更新動作モードで前記パラレル出力端子に供給する第２のパラレルレジスタ記憶素子と
を有する当該シフトレジスタ回路において、
前記各回路段が、テスト動作モードで、前記パラレル出力端子に供給される信号の反転信号を前記第１のシフトレジスタ記憶素子に供給するためのフィードバック経路を有しているシフトレジスタ回路
を提供する。
【００２３】
この本発明の構成によれば、現存する制御ラインを用いてシフトレジスタス回路の各回路段をテストすることができる。特に、シフトレジスタ記憶素子及びパラレルレジスタ記憶素子を伝播するように反転信号のクロックによる同期をとることができ、反転信号が回路を伝播したことを表わす出力の最終的な反転をモニタリングする。
【００２４】
シフトレジスタ回路は、埋め込みコアテストアーキテクチャ用のラッパー命令レジスタ、例えばIEEE STD 1500 規格の埋め込みコアテストアーキテクチャ用のラッパー命令レジスタを有することができる。
【００２５】
第１のシフトレジスタ記憶素子が第１のフリップフロップを有し、第２のパラレルレジスタ記憶素子が第２のフリップフロップを有するようにするのが好ましい。
【００２６】
各回路段は、シフトイネーブル信号、更新イネーブル信号及びテストイネーブル信号により制御されるマルチプレクサを有するようにするのも好ましい。
【００２７】
前記複数の回路段は、最後の回路段以外の各回路段のシリアル出力端子を次の回路段のシリアル入力端子に接続することにより、互いにチェーン接続されているようにするのが好ましい。
【００２８】
本発明は、本発明によるラッパー命令レジスタと、ラッパー境界レジスタと、ラッパーバイパスレジスタとを有するIEEE STD 1500 規格のラッパーをも提供する。
【００２９】
本発明は又、回路コア及び本発明によるIEEE STD 1500 規格のラッパーを有する集積回路をも提供する。
【００３０】
本発明は又、集積回路コアをテストするための命令データを記憶するシフトレジスタ回路であって、複数の回路段を有する当該シフトレジスタ回路をテストするテスト方法において、このテスト方法が、
各回路段のパラレルレジスタ記憶素子をリセットして既知の出力を生じさせる工程と、
この既知の出力を反転させ、この反転出力を各回路段のシリアルレジスタ記憶素子の入力端子に供給する工程と、
前記シフトレジスタ回路からシリアル出力を生ぜしめ、このシリアル出力をモニタリングして前記複数の回路段をテストする工程と
を有するテスト方法
をも提供する。
【００３１】
この本発明の方法によれば、既に必要とされている入力及び制御ラインを用いることによりシフトレジスタ回路の回路段に対する自己テスト方法を提供するものである。
【００３２】
本発明による方法は更に、前記パラレルレジスタ記憶素子の出力を再反転させ、この再反転した出力を各回路段の前記シリアルレジスタ記憶素子の入力端子に供給する工程を有するようにしうる。このようにすることにより、シリアルレジスタに０及び１を交互に記憶させることができる。
【００３３】
本発明の方法によれば、シフトレジスタ回路の回路段を通る０及び１の伝播を正確にモニタリングすること、及びシリアルスキャンチェーンが正確に機能しているかをモニタリングすることができる。このようにして、０及び１の双方の通過に対して正確なシリアルスキャンチェーン動作をモニタリングすることができる。
【００３４】
本発明による方法は、コアテストラッパー、例えばIEEE STD 1500 規格のラッパーのラッパー命令レジスタをテストするのに用いるのが好ましい。
【００３５】
以下、添付図面を参照して詳細に説明する。
【００３６】
本発明は、シフトレジスタをテストできるアーキテクチャを提供する。命令レジスタをテストできるようにするには、更新レジスタ出力をシフトレジスタにフィードバックする必要があることを本発明者は認識した。この場合、更新レジスタの非同期リセットを含むレジスタのテストでは、レジスタ構造内に及びレジスタ構造から順次にシフトされる複数のパターンを用いうる。
【００３７】
本発明は、簡単なテストシーケンスを命令レジスタに使用できるようにするためのかかるフィードバック経路の具体的な構造を提供する。本発明によれば、この構造をステートマシンプロトコルを介して制御できるようにする。
【００３８】
本発明を更に詳しく説明する前に、ラッパーの構造及び動作の概要をより詳しく説明する。
【００３９】
前述したように、ラッパー境界レジスタは複数のセルで形成されている。図２はこのような１つのセル２０の例を示し、このセルは図１に示されている複数のセル８のうちの１つに相当する。
【００４０】
このセルは入力セル又は出力セルとして構成することができる。入力セルの場合は、ホールド信号「hold_inputs/outputs 」は「hold_inputs 」であり、出力セルの場合は、ホールド信号「hold_inputs/outputs 」は「hold_outputs」である。
【００４１】
これらのホールド信号はＷＢＲセルを制御する。これらのホールド信号は、コア内部（内向きの）テスト又はコア相互接続（外向きの）テストのどちらかを選択するための静的信号である。これらのホールド信号は、ＷＩＲ命令の解釈に応答して発生され、選択されたテスト（又は診断又はアプリケーション）モードに応じて制御される。アプリケーションモードには基本的に、ラッパーがコアの通常の機能を許容するのを禁止する機能が含まれる。
【００４２】
セル２０は、セルテスト入力「cti 」であるシリアル入力「si」を受ける。このシリアル入力は、シフトイネーブル制御ライン「se」が高レベルにあると、フリップフロップ２２によりセルテスト出力「cto 」であるシリアル出力「so」とクロックによる同期がとられる。このシフトイネーブル制御ラインの信号はマルチプレクサ２３を制御する。従って、シフトイネーブル制御ラインはスキャンチェーンに沿って信号をシフトさせるのを制御する。シフトイネーブル制御ライン「se」は命令「シフトＷＲ」に関連している点に留意すべきである。
【００４３】
入力セルの場合、制御ラインにおける高レベルのホールド信号「hold_inputs 」に応答して信号をコアに供給するために、フリップフロップ２２の出力がマルチプレクサ２４を介してセル機能出力端子「cfo 」に供給される。マルチプレクサ２４の出力は又、マルチプレクサ２３にフィードバックされる。そしてシフトイネーブル制御ラインが低レベルになると、このフィードバックされた信号はフリップフロップ２２に供給され、セル機能出力は安定し続ける。従って、フリップフロップに記憶されたセルテスト入力信号はセルテスト出力の端子に保持される。入力セルはコアの外部環境を監視することも、セルテスト入力信号をシリアル出力に送ることもできる。
【００４４】
出力セルの場合、セル機能入力端子においてコアから信号を受けることができ、信号「hold_outputs」が低レベルであると、（シフトイネーブル制御ラインが低レベルにあれば）コアからのこの信号をシリアル出力端子に送ることができる。同様にセルテスト入力をセル機能出力端子に送ることができる。
【００４５】
入力セルはテスト信号をコアに供給でき、出力セルはコアから応答を受けることができ、且つ外向きのテスト信号をコアの外部回路にも供給できることが分かる。これらの機能は、ＷＢＲの動作方法を制御するホールド信号の値により制御される。
【００４６】
図３は、図２のセル２０を複数個直列に接続した線図であり、Ｎ個のセル（番号０からＮ−１）から形成されたＷＢＲを規定している。いくつかのセルは（コアの入力端子に対する）入力セルとして構成され、それ以外のセルは（コアの出力端子に対する）出力セルとして構成されている。従って、図３は図１に示されるＷＢＲ全体を示している。
【００４７】
図４は、ＷＩＲ用の構成要素を形成する命令レジスタブロックの一構成方法を示す線図である。
【００４８】
この図４は、ラッパー命令レジスタＷＩＲの捕捉信号「wir_capture」、シフト信号「wir_shift 」及び更新信号「wir_update」、並びにクロック信号「wrck」及びリセット信号「wrstn 」を示している。
【００４９】
シリアル入力「si」は、シフト信号により制御されるマルチプレクサ３０の「１」入力端子に供給される。シフト信号が高レベルになると、このシリアル入力が第１のフリップフロップ３２に供給され、この第１のフリップフロップ３２がクロックによりこのシリアル入力をシリアル出力「so」と同期させる。このことよりシリアルチェーン動作が可能となる。
【００５０】
シリアル出力は又、捕捉機能を実行する第２のマルチプレクサ３４にフィードバックされる。捕捉命令がないと、シリアル出力はマルチプレクサ３０の入力端子「０」に供給される。これにより、マルチプレクサ３０への入力を次のシリアル入力値と置き換える次の高レベルのシフト信号が到来するまで、出力を安定状態に維持する。
【００５１】
シリアル出力は、第３のマルチプレクサ３６にも供給され、このシリアル出力は、高レベルの更新信号に応答して、第２のフリップフロップ３８に送られる。更新信号が供給された後は、フリップフロップ３８の出力はマルチプレクサ３６の「０」入力端子にフィードバックされるので、このフリップフロップ３８の出力は安定する。従って、更新動作後、フリップフロップ３８の出力は安定し、フリップフロップ３２の値が記憶される。これにより、ラッパー命令レジスタ（ＷＩＲ）の出力「wir_output」を規定する。
【００５２】
捕捉命令を実行するためのマルチプレクサ３４により外部信号CaptureIn をフリップフロップ３２にローディングすることができる。この外部信号はコアから到来するようにでき、診断情報又は状態情報（例えば内部のＢＩＳＴエンジンの状態）を出力端子に得るために用いることができる。従って、この外部信号によりこれらの情報源を外部からアクセスすることができる。
【００５３】
リセット信号「wrstn 」はＷＩＲの出力をリセットする。又、アプリケーションモードは、動作モードのリセット中に（効果的にラッパー機能を無効にして）実行される。
【００５４】
上述したところから明らかなように、図４に示される回路の機能は、
‐  シフト信号を用いることにより、シリアル入力を、フリップフロップ３２を介してシリアル出力にシフトするために、又は
‐  「外部」信号をフリップフロップ３２にローディングし、その後、外部信号をフリップフロップ３８又はシリアル出力端子に供給しうるようにするために
選択できる。
【００５５】
図４においては、フリップフロップ３２はシリアル命令レジスタの一部を形成しており、フリップフロップ３８はパラレル更新レジスタの一部を形成している。データは直列動作とは無関係に並列で更新レジスタにローディングすることができる。従って、テストモード状態をパラレル更新レジスタに記憶することができ、一方、新規な組のテストモード状態（すなわち命令）はシリアルシフトレジスタにローディングする。
【発明を実施するための最良の形態】
【００５６】
図５は、本発明によるＷＩＲの基本的な部分構造を示す構成図である。構成要素は図４と同じであるが、ＷＩＲの出力がインバータ４０を介してマルチプレクサ３４の「１」入力端子にフィードバックされている。
【００５７】
この図５の回路は捕捉信号を内部テスト制御信号として用いている。捕捉信号が高レベルになると、ＷＩＲの出力の反転信号がマルチプレクサ３０に供給され、この反転信号はその後シフト信号入力がなければフリップフロップ３２に供給される。よって、ＷＩＲの出力のこの反転信号を、更新制御信号を用いることにより図５の部分構造を介してＷＩＲの出力端子に伝達されるように制御することができる。従って、図５の回路は、パラレル更新レジスタ記憶素子とシリアルシフトレジスタ記憶素子との間のフィードバック経路にインバータを設けることによって図４の回路を修正したものである。
【００５８】
図５は、ラッパー命令レジスタを形成するための１つの構成要素を示している。図６は、図５に示される構成要素を用いることにより形成されたラッパー命令レジスタを示している。
【００５９】
図６に示されるように、ＷＩＲは図５の構成要素の直列チェーンを有し、１つの構成要素のシリアル出力端子が次の構成要素のシリアル入力端子に接続されている。全ての構成要素は、同じクロック信号、捕捉信号、シフト信号、更新信号及びリセット信号を共有している。
【００６０】
このレジスタでは、ＷＩＲシリアル入力（「si」）ポートを用いてデータを通常のように直列にローディングするとともに、テストを行うコアに供給すべきテストベクタを有しうるＷＩＲ出力を並列に生じる。
【００６１】
しかし、このアーキテクチャにより命令レジスタをテストすることもでき、以下のテスト手順を用いることによりこのテストを実行することができる。
１．リセット工程
このリセット工程には、適切なリセット信号（例えばwrstn ＝０）をwrstn 端子に供給する工程が含まれる。リセットすると、更新レジスタを形成する全てのフリップフロップ３８に値０が記憶される。シリアルレジスタのフリップフロップ３２は変化せず、前のいかなる値をも記憶している。
２．ホールド工程
リセット信号を終了させる（wrstn ＝１とする）。ＷＩＲ入力制御信号（捕捉、シフト、更新信号）を０とする。マルチプレクサ３６を介するフィードバック経路により出力を値０に維持する。
３．捕捉工程
捕捉信号を高レベルにし（wir_capture ＝１）、これにより（wir_shift ＝０にした）マルチプレクサ３０を介して反転した信号をフリップフロップ３２にローディングする。シリアルレジスタには全て１が、パラレル更新レジスタには全て０が記憶される。
４．ホールド工程
ＷＩＲ入力制御信号（捕捉、シフト、更新信号）を０とする。
５．更新工程
更新信号を１にする（wir_update＝１）ことにより、フリップフロップ３２に記憶されていた１がフリップフロップ３８にローディングされる。
６．ホールド工程
ＷＩＲ入力制御信号（捕捉、シフト、更新信号）を０とする。
７．捕捉工程
捕捉信号を再び高レベルにし（wir_capture ＝１）、（wir_shift ＝０にした）マルチプレクサ３０を介して反転した信号をフリップフロップ３２にローディングする。これにより、シリアルレジスタには全て０が、パラレル更新レジスタには全て１が記憶される。
８．ホールド工程
ＷＩＲ入力制御信号（捕捉、シフト、更新信号）を０とする。
９．シフト応答工程
このサイクル中、wir_shift ＝１を用いることにより、スキャンチェーンに沿ってシリアルシフトレジスタの値（全て０）をシフトさせる。出力端子wir_soにおけるシリアルチェーンからの出力をモニタリングし、期待される一連の０のチェーンが受けられているかを確認する。
１０．リセット工程
wrstn ＝０を設定してリセットを行ない、再びパラレル更新レジスタを値０で更新し、シリアルシフトレジスタ内にいかなる値も記憶しうるようにする。このリセット動作によって、全てのフリップフロップ３８が既知の状態１から新たな状態０へ切り替わることができるかの検査をも行う。
１１．ホールド工程
リセット信号を終了させた後（wrstn ＝１とした後）、ＷＩＲ入力制御信号（捕捉、シフト、更新信号）を０とする。
１２．捕捉工程
最終の捕捉信号（wir_capture ＝１）により、シリアルシフトレジスタを値１で更新し、パラレル更新レジスタに全て０を記憶する。
１３．シフト応答工程
このサイクル中、wir_shift ＝１を用いることにより、スキャンチェーンに沿ってシリアルシフトレジスタの値（全て１）をシフトさせ、出力端子wir_soにおけるシリアルチェーンからの出力をモニタリングし、期待される一連の１のチェーンが受けられているかを確認する。
【００６２】
ホールド段階では、フリップフロップが正しく機能していれば、これらフリップフロップがデータを保持する。
【００６３】
上述した一連の工程により、
‐  捕捉マルチプレクサ及びシフトマルチプレクサを通り、且つシリアルフリップフロップを通って０が伝播するか、
‐  捕捉マルチプレクサ及びシフトマルチプレクサを通り、且つシリアルフリップフロップを通って１が伝播するか、
‐  更新マルチプレクサを通り、且つ更新フリップフロップを通って０が伝播するか、
‐  更新マルチプレクサを通り、且つ更新フリップフロップを通って１が伝播するか、
‐  部分構造間の一連のスキャンチェーン接続を介して０が伝播するか、
‐  部分構造間の一連のスキャンチェーン接続を介して１が伝播するか、
‐  更新段階の正しい非同期リセットがアプリケーションモードのテストとして有効に機能しているか
をテストできることが分かる。
【００６４】
このテストでは、期待される一連の１及び０のチェーンを探し出す２つのシリアル出力シーケンスを使用し、回路、特に上記の機能的観点をテストする。
【００６５】
上述したところでは、IEEE STD 1500 規格のラッパーアーキテクチャを参照して本発明を説明した。しかし、より一般的には、本発明は、シリアルシフトレジスタ機能及びパラレル更新レジスタ機能を有する命令レジスタに対して適用でき、これらの機能用の記憶素子間にフィードバック経路を設けることにより、少数の追加の手段でテスト容易化を実現している。
【００６６】
当業者にとっては、本発明の他の様々な変形例が明らかである。
【図面の簡単な説明】
【００６７】
【図１】図１は、集積回路コアに対する既知のテスト回路ラッパーを示すブロック線図である。
【図２】図２は、図１におけるテスト回路ラッパーの１つのラッパー境界セルを詳細に示すブロック線図である。
【図３】図３は、図１のテスト回路ラッパーのラッパー境界レジスタを示すブロック線図である。
【図４】図４は、図１におけるラッパー命令レジスタ用の１つの可能な部分構造のアーキテクチャを示すブロック線図である。
【図５】図５は、図１におけるラッパー命令レジスタ用の本発明の部分構造のアーキテクチャを示すブロック線図である。
【図６】図６は、本発明のラッパー命令レジスタを示すブロック線図である。
【図１】
2009512874.tif 000003
【図２】
2009512874.tif 000004
【図３】
2009512874.tif 000005
【図４】
2009512874.tif 000006
【図５】
2009512874.tif 000007
【図６】
2009512874.tif 000008
【国際調査報告】
2009512874.tif 000009
2009512874.tif 000010