JPS6042968B2 - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPS6042968B2
JPS6042968B2 JP53012593A JP1259378A JPS6042968B2 JP S6042968 B2 JPS6042968 B2 JP S6042968B2 JP 53012593 A JP53012593 A JP 53012593A JP 1259378 A JP1259378 A JP 1259378A JP S6042968 B2 JPS6042968 B2 JP S6042968B2
Authority
JP
Japan
Prior art keywords
instruction
address
program
base
trace
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.)
Expired
Application number
JP53012593A
Other languages
English (en)
Other versions
JPS54105939A (en
Inventor
弘 発田
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
Nippon Electric Co 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP53012593A priority Critical patent/JPS6042968B2/ja
Publication of JPS54105939A publication Critical patent/JPS54105939A/ja
Publication of JPS6042968B2 publication Critical patent/JPS6042968B2/ja
Expired legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Description

【発明の詳細な説明】 本発明は情報処理装置に関し、特に情報処理装置にお
けるプログラムデバッグの効率を改善する技術に関する
一般にベースアドレスと相対アドレスを用いる情報処
理装置においては、ベースアドレスを格納するベースレ
ジスタからベースアドレスが取り出され、命令語に含ま
れる相対アドレスと演算(通常は加算)されて実メモリ
のアドレスが作られる。
このアドレスは、1つのプログラム実行中も複数必要な
ので、複数のベースレジスタが用いられかつ通常はまと
まつた機能ブロック毎に異なるベースアドレスが用いら
れることが多い。 また、情報処理装置は、情報処理装
置に用いられるプログラムの正しさを検査して修正する
プログラムデバッグを行う際の効率を改善するために種
々の機能を有していて、この1つの機能が第1図に示す
トレースモードである。
第1図に示すトレースモードにおいて、トレースモード
を動作するトレース対象プログラム1の一命令が実行さ
れるたびにトレースプログラム2へのジャンプ(プログ
ラム割込みを含む)が自動的に発生し、トレースプログ
ラム2はその命令の実行結果やアドレスなどを格納ある
いは分析してプログラムの誤りの検出、プログラムの異
常が起つたときの原因究明のための情報を提供するなど
の機能をもつている。この場合、必要な情報の格納や分
析が終了すると、トレースプログラム2からトレース対
象プログラム1に制御が戻され、そこで1命令を実行後
に再びトレースプログラム2に戻り、以下同じ動作をく
り返す。このようにして、トレースプログラム2に切替
わるとトレースモードは自動的に解除され通常の速度で
トレースプログラム2が実行される。しカルながら、ト
レースの対象となるプログラムは、一命令毎にトレース
プログラム2の処理が割込むので、通常のモードで実行
される場合に比較して非常に長い時間を必要とし、トレ
ースプログラム2のステップ数をNとすればN十1倍の
時間を必要とする。 このため、大きなプログラムをト
レースモードでデバッグする際に、全体をトレースモー
ドで実行するとデバッグに要する時間が長くかかりすぎ
て効率が著しく低下する。
これを避けるためには、すでにデバッグの完了した部分
などはトレースモードでなく通常の動作モードで実行さ
せることが有利であり、1つのプログラムの一部区間の
みをトレースモードて実行するよう指定する機能が有効
である。このような指定の方法としては、(1)トレー
スモードをセットおよびリセットする命令をプログラム
中に挿入する。(2)トレースモードで動作すべき区間
を指定するための特別のレジスタを設け、このレジスタ
にトレースモードで動作すべき区間の両端のアドレスを
セットするなどが用いられていた。しかしながら、前記
(1)の方法の場合には、プログラムデバツク終了後は
、これらの命令を除去するか命令が無効になるようにハ
ードウェアモードをセットする機能が必要である。この
ように、命令を除去する場合には、外部から簡単に変更
できないので、プログラムの変更が必要で、また命令が
無効になるようにハードウェアモードをセットした場合
には、1部プログラムにのみをトレースモードで動作さ
せることが不可能になるなどの不便があつた。また前記
(2)の方法の場合には、トレースしたい区間が多数あ
るときそれぞれに対してアドレス指定のレジスタが必要
となり、多くすればする程にコスト高およびトレース区
間判定のためのアドレスのチェックに要するハードウェ
ア処理時間がのびるなどの欠点があつた。本発明の目的
は、上記従来の欠点を除去するためにコスト、性能への
影響が非常に少い方法により多数の区間に対して部分的
にトレースモードでプログラムを実行する機能を有する
情報処理装置を提供することにある。
本発明は、ベースアドレスと該ベースアドレスからの相
対アドレスを加算することにより実際のアクセスに用い
るメモリアドレスを生成する方式の情報処理装置におい
て、前記ベースアドレスに付随した情報ビットによりト
レースモードで動作するかを指定し、前記ベースアドレ
スを使用する命令に対してのみ前記トレースモードを有
効にすることを特徴とする情報処理装置を提供すること
にある。
次に本発明の実施例について図面を参照して説明する。
第2図AおよびBは情報処理装置の部分的構成図を示す
。第2図Aは本発明を実施したコンピュータの命令アド
レスレジスタ10を示し、この命令アドレスレジスタ1
0は指示部10aおよびアドレス部10bから構成され
ている。第2図Bは本発明を実施したコンピュータのベ
ースレジスタ群11の構造を示し、このベースレジスタ
群11はベースレジスタ12,13,14・・・ 1(
N一1)、1Nから構成されている。このようなベース
レジスタ12は、トレースモードの指定を格納する指示
部12aおよびアドレス状報を格納するベースアドレス
12b部から構成され、ベースレジスタ13〜1Nも同
様に指示部13a〜1Naおよびベースアドレス部12
b〜1Nbから構成され、Bはベースレジスタ14のベ
ースアドレス部14b..R2はベースレジスタ14を
それぞれ示している。なお、このようなベースレジスタ
“群11は、汎用レジスタと兼ねる場合もある。第2図
Cは本発明を実施したコンピュータの命令語20の形式
を示し、20aは命令コードで、仮にベースレジスタ1
4を指定しそのレジスタ14に含まれているベースアド
レス部Bからの相対アドレス(仮りにDとする)を指定
したことを示し、この場合実際にアクセスされるアドレ
スはB+Dとなる。上記のような本発明に係る情報処理
装置においては、ベースレジスタ14の指示部14aに
トレ”−スモードが指示されていた(たとえばビットが
゜“1゛になつていた)とすれば、この命令実行後にト
レースプログラムに制御を移すために、プログラム割込
を発生し、もし指示されていなければ(たとえばビット
が“゜0゛になつていれば)引き続き次の命令実行に移
る。
また、ブランチ命令の時には、B+Dは次に実行すべき
命令語のアドレスを示しているので、命令アドレスレジ
スタ10のアドレス部10bに命令語のアドレスが格納
される。さらに命令アドレスレジスタ10の指示部10
aには、ベースレジスタ14の指示部14aが格納され
る。この場合、命令語は、命令アドレスレジスタ10の
指定に従つて取り出されるが、この時に命令アドレスレ
ジスタ10の指示部10a力外レースモードを指示して
いたら、その命令実行後にトレースプログラムへの割込
みを発生させる。前記命令アドレスレジスタ10の指示
部10aの内容は、別のブランチ命令などにより新しい
指示が格納されるまで同一内容を保持することにより、
ブランチ命令後の一連の命令をトレースモードで実行で
きるようにする。このような、ブランチ命令がブランチ
先のアドレスを得るために用いたベースレジスタ12の
指示部12a〜1Naにトレースモード指定があつた場
合、このブランチ命令実行直後にプログラム割込みを発
生させるか否かは、情報処理装置の設計思想に応じてい
ずれに設定してもよい。第3図は第2図AおよびBに示
す装置に情報を格納する場合の詳細図でベースレジスタ
群11は、ベースレジスタ12,13,14,15,1
6,17から構成され、これらのベースレジスタ12〜
17は指示部12a〜17aおよびベースアドレス部1
2b〜17bから構成されている。
前記指示部12a,13a,15a,17aにはトレー
スモードが指示されてなくビットが“゜0゛になつてい
て、また指示部14a,16aにはトレースモードが指
示されていてビットが゜“1゛になつている。またメモ
リ21には、プログラムA,B,CおよびデータA,b
,cを有し、このようなメモリ21と前記ベースレジス
タ群11は鎖線のように対応している。このようなメモ
リ21は、プログラムA,B,Cの中の特定のプログラ
ム(第3図ではC)のみをトレースモードで実行する。
これは、その特定のプログラムのベースアドレスを含む
ベースレジースタ(第3図ではベースレジスタ14a)
にトレースモードを指示することによる。またメモリ2
1は、データA,b,cの中の特定のデータ(第3図で
はa)にアクセスする命令に対してのみトレースモード
を有効にする。これは、その特定のデータのベースアド
レスを含むベースレジスタ(第3図ではベースレジスタ
16a)にトレースモードを指示することによる。この
ようなベースレジスタ12〜17の指示部12a〜17
aおよび命令アドレスレジスタ10の指示部10aへの
情報の格納は、パネルなどのスイッチから出来るように
してもよいし、また特殊な制御命令を用いてプログラム
により格納できるようにしてもよい。この場合、指示部
12a〜17aおよび指示部10aは、ベースレジスタ
あるいは命令アドレスレジスタに含まれるように構成し
てもよく、また一対一に対応した別のレジスタに構成し
てもよい。また、以上説明したような機能全体を有効ま
たは無効にする制御を外部の手動スイッチまたはプログ
ラム指定によつて行うことも容易である。この場合、プ
ログラムで機能を有効または無効にする制御を行なう場
合は、マルチプログラム環境下においてもデバッグした
い特定のプログラムを実行する時のみ選択的に機能を働
かせることができる。第4図はセグメンテーシヨンを行
なつている場合で、セグメントデスクリスタ22は指示
部22aおよびセグメントベースアドレス22bを有し
、みたメモリ23には、プログラムまたはデータの機能
的単位であるセグメントが格納されている。
このようなセグメンテーシヨンを行なつている情報処理
装置では、セグメントのベースアドレス22bなどを指
定するためにセグメントデスクリプタ22が用いられ、
各命令語はセグメント内の相対アドレスを有している。
この場合、セグメントデスクリプタは、前述の第3図に
示すトレースモードの場合のベースアドレスと同様に各
命令の使用するアドレスを生成するために用いられる。
したがつて、セグメントデスクリプタ22の中にトレー
スモードの指示部22aを設けることにより、前述の第
3図に示す実施例の場合と全く同じ効果を実施すること
ができる。また、セグメントデスクリプタ22を高速に
とり出す目的でこれをレジスタに格納することが多いが
、この場合は第3図に示す実施例と同じくレジスタにト
レースモード指示部を付随させる方式を用いることがで
きる。このような本発明に係る情報処理装置によれば、
トレースモードの指定をベースアドレス毎に行えるよう
にして、トレースモードが指定されたベースアドレスを
使用したときその命令実行後にトレースプログラムへ制
御が移行し、ベースレジスタの数と同等の区間を同時に
かつ個個にトレースモードで動作するか否かを制御でき
る。
したがつて、デバッグするプログラムのどの部分がどの
ベースアドレスあるいはどのベースレジスタを用いるか
を知つていれば、その部分のみトレースモードで実行す
ることが容易にできる。本発明は以上説明したようにベ
ースレジスタあるいはセグメントデスクリプタなどベー
スアドレスに対応した部分にトレースモード指示情報を
設けるように構成することにより、ベースアドレスaを
使用する命令のみにトレースモードを有効にすることが
できプログラムデバツクの効率を改善する効果がある。
【図面の簡単な説明】
図面は本発明に係る情報処理装置を示し、第1図はトレ
ースモードの原理図、第2図AおよびBは情報処理装置
の部分的構成図、第2図Cは命令語の形式の説明図、第
3図は第2図AおよびBに示す装置に情報を格納する場
合の詳細説明図、第4図はセグメンテーシヨンを行なう
使用例の説明図である。 10・・・・・・命令アドレスレジスタ、10a・・・
・・・指示部、10b・・・・アドレス部、11・・・
・・・ベースレジスタ群、12〜1N・・・・・・ベー
スレジスタ、12a〜1Na・・・・・・指示部、12
b〜1Nb・・・・・・ベースアドレス、20・ ・・
命令語、20a・・・・・・命令コード、21,23・
・・・・メモリ、22・ ・・セグメントデスクリスタ
、22a・・・・・・指示部、22b・・・・・・セグ
メントベースアドレス。

Claims (1)

    【特許請求の範囲】
  1. 1 ベースアドレスと該ベースアドレスからの相対アド
    レスを加算することにより実際のアクセスに用いるメモ
    リアドレスを生成する方式の情報処理装置において、前
    記ベースアドレスに付随した情報ビットによりトレース
    モードで動作するかを指定し、前記ベースアドレスを使
    用する命令に対してのみ前記トレースモードを有効にす
    ることを特徴とする情報処理装置。
JP53012593A 1978-02-07 1978-02-07 情報処理装置 Expired JPS6042968B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP53012593A JPS6042968B2 (ja) 1978-02-07 1978-02-07 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP53012593A JPS6042968B2 (ja) 1978-02-07 1978-02-07 情報処理装置

Publications (2)

Publication Number Publication Date
JPS54105939A JPS54105939A (en) 1979-08-20
JPS6042968B2 true JPS6042968B2 (ja) 1985-09-26

Family

ID=11809638

Family Applications (1)

Application Number Title Priority Date Filing Date
JP53012593A Expired JPS6042968B2 (ja) 1978-02-07 1978-02-07 情報処理装置

Country Status (1)

Country Link
JP (1) JPS6042968B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS646766A (en) * 1987-06-29 1989-01-11 Dengen Kk Probe of clamp type ammeter

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0731615B2 (ja) * 1986-04-18 1995-04-10 日本電気株式会社 情報処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS646766A (en) * 1987-06-29 1989-01-11 Dengen Kk Probe of clamp type ammeter

Also Published As

Publication number Publication date
JPS54105939A (en) 1979-08-20

Similar Documents

Publication Publication Date Title
US4794522A (en) Method for detecting modified object code in an emulator
EP0327195B1 (en) Processor simulation
JPH0782441B2 (ja) シミユレーシヨン方法
US4782443A (en) Main storage control system for virtual computing function system with plural address modes in main storage access operations
JPH0223431A (ja) 割込み処理システム
KR920004279B1 (ko) 포인터레지스터를 구비한 마이크로프로세서
US6347368B1 (en) Microcomputing device for exchanging data while executing an application
US4028670A (en) Fetch instruction for operand address calculation
US5481705A (en) Method for executing a program with branch-to modifying instructions
JPS6042968B2 (ja) 情報処理装置
JPH0668724B2 (ja) シミユレーシヨン方法
JPH1040103A (ja) レジスタ・リマップ構造を有する情報処理システム及び方法
JP3461185B2 (ja) ロードモジュールへのソースコード行番号登録方法および装置
SU849218A1 (ru) Устройство дл отладки программ
JPH02197924A (ja) 中央演算処理装置
JPS60262251A (ja) マイクロプロセツサ開発支援装置
JPH0667896A (ja) シングルチップマイクロコンピュータ
JPH05173838A (ja) 命令実行過程記録システム
JP2581214B2 (ja) 論理シミュレータ
JPS63163543A (ja) 情報処理装置
JPS63217433A (ja) プログラム実行制御方式
JPH0259829A (ja) マイクロコンピュータ
JPS6362048A (ja) マイクロプログラム実行履歴登録方式
JPH0581068A (ja) デバツグ支援装置
JPS61269744A (ja) デバグ方式