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

浮動小数点演算装置

Info

Publication number
JPH0498524A
JPH0498524A JP2216783A JP21678390A JPH0498524A JP H0498524 A JPH0498524 A JP H0498524A JP 2216783 A JP2216783 A JP 2216783A JP 21678390 A JP21678390 A JP 21678390A JP H0498524 A JPH0498524 A JP H0498524A
Authority
JP
Japan
Prior art keywords
exponent
overflow
value
rounding
floating point
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
JP2216783A
Other languages
English (en)
Inventor
Fuyuki Okamoto
冬樹 岡本
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2216783A priority Critical patent/JPH0498524A/ja
Publication of JPH0498524A publication Critical patent/JPH0498524A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、浮動小数点演算装置におけるオーバーフロー
の検出回路に関わるものである。
〔従来の技術〕
所定フォーマットの浮動小数点データに対して四則演算
をおこない、演算結果に丸め処理を施して出力する浮動
小数点演算装置において、オーバーフローの検出は、従
来、丸め前のデータの指数に丸めにおける最上位からの
桁上げ信号を加え、その結果が浮動小数点データのフォ
ーマットで表現しつる指数の範囲を越えたがどうかを調
べることで実現されていた。
第3図はそのような従来型のオーバーフロー検出をおこ
なう浮動小数点乗算装置の基本構成図である。なお、浮
動小数点データのフォーマットとしては種々のものが用
いられているが、ここでは−例として第2図に示すフォ
ーマットで説明をする。
第3図のフォーマットは、符号部(S)1ビット、指数
部(E)7ビツト、仮数部(M)5E3ビツトからなり
、その値は、 値= (1) 5−2E (0,M) を示すものである。
以下では2つの正規化された入力オペランドに対する浮
動小数点乗算処理とオーバーフローの判定が、どのよう
におこなわれているかを第3図を参照しながら説明する
演算結果データの符号部122は、符号計算機111で
、被乗数である第1オペランドの符号部105と乗数で
ある第2オペランドの符号部106との排他的論理和を
求めることにより出力される。
また、演算結果データの指数部121を求めるために、
まず指数加算器108で、被乗数である第1オペランド
の指数部103と乗数である第2オペランドの指数部1
04との和が求められる。
一方、演算結果データの仮数部120を求めるために、
まず乗算器107で、被乗数である第1オペランドの仮
数部101と乗数である第2オペランドの仮数部102
との積が求められる。
乗算器107の出力に際上位桁あぶれが生じていた場合
は、正規化シフタ109で、1ビツト右シフトがおこな
われる。その場合は、第1の指数更新器110で、指数
加算器108の出力に1を加えることで、正規化による
指数の更新がおこなわれる。
正規化シフタ109の出力は、丸め器112へ入力され
、丸め処理がおこなわれる。丸め処理によって最上位桁
あぶれが生じた場合は丸め後シフタ113によって1ビ
ツト右シフトがおこなわれる。その場合は第2の指数更
新器114によって、第1の指数更新器110の出力に
1が加えられる。
オーバーフロー判定器115は第2の指数更新器114
の出力が第2図で示したフォーマットで表現しうる指数
の範囲を越えたかどうかを判定し、演算結果のオーバー
フローしたか否かを判定する。具体的には、第2の指数
更新器114の出力に桁あぶれが生じたか否か(7ビツ
トであられされる数値の範囲を越えたかどうか)を調べ
ることで、オーバーフローの判定はなされる。
〔発明が解決しようとする課題〕
上述した従来のオーバーフロー判定器を有する浮動小数
点演算装置では、オーバーフローの検出は、第2の指数
更新器114の出力結果を待っておこなわれる。ところ
が第2の指数更新器114は、本質的には加算処理をお
こなうものであって、極めて長い処理時間を有する。
したがって従来の装置は丸め処理がおこなわれてから、
オーバーフローの検出がなされるまでの処理時間は極め
て長いという欠点を有している。
本発明の目的は、丸め処理がおこなわれてから、オーバ
ーフローの検出がなされるまでの処理時間を短縮できる
浮動小数点乗算装置を提供することにある。
〔課題を解決するための手段〕
本発明の装置は、所定フォーマットの浮動小数点データ
に対して四則演算をおこない、演算結果に丸め処理を施
して出力する浮動小数点演算装置において、丸め処理の
前のデータの指数部の値が浮動小数点データのフォーマ
ットで表現しうる最大の指数値であるかどうか及び最大
の指数値よりも大きい値であるかどうかを判定する第1
のオーバーフロー判定器と、丸め処理で生じた最上位桁
上げ信号と、前記第1のオーバーフロー判定器との出力
とを入力とし、オーバーフローの判定をおこなう第2の
オーバーフロー判定器を有することを特徴とする。
〔作用〕
本発明では、丸め処理をおこなう前のデータの指数部に
対して、第1のオーバーフロー判定をおこなう。すなわ
ち、丸め処理をおこなう前のデータの指数部が、所定の
フォーマットで表現しつる最大の指数値よりも大きい値
であれば、この時点で(丸め処理をおこなう前の時点で
)オーバーフローである。
また、第1のオーバーフロー判定では、丸め処理をおこ
なう前のデータの指数部が所定のフォーマットで表現し
うる最大の指数値であるかどうかの判定もおこなう。
もしも、丸め処理をおこなう前のデータの指数部が、フ
ォーマットで表現しうる最大の指数値であれば、仮数部
の丸め処理によって、仮数に最上位桁あふれが発生した
際、オーバーフローとなり、一方、最上位桁あぶれが発
生しなかった場合、オーバーフローではない。
このように、丸め処理による第2の指数更新をおこなう
前に、あらかじめ、オーバーフローか否かの判定をでき
る限りおこなっておき、丸め処理による仮数部最上位桁
上げの値によって最終的なオーバーフローの判定をおこ
なうのが本発明の浮動小数点演算装置の特徴である。
したがって従来のように、丸め処理の後、指数の更新を
おこない、更新後の指数部の値によって、オーバーフロ
ーの判定をするのに比べて、高速な処理が実現できる。
〔実施例〕
次に、本発明の実施例について図面を参照して説明する
第1図は本発明の浮動小数点演算装置の乗算演算の場合
に対する一実施例である。
また、浮動小数点データフォーマットとしては第2図に
示したものを使うことにする。すなわち、符号部(S)
1ビツト、指数部(E)7ビツト、仮数部(M)58ビ
ツトからなり、その値は□、 値= (1) 5−2N!(0,M) を示すものである。また、入力データは常に正規化され
ているものとする。なお、このフォーマットであられし
うる最大の指数は、E=(1111111)2=127
のときで2127である。
演算結果データの符号部22は、符号計算機9で、被乗
数である第1オペランドの符号部5と、乗数である第2
オペラドの符号部6との排他的論理和を求めることによ
り出力される。
また演算結果データの指数部21を求めるために1.ま
ず指数加算器8で、被乗数である第1オペランドの指数
部3と、乗数である第2オペランドの指数部4との和が
求められる。
一方、演算結果データの仮数部20を求めるために、ま
ず乗算器7で被乗数である第1オペランドの仮数部1と
。乗数である第2オペランドの仮数部2との積が求めら
れる。
乗算器7の出力に最上位桁あふれが生じていた場合は、
正規化シフタ10によって1ビツト右シフトがおこなわ
れる。また、その場合は、第1の指数更新器11で、指
数加算器8の出力に1を加えることで、正規化による指
数の更新がおこなわれる。
第1の指数更新器11の出力は、第1のオーバーフロー
判定器15、及び第2の指数更新器14の入力となる。
第1のオーバーフロー判定器15は、第1の指数更新器
14の出力値が該フォーマットで表現しつる最大の指数
値であるかどうか、及び最大の指数値よりも大きい値で
あるかどうかを判定する。
もしも丸め処理をおこなう前のデータの指数部が第2図
のフォーマットであられしうる範囲を越えていた場合、
つまり、 (第1の指数更新器11の出力値)>127の場合は、
丸め処理の結果を待つことなくこの時点でオーバーフロ
ーである。この場合は第1のオーバーフロー検出器15
はオーバーフロー発生を第1のオーバーフロー発生信号
23によって外部へ伝える。
また、(第1の指数更新器11の出力値)=のときは、
そのことを第2のオーバーフロー判定器16へ伝える。
正規化シフタ10の出力は丸め器12に入力となり、仮
数部の丸め処理がおこなわれる。丸め処理によって仮数
部の最上位桁あぶれが生じた場合は、丸め後シフタ13
によって仮数部の1ビツト右シフトがおこなわれる。
第2のオーバーフロー判定器16は、第1のオーバーフ
ロー判定器15の出力と、丸め器12の出力とを入力と
しく第1の指数更新器11の出力値)=127で、かつ
仮数部の丸めによる最上位桁あぶれが生じた場合は、オ
ーバーフロー発生として、第2のオーバーフロー発生信
号24により外部へ伝える。
尚、■第1の指数更新器11の出力がオーバーフローし
ていた場合、■第1の指数更新器11の出力値がフォー
マット最大指数値(127)でありかつ、丸め器12に
より丸め処理によって仮数部に最上位桁あぶれが生じた
場合、の2通り以外には、オーバーフローは生じない。
第2のオーバーフロー判定器16によるオーバーフロー
判定処理と平行して、第2の指数更新器14による、丸
め処理で仮数部最上位桁あぶれが生じた場合の指数更新
と丸め後シフタ13により丸め後シフトがおこなわれる
したがって、従来のように丸め処理の後、指数更新をお
こない、更新後の指数部の値によって、オーバーフロー
の判定をするのに比べて、高速な処理が実現できる。
〔発明の効果〕
本発明の浮動小数点演算装置は、丸め処理後の指数の値
を待つことなく、丸め処理後の仮数部の値で、最上位桁
あぶれが生じたか否かで、オーバーフローの判定をおこ
なうので、全演算時間を短縮することができるという効
果を有している。
【図面の簡単な説明】
第1図は本発明の浮動小数点演算装置の乗算演算の場合
に対する一実施例を示したブロック図、第2図は浮動小
数点データフォーマットの一例を示す図、第3図は従来
の浮動小数点演算装置の一例を示すブロック図である。 1.101・・・第1オペランドの仮数部、2゜102
・・・第2オペランドの仮数部、3,103・・・第1
オペランドの指数部、4,104・・・第2オペランド
の指数部、5,105・・・第1オペランドの符号1B
 、6 *  108・・・第2オペランドの符号部、
7.107・・・乗算器、8,108・・・指数加算器
、9.111・・・符号計算器、10,109・・・正
規化シフタ、11,110・・・第1の指数更新器、1
2゜112・・・丸め器、13,113・・・丸め後シ
フタ、14.114・・・第2の指数更新器、15・・
・第1のオーバーフロー判定器、16・・・第2のオー
バーフロー判定器、115・・・オーバーフロー判定器
、20.120・・・演算結果データの仮数部、21,
121・・・演算結果データの指数部、22,122・
・・演算結果データの符号部、23・・・第1のオーバ
ーフロー発生信号、24・・・第2のオーバーフロー発
生信号。

Claims (1)

  1. 【特許請求の範囲】 所定フォーマットの浮動小数点データに対して四則演算
    をおこない、演算結果に丸め処理を施して出力する浮動
    小数点演算装置において、 丸め処理の前のデータの指数部の値が浮動小数点データ
    のフォーマットで表現しうる最大の指数値であるかどう
    か及び最大の指数値よりも大きい値であるかどうかを判
    定する第1のオーバーフロー判定器と、 丸め処理で生じた最上位桁上げ信号と、前記第1のオー
    バーフロー判定器との出力とを入力とし、オーバーフロ
    ーの判定をおこなう第2のオーバーフロー判定器を有す
    ることを特徴とする浮動小数点演算装置。
JP2216783A 1990-08-17 1990-08-17 浮動小数点演算装置 Pending JPH0498524A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2216783A JPH0498524A (ja) 1990-08-17 1990-08-17 浮動小数点演算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2216783A JPH0498524A (ja) 1990-08-17 1990-08-17 浮動小数点演算装置

Publications (1)

Publication Number Publication Date
JPH0498524A true JPH0498524A (ja) 1992-03-31

Family

ID=16693823

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2216783A Pending JPH0498524A (ja) 1990-08-17 1990-08-17 浮動小数点演算装置

Country Status (1)

Country Link
JP (1) JPH0498524A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100425674B1 (ko) * 1996-10-11 2004-06-11 엘지전자 주식회사 디지탈신호처리기의부동소숫점형식곱셈방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100425674B1 (ko) * 1996-10-11 2004-06-11 엘지전자 주식회사 디지탈신호처리기의부동소숫점형식곱셈방법

Similar Documents

Publication Publication Date Title
US8694572B2 (en) Decimal floating-point fused multiply-add unit
JP4418578B2 (ja) 第1、第2、第3オペランドに浮動小数点演算を適用するためのデータ処理装置および方法
JP4500358B2 (ja) 演算処理装置および演算処理方法
JP3178746B2 (ja) 浮動小数点数のためのフォーマット変換装置
US8185570B2 (en) Three-term input floating-point adder-subtractor
JP3313560B2 (ja) 浮動小数点演算処理装置
CN116643718B (zh) 一种流水线结构的浮点融合乘加装置、方法及处理器
Tsen et al. A combined decimal and binary floating-point multiplier
JP2558669B2 (ja) 浮動小数点演算装置
KR920003493B1 (ko) 부동 소숫점 표기를 기초로 하는 연산회로
JPH0498524A (ja) 浮動小数点演算装置
EP3647939A1 (en) Arithmetic processing apparatus and controlling method therefor
JP2517064B2 (ja) 非正規化数の処理方式
US7051062B2 (en) Apparatus and method for adding multiple-bit binary-strings
JPH04172526A (ja) 浮動小数点除算器
JP3257278B2 (ja) 冗長なシフト数予測とシフト誤り補正を用いた正規化装置
JP3124286B2 (ja) 浮動小数点数演算装置
JP3100868B2 (ja) 浮動小数点数のための算術演算装置
JPH0383126A (ja) 浮動小数点乗算器
JP3522387B2 (ja) パイプライン演算装置
JPH0361224B2 (ja)
JPH05204606A (ja) 浮動小数点演算方式および装置
JPH0814790B2 (ja) 演算処理装置
JPH0552532B2 (ja)
JPH0370029A (ja) 浮動小数点演算装置