(57)【要約】本発明によるテスト回路は、集積回路コアをテストする命令データを記憶するシフトレジスタ回路（７６）を有する。このシフトレジスタ回路の各回路段が、シリアル入力端子（wsi ）から受ける信号を記憶し、且つこの信号をスキャンチェーン動作モードでシリアル出力端子（wso ）に供給する第１のシフトレジスタ記憶素子（３２）と、前記第１のシフトレジスタ記憶素子からの信号を記憶し、且つこの信号を更新動作モードでパラレル出力端子に供給する第２のパラレルレジスタ記憶素子（３８）とを有する。前記テスト回路は更に、シリアルテスト入力端子（wsi ）を前記シフトレジスタ回路の前記シリアル入力端子に接続するか、又は付加的な入力端子（wpi[n]）を前記シフトレジスタ回路（７６）の前記シリアル入力端子に接続するマルチプレクサ（７０）を有する。好適例では、テスト回路は更に、前記シフトレジスタ回路の少なくとも１つの回路段に記憶されている特定のデータ値に応答して他のシフトレジスタ段を前記更新動作モードに設定する更新信号を発生する制御回路（７８）を有する。
2009512872.tif 000002
【特許請求の範囲】
【請求項１】
集積回路コア又は集積回路コアの外部の回路をテストするテスト回路であって、このテスト回路が、テスト命令データを記憶するシフトレジスタ回路を具え、このシフトレジスタ回路が複数の回路段を有し、各回路段が、
シリアル入力端子及びシリアル出力端子と、
このシリアル入力端子から受ける信号を記憶し、且つこの信号をスキャンチェーン動作モードで前記シリアル出力端子に供給する第１のシフトレジスタ記憶素子と、
前記第１のシフトレジスタ記憶素子からの信号を記憶し、且つこの信号を更新動作モードでパラレル出力端子に供給する第２のパラレルレジスタ記憶素子と
を有する
テスト回路において、
このテスト回路が更に、シリアルテスト入力端子を前記シフトレジスタ回路の前記シリアル入力端子に接続する、又は付加的な入力端子を前記シフトレジスタ回路の前記シリアル入力端子に接続するマルチプレクサと、第１の更新動作モードを制御する第１の入力端子と、前記付加的な入力端子が前記シリアル入力端子に接続された場合に用いられる第２の更新機構とを更に具えるテスト回路。
【請求項２】
請求項１に記載のテスト回路において、前記付加的な入力端子がテスト回路の少なくとも１つのパラレル入力ポートを有するテスト回路。
【請求項３】
請求項１又は２に記載のテスト回路において、前記第２の更新機構が制御回路をもって構成され、この制御回路は、前記シフトレジスタ回路の少なくとも１つの回路段に記憶されている特定のデータ値に応答して他のシフトレジスタ段を前記更新動作モードに設定する更新信号を発生するようになっているテスト回路。
【請求項４】
請求項３に記載のテスト回路において、このテスト回路が更に、命令レジスタ選択信号入力端子を有し、前記命令レジスタ選択信号入力端子がアクティブである場合に、前記テスト回路へのシリアル入力が、前記マルチプレクサを介して前記シフトレジスタ回路の前記シリアル入力端子に供給され、前記命令レジスタ選択信号入力端子がアクティブでない場合で、前記シフトレジスタ回路の少なくとも１つの回路段に特定のデータ値が記憶されていると、前記制御回路が前記更新信号を発生するようになっているテスト回路。
【請求項５】
請求項４に記載のテスト回路において、このテスト回路が更に、前記シフトレジスタ段を更新動作モードに設定するための更新信号入力端子を有し、前記命令レジスタ選択信号入力端子がアクティブである場合のみ更新信号入力端子が動作可能となるようになっているテスト回路。
【請求項６】
請求項３〜５のいずれか一項に記載のテスト回路において、前記制御回路が、前記第１のシフトレジスタ記憶素子の１つにローディングされた信号を受けるようになっているテスト回路。
【請求項７】
請求項６に記載のテスト回路において、前記制御回路が、更新信号を前記第２のパラレルレジスタ記憶素子に供給する論理ゲート構造を具えるテスト回路。
【請求項８】
請求項７に記載のテスト回路において、命令レジスタ選択信号がアクティブでなく、且つ前記シフトレジスタ回路の少なくとも１つの回路段に特定のデータ値が記憶されている場合に、又は前記命令レジスタ選択信号がアクティブであり、且つ外部更新信号がアクティブである場合に、前記論理ゲート構造が更新信号を生じるようになっているテスト回路。
【請求項９】
請求項１〜８のいずれか一項に記載のテスト回路において、このテスト回路が更に、前記シフトレジスタ回路の前記シリアル出力端子に少なくとも１つの付加的な制御出力ポートを有しているテスト回路。
【請求項１０】
請求項９に記載のテスト回路において、前記付加的な制御出力ポートにアンチスキュー素子が設けられているテスト回路。
【請求項１１】
請求項１〜１０のいずれか一項に記載のテスト回路において、前記第２の更新機構が制御回路をもって構成され、この制御回路により更新が開始された後に、前記第２のパラレルレジスタ記憶素子に記憶されたデータを用いて、ラッパー境界レジスタセルを制御するようになっているテスト回路。
【請求項１２】
請求項１〜１１のいずれか一項に記載のテスト回路において、前記第２の更新機構が制御回路をもって構成され、この制御回路により更新が開始された後に、前記第２のパラレルレジスタ記憶素子に記憶されたデータをラッパー命令レジスタ出力として生ぜしめるようになっているテスト回路。
【請求項１３】
請求項１〜１２のいずれか一項に記載のテスト回路において、前記第２の更新機構が制御回路をもって構成され、この制御回路は、前記シフトレジスタの少なくとも２つの回路段に記憶されている特定のデータ値に応答して、埋め込みコアをテストするための第１の信号及び付加的なテストモードを達成するための第２の信号を発生するようになっているテスト回路。
【請求項１４】
請求項１〜１３のいずれか一項に記載のテスト回路において、前記シフトレジスタ回路が埋め込みコアテストアーキテクチャ用のラッパー命令レジスタを有しているテスト回路。
【請求項１５】
請求項１４に記載のテスト回路において、前記シフトレジスタ回路がIEEE STD 1500 規格の埋め込みコアテストアーキテクチャ用のラッパー命令レジスタを有しているテスト回路。
【請求項１６】
請求項１〜１５のいずれか一項に記載のテスト回路において、前記第１のシフトレジスタ記憶素子が第１のフリップフロップを具え、前記第２のパラレルレジスタ記憶素子が第２のフリップフロップを具えているテスト回路。
【請求項１７】
請求項１〜１６のいずれか一項に記載のテスト回路であって、前記シフトレジスタ回路がラッパ命令レジスタを有している当該テスト回路と、
ラッパー境界レジスタと、
ラッパーバイパスレジスタと
を具えるIEEE STD 1500 規格のラッパー。
【請求項１８】
回路コア及び請求項１７に記載のIEEE STD 1500 規格のラッパーを有する集積回路。
【請求項１９】
集積回路コア又は集積回路コアの外部の回路をテストするテスト方法であって、コアラッパーを第１のモード及び第２のモードで用い、
第１のモードにおいて、シリアル入力端子をラッパー命令レジスタに結合し、このシリアル入力端子の信号をシリアルシフトレジスタ記憶素子に記憶し、更新信号に応答して前記シリアルシフトレジスタに記憶されたラッパー命令をパラレル更新レジスタにローディングし、
第２のモードにおいて、ラッパーパラレルインタフェースの１つのポートを用いることによりユーザデータを前記シリアル入力端子に供給し、連続的な更新信号に応答して前記シリアルシフトレジスタに記憶された前記ラッパー命令を連続的に前記パラレル更新レジスタにローディングする
テスト方法。
【請求項２０】
請求項１９に記載のテスト方法において、前記第２のモードで、前記ラッパー命令レジスタに記憶されているデータを用いて、前記シフトレジスタ段を更新動作モードに設定するための連続的な更新信号を発生させるか否かを決定するテスト方法。
【請求項２１】
請求項１９又は２０に記載のテスト方法において、前記第２のモードで、前記シリアルシフトレジスタの１つ以上の回路段に記憶されているデータを用いて、連続的な更新信号の発生を制御するテスト方法。
【請求項２２】
請求項１９〜２１のいずれか一項に記載のテスト方法において、前記第１のモードで、自動テストパターン生成システムからのデータを前記シリアル入力端子に供給するテスト方法。
【請求項２３】
請求項１９〜２２のいずれか一項に記載のテスト方法において、付加的なテストモードを達成するために前記第２のモードを用いるテスト方法。
【請求項２４】
請求項１９〜２３のいずれか一項に記載のテスト方法において、埋め込みコアをより一層大きなコア内でテストするために前記第２のモードを用いるテスト方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概して半導体集積回路のテストに関するものであり、特にコアテスト方法及びその装置に関するものである。
【背景技術】
【０００２】
半導体集積回路（半導体ＩＣ）をテストする一般的なテスト技術の１つはスキャンテスト技術である。スキャンテスト技術は本質的には、テストパターン（“テストベクタ”と称されている）をデバイスパッケージのピンに送る工程と、デバイスのクロック速度に依存するある特定の時間に出力応答をモニタリングする工程とを含む。一組のテストベクタを用いて、テストすべきデバイスの動作特性が決定される。これらのテストベクタは、デバイス内の製造欠陥を検出できるように設計されている。
【０００３】
集積回路で用いられているトランジスタの個数が増えるにつれて、集積回路の設計を再利用できることがますます重要となる。設計機能（“コア”と称されている）の再利用に関する重要な課題の１つは、設計の再利用と同様にテストの再利用も実行できるように、テスト手法を再設計することなしにこれらのコアをテストできるようにすることにある。複数の機能コアを有するシステムオンチップ（ＳｏＣ）回路をテストすることもますます難しい課題となっている。
【０００４】
これらの課題に主として取り組むために、IEEE P1500ワーキンググループが編成され、テストの統合及びテストの再利用を容易にするためにコアレベルでの解決策を打ち立てている。現在、IEEE STD 1500 が標準規格として採用され、コアとコアの外部の論理回路との境界を規定する一組の規則及び標準インタフェースが規定されている。この境界は“ラッパー”と称され、これによりシステムオンチップ構造の外部を経由しなければならない最小信号でコアの分離テストを可能にする。ラッパーは、コアの各機能入力及び機能出力に対するいわゆる“ラッパーセル”を具えている。
【０００５】
図１は、IEEE STD 1500 規格のラッパーの基本的なレイアウトを示す線図である。コア１は、全ての外部信号とコアとの間のインタフェースとして機能するラッパー２によって囲まれている。ラッパーは、コアの機能入力端子（ＦＩ）及び機能出力端子（ＦＯ）とラッパーの機能入力端子及び機能出力端子との間にラッパー境界レジスタ（ＷＢＲ）を有している。コアの端子を４で示してあり、これらのコアの端子のいくつかは機能入力端子であり、他のいくつかは機能出力端子である。標準規格により、コア１は一方向端子を有するものと規定されている。矢印６は、ラッパー境界レジスタが、外部の機能入力端子及び機能出力端子と、コアの機能入力端子及び機能出力端子との間のインタフェースとして機能することを線図的に示したものである。
【０００６】
ラッパー境界レジスタＷＢＲは、一連のセル８を有している。これらの一連のセル８はそれぞれ、コアの個々の機能入力端子又は機能出力端子と関連している。これらのセルは、コアの機能入力端子を制御するための所望のテストベクタを供給するか、又はコアの機能出力端子における結果をシフトするスキャンチェーンに構成されている。従って、ＷＢＲのセルは本質的に、選択されたテストベクタをコアの機能入力端子及び機能出力端子に供給することによりスキャンテスト技術を実行する。
【０００７】
ラッパー２はラッパーシリアル（直列）入力端子（ＷＳＩ）及びラッパーシリアル出力端子（ＷＳＯ）を有しており、これら端子はラッパー命令レジスタ（ＷＩＲ）と称される命令レジスタ及びラッパー境界レジスタと通信する。
【０００８】
ラッパー境界レジスタＷＢＲは、機能コアの端子（ポート）４を制御し且つ監視する。ＷＢＲのセル８は、ラッパー命令レジスタＷＩＲに供給された命令に応答するように構成され、ラッパー命令レジスタは基本的にテストプロセスを制御する。
【０００９】
特にＷＩＲ及びＷＢＲは、「選択」、「捕捉（キャプチャ）」、「シフト」及び「更新」の命令を表わす制御信号に応答するように構成されている。
【００１０】
シフトには、ＷＢＲの１つの記憶場所にあるデータをテスト出力端子に一層近づくように前進させることを（及びＷＩＲ又は他のレジスタのデータを前進させることをも）含んでいる。従って、シフト命令により所望のテストベクタをＷＢＲセルにローディングする。
【００１１】
捕捉には、ＷＢＲの機能入力端子又は機能出力端子に存在するデータをＷＢＲセルに記憶することが含まれている。
【００１２】
更新には、付加的な更新記憶素子を用いてＷＢＲセルシフト記憶素子内のデータを記憶することが含まれている。
【００１３】
転送には、データをＷＢＲセルシフト記憶素子へ移動させることが含まれている。
【００１４】
図１に示されていないがラッパーは、信号をラッパー捕捉信号（捕捉ＷＲ）、ラッパーシフト信号（シフトＷＲ）及びラッパー更新信号（更新ＷＲ）の形態で受ける。更にラッパーは、ラッパークロック信号（ＷＲＣＫ）、ラッパーリセット信号（ＷＲＳＴＮ）及び命令レジスタ選択信号（選択ＷＩＲ）によって制御される。
【００１５】
ラッパー命令レジスタ（ＷＩＲ）は、ラッパーを、ＷＩＲにシフトされた命令によって決定される所望の動作モードに構成するのに用いられる。この命令の長さは数十又は数百ビットとすることができ、この命令により様々なテスト及び診断動作モードを規定することができる。ＷＩＲの付加的な回路（図示せず）が、ローディングされたＷＩＲ命令を解釈し、且つコアとの相互作用を制御するＷＢＲに適切な制御信号を供給するのに用いられている。
【００１６】
ラッパーは、ＷＢＲセル内にシフトされるべきシリアルテストベクタをローディングする場合も命令データをローディングする場合と同じシリアル入力端子を用いており、選択ＷＩＲが、どの動作モードを使用するかを決定する。
【００１７】
従ってＷＩＲが、ローディングされた命令を復号し、次に特定の制御を実行するためにラッパー境界レジスタＷＢＲを制御する。ＷＩＲ回路は、上述した捕捉ＷＲ、シフトＷＲ、更新ＷＲ及びクロック信号ＷＲＣＫ、リセット信号ＷＲＳＴＮ、選択ＷＩＲを受ける。
【００１８】
ラッパー命令レジスタは、ラッパーバイパスレジスタ（ＷＢＹ）をも制御するようにすることができる。このラッパーバイパスレジスタは、コアとのいかなる相互作用もなくラッパーシリアル入力（ＷＳＩ）をラッパーシリアル出力端子（ＷＳＯ）に通す作用をする。この場合のＷＢＹはＷＩＲ命令に応答して動作する。更に、ＷＩＲによって外部テストを制御して、外部からのコアの可制御性及び可監視性を達成するようにしうる。この外部テストには、ラッパー境界レジスタＷＢＲをラッパーシリアル入力及び出力端子（ＷＳＩ及びＷＳＯ）に接続することが含まれる。これにより顧客の特定のデータをＷＢＲセルにローディングすることができる。
【００１９】
ラッパー命令レジスタは、ラッパーシリアル制御（ＷＳＣ）入力端子からラッパー命令レジスタの制御入力を受ける。
【００２０】
上述の入力端子はシリアルポートのものである。ラッパーは、図１にパラレル（並列）入力ポートＰＩ及びパラレル出力ポートＰＯとして示すパラレルポートを有することもできる。
【発明の開示】
【発明が解決しようとする課題】
【００２１】
本発明は、特にラッパー命令レジスタに関するものである。ＷＩＲは代表的に、いわゆる“シフト／シャドウレジスタ”を用いて構成されている。この種類のレジスタの基本的構造は、シリアルシフトレジスタ及びパラレル更新レジスタから成っている。これら２つの順次の層に対する１つの利点は、シリアルシフトレジスタ内に一組の新規なテストモード状態（テストベクタ）をローディングしている間、パラレル更新レジスタ内のテストモード状態（命令データ）を維持することができるということである。
【００２２】
ラッパーは、（コアをテストするための）内部テストモード及び（コアとの相互接続をテストするための）外部テストモードを支援する。これらのモードはＷＩＲにより決定され、ＷＩＲは選択されたテストモードに対応する一組の制御信号を生じる。この一組の制御信号によりＷＢＲが制御される。後述するように、ＷＢＲセルへの１つの制御入力が「hold」である。
【００２３】
ＷＩＲ（ラッパー命令レジスタ）は何らかの特定のテストモード中に、静的な制御パラメータを出力する。しかし、ラップされた埋め込みコアを含むラップされたコアをテストする場合、全範囲に亘って適用するためには（全テストカバレッジを達成するためには）複数回のテストが必要となる。特に、ラッパーが分離を行なうものであり、これらラッパーは内向き及び外向きの動作モードを有する。全範囲に亘って適用するには、ラップされた複数のコアを適切なモードに設定する様々なテストが必要となる。
【００２４】
更にＷＩＲの適用範囲の固有の特性の為に、全範囲の適用が達成されなくなるおそれがある。
【００２５】
従って、命令レジスタによって制御に付加的な融通性を持たせる必要がある。
【課題を解決するための手段】
【００２６】
本発明によれば、集積回路コア又は集積回路コアの外部の回路をテストするテスト回路であって、このテスト回路が、テスト命令データを記憶するシフトレジスタ回路を具え、このシフトレジスタ回路が複数の回路段を有し、各回路段が、
シリアル入力端子及びシリアル出力端子と、
このシリアル入力端子から受ける信号を記憶し、且つこの信号をスキャンチェーン動作モードで前記シリアル出力端子に供給する第１のシフトレジスタ記憶素子と、
前記第１のシフトレジスタ記憶素子からの信号を記憶し、且つこの信号を更新動作モードでパラレル出力端子に供給する第２のパラレルレジスタ記憶素子と
を有する
テスト回路において、
このテスト回路が更に、シリアルテスト入力端子を前記シフトレジスタ回路の前記シリアル入力端子に接続する、又は付加的な入力端子を前記シフトレジスタ回路の前記シリアル入力端子に接続するマルチプレクサと、第１の更新動作モードを制御する第１の入力端子と、前記付加的な入力端子が前記シリアル入力端子に接続された場合に用いられる第２の更新機構とを更に具えるテスト回路
を提供する。
【００２７】
この回路構成によれば、命令シフトレジスタに対する標準的なシリアルインタフェースを提供するが、ユーザがデータを命令レジスタに供給してテスト処理の動的制御を達成するようにしうる付加的な更新モードをも提供する。
【００２８】
前記シフトレジスタ回路の少なくとも１つの回路段に記憶されている特定のデータ値に応答して他のシフトレジスタ段を前記更新動作モードに設定する更新信号を発生する制御回路によって、前記第２の更新機構を構成するのが好ましい。
【００２９】
このようにすることにより、更新モードを起動（トリガ）するために命令レジスタ内のデータを用いて、命令レジスタの出力を、シフトレジスタに供給されるデータに基づいて動的に生じさせるようにすることができる。よって、シフトレジスタにローディングされたデータにより起動される付加的な更新モードが実現される。
【００３０】
付加的な入力端子は、テスト回路の少なくとも１つのパラレル入力ポートを具えることができる。
【００３１】
テスト回路は、更に命令レジスタ選択信号入力端子を有し、更にこの命令レジスタ選択信号入力端子がアクティブとなった場合に、前記テスト回路への前記シリアル入力端子が前記マルチプレクサを介して前記シフトレジスタ回路の前記シリアル入力端子に接続され、前記命令レジスタ選択信号入力端子がアクティブでない場合に、前記付加的な制御入力端子が前記マルチプレクサを介して前記シフトレジスタ回路の前記シリアル入力端子に接続されるようにするのが好ましい。このようにすることにより、標準的なテスト動作用に前記命令レジスタが選択された場合に、テスト回路の標準的な動作を維持するようにしうる。
【００３２】
前記シフトレジスタ段を更新動作モードに設定するために更新信号入力端子を設け、命令レジスタ選択信号入力端子がアクティブになった場合のみ、この更新信号入力端子は動作可能となるようにしうる。この更新機構がテストのための標準的な更新手段であり、本発明は付加的な更新機構を提供する。
【００３３】
制御回路は、前記第１のシフトレジスタ記憶素子の１つにローディングされた信号を受けるようにしうる。このようにすることにより、シフトレジスタにローディングされたデータが更新制御信号として用いられる。この目的のために、１ビットを用いるようにしうる。この場合、前記制御回路は、更新信号を前記第２のパラレルレジスタ記憶素子に供給する論理ゲート構造を具えるようにしうる。
【００３４】
命令レジスタ選択信号がアクティブでなく、且つ前記特定のデータ値が存在する場合に、又は前記命令レジスタ選択信号がアクティブであり、且つ外部更新信号がアクティブである場合に、前記論理ゲート構造が更新信号を生じるようにしうる。
【００３５】
制御回路によって更新が開始された後に第２のパラレルレジスタ記憶素子に記憶されたデータを、ラッパー境界レジスタセルを直接制御するために、又はラッパー命令レジスタ出力として用いることができる。
【００３６】
制御回路は、前記シフトレジスタの少なくとも２つの回路段に記憶されている特定のデータ値に応答して、埋め込みコアのテストを行なう第１の信号及び付加的なテストモードを達成するための第２の信号を発生するようにしうる。
【００３７】
シフトレジスタ回路は、埋め込みコアテストアーキテクチャ用の、例えば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」を規定する。
【００６０】
リセット信号「wrstn 」はＷＩＲの出力をリセットする。又、アプリケーションモードは、動作モードのリセット中に（効果的にラッパー機能を無効にして）実行される。
【００６１】
上述したところから明らかなように、図４に示される回路の機能は、
‐  シフト信号を用いることにより、シリアル入力を、フリップフロップ３２を介してシリアル出力にシフトするために、又は
‐  「外部」信号をフリップフロップ３２にローディングし、その後、外部信号をフリップフロップ３８又はシリアル出力端子に供給しうるようにするために
選択できる。
【００６２】
図４においては、フリップフロップ３２はシリアル命令レジスタの一部を形成しており、フリップフロップ３８はパラレル更新レジスタの一部を形成している。データは直列動作とは無関係に並列で更新レジスタにローディングすることができる。従って、テストモード状態をパラレル更新レジスタに記憶することができ、一方、新規な組のテストモード状態（すなわち命令）はシリアルシフトレジスタにローディングする。
【００６３】
図４の回路は付加的なテスト機能を有し、この目的のためにＷＩＲの出力がインバータ４０を介してマルチプレクサ３４の「１」入力端子にフィードバックされるようにする。
【００６４】
この図４の回路は捕捉信号を内部テスト制御信号として用いている。捕捉信号が高レベルになると、ＷＩＲの出力の反転信号がマルチプレクサ３０に供給され、この反転信号はその後、シフト信号入力がなければフリップフロップ３２に供給される。よって、ＷＩＲの出力のこの反転信号を、更新制御信号を用いることにより図４の部分構造を介してＷＩＲの出力端子に伝達されるように制御することができる。
【００６５】
図４は、ラッパー命令レジスタを形成するための１つの構成要素（部分構造）を示している。図５は、図４に示される構成要素を用いることにより形成されたラッパー命令レジスタを示している。
【００６６】
図５に示されるように、ＷＩＲは図４の構成要素の直列チェーンを有し、１つの構成要素のシリアル出力端子が次の構成要素のシリアル入力端子に接続されている。全ての構成要素は、同じクロック信号、捕捉信号、シフト信号、更新信号及びリセット信号を共有している。
【００６７】
このレジスタでは、ＷＩＲシリアル入力（「si」）ポートを用いてデータを直列にローディングするとともに、テストを行うコアに供給すべきテストベクタを有しうるＷＩＲ出力を並列に生じる。
【００６８】
しかし、このアーキテクチャによれば、命令レジスタをテストすることにより、特にシリアルフリップフロップと捕捉及びシフトマルチプレクサとを通って１及び０が伝播するとともに、更新フリップフロップ及び更新マルチプレクサを通って１及び０が伝播するのをモニタリングすることもできる。部分構造間の一連のスキャンチェーン接続を介して１及び０が伝播するのもシリアル出力端子を用いることによりモニタリングすることができる。
【００６９】
本発明はＷＩＲに関するものであり、テスト中に、命令レジスタにより駆動される信号に動的な値を割り当てることができる。これらの動的な値は、標準スキャンプロトコルを用いることによりＷＩＲシフトレジスタにローディングすることができるので、本発明の手段は標準の自動テストパターン生成（ＡＴＰＧ）ツールにより支援される。
【発明を実施するための最良の形態】
【００７０】
図６は、上述された様々なレジスタが本発明の実施例に従って互いにどのように接続されうるかを示す線図である。
【００７１】
図６に示されるように、ラッパーシリアル入力「wsi 」はラッパー境界レジスタＷＢＲ６０及びラッパーバイパスレジスタＷＢＹ６２に供給される。第１のマルチプレクサ６４は、（ＷＩＲにより駆動される）テスト信号「wir_ws_extest 」に応答して、ＷＢＲ出力又はＷＢＹ出力のどちらを通すかを決定する。このテスト信号により、シリアルデータが直接ＷＢＲに供給されることになる外部テストを実行するか否かが決定される。外部テストを行わない場合は、バイパスレジスタが使用されることになる。
【００７２】
信号「selectwir 」は、テストレジスタが使用されていることを表わし、テストレジスタが使用されている間にシリアルデータがＷＩＲにローディングされる。ＷＩＲが信号「selectwir」により選択されると、ＷＩＲ出力はシリアルラッパー出力「wso 」として生じる。一方ＷＩＲが選択されないと、ＷＢＲ又はＷＢＹの出力がシリアル出力端子に送られる。この選択は第２のマルチプレクサ６６によりなされる。
【００７３】
ＷＩＲが上述した目的で使用されていない場合には、ＷＩＲをコア及びチップの内部スキャンチェーンデータ用に用いることができる。従って、この目的のために、図６の装置に、コア及びチップの標準内部スキャンチェーンと連結されるＷＩＲシフトレジスタ６８を設ける。内部スキャンチェーンデータ（シリアルデータ）をラッパーパラレル入力端子「wpi[n]」で受ける。このラッパーパラレル入力端子はパラレルインタフェースの１つのピンとすることができる。その出力はラッパーパラレル出力「wpo[n]」として生じる。ＷＩＲシフトレジスタ６８とコア／チップの内部スキャンチェーンとを連結するために、付加的なマルチプレクサ７０及びアンチスキュー素子７２を標準IEEE 1500 規格のアーキテクチャに加える。
【００７４】
マルチプレクサ７０は、ＷＩＲレジスタが選択されていない場合、つまり信号「selectwir 」が低レベルの場合、内部スキャンチェーンデータをパラレル入力端子「wpi[n]」からＷＩＲレジスタへ供給する。従って、内部スキャンチェーンの接続を、（必要に応じ）シリアル入力データのＷＢＲ又はＷＢＹレジスタへの供給と並列に行なうことができる。
【００７５】
アンチスキュー素子７２は主クロック信号「wrck」により同期がとられ、あるクロックドメインと別のクロックドメインとの間で通信を可能にするために用いられる。
【００７６】
図７は、本発明のラッパー命令レジスタ及びこれに関連する制御論理回路を詳細に示す線図である。図７では、図６の装置を用いてパラレル入力ポートからＷＩＲにアクセスさせることにより、テスト能力を向上させている。
【００７７】
図４及び図５を参照して説明したように、各ＷＩＲ段はシリアルレジスタ部及びパラレル更新部を有している。図７では、シリアルレジスタ部同士を結合したものを７６として、パラレル更新部を７７として示している。
【００７８】
信号「selectwir 」が低レベルの場合、前述したようにパラレル入力「wpi[n]」がシリアルシフトレジスタ７６をアクセスする。シリアルシフトレジスタ内のデータの第１ビットが、付加的な回路素子７８に供給される。この回路素子７８は、更新部７７と同様の構造とすることができる。回路素子７８は、更新信号に応答してデータをその出力端子「wir_emb 」に生じ、このことがＷＩＲを用いた埋め込みテストを容易とすることを表わしている。
【００７９】
更新は、通常の動作モードの一部として、つまり信号「selectwir 」が高レベルの場合に実行される。この場合、シリアルポートを用いてシリアルシフトレジスタに命令がローディングされる。
【００８０】
更新信号が高レベル（及び信号「selectwir 」が依然として高レベル）の場合、この信号は回路素子７８に供給され、しかも論理回路８０のＯＲゲートによりこの信号を他の全ての更新部７７に供給する。
【００８１】
以下の説明から明らかなように、このＷＩＲデータの第１ビットにより制御を行なう。
【００８２】
更新信号が低レベルになると、信号「selectwir 」が高レベルである限り論理回路８０の出力は低レベルとなり、従って信号「selectwir 」が高レベルである場合、論理回路８０は回路動作に影響を及ぼさない。
【００８３】
しかし、信号「selectwir 」が低レベルになると、論理回路８０の出力は「wir_emb 」の値に依存する。信号「selectwir 」が低レベルで「wir_emb 」が高レベルであると、ＡＮＤゲートは１を出力し、この出力がＯＲゲートを通って更新部７７に送られ、これら更新部は固定の更新モードに保持される。従って、回路７８に高レベルのビットがローディングされると、信号「selectwir 」が低レベルである場合に付加的な更新機構が開始される。
【００８４】
このようにして、シリアルレジスタからパラレルレジスタへの更新転送が起動される。
【００８５】
論理回路８０の出力端子は、命令レジスタの更新段を連続的に更新する出力を生じる。更新段は、図７に図示されるようにクロック信号「wrck」の反転で更新され、アンチスキューと称される動作が実現される。これにより、制御信号が様々なクロックドメインに供給される場合に、安全にデータを転送することができる。この動作は、組合せのバッファ動作にマッピングされ、組合せのＡＴＰＧにより完全に支援される。
【００８６】
この付加的な更新モードでは、「wir_update」が低レベルで固定されるので、回路７８は出力を更新せずそのまま維持する。従ってこの更新モードは、ＷＩＲシフトレジスタを通ってその後に供給されるデータに関わらず維持される。
【００８７】
上述した説明から明らかなように、図７の構造により、ＷＩＲからの出力を、パラレルポート「wpi[n]」からローディングされたデータに基づいて得られるようにする。
【００８８】
よって、ＷＩＲ出力がＷＢＲセルを制御する場合、ＷＢＲセル全体を動的に制御できるようになる。図７に示すように、ＷＩＲ更新部７７の出力を、ＷＢＲセルのホールド入力に直接マッピングでき、これによりＷＢＲ機能を制御する。これにより、１つのコアがより大きなコアに埋め込まれている場合のテストを有効にしうる。
【００８９】
付加的な更新モードに切り換えた後、スキャンチェーンに所望の刺激データがローディングされる。所望の刺激データがローディングされるまでスキャンチェーンを通って伝搬するこのデータの値は使用されない（その理由は、テストプロトコルはＷＩＲローディングと同時に実行されない為である）。
【００９０】
これにより、埋め込みラッパーの動作モード、つまり内向き又は外向きの動作モードのテスト中に、特に動的な制御が可能となる。
【００９１】
この埋め込みテストは上述したように、信号「selectwir 」が低レベルで、信号「wir_emb 」が高レベルである場合に実行される。
【００９２】
ＡＴＰＧの制御下で動的なアクセスを可能にすることにより、一組のパターンを階層化されているコア全体に適用することができる。静的な制御のみの場合には、全ての埋め込みコア（これらのコアも階層化できる）の内部論理回路及びコア間の相互接続にテストを適用するために複数のＡＴＰＧの実行が必要となる。
【００９３】
これにより、現存するテストパターン生成ソフトウェアの質を高めることができ、付加的なテスト適用範囲を提供し、特に埋め込みコアのテスト適用範囲を可能にする。
【００９４】
図８は図７の変形例であり、自動テストパターン生成アルゴリズムのテストベクタに加えることができる付加的なテストベクタを提供するためのアーキテクチャを用いている。図８では、更新部７７の出力を、「wir_output 0」〜「wir_output m-1」として示している。論理回路８０を制御する信号は、ＷＩＲシリアルシフトレジスタ内にスキャンされる付加的なＷＩＲテストベクタを構成するための信号なので、「wir_scan」と変更されている。それ以外では、図８は図７と一致している。このアーキテクチャの使用により、内部コア論理回路のテストにおいて、ＡＴＰＧの適用範囲を広げることができる。
【００９５】
上述した２つの手法を組み合わせることができ、図９は、埋め込みテスト及び付加的なスキャンテスト用に複数の付加的なスキャン要素が設けられているアーキテクチャを示している。
【００９６】
回路のバンク９０は、（付加的な更新モード中でさえも）静的な出力を生じる。２つの回路９２はコア埋め込みテスト用の回路であり、ホールド入力回路信号及びホールド出力回路信号を生じる。回路９４は動的アクセス用の回路であり、特にデジタル論理回路のテストに用いられる。
【００９７】
このシステムは適応性があり、標準スキャンチェーン動作、アナログモジュールをテストするのに適した静的テスト動作及びデジタルモジュールをテストするのに適した動的テスト機能を可能にする。
【００９８】
上述した例では、自動更新を可能にするための付加的な論理回路は本質的に、付加的なシフトレジスタ素子として実現されている。付加的なシフトレジスタ段を使用しないで、現存するシフトレジスタ段に付加的な論理回路を設けることもできる。これにより、シフトレジスタ段と更新レジスタ段との１対１の関係性もなくなる。従って、制御回路をシフトレジスタ段間に有効に分布させることができる。
【００９９】
上述した例では、付加的な回路により自動更新を開始させている。しかし、このようにせずに、付加的な制御入力を用いて、付加的な更新機構を実現することもできる。この付加的な更新機構を上述した例のようにＷＩＲシフトレジスタ内の特定のデータに応答して起動させることができ、又はこの特定のデータは、付加的なテスト制御入力として外部で発生させることもできる。
【０１００】
上述したところでは、IEEE STD 1500 規格のラッパーアーキテクチャを参照して本発明を説明した。しかし、より一般的には、本発明は、パラレル及びシリアル入力が設けられたコアテストアーキテクチャで用いられているレジスタに対して適用できる。
【０１０１】
当業者にとっては、本発明の他の様々な変形例が明らかである。
【図面の簡単な説明】
【０１０２】
【図１】図１は、集積回路コアに対する既知のテスト回路ラッパーを示すブロック線図である。
【図２】図２は、図１におけるテスト回路ラッパーの１つのラッパー境界セルを詳細に示すブロック線図である。
【図３】図３は、図１のテスト回路ラッパーのラッパー境界レジスタを示すブロック線図である。
【図４】図４は、図１におけるラッパー命令レジスタ用の１つの可能な部分構造のアーキテクチャを示すブロック線図である。
【図５】図５は、図４の部分構造を用いて形成された本発明によるラッパー命令レジスタの第１の例を示すブロック線図である。
【図６】図６は、パラレルラッパーインタフェースの１つのポートを用いてラッパー命令レジスタにアクセス可能とするための本発明の構成を示すブロック線図である。
【図７】図７は、テストの付加的な融通性の第１の使用例を適用したラッパー命令レジスタを詳細に示すブロック線図である。
【図８】図８は、図７に対応するが、テストの付加的な融通性の第２の使用例を適用したラッパー命令レジスタを詳細に示すブロック線図である。
【図９−Ｉ】図９‐Ｉは、本発明によるラッパー命令レジスタの第２の例の第１部分を示すブロック線図である。
【図９−ＩＩ】図９‐IIは、本発明によるラッパー命令レジスタの第２の例の第２部分を示すブロック線図である。
【図１】
2009512872.tif 000003
【図２】
2009512872.tif 000004
【図３】
2009512872.tif 000005
【図４】
2009512872.tif 000006
【図５】
2009512872.tif 000007
【図６】
2009512872.tif 000008
【図７】
2009512872.tif 000009
【図８】
2009512872.tif 000010
【図９−Ｉ】
2009512872.tif 000011
【図９−ＩＩ】
2009512872.tif 000012
【国際調査報告】
2009512872.tif 000013
2009512872.tif 000014
2009512872.tif 000015