JP2674492B2 - 浮動小数点加減算装置とその制御方式 - Google Patents

浮動小数点加減算装置とその制御方式

Info

Publication number
JP2674492B2
JP2674492B2 JP5330436A JP33043693A JP2674492B2 JP 2674492 B2 JP2674492 B2 JP 2674492B2 JP 5330436 A JP5330436 A JP 5330436A JP 33043693 A JP33043693 A JP 33043693A JP 2674492 B2 JP2674492 B2 JP 2674492B2
Authority
JP
Japan
Prior art keywords
bit
subtractor
input
exponent
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.)
Expired - Lifetime
Application number
JP5330436A
Other languages
English (en)
Other versions
JPH07191823A (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 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 JP5330436A priority Critical patent/JP2674492B2/ja
Publication of JPH07191823A publication Critical patent/JPH07191823A/ja
Application granted granted Critical
Publication of JP2674492B2 publication Critical patent/JP2674492B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は浮動小数点加減算装置に
関する。
【0002】
【従来の技術】浮動小数点データ形式には様々な形式が
存在する。例えば符号1ビット、指数部15ビット、仮
数部48ビット構成の形式や、符号1ビット、指数部1
1ビット、仮数部52ビット構成の形式等が知られてい
る。以下では、このような複数のデータ形式に対応でき
る、従来構成の浮動小数点加減算器について説明する。
【0003】浮動小数点加減算処理は次の4ステップで
実行される。指数減算、桁合わせ右シフト、仮数
加減算、演算結果の正規化。本発明の対象ステップは
、なので、この2つのステップについて説明する。
【0004】浮動小数点加減算では、まず2つの入力オ
ペランドの指数の差を計算する。そしてその差をシフト
量として、小さい方のオペランドの仮数部を右シフトす
ることで、桁合わせを行う。次に、桁合わせされた小さ
い方のオペランドの仮数部と、大きい方のオペランドの
仮数部とが、加減算される。
【0005】さて、従来構成の浮動小数点加減算装置で
は、2種類の浮動小数点データ形式に対応するために指
数減算器入力口にシフタを設けていた(特開平4−10
7730号公報)。例として図2のような2種類の形式
に対応できる浮動小数点加減算装置の動作を説明する。
図2(a)は符号1ビット、指数部11ビット、仮数部
52ビット構成の第1の浮動小数点データ形式、図2
(b)は符号1ビット、指数部15ビット、仮数部48
ビット構成の第2の浮動小数点データ形式である。図3
は2種類の形式に対応できる従来の浮動小数点加減算装
置の基本構成を示す図である。まず第1入力オペランド
の、符号を除いた上位15ビットのデータ311と、第
2入力オペランドの、符号を除いた上位15ビットのデ
ータ312とが、それぞれ第1の右シフタ301と、第
2の右シフタ302とに送出される。第1の右シフタ3
01、第2の右シフタ302は形式選択信号310によ
って制御され、次のようなシフト動作を行う(図4): 第1の浮動小数点データ形式で処理するとき(図4
(a))……4ビット右シフト 第2の浮動小数点データ形式で処理するとき(図4
(b))……シフトせず単なるスルー動作 このようなシフト処理が必要となるのは2種類の形式で
その指数部のビット長が異なるからであり、第1のデー
タ形式は、第2のデータ形式に比べて、指数部が4ビッ
ト短いので、位置調節のために4ビット右シフトが必要
となる。
【0006】第1の右シフタ301、第2の右シフタ3
02の出力は15ビット指数減算器303の入力とな
る。そして15ビット指数減算器303は、2つの入力
の差を計算し出力する。この指数の差317は、桁合わ
せシフタ305のシフト量を与える入力となる。
【0007】また第1、第2入力オペランド313,3
14は比較選択回路304の入力になる。比較選択回路
304は、小さい方のオペランドの仮数部315を桁合
わせシフタ305に送出する。桁合わせシフタ305
は、指数の差317をシフト量として、小さい方のオペ
ランドの仮数部315を右シフトする。比較選択回路3
04の、もうひとつの出力であるところの、大きい方の
オペランドの仮数部316と、桁合わせシフタ305の
出力とが、仮数加減算器306によって加減算される。
【0008】浮動小数点演算では、この後に正規化処理
が必要であるが、それは本発明には直接関係しないの
で、図および説明は省略する。なお浮動小数点加減算方
式とその装置については「コンピュータの高速演算方
式」(近代科学者、ワン著)に詳しいので参照のこと。
【0009】
【発明が解決しようとする課題】従来の浮動小数点加減
算装置では、まず指数減算におけるビット位置調節のた
めに形式制御信号が右シフタを制御しなければならない
が、この制御は負荷が重いために低速であり、全体の遅
延時間を長くしてしまうという欠点があった。
【0010】
【課題を解決するための手段】本発明は第1入力オペラ
ンドと第2入力オペランドの指数の差を計算し、その値
をシフト量として、小さい方の入力オペランドの仮数部
をシフトして桁合わせを行い、仮数部を加減算する浮動
小数点加減算装置において、その桁合わせシフト量算出
部が、yビット指数減算器と、前記yビット指数減算器
の桁借り信号と形式選択信号とを入力とするANDゲー
トと、前記ANDゲートの出力を最下位桁への桁借り入
力とするxビット指数減算器と、前記xビット指数減算
器のxビット長の出力と前記yビット指数減算器のyビ
ット長の出力とを連接したx+yビット長のデータを入
力とし前記形式選択信号によって制御される右シフタと
から構成されることを特徴とする浮動小数点加減算装置
である。
【0011】
【作用】本発明の浮動小数点加減算装置は、入力オペラ
ンドの指数部を右シフタを経由させずに直接に指数減算
器へデータを送出する。指数減算器の差計算と並列に右
シフタの制御を行うので、シフタの制御の遅延時間が直
接クリティカルにはならず、高速な処理が実現出来る。
【0012】ただし単純に右シフタを取り除いただけで
は次のような誤った動作をしてしまう。つまり、指数部
が短い方の形式で指数計算をするときに、指数部の右側
に配列させれいる仮数部まで一緒に指数減算器の入力と
なってしまい、間違った減算結果が出力されてしまう。
そこで、このような不都合を避けるために指数減算器を
以下のように2つの減算器に分ける。一つの指数減算器
は、その入出力ビット長を、2種類の指数部のビット長
のうちの短いほうのビット長(これをxとする)と同じ
にする。もう一つの指数減算器は、その入出力ビット長
を、2種類の指数部のビット長の差(これをyとする)
と同じにする。つまりx+yが大きい方の指数部ビット
長となる。さらにyビット指数減算器で発生する桁借り
を、xビット指数減算器の最下位桁への桁借り入力とす
るか否かが、制御できるようにする。そして指数部の長
いほうの形式で処理をおこなうときには、yビット指数
減算器からの桁借り信号がxビット指数減算器へ伝播す
るようにし、xビット指数減算器とyビット指数減算器
とが連結されてx+yビット長の指数減算を行うように
する。もう一つの形式で処理をおこなうときには、yビ
ット指数減算器からの桁借り信号がxビット指数減算器
へ伝播しないようにして、xビット指数減算器とyビッ
ト指数減算器とを切り放す。xビット指数減算器とyビ
ット指数減算器の計算結果を連接してから右シフトを行
えば、求める指数差を得ることができる。
【0013】
【実施例】次に図面を用いて本発明の浮動小数点加減算
装置について説明する。
【0014】図1は本発明の一実施例を示す図である。
【0015】図1においてxは2種類の浮動小数点デー
タ形式において小さい方のビット長であり、yは2種類
の形式の指数部のビット長の差である。以下では例とし
て、図2の2つの形式を用いて説明する。よって以後の
説明では、x=11(第1のデータ形式の指数部のビッ
ト長)、y=15−11=4である。
【0016】図1に示したように、x(=11)ビット
指数減算器101には、第1入力オペランドの符号を除
いた上位x(=11)ビットのデータ111と、第2入
力オペランドの符号を除いた上位x(=11)ビットの
データ113とが、入力される。そしてy(=4)ビッ
ト減算器には第1入力オペランドの符号を除いた上位第
x+1ビット目から第x+yビット目までのデータ11
2と、第2入力オペランドの符号を除いた上位第x+1
ビット目から第x+yビット目までのデータ114とが
入力される。
【0017】つまりxビット指数減算器101の入力
は:第1の浮動小数点データ形式で処理するとき……指
数部11ビット。
【0018】第2の浮動小数点データ形式で処理すると
き……指数部上位11ビット またyビット指数減算器103の入力は:第1の浮動小
数点データ形式で処理するとき……仮数部上位4ビット 第2の浮動少数点データ形式で処理するとき……指数部
下位4ビット yビート減算器102は入力されたyビット長のデータ
112、114の減算をおこなう。この減算で発生する
桁借りを、xビット減算器へ伝播させるか否かがAND
ゲート107によって制御される。制御は次のように行
う:第1の浮動小数点データ形式で処理するとき……桁
借りは伝播させない。そこでANDゲートのもう一方の
入力端子110には値0を入力す。
【0019】第2の浮動小数点データ形式で処理すると
き……桁借りを伝播させる。そこでANDゲートのもう
一方の入力端子110には値1を入力する。
【0020】xビット減算器101の出力とyビット減
算器102の出力とは連接されて右シフタ103の入力
となる。右シフタ103は以下のように制御される。
【0021】第1の形式で処理するとき……4ビット右
シフト 第2の形式で処理するとき……シフトせず単なるスルー
動作 以上のように計算された指数の差117が従来構成で計
算したときの指数の差(図3の317)と等しいことは
明らかである。
【0022】なお、第1,第2の入力オペランド11
5,116は比較選択回路104の入力になる。比較選
択回路104は、小さい方のオペランドの仮数部118
を桁合わせシフタ105に送出する。桁合わせシフタ1
05は指数の差117をシフト量として小さい方のオペ
ランドの仮数部118を右シフトする。比較選択回路1
04のもうひとつの出力であるところの、大きい方のオ
ペランドの仮数部119と、桁合わせシフタ105の出
力とが仮数加減算器106によって加減算される。
【0023】この後に正規化処理が必要であるが、それ
は本発明には直接関係しないので、従来構成説明時と同
じく省略する。
【0024】以上の説明では、浮動小数点データ形式と
して図2を例としたが、その他の形式に対しても本発明
を同じ原理で適用することは容易である。
【0025】
【発明の効果】複数の種類の浮動小数点データ形式に対
応した浮動小数点加減算装置において、従来構成の装置
では形式選択信号が駆動する右シフタの負荷が重いため
に低速であった。これに対し本発明では、指数減算器へ
直接データを送出しており、指数減算と並列に右シフタ
の制御を行うことが出来るので、右シフタ制御時間が全
体の処理の律速部分にならずにすむ。ただし指数減算器
を2個設けて、減算器間の桁借り伝播部にANDゲート
を挿入する必要が生じた。このANDゲート分の遅延が
増加してしまうが、通常は、右シフタ制御の時間の方が
大きいので差引分の高速化が実現できる。
【図面の簡単な説明】
【図1】本発明の浮動小数点加減算装置の一実施例を示
す図である。
【図2】(a),(b)はそれぞれ第1,第2の浮動小
数点データ形式を示す図である。
【図3】従来の浮動小数点加減算装置の基本構成を示す
図である。
【図4】(a),(b)はそれぞれ第1,第2の浮動小
数点データ形式時の従来処理方法を示す図である。
【符号の説明】
101 xビット指数減算器 102 yビット指数減算器 103,403 右シフタ 104,304 比較選択回路 105,305 桁合わせシフタ 106,306 仮数加減算器 107 ANDゲート 110,310 形式選択信号 111,113 第1,第2の入力オペランドの符号
を除いた上位xビットのデータ 112,114 第1,第2の入力オペランドの符号
を除いた上位第x+1ビット目から上位第x+yビット
目までのデータ 115,116,313,314 第1,第2入力オ
ペランド 117,317 指数の差 118,315 小さい方のオペランドの仮数部 119,316 大きい方のオペランドの仮数部 120 桁借り信号 301,302 第1,第2の右シフタ 303 15ビット指数減算器 311 第1入力オペランドの符号を除いた上位15
ビットのデータ 312 第2入力オペランドの符号を除いた上位15
ビットのデータ

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 第1入力オペランドと第2入力オペラン
    ドの指数の差を計算し、その値をシフト量として、小さ
    い方の入力オペランドの仮数部をシフトして桁合わせを
    行い、仮数部を加減算する浮動小数点加減算装置におい
    て、その桁合わせシフト量算出部が、yビット指数減算
    器と、前記yビット指数減算器の桁借り信号と形式選択
    信号とを入力とするANDゲートと、前記ANDゲート
    の出力を最下位桁への桁借り入力とするxビット指数減
    算器と、前記xビット指数減算器のxビット長の出力と
    前記yビット指数減算器のyビット長の出力とを連接し
    たx+yビット長のデータを入力とし前記形式選択信号
    によって制御される右シフタとから構成されることを特
    徴とする浮動小数点加減算装置。
JP5330436A 1993-12-27 1993-12-27 浮動小数点加減算装置とその制御方式 Expired - Lifetime JP2674492B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5330436A JP2674492B2 (ja) 1993-12-27 1993-12-27 浮動小数点加減算装置とその制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5330436A JP2674492B2 (ja) 1993-12-27 1993-12-27 浮動小数点加減算装置とその制御方式

Publications (2)

Publication Number Publication Date
JPH07191823A JPH07191823A (ja) 1995-07-28
JP2674492B2 true JP2674492B2 (ja) 1997-11-12

Family

ID=18232597

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5330436A Expired - Lifetime JP2674492B2 (ja) 1993-12-27 1993-12-27 浮動小数点加減算装置とその制御方式

Country Status (1)

Country Link
JP (1) JP2674492B2 (ja)

Also Published As

Publication number Publication date
JPH07191823A (ja) 1995-07-28

Similar Documents

Publication Publication Date Title
US4999803A (en) Floating point arithmetic system and method
US4941120A (en) Floating point normalization and rounding prediction circuit
US6099158A (en) Apparatus and methods for execution of computer instructions
EP0483864B1 (en) Hardware arrangement for floating-point addition and subtraction
US6647404B2 (en) Double precision floating point multiplier having a 32-bit booth-encoded array multiplier
JPH0776911B2 (ja) 浮動小数点演算装置
US4758974A (en) Most significant digit location
JPH05241792A (ja) 浮動小数点加減算方式および装置
JP3436994B2 (ja) シフト装置
US6061707A (en) Method and apparatus for generating an end-around carry in a floating-point pipeline within a computer system
JP3306497B2 (ja) 浮動小数点乗算器における丸め回路
JP2511527B2 (ja) 浮動小数点演算器
US5117384A (en) Method and apparatus for exponent adder
JP3803438B2 (ja) 浮動小数点乗算累算装置
JP2674492B2 (ja) 浮動小数点加減算装置とその制御方式
US6684236B1 (en) System of and method for efficiently performing computations through extended booth encoding of the operands thereto
JPH096595A (ja) 演算結果の表示方法
JPH0540605A (ja) 浮動小数点乗算装置
US6065034A (en) Circuit and method employing an adder for sign extending operands
JP3064405B2 (ja) 複素数の演算処理方式
EP0438962A2 (en) Method and apparatus for exponent adder
JP3106525B2 (ja) 加算方式及びその回路
JPH05204606A (ja) 浮動小数点演算方式および装置
JP3370688B2 (ja) 加算器のフラグ生成回路
JPH01111229A (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: 19970617