JPH07219774A - データ処理装置および例外処理方法 - Google Patents

データ処理装置および例外処理方法

Info

Publication number
JPH07219774A
JPH07219774A JP6013421A JP1342194A JPH07219774A JP H07219774 A JPH07219774 A JP H07219774A JP 6013421 A JP6013421 A JP 6013421A JP 1342194 A JP1342194 A JP 1342194A JP H07219774 A JPH07219774 A JP H07219774A
Authority
JP
Japan
Prior art keywords
instruction
coprocessor
exception
storage unit
unit
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
JP6013421A
Other languages
English (en)
Inventor
Tomoshi Nishigami
知史 西上
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 JP6013421A priority Critical patent/JPH07219774A/ja
Publication of JPH07219774A publication Critical patent/JPH07219774A/ja
Priority to US08/915,566 priority patent/US5890010A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3861Recovery, e.g. branch miss-prediction, exception handling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3877Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【目的】CPU1と,CPU1からのコプロセッサ命令
を非同期的に実行するコプロセッサ2を備えたデータ処
理装置に関し,特に例外発生時に例外処理を適確に行う
ための手段を提供することを目的とする。また,コプロ
セッサ2の正常動作を容易に検証できるようにすること
を目的とする。 【構成】CPU1のプログラムから,コプロセッサ命令
記憶部6に対するアクセス命令を用いることにより,例
外発生時にコプロセッサ命令記憶部6の内容を調べ,必
要であれば命令をクリアしたり編集して書き戻すことに
より,コプロセッサ命令の再試行等を行う。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は,命令を高速で実行する
ために,命令実行を非同期的に処理するコプロセッサを
持つデータ処理装置および例外処理方法に関する。
【0002】例えば,浮動小数点演算装置などのコプロ
セッサを持つデータ処理装置において,例外処理を適確
に行うためには,コプロセッサ内の演算器で発生した例
外の情報を必要に応じてプログラムに対し詳細に報告し
なければならない。また,例外発生時において予測され
る動作が正しく行われるかどうかを検証するためには,
異常状態をプログラムによって設定し,その結果を確認
する手段が必要になる。
【0003】
【従来の技術】従来の非同期型コプロセッサの例外処理
システムとして,例えば特開平4−106652号公報
に示されるようなものがある。このような従来の例外処
理システムにおいては,コプロセッサから中央処理装置
(以下,CPUという)に対して,例外が発生したコプ
ロセッサ命令に関する直接の情報だけが通知されてい
た。なお,ここで例外の発生とは,例えばある値を0で
除算するとか,命令中のオペランドでアクセスできない
領域を指定するというような命令を正常に実行できない
事象が発生することをいう。
【0004】図6は,その従来技術の構成を示すブロッ
ク図である。図6中,60はCPU,61は命令制御
部,62は汎用レジスタ,63は演算器,64はメモ
リ,70はコプロセッサ,71は制御部,72は単数ま
たは複数のコプロセッサ演算器,73はコプロセッサ命
令キュー,74は例外フラグ用レジスタである。81は
命令制御部61からコプロセッサ命令キュー73にコプ
ロセッサ命令を通知するコプロセッサ命令バス,82は
制御部71から汎用レジスタ62へ書き込みレジスタ番
号および読み出しレジスタ番号等を通知するレジスタ番
号バス,83は汎用レジスタ62からコプロセッサ演算
器72にソースデータを通知するソースデータバス,8
4はコプロセッサ演算器72の出力を汎用レジスタ62
に通知する出力バスを表す。
【0005】コプロセッサ演算器72で演算処理中に例
外が発生した場合,コプロセッサ命令キュー73内に設
けた例外フラグ用レジスタ74に例外の種類を書き込
み,コプロセッサ70内の制御部71は,コプロセッサ
命令キュー73での例外発生位置を認識し,例外フラグ
用レジスタ74から例外の種類を判別して例外の種類に
応じた例外処理を行う。そして,制御部71は,CPU
60に対して例外が発生したコプロセッサ命令に関する
情報を通知する。
【0006】
【発明が解決しようとする課題】以上のような従来の技
術では,例外が起こったコプロセッサ命令の情報だけし
かCPUには報告できない。したがって,例外発生時点
における一連の命令によるコプロセッサ内の処理の流れ
が容易には把握できないという問題があった。また,C
PUからコプロセッサに対して指示されたコプロセッサ
命令が,コプロセッサ命令を記憶するキュー内に正常に
保持されているかどうかの検証も同様に困難であった。
さらに,例外処理から復帰する場合に,CPUがコプロ
セッサ命令を記憶するキュー内の情報を任意に変更する
ことができず,CPUにおける柔軟な対応が望めなかっ
た。
【0007】本発明は上記問題点の解決を図り,コプロ
セッサ内のコプロセッサ命令を記憶する部分をCPUか
らアクセスするための手段となるハードウェアおよびそ
れを実行するための命令群を提供することにより,例外
発生時におけるCPUの柔軟な対応およびコプロセッサ
の正常動作の検証を可能にすることを目的とする。
【0008】
【課題を解決するための手段】図1は,本発明の原理説
明図である。図1において,1は中央処理装置(CP
U),2はコプロセッサ,3はメモリ,4は命令制御
部,40はコプロセッサ命令記憶部アクセス命令制御
部,5は演算対象となるデータを保持する汎用レジス
タ,6はコプロセッサ命令記憶部,7はコプロセッサ命
令制御部,8はコプロセッサ演算器,9は命令で指定さ
れた加減算等の演算を行う演算器,10はコプロセッサ
命令バス(以下,命令バスという),11はコプロセッ
サ命令記憶部アクセスバス(以下,アクセスバスとい
う),12は汎用レジスタ番号/割込み情報バス(以
下,レジスタ番号バスという),13は汎用レジスタ読
み出しデータバス(以下,読み出しデータバスとい
う),14は汎用レジスタ書き込みデータバス(以下,
書き込みデータバスという)を表す。
【0009】命令制御部4は,メモリ3に格納されてい
るプログラム命令を同期的に順次読み出してシーケンシ
ャルに実行し,これら一連の命令の実行中に,コプロセ
ッサ2に演算させるべき命令があれば,命令バス10を
介してコプロセッサ2へ通知する制御手段である。コプ
ロセッサ命令記憶部アクセス命令制御部40は,アクセ
スバス11を介してコプロセッサ2におけるコプロセッ
サ命令記憶部6の内容を参照または更新する命令の命令
実行制御手段である。
【0010】コプロセッサ命令記憶部6は,CPU1か
ら指示されたコプロセッサ命令を記憶する手段である。
コプロセッサ命令制御部7は,コプロセッサ命令記憶部
6に記憶されている命令の実行を制御し,レジスタ番号
バス12を介して汎用レジスタ番号,割り込み情報等を
CPU1へ通知する手段である。
【0011】コプロセッサ演算器8は,汎用レジスタ5
から読み出しデータバス13を介して通知されたデータ
についてコプロセッサ命令で指定された演算を行い,そ
の結果を書き込みデータバス14を介して汎用レジスタ
5へ出力する手段である。
【0012】命令バス10は,命令制御部4からコプロ
セッサ命令記憶部6へコプロセッサ命令を通知するバス
である。アクセスバス11は,コプロセッサ命令記憶部
アクセス命令制御部40からコプロセッサ命令記憶部6
へのアクセスに使用されるバスである。
【0013】レジスタ番号バス12は,コプロセッサ命
令制御部7から汎用レジスタ5へ汎用レジスタ番号また
は割込み情報を通知するバスである。読み出しデータバ
ス13は,汎用レジスタ5から読み出したデータをコプ
ロセッサ演算器8へ通知するバスである。書き込みデー
タバス14は,コプロセッサ演算器8の演算結果を汎用
レジスタ5へ通知するバスである。
【0014】本発明では,コプロセッサ命令記憶部6の
内容を参照または更新するコプロセッサ命令記憶部アク
セス命令が用意され,この命令の実行によって,コプロ
セッサ命令記憶部6の内容を,CPU1で動作するプロ
グラムからアクセス可能になっている。
【0015】コプロセッサ命令記憶部6は,1つの命令
キューまたはコプロセッサ命令の種類に応じた複数の命
令キューからなり,コプロセッサ命令記憶部アクセス命
令は,オペランドによってその命令キューにおけるアク
セス対象の位置を指定することができる。このコプロセ
ッサ命令記憶部アクセス命令として,コプロセッサ命令
記憶部6の内容をCPU1内のプログラムがアクセス可
能な汎用レジスタ5(またはメモリ3)にロード/スト
アする命令がある。また,このコプロセッサ命令記憶部
アクセス命令の一つとして,コプロセッサ命令記憶部6
の一部または全部をクリアする命令がある。
【0016】CPU1は,コプロセッサ2内でコプロセ
ッサ命令の実行に関する例外が発生した場合に,例外発
生時点で実行中であったもの以降の後続のコプロセッサ
命令を,例えばコプロセッサ命令記憶部6の内容を編集
することによりキャンセルして例外処理を行う。
【0017】また,CPU1は,コプロセッサ命令記憶
部アクセス命令を用いることにより,自分で発行したコ
プロセッサ命令の内容を確認し,さらにその内容に対し
て行った変更を確認することによって,コプロセッサ2
における各部の正常な動作を検証するプログラムを動作
させる。
【0018】以上のように,本発明は,コプロセッサ2
内のコプロセッサ命令記憶部6をCPU1からアクセス
するための手段と,コプロセッサ命令記憶部6へのアク
セスを実行するための新たな命令群とを提供する。
【0019】
【作用】CPU1のプログラムから目的とするコプロセ
ッサ2内にあるコプロセッサ命令記憶部6の内容を読み
出す命令を発行することにより,指定されたコプロセッ
サ命令記憶部6の内容が汎用レジスタ5またはメモリ3
等を通じてプログラムに通知される。プログラムはその
内容を判断して,適切な処理を行うことができる。さら
に,コプロセッサ命令記憶部6の内容を直接,または内
容を読み出してからそれを編集して書き戻すことができ
るので,コプロセッサ2の動作,特にコプロセッサ命令
記憶部6の動作の正常性を,診断プログラム等によって
容易に検証することができる。
【0020】
【実施例】以下,本発明の実施例を図面を用いて詳細に
説明する。図2は本発明の一実施例を示す構成図であ
る。実施例としてCPU内部に同期的に整数演算命令等
の処理を行う演算器6があり,非同期的に動作するコプ
ロセッサとして浮動小数点演算器33を持つ浮動小数点
演算装置30が備えられている構成を用いて説明する
が,非同期的に動作するコプロセッサであれば同様に動
作可能である。例えば,コプロセッサは,ベクトル演算
装置や特殊な整数演算器を有するものなどであってもよ
い。
【0021】図2において,1は中央処理装置(CP
U),3はメモリ,30は浮動小数点演算装置,5は汎
用レジスタ,6は演算器,10は命令バス,12はレジ
スタ番号バス,13は読み出しデータバス,14は書き
込みデータバス,21は命令アドレス発生装置,22は
命令制御装置,23は一般命令制御部,24はコプロセ
ッサ命令制御部,25は命令キューアクセス命令制御
部,31は浮動小数点命令キュー,32は浮動小数点命
令制御部,33は浮動小数点演算器,34は命令コード
レジスタ,35は第1オペランド・レジスタ,36は第
2オペランド・レジスタ,37は第3オペランド・レジ
スタ,38は例外フラグ用レジスタ,41は浮動小数点
命令キュー番号バス(以下,命令キュー番号バスとい
う),42は浮動小数点命令キュー読み出しデータバス
(以下,命令キュー読み出しデータバスという),43
は浮動小数点命令キュー書き込みデータバス(以下,命
令キュー書き込みデータバスという)を表す。
【0022】命令制御装置22は,命令アドレス発生装
置21から命令のアドレスを得て,メモリ3に格納され
たプログラム命令を順次読み出し,その命令実行の制御
を行う装置である。読み出された命令は,まず一般命令
制御部23においてデコードされ,それが通常の整数演
算命令等であれば,CPU1の演算器6により実行さ
れ,結果が汎用レジスタ5またはメモリ3等に書き込ま
れる。
【0023】命令が浮動小数点演算装置30に実行させ
るべき浮動小数点演算命令である場合には,コプロセッ
サ命令制御部24は,命令バス10を介してその浮動小
数点演算命令を浮動小数点命令キュー31へ送る。
【0024】浮動小数点命令キュー31の各エントリ
は,浮動小数点演算命令の命令コードを格納する命令コ
ードレジスタ34,命令の第1オペランドを指定する第
1オペランド・レジスタ35,命令の第2オペランドを
指定する第2オペランド・レジスタ36,演算結果を格
納する第3オペランドを指定する第3オペランド・レジ
スタ37,例外フラグを格納する例外フラグ用レジスタ
38から構成される。これらの使い方は,特開平4−1
06652号公報等に示されている従来技術と同様であ
る。
【0025】浮動小数点命令制御部32は,浮動小数点
命令キュー31から順次命令を読み出し,命令コードに
応じて浮動小数点演算器33を制御する。浮動小数点演
算器33は,読み出しデータバス13を介して第1オペ
ランドおよび第2オペランドで指定された汎用レジスタ
5から得たデータについて演算を実行し,その演算結果
を書き込みデータバス14を介して第3オペランドで指
定された汎用レジスタ5に書き込む。
【0026】このような浮動小数点演算装置30の動作
中に例外が発生すると次のように動作する。浮動小数点
演算器33は,例外がどのような種類の例外であったか
を例外フラグ用レジスタ38に書き込む。浮動小数点命
令制御部32は,浮動小数点演算器33での例外を検出
するとCPU1に例外発生を通知する。これにより,C
PU1の命令制御装置22は特定の例外割込みを発生さ
せて例外処理ルーチンを起動する。
【0027】命令キューアクセス命令制御部25は,一
般命令制御部23により判読した命令が浮動小数点命令
キュー31にアクセスする命令であるときに起動され
る。命令キューアクセス命令制御部25は,命令キュー
番号バス41,命令キュー読み出しデータバス42,命
令キュー書き込みデータバス43を用いて,浮動小数点
命令キュー31の内容の読み出し,書き出し,クリア等
の処理を制御する。
【0028】本発明の実施例において,コプロセッサ命
令キュー(浮動小数点命令キュー31等)にアクセスす
るために用意された命令の例を,図3に示す。図3にお
いて(A),(B),(C)はコプロセッサが浮動小数
点演算装置の場合の例であるが,他の例としてコプロセ
ッサが整数演算装置である場合の命令の例についても
(D),(E)に示す。
【0029】図3の(A)は命令キュークリア命令,
(B)は命令キューへのムーブ命令,(C)は命令キュ
ーからのムーブ命令,(D)は命令キューへのロード命
令,(E)は命令キューからのストア命令である。特
に,ここでは(B),(C)は汎用レジスタとのmov
e型命令,(D),(E)はメモリとの間のload/
store型命令の例を示しているが,もちろんコプロ
セッサの演算装置の種類およびアクセス命令の種類によ
って,別の命令セットを用いることも可能である。命令
中,‘GRi’は4バイト長のi番目の汎用レジスタ,
‘FQj’は32段・4バイト長または8バイト長で構
成される浮動小数点命令キューのj番目のエントリを表
す。また,‘NQk’はコプロセッサが特殊な整数演算
を実行する整数演算器を持つものである場合の4バイト
長で構成される整数演算命令キューのk番目のエントリ
を表す。これらのバイト長は一例であるので,本発明は
これに限られるわけではない。
【0030】図3(A)の命令キュークリア命令“c
l.fq GRi”は,i番目の汎用レジスタGRiの
値中で‘1’の立っているアドレスに対応する位置の
‘FQj’をクリアする命令である。すなわち,GRi
における第0ビット目が‘1’であれば,命令キューの
先頭エントリを,第1ビット目が‘1’であれば,2番
目のエントリを,…というように該当するエントリをク
リアする。
【0031】図3(B)の命令キューへのムーブ命令
“mv.grfq GRi,FQj”は,‘GRi’と
‘GRi+1’の内容を8バイト長の‘FQj’へ転送
する命令である。
【0032】図3(C)の命令キューからのムーブ命令
“mv.fqgr FQj,GRi”は,8バイト長の
‘FQj’の内容を‘GRi’と‘GRi+1’へ転送
する命令である。
【0033】図3(D)の命令キューへのロード命令
“ldnq GRi,GRj,NQk”は,‘GRi’
と‘GRj’とで求められるアドレスの語データを‘N
Qk’にロードする命令である。
【0034】図3(E)の命令キューからのストア命令
“stnq NQk,GRi,GRj”は,‘NQk’
の語データを‘GRi’と‘GRj’とで求められるア
ドレスにストアする命令である。
【0035】(D)および(E)の命令は,コプロセッ
サが整数演算を実行する整数演算器を持つものである場
合などに用意される。図4は,実施例における例外処理
のフローチャートを示す。図4の左側は中央処理装置
(CPU)による処理,右側はコプロセッサ(浮動小数
点演算装置)による処理を示す。CPUとコプロセッサ
とは非同期で動作する。
【0036】(1) CPU1は読み出した命令中にコプロ
セッサ命令があると,そのコプロセッサ命令を発行して
コプロセッサ2に通知し,コプロセッサ2を起動する。 (2) コプロセッサ2はコプロセッサ命令記憶部6(キュ
ー)に命令を入れ,命令を順次実行する。
【0037】(3) CPU1は,コプロセッサ命令をコプ
ロセッサ2に引き渡した後,その完了を待たずに次の命
令を実行する。 (4) コプロセッサ2において例外が発生すると,CPU
1に対し例外発生を通知し,コプロセッサ命令記憶部6
(キュー)の対応する位置(例外フラグ用レジスタ3
8)に例外情報を格納する。その後,コプロセッサ2は
命令実行状態から保留状態に遷移する。
【0038】(5) CPU1は特定の例外割込みを発生さ
せ,プログラムの処理を割込みハンドラに移す。例外処
理ルーチンが以降の処理を行う。 (6) 例外が発生したコプロセッサ2内のコプロセッサ命
令記憶部6(キュー)の内容を読み出し,処理を継続で
きる例外か継続できない例外かを,例外の種類により判
断する。
【0039】(7) 例えば,ある値を0で除算すると
いうような不当な命令処理が発行されていた場合には,
プロセスを異常終了させる。 (7) 命令自体に問題はない場合,コプロセッサ命令
を再実行(リトライ)させ,リトライ等でコプロセッサ
2の固定障害と判断した場合には,システムをダウンさ
せる(この場合はここで処理は終了する)。
【0040】(8) コプロセッサ2内のコプロセッサ命令
記憶部6(キュー)の内容をクリアして,次の命令の実
行に備える。 (9) コプロセッサ2は,コプロセッサ命令記憶部6(キ
ュー)の内容を指定に従ってクリアする(場合によって
は一部を書き換える)。コプロセッサ2は待機状態また
は実行状態となる。
【0041】(10)CPU1は例外処理から復帰して,次
の処理を行う。 次に,処理装置の保守点検等のために,動作確認用テス
トプログラムで命令キューアクセス命令を使用する場合
の例を説明する。図5はコプロセッサ2の動作テスト処
理方法のフローチャートを示す図である。ここでは,正
しく書かれた通常のコプロセッサ命令では例外が発生し
ないので,まず正常系のテストを行った後に,プログラ
ムで故意に例外を発生させ,例外発生に伴う動作の正当
性を評価する。
【0042】まず,ステップS1において,例外が発生
しない通常の処理で,正常系の動作を確認する。ステッ
プS2において,異常が発生したかどうかを判断する。
異常が発生した場合には,ステップS8で障害通知の処
理を行い,異常が発生しない場合には,次のステップS
3の処理へ進む。
【0043】ステップS3において,故意に不当な命令
を発行することにより例外を起こし,期待した例外と割
込みが発生することを確認する。ステップS4におい
て,期待した例外と割込みが発生したかどうかを調べ,
期待した例外と割込みが発生しなかった場合には異常で
あるので,ステップS8で障害通知の処理を行う。期待
した例外と割込みが発生した場合には,次のステップS
5の処理へ進む。
【0044】ステップS5において,例外割込みで停止
しているコプロセッサ2のコプロセッサ命令記憶部6
(キュー)に対して命令キューアクセス命令を用いて読
み書きを行い,内容を確認する。
【0045】ステップS6において,内容に異常がある
かどうかを判断し,異常がある場合には,ステップS8
で障害通知の処理を行う。異常がない場合には,ステッ
プS7の処理へ進む。
【0046】ステップS7において,正常動作を確認し
た旨のメッセージを出力し,処理を終了する。
【0047】
【発明の効果】以上説明したように,本発明によれば,
例えばCPU上で動作するプログラム,特に割込みハン
ドラは,例外発生時に非同期型コプロセッサに対して,
以下のような処理を行うことが可能となる。
【0048】 割込みの種類を判断し,コプロセッサ
命令記憶部内に命令が残る可能性のない割込みの場合に
はコプロセッサ命令記憶部に対する操作は行わない。 各コプロセッサ命令記憶部内に命令が残っているか
どうかを調べ,残っていなければコプロセッサ命令記憶
部に対する操作は行わない。
【0049】 コプロセッサ命令記憶部内に命令の残
余が存在した場合,割込みがそのコプロセッサからのも
のでなければ,単にコプロセッサ命令記憶部の内容を退
避/復旧するだけで例外処理を済ませる。
【0050】 コプロセッサ命令記憶部内に命令が残
っているコプロセッサからの割込みである場合,発生し
た例外の種類に応じて,退避したコプロセッサ命令記憶
部の内容を編集し,割込みからの復旧時に復元する。
【0051】このような割込み処理を行う場合,コプロ
セッサ命令記憶部の内容全体を把握することにより,よ
り適切な判断に基づいた処理を行うことが可能となる。
また,任意の時点のコプロセッサ命令記憶部の内容を調
査できるので,プログラムの開発における処理手順の最
適化に有効な情報を得ることができる。
【0052】さらに,コプロセッサ命令記憶部の内容を
プログラムから直接アクセスできるので,故障検出を自
動的に行うテスト・プログラムを容易に作成できるよう
になり,それを用いることにより,障害発見を効率よく
行うことが可能になる。
【図面の簡単な説明】
【図1】本発明の原理説明図である。
【図2】本発明の実施例における構成を示す図である。
【図3】本発明の実施例によるアクセス命令の例を示す
図である。
【図4】実施例における例外処理のフローチャートであ
る。
【図5】コプロセッサの動作テスト処理方法のフローチ
ャートである。
【図6】従来技術の例を示す図である。
【符号の説明】
1 中央処理装置(CPU) 2 コプロセッサ 3 メモリ 4 命令制御部 5 汎用レジスタ 6 コプロセッサ命令記憶部 7 コプロセッサ命令制御部 8 コプロセッサ演算器 9 演算器 10 コプロセッサ命令バス(命令バス) 11 コプロセッサ命令記憶部アクセスバス(アクセス
バス) 12 汎用レジスタ番号/割込み情報バス(レジスタ番
号バス) 13 汎用レジスタ読み出しデータバス(読み出しデー
タバス) 14 汎用レジスタ書き込みデータバス(書き込みデー
タバス) 40 コプロセッサ命令記憶部アクセス命令制御部

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 命令を実行する中央処理装置(1) と,そ
    の中央処理装置(1)に接続され,中央処理装置(1) から
    指示されたコプロセッサ命令を非同期的に実行する1個
    以上のコプロセッサ(2) とを有するデータ処理装置であ
    って,前記コプロセッサ(2) 内に中央処理装置(1) から
    指示されたコプロセッサ命令を記憶するコプロセッサ命
    令記憶部(6) と,コプロセッサ命令記憶部(6) に記憶さ
    れている命令の実行を制御するコプロセッサ命令制御部
    (7) と,コプロセッサ命令の演算を実行するコプロセッ
    サ演算器(8) とを備えたデータ処理装置において,前記
    中央処理装置(1) は,前記コプロセッサ(2) におけるコ
    プロセッサ命令記憶部(6) の内容を参照または更新する
    命令の命令実行制御手段(40)を持ち,コプロセッサ命令
    記憶部(6) の内容を中央処理装置(1) で動作するプログ
    ラムから前記命令によりアクセス可能に構成されたこと
    を特徴とするデータ処理装置。
  2. 【請求項2】 請求項1記載のデータ処理装置におい
    て,前記コプロセッサ命令記憶部(6) は1つの命令キュ
    ーまたはコプロセッサ命令の種類に応じた複数の命令キ
    ューからなり,前記中央処理装置(1) がコプロセッサ命
    令記憶部(6) にアクセスする命令は,コプロセッサ命令
    記憶部(6) 内の位置を指定する手段を持つことを特徴と
    するデータ処理装置。
  3. 【請求項3】 請求項1または請求項2記載のデータ処
    理装置において,前記中央処理装置(1) がコプロセッサ
    命令記憶部(6) にアクセスする命令として,コプロセッ
    サ命令記憶部(6) の一部または全部をクリアする命令を
    有することを特徴とするデータ処理装置。
  4. 【請求項4】 請求項1,請求項2または請求項3記載
    のデータ処理装置による例外処理方法において,前記中
    央処理装置(1) は,前記コプロセッサ(2) 内でコプロセ
    ッサ命令の実行に関する例外が発生した場合に,例外発
    生時点で実行中であったもの以降の後続のコプロセッサ
    命令をキャンセルして例外処理を行うことを特徴とする
    例外処理方法。
  5. 【請求項5】 請求項1,請求項2または請求項3記載
    のデータ処理装置による例外処理方法において,前記中
    央処理装置(1) は,前記コプロセッサ命令記憶部(6) を
    アクセスする命令を用いたプログラムにより,自分で発
    行したコプロセッサ命令の内容を確認し,さらにその内
    容に対して行った変更を確認することによって,前記コ
    プロセッサ(2) における各部の正常な動作を検証するこ
    とを特徴とする例外処理方法。
JP6013421A 1994-02-07 1994-02-07 データ処理装置および例外処理方法 Pending JPH07219774A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP6013421A JPH07219774A (ja) 1994-02-07 1994-02-07 データ処理装置および例外処理方法
US08/915,566 US5890010A (en) 1994-02-07 1997-08-21 Data processing apparatus with a coprocessor which asynchronously executes commands stored in a coprocessor command storage section

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6013421A JPH07219774A (ja) 1994-02-07 1994-02-07 データ処理装置および例外処理方法

Publications (1)

Publication Number Publication Date
JPH07219774A true JPH07219774A (ja) 1995-08-18

Family

ID=11832673

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6013421A Pending JPH07219774A (ja) 1994-02-07 1994-02-07 データ処理装置および例外処理方法

Country Status (2)

Country Link
US (1) US5890010A (ja)
JP (1) JPH07219774A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0793168A2 (en) * 1996-02-29 1997-09-03 SANYO ELECTRIC Co., Ltd. Pipeline processing method and device for instruction execution
EP0793167A2 (en) * 1996-02-29 1997-09-03 SANYO ELECTRIC Co., Ltd. Method and apparatus for operation execution using individual instructions for operation initiation and operation result acquisition
US6832117B1 (en) 1999-09-22 2004-12-14 Kabushiki Kaisha Toshiba Processor core for using external extended arithmetic unit efficiently and processor incorporating the same
GB2416230A (en) * 2004-07-15 2006-01-18 Imagination Tech Ltd Control of co-processor instructions issued via a microprocessor output port
WO2006022202A1 (ja) * 2004-08-27 2006-03-02 Matsushita Electric Industrial Co., Ltd. 情報処理装置、例外制御回路

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6865663B2 (en) * 2000-02-24 2005-03-08 Pts Corporation Control processor dynamically loading shadow instruction register associated with memory entry of coprocessor in flexible coupling mode
JP4614500B2 (ja) * 2000-05-12 2011-01-19 富士通株式会社 メモリアクセス制御装置
US7185082B1 (en) 2000-08-09 2007-02-27 Microsoft Corporation Fast dynamic measurement of connection bandwidth using at least a pair of non-compressible packets having measurable characteristics
US7266613B1 (en) * 2000-08-09 2007-09-04 Microsoft Corporation Fast dynamic measurement of bandwidth in a TCP network environment
US6792449B2 (en) * 2001-06-28 2004-09-14 Microsoft Corporation Startup methods and apparatuses for use in streaming content
US7725557B2 (en) * 2002-06-24 2010-05-25 Microsoft Corporation Client-side caching of streaming media content
US7650421B2 (en) * 2002-12-30 2010-01-19 Microsoft Corporation Adaptable accelerated content streaming
US7054774B2 (en) 2003-06-27 2006-05-30 Microsoft Corporation Midstream determination of varying bandwidth availability
US7391717B2 (en) * 2003-06-30 2008-06-24 Microsoft Corporation Streaming of variable bit rate multimedia content
US7818444B2 (en) 2004-04-30 2010-10-19 Move Networks, Inc. Apparatus, system, and method for multi-bitrate content streaming
US7162533B2 (en) 2004-04-30 2007-01-09 Microsoft Corporation Session description message extensions
US7490223B2 (en) * 2005-10-31 2009-02-10 Sun Microsystems, Inc. Dynamic resource allocation among master processors that require service from a coprocessor
KR100781340B1 (ko) * 2006-09-18 2007-11-30 삼성전자주식회사 사용자 정의 확장 연산을 처리하는 연산 시스템 및 방법
WO2009022371A1 (ja) 2007-08-16 2009-02-19 Netcleus Systems Corporation タスク処理装置
US8122229B2 (en) * 2007-09-12 2012-02-21 Convey Computer Dispatch mechanism for dispatching instructions from a host processor to a co-processor
US9361116B2 (en) 2012-12-28 2016-06-07 Intel Corporation Apparatus and method for low-latency invocation of accelerators
US9417873B2 (en) 2012-12-28 2016-08-16 Intel Corporation Apparatus and method for a hybrid latency-throughput processor
US10140129B2 (en) 2012-12-28 2018-11-27 Intel Corporation Processing core having shared front end unit
US9542193B2 (en) 2012-12-28 2017-01-10 Intel Corporation Memory address collision detection of ordered parallel threads with bloom filters
US10346195B2 (en) 2012-12-29 2019-07-09 Intel Corporation Apparatus and method for invocation of a multi threaded accelerator

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4901232A (en) * 1983-05-19 1990-02-13 Data General Corporation I/O controller for controlling the sequencing of execution of I/O commands and for permitting modification of I/O controller operation by a host processor
JP2564805B2 (ja) * 1985-08-08 1996-12-18 日本電気株式会社 情報処理装置
US4926318A (en) * 1986-11-12 1990-05-15 Nec Corporation Micro processor capable of being connected with a coprocessor
US4803481A (en) * 1987-03-30 1989-02-07 Peaktronics, Inc. Asynchronous communications system
JPH01297764A (ja) * 1988-05-25 1989-11-30 Nec Corp プロセッサ
US5293586A (en) * 1988-09-30 1994-03-08 Hitachi, Ltd. Data processing system for development of outline fonts
US5093908A (en) * 1989-04-17 1992-03-03 International Business Machines Corporation Method and apparatus for executing instructions in a single sequential instruction stream in a main processor and a coprocessor
US5218711A (en) * 1989-05-15 1993-06-08 Mitsubishi Denki Kabushiki Kaisha Microprocessor having program counter registers for its coprocessors
US5197138A (en) * 1989-12-26 1993-03-23 Digital Equipment Corporation Reporting delayed coprocessor exceptions to code threads having caused the exceptions by saving and restoring exception state during code thread switching
JP2849189B2 (ja) * 1990-08-27 1999-01-20 富士通株式会社 例外処理システム
JP2850707B2 (ja) * 1993-06-15 1999-01-27 ヤマハ株式会社 楽音制御装置

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0793168A2 (en) * 1996-02-29 1997-09-03 SANYO ELECTRIC Co., Ltd. Pipeline processing method and device for instruction execution
EP0793167A2 (en) * 1996-02-29 1997-09-03 SANYO ELECTRIC Co., Ltd. Method and apparatus for operation execution using individual instructions for operation initiation and operation result acquisition
EP0793167A3 (en) * 1996-02-29 1999-08-25 SANYO ELECTRIC Co., Ltd. Method and apparatus for operation execution using individual instructions for operation initiation and operation result acquisition
EP0793168A3 (en) * 1996-02-29 1999-09-15 SANYO ELECTRIC Co., Ltd. Pipeline processing method and device for instruction execution
US7308320B2 (en) 1999-09-22 2007-12-11 Kabushiki Kaisha Toshiba Processor core for using external extended arithmetic unit efficiently and processor incorporating the same
US6832117B1 (en) 1999-09-22 2004-12-14 Kabushiki Kaisha Toshiba Processor core for using external extended arithmetic unit efficiently and processor incorporating the same
GB2416230A (en) * 2004-07-15 2006-01-18 Imagination Tech Ltd Control of co-processor instructions issued via a microprocessor output port
GB2416230B (en) * 2004-07-15 2006-09-27 Imagination Tech Ltd Microprocessor output ports and control of instructions provided therefrom
US7594097B2 (en) 2004-07-15 2009-09-22 Imagination Technologies Limited Microprocessor output ports and control of instructions provided therefrom
WO2006022202A1 (ja) * 2004-08-27 2006-03-02 Matsushita Electric Industrial Co., Ltd. 情報処理装置、例外制御回路
JPWO2006022202A1 (ja) * 2004-08-27 2008-05-08 松下電器産業株式会社 情報処理装置、例外制御回路
JP2010102732A (ja) * 2004-08-27 2010-05-06 Panasonic Corp 情報処理装置、例外制御回路及び例外制御方法
JP4564011B2 (ja) * 2004-08-27 2010-10-20 パナソニック株式会社 情報処理装置、例外制御回路
JP4569934B2 (ja) * 2004-08-27 2010-10-27 パナソニック株式会社 情報処理装置、例外制御回路及び例外制御方法
US7934082B2 (en) 2004-08-27 2011-04-26 Panasonic Corporation Information processing apparatus and exception control circuit
US8082429B2 (en) 2004-08-27 2011-12-20 Panasonic Corporation Information processing apparatus and exception control circuit

Also Published As

Publication number Publication date
US5890010A (en) 1999-03-30

Similar Documents

Publication Publication Date Title
JPH07219774A (ja) データ処理装置および例外処理方法
JPS6231379B2 (ja)
WO2006039595A2 (en) Executing checker instructions in redundant multithreading environments
JP2000187600A (ja) ウオッチドッグタイマ方式
JP3338488B2 (ja) データ処理装置の検証方法及び装置
JPH07141176A (ja) コマンドリトライ制御方式
US7581152B2 (en) Fault free store data path for software implementation of redundant multithreading environments
JPH0192843A (ja) データ処理装置
JP3240660B2 (ja) データ処理装置
JP3145545B2 (ja) メモリアクセス装置
JP2849189B2 (ja) 例外処理システム
US20020087842A1 (en) Method and apparatus for performing architectural comparisons
JPH1115661A (ja) Cpuの自己診断方法
JP2562838B2 (ja) プロセッサ及びストアバッファ制御方法
JP3327601B2 (ja) 先行制御機構の試験方法
JP2793396B2 (ja) 電子計算機の演算ステータス保持装置
JP3456894B2 (ja) シーケンス制御装置
JPS59172044A (ja) 命令制御方式
JPH01231126A (ja) 情報処理装置
JP3171615B2 (ja) データ転送のリトライ制御方式
JP3180803B2 (ja) スーパースカラプロセッサ
JPS61131047A (ja) パイプライン制御方式
JPH02127731A (ja) 演算レジスタのバイパスチェック方式
JPH07191866A (ja) 演算実行エラー検出方式
JP2786215B2 (ja) 再開処理制御方式

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040127