(57)【要約】集積回路（３００）内のＪＴＡＧタップドメイン（１０４）にアクセスするのに最適化されたＪＴＡＧインターフェイスが使用される。インターフェイスは従来のＪＴＡＧインターフェイスよりも少数のピンしか必要としないため、ピンの利用価値が限定される集積回路上の従来のＪＴＡＧインターフェイスよりも応用性が高い。限定はしないが、シリアル通信関連集積回路テスト、エミュレーション、デバッグ、および／またはトレース操作等の多様なシリアル通信操作に対してインターフェイスを使用することができる。
2008538236.tif 000002
【特許請求の範囲】
【請求項１】
集積回路であって、
ＴＤＩ入力端子、ＴＣＫ入力端子、ＴＭＳ入力端子、およびＴＤＯ出力端子を有し、前記ＴＤＯ出力端子は集積回路の外部アクセス可能なデータ入出力ピンに接続されているＩＥＥＥ  １１４９．１タップドメインと、
集積回路の前記外部アクセス可能なデータ入出力ピンに接続されたシリアル入力端子、ＴＤＩ入力端子に接続された第１のパラレル出力端子、およびＴＭＳ入力端子に接続された第２のパラレル出力端子を有するシリアル入力パラレル出力回路と、
を含む集積回路。
【請求項２】
請求項１に記載の集積回路であって、さらに、ＴＣＫ入力端子に接続された出力を有するクロックコントローラを含む集積回路。
【請求項３】
請求項２に記載のクロックコントローラであって、さらに、集積回路内のクロックソースに接続された入力を含むクロックコントローラ。
【請求項４】
請求項２に記載のクロックコントローラであって、さらに、集積回路外部のクロックソースに接続された入力を含むクロックコントローラ。
【請求項５】
集積回路であって、
ＴＤＩ入力端子、ＴＣＫ入力端子、ＴＭＳ入力端子、およびＴＤＯ出力端子を有し、前記ＴＤＯ出力端子は集積回路の外部アクセス可能なデータ出力ピンに接続されているＩＥＥＥ  １１４９．１タップドメインと、
集積回路の外部アクセス可能なデータ入力ピンに接続されたシリアル入力端子、ＴＤＩ入力端子に接続された第１のパラレル出力端子、およびＴＭＳ入力端子に接続された第２のパラレル出力端子を有するシリアル入力パラレル出力回路と、
を含む集積回路。
【請求項６】
請求項５に記載の集積回路であって、さらに、ＴＣＫ入力端子に接続された出力を有するクロックコントローラを含む集積回路。
【請求項７】
請求項６に記載のクロックコントローラであって、さらに、集積回路内のクロックソースに接続された入力を含むクロックコントローラ。
【請求項８】
請求項６に記載のクロックコントローラであって、さらに、集積回路外部のクロックソースに接続された入力を含むクロックコントローラ。
【請求項９】
集積回路内のＩＥＥＥ  １１４９．１タップドメインの操作プロセスであって、
ＴＤＩおよびＴＭＳパターンを集積回路へシリアルに入力するステップと、
シリアル入力ＴＤＩおよびＴＭＳパターンをタップドメインのＴＤＩおよびＴＭＳ入力へパラレルに入力するステップと、
ＴＣＫ入力をタップドメインに加えるステップと、
操作プロセス中にステップＡからＣまでを繰り返すステップと、
を含むプロセス。
【請求項１０】
集積回路であって、
集積回路内の第１の回路へ信号を入力するための入力ピンと、
入力ピンに接続された集積回路内の第２の回路であって、ある信号シーケンスが入力され前記第２の回路により認識された後でしか前記第１の回路への信号の入力をイネーブルしない第２の回路と、
を含む集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般的にＩＣ（集積回路）信号インターフェイスに関し、特に、テスト、エミュレーション、デバッグ、およびトレース操作に関連するＩＣ信号インターフェイスに関連している。
【背景技術】
【０００２】
バウンダリスキャン・アーキテクチュアに対するＩＥＥＥ１１４９．１標準は半導体産業全体にわたって採用されている。それを開発したのがＪｏｉｎｔ  Ｔｅｓｔ  Ａｃｔｉｏｎ  Ｇｒｏｕｐであるため、それはしばしば「ＪＴＡＧ」標準と呼ばれる。従来の４／５ピンＪＴＡＧインターフェイスは次のようなコネクタピンを有する、ＴＤＩ（Ｔｅｓｔ  Ｄａｔａ  Ｉｎ）；ＴＤＯ（Ｔｅｓｔ  Ｄａｔａ  Ｏｕｔ）；ＴＣＫ（Ｔｅｓｔ  Ｃｌｏｃｋ）；ＴＭＳ（Ｔｅｓｔ  Ｍｏｄｅ  Ｓｅｌｅｃｔ）；およびオプションとしてＴＲＳＴ（Ｔｅｓｔ  Ｒｅｓｅｔ）。
【０００３】
図１は外部ＪＴＡＧコントローラ１００およびターゲットＩＣ１０２内のタップドメイン１０４間の従来の５線ＪＴＡＧインターフェイス１０６である。当今のＩＣは、典型的に、ＩＣのＪＴＡＧバウンダリ・スキャンテストに関連するタップドメインおよび／または各々がＩＣ内に設計された１つ以上のコア回路に関連する１つ以上のタップドメインを有する。インターフェイスはＪＴＡＧコントローラのＴＤＯ出力をＩＣのＴＤＩピン入力に接続し、ＪＴＡＧコントローラのＴＭＳ出力をＩＣのＴＭＳピン入力に接続し、ＪＴＡＧコントローラのＴＣＫ出力をＩＣのＴＣＫピン入力に接続し、ＪＴＡＧコントローラのＴＤＩ入力をＩＣのＴＤＯピン出力に接続し、ＪＴＡＧコントローラのＴＲＳＴ出力をＩＣのＴＲＳＴピン入力に接続する。ＩＣのＴＤＩ，ＴＤＯ，ＴＭＳ，およびＴＲＳＴピン１０８はＪＴＡＧコントローラへのインターフェイス専用とされ機能的に使用することはできない。
【０００４】
ＴＭＳおよびＴＣＫ信号に応答して、ＩＣ１０２のタップドメイン１０４はＴＤＯからＴＤＩ接続を介してＪＴＡＧコントローラとデータを通信する。ＪＴＡＧコントローラのＴＲＳＴ出力上のロー出力によりＩＣ１０２のタップドメインはリセット状態に入る。ＪＴＡＧコントローラはクロックソース１１０からクロック入力（ＣＫＩＮ）を受信する。ＣＫＩＮ入力はＪＴＡＧコントローラの操作のタイミングをとり、次に、それはＩＣ１０２内のタップドメインの操作のタイミングをとる。ＪＴＡＧコントローラは５線インターフェイスを介して埋込タップドメインにアクセスすることによりターゲットＩＣ内の操作のテスト、エミュレーション、デバッグおよびトレース操作を行う。ＪＴＡＧコントローラおよびターゲットＩＣ間の構成およびテスト、エミュレーション、デバッグおよびトレース操作を行う際のその使用方法は産業において既知である。
【０００５】
図２はＪＴＡＧコントローラ２００がＪＴＡＧバス１０８およびデバッグ／トレースバス２０４を介してターゲットＩＣ２０２とインターフェイスされる代替構成を示す。ＪＴＡＧコントローラ２００はＩＣのデバッグ／トレース回路２０４とインターフェイスするための付加回路および入出力を含む点において図１のＪＴＡＧコントローラとは違っている。図１と同様に、ＪＴＡＧバス１０８はＩＣピン１０８を介してＩＣ内のタップドメイン１０４に接続されている。デバッグ／トレースバス２０４はＮＩＣピン２０８を介してＩＣ内のデバッグ／トレース回路２０６に接続されている。ＪＴＡＧバスはデバッグ／トレース回路がデバッグおよび／またはトレース操作をできるようにするコマンドおよびデータを入力するのに使用される。デバッグ／トレースバス信号は、限定はしないが、（１）デバッグおよび／またはトレース操作中にＪＴＡＧコントローラ２００およびデバッグ／トレース回路２０６間でデータをインポートおよび／またはエクスポートする、（２）ＪＴＡＧコントローラ２００およびデバッグ／トレース回路２０６間で通信バスとして動作する、および（３）デバッグおよびトレース操作中にＪＴＡＧコントローラ２００およびデバッグ／トレース回路２０６間でトリガ信号を入力および／または出力する、ことを含む非常に多くの操作に使用することができる。
【０００６】
デバッグ／トレースバス２０４の一つの重要な利点はデバッグ／トレース操作中のＪＴＡＧコントローラおよびターゲットＩＣ間のデータ入出力帯域幅を５線ＪＴＡＧバス１０６しか使用しない場合に可能なものよりも増加することである。たとえば、ＪＴＡＧバスのデータ入出力帯域幅は単一のＴＤＯからＴＤＩ信号線接続を介してＪＴＡＧコントローラおよびＩＣ間を流れることができるデータ量に制限される。デバッグ／トレースバスはＪＴＡＧコントローラおよびＩＣ（Ｎ）間にＮ信号線接続を有することができるため、そのデータ帯域幅はＪＴＡＧバス帯域幅よりも遥かに大きくなることがある。ＪＴＡＧコントローラおよびＩＣ間の帯域幅が増加すると、（１）リアルタイムコード実行のモニタリング、（２）埋込メモリのアクセッシング、（３）プログラムデバッグ中のコードのアップローディング／ダウンローディング、および（４）トリガされた出力トレース機能等のデバッグ／トレース操作が促進される。
【０００７】
携帯電話機およびパーソナルデジタルアシスタント等のモバイル応用において使用されるより小さいアセンブリ上により多くのＩＣを配置できるより小型のＩＣパッケージングへと向かう現在の傾向により、ＩＣピンの数は減少されている。したがって、より多くのＩＣピンを機能的目的のために利用できるため、テスト、エミュレーション、デバッグおよびトレース操作用のピン数を減少したインターフェイスをＩＣ上に提供することが本開示の利点である。図１および２のＪＴＡＧおよびデバッグ／トレースバスの両方のピン数を減少させることが有利ではあるが、本出願はＩＣのＪＴＡＧバスピンの減少に集中している。
【０００８】
ＩＣのＪＴＡＧバスピンを減少する他に、本開示の第２の利点は減少されたＪＴＡＧピンを介して高い通信帯域幅を維持することである。本開示はＪＴＡＧピンのフルセットを使用するデータ通信帯域幅の半分に等しい減少されたＪＴＡＧピンを使用するデータ通信帯域幅を提供する。たとえば、ＪＴＡＧコントローラ１００が全ＪＴＡＧバス１０６を使用して１００ＭＨｚで図１のタップドメイン１０４とデータをやりとりできれば、本発明に従って適合されたＪＴＡＧコントローラは、やはり本発明に従って５０ＭＨｚで適合された、ＩＣのタップドメイン１０４とデータをやりとりすることができる。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
ここで参照される１つの従来技術はＪ−リンクシステムと呼ばれる。Ｊ−リンクシステムはＩＣのＪＴＡＧピンを標準５ピンから１または２ピンの減少されたセットへ減少させる方法を提供する。Ｊ−リンク参照に示されているチャートを見ると、Ｊ−リンクインターフェイスは従来のＪＴＡＧ５ピンインターフェイスの１／６のデータ通信帯域幅を提供することが判る。たとえば、Ｊ−リンク参照で述べられているように、標準５ピンＪＴＡＧインターフェイスが４８ＭＨｚで動作できれば、Ｊ−リンクインターフェイスは４８ＭＨｚ周波数の１／６、すなわち、８ＭＨｚで動作する。比較のためここに示すように、標準５ピンＪＴＡＧインターフェイスが４８ＭＨｚで動作できれば、本開示の減少ピン方法４８ＭＨｚ周波数の半分の２４ＭＨｚで動作することができる。本開示は参照Ｊ−リンク方法よりも動作周波数を３倍改善する。したがって、本開示は参照Ｊ−リンク方法の３倍の帯域幅でＩＣテスト、デバッグ、エミュレーション、およびトレースに関連する操作を実施することができる。
【課題を解決するための手段】
【００１０】
本開示はＪＴＡＧコントローラおよびターゲットＩＣ間のＪＴＡＧベーステスト、エミュレーション、デバッグ、およびトレーストランザクションに対する減少ピンインターフェイスを提供する。
【実施例】
【００１１】
（実施例の詳細な説明）
図３はＩＣ３００上のＪＴＡＧピン数とＩＣ３００およびＪＴＡＧコントローラ１００間のＪＴＡＧバス信号接続数を減らすための本開示の方法を示す。本開示に示すＩＣ３００等は、限定はしないが、マイクロコントローラＩＣ、マイクロプロセッサＩＣ、デジタル信号プロセッサＩＣ、混合信号ＩＣ、ＦＰＧＡ／ＣＰＬＤＩＣ、ＡＳＩＣ、システム・オン・チップＩＣ、周辺ＩＣ、ＲＯＭメモリＩＣ、またはＲＡＭメモリＩＣを含む任意タイプの集積回路を表すことができる。図３において、ＪＴＡＧコントローラ１００はＴＤＯ，ＴＭＳ，ＣＫＩＮ，ＴＤＩ，およびＴＲＳＴ信号を介してパラレル・ツー・シリアルコントローラ（ＰＳＣ）にインターフェイスされる。ＰＳＣ３０２はＪＴＡＧコントローラ１００とは別個の回路であり、あるいはＰＳＣ３０２とＪＴＡＧコントローラ１００を統合して新しいＪＴＡＧコントローラ３０４を形成することができる。ＰＳＣ３０２はデータＩ／Ｏ（ＤＩＯ）信号３０８およびクロック（ＣＬＫ）信号３１０を含むバスを介してＩＣ３００内のシリアル・ツー・パラレルコントローラ（ＳＰＣ）回路３０６にインターフェイスされる。ＳＰＣ３０６はＴＤＩ，ＴＭＳ，ＴＣＫ，ＴＤＯ，およびＴＲＳＴ信号を介してＩＣ３００内のタップドメイン１０４にインターフェイスされる。図１６−２０について後述するように、ＣＬＫ信号３１０はＪＴＡＧコントローラ１００に関連するクロックソース、ＩＣ３００に関連するクロックソース、またはＪＴＡＧコントローラ１００またはＩＣ３００に関連するクロックソースにより駆動することができる。
【００１２】
図４ＡはＩＣ３００のタップドメインブロック１０４が単一のＩＥＥＥ１１４９．１タップから成ることを示している。
【００１３】
図４ＢはＩＣ３００のタップドメインブロック１０４が一連のデイジーチェーン・タップアーキテクチュア１−Ｎから成ることを示している。
【００１４】
図４ＣはＩＣ３００のタップドメインブロック１０４が個別に選択されたりリンキング回路４００を使用してさまざまなデイジーチェーン構成に一緒にシリアルにリンクされる一群のタップアーキテクチュア１−Ｎから成ることを示している。このようなリンキング回路４００の例は参照した米国特許第６，０７３，２５４号に記述されている。
【００１５】
図５ＡはＰＳＣ回路３０２をより詳細に示す。ＰＳＣはコントローラ５００、パラレル入力シリアル出力（ＰＩＳＯ）レジスタ５０２、および入出力（Ｉ／Ｏ）回路５０４を含んでいる。ＰＩＳＯ５０２はＪＴＡＧコントローラ１００からのパラレルＴＭＳおよびＴＤＯ信号、ＪＴＡＧコントローラ１００からのＴＲＳＴ信号、コントローラ５００からのロード（ＬＤ）信号を入力し、シリアル出力（ＯＵＴ）信号をＩ／Ｏ回路５０４に出力する。
【００１６】
ＰＩＳＯ５０２の単純化された表示はそれが２つのシリアル接続されたＦＦ５０３および５０５を含むことを示している。ＪＴＡＧコントローラからのＴＲＳＴ信号がローである間に、ＦＦ５０３および５０５は非同期的に論理１に設定されＣＬＫまたはＬＤ入力に応答しない。これは、たとえば、ＴＲＳＴ信号をＦＦ５０３および５０５のＳｅｔ入力に接続して達成することができる。したがって、ＴＲＳＴがローである間ＯＵＴ信号はハイである。ＴＲＳＴがハイとなると、ＦＦ５０３および５０５はＣＬＫおよびＬＤ入力に応答できるようにされる。ＬＤ入力に応答して、ＦＦ５０３および５０５はＪＴＡＧコントローラからのＴＭＳおよびＴＤＯ出力を、それぞれ、非同期的にロードする。ロードされると、ＦＦはＣＬＫ３１０によりシフトされ、ＯＵＴ信号を介してＩ／Ｏ回路５０４にＴＭＳ信号を、次に、ＴＤＯ信号を出力する。
【００１７】
コントローラ５００はＣＬＫ信号３１０、ＪＴＡＧコントローラ１００からのＴＲＳＴ信号を入力する。コントローラ５００はＰＩＳＯへの非同期ＬＤ信号およびＪＴＡＧコントローラ１００のＣＫＩＮ入力へのクロック信号を出力する。ＴＲＳＴがローである間、コントローラはリセットされＣＬＫ入力に応答しない。リセットされる間、コントローラからのＬＤおよびＣＫＩＮ出力はローである。ＴＲＳＴがハイとなると、コントローラはＣＬＫ入力に応答してＬＤおよびＣＫＩＮ出力信号を出力できるようにされる。
【００１８】
Ｉ／Ｏ回路５０４はＰＩＳＯからのＯＵＴ信号を入力してそれらをＤＩＯ３０８上に出力する。また、Ｉ／Ｏ回路５０４はＤＩＯ３０８からの信号を入力してそれらをＪＴＡＧコントローラ１００のＴＤＩ入力に出力する。Ｉ／Ｏ回路５０４はＤＩＯ３０８へのＯＵＴ信号の出力およびＤＩＯ３０８からのＴＤＩ信号の入力が同時に生じられるように設計される。Ｉ／Ｏ回路５０４の同時入力および出力操作については図１１Ａ，１１Ｂ，１２，１３Ａ，および１３Ｂについて詳細に後述する。
【００１９】
ＰＳＣ３０２の動作（ＴＲＳＴがハイである間）は図５Ｂのタイミング図に例示されている。ＣＬＫ入力３１０に応答して、コントローラ５００は周期的にＬＤ信号をＰＩＳＯ５０２に出力しＣＫＩＮ信号をＪＴＡＧコントローラ１００に出力するように動作する。また、ＣＬＫ入力３１０はＰＩＳＯ５０２のタイミングをとってそのＯＵＴ出力からのデータをＩ／Ｏ回路５０４にシフトする。Ｉ／Ｏ回路はＯＵＴ信号をＤＩＯ３０８信号に通す。ＣＫＩＮ信号はＪＴＡＧコントローラ１００の動作のタイミングをとる。ＬＤ信号によりＰＩＳＯはＪＴＡＧコントローラ１００からのＴＭＳおよびＴＤＯ信号パターンを非同期的にロードする。ロードされると、ＴＭＳおよびＴＤＯパターンはＣＬＫ信号に応答してＰＩＳＯからＩ／Ｏ回路にシフトアウトされる。
【００２０】
以下に、ＰＳＣの繰返しロードおよびシフトアウト・シーケンスについて記述する。ＴＭＳおよびＴＤＯパターン５１０はＬＤ信号５１２に応答して非同期的にＰＩＳＯ内にロードされる。ＣＬＫ信号５１４がＰＩＳＯのＯＵＴ出力上のパターン５１０のＴＭＳ信号部をシフトアウトし、次に、ＣＬＫ信号５１６がＰＩＳＯのＯＵＴ出力上のパターン５１０のＴＤＯ信号部をシフトアウトする。ＣＫＩＮ信号５１８はＪＴＡＧコントローラが次のＴＭＳおよびＴＤＯパターン５２０を出力するよう推進する。ＬＤ信号５２２が次のＴＭＳおよびＴＤＯパターン５２０をＰＩＳＯ内に非同期的にロードする。ＣＬＫ信号５２４がＰＩＳＯのＯＵＴ出力上のパターン５２０のＴＭＳ信号部をシフトアウトし、次に、ＣＬＫ信号５２６がＰＩＳＯのＯＵＴ出力上のパターン５２０のＴＤＯ信号部をシフトアウトする。ＣＫＩＮ信号５２８はＪＴＡＧコントローラが次のＴＭＳおよびＴＤＯパターン５３０を出力するよう推進し、次のＴＭＳおよびＴＤＯパターン５３０はＬＤ信号５３２によりＰＩＳＯ内に非同期的にロードされＣＬＫ信号５３４および５３６によりシフトアウトされる。ＪＴＡＧコントローラはＣＫＩＮ５３８中に次のＴＭＳおよびＴＤＯパターン５４０を出力するよう推進される。上記したパターンロード、パターンシフト、およびＪＴＡＧコントローラ推進プロセスはＣＬＫ入力３１０がアクティブである限り繰り返される。
【００２１】
ＪＴＡＧコントローラ１００はＣＫＩＮ入力を受信すると、新しいＴＭＳおよびＴＤＯ信号パターンをＰＩＳＯ５０２に出力しＩ／Ｏ回路５０４からＴＤＩ信号を入力する。ＴＭＳ信号出力は図１０に従ってターゲットＩＣのタップドメイン１０４のタップ状態機械を制御し、ＴＤＯ信号はターゲットＩＣのタップドメインにＴＤＩ入力信号を与え（Ｓｈｉｆｔ−ＤＲ／ＩＲ状態であれば）、ＴＤＩ入力信号はターゲットＩＣのタップドメインからＪＴＡＧコントローラに信号を入力する（Ｓｈｉｆｔ−ＤＲ／ＩＲ状態であれば）。
【００２２】
図６Ａはコントローラ５００の実装例を示す。コントローラ５００はＦＦ６００，ＦＦ６０２，ＡＮＤゲート６０４−６０８，および遅延インバータ６１０からなっている。ＪＴＡＧコントローラ１００からのＴＲＳＴ入力がローである間、ＦＦ６００および６０２はリセットされＬＤおよびＣＫＩＮ出力はローである。ＴＲＳＴがハイとなると、ＦＦ６００および６０２はＣＬＫ入力３１０に応答できるようにされる。ＦＦ６００はＣＬＫ入力３１０の各立上りエッジ中にそのロードイネーブル（ＬＤＥＮＡ）出力を切り換える。ＦＦ６０２はそのクロックイネーブル（ＣＫＥＮＡ）出力におけるＦＦ６００のＬＤＥＮＡ出力をＣＬＫ入力３１０の各立下りエッジで格納する。ＬＤＥＮＡがハイでＣＬＫがローである時にＡＮＤゲート６０４はハイを出力する。ＡＮＤゲート６０６および遅延インバータ６２０は一緒に動作して、ＡＮＤゲート６０４の出力がハイとなる時は常に、ハイとなるパルスをＬＤ出力上に作り出す。
【００２３】
ＬＤ信号上のハイとなるパルスの持続時間は遅延インバータ６１０の入力から出力への信号遅延により決定される。ＬＤパルスの持続時間はＰＩＳＯにＴＭＳおよびＴＤＯパターンを非同期的にロードするのに十分長くなければならないが、ＰＩＳＯのシフト操作と干渉するほど長くてはならない。たとえば、ハイとなるＬＤパルスはシフト操作と干渉しないようにシフトするＣＬＫ入力の次の立上りエッジの前に十分な量の時間にローへ戻らなければならない。ＦＦ６０２のＣＫＥＮＡ出力によりＡＮＤゲート６０８はＣＫＩＮ出力にＣＬＫ信号３１０を通すことができるようにされる。ＣＫＥＮＡはＣＬＫ３１０の立下がりエッジで状態を変えてＣＬＫ３１０の立上りエッジの前にＡＮＤゲート６０８をイネーブル（使用可能）できるようにして、ＣＫＩＮ出力における良好なクロックゲート操作を見込む。
【００２４】
コントローラ５００の動作が図６Ｂのタイミング図に例示されている。ＣＬＫ入力３１０に応答して、コントローラ５００はＬＤおよびＣＫＩＮ信号を周期的に出力するように動作する。上記したように、ＣＫＩＮ信号はＪＴＡＧコントローラ１００の動作のタイミングをとり、ＬＤ信号によりＰＩＳＯはＪＴＡＧコントローラ１００からのＴＭＳおよびＴＤＯパターンを非同期的にロードする。ＣＬＫ３１０の各立上りエッジでＦＦ６００のＬＤＥＮＡ出力はその状態を切り換える。ＣＬＫ３１０の各立下りエッジでＦＦ６０２のＣＫＥＮＡ出力はＦＦ６０２へのＬＤＥＮＡ入力の状態に設定される。ＬＤパルス出力はＬＤＥＮＡがハイでＣＬＫがローとなる度に生じる。ＣＫＩＮ出力はＣＫＥＮＡがハイでＣＬＫがハイとなる度に生じる。
【００２５】
図７ＡはＳＰＣ回路３０６をより詳細に示す。ＰＳＣはコントローラ７００、シリアル入力パラレル出力（ＳＩＰＯ）レジスタ７０２、更新レジスタ７０４、タップ状態機械（ＴＳＭ）７０６、マスターリセット・シンクロナイザ（ＭＲＳ）回路７０８、入出力（Ｉ／Ｏ）回路７１０、およびパワーオン・リセット回路（ＰＯＲ）７１２からなっている。
【００２６】
ＰＯＲ回路７１２はターゲットＩＣが最初にパワーアップする度に一時的ローアクティブ・パワーオン・リセットパルスを作り出す。このパワーオン・リセットパルスはＭＲＳ回路を初期化するのに使用される。初期化されると、ＭＲＳ回路７０８はマスターリセット（ＭＲＳＴ）信号上にローを出力してＳＰＣ３０６内の他の回路を初期化し、接続されたタップドメイン１０４のＴＲＳＴ入力をローに設定する。ＴＲＳＴがローになると、タップドメイン１０４はＴｅｓｔ  Ｌｏｇｉｃ  Ｒｅｓｅｔ状態に強制される。Ｔｅｓｔ  Ｌｏｇｉｃ  Ｒｅｓｅｔ状態はＩＥＥＥ１１４９．１タップ状態機械の状態であり、図１０のタップ状態機械図に示されている。ＰＯＲ回路７１２は図示するようにＳＰＣ３０６内に存在することができ、あるいは、ＳＰＣの外部、すなわちターゲットＩＣ内の別個の回路として存在することができる。ＭＲＳ回路７０８を初期化するＰＯＲ回路の機能は他の手段で達成することができる。たとえば、ＩＣのリセットピンをＰＯＲ回路７１２の代りに使用してＭＲＳ回路７０８を初期化することができる。
【００２７】
コントローラ７００はＣＬＫ信号３１０、ＭＲＳ７０８からのコントローラ・イネーブル（ＣＥＮＡ）信号、ＴＳＭ７０６からのリセット（ＲＳＴ）信号を入力する。コントローラは更新クロック（ＵＣＫ）を更新レジスタ７０４に出力し、ＴＣＫ信号をタップドメイン１０４およびＴＳＭ７０６に出力する。コントローラ７００の詳細な説明は図８Ａおよび８Ｂにおいてなされる。
【００２８】
Ｉ／Ｏ回路７１０はＴＳＭ７０６からの出力イネーブル（ＯＥ）信号を入力する。ＯＥ信号はＩ／Ｏ回路７１０の出力ドライブをイネーブルまたはディセーブルするのに使用される。Ｉ／Ｏ回路７１０はＤＩＯ３０８からの信号を入力し、それらをＩＮ信号を介してＳＩＰＯ７０２に出力する。ＯＥがＩ／Ｏ回路７１０の出力ドライブをイネーブルするように設定されると、タップドメイン１０４からのＴＤＯ信号がＤＩＯ上に出力される。ＯＥがＩ／Ｏ回路７１０の出力ドライブをディセーブルするように設定されると、ＴＤＯ信号はＤＩＯ上に出力されずＩ／Ｏ回路はＩＮ信号を介してＳＩＰＯ７０２にＤＩＯ信号を入力ようにしか動作しない。ＯＥによりイネーブルされると、Ｉ／Ｏ回路５０４はＤＩＯ３０８へのＴＤＯ信号の出力を許し、ＤＩＯ３０８からのＩＮ信号の入力が同時に生じるように設計される。Ｉ／Ｏ回路７１０の同時入力および出力操作は図１１Ａ，１１Ｂ，１２，１３Ａ，および１３Ｂに関して詳細に後述する。
【００２９】
ＳＩＰＯ７０２はＣＬＫ入力３１０に応答してＩ／Ｏ回路７１０のＩＮ出力からのシリアル化されたＴＭＳおよびＴＤＯ信号パターンを入力し、それらを更新レジスタに出力する。更新レジスタ７０４はＳＩＰＯからのＴＤＯおよびＴＭＳ出力を入力し、それらをＴＤＩおよびＴＭＳ信号としてタップドメイン１０４に出力する。更新レジスタはＭＲＳ回路７０８からのＭＲＳＴ信号も入力する。ＭＲＳＴ信号がアクティブローである間に、更新レジスタ７０４のＴＤＯおよびＴＭＳ出力はハイに設定される。ＭＲＳＴ信号が非アクティブハイである間に、更新レジスタはコントローラ７００からの更新クロック（ＵＣＫ）信号に応答してＳＩＰＯ７０２からのＴＤＯおよびＴＭＳ信号をロードすることができる。
【００３０】
ＳＩＰＯ７０２および更新レジスタ７０４のより詳細な図面はＳＩＰＯが２つのシリアル接続されたＦＦ７０３および７０５を含むことを示している。ＣＬＫ信号３１０に応答して、ＦＦ７０３および７０５はＩ／Ｏ回路７１０のＩＮ出力からのシリアル化されたＴＭＳおよびＴＤＯ信号をシフトインする。ＴＭＳおよびＴＤＯ信号はシフトインされると、ＵＣＫ信号に応答して更新レジスタ７０４内のＦＦ７０７および７０９に並列に転送され、そこでタップドメイン１０４のＴＤＩおよびＴＭＳ入力に入力される。ＳＩＰＯがタップドメイン１０４に入力される次のＴＤＯおよびＴＭＳパターンをシリアルに入力するように動作する間に、更新レジスタは現在のＴＤＩおよびＴＭＳ入力パターンをタップドメイン１０４に提供するように働く。上記したように、ＦＦ７０７および７０９の出力はＭＲＳ信号上のローに応答して非同期的にハイに強制され、その結果、タップドメイン１０４のＴＤＩおよびＴＭＳ入力にハイが入力される。これは、たとえば、ＭＲＳ信号をＦＦ７０７および７０９のＳｅｔ入力に接続して達成することができる。
【００３１】
ＴＳＭ回路７０６は更新レジスタからのＴＭＳ出力、コントローラ７００のＴＣＫ出力、およびＭＲＳ回路７０８からのＭＲＳＴ出力を入力する。ＴＳＭ回路７０６はリセット（ＲＳＴ）信号をコントローラ７００およびＭＲＳ回路７０８に出力し、ＯＥ信号をＩ／Ｏ回路７１０に出力する。ＴＳＭはＩＥＥＥ標準１１４９．１に明記されたタップ状態機械にすぎない。ＭＲＳ回路７０８からのＭＲＳＴ入力はＩＥＥＥ１１４９．１ＴＳＭの標準「ＴＲＳＴ」入力に接続され、コントローラ７００からのＴＣＫ入力はＩＥＥＥ１１４９．１ＴＳＭの標準「ＴＣＫ」入力に接続され、コントローラ７００からのＴＭＳ入力はＩＥＥＥ１１４９．１ＴＳＭの標準「ＴＭＳ」入力に接続され、ＴＳＭからのＲＳＴ出力はＩＥＥＥ１１４９．１ＴＳＭの標準「Ｒｅｓｅｔ＊」出力に接続され、ＴＳＭのＯＥ出力はＩＥＥＥ１１４９．１ＴＳＭの標準「Ｅｎａｂｌｅ」出力に接続されている。
【００３２】
ＴＳＭ回路は本開示においてＳＰＣが接続されたタップドメインのタップ状態、特にＯＥおよびＲＳＴ出力を制御する状態を追跡できるようにするのに使用される。ＩＥＥＥ１１４９．１タップ状態機械の動作は図１０に示す１６状態に明記されている。ＳＰＣ３０６内に専用ＴＳＭ回路７０６を実装する代りに、接続されたタップドメイン１０４のタップ状態機械からの信号を追跡のために実際に使用することができるが、必要な信号（ＯＥおよびＲＳＴ）を必ずしもタップドメイン１０４から入手できないことがある。たとえば、ハードコア（（すなわち、固定され修正できないコア）の接続されたタップドメイン１０４はＳＰＣのＯＥおよびＲＳＴ端子に接続するＯＥおよびＲＳＴ出力信号端子を提供できないことがある。さらに、図４Ｃに示すようなリンキング構成を有するタップドメイン１０４はＳＰＣ３０６とタップドメイン１０４との内のリンクされたタップ間のＯＥおよびＲＳＴ信号交換計算量を提示することがある。したがって、ＳＰＣ３０６は好ましくは接続されたタップドメイン１０４の状態追跡の単純性を保証するＴＳＭ回路７０６を含んでいる。
【００３３】
ＭＲＳ回路７０８はＩ／Ｏ回路７１０のＩＮ出力、ＣＬＫ信号３１０、ＴＳＭ７０６からのＲＳＴ信号、およびＰＯＲ回路７１２のパワーオン・リセット出力を入力する。ＭＲＳ回路７０８はＭＲＳＴ信号をタップドメイン１０４、ＴＳＭ７０６、および更新レジスタ７０４に出力し、ＣＥＮＡ信号をコントローラ７００に出力する。ＭＲＳ回路７０８の目的は、（１）どのＪＴＡＧコントローラ１００もＰＳＣ３０２もＳＰＣのＤＩＯ３０８信号に接続されないシステム内でターゲットＩＣが正常に動作している時にＳＰＣおよび接続されたタップドメイン１０４をリセット状態に維持する、（２）ＪＴＡＧコントローラおよびＰＳＣがＳＰＣのＤＩＯおよびＣＬＫ信号に接続されている時にＳＰＣ３０６の動作をＪＴＡＧコントローラ１００およびＰＳＣ３０２の動作に同期化させるのを許すことである。ＳＰＣの動作をＪＴＡＧコントローラおよびＰＳＣの動作に同期化させることは、ＰＳＣから出力されたシリアル化されたＴＭＳおよびＴＤＯパターンがシリアル化されたＴＭＳおよびＴＤＯパターンとして正しくＳＰＣに入力されることを許すため重要である。ＭＲＳ回路７０８の詳細な説明は図９Ａ−９Ｃについてなされる。
【００３４】
ＳＰＣ３０６の動作は図７Ｂのタイミング図に例示されている。ＣＬＫ入力３１０に応答して、コントローラ７００はＵＣＫ信号を更新レジスタ７０４にまたＴＣＫ信号をタップドメイン１０４およびＴＳＭ７０６に周期的に出力するように動作する。また、ＣＬＫ入力３１０はＩ／Ｏ回路７１０のＩＮ入力からのデータをシフトインするようにＳＩＰＯ７０２のタイミングをとる。Ｉ／Ｏ回路はＤＩＯ入力信号をＩＮ出力へ通す。ＴＣＫ信号はタップドメイン１０４の動作のタイミングをとる。ＵＣＫ信号により更新レジスタ７０４はＳＩＰＯ７０２のパラレルＴＤＯおよびＴＭＳ信号パターン出力をロードする。ロードされると、ＴＤＯおよびＴＭＳ信号パターンはタップドメイン１０４のＴＤＩおよびＴＭＳ入力に加えられる。タップドメイン１０４はＴＣＫに応答してＴＤＩおよびＴＭＳ信号パターンに応答する。
【００３５】
以下に、ＳＰＣの繰返しシフトインおよび更新シーケンスについて記述する。ＣＬＫ信号７２０および７２２に応答してシリアルＴＭＳおよびＴＤＯビットストリーム７１８がＳＩＰＯ７０２内にシフトインされる。シフトインされたＴＭＳおよびＴＤＯ信号はＳＩＰＯ７０２からのパラレルＴＤＯおよびＴＭＳ出力パターン７２４を形成し、それはＵＣＫ信号７２６に応答して更新レジスタ７０４にクロックインされる。更新レジスタ７０４内のＴＤＯおよびＴＭＳパターン７２４はタップドメイン１０４のＴＤＩおよびＴＭＳ入力に加えられる。ＴＣＫ信号７２８が更新レジスタ７０４からのＴＤＩおよびＴＭＳパターン７２４に応答するようにタップドメイン１０４にクロックされる。ＣＬＫ信号７３２および７３４に応答して次のシリアルＴＭＳおよびＴＤＯビットストリーム７３０がＳＩＰＯ７０２にシフトインされる。シフトインされたＴＭＳおよびＴＤＯ信号はＳＩＰＯ７０２からのパラレルＴＤＯおよびＴＭＳ出力パターン７３６を形成し、それはＵＣＫ信号７３８に応答して更新レジスタ７０４にクロックインされる。更新レジスタ７０４内のＴＤＯおよびＴＭＳパターン７３８はタップドメイン１０４のＴＤＩおよびＴＭＳ入力に加えられる。ＴＣＫ信号７４０は更新レジスタ７０４からのＴＤＩおよびＴＭＳパターン７３０に応答するようにタップドメイン１０４にクロックされる。上記したシリアルパターン・シフトイン、パラレルパターン更新、およびタップドメインクロック操作はＣＬＫ入力３１０がアクティブである限り繰り返される。
【００３６】
タップドメイン１０４がＴＣＫ入力を受信すると、図１０に示すように、タップドメインのタップ状態機械はＴＭＳ入力に応答して状態遷移を行う。また、タップ状態機械が図１０のＳｈｉｆｔ−ＤＲ／ＩＲ状態であれば、タップドメイン１０４はＴＣＫ入力に応答してそのＴＤＩ入力からデータを入力し、そのＴＤＯ出力にデータを出力する。
【００３７】
図８Ａはコントローラ７００の実装例を示す。コントローラ７００はＦＦ８００，ＦＦ８０２，ＡＮＤゲート８０４および８０６，およびＯＲゲート８０８からなっている。ＦＦ８００はＣＬＫ３１０の各立上りエッジ中にその更新イネーブル（ＵＰＥＮＡ）出力を切り換える。ＦＦ８０２はＣＬＫ３１０の各立下りエッジでＦＦ８００のＵＰＥＮＡ出力をそのクロックイネーブル（ＣＫＥＮＡ）出力において格納する。ＡＮＤゲート８０４はＵＰＥＮＡがハイで、ＣＬＫがローで、ＯＲゲート８０８のコントローラリセット（ＣＲＳＴ）出力がハイである時にそのＵＣＫ出力上にハイを出力する。ＣＫＥＮＡおよびＣＲＳＴがハイである時は常にＡＮＤゲート８０６がゲートオンされてそのＣＬＫ３１０入力をそのＴＣＫ出力に通し、そうでなければＴＣＫ出力は強制的にローとされる。ＣＳ回路７０８からのＣＥＮＡ入力がハイで、さらに／またはＴＳＭ７０６からのＲＳＴ入力がハイであれば常にＯＲゲート８０８はＣＲＳＴ上にハイを出力し、そうでなければＣＲＳＴはローを出力する。ＣＫＥＮＡはＣＬＫ３１０の立下りエッジで状態を変え、ＡＮＤゲート８０６がＣＬＫ３１０の立上りエッジの前にイネーブルされてＴＣＫ出力における良好なクロックゲーティング操作を見込めるようにする。
【００３８】
コントローラ７００の動作が図８Ｂのタイミング図に例示されている。ＯＲゲート８０８のＣＲＳＴ出力がハイである間に、コントローラ７００はＣＬＫ入力３１０に応答してＵＣＫおよびＴＣＫ信号を周期的に出力するように動作する。上記したように、ＴＣＫ信号はタップドメイン１０４の動作のタイミングをとり、ＵＣＫ信号により更新レジスタはＳＩＰＯ７０２からのパラレルＴＤＯおよびＴＭＳパターンをロードする。ＣＬＫ３１０の各立上りエッジでＦＦ８００の更新イネーブル（ＵＰＥＮＡ）出力はその状態を切り換える。ＣＬＫ３１０の各立下りエッジでＦＦ８０２のＣＫＥＮＡ出力はＦＦ８０２へのＵＰＥＮＡ入力の状態に設定される。ＬＤＥＮＡがハイでＣＬＫがローとなる度にＵＣＫ出力が生じる。ＣＫＥＮＡがハイでＣＬＫがハイとなる度にＣＫＩＮ出力が生じる。ＣＥＮＡおよびＲＳＴが共にローであれば、ＯＲゲート８０８のＣＲＳＴ出力はローとなってコントローラ７００をリセットする。ＣＲＳＴがローである間に、ＦＦ８００のＵＰＥＮＡ出力はハイに設定され、ＦＦ８０２のＣＫＥＮＡ出力はローに設定され、ＡＮＤゲート８０４のＵＣＫ出力はローに設定され、ＡＮＤゲート８０６のＴＣＫ出力はローに設定される。
【００３９】
図９ＡはＭＲＳ回路７０８の実装例を示す。ＭＲＳ回路７０８は状態機械９００およびＦＦ９０２からなっている。状態機械９００はＣＬＫ３１０の立上りエッジで作動しＦＦ９０２はＣＬＫ３１０の立下りエッジで作動する。状態機械９００はＩ／Ｏ回路７１０からのＩＮ信号、ＴＳＭ７０６からのＲＳＴ信号、ＣＬＫ３１０からのクロック信号、およびＰＯＲ７１２からのパワーオン・リセット信号を入力する。状態機械９００は上記したＭＲＳＴ信号およびコントローラ・イネーブル（ＣＥ）信号を出力する。ＣＥ信号はＦＦ９０２のＤ入力に接続される。ＦＦ９０２のＱ出力は上記したＣＥＮＡ信号を駆動する。ＦＦ９０２のリセット出力はＰＯＲ７１２のパワーオン・リセット出力に接続される。
【００４０】
上記したように、ＭＲＳ回路７０８の目的はＳＰＣのＤＩＯ３０８信号が外部から駆動されない時にＳＰＣおよびタップドメインをリセット状態に維持し、ＳＰＣの動作をそのＤＩＯ３０８信号を駆動する外部回路と同期化させることである。
【００４１】
状態機械９００の動作が図９Ｂの状態図に示されている。ＰＯＲ７１２からのロー・アクティブ・パワーオン・リセット入力に応答して、あるいはローとなるＴＳＭ７０６のＲＳＴ出力に応答して、状態機械９００は“Ｓｅｔ  ＭＲＳＴ  Ｌｏｗ  ＆  Ｐｏｌｌ  ＩＮ”状態９０４に入る。状態９０４において状態機械はＭＲＳＴ出力信号上にローを出力する。Ｉ／Ｏ回路７１０からのＩＮ入力がハイである間、状態機械は状態９０４に留まる。ＩＮ入力がローになると、状態機械は“Ｐｏｌｌ  ＩＮ”状態９０６に遷移する。ＭＲＳＴ出力は状態９０６においてローのままである。ＩＮ入力がハイになると、状態機械は状態９０６から状態９０４に戻り、そうでなければ、状態機械は状態９０６から“Ｐｏｌｌ  ＩＮ”状態９０８に遷移する。ＭＲＳＴ出力は状態９０８においてローのままである。ＩＮ入力がローになると、状態機械は状態９０８から状態９０４に戻り、そうでなければ、状態機械は状態９０８から“Ｐｏｌｌ  ＩＮ”状態９１０に遷移する。ＭＲＳＴ出力は状態９１０においてローのままである。ＩＮ入力がローになると、状態機械は状態９１０から状態９０４に戻り、そうでなければ、状態機械は状態９１０から“Ｓｅｔ  ＭＲＳＴ  ＆  ＣＥ  Ｈｉｇｈ”状態９１２に遷移する。
【００４２】
状態９１２において、状態機械はＭＲＳＴおよびＣＥ信号をハイに設定する。ＣＬＫ３１０の立下りエッジで、ＦＦ９０２は状態機械９００からのハイＣＥ出力をクロックインし、それはＦＦ９０２のＣＥＮＡ出力をハイに設定する。ＲＳＴ入力がローである間状態機械は状態９１２に留まる。ＲＳＴ入力がハイになると、状態機械は“Ｓｅｔ  ＣＥ  Ｌｏｗ”状態９１４に遷移する。状態９１４において、状態機械はＣＥ信号をローに設定する。ＣＬＫ３１０の立下りエッジで、ＦＦ９０２は状態機械９００からのローＣＥ出力をクロックインし、それはＦＦ９０２のＣＥＮＡ出力をローに設定する。ＲＳＴ入力がハイである間状態機械は状態９１４に留まり、ＲＳＴ入力がローになると状態９０４に遷移する。
【００４３】
状態機械はＰＯＲ７１２からのパワーオン・リセット入力またはＴＳＭ７０６のＲＴＳ出力上のロー入力を受信すると状態９０４に入るように設計されている。状態機械はＩ／Ｏ回路７１０からのＩＮ入力がハイである限り状態９０４に留まる。図１１Ａに関して後述するように、Ｉ／Ｏ回路は状態機械がＭＲＳＴ信号上にローを出力する時にＩ／Ｏ回路７１０へのＤＩＯ入力３０８が外部から駆動されていなければ、ＩＮ信号上にハイを出力するように設計されている。ＩＮ信号上のハイは状態機械９００を状態９０４に維持し、それは状態機械ＭＲＳＴ出力上のローを維持する。ＭＲＳＴがローである間、ＳＰＣ３０６回路およびタップドメイン１０４はターゲットＩＣの正規動作と干渉できない非アクティブリセット状態に保持される。
【００４４】
図５ＡのＪＴＡＧコントローラ１００およびＰＳＣ回路３０２が図７ＡのターゲットＩＣのＳＰＣ回路３０６のＤＩＯ信号に最初に接続されると、ＰＳＣおよびＳＰＣ回路の動作はＰＳＣからのシリアル化されたＴＭＳおよびＴＤＯパターンがシリアル化されたＴＭＳおよびＴＤＯパターンとして正しくＳＰＣに入力されるように同期化する必要がある。図９Ｂの状態図のセクション９１６内の状態はこの必要とされる同期化ステップをどのように達成できるかの一例を提供する。この同期化プロセスを示すタイミング図が図９Ｃに示されている。
【００４５】
図９Ｃの時間基準９１８はＰＳＣ３０２がＳＰＣ３０６に接続されない、すなわち、ＤＩＯ３０８が外部から駆動されない期間を示す。ターゲットＩＣのＳＰＣ３０６およびタップドメイン１０４内の回路は上記したように初期化されており、状態機械９００はＩＮ信号のハイ出力をポーリングしＭＲＳＴ出力上にローを出力する状態９０４にある。時間９１８はＳＰＣ３０６およびタップドメイン１０４が常駐するターゲットＩＣがシステム内で正常に動作しており、ＳＰＣのＤＩＯ信号がテスト、エミュレーション、および／またはトレース操作を行うように外部から駆動されていない時間とすることができる。このタイミング例では、ＣＬＫ信号３１０はターゲットＩＣ内のクロックソースによりアクティブに駆動されるものと仮定する。このようにして、状態機械９００の状態９０４はアクティブなＣＬＫ信号３１０の各立上りエッジ中にＩＮ信号のハイ論理レベルをポーリングしている。ＩＮ信号が未知の理由でＣＬＫサイクル入力中に一時的にローであったなら、状態機械は状態９０６を経て状態９０４に戻ることに注意する必要はない。さらに、状態機械は未知の理由で他の一時的ローまたはハイ信号シーケンスを有するＩＮ信号に応答して状態９０８および９１０から状態９０４に戻り得る。
【００４６】
図９Ｃの時間基準９２０はＰＳＣ３０２がＤＩＯ３０８およびＣＬＫ３１０信号を介してＳＰＣ３０６に外部接続されている期間を示す。物理的な接続過程中に、ＰＳＣおよびＳＰＣ間に形成される電気的接続により、ＤＩＯ３０８上に望ましくない一時的なシグナリングシーケンスがあることがある。これらの一時的な信号シーケンスはＰＳＣおよびＳＰＣ間の同期化の成功を妨げることがある。図９Ｂのセクション９１６内の状態遷移マッピングはＤＩＯ上の下記の３つのタイプの一時的な信号シーケンスをフィルタリングして、ＰＳＣおよびＳＰＣ間の同期化過程に影響を及ぼさないように提供される。
【００４７】
状態図に示すように、接続過程中の１−０−１の一時的なＤＩＯ信号シーケンスにより状態機械は状態９０４から状態９０６へ遷移して状態９０４へ戻る。このようにして、一時的なＤＩＯ接続シーケンスは同期化過程に影響を及ぼすことを防止される。
【００４８】
状態図に示すように、接続過程中の１−０−０−０−１の一時的なＤＩＯ信号シーケンスにより状態機械は状態９０４から状態９０６および状態９０８へ遷移して状態９０４へ戻る。このようにして、この一時的なＤＩＯ接続シーケンスは同期化過程に影響を及ぼすことを防止される。
【００４９】
状態図に示すように、接続過程中の１−０−０−１−０−１の一時的なＤＩＯ信号シーケンスにより状態機械は状態９０４から状態９０６および状態９０８および状態９１０へ遷移して状態９０４へ戻る。このようにして、この一時的なＤＩＯ接続シーケンスは同期化過程に影響を及ぼすことを防止される。
【００５０】
状態機械例は一時的なＤＩＯシーケンスの上記３つのタイプをフィルタリングするように設計されているが、所望により、より多数のＤＩＯシーケンスをフィルタリングするように設計することができる。
【００５１】
図９Ｃの時間基準９２２はＰＳＣ３０２およびＳＰＣ３０６間の接続がなされており、状態機械はＩＮ信号が接続ＰＳＣ３０２からのＤＩＯ入力によりハイに駆動されている状態９０４にある期間の開始を示す。ＰＳＣ３０２はＤＩＯ３０８を介してＳＰＣのＩＮ信号上に２つの論理０のパターン９２４をシリアルに入力することにより同期化過程を開始し、それにより状態機械９００は状態９０４から状態９０６および状態９０８へ遷移する。図５Ａに示すように、ＰＳＣはＬＤ信号を使用して０のＴＭＳ値および０のＴＤＯ値をＰＩＳＯ５０２にロードし、次にＣＬＫ信号３１０を使用して２つの論理０を出力するようにＰＩＳＯをシフトすることにより２つの論理０を出力する。次に、ＰＳＣ３０２はＤＩＯ３０８を介してＳＰＣのＩＮ信号上に２つの論理１のパターン９２６をシリアルに入力し、それにより状態機械９００は状態９０８から状態９１０および状態９１２へ遷移する。図５Ａに示すように、ＰＳＣはＬＤ信号を使用して１のＴＭＳ値および１のＴＤＯ値をＰＩＳＯ５０２にロードし、次にＣＬＫ信号３１０を使用して２つの論理１を出力するようにＰＩＳＯをシフトすることにより２つの論理１を出力する。図からお判りのように、状態機械９００は２つの論理１のシリアルパターンが続く２つの論理０のシリアルパターンの正確な入力に応答して状態９０４から状態９１２へしか遷移できない。
【００５２】
タイミング図に示すように、状態機械９００のＭＲＳＴおよびＣＥ信号出力は時間９２５において状態９１２内でハイに設定される。ハイとなるＭＲＳＴはタップドメイン１０４、ＴＳＭ７０６、および更新レジスタ７０４からリセット状態を除去する。ハイとなるＣＥによりＦＦ９０２は時間９２７においてＣＥＮＡをハイに設定する。ＣＥＮＡがハイになると、コントローラ７００のＣＲＳＴ信号ハイに設定されてコントローラ７００は時間９２３においてＵＣＫおよびＴＣＫ信号の出力を開始することができる。第１のＵＣＫ信号は時間９２３においてパターン９２６の２つの論理１を更新レジスタ７０４にロードする。時間９２３におけるＳＰＣのコントローラ７００のイネーブリングは、ＳＰＣのコントローラ７００のＵＣＫおよびＴＣＫ信号が、それぞれ、ＰＳＣコントローラ５００のＬＤおよびＣＫＩＮ信号と同期化されるように生じる。ＵＣＫ信号をＬＤ信号と同期化しＴＣＫ信号をＣＫＩＮ信号と同期化することにより、ＳＰＣ３０６は後続するシリアル化された２ビットパターンをＰＳＣ３０２からＤＩＯ３０８を介して正確に受信することができる。たとえば、ＰＩＳＯ５０２が２ビットパターンをシフトアウトしている時にＳＩＰＯ７０２は２ビットパターンをシフトインしており、ＰＩＳＯ５０２がシフトされる次の２ビットパターンをロードしている時にＳＩＰＯ７０２は現在の２ビットパターンを更新レジスタ７０４にロードしている。ＵＣＫおよびＬＤ信号とＴＣＫおよびＣＫＩＮ信号の同期化された動作は図１４Ａの説明に関してより明瞭となる。
【００５３】
本開示の状態機械９００は２つのシリアル化された２ビットパターン９２４および９２６のシーケンスを同期化に使用するように設計されているが、所望により、シリアル化された２ビットパターンのより長いシーケンスを同期化に使用することができる。２ビットパターンのより長いシーケンスを使用すると、時間９２０中の上記した接続過程によりＰＳＣおよびＳＰＣ間の同期化失敗の可能性はさらに低減される。また、状態機械のＩＮ入力で予期せぬシグナリングが生じる場合にＤＩＯが外部駆動されなければ、より長い同期化パターンシーケンスにより状態機械９００の状態９０４へ戻る能力が改善される。２ビットパターン９２４および９２６の例は、それぞれ、２つの０と２つの１を使用していたが、パターンの２ビットは０と１の任意所望のまたは所要の組合せを使用することができる。パターンシーケンスの最後の２ビットパターンのＴＭＳ部はタップドメイン１０４およびＴＳＭ回路７０６が応答する第１のＴＭＳ入力とすることができる。図９Ｃの例では、パターン９２６のＴＭＳ部が論理１に設定されてタップドメイン１０４およびＴＳＭ回路７０６を同期化の後でＴＬＲ状態に留める。パターン９２６のＴＭＳ部が論理０に設定されておれば、タップドメイン１０４およびＴＳＭ回路７０６は同期化の後でＲＴＩ状態に遷移している。
【００５４】
上記したＰＳＣおよびＳＰＣ同期化過程に続いて、ＰＳＣはシリアル化されたＴＤＯおよびＴＭＳパターンのＳＰＣへの入力を開始してタップドメイン１０４内へＪＴＡＧ命令またはデータをスキャンすることができる。下記の例はＰＳＣがシリアル化されたＴＤＯおよびＴＭＳパターンをＳＰＣへ入力して、タップドメイン１０４に図１０のタップ状態図に従って命令スキャン操作を行わせる様子を記述するものである。
【００５５】
ＳＰＣはＰＳＣからの第１のシリアル化されたＴＤＯ（Ｘ）およびＴＭＳ（０）パターン９２８を入力し、それはＳＩＰＯ７０２に入力され、ＵＣＫ９２９中に更新レジスタ７０４を介してタップドメイン１０４のＴＤＩおよびＴＭＳ入力およびＴＳＭ７０６のＴＭＳ入力に加えられる。パターンのＴＤＯ部のＸはＴＤＯが“ｄｏｎ’ｔ  ｃａｒｅ”信号であることを示している。タップドメイン１０４およびＴＳＭ７０６へのこの第１のＴＤＩおよびＴＭＳパターン入力によりタップドメインおよびＴＳＭはＴＣＫ９４２に応答してＴｅｓｔ  Ｌｏｇｉｃ  Ｒｅｓｅｔ（ＴＬＲ）状態からＲｕｎ  Ｔｅｓｔ／Ｉｄｌｅ（ＲＴＩ）状態へ遷移する（図１０）。ＴＣＫ９４２の立下りエッジでＴＳＭ７０６はそのＲＳＴ信号をハイに設定してコントローラ７００のＯＲゲート８０８の入力におけるリセット状態を除去する。ハイとなるＲＳＴに応答して、状態機械９００はＣＬＫ３１０の次の立上りエッジで状態９１４に遷移する。状態機械は状態９１４においてＣＥ出力をローに設定し、それによりＦＦ９０２はＣＬＫ３１０の立下りエッジでＣＥＮＡ上にローを出力する。ＲＳＴ信号がハイである間状態機械９００は状態９１４に留まる。
【００５６】
ＳＰＣはＰＳＣからの第２のシリアル化されたＴＤＯ（Ｘ）およびＴＭＳ（１）パターン９３０を入力し、それはＳＩＰＯ７０２へ入力されＵＣＫ９３１中に更新レジスタ７０４を介してタップドメイン１０４のＴＤＩおよびＴＭＳ入力およびＴＳＭ７０６のＴＭＳ入力へ加えられる。この第２のＴＤＩおよびＴＭＳパターンによりタップドメイン１０４およびＴＳＭはＴＣＫ９４４に応答してＲＴＩ状態からＳｅｌｅｃｔ−ＤＲ（ＳＬＤ）状態へ遷移する。
【００５７】
ＳＰＣはＰＳＣからの第３のシリアル化されたＴＤＯ（Ｘ）およびＴＭＳ（１）パターン９３２を入力し、それはＳＩＰＯ７０２へ入力され、ＵＣＫ９３３中に更新レジスタ７０４を介してタップドメイン１０４のＴＤＩおよびＴＭＳ入力およびＴＳＭ７０６のＴＭＳ入力へ加えられる。この第３のＴＤＩおよびＴＭＳパターンによりタップドメイン１０４およびＴＳＭはＴＣＫ９４６に応答してＳＬＤ状態からＳｅｌｅｃｔ−ＩＲ（ＳＬＩ）状態へ遷移する。
【００５８】
ＳＰＣはＰＳＣからの第４のシリアル化されたＴＤＯ（Ｘ）およびＴＭＳ（０）パターン９３４を入力し、それはＳＩＰＯ７０２へ入力され、ＵＣＫ９３５中に更新レジスタ７０４を介してタップドメイン１０４のＴＤＩおよびＴＭＳ入力およびＴＳＭ７０６のＴＭＳ入力へ加えられる。この第４のＴＤＩおよびＴＭＳパターンによりタップドメイン１０４およびＴＳＭはＴＣＫ９４８に応答してＳＬＩ状態からＣａｐｔｕｒｅ−ＩＲ（ＣＰＩ）状態へ遷移する。
【００５９】
ＳＰＣはＰＳＣからの第５のシリアル化されたＴＤＯ（０）およびＴＭＳ（０）パターン９３６を入力し、それはＳＩＰＯ７０２へ入力され、ＵＣＫ９３７中に更新レジスタ７０４を介してタップドメイン１０４のＴＤＩおよびＴＭＳ入力およびＴＳＭ７０６のＴＭＳ入力へ加えられる。この第５のＴＤＩおよびＴＭＳパターンによりタップドメイン１０４およびＴＳＭはＴＣＫ９５０に応答してＣＰＩ状態からＳｈｉｆｔ−ＩＲ（ＳＨＩ）状態へ遷移する。ＴＳＭ７０６がＳＨＩ状態に遷移すると、そのＯＥ出力はタップドメイン１０４からの第１のＴＤＯ出力がＤＩＯ３０８上に出力されてＰＳＣコントローラ５００のＩ／Ｏ回路５０４を介してＪＴＡＧコントローラのＴＤＩ入力に入力されるようにＩ／Ｏ回路７１０の出力駆動をイネーブルするように設定される。ＴＳＭ（およびタップドメイン）が図１０のＳｈｉｆｔ−ＩＲまたはＳｈｉｆｔ−ＤＲ状態にある時は常にＴＳＭ７０６はＩ／Ｏ回路７１０の出力駆動をイネーブルするようにそのＯＥを設定する。
【００６０】
ＳＰＣはＰＳＣからの第６のシリアル化されたＴＤＯ（１）およびＴＭＳ（０）パターン９３８を入力し、それはＳＩＰＯ７０２へ入力され、ＵＣＫ９３９中に更新レジスタ７０４を介してタップドメイン１０４のＴＤＩおよびＴＭＳ入力およびＴＳＭ７０６のＴＭＳ入力へ加えられる。この第６のＴＤＩおよびＴＭＳパターンによりタップドメイン１０４およびＴＳＭはＴＣＫ９５２に応答してＳＨＩ状態に留まる。パターン９３８において、ＴＤＯは１に設定されてタップドメイン１０４内にシフトされる第１のＴＤＩ入力は論理１であることを表示するように示されている。ＴＣＫ９５２の立上りエッジで第６のパターン９３８の第１のＴＤＩ入力（１）はタップドメイン１０４内にシフトインされる。タップドメイン１０４からの第１のＴＤＯ出力もＴＣＫ９５２に同期化されるＣＫＩＮ入力の立上りエッジでＪＴＡＧコントローラ１００のＴＤＩ入力へ入力される。
【００６１】
シリアル化されたパターン（９４０，９４２，．．．）が入力されてタップドメイン１０４（およびＴＭＳ７０６）がＳＨＩ状態に留まる限り（すなわち、パターンのＴＭＳ部＝０）、タップドメインからのＴＤＯ出力がＪＴＡＧコントローラ１００に入力される間各パターンのＴＤＩ入力部はタップドメイン１０４へ入力される。ＴＤＩおよびＴＤＯのシフトインおよびアウトが完了すると、ＰＳＣはシリアル化されたパターンを入力し、パターンのＴＭＳ部はタップドメイン１０４およびＴＳＭ７０６を図１０のタップ状態図に従ってＳｈｉｆｔ−ＩＲ状態（ＳＨＩ）からＥｘｉｔ１−ＩＲ状態へ移し、次に、任意他の状態へ移すように設定されている。
【００６２】
上記した過程がＪＴＡＧコントローラおよびターゲットＩＣのタップドメイン間で命令スキャン操作を実施している間、データスキャン操作も同様に実施することができる。ＪＴＡＧコントローラからのシリアル化されたＴＤＩおよびＴＭＳ入力およびタップドメインからのＴＤＯ出力を使用する命令およびデータスキャン操作を使用してテスト、エミュレーション、デバッグ、トレース、および／またはＰＳＣおよびＳＰＣ間の２信号ＤＩＯ３０８およびＣＬＫ３１０インターフェイスを介した他の操作を行うことができる。
【００６３】
操作が完了すると、ＪＴＡＧコントローラはシリアル化されたＴＤＯおよびＴＭＳパターンのストリングを出力することができ、各パターンのＴＭＳ部は論理１に設定されてタップドメイン１０４およびＴＳＭ回路７０６を図１０のＴｅｓｔ  Ｌｏｇｉｃ  Ｒｅｓｅｔ状態へ遷移させるように設定されている。図１０に示すように、タップ状態機械はＴＭＳ上の少なくとも５つの論理ハイ入力を受信する時は常にそのいずれかの状態からＴｅｓｔ  Ｌｏｇｉｃ  Ｒｅｓｅｔ状態へ遷移するように設計される。したがって、各々がＴＭＳハイを有する５つのシリアル化されたＴＤＯおよびＴＭＳパターンによりタップドメイン１０４およびＴＳＭ７０６はＴｅｓｔ  Ｌｏｇｉｃ  Ｒｅｓｅｔ状態に入る。
【００６４】
ＴＳＭ７０６はＴｅｓｔ  Ｌｏｇｉｃ  Ｒｅｓｅｔ状態に入ると、ＲＳＴ出力をローに設定しそれによりコントローラ７００がリセットされてＭＲＳ７０８の状態機械９００は状態９０４に入り、その結果図９Ｃのタイミング図の時間基準９１８中に示す信号レベルとなる。ＳＰＣ回路がＲＳＴ信号によりリセットされた後で、ＰＳＣおよびＳＰＣ間のＤＩＯおよびＣＬＫ接続を解除することができる。ＰＳＣおよびＳＰＣ解除ステップ中に、ＤＩＯ信号上で一時的な信号グリッチ／バウンスが生じることがある。図９Ｂのセクション９１６内の上記した状態機械９００状態は解除ステップ中に生じることがある任意の望ましくない一時的なＤＩＯシグナリングに続いて状態機械は状態９０４に留まるかそこへ戻るように状態機械へのＩＮ入力をフィルタリングするために再び作用し始める。解除ステップに続いて、状態機械は状態９０４となりＭＲＳＴ出力はローであり、それはコントローラ７００、ＴＳＭ７０６、およびタップドメイン１０４上のリセット状態を維持する。
【００６５】
図１１Ａは構成１１００のＩ／Ｏ回路５０４およびターゲットＩＣのＩ／Ｏ回路７１０間のＤＩＯ３０８信号接続を介してターゲットＩＣ３００のＳＰＣ３０６およびタップドメイン１０４とインターフェイス接続されたＪＴＡＧコントローラ１００およびＰＳＣ３０２の構成１１００の例を示す。簡単にするために、ＤＩＯ信号３０８を伴うＣＬＫ３１０信号は本例には示されていない。また、説明を簡単かつ容易にするために、Ｉ／Ｏ回路５０４および７１０は図５Ａおよび７Ａに示すように、それぞれ、ＰＳＣ３０２およびＳＰＣ３０６の内側ではなく外側に存在するように示されている。Ｉ／Ｏ回路５０４はＯＵＴ信号を介してＰＳＣ３０２に接続され、かつＴＤＩ信号を介してＪＴＡＧコントローラ１００に接続されている。Ｉ／Ｏ回路７１０はＴＤＯ信号を介してタップドメイン１０４に接続されＩＮおよびＯＥ信号を介してＳＰＣに接続されている。
【００６６】
Ｉ／Ｏ回路５０４は入力回路１１０２、出力バッファ１１０４、および抵抗体１１０６からなっている。ＯＵＴ信号はバッファ１１０４の入力および入力回路１１０２の第１の入力に接続されている。バッファ１１０４の出力は抵抗体１１０６を介してＤＩＯ信号に接続されている。ＤＩＯ信号は入力回路１１０２の第２の入力に接続されている。入力回路１１０２の出力はＪＴＡＧコントローラ１００のＴＤＩ入力に接続されている。
【００６７】
Ｉ／Ｏ回路７１０は入力回路１１０８、出力バッファ１１１０、抵抗体１１１２、およびプルアップ（ＰＵ）回路１１１４からなっている。ＴＤＯ信号はバッファ１１１０の入力および入力回路１１０８の第１の入力に接続されている。バッファ１１１０の出力は抵抗体１１１２を介してＤＩＯ信号に接続されている。ＤＩＯ信号は入力回路１１０８の第２の入力およびＰＵ回路１１１４に接続されている。入力回路１１０８の出力はＳＰＣ３０６のＩＮ入力に接続されている。
【００６８】
ＰＵ回路１１１４はＤＩＯ信号がバッファ１１０４または１１１０により駆動されていない時に入力回路１１０８へのＤＩＯ信号入力をハイに設定するのに使用される。たとえば、ＪＴＡＧコントローラおよびＰＳＣ構成１１００がターゲットＩＣのＤＩＯに接続されておらずかつターゲットＩＣのバッファ１１１０の出力ドライブがＯＥ信号によりディセーブルされる間、ＰＵ回路１１１４はＤＩＯ信号をハイに設定して論理１が入力回路１１０８のＩＮ信号出力からＳＰＣ３０６へ入力されるようにする。上記したように、ＩＮ信号上のハイによりＭＲＳ回路７０８の状態機械９００は図９Ｂの状態９０４に留まる。
【００６９】
Ｉ／Ｏ回路５０４の出力バッファ１１０４およびＩ／Ｏ回路７１０の出力バッファ１１１０は、好ましくは、ほぼ同じ電流シンク／ソースドライブ強度を有するように設計される。また、Ｉ／Ｏ回路５０４および７１０の抵抗体１１０６および１１１２はほぼ同じ抵抗を有する。
【００７０】
図１１ＢはＤＩＯ３０８を介してＩ／Ｏ回路５０４および７１０間で同時データ通信が行われる４つのケースＡ−Ｄに対するタイミング波形を例示している。各ケースＡ−Ｄは垂直点線ボックスによりタイミング図内に表示される。図１２は４つのケースＡ−Ｄの各々の期間中のＤＩＯ信号線上の電流を例示している。これらの例において、バッファ１１１０へのＯＥ入力はバッファ１１１０がＤＩＯ信号を駆動できるように設定される。
【００７１】
ケースＡはＯＵＴをローに駆動するＰＳＣ３０２およびＴＤＯをローに駆動するタップドメイン１０４を示す。図１２のケースＡに示すように、両方のバッファ１１０４および１１１０からローが出力されるためＤＩＯ信号線上を少量の電流しか流れない。この小さな電流は抵抗体１１０６および１１１２の両端間に著しい電圧降下を引き起こさない。そのため、入力回路１１０２および１１０８へのＤＩＯ信号入力はロー信号入力として容易に検出可能である。このＯＵＴおよびＴＤＯ出力状態に応答してＤＩＯ信号はローに駆動される。ＯＵＴおよびＤＩＯがローになると、入力回路１１０２はＴＤＩ入力上のローをＪＴＡＧコントローラ１００へ入力する。ＴＤＯおよびＤＩＯがローになると、入力回路１１０８はＩＮ入力上のローをＳＰＣ３０６へ入力する。
【００７２】
ケースＢはＯＵＴをローに駆動するＰＳＣ３０２およびＴＤＯをハイに駆動するタップドメイン１０４を示す。図１２のケースＢに示すように、バッファ１１０４からローが出力されバッファ１１１０からハイが出力されるためＤＩＯ信号線上のバッファ間を大きな電流が流れる。抵抗体１１０６および１１１２はこの大きな電流を制限するように働き、それらの両端間に生じる電圧降下は入力回路１１０２および１１０８によりハイかローかを容易に検出可能な中間レベル電圧をＤＩＯ線上に確立する。このＯＵＴおよびＴＤＯ出力状態に応答してＤＩＯ信号は中間電圧レベルに駆動される。ＯＵＴがローでＤＩＯが中間電圧になると、入力回路１１０２はＴＤＩ入力上のハイをＪＴＡＧコントローラ１００へ入力する。ＴＤＯがハイでＤＩＯが中間電圧になると、入力回路１１０８はＩＮ入力上のローをＳＰＣ３０６へ入力する。
【００７３】
ケースＣはＯＵＴをハイに駆動するＰＳＣ３０２およびＴＤＯをローに駆動するタップドメイン１０４を示す。図１２のケースＣに示すように、バッファ１１０４からハイが出力されバッファ１１１０からローが出力されるためＤＩＯ信号線上のバッファ間を大きな電流が流れる。抵抗体１１０６および１１１２はこの大きな電流を制限するように働き、それらの両端間に生じる電圧降下は入力回路１１０２および１１０８によりハイかローかを容易に検出可能な中間レベル電圧をＤＩＯ線上に確立する。このＯＵＴおよびＴＤＯ出力状態に応答してＤＩＯ信号は中間電圧レベルに駆動される。ＯＵＴがハイでＤＩＯが中間電圧になると、入力回路１１０２はＴＤＩ入力上のローをＪＴＡＧコントローラ１００へ入力する。ＴＤＯがローでＤＩＯが中間電圧になると、入力回路１１０８はＩＮ入力上のハイをＳＰＣ３０６へ入力する。
【００７４】
ケースＤはＯＵＴをハイに駆動するＰＳＣ３０２およびＴＤＯをハイに駆動するタップドメイン１０４を示す。図１２のケースＤに示すように、両方のバッファ１１０４および１１１０からハイが出力されるためＤＩＯ信号線上を少量の電流しか流れない。この小さな電流は抵抗体１１０６および１１１２の両端間に著しい電圧降下を引き起こさない。そのため、入力回路１１０２および１１０８へのＤＩＯ信号入力はハイ信号入力として容易に検出可能である。このＯＵＴおよびＴＤＯ出力状態に応答してＤＩＯ信号はハイに駆動される。ＯＵＴおよびＤＩＯがハイになると、入力回路１１０２はＴＤＩ入力上のハイをＪＴＡＧコントローラ１００へ入力する。ＴＤＯおよびＤＩＯがハイになると、入力回路１１０８はＩＮ入力上のハイをＳＰＣ３０６へ入力する。
【００７５】
図１３Ａは入力回路１１０２または１１０８として使用できる入力回路１３００をどのように設計するかの一例を示す。入力回路１３００は電圧比較器回路１３０２、マルチプレクサ１３０４、インバータ１３０６、およびバッファ１３０８を含んでいる。電圧比較器回路１３０２はＤＩＯからの電圧を入力しデジタル制御信号Ｓ０およびＳ１をマルチプレクサ１３０４へ出力する。図からお判りのように、電圧比較器回路１３０２の電圧（Ｖ）からグランド（Ｇ）への第１のレグ１３１０は直列Ｐ−チャネルトランジスタおよび電流源を含み、電圧からグランドへの第２のレグ１３１２は直列Ｎ−チャネルトランジスタおよび電流源を含んでいる。図からお判りのように、Ｓ１が第１のレグ１３１０のＰ−チャネルトランジスタおよび電流源間のポイントに接続され、Ｓ０が第２のレグ１３１２のＮ−チャネルトランジスタおよび電流源間のポイントに接続されている。トランジスタのゲートはＤＩＯに接続されてＤＩＯ上の電圧がトランジスタをオンオフできるようにする。
【００７６】
電圧比較器回路１３０２およびマルチプレクサ１３０４の動作は図１３Ｂの真理値表に示され、ここで説明される。ＤＩＯ上の電圧がローであれば、Ｓ０およびＳ１出力はハイに設定され、それによりマルチプレクサ１３０４はそのロー入力１３１４を選択してロー入力をＴＤＩ／ＩＮ（回路１１０２に対するＴＤＩおよび回路１１０８に対するＩＮ）信号上にバッファ１３０８を介して出力する。ＤＩＯ上の電圧が中間レベルであれば、Ｓ０はローに設定されＳ１はハイに設定され、それによりマルチプレクサ１３０４はその反転されたＯＵＴ／ＴＤＯ（回路１１０２に対するＯＵＴおよび回路１１０８に対するＴＤＯ）入力信号１３１６を選択して反転されたＯＵＴ／ＴＤＯ信号をＴＤＩ／ＩＮ信号へバッファ１３０８を介して出力する。ＤＩＯ上の電圧がハイであれば、Ｓ０およびＳ１出力はローに設定され、それによりマルチプレクサ１３０４はそのハイ入力１３１８を選択してハイ入力をＴＤＩ／ＩＮ信号へバッファ１３０８を介して出力する。
【００７７】
上記説明から入力回路１３００は（１）ＤＩＯ信号がローであればＴＤＩ／ＩＮ上にローを入力し、（２）ＤＩＯ信号がハイであればＴＤＩ／ＩＮ上にハイを入力し、（３）ＤＩＯ信号がハイとローの間の中間レベルであればＴＤＩ／ＩＮ上にＯＵＴ／ＴＤＯの反転を入力することは明白である。
【００７８】
図１１Ａに戻り入力回路１３００の上記説明を読めば、次のことは明白である。
ＤＩＯがハイであれば、入力回路１１０２および１１０８は、それぞれ、ＪＴＡＧコントローラ１００およびＳＰＣ３０６へハイを入力する。
ＤＩＯがローであれば、入力回路１１０２および１１０８は、それぞれ、ＪＴＡＧコントローラ１００およびＳＰＣ３０６へローを入力する。
ＤＩＯが中間レベルでＰＳＣ３０２からのＯＵＴ信号がローであれば、入力回路１１０２はタップドメイン１０４がＴＤＯ上にハイを出力してＤＩＯ上に中間レベルを生じていることを知る。したがって、入力回路１１０２はＪＴＡＧコントローラ１００のＴＤＩ入力にハイを入力する。
ＤＩＯが中間レベルでＰＳＣ３０２からのＯＵＴ信号がハイであれば、入力回路１１０２はタップドメイン１０４がＴＤＯ上にローを出力してＤＩＯ上に中間レベルを生じていることを知る。したがって、入力回路１１０２はＪＴＡＧコントローラ１００のＴＤＩ入力にローを入力する。
ＤＩＯが中間レベルでタップドメイン１０４からのＴＤＯ信号がローであれば、入力回路１１０８はＰＳＣ３０２がＯＵＴ上にハイを出力してＤＩＯ上に中間レベルを生じていることを知る。したがって、入力回路１１０８はＳＰＣ３０６のＩＮ入力にハイを入力する。
ＤＩＯが中間レベルでタップドメイン１０４からのＴＤＯ信号がハイであれば、入力回路１１０８はＰＳＣ３０２がＯＵＴ上にローを出力してＤＩＯ上に中間レベルを生じていることを知る。したがって、入力回路１１０８はＳＰＣ３０６のＩＮ入力にローを入力する。
【００７９】
図１４ＡはＪＴＡＧコントローラ１００およびＰＳＣ３０２がＤＩＯ３０８およびＣＬＫ３１０信号を介してターゲットＩＣ３００のＳＰＣ３０６およびタップドメイン１０４に接続されかつ通信する全体の構成を示す。簡略化のために、通信プロセスに伴うＰＳＣ３０２およびＳＰＣ３０６の回路素子しか図示されていない。図１４Ｂのタイミング図は通信プロセスを詳述するものである。
【００８０】
図１４Ｂのタイミング図において、ＰＳＣおよびＳＰＣの両方のコントローラ５００および７００が、それぞれ、上記したように同期化されておりＣＬＫ信号３１０に応答してそれらの各ＬＤおよびＣＫＩＮおよびＵＣＫおよびＴＣＫ信号をアクティブに操作している。図示されかつ上記したように、ＰＳＣのＬＤ信号はＳＰＣのＵＣＫ信号と同期して動作し、ＰＳＣのＣＫＩＮ信号はＳＰＣのＴＣＫ信号と同期して動作する。簡略化のために、ＣＫＩＮおよびＴＣＫ信号は１つのクロック信号として示されている。
【００８１】
ＬＤ信号１４０２中に、ＪＴＡＧコントローラ１００からのＴＭＳおよびＴＤＯパターンＮ１４０４がＰＩＳＯ５０２内へロードされる。ロードされたパターンのＴＭＳ部はＣＬＫ１４０６中にＰＩＳＯ５０２からＳＩＰＯ７０２へシフトされ、ロードされたパターンのＴＤＯ部はＣＬＫ１４０８中にＰＩＳＯ５０２からＳＩＰＯ７０２へシフトされる。ＣＫＩＮ１４１０は次のＴＭＳおよびＴＤＯパターンＮ＋１  １４１２を出力しタップドメインからのＴＤＯ出力１４１５を入力する（Ｓｈｉｆｔ−ＤＲまたはＳｈｉｆｔ−ＩＲ状態であれば）ようにＪＴＡＧコントローラを推進する。ＴＣＫ１４１０によりタップドメイン１０４はＵＣＫ１４１３中にタップドメインへ入力された予め送信されたＴＤＩおよびＴＭＳ入力パターンＮ−１  １４１４に応答する。また、ＴＣＫ１４１０中に、タップドメインはＪＴＡＧコントローラに入力される（Ｓｈｉｆｔ−ＤＲまたはＳｈｉｆｔ−ＩＲ状態であれば）次のＴＤＯ出力を出力する。
【００８２】
ＬＤ信号１４１８中に、ＪＴＡＧコントローラ１００からのＴＭＳおよびＴＤＯパターンＮ＋１  １４１２がＰＩＳＯ５０２へロードされる。ロードされたパターンのＴＭＳ部はＣＬＫ１４２０中にＰＩＳＯ５０２からＳＩＰＯ７０２へシフトされ、ロードされたパターンのＴＤＯ部はＣＬＫ１４２２中にＰＩＳＯ５０２からＳＩＰＯ７０２へシフトされる。ＣＫＩＮ１４２４は次のＴＭＳおよびＴＤＯパターンＮ＋２  １４２６を出力しタップドメインからのＴＤＯ出力１４２８を入力するようにＪＴＡＧコントローラを推進する。ＴＣＫ１４２４によりタップドメイン１０４はＵＣＫ１４１３中にタップドメインへ入力されたＴＤＩおよびＴＭＳ入力パターンＮ  １４１６に応答する。また、ＴＣＫ１４２４中に、タップドメインはＪＴＡＧコントローラに入力される次のＴＤＯ出力１４３２を出力する。
【００８３】
ＰＳＣおよびＳＰＣを介したＪＴＡＧコントローラ１００およびタップドメイン１０４間の通信の上記したタイミング例は、ＰＳＣおよびＳＰＣ間にＤＩＯおよびＣＬＫ接続が存在する間またＣＬＫ信号１３１０がアクティブである間続く。
【００８４】
図１４ＣはＪＴＡＧコントローラおよびタップドメイン間でシングルデータ・レジスタシフト操作を実施する図１４Ａの構成のタイミング例を示す。図からお判りのように、ＪＴＡＧコントローラはタップドメインが図１０のＲｕｎ  Ｔｅｓｔ／Ｉｄｌｅ（ＲＴＩ）状態からＳｅｌｅｃｔ−ＤＲ（ＳＬＤ）状態、Ｃａｐｔｕｒｅ−ＤＲ（ＣＰＤ）状態、Ｓｅｌｅｃｔ−ＤＲ（ＳＬＤ）状態、Ｅｘｉｔ１−ＤＲ（Ｘ１Ｄ）状態、Ｕｐｄａｔｅ−ＤＲ（ＵＰＤ）状態へ遷移し、ＲＴＩ状態へ戻るのを制御する一連のＴＭＳおよびＴＤＯパターン１４４０−１４５４を出力する。このタップ状態シーケンスによりＪＴＡＧコントローラおよびタップドメイン間で１ビットデータ・レジスタシフト操作が生じる。ＪＴＡＧコントローラから出力される一連のパターン１４４０−１４５４はＰＳＣによりシリアル化されかつＳＰＣによりデシリアル化されてタップドメインへＴＤＩおよびＴＭＳパターンシーケンス１４５４−１４６８として入力される。図からお判りのように、パターンのシリアル化およびデシリアル化のプロセスによりＴＤＩおよびＴＭＳパターンはタップドメインへ入力されＪＴＡＧコントローラからのＴＭＳおよびＴＤＯパターン出力から遅延する。
【００８５】
ＪＴＡＧコントローラが図１に示すようにタップドメインに従来どおり接続されておれば、ＴＤＯからＴＤＩへの間のデータシフト操作が時間１４７０においてＣＫＩＮおよびＴＣＫの立上りエッジで、すなわち、タップドメインがＳｈｉｆｔ−ＤＲ（ＳＦＤ）状態からＥｘｉｔ１−ＤＲ（Ｘ１Ｄ）状態へ遷移する時に生じる。しかしながら、パターン遅延により、ＴＤＯからＴＤＩへの間のデータシフト操作は時間１４７２においてＣＫＩＮおよびＴＣＫの立上りエッジで生じる。ＪＴＡＧコントローラから出力されたＴＤＯデータのタップドメインのＴＤＩ入力へのシフトインはパターン遅延により遂行されず、それはＴＤＯデータがシリアル化およびデシリアル化に続いてタップドメインへ入力されたＴＤＩおよびＴＭＳパターン内に留まりＴＣＫ１４７２の立上りエッジでタップドメイン内にクロックされるためである。しかしながら、パターン遅延のため、タップドメインからの正しいＴＤＯ出力（黒く塗りつぶして示す）はＴＣＫ１４７２の立下りエッジまでタップドメインから出力されないため、ＪＴＡＧコントローラはＴＣＫ１４７０の立上りエッジでタップドメインからの正しいＴＤＯ出力を入力しない。したがって、ＪＴＡＧコントローラからのＴＤＯデータはＴＤＩデータとして正しくタップドメインに入力されるが、タップドメインからのＴＤＯ出力はＴＤＩデータとして不正にタップドメインに入力される。
【００８６】
テキサスインスツルメンツＳＮ７４／５４ＡＣＴ８９９０ＪＴＡＧバス・コントローラチップを使用するように設計されるＪＴＡＧコントローラは上記したパターン遅延問題を解決することができる。ＳＮ７４／５４ＡＣＴ８９９０ＪＴＡＧバス・コントローラチップはＪＴＡＧコントローラからのＴＭＳおよびＴＤＯ出力をターゲットＩＣのＴＭＳおよびＴＤＩ入力に登録できるＪＴＡＧコントローラおよびターゲットＩＣ間のケーブリングにより動作するように設計されている。
【００８７】
図１５はＡＣＴ８９９０のＴＭＳおよびＴＤＯ出力およびターゲットＩＣ１５２０のＴＭＳおよびＴＤＩ入力間のパス内にＦＦ１５１６−１５１８を含むケーブル１５１４を介してＡＣＴ８９９０ＪＴＡＧコントローラチップ１５０２がターゲットＩＣにインターフェイス接続される構成を示す。この例では、ターゲットＩＣはＣＫＩＮをＡＣＴ８９９０をソースにし、かつＦＦ１５１６および１５１８の動作のタイミングをとる。図からお判りのように、図１４ＡのＰＳＣおよびＳＰＣ回路によりＩＣ３００へのＴＭＳおよびＴＤＩ入力が図１４ＡのＪＴＡＧコントローラ１００のＴＭＳおよびＴＤＯ出力を遅延させるのと同様に、ＦＦ１５１６および１５１８によりターゲットＩＣへのＴＭＳおよびＴＤＩ入力がＡＣＴ８９９０からのＴＭＳおよびＴＤＯ出力を遅延させる。
【００８８】
ＡＣＴ８９９０の単純化されたブロック図はそれがＴＭＳ信号を送信する回路１５０４、ＴＤＯ信号を送信する回路１５０６、ＴＤＩ信号を受信する回路１５１０、およびＴＤＩ受信回路１５１０へのＴＭＳ信号１５１２入力を遅延する回路１５０８を含むことを示している。ＴＤＩ受信回路はＴＭＳ信号１５１２に応答して、図１０のタップ状態図と同様に、いつＴＤＩ信号を入力するかを知る。この例では、全回路１５０４−１５１０がＩＣ１５２０のＴＣＫ出力からのＣＫＩＮ入力によりタイミングがとられる。
【００８９】
ケーブル内にＦＦが存在しなければ、すなわち、ＡＣＴ８９９０のＴＭＳおよびＴＤＯ出力がターゲットＩＣのＴＭＳおよびＴＤＩ入力に直接接続されると、ＴＭＳ遅延回路はＴＤＩ受信機へのＴＭＳ信号を遅延させないように設定される。この場合、ＴＤＩ受信機１５１０はＩＣ１５２０のタップがＴＤＩデータを入力するのと同時にＴＤＩ受信機１５１０がＴＤＩデータを入力するようにターゲットＩＣ１５２０のタップと歩調を合わせて動作する。
【００９０】
図示するようにＦＦがパス内に存在すれば、ＴＭＳ遅延回路はＴＤＩ受信機の動作を１ＣＫＩＮサイクル遅延させてＴＤＩ受信機の動作をＩＣ１５２０のタップの動作と同期化できるようにする。ＴＤＩ受信機の動作を遅延させることにより、ＴＤＩ受信機はＩＣ１５２０のタップがＴＤＩデータを入力するのと同時にＴＤＩ受信機１５１０がＴＤＩデータを入力するようにターゲットＩＣ１５２０のタップの遅延動作と歩調を合わせて動作するようにされる。
【００９１】
ＡＣＴ８９９０ＪＴＡＧバス・コントローラチップの遅延回路１５０８は元々ケーブルに伴う遅延を補償するように設計されているが、本開示は遅延回路１５０８の特徴を利用して図１４ＡのＰＳＣおよびＳＰＣ回路のシリアル化およびデシリアル化動作に伴う遅延を補償する。
【００９２】
たとえば、図１４ＡのＪＴＡＧコントローラ１００がＡＣＴ８９９０チップを使用してＪＴＡＧバスを制御する場合、図１４Ｃのタイミング図に示すように、ＡＣＴ８９９０の駆動回路１５０８はＴＤＩ入力がＣＫＩＮ１４７２の立上りエッジで正しく受信されるようにＩＣ３００のタップドメインからのＴＤＩ入力を１ＣＫＩＮサイクルだけ遅延させるように設定することができる。このようにして、ＰＳＣおよびＳＰＣ回路のシリアル化およびデシリアル化プロセスによる上記した遅延問題はＡＣＴ８９９０ＪＴＡＧバス・コントローラチップまたは図１４Ａのタップドメイン１０４からのＴＤＩデータの入力を同様に遅延させることができる他のチップ／回路を内蔵するＪＴＡＧコントローラ１００を使用して解決することができる。
【００９３】
図１６はＪＴＡＧコントローラ１００およびＰＳＣ３０２の構成１６０２がＤＩＯ３０８およびＣＬＫ３１０信号配線を介してターゲットＩＣ１６０４のＳＰＣ３０６およびタップドメイン１０４に接続される第１のシステム例を示す。この例では、構成１６０２内のクロックソース１６０６はＰＳＣおよびＳＰＣ回路の動作のタイミングをとるＣＬＫ信号を駆動するのに使用される。この例では、ターゲットＩＣ１６０４はＤＩＯおよびＣＬＫ信号用の２つの専用ピンを必要とする。
【００９４】
図１７はＪＴＡＧコントローラ１００およびＰＳＣ３０２の構成１７０２がＤＩＯ３０８およびＣＬＫ３１０信号配線を介してターゲットＩＣ１７０４のＳＰＣ３０６およびタップドメイン１０４に接続される第２のシステム例を示す。この例では、ターゲットＩＣ１７０４内のクロックソース１７０６はＰＳＣおよびＳＰＣ回路の動作のタイミングをとるＣＬＫ信号を駆動するのに使用される。この例では、ターゲットＩＣ１７０４はＤＩＯおよびＣＬＫ信号用の２つの専用ピンを必要とする。
【００９５】
図１８はＪＴＡＧコントローラ１００およびＰＳＣ３０２の構成１７０２がＤＩＯ３０８信号線を介してターゲットＩＣ１８０２のＳＰＣ３０６およびタップドメイン１０４に接続される第３のシステム例を示す。この例では、外部クロックソース１８０４は機能的に必要なクロック入力ピンを介してＩＣ１８０２へ機能的クロックを入力するのに使用される。外部クロックソースもＰＳＣ３０２のＣＬＫ信号を駆動する。ＳＰＣ３０６のＣＬＫ入力はＩＣの機能的クロックに接続されかつ駆動されるため、ＩＣ１８０２上にＣＬＫ信号３１０用の専用ピンは不要である。この例では、ターゲットＩＣ１８０２はＤＩＯ信号用の専用ピンしか必要としない。
【００９６】
図１９はＪＴＡＧコントローラ１００およびＰＳＣ３０２の構成１７０２がＤＩＯ３０８信号線を介してターゲットＩＣ１８０２のＳＰＣ３０６およびタップドメイン１０４に接続される第４のシステム例を示す。この例では、機能的クロックがＩＣ１９０２から出力されて周辺回路１９０４のクロック入力を機能的に必要なクロック出力ピンを介して駆動する。ＩＣ１９０２の内部で、機能的クロックはＳＰＣ３０６のＣＬＫ入力に接続されてそれを駆動する。ＩＣ１９０２の外部で、機能的クロックはＰＳＣ３０２のＣＬＫ入力に接続されてそれを駆動する。ＰＳＣ３０２のＣＬＫ入力は外部機能的クロックに接続されるため、ＣＬＫ信号３１０用の専用ピンはＩＣ１９０２上に不要である。この例では、ターゲットＩＣ１９０２はＤＩＯ信号用の専用ピンしか必要としない。
【００９７】
図２０はＪＴＡＧコントローラ１００およびＰＳＣ３０２の構成１７０２がＤＩＯ３０８およびＣＬＫ３１０信号配線を介してターゲットＩＣ１６０４のＳＰＣ３０６およびタップドメイン１０４に接続される第５のシステム例を示す。この例では、構成１７０２およびＩＣ１６０４の両方の外部にあるクロックソース２００２はＰＳＣおよびＳＰＣ回路の動作のタイミングをとるＣＬＫ信号を駆動するのに使用される。この例では、ターゲットＩＣ１６０４はＤＩＯおよびＣＬＫ信号用の２つの専用ピンを必要とする。
【００９８】
図１６−２０の上記したシステムにはインターフェイスがＤＩＯおよびＣＬＫ用のせいぜい２つの専用ＩＣピンしか必要とせず、そしてＤＩＯ用の少なくとも１つの専用ピンを必要とするようなＰＳＣおよびＳＰＣ回路を一緒にインターフェイス接続するさまざまな方法が示されている。したがって、本開示はターゲットＩＣ上に１つまたは２つの専用ピンしか必要としないことがわかる。
【００９９】
以下の図面は本開示の代替バージョンを例示しており、ＳＰＣ３０２およびＰＳＣ３０６回路はＩ／Ｏ回路５０４および７１０を使用しない。
【０１００】
図２１Ａは代替ＰＳＣ回路２１０２にインターフェイス接続されたＪＴＡＧコントローラ１００を示す。Ｉ／Ｏ回路５０４がＰＳＣ回路２１０２内で使用されないことを除けばＰＳＣ回路２１０２は図５ＡのＰＳＣ３０２と同じである。図からお判りのように、Ｉ／Ｏ回路５０４がないためＰＩＳＯ５０２からのＯＵＴ出力は出力バッファ１１０４を介してＰＳＣから直接出力される。また、Ｉ／Ｏ回路５０４がないためＴＤＯ入力は入力バッファ１３０８を介して直接ＪＴＡＧコントローラ１００のＴＤＩ入力へ行く。図２１Ｂからお判りのように、代替ＰＳＣ２１０２およびＪＴＡＧコントローラ１００の動作タイミングは図５ＡのＰＳＣ３０２およびＪＴＡＧコントローラ１００の図５Ｂのタイミング動作と同じである。
【０１０１】
図２２ＡはターゲットＩＣ２２０４のタップドメイン１０４にインターフェイス接続された代替ＳＰＣ回路２２０２を示す。Ｉ／Ｏ回路７１０がＳＰＣ回路２２０２内で使用されないことを除けばＳＰＣ回路２２０２は図７ＡのＳＰＣ３０２と同じである。図からお判りのように、Ｉ／Ｏ回路７１０がないためＳＰＣ２２０２へのＯＵＴ出力は第２の入力バッファ１３０８を介してＭＲＳ７０８およびＳＩＰＯ７０２へ直接入力される。また、Ｉ／Ｏ回路７１０がないためタップドメイン１０４からのＴＤＯ出力は３状態バッファ１１１０を介して直接ＳＰＣ２２０２から出力される。バッファ２２０６はＴＳＭ７０６からのＯＥ信号によりイネーブルされる。プルアップ（ＰＵ）エレメント１１１４がＩＮ信号に接続されており、上記した理由により外部駆動されない時に、ＩＮ信号をハイとする。図２２Ｂに示すように、代替ＳＰＣ２２０２およびタップドメイン１０４の動作タイミングは図７ＡのＳＰＣ３０２およびタップドメイン１０４の図７Ｂのタイミング動作と同じである。
【０１０２】
図２３ＡはＪＴＡＧコントローラ１００および代替ＰＳＣ２１０２がＯＵＴ，ＣＬＫ，およびＴＤＯ信号を介してターゲットＩＣ２３０２の代替ＳＰＣ２２０２およびタップドメイン１０４に接続され通信する全体の構成を示す。簡単にするために、通信プロセスに伴う代替ＰＳＣ２１０２およびＳＰＣ２２０２の回路素子しか示されていない。図からお判りのように、ＰＳＣ２１０２からのＯＵＴ出力はＳＰＣ２２０２のＩＮ入力に直接接続され、タップドメイン１０４からのＴＤＯ出力はＪＴＡＧコントローラ１００のＴＤＩ入力に直接入力される。図２３Ｂからお判りのように、図２３Ａの構成の動作タイミングは図１４Ａの構成の図１４Ｂのタイミング動作と同じである。
【０１０３】
図２４は図１６のシステムの上記したクロッキング構成を例示している。図２４において、ＰＳＣ３０２の替わりに代替ＰＳＣ２１０２が使用され、ＳＰＣ３０６の替わりに代替ＳＰＣ２２０２が使用される。図からお判りのように、ＩＣ２４０２はＯＵＴ，ＴＤＯ，およびＣＬＫ用の３つの専用ピンを必要とする。
【０１０４】
図２５は図１７システムの上記したクロッキング構成を例示している。図２５において、ＰＳＣ３０２の替わりに代替ＰＳＣ２１０２が使用され、ＳＰＣ３０６の替わりに代替ＳＰＣ２２０２が使用される。図からお判りのように、ＩＣ２５０２はＯＵＴ，ＴＤＯ，およびＣＬＫ用の３つの専用ピンを必要とする。
【０１０５】
図２６は図１８システムの上記したクロッキング構成を例示している。図２６において、ＰＳＣ３０２の替わりに代替ＰＳＣ２１０２が使用され、ＳＰＣ３０６の替わりに代替ＳＰＣ２２０２が使用される。図からお判りのように、ＩＣ２６０２はＯＵＴおよびＴＤＯ用の２つの専用ピンを必要とする。
【０１０６】
図２７は図１９システムの上記したクロッキング構成を例示している。図２７において、ＰＳＣ３０２の替わりに代替ＰＳＣ２１０２が使用され、ＳＰＣ３０６の替わりに代替ＳＰＣ２２０２が使用される。図からお判りのように、ＩＣ２７０２はＯＵＴおよびＴＤＯ用の２つの専用ピンを必要とする。
【０１０７】
図２８は図２０システムの上記したクロッキング構成を例示している。図２８において、ＰＳＣ３０２の替わりに代替ＰＳＣ２１０２が使用され、ＳＰＣ３０６の替わりに代替ＳＰＣ２２０２が使用される。図からお判りのように、ＩＣ２４０２はＯＵＴ，ＴＤＯ，およびＣＬＫ用の３つの専用ピンを必要とする。
【０１０８】
図２４−２８の上記したシステム例はインターフェイスがＯＵＴ，ＴＤＯおよびＣＬＫ用のせいぜい３つの専用ＩＣピンしか必要とせずＯＵＴおよびＴＤＯ用の少なくとも２つの専用ピンを必要とするような代替ＰＳＣ２１０２およびＳＰＣ２２０２回路を一緒にインターフェイス接続するさまざまな方法を示している。したがって、本開示の代替バージョンはターゲットＩＣ上に２つまたは３つの専用ピンしか必要としないことがわかる。
【０１０９】
図１４Ａ，１４Ｂ，１４Ｃ，２３Ａ，および２３Ｂについて、ＣＫＩＮおよびＴＣＫ信号の周波数はＣＬＫ信号を駆動するソースの周波数の半分である。したがって、ＪＴＡＧコントローラおよびタップドメインはＣＬＫソースの周波数の半分で一緒に動作する。たとえば、ＣＬＫ周波数が１００ＭＨｚであれば、ＪＴＡＧ動作は５０ＭＨｚで生じる。このようにして、標準５ピンＪＴＡＧインターフェイスの半分の周波数で動作できる減少ピンインターフェイスを提供するという、背景技術の説明で説明をした本開示の第２の利点が達成される。
【０１１０】
本開示のＳＰＣ３０６および２２０２はＩＣ内のタップドメインをアクセスするのに使用されるものとして示されてきたが、ＳＰＣはＩＣ内のタップドメインのアクセスに限定されない。事実、所望により、ＳＰＣはＩＣの組込コア回路内で使用してこれらの組込コア回路内に存在するタップドメインをアクセスすることができる。ＩＣ内でＳＰＣをどのように使用するかという本開示の教示は十分詳細なものであり、当業者ならばＳＰＣを埋込コア内で使用することもできる。
【０１１１】
当業者ならば、特許請求された発明の範囲を逸脱することなく、記述された実施例にさまざまな追加、削除、置換または他の修正を行うことができる。
【図面の簡単な説明】
【０１１２】
【図１】ＪＴＡＧコントローラおよびターゲットＩＣ間の従来の５信号インターフェイスを示す図である。
【図２】５信号ＪＴＡＧバスおよびＮ信号デバッグ／トレースバスを介してターゲットＩＣにインターフェイス接続された従来のＪＴＡＧコントローラを示す図である。
【図３】本開示に従った２信号ＪＴＡＧバスを介してターゲットＩＣにインターフェイス接続されたＪＴＡＧコントローラを示す図である。
【図４Ａ】ターゲットＩＣ内の従来のさまざまなタップドメイン構成を示す図である。
【図４Ｂ】ターゲットＩＣ内の従来のさまざまなタップドメイン構成を示す図である。
【図４Ｃ】ターゲットＩＣ内の従来のさまざまなタップドメイン構成を示す図である。
【図５Ａ】本開示のパラレル・ツー・シリアルコントローラ（ＰＳＣ）回路の例を示す図である。
【図５Ｂ】図５ＡのＰＳＣ回路の動作のタイミング図である。
【図６Ａ】図５ＡのＰＳＣ回路内のコントローラの回路例を示す図である。
【図６Ｂ】図６Ａのコントローラの動作のタイミング図である。
【図７Ａ】本開示のシリアル・ツー・パラレルコントローラ（ＳＰＣ）回路の例を示す図である。
【図７Ｂ】図７ＡのＳＰＣ回路の動作のタイミング図である。
【図８Ａ】図７ＡのＳＰＣ回路内のコントローラの回路例を示す図である。
【図８Ｂ】図８Ａのコントローラの動作のタイミング図である。
【図９Ａ】図７ＡのＳＰＣ回路内のマスターリセットおよびシンクロナイザ（ＭＲＳ）回路の例を示す図である。
【図９Ｂ】図９ＡのＭＲＳ回路の動作の状態図である。
【図９Ｃ】図９ＡのＭＲＳ回路の動作のタイミング図である。
【図１０】ＩＥＥＥ標準１１４９．１タップコントローラ状態機械の状態図である。
【図１１Ａ】ＰＳＣおよびＳＰＣ回路内の入出力回路（Ｉ／Ｏ）の回路例を示す図である。
【図１１Ｂ】図１１ＡのＩ／Ｏ回路に対するシグナリングケース示す図である。
【図１２】図１１Ｂの各シグナリングケースをより詳細に示す図である。
【図１３Ａ】図１１のＩ／Ｏ回路の適切なＴＤＩまたはＩＮ信号出力を決定する回路例を示す図である。
【図１３Ｂ】データＩ／Ｏ（ＤＩＯ）信号の電圧レベルに基づいて適切なＴＤＩまたはＩＮ信号出力を決定するのに使用される真理値表を示す図である。
【図１４Ａ】本開示に従ったＪＴＡＧコントローラのＰＳＣおよびターゲットＩＣのＳＰＣ間の２信号接続を示す図である。
【図１４Ｂ】ＪＴＡＧコントローラおよびターゲットＩＣのタップドメイン間でＪＴＡＧトランザクションを行う図１４ＡのＰＳＣおよびＳＰＣ回路の動作のタイミング図である。
【図１４Ｃ】ＪＴＡＧコントローラおよびターゲットＩＣのタップドメイン間でシングルビット・データレジスタ・スキャンを行う図１４ＡのＰＳＣおよびＳＰＣ回路の動作のタイミング図である。
【図１５】ケーブル遅延を補償するように動作するテキサスインスツルメンツＳＮ７４ＡＣＴ８９９０ＪＴＡＧバス・コントローラチップを示す図である。
【図１６】ＣＬＫ信号がＪＴＡＧコントローラ内のクロックソースにより駆動される本開示の２ピン実施例を示す図である。
【図１７】ＣＬＫ信号がターゲットＩＣの内部クロックソースにより駆動される本開示の２ピン実施例を示す図である。
【図１８】ＣＬＫ信号がターゲットＩＣへ機能的に入力する外部クロックソースにより駆動される本開示の２ピン実施例を示す図である。
【図１９】ＣＬＫ信号がＩＣから機能的に出力するターゲットＩＣの内部クロックソースにより駆動される本開示の１ピン実施例を示す図である。
【図２０】ＣＬＫ信号がＪＴＡＧコントローラおよびターゲットＩＣの外部クロックソースにより駆動される本開示の２ピン実施例を示す図である。
【図２１Ａ】本開示のパラレル・ツー・シリアルコントローラ（ＰＳＣ）回路の代替回路例を示す図である。
【図２１Ｂ】図５Ａの代替ＰＳＣ回路の動作のタイミング図である。
【図２２Ａ】本開示のシリアル・ツー・パラレルコントローラ（ＳＰＣ）回路の代替回路例を示す図である。
【図２２Ｂ】図７ＡのＳＰＣ回路の動作のタイミング図である。
【図２３Ａ】本開示に従った図２１ＡのＪＴＡＧコントローラの代替ＰＳＣおよび図２２ＡのターゲットＩＣの代替ＳＰＣ間の３信号接続を示す図である。
【図２３Ｂ】ＪＴＡＧコントローラおよびターゲットＩＣのタップドメイン間でＪＴＡＧトランザクションを行う代替図２１ＡのＰＳＣおよび図２２ＡのＳＰＣの動作のタイミング図である。
【図２４】ＣＬＫ信号がＪＴＡＧコントローラ内のクロックソースにより駆動される本開示の代替バージョンの３ピン実施例を示す図である。
【図２５】ＣＬＫ信号がターゲットＩＣの内部クロックソースにより駆動される本開示の代替バージョンの３ピン実施例を示す図である。
【図２６】ＣＬＫ信号がターゲットＩＣへ機能的に入力する外部クロックソースにより駆動される本開示の代替バージョンの２ピン実施例を示す図である。
【図２７】ＣＬＫ信号がＩＣから機能的に出力するターゲットＩＣの内部クロックソースにより駆動される本開示の代替バージョンの２ピン実施例を示す図である。
【図２８】ＣＬＫ信号がＪＴＡＧコントローラおよびターゲットＩＣの外部のクロックソースにより駆動される本開示の代替バージョンの３ピン実施例を示す図である。
【図１】
2008538236.tif 000003
【図２】
2008538236.tif 000004
【図３】
2008538236.tif 000005
【図４Ａ】
2008538236.tif 000006
【図４Ｂ】
2008538236.tif 000007
【図４Ｃ】
2008538236.tif 000008
【図５Ａ】
2008538236.tif 000009
【図５Ｂ】
2008538236.tif 000010
【図６Ａ】
2008538236.tif 000011
【図６Ｂ】
2008538236.tif 000012
【図７Ａ】
2008538236.tif 000013
【図７Ｂ】
2008538236.tif 000014
【図８Ａ】
2008538236.tif 000015
【図８Ｂ】
2008538236.tif 000016
【図９Ａ】
2008538236.tif 000017
【図９Ｂ】
2008538236.tif 000018
【図９Ｃ】
2008538236.tif 000019
【図１０】
2008538236.tif 000020
【図１１Ａ】
2008538236.tif 000021
【図１１Ｂ】
2008538236.tif 000022
【図１２】
2008538236.tif 000023
【図１３Ａ】
2008538236.tif 000024
【図１３Ｂ】
2008538236.tif 000025
【図１４Ａ】
2008538236.tif 000026
【図１４Ｂ】
2008538236.tif 000027
【図１４Ｃ】
2008538236.tif 000028
【図１５】
2008538236.tif 000029
【図１６】
2008538236.tif 000030
【図１７】
2008538236.tif 000031
【図１８】
2008538236.tif 000032
【図１９】
2008538236.tif 000033
【図２０】
2008538236.tif 000034
【図２１Ａ】
2008538236.tif 000035
【図２１Ｂ】
2008538236.tif 000036
【図２２Ａ】
2008538236.tif 000037
【図２２Ｂ】
2008538236.tif 000038
【図２３Ａ】
2008538236.tif 000039
【図２３Ｂ】
2008538236.tif 000040
【図２４】
2008538236.tif 000041
【図２５】
2008538236.tif 000042
【図２６】
2008538236.tif 000043
【図２７】
2008538236.tif 000044
【図２８】
2008538236.tif 000045