JP2752564B2 - 先行1予測装置及び浮動小数点加減算装置 - Google Patents
先行1予測装置及び浮動小数点加減算装置Info
- Publication number
- JP2752564B2 JP2752564B2 JP5158234A JP15823493A JP2752564B2 JP 2752564 B2 JP2752564 B2 JP 2752564B2 JP 5158234 A JP5158234 A JP 5158234A JP 15823493 A JP15823493 A JP 15823493A JP 2752564 B2 JP2752564 B2 JP 2752564B2
- Authority
- JP
- Japan
- Prior art keywords
- subtraction
- bit
- value
- mantissa
- digit
- 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
Links
Description
正規化の実行装置に関するものであり、更に詳しくは、
浮動小数点演算の加減算によって生じる桁落ち量を予測
する先行1予測装置、及びこの先行1予測装置を用いた
浮動小数点加減算装置に関するものである。
ランドの符号と加減算の処理の組み合わせによって、仮
数値を減算する場合が発生する。この仮数値の減算によ
って、2つのオペランドの指数値の差の絶対値が1以下
である場合には、仮数値の桁落ちが2桁以上発生する場
合がある。前記桁落ちが発生した場合は、仮数値減算結
果を正規化するために桁落ち量を算出する過程と、前記
桁落ち量をもとに減算結果を正規化する過程が必要とな
る。ところが、前記仮数値減算結果の出力を待ってから
桁落ち量を算出し正規化していると加算正規化の実行時
間が長くなる。よって加算演算と独立した手段によっ
て、仮数値の減算の実行に先んじてまたは並列に、正規
化する際の桁落ち量を予測すれば、加算正規化の実行時
間が削減されることが知られていた。
公報がある。以下、この従来例(従来例1)について図
を用いて説明する。図8は、従来例1での桁落ち量予測
のアルゴリズムを、状態遷移図を用いて表した図であ
る。2の補数表現の2つのオペランドの対応ビット位置
のビット比較から生じるXOR(P,Propagate =伝
搬)、AND(G,Generate=発生)、NOR(Z,Zero=
ゼロ)状態信号を処理するネットワークの組み合わせを
最上位ビットの側から見ていくことによって、桁落ち量
を予測するものである。まず最上位ビットの状態(GMS
B,ZMSB,PMSB )が判別され、もし状態がGあるいはZ
であればシフト数を表す信号が発生される。この数は判
別された各連続状態信号のカウントであり、状態が真で
ある限りにおいて発生される。状態が偽になるとシフト
量信号の発生は停止され調整信号が発せられる。調整信
号は偽ビット位置における下位ビットからのキャリーに
基づいており、偽ビット位置の状態が加算結果の正負を
決定するのに使用される。
と、シフト数信号の停止は偽ビット位置に続くビット位
置における状態信号の状態によることとなる。偽ビット
位置における第2状態(Gj またはZj )が第3状態の
状態信号(P→GならZ、P→ZならG)を伴うもので
ある場合にはシフト信号の発生は第3状態が偽となるま
で続く、あるいは、シフト信号は偽ビット位置に続くビ
ット位置で停止される。これらの場合において調整信号
はシフト信号が停止されたビット位置における下位ビッ
トからのキャリーに基づくこととなり、この位置におけ
る状態が加算結果の正負を決定することとなる。
で、仮数値の加減算によって生じる最上位ビットから数
えて連続する0または1のビット数を、すなわち仮数値
の加減算結果が正になる時は連続する0の数、仮数値の
減算結果が負になる時は2の補数表現での連続する1の
数を求めることができる。
号公報がある。以下この従来例(従来例2)について図
を用いて説明する。
ク図である。同図中の804は、先行1検出回路の1桁
要素を表わす。
数値生成回路901に入力し、冗長2進数値Zsdが生成
される。kビット目に注目して説明すると、この冗長2
進回路では被減数Xk −減数Yk を実行し、冗長2進数
値Zsdk =1、0、−1が出力される。次にZsdk は中
間和中間桁上げ生成回路902に入力され、1ビット上
位のZsdk+1 を参照にして表1の規則に従って中間和S
k 、中間桁上げCk を生成する。
の中間桁上げCk-1 を用いてスキャン値生成回路903
において表2の規則に従ってスキャン値Zk を生成す
る。
て1が現われるまでの0の数は、正規化の際のビットシ
フト量か、それよりも1ビット少ない値を示しているの
で、このZをプライオリティエンコーダに入力すれば、
正規化の際のビットシフト量か1ビット少ない数を求め
ることができた。さらにはこの機構によって、加減算回
路と独立に、仮数値の減算結果の正負に関わらず、正規
化の際のビットシフト量か1ビット少ない数を求めるこ
とができる。
浮動小数点加減算装置の仮数演算部のブロック図を図1
0に示す。仮数部、指数部、符号部からなる2つの浮動
小数点データX,Yに於て減算を実行する場合、桁合わ
せ処理、仮数部加減算処理、正規化処理の順で実行され
る。以下に図10に示す従来例2の先行1検出回路を使
用した浮動小数点加減算装置を例にして説明する。
行される。2つの入力オペランド指数部(Xe 、Ye )
は減算回路305、シフト信号生成回路304、セレク
タ回路306に入力される。また、同時に、オペランド
仮数部(1.Xf または0.Xf 、1.Yf または0.
Yf )も、左右1桁シフト回路301に入力される。こ
のとき、減算回路305では、オペランド指数値Xe 、
Ye を減算し、絶対値(Xe −Ye )と符号値(Xe −
Ye )とを生成する。また同時に、シフト信号生成回路
304では、それぞれの入力オペランドが、正規化数で
あるか否かを検出し、オペランドの符号値(Xs 、Ys
)と、減算実行信号SUBを使用し、2つの入力オペ
ランド仮数値を左右にシフトする制御信号をつくる。左
右シフト回路301では、シフト信号生成回路304か
らの制御信号を基に、2つの入力オペランド仮数値を右
または左にシフトする。左右シフト回路301の出力
は、スワップ回路302に入力され、ここで減算回路3
05から出力される符号値(Xe −Ye )に基づいて、
入力データがスワップされ、指数値の小さいオペランド
の仮数値は右バレルシフト回路303に入力され、もう
一方の指数値の小さくないオペランド仮数値は加減算回
路307に入力される。右バレルシフト回路303で
は、減算回路305から出力されるオペランド指数値の
差の絶対値(Xe −Ye )だけ入力値が右にシフトされ
る。このようにして、桁合わせ処理が実行される。
路307で実行する。
記第2の加算処理、丸め処理と並行して、桁落ち量の予
測が先行1検出回路311、プライオリティエンコーダ
308を使用し実行される。そして予測された桁落ち量
は、プライオリティエンコーダ308よりZaeとして出
力される。
リティエンコーダ308より出力される予測された桁落
ち量Zaeを使用し、加減算回路307の出力値を左シフ
トし出力する。また、同時に小数点より上位1桁目の値
を信号線L1 に出力する。L1 は、左シフトした後の値
が正規化されていなければ“0”であり、正規化されて
いれば“1”になる。もしL1 が“0”であれば、予測
された桁落ち量Zaeは1だけ小さかったということであ
るから1桁左シフトする必要がある。これはアライメン
ト回路312で実行される。
は、減算回路310にも入力され、減算回路310にお
いてZe ’−ZaeとZe ’−Zae−1の2つの減算が同
時に実行され、データ線L2 、L3 に出力される。そし
て、セレクタ回路313では、信号線L1 の値が“0”
であればZe ’−Zaeの減算結果を、信号線L1 の値が
“1”であればZe ’−Zae−1の減算結果Ze を出力
し、正規化処理が実現されていた。
例1のような構成では、仮数値の減算結果が負になる場
合には2の補数表現での最上位ビットから連続する1の
数を求めることになるが、一般に浮動小数点フォーマッ
トでは仮数値は絶対値表現で表わすことになっているの
で、その変換を実行する際に、連続する1の数と正規化
の際のビットシフト量で1ビット誤差を生じる可能性が
あった。
力するビットシフト量が正規化の際のビットシフト量か
正規化の際のビットシフト量よりも1ビット少ないビッ
トシフト量を出力するので、求まったビットシフト量で
仮数値減算結果を桁合わせする過程に加えてさらに1ビ
ットの誤差を修正するという過程が必要であった。
値の減算と並行して、または先んじて正規化の際のビッ
トシフト量を減算結果の正負にかかわらず正確に予測す
る先行1予測装置を提供すると同時に、この先行1予測
装置を使用して、仮数値の減算と正規化の際の正確なビ
ットシフト量の予測とを同時に実行することにより、高
速に演算処理ができる浮動小数点加減算器を提供するこ
とを目的とするものである。
めに本発明の先行1予測装置は、1ビットの誤差範囲で
前記桁落ち予測量を生成する手段と、下位ビット側から
のボロウの伝搬の情報を生成する手段とを備え、前記ボ
ロウの有無により、前記桁落ち予測量から正規化する際
に必要な正確なビットシフト量をセレクタで出力する構
成を備えたものである。
は、浮動小数点演算の仮数値の加減算回路において、桁
合わせ処理された後の2つの仮数値オペランドを加減算
回路と前記先行1予測装置とに同時に入力し、前記加減
算回路では減算を実行してその減算結果をバレルシフタ
に入力し、前記先行1予測装置から出力されるビットシ
フト量を用い、前記バレルシフタに入力された減算結果
をシフトする構成を備えたものである。
ることにより、仮数値減算時に生じる桁落ち量を、仮数
値の減算と並行してまたは先んじて減算結果の正負にか
かわらず正確に予測することができる。また、この先行
1予測装置を仮数値減算と同時に動作させることで、仮
数値減算結果が求められると同時に桁落ち量予測値を使
用し仮数値減算結果を正規化するため、高速な浮動小数
点加減算装置が実現できる。
び浮動小数点加減算装置について、まず従来例2と本発
明との比較を行いながら概略を説明する。
を正しく示す場合と、1ビット少ない値を示す場合があ
ったが、これらの場合についてさらに詳しく例を用いて
説明する。
ビットの場合について考える。被減数X(7:0)−減
数Y(7:0)を実行して、X>Yの場合で、最下位ビ
ットを0ビットとして第3ビットに初めてスキャン値Zk
=1が現われる状況を考えると、 Z=00001ααα :α=0または1 となる。
差S(7:0)とし、この差Sの最大値をmaxS1 、最小
値をminS1 とすると、 maxS1 =00001111 minS1 =00000101 となる。さらに、正しいビットシフト量を示す場合の最
大値をmaxS2 、最小値をminS2 、1ビット少ないビット
シフト量を示す場合の最大値をmaxS3 、最小値をminS3
とすると、 maxS2 =00001111 minS2 =00001000 maxS3 =00000111 minS3 =00000101 となる。
は初めてZk =1となったビット(最下位ビットをk=
0とし、この例の場合はk=3)の1つ下位のビット
(この例の場合はk=2)以下のビットによる減算X
(2:0)−Y(2:0)が負になった場合に対応して
いることがわかる。
(2:0)が正になった場合に対応していることがわか
る。
説明したが、一般の任意の入力ビット数についても、従
来例2では初めてZk =1となったビットの1つ下位の
ビット以下の減算結果が、 X>Yの場合:X(k-1 :0)−Y(k-1 :0)<0 Y>Xの場合:X(k-1 :0)−Y(k-1 :0)>0 の場合に1ビット少ないビットシフト量を示すことがわ
かる。
ないビットシフト量を示す場合にも対応して、正規化の
際の正しいビットシフト量に修正して出力するようにし
たものである。
て初めて現われるスキャン値Zk =1の位置を修正して
出力することによって、減算結果が正負にかかわらず正
規化の際の正確なビットシフト量を出力することができ
るようにしたものである。
いるかというと、まず1)X>Yと、2)Y>Xとを区
別するために、従来例2で作成する2進数値であるスキ
ャン値Zk を作成する代わりに、冗長2進数値ZZk を
表3に従って作成する。
k ≠0がZZk =1の場合は1)X>Y、ZZk =−1
の場合は2)Y>Xとなることになる。なお、ZZk =
0は従来例2でのZk =0に対応し、ZZK ≠0はZk
=1に対応している。
の大小関係の情報をどのようにして得ているかを説明す
る。
場合には、X(n:0)−Y(m:0)(n≧k、m≧
k)を実行した場合にX(k-1 :0)−Y(k-1 :0)
<0となるために、X(k)の桁に、桁借り(ボロウB
x (k))が発生することがわかる。同様にX(k-1 :
0)>Y(k-1 :0)の場合にはY(m:0)−X
(n:0)を実行した場合にY(k-1 :0)−X(k-1
:0)<0となるために、Y(k)の桁に、桁借り
(ボロウBy (k))が発生することがわかる。よって
本実施例ではボロウ伝搬装置を導入し、Bx (k)とB
y (k)を作成することにより、X(k-1 :0)とY
(k-1 :0)の大小関係の情報を得ている。
>X(k-1 :0)との組合せの場合と、2)Y>Xと
3)X(k-1 :0)>Y(k-1 :0)との組合せの場合
に最上位ビットから数えて初めて現われたZZk ≠0ま
でに連続するZZk =0の数を1つ増やす操作をするセ
レクタを備えており、これらの働きにより、本発明の実
施例では、減算結果の正負にかかわらず正確な正規化の
際のビットシフト量を求めている。こうしておいて、前
記出力をプライオリティエンコーダに入力すれば、減算
結果を正規化するためのビットシフト数を得ることがで
きる。
タで2進絶対値表現での仮数値減算結果をシフトするこ
とによって、仮数値減算及び正規化が完了する。
いた仮数値の加算系回路の構成図である。図1におい
て、11は仮数値を加減算し、絶対値を出力をする加減
算回路、12は桁落ち量を予測するための本発明の構成
を有する先行1予測装置、13は正規化するために仮数
値をシフトさせるバレルシフタ、14はプライオリティ
エンコーダである。
トの場合の先行1予測装置12のブロック図である。図
2において、21は加減算回路と独立に1ビットの誤差
範囲で桁落ち量を予測する桁落ち量予測装置である。こ
の装置で前述した冗長2進数であるスキャン値ZZk =
1、0、−1の値を出力する。22は加減算回路と独立
に下位ビットからのボロウの伝搬を出力するボロウ伝搬
装置である。この装置で、任意のkに対する前述したボ
ロウBx (k)、By (k)を出力する。23はボロウ
伝搬装置22からの出力によって、桁落ち量予測装置2
1の出力から、正規化に必要なビットシフト量を操作す
るセレクタである。
ベルで書いた詳細図である。図3において31、32は
8ビットの入力オペランドであり、PLUS33、MINUS 3
4はスキャン値ZZk を、ZZk =1の時はPLUS=1か
つMINUS =0、ZZk =0の時はPLUS=0かつMINUS =
0、ZZk =−1の時はPLUS=0かつMINUS =1で出力
するための信号線である。このときPLUS=1かつMINUS
=1になる状態は存在しない。ここで、最上位ビットか
らみて初めてZZk ≠0が現われるまでに連続した0の
ビット数が、すなわち最上位ビットからみて初めてPLUS
=“1”またはMINUS =“1”のどちらか早く現われる
方が現われるまでに連続したPLUS=“0”またはMINUS
=“0”の数が、下位ビットからのボロウを考慮に入れ
なかった場合の桁落ち量に相当する。ここで初めて現わ
れたZZk =0以外の数字がZZk =1の場合は仮数値
の減算結果が正、ZZK =−1の場合は負の場合に対応
している。
装置に出力するための各ビットに対するビット線で、G
x 35は(NOT オペランドX)AND (オペランドY)す
なわち(Xk 、Yk )=(0、1)、Gy 36は(オペ
ランドX)AND (NOT オペランドY)すなわち(Xk 、
Yk )=(1、0)、P37は(オペランドX)XNOR
(オペランドY)すなわち(Xk 、Yk )=(0、0)
or(1、1)を示す。Gx (n)35は、オペランドX
の第nビットがボロウを発生したという信号で、Gy
(n)36はオペランドYの第nビットがボロウを発生
したという信号で、P(n)37は下位ビットからのボ
ロウを伝搬する信号である。Gx (n)35及びGy
(n)36において6ビット目を必要としていないの
は、7ビット目の冗長2進減算に於て、6ビット目を既
に考慮しているためである。
ルで書いた図である。図4において41はプリチャージ
ラインをプリチャージ、ディスチャージし、プリチャー
ジラインの値を出力するための外部からのクロックの入
力(クロック1)で、42はプリチャージラインの値を
出力するためのクロックの入力(クロック2)であり、
クロック1の位相と反転した位相を持っている。131
から144はプリチャージラインであり、このラインは
クロック1が“0”の時にプリチャージされ、クロック
1が“1”の時でグラウンドへのパスが開いてる場合デ
ィスチャージされる。Bx 39はオペランドXからのボ
ロウがnビット目に伝搬しているという信号で、By 4
0はオペランドYからのボロウがnビット目に伝搬して
いるという信号である。Bx 39及びBy 40において
0ビット目、1ビット目を共に必要としていないのは、
0ビット目に伝播するボロウはないこと、1ビット目に
伝播するボロウはすでにZZk を作成する際に考慮され
ているためである。
ラインは、クロック1が“1”の時にディスチャージさ
れるようになっている。よってこのディスチャージされ
たビットには下位ビットからのボロウがあるので、イン
バータを通して出力すれば、下位ビットからのボロウの
あるビットを立てることができるが、前記インバータを
クロック1が“0”の時にハイインピーダンスになるト
ライステートインバータを用いることにより、配線容量
等の浮遊容量を利用して、クロック信号が“0”の時に
もクロック信号が“1”の時の状態を保持することがで
きるようにしている。
図である。図5において51はデマルチプレクサで、桁
落ち量予測装置21の出力PLUS33とMINUS 34、すな
わちZZk =1、0、−1から、ボロウ伝搬装置22か
らの出力Bx 39とBy 40の情報、すなわちY(k-1
:0)>X(k-1 :0)、X(k-1 :0)>Y(k-1:
0)により、正規化の際のビットシフト量を選択する。
スタレベルで書いた図である。出力PLUS(k)33に前
記ボロウ伝搬装置からの出力Bx (k)36が“0”な
らばPLUS(k)の位置をそのままLZA (k)として出力
し、“1”ならばPLUS(k)の位置を1ビット下位ビッ
トに修正してLZA (k-1 )として出力する。同様に、出
力MINUS (k)34にボロウ伝搬装置22からの出力B
y (k)37が“0”ならばMINUS (k)の位置をその
ままLZA (k)として出力し、“1”ならばMINUS
(k)の位置を1ビット下位ビットに修正してLZA (k-
1 )として出力する。これは桁落ち量予測装置21から
の出力に下位ビットからのボロウがあった場合、すなわ
ち1)X>Yかつ4)Y(k-1 :0)>X(k-1 :
0)、または、2)Y>Xかつ3)X(k-1 :0)>Y
(k-1 :0)の場合に桁落ち量が1ビット多くなるよう
に修正することに対応している。この出力LZA (7:
0)をプライオリティエンコーダに入力して、最上位ビ
ットから連続するゼロの数を数えると、その数が正規化
する際のビットシフト量である。
明する。例として、仮数値桁合わせ後の入力として8ビ
ットのオペランドX(7:0)=11010100、Y
(7:0)=11001101がX(7:0)−Y
(7:0)として入力された場合を考える。まず桁落ち
量予測装置21にオペランドX(7:0)=11010
100、Y(7:0)=11001101が入力され
る。実際の2進減算では差SはS(7:0)=0000
0111である。桁落ち量予測装置21では、冗長2進
数であるスキャン値ZZk が生成され、その結果として
PLUS(7:0)33=00001000、MINUS (7:
0)34=00000001、すなわちZZk=000
0100T(T=−1)が出力される。この段階で最上
位から数えて初めて現われるZZk ≠0がZZk =1な
ので、X>Yであることがわかる。
ランドXからボロウが発生する可能性があるビットを示
すGx (5:0)35=001001、オペランドYか
らボロウが発生する可能性があるビットを示すGy
(5:0)36=010000、ボロウの伝搬を示すP
(6:1)37=110011が出力される。
“0”の時にプリチャージライン131〜144をプリ
チャージしておき、クロック1が“1”の時に前記Gx
(5:0)35=001001、Gy (5:0)36=
010000、P(6:1)37=110011を入力
する。すると、プリチャージライン131、132、1
33、134、142、143、144からグラウンド
へのパスができて、ディスチャージされる。この段階で
クロック2を“0”にすると、ボロウ伝搬装置22の出
力からBx (7:2)39=000111、By (7:
2)40=111000が出力される。すなわち最上位
ビットから数えてZZ(4)で初めてZZk ≠0とな
り、しかもZZk =1なのでX>Yである。この時のボ
ロウBx (4)を見るとBx (4)=1となっており、
この場合には最上位ビットから数えて初めてZZk ≠0
となる所まで連続する0の数を1ビット増やす必要があ
る場合である。
=00001000、MINUS (7:0)34=0000
0001(すなわちZZ(7:0)=(0000100
T)(T=−1))、Bx (7:2)39=00011
1、By (7:2)40=111000を入力すると、
LZA (7:0)38=00000101が出力される。
LZA (7:0)=00000101は、最上位ビットか
らみていって初めて1が現われたビットまで0が5ビッ
ト続いているので、正規化の際のビットシフト数は5ビ
ットである。よって、この結果を最上位ビットから見て
いくプライオリティエンコーダ24に入力すれば、バレ
ルシフタに入力するデコードされた正規化の際のビット
シフト信号“101”が求められる。この2進数値“1
01”は10進数表現では5である。
0)よりも大きい場合について述べたが、X(7:0)
がY(7:0)よりも小さい場合についても同様の効果
が得られる。本実施例では先行1予測装置は仮数値加減
算回路と独立な構成となっているが、例えばボロウ伝搬
装置を仮数値加減算回路と共有する構成にすればボロウ
伝搬装置の部分を省略することもできる。8ビット構成
に限らず、一般に何ビットの構成にしても構わない。
方が他方よりも大きいとわかっているようなシステムに
本発明を使用する場合は、減算結果が必ず正か負のどち
らか一方になるので、符号付き桁落ち量予測装置を単な
る桁落ち量予測装置に置き換えることができ、どちらの
オペランドから発生したボロウであるかという情報を生
成する装置は、被減数と減数のうち小さい方のオペラン
ドから発生したボロウのみを伝搬する装置に置き換える
ことができる。
て発生する最上位ビットから連続するゼロの数を求める
過程において冗長2進数表現を用いて処理したが、冗長
2進数表現を導入せずに2進数のみを用いて処理する構
成にすることもできる。
数点加減算装置の仮数演算部のブロック図を図7に示
す。従来例2と同じように、仮数部、指数部、符号部か
らなる2つの浮動小数点データX,Yに於て減算を実行
する場合、桁合わせ処理、仮数部加減算処理、正規化処
理の順で実行される。
回路を使用した浮動小数点加減算装置を例にして説明す
る。桁合わせ処理と仮数部加減算処理とは従来例2と同
じ動作が行なわれる。この第1と第2の部分の説明は、
従来の技術の部分で説明済みである。ここまでの処理は
従来例2と同様であるが、正規化処理は、仮数値に関し
ては左バレルシフト回路309で、本発明である先行1
予測装置321の出力に基づいて予測された桁落ち量Z
aeを使用し、加減算回路307の出力を左シフトし出力
することにより完了する。指数値に関しては予測された
桁落ち量Zaeを減算回路310に入力し、減算回路31
0でZe ’−Zae=Ze を実行し、Zeを出力すること
により完了する。
て、加算正規化する際に必要なビットシフト量の正確な
値が求まるので、加算結果を正規化する過程において、
従来の先行1予測装置の出力するビットシフト量で桁合
わせをし、最上位ビットをみて、前記最上位ビットが0
の場合はさらに1ビット多くシフトさせるという過程を
削減することができる。
成図である。
である。
ある。
る。
ある。
のブロック図である。
の図である。
る。
図である。
Claims (5)
- 【請求項1】 浮動小数点演算の加減算命令において仮
数値の減算結果に桁落ちが発生する場合、前記桁落ち量
を1ビットの誤差範囲内で桁落ち予測量を生成する第1
の手段と、 仮数値減算時に発生する下位ビット側からのボロウの伝
搬の情報を生成する第2の手段と、 前記ボロウの伝搬情報を用いて前記桁落ち予測量を操作
する第3の手段とを備え、 前記ボロウの有無に従い、前記第1の手段によって得ら
れた桁落ち予測量から、前記第3の手段が前記桁落ちの
発生した仮数値を正規化するためのビットシフト量を出
力することを特徴とする先行1予測装置。 - 【請求項2】 浮動小数点演算の加減算命令において仮
数値の減算結果に桁落ちが発生する場合、前記桁落ち量
を1ビットの誤差範囲内で桁落ち予測量を生成しかつ、
加減算命令の結果が正負どちらになるかを出力する第1
の手段と、 仮数値減算時に発生する下位ビット側からのボロウの伝
搬の情報を、前記オペランドの仮数値の減算の際に発生
する、被減数−減数の際に発生するボロウと、減数−被
減数の際に発生するボロウの2種類に区別して生成する
第2の手段と、 前記ボロウの伝搬情報を用いて前記桁落ち予測量を操作
する第3の手段とを備え、 減算結果が正の数になる場合には前記被減数−減数の際
に発生するボロウの有無に従い、減算結果が負の数にな
る場合には前記減数−被減数の際に発生するボロウの有
無に従って、前記第1の手段によって得られた桁落ち予
測量から、前記第3の手段が前記桁落ちの発生した仮数
値を正規化するためのビットシフト量を出力することを
特徴とする先行1予測装置。 - 【請求項3】 請求項2記載の先行1予測装置におい
て、 i桁の2進数より構成される被減数Xとj桁の2進数よ
り構成される減数Y(i,jは自然数)を、各桁毎に減
算し、各桁が(1、0、−1)より構成される冗長2進
数Zsdを生成する第1の手段と、 前記冗長2進数値Zsdの下位よりk桁目(kは最下位ビ
ットがk=0となる整数)の冗長2進数値Zsdk と下位
よりk+1桁目の冗長2進数値Zsdk+1 を用い、Zsdk+
1 =“1”または“−1”であるときにCk =Zsdk と
なり、Zsdk+1=“0”であるときにCK =0となるよ
うに、式Zsdk =2Ck +Sk に従い、中間桁上げCk
、中間和Sk を生成する第2の手段と、 下位桁からの中間桁上げCk-1 と中間和Sk の各桁毎の
加算結果が0の時に“0”、1の時に“1”、−1の時
に“−1”という冗長2進数ZZk を生成する第3の手
段とを備えた先行1予測装置。 - 【請求項4】 仮数部オペランド、指数部オペランド、
符号部オペランドを有する浮動小数点形式の2つの被演
算データを加算または減算する浮動小数点加減算装置で
あって、 桁合わせ処理された後の2つの仮数値オペランドがそれ
ぞれ入力される加減算回路及び請求項1記載の先行1予
測装置と、 前記加減算回路の出力が入力されるバレルシフタと、 前記先行1予測装置から出力される数値が入力されて最
上位から連続するゼロの数を求めるプライオリティエン
コーダとを備え、 前記プライオリティエンコーダの出力を用いて、前記バ
レルシフタに入力された前記加減算回路の出力をシフト
して出力することを特徴とする浮動小数点加減算装置。 - 【請求項5】 仮数部オペランド、指数部オペランド、
符号部オペランドを有する浮動小数点形式の2つの被演
算データを加算または減算する浮動小数点加減算装置で
あって、 桁合わせ処理された後の2つの仮数値オペランドがそれ
ぞれ入力される加減算回路及び請求項2記載の先行1予
測装置と、 前記加減算回路の出力が入力されるバレルシフタと、 前記先行1予測装置から出力される数値が入力されて最
上位から連続するゼロの数を求めるプライオリティエン
コーダとを備え、 前記プライオリティエンコーダの出力を用いて、前記バ
レルシフタに入力された前記加減算回路の出力をシフト
して出力することを特徴とする浮動小数点加減算装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5158234A JP2752564B2 (ja) | 1992-07-06 | 1993-06-29 | 先行1予測装置及び浮動小数点加減算装置 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP17800092 | 1992-07-06 | ||
JP4-178000 | 1992-07-06 | ||
JP5158234A JP2752564B2 (ja) | 1992-07-06 | 1993-06-29 | 先行1予測装置及び浮動小数点加減算装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0675752A JPH0675752A (ja) | 1994-03-18 |
JP2752564B2 true JP2752564B2 (ja) | 1998-05-18 |
Family
ID=26485429
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5158234A Expired - Fee Related JP2752564B2 (ja) | 1992-07-06 | 1993-06-29 | 先行1予測装置及び浮動小数点加減算装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2752564B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3313002B2 (ja) * | 1994-12-02 | 2002-08-12 | 三菱電機株式会社 | 浮動小数点演算装置 |
JP6871513B2 (ja) | 2017-05-22 | 2021-05-12 | 富士通株式会社 | 演算器及び演算器の制御方法 |
-
1993
- 1993-06-29 JP JP5158234A patent/JP2752564B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH0675752A (ja) | 1994-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2508912B2 (ja) | 浮動小数点加算装置 | |
KR100232962B1 (ko) | 자리올림수 교정을 갖는 휴즈된 부동 소수점 곱셈 및 누산 장치 | |
US5343413A (en) | Leading one anticipator and floating point addition/subtraction apparatus | |
US20130282779A1 (en) | Decimal floating-point adder with leading zero anticipation | |
KR100241076B1 (ko) | 조정및정규화클래스를구비한부동소수점승산및누산장치 | |
JP4388543B2 (ja) | 3項入力の浮動小数点加減算器 | |
US20080288571A1 (en) | Arithmetic device for performing division or square root operation of floating point number and arithmetic method therefor | |
JP3544846B2 (ja) | 論理回路及び浮動小数点演算装置 | |
US5623435A (en) | Arithmetic unit capable of performing concurrent operations for high speed operation | |
US5282156A (en) | Leading one anticipator and floating point addition/subtraction apparatus employing same | |
US6947962B2 (en) | Overflow prediction algorithm and logic for high speed arithmetic units | |
US5831884A (en) | Apparatus for performing arithmetic operation of floating point numbers capable of improving speed of operation by performing canceling prediction operation in parallel | |
JPH0520028A (ja) | 加減算のための浮動小数点演算装置の仮数部処理回路 | |
JP2752564B2 (ja) | 先行1予測装置及び浮動小数点加減算装置 | |
US7668892B2 (en) | Data processing apparatus and method for normalizing a data value | |
KR101007259B1 (ko) | 패리티 생성 회로, 계수 회로 및 계수 방법 | |
JP2558669B2 (ja) | 浮動小数点演算装置 | |
US7552165B2 (en) | Method and system to implement an improved floating point adder with integrated adding and rounding | |
US20130238680A1 (en) | Decimal absolute value adder | |
EP1282034A2 (en) | Elimination of rounding step in the short path of a floating point adder | |
US7003540B2 (en) | Floating point multiplier for delimited operands | |
JP2000311079A (ja) | 実数演算器 | |
JPH0553765A (ja) | 先行1検出回路および浮動小数点加減算装置 | |
US20140059104A1 (en) | Arithmetic circuit for calculating correction value | |
JP3512700B2 (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: 19980210 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080227 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090227 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090227 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100227 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100227 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110227 Year of fee payment: 13 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120227 Year of fee payment: 14 |
|
LAPS | Cancellation because of no payment of annual fees |