JP3264280B2 - Multiplier - Google Patents
MultiplierInfo
- Publication number
- JP3264280B2 JP3264280B2 JP21039390A JP21039390A JP3264280B2 JP 3264280 B2 JP3264280 B2 JP 3264280B2 JP 21039390 A JP21039390 A JP 21039390A JP 21039390 A JP21039390 A JP 21039390A JP 3264280 B2 JP3264280 B2 JP 3264280B2
- Authority
- JP
- Japan
- Prior art keywords
- bits
- multiplier
- multiplicand
- multiplication
- output
- 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
Links
Description
【発明の詳細な説明】 〔概要〕 nビットの乗数と被乗数との乗算に際して乗数nビッ
トを複数個に分割し、複数回の乗算を行って最終的な乗
算結果を出力する乗算装置に関し、 nビットの乗数をM個に分割してM回の乗算によって
最終的な乗算結果を出力する乗算装置のハードウェア量
を削減することを目的とし、 nビットの2進被乗数とnビットの2進乗数との乗算
に際して乗数nビットをM個に分割し、nビットとn/M
ビットの乗算をM回実行して乗算結果を求める乗算装置
において、商n/Mが剰余1を持つときに、乗数をその下
位から商n/Mの整数部に等しいビット数ずつ順次M回選
択する乗数選択手段と、乗数の最上位ビットの状態に応
じて、乗数の最上位ビットの状態が0の場合被乗数を選
択せず、かつ、乗数の最上位ビットの状態が1の場合に
被乗算を前記M回の乗算のうちの第1回はn/Mの整数部
に1を加えたビット数だけ、第2回から第M回はn/Mの
整数部に等しいビット数だけいずれも被乗数の下位ビッ
ト側から順次選択する被乗数選択手段と、被乗数のnビ
ットと該乗数選択手段の出力との積の上位部分に該被乗
数選択手段の出力を加算して各回における部分的な乗算
結果を得る乗算手段を有するように構成する。DETAILED DESCRIPTION OF THE INVENTION [Summary] The present invention relates to a multiplication device that divides an n-bit multiplier into a plurality of pieces when multiplying an n-bit multiplier by a multiplicand, performs a plurality of multiplications, and outputs a final multiplication result. An object of the present invention is to reduce the amount of hardware of a multiplication device that divides a bit multiplier into M pieces and outputs a final multiplication result by performing M multiplications, wherein an n-bit binary multiplicand and an n-bit binary multiplier are provided. When multiplying by n, the multiplier n bits is divided into M bits, and n bits and n / M
When a quotient n / M has a remainder 1, a multiplier is sequentially selected M times by a number of bits equal to the integer part of the quotient n / M from the lower order in a multiplication device that executes a bit multiplication M times to obtain a multiplication result. The multiplier selecting means does not select the multiplicand when the state of the most significant bit of the multiplier is 0, and multiplies when the state of the most significant bit of the multiplier is 1 according to the state of the most significant bit of the multiplier. The first of the M multiplications is the number of bits obtained by adding 1 to the integer part of n / M, and the second to M times are the multiplicands of the number of bits equal to the integer part of n / M. And a multiplicand selecting means for sequentially selecting from the lower bit side, and adding an output of the multiplicand selecting means to an upper part of a product of n bits of the multiplicand and an output of the multiplicand selecting means to obtain a partial multiplication result in each round. It is configured to have multiplication means.
本発明は乗算方式に係り、さらに詳しくは共にnビッ
トの乗数と被乗数との乗算に際して乗数nビットを複数
個に分割し、複数回の乗算を行って最終的な乗算結果を
出力する乗算装置に関する。The present invention relates to a multiplication method, and more particularly, to a multiplication device that divides an n-bit multiplier into a plurality of pieces when multiplying an n-bit multiplier and a multiplicand, performs a plurality of multiplications, and outputs a final multiplication result. .
nビットの2進被乗数とnビットの2進乗数との乗算
に際して、乗数nビットをM個に分割し、被乗数nビッ
トの乗数の一部n/Mビットの乗算をM回実行して最終的
な乗算結果を求める場合に、従来においてはn/Mが割り
切れるか、剰余を持つかには無関係に、被乗数nビット
と、乗数のうち商n/Mの少数部を切り上げたビット数と
の乗算が可能な乗算器を用いて乗算を行っていた。例え
ば53ビット×53ビットの乗算を4回に分割して実行する
場合には、53ビット×14ビットの乗算が可能な乗算器を
用いて乗算を行っていた。In multiplying the n-bit binary multiplicand by the n-bit binary multiplier, the n-bit multiplier is divided into M pieces, and a part of the multiplicand of the n-bit multiplicand is multiplied by n / M bits to execute M times. Conventionally, multiplication of the multiplicand n bits and the number of bits obtained by rounding up the fractional part of the quotient n / M in the multiplier, regardless of whether n / M is divisible or has a remainder Multiplication was performed using a multiplier capable of performing the multiplication. For example, when a multiplication of 53 bits × 53 bits is divided into four and executed, the multiplication is performed using a multiplier capable of multiplying 53 bits × 14 bits.
したがって、53ビット×53ビットの乗算を4回に分け
て実行する場合には、乗数は見かけ上56ビットというこ
とになり、乗算が冗長となる。乗算装置を実現する場合
には、これは乗算回路、すなわちハードウェア量の増大
につながり、実装上の問題を生じていた。Therefore, when the multiplication of 53 bits × 53 bits is executed in four times, the multiplier is apparently 56 bits, and the multiplication becomes redundant. In the case of realizing a multiplication device, this leads to an increase in the number of multiplication circuits, that is, the amount of hardware, and causes a problem in mounting.
さらに商n/Mビットが割り切れる場合にも、nビット
×nビットの乗算をM回に分けて実行する場合には、n
ビット×n/Mビットの乗算の結果としての部分積を帰還
するにあたって部分積の和出力Sと桁上げ出力Cとが帰
還される。この時和出力Sと桁上げ出力Cの双方の上位
部は有効数字ではなく、単に部分積の符号を求めるため
の符号データと、符号データに付加される符号拡張ビッ
トであり、和出力と桁上げ出力との双方の符号データ、
および符号拡張ビットが帰還されることになる。Further, even when the quotient n / M bits are divisible, if the multiplication of n bits × n bits is executed in M times, n
In feeding back the partial product resulting from the multiplication of the bit × n / M bits, the sum output S of the partial products and the carry output C are fed back. At this time, the upper part of both the sum output S and the carry output C are not significant figures, but are code data for simply obtaining a code of a partial product and sign extension bits added to the code data. Code data for both output and
And the sign extension bits are fed back.
このようにして帰還された和出力Sと桁上げ出力Cは
他の部分積と多入力加算装置によって加算され、最終的
な乗算結果が得られるが、多入力加算装置には部分積の
データと桁上げ出力Cおよび和出力Sとが入力される。
したがって、桁上げ出力Cと和出力Sとの双方の上位部
に符号データ、および符号拡張ビットが付加されて帰還
される場合には、多入力加算装置に対する符号データ部
分の入力ビット数が増大し、多入力加算装置、ひいては
乗算装置全体のハードウェア量が増大するという問題点
があった。The sum output S and the carry output C thus fed back are added to another partial product by a multi-input adder to obtain a final multiplication result. The carry output C and the sum output S are input.
Therefore, when code data and sign extension bits are added to the upper part of both the carry output C and the sum output S and fed back, the number of input bits of the code data portion to the multi-input adder increases. In addition, there is a problem in that the hardware amount of the multi-input adding device and, consequently, the entire multiplying device increases.
本発明は、nビットの乗数をM個に分割してM回の乗
算によって最終的な乗算結果を出力する乗算装置のハー
ドウェア量を削減することを目的とする。An object of the present invention is to reduce the hardware amount of a multiplication device that divides an n-bit multiplier into M pieces and outputs a final multiplication result by M multiplications.
第1図は本発明の原理ブロック図である。同図(a)
は第1の発明の原理ブロック図、すなわちnビットの2
進被乗数とnビットの2進乗数との乗算に際して乗数n
ビットをM個に分割し、nビットとn/Mビットの乗算を
M回実行して乗算結果を求める場合に、商n/Mが剰余1
を持つ時の乗算装置の原理ブロック図である。FIG. 1 is a block diagram showing the principle of the present invention. FIG.
Is a block diagram of the principle of the first invention, that is, 2 bits of n bits.
Multiplier n when multiplying a base multiplicand by an n-bit binary multiplier
When a bit is divided into M bits and multiplication of n bits and n / M bits is performed M times to obtain a multiplication result, the quotient n / M is a remainder 1
FIG. 4 is a principle block diagram of a multiplication device when the multiplication device has the following.
第1図(a)において乗数選択手段2は、例えばセレ
クタであり、乗数1をその下位から商n/Mの整数部に等
しいビット数ずつ順次M回選択する。また被乗数選択手
段4は、例えばセレクタであり、乗数の最上位ビットの
状態に応じて、乗数の最上位ビットの状態が0の場合被
乗数を選択せず、かつ、乗数の最上位ビットの状態が1
の場合に被乗数3を前述のM回の乗算のうちの第1回は
n/Mの整数部に1を加えたビット数だけ、残りの(M−
1)回はn/Mの整数部に等しいビット数だけ下位ビット
側から順次選択する。In FIG. 1 (a), the multiplier selection means 2 is, for example, a selector, and sequentially selects the multiplier 1 M times from the lower order by the number of bits equal to the integer part of the quotient n / M. The multiplicand selecting means 4 is, for example, a selector. When the state of the most significant bit of the multiplier is 0, the multiplicand selecting means 4 does not select the multiplicand according to the state of the most significant bit of the multiplier. 1
In the case of, the first of the above-mentioned M multiplications by multiplicand 3 is
The remaining number of bits (M−M) is equal to the number of bits obtained by adding 1 to the integer part of n / M.
1) The number of times is sequentially selected from the lower bit side by the bit number equal to the integer part of n / M.
乗算手段5は被乗数3のnビットと乗数選択手段2の
出力との積の上位部分に、被乗数選択手段4の出力を加
算して、各回における部分的な乗算結果を得る。この部
分的な乗算がM回繰返されて、最終的な乗算結果が得ら
れる。The multiplying means 5 adds the output of the multiplicand selecting means 4 to the upper part of the product of the n bits of the multiplicand 3 and the output of the multiplier selecting means 2 to obtain a partial multiplication result each time. This partial multiplication is repeated M times to obtain a final multiplication result.
第1図(b)は第2の発明の原理ブロック図である。
同図はnビット×nビットの乗算に際して、乗数nビッ
トと被乗数n/Mビットとの乗算をM回実行して乗算結果
を求める場合に、商n/Mが剰余を持たない時の乗算装置
の原理ブロック図である。同図において、乗数選択手段
6は乗数1をその下位からn/Mビットずつ順次M回選択
する。また、乗算手段7は被乗数3のnビットと乗数選
択手段6の出力との積として、各回における部分的な乗
算結果を得る。FIG. 1 (b) is a principle block diagram of the second invention.
The figure shows a multiplication device when the quotient n / M has no remainder when the multiplication of n bits and the multiplicand n / M bits is performed M times in multiplication of n bits × n bits to obtain a multiplication result. It is a principle block diagram of. In the figure, a multiplier selecting means 6 sequentially selects a multiplier 1 M times in n / M bits from the lower order. Further, the multiplying means 7 obtains a partial multiplication result each time as a product of n bits of the multiplicand 3 and the output of the multiplier selecting means 6.
符号検出手段8は、例えば多入力加算器であり、乗算
手段7の内部に備えられ、被乗数3のnビットと乗数選
択手段6の出力との部分積の和出力と桁上げ出力から部
分積の符号を検出する。The code detecting means 8 is, for example, a multi-input adder and is provided inside the multiplying means 7. The sign output means 8 outputs the sum of partial products of n bits of the multiplicand 3 and the output of the multiplier selecting means 6 and the partial output from the carry output. Detect sign.
第1の発明の原理を示す第1図(a)においては、例
えば53ビット×53ビットの乗算を行うに際して、例えば
第1図の乗算時には商53/4の整数部に1を加えた14ビッ
トが被乗数の下位側から選択され、被乗数53ビットと乗
数選択手段2の出力、すなわち乗数の最下位から13ビッ
トとの積の上位部分に被乗数の下位14ビットが加算され
て、第1回の乗算における部分的な乗算結果が得られ
る。In FIG. 1 (a) showing the principle of the first invention, for example, when performing a multiplication of 53 bits × 53 bits, for example, at the time of the multiplication in FIG. Is selected from the lower side of the multiplicand, and the lower 14 bits of the multiplicand are added to the upper part of the product of the 53 bits of the multiplicand and the output of the multiplier selecting means 2, that is, the lower 13 bits of the multiplier. Is obtained.
第2回目以降の乗算においては、被乗数の13ビットが
下位側から順次選択され、それが被乗数53ビットと乗数
選択手段2の出力、すなわち13ビットとの積の上位部分
に加算されて部分的な乗算結果が得られ、これらを用い
て最終的な乗算結果が求められる。In the second and subsequent multiplications, the 13 bits of the multiplicand are sequentially selected from the lower side, and the 13 bits are added to the upper part of the product of the 53 bits of the multiplicand and the output of the multiplier selecting means 2, that is, 13 bits. A multiplication result is obtained, and a final multiplication result is obtained using these.
第2の発明の原理を示す第1図(b)においては、n/
Mが剰余を持たないものとして乗算が行われる。各回に
おける部分的な乗算結果は、被乗数nビットと乗数選択
手段6の出力である乗数のうちのn/Mとの積として求め
られる。そして乗算手段7の内部で、各回の部分積の和
出力と桁上げ出力とを次回の乗算のために帰還するに際
して、和出力と桁上げ出力との符号データを、例えば加
算することによって部分積の符号が検出され、和出力と
桁上げ出力とのいずれかの片方にのみその符号検出結果
が部分積の符号データとして挿入され、その挿入後の結
果が帰還される。すなわち、例えば和出力の符号データ
に符号検出手段8の検出結果が挿入された場合には、桁
上げ出力の符号データは帰還されず、桁上げ出力につい
てはその有効数字のみが帰還される。In FIG. 1 (b) showing the principle of the second invention, n /
Multiplication is performed assuming that M has no remainder. The partial multiplication result in each round is obtained as the product of n bits of the multiplicand and n / M of the multiplier output from the multiplier selecting means 6. When the sum output and the carry output of each partial product are fed back for the next multiplication inside the multiplication means 7, the sign data of the sum output and the carry output are added, for example, to add the partial product. Is detected, the code detection result is inserted as code data of a partial product into only one of the sum output and the carry output, and the result after the insertion is fed back. That is, for example, when the detection result of the code detection means 8 is inserted into the code data of the sum output, the code data of the carry output is not fed back, and only the significant digit of the carry output is fed back.
なお、以上の説明では第2の発明においては簡単のた
めにn/Mが剰余を持たないものとしたがn/Mが剰余を持つ
場合、すなわち第1の発明のおいても第2の発明の符号
データ帰還方式は適用できる。In the above description, n / M does not have a remainder in the second invention for simplicity. However, when n / M has a remainder, that is, in the first invention, the second invention is also used. Can be applied.
以上のように、本発明においては商n/Mが剰余1を持
つ場合にも被乗数nビットと乗数のうちn/Mの整数部に
等しいビット数との乗算を行う乗算器が用いられ、また
商n/Mが余剰を持つか持たないかにかかわらず、部分積
の和出力と桁上げ出力が入力される多入力加算装置にお
ける符号データ部分の入力ビット数が削減される。As described above, in the present invention, even when the quotient n / M has a remainder 1, a multiplier for multiplying n bits of the multiplicand and the number of bits equal to the integer part of n / M of the multiplier is used, and Regardless of whether the quotient n / M has a surplus or not, the number of input bits of the code data portion in the multi-input adder to which the sum output and the carry output of the partial products are input is reduced.
第2図は第1の発明の実施例としての乗算装置の全体
構成ブロック図である。同図において、乗数レジスタ10
内の乗数(マルチプライヤ、MULTIPLIER)nビットは、
セレクタ11によってその下位から商n/Mの整数部に等し
いビット数、例えばn=53ビットの場合には13ビットず
つ順次4回選択され、乗算器14内の乗算ゲート15に入力
される。FIG. 2 is a block diagram showing the overall configuration of a multiplication device as an embodiment of the first invention. In the figure, a multiplier register 10
N bits of the multiplier (multiplier, MULTIPLIER) in
The number of bits equal to the integer part of the quotient n / M is sequentially selected four times by the selector 11 four times in units of 13 bits in the case of n = 53 bits, for example, and input to the multiplication gate 15 in the multiplier 14.
一方、被乗数レジスタ12内の被乗数(マルチプリカン
ド、MULTIPLICAND)は乗数の最上位ビットの状態に応じ
て、乗数の最上位ビットの状態が0の場合被乗数を選択
せず、かつ、乗数の最上位ビットの状態が1の場合にそ
の全体が乗算ゲート15に出力されると同時に、セレクタ
13によって第1回の乗算時には商n/Mの整数部に1を加
えたビット数だけ、例えばn=53ビットの場合には14ビ
ットが選択され、また第2回から第4回の乗算時には下
位側から順次13ビットが選択される。On the other hand, the multiplicand (multiple predicate, MULTIPLICAND) in the multiplicand register 12 does not select the multiplicand when the state of the most significant bit of the multiplier is 0 according to the state of the most significant bit of the multiplier, and also selects the most significant bit of the multiplier. When the state of a bit is 1, the whole is output to the multiplication gate 15, and at the same time, the selector
13, the number of bits obtained by adding 1 to the integer part of the quotient n / M at the time of the first multiplication, for example, 14 bits are selected when n = 53 bits, and at the time of the second to fourth multiplications 13 bits are sequentially selected from the lower side.
セレクタ11によって選択された乗数のうちn/Mの整数
部に等しいビット数と被乗数全体との積が乗算ゲート15
によって部分積として求められ、その部分積の上位にセ
レクタ13の出力する被乗数の一部が加算される形式で乗
算ゲート15の出力、セレクタ13の出力、及び前回の部分
積の和出力Sと桁上げ出力CとがCSA(桁上げ保存加算
器)16によって加算される。The product of the number of bits equal to the integer part of n / M of the multiplier selected by the selector 11 and the entire multiplicand is multiplied by the multiplication gate 15.
Is obtained as a partial product, and the output of the multiplication gate 15, the output of the selector 13, and the sum output S of the previous partial product and the digit are added in such a manner that a part of the multiplicand output from the selector 13 is added to the higher order of the partial product. The carry output C is added by a carry save adder (CSA) 16.
また、各回の部分積の和出力S、桁上げ出力C、及び
後述するように加算時に不要となる桁からの桁上がりを
求めるための加算器であるスピルアダー17の出力がCLA
(桁上げ先見加算器)18に入力され、最終的な乗算結果
19が求められる。Further, the sum output S of each partial product, the carry output C, and the output of the spill adder 17 which is an adder for obtaining a carry from a digit that is not required at the time of addition as described later are CLA.
(Carry look-ahead adder) input to 18 and the final multiplication result
19 is required.
第3図は第1の発明における乗算方式の説明図であ
る。同図は乗算を4回に分けて、すなわち4サイクルで
実行する例である。第2図の乗算ゲートの出力G1〜G7の
ビット列を加算することにより、現サイクルの部分積を
求めることができる。次のサイクルでは、前のサイクル
の乗算の部分積の結果としての桁上ゲート出力Cと和出
力SがG1〜G7のビット列に加算される。このような乗算
を4サイクル繰り返すことにより最終的な乗算結果が求
められる。FIG. 3 is an explanatory diagram of the multiplication method in the first invention. The figure shows an example in which the multiplication is divided into four times, that is, executed in four cycles. By adding the bit strings of the outputs G1 to G7 of the multiplication gate in FIG. 2, a partial product in the current cycle can be obtained. In the next cycle, the carry gate output C and the sum output S as a result of the partial product of the multiplication in the previous cycle are added to the bit strings G1 to G7. By repeating such multiplication for four cycles, a final multiplication result is obtained.
第3図において、1サイクル目では前サイクルの部分
積の桁上げ出力Cと和出力Sは全て空きとなっている。
2〜4サイクル目ではこれらの出力の上位13ビットは空
きとなっており、実際にはサイン(符号)、拡張ビット
が挿入されるが、この挿入は後述するように桁上げ出力
Cまたは和出力Sのどちらか一方に行われればよく、ど
ちらか一方の空きの部分に乗数の最上位ビットの乗算に
相当する被乗数の部分的なビット列が挿入される。In FIG. 3, in the first cycle, the carry output C and the sum output S of the partial product of the previous cycle are all empty.
In the second to fourth cycles, the upper 13 bits of these outputs are empty, and a sign (sign) and an extension bit are actually inserted. This insertion is carried out by a carry output C or a sum output as described later. S may be performed on one of the S, and a partial bit string of the multiplicand corresponding to the multiplication of the most significant bit of the multiplier is inserted into one of the empty portions.
このビット列は第2図のセレクタ13によって選択され
るもので、1サイクル目には被乗数の最下位14ビット
が、また2〜4サイクル目では下位側から順次13ビット
ずつ選択されて挿入される。なお第3図において、各サ
イクルにおけるビット列のビット数は53ビット×13ビッ
トの乗算結果としての66ビットとなり、1サイクル毎に
13ビットシフトされて加算される。This bit string is selected by the selector 13 shown in FIG. 2. In the first cycle, the least significant 14 bits of the multiplicand are selected and inserted in order of 13 bits from the lower side in the second to fourth cycles. In FIG. 3, the number of bits in the bit string in each cycle is 66 bits as a result of multiplication of 53 bits × 13 bits, and the number of bits is
13 bits are shifted and added.
第4図は被乗数の選択を行うセレクタ13の実施例であ
る。同図において、被乗数レジスタ12内の被乗数を選択
するセレクタ13は被乗数の上位から0ビット目から12ビ
ット目までを選択するためのアンド回路20、13ビット目
から25ビット目を選択するアンド回路21、26ビット目か
ら38ビット目を選択するアンド回路22、39ビット目から
51ビット目を選択するアンド回路23、及び最下位52ビッ
ト目を選択するアンド回路24と、アンド回路20〜23の出
力が入力されるオア回路25から構成されている。そして
1サイクル目ではアンド回路23、及び24の出力が選択さ
れ、2サイクル目ではアンド回路22、3サイクル目では
21、4サイクル目では20の出力が選択される。尚、第4
図(a)のアンド回路、オア回路は紙面の都合上、省略
して記述されており、例えば出力が3ビットであるアン
ドゲートは実際には同図の(b)のように構成される。FIG. 4 shows an embodiment of the selector 13 for selecting a multiplicand. In the figure, a selector 13 for selecting a multiplicand in a multiplicand register 12 includes an AND circuit 20 for selecting the 0th to 12th bits from the upper bit of the multiplicand, and an AND circuit 21 for selecting the 25th bit from the 13th bit. AND circuit for selecting the 26th bit to the 38th bit From the 22nd and 39th bit
An AND circuit 23 for selecting the 51st bit, an AND circuit 24 for selecting the 52nd least significant bit, and an OR circuit 25 to which the outputs of the AND circuits 20 to 23 are input. Then, in the first cycle, the outputs of the AND circuits 23 and 24 are selected, and in the second cycle, the AND circuit 22, and in the third cycle,
In the 21st and 4th cycles, 20 outputs are selected. The fourth
The AND circuit and the OR circuit in FIG. 7A are omitted for convenience of illustration, and for example, an AND gate whose output is 3 bits is actually configured as shown in FIG.
第5図は9ビット×9ビットの乗算の実施例の説明図
である。同図においては9ビット×4ビットの乗算が2
回行われる。乗数はその下位側から4ビットずつ選択さ
れ、ブースのアルゴリズムを用いて制御信号g1,g2,及び
g3にリコードされる。すなわち、これらの制御信号は乗
数のうち4ビットの下位2ビットの値に基づいて被乗数
の0倍、+1倍、−2倍、または−1倍のいずれかを求
めるための制御信号g1、乗数の最下位ビットを除く3ビ
ットの値に基づいて被乗数の0倍、+1倍、−2倍、ま
たは−1倍×22を求めるための制御信号g2、及び乗数4
ビットの最上位ビットの値に基づいて被乗数の0倍、ま
たは1倍×24を求めるための制御信号g3であり、被乗数
とこれらの制御信号とによって乗数ゲート15の出力G1〜
G3が第5図(a)のように求められ、これらの出力がCS
A(桁上げ保存加算器)16によって加算され、9ビット
×4ビットの部分積が得られる。FIG. 5 is an explanatory diagram of an embodiment of multiplication of 9 bits × 9 bits. In the figure, the multiplication of 9 bits × 4 bits is 2
Is done many times. The multiplier is selected by 4 bits at a time from the lower side, and the control signals g 1 , g 2 , and
It is recoded in g 3. That is, these control signals are a control signal g 1 for obtaining any of 0 times, +1 times, −2 times, or −1 times of the multiplicand based on the value of the lower 2 bits of the 4 bits of the multiplier, Control signal g 2 for obtaining 0 times, +1 times, −2 times, or −1 times × 2 2 of the multiplicand based on the 3-bit value excluding the least significant bit of
0 times multiplicand based on the value of the most significant bit of the bit, or a control signal g 3 for obtaining the 1-fold × 2 4, the output of the multiplier gate 15 by the multiplicand and the control signals G1~
G3 is obtained as shown in FIG. 5 (a), and these outputs are CS
The result is added by A (carry-save adder) 16 to obtain a 9-bit × 4-bit partial product.
9ビット×8ビットの乗算を行うために、以上のよう
な9ビット×4ビットの乗算が2回行われる。第5図
(b)は、1サイクル目と2サイクル目の乗算を示す。
第2図のCSA16の出力としての桁上げ出力Cと和出力S
とが、次のサイクルのG1〜G3のビット列と加算される。
2サイクル目のG1〜G3、桁上げ出力C、和出力Sとが加
算されて、9ビット×8ビットの乗算結果が求められ
る。In order to perform the multiplication of 9 bits × 8 bits, the above multiplication of 9 bits × 4 bits is performed twice. FIG. 5B shows the multiplication in the first cycle and the second cycle.
The carry output C and the sum output S as the outputs of the CSA 16 in FIG.
Are added to the bit strings of G1 to G3 in the next cycle.
G1 to G3 in the second cycle, carry output C, and sum output S are added to obtain a 9-bit × 8-bit multiplication result.
乗数の最上位ビットと被乗数との積を求めるために、
第5図(C)に示すように被乗数が下位側5ビットと上
位側4ビットとに分割され、下位側5ビットは1サイク
ル目において、例えば桁上げ出力Cの上位5ビットに、
また上位4ビットは2サイクル目の桁上げ出力の上位4
ビットに選択して挿入されることにより、これらが加算
されて最終的に2サイクル目の乗算結果は9×9ビット
の乗算結果となる。To find the product of the most significant bit of the multiplier and the multiplicand,
As shown in FIG. 5 (C), the multiplicand is divided into lower 5 bits and upper 4 bits, and the lower 5 bits are, for example, in the upper 5 bits of the carry output C in the first cycle.
The upper 4 bits are the upper 4 bits of the carry output in the second cycle.
By selecting and inserting the bits, these are added, and the multiplication result of the second cycle finally becomes a multiplication result of 9 × 9 bits.
第6図は、第2図において次のサイクルで不要になる
桁からの桁上りを求めるための加算器としてのスピルア
ダー17の動作の説明図である。前述の53ビット×53ビッ
トの乗算の場合に乗算結果は106ビットとなるが、多く
の場合必要となる結果は上位53ビットである。すなわち
下位53ビットは不要になるが上位53ビットを求める場合
には下位からの桁上がりを考える必要があるのは当然で
ある。FIG. 6 is an explanatory diagram of the operation of the spill adder 17 as an adder for obtaining a carry from a digit that becomes unnecessary in the next cycle in FIG. In the case of the above-described multiplication of 53 bits × 53 bits, the multiplication result is 106 bits, but in many cases, the required result is the upper 53 bits. In other words, the lower 53 bits become unnecessary, but when the upper 53 bits are obtained, it is natural to consider the carry from the lower.
第3図で1サイクル目の結果としての66ビット(53×
13ビット)のうち、下位13ビットは2サイクル目の加算
では不要となる。しかし桁上がりだけは必要であり、3
サイクル目、4サイクル目でも同じことがいえる。スピ
ルアダーはこのように不要になった桁からの桁上りを求
めるための加算器であり、現サイクルにおけるスピルア
ダーの出力は、第6図に示すように次のサイクルでは最
下位桁のキャリー入力に入力される。In FIG. 3, 66 bits (53 ×
13 bits), the lower 13 bits are not required in the second cycle of addition. However, only carry is necessary, and 3
The same can be said for the fourth and fourth cycles. The spill adder is an adder for obtaining a carry from a digit that is no longer needed. The output of the spill adder in the current cycle is input to the carry input of the least significant digit in the next cycle as shown in FIG. Is done.
第7図は53ビットの乗数を14ビットずつ選択して乗算
を行う従来方式と、最上位1ビットを除く13ビットを選
択する本発明の方式とで必要となるマルチプルゲートの
ゲート数の比較説明図である。同図において(a)は従
来方式の説明図であり、14ビットの乗数の最下位2ビッ
トの内容によって+1,−2,又は−1のG1に対する制御信
号を得るためのゲート数3と、G2〜G7に対して制御信号
(桁のシフトは除く)+1,+2,−2または−1の4つを
得るためのゲート数4×6、及び乗数の最下位ビットの
内容に基づいてG8の制御信号として+1を得るためのゲ
ート数1とが加算され、これらの加算結果28と被乗数の
ビット数53との積1484が従来方式で必要なゲート数とな
る。FIG. 7 is a comparison explanation of the number of gates of the multiple gates required in the conventional method in which a multiplier of 53 bits is selected by 14 bits and multiplication is performed, and in the method of the present invention in which 13 bits excluding the most significant 1 bit are selected. FIG. FIG. 3A is an explanatory diagram of the conventional system, in which the number of gates 3 for obtaining a control signal for G1 of +1 or -2 or -1 according to the contents of the least significant 2 bits of a 14-bit multiplier, and G2 Control of G8 based on the number of gates 4 × 6 for obtaining four control signals (excluding digit shift) +1, +2, -2 or -1 for G7 and the least significant bit of the multiplier The number of gates 1 for obtaining +1 as a signal is added, and the product 1484 of the addition result 28 and the number of bits 53 of the multiplicand is the number of gates required in the conventional method.
これに対して本発明の方式を用いる(b)では、最下
位2ビットの内容によるG1の制御信号としての+1,−2,
または−1を求めるためのゲート数3、G2〜G6に対する
制御信号+1,+2,−2,−1を求めるためのゲート数4×
5、及び最上位2ビットの内容に応じてG7に対する制御
信号+1または+2を求めるためのゲート数2とが加算
された結果25と、被乗数のビット数53との積1325が必要
なゲート数となり、従来方式に比べて159個のゲートが
削減される。On the other hand, in the method (b) using the method of the present invention, +1 and −2 as control signals of G1 based on the contents of the least significant 2 bits are used.
Or, the number of gates for obtaining −1, the number of gates for obtaining control signals +1, +2, −2, −1 for G2 to G6, 4 ×
The product 1325 of the result 25 obtained by adding 5 and the number of gates 2 for obtaining the control signal +1 or +2 for G7 according to the contents of the most significant 2 bits and the number of bits 53 of the multiplicand is the required number of gates. Thus, 159 gates are reduced as compared with the conventional method.
第8図は第2図のCSA16のツリーの構成を従来方式と
本発明の方式とで比較したものである。(a)は従来方
式を示し、乗算ゲートの出力G1〜G8に加えて前のサイク
ルの部分積の桁上げ出力Cと和出力Sとが入力されるた
めに、CSAは8個、ツリーは5段となる。これに対して
本発明の方式を示す(b)においては、乗算ゲートの出
力がG1〜G7の7本となるために、CSAは7個、ツリーは
4段となる。CSAは1個当たり12ゲートを用いて構成さ
れているために、53ビット×13ビットの乗算結果のビッ
ト数66ビットと12ゲートの積は、792ゲートとなり、こ
れだけのゲート数のハードウェア量削減と、CSAのツリ
ー1段分の高速化が実現される。FIG. 8 shows a comparison of the tree structure of the CSA 16 of FIG. 2 between the conventional system and the system of the present invention. (A) shows the conventional system, in which the carry output C and the sum output S of the partial product of the previous cycle are input in addition to the outputs G1 to G8 of the multiplication gate, so that the number of CSAs is 8 and the tree is 5 It becomes a step. On the other hand, in (b) showing the method of the present invention, since the output of the multiplication gate is seven from G1 to G7, there are seven CSAs and four trees. Since the CSA is configured with 12 gates per unit, the product of 66 bits and the 12 gates of the multiplication result of 53 bits x 13 bits is 792 gates, and this reduces the number of gates and the amount of hardware. Thus, speeding up of one CSA tree is realized.
第9図は第2の発明の実施例としての乗算器の全体構
成ブロック図である。同図を第1の発明に対する第2図
と比較すると、第9図では被乗数を選択するセレクタ13
が存在せず、CSA16の出力としての桁上げ出力C、及び
和出力Sの符号データから部分積の符号を求めるための
サイン検出回路26が追加されている点が異なっている。
なお、第9図では共にnビットの乗数と被乗数は乗算回
数Mによって割り切れるものとして、以下の説明を行
う。FIG. 9 is a block diagram showing the overall configuration of a multiplier according to an embodiment of the second invention. FIG. 9 is compared with FIG. 2 for the first invention. FIG. 9 shows a selector 13 for selecting a multiplicand.
In that a sign detection circuit 26 for obtaining the sign of the partial product from the sign data of the carry output C as the output of the CSA 16 and the sign data of the sum output S is added.
Note that in FIG. 9, the following description will be made on the assumption that the n-bit multiplier and the multiplicand are divisible by the number of multiplications M.
第10図は第2の発明における各サイクルでの乗算方式
の説明図である。同図においては、例えば52ビット×52
ビットの乗算が行われるものとし、乗数52ビットは13ビ
ットずつ4個に分割されて、被乗数52ビットの乗数13ビ
ットとの乗算が各サイクルにおいて繰り返される。そし
て各サイクルにおける次のサイクルへの桁上げ出力Cと
和出力Sとの符号データによって部分積の符号、すなわ
ちサインの検出が行われ、その符号データは第10図では
桁上げ出力の上位に挿入されて帰還され、次のサイクル
で用いられる。FIG. 10 is an explanatory diagram of a multiplication method in each cycle in the second invention. In the figure, for example, 52 bits × 52
Bit multiplication is performed, and the 52-bit multiplier is divided into four 13 bits, and the multiplication of the 52-bit multiplicand with the 13-bit multiplier is repeated in each cycle. Then, the sign of the partial product, that is, the sign is detected by the sign data of the carry output C and the sum output S for the next cycle in each cycle, and the sign data is inserted above the carry output in FIG. Is returned and used in the next cycle.
第11図は従来方式と第2の発明の符号データ帰還方式
の比較図である。同図(a)は従来方式を示し、桁上げ
出力Cと和出力Sとの符号データは共に符号拡散され
て、その両方が帰還されていた。これに対して本発明で
は、(b)に示すように桁上げ出力Cと和出力Sの符号
データとを用いてサイン検出回路によって部分積の符号
が検出され、符号拡散が行われて、その結果が例えば桁
上げ出力Cの上位に挿入されて帰還される。FIG. 11 is a comparison diagram between the conventional system and the coded data feedback system of the second invention. FIG. 2A shows a conventional system, in which code data of a carry output C and a sum output S are both code-spread, and both of them are fed back. On the other hand, in the present invention, the sign of the partial product is detected by the sign detection circuit using the code data of the carry output C and the sum output S as shown in FIG. The result is inserted, for example, at the upper position of the carry output C and fed back.
第12図は符号データの帰還方式の実施例である。同図
(a)は入力データa,b,c、加算結果の桁上ゲート出力
Cと和出力Sとを示し、従来方式では同図(b)に示す
ように桁上げ出力Cと和出力Sとの符号データ2ビット
列がそのまま帰還され、加算されていたのに対して、本
発明の実施例を示す(c)では桁上げ出力Cと和出力S
との符号データが加算され、1ビット列の符号データと
して和出力Sの上位に挿入されて帰還されている。FIG. 12 shows an embodiment of a feedback system for code data. FIG. 6A shows input data a, b, c, a carry gate output C and a sum output S of the addition result, and the carry output C and the sum output S as shown in FIG. 2 is returned as it is and added, whereas in (c) of the embodiment of the present invention, the carry output C and the sum output S
Are added to the sum output S and fed back as 1-bit string code data.
第13図は第9図におけるサイン検出回路26の実施例の
説明図である。サイン検出回路26は多入力加算器であ
り、加算されるデータが符号データであるという点が特
徴となっている。同図(a)では入力データA,B及びC
がCSAとCLAによって加算され、加算結果としてのサイン
が求められる。すなわち、同図(b)に示すように入力
データA,B及びCの符号データが加算され、結果として
サインが求められる。FIG. 13 is an explanatory diagram of an embodiment of the sign detection circuit 26 in FIG. The sign detection circuit 26 is a multi-input adder, and is characterized in that the data to be added is code data. In FIG. 3A, input data A, B and C
Are added by the CSA and the CLA, and the sign as the addition result is obtained. That is, the sign data of the input data A, B, and C are added as shown in FIG.
第14図は符号データの帰還方式の実施例の一般的な説
明図である。ここでは簡単のため −Sa・23+a1・22+a2・21+a3 −Sb・23+b1・22+b2・21+b3 −Sc・23+c1・22+c2・21+c3 を加算する場合を考える。同図(a)はCSAへの3つの
入力に対してCSAの出力としての和出力の符号データXS,
XS,XS、及び桁上げ出力の符号データYS,YS,Y1がそのま
ま帰還される従来方式を示し、これに対して(b)は和
出力の符号データと桁上げ出力の符号データとの和がサ
イン検出回路によって検出され、桁上げ出力の符号デー
タS3,S2,S1として帰還される。FIG. 14 is a general explanatory diagram of an embodiment of a feedback system for code data. Here, for the sake of simplicity, −Sa · 2 3 + a 1 · 2 2 + a 2 · 2 1 + a 3 −Sb · 2 3 + b 1 · 2 2 + b 2 · 2 1 + b 3 −Sc · 2 3 + c 1 · 2 2 + c Consider the case of adding 2 · 2 1 + c 3 . FIG. 9A shows the sum output code data X S , as the output of the CSA, for three inputs to the CSA.
XS , XS , and the carry output sign data Y S , Y S , Y 1 show a conventional method in which feedback is performed as it is, whereas (b) shows the sum output sign data and the carry output sign. The sum with the data is detected by the sine detection circuit and fed back as carry output sign data S 3 , S 2 , and S 1 .
ここで S1=XSY1 S2=XSYS(GS1) S3=XSYS(GSS+GS1・PSS) とする。S3より上の符号データは S4=XSYS(GSS+GSS・PSS+GS1・PSS・PSS) =XSYS(GSS+GS1・PSS)=S3 となり、S3と同じになる。(サイン拡張) X1,Y2の桁からの桁上げC12=G12+G23・P12・G3P23・
P12を符号データに加算すると、結果としてのサインは SA1=S1C12=XSY1C12 SA2=S2S1・C12=XSYSGS1PS1・C12 =XSYS(GS1+PS1・C12) なお、SA2の式のうちGS1PS1・C12は SA3=S3S2・S1・C12 =XSYS(GSS+GS1・PSS){PSS+GS1・PS1・C12} =XSYS(GSS+GS1・PSS)C12・PS1・PSS =XSYS(GSS+GS1・PSS+PSS・PS1・C12) なお、SA2の式の第2行におけるPSSGS1・PS1・C12
は▲▼・GS1・PS1・C12+PSS・▲▼・PS1
・C12=C12・PS1・PSS(∵GS1・PS1=0,▲▼・P
S1=PS1)と変形され、 また第3行の(GSS+GS1・PSS)C12・PS1・PSSは (GSS+GS1・PSS)・(▲▼+▲▼+▲
▼)+▲▼・(▲▼+▲▼)
・PSS・PS1・C12=GSS+GS1・PSS+PSS・PS1・C12と変
形される。Where S 1 = X S Y 1 S 2 = X S Y S (G S1) S 3 = X S Y and S (G SS + G S1 · P SS). Code data above S 3 is S 4 = X S Y S ( G SS + G SS · P SS + G S1 · P SS · P SS) = X S Y S (G SS + G S1 · P SS) = S 3 becomes , it is the same as the S 3. (Sign extended) X 1, carry from the digit of Y 2 C 12 = G 12 + G 23 · P 12 · G 3 P 23 ·
When adding P 12 to the code data, the sign of the result S A1 = S 1 C 12 = X S Y 1 C 12 S A2 = S 2 S 1 · C 12 = X S Y S G S1 P S1 · C 12 = X S Y S (G S1 + P S1 · C 12 ) In the expression of S A2 , G S1 P S1 · C 12 is S A3 = S 3 S 2 · S 1 · C 12 = X S Y S (G SS + G S1 · P SS) {P SS + G S1 · P S1 · C 12} = X S Y S (G SS + G S1 · P SS ) C 12 · P S1 · P SS = X S Y S (G SS + G S1 · P SS + P SS · P S1 · C 12 ) Note that P SS G S1 · P in the second line of the expression of S A2. S1・ C 12
Is ▲ ▼ ・ G S1・ P S1・ C 12 + P SS・ ▲ ▼ ・ P S1
・ C 12 = C 12・ P S1・ P SS (∵G S1・ P S1 = 0, ▲ ▼ ・ P
S1 = P S1 ), and (G SS + G S1 · P SS ) C 12 · P S1 · P SS in the third row is (G SS + G S1 · P SS ) · (▲ ▼ + ▲ ▼ + ▲)
▼) + ▲ ▼ ・ (▲ ▼ + ▲ ▼)
- is transformed with P SS · P S1 · C 12 = G SS + G S1 · P SS + P SS · P S1 · C 12.
通常の方法でも、和出力、桁上げ出力の符号データに
C12が入ってきた場合の結果は同様となる。すなわち、
結果のサインは SA1=XSY1C12 SA2=XSYS(GS1+C12・PS1) SA3=XSYS(GSS+GS1・PSS+C12・PS1・PSS) 従って、符号データは(XS,XS,XS)(YS,YS,Y1)の2
ビット列を帰還する必要はなく、S3,S2,S1の1ビット列
を帰還すれば良い。Even in the normal method, sum output and carry output
Results in the case of C 12 came in is the same. That is,
The sign of the result is S A1 = X S Y 1 C 12 S A2 = X S Y S (G S1 + C 12 · P S1 ) S A3 = X S Y S (G SS + G S1 · P SS + C 12 · P S1 · P SS ) Therefore, the code data is 2 of (X S , X S , X S ) (Y S , Y S , Y 1 )
It is not necessary to feed back the bit string, and it is sufficient to feed back one bit string of S 3 , S 2 , and S 1 .
第15図は第2の発明におけるゲート削減効果の説明図
である。同図(a)は従来方式のCSAツリーの説明図で
あり、上位13ビットの部分に対してCSA16に対する入力
は9入力であったが、本発明ではサイン検出回路により
符号データを1ビット列にしたために、例えば和出力の
上位13ビットの部分の入力は不要となって8入力とな
り、同図(b)に示すようにCSAの個数は6個となる。C
SAは1個あたり12ゲートから構成されるために、13ビッ
ト×12ゲート=156ゲートの削減が可能となる。FIG. 15 is an explanatory diagram of the gate reduction effect in the second invention. FIG. 1A is an explanatory diagram of the CSA tree of the conventional system. Although the input to the CSA 16 is 9 for the upper 13 bits, the sign data is converted into a 1-bit string by the sign detection circuit in the present invention. In addition, for example, the input of the upper 13 bits of the sum output becomes unnecessary and becomes eight inputs, and the number of CSAs becomes six as shown in FIG. C
Since each SA is composed of 12 gates, 13 bits × 12 gates = 156 gates can be reduced.
以上の説明においては、第2の発明に対しては共にn
ビットの乗数と被乗数とが乗算回数のMで割り切れるも
のとしたが、n/Mの剰余が1である場合にも第1の発明
と第2の発明を組み合わせることが当然可能である。In the above description, both of n
Although the bit multiplier and the multiplicand are assumed to be divisible by the number of multiplications M, the first invention and the second invention can be naturally combined even when the remainder of n / M is 1.
以上詳細に説明したように、本発明によれば被乗数と
乗数のビット数nと乗算回数Mとの商n/Mが剰余1を持
つ場合にも、n/Mの整数部のビット数×nビットの乗算
をM回繰り返すことにより最終的な乗算結果が求めら
れ、また部分積の結果としての桁上げ出力と和出力との
いずれかの上位に部分積の符号検出結果を挿入して帰還
することにより、ハードウェア量の大幅な削減が可能と
なり、コストの低減、及び実装上の問題の解決に寄与す
るところが大きい。As described in detail above, according to the present invention, even when the quotient n / M of the bit number n of the multiplicand and the multiplier and the number of multiplications M has a remainder 1, the number of bits of the integer part of n / M × n The final multiplication result is obtained by repeating the bit multiplication M times, and the sign detection result of the partial product is inserted above any of the carry output and the sum output as a result of the partial product, and the result is fed back. This makes it possible to significantly reduce the amount of hardware, greatly contributing to cost reduction and solving problems in mounting.
第1図(a),(b)は本発明の原理ブロック図、 第2図は第1の発明の実施例としての乗算装置の全体構
成を示すブロック図、 第3図は第1の発明における乗算方式の説明図、 第4図(a),(b)は被乗数セレクタの実施例の構成
を示す回路図、 第5図(a)〜(c)は9ビット×9ビットの乗算の実
施例の説明図、 第6図はスピルアダーの動作の説明図、 第7図(a),(b)は第1の発明におけるマルチプル
ゲート数削減効果の説明図、 第8図(a),(b)は第1の発明におけるCSAの削減
効果の説明図、 第9図は第2の発明の実施例としての乗算装置の全体構
成を示すブロック図、 第10図は第2の発明における乗算方式の説明図、 第11図(a),(b)は第2の発明における符号データ
帰還方式の説明図、 第12図(a)〜(c)は符号データの帰還方式の実施例
の説明図、 第13図(a),(b)はサイン検出回路の実施例の説明
図、 第14図(a),(b)は符号データ帰還方式の一般的な
説明図、 第15図(a),(b)は第2の発明におけるCSAの削減
効果の説明図である。 1……乗数、 2,6……乗数選択手段、 3……被乗数、 4……被乗数選択手段、 5,7……乗数手段 8……符号検出手段、 11……乗数セレクタ、 13……被乗数セレクタ、 16……CLA(桁上り保存加算器)、 18……CLA(桁上げ先見加算器).1 (a) and 1 (b) are block diagrams showing the principle of the present invention, FIG. 2 is a block diagram showing an overall configuration of a multiplication device as an embodiment of the first invention, and FIG. 4 (a) and 4 (b) are circuit diagrams showing a configuration of an embodiment of a multiplicand selector, and FIGS. 5 (a) to 5 (c) are embodiments of multiplication of 9 bits × 9 bits. FIG. 6 is an explanatory diagram of the operation of the spill adder. FIGS. 7 (a) and 7 (b) are explanatory diagrams of the effect of reducing the number of multiple gates in the first invention, and FIGS. 8 (a) and (b). FIG. 9 is an explanatory diagram of a CSA reduction effect in the first invention, FIG. 9 is a block diagram showing an overall configuration of a multiplication device as an embodiment of the second invention, and FIG. 10 is an explanation of a multiplication method in the second invention. FIGS. 11 (a) and 11 (b) are explanatory diagrams of a code data feedback system in the second invention, and FIGS. 12 (a) to 12 (c). ) Is an explanatory diagram of an embodiment of a feedback system for code data, FIGS. 13A and 13B are explanatory diagrams of an embodiment of a sine detection circuit, and FIGS. 14A and 14B are feedback systems of a code data. FIGS. 15 (a) and 15 (b) are explanatory diagrams of the CSA reduction effect in the second invention. 1 ... multiplier, 2,6 ... multiplier selecting means, 3 ... multiplicand, 4 ... multiplicand selecting means, 5,7 ... multiplier means 8 ... sign detecting means, 11 ... multiplier selector, 13 ... multiplicand Selector, 16 CLA (carry-save adder), 18 CLA (carry-look-ahead adder).
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 7/00 ──────────────────────────────────────────────────続 き Continued on front page (58) Field surveyed (Int.Cl. 7 , DB name) G06F 7/00
Claims (2)
数との乗算に際して乗算nビットをM個に分割し、nビ
ットとn/Mビットの乗算をM回実行して乗算結果を求め
る乗算装置において、商n/Mが剰余1を持つ時に、 乗数をその下位から商n/Mの整数部に等しいビット数ず
つ順次M回選択する乗数選択手段と、 乗数の最上位ビットの状態が1の場合に応じて、乗数の
最上位ビットの状態が0の場合被乗数を選択せず、か
つ、乗数の最上位ビットの状態が1の場合に被乗数を前
記M回の乗算のうちの第1回はn/Mの整数部に1を加え
たビット数だけ、第2回から第M回はn/Mの整数部に等
しいビット数だけいずれも被乗数の下位ビット側から順
次選択する被乗数選択手段と、 被乗数のnビットと該乗数選択手段の出力との積の上位
部分に該被乗数選択手段の出力を加算して各回における
部分的な乗算結果を得る乗算手段を有することを特徴と
する乗算装置。When multiplying an n-bit binary multiplicand by an n-bit binary multiplier, the multiplication n bits is divided into M, and the multiplication of n bits and n / M bits is performed M times, and the multiplication result is obtained. A multiplier selecting means for sequentially selecting the multiplier M times from the lower order by a number of bits equal to the integer part of the quotient n / M when the quotient n / M has a remainder 1, and a state of the most significant bit of the multiplier When the state of the most significant bit of the multiplier is 0, the multiplicand is not selected, and when the state of the most significant bit of the multiplier is 1, the multiplicand is divided by the first of the M times of multiplication. One time is the number of bits obtained by adding 1 to the integer part of n / M, and the second to M times are the numbers of bits equal to the integer part of n / M. Means for selecting the multiplicand in the upper part of the product of n bits of the multiplicand and the output of the multiplier selecting means. Multiplier, characterized in that it comprises a multiplier means for adding the output of the stage to obtain a partial multiplication result in each time.
数との乗算に際して乗数nビットをM個に分割し、nビ
ットとn/Mビットの乗算をM回実行して乗算結果を求め
る乗算装置において、商n/Mが剰余1を持つときに、 乗数をその下位から商n/Mの整数部に等しいビット数ず
つ順次M回選択する乗数選択手段と、 乗数の最上位ビットの状態に応じて、乗数の最上位ビッ
トの状態が0の場合被乗数を選択せず、かつ、乗数の最
上位ビットの状態が1の場合に被乗数を前記M回の乗算
のうちの第1回はn/Mの整数部に1を加えたビット数だ
け、第2回から第M回はn/Mの整数部に等しいビット数
だけいずれも被乗数の下位ビット側から順次選択する被
乗数選択手段と、 被乗数のnビットと該乗数選択手段の出力との積の上位
部分に該被乗数選択手段の出力を加算して各回における
部分的な乗算結果を得る乗算手段と、 該乗算手段の内部に備えられ、該被乗数のnビットと該
乗数選択手段の出力との部分積の和出力と桁上げ出力か
ら該部分積の符号を検出する符号検出手段とを有し、 該和出力と桁上げ出力の帰還時に該和出力と桁上げ出力
とのいずれか片方にのみ該符号検出手段の検出結果を前
記部分積の符号データとして挿入し、該挿入結果のみを
符号データとして帰還することを特徴とする乗算装置。2. The multiplication of an n-bit binary multiplicand and an n-bit binary multiplier divides the n-bit multiplier into M pieces, executes n-bit and n / M-bit multiplications M times, and calculates the multiplication result. In the multiplying device to be obtained, when the quotient n / M has a remainder 1, a multiplier selecting means for sequentially selecting the multiplier M times from the lower order by the number of bits equal to the integer part of the quotient n / M, and the most significant bit of the multiplier Depending on the state, if the state of the most significant bit of the multiplier is 0, the multiplicand is not selected, and if the state of the most significant bit of the multiplier is 1, the multiplicand is multiplied by 1 in the M times. multiplicand selecting means for sequentially selecting from the lower bit side of the multiplicand any number of bits obtained by adding 1 to the integer part of n / M, and the second to M-th times the number of bits equal to the integer part of n / M, The output of the multiplicand selecting means is provided in the upper part of the product of n bits of the multiplicand and the output of the multiplier selecting means. And a multiplication means for obtaining partial multiplication results at each time by adding the sum output and the carry output of a partial product of n bits of the multiplicand and the output of the multiplier selection means. Code detection means for detecting the sign of the partial product, and when the sum output and the carry output are fed back, the detection result of the code detection means is applied to only one of the sum output and the carry output. A multiplication device that inserts as code data of a product and feeds back only the insertion result as code data.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP21039390A JP3264280B2 (en) | 1990-08-10 | 1990-08-10 | Multiplier |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP21039390A JP3264280B2 (en) | 1990-08-10 | 1990-08-10 | Multiplier |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP24407299A Division JP3231298B2 (en) | 1999-08-30 | 1999-08-30 | Multiplication device |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0498320A JPH0498320A (en) | 1992-03-31 |
| JP3264280B2 true JP3264280B2 (en) | 2002-03-11 |
Family
ID=16588590
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP21039390A Expired - Fee Related JP3264280B2 (en) | 1990-08-10 | 1990-08-10 | Multiplier |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3264280B2 (en) |
-
1990
- 1990-08-10 JP JP21039390A patent/JP3264280B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0498320A (en) | 1992-03-31 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5790446A (en) | Floating point multiplier with reduced critical paths using delay matching techniques | |
| EP0448367A2 (en) | High speed digital parallel multiplier | |
| US4831577A (en) | Digital multiplier architecture with triple array summation of partial products | |
| JPS61502288A (en) | X×Y bit array multiplier/accumulator circuit | |
| JPH0456339B2 (en) | ||
| US5253195A (en) | High speed multiplier | |
| US5161119A (en) | Weighted-delay column adder and method of organizing same | |
| JPS62280930A (en) | Digital multiplier | |
| US6065033A (en) | Wallace-tree multipliers using half and full adders | |
| JPH10307706A5 (en) | ||
| JP3264280B2 (en) | Multiplier | |
| US6449629B1 (en) | Three input split-adder | |
| US20060064455A1 (en) | Processing unit having multioperand decimal addition | |
| EP0344226B1 (en) | High-speed digital adding system | |
| US4190894A (en) | High speed parallel multiplication apparatus with single-step summand reduction | |
| EP0529755B1 (en) | Method and apparatus for negating an operand of a multiplication operation | |
| JP3231298B2 (en) | Multiplication device | |
| JP3227538B2 (en) | Binary integer multiplier | |
| WO1991000568A1 (en) | Conditional-sum carry structure compiler | |
| US5883825A (en) | Reduction of partial product arrays using pre-propagate set-up | |
| JPS6226723B2 (en) | ||
| JPH01302426A (en) | Fast parallel multiplication circuit | |
| JP3417172B2 (en) | Arithmetic circuit | |
| JP3433487B2 (en) | Binary to decimal converter | |
| Agrawal et al. | Log-sum multiplier |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |