"2またはそれ以上の試験アクセスポートTAPへのアクセスを提供するTAPスイッチであって、前記TAPスイッチによって受け取られたシリアル命令に含まれる選択コードに応答して、前記TAPのうちの選択された1つへクロック信号を提供するように構成された第1の回路と、前記TAPスイッチによって受け取られたシリアル命令を前記選択されたTAPに渡すように構成された命令レジスタIRを備える第2の回路と、前記選択コードに応答して、前記選択されたTAPから受け取られたシリアルデータを、前記TAPスイッチの出力へ転送するように構成された第3の回路とを備えるTAPスイッチ。前記IRは、選択TAP命令に応答して、前記選択コードをキャプチャするように構成された請求項1に記載のTAPスイッチ。前記第2の回路は更に、前記IRによってキャプチャされた前記選択コードを格納し、かつ、前記選択コードを前記第1の回路および前記第3の回路へ提供するように構成されたラッチ回路を備える請求項2に記載のTAPスイッチ。前記第2の回路は更に、データスキャン命令に応答して、前記TAPスイッチによって受け取られたシリアルデータを、前記選択されたTAPへ渡すように構成されたゼロビットのデータレジスタDRを備える請求項1に記載のTAPスイッチ。前記第2の回路は更に、バイパス命令に応答して、前記TAPスイッチによって受け取られたシリアルデータを、前記TAPスイッチの出力へ方向転換するように構成されたバイパスDRを備える請求項4に記載のTAPスイッチ。前記バイパス命令は、TAPスイッチバイパス状態を示す選択コードに相当する請求項5に記載のTAPスイッチ。前記第3の回路は、前記TAPスイッチバイパス状態を示す選択コードに応答して、前記方向転換されたシリアルデータを、前記バイパスDRから前記TAPスイッチの出力へ転送するように構成された請求項6に記載のTAPスイッチ。前記第2の回路は、IR命令に応答して前記IRを選択し、前記データスキャン命令に応答して前記ゼロビットのDRを選択し、前記バイパス命令に応答して前記バイパスDRを選択するように構成された状態機械ロジックを更に備える請求項5に記載のTAPスイッチ。前記第1の回路は、前記選択コードにおける変化に応答して、前記クロック信号を、前記TAPのうちの新たに選択された1つへ提供するように構成され、前記IRは、前記TAPスイッチによって引き続き受け取られたシリアル命令を、前記新たに選択されたTAPへ渡すように構成され、前記第3の回路は、前記変化した選択コードに応答して、前記新たに選択されたTAPから引き続き受け取られたシリアルデータを、前記TAPスイッチの出力へ転送するように構成された請求項1に記載のTAPスイッチ。前記第1の回路は、デマルチプレクサ回路を備え、前記第3の回路は、マルチプレクサ回路を備える請求項1に記載のTAPスイッチ。それぞれが試験アクセスポートTAPを有する複数の電子回路部品と、それぞれのTAPへのアクセスを提供するTAPスイッチとを備え、前記TAPスイッチは、前記TAPスイッチによって受け取られたシリアル命令に含まれる選択コードに応答して、前記TAPのうちの選択された1つへクロック信号を提供するように構成された第1の回路と、前記TAPスイッチによって受け取られたシリアル命令を前記選択されたTAPに渡すように構成された命令レジスタIRを備える第2の回路と、前記選択コードに応答して、前記選択されたTAPから受け取られたシリアルデータを、前記TAPスイッチの出力へ転送するように構成された第3の回路とを備える電子システム。電子回路部品はそれぞれ、システムオンチップ集積回路に関連付けられたコアを備える請求項11に記載の電子システム。電子回路部品はそれぞれ、キャリア上にマウントされた集積回路を備える請求項11に記載の電子システム。前記第2の回路は更に、データスキャン命令に応答して、前記TAPスイッチによって受け取られたシリアルデータを、前記選択されたTAPへ渡すように構成されたゼロビットのデータレジスタDRを備える請求項11に記載の電子システム。前記第2の回路は更に、バイパス命令に応答して、前記TAPスイッチによって受け取られたシリアルデータを、前記TAPスイッチの出力へ方向転換することによって、前記選択されたTAPを回避するように構成されたバイパスDRを備える請求項14に記載の電子システム。前記第3の回路は、前記バイパス命令に応答して、前記バイパスDRから方向転換されたシリアルデータを、前記TAPスイッチの出力へ転送するように構成された請求項15に記載の電子システム。前記第2の回路は更に、IR命令に応答して前記TAPスイッチIRを選択し、前記データスキャン命令に応答して前記ゼロビットDRを選択し、前記バイパス命令に応答して前記バイパスDRを選択するように構成された状態機械ロジックを備える請求項15に記載の電子システム。前記第1の回路は、前記選択コードにおける変化に応答して、前記クロック信号を、前記TAPのうちの新たに選択された1つへ提供するように構成され、前記TAPスイッチIRは、前記TAPスイッチによって引き続き受け取られたシリアル命令を、前記新たに選択されたTAPへ渡すように構成され、前記第3の回路は、前記変化した選択コードに応答して、前記新たに選択されたTAPから引き続き受け取られたシリアルデータを、前記TAPスイッチの出力へ転送するように構成された請求項11に記載の電子システム。前記TAPスイッチのIRは、選択TAP命令に応答して、前記選択コードをキャプチャするように構成された請求項11に記載の電子システム。前記選択TAP命令は、nからなるバイナリ長さを有するバイパス命令に含まれる選択コードを備え、nは、前記TAPに含まれる最長のIRビット長さに等しい請求項19に記載の電子システム。前記第2の回路は更に、前記TAPスイッチIRによってキャプチャされた選択コードを格納し、かつ、前記選択コードを、前記第1の回路および前記第3の回路へ提供するように構成されたラッチ回路を備える請求項19に記載の電子システム。2またはそれ以上の試験アクセスポートTAPへのアクセスを、TAPスイッチによって制御する方法であって、前記TAPスイッチによって受け取られたシリアル命令に含まれる選択コードに応答して、前記TAPのうちの選択された1つへクロック信号を提供することと、前記TAPスイッチによって受け取られたシリアル命令を、前記選択されたTAPに渡すことと、前記選択コードに応答して、前記選択されたTAPから受け取られたシリアルデータを、前記TAPスイッチの出力へ転送することとを備える方法。選択TAP命令に応答して、前記選択コードを、前記TAPスイッチ内に格納することを更に備える請求項22に記載の方法。データスキャン命令に応答して、前記TAPスイッチによって受け取られたシリアルデータを、前記選択されたTAPへ渡すことを更に備える請求項22に記載の方法。バイパス命令に応答して、前記TAPスイッチによって受け取られたシリアルデータを、前記TAPスイッチの出力へ方向転換することを更に備える請求項24に記載の方法。前記選択コードにおける変化に応答して、前記TAPのうちの新たに選択された1つへ前記クロック信号を提供することと、前記TAPスイッチによって引き続き受け取られたシリアル命令を、前記新たに選択されたTAPに渡すことと、前記変化した選択コードに応答して、前記新たに選択されたTAPから引き続き受け取られたシリアルデータを、前記TAPスイッチの出力へ転送することとを更に備える請求項22に記載の方法。電子システムにおいて、2またはそれより多いアクセスポートTAPのうちの1つにアクセスする方法であって、TAPスイッチによって受け取られたシリアル命令に含まれる選択コードに応答して、前記TAPのうちの1つを選択することと、前記TAPスイッチによって受け取られたシリアル情報を、前記選択されたTAPへ渡すことと、前記選択されたTAPから受け取られたシリアルデータを、前記TAPスイッチの出力へ転送することとを備える方法。前記TAPのうちの1つを選択することは、前記選択コードに応答して、前記TAPのうちの選択された1つへ、アクティブなクロック信号を提供することを備える請求項27に記載の方法。前記TAPのうちの選択された1つへアクティブなクロック信号を提供することは、前記TAPスイッチ内の選択コードをキャプチャすることと、前記キャプチャされた選択コードに関連付けられたTAPに対応するTAPスイッチのクロック信号出力を起動することとを備える請求項28に記載の方法。前記TAPスイッチ内の選択コードをキャプチャすることは、前記選択コードが、前記TAPスイッチの命令レジスタIR内にロードされるまで、前記選択TAP命令の各ビットを、前記TAPでスキャンすることと、前記TAPスイッチIRにロードされた選択コードを格納することとを備える請求項29に記載の方法。前記選択コードが、前記TAPスイッチの命令レジスタIR内にロードされるまで、前記選択TAP命令の各ビットを、前記TAPでスキャンすることは、前記選択TAP命令のnビットを、前記タップでスキャンすることを備え、nは、前記TAPに含まれる最長のIRビット長さに等しい請求項30に記載の方法。前記選択コードにおける変化に応答して、異なるTAPを新たに選択することと、前記TAPスイッチによって引き続き受け取られたシリアル情報を、前記新たに選択されたTAPへ渡すことと、前記新たに選択されたTAPから引き続き受け取られたシリアルデータを、前記TAPスイッチの出力へ転送することとを更に備える請求項27に記載の方法。前記TAPスイッチによって受け取られたバイパス命令に応答して、前記選択されたTAPをバイパスすることを更に備える請求項27に記載の方法。前記選択されたTAPをバイパスすることは、前記バイパス命令に応答して、前記TAPスイッチによって受け取られたシリアルデータを、前記TAPスイッチの出力へ方向転換することを備える請求項33に記載の方法。前記TAPスイッチによって受け取られたシリアル情報を前記選択されたTAPへ渡すことは、データスキャン命令に応答して、前記TAPスイッチによって受け取られたシリアルデータを、前記TAPスイッチに含まれるゼロビットのデータレジスタを経由して、前記選択されたTAPへ渡すことと、命令レジスタIR命令に応答して、前記TAPスイッチによって受け取られたシリアル命令を、前記TAPスイッチに含まれるIRを経由して、前記選択されたTAPへ渡すこととを備える請求項27に記載の方法。電子システムにおける2またはそれ以上の試験アクセスポートTAPへのアクセスを制御するコンピュータプログラム製品であって、TAP命令レジスタビット長情報を処理するプログラムコードと、前記TAP命令レジスタビット長情報に応答して、選択コードを含むシリアル命令を生成するプログラムコードとを備え、前記選択コードは、TAPスイッチに対して、前記TAPのうちの1つを選択させるように構成されたコンピュータプログラム製品。引き続き生成された命令レジスタ関連命令に前記選択コードを含めるプログラムコードを更に備える請求項36に記載のコンピュータプログラム製品。前記選択コードが前記TAPスイッチでスキャンされた後、少なくとも2つの試験クロックサイクルの間、前記TAPスイッチを、アイドル状態に維持するプログラムコードを更に備える請求項36に記載のコンピュータプログラム製品。図1は、試験アクセスポートTAPスイッチ12と、例えば集積回路IC14-18のような複数の試験可能な電子回路部品とを含む電子システム10の実施形態を例示する。システムIC14-18はそれぞれ、TAPスイッチ12との通信を容易にするためのTAP20-24を有する。特に、TAP20-24はそれぞれ、シリアル命令をキャプチャするための命令レジスタIR26-30と、シリアル化された試験データをキャプチャするためのデータレジスタDR32-36とを含む。一方、TAPスイッチ12は、電子システム10と、例えば、電子システム10に直接的に接続されているかまたは遠隔に接続されている試験システムまたはデバッグシステムのような電子システム外部のリソース図示せずとの間に、集中型シリアル試験インタフェースを提供する。TAPスイッチ12は、電子システム10に含まれているか、あるいは関連付けられた境界スキャンパスに位置する最初のデバイスである。TAPスイッチ12の集中アーキテクチャによって、TAPスイッチ12は、外部ソースから試験命令、データ、および制御情報を受け取り、かつ、選択されていないICの電源がオンされたかオフされたかに関わらず、ICTAP20-24のうちの選択された1つへ情報を転送することが可能となる。それゆえ、TAPスイッチ12は、例えばポータブル計算システムおよび無線通信システムのような低電力アプリケーションへ適合したシステムに含まれるのに適している。システムIC14-18はそれぞれ、システム10に関連付けられた特定の機能または機能のセットを可能にする。例えば、IC14-18は、1または複数のマイクロプロセッサ、デジタル信号プロセッサDSP、メモリデバイス、グラフィックデバイス、入力/出力デバイス、物理的アクセスデバイスPHY、コントローラ、アナログ-デジタルコンポーネントおよびデジタル-アナログコンポーネント等を備えうる。電子システム10は特に、例えばモバイル計算アプリケーションおよび無線通信アプリケーションのような低電力アプリケーションに適応され、幾つかの構成のうちの1つの形式をとることができる。例えば、電子システム10は、ボードまたはマルチチップモジュールMCMのようにキャリアについてIC14-18を相互接続することによって、あるいは、システムオンチップSoC設計内で、あるいはこれらの組み合わせで形成されうる。IC14-18は、ボード上にマウントされる個別のチップ、MCM上にマウントされる個別のダイ、またはSoC内の個別のコア、あるいはこれらの幾つかの組み合わせを備えうる。電子システム10が利用されるアプリケーションおよびIC14-18によってサポートされる特定の機能に関わらず、境界スキャンパスは、IC14-18がシステム10内で相互接続された後、IC14-18との通信を容易にするために使用される。システムIC14-18のおのおのと、TAPスイッチ12との間の境界スキャンインタフェースは、並行であるので、システム10に含まれるその他のICの電源オン状態に関わらず、特定のICがアクセスされ、起動され、観察される。すなわち、TAPスイッチ12は、他のICTAPの電源が投入された状態に関わらず、ICTAP20-24のうちの選択された1つと通信することができる。したがって、コンポーネント電力サイクルによる従来のデージーチェーン境界スキャン構成の使用における途絶は、システム10に含まれる選択された部品にアクセスし通信するための集中型ハブとしてTAPスイッチ12を用いることによって除去される。ICTAP20-24との選択的な通信を容易にするために、TAPスイッチ12の1つの実施形態は、選択回路38、デマルチプレクサ回路40、およびマルチプレクサ回路42を含む。TAPスイッチ12は、シリアル試験情報DI、モード選択信号MODE、および試験クロック信号CLKを外部リソースから受け取ることによって、電子システム10のための試験インタフェースとして機能する。オプションとして、TAPスイッチ12は、スイッチ12の非同期リセットのために試験リセット信号RESETを受信することができる。更に、TAPスイッチ12は、ICTAP20-24の選択された1つから受け取ったシリアル試験データDOと、試験中、IC14-18のうちの1または複数をシステムクロックと同期させるために使用されるオプションのリターンクロック信号RCLKとを出力する。どのICTAPが選択されるべきかを示す、TAPスイッチ12によって受け取られる命令である選択TAP命令に応答して、選択回路38は、例えば、選択TAP命令に追加または事前追加されたコードであり、選択TAP命令に含まれた選択コードをキャプチャする。その後、選択回路38は、選択コードを格納し、それをデマルチプレクサ回路40SELおよびマルチプレクサ回路42SELに与える。選択コードは、デマルチプレクサ回路40に、ICTAP20-24のうちの特定の1つにクロック信号を供給させ、それにより、TAPを選択する。すなわち、選択コードは、システム10に含まれる試験可能なIC14-18それぞれをユニークに識別する。このユニークなコードに応答して、デマルチプレクサ回路40は、テストクロック信号を受け取るために唯一のICTAPを選択する。例えば、デマルチプレクサ回路40は、そこに含まれているICA14に関連付けられた選択コードを有するTAP選択命令に応答して、試験クロック信号CLKAをICA14へ提供する。TAPスイッチ12からアクティブな試験クロック信号を受け取らないTAPはアイドル状態を維持する一方、選択されたTAPがアクセスされるこの例では、ICB16およびICC18のTAP22およびTAP24は、クロックされない。選択コードはまた、マルチプレクサ回路42に、選択されたTAPから受け取られたシリアルデータの変更のないバージョンを、TAPスイッチ12のDO出力へ転送させる。試験可能な各IC14-17は、TAPスイッチ12へ並列に接続されているので、TAPスイッチ12によって、外部の試験システムが、システム10に含まれる他のICの電源オン状態に関わらず、個々のTAPを動的に選択し、独立して通信することを可能とする。図2は、TAPスイッチ12によってICTAPにアクセスするためのプログラムロジックの1つの実施形態を示す。このプログラムロジックは、TAPスイッチ12が、選択コードに対応するICTAPを選択することで始まるステップ100。この選択コードは、例えば選択TAP命令のように、TAPスイッチ12によって受け取られたシリアル命令に含まれる。TAPスイッチ12は、この選択コードをデマルチプレクサ回路40へ提供する。デマルチプレクサ回路40は、アクティブな試験クロックを、対応するICTAPへ提供し、TAPを選択する。適切なICTAPが選択された後、TAPスイッチ12は、スイッチ12によって外部ソースから受け取られたシリアル情報を、選択されたTAPへ渡すステップ102。このシリアル情報は、命令、データ、あるいは制御情報を含むことができる。TAPスイッチ12によって、選択されたICTAPから受け取られたシリアルデータDICA,DICB、またはDICCは、変えられることなくマルチプレクサ回路42によって、スイッチ12のDO出力へ転送されるステップ104。オプションとして、選択されたTAPによって出力された試験クロック信号RCLKA、RCLKB、またはCLKCもまた、TAPスイッチによって受け取られる。それゆえ、選択されたICTAPから受け取られた情報は、分析のために、TAPスイッチ12によって外部システムへ提供される。図2に例示されるプログラムロジックは、選択コードに変化が生じた場合毎に実行され、これによって、別のICTAPがアクセスされるべきであることを示す。図3は、TAPスイッチ12の実施形態を示す。TAPスイッチ12の試験インタフェースは、IEEE1149.1境界スキャン規格に完全に準拠している。TAPスイッチ12はIEEE1149.1に完全に準拠しているので、外部ソースからスイッチ12によって受け取られたシリアル試験情報は、スイッチ12によるいかなる復号も操作も必要とされることなく、単純に、ICTAP20-24のうちの選択された1つへ渡される。このように、IEEE1149.1準拠の動作は、TAPスイッチ12によって完全にサポートされている。TAPスイッチ12の選択回路38は、状態機械44、ゼロビットデータレジスタDR46、1ビットバイパスDR48、2ビットIR50、およびラッチ回路52を備えている。状態機械44は、TAPスイッチ12のDI入力からシリアル情報を受け取るために、どのレジスタが選択されているかを制御するCTRL。例えばIEEE1149.1準拠の選択-DR、キャプチャ-DR、シフト-DR、Exit-DR、ポーズ-DR、またはアップデート-DR動作のようなデータスキャン命令を状態機械44が検出することに応じて、ゼロビットDR46が選択される。データスキャン動作のために、ゼロビットパススルーパスを利用することによって、従来のTAPコントローラに関連付けられた1または複数のバイパスビットを考慮することなく、シリアル情報が、TAPスイッチ12のDI入力から、ゼロビットDR46を経由して、選択されたTAP図示せずへ渡される。これによって、性能向上が図られる。状態機械44が、バイパス命令を検知することに応答して、1ビットバイパスDR48が選択される。バイパス命令に応答して、TAPスイッチ12によって受け取られたシリアル命令が、マルチプレクサ回路42を経由して、スイッチ12のDI入力からDO出力へ方向転換される。それゆえ、選択されたTAPは、TAPスイッチ12がバイパスモードにある場合、何れのシリアル情報をも受け取らない。一つの例では、現在のシステム例示では、バイパス動作を示すために、例えば‘11’のように、選択コードが全て論理1に設定される。‘11’選択コードが、マルチプレクサ回路42へ提供されている場合、回路42は、1ビットバイパスDR48の出力をTAPスイッチ12のDO出力へ接続し、もって、選択されたTAPを回避する。例えばIEEE1149.1準拠の選択-IR、キャプチャ-IR、シフト-IR、Exit-IR、ポーズ-DR、またはアップデート-IR動作のような命令レジスタ命令を状態機械44が検出することに応じて、2ビットIR50が選択される。このシステム例では、TAPスイッチIR50は、25ビットの幅を持っている。2ビットIR50は、IR命令に含まれている選択コードを保持する。一般に、TAPスイッチIR50のビット幅は、TAPスイッチ12によってアクセスされる試験可能なICの数の関数である。例えば、TAPスイッチIR50が3ビットの幅を持っている場合、バイパスモードを示す1つの選択コード状態を残しながら、最大7つのICTAPがユニークに識別され、TAPスイッチ12によってアクセスされる。ラッチ回路52は、2ビットISR50にロードされた選択コード値を格納し、デマルチプレクサ回路40およびマルチプレクサ回路42に選択コードSELを与える。1つの実施形態では、ラッチ回路52は、ラッチデバイス図示せずに接続されたレジスタを備える。状態機械44は、スイッチ12の現在の状態、モード選択信号MODE、および試験クロック信号CLKにおける遷移に応答して、TAPスイッチ12を、statetostateから遷移させる。図4は、TAPスイッチ状態機械44に関連付けられた状態推移ロジックの実施形態を示す。TAPスイッチ12が電源オンまたはリセットされると、状態機械44は、例えば、IEEE1149.1試験ロジックリセット状態のようなリセット状態200へ入る。モード信号が非アクティブである限り、TAPスイッチ12はリセット状態200を維持する。モード信号の変化に応答して、TAPスイッチ12がリセット状態200から出た場合、状態機械44は、選択TAP状態220へ移行する。選択TAP状態202にある間、選択コードが、既に説明したようにして、TAPスイッチIR50でスキャンしたことに応答して、TAPスイッチ12は、アクセスするための特定のTAPを選択する。そして、状態機械44は、例えばIEEE1149.1RunTest/Idle状態のようなアイドル状態204へ移行する。状態機械44は、TAPスイッチ12がアイドルであり続けるべきであることをモード信号が示す限り、アイドル状態204を維持する。最小限、スイッチ12が選択コードを格納することができ、かつ、電力サイクルの結果としてTest-Logic-Reset状態に入った場合、新たに選択されたTAPTAP22または24が、RunTest/Idle状態になることを保証するために、十分な数の試験クロックサイクルの間、状態機械44は、TAPスイッチ12をアイドル状態204に保つ。IR命令を示すモード信号に応答して、状態機械はIR状態206に入る。例えば、IEEE1149.1選択-IR動作は、状態機械44をIR状態206に移行させる。例えば、IEEE1149.1キャプチャ-IR動作、シフト-IR動作、Exit-IR動作、ポーズ-IR動作、またはアップデート-IR動作のようなIR命令が実行されているとモード信号が示す限り、状態機械44は、TAPスイッチ12を、IR状態206に維持させる。その後の選択TAP命令は、状態機械44を、選択TAP状態202へ戻させる一方、リセットは、リセット状態200へ戻させる。DR命令を示すモード信号に応答して、状態機械44は、DR状態208に移行する。例えば、IEEE1149.1選択-DRスキャン動作は、状態機械44を、DR状態208に移行させる。例えばIEEE1149.1キャプチャ-DR動作、シフト-DR動作、Exit-DR動作、ポーズ-DR動作、またはアップデート-DR動作のようなDR命令が実行されていることをモード信号が示す限り、状態機械44は、TAPスイッチ12を、DR状態208に維持させる。その後の選択TAP命令は、状態機械44を、選択TAP状態202へ戻させる。一方、リセットは、リセット状態200へ戻させる。アイドル命令は、状態機械44を、IR状態206またはDR状態208のうちの何れかからアイドル状態204へ遷移させる。選択TAP命令がTAPスイッチ12によって認識された場合、TAPスイッチ12の現在の状態に関わらず、状態機械44は、スイッチ12を、選択TAP状態202に入らせる。それゆえ、TAPスイッチ12は、選択モードの変化に応じて、異なるTAPを選択することができ、もって、スイッチ12が、単一のデバッグセッション中に、多くのTAPへアクセスできるようにする。その結果、デバッグ性能が改善され、複雑さが低減される。図5は、TAPスイッチ12によるICTAP20-24へのアクセスを制御するプログラムロジックの1つの実施形態を示す。プログラムロジックは、選択コードに応答して、TAPスイッチ12が、TAP20-24のうちの選択された1つへクロック信号を提供することで始まるステップ300。この例において、その中に含まれる‘01’からなる選択コードを有する選択TAP命令は、試験クロック信号CLKBをTAP22にのみ提供することによって、TAPスイッチ12に対して、ICB16のTAP22を選択させる。TAPスイッチ12のIR50は、TAPスイッチ12によって受け取られたシリアル命令を、選択されたTAPへ渡すステップ302。マルチプレクサ回路42は、格納された選択コードに応答して、選択されたTAPからデータを受け取るように既にTAPスイッチ12を構成しているので、選択されたTAPから、TAPスイッチ12によって引き続き受け取られたシリアルデータは、スイッチ12のDO出力へ、変えられることなく転送されるステップ304。それゆえ、選択されたICTAPから受け取られたシリアルデータは、TAPスイッチ12によって、試験の一部として外部システムへ提供されうる。TAPスイッチ12が、選択TAP命令を認識する毎に、新たなICTAPが選択され、もって、スイッチ12が、単一のデバッグセッション中に、複数のICTAPを選択できるようにする。TAPスイッチ12を、既存のプログラムと下位互換性を持つようにするために、一般に、既存のデバッガソフトウェアプログラムに対する最小の修正のみが使用される。従来の境界スキャンデバッガプログラムは、1または複数のTAPインタフェースによって、システムの遠隔制御を可能にする。例えば、従来のデバッガプログラムは、プログラムのメモリへのダウンロード、デバッグプログラム実行の開始および停止、デバッグブレークポイントおよびウォッチポイントの設定、レジスタおよびメモリの内容の分析、および、リアルタイム実行データの収集を可能にする。従来のデバッガプログラムへの第1の修正は、選択TAP命令のためのサポートを加えることを含む。TAPスイッチ12が、リセット状態200から出るたび毎に、あるいは、別のICTAPがデバッグセッション中のアクセスのために選択された場合、選択TAP命令が発行される。選択TAP命令をサポートするために、デバッガプログラムは、3つの変数、すなわちシステムに含まれる最も長いTAPIRのビット長さ、TAPスイッチIR50のビット長さ、および、システム10に含まれるICTAP20-24の各々に関連付けられたユニークな選択コード、を知っている。デバッガプログラムは、TAPスイッチ12を初期化するための選択TAP命令を生成するためにプログラムに提供されたIRビット長さ情報を処理し、もって、スイッチ12に対して、TAP20-24のうちの1つを選択させる。最も長いTAPIRの長さは、システム10に含まれるTAPIR20-24の全てが、選択TAP命令シーケンス中にバイパスコードを用いてロードされることを保証するためにデバッガプログラムによって使用され、もって、TAPスイッチ12が、TAP20-24のうちの1つを選択している場合、何れのICTAPも、望まれない動作を実行しないことを保証する。例示目的のみのために、ICA14に関連付けられたTAPIR26は、4ビット幅であり、ICB16に関連付けられたTAPIR28は5ビット幅であり、ICC18に関連付けられたTAPIR30は4ビット幅である。それゆえ、ICB16に含まれるTAPIR28である最長のTAPIRは、常に、バイパス命令を用いて、選択TAP命令シーケンス中にロードされる。TAPスイッチIR50のビット長さは、デバッガプログラムへと提供され、正しい長さを有する選択コードが、選択TAP動作中に、TAPスイッチIR50へロードされるようになる。最後に、ICTAP20-24の各々に関連付けられたユニークな選択コードがデバッガプログラムへ提供され、TAP20-24は、TAPスイッチ12によってユニークに識別されるようになる。それゆえ、選択TAP命令は、たとえば、<xxyyyyy>のようなバイパス命令に含まれる。ここで、xxは、選択されるTAPに関連付けられた選択コードであり、yyyyは、バイパス命令に関連付けられたビットシーケンスである。一例では、xx=‘10’、yyyyy=‘11111’である。ここで‘10’は、ICC18に関連付けられたTAP24を示し、‘11111’は、バイパス命令を示す。当業者であれば、例えば、本システム10のICA14およびICC18に関連付けられたTAPIR26、30のように、システムに含まれる最も長いTAPIRよりも短いビット長さを有するTAPIRから、1または複数の前の論理1値が落とされることを理解するだろう。しかしながら、バイパス命令が、最も長いTAPIRの長さに等しいビット幅を有することを保証することによって、全てのTAPIR20-24が、バイパス命令によってロードされるだろう。したがって、選択TAPシーケンスが、TAPスイッチ12によって実行されている場合、ICTAP20-24のうちの全てにおいて、望まれないTAP動作は回避される。従来のデバッガプログラムに対する他の変更は、選択TAP命令シーケンス中、選択コードがTAPスイッチIR50へロードされた後、十分な数の試験クロックサイクルの間、TAPスイッチ12をアイドル状態204に保つことを含む。これは、選択コードをラッチ回路52へ適切に格納するための十分な時間をTAPスイッチ12に対して与える。例えば、TAPスイッチ12は、スイッチ12が選択TAP命令を認識した後、少なくとも2クロックサイクルの間、IEEE1149.1準拠のRunTest/Idle状態に維持される。TAPスイッチ12を、RunTest/Idle状態に維持することはまた、電力サイクルの結果として、以前に試験ロジックリセット状態に入った場合にRunTest/Idle状態にされるであろうことを保証する。従来のデバッガプログラムに対する第3の修正は、選択TAP命令に続いて発行されるIR命令へ選択コードを含め、これによって、IR動作中、TAPスイッチIR50のために備えることを含む。例えば、デバッガは、選択コードをIR命令に追加または事前追加するように修正される。更に、システム10に含まれる最も長いTAPIRのための選択TAP命令とは異なり、その後の全てのIR命令は、現在選択されているTAPに関連付けられたTAPIRの長さのみのために必要である。それゆえ、TAPスイッチ12のアーキテクチャは、その後の全ての命令が、現在選択されているTAPIRのビット長さと、TAPスイッチIR50のビット長さとを加えたものに等しい長さを持っているという点で性能を改善する。従来のデージーチェーン境界スキャン構成とは異なり、システム10に含まれるTAPIR26-30全ての合計長さは、その後のIR命令のために備える必要はない。応用および変形の上記範囲を念頭におき、本開示は、前述した説明によっても、あるいは、添付図面によっても限定されないと理解されるべきである。その代わり、本開示は、特許請求の範囲およびそれらの法的な均等物によってのみ限定される。"