JPH05298138A - デバッグ支援回路、及びエミュレータ - Google Patents

デバッグ支援回路、及びエミュレータ

Info

Publication number
JPH05298138A
JPH05298138A JP4126858A JP12685892A JPH05298138A JP H05298138 A JPH05298138 A JP H05298138A JP 4126858 A JP4126858 A JP 4126858A JP 12685892 A JP12685892 A JP 12685892A JP H05298138 A JPH05298138 A JP H05298138A
Authority
JP
Japan
Prior art keywords
condition
address
trace
signal
stop
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.)
Withdrawn
Application number
JP4126858A
Other languages
English (en)
Inventor
Kazuhiko Kaniwa
一彦 蟹和
Hideya Fujita
秀哉 藤田
Yoshiyuki Kondo
芳行 近藤
Koji Ishihara
孝治 石原
Satoshi Masuda
訓 増田
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP4126858A priority Critical patent/JPH05298138A/ja
Publication of JPH05298138A publication Critical patent/JPH05298138A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 指定したサブル−チンのみの命令フェッチサ
イクルとデ−タアクセスサイクルとをトレ−スすること
ができるようにすることである。 【構成】 開始条件設定レジスタ310には指定サブル
ーチンのアドレス範囲と命令フェッチサイクルであるこ
とが設定され、停止条件設定レジスタ320には指定サ
ブルーチン以外のアドレス範囲と命令フェッチサイクル
であることが設定される。夫々の設定内容は、開始条件
検出回路330及び停止条件検出回路340によってエ
ミュレーションバス32の情報と比較され、その結果、
指定サブル−チンの命令フェッチでフラグFFがセット
され、指定サブル−チンのアドレス範囲外の命令フェッ
チでフラグFFがリセットされる。フラグFFのセット
状態に呼応してトレースメモリ360がチップ選択さ
れ、リセット状態に呼応してチップ非選択にされる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、マイクロプロセッサ
(マイクロコンピュータとも称する)応用システムのシ
ステムデバッグ若しくはプログラムデバッグに利用され
るデバッグ支援回路、更にはエミュレ−タに関するもの
である。
【0002】
【従来の技術】マイクロコンピュータを用いたシステム
の開発を行うために、いわゆる、エミュレータ若しくは
インサーキットエミュレータ(単にエミュレータと称す
る)が用いられる。エミュレータは、ソフトウエア開発
用のいわゆるパーソナルコンピュータなどのシステム開
発装置と開発中の応用システムとの間に接続され、その
応用システムに装着されるべきマイクロコンピュータ
(ターゲットマイクロコンピュータ)の機能を代行しつ
つ、デバッガーとしての機能を有し、ソフトウエア(若
しくはプログラム)あるいは応用システムの開発を支援
するものである。このようなエミュレータにおいて、デ
バッグを支援するための回路として、ブレーク制御回路
やトレース回路がある。トレース回路は、エミュレーシ
ョン動作中にエミュレーション用プロセッサとターゲッ
トシステムがやり取するデータ、アドレス信号、及び各
種制御情報を、例えばバスサイクルに同期して順次蓄え
ていく。このときのトレースの開始及び停止の制御は、
ユ−ザプログラム(ターゲットシステムのための動作プ
ログラム若しくは評価対象プログラム)がスタ−トして
から停止(ブレ−ク)するまでのトレ−ス、または、ト
レ−ス範囲をスタ−トポイント(トレース開始アドレ
ス)とストップポイント(トレース停止アドレス)で指
定する方式であった。尚、インサーキット・エミュレー
タについて記載された文献の例としては、昭和63年1
0月1日に日立マイクロコンピュータエンジニアリング
株式会社より発行された「日立マイコン技報(第2巻、
第2号)」がある。
【0003】
【発明が解決しようとする課題】本発明者はサブル−チ
ンの実行命令をトレ−スする場合について検討した。こ
のとき、従来のようにトレースの開始及び停止を当該サ
ブルーチンの命令アドレスで指定すると、命令フェッチ
サイクルはトレ−スできるがデ−タアクセスサイクルは
トレ−スできなかった。また、スタ−トポイントとスト
ップポイントとを単に指定する場合には、目的サブル−
チンの下位サブル−チン及び割込み処理ル−チンまでト
レ−スしてしまい、トレ−スメモリの記憶容量が比較的
小さい場合、指定サブル−チン全体をトレ−スしきれな
いというの問題があった。
【0004】本発明の目的は、指定したサブル−チンの
みの命令フェッチサイクルとデ−タアクセスサイクルと
をトレ−スすることができるデバッグ支援回路並びにエ
ミュレータを提供することにある。本発明の別の目的
は、所望のサブルーチンの実行時間の測定をも可能にす
るデバッグ支援回路並びにエミュレータを提供すること
にある。
【0005】本発明の前記並びにその他の目的と新規な
特徴は本明細書の記述及び添付図面から明らかになるで
あろう。
【0006】
【課題を解決するための手段】本願において開示される
発明のうち代表的なものの概要を簡単に説明すれば下記
の通りである。
【0007】すなわち、アドレス範囲とアクセス種別と
によって開始条件が設定される開始条件設定手段(31
0)と、アドレス範囲とアクセス種別とによって停止条
件が設定される停止条件設定手段(320)と、アドレ
ス信号及びアクセス種別を示す制御信号と前記開始条件
設定手段に設定された条件との一致を検出する開始条件
検出手段(330)と、アドレス信号及びアクセス種別
を示す制御信号と前記停止条件設定手段に設定された条
件との一致を検出する停止条件検出手段(340)と、
前記開始条件検出手段(330)による条件一致検出に
基づいて所定のデバッグ支援動作の開始を指示し、前記
停止条件検出手段(340)による条件一致検出に基づ
いてデバッグ支援動作の停止を指示するための制御手段
(35)とによってデバッグ支援回路を構成する。
【0008】ここで、前記制御手段(35)は、前記開
始条件検出手段(330)による条件一致検出に基づい
てセット状態にされ、前記停止条件検出手段(340)
による条件一致検出に基づいてリセット状態にされるフ
ラグ手段(FF)を備え、そのフラグ手段(FF)の出
力に基づいてデバッグ支援動作の開始並びに停止を制御
する。デバッグ支援動作とは、例えばトレースメモリ
(360)に対するエミュレーションバス(32)のト
レース、或は所望のサブルーチンなどのターゲットプロ
グラム実行時間を計測するための計数動作とされる。
【0009】
【作用】上記手段において例えば指定したサブル−チン
のみの命令フェッチサイクルとデ−タアクセスサイクル
を共にトレ−スする場合に着目すると、開始条件設定手
段(310)には指定サブルーチンのアドレス範囲と命
令フェッチサイクルであることが設定され、停止条件設
定手段(320)には指定サブルーチン以外のアドレス
範囲と命令フェッチサイクルであることが設定される。
これにより、エミュレーションにおいては、指定サブル
−チンの命令フェッチでフラグ手段(FF)がセットさ
れ、指定サブル−チンのアドレス範囲外の命令フェッチ
でフラグ手段(FF)がリセットされ、フラグ手段(F
F)のセット状態に呼応してトレースが行われる。この
事により、所望サブル−チンの命令フェッチサイクルと
これに伴うデータアクセスサイクルだけのトレースを実
現する。このとき、制御対象を一定時間毎にカウントア
ップされるカウンタ(7)に置き換えることにより、サ
ブル−チン実行時間の測定が可能にされる。
【0010】
【実施例】図5には本発明の一実施例に斯るエミュレー
タが示される。同図において4はマイクロコンピュータ
応用システムとしてのターゲットシステム、3はエミュ
レータ、5はホストコンピュータのようなシステム開発
装置である。40は、ターゲットシステム4におけるタ
ーゲットマイクロコンピュータ搭載領域であり、エミュ
レータ3のコネクタ部30がターゲットマイクロコンピ
ュータの代わりにターゲットシステム4に装着される。
エミュレーション用プロセッサ1は上記コネクタ部30
とインタフェースケーブル31を介して、ターゲットシ
ステム4と信号の入出力を行う。また、エミュレーショ
ン用プロセッサ1はエミュレーション用インタフエース
を用いてエミュレーションバス32に接続される。上記
エミュレーションバス32を用いて、エミュレーション
用プロセッサ1から、ターゲットシステム4とエミュレ
ーション用プロセッサ1が送受信する各種の信号や、エ
ミュレーション用プロセッサ1の内部状態に応じた情報
などが出力され、また、エミュレーション用プロセッサ
1に対し、エミュレーションのための各種制御信号が入
力される。
【0011】上記エミュレーションバス32には、エミ
ュレーション用プロセッサ1に内蔵されているROMの
代行若しくはエミュレーションプログラムを格納するエ
ミュレーションメモリ33と、ブレーク制御回路34
と、トレース回路35などが接続される。前記ブレーク
制御回路34は、エミュレーション用プロセッサ1の制
御状態やエミュレーションバス32の状態を監視して、
その状態が予め設定された状態に達したときに、ブレー
ク信号BRKによりエミュレータ専用割込みを入力し
て、エミュレーション用プロセッサ1によるユーザプロ
グラムの実行を停止させ、エミュレーションプログラム
を実行させる(ブレーク)制御を行う。前記トレース回
路35は、前記CPU11が出力するアドレス信号やバ
スアクセスタイプ信号などに基づき、エミュレーション
バス32に与えられるアドレスやデータさらには制御情
報を逐次蓄える。前記エミュレーションメモリ33、ブ
レーク制御回路34、トレース回路35はコントロール
バス36を介してコントロールプロセッサ37の制御を
受けるようになっている。上記コントロールバス36
は、ホストインタフェース回路39を介して、特に制限
はされないもののパーソナルコンピュータなどのシステ
ム開発装置5に接続される。上記エミュレータ3は単一
の回路基板に構成することも可能であるが、本実施例に
おいては、エミュレータ本体3Aとこのエミュレータ本
体3Aに図示しないケーブルで延長接続されたエミュレ
ーションポッド3Bとに2分割されて構成される。図5
に示されるようにエミュレーションポッド3Bにはエミ
ュレーション用プロセッサ1と共にエミュレーションメ
モリ33を含み、それらをターゲットシステム4に極力
近づけて、不所望な信号遅延を小さくし、ターゲットシ
ステム4の実動作に近い状態で信頼性の高いエミュレー
ションを行えるようにしている。
【0012】前記エミュレーション用プロセッサ1は、
ユーザプログラム(評価すべき若しくは開発途上のター
ゲットプログラム)を実行しているのか、或はエミュレ
ーションプログラム(エミュレータ若しくはエミュレー
ション用マイクロプロセッサの初期設定用プログラム若
しくはエミュレータの制御用プログラム)を実行してい
るのかを示すためのブレークアクノレッジ信号BACK
を出力する。このブレークアクノレッジ信号BACKは
その1レベルによりエミュレーション用プログラムの実
行を示し、0レベルにいってユーザプログラムの実行を
示す。例えば、ブレークアクノレッジ信号BACKが1
レベルであると、前記トレース回路35はアドレス,デ
ータ,制御情報を格納しないようにされる。
【0013】図1には本発明のデバッグ支援回路の一実
施例に係る前記トレース回路35の一例が示される。同
図において6は前記システム開発装置5及びエミュレー
タ本体を総称するホスト制御システムであり、マン−マ
シンインタフェ−スの機能を持っており、トレ−ス条件
を設定したり、トレ−スメモリ制御回路350に対して
トレ−スモ−ドを設定したり、トレ−スメモリ360を
参照する主体として位置付けられる。トレース回路35
は、トレースの開始条件設定レジスタ310と、トレー
スの停止条件設定レジスタ320と、トレースの開始条
件検出回路330と、トレースの停止条件検出回路34
0と、トレースメモリ制御回路350と、トレースメモ
リ360とによって構成される。
【0014】前記開始条件設定レジスタ310は、アド
レス範囲とアクセス種別とによってトレース開始条件が
設定される。前記停止条件設定レジスタ320は、アド
レス範囲とアクセス種別とによってトレース停止条件が
設定される。前記開始条件検出回路330は、前記エミ
ュレーションバス32から供給されるアドレス信号及び
アクセス種別を示す制御信号と前記開始条件設定レジス
タ310に設定された条件との一致を検出する。前記停
止条件検出回路340は、前記エミュレーションバス3
2から供給されるアドレス信号及びアクセス種別を示す
制御信号と前記停止条件設定レジスタ320に設定され
た条件との一致を検出する。前記トレースメモリ制御回
路350は、前記開始条件検出回路330による条件一
致検出に基づいてトレースメモリのトレース動作の開始
を指示し、前記停止条件検出回路340による条件一致
検出に基づいてトレースメモリのトレース動作の停止を
指示するものである。このトレースメモリ制御回路35
0は、前記開始条件検出回路330による条件一致検出
に基づいてセット状態にされ、前記停止条件検出回路3
40による条件一致検出に基づいてリセット状態にされ
るトレースイネーブルフラグ(フラグ手段)FFを備え
る。トレースメモリ制御回路350は、トレ−スイネ−
ブルフラグFFがセットされている間、メモリアドレ
ス、ライトイネ−ブル信号、及びチップセレクト信号を
出力して、トレ−スメモリ360にトレ−ス情報を書き
込み制御する。トレースメモリ360は、トレースメモ
リ制御回路350からの指示に従ってエミュレーション
バス32の情報を例えばバスサイクル毎に蓄えていく。
トレースメモリ360に蓄えられた情報はホスト制御シ
ステム6に読出し可能にされる。
【0015】図1のトレース回路35を用いて、図2の
サブル−チン1の命令フェッチサイクルとデ−タアクセ
スサイクルを共にトレ−スする場合、開始条件設定レジ
スタ310にはアドレス1000(本実施例においてア
ドレスは16進数で表す)〜1FFFと、バスアクセス
種別が命令フェッチサイクルであることが設定され、停
止条件設定レジスタ320にはアドレス1000〜1F
FF以外と、バスアクセス種別が命令フェッチサイクル
であることが設定される。ここで、図2のターゲットプ
ログラムにおいて、アドレス0000〜0FFFがメイ
ンル−チン、アドレス1000〜1FFFがサブル−チ
ン1、アドレス3000〜3FFFがサブル−チン2で
あり、メインル−チンがサブル−チン1を、サブル−チ
ン1がサブル−チン2をコ−ルする構成にされる。最初
トレ−スイネ−ブルフラグFFはリセット状態(トレー
ス禁止)に初期化されている。メインル−チンの開始ア
ドレス0000番地からこのプログラムを実行したと
き、トレ−スイネ−ブルフラグFFは、図2の様に変化
され、トレ−スメモリ制御回路35はトレ−スイネ−ブ
ルフラグFFが許可状態になっているときに、トレ−ス
メモリ360の書き込み動作を許容する。これにより、
トレ−スメモリ360には、アドレス1000〜1FF
Fの命令フェッチサイクル及びアドレス1004番地の
命令実行に伴うデ−タアクセスサイクルであるアドレス
5000番地のアクセス情報が取得される。したがっ
て、指定したサブル−チンの命令フェッチサイクル及び
デ−タアクセスサイクルのみをトレ−スすることがで
き、指定したサブル−チンの下位のサブル−チン(サブ
ルーチン2)をトレ−スしないようにすることができ
る。
【0016】図3には前記トレース回路35の詳細な実
施例が示される。同図においてエミュレーションバス3
2には、エミュレーションデータバスEDBUS、エミ
ュレーションアドレスバスEABUS、及びエミュレー
ションコントロールバスECBUS含まれる。前記エミ
ュレーションコントロールバスECBUSには、アクセ
ス種別を示す制御信号として、特に制限されないが、ア
クセスタイプ信号FC0、FC1を含む。ここで、アク
セスタイプ信号FC0、FC1は、特に制限されない
が、FC0=0,FC1=0でデータアクセス、FC0
=0,FC1=1でプログラムフェッチ(プログラムメ
モリアクセス)、FC0=1,FC1=0で割込み応答
アクセスを示す。FC0=1,FC1=1は不使用とさ
れる。
【0017】前記開始条件設定レジスタ310は、第1
のレジスタREG1と第2のレジスタREG2を有す
る。前記開始条件検出回路330は第1のコンパレータ
COMP1と第2のコンパレータCOMP2とナンドゲ
ートNAND1を有する。開始条件レジスタ310への
条件設定は前記コントロールバスを36を介して行われ
る。第1のレジスタREG1には所望のアドレスの範囲
が設定される。例えば、1000〜1FFFのアドレス
範囲を指定する場合には、そのアドレス範囲の下限アド
レス1000と上限アドレス1FFFが設定される。第
2のレジスタREG2にはアクセスタイプ信号FC0,
FC1に対応する2ビットが設定される。第1のコンパ
レータCOMP1は、特に制限されないが、2個の大小
比較器を備え、エミュレーションアドレスバスEABU
Sから供給されるアドレス信号が前記下限アドレス以上
であるか否か、並びに上限アドレス以下であるかを判定
し、その供給アドレス信号が設定アドレスの範囲である
場合にハイレベル(例えば論理1)の検出信号S1を出
力する。第2のコンパレータCOMP2は、特に制限さ
れないが、エミュレーションコントロールバスECBU
Sから供給されるアクセスタイプ信号FC0,FC1が
レジスタREG2の設定値に一致するか否かを判定し、
一致する場合にはハイレベルの検出信号S2を出力す
る。ナンドゲートNAND1は双方の信号S1及びS2
がハイレベルのときにローレベルにされる検出信号S1
0を出力する。したがって、レジスタREG1に設定さ
れたアドレス範囲をアクセスアドレスとし、且つ、レジ
スタREG2に設定された種別のアクセスが行われると
きに、その検出信号S10がローレベルにされる。
【0018】前記停止条件設定レジスタ320は、第3
のレジスタREG3と第4のレジスタREG4を有す
る。前記停止条件検出回路340は第3のコンパレータ
COMP3と第4のコンパレータCOMP4とナンドゲ
ートNAND2を有する。停止条件レジスタ320への
条件設定は前記コントロールバスを36を介して行われ
る。第3のレジスタREG3には所望のアドレスの範囲
が設定される。例えば、1000〜1FFF以外のアド
レス範囲を指定する場合には、その除外されるべきアド
レス範囲の下限アドレス1000と上限アドレス1FF
Fが設定される。第4のレジスタREG4にはアクセス
タイプ信号FC0,FC1に対応する2ビットが設定さ
れる。第3のコンパレータCOMP3は、特に制限され
ないが、2個の大小比較器を備え、エミュレーションア
ドレスバスEABUSから供給されるアドレス信号が前
記除外されるべき設定アドレス範囲の下限アドレスより
も小さいか否か、並びに除外されるべき設定アドレス範
囲の上限アドレスよりも大きいか否かを判定し、その供
給アドレス信号が前記除外されるべきアドレス範囲外で
ある場合(レジスタREG3に設定されたアドレス範囲
に入っている場合)にハイレベルの検出信号S3を出力
する。第4のコンパレータCOMP4は、特に制限され
ないが、エミュレーションコントロールバスECBUS
から供給されるアクセスタイプ信号FC0,FC1がレ
ジスタREG4の設定値に一致するか否かを判定し、一
致する場合にはハイレベルの検出信号S4を出力する。
ナンドゲートNAND2は双方の信号S3及びS4がハ
イレベルのときにローレベルにされる検出信号S20を
出力する。したがって、レジスタREG3に設定された
アドレス範囲をアクセスアドレスとし、且つ、レジスタ
REG4に設定された種別のアクセスが行われるとき
に、その検出信号S20がローレベルにされる。
【0019】この実施例において注意すべき点は、レジ
スタREG1とレジスタREG3とに同じアドレスデー
タ例えばADRsとADReが設定されたとしても、そ
れによって意味されるアドレス範囲は以下のように相互
に相違さる。 レジスタREG1;ADRs≦設定アドレス範囲≦AD
Re レジスタREG3;設定アドレス範囲<ADRs、AD
Re>設定アドレス範囲 この相違は、コンパレータCOMP1,COMP2によ
る前記大小比較のし方の相違に反映される。
【0020】図3において前記トレースメモリ制御回路
350は、フラグ手段としてのトレースイネーブルフラ
グFF、ナンドゲートNAND3,NAND4、タイミ
ングジェネレータTGEN、アドレスカウンタACOU
NT、選択制御回路SCONT、及びマルチプレクサM
PXによって構成される。
【0021】前記トレースメモリ360にはマルチプレ
クサMPXを介してチップセレクト信号CS*(記号*
は、これが付された信号がローイネーブルの信号である
ことを意味し、或はこれが付されていない信号に対して
レベル反転された信号であることを意味する),ライト
イネーブル信号WE*,及びアドレス信号ADRが供給
される。マルチプレクサMPXは、ホスト制御システム
6側から供給されるチップセレクト信号CS1*,ライ
トイネーブル信号WE1*,及びアドレス信号ADR1
と、エミュレーション動作中におけるトレースのために
トレースメモリ制御回路35で生成されるチップセレク
ト信号CS0*,ライトイネーブル信号WE0*,及び
アドレス信号ADR0とを、選択してトレースメモリ3
60に与え得る。その制御は選択制御回路SCONTが
行う。例えば、エミュレーションがブレークされて前記
ブレークアクノレッジ信号BACKが1レベルのときは
ホストシステム側からのチップセレクト信号CS1*,
ライトイネーブル信号WE1*,及びアドレス信号AD
R1が選択され、ユーザプログラムを実行していてブレ
ークアクノレッジ信号BACKが0レベルであるとき
は、チップセレクト信号CS0*,ライトイネーブル信
号WE0*,及びアドレス信号ADR0が選択される。
タイミングジェネレータTGENは、特に制限されない
が、ブレークアクノレッジ信号BACKの0レベルなど
に基づいて、トレースのためのメモリ制御信号(ライト
イネーブル信号WE0*、チップ選択信号CS0、アド
レスカウンタイネーブル信号ACE)を生成する。アド
レスカウンタACOUNTは、トレースのためのアドレ
ス信号ADR0を順次生成するものであり、特に制限さ
れないが、ブレークアクノレッジ信号BACKの0レベ
ルに基づいて計数値が初期化され、アドレスカウンタイ
ネーブル信号ACE*のローレベルによって計数動作が
可能にされる。
【0022】前記トレースイネーブルフラグFFは、前
記開始条件検出回路330から出力される検出信号S1
0による条件一致検出に基づいてセット状態にされ、前
記停止条件検出回路340から出力される検出信号S2
0による条件一致検出に基づいてリセット状態にされ
る。トレースイネーブルフラグFFの出力信号S30は
夫々のナンドゲートNAND3,NAND4の一方の入
力端子に供給される。ナンドゲートNAND3の他方の
入力端子には、タイミングジェネレータTGENから出
力されるチップ選択信号CS0が供給され、ハイレベル
のチップ選択レベルのとき、当該信号を、信号S30の
ハイレベル期間だけ有効とする。ナンドゲートNAND
3の出力はエミュレーション中におけるトレースメモリ
360のチップ選択信号CS0*とされる。ナンドゲー
トNAND4の他方の入力端子には、タイミングジェネ
レータTGENから出力されるアドレスカウンタイネー
ブル信号ACEが供給され、それがハイレベルのイネー
ブルレベルのとき、当該信号を、信号S30のハイレベ
ル期間だけ有効とする。ナンドゲートNAND4の出力
はアドレスカウンタイネーブル信号ACE*とされる。
【0023】次に前記トレース回路35の動作の一例を
図2をも参照しながら説明する。例えば、エミュレーシ
ョン用プロセッサ1が実行するターゲットプログラム
は、アドレス0000〜0FFFがメインル−チン、ア
ドレス1000〜1FFFがサブル−チン1、アドレス
3000〜3FFFがサブル−チン2であり、メインル
−チンがサブル−チン1を、サブル−チン1がサブル−
チン2をコ−ルする構成とされる。このとき、サブルー
チン1における命令フェッチサイクル及びデ−タアクセ
スサイクルのみをトレ−スする場合について説明する。
【0024】先ず開始条件設定レジスタ310には、ア
ドレス1000〜1FFFと、バスアクセス種別が命令
フェッチサイクルであることが設定される。すなわち、
図2のレジスタREG1にはアドレス1000とアドレ
ス1FFFが設定され、レジスタREG2にはFC0=
0,FC1=1(プログラムメモリアクセス)が設定さ
れる。停止条件設定レジスタ320には、アドレス10
00〜1FFFの範囲外と、バスアクセス種別が命令フ
ェッチサイクルであることが設定される。すなわち、図
2に従えばレジスタREG3及びREG4には前記レジ
スタREG1及びREG2と同じデータが設定される。
斯る初期設定後に、0000番地からターゲットプログ
ラムを実行してエミュレーションが開始されると、図2
に示されるようにアクセスアドレスとバスアクセス種別
(Pはプログラムフェッチ、Dはデータアクセス)に従
ってトレースイネーブルフラグFFがトレースの禁止状
態と許可状態に変化される。トレ−スメモリ制御回路3
50は、トレ−スイネ−ブルフラグFFが許可状態にな
っているときに、エミュレーションバス32の内容をト
レースメモリ360に格納させる。すなわち、トレース
イネーブルフラグFFの出力信号S30がハイレベルに
されると、チップ選択信号CS0*が選択レベルにさ
れ、且つ、アドレスカウンタACOUNTが計数動作さ
れ、これによって、動作可能な状態にされるトレースメ
モリ360はアドレスカウンタACOUNTの出力アド
レス信号に従って、順次エミュレーションバス32の情
報を蓄えていく。トレ−スイネ−ブルフラグFFが禁止
状態にされると、トレースメモリ360はチップ非選択
状態にされて書き込み動作が停止される。斯る動作にお
いて、トレ−スメモリ360には、アドレス1000〜
1FFFの命令フェッチサイクル及びアドレス1004
番地のデ−タアクセスサイクルであるアドレス5000
番地のデータアクセス情報が取得される。このトレ−ス
メモリに取得された情報はホスト制御システム6によっ
て読み出されてデバッグに供される。
【0025】したがって、指定したサブル−チンの命令
フェッチサイクル及びデ−タアクセスサイクルのみをト
レ−スし、指定したサブル−チンの下位のサブル−チン
はトレ−スしないようにすることができる。これによ
り、トレ−スメモリ360の記憶容量が小さい場合に
も、指定サブル−チン全体をトレ−スしきれないという
事態の発生を防止することができる。さらに、着目すべ
き処理ルーチン以外の情報をトレースしないため、デバ
ッグに際して、不要な情報が混在されず若しくはディス
プレイ上に表示されず、デバッグもやり易くなる。
【0026】図4には所望のサブルーチンの実行時間を
測定するための一実施例が示される。同図に示される実
施例は前記トレースイネーブルフラグFFの出力信号S
30を流用するものである。同図において7は例えば3
2ビットのバイナリカウンタであり、信号S30は当該
カウンタ7の計数動作のイネーブル信号とされる。バイ
ナリカウンタ7は、信号S30のハイレベルによって活
性化されたときに、クロック信号CLKを計数する。こ
のクロック信号CLKは、例えば1マイクロsec〜2
50ナノsecの中から選ばれた所定の周期を有する。
斯る構成において、信号S30は、指定したサブル−チ
ンの命令フェッチサイクル及びデ−タアクセスサイクル
のときだけハイレベルにされるから、特定のサブルーチ
ンの実行に要する時間だけを計測することが可能にな
る。
【0027】以上本発明者によってなされた発明を実施
例に基づいて具体的に説明したが、本発明はそれに限定
されるものではなく、その要旨を逸脱しない範囲におい
て種々変更可能であることは言うまでもない。例えば、
開始条件設定手段及び開始条件検出手段と、停止条件設
定手段及び停止条件検出手段との具体的な構成は図3の
構成に限定されず適宜変更可能である。また、アクセス
種別を指定する信号は上記実施例のアクセスタイプ信号
に限定されない。さらに、上記実施例で説明した開始条
件設定レジスタ310、停止条件設定レジスタ320、
開始条件検出回路330、停止条件検出回路340、及
びフリップフロップ回路のようなトレースイネーブルフ
ラグFFをから成るデバッグ支援回路を、エミュレーシ
ョン用プロセッサ1にオンチップで内蔵して構成するこ
とも可能である。このようにすればエミュレーション動
作のリアルタイム性に寄与することができる。
【0028】以上の説明では主として本発明者によって
なされた発明をその背景となった利用分野であるエミュ
レータに適用した場合について説明したが、本発明はそ
の他のデバッグ装置にも広く適用することができる。本
発明は、少なくともアクセス種別を示す信号の出力機能
を有するマイクロプロセッサの応用システム若しくはそ
のマイクロプロセッサの動作プログラムを評価する条件
のものに広く適用することができる。
【0029】
【発明の効果】本願において開示される発明のうち代表
的なものによって得られる効果を簡単に説明すれば下記
の通りである。
【0030】すなわち、指定したサブル−チンの命令フ
ェッチサイクルとデータアクセスサイクルだけをトレ−
スすることができ、指定したサブル−チンの下位のサブ
ル−チンをトレ−スしないようにすることができる。こ
れにより、トレ−スメモリの記憶容量が小さい場合に
も、指定サブル−チン全体の情報をトレ−スしきれない
という事態の発生を防止することができる。さらに、着
目すべき処理ルーチン以外の情報をトレースしないた
め、デバッグに際して、不要な情報が混在されず若しく
はディスプレイ上に表示されず、トレ−ス解析ソフトウ
ェアの負担を軽減でき、デバッグもやり易くなる。ま
た、サブル−チン実行時間計測回路に応用した場合、O
S(オペレーティングシステム)のオ−バ−ヘッドを除
いた真のサブル−チン実行時間を計測できる。
【図面の簡単な説明】
【図1】本発明のデバッグ支援回路の一実施例に係るト
レース回路の構成ブロック図である。
【図2】所望サブル−チンの命令フェッチサイクルとデ
−タアクセスサイクルを共にトレ−スする場合の動作説
明図である。
【図3】図1に示されるトレース回路の詳細な一実施例
回路図である。
【図4】所望サブルーチンの実行時間を測定するための
一実施例ブロック図である。
【図5】本発明の一実施例に斯るエミュレータのブロッ
ク図である。
【符号の説明】
1 エミュレーション用プロセッサ 3 エミュレータ 32 エミュレーションバス 35 トレース回路 310 開始条件設定レジスタ 320 停止条件設定レジスタ 330 開始条件検出回路 340 停止条件検出回路 350 トレースメモリ制御回路 360 トレースメモリ REG1〜REG4 レジスタ COMP1〜COMP4 コンパレータ FF トレースイネーブルフラグ ACOUNT アドレスカウンタ CS* チップ選択信号 36 コントロールバス 7 バイナリカウンタ CLK クロック信号 FC0,FC1 アクセスタイプ信号
───────────────────────────────────────────────────── フロントページの続き (72)発明者 石原 孝治 東京都小平市上水本町5丁目20番1号 株 式会社日立製作所武蔵工場内 (72)発明者 増田 訓 東京都小平市上水本町5丁目20番1号 株 式会社日立製作所武蔵工場内

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 アドレス範囲とアクセス種別とによって
    開始条件が設定される開始条件設定手段と、 アドレス範囲とアクセス種別とによって停止条件が設定
    される停止条件設定手段と、 アドレス信号及びアクセス種別を示す制御信号と前記開
    始条件設定手段に設定された条件との一致を検出する開
    始条件検出手段と、 アドレス信号及びアクセス種別を示す制御信号と前記停
    止条件設定手段に設定された条件との一致を検出する停
    止条件検出手段と、 前記開始条件検出手段による条件一致検出に基づいて所
    定のデバッグ支援動作の開始を指示し、前記停止条件検
    出手段による条件一致検出に基づいてデバッグ支援動作
    の停止を指示するための制御手段と、 を含んで成るデバッグ支援回路。
  2. 【請求項2】 前記制御手段は、前記開始条件検出手段
    による条件一致検出に基づいてセット状態にされ、前記
    停止条件検出手段による条件一致検出に基づいてリセッ
    ト状態にされるフラグ手段を備え、そのフラグ手段の出
    力に基づいてデバッグ支援動作の開始並びに停止を制御
    するものである請求項1記載のデバッグ支援回路。
  3. 【請求項3】 前記制御手段は、前記フラグ手段のセッ
    ト状態に呼応してトレースメモリをチップ選択状態に
    し、前記フラグ手段のリセット状態に呼応してトレース
    メモリをチップ非選択状態にするための信号形成論理を
    備えるものである請求項2記載のデバッグ支援回路。
  4. 【請求項4】 前記フラグ手段のセット状態に呼応して
    計数動作が開始可能にされ、前記フラグ手段のリセット
    状態に呼応して計数動作が停止可能にされる計数手段を
    更に備えて成る請求項2又は3記載のデバッグ支援回
    路。
  5. 【請求項5】 請求項1乃至4の何れか1項に記載のデ
    バッグ支援回路を含み、 前記開始条件検出手段及び停止条件検出手段における前
    記アドレス信号及びアクセス種別を示す制御信号の入力
    端子は、エミュレーション用プロセッサに接続するエミ
    ュレーションバスに結合され、 前記開始条件設定手段及び停止条件設定手段は、ホスト
    装置を介して条件設定可能にされて、 成るものであるエミュレータ。
JP4126858A 1992-04-20 1992-04-20 デバッグ支援回路、及びエミュレータ Withdrawn JPH05298138A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4126858A JPH05298138A (ja) 1992-04-20 1992-04-20 デバッグ支援回路、及びエミュレータ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4126858A JPH05298138A (ja) 1992-04-20 1992-04-20 デバッグ支援回路、及びエミュレータ

Publications (1)

Publication Number Publication Date
JPH05298138A true JPH05298138A (ja) 1993-11-12

Family

ID=14945589

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4126858A Withdrawn JPH05298138A (ja) 1992-04-20 1992-04-20 デバッグ支援回路、及びエミュレータ

Country Status (1)

Country Link
JP (1) JPH05298138A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008293260A (ja) * 2007-05-24 2008-12-04 Renesas Technology Corp トレース装置
JP2012133752A (ja) * 2010-11-29 2012-07-12 Denso Corp マイクロコンピュータ

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008293260A (ja) * 2007-05-24 2008-12-04 Renesas Technology Corp トレース装置
JP2012133752A (ja) * 2010-11-29 2012-07-12 Denso Corp マイクロコンピュータ
US8700956B2 (en) 2010-11-29 2014-04-15 Denso Corporation Microcomputer

Similar Documents

Publication Publication Date Title
US7010722B2 (en) Embedded symmetric multiprocessor system debug
US6915416B2 (en) Apparatus and method for microcontroller debugging
EP0391173B1 (en) Debug peripheral for microcomputers, microprocessors and core processor integrated circuits and system using the same
JP3210466B2 (ja) Cpuコア、該cpuコアを有するasic、及び該asicを備えたエミュレーションシステム
US5862148A (en) Microcontroller with improved debug capability for internal memory
US5717851A (en) Breakpoint detection circuit in a data processor and method therefor
JPH08185336A (ja) マイクロプロセッサ、マイクロプロセッサ−デバッグツール間信号伝送方法及びトレース方法
US5870541A (en) Computer system capable of outputting status data without interrupting execution of program
EP0530816A2 (en) Microprocessor with cache memory and trace analyzer therefor
US20060075310A1 (en) Microcomputer and trace control method capable of tracing desired task
JP2000132430A (ja) 信号処理装置
JPH05298138A (ja) デバッグ支援回路、及びエミュレータ
JPH10254738A (ja) エミュレータ装置及びエミュレーション方法
KR100223096B1 (ko) 내부 메모리 맵 레지스터를 관측하는 방법 및 장치
US6560698B1 (en) Register change summary resource
JP2760228B2 (ja) キャッシュメモリを内蔵したマイクロプロセッサとそのトレースアナライザ
US20040107388A1 (en) Microcomputer
JP3323341B2 (ja) エミュレーション用プロセッサおよびそれを搭載したエミュレータ
KR0150161B1 (ko) 마이콤 내부레지스터 및 램의 데이터를 디스플레이하기 위한 장치
JPH11102306A (ja) エミュレータ
JP2654105B2 (ja) マイクロプロセッサ
JPH09106359A (ja) 半導体集積回路
JPH09237201A (ja) マイクロコンピュータアナライザ
JPH05233351A (ja) エミュレータ
JPH05282179A (ja) エミュレータ

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19990706