JP2010159989A - テスト回路 - Google Patents

テスト回路 Download PDF

Info

Publication number
JP2010159989A
JP2010159989A JP2009000743A JP2009000743A JP2010159989A JP 2010159989 A JP2010159989 A JP 2010159989A JP 2009000743 A JP2009000743 A JP 2009000743A JP 2009000743 A JP2009000743 A JP 2009000743A JP 2010159989 A JP2010159989 A JP 2010159989A
Authority
JP
Japan
Prior art keywords
test
terminal
tap controller
circuit
signal
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
JP2009000743A
Other languages
English (en)
Inventor
Toshiyuki Maeda
敏行 前田
Yoshiyuki Nakamura
芳行 中村
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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2009000743A priority Critical patent/JP2010159989A/ja
Priority to US12/654,801 priority patent/US8468402B2/en
Publication of JP2010159989A publication Critical patent/JP2010159989A/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/318555Control logic

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)
  • Semiconductor Integrated Circuits (AREA)

Abstract

【課題】従来のテスト回路では、被テスト回路のテスト範囲を自由に設定することができない問題があった。
【解決手段】本発明のテスト回路の一態様は、IEEE1149に規定される標準仕様に準拠した複数のTAPコントローラを有するテスト回路であって、制御コード及びテスト制御信号を受けて、被テスト回路に対するテストの実行と、シフトモード信号SFTの出力と、を行うマスタTAPコントローラ10と、制御コード及びテスト制御信号を受けて、被テスト回路に対するテストを実行する第1のスレーブTAPコントローラ20と、第1のスレーブTAPコントローラ20対応して設けられ、第1のスレーブTAPコントローラ20に入力する制御コードを外部から入力するか、マスタTAPコントローラ10を介して入力するかを、シフトモード信号SFTに基づき切り替える第1の端子制御回路30と、を有するものである。
【選択図】図1

Description

本発明はテスト回路に関し、特にIEE1149にて規定されるTAP(Test Access Port)コントローラを有するテスト回路に関する。
近年、半導体装置の回路規模が大規模化しており、半導体装置に対する試験を行うための端子数も増大する傾向にある。端子数が増大すると、パッケージが大きくなり、小型化が困難である問題がある。そのため、この端子数を削減することが求められている。そこで、テスト端子数を削減するためにIEEE(Institute of Electrical and Electronics Engineers)にてIEEE1149が規格化された。このIEEE1149のうちの一つであるIEEE1149.1では、5つの端子と、TAPコントローラとを用いて半導体装置のテストを行うことが可能である。
5つの端子は、それぞれTDI端子、TRST端子、TCK端子、TMS端子、TDO端子と呼ばれる。以下の説明では、一組のTDI端子、TRST端子、TCK端子、TMS端子、TDO端子をテスト端子群と称す。また、TAPコントローラは、ステートマシン、インストラクションレジスタ、バウンダリスキャンレジスタを有する。インストラクションレジスタは、TDI端子から入力されるTAPコントローラに対する制御コードを格納する。バウンダリスキャンレジスタは、TDI端子から入力されるテストパターンを格納する。ステートマシンは、TMS端子から入力されるTMS信号に基づきTAPコントローラの動作状態を制御する。
また、複数の被テスト回路を有する場合、被テスト回路の数に応じて複数のTAPコントローラを用いることが行われている。複数の被テスト回路がある場合、これら被テスト回路は、それぞれが個別に動作する場合や、複数のテストブロックが強調して動作を行う場合がある。そこで、複数のTAPコントローラを用いる場合、複数のTAPコントローラのバウンダリスキャンレジスタの接続状態を被テスト回路の動作に応じて変更することが行われる。
例えば、特許文献1、特許文献2及び特許文献3に記載のテスト回路では、被テスト回路ごとに設けられたTAPコントローラのうちいずれのTAPコントローラを動作させるかを選択することができる。これにより、任意に選択した一つの被テスト回路のみに対して単独のテストを実行することができる。しかしながら、特許文献1〜3に記載のテスト回路では、テスト対象とする被テスト回路の単位を切り替えることができない問題がある。そこで、テスト対象とする被テスト回路の単位を切り替えることができるテスト回路が特許文献4に開示されている。
特許文献4に記載のテスト回路では、一つのTAPコントローラ内に選択回路を有する。選択回路は、複数のバウンダリスキャンレジスタを分割するように配置される。そして、選択回路は、前段に接続されるバウンダリスキャンレジスタを介して伝達されるテストパターンを後段のバウンダリスキャンレジスタに伝達するか、前段に接続されるバウンダリスキャンレジスタをスルーする経路を介して伝達されるテストパターンを後段のバウンダリスキャンレジスタに伝達するかを切り替える。これにより、特許文献4に記載のテスト回路では、テストパターンの長さに応じてバウンダリスキャンレジスタにより構成されるバウンダリスキャンチェーンの長さを調節することができる。また、特許文献4に記載のテスト回路は、選択回路により分割されたスキャンチェーンのそれぞれに対応して被テスト回路を設けることで、一つのテストパターンによりテスト可能な被テスト回路の個数を変更することができる。
特許文献5に記載のテスト回路は、並列に接続されたバウンダリスキャンチェーンと、外部から入力される多値信号(アナログ信号)の電圧値に基づきデジタル値を出力する変換器を有する。変換器は、一つの多値信号が入力されるとバウンダリスキャンチェーンのそれぞれに対してデジタル値を出力する。これにより、特許文献5に記載のテスト回路では、テストパターンのバウンダリスキャンチェーンへの入出力時間を短縮する。
特開2004−164367号公報 特開2007−148754号公報 特開2007−271390号公報 特開2001−203322号公報 特開2006−189305号公報
しかしながら、特許文献1〜5に記載のテスト回路では、複数のTAPコントローラの間の接続状態を制御することができない。つまり、複数のTAPコントローラ内のバウンダリスキャンレジスタを個別のスキャンチェーンとして扱うか、複数のTAPコントローラ内のバウンダリスキャンレジスタが互いに接続された一つのスキャンチェーンとして扱うかを切り替えることができない。そのため、特許文献1〜5に記載のテスト回路では、複数のTAPコントローラを有していても、テスト対象とする被テスト回路の組み合わせの自由度が低い問題がある。
本発明にかかるテスト回路の一態様は、IEEE1149に規定される標準仕様に準拠した複数のTAPコントローラを有するテスト回路であって、制御コード及びテスト制御信号を受けて、被テスト回路に対するテストの実行と、シフトモード信号の出力と、を行うマスタTAPコントローラと、前記制御コード及び前記テスト制御信号を受けて、被テスト回路に対するテストを実行する第1のスレーブTAPコントローラと、前記第1のスレーブTAPコントローラに対応して設けられ、前記第1のスレーブTAPコントローラに入力する前記制御コードを外部から入力するか、前記マスタTAPコントローラを介して入力するかを、前記シフトモード信号に基づき切り替える第1の端子制御回路と、を有するものである。
本発明にかかるテスト回路では、マスタTAPコントローラがシフトモード信号を出力する。そして、第1のスレーブTAPコントローラは、シフトモード信号に基づき制御コードの入力を、外部から行うか、マスタTAPコントローラを介して行うかを切り替えることができる。つまり、本発明にかかるテスト回路では、第1のスレーブTAPコントローラ内のバウンダリスキャンレジスタを独立したスキャンチェーンとして扱うか、第1のスレーブTAPコントローラ内のバウンダリスキャンレジスタを他のTAPコントローラ(例えばマスタTAPコントローラと)内のバウンダリスキャンレジスタと接続して一つのスキャンチェーンとして扱うかを切り替えることができる。従って、本発明にかかるテスト回路は、TAPコントローラの接続状態を切り替えることで被テスト回路のテスト単位を任意に設定することができる。
本発明にかかるテスト回路によれば、複数のTAPコントローラの接続状態を切り替えて自由度の高いテストを実現することができる。
実施の形態1にかかるテスト回路のブロック図である。 実施の形態1にかかる端子制御回路の詳細なブロック図である。 実施の形態1にかかる端子制御回路の詳細なブロック図である。 実施の形態1にかかるステートマシンの状態遷移図である。 実施の形態1にかかるテスト回路においてパラレルテストモードを実行する場合に有効になる信号経路を示すテスト回路のブロック図である。 実施の形態1にかかるテスト回路においてパラレルテストモードを実行する場合のテスト回路のタイミングチャートである。 実施の形態1にかかるテスト回路においてチップ一括テストモードを実行する場合に有効になる信号経路を示すテスト回路のブロック図である。 実施の形態1にかかるテスト回路においてコア単位テストモードを実行する場合に有効になる信号経路を示すテスト回路のブロック図である。 実施の形態1にかかるテスト回路においてコア単位テストモードを実行する場合のテスト回路のタイミングチャートである。
実施の形態1
以下、本発明の実施の形態について図面を参照して説明する。図1に実施の形態1にかかるテスト回路のブロック図を示す。図1に示すように、本実施の形態にかかるテスト回路は、マスタTAPコントローラ10、第1のスレーブTAPコントローラ20、第2のスレーブTAPコントローラ40、第1の端子制御回路30、第2の端子制御回路50を有する。ここで、マスタTAPコントローラ10、第1のスレーブTAPコントローラ20、第2のスレーブTAPコントローラ40は、それぞれIEEE1149.1の規格に準拠したTAPコントローラである。従って、本実施の形態にかかるテスト回路において用いられる制御コード及びテスト制御信号は、IEEE1149.1の規格で規定される範囲内のコード及び信号となる。
また、テスト回路は、TAPコントローラに対応してIEEE1149.1に規定されるテスト端子群(例えば、TDI端子、TMS端子、TCK端子、TRST端子、TDO端子)を有する。TDI端子は、制御コードの入力端子であり、TMS端子、TCK端子、TRST端子は、テスト制御信号(TMS信号、TCK信号(クロック信号)、TRST信号(リセット信号)を含む)の入力端子であり、TDO端子は、テスト結果又はTAPコントローラ内のバウンダリスキャンレジスタ及びインストラクションレジスタに格納されたデータを出力するための端子である。
本実施の形態にかかるテスト回路では、複数のテスト端子群を有するものとする。複数のテスト端子群はそれぞれTAPコントローラに対応して設けられる。以下の説明では、テスト回路内の複数のTAPコントローラが共通して用いるテスト端子群を共通テスト端子群(EXT_TDI、EXT_TMS、EXT_TCK、EXT_TRST、EXT_TDO)と称し、第1のTAPコントローラ20のみに対して設けられるテスト端子群を第1の個別テスト端子群(EXT_TDI1、EXT_TMS1、EXT_TCK1、EXT_TRST1、EXT_TDO1)と称し、第2のTAPコントローラ40のみに対して設けられるテスト端子群を第2の個別テスト端子群(EXT_TDI2、EXT_TMS2、EXT_TCK2、EXT_TRST2、EXT_TDO2)と称す。
マスタTAPコントローラ10は、TAPコア11、バウンダリスキャンレジスタBS、インタフェース回路IFを有する。TAPコア11内にはインストラクションレジスタ(不図示)が設けられる。TAPコア11は、IEEE1149.1に準拠したTDI信号、TMS信号、TCK信号、TRST信号を受けてTAPコントローラの制御を行う。バウンダリスキャンレジスタBSは、各レジスタが直列に接続され、一つのTAPコントローラ内に設けられるバウンダリスキャンレジスタBSによりバウンダリスキャンチェーンの最小単位を構成する。TAPコア11は、TAPコントローラがバウンダリスキャンレジスタBSに対してデータを設定するモードであれる場合、TDI信号として与えられるテストパターンをバウンダリスキャンレジスタBSに設定する。インタフェース回路IFは、バウンダリスキャンレジスタBSに格納されたデータをテスト回路の外部に出力する。また、インタフェース回路IFは、被テスト回路から得られるテスト結果をテスト回路の外部から受けてバウンダリスキャンレジスタBSに与える。
また、TAPコア11は、TDI信号として与えられる制御コードに基づき、動作モード設定信号MODE、シフトモード信号SFT、チップ選択信号CSを出力する。
なお、TAPコア11は、他のTAPコントローラから出力されるTDO信号をバウンダリスキャンチェーンBS_CHAIN信号として受けてTAPコア11が出力するTDO信号とする。また、メインTAPコントローラ10では、バウンダリスキャンチェーンの出力はTAPコア11を介すことなく他のTAPコントローラに出力されるものとする。しかし、メインTAPコントローラ10においても、バウンダリスキャンチェーンの出力をTAPコア11を介して出力する形式としても問題ない。
第1のスレーブTAPコントローラ20は、TAPコア21、バウンダリスキャンレジスタBS、インタフェース回路IFを有する。TAPコア21は、TAPコア11から動作モード設定信号MODE、シフトモード信号SFT、チップ選択信号CSを出力する機能を除いたものである。また、TAPコア21は、第1のスレーブTAPコントローラ20内のバウンダリスキャンレジスタBSの出力を受けて、外部にTDO信号として出力する。バウンダリスキャンレジスタBS及びインタフェース回路IFは、マスタTAPコントローラ内のものと同じものであるため、ここでは説明を省略する。
第1の端子制御回路30は、TAPピン制御回路31、CSPレジスタ32を有する。TAPピン制御回路31は、第1のスレーブTAPコントローラ20に入力する制御コードを外部から入力するか、マスタTAPコントローラ10のバウンダリスキャンレジスタBSを介して入力するかを、シフトモード信号SFTに基づき切り替える。また、TAPピン制御回路31は、テスト制御信号及び制御コードを共通テスト端子群から第1のスレーブTAPコントローラ20に与えるか、第1の個別テスト端子群から与えるかを動作モード設定信号MODEに基づき切り替える。
ここで、TAPピン制御回路31は、動作モード設定信号MODEが共通動作モード(例えば"0")を示し、シフトモード信号SFTがチェーンモード(例えば"0")を示す場合、マスタTAPコントローラ10のバウンダリスキャンチェーンから出力される制御コードを第1のスレーブTAPコントローラ20に与える。また、動作モード設定信号MODEが共通動作モードを示し、シフトモード信号SFTが独立モード(例えば"1")を示す場合、共通テスト端子群のTDI端子(EXT_TDI)から入力される制御コードを第1のスレーブTAPコントローラ20に与える。さらに、動作モード設定信号MODEが独立動作モード(例えば"1")を示す場合、シフトモード信号SFTの値にかかわらず、第1の個別テスト端子群に含まれるTDI端子(EXT_TDI1)から入力される制御コードを第1のスレーブTAPコントローラ20に与える。
CSPレジスタ32は、チップ選択信号CSの値を格納し、第1の端子制御回路30を有効にするか否かを示すフラグを格納する。CSPレジスタ32は、他の端子制御回路内に設けられるCSPレジスタと直列に接続され、CSPチェーンCSP_CHAINを構成する。マスタTAPコントローラ10は、シリアルデータとしてチップ選択信号CSを生成する。チップ選択信号は、例えば、すべてのCSPレジスタに有効を示す値を設定する場合は、CSPレジスタの数だけ1が並ぶシリアルデータとなる。
第2のTAPコントローラ40は、第1のTAPコントローラ20と実質的に同じものであるため説明を省略する。第2の端子制御回路50は、TAPピン制御回路51、CSPレジスタ52を有する。ここで、TAPピン制御回路51は、第2のスレーブTAPコントローラ40に入力する制御コードを外から入力するか、第1のスレーブTAPコントローラ20のバウンダリスキャンレジスタBSを介して入力するかを、シフトモード信号SFTに基づき切り替える。また、TAPピン制御回路51は、テスト制御信号及び制御コードを共通テスト端子群から第2のスレーブTAPコントローラ40に与えるか、第2の個別テスト端子群から与えるかを動作モード設定信号MODEに基づき切り替える。なお、動作モード設定信号MODE、シフトモード信号SFTに対するTAPピン制御回路51は、TAPピン制御回路31と同じであるため、説明を省略する。また、CSPレジスタ52も、CSPレジスタ32と実質的に同じものであるためここでは説明を省略する。
次いで、TAPピン制御回路31及びTAPピン制御回路51についてさらに詳細に説明する。まず、図2にTAPピン制御回路31の詳細なブロック図を示す。なお、図2では、TAPピン制御回路31について説明するためにマスタTAPコントローラ10及び第1のスレーブTAPコントローラ20を示した。なお、図2における第1のスレーブTAPコントローラ20では、インストラクションレジスタIR及びセレクタ21を示した。インストラクションレジスタIRは、制御コードのうちTAPコントローラの制御に用いられるインストラクションコードが格納される。セレクタ21は、TAPコントローラの状態に応じてインストラクションレジスタIRに格納されているインストラクションコードとバウンダリスキャンレジスタBSに格納されているテストパターンデータのいずれかを選択して出力する。
図2に示すように、TAPピン制御回路31は、第1のデータ経路切り替え回路(例えば、セレクタ34)、第1のモード制御回路35、第1のコード入力切り替え回路(例えばセレクタ38)、複数の第1の制御入力切り替え回路(例えば、セレクタ39a〜39c)を有する。
セレクタ34は、シフトモード信号SFTを受けて、マスタTAPコントローラ内のバウンダリスキャンレジスタBSが出力する制御コードと共通テスト端子のEXT_TDI端子から入力される制御コードとのいずれを出力するかを切り替える。
第1のモード制御回路35は、動作モード設定信号MODEの値を保持し、保持した値を入力切り替え信号SELとして出力する。第1のモード制御回路35は、OR回路36、Dフリップフロップ回路37を有する。OR回路36は、一方の入力端子に動作モード設定信号MODEが入力され、他方の入力端子にDフリップフロップ回路37の出力が入力される。そして、OR回路36は2つの入力の論理和を出力する。Dフリップフロップ回路37は、クロック入力に共通テスト端子群のEXT_TCK端子からクロック信号が入力され、データ入力端子にOR回路36の出力が入力される。そして、Dフリップフロップ回路37は、クロック信号の立ち上がりエッジに同期してデータ入力端子に入力される信号の信号レベルを保持し、保持した値を入力切り替え信号SELとして出力する。また、Dフリップフロップ回路37のリセット端子には、共通テスト端子群のEXT_TRST端子からリセット信号が入力される。そして、Dフリップフロップ回路37は、リセット信号がリセット状態(例えばロウレベル)である場合には、出力をロウレベルとする。
セレクタ38は、セレクタ34が出力する制御コードと第1の個別テスト端子群に含まれるEXT_TDI1端子から入力される制御コードのいずれか一方を入力切り替え信号SELに基づき選択して出力する。
セレクタ39a〜39cは、入力切り替え信号SELに基づき、共通テスト端子群から入力されるテスト制御信号と第1の個別テスト端子群から入力されるテスト制御信号とを切り替えて出力する。より具体的には、セレクタ39aは、EXT_TMS端子から入力されるTMS信号と、EXT_TMS1端子から入力されるTMS信号と、のいずれか一方を選択して第1のスレーブTAPコントローラ20に出力する。セレクタ39bは、EXT_TCK端子から入力されるクロック信号と、EXT_TCK1端子から入力されるクロック信号と、のいずれか一方を選択して第1のスレーブTAPコントローラ20に出力する。セレクタ39cは、EXT_TRST端子から入力されるリセット信号と、EXT_TRST1端子から入力されるリセット信号と、のいずれか一方を選択して第1のスレーブTAPコントローラ20に出力する。
なお、第1のスレーブTAPコントローラ20が出力する出力信号は、第1の端子制御回路30で何ら処理されることなく個別テスト端子群のEXT_TDO1端子から出力される。
続いて、図3に第2のスレーブTAPコントローラ40のブロック図を示す。図3に示すように、第2のスレーブTAPコントローラ40は、第2の個別テスト端子から制御コード及びテスト制御信号を受ける構成を有する。また、第2のスレーブTAPコントローラ40内のセレクタ54は、マスタTAPコントローラ20内のバウンダリスキャンレジスタBSからの出力を受けずに、第1のスレーブTAPコントローラ20の出力を受ける構成となる。第2のスレーブTAPコントローラ40におけるその他の構成は、第1のスレーブTAPコントローラ20と実質的に同じである。
なお、第2のスレーブTAPコントローラ内の第2のデータ経路切り替え回路(例えば、セレクタ54)は、セレクタ34に相当するものであり、第2のモード制御回路55(OR回路56及びDフリップフロップ回路57を含む)は第1のモード制御回路35に相当するものであり、第2のコード入力切り替え回路(例えばセレクタ58)はセレクタ38に相当するものであり、複数の第2の制御入力切り替え回路(例えばセレクタ59a〜59c)はセレクタ39a〜39cに相当するものである。
ここで、TAPコントローラの動作について説明する。TAPコントローラはTAPコア内にステートマシン(不図示)を有しており、ステートマシンが取り得る状態をTMS信号、TCK信号により遷移させることで被テスト回路のテストを行う。ここで、図4にステートマシンの状態遷移図を示す。
図4に示すように、ステートマシンは、TCK信号の立ち上がりエッジが入力されたときのTMS信号の信号レベルに応じて状態を遷移させる。ここで、各状態について説明する。Test−Logic−Resetは、ステートマシンのリセット状態であり、この状態ではテスト回路は、他の回路に何ら影響を与えない状態である。なお、TRST信号をロウレベルとするといずれの状態からでもTest−Logic−Resetの状態に遷移することができる。Run−Test−Idleは、テストの実行準備の状態、又は、Test−Logic−Resetからの通過状態を示すステートである。
Select−IR−Scanは、インストラクションレジスタIRを制御する状態を選択するための一時的な状態である。Capture−IRは、TDI端子から入力される制御コードをインストラクションレジスタIRに入力する準備を行う状態である。Shift−IRは、TCK信号の立ち上がりエッジごとに制御コードをシフトさせ、インストラクションレジスタIRに制御コードを設定する状態である。Exit1−IRは、Shift−IRの終了後に、Pause−IRのステートに移行するか、Update−IRのステートに移行するかを選択する状態である。Pause−IRは、インストラクションレジスタIRのシフト動作を一時的に停止する状態である。Exit2−IRは、Shift−IRのステートに戻るか、Update−IRのステートに進むかを選択する状態である。Update−IRは、TCK信号の立ち下がりエッジで、インストラクションレジスタIRに設定された制御コードを実行する状態である。
Select−DR−Scanは、バウンダリスキャンレジスタBSを制御する状態を選択するための一時的な状態である。Capture−DRは、TDI端子から入力される制御コードをバウンダリスキャンレジスタBSに入力する準備を行い、かつ、被テスト回路から得られるテスト結果をバウンダリスキャンレジスタBSに設定する状態である。Shift−DRは、TCK信号の立ち上がりエッジごとにバウンダリスキャンレジスタBSの値をシフトさせ、バウンダリスキャンレジスタBSに格納されたテスト結果の出力を行いながらTDI端子から入力される制御コードを新たにバウンダリスキャンレジスタBSに設定する状態である。Exit1−DRは、Shift−DRの終了後に、Pause−DRのステートに移行するか、Update−DRのステートに移行するかを選択する状態である。Pause−DRは、バウンダリスキャンレジスタBSのシフト動作を一時的に停止する状態である。Exit2−DRは、Shift−DRのステートに戻るか、Update−DRのステートに進むかを選択する状態である。Update−DRは、TCK信号の立ち下がりエッジで、バウンダリスキャンレジスタBSに設定された制御コードを被テスト回路に与える状態である。
続いて、本実施の形態にかかるテスト回路の動作について説明する。本実施の形態にかかるテスト回路では、動作モード設定信号MODE及びシフトモード信号SFTの状態に応じて3つのテストを実行することができる。第1のテストモードは、複数のTAPコントローラをすべて同じ制御コード及びテスト制御信号で動作させるパラレルテストモードである。第2のテストモードは、複数のTAPコントローラのバウンダリスキャンレジスタBSを直列に接続して、複数の被テスト回路(例えば1チップ分)に対して一つのテストパターンでテストを行うチップ一括テストモードである。第3のテストモードは、複数のTAPコントローラをそれぞれ独立したTAPコントローラとして扱うコア単位テストモードである。なお、以下の説明ではCSPレジスタの値はすべて有効であるものとし、CSPレジスタの値が異なる場合の動作については説明を省略する。また、第2のスレーブTAPコントローラ40が第1のスレーブTAPコントローラ20と実質的に同じ動作となるため、以下の説明では、図3に示す第2のスレーブTAPコントローラ40に対応するブロック図は省略する。
また、以下の説明では、本実施の形態にかかるテスト回路において各TAPコアは、それぞれTest−Logic−Resetの状態において、共通テスト端子群から制御コード及びテスト制御信号を受けるもとする。そして、テスト開始前にインストラクションレジスタIRに入力される制御コードに応じて動作モード設定信号MODE及びシフトモード信号SFTが設定されるものとする。
パラレルテストモードを行う場合において有効になるテスト回路の信号配線を示す図を図5に示す。図5では、有効な信号配線を実線で示し、無効な信号配線を一点鎖線で示した。パラレルテストモードでは、動作モード設定信号MODEが"0"であり、シフトモード信号SFTが"1"である。そして、動作モード設定信号MODEの値に応じて入力切り替え信号SELは、"0"に設定される。
そのため、パラレルテストモードでは、TAPピン制御回路31、51が共通テスト端子群から入力される制御コード(例えば、テストパターン)及びテスト制御信号を第1のスレーブTAPコントローラ20及び第2のスレーブTAPコントローラ40に与える。
これにより、第1のスレーブTAPコントローラ20及び第2のスレーブTAPコントローラ40は、ともに同じテストパターンがバウンダリスキャンレジスタBSに設定され、同じテスト制御信号に基づき動作することになる。つまり、パラレルテストモードでは、各TAPコントローラがそれぞれ同じテストを行う。また、各TAPコントローラにおいて実行されたテストの結果は、各TAPコントローラに対応して設けられるTDO端子(EXT_TDO端子、EXT_TDO1端子、EXT_TDO2端子)からそれぞれ出力される。なお、パラレルテストモードでは、マスタTAPコントローラ10も、第1のスレーブTAPコントローラ20及び第2のスレーブTAPコントローラ40と同様に動作するため、マスタTAPコントローラ10を用いてテストを実行することも可能である。
ここで、パラレルテストモードを実行する場合のテスト回路の動作を示すタイミングチャートを図6に示す。図6に示すように、パラレルテストモードでは、まずタイミングT1〜T2においてTRST信号がロウレベルとなり、ステートマシンの状態をTest−Logic−Reset状態とする。続いて、タイミングT3からTCK信号及びTMS信号の入力が開始され、タイミングT4においてステートマシンの状態がShift−IRに遷移する。そして、タイミングT4〜T5において制御コード(例えば命令コード)がTDI信号として与えられる。次いで、タイミングT5〜T6において、ステートマシンの状態をShift−DRに遷移させる。Shift−DRでは、タイミングT6〜T7において制御コード(例えば、テストパターン)のシフト動作が行われ、バウンダリスキャンレジスタBSにテストパターンが設定される。
そして、タイミングT7〜T8の一時刻においてUpdate−DRの状態となりテストが行われる。そして、タイミングT7〜T8の期間において再度ステートマシンの状態をShift−DRに遷移させる。ことのとき、タイミングT8では、バウンダリスキャンレジスタBSには、テスト結果となるパターンが格納されている。そのため、タイミングT8以降のShift−DRの期間は、新たなテストパターンの入力と共に、テスト結果の出力が行われる。
次いで、チップ一括テストモードを行う場合において有効になるテスト回路の信号配線を示す図を図7に示す。図7では、有効な信号配線を実線で示し、無効な信号配線を一点鎖線で示した。チップ一括テストモードでは、動作モード設定信号MODEが"0"であり、シフトモード信号SFTが"0"である。そして、動作モード設定信号MODEの値に応じて入力切り替え信号SELは、"0"に設定される。
そのため、チップ一括テストモードでは、TAPピン制御回路31、51は、共通テスト端子群から入力されるテスト制御信号を第1のスレーブTAPコントローラ20及び第2のスレーブTAPコントローラ40に与える。一方、チップ一括テストモードでは、TAPピン制御回路31、51は、制御コード(例えば、テストパターン)を前段に配置されるTAPコントローラのバウンダリスキャンチェーンを介して受け、第1のスレーブTAPコントローラ20及び第2のスレーブTAPコントローラ40に与える。
これにより、第1のスレーブTAPコントローラ20及び第2のスレーブTAPコントローラ40は、同じテスト制御信号に基づき動作することになる。また、バウンダリスキャンレジスタBSは、複数のTAPコントローラに属するバウンダリスキャンレジスタBSにより一つのバウンダリスキャンチェーンを構成する。つまり、チップ一括テストモードでは、複数の被テスト回路に対する一つのテストを複数のTAPコントローラにより実行する。
なお、チップ一括テストモードでは、マスタTAPコントローラ10を含む複数のTAPコントローラにより一つのバウンダリスキャンチェーンを構成するため、テスト結果は複数のTAPコントローラのうち最終段に配置されるTAPコントローラの出力信号(TDO信号)がマスタTAPコントローラ10を介して出力される構成となる。
ここで、チップ一括テストモードを実行する場合のテスト回路の動作を示すタイミングチャートは、図6に示すパラレルテストモードのタイミングチャートにおいて、テストパターンを入力するタイミングT6〜T7及びタイミングT8以降の期間の長さを長くしたものになる。つまり、チップ一括テストモードにおけるタイミングチャートはパラレルテストモードのタイミングチャートと実質的に同じものとなる。
次いで、コア単位テストモードを行う場合において有効になるテスト回路の信号配線を示す図を図8に示す。図8では、有効な信号配線を実線で示し、無効な信号配線を一点鎖線で示した。コア単位テストモードでは、動作モード設定信号MODEが"1"であり、シフトモード信号SFTの値は"0"であっても"1"であっても良い。そして、動作モード設定信号MODEの値に応じて入力切り替え信号SELは、"1"に設定される。
そのため、コア単位テストモードでは、TAPピン制御回路31、51は、第1、第2の個別テスト端子群から入力される制御コード(例えば、テストパターン)及びテスト制御信号を第1のスレーブTAPコントローラ20及び第2のスレーブTAPコントローラ40に与える。
これにより、第1のスレーブTAPコントローラ20及び第2のスレーブTAPコントローラ40は、それぞれ対応する個別テスト端子群から入力される信号に基づき互いに独立した動作を行う。つまり、コア単位テストモードでは、各TAPコントローラがそれぞれ独立したテストを行う。また、各TAPコントローラにおいて実行されたテストの結果は、各TAPコントローラに対応して設けられるTDO端子(EXT_TDO端子、EXT_TDO1端子、EXT_TDO2端子)からそれぞれ出力される。なお、コア単位テストモードでは、マスタTAPコントローラ10も、第1のスレーブTAPコントローラ20及び第2のスレーブTAPコントローラ40と同様に独立して動作させることが可能である。
ここで、コア単位テストモードを実行する場合のテスト回路の動作を示すタイミングチャートを図9に示す。図9に示すように、コア単位テストモードでは、タイミングT11〜T16においてすべてのTAPコントローラは共通テスト端子群から入力される制御コード及びテスト制御信号に基づき同じ動作を行う。ここで、コア単位テストモードでは、タイミングT14〜T15の期間に入力される。そして、タイミングT16においてタイミングT14〜T15で入力された命令コードに基づく動作が行われると命令コードにより動作モード設定信号MODEが"1"に設定される。これにより、TAPピン制御回路31、51は、それぞれ対応する個別テスト端子群から入力される制御コード及びテスト制御信号を受けることができるようになる。
そのため、本実施の形態では、タイミングT16以降は、メインTAPコントローラ10に対しては、ステートマシンの状態をTest−Logic−Idleに戻す動作が行われ、スレーブTAPコントローラに対しては、ステートマシンの状態をShift−DRに移行させる動作がそれぞれ独立して行われる。
タイミングT16以降において、スレーブTAPコントローラの状態がShift−DRとなると、タイミングT18〜T19において制御コード(例えば、テストパターン)のシフト動作が行われ、バウンダリスキャンレジスタBSにテストパターンが設定される。そして、タイミングT19〜T20の一時刻においてUpdate−DRの状態となりテストが行われる。そして、タイミングT19〜T20の期間において再度ステートマシンの状態をShift−DRに遷移させる。ことのとき、タイミングT20では、バウンダリスキャンレジスタBSには、テスト結果となるパターンが格納されている。そのため、タイミングT20以降のShift−DRの期間は、新たなテストパターンの入力と共に、テスト結果の出力が行われる。
上記説明より、本実施の形態にかかるテスト回路は、マスタTAPコントローラがシフトモード信号SFTを出力し、端子制御回路がスレーブTAPコントローラに入力する制御コードを外部から入力するか、マスタTAPコントローラを介して入力するかを切り替える。これにより、複数のTAPコントローラ内のバウンダリスキャンチェーンを一つのスキャンチェーンとして扱うか(チップ一括テストモード)、個別のスキャンチェーンとして扱うか(パラレルテストモード又はコア単位テストモード)、を切り替えることができる。つまり、複数のTAPコントローラを用いて、テスト対象となる被テスト回路の範囲を切り替えることができる。そのため、本発明のテスト回路は、従来のテスト回路よりもテストの自由度を向上させることができる。
また、本実施の形態にかかるテスト回路は、動作モード設定信号MODEにより、複数のTAPコントローラを並列に動作(パラレルテストモード)させるか又は個別に動作(コア単位テストモード)させるかを切り替えることができる。パラレルテストモードでは、複数のTAPコントローラを並列に動作させることができるため、同じテストを行う被テスト回路を一度でテストすることができる。これにより、テスト時間を短縮することができる。また、コア単位テストモードでは、TAPコントローラをそれぞれ独立して動作せせることができるため、例えば、TAPコントローラごとに動作周波数の異なるテストを実行することができる。
つまり、本実施の形態にかかるテスト回路によれば、シフトモード信号SFT及び動作モード設定信号MODEにより、制御するTAPコントローラの単位を変更し、テストの自由度を向上とテスト時間の短縮を実現することができる。
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、動作モード設定信号MODE及びシフトモード信号SFTの論理はTAPピン制御回路の入力選択の論理に応じて適宜変更することが可能である。
10 マスタTAPコントローラ
11、21、41 TAPコア
20、40 スレーブTAPコントローラ
30、50 端子制御回路
31、51 TAPピン制御回路
32、52 CSPレジスタ
35、55 モード制御回路
36、56 OR回路
37、57 Dフリップフロップ回路
21、34、54、38、58 セレクタ
39a〜39c、59a〜59c セレクタ
IF インタフェース回路
IR インストラクションレジスタ
BS バウンダリスキャンレジスタ
CS チップ選択信号
MODE 動作モード設定信号
SFT シフトモード信号
SEL 入力切り替え信号
BS_CHAIN バウンダリスキャンチェーン
CSP_CHAIN チェーン

Claims (10)

  1. IEEE1149に規定される標準仕様に準拠した複数のTAPコントローラを有するテスト回路であって、
    制御コード及びテスト制御信号を受けて、被テスト回路に対するテストの実行と、シフトモード信号の出力と、を行うマスタTAPコントローラと、
    前記制御コード及び前記テスト制御信号を受けて、被テスト回路に対するテストを実行する第1のスレーブTAPコントローラと、
    前記第1のスレーブTAPコントローラに対応して設けられ、前記第1のスレーブTAPコントローラに入力する前記制御コードを外部から入力するか、前記マスタTAPコントローラを介して入力するかを、前記シフトモード信号に基づき切り替える第1の端子制御回路と、
    を有するテスト回路。
  2. 前記第1の端子制御回路は、一方の端子が前記マスタTAPコントローラ及び前記第1のスレーブTAPコントローラに対応して設けられる共通テスト端子群に含まれる共通コード入力端子に接続され、他方の端子が前記マスタTAPコントローラ内に設けられるバウンダリスキャンレジスタの出力に接続される第1のデータ経路切り替え回路を有し、
    前記第1のデータ経路切り替え回路は、前記シフトモード信号に応じて前記一方の端子及び前記他方の端子のいずれか一方から入力される前記制御コードを選択し、前記第1のスレーブTAPコントローラに出力する請求項1に記載のテスト回路。
  3. 前記マスタTAPコントローラは、前記制御コード及び前記テスト制御信号を受けて、動作モード設定信号を出力し、
    前記第1の端子制御回路は、前記第1のスレーブTAPコントローラに入力する前記テスト制御信号を前記共通テスト端子群から入力するか、前記第1のスレーブTAPコントローラに対応して設けられる第1の個別テスト端子群から入力するかを、前記動作モード設定信号に基づき切り替える請求項2に記載のテスト回路。
  4. 前記第1の端子制御回路は、
    前記動作モード設定信号の値を保持し、保持した値を入力切り替え信号として出力する第1のモード制御回路と、
    前記入力切り替え信号に応じて、前記第1のデータ経路切り替え回路が出力する前記制御コードと前記第1の個別テスト端子群に含まれるTDI端子から入力される前記制御コードのいずれか一方を選択して出力する第1のコード入力切り替え回路と、
    を有する請求項3に記載のテスト回路。
  5. 前記第1の端子制御回路は、前記入力切り替え信号に応じて、前記共通テスト端子から入力される前記テスト制御信号と前記第1の個別共通テスト端子群から入力される前記テスト制御信号のいずれか一方を選択して出力する複数の第1の制御入力切り替え回路と、
    を有する請求項4に記載のテスト回路。
  6. 前記テスト回路は、
    前記制御コード及び前記テスト制御信号を受けて、被テスト回路に対するテストを実行する第2のスレーブTAPコントローラと、
    前記第2のスレーブTAPコントローラに対応して設けられ、前記第2のスレーブTAPコントローラに入力する前記制御コードを外部から入力するか、前記第1のスレーブTAPコントローラを介して入力するかを、前記シフトモード信号に基づき切り替える第2の端子制御回路と、
    を有する請求項1に記載のテスト回路。
  7. 前記第2の端子制御回路は、一方の端子が前記マスタTAPコントローラ及び前記第2のスレーブTAPコントローラに対応して設けられる共通テスト端子群に含まれる共通コード入力端子に接続され、他方の端子が前記第1のスレーブTAPコントローラ内に設けられるバウンダリスキャンレジスタの出力に接続される第2のデータ経路切り替え回路を有し、
    前記第2のデータ経路切り替え回路は、前記シフトモード信号に応じて前記一方の端子及び前記他方の端子のいずれか一方から入力される前記制御コードを選択し、前記第2のスレーブTAPコントローラに出力する請求項6に記載のテスト回路。
  8. 前記マスタTAPコントローラは、前記制御コード及び前記テスト制御信号を受けて、動作モード設定信号を出力し、
    前記第2の端子制御回路は、前記第2のスレーブTAPコントローラに入力する前記テスト制御信号を前記共通テスト端子群から入力するか、前記第2のスレーブTAPコントローラに対応して設けられる第2の個別テスト端子群から入力するかを、前記動作モード設定信号に基づき切り替える請求項7に記載のテスト回路。
  9. 前記第2の端子制御回路は、
    前記動作モード設定信号の値を保持し、保持した値を入力切り替え信号として出力する第2のモード制御回路と、
    前記入力切り替え信号に応じて、第2のデータ経路切り替え回路が出力する前記制御コードと前記第2の個別テスト端子群に含まれるTDI端子から入力される前記制御コードのいずれか一方を選択して出力する第2のコード入力切り替え回路と、
    を有する請求項8に記載のテスト回路。
  10. 前記第2の端子制御回路は、前記入力切り替え信号に応じて、前記共通テスト端子から入力される前記テスト制御信号と前記第2の個別共通テスト端子群から入力される前記テスト制御信号のいずれか一方を選択して出力する複数の第2の制御入力切り替え回路と、
    を有する請求項9に記載のテスト回路。
JP2009000743A 2009-01-06 2009-01-06 テスト回路 Pending JP2010159989A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009000743A JP2010159989A (ja) 2009-01-06 2009-01-06 テスト回路
US12/654,801 US8468402B2 (en) 2009-01-06 2010-01-05 Test circuit including tap controller selectively outputting test signal based on mode and shift signals

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009000743A JP2010159989A (ja) 2009-01-06 2009-01-06 テスト回路

Publications (1)

Publication Number Publication Date
JP2010159989A true JP2010159989A (ja) 2010-07-22

Family

ID=42312493

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009000743A Pending JP2010159989A (ja) 2009-01-06 2009-01-06 テスト回路

Country Status (2)

Country Link
US (1) US8468402B2 (ja)
JP (1) JP2010159989A (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8015462B2 (en) * 2007-05-11 2011-09-06 Renesas Electronics Corporation Test circuit
JP2011149775A (ja) * 2010-01-20 2011-08-04 Renesas Electronics Corp 半導体集積回路及びコアテスト回路
US8700955B2 (en) * 2011-09-22 2014-04-15 Freescale Semiconductor, Inc. Multi-processor data processing system having synchronized exit from debug mode and method therefor
US20130197851A1 (en) * 2012-02-01 2013-08-01 Qualcomm Incorporated Test controller for 3d stacked integrated circuits
US10101390B2 (en) * 2016-12-30 2018-10-16 Prometheus Electronics LLC Boundary scan test system
CN114253184A (zh) * 2021-11-29 2022-03-29 山东云海国创云计算装备产业创新中心有限公司 一种jtag控制装置
CN115020266B (zh) * 2022-08-04 2022-11-04 南京邮电大学 一种2.5D Chiplet绑定后测试电路

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5355369A (en) * 1991-04-26 1994-10-11 At&T Bell Laboratories High-speed integrated circuit testing with JTAG
US5809036A (en) * 1993-11-29 1998-09-15 Motorola, Inc. Boundary-scan testable system and method
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
JP2001203322A (ja) 2000-01-21 2001-07-27 Seiko Epson Corp 半導体集積装置
JP2004164367A (ja) 2002-11-14 2004-06-10 Renesas Technology Corp マルチプロセッサシステム
JP2006189305A (ja) 2005-01-05 2006-07-20 Ricoh Co Ltd バウンダリスキャンテスト回路
KR20070015984A (ko) * 2005-08-02 2007-02-07 주식회사 팬택 하드웨어 자가 진단이 가능한 내장형 시스템 및 그시스템에서의 자가 진단 방법
JP4450787B2 (ja) 2005-11-28 2010-04-14 株式会社ルネサステクノロジ 半導体集積回路装置
JP2007271390A (ja) 2006-03-30 2007-10-18 Fujitsu Ltd Tapコントローラ装置及びtapコントローラ制御方法
US8015462B2 (en) * 2007-05-11 2011-09-06 Renesas Electronics Corporation Test circuit

Also Published As

Publication number Publication date
US20100174958A1 (en) 2010-07-08
US8468402B2 (en) 2013-06-18

Similar Documents

Publication Publication Date Title
US9121904B2 (en) Tap linking module test access port controller with enable input
US10082540B2 (en) First, second access ports and selector with separate output circuitry
CN109425824B (zh) 在jtag接口中的组合串行和并行测试访问端口选择
JP2010159989A (ja) テスト回路
KR100505662B1 (ko) 칩 사이즈를 감소시키는 스캔 테스트 회로를 구비한반도체 장치, 및 그 테스트 방법
US11199580B2 (en) Test access port with address and command capability
JP2010276479A (ja) 半導体集積回路、及びそのテスト方法
US20110175638A1 (en) Semiconductor integrated circuit and core test circuit
CN106896317B (zh) 通过扫描测试的扫描链所执行的电路排错方法及电路排错***
US7155649B2 (en) Scan test control method and scan test circuit
JP2005257366A (ja) 半導体回路装置及び半導体回路に関するスキャンテスト方法
JPH11258304A (ja) システムロジックのテスト回路およびテスト方法
JP2008310792A (ja) テスト回路
JP2013088400A (ja) 半導体集積回路の検査方法および半導体集積回路
JP3265270B2 (ja) バウンダリ・スキャン・テスト機能を用いたac測定回路
JP6459806B2 (ja) 半導体集積回路
JP2002340988A (ja) 半導体集積回路及びそのテスト方法
KR20050060865A (ko) 신호 단자 단락과 정상 동작 검출을 위하여 에스오씨아이피 코아를 스캔 시험할 수 있는 집적회로 장치 및 그방법
JP2001194422A (ja) 集積回路
JP5453981B2 (ja) Lsi、及びそのテストデータ設定方法
JP2001203322A (ja) 半導体集積装置
JP2010025703A (ja) 半導体装置およびそのテスト方法
KR20070073428A (ko) 내장된 유한 상태기의 상태를 테스트할 수 있는 반도체집적 회로
JP2011179860A (ja) テスト回路
JP2008196999A (ja) 半導体装置