JPS63118936A - 倍精度演算装置 - Google Patents

倍精度演算装置

Info

Publication number
JPS63118936A
JPS63118936A JP26599786A JP26599786A JPS63118936A JP S63118936 A JPS63118936 A JP S63118936A JP 26599786 A JP26599786 A JP 26599786A JP 26599786 A JP26599786 A JP 26599786A JP S63118936 A JPS63118936 A JP S63118936A
Authority
JP
Japan
Prior art keywords
reciprocal
precision
register
value
inverse
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
JP26599786A
Other languages
English (en)
Inventor
Natsume Matsuzaki
なつめ 松崎
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 JP26599786A priority Critical patent/JPS63118936A/ja
Publication of JPS63118936A publication Critical patent/JPS63118936A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

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

Description

【発明の詳細な説明】 産業上の利用分野 本発明は1ワード(以下”単精度”ということばと同じ
意味で用いる)で表わされる値の逆数算出手段(例えば
1o進1桁を1ワードとする場合、%や%)を用いて2
ワード(以下”倍精度”ということばと同じ意味で用い
る)で表わされる値の逆数(例えば1/3.2や1/’
5.4)を短いステップ数で精度良く求める倍精度演算
装置に関するものである。
従来の技術 近年、ディジタル信号処理技術の発展によりその技術が
各方面に適応されはじめている。それとともに従来応用
分野が限られていたために使用頻度の少なかった除算に
対し、高速化と高精度化が望まれている。高精度演算の
1方法に、今までの処理装置で倍のデータ幅の数値を扱
う倍精度演算がある。
除算の一般的な方法として、除数の逆数をテーブルを参
照して求めそれと被除数とを掛けあわせて商を求める方
法がある。倍精度の除算をこの方法で行なう場合、逆数
と被除数との積は4つの部分積を小数点位置をそろえて
足すことにより求めることができるが、逆数テーブルを
単精度の場合の2乗持つ必要がある。よって、効率の良
い逆数算出アルゴリズムが必要とされる。
従来、倍精度の逆数は加減算とシフトを繰り返して行な
うことにより求めていた。第4図は従来の倍精度演算装
置の構成を示すものであり、これは引き放し法(non
−restoring method )を用いる場合
を例にとっている。1.2は連結してシフトするシフト
レジスタである。最下位から”1.0,0・・・・・・
”がつめられ部分剰余を格納する。3,4は除数を格納
する。3,4は除数を格納するレジスタ、7は算術演算
器である。算術演算器7は、マルチプレクサ6で選択し
た前記シフトレジスタ1又は2の値と、マルチプレクサ
6で選択した前記レジスタ3又は4の値を入力とし、コ
ントロール部11の指定する演算を行ない、前記シフト
レジスタ1又は2に出力する。演算結果の最上位ピッ)
(MSB)はボローフラグ(BF)8に格納され前記コ
ントロール部11に入力されるとともに連結してシフト
するシフトレジスタ9,10の最下位から順次格納され
ていく。
以上のように構成された従来の倍精度演算装置の動作を
以下A1〜A12に説明する。
A1 シフトレジスタ1,2にゼロレジスタ3,4に除
数を格納する。
A2 マルチプレクサ6と6はそれぞれシフトレジスタ
2とレジスタ4を選択して算術演算器7に入力する。
A3 算術演算器7はシフトレジスタ2からレジスタ4
の内容を減算し、その演算結果をシフトレジスタ2に代
入する。そして、その最下位ビットをボローフラグBF
に格納する。
A4 次にマルチプレクサ6と6はそれぞれシフトレジ
スタ1とレジスタ3を選択して算術演算器7に入力する
A6 算術演算器7はシフトレジスタ1からレジスタ3
の内容とA3におきセントしたボローフラグの値を減算
し結果をシフトレジスタ1に格納する。
そしてその最上位ビットをボローフラグBFに格納する
とともに、シフトレジスタ10の最下位に代入する。
A6 シフトレジス、り1と2を連結してシフトする。
シフトレジスタ2の最下位から”1,0.0・・・”が
順次格納される。
A7 シフトレジスタ9と1oを連結してシフトする。
八8 マルチプレクサ6と6はそれぞれシフトレジスタ
2とレジスタ4を選択して算術演算器7に代入する。・ A9 算術演算器7は、A5又はA11でセ、ツトした
ボローフラグが′1”の時は2人力の加算を、”0”の
時は減算を行なってその結果をシフトレジスタ2に格納
する。ボローフラグには演算結果の最下位ビットを格納
する。
A10次にマルチプレクサ6と6はそれぞれシフトレジ
スタ1とレジスタ3を選択して算術演算器7に入力する
A11  算術演算器7はA5又はA11でセットした
ボローフラグが1”の時は2人力値とA9でセットした
ボローフラグの加算を行ない、”o”の時は2人力値の
減算結果からさらにA9でセットしたボローフラグの値
を減算してシフトレジスタ1に格納する。演算結果の最
上位ビットはボローフラグに格納されるとともにシフト
レジスタ1゜の最下位に代入される。
Al1 16の動作に戻る。八〇〜AI2を倍精度のピ
ット数だけ(たとえば1ワードを8ピントとした時は1
6回)繰り返したあと逆数算出の処理は終了する。シフ
トレジスタ9,1oに除数の逆数が格納されている。
発明が解決しようとする問題点 しかしながら上記のような構成では逆数を1ビツトづつ
求めていくため、倍精度の逆数算出に処理時間がかかり
、その上、処理には倍精度の加減算が必要でありしたが
って制御が非常に複雑になってしまう。上述の実施例の
他にも倍精度値の逆数を全部もつという方法もあるが、
単精度値の逆数テーブルの2乗のサイズが必要である。
本発明はかかる点に鑑み、単精度値の逆数を算出する手
段を持ち、それを用いて倍精度値の逆数を短い処理時間
で精度良く求める倍精度演算装置を提供することを目的
とする。
問題点を解決するだめの手段 本発明は、単精度値の逆数を求める逆数算出手段と、前
記逆数算出手段に接続した乗算器と、前記乗算器に直列
に接続するシフタと、算術演算器と、演算結果を格納す
る2ワードのレジスタとを備えた倍精度演算装置である
作  用 AとBを単精度の値とし、A+B・2−0の逆数を求め
る場合について説明する。
f(x)=−とし、f(A+B−2−C)をテーラ−展
開する((1)式)。
f(A+B−2−〇)=f(A)+f’(A)−B−2
−’+ −f’(AJ−B2−2−”+、−,,・=、
z。(−K)n+1 Bn、(2−C)n(−1)n 
、、<1)今、説明を簡単にするため2項だけをとり、
これをA+B・2−0の逆数の近似値とする((2)式
)。
1/(A+B・2−’) #−−(−)2・B・2−C
・・・・・・(に)A Aは単精度の値なので上記逆数算出手段におき1/A 
 の値を得ることができる。あとは乗算とシフトと減算
で(2)式の右辺が算出できる。
実施例 第1図は本発明の一実施例の構成を示す図であり、1ワ
ードを8ピントとしている。106は8ビツト幅のデー
タバス、1oOは単精度値の逆数を格納する逆数テーブ
ルである。逆数テーブルには1ワードが8ピントである
ことより28ワードの逆数が格納されている。1o1は
8ピノ) X 8ビツトの乗算を行ない16ビツトの積
を出力する乗算器、102は乗算結果を指定ピントシフ
トし、8ビツトの値を出力するシフタ、103はシフタ
102の出力値とバスからの値を入力として算術演算を
行なう算術演算器、104,105は前記算術演算器1
03の出力値を格納するレジスタである。
以上の構成をもつ装置において、倍精度の逆数を求める
方法を以下に示す。
〔アルゴリズム〕
AとBを単精度の値とし、A+B・2−Cの逆数を求め
る場合について説明する。f(I)ニーとし、f(A+
B・2−0)をテーラ−展開すると、第2式の近似式を
得る。
Aは単精度の値なので、1/Aは逆数テーブルを参照す
ることにより求められる。前記乗算器101で(−)2
・B を計算し、これを前記シフタ1o2でCビット右
にシフトし、算術演算器103で1/A  より減算す
ると、(2)式の右辺が得られる。
〔具体例〕
上記のアルゴリズムをさらに具体的な数値で〈   ”
わしく説明する。
2ワードの値43.21=43+21X(2) (16
進表現の43と21はそれぞれ8ビツト1ワードの値で
ある)の逆数を求める場合について説明する。
(2)式の近似式に数値を代入する((′4式)。
1 /43 、21 # 1/43−(1/43 )2
・21・2−8・・・・・欄(3)式を求める手順を第
2図に示す。
B11/43を逆数テーブルを参照することにより求め
、レジスタAに格納する。
B2 レジスタAに格納されている1/43を乗算器1
01の両側入力に代入する。シフタ102は演算結果の
ピット位をあわせて(1/43)2をレジスタBに格納
する。
B3 レジスタBに格納されている(1/43)と21
を掛けあわせる。さらにシフタで乗算結果の整数部(つ
まり(1/43)2・21・2−8の演算で小数点以下
8ビツトより上の数値) をレジスタAから減算する。
これが1743.21  の上位8ビツトの値となる。
84  B3と同じ乗算の結果をシフタでその小数部(
つまり(1/43)2・21・2−8の演算で小数点以
下8ビツトより下の数値)を求める。算術演算器はこれ
の2の補数を算出し、レジスタ2に出力する。
これが1/43.21 の下位8ピントの値となる。
第3図はB1〜B4の手順の内容を小数点をあわせて示
した図である。図におき、逆数の上位8ピントを求めた
のが第2図のB3の手順である。又、逆数の下位8ビツ
トを求めたのが、第2図のB4の手順である。
以上のように本発明の倍精度演算装置を用いると、短い
ステップ数で倍精度値の逆数を簡単に求められる。
なお、上述の実施例につけ加え次の4点の事柄は明白で
ちる。
C1説明を簡単にするためテーラ−展開の2項までしか
求めなかったが、精度を更に求められる場合は(1)式
を参考にして項数を増やしていけばよい。
C2単精度値の逆数をテーブルから求めたが、計算によ
ってこれを求める何らかの単精度値の逆数算出手段をこ
れに置きかえてもよい。
C3単精度値の逆数を前記の説明中では単精度8ビツト
で持っていたがこれを2ワード16ビツトで持っていて
、倍精度の乗算、加減算を行なってもよい。
C4前記説明では1ワードを8ビツトとしていたがこの
倍精度演算装置が1ワード何ビツトであってても適応で
きることは言うまでもない。
発明の効果 以上述べたように本発明によれば、短いステップ数で所
望の精度をもった倍精度値の逆数を求めることができる
。特に(1)式から分かるとおりテーラ−展開の各項が
漸化的に求められることから計算手順が非常に単純にな
っている。又、乗算器。
シフタ、算術演算器、レジスタといったイ/スツルメン
トは近年多く発表されているディジタル信号処理プロセ
ッサ(DSP)に必ず内蔵されているものである。よっ
て現存するDSPにこの機能を付加することは非常にた
やすくかつ効果的である。
【図面の簡単な説明】
第1図は本発明の一実施例における倍精度演算装置の構
成図、第2図、第3図は本発明の実施例の動作説明図、
第4図は従来の倍精度演算装置の構成図である。 1.2,9.10・・・・・・シフトレジスタ、3,4
゜104.105・・・・・・レジスタ、6,6・・・
・・・マルチプレクサ、7,103・・・・・・算術演
算器、8・・・・・・ボローフラグ、11・・・・・・
コントロール部、100・・・・・・逆数テーブル、1
01・・・・・・乗算器、102・・・・・・シフタ。 代理人の氏名 弁理士 中 尾 敏 男 ほか1名第2

Claims (1)

    【特許請求の範囲】
  1. 単精度値の逆数を求める逆数算出手段と、前記逆数算出
    手段に接続した乗算器と、前記乗算器に直列に接続する
    シフタと、算術演算器と、演算結果を格納する2ワード
    のレジスタとを備え、倍精度値の逆数をテーラー展開に
    よる計算値で近似する倍精度演算装置。
JP26599786A 1986-11-07 1986-11-07 倍精度演算装置 Pending JPS63118936A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP26599786A JPS63118936A (ja) 1986-11-07 1986-11-07 倍精度演算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP26599786A JPS63118936A (ja) 1986-11-07 1986-11-07 倍精度演算装置

Publications (1)

Publication Number Publication Date
JPS63118936A true JPS63118936A (ja) 1988-05-23

Family

ID=17424931

Family Applications (1)

Application Number Title Priority Date Filing Date
JP26599786A Pending JPS63118936A (ja) 1986-11-07 1986-11-07 倍精度演算装置

Country Status (1)

Country Link
JP (1) JPS63118936A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01265327A (ja) * 1988-04-18 1989-10-23 Nec Corp 逆数演算装置
EP0484629A2 (en) * 1990-11-09 1992-05-13 Hewlett-Packard Company Frequency measurement from a constant number of events with a fast inverse circuit

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01265327A (ja) * 1988-04-18 1989-10-23 Nec Corp 逆数演算装置
EP0484629A2 (en) * 1990-11-09 1992-05-13 Hewlett-Packard Company Frequency measurement from a constant number of events with a fast inverse circuit

Similar Documents

Publication Publication Date Title
EP0149248B1 (en) Method and apparatus for division using interpolation approximation
JPH0612229A (ja) 乗累算回路
JPH01125626A (ja) 逆数計算方法
JPH03204720A (ja) 初等関数演算装置
JPH03171324A (ja) オペランドの平方根を計算する回路及び方法
JPS63118936A (ja) 倍精度演算装置
JPS5939774B2 (ja) 指数関数の演算方式
JP2508286B2 (ja) 平方根演算装置
JPH0831024B2 (ja) 演算プロセッサ
JPH06105421B2 (ja) 逆三角関数演算装置
Jain et al. Realization of regula-falsi iteration based double precision floating point division
JPH0585924B2 (ja)
JPS62147526A (ja) 乗算器
JPH0769785B2 (ja) 除算装置
JPH0371331A (ja) 乗算器
JPH07120273B2 (ja) 除算装置
JPH04314126A (ja) 逆数発生装置
JPS63254525A (ja) 除算装置
JPH01130225A (ja) 三角関数演算装置
JPH0784762A (ja) 乗算回路
Jhunjhunwala et al. Computer implementation of the Straight division algorithm
JPH02154530A (ja) 2進数への変換方法
SU748409A1 (ru) Устройство дл умножени двоично- дес тичных чисел
JPS6365524A (ja) 有理数演算装置
JPH0833815B2 (ja) 高桁乗算装置