JPH01140239A - 命令実行アドレス保存処理方式 - Google Patents
命令実行アドレス保存処理方式Info
- Publication number
- JPH01140239A JPH01140239A JP62298586A JP29858687A JPH01140239A JP H01140239 A JPH01140239 A JP H01140239A JP 62298586 A JP62298586 A JP 62298586A JP 29858687 A JP29858687 A JP 29858687A JP H01140239 A JPH01140239 A JP H01140239A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- address
- register
- save
- undefined
- 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
- 238000001514 detection method Methods 0.000 claims abstract description 5
- 238000003672 processing method Methods 0.000 claims description 2
- 230000002401 inhibitory effect Effects 0.000 claims 1
- 238000004458 analytical method Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000006378 damage Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
Landscapes
- Executing Machine-Instructions (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
(1)発明の属する技術分野
本発明は、プロセッサが未定義命令を実行した時の障害
解析に必要な命令実行アドレスを保存する命令実行アド
レス保存処理方式に関する。
解析に必要な命令実行アドレスを保存する命令実行アド
レス保存処理方式に関する。
(2)従来の技術
未定義命令の実行は、プログラムのリンク時のアドレス
解決ミス、プログラム実行エリア破壊。
解決ミス、プログラム実行エリア破壊。
パッチ作成時のアドレスミス等により1作成者の想定外
のアドレスの命令を実行する際に発生する。
のアドレスの命令を実行する際に発生する。
従来、未定義命令実行時には、プログラムエラー割込に
よりソフトウェアに通知し、ソフトウェアの障害処理ル
ーチン走行により、未定義命令実行時の情報を取得し、
障害原因の調査を行っていた。
よりソフトウェアに通知し、ソフトウェアの障害処理ル
ーチン走行により、未定義命令実行時の情報を取得し、
障害原因の調査を行っていた。
しかし、未定義命令の1つ前に実行した命令が分岐命令
であった場合には、どのアドレスから分岐してきたか不
明であるため、未定義命令実行に至った原因の解析が困
難であった。
であった場合には、どのアドレスから分岐してきたか不
明であるため、未定義命令実行に至った原因の解析が困
難であった。
(3)発明の目的
本発明の目的は、未定義命令実行時に命令実行アドレス
と、少なくとも、その1つ前に実行した命令のアドレス
を保存することにより、未定義命令実行に至った原因の
解析を容易にすることにある。
と、少なくとも、その1つ前に実行した命令のアドレス
を保存することにより、未定義命令実行に至った原因の
解析を容易にすることにある。
(4)発明の構成
〔発明の特徴と従来技術との差異〕
未定義命令の実行は1分岐先のアドレス計算に誤りがあ
り、プログラム制作者の予期せぬアドレスに分岐するた
めに発生することが多い。この場合、従来、未定義命令
実行時にはプログラムエラー割込によりソフトウェアに
通知していたが、プロセッサは実行中の命令アドレスし
か保持していないため、未定義命令アドレスの取得しか
できなかった。本発明は、命令実行時に未定義命令実行
原因の解析を容易にするため、命令実行アドレスと、少
なくとも、その1つ前に実行した命令アドレスを命令ア
ドレス退避レジスタに保存すべく。
り、プログラム制作者の予期せぬアドレスに分岐するた
めに発生することが多い。この場合、従来、未定義命令
実行時にはプログラムエラー割込によりソフトウェアに
通知していたが、プロセッサは実行中の命令アドレスし
か保持していないため、未定義命令アドレスの取得しか
できなかった。本発明は、命令実行時に未定義命令実行
原因の解析を容易にするため、命令実行アドレスと、少
なくとも、その1つ前に実行した命令アドレスを命令ア
ドレス退避レジスタに保存すべく。
命令実行時に逐次、命令アドレス退避レジスタを更新し
、プロセッサが未定義命令を実行すると命令退避レジス
タの更新についてはその更新を抑止することを特徴とす
る。
、プロセッサが未定義命令を実行すると命令退避レジス
タの更新についてはその更新を抑止することを特徴とす
る。
図に本発明の一実施例を示す。図において。
10は命令を格納するメモリ、 101. 102.
103は命令、20はメモリ10の中に格納された命
令iot、 102. 103を実行するプロセッサ
、201は実行する命令のアドレスを保持するアドレス
レジスタ、202は命令の実行アドレスを作成する命令
アドレス作成部、203はアドレスレジスタ201が示
すアドレスの命令が実行されるとアドレスレジスタ20
1の内容の複製が格納されるアドレス退避入レジスタ、
204はアドレスレジスタ201が示す命令が実行され
ると退避Aレジスタ203の内容の複製が格納されるア
ドレス退避Bレジスタ、206はレジスタ203. 2
04の更新制御部、205は未定義命令が実行された時
に更新制御部206に対し。
103は命令、20はメモリ10の中に格納された命
令iot、 102. 103を実行するプロセッサ
、201は実行する命令のアドレスを保持するアドレス
レジスタ、202は命令の実行アドレスを作成する命令
アドレス作成部、203はアドレスレジスタ201が示
すアドレスの命令が実行されるとアドレスレジスタ20
1の内容の複製が格納されるアドレス退避入レジスタ、
204はアドレスレジスタ201が示す命令が実行され
ると退避Aレジスタ203の内容の複製が格納されるア
ドレス退避Bレジスタ、206はレジスタ203. 2
04の更新制御部、205は未定義命令が実行された時
に更新制御部206に対し。
更新を停止するよう指示を行う未定義命令検出制御部、
207はアドレスレジスタ201の内容をメモリに伝え
るアドレスバスである。
207はアドレスレジスタ201の内容をメモリに伝え
るアドレスバスである。
図を用い命令実行の動作例について説明する。
図において、プロセッサ20は命令101をフェッチし
実行するとき、アドレスレジスタ201には命令101
のアドレスが格納されている。命令101を実行すると
、アドレス退避入レジスタ203の内容がアドレス退避
Bレジスタ204へ複写されると同時にアドレスレジス
タ201の内容が退避Aレジスタ203に複写される。
実行するとき、アドレスレジスタ201には命令101
のアドレスが格納されている。命令101を実行すると
、アドレス退避入レジスタ203の内容がアドレス退避
Bレジスタ204へ複写されると同時にアドレスレジス
タ201の内容が退避Aレジスタ203に複写される。
次に、プロセ・ノサ20が命令102を実行するとした
とき命令アドレス作成部202により作成された命令1
02のアドレスがアドレスレジスタ201に設定され、
201の内容がアドレス退避入レジスタ203に複写さ
れると同時にアドレス退避入レジスタ203の内容がア
ドレス退避Bレジスタ204に複写される。このように
して。
とき命令アドレス作成部202により作成された命令1
02のアドレスがアドレスレジスタ201に設定され、
201の内容がアドレス退避入レジスタ203に複写さ
れると同時にアドレス退避入レジスタ203の内容がア
ドレス退避Bレジスタ204に複写される。このように
して。
命令が実行される毎に実行された命令のアドレスはアド
レス退避入レジスタ203に、その1つ前に実行された
命令のアドレスはアドレス退避Bレジスタ204に順次
格納される。この様にして、命令103が実行されると
アドレス退避入レジスタ203には命令103のアドレ
スが、アドレス退避Bレジスタ204には命令102の
アドレスが格納される。
レス退避入レジスタ203に、その1つ前に実行された
命令のアドレスはアドレス退避Bレジスタ204に順次
格納される。この様にして、命令103が実行されると
アドレス退避入レジスタ203には命令103のアドレ
スが、アドレス退避Bレジスタ204には命令102の
アドレスが格納される。
今、命令103が未定義命令であるとすると未定義命令
検出制御部205は、その後、命令が実行されてもアド
レス退避入レジスタ203およびアドレス退避Bレジス
タ204の内容を更新しないよう更新制御部206に指
示する。更新制御部206は、アドレス退避入レジスタ
203およびアドレス退避Bレジスタ2040更新を抑
止する。
検出制御部205は、その後、命令が実行されてもアド
レス退避入レジスタ203およびアドレス退避Bレジス
タ204の内容を更新しないよう更新制御部206に指
示する。更新制御部206は、アドレス退避入レジスタ
203およびアドレス退避Bレジスタ2040更新を抑
止する。
ここでは、保持するアドレスを1つ前までの命令に限定
したが、過去に実行した複数命令を保持しても問題はな
い。また、アドレス退避入レジスタおよびアドレス退避
Bレジスタは、命令実行アドレストレースメモリとして
実現してもよいことは明らかである。
したが、過去に実行した複数命令を保持しても問題はな
い。また、アドレス退避入レジスタおよびアドレス退避
Bレジスタは、命令実行アドレストレースメモリとして
実現してもよいことは明らかである。
分岐命令実行により予期しないアドレスに分岐し1分岐
先の命令が未定義命令の場合、従来2分岐元アドレスが
不明であったため障害原因解析が困難であったが2本発
明によれば、未定義命令実行時に未定義命令のアドレス
と、その1つ前に実行したアドレスを知ることができる
ため、未定義命令実行に至った原因の解析が容易となる
。
先の命令が未定義命令の場合、従来2分岐元アドレスが
不明であったため障害原因解析が困難であったが2本発
明によれば、未定義命令実行時に未定義命令のアドレス
と、その1つ前に実行したアドレスを知ることができる
ため、未定義命令実行に至った原因の解析が容易となる
。
図は本発明の一実施例のブロック図である。
10・・・・・・メモリ、20・・・・・・プロセッサ
、 101゜102、 103・・・・・・命令、2
01・・・・・・アドレスレジスタ。 202・・・・・・命令アドレス作成部、203・・・
・・・アドレス退避Aレジスタ、204・・・・・・ア
ドレス退避Bレジスタ、205・・・・・・未定義命令
検出制御部、206・・・・・・更新制御部、207・
・・・・・アドレスバス。 特許出願人 日本電信電話株式会社
、 101゜102、 103・・・・・・命令、2
01・・・・・・アドレスレジスタ。 202・・・・・・命令アドレス作成部、203・・・
・・・アドレス退避Aレジスタ、204・・・・・・ア
ドレス退避Bレジスタ、205・・・・・・未定義命令
検出制御部、206・・・・・・更新制御部、207・
・・・・・アドレスバス。 特許出願人 日本電信電話株式会社
Claims (1)
- 【特許請求の範囲】 命令を格納するメモリと該メモリに格納された命令を逐
次実行するプロセッサとを有するデータ処理装置におい
て、 未定義命令検出制御部と、 実行した命令アドレスを保持するレジスタと、少なくと
もその1つ前に実行した命令のアドレスを保持するレジ
スタとを有し、 未定義命令が実行されたことにより、実行した命令のア
ドレスを保持するレジスタと、少なくとも1つ前に実行
した命令のアドレスを保持するレジスタとの夫々の更新
に関して当該更新を抑止する ことを特徴とする命令実行アドレス保存処理方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62298586A JPH01140239A (ja) | 1987-11-26 | 1987-11-26 | 命令実行アドレス保存処理方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62298586A JPH01140239A (ja) | 1987-11-26 | 1987-11-26 | 命令実行アドレス保存処理方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH01140239A true JPH01140239A (ja) | 1989-06-01 |
Family
ID=17861656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP62298586A Pending JPH01140239A (ja) | 1987-11-26 | 1987-11-26 | 命令実行アドレス保存処理方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH01140239A (ja) |
-
1987
- 1987-11-26 JP JP62298586A patent/JPH01140239A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4866665A (en) | Break points system in a software monitor where entry address of break point routing equals op code of call instruction | |
JPH0810437B2 (ja) | 仮想計算機システムのゲスト実行制御方式 | |
JPH01140239A (ja) | 命令実行アドレス保存処理方式 | |
US5819081A (en) | Method of executing a branch instruction of jumping to a subroutine in a pipeline control system | |
JPH0581070A (ja) | プログラマブルコントローラ、およびプログラマブルコントローラにおけるユーザプログラム実行方法 | |
JP3012618B1 (ja) | 被検査プログラムのデバグ方法とそのデバグ方式 | |
JPH0241532A (ja) | マイクロプロセッサの例外処理方法 | |
JPS5835648A (ja) | プログラム実行制御方式 | |
JPH0248733A (ja) | 情報処理装置 | |
JPS6270947A (ja) | デバグ割込み制御方式 | |
JP2786215B2 (ja) | 再開処理制御方式 | |
JPS5920055A (ja) | 分岐命令のリトライ方式 | |
JPS6012656B2 (ja) | リトライ制御方式 | |
JPH0772874B2 (ja) | 割込み受取り装置 | |
JPS59200356A (ja) | プログラムトレ−ス方式 | |
JPH0259829A (ja) | マイクロコンピュータ | |
JPH04264624A (ja) | プロセッサ | |
JPS6257035A (ja) | マイクロプログラム処理装置 | |
JPS6231434A (ja) | 命令アドレス制御方式 | |
JPS61290543A (ja) | エラ−発生装置 | |
JPH05173838A (ja) | 命令実行過程記録システム | |
JPS63165931A (ja) | 不連続命令フエツチアドレス情報記憶方式 | |
JPH0335323A (ja) | 命令実行制御方式 | |
JPS61187044A (ja) | 情報処理装置 | |
JPH02311947A (ja) | コプロセッサの誤り修正方式 |