JP4122869B2 - バウンダリスキャン回路 - Google Patents

バウンダリスキャン回路 Download PDF

Info

Publication number
JP4122869B2
JP4122869B2 JP2002203729A JP2002203729A JP4122869B2 JP 4122869 B2 JP4122869 B2 JP 4122869B2 JP 2002203729 A JP2002203729 A JP 2002203729A JP 2002203729 A JP2002203729 A JP 2002203729A JP 4122869 B2 JP4122869 B2 JP 4122869B2
Authority
JP
Japan
Prior art keywords
circuit
output
flop
flip
data
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.)
Expired - Fee Related
Application number
JP2002203729A
Other languages
English (en)
Other versions
JP2004045244A (ja
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP2002203729A priority Critical patent/JP4122869B2/ja
Priority to US10/405,489 priority patent/US7032147B2/en
Publication of JP2004045244A publication Critical patent/JP2004045244A/ja
Application granted granted Critical
Publication of JP4122869B2 publication Critical patent/JP4122869B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/318541Scan latches or cell details
    • 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)
  • Semiconductor Integrated Circuits (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、JTAG(Joint Test Action Group)デバイスに関し、特にIP(Intellectual Property)コアにバウンダリスキャン回路を設けたJTAGデバイスに関するものである。
【0002】
【従来の技術】
IPコアにバウンダリスキャン回路を設けてJTAGデバイスを構成することによって、半導体チップに内蔵されたIPコアを容易にテストすることが可能になる。
【0003】
図10は従来のJTAGデバイスの構成図である。図10のJTAGデバイスは、フラッシュコントローラ101およびフラッシュメモリ102によって構成されたIPコアのフラッシュコントローラ101にバウンダリスキャン回路を設けたものである。
【0004】
従来のバウンダリスキャン回路は、バウンダリ・スキャン・レジスタBSRと、TAP(Test Access Port)(TDI(Test Data In),TCK(Test ClocK),TMS(Test Mode Select),TDO(Test Data Out))と、TAPインターフェースTAPIFとを備えている。
【0005】
バウンダリ・スキャン・レジスタBSRは、入力バウンダリ・スキャン・セルBSCI(バウンダリ・スキャン・セルBSC1,BSC2)と、出力バウンダリ・スキャン・セルBSCO(バウンダリ・スキャン・セルBSC3,BSC4)とによって構成されている。
【0006】
TDIは、BSC1のシリアルデータ入力SIおよびTAPIFに接続され、TCK,TMSは、TAPIFに接続され、BSC4のシリアルデータ出力SOおよびTAPIFの出力は、TDOに接続されている。また、BSCI(BSC1,BSC2)のデータ出力DOは、フラッシュコントローラ101の入力に接続され、フラッシュコントローラ101の出力は、BSCO(BSC3,BSC4)のデータ入力DIに接続され、BSCO(BSC3,BSC4)のデータ出力DOは、フラッシュメモリ102の入力に接続されている。また、BSC1のシリアルデータ出力SOは、BSC2のシリアルデータ入力SIに接続され、BSC2のシリアルデータ出力SOは、BSC3のシリアルデータ入力SIに接続され、BSC3のシリアルデータ出力SOは、BSC4のシリアルデータ入力SIに接続されている。
【0007】
図11は従来の出力セルBSCOの回路構成図である。出力セルBSCOは、入力マルチプレクサMUX1と、出力マルチプレクサMUX2と、データ・シフト・フリップ・フロップFF1と、データ・ラッチ・フリップ・フロップFF2とを備えている。また、BSCOは、データ入力DIと、データ出力DOと、シフトデータ入力SIと、シフトデータ出力SOと、シフトセレクトShift-DRの入力と、データシフトクロックClock-DRの入力と、データラッチクロックUpdate-DRの入力と、モードセレクトModeの入力とを備えている。
【0008】
DIはMUX1の入力AおよびMUX2の入力Aに接続され、SIはMUX1の入力Bに接続され、MUX1の出力YはFF1のデータ入力Dに接続され、FF1のデータ出力QはSOおよびFF2のデータ入力Dに接続され、FF2のデータ出力QはMUX2のデータ入力Bに接続され、MUX2の出力YはDOに接続されている。また、シフトセレクトShift-DRはMUX1のセレクト入力Sに接続され、データシフトクロックClock-DRはFF1のクロック入力CKに接続され、データラッチクロックUpdate-DRはFF2のクロック入力CKに接続され、モードセレクトModeはMUX2のセレクト入力Sに接続されている。
【0009】
図12は従来のTAPインターフェースTAPIFの構成図である。TAPIFは、TAPコントローラTAPCと、命令レジスタIRと、命令デコーダIDと、マルチプレサMUXと、出力バッファBUFとを備えている。なお、TAPCの構成および制御方法に関しては、IEEE1149.1(Stanard Test Access Port and Boundary-Scan Architecture)に準ずるものとする。
【0010】
フラッシュコントローラ101のテスト手順について以下に説明する。TCKおよびTMSによってTAPコントローラTAPCのステートを制御し、TDIから命令レジスタIRに命令コード(例えばINTEST命令のコード)をシリアル入力する。
【0011】
また、同様にTAPCのステートを制御し、SHIFT-DRステートで、TDIからバウンダリ・スキャン・レジスタBSRの入力セルBSCIにテストデータをシリアル入力して、シフトセレクトShift-DRおよびシフトクロックClock-DRによって入力セルBSCIのシフトフリップフロップFF1にテストデータを取り込み、CAPTURE-DRステートで、ラッチクロックUpdate-DRおよびモードセレクトModeによってBSCIのラッチフリップフロップFF2およびマルチプレクサMUX2を介してデータ出力DOからフラッシュコントローラ101に上記テストデータを入力する。これによって、フラッシュコントローラ101の内部テストが開始される。
【0012】
上記のテストによるフラッシュコントローラ101の出力データは、CAPTURE-DRステートで、シフトセレクトShift-DR(MUX1の入力Aをセレクト)およびシフトクロックClock-DRによって出力セルBSCOのシフトフリップフロップFF1に取り込まれ、SHIFT-DRステートで、シフトセレクトShift-DR(MUX1の入力Bをセレクト)およびシフトクロックClock-DRによってFF1からシフトアウトされ、TDOからシリアル出力される。
【0013】
図13は従来のJTAGデバイスにおいてのクロックのタイミングチャートである。従来のJTAGデバイスでは、フラッシュコントローラ101を動作させるクロック(システムクロック)CLKと、入力セルBSCIおよび出力セルBSCOのシフトフリップフロップFF1のクロック入力CK(シフトクロックClock−DR)とは、異なるクロックツリーで構成されている。
【0014】
【発明が解決しようとする課題】
しかしながら、上記従来のJTEGデバイスにおいては、フラッシュコントローラ101から出力されたデータが出力セルBSCOを介して被テスト回路でないフラッシュメモリ102に伝播するために、フラッシュコントローラ101とフラッシュメモリ102を個別に独立してテストしなければならず、テスト時間の短縮が困難であるという課題と、フラッシュコントローラ101のテスト中にフラッシュメモリ102に無用なアクセスを生じる可能性があった。
【0015】
また、上記従来のJTEGデバイスにおいては、フラッシュコントローラ101を動作させるシステムクロックCLKと、入力セルBSCIおよび出力セルBSCOのシフトフリップフロップFF1のクロック入力CKに供給するシフトクロックClock-DRClock-DRとが、別々のクロックツリーで構成されているために、これら複数のクロック間のタイミングを調整してクロックマージンを設計することが困難であり、このことが高速テスト動作の妨げになるという課題があった。
【0016】
本発明は、このような従来の課題を解決するためになされたものであり、IPコアを短時間でテストできるバウンダリスキャン回路を提供することを目的とするものである。
【0017】
【課題を解決するための手段】
本発明のバウンダリスキャン回路は、
IPコアのテストのために設けられて上記IPコアとともにJTAGデバイスを構成するバウンダリスキャン回路において、
上記IPコアを構成する第1の回路の入力に設けられた1つまたは複数の入力バウンダリ・スキャン・セルと、上記第1の回路の出力と上記IPコアを構成する第2の回路の入力の間に設けられ1つまたは複数の出力バウンダリ・スキャン・セルを備えたバウンダリ・スキャナ・レジスタと、
上記バウンダリ・スキャン・レジスタを制御するTAPインターフェースとを備え、
上記出力バウンダリ・スキャン・セルが、
上記第1の回路から出力されるデータを受ける第1の入力端子と、
上記入力バウンダリ・スキャン・セル又は他の出力バウンダリ・スキャン・セルから出力されるデータを受ける第2の入力端子と、
上記第1の入力端子に供給されるデータと、上記第2の入力端子に供給されるデータのいずれかを選択して出力する第1の選択回路と、
上記第1の選択回路からの出力データをラッチして保持し、出力する第1のフリップフロップと、
上記第1のフリップフロップの出力データをラッチして保持し、出力する第2のフリップフロップと、
上記第1の入力端子に供給されるデータと、上記第2のフリップフロップからの出力データのいずれかを選択して、上記第2の回路に出力する第2の選択回路と、
論理回路とを備え、
上記TAPインターフェースは、上記第1の選択回路の選択動作を第1の制御信号により制御し、上記第2の選択回路の選択動作を、上記第1の制御信号とは異なる第2の制御信号により制御し、
上記TAPインターフェースは、上記第1のフリップフロップのラッチ動作を行なわせるための第3の制御信号と、上記第2のフリップフロップにラッチ動作を行なわせるための第4の制御信号と、上記第4の制御信号を有効にする第1の値又は上記第4の制御信号を無効にする第2の値のいずれかを取る第5の制御信号を出力し、
上記論理回路は、上記第5の制御信号が上記第2の値を取っているときは、上記第4の制御信号による上記第2のフリップフロップの上記ラッチ動作が行われないようにし、
上記TAPインターフェースは、入力された命令コードに従って上記第5の制御信号を上記第1の値又は上記第2の値にすることで、上記第4の制御信号による上記第2のフリップフロップのラッチ動作を制御する
ことを特徴とする。
【0018】
【発明の実施の形態】
実施の形態1
図1は本発明の実施の形態1のJTAGデバイスの構成図である。図1のJTAGデバイスは、フラッシュコントローラ101およびフラッシュメモリ102によって構成されたIPコアのフラッシュコントローラ101にバウンダリスキャン回路を設けたものである。
【0019】
なお、この実施の形態1の説明(図を含む)において、図10の従来のものと同じものには同じ符号で表記し、従来のものに相当しかつ異なるものには、従来のものの表記に[1]を付して表記してある。
【0020】
実施の形態1のバウンダリスキャン回路は、バウンダリ・スキャン・レジスタBSR[1]と、TAP(Test Access Port)(テストデータ入力TDI,テストクロックTCK,テストモードセレクトTMS,テストデータ出力TDOのポート)と、TAPインターフェースTAPIF[1]とを備えている。このように、実施の形態1のバウンダリスキャン回路は、従来のバウンダリスキャン回路において、バウンダリ・スキャン・レジスタBSRをBSR[1]に変更し、TAPインターフェースTAPIFをTAPIF[1]に変更したものである。
【0021】
実施の形態1のバウンダリ・スキャン・レジスタBSR[1]は、入力バウンダリ・スキャン・セルBSCI(バウンダリ・スキャン・セルBSC1,BSC2)と、出力バウンダリ・スキャン・セルBSCO[1](バウンダリ・スキャン・セルBSC3[1],BSC4[1])とによって構成されている。このように、実施の形態1のBSR[1]は、従来のBSR(図10参照)において、BSCO(BSC3,BSC4)をBSCO[1](BSC3[1],BSC4[1])に変更したものである。
【0022】
図2は実施の形態1の出力セルBSCO[1]の回路構成図である。実施の形態1の出力セルBSCO[1]は、入力マルチプレクサMUX1と、出力マルチプレクサMUX2と、シフトフリップフロップFF1と、ラッチフリップフロップFF2とアンドゲートANDとを備えている。また、実施の形態1のBSCO[1]は、データ入力DIと、データ出力DOと、シフトデータ入力SIと、シフトデータ出力SOと、データ・レジスタ・シフト・セレクトShift-DRの入力と、データ・レジスタ・シフト・クロックClock-DRの入力と、データ・レジスタ・ラッチ・クロックUpdate-DRの入力と、データ・レジスタ・ラッチ・イネーブルUpdate-Enと、モードセレクトModeの入力とを備えている。
【0023】
このように実施の形態1の出力セルBSCO[1]は、従来の出力セルBSCO(図11参照)において、ラッチイネーブルUpdate-Enの入力およびアンドゲートANDを設けたものである。アンドゲートANDには、ラッチクロックUpdate-DRおよびラッチイネーブルUpdate-Enが入力され、アンドゲートANDの出力は、ラッチフリップフロップFF2のクロック入力CKに接続されている。
【0024】
図3は実施の形態1のTAPインターフェースTAPIF[1]の構成図である。実施の形態1のTAPIF[1]は、TAPコントローラTAPCと、命令レジスタIRと、命令デコーダID[1]と、マルチプレサMUXと、バッファBUFとを備えている。このように、実施の形態1のTAPIF[1]は、従来のTAPインターフェースTAPIF(図12参照)において、命令デコーダIDをID[1]に変更したものである。
【0025】
TAPCは、テストクロックTCKの立上りエッジでテストモードセレクトTMSをサンプリングし、TMSの値に従ってそのステートを遷移する。そして、遷移したステートに応じて、データ・レジスタ・シフト・セレクトShift-DR,データ・レジスタ・シフト・ロックClock-DR,データ・レジスタ・ラッチ・クロックUpdate-DRを生成してバウンダリ・スキャン・レジスタBSR1に供給し、インストラクション・レジスタ・シフト・セレクトShift-IR,インストラクション・レジスタ・シフト・クロックClock-IR,インストラクション・レジスタ・ラッチ・クロックUpdate-IRを生成して命令レジスタIR1に供給し、出力セレクトSelectをマルチプレサMUXに供給し、出力イネーブルEnableをバッファBUFに供給する。
【0026】
命令レジスタIRは、4ビットのレジスタであり、Shift-IR,Clock-IR,Update-IRに従って、TDIから入力された命令コードをラッチし、その命令コードを命令デコーダID1にパラレル出力し、またはその命令コードをマルチプレクサMUXにシリアル出力する。なお、上記の命令コードには、パブリック命令(必須命令およびオプション命令)のコードの他に、プライベート命令のコードを設定できる。
【0027】
実施の形態1の命令デコーダID[1]は、命令レジスタIRから入力された命令コードをデコードし、命令コードに従って、データ・レジスタ・ラッチ・イネーブルUpdate-EnおよびモードセレクトModeをBSR[1]に供給する。この実施の形態1のID[1]は、従来の命令デコーダID(図12参照)において、命令コードに従ってUpdate-Enを生成する手段を設けたものである。なお、ID1は、バイパスレジスタやその他のオプションレジスタ、およびこれらのレジスタの出力も併せて制御する。
【0028】
マルチプレサMUXは、BSR1の出力またはIRの出力のいずれかを、出力セレクトSelectに従って出力する。また、バッファBUFは、出力イネーブルEnableによってイネーブルになったときに、マルチプレサMUXの出力をTDOに出力する。
【0029】
図4はTAPコントローラTAPCのステートの遷移を説明するフローチャートである。図4において、TEST LOGIC RESET,RUN-TEST/IDELE,SELECT-DR-SCAN,CAPTURE-DR,SHIFT-DR,EXIT1-DR,PAUSE-DR,EXIT2-DR,UPDATE-DR,SELECT-IR-SCAN,CAPTURE-IR,SHIFT-IR,EXIT1-IR,PAUSE-IR,EXIT2-IR,UPDATE-IRは、TAPCのステート名であり、計16ステートある。
【0030】
上記16ステートの内、SELECT-DR-SCAN、CAPTURE-DR,SHIFT-DR,EXIT1-DR,PAUSE-DRステート,EXIT2-DR,UPDATE-DRは、データパス(データレジスタ(バウンダリ・スキャン・レジスタやオプションのレジスタ)についてのステートのパス)を構成しており、SELET-IR-SCANステート,CAPTURE-IR,SHIFT-IR,EXIT1-IR,PAUSE-IR,EXIT2-IRは、インストラクションパス(命令レジスタについてのステートのパス)を構成している。
【0031】
図4において、0,1はTMSの値であり、TAPCはTCKの立上りエッジにおいてのTMSの値に従ってステートを遷移させる。
【0032】
TAPCの16のステートの内、特にCAPTURE(CAPTURE-DR,CAPTURE-IR)ステート,SHIFT(SHIFT-DR,SHIFT-IR)ステート,UPDATE(UPDATE-DR,UPDATE-IR)ステートでの動作が重要であり、その他のステートは、流れを切り換えるためのステートである。
【0033】
CAPTURE-DRステートでは、バウンダリ・スキャン・レジスタBSR1の入力セルBSCIおよび出力セルBSCO[1]において、シフトセレクトShift-DRによって入力マルチプレクサMUX1の入力Aがセレクトされ、DIから入力されたデータがシフトクロックClock-DRによってシフトフリップフロップFF1に取り込まれる。DIのデータは、入力セルBSCIではフラッシュコントローラ101に入力されるデータであり、出力セルBSCO[1]ではフラッシュコントローラ101から出力されたデータである。なお、CAPTURE-IRステートでは、Shift-IRおよびClock-IRによってIRステータスワード(固定のデータ)が命令レジスタIRに取り込まれる。
【0034】
SHIFT-DRステートでは、バウンダリ・スキャン・レジスタBSR1の入力セルBSCIおよび出力セルBSCO[1]において、シフトセレクトShift-DRによって入力マルチプレクサMUX1の入力Bがセレクトされ、シフトクロックClock-DRによって、シフトフリップフロップFF1のデータがシフトデータ出力SOからシフトアウトされて、TDIあるいは前段のBSCIまたはBSCO[1]のSOからシフトデータ入力SIに入力されたデータがシフトフリップフロップFF1にシフトインされる。つまり、セルBSC−0,BSC−1,BSC1−2,BSC1−3のFF1で構成されたシフトレジスタのデータが1ビットシフトされる。なお、SHIFT-IRステートでは、命令レジスタIRのデータが1ビットシフトされる。
【0035】
UPDATE-DRステートでは、BSR1の入力セルBSCIおよび出力セルBSCO[1]において、シフトフリップフロップFF1のデータがラッチクロックUpdate-DRによってラッチフリップフロップFF2に取り込まれ、モードセレクトModeによって出力マルチプレクサMUX2の入力Bがセレクトされる。つまり、シフトフリップフロップFF1のデータがFF2およびMUX2を介してDOに出力される。ただし、出力セルBSCO[1]においては、ラッチイネーブルUpdate-En=1のときにのみ、FF1のデータがFF2に取り込まれてDOに出力され、Update-En=0のときには、アンドゲートANDによってUpdate-DRがFF2のクロック入力CKに入力されないので、FF2はラッチ動作をせず、FF1のデータはDOに出力されない。なお、UPDATE-IRステートでは、命令レジスタIRの4ビットデータがUpdate-IRによって命令デコーダIDにパラレル出力される。
【0036】
図5は本発明の実施の形態1の動作を説明するタイミングチャート、図6は本発明の実施の形態1の動作を説明するフローチャートである。図5および図6を用いて、実施の形態1の特徴となる動作を以下に説明する。
【0037】
[ステップ1−11]
TAPコントローラTAPCは、ステップ1でRUN-TEST/IDELE(図5の表記ではIdle)ステートであり、ステップ2でSELECT-DR-SCAN(Sele)ステートになり、ステップ3でSELECT-IR-SCAN(Sele)ステートになり、ステップ4でCAPTURE-IR(Cap)ステートになり、ステップ5−8でSHIFT-IR(shift)ステートになり、ステップ9でEXIT1-IR(Exit)モードになり、ステップ10でUPDATE-IR(Upd)ステートなり、ステップ11でRUN-TEST/IDELE(Idle)ステートに戻る。
【0038】
上記ステップ5−8のSHIFT-IRステートで、TDIから命令レジスタIDに、出力セルBSCO[1]においてラッチクロックUpdate-DRが有効となるA命令コード(例えばプライベート命令のコード)を入力し、上記ステップ10のUPDATE-IRで、上記のA命令コードを命令レジスタIDから命令デコーダIDに出力させる。これによって、命令デコーダIDから出力セルBSCO[1]に供給されるラッチイネーブルUpdate-Enの値は1となり、バウンダリ・スキャン・レジスタBSR1は、出力セルBSCO[1]においてのラッチクロックUpdate-DRが有効な設定になる。
【0039】
[ステップ12−15]
TAPCは、ステップ12でSELECT-DR-SCAN(Sele)ステートになり、ステップ13でCAPTURE-DR(Cap)ステートになり、ステップ14でEXIT1-DR(Exit)モードになり、ステップ15でUPDATE-DR(Upd)ステートなり、ステップ11でRUN-TEST/IDELE(Idle)ステートに戻る。
【0040】
上記ステップ13になる前に、フラッシュコントローラ101は、フラッシュメモリ102を制御するための任意のデータ(例えばフラッシュメモリ102を不活性にするデータ)を出力している。
【0041】
上記ステップ13のCAPTURE−DRステートでは、シフトセレクトShift−DRによって入力マルチプレクサMUX1の入力Aをセレクトし、シフトクロックClock−DRによってフラッシュコントローラ101から出力された上記任意の制御データ(例えばフラッメモリをが非活性にするデータ)をBSCO[1]のシフトフリップフロップFF1に取り込む。
【0042】
上記ステップ15のUPDATE-DRステートでは、シフトフリップフロップFF1に取り込んだ上記任意の制御データをラッチクロックUpdate-DR(ラッチイネーブルUpdate-En=1であってUpdate-DRは有効になっている)によってBSCO[1]のラッチフリップフロップFF2に取り込み、モードセレクトModeによって出力マルチプレクサMUX2の入力Bをセレクトし、上記任意の制御データをデータ出力DOからフラッシュメモリ102に出力する。
【0043】
なお、フラッシュメモリ102を制御するための任意のデータ(例えばフラッシュメモリ102を不活性にするデータ)をTDIから入力し、上記ステップ13のCAPTURE-DRステートに代えて、SHIFT-DRステートによってシフトフリップフロップFF1に取り込むことも可能である。
【0044】
[ステップ17−26]
TAPCは、ステップ17でSELECT-DR-SCAN(Sele)ステートになり、ステップ18でSELECT-IR-SCAN(Sele)ステートになり、ステップ19でCAPTURE-IR(Cap)ステートになり、ステップ20−23でSHIFT-IR(shift)ステートになり、ステップ24でEXIT1-IR(Exit)モードになり、ステップ25でUPDATE-IR(Upd)ステートなり、ステップ26でRUN-TEST/IDELE(Idle)ステートに戻る。
【0045】
上記ステップ20−23のSHIFT-IRステートで、TDIから命令レジスタIDに、出力セルBSCO[1]においてラッチクロックUpdate-DRが無効となるB命令コード(例えばプライベート命令のコード)を入力し、上記ステップ25のUPDATE-IRで、上記のB命令コードを命令レジスタIDから命令デコーダIDに出力させる。
【0046】
これによって、命令デコーダIDから出力セルBSCO[1]に供給されるラッチイネーブルUpdate-Enの値は0となり、バウンダリ・スキャン・レジスタBSR1は、出力セルBSCO[1]においてのラッチクロックUpdate-DRが無効な設定になる。従って、出力セルBSCO[1]のデータ出力DOからフラッシュメモリ102に出力されるデータは、上記任意の制御データ(例えばフラッシュメモリ102を非活性にするデータ)に保持される。これ以降、フラッシュメモリ102に誤り書き込みなどの無用なアクセスをすることなく、フラッシュコントローラの101のテストが可能になる。
【0047】
[ステップ27−33]
TAPCは、ステップ27でSELECT-DR-SCAN(Sele)ステートになり、ステップ28でCAPTURE-DR(Cap)ステートになり、ステップ29−32でSHIFT-DR(shift)ステートになり、ステップ33でEXIT1-IR(Exit)モードになる。
【0048】
上記ステップ28になる前に、フラッシュコントローラ101には、テストのためのデータが入力され、そのテストによるデータがフラッシュコントローラ101から出力されている。
【0049】
上記ステップ28のCAPTURE-DRステートでは、シフトセレクトShift-DRによって入力マルチプレクサMUX1の入力Aをセレクトし、DIから入力されたデータをシフトクロックClock-DRによってシフトフリップフロップFF1に取り込む。これによって、出力セルBSCO[1]では、上記のテストによってフラッシュコントローラ101から出力されたデータがシフトフリップフロップFF1に取り込まれる。
【0050】
上記ステップ29−32のSHIFT-DRステートでは、シフトセレクトShift-DRによって入力マルチプレクサMUX1の入力Bをセレクトし、シフトクロックClock-DRによって、シフトフリップフロップFF1のデータをシフトデータ出力SOからシフトアウトする。これによって、上記のテストによるフラッシュコントローラ101の出力データがTDOからシリアル出力される。以上で最初のテストが完了し、次のテストが開始される。
【0051】
以上のように実施の形態1によれば、ラッチクロックUpdate-DRと、このUpdate-DRの有効または無効にするためのラッチイネーブルUpdate-EnとのアンドゲートANDの出力を、出力セルBSCO[1]のラッチフリップフロップFF2のクロック入力CKに供給することにより、出力セルBSCO[1]からフラッシュメモリ102に入力するデータを任意の制御データに固定したままで、フラッシュコントローラ101の同時テストが可能となるので、誤書き込みなどの無用なアクセスによるフラッシュメモリ102のテスト時間の短縮が図れる。
【0052】
実施の形態2
図7は本発明の実施の形態2のJTAGデバイスにおいての出力セルBSCO[2]の回路構成図である。
【0053】
この実施の形態2のJTAGデバイスは、上記実施の形態1のJTAGデバイス(図1参照)において、バウンダリ・スキャン・レジスタBSR[1]の出力セルBSCO[1](図2参照)を図7のBSCO[2]に変更し、入力セルBSCIをBSCI[2]に変更し、TAPインターフェースTAPIF[1]のTAPコントローラTAPC(図3参照)をTAPC[2]に変更したものである。
【0054】
なお、この実施の形態1の説明(図を含む)において、図1−図3の上記実施の形態1のものと同じものには同じ符号で表記し、上記実施の形態1のものに相当しかつ異なるものには、上記実施の形態1のものの表記に[2]を付してまたは[1]を[2]に変えて表記してある。
【0055】
実施の形態2の出力セルBSCO[2]は、上記実施の形態1の出力セルBSCO[1](図2参照)において、シフトフリップフロップFF1をFF1[2]に変更したものである。また、実施の形態2の入力セルBSCI[2]は、上記実施の形態1の入力セルBSCIにおいて、シフトフリップフロップFF1をFF1[2]に変更したものである。
【0056】
実施の形態2のシフトフリップフロップFF1[2]は、入力クロックのネガティブエッジ(立下り)で動作するネガティブエッジトリガーフリップフロップで構成されている。シフトクロックClock-DRは、このネガティブエッジトリガーのFF1[2]のクロック入力CKNに入力される。
【0057】
図8は本発明の実施の形態2のJTAGデバイスにおいてのクロックのタイミングチャートである。実施の形態2のJTAGデバイスでは、フラッシュコントローラ101を動作させるクロック(システムクロック)CLKと、入力セルBSCI[2]および出力セルBSCO[2]のシフトフリップフロップFF1[2](ネガティブエッジトリガーのフリップフロップのクロック入力CKN(シフトクロックClock-DR)とは、同じクロックツリーで構成されている。
【0058】
実施の形態2のTAPコントローラTAPC[2]は、上記実施の形態1のTAPCにおいて、シフトクロックClock-DRをシステムクロックCLKと同じクロックツリーで生成する構成にしたものである。
【0059】
この実施の形態2では、システムクロックCLKのポジティブエッジ(立上り)で、フラッシュコントローラ101から出力され、出力セルBSCO[2]のデータ入力DIおよび入力マルチプレクサMUX1を介してシフトフリップフロップFF1[2]の入力Dに入力されたデータが、シフトクロックClock-DRのネガティブエッジ(=システムクロックCLKのネガティブエッジ)で、シフトフリップフロップFF1[2]に取り込まれ、FF1[2]の出力Qからシフトデータ出力SOにシフト出力される。
【0060】
以上のように実施の形態2によれば、上記実施の形態1のシフトフリップフロップFF1を、ネガティブエッジトリガーのシフトフリップフロップFF1[1]に置き換え、このFF1[1]にシステムクロック(フラッシュコントローラ101の動作クロック)と同じクロックツリーで構成したシフトクロックClock-DRを入力することにより、シフトフリップフロップのデータ入力Dにおいてのセットアップタイムおよびホールドタイムを確実に確保でき、フラッシュコントローラ101とバウンダリスキャン回路の複数のクロック間のタイミングを気にせずにJTEGデバイスを設計できるので、クロックサイクルをより高速にでき、上記実施の形態1よりも高速なテスト動作が可能になる。
【0061】
実施の形態3
図9は本発明の実施の形態3のJTAGデバイスにおいての出力セルBSCO[3]の回路構成図である。
【0062】
この実施の形態3のJTAGデバイスは、上記実施の形態2のJTAGデバイスにおいて、出力セルBSCO[2](図7参照)を図9のBSCO[3]に変更し、命令デコーダIR[1](図3参照)をIR[3]に変更したものである。
【0063】
なお、この実施の形態1の説明(図を含む)において、図1−図3の上記実施の形態1のものまたは図7の上記実施の形態2のものと同じものには同じ符号で表記し、上記実施の形態1または上記実施の形態2のものに相当しかつ異なるものには、上記実施の形態1または上記実施の形態2のもの表記に[3]を付してまたは[1],[2]を[3]に変えて表記してある。
【0064】
実施の形態3の出力セルBSCO[3]は、上記実施の形態2の出力セルBSCO[2](図7参照)において、ラッチフリップフロップFF2をFF2[3]に変更したものである。
【0065】
実施の形態3のラッチフリップフロップFF2[3]は、データセット入力またはデータリセット入力付きのフリップフロップで構成されている。このFF2[3]のデータセット入力Sまたはデータリセット入力Rには、命令デコーダIR[3]からデータセット/リセットSet-or-Resetが入力される。
【0066】
実施の形態3の命令デコーダIR[3]は、上記実施の形態1および上記実施の形態2の命令デコーダIR[1]において、命令コードに従ってデータセット/リセットSet-or-Resetを生成する手段を設けたものである。
【0067】
この実施の形態3では、テストの初期動作(フラッシュメモリ102に任意の制御データ(例えばフラッシュメモリ102を不活性にするデータ)を出力する動作)において、命令デコーダIR[3]からラッチフリップフロップFF2[3]のデータセット入力Sまたはリデータセット入力Rにデータセット/リセットSet-or-Resetを入力することによって上記任意の制御データをFF2[3]に設定し、モードセレクトModeによって出力マルチプレクサMUX2の入力Bをセレクトし、B命令コードを命令レジスタIRにセットすることによって、ラッチクロックUpdate-DRを無効にして、出力セルBSCO[3]のデータ出力DOを上記任意の制御データに固定する。
【0068】
例えば、上記任意の制御データを値1に固定するFF2[3]は、データセット入力付きのフリップフロップで構成し、上記任意の制御データを値0に固定するFF2[3]は、データリセット入力付きのフリップフロップで構成する。
【0069】
以上のように実施の形態3によれば、上記実施の形態2のラッチフリップフロップFF2を、データセット入力またはデータリセット付きのラッチフリップフロップFF2[3]に置き換え、テストの初期動作において、このFF2[3]にデータセット/リセットSet-or-Resetを入力することにより、A命令コードのセットおよびフラッシュコントローラ101の出力についてのCAPTURE-DR(Cap)ステートおよびUPDATE-DR(Upd)ステート(図5のステップ13およびステップ15)の制御をせずに、フラッシュメモリ102の入力を任意の制御データで固定にすることができるので、テストサイクルを削減でき、上記実施の形態2よりも高速なテスト動作が可能になる。
【0070】
【発明の効果】
以上説明したように本発明によれば、出力バウンダリ・スキャン・セルから第2の回路に出力されるデータを固定したまま、第1の回路の同時テストができるので、IPコアのテスト時間の短縮が図れるという効果がある。
【図面の簡単な説明】
【図1】 本発明の実施の形態1のJTAGデバイスの構成図である。
【図2】 図1のJTAGデバイスにおいての出力バウンダリ・スキャン・セルの回路構成図である。
【図3】 図1のJTAGデバイスにおいてのTAPインターフェースの構成図である。
【図4】 TAPコントローラのステートの遷移を説明するフローチャートである。
【図5】 図1のJTAGデバイスの動作を説明するタイミングチャートである。
【図6】 図1のJTAGデバイスの動作を説明するフローチャートである。
【図7】 本発明の実施の形態2のJTAGデバイスにおいての出力バウンダリ・スキャン・セルの回路構成図である。
【図8】 本発明の実施の形態2のJTAGデバイスにおいてのクロックのタイミングチャートである。
【図9】 本発明の実施の形態3のJTAGデバイスにおいての出力バウンダリ・スキャン・セルの回路構成図である。
【図10】 従来のJTAGデバイスの構成図である。
【図11】 図10のJTAGデバイスにおいての出力バウンダリ・スキャン・セルの回路構成図である。
【図12】 図10のJTAGデバイスにおいてのTAPインターフェースの構成図である。
【図13】 図10のJTAGデバイスにおいてのクロックのタイミングチャートである。
【符号の説明】
101 フラッシュコントローラ、 102 フラッシュメモリ、 BSR バウンダリ・スキャン・レジスタ、 BSCI 入力バウンダリ・スキャン・セル、 BSCO 出力バウンダリ・スキャン・セル、 MUX1 入力マルチプレクサ、 MUX2 出力マルチプレクサ、 FF1 シフトフリップフロップ、 FF2 ラッチフリップフロップ、 TAPIF TAPインターフェース、 TAPC TAPコントローラ、 IR 命令レジスタ、 ID 命令デコーダ、 MUX マルチプレクサ、 BUF 出力バッファ。

Claims (6)

  1. IPコアのテストのために設けられて上記IPコアとともにJTAGデバイスを構成するバウンダリスキャン回路において、
    上記IPコアを構成する第1の回路の入力に設けられた1つまたは複数の入力バウンダリ・スキャン・セルと、上記第1の回路の出力と上記IPコアを構成する第2の回路の入力の間に設けられ1つまたは複数の出力バウンダリ・スキャン・セルとを備えたバウンダリ・スキャナ・レジスタと
    上記バウンダリ・スキャン・レジスタを制御するTAPインターフェースとを備え、
    上記出力バウンダリ・スキャン・セルが、
    上記第1の回路から出力されるデータを受ける第1の入力端子と、
    上記入力バウンダリ・スキャン・セル又は他の出力バウンダリ・スキャン・セルから出力されるデータを受ける第2の入力端子と、
    上記第1の入力端子に供給されるデータと、上記第2の入力端子に供給されるデータのいずれかを選択して出力する第1の選択回路と、
    上記第1の選択回路からの出力データをラッチして保持し、出力する第1のフリップフロップと、
    上記第1のフリップフロップの出力データをラッチして保持し、出力する第2のフリップフロップと、
    上記第1の入力端子に供給されるデータと、上記第2のフリップフロップからの出力データのいずれかを選択して、上記第2の回路に出力する第2の選択回路と、
    論理回路とを備え、
    上記TAPインターフェースは、上記第1の選択回路の選択動作を第1の制御信号により制御し、上記第2の選択回路の選択動作を、上記第1の制御信号とは異なる第2の制御信号により制御し、
    上記TAPインターフェースは、上記第1のフリップフロップのラッチ動作を行なわせるための第3の制御信号と、上記第2のフリップフロップにラッチ動作を行なわせるための第4の制御信号と、上記第4の制御信号を有効にする第1の値又は上記第4の制御信号を無効にする第2の値のいずれかを取る第5の制御信号を出力し、
    上記論理回路は、上記第5の制御信号が上記第2の値を取っているときは、上記第4の制御信号による上記第2のフリップフロップの上記ラッチ動作が行われないようにし、
    上記TAPインターフェースは、入力された命令コードに従って上記第5の制御信号を上記第1の値又は上記第2の値にすることで、上記第4の制御信号による上記第2のフリップフロップのラッチ動作を制御する
    ことを特徴とするバウンダリスキャン回路。
  2. 請求項1記載のバウンダリスキャン回路において、
    上記論理回路は、上記第4の制御信号および上記第5の制御信号のアンド出力を、上記第2のフリップフロップのクロック入力に供給する
    ことを特徴とするバウンダリスキャン回路。
  3. 請求項1記載のバウンダリスキャン回路において、
    上記第1のフリップフロップは、ネガティブエッジトリガのフリップフロップであり、
    上記TAPインターフェースは、上記第1の回路を動作させるシステムクロックと同じクロックツリーで構成したクロックを上記第3の制御信号として上記第1のフリップフロップのクロック入力に供給する
    ことを特徴とするバウンダリスキャン回路。
  4. 請求項1記載のバウンダリスキャン回路において、
    上記第2のフリップフロップは、データセット入力またはデータリセット付きのフリップフロップであり、
    上記TAPインターフェースは、テストの初期動作において、上記第2のフリップフロップにデータセット/リセットを入力する
    ことを特徴とするバウンダリスキャン回路。
  5. 請求項1に記載のバウンダリスキャン回路であって、
    上記第1の回路が上記第2の回路を制御するためのデータを出力するときに、
    上記TAPインターフェースは、
    上記第1の制御信号により、上記第1の選択回路に上記第1の入力端子に供給されたデータを選択させ、
    上記第3の制御信号により、上記第1のフリップフロップに上記第1の選択回路の出力をラッチさせ、
    上記第5の制御信号を上記第1の値にした状態で、上記第4の制御信号を出力することで、上記第2のフリップフロップに上記第1のフリップフロップの出力をラッチさせ、
    上記第2の制御信号により、上記第2の選択回路に上記第2のフリップフロップの出力を選択させて、上記第2の回路に供給させ、
    上記第1の回路にテストのためのデータが入力され、上記第1の回路からテストによるデータが出力されているときに、
    上記TAPインターフェースは、
    上記第1の制御信号により、上記第1の選択回路が上記第1の入力端子に供給されたデータを選択させ、続いて上記第2の入力端子に供給されるデータを選択させ、
    上記第3の制御信号により、上記第1のフリップフロップに上記第1の選択回路の出力をラッチさせて、シフトアウトさせ、
    上記第5の制御信号を上記第2の値にすることで、上記第2のフリップフロップが上記ラッチ動作を行なわせないようにして、上記第2のフリップフロップに上記第2の回路を制御するためのデータを保持させ、
    上記第2の制御信号により、上記第2の選択回路に上記第2のフリップフロップの出力を選択させて、上記第2の回路に出力するデータの出力を続けさせる
    ことを特徴とするバウンダリスキャン回路。
  6. 請求項5に記載のバウンダリスキャン回路であって、
    上記第2の回路を制御するためのデータが上記第2の回路を非活性にするデータであることを特徴とするバウンダリスキャン回路。
JP2002203729A 2002-07-12 2002-07-12 バウンダリスキャン回路 Expired - Fee Related JP4122869B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2002203729A JP4122869B2 (ja) 2002-07-12 2002-07-12 バウンダリスキャン回路
US10/405,489 US7032147B2 (en) 2002-07-12 2003-04-03 Boundary scan circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002203729A JP4122869B2 (ja) 2002-07-12 2002-07-12 バウンダリスキャン回路

Publications (2)

Publication Number Publication Date
JP2004045244A JP2004045244A (ja) 2004-02-12
JP4122869B2 true JP4122869B2 (ja) 2008-07-23

Family

ID=30112683

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002203729A Expired - Fee Related JP4122869B2 (ja) 2002-07-12 2002-07-12 バウンダリスキャン回路

Country Status (2)

Country Link
US (1) US7032147B2 (ja)
JP (1) JP4122869B2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060060820A1 (en) * 2004-09-21 2006-03-23 Schumacher Ray F Hollow porous-wall glass microspheres for hydrogen storage
US7666807B2 (en) * 2004-09-21 2010-02-23 Savannah River Nuclear Solutions, Llc Hollow porous-wall glass microspheres for hydrogen storage
JP2006105891A (ja) * 2004-10-08 2006-04-20 Univ Of Tokyo 集積回路およびそのテスト方法ならびに集積回路装置
KR100686182B1 (ko) * 2006-01-27 2007-02-26 엘지전자 주식회사 네트워크 온 칩 내 ip 코아 스캔 테스트 제어 장치
US20080133989A1 (en) * 2006-12-05 2008-06-05 Sony Computer Entertainment Inc. Method And Apparatus For Scan Chain Circuit AC Test
US7707467B2 (en) * 2007-02-23 2010-04-27 Micron Technology, Inc. Input/output compression and pin reduction in an integrated circuit
US8108742B2 (en) 2009-06-11 2012-01-31 Texas Instruments Incorporated Tap control of TCA scan clock and scan enable
CN103838344B (zh) * 2012-11-27 2016-08-03 英业达科技有限公司 通过边界扫描进行主机板电源供应控制的系统及其方法
US20150205464A1 (en) * 2014-01-22 2015-07-23 Microsoft Corporation Updating a user interface to a service
CN113671360B (zh) * 2020-05-13 2024-06-18 圣邦微电子(北京)股份有限公司 I2c接口器件测试方法、装置及i2c接口器件

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2973641B2 (ja) 1991-10-02 1999-11-08 日本電気株式会社 Tapコントローラ
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
US7003707B2 (en) * 2000-04-28 2006-02-21 Texas Instruments Incorporated IC tap/scan test port access with tap lock circuitry

Also Published As

Publication number Publication date
US7032147B2 (en) 2006-04-18
US20040010740A1 (en) 2004-01-15
JP2004045244A (ja) 2004-02-12

Similar Documents

Publication Publication Date Title
US10928445B2 (en) Boundary scan and wrapper circuitry with state machine and multiplexers
US5623503A (en) Method and apparatus for partial-scan testing of a device using its boundary-scan port
KR100267096B1 (ko) 디버그 및 제조 테스트 목적을 위한 적응적 스캔 체인
US20040006729A1 (en) Hierarchical test methodology for multi-core chips
US7624322B2 (en) Scan based testing of an integrated circuit containing circuit portions operable in different clock domains during functional mode
US8185782B2 (en) Test device and method for hierarchical test architecture
US5768289A (en) Dynamically controlling the number of boundary-scan cells in a boundary-scan path
JP3287539B2 (ja) テスト機構を有する処理システム
JPH07260883A (ja) システム試験装置
JP4122869B2 (ja) バウンダリスキャン回路
KR20050007565A (ko) 집적회로부를 구성하는 방법 및 장치
US7284174B2 (en) Enhanced JTAG interface
US6079039A (en) Test circuit and test method for testing semiconductor chip
JP3094983B2 (ja) システムロジックのテスト回路およびテスト方法
Bushard et al. DFT of the Cell Processor and its Impact on EDA Test Softwar
JP3043871B2 (ja) 半導体集積回路
JP3265270B2 (ja) バウンダリ・スキャン・テスト機能を用いたac測定回路
US20240319270A1 (en) Reset for scan mode exit for devices with power-on reset generation circuitry
JPWO2009037769A1 (ja) 半導体集積回路装置および半導体集積回路装置の試験方法
Lala design for Testability
AC167 IEEE Standard 1149.1 (JTAG) in the 3200DX Family
JP2004294397A (ja) 半導体装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050629

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080122

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080314

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080408

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080421

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110516

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110516

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110516

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110516

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120516

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130516

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140516

Year of fee payment: 6

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees