JPH0452935A - アドレストレース採取方式 - Google Patents

アドレストレース採取方式

Info

Publication number
JPH0452935A
JPH0452935A JP2161952A JP16195290A JPH0452935A JP H0452935 A JPH0452935 A JP H0452935A JP 2161952 A JP2161952 A JP 2161952A JP 16195290 A JP16195290 A JP 16195290A JP H0452935 A JPH0452935 A JP H0452935A
Authority
JP
Japan
Prior art keywords
address
trace
per
interrupt
instruction
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
JP2161952A
Other languages
English (en)
Inventor
Aiichiro Inoue
愛一郎 井上
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2161952A priority Critical patent/JPH0452935A/ja
Publication of JPH0452935A publication Critical patent/JPH0452935A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔概要〕 アドレストレースデータを採取するアドレストレース採
取方式に間し、 アドレストレースサービスルーチンを設け、アドレスト
レースモードに設定して1命令づつ順次実行させた状態
でPER検出機構によって割り込みを発生させ、この割
り込み中でアドレストレースデータを採取し、ソフトウ
ェアの負担を軽減して迅速に実環境におけるアドレスト
レースデータの採取を可能にすることを目的とし、 アドレストレースモード、トレーステーブルの領域設定
、PSWをPER(プログラム・イベント・レコーディ
ング)イネーブルに設定、およびpER11域を設定し
た実行指示に対応して、被測定対象のアプリケーション
プログラムから1命令を取り出して実行する際に、上記
設定した主記憶装置のPERI域内のアクセスであるこ
とをPER検出機構によって検出してプログラム割り込
みを発生させ、このプログラム割り込み中で上記領域指
定したトレーステーブル内にアドレストレースデータ(
命令アドレス、オペコード、主記憶オペランドアドレス
など)を格納した後、次の命令について繰り返し実行し
、実環境におけるアドレストレースデータを採取するよ
うに構成する。
〔産業上の利用分野〕
本発明は、アドレストレースデータを採取するアドレス
トレース採取方式に関するものである。
情報処理装置の性能は、メモリシーケンスによって大き
く左右される。特に、キャッシュはCPUの性能に大き
く影響し、その容量、制御方式をいずれにするかは重要
な選択である。大容量のキャッシュは、ヒント率の向上
が期待できるが、一方、マシンサイクルの低下要因とな
りかねない。また、キャッシュの構成および制御には種
々の方式があり、それぞれ一長一短がある。いずれもそ
の環境によって左右されるので、実環境における性能の
見積が切望される。この見積のために、装置にオペレー
ティングシステムをロードした実運用状態におけるアド
レストレースデータを迅速に採取することが望まれてい
る。
〔従来の技術と発明が解決しようとする課題〕従来、実
環境におけるアドレストレースデータの採取は、特殊な
機構を用いない場合、ソフトウェアによって以下のよう
にして採取すると、ソフトウェアの負担が重くなると共
に迅速に採取し難いという問題があった。
例えば命令フェッチPER(プログラム・イベント・レ
コーディング)を該当する主記憶装置の全領域で動作す
るように設定し、各命令完了毎にPERによるプログラ
ム割り込みを発生させる。
このプログラム割り込みを受けて、プログラム割り込み
ハンドラーの中でソフトウェアによって、割り込みの0
LD−PSWから次命令をフエ、ツチし、そのオペコー
ドを解読し、主記憶オペランドへのアクセスの有無をチ
エツクした上で、この命令のフォーマットに従ってオペ
ランドアドレスを生成する。そして、情報の格納域が予
定した範囲を越えないことをチエツクした後、これらの
情報を格納し、かつ次のエントリに備えて格納域へのポ
インタを更新し、ユーザプログラム(オペレーティング
システム、あるいはその上で走行するアプリケーション
プログラム)に制御を戻す。これを繰り返し行い、実環
境におけるアドレストレースデータを採取する。
本発明は、アドレストレースサービスルーチンを設け、
アドレストレースモードに設定してl命令づつ順次実行
させた状態でPER検出機構によって割り込みを発生さ
せ、この割り込み中でアドレストレースデータを採取し
、ソフトウェアの負担を軽減して迅速に実環境における
アドレストレースデータの採取を可能にすることを目的
としている。
〔課題を解決するための手段〕
第1図は、本発明の原理構成図を示す。
第1図において、アドレストレースサービスル−チン1
−2は、アドレストレースを行うための初期設定などを
行うものである。
トレーステーブル1−3は、アドレストレースデータ(
命令アドレス、オペコード、主記憶オペランドアドレス
など)を格納(採取)するチーフルである。
アプリケーションプログラム2は、1命令づつ実行して
実環境におけるアドレストレースデータを採取しようと
するプログラムである。
PER検出機構10は、予め設定した主記憶装置のPE
Rf!域内のアクセスを検出などし、プログラムを割り
込みを発生などさせるものである(第5図参照)。
〔作用〕
本発明は、第1図に示すように、アドレストレ−スサー
ビスルーチン1−2がオペレータなどからの指示をもと
にアドレストレースモード、トレーステーブル1−3の
領域設定、pswをPERイネーブルに設定、およびP
 E RtJ域を設定し、被測定対象のアプリケーショ
ンプログラム2を起動したことに対応して、当該アプリ
ケーションプログラム2から1命令を取り出して実行す
る際に、設定した主記憶装置のP E RtfI域内の
アクセスであることを第5図PER検出機構10によっ
て検出してプログラム割り込みを発生させ、このプログ
ラム割り込み中でトレーステーブル1−3内にアドレス
)・レースデータ(命令アドレス、オペコード、主記憶
オペランドアドレスなど)を格納した後、次の命令につ
いて繰り返し実行するようにしている。
従って、アドレストレースモードなどを設定して1命令
づつ順次実行する際に、PER検出機構10によってプ
ログラム割り込みを発生させ、この割り込み中でアドレ
ストレースデータをトレーステーブル1−3に採取する
ことにより、ソフトウェアの負担を軽減して迅速に実環
境におけるアドレストレースデータの採取を行うことが
可能となる。
〔実施例〕
次に、第1図から第5図を用いて本発明の1実施例の構
成および動作を順次詳細に説明する。
第1図において、共通空間1は、オペレーティングシス
テム1−1、アドレストレースサービスルーチン1−2
、トレーステーブル1−3などを配置する空間であって
、共通にアクセス可能な空間である。ユーザ空間(1)
ないしくN)は、アプリケーションプログラム2をロー
ドして処理を行う空間である。
アドレストレースサービスルーチン1−2は、アドレス
トレースを行うための初期設定およびトレース例外に対
応する処理などを行うものである。
例えば後述する第3図■の初期設定、およびトレース例
外(トレーステーブル1−3に格納しようとするアドレ
ストレースデータがオーバフローして格納し得ないとき
に発生するトレース例外、第5図右上に記載するトレー
ス例外)のときにトレーステーブル1−3に採取されて
いるアドレストレースデータを退避し、再度、当該トレ
ーステーブルl−3に採取可能に設定するなどの処理を
行うものである。
トレーステーブル1−3は、アドレストレースデータ(
命令アドレス、オペコード、主記憶オペランドアドレス
、PERコードなど)を格納(採取)するテーブルであ
る。
アプリケーションプログラム2は、1命令づつ実行して
実環境におけるアドレストレースデータを採取しようと
する対象のプログラムである。
第2図は、本発明に係るモード説明図を示す。
第2図(イ)は、オーバーラツプ・イネーブルモードを
示す、これは、アプリケーションプログラム2から順次
取り出した命令について、D、A、T、BSESWの各
ステージの順番で図示のようにパイプライン処理を行う
モードである。ここで、各ステージは、下記処理を行う
Dステージ:命令をデコードするステージAステージ:
主記憶オペランドアドレスを生成するステージ Tステージ:TLBをアクセスしてアドレス変換を行う
ステージ Bステージ:キャッシュのデータをアクセスするステー
ジ Eステージ:演算を行うステージ Wステージ:演算結果の書き込みと命令の完了処理を行
うステージ 第2図(ロ)は、オーバーラツプ・ディスイネーブルモ
ードを示す、これは、本実施例に係るモードであって、
アプリケーションプログラム2から1命令を取り出し、
DSA、T、B、E、Wの各ステージの処理を完了した
後、次の命令を取り出して同様に処理を行うモードであ
る(第3図■で設定するモードである)。
次に、第3図フローチャートに示す順序に従い、本発明
の1実施例の構成の動作を詳細に説明する。
第3図において、■は、アドレストレースモードの設定
を行う、これは、括弧内に記載したように、第2図(ロ
)で説明したオーバーラツプ・ディスイネーブルモード
に設定し、パイプライン処理を行うことなく、アプリケ
ーションプログラム2から1命令(例えばMOVE  
OPI、0P2)を取り出し、D、A、T、B、E、W
のステージを実行した後、次の1命令を取り出して実行
するモードに設定する。
■は、初期設定を行う。初期設定として図示のように、 (1)トレーステーブルの領域設定(コントロールレジ
スタに設定)する。これは、第1図トレーステーブル1
−3の領域設定を行う。
(2)PSWをPERイネーブルに設定する。これは、
PSW(プログラム状態語)中のPERイネーブルのビ
ットをONに設定する。
(31P E Rtri域を被測定範囲に設定する。こ
れは、PERN域を第5図図示コントロールレジスタC
RIO,CRI 1に格納して被測定範囲を設定する。
■は、被測定対象のアプリケージ5ンプログラム2を起
動する。
■は、l命令を実行(後続命令とオーバーランプせずに
実行)する。これは、0のアドレストレースモード設定
で第2図(ロ)オーバーラツプ・ディスイネーブルモー
ドを設定したことに対応して、後続命令の実行とオーバ
ーラツプすることなく、1命令を実行する。この1命令
の実行中に通常の命令実行処理の他に以下を行う。
■ オペレーションコードをOPCにセントする。これ
は、第5図オペレーションコードをoPCレジスタにセ
ットする。
■ 主記憶オペランドアドレスをOPI、OF2にセッ
トする。これは、第5図生成した主記憶オペランドアド
レスを0PIAレジスタ、○P2Aレジスタにそれぞれ
セットする。主記憶オペランドアドレスは、図示回路か
ら判明するように、例えばベースアドレス、インデック
スアドレスおよび変位をEAG加算器でその総和を求め
て生成する。
■ PERのチエツクとPERコードの生成を行う、こ
れは、第5図PER検出機構10中のPERCMPが@
で設定したCRI O,CRI 1のアドレスと、命令
アドレス、主記憶オペランドアドレスとをそれぞれ比較
し、PER(プログラム・イベント・レコーディング)
か否かをチエツクすると共に、図示PERコードを生成
する。
■ 命令アドレスをPERARにセットする。
これは、第6図に示すように、PSWIARから読みだ
した命令アドレスをPERAR(PERレジスタ)にセ
ントする。
以上の■ないし■でセントしたことにより、後述するプ
ログラム割り込みによって起動されたマイクロプログラ
ムルーチンが取り出してトレーステーブルI−3に採取
するデータの準備ができたこととなる。
■は、ハードウェアにより、プログラム割込が発生する
。これは、第5図PER検出機構10中のPER検出器
によって検出されたPERベンディング信号がアクティ
ブとなったことに対応して、ハードウェアがプログラム
割込を発生させる。
[相]は、■のプログラム割込によってSW/PGMの
マイクロプログラムルーチンが動作し、以下を行う。
■ ページクロステストを行う。これは、[株]の■な
いし■でセットしたデータを、トレーステーブル1−3
に格納できるか、あるいはオーバーフローして格納でき
ないかのチエツクを行う。具体的には、第5図右上のペ
ージクロステストによってトレース例外が発生するか否
かによって判定する(第4図参照)。
■ トレース情報をトレーステーブル1−3に格納する
。これは、■でトレース情報をトレースレープル1−3
に格納し得ると判明したので、当該トレース情報をトレ
ーステーブル1−3に格納し、ポインタを次に格納する
位置に進める。
■は、終わりか否かを判別する。YESの場合には、ア
プリケーションプログラム2の命令を全部実行したので
、終了する(END)、Noの場合には、[相]以降を
繰り返し実行する。
第4図は、本発明に係る割込処理フローチャートを示す
。これは、第3図■でプログラム割込が発生したときの
処理の詳細を示す。
第4図において、■は、割込原因のチエツクを行う。こ
れは、プログラム割込が発生したときに、当該プログラ
ム割込の原因をチエツクする。
0は、割込原因がPERだけか否かを判別する。
YESの場合には、■を行う。NOの場合(割込原因が
PER以外、あるいはPERの他に割込原因があった場
合)には、通常の割込処理、即ちPSWの内容を旧と、
新とを入れ替え、ソフトウェアのプログラム割込処理ル
ーチンに制御を渡す。
■は、@YESでPERだけの割込原因であると判明し
たので、既述したページクロステストを行い、[相]を
行う。有りの場合(トレース情報をトレーステーブル1
−3に格納し得す、オーバーフローしてしまう場合)に
は、再度、プログラム割込を発佳し、0でNoとなり、
アトルストレースサービスルーチン1−2がトレースチ
ーフル13に採取されているトレース情報を退避した後
、トレース情報の採取を続行などする。一方、無の場合
(トレース情報をトレーステーブル1−3に格納し得る
場合)には、[相]でトレース情報をトレーステーブル
1−3に格納する。そして、ここでは、PSWの入れ替
えが行われないので、この後、アプリケーションプログ
ラム2の次の命令の実行を開始する。
第5図は、本発明に係るハードウェア構成図を示す。こ
こで、図中“*”を記載した位置にデータを第3図0で
セットし、第3図[相]の■(第4図[相])でトレー
ス情報(アドレストレースデータ)として第1図トレー
ステーブル1−3に格納する。
第5図において、BR,、XR,DR,TL、TIAR
,TOAR,BIA’R,、BOAR,,0PIA、0
P2A、opcは、全てレジスタである。
BAG、PER,CMP、PXTは、加算器および加算
器にコンパレータが組み合わされた複合回路ブロックで
ある。
PER検出機構10は、PERコードを性成したり、C
PUのプロセス制御に対してPERの各事象の成立(P
ERベンディング)を検出する機構などを持つものであ
る。
ページクロステキストのブロックは、PXTの出力(キ
ャリー)をチエツクし、これをCP Uのプロセス制御
に対し、トレース例外として通知する機能を持つもので
ある。
第6図は、本発明に係るハードウェア構成図を示す、こ
こで、図中“*”を記載した位置にデータを第3図[相
]でセットし、第3図[相]の■(第4図■)でトレー
ス情報として第1図トレースチーフル1−3に格納する
。また、PSWIARはPSWの命令アドレスを保持す
るレジスタ、PERARは命令ドレスを保持するレジス
タ、IAtNCは次命令を生成する加算器を表す。
〔発明の効果〕
以上説明したように、本発明によれば、アドレストレー
スモードなどを設定して1命令づつ順次実行する際にP
ER検出機構10によってプログラム割り込みを発生さ
せ、この割り込み中でアドレストレースデータをトレー
ステーブル1−3に採取する構成を採用しているため、
ソフトウェアの負担を軽減して迅速に実環境におけるア
ドレストレースデータを採取することができる。
【図面の簡単な説明】
第1図は本発明の原理構成図、第2図は本発明に係るモ
ード説明図、第3図は本発明の動作説明フローチャート
、第4図は本発明に係る割込処理フローチャート、第5
図、第6図は本発明に係るハードウェア構成図を示す。 図中、Iは共通空間、I−1はオペレーティングシステ
ム、1−2はアドレストレースサービスルーチン、1−
3はトレーステーブル、2はアプリケーションプログラ
ム、10はPER検出機構、0PIA、0P2A、OP
C,、PERARばアドレストレースデータ(トレース
情報)をセットするレジスタを表す。

Claims (1)

  1. 【特許請求の範囲】  アドレストレースデータを採取するアドレストレース
    採取方式において、 アドレストレースモード、トレーステーブル(1−3)
    の領域設定、PSWをPER(プログラム・イベント・
    レコーディング)イネーブルに設定、およびPER領域
    を設定した実行指示に対応して、被測定対象のアプリケ
    ーションプログラム(2)から1命令を取り出して実行
    する際に、上記設定した主記憶装置のPER領域内のア
    クセスであることをPER検出機構(10)によって検
    出してプログラム割り込みを発生させ、このプログラム
    割り込み中で上記領域指定したトレーステーブル(1−
    3)内にアドレストレースデータ(命令アドレス、オペ
    コード、主記憶オペランドアドレスなど)を格納した後
    、次の命令について繰り返し実行し、実環境におけるア
    ドレストレースデータを採取するように構成したことを
    特徴とするアドレストレース採取方式。
JP2161952A 1990-06-20 1990-06-20 アドレストレース採取方式 Pending JPH0452935A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2161952A JPH0452935A (ja) 1990-06-20 1990-06-20 アドレストレース採取方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2161952A JPH0452935A (ja) 1990-06-20 1990-06-20 アドレストレース採取方式

Publications (1)

Publication Number Publication Date
JPH0452935A true JPH0452935A (ja) 1992-02-20

Family

ID=15745175

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2161952A Pending JPH0452935A (ja) 1990-06-20 1990-06-20 アドレストレース採取方式

Country Status (1)

Country Link
JP (1) JPH0452935A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04256036A (ja) * 1991-02-08 1992-09-10 Nec Corp プログラム解析システム
JP2007140837A (ja) * 2005-11-17 2007-06-07 Toshiba Corp アドレストレース採取装置、方法、及びプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04256036A (ja) * 1991-02-08 1992-09-10 Nec Corp プログラム解析システム
JP2007140837A (ja) * 2005-11-17 2007-06-07 Toshiba Corp アドレストレース採取装置、方法、及びプログラム

Similar Documents

Publication Publication Date Title
TWI338218B (en) Method and apparatus for prefetching data from a data structure
JP4216182B2 (ja) 複数の命令セットを用いるデータ処理
US5640503A (en) Method and apparatus for verifying a target instruction before execution of the target instruction using a test operation instruction which identifies the target instruction
JP6138142B2 (ja) 被管理ランタイムのためのハードウェア・ベース・ランタイム計装機構
US20140059523A1 (en) Hardware-assisted program trace collection with selectable call-signature capture
US9753730B2 (en) Decoding instructions from multiple instructions sets
JP5905911B2 (ja) シングルステップ実行を用いる診断コード
JP3732198B2 (ja) 複数命令セットシステムにおける非処理操作処理
JPH0452935A (ja) アドレストレース採取方式
JP3599499B2 (ja) 中央処理装置
CN110188026B (zh) 快表缺失参数的确定方法及装置
JPH04264923A (ja) 情報処理装置
JP2002163126A (ja) デバッグ用cpuに内蔵のイベント検出回路、イベント検出方法および外部周辺回路
JP2536615B2 (ja) 情報処理装置
JPH05113931A (ja) アドレス変換処理方式
KR960003052B1 (ko) 내장된 캐쉬 메모리 유니트를 가진 마이크로프로세서
JP3608446B2 (ja) コンパイラ装置とプロセッサ
JP2980327B2 (ja) 命令処理装置
JP3130421B2 (ja) プログラム解析方法および装置
JP2001273173A (ja) 資源情報収集装置,資源情報収集用プログラム記録媒体および資源情報収集用プログラム
US20150127318A1 (en) Apparatus and method for simulating an operation of an out-of-order processor
JPS58169262A (ja) 構造化プログラムの実行状態データ収集方法および構造化プログラム処理装置
JPS6358552A (ja) マイクロプロセサ
JPH03201135A (ja) マイクロプロセッサ
JPH10283253A (ja) 制御装置