JPH0282318A - 浮動小数点演算装置 - Google Patents

浮動小数点演算装置

Info

Publication number
JPH0282318A
JPH0282318A JP23517488A JP23517488A JPH0282318A JP H0282318 A JPH0282318 A JP H0282318A JP 23517488 A JP23517488 A JP 23517488A JP 23517488 A JP23517488 A JP 23517488A JP H0282318 A JPH0282318 A JP H0282318A
Authority
JP
Japan
Prior art keywords
instruction
selector
data
register
instruction execution
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
JP23517488A
Other languages
English (en)
Inventor
Tadashi Kagesawa
正 影沢
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 JP23517488A priority Critical patent/JPH0282318A/ja
Publication of JPH0282318A publication Critical patent/JPH0282318A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

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

Description

【発明の詳細な説明】 [概要] ワークステーション等に搭載される浮動小数点演算装置
に関し、 転送、演算などの各命令をNjlな構成により高速処理
できる浮動小数点演算装置を提供することを目的とし、 転送命令を実行する1次命令実行部と演算命令を実行す
る複数の2次命令実行部とを備え、各命令毎にレジスタ
番号状態フラグ、コマンド、デスティネーションデータ
、ソースデータを1組として、複数の命令に対応する複
数組を格納するデータレジスタファイルと、前記データ
レジスタファイルの状態を判別して実行可能な命令を選
択する第1セレクタと、第1セレクタで選択された命令
を未実行状態の2次命令実行部に転送する第3セレクタ
と、2次命令実行部の実行終了を判定して演算結果を取
り出す第4セレクタ、および第4セレクタから受け取っ
た演算結果をデータレジスタファイルにセットする第2
セレクタとを設け、複数のデータレジスタと複数の2次
命令実行部の間で命令実行と実行結果格納を並列動作さ
せるよう構成する。
[産業上の利用分野コ 本発明はエンジニアリングワークステーション等に搭載
される浮動小数点演算装置に関する。
近年、エンジニアリングワークステーションの発達とと
もに、従来大型計算機を使用して行われていた構造解析
、LSI設計などがエンジニアリングワークステーショ
ン上で行われるようになってきた。これらの計算には多
くの計算機パワーを必要とし、特に出現頻度が高く通常
のMPU (マイクロプロセッサ)による処理だけでは
計算時間がかかってしまう浮動小数点演算の計算速度が
全体の処理速度を決める要因となる。そのため、ワーク
ステーションでは、浮動小数点演算専用の演算機構を搭
載し、演算を高速化することが必須となっている。
[従来の技術] 第4図に従来の浮動小数点演算装置を示す。
この従来例は、浮動小数点演算専用装置であり、50は
制御信号、アドレスバスとのインタフェースコントロー
ル、51はデータバスに対すルインタフェースレジスタ
、52は命令デコーダ、53はフォーマット変換回路、
54はデータレジスタ、55はプログラムカウンタ、5
6はマイクロプログラムが格納されたROM (、マイ
クロROMで表示)、57は演算実行部を表す。
第4図の浮動小数点演算の動作を説明すると、図示しな
い中央処理装置から浮動小数点演算の実行指令が与えら
れて、その指令に応して演算が行ねれる。命令実行指令
としての命令実行情報は、CPU (図示せず)からパ
スを経由して決められたプロトコルに従って転送される
。その内容は、コマンド、複数の計算用データ、ステー
タスなどであり、複数回の転送により浮動小数点演算装
置(以下、単に演算装置という)に送られてくる。
演算装置では、インタフェースレジスタ51で受け取っ
たデータをその単精度演算、倍精度演算などの演算装置
のプロトコルに従い、命令デコーダ52に送ったり、フ
ォーマット変換回路53に送ったりした。フォーマント
変換回路53では、例えば単精度形式のデータを倍精度
のデータ形式に変換する等のフォーマットが行われ、変
換されたデータはデータレジスタ54に格納される。命
令デコーダ52に送られたデータ(命令を表す)はデコ
ードされ、プログラムカウンタ55に送られ、マイクロ
ROM56が起動されて、演算実行部57でデータレジ
スタ54とデータ交換を行いながら順次に演算が行われ
る。
[発明が解決しようとする課題] 上記したように従来例の浮動小数点演算装置によれば、
浮動小数点演算は演算命令がシーケンシアルに実行され
るため、演算実行に時間を要し、浮動小数点演算装置を
搭載しても思ったほど性能が上がらないという問題が生
じていた。
本発明は、転送、演算などの各命令を簡単な構成により
高速処理できる浮動小数点演算装置を提供することを目
的とする。
[課題を解決するための手段] 第1図は本発明の基本構成図を示す。
第1図の10はインタフェースレジスタ、11はフォー
マット変換回路、12はインタフェースコントロール部
、13はデコーダ、14は1次命令実行部、15はデー
タレジスタファイル、16は第1セレクタ、17は第2
セレクタ、18は第3セレクタ、19は2次命令実行部
、20は第4セレクタである。
本発明は処理時間は短いが出現頻度の高い転送命令の処
理を1次命令実行部で行い、複数の2次命令実行部にお
いて処理時間は長いが出現頻度の低い演算命令を並列に
実行するものである。
[作用] 図示しないCPUから、データバス上にデータが出力さ
れインタフェースレジスタ10に入力し、アドレスバス
上に命令が出力されてインタフェースコントロール部1
2に入力され、命令とデータは並列に転送されてくる。
インタフェースコントロール部12は外部とのコントロ
ール信号を全て管理する。
1次命令実行部14ではデコーダ13から入力した値の
一部をプログラムカウンタ141の初期値として使用し
、マイクロROM142の起動を行う。なお、マイクロ
ROM142の各処理の起動アドレスと外部からのメモ
リマツプ上の命令配置を同じにしておくと、デコーダで
は殆ど何も処理をせずにマイクロ起動を行うことが可能
である。
命令が演算装置へのロード命令(転送命令)であれば、
1次命令実行部14ではフォーマット変換回路11によ
り変換された値をデータレジスタファイル15内のレジ
スタ状態に従ってデータレジスタファイル15の対応す
る格納部に格納する。
命令が演算装置からのストア命令(転送命令)であれば
、データレジスタファイル15内のレジスタ状態を調べ
、その状態によりデータレジスタファイルより値を読み
出しSフォーマット変換回路11で変換し、外部のメモ
リへ転送する。
命令が演算命令の場合、データレジスタファイル15の
レジスタ状態に従って、コマンドなどをデータレジスタ
ファイル15の対応する位置にセットする。コマンドと
ソースデータがそろって実行可能になったものから第1
セレクタ16がデータレジスタファイル15よりコマン
ド情報を読み出す。この場合、第3セレクタ18からビ
ジー通知があると読み出されない。
第3セレクタ18は第1セレクタ16で読み出されたコ
マンド情報を任意の2次命令実行部19へ転送する。2
次命令実行部19ば、複数の命令が複数の2次命令実行
部で並列に実行され、終了すると実行結果(演算結果)
は第4セレクタ20に集められ、第2セレクタ17に転
送される。第2セレクタ17では実行結果がセントされ
ると、それをソースとして必要としているコマンドに対
し与える。その場合、データレジスタファイル15内の
ソースデータ位置にセットされる。
このように、データがそろって実行可能となったコマン
ドから効率的に演算が並列実行される。
[実施例] 本発明の実施例構成図を第2図および第3図に示す。
第2図および第3図において、30はプログラムカウン
タ、31はマイクロROM、32はレジスタ、33は選
択回路、34はレジスタ状態バッファ、35ばコマンド
バッファ、36はデスティネーションデータファイル、
37ソースデータフアイル、38は第1セレクタ、39
は第2セレクタ、40ば第3セレクタ、41−1〜41
−mは2次命令実行部、42は第4セレクタを表す。
この浮動小数点演算装置において、コマンド情報には、
演算に必要なデータレジスタのソース側のレジスタ番号
とデスティネーション側のレジスタ番号が含まれ、デス
ティネーションレジスタ番号は1つのソースレジスタ番
号を表す。
コマンドはその種類に従ってマイクロプログラムの指定
処理を起動しやすいようにプログラムカウンタの初期値
になるように設定しておく。
コマンドはメモリマツブトインストラクション方式によ
り転送されるものであり、この方式は演算の種類に対応
したプログラムのアドレスが予めメモリ上にマツピング
されており、そのアドレス情報が演算の種別を指定する
情報として転送され、その情報はアドレスバスを介して
受け取られる。
アドレスバスからの情報はプログラムカウンタ30の初
期値、レジスタ32のデスティネーションレジスタ番号
と、ソースレジスタ番号の3つに分割され、指定の個所
に格納される。
命令を実行するための情報は、レジスタ状態ハソファ3
4、コマンドバッファ35、デスティネーションデータ
ファイル36、ソースデータファイル37からなる4つ
のバッファに格納され、この4つが一組になって実行時
に使用される。各バッファにはn個の格納部があり、全
体でn組の実行情報が格納されている。
レジスタ状態バッファ34は、コマンドを識別するため
のレジスタ識別子341、コマンドが実行可能であるか
どうかを示す実行可能フラグ342、コマンドの実行中
であることを示す実行中ソラグ343、コマンドがセッ
トされていることを示す命令セントフラグ344、片方
のソースデータが計算中であることを示す実行終了待ち
ソースレジスタ番号345が格納される。
第1セレクタ38では常にレジスタ状態バッファ34の
実行可能フラグ342を監視しており実行可能になった
ものから順に第3セレクタ40(第3図)へ転送する。
その場合、クロック入力により駆動されるカウンタ38
1はnjiJlの実行情報を1組ずつ順番にアドレスす
るために設けられている。実行可能フラグ342により
実行可能であることが検出された時に第3セレクタ40
よりハ・7フアビジ一信号が上げられた場合、転送が行
なわれない。第3セレクタ40へはレジスタ状態ハ・7
フア34から選択されたレジスタ識別子341、コマン
ド、デスティネーションデータ、ソースデータのセント
が1組にされて転送が行なわれる。
第2セレクタ39は、第3セレクタ40から転送された
実行結果(レジスタ番号と演算結果)をレジスタ番号3
92とデータバッファ393で受取り、レジスタ識別子
341に対応するデスティネーションデータファイル3
6に格納し、レジスタ4[iバッファ34のソースレジ
スタ番号345をコンベア回路391で調べてレジスタ
識別子(レジスタ番号)341と同じ番号のものがあれ
ば、そのソースデータファイル37にも演算結果を同時
に格納するようにする。このソースデータファイル37
に格納する動作は、他の演算結果をソースとして利用す
るコマンドを実行するために行われる。
第3セレクタ40では、複数の2次命令実行部41−1
〜41−mの実行状態を監視し、第1セレクタ38から
転送されデータバッファ401に格納されたコマンド情
報を未実行状態にある2次命令実行部41に転送する。
この中のカウンタ403は複数の2次命令実行部を順番
にアドレスし、それに応じて選択回路404が対応する
2次命令実行部から出力されているビジー信号を選択し
てコンベア回路402に出力する。コンベア回路402
ではビジー信号を“0″と比較して、一致すると(ビジ
ーでない場合)出力指示信号をデータバッファ401に
与え、データバッファの内容(命令実行情@)を選択回
路405に出力する。
選択回路405はこの時カウンタ403によりアドレス
された2次命令実行部へのバスを形成しており、データ
バッファ401から出力された情報をその2次命令実行
部へセットする。
また、データバッファ401中のコマンドバッファは、
コマンド↑青幸ドがセントされるとバッファビジー信号
(“1″出力)を第1セレクタ38に上げ、2次命令実
行部へ読み出されるとおちる(“0”出力)構成となっ
ている。
2次命令実行部41−1〜41−mでは、第3セレクタ
40からコマンド情報が転送されるとデータ番号(レジ
スタ識別子341と同じ)をバッファ411に格納し、
他のデータは演算部412に転送する。演算部412に
おける演算が終了すると、データ番号(レジスタ識別子
)と演算結果は出力へソファ413に格納される。この
2次命令実行部からは、第3セレクタ40からコマンド
情報が転送されるとともにビジー信号を第3セレクタ4
0に上げ、出カバソファ413から演算結果などのデー
タが読み出された時におちるようになっている。
第4セレクタ42(第3図)では2次命令実行部41の
出カバソファ413にセットされているものがあるかど
うか順番に調べ、セットされているものがあれば第2セ
レクタ39に転送する。この場合、カウンタ424の出
力をアドレスとじて選択回路423が対応する2次命令
実行部41から出力されている実行完了信号415を選
択してコンベア回路421で完了状態(“1”信号)か
どうかを判別する。完了状態の場合、コンベア回路42
1から出力指示信号がその2次命令実行部に供給され、
出カバソファ413に格納されているデータ番号(レジ
スタ識別子)と演算結果を出力する。この時、選択回路
422はその2次命令実行部の出力パスを選択しており
 (カウンタ424から選択回路423と同じアドレス
を受&jている)、選択回路422を通った結果データ
は第2セレクタへ送出される。
第2図および第3図の実施例の動作を以下に説明する。
演算装置はメモリマソプドインストラクションを使って
おり、CPU (図示せず)からの全ての命令はMOV
E命令により転送される。演算装置がアクセスされた時
、データバス上の値はデータとし、インクフェースレジ
スタ(第1図の10)に入カレ、アドレスバス上の値は
命令としてインタフェースコンI・ロール部(第1図参
照)からデコーダに入力する。
最初にインタフェースコントロール部(第1図)および
デコーダ(第1図)を介して命令が入力されると、プロ
グラムカウンタ30に初期値がセットされマイクロRO
M3 Lが起動される。
命令が外部からレジスタへの転送命令(1次命令)であ
れば、レジスタ状態バッファ34中の命令セン1〜フラ
グ344.実行中ソラグ343を調べ、いずれもオフで
あれば指定されたデスティネーションデータファイル3
6の位置に値を格納する。オンであれば、前にセットさ
れた命令が実行終了していないのでオフになるまで転送
を待つことになる。
命令がレジスタから外部への転送命令(1次命令)であ
れば命令セットフラグ344.実行中ソラグ343を調
べ、その状態により上記と同様の処理を行う。これらの
転送命令は、第1図における1次命令に相当し、演算命
令とは別に実行される。
命令が演算命令(2次命令)の場合、その処理は次のよ
うに行われる。
■デスティネーションレジスタ番号に対応するレジスタ
状態バッファ34の命令セットフラグ344を調べて、
オンの時はオフになるまで実行待ちとなり、オフの場合
は、次の■へ移る。
■コマンドをセットし、指定のソースレジスタのレジス
タ状態バッファ34の命令セットフラグ344、実行中
ソラグ343を調べる。この場合、両者がオンであれば
、レジスタ状態バッファ34のソースレジスタ番号34
5に指定のソースレジスタ番号をセットし、何れかがオ
フであれば指定のソースレジスタのデスティネーション
データファイル36に格納されている値をコマンドで指
定されたデスティネーションに対応するソースデータフ
ァイル37に格納する。
■実行中ソラグ343をオフ、実行可能フラグ342を
オンとしてコマンド情報を第3セレクタ40に転送する
これにより第3セレクタ40にコマンド情報が転送され
ると第3セレクタ40で未実行状態になる任意の2次命
令実行部41でその命令が実行され、実行終了後第4セ
レクタ42から第2セレクタ39に転送される。第2セ
レクタ39ではコマンドの終結処理を次のように行う。
■レジスタ識別子341に対応するデスティネーション
データファイル36内の位置に値を格納する。
■レジスタ状態バッファ34のソースレジスタ番号34
5を全て調べ、結果のレジスタ識別子341と同じもの
があるかどうか比較して、同じものがあればそれに対応
するソースデータファイル37内に結果を格納し、実行
可能フラグ342をオンにする。
このようにして、2次命令実行部41で演算命令が並列
に実行されると共に転送命令も並列に実行されるので、
高速処理が可能となる。
[発明の効果] 本発明によれば、1次命令実行部と複数の2次命令実行
部の動作をレジスタ状態で管理することにより命令の並
列実行を可能とし、浮動小数点演算の処理能力を大幅に
向上させることができる。
【図面の簡単な説明】
第1図は本発明の基本的構成図、第2図および第3図は
本発明の実施例の構成図、第4図は従来例の構成図であ
る。 第1図中、 10;インタフェースレジスタ 11:フォーマソト変換回路 12:インタフェースコントロール部 13:デコーダ 14:1次命令実行部 15:データレジスタファイル 16:第1セレクタ 17:第2セレクタ 18:第3セレクタ 19:2次命令実行部 20:第4セレクタ 従来例の構成図 第4図

Claims (1)

  1. 【特許請求の範囲】 ワークステーション等の情報処理装置に搭載される浮動
    小数点演算装置において、転送命令を実行する1次命令
    実行部(14)と演算命令を実行する複数の2次命令実
    行部(19)とを備え、各命令毎にレジスタ状態、コマ
    ンド、デスティネーションデータ、ソースデータを1組
    として、複数の命令に対応する複数組を格納するデータ
    レジスタファイル(15)と、 前記データレジスタファイル(15)の状態を判別して
    実行可能な命令を選択する第1セレクタ(16)と、第
    1セレクタ(16)で選択された命令を未実行状態の2
    次命令実行部(19)に転送する第3セレクタ(18)
    と、2次命令実行部(19)の実行終了を判定して演算
    結果を取り出す第4セレクタ(20)、および第4セレ
    クタ(20)から受け取った演算結果をデータレジスタ
    ファイルにセットする第2セレクタ(17)とを設け、
    複数のデータレジスタと複数の2次命令実行部の間で命
    令実行と実行結果格納を並列動作させることを特徴とす
    る浮動小数点演算装置。
JP23517488A 1988-09-20 1988-09-20 浮動小数点演算装置 Pending JPH0282318A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP23517488A JPH0282318A (ja) 1988-09-20 1988-09-20 浮動小数点演算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23517488A JPH0282318A (ja) 1988-09-20 1988-09-20 浮動小数点演算装置

Publications (1)

Publication Number Publication Date
JPH0282318A true JPH0282318A (ja) 1990-03-22

Family

ID=16982163

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23517488A Pending JPH0282318A (ja) 1988-09-20 1988-09-20 浮動小数点演算装置

Country Status (1)

Country Link
JP (1) JPH0282318A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6502186B2 (en) 1998-07-07 2002-12-31 Fujitsu Limited Instruction processing apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6502186B2 (en) 1998-07-07 2002-12-31 Fujitsu Limited Instruction processing apparatus

Similar Documents

Publication Publication Date Title
US8004533B2 (en) Graphics input command stream scheduling method and apparatus
US7545381B2 (en) Interruptible GPU and method for context saving and restoring
US7583268B2 (en) Graphics pipeline precise interrupt method and apparatus
US7580040B2 (en) Interruptible GPU and method for processing multiple contexts and runlists
US4949241A (en) Microcomputer system including a master processor and a slave processor synchronized by three control lines
JPH07120338B2 (ja) 共同プロセッサによる命令の実行をデータプロセッサが調整する方法および該データプロセッサ
JPH0916409A (ja) マイクロコンピュータ
JPH0282318A (ja) 浮動小数点演算装置
JP2918019B2 (ja) シングルチップマイクロプロセッサのテスト回路
JPH056281A (ja) 情報処理装置
JPH0916468A (ja) メモリアクセス方式
JPS59163671A (ja) ベクトル処理装置
EP0015276B1 (en) A digital pipelined computer
JPS6240736B2 (ja)
JPS61123937A (ja) データ処理装置のデータ駆動型制御方式
JPS6357821B2 (ja)
JPH0279122A (ja) 浮動小数点演算機構
JP2583614B2 (ja) ベクトル演算装置
JPS6221131B2 (ja)
JPH0447350A (ja) 主記憶読み出し応答制御方式
JP2506591B2 (ja) 補助処理装置
JPH0150936B2 (ja)
JPS60193046A (ja) 命令例外検出方式
JPH05334074A (ja) マイクロプロセッサ
JPS58166454A (ja) デ−タ処理装置