JPS61201328A - 除算方式 - Google Patents

除算方式

Info

Publication number
JPS61201328A
JPS61201328A JP60041180A JP4118085A JPS61201328A JP S61201328 A JPS61201328 A JP S61201328A JP 60041180 A JP60041180 A JP 60041180A JP 4118085 A JP4118085 A JP 4118085A JP S61201328 A JPS61201328 A JP S61201328A
Authority
JP
Japan
Prior art keywords
dividend
divisor
updated
update
exponent part
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
JP60041180A
Other languages
English (en)
Inventor
Masao Iida
飯田 政雄
Giichi Mori
森 義一
Toshio Jiyufuku
寿福 利夫
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP60041180A priority Critical patent/JPS61201328A/ja
Publication of JPS61201328A publication Critical patent/JPS61201328A/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/52Multiplying; Dividing
    • G06F7/535Dividing only

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は除算方式に関し、更に詳細には、浮動小数点演
算形式の乗算回路及び算術演算回路を備えた除算装置に
おける収束型除算方式に関する。
(従来の技術) コンピュータによる除算方式として収束型除算方式があ
る。この方式は乗算的除算方式に分類され、乗算と論理
が共有できかつ高速化が可能であるので大形コンピュー
タにおいても採用されている。その原理は簡単に述べる
と、被除数と除数を小数の分子と分母とみなし、分数の
分母が1に近づくまで分子と分母に同じ収束係数を乗じ
ていき、最終的な分子を、求める商とするものである。
この方式は例えばカイ ワンプ(Kai Wang)著
、堀越彌他訳「コンピュータの高速演算方式」近代科学
社(昭和55年9月1日)P、251〜254に示され
ている。
上記文献に示されている従来の収束型除算方式について
第3図の演算ブロック図を用いて説明する。ここでは、
正規化されている正の数N0とDoとをそれぞれ被除数
及び除数として除数値Q×を求めるものとする。N、、
Doは例えば2進数表現では0.5≦No<1.0.5
≦D0〈1となる。
Q X y N a y D oの関係は式(1)で表
される。
Qx= N、/D、             −(1
)先ず、収束係数の初期値R0を次の式(2)より求め
る(ステップ0)。
R,=1−Do                 ・
・・(2)次に、初期値R0を用いて被除数Nllと除
数り。
の第1回目の更新を行なう(ステップ@、 @>。ここ
で被除数及び除数の更新の基本式をそれぞれ(3)式及
び(4)式に示す。なお、N、は第1回目の被除数、D
lは第1回目の更新の除数、R,は第1回目の更新の収
束係数、1=Oyl*・・・とする。
NI−RI十N1−4N+0、         ・・
・(3)DI−RI+DI−4DI41       
  ・・・(4)今i=0であるので、第1回目の更新
の被除数N1及び除数D1が(3)式及び(4)式に基
づいて求められる。すなわちN6・R,+ NoよりN
、が、Do・R,+D、よりD工がそれぞれ積和演算に
より求められる0次に、収束係数の第1回目の更新を行
なう(ステップ0)。ここで収束係数の更新の基本式を
(5)式に示す。
1− D +、、→R60、・・・(5)第1回目の更
新の被除数N工、除数り1.収束係数R1が求まると、
これらの値を用いて(3)、 (4)。
(5)の各式に基づき第2回目の更新の被除数N2゜除
数D2.収束係数R2を求める(ステップO→@−”@
→O→O)、そしてこのような被除数及び除数の更新演
算と収束係数の更新演算を、除数の更新値D19、を該
積和演算に用いる乗算装置の精度内でDll、→1とな
るまですなわち〔(1)式の分母更新値〕→1となるま
で続け(ステップ)O→◎→0→[相]のルーチン)、
DIe工→1となったときの〔(1)式の分子更新値〕
を商とすることにより除算を完了させていた(ステップ
O)。
(発明が解決しようとする問題点) しかしながら、以上述べた従来の収束型除算方式では、
除数の更新値D10、が定数1に等しいか否かの判定を
行なう場合に、演算装置の精度が有限であるため、Dl
、□=1+ΔQ(ΔQは判定誤差)に基づいて判定を行
なっていた。ところが判定誤差ΔQは入力データによっ
て異なり、更新演算回数iが一定しないという問題点が
あった。
また、最終的に求める商は、被除数の更新値に相当する
のに対して、更新演算が被除数、除数及び収束係数とい
う3種類もあり、演算ステップが増大し、演算時間が増
えるという欠点があった。
従って、本発明は以上述べた従来の収束型除算方式にお
ける演算回数が一定しないという問題点と、演算ステッ
プ数が多いという欠点を除去し、入力のデータ幅から定
まる最小限の演算ステップ数で除算を行なう収束型除算
方式を提供することを目的とする。
(問題点を解決するための手段) 本発明は、浮動小数点表示のデータの乗算を行なう乗算
回路と、浮動小数点表示のデータの加減算を行なう算術
演算回路とを備え、浮動小数点表示された除数(B6)
及び被除数(Ao)を用いて除算を行なう除算装置にお
ける除算方式に係るもので、前記従来技術の問題点を解
決するために、次の3つのステップを具備するように構
成した。
第1のステップでは、被除数(Ao)の指数部から除数
(B、)の指数部を減算して、被除数(八〇)の指数部
のみを更新した被除数(A、’)を求めるとともに、除
数(Bo)の指数部のみをリセット更新した除数(Be
’)を求める。
第2のステップでは、除数(Bo)または被除数(Ao
)の仮数部のデータ語長に基づいて、次の第3のステッ
プで実行される更新演算の回数(m)を求める。
第3のステップでは、指数部のみを更新した被除数(A
、’)に対してm回の更新演算が逐次流され。
最終的に得られた更新被除数(A、=A、、、−,・x
l−□十A、1)を商とする。第3のステップで行なわ
れるm回の更新演算のうち、第1回目の更新演算は、浮
動小数点表示の定数(例えば1)から指数部のみを更新
した除数(Be’)を減算したもの(i−Bo’)を収
束係数の初期値(xo)とし、指数部のみを更新した被
除数(A@’)と収束係数の初期値(Xo)との乗算に
よる積(A0′・Xo)と、指数部のみを更新した被除
数(Xo)とを加算した和(AI、’・x0+xo)を
第1回目の更新被除数(A4)とする。第2回目以降、
例えば第1番目の更新演算では、直前回の更新演算より
求めた更新被除数(AI−4)と直前回の収束係数(x
l−t)を自乗した収束係数(X +−4=(X+−)
”)との乗算による積(AI−t”X+−t)と、直前
回の更新演算より求めた更新被除数(A=、)とを加算
した和(AI−□・X+−8+A+−Z)を新たな更新
被除数(A1)として求める。
本発明の好ましい実施態様においては、被除数の指数部
のみを更新した被除数(A、’)を浮動小数点表示の定
数(例えば1)に置換えたものに対して前記第3のステ
ップの更新演算を施し、最終的に得た更新除数値と前記
被除数の指数部のみを更新した被除数(A、″)とを乗
算した積を商とする。
(作用) 本発明によれば、以上のように除算方式を構成したので
次のとおり作用する。
第1のステップの処理により除数の指数部がリセット更
新されるので以後の演算においては除数は仮数部のみに
着目すればよくなる。第2のステップでは指数部のみが
更新された被除数に対して逐次行なわれる更新演算の回
数が求められるわけであるが、この回数が除数または被
除数の仮数部のデータ語長より求めることができるので
、従来方式のように除数の更新演算を逐次行なってその
都度それが定数1に等しいかどうかの判定をすることが
不要になるとともに除数の更新値を求める手順自体が省
略できるようになる。第3のステップでは指数部のみが
更新された被除数に対して、第2のステップにより求め
た回数だけの更新演算を行なうだけで、求めるべき商が
得られることにより、演算ステップ数を低減できるとと
もに演算時間の短縮が可能となる。
(実施例) 以下本発明の実施例の除算方式を第1図及び第2図を参
照して説明する。第1図は基本的演算内容を示すブロッ
ク図であり、第2図は本実施例の演算で使用される浮動
小数点表示のデータ形式を示す図である。
ここでは、浮動小数点表示で正規化されているデータA
0とBoをそれぞれ被除数及び除数として除算値QFを
求めるものとする。但しB o > Oとする。 A@
 g B @ g QFの関係は式(6)で表される。
Q F=A 6 / B a            
 ・・・(6)本実施例の除算演算の原理は収束型アル
ゴリズムに基づくものであり、先ずその基本的演算内容
の概要について述べる1本実施例の除算演算では最初に
指数部の処理を行なう。すなわち、被除数へ〇の指数部
から除数80の指数部を減算して被除数へ〇の指数部の
みを更新した更新値へ〇′を求め、該減算後、除数80
の指数部のみをリセットした更新値80′を求める。そ
の後、更新された除数B0tの逆数の漸近値を乗算係数
として被除数A0′に逐次乗算し、被除数の更新演算を
所定回繰り返し最終の被除数の更新値を商とする。ここ
で実行される更新演算の回数は除数B 、 rに上記乗
算係数をその日数分逐次乗算すると乗算結果→1となる
ごときものである。
上記更新演算の必要最低限の回数の求め方を以下に述べ
る。式(6)を変形すると次のようになる。
・・・(7) なお、X=1−B、’とする。2進数演算形式の場合は
、 0.5≦I (A(1’の仮数部列<1.0.5≦B、
’<1.O<X≦0,5となる。一方、仮数部データ幅
は第2図に示すようにMbltという有限精度であるた
め、M”tの語長で式(7)の括弧の乗算を有限の回数
行なえば、Mb目で表現できる限界値になる。そこで1
式(7)の無限級数を逐次展開し、第m回までの乗算値
をQlとすると、第(7)式は次の有限級数で近似でき
る。
Qffi= Ao’ (1+ E X”)      
   ”・(8)但、t=2111−1 このため、式(7)の無限級数と式(8)の有限級数と
の差であるΔQ、11を、 ΔQ、= l QF  Q、l           
   ・・・(9)とすると1式(9)の最大値AQイ
(MAX)が何回までの乗算でMbltの範囲外となる
かを求めればよい。ΔQ、、l(MAX)は、1Aol
→1t X−+0.5の時に生じ、他方、Mb目の幅で
表せる2進数の数値限界を2−pとすると、AQ、(M
AX)は、ΔQ、、l(M A X) = 2−p◆1
       ・・・(10)となるので。
P≧M+2              ・・・(11
)となり、式(8)のtがPの加減値M+2に等しくな
る項数mが求まる値となる。従って、t=2′111−
1=+2より m =Qogx (M + 3 )         
 −(12)となり、例えば、仮数部が、5blt(符
号)+15bit(データ)のデータ形式では、M=1
5より、m=5ステツプとなる。また1式(8)はOく
X≦0.5の範囲では、収束級数であるため、XがOに
近い場合、m回以下の収束係数の乗算で収束するが、収
束後も係数乗算を行なってもMb目の範囲外であるため
、演算結果のQ、は発散しない。従って、被除数の更新
を行なう乗数及び加算の更新演算の演算回数mが入力デ
ータの仮数部M”【から決定できる。
次に、本実施例による除算演算の具体的手順を第1図に
基づき述べる。
先ず、前述したように指数部の処理を行ない、被除数A
6の指数部のみを更新した更新被除数A6′と、除数B
0の指数部のみを更新(リセット)した更新除数B0″
とを求める(ステップ■)。
次に、収束係数の初期値x0を(13)式の減算から求
め(ステップ■)、 1−B、’=X、                 
・・・(13)該x0を用いて、被除数A、′の更新演
算を(14)式の乗算及び加算(積和演算)により行な
う(ステップ■)。
An’”Xa+An’ =A1           
・・・(14)次に、収束係数X0の更新演算を(15
)式の乗算により行なう(ステップ■)。
x、” = x、                 
 −= (15)以下、この被除数の更新演算と収束係
数の更新演算をm回行なう(ステップ■→■→■)。こ
のmの値は上述した方法で得たものを用いる。すると。
最終回すなわち第m回の積和演算 AM−1・X、、l−1+ A、−1= A、    
   −(16)の演算結果Amが求まる商となって除
算が完了する。
以上述べた例では、式(6)の条件として、除数B0が
正に限定されているが、該除数BI、が負の場合には、
除数及び被除数の両者を極性反転してから、上記と同様
の演算手段を行なえば良く、何ら問題とならない、さら
に剰余の取扱いは、除算完了後、次の式(17)に基づ
く乗算及び減算の演算を行なって求めれば良い。
被除数A0−除数B、X商=剰余   ・・・(17)
また1本発明によれば、上記実施例における被除数の指
数部のみを更新した被除数穴〇″を浮動小数点表示の定
数、例えば1に置換えたものを更新対象として、上述の
更新演算を逐次施し、最終的に得られた更新被除数に八
〇′を乗算して得た積を当該除算で求める商とすること
もできる。このようにすると演算が一層シンプルなもの
となる。
(発明の効果) 本発明によれば、除数または被除数の仮数部のデータ語
長と演算精度の点から必要最小限の更新演算の回数を求
めるようにしたので、従来の収束型除算方式で必要とさ
れていた除数の更新演算が省略できるようになり、演算
ステップ数の大幅な低減及び演算時間のより一層の短縮
により除算処理の高速化が可能となる利点がある。また
本発明の除算方式を適用した除算装置では乗算回路及び
算術演算回路を用いるだけで除算が実行できるので、特
別な除算専用の演算部を設ける必要がなく、装置の小型
化、経済化を図れる利点がある。
【図面の簡単な説明】
第1図は本発明の実施例の主要な演算内容を示すブロッ
ク図、第2図は上記実施例の演算で使用される浮動小数
点表示のデータ形式を示す図、第3図は従来方式の演算
内容を示すブロック図である。 第1図 第2図 指数部         仮数部 第3図

Claims (2)

    【特許請求の範囲】
  1. (1)浮動小数点表示のデータの乗算を行なう乗算回路
    と、浮動小数点表示のデータの加減算を行なう算術演算
    回路とを備え、浮動小数点表示された除数及び被除数を
    用いて除算を行なう除算装置における除算方式において
    、 前記被除数の指数部から前記除数の指数部を減算して前
    記被除数の指数部のみを更新した被除数を求めるととも
    に、前記除数の指数部のみをリセット更新した除数を求
    める第1のステップと、前記除数または前記被除数の仮
    数部のデータ語長に基づいて、次のステップにて行なわ
    れる前記指数部のみを更新した被除数に対して施す更新
    演算の回数を求める第2のステップと、 第1回目の更新演算は、浮動小数点表示の定数から前記
    指数部のみを更新した除数を減算したものを収束係数の
    初期値とし、前記指数部のみを更新した被除数と前記収
    束係数の初期値との乗算による積と、前記指数部のみを
    更新した被除数とを加算した和を第1回目の更新被除数
    として求めることにより行ない、第2回目以降の更新演
    算は、直前回の更新演算より求めた更新被除数と直前回
    の収束係数を自乗した更新収束係数との乗算による積と
    、直前回の更新演算より求めた更新被除数とを加算した
    和を新たな更新被除数として求めることにより行ない、
    上記更新演算を前記第2のステップで求めた回数だけ逐
    次行ない、最終的に得られた更新被除数を商とする第3
    のステップと、 を具備することを特徴とする除算方式。
  2. (2)前記被除数の指数部のみを更新した被除数を浮動
    小数点表示の定数に置換えたものに対して前記第3のス
    テップの更新演算を施し、最終的に得た更新除数値と前
    記被除数の指数部のみを更新した被除数とを乗算した積
    を商とすることを特徴とする除算方式。
JP60041180A 1985-03-04 1985-03-04 除算方式 Pending JPS61201328A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60041180A JPS61201328A (ja) 1985-03-04 1985-03-04 除算方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60041180A JPS61201328A (ja) 1985-03-04 1985-03-04 除算方式

Publications (1)

Publication Number Publication Date
JPS61201328A true JPS61201328A (ja) 1986-09-06

Family

ID=12601228

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60041180A Pending JPS61201328A (ja) 1985-03-04 1985-03-04 除算方式

Country Status (1)

Country Link
JP (1) JPS61201328A (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59116852A (ja) * 1982-12-23 1984-07-05 Matsushita Electric Ind Co Ltd 高速除算装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59116852A (ja) * 1982-12-23 1984-07-05 Matsushita Electric Ind Co Ltd 高速除算装置

Similar Documents

Publication Publication Date Title
US6138135A (en) Propagating NaNs during high precision calculations using lesser precision hardware
EP0938042A2 (en) High accuracy estimates of elementary functions
JPH0749772A (ja) 除算及び開平算に関して修正ニュートン−ラプソン技術を用いる浮動小数点演算装置
Hung et al. Fast division algorithm with a small lookup table
Sunesh et al. Design and implementation of fast floating point multiplier unit
Jeong et al. A cost-effective pipelined divider with a small lookup table
JP2822399B2 (ja) 対数関数演算装置
US6912559B1 (en) System and method for improving the accuracy of reciprocal square root operations performed by a floating-point unit
JP2508784B2 (ja) 指数関数演算装置
US6598065B1 (en) Method for achieving correctly rounded quotients in algorithms based on fused multiply-accumulate without requiring the intermediate calculation of a correctly rounded reciprocal
JPH0628155A (ja) 除算方法および除算装置
JPS61201328A (ja) 除算方式
Schulte et al. High-speed reciprocal approximations
US6055553A (en) Apparatus for computing exponential and trigonometric functions
US5377134A (en) Leading constant eliminator for extended precision in pipelined division
JPH04172526A (ja) 浮動小数点除算器
JP2972326B2 (ja) 平方根計算装置
Gustafsson et al. Basic arithmetic circuits
Wires et al. Reciprocal and reciprocal square root units with operand modification and multiplication
JP2508286B2 (ja) 平方根演算装置
JPH0585924B2 (ja)
JPH04314126A (ja) 逆数発生装置
JPH06105421B2 (ja) 逆三角関数演算装置
JPH0325809B2 (ja)
JPH0419571B2 (ja)