JP2558669B2 - 浮動小数点演算装置 - Google Patents

浮動小数点演算装置

Info

Publication number
JP2558669B2
JP2558669B2 JP61311024A JP31102486A JP2558669B2 JP 2558669 B2 JP2558669 B2 JP 2558669B2 JP 61311024 A JP61311024 A JP 61311024A JP 31102486 A JP31102486 A JP 31102486A JP 2558669 B2 JP2558669 B2 JP 2558669B2
Authority
JP
Japan
Prior art keywords
adder
output
mantissa
bit
subtractor
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
Application number
JP61311024A
Other languages
English (en)
Other versions
JPS63167930A (ja
Inventor
勝彦 上田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP61311024A priority Critical patent/JP2558669B2/ja
Priority to US07/137,924 priority patent/US4896286A/en
Priority to DE87311476T priority patent/DE3786072T2/de
Priority to EP87311476A priority patent/EP0273753B1/en
Priority to KR1019870015246A priority patent/KR910006143B1/ko
Publication of JPS63167930A publication Critical patent/JPS63167930A/ja
Application granted granted Critical
Publication of JP2558669B2 publication Critical patent/JP2558669B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/49942Significance control
    • G06F7/49947Rounding
    • G06F7/49957Implementation of IEEE-754 Standard

Landscapes

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

Description

【発明の詳細な説明】 産業上の利用分野 本発明は、絶対値表現仮数部を持つ浮動小数点データ
を入力し、算術演算、丸め処理を行なった後、絶対値表
現仮数部を持つ浮動小数点データを出力する浮動小数点
演算装置に関するものである。
従来の技術 絶対値表現仮数部を持つ浮動小数点データ加減算の一
般的な手順を第2図に示す。先ず演算処理10が行なわれ
るが、これは第3図に示すような演算部で処理される。
21は指数の大小判定と指数差を求めるための減算器、22
は仮数の加減算を行なう加減算器、23は仮数部右シフト
のためのシフタ、24、25、26はマルチプレクサである。
この演算部の動作を、指数部e127、仮数部f128からなる
浮動小数点データと、指数部e229、仮数部f230からなる
浮動小数点データが入力された場合を例に取り説明す
る。先ず減算器21で指数e127と指数e229との減算e1−e2
により指数の大小判定を行ない、大きいほうの指数をマ
ルチプレクサ24から出力する。同時にマルチプレクサ25
で、小さいほうの指数に対応した仮数が選択され、シフ
ト23で減算器21が示す指数差分だけ右シフトを行なう。
マルチプレクサ26では、大きいほうの指数に対応する仮
数が選択される。そして加減算器22でマルチプレクサ26
とシフタ23の出力間で加減算が行なわれる。加減算器22
で減算を行なった結果、出力が負になることがあるの
で、これを絶対値化するため、演算処理10が終わると第
2図の11に示すように絶対値化処理が行なわれる。絶対
値化処理11が行なわれると次に正規化処理12が行なわれ
る。これは演算処理10で減算を行なった場合、仮数部の
上位ビット側が0となる場合があるので、左シフトによ
りこの0を除去する処理である。そしてさらに丸め処理
13を行ない、丸めた結果、仮数部がオーバフローした場
合は最後に右1ビットシフト処理14を行なう。処理12、
14では、マルチプレクサ24出力の指数に対しても、仮数
の処理に対応し加減算を行なう。絶対値化処理11では、
補数化処理のための加算を行なうので、仮数のビット長
に比例する処理時間がかかり、高速演算実現のための一
つの障害となる。そこで加減算器22の出力が常に正とな
るように加減算器22の演算モードを制御する方法が、特
開昭59−188740号公報に示されている。これは、指数部
e127、指数部e229が同じ値のときには、仮数部f128、仮
数部f230の比較結果により、加減算器22の出力が常に正
となるように減算方向を制御し、絶対値化処理11をなく
そうとするものである。
発明が解決しようとする問題点 しかしながら上記の従来例では、仮数部比較のための
比較器を必要とする。比較器は基本的には減算器で構成
されるので、仮数部のビット長に比例してその回路規模
は非常に大きくなる。さらに上記の従来例では第2図の
演算処理10から正規化処理12までを考慮した発明となっ
ているが、浮動小数点演算では、さらに丸め処理13を行
なう場合が多く、丸め処理も考慮した上で演算回路の簡
単化を図る必要がある。本発明はかかる点に鑑み、少な
い回路規模で、絶対値化、丸め処理を行なう浮動小数点
演算装置を提供することを目的とする。
問題点を解決するための手段 本発明は、各々が指数部、絶対値表現の仮数部、仮数
部の符号を示す符号部から構成される2つの浮動小数点
データに対し、その指数部を減算し両指数の指数差、大
小判定結果、及び大小判定結果に基づき大なる指数、を
出力する第1の手段と、前記第1の手段の大小判定結果
及び指数差に基づき、小なる指数部を持つ浮動小数点デ
ータの仮数部を選択しこれを指数差分だけ第1のシフタ
を用いて右シフトを行なう第2の手段と、前記第1の手
段の大小判定結果に基づき、大なる指数部を持つ浮動小
数点データの仮数部を選択する第3の手段と、前記第
2、第3の手段の出力間で加減算を行なう加減算器と、
前記第1の手段の大小判定結果、2つの浮動小数点デー
タの符号部、及び外部より供給される演算モード指定信
号に基づき、前記第1の手段の大小判定結果が両指数の
不一致を示した時に前記加減算器の出力が常に正となる
ように前記加減算器を制御する第4の手段と、前記加減
算器の出力を第2のシフタを用いて正規化するとともに
前記第1の手段の出力である大なる指数を前記第2のシ
フタのシフト分だけ補正を行なう第5の手段と、前記第
1の手段での大小判定が両指数の不一致を示した時、及
び両指数の一致を示しかつ前記加減算器で加算を行なっ
た時にのみ前記第5の手段の出力の仮数に対し、前記第
1の加算器を用いた仮数の丸め処理、及び丸め後の正規
化処理と丸め処理によるオーバーフローが生じたときに
指数の補正を行なう第6の手段と、前記第1の手段での
大小判定結果が両指数の一致を示しかつ前記加減算器で
減算を行なった時にのみ前記第5の手段の出力の仮数に
対し、第2の加算器を用いた絶対値化処理を行なう第7
の手段と、前記第1の手段の大小判定結果、2つの浮動
小数点データの符号部、外部より供給される演算モード
指定信号、及び前記加減算器の符号ビットに基づき最終
演算結果の符号を決める第8の手段とをもつ浮動小数点
演算装置である。
作用 本発明は前記した構成により、第1の手段で演算対象
の2つの浮動小数点データの指数比較を行ない、両指数
が一致しない場合、もしくは両指数が一致しかつ前記加
減算器での演算が加算できる場合は、加減算器出力が常
に正になるよう第1手段により第2,第3の手段を、第4
の手段により加減算器を制御する。加減算結果は第5の
手段により正規化及び第6の手段での丸め処理を行う。
両指数が一致しかつ前記加減算器での演算が減算になる
場合は、第7の手段で、第5の手段で正規化された仮数
の絶対値化を行なう。演算結果の符号は第8の手段で決
定する。また、第6、第7の手段が排他的に行なわれる
ことを利用し、これらを両演算を共通の加算器で行なう
こと、さらに加減算器での演算も含め加算器の共用化、
及び第2、第5の手段でのシフタの共用化も可能とする
ものである。
実施例 第1図は、本発明の一実施例における浮動小数点演算
装置のブロック図を示すものである。第1図において、
40、41は、符号s1、s2、指数e1、e2、仮数f1、f2から構
成される2つの浮動小数点データを保持する入力レジス
タ、42は、入力レジスタ40内の指数e1から、入力レジス
タ40内の指数e2を減算し、指数差ed(ed=|e1−e2|)、
ボロー信号eb(eb=0でe1≧e2、eb=1でe1<e2を示
す)、一致信号ez(ez=0でe1≠e2、ez=1でe1=e2
示す)を出力する減算器である。43は、減算器42の出力
ebにより、eb=0のときはe1を、eb=1のときはe2を選
択するマルチプレクサ、44は、減算器42の出力ebによ
り、eb=0のときはf2を、eb=1のときはf1を選択する
マルチプレクサである。45は、マルチプレクサ44の出力
を、減算器42の出力である指数差ed分だけ右シフトを行
なうシフタである。46は、減算器42の出力ebにより、eb
=0のときはf1を、eb=1のときはシフタ45の出力を選
択するマルチプレクサ、47は、減算器42の出力ebによ
り、eb=0のときはシフタ45の出力を、eb=1のときは
f2を選択するマルチプレクサである。48、49は、それぞ
れマルチプレクサ46、47の出力の1の補数をとるコンプ
リメンタ、50は、コンプリメンタ48、49の出力の加算を
行なう加算器である。51は、加算器50の出力を正規化す
るのに必要なビット数をカウントするカウント回路であ
り、第9図に示すように左シフト数は正数として、右シ
フト数は2の補数表現の負数として出力する。52はカウ
ンタ回路51の出力に従い加算器50の出力を左右にシフト
し、仮数の正規化を行なうシフタ、53は、カウント回路
51でカウントされた0あるいは1の個数分だけ、マルチ
プレクサ43の出力を減算する減算器である。54は、シフ
タ52出力の最下位ビットであるスティッキビット、最下
位ビットから1つ上位のラウンドビット、さらに1つ上
位のガードビット、さらに一つ上位のビットである仮数
部の最下位ビット、及び後述の絶対値化制御回路61の出
力の一つである最終演算結果の符号s、及び外部から与
えられる丸めモード指定信号を入力とし、丸め処理に必
要な固定値データを生成する丸め制御回路である。55
は、シフタ52の出力の1補数をとるコンプリメンタ、56
は、丸め制御回路54の出力、あるいは最下位ビットだけ
が1である固定値データのいずれかを選択するマルチプ
レクサ、57は、コンプリメンタ55の出力、マルチプレク
サ56の出力の加算を行なう加算器である。58は、加算器
57の出力のオーバフローを調べるオーバフロー検出器、
59は、オーバフロー検出器58でオーバフローが検出され
たとき、加算器57の出力を右に1ビットシフトし、最終
演算結果の仮数fを出力する右1ビットシフタ、60は、
同じくオーバフロー検出器58の出力を受け、減算器53の
出力を1だけ加算し、最終演算結果の指数eを出力する
イクリメンタである。61は、演算モード指定信号、符号
s1、s2、減算器42の出力eb、ez、加算器50の出力の符号
ビットstから、コンプリメンタ48、49、55及びマルチプ
レクサ56への制御信号CPL1、CPL2、CPL3を生成すると共
に、最終演算結果の符号sを決定する絶対値化制御回路
である。
浮動小数点フォーマット、並びに丸め方法について
は、IEEE P754で規定されているものを採用する。第4
図にIEEE P754規定の浮動小数点フォーマットを示す。
s70は符号ビット、e71はバイアス表示の指数部、f72は
仮数部であり、正規化された数の場合、全体として(−
1)・2e-bias・(1.f)を表わす。仮数部f72の最上
位ビットの左側のビットは1であるとしている(Hidden
Bit)。そこで、入力レジスタ40、41内の仮数部f1、f2
は最上位ビットの左側に1を付加してマルチプレクサ4
4、46、47に入力される。
また,シフタ45で右シフトを行なったときには、第5
図に示すように、桁落ちして行く2ビットは、ガードビ
ット80(以下、Gビットと略す)、ラウンドビット81
(以下、Rビットと略す)として保存し、Rビット81よ
りさらに右にシフトされて行くビットは、これの論理和
をとった形でスティッキビット82(以下、Sビットと略
す)として保存しておく。そこで、加算器50にもGビッ
ト、Rビット、Sビットの3ビットが入力され、従って
加算器50の出力の下位ビットにも3ビットが付加され
る。この下位3ビットは先程と同様に、Gビット、Rビ
ット、Sビットと呼び、Gビット,Rビットは、シフタ52
での左シフトを行なう場合には仮数部の最下位からシフ
トインされ、仮数部の精度向上に使用される。IEEE P7
54では、丸めモードとして、RN(Round To Nearest)モ
ード、RP(Round To Plus)モード、RM(Round To Minu
s)モード、RZ(Round To Zero)モードの4モードを規
定している。第1図では丸めは加算器57で行なっている
が、加算器57で仮数部の最下位ビットに加算される値
は、丸めモード指定信号、左方向シフタ52出力の最下位
ビットであるSビット,1つ上位のビットであるRビッ
ト、一つ上位のビットであるGビット、さらに一つ上位
の仮数部としての最下位ビット(LSB)、及び絶対値化
制御回路61の一つの出力である最終演算結果の符号ビッ
トsより、第7図に示すように決定される。これは丸め
制御回路54で実現する。
また、第1図のブッロク図は、第2図の従来の浮動小
数点演算処理の手順が、第6図のものに変換出来るこに
基づいているので、先ず変換可能であることを証明す
る。第2図の処理手順は、指数e1、e2の関係により2つ
の場合に分けることができる。
1−1)e1=e2で加算を行なう場合 e1=e2であるので仮数f1、f2でどちらも桁合わせのた
めに右シフトする必要はない。しかし演算処理10で加算
を行なうと、仮数部がオーバーフローする場合があるの
で正規化処理12(右1ビットシフト)、及びこれに続く
丸め処理13、右1ビットシフト14が必要になる。すなわ
ち全体の処理手順はパス17のようになる。
1−2)e1=e2で減算を行なう場合 e1=e2であるので仮数f1、f2のどちらも桁合わせのた
めに右シフトする必要はない。従って減算結果のGビッ
ト、Rビット、Sビットは0であり、丸め処理13、右1
ビットシフト14は必要としない。しかしf1、f2の大小関
係により減算結果が負になる場合があり、絶対値化処理
11が必要となる。すなわち全体の処理手順はパス15のよ
うになる。
2)e1≠e2の場合 この場合は、桁合わせのためe1、e2の大小関係により
仮数f1、f2を右にシフトする必要がある。しかしシフト
された仮数はシフトされないもう一方の仮数よりも必ず
小となるので、e1、e2大小関係により、仮数の減算結果
が必ず正となるように減算を制御することが可能であ
る。よって絶対値化処理11は不要となる。しかし、シフ
トを行なっているため、加減算結果のGビット、Rビッ
ト、Sビットのどれかは、1となり丸め処理13は必要で
ある。そこで処理は第2図のパス16のようになる。
このように絶対値化処理11と、丸め処理13はe1、e2
関係により排他的に実行出来る。
次に、パス15、16、17で共通の処理である正規化処理
12と、パス15でのみ行なう絶対値化処理11の処理順序の
交換が可能である事を示す。
演算処理10を終えた数の仮数部のビット列は、e1=e2
の場合、次のように表わすことができる。
(s、a0、a1、・ai、・、an-1、an、0、0、0)……
(1) ここでsは符号ビット、aiは2-iの重みをもつビッ
ト、下位の0である3ビットはGビット、Rビット、S
ビットである。このビット列が表わす数fは、 である。
(1)のビットパターンが (s、a0、a1、・、am、am+1) =(1、1、1、・、1、0) ・・・(3) [ここでm≦nであり、またs=1の時はaも必ず1と
なる] の場合,これは負数 を表現している。この場合の絶対値化処理と正規化処理
を次の二つの異なる順序で行なう。
1)正規化処理→絶対値化処理を行なう方法(3)のビ
ットパターンでamがa0の位置に来るようにmビット左シ
フトを行なった時のビットパターンは、 を表現している。さらにビットパターンの2の補数をと
ると、 となる。
2)絶対値化処理→正規化処理を行なう方法(3)のビ
ットパターンが表現する数(4)式の絶対値化処理を行
なうと、 となる。さらに、先程と同様にmビット左シフトを行な
った時のビットパターンは、 となる。
上の二つの方法で処理した結果である、(6)式の右
辺と、(8)式の右辺を見ると (6)式=(8)式 ・・・(9) が成立することがわかる。すなわち、正規化処理12と絶
対値化処理11の処理順序の交換が可能であることを示し
ている。従って、第2図の正規化処理12と絶対値化処理
11の処理順序を交換し、パス15、16、17で整理すると、
処理手順は第6図のようになる。こうすることにより、
対値化処理11と丸め処理13は排他的に実行できるが、両
演算は、共に加算器を使用する演算である。よってこれ
に必要な加算器を共通化することができる。これを実現
したのが、第1図に示したものであり、第6図との対応
を第6図中の番号10、11、12、13、14を第1図右端の矢
印に記することにより、示している。
次に、第1図に示した本実施例の浮動小数点演算回路
について、以下その動作を説明する。
入力レジスタ40、41に保持されている2つの浮動小数
点データN1、N2の仮数部が加減算器42で減算され指数差
ed、ボロー信号eb、一致信号ezを発生する。ebによりマ
ルチプレクサ43、46、47の動作が異なる。
eb=0のとき e1≧e2を示しているので、マルチプレクサ43はe1を、
マルチプレクサ44は仮数f2を、マルチプレクサ46は仮数
f1を、マルチプレクサ47はシフタ45出力を選択し、シフ
タ45では仮数f2を指数差edビットだけ右シフトを行な
う。
eb=1のとき e1<e2を示しているので、マルチプレクサ43はe2を、
マルチプレクサ44は仮数f1を、マルチプレクサ47は仮数
f2を、マルチプレクサ46はシフタ45出力を選択し、シフ
タ45では仮数f1を指数差edビットだけ右シフトを行な
う。
また、シフタ45でのシフトは、先に述べたように第5
図に示すように行なわれ、Gビット、Rビット、Sビッ
トが生成される。
マルチプレクサ46、47の出力は、コンプリメンタ48、
49を経由して加算器50に送られる。コンプリメンタ48、
49は、絶対値化制御回路61の出力であるCPL1、CPL2によ
り、指数がe1≠e2である場合には加算器50の出力が必ず
正になるように制御される。
絶対値化制御回路61は、第8図を満たすように作られ
た組み合わせ回路である。CPL1、CPL2、及び後述の制御
信号CPL3は減算器42の出力ez、eb、入力レジスタ40、41
内の浮動小数点データN1、N2の符号ビットs1、s2、加算
器50の出力の符号ビットst、及び演算モード指定信号に
より決定される。
加算器50の出力は、カウント回路51に入力され正規化
に必要なシフト数がカウントされる。カウント結果によ
り、加算器50の出力はシフタ52でシフトされ、またマル
チプレクサ43の出力である指数は減算器53で補正され
る。また左シフトの際、Rビットの右側からは0がシフ
トインされる。
左方向レジスタ52の出力は、減算器42での指数比較結
果により異なる処理を受ける。
ez=1でかつコンプリメンタ48、49、加算器50により
実質上、減算を行なった場合、シフタ45で右シフタは行
なわれていないので、加算器50の出力のGビット、Rビ
ット、Sビットは全て0となる。すなわち加算器50の出
力は正確であるので丸め処理を行なう必要はない。しか
し、加算器50の出力が正であるとは限らない。そこで加
算器50の出力の符号ビットstが1の時は、第8図に示す
ように制御信号CPL3=1としコンプリメンタ55で加算器
50の出力の補数をとり、マルチプレクサ56では固定値0
・・・1)を選択しこの両者を加算器57で加算すること
で加算器50の出力の絶対値をうる。また加算器50の出力
の符号ビットstが0の場合は制御信号CPL3=0とし、コ
ンプリメンタ55では加算器50の出力をそのまま通過さ
せ、マルチプレクサ56では丸め制御回路54の出力を選択
しこの両者を加算器57で加算する。この場合Gビット、
Rビット、Sビットは全て0であるので第7図に示すよ
うに丸め制御回路54からは0が出力され、加算器50の出
力が変化することはない。
またez=1でかつコンプリメンタ48、49、加算器50に
より実質上、加算を行なった場合シフタ52で右シフトを
行なうので、シフタ52出力のGビットが1となる場合が
発生する。この場合、制御信号CPL3=0としコンプリメ
ンタ55では加算器50の出力をそのまま通過させ、マルチ
プレクサ56では丸め制御回路54の出力を選択し、この両
者を加算器57で加算し丸め処理を行なう。
さらにez=0のときは、加算器50の出力は常に正であ
るがシフタ45で右シフトを行なうので、Gビット、Rビ
ット、Sビットは0でない値をもつ。そこでこの場合、
制御信号CPL3=0としコンプリメンタ55では加算器50の
出力をそのまま通過させ、マルチプレクサ56では丸め制
御回路54の出力を選択し、この両者を加算器57で加算し
丸め処理を行なう。
加算器57で丸めを行なった時、オーバフローする場合
があるので、これをオーバフロー検出器58で検出し、オ
ーバフローが検出された時には、右1ビットシフタ59で
右1ビットシフト並びにインクリメンタ60で指数の補正
が行なわれる。
演算最終結果としての符号ビットsは、絶対値化制御
回路61で第8図に従って決定される。
以上のように本実施例によれば、絶対値化制御回路61
を設け指数e1、e2の大小関係を利用することにより絶対
値化処理と丸め処理を排他的に実行することができる。
このため、両処理で必要な加算を1個の加算器57で処理
することができ、また両処理を排他的に実行すればよい
ので、必要処理段数が削減され、演算の高速化を図るこ
とができる。また、絶対値化制御回路61の実現に必要な
基本的なハードウェアは、処理ビット長とは関係しない
単純な組み合わせ回路である。
なお、第6図が示すように、処理は のパスを経由するので、第1図の実施例の加算器50、57
を共用化、シフタ45、シフタ52の共用化を図った回路構
成も可能である。
発明の効果 以上説明したように、第2図の従来の浮動小数点演算
手順を、絶対値化と正規化の処理順序の交換、指数比較
結果による絶対値化処理と丸め処理の分離を行なうこと
により、演算処理での仮数部加算、絶対値化処理、丸め
処理で使用する加算器の共用化、演算処理での仮数シフ
ト、正規化処理での仮数部シフトで使用するシフタの共
用化を図ることができ、回路規模の縮小、並びに高速演
算の実現を図ることができ、その実用的効果は大きい。
【図面の簡単な説明】
第1図は本発明の一実施例のブロック図、第2図は従来
の浮動小数点演算処理手順図、第3図は従来の浮動小数
点演算処理回路の一例を示すブロック図、第4図は浮動
小数点数のフォーマットを示す説明図、第5図はガー
ド、ラウンド、スティッキビットを示す説明図、第6図
は本発明での浮動小数点演算処理手順図、第7図は丸め
制御回路54の入出力関係図、第8図は絶対値化制御回路
61の入出力関係図,第9図はカウント回路51の入出力関
係図である。 42……減算器、45……シフタ、48,49,55……コンプリメ
ンタ、50,57……加算器、52……シフタ、54……丸み制
御回路、61……絶対値化制御回路。

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】各々が指数部、絶対値表現の仮数部、仮数
    部の符号を示す符号部から構成される2つの浮動小数点
    データに対し、その指数部を減算し両指数の指数差、大
    小判定結果、及び大小判定結果に基づき大なる指数、を
    出力する第1の手段と、前記第1の手段の大小判定結果
    及び指数差に基づき、小なる指数部を持つ浮動小数点デ
    ータの仮数部を選択しこれを指数差分だけ第1のシフタ
    を用いて右シフトを行なう第2の手段と、前記第1の手
    段の大小判定結果に基づき、大なる指数部を持つ浮動小
    数点データの仮数部を選択する第3の手段と、前記第
    2、第3の手段の出力間で加減算を行なう加減算器と、
    前記第1の手段の大小判定結果、2つの浮動小数点デー
    タの符号部、及び外部より供給される演算モード指定信
    号に基づき、前記第1の手段の大小判定結果が両指数の
    不一致を示した時には前記加減算器の出力が常に正とな
    るように前記加減算器を制御する第4の手段と、前記加
    減算器の出力を第2のシフタを用いて正規化すると共に
    前記第1の手段の出力である大なる指数を前記第2のシ
    フタのシフト分だけ補正を行なう第5の手段と、前記第
    1の手段での大小判定が両指数の不一致を示した時、及
    び両指数の一致を示しかつ前記加減算器で加算を行なっ
    た時にのみ前記第5の手段の出力の仮数に対し、第1の
    加算器を用いた仮数の丸め処理、及び丸め後の正規化処
    理と丸め処理によるオーバーフローが生じたときに指数
    の補正を行なう第6の手段と、前記第1の手段での大小
    判定結果が両指数の一致を示しかつ前記加減算器で減算
    を行なった時にのみ前記第5の手段の出力の仮数に対
    し、第2の加算器を用いた絶対値化処理を行なう第7の
    手段と、前記第1の手段の大小判定結果、2つの浮動小
    数点データの符号部、外部より供給される演算モード指
    定信号、及び前記加減算器の符号ビットに基づき最終演
    算結果の符号を決める第8の手段とをもつことを特徴と
    する浮動小数点演算装置。
  2. 【請求項2】第6の手段を構成する第1の加算器と、第
    7の手段を構成する第2の加算器の共用を行なった特許
    請求の範囲第1項記載の浮動小数点演算装置。
  3. 【請求項3】第2の手段を構成する第1のシフタと、第
    5の手段を構成する第2のシフタの共用、第6の手段を
    構成する第1の加算器と、第7の手段を構成する第2の
    加算器の共用を行なった特許請求の範囲第1項記載の浮
    動小数点演算装置。
JP61311024A 1986-12-29 1986-12-29 浮動小数点演算装置 Expired - Fee Related JP2558669B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP61311024A JP2558669B2 (ja) 1986-12-29 1986-12-29 浮動小数点演算装置
US07/137,924 US4896286A (en) 1986-12-29 1987-12-28 Floating-point arithmetic apparatus
DE87311476T DE3786072T2 (de) 1986-12-29 1987-12-29 Fliesskomma-arithmetisches Gerät.
EP87311476A EP0273753B1 (en) 1986-12-29 1987-12-29 Floating-point arithmetic apparatus
KR1019870015246A KR910006143B1 (ko) 1986-12-29 1987-12-29 부동소수점 연산장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61311024A JP2558669B2 (ja) 1986-12-29 1986-12-29 浮動小数点演算装置

Publications (2)

Publication Number Publication Date
JPS63167930A JPS63167930A (ja) 1988-07-12
JP2558669B2 true JP2558669B2 (ja) 1996-11-27

Family

ID=18012196

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61311024A Expired - Fee Related JP2558669B2 (ja) 1986-12-29 1986-12-29 浮動小数点演算装置

Country Status (5)

Country Link
US (1) US4896286A (ja)
EP (1) EP0273753B1 (ja)
JP (1) JP2558669B2 (ja)
KR (1) KR910006143B1 (ja)
DE (1) DE3786072T2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01302425A (ja) * 1988-05-31 1989-12-06 Toshiba Corp 浮動小数点加減算回路
US4994996A (en) * 1989-02-03 1991-02-19 Digital Equipment Corporation Pipelined floating point adder for digital computer
US4926370A (en) * 1989-04-17 1990-05-15 International Business Machines Corporation Method and apparatus for processing postnormalization and rounding in parallel
US5111421A (en) * 1990-02-26 1992-05-05 General Electric Company System for performing addition and subtraction of signed magnitude floating point binary numbers
US5267186A (en) * 1990-04-02 1993-11-30 Advanced Micro Devices, Inc. Normalizing pipelined floating point processing unit
KR0139733B1 (ko) * 1994-04-29 1998-07-01 구자홍 부동 소수점 덧셈/뺄셈 연산기의 반올림 방법 및 장치
US8904115B2 (en) * 2010-09-28 2014-12-02 Texas Instruments Incorporated Cache with multiple access pipelines

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4488252A (en) * 1982-02-22 1984-12-11 Raytheon Company Floating point addition architecture
JPS5960637A (ja) * 1982-09-30 1984-04-06 Toshiba Corp 浮動小数点演算装置
JPS59188740A (ja) * 1983-04-11 1984-10-26 Hitachi Ltd フロ−テイング加算器
US4562553A (en) * 1984-03-19 1985-12-31 Analogic Corporation Floating point arithmetic system and method with rounding anticipation
US4698771A (en) * 1984-12-31 1987-10-06 Gte Communication Systems Corporation Adder circuit for encoded PCM samples

Also Published As

Publication number Publication date
KR910006143B1 (ko) 1991-08-16
KR880008143A (ko) 1988-08-30
EP0273753B1 (en) 1993-06-02
DE3786072D1 (de) 1993-07-08
DE3786072T2 (de) 1993-10-28
EP0273753A3 (en) 1990-12-27
EP0273753A2 (en) 1988-07-06
US4896286A (en) 1990-01-23
JPS63167930A (ja) 1988-07-12

Similar Documents

Publication Publication Date Title
JP5996946B2 (ja) 浮動小数点加算器
EP0483864B1 (en) Hardware arrangement for floating-point addition and subtraction
JP2523962B2 (ja) 浮動小数点演算装置
JP4500358B2 (ja) 演算処理装置および演算処理方法
JP3178746B2 (ja) 浮動小数点数のためのフォーマット変換装置
JP4388543B2 (ja) 3項入力の浮動小数点加減算器
JP3845009B2 (ja) 積和演算装置、及び積和演算方法
US10585972B2 (en) Apparatus for performing modal interval calculations based on decoration configuration
JP2558669B2 (ja) 浮動小数点演算装置
JPH0520028A (ja) 加減算のための浮動小数点演算装置の仮数部処理回路
KR102459011B1 (ko) 선두 제로 예측
EP1282034A2 (en) Elimination of rounding step in the short path of a floating point adder
JP2507183B2 (ja) 浮動小数点加減算装置
JP3257278B2 (ja) 冗長なシフト数予測とシフト誤り補正を用いた正規化装置
JP3512700B2 (ja) 浮動小数点演算装置
JP3124286B2 (ja) 浮動小数点数演算装置
JP2512230B2 (ja) 演算処理装置
JPH05100823A (ja) 浮動小数点演算方式とその装置
JPH0498524A (ja) 浮動小数点演算装置
JPH0361224B2 (ja)
JP3100868B2 (ja) 浮動小数点数のための算術演算装置
JPH0552532B2 (ja)
JPH05167456A (ja) 演算回路
JPH0540609A (ja) 浮動小数点除算装置
JPH0644048A (ja) 浮動小数点演算装置および方法

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees