JP2747267B2 - 3入力浮動小数点加算装置 - Google Patents

3入力浮動小数点加算装置

Info

Publication number
JP2747267B2
JP2747267B2 JP8012658A JP1265896A JP2747267B2 JP 2747267 B2 JP2747267 B2 JP 2747267B2 JP 8012658 A JP8012658 A JP 8012658A JP 1265896 A JP1265896 A JP 1265896A JP 2747267 B2 JP2747267 B2 JP 2747267B2
Authority
JP
Japan
Prior art keywords
bit
sticky
rounding
intermediate result
mantissa
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.)
Expired - Fee Related
Application number
JP8012658A
Other languages
English (en)
Other versions
JPH09204294A (ja
Inventor
忠春 川口
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 Computertechno Ltd
Original Assignee
NEC Computertechno 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 NEC Computertechno Ltd filed Critical NEC Computertechno Ltd
Priority to JP8012658A priority Critical patent/JP2747267B2/ja
Publication of JPH09204294A publication Critical patent/JPH09204294A/ja
Application granted granted Critical
Publication of JP2747267B2 publication Critical patent/JP2747267B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は3入力浮動小数点加
算装置に関し、特に丸め処理を伴なう3入力浮動小数点
加算装置に関する。
【0002】
【従来の技術】浮動小数点データ形式には、例えばIE
EE規格P754の倍精度D(64ビット)があり、以
下のように示される。
【0003】
【数1】
【0004】ここで、符号Sは1ビットで仮数部の符号
であり、Dが正のとき0,負のとき1となる。仮数部F
は52ビットあり、隠れビットとなる整数部が1となる
ように正規化されている小数部である。指数部Eは11
ビットであり、1023のバイアス値が加算されている
整数として表される。
【0005】このようなデータ形式についての従来の浮
動小数点加減算の丸め方式は2つの入力オペランドを対
象に演算するもので、以下のような手順で行っていた。
【0006】まず、2つの入力オペランドの指数部を比
較し、大きい方の指数部に小さい方の指数部を合わせる
よう、小さい指数部を有する仮数部を指数部の差だけ右
側(下位ビット側)にシフトして桁合わせを行う。桁合
わせ後の仮数部は最下位ビットLの1ビット下位にはガ
ードビットG、ガードビットGの更に1ビット下位には
丸めビットR、丸めビットR未満の全ての下位ビットの
論理和を表すスティッキービットStが拡張される。
【0007】次に、指数部の大きい方の仮数部と桁合わ
せ後の「仮数部−G−R−St」のビット列との絶対値
加減算処理を行い、加算中間結果を算出する。
【0008】加算中間結果は、演算結果として整数部が
1となるように仮数部を上位側あるいは、下位側にシフ
トさせ正規化を行う。そして正規化後、改めて「仮数部
−R−St」として、符号Sと丸めモードに従い丸め処
理を行う。
【0009】図3は2入力の浮動小数点加算装置の例を
示すブロック図、図4は各処理過程での仮数部のフォー
マットを示す説明図である。
【0010】図3および図4を参照して、2つのオペラ
ンドDa,Dbを入力すると、桁合わせ手段10はDa
とDbの指数部EaとEbを減算し、減算結果の値だけ
仮数部Fbを右シフトさせて桁合わせを行う。また、右
シフトのとき最下位ビットLbの下位にはガードビット
Gb,丸めビットRb,およびスティッキービットSt
b(丸めビットRb未満のシフトアウトされる全ビット
の論理和)を拡張して桁合わせ後の仮数部を示す桁合わ
せ信号12と、Daの仮数部Faである桁合わせ信号1
1とを出力する。
【0011】加算手段20は桁合わせ信号11と12を
絶対値加減算し、桁あふれVを含めた57ビットの加算
中間結果21を算出する。
【0012】正規化手段30は、演算結果における整数
部が1になるように加算中間結果21を、シフトさせて
正規化し、改めて「仮数部−丸めビットR−スティッキ
ービットSt」のビット順として中間結果31を出力す
る。このときスティッキービットStは、正規化まえに
桁あふれVが存在する(Vが1のとき)と1ビット右シ
フトして正規化するのでRbとStbの論理和となり、
左シフトして正規化するときはSTbが有効となる。
【0013】丸め手段40は丸めモードに従って中間結
果31の仮数部最下位ビットL,丸めビットR,スティ
ッキービットStと符号Sから、必要に応じて仮数部最
下位ビットLのビット位置に+1を行い演算結果41を
出力する。
【0014】上記においては、2入力の演算について説
明したが、3入力以上の場合には上記の2入力演算を繰
返して実現する。
【0015】
【発明が解決しようとする課題】上記のように、従来の
浮動小数点の加減算においては同時に2つのオペランド
に対して処理している。したがって多数のオペランド加
算する総和演算では処理時間が非常に長くなり、演算処
理の高速化の妨げとなっている。特に、科学技術分野に
おける計算はより高精度で高速な加減算処理が要求され
ており、浮動小数点演算は高速化のネックとなってい
る。
【0016】本発明の目的は、丸め処理を伴なう多入力
の浮動小数点演算を高速化する3入力浮動小数点加算装
置を提供し、上記の欠点を改善することにある。
【0017】
【課題を解決するための手段】本発明の3入力浮動小数
点加算装置は、3個のオペランドの中で最大の指数部を
持つオペランドに他の2個のオペランドをそれぞれ桁合
わせする場合に加算時に発生するおそれのあるスティッ
キービット同士の桁上りを収容するビットを設けて桁合
わせ結果を送出する桁合わせ手段と、前記桁合わせ結果
を入力して絶対値加算し加算中間結果を送出する加算手
段と、前記加算中間結果を入力して正規化し前記スティ
ッキービット同士の桁上りを含む丸めビット未満のすべ
ての下位ビットおよび前記スティッキービットの論理和
を新たなスティッキービットとする中間結果を送出する
正規化手段と、前記中間結果を入力して指定された丸め
モードに従って丸め処理を実行し演算結果を送出する丸
め手段とを有して構成される。
【0018】また、本発明の3入力浮動小数点加算装置
において、前記桁合わせ手段は最大の指数部を持つオペ
ランドに桁合わせする他のオペランドの仮数部を右シフ
トしたときシフトアウトしたビットを左からガードビッ
トG,丸めビットR,および丸めビットR未満のすべて
の下位ビットの論理和を示すスティッキービットStと
し、前記加算手段によって絶対値加算するときスティッ
キービット同士の桁上りを収容するビット0を前記丸め
ビットRと前記スティッキービットSとの間に設け、
「仮数部−G−R−0(1ビット以上)−St」のビッ
ト順に桁合わせするようにして構成される。
【0019】さらに、本発明の3入力浮動小数点加算装
置において、前記正規化手段は前記加算手段が送出する
加算中間結果の仮数部の最上位ビットが1となるように
正規化し、改めて「仮数部F−丸めビットR−丸めビッ
トR未満のすべての下位ビットおよび前記桁合わせ手段
が生成するすべてのスティッキービットの論理和を示す
スティッキービットSt」を中間結果として送出するよ
うにして構成される。
【0020】すなわち、本発明では3個のオペランドに
対し同時に浮動小数点演算を施し、高精度に丸め処理を
行なっている。
【0021】
【発明の実施の形態】以下、本発明について図面を参照
しながら説明する。
【0022】図1は本発明の実施の一形態を示すブロッ
ク図、図2は各処理過程での仮数部のフォーマットを示
す説明図である。特に、図1は3オペランドを同時に入
力とする浮動小数点加算装置の仮数部の加算処理部分を
示すブロック図である。
【0023】また、この実施の形態はIEEE規格P7
54に準拠しており、仮数部は56ビットからなり、最
上位ビット(MSB、ビット0)を隠れビット,ビット
1〜ビット52を有効桁としている。さらに、仮数部の
最下位ビットの1ビット下位にはガードビットG,ガー
ドビットGの更に1ビット下位には丸めビットR,丸め
ビットR未満の全ての下位ビットの論理和を表すスティ
ッキービットStが拡張されている。
【0024】図1および図2を参照すると、桁合わせ手
段15は、3つの入力オペランドDa,Db,Dcの指
数部を比較し、最大の指数部に残りの2つの指数部を合
わせるように、最大値以外の指数部を有する2つのオペ
ランドの仮数部をそれぞれ最大値の指数部から減算し、
減算結果の値だけ右シフトして桁合わせを行なう。そし
て右シフトのときに2つのオペランドの仮数部につい
て、最下位ビットLの1ビット下位にはガードビット
G,ガードビットGの更に1ビット下位には丸めビット
R,丸めビットRの更に1ビット下位に0,更に1ビッ
ト下位に丸めビットR未満の全ての下位ビットの論理和
を表すスティッキービットStを拡張し出力する。
【0025】加算手段25は、桁合わせ手段15からの
指数部の最大の仮数部と、桁合わせ後の2つの「仮数部
−G−R−0−St」とを絶対値加減算し、桁あふれV
0,V1を含めた59ビットの加算中間結果26を出力
する。
【0026】正規化手段30は、加算中間結果26を演
算結果(解)における整数部が1になるようにシフトさ
せて正規化し、改めて「仮数部−丸めビットR−スティ
ッキービットSt」として中間結果31を出力する。こ
のときのスティッキービットStは、桁合わせのときの
2オペランドで有する可能性のあるスティッキービット
StbおよびStcと、正規化後に改めて拡張された丸
めビットR未満の全ての下位ビットとの論理和である。
【0027】丸め手段40は、丸めモードに従って中間
結果31の仮数部最下位ビットL,丸めビットR,ステ
ィッキービットStと符号Sの値から、必要に応じて仮
数部最下位ビットLのビット位置に+1を行い演算結果
41を出力する。
【0028】図1において、例えば3つの入力オペラン
ドDa,Db,Dcを入力し、それぞれの指数部がEa
>Eb>Ecの関係にあったとすると、桁合わせ手段1
5は、3つのオペランドの指数部Ea,Eb,Ecを比
較し、最大値がEaであることから(Ea−Eb),
(Ea−Ec)を行う。この減算結果に従い、仮数部F
bを(Ea−Eb)だけ右シフトし、仮数部Fcを(E
a−Ec)だけ右シフトさせて桁合わせを行う。
【0029】また、桁合わせ結果は、最大値Eaの仮数
部Faはそのまま桁合わせ信号16とし、仮数部Fbは
最下位ビットから下位に「ガードビットGb−丸めビッ
トRb−0−丸めビット以下の全ての論理和をとったス
ティッキービットStb」を拡張して桁合わせ信号17
とし、仮数部Fcも同様に最下位ビットから下位に「ガ
ードビットGc−丸めビットRc−0−丸めビット未満
の全ての下位ビットの論理和をとったスティッキービッ
トStc」を拡張して桁合わせ信号18とし、それぞれ
加算手段25に出力する。
【0030】3つの桁合わせ後の仮数部である桁合わせ
信号16(Fa),17(Fb−Gb−Rb−0−St
b),18(Fc−Gc−Rc−0−Stc)は、それ
ぞれの入力時の符合に従い加算手段25によって絶対値
加算され、59ビットの加算中間結果26(V0−V1
−F−G−R−St′−St)として正規化手段30へ
出力される。ここで、桁合わせ信号17,18のSt
b,Stcが両方とも1で同符合の加算のときはSt′
−St=10となり、スティッキービット同士の加算に
よる仮数部への桁上がりを防ぐ。また、異符合の加算で
あればSt′−St=00となり、相殺されて加算中間
結果に反映される。
【0031】加算中間結果26は正規化手段30によっ
て隠しビットを含めた53ビットの仮数部の最上位ビッ
トが1となるように正規化され、改めて「仮数部F(5
3ビット)−丸めビットR−スティッキービットSt」
とし、中間結果31として丸め手段40に出力される。
このスティッキービットStは正規化後の丸めビットR
未満の全ての下位ビットの論理和とStbとStcとの
論理和をとって生成し、桁合わせの右シフトのときに少
なくとも1ビット以上のビット落ちが有ったことを示
す。
【0032】中間結果31は、丸め手段40によって、
丸めモードと中間結果31の仮数部の最下位ビット,丸
めビットR,スティッキービットStと符号から、丸め
ビット以下を切り捨てるか、あるいは最下位ビットに+
1処理されて演算結果41となる。
【0033】
【発明の効果】以上、詳細に説明したように、本発明に
よれば、丸めビットRとスティッキービットStの間に
1ビット以上の0を入れて加算しているので、最大2オ
ペランドにおいてスティッキービットStが同符合であ
れば桁上がりを防ぎ、異符合であればスティッキービッ
ト同士で相殺され演算精度を低下させることがない。し
たがって、3オペランドを同時に浮動小数点加算し丸め
処理を実行できるという効果がある。
【図面の簡単な説明】
【図1】本発明の実施の一形態を示すブロック図であ
る。
【図2】図1の各処理過程における仮数部のフォーマッ
トを示す説明図である。
【図3】従来例を示すブロック図である。
【図4】図3の各処理過程における仮数部のフォーマッ
トを示す説明図である。
【符号の説明】
15 桁合わせ手段 16〜18 桁合わせ信号 25 加算手段 26 加算中間結果 30 正規化手段 31 中間結果 40 丸め手段 41 演算結果

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 3個のオペランドの中で最大の指数部を
    持つオペランドに他の2個のオペランドをそれぞれ桁合
    わせする場合に加算時に発生するおそれのあるスティッ
    キービット同士の桁上りを収容するビットを設けて桁合
    わせ結果を送出する桁合わせ手段と、前記桁合わせ結果
    を入力して絶対値加算し加算中間結果を送出する加算手
    段と、前記加算中間結果を入力して正規化し前記スティ
    ッキービット同士の桁上りを含む丸めビット未満のすべ
    ての下位ビットおよび前記スティッキービットの論理和
    を新たなスティッキービットとする中間結果を送出する
    正規化手段と、前記中間結果を入力して指定された丸め
    モードに従って丸め処理を実行し演算結果を送出する丸
    め手段とを有することを特徴とする3入力浮動小数点加
    算装置。
  2. 【請求項2】 請求項1記載の3入力浮動小数点加算装
    置において、前記桁合わせ手段は最大の指数部を持つオ
    ペランドに桁合わせする他のオペランドの仮数部を右シ
    フトしたときシフトアウトしたビットを左からガードビ
    ットG,丸めビットR,および丸めビットR未満のすべ
    ての下位ビットの論理和を示すスティッキービットSt
    とし、前記加算手段によって絶対値加算するときスティ
    ッキービット同士の桁上りを収容するビット0を前記丸
    めビットRと前記スティッキービットSとの間に設け、
    「仮数部−G−R−0(1ビット以上)−St」のビッ
    ト順に桁合わせすることを特徴とする3入力浮動小数点
    加算装置。
  3. 【請求項3】 請求項1または2記載の3入力浮動小数
    点加算装置において、前記正規化手段は前記加算手段が
    送出する加算中間結果の仮数部の最上位ビットが1とな
    るように正規化し、改めて「仮数部F−丸めビットR−
    丸めビットR未満のすべての下位ビットおよび前記桁合
    わせ手段が生成するすべてのスティッキービットの論理
    和を示すスティッキービットSt」を中間結果として送
    出することを特徴とする3入力浮動小数点加算装置。
JP8012658A 1996-01-29 1996-01-29 3入力浮動小数点加算装置 Expired - Fee Related JP2747267B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8012658A JP2747267B2 (ja) 1996-01-29 1996-01-29 3入力浮動小数点加算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8012658A JP2747267B2 (ja) 1996-01-29 1996-01-29 3入力浮動小数点加算装置

Publications (2)

Publication Number Publication Date
JPH09204294A JPH09204294A (ja) 1997-08-05
JP2747267B2 true JP2747267B2 (ja) 1998-05-06

Family

ID=11811467

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8012658A Expired - Fee Related JP2747267B2 (ja) 1996-01-29 1996-01-29 3入力浮動小数点加算装置

Country Status (1)

Country Link
JP (1) JP2747267B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4388543B2 (ja) 2006-12-14 2009-12-24 株式会社日立製作所 3項入力の浮動小数点加減算器
US9274750B2 (en) 2012-04-20 2016-03-01 Futurewei Technologies, Inc. System and method for signal processing in digital signal processors
CN106030510A (zh) * 2014-03-26 2016-10-12 英特尔公司 三源操作数浮点加法处理器、方法、系统和指令
US10514891B1 (en) * 2019-05-24 2019-12-24 Google Llc Multi-input floating-point adder

Also Published As

Publication number Publication date
JPH09204294A (ja) 1997-08-05

Similar Documents

Publication Publication Date Title
EP0483864A2 (en) Hardware arrangement for floating-point addition and subtraction
US10019231B2 (en) Apparatus and method for fixed point to floating point conversion and negative power of two detector
JP4388543B2 (ja) 3項入力の浮動小数点加減算器
JP3313560B2 (ja) 浮動小数点演算処理装置
JP2747267B2 (ja) 3入力浮動小数点加算装置
US7552165B2 (en) Method and system to implement an improved floating point adder with integrated adding and rounding
JP2693800B2 (ja) 浮動小数点データ総和演算回路
JPH09204295A (ja) スティッキービット検出回路
JP2558669B2 (ja) 浮動小数点演算装置
JP2919386B2 (ja) 浮動小数点数検出装置および浮動小数点数検出回路
EP0332215B1 (en) Operation circuit based on floating-point representation
US20040093367A1 (en) Method and apparatus for computing an approximation to the reciprocal of a floating point number in IEEE format
CN112667197B (zh) 一种基于posit浮点数格式的参数化加减法运算电路
GB2559039A (en) Leading zero anticipation
JP4439060B2 (ja) 浮動小数点加算器
JP3174974B2 (ja) 浮動小数点演算装置および方法
JPS62128331A (ja) 情報処理装置
JPS63158626A (ja) 演算処理装置
US6654776B1 (en) Method and apparatus for computing parallel leading zero count with offset
JPH03100722A (ja) 精度変換命令の処理方式
JPS5960637A (ja) 浮動小数点演算装置
JPH01282633A (ja) 非正規化数の処理方式
JPH05204606A (ja) 浮動小数点演算方式および装置
JP3124286B2 (ja) 浮動小数点数演算装置
JP2513354B2 (ja) 浮動小数点演算補助回路

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19980113

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080213

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090213

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100213

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees