JPH0573358A - カバレジ方式、及びエミユレータ - Google Patents
カバレジ方式、及びエミユレータInfo
- Publication number
- JPH0573358A JPH0573358A JP3261159A JP26115991A JPH0573358A JP H0573358 A JPH0573358 A JP H0573358A JP 3261159 A JP3261159 A JP 3261159A JP 26115991 A JP26115991 A JP 26115991A JP H0573358 A JPH0573358 A JP H0573358A
- Authority
- JP
- Japan
- Prior art keywords
- address
- latch circuit
- coverage
- user program
- storage latch
- 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
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】
【目的】 本発明の目的は、カバレジ解析時間の短縮を
図ることにある。 【構成】 ユーザプログラムの実行アドレスの範囲を示
す情報を得るため、エミュレーションアドレスの上位を
保存するための上位アドレス保存ラッチ回路7と、下位
アドレス保存ラッチ回路8とを設け、カバレジ解析にお
いて上位アドレス保存ラッチ回路7と下位アドレス保存
ラッチ回路8との保持情報を利用することにより、カバ
レジメモリ40の無駄なアドレス内容検索を不要し、カ
バレジ解析時間の短縮を図る。
図ることにある。 【構成】 ユーザプログラムの実行アドレスの範囲を示
す情報を得るため、エミュレーションアドレスの上位を
保存するための上位アドレス保存ラッチ回路7と、下位
アドレス保存ラッチ回路8とを設け、カバレジ解析にお
いて上位アドレス保存ラッチ回路7と下位アドレス保存
ラッチ回路8との保持情報を利用することにより、カバ
レジメモリ40の無駄なアドレス内容検索を不要し、カ
バレジ解析時間の短縮を図る。
Description
【0001】
【産業上の利用分野】本発明は、デバッグ対象とされる
ユーザプログラムのデバッグ技術、さらにはプロセッサ
によって実行されるプログラムの通過アドレスに応じて
所定の情報を蓄えるカバレジトレース機能を備えたデバ
ッグ装置に関し、例えばインサーキットエミュレータに
適用して有効な技術に関する。
ユーザプログラムのデバッグ技術、さらにはプロセッサ
によって実行されるプログラムの通過アドレスに応じて
所定の情報を蓄えるカバレジトレース機能を備えたデバ
ッグ装置に関し、例えばインサーキットエミュレータに
適用して有効な技術に関する。
【0002】
【従来の技術】マイクロコンピュータ応用機器の開発に
おいて、その応用システムのデバッグやそのシステムの
詳細な評価を行うため、インサーキットエミュレータが
使用されている。かかるインサーキットエミュレータ
は、ソフトウェア開発用の親計算機(ホストコンピュー
タ)などのシステム開発装置と、開発中の応用機器との
間に接続され、その応用機器に含まれるマイクロプロセ
ッサ(ターゲットマイクロプロセッサ)の機能を代行す
る一方でデバッガとしての機能を持ち、詳細なシステム
デバッグを支援する。そのようなインサーキット・エミ
ュレータにおいては、応用機器側のユーザプログラム
(ターゲットプログラム)の評価を可能とする手段とし
てリアルタイムトレース機能の他にカバレジトレース機
能を備えたものがある。このカバレジトレース機能は、
ターゲットマイクロプロセッサの実行アドレスをメモリ
に保存しておき、エミュレーション終了時に当該メモリ
の内容を判定することによって実行アドレスの把握を可
能とする機能である。その場合の実行アドレスの保存
は、ターゲットマイクロプロセッサによって管理される
アドレス空間に配置された所定のメモリ(カバレジトレ
ースメモリと称される)に、当該プロセッサが命令を実
行したときにそれの実行アドレスに呼応するフラグビッ
トをセットすることによって可能とされる。そのように
してカバレジトレースメモリに順次蓄えられた情報によ
れば、ターゲットプログラムの中の命令語の何パーセン
トをテストできたかを測定することができる。
おいて、その応用システムのデバッグやそのシステムの
詳細な評価を行うため、インサーキットエミュレータが
使用されている。かかるインサーキットエミュレータ
は、ソフトウェア開発用の親計算機(ホストコンピュー
タ)などのシステム開発装置と、開発中の応用機器との
間に接続され、その応用機器に含まれるマイクロプロセ
ッサ(ターゲットマイクロプロセッサ)の機能を代行す
る一方でデバッガとしての機能を持ち、詳細なシステム
デバッグを支援する。そのようなインサーキット・エミ
ュレータにおいては、応用機器側のユーザプログラム
(ターゲットプログラム)の評価を可能とする手段とし
てリアルタイムトレース機能の他にカバレジトレース機
能を備えたものがある。このカバレジトレース機能は、
ターゲットマイクロプロセッサの実行アドレスをメモリ
に保存しておき、エミュレーション終了時に当該メモリ
の内容を判定することによって実行アドレスの把握を可
能とする機能である。その場合の実行アドレスの保存
は、ターゲットマイクロプロセッサによって管理される
アドレス空間に配置された所定のメモリ(カバレジトレ
ースメモリと称される)に、当該プロセッサが命令を実
行したときにそれの実行アドレスに呼応するフラグビッ
トをセットすることによって可能とされる。そのように
してカバレジトレースメモリに順次蓄えられた情報によ
れば、ターゲットプログラムの中の命令語の何パーセン
トをテストできたかを測定することができる。
【0003】尚、インサーキットエミュレータについて
記載された文献の例としては、昭和63年10月1日に
日立マイクロコンピュータエンジニアリング株式会社よ
り発行された「日立マイコン技報(第2巻、第2号)」
や、平成2年3月に(株)日立製作所より発行された
「H8/520 ASE model−1 ユーザーズ
マニュアル」がある。
記載された文献の例としては、昭和63年10月1日に
日立マイクロコンピュータエンジニアリング株式会社よ
り発行された「日立マイコン技報(第2巻、第2号)」
や、平成2年3月に(株)日立製作所より発行された
「H8/520 ASE model−1 ユーザーズ
マニュアル」がある。
【0004】
【発明が解決しようとする課題】上記従来技術によれ
ば、カバレジトレースメモリの全ての記憶情報をプロセ
ッサによって読み込み、フラグがセットされているアド
レスを検出してそれをユーザに提供するようになってい
るため、ターゲットプログラムの実行が非常に少ない場
合であってもカバレジトレースメモリの全てのアドレス
内容を検索しなければ、ターゲットプログラム実行によ
る正しい実行アドレスは解らない。このため、ターゲッ
トプログラムの実行アドレスを調べるのに時間がかか
り、このことが、カバレジ解析処理の時間短縮を阻害す
る主たる要因とされるのが、本発明者によって見いださ
れた。そしてそのような問題は、ターゲットマイクロプ
ロセッサのアドレス空間が大きいほど、また、カバレジ
トレースメモリの記憶容量が大きいほど、顕著とされる
のが明かとされた。
ば、カバレジトレースメモリの全ての記憶情報をプロセ
ッサによって読み込み、フラグがセットされているアド
レスを検出してそれをユーザに提供するようになってい
るため、ターゲットプログラムの実行が非常に少ない場
合であってもカバレジトレースメモリの全てのアドレス
内容を検索しなければ、ターゲットプログラム実行によ
る正しい実行アドレスは解らない。このため、ターゲッ
トプログラムの実行アドレスを調べるのに時間がかか
り、このことが、カバレジ解析処理の時間短縮を阻害す
る主たる要因とされるのが、本発明者によって見いださ
れた。そしてそのような問題は、ターゲットマイクロプ
ロセッサのアドレス空間が大きいほど、また、カバレジ
トレースメモリの記憶容量が大きいほど、顕著とされる
のが明かとされた。
【0005】本発明の目的は、カバレジ解析時間の短縮
を図ったエミュレータを提供することにある。
を図ったエミュレータを提供することにある。
【0006】本発明の前記並びにその他の目的と新規な
特徴は本明細書の記述及び添付図面から明らかになるで
あろう。
特徴は本明細書の記述及び添付図面から明らかになるで
あろう。
【0007】
【課題を解決するための手段】本願において開示される
発明のうち代表的なものの概要を簡単に説明すれば下記
の通りである。
発明のうち代表的なものの概要を簡単に説明すれば下記
の通りである。
【0008】すなわち、第1手段として、ユーザプログ
ラム実行アドレスの範囲を示す情報を収集し、収集され
た情報に基づきユーザプログラム実行アドレス範囲につ
いてのカバレジ解析を行うものである。このとき、ユー
ザプログラム実行アドレスの範囲を示す情報は、ユーザ
プログラム実行アドレスのうちの最上位アドレス情報及
び最下位アドレス情報とすることができる。
ラム実行アドレスの範囲を示す情報を収集し、収集され
た情報に基づきユーザプログラム実行アドレス範囲につ
いてのカバレジ解析を行うものである。このとき、ユー
ザプログラム実行アドレスの範囲を示す情報は、ユーザ
プログラム実行アドレスのうちの最上位アドレス情報及
び最下位アドレス情報とすることができる。
【0009】また、第2手段として、ユーザプログラム
実行アドレスの範囲を示す情報を保存するためのアドレ
ス保存回路を含んでエミュレータを構成するものであ
る。このとき、上記アドレス保存回路は、ユーザプログ
ラム実行アドレスのうちの最上位アドレス情報を保存す
るための上位アドレス保存ラッチ回路と、ユーザプログ
ラム実行アドレスのうちの最下位アドレス情報を保存す
るための下位アドレス保存ラッチ回路とを含んで構成す
ることができる。さらに、上位アドレス保存ラッチ回路
の保存内容とユーザプログラム実行アドレスとを比較
し、その比較結果に基づいて当該上位アドレス保存ラッ
チ回路の保存内容を更新するための第1比較器と、下位
アドレス保存ラッチ回路の保存内容とユーザプログラム
実行アドレスとを比較し、その比較結果に基づいて当該
下位アドレス保存ラッチ回路の保存内容を更新するため
の第2比較器とを含めることができる。
実行アドレスの範囲を示す情報を保存するためのアドレ
ス保存回路を含んでエミュレータを構成するものであ
る。このとき、上記アドレス保存回路は、ユーザプログ
ラム実行アドレスのうちの最上位アドレス情報を保存す
るための上位アドレス保存ラッチ回路と、ユーザプログ
ラム実行アドレスのうちの最下位アドレス情報を保存す
るための下位アドレス保存ラッチ回路とを含んで構成す
ることができる。さらに、上位アドレス保存ラッチ回路
の保存内容とユーザプログラム実行アドレスとを比較
し、その比較結果に基づいて当該上位アドレス保存ラッ
チ回路の保存内容を更新するための第1比較器と、下位
アドレス保存ラッチ回路の保存内容とユーザプログラム
実行アドレスとを比較し、その比較結果に基づいて当該
下位アドレス保存ラッチ回路の保存内容を更新するため
の第2比較器とを含めることができる。
【0010】
【作用】上記した手段によれば、ユーザプログラム実行
アドレスの範囲を示す情報を保存することは、そのよう
な情報に基づいてカバレジ解析する限りにおいてカバレ
ジメモリの無駄なアドレス内容検索を不要とし、このこ
とが、カバレジ解析時間の短縮を達成する。
アドレスの範囲を示す情報を保存することは、そのよう
な情報に基づいてカバレジ解析する限りにおいてカバレ
ジメモリの無駄なアドレス内容検索を不要とし、このこ
とが、カバレジ解析時間の短縮を達成する。
【0011】
【実施例】図2には本発明の一実施例であるインサーキ
ットエミュレータを含むマイクロコンピュータ開発用シ
ステムが示される。
ットエミュレータを含むマイクロコンピュータ開発用シ
ステムが示される。
【0012】同図に示されるようにインサーキットエミ
ュレータ2は、親計算機1と、開発中のマイクロプロセ
ッサ応用機器3との間に接続され、その応用機器3に含
まれるターゲットマイクロプロセッサの機能を代行する
一方でデバッガとしての機能を持ち、詳細なシステムデ
バッグを支援する。親計算機1とインサーキットエミュ
レータ2とはシリアル回線バスラインによって結合さ
れ、このバスラインによって両者間でのデータのやりと
りが可能とされる。また、インサーキットエミュレータ
2からはケーブル4が引出され、このケーブル4の先端
に設けられたプラグ4aが、応用機器3のターゲットマ
イクロプロセッサ用ソケット5に結合されることによ
り、インサーキットエミュレータ2において所定のエミ
ュレーション動作が可能とされる。
ュレータ2は、親計算機1と、開発中のマイクロプロセ
ッサ応用機器3との間に接続され、その応用機器3に含
まれるターゲットマイクロプロセッサの機能を代行する
一方でデバッガとしての機能を持ち、詳細なシステムデ
バッグを支援する。親計算機1とインサーキットエミュ
レータ2とはシリアル回線バスラインによって結合さ
れ、このバスラインによって両者間でのデータのやりと
りが可能とされる。また、インサーキットエミュレータ
2からはケーブル4が引出され、このケーブル4の先端
に設けられたプラグ4aが、応用機器3のターゲットマ
イクロプロセッサ用ソケット5に結合されることによ
り、インサーキットエミュレータ2において所定のエミ
ュレーション動作が可能とされる。
【0013】図3には上記インサーキットエミュレータ
2の詳細な構成が示される。
2の詳細な構成が示される。
【0014】同図に示されるようにインサーキットエミ
ュレータ2には、マイクロプロセッサ応用機器3に含ま
れるターゲットマイクロプロセッサの機能を代行してそ
の応用機器の動作制御すなわちエミュレーションを行う
ためのスレーブマイクロプロセッサ(以下、SMCUと
記す)11と、各種デバッグ機能を達成するための制御
を司るマスタマイクロプロセッサ(以下、MMCUと記
す)16とが設けられる。
ュレータ2には、マイクロプロセッサ応用機器3に含ま
れるターゲットマイクロプロセッサの機能を代行してそ
の応用機器の動作制御すなわちエミュレーションを行う
ためのスレーブマイクロプロセッサ(以下、SMCUと
記す)11と、各種デバッグ機能を達成するための制御
を司るマスタマイクロプロセッサ(以下、MMCUと記
す)16とが設けられる。
【0015】SMCU11が応用機器3におけるターゲ
ットマイクロプロセッサの機能を代行制御(エミュレー
ション)するとき、SMCU11はMMCU16の制御
から切離され、またSMCU11の制御動作状態が予め
定められている状態に到達してブレークされる時、MM
CU16の制御を受けることになる。このような制御状
態の切換えがエミュレーション制御部12によって行わ
れる。
ットマイクロプロセッサの機能を代行制御(エミュレー
ション)するとき、SMCU11はMMCU16の制御
から切離され、またSMCU11の制御動作状態が予め
定められている状態に到達してブレークされる時、MM
CU16の制御を受けることになる。このような制御状
態の切換えがエミュレーション制御部12によって行わ
れる。
【0016】インサーキットエミュレータ2には、上記
エミュレーション制御部12の他に、SMCU11の制
御状態やスレーブバス21の状態を監視してその状態が
予め設定された状態に達したときエミュレーション動作
を停止するためのブレーク制御部13、スレーブバス2
1に与えられるデータやアドレスさらには制御情報を逐
次トレースして蓄えるリアルタイムトレース部14、応
用機器3に含まれるべきデータメモリやプログラムメモ
リを代行するための代行メモリ部15、SMCU11に
よって実行されるプログラムの通過アドレスに応じてカ
バレジトレースを行うカバレジトレース部50を有し、
それらが、スレーブバス21を介してSMCU11に、
またマスタバス22を介してMMCU16に接続されて
いる。そして上記各ブロックの機能実行は、インサーキ
ットエミュレータ2に接続された親計算機1のコンソー
ル10からコントロール可能とされる。
エミュレーション制御部12の他に、SMCU11の制
御状態やスレーブバス21の状態を監視してその状態が
予め設定された状態に達したときエミュレーション動作
を停止するためのブレーク制御部13、スレーブバス2
1に与えられるデータやアドレスさらには制御情報を逐
次トレースして蓄えるリアルタイムトレース部14、応
用機器3に含まれるべきデータメモリやプログラムメモ
リを代行するための代行メモリ部15、SMCU11に
よって実行されるプログラムの通過アドレスに応じてカ
バレジトレースを行うカバレジトレース部50を有し、
それらが、スレーブバス21を介してSMCU11に、
またマスタバス22を介してMMCU16に接続されて
いる。そして上記各ブロックの機能実行は、インサーキ
ットエミュレータ2に接続された親計算機1のコンソー
ル10からコントロール可能とされる。
【0017】更にインサーキットエミュレータ2内に
は、MMCU16がコンソール10との間でデータ通信
を行うためのシリアルインタフェース回路17が設けら
れ、また、SMCU11からはインタフェース回路18
を介してケーブル4が引出されている。
は、MMCU16がコンソール10との間でデータ通信
を行うためのシリアルインタフェース回路17が設けら
れ、また、SMCU11からはインタフェース回路18
を介してケーブル4が引出されている。
【0018】図1には上記カバレジトレース部50の構
成例が示される。
成例が示される。
【0019】図1に示されるようにこのカバレジトレー
ス部50は、特に制限されないが、カバレジトレースの
制御を行うカバレジ回路30と、カバレジ情報を記憶す
るためのカバレジメモリ40と、実行されたユーザプロ
グラムの最上位アドレスと、最下位アドレスとを保存す
るためのアドレス保存回路6とを含む。図3に示される
スレーブバス21は、図1に示されるように、スレーブ
アドレスバス21Aと、スレーブデータバス21Dとを
含む。上記カバレジメモリ40はスレーブアドレスバス
21Aを介してSMCU11に結合され、上記カバレジ
回路30は、上記スレーブデータバス21Dを介してS
MCU11に結合される。上記アドレス保存回路6は、
特に制限されないが、以下のように構成される。
ス部50は、特に制限されないが、カバレジトレースの
制御を行うカバレジ回路30と、カバレジ情報を記憶す
るためのカバレジメモリ40と、実行されたユーザプロ
グラムの最上位アドレスと、最下位アドレスとを保存す
るためのアドレス保存回路6とを含む。図3に示される
スレーブバス21は、図1に示されるように、スレーブ
アドレスバス21Aと、スレーブデータバス21Dとを
含む。上記カバレジメモリ40はスレーブアドレスバス
21Aを介してSMCU11に結合され、上記カバレジ
回路30は、上記スレーブデータバス21Dを介してS
MCU11に結合される。上記アドレス保存回路6は、
特に制限されないが、以下のように構成される。
【0020】ユーザプログラム実行時のエミュレーショ
ンアドレスのサイクル単位に上記カバレジメモリ40に
所定のフラグがセットされる。このカバレジメモリ40
の記憶内容は、後のカバレジ解析処理に供されるが、そ
の場合の処理時間の短縮化を図るため、本実施例では、
ユーザプログラムの実行アドレスの範囲を示す情報を得
るようにしている。そのような情報を得るため、特に制
限されないが、本実施例では、エミュレーションアドレ
スの上位を保存するための上位アドレス保存ラッチ回路
7と、下位アドレス保存ラッチ回路8とが設けられる。
ンアドレスのサイクル単位に上記カバレジメモリ40に
所定のフラグがセットされる。このカバレジメモリ40
の記憶内容は、後のカバレジ解析処理に供されるが、そ
の場合の処理時間の短縮化を図るため、本実施例では、
ユーザプログラムの実行アドレスの範囲を示す情報を得
るようにしている。そのような情報を得るため、特に制
限されないが、本実施例では、エミュレーションアドレ
スの上位を保存するための上位アドレス保存ラッチ回路
7と、下位アドレス保存ラッチ回路8とが設けられる。
【0021】上位アドレス保存ラッチ回路7の後段に
は、その出力と上記スレーブアドレスバス21Aのアド
レスとを比較するための比較器44が配置され、この比
較結果に基づいて上位アドレス保存ラッチ回路7の保持
内容が更新されるようになっている。すなわち、比較器
44において、スレーブアドレスバス21Aのアドレス
が、上位アドレス保存ラッチ回路7に現在保持されてい
るアドレスよりも大きいと判断された場合には、当該比
較器44の出力がアクティブ状態とされ、それにより上
位アドレス保存ラッチ回路7の保持内容が、そのときの
スレーブアドレスバス21Aのアドレスに書き換えられ
る。そのようにして上位アドレス保存ラッチ回路7に
は、それまでの実行アドレスの最上位アドレスが保持さ
れる。
は、その出力と上記スレーブアドレスバス21Aのアド
レスとを比較するための比較器44が配置され、この比
較結果に基づいて上位アドレス保存ラッチ回路7の保持
内容が更新されるようになっている。すなわち、比較器
44において、スレーブアドレスバス21Aのアドレス
が、上位アドレス保存ラッチ回路7に現在保持されてい
るアドレスよりも大きいと判断された場合には、当該比
較器44の出力がアクティブ状態とされ、それにより上
位アドレス保存ラッチ回路7の保持内容が、そのときの
スレーブアドレスバス21Aのアドレスに書き換えられ
る。そのようにして上位アドレス保存ラッチ回路7に
は、それまでの実行アドレスの最上位アドレスが保持さ
れる。
【0022】また、下位アドレス保存ラッチ回路8の後
段には、その出力と上記スレーブアドレスバス21Aの
アドレスとを比較するための比較器43が配置され、こ
の比較結果に基づいて下位アドレス保存ラッチ回路8の
保持内容が更新されるようになっている。すなわち、比
較器43において、スレーブアドレスバス21Aのアド
レスが、下位アドレス保存ラッチ回路8に現在保持され
ているアドレスよりも小さいと判断された場合には、当
該比較器43の出力がアクティブ状態とされ、それによ
り下位アドレス保存ラッチ回路8の保持内容が、そのと
きのスレーブアドレスバス21Aのアドレスに書き換え
られる。そのようにして、下位アドレス保存ラッチ回路
8には、それまでの実行アドレスの最下位アドレスが保
持される。
段には、その出力と上記スレーブアドレスバス21Aの
アドレスとを比較するための比較器43が配置され、こ
の比較結果に基づいて下位アドレス保存ラッチ回路8の
保持内容が更新されるようになっている。すなわち、比
較器43において、スレーブアドレスバス21Aのアド
レスが、下位アドレス保存ラッチ回路8に現在保持され
ているアドレスよりも小さいと判断された場合には、当
該比較器43の出力がアクティブ状態とされ、それによ
り下位アドレス保存ラッチ回路8の保持内容が、そのと
きのスレーブアドレスバス21Aのアドレスに書き換え
られる。そのようにして、下位アドレス保存ラッチ回路
8には、それまでの実行アドレスの最下位アドレスが保
持される。
【0023】上記のように上位アドレス保存ラッチ回路
7に保持された情報と下位アドレス保存ラッチ回路8に
保持された情報とによって、ユーザプログラム実行アド
レスの範囲が示される。そのような情報が、データバス
バッファ45を介してSMCU11に伝達されることに
よって、当該SMCU11は、ユーザプログラムの実行
範囲に属する情報のみをカバレジ解析処理対象とするこ
とができ、それによって解析処理時間の短縮が可能とさ
れる。
7に保持された情報と下位アドレス保存ラッチ回路8に
保持された情報とによって、ユーザプログラム実行アド
レスの範囲が示される。そのような情報が、データバス
バッファ45を介してSMCU11に伝達されることに
よって、当該SMCU11は、ユーザプログラムの実行
範囲に属する情報のみをカバレジ解析処理対象とするこ
とができ、それによって解析処理時間の短縮が可能とさ
れる。
【0024】次に本実施例におけるカバレジ解析を、従
来方式との関係で説明する。
来方式との関係で説明する。
【0025】図4には、カバレジ解析処理の従来方式が
示される。
示される。
【0026】従来方式に従えば、先ず、カバレジメモリ
40の最下位アドレスがSMCU11のワークレジスタ
に行われる(ステップST1)。ここにいう最下位アド
レスとは、SMCU11に割付けられたカバレジメモリ
40の一番下のアドレスを指す。それによりSMCU1
1はカバレジメモリ40のカバレジデータを読み込み
(ステップST2)、それの内容判定を行う(ステップ
ST3)。この判定において、SMCU11によってユ
ーザプログラムが実行されていると判断された場合に
は、実行アドレスの表示を行い(ステップST4)、ワ
ークレジスタにセットされているアドレスがインクリメ
ントされ(ステップST5)、セットアドレスの判定が
行われる(ステップST6)。尚、上記ステップST3
の判別において、ユーザプログラムが実行されていない
と判断された場合には、上記ステップST4の実行アド
レス表示を行うことなくセットアドレスのインクリメン
トが行われる。ステップST6のセットアドレス判定に
おいて、当該セットアドレスが、SMCU11に割付け
られたカバレジメモリの一番上のアドレス(最上位アド
レス)に達していないと判断された場合には、上記ステ
ップST2のカバレジデータの読み込みが行われ、それ
についての内容判定等、上記した処理が実行される。上
記ステップST2からST6の処理は、ステップST6
の判別においてセットアドレスが最上位アドレスを越え
たと判断されるまで繰り返される。つまり、カバレジメ
モリ40の記憶内容に拘らず、最下位アドレスから最上
位アドレスまで、その内容判定が行われ、そのために、
カバレジ解析に多くの時間を要した。
40の最下位アドレスがSMCU11のワークレジスタ
に行われる(ステップST1)。ここにいう最下位アド
レスとは、SMCU11に割付けられたカバレジメモリ
40の一番下のアドレスを指す。それによりSMCU1
1はカバレジメモリ40のカバレジデータを読み込み
(ステップST2)、それの内容判定を行う(ステップ
ST3)。この判定において、SMCU11によってユ
ーザプログラムが実行されていると判断された場合に
は、実行アドレスの表示を行い(ステップST4)、ワ
ークレジスタにセットされているアドレスがインクリメ
ントされ(ステップST5)、セットアドレスの判定が
行われる(ステップST6)。尚、上記ステップST3
の判別において、ユーザプログラムが実行されていない
と判断された場合には、上記ステップST4の実行アド
レス表示を行うことなくセットアドレスのインクリメン
トが行われる。ステップST6のセットアドレス判定に
おいて、当該セットアドレスが、SMCU11に割付け
られたカバレジメモリの一番上のアドレス(最上位アド
レス)に達していないと判断された場合には、上記ステ
ップST2のカバレジデータの読み込みが行われ、それ
についての内容判定等、上記した処理が実行される。上
記ステップST2からST6の処理は、ステップST6
の判別においてセットアドレスが最上位アドレスを越え
たと判断されるまで繰り返される。つまり、カバレジメ
モリ40の記憶内容に拘らず、最下位アドレスから最上
位アドレスまで、その内容判定が行われ、そのために、
カバレジ解析に多くの時間を要した。
【0027】それに対して、本実施例エミュレータにお
いては、ユーザプログラム実行アドレスの範囲を示す情
報を利用することにより、カバレジメモリ40の無駄な
アドレス内容検索を不要とし、それによってカバレジ解
析時間の短縮化を図っている。
いては、ユーザプログラム実行アドレスの範囲を示す情
報を利用することにより、カバレジメモリ40の無駄な
アドレス内容検索を不要とし、それによってカバレジ解
析時間の短縮化を図っている。
【0028】すなわち、本実施例エミュレータにおいて
は、図5に示されるように、スレーブデータバス21D
を介して下位アドレス保存ラッチ回路8のラッチデータ
がSMCU11に読み込まれ(ステップST11)、そ
れが、SMCU11のワークレジスタにセットされる
(ステップST12)。つまり、従来方式では、SMC
U11に割付けられたカバレジメモリ40の一番下のア
ドレスがワークレジスタにセットされたが、本実施例エ
ミュレータでは、カバレジメモリ40の最下位アドレス
ではなく、最下位アドレス保存ラッチ回路8の保持アド
レス情報がワークレジスタにセットされる。それにより
SMCU11は、ワークレジスタにセットされたアドレ
スに従ってカバレジメモリ40のカバレジデータを読み
込み(ステップST13)、それの内容判定を行う(ス
テップST14)。この判定において、SMCU11に
よってユーザプログラムが実行されていると判断された
場合には、実行アドレスの表示を行い(ステップST1
5)、ワークレジスタにセットされているアドレスがイ
ンクリメントされ(ステップST16)、セットアドレ
スの判定が行われる(ステップST17)。尚、上記ス
テップST14の判別において、ユーザプログラムが実
行されていないと判断された場合には、上記ステップS
T15の実行アドレス表示を行うことなくセットアドレ
スのインクリメントが行われる。ステップST17のセ
ットアドレス判定において、当該セットアドレスが、上
位アドレス保存ラッチ回路7の保持値(最上位アドレ
ス)に達していないと判断された場合には、当該セット
アドレスについて上記ステップST13のカバレジデー
タの読み込みが行われ、それについての内容判定等、上
記した処理が実行される。上記ステップST13からS
T17の処理は、ステップST17の判別において、S
MCU11のワークレジスタセットアドレスが、上位ア
ドレス保存アドレスラッチ回路7の保持値を越えたと判
断されるまで繰り返される。そのようにして、ユーザプ
ログラム実行アドレス範囲についてのカバレジ解析が行
われる。すなわち、従来方式においてカバレジメモリ4
0の最下位アドレスから最上位アドレスまで、その内容
判定が行われるのに対して、本実施例エミュレータにお
いては、上位アドレス保存ラッチ回路7と下位アドレス
保存ラッチ回路8との保持情報を利用することにより、
カバレジメモリ40の無駄なアドレス内容検索が不要と
され、それによってカバレジ解析時間の短縮化が可能と
される。
は、図5に示されるように、スレーブデータバス21D
を介して下位アドレス保存ラッチ回路8のラッチデータ
がSMCU11に読み込まれ(ステップST11)、そ
れが、SMCU11のワークレジスタにセットされる
(ステップST12)。つまり、従来方式では、SMC
U11に割付けられたカバレジメモリ40の一番下のア
ドレスがワークレジスタにセットされたが、本実施例エ
ミュレータでは、カバレジメモリ40の最下位アドレス
ではなく、最下位アドレス保存ラッチ回路8の保持アド
レス情報がワークレジスタにセットされる。それにより
SMCU11は、ワークレジスタにセットされたアドレ
スに従ってカバレジメモリ40のカバレジデータを読み
込み(ステップST13)、それの内容判定を行う(ス
テップST14)。この判定において、SMCU11に
よってユーザプログラムが実行されていると判断された
場合には、実行アドレスの表示を行い(ステップST1
5)、ワークレジスタにセットされているアドレスがイ
ンクリメントされ(ステップST16)、セットアドレ
スの判定が行われる(ステップST17)。尚、上記ス
テップST14の判別において、ユーザプログラムが実
行されていないと判断された場合には、上記ステップS
T15の実行アドレス表示を行うことなくセットアドレ
スのインクリメントが行われる。ステップST17のセ
ットアドレス判定において、当該セットアドレスが、上
位アドレス保存ラッチ回路7の保持値(最上位アドレ
ス)に達していないと判断された場合には、当該セット
アドレスについて上記ステップST13のカバレジデー
タの読み込みが行われ、それについての内容判定等、上
記した処理が実行される。上記ステップST13からS
T17の処理は、ステップST17の判別において、S
MCU11のワークレジスタセットアドレスが、上位ア
ドレス保存アドレスラッチ回路7の保持値を越えたと判
断されるまで繰り返される。そのようにして、ユーザプ
ログラム実行アドレス範囲についてのカバレジ解析が行
われる。すなわち、従来方式においてカバレジメモリ4
0の最下位アドレスから最上位アドレスまで、その内容
判定が行われるのに対して、本実施例エミュレータにお
いては、上位アドレス保存ラッチ回路7と下位アドレス
保存ラッチ回路8との保持情報を利用することにより、
カバレジメモリ40の無駄なアドレス内容検索が不要と
され、それによってカバレジ解析時間の短縮化が可能と
される。
【0029】上記実施例によれば以下の作用効果を得る
ことができる。
ことができる。
【0030】(1)ユーザプログラムの実行アドレスの
範囲を示す情報を得るため、エミュレーションアドレス
の上位を保存するための上位アドレス保存ラッチ回路7
と、下位アドレス保存ラッチ回路8とが設けられ、カバ
レジ解析において上位アドレス保存ラッチ回路7と下位
アドレス保存ラッチ回路8との保持情報を利用すること
により、カバレジメモリ40の無駄なアドレス内容検索
が不要とされ、それによってカバレジ解析時間の短縮化
が可能とされる。
範囲を示す情報を得るため、エミュレーションアドレス
の上位を保存するための上位アドレス保存ラッチ回路7
と、下位アドレス保存ラッチ回路8とが設けられ、カバ
レジ解析において上位アドレス保存ラッチ回路7と下位
アドレス保存ラッチ回路8との保持情報を利用すること
により、カバレジメモリ40の無駄なアドレス内容検索
が不要とされ、それによってカバレジ解析時間の短縮化
が可能とされる。
【0031】(2)エミュレーションアドレスの上位を
保存するための上位アドレス保存ラッチ回路7と、下位
アドレス保存ラッチ回路8とを設けることは、ユーザプ
ログラムの実行アドレスの範囲を示す情報を容易に得る
ことができる。
保存するための上位アドレス保存ラッチ回路7と、下位
アドレス保存ラッチ回路8とを設けることは、ユーザプ
ログラムの実行アドレスの範囲を示す情報を容易に得る
ことができる。
【0032】(3)上位アドレス保存ラッチ回路7の後
段に、その出力と上記スレーブアドレスバス21Aのア
ドレスとを比較するための比較器44が配置され、この
比較結果に基づいて上位アドレス保存ラッチ回路7の保
持内容が更新されるように構成されることにより、上位
アドレス保存ラッチ回路7には、それまでの実行アドレ
スの最上位アドレスが的確に保持される。また、同様に
下位アドレス保存ラッチ回路8の後段に、その出力と上
記スレーブアドレスバス21Aのアドレスとを比較する
ための比較器43が配置され、この比較結果に基づいて
下位アドレス保存ラッチ回路8の保持内容が更新される
ように構成されることにより、下位アドレス保存ラッチ
回路8には、それまでの実行アドレスの最下位アドレス
が的確に保持される。
段に、その出力と上記スレーブアドレスバス21Aのア
ドレスとを比較するための比較器44が配置され、この
比較結果に基づいて上位アドレス保存ラッチ回路7の保
持内容が更新されるように構成されることにより、上位
アドレス保存ラッチ回路7には、それまでの実行アドレ
スの最上位アドレスが的確に保持される。また、同様に
下位アドレス保存ラッチ回路8の後段に、その出力と上
記スレーブアドレスバス21Aのアドレスとを比較する
ための比較器43が配置され、この比較結果に基づいて
下位アドレス保存ラッチ回路8の保持内容が更新される
ように構成されることにより、下位アドレス保存ラッチ
回路8には、それまでの実行アドレスの最下位アドレス
が的確に保持される。
【0033】以上本発明者によってなされた発明を実施
例に基づいて具体的に説明したが、本発明はそれに限定
されるものではなく、その要旨を逸脱しない範囲におい
て種々変更可能であることは言うまでもない。
例に基づいて具体的に説明したが、本発明はそれに限定
されるものではなく、その要旨を逸脱しない範囲におい
て種々変更可能であることは言うまでもない。
【0034】例えば、上記実施例では、上位アドレス保
存ラッチ回路7と下位アドレス保存ラッチ回路8とを含
むものについて説明したが、そのいずれか一方を省略す
るようにしても、従来のカバレジ解析に対して、ある程
度の時間短縮は可能とされる。また、上記実施例では、
ステップST12のアドレスセットにおいてSMCU1
1のワークレジスタに下位アドレス保存ラッチ回路8の
保持情報をセットするようにしたが、上位アドレス保存
ラッチ回路7の保持情報を上記ワークレジスタにセット
するようにしてもよい。その場合、ステップST16で
はセットアドレスのインクリメントではなく、セットア
ドレスのデクリメントを行うようにする。
存ラッチ回路7と下位アドレス保存ラッチ回路8とを含
むものについて説明したが、そのいずれか一方を省略す
るようにしても、従来のカバレジ解析に対して、ある程
度の時間短縮は可能とされる。また、上記実施例では、
ステップST12のアドレスセットにおいてSMCU1
1のワークレジスタに下位アドレス保存ラッチ回路8の
保持情報をセットするようにしたが、上位アドレス保存
ラッチ回路7の保持情報を上記ワークレジスタにセット
するようにしてもよい。その場合、ステップST16で
はセットアドレスのインクリメントではなく、セットア
ドレスのデクリメントを行うようにする。
【0035】以上の説明では主として本発明者によって
なされた発明をその背景となった利用分野であるインサ
ーキットエミュレータに適用した場合について説明した
が、本発明はそれに限定されるものではなく、ロジック
アナライザや、その他のデバックシステムに適用するこ
とができる。
なされた発明をその背景となった利用分野であるインサ
ーキットエミュレータに適用した場合について説明した
が、本発明はそれに限定されるものではなく、ロジック
アナライザや、その他のデバックシステムに適用するこ
とができる。
【0036】本発明は、少なくともカバレジトレースを
行うことを条件に適用することができる。
行うことを条件に適用することができる。
【0037】
【発明の効果】本願において開示される発明のうち代表
的なものによって得られる効果を簡単に説明すれば下記
の通りである。
的なものによって得られる効果を簡単に説明すれば下記
の通りである。
【0038】すなわち、ユーザプログラム実行アドレス
の範囲を示す情報を得ることにより、そのような情報に
基づいてカバレジ解析する限りにおいてカバレジメモリ
の無駄なアドレス内容検索が不要とされ、それによっ
て、カバレジ解析時間の短縮が可能とされる。
の範囲を示す情報を得ることにより、そのような情報に
基づいてカバレジ解析する限りにおいてカバレジメモリ
の無駄なアドレス内容検索が不要とされ、それによっ
て、カバレジ解析時間の短縮が可能とされる。
【図1】図1は本発明の一実施例に係るインサーキット
エミュレータにおける主要部の構成ブロック図である。
エミュレータにおける主要部の構成ブロック図である。
【図2】図2は上記インサーキットエミュレータを含む
マイクロコンピュータ開発用システムの構成ブロック図
である。
マイクロコンピュータ開発用システムの構成ブロック図
である。
【図3】図3は上記インサーキットエミュレータの構成
ブロック図である。
ブロック図である。
【図4】図4は従来装置におけるカバレジ解析処理手順
が示されるフローチャートである。
が示されるフローチャートである。
【図5】図5は上記インサーキットエミュレータにおけ
るカバレジ解析処理手順が示されるフローチャートであ
る。
るカバレジ解析処理手順が示されるフローチャートであ
る。
1 親計算機 2 インサーキットエミュレータ 3 マイクロプロセッサ応用機器 6 アドレス保存回路 7 上位アドレス保存ラッチ回路 8 下位アドレス保存ラッチ回路 11 SMCU 12 エミュレーション制御部 13 ブレーク制御部 14 リアルタイムトレース部 15 代行メモリ部 16 MMCU 17 シリアルインタフェース 18 インタフェース 21 スレーブバス 21A スレーブアドレスバス 21D スレーブアドレスバス 22 マスタバス 30 カバレジ回路 40 カバレジメモリ 43 比較器 44 比較器 45 データバスバッファ 50 カバレジトレース部
Claims (5)
- 【請求項1】 マイクロプロセッサによるユーザプログ
ラム実行アドレスをトレースし、そのトレース結果を解
析することによってカバレジ情報を得るためのカバレジ
方式において、ユーザプログラム実行アドレスの範囲を
示す情報を収集するステップと、このステップにおいて
収集された情報に基づきユーザプログラム実行アドレス
範囲についてのカバレジ解析を行うステップとを含むこ
とを特徴とするカバレジ方式。 - 【請求項2】 上記ユーザプログラム実行アドレスの範
囲を示す情報は、ユーザプログラム実行アドレスのうち
の最上位アドレス情報及び最下位アドレス情報とされる
請求項1記載のカバレジ方式。 - 【請求項3】 マイクロプロセッサによるユーザプログ
ラム実行アドレスをトレースするためのカバレジトレー
ス部を含むエミュレータにおいて、ユーザプログラム実
行アドレスの範囲を示す情報を保存するためのアドレス
保存回路を含むことを特徴とするエミュレータ。 - 【請求項4】 上記アドレス保存回路は、ユーザプログ
ラム実行アドレスのうちの最上位アドレス情報を保存す
るための上位アドレス保存ラッチ回路と、ユーザプログ
ラム実行アドレスのうちの最下位アドレス情報を保存す
るための下位アドレス保存ラッチ回路とを含む請求項3
記載のエミュレータ。 - 【請求項5】 上位アドレス保存ラッチ回路の保存内容
とユーザプログラム実行アドレスとを比較し、その比較
結果に基づいて当該上位アドレス保存ラッチ回路の保存
内容を更新するための第1比較器と、下位アドレス保存
ラッチ回路の保存内容とユーザプログラム実行アドレス
とを比較し、その比較結果に基づいて当該下位アドレス
保存ラッチ回路の保存内容を更新するための第2比較器
とを含む請求項4記載のエミュレータ。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3261159A JPH0573358A (ja) | 1991-09-12 | 1991-09-12 | カバレジ方式、及びエミユレータ |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3261159A JPH0573358A (ja) | 1991-09-12 | 1991-09-12 | カバレジ方式、及びエミユレータ |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0573358A true JPH0573358A (ja) | 1993-03-26 |
Family
ID=17357936
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3261159A Withdrawn JPH0573358A (ja) | 1991-09-12 | 1991-09-12 | カバレジ方式、及びエミユレータ |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0573358A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH11120030A (ja) * | 1997-10-21 | 1999-04-30 | Toshiba Corp | プログラムのテスト装置及び方法並びにプログラムのテスト用ソフトウェアを記録した記録媒体 |
-
1991
- 1991-09-12 JP JP3261159A patent/JPH0573358A/ja not_active Withdrawn
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH11120030A (ja) * | 1997-10-21 | 1999-04-30 | Toshiba Corp | プログラムのテスト装置及び方法並びにプログラムのテスト用ソフトウェアを記録した記録媒体 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4094724B2 (ja) | ソフトウェアをデバッグする際に例外を識別するための装置および方法 | |
| KR20050020693A (ko) | 프로그램 처리 장치 | |
| US20060075310A1 (en) | Microcomputer and trace control method capable of tracing desired task | |
| US20030191624A1 (en) | Debug function built-in type microcomputer | |
| JP2005070950A (ja) | プログラム処理装置 | |
| US20050086454A1 (en) | System and methods for providing a debug function built-in type microcomputer | |
| JPH0573358A (ja) | カバレジ方式、及びエミユレータ | |
| US5903719A (en) | Emulator apparatus and emulation method for efficiently analyzing program faults | |
| CN116737078A (zh) | 一种快速闪存读写系统、方法、设备及介质 | |
| JPH1083318A (ja) | 電子回路解析装置 | |
| JP3775462B2 (ja) | デバッグシステム及び情報記憶媒体 | |
| JPS60262251A (ja) | マイクロプロセツサ開発支援装置 | |
| JPH0573348A (ja) | エミユレータ、及びシステム開発装置 | |
| JP3741187B2 (ja) | デバッグシステム及び情報記憶媒体 | |
| JPH0619736A (ja) | エミュレータ | |
| JPH07219808A (ja) | エミュレータのトレース方法およびエミュレータ | |
| JP2742306B2 (ja) | エミュレータ | |
| JPH0465729A (ja) | シンボリック・デバッガ | |
| JPS61163445A (ja) | コンピユ−タの開発支援システム | |
| JPH10187480A (ja) | エミュレータ | |
| JPH08147187A (ja) | エミュレータ | |
| JPH07160525A (ja) | エミュレータ | |
| JPH01306933A (ja) | デバッグ装置 | |
| JPH05173830A (ja) | 異常動作検出方法、及びエミュレータ | |
| JPH11167501A (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: 19981203 |