JPH04106652A - 例外処理システム - Google Patents

例外処理システム

Info

Publication number
JPH04106652A
JPH04106652A JP2224620A JP22462090A JPH04106652A JP H04106652 A JPH04106652 A JP H04106652A JP 2224620 A JP2224620 A JP 2224620A JP 22462090 A JP22462090 A JP 22462090A JP H04106652 A JPH04106652 A JP H04106652A
Authority
JP
Japan
Prior art keywords
coprocessor
exception
register
instruction
instructions
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.)
Granted
Application number
JP2224620A
Other languages
English (en)
Other versions
JP2849189B2 (ja
Inventor
Nobunao Hatsutori
服部 展尚
Shuntaro Fujioka
藤岡 俊太郎
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 JP2224620A priority Critical patent/JP2849189B2/ja
Publication of JPH04106652A publication Critical patent/JPH04106652A/ja
Application granted granted Critical
Publication of JP2849189B2 publication Critical patent/JP2849189B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Multi Processors (AREA)

Abstract

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

Description

【発明の詳細な説明】 [概要] 命令実行を非同期的に行うデータ処理部(コプロセッサ
)をもつデータ処理装置における例外処理装置に関し、 コプロセッサで例外が発生した時の例外処理を確実に行
えるようにすることを目的とし、CPUとコプロセッサ
とが接続され、CPU内では一連の命令が同期的に処理
され、コプロセッサ側ではCPUから依頼された処理を
非同期的に行うシステムにおいて、コプロセッサ内には
、コプロセッサ命令キューと、コプロセッサ演算器とを
具備し、コプロセッサ演算器内で例外が発生した場合に
、その例外をコプロセッサ命令キュー内に設けた例外フ
ラグ用レジスタに書込むことによって例外処理を行うよ
うに構成する。
[産業上の利用分野] 本発明は命令実行を非同期的に行うデータ処理部(コプ
ロセッサ)をもつデータ処理装置における例外処理装置
に関する。
中央処理装置(CPU)とデータ処理部(コプロセッサ
;CPR)とが接続され、データの処理を行うシステム
かある。この種のシステムでは、通常の同期命令はCP
U側で行い、必要に応してコプロセッサ側に処理を依頼
する形をとる。このようなシステムで、コブaセッサ内
の演算器で演算を行っている場合に例外が発生した場合
、例外の種類及び例外を発生した命令(或いはそのアド
レス)をCPU内の例外処理部に確実に報告する必要か
ある。
[従来の技術] 第4図は従来システムの構成ブロック図である。
図において、10は中央処理装置(CPU)、20はコ
プロセッサ(CP R)である。これらcPUIOとコ
プロセッサ20は各種のハスで接続されている。CPU
l0は命令制御部1.汎用レジスタ2.演算器3及びメ
モリ4より構成されている。コプロセッサ20はコプロ
セッサ命令キュ11、制御部12及びごプロセッサ演算
器13より構成されている。21は命令制御部1からコ
プロセッサ命令キュー11にコプロセッサ命令を通知す
るコプロセッサ命令バス、22は制御部12から汎用レ
ジスタ2に書込みレジスタ番号及び読出しレジスタ番号
を通知するレジスタ番号ノ・ス、23は汎用レジスタ2
からコプロセッサ演算器13にソースデータを通知する
ソースデータバス、24はコプロセッサ演算器13の出
力を汎用レジスタ2に通知する出力バスである。
このように構成された装置において、命令制御部1はメ
モリ4に格納されているプログラム命令を同期的に順次
読出してシーケンシャルに実行する。これら一連の命令
の実行中に、コプロセッサ20に演算させるべき命令か
あったら、コプロセッサバス21を介してコプロセッサ
20に通知する。コプロセッサ20側では、入力された
命令を順次コプロセッサ命令キュー11に格納する。そ
して、コプロセッサ命令キュー11に一番最初に格納さ
れた命令から順次実行する。この意味において、コプロ
セッサ20側で行われる命令の実行は、CPUl0側と
は完全に非同期である。
コプロセッサ命令キュー11から読出された命令は、制
御部12に入る。制御部12は読出された命令を判読し
て対応する書込みレジスタ番号又は読出しレジスタ番号
をレジスタ番号バス22を介して汎用レジスタ2に通知
する。汎用レジスタ2では、制御部12から与えられた
書込みレジスタ又は読出しレジスタに入っているデータ
をソースデータバス23を介してコプロセッサ演算器1
3にソース1データ、ソース2データとして与える。コ
プロセッサ演算器13は、所定の演算処理を行い、その
結果を出力バス24を介して汎用レジスタ2の結果書込
みレジスタに通知する。
このように、コプロセッサ20で演算している間にも、
命令制御部1は、次の命令を順次実行していく。なお、
自身でてきる演算の場合には、演算器3を用いて演算処
理を行う。
第5図はコプロセッサ命令キュー11の構造を示す図で
ある。コプロセッサ命令バス21を介して順次入力され
た命令1〜命令nは先に入った命令1から出ていき、実
行される。これら命令は、いずれも命令コードレジスタ
111 ソースルレジスタ番号レジスタ112.ソース
2レジスタ番号レジスタ113及び結果書込みレジスタ
番号レジスタ114より構成されている。
従って、これら命令か制御部12に読出されると、制御
部12は命令コード111により命令の種類を判読し、
ソースルレジスタ番号112.ソース2レジスタ番号1
13より汎用レジスタ2をアクセスし、そのレジスタ番
号に入っているソース1データ、ソース2データを読出
してきてコプロセッサ演算器13に命令コード111に
従った演算を行なわせることになる。そして、コプロセ
ッサ演算器13による演算が開始されると、コプロセッ
サ命令キュー11に格納されていた命令はデキューされ
る。
[発明が解決しようとする課題] 第4図、第5図に示した従来方式では、コプロセッサ演
算器13て演算が開始されると、その命令はコプロセッ
サ命令キュー11からはデキュー(外される)されてい
た。従って、若しコブロセソサ演算器13で例外(例え
ばある数を0て割る演算等の不合理演算が発生すること
)が発生すると、コプロセッサ演算器13は異常終了し
、その異常終了をCPUl0側に通知する。しかしなか
ら、このような通知方式では、非同期命令側の例外発生
アドレス位置を同期側のCPUl0側から判読するのは
不可能である。
そこで、第6図に示すようにコプロセッサ命令キュー1
1にその命令が送られた時の同期側アドレス値(プロク
ラムカウンタ値:PC値)を書込むレジスタ1]5を設
け、命令が例外なく終わるまで命令を保持しておくよう
にする。このようにすれば、その命令で例外が発生した
時の同期側(CPUIO側)のPC値が分かるので、例
外処理が速やかに行える。
しかしながら、このPC値を保持する方式でも、コプロ
セッサ20内のコプロセッサ演算器が複数あった場合、
それらコプロセッサ演算器で同時に発生した例外のいず
れを先に処理すべきであるかが不明であり、例外処理に
支障をきたしている。
本発明はこのような課題に鑑みてなされたものであって
、コプロセッサで例外が発生した時の例外処理を確実に
行えるようにすることができる例外処理システムを提供
することとを目的としている。
[課題を解決するための手段] 第1図は本発明の原理ブロック図である。第4図と同一
のものは、同一の符号を付して示す。図において、14
はCPUl0側から送られてくる命令を順次格納するコ
プロセッサ命令キュー、116はコプロセッサ演算器1
3内で例外が発生した場合に、その例外を書込むための
例外フラグ用レジスタでコプロセッサ命令キュー14内
に含まれる。この例外フラグ用レジスタ116はそれぞ
れの命令毎に設けられている。その他の構成は第4図と
同一である。
[作用] コプロセッサ13で演算処理中に例外が発生した場合、
制御部12は前記例外フラグ用レジスタ116に例外の
種類を書込む。コプロセッサ内の制御部12の中の例外
処理部は、従来の方法により例外発生位置を、例外フラ
グ用レジスタ116により例外の種類を、同時に認識す
ることにより、命令と例外の対応づけか容易になり、例
外処理を確実に行うことができ、しかも例外処理を高速
にかつ効率的に行うことができる。
[実施例] 以下、図面を参照して本発明の実施例を詳細に説明する
第2図は本発明の一実施例を示す構成ブロック図で、複
数の並列演算を行う浮動小数点コプロセッサ演算器13
が複数存在している。そして、それぞれの浮動小数点コ
プロセッサ演算器13の出力は汎用レジスタ2に入って
いる。浮動小数点コプロセッサ演算器13て行う演算の
種類としては、例えば加算2乗算、除算等が考えられる
本実施例で用いるコプロセッサ命令キュー14の構造は
第3図に示すとおりである。第5図に示す従来例と異な
り、命令コードレジスタ111ソースルジスタ番号レジ
スタ112 ソース2レジスタ番号レジスタ113及び
結果書込みレジスタ番号レジスタ114に加えて例外フ
ラグ用レジスタ116が各命令毎に設けられている。こ
の例外フラグ用レジスタ116のビット数は任意に設定
することができ、例外の種類等を書込めるようになって
いる。このように構成された装置の動作を説明すれば、
以下のとおりである。
命令制御部1はメモリ4に格納されているプログラム命
令を同期的に順次読出してシーケンシャルに実行する。
これら一連の命令の実行中に、コプロセッサ20に演算
させるべき命令があったら、コプロセッサバス21を介
してコプロセッサ20に通知する。コプロセッサ20側
では、入力された命令を順次コプロセッサ命令キュー1
1に格納する。そして、コプロセッサ命令キュー11に
一番最初に格納された命令から順次実行する。
コプロセッサ命令キュー11から読出された命令は、制
御部12に入る。制御部12は読出された命令を判読し
て対応する書込みレジスタ番号又は読出しレジスタ番号
(ソースルレジスタ又はソース2レジスタ)をレジスタ
番号ハス22を介して汎用レジスタ2に通知する。汎用
レジスタ2ては、制御部12から与えられた書込みレジ
スタ又は読出しレジスタに入っているデータをソースデ
ータバス23を介してコプロセッサ演算器13にソース
1データ、ソース2データとして与える。
浮動小数点演算では、複数のコプロセッサ演算器13が
並列に動作しており、このため前述したシーケンスによ
り汎用レジスタ2から各コプロセッサ演算器13にそれ
ぞれの対応するソース1データ、ソース2データを与え
る。
コプロセッサ演算器13は、所定の演算処理を行い、そ
の結果を出力バス24を介して汎用レジスタ2の結果書
込みレジスタに通知する。このように、コプロセッサ2
0て演算している間にも、命令制御部1は、次の命令を
順次実行していく。
なお、自身でできる演算の場合には、演算器3を用いて
演算処理を行う。
このようなコプロセッサ演算器13の動作中に、例外が
発生したものとする。コプロセッサ演算器13はそれが
とのような種類の例外であったかを例外フラグ用レジス
タ116に書込む。制御部12は、この例外フラグ用レ
ジスタ116に書込まれた例外フラグの内容を読込んで
例外の種類を判読し例外の種類に応した例外処理を行う
。例外処理か終了したら、コプロセッサ命令キュー14
に保持されていた例外フラグはデキューされる。
本発明によれば、例外フラグ用レジスタ116の内容に
加えて、その例外が発生した命令コードも命令コードレ
ジスタ111から読込むことができるので、命令と例外
の対応づけが容易となる。
また、本発明によれば、浮動小数点演算を並列で実行し
ている複数のコプロセッサ演算器13で同時に例外が発
生しても、それぞれの命令毎に例外フラグ用レジスタ1
16は設けられているので、それぞれの例外フラグ用レ
ジスタ116に例外の種類を書込むことができ、CPU
l0は複数のコプロセッサ演算器13で同時に起こった
例外を認識して表示させることができるようになる。
[発明の効果コ 以上、詳細に説明したように、本発明によればコプロセ
ッサで例外が発生した時の例外処理を確実に行えるよう
にすることができ、以下のような効果が得られる。
■命令の再実行が簡単である。
コプロセッサに命令を送った後、同期側(CPU側)の
命令も順次実行されており、コプロセッサ内の演算器で
例外が発生した時点て既に数命令が実行されている場合
が考えられるが、この間に実行された命令は有効であり
、再び実行する必要はない。従って、CPU側では例外
処理終了後、再実行する場合は例外が発生した時点てプ
ログラムカウンタ(P C)の示している命令から、コ
ブaセッサ側ではコプロセッサ命令キュー内の命令をそ
れぞれ順次実行すればよいため、再実行が簡単である。
■複数の例外を表示できる。
複数のコプロセッサ演算器で例外が同時に起こっても、
それぞれの命令か持っている例外フラグ用レジスタに例
外の種類及びその発生位置を書込むことができるので、
複数のコプロセッサ演算器で同時に例外が発生してもそ
れら例外をCPU側で表示させることができる。
【図面の簡単な説明】
第1図は本発明の原理ブロック図、 第2図は本発明の一実施例を示す構成ブロック図、 第3図はコプロセッサ命令キューの構造例を示す図、 第4図は従来システムの構成ブロック図、第5図はコプ
ロセッサ命令キューの構造を示す図、 第6図はコプロセッサ命令キューの従来構造を示す図で
ある。 第1図において、 1は命令制御部、 2は汎用レジスタ、 3は演算器、 4はメモリ、 10はCPU。 12は制御部、 13はコプロセッサ演算器、 14はコプロセッサ命令キュー 20はコプロセッサ、 21はコプロセッサ命令ハス、 22はレジスタ番号バス、 23はソースデータバス、 24は出力バスである。

Claims (1)

  1. 【特許請求の範囲】 CPU(10)とコプロセッサ(20)とが接続され、
    CPU(10)内では一連の命令が同期的に処理され、
    コプロセッサ(20)側ではCPU(10)から依頼さ
    れた処理を非同期的に行うシステムにおいて、 コプロセッサ(20)内には、コプロセッサ命令キュー
    (14)と、コプロセッサ演算器(13)とを具備し、 コプロセッサ演算器(13)内で例外が発生した場合に
    、その例外をコプロセッサ命令キュー(14)内に設け
    た例外フラグ用レジスタ(116)に書込むことによっ
    て例外処理を行うように構成したことを特徴とする例外
    処理システム。
JP2224620A 1990-08-27 1990-08-27 例外処理システム Expired - Fee Related JP2849189B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2224620A JP2849189B2 (ja) 1990-08-27 1990-08-27 例外処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2224620A JP2849189B2 (ja) 1990-08-27 1990-08-27 例外処理システム

Publications (2)

Publication Number Publication Date
JPH04106652A true JPH04106652A (ja) 1992-04-08
JP2849189B2 JP2849189B2 (ja) 1999-01-20

Family

ID=16816565

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2224620A Expired - Fee Related JP2849189B2 (ja) 1990-08-27 1990-08-27 例外処理システム

Country Status (1)

Country Link
JP (1) JP2849189B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5890010A (en) * 1994-02-07 1999-03-30 Fujitsu Limited Data processing apparatus with a coprocessor which asynchronously executes commands stored in a coprocessor command storage section
JP2008507020A (ja) * 2004-07-15 2008-03-06 イマジネイション テクノロジーズ リミテッド マイクロプロセッサ出力ポート、及び、そこから提供された命令の制御
JP2013054414A (ja) * 2011-09-01 2013-03-21 Nec Corp 情報処理装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57144246A (en) * 1981-03-03 1982-09-06 Hodogaya Chem Co Ltd O-benzyloxybenzoic acid amide derivative and herbicide containing the same
JPS57162035A (en) * 1981-03-31 1982-10-05 Fujitsu Ltd Interruption control system
JPS63143660A (ja) * 1986-12-08 1988-06-15 Fanuc Ltd コ・プロセツサを有する演算処理装置
JPH0241532A (ja) * 1988-08-01 1990-02-09 Fuji Electric Co Ltd マイクロプロセッサの例外処理方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57144246A (en) * 1981-03-03 1982-09-06 Hodogaya Chem Co Ltd O-benzyloxybenzoic acid amide derivative and herbicide containing the same
JPS57162035A (en) * 1981-03-31 1982-10-05 Fujitsu Ltd Interruption control system
JPS63143660A (ja) * 1986-12-08 1988-06-15 Fanuc Ltd コ・プロセツサを有する演算処理装置
JPH0241532A (ja) * 1988-08-01 1990-02-09 Fuji Electric Co Ltd マイクロプロセッサの例外処理方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5890010A (en) * 1994-02-07 1999-03-30 Fujitsu Limited Data processing apparatus with a coprocessor which asynchronously executes commands stored in a coprocessor command storage section
JP2008507020A (ja) * 2004-07-15 2008-03-06 イマジネイション テクノロジーズ リミテッド マイクロプロセッサ出力ポート、及び、そこから提供された命令の制御
JP2013054414A (ja) * 2011-09-01 2013-03-21 Nec Corp 情報処理装置

Also Published As

Publication number Publication date
JP2849189B2 (ja) 1999-01-20

Similar Documents

Publication Publication Date Title
US5146569A (en) System for storing restart address of microprogram, determining the validity, and using valid restart address to resume execution upon removal of suspension
JPH04106652A (ja) 例外処理システム
JPH0821009B2 (ja) チャネル制御装置のイニシャライズ方法及びそのイニシャライズのためのシステム
JP2671160B2 (ja) 例外処理方式
JP2562838B2 (ja) プロセッサ及びストアバッファ制御方法
JPH0452759A (ja) ベクトル命令多重処理方式
JP2765831B2 (ja) データ処理装置
JPS60250440A (ja) リトライ制御方式
JPS63214856A (ja) デ−タ処理装置のデ−タ保護制御方式
JPS6349942A (ja) 演算処理装置
JPS5922147A (ja) 再試行処理のチエツク方式
JPH0519745B2 (ja)
JPS6349946A (ja) 演算処理装置
JPH0552938U (ja) パイプライン演算装置
JPH0340013A (ja) 中央演算処理装置
JPH02100173A (ja) ベクトル処理装置
JPH0525532U (ja) メモリ保護回路
JPS59189452A (ja) デ−タ処理装置用キユ−構造
JPS60108936A (ja) 情報処理装置
JPH0325674A (ja) 情報処理装置
JPS62288940A (ja) 情報処理装置
JPH0378832A (ja) デ―タ処理装置
JPH01147773A (ja) ベクトル処理装置
JPS62237533A (ja) デ−タ処理装置
JPH0527963A (ja) 異種の浮動小数点演算命令の同時サポート方法

Legal Events

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