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

浮動小数点演算装置

Info

Publication number
JPS6133539A
JPS6133539A JP15457484A JP15457484A JPS6133539A JP S6133539 A JPS6133539 A JP S6133539A JP 15457484 A JP15457484 A JP 15457484A JP 15457484 A JP15457484 A JP 15457484A JP S6133539 A JPS6133539 A JP S6133539A
Authority
JP
Japan
Prior art keywords
data
bit
digit
rounded
bits
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.)
Pending
Application number
JP15457484A
Other languages
English (en)
Inventor
Takahiko Sakai
酒井 高彦
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 JP15457484A priority Critical patent/JPS6133539A/ja
Publication of JPS6133539A publication Critical patent/JPS6133539A/ja
Pending 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
    • 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/49942Significance control
    • G06F7/49947Rounding

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)

Abstract

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

Description

【発明の詳細な説明】 〔発明の技術分野〕 本発明は浮動小数点演算装置に関するもので、加減算を
行う計算機に使用されるものである。
〔発明の技術的背景〕
加減算を行う計算機においては浮動小数点演算が行われ
ることが多く、多数は仮数部と指数部により表現される
。この仮数部は一定の有効桁数を有しているが、仮数部
として有効桁数のみを有したのでは精度上不十分である
。すなわち、演算の結果、桁上げあるいは借りが生じる
ため計算精度を維持するためには有効桁数より下にさら
にいくつかの桁数を演算器として有していなければなら
ない。このような有効数字よりも下位の演算器をガード
と称する。
浮動小数点演算にあっては、加算時の桁上げおよび減算
時の借りのため演算後の仮数部の桁数が有効桁以上とな
ることがあるが、上位より有効桁数分のみを取出し演算
結果とすることが行われる、この際、切捨てられる部分
の最上位ビットを、取出された有効桁の最下位桁ビット
に加算する処理を行うことにより演算精度を向上できる
。すなわち、切捨てられる部分の最上位ビットが1″で
あれば取出された有効桁の最下位ビットに加え、110
 I+であればそのままとする。このような処理は丸め
処理と称される。
一方、浮動小数点演算においては、仮数の桁数は一定で
なければならないが、演算結果自体は有効桁数より多く
なったり少なくなったりする。浮動小数点演算において
は有効桁内の上位に無意味な数が来ることを避けなけれ
ばならないから仮数の演算結果の最上位ビットが0″に
ならないように有効数字桁分を演算結果から取出す処理
が必要となり、これを正規化と称する。
浮動小数点演算結果においては最上位桁にO″が来る場
合があるから丸め処理を先に行うことはできず、まず正
規化を行い、切落される桁を判別してから丸めを行うよ
うにしている。
〔背景技術の問題点〕
しかしながら、正規化を行った後に丸め処理を行った場
合に桁上げが生じ再度正規化が必要となる場合がある。
例えば、16進8桁の有効数字である場合において演算
結果がFFFFFFFF IF・・・・・・であった場
合丸め処理を行うと100000000となるから再度
正規化を行ってi oooooooとする必要が生じる
。このように正規化が2回くり返される結果、演算速度
の低下を招くという問題がある。
〔発明の目的〕
本発明は上記事情に鑑みてなされたもので、正規化を1
回だけ行うことにより精度の良い演算結果を得ることの
できる浮動小数点演算装置を提供することを目的とする
〔発明の概要〕
上記目的達成のため、本発明において・は、2つのデー
タの加減算を行う演算器と、この演算器における演算結
果を保持する記憶回路と、前記演算器から出力された桁
上げデータおよび演算結果のうちの上位桁における正規
化の必要性を示すデータを保持する選択データ記憶回路
と、この選択データ記憶回路の出力にもとづいて、前記
記憶回路により保持された演算結果データのうち、丸め
の対象となる桁の次の桁の先頭ビット内容を含む複数の
丸めデータを選択出力する選択回路と、この選択回路の
出力と前記演算結果とを加算する加算器とを備えており
、最終演算結果を得るためのシフトの前に丸めを行うた
め正規化がいかなる場合でも1度で済み演算速度の向上
を図ることができるものである。
〔発明の実施例〕
以下、図面を参照しながら本発明の一実施例について詳
細に説明する。
図は本発明にかかる浮動小数点演算装置の構成を示す回
路図であって、1桁4ビツトの16進数で8桁(32ビ
ツト)の演算幅を有し、そのうち6桁(24ビツト)が
有効桁であるとする。
ALLIIにはそれぞれ32ビツト幅の線路11および
12を介して2つの仮数データが入力されて加算される
。この仮数データは入力前に大きい指数を持つ一方のデ
ータに合わせて他方のデータの桁合せが行われており、
符号の処理は別に行うものとする。ALLIIによる加
算結果AOO−31は32ビツト幅の線路13を通じて
出力されて、32ビツトのレジスタ8に格納され、その
うちのAoo−03およびAO4−07についてはそれ
ぞれ否定論理和(NOR)回路4および5により論理演
梼が行われ、それぞれ1ビツトの線路を介して3ビツト
のレジスタ6の2ビツト目および3ビツト目にデータZ
OおよびデータZ1として格納される。このデータzO
およびデータZ1はそれぞれ加算結果中の1桁目と2桁
目がオール11011であるか否かを示しており、丸め
データの選択データとなるものである。また、加算結果
中の6.7.8桁の先頭ビット内容であるA20(21
ビツト目)、A24(25ビツト目)、A28(29ビ
ツト目)はれそれぞれ1ビツトの線路により引出されて
3ビツトのレジスタ7中の1.2゜3ビツトにデータR
19,R23,R27として格納される。さらにALU
における加算時に桁上げが生ずる場合があるが、この桁
上げデータは1ビツトの線路14を介してレジスタ6の
1ビツト目にデータCどしで格納されている。
選択データを格納するレジスタ6の内容は3ビツトの線
路3を介してデコーダ2に入力されており、またこのデ
コーダ2には加算か減算かを区別するデータが1ビツト
の線路16を介して入力されており、選択回路3の内容
を選択するためのデータが出力される。選択回路3にお
いてはレジスタ7から3ビツトの線路17を介して引出
された内容からR19データを20ビツト目に有し他の
ビットはすべて′0″であるデータ、R23データを2
4ビツト目に有し他のビットはすべて“0″であるデー
タ、R27データを28ビツト目に有し他はすべて“0
″であるデータ、すべてのビットが“0パであるデータ
の4種類のデータが作成される。これらのデータはデコ
ーダ2の出力により選択され、32ビツトのデータBo
o−31としてレジスタ9に格納された後32ビツトの
線路18に出力され、加算結果AOO−31と別のAL
LI (図示せず)により加算Δれ、丸め処理が施され
た加算結果が得られることになる。
次にこの浮動小数点演算装置の動作を場合に分けて説明
する。
(1) 加算の場合 加算においては桁上げが生ずることはあるが最上位桁が
0″となることはあり得ない。すなわち、加算が行われ
るデータのうち少なくとも一方のデータは最上位桁に有
効数字を有しており、加算の結果桁上げが行われれば最
上位桁は1″になるからである。したがって桁上げがな
い場合には6桁目の最下位ビットである24ビツト目が
丸めの対象となり、桁上げが生じる場合には5桁目の最
下位ピッ1−である20ビツト目が丸めの対象となる。
このため、デコーダ2において線路16に加算を指示づ
るデータが入力された場合、レジスタ6中のデータCが
“0″であるときはR23を含む丸めデータを選択する
指示が出力され、選択回路3からR23を含む丸めデー
タが出力され、データCが1”であるときはR19を含
む丸めデータを選択する指示が出力され、選択回路3か
らR19を含む丸めデータが出力されることになる。
例えばデータ1が87654321、データ2がFED
CBA98であった場合加算結果AOO−31は864
1 FDB9となり桁上げが生ずるからC=1であり、
R19=1、R23=1、R27=1である。したがっ
て丸めデータとしてはR19を含むデータooooio
ooが選択され次のように丸め処理が行なわれる。
186420DB9 この丸め処理結果にもとづいて正規化を行うと1864
201DBの加算結果が得られる。
(2) 減算の場合 減算においては桁上げが生じることはあり得ないが、減
算結果データの上位桁が0:′なることがあり得る。
減算結果の最上位桁がtr Otrでない場合には6桁
目の最下位ピットである24ビツト目が丸めの対象とな
り、最上位桁で0゛′で次の桁が0″でない場合には7
桁目の最下位ピットである28ビツト目が丸めの対象と
なり最上位桁も次の桁も“OIIの場合には32ビツト
目が丸めの対象となり得るが、この実施例においては3
3ビツト以下の演算は行われていないので丸めデータは
必要がない。
したがって、例えばデータ1が89ABCDEF1デー
タ2が87654321であり、データ1からデータ2
が減算される演算が行なわれるものとすればALtJl
による減算結果AOO−31は02468ACEとなり
、R19=1、R23=1、R27=1である。最上位
桁が0″であるためAOO−03の否定論理和は′O″
となりZO−1となる。またAO4−07の否定論理和
はO″となりZ1=0となる。この結果減算を指示する
データが線路16がら、C−0120=L Zl =O
が線路15から入力されたデコーダ2からはR27を含
む丸めデータooo。
0010を選択する指示が選択回路3に対して出力され
、レジスタ9にその丸めデータが格納される。この丸め
データをレジスタ8に格納されている演算結果データと
を次のように加算すれば02468ACE 02468ADE が得られ、この丸め処理結果にもとづいて正規化を・行
うと2468ADEOの加算結果が得られる。
同様に20=0であるときにはR23を含む丸めデータ
が、20 =1、Zl =1であるときはオール゛0゛
″の丸めデータが選択される。
なお、指数についての処理は通常と全く同じであり、正
規化により有効数字の範囲が移動するときには同時に指
数も変更される。
以上の実施例においては有効桁数より下位の演算術を2
桁としたため丸めデータは4種類であったが、有効桁数
より下位の演算桁3以上の整数nとし、n+2種類の丸
めデータを実施例と同様の構成により選択するようにす
ることができる。
また、丸めデータを選択する選択データを作るために実
施例では上位桁の演算結果における各ビットを入力する
否定論理和を用いているが、デコーダの構成によっては
OR回路を用いることもできる。
〔発明の効果〕
以上のように本発明においては、演算結果から桁上げデ
ータおよび正規化の必要性を示すデータを取出しこれを
選択データとして丸めの対象となる桁の次の桁の先頭ビ
ット内容を含む丸めデータを選択出力し、これと演算結
果とを加算することにより丸め処理を行うようにしてい
るので最終演算結果を得るためのシフトの前に丸め処理
が行われ、正規化が2度行われることはな(演算速度の
向上を図ることができる。
【図面の簡単な説明】
図は本発明にかかる浮動小数点演算装置の主要部の構成
を示す回路図である。

Claims (1)

  1. 【特許請求の範囲】 1、2つのデータの加減算を行う演算器と、この演算器
    における演算結果を保持する記憶回路と、 前記演算器から出力された桁上げデータおよび演算結果
    のうちの上位桁における正規化の必要性を示すデータを
    保持する選択データ記憶回路と、この選択データ記憶回
    路の出力にもとづいて、前記記憶回路により保持された
    演算結果データのうち、丸めの対象となる桁の次の桁の
    先頭ビツト内容を含む複数の丸めデータを選択出力する
    選択回路と、 この選択回路の出力と前記演算結果とを加算する加算器
    と、 を備えた浮動小数点演算装置。 2、丸めデータが、丸めの対象となる桁の次の桁の先頭
    ビツト内容を丸めの対象となる桁の最下位ビツトに含み
    、他のビツトはすべて“0”である特許請求の範囲第1
    項記載の浮動小数点演算装置。 3、正規化の必要性を示すデータが上位桁の各ビツトを
    入力する論理和回路により得られるものである特許請求
    の範囲第2項記載の浮動小数点演算装置。
JP15457484A 1984-07-25 1984-07-25 浮動小数点演算装置 Pending JPS6133539A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15457484A JPS6133539A (ja) 1984-07-25 1984-07-25 浮動小数点演算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15457484A JPS6133539A (ja) 1984-07-25 1984-07-25 浮動小数点演算装置

Publications (1)

Publication Number Publication Date
JPS6133539A true JPS6133539A (ja) 1986-02-17

Family

ID=15587200

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15457484A Pending JPS6133539A (ja) 1984-07-25 1984-07-25 浮動小数点演算装置

Country Status (1)

Country Link
JP (1) JPS6133539A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62226226A (ja) * 1986-03-27 1987-10-05 Nec Corp 浮動小数点丸め正規化回路
JPH01171023A (ja) * 1987-12-26 1989-07-06 Fujitsu Ltd 2進浮動小数点乗算における丸め処理方式
JPH01240927A (ja) * 1988-03-23 1989-09-26 Matsushita Electric Ind Co Ltd 浮動小数点演算装置
JPH0357019A (ja) * 1989-07-26 1991-03-12 Toshiba Corp 浮動小数点データ加減算回路
US5469377A (en) * 1992-08-18 1995-11-21 Nec Corporation Floating point computing device for simplifying procedures accompanying addition or subtraction by detecting whether all of the bits of the digits of the mantissa are 0 or 1

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62226226A (ja) * 1986-03-27 1987-10-05 Nec Corp 浮動小数点丸め正規化回路
JPH01171023A (ja) * 1987-12-26 1989-07-06 Fujitsu Ltd 2進浮動小数点乗算における丸め処理方式
JPH01240927A (ja) * 1988-03-23 1989-09-26 Matsushita Electric Ind Co Ltd 浮動小数点演算装置
JPH0357019A (ja) * 1989-07-26 1991-03-12 Toshiba Corp 浮動小数点データ加減算回路
US5469377A (en) * 1992-08-18 1995-11-21 Nec Corporation Floating point computing device for simplifying procedures accompanying addition or subtraction by detecting whether all of the bits of the digits of the mantissa are 0 or 1

Similar Documents

Publication Publication Date Title
US4941120A (en) Floating point normalization and rounding prediction circuit
US4926370A (en) Method and apparatus for processing postnormalization and rounding in parallel
JPS62226226A (ja) 浮動小数点丸め正規化回路
EP0271255A2 (en) High-speed binary and decimal arithmetic logic unit
EP0529101B1 (en) Floating-point dividing circuit
US5247471A (en) Radix aligner for floating point addition and subtraction
JPH09212337A (ja) 浮動小数点演算処理装置
US20070038693A1 (en) Method and Processor for Performing a Floating-Point Instruction Within a Processor
US5337265A (en) Apparatus for executing add/sub operations between IEEE standard floating-point numbers
US4110831A (en) Method and means for tracking digit significance in arithmetic operations executed on decimal computers
JPS6125245A (ja) 丸め処理回路
US6061707A (en) Method and apparatus for generating an end-around carry in a floating-point pipeline within a computer system
JPS6133539A (ja) 浮動小数点演算装置
JP2695178B2 (ja) 演算回路
JPH0346024A (ja) 浮動小数点演算器
US6065034A (en) Circuit and method employing an adder for sign extending operands
JP3089427B2 (ja) データ処理装置
US8612500B2 (en) Method and decimal arithmetic logic unit structure to generate a magnitude result of a mathematic
US6044391A (en) Method of generating the sticky-bit from the input operands
US5944773A (en) Floating-point multiplier circuit for generating the sticky-bit from the input operands
US6654776B1 (en) Method and apparatus for computing parallel leading zero count with offset
JP3137131B2 (ja) 浮動小数点乗算器及び乗算方法
JPS63158626A (ja) 演算処理装置
US4282582A (en) Floating point processor architecture which performs subtraction with reduced number of guard bits
JP4428778B2 (ja) 演算装置及び演算方法並びに計算装置