JPH0831035B2 - プログラム例外処理方式 - Google Patents

プログラム例外処理方式

Info

Publication number
JPH0831035B2
JPH0831035B2 JP18606488A JP18606488A JPH0831035B2 JP H0831035 B2 JPH0831035 B2 JP H0831035B2 JP 18606488 A JP18606488 A JP 18606488A JP 18606488 A JP18606488 A JP 18606488A JP H0831035 B2 JPH0831035 B2 JP H0831035B2
Authority
JP
Japan
Prior art keywords
exception
code
circuit
interrupt
output
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 - Fee Related
Application number
JP18606488A
Other languages
English (en)
Other versions
JPH0236422A (ja
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.)
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 JP18606488A priority Critical patent/JPH0831035B2/ja
Publication of JPH0236422A publication Critical patent/JPH0236422A/ja
Publication of JPH0831035B2 publication Critical patent/JPH0831035B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Description

【発明の詳細な説明】 〔概要〕 種々のプログラム例外条件を検査し、異常があった場
合にはプログラム割込みの種別を割込みコードにしてソ
フトウェアに報告するプログラム例外処理方式に関し、 ハードウェアを改造させることなく、新しい割込みコ
ードの定義や割込みコードの変更、増加を可能とするこ
とを目的とし、 パイプライン制御方式の情報処理装置のプログラム例
外を検出し、異常があったときに割込みコードを発生し
てソフトウェアへ報告するプログラム例外処理方式にお
いて、最終ステージの例外検出回路の出力信号を抑止し
て割込みを抑止する抑止手段と、前記抑止手段により抑
止される信号から例外の有無をチェックし、例外検出時
に例外処理用マイクロプログラムにブランチするブラン
チ手段と、前記マイクロプログラムの特定フィールドの
コードを前記割込みコードとして出力する割込みコード
出力手段と、前記マイクロプログラムにより前記抑止手
段による抑止を解除して前記例外検出回路の出力信号を
出力させ、前記割込みコード出力手段からの割込みコー
ドによる割込みを行なわせる割込み手段とから構成す
る。
〔産業上の利用分野〕
本発明はプログラム例外処理方式に係り、特に種々の
プログラム例外条件を検査し、異常があった場合にはプ
ログラム割込みの種別を割込みコードにしてソフトウェ
アに報告するプログラム例外処理方式に関する。
情報処理装置の中央処理装置(CPU)では命令の実行
の際、ソフトウェアのプログラムミス又は使用者の与え
た不当データによる種々のプログラム例外条件を検査
し、異常があった場合にはプログラム割込みを起し、例
外割込みの種別を割込みコードにしてソフトウェアへ報
告しなければならない。従って、上記の割込みコードの
発生が重要となる。
〔従来の技術〕
第5図は従来のプログラム例外処理方式の一例のブロ
ック図を示す。同図中、1〜7は本来の命令処理のため
の回路の一部で、1は命令コードレジスタ,2は制御記憶
(CS)回路,3〜7は夫々パイプラインタグ(制御フリッ
プフロップ群)である。命令読出しによって得られた命
令コードは命令コードレジスタ1に一時記憶された後、
CS回路2に供給されて対応するマイクロプログラムを読
み出させ、パイプラインタグ3〜7に順次流す。
この情報処理装置はパイプライン制御方式にて動作を
行なう装置であり、上記のタグ3〜7により図示してい
ない各ステージの回路を順に制御することにより、命令
が実行される。
他方、8〜36は例外処理のための回路で、8は命令読
出し例外検出回路,9は命令例外,特権例外検出回路,10
はオペランド(OP)アドレス例外検出回路,11はOPアク
セス例外検出回路,12は演算例外検出回路であり、これ
らの例外検出回路8〜12はハードウェアによって所定の
例外を検出し、その検出信号をコード化して出力する論
理回路で、その出力例外コードは例外コードレジスタ2
5,26,28,30,32,34,36でパイプラインの各ステージと共
に伝送される。
また、命令読出し例外検出回路8の出力信号はフリッ
プフロップ(以下F/Fと記す)13,14,OR回路15,F/F16,OR
回路17,F/F18,OR回路19,F/F20,OR回路21,F/F22,OR回路2
3,及びF/F24を順次に介して出力される。OR回路15,17,1
9,21の他方の入力端子には命令例外,特権例外検出回路
9,OPアドレス例外検出回路10,OPアクセス例外検出回路1
1,演算例外検出回路12の出力が供給される。例外コード
出力時にのみ、F/F13,14,18,20,22はオン(セット状
態)とされ、そのときの出力信号で選択回路27,29,31,3
3,35により前ステージの例外コードレジスタ26,28,30,3
2,34の出力を選択出力させ、それ以外は現ステージの例
外検出回路9,10,11,12,又は例外コードレジスタ36の出
力を選択出力させる。
従って、何らかの例外発生時にはF/F24の出力信号は
オンとなり、かつ、例外コードレジスタ36には例外検出
された最先のステージの例外コードが優先して供給され
る。
ここで、パイプライン制御はD(データ),A(アドレ
ス),T(トランスレーション),B(バッファ),E(エグ
ゼキューション),W(ライト)の各ステージ(サイク
ル)からなり、各データはD→A→T→B→E→Wの順
で各ステージ所定の処理を順次施され、かつ、異なるデ
ータは同時刻では異なるステージにおける処理を施され
ている。従って、或るステージで例外が検出されたとき
は、それ以降のステージのデータ処理は無効なので、上
記の如く例外コードレジスタ36からは例外検出された最
先のステージの例外コードだけが前記割込みコードとし
て取り出される。
第6図は、Aステージの例外処理回路をより詳細に図
示したブロック図を示す。同図中、第5図と同一構成部
分には同一符号を付してある。第6図において、Aステ
ージのタグ3のPCRで示すフィールドには、Aステージ
の処理を制御する汎用の制御コードが記憶され、OPX及
びPRVで示す各フィールドには夫々命令例外,特権例外
の検出条件の種類を表わすコードが記憶されており、こ
れらの各コードはデコーダ38,91,92に夫々供給されてデ
コードされる。
デコーダ91,92の各出力信号は夫々命令例外検査回路9
3,特権例外検査回路94に供給され、ここで例外の有無が
検査された後優先順位及び論理和回路95により優先順に
エンコード96に供給されると共に論理和をとられてから
OR(論理和)回路15に供給される。
選択回路27は前記Aステージの例外検出F/F14がオン
のときには(すなわち、命令読出し例外検出時には)例
外コードレジスタ26の例外コードを選択出力し、例外検
出F/F14がオフのときには上記エンコーダ96の出力信号
を選択出力するように切換わり、Tステージの例外コー
ドレジスタ(TXC)28へその出力信号を供給する。ま
た、OR回路15からの信号はTステージの例外検出F/F(T
XV)16に供給され、例外検出時はこれをオン、例外が検
出されないときはこれをオフの状態に保持する。
〔発明が解決しようとする課題〕
しかるに、従来のプログラム例外処理方式は検出した
例外の割込みコードは、上記の如くハードウェアの回路
で発生しているため、情報処理装置に対する機能拡張の
要求が増し、新しい割込みコードの定義や割込みコード
の変更の必要が生じた場合は、ハードウェアを改造しな
ければならず、そのため、多大な費用と工数を必要とす
るという問題点があった。また、発生する割込みコード
のパターンを増すと、ハードウェアが増加するという問
題点もあった。
本発明は、以上の点に鑑みてなされたもので、ハード
ウェアを改造させることなく、新しい割込みコードの定
義や割込みコードの変更、増加を可能とするプログラム
例外処理方式を提供することを目的とする。
〔課題を解決するための手段〕
第1図は本発明の原理構成図を示す。本発明はパイプ
ライン制御方式の情報処理装置のプログラム例外を検出
し、異常があったときに割込みコードを発生してソフト
ウェアへ報告するプログラム例外処理方式において、W
ステージの例外検出回路の出力信号を抑止して割込みを
抑止する抑止手段41と、例外検出用マイクロプログラム
にブランチするブランチ手段42と、割込みコード出力手
段43及び割込み手段44より構成したものである。
上記の割込みコード出力手段43は前記マイクロプログ
ラムの特定フィールドのコードを割込みコードとして出
力する。また、割込み手段44は前記ブランチしたマイク
ロプログラムにより抑止手段41による抑止を解除して例
外検出回路の出力信号を出力させ、割込みコード出力手
段43からの割込みコードによる割込みを行なわせる。
〔作用〕
本発明の原理作用について第1図及び第2図と共に説
明する。何らかの命令処理の後(第2図中のステップ
S1)、抑止手段41によりWステージの例外検出回路の出
力を抑止して割込みを抑止し、ブランチ手段42により例
外検出の有無をチェックする(第2図中のステップS2
S3)。
上記チェックの結果、例外が無いときはパイプライン
制御による通常の命令処理が実行される(第2図中のス
テップS4)。これに対して、例外が検出されたときは例
外処理用マイクロプログラムにブランチして割込みコー
ド出力手段43によりそのマイクロプログラムの特定フィ
ールドのコードを割込みコードとして出力し、かつ、割
込み手段44により抑止手段41による抑止を解除して例外
検出信号を出力させる(第2図中、ステップS5)。ステ
ップS4又はS5の処理後終了となる(第2図中、ステップ
S6)。
このように、本発明によれば、割込みコードを新しく
定義したようなときは、ハードウェアではなく、マイク
ロプログラムにより割込みコードを発生することができ
る。
〔実施例〕
第3図は本発明の一実施例のブロック図を示す。同図
中、第1図,第5図と同一構成部分には同一符号を付
し、その説明を省略する。第3図において、51は3入力
OR回路(論理和回路)で、従来に比べて後述する如く1
入力増加している。
また、52はゲート回路で、前記した抑止手段41を構成
しており、Wステージの例外検出用F/F22の出力側に設
けられており、そのゲート出力をOR回路23を通してF/F2
4に印加する。更に、53は3入力の選択回路で、パイプ
ラインタグ3よりの例外検出条件の種類を表わすコード
が印加される点が従来と異なる。また更に54はフリップ
フロップ(F/F)で、前記ブランチ手段42を構成し、そ
の出力がマイクロブランチ条件を示し、CS回路2のアド
レスを決定する回路へ出力される。
なお、パイプラインタグ3〜7により前記割込み手段
44が構成されており、また例外コードレジスタ28,30,3
2,34,36,選択回路53,29,31,33,35により前記割込みコー
ド出力手段43が構成されている。
このように、第5図に示した従来方式に比べて、本実
施例はゲート回路52及びF/F54が夫々追加され、かつ、
AステージのOR回路51が3入力で選択回路53も3入力で
ある点が従来方式と異なる。
第4図は、第3図のAステージの一実施例のブロック
図を示す。同図中、第3図及び第6図と同一構成部分に
は同一符号を付し、その説明を省略する。第4図と第6
図の相違点はパイプラインタグ3のPCRフィールドのデ
コーダ38の出力をOR(論理和)回路51の入力に追加され
ると共に選択回路53の選択条件を決める符号として追加
される点と、選択回路53で選択する符号としてパイプラ
インタグ3のOPX,PRVの各フィールドの出力信号をバス5
5を介して供給する構成とした点である。
次に第3図及び第4図の動作について説明する。Aス
テージのタグ3より与えられる例外検出条件に基づい
て、例外検出回路9により未定義命令入力時は命令例外
が検出され、またオペレーティングシステム(OS)でし
か使用できない命令がユーザプログラムにでてきたとき
などは特権例外として検出される。
また、オペランドアドレスがメモリの範囲を超えてい
た場合などのOPアドレス例外はOPアドレス例外検出回路
10により検出され、例えばメモリのリードしか許されな
い領域をライトするようアクセスしたときなどはOPアク
セス例外検出回路11により検出され、更に演算結果がオ
ーバーフローやアンダーフローしたときなどの演算例外
は演算例外検出回路12により検出される。これらの例外
検出時は従来と同様にF/F24の出力信号が所定値とな
り、かつ、例外コードレジスタ36からは例外検出された
最先のステージの例外コードが割込みコードとして取り
出される。
次に、新しい割込みコードを定義したとすると、その
ときに、CS回路2から読出されたマイクロプログラムの
コードがパイプラインタグ3〜7に流され、パイプライ
ンタグ7の出力信号によりWステージの例外検出回路を
構成するF/F22の出力信号の通過を阻止するようゲート
回路52が制御される。また、これと同時にゲート回路52
により阻止(抑止)されたF/F22の出力信号はF/F54に印
加され、記憶される。
このF/F54の出力信号はマイクロブランチ条件を示す
コードとしてCS回路2の次のマイクロプログラムのコー
ドを実行するアドレスを決定する回路(図示せず)へ供
給される。このコードの値は例外検出を示しており、こ
れにより例外処理用マイクロプログラムにブランチす
る。
この例外処理用マイクロプログラムのコードはAステ
ージのタグ3に一時記憶され、そのうち第4図に示すPC
Rフィールドの制御コードはデコーダ38でデコードされ
た後OR回路(論理和回路)51を通してTステージの例外
検出用F/F(TXV)16をオンとする一方、選択回路53に印
加されて、バス55を介して入力されるOPX及びPRVの各フ
ィールドの例外コードを選択出力させるよう切換制御す
る。
これにより、選択回路53より取り出された例外コード
はTステージの例外コードレジスタ(TXC)28に一時記
憶された後、第3図に示す選択回路29,例外コードレジ
スタ30,選択回路31,例外コードレジスタ32,選択回路33
を順次通してWステージの例外コードレジスタ34に到
る。
一方、上記例外コードの転送に同期して、TXV16の所
定値の出力信号がOR回路17,F/F18,OR回路19,F/F20,OR回
路21を順次通してWステージのF/F22に到り、これをオ
ンとする。このとき、パイプラインタグ7の出力信号に
よりゲート回路52がそれまでの抑止状態を解除されるた
め、オンとされているF/F22からの所定値の信号はゲー
ト回路52,OR回路23を通してF/F24に供給され、これをオ
ンとし例外検出信号として出力される。
また、これと同時に例外コードレジスタ34からの前記
例外コードが選択回路35及び例外コードレジスタ36を夫
々通して割込みコードとして出力される。
このようにして、本実施例によれば、例外処理マイク
ロプログラムでOPX.PRV各フィールドに任意の値を設定
し、それを例外コードレジスタ28に入力することによ
り、新しい割込みコードを作ることができる。
なお、本発明は上記の実施例に限定されるものではな
く、例えば、3入力OR回路51,3入力選択回路53は、Tス
テージ,Bステージ又はEステージに設けることもでき、
また他のパイプライン制御方式にも同様にして適用する
ことができる。
〔発明の効果〕
上述の如く、本発明によれば、マイクロプログラムに
より割込みコードを発生することができるため、ハード
ウェアを改造することなく新しい割込みコードの定義や
割込みコードの変更,増加ができ、新しい割込みコード
の定義などに際し、従来のハードウェアの改造に要する
費用,工数に比べて大幅に費用,工数を低減することが
できる等の特長を有するものである。
【図面の簡単な説明】
第1図は本発明の原理構成図、 第2図は本発明の原理説明用フローチャート、 第3図は本発明の一実施例のブロック図、 第4図は第3図の要部の一実施例のブロック図、 第5図は従来方式の一例のブロック図、 第6図は第5図の要部の一例のブロック図である。 図において、 41は抑止手段、42はブランチ手段、43は割込みコード出
力手段、44は割込み手段 を示す。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 松野下 文郎 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 田中 正人 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 中田 達巳 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 小池 夫澄 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 信太 由太郎 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 上田 孝一 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (56)参考文献 特開 昭61−285540(JP,A)

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】パイプライン制御方式の情報処理装置のプ
    ログラム例外を検出し、異常があったときに割込みコー
    ドを発生してソフトウェアに報告するプログラム例外処
    理方式において、 最終ステージの例外検出回路の出力信号を抑止して割込
    みを抑止する抑止手段(41)と、 前記抑止手段(41)により抑止される信号から例外の有
    無をチェックし、例外検出時に例外処理用マイクロプロ
    グラムにブランチするブランチ手段(42)と、 前記マイクロプログラムの特定フィールドのコードを前
    記割込みコードとして出力する割込みコード出力手段
    (43)と、 前記マイクロプログラムにより前記抑止手段(41)によ
    る抑止を解除して前記例外検出回路の出力信号を出力さ
    せ、前記割込みコード出力手段(43)からの割込みコー
    ドによる割込みを行なわせる割込み手段(44)とからな
    ることを特徴とするプログラム例外処理方式。
JP18606488A 1988-07-26 1988-07-26 プログラム例外処理方式 Expired - Fee Related JPH0831035B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18606488A JPH0831035B2 (ja) 1988-07-26 1988-07-26 プログラム例外処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18606488A JPH0831035B2 (ja) 1988-07-26 1988-07-26 プログラム例外処理方式

Publications (2)

Publication Number Publication Date
JPH0236422A JPH0236422A (ja) 1990-02-06
JPH0831035B2 true JPH0831035B2 (ja) 1996-03-27

Family

ID=16181759

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18606488A Expired - Fee Related JPH0831035B2 (ja) 1988-07-26 1988-07-26 プログラム例外処理方式

Country Status (1)

Country Link
JP (1) JPH0831035B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5424015A (en) * 1992-09-29 1995-06-13 Yamashita Rubber Kabushiki Kaisha Method and device for manufacturing rubber bend pipe

Also Published As

Publication number Publication date
JPH0236422A (ja) 1990-02-06

Similar Documents

Publication Publication Date Title
US6115808A (en) Method and apparatus for performing predicate hazard detection
JP4703718B2 (ja) 選択的サブルーチンリターン構造
JPH07248897A (ja) コンピュータ・システムにおける例外からの回復方法、及びそのための装置
US4670836A (en) Device for detecting an overlap of operands to be accessed
US6243786B1 (en) Apparatus and method for generating an interrupt prohibited zone in pipelined data processors
US5253349A (en) Decreasing processing time for type 1 dyadic instructions
US3707703A (en) Microprogram-controlled data processing system capable of checking internal condition thereof
US4656581A (en) Vector mask control system
JPH0831035B2 (ja) プログラム例外処理方式
US4991130A (en) Normalization control system for floating point arithmetic operation
JP3240660B2 (ja) データ処理装置
JPH05216721A (ja) 電子計算機
JPS62262146A (ja) 処理装置
JP2616542B2 (ja) 疑似障害発生システム
JP3114909B2 (ja) プログラマブルコントローラの演算エラー処理方法
JPH04338825A (ja) 演算処理装置
JPH07225681A (ja) 割込制御装置
KR100672550B1 (ko) 멀티플 인터럽트 처리 방법
JPH0248733A (ja) 情報処理装置
JPH03269628A (ja) 例外処理方式
JPH0258648B2 (ja)
JPH0378832A (ja) デ―タ処理装置
JPS59129995A (ja) 記憶装置
JPH03209523A (ja) 命令データエラー検出方式
JPH0449424A (ja) 命令制御方式

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees