JPH057737B2 - - Google Patents

Info

Publication number
JPH057737B2
JPH057737B2 JP60036253A JP3625385A JPH057737B2 JP H057737 B2 JPH057737 B2 JP H057737B2 JP 60036253 A JP60036253 A JP 60036253A JP 3625385 A JP3625385 A JP 3625385A JP H057737 B2 JPH057737 B2 JP H057737B2
Authority
JP
Japan
Prior art keywords
mantissa
sum
adder
tnp
numbers
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
JP60036253A
Other languages
English (en)
Other versions
JPS60204031A (ja
Inventor
Emu Fuaamuwarudo Hooru
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.)
US Department of Energy
Original Assignee
US Department of Energy
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 US Department of Energy filed Critical US Department of Energy
Publication of JPS60204031A publication Critical patent/JPS60204031A/ja
Publication of JPH057737B2 publication Critical patent/JPH057737B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/483Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
    • G06F7/485Adding; Subtracting
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49936Normalisation mentioned as feature only

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Nonlinear Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Description

【発明の詳細な説明】 本発明は、デジタルコンピユータ、更に特定す
るに高速デジタルコンピユータにおける浮動小数
点演算を実行するための方法及び装置にかかわる
ものである。
高速計算には、通常、多くの重複した反復せる
算術演算(加算、減算、乗算、除算、累乗など)
が必要である。かかる演算の1つ又はそれ以上の
能率向上は直ちにコンピユータの動作時間を比較
的に節約することにつながる。
ところで、数値演算数x(≠0)がeが整数で
fが1|f|<2を満足して結果的にはx=2e
fとして一義的に演算されるというように、任意
の数値演算数(x)が一対の数(e,f)によつて表
わされる浮動小数点演算における加算及び減算動
作は、逆説的には通常の場合での乗算、除算及び
累乗の演算よりもはるかにやつかいである。かく
して、浮動小数点加減算における能率の改善は特
に重要である。
ボーム(Bohm)による米国特許第3315069号
は、いずれかの2値算術入力(a,b)、(a,
c)、(a,d)、(b,c)、(b,d)又は(c,
d)に応答して、量F(a,b,c,d)=(a±
b)×c÷dを常に形成するように構成され、他
の2つの算術入力が所望とされる特定の演算結果
を作り出すために選び出されるコンピユータを開
示している。例えば、もしも差a−bが所望なら
ば、関数F及びその4つの入力は、F(a,−b,
1,1)=(a−d)×1=a−bとなり;そして
もしも商a÷b(d=0)が要請されるならば、
関数F及びその入力は、F(a,0,1,d)=
a/dとなる。1つが入力a,(±)b,c及び
dの各々を含んでいるグループとしての4つのレ
ジスタは、F(a,b,c,d)=(a÷b)×c/
dという結果が常に作り出されるように論理的に
接続されている。この構成における加算又は減算
に対する時間は、通常の方法における加算又は減
算に要する時間よりも実質的に長い。また、浮動
小数点数の使用は、更に別な問題を提起し、そし
て付加的なコンピユータ時間を必要とする。
キンデル(Kindell)その他による米国特許第
3699326号は、正及び負数を浮動小数点数の2の
補数表示を用いることによつて一貫して“丸め”
るためのコンピユータ装置を開示している。正及
び負の数に対して異なつている丸め定数は、記憶
又は比較用としてかかる数に加えられる。使用さ
れるロジツクは、もしも切捨てられていない実際
の数からnビツトの切捨てられた数を差し引いた
数が、n番目のビツトにおいて切捨てられた数に
最も接近しているか或いはその数の“上位”(“下
位”)2つの隣接せる値間で等距離にあるならば、
nビツト数への一貫した切り上げ(切り下げ)を
実施する。2つの浮動小数点数の和又は差を形成
する手段については論議されていない。
シユミツト(Schmidt)の所有する米国特許第
3721821号には、2つの高速フーリエ変換
(FFT)アルゴリズムに対する係数についての近
似的且つ同時的コンピユータ計算及び処理のため
の方法及び装置が開示されている。1つの実施例
において、シユミレツトの発明は、2つの高速フ
ーリエ変換(FFT)が実質的に同時に計算され
て、それにより、FFTの計算に通常必要とされ
て時間を約50%程度減少させるように、単一の直
列アクセス・メモリーにおける適切なデータの2
つの直列せる流れを組合せている。しかしなが
ら、その発明は、浮動小数点表示の数の加算及び
減算についての同時的演算については全く触れて
いない。
本発明は、コンピユータにおいて、2つの浮動
小数点(2進)数xA=(2eA)fAおよびxB=(2eB
fB(1fA,fB<2、eAおよびeBは整数)について
の加算及び減算のような浮動小数点演算動作を時
間的に能率良く実行するための方法及び装置を対
象としている。
本発明による1つの目的は、従来の方法に比較
して一層少ない計算時間で浮動小数点加算及び減
算を行なう方法を提供するにある。
本発明の他の目的は、浮動小数点加算及び減算
を同時に実施するための方法を提供するにある。
本発明の別な目的及びその利点は、添付図面を
参照しての以下の詳細な記載から明らかとなろ
う。
本発明による前述の目的を達成するために、浮
動小数点演算動作を行なうための正視化、加算及
び再正規化という従来の3ステツプ・プロセス
は、2ステツプ・プロセスの各々がその3ステツ
プ・プロセスでのステツプの1つを本質的に除去
した2つの並列せる2ステツプ・プロセスへと分
解される。その2つの工程は、その指数が接近し
ているか(指数差1)又はより離れている(>
1)かという2つの場合に対して正しい答を与え
る。浮動小数点演算動作は、どの条件が実際に真
であるかに関係なく、両工程において同時に実施
され、そして正しい答は、その答の3ビツトにつ
いての簡単な検査の結果から選択される。指数が
接近している場合(指数差1)、予備正規化ス
テツプはそれらの数の1つが多くて1ビツトシフ
トされなければならないので除外されており;シ
フトされていない又は1ビツトシフトされた数
は、選択信号を与えるのにその指数の下位2ビツ
トについての簡単な検査を利用するマルチプレク
サによつて選択される。指数がはるかに離れてい
る場合(指数差>1)、その事後正規化ステツプ
は、そこでの数が一旦予備正規化されてそして加
えられるので除外されており、そこでの結果は、
多くて1ビツトの右シフト又は左シフトを必要と
し、そのシフト方向の選択は、その結果の3ビツ
トについての簡単な比較を利用するマルチプレク
サに適切な選択信号を与えることによつて行なわ
れる。
1つの好ましい実施例において、その第1の工
程は、指数の各下位2ビツトを比較して、そして
この場合には0か又は1のいずれかである制御信
号rA=max(0、eB−eA)、rB=max(eA−eB、0)
を形成する(短)整列シフト計算器によつて履行
される。入力fA,1/2fA及びfB,1/2fBをそれぞれ
持つ一対の2入力マルチプレクサの各出力は、加
算器/減算器へ適切な入力(シフトされていない
か又は1ビツトだけシフトされているかのいずれ
か)を与えるために、選択信号rA及びrBによつて
それぞれ制御されて加算器/減算器へ入力され、
加算器/減算器においてftnp=fA2-rA+fB2-rBでも
つて表わされる和を形成する。和ftnpは関数S=
〔log2|ftnp|〕を発生する優先エンコーダへと入
力される。シフターは、ftnpをSビツトだけシフ
トすることによつて、f′r=ftnp2-Sで示される結果
を作り出し、そして加算器は、e′r=enax+Sで示
される結果を作り出す。
第2の工程は、全指数を見てそして制御信号rA
及びrB(この場合には、指数差>1)を形成する
(全)整列シフト計算器によつて履行される。制
御信号rA及びrBは、ftnp=fA2-rA+fB2-rBという和
を形成する加算器/減算器へと適切な入力を与え
るためにfA及びfBをそれぞれシフトして適切に予
備整列させる一対のバレル・シフターへと入力さ
れる。ftnpの3ビツト、すなわち点ftnp(1)及びftnp
(0)の前の2ビツト及び点ftnp(−1)の後のビ
ツトを“1”があるかどうかを検査することによ
り、3つの答のうちの1つが4入力マルチプレク
サ1/2ftnp,ftnp、又は2ftnpから選択される。もし
もこれらのビツト検査のいずれもが満足されない
(3つの検査ビツトのいずれもが1でない)とす
ると、これは、その第2の工程が正しい答を与え
ず、マルチプレクサへの第4の入力である第1の
工程の結果が正しい答であることを示す。このビ
ツト検査はまた、もしもビツト検査の1つが満足
されるならば、加算器を用いて形成される正しい
指数、enax+1,enax又はenax−1の選択を、又、
もしもビツト検査のうちのいずれもが満足されな
いならば第1の工程の結果の選択を可能し、4つ
の選択は4入力マルチプレクサへの入力となる。
第1の工程における同時的加算及び減算を行な
うために、排他的論理和ゲートが、fA及びfBの記
号ビツトを比較し、そしてシフトされていないか
又は1ビツトシフトされたかのいずれかの記号付
けされた入力を4入力マルチプレクサから選択す
るために付加されている。第2の工程において、
減算器回路は加算器に対して並列に置かれる。
明細書に編入されてその一部を形成している添
付図面は、この発明の実施例を例示しており、明
細書中の記載と一緒になつて、本発明の原理を説
明する役割を果している。
本発明は改良された浮動小数点算術演算のため
の方法及び装置を提供する。従来技術において、
浮動小数点加算/減算は、基本的に、正規化、加
算及び再正規化という3ステツプ・プロセスであ
る。本発明は、従来技術における第1又は第3ス
テツプを本質的に除外することによつて従来のプ
ロセスを短縮している。本発明によると、被演算
数は、まず始めに、その指数が著しく異なつてい
るのか又は近接しあつているのかを決定するため
に比較される。これら2つの場合に応じて処理手
順が異なるからである。比較結果の応じて2通り
の2−ステツプ・プロセスのうちの一方が選択さ
れる。演算作業は2つの並列せる別々な回路にお
いて同時に行なわれ、そして正しい答は、特定の
基準に従つてこれらの2つの回路において作り出
された答から選択される。もしも指数差が大きけ
れば、再正規化ステツプの必要性はなくなり、結
果的に演算プロセスは正規化及び加算のみにな
る。同様にして、もしも指数が近接しあつている
ならば、正規化ステツプが除外され、演算プロセ
スは加算及び再正規化となる。このように指数同
志の初期比較を行なうことによつて、3ステツプ
のうちの1つがはるかに短い演算に置き換えら
れ、これによつて全プロセス時間を減少させられ
ることになる。これは、1つのみが正しい2つの
異なる答を作り出す並列ハード・ウエアによつて
達成され、正しい答は簡単な検査によつて選ばれ
る。この発明は、一方が最初の2−ステツプ・プ
ロセスを通して他方が次の2−ステツプ・プロセ
スを通して、並列して別々に行なわれる演算A+
B及びA−Bを対として実施するのに利用でき
る。
この発明によれば高速計算を目的として加算及
び減算のような浮動小数点減算における“待ち時
間”を減少させることができる。動作の“待ち時
間”とは、特定の演算処理動作が初めて開始され
たときに始まり、その演算処理動作に依存したす
ぐ次動作が開始されるときに終了する経過時間の
ことである。コンピユータ演算動作には、各場合
において、処理動作の多くが主要処理動作に依存
しているために多くの待ち時間がある。高速ナン
バー・クランチング・コンピユータ動作において
は、処理機器が演算/論理動作の反復性シーケン
スを“パイプライン処理”を通して迅速に行なう
かどうかが問題となるために、持ち時間は極めて
重要である。かくして、最小の待ち時間と高いパ
イプライン処理率とを持つ浮動小数点加算/減算
に対するコンピユータ・ハードウエアの設計は非
常に魅力的である。
浮動小数点数はxは、一対の数(e,f)とし
表わされ、そこにおいて、仮数すなわち端数f
(2進法において示される)は、その大きさが1
と2との間、即ち、 1|f|<2(但しx=0を除く) にあるp−ビツト固定小数点端数である。
また、指数eは整数であり、浮動小数的数x
は、x=2efとして一義的に表わされる。2つの
浮動小数点数をxA=(eA,fA)及びxB=(eB,fB
と仮定すると、第1図において概略的に例示され
ている正規化された浮動小数点和を算出する従来
の方法は、まず始めにenax(eA,eB)を決定し、
そしてfA2eA-emax及びfB2eB−emaxを形成するため
に、全整列シフト計算器及び一対の右シフトを使
用してenax2進位置だけ下方に両xA及びxBをシフ
トする。但し、これはそれらの指数が共に正でな
いことを条件とする。和を形成する2つの修正さ
れた数は加算器/減算器において加えられる。
fnax=fA2eA-emax+fB2eB-emax そして、関数 gtnp=log2|ftnp|及び S=〓gtnp〓 が先導部の零を計数する優先エンコーダによつて
形成される。尚、〓g〓は最大整数(実数g)
である。また数ftnp及びgtnpは次の条件、すなわ
ち、 |ftnp|<4、 −∞<gtnp<2 を満足する。浮動小数点演算の結果は、加算器及
びSビツトの全シフトによつて以下のように得ら
れる: er=enax+S、 fr=2-sftmp ここで、(er、fr)は、所望とする浮動小数点
和を表わしている対としての数である。以上のよ
うに、従来の方法では、第1のシフトではまず演
算数を正視化させ、第2のシフトでは加算/減算
動作の結果を再正視化するという、2つの大きな
シフト作業を直列に行なわなければならなかつ
た。直列に実行されるこうした全シフトは、従来
の浮動小数点加算及び減算作業の全待ち時間(経
過された時間)の大きな部分を占めている。
この発明は、浮動小数点和(又は差)xA+xB
=fA2eA+fB2eBの計算が2つの相互に排他的でし
かも徹底的な条件へと場合分けされる事を利用し
た新しい方式を提供するものである。そして、こ
れらの各条件では、処理工程は独立しており、ま
た互いに対応したハードウエアを利用すると同時
に、それぞれが従来の方法を使用することによる
よりも迅速な演算を達成している。即ち、第2図
以下の図面を用いて説明すれば、まずその差|eA
−eB|が指数比較器(図示されていない)におい
て形成される。2つの独立せる並列演算は、第2
図及び第3図にそれぞれ概略的に示されている回
路において、2つの条件の各々に対して行なわ
れ、そして正しい答はその2つの結果を試験する
ことによつて選択される。次の条件1、2のそれ
ぞれの場合の処理工程について説明する。
条件1:|eA−eB|=0又は1の場合。
2|eA−eB| による通常の除算を履行するのに
使用される右シフト動作は、2進形態での数に対
する1位置の右シフトか又はシフトなしのいずれ
かであり;そしてそのシフト自体は各指数eA及び
eBの最下位の2ビツトのみを調べることにより決
定される。第2図の回路ではその下位2ビツトの
みがチエツクされ、そしてその計算は、あたかも
その指数差が1以下又は1に等しいかのように実
行される。この場合に対して、第2図の回路は、
動作の待ち時間を最小にすると言う点において最
善となつている。その試験がそれら指数の上位ビ
ツトを用いて行なわれる場合には真とならないこ
とは勿論である。その答の正しさは、以下に述べ
るように、その結果をチエツクすることによつて
決定され、第3図の答が正しい結果であつた場合
には第2図の答は拒否される。
この条件1における和(又は差)の形成は、第
2図の装置を使用して、以下の如く履行される。
enax=max(eA,eB)をセツト; eA=eB+1ならば、rA=0及びrB=1をセツト; eA=eBならば、rA=rB=0をセツト; eA=eB−1ならば、rA=1及びrB=0をセツト; つまり、一般的には、rA=max(eB−eA、0)=
enax−eA、及びrB=max(eA−eB、0)=enax−eB
をセツト。条件1の場合、rA及びrBの値は0又は
1のいずれかとなる。もしも|eA−eB|<1の場
合、enax、rA及びrBを決定するには、各指数の下
位2ビツトを比較するのみで良く、これは、eA
びeBのすべてのビツトを比較するよりもはるかに
早い。第2図に示すこの装置は、次いで以下の関
数及び結果を形成する。
ftnp=fA2-rA+fB2-rB S=〓log2|ftnp|〓 e′r=enax+S f′r=2−Sfmax この条件1において、enax、rA及びrBを決定する
のに要する時間は、eA及びeBの2ビツトのみが比
較されるだけで良いので、それだけ小さい。
第2図を参照するに、整数eA及びeBは、enax
max(eA,eB)を発生する短整列/シフト計算器
11へと入力され、enaxは図示されているように
最終の加算器23へと入力される。また、短整
列/シフト計算器11は、選択信号としての一対
の2入力マルチプレクサ13及び15へとそれぞ
れ入力される2つの数値信号rA=max(eB−eA
0)=enax−eAとそしてrB=max(eA−eB、0)=
enax−eBとを発生する。マルチプレクサ13は、
例えば、適切なビツトからなるfAをマルチプレク
サ13の入力へと接続することにより、入力量fA
及ひfB/2を受けて、そして単一の出力、 fA(rA=0の場合) 又は、fA/2(rA=1の場合) を作り出すが、しかしマルチプレクサ13によつ
て実行されるこれらの計算には時間の消費の必要
がない。同様にして、マルチプレクサ15は、入
力量fB及びfB/2を受けてそして単一の出力、 fB(rB=0の場合) 又は、fB/2(rB=1の場合) を作り出す。数値信号fA2-rA及びfB2-rB(マルチプ
レクサ13及び15のそれぞれからの出力)は、
共に、和を形成しそして出力する中間の加算器/
減算器17へと入力され;そしてこの出力は、い
ずれか(実、正)の数値入力fに対する数値量〓
log2|f|〓を形成してそして出力する優先エン
コーダ19へと入力される。優先エンコーダ19
の出力S=〓log2|fA2-rA+fB2-rB|〓と計算器1
1の出力enaxとは共に、e′r=enax+Sで示される
和を形成する最終の加算器23へと入力される。
中間の加算器/減算器17の出力ftnp=fA2-rA+fB
2-rBと優先エンコーダ19の出力Sとは、数値量
fr=2-Sf′tnpを形成してそして出力するシフター2
1へと入れられる。Sは整数であるので、2-S
よるftnpの乗算は、ftnpをS位置だけ単に右シフ
トすることによつて達成される。この条件1で
は、予備正視化シフトが除外されているので、唯
一回の全シフト動作すなわちSビツトだけの再正
視化シフトが必要とされることに注意されたい。
予備正規化動作は、シフトされていない数か又は
1ビツト右シフトされた数のいずれかを選択する
一対のマルチプレクサへの適切な選択信号を決定
するために、その指数の2つの下位ビツトを単に
比例することによつて行なわれる。
条件2:|eA−eB|2の場合。
この場合には、2|eA−eB|による除算には、
予備正規化のためには任意に大きい右シフト(2
又はそれ以上の位置だけ)を必要とするが、事後
正規化には多くて1位置シフトを必要とするだけ
である。これを証明してみると次のようになる。
eA−eB2の場合に対して、次式が実行される。
|fA+fB2-(eA-eB)| |fA|−|fB|2-(eA-eB)| 1−21-(eA-eB)1−1/2=1/2、 |fA+fB2-(eA-eB)| fA+fB2-(eA-eB)| 2+21-(eA-eB)5/2 かくして、xAとxBとの加算(又は減算)の結
果は、和xA+xBを再正視化させるために1位置
以上の右又は左シフトを必要とする程大きくも小
さくもならない。この条件2における和(又は
差)の形成は、第3図において例示されているよ
うに、以下の如く履行される。
enax(eA,eB)をセツト; rA=max(eB−eA、0) =enax−eA及び rB=max(0、eA−eB) =enax−eB ftnp=fA2-rA+fB2-rBを計算; |ftnp|2ならば、fr=1/2ftnp 及びer=enax+1をセツト; (1a) ||ftnp|2ならば、fr=ftnp 及びer=enaxをセツト; (1b) 1/2|ftnp|<1ならば、fr=2ftnp 及びer=enax−1をセツト; (1c) ftnp(1/2|ftnp|5/2)の大きさを既知
とした時のfrの形成には、多くて1位置だけの
ftnpの右又は左シフトに加えて、結果物である指
数erを得るためのenaxからの零又は1の(同時
的)加算又は減算を必要とする。
こうした演算は第3図の装置によつて履行され
る。整数eA+1及びeBは、enax、rA及びrBを発生
する(全)整列計算器31へと入力される。出力
enaxは、3つの信号すなわち、enax及びenax−1
を形成してそして出力し、更にそうした3つの信
号はマルチプレクサ45へと供給する指数インク
リメント手段43へと入力される。
第2図の短整列シフト計算器11と、そして第
3図の全整列シフト計算器31とは、それらが同
じ入力を受けて、同様の動作を正確に実行し、そ
して同様の変数が出力する単体のユニツトに組合
せてもよいが、本発明においては|eA−eB|1
の条件下ではシフト動作はeA及びeBの下位2ビツ
トの検査をするのみでよいことになるのでこの条
件においては独立した短整列/シフト計算器を用
いた方がxAとxBとの和あるいは差の形成はより
迅速化する。
シフト計算器31からの信号rA及びrBは、それ
ぞれ制御信号として、2つの右シフト手段(バレ
ル・シフター)33及び35へと入力される。シ
フト手段33及び35はまた、入力fA及びfBをそ
れぞれ受けてそして、それぞれrA及びrB位置だけ
fA及びfBを右シフトすることによつてそれぞれの
出力fA2-rA及びfB2-rBを形成する。右シフト手段
33及び35の出力は、和ftnp=fA2-rA+fB2-rB
形成しそして出力する中間の加算器/減算器37
へと入れられる。3つの信号1/2ftnp、ftnp及び
2ftnpは、例えば、適切なビツトをその入力へと
接続することによつて、式(1a、1b、1c)にお
ける3つの不等式のどれが真であるのかを決定す
る複数入力の大きさ比較器/マルチプレクサ41
へと入力される。もしも不等式(1a)が満足さ
れるならば、比較器41はfr=1/2ftnpを出力しそ
して正のラツチ信号LS3をマルチプレクサ45
へと送出し、その後、そのマルチプレクサ45
は、er=enax+1を出力する。もしも不等式
(1b)が満足されるならば、比較器41はfr=ftnp
を出力しそして正のラツチ信号LS4をマルチプ
レクサ45へと送出し、その後、そのマルチプレ
クサ45は、er=enaxを出力する。もしも不等式
(1c)が満足されるならば、比較器41はfr
2ftnpを出力しそして正のラツチ信号LS5をマル
チプレクサ45へと送出し、その後、そのマルチ
プレクサ45は、er=enax+1を出力する。もし
も条件がすべて満足されない(すなわち、|ftnp
|<1/2)とするならば、第2図の回路から、fr
=f′r及びer=e′rをセツトする。
かくして、第3図の回路からの正しい出力は、
比較器41におけるftnpの大きさを試験してその
適切な結果fr=1/2ftnp・ftnp又は2ftnpを出力する
ことによつて決定される。このプロセスは、ま
た、正しい指数をマルチプレクサ45から選択す
る。しかしながら、3つのすべての検査1a,1
b,1cは、|eA−eB|2という初期前提が正
しくなかつた場合には失敗することになり、この
場合|eA−eB|=0又は1であるので、正しい答
は第2図の回路によつて与えられる。従つて、第
2図の回路からの結果f′rは比較器41への第4の
入力となり、そして上記した3つの大きさ検査が
失敗することを条件に出力され;また、第2図の
回路の結果e′rはマルチプレクサ45への第4の
入力となり、上記大きさ検査が最終的に失敗する
ときに、ラツチ信号LL6を加えることによつて
出力される。全プロセス時間は、あたかも各ケー
スが真であるかのように第2図及び第3図の計算
を同時に行ない、それから、最後に、正しい答を
選択する簡単な比較を行なうことによつて減少さ
れる。
第4図及び第5図は、2つの数の和及び差、す
なわち、xA±xB=fA2eA±fB2eBを同時に発生する
のに有用な本発明の第2の実施例を示しており、
第2図及び第3図に示されている数の和を発生す
る回路に比較して装置的に幾らか複雑化してい
る。第2図及び第3図に例示されている実施例に
おいて、減算は、補数(2の補数形式)を用いる
ことで、本質的に加算と同様に実施されている。
第4図に示されているように、|eA−eB|<2の
場合に対し、短整列シフト計算器11は、前にも
述べたように、制御信号rA及びrBを決定するのに
使用されている。信号rAは、入力fA及び1/2fA
持つ2入力マルチプレクサ13の選択信号として
使用されているので、量fAは多くて1ビツトだけ
シフトされる。マルチプレクサ13の出力は、加
算器/減算器17へと入力される。信号rBは、負
表示のものは2の補数形式である入力fB、1/2fB
−fB、−1/2fBを待つ4入力マルチプレクサ16へ
選択信号の1つとして印加される。排他的ORゲ
ートである対向符号指数手段18は、2つの入力
からfA及びfBの符号ビツトである出力信号LS9を
発生する。信号LS9は第2の制御信号としてマ
ルチプレクサ16へと印加され、そして信号rB
シフトされていない又は1ビツトシフトされた出
力のいずれかを選択するのに使用されている間
に、正又は負の出力を選択するのに使用される。
マルチプレクサ16からの出力はまた加算器/減
算器17へと入力される。かくして、ゲート18
からの出力は、そこでの2つの数が加算されるの
か又は減算されるのかを決定する。マルチプレク
サ16は、符号ラツチ信号LS9及び信号rBに従
つて、±fB2-rBを出力し、この出力は、マルチプレ
クサ13からの出力fA2-rAと共に、加算器・減算
器17へと入れられる。|eA−eB|1の条件に
対して、第4図の残りのコンポーネントは第2図
におけるのと同じであつて、この条件に対して
は、結果e′r(±) =enax+S(±) 及びf′(±) =
2-S(±)f(±) tnpを作り出す。ここでS(±) =〓
log2|fA2-rA±fB2-rB|〓そしてf(±) tnp=fA
2-rA±fB2-rBである。
|eA−eB|2の場合に対する独立した並列計
算は第5図において例示されており、そこにおい
て、第3図の加算器/減算器37は、シフト手段
33及び35からの信号fA2-rA及びfB2-rBを受信
する分離せる加算器36及び減算器38によつて
置き換えられている。加算器36は、和fA2-rA
fB2-rB=f(+) tnpを形成し、そして減算器38は、差
fA2-rA−fB2-rB=f(-) tnpを形成する。第5図の残り
のコンポーネントは第3図におけるのと同様に機
能し、条件|eA−eB|2又は<2に対して、結
果er=enax+{S、1、0又は−1}及びfr(±)
={2-S、0.5、1.0又は2.0}×f(±) tnpを作り出
し、そこでのハードウエアは、その和回路とそし
て差回路上で二重にされている。加算器36から
の出力は、シフトされてないか又は左又は右へ1
ビツトシフトされて、大きさ比較器/マルチプレ
クサ41の入力へと入れられ;第4図からの結果
f′rがその第4の入力へと印加されいる。計算機3
1の信号enaxは、3つの入力enax,enax+1,
enax−1を指数マルチプレクサ45及び45Aへ
と与える指数インクリメント手段43へと入力さ
れる。減算器38からの出力はシフトされないか
又は左又は右へと1ビツトシフトされて大きさ比
較器/マルチプレクサ41Aの3つの入力へ入力
され、第4図からの結果f′rが第4の入力として印
加される。比較器41及び41Aは前に記述した
ように適当な出力を選択しそして適切な指数を選
択するマルチプレクサ45及び45Aへとラツチ
信号LS3−6を与える。かくして、2つの数の和
及び差は、コンポーネント41,45,41A及
び45Aから同時に得られる。
第4図及び第5図の回路は、実質的に同じハー
ドウエアによつて浮動小数点数の和又は差(xA
±xB)を直列に発生するのに有用である。高速フ
ーリエ変換のような動作を行なうためには、和及
び差の同時的発生が必要である。この例では、十
分に配慮されたハードウエアが同時的和及び差を
形成するために与えられているので、第4図及び
第5図のコンポーネントはそのまま使用可能であ
る。
図面において示され、明細書において記述さ
れ、実用的にまで洗練され、そして本発明に従つ
て有効に動作すると見出されている回路装置は、
演算用デジタルコンピユータを形成するのに必要
なすべての他のエレメントを与え、そしてS−1
プロジエクトFY1979年報、カリフオルニア大学
ロウレンス・リバモア国立研究所、UCID−
18619(1979)において記述されていて且つ本明細
書でも参考として取り入れている64ビツト・スー
パーコンピユータとの組合せにおいて実施され
る。この回路装置は適当な数の回路素子を使用す
ることによりいかなる数のビツトに対しても設計
できる。浮動小数点演算の回路は、浮動小数点回
路を動作させるのに必要とするすべての関数、例
えば、減算動作のための2の補数形成又は丸めを
行なう従来のコンピユータとの組合せにおいても
使用される。
本発明の好ましい実施例は、フエアチヤイルド
F 100K ECL系列の論理コンポーネントを使
用することにより構成される。2−入力マルチプ
レクサはF100155カツド・マルチプレクサ/ラツ
チ・チツプであり、他方、4−入力マルチプレク
サはエネーブル・チツプを持つF100171トリプル
4−入力マルチプレクサである。加算器は、
F100179キヤリー・ルツクアヘツド・ジエネレー
タを持つF100180高速6−ビツト加算器を使用し
て実施される。優先エンコーダ(先導部零をカウ
ントする)は、F100165万能優先エンコーダであ
る。全シフター(バレル・シフター)は、
F100158 8−ビツト・シフト・マトリクスでも
つて実施される。こうした構成部品は、本明細書
でも参考として取り入れられているフエアチヤイ
ルド、F 100K ECL データ・ブツクに記述さ
れている。
本発明の好ましき実施例は従来の部品を使用し
て実施される。コンピユータ構造は、David J.
Kuck,J.WileyおよびSons著“The Structure
of Computers and Computation,Vol.”
(1978)と、Kai Hwang,J.WileyおよびSons著
“Computer Arithme−tic Principles,
Architecture and Design”(1979)において記
述されている。浮動小数点演算は、本明細書にお
いても参考として取り入れられているKuckによ
る上記文献の210−216頁、及びHwangにより上
記文献の第9章において記述されている。一般的
形式のシフト手段は、Kuck著の上記文献231−
233頁において記述されているバレル・シフター
として例示されている。浮動小数点加算ユニツト
は、Hwang著の上記文献341頁の第9,17図に
例示されている。関数Sを作り出す機能手段は優
先エンコーダであつて、例えば、上記第9,17
図において示されている零デジツト・チエツク
(ZDC)である。この機能手段は、Kuck著の上
記文献233−234頁において記述されているような
1位置係数を使用しても等価的に実施できる。本
発明の好ましい実施例は、Hwang著の上記文献
33−36頁において記述されているような従来のデ
ジタル・マルチプレクサを利用しても良く;同様
にして、比較器はHwang著の上記文献45−47頁
(第2,12図及び第2,13図)において例示
されているような従来のデジタル・コンポーネン
トでも良い。
本発明による基本的原理及び動作を要約する
と、整列シフト計算器は整数指数信号eA及びeB
受けて、中間差eA−eBを形成し、そしてeA−eB
正であるのか、負であるのか又は零であるのかを
決定する。もしも、eA−eB>ならば、計算器は、
enax=max(eA,eB)=eA、rA=max(0、eB−eA
=0そしてrB=max(eA−eB、0)=eA−eBをセツ
トする。もしも、eA−eB<0ならば、計算器は
enax=eBそしてrA=rB=0をセツトする。短整列
計算器においては、eA−eB=−1,0又は+1で
あるので、整数enax、rA及びrBは2つの下位ビツ
トのみを検査することにより迅速に決定される。
2入力マルチプレクサは、入力信号fA、1/
2fA及び選択信号rAを受信し、そして単一の信号f0
=fA(rA=0の場合)とf0=1/2fA(rA=1の場
合)、即ちrAの選定によつてf0=fA2-rAを出力し、
かくして、シフトされていないか又は1ビツト・
シフトされたかのいずれかの出力を与える。
以下の3つの場合は相互に明確な代替が可能で
ある: (1) rA=1、rB=0及びeB−eA=+1; (2) rA=0、rB=1及びeA−eB=+1; (3) rA=rB=0及びeA=eB・ もしも第1の代替があるならば、xB=2eBfB>xA
=2eA及びxA+xB=2eB〔fB+2(eA−eB)fA〕=2eB〔fB
+1/2fA〕となり;そしてもしもfB>0(1fB
<2)と仮定されるならば、0<fB+1/2fA
3(より一般的には0<|fB+1/2fA|<3)と
なる。同様にして、もしも第2の代替があつて、
そしてfA>0(1fA<2)と仮定されるならば、 xA+xB=2eA〔fA+1/2fB〕 0<fA+1/2fB<3 (より一般的には0<|fA+1/2fB|<3)と
なる。もしも第3の代替があるならば、 xA+xB=2eA〔fAB〕 、 −4<fA+fB<4、 0<|fA+fB|<4となる。
いずれの場合でも、場合ftnp=2-rAfA+2-rBfB
容易に形成され、そして0<|ftnp|<4を満足
する。
優先エンコーダは、信号ftnpを受信し、そして
出力信号S=〓log2|ftnp|〓を作り出す。もし
も、2進表示において、|ftnp|=(h2,h1,h0
……h-h+2)であれば、Sはhp=1である場合に
は−(n−2)S1である最も高い整数Pで
ある。またhp=1でないならば、ftnp=0及びxA
+xB=0となる。もしも、ftnp≠0であるなら
ば、fr=2-Sftnpは1fr<2を満足する。かくし
て、xA+xB=2emax ftnp=2emax+Sfrとなり、これ
は、|eA−eB|1の場合における和xA+xBの浮
動小数点分解を表示する。
もしも、|eA−eB|2であるならば、演算で
は、右シフト手段と、左シフト手段と、加算器
と、入力整数信号enaxを前提として整数信号enax
+1及びenax−1を作り出す指数インクリメント
手段と、そして大きさ比較器とが再び利用され
る。
大きさ比較器は、左シフトされた信号2-Sgtnp
1/2gtnpgtnp及び2/9tnpとを受信する。但し、
g′tnp=fA2-rA+fB2-rB。もしも、gtnpが、 gtnp=(±)(gp、gp-1、 ……g1、g0、g-1、……go-p) =(±)ko= -p gk2k、 (g=0又は1) のような2進形態において表わされるとすると、
以下の証明は容易に行なえる。
もしも、或るk1に対して、gk=1ならば、
|gtnp|<2、 もしも、g0=1及びすべてのk1に対してgk
=0ならば、1|gtnp|<2、 もしも、すべてのK1に対して、gk=0なら
ば、|gtnp|<1。
かくして、大きさ比較器は、まず(1)正の第3ラ
ツチ信号が発生されてそして比較器出力信号がfr
=1/2gtnpである場合において或るK1に対し
てgk=1であるのかどうか、(2)正の第4ラツチ信
号が発生されてそして比較器出力信号がfr=gtnp
である場合においてすべてのk1に対してgk
0であり、またg0=0であるのかどうか、(3)正の
第5ラツチ信号が発生されてそして比較器出力信
号がfr=2gtnpである場合でのg-1=1の場合を除
くすべてのK0に対してgk=0であるのかどう
か、(4)|eA−eB|1の場合からの結果、すなわ
ち、2-Sgtnpが必要とされる場合でのすべてのK
−1に対してgk=0であるのかどうか、を決定
する。前記の記述から、|eA−eB|2に対して
は、1/2|gtnp|5/2となることがわかる。そ
して以上の4つの場合についての考慮から、あら
ゆる場合にも1|fr|<2となることが容易に
証明できる。以下のように |gtnp|2ならば、enax+1、 1<|gtnp|<2ならば、er=enax、 1/2|gtnp|<1ならば、enax−1、 |gtnp|<1/2ならば、enax+S と定義することで、 xA+xB=2emaxgtnp=2erfr となることが証明でき、これは、eA−eB2であ
るときでの和xA+xBの浮動小数点分解を表示す
る。
次の例は、浮動小数点計算が本発明によつてい
かにして行なわれるかを示している。負の数が含
まれる場合の例で、直接的減算(2の補数及び加
算の形成の代りに)が示されている。
例 1 条件1(|eA−eB|1) 1.111*2101110 (10進 1.875*246)と、 −1.000*2101111 (10進−1.000*247)とを加える。
仮数及び指数は: fA=1.111、eA=101110、 fB=−1.000、eB=101111 指数差 |eA−eB|=1 第2図の回路において: eAの下位2ビツトは10(10進では2)であり、
そしてeBの下位2ビツトは11(10進では3)であ
る。こうしたビツトのみを考慮してみると、もし
も指数が接近、即ちすべての上位ビツトが同一で
あるとすると、eA=eB−1、従つてrA=−1そし
てrB=0となる。上位ビツトは実際にチエツクさ
れず;計算はあたかもその条件が真であるかのよ
うに行なわれる。かくして、予備正規化として
は、fAを一度シフトさせることだけを必要とす
る。加算は次のようにする。すなわち; 0.1111 1/2fA −1.0000 fB −0.0001 ftnp 先導部零を、係数することにより、S=−4と
なり、以下の結果が得られる。
f′r=2-Sftnp=−1.0 e′r=enax+S=101111−100=101011 (10進法では43) かくして、その答は、−1.0*243となる。
第3図の回路によつて: 上記と同一の値rA及びrBが上記とは異なる方法
によつて計算される。そこでその加算は前と同様
に、以下のようになる。
0.1111 −1.0000 −00.0001 大きさ比較器は3つの検査ビツト、すなわち、
ビツト(1)、ビツト(0)及びビツト(−1)(小
数点の前の2つのビツト及び小数点の後の1つの
ビツト)に1ビツトを見出さないので、第3図の
回路における答は拒否され、そして第2図の回路
からの答が正しい答(その指数差が最大1であつ
たことを示している)として選択される。
例 2 条件2(|eA−eB |>1) 1.111*2101100 (10進1.875*244)と、 −1.000*2101111 (10進−1.000*247)とを加える。
まず最初の回路によつて2つの下位指数ビツ
ト、すなわち、eA=00及びeB=11のみを見て、も
しもそこでの指数が近いならば、eA=eB−1(こ
れは明らかに正しくない)を決定する。rA=0そ
してrB=1で演算を進めると、正しくない答が作
り出される。第2の回路は、rA=−2,rB=0を
決定する。加算は次のようになる。すなわち: 0.1111 2ビツト右シフトされたfA −1.0000 fB −0.1001 ftnp 大きさ比較器は、ftnpの適当なビツトをチエツ
クし、そしてビツト(−1)=0であり、一方ビ
ツト(0)=0であることを見出すので、正しい
結果は、2ftnp(1だけ左シフトされている)及び
enax−1となる。すなわち: fr=1.0001 er=101110 かくして、結果は−1.0001×2101110=−1.0625
×246となる。大きさ比較器による検査の1つが
満足されたので、正しい答は第3図の回路によつ
て発生されたものであり、第2図の回路によつて
作り出された正しくない答は無視される。
本発明の好ましい実施例についての叙上の記載
は例示及び説明のために提示されている。それ
は、本発明の範囲を記述された正確な形態に限定
することを意図せず、幾多の修正及び変更がその
示唆から可能である。
【図面の簡単な説明】
第1図は浮動小数点加算を行なうための従来の
代表的回路の概略図である、第2図及び第3図
は、本発明による浮動小数点加算(又は減算)を
実行するために組合せられて使用される相補形回
路の概略図である。第4図及び第5図は、本発明
による浮動小数点加算及び浮動小数点減算を同時
に実行するのに組合せられて使用され、いずれか
の演算を個々に行なうのに必要とされるハードウ
エアの2倍以下で済む相補形回路の概略図であ
る。 11……(短)整列シフト計算器、13,1
5,16……マルチプレクサ、17……加算器/
減算器、18……対向符号指定手段、19……優
先エンコーダ、21……全正規化シフター、23
……加算器、31……(全)整列シフト計算器、
33,35……バレル・シフター、36……加算
器、37……加算器/減算器、38……減算器、
41……比較器/マルチプレクサ、43……指数
インクリメント手段、45……マルチプレクサ。

Claims (1)

  1. 【特許請求の範囲】 1 仮数を正規化させ、正規化された仮数を加算
    し、そしてその和の仮数を再正規化させることか
    ら成り、各々が仮数及び指数として表わされた一
    対の浮動小数点2進数についての浮動小数点加算
    を行なうための方法において; 前記正規化に先立つて2つの浮動小数点数の指
    数を比較するステツプを含み、 第1および第2の別々の並列した経路で2つの
    別々の計算を同時に行い、 前記第1の経路は前記指数の差が0又は1であ
    るとして第1の和を計算し、一方の仮数を最大1
    位置右シフトすることにより正規化を行なうステ
    ツプを含み、 同時に前記第2の経路は前記指数の差が1より
    大きいとして第2の和を計算し、前記第2の和の
    仮数を最大1位置シフトすることにより再正規化
    を行なうステツプを含み、 前記2つの計算を同時に行つた後に前記第1お
    よび第2の和から選択することを特徴とするデジ
    タルコンピユータにおける浮動小数点演算方法。 2 2進数の小数点の前の2ビツトおよび2進数
    の小数点の後のビツトのいずれもが0でないかど
    うかを決定するため、前記第2の和の仮数ftmp
    のビツトを検査することにより正しい答えを選択
    することを特徴とする特許請求の範囲第1項記載
    の方法。 3 1/2≦|ftmp|≦5/2である場合には前記第
    2の和を選択し、|ftmp|<1/2である場合には
    前記第1の和を選択することを特徴とする特許請
    求の範囲第2項記載の方法。 4 仮数を正規化し、減算及び最正規化するステ
    ツプにより一対の浮動小数点2進数についての浮
    動小数点減算を同時に実施する方法であつて、 2つの数の指数の差が0又は1のいずれかであ
    るとして2つの数の第1の差を計算し、第1の差
    の仮数を最大1位置シフトすることにより再正規
    化するステツプを行い、 同時に2つの数の指数の差が1より大きいとし
    て2つの数の第2の差を計算し、いずれか一方の
    仮数を最大1位置右シフトすることにより正規化
    するステツプを行い、 前記第1及び第2の差から選択する、 ことを特徴とする特許請求の範囲第3項記載の方
    法。 5 各々が仮数と指数とを持つ2つの2進数につ
    いての浮動小数点加算を実施するための装置にお
    いて: (a) 前記指数の差を決定するための比較器手段
    と; (b) 第1の加算器回路とを備え、該第1の加算器
    回路は; (1) 一方の仮数を他の仮数と正規化させるため
    に前記一方の仮数を最大1位置右シフトさせ
    るための第1のシフト手段と; (2) 前記第1のシフト手段に接続されていて、
    第1の和を形成するためにその正規化された
    仮数を加算する第1の加算器手段と;そして (3) 前記第1の加算器手段に接続されていて前
    記第1の和の仮数を正規化させるための第2
    のシフト手段と、 を含んでおり;更に、 (c) 第2の加算器回路を備え、該第2の加算器回
    路は: (1) 2つの2進数の仮数を正規化させるための
    第3のシフト手段と; (2) 前記第3のシフト手段に接続されていて、
    第2の和を形成するためにその正規化された
    仮数を加算する第2の加算器手段と;そして (3) 前記第2の加算器手段に接続されていて、
    前記第2の和の仮数を正規化させるために、
    最大1位置シフトさせるための第4のシフト
    手段と、 を含んでおり;更に、 (d) 前記指数の差が0又は1であるときには前記
    第1の加算器回路からの出力を、また前記指数
    の差が1よりも大きいときには前記第2の加算
    器回路からの出力を選択的に選ぶための選択手
    段を備えている、 ことを特徴とするデジタルコンピユータにおける
    浮動小数点演算装置。 6 前記第1の加算器回路は、前記第1の加算器
    手段の出力に接続されていて、その正規化された
    仮数の和をシフトする位置数を決定するための優
    先エンコーダ手段を含み、前記優先エンコーダの
    出力は、その和の仮数の再正規化を制御するため
    に前記第2のシフト手段に接続されていることを
    特徴とする特許請求の範囲第5項記載の装置。 7 前記優先エンコーダの出力を2つの数の2つ
    の指数のより大きい方に加算するために、前記第
    1の加算器回路は、前記比較器手段と前記優先エ
    ンコーダとに接続されていて、その和の指数を決
    定するための第3の加算器手段を更に含んでいる
    ことを特徴とする特許請求の範囲第6項記載の装
    置。 8 前記第1のシフト手段は、各々が入力として
    シフトされない仮数とそして1位置右シフトされ
    た仮数とを持つている一対の2入力マルチプレク
    サを含んでいることを特徴とする特許請求の範囲
    第5項記載の装置。 9 前記一対の2入力マルチプレクサに接続され
    ていて、前記2つの指数の2つの下位ビツトを比
    較してシフトされていないか又は右シフトされた
    かの仮数を選択するための短整列シフト計算器を
    更に含んでいることを特徴とする特許請求の範囲
    第8項記載の装置。 10 前記選択手段は前記第2の加算器手段から
    の出力の大きさを値1/2、1および2と比較する
    ための大きさ比較器を含んでいることを特徴とす
    る特許請求の範囲第5項記載の装置。 11 前記第4のシフト手段は、前記第2の加算
    器のシフトされていない入力、該第2の加算器の
    右シフトされた出力、該第2の加算器の左シフト
    された出力、更に第4の入力に接続された前記第
    2のシフト手段の出力を入力として持つ4入力マ
    ルチプレクサの3つの入力を含んでいることを特
    徴とする特許請求の範囲第10項記載の装置。 12 指数インクリメント手段と、そして前記指
    数インクリメント手段及び前記大きさ比較器に接
    続されていて、その和の指数を選択するための指
    数マルチプレクサ手段とを更に含んでいることを
    特徴とする特許請求の範囲第10項記載の装置。 13 前記第3のシフト手段は一対のバレル・シ
    フターを含んでいることを特徴とする特許請求の
    範囲第5項記載の装置。 14 浮動小数点加算又は減算のいずれかを行な
    う装置であつて、前記第2の加算器手段と並列し
    た第1の減算器手段を更に含み、前記第1のシフ
    ト手段は、シフトされていない仮数、右シフトさ
    れた仮数、負の仮数、及び負の右シフトされた仮
    数を入力として持つ4入力マルチプレクサと、そ
    して2つの仮数の符号を比較する排他的ORゲー
    トとを含み、前記排他的ORゲートは、シフトさ
    れていないか右シフトされたかの仮数の正又は負
    の値を選択するために前記4入力マルチプレクサ
    に接続されていることを特徴とする特許請求の範
    囲第5項記載の装置。
JP60036253A 1984-02-24 1985-02-25 デジタルコンピユ−タにおける浮動小数点演算方法と装置 Granted JPS60204031A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US583531 1984-02-24
US06/583,531 US4639887A (en) 1984-02-24 1984-02-24 Bifurcated method and apparatus for floating point addition with decreased latency time

Publications (2)

Publication Number Publication Date
JPS60204031A JPS60204031A (ja) 1985-10-15
JPH057737B2 true JPH057737B2 (ja) 1993-01-29

Family

ID=24333488

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60036253A Granted JPS60204031A (ja) 1984-02-24 1985-02-25 デジタルコンピユ−タにおける浮動小数点演算方法と装置

Country Status (2)

Country Link
US (1) US4639887A (ja)
JP (1) JPS60204031A (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4858165A (en) * 1987-06-19 1989-08-15 Digital Equipment Corporation Apparatus and method for acceleration of effective subtraction procedures by the approximation of the absolute value of the exponent argument difference
US4852039A (en) * 1987-06-19 1989-07-25 Digital Equipment Corporation Apparatus and method for accelerating floating point addition and subtraction operations by accelerating the effective subtraction procedure
US5027308A (en) * 1989-02-14 1991-06-25 Intel Corporation Circuit for adding/subtracting two floating point operands
US4941120A (en) * 1989-04-17 1990-07-10 International Business Machines Corporation Floating point normalization and rounding prediction circuit
US4999803A (en) * 1989-06-29 1991-03-12 Digital Equipment Corporation Floating point arithmetic system and method
JP3187402B2 (ja) * 1989-07-26 2001-07-11 株式会社東芝 浮動小数点データ加減算回路
US5432727A (en) * 1989-11-02 1995-07-11 Intergraph Corporation Apparatus for computing a sticky bit for a floating point arithmetic unit
US5117384A (en) * 1990-01-24 1992-05-26 International Business Machines Corporation Method and apparatus for exponent adder
US5247471A (en) * 1991-12-13 1993-09-21 International Business Machines Corporation Radix aligner for floating point addition and subtraction
USH1222H (en) 1991-12-30 1993-08-03 Apparatus for determining sticky bit value in arithmetic operations
JPH05241792A (ja) * 1992-02-27 1993-09-21 Nec Corp 浮動小数点加減算方式および装置
AU652896B2 (en) * 1992-09-29 1994-09-08 Matsushita Electric Industrial Co., Ltd. Arithmetic apparatus
US5764556A (en) * 1995-07-18 1998-06-09 Advanced Micro Devices, Inc. Method and apparatus for performing floating point addition
EP1061436B1 (en) * 1997-10-23 2007-12-19 Advanced Micro Devices, Inc. Multifunction floating point addition/subtraction pipeline
US20030055859A1 (en) * 2001-05-04 2003-03-20 Southern Methodist University Fast IEEE floating-point adder

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3814925A (en) * 1972-10-30 1974-06-04 Amdahl Corp Dual output adder and method of addition for concurrently forming the differences a{31 b and b{31 a
US4488252A (en) * 1982-02-22 1984-12-11 Raytheon Company Floating point addition architecture

Also Published As

Publication number Publication date
US4639887A (en) 1987-01-27
JPS60204031A (ja) 1985-10-15

Similar Documents

Publication Publication Date Title
US5042001A (en) Method and apparatus for performing mathematical functions using polynomial approximation and a rectangular aspect ratio multiplier
US4941120A (en) Floating point normalization and rounding prediction circuit
EP0377837B1 (en) Floating point unit having simultaneous multiply and add
Pineiro et al. Algorithm and architecture for logarithm, exponential, and powering computation
EP0483864B1 (en) Hardware arrangement for floating-point addition and subtraction
JP2662196B2 (ja) 演算結果正規化方法及び装置
US6820107B1 (en) Square root extraction circuit and floating-point square root extraction device
US5633819A (en) Inexact leading-one/leading-zero prediction integrated with a floating-point adder
JPH057737B2 (ja)
JPH04227530A (ja) 浮動小数点プロセッサ
US5659495A (en) Numeric processor including a multiply-add circuit for computing a succession of product sums using redundant values without conversion to nonredundant format
US6549926B1 (en) SRT divider having several bits of each partial remainder one-hot encoded to minimize the logic levels needed to estimate quotient bits
US20080215660A1 (en) Three-Term Input Floating-Point Adder-Subtractor
US6175851B1 (en) Fast adder/subtractor for signed floating point numbers
US5144576A (en) Signed digit multiplier
US5623435A (en) Arithmetic unit capable of performing concurrent operations for high speed operation
Zimmermann Computer arithmetic: Principles, architectures, and VLSI design
JP3436994B2 (ja) シフト装置
JPH0687218B2 (ja) 浮動小数点数演算処理装置及び除数倍数生成装置
US20250244953A1 (en) Fused multiply add operations
Pineiro et al. High-radix logarithm with selection by rounding
US5117384A (en) Method and apparatus for exponent adder
US10275218B1 (en) Apparatus and method for subtracting significand values of floating-point operands
US6044391A (en) Method of generating the sticky-bit from the input operands
Schulte et al. A software interface and hardware design for variable-precision interval arithmetic