JPS61161557A - プログラム・デバツグ方法および装置 - Google Patents

プログラム・デバツグ方法および装置

Info

Publication number
JPS61161557A
JPS61161557A JP60003061A JP306185A JPS61161557A JP S61161557 A JPS61161557 A JP S61161557A JP 60003061 A JP60003061 A JP 60003061A JP 306185 A JP306185 A JP 306185A JP S61161557 A JPS61161557 A JP S61161557A
Authority
JP
Japan
Prior art keywords
instruction
central processing
instruction execution
processing unit
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
JP60003061A
Other languages
English (en)
Inventor
Takao Sato
孝夫 佐藤
Takashige Kubo
久保 隆重
Yasufumi Yoshizawa
吉澤 康文
Yoshio Ukai
鵜飼 良夫
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 JP60003061A priority Critical patent/JPS61161557A/ja
Publication of JPS61161557A publication Critical patent/JPS61161557A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、プログラム・デバッグ方法および装置に関し
、特に電子計算機において実行されるプログラムの動作
をチェックし、その動作に誤りがあるとき、その原因を
究明し、誤りの除去を行うプログラム・デバッグ方法お
よび装置に関するものである。
〔発明の背景〕
従来より、プログラムのテスト・デバッグとしては、主
記憶装置に格納されている特定のアドレス上の命令を実
行した時、または主記憶装置の特定アドレスにデータを
書き込んだり、読み出したりするため、主記憶装置をア
クセスした時、それぞれプログラムの実行を一時的に中
断し、その時点でのプログラムの状態等を調べる方法が
ある。
なお、プログラムの実行を任意の位置で一時的に中断す
る方法としては、(1)割込み方式・・・これは現在実
行されている。命令語のアドレス、およびオペランド(
ここでは、主記憶装置を示すものを言う)のアドレスが
プログラムの実行を一時的に中断すべきものであるか否
かを常に調べ、もし中断すべきアドレスならば、中央処
理装置に割込みを発生させる方式、(11)分岐命令埋
込み方式・・これは中断点(プログラムの実行を一時的
に中断したい位置)に分岐命令等の特殊な命令語を挿入
する方式、が一般的である。
しかし、これらの中断方法のうち、前者(1)の方法で
は、プログラム内に設定する中断点の数が多くなると、
命令実行時にアドレスを比較する回数が多くなり、計算
機システムの処理性能が低下してしまう問題がある。ま
た、後者(11)の方法では、主記憶装置を参照したり
、更新事象を監視することができず、さらに本来このよ
うな分岐命令は、処理には無関係な命令であるため、デ
バッグ終了時にこれらの命令を削除しなければならない
問題がある。中断点の設定方法についての提案として、
特開昭58−175062号公報に記載のものがあり、
またデバッグ装置の提案として、特開昭59−3015
4号公報に記載のものがある。
後者の装置では、予め設定されたデバッグ条件と対象に
なるプログラムの処理情報とを順次比較し。
それによってデバッグ割込みを発生させることにより、
不要な解析や後処理をなくすことができる。
しかし、比較回数が多くなると、処理性能が低下してし
まう。
〔発明の目的〕
本発明の目的は、このような問題を解決し、計算機シス
テムの処理性能を低下させることなく。
中央処理装置において実行されるプログラムの中に複数
の中断点を設定することができるプログラム・デバッグ
方法および装置を提供することにある。
〔発明の概要〕
上記目的を達成するため、本発明のプログラム・デバッ
グ方法および装置は、主記憶装置に記憶されているプロ
グラムを順次読み出して実行するデータ処理装置におい
て、中央処理装置で発生する命令語の実行の有無や分岐
命令の分岐成功、失敗等の命令実行事象を、予めメモリ
に登録しておいた命令実行事象と比較し、比較の結果が
一致した場合には、中央処理装置で発生した事象の情報
を主記憶装置に格納するとともに、中央処理装置に割込
みを発生させることに特徴がある。
〔発明の実施例〕
以下1本発明の実施例を、図面により説明する。
第1図は1本発明の一実施例を示すプログラム・デバッ
グシステムの全体構成図である。
本発明のデバッグ装置2000は、制御部2100と、
高速メモリ部2200とから構成される制御部2100
は中央処理装[1000のインタフェース部1300と
接続されている。中央処理装911000は、命令制御
ユニット1100と演算ユニット1200と主記憶装置
11400と、これらを主記憶装置1400に接続する
インタフェース部1300とを内蔵している。
信号線1101.1201は、命令実行事象情報、およ
びデバッグ装置2000を制御する情報を、命令制御ユ
ニット1100および演算ユニツ)−1200から読み
出すためのものである。また、信号llAl2゛02は
、監視対象である命令実行事象が発生したことを示す割
込みの発生を、演算ユニット1200に通知するための
ものである。信号線1401は、中央処理装置1000
において発生した命令実行事象を、主記憶装置1400
に格納するためのものである。信号線2101は、制御
部2100と高速メモリ部2000の間で、命令実行事
象情報を転送するためのものである。
ここで、命令実行事象情報とは、中央処理装置t oo
oにおける次のような3つの事象を言う6(a)分岐命
令を除く命令語の実行事象、(b)分岐命令語の分岐成
功、および失敗の事象、(c)命令語の実行に伴う主記
憶袋[1400の参照、および更新の事象。
高速メモリ部2200は、予めこれらの事象に対応する
情報を格納するために、主記憶袋[1400の番地対応
に4ビツトの情報を持っている。
第2図および第3図は、中央処理装置より読み出される
命令実行事象情報の一例を示す図である。
第2図に示すように、4ビツトの各ビット位置のうち、
20のビットを命令実行情報 2tのビットを分岐成功
情報、22のビットを主記憶参照情報、23のビットを
主記憶更新情報と呼ぶ、上位2ビツトのビットパターン
と、下位2ビツトのビットパターンに対応する組み合せ
た内容が、それぞれ示されている。
命令実行事象情報は、中央処理袋gtooo内の主記憶
装置11400に格納されている命令語が実行されたと
き、同時に取り出され、デバッグ装置2000に転送さ
れる。そして、取り出された命令語とオペランド(主記
憶袋9!1400を示すものである)は制御部2100
 G:、転送され、ここでこれらに対応する高速メモリ
部2200の内容と比較される。第3図(b)には、デ
バッグ装置2000に転送される命令実行事象情報の一
例が示されている。第3図(、)には、ll的プログラ
ムつまり主記憶装置1400に格納されている対象プロ
グラムが示されている。この例に示すように。
命令実行情報(分岐命令の分□岐情報を含む)は、命令
語の先頭のアドレスに対応するメモリ部2200の位置
の情報と比較され、主記憶参照/更新情報は、1バイト
単位に、そのアドレスに対応する高速メモリ部2200
の位置の情報と比較される。
すなわち、0番地にある4バイトの命令語の実行により
取り出される命令実行情報は、高速メモリ部2200の
O番地に対応する位置の情報と比較される。一方、20
番地にある4バイトのオペランドの参照/更新により取
り出される主記憶参照/更新情報は、4バイト単位に参
照/更新が行われても、それらの情報は、1バイト単位
に、該当する高速メモリ部2200の情報遍比較される
第3図では、高速メモリ部2200の20番地以降には
、ラベルA、B、C,・・・とともに欄内番ζオペラン
ドが格納されている。
中央処理装置gitoooへの割込みは、プログラム割
込みとして扱われ、この割込みの詳細を示す情報が、主
記憶装置1400のプリフィックス領域(中央処理装置
11000の固有の制御情報を格納しておく領域)に格
納される。
第4図は、プログラム割込みに伴って格納される主記憶
装置内の割込み情報を示す図である。
プログラム割込み旧PSW (PC−OLDPSW)5
00は、実行中断命令実行事象を発生させた命令語を構
成要素とするプログラムの状態を示し、命令語長(I 
LC)510は、その命令語の長さを示す、また、プロ
グラム割込みコード(PC−CODE)520は、プロ
グラム割込みの種類を示し、他のプログラム割込みとデ
バッグ割込みを区別するためのものである。イベントタ
イプ(EV−TYPE)530は、デバッグ割込みの詳
綱を示すものであり、また割込みアドレス(INT−A
DDR)540は1割込みを発生させた命令語のアドレ
スである。これらの情報を解析することにより、命令語
の実行に伴って発生した命令実行事象を解析することが
できる。
第5図は1本発明のデバッグ装置を制御するための制御
レジスタの内容説明図である。
デバッグ装置2000の動作は、制御部2100によっ
て制御される。制御部2100は、デバッグ制御語(以
下、DCWと呼ぶ)に格納された情報に従ってデバッグ
装置2000全体を制御する。
DCWを格納する制御レジスタは、第5図に示すような
エントリにより構成されている。これらのエントリの内
容は、中央処理装置1oooにおいて実行される特殊な
命令語(以下、デバッグ装置制御命令と呼ぶ)Kより任
意の値に設定できる。
次に、DCWのエントリについて、述べる。
第5図の記録タイプ211は、デバッグ装置の動作を規
定する16ビツトのフィールドである、第6図は、第5
図における記録タイプ(デバッグタイプ)の各ビットの
意味を示す説明図である。
ビット位112のビットが°l″のとき、命令語の実行
事象、および分岐命令語の分岐成功、失敗の事象を監視
し、ビット位置3のビットが+11 tlのとき、主記
憶装置の参照、更新事象を監視するにれら2つのビット
は、同時に11 L Itであっても差し支えない、ビ
ット位置8のビットが′1″の場合には、中央処理装置
1000が非アドレス変換モードのとき、命令実行事象
動作の監視を行い、ビット位置9のビットがII I 
IIの場合には、アドレス変換モードのとき、命令実行
事象動作の監視を行う。
また、仮想計算機システムが、中央処理装置1000に
おいて実行されている場合には、ビット位置lOのビッ
トが1″であれば、仮想計算機システムの制御プログラ
ムであるV M CP (VertualMachin
e Control Program)の命令実行事象
が監視され、ビット位置11のビットが1″であれば、
仮想計算機上で動作するO S (Operating
S yste+s)の命令実行事象が監視される。さら
に、仮想計算機上で動作するO8の命令実行事象を監視
する場合、ビット位置12のビットを“l”にして、V
 M (Vertual Machine)識別子21
3を指定することにより、特定の仮想計算機上で動作す
るO8が選択される。また、中央処理袋W11000上
、または仮想計算機上で、多重仮想記憶機能を持ったO
8が動作する場合、ビット位置13を1″にし、空間識
別子214を指定することにより、特定の空間上で動作
するプログラムの命令寒行事象が監視される。
なお、ビット位!8からビット位W111までのビット
は、それぞれ独立に指定でき、複数のビットがII I
 Hpである場合には、指定されたビットに対応する条
件の論理積をとったものが、命令実行事象の監視条件と
なる。
第5図のエントリ数212は、命令実行事象監視対象と
なる領域(監視領域)の数を指定する8ビツトのフィー
ルドである。このフィールドは1〜255の値を指定し
、このフィールドで示された数の監視領域を監視領域リ
スト213で指定する。
このフィールドには、監視領域の開始アドレスと、終了
アドレスを1対で指定する。第1図の高速メモリ部22
00は、エントリ数212で指定された数に論理的に分
割され(分割されたメモリの各々をエリアと呼ぶ)、各
エリアは監視領域リスト213で指定される監視領域に
対応している。
次に、デバッグ装置2000を中央処理袋ffl!10
00から制御するためのデバッグ装置制御命令語につい
て述べる。
デバッグ装置制御命令語には1次の6種類がある。すな
わち、(1)命令実行事象監視開始・・・すでに設定さ
れているDCWに従い命令実行事象の監視を開始する。
(11)命令実行事象監視停止・・・・命令実行事象の
監視を停止する。(iii)DCWロード・・・・・本
命令のオペランドに指定された制御情報をDCWレジス
タ(第7図の21O)に格納する。この時、高速メモリ
部2200に実装された全ての監視領域に対する命令実
行事象の監視が可能であるか否かを調べ、監視不可能と
判断された場合には、この命令語の実行に伴う結果の条
件コードを1にセットする。(1v)メモリ・ライト・
・・・・・オペランドにより指定された主記憶装置i!
1400の内容を高速メモリ部2200に書き出す。こ
の命令語は、監視対象となる命令実行事象を登録する際
に用いられる。(V)メモリ・クリア・・・・本命令が
実行されると、命令実行事象の監視動作を停止し、その
後、高速メモリ部2200の内容および制御部2100
内の制御レジスタ類をクリアする。(vi)テスト・・
・・・デバッグ装置2000が接続されているが否がを
調べ、接続されていなければ、本命令語の実行に伴う結
果の条件コードを2にセットする。また、接続されてい
る場合には、高速メモリ部2200の大きさ等を主記憶
装置11400上に書き出す。
なお、サービスプロセッサからも、上記の命令語と同じ
制御を行うことができる。
第7図は、第1図の制御部の詳細なブロック構成図であ
る。
制御部2100は、マイクロプログラムを内蔵し、命令
実行事象の監視動作を制御する制御機構200、DCW
レジスタ210、命令語のアドレスを記憶する命令アド
レスレジスタ220.命令オペランドアドレスを記憶す
るオペランドアドレスレジスタ230−A、および23
0−B、オペランドの長さを記憶するオペランドレング
スレジスタ240−A、および240−B、命令語の実
行の有無を記憶する命令実行ビット250.記録タイプ
の211のビット位置8からビット位置llまでで示さ
れる命令実行事象監視条件と中央処理装置1000の動
作モードが一致していることを示す動作ビット280.
高速メモリ部2200のアドレスを示すメモリアドレス
レジスタ260゜分割された高速メモリ部2200のエ
リア起点アドレスを示すエリアオリジンレジスタ270
、および命令実行情報を格納する命令実行レジスタ29
0を有している。これらのうち、命令アドレスレジスタ
220.オペランドアドレスレジスタ230−A、23
0−B、オペランドレングスレジスタ240−A、24
0−Bは、パイプラインにより先行制御の対象となって
いる命令の数と同じ数だけそれぞれ用意されている。ま
た、エリアオリジンレジスタ270は、DCWロード命
令が実行される際に設定され、この値は監視対象領域リ
スト213を基に計算される。
命令実行事象の監視動作は、中央処理装置it。
00のパイプラインのステージと同期しており、(1)
命令読み出し動作、(11)オペランド読み出し動作、
(山)命令実行動作、の3つのステージの処理の際に、
第8図〜第10図のフローチャートに従って1次のよう
に動作する。
(1)命令読み出し動作(第8@参照)命令制御ユニッ
ト1100により命令語のアドレスが計算され、主記憶
装置1400より命令語が読み出されると、命令語のア
ドレスと中央処理装置1000の動作モードが信号線1
ootを経由して制御部2100に転送される。制御部
2100は、転送された命令語のアドレスと中央処理装
置1000の動作モードを基に1次の処理を行う6先ず
、VM走行モードであるか否かを判断して、そうであれ
ば、記録タイプ211のビット位置llがオンであるか
を調べる(ステップ1,2)。
オンであれば、次にビット位1112がオンであるか調
べ、オンであれば、VM識別子が一致するが否か判別す
る(ステップ3,4)。また、VM走行モードでなけれ
ば、記録タイプ211のビット位置10がオンであるか
を調べる(ステップt、S)。
記録タイプ211のビット位置1oがオンが2ビット位
置12がオフか、あるいはVM識別子が一致していると
きは、アドレス変換モードが否かを判断する(ステップ
6)、そうであれば1次に記録タイプ211のビット位
1f!9がオンであるかを判断しくステップ7)、オン
であれば、ビット位置13がオンであるか否かを調べる
(ステップ8)。これもオンであれば、空間識別子が一
致するが否かを判断する(ステップ9)、一方、アドレ
ス変換モードでない場合、記録タイプ211のビット位
置8がオンであるか否かを調べる(ステップ11)。
このようにして、中央処理装置1000の動作モードが
記録タイプ211のビット位置8からビット位置11ま
での命令実行事象監視条件と一致しているか否かを調べ
、さらにビット位Ii!12のビットがIt l IT
の場合、呪在中央処理装[1000で動作しているVM
が、監視の対象であるか否かを調べ、またビット位[1
3のビットがII I Bの場合、現在中央処理装置1
000で処理を行っている空間が、監視の対象であるか
否かを調べ、それぞれの条件が成立したならば、動作ビ
ット280をオンにしくステップ12)、次のステップ
に進む。また、条件が成立しないならば、動作ビット2
80をオフにして、処理を終了する(ステップ10)。
動作ビット280がオンになると、命令語のアドレスを
命令アドレスレジスタ220に記憶する(ステップ13
)。
(11)オペランド読み出し動作(第9図参照)命令制
御ユニット1100により、オペランドのアドレスとオ
ペランドの長さが計算されると。
命令読み出し動作の時と同じように、これらの情報が制
御部2100に転送される。制御部2100は、先ず、
動作ビット280がオンであるか否かを調べ(ステップ
21)、オフの場合には処理を終了する。また、オンの
場合には、オペランド数が0か否かを調べ(ステップ2
2)、0でなければオペランド数が2であるか否かを調
べる(ステップ23)。オペランド数が1つであれば、
転送されたオペランドアドレスと、オペランドの長さを
、それぞれオペランドアドレスレジスタ230−A、オ
ペランドレングスレジスタ240−Aに格納する(ステ
ップ26.27)。また、オペランド数が2つの場合に
は、第1オペランドの情報をレジスタ230−A、24
0=Aに、第2オペランドの情報をレジスタ230−B
、240−Bに、それぞれ格納する(ステップ24.2
5)。
(iii )命令実行動作(第10図(a)〜(e)参
照)演算ユニット1200により、先に命令制御ユニッ
ト1100によって読み出された命令語が実行されると
、命令実行情報(分岐命令の分岐情報を含む)と、主記
憶装置参照/更新情報が信号線1201、インタフェー
ス部1300、および信号線1001を経由して制御部
2100に転送される。これらの情報を受は取った制御
部2100は、次の処理を行う、先ず、動作ビット28
0がオンか否かを調べる(ステップ31)。もし、オフ
であれば、処理を終了する。また、オンであれば、命令
実行情報レジスタ290を0にクリアする(ステップ3
2)。命令アドレスレジスタ220に記憶されている命
令語のアドレスが、DCW210内の監視領域リスト2
13で示される監視領−域内に該当するか否かを調べて
、そのアドレスが監視領域内にあれば、このアドレスに
対応した高速メモリ部2200のアドレスをメモリオリ
ジンレジスタ270を参照して計算し、その結果をメモ
リアドレスレジスタ260に格納し、命令実行ビット2
50をオンにする(ステップ33〜36)。
また、そのアドレスが監視領域内でなければ、命令実行
ビット250をオフにする(ステップ38)。
次に、記録タイプ211のビット位M2がオンであるか
を調べ(ステップ37)、オンであれば、第10図(b
)のステップ39に進む。
中央処理袋[1000において実行された命令語が分岐
命令であるか否かを調べ(ステップ39)、さらに分岐
命令の場合には分岐が成功したか否かを調べる(ステッ
プ40)0分岐成功ならば、命令実行情報レジスタ29
0のピット位置1のビットをオンにしくステップ42)
1分岐先敗ならば、命令実行情報レジスタ290のピッ
ト位置0のビットをオンにする(ステップ41)、また
、中央処理装置toooにおいて実行された命令語が分
岐命令でない場合には、命令実行情報レジスタ290の
ピット位置Oのビットをオンにする(ステップ41)、
 次に、メモリアドレスレジスタ260によって示され
る高速メモリ部2200のピット位置0、およびピット
位置lの各ビットと、命令実行情報レジスタ290のビ
ット位置0.およびピット位置lの論理積をとった後、
その結果を命令実行情報レジスタ290に格納する(ス
テップ43)。
次に、第10図(c)において、記録タイプ211のビ
ット位5!3のビットがオンであるか否かを調べる(ス
テップ44)。もし、オンであれば、記録タイプ211
のビット位@2のビットがオンであるか否かを調べ(ス
テップ45)、オンの場合、命令実行ビット250がオ
ンであるか否かを調べる(ステップ46)、次に、中央
処理装置too。
において実行された命令語の各オペランドごとに、オペ
ランド数を調べ(ステップ47)、各オペランドの処理
が終了した場合、およびオペランドが無い場合には次に
進む。次の処理は、オペランドアドレスレジスタ230
に記憶されたオペランドアドレスが、監視領域リスト2
13で示される監視領域内であれば、このアドレスに対
応した高速メモリ部2200のアドレスを、メモリオリ
ジンレジスタ270を参照して算出し、メモリアドレス
レジスタ260に格納する(ステップ48〜50)。
次に、第10図(d)において、中央処理袋@1000
で実行された命令語が主記憶袋[1400を参照したが
、更新したかを調べ(ステップ51)。
主記憶装置1400を参照したならば、命令実行情報レ
ジスタ290のビット位Wt2のビットをオンにしくス
テップ53)、また主記憶装置1400を更新したなら
ば、命令実行情報レジスタ290のビット位置3のビッ
トをオンにする(ステップ52)。
メモリアドレスレジスタ260によって示される高速メ
モリ部2200の位置から命令実行事象情報を取り出し
、命令実行情報レジスタ290のビット位置2、および
ビット位置3の各ビットを反転した結果と論理積をとり
、その結果を、命令実行情報レジスタ290のビット位
li!2.および3に格納する(ステップ54)、この
処理を、(メモリアドレスレジスタ260)+(オペラ
ンドレングスレジスタ240)により示される高速メモ
リ部2200の位置の命令実行情報まで操り返して行い
、この処理終了後、命令実行情報レジスタ290のビッ
ト位置2、およびビット位置3のビットを反転する(ス
テップ55,56.48〜54)。
第10図(e)において、命令実行情報レジスタ290
のビット位置Oから3までのビットを調べ、これらのビ
ットのうち1つでもオンであれば、次に進み、オフであ
れば処理を終了する(ステップ57)。次の処理は、第
5図に示す割込み情報を主記憶装置1400にセットし
、中央処理装置1000に割込みを発生させる(ステッ
プ58゜59)。
このように1本発明においては、主記憶装置1400の
番地と1対1の対応関係を持つ高速メモIJ 2200
と、中央処理装置1000で発生する命令実行事象を予
め高速メモリ2200に格納しておいた命令実行事象と
を比較し、それらが一致した場合に、中央処理袋Wlo
ooで発生した事象情報を主記憶袋[1400に格納し
、中央処理装置11000に割込みを発生させる装置を
設けている。なお、高速メモリ2200は、ハードウェ
ア上特別な記憶装置として設けてもよく、また主記憶装
置1400の一部を用いてもよい。そして、予めプログ
ラムの実行を一時的に中断したい命令語、あるいは参照
、更新の監視を行う領域に対応するメモリ位置に、監視
したい事象を登録しておき、中央処理装置1000で発
生する命令実行事象が、先にメモリに格納しておいた監
視事象と一致したときに、中央処理装置1000に割込
みを発生させる。これによって、プログラムを修正する
ことなく、プログラムの動作状態を調べることが可能で
ある。
このように1本実施例においては、(1)プログラムを
全く修正することなく、プログラム内の任意の位置の命
令語を実行したときに、プログラムの実行を一時的に中
断できる。(11)主記憶装置1400の任意領域への
参照/更新時に、プログラムの実行を一時的に中断でき
る。(iii )上記(1)。
(11)のプログラム実行監視を行うポイントを、計算
機システムの処理速度を低下させることなく、複数個設
定できる。(1v)中央処理装置1000の動作モード
を監視しているので、プログラムの実行監視が選択的と
なる。()中央処理袋mto。
Oにより実行される特殊な命令語によって制御するので
1wJ単にプログラムのテスト/デバッグに必要な情報
を得ることができる。
なお、実施例では、専用のハードウェアを用いて実現し
たが、他の実施例として、高速なマイクロコンピュータ
を用いて同一の機能を実現することができる。
〔発明の効果〕
以上説明したように1本発明によれば、計算機システム
の処理機能を低下させることなく、中央処理装置におい
て実行されるプログラムの中に複数の中断点を設定する
ことが可能であるので、プログラムのデバッグならびに
開光が容易となる6
【図面の簡単な説明】
第1図は本発明の一実施例を示すデバッグ装置の全体ブ
ロック図、第2図、第3図は中央処理装置により採取さ
れる命令実行事象情報の一例番示す図、第4図はプログ
ラムの実行中断時に主記憶装置に格納される割込み情報
の一例図、第5図は本発明のデバッグ装置を制御するた
めの制御レジスタの説明図、第6図は第5図の記録タイ
プ(デバッグタイプ)の説明図、第7図は第1図におけ
る制御部の詳細ブロック図、第8図〜第10図は本発明
のデバッグ装置の動作フローチャートである。 1000 :中央処理装置、ttoo:命令制御ユニッ
ト、1200:演算ユニット、l 300 :インタフ
ェース部、1400:主記憶装置、2000:デバッグ
装置、2100:制御部、2200:高速メモリ部、2
00:制御機構、21O=DCWレジスタ、220:命
令アドレスレジスタ、290:命令実行情報レジスタ。 °・1判、7゛ 宍  染 第4図 主記憶装置 第6図 デバソグタイプ 第7図 第8図 第9図

Claims (5)

    【特許請求の範囲】
  1. (1)主記憶装置に記憶されているプログラムを順次読
    み出して実行するデータ処理装置において、中央処理装
    置で発生する命令語の実行の有無や分岐命令の分岐成功
    、失敗等の命令実行事象を、予めメモリに登録しておい
    た命令実行事象と比較し、比較の結果が一致した場合に
    は、中央処理装置で発生した事象の情報を主記憶装置に
    格納するとともに、中央処理装置に割込みを発生させる
    ことを特徴とするプログラム・デバッグ方法。
  2. (2)主記憶装置に記憶されているプログラムを順次読
    み出して実行するデータ処理装置において、主記憶装置
    のアドレスと1対1に対応するエリアを有し、命令の実
    行状態を監視したい命令語のアドレス、および命令語の
    実行に伴い参照/更新されるアドレスに対応するエリア
    上に、分岐命令を除く命令語の実行の有無、分岐命令の
    分岐成功/失敗等の命令実行事象、および上記命令語の
    実行の際に、主記憶装置への参照/更新を行う記憶装置
    アクセス事象を予め書込むメモリと、命令実行事象およ
    び記憶装置アクセス事象を命令実行の際に中央処理装置
    から採取する手段と、該手段により採取された命令実行
    事象情報および記憶装置アクセス事象情報に対して、上
    記メモリに書込んでおいた事象情報が一致したとき、中
    央処理装置で発生した事象情報を主記憶装置に格納して
    、該中央処理装置に割込みを発生させる手段とを有する
    ことを特徴とするプログラム・デバッグ装置。
  3. (3)上記割込み発生手段は、採取された命令実行事象
    情報と記憶装置アクセス情報を、メモリに登録しておい
    た事象情報と比較する際に、アドレス変換モード/非ア
    ドレス変換モード、仮想計算機動作モード/仮想計算機
    制御プログラム動作モード、空間識別子等の中央処理装
    置動作モードが予め設定された中央処理装置の動作モー
    ドと一致するか否かを判定することを特徴とする特許請
    求の範囲第2項記載のプログラム・デバッグ装置。
  4. (4)上記メモリへの事象情報の書込みは、主記憶装置
    上のデータをメモリに転送することにより行うことを特
    徴とする特許請求の範囲第2項記載のプログラム・デバ
    ッグ装置。
  5. (5)上記命令実行事象の監視動作の開始、終了および
    上記メモリへの事象情報の書込みは、中央処理装置また
    は外部からの信号により制御されることを特徴とする特
    許請求の範囲第2項記載のプログラム・デバッグ装置。
JP60003061A 1985-01-11 1985-01-11 プログラム・デバツグ方法および装置 Pending JPS61161557A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60003061A JPS61161557A (ja) 1985-01-11 1985-01-11 プログラム・デバツグ方法および装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60003061A JPS61161557A (ja) 1985-01-11 1985-01-11 プログラム・デバツグ方法および装置

Publications (1)

Publication Number Publication Date
JPS61161557A true JPS61161557A (ja) 1986-07-22

Family

ID=11546809

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60003061A Pending JPS61161557A (ja) 1985-01-11 1985-01-11 プログラム・デバツグ方法および装置

Country Status (1)

Country Link
JP (1) JPS61161557A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6317610A (ja) * 1986-07-10 1988-01-25 株式会社クボタ 乗用型芝刈り機の集草容器支持構造
CN101493782A (zh) * 2008-01-23 2009-07-29 松下电器产业株式会社 虚拟多处理器系统

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6317610A (ja) * 1986-07-10 1988-01-25 株式会社クボタ 乗用型芝刈り機の集草容器支持構造
JPH0437684B2 (ja) * 1986-07-10 1992-06-22 Kubota Kk
CN101493782A (zh) * 2008-01-23 2009-07-29 松下电器产业株式会社 虚拟多处理器系统
JP2009175960A (ja) * 2008-01-23 2009-08-06 Panasonic Corp 仮想マルチプロセッサシステム

Similar Documents

Publication Publication Date Title
US5680599A (en) Program counter save on reset system and method
EP0111952B1 (en) Verification of a processor architecture having a partial instruction set
US5146569A (en) System for storing restart address of microprogram, determining the validity, and using valid restart address to resume execution upon removal of suspension
JPS61161557A (ja) プログラム・デバツグ方法および装置
JPS60159951A (ja) 情報処理装置におけるトレ−ス方式
JP2552738B2 (ja) データ処理装置
JPH09146782A (ja) ジョブ間データ引き継ぎにおける異常発生時の対応方法
JPH09244912A (ja) 情報処理装置プログラムの試験方式
JPS61204703A (ja) エンジン制御コンピユ−タシステムの開発装置
JP2786215B2 (ja) 再開処理制御方式
JP2793386B2 (ja) 電子計算機の演算エラー情報保持装置
JPH0434626A (ja) エラーロギング方法
JPS59172044A (ja) 命令制御方式
JPS62237533A (ja) デ−タ処理装置
JPH04181331A (ja) 命令リトライ方式
JP2684966B2 (ja) 入出力処理装置のデバッグ装置
JPH0438011B2 (ja)
JPS63310040A (ja) デ−タ採取方式
JPS5855529B2 (ja) デ−タ処理装置のエラ−処理方式
JPH05143422A (ja) 更新後ジヤーナル管理方式
JPH0578052B2 (ja)
JPH0395634A (ja) 計算機システム再起動制御方式
JPS6240550A (ja) プログラムデバツク装置
JPH07295807A (ja) マイクロプログラム制御装置
JPS6227421B2 (ja)