JPH0439726A - Multiplier circuit - Google Patents

Multiplier circuit

Info

Publication number
JPH0439726A
JPH0439726A JP2147058A JP14705890A JPH0439726A JP H0439726 A JPH0439726 A JP H0439726A JP 2147058 A JP2147058 A JP 2147058A JP 14705890 A JP14705890 A JP 14705890A JP H0439726 A JPH0439726 A JP H0439726A
Authority
JP
Japan
Prior art keywords
multiplier
bits
partial product
multiplicand
shift register
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2147058A
Other languages
Japanese (ja)
Inventor
Takashi Maki
巻 隆志
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2147058A priority Critical patent/JPH0439726A/en
Publication of JPH0439726A publication Critical patent/JPH0439726A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To reduce the number of adders by providing a partial product generating part for generating a partial product of a multiplier bit and a multiplicand, a carry holding part for holding a carry generated by addition and a holding part of a result of addition. CONSTITUTION:In the case of a simple multiplier, the product of a first bit from the lower side of a shift register 12 and the contents of a shift register 11 is derived by a partial product generating part 14, and it is stored in a flip- flop 17. Subsequently, the shift registers 11, 12 are bit-shifted, the product of all bits of a multiplier and a multiplicant is derived, addition of a result of addition until the previous time and a carry is executed, and its result is fetched through a register 19 from the flip-flop 17. In such a way, multiplication is executed by using repeatedly a hardware, therefore, however the multiplication bits increase, the hardware scale is not increased.

Description

【発明の詳細な説明】 〔発明の概要〕 乗算回路特にマイクロプロセッサ及びDSPなどの演算
処理部において、乗数及び被乗数の語長が8〜32バイ
トと長い乗算命令の実行に効果的な乗算回路に関し、 加算器数を削減し得てハードウェア量が少ない乗算器を
提供することを目的とし、 被乗数をセットされる第1のシフトレジスタと、乗数を
セットされる第2のシフトレジスタと、乗数ビットと被
乗数との部分積を生成する部分積生成部と、これら第1
.第2のシフトレジスタをシフトしながら部分積を生成
して得られる、乗数の第1.第2,……ビットと被乗数
との第1.第2゜・・・・・・部分積と、前回までの部
分積の和の保持部及びキャリー保持部の各出力とを加算
する加算器と、上記加算で生じるキャリーを保持する前
記キャリー保持部および加算結果の保持部とを備えるよ
う構成し、また被乗数をセットされ、2ビットずつのシ
フトを行なう第1のシフトレジスタと、乗数をセットさ
れ、2ビットずつのシフトを行なう第2のシフトレジス
タと、第2のシフトレジスタから各3ビットを取込み、
2次のブースのアルゴリズムに従う演算指示出力を生じ
るデコーダと、被乗数に対し該デコーダの出力に従う演
算を行なう部分積生成部と、第1.第2のシフトレジス
タを2ビットシフトしながら部分積を生成して得られる
、乗数の各2ビットと被乗数との第1.第2゜・・・・
・・部分積と、前回までの部分積の和の保持部及びキャ
リー保持部の各出力とを加算する加算器と、上記加算で
生じるキャリーを保持する前記キャリー保持部及び加算
結果の保持部とを備えるよう構成する。
[Detailed Description of the Invention] [Summary of the Invention] This invention relates to a multiplication circuit, particularly in arithmetic processing units such as microprocessors and DSPs, which is effective in executing multiplication instructions in which the word length of the multiplier and multiplicand is 8 to 32 bytes. , aims to provide a multiplier that can reduce the number of adders and has a small amount of hardware, and includes a first shift register to which a multiplicand is set, a second shift register to which a multiplier is set, and a multiplier bit. and a partial product generator that generates a partial product between and the multiplicand, and
.. The first . of the multiplier is obtained by generating partial products while shifting the second shift register. 2nd, . . . the first . . . of the bit and the multiplicand. 2nd degree: an adder that adds the partial product and each output of the holding unit for the sum of partial products up to the previous time and the carry holding unit; and the carry holding unit that holds the carry generated by the above addition. and a holding unit for addition results, and a first shift register in which a multiplicand is set and shifts 2 bits at a time, and a second shift register in which a multiplier is set and shifts 2 bits at a time. and take in each 3 bits from the second shift register,
a decoder that generates an operation instruction output according to the second-order Booth's algorithm; a partial product generator that performs an operation on the multiplicand according to the output of the decoder; A partial product is generated by shifting the second shift register by 2 bits, and the first . 2nd °...
... an adder that adds the partial product and each output of the holding unit for the sum of partial products up to the previous time and the carry holding unit; the carry holding unit that holds the carry generated by the addition and the holding unit for the addition result; be configured to have the following.

〔産業上の利用分野] 本発明は、乗算回路特にマイクロプロセッサ及びDSP
などの演算処理部において、乗数及び被乗数の語長が8
〜32バイトと長い乗算命令の実行に効果的な乗算回路
に関する。
[Industrial Application Field] The present invention is applicable to multiplication circuits, especially microprocessors and DSPs.
In an arithmetic processing unit such as, the word length of the multiplier and multiplicand is 8
This invention relates to a multiplication circuit that is effective in executing multiplication instructions as long as ~32 bytes.

近年のLSI技術の進歩及びコンピュータシステムの高
速化の要求に伴い、長い語長の並列演算の乗算が必要に
なり、しかしこれには膨大なハードウェア量を食うため
、加算器を削減する必要がある。
With the recent advances in LSI technology and the demand for faster computer systems, it has become necessary to perform multiplication in parallel operations with long word lengths, but this requires a huge amount of hardware, so it is necessary to reduce the number of adders. be.

〔従来の技術〕[Conventional technology]

第8図に従来の乗算器の基本構成回路を示す。 FIG. 8 shows the basic configuration circuit of a conventional multiplier.

これはmビットの被乗数Aとnビットの乗数Bから(m
+n)ビットの積りを求める乗算回路である。図中、l
は被乗数レジスタ、2は乗数レジスタ、3はデコーダ、
4は部分積生成回路、5は加算器である。
This is given by the m-bit multiplicand A and the n-bit multiplier B (m
+n) This is a multiplication circuit that calculates the product of bits. In the figure, l
is the multiplicand register, 2 is the multiplier register, 3 is the decoder,
4 is a partial product generation circuit, and 5 is an adder.

コンピュータにおける乗算も手計算と同様に被乗数と乗
数の各ビットの掛は算により部分積を算出し、これらを
加算して積とするが、扱う数は2進数であるから、部分
積は乗数のビットが1なら被乗数そのもの、乗数のビッ
トが0ならオール0である。これはアンド論理に他なら
ないから、部分積生成回路4は具体的にはアンドゲート
である。
Multiplication on a computer is similar to manual calculation, where each bit of the multiplicand and multiplier are multiplied to calculate partial products, and these are added to form a product. However, since the numbers handled are binary numbers, the partial products are If the bit is 1, it is the multiplicand itself, and if the bit of the multiplier is 0, it is all 0. Since this is nothing but AND logic, the partial product generating circuit 4 is specifically an AND gate.

単純な乗算なら、乗数がnビットのとき部分積はn個、
従って部分積生成回路4と加算器5の1行を1段として
これらをn段設けることになる。
In simple multiplication, when the multiplier is n bits, there are n partial products,
Therefore, n stages of partial product generating circuits 4 and adders 5 are provided, with each row of adders 5 serving as one stage.

これを改良するのが2次のブース(Booth)のアル
ゴリズムで、これを用いると、乗数の2ビットずつの部
分積を求めるので、n / 2段で済む、この処理をす
るのがデコーダ3である。即ち、乗数Bを B=B、l B、、・・・・・・Bt  B+とし、こ
れを2の補数形式で書くと B=−B、l・211−1+Σ B正・2m−1となる
が、乗数Bのビット数(n)は偶数とし、B。
An improvement on this is the second-order Booth algorithm, which calculates the partial product of each 2-bit multiplier, so only n / 2 stages are required. This process is performed by the decoder 3. be. That is, let the multiplier B be B=B, l B, . . . Bt B+, and write this in two's complement form as B=-B, l 211-1 + Σ B positive 2m-1. However, the number of bits (n) of multiplier B is an even number, and B.

=0とすると、上式は B = ’i: ”−”(B t= + B t=。+
  2Bzi、z)・2hになり、部分積Ppは Pr=(Bit十Bz+。128zt、i)・A・22
”になる。上式の括弧内は乗数Bの隣接3ピントである
から、部分積はこの値(1かO)に応じて次表の如くな
る。但しこの表では22”を除(。
= 0, the above formula is B = 'i: "-" (B t= + B t=.+
2Bzi, z)・2h, and the partial product Pp is Pr=(Bit ten Bz+.128zt, i)・A・22
Since the numbers in parentheses in the above equation are the three adjacent pintos of the multiplier B, the partial product will be as shown in the following table depending on this value (1 or O). However, in this table, 22" is divided (.

表1 これが2次のブースのアルゴリズムであり、デコーダ3
は乗数Bの隣接3ビットの値に従って部分積回路に0.
±A、±2Aを演算させる。詳しくは、0ならO1+A
ならそのま一1+2Aなら1ビット左シフト、−2Aな
ら1ビット左シフトと補数演算、−Aなら補数演算を指
示する。
Table 1 This is the second-order Booth algorithm, and the decoder 3
is applied to the partial product circuit according to the value of the adjacent 3 bits of multiplier B.
Calculate ±A and ±2A. For details, if 0, O1+A
Then, 1+2A indicates a 1-bit left shift, -2A indicates a 1-bit left shift and complement operation, and -A indicates a complement operation.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

このように乗算器では、乗数がnビットならn段または
n / 2段の部分積および加算回路を必要とし、これ
は被乗数と乗数のビット数が増えるにつれて2次元的に
増加する。この従来方式で1チツプ内に語長の長い乗算
器を構成しようとすると、RAM、ROMなどの他のマ
クロセルを同じチップ内に搭載するのにかなり制約が加
わる。
Thus, in a multiplier, if the multiplier is n bits, n stages or n/2 stages of partial product and adder circuits are required, and this increases two-dimensionally as the number of bits of the multiplicand and multiplier increases. If an attempt is made to configure a multiplier with a long word length on one chip using this conventional method, there will be considerable restrictions on mounting other macro cells such as RAM and ROM on the same chip.

本発明はか\る点を改善し、加算器数を削減し得てハー
ドウェア量が少ない乗算器を提供することを目的とする
ものである。
It is an object of the present invention to improve these points and provide a multiplier that can reduce the number of adders and has a small amount of hardware.

〔課題を解決するための手段〕[Means to solve the problem]

第1図は本発明の原理図である。11は被乗数Aを格納
するシフトレジスタ、2は乗数Bを格納するシフトレジ
スタ、13はブースデコーダである。また14は部分積
生成部、16はキャリーと一巡前の加算結果を加算する
加算器列である。また17は一巡前の加算結果を保持す
るフリップフロップ、8はキャリーを保持するフリップ
フロップ、19は積出力データを格納するシフトレジス
タであり、そして20はシフトレジスタ11.19およ
びフリップフロップ17.18を制御する回路である。
FIG. 1 is a diagram showing the principle of the present invention. 11 is a shift register that stores the multiplicand A, 2 is a shift register that stores the multiplier B, and 13 is a Booth decoder. Further, 14 is a partial product generating section, and 16 is an adder column that adds the carry and the result of the previous round of addition. Further, 17 is a flip-flop that holds the addition result from the previous round, 8 is a flip-flop that holds carry, 19 is a shift register that stores product output data, and 20 is a shift register 11.19 and a flip-flop 17.18. This is a circuit that controls the

ブースのアルゴリズムに従かわない単純乗算の場合は、
デコーダ13は必要でない、またシフトレジスタ19は
出力用であり、同じ内容がフリップフロップ17にある
から、これも必らず必要なものではない。
For simple multiplications that do not follow Booth's algorithm,
The decoder 13 is not necessary, and since the shift register 19 is for output and the same contents are in the flip-flop 17, this is also not necessarily necessary.

〔作用〕[Effect]

乗算は乗数の各1ビットまたは各2ビットと被乗数との
部分積を作り、得られた各部分積を加算して積を求める
が、本発明ではこれを、同じハードウェアを繰り返し使
用することで実行する。
In multiplication, partial products are created between each 1 bit or 2 bits of the multiplier and the multiplicand, and the resulting partial products are added to obtain the product. In the present invention, this can be done by repeatedly using the same hardware. Execute.

即ち単純乗算なら、シフトレジスタ12の下位側から第
1のビットとシフトレジスタ11の内容との積を部分積
生成部14で求め、これをフリップフロップ17へ格納
しておく。次はシフトレジスタ11.12を1ビットシ
フトし、乗数の下位側から第2のビットとシフトレジス
タ11の内容との積を求め、これとフリップフロップ1
7の内容との和を加算器16で求める。このとき生じる
キャリーはフリップフロップ18へ格納し、加算結果は
フリップフロップ17へ格納する。
That is, in the case of simple multiplication, the product of the first bit of the shift register 12 from the lower side and the contents of the shift register 11 is obtained by the partial product generating section 14, and this product is stored in the flip-flop 17. Next, shift registers 11 and 12 by one bit, calculate the product of the second bit from the lower side of the multiplier and the contents of shift register 11, and multiply this by the contents of flip-flop 1.
The adder 16 calculates the sum with the contents of 7. The carry generated at this time is stored in the flip-flop 18, and the addition result is stored in the flip-flop 17.

次はシフトレジスタ11.12を再び1ビットシフトし
、乗数の下位側から第3のビットとシフトレジスタ11
の内容との積を求め、これとフリップフロップ17.1
8の内容との和を加算器16で求める。このとき生じる
キャリーはフリップフロップ18へ、加算結果はフリッ
プフロップ17へ格納する。
Next, shift registers 11 and 12 by one bit again, and shift the third bit from the lower side of the multiplier and shift register 11.
Find the product of this and the contents of the flip-flop 17.1
The adder 16 calculates the sum with the contents of 8. The carry generated at this time is stored in the flip-flop 18, and the addition result is stored in the flip-flop 17.

以下同様である。乗数の全ビットと被乗数との積を求め
、前回までの加算結果及びキャリーの足し込みも終了し
たら、これで乗算終了である。結果はフリップフロップ
17にあり、これをレジスタ19を介して取出す。
The same applies below. Once all the bits of the multiplier and the multiplicand have been multiplied, and the previous addition results and carries have been added, the multiplication is complete. The result is in flip-flop 17 and is retrieved via register 19.

ブースアルゴリズムに従う場合は、シフトレジスタ11
.12のシフトは2ビットずつになる。
When following the Booth algorithm, shift register 11
.. 12 shifts are 2 bits at a time.

デコーダ13はシフトレジスタ12から各3ビットを取
出し、これらのビットにより定まる演算指示を部分積生
成分14へ与える。各部分積と前回までのそれ、キャリ
ー、との加算要領は上記と同じで、乗算結果はレジスタ
19より取出す。
The decoder 13 takes out each three bits from the shift register 12 and gives an operation instruction determined by these bits to the partial product component 14. The procedure for adding each partial product to the previous one and the carry is the same as above, and the multiplication result is taken out from the register 19.

このように本発明では同じハードウェアを繰り返し使用
して乗算を実行するので、乗数ビットが如何程多(なっ
ても、繰り返し数が増加するだけで、ハードウェア規模
を増大することはない。
In this way, in the present invention, the same hardware is used repeatedly to execute multiplication, so no matter how many multiplier bits there are, the number of repetitions increases and the hardware scale does not increase.

〔実施例〕〔Example〕

第2図は本発明2の実施例を示す。被乗数Aはmビット
、乗数Bはnビットであるので、シフトレジスタ11は
m+nビットとする。またシフトレジスタ12はn+1
ビットとし、B−tビットは0、そして2ビットずつの
シフトを行なう。また、部分積生成回路14の各々は被
乗数の当該ビットA i (i*11+ 1+ !+ 
”’ 1llill−1)と、その1桁下位のビットA
、−7と(これは左シフトで使用)、デコーダ13から
の乗算Bの3ビット(B z=*t+ B !i+l+
Bzt)による表1に従う指示を用いて、2次のブース
のアルゴリズムに従う部分積を生成する。また、加算器
群16は図示のようにハーフアダーHAとフルアダーF
Aで構成され、当該部分積ビットと、前回までのそれ(
−巡の加算結果)と、キャリーの加算を行なう。−巡前
の加算結果はフリップフロップ17にあり、キャリーは
フリップフロップ18にある。乗算結果はシフトレジス
タ19に格納される。
FIG. 2 shows an embodiment of the second invention. Since the multiplicand A is m bits and the multiplier B is n bits, the shift register 11 is assumed to be m+n bits. Also, the shift register 12 is n+1
The B-t bits are set to 0, and the bits are shifted 2 bits at a time. Further, each of the partial product generation circuits 14 generates the corresponding bit A i (i*11+ 1+ !+
”' 1llill-1) and its one digit lower bit A
, -7 (this is used for left shift), and the 3 bits of multiplication B from decoder 13 (B z=*t+ B !i+l+
Using instructions according to Table 1 by Bzt), generate partial products according to the second-order Booth algorithm. Further, the adder group 16 includes a half adder HA and a full adder F as shown in the figure.
A, the relevant partial product bit and that of the previous time (
− cycle addition result) and carry are added. - The result of the previous addition is in flip-flop 17 and the carry is in flip-flop 18. The multiplication result is stored in the shift register 19.

次にA=B=5.2進で0101の乗算D−AXB=2
5.2進で00011001を例に、第2図〜第7図を
参照しながら、本回路の動作を詳細に説明する。
Next, A=B=5.Multiply 0101 in binary D-AXB=2
5. Using 00011001 in binary as an example, the operation of this circuit will be explained in detail with reference to FIGS. 2 to 7.

被乗数A1乗数Bが上記の如くであると、シフトレジス
タ11.12には第3図のように0,1が入る。
When the multiplicand A1 and the multiplier B are as described above, 0 and 1 are stored in the shift registers 11 and 12 as shown in FIG.

デコーダ13は乗数BのB、B、B−、を取込み、部分
積回路14へ前記表1に従うシフト、補数演算などを指
示する。部分積回路は、本例ではB□、2Bat−+ 
Btt=010であるから、+A従って0000010
1を生じる。これを第4図に示す。加算器16は、今は
キャリーも一巡前の加算結果もないから、部分積と同じ
加算結果を生じる。
The decoder 13 takes in B, B, B- of the multiplier B, and instructs the partial product circuit 14 to perform shift and complement operations according to Table 1 above. In this example, the partial product circuit is B□, 2Bat-+
Since Btt=010, +A therefore 0000010
yields 1. This is shown in FIG. Since the adder 16 currently has no carry or the addition result from the previous round, it produces the same addition result as the partial product.

この加算結果はフリップフロップ17に入る。The result of this addition is input to the flip-flop 17.

この状態を第5図に示す。シフトレジスタ11゜12は
2ビットシフトし、従って内容はこの第5図に示す如く
なる。このシフトで空いたビット位置にはOが詰まる。
This state is shown in FIG. Shift registers 11 and 12 shift by 2 bits, so the contents become as shown in FIG. The bit positions vacated by this shift are filled with O's.

デコーダ13はB、、*、B*i*+E3ziとしてB
s Bt B+−010を取込み、前記表1に従う指示
を出し、部分積回路14はこれに従って本例では+A 
=OOO10100を生じる。今度は1巡前の加算結果
があるので加算器16はこれと部分積との加算を行ない
、図示の結果(16は00010001、キャリーは右
から3番目のビットで出る)を生じる。
The decoder 13 outputs B as B, , *, B*i*+E3zi.
s Bt B+-010 and issues an instruction according to Table 1, and the partial product circuit 14 follows this to +A in this example.
=OOO10100. This time, since there is the addition result from the previous round, the adder 16 adds this to the partial product to produce the result shown (16 is 00010001, carry is output at the third bit from the right).

この部分積00010001とキャリーlは第6図に示
すようにフリップフロップ17と18にセットされる。
This partial product 00010001 and carry l are set in flip-flops 17 and 18 as shown in FIG.

またシフトレジスタ11.12の2ビットシフトが行な
われ、これらの内容は図示の如くなる。乗数が全ビット
0なので、部分積はオールOである。この部分積とフリ
ップフロップ17,18の内容との加算が行なわれ、加
算器16の内容は図示の如< 00011001になる
。キャリーは出ない。
Further, 2-bit shifts of shift registers 11 and 12 are performed, and their contents become as shown in the figure. Since all bits of the multiplier are 0, the partial products are all O's. This partial product is added to the contents of flip-flops 17 and 18, and the contents of adder 16 become <00011001 as shown. Carrie doesn't appear.

この加算結果がフリップフロップ17にセットされ、シ
フトレジスタ19にロードされて、これがD=AXBの
積出力になる。シフトレジスタ11.12は再び2ビッ
トシフトされる。この状態を第7図に示す。乗数は全ビ
ットOであるから部分積はオール0であり、これとフリ
ップフロップ17.18の内容が加算され、加算結果は
図示のように00011001になる(変らない)。
This addition result is set in the flip-flop 17, loaded into the shift register 19, and becomes the product output of D=AXB. Shift registers 11,12 are again shifted 2 bits. This state is shown in FIG. Since all bits of the multiplier are O, the partial product is all 0, and this is added to the contents of the flip-flops 17 and 18, and the addition result becomes 00011001 as shown (no change).

乗数Bは4ビットであるからシフトレジスタ11.12
の2ビットシフトは2回(Bがnビットならn / 2
回)行なえばよく、従って第6図、第7図でのシフトレ
ジスタ11.12の2ビットシフトはしなくてもよい、
唯、第6図の、第5図で生じたキャリーの加算処理、お
よび第7図の加算結果をフリップフロップ17を通して
レジスタ19への転送処理は必要である。
Since multiplier B is 4 bits, shift register 11.12
2-bit shift twice (if B is n bits, then n/2
Therefore, it is not necessary to shift the shift registers 11 and 12 by 2 bits in FIGS. 6 and 7.
However, the process of adding the carry generated in FIG. 5 in FIG. 6 and the process of transferring the addition result to the register 19 through the flip-flop 17 in FIG. 7 are necessary.

演算終了による動作停止は、クロック停止で行なう0乗
数のビット数により演算ステップ数は分るから、そのス
テップ数になったときクロック供給を停止する。従って
シフトレジスタ11.12のシフトは図示実施例のよう
に所要ステップ数の回数だけ行なった方が制御が簡単で
ある。
When the operation is stopped due to the completion of the calculation, the number of calculation steps can be determined by the number of bits of the 0 multiplier when the clock is stopped, so when the number of steps is reached, the clock supply is stopped. Therefore, control is easier if the shift registers 11 and 12 are shifted as many times as the required number of steps as in the illustrated embodiment.

〔発明の効果〕〔Effect of the invention〕

以上説明したように本発明によれば、少ないハードウェ
ア量特に部分積回路および加算器数で多ビット乗数の乗
算を行なうことができ、lチップ型のプロセッサなどの
スペースが限られるものに搭載して甚だ有効である。
As explained above, according to the present invention, multi-bit multiplier multiplication can be performed with a small amount of hardware, especially partial product circuits and the number of adders, and it can be installed in a device with limited space such as an L-chip processor. It is extremely effective.

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

第1図は本発明の原理図、 第2図は本発明の実施例を示すブロック図、第3図〜第
7図は第2図の動作を説明する図、第8図は従来例を示
すブロック図である。 第1図でAは被乗数、Bは乗数、11.12はシフトレ
ジスタ、14は部分積生成部、16は加算器列、17.
18はフリップフロップである。
Fig. 1 is a principle diagram of the present invention, Fig. 2 is a block diagram showing an embodiment of the invention, Figs. 3 to 7 are diagrams explaining the operation of Fig. 2, and Fig. 8 shows a conventional example. It is a block diagram. In FIG. 1, A is a multiplicand, B is a multiplier, 11.12 is a shift register, 14 is a partial product generator, 16 is an adder column, 17.
18 is a flip-flop.

Claims (1)

【特許請求の範囲】 1、被乗数(A)がセットされる第1のシフトレジスタ
(11)と、 乗数(B)がセットされる第2のシフトレジスタ(12
)と、 乗数ビットと被乗数との部分積を生成する部分積生成部
(14)と、 これら第1、第2のシフトレジスタをシフトしながら部
分積を生成して得られる、乗数の第1,第2,……ビッ
トと被乗数との第1,第2,……部分積と、前回までの
部分積の和の保持部(17)及びキャリー保持部(18
)の各出力とを加算する加算器(16)と、 上記加算で生じるキャリーを保持する前記キャリー保持
部(18)および加算結果の保持部(17)とを備える
ことを特徴とする乗算回路。 2、被乗数(A)がセットされ、2ビットずつのシフト
を行なう第1のシフトレジスタ(11)と、乗数(B)
がセットされ、2ビットずつのシフトを行なう第2のシ
フトレジスタ(12)と、第2のシフトレジスタから各
3ビットを取込み、2次のブースのアルゴリズムに従う
演算指示出力を生じるデコーダ(13)と、 被乗数に対し該デコーダの出力に従う演算を行なう部分
積生成部と、 第1、第2のシフトレジスタを2ビットシフトしながら
部分積を生成して得られる、乗数の各2ビットと被乗数
との第1,第2,……部分積と、前回までの部分積の和
の保持部(17)及びキャリー保持部(18)の各出力
とを加算する加算器と、上記加算で生じるキャリーを保
持する前記キャリー保持部(18)及び加算結果の保持
部(17)とを備えることを特徴とする乗算回路。
[Claims] 1. A first shift register (11) in which the multiplicand (A) is set, and a second shift register (12) in which the multiplier (B) is set.
), a partial product generation unit (14) that generates a partial product of the multiplier bits and the multiplicand, and a first, Holding unit (17) for the first, second, ... partial products of the second, ... bit and the multiplicand, and the sum of partial products up to the previous time, and a carry holding unit (18)
); an adder (16) for adding the respective outputs of the above-described additions; a carry holding section (18) for holding a carry generated in the addition; and an addition result holding section (17). 2. A first shift register (11) in which the multiplicand (A) is set and shifts 2 bits at a time, and a multiplier (B)
is set, and a second shift register (12) performs a two-bit shift, and a decoder (13) takes in each three bits from the second shift register and generates an operation instruction output according to the second-order Booth algorithm. , a partial product generation unit that performs an operation on the multiplicand according to the output of the decoder, and a partial product generation unit that generates a partial product while shifting the first and second shift registers by 2 bits, and generates a partial product between each 2 bits of the multiplier and the multiplicand. Adders that add the first, second, ... partial products and the respective outputs of the holding section (17) for the sum of partial products up to the previous time and the carry holding section (18), and holding the carry generated by the above addition. A multiplication circuit comprising: the carry holding section (18) for holding the addition result; and the addition result holding section (17).
JP2147058A 1990-06-05 1990-06-05 Multiplier circuit Pending JPH0439726A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2147058A JPH0439726A (en) 1990-06-05 1990-06-05 Multiplier circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2147058A JPH0439726A (en) 1990-06-05 1990-06-05 Multiplier circuit

Publications (1)

Publication Number Publication Date
JPH0439726A true JPH0439726A (en) 1992-02-10

Family

ID=15421543

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2147058A Pending JPH0439726A (en) 1990-06-05 1990-06-05 Multiplier circuit

Country Status (1)

Country Link
JP (1) JPH0439726A (en)

Similar Documents

Publication Publication Date Title
JP3244506B2 (en) Small multiplier
JP2014219994A (en) Arithmetic processor
US20080243976A1 (en) Multiply and multiply and accumulate unit
JPH0375901B2 (en)
JPH0831025B2 (en) Multiplication circuit
CN103279323B (en) A kind of adder
US5528529A (en) Electronic multiplying and adding apparatus and method
US5987638A (en) Apparatus and method for computing the result of a viterbi equation in a single cycle
US5870322A (en) Multiplier to selectively perform unsigned magnitude multiplication or signed magnitude multiplication
US20020161810A1 (en) Method and apparatus for multiplication and/or modular reduction processing
Rooban et al. Implementation of 128-bit radix-4 booth multiplier
JPH0439726A (en) Multiplier circuit
JPH05197525A (en) Method and circuit for negating operand
JPH10111791A (en) Division device
Saleh et al. Novel serial–parallel multipliers
JP2734438B2 (en) Multiplier
JP2004226516A (en) Power remainder computing method and program for the same
JPS6259828B2 (en)
JPH0793132A (en) Unit and method for arithmetic
JPS62209621A (en) Multiplying device
JPH10149277A (en) Multiplication device
KR0141870B1 (en) High speed pipeline multiplication circuit
JPS63254525A (en) Dividing device
Dandu Parallel processing and VLSI design: A high speed efficient multiplier
JPH03256117A (en) Multiplier