JPH076023A - 浮動小数点加算器のための仮数加算システム - Google Patents
浮動小数点加算器のための仮数加算システムInfo
- Publication number
- JPH076023A JPH076023A JP6026047A JP2604794A JPH076023A JP H076023 A JPH076023 A JP H076023A JP 6026047 A JP6026047 A JP 6026047A JP 2604794 A JP2604794 A JP 2604794A JP H076023 A JPH076023 A JP H076023A
- Authority
- JP
- Japan
- Prior art keywords
- flag
- mantissa
- bits
- group
- providing
- 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.)
- Granted
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/74—Selecting or encoding within a word the position of one or more bits having a specified value, e.g. most or least significant one or zero detection, priority encoders
-
- 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
- G06F7/485—Adding; Subtracting
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Nonlinear Science (AREA)
- Complex Calculations (AREA)
Abstract
器の結果の高速度の正規化を可能にする。 【構成】 仮数加算システム(2)は仮数加算器(6)
とフラグ発生器を具備する。第1デコーダ(46)はイ
ンアクティブ状態の最上位フラグを表す第1制御信号を
提供する。第1シフタ(40)が第1制御信号に応じて
加算結果のビットグループをシフトし、最上位フラグに
対応するサブグループのビットを最上位グループとす
る。第2検出器(48)がシフト結果の最上位サブグル
ープの非ゼロ最上位ビットを表す第2制御信号を提供す
る。第2シフタ(42)が第2制御信号に応じてシフト
結果の複数のビットをシフトし最上位非ゼロビットを最
上位ビットとする。第2シフタの出力(8)は正規化さ
れた加算結果を表す。シフト情報(N)は第1および第
2制御信号から論理手段(52,54)によって発生さ
れる。
Description
し、かつより特定的には浮動小数点加算器の仮数加算シ
ステムに関する。
a)部および指数(exponent)部を備えかつ通
常32ビット(「単一精度」)または64ビット(「倍
精度」)の大きさである。浮動小数点数のフォーマット
は実施されている標準にしたがっている。例えば、広く
実施されているIEEE標準は1.fffX2eのフォ
ーマットを有し、この場合1.fffは正規化された仮
数でありかつeは指数である。
算演算または操作(これは前記浮動小数点数(単数また
は複数)の符号に応じて減算操作にもなり得る)は一般
に次のステップを有する。 1)2つの指数の間の差を計算する。 2)より小さなオペランドの仮数を前記指数の差の絶対
値だけ右にシフトする。 3)前記2つの仮数を加算する。 4)前記加算結果を正規化する− a)前記仮数の加算結果(前記ステップ3の結果)の先
行する(leading)“1”のビットを見つける。 b)前記仮数の加算結果を左にシフトして前記先行する
“1”ビットが前記結果の最上位ビット(MSB)とな
るまで全ての先行するゼロを捨てる(減算操作の場
合)。 c)必要とされる左シフトの数を前記指数結果を更新す
るために2進値に符号化する。 d)前記浮動小数点オペランドの結果を修正するために
前記指数値から前記2進値を減算する。 5)結果の丸め−もし必要であれば、前記結果に1を加
算する。 6)前記最終的な結果にしたがって例外フラグを計算す
る。
を加算器で実施する場合、該加算器の入力と出力との間
のクリティカルパス(critical path)に
おける遅延が最小限に保たれることが重要である。一般
に、前記「先行する1を検出する」ステップは直列的に
行なわれる。「結果をシフトするステップ」と組合わさ
れたこの直列的な実行は前記クリティカルパスにおいて
かなりの時間を必要とし、これはいくつかの用途におい
ては受入れられないものとなり得る。
正規化を行なう改良された仮数加算システムを提供する
ことが必要である。
ば、2つの仮数のための正規化された加算結果および該
正規化された加算結果を提供するのに必要なビットシフ
トの数を示す情報を提供するための仮数加算システムが
提供される。該システムは、
算するための仮数加算手段であって、前記加算結果は所
定の数のサブグループのビットに配列された複数のビッ
トを備えているもの、
するためのフラグ発生手段であって、各々のフラグは前
記それぞれのサブグループにおける全てのビットがゼロ
である場合にアクティブ状態を有し、かつ前記それぞれ
のサブグループにおける少なくとも1つのビットがゼロ
でない場合にインアクティブ状態を有するもの、
段に結合された仮数正規化手段であって、該仮数正規化
手段は、
ラグ(most significant flag)
を検出しかつ該検出された最上位フラグを表す第1の制
御信号を提供するための第1の検出手段、
果のビットのグループをシフトしそれによって前記検出
された最上位フラグに対応するビットのサブグループが
最上位グループとなるようにする第1のシフト手段であ
って、該第1のシフト手段は第1のシフトされた加算結
果を提供するもの、
果の最上位サブグループの最上位ビットを検出しかつ該
検出された最上位ビットを表す第2の制御信号を提供す
るための第2の検出手段、
シフトされた加算結果の複数のビットをシフトしそれに
よって前記検出された最上位の非ゼロビットが最上位ビ
ットとなるようにする第2のシフト手段であって、該第
2のシフト手段は前記正規化された加算結果を表す第2
のシフトされた加算結果を提供するもの、そして
行なわれるシフトの数に応じて前記シフト情報を提供す
るための論理手段、を備えていもの、を具備している。
するために使用される制御が前記加算結果の発生と同時
に発生されることである。このことは浮動小数点加算器
のクリティカルパスにおける遅延が低減されることを保
証する。さらに、前記シフト情報に対する制御信号の符
号化は単純でありかつ高速である。
面を参照して、実例のみによって説明する。
を参照して説明される。しかしながら、本発明はこのフ
ォーマットに限定されるものではなくかつ本発明は、単
一精度のフォーマットのような、他の浮動小数点数のフ
ォーマットによっても実施できることが理解されるべき
である。
ト(1)、11個の指数ビット(2:12)および52
の仮数(fraction)ビット(13:64)を有
する。
数加算システムを使用する浮動小数点加算器100は2
つの浮動小数点数FPAおよびFPBを受けるための2
つの入力102および104を備えている。入力102
および104は回路106に結合されており、該回路1
06は前記2つの浮動小数点数FPAおよびFPBの内
のいずれがより小さいかを決定する。回路106は4つ
の出力を提供する。すなわち、より大きいおよびより小
さい浮動小数点数の各仮数、およびより大きいおよびよ
り小さい浮動小数点数の各指数である。2つの指数の間
の差は指数減算器108で計算され、かつその結果は小
仮数シフタ(smaller mantissa sh
ifter)110にわたされる。小仮数シフタ110
は前記より小さな仮数を前記指数の差の絶対値だけ右に
シフトする。シフトされた結果は次に本発明に係わる仮
数加算システム112にわたされる。仮数加算システム
112の好ましい実施例は以下に図2および図3を参照
して説明する。
を前記シフトされたより小さな仮数と加算しかつ正規化
された仮数を出力116に提供する。仮数加算システム
112はまた2進値Nの形式の指数シフト情報を指数シ
フタ118に提供する。前記指数シフタ118は前記2
進値Nにしたがってより大きな指数を左にシフトし、そ
れによって前記指数結果を更新する。該指数結果および
正規化された仮数は丸め論理122に結合される。丸め
論理122はもし前記正規化された仮数がオール“1”
を含んでいれば“1”を前記指数結果および正規化され
た仮数に加算し、かつ前記仮数(fraction)結
果および指数結果を浮動小数点加算器100のそれぞれ
出力114および120に提供する。例外検出器124
が前記指数結果が所定の範囲内にあることを保証するた
め前記指数結果を調べ、もし前記指数結果が前記所定の
範囲内になければ、例外検出器124は浮動小数点加算
器100の出力126に例外フラグを発生する。
実施例に係わる仮数加算システム2は、2つの仮数(A
およびB)を一緒に加算する、加算部6、および前記加
算部6によって発生された加算結果を正規化し、それに
よって第1の出力8に正規化された結果を提供しかつ第
2の出力10に6ビットの2進値N[1:6]を提供す
る、正規化部分4を具備する。前記2進値Nは次に図1
の指数シフタ118において得られた指数を修正するた
めに使用される。
施されかつ4つの加算器ユニット11,13,15およ
び17とキャリー選択論理28とを具備する。2つの仮
数A(1:16)およびB(1:16)の最上位ビット
(MSB)は第1の加算器ユニット11に結合され、ビ
ットA(17:32)およびB(17:32)は第2の
加算器ユニット13に結合され、ビットA(33:4
8)およびB(33:48)は第3の加算器ユニットに
結合され、そしてビットA(49:53)およびB(4
9:53)は第4の加算器ユニット17に結合されてい
る。
ャリー出力Cout0およびCout1、第1および第
2の16ビットのデータ出力データ_0(data_
0)およびデータ_1(data_1)、そして2つの
グループの4ビットのゼロフラグZ4_0(1:4)お
よびZ4_1(1:4)を有する16ビットの加算器を
備えている。キャリー出力Cout0およびCout1
は8ビットのバス27を介してキャリー選択論理に結合
されている。前記第1および第2のデータ出力データ_
0およびデータ_1は最終加算器マルチプレクサ20に
供給される。各グループの4ビットのゼロフラグZ4_
0(1:4)およびZ4_1(1:4)はそれぞれのデ
コーダ23および25に結合されている。デコーダ23
および25の出力C4_0(1:4)およびC4_1
(1:4)は前記最終加算器マルチプレクサ20に結合
されている。さらに、4ビットのゼロフラグZ4_0
(1:4)およびZ4_1(1:4)の各グループはそ
れぞれのANDゲート19および21において一緒にA
ND演算される。前記ANDゲート19および21のぞ
れぞれ出力フラグZ16_0およびZ16_1も前記最
終加算器マルチプレクサ20に供給されている。前記第
1の加算器ユニット11の最終加算器マルチプレクサ2
0は16ビットのデータ出力30(以後第1のデータ出
力と称される)、4ビットの制御信号C14(1:4)
出力(以後第1の制御信号出力と称される)およびフラ
グ出力Z116(以後第1のフラグ出力と称される)を
有する。
び15は加算器ユニット11と同じであり、該加算器ユ
ニット13および15の各々は8ビットのバス27に結
合されたキャリー出力Cout0およびCout1を有
する16ビットの加算器(それぞれ14および16)、
および16ビットのデータ出力(以後、それぞれ、第2
のデータ出力32および第3のデータ出力34と称す
る)、4ビットの制御信号出力(以後、それぞれ、第2
の制御信号C24(1:4)出力および第3の制御信号
C34(1:4)出力と称する)およびフラグ出力(以
後、それぞれ、第2のフラグ出力Z216および第3の
フラグ出力Z316と称する)を有する最終加算器マル
チプレクサ(それぞれ22および24)を具備する。
のバス27に結合されたキャリー出力Cout0および
Cout1を有する5ビットの加算器18および最終加
算器マルチプレクサ26を具備する。この5ビットの加
算器18はCin=0およびCin=1の2つの場合に
対し2つの5ビットの加算結果および2つのグループの
4ビットのゼロフラグZ4_0(1:2)およびZ4_
1(1:2)を発生し、これら全ては最終加算器マルチ
プレクサ26にわたされる。前記最終加算器マルチプレ
クサ26は5ビットのデータ出力36(以後第4のデー
タ出力と称する)、2ビットの制御信号C44(1:
4)出力およびフラグ出力Z416を有する。
しかつ第1の最終加算器マルチプレクサ20に結合され
た第1の出力cnt_20、前記第2の最終加算器マル
チプレクサ22に結合された第2の出力cnt_22、
前記第3の最終加算器マルチプレクサに結合された第3
の出力cnt_24、および前記第4の最終加算器マル
チプレクサ26に結合された第4の出力cnt_26を
有する。
チプレクサ20,22,24および26から第1、第
2、第3および第4のデータ出力30,32,34およ
び36を受信するよう結合された第1のデータマルチプ
レクサ38を具備する。該第1のデータマルチプレクサ
38はそれが加算器部6から受信するデータを16ビッ
トの選択可能な倍数だけシフトする。好ましい本実施例
においては前記シフトは0,16,32または48ビッ
トである。この選択は前記加算器部6から受信される第
1のZ116、第2のZ216、および第3のZ316
の出力フラグに応じて第1のデコーダ44によって行な
われる。前記第1のデータマルチプレクサ38の出力は
第2のデータマルチプレクサ40に結合されている。
第1のデータマルチプレクサ38から受信するデータを
4ビットの選択可能な倍数だけシフトする。好ましい実
施例においては、該シフトは0,4,8または12ビッ
トである。この選択は制御マルチプレクサ46によって
かつ前記加算器部6から受信される第1のC14(1:
4)、第2のC24(1:4)、第3のC34(1:
4)および第4のC44(1:4)の制御信号にしたが
って行なわれる。第2のデータマルチプレクサ40の出
力は第3のデータマルチプレクサ42に結合されてい
る。
第2のデータマルチプレクサ40から受信するデータを
選択可能な数のビットだけシフトし、好ましい実施例に
おいては該シフトは0,1,2または3ビットである。
この選択は第2のデコーダ48を介しかつ第2のデータ
マルチプレクサ40の出力の3つの最上位ビット(MS
B)の内の初めの“1”の場所に依存して行なわれる。
第3のデータマルチプレクサ42の出力は、前記第1の
出力8を形成しかつしたがって正規化された結果を提供
する。
クサ46および第2のデコーダ48のそれぞれの出力は
それぞれの指数論理50,52および54に結合されて
いる。該指数論理50,52および54の出力は前記指
数値の修正のための2進値Nを提供する。
につき第1の加算器ユニット11を参照して説明する。
4つのサブグループに分割されている。前記4つのサブ
グループの各々に対し、2つの加算結果が準備され、す
なわち前記グループへのCinが“1”である場合に対
して1つの結果データ_1および前記グループに対する
Cinが“0”である場合に対し他の結果データ_0で
ある。前記加算器12はまた両方の結果に対する4つの
サブグループの各々に対し、ゼロフラグZ4_0(Ci
n=0)およびZ4_1(Cin=1)を発生する。ゼ
ロフラグは1つのグループの4つのビット全てが“0”
であればアクティブ(“1”)であり、1つのグループ
の4つのビットの内のいずれか1つが“1”であればイ
ンアクティブ(“0”)である。ゼロフラグの前記2つ
のグループZ4_0(1:4)およびZ4_1(1:
4)はそれらのそれぞれのデコーダ23または25に供
給される。
4)を符号化しかつ以下の表1にしたがって4ビットの
出力C4_0(1:4)を提供する。
4)を符号化しかつこれも表1にしたがって4ビットの
出力C4_1(1:4)を提供する。
し、前記4つのビットの4つのサブグループを組合わせ
最終加算器マルチプレクサに出力される2つのグループ
の16ビットのデータ_0(1:16)およびデータ_
1(1:16)を提供する。前記キャリー出力信号C
out0は前記加算器結果データ_0(1:16)に対
するキャリー出力信号を表しかつ前記キャリー出力信号
Cout1は前記加算結果データ_1(1:16)に対
するキャリー出力である。
タ出力データ_0における16ビットの結果を表し、か
つ対応するゼロフラグZ4_0(1),Z4_0
(2),Z4_0(3)およびZ4_0(4)を示す。
図示された例では、Z4_0(1)およびZ4_0
(2)はアクティブでありかつZ4_0(3)はインア
クティブである。
Z4_0(1:4)およびZ4_1(1:4)はそれぞ
れANDゲート19および21に供給される。各々のグ
ループにおける4つのゼロフラグをAND演算すること
により生じる2つの出力フラグZ16_0およびZ16
_1は最終加算器マルチプレクサ20に出力される。も
しそれぞれのグループの全てのゼロフラグがアクティブ
(“1”)であれば、出力フラグZ16_0またはZ1
6_1はアクティブ(“1”)である。したがって、図
3に示された例に対しては、Z16_0はインアクティ
ブ(“0”)である。
0は2つのグループのデータおよびフラグを受信し、す
なわちデータ_0,C4_0(1:4)およびZ16_
0;およびデータ_1,C4_1(1:4)およびZ1
6_1である。
in信号および前記4つの加算器ユニット11,13,
15および17の各々からの2つのキャリー出力信号C
out0およびCout1を受信する。Cout0_
12は加算器12へのCinが“0”である場合の16
ビット加算器12のキャリー出力Coutである。C
out1_12は加算器12へのCinが“1”である
場合の16ビット加算器12のキャリー出力Coutで
ある。
よびキャリー出力信号にしたがって、キャリー選択論理
28は4つの出力信号cnt_20,cnt_22,c
nt_24,およびcnt_26を発生し、これらは前
記2つのグループのデータおよびフラグの1つを選択す
るために最終加算器マルチプレクサ20,22,24お
よび26の内のそれぞれの1つに結合される。
の通りである。 cnt_26=Cin cnt_24=Cout0_18+(Cout1_18XCin) cnt_22=Cout0_16+(Cout1_16XCout0_18) +(Cout1_16XCout1_18XCin) cnt_20=Cout0_14+(Cout1_14XCout0_16) +(Cout1_14XCout1_16XCout0_18) +(Cout1_14XCout1_16XCout1_18XCin)
て第1の加算器ユニット11から駆動される16ビット
のデータ結果の1つ(データ_0またはデータ_1)に
加えて、前記第1の出力信号cnt_20に応じて、対
応するフラグが駆動され、すなわち1つの出力フラグZ
116および4つの制御信号C14(1:4)である。
ト13,15および17の動作は前記第1の加算器ユニ
ット11に関して上に説明したのと同じであることが理
解される。したがって、各々のグループが前記4つの加
算器ユニット11,13,15および17に対応する、
4つのグループのデータおよびフラグZ116,Z21
6,……およびC14(1:4),C24(1:4),
……は加算器部6から正規化部4に駆動される。
化は3つのデータマルチプレクサ38,40,42を使
用して行なわれる。
部6から受信したデータを16ビットの倍数で次のよう
にシフトする。第1のデコーダ44は3つの受信された
出力フラグZ116,Z216,およびZ316をデコ
ードしかつ出力信号C16(1:4)を発生し、これは
以下の表2に示されるように適切な数の16ビットのシ
フトを示す。
マルチプレクサ38に結合される。受信されたデータは
次に16ビットシフトの適切な数だけシフトされ、それ
によって決定されたインアクティブな出力フラグに対応
する、16ビットのデータグループが最上位データグル
ープとなるようにされる。例えば、第1の加算器ユニッ
ト11の第1の出力フラグZ116がインアクティブで
あれば、16ビットのシフトは必要とされないが、それ
は対応する16ビットのデータはすでに最上位データグ
ループであるからである。もし第3の加算器ユニット1
5の出力フラグZ316がインアクティブであれば、第
1のデータマルチプレクサ38は32ビットのシフトを
行なう(すなわち、16×2)。
(1:4)はまたオールゼロでない前記第1の16ビッ
トのグループに対応するグループの制御信号、すなわ
ち、C14(1:4),C24(1:4),C34
(1:4),またはC44(1:4)を選択するために
制御マルチプレクサ46に供給される。
前記第1のデータマルチプレクサ38から受信したデー
タを次のようにして4ビットの選択された倍数だけシフ
トする。制御マルチプレクサ46は前記選択されたグル
ープの制御信号Ci4(1:4)をデコードしかつ表3
に示されるように、適切な数の4ビットシフトを示す出
力信号C4(1:4)を発生する。
ルチプレクサ40に結合される。第2のデータマルチプ
レクサ40は次に受信されたデータを出力信号C4
(1:4)にしたがって適切な4ビットシフト数だけシ
フトする。
フトされたデータは次に第3のデータマルチプレクサ4
2にわたされ、該第3のデータマルチプレクサ42は受
信されたデータを次のようにして選択された数のビット
だけシフトする。前記最上位サブグループの3つのMS
B(d1,d2およびd3)はデコーダ48によってデ
コードされる。デコーダ48は先行する(leadin
g)“1”の位置を検出しかつその先行する“1”の位
置を表す信号を第3のデータマルチプレクサ42に送
る。第3のデータマルチプレクサ42は次に受信された
データを前記先行する“1”が表4に示されるようにM
SBとなるよう適切な数のビットだけシフトする。
はしたがって加算器部6によって2つの浮動小数点数の
2つの仮数に対して行なわれる加算操作の正規化された
結果を提供する。
体のシフトの数はN(1:6)2進値で符号化されこの
値はそれぞれ指数論理50,52および54を使用して
3つのデータマルチプレクサ38,40および42の各
々によって行なわれるシフトの数を符号化することによ
り得られる。前記N(1:6)ビットの各対はデコーダ
44、制御マルチプレクサ46およびデコーダ48から
の対応する出力の単純な論理である(表2,表3および
表4を参照)。前記第1の対のビットN(1:2)は第
1のデータマルチプレクサ38によって行なわれる16
ビットシフトの数に対応し、前記第2の対のビットN
(3:4)は第2のデータマルチプレクサ40で行なわ
れる4ビットシフトの数に対応し、そして第3の対のビ
ットN(5:6)は第3のデータマルチプレクサ42で
行なわれるビットシフトの数に対応する。
仮数に対する加算操作を行ないかつ正規化された結果、
ならびに結果を正規化するのに必要なシフトの数の2進
値を提供する。知られた正規化シーケンスとは異なり、
本発明はゼロフラグを発生することにより加算器部にお
ける加算操作と並列に「先行する1を検出する」ステッ
プの部分を行なう。したがって、加算器の結果が発生さ
れた時、前記正規化シフトについての部分的情報がすで
に得られている。これは仮数加算システムの入力と出力
との間の遅延を大幅に低減する。
を遅らせず、かつ実施するのに非常に少しの領域しか必
要としない。ゼロフラグZ4_0(1:4),Z4_1
(1:4)、および制御信号C4(1:4)および出力
フラグZ16の発生はデータマルチプレクサのシフト制
御の発生が非常に単純化されかつ迅速になることを保証
する。さらに、3つのデータマルチプレクサのみが結果
を正規化するのに必要であるにすぎないから、正規化の
ために小さな領域が必要とされるのみである。
他の利点は指数を修正するのに必要なシフトの数の符号
化が非常に簡単であり、迅速でありかつ実施するのに小
さな領域または面積を必要とするのみであり、それは前
記情報が容易にフラグ出力Z116,Z216,……お
よび制御信号C14(1:4),C24(1:4)……
から得られるからである。
高速度の正規化を可能にししかもそれを実施するのに非
常に少しの付加的な面積を必要とするのみである。
動小数点加算器の単純化したブロック回路図である。
路図である。
れる16ビットのデータ結果を示すフォーマット図であ
る。
Claims (9)
- 【請求項1】 2つの仮数に対する正規化された加算結
果および該正規化された加算結果を提供するために必要
なビットシフトの数を示す情報を提供するための仮数加
算システムであって、 加算結果を提供するために2つの仮数を加算するための
仮数加算手段であって、前記加算結果は所定の数のサブ
グループのビットで構成された複数のビットを有するも
の、 各々のサブグループに対してフラグを発生するためのフ
ラグ発生手段であって、各々のフラグは前記それぞれの
サブグループにおける全てのビットがゼロである場合に
アクティブ状態を有しかつ前記それぞれサブグループの
少なくとも1つのビットがゼロでない場合にインアクテ
ィブ状態を有するもの、 前記仮数加算器手段およびフラグ発生手段に結合された
仮数正規化手段であって、 前記インアクティブ状態を有する最上位フラグを検出
し、かつ前記検出された最上位フラグを表わす第1の制
御信号を提供するための第1の検出手段、 前記第1の制御信号に応答して前記加算結果のビットの
グループをシフトしそれによって前記検出された最上位
フラグに対応するサブグループのビットが最上位グルー
プとなるようにし、かつ第1のシフトされた加算結果を
提供する第1のシフト手段、 ゼロでない前記第1のシフトされた加算結果の最上位サ
ブグループの最上位ビットを検出し、かつ前記検出され
た最上位ビットを表わす第2の制御信号を提供するため
の第2の検出手段、 前記第2の制御信号に応答して前記第1のシフトされた
加算結果の複数のビットをシフトし、それによって前記
検出された最上位非ゼロビットが最上位ビットとなるよ
うにし、かつ前記正規化された加算結果を表わす第2の
シフトされた加算結果を提供する第2のシフト手段、そ
して前記第1および第2のシフト手段によって行われる
シフトの数に基づき前記シフト情報を提供するための論
理手段、 を具備する前記仮数正規化手段、 を具備することを特徴とする仮数加算システム。 - 【請求項2】 前記第1および第2の検出手段は前記第
1および第2の制御信号を提供するため前記論理手段に
結合され、かつ前記論理手段は、 前記第1の制御信号に応答して前記第1のシフト手段に
よって行われるシフトの数を示す第1の2進値を発生す
るための第1の論理手段、 前記第2の制御信号に応答して前記第2のシフト手段に
よって行われるシフトの数を示す第2の2進値を発生す
るための第2の論理手段、そして前記第1および第2の
2進値を組合わせて前記シフト情報を提供するための組
合わせ手段、 を具備することを特徴とする請求項1に記載の仮数加算
システム。 - 【請求項3】 前記所定の数のサブグループのビットは
複数のグループに配列され、各グループは少なくとも1
つのサブグループのビットを備え、かつ前記仮数加算シ
ステムはさらに、 各々のグループに対するフラグ論理手段であって、各フ
ラグ論理手段は前記それぞれのグループにおける各サブ
グループのフラグを受信するよう結合されており、各フ
ラグ論理手段は前記それぞれのグループのフラグを論理
的に組合わせそれによって前記仮数正規化手段に前記そ
れぞれのグループにおける全てのフラグがアクティブ状
態を有するときにアクティブ状態を有しかつ前記それぞ
れのグループにおけるフラグの少なくとも1つがインア
クティブ状態を有するときにインアクティブ状態を有す
るフラグ出力信号を提供するもの、 を具備し、そして前記仮数正規化手段はさらに、 前記インアクティブを有する最上位フラグ出力信号を検
出しかつ該検出された最上位フラグ出力信号を表わす第
3の制御信号を提供するための第3の検出手段、 前記仮数加算器手段からの加算結果を受信するよう結合
され前記第3の制御信号に応答して前記加算結果のサブ
グループのグループをシフトし、それによって前記検出
された最上位フラグ出力信号に対応するグループが最上
位グループとなるようする第3のシフト手段であって、
該第3のシフト手段はシフトされた加算結果をその中に
シフトされるべき前記第1のシフト手段に提供し、それ
によって前記第1のシフトされた加算結果を提供し、か
つ前記論理手段は前記第1、第2および第3のシフト手
段によって行われるシフトの数に基づきシフト情報を提
供するもの、 をさらに具備することを特徴とする請求項1に記載の仮
数加算システム。 - 【請求項4】 前記所定の数のサブグループのビットは
複数のグループに配列され、各グループは少なくとも1
つのサブグループのビットを有し、かつ前記仮数加算シ
ステムはさらに、 各グループに対するフラグ論理手段であって、各フラグ
論理手段は前記それぞれのグループの各サブグループの
フラグを受信するよう結合されており、各フラグ論理手
段は前記それぞれのグループにおけるフラグを論理的に
組合わせ、それによって前記それぞれのグループにおけ
る全てのフラグがアクティブ状態を有するときにアクテ
ィブ状態を有しかつ前記それぞれのグループにおけるフ
ラグのうちの少なくとも1つがインアクティブ状態を有
するときにインアクティブ状態を有するフラグ出力信号
を前記仮数正規化手段に提供するもの、 を具備し、かつ前記仮数正規化手段はさらに、 前記インアクティブ状態を有する最上位フラグ出力信号
を検出しかつ検出された最上位フラグ出力信号を表わす
第3の制御信号を提供するための第3の検出手段、 前記仮数加算器手段からの加算結果を受信するよう結合
され前記第3の制御信号に応答して前記加算結果のサブ
グループのグループをシフトし、それによって前記検出
された最上位フラグ出力信号に対応するグループが最上
位グループとなるようにする第3のシフト手段であっ
て、該第3のシフト手段はシフトされた加算結果をその
中にシフトされるべき第1のシフト手段に提供するため
の出力を有し、それによって第1のシフトされた加算結
果を提供し、かつ前記論理手段は前記第1、第2および
第3のシフト手段によって行われるシフトの数に基づき
前記シフト情報を提供し、かつ前記第3の検出手段は前
記第3の制御信号を提供するために前記論理手段に結合
され、前記論理手段はさらに前記第3の制御信号に応答
して前記第3のシフト手段によって行われるシフトの数
を示す第3の2進値を発生するための第3の論理手段を
有し、かつ前記組合わせ手段は前記第1、第2および第
3の2進値を組合わせて前記シフトされた情報を提供す
るもの、 をさらに具備することを特徴とする請求2に記載の仮数
加算システム。 - 【請求項5】 前記第3の検出手段は前記第3の制御信
号を提供するために前記第1の検出手段に結合され、か
つ前記第1の検出手段は、前記第3の制御信号に応答し
て、前記検出された最上位フラグ出力信号に対応するグ
ループのフラグを選択しかつインアクティブ状態を有す
る前記選択されたフラグの最上位フラグを検出しかつそ
れに応じて前記第1の制御信号を提供することを特徴と
する請求項3に記載の仮数加算システム。 - 【請求項6】 前記仮数加算器手段は、 第1および第2の加算結果を発生するための少なくとも
1つのキャリー選択加算器であって、前記第1および第
2の加算結果の各々は所定の数のサブグループのビット
に配列された複数のビット、およびゼロキャリー出力信
号に対応する前記第1の結果および非ゼロキャリー信号
に対応する前記第2の結果を備え、かつ前記フラグ発生
手段は前記第1の加算結果の各サブグループに対する第
1の組のフラグおよび前記第2の加算結果の各サブグル
ープに対する第2の組のフラグを発生するもの、そして
前記少なくとも1つのキャリー選択加算器からキャリー
出力信号を受信するよう結合されかつ選択信号を前記少
なくとも1つのキャリー選択加算器へかつ前記フラグ発
生手段へ提供するための出力を有する選択論理手段であ
って、前記選択信号は前記キャリー出力信号に依存する
値を有し、それによって前記第1および第2の加算結果
のうちの1つの加算結果および前記それぞれの第1また
は第2の組のフラグが前記選択信号の値に応じて選択さ
れるもの、 を具備することを特徴とする請求項1に記載の仮数加算
システム。 - 【請求項7】 2つの仮数に対する加算操作の正規化さ
れた結果および前記正規化された加算結果を提供するの
に必要なビットシフトの数を示す情報を提供する方法で
あって、該方法は、 2つの仮数を加算して所定の数のサブグループのビット
に配列された複数のビットを備えた加算結果を提供する
段階、 各サブグループに対するフラグを発生する段階であっ
て、各フラグはそれぞれのサブグループにおける全ての
ビットがゼロである場合にアクティブ状態を有しかつ前
記それぞれのサブグループにおけるビットの少なくとも
1つがゼロでない場合にインアクティブ状態を有するも
の、 インアクティブ状態を有する最上位フラグを検出しかつ
前記検出された最上位フラグを表わす第1の制御信号を
提供する段階、 前記第1の制御信号に応じて前記加算結果のグループの
ビットをシフトして第1のシフトされた加算結果を提供
する段階であって、前記検出された最上位フラグに対応
する前記サブグループのビットは最上位グループである
もの、 ゼロでない前記第1のシフトされた加算結果の最上位サ
ブグループの最上位ビットを検出しかつ前記検出された
最上位ビットを表わす第2の制御信号を提供する段階、 前記第2の制御信号に応答して前記第1のシフトされた
加算結果の複数のビットをシフトして正規化された加算
結果を表わす第2のシフトされた加算結果を提供する段
階であって、前記検出された最上位非ゼロビットは最上
位ビットであるもの、そして前記シフト段階によって行
われるシフトの数に基づき前記シフト情報を提供する段
階、 を具備することを特徴とする2つの仮数に対する加算操
作の正規化された結果および該正規化された加算結果を
提供するのに必要なビットシフトの数を示す情報を提供
する方法。 - 【請求項8】 前記所定の数のサブグループのビットは
複数のグループに配列され、各グループは少なくとも1
つのサブグループのビットを備え、かつ前記方法はさら
に、前記最上位フラグを検出する段階の前に、 前記それぞれのグループの各サブグループのフラグを論
理的に組合わせそれによって前記それぞれのグループの
全てのフラグがアクティブ状態を有するときにアクティ
ブ状態を有しかつ前記それぞれのグループのフラグの少
なくとも1つがインアクティブ状態を有するときにイン
アクティブ状態を有するフラグ出力信号を提供する段
階、そしてインアクティブ状態を有する最上位フラグ出
力信号を検出しかつ該検出された最上位フラグ出力信号
を表わす第3の制御信号を提供する段階、 前記第3の制御信号に応答して前記加算結果のサブグル
ープのグループをシフトしそれによって前記検出された
最上位フラグ出力信号に対応するグループが最上位グル
ープとなるようにする段階、 前記第1の制御信号に応答してシフトされるシフトされ
た加算結果を提供する段階、そして前記グループシフト
段階によって行われるシフトの数を前記シフト情報に加
える段階、 を具備し、かつ前記最上位フラグを検出する段階は前記
検出された最上位フラグ出力信号に対応するグループの
最上位フラグを検出する段階を具備することを特徴とす
る請求項7に記載の方法。 - 【請求項9】 2つの浮動少数点数に対し加算操作を行
うための浮動小数点加算器であって、各々の数は仮数お
よび指数を有し、前記浮動小数点加算器は、 前記2つの浮動小数点数の指数の間の差を計算しかつそ
の差の結果をその出力に提供するための手段、 どの浮動小数点数がより小さいかを決定しかつより小さ
い浮動小数点数の仮数を前記差の結果だけ右にシフトす
るための仮数シフト手段、 正規化された加算結果およびシフト情報を提供するよう
に前記シフトされたより小さな仮数により大きな仮数を
加算するための仮数加算システム、 前記仮数加算システムによって発生されたシフト情報を
受信するよう結合され該シフト情報にしたがってより大
きな仮数の指数をシフトするための指数シフト手段、そ
して前記正規化された加算結果およびシフトされた指数
を出力するための出力手段、 を具備することを特徴とする浮動小数点加算器。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB9301863.8 | 1993-01-30 | ||
GB9301863A GB2274730B (en) | 1993-01-30 | 1993-01-30 | A mantissa addition system for a floating point adder |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH076023A true JPH076023A (ja) | 1995-01-10 |
JP3514502B2 JP3514502B2 (ja) | 2004-03-31 |
Family
ID=10729579
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP02604794A Expired - Fee Related JP3514502B2 (ja) | 1993-01-30 | 1994-01-28 | 浮動小数点加算器のための仮数加算システム |
Country Status (5)
Country | Link |
---|---|
US (1) | US5483476A (ja) |
EP (1) | EP0609673B1 (ja) |
JP (1) | JP3514502B2 (ja) |
DE (1) | DE69420989T2 (ja) |
GB (1) | GB2274730B (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2905679A1 (de) * | 1978-02-22 | 1979-08-23 | Propayma S A | Magnesiumsalz eines pyridoxin- derivates |
US8591257B2 (en) | 2011-11-17 | 2013-11-26 | Amphenol Corporation | Electrical connector having impedance matched intermediate connection points |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2274181B (en) * | 1993-01-09 | 1997-04-02 | Digital Equipment Int | Summation unit |
US5757682A (en) * | 1995-03-31 | 1998-05-26 | International Business Machines Corporation | Parallel calculation of exponent and sticky bit during normalization |
RU95107478A (ru) * | 1995-05-18 | 1997-02-10 | А.И. Грушин | Способ устранения старших незначащих цифр при вычислениях с плавающей запятой и устройство для его осуществления |
US5808926A (en) * | 1995-06-01 | 1998-09-15 | Sun Microsystems, Inc. | Floating point addition methods and apparatus |
US5923574A (en) * | 1996-09-18 | 1999-07-13 | International Business Machines Corporation | Optimized, combined leading zeros counter and shifter |
US6298367B1 (en) * | 1998-04-06 | 2001-10-02 | Advanced Micro Devices, Inc. | Floating point addition pipeline including extreme value, comparison and accumulate functions |
US5966085A (en) * | 1998-04-09 | 1999-10-12 | Lockheed Martin Corporation | Methods and apparatus for performing fast floating point operations |
US20030115236A1 (en) * | 2001-06-07 | 2003-06-19 | Ajay Naini | Elimination of rounding step in the short path of a floating point adder |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4161784A (en) * | 1978-01-05 | 1979-07-17 | Honeywell Information Systems, Inc. | Microprogrammable floating point arithmetic unit capable of performing arithmetic operations on long and short operands |
JPS5776634A (en) * | 1980-10-31 | 1982-05-13 | Hitachi Ltd | Digital signal processor |
US4488252A (en) * | 1982-02-22 | 1984-12-11 | Raytheon Company | Floating point addition architecture |
US4562553A (en) * | 1984-03-19 | 1985-12-31 | Analogic Corporation | Floating point arithmetic system and method with rounding anticipation |
US4758974A (en) * | 1985-01-29 | 1988-07-19 | American Telephone And Telegraph Company, At&T Bell Laboratories | Most significant digit location |
US4994996A (en) * | 1989-02-03 | 1991-02-19 | Digital Equipment Corporation | Pipelined floating point adder for digital computer |
JPH0659858A (ja) * | 1992-08-10 | 1994-03-04 | Mitsubishi Electric Corp | 浮動小数点演算装置 |
-
1993
- 1993-01-30 GB GB9301863A patent/GB2274730B/en not_active Expired - Fee Related
-
1994
- 1994-01-13 EP EP94100418A patent/EP0609673B1/en not_active Expired - Lifetime
- 1994-01-13 DE DE69420989T patent/DE69420989T2/de not_active Expired - Fee Related
- 1994-01-26 US US08/186,724 patent/US5483476A/en not_active Expired - Fee Related
- 1994-01-28 JP JP02604794A patent/JP3514502B2/ja not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2905679A1 (de) * | 1978-02-22 | 1979-08-23 | Propayma S A | Magnesiumsalz eines pyridoxin- derivates |
US8591257B2 (en) | 2011-11-17 | 2013-11-26 | Amphenol Corporation | Electrical connector having impedance matched intermediate connection points |
Also Published As
Publication number | Publication date |
---|---|
DE69420989D1 (de) | 1999-11-11 |
EP0609673B1 (en) | 1999-10-06 |
JP3514502B2 (ja) | 2004-03-31 |
US5483476A (en) | 1996-01-09 |
GB2274730A (en) | 1994-08-03 |
DE69420989T2 (de) | 2000-04-20 |
GB9301863D0 (en) | 1993-03-17 |
GB2274730B (en) | 1997-05-28 |
EP0609673A1 (en) | 1994-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7395304B2 (en) | Method and apparatus for performing single-cycle addition or subtraction and comparison in redundant form arithmetic | |
US6446107B1 (en) | Circuitry for performing operations on binary numbers | |
US5508950A (en) | Circuit and method for detecting if a sum of two multibit numbers equals a third multibit constant number prior to availability of the sum | |
US5241490A (en) | Fully decoded multistage leading zero detector and normalization apparatus | |
EP0328063B1 (en) | Absolute value calculating circuit having a single adder | |
US6175851B1 (en) | Fast adder/subtractor for signed floating point numbers | |
JP3514502B2 (ja) | 浮動小数点加算器のための仮数加算システム | |
JP3436994B2 (ja) | シフト装置 | |
EP0361886B1 (en) | Improved floating point computation unit | |
JP3356613B2 (ja) | 加算方法および加算器 | |
EP0044450B1 (en) | Digital adder circuit | |
US6449629B1 (en) | Three input split-adder | |
EP0332215B1 (en) | Operation circuit based on floating-point representation | |
US5719802A (en) | Adder circuit incorporating byte boundaries | |
KR19990074385A (ko) | 부동소수점 곱셈기에서 반올림과 덧셈을 동시에 수행하는 장치및 방법 | |
US5408427A (en) | Detection of exponent underflow and overflow in a floating point adder | |
US5432727A (en) | Apparatus for computing a sticky bit for a floating point arithmetic unit | |
US5812437A (en) | Programmable logic unit for arithmetic, logic and equality functions | |
US7240085B2 (en) | Faster shift value calculation using modified carry-lookahead adder | |
JP3187402B2 (ja) | 浮動小数点データ加減算回路 | |
KR20230112006A (ko) | 부동소수점 데이터에 대한 정규화 처리 및 비정규화 처리를 수행하는 정규화기 및 이를 포함하는 연산회로 | |
JP3077880B2 (ja) | スティッキービット検出回路 | |
JP2931632B2 (ja) | 桁移動装置及び浮動小数点演算装置 | |
JPH0675743A (ja) | 結果のバイアス制御を有する最小遅延の先行1検出器 | |
JP2518973B2 (ja) | 丸め機能付加算器およびこれを用いた乗算器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040113 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
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: 20080123 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090123 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100123 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100123 Year of fee payment: 6 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: R3D03 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110123 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120123 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130123 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |