JPS58103047A - 命令トレ−ス装置 - Google Patents

命令トレ−ス装置

Info

Publication number
JPS58103047A
JPS58103047A JP56201620A JP20162081A JPS58103047A JP S58103047 A JPS58103047 A JP S58103047A JP 56201620 A JP56201620 A JP 56201620A JP 20162081 A JP20162081 A JP 20162081A JP S58103047 A JPS58103047 A JP S58103047A
Authority
JP
Japan
Prior art keywords
memory
data
instruction
stored
branch
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.)
Granted
Application number
JP56201620A
Other languages
English (en)
Other versions
JPH0434181B2 (ja
Inventor
Takeshi Nakadokoro
中所 武司
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 JP56201620A priority Critical patent/JPS58103047A/ja
Publication of JPS58103047A publication Critical patent/JPS58103047A/ja
Publication of JPH0434181B2 publication Critical patent/JPH0434181B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 本発明は、テイジタル物子計算機によって実行された命
令を記憶する場合に、特にその実行順序および実行回数
全知る必要がない場合に好適な実行命令を記憶する命令
トレース装置に関する。
最近、ソフトウェアプログラムの尚信頼化のために、テ
ストのために用意したすべてのテストデータを実行させ
た時に、被テストプログラム中のパスの実行がどの程度
網らされたかを測定する、テスト充分性評価が行なわれ
ており、その際に命令トレース装m’i用いれば、被テ
ストプログラムの実行に影響を与えないという利点があ
る。
従来の命令トレース装置は、すべての実h86令ろるい
は分岐都令をその実行順序に従って記憶するため、配憶
すべき命令が膨大となり、大きな記憶容iti有する記
憶装置を必要とするという欠点、およびこの記憶容量の
制限のために命令トレースの期間が比較的短時間に限ら
れるという欠点があった。
本発明の目的は、この問題を解決するために、小さな記
憶容量を有する記憶装置t’に用いるたけでよく、かつ
、命令トレースの期間を長時間にできる命令トレース装
置全提供することにある。
このような目的全達成するために、本発明では、最も最
近に入力された特定個数の、分岐命令アドレスとその分
岐アドレスの対を別の高速アクセス記憶装置に記憶して
おき、新たに記憶させようとする分岐命令アドレスと分
岐先アドレスの対が、この記憶装置内に記憶されている
時はそれをトレース記憶装置に記憶しないようにしたこ
とに特徴がある。
本発明は、プログラムのテストを行った際に、未だ1度
も実行されていないパスの検出を、命令トレースによっ
て行う場合に有効である。すなわち、通常、命令トレー
スはプログラムの実行順序を調べるのに用いるので、分
岐命令の実行順序が重要であるが、未実行バス検出の場
合は、実行の有無のみ調べれば良く、そのような場合に
本発明全通用すれば効果的である。
以下、本発明の実施例を図面により説明する。
第1図は本発明による命令トレース装置の一実施例の構
成を示すものでめる。従来の命令トレース装置は、ディ
ジタル電子計算機1において実行芒れる命令に関する、
命令アドレス、命令の種類。
分岐先アドレスなどのデータを取込み、分岐命令選択部
2において分岐命令のみを選択し、トレース用メモリ制
御部5においてその分岐命令の命令アドレスと分岐先ア
ドレスの対をトレース用メモリ制御部5を通してトレー
ス用メモリ6に誉き込むという動作全ディジタル電子計
算機1において命令が実行される毎に繰返すと共に、ト
レース用メモリ6 i/C畳き込まれたサーチが一定量
になるとそのサーチをトレース用メモリ制御部5が外部
記憶装置7に書き出すようになっている。
第1図の命令トレース装置100内の照合用メモリ制御
部3および高速アクセス可能な照合用メモリ4は本発明
により設けられた部分であり、照合用メモリ制御部3は
次の動作を行う。
(1)  分岐命令選択部2によって選択された分岐命
令の命令アドレスと分岐先アドレスの対と同じものが照
合用メモリ4内に有るか否が全調べ、もし有れば、本デ
ータをトレース用メモリ制御部5に送らないようにする
。従って、本データはトレース用メモリ6には誉き込ま
れない。
(2)本データが照合メモリ4内に無い場合は、そのデ
ータ全照合メモリ4内に畳き込むと共に、トレース用メ
モリ制御部5に送り、トレース用メモリ6にも蕾き込む
(3)  (2)において、本データ全書き込む場合に
、照合用メモリ4内に空きエリアが無い場合は、既に畳
き込まれているデータのうちで初めに誉き込まれたデー
タのエリアに本データを書き込む。
第2図は第1図の照合用メモリ制御部3での動作の詳細
なフローを示すものである。
第2図に示すように、まず、ステップ11において、サ
ーチ用ポインタspに照合メモリ4の先頭番地をセット
する。次に、ステップ12において分岐命令選択部2よ
多分岐命令が送られてくると、その入力された分岐命令
アドレスと分岐先アドレスの対が、ポインタspで指す
照合メモリ4内のサーチと同じかどうかを調べ、もし、
同じでめれば、処理會終了してサーチをトレース用メモ
リ制御部に送らないようにする。
一方、入力さnたサーチがポインタspで指す照合メモ
リ4のデータと同じでなければ、ステップ13において
、ポインタspに1デ一タ分の長さ?加え、ステップ1
4において、その値が照合メモリ4の最後尾番地より大
きいかどうか全調べ、もし、大きくなければ上述したス
テップ12がらの動作を繰り返す。もし、ポインタsp
の値が照合メモリ4の最後尾番地より大きくなれは、ス
テップ15に進み、書き込み用ポインタwpの指す照合
メモリ4内のエリアに入カデータを書き込む。
次に、ステップ16.17では、ポインタwpに1デ一
タ分の長さを加え、その値が、照合メモリ4の最後尾番
地より大きいかどうかを調べ、もし大きければ、ステッ
プ18において、ポインタwpに照合メモリ4の先頭番
地をセットする。
なお、上述した例では、入力サーチと照合用メモリ4内
データとの比較は、照合用メモリ4の最後尾番地まで行
なわれる場合について説明したが、書き込み用ポインタ
wpの指す帯地まで行なうようにしてもよい。
本発明の具体的な動作例を説明するために、次のような
フォートラン(Fortran)プログラムが計算機1
上で実行される場合全方える。
10  READ(5,100)Mloo)  I=1 30  C0NTINUE 40  I=I+1 50  IF(1,LE、MAX)  GO’l’Oa
060 5TOP 本プログラムにおいて、文番号50の実行によj9 I
くMAXが成立している場合は、文番号30への分岐が
生じる。従って、例えばMAXが100の場合、プログ
ラムの実行順と文番号で表すと、0 0 0 となる。
これに本発明の実施例を適用した場合、以、下の動作乞
する。
(1)  文番号10.20.30.40の文は分岐命
令を含まないので、分岐命令選択部2を通過しない。
(2)文番号50は分岐命令選択部盆通過後、照合用メ
モリ制御部3が文番号50のアドレスと分岐先でめる文
番号30のアドレスの対を照合用メモリ4に記憶すると
共に、そのテークをトレース用メモリ制御部5に送る。
(3)文番号50の2度目以降の実行時は、照合用メモ
リ制御部3が、照合用メモリ4内に文番号50から文番
号30への分岐データがnピ憶されていること全確認し
て、そのテークをトレース用メモリ制御部5へ送らない
ようにする。
(4)トレース用メモリ制御部5は、照合用メモリ制御
部3から送ら扛る分岐テークをトレース用メモリ6に記
憶する。
以上のように、従来の命令トレース装置では文番号50
から30への分岐テークをその実際の笑何回数分(上記
例では99回分)たけトレース用メモリに記憶するが、
本実施例では1回分で隣む。
なお、本発明の実施例には第3図および第4図に示すよ
うな俊形例が考えら扛る。
第3図は、第1図の照合用メモリ4の代りに、トレース
用メモリ6盆兼用する例でめる。通常は照合用メモリ4
は七の用法に依存してトレース用メモリ6よりもアクセ
ス時間が短いものを用いる必要がるる場合が多いが、そ
の必要のない場合は、本方式が可能である。
第4図は、第1図のトレース用メモリ6を設けず、直接
、外部配憶装置7に書き込む例である。
通常は外部記憶装置への書き込みに要する時間はトレー
ス用命令の入力間隔より大きいため、トレース用メモリ
6をバッファとして用いるが、そうでない場合は本方式
が可能でるる。
以上述べた実施例からも解るように、本発明によれは、
従来の命令トレース装置において、実際の夾行回数分の
分岐命令テークを収集していたもの葡はとんどの場合1
回分のテークたけ収集するようにしたため、トレース用
メモリの使用効率を大幅に向上できる。
【図面の簡単な説明】
第1図は本発明による命令トレース装置の一実施例の構
成図、第2図は第1図の照合用メモリ制(9) 軸部の動作の一例會示すフローチャート、第3図および
第4図はそれぞf本発明による命令トレース装置の他の
実施例の構成図でめる。 3・・・照合用メモリ制御部、4・・・照合用メモリ、
6・・・トレース用メモリ。 代理人 弁理士 薄田利辛 (10) 茅1図 葛  2  図 第3図 肩 4  図

Claims (1)

  1. 【特許請求の範囲】 1、最も最近に入力された所定数の分岐命令のアドレス
    とその分岐先アドレスの対のデータを記憶する第1のメ
    モリ手段と、新たに入力された一 分岐命令のアドレスとその分許先アドレスの対のデータ
    が、上記第1のメモリ手段に記憶されているかどうか全
    照合し、配憶されていない時のみそのデータを出力する
    よう制御する制御手段とを備えたことを特徴とする命令
    トレース装置。
JP56201620A 1981-12-16 1981-12-16 命令トレ−ス装置 Granted JPS58103047A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP56201620A JPS58103047A (ja) 1981-12-16 1981-12-16 命令トレ−ス装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56201620A JPS58103047A (ja) 1981-12-16 1981-12-16 命令トレ−ス装置

Publications (2)

Publication Number Publication Date
JPS58103047A true JPS58103047A (ja) 1983-06-18
JPH0434181B2 JPH0434181B2 (ja) 1992-06-05

Family

ID=16444074

Family Applications (1)

Application Number Title Priority Date Filing Date
JP56201620A Granted JPS58103047A (ja) 1981-12-16 1981-12-16 命令トレ−ス装置

Country Status (1)

Country Link
JP (1) JPS58103047A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7155570B1 (en) 2000-09-29 2006-12-26 Intel Corporation FIFO write/LIFO read trace buffer with software and hardware loop compression
US7885806B2 (en) 2002-08-19 2011-02-08 Semiconductor Technology Academic Research Center Simulation method and simulation system of instruction scheduling

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5567853A (en) * 1978-11-16 1980-05-22 Nec Corp Logic device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5567853A (en) * 1978-11-16 1980-05-22 Nec Corp Logic device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7155570B1 (en) 2000-09-29 2006-12-26 Intel Corporation FIFO write/LIFO read trace buffer with software and hardware loop compression
US7885806B2 (en) 2002-08-19 2011-02-08 Semiconductor Technology Academic Research Center Simulation method and simulation system of instruction scheduling

Also Published As

Publication number Publication date
JPH0434181B2 (ja) 1992-06-05

Similar Documents

Publication Publication Date Title
US8769504B2 (en) Method and apparatus for dynamically instrumenting a program
US5845064A (en) Method for testing and verification of a CPU using a reference model
US7793160B1 (en) Systems and methods for tracing errors
IE56792B1 (en) Method and apparatus for self-testing of floating point accelerator processors
US6052801A (en) Method and apparatus for providing breakpoints on a selectable address range
JPS58103047A (ja) 命令トレ−ス装置
US7546589B2 (en) Semi-automated desk checking system and method
US20070028218A1 (en) Apparatus, system, and method for a software test coverage analyzer using embedded hardware
JPH0581087A (ja) プロセサのモニタ方式
JPS588363A (ja) プログラム実行履歴情報収集方式
CN118672894A (zh) 用于测试计算机程序的方法
JP2842571B2 (ja) 手続き呼出し方法
JPH02281341A (ja) デバッグ時のライトデータ確認方法
JPS6223336B2 (ja)
JPH01166144A (ja) ファームウェア・プログラムのデバッグ方式
JPH0324640A (ja) 情報処理装置のデバッグ方式
JPH0644098A (ja) メモリ・アクセス・バス・コンパレータ
JPS5852760A (ja) プログラム動特性解析装置
JPH03266139A (ja) プログラムデバグ方式
JPS6222153A (ja) マイクロプロセツサの動作解析方法と装置
JPS61141046A (ja) デバツグ割込み制御方式
JPH01204150A (ja) 情報処理装置
JPS638949A (ja) プログラムの検査装置
JPH08241225A (ja) 評価装置
JPS645335B2 (ja)