JPH0354645A - プログラム実行時間測定装置 - Google Patents
プログラム実行時間測定装置Info
- Publication number
- JPH0354645A JPH0354645A JP1189898A JP18989889A JPH0354645A JP H0354645 A JPH0354645 A JP H0354645A JP 1189898 A JP1189898 A JP 1189898A JP 18989889 A JP18989889 A JP 18989889A JP H0354645 A JPH0354645 A JP H0354645A
- Authority
- JP
- Japan
- Prior art keywords
- address value
- address
- execution time
- program
- holding means
- 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
Links
- 238000005259 measurement Methods 0.000 claims abstract description 19
- 230000002123 temporal effect Effects 0.000 abstract description 2
- 238000000034 method Methods 0.000 abstract 1
- 230000006870 function Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000013024 troubleshooting Methods 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は計算機のプログラム実行時間の測定装置に関し
、特にプログラム中の任意の命令から他の任意の命令迄
の実行時間を測定するプログラム実行時間測定装置に関
する. 〔従来の技術〕 従来、この種のプログラム実行時間の測定は、或るオブ
ジェクトプログラムを測定対象とする場合、そのオブジ
ェクトプログラムのソースプログラムにおける測定対象
区間の開始の命令の直前にタイマ値を読み出して所定の
場所に退避する命令群を埋め込むと共に、測定対象区間
の終了の命令の直後にタイマ値を再度読み出して前記退
避されたタイマ値との差分を求めて出力する命令群を埋
め込み、その後このソースプログラムをコンパイル(或
いはアセンブル),リンクして、測定用のオブジェクト
プログラムを生成し、これを計算機に実行させることに
より行われていた.〔発明が解決しようとする課題〕 上述した従来の方法によってもプログラムの任意の区間
における実行時間を測定することは可能であるが、測定
の為の命令群を測定対象区間の直前および直後に埋め込
まなければならないので、ソースプログラムの修正と再
コンパイル(再アセンブル)およびリンクの作業が必要
になるという問題点があった。その為、プログラムのデ
バッグや障害追跡に簡単には利用し難かった.本発明は
このような事情に鑑みて為されたものであり、その目的
は、測定対象プログラムに手を加えることなく簡便な方
法で任意の区間の実行時間を測定することができるプロ
グラム実行時間測定装置を提供することにある。
、特にプログラム中の任意の命令から他の任意の命令迄
の実行時間を測定するプログラム実行時間測定装置に関
する. 〔従来の技術〕 従来、この種のプログラム実行時間の測定は、或るオブ
ジェクトプログラムを測定対象とする場合、そのオブジ
ェクトプログラムのソースプログラムにおける測定対象
区間の開始の命令の直前にタイマ値を読み出して所定の
場所に退避する命令群を埋め込むと共に、測定対象区間
の終了の命令の直後にタイマ値を再度読み出して前記退
避されたタイマ値との差分を求めて出力する命令群を埋
め込み、その後このソースプログラムをコンパイル(或
いはアセンブル),リンクして、測定用のオブジェクト
プログラムを生成し、これを計算機に実行させることに
より行われていた.〔発明が解決しようとする課題〕 上述した従来の方法によってもプログラムの任意の区間
における実行時間を測定することは可能であるが、測定
の為の命令群を測定対象区間の直前および直後に埋め込
まなければならないので、ソースプログラムの修正と再
コンパイル(再アセンブル)およびリンクの作業が必要
になるという問題点があった。その為、プログラムのデ
バッグや障害追跡に簡単には利用し難かった.本発明は
このような事情に鑑みて為されたものであり、その目的
は、測定対象プログラムに手を加えることなく簡便な方
法で任意の区間の実行時間を測定することができるプロ
グラム実行時間測定装置を提供することにある。
本発明は上記の目的を達威するために、オブジェクトプ
ログラムを記憶する主記憶装置と前記オブジェクトプロ
グラムを実行するCPUとを含む計算機における前記オ
ブジェクトプログラムの或る区間の実行時間を測定する
装置において、測定対象区間の開始時点に前記CPUの
アドレスレジスタにセットされるアドレス値(その開始
時点に実行される命令のアドレス値やその命令が参照す
るオペランドのアドレス値)と同しアドレス値を保持す
る第1のアドレス値保持手段と、前記測定対象区間の終
了時点に前記アドレスレジスタにセットされるアドレス
値(その終了時点に実行される命令のアドレス値やその
命令が参照するオペランドのアドレス値)と同しアドレ
ス値を保持する第2のアドレス値保持手段と、前記アド
レスレジスタにセットされたアドレス値と前記第1およ
び第2のアドレス値保持手段に保持されているアドレス
値とを比較する比較手段と、この比較手段によって、前
記アドレスレジスタにセットされたアドレスと前記第l
のアドレス値保持手段に保持されているアドレス値との
一致が検出されたときに出力信号をオン状態にし、前記
第2のアドレス値保持手段に保持されているアドレス値
との一致が検出されたときに出力信号をオフ状態にする
信号出力手段と、この信号出力手段の出力信号がオン状
態になっている時間を測定する測定手段とを有している
. 〔作用〕 本発明のプログラム実行時間測定装置においては、第1
のアドレス値保持手段が、プログラムの測定対象区間の
開始時点にCPUのアドレスレジスタにセットされるア
ドレス値と同じアドレス値を保持すると共に、第2のア
ドレス値保持手段が、測定対象区間の終了時点にアドレ
スレジスタにセットされるアドレス値と同しアドレス値
を保持しており、CPUで測定対象のプログラムが実行
されると、比較手段が、CPUのアドレスレジスタにセ
ットされたアドレス値と第1および第2のアドレス値保
持手段に保持されているアドレス値とを比較し、この比
較手段によってアドレスレジスタにセットされたアドレ
スと第1のアドレス値保持手段に保持されているアドレ
ス値との一敗が検出されると信号出力手段がその出力信
号をオン状態とし、また比較手段によってアドレスレジ
スクにセットされたアドレスと第2のアドレス値保持手
段に保持されているアドレス値との一致が検出されると
信号出力手段がその出力信号をオフ状態にし、測定手段
が、その信号出力手段の出力信号がオン状態になってい
る時間すなわち測定対象区間の実行時間を測定する. 〔実施例〕 次に、本発明の実施例について図面を参照して詳細に説
明する. 第1図を参照すると、本発明の一実施例のプログラム実
行時間測定装置lは、アドレス値設定手段11,2個の
アドレス値保持手段12.13,比較手段14.フリッ
プフロップl5およびロジックアナライザ16で構成さ
れている。なお、同図において、2はCPU、2lは内
部のアドレスレジスタ、3は主記憶装置、31は実行時
間測定の対象とするオブジェクトプログラムである。
ログラムを記憶する主記憶装置と前記オブジェクトプロ
グラムを実行するCPUとを含む計算機における前記オ
ブジェクトプログラムの或る区間の実行時間を測定する
装置において、測定対象区間の開始時点に前記CPUの
アドレスレジスタにセットされるアドレス値(その開始
時点に実行される命令のアドレス値やその命令が参照す
るオペランドのアドレス値)と同しアドレス値を保持す
る第1のアドレス値保持手段と、前記測定対象区間の終
了時点に前記アドレスレジスタにセットされるアドレス
値(その終了時点に実行される命令のアドレス値やその
命令が参照するオペランドのアドレス値)と同しアドレ
ス値を保持する第2のアドレス値保持手段と、前記アド
レスレジスタにセットされたアドレス値と前記第1およ
び第2のアドレス値保持手段に保持されているアドレス
値とを比較する比較手段と、この比較手段によって、前
記アドレスレジスタにセットされたアドレスと前記第l
のアドレス値保持手段に保持されているアドレス値との
一致が検出されたときに出力信号をオン状態にし、前記
第2のアドレス値保持手段に保持されているアドレス値
との一致が検出されたときに出力信号をオフ状態にする
信号出力手段と、この信号出力手段の出力信号がオン状
態になっている時間を測定する測定手段とを有している
. 〔作用〕 本発明のプログラム実行時間測定装置においては、第1
のアドレス値保持手段が、プログラムの測定対象区間の
開始時点にCPUのアドレスレジスタにセットされるア
ドレス値と同じアドレス値を保持すると共に、第2のア
ドレス値保持手段が、測定対象区間の終了時点にアドレ
スレジスタにセットされるアドレス値と同しアドレス値
を保持しており、CPUで測定対象のプログラムが実行
されると、比較手段が、CPUのアドレスレジスタにセ
ットされたアドレス値と第1および第2のアドレス値保
持手段に保持されているアドレス値とを比較し、この比
較手段によってアドレスレジスタにセットされたアドレ
スと第1のアドレス値保持手段に保持されているアドレ
ス値との一敗が検出されると信号出力手段がその出力信
号をオン状態とし、また比較手段によってアドレスレジ
スクにセットされたアドレスと第2のアドレス値保持手
段に保持されているアドレス値との一致が検出されると
信号出力手段がその出力信号をオフ状態にし、測定手段
が、その信号出力手段の出力信号がオン状態になってい
る時間すなわち測定対象区間の実行時間を測定する. 〔実施例〕 次に、本発明の実施例について図面を参照して詳細に説
明する. 第1図を参照すると、本発明の一実施例のプログラム実
行時間測定装置lは、アドレス値設定手段11,2個の
アドレス値保持手段12.13,比較手段14.フリッ
プフロップl5およびロジックアナライザ16で構成さ
れている。なお、同図において、2はCPU、2lは内
部のアドレスレジスタ、3は主記憶装置、31は実行時
間測定の対象とするオブジェクトプログラムである。
プログラム実行時間測定装置lにおけるアドレス値設定
手段11は、利用者から人力されたアドレス値A,Bを
アドレス値保持手段12.13に設定する手段であり、
アドレス値保持手段12.13はその設定されたアドレ
ス値A,Bを保持する機能を持つ。比較手段l4は、C
PU2内のアドレスレジスタ21にセットされるアドレ
ス値Cと2個のアドレス値保持手段12.13に保持さ
れているアドレス値A,Bとを人力とし、C=Aを検出
したときにフリップフロップ15をセットし、C=Bを
検出したときにフリップフロップ15をリセットする機
能を持つ.フリソブフロップ15は信号出力手段をtl
威し、セット状態においてはその出力信号レベルをオン
状態に、リセット状態ではオフ状態とする。ロジックア
ナライザl6はフリップフロップI5の出力信号を入力
とし、その出力信号レベルの時間的変化を時間軸と共に
表示する。
手段11は、利用者から人力されたアドレス値A,Bを
アドレス値保持手段12.13に設定する手段であり、
アドレス値保持手段12.13はその設定されたアドレ
ス値A,Bを保持する機能を持つ。比較手段l4は、C
PU2内のアドレスレジスタ21にセットされるアドレ
ス値Cと2個のアドレス値保持手段12.13に保持さ
れているアドレス値A,Bとを人力とし、C=Aを検出
したときにフリップフロップ15をセットし、C=Bを
検出したときにフリップフロップ15をリセットする機
能を持つ.フリソブフロップ15は信号出力手段をtl
威し、セット状態においてはその出力信号レベルをオン
状態に、リセット状態ではオフ状態とする。ロジックア
ナライザl6はフリップフロップI5の出力信号を入力
とし、その出力信号レベルの時間的変化を時間軸と共に
表示する。
次に、このように構威された本実施例の動作を説明する
. 操作者は、オブジェクトプログラム3Iに含まれる或る
命令(以下第1命令と称す)から別の命令(以下第2命
令と称す)までの区間の実行時間を測定する場合、オブ
ジェクトプログラム31にかかるプログラムリストとリ
ンクロードマップ等を参照して、第1命令のアドレス値
または第1命令のオペランドのアドレス値と、第2命令
のアドレス値または第2命令のオペランドのアドレス値
とを求め、アドレス値設定手段11を使用して前者のア
ドレス値をAとしてアドレス値保持手段12に設定する
と共に、後者のアドレス値をBとしてアドレス値保持手
段l3に設定する。
. 操作者は、オブジェクトプログラム3Iに含まれる或る
命令(以下第1命令と称す)から別の命令(以下第2命
令と称す)までの区間の実行時間を測定する場合、オブ
ジェクトプログラム31にかかるプログラムリストとリ
ンクロードマップ等を参照して、第1命令のアドレス値
または第1命令のオペランドのアドレス値と、第2命令
のアドレス値または第2命令のオペランドのアドレス値
とを求め、アドレス値設定手段11を使用して前者のア
ドレス値をAとしてアドレス値保持手段12に設定する
と共に、後者のアドレス値をBとしてアドレス値保持手
段l3に設定する。
次に操作者はCPU2にてオブジェクトプログラム31
の実行を開始させる。この実行が開始されると、CPU
2はオブジェクトプログラム31の命令またはそのオペ
ランドのアドレスを順次に生成してアドレスレジスタ2
1にセットし、公知のように主記憶装置3からオブジェ
クトプログラム31の命令およびオペランドを読み出し
つつオブジェクトプログラム3lの実行を進めていく。
の実行を開始させる。この実行が開始されると、CPU
2はオブジェクトプログラム31の命令またはそのオペ
ランドのアドレスを順次に生成してアドレスレジスタ2
1にセットし、公知のように主記憶装置3からオブジェ
クトプログラム31の命令およびオペランドを読み出し
つつオブジェクトプログラム3lの実行を進めていく。
CPU2によるオブジェクトプログラム31の実行と並
行して、プログラム実行時間測定装置1の比較手段l4
は、アドレスレジスタ21にセットされるアドレス値と
アドレス値保持手段12.13に保持されているアドレ
スとを常時比較している。そして、アドレスレジスタ2
1にセットされたアドレス値がアドレス値保持手段l2
に保持されているアドレス値と一致すると、すなわち測
定対象区間の最初の命令までオブジェクトプログラム3
1の実行が進むと、比較手段14はフリソププロップ1
5をセットする.これによりフリップフロツブ15の出
力信号はオン状態となる.その後、オブジェクトプログ
ラム2lの実行が進み、アドレスレジスタ21にセット
されたアドレス値がアドレス値保持千段13に保持され
ているアドレス値と一敗すると、すなわち測定対象区間
の最後の命令までオブジェクトプログラム3lの実行が
進むと、比較手段14はフリノプフロソプ15をリセッ
トする.これによりフリップフロップ15の出力信号は
オフ状態となる。
行して、プログラム実行時間測定装置1の比較手段l4
は、アドレスレジスタ21にセットされるアドレス値と
アドレス値保持手段12.13に保持されているアドレ
スとを常時比較している。そして、アドレスレジスタ2
1にセットされたアドレス値がアドレス値保持手段l2
に保持されているアドレス値と一致すると、すなわち測
定対象区間の最初の命令までオブジェクトプログラム3
1の実行が進むと、比較手段14はフリソププロップ1
5をセットする.これによりフリップフロツブ15の出
力信号はオン状態となる.その後、オブジェクトプログ
ラム2lの実行が進み、アドレスレジスタ21にセット
されたアドレス値がアドレス値保持千段13に保持され
ているアドレス値と一敗すると、すなわち測定対象区間
の最後の命令までオブジェクトプログラム3lの実行が
進むと、比較手段14はフリノプフロソプ15をリセッ
トする.これによりフリップフロップ15の出力信号は
オフ状態となる。
フリップフロンプ15の出力信号のレベルはロジックア
ナライザ16によりモニタされ、そのレベルの状態変化
が時間軸と共に表示されている。
ナライザ16によりモニタされ、そのレベルの状態変化
が時間軸と共に表示されている。
従って、フリップフロップ15の出力信号のレベルがオ
フ状態からオン状態に立ち上がった時点tAとオン状態
からオフ状態に立ち下がった時点t1の間の時間を読み
取れば、オブジェクトプログラム3lの測定対象区間の
開始から終了迄の命令群の実行にCPU2が要した時間
すなわちその区間のプログラム実行時間を得ることがで
きる.〔発明の効果] 以上説明した本発明のプログラム実行時間測定装置によ
れば、プログラムの任意の測定対象区間の実行時間を、
そのプログラムに実行時間測定の為の命令群を埋め込む
といった手を加えることなく測定することが可能となる
。このため、従来のようなプログラムの再コンパイル(
再アセンブル)再リンク等の作業が不要となり、簡便に
プログラムの実行時間を測定することができる.
フ状態からオン状態に立ち上がった時点tAとオン状態
からオフ状態に立ち下がった時点t1の間の時間を読み
取れば、オブジェクトプログラム3lの測定対象区間の
開始から終了迄の命令群の実行にCPU2が要した時間
すなわちその区間のプログラム実行時間を得ることがで
きる.〔発明の効果] 以上説明した本発明のプログラム実行時間測定装置によ
れば、プログラムの任意の測定対象区間の実行時間を、
そのプログラムに実行時間測定の為の命令群を埋め込む
といった手を加えることなく測定することが可能となる
。このため、従来のようなプログラムの再コンパイル(
再アセンブル)再リンク等の作業が不要となり、簡便に
プログラムの実行時間を測定することができる.
第1図は本発明の一実施例の構成図である。
図において、
1・・・プログラム実行時間測定装置
11・・・アドレス値設定手段
12.13・・・アドレス値保持手段
14・・・比較手段
15・・・フリップフロップ
l6・・・ロジックアナライザ
2・・・CPU
21・・・アドレスレジスタ
3・・・主記憶装置
31・・・オブジェクトプログラム
Claims (1)
- 【特許請求の範囲】 オブジェクトプログラムを記憶する主記憶装置と前記オ
ブジェクトプログラムを実行するCPUとを含む計算機
における前記オブジェクトプログラムの或る区間の実行
時間を測定する装置において、 測定対象区間の開始時点に前記CPUのアドレスレジス
タにセットされるアドレス値と同じアドレス値を保持す
る第1のアドレス値保持手段と、前記測定対象区間の終
了時点に前記アドレスレジスタにセットされるアドレス
値と同じアドレス値を保持する第2のアドレス値保持手
段と、前記アドレスレジスタにセットされたアドレス値
と前記第1および第2のアドレス値保持手段に保持され
ているアドレス値とを比較する比較手段と、 該比較手段によって、前記アドレスレジスタにセットさ
れたアドレスと前記第1のアドレス値保持手段に保持さ
れているアドレス値との一致が検出されたときに出力信
号をオン状態にし、前記第2のアドレス値保持手段に保
持されているアドレス値との一致が検出されたときに出
力信号をオフ状態にする信号出力手段と、 該信号出力手段の出力信号がオン状態になっている時間
を測定する測定手段とを具備したことを特徴とするプロ
グラム実行時間測定装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1189898A JPH0354645A (ja) | 1989-07-21 | 1989-07-21 | プログラム実行時間測定装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1189898A JPH0354645A (ja) | 1989-07-21 | 1989-07-21 | プログラム実行時間測定装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0354645A true JPH0354645A (ja) | 1991-03-08 |
Family
ID=16249038
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1189898A Pending JPH0354645A (ja) | 1989-07-21 | 1989-07-21 | プログラム実行時間測定装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0354645A (ja) |
-
1989
- 1989-07-21 JP JP1189898A patent/JPH0354645A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6915416B2 (en) | Apparatus and method for microcontroller debugging | |
US5257358A (en) | Method for counting the number of program instruction completed by a microprocessor | |
US5592674A (en) | Automatic verification of external interrupts | |
JPH0354645A (ja) | プログラム実行時間測定装置 | |
JPS6337436A (ja) | プログラム開発支援装置 | |
JPH0465729A (ja) | シンボリック・デバッガ | |
JPH02220145A (ja) | プログラムトレース方式 | |
JPH0619752A (ja) | マイクロコンピュータ | |
JPH0293741A (ja) | マイクロプログラム制御装置 | |
JPH04245332A (ja) | データ処理装置 | |
JP3358123B2 (ja) | コントローラの入出力シミュレート方法および装置 | |
JP2575025B2 (ja) | インサ−キット・エミュレ−タ | |
JPS63269239A (ja) | プロセツサの負荷測定方式 | |
JPH04178840A (ja) | 性能測定方式 | |
JPH0756777A (ja) | プログラム開発支援装置 | |
JPS63282539A (ja) | プログラム任意区間のcpu時間測定方式 | |
JPH02284236A (ja) | プログラムデバッグ処理装置 | |
JPH0782370B2 (ja) | シ−ケンサのタイマ処理装置 | |
JPH0991177A (ja) | 半導体集積回路装置 | |
JPH04216103A (ja) | プログラマブルコントローラにおけるユーザプログラムのトレース方式 | |
JPH02202646A (ja) | マイクロプログラム制御装置 | |
JP2000148536A (ja) | 割り込み方法及び回路 | |
JPH03252731A (ja) | マイクロプロセッサ | |
JPH02230436A (ja) | プログラム実行時間計測方法とその装置 | |
JPH0398132A (ja) | デバグ方式 |