JPH0287237A - Execute命令制御方式 - Google Patents

Execute命令制御方式

Info

Publication number
JPH0287237A
JPH0287237A JP63238291A JP23829188A JPH0287237A JP H0287237 A JPH0287237 A JP H0287237A JP 63238291 A JP63238291 A JP 63238291A JP 23829188 A JP23829188 A JP 23829188A JP H0287237 A JPH0287237 A JP H0287237A
Authority
JP
Japan
Prior art keywords
instruction
target
execute
cycle
event
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
JP63238291A
Other languages
English (en)
Inventor
Gakuo Asakawa
浅川 岳夫
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 JP63238291A priority Critical patent/JPH0287237A/ja
Publication of JPH0287237A publication Critical patent/JPH0287237A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)
  • Debugging And Monitoring (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔概要] 情報処理装置におけるプログラムのトレース記録時のE
XECUTE命令制御方式に関し。
二重のEXECUTE命令の実行による実行例外と2番
目のEXECLITE命令のターゲット命令の命令取出
し事象検出とが重なった場合に、後者の余分な事象記録
が行われないようにして、モニタ用ルーチンの処理at
Oを軽減することを目的とし。
EXECUTE命令の処理中にそのターゲット命令の命
令取出し事象を検出する手段と1前記検出された命令取
出し事象の信号を上記ターゲット命令の実行時まで保持
する手段と、ターゲット命令の実行を検出する手段とを
有し、上記ターゲット命令の実行時に、上記保持されて
いる命令取出し事象の信号を用いてプログラム割込み制
御を行うよう構成した。
(産業上の利用分野] 本発明は、情報処理装置におけるプログラムのトレース
記録時のEXECUTE命令制御方式に関する。
EXECUTE命令は、命令中で指定したアドレスの命
令(ターゲット命令という)を実行する命令であり、タ
ーゲット命令の実行終了後は5元のEXECUTE命令
の次位の命令に復帰する。
本発明は、このEXECUTE命令のターゲット命令が
、プログラム作成エラーにより再びEXECUTE命令
になっていた場合に、2番目のEXECUTE命令のタ
ーゲット命令が事象記録をとるプログラム割込みを生じ
ても、その事象記録が行われないようにするだめの改良
された制御技術を提供する。
〔従来の技術〕
情報処理装置の多くは、誤動作時のプログラムの診断や
性能評価などの目的で、プログラム中で実行された命令
のトレースをとるための事象記録(PERニブログラム
・イベント・レコーディング)機能をそなえている。
この事象記録機能は9種々の事象を対象に記録すること
ができるが、命令取出し事象記録(IFPERという)
の場合には、予め機能設定時にメモリ内の一定のプログ
ラム領域を指定しておいて。
指定領域内の命令がフェッチされるかどうかの命令取出
し事象を検出し、指定領域内の命令がフェッチされたと
きにプログラム割込みを発生させて事象記録ルーチンを
起動し、命令取出し事象検出を示す割込みコードを記録
する。
一方従来のEXECUTE命令制御方式では。
事象記録機能が設定されている場合、EXECUTE命
令の実行時にそのターゲット命令の命令取出し事象を検
出し、プログラム割込みを引き起こすためのベンディン
グ・ラッチを直ちにセットさせている。
ところで、プログラム中でEXECUTE命令のターゲ
ット命令が再び巳X E CU T E命令となってい
る場合がある。これは通常プログラム作成エラーに起因
しているため、実行例外としてプログラム割込みを発生
させ9プログラムを中断させるようにしている。
第4図はこのような二重のEXECUTE命令を含むプ
ログラムの例を図示したもので、lはメモリである。2
および3は、それぞれ制御レジスタのCRIOとCRI
Iであり、メモリl上で事象記録をとるプログラム領域
の上端と下端を規定するアドレスA、Bが設定されてい
る。
ここでn番地とm番地の命令がEXECUTE命令であ
り、それぞれにおいて、4はOPコード部、5はターゲ
ット命令のアドレス部を示す、この場合、n番地のEX
ECUTE命令のターゲット命令はm番地にあるEXE
CUTE命令であり。
またm番地のEXECUTE命令のターゲット命令はm
+に番地にある他の命令となっている。
第5図は、従来のパイプライン方式の情報処理装置にお
けるEXECUTE命令の制御フローを示したものであ
る。
図中の■は最初のEXECUTE命令のフロー■は2番
目のEXECUTE命令(2ND  EXECUTE)
のフローである。また各フロー中のり、A、T、B、 
 巳、Wはそれぞれパイプラインの順次のサイクル(あ
るいは処理ステージ)であり、Dは命令デコード、Aは
オペランドのアドレス演算、Tはアドレス変換9 Bは
バッファアクセス、Eは演算実行、Wは結果の書き込み
の各サイクルを表している。
EXECUTB命令自体は、■、■のように1フローで
処理される。EXECUTE命令のターゲットがまたE
XECUTE命令である場合には実行例外が示されプロ
グラム割込みを生じさせる。
すなわち、この実行例外が検出されると、■の2ND 
 EXECUTE(7)Wサイクルテ、 W  XV(
Wサイクルの!!XCEPTION VALIO)が上
がり、命令処理は中断され1割込み処理が開始される。
一方、■の2ND  EXECUTEのBサイクルで命
令取出し事象B  IFPERが検出されWサイクルで
は、プログラム割込みを発生させるPERPENDIN
Gがセットされる。
このようにEXECUTE命令が二重に実行される場合
、2番目のEXECUTE命令の実行で実行例外が検出
され、プログラム割込みが生じてEXECUTE命令の
二重実行を表す割込みコード(たとえば°“03”が用
いられる)が設定されさらに、2番目のEXECUTE
命令の実行時点でそのターゲット命令(第4図のm+に
番地の命令)の命令取出し事象の検出が行われると、プ
ログラム割込みが発生して、事象記録を表す割込みコー
ド(たとえば°“8x″が用いられる。なお“X”の値
は何でもよい)が設定される。
これらの結果、二つのプログラム割込みの割込みコード
が重なって報告される(上記の例の場合の割込みコード
は°“83°゛)ことになる。しかし実際には、2番目
のEXECUTE命令のターゲット命令が実行される前
にプログラムが中断させられるため1割込みコード“8
3″中の8X°。
の部分は余分な報告となっていた。
ラム割込みが重なると、それぞれの割込みコードが一緒
に報告され、事象記録ルーチンにより記録された。
そのため、2番目のEXECUTE命令における本来実
行されることがないターゲット命令の命令取出し事象は
、事象記録中から削除する必要があり、事象記録のモニ
タ用ルーチンがこの余分な事象記録を探し出して削除す
る処理を行っていた。
本発明は、二重のEXECUTE命令の実行による実行
例外と2番目のEXECUTE命令のターゲット命令の
命令取出し事象検出とが重なった場合に、後者の余分な
事象記録が行われないようにして、モニタ用ルーチンの
処理負担を軽減することを目的とする。
〔発明が解決しようとする課題〕
従来のEXECtJT已命令制御方式では、二重(DE
XECUTE命令の実行によるプログラム割込みと、2
番目のEXECUTE命令におけるターゲット命令の命
令取出し事象検出によるプログ(課題を解決するための
手段〕 本発明は、  EXECUTE命令のターゲット命令が
実行されたことを条件にターゲット命令の命令取出し事
象検出によるプログラム割込みを発生させるようにし、
EXECUTE命令が二重に実行される場合の実行例外
によりプログラム割込みが発生したときには32番目の
EXECUTE命令のターゲット命令の命令取出し事象
検出によるプログラム割込みは行われないようにするも
のである。
そのため本発明は、EXECUTE命令の処理中にター
ゲット命令の命令取出し事象を検出する手段と、検出さ
れた命令取出し事象を表す信号をターゲット命令の実行
時まで保持する手段と、ターゲット命令の命令取出しが
行われてターゲット命令が実行されていることを検出す
る手段とを設け、ターゲット命令が実行された時にのみ
、保持されている命令取出し事象を示す信号により、プ
ログラム割込みを起動する信号を生成する。
第1図に1本発明の原理的構成を例示的方法で示す。
第1図は本発明を適用したパイプラインの制御回路の一
部であり、11ないし14はラッチ。
15はAND回路、16はOR回路を示す。
ラッチ11人力のB  [FPERは、EXECUTE
命令を実行するフローのBサイクルで出力される命令取
出し事象検出信号であり、Bサイクルの最後に、クロッ
クをゲートするタイミング信号B  RELEASEに
よりラッチ11にセットされて保持される。
ラッチ12出力のW  EX−PERは、EXECLJ
TE命令のフローのEサイクルの最後に、タイミング信
号E−RELEASEにより、ラッチ11出力のB  
IFRERをラッチ12に取り込んで保持した出力であ
る。
ラッチ13出力(7)W  EX−TARGET−IF
PERは、EXECUTE命令ノターケット命令のフロ
ーのEサイクルの最後に、タイミング信号E  REL
EASEでラッチ12出力のWEX  PERを取り込
んで保持した出力である。
AND回路15の一方の入力W  EXECTAGは、
ターゲット命令のフローのWサイクルで出力され、その
実行された命令がEXECUTE命令のターゲットであ
ることを示す。
W  EX−TARGET  IFPERとWEXEC
TAGの二つの信号は、AND回路15で一致をとられ
、結果の信号はラッチ14に保持されるとともに、OR
回路16の一方の入力に与えられる。
OR回路16は、AND回路15とラッチ14の各出力
の論理和をとり、事象記録を要求するため、PERPE
NDINGを出力し、プログラム割込みを行わせる。
〔作用〕
第1図に示した本発明の原理的構成の作用を第2図のフ
ローを用いて説明する。
■のEXECUTE命令のフローのBサイクルで検出さ
れたターゲット命令の命令取出し事象検出信号B  I
FPERは、■に示すようにWサイクルでラッチ12に
保持され、W  EX  PERとなる。
■のターゲット命令のDサイクルは、■のEXECUT
E命令のフローのWサイクルのタイミングで開始され1
次のAサイクルで■に示すようにEXECUTE命令の
ターゲットであることを表す信号W  EXECTAG
を出力し、AND回路15の一方の入力に印加する。
■のターゲット命令のEサイクルでは、ラッチ12の出
力信号W  EX  PERを取り込んでラッチ13に
、W−EX  TARGET−IFPERをセットする
。次のWサイクルで、AND回路154;!W  EX
  TARGET  I FPERとW−EXECTA
Gとの一致をとり、■(7)PER−PENDINGを
セントシ、プログラム割込みを行う。
これにより、EXECUTE命令のBサイクルでターゲ
ット命令についての命令取出し事象が検出されていても
、ターゲット命令が実行されなければW  E)lTA
RGET−I FPERf)<生成されず、PERPE
NDINGをセットできないため、ターゲット命令の命
令取出し事象の検出結果でプログラム討込みが行われる
ことはない。
〔実施例〕
第3図に本発明の1実施例によるEXECUTE命令制
御のフローを示す。この第3図のフローは、第2図のフ
ローにおいてEXECUTE命令のターゲット命令が再
びターゲット命令であった場合のものである。
第3図の■は最初のEX−ECUTE命令、■は■のE
XECUTE命令のターゲットのEXECtJTE命令
、■は二重EXECUTE命令の検出信号のフロー、■
は■の已XECUTE命令のターゲット命令についての
命令取出し事象検出信号B  IFPERのフローであ
る。
■のEX已CUTE命令のTサイクルからEサイクルに
かけてターゲット命令のフェッチサイクルI、IT、I
Bが実行され、■のEXECUTE命令がターゲット命
令として取り出されて実行される。
■のEXECUTE命令のAサイクルで■の二重EXE
CUT已命令検出が行われ、検出信号EX  EXがセ
ットされる(検出回路は既存のものが使用される)、こ
の検出信号EX  EXは、■のWサイクルにおいて実
行例外を示す制御信号PROCESS−5WITCII
−GOをセットし、プログラム割込みが行われる。
一方、■のEXECUTE命令のBサイクルでターゲッ
ト命令の命令取出し事象検出が行われ。
■の検出信号B  IFPERが生成される。しかし、
■のWサイクルで二重EXECUTE命令検出による実
行例外のために、 PROC[!5S−5WITCH−
G。
がセットされるときは第1図のラッチ13に対するセッ
トを行わず、W  EX  TARGET  IFPE
Rは生成されないようにしておくことにより、PERP
ENDINGの生成は阻止され。
2番目のEXECUTE命令のターゲット命令について
の命令取出し事象報告は行われない。
他方、第3図において■のEXECUTE命令が最初の
EXECUTE命令である場合には、■のPROCES
S−3剖TCH−Goは生成されず、実行例外の割込み
は行われないので第2図で説明したようにターゲット命
令についてPERPENDINGが生成される。
16:OR回路 〔発明の効果] 本発明によれば、EXECUTE命令の二重実行時に2
番目のEXECUTE命令のターゲット命令については
命令取出し事象検出の報告が阻止されるため、余分な事
象記録がとられず、事象記録のモニタ用ルーチンによる
削除処理も不要となって5処理負担を著しく軽減するこ
とができる。

Claims (1)

  1. 【特許請求の範囲】 EXECUTE命令の処理中にそのターゲット命令の命
    令取出し事象を検出する手段と、前記検出された命令取
    出し事象の信号を上記ターゲット命令の実行時まで保持
    する手段と、ターゲット命令の実行を検出する手段とを
    有し、 上記ターゲット命令の実行時に、上記保持されている命
    令取出し事象の信号を用いてプログラム割込み制御を行
    うことを特徴とするEXECUTE命令制御方式。
JP63238291A 1988-09-22 1988-09-22 Execute命令制御方式 Pending JPH0287237A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63238291A JPH0287237A (ja) 1988-09-22 1988-09-22 Execute命令制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63238291A JPH0287237A (ja) 1988-09-22 1988-09-22 Execute命令制御方式

Publications (1)

Publication Number Publication Date
JPH0287237A true JPH0287237A (ja) 1990-03-28

Family

ID=17028006

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63238291A Pending JPH0287237A (ja) 1988-09-22 1988-09-22 Execute命令制御方式

Country Status (1)

Country Link
JP (1) JPH0287237A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013527534A (ja) * 2010-05-24 2013-06-27 クアルコム,インコーポレイテッド 命令としてデータ値を評価するシステムおよび方法
EA025086B1 (ru) * 2009-06-11 2016-11-30 Католике Университейт Лёвен, К.У. Лёвен Р Энд Д Производные индоламида и родственные соединения для использования при лечении нейродегенеративных заболеваний

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EA025086B1 (ru) * 2009-06-11 2016-11-30 Католике Университейт Лёвен, К.У. Лёвен Р Энд Д Производные индоламида и родственные соединения для использования при лечении нейродегенеративных заболеваний
EA025086B9 (ru) * 2009-06-11 2017-01-30 Католике Университейт Лёвен, К.У. Лёвен Р Энд Д Производные индоламида и родственные соединения для использования при лечении нейродегенеративных заболеваний
JP2013527534A (ja) * 2010-05-24 2013-06-27 クアルコム,インコーポレイテッド 命令としてデータ値を評価するシステムおよび方法
JP2015133129A (ja) * 2010-05-24 2015-07-23 クアルコム,インコーポレイテッド 命令としてデータ値を評価するシステムおよび方法
US9361109B2 (en) 2010-05-24 2016-06-07 Qualcomm Incorporated System and method to evaluate a data value as an instruction

Similar Documents

Publication Publication Date Title
EP0537309B1 (en) System and method for preserving source instruction atomicity in translated program code
CN107577593B (zh) 使用执行单一步骤来诊断编码
JPH04223532A (ja) 改良されたプロセッサ
KR101249693B1 (ko) 서브루틴 복귀 메카니즘 선택
JP3206641B2 (ja) マイコンシステムのデバッグ方法、デバッグ装置及びデバッグプログラムを記録した記録媒体
JPH0287237A (ja) Execute命令制御方式
US5283891A (en) Error information saving apparatus of computer
JP2531791B2 (ja) フエッチアクセス時の異常処理方法
JP2793386B2 (ja) 電子計算機の演算エラー情報保持装置
EP0655686B1 (en) Retry control method and device for control processor
JP2786215B2 (ja) 再開処理制御方式
JP2793396B2 (ja) 電子計算機の演算ステータス保持装置
KR950005523B1 (ko) 프로그램어블 로직 콘트롤러의 스텝 런 처리방법
JPH01125633A (ja) マルチプロセッサシステムのデバッグ法
JPS60124746A (ja) デ−タ処理装置
JP3130421B2 (ja) プログラム解析方法および装置
JPS5848150A (ja) 障害波及防止方式
JPS6019016B2 (ja) 命令再試行方式
JPH01145740A (ja) マルチプロセス用エミユレータ
JPS604492B2 (ja) 計算機
JPS6270947A (ja) デバグ割込み制御方式
JPS62237533A (ja) デ−タ処理装置
JPH06295252A (ja) 計算機
JPH03144733A (ja) マイクロプログラム制御装置
JPS63228237A (ja) プログラムデバツグ方式