JP2001092692A - 時間測定回路及び時間測定方法 - Google Patents

時間測定回路及び時間測定方法

Info

Publication number
JP2001092692A
JP2001092692A JP26356899A JP26356899A JP2001092692A JP 2001092692 A JP2001092692 A JP 2001092692A JP 26356899 A JP26356899 A JP 26356899A JP 26356899 A JP26356899 A JP 26356899A JP 2001092692 A JP2001092692 A JP 2001092692A
Authority
JP
Japan
Prior art keywords
time
execution
target program
execution time
unit
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.)
Pending
Application number
JP26356899A
Other languages
English (en)
Inventor
Osamu Honda
治 本田
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP26356899A priority Critical patent/JP2001092692A/ja
Publication of JP2001092692A publication Critical patent/JP2001092692A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【課題】 ターゲットプログラムの実行時間をフレーム
毎に確認することが可能な時間測定回路を提供する。 【解決手段】 エミュレーション対象であるターゲット
プログラムの実行時間を測定する、インサーキット・エ
ミュレータが備える時間測定回路であって、エミュレー
ション中のターゲットプログラムの実行履歴を保持する
トレース部と、所定の周期を有する基準クロックをクリ
ア指示されるまでカウントアップすることで実行時間を
測定する時間カウンター部と、時間カウンター部による
カウントを所定のフレーム毎にクリアさせ、フレーム単
位で保持されるターゲットプログラムの実行履歴である
トレースデータに対応して、フレーム毎に測定された実
行時間をトレース部に保持させる同期生成部とを有する
構成とする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はインサーキット・エ
ミュレータが備える時間測定回路に関し、特にエミュレ
ーション対象であるターゲットプログラムの実行時間を
フレーム単位で測定可能な時間測定回路及び時間測定方
法に関する。
【0002】
【従来の技術】インサーキット・エミュレータとはマイ
クロコンピュータ用のプログラムをデバッグするための
装置である。インサーキット・エミュレータは、一般
に、開発中のプログラムを実行する機能(エミュレーシ
ョン機能)、エミュレーション中のプログラムの実行履
歴を保持する機能(トレース機能)、エミュレーション
を一時中断させる機能(ブレーク機能)、マイクロコン
ピュータの内部メモリをダンプする機能(メモリダンプ
機能)、プログラムの実行時間を測定する機能(パフォ
ーマンス機能)などを有している。
【0003】以下では、上記パフォーマンス機能を実現
する回路である時間測定回路の一例について説明する。
【0004】図3は従来の時間測定回路の構成を示すブ
ロック図である。
【0005】図3において、従来の時間測定回路は、エ
ミュレーション対象であるターゲットプログラムの実行
結果を取り込むラッチ回路、及びトレースデータを保持
するためのメモリからなるトレース部303と、トレー
スデータをトレース部303に書き込むためのタイミン
グを制御する同期生成部302と、スーパーバイザ(不
図示)に設定された任意のI/Oアドレスをデコード
し、該アドレスに対応する命令やデータを出力するSV
制御部301とを有する構成である。
【0006】ここで、スーパーバイザとは、インサーキ
ット・エミュレータ全体の制御を行う装置であり、CP
U、メモリ、外部インタフェース回路などで構成されて
いる。また、トレースデータとは、エミュレーション対
象であるターゲットプログラムにしたがってCPUが実
行したアドレスや処理データ、ステータス(リード/ラ
イト)データ等を含む履歴データである。インサーキッ
トエミュレータが有するスーパーバイザには、プログラ
ム設計者がアクセスするコンピュータからターゲットプ
ログラムの実行開始アドレスや実行中断アドレス(ブレ
ークポイント)等の所望の情報が設定される。なお、W
PULS信号は、トレースデータを任意の単位(フレー
ムと呼ばれる)でトレース部303に書き込むためのス
トローブパルスであり、ターゲットプログラムを実行す
るエミュレーションCPUからトレースデータと共に一
定の周期で送信される。また、SV制御部301から出
力されるINIT信号は、スーパーバイザから発せられ
る強制リセット信号である。
【0007】このような構成において、従来の時間測定
回路では、エミュレーション中のターゲットプログラム
のアドレス/データをラッチするサイクルが、WPUL
S信号毎に同期生成部302によって生成され、同期生
成部302から出力されるアドレス書き込み信号のタイ
ミングでトレースデータがトレース部303に格納され
る。
【0008】このとき、ターゲットプログラムの実行時
間は、設計者によって指定された任意の開始アドレスか
らブレークポイントまでのイベント単位で測定され、イ
ベント内で発生したWPULS信号のパルスをカウント
することで算出されていた。
【0009】
【発明が解決しようとする課題】近年のコンピュータ
は、そのハードウェア性能の向上に伴ってより複雑な処
理が実行可能になり、プログラムもより複雑に、かつ大
規模になってきている。したがって、インサーキット・
エミュレータには、デバッグ作業をより効率的に行える
機能が望まれている。このような機能として、例えば、
ターゲットプログラムの実行時間をフレーム毎に測定
し、その結果をフレーム単位で表示する機能がある。
【0010】しかしながら上記したような従来の時間測
定回路では、フレーム毎にターゲットプログラムの実行
時間を測定する回路が無いため、実行時間をフレーム単
位で確認することができなかった。
【0011】本発明は上記したような従来の技術が有す
る問題点を解決するためになされたものであり、ターゲ
ットプログラムの実行時間をフレーム単位で確認するこ
とが可能な時間測定回路を提供することを目的とする。
【0012】
【課題を解決するための手段】上記目的を達成するため
本発明の時間測定回路は、エミュレーション対象である
ターゲットプログラムの実行時間を測定する、インサー
キット・エミュレータが備える時間測定回路であって、
エミュレーション中の前記ターゲットプログラムの実行
履歴を保持するトレース部と、所定の周期を有する基準
クロックをクリア指示されるまでカウントアップするこ
とで前記実行時間を測定する時間カウンター部と、前記
時間カウンター部によるカウントを所定のフレーム毎に
クリアさせ、前記フレーム単位で保持される前記ターゲ
ットプログラムの実行履歴であるトレースデータに対応
して、前記フレーム毎に測定された前記実行時間を前記
トレース部に保持させる同期生成部と、を有する構成で
ある。
【0013】このとき、前記同期生成部は、前記ターゲ
ットプログラムの任意の実行開始アドレスから実行中止
アドレスまでの実行時間を測定する場合に、前記実行中
止アドレスに対応する処理の終了と伴に前記時間カウン
ター部によるカウントをクリアさせ、該実行時間の測定
結果を前記トレース部に保持させてもよい。
【0014】また、前記基準クロックは、前記ターゲッ
トプログラムの最小命令実行時間が測定可能な周期に設
定されることが望ましく、前記実行時間の長さに応じて
変更可能に設定されることが望ましい。
【0015】一方、本発明の時間測定方法は、インサー
キット・エミュレータのエミュレーション対象であるタ
ーゲットプログラムの実行時間を測定するための時間測
定方法であって、所定のフレーム毎にクリアされるま
で、所定の周期を有する基準クロックをカウントアップ
することで前記フレーム毎の前記実行時間を測定し、前
記フレーム毎に測定された前記実行時間を、前記フレー
ム単位で保持される前記ターゲットプログラムの実行履
歴であるトレースデータに対応してメモリに保持させる
方法である。
【0016】ここで、前記ターゲットプログラムの任意
の実行開始アドレスから実行中止アドレスまでの実行時
間を測定する場合は、前記実行中止アドレスに対応する
処理の終了に伴ってクリアされるまで、前記基準クロッ
クのカウントアップすることで該実行時間を測定し、該
実行時間の測定結果をメモリに保持させてもよい。
【0017】また、前記基準クロックは、前記ターゲッ
トプログラムの最小命令実行時間が測定可能な周期に設
定されることが望ましく、前記実行時間の長さに応じて
変更可能に設定されることが望ましい。
【0018】上記のような時間測定回路及び時間測定方
法では、所定の周期を有する基準クロックをクリア指示
されるまでカウントアップすることで実行時間を測定す
る時間カウンター部と、時間カウンター部によるカウン
トを所定のフレーム毎にクリアさせ、フレーム単位で保
持されるターゲットプログラムの実行履歴であるトレー
スデータに対応して、フレーム毎に測定された実行時間
をトレース部に保持させる同期生成部とを有すること
で、フレーム毎に測定されたターゲットプログラムの実
行時間をトレースデータの一部として確認することがで
きる。
【0019】
【発明の実施の形態】次に本発明について図面を参照し
て説明する。
【0020】図1は本発明の時間測定回路の一構成例を
示すブロック図である。
【0021】図1において、本実施形態の時間測定回路
は、エミュレーション対象であるターゲットプログラム
の実行結果を取り込むラッチ回路、及びトレースデータ
を保持するためのメモリからなるトレース部104と、
スーパーバイザ(不図示)に設定された任意のI/Oア
ドレスをデコードし、該アドレスに対応する命令やデー
タを出力するSV制御部102と、所定の周期を有する
基準クロックをカウントアップし、実行時間の測定結果
(TCNT信号)をトレース部104に出力する時間カ
ウンター部101と、トレースデータをトレース部10
4に書き込むためのタイミングを制御すると共に、時間
カウンター部101のカウント値をクリアするためのC
LR信号を出力する同期生成部103とを有する構成で
ある。
【0022】SV制御部102から同期生成部103に
出力されるMODE信号は、WPULS信号毎に時間カ
ウンター部101のカウント値をクリアするためのモー
ド(区間モード)と、任意のイベントのブレークポイン
トに対応する処理が終了したときに時間カウンター部1
01のカウント値をクリアするためのモード(積算モー
ド)とを切替えるための切替え信号である。また、SV
制御部102から出力されるINIT信号は、スーパー
バイザから発せられる強制リセット信号である。
【0023】基準クロックは、エミュレーションCPU
を動作させるためのシステムクロックとは非同期のクロ
ックであり、例えば、インサーキット・エミュレータ内
の回路を動作させるためのクロックを分周した分周クロ
ックが用いられる。また、基準クロックの周期は、ター
ゲットプログラムの最小命令実行時間が測定可能(カウ
ント可能)な値に設定され、その周期はスーパーバイザ
によって変更可能に設定される。
【0024】このような構成において、本実施形態の時
間測定回路は、上記区間モードに設定されると、時間カ
ウンター部101によって基準クロックをカウントアッ
プし、WPULS信号の送出タイミングで時間カウンタ
ー部101によるカウント値をクリアする。
【0025】時間カウンター部101によってカウント
アップされた時間(基準クロックの周期×カウント値)
は、実行時間の測定結果(TCNT信号)としてトレー
ス部104に出力され、1フレーム毎の実行時間がトレ
ース部104のメモリに格納される。
【0026】同期生成部103は、エミュレーションC
PUからのトレースデータの書き込みタイミングを決め
るアドレス書き込み信号をWPULS信号のタイミング
で生成し、トレース部104に出力する。また、時間カ
ウンター部101のカウントをクリアするためのCLR
信号をWPULS信号のタイミングで生成し、時間カウ
ンター部101に出力する。
【0027】したがって、時間カウンター部101から
出力されるTCNT信号とトレースデータとはトレース
部104のメモリに同期して格納される。このことによ
ってフレーム毎に測定されたターゲットプログラムの実
行時間をフレーム毎のトレースデータの一部として確認
することが可能になり、ターゲットプログラムの実行時
間をフレーム単位で確認することができる。
【0028】ところで、上記構成だけでは、WPULS
信号が送出される度に時間カウンター部101のカウン
タ値がクリアされるため、所望の実行開始アドレスから
ブレークポイントまでのイベント間の実行時間を測定す
る場合に、WPULS信号によるクリア時間が積算され
て、実行時間の測定値に誤差が生じる。特に、実行する
プログラムが長くなる程、WPULS信号毎にカウント
値をクリアすることによる誤差が大きくなってしまう。
【0029】そこで、本実施形態では、上記区間モード
とは別に、任意の実行開始アドレスからブレークポイン
トまで連続的に時間カウンター部101に基準クロック
をカウントアップさせる積算モードを設けている。
【0030】SV制御部102からのMODE信号によ
って積算モードに設定されると、同期生成部103は、
時間カウンター部101のカウント値をクリアするため
のCLR信号を、WPULS信号のタイミングではな
く、ブレークポイントに対応する処理が終了した時点で
生成し、時間カウンター部101に出力する。
【0031】このようにすることで、時間カウンター部
101のカウンタ値がフレーム毎にクリアされることが
なく、連続的にカウントされるため、任意のイベントの
実行時間を少ない誤差で求めることができる。したがっ
て、区間モード及び積算モードを適切に切り替えること
で、ターゲットプログラムの実行時間をより正確に求め
ることができる。
【0032】なお、ターゲットプログラムの実行開始ア
ドレスからブレークポイントまでの実行時間を測定する
場合、実行時間が長くなるときは測定時の分解能となる
基準クロックの周期を長くしてもよい。逆に、実行時間
が短くなる場合は最小命令実行時間が測定可能になるよ
うに基準クロックの周期を短くする必要がある。
【0033】上記説明では、基準クロックの周期をスー
パーバイザによって変更可能に設定できることを記載し
たが、例えば、特許第2718402号公報に記載され
た時間測定回路と同様の、時間カウンター部及び同期生
成部に与える基準クロックを実行時間に応じて最適な周
期に設定する分解能設定部205を有する構成にしても
よい(図2参照)。
【0034】このような分解能設定部205を設けるこ
とで、ターゲットプログラムの実行時間を測定する際
に、最適な分解能に決定する試行錯誤が不要になるた
め、効率の良いデバッグ作業を行うことができる。
【0035】
【発明の効果】本発明は以上説明したように構成されて
いるので、以下に記載する効果を奏する。
【0036】所定の周期を有する基準クロックをクリア
指示されるまでカウントアップすることで、実行時間を
測定する時間カウンター部と、時間カウンター部による
カウントを所定のフレーム毎にクリアさせ、フレーム単
位で保持されるターゲットプログラムの実行履歴である
トレースデータに対応して、フレーム毎に測定された実
行時間をトレース部に保持させる同期生成部とを有する
ことで、フレーム毎に測定されたターゲットプログラム
の実行時間をトレースデータの一部として確認すること
が可能になり、ターゲットプログラムの実行時間をフレ
ーム単位で確認することができる。
【0037】また、ターゲットプログラムの任意の実行
開始アドレスから実行中止アドレスまでの実行時間を測
定する場合に、同期生成部で実行中止アドレスに対応す
る処理の終了と伴に時間カウンター部によるカウントを
クリアさせ、該実行時間の測定結果をトレース部に保持
させることで、時間カウンター部によるカウント値がフ
レーム毎にクリアされることなく実行開始アドレスから
実行中止アドレスまで連続的にカウントされるため、実
行時間の測定誤差が低減する。
【図面の簡単な説明】
【図1】本発明の時間測定回路の一構成例を示すブロッ
ク図である。
【図2】本発明の時間測定回路の他の構成例を示すブロ
ック図である。
【図3】従来の時間測定回路の構成を示すブロック図で
ある。
【符号の説明】
101 時間カウンター部 102 SV制御部 103 同期生成部 104 トレース部 205 分解能設定部

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 エミュレーション対象であるターゲット
    プログラムの実行時間を測定する、インサーキット・エ
    ミュレータが備える時間測定回路であって、 エミュレーション中の前記ターゲットプログラムの実行
    履歴を保持するトレース部と、 所定の周期を有する基準クロックをクリア指示されるま
    でカウントアップすることで前記実行時間を測定する時
    間カウンター部と、 前記時間カウンター部によるカウントを所定のフレーム
    毎にクリアさせ、前記フレーム単位で保持される前記タ
    ーゲットプログラムの実行履歴であるトレースデータに
    対応して、前記フレーム毎に測定された前記実行時間を
    前記トレース部に保持させる同期生成部と、を有する時
    間測定回路。
  2. 【請求項2】 前記同期生成部は、 前記ターゲットプログラムの任意の実行開始アドレスか
    ら実行中断アドレスまでの実行時間を測定する場合に、 前記実行中断アドレスに対応する処理の終了と伴に前記
    時間カウンター部によるカウントをクリアさせ、該実行
    時間の測定結果を前記トレース部に保持させる請求項1
    記載の時間測定回路。
  3. 【請求項3】 前記基準クロックは、 前記ターゲットプログラムの最小命令実行時間が測定可
    能な周期に設定される請求項1または2記載の時間測定
    回路。
  4. 【請求項4】 前記基準クロックは、 前記実行時間の長さに応じて変更可能に設定される請求
    項3記載の時間測定回路。
  5. 【請求項5】 インサーキット・エミュレータのエミュ
    レーション対象であるターゲットプログラムの実行時間
    を測定するための時間測定方法であって、 所定のフレーム毎にクリアされるまで、所定の周期を有
    する基準クロックをカウントアップすることで前記フレ
    ーム毎の前記実行時間を測定し、 前記フレーム毎に測定された前記実行時間を、前記フレ
    ーム単位で保持される前記ターゲットプログラムの実行
    履歴であるトレースデータに対応してメモリに保持させ
    る時間測定方法。
  6. 【請求項6】 前記ターゲットプログラムの任意の実行
    開始アドレスから実行中断アドレスまでの実行時間を測
    定する場合は、 前記実行中断アドレスに対応する処理の終了に伴ってク
    リアされるまで、前記基準クロックのカウントアップす
    ることで該実行時間を測定し、 該実行時間の測定結果をメモリに保持させる請求項5記
    載の時間測定方法。
  7. 【請求項7】 前記基準クロックは、 前記ターゲットプログラムの最小命令実行時間が測定可
    能な周期に設定される請求項5または6記載の時間測定
    方法。
  8. 【請求項8】 前記基準クロックは、 前記実行時間の長さに応じて変更可能に設定される請求
    項7記載の時間測定方法。
JP26356899A 1999-09-17 1999-09-17 時間測定回路及び時間測定方法 Pending JP2001092692A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP26356899A JP2001092692A (ja) 1999-09-17 1999-09-17 時間測定回路及び時間測定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP26356899A JP2001092692A (ja) 1999-09-17 1999-09-17 時間測定回路及び時間測定方法

Publications (1)

Publication Number Publication Date
JP2001092692A true JP2001092692A (ja) 2001-04-06

Family

ID=17391366

Family Applications (1)

Application Number Title Priority Date Filing Date
JP26356899A Pending JP2001092692A (ja) 1999-09-17 1999-09-17 時間測定回路及び時間測定方法

Country Status (1)

Country Link
JP (1) JP2001092692A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6930960B2 (en) * 2002-03-27 2005-08-16 Hitachi, Ltd. Execution time measurement device in a control unit and an execution time measurement method
US7650537B2 (en) 2006-07-27 2010-01-19 Fujitsu Microelectronics Limited Inspection support apparatus and inspection support method
KR101620716B1 (ko) * 2014-04-24 2016-05-12 한양대학교 산학협력단 소프트웨어의 수행 시간 예측 장치 및 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6930960B2 (en) * 2002-03-27 2005-08-16 Hitachi, Ltd. Execution time measurement device in a control unit and an execution time measurement method
US7650537B2 (en) 2006-07-27 2010-01-19 Fujitsu Microelectronics Limited Inspection support apparatus and inspection support method
KR101620716B1 (ko) * 2014-04-24 2016-05-12 한양대학교 산학협력단 소프트웨어의 수행 시간 예측 장치 및 방법

Similar Documents

Publication Publication Date Title
US5367550A (en) Break address detecting circuit
JP3209776B2 (ja) エミュレーション装置とそれに使用するマイクロコントローラ
KR100233188B1 (ko) 프로그램 실행을 인터럽트하지 않고 스테이터스 데이터를 얻는 컴퓨터 시스템 및 방법
US6877113B2 (en) Break determining circuit for a debugging support unit in a semiconductor integrated circuit
JPH0728670A (ja) 情報処理装置
JP3260083B2 (ja) デバッグシステム及びデバッグ方法
JP2001092692A (ja) 時間測定回路及び時間測定方法
JP2001166954A (ja) 仮想計算機装置および仮想計算機装置の制御方法
JPS60132221A (ja) クロツクパルスの異常検出方法
JP2000181746A (ja) デバッグサポート付プロセッサ、及びデバッグ機能実行制御方法
JP2712730B2 (ja) エバリュエーションチップ
JPS6295644A (ja) マイクロプロセッサ用プログラムデバッグ装置
JPS6128144A (ja) トレ−ス動作実行装置
JP2775830B2 (ja) 命令頻度測定方式
JPS59202548A (ja) デバツグ装置
JPH04148430A (ja) エミュレータにおけるタイムアウト制御方式
JPS5935250A (ja) プログラム制御装置
JPS59202546A (ja) デバツグ装置
JPH02178745A (ja) シングルチップマイクロコンピュータ
JPH0784827A (ja) トレース装置
JPH0612283A (ja) リアルタイムトレーサ
JPH0223435A (ja) マイクロコンピュータ
JPH05250212A (ja) 情報処理装置
JPH0436418B2 (ja)
JPH10222391A (ja) エミュレータ