JP2004094451A - On-chip jtag interface circuit and system lsi - Google Patents
On-chip jtag interface circuit and system lsi Download PDFInfo
- Publication number
- JP2004094451A JP2004094451A JP2002252671A JP2002252671A JP2004094451A JP 2004094451 A JP2004094451 A JP 2004094451A JP 2002252671 A JP2002252671 A JP 2002252671A JP 2002252671 A JP2002252671 A JP 2002252671A JP 2004094451 A JP2004094451 A JP 2004094451A
- Authority
- JP
- Japan
- Prior art keywords
- jtag interface
- signal
- debugger
- bus
- data bus
- 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.)
- Abandoned
Links
Images
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
この発明はオンチップデバッグを実現するオンチップJTAGインタフェース回路とそれを適用したシステムLSIに関するものである。
【0002】
【従来の技術】
プロセッサを含むシステムLSIのデバッグ手法のひとつとして、IEEE1149.1を利用して、プロセッサにデバッグのための機能を設けるオンチップデバッグという手法が用いられている。IEEE1149.1を利用したオンチップデバッグについては、例えば「JTAGテストの基礎と応用」(CQ出版社)に記載されている。
【0003】
図11はIEEE1149.1を利用したオンチップデバッグを実現する従来のオンチップJTAGインタフェース回路の構成図である。従来のオンチップJTAGインタフェース回路1は、IEEE1149.1に準拠したシリアル信号TDI、TMS、TDO、TCKの入出力ポートを有する(TRSTはオプション)。TAPコントローラ2は、テストモードを選択するTMS信号入力に従って状態遷移を行いながら内部の各レジスタのシフト動作を制御する。命令レジスタ(IR)3はシフトレジスタとラッチで構成され、TAPコントローラ2からのシフト指示により、命令を1ビットずつ入力または出力し、またTAPコントローラ2からの更新指示により、入力した命令をラッチする。
【0004】
命令デコード部4は、命令レジスタ3に入力された命令をデコードし、各部を制御して命令を実行する。プロセッサ制御レジスタ6はデータレジスタ(DR)のひとつで、命令レジスタ3と同様にシフトレジスタとラッチで構成され、デバッグ対象であるプロセッサ5の動作モードとステータスについて、TAPコントローラ2および命令デコード部4からの指示に従って動作をさせる。スキャンレジスタ7はデータレジスタ(DR)のひとつで、1ビットのシフトレジスタとラッチから構成されるセルをプロセッサ5の入出力端子に対応させて一連に接続されたものである。スキャンレジスタ7はTAPコントローラ2および命令デコード部4からの指示により、TDIから入力したデータをプロセッサ5の入力端子へ入力し、またプロセッサ5の出力端子の状態を、TDOから出力する。
【0005】
命令レジスタ3に設定する命令は、プライベート命令としてTEST1命令とTEST2命令の2つが用意される。TEST1命令は、データレジスタ(DR)としてプロセッサ制御レジスタ6を選択し、プロセッサ制御レジスタ6に動作モードをTDIから設定することで、プロセッサ5の動作を制御する。TEST2命令は、データレジスタ(DR)としてスキャンレジスタ7を選択し、TDIから入力したデータをプロセッサ5へ入力し、またプロセッサ5が出力したデータをTDOから出力する。
【0006】
次にある対象メモリの任意のアドレスの内容を読み出す場合の動作について説明する。まずTEST1命令でプロセッサ制御レジスタ6をホールド状態に設定し、プロセッサ5の実行を停止させる。次にTEST1命令でプロセッサ制御レジスタ6を外部から命令を取り込ませるモードに設定する。次にTEST2命令でプロセッサ5のメモリロード命令をスキャンレジスタ7中のデータバスに対応する部分に設定する。そしてTEST1命令でプロセッサ制御レジスタ6をステップ実行に設定し、プロセッサ5をステップ実行させる。これにより対象メモリの内容がメモリロード命令で指定したプロセッサ5の内部レジスタにロードされる。
【0007】
次にTEST1命令でプロセッサ制御レジスタ6を外部から命令を取り込ませるモードに設定する。次にTEST2命令でプロセッサ5のストアメモリ命令をスキャンレジスタ7中のデータバスに対応する部分に設定する。そしてTEST1命令でプロセッサ制御レジスタ6をステップ実行に設定し、プロセッサ本体5をステップ実行させる。これにより先に内部レジスタにロードした内容がスキャンレジスタ7中のデータバスに対応する部分にセットされる。そしてTEST2命令でスキャンパスをシフトしてTDOからシリアルにデータを取り出す。
【0008】
このように動作させることで、従来のオンチップJTAGインタフェース回路1は、シリアル信号入出力端子を用いて対象メモリの内容を読み出すことができ、デバッグを行うことができる。
【0009】
【発明が解決しようとする課題】
従来のオンチップJTAGインタフェース回路は、対象メモリの読み出しを、プロセッサにロード命令を実行させることで行っていた。このため例えば画像データなどの大量のデータを読み出す場合などは、大量の命令をプロセッサに実行させなければならず、読み出しに時間がかかってしまうという問題があった。
また、従来のオンチップJTAGインタフェース回路ではデバッグ時に常にプロセッサを動作させるため、近年複雑化していくシステムLSIにおいては、不正動作の原因がプロセッサにあるのか、あるいはプロセッサに接続された他の処理ブロックにあるのかといった原因の切り分けが困難になるという問題点があった。
【0010】
この発明は上記のような問題点を解決するためになされたもので、プロセッサを動作させることなくデバッグを可能にすることを目的とする。
【0011】
【課題を解決するための手段】
この発明に係るオンチップJTAGインタフェース回路は、プロセッサと、任意の処理を行う処理ユニットと、データバスとを含み、前記プロセッサは、前記データバスを制御することで前記処理ユニットと通信するシステムLSIにおいて、
前記システムLSI外部のデバッガとシリアル信号入出力にてデータ通信を行うJTAGインタフェース手段と、
前記デバッガから前記JTAGインタフェース手段を通じて入力した命令に従った前記データバスの第1の制御信号を生成し前記データバスを制御するバス制御手段と、
前記プロセッサから入力した前記データバスの第2の制御信号と、前記第1の制御信号とを選択的に切り替えて前記データバスへ接続するバス選択手段とを備え、
前記プロセッサと前記デバッガとのいずれか一方が前記データバスを制御し前記処理ユニットと通信可能にすることを特徴とする。
【0012】
また、この発明に係るオンチップJTAGインタフェース回路は、前記JTAGインタフェース手段が、前記デバッガから前記シリアル信号入出力を通じて前記処理ユニットのリセット情報を入力して前記リセット情報に従った第1のリセット信号を生成し、
前記プロセッサから入力した前記処理ユニットの第2のリセット信号と前記第1のリセット信号とを選択的に切り替えて前記処理ユニットへ出力するリセット選択手段を備える。
【0013】
また、この発明に係るオンチップJTAGインタフェース回路は、前記JTAGインタフェース手段が、前記処理ユニットが出力する割り込み信号またはエラー通知信号を入力し、前記デバッガから前記シリアル信号入出力を通じて前記割り込み信号またはエラー通知信号の状態を読み出し可能とする。
【0014】
また、この発明に係るオンチップJTAGインタフェース回路は、前記JTAGインタフェース手段が、前記デバッガから前記シリアル信号入出力を通じて停止要因情報を入力し、
前記割り込み信号またはエラー通知信号と前記停止要因情報とから前記処理ユニットの全部を停止させる停止信号を生成する停止信号生成手段を備え、
前記停止信号を前記処理ユニットの全部へ出力する。
【0015】
また、この発明に係るオンチップJTAGインタフェース回路は、プロセッサと、任意の処理を行う処理ユニットと、データバスと、前記プロセッサと前記処理ユニットとを含む複数の処理ブロックの中から1つの処理ブロックを選定し前記データバスの使用を許可する調停回路とを含むシステムLSIにおいて、
前記プロセッサと前記処理ユニットは前記データバスを制御して前記システムLSIの内部または外部のメモリにアクセス可能であり、
前記システムLSI外部のデバッガとシリアル信号入出力にてデータ通信を行うJTAGインタフェース手段と、
前記デバッガから前記JTAGインタフェース手段を通じて入力した命令に従った前記データバスの制御信号を生成し前記データバスを制御するバス制御手段とを備え、
前記デバッガが前記データバスを制御し前記メモリと通信可能にする。
【0016】
また、この発明に係るオンチップJTAGインタフェース回路は、プロセッサと、任意の処理を行う1つ以上の処理ユニットと、システムバスと、専用プロセッサと、データバスと、調停回路とを含むシステムLSIにおいて、、
前記調停回路は、前記専用プロセッサと前記処理ユニットとを含む複数の処理ブロックの中から1つの処理ブロックを選定し前記データバスの使用を許可し、
前記ホストプロセッサは、前記システムバスを制御することで前記処理ユニットと通信し、
前記専用プロセッサおよび前記処理ユニットは、前記データバスを制御して前記システムLSIの内部または外部のメモリにアクセス可能であり、
前記システムLSI外部のデバッガとシリアル信号入出力にてデータ通信を行うJTAGインタフェース手段と、
前記デバッガから前記JTAGインタフェース手段を通じて入力した命令に従った前記システムバスの第1の制御信号を生成する第1のバス制御手段と、
前記ホストプロセッサから入力した前記システムバスの第2の制御信号と、前記第1の制御信号とを選択的に切り替えて前記システムバスへ接続するバス選択手段と、
前記デバッガから前記JTAGインタフェース手段を通じて入力した命令に従った前記データバスの制御信号を生成し前記データバスを制御する第2のバス制御手段とを備え、
前記ホストプロセッサと前記デバッガとのいずれか一方が前記システムバスを制御し前記処理ユニットと通信可能にし、
前記デバッガが前記データバスを制御し前記メモリと通信可能にする。
【0017】
また、この発明に係るオンチップJTAGインタフェース回路は、前記JTAGインタフェース手段が、前記デバッガから前記シリアル信号入出力を通じて前記処理ユニットのリセット情報を入力して前記リセット情報に従った第1のリセット信号を生成し、
前記ホストプロセッサから入力した前記処理ユニットの第2のリセット信号と前記第1のリセット信号とを選択的に切り替えて前記処理ユニットへ出力するリセット選択手段を備える。
【0018】
また、この発明に係るオンチップJTAGインタフェース回路は、前記JTAGインタフェース手段が、前記処理ユニットが出力する割り込み信号またはエラー通知信号を入力し、前記デバッガから前記シリアル信号入出力を通じて前記割り込み信号またはエラー通知信号の情報を読み出し可能である。
【0019】
また、この発明に係るオンチップJTAGインタフェース回路は、前記JTAGインタフェース手段が、前記デバッガから前記シリアル信号入出力を通じて停止要因情報を入力し、
前記割り込み信号またはエラー通知信号と前記停止要因情報とから前記処理ユニットの全部を停止させる停止信号を生成する停止信号生成手段を備え、
前記停止信号を前記処理ユニットへ出力する。
【0020】
また、この発明に係るシステムLSIは、請求項1〜9の何れかに記載のオンチップJTAGインタフェース回路と、プロセッサと、任意の処理を行う処理ユニットと、オンチップJTAGインタフェース回路と、プロセッサと、処理ユニットとの信号の入出力を行うバスとを含む。
【0021】
【発明の実施の形態】
実施の形態1.
図1は本発明の実施の形態1におけるオンチップJTAGインタフェース回路を含むシステムLSIの構成図である。デバッガ11は、検証者が直接操作を行うシステムLSI外部の検証環境であり、例えばPCと基板などから構成される。またデバッガ11は、システムLSI10内部のオンチップJTAGインタフェース回路14とIEEE1149.1規格に準拠したシリアル信号入出力にてデータ通信を行う。
【0022】
オンチップJTAGインタフェース回路14は、シリアル信号入出力を通じてデバッガ11から入力した命令に従ってシステムバス13を制御するほか、ホストプロセッサ12からもシステムバス13を制御できるようシステムバス信号の切り替えを行う。専用処理ユニット15、16は、ある特定の処理を行う処理ブロックで、システムバス13からリードおよびライトが可能な複数のバスレジスタを夫々有する。バスレジスタには、専用処理ユニット15、16の起動と停止を制御するレジスタや、専用処理ユニット15、16の処理結果を格納するレジスタなどがあり、システムバス13からバスレジスタをリードまたはライトすることにより、専用処理ユニット15、16を起動または停止させ、専用処理ユニット15、16の処理結果を読み出すことができる。
【0023】
オンチップJTAGインタフェース回路14は、ホストプロセッサ12から専用処理ユニット15、16のリセット信号を入力し、デバッガ11から指示されたリセット情報とのいずれかを選択して専用処理ユニット15、16のリセット信号19、20として出力する。
【0024】
専用処理ユニット15は、オンチップJTAGインタフェース回路14を介してホストプロセッサ12へエラー通知信号17を出力する。また専用処理ユニット16は、ホストプロセッサ12へ同じくオンチップJTAGインタフェース回路14を介して割り込み信号18を出力する。
専用処理ユニット15、16は、オンチップJTAGインタフェース回路14からの停止信号37により内部の状態を保持したまま停止し、停止した状態でシステムバス13からバスレジスタのリードが可能である。
【0025】
デバッガ11からオンチップJTAGインタフェース回路14へ入力する命令は、システムバス13を介して書き込みを行うシステムバスライト命令、システムバス13を介して読み出しを行うシステムバスリード命令、専用処理ユニット15、16の各々のリセット状態を制御する個別リセット命令、専用処理ユニット15、16が出力する割り込み信号18およびエラー通知信号17を読み出す割り込み/エラーステータスリード命令、停止信号37の生成を制御する停止要因設定命令がある。
【0026】
オンチップJTAGインタフェース回路14の内部構成を図2に示す。オンチップJTAGインタフェース回路14はJTAGインタフェース手段21とバス制御手段であるシステムバスインタフェース33とバス選択手段34とデバッグモード信号32が通常動作かデバッグ動作かによりリセット信号を選択するリセット選択手段35及び停止信号37を出力する停止信号生成手段36から構成される。
【0027】
JTAGインタフェース手段21は、IEEE1149.1規格に準拠した信号入出力にてデバッガ11と通信するとともに、デバッガ11から入力した命令をシステムバスインタフェース33に指示する。
また、JTAGインタフェース手段21は、シフトレジスタとラッチから構成されるレジスタ22〜29と、TMS信号入力に従いレジスタ22〜29のシフト動作を制御するTAPコントローラおよび命令デコード部(図示は省略)を備えている。
【0028】
レジスタ22〜29は、デバッガ11から入力した命令を保持する命令レジスタ(IR)22と、リードアドレスを保持するIMリードアドレスレジスタ23と、リードデータを保持するIMリードデータレジスタ24と、ライトアドレス及びライトデータを保持するIMライトレジスタ25と、システムバスインタフェース33の動作終了を保持するIMステータスレジスタ26と、割り込み/エラーステータスレジスタ27と、個別リセットレジスタ28と、停止要因レジスタ29から成る。
【0029】
システムバスインタフェース33は、JTAGインタフェース手段21からの指示に従いシステムバス信号31を生成する。デバッグモード信号32は、外部から入力され、通常動作かデバッグ動作かを示す信号である。バス選択手段34はデバッグモード信号32が通常動作の場合はホストプロセッサ12のシステムバス信号30をシステムバス13へ接続し、デバッグモード信号32がデバッグ動作の場合は、システムバスインタフェース33のシステムバス信号31をシステムバス13へ接続する。
【0030】
次に動作について、まずシステムバスライト命令を実行する場合につき説明する。
図3にはデバッガ11からシステムバスライト命令を実行する場合のJTAGインタフェース手段21の入出力信号とIEEE1149.1規格上の状態遷移を示す。はじめにデバッガ11はシステムバスライト命令を命令レジスタ(IR)22に設定する。JTAGインタフェース手段21は命令レジスタ(IR)22の内容がシステムバスライト命令であれば、次に制御するデータレジスタ(DR)をIMライトレジスタ25に切り替える。次にデバッガ11はライトアドレスとライトデータをIMライトレジスタ25に設定する。その後、JTAGインタフェース手段21は次に制御するデータレジスタ(DR)をIMステータスレジスタ26に切り替え、デバッガ11はリード動作が終了するまでIMステータスレジスタ26の読み出しを繰り返す。
【0031】
一方でJTAGインタフェース手段21は、ライト動作を行うことと、IMライトレジスタ25の内容とをシステムバスインタフェース33へ指示する。そしてシステムバスインタフェース33は、システムバス13を制御してIMライトレジスタ25のライトアドレスが示すバスレジスタにIMライトレジスタ25のライトデータを書き込み、動作終了信号をJTAGインタフェース手段21へ出力する。JTAGインタフェース手段21はIMステータスレジスタ26に動作終了を示す情報を格納する。そしてデバッガ11はIMステータスレジスタ26の読み出しにより動作終了の情報を取得する。
【0032】
次に、システムバスリード命令を実行する場合について説明する。
図4にはデバッガ11からシステムバスリード命令を実行する場合のJTAGインタフェース手段21の入出力信号とIEEE1149.1規格上の状態遷移を示す。はじめにデバッガ11はシステムバスリード命令を命令レジスタ(IR)22に設定する。JTAGインタフェース手段21は命令レジスタ(IR)22の内容がシステムバスリード命令であれば、次に制御するデータレジスタ(DR)をIMリードアドレスレジスタ23に切り替える。次にデバッガ11はリードアドレスをIMリードアドレスレジスタ23に設定する。その後、JTAGインタフェース手段21は次に制御するデータレジスタ(DR)をIMステータスレジスタ26に切り替え、デバッガ11はリード動作が終了するまでデータレジスタ(DR)の読み出し動作を2回ずつ繰り返す。
【0033】
この間JTAGインタフェース手段21はIMステータスレジスタ26とIMリードデータレジスタ24とが交互に読み出されるよう制御する。一方でJTAGインタフェース手段21は、リード動作を行うこととIMリードアドレスレジスタ23の内容とをシステムバスインタフェース33へ指示する。そしてシステムバスインタフェース33は、システムバス13を制御してIMリードアドレスレジスタ23のリードアドレスが示すバスレジスタのデータを読み出し、動作終了信号およびリードデータをJTAGインタフェース手段21へ出力する。JTAGインタフェース手段21はIMステータスレジスタ26に動作終了を示す情報を格納し、IMリードデータレジスタ24にリードデータを格納する。そしてデバッガ11はIMステータスレジスタ26とIMリードデータレジスタ24の読み出しにより動作終了の情報とリードデータを取得する。
【0034】
次に、個別リセット命令を実行する場合につき説明する。
デバッガ11からの個別リセット命令が命令レジスタ(IR)22に設定されたらJTAGインタフェース手段21は次に制御するデータレジスタ(DR)を個別リセットレジスタ28に切り替え、デバッガ11から各専用処理ユニットのリセット情報を個別リセットレジスタ28に設定する。リセット選択手段35は、デバッグモード信号32が通常動作を示す場合はホストプロセッサ12から入力したリセット信号39を、デバッグモード信号32がデバッグ動作を示す場合は個別リセットレジスタ28の内容を、各専用処理ユニットのリセット信号19、20として出力する。
【0035】
次に、割り込み/エラーステータスリード命令を実行する場合につき説明する。
割り込み/エラーステータスレジスタ27は、専用処理ユニット15、16から入力した割り込み信号またはエラー通知信号38(図1における17〜18を多ビット信号としてまとめたもの)を格納する。そしてデバッガ11から割り込み/エラーステータスリード命令を命令レジスタ(IR)22に設定されたら、JTAGインタフェース手段21は次に制御するデータレジスタ(DR)を割り込み/エラーステータスレジスタ27に切り替え、デバッガ11は割り込み/エラーステータスレジスタ27の読み出しを行う。
【0036】
次に、停止要因設定命令を実行する場合につき説明する。
またデバッガ11からの停止要因設定命令が命令レジスタ(IR)22に設定されたら、JTAGインタフェース手段21は次に制御するデータレジスタ(DR)を停止要因レジスタ29に切り替え、デバッガ11は停止要因レジスタ29に停止要因情報を書き込む。停止要因情報は、割り込み信号またはエラー通知信号38の各ビットに対して有効か無効かを示した情報で、有効とした信号が入力され、なおかつデバッグモード信号32がデバッグ動作を示す場合は、停止信号生成手段36から全専用処理ユニットの動作を停止させる停止信号37を出力する。
【0037】
このように動作させることにより、直接デバッガ11から専用処理ユニットの起動制御、処理結果のリード、リセット制御、割り込み信号またはエラー通知信号のモニタリングが可能となり、プロセッサを動作させずにデバッグを行うことができる。
【0038】
また、割り込み信号またはエラー通知信号に応じた停止信号37を出力することにより、指定した処理ブロックのエラーや割り込みが発生した時点の信号の状態を保持したままデバッグを行うことができる。
【0039】
実施の形態2.
図5は本発明の実施の形態2におけるオンチップJTAGインタフェース回路を含むシステムLSIの構成図である。デバッガ41は、検証者が直接操作を行うシステムLSI40外部の検証環境であり、例えばPCと基板などから構成される。またデバッガ41は、システムLSI40内部のオンチップJTAGインタフェース回路43とIEEE1149.1規格に準拠したシリアル信号入出力にてデータ通信を行う。
【0040】
オンチップJTAGインタフェース回路43は、デバッガ41から入力した命令に従いデータバス46へのアクセスを行う処理ブロックである。プロセッサ42は、データバス46を介してメモリ45へアクセスし、任意の処理を実行する処理ブロックである。専用処理ユニット47、48は、データバス46を介してメモリ45へアクセスし、ある特定の処理を行う処理ブロックである。
【0041】
調停回路44は、プロセッサ42と専用処理ユニット47、48とオンチップJTAGインタフェース回路43からバス使用要求信号を入力し、データバス46が未使用の状態であったら、次にデータバス46を使用させる処理ブロックをひとつ選び、その処理ブロックへバス使用許可信号を出力し、データバス46を使用させる。なお本実施の形態では、簡略化のため、メモリ45とデータバス46とを仲介するメモリインタフェースの機構については省略している。
【0042】
オンチップJTAGインタフェース回路43の内部構成図を図6に示す。オンチップJTAGインタフェース回路43はJTAGインタフェース手段51とバス制御手段であるデータバスインタフェース52とから構成される。JTAGインタフェース手段51は、IEEE1149.1規格に準拠した信号入出力にてデバッガ41と通信するとともに、デバッガ41から入力した命令をデータバスインタフェース52に指示する。
【0043】
データバスインタフェース52は、JTAGインタフェース手段51からの指示に従いデータバス46を制御して結果をJTAGインタフェース手段51へ出力する。JTAGインタフェース手段51は、デバッガ41から入力した命令を保持する命令レジスタ(IR)54と、リードアドレスを保持するFMリードアドレスレジスタ55と、リードデータを保持するFMリードデータレジスタ56と、ライトアドレス及びライトデータを保持するFMライトレジスタ57と、データバスインタフェース52の動作終了を保持するFMステータスレジスタ58とを含み、またTMS信号入力に従いレジスタ54〜58のシフト動作を制御するTAPコントローラおよび命令デコード部(図示は省略)を備えている。
【0044】
次にデバッガ41からデータバスライト命令を実行する場合の動作について説明する。はじめにデバッガ41はデータバスライト命令を命令レジスタ(IR)54に設定する。JTAGインタフェース手段51は命令レジスタ(IR)54の命令がデータバスライト命令であれば、次に制御するデータレジスタ(DR)をFMライトレジスタ57に切り替える。次にデバッガ41はライトアドレスとライトデータをFMライトレジスタ57に設定する。
その後、JTAGインタフェース手段51は次に制御するデータレジスタ(DR)をFMステータスレジスタ58に切り替え、デバッガ41はリード動作が終了するまでFMステータスレジスタ58の読み出しを繰り返す。
【0045】
一方でJTAGインタフェース手段51は、ライト動作を行うことと、FMライトレジスタ57の内容とをデータバスインタフェース52へ指示する。そしてデータバスインタフェース52は、データバス46を制御してFMライトレジスタ57のライトアドレスが示すメモリセルにFMライトレジスタ57のライトデータを書き込み、動作終了信号をJTAGインタフェース手段51へ出力する。JTAGインタフェース手段51はFMステータスレジスタ58に動作終了を示す情報を格納する。そしてデバッガはFMステータスレジスタ58の読み出しにより動作終了の情報を取得する。
【0046】
次にデバッガ41からデータバスリード命令を実行する場合の動作について説明する。はじめにデバッガ41はデータバスリード命令を命令レジスタ(IR)54に設定する。JTAGインタフェース手段51は命令レジスタ(IR)54の命令がデータバスリード命令であれば、次に制御するデータレジスタ(DR)をFMリードアドレスレジスタ55に切り替える。次にデバッガ41はリードアドレスをFMリードアドレスレジスタ55に設定する。
【0047】
その後、JTAGインタフェース手段51は次に制御するデータレジスタ(DR)をFMステータスレジスタ58に切り替え、デバッガ41はリード動作が終了するまでデータレジスタ(DR)の読み出し動作を2回ずつ繰り返す。この間JTAGインタフェース手段51はFMステータスレジスタ58とFMリードデータレジスタ56とが交互に読み出されるよう制御する。
【0048】
一方でJTAGインタフェース手段51は、リード動作を行うこととFMリードアドレスレジスタ55の内容とをデータバスインタフェース52へ指示する。そしてデータバスインタフェース52は、データバス46を制御してFMリードアドレスレジスタ55のリードアドレスが示すメモリセルのデータを読み出し、動作終了信号およびリードデータをJTAGインタフェース手段51へ出力する。JTAGインタフェース手段51はFMステータスレジスタ58に動作終了を示す情報を格納し、FMリードデータレジスタ56にリードデータを格納する。そしてデバッガはFMステータスレジスタ58とFMリードデータレジスタ56の読み出しにより動作終了の情報とリードデータを取得する。
【0049】
このように動作させることにより、プロセッサ42を動作させずに、デバッガ41からメモリ45にアクセスし、デバッグを行うことができる。
【0050】
実施の形態3.
図7は本発明の実施の形態3におけるオンチップJTAGインタフェース回路を含むシステムLSIの構成図である。デバッガ61は、検証者が直接操作を行うシステムLSI60外部の検証環境であり、例えばPCと基板などから構成される。またデバッガ61は、システムLSI60内部のオンチップJTAGインタフェース回路63とIEEE1149.1規格に準拠したシリアル信号入出力にてデータ通信を行う。
【0051】
オンチップJTAGインタフェース回路63は、シリアル信号入出力を通じてデバッガ61から入力した命令に従ってデータバス69またはシステムバス70を制御するほか、ホストプロセッサ62からシステムバス70を制御できるようシステムバス信号の切り替えを行う。専用処理ユニット66、67は、データバス69を介してメモリ68へアクセスし、ある特定の処理を行う処理ブロックで、システムバス70からリードおよびライトが可能な複数のバスレジスタを有する。バスレジスタには、専用処理ユニット66、67の起動と停止を制御するレジスタや、専用処理ユニット66、67の処理結果を格納するレジスタなどがあり、システムバス70からバスレジスタをリードまたはライトすることにより、専用処理ユニット66、67を起動または停止させ、専用処理ユニット66、67の処理結果を読み出すことができる。
【0052】
専用プロセッサ65は、データバス69を介してメモリ68へアクセスし、任意の処理を実行する処理ブロックで、専用処理ユニット66、67と同様システムバス70からリードおよびライトが可能な複数のバスレジスタを有する。調停回路64は、専用プロセッサ65と専用処理ユニット66、67とオンチップJTAGインタフェース回路63からバス使用要求信号を入力し、データバス69が未使用の状態であったら、次にデータバス69を使用させる処理ブロックをひとつ選び、その処理ブロックへバス使用許可信号を出力し、データバス69を使用させる。調停回路64は専用処理ユニット66、67と同様システムバス69からリードおよびライトが可能な複数のバスレジスタを有する。なお本実施の形態では、簡略化のため、メモリ68とデータバス69とを仲介するメモリインタフェースの機構については省略している。
【0053】
ホストプロセッサ62は、専用処理ユニット66、67および専用プロセッサ65および調停回路64のリセット信号をオンチップJTAGインタフェース回路63へ出力する。オンチップJTAGインタフェース回路63は、デバッガ61から指示されたリセット情報か、またはホストプロセッサ62から入力したリセット信号かのどちらかを切り替えて専用処理ユニット66、67および専用プロセッサ65および調停回路64へ出力する。
【0054】
また専用処理ユニット66、67および専用プロセッサ65および調停回路64は、割り込み信号またはエラー通知信号を出力する。割り込み信号またはエラー通知信号はオンチップJTAGインタフェース回路63を介してホストプロセッサ62またはデバッガ61へ出力される。
【0055】
オンチップJTAGインタフェース回路63の内部構成を図8に示す。オンチップJTAGインタフェース回路63はJTAGインタフェース手段81と第1のバス制御手段であるシステムバスインタフェース83とバス選択手段84と第2のバス制御手段であるデータバスインタフェース82とリセット選択手段85と停止信号生成手段86とから構成される。
【0056】
JTAGインタフェース手段81は、IEEE1149.1規格に準拠した信号入出力にてデバッガ61と通信するとともに、デバッガ61から入力した命令をシステムバスインタフェース83またはデータバスインタフェース82に指示する。システムバスインタフェース83は、JTAGインタフェース手段81からの指示に従いシステムバス信号90を生成する。デバッグモード信号95は、通常動作かデバッグ動作かを示す信号である。バス選択手段84は、デバッグモード信号95が通常動作の場合はホストプロセッサからのシステムバス信号71をシステムバス70へ接続し、デバッグモード信号95がデバッグ動作の場合はシステムバスインタフェース83のシステムバス信号90をシステムバス70へ接続する。
【0057】
データバスインタフェース82は、JTAGインタフェース手段81からの指示に従いデータバス69を制御して結果をJTAGインタフェース手段81へ出力する。
【0058】
図9はJTAGインタフェース手段81内のレジスタを示したものである。命令レジスタ(IR)101は、デバッガ61から入力した命令を保持するレジスタである。IMリードアドレスレジスタ102は、システムバス70のリードアドレスを保持するレジスタである。IMリードデータレジスタ103は、システムバス70のリードデータを保持するレジスタである。IMライトレジスタ104は、システムバス70のライトアドレス及びライトデータを保持するレジスタである。IMステータスレジスタ105は、システムバスインタフェース83の動作終了を保持するレジスタである。
【0059】
割り込み/エラーステータスレジスタ106は、各処理ブロックから入力した割り込み信号またはエラー通知信号94の状態を保持するレジスタである。個別リセットレジスタ107は、デバッガ61から入力したリセット情報を保持するレジスタである。停止要因レジスタ108は、デバッガから入力した停止要因情報を保持するレジスタである。FMリードアドレスレジスタ109は、データバス69のリードアドレスを保持するレジスタである。FMリードデータレジスタ110は、データバス69のリードデータを保持するレジスタである。FMライトレジスタ111は、データバス69のライトアドレス及びライトデータを保持するレジスタである。FMステータスレジスタ112は、データバスインタフェース82の動作終了を保持する保持するレジスタである。
【0060】
また図8において、JTAGインタフェース手段81は、TMS信号入力に従いレジスタ101〜112のシフト動作を制御するTAPコントローラ(図示は省略)および命令デコード部を備えている。
【0061】
リセット選択手段85は、個別リセットレジスタ107の内容か、あるいはホストプロセッサから入力したリセット信号92かをデバッグモード信号95で選択し、リセット信号91として出力する。
【0062】
停止信号生成手段86は、停止要因レジスタ108の内容と各処理ブロックから入力したエラー通知信号および割り込み信号94とから停止信号93を生成し出力する。
【0063】
図10には命令レジスタ(IR)の命令と、各命令に対応するデータレジスタ(DR)を記述したものである。図10中の両矢印は、2つのデータレジスタ(DR)をトグルして使用することを表す。各命令の動作は実施例2および実施例3に記載した内容と同じであるので省略する。
【0064】
このような構成をとることにより、ホストプロセッサを動作させることなく、デバッガからシステムバスを介して専用処理ユニットの起動制御、処理結果のリード、リセット制御、割り込み信号またはエラー通知信号のモニタリングが可能となり、また専用プロセッサを動作させることなく、デバッガからデータバスを介して内部のメモリへアクセスすることが可能となる。
【0065】
また、割り込み信号またはエラー通知信号に応じた停止信号を出力することにより、指定した処理ブロックのエラーや割り込みが発生した時点の信号の状態を保持したままデバッグを行うことができる。
【0066】
実施の形態1〜3ではIEEE1149.1規格を利用して、オンチップデバッグを実現するオンチップJTAGインタフェース回路について説明したが、この発明はIEEE1149.1規格を利用するものに限られるものではない。
【0067】
実施の形態1〜3では専用処理ユニットは2つしか記載していないが、システムLSI内に2つ以上存在する場合でも同様にしてデバッグが可能である。
【0068】
また実施の形態2〜3ではメモリを内臓型のメモリとしたが、システムLSI外部にメモリが接続されている場合についても同様にしてデバッグが可能である。
【0069】
また実施の形態1および3のシステムバスのバスプロトコルは、ひとつの処理ブロックからのみ制御可能な方式であれば特に限定されず、任意の方式をとることができる。
【0070】
また実施の形態2〜3データバスのバスプロトコルは、複数の処理ブロックから制御可能な方式であれば特に限定されず、任意の方式をとることができる。
【0071】
また実施の形態1〜3のJTAGインタフェース手段31内のレジスタについても、システムバスおよびデータバスのプロトコルに応じて適宜追加で、例えばバイトイネーブルなどのバス制御用レジスタを追加することも可能である。
【0072】
【発明の効果】
以上のようにこの発明のオンチップJTAGインタフェース回路によれば、デバッガから、プロセッサを動作させることなくシステムバスまたはデータバスを制御してシステムLSI内部のメモリやレジスタにアクセスが可能であるため、プロセッサを動作させてアクセスを行う従来の方法に比べ、アクセスに要する時間を短縮するという効果があり、またプロセッサにアクセスを行わせるためのソフトウェア作成の必要がなくなり、デバッグ作業を容易化するという効果がある。
【0073】
また本発明のオンチップJTAGインタフェース回路は、デバッガから各処理ブロックのリセットを制御することが可能であるため、一部の処理ブロックのみを動作させてデバッグを行う場合、同様のリセット制御をホストプロセッサに行わせるためのソフトウェア作成の必要がなく、デバッグ作業を容易化するという効果がある。
【0074】
また本発明のオンチップJTAGインタフェース回路は、デバッガから各処理ブロックの割り込みやエラーの状態をモニタリングすることが可能であるため、同様のモニタリングをホストプロセッサに行わせるためのソフトウェア作成の必要がなく、デバッグ作業を容易化するという効果がある。
【0075】
また本発明のオンチップJTAGインタフェース回路は、指定した割り込み信号やエラー信号によって処理ブロックを停止させることができるため、割り込みやエラーが発生した時点の状態を保持したまま、メモリや専用処理ユニット内部のレジスタなどの状態をデバッガから参照することが可能であり、例えばエラーの原因の解析などのデバッグ作業を容易化するという効果がある。
【図面の簡単な説明】
【図1】本発明の実施の形態1におけるシステムLSIの概略構成を示すブロック図である。
【図2】本発明の実施の形態1におけるオンチップJTAGインタフェース回路の概略構成を示すブロック図である。
【図3】本発明の実施の形態1におけるオンチップJTAGインタフェース回路のライト動作を示すタイミング図である。
【図4】本発明の実施の形態1におけるオンチップJTAGインタフェース回路のリード動作を示すタイミング図である。
【図5】本発明の実施の形態2におけるシステムLSIの概略構成を示すブロック図である。
【図6】本発明の実施の形態2におけるオンチップJTAGインタフェース回路の概略構成を示すブロック図である。
【図7】本発明の実施の形態3におけるシステムLSIの概略構成を示すブロック図である。
【図8】本発明の実施の形態3におけるオンチップJTAGインタフェース回路の概略構成を示すブロック図である。
【図9】本発明の実施の形態3におけるJTAGインタフェース手段のレジスタ構成を示す図である。
【図10】本発明の実施の形態3におけるIR命令とデータレジスタ(DR)との関係を示す図である。
【図11】従来のオンチップJTAGインタフェース回路の概略構成を示すブロック図である。
【符号の説明】
1、14、43、63 オンチップJTAGインタフェース回路、
2 TAPコントローラ
3 命令レジスタ(IR)
4 命令デコード部、
5 プロセッサ、
6 プロセッサ制御レジスタ
7 スキャンレジスタ、
10、40、60 システムLSI、
11、41、61 デバッガ、
12、62 ホストプロセッサ、
13、70 システムバス、
15、16、47、48、66、67 専用処理ユニット、
21、51、81 JTAGインタフェース手段
33、83 システムバスインタフェース、
34、84 バス選択手段、
35、85 リセット選択手段、
36、86 停止信号生成手段
42 プロセッサ、
44、64 調停回路、
45、68 メモリ、
46、69 データバス
52 データバスインタフェース、
65 専用プロセッサ、
82 データバスインタフェース、[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an on-chip JTAG interface circuit for realizing on-chip debugging and a system LSI using the same.
[0002]
[Prior art]
As one of the debugging techniques for a system LSI including a processor, a technique called on-chip debugging in which a processor is provided with a debugging function using IEEE1149.1 is used. On-chip debugging using IEEE1149.1 is described, for example, in "Basics and Application of JTAG Testing" (CQ Publishing Company).
[0003]
FIG. 11 is a configuration diagram of a conventional on-chip JTAG interface circuit for realizing on-chip debugging using IEEE1149.1. The conventional on-chip
[0004]
The
[0005]
As the instructions to be set in the
[0006]
Next, an operation for reading the content of an arbitrary address in a certain target memory will be described. First, the processor control register 6 is set to the hold state by the TEST1 instruction, and the execution of the
[0007]
Next, the processor control register 6 is set to a mode in which the instruction is taken in from the outside by the TEST1 instruction. Next, a store memory instruction of the
[0008]
By operating in this way, the conventional on-chip
[0009]
[Problems to be solved by the invention]
The conventional on-chip JTAG interface circuit reads a target memory by causing a processor to execute a load instruction. For this reason, for example, when a large amount of data such as image data is read, a large amount of instructions must be executed by a processor, and there is a problem that it takes a long time to read.
In the conventional on-chip JTAG interface circuit, since the processor always operates during debugging, in a system LSI that is becoming more complicated in recent years, whether the cause of the illegal operation is the processor or the other processing blocks connected to the processor There is a problem that it is difficult to determine the cause of the existence.
[0010]
The present invention has been made to solve the above problems, and has as its object to enable debugging without operating a processor.
[0011]
[Means for Solving the Problems]
An on-chip JTAG interface circuit according to the present invention includes a processor, a processing unit that performs an arbitrary process, and a data bus, wherein the processor controls the data bus to communicate with the processing unit. ,
JTAG interface means for performing data communication with a debugger external to the system LSI by serial signal input / output,
Bus control means for generating a first control signal for the data bus according to an instruction input from the debugger through the JTAG interface means and controlling the data bus;
A second control signal for the data bus input from the processor, and a bus selection unit for selectively switching between the first control signal and the data bus to connect to the data bus;
One of the processor and the debugger controls the data bus to enable communication with the processing unit.
[0012]
Also, in the on-chip JTAG interface circuit according to the present invention, the JTAG interface means may input reset information of the processing unit from the debugger through the serial signal input / output and generate a first reset signal according to the reset information. Generate
A reset selection unit configured to selectively switch between a second reset signal and the first reset signal of the processing unit input from the processor and output to the processing unit.
[0013]
Also, in the on-chip JTAG interface circuit according to the present invention, the JTAG interface means receives an interrupt signal or an error notification signal output from the processing unit, and outputs the interrupt signal or error notification from the debugger through the serial signal input / output. The state of the signal can be read.
[0014]
Also, in the on-chip JTAG interface circuit according to the present invention, the JTAG interface means inputs stop factor information from the debugger through the serial signal input / output,
A stop signal generating unit that generates a stop signal for stopping all of the processing units from the interrupt signal or the error notification signal and the stop factor information,
The stop signal is output to all of the processing units.
[0015]
Further, the on-chip JTAG interface circuit according to the present invention includes a processor, a processing unit for performing an arbitrary process, a data bus, and one processing block among a plurality of processing blocks including the processor and the processing unit. An arbitration circuit for selecting and permitting use of the data bus.
The processor and the processing unit can control the data bus to access an internal or external memory of the system LSI;
JTAG interface means for performing data communication with a debugger external to the system LSI by serial signal input / output,
Bus control means for generating a control signal for the data bus in accordance with an instruction input from the debugger through the JTAG interface means and controlling the data bus;
The debugger controls the data bus to enable communication with the memory.
[0016]
Further, an on-chip JTAG interface circuit according to the present invention provides a system LSI including a processor, one or more processing units for performing arbitrary processing, a system bus, a dedicated processor, a data bus, and an arbitration circuit. ,
The arbitration circuit selects one processing block from a plurality of processing blocks including the dedicated processor and the processing unit and permits use of the data bus,
The host processor communicates with the processing unit by controlling the system bus,
The dedicated processor and the processing unit are capable of controlling the data bus to access an internal or external memory of the system LSI;
JTAG interface means for performing data communication with a debugger external to the system LSI by serial signal input / output,
First bus control means for generating a first control signal for the system bus according to an instruction input from the debugger through the JTAG interface means;
Bus selection means for selectively switching between the second control signal of the system bus input from the host processor and the first control signal and connecting to the system bus;
Second bus control means for generating a control signal for the data bus in accordance with an instruction input from the debugger through the JTAG interface means and controlling the data bus,
Either the host processor or the debugger controls the system bus to enable communication with the processing unit,
The debugger controls the data bus to enable communication with the memory.
[0017]
Also, in the on-chip JTAG interface circuit according to the present invention, the JTAG interface means may input reset information of the processing unit from the debugger through the serial signal input / output and generate a first reset signal according to the reset information. Generate
A reset selection unit that selectively switches between the second reset signal and the first reset signal of the processing unit input from the host processor and outputs the signal to the processing unit.
[0018]
Also, in the on-chip JTAG interface circuit according to the present invention, the JTAG interface means receives an interrupt signal or an error notification signal output from the processing unit, and outputs the interrupt signal or error notification from the debugger through the serial signal input / output. Signal information can be read.
[0019]
Also, in the on-chip JTAG interface circuit according to the present invention, the JTAG interface means inputs stop factor information from the debugger through the serial signal input / output,
A stop signal generating unit that generates a stop signal for stopping all of the processing units from the interrupt signal or the error notification signal and the stop factor information,
Outputting the stop signal to the processing unit;
[0020]
Also, a system LSI according to the present invention includes an on-chip JTAG interface circuit according to any one of
[0021]
BEST MODE FOR CARRYING OUT THE INVENTION
FIG. 1 is a configuration diagram of a system LSI including an on-chip JTAG interface circuit according to the first embodiment of the present invention. The debugger 11 is a verification environment outside the system LSI in which a verifier directly operates, and includes, for example, a PC and a board. The debugger 11 performs data communication with the on-chip JTAG interface circuit 14 in the
[0022]
The on-chip JTAG interface circuit 14 controls the
[0023]
The on-chip JTAG interface circuit 14 receives a reset signal of the dedicated processing units 15 and 16 from the
[0024]
The dedicated processing unit 15 outputs an error notification signal 17 to the
The dedicated processing units 15 and 16 are stopped while retaining the internal state by the
[0025]
The commands input from the debugger 11 to the on-chip JTAG interface circuit 14 include a system bus write command for writing via the
[0026]
FIG. 2 shows the internal configuration of the on-chip JTAG interface circuit 14. The on-chip JTAG interface circuit 14 includes a
[0027]
The JTAG interface means 21 communicates with the debugger 11 through signal input / output conforming to the IEEE1149.1 standard, and instructs the
The JTAG interface means 21 includes
[0028]
The
[0029]
The
[0030]
Next, the operation will be described first when a system bus write instruction is executed.
FIG. 3 shows input / output signals of the JTAG interface means 21 when the debugger 11 executes a system bus write instruction, and state transitions according to the IEEE1149.1 standard. First, the debugger 11 sets a system bus write instruction in the instruction register (IR) 22. If the content of the instruction register (IR) 22 is a system bus write instruction, the JTAG interface means 21 switches the data register (DR) to be controlled next to the IM write register 25. Next, the debugger 11 sets the write address and the write data in the IM write register 25. Thereafter, the JTAG interface means 21 switches the data register (DR) to be controlled next to the
[0031]
On the other hand, the
[0032]
Next, a case where a system bus read instruction is executed will be described.
FIG. 4 shows input / output signals of the
[0033]
During this time, the JTAG interface means 21 controls the
[0034]
Next, a case where an individual reset instruction is executed will be described.
When the individual reset instruction from the debugger 11 is set in the instruction register (IR) 22, the JTAG interface means 21 switches the data register (DR) to be controlled next to the
[0035]
Next, a case where an interrupt / error status read instruction is executed will be described.
The interrupt / error status register 27 stores an interrupt signal or an error notification signal 38 (collecting 17 to 18 in FIG. 1 as a multi-bit signal) input from the dedicated processing units 15 and 16. Then, when the interrupt / error status read instruction is set in the instruction register (IR) 22 from the debugger 11, the JTAG interface means 21 switches the data register (DR) to be controlled next to the interrupt /
[0036]
Next, a case where a stop cause setting instruction is executed will be described.
When a stop cause setting instruction from the debugger 11 is set in the instruction register (IR) 22, the
[0037]
With this operation, the debugger 11 can directly control the activation of the dedicated processing unit, read the processing result, control the reset, monitor the interrupt signal or the error notification signal, and perform debugging without operating the processor. it can.
[0038]
Further, by outputting the
[0039]
FIG. 5 is a configuration diagram of a system LSI including an on-chip JTAG interface circuit according to the second embodiment of the present invention. The debugger 41 is a verification environment outside the
[0040]
The on-chip
[0041]
The
[0042]
FIG. 6 shows an internal configuration diagram of the on-chip
[0043]
The
[0044]
Next, the operation when the data bus write instruction is executed from the debugger 41 will be described. First, the debugger 41 sets a data bus write instruction in the instruction register (IR) 54. If the instruction in the instruction register (IR) 54 is a data bus write instruction, the JTAG interface means 51 switches the data register (DR) to be controlled next to the FM write
Thereafter, the JTAG interface unit 51 switches the data register (DR) to be controlled next to the FM status register 58, and the debugger 41 repeats reading of the FM status register 58 until the read operation is completed.
[0045]
On the other hand, the JTAG interface unit 51 instructs the
[0046]
Next, the operation when the data bus read instruction is executed from the debugger 41 will be described. First, the debugger 41 sets a data bus read instruction in the instruction register (IR) 54. If the instruction in the instruction register (IR) 54 is a data bus read instruction, the JTAG interface means 51 switches the data register (DR) to be controlled next to the FM read
[0047]
Thereafter, the JTAG interface unit 51 switches the data register (DR) to be controlled next to the FM status register 58, and the debugger 41 repeats the read operation of the data register (DR) twice each time until the read operation ends. During this time, the JTAG interface means 51 controls the FM status register 58 and the FM read data register 56 to be read alternately.
[0048]
On the other hand, the JTAG interface means 51 instructs the
[0049]
With this operation, the debugger 41 can access the
[0050]
FIG. 7 is a configuration diagram of a system LSI including an on-chip JTAG interface circuit according to the third embodiment of the present invention. The
[0051]
The on-chip
[0052]
The dedicated processor 65 is a processing block for accessing the memory 68 via the
[0053]
The
[0054]
Further, the dedicated processing units 66 and 67, the dedicated processor 65, and the arbitration circuit 64 output an interrupt signal or an error notification signal. The interrupt signal or the error notification signal is output to the
[0055]
FIG. 8 shows the internal configuration of the on-chip
[0056]
The JTAG interface means 81 communicates with the
[0057]
The data bus interface 82 controls the
[0058]
FIG. 9 shows the registers in the JTAG interface means 81. The instruction register (IR) 101 is a register that holds an instruction input from the
[0059]
The interrupt /
[0060]
In FIG. 8, the
[0061]
The reset selection means 85 selects the content of the individual reset register 107 or the
[0062]
The stop signal generating means 86 generates and outputs a
[0063]
FIG. 10 describes the instructions in the instruction register (IR) and the data register (DR) corresponding to each instruction. A double-headed arrow in FIG. 10 indicates that two data registers (DR) are toggled for use. The operation of each instruction is the same as that described in the second and third embodiments, and will not be described.
[0064]
With this configuration, it is possible to control the activation of the dedicated processing unit, read the processing result, reset control, and monitor the interrupt signal or error notification signal from the debugger via the system bus without operating the host processor. In addition, it is possible to access the internal memory from the debugger via the data bus without operating the dedicated processor.
[0065]
In addition, by outputting a stop signal corresponding to an interrupt signal or an error notification signal, debugging can be performed while maintaining the state of a signal at the time of occurrence of an error or an interrupt in a designated processing block.
[0066]
In the first to third embodiments, the on-chip JTAG interface circuit for realizing on-chip debugging using the IEEE1149.1 standard has been described. However, the present invention is not limited to the one using the IEEE1149.1 standard.
[0067]
Although only two dedicated processing units are described in the first to third embodiments, debugging can be performed in a similar manner even when two or more dedicated processing units exist in the system LSI.
[0068]
In the second and third embodiments, the memory is a built-in memory. However, debugging can be performed in the same manner when a memory is connected outside the system LSI.
[0069]
Further, the bus protocol of the system bus according to the first and third embodiments is not particularly limited as long as it can be controlled from only one processing block, and can take an arbitrary method.
[0070]
The bus protocol of the data buses of the second and third embodiments is not particularly limited as long as it can be controlled from a plurality of processing blocks, and can take any method.
[0071]
As for the registers in the JTAG interface means 31 of the first to third embodiments, a bus control register such as a byte enable can be added as appropriate according to the protocol of the system bus and the data bus.
[0072]
【The invention's effect】
As described above, according to the on-chip JTAG interface circuit of the present invention, the debugger can control the system bus or the data bus without operating the processor to access the memory and the register inside the system LSI. Has the effect of shortening the time required for access compared to the conventional method of performing access by operating the software, and also eliminates the need to create software for making the processor access, and has the effect of facilitating debugging. is there.
[0073]
Further, since the on-chip JTAG interface circuit of the present invention can control the reset of each processing block from the debugger, the same reset control is performed by the host processor when debugging is performed by operating only some of the processing blocks. There is no need to create software for performing the above operations, which has the effect of facilitating debugging work.
[0074]
In addition, the on-chip JTAG interface circuit of the present invention can monitor the interrupt and error states of each processing block from the debugger, so that there is no need to create software for causing the host processor to perform the same monitoring. This has the effect of facilitating debugging work.
[0075]
In addition, the on-chip JTAG interface circuit of the present invention can stop a processing block by a designated interrupt signal or error signal. It is possible to refer to the state of the register and the like from the debugger, which has an effect of facilitating debugging work such as analysis of an error cause.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a schematic configuration of a system LSI according to a first embodiment of the present invention.
FIG. 2 is a block diagram illustrating a schematic configuration of an on-chip JTAG interface circuit according to the first embodiment of the present invention.
FIG. 3 is a timing chart showing a write operation of the on-chip JTAG interface circuit according to the first embodiment of the present invention.
FIG. 4 is a timing chart showing a read operation of the on-chip JTAG interface circuit according to the first embodiment of the present invention.
FIG. 5 is a block diagram illustrating a schematic configuration of a system LSI according to a second embodiment of the present invention.
FIG. 6 is a block diagram illustrating a schematic configuration of an on-chip JTAG interface circuit according to a second embodiment of the present invention.
FIG. 7 is a block diagram illustrating a schematic configuration of a system LSI according to a third embodiment of the present invention.
FIG. 8 is a block diagram illustrating a schematic configuration of an on-chip JTAG interface circuit according to a third embodiment of the present invention.
FIG. 9 is a diagram showing a register configuration of a JTAG interface unit according to
FIG. 10 is a diagram showing a relationship between an IR instruction and a data register (DR) according to the third embodiment of the present invention.
FIG. 11 is a block diagram showing a schematic configuration of a conventional on-chip JTAG interface circuit.
[Explanation of symbols]
1, 14, 43, 63 On-chip JTAG interface circuit,
2 TAP controller
3 Instruction register (IR)
4 instruction decoding unit,
5 processors,
6 Processor control register
7 scan registers,
10, 40, 60 system LSI,
11, 41, 61 debugger,
12, 62 host processor,
13, 70 system bus,
15, 16, 47, 48, 66, 67 dedicated processing unit,
21,51,81 JTAG interface means
33, 83 system bus interface,
34, 84 bus selection means,
35, 85 reset selection means,
36, 86 stop signal generating means
42 processors,
44, 64 arbitration circuit,
45, 68 memory,
46, 69 data bus
52 data bus interface,
65 dedicated processor,
82 data bus interface,
Claims (10)
前記システムLSI外部のデバッガとシリアル信号入出力にてデータ通信を行うJTAGインタフェース手段と、
前記デバッガから前記JTAGインタフェース手段を通じて入力した命令に従った前記データバスの第1の制御信号を生成し前記データバスを制御するバス制御手段と、
前記プロセッサから入力した前記データバスの第2の制御信号と、前記第1の制御信号とを選択的に切り替えて前記データバスへ接続するバス選択手段とを備え、
前記プロセッサと前記デバッガとのいずれか一方が前記データバスを制御し前記処理ユニットと通信可能にすることを特徴とするオンチップJTAGインタフェース回路。A system LSI that includes a processor, a processing unit that performs an arbitrary process, and a data bus, wherein the processor communicates with the processing unit by controlling the data bus;
JTAG interface means for performing data communication with a debugger external to the system LSI by serial signal input / output,
Bus control means for generating a first control signal for the data bus according to an instruction input from the debugger through the JTAG interface means and controlling the data bus;
A second control signal for the data bus input from the processor, and a bus selection unit for selectively switching between the first control signal and the data bus to connect to the data bus;
An on-chip JTAG interface circuit, wherein one of the processor and the debugger controls the data bus to enable communication with the processing unit.
前記プロセッサから入力した前記処理ユニットの第2のリセット信号と前記第1のリセット信号とを選択的に切り替えて前記処理ユニットへ出力するリセット選択手段を備えることを特徴とする請求項1記載のオンチップJTAGインタフェース回路。The JTAG interface means receives reset information of the processing unit from the debugger through the serial signal input / output and generates a first reset signal according to the reset information.
2. The on-state according to claim 1, further comprising: reset selection means for selectively switching between the second reset signal and the first reset signal of the processing unit input from the processor and outputting to the processing unit. Chip JTAG interface circuit.
前記割り込み信号またはエラー通知信号と前記停止要因情報とから前記処理ユニットの全部を停止させる停止信号を生成する停止信号生成手段を備え、
前記停止信号を前記処理ユニットの全部へ出力することを特徴とする請求項3記載のオンチップJTAGインタフェース回路。The JTAG interface means inputs stop factor information from the debugger through the serial signal input / output,
A stop signal generating unit that generates a stop signal for stopping all of the processing units from the interrupt signal or the error notification signal and the stop factor information,
The on-chip JTAG interface circuit according to claim 3, wherein the stop signal is output to all of the processing units.
前記プロセッサと前記処理ユニットは前記データバスを制御して前記システムLSIの内部または外部のメモリにアクセス可能であり、
前記システムLSI外部のデバッガとシリアル信号入出力にてデータ通信を行うJTAGインタフェース手段と、
前記デバッガから前記JTAGインタフェース手段を通じて入力した命令に従った前記データバスの制御信号を生成し前記データバスを制御するバス制御手段とを備え、
前記デバッガが前記データバスを制御し前記メモリと通信可能にすることを特徴とするオンチップJTAGインタフェース回路。A processor, a processing unit for performing any processing, a data bus, and an arbitration circuit for selecting one processing block from a plurality of processing blocks including the processor and the processing unit and permitting use of the data bus; In a system LSI including
The processor and the processing unit can control the data bus to access an internal or external memory of the system LSI;
JTAG interface means for performing data communication with a debugger external to the system LSI by serial signal input / output,
Bus control means for generating a control signal for the data bus in accordance with an instruction input from the debugger through the JTAG interface means and controlling the data bus;
An on-chip JTAG interface circuit, wherein the debugger controls the data bus to enable communication with the memory.
前記調停回路は、前記専用プロセッサと前記処理ユニットとを含む複数の処理ブロックの中から1つの処理ブロックを選定し前記データバスの使用を許可し、
前記ホストプロセッサは、前記システムバスを制御することで前記処理ユニットと通信し、
前記専用プロセッサおよび前記処理ユニットは、前記データバスを制御して前記システムLSIの内部または外部のメモリにアクセス可能であり、
前記システムLSI外部のデバッガとシリアル信号入出力にてデータ通信を行うJTAGインタフェース手段と、
前記デバッガから前記JTAGインタフェース手段を通じて入力した命令に従った前記システムバスの第1の制御信号を生成する第1のバス制御手段と、
前記ホストプロセッサから入力した前記システムバスの第2の制御信号と、前記第1の制御信号とを選択的に切り替えて前記システムバスへ接続するバス選択手段と、
前記デバッガから前記JTAGインタフェース手段を通じて入力した命令に従った前記データバスの制御信号を生成し前記データバスを制御する第2のバス制御手段とを備え、
前記ホストプロセッサと前記デバッガとのいずれか一方が前記システムバスを制御し前記処理ユニットと通信可能にし、
前記デバッガが前記データバスを制御し前記メモリと通信可能にすることを特徴とするオンチップJTAGインタフェース回路。In a system LSI including a host processor, one or more processing units for performing arbitrary processing, a system bus, a dedicated processor, a data bus, and an arbitration circuit,
The arbitration circuit selects one processing block from a plurality of processing blocks including the dedicated processor and the processing unit and permits use of the data bus,
The host processor communicates with the processing unit by controlling the system bus,
The dedicated processor and the processing unit are capable of controlling the data bus to access an internal or external memory of the system LSI;
JTAG interface means for performing data communication with a debugger external to the system LSI by serial signal input / output,
First bus control means for generating a first control signal for the system bus according to an instruction input from the debugger through the JTAG interface means;
Bus selection means for selectively switching between the second control signal of the system bus input from the host processor and the first control signal and connecting to the system bus;
Second bus control means for generating a control signal for the data bus in accordance with an instruction input from the debugger through the JTAG interface means and controlling the data bus,
Either the host processor or the debugger controls the system bus to enable communication with the processing unit,
An on-chip JTAG interface circuit, wherein the debugger controls the data bus to enable communication with the memory.
前記ホストプロセッサから入力した前記処理ユニットの第2のリセット信号と前記第1のリセット信号とを選択的に切り替えて前記処理ユニットへ出力するリセット選択手段を備えることを特徴とする請求項6記載のオンチップJTAGインタフェース回路。The JTAG interface means receives reset information of the processing unit from the debugger through the serial signal input / output and generates a first reset signal according to the reset information.
7. The apparatus according to claim 6, further comprising reset selection means for selectively switching between a second reset signal and said first reset signal of said processing unit input from said host processor and outputting to said processing unit. On-chip JTAG interface circuit.
前記割り込み信号またはエラー通知信号と前記停止要因情報とから前記処理ユニットの全部を停止させる停止信号を生成する停止信号生成手段を備え、
前記停止信号を前記処理ユニットへ出力することを特徴とする請求項8記載のオンチップJTAGインタフェース回路。The JTAG interface means inputs stop factor information from the debugger through the serial signal input / output,
A stop signal generating unit that generates a stop signal for stopping all of the processing units from the interrupt signal or the error notification signal and the stop factor information,
The on-chip JTAG interface circuit according to claim 8, wherein the stop signal is output to the processing unit.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002252671A JP2004094451A (en) | 2002-08-30 | 2002-08-30 | On-chip jtag interface circuit and system lsi |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002252671A JP2004094451A (en) | 2002-08-30 | 2002-08-30 | On-chip jtag interface circuit and system lsi |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004094451A true JP2004094451A (en) | 2004-03-25 |
Family
ID=32058884
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002252671A Abandoned JP2004094451A (en) | 2002-08-30 | 2002-08-30 | On-chip jtag interface circuit and system lsi |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004094451A (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006208378A (en) * | 2005-01-24 | 2006-08-10 | Hewlett-Packard Development Co Lp | On-chip circuit for inspecting bus |
JP2009080632A (en) * | 2007-09-26 | 2009-04-16 | Nec Electronics Corp | Semiconductor integrated circuit |
JP2010160765A (en) * | 2009-01-09 | 2010-07-22 | Oki Semiconductor Co Ltd | System lsi and debugging method thereof |
JP2015115902A (en) * | 2013-12-13 | 2015-06-22 | キヤノン株式会社 | Control device, processing apparatus, control method and program |
CN111694697A (en) * | 2019-03-12 | 2020-09-22 | 罗姆股份有限公司 | Semiconductor device and debug system |
CN115422116A (en) * | 2022-11-02 | 2022-12-02 | 井芯微电子技术(天津)有限公司 | Method and apparatus for system-on-chip JTAG daisy-chain connections |
-
2002
- 2002-08-30 JP JP2002252671A patent/JP2004094451A/en not_active Abandoned
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006208378A (en) * | 2005-01-24 | 2006-08-10 | Hewlett-Packard Development Co Lp | On-chip circuit for inspecting bus |
US7610526B2 (en) | 2005-01-24 | 2009-10-27 | Hewlett-Packard Development Company, L.P. | On-chip circuitry for bus validation |
JP2009080632A (en) * | 2007-09-26 | 2009-04-16 | Nec Electronics Corp | Semiconductor integrated circuit |
US8429615B2 (en) | 2007-09-26 | 2013-04-23 | Renesas Electronics Corporation | Semiconductor integrated circuit |
JP2010160765A (en) * | 2009-01-09 | 2010-07-22 | Oki Semiconductor Co Ltd | System lsi and debugging method thereof |
JP2015115902A (en) * | 2013-12-13 | 2015-06-22 | キヤノン株式会社 | Control device, processing apparatus, control method and program |
CN111694697A (en) * | 2019-03-12 | 2020-09-22 | 罗姆股份有限公司 | Semiconductor device and debug system |
CN111694697B (en) * | 2019-03-12 | 2023-09-19 | 罗姆股份有限公司 | Semiconductor device and debug system |
CN115422116A (en) * | 2022-11-02 | 2022-12-02 | 井芯微电子技术(天津)有限公司 | Method and apparatus for system-on-chip JTAG daisy-chain connections |
CN115422116B (en) * | 2022-11-02 | 2023-03-14 | 井芯微电子技术(天津)有限公司 | Method and apparatus for system-on-chip JTAG daisy-chain connections |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4335999B2 (en) | Semiconductor integrated circuit device with built-in processor | |
JP5536297B2 (en) | Semiconductor integrated circuit and semiconductor integrated circuit test system supporting co-debugging function | |
TWI290630B (en) | On-board diagnostic circuit for an integrated circuit, and method for performing real time diagnostic operations upon integrated circuit | |
US6668339B1 (en) | Microprocessor having a debug interruption function | |
EP0849668B1 (en) | Diagnostics system and procedure in an integrated circuit device | |
EP0849669A1 (en) | Diagnostic procedures in an integrated circuit device | |
JP2003006003A (en) | Dma controller and semiconductor integrated circuit | |
KR100462177B1 (en) | Embedded controller capable of backing up operating states of a peripheral device in the real time | |
US6311303B1 (en) | Monitor port with selectable trace support | |
JP2004094451A (en) | On-chip jtag interface circuit and system lsi | |
KR950009691B1 (en) | Test control circuit of data processing apparatus | |
US7231568B2 (en) | System debugging device and system debugging method | |
JP2003263339A (en) | Debug function-incorporated microcomputer | |
KR20030055150A (en) | Microprocessor and processing method of microprocessor | |
JP4600134B2 (en) | Multiprocessor system | |
JP2004038464A (en) | Microcomputer with built-in debugging function | |
JPH0815387A (en) | Microcomputer test circuit | |
JP2006146757A (en) | Register for debugging and data transfer method | |
JP2001084161A (en) | Data processor | |
KR100557918B1 (en) | Error Correction Device Using Joint Test Access Group | |
JP2010231818A (en) | Debugging system | |
JP2009193604A (en) | Semiconductor information processing device | |
TW432277B (en) | Pre-boot debugging device and method of computer system | |
JP2935710B2 (en) | Test equipment for processor integrated circuit devices | |
JP2704935B2 (en) | Processor with test function |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20040707 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050729 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070704 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070828 |
|
A762 | Written abandonment of application |
Free format text: JAPANESE INTERMEDIATE CODE: A762 Effective date: 20071001 |