(57)【要約】集積回路は、複数のクロック領域（10、12）を具える。テストデータは、スキャンチェーン（100、14、104）を通って、集積回路に入力される。テストモードでは、第１クロック領域(10)の機能出力端と第２クロック領域(12)の機能入力端との間の接続は中断される。テストデータはスキャンチェーン（100、14、104）から機能入力端に供給され、テスト応答は機能出力端から取り込まれる。テスト結果がスキャンセル（21）において取り込まれるとき、クロック領域間のそのタイミングずれがテストに影響を及ぼさないことを確実にするために、遅延回路（24、28）を用いて、スキャンセル（21）から機能入力端までテスト結果の転送を遅延させる。その後、テスト結果は、スキャンチェーンを通って出力される。
2008530549.tif 000002
【特許請求の範囲】
【請求項１】
機能出力端を有する第１機能回路を具える第１クロック領域および機能入力端を有する第２機能回路を具える第２クロック領域と、
データ入力端およびデータ出力端を有するスキャンセルを具え、前記データ入力端が前記第１機能回路の前記機能出力端に結合されたスキャンチェーンと、
第１および第２のマルチプレクサ入力端および出力端を有し、前記第１および第２のマルチプレクサ入力端が前記第１機能回路の前記機能出力端および前記データ出力端にそれぞれ結合され、前記出力端が前記第２機能回路の前記機能入力端に結合されたトランスペアレント回路と、
前記データ出力端と前記機能入力端との間に、前記トランスペアレントマルチプレクサと直列に結合された遅延回路と、
を具えることを特徴とするテスト可能な集積回路。
【請求項２】
請求項１に記載のテスト可能な集積回路において、
前記遅延回路は、第１および第２モード間で切り替え可能であり、
前記スキャンチェーンがテスト結果を取り込む通常テストモードにあるのか、テストデータをシフトするシフトモードにあるのかに応じて、第１の遅延および第２の遅延あるいは実質遅延なしが実現されること、
を特徴とするテスト可能な集積回路。
【請求項３】
請求項１に記載のテスト可能な集積回路において、
前記遅延回路は、前記トランスペアレントマルチプレクサと直列のトランスペアレント／ホールドラッチと、前記スキャンセルのクロック入力端に結合された制御入力端とを具え、
前記ラッチは、前記スキャンセルのデータ更新のためのクロックパルスの間、ホールドモードへ切り替わるように構成されていること、
を特徴とするテスト可能な集積回路。
【請求項４】
請求項３に記載のテスト可能な集積回路において、
前記遅延回路は、第１および第２モード間で切り替え可能であり、
前記スキャンチェーンがテスト結果を取り込む通常テストモードにあるのか、テストデータをシフトするシフトモードにあるのかに応じて、第１の遅延および第２の遅延あるいは実質遅延なしが実現され、
前記ラッチは、前記スキャンチェーンが前記通常テストモードにある間発生するクロックパルスに対して１クロックパルスの間、ホールドモードへ切り替わるように構成されていること
を特徴とするテスト可能な集積回路。
【請求項５】
請求項３に記載のテスト可能な集積回路において、
第１テストクロック信号を前記第１クロック領域に供給するための第１テストクロック出力と、第２テストクロックを前記スキャンセルおよび前記遅延回路の前記制御入力に供給するための第２テストクロック出力とを有するテスト制御回路を具え、
前記第１テストクロックおよび前記第２テストクロックは、前記第１テストクロックが前記第１クロック領域内で更新を生じさせる前に、前記スキャンセルが更新され且つ前記ラッチがホールドに設定され、前記第２クロック信号が前記ラッチをトランスペアレントに切り替える前に、前記更新が完了するように時間設定されている、
ことを特徴とするテスト可能な集積回路。
【請求項６】
請求項１に記載のテスト可能な集積回路において、
前記スキャンセルは、スキャンマルチプレクサとスキャンフリップフロップとを具え、
前記スキャンマルチプレクサは、第１および第２のマルチプレクサ入力端および出力端を有し、前記第１および第２のマルチプレクサ入力端が前記データ入力および前記スキャンチェーン内の前のスキャンセルにそれぞれ結合され、
前記スキャンフリップフロップは、前記スキャンマルチプレクサの前記マルチプレクサ出力に結合された入力端および、前記遅延回路および前記トランスペアレントマルチプレクサの直列回路を経て前記データ出力に結合された出力端を有し、
前記トランスペアレントマルチプレクサの前記第１のマルチプレクサ入力端は、前記スキャンマルチプレクサの前記出力端を経て前記第１機能回路の前記機能出力端に結合され、前記スキャンチェーン内の前記スキャンセルの次に続くスキャンセルのスキャン入力端は、前記トランスペアレントマルチプレクサの前記出力端に結合されている、
ことを特徴とするテスト可能な集積回路。
【請求項７】
前記遅延回路は、前記スキャンセルの前記出力端と、前記トランスペアレントマルチプレクサの前記第２のマルチプレクサ入力端との間に結合されることを特徴とする請求項１に記載のテスト可能な集積回路。
【請求項８】
複数のクロック領域を具える集積回路をスキャンチェーンを使用してテストする方法において、
前記集積回路を、第１クロック領域の機能出力端と第２クロック領域の機能入力端との間の接続が中断されるテストモードに切り替えるステップと、
前記スキャンチェーンからのテストデータの一部を、スキャンセルから前記機能入力端まで供給するステップと、 
前記テストデータに対するテスト応答を、前記機能出力端から前記スキャンセルに取り込むステップと、
前記テスト結果が前記スキャンセルにおいて取り込まれるとき、遅延回路を使用して前記スキャンセルから前記機能入力端への前記テスト結果の転送を遅延させるステップと、
前記テスト結果を前記スキャンチェーンを経てシフトさせるステップと、
を具えることを特徴とする集積回路テスト方法。
【請求項９】
請求項８に記載の方法において、
前記スキャンセルからの転送遅延は、取り込み中よりシフト中に短い遅延又は遅延なしを使用し、
取り込み後のシフトの再開前に、延長されたクロックサイクルまたはスキップされたクロックパルスを使用する、
ことを特徴とする集積回路テスト方法。
【請求項１０】
請求項８に記載の方法において、
前記遅延回路をシフト中アクティブに保持し、
前記第１クロック領域および前記スキャンセルに対して互に異なるクロックを使用し、これらのクロックは、前記第１クロック領域の前記クロックが前記第１クロック領域で更新を生じさせる前に、前記スキャンセルが更新され且つ前記スキャンセルの出力端の前記ラッチが保持に設定され、前記第２クロック信号が前記ラッチをトランスペアレントに切り替える前に、前記更新が完了するように時間設定されている、
ことを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、集積回路のテスト方法および、テストを容易化するように構成された集積回路に関するものである。
【背景技術】
【０００２】
米国特許出願第6,131,173号には、テストを容易化するように構成された集積回路が記載されている。集積回路は、通常の機能動作中（テストが実行されていないとき）、機能信号に影響を及ぼさないノーマリトランスペアレントテスト回路ブロックを含む。一般的に、この種のトランスペアレントテスト回路ブロックは、集積回路の機能回路ノードに挿入されるトランスペアレントマルチプレクサを含む。トランスペアレントマルチプレクサは、機能動作中、ノードに到着する機能ノード信号を、そのノードに接続された入力端を有する回路に通す。
【０００３】
テスト目的のために、ノーマリトランスペアレントテスト回路ブロックは、フリップフロップおよびスキャンマルチプレクサを有するスキャンセルを含む。スキャンマルチプレクサは、フリップフロップの前に位置し、フリップフロップの入力を回路ノードあるいは他のスキャンセルの出力に結合して、テストデータを集積回路に入出力するためのシリアルシフトレジスタを形成するよう作用する。フリップフロップの出力端はトランスペアレントマルチプレクサの入力端に接続され、テスト中、フリップフロップからのテストデータを機能ノード信号の代わりにする。通常、この種のテスト回路ブロックは、フリップフロップが、単一のテストサイクルにおいて、最初にテストデータを出力し、次に応答を取り込むテスト動作を実行するのに使用される。以下では、このフリップフロップを、「スキャンフリップフロップ」と呼ぶ。従来技術では、このフリップフロップとマルチプレクサの組み合わせを「スキャンフリップフロップ」と呼ぶことがある点に注意されたい。スキャンフリップフロップのこの意味を、本発明で用いる「スキャンフリップフロップ」という用語と混同してはならない。 
【０００４】
米国特許出願第6,131,173号には、この種のトランスペアレントテスト回路ブロックが、異なるクロック領域からの機能回路（機能動作中、相互に異なるクロック信号でクロックされる）間のノードに設けられるとき、問題が起こりうることが記載されている。この場合、回路ノードの異なる側の機能回路の相対的タイミングは、テスト中不確定である。その結果、ノーマリトランスペアレントテスト回路ブロックからデータを受信する回路が、ノーマリトランスペアレントテスト回路ブロックにおけるデータに対応するテストデータを１クロックサイクル内にクロックインするか否かは不確定である。
【０００５】
米国特許出願第6,131,173号には、この問題は、スキャンフリップフロップのデータがテスト中に更新されないホールドモードを提供することによって解決できる旨記載している。テスト回路ブロックがホールドモードに切り替えられるとき、スキャンフリップフロップの出力端はその入力端に結合される。その結果、スキャンフリップフロップがクロック遷移の前後で同一データを出力するため、クロック領域の相対的タイミングはもはや重要ではなくなる。
【０００６】
しかし、この解決法では、回路がホールドモードのとき、スキャンフリップフロップを用いてテストデータを取り込むことができないという問題がある。それゆえ、回路はより多くのスキャンフリップフロップを含まなければならず、また、１つスキャンフリップフロップを用いてテストデータ供給し、かつ、テストデータを取り込まなければならない場合、別々のテスト動作が要求される。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明の目的は、特に、異なるクロック領域とこれらのクロック領域間に位置するテスト回路ブロックとを含み、テストデータの供給およびテスト結果の取り込みを単一動作で確実に実行できるテスト可能な集積回路を提供することにある。
【課題を解決するための手段】
【０００８】
本発明によるテスト可能な集積回路は、請求項１に記載される。本発明による集積回路は、データ信号を２つのクロック領域間で通すための接続部が、トランスペアレント状態から、テスト結果が、前記接続部の入力側の第１クロック領域からスキャンセルに取り込まれるとともに、テストデータが、スキャンセルから前記接続部の出力側の第２クロック領域の回路へ供給される状態へと切り替えることができるように構成されている。遅延回路が、テスト結果の取り込み時間と、取り込み後他のクロック領域に伝送する時間との間の遅延を導入するために、スキャンセルに追加される。こうして、２つのクロック領域におけるクロック信号間のタイミングずれは、テストに影響を及ぼさない。 
【０００９】
遅延回路は、スキャンチェーンを延長しないように、すなわち遅延回路を経てテストデータをシフトさせるのに追加のクロックサイクルが必要とされないように実現することが好ましい。
【００１０】
一実施例では、遅延回路は、スキャンセルの出力の後段のホールド／トランスペアレントラッチによって実現され、このラッチは、取り込みから始まる時間間隔中ホールドモードに保たれるため、取り込み前からデータを一時的に保持する。ラッチのホールド／トランスペアレントモードは、スキャンセルに使われるクロック信号を使用して制御されることが好ましい。こうすると、付加的な時定数が回路によって導入されない。
【００１１】
他の実施例では、集積回路は、ラッチがテストデータのシフト中は永久に透明であり、テスト結果の取り込み中の通常テストモードにおいてのみホールドモードに切り替えられるように構成される。こうすると、クロック領域におけるタイミング変化がテストに重要でなくなる時間間隔が長くなる。他の実施例では、遅延回路は、通常テストモード中およびテストシフトモード中に動作する。これは、タイミング変化に対するトレランスを犠牲にして回路を単純化する。
【００１２】
集積回路は２つ以上のクロック領域を具え、これらのクロック領域のそれぞれの対間のデータ接続部は、スキャンセル、遅延回路およびトランスペアレントマルチプレクサを有するノーマリトランスペアレントテスト回路を含むものとすると有利である。これにより、全クロック領域に対して、同形のクロック信号を同時に使用して、多くのクロック領域のテストを実行することが可能となる。
【発明を実施するための最良の形態】
【００１３】
本発明のこれらのおよびその他の目的並びに利点を、添付図面を参照して、実施例の説明から明らかにする。
【００１４】
図１は、第１クロック領域10、第２クロック領域12、ノーマリトランスペアレントテスト回路ブロック14およびテスト制御回路16を具えるテスト可能回路を示す。第１クロック領域10は、機能論理回路102と、スキャンセル100、104の一部であるフリップフロップ110、112を具える。機能論理回路102の構造は、本発明にとって重要ではなく、例えば、論理ゲートの組み合わせのような、任意の種類の機能論理回路を用いることができる。
【００１５】
各スキャンセルは、スキャンセルのフリップフロップ110、112の入力端に結合された出力端を有するスキャンマルチプレクサ114、116を含む。フリップフロップ110、112は、第１クロック領域10のクロック入力CLK1からクロック信号を受信する。論理回路102に対して１つの入力端および２つの出力端しか示していないが、一般的には、これらの論理回路はもっと多くの入力端および出力端を有すると理解されたい。同様に、第１クロック領域には２つのスキャンセル100、104しか示されていないが、第１クロック領域10のクロック入力CLK1に結合されたクロック入力端と、論理回路102の出力端および入力端に結合された入力端および出力端とを有するもっと多くのスキャンセル（図示せず）が存在してもよいと理解されたい。一般的に、これらのスキャンセルは相互に結合されて、１つのスキャンシフトレジスタまたは複数のスキャンシフトレジスタを形成する。
【００１６】
同様に、第２クロック領域12は、機能論理回路120と、スキャンマルチプレクサ132およびフリップフロップ130を具えるスキャンセル122とを具える。第２クロック領域12内のフリップフロップ130は、第２クロック領域12のクロック入力CLK2からクロック信号を受信する。論理回路120に対して１つの入力端および２つの出力端しか示していないが、これらの論理回路は一般的にもっと多くの入力端および出力端を有すると理解されたい。同様に、第２クロック領域12のクロック入力CLK2に結合されたクロック入力端を有するもっと多くのスキャンセル（図示せず）が存在してもよいと理解されたい。一般的に、これらのスキャンセルは結合されて、１つ以上のシフトレジスタ・チェーンを形成する。
【００１７】
ノーマリトランスペアレントテスト回路ブロック14は、第１クロック領域10の機能論理回路102の出力端と結合された入力端および第２クロック領域12の機能論理回路120の入力端と結合された出力端を有する。ノーマリトランスペアレントテスト回路ブロック14は、第１クロック領域10のクロック入力CLK1と結合されたクロック入力端を有する。さらに、ノーマリトランスペアレントテスト回路ブロック14は、スキャンセル100の出力端に結合されたスキャン入力端および、スキャンセル104の入力端に結合されたスキャン出力端を有する。このように、第１クロック領域のスキャンセル100、104およびノーマリトランスペアレントテスト回路ブロック14は、スキャンチェーンを形成する。さらに、ノーマリトランスペアレントテスト回路ブロック14は、トランスペアレント制御入力端TEを有する。
【００１８】
テスト制御回路16は、スキャンマルチプレクサ114、116、132およびノーマリトランスペアレントテスト回路ブロック14のスキャン制御入力端に結合されたスキャン制御出力端SEを有する。さらに、テスト制御回路16は、ノーマリトランスペアレントテスト回路ブロック14のトランスペアレント制御入力端に結合されたトランスペアレント制御出力端TEを有する。図示していないが、一般的に、テスト制御回路16は、クロック信号をクロック入力CLK1、CLK2にそれぞれ供給するための少なくとも部分的に分離したクロック回路と、共通のテストクロック信号から導出される等しい周波数信号を、テスト中にテスト制御回路16の制御下で、クロック領域10、12のクロック入力CLK1、CLK2におけるクロック信号CLK1、CLK2の代わりとするためのクロック多重化回路とを含む。テストクロック信号CLK1、CLK2は、テストデバイス（図示せず）によって、集積回路の外部から供給してもよい。問題は、クロック信号が、集積回路内部で生成されるか、外部から供給されるかにかかわらず、これらのクロック信号の位相関係がテスト中に予測不可能になりうるということである。さらに、ノーマリトランスペアレントテスト回路ブロックがトランスペアレント接続を提供する間、回路は、クロック領域間のデータ転送を扱うために通常動作中に動作するハンドシェーク回路を含むことができる
【００１９】
図２は、ノーマリトランスペアレントテスト回路ブロック14の一実施例を示す。この実施例は、スキャンマルチプレクサ20、スキャンフリップフロップ22、ラッチ24、トランスペアレントマルチプレクサ26およびクロックフィルタ回路28を具える。スキャンマルチプレクサ20は通常データ入力端Dとスキャンデータ入力端Siとに結合されたマルチプレクサ入力端を有する。スキャンマルチプレクサ20は、スキャン・イネーブル制御信号SEを受信する制御入力端を有する。スキャンマルチプレクサ20は、スキャンフリップフロップ22の入力端に結合された出力端を有する。スキャンフリップフロップ22は、クロック信号CLK1を受信するように結合されたクロック入力端と、ラッチ24のデータ入力端に結合された出力端とを有する。このように、スキャンマルチプレクサ20およびスキャンフリップフロップ22は、ともにスキャンセル21を形成する。トランスペアレントマルチプレクサ26は、スキャンマルチプレクサ20の出力端およびラッチ24の出力端に結合されたマルチプレクサ入力端を有する。トランスペアレントマルチプレクサ26は、トランスペアレント制御信号TEを受信するように結合された制御入力端を有する。トランスペアレントマルチプレクサ26は、出力データQおよびテスト出力データSoを出力する出力端を有する。
【００２０】
クロックフィルタ回路28は、スキャン・イネーブル入力SEに結合された第１入力端と、クロック入力CLK1に結合された第２入力端と、ラッチ24の制御入力端に結合された出力端とを有する。
【００２１】
動作中、ノーマリトランスペアレントテスト回路ブロック14を、複数の異なる構成に切り替えることができる。通常の構成とは、入力端Dからのデータを出力端Qへ直接出力する構成である。この構成を実現するために、テスト制御回路16は、制御信号をスキャンマルチプレクサ20に供給して入力端Dからのデータを通過させるとともに、制御信号をトランスペアレントマルチプレクサ26に供給し、スキャンマルチプレクサ20からのデータを通過させる。
【００２２】
図３は、シフトイネーブル信号SE、クロック信号CLK1、データ信号D、シフトされたテストデータ信号Si、ラッチ24の制御信号Cおよび出力信号Q/Soを含む、テストに関連する信号を示す。
【００２３】
テスト中、テスト制御回路16は最初にノーマリトランスペアレントテスト回路ブロック14をシフト構成に切り替え、テスト入力端Siからのテストデータをスキャンフリップフロップを通して出力端Q/Soへシフトさせる。この構成を実現するために、テスト制御回路16は、制御信号SEをスキャンマルチプレクサ20に供給して入力端Siからのデータを通過させるとともに、制御信号TRをトランスペアレントマルチプレクサ26に供給してラッチ24からのデータを通過させる。
【００２４】
クロックフィルタ回路28は、シフトイネーブル（SEロジックハイ）のときに、ラッチ24をトランスペアレントに保つように機能する。例えば、クロックフィルタ回路28は、フィルタ・ラッチ280およびＡＮＤゲート282を含む。クロック入力CLK1が、ラッチ24の制御入力端に結合された出力端を有するＡＮＤゲート282の第１入力端に結合される。シフト制御入力SEがフィルタ・ラッチ280のデータ入力端に結合され、クロック入力CLK1がフィルタ・ラッチ280の反転入力端に結合される。フィルタ・ラッチ280は、ＡＮＤゲート282の反転入力端に結合された出力端を有する。動作中、ロジックハイのSE値がフィルタ・ラッチ280に格納されている間、ＡＮＤゲート282はラッチ24をトランスペアレントに保ち、ラッチ24の制御信号Cはロジックロウであり、データ信号Dはスキャンフリップフロップ22の出力信号に追従する。
【００２５】
シフト構成の間、ノーマリトランスペアレントテスト回路ブロック14に対するテストデータがスキャンフリップフロップ22に到達するまで、テスト制御回路16は一連のクロックパルスをクロック入力端CLK1に供給してテストデータをスキャンチェーンを経てシフトさせる。この時、このテストデータが、論理回路120への出力端Dに出力される。
【００２６】
次に、テスト制御回路16は、ノーマリトランスペアレントテスト回路ブロック14を、テスト結果がスキャンフリップフロップ22によって取り込まれる「通常テスト」構成に切り替える。この構成を実現するために、テスト制御回路16は、制御信号SEをスキャンマルチプレクサ20に供給し、論理回路102からのテスト結果を、入力端子Dを経て通過させる。次のアクティブクロック遷移で、スキャンフリップフロップ22は、このテスト結果１を取り込む。
【００２７】
ラッチ24は、取り込まれたテスト結果をトランスペアレントマルチプレクサ26に直ちに出力するのではなく、クロックサイクルの一部、すなわち、立上りエッジから立下りエッジまでの部分（例えば、クロックのデューティーサイクルが50%の場合、半クロックサイクル）の遅延をもって出力することを確実にする。クロックフィルタ回路28は、シフトイネーブル信号SEが、論理回路102からのテスト結果を入力端Dを経て通過させるようにスキャンマルチプレクサ20を制御するレベルになったという事実に応答して、この遅延動作が実行されることを確実にする。クロックフィルタ回路28はシフトイネーブル信号SEの遷移に追従するクロックパルスを送信し、このパルスはラッチ24をホールドモードにする。従って、このクロックパルスは、スキャンフリップフロップ22に入力端Dからテスト結果を取り込ませるが、このクロックパルスは、ラッチ24から、スキャンフリップフロップ22がテスト結果を取り込む前にスキャンフリップフロップ22によって出力されたデータを出力させる。
【００２８】
このように、トランスペアレントマルチプレクサ26の出力端Dの信号は、スキャンフリップフロップ22にテスト結果を取り込ませるクロックパルスの間、取り込まれた結果によって影響を受けない。その結果、少なくともクロックCLK2が、クロックCLK1に対して、ラッチ24によって導入される遅延（例えば、デューティーサイクルが50%の場合、半クロックサイクル）より大きく遅れない限りは、クロックCLK1およびCLK2間のタイミングずれは、クロックCLK2の制御下で取り込まれる出力Dに依存するテスト結果に影響を及ぼさない。
【００２９】
図１の実施例では、ラッチ24は、通常のシフト動作中、トランスペアレントなままである。それゆえ、ラッチ24は、シフト中、長いシフトレジスタパスにならない。図１の実施例では、選択的な伝送は、クロックフィルタ回路28の動作によって実現される。フィルタ・ラッチ280は、最初にシフトイネーブル信号SEの変化を通過させ、次に、クロックパルスがハイになるとき、シフトイネーブル信号SEを保持する。その結果、ＡＮＤゲート282は、ラッチ280をその間ホールドモードにするクロックパルスを通過させる。SEが復帰変化するまで、この状態は続き、復帰変化後、フィルタ・ラッチ280の出力信号はロウを維持する。出力信号がロウのとき、ラッチ24は透明である。クロックフィルタ回路28の特定の実施例を示したが、同一機能を有する他回路が可能であることに留意されたい。さらに、単一のクロックフィルタ回路28を、クロック領域10の出力において、１つ以上の他のクロック領域内の回路に結合された複数のノーマリトランスペアレントテスト回路ブロックで共有できることに留意されたい。
【００３０】
長い整定時間をシフトされたデータに与えるために、シフトイネーブル信号SEが、スキャンマルチプレクサ20が論理回路102からのテスト結果をシフト入力ＳＩを経て通過させるように制御するレベルに戻ったあと、１クロックパルスが抑制されることが好ましい。抑制は、テスト中、クロック信号を供給する外部テスト装置において、またはテスト制御回路16の制御下で実現することができる。このクロックパルスの抑制がない場合、クロックサイクルの一部分しか、ラッチ24から、トランスペアレントマルチプレクサ26などを通り、スキャンチェーンの次のスキャンフリップフロップまでデータを伝播させるのに利用できない。無論、回路が、この次のスキャンフリップフロップの入力信号をクロックサイクルの関連部分で整定させるのに十分に急速なときは、クロックパルスを抑制する必要がない。他の方法として、SEがシフトイネーブル値まで戻る間のクロックサイクルを、整定できるのに十分な長さに引き伸ばしてもよい。しかし、クロックパルスの抑制は、安定したクロック信号を用いることができるという利点がある。
【００３１】
図４は、ノーマリトランスペアレントテスト回路ブロックの代替例を示す。この実施例では、追加のフリップフロップ40、クロック・イネーブル回路42および追加のマルチプレクサ44が設けられている。スキャンフリップフロップ22および追加のフリップフロップ40の入力端は並列に結合され、それらの出力端は追加のマルチプレクサ44を経てトランスペアレントマルチプレクサ26の第２の入力端に結合される。クロック入力CLK1は、クロック・イネーブル回路42を経て、追加のフリップフロップ40のクロック入力端に結合される。シフトイネーブル入力SEは、クロック・イネーブル回路42のイネーブル入力端に結合される。 
【００３２】
動作中、スキャンフリップフロップ22および追加のフリップフロップ40は、シフトモードにおいて、同じテストデータをクロックインし、スキャンフリップフロップ22からのデータがシフトされる。通常テストモードでは、テスト結果がスキャンフリップフロップ22に取り込まれるクロックサイクルにおいて、追加のフリップフロップ40からのデータが出力Q/Soに供給される。SEの復帰切り替え後、前実施例の場合と同様に、クロックサイクルを抑制するか、または、伸長することが好ましい。あるいは、クロック・イネーブル回路42を、スキャンフリップフロップ22のクロック入力端に結合してもよい。この場合、追加のフリップフロップ40を用いてテスト結果を取り込み、このテスト結果をテストシフト構成への切り替え後の１サイクルに供給する。 
【００３３】
図４の回路は、追加のフリップフロップ40がスキャンチェーンと直列にないため、完全にはテストされないという不利な点を有する点に留意されたい。この点で、図２の回路の方が有利である。 
【００３４】
図５はノーマリトランスペアレントテスト回路ブロックの他の代替例を示し、この例では、ノーマリトランスペアレントテスト回路ブロックは、スキャンフリップフロップ22およびトランスペアレントマルチプレクサ26の間に、スキャンフリップフロップ22と直列に追加のフリップフロップ50を含む。動作中、同じテストデータの２つのコピーが、通常テストモードに切り替わる前に、スキャンフリップフロップ22および追加のフリップフロップ50にスキャンチェーンを通してシフトされる。その結果、追加のフリップフロップ50の出力信号は、テスト結果がロードされるクロックサイクルの間変化しないので、クロック領域間のタイミングずれは影響しない。図２の回路と比較して、この回路では、スキャンチェーンが長くなるので、テストに必要な時間が長くなるという不利な点がある。
【００３５】
図６は、２つのクロック領域10、12を有する他のテスト可能な回路を示す。この回路では、図１の回路と異なり、スキャンチェーンは、第１クロック領域10のスキャンセル100から、ノーマリトランスペアレントテスト回路ブロック14を通り、第２クロック領域12のスキャンセル122に達する。さらに、独立したクロック信号CLKTSTが、ノーマリトランスペアレントテスト回路ブロック14に供給される。
【００３６】
図７は、図６の回路に使われるノーマリトランスペアレントテスト回路ブロック14の一実施例を示す。この実施例では、ラッチ24の制御入力は、クロック信号CLKTSTに結合される。この実施例では、ラッチ24は、スキャンフリップフロップ22が新しいデータを引き継ぐCLKTSTのクロック遷移に追従するクロックサイクルの一部の間、ホールドモードに切り替えられる。 
【００３７】
図８は、図７の回路ブロックの、動作中の信号を示す。追加のクロック信号CLKTSTはCLK1より先にクロック遷移するが、ラッチ24を用いるために、ラッチ24がホールドモードに保たれる間、取り込まれたデータのトランスペアレントマルチプレクサ26への出力はクロック位相の一部分だけ遅れる。これは、第２クロック領域12のスキャンセル122のスキャンフリップフロップが、クロック領域10、12のクロック信号CLK1、CLK2間のタイミングずれと無関係に、「古い」テストデータに依存するテスト結果を取り込むことを可能にする。ノーマリトランスペアレントテスト回路ブロック14は、これらのタイミングずれを埋める。通常テスト動作中、ノーマリトランスペアレントテスト回路ブロック14は、第１クロック領域10からの出力の変化に先立って、テストデータを取り込むが、取り込んだデータを、遅延後にのみその出力を更新するのに使用するので、第２クロック領域12は、クロックCLK1、CLK2間のタイミングずれと無関係に、古いデータに依存する結果を取り込むことが可能である。
【００３８】
図２と図７の実施例を比較すると、図２の実施例の方が（クロック信号の対向エッジ間のクロックサイクルの一部に亘るタイミングずれを有効に許容しうるのみである）図７の実施例より、タイミングずれに対して大きな許容量（実効的にフルクロックサイクル）をもたらす点に注意されたい。 
【００３９】
本発明を特定の実施例を用いて説明したが、本発明はこれらの実施例に限定されず、種々に実施可能であることを理解されたい。例えば、２つのクロック領域のみを示したが、実際の回路では、２つ以上のクロック領域を用いることができ、それぞれのクロック領域間の各信号接続部に、ノーマリトランスペアレントテスト回路ブロック14を挿入することができることを理解されたい。本発明は異なるクロック領域において質的に異なるクロック信号（すなわち異なるクロックパルスが抑制されるクロック信号）を必要としないので、他の手段を必要とすることなくこれが可能であることに留意されたい。
【００４０】
さらに、一般的に、クロック領域10が他の１つあるいは複数のクロック領域に結合される複数の出力を有することができると理解されたい。この場合、一つ以上の実施例で示すような、複数のノーマリトランスペアレントテスト回路ブロックを設けることが好ましい。これらのノーマリトランスペアレントテスト回路ブロックは、クロック領域のための単一のスキャンチェーン内に結合することができ、クロック領域内からのスキャンセルも含むことができる。スキャンセルおよびノーマリトランスペアレントテスト回路ブロックは、スキャンチェーン内に任意の順番で配置することができる。代案として、それらを、複数の並列のスキャンチェーン内に、任意の組み合わせで配置することもできる。
【００４１】
さらにまた、ノーマリトランスペアレントテスト回路ブロック14は種々に変更可能であることに留意されたい。例えば、ラッチ24は、トランスペアレントマルチプレクサ26の出力端側に移設することができる。しかし、これは、通常の機能動作中の遅延がわずか増加するという不利がある。 
【００４２】
他の例として、トランスペアレントマルチプレクサ26の第１マルチプレクサ入力端は、スキャンマルチプレクサ20の出力端に結合する代わりに、ノーマリトランスペアレントテスト回路ブロック14のデータ入力端に結合することができる。これは、通常動作中の遅延を減少させる。しかし、図２に記載されている接続は、データをトランスペアレントマルチプレクサ26に供給するための接続をテストすることができる追加の構成が可能であるという利点を有する。この構成では、スキャンマルチプレクサ20がシフト・データを通過し、トランスペアレントマルチプレクサ26がスキャンマルチプレクサからのデータを通過するようにされる。このように、スキャンフリップフロップ22およびラッチ24はバイパスされる。この構成では、トランスペアレントマルチプレクサ26への接続をテストするためにテストデータがスキャンチェーンを通ってシフトされる。
【００４３】
さらにまた、スキャンチェーン内の、ノーマリトランスペアレントテスト回路ブロック14の後の次のスキャンセルのスキャン入力端がトランスペアレントマルチプレクサ26の出力端に接続している実施例を示したが、代案として、このスキャン入力端はラッチ24の出力端（トランスペアレントマルチプレクサ26の入力端）またはスキャンフリップフロップ22の出力端（ラッチ24の入力端）に結合することができる点に留意されたい。スキャン入力端がラッチ24の入力端の前に接続される場合、このラッチ24はシフト中に自動的にバイパスされるので、シフト動作はラッチ24による遅延の影響を受けない。この場合、ラッチ24は、シフトイネーブル信号SEとは無関係に、クロックCLK1によってのみ制御することができる。またこの場合、ラッチ24は、スキャンフリップフロップ22と反対位相でクロックされるフリップフロップと交換することができる。しかし、トランスペアレントマルチプレクサ26の出力端からスキャン出力を取り出さないことによって、トランスペアレントマルチプレクサ26への接続をテストすることはより困難になりうる。スキャンチェーンがトランスペアレントマルチプレクサ26を経てデータを受信しないとき、いつでも、このトランスペアレントマルチプレクサ26を切り替えてクロック領域（10、12）間の直接接続を中断することができる点に注意されたい。これは、テスト動作の開始時（テストデータがスキャンチェーンに入力される前）、または、通常テストモードが開始する一度だけ、実行することができる。
【００４４】
さらに、スキャンフリップフロップ22によるテスト結果のサンプリングとトランスペアレントマルチプレクサ26によるそのテスト結果の出力との間の遅延は、クロック信号（CLK1またはCLKTST）の互に反対の遷移によって決定される実施例を示したが、代案として、この遅延を制御するために遅延回路をノーマリトランスペアレントテスト回路ブロックに含めることができると理解されたい。他の代替例として、ラッチ24の代わりに、通常テストモード中、（例えば、スキャンフリップフロップの出力を直接または遅延回路を介して選択するマルチプレクサを用いることによって）選択的に起動される非同期遅延回路（例えばインバータチェーン）を用いることができる。しかし、トランスペアレントマルチプレクサ26の出力において、スキャンフリップフロップ22によるテスト結果のサンプリングとテスト結果の出力との間の遅延をクロック信号によって制御することが好ましい。これは、クロック周波数の許容範囲に影響を及ぼさないという利点がある。さらに、シフト中、遅延が実質的に残存しない好適実施例を示したが、シフトをそこなわないかぎり、シフト中、若干の遅延が残存してもよいことを理解されたい。
【図面の簡単な説明】
【００４５】
【図１】テスト可能回路を示す。
【図２】ノーマリトランスペアレントテスト回路ブロックを示す。
【図３】このテスト回路ブロックの動作中の信号を示す。
【図４】ノーマリトランスペアレントなテスト回路ブロックの代替例を示す。
【図５】ノーマリトランスペアレントテスト回路ブロックの他の代替例を示す。
【図６】他のテスト可能回路を示す。
【図７】他のノーマリトランスペアレントテスト回路ブロックを示す。
【図８】このテスト回路ブロックの動作中の信号を示す。
【図１】
2008530549.tif 000003
【図２】
2008530549.tif 000004
【図３】
2008530549.tif 000005
【図４】
2008530549.tif 000006
【図５】
2008530549.tif 000007
【図６】
2008530549.tif 000008
【図７】
2008530549.tif 000009
【図８】
2008530549.tif 000010
【国際調査報告】
2008530549.tif 000011
2008530549.tif 000012