[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2777265B2 - 高基数開平演算装置 - Google Patents

高基数開平演算装置

Info

Publication number
JP2777265B2
JP2777265B2 JP11953490A JP11953490A JP2777265B2 JP 2777265 B2 JP2777265 B2 JP 2777265B2 JP 11953490 A JP11953490 A JP 11953490A JP 11953490 A JP11953490 A JP 11953490A JP 2777265 B2 JP2777265 B2 JP 2777265B2
Authority
JP
Japan
Prior art keywords
square root
residual
approximate value
register
partial quotient
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
JP11953490A
Other languages
English (en)
Other versions
JPH0415822A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP11953490A priority Critical patent/JP2777265B2/ja
Publication of JPH0415822A publication Critical patent/JPH0415822A/ja
Application granted granted Critical
Publication of JP2777265B2 publication Critical patent/JP2777265B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Description

【発明の詳細な説明】 〔目次〕 概要 産業上の利用分野 従来の技術(第3図、第4図) 発明が解決しようとする課題 課題を解決するための手段(第1図) 作用 実施例(第2図) 発明の効果 〔概要〕 高基数開平演算装置に関し、 高速で開平演算処理ができるようにすることを目的と
し、 最上位ビットより始めて、加減算及びシフトを繰り返
すことにより、順次下位ビットを求めていく、減算シフ
ト型の開平方式を用いて高基数の開平演算処理を行う高
基数開平演算装置において、答の近似値aを入れるレジ
スタと、残余Rを入れるレジスタと、近似値a及び残余
Rを入力し、部分商予測によって予測値rを求める部分
商予測器と、近似値a及び求めた予測値rを入力して加
算処理を行い、新たな近似値を求める加算器と、残余
R、近似値a、及び求めた予測値rを入力し、新たな残
余を計算して求める残余計算部とを設け、1回の加算
と、1回の部分商予測と、残余計算部の1マシンサイク
ル中に、平方根のn(n≧2)ビットが求められるよう
に構成する。
〔産業上の利用分野〕
本発明は高基数開平演算装置に関し、更に詳しく言え
ば、ディジタル計算機において用いられ、特に、平方根
を求める演算を高速化した高基数開平演算装置に関す
る。
〔従来の技術〕
第3図は従来例の構成図、第4図は従来例の処理フロ
ーチャートである。図中、1はセレクタ、2、3はレジ
スタ、4はCSA(桁上げ保存加算器)、5は加算器を示
す。なお、第4図の処理番号はカッコ内に示す。
従来、ディジタル計算機において、開平演算は、基本
的な演算であり、技術計算では頻繁に使用されている。
上記の開平演算の内、従来用いられていた減算シフト
型の開平法の基本的なアルゴリズムは、次のようなもの
である。
今、2進数で表わされる正の数Xの平方根を求めたい
とする。この場合適切なシフトによって、予め1≦X<
4となるようにしておく。
ここで先ず、 の最初の1ビットの近似値として無条件にa=1をと
る。この時、 a2≦X<(a+1) ……(1) が成り立っている。
また、残余RをX−a2として定義しておく。
次に、Kビットの近似値aが得られていて、式(1)
が成り立っている時、次のようにしてK+1ビットの近
似値a1と対応する残余R1を求める。但し、Xでなく4Xの
平方根を求めても同じことなので、こちらで考える。つ
まり、 a1 2≦4X<(a1+1)を満たすa1を求める。式(1)
より、 (2a)≦4X<(2a+2) ……(2) が成り立っているから、a1、R1の取り方としては、 4X<(2a+1)なら、 a1=2a、R1=4Rとして、 (2a+1)≦4Xなら、 a1=2a+1、R1=4X−(2a+1)= 4R−4a−1 とすればよい。上記の処理を繰り返して行うことにより
平方根が得られる。
上記アルゴリズムに基づく処理は次のようにして行わ
れる。
処理装置としては、第3図に示したように、セレクタ
1、レジスタ2、3、CSA4、加算器5によって構成され
る。上記セレクタ1では、加算器5からの符号出力をセ
レクト信号とし、4R、または4R−4a−1のいずれか一方
を選択する。また、レジスタ2は、残余Rを格納するレ
ジスタであり、レジスタ3は近似値aを格納するレジス
タである。
上記処理装置による開平処理は、第4図に示したよう
に、先ず、a=1、R=X−a2とする(100)。
次に、4X<(2a+1)であれば、(101)、a1=2
a、R1=4Rとする(102)が、もし4X(2a+1)ならば
(101)、a1=2a+1、R1=4X−(2a+1)=4R−4a
−1とする(103)。
このような処理(101)〜(103)をm回繰り返すと、
mビットの平方根が得られる。
〔発明が解決しようとする課題〕
上記のような従来のものにおいては次のような欠点が
あった。
即ち、上記従来例で示した処理(101)〜(103)の主
要な演算は、4R−4a−1を求めることである。
これは、ハードウェア的に、1回の減算と、CSA1段で
実現できるので、常識的な1マシンサイクル中に容易に
納まる。しかし、1サイクルに1ビットしか結果が得ら
れないため、開平演算処理が遅くなる欠点があった。
本発明は、このような従来の欠点を解消し、高速で開
平演算処理ができるようにすることを目的とする。
〔課題を解決するための手段〕
第1図は本発明の原理図であり、図中、10、11はレジ
スタ、12は部分商予測器、13は残余計算部、14は加算器
を示す。
本発明は、上記の目的を達成するため、最上位ビット
より始めて加減算及びシフトを繰り返すことにより、順
次下位ビットを求めていく、減算シフト型の開平方式を
用いて高基数の開平演算処理を行う高基数開平演算装置
において、 答の近似値aを入れるレジスタ10と、残余Rを入れる
レジスタ11と、上記近似値a及び残余Rを入力し、部分
商予測によって予測値rを求める部分商予測器12と、上
記近似値a及び求めた予測値rを入力して加算処理を行
い、新たな近似値 を求める加算器14と、上記残余R、近似値a、及び求め
た予測値rを入力し、新たな残余 を計算して求める残余計算部13とを設け、 1回の加算と、1回の部分商予測と、残余計算部13の
1マシンサイクル中に、平方根のn(n≧2)ビットが
求められるようにしたものである(ただしN=2n)。
〔作用〕
本発明は上記のように構成したので、次のような作用
がある。
最初に前処理として、答えの近似値a及び残余Rを求
めて、レジスタ10及びレジスタ11にそれぞれの値を入れ
ておく。
次に、本処理として、次の(1)〜(3)の処理をm
回繰り返して行う。
(1) レジスタ10内の近似値aと、レジスタ11内の残
余Rを、部分商予測器12に入力し、予測値rを求める。
(2) レジスタ11内の残余Rと、レジスタ10内の近似
値aと、上記部分商予測器12で求めた予測値rを、残余
計算部13に入力して、新たな残余 を求め、レジスタ11内の残余Rを更新する。
(3) レジスタ10内の近似値aと、上記部分商予測器
12で求めた予測値rを、加算器14に入力し、新たな近似
を求めてレジスタ10内の近似値aを更新する。
このようにすると、上記(1)及び(3)の処理が1
回と、(2)の処理の1マシンサイクル中に、平方根の
n(n≧2)ビットが求められる。従って、開平処理が
高速化できる。
〔実施例〕
以下、本発明の実施例を図面に基づいて説明する。
第2図は、本発明の1実施例の構成図であり、図中、
第1図と同符号は同一のものを示す。また、15は自乗
器、16〜18はCSA(桁上げ保存加算器)、19はCPA(桁上
げ伝播加算器)を示す。
この例では、残余計算部13を、自乗器15と、3段構成
のCSA16〜18と、CPA19によって構成し、加算器14にもCP
Aを用いる。そして、減算シフト型の開平方式で、高基
数の開平演算処理を行うものであり、以下、詳細に説明
する。
開平演算処理において、1サイクルにnビット(n≧
2)の結果を得るには、次のようにする。今、N=2n
して、 の近似値aが精度1/NKで求まっている(ただし、Kは、
近似値aのN進数での桁数を示す)。即ち、 が成り立っていたとする。このaから精度1/NKの近似値 を求めたい。
即ち、 であるような整数rを求めたい。
なおこの時、式(3)より、−N+1≦r≦N−1の
範囲で解があるはずである。
残余RkをNK(X−a2)として定義しておく。式(3)
より、−2a+1/NK<RK<2a+1/NKである。
次に、式(4)を変形すると、 となる。ここで|r|<Nより、 が成り立てば式(5)も成り立つ。
式(6)を変形すると、 今、2aNK-1がある定数C以上であることが分かってい
るものとすると、 が成り立つようなrが見つかれば上記(7)式が成り立
ち、上記(5)式も成り立つ。従って、近似値a1が求ま
ったことになる。この時、新しい残余RK+1は、 上記(8)式を満たすようなrは、高基数非回復型除算
回路でよく知られた部分商予測の手法を用いて1マシン
サイクルに十分収まる論理段数で求められる。
以上のことをまとめると、アルゴリズムは次のように
なる。
Xに適当なシフトを施した後、a≧a0となり、且つ
上記(3)式を満たすようなaを求める。R=NK(X−
a2)とおく。
上記(8)式を満たすrを部分商予測により求め、 このの操作をm回繰り返すと、mnビットの近似式が求
まる。
中のaの更新は、何回繰り返しても、a>a0−1が
成り立つので、上記(8)式でC=2a0NK-1とおいて部
分商予測を行えばよい。
rを掛けるという操作は、rが高々nビットなので、
CSA段数と加算器でできる。また、1/N倍は、nビット右
シフトに等しいので、特に回路は不要である。
ところで、第2図においては、n=2の場合を示して
ある。最初に64≦X<256となるように、Xをシフトし
た後、表1に基づく初期予測を行った結果がレジスタ10
に入れられる。
表1の予測は、(a−1)<X<(a+1)とな
るようになっている。a0=8、C=4、K=0である。
上記(8)式は、 となる。
また、残余R0=X−a2がレジスタ11に入れられる。
レジスタ10内のデータは、符号なしで、整数部は4ビ
ットであり、レジスタ11内のデータは、符号付きで、整
数部は符号を入れて6ビットである。
このケースでは、Rとaの整数部だけで部分商予測が
できる。整数部をとすると、2≦2R<2
2、≦a<+1となるから、(9)式の十分条件
は、 である。
この(10)式を満たすようなrを全てのについ
て求めたのが表2である。
1サイクル毎に、先ず、Rとaの上位ビットから表2
に基づく部分商予測が行われる。結果rは、ここでは符
号付き3ビットである。また、r2を求めるために、自乗
器15に入れる。更に、rの各ビットがaの−4倍、2
倍、1倍に掛けられ、最後にR、r2、−4ar2、2ar1、ar
oが(各々適切にシフトされた後)加算されてレジスタ
Rに入る。
〔発明の効果〕
以上説明したように、本発明によれば、1回の加算
と、1回の部分商予測と、CSA数段程度から成る1マシ
ンサイクル中に、平方根のn(n≧2)ビットを求める
ことができるから、高基数の開平演算処理が高速ででき
る効果がある。
【図面の簡単な説明】
第1図は本発明の原理図、 第2図は本発明の1実施例の構成図、 第3図は従来例の構成図、 第4図は従来例の処理フローチャートである。 10、11……レジスタ 12……部分商予測器 13……残余計算部 14……加算器

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】最上位ビットより始めて、加減算及びシフ
    トを繰り返すことにより、順次下位ビットを求めてい
    く、減算シフト型の開平方式を用いて高基数の開平演算
    処理を行う高基数開平演算装置において、 答の近似値aを入れるレジスタ(10)と、 残余Rを入れるレジスタ(11)と、 上記近似値a及び残余Rを入力し、部分商予測によって
    予測値rを求める部分商予測器(12)と、 上記近似値a及び求めた予測値rを入力して加算処理を
    行い、新たな近似値(a1=a+r/NK+1)を求める加算器
    (14)と、 上記残余R、近似値a、及び求めた予測値rを入力し、
    新たな残余(R1=RN−2ar−r2/NK+1)を計算して求める
    残余計算部(13)とを設け、 1回の加算と、1回の部分商予測と、残余計算部(13)
    の1マシンサイクル中に、平方根のn(n≧2)ビット
    が求められるようにしたことを特徴とする高基数開平演
    算装置。
JP11953490A 1990-05-09 1990-05-09 高基数開平演算装置 Expired - Fee Related JP2777265B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11953490A JP2777265B2 (ja) 1990-05-09 1990-05-09 高基数開平演算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11953490A JP2777265B2 (ja) 1990-05-09 1990-05-09 高基数開平演算装置

Publications (2)

Publication Number Publication Date
JPH0415822A JPH0415822A (ja) 1992-01-21
JP2777265B2 true JP2777265B2 (ja) 1998-07-16

Family

ID=14763667

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11953490A Expired - Fee Related JP2777265B2 (ja) 1990-05-09 1990-05-09 高基数開平演算装置

Country Status (1)

Country Link
JP (1) JP2777265B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7120320B2 (ja) * 2018-10-18 2022-08-17 富士通株式会社 演算処理装置および演算処理装置の制御方法

Also Published As

Publication number Publication date
JPH0415822A (ja) 1992-01-21

Similar Documents

Publication Publication Date Title
EP0158530B1 (en) Nonrestoring divider
JPH0713742A (ja) 乗算装置
JP3139466B2 (ja) 乗算器及び積和演算器
EP0356153B1 (en) Radix-2**n divider method and apparatus using overlapped quotient bit selection and concurrent quotient rounding and correction
US5177703A (en) Division circuit using higher radices
JP4273071B2 (ja) 除算・開平演算器
JP2001222410A (ja) 除算器
US4677583A (en) Apparatus for decimal multiplication
JPH1195982A (ja) 演算処理回路及び演算処理方法並びに演算処理システム
JP3660075B2 (ja) 除算装置
US7607165B2 (en) Method and apparatus for multiplication and/or modular reduction processing
JP2777265B2 (ja) 高基数開平演算装置
JPS58137045A (ja) 並列乗算器
JPS6226723B2 (ja)
JP2645422B2 (ja) 浮動小数点演算処理装置
JP3190826B2 (ja) 積和演算装置
JP2803442B2 (ja) 開平装置
JP2537876B2 (ja) 丸め処理回路
JP4042215B2 (ja) 演算処理装置およびその方法
JP2705640B2 (ja) 積和演算器
JPH0368415B2 (ja)
JPH0427587B2 (ja)
JP3261600B2 (ja) 剰余乗算器
JP3612950B2 (ja) 演算装置およびその方法
JP3074910B2 (ja) 除算装置

Legal Events

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