JPH0357019A - 浮動小数点データ加減算回路 - Google Patents

浮動小数点データ加減算回路

Info

Publication number
JPH0357019A
JPH0357019A JP19284989A JP19284989A JPH0357019A JP H0357019 A JPH0357019 A JP H0357019A JP 19284989 A JP19284989 A JP 19284989A JP 19284989 A JP19284989 A JP 19284989A JP H0357019 A JPH0357019 A JP H0357019A
Authority
JP
Japan
Prior art keywords
circuit
data
addition
subtraction
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.)
Granted
Application number
JP19284989A
Other languages
English (en)
Other versions
JP3187402B2 (ja
Inventor
Akira Yamaguchi
明 山口
Masayuki Koizumi
正幸 小泉
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP19284989A priority Critical patent/JP3187402B2/ja
Publication of JPH0357019A publication Critical patent/JPH0357019A/ja
Application granted granted Critical
Publication of JP3187402B2 publication Critical patent/JP3187402B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) 本発明は、正規化された浮動小数点データの加減算回路
に関するもので、特にデジタル・シグナル・プロツセッ
サ(略してDSP)や高位マイコンに使用されるもので
ある. (従来の技術) DSPや高位マイコン等,高精度で広いダイナミックレ
ンジを実現する信号処理LSIには、正規化された浮動
小数点データが広く使用されている。ところで上記信号
処理LSIは、高速性が要求されている.その高速化を
制限しているものの1つに,浮動小数点データ加減算回
路(FASUという)がある. まず,従来の浮動小数点加減算回路(FASU)につい
て説明する. 第29図に従来のFASUのブロック図を示す.まず桁
合せの回路1により入力Xと入力Yの指数部データを比
較して、その差に従い仮数部データの桁合せ操作を行な
う.その時に,指数部の差が仮数部桁合せ桁より大きい
場合、指数部が小なる一方の仮数部データをOに固定す
る(O判定回路). 次に、加減算回路2により,桁合せされた2人力の仮数
部データの加減算を行なう. 最後に、正規化回路3により、仮数部の加減算結果から
正規化量を見積り、その見積りに従い加減算結果を正規
化する. 第30図は、従来の32E6(仮数部32ビット,指数
部6ビット)FASUの回路ブロック図である。
次にこの回路について説明する. まず減算回路4によって、入力Xの指数部データXEと
、入力Yの指数部データYEとの減算を行なう。その減
算結果に従い仮数部データXMまたはYMを,右方向に
シフトすることによって桁合せを行なう。その時シフト
は、Xシフタ5、Yシフタ6にて行なわれる.次表にシ
フト条件を記載する。
次に、桁合せ後の仮数部データXM’とYM’を,命令
に従い、加減算回路7で加算または減算を行なう。上記
加減算回路7にて加減算された出力データの正規化を行
なうための正規化量検出回路8と左シフト回路9と減算
回路IOによって正規化回路が構成されている。上記加
減算結果ZM’を回路8に入力し、仮数部データの正規
化量を検出する。その正規化量に従い、仮数部ZM’を
左にシフトする.また回路10により、正規化量を指数
部ZE’から減算する. その出力結果である仮数部出
力ZMと指数部出力ZEがそれぞれ浮動小数点加減算回
路出力となる. 次に実際に数値を代入してX−Yの減算方法を説明する
.データ長は、仮数部が32ビット(bit),指数部
が6ビット(bit)とする。下記の仮数部1bit目
は符号bitである.Eの左側は仮数部データ、右側は
指数部データである、 燗1) X=0. 10000・・・・・・・・・OE
IOOOOO−Y=0.11111・・・・・・・・・
IEOIIIOO上式を求める時,まずXE−YEを求
める.1000  00 −0111  00 0001  00 上の計算結果のXE>YE、I XE−YE l =4
から、YMを右に4 bitシフトして減算を行なう。
XMOIOOO  00−00      E  10
0000YMOOOOO  11−=41      
E  011100ZM’00111  00・・・O
f      ZE’lOOOOOZMOIIIO  
00・・・010     ZE 011111即ち減
算結果ZM’から正規化量を検出する.符号bitはO
で,それからOが1 bit連続であるので、正規化量
はD=1つまり1ビットシフトである。
次に正規化量に従い仮数部ZM’を左に1 bitシフ
トする.その出力結果ZMが仮数部の出力となる。また
指数部は、rXE−YE>OJであるため、桁合せ回路
でXE,YEともに、X Eの指数部loooooに合
せ込まれており、ZE′はZE’=XE=1 0000
0となる.その後正規化量D=1に従い、仮数部データ
が左に1 bitシフトしたため、指数部データは1だ
け減少する。よって指数部データZEは、011111
となる.例題2)X=OIOO  00・・・000 
 E  100000−Y=0111  10・・・0
00  E  011111コノ場合XE=10000
0,YE=01111lで、これら両者は1 bitち
がいだから、桁合せのため.YMを右1bi.tシフト
する.X.=0100  0000−000  E  
10  00  00一Y=0011  1100・・
・000  E  10  00  000000  
01.00・・・000  E  10  00  0
0ここでZM’=00000100・・・000,ZE
’=100000であり、ZM’より正規量を見積る.
符号bitのあとにOが4個だからD=4である.即ち
ZM’を左へ4 bitシフトし,ZE’を4減少する
.つまりZM=OLOOOOOO・・・000,ZE=
011100となる. 仔I劇3)同様にして X=01000  0・・・O   E  10000
0+Y=lOO11  1・・・I   E  011
110の場合は、XE−YE=2だから、桁合せすると
、X=010000・・・O   E  100000
−Y=111001・・・I   E  100000
001001・・・I   E  100000これを
正規化すると( 1 bitシフト)Z=OIOO11
・・・10  E  011111となる. 第31図は従来の仮数部31bit、指数部6 bit
の浮動小数点加wt算回路のブロック図である.次にこ
の回路について説明する.ここではXシフタ5、Yシフ
タ6、減算回路4等に含まれていた0固定回路12, 
13、O判定回路l4、シフト量検出回路15等を取り
出して示してある。
この回路は、まず、減算回路4によって入力Xの指数部
データXEと,入力Yの指数部データYEとの差を求め
、その結果に従い仮数部データXMまたはYMを右方向
にシフトすることによって桁合せを行なう.その時のシ
フトはXシフト回路5、Yシフト回路6にて行なわれる
.その時のシフト量と条件を第32図に記載する. 次に、桁合せの後の仮数部データXM’とYM’を, 
命令に従い31bit加減算回路7により加減算を行な
う。
最後に、加減算回路7の出力結果に従い、出力データの
正規化を行なう。 まず、31bit加減算回路7の出
力結果を入力とし,正規化量検出回路8によって正規化
量を検出する。その値に従い仮数部を左シフトし、それ
をZMとする.また、減算回路10により正規化量を指
数部ZE’から減算し、その結果をZEとする。その出
力結果ZMとZEを,浮動小数点加減算回路の出力結果
とする。
(発明が解決しようとする課題) 第30図のデータ長32E6の浮動小数点加減算回路は
、入力データとしては、32E6の正規化入力信号Xと
Yと、加算,減算を選択する演算命令があり、出力に関
しては、入力信号X,Yを、演算命令に従い、加減算を
行なった結果Zを出力する。
前述しているように入力信号X,Yを入れてから計算出
力Z (ZEとZM)が出てくるまでに、直列に次の回
路を通る. 1)  6bitの減算[iiJ路4からシフト量を算
出する。
2)上記1)の結果から31bit(5段)のシフタ5
,6を通る。
3)上記2〉の結果を32bitの、加減算口路7で計
算する。
4) 計算結果r32bit+キャリー」を入力として
、5bit出力する正JIL化量算出のエンコーダ回路
8を通る. 5)エンコーダ8 により検出された正規化敏に従い、
仮数部データをシフトする31bit(5段)のシフタ
9を通る。
5)′エンコーダ8 により検出された正規化敗に従い
、指数部データを削減させる6bjt減算回路10を通
る。
以上浮動小数点加減算回路は、 1)〜5)、または1
)〜4),5)’を直列に<6号が流れるため、演算速
度が遅くなる欠点があり、信号処理LSIの高速化を制
限する原因の1つになっている。
また第31図の従来のFASUでは,加減算時において
、2人力指数部の差が仮数部データの桁数以上,つまり
シフト量以上の時はシフト不可となり、加減算回路人力
YE’またはXM’の指数部の小むる数の仮数部データ
を0に固定して、加減算を行なっている(第32図). このため,浮動小数煮加減算回路(FASU)の演算経
路のクリテイカルパスに,減算回路4の出力結果からX
MまたはYMをOに固定するための0判定回路14と、
31bit加減算回路7の入力信号xM′またはYM’
を,O判定回路14の出力結果に従い,オール“O”に
固定するためのO固定回路12. 13が挿入されてい
る。これは、浮動小数点加減算回路のゲート段数の増加
を意味しており、商速化のさまたげになっている. また第31図の浮動小数点加減算回路では、正規化回路
において、仮数部加減算回路7の出力結果から正規化量
を検出しているため、正規化、つま仮数部の正規化量分
の左シフトと指数部の正規化斌分の減算が,仮数部の加
減算結果が検出されるまで行なわれず、高速化が難しか
った.そこで本発明の目的は、前記従来のものより^速
化が可能となる浮動小数点データ加減算回路を提0(す
ることにある。
[発明の構成] (課題を解決するための手段と作用) 本発明は、浮動小数点データの演算処理経路を少くとも
2個有し,?$動小数点データを用いて前記処理経路を
選択する手段を具備したことを特徴とする浮動小数烹デ
ータ加減算回路である。また本発明は、指数部データの
差に応じて仮数部データの桁合せを行なう桁合せ目路と
、該回路により桁合せされた仮数部データの加算または
減算を行なう加減算回路と、該回路での演算前の仮数部
データの各ビットの一部とその前後の複数ビットからフ
ラグを立て、それを正規化量エンコード園路の入力とす
る正規化量検出回路と.該回路の出力に応じて前記加減
算回路からの仮数部データの正規化を行なう正規化用シ
フタと,該シフタの出力から該出力データを右または左
へ1ビットシフトするか否かを選択する手段とを具備し
たことを特徴とする浮動小数点データ加減算回路である
.また本発明は、指数部データの差に応じて仮数部デー
タの桁合せを行なう桁合せ回路と、該回路により桁合せ
された仮数部データの加算または減算を行なう加減算回
路と、該回路での演算結果から正規化量を検出する正規
化量検出回路と、前記正規化址に応じて仮数部データの
正規化を行なう正規化用シフタと、前記加減算回路の出
力を入力とし該加減算回路出力がオーバーフローしたと
きiビットの右シフトを行なう右シフタと,前記加減算
回路の出力に応じて前記右シフタの出力、正規化用シフ
タの出力を選択する手段とを具備したことを特徴とする
浮動小数点データ加減算回路である。
即ち本発明は、従来技術のデータの流れに対して、ある
条件を加味した複数のデータバスを設け、それぞれを浮
動小数点データによって、選択的に制御,選択する事に
よって、各データバス系の回路機能を単純にし、回路の
ゲート段数の減少を企てる。また本発明は、従来技術に
おける0判定回路およびO固定回路による処理速度の低
下を軽減するため,桁合せのために生じるシフト量によ
って選択される少くとも2系統の演算回路を設け、これ
らの演算結果を選択することで,高速性を実現している
。即ち指数部の減算によって仮数部のシフト量が仮数部
の桁数未満である時は,従来技術と同様の加減算回路の
演算結果が選択される。
ただし,この回路にはO固定回路は付加されていない。
つまり、指数部の小さい方のデータの仮数部を,指数部
の減算結果分右シフトし加減算を行むい、その後正規化
をする。また、指数部の減算によって仮数部のシフト量
が仮数部の桁数以上である時は、データスルーもしくは
符号反転の回路が選択される.上記の2系統の回路は並
列に処裡され、指数部入力により最後に選択される。
また本発明では、正規化回路において正規化量を桁合せ
後のデータ、すなわち仮数部加減算回路の人力データか
ら検出することを特徴としている.正規化量の検出、お
よび正規化に費やされる処理のほとんどは、仮数部加減
算回路の入方データを用いることにより,仮数部加減算
と並列に処理される。
また本発明では、仮数部データの加減算回路の出力がオ
ーバーフローした時、1ビット右シフトする回路を正規
化用シフタから取り出し、これらを並列に選択使用する
ことにより、ゲート段数を減らし、高速化をはかってい
る。
(実施例) 以下図面を参照して本発明の実施例を説明する6第1図
は同実施例の構或図であり、経路Aは、桁合せ回路21
,加減算回路22、 ±1 bitシフトの正規化回路
23よりなる。経路Bは、最大1 bitシフトの桁合
せ回路24、加減算回路25,正規化回路26よりなる
.経路A,Bは、セレクタ回路27への制御信号Cで、
いずれかが選択され、それが出力Zとなる。
正規化された2つの浮動小数点信号の仮数部条件は、 010000・・・・・・OOO≦XM≦0111・・
・・・・ill・・・■010000・・・・・・00
0≦YM≦0111・・・・・・111・・・■である
.ここでは簡単のためXM,YMが両方とも正の場合に
ついて説明するがXM,YMが2の補数表現であること
を考慮すれば.XM,YMの片方または両方が負である
場合も同様に説明できる。ここでXM (XM>Oの場
合)の左辺及び右辺の最上位ビットの重みは『1」,次
の桁の重みはrl/2」,次の桁の・Rみはrl/4』
,・・・であり,YMについても同様である.従って(
1)式のXMの左辺及び■式のYMの左辺は,共にr 
1 / 2Jを表わしている.またXMの右辺及びYM
の右辺は、共に最下位ビット分だけ「1』より小さい数
を表わしている。
XM(.aM,〈2・YM《.ax,・・・(1)■式
から、 YMを2bit以上右にシフトした時、化は、高々1以
下となる。換言すれば「1」の場合1 bitシフト,
「O」の場合シフトなしである.また0式から、 XM
を2 bit以上右ヘシフトしたり、正規化量は高々1
以下となる. 以上の結果から、 2 bit以上の正規化シフトが必
要な条件としては、桁合せ量(指数部の値による仮数部
どうしの桁合せ量)が1 bit以下つまりX. E 
− Y E l≦1の時である.本実施例は、2つの加
減算経路A,Bを設け、Aは従来の桁合せ回路を持って
いるが、正規化量が高々1 bitであり,Bは、桁合
せが1 bit以下であるが,従来の正規化回路を持っ
ている.この信号経路Aの出力とBの出力を別々に求め
、最後にAの出力またはBの出力を信号Cで選択する.
その時の信号Cによる選択条件として、2人力信号の差
IXE−YEI≦1を使用する.以上の特徴によって、
高速化を実現できることは後述する.第2図は第1図の
具体例である. 1)信号経路Aについては、 ?i)2人力信号の指数部の差rXE−YEJを減算回
路3lで算出する.その差に従い、Xシフタ21,,Y
シフタ2l■により、XMまたはYMを右にシフトする
′!1tで桁合せを行なう。ただし、条件として、r 
X E − Y E >31」の時はY M. = 0
とする。rXE−YE<−31Jの時はXM=0とする
。これらは井にシフト範囲をこえた時である. (ii)上記(i)によって、桁合せ後の仮数部データ
XM’lとYM’lを、加算又は減算命令によって加減
算回路22で加算又は減算する。また指数部データの大
きい方をセレクタ32でセレクトし、これをZE’とし
て減算回路34へ出力する。
(iii)加減算回路22ノ出力結果ZM’lを、+1
bit正規化用エンコーダ33に入力し、 ZM’lの
上位数ビットから左又は右1 bitシフト制御信号を
出力する.そのシフト制御信号に従い左右工bitシフ
タ23によって正規化を行なう。 このシフタ23の出
力を信号経路Aの仮数部出力Z M 1とする. ?こで、ZM’lの正規化量が、±1 bit以上にな
る可能性はあるが、その時の出力セレクタ27は、経路
Bを選択するので、don″t Care (関係なし
)である. 2)次に信号経路Bについては、 (i)2人力信号の指数部下位2bitっまりXEI,
XEO,YEI,YEOを入力として、第3図に従い,
lbitシフタ24.または24■でXMまたはYMを
lbit右にシ“フトする.第3図でrXJは不定の意
味である.第6図は第5図のカルノーマップをもとに設
計した信号XS(Xシフト),YS(Yシフト)の発生
回路である。
(1i)上記(i)により、桁合せ後の仮数部データX
M’2とYM’2を、加算又は減算命令によって、加減
算回路25で加減算する. ( iii )加減算回路25の出力結果ZM’2に対
し、正規化量検出回路35によって正規化量を検出する
.その検出結果に従って、31bit左シフタ26によ
ってシフトする事で正規化を行なう.そのシフタ26の
出力を信号経路Bの仮数部データZM2とする。
3)次に仮数部出力結果ZMI,ZM2及び正規化量結
果M1または−M2の選択用セレクタ27,セレクタ3
6の制御信号の選択条件は、第4図によって求まる. 入力信号XM.YMの符号bit、加減算命令、指数部
XE,YEの減算結果によって、第7図の如く選択信号
Cが作られ、それに従いセレクタ27,セレクタ36で
出力結果が選択され,出力される。
上記実施例によれば次の利点がある。
即ち第30図の如く、従来の32E6の浮動小数点の加
減算においては、その信号経路が、まず6bit減算回
路4によって指数部の差を求め、指数部の差に従い、X
シフタ5またはYシフタ6 (31bitシフタ)によ
り,桁合せを行なう。そのデータを32bit加減算回
路7にて加減算し、 その加減算結果を用いて正規化量
を検出し、この正規化量に従い、シフタ9でシフトを行
なう。その時のデータの回路遅延は、 (1)6bit減算回路4→ 5段シフト回路5または
?→32bit加減算回路7→−1 bit, +31
bitエンコーダ8→5段シフト回路9 となる。
一方、第2図の回路では、 (2) 6bit減算回路31→5段シフト回路21.
または21■→32bit加減算回路22→±1 bi
tエンコーダ33→1段シフト回路23→セレクト回路
27または、 (3) 4人力制御回路(第6図)→1段シフト回路2
41または24■→32bit加減算回路25→+31
bitエンコーダ25→5段シフト回路26→セレクト
回路27 回路遅延は、信号パス(2),(3)の遅い方になる.
明らかに■,■は、(1)に比べゲート段数が少く、高
速性が実現できる. 第8図は従来の第31図を改良した本発明の異なる実施
例で,これは仮数部31bit,指数部6 bitのF
ASUに適用したものである.第9図(a)は一般的な
1 bit減算器のブロック図、第9図(b)はその真
理値表,第9図(c)は同回路図,第lO図は第9図の
 1 bit減算器を利用した減算回路4及び0判定回
路14の回路図,第11図(a),第12図は従来のX
シフト回路,Yシフト回路図、第11図(b)は問路部
51のブロック図,第l1図(c)は同詳細回路図、第
13図,第14図は第8図のXシフト回路5,Yシフト
回路6を示す。
第8図において41〜44はセレクタで、それぞれ選択
入力(Cz+C2)が゛′1″の時、A0〜A,側の入
力が選択され,選択入力が“O”の時,他方の入力が選
択される。45はI) Mスルー又は一PM回路で、P
Mスルー回路45は、Xの仮数部XM側が選択されるか
または加算(X+Y)の時使用され、−PM回路45は
Yの仮数部YM側が選択されかつ減算(x−y)の時使
用されるもので、符シ}反転回路である。この第8図で
は、 (】)入力データの指数部の差の絶対値I XE−YE
1を減算回路4によって検出し、これが31未満の時は
最終的に以下の回路が選択される。
まず、桁合せのため.XE−YEの値によって仮数部X
M.YMに対し、第l5図に示すシフトを行なう. つまりO固定は行なわず、またIXE−YE≧3lの範
囲ではデータは保証しなくて良い.次に、上記のシフタ
で得られた仮数部XM’、YM’に対して、3lbft
加減算回路7により演算を行なう. 次に、上記の加減算回路7によって得られた仮数部ZM
’を正規化するために、正規化量検出回路8によって正
規化量を検出する.ここで正規化量検出回路8は、仮数
部ZM’を入力とし、上位bitを優先するプライオリ
ティー・エンコーダである。
上記正規化量で仮数部ZM’  を左シフトしたものを
仮数部出力とする. 減算回路10によって,指数部データXEおよびYEの
大きい方から、上記正規化量を差し引いて、これを指数
部出力B,とする. ■ 減算回路4の出力I XE−YE lが31以上の
時は,最終的に以下の回路が選択される.この回路は、
セレクタ41およびスルー回路,符号反転回路45から
なり,第16図に示す演算結果が出力される. この第16図において「命令」とはX+Y,X−Yのこ
とであり、「加算及び減算』とは,加算の場合でも減算
の場合でもという意味である。
(3) 前述した通り,最後に上記(1)および■の出
力が、減算回路4の演算結果からO判定回路14により
選択され、これを出力ZMおよびZEとする。
本失施例では、並列に処理される2系組の演算結果が,
O判定回路l4により最後に選択される.つまり、本実
施例による浮動小数点加減算回路においては,O判定回
ml4はクリティカルバスに含まれない。また、第31
図の従来技術においてO判定回路l4の演算結果を入力
とするO固定回路12,l3が、本実施例による浮動小
数点加減算回路では存在しない。従来技術では,O判定
回路及びO固定回路による処理速度の低下が大きかった
が、本発明では、これを回避することで高速性を美況し
ている. 第l7図ないし第19図は加減算前の仮数部データ?ら
正規化量を検出し、高速化をはかる実施例である6図中
51はスルーまたは符号反転回路で,減算の場合、仮数
部YMの符号を反転する。8■は正規化量検出回路8の
エンコーダ、52〜54は減算回路、55は1ビット修
正検出回路,56は左1 bitシフタ,57は右1 
bitシフタ、58. 59はセレクタである。シフタ
56は1 bitシフト不足の時、左へ1bitシフト
するもの、シフタ57は1 bitシフトしすぎの時、
右へlビットもどすものである.正規化データをそのま
へ通過させたい時は、経路60を用いる。
(1)最初に,本発明の特徴である正規化量検出の実施
例について説明する. ここで、 仮数部データは隠れbit無しの2の補正数
表現であるとし、加算命令だけを考える。
まず,桁合せ後の仮数部データがXM’、YM’が同符
号である場合、その加算結果について,正規化による左
シフトは行なわれない.つまり、加算結果においては、
XM’.YM’が異符号である場合のみを考えれば良い
.ここで,X.M’、YM’から直接、正規化量を検出
する方広を考える。以下の説明のため, XM’、YM
’の対応する各bitが、共にOである場合を11 Q
 I+、片方が↓である場合を“′1″′,共に1であ
る場合を゛′2″と表現することにする。正規化が生じ
るのは、加算結果において、符1bitであるMSB 
(最上位bit)と同じデータが、MSBから辿続して
3bj.t以上並ぶ場合であり、第20図に示す2つの
場合しかない。
つまり,■の場合は、加算結果が負になる場合で、加算
結果において、正規化位置まで1が続く。
これを加算前データで見れば、最初にtが続き,これに
0が1 bit続く。次に2以外が来れば、加算結果に
おいてこれより下位に1が続くことはない。加算前デー
タにおいて0の次に2が来れば、2が続く限り加算結果
において1が続く。
一方■の場合は、加算結果が正になる場合で,加算結果
において、正規化位置までOが続く。これも■の場合と
同様に加算前データで見れば,最初に工が続き、これに
2が1 bit続く。 次にO以外が来れば,加算結果
においてこれより下位にOが続くことはなく、加算前デ
ータにおいて2の次にOが来れば,0が続く限り加算結
果においてOが続く. 以上から、加算前データにおいて隣接する3bitを検
証すれば、その中央のビットが正規化位置となり得るか
どうかが判るので、加算前データの各bitについて、
左右1 bitを含む3bitで上記の検証を行ない、
対応するbitにフラグを立て、つまり加算後に正規化
した場合にMSBとなるところにフラグを立て,このb
it列をプライオリテイー・エンコーダ8,8,に通す
ことで、正規化量を検出する車ができる. 詳細に説明するため、上記■、■を第21図に示すのよ
うに場合分けし、正規化検出によるフラグ位置を併記す
る. ここで、第21図で備考欄に記したように、加算結果に
よって2通りの正規化が予想される場合がある. これ
らは、下位bitからの桁上りによって生じるものであ
るが、その正規化量は,高々lbitしか違わない. 
 lbitの修正は容易なので、加算後に1 bitの
修正を行なうものとする。
ところで第21図において、上記1 bitの修正が必
要な場合には、フラグの欄で“・・・・011.X・・
・・・・ のように正規化が起こり得る2 bitにフ
ラグ(「l」で示す)が立っているが、加算後にtbi
tの修正をすることを前提とすれば、この2 bitの
うちのいずれかにフラグを立てれば良い。この点を考慮
して、正規化量検出のための論理回路を設計した例を示
す.ここでSおよびCは加算前データであり、“O”の
時sc=oo.  “1”の時SC=10.”2”の時
SC=O Lである。また,当該3bitに対し、上位
bitからSOCO.S1.C1、S 2G2とする。
a) 加算後に右1bitの修正をする場合。
この場合,上記1 bit修正を考慮した2 bitの
フラグの内、下位bitにフラグを立て,上位bitに
はフラグを立てない。第22図にカルノー図、第23図
にこのカルノー図から求めた正規化爪検出回路を示す.
第22図において上下または左右2欄にわたり九枠で囲
った部分は、カルノー図から得る回路のm at化のた
めの手法を示し、第23図の回路は第22図のSo,C
o,SL,Cl,S2,S2の計6独から得られろ。
b) 加算後に左L bitの修正をする場合。
この場合,上記1 bit修正を考慮した2 bitの
フラグの内、上位bitにフラグを立て、下位bitの
フラグは11 Q”、LL L”のいずれでも良い。第
24図にカルノー図、第25図にこのカルノー図から求
めた正規化址検出凹路を示す。上記の右1 bitの修
正をする場合より,小さい回路で実現できる。
C) 加算後に左または右1 bitの修正をする場合
この場合、上記1 bit修正を考慮した2 bitの
フラグの内、下位bitにフラグを立て、上位bitの
フラグは“O′″、′{”のいずれでも良い。第26図
にカルノー図,第27図はこのカルノー図から求めた正
規化量検出回路を示す。上記の左1 bitの修正をす
る場合より、さらに小さい回路で実現できる。
■ 次に、本発明を適用した仮数部31bit,指数部
6bitの’tf動小数ijH加減算lりI路の実施例
について説明する。
第l7図が、左右1 bitの修正を考慮した本実施例
のブロック図である。
まず、減算回路4によって入力Xの指数部データX E
と、六力Yの指数部データYEとの差XE−YEを求め
、その結果に従いXシフト同路5、Yシフト回路6によ
り、仮数部データXMもしくはYMを右方向にIXE−
YEIシフトすることによって桁合せを行なう。また,
セレクタによりXE.YEの大きい方を選択し、 これ
をZE’とする。
次に、(1)で説明した正規化量検出回路を適川するた
め、減算の場合は回路5lでYの仮数部の符号を反転す
る。
次に,仮数部データXM’とYM’の加算を行ない、同
時に(1)の正規化量検出回路により正規化量NEを検
出し、その出力をエンコードする。
次に、減算回路52〜54によって、指数部ZE’から
正規化量NEfi−減算する。この時、滅算回路52〜
54は, 指数部の正規化において左右1 bitの修
正を考慮し,各々ZE’−NE−1,ZE’−NE.Z
E′−NE十上を演算する. 上記減算と同時に、上記正規化量にしたがって、,!l
:.シフタ9により仮数部zM′を正規化する。その後
,検出回路55で、左1 bitシフタ56または右1
.bitシフタ57による左右1 bitの修正値を検
出する。
最後に、上記正規化と同時に左31bitシフタ9の出
力から検出した修正量にしたがい、セレクタにより仮数
部ZMおよび指数部ZEを選択し、これを浮動小数点加
減算回路の出力結果とする。
第18図は、右1bitの修正を考慮した実施例のブロ
ック図である。(1)で前述した通り,正規化量検出回
路は左右1 bit修正の場合に比べて複雑だが、指数
部正規化のための減算回路と,仮数部正規化のためのl
 bitシフタが1つづつ少くてすみ、ZEおよびZM
を選択するためのセレグタ58. 59も小さくてすむ
第19図は、左1 bitの修正を考慮した実施例のブ
ロック図である。(1)で前述した通り、正規化量検出
回路は左 1 bit修正の場合に比へて簡単であるが
、左右1 bit修正の場合に比べてm雑である。
しかし, 正規化のための減算回路および1 bitシ
フタの回路規模は、 右1 bit修正の場合と同じで
ある。
従来の浮動小数点加減算回路では,正規化回路において
、仮数部加減算回路の出力結果から正規化量を検出して
いるため、正規化が仮数部の加減算結果が検出されるま
で行なわれなかったが、本実施例では、加減算前の仮数
部データから正規化量を検出するため、正規化が仮数部
の加減算結果の出力に先立って行なわれ、品速な浮動小
数4’(!)+加減算回路を設計することができる。特
に、指数部の減算は,正規化に費やす時間に対して大き
な比重を占めているので、これが仮数部加減算出力に先
立って行なわれることは、島速化に寄写する。
第28図はFASUの高速化を図るための異なる尖施例
である。即ち通常の正規化回路(例えば第31図のシフ
タ9参照)は、前段部に、加減算回路?力がオーバーフ
ローした場合に.  lbit右シフトさせるシフタが
設けてある。 この1 bit右シフタ91は、シフタ
9から独立させてもかまわないので、これらシフタ9,
9■を並列配置し、例えば加減算器7の出力の上位2 
bitを用いて形成した制御信号により,セレクタl6
で出力選択する構成とすれば,加減算M路7以降でのゲ
ート段数が減り、その分高速化が図れるものである。ま
た、右1bitシフタの全てを独立させず、 クリテイ
カルバスだけをシフタ9から独立させることでも、同様
に高速化を図ることができる。
なお本発明は実施例のみに限られず種々の応用が可能で
ある。例えば実施例では仮数部演算経路を2個とし、こ
れらを選択するようにしたが、それ以上としてもよい. [発明の効果コ 以上説明した如く本発明によれば、ゲート段数を少とし
たり、演算経路を複数としてこれらを共に動作させ、得
たい出力のみを選択するようにしたり,上記演算経路の
動作中に選択用信号も並行してネj?られるようにした
ため、高速化された7l動小数点データ加減算回路が提
供できるものである。
4.図面のfIff拒む説明 第1図は本発明の一実施例の構戒図、第2図は同構成の
具体例を示す構成図、第3図ないし第5図は同構成の作
用を示す図表、第6図,第7図は同構成の一部詳細回路
図、第8図は本発明の異なる実施例の構成図、第9図は
同構成の一部詳細説明図、第10図は減算回路及びO判
定回路部分図、第11図,第12図は第8図の構成の効
果説明に用いる従来(l!1路図、第1311,第14
図は同従来i(tI路の改良例を示す回路図,第l5図
,第16図は第8図の構成の作用を示す図表、第l7図
ないし第19図は本発明の異なる実施例の構成図、第2
0図ないし第27図は同構成の一部説明図,第28図は
本発明の異なる実施例の構成図、第29図ないし第31
図は従来回路の構戊図,第32図は第31図の作用を示
す図表である。
4 , 10. 31・・・減算回路、 5,6・・・
右30bitシ?タ、7・・・加減算回路、8・・・正
規化量検出回路、81・・エンコーダ、9・・・左30
bitシフタ、91・・・右1bitシフタ,15・・
・シフト量検出回路、16・・・セレクタ, 21■・
・・Xシフタ、211・・Yシフタ、21.24・・・
桁合せ回路、22. 25・・・加減算回路、23. 
26・・・正規化回R6、24,,24■・・・lbi
tシフタ,27・・・セレクタ,33.35・・・エン
コーダ、41. 43・・・セレクタ,45・・・PM
スルー又は一PM回路、5l・・・スルー又は反転回路
、55・・・修正量検出回路、56・・・左1 bit
シフタ,57・・右1 bitシフタ,59・・・セレ
クタ。
出力2 第 1 図 第 3 図 第 4 図 (b) (C) 第 9 図 第15図 第16図 XE YE XM YM 第18図 箪19図 第20図 第21図 (a) (c) (b) (d) 第22図 第24図 (a) (c) (b) (d) 第26図 第27図 第29図 ZE 第30図 ZM 第32図

Claims (5)

    【特許請求の範囲】
  1. (1)浮動小数点データの演算処理経路を少くとも2個
    有し、浮動小数点データかまたは、演算処理の中間デー
    タを用いて前記処理経路を選択する手段を具備したこと
    を特徴とする浮動小数点データ加減算回路。
  2. (2)少くとも第1,第2の仮数部データ演算経路を有
    し、前記第1の仮数部データ演算処理経路は、第1,第
    2の仮数部データのビット数に応じたビット数を有し指
    数部データの差に応じて仮数部データの桁合せを行なう
    桁合せ回路と、該回路で桁合せされた仮数部データの加
    減算を行なう第1の加減算回路と、該回路での加減算結
    果から左または右1ビットのシフト量を検出しその検出
    結果に応じて左または右1ビットのシフトを行なう第1
    のシフタとを有し、前記第2の仮数部データ演算経路は
    、指数部データに応じて第1,第2の仮数部データの1
    ビットシフトを行なう桁合せシフト回路と、これらシフ
    ト回路の出力の加算または減算を行なう第2の加減算回
    路と、該回路による加減算結果から正規化量を検出しそ
    の検出結果に応じて正規化シフトを行なう第2のシフタ
    とを有し、指数部データの差に応じて前記第1,第2の
    シフタの出力を選択することを特徴とする浮動小数点デ
    ータ加減算回路。
  3. (3)少くとも第1、第2の仮数部データ演算経路を有
    し、前記第1の仮数部データ演算経路は、指数部データ
    の差に応じて仮数部データの桁合せを行なう桁合せ回路
    と、該回路により桁合せされた仮数部データの加算また
    は減算を行なう加減算回路と、該回路での演算結果から
    正規化量を検出する正規化量検出回路と、前記正規化量
    に応じて仮数部データの正規化を行なう正規化用シフタ
    とを有し、前記第2の仮数部データ演算経路は、入力オ
    ペランドスルーの経路と入力オペランドの符号反転回路
    を有し、浮動小数点データの加算命令時において、指数
    部の差が仮数部桁合せ桁数より大きい時、指数部が大で
    あるオペランドのスルーデータを加減算結果とし、浮動
    小数点データの減算命令において、指数部の差が仮数部
    桁合せ桁数より大きい時、2つのオペランド内の被減数
    が大である時は被減数側のスルーデータを、減数が大で
    ある時は減数側の符号反転データを、加減算結果とする
    ものであり、指数部データの差に応じて前記第1,第2
    の仮数部データ演算経路の出力を選択することを特徴と
    する浮動小数点データ加減算回路。
  4. (4)指数部データの差に応じて仮数部データの桁合せ
    を行なう桁合せ回路と、該回路により桁合せされた仮数
    部データの加算または減算を行なう加減算回路と、該回
    路での演算前の仮数部データの各ビットの一部とその前
    後の複数ビットからフラグを立て、それを正規化量エン
    コード回路の入力とする正規化量検出回路と、該回路の
    出力に応じて前記加減算回路からの仮数部データの正規
    化を行なう正規化用シフタと、該シフタの出力から該出
    力データを右または左へ1ビットシフトするか否かを選
    択する手段とを具備したことを特徴とする浮動小数点デ
    ータ加減算回路。
  5. (5)指数部データの差に応じて仮数部データの桁合せ
    を行なう桁合せ回路と、該回路により桁合せされた仮数
    部データの加算または減算を行なう加減算回路と、該回
    路での演算結果から正規化量を検出する正規化量検出回
    路と、前記正規化量に応じて仮数部データの正規化を行
    なう正規化用シフタと、前記加減算回路の出力を入力と
    し該加減算回路出力がオーバーフローしたとき1ビット
    の右シフトを行なう右シフタと、前記加減算回路の出力
    データを用い、オーバーフロー検出と、正規化量検出を
    並列に行う手段とを具備したことを特徴とする浮動小数
    点データ加減算回路。
JP19284989A 1989-07-26 1989-07-26 浮動小数点データ加減算回路 Expired - Lifetime JP3187402B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19284989A JP3187402B2 (ja) 1989-07-26 1989-07-26 浮動小数点データ加減算回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19284989A JP3187402B2 (ja) 1989-07-26 1989-07-26 浮動小数点データ加減算回路

Publications (2)

Publication Number Publication Date
JPH0357019A true JPH0357019A (ja) 1991-03-12
JP3187402B2 JP3187402B2 (ja) 2001-07-11

Family

ID=16297996

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19284989A Expired - Lifetime JP3187402B2 (ja) 1989-07-26 1989-07-26 浮動小数点データ加減算回路

Country Status (1)

Country Link
JP (1) JP3187402B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05313857A (ja) * 1992-05-08 1993-11-26 Nec Corp 浮動小数点加減算装置とその制御方式
JPH07225671A (ja) * 1993-12-06 1995-08-22 Internatl Business Mach Corp <Ibm> 結果正規化機構と動作の方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS53133344A (en) * 1977-04-27 1978-11-21 Panafacom Ltd Floatinggpoint arithmetic processing system
JPS59226944A (ja) * 1983-06-09 1984-12-20 Fujitsu Ltd 浮動小数点デ−タ加減算方式
JPS60204031A (ja) * 1984-02-24 1985-10-15 アメリカ合衆国 デジタルコンピユ−タにおける浮動小数点演算方法と装置
JPS6133539A (ja) * 1984-07-25 1986-02-17 Toshiba Corp 浮動小数点演算装置
JPS63310022A (ja) * 1987-06-11 1988-12-19 Matsushita Electric Ind Co Ltd 演算処理装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS53133344A (en) * 1977-04-27 1978-11-21 Panafacom Ltd Floatinggpoint arithmetic processing system
JPS59226944A (ja) * 1983-06-09 1984-12-20 Fujitsu Ltd 浮動小数点デ−タ加減算方式
JPS60204031A (ja) * 1984-02-24 1985-10-15 アメリカ合衆国 デジタルコンピユ−タにおける浮動小数点演算方法と装置
JPS6133539A (ja) * 1984-07-25 1986-02-17 Toshiba Corp 浮動小数点演算装置
JPS63310022A (ja) * 1987-06-11 1988-12-19 Matsushita Electric Ind Co Ltd 演算処理装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05313857A (ja) * 1992-05-08 1993-11-26 Nec Corp 浮動小数点加減算装置とその制御方式
JPH07225671A (ja) * 1993-12-06 1995-08-22 Internatl Business Mach Corp <Ibm> 結果正規化機構と動作の方法

Also Published As

Publication number Publication date
JP3187402B2 (ja) 2001-07-11

Similar Documents

Publication Publication Date Title
US4999803A (en) Floating point arithmetic system and method
JP3845009B2 (ja) 積和演算装置、及び積和演算方法
JP2618374B2 (ja) 最上位の数字の位置の検出
WO2007096982A1 (ja) 演算処理装置および演算処理方法
JPH09231055A (ja) 論理演算回路及びキャリールックアヘッド加算器
EP0044450B1 (en) Digital adder circuit
KR100627993B1 (ko) 3입력 분할 가산기
JP2008152360A (ja) 3項入力の浮動小数点加減算器
JP3163072B2 (ja) 浮動小数点装置
US4099248A (en) One&#39;s complement subtractive arithmetic unit utilizing two&#39;s complement arithmetic circuits
JP2857505B2 (ja) 除算装置
JPH0357019A (ja) 浮動小数点データ加減算回路
JPH01232423A (ja) 演算回路
JPH0346024A (ja) 浮動小数点演算器
JP4439060B2 (ja) 浮動小数点加算器
US7003540B2 (en) Floating point multiplier for delimited operands
JP3517162B2 (ja) 除算・開平演算装置
JP2555577B2 (ja) 演算装置
JP2856792B2 (ja) 浮動小数点数演算装置
JP3462054B2 (ja) 並列加減算回路
JPH0667852A (ja) 除算器
US5689721A (en) Detecting overflow conditions for negative quotients in nonrestoring two&#39;s complement division
JP2931632B2 (ja) 桁移動装置及び浮動小数点演算装置
JPH05204606A (ja) 浮動小数点演算方式および装置
JP2506891B2 (ja) 浮動小数点演算装置

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090511

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20090511

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20100511

Year of fee payment: 9

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100511

Year of fee payment: 9