JPH1173344A - エミュレータ - Google Patents

エミュレータ

Info

Publication number
JPH1173344A
JPH1173344A JP9234677A JP23467797A JPH1173344A JP H1173344 A JPH1173344 A JP H1173344A JP 9234677 A JP9234677 A JP 9234677A JP 23467797 A JP23467797 A JP 23467797A JP H1173344 A JPH1173344 A JP H1173344A
Authority
JP
Japan
Prior art keywords
loop
signal
trace
status
trace memory
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
JP9234677A
Other languages
English (en)
Inventor
Hideo Onda
秀夫 恩田
Atsuyoshi Ito
淳悦 伊藤
Giichi Aoto
義一 青砥
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 Microcomputer System Ltd
Hitachi Ltd
Original Assignee
Hitachi Microcomputer System Ltd
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 Microcomputer System Ltd, Hitachi Ltd filed Critical Hitachi Microcomputer System Ltd
Priority to JP9234677A priority Critical patent/JPH1173344A/ja
Publication of JPH1173344A publication Critical patent/JPH1173344A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

(57)【要約】 【課題】 トレースメモリの使用効率を向上させるため
の技術を提供することにある。 【解決手段】 ループ命令の実行が繰り返される期間を
示す第1ステータス信号、及び上記ループ命令が繰り返
し実行される毎に第2ステータス信号を形成するステー
タス形成手段(20A)と、第1ステータス信号及び上
記第2ステータス信号に基づいて、第1回目のループ終
了から最後のループ終了までの間、トレースメモリ(7
0)へのトレースを禁止するためのトレース制御手段
(50,60)とを設け、第1回目のループ終了から最
後のループ終了までの間、トレースメモリへのトレース
を禁止することで、ループ命令により何度も繰り返され
る演算処理実行結果がトレースメモリに書き込まれるの
を回避して、トレースメモリの使用効率の向上を図る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、エミュレーション
技術、さらにはソフトウェアデバッグ対象とされるター
ゲットプログラム(ユーザプログラム)を、ターゲット
コンピュータと同等のエミュレーションマイクロコンピ
ュータに実行させることにより、ユーザシステム上で動
作するソフトウェアの開発支援を可能とするエミュレー
タに関する。
【0002】
【従来の技術】マイクロコンピュータ応用機器の開発に
おいて、その応用システムのデバッグやそのシステムの
詳細な評価を行うため、インサーキットエミュレータが
使用されている。インサーキットエミュレータは、開発
中のユーザシステムに接続され、そのユーザシステムに
含まれるマイクロコンピュータ(ターゲットコンピュー
タ)の機能を代行する一方でデバッガとしての機能をも
ち、詳細なシステムデバッグを支援する。かかるインサ
ーキットエミュレータは、その本体から延長されたケー
ブルの先端が、ターゲットコンピュータ用ソケットなど
の接栓を介してユーザシステムに結合可能とされ、さら
に、エミュレーション実行中に各種データやステータス
信号などを実時間でサンプリングし、それをトレースメ
モリに格納するトレース機能などの各種デバッグ機能を
備える。
【0003】尚、エミュレータについて記載された文献
の例としては、1989年6月20日に電波新聞社から
発行された「マイコン開発のすべて(第78頁から第9
5頁)」がある。
【0004】
【発明が解決しようとする課題】ところで、例えばDS
P(ディジタル・シグナル・プロセッサ)が内蔵された
マイクロコンピュータにおいては、積和演算を高速に繰
り返すためのループ(Loop)命令を持っている。そ
のようなマイクロコンピュータで実行されるユーザプロ
グラムのデバッグを従来のエミュレータで行うと、トレ
ースメモリが上記ループ命令の実行結果で埋め尽くさせ
れてしまい、そのトレース結果からユーザプログラム全
体の実行結果を把握するのが困難になる。つまり、ルー
プ命令の実行結果が膨大なデータ量となってしまい、エ
ミュレータに搭載されるトレースメモリの記憶容量との
関係でループ命令以外の命令の実行結果を十分にトレー
スすることができなくなる。このため、ユーザはエミュ
レータによるシステムデバッグにおいて、トレースメモ
リの容量を意識していなければならない。また、ユーザ
プログラムにループ命令が含まれる場合には、ループ命
令のところで一旦ブレークしてからユーザプログラムを
再実行させることにより、トレースメモリがループ命令
の実行結果で埋め尽くさせるのを回避するなどの工夫を
余儀なくされた。
【0005】本発明の目的は、トレースメモリを効率よ
く使うための技術を提供することにある。
【0006】本発明の前記並びにその他の目的と新規な
特徴は本明細書の記述及び添付図面から明らかになるで
あろう。
【0007】
【課題を解決するための手段】本願において開示される
発明のうち代表的なものの概要を簡単に説明すれば下記
の通りである。
【0008】すなわち、エミュレーションマイクロコン
ピュータによってループ命令の実行が繰り返される期間
を示す第1ステータス信号、及び上記ループ命令が繰り
返し実行される毎に第2ステータス信号を形成するステ
ータス形成手段(20A)と、上記エミュレーションマ
イクロコンピュータによるユーザプログラム実行情報を
トレース可能なトレースメモリ(70)と、上記第1ス
テータス信号及び上記第2ステータス信号に基づいて、
第1回目のループ終了から最後のループ終了までの間、
上記トレースメモリへのトレースを禁止するためのトレ
ース制御手段(50,60)とを含んでエミュレータを
構成する。
【0009】上記した手段によれば、トレース制御手段
は、第1回目のループ終了から最後のループ終了までの
間、上記トレースメモリへのトレースを禁止し、このこ
とが、ユーザプログラム全体の処理をトレース結果で確
認する場合に、ループ命令により何度も繰り返される演
算処理実行結果がトレースメモリに書き込まれるのを回
避して、トレースメモリの使用効率の向上を達成する。
【0010】このとき、上記第1ステータス信号及び上
記第2ステータス信号を監視するステータス監視回路
(50)と、上記ステータス監視回路の出力信号に基づ
いて、第1回目のループ終了から最後のループ終了まで
の間、上記トレースメモリへのトレースを禁止するため
のトレース制御部(60)とを含んで上記トレース制御
手段を容易に形成することができる。
【0011】また、上記トレース制御部は、上記トレー
スメモリに供給されるアドレス信号を生成するためのア
ドレスカウンタ(62)と、上記トレースメモリの選択
信号及び書き込み動作指示信号を形成するCSWE制御
回路(63)と、上記ステータス監視回路の出力信号に
基づいて、第1回目のループ終了から最後のループ終了
までの間、上記アドレスカウンタのカウント動作を停止
させるとともに、上記CSWE制御回路からの上記トレ
ースメモリの選択信号及び書き込み動作指示信号をディ
スイネーブル状態にするトレースマスク制御回路(6
1)とを含んで容易に構成することができる。
【0012】
【発明の実施の形態】図1には本発明にかかるインサー
キットエミュレータが示される。
【0013】エミュレーションマイクロコンピュータ2
0が設けられ、このエミュレーションマイクロコンピュ
ータ20は、CPU(中央処理装置)、DSP(ディジ
タル・シグナル・プロセッサ)、さらには積和演算命令
などのループ(Loop)命令実行期間中にステータス
信号ST1*,ST2*(*はローアクティブ又は信号
反転を意味する)を形成するためのステータス形成手段
20Aや、当該ステータス信号を外部出力するための端
子を備える。例えばステータス信号ST1*は、エミュ
レーションマイクロコンピュータ20が積和演算命令な
どのループ命令実行期間中である場合に、ローレベルに
アサートされ、ステータス信号ST2*は、ループ処理
が繰り返される毎にローレベルにアサートされる。エミ
ュレーションマイクロコンピュータ20からのステータ
ス信号ST1*,ST2*はエミュレーションマイクロ
コンピュータ20の外部に配置されたステータス監視回
路50に伝達される。ステータス監視回路50では、エ
ミュレーションマイクロコンピュータ20からのステー
タス信号ST1*,ST2*の論理に基づいて、第1回
目のループ終了時にローレベルにアサートされるループ
信号Loop*、及び第1ステータス信号ST1*、及
び第2ステータス信号ST2*のネゲートタイミングに
同期してローレベルにアサートされるエンド信号End
*が出力される。このループ信号Loop*、及びエン
ド信号End*は、後段のトレース制御部60に伝達さ
れる。
【0014】マスタマイクロコンピュータ10が設けら
れ、このマスタマイクロコンピュータ10は、データ入
出力端子やアドレス信号出力端子、制御信号出力端子を
有する。データ入出力端子はデータバス82に接続さ
れ、さらにこのデータバス82はトライステート回路3
0を介してトレースメモリ70に結合される。また、ア
ドレス信号出力端子から出力されるアドレス信号や、制
御信号出力端子から出力されるアクセス信号ACC*が
トレース制御部60に伝達されるようになっている。
【0015】トレース制御部60は、特に制限されない
が、トレースマスク制御回路61、アドレスカウンタ6
2、セレクタ64、CSWE制御回路63を含んで成
る。
【0016】トレースマスク制御回路61は、上記ステ
ータス監視回路50からのループ信号Loop*、及び
エンド信号End*に基づいて上記トレースメモリ70
への情報書込みを部分的にマスクするための制御を行
う。具体的には、ループ命令の実行結果が膨大なデータ
量となってしまい、エミュレータに搭載されるトレース
メモリの記憶容量との関係でループ命令以外の命令の実
行結果を十分にトレースすることができなくなるのを排
除するため、例えば図2に示されるように、ステータス
信号ST1*がローレベルにアサートされている期間に
おいて、第1回目のループ終了によりエミュレーション
バスのトレースを中断し、その後、最後のループ終了と
同時にトレースを再開するように制御する。
【0017】CSWE制御回路63は、トレースマスク
制御回路61からのトレース指示信号TR*、又はマス
タマイクロコンピュータ10からのアクセス信号ACC
*に従ってトレースメモリに入力されるチップセレクト
信号CS*、及びライトイネーブル信号WE*の論理を
決定する。例えば、エンド信号がイネーブル状態のと
き、アドレスカウンタ62のカウント動作が行われ、ま
たこのとき、CSWE制御回路63に対してライトイネ
ーブル信号WE*、チップセレクト信号CS*をイネー
ブルにするように指示する。エミュレーションが行われ
ている状態、つまり、ユーザプログラムが実行されてい
る場合、セレクタ64はアドレスカウンタ62の出力ア
ドレスを選択してそれをトレースメモリ70へ伝達す
る。ユーザプログラムが実行されていない場合にはセレ
クタ64によりマスタマイクロコンピュータ10から出
力されたアドレス信号を選択してそれをトレースメモリ
70に伝達する。
【0018】例えばループ命令以外の命令がエミュレー
ションマイクロコンピュータ20で実行されている場
合、第1ステータス信号ST1*、及び第2ステータス
信号ST2*がハイレベルとされ、ステータス監視回路
50から出力されるループ信号Loop*、及びエンド
信号End*がハイレベル状態とされるから、トレース
マスク制御回路61は、カウンタ停止信号ST*をハイ
レベルにネゲートすることでアドレスカウンタ62のイ
ンクリメント動作を許可し、トレース指示信号TR*を
ローレベルにアサートすることでトレースメモリ70へ
のトレースを許可する。アドレスカウンタ62のインク
リメント動作により順次生成されるアドレス信号ADR
は、セレクタ64を介してトレースメモリ70のアドレ
ス入力端子に伝達される。トレース指示信号TR*がロ
ーレベルにアサートされると、CSWE制御回路63
は、チップセレクト信号CS*、及びライトイネーブル
信号WE*を、エミュレーションバス91のバスサイク
ルに同期してローレベルにアサートして、トレースメモ
リ70を書き込み状態とする。それにより、エミュレー
ションバス91の状態がそのバスサイクルに同期してト
レースメモリ70に書き込まれる。エミュレーションマ
イクロコンピュータ20によってループ命令が実行さ
れ、第1ステータス信号ST1がローレベルにアサート
され、第1回目のループ終了によって第2ステータス信
号ST2がローレベルにアサートされると、ステータス
監視回路50からのループ信号Loop*がローレベル
にアサートされ、それを受けてトレースマスク制御回路
61は、カウンタ停止信号ST*をローレベルにアサー
トしてアドレスカウンタ62のインクリメント動作を停
止させるとともに、トレース指示信号TR*をハイレベ
ルにネゲートして、CSWE制御回路63によるチップ
セレクト信号CS*,ライトイネーブル信号WE*のア
サートを禁止する。これにより、トレースメモリ70へ
のトレースは禁止される。そして、最後のループ処理が
終了した時点で(ループ処理から脱した時点で)第1ス
テータス信号ST1、第2ステータス信号ST2が同時
にハイレベルにネゲートされ、それを受けてステータス
監視回路50によりエンド信号End*がローレベルに
アサートされることで、トレースマスク制御回路61
は、カウンタ停止信号ST*をハイレベルにネゲートす
るとともに、トレース指示信号TR*をローレベルにア
サートする。それにより、アドレスカウンタ62のイン
クリメント動作が再開され、また、CSWE制御回路6
3によりチップセレクト信号CS*,ライトイネーブル
信号WE*がエミュレーションバス91のバスサイクル
に同期してローレベルにアサートされることで、トレー
スメモリ70へのトレースが再開される。
【0019】トレースメモリ70内のトレース情報は、
マスタマイクロコンピュータ10によって読み出され
る。すなわち、マスタマイクロコンピュータ10からの
アドレス信号がセレクタ64を介してトレースメモリ7
0に伝達され、また、マスタマイクロコンピュータ10
からのアクセス信号ACC*がローレベルにアサートさ
れて、CSWE制御回路63によりチップセレクト信号
CS*、及び図示しないリード信号がアサートされ、ラ
イトイネーブル信号WE*がネゲートされることによ
り、トレースメモリ70内のトレース情報がトライステ
ート回路30及びデータバス82を介してマスタマイク
ロコンピュータ10へ伝達される。
【0020】上記の構成例によれば以下の作用効果が得
られる。
【0021】ステータス監視回路50は、第1回目のル
ープ終了時にループ信号Loop*をイネーブルにす
る。トレースマスク制御回路61では、ループ信号Lo
op*がイネーブルになると、アドレスカウンタ62に
対し、インクリメント動作を停止するように制御すると
ともに、CSWE回路63に対してチップセレクト信号
CS*、及びライトイネーブル信号WE*をハイレベル
にネゲートするように指示する。そのような制御によ
り、エミュレーションマイクロコンピュータ20による
ループ命令実行中において、第1回目のループ演算の際
のエミュレーションバス91の状態はトレースメモリ7
0にトレースされるが、第2回目以降のループ演算の際
のエミュレーションバス91の状態はトレースされない
(トレースディスイネーブル)。ループ命令実行終了サ
イクルにおいて、エミュレーションマイクロコンピュー
タ20からの第1ステータス信号ST1がハイレベルに
ネゲートされると、ステータス監視回路50によってそ
れが検出されてエンド信号End*がイネーブルとされ
る。それを受けてトレースマスク制御回路61ではアド
レスカウンタ62に対してカウント動作再開を指示す
る。またそれと同時にCSWE制御回路63に対してラ
イトイネーブル信号WE*、及びチップセレクト信号C
S*をローレベルにアサートするように指示する。それ
により、エミュレーションマイクロコンピュータ20が
ループ命令の実行を終了するのと同時に、トレースメモ
リ70へのトレースが再開される(トレースイネーブ
ル)。
【0022】このように、第1回目のループ終了から最
後のループ終了までの間、上記トレースメモリへのトレ
ースが禁止されることにより、ユーザプログラム全体の
処理をトレース結果で確認する場合に、ループ命令によ
り何度も繰り返される演算処理実行結果がトレースメモ
リ70に書き込まれるのが回避されるから、トレースメ
モリ70の使用効率の向上を図ることができる。
【0023】以上本発明者によってなされた発明を実施
形態に基づいて具体的に説明したが、本発明はそれに限
定されるものではなく、その要旨を逸脱しない範囲にお
いて種々変更可能であることは言うまでもない。
【0024】例えば図3に示されるように、エミュレー
ションバス91のアドレス信号をモニタするアドレスモ
ニタ回路95を設け、このアドレスモニタ回路95によ
り、第1ステータス信号ST1*、及び第2ステータス
信号ST2*を生成するようにしてもよい。すなわち、
ループ命令実行により繰り返し、処理する命令のアドレ
ス範囲(ループ実行位置)情報をマスタマイクロコンピ
ュータ10からアドレスモニタ回路95へ転送して登録
しておいて、それにより、アドレスモニタ回路95で
は、1回のループ実行をアドレス範囲の比較によって判
定し、図1の構成例でエミュレーションマイクロコンピ
ュータ20から出力された第1ステータス信号ST1
*、第2ステータス信号ST2*と同等の信号を形成す
る。この場合、エミュレーションマイクロコンピュータ
20内に、ステータス形成手段20Aを設ける必要はな
い。
【0025】以上の説明では主として本発明者によって
なされた発明をその背景となった利用分野であるインサ
ーキットエミュレータに適用した場合について説明した
が、本発明はそれに限定されるものではなく、各種エミ
ュレータに適用することがでいる。
【0026】本発明は、少なくともトレースメモリを含
むことを条件に適用することができる。
【0027】
【発明の効果】本願において開示される発明のうち代表
的なものによって得られる効果を簡単に説明すれば下記
の通りである。
【0028】すなわち、第1回目のループ終了から最後
のループ終了までの間、トレースメモリへのトレースが
禁止されることにより、ユーザプログラム全体の処理を
トレース結果で確認する場合に、ループ命令により何度
も繰り返される演算処理実行結果がトレースメモリに書
き込まれるのが回避されるから、トレースメモリの使用
効率の向上を図ることができる。
【図面の簡単な説明】
【図1】本発明にかかるインサーキットエミュレータの
構成例ブロック図である。
【図2】上記インサーキットエミュレータにおける主要
部の動作タイミング図である。
【図3】本発明にかかるインサーキットエミュレータに
おける主要部の別の構成例ブロック図である。
【符号の説明】
10 マスタマイクロコンピュータ 20 エミュレーションマイクロコンピュータ 50 ステータス監視回路 60 トレース制御部 61 トレースマスク制御回路 62 アドレスカウンタ 63 CSWE制御回路 64 セレクタ 70 トレースメモリ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 伊藤 淳悦 東京都小平市上水本町5丁目22番1号 株 式会社日立マイコンシステム内 (72)発明者 青砥 義一 東京都小平市上水本町五丁目20番1号 株 式会社日立製作所半導体事業部内

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 エミュレーションマイクロコンピュータ
    によってループ命令の実行が繰り返される期間を示す第
    1ステータス信号、及び上記ループ命令が繰り返し実行
    される毎に第2ステータス信号を形成するステータス形
    成手段と、 上記エミュレーションマイクロコンピュータによるユー
    ザプログラム実行情報をトレース可能なトレースメモリ
    と、 上記第1ステータス信号及び上記第2ステータス信号に
    基づいて、第1回目のループ終了から最後のループ終了
    までの間、上記トレースメモリへのトレースを禁止する
    ためのトレース制御手段と、 を含むことを特徴とするエミュレータ。
  2. 【請求項2】 ループ命令の実行が繰り返される期間を
    示す第1ステータス信号を外部出力するための第1端子
    と、上記ループ命令が繰り返し実行される毎に第2ステ
    ータス信号を出力するための第2端子とを備えたエミュ
    レーション用マイクロコンピュータと、 上記エミュレーションマイクロコンピュータの実行情報
    をトレース可能なトレースメモリと、 上記第1ステータス信号及び上記第2ステータス信号を
    監視するステータス監視回路と、 上記ステータス監視回路の出力信号に基づいて、第1回
    目のループ終了から最後のループ終了までの間、上記ト
    レースメモリへのトレースを禁止するためのトレース制
    御部と、 を含むことを特徴とするエミュレータ。
  3. 【請求項3】 上記トレース制御部は、上記トレースメ
    モリに供給されるアドレス信号を生成するためのアドレ
    スカウンタと、 上記トレースメモリの選択信号及び書き込み動作指示信
    号を形成するCSWE制御回路と、 上記ステータス監視回路の出力信号に基づいて、第1回
    目のループ終了から最後のループ終了までの間、上記ア
    ドレスカウンタのカウント動作を停止させるとともに、
    上記CSWE制御回路からの上記トレースメモリの選択
    信号及び書き込み動作指示信号をディスイネーブル状態
    にするトレースマスク制御回路と、 を含む請求項1又は2記載のエミュレータ。
JP9234677A 1997-08-29 1997-08-29 エミュレータ Withdrawn JPH1173344A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9234677A JPH1173344A (ja) 1997-08-29 1997-08-29 エミュレータ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9234677A JPH1173344A (ja) 1997-08-29 1997-08-29 エミュレータ

Publications (1)

Publication Number Publication Date
JPH1173344A true JPH1173344A (ja) 1999-03-16

Family

ID=16974738

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9234677A Withdrawn JPH1173344A (ja) 1997-08-29 1997-08-29 エミュレータ

Country Status (1)

Country Link
JP (1) JPH1173344A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012190137A (ja) * 2011-03-09 2012-10-04 Lapis Semiconductor Co Ltd エミュレータ装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012190137A (ja) * 2011-03-09 2012-10-04 Lapis Semiconductor Co Ltd エミュレータ装置

Similar Documents

Publication Publication Date Title
JP3105223B2 (ja) マイクロコンピュータ,マイクロプロセッサおよびコア・プロセッサ集積回路用デバッグ周辺装置
JPH06314213A (ja) デバッグ装置
JPH011039A (ja) インサーキット・エミュレータ
JP2000112783A (ja) プログラム検査方法、プログラム検査装置及びプログラム検査プログラムを記憶した記憶媒体
JPH0728670A (ja) 情報処理装置
JPH1173344A (ja) エミュレータ
JP5312918B2 (ja) タイムスタンプ取得回路及びタイムスタンプ取得方法
JPS62197831A (ja) デ−タ処理装置
US7130950B1 (en) Providing access to memory configuration information in a computer
JP3545480B2 (ja) エミュレータ
JP2632891B2 (ja) システム開発装置
JP3323341B2 (ja) エミュレーション用プロセッサおよびそれを搭載したエミュレータ
JP2520158B2 (ja) ディジタルシグナルプロセッサのデバッグ方式
JP2001084161A (ja) データ処理装置
JPH0713806A (ja) マイクロプロセッサのバストレース装置
KR100658485B1 (ko) 마이크로프로세서 개발시스템
JP2705359B2 (ja) トレース回路
JPH0652013A (ja) トレース回路
JP2004348635A (ja) プログラム開発方法
JPH0793180A (ja) マイクロプロセッサ
JPS59202546A (ja) デバツグ装置
JPH02109146A (ja) プログラムデバツグ装置
JPS63238636A (ja) ブレ−クポイント方式
JPS59202548A (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: 20041102