(57)【要約】【課題】本発明は、集積回路において、該集積回路が動作モードである時に境界試験を行うために使用することができる境界試験アーキテクチャを提供する。【解決手段】本発明の集積回路で使用する試験アーキテクチャは、所望の機能を実行する、入力データをキャリーする入力端子及び出力データをキャリーする出力端末を有する集積回路のアプリケーション論理回路（２０）と、集積回路のレジスタで形成されたシリアル走査経路であり、走査経路から連続的にロードされた比較データを保持するための少なくとも一つの比較データ・レジスタ（９８）を含む該シリアル走査経路と、比較データ・レジスタの比較データとアプリケーション論理回路のデータとを比較することに応じて比較信号（ＣＴＥＲＭ）を生成する、アプリケーション論理回路及び比較データ・レジスタに接続された比較論理（ＣＯＭＰＯＵＴ）とを備えている。【選択図】図１
2008170444.tif 000002
【特許請求の範囲】
【請求項１】
通常動作時のデータ信号を搬送する複数のデータ端子を含むアプリケーション論理回路と、
パッケージされた集積回路の外部との接続のためのシリアルデータ入力リードと、
パッケージされた集積回路の外部との接続のためのシリアルデータ出力リードと、
シリアルデータ入力リードとシリアルデータ出力リードの間に結合された少なくとも一つのシリアル走査経路と、
パッケージされた集積回路の外部との接続のためのモード選択信号入力リードと、
パッケージされた集積回路の外部との接続のためのシリアルデータクロック信号入力リードと、
パッケージされた集積回路の外部との接続のための外部事象入力リードであって、該外部事象入力リードはアクティブな外部事象入力信号を受け取る、前記外部事象入力リードと、
比較データを保持する少なくとも一つの事象データレジスタと、
事象データレジスタに結合された第１の入力、複数のデータ端子の少なくともいくつかの端子に結合された第２の入力、および比較出力端子を有する比較回路であって、該比較回路は、第１の入力の信号が第２の入力の対応する信号に一致する場合に比較出力端子にアクティブな比較信号を生成する、前記比較回路と、
比較出力端子に結合された内部事象信号入力リードと、外部事象入力リードに結合された外部信号入力リードと、事象出力端子とを有する事象制御回路であって、内部事象信号入力リード上のアクティブな比較信号および外部信号入力リード上のアクティブな外部事象信号の一つを事象制御回路が受け取ったことに応答して事象出力端子がアクティブな事象出力信号を搬送する、前記事象制御回路と、
制御回路を含み、かつ少なくとも一つのシリアル走査経路のデータの走査を制御するように少なくとも一つのシリアル走査経路に結合された制御出力と、モード選択信号入力リードに結合された第１の入力と、シリアルデータクロック信号入力リードに結合された第２の入力を有する試験アクセスポートと、
を有するパッケージされた集積回路。
【請求項２】
事象データレジスタは、シリアルデータ入力リードから比較データを受け取る、請求項１に記載の集積回路。
【請求項３】
集積回路は、アクティブな事象出力信号に応答して試験動作を行う、請求項１に記載の集積回路。
【請求項４】
集積回路は、通常動作中に試験動作を行う、請求項３に記載の集積回路。
【請求項５】
集積回路はさらに、複数のデータ端子に結合された入力、シリアルデータ入力リードに結合されたシリアル入力、シリアルデータ出力リードに結合されたシリアル出力、および試験アクセスポートの制御出力に結合された制御入力を有するデータレジスタを含む、請求項３に記載の集積回路。
【請求項６】
試験動作は、複数のデータ端子からデータレジスタへのデータの蓄積を含む、請求項５に記載の集積回路。
【請求項７】
試験動作は、データレジスタのシリアル出力からシリアルデータ出力リードへの蓄積データのシフトを含む、請求項６に記載の集積回路。
【請求項８】
試験動作は、集積回路の通常動作中に行われる、請求項７に記載の集積回路。
【請求項９】
部分（サブ）回路を含む集積回路であって、
部分回路は、
通常動作時のデータ信号を搬送する複数のデータ端子を含むアプリケーション論理回路と、
部分回路の外部からシリアルデータ入力信号を受け取るシリアルデータ入力リードと、
部分回路の外部にシリアルデータ出力信号を送信するシリアルデータ出力リードと、
シリアルデータ入力リードとシリアルデータ出力リードの間に結合された少なくとも一つのシリアル走査経路と、
部分回路の外部からモード選択信号を受け取るモード選択信号入力リードと、
部分回路の外部からシリアルデータクロック信号を受け取るシリアルデータクロック信号入力リードと、
部分回路の外部からアクティブな外部事象入力信号を受け取る外部事象入力リードと、
比較データを保持する少なくとも一つの事象データレジスタと、
事象データレジスタに結合された第１の入力、複数のデータ端子の少なくともいくつかの端子に結合された第２の入力、および比較出力端子を有する比較回路であって、該比較回路は、第１の入力の信号が第２の入力の対応する信号に一致することに応答して比較出力端子にアクティブな比較信号を生成する、前記比較回路と、
アクティブな比較信号およびアクティブな外部事象入力信号の一つを受け取ることに応答してアクティブな事象出力信号を生成する事象制御回路と、
制御回路を含み、かつモード選択入力リードおよびシリアルデータクロック入力リードからの入力に応答して、少なくとも一つのシリアル走査経路のデータの走査を制御するように少なくとも一つのシリアル走査経路に結合されたアクセスポートと、
を有する部分回路を含む集積回路。
【請求項１０】
事象データレジスタは、シリアルデータ入力リードから比較データを受け取る、請求項９に記載の集積回路。
【請求項１１】
集積回路は、集積回路の通常動作時に試験動作を行う、請求項９に記載の集積回路。
【請求項１２】
集積回路はさらに、試験アクセスポートに結合された制御入力、複数のデータ端子に結合された入力を有するデータ入力、シリアルデータ入力リードに結合されたシリアル入力、シリアルデータ出力リードに結合されたシリアル出力とを有するデータレジスタを含む、請求項９に記載の集積回路。
【請求項１３】
試験動作は、複数のデータ端子からデータレジスタへのデータの蓄積を含む、請求項１２に記載の集積回路。
【請求項１４】
試験動作は、データレジスタのシリアル出力からシリアルデータ出力リードへの蓄積データのシフトを含む、請求項１３に記載の集積回路。
【請求項１５】
試験動作は、集積回路の通常動作中に行われる、請求項１４に記載の集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、集積回路に関し、特に上位集積回路が正常に作動している間に急速試験を行うことを可能にする事象認定試験アーキテクチャに関する。
【背景技術】
【０００２】
伝統的に、基板組立体上の集積回路同上の間の配線を簡単に試験するために、境界走査試験法が使われてきた。試験中、基板上の集積回路は非作動試験モードとされ、基板上の各集積回路の全ての入力ピン及び出力ピンの間の配線接続を確かめるために、その境界走査経路がアクセスされる。
【０００３】
集積回路の境界を通過するデータを実時間で動的に観察できる能力は、基板上の複数の集積回路間の機能的相互作用を監視する方法を提供する。このような試験により、高価なテスター及び機械的探査固定具を使わなくては検出することの出来ないタイミングに敏感で且つ／又は間欠的な故障を発見することが出来る。動的境界観察は、システムの集積化、環境チャンバ試験、遠隔診断試験、及び組み込み自己試験を容易にする。集積回路の境界を通過するデータを実時間で動的に制御する能力は、基板上の一つ以上の集積回路の入力又は出力に試験データを入れる方法を提供する。この能力により、作動している回路中に誤りを伝播させて、（１）その回路がその誤りを黙許するか、（２）その回路がその誤りの発生を検出することが出来るか調べることが出来る。既知の誤りを回路に導入する能力は、故障許容設計においてバックアップ回路がやがて応答して正常なシステム動作を維持することを確かめる方法を提供する。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来の境界走査試験方法では、回路は試験中は非作動試験モードとされるので、基板が作動しているときに限って生じる可能性のあるエラーは観察不可能である。よって、この種の静的境界試験は、それが検出することの出来るエラーに限定される。更に、多くの場合に、正常な動作を妨げずに回路を試験することが必要となる。例えば、回路が航空機制御システムに使われているとすると、航空機が飛行しているときに試験を行うために該回路を作動不能にすることは出来ないかもしれない。この様な場合には、静的境界試験は不可能である。
【０００５】
従って、回路内で集積回路が正常に作動しているときに１個以上の集積回路の境界を通過するデータを動的に観察し制御するために使うことの出来る高等な境界試験アーキテクチャを提供する必要が生じた。
【０００６】
本発明は、従来の境界試験アーキテクチャに伴う欠点及び問題を実質的に解消又は防止する境界試験アーキテクチャを提供することをその課題とする。
【課題を解決するための手段】
【０００７】
本発明の上記課題は、集積回路で使用する試験アーキテクチャであって、所望の機能を実行する、入力データをキャリーする入力端子及び出力データをキャリーする出力端末を有する集積回路のアプリケーション論理回路と、集積回路のレジスタで形成されたシリアル走査経路であり、当該走査経路から連続的にロードされた比較データを保持するための少なくとも一つの比較データ・レジスタを含む該シリアル走査経路と、比較データ・レジスタの比較データとアプリケーション論理回路のデータとを比較することに応じて比較信号を生成する、アプリケーション論理回路及び比較データ・レジスタに接続された比較論理とを備えている試験アーキテクチャによって達成される。
【発明を実施するための最良の形態】
【０００８】
次に、添付図面を参照して、本発明について詳しく説明する。
【０００９】
本発明の好適な実施例は、図１ないし図２１を参照することにより良く理解することが出来る。図において同じ又は対応する部分に同じ数字が使われている。
【００１０】
改良された境界試験アーキテクチャ
図１は、本発明の境界試験アーキテクチャを取り入れた集積回路１０のブロック図であり、該回路は、例示の目的でレジスタとして示されている。集積回路１０は、次の様な入力、即ち、データ入力（Ｄ０−７）、データ出力（Ｑ０−７）、クロック（ＣＬＫ）、出力制御（ＯＣ）、事象認定イン（ＥＱＩＮ）、事象認定出力（ＥＱＯＵＴ）、走査データ・イン（ＳＤＩ）、走査データ・アウト（ＳＤＯ）、モード（ＭＯＤＥ）、及び走査クロック（ＳＣＫ）、を持っている。データ入力Ｄ０−７は、バッファー１４を通して入力試験セル・レジスタ（ＴＣＲ１）１２に接続されている。ＣＬＫ信号はバッファー１８を通して試験セル（ＴＣ２）へ入力される。入力試験セル・レジスタ１２及び試験セル１６の出力は、集積回路の内部論理（図の実施例では８進レジスタ２０）に接続されている。試験セル・レジスタ１２は、出力試験セル・レジスタ（ＴＣＲ２）の直列又はシリアル（以下、シリアルと称する）・データ入力（ＳＤＩ）に接続されたシリアル・データ出力（ＳＤＯ）も持っている。８進レジスタ２０の出力はＴＣＲ２  ２２のデータ入力（ＤＩＮ）に接続されている。ＴＣＲ２  ２２の出力は、トリステート（tristate）・バッファー２４を介してデータ出力Ｑ０−７に接続されている。出力制御信号はバッファー２８を介して試験セル（ＴＣ１）２６に接続されている。ＴＣ１  ２６の出力（ＤＯＵＴ）は、トリステート・バッファー２４のトリステート制御に接続されている。ＳＤＩ信号は、バッファー３６を介してＴＣ１  ２６と、事象認定モジュール（ＥＱＭ）３０、バイパス・レジスタ３２、及び命令レジスタ（ＩＲＥＧ）３４とに接続されている。ＴＣ１  ２６の走査データ出力は、ＴＣ２  １６の走査データ入力に接続されている。ＴＣ２  １６の走査データ出力は、ＴＣＲ１  １２の走査データ入力に接続されている。ＴＣＲ２２、ＥＱＭ３０及びバイパス・レジスタ３２の走査データ出力はマルチプレクサ３８に接続されている。マルチプレクサ３３の出力及びＩＲＥＧ３４の走査データ出力は、マルチプレクサ４０に接続されている。マルチプレクサ４０の出力は、バッファー４２を介して集積回路１０のＳＤＯ信号に接続されている。
【００１１】
ＥＱＩＮ信号はバッファー４４を介してＥＱＭ３０に入力される。ＥＱＭ３０は、ＴＣＲ２２からＣＴＥＲＭ信号出力も受信する。モード信号及びＳＣＫ信号は、それぞれ、バッファー５０及び５２を介して試験ポート４８に接続されている。該試験ポートは、制御信号をマルチプレクサ４０へ出力するとともに、集積回路１０の色々な構成要素へ走査制御信号及び試験制御信号を提供する。命令レジスタは、境界走査経路（ＴＣ１、ＴＣ２、ＴＣＲ１、ＴＣＲ２）、ＥＱＭ３０、バイパス走査経路、及びマルチプレクサ３８へ制御信号を出力する。
【００１２】
例示の目的で集積回路１０が８進レジスタとして図示されていることに注意しなければならない。本発明の境界試験アーキテクチャの例を示すために８進レジスタが選択されているが、本発明は、明確な制御入力、内部アプリケーション論理、及び／又はメモリ、並びにデータ転送用の入力及び出力を持っている任意の種類の集積回路に適用することの出来るものである。これ以外に、この境界試験アーキテクチャを利用することの出来る素子としては、例えば、カウンタ、シフトレジスタ、ＦＩＦＯ、ビットスライスプロセッサ（Bit Slice Processor)、ＲＡＭメモリ、マイクロプロセッサ、及びＡＳＩＣがある。更に、レジスタにおける本発明の使用態様を修正し、本発明の範囲から逸脱せずに、より大きな、又はより小さな入力バス及び出力バスと、図１に示されている例とは異なる色々な制御入力を有する様に構成することも出来る。
【００１３】
動作中、Ｄ０−７入力に現れるデータは、ＣＬＫ入力が活動化された時に８進レジスタ２０を介してＱ０−７出力へ転送される。ＯＣ入力が活動化されたとき、出力バッファー２４は高インピーダンス出力状態にされる。出力バッファー２４が高インピーダンス状態となっている間は、ＣＬＫが活動化されている時にデータをＤ０−７から８進レジスタに入力することが出来る。通常モード時には、試験回路レジスタ（ＴＣＲ１２、ＴＣＲ２２）は、入力データや出力データの流れを抑制しない。
【００１４】
図１に示されている試験構造は、試験ポート４８と４個の走査経路、即ち、命令レジスタ走査経路、境界走査経路、バイパスレジスタ走査経路、及びＥＱＭ走査経路、を持っている。境界走査経路は、各制御入力（ＣＬＫ及びＯＣ）のための試験セルと、ＴＣＲ１（これは各データ入力信号に対応する個々の試験回路の系列から成る）と、ＴＣＲ２（各出力信号に対応する個々の試験回路の系列から成る）とから成っている。
【００１５】
境界走査経路（ＴＣ１  ２６、ＴＣ２  １６、ＴＣＲ１  １２、ＴＣＲ２  ２２）を構成するのに使われた試験セルと、オフライン境界走査試験中の図１の集積回路１０の動作とは、発明の名称を「集積試験回路」とした米国特許出願第２４１，５２０号と、発明の名称を「強化試験回路」とした米国特許出願第２４１，５１１号と、発明の名称を「試験バッファー／レジスタ」とした米国特許出願第２４１，５３９号とに記載されている。これらの出願は、全て、Whetsel が１９８８年９月７日に出願したものであり、参照により、これを本書の一部とする。
【００１６】
制御入力試験回路
図２は、ＣＬＫ及びＯＣ制御入力に使われる試験セル１６、２６のブロック図である。
試験セル５４は、Ａ及びＢ制御信号により制御される４：１マルチプレクサ５６と、２：１マルチプレクサ５８と、レジスタ６０及びラッチ６２から成っている。４：１マルチプレクサは、（試験セル２６又は１６に応じてＣＬＫ又はＯＣから）ＯＤＩ入力経由のＤＩＮ信号と、ＳＤＩ入力と、レジスタ６０の出力と、ラッチ６２の出力とを受信する。マルチプレクサ５６の出力は、試験セルクッロに接続されているレジスタ６０に接続されている。レジスタ６０の出力は、ＨＯＬＤ信号により制御されるラッチ６２と、ＳＤＯ信号とに接続されている。該ラッチの出力は、ＤＩＮ信号と共に２：１マルチプレクサ５８に接続されている。この２：１マルチプレクサは、ＤＭＸ信号により制御される。２：１マルチプレクサ５８の出力は、ＤＯＵＴ信号に接続されている。この試験セルの動作は、表１−３に記載されている。この試験セルについては、前記の米国特許出願第２４１，５２０号に詳しく記載されている。
【００１７】
オフライン境界試験中、集積回路１０は機能しておらず、ＴＣ１  ２６及びＴＣ２  １６は、そのＤＩＮ入力に加えられた論理レベルを見て、そのＤＯＵＴ出力に取りつけられた論理を制御することが出来る。オンライン境界試験中は、試験セル１０は正常に動作しており、ＴＣ１  ２６及びＴＣ２  １６は、制御入力（ＣＬＫ及びＯＣ）が該試験セルを通してＤＩＮ入力からＤＯＵＴ出力へ自由に通過するのを許す。
【００１８】
（表１）
試験セルレジスタの真理値表           
Ａ    Ｂ    ＴＣＫ            動  作          
０    ０      ／      シフト（ＳＤＩ→ＳＤＯ）
１    ０      ／      ロード（ＯＤＩ→ＳＤＯ）
０    １      ／      トグル（ＬＤ →ＳＤＯ）
１    １      ／      アイドル（ＳＤＯ→ＳＤＯ）
／−ＴＣＫ信号の立ち上がりエッジ
【００１９】
（表２）
試験セル・ラッチの真理値表
ホールド          動  作              
０        ホールド（ＬＱ＝ＬＱ）
１        転送（ＳＤＯからＬＱへ）
【００２０】
（表３）
試験セル２：１マルチプレクサの真理値表
ＤＭＸ              動  作                  
０      通常モード（ＤＩＮからＤＯＵＴへ）
１      試験モード（ＬＱからＤＯＵＴへ）
【００２１】
データ入力試験レジスタ
データ入力信号に使われる試験回路が図３及び表４及び５に示されている。この試験回路は、前記の米国特許出願第２４１，５１１号に詳しく記載されている。この試験回路は、複数の、図２に示されている試験回路５４と、並列符号定数解析（ＰＳＡ）論理６４と、多項式タップ論理６５とから成る。ＰＳＡ回路６４は、２個のＮＡＮＤゲート６６、６８と、排他的ＯＲ（ＸＯＲ）ゲート７０とから成っている。ＮＡＮＤゲート６６、６８は、ＤＩＮ信号及びＤＡＴＭＳＫ信号とに接続された入力を有する。ＮＡＮＤゲート６８は、ＳＤＩ信号とＰＳＡＥＮＡ信号とに接続された入力を有する。ＮＡＮＤゲート６６、６８の出力はＸＯＲゲート７０に入力され、その出力は、４：１マルチプレクサ５６のＯＤＩ入力に接続されている。更に、多項式タップ回路６５は、ＮＡＮＤゲート７２と排他的ＮＯＲゲート（ＸＮＯＲ）７４とから成る。ＮＡＮＤ７２は、ＰＴＡＰ信号と、レジスタ６０の出力とに接続された入力を有する。ＮＡＮＤゲート７２の出力は、ＦＢＩ信号と共にＸＮＯＲ７４の入力に接続されている。ＸＮＯＲ７４の出力はＦＢＯ信号に接続されている。
【００２２】
（表４）
並列符号定数解析論理の真理値表
ＤＡＴＭＳＫ    ＰＳＡＥＮＡ      ＥＸＮＯＲ出力         
０              ０          ＯＤＩ＝“０”
０              １          ＯＤＩ＝ＳＤＩ
１              ０          ＯＤＩ＝ＤＩＮ
１              １          ＯＤＩ＝ＳＤＩ＋ＤＩＮ
【００２３】
（表５）
プログラマブル多項式フヘールドバック論理の真理値表
ＰＴＡＰ    入力ＦＢＩ    ＳＤＯ    出力ＦＢＯ  
０            ０          Ｘ          ０
０            １          Ｘ          １
１            ０          ０          ０
１            ０          １          １
１            １          ０          １
１            １          １          ０
【００２４】
オフライン境界試験中、ＭＯＤＥ及びＳＣＫ入力から外的に加えられた制御は、ＴＣＲ１  １２により複数のＤ０−７入力パターンを捕捉させるととも、その捕捉された結果を圧縮して符号定数（signature)とすることが出来、これをシフトさせて取り出し、検査することが出来る。この複数捕捉動作時に、ＰＳＡ論理６４は、ＳＤＩ及びＤＩＮ入力の排他的ＯＲの結果が表４に示されている様に可観測性データ入力（ＯＤＩ）を介して試験セルにロードされる様に調整される。単一捕捉動作時には、ＰＳＡ論理６４は、ＤＩＮ入力のみがＯＤＩ入力を介して試験セルにロードされることとなる様に調整される。多項式タップ論理６５の動作は表５に示されている。多項式タップ論理６５はＰＳＡ試験動作に必要なフィールドバックを提供する。図１の集積回路１０の、この様な動作モードは、前記の米国特許出願第２４１，５３９号に記載されている。
【００２５】
オンライン境界試験時には、内部ＥＱＭは、 Compare Term （ＣＴＥＲＭ）信号を介してＥＱＭ３０に入力された所定の状態に応答してＥＱＭ出力バスを介して制御を発し、ＴＣＲ１  １２により通常ＣＬＫ入力時に複数のＤ０−７データ入力パターンを捕捉させることが出来る。ＴＣＲ１  １２における複数捕捉動作は、Ｄ０−７データ入力パターンの流れを圧縮して符号定数とすることを可能にする。符号定数がとられた後、ＭＯＤＥ及びＳＣＫ入力を介して外部制御を入力して、その符号定数を外部へシフトさせ、検査することが出来る。
【００２６】
Ｄ０−７データ入力に対する単一捕捉（データサンプル）及び複数捕捉（ＰＳＡ）動作を実行するためにＴＣＲ１  １２はＥＱＭ３０から制御を受け取るのであって、外部ＭＯＤＥ及びＳＣＫ入力から受け取るのではないことが注意することは重要である。単一捕捉動作及び複数捕捉動作を実行するためにＥＱＭ３０から発せられる制御がＣＬＫ入力と同期していることに注意することも重要である。
【００２７】
データ出力試験レジスタ
図４は、図１に示されている集積回路１０のＴＣＲ２  ２２を構成する試験回路のブロック図である。ＴＣＲ２  ２２は、複数の、図２に示されている試験セル５４を有し、その各々がマスク可能な比較論理７６と多項式タップ論理７７と結合されている。マスク可能な比較論理は、ＥＸＰＤＡＴ信号とＤＩＮ信号とに接続されたＸＯＲゲート７８から成る。ＸＯＲゲート７８の出力は、ＣＭＰＭＳＫ信号と共に、ＮＡＮＤ８０の入力に接続されている。ＮＡＮＤゲート３０の出力はＣＭＰＯＵＴ信号に接続されている。多項式タップ論理７７のＮＡＮＤゲート８２は、レジスタ６０の出力及びＰＴＡＰ信号に接続されている。ＮＡＮＤゲート８２の出力は、ＦＢＩ信号と共にＸＮＯＲゲート８４に接続されている。ＸＮＯＲゲート８４の出力はＦＢＯ信号に接続されている。マスク可能な比較論理の動作は表６に示されている。ＴＣＲ２  ２２の動作は、前記の米国特許出願第２４１，５１１号に詳しく記載されている。
【００２８】
（表６）
マスク可能な比較論理の真理値表
ＣＭＰＭＳＫ      入力        ＤＩＮ          出力
ＥＸＰＤＡＴ                ＣＭＰＯＵＴ
０            Ｘ            Ｘ              １
１            ０            ０              １
１            １            ０              ０
１            ０            １              ０
１            １            １              １
【００２９】
オフライン境界試験時には、ＭＯＤＥ入力及びＳＣＫ入力から外的に加えられた制御は、試験データをＴＣＲ２  ２２内にシフトさせ、該試験データをＴＣＲ２  ２２内に試験回路のＤＯＵＴ出力から出力させることが出来る。この動作モードは、前記の米国特許出願第２４１，５３９号に記載されている。
【００３０】
オンライン境界試験時には、ＭＯＤＥ入力及びＳＣＫ入力から外的に加えられた制御を使って、試験データＴＣＲ２  ２２の試験回路内へシフトさせることが出来る。試験データが挿入されると、ＥＱＭ３０は、ＩＲＥＧ３４からの制御入力よって作動可能にされて、ＴＣＲ２  ２２からＣＴＥＲＭ信号を介してのＥＱＭへの所定状態入力に応じて、ＥＱＭ出力バスを介して制御を発し、ＴＣＲ２  ２２内の試験セルの２：１マルチプレクサ５８へのＭＤＸ入力を転換させ、通常ＣＬＫ入力時に試験パターンをＱ０−７出力へ出力させる。ＴＣＲ２  ２２からのＣＴＥＲＭ出力は、ＴＣＲ２  ２２内の各試験回路５４からの全てのＣＭＰＯＵＴ出力の論理ＡＮＤ演算の結果である。ＴＣＲ２  ２２内の８個の試験回路からの８個のＣＭＰＯＵＴは、ＴＣＲ２  ２２内にある８入力ＡＮＤゲートに入力される。このＡＮＤゲートからの出力は、図１に示されているＣＴＥＲＭ信号である。ＴＣＲ２  ２２内の試験回路からのＣＭＰＯＵＴ出力が全て高レベルである時、ＣＴＥＲＭ出力は高レベルであり、Ｑ０−７データ出力バス上に期待される状態が存在することをＥＱＭ３０に示す。ＴＣＲ２  ２２の試験回路５４からのＣＭＰＯＵＴ出力のうち少なくとも１個が低レベルである時には、ＣＴＥＲＭ出力は低レベルであり、期待される状態がＱ０−７データ出力バス上に存在しないことをＥＱＭ３０に対して示す。
【００３１】
ＴＣＲ２  ２２の試験回路のマスク可能な比較論理７６は、８進レジスタ２０からのＱ０−７出力を、ＥＱＭ３０からＥＱＭ出力バスを介してＴＣＲ２  ２２へ入力された所定の予測されるデータ（ＥＸＰＤＡＴ）パターンと突き合わせるために使用される。ＥＸＰＤＡＴパターンと、８進レジスタからの出力との一致（ＣＴＥＲＭ−１）が見出された時、ＥＱＭ３０は、ＥＱＭ出力バスを介してＴＣＲ１  １２又はＴＣＲ２  ２２へ制御を発して、所望のオンライン試験動作を実行させる。必要ならば、Ｑ０−７データ出力バス上の信号のうちの或るものに対しては一致が不要であれば、ＴＣＲ２  ２２内の試験回路のマスク可能な比較論理のうちの少なくとも１個をマスク解除することが出来る。比較動作をマスク解除するために、所定の比較マスク（ＣＭＰＭＳＫ）パターンがＥＱＭ出力バスを介してＴＣＲ２  ２２内の試験回路に入力される。マスク可能な比較論理の真理値表（表６）は、ＣＭＰＭＳＫ入力が低レベルであればマスク可能な比較論理は真の一致状態（ＤＩＮ−ＥＸＰＤＡＴ）をＣＭＰＯＵＴ出力上に出力することを示している。マスク可能な比較論理へのＣＭＰＭＳＫ入力が低レベルにセットされている間は、そのＣＭＰＯＵＴ出力は、ＤＩＮ及びＥＸＰＤＡＴの関係に関わらず、高レベルである。高レベルである間は、ＣＭＰＯＵＴ入力はＴＣＲ２  ２２内のＡＮＤゲートに対して何の効果も持たない。
【００３２】
通常動作時に試験データを出力Ｑ０−７に挿入するためにＴＣＲ２  ２２は外部のＭＯＤＥ入力及びＳＣＫ入力からではなくてＥＱＭ３０から制御を受け取ることに注意することは重要である。オンライン試験データ挿入動作を行わせるＥＱＭ３０から発せられる制御がＣＬＫ入力と同期していることに注意するのも重要である。
【００３３】
図３及び図４に関して前記した様に、ＥＱＭ３０は、ＴＣＲ２  ２２の試験回路内のマスク可能な比較論理と共同して、図１の集積回路１０内で起こる状態に応じて試験を発動させる方法を提供する。或る種のオンライン試験においては、或る状態が集積回路１０内に生じた時を知ることのみならず、該回路内の他の集積回路において他の状態が生じた時をも知ることが必要となる。複数の集積回路がオンライン試験動作の認定に参加することが出来ることとなる様に本発明の境界試験構造の事象認定能力を拡張するために、ＥＱＭは、図１に示されている様に、外部入力信号（事象認定入力（ＥＱＩＮ））及び外部出力信号（事象認定出力（ＥＱＯＵＴ））の使用を必要とする。
【００３４】
拡張された事象認定
複数の集積回路を配する回路が図５に示されている。３個の集積回路１０ａないし１０ｃからのＥＱＯＵＴ信号はＡＮＤゲート８６に入力される。ＡＮＤゲート８６の出力は各集積回路１０ａないし１０ｃのＥＱＩＮ信号と、コントローラチップ８７とへ接続されている。外部フィードバック回路網にワイヤードＯＲ構成ではなくてＡＮＤゲートを使用することの利点は、速度の向上にある。活動出力を持った論理ゲート（ＡＮＤゲート）は、一般には、数ナノ秒で低レベル出力から高レベル出力（ＥＱＩＮ）へ転換するが、ワイヤードＯＲ（開放コレクター出力）構成は数ミリ秒で低レベル出力から高レベル出力へ転換する。急速試験時には、ＡＮＤゲートへのＥＱＯＵＴ入力から、その結果として該ＡＮＤゲートからＥＱＩＮ出力が出力されるまでの応答時間がなるべく短いことが決定的に重要である。
【００３５】
図５において、回路を構成する３個の集積回路が示されている。各集積回路１０ａないし１０ｃのＥＱＭ３０は、各集積回路のＴＣＲ２  ２２からの内部ＣＴＥＲＭがＥＱＯＵＴ出力信号を介してＥＱＭ３０から出力されることとなる様に構成されることが出来る。
また、各集積回路のＥＱＭ３０は、オンライン試験動作が内部ＣＴＥＲＭ入力ではなくてＥＱＩＮ入力に応じて発動され得ることとなる様に構成されることが出来る。
【００３６】
図５の３個の集積回路において生じる状態に基づいてオンライン試験動作を認定するために、各集積回路のＥＱＭ３０は、各集積回路１０ａないし１０ｃのＴＣＲ２  ２２へＥＸＰＤＡＴパターンを出力する。各集積回路１０ａないし１０ｃのＱ０−７データ出力がＥＸＰＤＡＴパターンと一致したとき、ＥＱＯＵＴ出力は高レベルにセットされる。ＥＱＯＵＴ出力は全て外部ＡＮＤゲート８６に入力されるので、ＡＮＤゲート８６からのＥＱＩＮ出力は、全てのＥＱＯＵＴ入力が高レベルである時にのみ高レベルである。３個の集積回路１０ａないし１０ｃの全てにおいて一致が見出されたとき、外部ＡＮＤゲートへのＥＱＯＵＴ入力は全て高レベルとなり、従って、ＡＮＤゲート３６からのＥＱＩＮ出力は高レベルとなる。各集積回路１０ａないし１０ｃのＥＱＭ３０は、ＥＱＩＮ入力上の高レベル論理入力に応じてオンライン試験動作を実行することが出来る。図５の集積回路１０ａないし１０ｃのうちの少なくとも１個が事象認定プロセスに参加しなければ、そのＥＱＯＵＴ出力は高レベルにセットされ、よって、それは外部ＡＮＤゲートに対して何の効果も持たない。この明細書においては、全部「１」の状態を検出するためにＡＮＤゲートが示されているが、全部「０」の状態を検出するのであれば、本発明の範囲から逸脱することなく、同様の方法でＯＲゲートを使うことも出来る。
【００３７】
コントローラチップ８７は、集積回路１０ａないし１０ｃの試験を監視し、走査経路へ出し入れされるデータを制御する。該コントローラチップは、試験が終わったことを示す信号を検出すると、解析のためにデータを集積回路外へシフトさせる。
【００３８】
拡張された事象認定は、回路内の集積回路に関して示されているけれども、同じ事象認定回路網は階層的である。この事象認定回路網は、例えば集積回路内の副回路、箱の中の基板、サブシステム内の箱、或いはシステム内のサブシステム等の、如何なる集積レベルにも適用することの出来るものである。
【００３９】
事象認定モジュール
図６は事象認定モジュール３０のブロック図である。事象認定モジュール３０は、次の入力、即ち、ＣＴＥＲＭ（ＴＣＲ２  ２２からの）、ＣＬＫ、ＥＱＩＮ及びＳＤＩ（集積回路１０への入力）、並びにＩＲＥＧ３４からのＥＱＥＮＡを受け取る。ＥＱＭ３０は７個の出力、即ち、ＥＱＯＵＴ、ＴＧＡＴＥ、ＴＧＡＴＥＺ、ＥＶＥＮＴ、ＥＸＰＤＡＴ、ＣＭＰＭＳＫ及びＳＤＯを持っている。ＳＤＩ信号は制御レジスタ８８に入力される。制御レジスタ８８は、信号Ｃ０、Ｃ１及びＩ／ＥをＥＱＭコントローラ９０へ出力し、ＣＫＰＯＬ信号をＸＯＲゲート９２へ出力し、ＭＵＸＡ信号及びＭＵＸＢ信号を４：１マルチプレクサ９４へ出力する。ＸＯＲゲート９２は、ＣＬＫ信号も受信する。ＥＱＭコントローラ９０はＣＴＥＲＭ信号と、ＥＱＩＮ信号及びＥＱＥＮＡ信号とを受信する。制御レジスタ８８は、ＣＥＺ信号をＥＱＭコントローラ９０へ出力するカウンタ９６にも接続されている。カウンタ９６は、スタート予測データレジスタ１００と、ストップ予測データレジスタ１０２と、随意の予測データメモリ１０４とを有するスタート・ストップ予測データ部９８に接続されている。このスタート・ストップ予測データ部９８は、スタート比較マスクレジスタ１０８と、ストップ比較マスクレジスタ１１０と、随意の比較マスクメモリ１１２とを有するスタート・ストップ比較マスク部１０６に接続されている。スタート予測データレジスタ１００とストップ予測データレジスタ１０２とはマルチプレクサ１１４に接続されており、これは信号ＥＸＰＤＡＴを出力する。スタート比較マスクレジスタ１０８及びストップ比較マスクレジスタ１１０は、信号ＣＭＰＭＳＫを出力するマルチプレクサ１１６に接続されている。スタート・ストップ比較マスク部１０６は、ＳＤＯ信号も出力する。マルチプレクサ１１４及び１１６は、ＥＱＭコントローラ９０からのＡＤＤＲＥＳＳ信号により制御される。ＥＱＭコントローラ９０はＣＫＣＮＴ信号をカウンタ９６へ出力する。
【００４０】
ＣＴＥＲＭ信号は、ＸＯＲゲート９２から出力されるＦＱＣＫ信号でクロックされるＤ型フリップフロップ１１８に入力され、このフリップフロップは、ＸＯＲゲート９２から出力されるＥＱＣＫ信号によりクロックされる。ＥＱＣＫ信号はＥＱＭコントローラ９０にも入力される。Ｄ型フリップフロップ１１８の出力は、ＥＱＭコントローラからのＴＧＡＴＥ信号及びＶ＋信号と共にマルチプレクサ９４に接続されており、それは高レベル論理源に結合されている。マルチプレクサ９４の出力はＥＱＯＵＴ信号である。ＴＧＡＴＥ、ＴＧＡＴＥＺ、及びＥＶＥＮＴ信号はＥＱＭコントローラ９０から出力される。
【００４１】
４：１マルチプレクサ６個の入力、即ち、ＭＵＸＡ、ＭＵＸＢ、ＣＴＥＲＭ、ＣＤＥＬＡＹ、ＴＧＡＴＥ及びＶ＋と、１個の出力ＥＱＯＵＴとを持っている。ＥＱＭ制御レジスタ８８からのＭＵＸＡ入力及びＭＵＸＢ入力は、ＥＱＯＵＴで出力されるべき入力（ＣＴＥＲＭ、ＣＤＥＬＡＹ、ＴＧＡＴＥ、Ｖ＋）を選択するべく、走査動作を介してプログラムされることが出来る。Ｖ＋入力は、高レベル論理源に結合され、ＥＱＯＵＴ出力が静的高論理レベルにセットされるべきときには、４：１マルチプレクサから出力されるべく選択される。
【００４２】
ＴＣＲ２  ２２におけるＥＸＰＤＡＴと、８進レジスタ２０からのＱ０−７データ出力との内部比較動作の非同期（非整合）結果を出力するためにＥＱＯＵＴ信号が必要とされるときに、ＣＴＥＲＭ信号は４：１マルチプレクサ９４から出力されるべく選択される。
遅延させられて集積回路のＣＬＫ入力により同期させられるＣＴＥＲＭを出力する必要があるときには、ＣＤＥＬＡＹ（遅延させられたＣＴＥＲＭ）信号が４：１マルチプレクサ９４から出力されるべく選択される。内的に認定される試験動作の進行を追う必要があるときには、ＥＱＭコントローラ９０からのＴＧＡＴＥ信号が４：１マルチプレクサ９４から出力されるべく選択される。
【００４３】
Ｄ型フリップフロップ１１８へのクロック入力は、ＸＯＲゲート９２の出力（ＥＱＣＫ）から受信される。Ｄ型フリップフロップ１１８の目的は、遅延させられたＣＴＥＲＭ（ＣＤＥＬＡＹ）がＥＱＯＵＴに出力され得る様にＣＴＥＲＭ入力を集積回路のＣＬＫ入力と同期させる方法を提供することである。
【００４４】
ＣＤＥＬＡＹ出力を選択して４：１マルチプレクサ９４からＥＱＯＵＴ出力を出させることにより、ＥＱＭ３０は１集積回路ＣＬＫサイクルだけＥＱＯＵＴ出力を遅延させることが出来る。この遅延は、これにより、ＣＬＫエッジの直後にＥＱＯＵＴ出力が妥当となることを可能にするので、高速回路において事象認定を行うために時々必要となる。この遅延がなければ、ＥＱＯＵＴ出力はＴＣＲ２  ２２の試験回路内のマスク可能な比較理論がＥＸＰＤＡＴをＱ０−７データ出力と突き合わせてＣＴＥＲＭ信号を出力するのに要する時間だけ遅延させられることとなる。
【００４５】
ＸＯＲゲート９２は、集積回路のＣＬＫ入力のどのエッジがＥＱＭコントローラ９０及びＤ型フリップフロップ１１８を作動させるのかを選択するのに使用される。走査動作を介して、ＣＬＫの立ち上がりエッジ（ＣＫＰＯＬ＝０）又は立ち下がりエッジ（ＣＫＰＯＬ＝１）を選択するべくＥＱＭ制御レジスタ８８からのＣＫＰＯＬ入力をセットすることが出来る。オンライン試験動作に必要なタイミングを達成するためにＣＬＫの立ち上がりエッジ又は立ち下がりエッジを選択することが時々必要となる。
【００４６】
ＥＱＭコントローラ
ＥＱＭコントローラ９０のブロック図が図７に示されている。ＥＱＭコントローラ９０は、７個の入力（ＣＴＥＲＭ、ＥＱＩＮ、ＥＱＥＮＡ、Ｃ０、Ｃ１、Ｉ／Ｅ及びＣＥＺ）と５個の出力（ＴＧＡＴＥ、ＴＧＡＴＥＺ、ＥＶＥＮＴ、ＡＤＤＲＥＳＳ及びＣＫＣＮＴ）とを有する状態機械である。ＥＱＭコントローラ９０は、状態レジスタ１２０及び組合せ論理部１２２から成る。ＥＱＭコントローラ９０は、上位集積回路の機能クロックから作動する。組合せ論理部１２２は、ＣＥＺ、Ｃ０及びＣ１信号を受信する。Ｉ／Ｅ信号は、２：１マルチプレクサ１２４２から論理部１２２へ出力されるものとしてＥＱＩＮ信号又はＣＴＥＲＭ信号を選択する。ＥＱＥＮＡ信号は、同期装置１２６を通してＥＱＣＫ信号と同期化され、論理部１２２に入力される。フィードバック信号がレジスタ１２０から論理１２２へ接続される。レジスタ１２２はＴＧＡＴＥ信号及びＡＤＤＲＥＳＳ信号を出力する。ＴＧＡＴＥ信号に接続されたインバータがＴＧＡＴＥＺを提供する。ＥＱＣＫ信号は、レジスタ１２０及びインバータ１３０に接続されている。このインバータの出力は、レジスタ１２０からの出力と共にＡＮＤゲート１３２に接続され、ＣＫＣＮＴ信号を提供する。図１に示されている様に、ＥＱＭ３０は集積回路のＣＬＫ入力を使う。よって、これは図１の８進レジスタ２０と同期して動作する。
【００４７】
コントローラ入力
ＣＴＥＲＭ入力は、オンライン試験かの判定が内部事象の発生に基づくときにＥＱＭコントローラ９０に監視される内部状態入力である。図１の集積回路においては、内部事象は、ＴＣＲ２  ２２において生じる、ＥＱＭ出力バスからのＥＸＰＤＡＴ入力と８進レジスタ２０からのＱ０−７データ出力との一致である。
【００４８】
ＥＱＩＮ入力は、オンライン試験の判定が外部事象の発生に基づくときにＥＱＭコントローラ９０により監視される外部状態入力である。図５においては、外部事象は、集積回路１、２、３の３個のＥＱＯＵＴ出力の全てに生じる一致である。
【００４９】
Ｉ／Ｅ（内部／外部）入力はＥＱＭ制御レジスタ８８の走査可能ビットから生ずる。Ｉ／Ｅ入力の目的は、２：１マルチプレクサ１２４を制御して、マルチプレクサ１２４の出力（ＥＶＥＮＴ）に中継させるべく内部ＣＴＥＲＭ入力（Ｉ／Ｅ−１）又は外部ＥＱＩＮ入力（Ｉ／Ｅ−０）を選択する。２：１マルチプレクサ２４からのＥＶＥＮＴ出力は、ＥＱＭコントローラ９０により監視されて、以下に記載する事象認定動作を行う。
【００５０】
Ｃ０入力及びＣ１入力は、ＥＱＭコントローラレジスタ８８内の走査可能な２個のビットから生じる。Ｃ０及びＣ１は、ＥＱＭコントローラが下記の４種類の事象認定動作の一つを実行するのに必要とする２ビットコマンド入力を提供する。
【００５１】
ＥＱＥＮＡ（ＥＱＭイネーブル）は、ＩＲＥＧ出力バスを介してＩＲＥＧ３４から到来し、Ｃ０及びＣ１コマンドビットにより設定された事象認定動作をＥＱＭコントローラ９０が行うことを可能にするために使われる。ＥＱＥＮＡは、ＸＯＲゲート９２からのＥＱＣＫ出力により同期装置１２６を通してクロックされる。同期回路１２６は、ＥＱＥＮＡ入力を、状態機械を駆動するＥＱＣＫと同期させる。同期装置１２６の出力は状態機械レジスタ１２０に入力される。同期装置の出力が低レベルであれば、状態機械は作動不能にされる。同期装置の出力が高レベルであれば、状態機械は作動可能とされて、Ｃ０及びＣ１上の２ビットコマンド入力を実行する。
【００５２】
ＣＥＺ（カウント・イコール・ゼロ）入力は、ＥＱＭ制御レジスタ８８内にあるカウンタから生じる。ＣＥＺ信号はＥＱＭコントローラ９０に入力され、カウンタ９６がゼロのカウントに達したときを示す。カウンタ９６は、事象認定動作がプログラマブルな同数だけ反復されることを可能にする。ＣＥＺ入力が事象認定動作終了時に高レベルであれば、ＥＱＭコントローラ９０は、その動作を繰り返す。ＣＥＺ入力が事象認定動作の終了時に低レベルであれば、ＥＱＭコントローラ９０は試験状態を終える。
【００５３】
コントローラ出力
ＥＱＭコントローラ９０からのＴＧＡＴＥ出力は、ＥＱＭコントローラ９０へのＥＶＥＮＴ入力に或る状態が発生したとき、ＸＯＲゲート９２からのＥＱＣＫの立ち上がりエッジで高レベルに転じる。ＴＧＡＴＥ出力は、ＥＱＭコントローラ９０へのＣ０及びＣ１入力上のコマンド入力に応じて、少なくとも１ＥＱＣＫサイクルの間は高レベル状態にとどまる。高レベル活動状態ＴＧＡＴＥ出力を使って、或る状態に応じて試験を開始させることが出来る。
【００５４】
図１の集積回路において、ＴＧＡＴＥは、ＥＱＭ出力バスを介してＴＣＲ２  ２２に入力され、認定されたＣＬＫサイクル中にＴＣＲ２  ２２内の試験回路５４から試験データをＱ０−７データ出力バスへ出力させるために使用される。この動作は「動的試験データ挿入」と称され、図１２ないし図１５のＥＱＭプロトコールと図８のＴＣＲ２  ２２相互接続図とで例示される。
【００５５】
図８を参照する。この図については後に詳しく述べる。動的試験データ挿入動作は、既にＴＣＲ２  ２２内にシフトされてあった所定の試験パターンが、予測される状態に応じてＱ０−７データ出力から出力されることを可能にする。試験データは、この動作以外の場合には図１のＩＣから出力されることとなる８進レジスタからの通常のデータの代わりに挿入される。この試験データ挿入試験動作は、ＩＣの通常の動作を乱さずに行うことの出来る動作である。希望により、図１のＴＣＲ１  １２の試験回路出力から同様にして試験データを挿入することも出来る。
【００５６】
図１２ないし図１５に、試験データを挿入するために使うことの出来るＥＱＭの４種類のプロトコールが示されている。各々のプロトコールにおいて、ＴＧＡＴＥ信号が高レベルである時に試験データがＱ０−７データ出力に挿入される。これらのプロトコールと、図８の回路に対するその効果とについて、以下に詳述する。
【００５７】
動的試験データ挿入がＥＱＭコントローラ９０へのＣＴＥＲＭ入力により内的に認定されれば、外部の試験装置が内的に認定された試験動作の進行を追うことが出来る様にＣＴＥＲＭ入力が選択されてＥＱＯＵＴ出力に出力されなければならない。
【００５８】
ＴＧＡＴＥＺ出力は、反転されたＴＧＡＴＥ出力である。ＴＧＡＴＥＺは、ＥＱＭコントローラ９０へのＣ０及びＣ１入力上のコマンド入力に応じて、ＥＱＣＫサイクルの立ち上がりエッジで低レベルに転じる。或る状態に応じて試験を開始させるために低レベル活動状態ＴＧＡＴＥＺ出力を使うことが出来る。
【００５９】
図１のＩＣにおいて、ＴＧＡＴＥＺは、ＥＱＭ出力バスを介してＴＣＲ１  １２へ入力され、認定されたＣＬＫ入力の少なくとも１個の期間中にＴＣＲ１  １２内の試験回路からデータをＤ０−７データ入力へロードさせるために使われる。若しＴＣＲ１  １２の試験回路に唯一のＤ０−７データ入力パターンがロードされるのであれば、その試験は「動的データサンプル」動作と称され、図１６のＥＱＭプロトコールと図９のＴＣＲ１  １２相互接続図で例示されている。
【００６０】
図９を参照する。これについては以下に詳述する。動的データサンプル動作は、Ｄ０−７データ入力バスを介して図１のＩＣに入るデータパターンが、或る予測される状態に応じてＴＣＲ１  １２によりサンプリングされることを可能にする。サンプリング後、ＭＯＤＥ及びＳＣＫからの外部入力はサンプリングされたデータを検査のために外へシフトさせることが出来る。これらの試験動作（サンプリング及びシフト）は、ＩＣ１０の通常の動作を乱さずに行うことの出来る動作である。希望に応じて、図１のＩＣから出力されるデータを、ＴＣＲ２  ２２内の試験回路により同様にしてサンプリングすることも出来る。
【００６１】
図１６に、データをサンプリングするために使われるＥＱＭプロトコールが示されている。このプロトコールにおいては、ＴＧＡＴＥＺが低レベルである時にＣＬＫ入力の立ち上がりエッジでサンプリングされる。このプロトコールと、図９の回路に対するその効果とについて以下に詳述する。
【００６２】
ＴＣＲ１の試験回路に複数のＤ０−７データ入力パターンがサンプリングされるのであれば、その試験は「動的ＰＳＡ」と称され、図１７ないし図１９のＥＱＭプロトコールと図９のＴＣＲ１  １２相互接続とで例示される。
【００６３】
図９において、以下に詳述するが、動的ＰＳＡ動作は、Ｄ０−７データ入力バスを介して図１のＩＣに入る複数のデータパターンがＴＣＲ１  １２によりサンプリングされて圧縮されて符号定数にされることを可能にする。ＰＳＡ動作は、Ｃ０及びＣ１上のコマンド入力により決定される通りに、予測されるスタート状態に応じて開始され、予測されるストップ状態に応じて停止される。ＰＳＡ動作が完了した後、ＭＯＤＥ及びＳＣＫからの外部入力は、この符号定数を検査のために外へシフトさせる。これらの試験動作（ＰＳＡ及びシフト）は、ＩＣ１０の通常の動作を乱さずに行われることの出来る動作である。
【００６４】
図１７ないし図１９において、動的ＰＳＡ動作を実行するために使われるＥＱＭプロトコールが示されている。このプロトコールにおいて、ＴＧＡＴＥＺが低レベルである時に各ＣＬＫ入力の立ち上がりエッジでデータがＴＣＲ１  １２でサンプリングされる。これらのプロトコールと、図９の回路に対するその効果とについて以下に詳述する。
【００６５】
動的データサンプル又は動的ＰＳＡ試験動作がＥＱＭコントローラ９０へのＣＴＥＲＭ入力により内的に認定されるならば、外部の試験装置が内的に認定される試験動作の進行を追うことが出来る様にＣＴＥＲＭ入力が選択されてＥＱＯＵＴ出力に出力されなければならない。
【００６６】
いずれかの動的試験動作（挿入、サンプル、ＰＳＡ）がＥＱＭコントローラへのＥＱＩＮ入力により外的に認定されるならば、ＣＴＥＲＭ、ＣＤＥＬＡＹ又はＶ＋信号が選択されてＥＱＯＵＴ出力上に出力されなければならない。ＩＣ１０がＴＣＲ２  ２２からのＣＴＥＲＭ比較の結果を出力する必要があるときにはＣＴＥＲＭが出力されなければならない。ＩＣ１０が遅延されたＣＴＥＲＭ出力を出力する必要があるときには、ＣＤＥＬＡＹが出力される。ＩＣ１０が大分事象認定動作に参加しないときには、Ｖ＋がＥＱＯＵＴに出力される。
【００６７】
ＥＶＥＮＴ出力信号は、外部ＥＱＩＮ入力又は内部ＣＴＥＲＭ入力の現在の状態（比較の結果）を反映する非同期（非整合）ＥＱＭ出力である。どの信号（ＥＱＩＮ又はＣＴＥＲＭ）を選択するかは、制御レジスタ８８からのＩ／Ｅ入力により決定される。ＥＶＥＮＴ信号は、付加的試験制御機能を実施するためにＩＣ内の外部インタフェース論理により使用されることが出来る。
【００６８】
ＡＤＤＲＥＳＳ出力信号は、第１の（スタート）ＥＸＰＤＡＴパターンと第２の（ストップ）ＥＸＰＤＡＴパターンとの選択を行わせる。事象認定動作が行われているとき、ＥＱＭコントローラ９０は低論理レベルをＡＤＤＲＥＳＳ出力に出力して、ＥＱＭ出力バスを介してＴＣＲ２  ２２の試験回路に入力されるべきものとしてスタートＥＸＰＤＡＴパターンを選択する。スタートＥＸＰＤＡＴパターンと８進レジスタ２０からのＱ０−７データ出力との一致が見出された後、ＥＱＭコントローラ９０は高論理レベルをＡＤＤＲＥＳＳ出力に出力し、ＴＣＲ２  ２２の試験回路に入力されるべきものとしてストップＥＸＰＤＡＴパターンを選択する。
【００６９】
ストップＥＸＰＤＡＴパターンと８進レジスタ２０からのＱ０−７データ出力との一致が見出された後、ＥＱＭコントローラ９０は、他の第１（スタート）ＥＸＰＤＡＴパターン及び第２（ストップ）ＥＸＰＤＡＴパターンの組に対してスタート・アドレッシング・シーケンス及びストップ・アドレッシング・シーケンスを反復して行うか、又は試験状態を終える。
【００７０】
ＥＱＭ走査経路内のカウンタ９６がゼロのカウント（ＣＥＺ＝１）までデクリメントすると、ＥＱＭコントローラ９０は、事象認定動作が完了した後に、試験状態を終える。カウンタ９６がゼロのカウント（ＣＥＺ＝０）までデクリメントしていなければ、ＥＱＭコントローラ９０は、該カウンタがゼロまでデクリメントするまで事象認定動作を反復する。
【００７１】
ＡＤＤＲＥＳＳ出力は、スタートＥＸＰＤＡＴパターン及びストップＥＸＰＤＡＴパターンについてのそれと全く同様に、ＴＣＲ２  ２２の試験回路へのスタートＣＭＰＭＳＫパターン及びストップＣＭＰＭＳＫパターンの選択を制御する。
【００７２】
ＥＱＭ３０からのＡＤＤＲＥＳＳ信号は、図６の随意のＥＸＰＤＡＴメモリ１０４及びＣＭＰＭＳＫメモリ１１２に入力される。ＡＤＤＲＥＳＳ信号は、随意のＥＸＰＤＡＴメモリ及びＣＭＰＭＳＫメモリからの追加のＥＸＰＤＡＴパターン及びＣＭＰＭＳＫパターンにアクセスし、これらのパターンをＥＸＰＤＡＴレジスタ及びＣＭＰＭＳＫレジスタにロードするために使われる。これらのメモリは、ＡＤＤＲＥＳＳ信号の低レベルから高レベルへの遷移時に次のＥＸＰＤＡＴパターン及びＣＭＰＭＳＫパターンをアドレス指定して出力する。該メモリから出力されるパターンは、ＡＤＤＲＥＳＳ信号の高レベルから低レベルへの遷移時にＥＸＰＤＡＴレジスタ及びＣＭＰＭＳＫレジスタにロードされる。この様にして、その後のスタート及びストップ事象認定動作のためにスタート及びストップＥＸＰＤＡＴパターン及びＣＭＰＭＳＫパターンの新しい組を使用することが可能となる。
【００７３】
ＥＱＭコントローラ９０からのＣＫＣＮＴ（クロックカウンタ）出力信号は、ＥＱＭ走査経路内のカウンタ９６をデクリメントするために使われるストローブ出力である。高レベル活動状態ＣＫＣＮＴ出力ストローブは、ＥＱＣＫの立ち下がりエッジで発生する。
【００７４】
走査経路
図６において、走査経路がＥＱＭ３０内に存在することが分かる。ＭＯＤＥ入力及びＳＣＫ入力に外部制御を入力して、データをＥＱＭ走査経路を通してシフトさせることが出来る。この走査経路は３個の部分、即ち、ＥＱＭ制御レジスタ８８、ＥＱＭカウンタ９６、及びスタート及びストップＥＸＰＤＡＴデータ部９８、スタート及びストップＣＭＰＭＳＫデータ部１０６に別れている。
【００７５】
ＥＱＭ制御レジスタ８８は、ＥＱＭ３０がその事象認定機能を実行するのに要するコマンド・ビット及びコンフィギュレーション・ビットを内蔵している。ＥＱＭ制御レジスタ８８は、ＩＲＥＧ３４からのＥＱＥＮＡ入力がＥＱＭコントローラ９０を作動可能にする前にセットされる。ＥＱＥＮＡ入力が高レベルにセットされると、ＥＱＭコントローラ９０は該制御レジスタ内の２ビットコマンド（Ｃ０及びＣ１）に応答して試験動作を行う。
【００７６】
事象認定動作を反復させるべき同数をＥＱＭカウンタ９６に走査動作時にロードして、該カウンタにロードされた回数だけ事象認定動作を反復させることが出来る。ＥＱＭカウンタ９６は各事象認定動作の開始時にＥＱＭコントローラ９０からのＣＫＣＮＴ出力によりデクリメントされる。該カウンタがゼロ値までデクリメントすると、該カウンタはカウント・イコール・ゼロ（ＣＥＺ）をＥＱＭコントローラ９０へ出力し、該ＥＱＭコントローラによる事象認定動作の反復を停止させ、試験終了状態とする。
【００７７】
走査経路内のスタート／ストップＥＸＰＤＡＴ部９８及びスタート／ストップＣＭＰＭＳＫ部１０６は、ＥＱＭ出力バスを介してＴＣＲ２  ２２内の試験回路に入力されるパターンを内蔵している。図６においては、各パターン（スタートＥＸＰＤＡＴ、ストップＥＸＰＤＡＴ、スタートＣＭＰＭＳＫ、ストップＣＭＰＭＳＫ）について唯一のレジスタが示されているが、ＥＸＰＤＡＴデータパターン及びＣＭＰＭＳＫデータパターンの複数の組でＥＱＭ３０がスタートシーケンス及び／又はストップシーケンスを繰り返すことが出来る様にするために、スタートＥＸＰＤＡＴデータパターン、ストップＥＸＰＤＡＴデータパターン、スタートＣＭＰＭＳＫデータパターン、ストップＣＭＰＭＳＫデータパターンの複数の組をＥＱＭ走査経路の後の随意のメモリ１０４及び１１２に格納することが出来る。希望に応じて、ＴＣＲ２  ２２が出力データを比較するのと同様にして入力データを比較するために同様のスタート／ストップＥＸＰＤＡＴ部及びスタート／ストップＣＭＰＭＳＫ部をＴＣＲ１  １２に設けることが出来る。
【００７８】
通常作動時には、図１のＩＣ１０は８個のデータ入力（Ｄ０−７）と、８個のデータ出力（Ｑ０−７）と、クロック入力（ＣＬＫ）と、トリステート出力制御入力（ＯＣ）とを有する標準的８進レジスタとして機能する。Ｄ０−７入力に現れるデータは、８進レジスタ２０にロードされ、ＣＬＫ入力が加えられた時にＱ０−７出力から出力される。ＯＣ入力が活動状態にされると、Ｑ０−７出力バッファー２４はトリステート状態にされる。出力がトリステートである間は、ＣＬＫ入力は、Ｄ０−７入力に現れるデータを８進レジスタ２０にロードすることが出来る。
【００７９】
ＩＣ１０が作動している間は、外部ＭＯＤＥ及びＳＣＫ入力は、ＩＲＥＧ３４又は選択されたデータレジスタ（境界走査経路〔ＴＣ１、ＴＣ２、ＴＣＲ１、ＴＣＲ２〕、ＥＱＭ走査経路、又はバイパス走査経路）を通してＳＤＩ入力からＳＤＯ出力へデータをシフトさせることが出来る。通常動作時にデータを装置内へシフトさせることが出来るので、機能しているＩＣ１０に干渉せずにオンライン試験命令をバックグラウンドに入れて実行させることが出来る。
【００８０】
出力試験レジスタの回路の詳細
図８に、ＴＣＲ２  ２２との相互接続が詳しく示されている。シリアル・データ経路は、ＳＤＩ入力を介してＴＣＲ２  ２２に入り、各試験回路５４を通過し、ＳＤＯ入力を介してＴＣＲ２  ２２から出力される。このシリアル・データ経路は、ＴＣＲ２  ２２の試験回路５４のローディング及びアンローディングを可能にする。フィードバック入力（ＦＢＩ）は、論理低レベルに結合され、ＴＣＲ２  ２２に入り、各試験回路の多項式フィードバック回路（図４参照）を通過し、フィードバック出力（ＦＢＯ）を介してＴＣＲ２  ２２から出力される。このフィードバック経路は、ＰＳＡ動作時に必要とされる。
【００８１】
通常動作時には、８進レジスタ２０からの出力データ（Ｑ０−７）は、ＴＣＲ２  ２２に入り、試験回路を通過して、ＴＣＲ２  ２２及びＩＣ１０からＱ０−７データ出力に出力される。
【００８２】
ＴＣＲ２  ２２の８個の試験回路５４のための制御は、ＴＣＫ′、ＨＯＬＤ、Ｂ２′、Ａ２′、ＤＭＸ′、ＥＸＰＤＡＴ、ＰＴＡＰ及びＣＭＰＭＳＫ入力に入力される。ＨＯＬＤ入力は試験ポート４８から直接到来する。ＥＸＰＤＡＴ及びＣＭＰＭＳＫ入力はＥＱＭ３０から直接到来する。ＰＴＡＰ入力は、所望のフィードバック多項式をセットするために高レベル又は低レベルに配線される。ＴＣＲ２  ２２からのＣＴＥＲＭ出力は、ＡＮＤゲート１３６の出力から生じる。ＴＣＲ２  ２２中の８個の試験回路からの８個のＣＭＰＯＵＴ出力はＡＮＤゲート１３６に入力される。ＣＴＥＲＭ出力は、ＥＱＭ３０に入力され、Ｑ０−７、データ入力とＥＱＭ３０からのＥＸＰＤＡＴ入力とが一致した時には高レベルにセットされる。希望に応じて、入ってくるデータＤ０−７に対する事象認定を可能にするために、同様の比較回路及び関連の入力及び出力をＴＣＲ１  １２に設けることが出来る。
【００８３】
ＴＣＫ′入力はマルチプレクサ１３８から生じ、このマルチプレクサは、ＴＣＫ′に中継されるべきものとして、試験ポートからのＴＣＫ出力又はＴＣ２  １６の出力からのＩＣのＣＬＫ′入力を選択する。どの入力をＴＣＫ′に中継するかの選択は、ＩＲＥＧ１３４からのＣＫＳＥＬ出力により決定される。動的ＰＳＡ試験時には、ＣＬＫ′入力はＴＣＫに中継されるので、ＴＣＲ２  ２２の試験回路はＩＣ１０の動作と同期化される。オフライン試験時には、又は走査動作時には、試験ポート４８からのＴＣＫ出力はＴＣＫ′に中継されるので、試験回路５４は外部走査クロックと同期化される。
【００８４】
Ａ２′及びＢ２′入力はマルチプレクサ１４０から生じ、このマルチプレクサは、ＥＱＭ３０からのＴＧＡＴＥＺ出力又は試験ポート４８からのＡ及びＢ出力を選択してＡ２′及びＢ２′信号を駆動する。どの入力がＡ２′及びＢ２′へ中継されるかは、ＩＲＥＧ３４からのＣＫＳＥＬ出力によって決定される。動的ＰＳＡ試験時には、ＴＧＡＴＥＺ出力はＡ２′及びＢ２′の両方を駆動するので、これらはＥＱＭ３０により制御され得る。オフライン試験時には、ＡはＡ２′を駆動しＢはＢ２′を駆動するので、これらはオフライン試験及び走査動作時に試験ポート４８により制御されることが出来る。
【００８５】
ＤＭＸ′入力はマルチプレクサ１４２から生じ、このマルチプレクサは、ＤＭＸ′に中継されるべきものとして、ＩＲＥＧ３４からのＤＭＸ出力又はＥＱＭ３０からのＴＧＡＴＥ出力を選択する。どの入力をＤＭＸ′へ中継するかの選択は、ＩＲＥＧ３４からのＤＭＳＥＬ出力により決定される。動的試験データ挿入時には、ＥＱＭ３０からのＴＧＡＴＥ出力がＤＭＸ′に中継されるので、これはＥＱＭ３０により制御されることとなる。オフライン試験時又は走査動作時には、ＩＲＥＧ３４からのＤＭＸ出力がＤＭＸ′に中継されるので、これは試験ポート４８により制御されることとなる。
【００８６】
入力試験レジスタの回路の詳細
図９に、ＴＣＲ１  １２との相互接続が詳しく示されている。シリアル・データ経路は、ＳＤＩ入力を介してＴＣＲ１  １２に入り、各試験回路５４を通過し、ＳＤＯ出力を介してＴＣＲ１  １２から出力される。このシリアル・データ経路は、ＴＣＲ１  １２の試験回路のローディング及びアンローディングを可能にするものである。フィードバック入力（ＦＢＩ）はＴＣＲ１  １２に入り、各試験回路の多項式フィードバック回路（図３参照）を通過し、フィードバック出力（ＦＢＯ）を介してＴＣＲ１  １２から出力される。
第フィードバック経路は、ＰＳＡ動作時に必要となる。
【００８７】
ＦＢＯは、ＴＣＲ１  １２及びＴＣＲ２  ２２の数個の試験回路の排他的ＯＲゲートを表すので、図９ではフィードバック結果（ＦＢＲ）と呼ばれている。図１０において、ＴＣＲ２  ２２からＴＣＲ１  １２へのフィードバック経路の全体が示されている。ＦＢＲ信号は、ＴＣ２からのＳＤＩ入力と共にマルチプレクサ１４３に入力される。命令レジスタからのフィードバック選択（ＦＢＳＥＬ）信号は、ＴＣＲ１  １２のＳＤＩ入力に中継される。オンライン動的ＰＳＡ試験時には、ＦＢＲ入力がＳＤＩに中継される。オフライン試験時又は走査動作時には、ＴＣ２からのＳＤＩ入力がＴＣＲ１  １２のＳＤＩ入力に中継される。
【００８８】
通常動作時には、入力データ（Ｄ０−７′）はＴＣＲ１  １２に入り、試験回路５４を通過し、ＴＣＲ１  １２から８進レジスタの入力（Ｄ０−７′）に出力される。
【００８９】
図９を再び参照する。ＴＣＲ１  １２（図９）の８個の試験回路に対する制御は、ＴＣＫ′、ＨＯＬＤ、Ｂ１′、Ａ１′、ＤＭＸ、ＥＸＰＤＡＴ、ＣＭＰＭＳＫ、ＰＴＡＰ、ＤＡＴＭＳＫ及びＰＳＡＥＮＡ入力に入力される。ＨＯＬＤ入力は試験ポート４８から直接到来する。ＥＸＰＤＡＴ入力及びＣＭＰＭＳＫ入力は、ＥＱＭ３０から直接到来する。ＤＭＸ入力及びＰＳＡＥＮＡ入力はＩＲＥＧ３４から直接到来する。ＤＡＴＭＳＫ入力は高論理レベルに結合されている。ＰＴＡＰ入力は、所望のフィードバック多項式をセットするために高レベル又は低レベルに配線される。
【００９０】
ＴＣＫ′入力はマルチプレクサ１４４から生じ、このマルチプレクサは、ＴＣＫ′に中継されるべきものとして、試験ポート４８からのＴＣＫ出力又は図１のＴＣ１  １２の出力からのＩＣのＣＬＫ′入力を選択する。どの入力をＴＣＫ′に中継するかの選択は、ＩＲＥＧからのＣＫＳＥＬ出力により決定される。動的ＰＳＡ試験時には、ＣＬＫ入力が同期装置１４６を通してＴＣＫ′に中継されるので、ＴＣＲ１  １２の試験回路５４はＩＣ１０の動作と同期化される。オフライン試験時又は走査動作時には、試験ポート４８からのＴＣＫ出力がＴＣＫ′に中継されるので、試験回路５４は外部走査クロックと同期化される。
【００９１】
Ａ１′入力及びＢ１′入力はマルチプレクサ１４８から到来する。マルチプレクサ１４８は、ＩＲＥＧ１３４からのＣＫＳＥＬ出力により制御される。動的ＰＳＡ動作時には、マルチプレクサ１４８はＡ１′入力を高論理レベルに、Ｂ１′入力をＥＱＭ３０からのＴＧＡＴＥＺ出力に、中継する。この構成では、Ａ１′入力は高レベルに固定され、Ｂ１′入力はＥＱＭ３０により制御され得る。オフライン試験時には、ＡはＡ１′を駆動しＢはＢ１′を駆動するので、これらはオフライン試験及び走査動作時に試験ポート４８により制御され得る。
【００９２】
事象認定プロトコール
事象認定思想を規則正しく働かせるために、組の標準的プロトコールが定義されている。図１１ａないし図１１ｅは、回路中の複数のＩＣのＥＱＭ３０間の共同を可能にする一組の事象認定プロトコールを示す。これらの事象認定プロトコールは、この明細書に記載した種類のオンライン試験を実行するのに必要なタイミングと制御とを提供する。一組の標準的事象認定プロトコールにこだわることにより、全てのＩＣデザインが或る状態に応じて共同して高等な試験動作を実行し得る様になる。
【００９３】
図１１ａは、ＥＱＭコントローラ９０の事象コマンド・インタプリタの動作を示すフローチャートである。初めに、ブロック１５０に示されている様に、コントローラはアイドル状態である。コントローラはＥＱＥＮＡ信号を監視し、ＥＱＥＮＡがゼロに等しい間は、コントローラはアイドル状態にとどまる。ＥＱＥＮＡが１に等しいときには、事象コマンド・インタプリタはアイドル状態を脱して、ブロック１５２に示されている。様にプロトコールに入る。事象コマンド・インタプリタが入るプロトコールは、Ｃ０制御信号及びＣ１制御信号の値に依存する。Ｃ０がゼロに等しくて且つＣ１がゼロに等しければ、ブロック１５４に示されているプロトコール１に入る。Ｃ０が１に等しく、Ｃ１が０に等しければ、ブロック１５６に示されているプロトコール２に入る。Ｃ０が０に等しく、Ｃ１が１に等しければ、ブロック１５８に示されているプロトコール３に入る。Ｃ０が１に等しく、Ｃ１が１に等しければ、ブロック１６０に示されているプロトコール４に入る。該プロトコール完了後、ＥＱＥＮＡ信号が１から０へ変化するまで、試験終了状態１６２に入る。ＥＱＥＮＡが０に等しくなった時、再びアイドルモード１５０となる。
【００９４】
図１１ｂは、ＥＱＭコントローラ９０への事象（ＥＶＥＮＴ）入力上の予測される状態に応じて単一の試験動作が実行されることを可能にするプロトコールを示す。図１１ａを参照すると、ＥＱＥＮＡ入力が高レベルにセットされているときにＣ０＝０で且つＣ１＝０ならば、ＥＱＭコントローラ９０はアイドル状態を脱して、事象コマンド・インタプリタ状態を介してプロトコール１状態図に入る。アイドル状態でプロトコール１の間は、ＥＱＭコントローラ９０のＡＤＤＲＥＳＳ出力は低レベルにとどまり、スタートＥＸＰＤＡＴパターン及びＣＭＰＭＳパターンをＴＣＲ２  ２２へ出力する（図８）。
【００９５】
プロトコール１状態図に入った後、ＥＱＭはブロック１６４に示されているＤＥＣＮＴ状態に移行する。ＤＥＣＮＴ状態では、ＥＱＭ３０は、ＥＱＭ走査経路（図６）のカウンタをデクリメントさせるＣＫＣＮＴ信号を出力する。プロトコール１が反復される回数が、走査動作を介してカウンタ９６にロードされている。ＤＥＣＮＴ状態からＥＱＭ３０はポーリング状態（ブロック１６６）に入る。
【００９６】
ポーリング状態においては、ＥＱＭ３０は、事象入力の状態を検査する。若し事象入力が低レベルであれば、ＥＱＭ３０はポーリング状態にとどまる。事象入力が高レベルであれば、ＥＱＭはポーリング状態から試験実行状態（ブロック１６８）に移行する。
【００９７】
試験実行状態では、ＥＱＭ３０からのＴＧＡＴＥ及びＴＧＡＴＥＺ出力はそれぞれ高レベル及び低レベルにセットされる。オンライン試験動作（動的データサンプル又は動的試験データ挿入）は、試験実行状態においてＴＧＡＴＥ及びＴＧＡＴＥＺ入力がそれぞれ高レベル及び低レベルである時に実行される。
【００９８】
試験実行状態から、ＥＱＭ３０は待機状態（ブロック１７０）に入る。待機状態に入った後、ＥＱＭ３０からのＴＧＡＴＥ及びＴＧＡＴＥＺ出力はそれぞれ低レベル及び高レベルに戻され、オンライン試験動作を終わらせる。ＥＱＭ３０は、事象入力が高レベルである間は待機状態にとどまる。事象入力が低レベルとなった後、ＥＱＭ３０は、（１）ＣＥＺ入力が高レベルであればＤＥＣＮＴ状態（ブロック１６４）に移行してプロトコール１試験動作を反復し、或いは（２）ＣＥＺ入力が低レベルであればプロトコール１試験動作を終わらせて試験終了状態（ブロック１６２）に入る。
【００９９】
ＥＱＥＮＡ入力が高レベルである間は、ＥＱＭ３０は試験終了状態に止まる。ＥＱＥＮＡが低レベルにセットされると、ＥＱＭはアイドル状態に入り、この状態にとどまる。
【０１００】
ＥＱＭプロトコール２は、予測される状態がＥＱＭコントローラ９０の事象入力に入力されている間に試験動作が行われることを可能にする。図１１ａにおいて、ＥＱＥＮＡ入力が高レベルにセットされている時にＣ０−１でＣ１−０であれば、ＥＱＭコントローラ９０はアイドル状態を脱して、事象コマンド・インタプリタ状態を介して図１１ｃに示されているプロトコール２状態図に入る。アイドル状態においてプロトコール２の間は、ＥＱＭコントローラ９０からのＡＤＤＲＥＳＳ出力は低レベルにとどまってスタートＥＸＰＤＡＴパターン及びＣＭＰＭＳＫパターンをＴＣＲ２  ２２へ出力させる（図８参照）。
【０１０１】
プロトコール２は図１１ｃに示されている。プロトコール２とプロトコール１との唯一の差異は、プロトコール２においては試験動作は事象入力が高レベルである限りは継続するのに対して、プロトコール１では、事象入力が高レベルとなっている時間の長さに関わらずに只１回の試験動作が行われるという点にある。
【０１０２】
図１１ｄに示されているプロトコール３は、ＥＱＭコントローラ９０への事象入力上のスタート状態からストップ状態までの間の期間にわたって試験動作が行われることを可能にする。ＥＱＥＮＡ入力が高レベルにセットされている時にＣ０＝０であり且つＣ１＝１であれば、ＥＱＭコントローラ９０はアイドル状態を脱して事象コマンド・インタプリタ状態を介してプロトコール３状態図に入る。アイドル状態時にはＥＱＭコントローラ９０からのＡＤＤＲＥＳＳ出力は低レベルであり、スタートＥＸＰＤＡＴパターン及びＣＭＰＭＳＫパターンをＴＣＲ２  ２２へ出力する。
【０１０３】
プロトコール３状態図に入った後、ＥＱＭ３０はＤＥＣＮＴ状態（ブロック１７０）に移行する。ＤＥＣＮＴ状態時にはＥＱＭアドレス出力は低レベルで、スタートＥＸＰＤＡＴパターン及びＣＭＰＭＳＫパターンをＴＣＲ２  ２２へ出力する。ＤＥＣＮＴ状態では、ＥＱＭ３０はＣＫＣＮＴ信号を出力してＥＱＭ走査経路（図６）中のカウンタをデクリメントする。このカウンタには、プロトコール３が反復されるべき回数が、走査経路を介してロードされてある。ＤＥＣＮＴ状態から、ＥＱＭ３０  ３０はポーリング状態に入る。
【０１０４】
ポーリング状態（ブロック１７２）では、ＥＱＭ３０は事象入力の状態を検査する。ＥＱＭコントローラ９０からのアドレス出力はポーリング状態時には低レベルにとどまる。
若し事象入力が低レベルであれば、ＥＱＭ３０はポーリング状態にとどまる。若し事象入力が高レベルであれば、ＥＱＭ３０はポーリング状態からスタート状態へ移行する。
【０１０５】
スタート状態（ブロック１７４）では、ＥＱＭ３０からのＴＧＡＴＥ出力及びＴＧＡＴＥＺ出力は、それぞれ、高レベル及び低レベルにセットされる。ＥＱＭコントローラ９０からのアドレス出力はスタート状態時には低レベルにとどまる。実行されるべきオンライン試験動作（動的ＰＳＡ又は動的試験データ挿入）は、スタート状態においてＴＧＡＴＥ出力及びＴＧＡＴＥＺ出力がそれぞれ高レベル及び低レベルにセットされた時に開始される。ＥＱＭ３０は、事象入力が高レベルである間はスタート状態にとどまる。事象入力が低レベルになると、ＥＱＭ３０はスタート状態から試験実行状態（ブロック１６５）へ移行する。
【０１０６】
試験実行状態では、ＴＧＡＴＥ出力及びＴＧＡＴＥＺ出力はそれぞれ高レベル及び低レベルにとどまり、スタート状態で開始された試験動作が継続する。ＥＱＭコントローラ９０からのアドレス出力は、試験実行状態で高レベルにセットされ、ストップＥＸＰＤＡＴパターン及びＣＭＰＭＳＫパターンをＴＣＲ２  ２２へ出力する。ＥＱＭ３０は、事象入力が低レベルである間は試験実行状態にとどまる。事象入力が高レベルとなった時、ＥＱＭ３０は試験実行状態からストップ状態（ブロック１７８）へ移行する。
【０１０７】
ストップ状態では、ＥＱＭ３０からのＴＧＡＴＥ出力及びＴＧＡＴＥＺ出力は、それぞれ低レベル及び高レベルにセットし直され、オンライン試験動作を終わらせる。ＥＱＭコントローラ９０からのアドレス出力は、ストップ状態時には高レベルにとどまる。ＥＱＭ３０は、事象入力が高レベルである間はストップ状態にとどまる。事象入力が低レベルに転じた後、ＥＱＭ３０は（１）ＣＥＺ入力が高レベルであればＤＥＣＮＴ状態（ブロック１７０）に移行してプロトコール３試験動作を反復し、或いは（２）ＣＥＺ入力が低レベルであればプロトコール３試験動作を終わらせて試験終了状態に入る。
【０１０８】
ＥＱＭ３０は、ＥＱＥＮＡ入力が高レベルである間は試験終了状態にとどまる。ＥＱＥＮＡが低レベルにセットされた時、ＥＱＭ３０はアイドル状態に移行し、この状態にとどまる。ＥＱＭコントローラからのアドレス出力は、試験終了状態で低レベルにセットされる。
【０１０９】
図１１ｅは、プロトコール４のフローチャートを示す。このプロトコールは、ＥＱＭコントローラ９０への事象入力のスタート状態とストップ状態との間の期間にわたって試験動作の実行を可能にする点においてプロトコール３と類似している。しかし、プロトコール４は、スタートプロトコール及びストッププロトコールの間に埋め込まれた休止プロトコール及び再開プロトコールを含んでいる。この能力により、既に開始された試験動作を、ＥＱＭコントローラ９０への事象入力の休止状態及び再開状態の間の期間にわたって一時的に中断させることが出来る。
【０１１０】
このプロトコールは、取られる符号定数に包含されるべきでないデータ部分を削除することを可能にするものであるので、動的ＰＳＡ試験動作時に役立つ。例えば、メモリアクセスルーチンの或るアドレスに符号定数が必要であれば、このプロトコールを使って、所望のスタートアドレスの発生時にＰＳＡを開始させ、その後、希望しないアドレスが発生したら休止させ、ストップアドレスが見出されるまでは、所望のアドレスが発生したら再開させることが出来る。
【０１１１】
図１１ａにおいて、ＥＱＥＮＡ入力が高レベルにセットされているときにＣ０＝１で且つＣ１＝１であれば、ＥＱＭコントローラはアイドル状態を脱して、事象コマンド・インタプリタ状態を介して図１１ｅに示されているプロトコール４状態図に入る。ＥＱＭコントローラ９０からのアドレス出力は、アイドル状態時に低レベルで、スタートＥＸＰＤＡＴパターン及びＣＭＰＭＳＫパターンをＴＣＲ２  ２２へ出力する。
【０１１２】
プロトコール４状態図に入った後、ＥＱＭ３０はＤＥＣＮＴ状態（ブロック１８０）に移行する。ＥＱＭコントローラ９０からのアドレス出力は、ＤＥＣＮＴ状態時には低レベルにとどまる。ＤＥＣＮＴ状態では、ＥＱＭ３０はＣＫＣＮＴ信号を出力して、ＥＱＭ走査経路中のカウンタ９６をデクリメントする。カウンタ９６には、プロトコール４が反復されるべき回数がロードされてある。ＤＥＣＮＴ状態からＥＱＭ３０はポーリング状態（ブロック１８２）に入る。
【０１１３】
ポーリング状態では、ＥＱＭ３０は事象入力の状態を検査する。ＥＱＭコントローラ９０からのアドレス出力は、ポーリング状態時には低レベルにとどまる。事象入力が低レベルであれば、ＥＱＭ３０はポーリング状態にとどまる。事象入力が高レベルであれば、ＥＱＭ３０はポーリング状態からスタート状態（ブロック１８４）に移行する。
【０１１４】
スタート状態では、ＥＱＭ３０からのＴＧＡＴＥ出力及びＴＧＡＴＥＺ出力は、それぞれ高レベル及び低レベルにセットされる。スタート状態時には、ＥＱＭコントローラ９０からのアドレス出力は低レベルにとどまる。実行されるべきオンライン試験動作（動的ＰＳＡ又は動的試験データ挿入）は、スタート状態でＴＧＡＴＥ出力及びＴＧＡＴＥＺ出力がそれぞれ高レベル及び低レベルにセットされた時に開始される。ＥＱＭ３０は、事象入力が高レベルである間はスタート状態にとどまる。事象入力が低レベルになった時、ＥＱＭ３０はスタート状態から試験実行状態（ブロック１８６）へ移行する。
【０１１５】
試験実行状態では、ＴＧＡＴＥ出力及びＴＧＡＴＥＺ出力はそれぞれ高レベル及び低レベルにとどまり、スタート状態で開始された試験動作は継続する。ＥＱＭコントローラ９０からのアドレス出力は、試験実行状態では高レベルにセットされてストップＥＸＰＤＡＴパターン及びＣＭＰＭＳＫパターンをＴＣＲ２  ２２へ出力する。ＥＱＭ３０は、事象入力が低レベルである間は試験実行状態にとどまる。事象入力が高レベルになると、ＥＱＭ３０は試験実行状態から休止状態（ブロック１８８）へ移行する。
【０１１６】
休止状態では、ＥＱＭ３０からのＴＧＡＴＥ出力及びＴＧＡＴＥＺ出力はそれぞれ低レベル及び高レベルにセットし直されて、オンライン試験動作を中断させる。ＥＱＭコントローラ９０からのアドレス出力は、休止状態時には高レベルにとどまる。ＥＱＭ３０は、事象入力が高レベルである間は休止状態にとどまる。事象入力が低レベルに転じた後、ＥＱＭ３０は休止状態から待機状態（ブロック１９０）へ移行する。
【０１１７】
ＥＱＭ３０は、事象入力が低レベルである間は待機状態にとどまる。ＥＱＭコントローラ９０からのアドレス出力は、待機状態で低レベルにセットされてスタートＥＸＰＤＡＴパターン及びＣＭＰＭＳＫパターンをＴＣＲ２  ２２へ出力する。待機状態で、ＥＱＭ３０からのＴＧＡＴＥ出力及びＴＧＡＴＥＺ出力は、それぞれ低レベル及び高レベルにとどまる。事象入力が高レベルに転じた後、ＥＱＭ３０は待機状態から休止状態（ブロック１９２）へ移行する。
【０１１８】
再開状態では、ＥＱＭ３０からのＴＧＡＴＥ出力及びＴＧＡＴＥＺ出力はそれぞれ高レベル及び低レベルにセットされて、オンライン試験動作を再開させる。ＥＱＭコントローラ９０からのアドレス出力は、再開状態時には低レベルにとどまる。ＥＱＭ３０は、事象入力が高レベルである間は再開状態にとどまる。事象入力が低レベルに転じた後、ＥＱＭ３０は再開状態から試験実行状態（ブロック１９４）へ移行する。
【０１１９】
試験実行状態では、ＴＧＡＴＥ出力及びＴＧＡＴＥＺ出力はそれぞれ高レベル及び低レベルにとどまり、再開状態で再開された試験動作が続く。ＥＱＭコントローラ９０からのアドレス出力は、試験実行状態で高レベルにセットされてストップＥＸＰＤＡＴパターン及びＣＭＰＭＳＫパターンをＴＣＲ２  ２２へ出力する。ＥＱＭ３０は、事象入力が低レベルである間は試験実行状態に止まる。事象入力が高レベルになった時、ＥＱＭ３０は試験実行状態からストップ状態（ブロック１９６）へ移行する。
【０１２０】
ストップ状態では、ＥＱＭ３０からのＴＧＡＴＥ出力及びＴＧＡＴＥＺ出力は、それぞれ低レベル及び高レベルにセットし直され。オンライン試験動作を終わらせる。ＥＱＭコントローラ９０からのアドレス出力はストップ状態時には高レベルにとどまる。ＥＱＭ３０は、事象入力が高レベルである間はストップ状態にとどまる。事象入力が低レベルに転じた後、ＥＱＭ３０は（１）ＣＥＺ入力が高レベルであればＤＥＣＮＴ状態へ移行してプロトコール４試験動作を反復し、或いは（２）ＣＥＺ入力が低レベルであればプロトコール４試験動作を終わらせて試験終了状態（ブロック１６２）に入る。
【０１２１】
ＥＱＭ３０は、ＥＱＥＮＡ入力が高レベルである間は試験終了状態にとどまる。ＥＱＥＮＡが低レベルにセットされた時、ＥＱＭ３０はアイドル状態に移行して、この状態にとどまる。ＥＱＭコントローラ９０からのアドレス出力は、試験終了状態で低レベルにセットされる。
【０１２２】
ＥＱＭ制御レジスタ８８のコマンドビット（Ｃ０，Ｃ１，Ｃ２，Ｃ３・・・ ）の数を増やすことにより、追加のプロトコールをＥＱＭに包含させることが出来る。これらの追加のプロトコールのうちの或るものは、試験動作を制御するＥＱＭの能力を拡張するために、スタート状態とストップ状態との間に埋め込まれた複数の休止状態及び再開状態を有する。これらのプロトコールは、主スタート状態及びストップ状態間の休止状態及び再開状態の数を増すために、以下の形：
（スタート）・・・・（休止１／再開１）・・・・（休止２／再開２）・・・・・・（休止ｎ／再開ｎ）・・・・（ストップ）
である。
【０１２３】
また、他の試験及び／又は機能的目的を支援するＩＣ間の通信を提供するために他のプロトコールフォーマットを加えることが出来る。
【０１２４】
動的試験命令
動的試験データ挿入命令は、先の走査動作を介してＴＣＲ２  ２２に入力された試験パターンが或る状態に応じてＱ０−７出力に挿入されることを可能にする。この応答は、図１のＩＣ１０の出力境界で局所的に発生する状態であることもあり、図５に示されている或る範囲にわたるＩＣ群で発生する状態であっても良い。以下の命令は、改良された試験レジスタが実行することの出来る試験データ挿入動作の種類を定義する。
【０１２５】
図１２に示されている単一試験データ挿入命令は、認定されたＣＬＫ入力時にＱ０−７出力から試験データが挿入されることを可能にする。この命令は、プロトコール１ＥＱＭコマンドを使用して作用する。図１２のプロトコール１の例では、ＥＱＭからのＴＧＡＴＥ出力がＣＬＫ′“Ｃ”の立ち上がりエッジで高レベルにセットされる時に試験データが挿入される。ＴＧＡＴＥ出力は、図８のマルチプレクサ１４２を介してＴＣＲ２  ２２のＤＭＸ′入力に中継される。ＴＣＲ２  ２２の試験回路は、そのＤＭＸ入力上の高レベル入力に応答して、その出力ラッチ（図４参照）に格納されている値を追い出すべくＤＯＵＴ出力を転換する。挿入動作時には、ＴＣＲ２  ２２への制御入力は、試験データ挿入動作を妨げない場所に配置される。
【０１２６】
この命令は、状態機械の挙動を修正する次の状態パターンを試験レジスタにより挿入させることが出来るので、改良された試験レジスタを使う状態機械の設計に役立つ。挿入機能を介して分岐動作が可能となる。
【０１２７】
図１３は、拡張された単一試験データ挿入命令（プロトコール２）を示す。この命令は、ＥＱＭコントローラ９０への事象入力が高レベルにセットされている間に試験データがＩＣ１０のＱ０−７出力から挿入されることを可能にするものである。この命令は、プロトコール２ＥＱＭコマンドを使って作用し、単一試験データ挿入命令に類似している。図１２のプロトコール２の例では、試験データはＣＬＫ′“Ｃ”の立ち上がりエッジからＣＬＫ′“Ｆ”の立ち上がりエッジまでＱ０−７出力から挿入される。ＴＧＡＴＥ出力は、図８のマルチプレクサ１４２を介してＴＣＲ２  ２２へのＤＭＳ′入力に中継されている。ＴＣＲ２  ２２の試験回路５４は、そのＤＭＸ入力上の高レベル入力に応答して、そのＤＯＵＴ出力を転換して、その出力ラッチ（図４参照）に格納されている値を追い出す。
【０１２８】
この命令は、試験データがＱ０−７出力の、拡張された範囲に出力されることを可能にするという事実の故に有益である。この能力を使えば、通常動作時に故障をシステムバス上に挿入して、故障許可設計がそれ自身を再構成して通常動作を維持することが出来るか否かを調べることが出来る。
【０１２９】
図１４のスタート／ストップ試験データ挿入命令は、スタート状態とストップ状態との間の期間に試験データをＱ０−７出力から挿入することを可能にする。この命令はプロトコール３ＥＱＭコマンドを使う。図１４のプロトコール３の例では、試験データはＴＧＡＴＥ出力が高レベルにセットされている間に挿入される。ＴＧＡＴＥ出力は、スタート状態が見出されるときに高レベルにセットされ、ストップ状態が見出されるまでは高レベルにとどまる。ＴＣＲ２  ２２の試験回路は、プロトコール１命令で説明したように高レベルＴＧＡＴＥ入力に応答する。
【０１３０】
この命令は、拡張された期間にわたる、試験レジスタＱ０−７出力での試験パターンの挿入を可能にする。この機能の有益な能力は、故障を試験レジスタから強制的に出力させることが出来ることである。
【０１３１】
図１５のスタート／休止／再開／ストップ・試験データ挿入命令は、第１のスタート及びストップ状態間の期間中に試験データをＱ０−７出力から挿入し、次に再び第２のスタート及びストップ状態で挿入することを可能にするものである。この命令はプロトコール４ＥＱＭコマンドを使う。図１５のプロトコール４の例では、試験データはＴＧＡＴＥ出力が高レベルにセットされている間に挿入される。ＴＧＡＴＥ出力は、スタート状態が発生したときに高レベルに転じ、休止状態が発生するまでは高レベルにとどまる。ＴＧＡＴＥは、再開状態が発生したときに再び高レベルに転じ、ストップ状態が発生するまでは高レベルにとどまる。ＴＣＲ２  ２２の試験回路は、プロトコール１命令で説明したように高レベルＴＧＡＴＥ入力に応答する。
【０１３２】
この命令は、プロトコール４シーケンス当たり二つの別様に認定された時間窓に挿入動作が発生し得るところまで試験データ挿入能力を拡張することを可能にする。
【０１３３】
図１６の動的データサンプル命令は、認定されたＣＬＫ入力時にＤ０−７入力に現れる入力データをＴＣＲ１  １２の試験回路内にサンプリングすることを可能にするものである。この命令は、プロトコール１ＥＱＭコマンドを使って作用する。図１６ａのプロトコール１の例では、入力データは、ＥＱＭ３０からのＴＧＡＴＥＺ出力が低レベルである時にＣＬＫ′“Ｃ”の立ち上がりエッジでサンプリングされる。ＴＧＡＴＥＺ出力は、マルチプレクサ１４８を介して図９のＴＣＲ１  １２のＢ１′入力に中継される。動的サンプル動作時に、Ａ１′入力はマルチプレクサ１４８により高レベルにセットされる。ＴＧＡＴＥＺが高レベルである間、ＴＣＲ１  １２内の試験回路は、表１に示されている様にホールドモード（ＡＢ＝１１）となっている。ＴＧＡＴＥＺが低レベルに転じるとき、Ｂ１′入力は低レベルに転じると共にＴＣＲ１  １２内の試験回路は１サンプルクロックサイクル中ロードモードとされる。サンプルが完成すると（ＴＧＡＴＥＺが再び高レベルに戻る）、ホールドモードに再び入る。図１６ｂないし図１６ｄに示されているデータサンプル命令について、図２０と関連させて以下に説明をする。
【０１３４】
安定したデータサンプリングを行うため、ＥＱＭ（図６参照）のＥＱＣＫは、排他的ＯＲゲートと、ＥＱＭ制御レジスタ８８からのＣＫＰＯＬ入力の高レベル状態とを介して反転される。
【０１３５】
データがサンプリングされた後、ＴＣＲの入力を調整して、サンプリングされたデータを検査のために外へシフトさせることが出来る。
【０１３６】
動的ＰＳＡ命令は、ＩＣ１０のＤ０−７入力に入るデータを、図１０に示されている様にＴＣＲ１及びＴＣＲ２を組み合わせて使用して、１６ビット符号定数とすることを可能にするものである。ＰＳＡ動作は、或る状態に応じて行われる。この応答は、図１のＩＣ１０の出力境界で局所的に発生する状態であることが出来、また、図５に示されている或る範囲のＩＣにわたって発生する状態であっても良い。以下の命令は、改良された試験レジスタが実行することの出来るＰＳＡ命令の種類を定義する。
【０１３７】
図１７に示されている単一事象認定ＰＳＡ命令は、ＥＱＭコントローラ９０への事象入力が高レベルにセットされている間にＤ０−７入力に現れる入力データを圧縮して１６ビット符号定数とすることを可能にするものである。この動作中、ＴＣＲ１  １２とＴＣＲ２  ２２とは図１０に示されている様に相互に結合されて１６ビット符号定数解析レジスタを形成する。この命令は、プロトコール２ＥＱＭコマンドを使って作用する。図１７のプロトコール２の例では、Ｄ０−７上の入力データは、ＥＱＭ３０からのＴＧＡＴＥＺ出力が高レベルにセットされている時にＣＬＫ′入力の立ち上がりエッジでサンプリングされる。ＴＧＡＴＥＺ出力は、動的データサンプル命令で説明したように、低レベルである時にはＴＣＲ１  １２の試験回路５４をロードモード（ＡＢ＝１０）にし、高レベルである時にはホールドモード（ＡＢ＝１１）にする。また、ＴＧＡＴＥＺ出力は、ＰＳＡ動作時にＴＣＲ２  ２２に入力されて、ＴＧＡＴＥＺが低レベルである時にはＴＣＲ２  ２２の試験回路５４をシフトモード（ＡＢ＝００）にし、ＴＧＡＴＥＺが高レベルである時にはホールドモード（ＡＢ＝１１）にする。ＴＧＡＴＥＺが低レベルである時にＴＣＲ１  １２をロードさせ且つＴＣＲ２  ２２をシフトさせることにより、事象入力が高論理レベルにセットされている時にＤ０−７入力データを圧縮して１６ビットの、符号定数とすることが出来る。
【０１３８】
ＥＱＭ３０からのＴＧＡＴＥ出力は、ＰＳＡ又はサンプル試験時にはＴＣＲ２  ２２のＤＭＸ′入力から切り離されるので、ＴＣＲに対しては何の効果を持たない。符号定数が取られた後、ＴＣＲの入力を調整して、該符号定数を検査のためにＩＣ１０から外へシフトさせることが出来る。
【０１３９】
この命令は、ＩＣ１０を流れるデータの流れを圧縮するのに役立つ。何時データを圧縮するべきかの制御は、ＥＱＩＮ入力又は内部ＣＴＥＲＭ入力を介してＥＱＭ３０へ入力される。
【０１４０】
図１８に示されているスタート／ストップ・ＰＳＡ命令は、Ｄ０−７入力に現れる入力データを、スタート状態及びストップ状態との間の期間にわたって圧縮して１６ビット符号定数とすることを可能にするものである。この動作中、ＴＣＲ１  １２及びＴＣＲ２  ２２は図１０に示されている様に相互に結合されて１６ビット符号定数解析レジスタを形成する。この命令は、プロトコール３ＥＱＭコマンドを使って作用する。図１８のプロトコール３の例では、Ｄ０−７上の入力データは、ＥＱＭ３０からのＴＧＡＴＥＺ出力が低レベルにセットされている時にＣＬＫ′入力の立ち上がりエッジでサンプリングされる。
ＴＧＡＴＥＺ出力は、動的データサンプル命令で説明したように、ＴＣＲ１  １２の試験回路５４を、低レベルである時にはロードモード（ＡＢ＝１０）とし、高レベルである時にはホールドモード（ＡＢ＝１１）とする。また、ＴＧＡＴＥＺ出力は、ＰＳＡ動作時にＴＣＲ２  ２２に入力されて、ＴＣＲ２  ２２の試験回路５４を、ＴＧＡＴＥＺが低レベルである時にはシフトモード（ＡＢ＝００）とし、ＴＧＡＴＥＺが高レベルである時にはホールドモード（ＡＢ＝１１）とする。ＴＧＡＴＥＺが低レベルに転じる時にＴＣＲ１  １２をロードさせると共にＴＣＲ２  ２２をシフトさせることにより、認定されたスタート状態及びストップ状態にわたってＤ０−７入力データを圧縮して１６ビット符号定数とすることが出来る。
【０１４１】
ＰＳＡ又はサンプル試験時には、ＥＱＭ３０からのＴＧＡＴＥ出力はＴＣＲ２  ２２のＤＭＸ′入力から切り離されるので、ＴＣＲに対して何の効果も持たない。符号定数が取られた後、ＴＣＲの入力を調整して、それを検査のためにＩＣ１０から外へシフトさせることが出来る。
【０１４２】
この命令は、スタート／ストップ範囲にわたってＩＣ１０を流れるデータの流れを圧縮するのに役立つ。
【０１４３】
図１９に示されているスタート／休止／再開／ストップ・ＰＳＡ命令は、Ｄ０−７入力に現れる入力データを、スタート状態及び休止状態間の期間にわたって、次に再び再開状態及びストップ状態間の期間にわたって圧縮して１６ビット符号定数とすることを可能にするものである。この命令は、図１９に示されているプロトコール４命令を使って作動する。プロトコール４の例では、Ｄ０−７上の入力データは、ＴＧＡＴＥＺが低レベルである時にサンプリングされる。ＴＧＡＴＥＺ出力は、スタート状態が発生するときに低レベルとなり、休止状態が発生するまでは低レベルにとどまる。ＴＧＡＴＥＺは、再開状態が発生したときに再び低レベルに転じ、ストップ状態が発生するまでは低レベルにとどまる。ＥＱＭ３０からのＴＧＡＴＥＺ出力は、ＴＣＲ１  １２及びＴＣＲ２  ２２を、スタート／ストップ・ＰＳＡ動作で説明した様に作動させるために使われる。符号定数が取られた後、ＴＣＲの入力を調整して、該符号定数を検査のためにＩＣ１０から外へシフトさせることが出来る。
【０１４４】
この命令は、スタート／休止／再開／ストップ範囲にわたってＩＣ１０を流通するデータの慣れを圧縮するのに役立つ。
【０１４５】
拡張された試験データサンプル及び挿入能力
動的試験データサンプリング中にサンプリングされる試験データの数と、動的試験データ挿入動作中に挿入される試験パターンの数とを増やすために、試験パターンメモリバッファーを図１のアーキテクチャに包含させることが出来る。メモリバッファー１６４への入力は、ＴＣＲ１  １２の出力に接続され、メモリバッファー１６４の出力は、マルチプレクサ１６６を介してＴＣＲ２  ２２の入力に接続されている。シリアル走査経路は、メモリバッファー１６４を通過し、シリアル試験インターフェースを介して該メモリのローディング及びアンローディングを可能にする。メモリバッファー１６４は、事象認定試験時にＥＱＭ出力バスから制御入力を受信する。メモリバッファー１６４は入力制御回路１６８を包含しており、この回路は、ＥＱＭ制御入力に応答して、試験データサンプル動作中にＤ０−７に到来するデータを格納することを可能にする。メモリバッファー１６４は、出力制御回路１７０も包含しており、この回路は、ＥＱＭ制御入力に応答して、試験データ挿入動作時にマルチプレクサ１６６を介してＱ０−７上の格納されている試験データを出力することを可能にする。メモリバッファー１６４は、書込み又は読出動作後に次の記憶場所にアクセスするための内部アドレス指定論理を持っている。
【０１４６】
バッファー付き試験データサンプリング
メモリバッファー１６４は２個以上の入来データ入力を格納出来るので、データサンプリングのために他のプロトコール（２、３及び４）を使うことが出来る。以下は、事象認定データサンプル動作時に複数のパターンを該メモリバッファーに格納するために他の各プロトコールがどの様に使用されるかを説明するものである。入来するデータパターンを格納するために一つのプロトコールを利用した後、走査動作により、格納されているパターンを該メモリバッファーから除去することが出来る。
【０１４７】
試験中に複数のデータパターンを格納し得ることの利点は、回路中の１個以上の素子の機能動作の観察を付加的に可能にすることにある。
【０１４８】
プロトコール２命令時には、ＥＱＭコントローラ９０への事象入力が図１６ｂのタイミング波形図に示されている様に高レベルにセットされている間は図２０のＩＣ１０に入る通常のシステムデータはメモリバッファー１６４に格納される。入来するデータは、ＴＧＡＴＥＺ信号が低レベルである間はＣＬＫ′入力の各高レベルパルス時にメモリバッファー１６４に格納される。メモリバッファー１６４の内部アドレス指定論理は、データが現在の記憶場所に書き込まれた後、次の記憶場所にインクリメントする。
【０１４９】
プロトコール３命令時には、図２０のＩＣ１０に入る通常のシステムデータは、図１６ｃのタイミング波形図に示されているスタート事象入力及びストップ事象入力により決定される、認定された時間にわたってメモリバッファー１６４に格納される。入来するデータは、ＴＧＡＴＥＺ入力が低レベルである間はＣＬＫ′入力の各高レベルパルス時にメモリバッファー１６４に格納される。メモリバッファー１６４のアドレス指定論理は、データが現在の記憶場所に書き込まれた後、次の記憶場所にインクリメントする。
【０１５０】
プロトコール４命令時には、図２０のＩＣ１０に入る通常のシステムデータは、図１６ｄのタイミング波形に示されているスタート事象入力及びストップ事象入力により決定される、認定された期間にわたってメモリバッファー１６４に格納される。入来するデータは、ＴＧＡＴＥＺ入力が低レベルである間にＣＬＫ′入力の各高レベルパルス時にメモリバッファー１６４に格納される。このプロトコールは休止状態及び再開状態を含んでいるので、データサンプル動作を一時的に休止させ、その後に再開させることにより、入来するデータパターンの不要な部分を省略することが可能となる。メモリバッファー１６４のアドレス指定論理は、データが現在の記憶場所に書き込まれた後に次の記憶場所にインクリメントする。
【０１５１】
バッファー付き試験データ挿入
メモリバッファー１６４は複数の試験データパターンを格納出来るので、図１２ないし図１５と関連して説明した動的試験データ挿入動作を使って一連の試験パターンをＱ０−７出力バス上に挿入することが出来る。以下は、動的試験データ挿入動作時にＱ０−７出力バス上に複数の試験パターンを挿入するためにプロトコール（２、３及び４）の各々をどの様に使うかを説明するものである。挿入試験動作を実行する前に、メモリバッファー１６４には、挿入されるべき所望の試験パターンがロードされる。
【０１５２】
バッファー付き試験データ挿入時には、ＥＱＭ３０は制御をマルチプレクサ１６６に出力して、メモリバッファーからの試験データをＴＣＲ２  ２２を介してＩＣ１０のＱ０−７出力へ出力させる。試験パターンがメモリバッファー１６４から挿入されている間、ＴＣＲ２  ２２の試験回路５４はマルチプレクサ１６６の入力とＩＣ１０のＱ０−７出力との間の接続を維持しなければならない。この接続を達成する制御回路３００が図２１に示されている。
【０１５３】
図２１の制御回路３００は、ＥＱＭ３０からのＴＧＡＴＥ出力をマルチプレクサ１６６又はＴＣＲ２  ２２内の試験回路５４に入力することを可能にする。制御回路３００は、２個のＡＮＤゲート３０１及び３０２と、１個のインバータ３０３とから成る。ＡＮＤゲート３０１は、ＥＱＭ３０からのＴＧＡＴＥ信号と、ＩＲＥＧ３４からのＭＥＭＳＥＬ信号とに接続された入力を有し、マルチプレクサ１６６への制御入力に接続されている。ＡＮＤゲート３０２の入力は、ＴＧＡＴＥ信号に接続されると共に、インバータ３０３を通してＭＥＭＳＥＬ信号に接続されている。ＡＮＤゲート３０２の出力はマルチプレクサ１４２に接続されている。ＴＣＲ２  ２２の試験回路からデータが挿入されるべき時には、制御回路は、ＡＮＤゲート３０１の出力を低レベルにしつつＴＧＡＴＥ入力がＡＮＤゲート３０２の出力へ通過することを可能にする様にＩＲＥＧ３４（ＭＥＭＳＥＬ）によりセットされる。メモリバッファー１６４の出力からデータが挿入されるべき時には、ＩＲＥＧ３４からの制御入力（ＭＥＭＳＥＬ）は、ＡＮＤゲート３０２の出力を低レベルにしつつＴＧＡＴＥ入力がＡＮＤゲート３０１の出力へ通過することを可能にする様にセットされる。ＡＮＤゲート３０２の出力が低レベルにセットされている間は、ＴＣＲ２  ２２の試験回路５４は、マルチプレクサ１６６からの試験データ出力がＩＣ１０のＱ０−７出力上に出力されることを可能にする。
【０１５４】
試験時に複数の試験パターンをＱ０−７出力バス上に挿入する能力は、回路中の少なくとも１個の素子における付加的な動的試験制御能力を提供するという利点をもたらす。
【０１５５】
プロトコール２命令時には、格納されている試験データを、メモリバッファー出力から図２０のＩＣ１０のＱ０−７出力バス上に挿入することが出来る。試験データは、図１３のタイミング波形図に示されている様に、ＥＱＭコントローラ９０への事象入力が高レベルにセットされている間に挿入される。挿入されるべきデータは、ＴＧＡＴＥ信号が高レベルである間、メモリバッファー出力から利用し得る様にされる。メモリバッファー１６４内のアドレス指定論理は、ＣＬＫ′入力の立ち上がりエッジで、格納されている試験データにアクセスし出力する。
【０１５６】
プロトコール３命令時には、格納されている試験データを、メモリバッファー出力から図２０のＩＣ１０のＱ０−７出力バス上に挿入することが出来る。試験データは、図１４のタイミング波形に示されているスタート事象入力及びストップ事象入力により決定される、認定された時間にわたって挿入される。挿入されるべきデータは、ＴＧＡＴＥ信号が高レベルである間、メモリバッファー出力から利用可能とされる。メモリバッファー内のアドレス指定論理は、ＣＬＫ′入力の立ち上がりエッジで、格納されているデータにアクセスし出力する。
【０１５７】
プロトコール４命令時には、格納されている試験データを、メモリバッファー出力から図２０のＩＣ１０のＱ０−７出力バス上に挿入することが出来る。試験データは、図１５のタイミング波形に示されているスタート事象入力及びストップ事象入力により決定される、認定された時間にわたって挿入することが出来る。挿入されるべきデータは、ＴＧＡＴＥ信号が高レベルである間、メモリバッファー出力から利用可能とされる。メモリバッファー内のアドレス指定論理は、ＣＬＫ′入力の立ち上がりエッジで、格納されている試験データにアクセスし出力する。このプロトコールは休止状態及び再開状態を含むので、所望の期間に限って試験データの挿入を許すためにデータ挿入動作を一時的に休止させ、その後に再開させることが出来る。試験データ挿入動作が中断されている時には、通常のシステムデータが出力される。
【０１５８】
ＴＣＲ２から生成された試験パターンの挿入
更に別の種類の試験データ挿入能力を提供するために、ＴＣＲ２  ２２の試験回路５４をパターン生成モードで作動させることが出来る。パターン生成モードでは、トグル、擬似ランダム、又は二進カウント・アップ／ダウン・パターンの形の試験パターンを出力する様にＴＣＲ２  ２２を構成することが出来る。これらのパターン生成能力は、前記の米国特許出願第２４１，４３９号に記載されている。ＥＱＭを使って、ＴＣＲ２内の試験回路を装置の通常作動時に作動可能にして、Ｑ０−７出力バス上に挿入されるべき試験パターンを生成させることが出来る。
【０１５９】
プロトコール２命令時には、ＴＣＲ２  ２２内の試験回路５４をＥＱＭコントローラ９０により作動可能にして、試験パターンを生成させ、これを図１及び図２０のＩＣ１０のＱ０−７出力バス上に挿入させることが出来る。生成された試験パターンは、図１３のタイミング波形に示されている様にＥＱＭコントローラへの事象入力が高レベルにセットされている間に挿入される。挿入されるべきデータは、ＴＧＡＴＥ信号が高レベルである間、ＴＣＲ２  ２２の出力から利用可能とされる。ＴＣＲ２  ２２は、ＣＬＫ′入力の立ち上がりエッジでデータパターンを生成し出力する。
【０１６０】
プロトコール３命令時には、ＴＣＲ２  ２２内の試験回路をＥＱＭコントローラ９０で作動させて、試験パターンを生成させ、これを図１及び図２０のＩＣ１０のＱ０−７出力バス上に挿入させることが出来る。この生成された試験パターンは、図１４のタイミング波形に示されているスタート事象入力及びストップ事象入力により決定される、認定された時間にわたって挿入される。挿入されるべきデータは、ＴＧＡＴＥ信号が高レベルである間、ＴＣＲ２  ２２の出力から利用可能とされる。ＴＣＲ２  ２２は、ＣＬＫ′入力の立ち上がりエッジで試験データパターンを生成し出力する。
【０１６１】
プロトコール４の場合には、ＴＣＲ２内の試験回路をＥＱＭコントローラで作動させて試験パターンを生成させ、これを図１及び図１５のＩＣ１０のＱ０−７出力バス上に挿入させることが出来る。この生成された試験パターンは、図１５のタイミング波形に示されているスタート事象入力及びストップ事象入力により決定される、認定された時間にわたって挿入される。挿入されるべきデータは、ＴＧＡＴＥ信号が高レベルである間、ＴＣＲ２の出力から利用可能とされる。このプロトコールは休止状態及び再開状態を含むので、試験データ生成及び挿入動作を一時的に休止させ、その後に再開させることにより、所望の期間に限って試験データを挿入することが出来る。通常のシステムデータは、試験データ挿入動作が中断されているときに出力される。
【０１６２】
発明の効果
本発明の境界試験アーキテクチャは、集積回路において、該集積回路が作動モードである時に境界試験を行うために使用することの出来るものである。到来するデータを受け取る入力回路が設けられ、集積回路からデータを出力する出力回路が設けられる。到来するデータに対して格納や論理演算等の所望の機能を実行する論理回路が該入力回路及び該出力回路の間に接続される。所定の状態の検出に応じてデータを解析し格納する試験回路が該入力回路及び出力回路に接続される。所定状態は、該論理回路からのデータを、レジスタ又はメモリに格納されている予測データワードと比較することによって検出することが出来る。マスキングデータワードを使って、この予測データワードの或るビットをマスクし、マスクビットが突き合わせ動作に関与しないようにすることが出来る。
【０１６３】
本発明の第２の実施例において、第２の所定状態を検出することが出来、この時に格納及び解析は終わる。格納及び解析は、第３の所定状態の検出後に再開されることが出来、第４の所定状態の検出後に終わることが出来る。
【０１６４】
本発明の試験アーキテクチャは、集積回路が急速に作動している時に他の集積回路からのデータを解析することが出来るという利点を提供するものである。この集積回路の急速試験は、他の方法によっては発見することの出来ないエラーを検出する。
【０１６５】
本発明の第３の実施例においては、試験アーキテクチャは、所定の状態に応じて該出力回路を通して試験データを出力する回路を包含する。試験データの出力は、第２の所定状態の検出時に停止され、第３の所定状態の検出時に再開される。第４の所定状態の検出後、この出力は停止される。
【０１６６】
本発明は、この側面において、集積回路が急速に作動している時にデータを回路基板へ導入するという利点をもたらす。試験データを回路基板に導入することが出来るという能力は、故障を発見する基板の能力を解析するのに役立つ。
【０１６７】
本発明の第４の実施例においては、集積回路への複数の入力データワードと、集積回路から出力されるべき試験データとを格納するバッファーメモリを試験回路に使用することが出来る。
【０１６８】
本発明を詳しく説明したが、特許請求の範囲の欄において定義された本発明の範囲を逸脱することなく色々な変更、置換、修正が可能であることが理解されなければならない。
【０１６９】
更に、以下の事項を開示する。
（１）  集積回路と関連させて用いる試験アーキテクチャであって、
入来するデータを受信する入力回路と、
該集積回路からデータを出力するための出力回路と、
前記入力回路と前記出力回路との間に接続され、所望の機能を前記の入来データに対して行う論理回路と、
前記入力回路及び前記出力回路に接続され、該集積回路が機能するモードである時に所定の状態に応じてデータを格納する試験回路とから成ることを特徴とする試験アーキテクチャ。
【０１７０】
（２）  前記試験回路は、
前記入力回路に接続された入力試験回路と、
前記出力回路に接続された出力試験回路と、
前記入力試験回路及び前記出力試験回路に接続され、前記所定状態が発生したときを示す事象認定回路とから成ることを特徴とする前記１項に記載の試験アーキテクチャ。
【０１７１】
（３）  前記の格納されたデータを前記出力回路とは別に該集積回路から、前記出力回路経由の通常のデータの流れが中断されないように、転送するための走査経路回路を更に有することを特徴とする前記１項に記載の試験アーキテクチャ。
【０１７２】
（４）  集積回路に使用される境界試験アーキテクチャであって、
入来するデータを受信する入力回路と、
該集積回路からデータを出力する出力回路と、
前記入力回路及び前記出力回路の間に接続されて、前記の入来するデータに対して所望の機能を行う論理回路と、
前記出力回路に接続され、該集積回路が動作モードである時に所定の状態に応じて、該集積回路から出力されるべき試験データを挿入する試験回路とから成ることを特徴とする境界試験アーキテクチャ。
【０１７３】
（５）  前記試験回路は、
前記入力回路に接続された入力試験回路と、
前記出力回路に接続された出力試験回路と、
前記入力試験回路及び前記出力試験回路に接続され、前記所定状態が発生したときを示す事象認定回路とから成ることを特徴とする前記４項に記載の試験アーキテクチャ。
【０１７４】
（６）  前記出力回路経由の通常のデータの流れを中断させずに、挿入されるべき前記データを前記出力試験回路にロードし得る様に前記出力回路とは別の走査経路回路を更に有することを特徴とする前記４項に記載の試験アーキテクチャ。
【０１７５】
（７）  集積回路を試験する方法であって、
入来するデータを受信し、
前記の入来データに対して所望の機能を行い、
前記の機能が行われたデータを出力し、
所定の状態の発生を検出し、
該集積回路が機能するモードである時に前記の所定状態に応じて入力データを処理するステップから成ることを特徴とする方法。
【０１７６】
（８）  集積回路を試験する方法であって、
入来するデータを受信し、
前記の入来データに対して所望の機能を行い、
所定状態の発生を検出し、
該所定状態の検出に応じて該集積回路から試験データを出力するステップから成ることを特徴とする方法。
【０１７７】
（９）  集積回路を試験する方法であって、
第１信号を検出して、試験動作が希望されているか否かを判定し、
前記第１信号に応じて、所望のプロトコールを表す第２信号を検出し、
前記の所望のプロトコールを使って試験動作を行うステップから成ることを特徴とする方法。
【０１７８】
（１０）  集積回路を試験する装置であって、
第１信号を検出して、試験動作が希望されているか否かを判定する回路と、
前記第１信号に応じて、所望のプロトコールを表す第２信号を検出する回路と、
前記の所望のプロトコールを使って試験動作を行う回路とから成ることを特徴とする装置。
【図面の簡単な説明】
【０１７９】
【図１】本発明の境界試験アーキテクチャを使う集積回路のブロック図である。
【図２】本発明においてクロック及び出力制御入力に使われる試験セルのブロック図である。
【図３】本発明のデータ入力に使われる試験回路のブロック図である。
【図４】本発明においてデータ出力に使われる試験回路のブロック図である。
【図５】事象認定能力を拡充するために、本発明の境界試験アーキテクチャに接続された数個の集積回路を示すブロック図である。
【図６】本発明に使われる事象認定モジュールのブロック図である。
【図７】本発明に事象認定モジュールに使われるコントローラのブロック図である。
【図８】本発明の出力試験回路への入力のブロック図である。
【図９】本発明の入力試験回路への相互接続のブロック図である。
【図１０】ＰＳＡ試験動作時の入力及び出力試験回路レジスタの構成を示す。
【図１１ａ】本発明における事象認定モジュールプロトコールを示すフローチャートである。
【図１１ｂ】本発明における事象認定モジュールプロトコールを示すフローチャートである。
【図１１ｃ】本発明における事象認定モジュールプロトコールを示すフローチャートである。
【図１１ｄ】本発明における事象認定モジュールプロトコールを示すフローチャートである。
【図１１ｅ】本発明における事象認定モジュールプロトコールを示すフローチャートである。
【図１２】単一試験データ挿入命令のタイミング図である。
【図１３】複数試験データ挿入命令のタイミング図である。
【図１４】ストップ／スタート試験データ挿入命令のタイミング図である。
【図１５】スタート／休止／再開／ストップ・試験データ挿入命令のタイミング図である。
【図１６ａ】動的データサンプル命令のタイミング図である。
【図１６ｂ】動的データサンプル命令のタイミング図である。
【図１６ｃ】動的データサンプル命令のタイミング図である。
【図１６ｄ】動的データサンプル命令のタイミング図である。
【図１７】動的ＰＳＡ命令のタイミング図である。
【図１８】ストップ／スタートＰＳＡ命令のタイミング図である。
【図１９】スタート／休止／再開／ストップＰＳＡ命令のタイミング図である。
【図２０】メモリバッファーを使う本発明の第２の実施例のブロック図である。
【図２１】前記メモリバッファーからデータを出力する回路のブロック図である。
【符号の説明】
【０１８０】
１０  集積回路
１２  入力試験レジスタ
２０  内部論理
２２  出力試験レジスタ
３０  事象認定モジュール（ＥＱＭ）
６４  メモリ・バッファ
【図１】
2008170444.tif 000003
【図２】
2008170444.tif 000004
【図３】
2008170444.tif 000005
【図４】
2008170444.tif 000006
【図５】
2008170444.tif 000007
【図６】
2008170444.tif 000008
【図７】
2008170444.tif 000009
【図８】
2008170444.tif 000010
【図９】
2008170444.tif 000011
【図１０】
2008170444.tif 000012
【図１１ａ】
2008170444.tif 000013
【図１１ｂ】
2008170444.tif 000014
【図１１ｃ】
2008170444.tif 000015
【図１１ｄ】
2008170444.tif 000016
【図１１ｅ】
2008170444.tif 000017
【図１２】
2008170444.tif 000018
【図１３】
2008170444.tif 000019
【図１４】
2008170444.tif 000020
【図１５】
2008170444.tif 000021
【図１６ａ】
2008170444.tif 000022
【図１６ｂ】
2008170444.tif 000023
【図１６ｃ】
2008170444.tif 000024
【図１６ｄ】
2008170444.tif 000025
【図１７】
2008170444.tif 000026
【図１８】
2008170444.tif 000027
【図１９】
2008170444.tif 000028
【図２０】
2008170444.tif 000029
【図２１】
2008170444.tif 000030