JP2580413B2 - Multiplication processing unit - Google Patents

Multiplication processing unit

Info

Publication number
JP2580413B2
JP2580413B2 JP3222085A JP22208591A JP2580413B2 JP 2580413 B2 JP2580413 B2 JP 2580413B2 JP 3222085 A JP3222085 A JP 3222085A JP 22208591 A JP22208591 A JP 22208591A JP 2580413 B2 JP2580413 B2 JP 2580413B2
Authority
JP
Japan
Prior art keywords
value
digit
circuit
carry
input
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
JP3222085A
Other languages
Japanese (ja)
Other versions
JPH0511981A (en
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.)
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 JP3222085A priority Critical patent/JP2580413B2/en
Publication of JPH0511981A publication Critical patent/JPH0511981A/en
Application granted granted Critical
Publication of JP2580413B2 publication Critical patent/JP2580413B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、LSI化に好適な高速
乗算処理装置に関するものであり、特に乗数をリコード
して部分積を生成する乗算処理装置に関するものであ
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a high-speed multiplication device suitable for LSI, and more particularly to a multiplication device for recoding a multiplier to generate a partial product.

【0002】[0002]

【従来の技術】乗算結果を丸め処理することによって精
度のよい繰り返し乗算が可能である。例えば、乗算結果
を次の乗算のオペランドとして取り込む繰り返し乗算を
考える。このとき乗数入力可能な桁数がn桁であるとす
ると、乗算結果はn桁以上になる。n桁以上の乗算結果
をn桁で切り捨てて、次の乗算のオペランドとして入力
すると、入力オペランド値は切り捨てられる前の乗算結
果と比べて、切り捨てられたオペランドの最下位桁の重
みを1とすれば、1未満の誤差が出て来る。これに対し
て最近接丸め処理を実行し、オペランドとして入力する
場合、誤差は最大1/2になる。即ち最近接丸め処理を
した場合には、次の乗算に入力されるオペランドが切り
捨てる場合に比べより正確になるため、精度のよい繰り
返し乗算が可能になる。
2. Description of the Related Art By performing rounding on a result of multiplication, accurate multiplication can be performed repeatedly. For example, consider a repetitive multiplication that takes in the multiplication result as the operand of the next multiplication. At this time, if the number of digits that can be input to the multiplier is n, the multiplication result is n or more. When the multiplication result of n or more digits is truncated to n digits and input as the operand of the next multiplication, the input operand value is set to 1 as the weight of the least significant digit of the truncated operand compared to the multiplication result before truncation. For example, an error of less than 1 appears. On the other hand, when the closest rounding process is executed and the result is input as an operand, the error is reduced to half at the maximum. That is, when the closest rounding processing is performed, the operand input to the next multiplication is more accurate than when the operand is truncated, so that iterative multiplication with high precision is possible.

【0003】以下に、乗算毎に丸め処理を実行する繰り
返し乗算を実現するための従来例について述べる。従来
用いられていた、各乗算毎に丸め処理を実行する繰り返
し乗算処理装置のブロック図を図9に示す。901は選
択ラッチ、902、903、904、905はそれぞれ
ラッチであって、二相クロックph1,ph2により動
作する。906は、選択ラッチ901にラッチされた2
進数の乗数を下位桁より2ビットずつの集合に分割し、
各々の集合を−2から2までの値にリコードする2ビッ
トブースリコード回路である。907は、ラッチ902
にラッチされた被乗数と2ビットブースリコード回路9
06より出力されたリコード値とを用い、部分積を生成
加算し、加算結果を例えば冗長2進数の中間結果の形で
ラッチ903に出力する部分積生成加算回路である。9
08は、冗長2進数から2進数に変換する2進数変換回
路である。909は、2進数変換回路908によって2
進数に変換された乗算結果をある桁までに丸め処理する
丸め処理回路である。
A conventional example for realizing a repetitive multiplication that executes a rounding process for each multiplication will be described below. FIG. 9 shows a block diagram of an iterative multiplication processing apparatus that conventionally performs a rounding process for each multiplication. Reference numeral 901 denotes a selection latch, and reference numerals 902, 903, 904, and 905 denote latches, which are operated by two-phase clocks ph1 and ph2. Reference numeral 906 denotes 2 latched by the selection latch 901
Divide the multiplier of the radix into a set of 2 bits from the lower digit,
A 2-bit Booth recoding circuit that recodes each set to a value between -2 and 2. 907 is a latch 902
Multiplied and 2-bit booth recode circuit 9 latched in
This is a partial product generation and addition circuit that generates and adds a partial product using the recoded value output from the output unit 06 and outputs the addition result to the latch 903 in the form of, for example, an intermediate result of a redundant binary number. 9
Reference numeral 08 denotes a binary conversion circuit that converts a redundant binary number into a binary number. 909 is converted by the binary number conversion circuit 908 into 2
This is a rounding circuit for rounding a multiplication result converted to a base number to a certain digit.

【0004】図9に述べた乗算処理装置を用い、例えば
(1)式に示すような乗算を実行する。 Pn =Pn-1 ×Qn-1 ・・・(1) 最初に、Pn-1 は、乗数として選択ラッチ901に入力
され、Qn-1 は、被乗数としてラッチ902に入力され
る。(1)式に示される乗算は、2ビットブースリコー
ド回路906、部分積生成加算回路907を通り、冗長
2進数の中間結果としてラッチ903に取り込まれる。
次のサイクルでは、この中間結果をラッチ904でラッ
チし、2進数変換回路908で2進数に変換する。その
後、丸め処理回路909である桁までに丸め処理され、
ラッチ905に入力される。そして、次のサイクルで丸
め処理された結果は選択ラッチ901に入力され、次の
乗算Pn ×Qn を実行する。この時、ラッチ902に
は、データQn が取り込まれているものとする。すなわ
ち、従来の乗算毎に丸め処理を実行する繰り返し乗算に
おいては、乗算毎に、2進数変換回路908と、丸め処
理回路909を使用していた。
Using the multiplication processing device shown in FIG. 9, for example, multiplication as shown in equation (1) is executed. P n = P n-1 × Q n-1 (1) First, P n-1 is input to the selection latch 901 as a multiplier, and Q n-1 is input to the latch 902 as a multiplicand. . The multiplication shown in the expression (1) passes through a 2-bit Booth recode circuit 906 and a partial product generation addition circuit 907 and is taken into a latch 903 as an intermediate result of a redundant binary number.
In the next cycle, the intermediate result is latched by the latch 904 and converted to a binary number by the binary number conversion circuit 908. After that, the data is rounded to a digit which is a rounding circuit 909,
The signal is input to the latch 905. Then, the result of the rounding process in the next cycle is input to the selection latch 901, and the next multiplication P n × Q n is executed. At this time, the latch 902, it is assumed that the data Q n are incorporated. That is, in the conventional repetitive multiplication in which the rounding process is performed for each multiplication, the binary conversion circuit 908 and the rounding circuit 909 are used for each multiplication.

【0005】次に、ある定数Aから乗数を減算した値と
被乗数を乗算し、乗算結果を次の乗算の乗数とする繰り
返し乗算を行う従来例について説明する。図10は、従
来用いられていた乗算処理装置である。図10の中で、
図9に使用されているブロックと同じブロックは同じ番
号にしてある。1001は、選択ラッチ901によって
選択された数値をある定数Aから減算する減算回路であ
る。
Next, a description will be given of a conventional example in which a value obtained by subtracting a multiplier from a certain constant A is multiplied by a multiplicand, and repetitive multiplication is performed using the multiplication result as a multiplier of the next multiplication. FIG. 10 shows a conventional multiplication processing device. In FIG.
The same blocks as those used in FIG. 9 have the same numbers. A subtraction circuit 1001 subtracts a numerical value selected by the selection latch 901 from a constant A.

【0006】以下に、図10に示す乗算処理装置を用
い、(2)式に示す、繰り返し乗算を実行する時の動作
について説明する。 Pn =(A−Pn-1 )×Qn-1 ・・・(2) 第1のサイクルでは、Pn-1 は、乗数として選択ラッチ
901に入力され、減算回路1001で(A−Pn-1
が実行され、2ビットブースリコード回路906に入力
される。一方Qn-1 は被乗数としてラッチ902に入力
され、部分積生成加算回路907で、乗数リコード値を
使用し部分積の生成加算が実行され、例えば冗長2進数
の中間結果を生成する。この中間結果は、ラッチ903
に取り込まれる。第2サイクルでは、この中間結果をラ
ッチ904でラッチし、2進数変換回路908で2進数
に変換する。そして丸め処理回路909によって有効桁
で丸め処理を行い、2進数乗算結果((A−Pn-1 )×
n-1 )をラッチ905にラッチする。第3サイクルで
は、選択ラッチ901は前のサイクルの乗算結果を選択
し、第1サイクルと同様に乗算を実行する。この後、第
2サイクル、第3サイクルの動作を繰り返して、第nサ
イクル目(nは偶数)において、2進数乗算結果を出力
する。
Hereinafter, the operation of the multiplication processing apparatus shown in FIG. 10 when iteratively performing multiplication as shown in equation (2) will be described. P n = (A−P n−1 ) × Q n−1 (2) In the first cycle, P n−1 is input to the selection latch 901 as a multiplier, and (A−P n−1 ) P n-1 )
Is executed and input to the 2-bit Booth recode circuit 906. On the other hand, Q n-1 is input to the latch 902 as the multiplicand, and the partial product generation and addition circuit 907 performs generation and addition of the partial product using the multiplier recoded value, thereby generating an intermediate result of, for example, a redundant binary number. This intermediate result is the result of latch 903
It is taken in. In the second cycle, the intermediate result is latched by the latch 904 and converted to a binary number by the binary number conversion circuit 908. Then, the rounding circuit 909 performs rounding processing with significant digits, and performs a binary multiplication result ((A−P n−1 ) ×
Q n-1 ) is latched in the latch 905. In the third cycle, the selection latch 901 selects the result of the multiplication in the previous cycle, and executes the multiplication in the same manner as in the first cycle. Thereafter, the operations of the second cycle and the third cycle are repeated, and the binary multiplication result is output in the n-th cycle (n is an even number).

【0007】以上述べたように、ある定数Aから乗数を
減算した値と被乗数とを乗算し、乗算結果を次の乗算の
乗数とする繰り返し乗算においては、乗算毎に、定数か
ら乗数を減算する減算回路を使用していた。
As described above, in a repetitive multiplication in which a value obtained by subtracting a multiplier from a constant A and a multiplicand and the multiplication result is a multiplier of the next multiplication, the multiplier is subtracted from the constant for each multiplication. A subtraction circuit was used.

【0008】また、図13は従来用いられていた、ある
定数Aから前の乗算により得られた中間積(冗長2進
数)を減算した値と被乗数を乗算する繰り返し乗算処理
装置のブロック図である。1301は冗長2進数と乗数
を選択し、クロックph1でラッチする選択ラッチであ
る。1302、1303、1304、1305はそれぞ
れクロックph1、ph2で動作するラッチである。1
306は冗長2進数2ビットブースリコード回路130
7の出力値とラッチ1302の出力をもとに部分積を生
成し加算し、冗長2進数形の中間積を出力する部分積生
成回路である。1307は冗長2進数加減算回路131
0の出力値を下位から2桁づつグループ化し、それぞれ
−2〜2までの値にリコードする冗長2進数2ビットブ
ースリコード回路である。1308はラッチ1304か
ら出力される冗長2進数中間積を2進数の乗算結果に変
換する2進数変換回路である。1309は、2進数変換
回路1308から出力された乗算結果を丸め処理し正規
化する丸め処理回路である。1310は、選択ラッチ1
301でラッチされた冗長2進数値とある定数Aを冗長
2進数加算する冗長2進数加減算回路である。但し、冗
長2進数加減算回路1310に2進数が入力された場合
は、ある定数Aは0にセットされるものとする。
FIG. 13 is a block diagram of a conventional multiplication apparatus for multiplying a multiplicand by a value obtained by subtracting an intermediate product (redundant binary number) obtained by a previous multiplication from a certain constant A. . Reference numeral 1301 denotes a selection latch for selecting a redundant binary number and a multiplier and latching the same with a clock ph1. Latches 1302, 1303, 1304, and 1305 operate at clocks ph1 and ph2, respectively. 1
306 is a redundant binary 2-bit Booth recode circuit 130
This is a partial product generation circuit that generates and adds a partial product based on the output value of 7 and the output of the latch 1302, and outputs a redundant binary intermediate product. 1307 is a redundant binary number addition / subtraction circuit 131
This is a redundant binary 2-bit Booth recode circuit that groups output values of 0 into groups of two digits from the bottom, and recodes them into values of −2 to 2, respectively. Reference numeral 1308 denotes a binary conversion circuit for converting a redundant binary intermediate product output from the latch 1304 into a binary multiplication result. Reference numeral 1309 denotes a rounding circuit for rounding and normalizing the multiplication result output from the binary number conversion circuit 1308. 1310 is a selection latch 1
This is a redundant binary addition / subtraction circuit for adding a redundant binary number to a redundant binary value latched at 301 and a constant A. However, when a binary number is input to the redundant binary number addition / subtraction circuit 1310, a certain constant A is set to 0.

【0009】次に、図13に示される乗算処理装置を用
いて、ある定数Aから前の乗算により得られた中間積
(冗長2進数)を減算した値と被乗数を乗算する動作に
ついて説明する。(2)式において、Pn-1 は前のサイ
クルで乗算の結果得られた冗長2進数形の中間結果であ
る。この中間結果は選択ラッチ1301により冗長2進
数加減算回路1310に入力される。合わせて、冗長2
進数加減算回路1310のもう片方の入力値としてある
定数Aが入力される。ここで、(2)式における(A−
n-1 )が実行される。また同時に、ラッチ1302に
は被乗数Qn-1 が入力され、乗算(A−Pn-1 )×Q
n-1 が実行される。
Next, the operation of multiplying the multiplicand by a value obtained by subtracting the intermediate product (redundant binary number) obtained by the previous multiplication from a certain constant A using the multiplication processing apparatus shown in FIG. 13 will be described. In equation (2), P n-1 is a redundant binary intermediate result obtained as a result of the multiplication in the previous cycle. This intermediate result is input to the redundant binary number addition / subtraction circuit 1310 by the selection latch 1301. Together, redundant 2
A constant A is input as the other input value of the radix addition / subtraction circuit 1310. Here, (A−
P n-1 ). At the same time, the multiplicand Q n−1 is input to the latch 1302, and the multiplication (A−P n−1 ) × Q
n-1 is executed.

【0010】以上述べた、前のサイクルで乗算結果を中
間結果の形で繰り返し乗算する乗算処理装置において
は、ある定数Aから前のサイクルの乗算結果を減算する
ために冗長2進数加算回路が必要になっていた。このた
め、乗算の実行速度が遅くなり、またハードウェア量が
多くなるという問題があった。
In the above-described multiplication processing apparatus for repeatedly multiplying the multiplication result in the form of an intermediate result in the previous cycle, a redundant binary number addition circuit is required to subtract the multiplication result of the previous cycle from a constant A. Had become. For this reason, there has been a problem that the execution speed of the multiplication becomes slow and the amount of hardware increases.

【0011】以上3つの従来例では、中間結果は符号付
きディジット数の1つである冗長2進数の場合に付いて
述べたが、桁上げ保存の形で中間結果を出力するような
乗算回路や高基数を扱った繰り返し乗算回路において
も、同様な構成となる。
In the above three conventional examples, the case where the intermediate result is a redundant binary number which is one of the signed digits is described. However, a multiplication circuit or the like which outputs the intermediate result in the form of carry-save is described. The same configuration applies to a repetitive multiplication circuit that handles high radix.

【0012】[0012]

【発明が解決しようとする課題】従来の乗算毎に丸め処
理を実行する繰り返し乗算処理装置においては、上記し
たように、乗算毎に2進数変換回路と丸め処理回路を使
用して、中間結果を2進数変換し丸め処理をしなくては
ならない。そのため繰り返し乗算速度が遅く、回路規模
も大きくなり、更には、消費電力も増大するという問題
があった。また、ある定数Aから乗数を減算した値と被
乗数を乗算し、乗算結果を次の乗算の乗数とする従来の
繰り返し乗算においては、上記したように、乗算毎に減
算回路を使用して、定数から乗算結果を減算しなくては
ならない。従って繰り返し乗算速度が遅く、回路規模も
大きくなり、更には消費電力も増大するという問題があ
った。
In a conventional iterative multiplication processing device which performs a rounding process for each multiplication, as described above, a binary conversion circuit and a rounding circuit are used for each multiplication to convert an intermediate result. It must be converted to a binary number and rounded. Therefore, there is a problem that the repetition multiplication speed is slow, the circuit scale is large, and the power consumption is also increased. Further, in a conventional repetitive multiplication in which a value obtained by subtracting a multiplier from a certain constant A and a multiplicand and the multiplication result is a multiplier of the next multiplication, as described above, a subtraction circuit is used for each multiplication to use a constant. Must be subtracted from the result of the multiplication. Therefore, there is a problem that the repetition multiplication speed is slow, the circuit scale is large, and the power consumption is also increased.

【0013】本発明は、上記従来の問題を解決し、高速
で、回路規模が小さく、しかも消費電力の少ない繰り返
し乗算に適した乗算処理装置を提供することを目的とす
るものである。
SUMMARY OF THE INVENTION An object of the present invention is to solve the above-mentioned conventional problems and to provide a multiplication processing apparatus suitable for repetitive multiplication at high speed, with a small circuit scale, and with low power consumption.

【0014】[0014]

【課題を解決するための手段】本願の請求項1の発明
は、基数ΥのM桁の数値をN桁の連続した集合に分割し
(M>=N)、該集合を入力とし、該集合の数値Zgi
を中間和Siと中間桁上げCiに分割する複数の中間和
中間桁上げ生成手段、中間和Siと1つ下位の集合から
の中間桁上げCi−1を加算するリコード値生成手段を
有するリコード回路と、中間桁上げCiと同じフォーマ
ットの複数の数値の中から1つを選択し、選択された値
をリコード値生成手段の1つ下位集合からの中間桁上げ
Ci−1として入力する選択回路と、リコード値生成手
段より出力されるリコード値に基づき被乗数との部分積
を生成加算してリコード回路に出力する部分積生成加算
回路と、を具備することを特徴とするものである。
According to the invention of claim 1 of the present application, an M-digit numerical value of a radix Υ is divided into a continuous set of N digits (M> = N), the set is input, and the set Numeric value of Zgi
A plurality of intermediate sum intermediate carry generating means for dividing the intermediate sum into an intermediate carry Si and an intermediate carry Ci, and a recode value generating means for adding the intermediate sum Si and an intermediate carry Ci-1 from a set one level lower than the intermediate sum Si And a selection circuit for selecting one of a plurality of numerical values in the same format as the intermediate carry Ci and inputting the selected value as an intermediate carry Ci-1 from one subset of the recode value generating means. And a partial product generation and addition circuit for generating and adding a partial product with the multiplicand based on the recode value output from the recode value generation means and outputting the product to the recode circuit.

【0015】本願の請求項6の発明は、請求項1の乗算
処理装置において、中間和中間桁上げ生成手段は、基数
2の符号付きディジット数を2桁の連続した集合に分割
し、該集合の上位桁が1であるという信号Qi と一つ下
位集合からの信号Qi-1 を使用し、該集合値Zgi をZ
i =4×Ci +Si に従い、中間和Si 、中間桁上げ
i に分割し、さらにRi =Si +Qi-1 ,Bi =Ci
+Qi バーに従い第2の中間和Ri 、第2の中間桁上げ
i を生成するものであり、リコード値生成手段は、第
2の中間和Ri と一つ下位集合からの第2の中間桁上げ
i-1 を使用し、Zi =Ci-1 +Si =Bi-1 +Ri
1に従い、リコード値Zi を計算することを特徴とする
ものである。
According to a sixth aspect of the present invention, in the multiplication processing apparatus of the first aspect, the intermediate sum intermediate carry generating means divides the radix-2 signed digit number into a continuous two-digit set, and significant digit using the signal Q i-1 from one subset and a signal Q i that it is 1, the set value Zg i Z of
According to g i = 4 × C i + S i , the data is divided into an intermediate sum S i and an intermediate carry C i , and further, R i = S i + Q i -1 and B i = C i.
+ Q i bar to generate a second intermediate sum R i and a second intermediate carry B i , and the recode value generation means includes a second intermediate sum R i and a second intermediate sum R i from a subset. Using an intermediate carry B i−1 , Z i = C i−1 + S i = B i−1 + R i
1, wherein the recoding value Z i is calculated.

【0016】本願の請求項7の発明は、請求項1の乗算
処理装置において、2−iの重みを持つ桁に非零の値を
持ち、2−(i+1)の重みを持つ桁から下位が0であ
る2進数で表現された定数Aから、冗長2進数で表現さ
れたある数値B(但し数値Bは2進数に変換するとBb
±α・2−mに等しい。ここでBbは2−mの重みを持
つ桁に非零の値を持ち、2−(m+1)の重みを持つ桁
から下位が0である定数。1≦α<2、i,m<j)な
る数を減算しリコード回路に入力する乗算処理装置であ
って、Lをi,mのうち大きい方の値とすれば、最上位
から2−L桁目までA−Bbの2−Lから上位の値を設
定し、2−(L+1)桁目から2−(k)桁目まで数値
0を設定し(L≦K≦j−l)、2−(k+1)桁目に
は、ある数値Bの2−(k)桁目の値が数値0以外であ
れば数値Bの2−(k+1)桁の値、数値0であればそ
の符号反転値を設定し、2−(k+2)桁目以下すべて
の桁には、ある数値Bの2−(k+2)桁目以下の符号
反転値を設定し、リコード回路の入力とする入力選択手
段を具備することを特徴とするものである。
According to a seventh aspect of the present invention, in the multiplication processing device of the first aspect, the digit having the weight of 2-i has a non-zero value, and the lower order from the digit having the weight of 2- (i + 1). From a constant A expressed by a binary number which is 0, a certain numerical value B expressed by a redundant binary number (however, when the numerical value B is converted into a binary number, Bb
It is equal to ± α · 2-m. Here, Bb is a constant having a non-zero value in a digit having a weight of 2-m and a lower order being 0 from a digit having a weight of 2- (m + 1). A multiplication processing device for subtracting a number 1 ≦ α <2, i, m <j) and inputting the result to a recoding circuit, where L is the larger value of i and m; A higher value from 2-L of A-Bb is set up to the 2nd digit, and a numerical value 0 is set up from the 2- (L + 1) th digit to the 2- (k) th digit (L ≦ K ≦ j−1), 2 The-(k + 1) digit is the value of the 2- (k + 1) digit of the numerical value B if the value of the 2- (k) digit of the numerical value B is other than the numerical value 0, and the sign-inverted value of the numerical value B if the numerical value is 0 And input selection means for setting the sign-inverted value of the 2- (k + 2) -th digit or less of a certain numerical value B to all digits below the 2- (k + 2) -th digit and using the inverted value as an input to the recode circuit. It is characterized by the following.

【0017】[0017]

【作用】本願の請求項1の発明は、上記した構成によ
り、リコード回路下位からの桁上げとして、選択回路に
より選択されたある数値を入力することで、リコード回
路入力数値と下位からの桁上げ数値を加算した数値をリ
コードする。これにより、乗算処理装置では、リコード
回路入力数値と前記下位からの桁上げ数値を加算した数
値と、被乗数の乗算が実行される。又請求項7及び9の
発明では、入力選択手段を設けることによって定数Aか
ら定数Bを減算し、リコード回路に入力することによっ
て繰り返し乗算を行えるようにしている。こうすれば特
に減算回路を設ける必要がなく、乗算処理を高速に行う
ことができる。
According to the first aspect of the present invention, by inputting a numerical value selected by the selection circuit as a carry from the lower part of the recode circuit, the carry value from the lower part of the recode circuit and a carry from the lower part are input. Recode the numerical value obtained by adding the numerical values. Thus, in the multiplication processing device, the multiplication of the multiplicand and the numerical value obtained by adding the input value of the recoding circuit and the carry value from the lower order is performed. According to the seventh and ninth aspects of the present invention, a constant B is subtracted from the constant A by providing input selection means, and the result is input to a recoding circuit so that multiplication can be performed repeatedly. In this case, there is no need to provide a subtraction circuit, and the multiplication process can be performed at high speed.

【0018】[0018]

【実施例】まず、本発明の一実施例である、乗算毎に中
間結果をリコード回路で丸め処理する繰り返し乗算を行
う演算回路について説明する。図1は、乗算の中間結果
Xを乗数として入力する時の乗数リコード回路及び桁上
げ生成回路のブロック図である。乗数リコード回路の基
本単位101は、乗数Xを2桁ずつの集合に分割しこれ
をリコードする回路で、中間和中間桁上げ生成回路10
2とリコード値生成回路103により構成される。中間
和中間桁上げ生成回路102は、入力数Xi+1 ,Xi
j番目の集合とし、この集合の持つ値をZgj とした
時、Zgj =22 ×Cj +Sj に従い、中間和Sj と中
間桁上げCj に分割する回路である。リコード値生成回
路103は、先に述べた中間和Sj と一つ下位の集合か
らの中間桁上げCj-1 を加算し、リコード値Zj を生成
する回路である。選択回路104は、0値生成回路10
5より出力されたCj =0に相当する数値と、丸め桁上
げ生成回路106により出力された丸めによる桁上げを
選択する回路である。0値生成回路105は、乗数リコ
ード回路の基本単位101に入力される中間桁上げC
j-1 =0に相当する数値を生成する回路である。丸め桁
上げ生成回路106は、Xi 以下の桁の値(Xi ,X
i-1 ,Xi-2 ・・・)を使用し、最近接丸めによる桁上
げを中間桁上げCj-1 のフォーマットに従い生成する回
路である。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS First, a description will be given of an arithmetic circuit for performing repetitive multiplication in which an intermediate result is rounded by a recoding circuit for each multiplication, according to one embodiment of the present invention. FIG. 1 is a block diagram of a multiplier recoding circuit and a carry generation circuit when the intermediate result X of the multiplication is input as a multiplier. The basic unit 101 of the multiplier recode circuit is a circuit that divides the multiplier X into sets of two digits and recodes the set. The intermediate sum intermediate carry generation circuit 10
2 and a recode value generation circuit 103. The intermediate sum intermediate carry generation circuit 102 sets the number of inputs X i + 1 , X i to the j-th set and sets the value of this set to Zg j , according to Zg j = 2 2 × C j + S j . This is a circuit for dividing into an intermediate sum S j and an intermediate carry C j . Recode value generating circuit 103 adds the intermediate carry C j-1 from the set of intermediate sum S j and one lower previously described, is a circuit that generates a recoded value Z j. The selection circuit 104 includes the 0 value generation circuit 10
This circuit selects a numerical value corresponding to C j = 0 output from 5 and a carry by rounding output from the round carry generating circuit 106. The 0-value generation circuit 105 outputs the intermediate carry C input to the basic unit 101 of the multiplier recoding circuit.
This is a circuit for generating a numerical value corresponding to j-1 = 0. Rounding carry generating circuit 106, X i of decimal values (X i, X
i-1 , X i-2 ...), and generates a carry due to the nearest rounding in accordance with the format of the intermediate carry C j-1 .

【0019】図2は、図1に示される回路を使用した場
合の繰り返し乗算回路のブロック図である。201は選
択ラッチ、202、203、204、205はそれぞれ
ラッチである。それぞれのラッチは、二相クロックph
1,ph2により動作する。乗数リコード回路207、
桁上げ生成回路210は、図1に示した回路である。2
06は、ラッチ202にラッチされた被乗数と乗数リコ
ード回路207より出力されたリコード値を用い、部分
積を生成加算し、中間結果の形で出力する部分積生成加
算回路である。208は、中間結果を2進数に変換する
2進数変換回路である。209は、2進数変換回路20
8によって2進数に変換された乗算結果をある桁までに
丸め処理する丸め処理回路である。
FIG. 2 is a block diagram of an iterative multiplication circuit when the circuit shown in FIG. 1 is used. 201 is a selection latch, and 202, 203, 204 and 205 are latches, respectively. Each latch is a two-phase clock ph
1, ph2. Multiplier recode circuit 207,
The carry generation circuit 210 is the circuit shown in FIG. 2
Reference numeral 06 denotes a partial product generation / addition circuit that generates and adds a partial product using the multiplicand latched by the latch 202 and the recode value output from the multiplier recode circuit 207, and outputs the result as an intermediate result. Reference numeral 208 denotes a binary number conversion circuit that converts the intermediate result into a binary number. 209 is a binary number conversion circuit 20
This is a rounding circuit for rounding the multiplication result converted into a binary number by 8 to a certain digit.

【0020】次に、図1、図2に示される回路を用い、
(1)式に示される繰り返し乗算を実行する事を考え
る。最初に、Pn-1 は、乗数として選択ラッチ201に
入力され、Qn-1 は、被乗数としてラッチ202に入力
されるものとする。(1)式に示される乗算は、図1の
乗数リコード回路207、部分積生成加算回路206を
通り、中間結果としてラッチ203に取り込まれる。こ
の時、乗数リコード回路207では、下位からの桁上げ
として、0値生成回路105の出力値を選択入力する。
次のサイクルでは、この中間結果Pn-1 ×Qn-1 を選択
ラッチ201でラッチし、乗数リコード回路207でリ
コードする。この時、選択回路104は下位からの桁上
げとして丸め桁上げ生成回路106の出力値を選択す
る。このことにより、リコード回路207において、丸
めによる桁上げと丸められる桁より上位の値の加算がリ
コード回路で実現される。すなわち中間結果Pn-1 ×Q
n-1 は、乗数リコード回路207に入力された時、リコ
ードされると同時に丸め処理される。また同時に、ラッ
チ202にはQn が入力されており、次の乗算Pn ×Q
n が実行される。そして何回かこの繰り返し乗算が実行
された後、最後に2進数の結果を求める時、中間結果は
ラッチ204に取り込まれ、2進数変換回路208で変
換された後、丸め処理回路209で丸め処理され、2進
数の結果が得られる。
Next, using the circuits shown in FIGS. 1 and 2,
Consider performing the repetitive multiplication shown in equation (1). First, it is assumed that P n-1 is input to the selection latch 201 as a multiplier, and Q n-1 is input to the latch 202 as a multiplicand. The multiplication represented by the expression (1) passes through the multiplier recoding circuit 207 and the partial product generation addition circuit 206 in FIG. 1 and is taken into the latch 203 as an intermediate result. At this time, the multiplier recode circuit 207 selects and inputs the output value of the 0 value generation circuit 105 as a carry from the lower order.
In the next cycle, the intermediate result P n−1 × Q n−1 is latched by the selection latch 201 and recoded by the multiplier recode circuit 207. At this time, the selection circuit 104 selects the output value of the round carry generation circuit 106 as the carry from the lower order. Thus, in the recode circuit 207, carry by rounding and addition of a value higher than the digit to be rounded are realized by the recode circuit. That is, the intermediate result P n-1 × Q
When n-1 is input to the multiplier recode circuit 207, it is recoded and rounded at the same time. At the same time, Q n is input to the latch 202, and the next multiplication P n × Q
n is executed. When the binary result is finally obtained after the repetitive multiplication is performed several times, the intermediate result is taken into the latch 204, converted by the binary number conversion circuit 208, and then rounded by the rounding circuit 209. And a binary result is obtained.

【0021】以上述べたように、本実施例では、乗算の
中間結果を用い繰り返し乗算を実行し、さらに、この中
間結果の丸め処理を乗数リコード回路で実行すること
で、高速に繰り返し乗算を実行している。
As described above, in this embodiment, the multiplication is repeatedly performed using the intermediate result of the multiplication, and the intermediate result is rounded by the multiplier recoding circuit, whereby the multiplication is repeatedly performed at high speed. doing.

【0022】次に、本発明を使用した第1の実施例を、
図3を使用して説明する。図3は本発明の一実施例であ
る入力が冗長2進数の場合の2ビットブースのリコード
回路である。各桁の冗長2進数値Xは(表1)に示され
るように2ビット(Xp,Xm)でコーディングされて
いるとする。
Next, a first embodiment using the present invention will be described.
This will be described with reference to FIG. FIG. 3 shows a 2-bit booth recoding circuit according to an embodiment of the present invention when the input is a redundant binary number. It is assumed that the redundant binary value X of each digit is coded with 2 bits (Xp, Xm) as shown in (Table 1).

【表1】 [Table 1]

【0023】(表1)で、(Xp,Xm)=(1,1)
は使用禁止である。冗長2進数2ビットブースリコード
回路の基本単位301は、連続した2桁の冗長2進数を
入力し、−2から2までの数値にリコードする回路であ
る。選択回路302は、2つの入力された2進数から1
つの2進数を選択する回路である。丸め桁上げ生成回路
303は、入力されたデータを使用し、丸めによる桁上
げを生成する回路である。0値生成回路304は、冗長
2進数2ビットブースリコード回路の基本単位301の
下位桁からの桁上げが”0”になるようなBj-1 バー,
j-1 バーを生成する回路である。これは、繰り返し乗
算第1サイクル目に、リコード回路の下位桁からの桁上
げを”0”にするためのものである。すなわち、図3に
示す実施例では、冗長2進数2ビットブースリコード回
路の基本単位301の下位からの桁上げとして、X
i (Xpi ,Xmi )桁までに丸めるために生ずる丸め
による桁上げ値(丸め桁上げ生成回路303の出力値)
を入力するか、”0”値(0値生成回路304の出力
値)を入力するかを、選択回路302を用い選択し入力
している。以下に、上記した各部分の構成について述べ
る。
In (Table 1), (Xp, Xm) = (1, 1)
Is prohibited. The basic unit 301 of the redundant binary number 2-bit Booth recode circuit is a circuit that receives a continuous two-digit redundant binary number and recodes it into a numerical value from -2 to 2. The selection circuit 302 calculates 1 from two input binary numbers.
This is a circuit for selecting two binary numbers. The round carry generation circuit 303 is a circuit that generates carry by rounding using input data. The 0-value generation circuit 304 outputs a B j-1 bar such that the carry from the lower digit of the basic unit 301 of the redundant binary 2-bit Booth recode circuit becomes “0”.
This is a circuit for generating the Q j-1 bar. This is to set the carry from the lower digit of the recoding circuit to "0" in the first cycle of the repetitive multiplication. That is, in the embodiment shown in FIG. 3, X is used as a carry from the lower end of the basic unit 301 of the redundant binary 2-bit Booth recode circuit.
i (Xp i , Xm i ) The carry value due to rounding generated to round to the digit (the output value of the round carry generation circuit 303).
Or a value “0” (the output value of the 0 value generation circuit 304) is selected and input using the selection circuit 302. Hereinafter, the configuration of each part described above will be described.

【0024】2ビットブースリコード回路の基本単位3
01を構成するための真理値表を図4に示す。 但しXi ,Xi+1 :入力数 Qj :Xi+1 が”1” Qj-1 :Xi-1 が”1” Cj :中間桁上げ Sj :中間和 Bj :Cj +Qj j :Sj +Qj-1 バー Xi 、Xi+1 は、入力値Xの2i 桁、2i+1 桁の値であ
る。この(Xi ,Xi+1 )の集合をj番目の集合である
とし、この集合の持つ値をZoj とする。リコードの為
の第1の手段として、前記j番目の集合を、この集合か
らの中間桁上げCj とこの集合の中間和Sj に分割す
る。ただし、中間桁上げCj は、−1から1までの値、
中間和Sj は、−2から2までの値をとるものとする。
すると、Zoj とCj とSj の関係は(3)式に示すよ
うになる。 Zoj =22 ×Cj +Sj =4×Cj +Sj ・・・(3) 例えば、Zoj =3((Xi+1 ,Xi )=(1,1))
の場合、(Cj ,Sj )=(1,−1)になる。しか
し、Zoj =2、−2((Xi+1 ,Xi )=(1,
0),(−1,0))の場合(Cj ,Sj )の組合せと
して2通りの取り方があるため、上記のように一意には
決まらない。この場合、下位グループからの桁上げ情報
を基に決定する。Qj は、j番目の集合内の上位桁の値
(Xi+1 )が、”1”であるという信号である。すなわ
ち、図4を参照すると、Qj =1は、その集合からCj
として、”1”または、”0”が上位集合へ上がるとい
うことを示している。また、Qj =0は、Cj とし
て、”0”または”−1”が上がるということを示して
いる。たとえば、Zoj =−2((Xi+1 ,Xi )=
(−1,0))の場合、(Cj ,Sj )=(0,−
2),(−1,2)の2通りの取り方がある。Qj-1
1の場合、Cj-1 =0または1であるから、Sj が負の
値である(Cj ,Sj )=(0,−2)を採用すること
にする。このことにより、次に示す第2の手段でCj-1
+Sj の加算値が−2から2までの数値範囲を越えない
ようになる。この様に一つ下位集合からのQj-1 を使用
し全ての場合の(Cj ,Sj )が決定される。
Basic unit 3 of 2-bit booth recoding circuit
FIG. 4 shows a truth table for constructing 01. However X i, X i + 1: Number of inputs Q j: X i + 1 is "1" Q j-1: X i-1 is "1" C j: intermediate carry S j: intermediate sum B j: C j + Q j R j: S j + Q j-1 bar X i, X i + 1 is, 2 i digit of the input value X, which is 2 i + 1 digit values. The set of (X i , X i + 1 ) is the j-th set, and the value of this set is Zo j . As a first means for recoding, the j-th set is divided into an intermediate carry C j from this set and an intermediate sum S j of this set. However, the intermediate carry C j is a value from -1 to 1,
The intermediate sum Sj takes a value from -2 to 2.
Then, the relationship between Zo j , C j and S j is as shown in equation (3). Zoj = 2 2 × C j + S j = 4 × C j + Sj ··· (3) for example, Zo j = 3 ((X i + 1, X i) = (1,1))
In the case of (C j , S j ) = (1, −1). However, Zo j = 2, -2 ( (X i + 1, X i) = (1,
0), (−1, 0)), there are two ways of taking the combination of (C j , S j ), so that the combination is not uniquely determined as described above. In this case, the determination is made based on the carry information from the lower group. Q j is a signal indicating that the value of the upper digit (X i + 1 ) in the j-th set is “1”. That is, referring to FIG. 4, Q j = 1 corresponds to C j from the set.
Indicates that “1” or “0” rises to a higher set. Further, Q j = 0 indicates that “0” or “−1” increases as C j . For example, Zo j = -2 ((X i + 1, X i) =
(-1, 0)), (C j , S j ) = (0, −
2) and (−1, 2). Q j-1 =
In the case of 1, since C j-1 = 0 or 1, S j is a negative value, and (C j , S j ) = (0, -2) is adopted. As a result, C j-1 can be obtained by the following second means.
The added value of + S j does not exceed the numerical range from -2 to 2. Thus, (C j , S j ) is determined for all cases using Q j-1 from one subset.

【0025】しかしこのままでは、Cj (−1から1)
を表現するのに2ビット、Sj (−2から2)を表現す
るのに3ビットの信号が必要であり、回路が複雑にな
る。回路を簡単にするため、ここでは(4)式に示すよ
うに、中間桁上げCj の代わりにBj ,中間桁上げSj
の代わりにRj を使用する。
However, as it is, C j (−1 to 1)
, And a 3-bit signal are required to represent S j (−2 to 2), which complicates the circuit. In order to simplify the circuit, as shown in equation (4), instead of the intermediate carry C j , B j and the intermediate carry S j are used.
Use R j instead of

【数1】 (Equation 1)

【0026】(4)式に従いBj ,Rj を求めると、図
4に示すように、Bj は0または1、Rj は、2、1、
0、−1となる。すなわち、Bj は1ビット、Rj は、
2ビットで表現され、Cj ,Sj を使用した場合に比べ
回路が簡単になる。ここで、Rj をR1j とR2j を用
い(表2)に示すように割り当てる。
When B j and R j are obtained according to the equation (4), as shown in FIG. 4, B j is 0 or 1, R j is 2, 1, and
0 and -1. That is, B j is 1 bit, R j is
Is represented by 2 bits, C j, circuit can be simplified compared with the case of using S j. Here, R j is assigned using R1 j and R2 j as shown in (Table 2).

【表2】 すると図4の真理値表から以下のように、Bj ,R
j ,R2j 、Qj が求まる。以下、◎は排他的論理和
演算であるとする。
[Table 2] Then, as it follows from the truth table of FIG. 4, B j, R
1 j , R2 j and Q j are obtained. Hereinafter, ◎ indicates an exclusive OR operation.

【数2】 (Equation 2)

【0027】次にリコードの第2の手段として、各集合
の中間和Sj と下位集合からの桁上げCj-1 の加算を実
行する。リコード後の結果をZj とすると、(4)式を
使用し(9)式のようになる。 Zj =Cj-1 +Sj =Bj-1 +Rj −1 ・・・(9) (9)式よりZj ,Bj-1 ,Rj の関係を(表3)に示
す。
Next, as a second means of the recoding, the addition of the intermediate sum S j of each set and the carry C j-1 from the lower set is executed. Assuming that the result after recoding is Z j , equation (9) is used using equation (4). Z j = C j-1 + S j = B j-1 + R j -1 (9) From the equation (9), the relationship between Z j , B j-1 and R j is shown in (Table 3).

【表3】 [Table 3]

【0028】(表3)より、Zj は−2から2までの値
をとるため、Zj を3ビットの値で表現する。Zj を、
Zsj ,Z1j ,Z2j の3ビットで表現し、(表4)
に示すように割り当てる。
[0028] than (Table 3), Z j is to take a value from -2 to 2, representing a Z j in 3-bit value. Z j
Zs j , Z1 j , and Z2 j are represented by three bits (Table 4).
Assign as shown.

【表4】 [Table 4]

【0029】Z1j は、Zj の絶対値が”1”、Z2j
は、Zj の絶対値が”2”、Zsj はZj の符号を示
す。以上よりリコード後の結果Zj (Z1j ,Z2j
Zsj )は、Bj-1 ,Rj (R1j ,R2j )を使用し
(10)式のように表現される。
[0029] Z1 j, the absolute value of Z j is "1", Z2 j
Indicates that the absolute value of Z j is “2”, and Zs j indicates the sign of Z j . From the above, the result Z j (Z1 j , Z2 j ,
Zs j ) is expressed as in equation (10) using B j−1 , R j (R1 j , R2 j ).

【数3】 こうして(5)、(6)、(7)、(8)、(10)式
を用い、図3に示される冗長2進数2ビットブースリコ
ード回路の基本単位301が構成される。
(Equation 3) Thus, the basic unit 301 of the redundant binary 2-bit Booth recode circuit shown in FIG. 3 is configured by using the equations (5), (6), (7), (8), and (10).

【0030】以上述べたように、図3に示される冗長2
進数2ビットブースリコード回路の基本単位301は、
中間和中間桁上げ生成手段において、一つ下位の集合か
らの桁上げの情報Qj-1 を基に、中間和Sj (Rj )と
中間桁上げCj (Bj )を生成し、リコード値生成手段
で、一つ下位の集合からの中間桁上げCj-1 (Bj-1
と中間和Sj (Rj )を加算しリコード値を求めてい
る。すなわち、リコード値生成手段において一つ下位の
集合からの中間桁上げCj-1 (Bj-1 )として、丸めに
よる桁上げを入力すれば、丸め処理された乗数として冗
長2進数2ビットブースリコード回路301に入力され
たことになる。
As described above, the redundant 2 shown in FIG.
The basic unit 301 of the binary 2-bit Booth recode circuit is:
The intermediate sum intermediate carry generating means generates an intermediate sum S j (R j ) and an intermediate carry C j (B j ) based on the information of carry Q j-1 from the next lower set, The intermediate carry C j-1 (B j-1 ) from the next lower set by the recode value generating means
And the intermediate sum S j (R j ) are added to obtain a recoded value. That is, if the carry by rounding is input as the intermediate carry C j-1 (B j-1 ) from the next lower set in the recode value generating means, a redundant binary 2-bit booth is obtained as a rounded multiplier. This means that it has been input to the recode circuit 301.

【0031】次に、丸め桁上げ生成回路303について
説明する。ここでは、IEEE754規格に基づく最近
接丸めを実行するものとする。入力値Xを2i 桁までに
丸めるとすると、IEEE754規格によれば、丸めに
よる桁上げと入力値の関係は図5のようになる。ここ
で、Xi ,Xi-1 は、それぞれ入力値Xの2i 桁,2
i-1 桁の冗長2進数値である。Xi-2 は、ステッキィ桁
であり、2i-2 以下が”正”であるか”負”であるか”
0”であるかを示す値である。正であれば、Xi-2
1、負であれば、Xi-2 =−1、ゼロであれば、Xi-2
=0である。Crj-1 はXi-1 ,Xi-2 を使用し丸めた
時に生じるXi-1 からXi への桁上がりである。IEE
E754規格によれば、最近接丸めによる桁上げCr
j-1 は、Xi の桁の重みを1とした場合、Xi より下位
桁がXi 桁の重みと比較してどの程度になるかで区別さ
れ、以下のようになる。
Next, the round carry generation circuit 303 will be described. Here, it is assumed that the closest rounding based on the IEEE 754 standard is executed. Assuming that the input value X is rounded to 2 i digits, according to the IEEE 754 standard, the relationship between carry by rounding and the input value is as shown in FIG. Here, X i and X i-1 are 2 i digits and 2 i of the input value X, respectively.
It is an i-1 digit redundant binary value. X i−2 is a sticky digit, and 2 i−2 or less is “positive” or “negative”
0 ”. If it is positive, X i−2 =
1, if negative, X i−2 = −1, if zero, X i−2
= 0. Cr j-1 is a carry from X i -1 to X i that occurs when X i-1 and X i-2 are rounded. IEEE
According to E754 standard, carry Cr by nearest rounding
j-1, when a 1 weight digit of X i, is distinguished by either lower digit than X i is how much compared to the weight of the X i digit is as follows.

【0032】Xi より下位桁>1/2 の時 Crj-1 =1 1/2>Xi より下位桁>−1/2の時 Crj-1 =0 −1/2>Xi より下位桁 の時 Crj-1 =−1 Xi より下位桁がXi 桁の重みに対して1/2の時、X
i 桁までに丸めた後、最も近い偶数にするようなCr
j-1 にする。例えば(Xi-1 ,Xi-2 )=(−1,0)
の時、Xi より下位桁はXi 桁の重みに対して−1/2
であるから、Xi =1の時Crj-1 =−1、Xi =0の
時Crj-1 =0、Xi =−1の時Crj-1=−1とな
る。すなわち、(表1)に示す冗長2進数コーディング
に従えば、Crj-1 =−(Xpi +Xmi )となる。他
の場合も同様に上記規則を用いてCrj-1 を求めること
ができる。
When the digit lower than X i > 1/2, Cr j−1 = 1 1/2> The digit lower than X i > −1/2, from Cr j−1 = 0 −1/2> X i When the lower digit is Cr j-1 = -1 X i When the lower digit is 1/2 with respect to the weight of X i digit, X
Cr that rounds to i digits and then becomes the nearest even number
j-1 . For example, (X i−1 , X i−2 ) = (− 1, 0)
Of the time, the lower digit than X i is against the weight of the X i digit -1/2
Since it is, the Cr j-1 = -1 when X i = 1 when Cr j-1 = -1, Cr j-1 = 0 when X i = 0, X i = -1. That is, according to the redundant binary coding shown in (Table 1), Cr j-1 = − (Xp i + Xm i ). In other cases, Cr j-1 can be similarly obtained using the above rules.

【0033】次に、丸めによる桁上がりCrj-1 を、先
に述べた冗長2進数2ビットブースのリコード回路の基
本単位301の下位からの桁上がりCj-1 (Bj-1 、Q
j-1 )として入力するためにコーディングする。図4に
おいてCj 、Qj ,Bj の関係を求めると、(表5)の
様な関係になる。
Next, the carry Cr j-1 due to the rounding is converted to the carry C j-1 (B j-1 , Q j) from the lower order of the basic unit 301 of the above-described redundant binary 2-bit booth recoding circuit.
j-1 ) coded for input. In FIG. 4, when the relationship between C j , Q j , and B j is determined, the relationship is as shown in (Table 5).

【表5】 (表5)にしたがって、丸めによる桁上げCrj-1 を、
j-1 ,Bj-1 を用い表現すると、図5のようになる。
この時、Crj-1 =0の場合、(Qj-1 ,Bj-1 )とし
て(1、0)、(0、1)の2通りの取り方があるが、
ここでは、冗長2進数2ビットブースのリコード回路に
於けるQj と同じになるようにする。すなわち、Xi-1
が”1”であればQj-1 =1とする。
[Table 5] According to (Table 5), carry Cr j-1 by rounding is
FIG. 5 shows a representation using Q j-1 and B j-1 .
At this time, if Cr j-1 = 0, there are two ways of taking (1, 0) and (0, 1 ) as (Q j-1 , B j-1 ).
Here, it is set to be the same as Q j in the recoding circuit of the redundant binary 2-bit booth. That is, X i-1
Is "1", Q j-1 = 1.

【0034】以上のように、丸めによる桁上げCrj-1
は、Qj-1 ,Bj-1 を用い、図5から(11)式のよう
に求められる。
As described above, carry Cr j-1 by rounding
Is obtained from Q j-1 and B j-1 as shown in equation (11) from FIG.

【数4】 以上のようにして、図3に示す丸め桁上げ生成回路30
3を構成することができる。丸め桁上げ生成回路303
は、ゲ−ト遅延段数が3段で構成され、冗長2進数2ビ
ットブースリコード回路301でBj を求めるための遅
延段数と同じになるため、丸め桁上げ生成回路303の
追加により、冗長2進数2ビットブースリコード値を求
める速度をほとんど遅らすことはない。
(Equation 4) As described above, the round carry generation circuit 30 shown in FIG.
3 can be configured. Rounding carry generation circuit 303
Is gate - is constituted by preparative number of delay stages is three stages, to become the same as the number of delay stages for obtaining the B j redundant binary 2-bit Booth recoding circuit 301, the addition of the rounding carry generating circuit 303, a redundant It hardly slows down the speed of finding the binary 2-bit Booth recode value.

【0035】また、0値生成回路304は、桁上げとし
て”0”を生成する回路である。これは(表5)より、
j =0の場合を考えればよく、(Bj ,Qj )=
(1,0)または(0,1)であるから、図3に示すよ
うに、Bj ,Qj が常に論理反転の形になるような論理
にすればよく、高速に0値が生成できることがわかる。
The 0 value generation circuit 304 is a circuit for generating "0" as a carry. This is from (Table 5)
Consider the case where C j = 0, and (B j , Q j ) =
Since it is (1, 0) or (0, 1), as shown in FIG. 3, the logic may be such that B j and Q j are always in the form of logical inversion, and the 0 value can be generated at high speed. I understand.

【0036】以上より、図3に示される冗長2進数2ビ
ットブースリコード回路が構成され、これを用い繰り返
し乗算回路を構成すると図2のようになる。すなわち、
本発明を使用した繰り返し乗算回路は、繰り返し乗算途
中で2進数変換回路、丸め処理回路を使用せず、高速な
乗算結果を丸め処理する繰り返し乗算が可能になってい
る。
From the above, the redundant binary 2-bit Booth recode circuit shown in FIG. 3 is formed, and when it is used to form a repetitive multiplication circuit, the circuit is as shown in FIG. That is,
The repetitive multiplication circuit using the present invention can perform high-speed repetitive multiplication by rounding a multiplication result without using a binary conversion circuit and a rounding circuit in the middle of repetition multiplication.

【0037】次に、第2の実施例として、乗算の繰り返
し時に桁上げ保存形のデータを用いた場合の繰り返し乗
算について述べる。桁上げ保存形で繰り返し乗算を実行
する乗算処理装置の構成は、冗長2進数の場合と同様
に、図2に示される繰り返し乗算の構成になる。ここ
で、桁上げ保存形のデータが入力可能な乗数リコード回
路について述べる。桁上げ保存形で表された中間積X
(Xc、Xs)のリコードは2つのステップで実行され
る。中間積の小数点以下i桁目は、2i の重みを持つ2
ビットXci , Xsi で表されているとする。但し、X
i , Xsi は0又は1の数値である。まず、中間積X
を隣接する2桁ずつのグループに分割する。
Next, as a second embodiment, a description will be given of a repetitive multiplication in which carry-save data is used at the time of repetition of multiplication. The configuration of the multiplication processing device that repeatedly performs the multiplication in the carry-preserving form has the configuration of the repetition multiplication shown in FIG. 2, as in the case of the redundant binary number. Here, a multiplier recode circuit to which carry-save data can be input will be described. Intermediate product X expressed in carry-save form
The recoding of (Xc, Xs) is performed in two steps. The i-th digit after the decimal point of the intermediate product is 2 having a weight of 2 i
It is assumed that the bits are represented by bits Xc i and Xs i . Where X
c i and Xs i are numerical values of 0 or 1. First, the intermediate product X
Is divided into adjacent two-digit groups.

【0038】(ステップ1)ステップ1では各グループ
で、4・Cj +Sj =2・(Xc2i+1+Xs2i+1)+
(Xc2i+Xs2i)を満たすように、中間桁上げCj
中間和Sj を求める。ここで、中間桁上げCj は”0、
1、2”の4値の内のどれかの値、中間和Sj は、”−
3、−2、−1、0、1”の5値の内のどれかの値であ
る。これを示した表を(表6)に示す。
(Step 1) In step 1, in each group, 4 · C j + S j = 2 · (Xc 2i + 1 + Xs 2i + 1 ) +
In order to satisfy (Xc 2i + Xs 2i ), the intermediate carry C j ,
Find the intermediate sum Sj . Here, the intermediate carry C j is “0,
One of the four values of 1, 2 ", the intermediate sum Sj is"-
The value is any one of five values of 3, -2, -1, 0, and 1 ". A table showing this value is shown in (Table 6).

【表6】 [Table 6]

【0039】(ステップ2)ステップ2では、各グルー
プで、ステップ1で求まった中間結果Sj と1桁下位か
らの中間桁上げCj-1 を加算し、リコードされた乗数値
Rej を求める。ここで、Rejは”−2、−1、0、
1,2”の中の1つの数値である。従って、この時C
j-1 +Sj が±2の範囲にはいるようにしなければなら
ない。このために、ステップ1において、各グループ
で、そのグループの2桁とともに1つ下位グループの上
位桁 (Xc2i-1) も調べて、表6のようにCj ,Sj
決定する。例えば、(Xc2i+1,Xs2i+1,Xc2i,X
2i)=(0,0,0,1)の場合、このグループの持
つ値は”1”になるから、Cj 、Sj の取り方として、
( Cj , Sj ) = (1 ,−3) , (0 ,1 ) の2通りある。
ここで、Xc2i+1に注目する。Xc2i+1が0である場
合、必ずCj は0または1の数値になる。またXc2i+1
が1である場合、必ずCj は1または2の数値になる。
従って、1つ下位グループについてみた場合、Xc2i-1
が0であれば必ず1つ下位グループからの桁上げCj-1
として0または1が上がってくる。この場合、( Cj ,
j ) =(1,−3)と設定してしまうと、ステップ2
でRej =Cj-1 +Sj を実行した場合、Rej =−3
または−2になり、上記したRej の範囲(−2〜2)
の範囲を越えてしまう。逆に( Cj ,Sj ) =(0,
1)を設定すれば、Rej =1または2になり、上記条
件を満足する。この様に全てのCj 、Sj が1つ下位グ
ループのXc2i+1を見ることで決定される。つぎに、ス
テップ2で、Rej =Cj-1 +Sj に従いリコード値を
生成する。(表7)はこの論理、即ちCj-1 ,Sj に対
するRej を示している。
(Step 2) In step 2, in each group, the intermediate result S j obtained in step 1 and the intermediate carry C j-1 from the lower digit are added to obtain a recoded multiplier value Re j . . Here, Re j is “−2, −1, 0,
1, 2 ". Therefore, at this time, C
j-1 + Sj must be in the range of ± 2. For this purpose, in step 1, in each group, the upper digit (Xc 2i-1 ) of one lower group is examined together with the two digits of the group, and C j and S j are determined as shown in Table 6. For example, (Xc 2i + 1 , Xs 2i + 1 , Xc 2i , X
For s 2i) = (0,0,0,1), as-taking from a value "1" with the this group, C j, S j,
(C j , S j ) = (1, -3) and (0, 1).
Here, attention is paid to Xc 2i + 1 . When Xc 2i + 1 is 0, C j always becomes a numerical value of 0 or 1. Xc 2i + 1
Is 1, C j always becomes a numerical value of 1 or 2.
Therefore, when looking at one lower group, Xc 2i-1
Is 0, the carry from the lower group must be C j-1
0 or 1 comes up. In this case, (C j ,
If S j ) = (1, -3), step 2
When Re j = C j-1 + S j is executed, Re j = −3
Or −2, and the range of Re j described above (−2 to 2)
Out of range. Conversely, (C j , S j ) = (0,
If 1) is set, Re j = 1 or 2, and the above condition is satisfied. Thus, all C j and S j are determined by looking at one lower group, Xc 2i + 1 . Next, in step 2, a recoded value is generated in accordance with Re j = C j-1 + S j . Table 7 shows this logic, that is, Re j for C j-1 and S j .

【表7】 [Table 7]

【0040】以上、桁上げ保存形の数をリコードする場
合、冗長2進数の場合と同様に、ステップ1として、中
間桁上げ、中間和を生成し、ステップ2として、1つ下
位グループからの中間桁上げとそのグループの中間和を
加算しリコード値を求める。従って、中間積として冗長
2進数を用いた場合と同様に、最下位グループの乗数リ
コード回路の下位からの中間桁上げとして、丸め処理し
た結果を入力すれば、同様に丸め処理が実現可能なこと
は明かである。すなわち、桁上げ保存形の数値を用いた
繰り返し乗算回路は、繰り返し乗算途中で2進数変換回
路、丸め処理回路を使用せず実現でき、高速な乗算結果
を丸め処理する繰り返し乗算が可能である。
As described above, when recoding a carry-preserving number, as in the case of a redundant binary number, an intermediate carry and an intermediate sum are generated as step 1, and an intermediate carry from one lower group is generated as step 2. The carry and the intermediate sum of the group are added to obtain a recoded value. Therefore, similarly to the case where a redundant binary number is used as an intermediate product, if the result of the rounding process is input as an intermediate carry from the lower end of the multiplier recoding circuit of the lowest group, the rounding process can be similarly realized. Is clear. That is, a repetitive multiplication circuit using a carry-preserving type numerical value can be realized without using a binary number conversion circuit and a rounding circuit in the middle of repetitive multiplication, and it is possible to perform high-speed repetitive multiplication for rounding a multiplication result.

【0041】次に、第3の実施例として、乗算の繰り返
し時に2進数を用いた場合の繰り返し乗算について述べ
る。通常、n桁の2進数乗数値Xは、(12)式に示さ
れるようにリコードされる。
Next, as a third embodiment, repeated multiplication in the case where a binary number is used at the time of repeating multiplication will be described. Normally, the n-digit binary multiplier value X is recoded as shown in equation (12).

【数5】 ここで、Z2jを(−2×X2j+1+X2j+X2j-1)とする
と、Z2jは、下位集合から数えてj番目の2ビットブー
スリコード値である。この時の、2ビットブースリコー
ド回路の真理値表を(表8)に示す。Xi+1 ,Xi ,X
i-1 は、乗数入力値である。2ビットブースリコード値
j は、3ビットの信号(Zsj ,Z1j ,Z2j )で
表現される。
(Equation 5) Here, assuming that Z 2j is (−2 × X 2j + 1 + X 2j + X 2j−1 ), Z 2j is the j-th 2-bit Booth recoded value counted from the lower set. At this time, a truth table of the 2-bit Booth recode circuit is shown in (Table 8). X i + 1 , X i , X
i-1 is a multiplier input value. The 2-bit Booth recoded value Z j is represented by a 3-bit signal (Zs j , Z1 j , Z2 j ).

【表8】 この論理式は、例えば、(13)式に示すようになる。[Table 8] This logical expression is, for example, as shown in Expression (13).

【数6】 (Equation 6)

【0042】(13)式をゲートを用いて表現すると、
2進数の2ビットブースリコード回路の基本単位は、図
6の601に示す様になる。即ち、データが入力されて
たかだかゲート遅延段数2段でリコード値が求められる
事がわかる。ここで、データとして2i-1 桁以下に値が
存在し、これを、2i の桁までに丸め処理する場合を考
える。2i 桁までに丸める場合、2i 桁までに丸める為
に生ずる桁上げをCrj-1 とすると、2i 桁の持つ値は
丸めによる桁上げCrj-1とXi の加算値(Xi +Cr
j-1 )となる。従って、最下位集合のリコード値Z
i は、(14)式に示すようになる。 Zi =−2×Xi+1 +(Xi +Cri-1 ) =−2×Xi+1 +Xi +Cri-1 ・・・(14) すなわち、(14)式に示すように、2i 桁までに丸め
処理する場合のリコード値Zi は、ただ単にXi-1 の代
わりに丸めによる桁上げCri-1 を入力すればよいこと
がわかる。従って、第1の実施例と同様に、丸めによる
桁上げをXi+1 ,Xi ,Xi-1 をリコードする回路のX
i-1 の入力に入力し、丸め処理する必要のない場合に
は、Xi-1 の入力には”0”を入力すればよい。
When Expression (13) is expressed using a gate,
The basic unit of the binary 2-bit Booth recode circuit is as shown by 601 in FIG. That is, it can be seen that the recode value can be obtained with two gate delay stages at the most when data is input. Here, a case is considered in which a value exists in data of 2 i-1 digit or less, and this value is rounded to 2 i digits. When rounding up 2 i digits, 2 when i carry caused to round up digits and Cr j-1, the sum of 2 i values with the digit carry by rounding Cr j-1 and X i (X i + Cr
j-1 ). Therefore, the recoded value Z of the lowest set
i becomes as shown in equation (14). Z i = −2 × X i + 1 + (X i + C i−1 ) = − 2 × X i + 1 + X i + C i−1 (14) That is, as shown in the equation (14), recoded value Z i in the case of rounding up 2 i digits, simply it can be seen that may be input carry Cr i-1 by rounding instead of X i-1. Therefore, as in the first embodiment, the carry caused by rounding X i + 1, X i, X of a circuit for recoding the X i-1
When inputting to the input of i-1 and there is no need to perform the rounding process, "0" may be input to the input of Xi -1 .

【0043】以上より乗数リコード回路及び桁上げ生成
回路を構成すると、図6の様になる。602は、セレク
ト信号によって丸め桁上げ生成回路603の出力値と、
0値生成回路604の出力のいずれかを選択し出力する
選択回路である。603は2i 桁までに丸める場合の丸
め桁上げ生成回路である。604は数値0を生成する0
値生成回路である。丸め桁上げ生成回路603は、以下
のように構成される。ここでは、先と同様にIEEE7
54規格に基づく最近接丸めを実行する。ここで、X
i-2 は2i-2 桁以下のスティッキィ桁になっているとす
る。この時、丸めによる桁上げCrj-1 は、(表9)に
示す様になる。
FIG. 6 shows the configuration of the multiplier recode circuit and the carry generation circuit. 602 is an output value of the round carry generation circuit 603 according to the select signal;
This is a selection circuit that selects and outputs one of the outputs of the 0 value generation circuit 604. Reference numeral 603 denotes a round carry generation circuit for rounding to 2 i digits. 604 is 0 that produces the number 0
It is a value generation circuit. The round carry generation circuit 603 is configured as follows. Here, as in the previous case, IEEE7
Perform closest rounding based on the 54 standard. Where X
It is assumed that i-2 is a sticky digit of 2 i-2 digits or less. At this time, the carry Cr j-1 by rounding is as shown in (Table 9).

【表9】 (表9)において、(Xi-1 ,Xi-2 )=(1,0)の
場合、桁上がりCrj-1 がXi になるのは先に述べたと
おりである。したがって表9を論理に落とすと、図6の
603に示す桁上げ回路になる。
[Table 9] In Table 9, when (X i−1 , X i−2 ) = (1, 0), the carry Cr j−1 becomes X i as described above. Therefore, if Table 9 is converted to logic, a carry circuit 603 in FIG. 6 is obtained.

【0044】以上より、図6に示したように丸めによる
桁上げを2ビットブースリコード回路の下位からの入力
値として入力することで、図7に示す様な乗算処理装置
を実現できる。本図において、部分積生成加算回路20
6,2進数変換回路208,丸め処理回路209は前述
した実施例と同一である。又701から706までは2
相クロックph1、ph2で動作するラッチである。7
07は、図6に示した乗数リコード回路である。708
は図6の中の選択回路602、桁上げ回路603、0値
生成回路604を含んだ桁上げ生成回路である。図7の
ように構成することで、繰り返し乗算時に毎回丸め処理
回路209を通過させる必要がなく、最終結果が得られ
るときのみに丸め処理回路209を通過するため、従来
に比べ高速な繰り返し乗算が実現できる。
As described above, by inputting a carry by rounding as shown in FIG. 6 as an input value from the lower order of the 2-bit Booth recode circuit, a multiplication processing device as shown in FIG. 7 can be realized. In the figure, a partial product generation and addition circuit 20
The 6, binary number conversion circuit 208 and rounding circuit 209 are the same as those in the above-described embodiment. Also, 2 from 701 to 706
The latch is operated by the phase clocks ph1 and ph2. 7
Reference numeral 07 denotes the multiplier recode circuit shown in FIG. 708
Is a carry generation circuit including a selection circuit 602, a carry circuit 603, and a 0 value generation circuit 604 in FIG. With the configuration as shown in FIG. 7, it is not necessary to pass through the rounding circuit 209 each time during repetitive multiplication, and the signal passes through the rounding circuit 209 only when a final result is obtained. realizable.

【0045】以上、冗長2進数を用いた場合と桁上げ保
存形の数値を用いた場合と2進数を用いた場合、各乗算
毎に丸め処理を実行する繰り返し乗算について、本発明
を利用することで、高速な繰り返し乗算が実現できるこ
とを述べた。なお、他の高基数値で繰り返し乗算を実行
する場合について、本実施例では述べられていないが、
本発明を使用すれば同様の効果が得られる。また冗長2
進数2ビットブースリコード回路を生成する時、(4)
式に示すように、中間桁上げCj の代わりにBj ,中間
桁上げSj の代わりにRj を使用することで、論理の簡
単な乗数リコード回路を構成することができることも合
わせて述べた。
As described above, the present invention is applied to the case of using a redundant binary number, the case of using a carry-preserving type numeric value, and the case of using a binary number, for a repetitive multiplication in which a rounding process is performed for each multiplication. Thus, it was described that high-speed repetitive multiplication can be realized. It should be noted that although the case of repeatedly performing multiplication with another high-radix value is not described in this embodiment,
Similar effects can be obtained by using the present invention. Redundancy 2
When generating a binary 2-bit Booth recode circuit, (4)
As shown in the equation, by using B j instead of the intermediate carry C j and R j instead of the intermediate carry S j , it is also possible to configure a simple logic multiplier recoding circuit. Was.

【0046】次に、ある定数Aから乗数を減算した値と
被乗数を乗算し、乗算結果を次の乗算の入力オペランド
とする繰り返し乗算について、本発明を利用した実施例
を以下に示す。まず第1の実施例として、ニュートンラ
フソン法を用いた除算について示す。いま、2つの正規
化された浮動小数点数仮数部の除算Y/Xを実行するも
のとする。1/Xの近似値を求めるアルゴリズムとして
ニュートンラフソン法がある。この方法によると、1/
Xの近似値Riは(15)式に示すような漸化式で求め
られる。 R0 =1/X±δ Ri =Ri-1 ×(2−Ri-1 ×X)・・・(15) ここで、R0 は1/Xの初期近似値であり、δはR0
1/Xの誤差である。商は、Ri と1/Xの誤差が希望
する誤差以内になった後、Ri ×Yにより求めることが
できる。(15)式をみると、漸化式は2つのタイプ乗
算の組合せによる繰り返し乗算になっていることがわか
る。第1のタイプは通常のα×βという乗算、第2のタ
イプはα(2−β)という乗算である。以下に、本発明
が第2のタイプの乗算に有効であることを述べる。
Next, an embodiment utilizing the present invention will be described below with respect to a repetitive multiplication in which a value obtained by subtracting a multiplier from a certain constant A is multiplied by a multiplicand and the multiplication result is used as an input operand of the next multiplication. First, as the first embodiment, division using the Newton-Raphson method will be described. Now, assume that the division Y / X of the two normalized floating-point mantissas is performed. An algorithm for obtaining an approximate value of 1 / X is the Newton-Raphson method. According to this method, 1 /
The approximate value Ri of X is obtained by a recurrence formula as shown in Expression (15). R 0 = 1 / X ± δ R i = R i-1 × (2-R i-1 × X) (15) where R 0 is an initial approximate value of 1 / X, and δ is This is the error between R 0 and 1 / X. The quotient can be obtained by R i × Y after the error between R i and 1 / X is within the desired error. Looking at equation (15), it can be seen that the recurrence equation is a repetitive multiplication by a combination of two type multiplications. The first type is a normal multiplication of α × β, and the second type is a multiplication of α (2-β). In the following, it is stated that the invention is effective for the second type of multiplication.

【0047】(15)式において、簡単のためRi-1
A、Ri-1 ×XをBと置く。この時(15)式は第2の
タイプの乗算A(2−B)となる。ここで、Bは(1
5)式を用い(16)式のようになる。 B=Ri-1 ×X =1−(X×(±δ))j 但し j=2(i-1) ・・・(16) すなわち、Xは正規化数(1=<X<2)であるため、
Bは1に近い数値になることがわかる。今ここで、Bは
2進数で表現されているとする。この時、第2のタイプ
の乗算A×(2−B)において、(2−B)は(17)
式のように変形できる。
In equation (15), for simplicity, R i-1 is set to A, and R i-1 × X is set to B. At this time, equation (15) is a second type of multiplication A (2-B). Here, B is (1
Expression (16) is obtained by using expression (5). B = R i-1 × X = 1− (X × (± δ)) j where j = 2 (i−1) (16) That is, X is a normalized number (1 = <X <2) Because
It can be seen that B is a value close to 1. Now, suppose that B is represented by a binary number. At this time, in the second type of multiplication A × (2-B), (2-B) becomes (17)
It can be transformed like an equation.

【数7】 (17)式は−Bという項を2の補数を取ることで変形
している。ここで、LSBは2の補数を取るときに生じ
るBのビット列最下位桁への加算値”1”である。今、
Bが簡単のため8桁の数値であるとし、(18)式に示
すようになっているとする。 B=B0 .B1 2 3 4 5 6 7 ・・・(18) (18)式を用い、(17)式を表すと次のようにな
る。
(Equation 7) Equation (17) is modified by taking the two-complement number of the term -B. Here, the LSB is an addition value “1” to the least significant digit of the bit string of B that occurs when taking a two's complement. now,
Assume that B is an 8-digit numerical value for simplicity, and is as shown in Expression (18). B = B 0 . B 1 B 2 B 3 B 4 B 5 B 6 B 7 (18) Using equation (18) and expressing equation (17), the following is obtained.

【数8】 従って本発明を用い、(17)式に示される(2−B)
は以下のように実現することができる。つまり第2のタ
イプの乗算A×(2−B)を実行するときに、Bの各桁
を論理反転した値(Bバー)を乗数リコード回路に入力
するとともに、小数点より上位2桁目には”0”を設定
し、最下位桁をリコードするリコード回路の下位からの
桁上げとして”1”を入力(LSB)すれば、(2−
B)を乗数として入力した場合と同じになる。
(Equation 8) Therefore, using the present invention, (2-B)
Can be realized as follows. That is, when performing the second type of multiplication A × (2-B), a value (B bar) obtained by logically inverting each digit of B is input to the multiplier recoding circuit, and the second digit higher than the decimal point is placed in the second digit. If “0” is set and “1” is input (LSB) as a carry from the lower end of the recoding circuit that recodes the least significant digit, (2−2)
This is the same as when B) is input as a multiplier.

【0048】以上述べた事を、実施すると例えば図8の
ようになる。801は(17)式中のLSBを生成する
1値生成回路である。演算がA×(2−B)であるとい
う信号SUBが来た場合には、選択回路602によっ
て、1値生成回路801の出力値が選択される。又選択
回路802は、信号SUBが入力されると、小数点より
上位2桁目には”0”を、それ以外は入力値の論理反転
値を入力する入力選択手段である。本発明を利用し、A
×(2−B)を実行するとき、小数点より上位2桁目に
は”0”を設定し、それ以外には論理反転値をリコード
回路に入力すれば、従来のように減算回路を使用する必
要がなく、除算を高速にしかも少ないハードウェアで実
行することができる。
FIG. 8 shows an example of the above-described operation. A one-value generation circuit 801 generates the LSB in the expression (17). When a signal SUB indicating that the operation is A × (2-B) arrives, the output value of the one-value generation circuit 801 is selected by the selection circuit 602. The selection circuit 802 is input selection means for inputting "0" in the second digit higher than the decimal point when the signal SUB is input, and inputting a logically inverted value of the input value in other cases. Utilizing the present invention, A
When x (2-B) is executed, "0" is set to the second digit higher than the decimal point, and if a logically inverted value is input to the recoding circuit, the subtraction circuit is used as in the related art. There is no need to perform the division at high speed and with a small amount of hardware.

【0049】次に、Xの平方根値をニュートンラフソン
法を用いて求める場合について述べる。この時、1/X
1/2 を求める漸化式は(19)式のようになる。 R0 =(1/X1/2 )±δ 2×Ri =Ri-1 ×(3−Ri-1 2×X)・・・(19) ここで、R0 は1/Xの初期近似値であり、δはR0
1/X1/2 の誤差である。平方根は、Ri と1/X1/2
の誤差が希望する誤差以内になった後、Ri ×Xにより
求めることができる。(19)に示す漸化式において、
i-1 2×Xは1に近い数値である。ここで、Ri-1 2×X
をBと置くと、Bは(18)式と同じ様に表現できる。
ここで、(19)式中の(3−Ri-1 2×X)はRi-1 2×
XをBとおくと、(20)式のように変形することがで
きる。
Next, the case where the square root value of X is obtained by using the Newton-Raphson method will be described. At this time, 1 / X
The recurrence equation for finding 1/2 is as shown in equation (19). R 0 = (1 / X 1/2 ) ± δ 2 × R i = R i-1 × (3-R i-1 2 × X) ··· (19) wherein, R 0 is the 1 / X Δ is an error between R 0 and 1 / X 1/2 . The square root is Ri and 1 / X 1/2
After the error is within the desired error, it can be obtained by R i × X. In the recurrence formula shown in (19),
R i-1 2 × X is a numerical value close to 1. Here, R i-1 2 × X
Is expressed as B, B can be expressed in the same manner as in equation (18).
Here, (19) (3-R i-1 2 × X) in equation R i-1 2 ×
If X is B, it can be transformed as in equation (20).

【数9】 (20)式を各桁毎に表すと次のようになる。(Equation 9) The expression (20) is expressed as follows for each digit.

【数10】 (Equation 10)

【0050】従って、本発明を用い、(20)に示され
る式は以下のように実現することができる。つまり乗算
A×(3−B)を実行するときに、小数点より下位の各
桁を反転した値(Bバー)を乗数リコード回路に入力す
るとともに、小数点より上位1桁目には”B0 ”を入力
し、小数点より上位2桁目には”B0 バー”を入力し、
最下位桁をリコードするリコード回路の下位からの桁上
げとして”1”を入力(LSB)すれば、(3−B)を
乗数として入力した場合と同じになる。従って、(3−
B)を実行するとき、小数点より下位の桁には論理反転
回路をおき、小数点より上位1桁目は、そのまま入力
し、小数点より上位2桁目には小数点より上位1桁目の
値の論理反転値を入力し、これらの出力値を乗数リコー
ド回路及び桁上げ生成回路に入力する。そうすれば従来
のように減算回路を使用する必要がなく、高速に、しか
も少ないハードウェアで実行することができる。
Therefore, using the present invention, the expression shown in (20) can be realized as follows. That is, when the multiplication A × (3-B) is executed, a value (B bar) obtained by inverting each digit lower than the decimal point is input to the multiplier recoding circuit, and “B 0 ” is input to the first digit higher than the decimal point. And enter " B0 bar" in the second digit above the decimal point,
If "1" is input (LSB) as a carry from the lower end of the recoding circuit that recodes the least significant digit, it becomes the same as when (3-B) is input as a multiplier. Therefore, (3-
When executing B), a logical inversion circuit is provided for a digit lower than the decimal point, the first digit higher than the decimal point is input as it is, and the logic value of the first digit higher than the decimal point is input for the second digit higher than the decimal point. The inverted values are input, and these output values are input to a multiplier recoding circuit and a carry generation circuit. Then, it is not necessary to use a subtraction circuit as in the related art, and the execution can be performed at high speed with a small amount of hardware.

【0051】以上は、Bとして2進数の場合について述
べたが、さらなる高速化のためBの値として中間積の値
(この場合冗長2進数値)を入力する。この時、回路構
成は図2に示すようになる。但し、乗数リコード回路2
07には、図11及び図12で示す入力選択手段である
選択回路1201を付加しなければならない。(15)
式に示されるニュートンラフソン法を用いた除算につい
てこれを示すと、(16)式に示されるBは、ラッチ2
03より出力され、選択ラッチ201に取り込まれる。
そして次のサイクルで乗数をリコードする前に簡単なビ
ット操作をし、乗数リコード回路207を用い数値(2
−B)をリコードする。そして、リコード値を部分積生
成加算回路206に入力する。またこの時、ラッチ20
2にはRi-1 が入力されており、乗算Ri-1 ×(2−R
i-1 ×X)が実行される。また、(19)式に示される
ニュートンラフソン法を用いた平方根についてこれを示
すと、(20)式に示されるBは、ラッチ203より出
力され、これが選択ラッチ201に取り込まれる。そし
て次のサイクルで乗数に対し簡単なビット操作をし、乗
数リコード回路207を用い、(3−B)を生成する。
そして、リコード値を部分積生成加算回路206に入力
する。またこの時、ラッチ202にはRi-1 が入力され
ており、乗算Ri-1 ×(3−Ri-1 2×X)が実行され
る。
In the above description, the case where B is a binary number has been described. For further speeding up, the value of the intermediate product (in this case, a redundant binary value) is input as the value of B. At this time, the circuit configuration is as shown in FIG. However, the multiplier recode circuit 2
07, a selection circuit 1201 as input selection means shown in FIGS. 11 and 12 must be added. (15)
When this is shown for the division using the Newton-Raphson method shown in the equation, B shown in the equation (16)
03 and is taken into the selection latch 201.
Then, a simple bit operation is performed before the multiplier is recoded in the next cycle, and a numerical value (2
-B) is recoded. Then, the recode value is input to the partial product generation and addition circuit 206. At this time, the latch 20
The 2 are input R i-1, multiplied by R i-1 × (2- R
i-1 × X) is executed. In addition, if this is shown for the square root using the Newton-Raphson method shown in the equation (19), B shown in the equation (20) is output from the latch 203 and is taken into the selection latch 201. Then, in the next cycle, a simple bit operation is performed on the multiplier, and (3-B) is generated using the multiplier recoding circuit 207.
Then, the recode value is input to the partial product generation and addition circuit 206. Further, at this time, the latch 202 are input R i-1, multiplied by R i-1 × (3- R i-1 2 × X) is executed.

【0052】以上示したように、ニュートンラフソン法
を用いた除算、平方根の場合、中間積を乗数リコード回
路に入力し、(2−B)、(3−B)を乗数リコード時
に簡単なビット操作により実行する。この実現方法につ
いて以下に示す。
As described above, in the case of division and square root using the Newton-Raphson method, the intermediate product is input to the multiplier recoding circuit, and (2-B) and (3-B) are subjected to simple bit operations during multiplier recoding. Execute by The method of realizing this will be described below.

【0053】今、Bはラッチ202から出力された1に
近い冗長2進数値であり、例えば、Bと1との差が2-9
未満であるとする。冗長2進数値の小数点より上位2桁
と下位1桁の計3桁について、Bの値(1に近く誤差が
-9未満)が存在するかどうかを示した表を次に示す。
Now, B is a redundant binary value close to 1 output from the latch 202. For example, the difference between B and 1 is 2 -9.
It is assumed that it is less than. A table showing whether or not the value of B (close to 1 and having an error of less than 2 -9 ) is present for a total of three digits of the upper two digits and the lower one digit from the decimal point of the redundant binary value is shown below.

【表10】 [Table 10]

【表11】 [Table 11]

【0054】表10,表11において、Tは−1であ
り、111の列は、冗長2進数値の小数点より上位2桁
と下位1桁の取りうる値である。112の列は、111
の列に示される数値の並びで、Bの値が存在するかどう
か、もし存在すればどのような値になっているかを示し
た列である。破線で示した部分は存在しない部分であ
る。113の列は、112の列に示されるBに対し、2
−Bを演算した場合どのような冗長2進数値になるか示
した列である。114の列は、112に示されるBに対
し、3−Bを演算した場合どのような冗長2進数値にな
るかを示した列である。
In Tables 10 and 11, T is −1, and the column of 111 is a value that can be taken by the upper two digits and the lower one digit from the decimal point of the redundant binary value. The column of 112 is 111
Is a column that indicates whether the value of B exists and what the value, if any, is in the sequence of numerical values shown in the column of FIG. The portion indicated by the broken line is a portion that does not exist. Column 113 has a value of 2 for B shown in column 112.
This is a column showing what redundant binary value is obtained when -B is calculated. A column 114 is a column showing what redundant binary value is obtained when 3-B is operated on B shown in 112.

【0055】112の列は、以下のように生成される。
Bは仮数乗算結果であり、必ず正の値になる。111の
列は、小数点より上位2桁目で切り出した値であり、も
し負の値になっていてもそれは見かけ上負になっている
だけである。従って、例えばTT.Tの場合、乗算結果
Bは必ず正の値になっているから、小数点より上位3桁
目に必ず数値1が存在しており、TT.Tは1T.Tと
同じ値になるはずである(Tは−1である)。1T.T
は2進数で表現すると00.1となる。即ち、小数点よ
り下位2桁目以下に数値1が連続すれば、その数値は1
に近い数値になる。この時のBの値を(21)式に示
す。 B = 1T.T111111・・・(21) 2−Bの実現は(22−1)の様になり、これを更に変
形し(22−2)に示すようになる。
The column 112 is generated as follows.
B is the result of the mantissa multiplication and is always a positive value. The column 111 is a value cut out at the second digit higher than the decimal point. Even if the value is negative, it is only apparently negative. Therefore, for example, TT. In the case of T, since the multiplication result B is always a positive value, the numerical value 1 always exists in the third digit higher than the decimal point. T is 1T. It should be the same value as T (T is -1). 1T. T
Is expressed as 00.1 in binary. That is, if the numerical value 1 continues in the second and lower digits below the decimal point, the numerical value is 1
Will be closer to. The value of B at this time is shown in equation (21). B = 1T. T111111... (21) Implementation of 2-B is as shown in (22-1), which is further modified as shown in (22-2).

【数11】 [Equation 11]

【0056】3−Bの実現は(23−1)の様になり、
これを更に変形し(23−2)に示すようになる。
The realization of 3-B is as shown in (23-1),
This is further modified as shown in (23-2).

【数12】 (Equation 12)

【0057】(22−2)、(23−2)式に示すよう
にして表10,表11が求められる。ここで表10,表
11の2−Bの列(113の列)に注目する。すると、
全ての2−Bの値は、上位3桁が”010”になり、小
数点より下位2桁目の値は、Bの小数点より下位1桁目
の値が”0”であればBの小数点より下位2桁目の値の
符号反転値になり、またBの小数点より下位1桁目の値
が”0”以外であればBの小数点より下位2桁目の値の
そのままになる。小数点より下位3桁目以下の値は、B
の小数点より下位3桁目以下の値の符号反転値になる。
また同様に、図11の3−Bの列(114の列)に注目
すると、全ての3−Bの値は、上位3桁が”100”に
なり、小数点より下位2桁目の値は、Bの小数点より下
位1桁目の値が”0”であればBの小数点より下位2桁
目の値の符号反転値になり、またBの小数点より下位1
桁目の値が”0”以外であればBの小数点より下位2桁
目の値のそのままになる。小数点より下位3桁目以下の
値は、Bの小数点より下位3桁目以下の値の符号反転値
になる。これをより具体的に説明すると、まずAを2進
数で表現したとき2 -i の重みを持つ桁に非零の値を持
ち、2 -(i+1) の重みを持つ桁から下位が0である値をi
とし、Bを冗長2進数、Bbを2進数とし冗長2進数B
に近い値とすると、Bbを2進数表示したときに2 -m
重みを持つ桁に非零の値を持ち、2 -(m+1) の重みを持つ
桁から下位が0である値をmとし、jをBとBbの誤差
α×2 -j とし、Lをi,mの大きい方の値、kをL≦k
≦j−1の任意の数とする。即ちkはL以上j−1以下
の任意の数値であり、2の冪数値である。又jは定数B
とBbの誤差(α・2 -j )に示される2の冪数値であり
ます。ここで乗数Aと冗長2進数値B(2進数に変換し
たときBbに近い値)に対し、簡単なビット走査でA−
Bの減算と同様の結果を求めることができる。例えば3
−B(Bは冗長2進数)の演算を行う際に A=11.000000000 B=1T.T11111111 (以下T=−1とする) とする。そうすれば2進数Bbは B=01.000000000 とすると、BとBbの誤差α・2 -j は−00.0000
00001となり、j=9となる。又A,Bbよりi=
0,m=0となる。即ちLはi,mのうち大きい方であ
り、L=0となる。ここで0≦k≦9−1であり、仮に
kを1とおくと、以下のような数値が設定される。 上位から2 -0 までA−Bbの2 -0 の上位の値→10. -1 から2 -1 まで0を設定 → 0 -2 は2 -1 のBの値が非零であり、 Bの2 -2 の値、即ち → 1 -3 以下はBの符号反転値 → TTTTTTT 即ち得られる結果は10.01TTTTTTTとなり、
(23−2)と同じ値となる。このように減算を行った
結果と同じ結果が簡単に得られ、これをリコード回路の
入力とする。 即ち、2−B、3−Bの演算が、上記した
ような定数設定と簡単な演算と符号反転により簡単に実
現できることがわかる。
Tables 10 and 11 are obtained as shown in equations (22-2) and (23-2). Here, attention is paid to the column 2-B (column 113) in Tables 10 and 11. Then
For all 2-B values, the upper three digits are "010", and the value of the second digit lower than the decimal point is less than the decimal point of B if the value of the first digit lower than the decimal point of B is "0". If the value of the first digit lower than the decimal point of B is other than "0", the value of the second digit lower than the decimal point of B remains unchanged. The value below the third digit below the decimal point is B
Is the sign-inverted value of the value of the third lower digit and lower than the decimal point of
Similarly, focusing on the column 3-B (column 114) in FIG. 11, the upper three digits of all 3-B values are “100”, and the value of the lower two digits after the decimal point is: If the value of the first digit lower than the decimal point of B is “0”, it becomes the sign-inverted value of the value of the second digit lower than the decimal point of B, and the value lower than the decimal point of B by 1
If the value of the digit is other than "0", the value of the second digit lower than the decimal point of B remains unchanged. The value of the third or lower digit below the decimal point is a sign-inverted value of the value of the third or lower digit below the decimal point of B. To explain this more specifically, first, A is binary.
When represented by a number, a digit with a weight of 2 -i has a non-zero value.
That is, a value whose lower order is 0 from a digit having a weight of 2- (i + 1) is i
, B is a redundant binary number, Bb is a binary number, and a redundant binary number B
If the value to be close to, 2 -m of when viewing Bb 2 binary number
It has a value of non-zero digits with the weights, 2 - with a weight of (m + 1)
Let m be the value whose lower order is 0 from the digit, and j be the error between B and Bb.
α × 2 −j , L is the larger value of i and m, and k is L ≦ k
≤ j-1. That is, k is L or more and j-1 or less
And an exponent of 2. J is a constant B
And the power of 2 shown in the error (α · 2 -j ) of Bb
You. Where the multiplier A and the redundant binary value B (converted to binary
A value close to Bb when the
A result similar to the subtraction of B can be obtained. For example, 3
When performing an operation of −B (B is a redundant binary number), A = 11.00000000000 B = 1T. It is assumed that T11111111 (hereinafter T = -1) . Then , assuming that the binary number Bb is B = 0.100000000000 , the error α · 2- j between B and Bb is −0.00000.
00001, and j = 9. Also, from A and Bb, i =
0, m = 0. That is, L is the larger of i and m
L = 0. Here, 0 ≦ k ≦ 9-1.
If k is set to 1, the following numerical values are set. Top value → 10 of 2 -0 of A-Bb from the host to 2 -0. Set 0 from 2 -1 to 2 -1 → 0 2 -2 has a non-zero B value of 2 -1 , and 2 -2 values of B , ie → 1 2 -3 or less sign inversion of B Value → TTTTTTT, that is, the result obtained is 10.01 TTTTTTTT,
This is the same value as (23-2). Did the subtraction like this
You can easily get the same result as the result,
Take as input. That is, it can be seen that the calculations of 2-B and 3-B can be easily realized by the above-described constant setting, simple calculation, and sign inversion.

【0058】実際に、2−Bの機能を持たせた乗数リコ
ード回路のブロック図を図11及び図12に示す。30
1は図3における冗長2進数2ビットブースリコード回
路の基本単位である。又選択回路1201は、冗長2進
数2ビットブースリコード回路の基本単位への入力値を
制御する入力選択手段である。冗長2進数の割当は表1
に示すようになっているとする。SUB信号は、2−B
の演算を実行するという信号である。信号SUBが入力
されると、上位3桁には、”010”((Xp,Xm)
= (00)、(10)、(00))が入力され、小数点
より下位2桁目には、小数点より下位1桁目の冗長2進
数入力値が”0”((Xp-1,Xm-1)=(0,0))
であれば、冗長2進数値(Xp-2,Xm-2)がスワップ
して入力され、小数点より下位1桁目の冗長2進数入力
値が”0”以外((Xp-1,Xm-1)≠(0,0))で
あれば、冗長2進数値(Xp-2,Xm-2)がそのまま入
力される。小数点より下位3桁目以下は、冗長2進数値
(Xp-1,Xm-1)がスワップして入力される。表1か
らXpi ,Xmi をスワップするということは、符号反
転を実行する事である。なお、ここでは2−Bを実現す
るための構成について述べたが、3−Bを実行する場合
においても上位3桁の定数値を”010”から”10
0”に変えるだけでよく、簡単にインプリメントでき
る。
Actually, FIGS. 11 and 12 are block diagrams of a multiplier recoding circuit having the function of 2-B. 30
1 is a basic unit of the redundant binary 2-bit booth recoding circuit in FIG. The selection circuit 1201 is input selection means for controlling an input value to a basic unit of the redundant binary 2-bit Booth recoding circuit. Table 1 shows the assignment of redundant binary numbers.
It is assumed that it is as shown in FIG. The SUB signal is 2-B
Is executed. When the signal SUB is input, "010" ((Xp, Xm) is added to the upper three digits.
= (00), (10), (00)), and the second digit below the decimal point has a redundant binary input value of the first digit below the decimal point of “0” ((Xp −1 , Xm −). 1 ) = (0,0))
, The redundant binary values (Xp -2 , Xm -2 ) are swapped and input, and the redundant binary input value of the first digit lower than the decimal point is other than “0” ((Xp −1 , Xm −1). ) ≠ (0,0)), the redundant binary value (Xp -2 , Xm -2 ) is input as it is. Redundant binary values (Xp −1 , Xm −1 ) are swapped in the third and lower digits below the decimal point. It Table 1 Xp i, that swap Xm i is to perform sign inversion. Here, the configuration for realizing 2-B has been described. However, even when 3-B is executed, the constant values of the upper three digits are changed from “010” to “10”.
It only needs to be changed to 0 "and can be easily implemented.

【0059】以上、乗数リコード回路で2−B、3−B
を実行するために、上位3桁には定数と通常入力値の選
択回路を置き、小数点より下位2桁目は小数点より下位
1桁目が”0”であればスワップするスワップ回路をお
き、小数点より下位3桁目以下にはスワップ回路を置け
ばよい。そのため従来のように冗長2進数減算回路を使
用する必要がなく、高速に、しかも少ないハードウェア
で実行することができる。
As described above, in the multiplier recoding circuit, 2-B and 3-B
In order to execute the above, a selection circuit for a constant and a normal input value is placed in the upper three digits, and a swap circuit for swapping the second digit lower than the decimal point if the first digit lower than the decimal point is "0" is set. A swap circuit may be placed in the lower third digits and below. Therefore, there is no need to use a redundant binary number subtraction circuit as in the prior art, and the processing can be performed at high speed with a small amount of hardware.

【0060】以上は、(2−B)、(3−B)の用に限
定された形の乗数リコードとその選択回路について述べ
たが、ここでは、更に一般化した場合、すなわち(A−
B)を乗数リコード回路に入力する場合について述べ
る。但しAは2進数の定数、Bは冗長2進数で表現され
た中間積であり、それぞれ(24)、(25)式に示す
フォーマットになっているとする。 A=A0 .A1 2 3 …Ai ・・・(24) B=B0 .B1 2 3 ………Bk ・・・(25) また、冗長2進数値の中間積Bは2進数で表現されたあ
る定数値Bbとほとんど等しく、その誤差は2進数で表
現した場合、(26)式のように表現され、またBbの
フォーマットは(27)式のように表現されているとす
る。 B−Bb=±α・2-j 但し、α=0.1 **…、*は0又は1・・・(26) Bb=Bb0 .Bb1 Bb2 Bb3 ………Bbm ・・・(27) 但し、i、m<j<kの関係が成り立っているものとす
る。(24)〜(27)式を用い、A−Bを表すと(2
8)式の様になる。但し、AからBを冗長2進数体形で
減算した結果をRとする。 R=A−B =(A−Bb)−(±α・2-j)・・・(28) これを、各桁毎に表すと(29)のようになる。
Although the above description has been given of the multiplier recode and its selection circuit limited to the forms (2-B) and (3-B), here, a more generalized case, that is, (A-
A case where B) is input to the multiplier recoding circuit will be described. Here, A is a binary constant, and B is an intermediate product represented by a redundant binary number, and is assumed to be in the format shown in equations (24) and (25), respectively. A = A 0 . A 1 A 2 A 3 ... A i (24) B = B 0 . B 1 B 2 B 3 ... B k (25) Further, the intermediate product B of the redundant binary values is almost equal to a certain constant value Bb represented by a binary number, and the error thereof is represented by a binary number. In this case, it is assumed that the expression is expressed as in Expression (26), and the format of Bb is expressed as in Expression (27). B−Bb = ± α · 2 −j where α = 0.1 **, * is 0 or 1 (26) Bb = Bb 0 . Bb 1 Bb 2 Bb 3 ... Bb m (27) Here, it is assumed that the relationship of i, m <j <k holds. Using equations (24) to (27), AB is expressed as (2
Equation 8) is obtained. Here, R is the result of subtracting B from A in a redundant binary form. R = AB = (A−Bb) − (± α · 2 −j ) (28) When this is represented for each digit, it becomes as shown in (29).

【数13】 (Equation 13)

【0061】ここで、(29)式からわかるようにRの
-(i+1)桁以下については、0からBの減算になるか
ら、Rの2-(i+1)桁以下はBの符号反転値に等しくな
る。また、(27)、(28)式より、Rの2-m桁より
上位桁は、2-m桁から上位のみを2進数に変換した場
合、A−BbかA−Bb±2-mになる。2-m桁から上位
がA−Bbの場合、2-(m+1)桁より下位桁は、2進数に
変換した場合±α・2 -jに等しくなる。2-m桁から上位
がA−Bb±2-mの場合、2-(m+1)桁より下位桁は、2
進数に変換した場合−(±2-m)±α・2 -jに等しくな
る。この様子を、2-m近辺の値を拡大して書くと、(表
12)のようになる。
[0061] Here, the R as can be seen from (29) 2 - (i + 1) for the following digit is because from 0 to subtraction of B, the R 2 - (i + 1) digits is B Equal to the inverted value of Further, (27), (28) from the equation upper digits than 2 -m digit R, when converted from 2 -m digit higher only to binary, the A-Bb or A-Bb ± 2 -m Become. From 2 -m upper digit is A-Bb, 2 - (m + 1) lower digit than digits is equal to the case ± alpha · 2 -j converted into a binary number. If the upper part of the 2- m digit is A-Bb ± 2 -m , the lower digit of the 2- (m + 1) digit is 2
When converted to a base number, it becomes equal to- (± 2 -m ) ± α · 2 -j . When this state is written by enlarging the value around 2 −m , it becomes as shown in (Table 12).

【表12】 [Table 12]

【0062】(表12)において、2-m桁より上位桁は
定数Aと定数Bbの減算値に等しいか又はそれより2-m
だけ大きいか又は小さくなっている。
In Table 12, the digits higher than 2 -m digits are equal to or smaller than the subtracted value of the constant A and the constant Bb by 2 -m
Only larger or smaller.

【0063】今、2-(m+1)未満に誤差が存在する場合を
考える。まず、2-m桁より下位に向かい2-(m+1)桁まで
0に変換する。(表12)において2-m桁より上位がA
−Bb+2-mの場合は、2-mの分が2-(m+1)桁より下位
に連続して存在するTの列により下位に伝搬し、(表1
3)のようになる。同様に、(表12)におけるA−B
b−2-mに関しても同様に(表13)のようになる。
Now, consider a case where an error exists below 2 − (m + 1) . First, it is converted to 0 down to 2- (m + 1) digits below 2 -m digits. In Table 12, A is higher than 2 -m digits.
In the case of −Bb + 2 −m , the portion of 2 −m is propagated to the lower side by a column of T which is continuously lower than 2 − (m + 1) digits, as shown in Table 1
It looks like 3). Similarly, AB in (Table 12)
The same applies to b-2- m as shown in (Table 13).

【表13】 [Table 13]

【0064】従って、2-(m+1)未満に誤差が存在する場
合、A−Bは以下のように実現できる。(表13)にお
いて、2-mより上位桁にはA−Bbを設定し、2-(m+1)
桁には0を設定する。2-(m+2)桁は、(表12)におい
て、2-(m+1)桁が0であれば(表12)の2-(m+2)桁の
Rの値をそのまま設定、2-(m+1)桁が0以外であれば
(表12)の2-(m+2)桁の値を符号反転し設定する。2
-(m+3)桁以下に関しては、Rの値をそのまま入力すれば
よい。今、2-m桁以下のRの値は、Bの符号反転値に等
しいから、上記したことを、Bについて言い換えると、
以下のようになる。2-(m+1)未満に誤差が存在する場
合、A−Bは以下のように実現できる。(表13)にお
いて、2-mより上位桁にはA−Bbを設定し、2-(m+1)
桁には0を設定する。2-(m+2)桁は、(表12)におい
て、2-(m+1)桁が0であれば、Bの2-(m+2)桁の値を符
号反転し設定、2-(m+1)桁が0以外であればBの2
-(m+2)桁の値をそのまま設定する。2-(m+3)桁以下に関
しては、Bの値を符号反転し、設定すればよい。
Therefore, if there is an error less than 2- (m + 1) , AB can be realized as follows. In (Table 13), A-Bb is set in the digits higher than 2 -m , and 2- (m + 1)
Set 0 to the digit. 2 - (m + 2) digit, in (Table 12), 2 - (m + 1) if the digit is 0 (Table 12) of 2 - (m + 2) it sets the value of the digit R, If the 2- (m + 1) digit is other than 0, the value of the 2- (m + 2) digit in (Table 12) is inverted and set. 2
For-(m + 3) digits or less, the value of R may be input as it is. Now, since the value of R of 2 −m digits or less is equal to the sign-inverted value of B, the above is rephrased for B.
It looks like this: If there is an error less than 2- (m + 1) , AB can be realized as follows. In (Table 13), A-Bb is set in the digits higher than 2 -m , and 2- (m + 1)
Set 0 to the digit. 2 - (m + 2) digit, in (Table 12), 2 - (m + 1) if the digit is 0, 2 B - (m + 2) the value of the digit sign change set, 2 - If the (m + 1) digit is other than 0, 2 of B
Set the value of- (m + 2) digits as it is. For 2- (m + 3) digits or less, the value of B may be inverted and set.

【0065】以上は2-(m+1)未満に誤差が存在する場合
について述べたが、一般に2-j桁未満に誤差が存在する
場合についても同様なことが言える。但し、j≧m+1
である。この場合、A−Bは以下のように実現できる。
-mより上位桁にはA−Bbを設定し、2-(m+1)桁から
-j桁には0を設定する。2-(j+1)桁は、2-j桁が0で
あれば、Bの2-(j+1)桁の値を符号反転し設定、2-j
が0以外であればBの2-(j+1)桁の値をそのまま設定す
る。2-(j+2)桁以下に関しては、Bの値を符号反転し、
設定すればよい。
Although the above description has been made on the case where the error exists below 2 − (m + 1) , the same can be said generally when the error exists below 2 −j digits. Where j ≧ m + 1
It is. In this case, AB can be realized as follows.
A-Bb is set in the higher digits than 2 -m , and 0 is set in the 2- (m + 1) digits to 2 -j digits. 2 - (j + 1) digits, 2 if -j digit is 0, B of 2 - (j + 1) digit value negation Set, 2 -j digit of B if it is other than 0 2 Set the value of- (j + 1) digit as it is. For 2- (j + 2) digits or less, the sign of the value of B is inverted,
Just set it.

【0066】以上、一般的な場合について述べたが、こ
れを、上記(2−B)、(3−B)の場合に当てはめる
と以下のようになる。 (2−B) → A=2 Bb=1 (3−B) → A=3 Bb=1 即ち、小数点より上位にはA−Bbを設定し、小数点よ
り下位1桁目には”0”を設定し、小数点より下位2桁
目にはBの小数点より下位1桁目の値により符号反転入
力し、小数点より下位3桁目以下はBの小数点より下位
3桁目以降を符号反転して入力すると言うようになる。
As described above, the general case has been described. When this is applied to the above cases (2-B) and (3-B), the following is obtained. (2-B) → A = 2 Bb = 1 (3-B) → A = 3 Bb = 1 That is, A-Bb is set higher than the decimal point, and “0” is set at the first digit lower than the decimal point. Set and sign-inverted and input the second digit below the decimal point with the value of the first digit below the decimal point of B, and enter the sign of the third and lower digits below the decimal point with the sign inverted after the third digit below the decimal point of B Then come to say.

【0067】以上のように、ある定数Aから冗長2進数
で表された乗算結果Bを減算した値を次の乗算の乗数と
する様な繰り返し乗算において、従来のように冗長2進
数加算器を使用する必要がなく、高速にしかも少ないハ
ードウェアで実現することができる事がわかる。なお、
本実施例では、冗長2進数について述べたが、他のフォ
ーマットの数体形においても簡単な論理で実行でき、本
発明は有効である。
As described above, in a repetitive multiplication in which a value obtained by subtracting a multiplication result B represented by a redundant binary number from a certain constant A is used as a multiplier of the next multiplication, a redundant binary number adder is conventionally used. It can be seen that there is no need to use it, and it can be realized at high speed with less hardware. In addition,
In the present embodiment, redundant binary numbers have been described. However, the present invention is also effective in the case of a number body in another format with simple logic.

【0068】[0068]

【発明の効果】本発明は、上記実施例から明らかなよう
に、乗数リコード回路の下位集合からの桁上げとして、
桁上げのフォーマットに準じた数値を選択し、入力する
ことによって以下に述べる効果を有する。 (1)乗算毎に乗算結果の丸め処理をする繰り返し乗算
において、乗算毎に2進数変換回路と丸め処理回路を使
用しなくて良く、少ないハードウェアで、しかも少ない
消費電力で、繰り返し乗算を高速に実行できる。 (2)ある定数Aから乗数を減算した値と被乗数を乗算
し、乗算結果を次の乗算の乗数とする繰り返し乗算にお
いて、乗算毎に定数Aから乗数を減算する減算回路を使
用する必要がなく、少ないハードウェアで、しかも少な
い消費電力で、繰り返し乗算を高速に実行できる。
According to the present invention, as is apparent from the above embodiment, the carry from the sub-set of the multiplier recoding circuit is as follows.
Selecting and inputting a numerical value according to the carry format has the following effects. (1) In iterative multiplication in which a rounding process of a multiplication result is performed for each multiplication, a binary conversion circuit and a rounding circuit need not be used for each multiplication, and iterative multiplication can be performed at high speed with less hardware and less power consumption. Can be executed. (2) In a repetitive multiplication in which a value obtained by subtracting a multiplier from a certain constant A and a multiplicand and a multiplication result is a multiplier of the next multiplication, it is not necessary to use a subtraction circuit for subtracting the multiplier from the constant A for each multiplication. The multiplication can be performed at high speed with a small amount of hardware and with low power consumption.

【0069】また、上記(2)において、つぎの乗算の
乗数として、前の乗算の中間積を入力する場合、乗算毎
に定数Aから乗数(中間積)を減算する減算回路を使用
する必要がなく、少ないハードウェアで、しかも少ない
消費電力で、繰り返し乗算を高速に実行できる。
In the above (2), when the intermediate product of the previous multiplication is input as the multiplier of the next multiplication, it is necessary to use a subtraction circuit for subtracting the multiplier (intermediate product) from the constant A for each multiplication. It is possible to execute repetitive multiplication at high speed with less hardware and less power consumption.

【0070】また、冗長2進数2ビットブースリコード
回路の基本単位を構成する場合において、2桁ずつ区切
った集合の上位桁が1であるという信号Qiを使用する
ことで、中間和Si 、中間桁上げCi を第2の中間和R
i 、第2の中間桁上げBi に置き換え論理設計すること
で、トランジスタ数の少ない低消費電力である冗長2進
数2ビットブースリコード回路を構成することができ
る。
When the basic unit of the redundant binary 2-bit Booth recoding circuit is constructed, the intermediate sum S i is obtained by using the signal Q i indicating that the upper digit of the set divided into two digits is 1. , The intermediate carry C i to the second intermediate sum R
i and the second intermediate carry B i, and a logic design is performed, so that a redundant binary 2-bit Booth recode circuit with a small number of transistors and low power consumption can be configured.

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

【図1】本発明の一実施例である乗数リコード回路及び
桁上げ生成回路のブロック図である。
FIG. 1 is a block diagram of a multiplier recoding circuit and a carry generation circuit according to an embodiment of the present invention.

【図2】本発明を利用した場合の冗長2進数で繰り返す
繰り返し乗算処理装置のブロック図である。
FIG. 2 is a block diagram of an iterative multiplication device that repeats with a redundant binary number when the present invention is used.

【図3】本発明の一実施例である冗長2進数2ビットブ
ースリコード回路及び桁上げ生成回路の論理図である。
FIG. 3 is a logic diagram of a redundant binary 2-bit Booth recode circuit and a carry generation circuit according to an embodiment of the present invention.

【図4】図3に示される冗長2進数2ビットブースリコ
ード回路の基本単位301の真理値表である。
FIG. 4 is a truth table of a basic unit 301 of the redundant binary 2-bit Booth recode circuit shown in FIG. 3;

【図5】図3に示される丸め桁上げ生成回路303の真
理値表である。
FIG. 5 is a truth table of the round carry generation circuit 303 shown in FIG. 3;

【図6】本発明の一実施例である2進数2ビットブース
リコード回路及び桁上げ生成回路の論理図である。
FIG. 6 is a logic diagram of a binary 2-bit Booth recode circuit and a carry generation circuit according to an embodiment of the present invention.

【図7】本発明を利用した場合の2進数で繰り返す繰り
返し乗算処理装置のブロック図である。
FIG. 7 is a block diagram of an iterative multiplication processor that repeats in a binary number when the present invention is used.

【図8】本発明の一実施例である数値2から乗算結果を
減算しこれをリコードする2進数2ビットブースリコー
ド回路及び桁上げ生成回路である。
FIG. 8 is a diagram illustrating a binary 2-bit Booth recode circuit and a carry generation circuit that subtract a multiplication result from a numerical value 2 and recode the result, according to one embodiment of the present invention.

【図9】従来の乗算毎に丸め処理を実行する繰り返し乗
算処理装置のブロック図である。
FIG. 9 is a block diagram of a conventional iterative multiplication processing device that performs a rounding process for each multiplication.

【図10】ある定数Aから乗数を減算した値と被乗数を
乗算し、乗算結果を次の乗算の乗数とする従来の繰り返
し乗算処理装置のブロック図である。
FIG. 10 is a block diagram of a conventional iterative multiplication processing apparatus that multiplies a value obtained by subtracting a multiplier from a certain constant A and a multiplicand, and uses the multiplication result as a multiplier of the next multiplication.

【図11】本発明の一実施例である数値2から冗長2進
数値で表現された中間積を減算しこれをリコードする2
進数2ビットブースリコード回路及び選択回路(その
1)である。
FIG. 11 shows an example of subtracting an intermediate product represented by a redundant binary value from a numerical value 2 according to an embodiment of the present invention, and recoding the result.
A 2-bit booth recode circuit and a selection circuit (part 1).

【図12】本発明の一実施例である数値2から冗長2進
数値で表現された中間積を減算しこれをリコードする2
進数2ビットブースリコード回路及び選択回路(その
2)である。
FIG. 12 shows an example of subtracting an intermediate product represented by a redundant binary value from a numerical value 2 according to an embodiment of the present invention, and recoding the result.
A binary 2-bit Booth recode circuit and a selection circuit (No. 2).

【図13】ある定数Aから前の乗算により得られた中間
積(冗長2進数)を減算した値と被乗数を乗算する従来
の繰り返し乗算処理装置のブロック図である。
FIG. 13 is a block diagram of a conventional iterative multiplication processing apparatus for multiplying a multiplicand by a value obtained by subtracting an intermediate product (redundant binary number) obtained by a previous multiplication from a certain constant A;

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

101 乗数リコード回路の基本単位 102 中間和中間桁上げ生成回路 103 リコード値生成回路 104 選択回路 105 0値生成回路 106 丸め桁上げ生成回路 201〜205 ラッチ 206 部分積生成加算回路 207 図1または図3記載の乗数リコード回路 208 2進数変換回路 209 丸め処理回路 301 冗長2進数2ビットブースリコード回路の基本
単位 302 選択回路 303 丸め桁上げ生成回路 304 0値生成回路 601 2ビットブースリコード回路の基本単位 602 選択回路 603 丸め桁上げ生成回路 604 0値生成回路 701〜706 ラッチ 707 乗数リコード回路 708 桁上げ生成回路 801 1値生成回路 802 選択回路 1201 選択回路
101 Basic Unit of Multiplier Recode Circuit 102 Intermediate Sum Intermediate Carry Generation Circuit 103 Recode Value Generation Circuit 104 Selection Circuit 105 0 Value Generation Circuit 106 Round Carry Generation Circuit 201-205 Latch 206 Partial Product Generation Addition Circuit 207 FIG. 1 or FIG. Multiplier recoding circuit described 208 Binary number conversion circuit 209 Rounding circuit 301 Basic unit of redundant binary 2 bit booth recoding circuit 302 Selection circuit 303 Rounding carry generation circuit 304 0 value generation circuit 601 Basic of 2 bit booth recoding circuit Unit 602 Selection circuit 603 Rounding carry generation circuit 604 0 value generation circuit 701 to 706 Latch 707 Multiplier recode circuit 708 Carry generation circuit 801 1 value generation circuit 802 Selection circuit 1201 Selection circuit

フロントページの続き (56)参考文献 特開 昭63−71728(JP,A) 特開 昭63−201825(JP,A) 特開 平1−255032(JP,A) 特開 平2−25924(JP,A) 特開 平2−51732(JP,A) 特開 平2−146621(JP,A) 特開 平2−245824(JP,A)Continuation of the front page (56) References JP-A-63-71728 (JP, A) JP-A-63-201825 (JP, A) JP-A 1-255032 (JP, A) JP-A-2-25924 (JP) JP-A-2-51732 (JP, A) JP-A-2-146621 (JP, A) JP-A-2-245824 (JP, A)

Claims (9)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 基数ΥのM桁の数値をN桁の連続した集
合に分割し(M>=N)、該集合を入力とし、該集合の
数値Zg i を中間和i と中間桁上げCi に分割する複
数の中間和中間桁上げ生成手段、前記中間和Si と1つ
下位の集合からの中間桁上げCi-1 を加算するリコード
値生成手段を有するリコード回路と、 前記中間桁上げCi と同じフォーマットの複数の数値の
中から1つを選択し、選択された値を前記リコード値生
成手段の1つ下位集合からの中間桁上げCi-1として入
力する選択回路と、 前記リコード値生成手段より出力されるリコード値に基
づき被乗数との部分積を生成加算して前記リコード回路
に出力する部分積生成加算回路と、を具備することを特
徴とする乗算処理装置。
1. An M-digit numerical value of a radix Υ is divided into an N-digit continuous set (M> = N), the set is input, and the numerical value Zg i of the set is intermediately summed with an intermediate carry S i. A recoding circuit comprising: a plurality of intermediate sum intermediate carry generating means for dividing into C i; a recode value generating means for adding the intermediate sum S i and an intermediate carry C i-1 from a set lower by one; A selection circuit for selecting one of a plurality of numerical values in the same format as the carry C i and inputting the selected value as an intermediate carry C i-1 from one subset of the recoded value generating means; A multiplication processing device comprising: a partial product generation and addition circuit that generates and adds a partial product with a multiplicand based on a recode value output from the recode value generation unit and outputs the product to the recode circuit.
【請求項2】 前記部分積生成加算回路の出力を所定ビ
ットに丸める丸め桁上げ生成回路を有し、該丸め桁上げ
生成回路の桁上げ出力を前記選択回路の入力とすること
を特徴とする請求項1記載の乗算処理装置。
2. A method according to claim 1, further comprising a round carry generating circuit for rounding an output of said partial product generating and adding circuit to a predetermined bit, wherein a carry output of said round carry generating circuit is an input of said selecting circuit. The multiplication processing device according to claim 1.
【請求項3】 入力データを論理反転して前記各中間和
中間桁上げ生成手段に入力し、前記選択回路に数値”
1”を入力することを特徴とする請求項1記載の乗算処
理装置。
3. The input data is logically inverted and input to each of said intermediate sum and intermediate carry generating means, and a numerical value "
The multiplication processing device according to claim 1, wherein 1 "is input.
【請求項4】 前記中間和中間桁上げ生成手段の入力を
符号付きディジット数としたことを特徴とする請求項1
記載の乗算処理装置。
4. The apparatus according to claim 1, wherein an input of said intermediate sum intermediate carry generating means is a signed digit number.
The multiplication processing device according to the above.
【請求項5】 前記中間和中間桁上げ生成手段の入力を
桁上げ保存形の数値としたことを特徴とする請求項1記
載の乗算処理装置。
5. The multiplication processing device according to claim 1, wherein an input of said intermediate sum intermediate carry generating means is a carry-preserving numerical value.
【請求項6】 前記中間和中間桁上げ生成手段は、基数
2の符号付きディジット数を2桁の連続した集合に分割
し、該集合の上位桁が1であるという信号Qi と一つ下
位集合からの信号Qi-1 を使用し、該集合値Zgi をZ
i =4×Ci +Si に従い、中間和Si 、中間桁上げ
i に分割し、さらにRi=Si +Q i-1 ,Bi =Ci
+Qi バーに従い第2の中間和Ri 、第2の中間桁上げ
i を生成するものであり、 リコード値生成手段は、前記第2の中間和Ri と一つ下
位集合からの第2の中間桁上げBi-1 を使用し、Zi
i-1 +Si =Bi-1 +Ri −1に従い、リコード値Z
i を計算するものであることを特徴とする請求項1記載
の乗算処理装置。
6. The intermediate sum intermediate carry generating means includes a radix
Divide a signed number of 2 into a continuous set of 2 digits
And a signal Q indicating that the upper digit of the set is 1iAnd one below
Signal Q from the rank seti-1And the set value ZgiTo Z
gi= 4 x Ci+ Si, The intermediate sum Si, Intermediate carry
CiAnd further divided into Ri= Si+ Q i-1, Bi= Ci
+ QiThe second intermediate sum R according to the bari, The second intermediate carry
BiThe recoded value generating means generates the second intermediate sum RiAnd one below
The second intermediate carry B from the order seti-1And Zi=
Ci-1+ Si= Bi-1+ Ri-1 and the recoded value Z
i2. The method according to claim 1, wherein
Multiplication processor.
【請求項7】 2-iの重みを持つ桁に非零の値を持ち、
-(i+1)の重みを持つ桁から下位が0である2進数で表
現された定数Aから、冗長2進数で表現されたある数値
B(但し数値Bは2進数に変換するとBb±α・2-m
等しい。ここでBbは -m の重みを持つ桁に非零の値を
持ち、2 -(m+1) の重みを持つ桁から下位が0である定
数。1≦α<2、i,m<j)なる数を減算しリコード
回路に入力する乗算処理装置において、Lをi,m のうち大きい方の値とすれば、最上位から
-L 桁目までA−Bbの2 -L から上位の値を設定し、
-(L+1) 桁目から -(k) 桁目まで数値0を設定し(L≦k
≦j−l)、2 -(k+1) 桁目には、ある数値Bの -(k)
目の値が数値0以外であれば数値Bの -(k+1) 桁の値、
数値0であればその符号反転値を設定し、 -(k+2) 桁目
以下すべての桁には、ある数値Bの -(k+2) 桁目以下の
符号反転値を設定し、リコード回路の入力とする入力選
択手段を具備することを特徴とする乗算処理装置。
7. A digit having a weight of 2- i having a non-zero value,
From a constant A expressed by a binary number whose lower order is 0 from a digit having a weight of 2- (i + 1) , a certain numerical value B expressed by a redundant binary number (however, when the numerical value B is converted into a binary number, Bb ± is equal to α · 2 -m , where Bb is a non-zero value for the digit with a weight of 2 -m
And the lower order is 0 from the digit having the weight of 2- (m + 1)
number. 1 ≦ α <2, i, subtracts the number consisting m <j) recode
In the multiplication processing device input to the circuit , if L is the larger value of i and m , 2
Until -L digit to set the value of the upper from 2 -L of A-Bb, 2
Set the numerical value 0 from the- (L + 1) digit to the 2- (k) digit ( L ≦ k
≦ j-l), 2 - (k + 1) in the digit, 2 of a numerical B - 2 (k) numeric If non-numeric value of digit 0 B - (k + 1) digits value,
If a numerical value 0 sets the sign-inverted value, 2 - (k + 2) to the digit following all the digits, 2 of a numerical B - Set (k + 2) th digit following the sign inversion value A multiplication processing device , comprising: input selection means for inputting to a recoding circuit .
【請求項8】 前記ある数値Bが桁上げ保存形の数値で
あることを特徴とする請求項7記載の乗算処理装置。
8. The multiplication processing apparatus according to claim 7, wherein said numerical value B is a carry-preserving numerical value.
【請求項9】 前記入力選択手段は、小数点より下位1
桁目以上の数値にある定数値を選択し、入力値の小数点
より下位3桁目以下の数値の符号反転値を選択し、小数
点より下位1桁目の入力値の値が数値0以外であれば小
数点より下位2桁目の入力値を選択し、数値0であれば
その入力値の符号反転値を選択するものであることを特
徴とする請求項7記載の乗算処理装置。
9. The input selection means according to claim 1, wherein said lower limit is one lower than a decimal point.
Select the constant value that is in the numerical value above the digit, select the sign-inverted value of the numerical value in the third digit below the decimal point of the input value, and if the value of the input value in the first digit lower than the decimal point is other than the numerical value 0 8. The multiplication processing apparatus according to claim 7, wherein an input value of the second digit lower than the decimal point is selected, and if the numerical value is 0, a sign-inverted value of the input value is selected.
JP3222085A 1990-08-07 1991-08-06 Multiplication processing unit Expired - Fee Related JP2580413B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3222085A JP2580413B2 (en) 1990-08-07 1991-08-06 Multiplication processing unit

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2-210903 1990-08-07
JP21090390 1990-08-07
JP3222085A JP2580413B2 (en) 1990-08-07 1991-08-06 Multiplication processing unit

Publications (2)

Publication Number Publication Date
JPH0511981A JPH0511981A (en) 1993-01-22
JP2580413B2 true JP2580413B2 (en) 1997-02-12

Family

ID=26518328

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3222085A Expired - Fee Related JP2580413B2 (en) 1990-08-07 1991-08-06 Multiplication processing unit

Country Status (1)

Country Link
JP (1) JP2580413B2 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62100543U (en) * 1985-12-12 1987-06-26
JPS6371728A (en) * 1986-09-12 1988-04-01 Matsushita Electric Ind Co Ltd Operation processing device
JPS63201825A (en) * 1987-02-18 1988-08-19 Matsushita Electric Ind Co Ltd Arithmetic processor

Also Published As

Publication number Publication date
JPH0511981A (en) 1993-01-22

Similar Documents

Publication Publication Date Title
Ercegovac et al. Digital arithmetic
EP0149248B1 (en) Method and apparatus for division using interpolation approximation
JP2523962B2 (en) Floating point arithmetic unit
US7921149B2 (en) Division and square root arithmetic unit
EP0356153B1 (en) Radix-2**n divider method and apparatus using overlapped quotient bit selection and concurrent quotient rounding and correction
JPH0969040A (en) Circuit for computing/dividing of square root of radical number 2 by three overlapped stages with presumptive computing
US5132925A (en) Radix-16 divider using overlapped quotient bit selection and concurrent quotient rounding and correction
JPH0773227A (en) Automatic designing method for logical circuit, system and device therefor and multiplier
JPH04283831A (en) Divider
WO1997045787A1 (en) A novel division algorithm for floating point or integer numbers
JPH03164932A (en) Arithmetic circuit and method of processing data by the same
US5818745A (en) Computer for performing non-restoring division
JP2001222410A (en) Divider
US5289398A (en) Small-sized low power consumption multiplication processing device with a rounding recording circuit for performing high speed iterative multiplication
JP2580413B2 (en) Multiplication processing unit
JP2857505B2 (en) Division device
JP3660075B2 (en) Dividing device
US6109777A (en) Division with limited carry-propagation in quotient accumulation
JP2578482B2 (en) Floating point arithmetic unit
JP2972326B2 (en) Square root calculator
Shapran et al. DIVISION USING THE BASE RADIX16 NUMBER SYSTEM TO FORM FRACTION DIGITS
JP2508286B2 (en) Square root calculator
JP2518532B2 (en) Subtractor shift type divider
JP3233432B2 (en) Multiplier
Al-Khateeb Design of an ALU for RNS Using CMOS Technology

Legal Events

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