JPS5979350A - 浮動小数点演算装置 - Google Patents
浮動小数点演算装置Info
- Publication number
- JPS5979350A JPS5979350A JP57190303A JP19030382A JPS5979350A JP S5979350 A JPS5979350 A JP S5979350A JP 57190303 A JP57190303 A JP 57190303A JP 19030382 A JP19030382 A JP 19030382A JP S5979350 A JPS5979350 A JP S5979350A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- signal
- sorting
- classification
- selector
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/483—Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computational Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Nonlinear Science (AREA)
- General Engineering & Computer Science (AREA)
- Complex Calculations (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の技術分野〕
本発明は半導体集積回路装置に係り、特に浮動小数点演
算装置に関する。
算装置に関する。
従来、浮動小数点数の取扱いは標準化芒れておらず、そ
のため浮動小数点数の属性(零、無限大、非数、正規化
数および非正規化数)による分類を回路上で行なう要請
は強くなった。ところが、最近になって浮動小数点数の
取扱いに関するI EEE(The Inptitu
te or Electrical and
ElectronicsEngir+aers 、 I
nc 、 )案が出坏れ、これによって浮動小数点数
の正イl″1rな分類に応じた処理が必要になってきて
いる。
のため浮動小数点数の属性(零、無限大、非数、正規化
数および非正規化数)による分類を回路上で行なう要請
は強くなった。ところが、最近になって浮動小数点数の
取扱いに関するI EEE(The Inptitu
te or Electrical and
ElectronicsEngir+aers 、 I
nc 、 )案が出坏れ、これによって浮動小数点数
の正イl″1rな分類に応じた処理が必要になってきて
いる。
ところで、従来の浮動小数点演算装置では、マイクロプ
ログラム制御の浮動小数点プロセッサが用いられている
。そのため、入力オペランド(入力された演算の対象と
なるデータ)の浮動小数点数の分類は、マイクロプログ
ラムによってなされることが多い。また、属性による分
類に応じた例外処理もマイクロプログラムでな袋れるこ
とが多い。
ログラム制御の浮動小数点プロセッサが用いられている
。そのため、入力オペランド(入力された演算の対象と
なるデータ)の浮動小数点数の分類は、マイクロプログ
ラムによってなされることが多い。また、属性による分
類に応じた例外処理もマイクロプログラムでな袋れるこ
とが多い。
この上うに、従来装置では、マイクロプログラムによっ
てオペランドをその楓性に分類しているため、分類処理
だけで1マシンサイクル以上を必要とし、処理の高速化
を図る上で大きな障害になっている。寸だ、分類に応じ
た例外処理にも多数のマシンサイクルを必要とし、処理
に長い時間がかかることになるっ 〔発明の目的〕 木兄14EJli上述の従来技術の欠点に鑑みてなされ
たもので、人力オペランドの分類処理の高速化と分類に
応じた例外処理の高速化ン図ることのできる浮動小数点
演算装置を提供することを目的とする。
てオペランドをその楓性に分類しているため、分類処理
だけで1マシンサイクル以上を必要とし、処理の高速化
を図る上で大きな障害になっている。寸だ、分類に応じ
た例外処理にも多数のマシンサイクルを必要とし、処理
に長い時間がかかることになるっ 〔発明の目的〕 木兄14EJli上述の従来技術の欠点に鑑みてなされ
たもので、人力オペランドの分類処理の高速化と分類に
応じた例外処理の高速化ン図ることのできる浮動小数点
演算装置を提供することを目的とする。
上記の目的を実現するため本廃明Q」、岑、無1(i4
:犬、非数(例えば、零と無限大を乗斜した結果σ)値
で、あらかじめ定義をれる)、正規化数および非正規化
数の5つの属性に人力オペランドを分類し、その分類に
応じて分類信号を発する分類回路を備え、入力オペラン
ドが特殊な値であるときは演算の種類および分類信号に
もとづいて演1)結呆を出力する浮動小数点演算装置、
および前述の分類回路と、外部入力で指定芒れる演算の
種類と分類信号にもとづいて例外処J!i!結果を出力
する例外処理ユニットと乞備え、例外オペランド(無限
大および非数)が人力芒れたときはそのオペランドもし
くはあらかじめ定められたデータを演41.結果として
出力する浮動小数点演算装置を提供するものである。
:犬、非数(例えば、零と無限大を乗斜した結果σ)値
で、あらかじめ定義をれる)、正規化数および非正規化
数の5つの属性に人力オペランドを分類し、その分類に
応じて分類信号を発する分類回路を備え、入力オペラン
ドが特殊な値であるときは演算の種類および分類信号に
もとづいて演1)結呆を出力する浮動小数点演算装置、
および前述の分類回路と、外部入力で指定芒れる演算の
種類と分類信号にもとづいて例外処J!i!結果を出力
する例外処理ユニットと乞備え、例外オペランド(無限
大および非数)が人力芒れたときはそのオペランドもし
くはあらかじめ定められたデータを演41.結果として
出力する浮動小数点演算装置を提供するものである。
本発明の実施例を第1図乃至第10図を参照して睨明才
る。第1図は一実施例に係る浮動小数点演算装置の構成
概要図である。
る。第1図は一実施例に係る浮動小数点演算装置の構成
概要図である。
Xレジスタ1.Yレジスタ2は第2図に示すIEEE案
準拠の32ビット浮動/J’s数点数形式のオペランド
を保持するレジスタであシ、Xクラス回路3、Yクラス
回路4はこれらのオペランドを零、無限大、非数、正規
化数および非正規化数の5つの属性に分類する回路であ
る。クラスパス5はXクラス回路3およびYクラス回路
4010本の出力信号線からなるパスである。Xクラス
回路306本の出力信号線のうちのDNL 、 EOの
2本は、それぞれ仮数部の最上位ビットおよび指・敷部
の最下位ビットとしてXレジスタ1の出力信号線のうち
の指数部最下位ピッ)Y除く31本と合流し、33本の
信号線からなるXパス6を形成する。Yパス7も同様に
33本の信号線からなる。コマンドパス8は加算、減算
および乗算の3本からなる。
準拠の32ビット浮動/J’s数点数形式のオペランド
を保持するレジスタであシ、Xクラス回路3、Yクラス
回路4はこれらのオペランドを零、無限大、非数、正規
化数および非正規化数の5つの属性に分類する回路であ
る。クラスパス5はXクラス回路3およびYクラス回路
4010本の出力信号線からなるパスである。Xクラス
回路306本の出力信号線のうちのDNL 、 EOの
2本は、それぞれ仮数部の最上位ビットおよび指・敷部
の最下位ビットとしてXレジスタ1の出力信号線のうち
の指数部最下位ピッ)Y除く31本と合流し、33本の
信号線からなるXパス6を形成する。Yパス7も同様に
33本の信号線からなる。コマンドパス8は加算、減算
および乗算の3本からなる。
例外処理ユニット10は、仮数比較器11、制御PLA
(Programmable Logic Arra
y ) 12、第1のセレクタ13および符号回路14
よりなる。仮数比較器11は、Xノ々ス6およびYノ々
スフからXオペランドおよびYオペランドの仮数部列ビ
ットヲ読み出し、その大小暑比較して(X>Y)olと
して出力する。
(Programmable Logic Arra
y ) 12、第1のセレクタ13および符号回路14
よりなる。仮数比較器11は、Xノ々ス6およびYノ々
スフからXオペランドおよびYオペランドの仮数部列ビ
ットヲ読み出し、その大小暑比較して(X>Y)olと
して出力する。
この信号はXオペランドの仮数部がYオペランドの仮数
部よシ犬のとき”1″となり、制御PLA12に与えら
れる。制御PLA12は、クラスパス5から零、無限大
および非数ケ示す6ビツトの信号を入力し、Xパス6お
よびYパス7から仮数符号ヲ1ビットづつ入力し、コマ
ンドパス8から加算および減算を示す2ビツトの信号乞
入力する。制御PLA12は、2ビツトの信号(OX、
OY)2第1のセレクタ13および符号回路14に与え
、1ビツトの信号(EX)’YY2Oセレクタ31に与
え、2ビツトの信号(PS 、 X503Ys ) Y
符号回路14に与える。
部よシ犬のとき”1″となり、制御PLA12に与えら
れる。制御PLA12は、クラスパス5から零、無限大
および非数ケ示す6ビツトの信号を入力し、Xパス6お
よびYパス7から仮数符号ヲ1ビットづつ入力し、コマ
ンドパス8から加算および減算を示す2ビツトの信号乞
入力する。制御PLA12は、2ビツトの信号(OX、
OY)2第1のセレクタ13および符号回路14に与え
、1ビツトの信号(EX)’YY2Oセレクタ31に与
え、2ビツトの信号(PS 、 X503Ys ) Y
符号回路14に与える。
また、1ビツトの信号(NAN )を第1のセレクタ1
3に与え、2ビツトの信号(’NANO” NANI
)”あらかじめROMなどに用意された西ビットの信号
とあわせて31ビツトの信号とし、第1のセレクタ]3
に力える。第1のセレクタ13はXノぐス6およびXパ
ス7から仮数部符号ビットおよび仮数部最上位ビラトラ
除いたそれぞれ31ピツトづつの信号を人力する。そし
て、これら2つの信号およびあらかじめ用意された信号
のうちのいずれかを制御PLA12からの制御信号にも
とづいて選択し、出力を第2のセレクタ31に与える。
3に与え、2ビツトの信号(’NANO” NANI
)”あらかじめROMなどに用意された西ビットの信号
とあわせて31ビツトの信号とし、第1のセレクタ]3
に力える。第1のセレクタ13はXノぐス6およびXパ
ス7から仮数部符号ビットおよび仮数部最上位ビラトラ
除いたそれぞれ31ピツトづつの信号を人力する。そし
て、これら2つの信号およびあらかじめ用意された信号
のうちのいずれかを制御PLA12からの制御信号にも
とづいて選択し、出力を第2のセレクタ31に与える。
符号回路14けXパス6およびXパス7から仮数部符号
ビラトラ入力し、制御PLA1.2から与えられる信号
にもとづいていずれかを選択し、仮数部符号ビットを第
2のセレタク3ノに与える。
ビラトラ入力し、制御PLA1.2から与えられる信号
にもとづいていずれかを選択し、仮数部符号ビットを第
2のセレタク3ノに与える。
浮動小数点乗算ユニット(以下、1乗算ユニット」とい
う)20は、符号プロセッサ21、指数プロセッサ22
、仮数プロセラ+j23、仮数セレクタあ、指数セレク
タ冴、仮数セレクタ制御回路谷および指数セレクタ制御
回路25よりなる。符号プロセッサ21は、Xパス6お
よびYノ々スフがら符号ビラトラ入力し、1ビツトの出
力7第3のセレクタ32に与えるもので、排他的論理和
回路からなる。指数プロセッサ22は、Xパス6および
Xパス7がら指数部8ビツトヲ入力し、8ビツトの出力
ytJ=数セレクタ24に与え、正規化の結果としての
負の指数部(アンダーフロー)を表わす1ビツトの出力
(SIGN)を指数セレクタ制御回路部に与えるもので
、指数部同志の加算および正規化に伴なう調整回路から
なる。仮数プロセラ+jおは、Xパス6およびXパス7
から仮数部24ビツトをへカレ、73ビツトの出力を仮
数セレクタ26に与え、正規化に伴なう5ビツト以上に
わたる仮数部の右シフト7表わす1ビツトの出力(Lo
NGSHIFT )および正の指数部(オーバーフロー
)を表わす1ビツトの出力(POV )を仮数セレクタ
制御回路27に寿えるもので、仮数部同志の固定小数点
乗規、ヲする回路および正規化回路によって形成される
。、指数セレクタ制御回路部は3ビツトの信号(EON
E。
う)20は、符号プロセッサ21、指数プロセッサ22
、仮数プロセラ+j23、仮数セレクタあ、指数セレク
タ冴、仮数セレクタ制御回路谷および指数セレクタ制御
回路25よりなる。符号プロセッサ21は、Xパス6お
よびYノ々スフがら符号ビラトラ入力し、1ビツトの出
力7第3のセレクタ32に与えるもので、排他的論理和
回路からなる。指数プロセッサ22は、Xパス6および
Xパス7がら指数部8ビツトヲ入力し、8ビツトの出力
ytJ=数セレクタ24に与え、正規化の結果としての
負の指数部(アンダーフロー)を表わす1ビツトの出力
(SIGN)を指数セレクタ制御回路部に与えるもので
、指数部同志の加算および正規化に伴なう調整回路から
なる。仮数プロセラ+jおは、Xパス6およびXパス7
から仮数部24ビツトをへカレ、73ビツトの出力を仮
数セレクタ26に与え、正規化に伴なう5ビツト以上に
わたる仮数部の右シフト7表わす1ビツトの出力(Lo
NGSHIFT )および正の指数部(オーバーフロー
)を表わす1ビツトの出力(POV )を仮数セレクタ
制御回路27に寿えるもので、仮数部同志の固定小数点
乗規、ヲする回路および正規化回路によって形成される
。、指数セレクタ制御回路部は3ビツトの信号(EON
E。
EZERO,ENORMAL )’Y指数セレクタ別
に与える。仮数セレクタ制御回路27は2ビツトの信号
(MZERO,MZERO)’に仮数セレクタ部に与え
る。
に与える。仮数セレクタ制御回路27は2ビツトの信号
(MZERO,MZERO)’に仮数セレクタ部に与え
る。
符号プロセッサ2101ビツトの出力と指数セレクタ2
1Iの8ビツトの出力および仮数セレクタ部のおビット
の出力は合わされて、32ビツトの出力(乗算結果)と
して第3のセレクタ32に与えられる。
1Iの8ビツトの出力および仮数セレクタ部のおビット
の出力は合わされて、32ビツトの出力(乗算結果)と
して第3のセレクタ32に与えられる。
浮動小数点加減算ユニッ)40はXパス6およびXパス
7から33ビツトを入力し、コマンドバス8から減算コ
マンド(S、)を入力し、32ビツトの出方(加減現結
果)を第3のセレクタ32に与える。第3のセレクタ3
2には1ビツトの乗算コマンド(M)が与えられ、これ
にもとづいて第3のセレクタ32d、加減算結果もしく
は乗算結果のいずれかを選択し、32ビットの出力を第
2のセレクタ31に与える。
7から33ビツトを入力し、コマンドバス8から減算コ
マンド(S、)を入力し、32ビツトの出方(加減現結
果)を第3のセレクタ32に与える。第3のセレクタ3
2には1ビツトの乗算コマンド(M)が与えられ、これ
にもとづいて第3のセレクタ32d、加減算結果もしく
は乗算結果のいずれかを選択し、32ビットの出力を第
2のセレクタ31に与える。
第2のセレクタ31は制御PLA12がら与えられた信
−S(gx)K:もとづいて加減算1乗算結果もしくは
例外処理結果のいずれかを選択し、32ビツトの信号と
して出力する。
−S(gx)K:もとづいて加減算1乗算結果もしくは
例外処理結果のいずれかを選択し、32ビツトの信号と
して出力する。
第3図はXクラス回路3およびYクラス回路4の詳細な
構成図である。NoIt回fllr 101は仮数部(
f)の下位おビットy<人力し、出力’?!−NOT回
路102およびNAND回路103 、104に与える
。、lNOR回路105は指数部(o)の8ビツト乞入
力し、出力をNAND回路103 、106に与える。
構成図である。NoIt回fllr 101は仮数部(
f)の下位おビットy<人力し、出力’?!−NOT回
路102およびNAND回路103 、104に与える
。、lNOR回路105は指数部(o)の8ビツト乞入
力し、出力をNAND回路103 、106に与える。
、ANI)回路107は指数部(0)の8ビツトを入力
し、出力をNAND回路104゜108に与える。NO
T回路102はNOR回路101の出力乞反転し、その
結果”k NAND回路+06 、10Hに与える。N
OT回路109は指数部の最下位ビット乞入力し、出力
5 NAND回路110に与えるつNAND回路110
はNAND回路1062よびNOT回路109の出力乞
入力とし、NAND回路IllはNAND回路JO3、
IO4、106、108の出力を人力とする。NAND
回路103 、104 、106、.108 、 Il
lの出力はそれぞれ零、無限大、非正規数、非数および
正規数に河応する床面、翁仔、荀こ、に田、下爪となシ
、NハD回路の出力EOは皿が“0″かもしくは指数部
最下位ビットが”1”のとき++ 1uとなる信号であ
る。これによって、Xクラス回路3およびYクラス回路
4は入力オペランドを零、無限大、非数、非正規化数お
よび正規化数の5つの属性に分類し、分類信号を発する
。
し、出力をNAND回路104゜108に与える。NO
T回路102はNOR回路101の出力乞反転し、その
結果”k NAND回路+06 、10Hに与える。N
OT回路109は指数部の最下位ビット乞入力し、出力
5 NAND回路110に与えるつNAND回路110
はNAND回路1062よびNOT回路109の出力乞
入力とし、NAND回路IllはNAND回路JO3、
IO4、106、108の出力を人力とする。NAND
回路103 、104 、106、.108 、 Il
lの出力はそれぞれ零、無限大、非正規数、非数および
正規数に河応する床面、翁仔、荀こ、に田、下爪となシ
、NハD回路の出力EOは皿が“0″かもしくは指数部
最下位ビットが”1”のとき++ 1uとなる信号であ
る。これによって、Xクラス回路3およびYクラス回路
4は入力オペランドを零、無限大、非数、非正規化数お
よび正規化数の5つの属性に分類し、分類信号を発する
。
第4図はX、Yのオペランドと演算の種類とから直ちに
例外処理を必要とする場合の演算規則を示す図表である
。Zero 、 INF 、 NANはそれぞれ零、無
限大および非数のオペランドに対応している。
例外処理を必要とする場合の演算規則を示す図表である
。Zero 、 INF 、 NANはそれぞれ零、無
限大および非数のオペランドに対応している。
A、5A7iは演算の種類を示すもので、加減算ならば
1″、乗算ならば”0パである。2は例外処理ユニツ)
10の出力で、zl は仮数部符号を示し、efZは仮
数部符号ケ除いた部分を示す。また、XS。
1″、乗算ならば”0パである。2は例外処理ユニツ)
10の出力で、zl は仮数部符号を示し、efZは仮
数部符号ケ除いた部分を示す。また、XS。
YsはオペランドX、Yの仮数部符号で、XS”Ysは
それらの排他的論理和をあられす、なお、例外処理の結
果が新しい非数となるときには、その仮数部にhexa
decima1表示で7FFFFO、7FFFFI 。
それらの排他的論理和をあられす、なお、例外処理の結
果が新しい非数となるときには、その仮数部にhexa
decima1表示で7FFFFO、7FFFFI 。
7 FFFF203種の値ケ待った非数を割りあて、こ
れら非数の仮数部符号は”0”とする。
れら非数の仮数部符号は”0”とする。
第5図は制御P1.A12の詳細な構成図で、第4図で
示した演算規則に従って制御信号7発するように構成さ
れている。制御PLA回路は積回路51と和回路52か
らなシ、積回路51では丸印のあるところへの入力の否
定値の積が出力となシ、和回路52では丸印のあるとこ
ろへ入力する積回路51の出力のNORの結果が出力と
なる。従って、第5図の信号線201〜225の出力は
下記の論理式で与えられる。
示した演算規則に従って制御信号7発するように構成さ
れている。制御PLA回路は積回路51と和回路52か
らなシ、積回路51では丸印のあるところへの入力の否
定値の積が出力となシ、和回路52では丸印のあるとこ
ろへ入力する積回路51の出力のNORの結果が出力と
なる。従って、第5図の信号線201〜225の出力は
下記の論理式で与えられる。
201 =XINF’−YZERO−’YINF−YN
AN202=(A+5)−XINF−YZERO203
=Xs■Y3−XINF@YINF204=XNAN@
YZERO−YINF−YNAN205=XNAN−Y
ZERO 206=XNAN@YINF 207 =XNAN IIYNAN ・(x>y )
。
AN202=(A+5)−XINF−YZERO203
=Xs■Y3−XINF@YINF204=XNAN@
YZERO−YINF−YNAN205=XNAN−Y
ZERO 206=XNAN@YINF 207 =XNAN IIYNAN ・(x>y )
。
208=(A+8)・XINF働YINF209=XI
NF−YNAN 210 =XNAN 11YNAN −(X>Y )
0211=XZERO−XINF’−m−YINF21
2−(A+5)−XZERO−YINF213=XZE
RO−XINF−XNAN−YNAN214=XZER
O@YNAN ’、1 =’ := (XS■ys) ・(A+S )
・XINF−YINF216=(A+8)・XINF
−YZERO217=(A+S)・XZERO・YIN
F218=(A+8) −XINF@YZFRO219
=(A+S) −XZERO−YINF220=(A+
5)−XINF−YZERO−1賛払N221=(A+
5)−XZERO−XNAN−YINF222= (X
s(f;ys) ・(A+8)−XINF@YINF+
(、A+S ) −XINF @YZERO+(A+S
) −XZIO−Y lNF223=(入王5)−X
INF−YZERO−YHKR+(A+5)−XZER
O−XNAN−YINF224=XINF−YZFJR
O−YINF−YNAN−I−(A+5)−XINF@
YZERO+Xs■YS−XINF−YINF +XNAN@YZERO@YINF−m−1−XNAN
@YZERO+XNAN−YINF−1−XNAN−Y
NAN−(X>Y)o+XINF−YINF−(A+8
)225=XINF @YNAN+XNM←YNAN
・(X)Y)0+XZERO−M−)ひUm−yiN
F+(A−1−8)−XZERO−YINF+XZER
O−XINF−XNAコN−YNAN+XZERO−Y
NAN従って、出力制御信号は下記のようになる。
NF−YNAN 210 =XNAN 11YNAN −(X>Y )
0211=XZERO−XINF’−m−YINF21
2−(A+5)−XZERO−YINF213=XZE
RO−XINF−XNAN−YNAN214=XZER
O@YNAN ’、1 =’ := (XS■ys) ・(A+S )
・XINF−YINF216=(A+8)・XINF
−YZERO217=(A+S)・XZERO・YIN
F218=(A+8) −XINF@YZFRO219
=(A+S) −XZERO−YINF220=(A+
5)−XINF−YZERO−1賛払N221=(A+
5)−XZERO−XNAN−YINF222= (X
s(f;ys) ・(A+8)−XINF@YINF+
(、A+S ) −XINF @YZERO+(A+S
) −XZIO−Y lNF223=(入王5)−X
INF−YZERO−YHKR+(A+5)−XZER
O−XNAN−YINF224=XINF−YZFJR
O−YINF−YNAN−I−(A+5)−XINF@
YZERO+Xs■YS−XINF−YINF +XNAN@YZERO@YINF−m−1−XNAN
@YZERO+XNAN−YINF−1−XNAN−Y
NAN−(X>Y)o+XINF−YINF−(A+8
)225=XINF @YNAN+XNM←YNAN
・(X)Y)0+XZERO−M−)ひUm−yiN
F+(A−1−8)−XZERO−YINF+XZER
O−XINF−XNAコN−YNAN+XZERO−Y
NAN従って、出力制御信号は下記のようになる。
fNAN1=(A+S r ・XZERO・YINF↑
NANQ=(A+8 ) −XINF−YZERONA
N=(XS■YS)−(A+5)−XINF @YIN
F+(A−1−8)−XINF@YZERO刊A+S)
−XZERO−YINF PS=(7L+S )−XINF−YZERO@YN−
≦>N+(A+S)・X乙酊ω・復QN・YINF’O
X :XINF・YZERO・YINF−YNAN+(
A+8)−XINF−YZERO +XS■YS−XINF−YINI” +XNAN−YZERO−YINF’@YNAN+XN
AN−YZERO+XNAN−YINF+XNAN−Y
NAN拳覆)−Y6 +XINF@YINF−(A+5) OY:XINF@YNAN+XNAN−YNAN−(X
>Y)。
NANQ=(A+8 ) −XINF−YZERONA
N=(XS■YS)−(A+5)−XINF @YIN
F+(A−1−8)−XINF@YZERO刊A+S)
−XZERO−YINF PS=(7L+S )−XINF−YZERO@YN−
≦>N+(A+S)・X乙酊ω・復QN・YINF’O
X :XINF・YZERO・YINF−YNAN+(
A+8)−XINF−YZERO +XS■YS−XINF−YINI” +XNAN−YZERO−YINF’@YNAN+XN
AN−YZERO+XNAN−YINF+XNAN−Y
NAN拳覆)−Y6 +XINF@YINF−(A+5) OY:XINF@YNAN+XNAN−YNAN−(X
>Y)。
+XZERO−XINF@XNAN−YINF+(A+
8)−XZERO−YINF +XZERO−XINFa+YNAN+XZERO−Y
NANEX=XINF+XNAN+YINF+YNAN
第6図は仮数比較回路11の構成図で、X、Y両オペラ
ンドの仮数部列ビット(XMO−XM2:3. YMO
〜YM23)ヲ比較し、結果’&(X’>Y)0として
出力する。この出力(X)Y)0はXの仮数がYの仮数
より犬のときにl″となる。
8)−XZERO−YINF +XZERO−XINFa+YNAN+XZERO−Y
NANEX=XINF+XNAN+YINF+YNAN
第6図は仮数比較回路11の構成図で、X、Y両オペラ
ンドの仮数部列ビット(XMO−XM2:3. YMO
〜YM23)ヲ比較し、結果’&(X’>Y)0として
出力する。この出力(X)Y)0はXの仮数がYの仮数
より犬のときにl″となる。
第7図は第6図の係数比較回路11の単位回路Q伊()
〜CMP23の回路図で、NOT回路、AND回路、N
ANDAND回路回路およびNOR回路で構成される。
〜CMP23の回路図で、NOT回路、AND回路、N
ANDAND回路回路およびNOR回路で構成される。
入力XI 、Yi、 (X=Y )1+tおよび(X>
Y)、+1 と出力(X=Y)lおよび(X>Y )
。
Y)、+1 と出力(X=Y)lおよび(X>Y )
。
の間には、下記に示す論理式が成立する。
(X=Y) 1=(X=Y)t+1・(Xi■Yl)(
X>Y)1=(X>Y)1+t+Xi・η・(X=Y)
1+1第8図は第1のセレクタ13および符号回路14
の構成図である。、131個の単位回路C5ELCO−
8ELe30)は制御PLA12からの3つの信号(N
AN 、 OY 、 OX)にもとづいて、Xノζス6
の値およびYパス7の値および制御PLAからの信号(
fNANt 、 fNANo )で指定された値のうち
のいずれかを選択し、31ビツトの信号(EXHO〜E
XH31)として出力する。また、符号回路14は、制
御PLA12からの3つの信号(oy 、 ox 、
ps) にもとづいて、XSおよびy3およびXS■
Y3 のうちのいずれかを選択し、EXH31を出力す
る。
X>Y)1=(X>Y)1+t+Xi・η・(X=Y)
1+1第8図は第1のセレクタ13および符号回路14
の構成図である。、131個の単位回路C5ELCO−
8ELe30)は制御PLA12からの3つの信号(N
AN 、 OY 、 OX)にもとづいて、Xノζス6
の値およびYパス7の値および制御PLAからの信号(
fNANt 、 fNANo )で指定された値のうち
のいずれかを選択し、31ビツトの信号(EXHO〜E
XH31)として出力する。また、符号回路14は、制
御PLA12からの3つの信号(oy 、 ox 、
ps) にもとづいて、XSおよびy3およびXS■
Y3 のうちのいずれかを選択し、EXH31を出力す
る。
第9図は第8図のセレクタ回路の単位回路(SELCO
〜5ELC30)の構成図で、トランスファーゲート3
01゜302 、303と増幅回路304によ!ll構
成される。
〜5ELC30)の構成図で、トランスファーゲート3
01゜302 、303と増幅回路304によ!ll構
成される。
第10図は符号回路14の詳細な構成図で、AND回路
401 、402 、403およびNOT回路404
、 OR回路405によシ構成される。符号回路14は
、例外処理ユニツ)10の出力として浮動小数点数の仮
数部の符号EXH31’!&与える。その際の論理式は
下記の通りである。
401 、402 、403およびNOT回路404
、 OR回路405によシ構成される。符号回路14は
、例外処理ユニツ)10の出力として浮動小数点数の仮
数部の符号EXH31’!&与える。その際の論理式は
下記の通りである。
EXH31=(XS(flYs)−PS+Ys−PS−
OY+X5−PS−OX次に、第1図乃至第10図に示
す実施例の動作について説明する。
OY+X5−PS−OX次に、第1図乃至第10図に示
す実施例の動作について説明する。
Xレジスタ1およびYレジスタ2のオペランドはそれぞ
れXクラス回路3およびYクラス回路4に与えられ、こ
こで零、無限大、非数、非正規化数および正規化数の5
つの属性に分類烙れる( ZERO、INF 、 NA
N 、 DNL 、 NML )。分類された信号はク
ラスパス5を介して伝送され、制御PLA12、指数セ
レクタ制御回路5および仮数セレクタ制御回路27に与
えられる。
れXクラス回路3およびYクラス回路4に与えられ、こ
こで零、無限大、非数、非正規化数および正規化数の5
つの属性に分類烙れる( ZERO、INF 、 NA
N 、 DNL 、 NML )。分類された信号はク
ラスパス5を介して伝送され、制御PLA12、指数セ
レクタ制御回路5および仮数セレクタ制御回路27に与
えられる。
指数セレクタ制御回路δおよび仮数セレクタ制御回路2
7では下記の論理式に従って入力が変換され、出力が得
られる。
7では下記の論理式に従って入力が変換され、出力が得
られる。
MZERO=XZERO−)YZERO+XDNL −
YDNL+POV+LONGSHIFT EONE=POv EZ ERO=XZ ERO−+−YZERO+XDN
L −YDNL+S I GNENORkiAL=EO
NE+EZERO従って、浮動小数点乗算ユニット20
においては、X、Y両オペランドの少なくとも一方が零
の場合はMZERO、gZEROは共に+1″となり、
X、Y両オペランドが共に非正規化数のときもMZER
O。
YDNL+POV+LONGSHIFT EONE=POv EZ ERO=XZ ERO−+−YZERO+XDN
L −YDNL+S I GNENORkiAL=EO
NE+EZERO従って、浮動小数点乗算ユニット20
においては、X、Y両オペランドの少なくとも一方が零
の場合はMZERO、gZEROは共に+1″となり、
X、Y両オペランドが共に非正規化数のときもMZER
O。
EIROは共に”i”となる。また、Povが“l”で
もLONGSHIFTがI 、 I+でもMZEROは
1”になる。EONEが”、 I+になるのはpovが
1”のとき、つまり指数オーバーフローがあったときに
限られる。EZEROは指数部がアンダーフローしたと
きに°゛1″となる。、KNORMALはEONEもE
ZEROもl”にならなかったときにl”となる、、E
ONE 、 EZERO、ENORMALのいずれがが
l”であることに対応して指数セレクタ24の出力はそ
れぞれ11111111”、 ” oooooooo
” 、指数プロセッサηの出力で定義される。同様に、
MZEROが°′l”であるか否かにより仮数セレク
タの出力はそれぞれ00〜O”(23ビツト全てが0″
)。
もLONGSHIFTがI 、 I+でもMZEROは
1”になる。EONEが”、 I+になるのはpovが
1”のとき、つまり指数オーバーフローがあったときに
限られる。EZEROは指数部がアンダーフローしたと
きに°゛1″となる。、KNORMALはEONEもE
ZEROもl”にならなかったときにl”となる、、E
ONE 、 EZERO、ENORMALのいずれがが
l”であることに対応して指数セレクタ24の出力はそ
れぞれ11111111”、 ” oooooooo
” 、指数プロセッサηの出力で定義される。同様に、
MZEROが°′l”であるか否かにより仮数セレク
タの出力はそれぞれ00〜O”(23ビツト全てが0″
)。
仮数プロセッサηの%ビット出力のいずれかとなるうこ
のようにして、Xクラス回路3およびYクラス回路4か
ら発せられた分類信号は、浮動小数点乗算ユニツ)20
において特殊なオペランドに対し演舞ヲ実行することな
しに分類信号のみから演瀞の結果値を出力するのに用い
ることができろうなお、乗算の場合の実施例について説
明したが、これに限定烙れないことは言うまでもない。
のようにして、Xクラス回路3およびYクラス回路4か
ら発せられた分類信号は、浮動小数点乗算ユニツ)20
において特殊なオペランドに対し演舞ヲ実行することな
しに分類信号のみから演瀞の結果値を出力するのに用い
ることができろうなお、乗算の場合の実施例について説
明したが、これに限定烙れないことは言うまでもない。
乗算ユニツ)20による演算の結果値(32ビツト)と
加減算ユニット40による演算の結果値(32ビツト)
は共に第3のセレクタ32に与えられ、1ビツトのコマ
ンド信号Mによシいずれかが選択きれて第2のセレクタ
31に与えられる。演算の種類およびX。
加減算ユニット40による演算の結果値(32ビツト)
は共に第3のセレクタ32に与えられ、1ビツトのコマ
ンド信号Mによシいずれかが選択きれて第2のセレクタ
31に与えられる。演算の種類およびX。
Y両オペランドの組会せが第4図に示した演算規則から
みて例外処理を必要とする場合に該当するときは、例外
処理ユニット1()から32ビツトの例外処理結果が第
2のセレクタ31に与えられる。第2のセレクタ31は
制御PLA12から与えられる1ビツトの信号EXにも
とづいて例外処理結果を選択し、これを出力する。この
ようにしてXクラス回路3およびYクラス回路4から発
せられた分類信号は例外処理ユニットで例外入力に応じ
た出力を決定するのに使われる。
みて例外処理を必要とする場合に該当するときは、例外
処理ユニット1()から32ビツトの例外処理結果が第
2のセレクタ31に与えられる。第2のセレクタ31は
制御PLA12から与えられる1ビツトの信号EXにも
とづいて例外処理結果を選択し、これを出力する。この
ようにしてXクラス回路3およびYクラス回路4から発
せられた分類信号は例外処理ユニットで例外入力に応じ
た出力を決定するのに使われる。
上記のように本発明によれば、オペランドの分類処理お
よび例外処理をハードウェアで実現する分類回路および
例外処理ユニットヲ備えた浮動小数点演算装置が得られ
るので、従来のマイクロプログラミングによる方式に比
較して処理ン高速化をせることのできる浮動小数点演算
装置が得られる。
よび例外処理をハードウェアで実現する分類回路および
例外処理ユニットヲ備えた浮動小数点演算装置が得られ
るので、従来のマイクロプログラミングによる方式に比
較して処理ン高速化をせることのできる浮動小数点演算
装置が得られる。
第1図は本発明の一実施例の構成概要図、第2図は浮動
小数点数を説明する図、第3図は第1図に示す一実施例
のX、Yクラス回路の構成図、第4図は第1図に示す一
実施例の演謄、規則のi+si明図、第5図は第1図に
示す一実施例の制御PLAの尼4成図、第6図および第
7図は第1図に示す一実施例の仮数比較回路の構成図、
第8図乃至第10図1l−i第1図に示す一実施例の第
1のセレクタおよび符号回路の構成図である。 10・・例外処理ユニット、加・・・浮動小数点乗算ユ
ニットう 出願人代理人 猪 股 清−246− 第8医
小数点数を説明する図、第3図は第1図に示す一実施例
のX、Yクラス回路の構成図、第4図は第1図に示す一
実施例の演謄、規則のi+si明図、第5図は第1図に
示す一実施例の制御PLAの尼4成図、第6図および第
7図は第1図に示す一実施例の仮数比較回路の構成図、
第8図乃至第10図1l−i第1図に示す一実施例の第
1のセレクタおよび符号回路の構成図である。 10・・例外処理ユニット、加・・・浮動小数点乗算ユ
ニットう 出願人代理人 猪 股 清−246− 第8医
Claims (1)
- 【特許請求の範囲】 ■外部入力で指定される演算の種類にもとづいて2つの
オペランドヶ加算、減算、乗算および/もしくは除算し
演算結果値を出力する浮動小数点演算装置において、 零、無限大、非数、正規化数および非正規化数の5つの
属性にもとづいて前記オペ2717分類し分類信号を発
する分類回路を備え、前記演算のfjlf類と前記分類
信号の組合せがあらかじめ定めた組合せであるときはあ
らかじめ用意されたデータを前記演算結果値として出力
することヲ特徴とする浮動小数点演算装置。 2外部入力で指定される演算の種類にもとづいいて2つ
のオペランドを加算、減算、乗算および/′=!たは除
算し演算結果値を出力する浮動小数点演算装置に訃いて
、 零、無限大、非数、非正規化数および正m化数の5つの
属性にもとづいて前記オペランドを分類し分類信号を発
する分類回路と、前記演算の種類および分類信号の組合
ぜがあらがしめ定めた組合せであるときは前記2つのオ
ペランドの値もしくはあらかじめ用意したデータのいず
れかン前記演算結果値として出力する例外処理ユニット
とを備えることケ特徴とする浮動小数点演算装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP57190303A JPS5979350A (ja) | 1982-10-29 | 1982-10-29 | 浮動小数点演算装置 |
US06/546,040 US4649508A (en) | 1982-10-29 | 1983-10-27 | Floating-point arithmetic operation system |
EP83110821A EP0110160B1 (en) | 1982-10-29 | 1983-10-28 | Floating-point arithmetic operation system |
DE8383110821T DE3380454D1 (en) | 1982-10-29 | 1983-10-28 | Floating-point arithmetic operation system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP57190303A JPS5979350A (ja) | 1982-10-29 | 1982-10-29 | 浮動小数点演算装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS5979350A true JPS5979350A (ja) | 1984-05-08 |
Family
ID=16255907
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP57190303A Pending JPS5979350A (ja) | 1982-10-29 | 1982-10-29 | 浮動小数点演算装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US4649508A (ja) |
EP (1) | EP0110160B1 (ja) |
JP (1) | JPS5979350A (ja) |
DE (1) | DE3380454D1 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6045844A (ja) * | 1983-08-24 | 1985-03-12 | Hitachi Ltd | 演算装置 |
JPH02240727A (ja) * | 1989-03-14 | 1990-09-25 | Ricoh Co Ltd | 浮動小数点演算装置 |
JPH04283831A (ja) * | 1991-03-13 | 1992-10-08 | Fujitsu Ltd | 除算器 |
JPH0789314B2 (ja) * | 1984-01-03 | 1995-09-27 | モトローラ・インコーポレーテッド | 浮動小数点条件符号生成方式 |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4943940A (en) * | 1984-09-27 | 1990-07-24 | Advanced Micro Devices, Inc. | Floating point add/subtract and multiplying assemblies sharing common normalization, rounding and exponential apparatus |
US4707783A (en) * | 1984-10-19 | 1987-11-17 | Amdahl Corporation | Ancillary execution unit for a pipelined data processing system |
US4773035A (en) * | 1984-10-19 | 1988-09-20 | Amdahl Corporation | Pipelined data processing system utilizing ideal floating point execution condition detection |
US4698771A (en) * | 1984-12-31 | 1987-10-06 | Gte Communication Systems Corporation | Adder circuit for encoded PCM samples |
JPH0650462B2 (ja) * | 1986-02-18 | 1994-06-29 | 日本電気株式会社 | シフト数制御回路 |
US4800516A (en) * | 1986-10-31 | 1989-01-24 | Amdahl Corporation | High speed floating-point unit |
US4888722A (en) * | 1987-07-02 | 1989-12-19 | General Datacomm, Inc. | Parallel arithmetic-logic unit for as an element of digital signal processor |
US4926355A (en) * | 1987-07-02 | 1990-05-15 | General Datacomm, Inc. | Digital signal processor architecture with an ALU and a serial processing section operating in parallel |
US4991131A (en) * | 1987-10-06 | 1991-02-05 | Industrial Technology Research Institute | Multiplication and accumulation device |
US4914581A (en) * | 1987-10-26 | 1990-04-03 | Motorola, Inc. | Method and apparatus for explicitly evaluating conditions in a data processor |
US5058048A (en) * | 1990-04-02 | 1991-10-15 | Advanced Micro Devices, Inc. | Normalizing pipelined floating point processing unit |
JPH04165530A (ja) * | 1990-10-30 | 1992-06-11 | Nec Corp | 浮動小数点乗算装置 |
US5422805A (en) * | 1992-10-21 | 1995-06-06 | Motorola, Inc. | Method and apparatus for multiplying two numbers using signed arithmetic |
JP3071607B2 (ja) * | 1993-06-01 | 2000-07-31 | 日本電気株式会社 | 乗算回路 |
US5553015A (en) * | 1994-04-15 | 1996-09-03 | International Business Machines Corporation | Efficient floating point overflow and underflow detection system |
US5844830A (en) * | 1996-08-07 | 1998-12-01 | Sun Microsystems, Inc. | Executing computer instrucrions by circuits having different latencies |
WO1998006029A1 (en) * | 1996-08-07 | 1998-02-12 | Valery Yakovlevich Gorshtein | Apparatus and methods for execution of computer instructions |
US6282558B1 (en) * | 1997-12-19 | 2001-08-28 | Matsushita Electric Industrial Co., Ltd. | Data processing system and register file |
GB2447428A (en) * | 2007-03-15 | 2008-09-17 | Linear Algebra Technologies Lt | Processor having a trivial operand register |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US2965297A (en) * | 1957-08-08 | 1960-12-20 | Burroughs Corp | Floating point arithmetic comparison circuit |
US3930232A (en) * | 1973-11-23 | 1975-12-30 | Raytheon Co | Format insensitive digital computer |
US4021655A (en) * | 1976-03-30 | 1977-05-03 | International Business Machines Corporation | Oversized data detection hardware for data processors which store data at variable length destinations |
US4338675A (en) * | 1980-02-13 | 1982-07-06 | Intel Corporation | Numeric data processor |
US4484259A (en) * | 1980-02-13 | 1984-11-20 | Intel Corporation | Fraction bus for use in a numeric data processor |
-
1982
- 1982-10-29 JP JP57190303A patent/JPS5979350A/ja active Pending
-
1983
- 1983-10-27 US US06/546,040 patent/US4649508A/en not_active Expired - Lifetime
- 1983-10-28 DE DE8383110821T patent/DE3380454D1/de not_active Expired
- 1983-10-28 EP EP83110821A patent/EP0110160B1/en not_active Expired
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6045844A (ja) * | 1983-08-24 | 1985-03-12 | Hitachi Ltd | 演算装置 |
JPH0447848B2 (ja) * | 1983-08-24 | 1992-08-05 | Hitachi Ltd | |
JPH0789314B2 (ja) * | 1984-01-03 | 1995-09-27 | モトローラ・インコーポレーテッド | 浮動小数点条件符号生成方式 |
JPH02240727A (ja) * | 1989-03-14 | 1990-09-25 | Ricoh Co Ltd | 浮動小数点演算装置 |
JPH04283831A (ja) * | 1991-03-13 | 1992-10-08 | Fujitsu Ltd | 除算器 |
Also Published As
Publication number | Publication date |
---|---|
DE3380454D1 (en) | 1989-09-28 |
EP0110160B1 (en) | 1989-08-23 |
EP0110160A3 (en) | 1986-05-28 |
EP0110160A2 (en) | 1984-06-13 |
US4649508A (en) | 1987-03-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS5979350A (ja) | 浮動小数点演算装置 | |
US4926370A (en) | Method and apparatus for processing postnormalization and rounding in parallel | |
US5136536A (en) | Floating-point ALU with parallel paths | |
JP2000259394A (ja) | 浮動小数点乗算器 | |
JPH05241792A (ja) | 浮動小数点加減算方式および装置 | |
JPWO2007096982A1 (ja) | 演算処理装置および演算処理方法 | |
JP3313560B2 (ja) | 浮動小数点演算処理装置 | |
JPH04283831A (ja) | 除算器 | |
US7499962B2 (en) | Enhanced fused multiply-add operation | |
CN111124361A (zh) | 算术处理装置及其控制方法 | |
US7552165B2 (en) | Method and system to implement an improved floating point adder with integrated adding and rounding | |
JP2857505B2 (ja) | 除算装置 | |
US7003540B2 (en) | Floating point multiplier for delimited operands | |
JP2507183B2 (ja) | 浮動小数点加減算装置 | |
JPH01282633A (ja) | 非正規化数の処理方式 | |
TWI855303B (zh) | 乘法累加單元及乘法累加方法 | |
JP3137131B2 (ja) | 浮動小数点乗算器及び乗算方法 | |
Sharan | DESIGN OF SINGLE PRECISION FLOATING POINT UNIT (32-BIT NUMBERS) ACCORDING TO IEEE 754 STANDARD USING VERILOG, AND CREATION OF AN EDUCATION MODEL FOR ADVANCED DIGITAL LOGIC AND DESIGN COURSES | |
JP2856792B2 (ja) | 浮動小数点数演算装置 | |
LaMeres | Floating-Point Systems | |
JPH0435777B2 (ja) | ||
JP3522387B2 (ja) | パイプライン演算装置 | |
WO2006059267A2 (en) | Electronic device having multi operand arithmetic circuitry | |
JPH0370029A (ja) | 浮動小数点演算装置 | |
JPH06131161A (ja) | 正規化浮動小数点乗算回路 |