JP2990910B2 - Binary parallel squaring multiplier - Google Patents

Binary parallel squaring multiplier

Info

Publication number
JP2990910B2
JP2990910B2 JP3338945A JP33894591A JP2990910B2 JP 2990910 B2 JP2990910 B2 JP 2990910B2 JP 3338945 A JP3338945 A JP 3338945A JP 33894591 A JP33894591 A JP 33894591A JP 2990910 B2 JP2990910 B2 JP 2990910B2
Authority
JP
Japan
Prior art keywords
partial product
adder
output
circuit
bit
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 - Lifetime
Application number
JP3338945A
Other languages
Japanese (ja)
Other versions
JPH05173762A (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.)
Nissan Motor Co Ltd
Original Assignee
Nissan Motor 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 Nissan Motor Co Ltd filed Critical Nissan Motor Co Ltd
Priority to JP3338945A priority Critical patent/JP2990910B2/en
Publication of JPH05173762A publication Critical patent/JPH05173762A/en
Application granted granted Critical
Publication of JP2990910B2 publication Critical patent/JP2990910B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、2進数の2乗算を並列
演算で行なう2進数並列2乗算器に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a binary parallel squaring multiplier for performing squaring of a binary number by a parallel operation.

【0002】[0002]

【従来の技術】従来の2進数の並列乗算器は、2進数の
各ビット相互の積(以下部分積と記す)を求める部分積
演算回路と、各部分積のうちの同位桁(羃指数が同じ
値)のもの同志を加算する加算回路とから構成されてい
る。図15は、上記の部分積演算回路の一例のブロック
図、図16は上記の加算回路の一例のブロック図、図1
7は図15と図16における演算内容の数式を示す図で
ある。この例は、4ビットの2進数を、ビット列として
上位桁から “a3210” と表わした場合に、その2乗、すなわち “a3210”דa3210” を演算する場合を示す。また、その演算結果(8ビッ
ト)を “p76543210” で表わす。
2. Description of the Related Art A conventional binary parallel multiplier includes a partial product operation circuit for calculating a product of each bit of a binary number (hereinafter, referred to as a partial product), and an equivalent digit (power exponent) of each partial product. (The same value). FIG. 15 is a block diagram of an example of the above partial product operation circuit, FIG. 16 is a block diagram of an example of the above addition circuit, and FIG.
FIG. 7 is a diagram showing a mathematical expression of the calculation contents in FIGS. 15 and 16. In this example, when a 4-bit binary number is represented as “a 3 a 2 a 1 a 0 ” as a bit string from the upper digit, its square, that is, “a 3 a 2 a 1 a 0 ” × “a 3 shows the case of calculating the a 2 a 1 a 0 ". Further, the calculation result (8 bits) represented by "p 7 p 6 p 5 p 4 p 3 p 2 p 1 p 0".

【0003】まず、図15において、マトリクスの交点
に黒丸印を付した部分は、横軸と縦軸とのANDを求め
る回路を意味する。例えば、横軸a3と縦軸a0との交点
は、a3とa0とのANDを求めるものであり、その出力
がa3とa0との部分積、すなわち(a30)となる。次
に、図16において、正方形の箱は加算器を示し、その
うち3入力2出力(入力の一つは箱内に記載した符号)
の正方形はフルアダー1を、2入力2出力(入力の一つ
は箱内に記載した符号)の正方形はハーフアダー2を表
わし、箱内の値と矢印で入力する値とを加算することを
意味する。また、斜め方向(対角線方向)の矢印3は入
力および加算結果(和)の出力を示し、水平方向および
垂直方向の矢印4はキャリー信号を示す。図16におい
ては、同位桁の値がそれぞれ対角線に平行な線上に並ん
でいる。例えばa30、a21、a12、a03のライ
ンは23の桁(出力p3)である。上記の演算の数式は、
図17に示すようになる。図17において、加算の項で
は、同じ数値で順序の異なる値、例えばa30とa03
とは同じ値であるため、上位桁を前にして整理してい
る。例えば、a30+a03=2a30としている。上
記の例は、4ビットの2進数“a3210”の2
乗を演算する場合を例示しているが、上記の回路は、2
乗演算に限らず二つの任意の2進数の乗算を求めること
が出来る。従来は、2乗算を行なう場合にも、上記のご
とき一般の乗算器を用いていた。したがって、4ビット
の2進数の2乗算を行なう場合には、図15、図16に
示したごとく、4×4=16個のANDゲートを備えた
部分積演算回路と、4×3=12個の加算器を備えた加
算回路とが必要であった。
[0005] First, in FIG. 15, a portion with a black circle at the intersection of the matrix means a circuit for obtaining an AND between the horizontal axis and the vertical axis. For example, the intersection of the horizontal axis a 3 and the vertical axis a 0 is for obtaining the AND of a 3 and a 0, partial products, i.e. (a 3 a 0) of its output and a 3 and a 0 Becomes Next, in FIG. 16, a square box indicates an adder, of which 3 inputs and 2 outputs (one of the inputs is the code described in the box)
Represents a full adder 1 and a square of two inputs and two outputs (one of the inputs is a code described in a box) represents a half adder 2, which means that the value in the box is added to the value input by an arrow. . Arrows 3 in oblique directions (diagonal directions) indicate inputs and outputs of addition results (sums), and arrows 4 in the horizontal and vertical directions indicate carry signals. In FIG. 16, the values of the same digit are arranged on a line parallel to the diagonal line. For example lines of a 3 a 0, a 2 a 1, a 1 a 2, a 0 a 3 is 2 3 digits (output p 3). The formula for the above operation is
As shown in FIG. In FIG. 17, in the term of addition, values having the same numerical value but different orders, for example, a 3 a 0 and a 0 a 3
Are the same value, so they are sorted with the most significant digits first. For example, and with a 3 a 0 + a 0 a 3 = 2a 3 a 0. In the above example, the 4-bit binary number "a 3 a 2 a 1 a 0 "
Although the case where a power is calculated is illustrated, the above circuit employs 2
Not only multiplication operation but also multiplication of two arbitrary binary numbers can be obtained. Conventionally, when performing squaring, a general multiplier as described above has been used. Therefore, when performing 4-bit binary squaring, as shown in FIGS. 15 and 16, a partial product operation circuit having 4 × 4 = 16 AND gates and 4 × 3 = 12 And an adder circuit having the adder.

【0004】[0004]

【発明が解決しようとする課題】上記のように、従来に
おいては、2乗算を行なう場合にも通常の乗算器を用い
るしかなく、2乗算という特殊性があるにも拘らず、計
算速度や回路構成の複雑さが通常の乗算器と同じになっ
てしまう、という問題点があった。本発明は、上記のご
とき従来技術の問題を解決するためになされたものであ
り、2乗算という特殊性を活かして、従来より構成が簡
単で、かつ高速計算が可能な2進数並列2乗算器を提供
することを目的とする。
As described above, in the prior art, when performing squaring, an ordinary multiplier must be used. In spite of the specialty of squaring, the calculation speed and the circuit are reduced. There is a problem that the complexity of the configuration becomes the same as that of a normal multiplier. SUMMARY OF THE INVENTION The present invention has been made to solve the problems of the prior art as described above, and takes advantage of the special feature of squaring, thereby making it possible to achieve a binary parallel squaring multiplier having a simpler configuration and capable of performing high-speed calculations. The purpose is to provide.

【0005】[0005]

【課題を解決するための手段】本発明の基本原理となる
2進数並列2乗算器においては、同一の二つのnビット
2進数の各ビット相互の積をそれぞれ部分積とした場合
に、該部分積の各項を、2進数としての羃指数の同じ項
が対角線に平行な線上に並んだ2乗算における部分積項
の行列とし、値の同じ部分積項をそれぞれまとめ、それ
らのまとめられた項を羃指数の位置で1桁上げた三角行
列とした場合に、該三角行列の各部分積項の位置に加算
器を接続して形成した加算回路と、同一の二つのnビッ
ト2進数の各ビット相互の積のうち、上記三角行列に対
応した部分積を演算する部分積演算回路と、を備え、上
記部分積演算回路の各出力を上記加算回路の対応する部
分積項の位置の加算器に入力するように構成している。
上記の加算器としては、例えば、3入力2出力のフルア
ダー、2入力2出力のハーフアダー、および桁上げ先取
り機能を備えたキャリールックアヘッドアダーを用いる
ことが出来る。
In a binary parallel binary multiplier according to the basic principle of the present invention, when the product of each bit of the same two n-bit binary numbers is a partial product, the partial product Each term of the product is a matrix of partial product terms in squaring in which the same terms of the power exponent as a binary number are arranged on a line parallel to the diagonal, and the partial product terms having the same value are put together. Is a triangular matrix raised by one digit at the position of the exponent exponent, an adder circuit formed by connecting an adder to the position of each partial product term of the triangular matrix, and each of the same two n-bit binary numbers A partial product operation circuit that calculates a partial product corresponding to the triangular matrix among the products of the bits, wherein each of the outputs of the partial product operation circuit is added to the position of the corresponding partial product term of the adder circuit Is configured to be input.
As the adder, for example, a 3-input / 2-output full adder, a 2-input / 2-output half adder, and a carry look ahead adder having a carry-ahead prefetch function can be used.

【0006】上記の基本原理に基づいた本発明の2進数
並列2乗算器においては、上記基本原理の構成に加え
て、nビット2進数を上位桁から“an-1n-2 … a1
0”と表わし、部分積をaij(0≦i≦n−1,0
≦j≦n−1)とした場合に、部分積演算回路における
in-1(0≦i≦n−2)の部分積は、その否定を取
った値を出力として加算回路に与え、また、加算回路に
おいては、2↑(n)桁には1を加算し、最終桁p2n-1
の出力は否定を取った値を出力とするように構成するこ
とにより、2の補数表示よる2乗算を行なうものであ
る。なお、請求項2に記載の“2↑(n)”は2のn乗を
示す。すなわち2↑(n)は下記(数1)式で示す内容を
有する。以下同様に、↑( )の符号は括弧内が羃指数
を示す。
[0006] In the binary parallel second multiplier of the present invention based on the basic principle described above, in addition to the configuration of the basic principle, the n-bit binary number from the higher digits "a n-1 a n- 2 ... a 1
a 0 ”, and the partial product is a i a j (0 ≦ i ≦ n−1,0
≦ j ≦ n−1), the partial product of a i an −1 (0 ≦ i ≦ n−2) in the partial product operation circuit is given to the addition circuit as a negative value as an output. In the addition circuit, 1 is added to 2 に は (n) digits, and the final digit p 2n-1
Is configured to output a negated value, thereby performing squaring by two's complement notation. It should be noted that “2 ↑ (n)” described in claim 2 indicates 2 to the power of n. That is, 2 ↑ (n) has the content shown by the following (Equation 1). Similarly, the sign of ↑ () indicates the exponent in parentheses.

【0007】[0007]

【数1】 (Equation 1)

【0008】[0008]

【作用】図3に示すように、2乗算における部分積項の
行列においては、左上から右下への対角線に平行な線上
に2進数としての桁(羃指数)が同等な項が並んでお
り、この線に従ってフルアダーを並べて加算を行うもの
が前記図16の従来例に示した通常の並列乗算器の加算
回路である。図3の行列において、値の同じ部分積項
(例えば、a30とa03、一般的にはaij=a
ji)をまとめると図4に示すごとき三角行列になる。
図4において、係数2を持つ項が上記の値の同じ部分積
項をまとめた項である。これらの係数2を持つ項は、2
進演算では桁が1桁上の値と同じであるから、位置を一
桁上げれば、その係数を省くことができる。図5は、全
体が0の対角行を挿入して上記の係数2を省略した行列
であり、内容的には図4と同等な行列である。さらに図
5において、0の加算される部分は、全体の値を変化さ
せることなしに項を対角線に平行な線上で左上から右下
に詰めることが可能であるから、最終的には、図6に示
すごとき三角行列が出来る。なお、図5および図6にお
いて、2進数では、aii=ai 2=aiであるから、ai
iはaiと表示している。例えば、部分積項a66はa
6と表示している。
As shown in FIG. 3, in the matrix of partial product terms in squaring, terms having the same digit (power exponent) as a binary number are arranged on a line parallel to the diagonal from upper left to lower right. A full adder is arranged in accordance with this line to perform addition, which is the adder circuit of the ordinary parallel multiplier shown in the conventional example of FIG. In the matrix of FIG. 3, the same partial product terms of values (eg, a 3 a 0 and a 0 a 3 , typically a i a j = a
j ai ) is a triangular matrix as shown in FIG.
In FIG. 4, the term having a coefficient of 2 is a term obtained by summing the partial product terms having the same value as described above. The term with these coefficients 2 is 2
In the decimal operation, the digit is the same as the value one digit higher, so if the position is raised by one digit, the coefficient can be omitted. FIG. 5 is a matrix in which diagonal rows of 0 are entirely inserted and the coefficient 2 is omitted, and is a matrix equivalent to that of FIG. Further, in FIG. 5, the part to which 0 is added can reduce the term from the upper left to the lower right on a line parallel to the diagonal line without changing the overall value. A triangular matrix is created as shown in Note that in FIGS. 5 and 6, in a binary number, a i a i = a i 2 = a i , so a i
a i is displayed as a i . For example, the partial product term a 6 a 6 is a
6 is displayed.

【0009】上記のように、2乗算の特殊性を考慮する
ことにより、部分積項の行列を整理することが出来る。
そして上記の整理された三角行列(図6)の各部分積項
の位置に加算器を接続すれば、図3のごとき部分積項の
行列における対角線方向の加算を行なうことが出来る。
すなわち、図3に示すごとき行列の加算と同等の演算を
図6に示すごとき三角行列で行なうことが出来る。図1
の実施例が7ビット2進数における例である。また、こ
の場合には、入力する部分積項も三角行列に対応した分
だけあればよいから、部分積演算回路も図2に示すよう
に、三角行列に対応した分だけあればよい。
As described above, the matrix of the partial product terms can be rearranged by considering the specificity of the squaring.
If an adder is connected to the position of each partial product term of the rearranged triangular matrix (FIG. 6), the diagonal addition in the partial product term matrix as shown in FIG. 3 can be performed.
That is, an operation equivalent to the addition of matrices as shown in FIG. 3 can be performed on a triangular matrix as shown in FIG. FIG.
Is an example in a 7-bit binary number. Further, in this case, since the number of input partial product terms only needs to correspond to the triangular matrix, the number of partial product calculation circuits need only correspond to the triangular matrix as shown in FIG.

【0010】上記のように、本発明においては、値の同
じ部分積の項をまとめて、桁上げすることにより、全体
の部分積項の数を従来のn2個から(n2+n)/2個に
減少させることが出来る。そのため、2乗算器の加算回
路および部分積演算回路のハードウエアの素子数を半分
近くに減少させることが出来る。また、上記のように演
算回数を減少させることにより、全体の計算速度を約2
倍に高速化することが出来る。
As described above, in the present invention, the terms of the same partial product are summed up and carried, so that the total number of partial product terms is reduced from the conventional n 2 to (n 2 + n) / It can be reduced to two. Therefore, the number of hardware elements of the adder circuit and the partial product operation circuit of the squaring multiplier can be reduced to almost half. In addition, by reducing the number of operations as described above, the overall calculation speed can be reduced by about 2 times.
The speed can be doubled.

【0011】[0011]

【実施例】図1および図2は、本発明の基本原理を説明
するためのブロック図であり、図1は加算回路、図2は
部分積演算回路を示す。この実施例は、7ビットの2進
数を、ビット列として上位桁から “a6543210” と表わした場合に、その2乗、すなわち “a6543210”דa6543210” を演算する場合を示し、演算結果(14ビット)を上位
桁から “p131211109876543210” で表わす。図1において、四角の箱は加算器を示し、そ
のうち3入力2出力(入力の一つは箱内に記載した符
号)の正方形はフルアダー1を、2入力2出力(入力の
一つは箱内に記載した符号)の正方形はハーフアダー2
を表わし、箱内の値と矢印で入力する値とを加算するこ
とを意味する。そして斜め方向(対角線方向)の矢印3
は入力および加算結果(和)の出力を示し、水平方向の
矢印4はキャリー信号を示す。また、縦形の長方形は2
ビットのキャリールックアヘッドアダー5(桁上げ先取
り機能を備えた加算器)を表わす。そして51は上位入
力、52は上位入力のキャリー、53は下位入力、54
は下位入力のキャリー、55はキャリー出力、56は上
位和出力、57は下位和出力である。また、図2におい
て、マトリクスの交点に黒丸印を付した部分は、横軸と
縦軸とのANDを求める回路を意味する。例えば横軸a
3と縦軸a0との交点は、a3とa0とのANDを求めるも
のであり、その出力がa3とa0との部分積、すなわち
(a30)となる。
1 and 2 illustrate the basic principle of the present invention .
It is a block diagram for, 1 addition circuit, Figure 2 shows a partial product calculating circuit. In this embodiment, when a 7-bit binary number is represented as “a 6 a 5 a 4 a 3 a 2 a 1 a 0 ” as a bit string from the upper digit, its square, that is, “a 6 a 5 a 4 a 3 a 2 a 1 a 0 "×" a 6 a 5 a 4 a 3 a 2 a 1 a 0 " to indicate a case of calculating, calculation result (14 bits) from the high-order digit" p 13 p 12 p represented by 11 p 10 p 9 p 8 p 7 p 6 p 5 p 4 p 3 p 2 p 1 p 0 ". In FIG. 1, a square box indicates an adder, of which a three-input two-output square (one of the inputs is the code described in the box) is a full adder 1 and a two-input two-output (one of the inputs is a box). Is the half adder 2
Represents that the value in the box and the value input by the arrow are added. And an arrow 3 in a diagonal direction (diagonal direction)
Indicates an input and an output of the addition result (sum), and an arrow 4 in the horizontal direction indicates a carry signal. The vertical rectangle is 2
Represents a bit carry look ahead adder 5 (adder with carry-ahead function). 51 is the upper input, 52 is the carry of the upper input, 53 is the lower input, 54
Is the carry of the lower input, 55 is the carry output, 56 is the upper sum output, and 57 is the lower sum output. Further, in FIG. 2, a portion where a black circle is attached to the intersection of the matrix means a circuit for obtaining an AND between the horizontal axis and the vertical axis. For example, the horizontal axis a
3 and the intersection of the vertical axis a 0 is for obtaining the AND of a 3 and a 0, becomes the output of the partial product of a 3 and a 0, that is, (a 3 a 0).

【0012】次に作用を説明する。まず、図3〜図6に
基づいて本発明の原理について説明する。図3は、一般
的な7ビット2乗算における部分積項の行列を示した図
であり、この行列の左上から右下への対角線に平行な線
上に2進数としての桁(羃指数)が同等な項が並んでお
り、この線に従ってフルアダーを並べて加算を行うもの
が前記図16の従来例に示した通常の並列乗算器の加算
回路である。図3の行列を子細に検討すると、値の同じ
部分積項(例えば、a30とa03、一般的にはaij
=aji)が21対、一般にはn(n−1)/2対、存在
する。これら値の等しい項の対をまとめて左上三角行列
にまとめたのが図4である。図4において、係数2を持
つ項が上記の値の同じ部分積項をまとめた項である。こ
れらの係数2を持つ項は、2進演算では桁が1桁上の値
と同じであるから、位置を一桁上げれば、その係数を省
くことができる。図5は、全体が0の対角行を挿入して
上記の係数2を省略した行列であり、内容的には図4と
同等な行列である。さらに図5において、0の加算され
る部分は、全体の値を変化させることなしに項を対角線
に平行な線上で左上から右下に詰めることが可能である
から、最終的には、図6に示すごとき三角行列が出来
る。なお、図5および図6において、2進数では、ai
i=ai 2=aiであるから、aiiはaiと表示してい
る。例えば、部分積項a66はa6と表示している。上
記の図6に示す三角行列の各部分積項の位置に加算器を
接続すれば、前記図1に示した加算回路となる。図1に
おいては、加算の最終段に2ビットのキャリールックア
ヘッドアダー(桁上げ先取り機能を有する加算器)を接
続し、2乗算の最終結果を整えている。
Next, the operation will be described. First, the principle of the present invention will be described with reference to FIGS. FIG. 3 is a diagram showing a matrix of partial product terms in a general 7-bit squaring, in which the digits (power exponents) as binary numbers are equal on a line parallel to a diagonal line from the upper left to the lower right of the matrix. In the conventional parallel multiplier shown in the conventional example of FIG. 16, an adder circuit performs addition by arranging full adders according to this line. Considering the matrix of FIG. 3 in detail, the same partial product terms of values (eg, a 3 a 0 and a 0 a 3 , generally a i a j
= A j ai ) 21 pairs, generally n (n-1) / 2 pairs. FIG. 4 shows an upper left triangular matrix in which pairs of terms having the same value are put together. In FIG. 4, the term having a coefficient of 2 is a term obtained by summing the partial product terms having the same value as described above. These terms having the coefficient 2 have the same digit in the binary operation as the value one digit higher, so if the position is increased by one digit, the coefficient can be omitted. FIG. 5 is a matrix in which diagonal rows of 0 are entirely inserted and the coefficient 2 is omitted, and is a matrix equivalent to that of FIG. Further, in FIG. 5, the part to which 0 is added can reduce the term from the upper left to the lower right on a line parallel to the diagonal line without changing the overall value. A triangular matrix is created as shown in In FIGS. 5 and 6, a binary number is a i
because I am a i = a i 2 = a i, a i a i is displayed as a i. For example, the partial product term a 6 a 6 is displayed as a 6 . If an adder is connected to the position of each partial product term of the triangular matrix shown in FIG. 6, the adder circuit shown in FIG. 1 is obtained. In FIG. 1, a 2-bit carry look-ahead adder (adder having a carry-ahead function) is connected to the final stage of the addition to prepare the final result of the squaring.

【0013】なお、図1(B)に示すように、1個のキ
ャリールックアヘッドアダーの代わりに2個のハーフア
ダー21、22を接続しても同様の回路を構成すること
が出来る。図1(B)において、下段のハーフアダー2
2のキャリー信号42は上段のハーフアダー21に送ら
れ、外部へのキャリー信号41は上段のハーフアダー2
1から出力される。上記のように2個のハーフアダーを
接続した回路においては、キャリーの演算がそれぞれの
ハーフアダーで各1回の合計2回行なわれるので、1個
のキャリールックアヘッドアダーを用いた場合よりも加
算回路全体の演算速度は低下するが、全体を通常のアダ
ー素子で構成することが出来る、という利点がある。
As shown in FIG. 1B, a similar circuit can be formed by connecting two half adders 21 and 22 instead of one carry look ahead adder. In FIG. 1B, the lower half adder 2
2 is sent to the upper half adder 21, and the carry signal 41 to the outside is sent to the upper half adder 2.
1 is output. In a circuit in which two half adders are connected as described above, the carry operation is performed twice in each half adder, that is, twice, so that the entire adder circuit is more complicated than when one carry look ahead adder is used. Although the calculation speed of the above is reduced, there is an advantage that the whole can be constituted by ordinary adder elements.

【0014】また、本発明の場合には、入力する部分積
項も三角行列に対応した分だけあればよいから、部分積
演算回路も図2に示すように、三角行列に対応した分だ
けあればよい。すなわち、値の同じ部分積項の対は一方
の値だけを演算すればよいことになる。
Further, in the case of the present invention, the number of input partial product terms only needs to correspond to a triangular matrix, so that the number of partial product calculation circuits corresponding to a triangular matrix is also limited, as shown in FIG. I just need. In other words, for a pair of partial product terms having the same value, only one value needs to be calculated.

【0015】上記のように、本発明の基本原理において
は、値の同じ部分積の項をまとめて、桁上げすることに
より、全体の部分積項の数を従来の49個から28個に
減少させることが出来る。一般的には、nビットの2乗
算の場合にn2個から(n2+n)/2個に減少させるこ
とが出来る。そのため、2乗算器の加算回路および部分
積演算回路のハードウエアの素子数を半分近くに減少さ
せることが出来る。また、上記のように演算回数を減少
させることにより、全体の計算速度を約2倍に高速化す
ることが出来る。従って2乗算だけが必要なシステムで
は、従来のような通常の乗算器を使用した場合に比較し
て、複雑さと処理速度の積で表わされる効率を約4倍に
向上させることが出来る。
As described above, according to the basic principle of the present invention, the number of partial product terms is reduced from 49 to 28 by combining and carrying the terms of the same partial product of values. Can be done. In general, the two n in the case of the 2 n-bit multiplication (n 2 + n) / 2 in can be reduced. Therefore, the number of hardware elements of the adder circuit and the partial product operation circuit of the squaring multiplier can be reduced to almost half. Also, by reducing the number of operations as described above, the overall calculation speed can be approximately doubled. Therefore, in a system requiring only squaring, the efficiency expressed by the product of the complexity and the processing speed can be improved about four times as compared with the case of using a conventional ordinary multiplier.

【0016】次に、一般にnビットの2乗算を行なう場
合の加算回路の構成について詳細に説明する。 nビットの2進数Aをnビットのビット列 “an-1n-2 … a10” と表わし、Aを2乗した値を2nビットのビット列 “p2n-12n-2 … p10” と表わす。また、Aを2乗する時に生ずる部分積項を aij (0≦i≦n−1、0≦j≦n−1) と表わす。なお、aii=ai 2=aiであるから、これ
らを全てaiと表わす。上記の構成要素の関係は、下記
(数2)式で示される。
Next, the configuration of an adder circuit for performing n-bit squaring will be described in detail. binary A of n bits represents a n-bit string "a n-1 a n- 2 ... a 1 a 0" of the bit, the bit string of 2n bits a value obtained by squaring the A "p 2n-1 p 2n -2 ... p 1 p 0 ″. Also, expressed as the partial product terms generated when squaring A a i a j (0 ≦ i ≦ n-1,0 ≦ j ≦ n-1). Incidentally, since it is a i a i = a i 2 = a i, expressed as these all a i. The relationship between the above components is represented by the following (Equation 2).

【0017】[0017]

【数2】 (Equation 2)

【0018】また、フルアダーをF、ハーフアダーを
H、2ビットのキャリールックアヘッドアダーをCと表
わした場合に、それらと部分積項aijおよび2乗算の
結果の出力pi間を繋ぐ手段は以下に説明するようにな
る。なお、本来は抽象的連結関係を与えるものである
が、以下説明を容易にするため、2次元上に相対位置を
固定してそれらの位置関係によって要素間の接続を定義
する。ただし、本発明の適用範囲は、2次元的位置関係
にしばられることなく、各要素間での同等な全ての繋が
りを含む。フルアダーF、ハーフアダーH、キャリール
ックアヘッドアダーCの2次元平面に並べられた相対位
置として、水平方向に行、垂直方向に列を定義する。こ
れらF、H、Cの行または列をアダー行またはアダー列
と呼ぶ。各アダー行に下から順番に最初を1として番号
を付け、同様に、各アダー列に左から順番に最初を1と
して番号を付ける。例えば、F1,2は下から1行目で左
から2列目のフルアダーであることを示す。一般には、
i,j、Hi,j、Ci,jとなる。フルアダーFは3入力と
2出力を持ち、出力は「キャリー」と「和」と呼ばれ
る。なお、3入力のうちの二つは矢印で、他の一つは箱
内の符号で示される。また、ハーフアダーHはフルアダ
ーFから1入力を取り除いたものである。キャリールッ
クアヘッドアダーCは4入力と3出力を持ち、4入力は
上位2入力と下位2入力の2種類があり、出力は「キャ
リー」、「下位和」、「上位和」と呼ばれる。上記の
F、H、Cを総称して箱(Box)と呼び、Bと表わす。
従ってBi,jは2次元に並んだアダー行列の下から第i
行、左から第j列にあるF、HまたはCを表わす。
Further, the full adder F, a to H, 2-bit carry look-ahead adder half adder when expressed as C, they and the partial product term a i a j and squaring the result of the output p i between means connecting Will be described below. Although an abstract connection relationship is originally given, a relative position is fixed two-dimensionally and a connection between elements is defined by the positional relationship in order to facilitate the description below. However, the applicable range of the present invention includes all equivalent connections between elements without being limited to two-dimensional positional relationships. A row in the horizontal direction and a column in the vertical direction are defined as relative positions arranged on a two-dimensional plane of the full adder F, the half adder H, and the carry look ahead adder C. The rows or columns of F, H, and C are called adder rows or adder columns. Each adder row is numbered from the bottom in order with the first as 1, and similarly, each adder row is numbered from the left with the first as 1. For example, F 1 , 2 indicates a full adder in the first row from the bottom and the second column from the left. Generally,
F i , j , H i , j , and C i , j . The full adder F has three inputs and two outputs, and the outputs are called “carry” and “sum”. Note that two of the three inputs are indicated by arrows, and the other one is indicated by a code in a box. The half adder H is obtained by removing one input from the full adder F. The carry look-ahead adder C has four inputs and three outputs, and there are two types of four inputs: upper two inputs and lower two inputs, and the outputs are called “carry”, “lower sum”, and “higher sum”. The above F, H, and C are collectively called a box (Box), and are represented by B.
Therefore, B i , j is the i-th from the bottom of the two-dimensionally arranged adder matrix.
Represents F, H or C in row, jth column from left.

【0019】以下、具体的な例について説明する。ま
ず、図7は、1ビットの2乗算器の加算回路を示す。こ
の場合には、単にa0×a0=a0 2を演算するのであるか
ら、a0(前記のごとくa00の意味)をp0に繋いだも
のである。
Hereinafter, a specific example will be described. First, FIG. 7 shows an addition circuit of a 1-bit squarer. In this case, since a 0 × a 0 = a 0 2 is simply calculated, a 0 (meaning a 0 a 0 as described above) is connected to p 0 .

【0020】次に、図8は、2ビットの2乗算器の加算
回路を示す。この場合には、図7に示した1ビットの2
乗算器を含み、さらに0をp1に繋ぐ。そしてB1,1はハ
ーフアダーHであり、その入力にはa01とa1(前記の
ごとくa11の意味)を与え、その和出力をp2に、そ
のキャリー出力をp3に繋いだものである。上記の2ビ
ットの演算は、下記の演算式に示すようになる。 上記の演算式における加算結果(a11 2a10
00)において、 a11=a1、a00=a0 であり、かつ2a10はa10を1桁上げたものに等し
い。したがって加算結果を整理すると、整理後の項に示
すようになる。図8の回路は上記の整理後の数式に対応
している。本発明においては、上記のごとき整理を行な
うことにより、構成素子数を削減し、それに伴って演算
回数を削減することによって演算速度を向上させたもの
である。上記図8で説明した原理は、より多ビットの場
合でも基本的に同様である。
FIG. 8 shows an adder circuit of a 2-bit squarer. In this case, 1 bit 2 shown in FIG.
Includes a multiplier, further connects the 0 to p 1. B 1 , 1 is a half adder H, whose inputs are given a 0 a 1 and a 1 (meaning a 1 a 1 as described above), the sum output of which is given as p 2 , and the carry output thereof is given as p 3 Is connected to The above two-bit operation is represented by the following operation expression. The addition result (a 1 a 1 2 a 1 a 0 a a
In 0 a 0), it is a 1 a 1 = a 1, a 0 a 0 = a 0, and 2a 1 a 0 is equal to the increased one digit a 1 a 0. Therefore, when the addition result is arranged, it becomes as shown in the section after the arrangement. The circuit in FIG. 8 corresponds to the formula after the above rearrangement. In the present invention, by performing the above arrangement, the number of constituent elements is reduced, and the number of calculations is reduced accordingly, thereby improving the calculation speed. The principle described in FIG. 8 is basically the same even in the case of more bits.

【0021】次に、図9は3ビットの2乗算器の加算回
路である。この場合には、上記図8の2ビットの2乗算
器に二つのハーフアダーHと一つのキャリールックアヘ
ッドアダーCを加えて構成される。そして下記のごとく
接続する。 2ビットの乗算器に含まれるH1,1のキャリー出力と
3との繋ぎを解き、この出力とa02をH1,2の入力と
し、H1,2の和出力をp3とする。 H1,2のキャリー出力をC2,3の下位入力に繋ぐ。 H2,2の入力はa12とa2との2入力とし、H2,2
和出力をC2,3の下位入力に繋ぎ、H2,2のキャリー出力
をC2,3の上位入力に繋ぐ。 C2,3の下位和出力をp4とし、上位和出力をp5とす
る。 次に、図10は4ビットの2乗算器の加算回路、図11
は5ビットの2乗算器の加算回路、図12は6ビットの
2乗算器の加算回路である。以下、4ビット以上の任意
ビットの2乗算器における加算回路の構成について説明
する。 (イ)ビット数nが4以上においては、一般に、Bi,
i+1はキャリールックアヘッドアダーCであり、その下
位和出力はp2i、上位和出力はp2i+1となり、さらにi
<n−2においては、Bi,i+1にあるCのキャリー出力
は、Bi+1i+2にあるCの下位入力に繋がれる。以下、
同様にn≧4で、j>2 かつ j≠i の時には、一
般に (ロ)Bijの入力は、Bi,j-1のキャリー出力と、
i+1,j-1の和出力と、jが偶数であればaj-1i,j
が奇数であればaji-1と、の3入力となる。また、B
ijのキャリー出力は、Bij+1の入力に、和出力はBi-1,
j+1の入力に繋がれる。 (ハ)j≦2で、iが奇数の時には、Bi,1およびBi,2
はハーフアダーHであり、Bi,1の入力は、a0iとa1
i-1との2入力である。Bi,1のキャリー出力はBi,2
の入力に、和出力はBi-1,2の入力に繋がれる。Bi,2
入力は、Bi,1のキャリー出力とa1iとの2入力であ
る。Bi,2のキャリー出力はBi,3の入力に、和出力はB
i-1,3の入力に繋がれる。 (ニ)j≦2で、iが偶数の時には、Bi,1は存在せ
ず、Bi,2はハーフアダーHであり、Bi,2の入力は、a
2i-1とBi+1,1の和出力との2入力である。Bi,2のキ
ャリー出力はBi3の入力に、和出力はBi-1,3の入力に
繋がれる。 (ホ)1>i>n−1で、j=iの時には、Bi,iはフ
ルアダーFであり、Bi,iの入力は、aiと、Bi,i-1
キャリー出力と、Bi+1,i-1の和出力との3入力であ
る。Bi,iのキャリー出力はBi,i+1の上位入力に、和出
力はBi,i+1の下位入力に繋がれる。 (ヘ)i=n−1で、iが偶数の時には、Bn-1,1は存
在せず、Bn-1,3、Bn-1,5、……、Bn-1,n-2はハーフ
アダーHであり、これらの入力は、Bn-1,j-1のキャリ
ー出力と、aj-1n-1との2入力である。Bn-1,3、B
n-1,5、……、Bn-1,n-2のキャリー出力はBn-1,j+1
入力に、和出力はBn-2,j+1の入力に繋がれる。また、
n-1,2、Bn-1,4、Bn-1,6、……Bn-1,n-3のうち、B
n-1,2はハーフアダーHであり、それ以外は全てフルア
ダーFである。上記のうち、ハーフアダーHであるB
n-1,2の入力はan-1j-1とan-2jとの2入力であ
り、それ以外のフルアダーFの入力は、an-1j-1と、
n-2jと、Bn-1,j-1のキャリー出力との3入力であ
る。また、上記の各素子の和出力はBn-2,j+1の入力
に、キャリー出力はBn-1,j+1の入力に繋がれる。さら
に、Bn-1,n-1はフルアダーFであり、この入力は、a
n-1と、an-2n-1と、Bn-1,n-2のキャリー出力との3
入力である。Bn-1,n-1の和出力はBn-1,nの下位入力
に、キャリー出力はBn-1,nの上位入力に繋がれる。 (ト)i=n−1で、iが奇数の時には、Bn-1,1、B
n-1,3、……、Bn-1,n-3のうち、Bn-1,1はハーフアダ
ーHであり、それ以外は全てフルアダーFである。上記
のうち、ハーフアダーHであるBn-1,1の入力は、aj-1
n-1とajn-2との2入力であり、それ以外のフルア
ダーFの入力は、aj-1n-1と、ajn−2と、B
n−1j−1のキャリー出力との3入力である。ま
た、上記各素子の和出力はBn-2,j+1の入力に、キャリ
ー出力はBn-1,j+1の入力に繋がれる。さらに、
n-1,2、Bn-1,4、……、Bn-1,n-2はハーフアダーH
であり、これらの入力は、aj-1n-1と、Bn-1,j-1
キャリー出力との2入力である。これらの和出力はB
n-2,j+1の入力に、キャリー出力はBn-1,j+1の入力に繋
がれる。また、Bn-1,n-1はフルアダーFであり、この
入力は、an-1と、an-2n-1と、Bn-1,n-2のキャリー
出力との3入力である。Bn-1,n-1の和出力はBn-1,n
下位入力に、キャリー出力はBn-1,nの上位入力に繋が
れる。
FIG. 9 shows an adder circuit of a 3-bit squarer. In this case, two half adders H and one carry look ahead adder C are added to the 2-bit square multiplier shown in FIG. Then, connect as follows. H 1 is included in the 2-bit multiplier, one solves the joint between the carry output and p 3, the output and a 0 a 2 and H 1, 2 inputs, H 1, 2 of the sum output p 3 And H 1, connecting two carry output to the lower input of C 2, 3. Input of H 2, 2 is set to two inputs of a 1 a 2 and a 2, H 2, 2 of the sum output connecting to the lower input of C 2, 3, H 2, 2 of the carry output C 2, 3 Connect to the upper input of. Let the lower sum output of C 2 , 3 be p 4 and the upper sum output be p 5 . Next, FIG. 10 shows an adder circuit of a 4-bit squarer.
Is an addition circuit of a 5-bit squarer, and FIG. 12 is an addition circuit of a 6-bit squarer. Hereinafter, the configuration of the adder circuit in the squaring device of four or more arbitrary bits will be described. (A) When the number of bits n is 4 or more, B i ,
i + 1 is a carry look ahead adder C, and its lower sum output is p 2i , its upper sum output is p 2i + 1 , and
For <n−2, the carry output of C at B i , i + 1 is connected to the lower input of C at B i + 1 , i + 2 . Less than,
Similarly, when n ≧ 4, j> 2 and j ≠ i, generally (b) the input of B ij is the carry output of B i , j−1 and
The sum output of B i + 1 , j-1 and a j-1 a i , j if j is even
There a a j a i-1 if an odd number, and the three-input. Also, B
the carry output of the ij is the input of B ij + 1, a sum output B i-1,
Connected to j + 1 input. (C) When j ≦ 2 and i is odd, B i , 1 and B i , 2
Is a half adder H, and the inputs of B i , 1 are a 0 a i and a 1
a i-1 . The carry output of B i , 1 is B i , 2
The inputs, the sum output is connected to the input of B i-1, 2. The inputs of B i , 2 are two inputs, the carry output of B i , 1 and a 1 a i . The carry output of B i , 2 is the input of B i , 3 , and the sum output is B
i-1 and 3 are connected. (D) When j ≦ 2 and i is an even number, B i , 1 does not exist, B i , 2 is a half adder H, and the input of B i , 2 is a
2 ai-1 and the sum output of B i + 1 , 1 . Carry output of B i, 2 is the input of B i3, sum output is connected to the input of B i-1, 3. (E) When 1>i> n−1 and j = i, B i , i is a full adder F, and the inputs of B i , i are a i and the carry output of B i , i−1 , B i + 1 , i−1 . B i, the carry output of the i is B i, the upper input of i + 1, the sum output is connected to the lower input of B i, i + 1. (F) at i = n-1, when i is an even number, B n-1, 1 is absent, B n-1, 3, B n-1, 5, ......, B n-1, n -2 is a half adder H, and these inputs are two inputs of carry output of B n-1 and j-1 and a j-1 an -1 . B n-1 , 3 , B
The carry outputs of n-1 , 5 ,..., Bn-1 and n-2 are connected to the inputs of Bn-1 and j + 1 , and the sum output is connected to the inputs of Bn-2 and j + 1 . Also,
B n−1 , 2 , B n−1 , 4 , B n−1 , 6 ,... Among B n−1 and n−3
n-1 and 2 are half adders H, and all others are full adders F. Of the above, B which is half adder H
The inputs of n-1 and 2 are two inputs of an -1 aj-1 and an -2 aj, and the other inputs of the full adder F are an -1 aj-1 and
There are three inputs: an -2 aj and carry outputs of Bn-1 and j-1 . The sum output of each of the above elements is connected to the input of B n−2 , j + 1 , and the carry output is connected to the input of B n−1 , j + 1 . Further, B n-1 and n-1 are full adders F, and this input is a
n-1 and a n-2 a n-1 and the carry output of B n-1 and n-2
Input. Sum output of the B n-1, n-1 is the lower input of B n-1, n, the carry output is connected to the upper input of B n-1, n. (G) When i = n−1 and i is an odd number, B n−1 , 1 , B
Of the n-1 , 3 ,..., B n-1 , n-3 , B n-1 , 1 is a half adder H, and the others are full adders F. Of the above, the input of B n-1 , 1 which is the half adder H is a j-1
a n-1 and a two-input and a j a n-2, the input of the other of the full adder F is provided with a j-1 a n-1, and a j a n-2, B
n-1 and j-1 carry outputs. The sum output of each element is connected to the input of B n-2 , j + 1 , and the carry output is connected to the input of B n-1 , j + 1 . further,
B n−1 , 2 , B n−1 , 4 ,..., B n−1 and n−2 are half adders H
And these inputs are two inputs: a j-1 an -1 and carry outputs of B n-1 and j-1 . Their sum output is B
The carry output is connected to the input of n-2 , j + 1 , and the carry output is connected to the input of Bn-1 , j + 1 . Also, B n-1, n- 1 is the full adder F, this input, a a n-1, a and n-2 a n-1, B n-1, 3 of the carry output of the n-2 Input. Sum output of the B n-1, n-1 is the lower input of B n-1, n, the carry output is connected to the upper input of B n-1, n.

【0022】次に、図13は、本発明の実施例のブロ
ック図である。この実施例は2の補数表示による演算を
行なう2乗算器であり、前記図1に対応させて7ビット
の場合を示している。図13において、部分積の符号に
‘ ’の符号を付したものは、当該部分積の否定を取っ
た値(反転信号)である。例えば‘a36’は、a36
が“1”のときに“0”、“0”のときに“1”となる
ことを示す。また、図13においては、最終桁p13を出
力するキャリールックアヘッドアダーCの出力は否定出
力になっており、かつp7の桁、すなわち27の桁には
“1”が加算されている。それ以外は図1と同様であ
る。一般の場合には、これまでに説明した本発明の基本
原理による2乗算器を次のように変更することによって
補数演算を行なうことが出来る。すなわち、nビット2
進数を上位桁から“an-1n-2 … a10”と表わ
し、部分積をaij(0≦i≦n−1,0≦j≦n−
1)とした場合に、部分積演算回路から出力する部分
積のうち、ain-1(0≦i≦n−2)の部分積は、そ
の否定を取った値を出力として加算回路の該当する個所
に与える。加算回路においては、2↑(n)桁には1
を加算する。最終桁p2n-1の出力は否定を取った値を
出力とする。以下、上記の構成によって補数演算ができ
ることを詳細に説明する。n桁の2の補数表現を用いた
2進数a n-1 n-2 …a 1 0 の数値は−a n-1 n-1 +a
n-2 n-2 +…+a 1 2+a 0 で表される。したがってn桁
の数の2乗、すなわちa n-1 n-2 …a 1 0 とa n-1 n-2
…a 1 0 とを掛け合わせると、 となる。この内、負の項に関して2の補数表示に変換す
ると、 となる。補数乗算において絶対値乗算と異なる点は上記
の負の項だけであり、この部分だけを補正すれば2の補
数乗算を実現出来る。上記の両負項を加えてオーバーフ
ロー桁を除くと、 となり、この補正項を2乗算に適用すると、 となる。ここでp 2n-1 桁への定数1の加算はキャリーを
考慮する必要がないので、p 2n-1 の出力と1との排他的
論理和を取ることになり、結果として否定を取れば良い
ことになる。したがってこの実施例に示した回路構成に
すれば、2の補数演算による2乗計算が出来ることにな
る。
Next, FIG. 13 is a block diagram of one embodiment of the present invention. This embodiment is a squaring multiplier for performing an operation by two's complement notation, and shows a case of 7 bits corresponding to FIG. In FIG. 13, the sign of “” added to the sign of the partial product is a value obtained by negating the partial product (inverted signal). For example, 'a 3 a 6 ' is a 3 a 6
Is "1" when it is "1" and "1" when it is "0". Further, in FIG. 13, the output of the carry look-ahead adder C for outputting the last digit p 13 has become a negative output, and digit p 7, that is, the 2 7 digit is "1" is added . Otherwise, it is the same as FIG. In the general case, the basics of the invention described so far
The complement operation can be performed by changing the square multiplier according to the principle as follows. That is, n bits 2
Decimal The expressed as "a n-1 a n- 2 ... a 1 a 0" from the upper digit, the partial product a i a j (0 ≦ i ≦ n-1,0 ≦ j ≦ n-
In the case of 1), among the partial products output from the partial product calculation circuit, the partial product of a i an -1 (0 ≦ i ≦ n−2) is obtained by adding the negated value to the addition circuit as an output. To the appropriate places. In the addition circuit, 21 (n) digit is 1
Is added. The output of the last digit p 2n-1 is a value obtained by taking a negation. In the following, complement operation can be performed by the above configuration.
Will be described in detail. n-digit two's complement representation was used
Binary number a n-1 a n-2 ... value of a 1 a 0 is -a n-1 2 n-1 + a
n−2 2 n−2 +... + a 12 + a 0 . Therefore n digits
The square of the number of, i.e., a n-1 a n-2 ... a 1 a 0 and a n-1 a n-2
… A 1 a 0 multiplied by Becomes Of these, negative terms are converted to two's complement notation.
Then Becomes The difference between complement multiplication and absolute multiplication is
Is only the negative term of
Number multiplication can be realized. Add both negative terms above to overflow
Excluding the low digits, When this correction term is applied to squaring, Becomes Where the addition of the constant 1 to the p 2n-1 digits is
Since there is no need to consider, the output of p 2n-1 is exclusive of 1
You have to take the logical sum and take the negation as a result
Will be. Therefore, in the circuit configuration shown in this embodiment,
In this case, it is possible to calculate a square by two's complement operation.
You.

【0023】次に、図14は、本発明の2乗算器の応用
例を示すブロック図である。この例は、本発明の2乗算
器を音響シグナル・エンヘンサ(Acoustic SignalEnhan
cer)に用いたものである。図14において、10は音
響信号を電気信号に変換するマイクロホン、11はアナ
ログ信号をディジタル信号に変換するA/D変換器、1
2は本発明の並列2乗算器、13はディジタル信号をア
ナログ信号に変換するD/A変換器、14は増幅器、1
5は電気信号を音響信号に変換するスピーカである。上
記のごとき音響シグナル・エンヘンサは、入力する音響
信号の中で、強い信号をより大きく増幅し、弱い信号は
雑音と見做して小さくする回路である。このような回路
の並列2乗算器12として本発明の2乗算器を用いるこ
とにより、従来より構成が簡略で安価になり、しかも演
算速度を高速にすることが出来る。
FIG. 14 is a block diagram showing an application example of the square multiplier of the present invention. In this example, the squaring multiplier of the present invention is used for an acoustic signal enhancer.
cer). In FIG. 14, reference numeral 10 denotes a microphone that converts an acoustic signal into an electric signal, 11 denotes an A / D converter that converts an analog signal into a digital signal, 1
2 is a parallel squaring multiplier of the present invention, 13 is a D / A converter for converting a digital signal into an analog signal, 14 is an amplifier, 1
A speaker 5 converts an electric signal into an acoustic signal. The acoustic signal enhancer as described above is a circuit that amplifies a strong signal more strongly in an inputted acoustic signal, and reduces a weak signal as noise. By using the squaring multiplier of the present invention as the parallel squaring multiplier 12 of such a circuit, the configuration is simpler and less expensive than in the prior art, and the operation speed can be increased.

【0024】[0024]

【発明の効果】以上説明したように、この発明によれ
ば、nビット2進数の2乗算の部分積項の行列におい
て、値の同じ部分積の項をまとめて、桁上げをすること
により、全体の部分積項数を従来のn2個から(n2
n)/2個に減少させることが出来る。そのため、2乗
算器の部分積演算回路および加算回路におけるハードウ
エアの素子数を半分近くに減少させることが出来る。そ
して上記のように演算回数を減少させることにより、全
体の計算速度を約2倍に高速化することが出来る。従っ
て2乗算だけが必要なシステムでは、従来のような通常
の乗算器を使用した場合に比較して、複雑さと処理速度
の積で表わされる効率を約4倍に向上させることが出来
と共に、2の補数表示による2乗算を行なうことが出
来るので、入出力信号の処理が容易になる、という優れ
た効果が得られる。
As described above, according to the present invention, in the matrix of the partial product terms of the squaring of n-bit binary numbers, the terms of the same partial product having the same value are put together and carry is carried out. The total number of partial product terms is changed from the conventional n 2 (n 2 +
n) / 2. Therefore, the number of hardware elements in the partial product calculation circuit and the addition circuit of the squaring multiplier can be reduced to nearly half. By reducing the number of operations as described above, the overall calculation speed can be approximately doubled. Thus, in only two multiplications are required systems, as compared to when using conventional normal multipliers such as, together with the complexity and represented by the product of the processing speed efficiency can be improved to about 4 times, 2 it is possible to perform the complement of the squaring by the processing of input and output signals is facilitated, good that
The effect is obtained.

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

【図1】本発明の基本原理を示すブロック図であり、7
ビット2進数の2乗算器の加算回路を示す。
FIG. 1 is a block diagram showing the basic principle of the present invention,
3 shows an addition circuit of a bit binary number multiplier.

【図2】本発明の基本原理を示すブロック図であり、7
ビット2進数の2乗算器の部分積演算回路を示す。
FIG. 2 is a block diagram showing the basic principle of the present invention,
4 shows a partial product calculation circuit of a bit binary number multiplier.

【図3】本発明の原理を説明するための7ビット2進数
の部分積項の行列を示す図。
FIG. 3 is a diagram showing a matrix of 7-bit binary partial product terms for explaining the principle of the present invention.

【図4】図3の行列における同じ値の項をまとめた三角
行列を示す図。
FIG. 4 is a diagram showing a triangular matrix in which terms of the same value in the matrix of FIG. 3 are summarized.

【図5】図4の三角行列で、係数2の付く値を1桁移動
した三角行列を示す図。
FIG. 5 is a diagram showing a triangular matrix in which a value with a coefficient 2 is shifted by one digit in the triangular matrix of FIG. 4;

【図6】図5の三角行列で、0を加算する部分を左上か
ら右下に向けて詰めた三角行列を示す図。
FIG. 6 is a diagram showing a triangular matrix in which a portion to which 0 is added is packed from the upper left to the lower right in the triangular matrix of FIG. 5;

【図7】1ビットの2乗算器における加算回路の一例
示すブロック図。
FIG. 7 is a block diagram illustrating an example of an addition circuit in a 1-bit squaring multiplier.

【図8】2ビットの2乗算器における加算回路の一例
示すブロック図。
FIG. 8 is a block diagram showing an example of an addition circuit in a 2-bit squaring multiplier.

【図9】3ビットの2乗算器における加算回路の一例
示すブロック図。
FIG. 9 is a block diagram illustrating an example of an addition circuit in a 3-bit squaring multiplier.

【図10】4ビットの2乗算器における加算回路の一例
を示すブロック図。
FIG. 10 is a block diagram showing an example of an addition circuit in a 4-bit squarer;

【図11】5ビットの2乗算器における加算回路の一例
を示すブロック図。
FIG. 11 is a block diagram showing an example of an addition circuit in a 5-bit squarer;

【図12】6ビットの2乗算器における加算回路の一例
を示すブロック図。
FIG. 12 is a block diagram showing an example of an addition circuit in a 6-bit squarer;

【図13】本発明の実施例のブロック図であり、7ビ
ット2進数の2乗算において、2の補数表示による演算
を行なう場合の加算回路を示す。
FIG. 13 is a block diagram of an embodiment of the present invention, showing an adder circuit in the case of performing an operation by two's complement notation in squaring a 7-bit binary number.

【図14】本発明の応用例図であり、本発明の並列2乗
算器を音響シグナル・エンヘンサに用いた場合を示す。
FIG. 14 is an application example diagram of the present invention, showing a case where the parallel squaring multiplier of the present invention is used for an acoustic signal enhancer.

【図15】従来の4ビット2進数の乗算器の部分積演算
回路を示すブロック図。
FIG. 15 is a block diagram showing a partial product operation circuit of a conventional 4-bit binary multiplier.

【図16】従来の4ビット2進数の乗算器の加算回路を
示すブロック図。
FIG. 16 is a block diagram showing an addition circuit of a conventional 4-bit binary multiplier.

【図17】図15および図16における演算内容の演算
式を示す図。
FIG. 17 is a view showing an operation expression of the operation contents in FIGS. 15 and 16;

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

1…フルアダーF 2…ハーフアダーH 3…入出力信号 4…キャリー信号 5…キャリールックアヘッドアダーC 51…上位入力 52…上位入力のキャリー 53…下位入力 54…下位入力のキャリー 55…キャリー出力 56…上位和出力 57…下位和出力 10…マイクロホン 11…A/D変換器 12…本発明の並列2乗算器 13…D/A変換器 14…増幅器 15…スピーカ DESCRIPTION OF SYMBOLS 1 ... Full adder F 2 ... Half adder H 3 ... Input / output signal 4 ... Carry signal 5 ... Carry look ahead adder C 51 ... Upper input 52 ... Upper input carry 53 ... Lower input 54 ... Lower input carry 55 ... Carry output 56 ... Upper sum output 57 Lower sum output 10 Microphone 11 A / D converter 12 Parallel squaring multiplier 13 of the present invention 13 D / A converter 14 Amplifier 15 Speaker

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】同一の二つのnビット2進数の各ビット相
互の積をそれぞれ部分積とした場合に、該部分積の各項
を、2進数としての羃指数の同じ項が対角線に平行な線
上に並んだ2乗算における部分積項の行列とし、値の同
じ部分積項をそれぞれまとめ、それらのまとめられた項
を羃指数の位置で1桁上げた三角行列とした場合に、該
三角行列の各部分積項の位置に加算器を接続して形成し
た加算回路と、 同一の二つのnビット2進数の各ビット相互の積のう
ち、上記三角行列に対応した部分積を演算する部分積演
算回路と、を備え、 上記部分積演算回路の各出力を上記加算回路の対応する
部分積項の位置の加算器に入力するように構成し かつ、上記nビット2進数を上位桁から“a n-1 n-2
… a 1 0 ”と表わし上記部分積をa i j (0≦i≦
n−1,0≦j≦n−1)とした場合に上記部分積演算回路におけるa i n-1 (0≦i≦n−
2)の部分積は、その否定を取った値を出力として上記
加算回路に与えまた、上記加算回路においては、2↑(n)桁には1を
加算し、最終桁p 2n-1 の出力は否定を取った値を出力と
するように構成することにより2の補数表示による2乗算を行なうことを特徴とする2
進数並列2乗算器。
When the product of each bit of the same two n-bit binary numbers is defined as a partial product, each term of the partial product is converted into a binary number whose power exponent is the same as a diagonal line. When a matrix of partial product terms in squaring arranged on a line is used, the partial product terms having the same value are put together, and the summed up term is a triangular matrix raised by one digit at the position of the exponent, the triangular matrix And an adder circuit formed by connecting an adder to the position of each partial product term, and a partial product for calculating a partial product corresponding to the triangular matrix among products of each bit of the same two n-bit binary numbers And an arithmetic circuit, wherein each output of the partial product arithmetic circuit is input to an adder at a position of a corresponding partial product term of the adder circuit , and the n-bit binary number is converted from a high-order digit to “ a n-1 a n-2
.. A 1 a 0 ”, and the above partial product is represented by a i a j (0 ≦ i ≦
when n-1,0 ≦ j ≦ n- 1) and, a i a n-1 in the partial product calculating circuit (0 ≦ i ≦ n-
The partial product of 2) is obtained by taking the negated value as an output
In the above-mentioned addition circuit, 1 is added to 2 ↑ (n) digits.
The output of the last digit p 2n-1 is the value obtained by taking the negation
By configuring such that, 2, characterized by performing two multiplication by 2's complement
Hexadecimal parallel 2 multiplier.
JP3338945A 1991-12-20 1991-12-20 Binary parallel squaring multiplier Expired - Lifetime JP2990910B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3338945A JP2990910B2 (en) 1991-12-20 1991-12-20 Binary parallel squaring multiplier

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3338945A JP2990910B2 (en) 1991-12-20 1991-12-20 Binary parallel squaring multiplier

Publications (2)

Publication Number Publication Date
JPH05173762A JPH05173762A (en) 1993-07-13
JP2990910B2 true JP2990910B2 (en) 1999-12-13

Family

ID=18322806

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3338945A Expired - Lifetime JP2990910B2 (en) 1991-12-20 1991-12-20 Binary parallel squaring multiplier

Country Status (1)

Country Link
JP (1) JP2990910B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000054275A (en) * 2000-05-30 2000-09-05 장주욱 A high speed parallel adder which reconfigures itself for fast processing of input

Also Published As

Publication number Publication date
JPH05173762A (en) 1993-07-13

Similar Documents

Publication Publication Date Title
JP3761977B2 (en) Floating-point multiplier with reduced critical path by using delay matching technology and its operation method
US4866656A (en) High-speed binary and decimal arithmetic logic unit
JPS6217770B2 (en)
JPH0160858B2 (en)
JP3276444B2 (en) Division circuit
US5862068A (en) Arithmetic circuit for calculating a square-root of a sum of squares
US5497343A (en) Reducing the number of carry-look-ahead adder stages in high-speed arithmetic units, structure and method
EP0428942A2 (en) Plural-bit recoding multiplier
JP2990910B2 (en) Binary parallel squaring multiplier
US20100146031A1 (en) Direct Decimal Number Tripling in Binary Coded Adders
JPH0833809B2 (en) Floating point display data calculation method
JP3190826B2 (en) Product-sum operation unit
JPH0793134A (en) Multiplier
JP2635696B2 (en) Multiplication instruction processing method
US5416733A (en) Apparatus for finding quotient in a digital system
JP2606326B2 (en) Multiplier
JP3071607B2 (en) Multiplication circuit
JP3612950B2 (en) Arithmetic apparatus and method
US5923888A (en) Multiplier for the multiplication of at least two figures in an original format
JP4042215B2 (en) Arithmetic processing apparatus and method
JP3153656B2 (en) Multiplier
JP3417172B2 (en) Arithmetic circuit
JPH07152537A (en) Decimal adder and adder/subtractor
Kumar et al. Performance analysis of modulo 2 n+ 1 subtractor and combined adder/subtractor architectures
JP3077880B2 (en) Sticky bit detection circuit