JP2006510980A - 単一の試験アクセス・ポートを介する複数の試験アクセス・ポート・コントローラの接続 - Google Patents

単一の試験アクセス・ポートを介する複数の試験アクセス・ポート・コントローラの接続 Download PDF

Info

Publication number
JP2006510980A
JP2006510980A JP2004561840A JP2004561840A JP2006510980A JP 2006510980 A JP2006510980 A JP 2006510980A JP 2004561840 A JP2004561840 A JP 2004561840A JP 2004561840 A JP2004561840 A JP 2004561840A JP 2006510980 A JP2006510980 A JP 2006510980A
Authority
JP
Japan
Prior art keywords
tap
controllers
integrated circuit
signal
controller
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2004561840A
Other languages
English (en)
Inventor
オットー、スタインブッシュ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of JP2006510980A publication Critical patent/JP2006510980A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318558Addressing or selecting of subparts of the device under test
    • G01R31/318563Multiple simultaneous testing of subparts
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318555Control logic
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318572Input/Output interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Testing Or Calibration Of Command Recording Devices (AREA)
  • Sink And Installation For Waste Water (AREA)
  • Fire-Detection Mechanisms (AREA)
  • Burglar Alarm Systems (AREA)

Abstract

単一のチップ上の複数の試験アクセス・ポート(TAP)コントローラがアクセスされる一方、外部観測者に対して単一の試験アクセス・ポート・コントローラだけを有する外観を維持する。簡単な組合せ論理とともに、複数のTAPコントローラ(102、106)のそれぞれのデータ・レジスタ(212)に単一のビットを追加することによって、複数のTAPコントローラには、追加のチップ・ピンの必要なしに、かつ追加のTAPコントローラの必要なしにアクセスすることができる。複数のTAPコントローラの、それぞれのデータ・レジスタにおける追加されたビットの状態をトグルすると、TAPコントローラの1つを選択する、または複数のTAPコントローラのデイジー・チェーンにすることに関する制御情報が提供される。

Description

本発明は、一般に電子システムに関し、より詳細には単一の試験アクセス・ポートを介する単一の集積回路上の複数の試験アクセス・ポート・コントローラを接続するための方法および装置に関する。
半導体製造技術ならびにデジタル・システム・アーキテクチャにおける進歩により、過去において可能であったものよりはるかに多くの機能を組み込む、より大規模な集積回路を設計および製造することが可能になった。高いレベルの機能を生み出すために少なくともいくつかの大規模な機能ブロックを組み込む特定のクラスの集積回路は、システム・オン・チップ(System on Chip、SoC)と呼ばれる。そのようなSoC集積回路は、しばしば、プロセッサによって実行されるべきプログラム・コードを格納するためのメモリとともに1個以上のプロセッサと、様々な高いレベルの周辺機能を実施するための1個以上の回路ブロックとを含む。そのような大規模、複雑、かつ高機能の集積回路は、設計労力および試験の点で多くの課題を提示している。
SoCなどの複雑な集積回路を設計するために必要な時間および労力の量を低減するために、技術者は、しばしば機能ブロック(ときにはIPコアと呼ばれる)を再使用することを試みる。実際、多くの設計グループは、そのような事前設計されかつ事前検証されたIPコアのライブラリを維持する。そのような事前設計されかつ事前検証されたIPコアを使用する利点を維持するために、そのようなコアの内部設計を修正する必要がないことが好ましい。
試験性能に関する要件に対処するために、多くの努力により、IEEE標準1149.1のTest Access PortおよびBoundary Scan Architectureとして、電気電子技術者協会(Institute of Electrical and Electronic Engineers)によって成文化されたJTAG仕様などの試験アーキテクチャが開発された。試験アクセスは、様々なレジスタとともに試験アクセス・ポート(TAP)コントローラを介して、集積回路全体または集積回路の一部に提供される。TAPコントローラは、例えばIPコアなどの複数の大規模な機能ブロックのそれぞれに関連付けることができる。
いくつかの事前設計されたIPコアは、TAPコントローラを含むことができ、他の場合には、TAPコントローラは、1個以上のIPコアが製品設計に含まれるように技術者によって集積回路設計に追加されなければならない。
単一の集積回路上の複数の試験アクセス・ポート・コントローラにアクセスする方法および装置が必要とされる。
簡単に言えば、本発明の実施形態は、IEEE 1149.1標準に準拠することが重要である単一のチップ上の複数の試験アクセス・ポート(TAP)コントローラにアクセスするための回路および方法を提供する。本発明の実施形態は、外部観測者に対して単一の試験アクセス・ポートだけを有するという外観を維持することによって準拠することを達成する。簡単な結合的なグルー論理(combinational glue logic)とともに、複数のTAPコントローラのそれぞれのデータ・レジスタに単一のビットを追加することによって、複数のTAPコントローラには、追加のチップ・ピンの必要なしに、かつ階層またはマスタ・スレーブの組合せで配置された追加のTAPコントローラの必要なしにアクセスすることができる。
設計が、複数のIPコアおよび関連付けられるTAPコントローラを含むとき、どのTAPコントローラが、外部観測者との通信を可能とされるかを制御できることが望ましい。IEEE 1149仕様に準拠し、一方、集積回路に追加のピンを加えることなく、複数のTAPコントローラにアクセスすることが望ましい。本発明の様々な実施形態は、簡単な結合的な論理とともに、各TAPコントローラのデータ・レジスタ内にビットを含むことによって、単一の集積回路上の複数のTAPコントローラに単一のTAPコントローラを介して制御された方法でアクセスすることを可能にする。そのようなユーザ・データ・レジスタの追加は、IEEE 1149仕様に従って可能にされる。
「1つの実施形態」、「ある実施形態」、または類似の記述に対する本明細書の言及は、実施形態に関連して記載される特定の特色、構造、動作、または特徴が、本発明の少なくとも1つの実施形態に含まれることを意味する。したがって、本明細書におけるそのような表現または記述の出現は、必ずしも同一の実施形態をすべて指すものではない。さらに、様々な特定の特色、構造、動作、または特徴は、1つ以上の実施形態において任意の適切な方法で組み合わせることができる。
用語
頭文字ASICは、Application Specific Integrated Circuit(特定用途向け集積回路)を指す。
表現「IPコア」は、文脈に依存し、高いレベルの機能ブロック(例えば、概略、ハードウエア記述言語、ネットリスト)に関する設計、または高いレベルの機能ブロックの実際の物理的な実装を指すことができる。IPコアは、所望の機能を実装するための回路に加えて、試験およびデバッグ機能を実装するための回路を含むことができる。
頭文字JTAGは、Joint Test Action Groupを指す。IEEE(Institute of Electrical and Electron Engineers)は、IEEE標準1149.1、Test Access PortおよびBoundary Scan Architectureを是認している。
頭文字SoCは、チップ上のシステムを指し、SoCsは、複数のSoCである。
チップ、半導体デバイス、集積回路、LSIデバイス、モノリシック集積回路、ASIC、SoC、マイクロ電子デバイスという用語、および類似の表現は、この分野において交換可能に使用されることがある。マイクロ電子デバイスは、他を包含する最も広い用語であると考えられることができる。これらのマイクロ電子デバイスに関して、信号は、物理的に電子的な導電接続を介して、それらデバイスと他の回路要素との間で結合される。接続点は、時々、入力、出力、端子、ライン、ピン、パッド、ポート、インターフェース、または類似変形または組合せとして言及される。
JTAGに準拠するデバイスは、それぞれ、TCK、TDI、TDO、およびTMSと呼ばれる、クロック、入力データ、出力データ、およびモード選択のためのピンを含む。TCKは、システム・クロックとは別個のクロック信号を受けるJTAG準拠デバイスの端子であるTest Clock Inputと呼ばれる。TDIは、それを介してデータが、JTAG準拠デバイス内に移される端子であるTest Data Inと呼ばれる。TDOは、データがそれを介してJTAG準拠デバイスからシフトされる端子であるTest Data Outと呼ばれる。TMSは、どの1個以上の試験モードでJTAG準拠デバイスが動作するかを決定するためのデータを受信する端子であるTest Mode Selectと呼ばれる。JTAG準拠デバイスは、例えばマイクロプロセッサ、ASIC、またはSoCなどの任意のタイプの集積回路とすることができる。JTAG準拠デバイスは、TRST#と呼ばれるロー・アクティブ・リセット信号を受けるピンも含むことができる。JTAG準拠デバイスは、バウンダリ・スキャン・レジスタ(boundary scan register)およびTAPコントローラを含む。TAPコントローラは、JTAG機能を制御する状態マシン(state machine)である。バウンダリ・スキャン・レジスタは、いくつかのシリアル接続されたビットからなり、これらビットのそれぞれもまたJTAG準拠デバイスのデジタル・ピンに結合される。JTAG準拠デバイスは、データ・レジスタ、命令レジスタ、およびバイパス・レジスタなどの他のレジスタも含むことができる。
IEEE 1149.1仕様によって定義される論理機能は、バウンダリ・スキャン試験およびシステム・デバッグのために一般に使用される。
本発明の様々な実施形態は、IEEE 1149.1仕様への準拠を維持しつつ、一方、SoC内の1個以上の複数のTAPコントローラにアクセスするための機構を提供する。本発明の簡単な実施形態は、デフォルトTAPコントローラから第2のTAPコントローラへのプログラム可能なスイッチを可能にする。このように、外部からSoCを観測したときのSoCの状態は、開始時(すなわち、システムにリセットが適用された後)のIEEE 1149.1仕様に準拠する。より複雑な実施形態は、個別のTAPコントローラ間で前後の切り換え、およびすべてのTAPコントローラをともにデイジー・チェーンにするなどの構成を可能にする。
本発明のアプリケーションは、IEEE 1149.1仕様に示される標準に準拠しながら、単一のチップ上の複数のTAPコントローラへのアクセスを提供する。次に、各TAPコントローラは、試験論理(例えば、バウンダリ・スキャン試験)または関連付けされるIPコアのデバッグ特徴を制御する。本発明によれば、チップ上の特定の動作モードを強制するために、追加のコントローラ(例えば、トップ・レベルTAP、階層TAP、Master TAP、またはTAP Linking Module)、または追加のピンは必要としない。本発明の実施形態は、例えば標準のJTAGポートを介してプログラム可能である。本発明の実施形態は、TAPコントローラおよびIPコアの設計が、別個にまたは時間における異なる時点で行われる状況において特に有用である。本発明のいくつかの実施形態は、有利には、SoCに複数のTAPコントローラを集積するモジュール化され規模が変更可能なアプローチを提供する。
本発明の状況を理解するために、図1を参照し、IPインテグレータ(integrator)が1個のSoC上に2個以上のIPコアを設けることを望むことを考えてみる。IPコアは、プロセッサ、DSP、高度に集積された機能ブロック、または前述の任意の組合せであり得る。これらのIPコアのそれぞれは、TAPコントローラと関連のJTAGモジュールを有し、それ自体チップ上にあるなら、このTAP−JTAG組合せがIEEE 1149.1準拠デバイスを形成するように構成されると仮定する。JTAGインターフェースを介して2個のIPコアを観測する簡単な実装は、論理的なゲーティング、多重化、および図1に示されるような、「モード」ピンを使用することになる。
図1を参照すると、TAP1 102は、デフォルトTAPコントローラであり、モード・ピン104から受け取られるモード信号は、開始時にゼロに設定されると仮定する。TAP1 102およびTAP2 106へのTDIおよびTMS入力の両方は、論理的にゲーティングされ、モード信号が論理的にゼロであるとき、TAP1 102は、実際のTDIおよびTMS信号を受け、一方TAP2 106は、これらの入力についてゼロを受け、モード信号が論理的に1であるとき、TAP2 106は、実際のTDIおよびTMS信号を受け、一方TAP1 102は、これらの入力についてゼロを受ける。そのような論理回路の物理的実装は、当業者によって十分に理解される事項である。TAP1 102またはTAP2 106のいずれかからの出力だけが、TDOであることに留意されたい。TAPコントローラ102、106の他のピンは入力である。TAPコントローラ102、106の有限状態マシン(Finite State Machine、FSM)は、TMSピンから受けられた信号がゼロであるなら、TCKピンで受けられたクロック信号の5個のサイクル内のRun−Test−Idle状態にデフォルトされることも留意されたい。TDI、TCK、TRSTN信号は、TAPコントローラ102、106の間で自由に共有されることができる(しかしTMSに追加のTDIは、図1に示されるように論理的にゲーティングされる)。TDO出力は、TDO出力に関連付けられる3状態バッファに関して2個のイネーブル信号(図示せず)であるように、2−1マルチプレクサ108によって多重化される。TAPコントローラ、JTAGモジュール、およびIPコアは、別個におよび時間における異なる時点で設計されることは珍しくない実施である。IPインテグレータは、標準化されたインターフェースを適切に接続するためのタスクを有する。
図2を参照すると、各JTAGモジュール202、204は、例えば、命令レジスタ206、バイパス・レジスタ208、およびIDCODEレジスタ210などのいくつかのJTAGレジスタを含むと仮定する。IEEE 1149.1標準は、ユーザによって定義されたデータ・レジスタによって、JTAGモジュール202、204を拡張することを可能にする。本発明の様々な実施形態において、1ビット・データ・レジスタ212が、少なくともデフォルトTAPコントローラに追加される。そのような1ビット・データ・レジスタは、本明細書においてスイッチ・レジスタ212と呼ばれる。図2は、本発明の例示的な実施形態の2個のJTAGモジュール202、204それぞれに組み込まれるスイッチ・レジスタ212を示す。各1ビット・スイッチ・レジスタ212の出力は、図1に示される論理的ゲーティングおよび多重化を制御するモード信号を生成するために、XORゲート214に結合される。すなわち、集積回路内で生成されたモード信号は、本発明にしたがって、図1に示される、外部的に供給されるモード信号、および対応するモード・ピンを置き換える。
本発明によれば、2個のTAPコントローラは、JTAGプローブなどのオフ・チップ観測者に対して1個のTAPコントローラであるように見える。これは、データ・レジスタを更新する状態が、TCKクロック・エッジの間にTMSでの1つ高いレベルの値を有するRun−Test−Idle状態に遷移するからである。プローブは、JTAGプロトコルをネゴシエートするが、ハードウエアはそれ自体を再構成し、異なるTAPコントローラがSoCの外部インターフェース・ピンに接続される。TAPコントローラ自体の接続を変更する目的でこの特定の状態遷移の間にプロトコルを使用されることができることが、本発明の実施形態によって使用される。
JTAG動作の性質は、新たな値がレジスタ内にシフトされ、一方、一般に古い値は外にシフトされ、チップ外で捉えられることである。場合によっては、例えば新たな命令がシフトされるときに、ある異なる値が外にシフトされる。複数のJTAGモジュールにわたって均一な予測可能な切り換え機構を有するために、JTAGプローブは、異なるスイッチ・レジスタ212について現在の値を追跡し続けることを必要とすべきではないことが望ましい。したがって本発明のある実施形態において、スイッチ・レジスタ212の内容は、論理的1をシフトするときに反転される。そのように正確に1入力が反転されるなら、両方のスイッチ・レジスタ212の現在値にかかわらず、モード信号は切り換わることになる。そのような構成は、2個のTAPコントローラが単一のチップに集積される本発明の実施形態に適している。
本発明により2個のTAPコントローラ間で前後の切り換えが可能であるなら、TAPコントローラのデイジー・チェーンを提供することがさらに好ましい。図3および図4に示されるように、デイジー・チェーンの1つの例示的な実施形態において、図2に示される技術は、デイジー・チェーンに関連付けられるデータ・フローを提供するように拡張される。より詳細には、デイジー・チェーンに関連付けられる一般的なデータ・フローは、TDIからTDOへのフローだけを示すことによって図3に示される。本発明によるデイジー・チェーンを達成するために、TAPコントローラ(例えばTAP1 102)は、さらに以降でチェーン・レジスタと呼ばれる1ビット・データ・レジスタによって拡張される。図5は、従来の命令レジスタ206、バイパス・レジスタ208、およびIDCODE JTAGレジスタ210、ならびに本発明のスイッチ・レジスタ212およびチェーン・レジスタ502を示す。
本発明により単一の集積回路上の1個より多い複数のTAPコントローラにチェーン・ビットを追加することが可能であるが、これは、制御される必要がある組合せ論理の複雑性を増大することに留意されたい。当業者ならびに本開示に恩恵を有する者は、そのような制御論理を容易に合成することができ、したがってそれらの詳細をさらに記載しないことを理解されたい。
図4に示されるように、チェーン信号は、今やTDI1、TDI2、TDO1、およびTDO2に適切な論理的なゲーティングおよび多重化を実施するために、モード信号に追加して使用されることができる。チェーン=1のときにモード=0であることを仮定すると、図4は、論理的に図3と等価である。これは、本発明の例示的な実施形態であり、例えばモード信号の値が異なるように選択されるなら、例示的な論理は異なることができることは理解されるであろう。これは、当業者によって十分に理解される。
図6は、本発明によるプロセス・フローを示す。2個以上のTAPコントローラにおけるスイッチ・レジスタ・ビットは、既知の状態にリセットされる(602)。それらリセット状態のスイッチ・レジスタ・ビットの出力の論理的な組合せは、どのTAPコントローラが外部観測者によってアクセスされることができるかを制御する。その後、選択されたTAPコントローラのスイッチ・レジスタ・ビットへの書き込みは、結果としてそのビットのトグル(toggling)を生じる(すなわち、その反転された現在の状態を有する)。スイッチ・レジスタ・ビットの新たな状態は、少なくとも1個のモード信号を生成する、または導き出すために使用される(604)。少なくとも一部にはモード信号の状態に基づき、次のTAPコントローラは、外部観測者との通信のために選択される(606)。2個のTAPコントローラの場合に、モード信号は2個のTAPコントローラの一方を常に選択する。
2個のTAPコントローラを越えて規模を変更するために、任意のスイッチ・レジスタにおいて値が変化すると、次に予定されたTAPコントローラが選択されるように、モード・バスを導出することができる。そのような例が、以下により詳細に記載される。
以下の節で、3個のTAPコントローラ(TAP1、TAP2、およびTAP3と呼ばれる)を有する例示的な実施形態が記載される。各TAPコントローラは、ゼロにリセットする1ビット・スイッチ・レジスタを有する。モード・ビット(2個のTAPコントローラを有する例に関連して上述されたような)を作るために単一のXORを使用する代わりに、モード・バスが使用される。
TAP1、TAP2、およびTAP3間の切り換えに関して、すべてのTAPコントローラ間にアクセスを提供するために、ラウンド・ロビン(round−robin)スケジューリング・アルゴリズムが実装されると仮定する。(多くのTAPから1個のTAPを選択することは、チェーンにすることとは異なる機能であり、これら各機能は、異なる目的に関して望ましいことに留意されたい。本発明の様々な実施形態は、選択およびチェーンにすることの両方をサポートする。)この例示的な実施形態において、TAP1がデフォルトによって選択され、選択されたTAPコントローラのスイッチ・レジスタが書き込まれたとき、次のコントローラが選択される。例えば、TAP1→TAP2→TAP3→TAP1などである。モード・バスは、この例示的な実施形態では2個のビットに達する上限(log(#TAPs))に対応する幅を有し、これら2個のビットは、表1に示されるように定義することができる。
Figure 2006510980
モード・バスのための論理は、表2に示されるように3個のスイッチ・レジスタ・ビットS1、S2、およびS3の値だけに応じる。
Figure 2006510980
この例示的な実施形態において、TDIおよびTMS入力は、3入力ANDゲートによってゲーティングされる(表1参照)。2個の入力は、選択されたTAPコントローラだけが、最上位ピンからTDIまたはTMS信号を受けるように、いくつかが反転されるモード[1]およびモード[0]ビットである。同様に3個のTDO信号は、選択されたTAPコントローラだけが、最上位ピンにTDO信号を提供するように、モード[1:0]ビットを使用して多重化される。周知の様々な回路を、前述の論理および多重化を実施するために使用することができる。モード・バスのための入力・出力表(表2を参照)は、容易に合成されることができ、かつ比較的わずかな数の論理ゲートを生じる。
以下の節において、4個のTAPコントローラ(この例においてTAP1からTAP4と呼ばれる)を有する例示的な実施形態が記載される。
様々なTAPコントローラ間の切り換えに関して、すべてのTAPコントローラ間にラウンド・ロビンスケジューリングが実装されると仮定する。この例示的な実施形態において、TAP1がデフォルトによって選択される。選択されたTAPコントローラのスイッチ・レジスタが書き込まれたとき、次のコントローラが選択される。例えば、TAP1→TAP2→TAP3→TAP4→TAP1などである。
この例示的な実施形態において、モード・バスは、(2つのビットにまで達する)上限である(log(#TAPs))に対応する幅を有し、モード・ビットは、表3に示されるように定義することができる。
Figure 2006510980
モード・バスのための論理は、表4に示されるように4個のスイッチ・レジスタ・ビットS1、S2、S3、およびS4の値だけに依存する。
Figure 2006510980
多数の使用されていない入力組合せ(入力状態と呼ばれる)が存在することに留意されたい。
この例示的な実施形態において、TDIおよびTMS入力は、3入力ANDゲートによってゲーティングされる(表3参照)。2個の入力は、選択されたTAPコントローラだけが、最上位ピンからTDIまたはTMS信号を受けるように、いくつかが反転されるモード[1]およびモード[0]である。同様に、4個のTDO信号は、選択されたTAPコントローラだけが、最上位ピンにTDO信号を提供するように、モード[1:0]ビットを使用して多重化される。周知の様々な回路を、前述の論理および多重化を実施するために使用することができる。
より多くのTAPコントローラが使用される場合、モード・ビットの数がlogの割合で増大する。すなわち、3個のモード・ビットは、8個のTAPコントローラまでに関して十分であり、4個のビットは、16個のTAPコントローラまでに関して十分であるなどである。定義されかつ使用される入力状態の数もまた、追加されたTAPコントローラ毎に2つの状態ずつだけゆっくりと増大する。
上述のされたような切り換えの代わりに、様々なTAPコントローラ間のチェーンにすることに関して、以下の変更が必要である。1つのチェーンにおけるすべてのTDIは、2つの源からのその信号を受けるように構成され、すなわち(1)選択されたTAPコントローラのTDIである場合の最上位TDIピン、またはチェーンにする場合の先行するTAPコントローラからのTDO信号である。チェーンの始まりと終わりにわずかな準備があるが、複雑性は、より多くのTAPコントローラの追加とともに増大しない。例えば、10個のTAPコントローラを含むチェーンを有しても、チェーンにおける任意のTAPコントローラに関するTDIは、2つの可能性がある源からまだ来るだけであり得る。2つの可能性のある源は、上述のように、(1)選択されたコントローラのTDIである場合に関する最上位TDI、または(2)デイジー・チェーンにされたTAPコントローラのTDIである場合に関する、先行するTAPコントローラのTDO信号からである。同様に、この示した例において、TDOピンは、個別に選択されたTAPコントローラによって駆動される(n〜1マルチプレクサを使用して)か、またはすべてのTAPコントローラがデイジー・チェーンにされるなら、TDOは、チェーンにおける最後のTAPからのTDO信号によって駆動される。
本発明の実施形態は、目標のスイッチをプログラム可能にするいくつかの複雑性の問題はあるが、ラウンド・ロビンとは別のスケジューリング・アルゴリズムを使用することができる。そのような場面において、システムの状態は、TAPコントローラごとに、または中央の場所に格納されることができる。これは、状態が、TAPコントローラにおけるデータ・レジスタの組み合わせられたスイッチ/チェーン・ビットで符号化された上述の実施形態とは異なる。
結論
単一のチップ上の複数の試験アクセス・ポート(TAP)コントローラが、外部観測者に対して単一の試験アクセス・ポートだけを有する外観を維持することによって、IEEE 1149仕様にしたがってアクセスされる。簡単な組合せグルー論理とともに、複数のTAPコントローラのそれぞれのデータ・レジスタに単一のビットを追加することによって、複数のTAPコントローラには、追加のチップ・ピンの必要なしに、かつ追加のTAPコントローラの必要なしにアクセスすることができる。少なくとも1つのTAPコントローラに第2のビットを追加することによって、複数のTAPコントローラの所望の機能を制御するのに適した信号の内部生成が達成されることができる。複数のTAPコントローラの各データ・レジスタにおける追加されたビットの状態のトグルは、複数のTAPコントローラの切り換えまたはデイジー・チェーンにすることに関する制御情報を提供する。
本発明は、上述の実施形態に限定されず、添付された特許請求の範囲内の任意およびすべての実施形態を包含することを理解されたい。
一対のIPコアを含むSoCの高いレベルの概略ブロック図であり、各IPコアは、関連付けられたTAPコントローラ/JTAG回路、および試験アクセスのためのIPコアの各対間の切り換えのための論理ならびに外部接続を有する。 一対のIPコアを含むSoCの高いレベルのブロック図であり、各IPコアは、関連付けられ本発明による関連のスイッチ・レジスタ、および試験アクセスのためのIPコアの各対間の切り換えのために使用される信号を内部で生成する論理を有する。 本発明による一対のTAPコントローラ間のデイジー・チェーンにされたデータ・フローを示す、一対のIPコントローラを有するSoCの高いレベルの概略ブロック図である。 図3に示されるデイジー・チェーンにされたデータ・フロー、およびモード信号に基づく切り換え機構を実装するための論理の概略図である。 スイッチ・レジスタとともに従来のJTAGレジスタ、および本発明のチェーン・レジスタを示す高いレベルの概略ブロック図である。 本発明による例示的なプロセスのフローチャートである。

Claims (15)

  1. 複数の試験アクセス・ポート(TAP)コントローラを単一の外部インターフェースに結合する方法であって、
    複数のTAPコントローラのそれぞれにおける第1のビットを既知の状態にリセットすること、
    少なくとも一部には、前記複数のTAPコントローラのそれぞれにおける前記第1のビットの状態に基づいて第1の信号を生成すること、
    少なくとも一部には、前記第1の信号に基づいて前記複数のTAPコントローラの1つを選択すること、
    外部入力端子を前記複数のTAPコントローラの選択された1つのTAPコントローラの入力端子に結合すること、
    前記複数のTAPコントローラの選択された1つのTAPコントローラの出力端子を外部出力端子に結合すること、を含む方法。
  2. 前記TAPコントローラは、有限状態マシンおよび複数のレジスタを備える請求項1に記載の方法。
  3. 前記複数のTAPコントローラの選択された1つのTAPコントローラにおける前記第1のビットをトグルすること、およびステップ(b)からステップ(e)を繰り返すことをさらに含む請求項2に記載の方法。
  4. 前記複数のTAPコントローラのそれぞれに、クロック信号、試験モード選択信号、および試験リセット信号を提供することをさらに含む請求項3に記載の方法。
  5. 前記複数のTAPコントローラは、単一の集積回路上に配置される請求項3に記載の方法。
  6. 前記第1の信号は、前記単一の集積回路内で生成される請求項5に記載の方法。
  7. 前記単一の集積回路に対して外部源からクロック信号を受けることをさらに含む請求項6に記載の方法。
  8. 集積回路であって、
    それぞれに結合された試験アクセス・ポート(TAP)コントローラを有する複数の機能ブロックであって、各TAPコントローラは、第1のレジスタ・ビットを含み、各第1のレジスタ・ビットは、リセット信号に応答して既知の出力状態を生成するように構成され、各第1のレジスタ・ビットは、さらにレジスタ書き込み動作に応答してトグルするように構成された、複数の機能ブロックと、
    少なくとも一部には、前記複数の第1のレジスタ・ビットの状態に基づいて、外部入力信号源と選択された1つのTAPコントローラの入力端子との間の通信経路を選択的に提供するように構成された経路指定論理と、
    を備えた集積回路。
  9. 前記経路指定論理が、少なくとも一部には、前記複数の第1のレジスタ・ビットの状態に基づいて、外部出力端子と前記選択されたTAPコントローラの出力端子との間の通信経路を選択的に提供するようにさらに構成される請求項8に記載の集積回路。
  10. 少なくとも1つのTAPコントローラは、第2のレジスタ・ビットをさらに含み、前記経路指定論理は、少なくとも一部には、前記第1および第2のレジスタ・ビットの状態に基づいて、第2のTAPコントローラに対する入力として第1のTAPコントローラの出力をさらに提供する請求項8に記載の集積回路。
  11. 前記選択的に提供された通信経路間の遷移は、外部観測者に透過的である請求項9に記載の集積回路。
  12. 集積回路(IC)であって、
    前記IC上に配置された複数のTAPコントローラであって、前記複数のTAPコントローラのそれぞれは、データ入力信号を受けるように構成された第1の入力端子と、データ出力信号を提供するように構成された出力端子とを有し、前記複数のTAPコントローラのそれぞれは、少なくとの1つのスイッチ・ビットをさらに有する、複数のTAPコントローラと、
    外部から供給される入力信号を受けるための第1のインターフェースと、
    内部で生成された出力信号を送信するための第2のインターフェースと、
    少なくとも一部には、前記複数のTAPコントローラの前記スイッチ・ビットの状態に基づいて、前記複数のTAPコントローラの所定の1つのTAPコントローラの前記入力端子と前記第1のインターフェースとの間の第1の通信経路、および前記出力端子と前記第2のインターフェースとの間の第2の通信経路を選択的に提供するように構成された、経路指定論理と、
    を備えた集積回路。
  13. 前記複数のTAPコントローラのそれぞれにそれぞれ結合された複数の機能ブロックをさらに備える請求項12に記載の集積回路。
  14. 前記複数のTAPコントローラのそれぞれは、クロック信号を受けるように構成された第2の入力端子と、モード選択信号を受けるように構成された第3の入力端子と、リセット信号を受けるように構成された第4の入力端子とを有し、前記複数の第2の入力端子は共通に結合され、前記複数の第3の入力端子は共通に結合され、前記複数の第4の入力端子は共通に結合される請求項13に記載の集積回路。
  15. 前記複数のTAPコントローラの第1のTAPコントローラに配置されたチェーン・ビットをさらに備える請求項14に記載の集積回路。
JP2004561840A 2002-12-20 2003-12-15 単一の試験アクセス・ポートを介する複数の試験アクセス・ポート・コントローラの接続 Pending JP2006510980A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US43539502P 2002-12-20 2002-12-20
PCT/IB2003/005950 WO2004057357A1 (en) 2002-12-20 2003-12-15 Connecting multiple test access port controllers through a single test access port

Publications (1)

Publication Number Publication Date
JP2006510980A true JP2006510980A (ja) 2006-03-30

Family

ID=32682232

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004561840A Pending JP2006510980A (ja) 2002-12-20 2003-12-15 単一の試験アクセス・ポートを介する複数の試験アクセス・ポート・コントローラの接続

Country Status (10)

Country Link
US (1) US7426670B2 (ja)
EP (1) EP1579229B1 (ja)
JP (1) JP2006510980A (ja)
KR (1) KR20050084395A (ja)
CN (1) CN100442074C (ja)
AT (1) ATE346309T1 (ja)
AU (1) AU2003288584A1 (ja)
DE (1) DE60309931T2 (ja)
TW (1) TWI298099B (ja)
WO (1) WO2004057357A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008304986A (ja) * 2007-06-05 2008-12-18 Nec Electronics Corp 半導体集積回路
JP2008310792A (ja) * 2007-05-11 2008-12-25 Nec Electronics Corp テスト回路

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7417450B2 (en) * 2005-12-02 2008-08-26 Texas Instruments Incorporated Testing combinational logic die with bidirectional TDI-TMS/TDO chanel circuit
US7346821B2 (en) * 2003-08-28 2008-03-18 Texas Instrument Incorporated IC with JTAG port, linking module, and off-chip TAP interface
GB0526448D0 (en) * 2005-12-23 2006-02-08 Advanced Risc Mach Ltd Diagnostic mode switching
KR100809259B1 (ko) * 2006-10-04 2008-03-03 삼성전기주식회사 통신모듈 인터페이스 장치
US8078898B2 (en) * 2007-06-07 2011-12-13 Texas Instruments Incorporated Synchronizing TAP controllers with sequence on TMS lead
US8046650B2 (en) * 2008-03-14 2011-10-25 Texas Instruments Incorporated TAP with control circuitry connected to device address port
US7783819B2 (en) * 2008-03-31 2010-08-24 Intel Corporation Integrating non-peripheral component interconnect (PCI) resources into a personal computer system
US8829940B2 (en) * 2008-09-26 2014-09-09 Nxp, B.V. Method for testing a partially assembled multi-die device, integrated circuit die and multi-die device
US8694844B2 (en) 2010-07-29 2014-04-08 Texas Instruments Incorporated AT speed TAP with dual port router and command circuit
US9015542B2 (en) * 2011-10-01 2015-04-21 Intel Corporation Packetizing JTAG across industry standard interfaces
US9323633B2 (en) * 2013-03-28 2016-04-26 Stmicroelectronics, Inc. Dual master JTAG method, circuit, and system
WO2014209347A1 (en) * 2013-06-28 2014-12-31 Intel Corporation Mechanism to control resource utilization with adaptive routing
US20150046763A1 (en) * 2013-08-12 2015-02-12 Apple Inc. Apparatus and Method for Controlling Internal Test Controllers
US9810739B2 (en) 2015-10-27 2017-11-07 Andes Technology Corporation Electronic system, system diagnostic circuit and operation method thereof
KR102474620B1 (ko) * 2016-01-25 2022-12-05 삼성전자주식회사 반도체 장치, 반도체 시스템 및 반도체 장치의 동작 방법
CN108226740B (zh) * 2016-12-09 2020-06-02 英业达科技有限公司 提供扩充联合测试工作组接口的扩充电路板
US10386411B2 (en) 2017-08-23 2019-08-20 Stmicroelectronics International N.V. Sequential test access port selection in a JTAG interface
CN108829547B (zh) * 2018-05-15 2021-11-16 中国船舶重工集团公司第七一九研究所 一种海洋平台的计算机控制器及其实现方法
US10571518B1 (en) * 2018-09-26 2020-02-25 Nxp B.V. Limited pin test interface with analog test bus
CN109406902B (zh) * 2018-11-28 2021-03-19 中科曙光信息产业成都有限公司 逻辑扫描老化测试系统
CN113627106B (zh) * 2021-08-04 2022-02-15 北京华大九天科技股份有限公司 多比特寄存器的仿真方法、装置和电子设备
CN116774018B (zh) * 2023-08-22 2023-11-28 北京芯驰半导体科技有限公司 一种芯片测试方法、装置及电子设备
CN117741411A (zh) * 2024-02-19 2024-03-22 西安简矽技术有限公司 一种芯片的调校系统和方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5132635A (en) * 1991-03-05 1992-07-21 Ast Research, Inc. Serial testing of removable circuit boards on a backplane bus
US5627842A (en) * 1993-01-21 1997-05-06 Digital Equipment Corporation Architecture for system-wide standardized intra-module and inter-module fault testing
FI100136B (fi) * 1993-10-01 1997-09-30 Nokia Telecommunications Oy Menetelmä integroidun piirin testaamiseksi sekä integroitu piiri
DE69734379T2 (de) * 1996-08-30 2006-07-06 Texas Instruments Inc., Dallas Vorrichtung zur Prüfung von integrierten Schaltungen
US6804725B1 (en) * 1996-08-30 2004-10-12 Texas Instruments Incorporated IC with state machine controlled linking module
US6032279A (en) * 1997-11-07 2000-02-29 Atmel Corporation Boundary scan system with address dependent instructions
US6311302B1 (en) * 1999-04-01 2001-10-30 Philips Semiconductor, Inc. Method and arrangement for hierarchical control of multiple test access port control modules
US6385749B1 (en) * 1999-04-01 2002-05-07 Koninklijke Philips Electronics N.V. (Kpenv) Method and arrangement for controlling multiple test access port control modules
WO2001053844A1 (en) * 2000-01-18 2001-07-26 Cadence Design Systems, Inc. Hierarchical test circuit structure for chips with multiple circuit blocks
US6961884B1 (en) * 2000-06-12 2005-11-01 Altera Corporation JTAG mirroring circuitry and methods
US6829730B2 (en) * 2001-04-27 2004-12-07 Logicvision, Inc. Method of designing circuit having multiple test access ports, circuit produced thereby and method of using same
US6968408B2 (en) * 2002-08-08 2005-11-22 Texas Instruments Incorporated Linking addressable shadow port and protocol for serial bus networks

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008310792A (ja) * 2007-05-11 2008-12-25 Nec Electronics Corp テスト回路
JP2008304986A (ja) * 2007-06-05 2008-12-18 Nec Electronics Corp 半導体集積回路

Also Published As

Publication number Publication date
DE60309931D1 (de) 2007-01-04
CN1729401A (zh) 2006-02-01
WO2004057357A1 (en) 2004-07-08
US20060090110A1 (en) 2006-04-27
TW200500620A (en) 2005-01-01
DE60309931T2 (de) 2007-09-13
US7426670B2 (en) 2008-09-16
CN100442074C (zh) 2008-12-10
EP1579229B1 (en) 2006-11-22
AU2003288584A1 (en) 2004-07-14
EP1579229A1 (en) 2005-09-28
TWI298099B (en) 2008-06-21
KR20050084395A (ko) 2005-08-26
ATE346309T1 (de) 2006-12-15

Similar Documents

Publication Publication Date Title
US7426670B2 (en) Connecting multiple test access port controllers on a single test access port
US10281524B2 (en) Test partition external input/output interface control for test partitions in a semiconductor
US10649029B2 (en) TCKC/TMSC counter, gating circuitry for selection, deselection, technology specific outputs
US6829730B2 (en) Method of designing circuit having multiple test access ports, circuit produced thereby and method of using same
US6378090B1 (en) Hierarchical test access port architecture for electronic circuits including embedded core having built-in test access port
JP4422427B2 (ja) 単一チップシステム及びこのシステムのテスト/デバッグ方法
US6425100B1 (en) Snoopy test access port architecture for electronic circuits including embedded core with built-in test access port
US20070106965A1 (en) Semiconductor integrated circuit device, method of testing the same, database for design of the same and method of designing the same
US20050005217A1 (en) Test standard interfaces and architectures
WO2016191013A1 (en) Remote bus wrapper for testing remote cores using automatic test pattern generation and other techniques
US6381717B1 (en) Snoopy test access port architecture for electronic circuits including embedded core having test access port with instruction driven wake-up
JPH02245943A (ja) バス実行スキヤン・テスト方法及び装置
US7937633B2 (en) Semiconductor device using logic chip
JP3791859B2 (ja) ネットワークのスキャンパスを階層的に構成するスキャン装置および方法
US6961884B1 (en) JTAG mirroring circuitry and methods
US20030046625A1 (en) Method and apparatus for efficient control of multiple tap controllers
Quinton et al. Post-silicon debug using programmable logic cores
US20170146600A1 (en) Scan Logic For Circuit Designs With Latches And Flip-Flops
US11017135B2 (en) Scan logic for circuit designs with latches and flip-flops
JP3987585B2 (ja) コアのテスト制御
US20220170983A1 (en) Implementing a jtag device chain in multi-die integrated circuit
US20230297534A1 (en) High Bandwidth IJTAG Through High Speed Parallel Bus
JP2004004047A (ja) 集積回路のための入力/出力特徴付けチェーン
KR20010108796A (ko) 내장된 코아 회로부를 테스트하기 위한 쉬프트 레지스터체인 회로부를 구비한 시스템-온 칩
JP2001004714A (ja) 集積回路のテスト端子共用化方法および方式

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061213

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20080703

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080813

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080829

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20081128

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20081205

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090508