JPS61262930A - 除算装置 - Google Patents
除算装置Info
- Publication number
- JPS61262930A JPS61262930A JP60105531A JP10553185A JPS61262930A JP S61262930 A JPS61262930 A JP S61262930A JP 60105531 A JP60105531 A JP 60105531A JP 10553185 A JP10553185 A JP 10553185A JP S61262930 A JPS61262930 A JP S61262930A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- initial value
- supplied
- divisor
- output
- 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
Links
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
(産東上の利用分野)
本発明は、例えば計算機等において,2つの浮動小数点
数の曲を,乗算及び加減算のみを用いて要求される精度
まで求めるだめの除算方式である。
数の曲を,乗算及び加減算のみを用いて要求される精度
まで求めるだめの除算方式である。
(従来技術)
従来は,オツトー・スパニ日ル( Otto 8pan
iol)著、[コンピューター・アリスメティック,ロ
ジッジ・アンド・デザイン( Computor Ar
ithmeticLogic and Design
) J, ジョン●ワイリー●アトド・サンズ( J
ohn Wiley & 8ons )社,l73〜1
91ページにある様な方法をとっていた。
iol)著、[コンピューター・アリスメティック,ロ
ジッジ・アンド・デザイン( Computor Ar
ithmeticLogic and Design
) J, ジョン●ワイリー●アトド・サンズ( J
ohn Wiley & 8ons )社,l73〜1
91ページにある様な方法をとっていた。
つまり商β/αを求めるのにiを,αの仮数部aの逆数
−を、ある範囲に対してf (X)=− 一a = 0
をXの初期値X から出発してニュートン法により求め
ていた。
−を、ある範囲に対してf (X)=− 一a = 0
をXの初期値X から出発してニュートン法により求め
ていた。
(従来技術の問題点)
従来の方法では,初期値X。とじて最適なものが用いら
れていなかった0例えば2進表示で2 <a〈1に対し
て逆数を求めるのに,逆数の正量1〈1く2の左端のイ
直x0:1をニー−トン法の出発値としている。これは
最大誤差の意味でも.平均誤差の意味でも最適ではなく
、必要以上の反復数、または初期値X。のテーブルとし
て必要以上のメモリーを用いなければならない口 (発明の目的) 本発明は、上記の問題点を解決するために正量内での最
適な初期値X。を採用し、より高速でより少ないメモリ
ーで除算を行なう除算装憶を提供することを目的とする
コ (発明の構成) 本発明によれば。
れていなかった0例えば2進表示で2 <a〈1に対し
て逆数を求めるのに,逆数の正量1〈1く2の左端のイ
直x0:1をニー−トン法の出発値としている。これは
最大誤差の意味でも.平均誤差の意味でも最適ではなく
、必要以上の反復数、または初期値X。のテーブルとし
て必要以上のメモリーを用いなければならない口 (発明の目的) 本発明は、上記の問題点を解決するために正量内での最
適な初期値X。を採用し、より高速でより少ないメモリ
ーで除算を行なう除算装憶を提供することを目的とする
コ (発明の構成) 本発明によれば。
(−1除数α、被除数βが入力され、αの仮数部aを出
力するとともにαの指数部peの符号を反転したp−8
とβとの積β・p−eを出力する前処理回路。
力するとともにαの指数部peの符号を反転したp−8
とβとの積β・p−eを出力する前処理回路。
(b)、前記aが入力され、aの上位m桁(mは整数)
を出力するアドレス発生回路。
を出力するアドレス発生回路。
(cl。前記アドレス発生回路出力が供給され初期値x
0を出力する初期値メモリ。
0を出力する初期値メモリ。
(d)、前記Xo及び前記aが供給され、Xn’:”X
n−1(’2−axn−1)なる演算を行なう演算回路
。
n−1(’2−axn−1)なる演算を行なう演算回路
。
(c)、前記β・p−e及び前記演算回路出力とを乗算
する乗算器、 とから構成される装置 ゛ (発明のノ収埋) 浮動小数点数β,α(α/o)の商β/αを求めるも0
)とする、α/0の場合は(一β)/(一α)として計
算する。
する乗算器、 とから構成される装置 ゛ (発明のノ収埋) 浮動小数点数β,α(α/o)の商β/αを求めるも0
)とする、α/0の場合は(一β)/(一α)として計
算する。
α〉0とし,p進表示(pは正の整数)でcl
α”aXp 、 −く龜<1 tt
l仮数部aはp進n桁とする3つまり でaiは整数で0くaiくp−1(t■しai〆0)、
eは指数部であるり 第2図の様に除数αの逆数dを求め,被除数βとの乗算
によ)、曲β/αを求める。
l仮数部aはp進n桁とする3つまり でaiは整数で0くaiくp−1(t■しai〆0)、
eは指数部であるり 第2図の様に除数αの逆数dを求め,被除数βとの乗算
によ)、曲β/αを求める。
αの逆数は,αの仮数部aの逆数−と、指数部eの符号
を反転する事により。
を反転する事により。
よシ得る。
( a (1 01範囲にある仮数部aの逆数を求める
のにaの仮数部の上位m桁を続み,その値に対してあら
かじめ用意してある初期値のテーブルから8に対応する
初期値1 を読む,但し,初期イ直テーブルは一から間隔δごとに
1一δまでのSの値に対してX。の値を用意している,
ここでOくδく1−一である。
のにaの仮数部の上位m桁を続み,その値に対してあら
かじめ用意してある初期値のテーブルから8に対応する
初期値1 を読む,但し,初期イ直テーブルは一から間隔δごとに
1一δまでのSの値に対してX。の値を用意している,
ここでOくδく1−一である。
次に第2図の様にX。を初期値として、反復x&=xl
−1 ( 2 axj−1 ) i=l, 2g
・・・、 k (6)を必要な回数にだけ行う。
−1 ( 2 axj−1 ) i=l, 2g
・・・、 k (6)を必要な回数にだけ行う。
−1くε(c〉0は必要とされる精度)となる様にとる
。あるいは(6)の計nを行うたびにj Xi−Xl−
1jを計算し,Cより小さくなう友ところで反復を終了
する様にする。
。あるいは(6)の計nを行うたびにj Xi−Xl−
1jを計算し,Cより小さくなう友ところで反復を終了
する様にする。
倚られたxkそ一の値として求める藺
介=βX xk X p−e(7)
を侍る。
0 < s <、 a <、 s十δなるaの逆数Xを
求めるのに =1一 fhrl xa=0 (81と
なるXをニュートン法 最適値は后1<x。<ーの軛囲に存在する。
求めるのに =1一 fhrl xa=0 (81と
なるXをニュートン法 最適値は后1<x。<ーの軛囲に存在する。
i回目の反復時の’xiの誤差61は
1 ’ 1εt
(a+xo)””l”i]l””lXt−t(2 aK
,−t)一τ1一責1・1−・→1′→・i−、 エa2’l, 、、、、2 −1( xo+−1 )2
’次に誤差の平均について評価してみる。
(a+xo)””l”i]l””lXt−t(2 aK
,−t)一τ1一責1・1−・→1′→・i−、 エa2’l, 、、、、2 −1( xo+−1 )2
’次に誤差の平均について評価してみる。
aはsくaくs+δで一様に分布しているとすると、x
、の誤差の期待値は 7、(xO)=8f:+aεH(a、xo)da(m+
a ) go−1〉0 、1−sxo>0だから、従っ
て平均誤差’1(xo)い=1.2.・・・)は■ 次にsくaくs+δでのXiの最大誤差El(xo)=
max g((a、xo)f論するコ−(:、a
(−s十δ (10)式よル 従って。
、の誤差の期待値は 7、(xO)=8f:+aεH(a、xo)da(m+
a ) go−1〉0 、1−sxo>0だから、従っ
て平均誤差’1(xo)い=1.2.・・・)は■ 次にsくaくs+δでのXiの最大誤差El(xo)=
max g((a、xo)f論するコ−(:、a
(−s十δ (10)式よル 従って。
従って、最大誤差はa=sかa == B+δでおこる
。
。
・そこでDB(xo)=6r (r−十J −x o)
−εI(j、xo)とおくと。
−εI(j、xo)とおくと。
フ〈xo<マではx。(s+δ)−1>0及びx。5−
1(従って、 従うて Ei(X6)=max εi (a e to )s
<a<s −1−8 従ってxiの最大誤算Fli(Xo)はX。=xo*で
最小値をとる。
1(従って、 従うて Ei(X6)=max εi (a e to )s
<a<s −1−8 従ってxiの最大誤算Fli(Xo)はX。=xo*で
最小値をとる。
だから
小とみなして艮い。
(実施例)
第1図は本発明の一実施例を示すブロック図である口
同図において、信号#J1より除数α、被除数βが前処
理回路2に供給されるO前処理回路2においてはαの仮
数部aを取り出し信号線3を介してアドレス発生回路4
1及び演算回路8に供給するOまた前処理回路2は、α
の指数部eの符号部を反転した値p−eとβとの積β×
p−eを信号N10により乗算器11に供給する0 アドレス発生回路4は、信号線3により供給されたαの
仮数部aの上位m桁を取り出し、初期値メモリ6へアド
レス信号として供給する。初期値メモリ6には、′fJ
2図を用いて説明した初期値X。
理回路2に供給されるO前処理回路2においてはαの仮
数部aを取り出し信号線3を介してアドレス発生回路4
1及び演算回路8に供給するOまた前処理回路2は、α
の指数部eの符号部を反転した値p−eとβとの積β×
p−eを信号N10により乗算器11に供給する0 アドレス発生回路4は、信号線3により供給されたαの
仮数部aの上位m桁を取り出し、初期値メモリ6へアド
レス信号として供給する。初期値メモリ6には、′fJ
2図を用いて説明した初期値X。
のテーブルメモリがiiFき込まれており、信号線5に
より供給されるアドレスにしたがって初期値X。
より供給されるアドレスにしたがって初期値X。
を、演算回路8に出力する。
演算回w!I8においては、信号Ifli!3によりa
か、信号線7によりX。が供給されており、まずxl=
xo(2−axo)なる演算が行なわれ、結果が信号線
9により、乗算器11に出力される。また演算結果は信
号線9により演算回路8にフィードバックされ、次の逐
次計算に供される。乗算器11においては、信号線lO
より供給されるβ×p−eと。
か、信号線7によりX。が供給されており、まずxl=
xo(2−axo)なる演算が行なわれ、結果が信号線
9により、乗算器11に出力される。また演算結果は信
号線9により演算回路8にフィードバックされ、次の逐
次計算に供される。乗算器11においては、信号線lO
より供給されるβ×p−eと。
信号#!9により供給される−の近似値との乗算がなさ
れ、除算結果β/αの近似値が信号線12に出力される
〇 ここで第2図で2進の数表現(p=2 )の場合を考え
、仮数部の桁数n=24とする。仮数部の逆数の要求さ
れる精度は2 キロ、0X10 と考えるO 第2図の初期値X。のテーブルメモリーを十分大きくと
り1反復1回(k=1 )で2 <a (lなる仮数部
aに対して逆数を求めてみる0 本発明による場合、用量s <a (s+δに対し従っ
てδ−2−13ととれば全ての場合に精度の要求は充さ
れる。従って紀2図で…−13つまり仮数部aの上位1
3桁の値を読めばよい0デープルメそり−と1.てVi
責くS<1でδ−2きざみには−÷2−13=212=
4096で十分でちる。
れ、除算結果β/αの近似値が信号線12に出力される
〇 ここで第2図で2進の数表現(p=2 )の場合を考え
、仮数部の桁数n=24とする。仮数部の逆数の要求さ
れる精度は2 キロ、0X10 と考えるO 第2図の初期値X。のテーブルメモリーを十分大きくと
り1反復1回(k=1 )で2 <a (lなる仮数部
aに対して逆数を求めてみる0 本発明による場合、用量s <a (s+δに対し従っ
てδ−2−13ととれば全ての場合に精度の要求は充さ
れる。従って紀2図で…−13つまり仮数部aの上位1
3桁の値を読めばよい0デープルメそり−と1.てVi
責くS<1でδ−2きざみには−÷2−13=212=
4096で十分でちる。
一方、従来の方式で、初期凪として例えばxo−石コを
とると、最大誤差 とするには少くともδ=2 としなくてはならl 。
とると、最大誤差 とするには少くともδ=2 としなくてはならl 。
ずテーブルサイズは百τ2 =2 =8192と
なり1曲射本発1り」O)2倍のメモリーを必要とする
。
なり1曲射本発1り」O)2倍のメモリーを必要とする
。
次に2進24桁で要求精度は2 とする。第2図で−
z<、a< 1なる仮数部aの逆数を求めるの(s:;
、δ−7)でニー−トン法の反復を必要な回数に行う構
成をとる。
z<、a< 1なる仮数部aの逆数を求めるの(s:;
、δ−7)でニー−トン法の反復を必要な回数に行う構
成をとる。
従来のものとしてはX。=−=1.Of考える。
、、1 δ
仮数部aが2 <a (lで一体に分布しているとして
(数値積分により)求めたx1θJ平均誤差を表1に示
す。また表2にX10′)最大誤差を示す。
(数値積分により)求めたx1θJ平均誤差を表1に示
す。また表2にX10′)最大誤差を示す。
以子71・パ白
〔表1〕i回反復時の平均誤差 !、(Xo)〔表21
i回反復時の最大誤差 E H(x o )表1. 2
かられかる様にPhf望の種度2 を達成するのに本
発明の方法によれば4回の反復で十分である〇一方、従
来の方法によると5回の反復が必費で、酸N針は本発明
の方法の2割増である。
i回反復時の最大誤差 E H(x o )表1. 2
かられかる様にPhf望の種度2 を達成するのに本
発明の方法によれば4回の反復で十分である〇一方、従
来の方法によると5回の反復が必費で、酸N針は本発明
の方法の2割増である。
(発明の効果)
以上述べた通り、本発明によれば最適な初期値を用いる
ことができるため、高速な除算を行なうことができる除
算装置を提供することができる0
ことができるため、高速な除算を行なうことができる除
算装置を提供することができる0
第1図は本発明の一実施例を示すブロック図、第2図は
本発明の詳細な説明するための図である。 図において。 2・・・前処理回路、4・・・アドレス発生回路、6・
・・初期値メモリ、8・・・演算回路、11・・・乗算
器、をそれぞれ示す〇 州 2 図 dの数8滉
本発明の詳細な説明するための図である。 図において。 2・・・前処理回路、4・・・アドレス発生回路、6・
・・初期値メモリ、8・・・演算回路、11・・・乗算
器、をそれぞれ示す〇 州 2 図 dの数8滉
Claims (1)
- 【特許請求の範囲】 (a)、除数α、被除数βが入力され、αの仮数部aを
出力するとともにαの指数部p^eの符号と反転したp
^−^eとβとの積β・p^−^eを出力する前処理回
路、(b)、前記aが入力され、aの上位m桁(mは整
数)を出力するアドレス発生回路、 (c)、前記アドレス発生回路出力が供給され初期値x
_oを出力する初期値メモリ、 (d)、前記x_o及び前記aが供給されx_n=x_
n_−_1(2−ax_n_−_1)なる演算を行なう
演算回路。 (e)、前記β・p^−^e及び前記演算回路出力とを
乗算する乗算器、 とから構成される除算装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60105531A JPS61262930A (ja) | 1985-05-17 | 1985-05-17 | 除算装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60105531A JPS61262930A (ja) | 1985-05-17 | 1985-05-17 | 除算装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPS61262930A true JPS61262930A (ja) | 1986-11-20 |
Family
ID=14410170
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP60105531A Pending JPS61262930A (ja) | 1985-05-17 | 1985-05-17 | 除算装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS61262930A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6453277A (en) * | 1987-05-08 | 1989-03-01 | Sun Microsystems Inc | Apparatus and method for obtaining approximate value of inverse of same order coordinates used for display of video on display device |
| WO1990005335A1 (fr) * | 1988-11-04 | 1990-05-17 | Hitachi, Ltd. | Dispositif de multiplication, division et extraction de la racine carree |
| JPH02227726A (ja) * | 1989-01-13 | 1990-09-10 | Internatl Business Mach Corp <Ibm> | 制御方法 |
-
1985
- 1985-05-17 JP JP60105531A patent/JPS61262930A/ja active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6453277A (en) * | 1987-05-08 | 1989-03-01 | Sun Microsystems Inc | Apparatus and method for obtaining approximate value of inverse of same order coordinates used for display of video on display device |
| WO1990005335A1 (fr) * | 1988-11-04 | 1990-05-17 | Hitachi, Ltd. | Dispositif de multiplication, division et extraction de la racine carree |
| JPH02227726A (ja) * | 1989-01-13 | 1990-09-10 | Internatl Business Mach Corp <Ibm> | 制御方法 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6779012B2 (en) | Computer method and apparatus for division and square root operations using signed digit | |
| Ercegovac et al. | Reciprocation, square root, inverse square root, and some elementary functions using small multipliers | |
| Borwein et al. | Ramanujan, modular equations, and approximations to pi or how to compute one billion digits of pi | |
| EP0421092B1 (en) | Method and apparatus for performing mathematical functions using polynomial approximation and a rectangular aspect ratio multiplier | |
| US5307303A (en) | Method and apparatus for performing division using a rectangular aspect ratio multiplier | |
| EP0075745B1 (en) | Method and apparatus for division | |
| US4868777A (en) | High speed multiplier utilizing signed-digit and carry-save operands | |
| US3855459A (en) | Apparatus for converting data into the same units | |
| JPH0368416B2 (ja) | ||
| GB1519095A (en) | Multiplying device | |
| JPS648856B2 (ja) | ||
| US3813529A (en) | Digital high order interpolator | |
| JPS61262930A (ja) | 除算装置 | |
| Rodrigues et al. | Hardware evaluation of mathematical functions | |
| EP0476911A2 (en) | Multiplier signed and unsigned overflow flags | |
| Bajard et al. | A new Euclidean division algorithm for residue number systems | |
| Harber et al. | Bit-serial CORDIC circuits for use in a VLSI silicon compiler | |
| GB945773A (en) | Variable increment computer | |
| US3254204A (en) | Digital divider for integer and remainder division operations | |
| Krishnamurthy | Economical iterative and range-transformation schemes for division | |
| Von Neumann | Electronic methods of computation | |
| JPH04195523A (ja) | 平方根計算装置 | |
| Couffignal | Technical Developments: Report on the Machine of the Institut Blaise Pascal | |
| Bellman | Eugene L. Lawler, Combinatorial optimization: networks and matroids | |
| JPH01310435A (ja) | 逆数値発生装置 |