JPH04358224A - Square foot calculating device - Google Patents

Square foot calculating device

Info

Publication number
JPH04358224A
JPH04358224A JP13262991A JP13262991A JPH04358224A JP H04358224 A JPH04358224 A JP H04358224A JP 13262991 A JP13262991 A JP 13262991A JP 13262991 A JP13262991 A JP 13262991A JP H04358224 A JPH04358224 A JP H04358224A
Authority
JP
Japan
Prior art keywords
output
square root
bit
bits
double
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
JP13262991A
Other languages
Japanese (ja)
Inventor
Takeshi Kishida
武 岸田
Hiroshi Nakano
中野 拓
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 JP13262991A priority Critical patent/JPH04358224A/en
Publication of JPH04358224A publication Critical patent/JPH04358224A/en
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

PURPOSE:To provide the square soot calculating device without deteriorating performance while reducing the hardware scale of a multiplier. CONSTITUTION:The approximate inverse of a square root is indexed from a table information storing means 12 with the high order of a normalized operand outputted from a normalizing means 8 as an address, a partial square root is obtained by multiplying the inverse to the output of a remainder holding means 13, which defines the 0th remainder as an address, by a multiplying means 14, the partial square roots at respective repetitions are merged by a digit matching means 21 and an adding means 22, and the remainder at the next step of the repeated calculation is calculated by subtracting the product of the merged square root and the partial square root from the remainder by a multiplicand generating means 19, inverting means 20 and (R=SXT+T) arithmetic means 23.

Description

【発明の詳細な説明】[Detailed description of the invention]

【0001】0001

【産業上の利用分野】本発明はデータ処理装置における
開平演算装置に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a square root calculation device for a data processing device.

【0002】0002

【従来の技術】本発明で取り扱う二重指数分割表現実数
はS部、L部、E部、M部という4つの部分で構成され
る。S部は正負の符号ビットを表現し、L部はE部のビ
ット長を表現し、E部はL部と組み合わされて指数部を
表現する。(以下、S,L,E部をまとめて二重指数部
と表現する。)全ビットから二重指数部を除いた残りの
ビットであるM部は仮数部を表現する。上記のLE部は
ビット長を2〜全ビット長(但し、2の倍数)と任意に
取ることができ、この二重指数分割表現実数ではIEE
E規格の倍精度浮動少数点数でも取り扱えない絶対値の
大きな数や小さな数を取り扱うことが可能である。この
二重指数分割表現実数と実数値との対応については  
情報処理学会論文誌  Vol.22 No.6 (1
981) P521 526 に詳しく述べられている
2. Description of the Related Art A real number represented by double exponential division handled in the present invention is composed of four parts: an S part, an L part, an E part, and an M part. The S part represents the positive and negative sign bits, the L part represents the bit length of the E part, and the E part is combined with the L part to represent the exponent part. (Hereinafter, the S, L, and E parts will be collectively referred to as the double exponent part.) The M part, which is the remaining bits after removing the double exponent part from all the bits, represents the mantissa part. The above LE part can take any bit length from 2 to the total bit length (however, a multiple of 2), and in this double exponential division representation real number, IEE
It is possible to handle numbers with large or small absolute values that cannot be handled even with E standard double-precision floating point numbers. Regarding the correspondence between this double exponential division representation real numbers and real numbers,
Information Processing Society of Japan Journal Vol. 22 No. 6 (1
981) P521 526.

【0003】従来、開平演算装置では、ニュートン・ラ
プソン法を用いて開平演算を実行している例が多い。数
値Aの平方根を求めるために、まず1/√Aを求め、そ
れにAを掛けて√Aを求める。ニュートン・ラプソン法
では1/√Aを収束計算によって求めるのであるが、収
束までに要する繰り返し回数は逆数の初期値が真の値に
近いほど少なく、高速な開平演算装置では、3〜4回程
度の収束計算で求められることが、特開平2ー2592
4号公報等に示されている。
[0003] Conventionally, in many cases, square root calculation devices execute square root calculation using the Newton-Raphson method. To find the square root of a numerical value A, first find 1/√A, then multiply it by A to find √A. In the Newton-Raphson method, 1/√A is determined by convergence calculation, but the closer the initial value of the reciprocal is to the true value, the smaller the number of iterations required for convergence, and with a high-speed square root calculation device, it is about 3 to 4 times. What can be obtained by the convergence calculation of
This is shown in Publication No. 4, etc.

【0004】0004

【発明が解決しようとする課題】しかしながらニュート
ン・ラプソン法による上記の開平演算装置の実施例にお
いて、乗算器には浮動小数点数入力オペランドの仮数部
が被乗数、乗数として入力されており、二重指数分割表
現実数の平方根を求める場合、リーディングビットを付
加した仮数部の最大ビット長に対応した31ビットx3
1ビットの乗算器を必要とする。乗算命令と開平演算命
令を同時に実行することがなく、乗算命令を実行するた
めの乗算器を開平演算命令の実行でも利用する場合は何
も問題にはならない。しかし、乗算命令と開平演算命令
の間で使用するデータについて互いに依存関係がないと
き、2つの命令を同時に実行するために、開平演算用に
31ビットx31ビットの乗算器を設けるのはハードウ
ェアの物量の多大な増加となり、問題となる。
However, in the above embodiment of the square root arithmetic unit based on the Newton-Raphson method, the mantissa part of the floating-point input operand is input as the multiplicand and multiplier, and the double exponent When calculating the square root of a divided representation real number, 31 bits x 3 corresponding to the maximum bit length of the mantissa with the leading bit added.
Requires a 1-bit multiplier. If the multiplication instruction and the square root operation instruction are not executed simultaneously, and the multiplier for executing the multiplication instruction is also used for executing the square root operation instruction, no problem arises. However, when there is no dependence on the data used between the multiplication instruction and the square root operation instruction, it is difficult to provide a 31-bit x 31-bit multiplier for the square root operation in order to execute the two instructions at the same time. This results in a huge increase in the amount of material, which poses a problem.

【0005】本発明は上記問題点に鑑み、乗数のビット
長として、二重指数分割表現実数の仮数部の最大ビット
長よりも小さい乗算器を使用する開平演算装置を提供す
るものである。
SUMMARY OF THE INVENTION In view of the above problems, the present invention provides a square root calculation device that uses a multiplier whose bit length of the multiplier is smaller than the maximum bit length of the mantissa of a real number represented by double exponential division.

【0006】[0006]

【課題を解決するための手段】上記問題点を解決するた
めに本発明の開平演算装置は、入力オペランドに対する
平方根の近似逆数を格納するテーブル情報格納手段と、
平方根を上位より順に一定のビット数ずつ反復して求め
る場合の剰余保持手段と、剰余保持手段から出力される
剰余と、テーブル情報格納手段から出力される平方根の
近似逆数をそれぞれ被乗数、乗数として乗算を行なう乗
算手段と、乗算手段の出力する積の上位を部分平方根と
して各反復での平方根を併合した併合平方根保持手段と
、剰余保持手段から出力される剰余(R)と、併合平方
根保持手段から出力される併合平方根と乗算手段の出力
する平方根を被乗数生成手段によりひとまとめにしたデ
ータ(S)と、更に乗算手段の出力する部分平方根(T
)を入力して、(R−SxT)の演算を行なう演算手段
とを構成に備えたものである。
[Means for Solving the Problems] In order to solve the above problems, the square root calculation device of the present invention includes table information storage means for storing approximate reciprocals of square roots for input operands;
A remainder holding means when calculating a square root by repeating a certain number of bits from the highest order, and multiplying the remainder output from the remainder holding means and the approximate reciprocal of the square root output from the table information storage means as a multiplicand and a multiplier, respectively. a merging square root holding means for merging the square roots of each iteration using the upper part of the product outputted by the multiplication means as a partial square root; a remainder (R) output from the remainder holding means; Data (S) obtained by combining the output merged square root and the square root output from the multiplication means by the multiplicand generation means, and the partial square root (T) output from the multiplication means.
) and calculates (R-SxT).

【0007】[0007]

【作用】上記の構成により開平演算を実行できることを
説明する前に、本発明で使用する開平演算の方法につい
て説明する。Aの平方根を上位より一定のビット数ずつ
グループ分割して、(数1)のように表現する。
[Operation] Before explaining that the above configuration can perform a square root operation, the square root operation method used in the present invention will be explained. The square root of A is divided into groups of a certain number of bits starting from the higher order, and expressed as shown in (Equation 1).

【0008】[0008]

【数1】[Math 1]

【0009】逆に、式1の辺々を2乗して右辺を変形す
ると(数2)を得る。
On the other hand, if we square the sides of Equation 1 and transform the right-hand side, we obtain (Equation 2).

【0010】0010

【数2】[Math 2]

【0011】(数2)より、以下の手順で平方根を求め
ることができる。 (1)A(R0とする)にa1の逆数を掛け、結果の上
位の一定のビット数をa1とする。
From (Equation 2), the square root can be found using the following procedure. (1) Multiply A (referred to as R0) by the reciprocal of a1, and set the fixed number of high-order bits of the result to a1.

【0012】(2)R1=R0−a1xa1を計算した
後、R1を(1)での一定のビット数だけ左にシフトす
る。
(2) After calculating R1=R0-a1xa1, shift R1 to the left by the fixed number of bits in (1).

【0013】以下、(3)、(4)を必要な回数だけ繰
り返す。 (3)Riにa1の逆数を掛け、結果の上位の一定のビ
ット数をai+1とする。ただし、(1)でのa1と比
較してai+1は1ビット上位からとる。
[0013] Below, (3) and (4) are repeated as many times as necessary. (3) Multiply Ri by the reciprocal of a1, and set the certain number of high-order bits of the result to ai+1. However, compared to a1 in (1), ai+1 is taken from the upper bit.

【0014】(4)Ri+1=Ri−{(a1+・・・
+ai)x2+ai+1}xai+1  を計算した後
、Ri+1を(1)での一定のビット数だけ左にシフト
する。
(4) Ri+1=Ri-{(a1+...
+ai)x2+ai+1}xai+1 After calculating, Ri+1 is shifted to the left by a certain number of bits in (1).

【0015】テーブル情報格納手段には、a1の近似逆
数が格納されており、Aの上位ビットをアドレスとして
索引され、剰余保持手段に0番目剰余として格納されて
いるR0(=A)とa1の近似逆数との積が、乗算手段
により計算され、積の上位ビットとしてa1が得られる
。 次に、被乗数生成手段では1回目の反復計算ではa1を
出力し、R0、a1、a1が(R−SxT)演算手段に
入力されて、R1が得られる。次にa1が併合平方根保
持手段に格納され、R1が一定のビット数だけ左シフト
された後、剰余保持手段に格納される。以降、併合平方
根のビット長が求めるべき平方根のビット長以上になる
まで、i>1として下記の処理を繰り返す。
[0015] The table information storage means stores an approximate reciprocal of a1, which is indexed using the upper bits of A as an address, and is stored as the 0th remainder in the remainder storage means, R0 (=A) and a1. The product with the approximate reciprocal is calculated by the multiplication means, and a1 is obtained as the upper bit of the product. Next, the multiplicand generation means outputs a1 in the first iterative calculation, and R0, a1, and a1 are input to the (R-SxT) calculation means to obtain R1. Next, a1 is stored in the merge square root holding means, and after R1 is left-shifted by a certain number of bits, it is stored in the remainder holding means. Thereafter, the following process is repeated with i>1 until the bit length of the merged square root becomes equal to or greater than the bit length of the square root to be determined.

【0016】剰余保持手段にi番目剰余として格納され
ているRiとa1の近似逆数との積が、乗算手段により
計算され、積の上位ビットとしてai+1が得られる。 次に、被乗数生成手段では(a1+・・・+ai)を左
に1ビットシフトした後、ai+1とマージして被乗数
として出力し、Ri、{(a1+・・・+ai)x2+
ai+1}、ai+1  が(R−SxT)演算手段に
入力されて、Ri+1が得られる。次にai+1が併合
平方根保持手段に格納され、Ri+1が一定のビット数
だけ左シフトされた後、剰余保持手段に格納される。
The product of Ri stored as the i-th remainder in the remainder holding means and the approximate reciprocal of a1 is calculated by the multiplication means, and ai+1 is obtained as the upper bit of the product. Next, the multiplicand generation means shifts (a1+...+ai) to the left by 1 bit, then merges it with ai+1 and outputs it as a multiplicand, Ri, {(a1+...+ai)x2+
ai+1}, ai+1 are input to the (R-SxT) calculation means to obtain Ri+1. Next, ai+1 is stored in the merging square root holding means, and after Ri+1 is left-shifted by a certain number of bits, it is stored in the remainder holding means.

【0017】(数1)、(数2)では、はじめに部分平
方根の間でビットの重複がないとしたのであるが、部分
平方根間でビットの重複があっても上記手順で平方根を
求めることができれば特に部分平方根間の非重複を必要
条件として設定しなくてもよい。上に示した手順におい
て、開平演算の実行時間に占める割合が高いものとして
、テーブル情報格納手段の索引、剰余とa1の近似逆数
の乗算時間、被乗数{(a1+・・・+ai)x2+a
i+1}の生成、(R−SxT)の演算時間がある。こ
れらの中で、被乗数{(a1+・・・+ai)x2+a
i+1}の生成は、部分平方根間でビットの重複がない
場合は、単にa1、・・・、aiを1ビット左にシフト
して、ai+1と併合するだけでよい。また、部分平方
根間で1ビットの重複がある場合は、(a1+・・・+
ai)について、aiを併合平方根保持手段に格納する
前に、(R−SxT)の演算と並行して、(a1+・・
・+ai)の加算を実行すれば開平演算の実行時間に影
響を与えることはない。一方、被乗数の生成では(a1
+・・・+ai)を左に1ビットシフトしてからai+
1と併合するのでaiとai+1に1ビットの重複があ
っても加算を必要としない。部分平方根間で2ビット以
上の重複がある場合は、被乗数(a1+・・・+ai)
の生成で加算が必要となるので開平演算の実行時間が増
大する。よって、本発明は、部分平方根間でビットの重
複がない場合と、部分平方根間で1ビットの重複がある
場合を対象とする。
In (Equation 1) and (Equation 2), it is initially assumed that there is no bit overlap between the partial square roots, but even if there is bit overlap between the partial square roots, the square root can be found using the above procedure. If possible, it is not necessary to set non-overlapping between partial square roots as a necessary condition. In the procedure shown above, the items that occupy a high proportion of the execution time of the square root operation are the index of the table information storage means, the multiplication time of the remainder and the approximate reciprocal of a1, and the multiplicand {(a1+...+ai)x2+a
i+1} and (R-SxT) calculation time. Among these, the multiplicand {(a1+...+ai)x2+a
i+1}, if there is no bit overlap between the partial square roots, simply shift a1, . Also, if there is 1 bit overlap between partial square roots, (a1+...+
ai), before storing ai in the merging square root holding means, in parallel with the calculation of (R-SxT), (a1+...
・+ai) does not affect the execution time of the square root operation. On the other hand, in the generation of the multiplicand (a1
+...+ai) to the left by 1 bit, then ai+
Since it is merged with 1, there is no need for addition even if ai and ai+1 have 1 bit overlap. If there is an overlap of 2 or more bits between partial square roots, the multiplicand (a1+...+ai)
Since addition is required to generate , the execution time of the square root operation increases. Therefore, the present invention targets cases where there is no bit overlap between partial square roots and cases where there is 1 bit overlap between partial square roots.

【0018】[0018]

【実施例】平方根の近似逆数は、(数3)の13ビット
(xは0または1を表す)をアドレスとして索引される
Embodiment The approximate reciprocal of the square root is indexed using the 13 bits (x represents 0 or 1) of (Equation 3) as an address.

【0019】[0019]

【数3】[Math 3]

【0020】テーブル情報格納手段に格納する数値は、
平方根の逆数として、少し大きめの値になるように、上
記のアドレスの数値から2ー12を引いて、平方根を求
めた後、この平方根の逆数を求める。実際のテーブルに
は平方根の逆数の2ー2から2ー16の値を格納し、常
に0である符号ビットと常に1である2ー1ビットはテ
ーブルには直接格納しないが、実施例において逐一説明
を加えるのは煩わしいので先頭2ビットとして01がテ
ーブルに含まれているように説明する。乗算を実行する
場合には、乗数を1ビット重複させた3ビット単位のグ
ループに分割して表1に示すBoothのアルゴリズム
に従って被乗数の倍数を発生させ、樹木状に構成した桁
上げ保留加算器群によって2個の部分桁上げと部分和に
なるまで求め、この2つを桁上げ伝播加算器で加算して
最終的な積を求める。剰余と平方根の近似逆数の乗算で
はテーブルから読みだした値に対して、先頭に1を付加
するとともに、末尾に、アドレスとして使用するビット
の右の隣接1ビットの反転を付加する。乗算では右に付
加したビットを乗数の最下位ビットとすることによって
2ー17倍ではなく、2ー16倍の効果を持たせる。0
1.00000000000に対しては、テーブルに格
納する2ー2から2ー16の値はすべて1であり、入力
オペランドのアドレスに使用されるビット未満がゼロで
ある場合にも、上記の2ー16倍の効果により、乗算器
の内部では1.0000000000000000を乗
数とする乗算が行なわれる。
[0020] The numerical values stored in the table information storage means are:
Subtract 2-12 from the above address value to obtain a slightly larger reciprocal of the square root, and then find the reciprocal of this square root. The actual table stores the values of the reciprocal of the square root from 2-2 to 2-16, and the sign bit, which is always 0, and the 2-1 bit, which is always 1, are not stored directly in the table, but in the example, they are stored one by one. Since it would be troublesome to add an explanation, we will explain that 01 is included in the table as the first two bits. When performing multiplication, the multiplier is divided into groups of 3 bits with 1 bit overlap, and multiples of the multiplicand are generated according to Booth's algorithm shown in Table 1. , until two partial carries and a partial sum are obtained, and these two are added by a carry propagation adder to obtain the final product. In the multiplication of the approximate reciprocal of the remainder and the square root, 1 is added to the beginning of the value read from the table, and the inversion of the 1 bit adjacent to the right of the bit used as the address is added to the end. In multiplication, by using the bit added to the right as the least significant bit of the multiplier, the effect is increased by 2-16 times instead of 2-17 times. 0
For 1.00000000000, the values 2-2 to 2-16 stored in the table are all 1, and even if the bits less than the bits used in the address of the input operand are zero, the above 2-16 Due to the multiplication effect, a multiplication with a multiplier of 1.0000000000000000 is performed inside the multiplier.

【0021】[0021]

【表1】[Table 1]

【0022】(R−SxT)の演算では、上述した乗算
器の構成に対して、Rを一種の倍数として樹木状桁上げ
保留加算器群に入力し、また、{R+Sx(−T)}の
演算となるように乗数の入力の1の補数をとり、最下位
ビットとして1を付加することによって、上記の2ー1
7倍ではなく2ー16倍の効果を持つのと同じ効果によ
り、実質的に(R−SxT)の演算手段で乗数が2の補
数となるようにしている。なお、適当に符号ビットを上
位に拡張すると負の数に対しても2の補数表示で乗算が
実行できることは、この分野の技術者にとってはよく知
られている。以下では、(R−SxT)の演算手段を乗
数の反転手段と(R+SxT)の演算手段に分け、更に
(R+SxT)の演算手段の入力の直前で部分平方根に
1を加えるのは開平演算の実行時間に多大の影響を及ぼ
すので{R+(S+1)x(T+1)}に対して{R+
Sx(T+1)+(T+1)}として乗数に対しては反
転手段で最下位ビットに0を付加することで部分平方根
に1を加える効果を持たせ、被乗数に対しては乗数をあ
る条件のもとで一種の倍数として樹木状桁上げ保留加算
器群に入力することで対処し、(R+SxT+T)の演
算手段を使用する。
In the calculation of (R-SxT), for the multiplier configuration described above, R is input as a kind of multiple to the tree-like carry-save adder group, and also the calculation of {R+Sx(-T)} By taking the 1's complement of the input of the multiplier and adding 1 as the least significant bit, the above 2-1 can be calculated.
The same effect as having an effect of 2 to 16 times instead of 7 times allows the multiplier to become a two's complement number with substantially (R-SxT) calculation means. It is well known to those skilled in the art that by appropriately extending the sign bit upwards, multiplication can be performed even on negative numbers in two's complement representation. In the following, the (R-SxT) calculation means is divided into the multiplier inversion means and the (R+SxT) calculation means, and adding 1 to the partial square root immediately before the input of the (R+SxT) calculation means is a square root calculation. Since it has a great influence on time, {R+
Sx(T+1)+(T+1)}, the effect of adding 1 to the partial square root is given to the multiplier by adding 0 to the least significant bit using the inversion means, and the effect of adding 1 to the partial square root is given to the multiplicand, This is handled by inputting it as a kind of multiple to a group of tree-like carry-save adders, and a calculation means of (R+SxT+T) is used.

【0023】以下、実施例では具体的な数値例を引用す
るが紙面の節約のため特に断わらない限り、数値は16
進表示とする。
[0023] In the following examples, specific numerical examples will be cited, but in order to save space, the numerical values are 16 unless otherwise specified.
It is displayed in decimal.

【0024】図1は本発明の実施例である二重指数分割
表現実数開平演算装置のブロック図を示すものである。 本実施例の二重指数分割表現実数開平演算装置は2の補
数表示の32ビットの二重指数分割表現実数を入力して
、2の補数表示の32ビットの平方根を出力し、部分平
方根のデータとしてのビット長が12で部分平方根間に
は1ビットの重複がある。
FIG. 1 shows a block diagram of a double-exponential division expression real number square root calculation device according to an embodiment of the present invention. The double exponential division representation real number square root calculation device of this embodiment inputs a 32-bit double exponential division representation real number in two's complement representation, outputs a 32-bit square root in two's complement representation, and outputs partial square root data. The bit length is 12 and there is 1 bit overlap between the partial square roots.

【0025】図1において、1は入力レジスタ、2は例
外検出手段、3は二重指数部長判定手段、4は二重指数
部分離手段、5は二重指数部処理手段、6はリーディン
グビット付加手段、7は正規化シフト数算出手段、8は
正規化手段、9は桁調整シフト数算出手段、10はシフ
タ、11はマルチプレクサ、12はテーブル情報格納手
段、13は剰余保持手段、14は乗算手段、15は併合
平方根保持手段、16はマルチプレクサ、17は定数減
算手段、18はマルチプレクサ、19は被乗数生成手段
、20は反転手段、21は桁合わせ手段、22は加算手
段、23は(R+SxT+T)演算手段、24は桁調整
手段、25は指数部・仮数部併合手段である。
In FIG. 1, 1 is an input register, 2 is an exception detection means, 3 is a double exponent length determining means, 4 is a double exponent part separating means, 5 is a double exponent part processing means, and 6 is a leading bit addition. 7 is a normalization shift number calculation means, 8 is a normalization means, 9 is a digit adjustment shift number calculation means, 10 is a shifter, 11 is a multiplexer, 12 is a table information storage means, 13 is a remainder holding means, 14 is a multiplication 15 is a merging square root holding means, 16 is a multiplexer, 17 is a constant subtraction means, 18 is a multiplexer, 19 is a multiplicand generation means, 20 is an inversion means, 21 is a digit adjustment means, 22 is an addition means, 23 is (R+SxT+T) 24 is a digit adjustment means, and 25 is an exponent/mantissa merging means.

【0026】以下、具体的な数値例を用いて図1に示す
二重指数分割表現実数開平演算装置の動作を説明する。 図2はオペランドが入力されてから、各々の手段で処理
されていく過程を示している。はじめにオペランドとし
て79B4C316が入力され、入力レジスタ1にセッ
トされる。例外検出手段2では入力オペランドの先頭ビ
ットが1の場合はデータ例外として検出し、二重指数分
割表現実数開平演算装置の外部の命令実行制御部に対し
て例外が発生していることを通知する。本数値例では(
以下では、この前提を省略する)例外は検出されない。 二重指数部長判定手段3では入力オペランドの先頭第2
ビットから始まる0または1の連の長さNを判定し、二
重指数部長2N+1を出力する。本実施例では9を出力
する。二重指数部分離手段4では先頭9ビットを二重指
数部、残りを仮数部に分離して出力する。二重指数部処
理手段5では、二重指数部分離手段4の出力の二重指数
部の中のL部の連が1で構成され、その長さが3以上の
場合は、L部の連はビット数を1減らし、E部は定数1
を減算し、最下位ビットを削除することによりビット数
を1減らした後、定数1を加算する。二重指数部の中の
L部の連が0で構成され、その長さが2以上の場合は、
L部の連はビット数を1減らし、E部は最下位ビットを
削除することによりビット数を1減らす。LE部が2進
数表示で、1101の場合は1100とし、LE部が2
進数表示で、01あるいは、1100あるいは、10の
場合10とする。いずれの場合も最上位のサインビット
が231の位置にくるように二重指数部を埋め込み、他
のビットを0とした32ビットデータとして出力する。   リーディングビット付加手段6では仮数部にリーデ
ィングビット1を付加する。正規化シフト数算出手段7
ではビット正規化を行なうためのシフト数を算出してい
る。二重指数部長2N+1に対して、231ー2N が
1の時、2N+11を出力し、231ー2N が0の時
、2N+12を出力する。本実施例では19を出力する
The operation of the double-exponential division expression real number square root calculation device shown in FIG. 1 will be described below using specific numerical examples. FIG. 2 shows the process in which an operand is processed by each means after it is input. First, 79B4C316 is input as an operand and set in input register 1. If the first bit of the input operand is 1, the exception detection means 2 detects it as a data exception, and notifies the external instruction execution control unit of the double-exponential division expression real number square root arithmetic unit that an exception has occurred. . In this numerical example (
(We omit this assumption below) The exception is not detected. In the double exponent length determining means 3, the first second of the input operand is
The length N of the series of 0 or 1 starting from the bit is determined and the double exponent length 2N+1 is output. In this embodiment, 9 is output. The double exponent part separating means 4 separates the first 9 bits into a double exponent part and the rest into a mantissa part and outputs them. In the double index part processing means 5, if the run of the L part in the double index part of the output of the double index part separation means 4 is composed of 1 and its length is 3 or more, the run of the L part is reduces the number of bits by 1, and the E part is a constant 1
After the number of bits is decreased by 1 by subtracting and deleting the least significant bit, a constant 1 is added. If the run of the L part in the double index part consists of 0 and its length is 2 or more,
The number of bits is reduced by 1 in the L part run, and the bit number is reduced by 1 in the E part by deleting the least significant bit. If the LE part is a binary number and it is 1101, it will be 1100, and the LE part will be 2.
If the number is 01, 1100, or 10 in decimal notation, it is expressed as 10. In either case, a double exponent part is embedded so that the most significant sign bit is at position 231, and the other bits are set to 0 and output as 32-bit data. Leading bit addition means 6 adds leading bit 1 to the mantissa. Normalized shift number calculation means 7
In this example, the number of shifts for bit normalization is calculated. For double index length 2N+1, when 231-2N is 1, 2N+11 is output, and when 231-2N is 0, 2N+12 is output. In this embodiment, 19 is output.

【0027】正規化手段8では、正規化シフト数算出手
段7より、シフト数19の指示を受け、入力データを1
9ビット左にシフトして5A618B00000を出力
する。テーブル情報格納手段12には正規化手段8の2
43から231の13ビットが入力され、0D772が
出力される。さらにこの出力の最下位ビットとして正規
化手段8の230のビットを反転したものが付加される
のであるが、本実施例では1が付加され、乗算手段14
での実質的な乗数は0D773となる。マルチプレクサ
11では先頭に4ビットのゼロを付加した正規化手段8
の出力を選択し、この出力が剰余保持手段13にセット
される。このとき、併合平方根保持手段15はゼロにリ
セットされる。乗算手段14で05A618B0000
0と0D773の乗算が行なわれ、04C108598
5000000の積が求められる。マルチプレクサ16
では乗算手段14の260から248の13ビットを符
号1ビット、データ12ビットの1番目の部分平方根と
して選択する。反転手段20では部分平方根を入力して
ビット反転するとともに最下位ビットに1を付加して出
力する。 ただし、反転手段20では3回目の反復で部分平方根が
負の場合に限り、最下位ビットに0を付加して出力する
。これは負の方向に大きめに部分平方根を算出している
のを補正するために行なう。
The normalizing means 8 receives an instruction for the number of shifts of 19 from the normalized shift number calculating means 7, and converts the input data into 1
Shift to the left by 9 bits and output 5A618B00000. The table information storage means 12 contains two of the normalization means 8.
13 bits from 43 to 231 are input, and 0D772 is output. Further, as the least significant bit of this output, the inverted bit of 230 of the normalizing means 8 is added, but in this embodiment, 1 is added, and the multiplier 14
The actual multiplier is 0D773. The multiplexer 11 uses a normalization means 8 that adds 4 bits of zero to the beginning.
This output is set in the remainder holding means 13. At this time, the merge square root holding means 15 is reset to zero. Multiplying means 14: 05A618B0000
Multiplication of 0 and 0D773 is performed, resulting in 04C108598
The product of 5,000,000 is found. multiplexer 16
Then, 13 bits from 260 to 248 of the multiplication means 14 are selected as the 1st partial square root of the 1 sign bit and the 12 data bits. The inverting means 20 inputs the partial square root, inverts the bits, adds 1 to the least significant bit, and outputs the result. However, only when the partial square root is negative in the third iteration, the inverting means 20 adds 0 to the least significant bit and outputs it. This is done to correct the fact that the partial square roots are calculated to be larger in the negative direction.

【0028】また、被乗数生成手段19では、1回目の
反復では234から222までにマルチプレクサ16の
出力を埋め込み、他のビットをゼロとして出力する。(
R+SxT+T)演算手段23では剰余保持手段13の
出力をR、被乗数生成手段19の出力をS,反転手段2
0の出力をTとして入力し、3回目の反復で部分平方根
が負の場合に限り(R+SxT+T)を実行し、それ以
外の場合は(R+SxT)の演算を実行する。(R+S
xT+T)の+Tは部分平方根の最下位ビットに対応す
るビットが20の位になるように桁合わせをして樹木状
桁上げ保留加算器群に入力される。(R+SxT+T)
演算手段23の出力FFFFB8700000はシフタ
10によって左に11ビットシフトされてマルチプレク
サ11により選択され、剰余保持手段13にセットされ
る。 一方、定数減算手段17ではマルチプレクサ16の出力
のLSBから1を引く。マルチプレクサ18は、マルチ
プレクサ16の出力が正で(R+SxT+T)演算手段
23の出力が負の場合、定数減算手段17の出力を選択
し、それ以外の場合はマルチプレクサ16の出力を選択
する。1回目の反復では上記の条件を判断して定数減算
手段17の出力を選択する。
Furthermore, in the first iteration, the multiplicand generating means 19 embeds the output of the multiplexer 16 in 234 to 222 and outputs the other bits as zero. (
R+SxT+T) In the calculating means 23, the output of the remainder holding means 13 is R, the output of the multiplicand generating means 19 is S, and the inverting means 2
Input the output of 0 as T, and in the third iteration, execute (R+SxT+T) only if the partial square root is negative, otherwise execute the operation (R+SxT). (R+S
+T of xT+T) is input to the arborescent carry-save adder group with digit alignment such that the bit corresponding to the least significant bit of the partial square root is in the 20's place. (R+SxT+T)
The output FFFFB8700000 of the calculation means 23 is shifted left by 11 bits by the shifter 10, selected by the multiplexer 11, and set in the remainder holding means 13. On the other hand, constant subtraction means 17 subtracts 1 from the LSB of the output of multiplexer 16. The multiplexer 18 selects the output of the constant subtraction means 17 when the output of the multiplexer 16 is positive and (R+SxT+T) the output of the calculation means 23 is negative, and otherwise selects the output of the multiplexer 16. In the first iteration, the above conditions are judged and the output of the constant subtraction means 17 is selected.

【0029】桁合わせ手段21では各反復での部分平方
根を併合するための桁合わせをを実行する。具体的には
、部分平方根が負の場合には、マルチプレクサ18の出
力の13ビットの先頭2ビットをゼロに抑止し、また、
部分平方根が正の場合には、マルチプレクサ18の出力
の13ビットを、上位の併合平方根とのビットの重みが
つり合うようにシフトを行ない、出力する。1番目の部
分平方根に対しては、234から222に入力データを
整列させ、出力する。加算手段22では併合平方根保持
手段15の出力と、桁合わせ手段21の出力を入力して
加算を行ない、結果を併合平方根保持手段15にセット
する。
The digit alignment means 21 performs digit alignment for merging the partial square roots in each iteration. Specifically, when the partial square root is negative, the first two bits of the 13 bits output from the multiplexer 18 are suppressed to zero, and
If the partial square root is positive, the 13 bits output from the multiplexer 18 are shifted so that the bit weights are balanced with those of the upper merged square root, and then output. For the first partial square root, the input data is sorted from 234 to 222 and output. The adding means 22 inputs the output of the merging square root holding means 15 and the output of the digit matching means 21, performs addition, and sets the result in the merging square root holding means 15.

【0030】次に2回目の反復計算に入る。テーブル情
報格納手段12の出力は2回目以降も1回目と変わらな
い。剰余保持手段13にセットされた1番目の剰余R1
のFDC380000000に0D773が乗算手段1
4により掛けられ、積FE1E2F528000000
0が出力される。261から249の1F0Fが符号1
ビット、データ12ビットの2番目の部分平方根として
マルチプレクサ16により選択される。反転手段20で
は1F0Fが反転され、00F0となり、最下位ビット
として1が付加されて出力され、(R+SxT+T)演
算手段23では実質的に乗数として00F1で演算が行
なわれる。一方、被乗数生成手段19では、併合平方根
保持手段15の出力を左に1ビットシフトするとともに
、マルチプレクサ16の出力する13ビットの先頭ビッ
トを除く12ビットを222から211へ埋め込み、0
260787800を出力する。(R+SxT+T)演
算手段23では剰余保持手段13の出力をR、被乗数生
成手段19の出力をS,反転手段20の出力をTとして
入力し、(R+SxT)の演算を実行する。(R+Sx
T+T)演算手段23の出力00005168F800
はシフタ10によって左に11ビットシフトされてマル
チプレクサ11により選択され、剰余保持手段13にセ
ットされる。マルチプレクサ18は、マルチプレクサ1
6の出力を選択して出力し、桁合わせ手段21では13
ビットの入力のうち、先頭2ビットをゼロに抑止して1
1ビットを221から211に整列させる。加算手段2
2では併合平方根保持手段15の出力と、桁合わせ手段
21の出力を入力して加算を行ない、13038780
00を出力する。併合平方根保持手段15では加算手段
22の出力をセットする。
Next, the second iterative calculation begins. The output of the table information storage means 12 is the same for the second and subsequent times as it was for the first time. The first remainder R1 set in the remainder holding means 13
Multiplying means 1 by 0D773 to FDC380000000
Multiplied by 4, the product FE1E2F528000000
0 is output. 1F0F from 261 to 249 is code 1
bit, selected by multiplexer 16 as the second partial square root of the 12 bits of data. The inverting means 20 inverts 1F0F to become 00F0, adds 1 as the least significant bit and outputs it, and the (R+SxT+T) arithmetic means 23 essentially performs an arithmetic operation on 00F1 as a multiplier. On the other hand, the multiplicand generating means 19 shifts the output of the merging square root holding means 15 to the left by 1 bit, and embeds 12 bits excluding the first bit of the 13 bits output from the multiplexer 16 from 222 to 211, and 0
Outputs 260787800. (R+SxT+T) The calculation means 23 inputs the output of the remainder holding means 13 as R, the output of the multiplicand generation means 19 as S, and the output of the inversion means 20 as T, and executes the calculation of (R+SxT). (R+Sx
T+T) Output of calculation means 23 00005168F800
is shifted to the left by 11 bits by the shifter 10, selected by the multiplexer 11, and set in the remainder holding means 13. Multiplexer 18 is multiplexer 1
6 is selected and output, and the digit matching means 21 selects and outputs 13.
Out of the bit input, suppress the first two bits to zero and set it to 1.
1 bit is aligned from 221 to 211. Addition means 2
2, the output of the merging square root holding means 15 and the output of the digit matching means 21 are input and added, and 13038780 is obtained.
Outputs 00. The merge square root holding means 15 sets the output of the addition means 22.

【0031】次に3回目の反復計算に入る。テーブル情
報格納手段12の出力は1回目と変わらない。剰余保持
手段13にセットされた2番目の剰余R2の028B4
7C00000に0D773が乗算手段14により掛け
られ、積02241BB37B400000が出力され
る。261から249の0114が符号1ビット、デー
タ12ビットの3番目の部分平方根としてマルチプレク
サ16により選択される。反転手段20では0114が
反転され、1EEBとなり、最下位ビットとして1が付
加されて出力され、(R+SxT+T)演算手段23で
は実質的に乗数として1EECで演算が行なわれる。一
方、被乗数生成手段19では、併合平方根保持手段15
の出力を左に1ビットシフトするとともに、マルチプレ
クサ16の出力する13ビットの先頭ビットを除く12
ビットを211から20 へ埋め込み、026070F
114を出力する。(R+SxT+T)演算手段23で
は剰余保持手段13の出力をR、被乗数生成手段19の
出力をS,反転手段20の出力をTとして入力し、(R
+SxT)の演算を実行する。(R+SxT+T)演算
手段23の出力00000EDDFABCを出力する。 マルチプレクサ18は、マルチプレクサ16の出力を選
択して出力し、桁合わせ手段21では13ビットの入力
を212から20 に整列させる。加算手段22では併
合平方根保持手段15の出力と、桁合わせ手段21の出
力を入力して加算を行ない、1303879120を出
力する。なお、3回目の反復で部分平方根が負で、剰余
が正の場合に限り、加算手段22では20 に初期キャ
リを加える。 桁調整シフト数算出手段9では、二重指数部処理手段5
の出力の二重指数部のビット数7に定数4を加えたシフ
ト数11を出力する。桁調整手段24では、桁調整シフ
ト数算出手段9よりシフト数11の指示を受け、加算手
段18の出力のリーディングビットである236を0に
置き換えて右に11ビットシフトする。 指数部・仮数
部併合手段25では、二重指数部処理手段5の出力74
000000と桁調整手段24の出力006070F2
を加算し、最終結果である746070F2を出力する
Next, the third iterative calculation begins. The output of the table information storage means 12 is the same as the first time. 028B4 of the second remainder R2 set in the remainder holding means 13
7C00000 is multiplied by 0D773 by the multiplication means 14, and the product 02241BB37B400000 is output. 0114 of 261 to 249 is selected by the multiplexer 16 as the third partial square root of the 1 code bit and 12 data bits. The inverting means 20 inverts 0114 to become 1EEB, adds 1 as the least significant bit and outputs it, and the (R+SxT+T) arithmetic means 23 essentially performs an operation using 1EEC as a multiplier. On the other hand, in the multiplicand generation means 19, the merged square root holding means 15
1 bit to the left, and remove the first bit of the 13 bits output from the multiplexer
Embed bits from 211 to 20, 026070F
114 is output. (R+SxT+T) The calculation means 23 inputs the output of the remainder holding means 13 as R, the output of the multiplicand generation means 19 as S, and the output of the inversion means 20 as T.
+SxT) is executed. (R+SxT+T) The output of the calculation means 23 is 00000EDDFABC. The multiplexer 18 selects and outputs the output of the multiplexer 16, and the digit alignment means 21 aligns the 13-bit input from 212 to 20. The adding means 22 inputs the output of the merging square root holding means 15 and the output of the digit alignment means 21, performs addition, and outputs 1303879120. Note that only when the partial square root is negative and the remainder is positive in the third iteration, the adding means 22 adds an initial carry to 20. In the digit adjustment shift number calculation means 9, the double exponent part processing means 5
A shift number 11 is output by adding a constant 4 to the bit number 7 of the double exponent part of the output. The digit adjustment means 24 receives an instruction of the shift number 11 from the digit adjustment shift number calculation means 9, replaces 236, which is the leading bit of the output of the addition means 18, with 0 and shifts it to the right by 11 bits. In the exponent/mantissa merging means 25, the output 74 of the double exponent part processing means 5
000000 and output 006070F2 of digit adjustment means 24
and outputs the final result 746070F2.

【0032】[0032]

【発明の効果】以上のように本発明は、剰余保持手段と
平方根の近似逆数を格納するテーブル情報格納手段と部
分平方根を求める乗算手段と剰余から反復計算で上位か
ら揃った併合平方根と部分平方根の積を求める(R−S
xT)演算手段を設けることにより、乗数のビット長と
して、二乗指数分割表現実数の仮数部の最大ビット長よ
りも小さい乗算器を使用して、開平演算を実行すること
ができる。なお、本実施例では説明を簡単にするために
、単精度の二乗指数分割表現実数を用いたので、本発明
の効果が充分でていないが、倍精度の二重指数分割表現
実数を用いた場合にはニュートン・ラプソン法では63
ビットx63ビットの乗算器を必要とするのに対し、本
発明による方法では63ビットx13ビットと63ビッ
トx17ビットの乗算器で充分である。これによりハー
ドウェアの物量の多大な増大を招くことなく、乗算命令
と開平演算命令が同時実行可能なデータ処理装置を提供
することができる。また、性能についても部分平方根間
でビットの重複を許容した開平演算装置はニュートン・
ラプソン法による開平演算装置と比較して遜色がない。 また、結果の平方根を丸めるためにガードビット、ラウ
ンドビット、スティキービットを使用する場合にはLS
B以下、1ビットずつ、ガードビット、ラウンドビット
とした後、残ったビットと剰余の各ビットの論理和をと
ると、スティキービットとなるので、ニュートン・ラプ
ソン法などと比較して検算の必要がないことも本発明の
第2の効果である。
As described above, the present invention provides a remainder holding means, a table information storage means for storing an approximate reciprocal of a square root, a multiplication means for calculating a partial square root, and a merging square root and a partial square root arranged from the upper order by iterative calculation from the remainder. Find the product of (R-S
xT) By providing the arithmetic means, the square root operation can be performed using a multiplier whose bit length of the multiplier is smaller than the maximum bit length of the mantissa part of the square exponential division representation real number. In this example, in order to simplify the explanation, a single-precision square-exponential partition representation real number is used, so the effect of the present invention is not sufficiently achieved. In this case, the Newton-Raphson method is 63
Whereas a bit by 63 bit multiplier is required, a 63 bit by 13 bit and a 63 bit by 17 bit multiplier are sufficient for the method according to the invention. As a result, it is possible to provide a data processing device that can simultaneously execute multiplication instructions and square root operation instructions without causing a large increase in the amount of hardware. In terms of performance, a square root arithmetic unit that allows bit duplication between partial square roots is Newtonian.
It is comparable to a square root calculation device using the Rapson method. Also, when using guard bits, round bits, and sticky bits to round the square root of the result, LS
After B, each bit is treated as a guard bit and a round bit, and then the remaining bits are logically summed with each bit of the remainder, resulting in a sticky bit, so it is necessary to perform a check in comparison with the Newton-Raphson method, etc. The second effect of the present invention is that there is no.

【図面の簡単な説明】[Brief explanation of drawings]

【図1】本発明の実施例における二重指数分割表現実数
開平演算装置のブロック図である。
FIG. 1 is a block diagram of a double exponential partition representation real number square root calculation device according to an embodiment of the present invention.

【図2】同実施例における各構成手段の出力を具体的な
数値例で示した図である。
FIG. 2 is a diagram showing specific numerical examples of outputs of each component means in the same embodiment.

【符号の説明】[Explanation of symbols]

1  入力レジスタ 2  例外検出手段 3  二重指数部長判定手段 4  二重指数部分離手段 5  二重指数部処理手段 6  リーディングビット付加手段 7  正規化シフト数算出手段 8  正規化手段 9  桁調整シフト数算出手段 10  シフタ 11,16,18  マルチプレクサ 12  テーブル情報格納手段 13  剰余保持手段 14  乗算手段 15  併合平方根保持手段 17  定数減算手段 19  被乗数生成手段 20  反転手段 21  桁合わせ手段 22  加算手段 23  (R+SxT+T)演算手段 24  桁調整手段 25  指数部・仮数部併合手段 1 Input register 2 Exception detection means 3 Double index length determination means 4 Double exponential separation means 5 Double exponent part processing means 6 Leading bit addition means 7 Normalization shift number calculation means 8 Normalization means 9 Digit adjustment shift number calculation means 10 Shifter 11, 16, 18 multiplexer 12 Table information storage means 13 Surplus holding means 14 Multiplication means 15 Merged square root holding means 17 Constant subtraction means 19 Multiplicand generation means 20 Reversing means 21 Digit alignment means 22 Addition means 23 (R+SxT+T) calculation means 24 Digit adjustment means 25 Exponent/mantissa merging means

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】  二重指数分割表現実数入力オペランド
に対して平方根を求める開平演算装置において、二重指
数部のビット数を判定する二重指数部長判定手段と、前
記二重指数部長判定手段の出力する二重指数部のビット
数により正規化シフト数を算出する正規化シフト数算出
手段と、前記二重指数部長判定手段の出力する二重指数
部のビット数により二重指数部と仮数部を分離する二重
指数部分離手段と、前記二重指数部分離手段の出力する
二重指数部を二重指数部のビット構成により処理する二
重指数部処理手段と、前記二重指数部処理手段の出力す
る二重指数部のビット数により仮数部の桁調整シフト数
を算出する桁調整シフト数算出手段と、前記二重指数部
分離手段の出力する仮数部にリーディングビットを付加
するリーディングビット付加手段と、前記リーディング
ビット付加手段の出力を前記正規化シフト数算出手段の
出力する正規化シフト数により左シフトする正規化手段
と、前記正規化手段の出力の上位ビットをアドレスとし
て平方根の近似逆数を索引するテーブル情報格納手段と
、平方根を上位より順に一定のビット数ずつ反復して求
める場合の剰余保持手段と、前記剰余保持手段から出力
される剰余と、前記テーブル情報格納手段から出力され
る平方根の近似逆数をそれぞれ被乗数、乗数として入力
して乗算を行なう乗算手段と、前記乗算手段の出力する
積の上位を部分平方根として各反復での平方根を併合し
た併合平方根保持手段と、前記乗算手段の出力する部分
平方根をビット毎に反転する反転手段と、前記併合平方
根保持手段の出力を左に1ビットシフトして前記乗算手
段の出力する部分平方根とで被乗数を生成する被乗数生
成手段と、前記剰余保持手段の出力する剰余(R)と、
前記被乗数生成手段の出力する被乗数(S)と、更に前
記反転手段の出力する乗数(T)を入力して、(R+S
xT)または(R+SxT+T)の演算を行なう(R+
SxT+T)演算手段と、前記(R+SxT+T)演算
手段の出力を部分平方根のビット長から隣接する部分平
方根間で重複するビット長を引いた数だけ左にシフトす
るシフト手段と、前記剰余保持手段の入力として前記正
規化手段の出力と前記シフト手段の出力を選択するマル
チプレクサと、前記乗算手段の出力する部分平方根のL
SBから1を引く定数減算手段と、前記乗算手段の出力
する部分平方根と前記定数減算手段の出力を選択して補
正部分平方根として出力するマルチプレクサと、前記併
合平方根保持手段から出力される併合平方根に対して、
前記マルチプレクサの出力する補正部分平方根を併合す
るための桁合わせを行なう桁合わせ手段と、前記併合平
方根と前記桁合わせ手段の出力を加算して更新された併
合平方根を出力する加算手段と、前記加算手段の出力す
る仮数部のリーディングビットを削除し、前記桁調整シ
フト数算出手段の出力する桁調整シフト数により右シフ
トする桁調整手段と、前記二重指数部処理手段の出力す
る二重指数部と、前記桁調整手段の出力する仮数部とを
加算し、最終結果を出力する 指数部・仮数部併合手段
とから構成されることを特徴とする二重指数分割表現実
数開平演算装置。
1. A square root arithmetic device for calculating the square root of a real number input operand representing a double exponent division representation, comprising: double exponent length determining means for determining the number of bits of a double exponent part; and said double exponent length determining means. A normalized shift number calculating means for calculating a normalized shift number based on the number of bits of the double exponent part to be output; and a double exponent part and a mantissa part based on the number of bits of the double exponent part output by the double exponent length determining means. double exponent part separation means for separating the double exponent part; double exponent part processing means for processing the double exponent part outputted by the double exponent part separation means according to the bit configuration of the double exponent part; and the double exponent part processing means. Digit adjustment shift number calculation means for calculating the number of digit adjustment shifts of the mantissa part based on the number of bits of the double exponent part output by the means; and a leading bit for adding leading bits to the mantissa output from the double exponent part separation means. adding means; normalizing means for left-shifting the output of the leading bit adding means according to the normalized shift number output from the normalized shift number calculating means; and square root approximation using the upper bits of the output of the normalizing means as an address. table information storage means for indexing reciprocal numbers; remainder holding means for repeatedly obtaining square roots by a certain number of bits starting from the highest order; a remainder outputted from said remainder holding means; and a remainder outputted from said table information storage means. a multiplier for performing multiplication by inputting approximate reciprocals of square roots as multiplicands and multipliers, respectively; merging square root holding means for merging the square roots of each iteration with the higher order of the product output from the multiplication means as a partial square root; an inverting means for bit by bit inverting the partial square root outputted by the means; and a multiplicand generating means for shifting the output of the merging square root holding means to the left by one bit and generating a multiplicand from the partial square root outputted from the multiplying means; a remainder (R) outputted by the remainder holding means;
By inputting the multiplicand (S) outputted by the multiplicand generating means and the multiplier (T) outputted by the inverting means, (R+S
xT) or (R+SxT+T) (R+
SxT+T) calculation means, a shift means for shifting the output of the (R+SxT+T) calculation means to the left by a number obtained by subtracting the overlapping bit length between adjacent partial square roots from the bit length of the partial square root, and an input of the remainder holding means. a multiplexer that selects the output of the normalization means and the output of the shift means as L of the partial square root output of the multiplication means;
a constant subtraction means that subtracts 1 from SB; a multiplexer that selects the partial square root output from the multiplication means and the output of the constant subtraction means and outputs it as a corrected partial square root; and a merged square root output from the merged square root holding means. for,
digit alignment means for performing digit alignment for merging corrected partial square roots output by the multiplexer; addition means for adding the merged square root and the output of the digit alignment means to output an updated merged square root; digit adjustment means for deleting the leading bit of the mantissa output by the means and shifting it to the right according to the digit adjustment shift number output from the digit adjustment shift number calculation means; and a double exponent part output from the double exponent part processing means. and a mantissa output from the digit adjustment means, and exponent/mantissa merging means for outputting a final result.
JP13262991A 1991-06-04 1991-06-04 Square foot calculating device Pending JPH04358224A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP13262991A JPH04358224A (en) 1991-06-04 1991-06-04 Square foot calculating device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13262991A JPH04358224A (en) 1991-06-04 1991-06-04 Square foot calculating device

Publications (1)

Publication Number Publication Date
JPH04358224A true JPH04358224A (en) 1992-12-11

Family

ID=15085796

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13262991A Pending JPH04358224A (en) 1991-06-04 1991-06-04 Square foot calculating device

Country Status (1)

Country Link
JP (1) JPH04358224A (en)

Similar Documents

Publication Publication Date Title
Zhang et al. Efficient multiple-precision floating-point fused multiply-add with mixed-precision support
EP0938042A2 (en) High accuracy estimates of elementary functions
EP3374853A1 (en) Multiplication of first and second operands using redundant representation
US7962543B2 (en) Division with rectangular multiplier supporting multiple precisions and operand types
JPH02196328A (en) Floating point computing apparatus
US20210182026A1 (en) Compressing like-magnitude partial products in multiply accumulation
WO2017081435A1 (en) Lane position information for processing of vector
JP5640081B2 (en) Integer and multiply-add operations with saturation
WO2017081434A1 (en) Redundant representation of numeric value using overlap bits
JP4476210B2 (en) Data processing apparatus and method for obtaining initial estimated value of result value of reciprocal operation
JP4273071B2 (en) Divide and square root calculator
US5278782A (en) Square root operation device
JPH04355827A (en) Square root extracting operation device
Ercegovac et al. Very high radix division with selection by rounding and prescaling
JP2822399B2 (en) Logarithmic function arithmetic unit
US20090164544A1 (en) Dynamic range enhancement for arithmetic calculations in real-time control systems using fixed point hardware
KR100317767B1 (en) Floating point binary quad word format multiply instruction unit
Chu et al. Cost/performance tradeoff of n-select square root implementations
JPH04358224A (en) Square foot calculating device
JPH04172526A (en) Floating point divider
Jaiswal et al. Taylor series based architecture for quadruple precision floating point division
Hass Synthesizing optimal fixed-point arithmetic for embedded signal processing
US20140052767A1 (en) Apparatus and architecture for general powering computation
Gonzalez-Navarro et al. A binary integer decimal-based multiplier for decimal floating-point arithmetic
Doran Special cases of division