JPH05250212A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPH05250212A
JPH05250212A JP4086023A JP8602392A JPH05250212A JP H05250212 A JPH05250212 A JP H05250212A JP 4086023 A JP4086023 A JP 4086023A JP 8602392 A JP8602392 A JP 8602392A JP H05250212 A JPH05250212 A JP H05250212A
Authority
JP
Japan
Prior art keywords
instruction
register
trace
trace data
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.)
Pending
Application number
JP4086023A
Other languages
English (en)
Inventor
Kiyoshi Senba
清 仙波
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 JP4086023A priority Critical patent/JPH05250212A/ja
Publication of JPH05250212A publication Critical patent/JPH05250212A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【目的】 情報処理装置に於ける命令トレースを高速化
する。 【構成】 命令実行終了信号13が出力された後の最初
のクロック信号14によってトレースサイクル表示回路
3はセットされる。これにより、トレースデータアドレ
スレジスタ1の内容がメモリアドレスレジスタ6に、命
令アドレスレジスタ8,命令語レジスタ9の内容がメモ
リ書込みデータレジスタ7に格納され、CPU12はそ
の動作を一時停止する。その次のクロック信号14によ
ってトレースサイクル表示回路3,4がリセット,セッ
トされる。これにより、メモリ書込みデータレジスタ7
中のトレースデータがメモリ10のメモリアドレスレジ
スタ6が示すアドレスに書込まれ、トレースデータアド
レスレジスタ1の内容が加算回路5によって更新され
る。その次のクロック信号14によってトレースサイク
ル表示回路4がリセットされる。これにより、CPU1
2は通常動作を再開する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は命令トレースを高速に行
なうことができる情報処理装置に関する。
【0002】
【従来の技術】情報処理装置に於いては、従来からソフ
トウェアの動特性を得るために、実行した命令の命令ア
ドレス,命令語等をトレースするということが行なわれ
ている。
【0003】ところで、実行された命令の命令アドレ
ス,命令語等をトレースする場合、従来の情報処理装置
は、1命令が終了する毎に割込みを発生し、割込み直前
に実行された命令の命令アドレス,命令語等をトレース
する割込み処理ルーチンを走行させるようにしている。
そして、割込み処理ルーチンによってデータが収集され
ると、再び割込み前の状態に戻って命令の実行を行な
う。尚、ソフトウェアの動特性はトレースしたデータを
集計解析することにより、或いはシミュレータに入力す
ることにより得ることができる。
【0004】
【発明が解決しようとする課題】上述したように、従来
の情報処理装置は1命令が終了する毎に割込みが発生
し、割込み処理ルーチンが走行するため、トレースを行
なわない場合に比べて被トレース命令シーケンスの実行
時間が数百倍と極端に伸びてしまうという問題点があ
る。
【0005】また、情報処理装置上ではメモリ使用状況
を管理するルーチン,各種障害の監視を行なうルーチン
等のように一定時間間隔で起動されるルーチンが動作す
るため、トレースを行なう場合の実行時間が極端に伸び
ると、上記一定時間間隔で起動されるルーチンの実行頻
度が高くなり、トレースを行なった時のソフトウェア動
特性とトレースを行なわない通常動作時のソフトウェア
動特性とに差異が発生してしまうという問題もある。
【0006】本発明の目的は、命令トレースを高速に行
なうことができる情報処理装置を提供することにある。
【0007】
【課題を解決するための手段】本発明は上記目的を達成
するため、トレースデータが書込まれるメモリと、該メ
モリに於けるトレースデータの書込みアドレスを表示す
るトレースデータアドレスレジスタと、命令の実行が終
了することにより実行された前記命令のトレースデータ
を、前記メモリの前記トレースデータアドレスレジスタ
が表示する書込みアドレスに書込む書込み手段と、命令
の実行が終了することによりCPUの動作を一時停止さ
せ、前記書込み手段によるトレースデータの書込みが終
了することにより前記CPUの動作を再開させる動作停
止再開手段と、前記書込み手段による書込みが終了する
ことにより前記トレースデータアドレスレジスタの内容
を更新する更新手段とを設けたものである。
【0008】
【作用】命令の実行が終了すると、書込み手段はメモリ
のトレースデータアドレスレジスタが表示している書込
みアドレスに命令アドレス,命令語等のトレースデータ
を書込む。
【0009】動作停止再開手段は命令の実行が終了する
と、CPUの動作を一時停止させ、書込み手段によるト
レースデータの書込みが終了すると、CPUの動作を再
開させる。
【0010】また、書込み手段によるトレースデータの
書込みが終了すると、更新手段によってトレースデータ
アドレスレジスタの内容が更新され、次の命令の実行終
了時には更新後のトレースデータアドレスレジスタが表
示する書込みアドレスにトレースデータが書込まれる。
【0011】
【実施例】次に本発明の実施例について図面を参照して
詳細に説明する。
【0012】図1は本発明の実施例のブロック図であ
り、トレースデータアドレスレジスタ1と、トレース表
示回路2と、トレースサイクル表示回路3,4と、加算
回路5と、メモリアドレスレジスタ6と、メモリ書込み
データレジスタ7と、命令アドレスレジスタ8及び命令
語レジスタ9を含むCPU12と、メモリ10と、オア
ゲート11とから構成されている。
【0013】トレースデータアドレスレジスタ1にはト
レースデータを書込むメモリ10のアドレスが格納され
る。
【0014】加算回路5はトレースデータアドレスレジ
スタ1に格納されているアドレスに所定値を加算するこ
とによりトレースデータアドレスレジスタ1の内容を更
新する。
【0015】トレース表示回路2はトレース実行中であ
るか否かを表示する。尚、本実施例ではセット時、トレ
ース実行中であることを表示し、リセット時、トレース
実行中でないことを表示するものとする。
【0016】トレースサイクル表示回路3はトレース表
示回路2がセットされている時に、CPU12から命令
実行終了信号13が加えられると、その後、最初にクロ
ック発生回路(図示せず)からクロック信号14が加え
られた時点でセットされ、次のクロック信号14が加え
られた時点でリセットされる。また、トレースサイクル
表示回路3はセットされている間、その出力信号を
“1”にする。
【0017】トレースサイクル表示回路4はトレースサ
イクル表示回路3がセットされている時にクロック信号
14が加えられることによりセットされ、次のクロック
信号14が加えられた時点でリセットされる。また、ト
レースサイクル表示回路4はセットされている間、その
出力信号であるメモリ書込み要求信号15を“1”にす
る。
【0018】メモリアドレスレジスタ6はトレースサイ
クル表示回路3がセットされた時点でトレースデータア
ドレスレジスタ1の内容を取込む。
【0019】命令語レジスタ9及び命令アドレスレジス
タ8にはCPU12で実行された命令語及びそのアドレ
スが格納される。これらのレジスタ8,9の内容は信号
線100,101によってCPU12の外部に取出され
る。
【0020】メモリ書込みデータレジスタ7はトレース
サイクル表示回路3がセットされた時点で、信号線10
0,101に出力されている命令アドレスレジスタ8,
命令語レジスタ9の命令アドレス,命令語を取込む。
【0021】オアゲート11はトレースサイクル表示回
路3,4の出力信号の論理和をとり、CPU12のウエ
イト端子,ホールド端子等のCPU12の動作を一時停
止させる端子に加える。
【0022】次に本実施例の動作を説明する。尚、以下
の説明に於いてはトレース実行中であり、トレース表示
回路2はセットされているものとする。
【0023】CPU12は1命令の実行が終了すると、
命令実行終了信号13を出力する。この時、実行終了し
た命令語を命令語レジスタ9が保持し、そのアドレスを
命令アドレスレジスタ8が保持している。
【0024】トレースサイクル表示回路3は命令実行終
了信号13が加えられた後、最初にクロック信号14が
加えられた時点でセットされ、その出力信号を“1”に
する。
【0025】トレースサイクル表示回路3がセットさ
れ、その出力信号が“1”になると、メモリアドレスレ
ジスタ6はトレースデータアドレスレジスタ1の内容を
取込み、メモリ書込みデータレジスタ7は命令アドレス
レジスタ8,命令語レジスタ9の内容を取込む。
【0026】また、トレースサイクル表示回路3の出力
信号が“1”となると、オアゲート11の出力信号が
“1”になり、CPU12のウエイト端子,ホールト端
子等に加えられる。
【0027】これにより、CPU12は通常の命令実行
を一時停止する。
【0028】その後、次のクロック信号14が加えられ
ると、トレースサイクル表示回路3はリッセトされてそ
の出力信号を“0”とし、トレースサイクル表示回路4
はセットされてメモリ書込み要求信号15を“1”にす
る。
【0029】トレースサイクル表示回路4がセットさ
れ、メモリ書込み要求信号15が“1”になると、メモ
リ10のメモリアドレスレジスタ6に保持されているア
ドレスに、メモリ書込みデータレジスタ7に保持されて
いる命令アドレス,命令語が書込まれると共に、トレー
スデータアドレスレジスタ1に加算回路5の出力(トレ
ースデータアドレスレジスタ1に格納されていたアドレ
スの次のアドレス)が格納される。
【0030】また、トレースサイクル表示回路3の出力
信号が“0”になっても、トレースサイクル表示回路4
から出力されるメモリ書込み要求信号15が“1”にな
り、オアゲート11の出力信号が“1”のまま保持され
るので、CPU12による通常の命令実行は再開されな
い。
【0031】その後、次のクロック信号14が加えられ
ると、トレースサイクル表示回路4はリセットされ、メ
モリ書込み要求信号15を“0”にする。
【0032】これにより、ウエイト端子,ホールト端子
等に加えられているオアゲート11の出力信号が“0”
になるので、CPU12は通常の命令実行を再開し、命
令アドレスレジスタ8及び命令語レジスタ9に次の命令
の命令アドレス及び命令語を格納する。
【0033】この再開された命令の実行終了後に再び命
令実行終了信号13が出力されると、前述したと同様の
動作が行なわれ、メモリ10に実行した命令の命令アド
レス及び命令語がトレースデータとして書込まれる。以
下、前述したと同様の処理が繰返し行なわれ、メモリ1
0にトレースデータが書込まれる。
【0034】このように、本実施例は各命令の実行サイ
クルの終了後に2つのトレースサイクルを追加すること
により命令トレースを実現している。例えば、1命令の
実行サイクルが5サイクルの場合、トレース実行中はト
レースを行なわない場合に比較して実行時間は1.4倍
に増加するが、トレースを行なわない場合に比較して数
百倍も実行時間が必要であった従来方式に比較して大幅
に実行時間を短くすることができる。
【0035】尚、トレース表示回路2がリセットされて
いる場合は、トレースサイクル回路3,4はセットされ
ることがないので、上述したような命令トレース動作は
行なわれず、通常動作のみが行なわれる。
【0036】
【発明の効果】以上説明したように、本発明は、命令の
実行が終了することにより終了した命令のトレースデー
タをメモリのトレースデータアドレスレジスタが表示す
る書込みアドレスに書込むトレースサイクル表示回路
4,メモリアドレスレジスタ6,メモリ書込みデータレ
ジスタ7等から構成される書込み手段と、命令の実行が
終了することによりCPUの動作を一時停止させ、トレ
ースデータの書込みが終了することによりCPUの動作
を再開させるオアゲート11,トレースサイクル表示回
路3,4等から構成される動作停止再開手段と、トレー
スデータの書込みが終了することによりトレースデータ
アドレスレジスタの内容を更新する加算回路5等の更新
手段を備えたものであり、従来例のように割込み処理ル
ーチンを動作させなくともハードウェアによってトレー
スデータを収集することができるので、命令トレースを
高速化することができる効果がある。
【0037】また、命令トレースを高速に行なうことが
できるので、命令トレースを行なわない場合とあまり差
異のないソフトウェアの動特性を得ることができる効果
もある。
【図面の簡単な説明】
【図1】本発明の実施例のブロック図である。
【符号の説明】
1…トレースデータアドレスレジスタ 2…トレース表示回路 3,4…トレースサイクル表示回路 5…加算回路 6…メモリアドレスレジスタ 7…メモリ書込みデータレジスタ 8…命令アドレスレジスタ 9…命令語レジスタ 10…メモリ 11…オアゲート 12…CPU 13…命令実行終了信号 14…クロック信号 15…メモリ書込み要求信号

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 トレースデータが書込まれるメモリと、 該メモリに於けるトレースデータの書込みアドレスを表
    示するトレースデータアドレスレジスタと、 命令の実行が終了することにより実行された前記命令の
    トレースデータを、前記メモリの前記トレースデータア
    ドレスレジスタが表示する書込みアドレスに書込む書込
    み手段と、 命令の実行が終了することによりCPUの動作を一時停
    止させ、前記書込み手段によるトレースデータの書込み
    が終了することにより前記CPUの動作を再開させる動
    作停止再開手段と、 前記書込み手段による書込みが終了することにより前記
    トレースデータアドレスレジスタの内容を更新する更新
    手段とを含むことを特徴とする情報処理装置。
  2. 【請求項2】 前記トレースデータは実行された命令の
    命令アドレス及び命令語を含むことを特徴とする請求項
    1記載の情報処理装置。
  3. 【請求項3】 前記更新手段は前記トレースデータアド
    レスレジスタの内容に所定値を加算する加算回路である
    ことを特徴とする請求項1または2記載の情報処理装
    置。
JP4086023A 1992-03-09 1992-03-09 情報処理装置 Pending JPH05250212A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4086023A JPH05250212A (ja) 1992-03-09 1992-03-09 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4086023A JPH05250212A (ja) 1992-03-09 1992-03-09 情報処理装置

Publications (1)

Publication Number Publication Date
JPH05250212A true JPH05250212A (ja) 1993-09-28

Family

ID=13875067

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4086023A Pending JPH05250212A (ja) 1992-03-09 1992-03-09 情報処理装置

Country Status (1)

Country Link
JP (1) JPH05250212A (ja)

Similar Documents

Publication Publication Date Title
US8903703B2 (en) Dynamically adjusting speed versus accuracy of computer platform simulation
US7689867B2 (en) Multiprocessor breakpoint
US20060117224A1 (en) Trace and debug method and system for a processor
WO2018144350A2 (en) Efficient retrieval of memory values during trace replay
JPS63279328A (ja) 仮想計算機システムのゲスト実行制御方式
KR970703564A (ko) 분산 데이터 버퍼를 액세싱하기 위한 방법 및 장치(method and apparatus for accessing a distributed data buffer)
JPH05250212A (ja) 情報処理装置
JP2760228B2 (ja) キャッシュメモリを内蔵したマイクロプロセッサとそのトレースアナライザ
JPH0581087A (ja) プロセサのモニタ方式
JPH0229455Y2 (ja)
JP2878037B2 (ja) プロセッサの停止方式
JPS59202546A (ja) デバツグ装置
JPS60193046A (ja) 命令例外検出方式
JP2001092692A (ja) 時間測定回路及び時間測定方法
JPH05108550A (ja) 中央処理装置
JP2002055845A (ja) マルチタスクシステム用並行処理型汎用デバッグ方法及び装置及びマルチタスクシステム用並行処理型汎用デバッグプログラムを格納した記憶媒体
JPH04174034A (ja) プログラム開発支援装置のステップ実行動作方法
JPS61250748A (ja) 情報処理装置のメモリアクセス方式
JPS60220430A (ja) マイクロプログラムトレ−ス回路
JPH0540661A (ja) シミユレータ装置
JPS60132249A (ja) デ−タ処理装置
JPH0333940A (ja) 評価用マイクロプロセッサ
JPS63300330A (ja) ファ−ムウェアのデバッグ方法
JPH06295252A (ja) 計算機
JPH0772874B2 (ja) 割込み受取り装置