JPH04216126A - Serial-parallel multiplier - Google Patents

Serial-parallel multiplier

Info

Publication number
JPH04216126A
JPH04216126A JP2402364A JP40236490A JPH04216126A JP H04216126 A JPH04216126 A JP H04216126A JP 2402364 A JP2402364 A JP 2402364A JP 40236490 A JP40236490 A JP 40236490A JP H04216126 A JPH04216126 A JP H04216126A
Authority
JP
Japan
Prior art keywords
register
multiplier
adder
terminal
sum
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.)
Withdrawn
Application number
JP2402364A
Other languages
Japanese (ja)
Inventor
Jun Goto
純 後藤
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 JP2402364A priority Critical patent/JPH04216126A/en
Publication of JPH04216126A publication Critical patent/JPH04216126A/en
Withdrawn legal-status Critical Current

Links

Abstract

PURPOSE:To make the hardware constitution of a serial-parallel multiplier simply expandable even when the bit numbers of a multiplier and multiplicand increase. CONSTITUTION:By providing (m+1)-stage arithmetic units UO-Um of the same constitution and a control circuit C and only setting the gate Gi of the arithmetic unit Ui of the i-th stage to an open state, the product of A and B respectively expressed by A=A0+A1X2<n>+...+AmX2<mn> and B=B0+B1X2<n>+...BmX2<mn> is obtained in such a way that partial products of the A0, A1,..., Am and Bi are computed by means of the multipliers Mo-Mm and, after holding the partial products in intermediate registers RMO-RMm and the sum of the partial products in output registers RCO-RCm, the arithmetic operation and holding are successively executed on each i=0-m.

Description

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

【0001】0001

【産業上の利用分野】本発明は、直並列型乗算器に関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a series-parallel multiplier.

【0002】0002

【従来の技術】乗算器には、並列型、直列型及び直並列
型がある。
2. Description of the Related Art Multipliers include parallel types, series types, and series-parallel types.

【0003】並列型乗算器は1サイクルで乗算を高速実
行することができるが、回路が大規模になる。一方、直
列型乗算器は、回路規模が小さくなるが、乗数を1ビッ
トシフトさせ、部分積を累積加算し、これを乗数の全ビ
ットについて繰り返し行う必要があるため、乗算速度が
遅い。
Parallel multipliers can perform multiplication at high speed in one cycle, but the circuit size becomes large. On the other hand, although the serial multiplier has a smaller circuit scale, it requires shifting the multiplier by one bit, cumulatively adding the partial products, and repeating this process for all bits of the multiplier, so the multiplication speed is slow.

【0004】これに対し、直並列型乗算器は、回路規模
が並列型よりも小規模であり、乗算速度は直列型よりも
速いという利点がある。
On the other hand, a series-parallel type multiplier has the advantage that its circuit scale is smaller than that of a parallel type, and its multiplication speed is faster than that of a serial type.

【0005】[0005]

【発明が解決しようとする課題】しかし、従来の直列型
、並列型及び直並列型乗算器はいずれも、乗数及び被乗
数のビット数が増加すると、ハードウエア構成を単純に
拡張することができない。
However, the hardware configuration of conventional serial, parallel, and series-parallel multipliers cannot be simply expanded when the number of bits of the multiplier and multiplicand increases.

【0006】本発明の目的は、このような問題点に鑑み
、乗数及び被乗数のビット数が増加しても、ハードウエ
ア構成を単純に拡張することができる直並列型乗算器を
提供することにある。
SUMMARY OF THE INVENTION In view of these problems, an object of the present invention is to provide a series-parallel multiplier whose hardware configuration can be simply expanded even when the number of bits of the multiplier and multiplicand increases. be.

【0007】[0007]

【課題を解決するための手段及びその作用】第1図は直
並列型乗算器の原理構成を示す。この直並列型乗算器は
、A0、A1、・・・、Am及びB0、B1、・・・、
Bmがそれぞれnビットで表わされ、A=A0+A1×
2n +・・・+Am×2mn、B=B0+B1×2n
 +・・・+Bm×2mnと表わされるAとBとの積を
演算するものであって、同一構成のm+1段の演算ユニ
ットU0〜Umと、制御回路Cとを備えており、nビッ
トを1桁として演算する。
[Means for Solving the Problems and Their Effects] FIG. 1 shows the basic configuration of a series-parallel multiplier. This series-parallel multiplier has A0, A1, ..., Am and B0, B1, ...,
Bm is each represented by n bits, A=A0+A1×
2n +...+Am×2mn, B=B0+B1×2n
It calculates the product of A and B expressed as +...+Bm×2mn, and includes m+1 stages of arithmetic units U0 to Um of the same configuration and a control circuit C, and Operate as digits.

【0008】第i段の該演算ユニットUiは、Aiが格
納されるnビットの第1入力レジスタRAiと、Biが
格納されるnビットの第2入力レジスタ(RBi)と、
開閉制御信号に応答して開状態又は閉状態にするゲート
Giと、一方の入力端子に第1入力レジスタRAiの出
力端子がゲートGiを介して接続され、他方の入力端子
に第2入力レジスタRBiの出力端子が接続され、該両
入力端子に供給される値の積を演算する乗算器Miと、
該乗算器Miの出力端子に接続され、第1保持制御信号
に応答して該積を部分積として保持する2nビットの中
間レジスタRMiと、前段の該演算ユニットから桁送り
された値と中間レジスタRMiに保持された値とについ
て、同一桁の部分積の和を演算し、該桁と異なる桁の値
を次段の該演算ユニットに桁送りする桁加算回路ADi
と、第2保持制御信号に応答して該部分積の和を保持す
る出力レジスタRCiとを有する。
The i-th stage arithmetic unit Ui includes an n-bit first input register RAi in which Ai is stored, an n-bit second input register (RBi) in which Bi is stored,
A gate Gi is opened or closed in response to an opening/closing control signal, and one input terminal is connected to the output terminal of a first input register RAi via the gate Gi, and the other input terminal is connected to a second input register RBi. a multiplier Mi to which the output terminal of is connected and calculates the product of the values supplied to both input terminals;
A 2n-bit intermediate register RMi that is connected to the output terminal of the multiplier Mi and holds the product as a partial product in response to a first holding control signal, and a value shifted from the arithmetic unit in the previous stage and the intermediate register. A digit addition circuit ADi that calculates the sum of partial products of the same digit with respect to the value held in RMi, and shifts the value of a digit different from that digit to the next stage of the calculation unit.
and an output register RCi that holds the sum of the partial products in response to a second holding control signal.

【0009】また、各該演算ユニットの該乗算器の該一
方の入力端子が互いに接続され、該桁上げが行なわれる
ように該桁加算回路が該演算ユニット間で接続されてい
る。
Further, the one input terminals of the multipliers of each arithmetic unit are connected to each other, and the digit addition circuit is connected between the arithmetic units so that the carry is performed.

【0010】制御回路Cは、ゲートG0〜Gmに開閉信
号を供給して第i段の演算ユニットUiのゲートGiの
みを開状態にさせることにより、A0、A1、・・・、
AmとBiとの部分積を乗算器M0〜Mmに演算させ、
中間レジスタRM0〜RMmに第1保持制御信号を供給
して該部分積を中間レジスタRM0〜RMmに保持させ
、出力レジスタRC0〜RCmに第2保持制御信号を供
給して該部分積の該和を出力レジスタRC0〜RCmに
保持させ、該演算及び該保持をi=0〜mの各々につい
て順に実行させる。
The control circuit C supplies opening/closing signals to the gates G0 to Gm to open only the gate Gi of the i-th stage arithmetic unit Ui, thereby controlling A0, A1, . . .
Let the multipliers M0 to Mm calculate the partial products of Am and Bi,
A first holding control signal is supplied to intermediate registers RM0 to RMm to cause the intermediate registers RM0 to RMm to hold the partial products, and a second holding control signal is supplied to output registers RC0 to RCm to store the sum of the partial products. The output registers RC0 to RCm are held, and the calculation and the holding are performed sequentially for each of i=0 to m.

【0011】上記構成の直並列型乗算器によれば、乗数
及び被乗数のビット数の増加に対しては、単に同一構成
の演算ユニットの段数を増やせばよいので、ハードウエ
ア構成を単純に拡張することができる。また、直列型乗
算器のような1ビット単位のシフト演算を行わずに、n
ビット単位で演算ユニット間において桁送り(並列デー
タ転送)を行うので、高速演算が可能となる。
According to the serial-parallel multiplier having the above configuration, in order to increase the number of bits of the multiplier and the multiplicand, it is sufficient to simply increase the number of stages of arithmetic units having the same configuration, so the hardware configuration can be simply expanded. be able to. In addition, instead of performing a shift operation in 1-bit units like a serial multiplier, n
Since shift (parallel data transfer) is performed between arithmetic units on a bit-by-bit basis, high-speed arithmetic is possible.

【0012】上記構成の直並列型乗算器において、例え
ば、a側端子が前記ゲートの前記乗算器側の端子に接続
され、b側端子が前記桁送りを出力する端子に接続され
、共通端子が次段の前記演算ユニットの前記ゲートの前
記乗算器側の端子に接続され、切換制御信号SCに応じ
て該共通端子を該a側端子又は該b側端子の一方に接続
させる切換スイッチ手段を備え、前記制御回路Cは、該
切換スイッチ手段に該切換制御信号を供給して該切換ス
イッチ手段をa側にさせた状態で前記部分積を演算させ
、該切換スイッチ手段に該切換制御信号を供給して該切
換スイッチ手段をb側にさせた状態で前記部分積の和を
演算させかつ前記桁送りを行なわせるように構成する。
In the series-parallel multiplier having the above configuration, for example, the a side terminal is connected to the multiplier side terminal of the gate, the b side terminal is connected to the terminal for outputting the shift signal, and the common terminal is connected to the multiplier side terminal of the gate. A changeover switch means is connected to the multiplier side terminal of the gate of the next-stage arithmetic unit and connects the common terminal to either the a-side terminal or the b-side terminal in accordance with a switching control signal SC. , the control circuit C supplies the changeover control signal to the changeover switch means to calculate the partial product with the changeover switch means set to the a side, and supplies the changeover control signal to the changeover switch means. Then, with the changeover switch means set to the b side, the sum of the partial products is calculated and the shift is performed.

【0013】この構成の場合、演算ユニット間において
、各ゲートGiの乗算器Mi側の端子間の接続と桁加算
回路間の接続とを、1つに纏めることができるので、演
算ユニット間の接続が簡単になる。
In this configuration, the connection between the terminals of each gate Gi on the multiplier Mi side and the connection between the digit adder circuits can be combined into one connection between the arithmetic units, so that the connection between the arithmetic units becomes easier.

【0014】上記桁加算回路ADiは、例えば、前記中
間レジスタの上位nビットの値と1つ上位の桁の前記演
算ユニットからの桁下がりとの和を演算する第1加算器
と、該中間レジスタの下位nビットの値と前記出力レジ
スタの内容との和を演算する第2加算器とを有し、該第
1加算器の出力が前記出力レジスタに保持され、該第2
加算器の出力が桁下がりとして次段の該演算ユニットに
供給されるように構成されている。
The digit addition circuit ADi includes, for example, a first adder that calculates the sum of the value of the upper n bits of the intermediate register and the digit of the next higher digit from the arithmetic unit; and a second adder that calculates the sum of the value of the lower n bits of and the contents of the output register, the output of the first adder is held in the output register, and the second
The output of the adder is configured to be supplied as a carry to the next stage arithmetic unit.

【0015】この構成の場合、1桁がnビットで共にm
+1桁であるAとBとの積の上位m+1桁を、最も少な
いm+1段の演算ユニットを用いた直並列型乗算器によ
り、最も高速に演算することができる。この構成は、主
に、浮動小数点数の乗算に用いられる。
In this configuration, one digit is n bits and m
The upper m+1 digits of the product of A and B, which are +1 digits, can be computed at the highest speed by a series-parallel multiplier using the smallest number of m+1 stages of arithmetic units. This configuration is primarily used for floating point multiplication.

【0016】上記桁加算回路ADiは、例えば、前記中
間レジスタの下位nビットの値と1つ下位の桁の前記演
算ユニットからの桁上がりとの和を演算する第1加算器
と、該中間レジスタの上位nビットの値と前記出力レジ
スタの内容との和を演算する第2加算器とを有し、該第
1加算器の出力が前記出力レジスタに保持され、該第2
加算器の出力が桁上がりとして次段の該演算ユニットに
供給されるように構成されている。
The digit addition circuit ADi includes, for example, a first adder that calculates the sum of the value of the lower n bits of the intermediate register and the carry of the next lower digit from the arithmetic unit; and a second adder that calculates the sum of the value of the upper n bits of and the contents of the output register, the output of the first adder is held in the output register, and the second
The output of the adder is configured to be supplied as a carry to the arithmetic unit at the next stage.

【0017】この構成の場合、1桁がnビットで共にm
+1桁であるAとBとの積の下位m+1桁を、最も少な
いm+1段の演算ユニットを用いた直並列型乗算器によ
り、最も高速に演算することができる。この構成は主に
、AとBの数値が比較的小さい場合に利用される。
In this configuration, one digit is n bits and m
The lower m+1 digits of the product of A and B, which are +1 digits, can be computed at the highest speed by a series-parallel multiplier using the smallest number of m+1 stage arithmetic units. This configuration is mainly used when the values of A and B are relatively small.

【0018】[0018]

【実施例】以下、図面に基づいて本発明の実施例を説明
する。
Embodiments Hereinafter, embodiments of the present invention will be explained based on the drawings.

【0019】第2図は、各1バイトのレジスタ1、2及
び3に格納された合計3バイトの値と、同じく各1バイ
トのレジスタA、B及びCに格納された合計3バイトの
値との乗算方法説明図であって、バイト単位の積である
部分積と、バイト単位を1桁として部分積を加算した積
との関係を示す。図中、例えば3CHは、レジスタ3に
格納された値とレジスタCに格納された値との積の上位
8ビットを示し、3CLはこの積の下位8ビットを示す
。他の部分積についても同様である。
FIG. 2 shows a total of 3 bytes of values stored in registers 1, 2, and 3 of 1 byte each, and a total of 3 bytes of values stored in registers A, B, and C of 1 byte each. FIG. 3 is an explanatory diagram of a multiplication method, showing the relationship between a partial product that is a product in bytes and a product obtained by adding the partial products with each byte as one digit. In the figure, for example, 3CH indicates the upper 8 bits of the product of the value stored in register 3 and the value stored in register C, and 3CL indicates the lower 8 bits of this product. The same applies to other partial products.

【0020】以下の第1実施例では、積の上位3バイト
を求める直並列型乗算器を示し、第2実施例では、積の
下位3バイトを求める直並列型乗算器を示す。第1実施
例は主に浮動小数点数の乗算に用いられ、第2実施例は
1〜3バイト×1〜3バイトの積の下位3バイトを求め
るのに用いられる。
The first embodiment below shows a series-parallel multiplier that calculates the upper three bytes of a product, and the second embodiment shows a series-parallel multiplier that calculates the lower three bytes of a product. The first embodiment is mainly used for multiplication of floating point numbers, and the second embodiment is used to obtain the lower three bytes of the product of 1 to 3 bytes x 1 to 3 bytes.

【0021】(1)第1実施例 第3図乃至第9図は、直並列型乗算器の各クロックサイ
クルにおける状態を示す。第10図は、この直並列型乗
算器の動作を示すタイミングチャートである。
(1) First Embodiment FIGS. 3 to 9 show the state of the serial-parallel multiplier in each clock cycle. FIG. 10 is a timing chart showing the operation of this series-parallel multiplier.

【0022】この直並列型乗算器は、同一構成の3つの
演算ユニット10、20及び30が並置され、隣合う演
算ユニット間が1バイト分のデータバスで接続されてい
る。
In this serial-parallel multiplier, three arithmetic units 10, 20, and 30 having the same configuration are arranged side by side, and adjacent arithmetic units are connected by a 1-byte data bus.

【0023】演算ユニット10は、上記レジスタ1及び
Aと、構成要素11〜17とを備えている。レジスタ1
は、ゲート12を介して乗算器11の一方の入力端子に
接続され、レジスタAは、乗算器11の他方の入力端子
に接続されている。乗算器11の出力端子は、2バイト
のレジスタ13の入力端子に接続されている。レジスタ
13は、上位バイトレジスタ13Hと下位バイトレジス
タ13Lとからなる。上位バイトレジスタ13Hの出力
端子は、加算器14の一方の入力端子に接続され、加算
器14の他方の入力端子は、ゲート12の乗算器11側
の端子に接続されている。加算器14の出力端子は、レ
ジスタ15を介して加算器16の一方の入力端子に接続
され、加算器16の他方の入力端子には、下位バイトレ
ジスタ13Lの出力端子が接続されている。加算器16
の出力端子は、双方向セレクタ17のb側端子に接続さ
れている。双方向セレクタ17は、共通端子をa側又は
b側に切換え接続するものであり、そのa側端子は、ゲ
ート12の乗算器11側の端子に接続されている。
The arithmetic unit 10 includes the registers 1 and A described above, and components 11-17. register 1
is connected to one input terminal of the multiplier 11 via the gate 12, and the register A is connected to the other input terminal of the multiplier 11. The output terminal of the multiplier 11 is connected to the input terminal of a 2-byte register 13. The register 13 consists of an upper byte register 13H and a lower byte register 13L. The output terminal of the upper byte register 13H is connected to one input terminal of the adder 14, and the other input terminal of the adder 14 is connected to the terminal of the gate 12 on the multiplier 11 side. The output terminal of the adder 14 is connected to one input terminal of the adder 16 via the register 15, and the other input terminal of the adder 16 is connected to the output terminal of the lower byte register 13L. Adder 16
The output terminal of is connected to the b-side terminal of the bidirectional selector 17. The bidirectional selector 17 switches and connects the common terminal to the a side or the b side, and its a side terminal is connected to the terminal of the gate 12 on the multiplier 11 side.

【0024】加算器16のキャリー出力端子は、加算器
14のキャリー入力端子に接続されており、加算器16
からキャリーC11が加算器14に供給される。
The carry output terminal of the adder 16 is connected to the carry input terminal of the adder 14.
A carry C11 is supplied to the adder 14 from the adder 14.

【0025】また、ゲート12は開閉信号S1で開閉制
御され、双方向セレクタ17は切換信号SCで切換制御
される。レジスタ13は、クロックφ1の立上がりのタ
イミングで入力データを保持し、レジスタ15はクロッ
クφ0の立上がりのタイミングで入力データを保持する
Further, the gate 12 is controlled to open and close by an open/close signal S1, and the bidirectional selector 17 is controlled to switch by a switching signal SC. Register 13 holds input data at the rising timing of clock φ1, and register 15 holds input data at the rising timing of clock φ0.

【0026】演算ユニット20の構成要素2i(i=1
〜7、以下同様。)及び演算ユニット30の構成要素3
iは、演算ユニット10の構成要素1iに対応している
。また、演算ユニット20中の開閉信号S2及びキャリ
ーC21並びに演算ユニット30中の開閉信号S3及び
キャリーC31はそれぞれ、演算ユニット10中の開閉
信号S1及びキャリーC11に対応している。
Component 2i (i=1
~7, and so on. ) and component 3 of the arithmetic unit 30
i corresponds to the component 1i of the arithmetic unit 10. Furthermore, the open/close signal S2 and carry C21 in the arithmetic unit 20 and the open/close signal S3 and carry C31 in the arithmetic unit 30 correspond to the open/close signal S1 and carry C11 in the arithmetic unit 10, respectively.

【0027】演算ユニット10と演算ユニット20との
間は、双方向セレクタ17の共通端子が双方向セレクタ
27のa側端子に接続されている。また、加算器24の
キャリー出力端子が加算器14の一方の入力端子の第1
ビットに接続されて、加算器24からのキャリーC22
が加算器14に供給される。演算ユニット20と演算ユ
ニット30との間は、双方向セレクタ27の共通端子が
双方向セレクタ37のa側端子に接続されている。また
、演算ユニット30と演算ユニット10との間は、加算
器34のキャリー出力端子が加算器16のキャリー入力
端子に接続されており、加算器34からのキャリーC3
2が加算器16に供給される。
Between the arithmetic unit 10 and the arithmetic unit 20, a common terminal of a bidirectional selector 17 is connected to an a-side terminal of a bidirectional selector 27. Further, the carry output terminal of the adder 24 is connected to the first input terminal of the adder 14.
carry C22 from adder 24
is supplied to the adder 14. Between the arithmetic unit 20 and the arithmetic unit 30, a common terminal of a bidirectional selector 27 is connected to an a-side terminal of a bidirectional selector 37. Further, between the arithmetic unit 30 and the arithmetic unit 10, the carry output terminal of the adder 34 is connected to the carry input terminal of the adder 16, and the carry C3 from the adder 34 is connected to the carry output terminal of the adder 34.
2 is provided to adder 16.

【0028】次に、上記の如く構成された直並列型乗算
器の動作を説明する。
Next, the operation of the series-parallel multiplier constructed as described above will be explained.

【0029】第10図に示す如く、クロックφ0の立ち
上がりから次のクロックφ1の立ち上がりまでの時間を
クロックサイクル1a、2a、3a、4aとし、クロッ
クφ1の立ち上がりから次のクロックφ0の立ち上がり
までの時間をクロックサイクル1b、2b、3bとする
。第3乃至第9図はそれぞれ、クロックサイクル1a、
1b、2a、2b、3a、3b及び4aでの状態を示す
As shown in FIG. 10, the time from the rise of clock φ0 to the rise of the next clock φ1 is referred to as clock cycles 1a, 2a, 3a, and 4a, and the time from the rise of clock φ1 to the rise of the next clock φ0 Let these be clock cycles 1b, 2b, and 3b. FIGS. 3 to 9 show clock cycles 1a,
The conditions at 1b, 2a, 2b, 3a, 3b and 4a are shown.

【0030】■クロックサイクル1a(第3図)開閉信
号S1及びS2によりそれぞれゲート12及び22が閉
状態にされ、開閉信号S3によりゲート32が開状態に
され、切換信号SCにより双方向セレクタ17、27及
び37がa側に切換えられ、クリア信号(不図示)によ
りレジスタ15、25及び35がクリアされる。
■Clock cycle 1a (FIG. 3) The gates 12 and 22 are closed by the open/close signals S1 and S2, the gate 32 is opened by the open/close signal S3, and the bidirectional selector 17, 27 and 37 are switched to the a side, and registers 15, 25, and 35 are cleared by a clear signal (not shown).

【0031】これにより、レジスタ3の内容が、乗算器
31の一方の入力端子に供給されると共に、ゲート32
及び双方向セレクタ27を介して乗算器21の一方の入
力端子に供給され、さらに双方向セレクタ17を介して
乗算器11の一方の入力端子に供給される。そして、レ
ジスタ3の内容とレジスタCの内容との積が乗算器31
で演算され、レジスタ3の内容とレジスタBの内容との
積が乗算器21で演算され、レジスタ3の内容とレジス
タAの内容との積が乗算器11で演算される。
As a result, the contents of register 3 are supplied to one input terminal of multiplier 31, and the contents of register 3 are supplied to one input terminal of multiplier 31.
and is supplied to one input terminal of the multiplier 21 via the bidirectional selector 27, and further supplied to one input terminal of the multiplier 11 via the bidirectional selector 17. Then, the product of the contents of register 3 and the contents of register C is multiplier 31
The multiplier 21 calculates the product of the contents of register 3 and the contents of register B, and the multiplier 11 calculates the product of the contents of register 3 and the contents of register A.

【0032】■クロックサイクル1b(第4図)乗算器
11、21及び31の演算結果がクロックφ1の立ち上
がりのタイミングで、それぞれレジスタ13、23及び
33に保持され、開閉信号S3によりゲート32が閉状
態にされる。また、切換信号SCにより双方向セレクタ
17、27及び37がb側に切換えられる。
■Clock cycle 1b (Fig. 4) The calculation results of multipliers 11, 21, and 31 are held in registers 13, 23, and 33, respectively, at the rising timing of clock φ1, and gate 32 is closed by opening/closing signal S3. be put into a state. Further, the bidirectional selectors 17, 27, and 37 are switched to the b side by the switching signal SC.

【0033】これにより、上位バイトレジスタ13Hの
内容3AHとキャリーC11とキャリーC22との和が
加算器14で演算され、下位バイトレジスタ13Lの内
容3ALとレジスタ15の内容0とキャリーC32との
和が加算器16で演算され、この演算結果と上位バイト
レジスタ23Hの内容3BHとキャリーC21との和が
加算器24で演算される。また、下位バイトレジスタ2
3Lの内容3BLとレジスタ25の内容0との和が加算
器26で演算され、この演算結果と上位バイトレジスタ
33Hの内容3CHとキャリーC31との和が加算器3
4で演算され、下位バイトレジスタ33Lの内容3CL
とレジスタ35の内容0との和が加算器36で演算され
る。
As a result, the sum of the content 3AH of the upper byte register 13H, the carry C11, and the carry C22 is calculated by the adder 14, and the sum of the content 3AL of the lower byte register 13L, the content 0 of the register 15, and the carry C32 is calculated. The adder 16 calculates the result, and the adder 24 calculates the sum of this calculation result, the contents 3BH of the upper byte register 23H, and the carry C21. Also, lower byte register 2
The sum of the content 3BL of 3L and the content 0 of the register 25 is calculated by the adder 26, and the sum of this calculation result, the content 3CH of the upper byte register 33H, and the carry C31 is calculated by the adder 3.
4, the contents of the lower byte register 33L 3CL
The adder 36 calculates the sum of 0 and the content 0 of the register 35.

【0034】■クロックサイクル2a(第5図)加算器
14、24及び34の演算結果がクロックφ0の立ち上
がりのタイミングで、それぞれレジスタ15、25及び
35に保持される。また、開閉信号S2によりゲート2
2が開状態にされ、切換信号SCにより双方向セレクタ
17、27及び37がa側に切換えられる。
(2) Clock cycle 2a (FIG. 5) The calculation results of adders 14, 24 and 34 are held in registers 15, 25 and 35, respectively, at the rising edge of clock φ0. Also, the gate 2 is activated by the open/close signal S2.
2 is opened, and the bidirectional selectors 17, 27, and 37 are switched to the a side by the switching signal SC.

【0035】これにより、レジスタ2の内容が、ゲート
22を介して乗算器21の一方の入力端子に供給される
と共に、ゲート22及び双方向セレクタ17を介して乗
算器11の一方の入力端子に供給され、さらに、ゲート
22及び双方向セレクタ27を介して乗算器31の一方
の入力端子に供給される。そして、レジスタ2の内容と
レジスタAの内容との積が乗算器11で演算され、レジ
スタ2の内容とレジスタBの内容との積が乗算器21で
演算され、レジスタ2の内容とレジスタCの内容との積
が乗算器31で演算される。
As a result, the contents of register 2 are supplied to one input terminal of multiplier 21 via gate 22, and are also supplied to one input terminal of multiplier 11 via gate 22 and bidirectional selector 17. The signal is supplied to one input terminal of the multiplier 31 via the gate 22 and the bidirectional selector 27. Then, the multiplier 11 calculates the product of the contents of register 2 and the contents of register A, the product of the contents of register 2 and the contents of register B is calculated by the multiplier 21, and the product of the contents of register 2 and the contents of register C is calculated. A multiplier 31 calculates the product with the contents.

【0036】■クロックサイクル2b(第6図)乗算器
11、21及び31の演算結果がクロックφ1の立ち上
がりのタイミングで、それぞれレジスタ13、23及び
33に保持され、開閉信号S2によりゲート22が閉状
態にされる。また、切換信号SCにより双方向セレクタ
17、27及び37がb側に切換えられる。
■Clock cycle 2b (Fig. 6) The calculation results of multipliers 11, 21, and 31 are held in registers 13, 23, and 33, respectively, at the rising timing of clock φ1, and gate 22 is closed by opening/closing signal S2. be put into a state. Further, the bidirectional selectors 17, 27, and 37 are switched to the b side by the switching signal SC.

【0037】これにより、上位バイトレジスタ13Hの
内容2AHとキャリーC11とキャリーC22との和が
加算器14で演算され、下位バイトレジスタ13Lの内
容2ALとレジスタ15の内容3AHとキャリーC32
との和が加算器16で演算され、この演算結果と上位バ
イトレジスタ23Hの内容2BHとキャリーC21との
和が加算器24で演算される。また、下位バイトレジス
タ23Lの内容2BLとレジスタ25の内容3AL+3
BHとの和が加算器26で演算され、この演算結果と上
位バイトレジスタ33Hの内容2CHとキャリーC31
との和が加算器34で演算され、下位バイトレジスタ3
3Lの内容2CLとレジスタ35の内容3BL+3CH
との和が加算器36で演算される。
As a result, the sum of the content 2AH of the upper byte register 13H, the carry C11, and the carry C22 is calculated by the adder 14, and the sum of the content 2AL of the lower byte register 13L, the content 3AH of the register 15, and the carry C32 is calculated by the adder 14.
The adder 16 calculates the sum of this calculation result, the content 2BH of the upper byte register 23H, and the carry C21, and the adder 24 calculates the sum. In addition, the content 2BL of the lower byte register 23L and the content 3AL+3 of the register 25
The sum with BH is calculated by the adder 26, and this calculation result, the content 2CH of the upper byte register 33H, and the carry C31
The sum is calculated by the adder 34, and the lower byte register 3
Contents of 3L 2CL and contents of register 35 3BL + 3CH
The adder 36 calculates the sum.

【0038】■クロックサイクル3a(第7図)加算器
14、24及び34の演算結果がクロックφ0の立ち上
がりのタイミングで、それぞれレジスタ15、25及び
35に保持される。また、開閉信号S1によりゲート1
2が開状態にされ、切換信号SCにより双方向セレクタ
17、27及び37がa側に切換えられる。
(2) Clock cycle 3a (FIG. 7) The calculation results of adders 14, 24 and 34 are held in registers 15, 25 and 35, respectively, at the rising edge of clock φ0. Also, gate 1 is activated by opening/closing signal S1.
2 is opened, and the bidirectional selectors 17, 27, and 37 are switched to the a side by the switching signal SC.

【0039】これにより、レジスタ1の内容が、ゲート
12を介して乗算器11の一方の入力端子に供給される
と共に、ゲート12及び双方向セレクタ17を介して乗
算器21の一方の入力端子に供給され、さらに双方向セ
レクタ27を介して乗算器31の一方の入力端子に供給
される。そして、レジスタ1の内容とレジスタAの内容
との積が乗算器11で演算され、レジスタ1の内容とレ
ジスタBの内容との積が乗算器21で演算され、レジス
タ1の内容とレジスタCの内容との積が乗算器31で演
算される。
As a result, the contents of register 1 are supplied to one input terminal of multiplier 11 via gate 12, and are also supplied to one input terminal of multiplier 21 via gate 12 and bidirectional selector 17. It is further supplied to one input terminal of the multiplier 31 via the bidirectional selector 27. Then, the product of the contents of register 1 and the contents of register A is calculated in multiplier 11, the product of the contents of register 1 and the contents of register B is calculated in multiplier 21, and the product of the contents of register 1 and register C is calculated. A multiplier 31 calculates the product with the contents.

【0040】■クロックサイクル3b(第8図)乗算器
11、21及び31の演算結果がクロックφ1の立ち上
がりのタイミングで、それぞれレジスタ13、23及び
33に保持され、開閉信号S1によりゲート12が閉状
態にされる。また、切換信号SCにより双方向セレクタ
17、27及び37がb側に切換えられる。
■Clock cycle 3b (Fig. 8) The calculation results of multipliers 11, 21, and 31 are held in registers 13, 23, and 33, respectively, at the rising timing of clock φ1, and gate 12 is closed by opening/closing signal S1. be put into a state. Further, the bidirectional selectors 17, 27, and 37 are switched to the b side by the switching signal SC.

【0041】これにより、上位バイトレジスタ13Hの
内容1AHとキャリーC11とキャリーC22との和が
加算器14で演算され、下位バイトレジスタ13Lの内
容1ALとレジスタ15の内容2AHとキャリーC32
との和が加算器16で演算され、この演算結果と上位バ
イトレジスタ23Hの内容1BHとキャリーC21との
和が加算器24で演算される。また、下位バイトレジス
タ23Lの内容1BLとレジスタ25の内容3AH+2
AL+2BHとの和が加算器26で演算され、この演算
結果と上位バイトレジスタ33Hの内容1CHとキャリ
ーC31との和が加算器34で演算され、下位バイトレ
ジスタ33Lの内容1CLとレジスタ35の内容3AL
+3BH+2BL+2CHとの和が加算器36で演算さ
れる。
As a result, the sum of the content 1AH of the upper byte register 13H, the carry C11, and the carry C22 is calculated by the adder 14, and the sum of the content 1AL of the lower byte register 13L, the content 2AH of the register 15, and the carry C32 is calculated by the adder 14.
The adder 16 calculates the sum of this calculation result, the contents 1BH of the upper byte register 23H, and the carry C21, and the adder 24 calculates the sum. In addition, the content 1BL of the lower byte register 23L and the content 3AH+2 of the register 25
The sum of AL+2BH is calculated in the adder 26, and the sum of this calculation result, the content 1CH of the upper byte register 33H, and the carry C31 is calculated in the adder 34, and the sum of the content 1CH of the lower byte register 33L and the content 3AL of the register 35 is calculated.
The adder 36 calculates the sum of +3BH+2BL+2CH.

【0042】■クロックサイクル4a(第9図)加算器
14、24及び34の演算結果がクロックφ0の立ち上
がりのタイミングで、それぞれレジスタ15、25及び
35に保持される。
(2) Clock cycle 4a (FIG. 9) The calculation results of adders 14, 24 and 34 are held in registers 15, 25 and 35, respectively, at the rising edge of clock φ0.

【0043】このようにして、レジスタ1、2及び3に
格納された3バイトの値と、レジスタA、B及びCに格
納された3バイトの値との積の上位3バイト1AH、2
AH+1AL+1BH、3AH+2AL+2BH+1B
L+1CHが、それぞれレジスタ15、25及び35に
保持される。
In this way, the upper three bytes 1AH, 2 of the product of the three byte values stored in registers 1, 2, and 3 and the three byte values stored in registers A, B, and C are
AH+1AL+1BH, 3AH+2AL+2BH+1B
L+1CH are held in registers 15, 25 and 35, respectively.

【0044】(2)第2実施例 第11図乃至第17図は、直並列型乗算器の各クロック
サイクルにおける状態を示す。第18図は、この直並列
型乗算器の動作を示すタイミングチャートである。
(2) Second Embodiment FIGS. 11 to 17 show the state of the series-parallel multiplier in each clock cycle. FIG. 18 is a timing chart showing the operation of this series-parallel multiplier.

【0045】この直並列型乗算器は、上記第1実施例と
同様に、同一構成の3つの演算ユニット10A、20A
及び30Aが並置され、隣合う演算ユニット間が1バイ
ト分のデータバスで接続されている。
Similar to the first embodiment, this series-parallel multiplier includes three arithmetic units 10A and 20A having the same configuration.
and 30A are arranged side by side, and adjacent arithmetic units are connected by a 1-byte data bus.

【0046】演算ユニット10A、20A及び30A内
の構成要素はそれぞれ、第3図の演算ユニット10、2
0及び30内の構成要素と左右鏡像関係に配置されてい
る。すなわち、演算ユニット10Aは、下位バイトレジ
スタ13Lの出力端子が加算器14の一方の入力端子に
接続され、上位バイトレジスタ13Hの出力端子が加算
器14の一方の入力端子に接続されている外は、演算ユ
ニット10と同一である。演算ユニット20A、30A
についても同様である。
The components in the arithmetic units 10A, 20A and 30A are respectively the arithmetic units 10, 2 in FIG.
It is arranged in a left-right mirror image relationship with the components in 0 and 30. That is, the arithmetic unit 10A has the following functions except that the output terminal of the lower byte register 13L is connected to one input terminal of the adder 14, and the output terminal of the upper byte register 13H is connected to one input terminal of the adder 14. , the same as the arithmetic unit 10. Arithmetic unit 20A, 30A
The same applies to

【0047】加算器14のキャリー出力端子は、加算器
16のキャリー入力端子に接続されており、加算器14
からキャリーC11が加算器16に供給される。演算ユ
ニット20A中のキャリーC21及び演算ユニット30
A中のキャリーC31は、演算ユニット10A中のキャ
リーC11に対応している。
The carry output terminal of the adder 14 is connected to the carry input terminal of the adder 16.
A carry C11 is supplied to the adder 16 from the adder 16. Carry C21 in the arithmetic unit 20A and the arithmetic unit 30
Carry C31 in A corresponds to carry C11 in arithmetic unit 10A.

【0048】演算ユニット10Aと演算ユニット20A
との間は、双方向セレクタ27の共通端子が双方向セレ
クタ17のa側端子に接続され、演算ユニット20Aと
演算ユニット30Aとの間は、双方向セレクタ37の共
通端子が双方向セレクタ27のa側端子に接続されてい
る。また、演算ユニット30Aと演算ユニット10Aと
の間は、加算器36のキャリー出力端子が加算器14の
キャリー入力端子に接続されており、加算器36からの
キャリーC32が加算器14に供給される。
Arithmetic unit 10A and arithmetic unit 20A
Between the arithmetic unit 20A and the arithmetic unit 30A, the common terminal of the bidirectional selector 27 is connected to the a-side terminal of the bidirectional selector 17. Connected to the a side terminal. Further, between the arithmetic unit 30A and the arithmetic unit 10A, the carry output terminal of the adder 36 is connected to the carry input terminal of the adder 14, and the carry C32 from the adder 36 is supplied to the adder 14. .

【0049】次に、上記の如く構成された直並列型乗算
器の動作を説明する。
Next, the operation of the series-parallel multiplier configured as described above will be explained.

【0050】第1実施例と同様に、第18図に示す如く
、クロックφ0の立ち上がりから次のクロックφ1の立
ち上がりまでの時間をクロックサイクル1a、2a、3
a、4aとし、クロックφ1の立ち上がりから次のクロ
ックφ0の立ち上がりまでの時間をクロックサイクル1
b、2b、3bとする。第11乃至第17図はそれぞれ
、クロックサイクル1a、1b、2a、2b、3a、3
b及び4aでの状態を示す。
As in the first embodiment, as shown in FIG. 18, the time from the rise of clock φ0 to the rise of the next clock φ1 is divided into clock cycles 1a, 2a, 3.
a, 4a, and the time from the rising edge of clock φ1 to the rising edge of the next clock φ0 is clock cycle 1.
b, 2b, and 3b. Figures 11 to 17 show clock cycles 1a, 1b, 2a, 2b, 3a, 3, respectively.
b and 4a are shown.

【0051】■クロックサイクル1a(第11図)開閉
信号S2及びS3によりそれぞれゲート22及び32が
閉状態にされ、開閉信号S1によりゲート12が開状態
にされ、切換信号SCにより双方向セレクタ17、27
及び37がa側に切換えられ、クリア信号(不図示)に
よりレジスタ15、25及び35がクリアされる。
■Clock cycle 1a (FIG. 11) The gates 22 and 32 are closed by the open/close signals S2 and S3, the gate 12 is opened by the open/close signal S1, and the bidirectional selector 17, 27
and 37 are switched to the a side, and registers 15, 25 and 35 are cleared by a clear signal (not shown).

【0052】これにより、レジスタ1の内容が、乗算器
11の一方の入力端子に供給されると共に、ゲート12
及び双方向セレクタ27を介して乗算器21の一方の入
力端子に供給され、さらに双方向セレクタ37を介して
乗算器31の一方の入力端子に供給される。そして、レ
ジスタ1の内容とレジスタAの内容との積が乗算器11
で演算され、レジスタ1の内容とレジスタBの内容との
積が乗算器21で演算され、レジスタ1の内容とレジス
タCの内容との積が乗算器31で演算される。
As a result, the contents of register 1 are supplied to one input terminal of multiplier 11, and the contents of register 1 are supplied to one input terminal of multiplier 11.
and is supplied to one input terminal of the multiplier 21 via the bidirectional selector 27, and further supplied to one input terminal of the multiplier 31 via the bidirectional selector 37. Then, the product of the contents of register 1 and the contents of register A is multiplier 11
The multiplier 21 calculates the product of the contents of register 1 and the contents of register B, and the multiplier 31 calculates the product of the contents of register 1 and the contents of register C.

【0053】■クロックサイクル1b(第12図)乗算
器11、21及び31の演算結果がクロックφ1の立ち
上がりのタイミングで、それぞれレジスタ13、23、
33に保持され、開閉信号S3によりゲート32が閉状
態にされる。また、切換信号SCにより双方向セレクタ
17、27及び37がb側に切換えられる。
■Clock cycle 1b (Fig. 12) The operation results of multipliers 11, 21, and 31 are stored in registers 13, 23, and 31, respectively, at the rising edge of clock φ1.
33, and the gate 32 is closed by the opening/closing signal S3. Further, the bidirectional selectors 17, 27, and 37 are switched to the b side by the switching signal SC.

【0054】これにより、下位バイトレジスタ33Lの
内容1CLと0との和が加算器34で演算され、上位バ
イトレジスタ33Hの内容1CHとレジスタ35の内容
0とキャリーC31との和が加算器36で演算され、こ
の演算結果と下位バイトレジスタ23Lの内容1BLと
の和が加算器24で演算される。また、上位バイトレジ
スタ23Hの内容1BHとレジスタ25の内容0とキャ
リーC21との和が加算器26で演算され、この演算結
果と下位バイトレジスタ13Lの内容1ALとキャリー
C32との和が加算器14で演算され、上位バイトレジ
スタ13Hの内容1AHとレジスタ15の内容0とキャ
リーC11との和が加算器16で演算される。
As a result, the adder 34 calculates the sum of the contents 1CL and 0 of the lower byte register 33L, and the sum of the contents 1CH of the upper byte register 33H, the contents 0 of the register 35, and the carry C31 is calculated by the adder 36. The adder 24 calculates the sum of this calculation result and the content 1BL of the lower byte register 23L. Further, the sum of the content 1BH of the upper byte register 23H, the content 0 of the register 25, and the carry C21 is calculated by the adder 26, and the sum of this calculation result, the content 1AL of the lower byte register 13L, and the carry C32 is calculated by the adder 14. The adder 16 calculates the sum of the content 1AH of the upper byte register 13H, the content 0 of the register 15, and the carry C11.

【0055】■クロックサイクル2a(第13図)加算
器14、24及び34の演算結果がクロックφ0の立ち
上がりのタイミングで、それぞれレジスタ15、25及
び35に保持される。また、開閉信号S2によりゲート
22が開状態にされ、切換信号SCにより双方向セレク
タ17、27及び37がa側に切換えられる。
(2) Clock cycle 2a (FIG. 13) The calculation results of adders 14, 24 and 34 are held in registers 15, 25 and 35, respectively, at the rising edge of clock φ0. Further, the gate 22 is opened by the opening/closing signal S2, and the bidirectional selectors 17, 27, and 37 are switched to the a side by the switching signal SC.

【0056】これにより、レジスタ2の内容が、ゲート
22を介して乗算器21の一方の入力端子に供給される
と共に、ゲート22及び双方向セレクタ27を介して乗
算器11の一方の入力端子に供給され、さらに、ゲート
22及び双方向セレクタ37を介して乗算器31の一方
の入力端子に供給される。そして、レジスタ2の内容と
レジスタAの内容との積が乗算器11で演算され、レジ
スタ2の内容とレジスタBの内容との積が乗算器21で
演算され、レジスタ2の内容とレジスタCの内容との積
が乗算器31で演算される。
As a result, the contents of register 2 are supplied to one input terminal of multiplier 21 via gate 22, and are also supplied to one input terminal of multiplier 11 via gate 22 and bidirectional selector 27. The signal is supplied to one input terminal of the multiplier 31 via the gate 22 and the bidirectional selector 37. Then, the multiplier 11 calculates the product of the contents of register 2 and the contents of register A, the product of the contents of register 2 and the contents of register B is calculated by the multiplier 21, and the product of the contents of register 2 and the contents of register C is calculated. A multiplier 31 calculates the product with the contents.

【0057】■クロックサイクル2b(第14図)乗算
器11、21及び31の演算結果がクロックφ1の立ち
上がりのタイミングで、それぞれレジスタ13、23、
33に保持され、開閉信号S2によりゲート22が閉状
態にされる。また、切換信号SCにより双方向セレクタ
17、27及び37がb側に切換えられる。
■Clock cycle 2b (Fig. 14) The operation results of multipliers 11, 21, and 31 are stored in registers 13, 23, and 31, respectively, at the rising edge of clock φ1.
33, and the gate 22 is closed by the opening/closing signal S2. Further, the bidirectional selectors 17, 27, and 37 are switched to the b side by the switching signal SC.

【0058】これにより、下位バイトレジスタ33Lの
内容2CLと0との和が加算器34で演算され、上位バ
イトレジスタ33Hの内容2CHとレジスタ35の内容
1CLとキャリーC31との和が加算器36で演算され
、この演算結果と下位バイトレジスタ23Lの内容2B
Lとの和が加算器24で演算される。また、上位バイト
レジスタ23Hの内容2BHとレジスタ25の内容1B
L+1CHとキャリーC21との和が加算器26で演算
され、この演算結果と下位バイトレジスタ13Lの内容
2BLとキャリーC32との和が加算器14で演算され
、上位バイトレジスタ13Hの内容2AHとレジスタ1
5の内容1AL+1BHとキャリーC11との和が加算
器16で演算される。
As a result, the sum of the content 2CL of the lower byte register 33L and 0 is calculated in the adder 34, and the sum of the content 2CH of the upper byte register 33H, the content 1CL of the register 35, and the carry C31 is calculated in the adder 36. This calculation result and the contents 2B of the lower byte register 23L are
The sum with L is calculated by the adder 24. In addition, the content 2BH of the upper byte register 23H and the content 1B of the register 25
The adder 26 calculates the sum of L+1CH and the carry C21, and the adder 14 calculates the sum of this calculation result, the content 2BL of the lower byte register 13L, and the carry C32, and the sum of the content 2AH of the upper byte register 13H and the register 1.
The adder 16 calculates the sum of the contents 1AL+1BH of 5 and the carry C11.

【0059】■クロックサイクル3a(第15図)加算
器14、24及び34の演算結果がクロックφ0の立ち
上がりのタイミングで、それぞれレジスタ15、25及
び35に保持される。また、開閉信号S3によりゲート
32が開状態にされ、切換信号SCにより双方向セレク
タ17、27及び37がa側に切換えられる。
(2) Clock cycle 3a (FIG. 15) The calculation results of adders 14, 24 and 34 are held in registers 15, 25 and 35, respectively, at the rising edge of clock φ0. Further, the gate 32 is opened by the opening/closing signal S3, and the bidirectional selectors 17, 27, and 37 are switched to the a side by the switching signal SC.

【0060】これにより、レジスタ3の内容が、乗算器
31の一方の入力端子に供給されると共に、ゲート32
及び双方向セレクタ37を介して乗算器21の一方の入
力端子に供給され、さらに双方向セレクタ27を介して
乗算器11の一方の入力端子に供給される。そして、レ
ジスタ3の内容とレジスタCの内容との積が乗算器31
で演算され、レジスタ3の内容とレジスタBの内容との
積が乗算器21で演算され、レジスタ3の内容とレジス
タAの内容との積が乗算器11で演算される。
As a result, the contents of register 3 are supplied to one input terminal of multiplier 31, and the contents of register 3 are supplied to one input terminal of multiplier 31.
and is supplied to one input terminal of the multiplier 21 via the bidirectional selector 37, and further supplied to one input terminal of the multiplier 11 via the bidirectional selector 27. Then, the product of the contents of register 3 and the contents of register C is multiplier 31
The multiplier 21 calculates the product of the contents of register 3 and the contents of register B, and the multiplier 11 calculates the product of the contents of register 3 and the contents of register A.

【0061】■クロックサイクル3b(第16図)乗算
器11、21及び31の演算結果がクロックφ1の立ち
上がりのタイミングで、それぞれレジスタ13、23、
33に保持され、開閉信号S3によりゲート32が閉状
態にされる。また、切換信号SCにより双方向セレクタ
17、27及び37がb側に切換えられる。
■Clock cycle 3b (Fig. 16) The operation results of multipliers 11, 21, and 31 are stored in registers 13, 23, and 31, respectively, at the rising edge of clock φ1.
33, and the gate 32 is closed by the opening/closing signal S3. Further, the bidirectional selectors 17, 27, and 37 are switched to the b side by the switching signal SC.

【0062】これにより、下位バイトレジスタ33Lの
内容3CLと0との和が加算器34で演算され、上位バ
イトレジスタ33Hの内容3CHとレジスタ35の内容
2CLとキャリーC31との和が加算器36で演算され
、この演算結果と下位バイトレジスタ23Lの内容3B
Lとの和が加算器24で演算される。また、上位バイト
レジスタ23Hの内容3BHとレジスタ25の内容2B
L+2CH+1CLとキャリーC21との和が加算器2
6で演算され、この演算結果と下位バイトレジスタ13
Lの内容3ALとキャリーC32との和が加算器14で
演算され、上位バイトレジスタ13Hの内容3AHとレ
ジスタ15の内容2AL+2BH+1BL+1CHとキ
ャリーC11との和が加算器16で演算される。
As a result, the sum of the content 3CL of the lower byte register 33L and 0 is calculated by the adder 34, and the sum of the content 3CH of the upper byte register 33H, the content 2CL of the register 35, and the carry C31 is calculated by the adder 36. This calculation result and the contents 3B of the lower byte register 23L are calculated.
The sum with L is calculated by the adder 24. In addition, the content 3BH of the upper byte register 23H and the content 2B of the register 25
The sum of L+2CH+1CL and carry C21 is added to adder 2.
6, and the result of this operation and the lower byte register 13
Adder 14 calculates the sum of contents 3AL of L and carry C32, and adder 16 calculates the sum of contents 3AH of upper byte register 13H, contents 2AL+2BH+1BL+1CH of register 15, and carry C11.

【0063】■クロックサイクル4a(第17図)加算
器14、24及び34の演算結果がクロックφ0の立ち
上がりのタイミングで、それぞれレジスタ15、25及
び35に保持される。
(2) Clock cycle 4a (FIG. 17) The calculation results of adders 14, 24 and 34 are held in registers 15, 25 and 35, respectively, at the rising edge of clock φ0.

【0064】このようにして、レジスタ1、2及び3に
格納された3バイトの値と、レジスタA、B及びCに格
納された3バイトの値との積の下位3バイト3AL+3
BH+2BL+2CH+1CL、3BL+3CH+2C
L、3CLがそれぞれレジスタ15、25及び35に保
持される。
In this way, the lower 3 bytes of the product of the 3-byte values stored in registers 1, 2, and 3 and the 3-byte values stored in registers A, B, and C are obtained.
BH+2BL+2CH+1CL, 3BL+3CH+2C
L and 3CL are held in registers 15, 25 and 35, respectively.

【0065】なお、本発明には外にも種々の変形例が含
まれる。
Note that the present invention includes various other modifications.

【0066】例えば、第1実施例の直並列型乗算器と第
2実施例の直並列型乗算器とを、配線を切換接続するこ
とにより一方から他方の構成に変更するようにしてもよ
い。このようにすれば、例えば上記3バイト×3バイト
の積6バイトの全てを、3つの演算ユニット10Aで求
めることができる。また、前記切換接続しなくても、6
つ演算ユニット10Aを用いればこの積6バイトの全て
を求めることができる。
For example, the configuration of the series-parallel multiplier of the first embodiment and the series-parallel multiplier of the second embodiment may be changed from one configuration to the other by switching and connecting the wiring. In this way, for example, all 6 bytes of the product of 3 bytes x 3 bytes can be obtained by the three arithmetic units 10A. In addition, even if the switching connection is not made, the 6
If one arithmetic unit 10A is used, all six bytes of this product can be obtained.

【0067】[0067]

【発明の効果】以上説明した如く、本発明に係る直並列
型乗算器によれば、乗数及び被乗数のビット数の増加に
対しては、単に同一構成の演算ユニットの段数を増やせ
ばよいので、ハードウエア構成を単純に拡張することが
できるという優れた効果を奏する。また、直列型乗算器
のような1ビット単位のシフト演算を行わずに、nビッ
ト単位で演算ユニット間において桁送り(並列データ転
送)を行うので、高速演算が可能となるという効果を奏
する。
As explained above, according to the series-parallel multiplier according to the present invention, the number of bits of the multiplier and multiplicand can be increased simply by increasing the number of stages of arithmetic units having the same configuration. This has an excellent effect in that the hardware configuration can be simply expanded. Furthermore, since shift operations (parallel data transfer) are performed between arithmetic units in units of n bits without performing shift operations in units of 1 bit as in serial multipliers, there is an effect that high-speed operations are possible.

【0068】また、上記切換スイッチ手段を備えれば、
演算ユニット間において、各ゲートの乗算器側の端子間
の接続と桁加算回路間の接続とを、1つに纏めることが
できるので、演算ユニット間の接続が簡単になるという
効果を奏する。
[0068] Furthermore, if the above changeover switch means is provided,
Between the arithmetic units, the connection between the multiplier-side terminals of each gate and the connection between the digit adder circuits can be combined into one, resulting in the effect that the connection between the arithmetic units is simplified.

【0069】また、桁加算回路を、中間レジスタの上位
nビットの値と1つ上位の桁の演算ユニットからの桁下
がりとの和を演算する第1加算器と、中間レジスタの下
位nビットの値と出力レジスタの内容との和を演算する
第2加算器とを有する構成とし、第1加算器の出力が前
記出力レジスタに保持され、第2加算器の出力が桁下が
りとして次段の演算ユニットに供給されるように構成す
れば、1桁がnビットで共にm+1桁であるAとBとの
積の上位m+1桁を、最も少ないm+1段の演算ユニッ
トを用いた直並列型乗算器により、最も高速に演算する
ことができるという効果を奏する。
In addition, the digit addition circuit includes a first adder that calculates the sum of the value of the upper n bits of the intermediate register and the carry from the arithmetic unit of the next higher digit, and a The configuration includes a second adder that calculates the sum of the value and the contents of the output register, the output of the first adder is held in the output register, and the output of the second adder is used as a carry in the next stage calculation. If configured to be supplied to the unit, the upper m+1 digits of the product of A and B, where each digit is n bits and both are m+1 digits, are processed by a series-parallel multiplier using the smallest number of m+1 arithmetic units. , has the effect of being able to perform calculations at the highest speed.

【0070】また、桁加算回路を、中間レジスタの下位
nビットの値と1つ下位の桁の演算ユニットからの桁上
がりとの和を演算する第1加算器と、中間レジスタの上
位nビットの値と出力レジスタの内容との和を演算する
第2加算器とを有する構成とし、第1加算器の出力が出
力レジスタに保持され、第2加算器の出力が桁上がりと
して次段の演算ユニットに供給されるように構成すれば
、1桁がnビットで共にm+1桁であるAとBとの積の
下位m+1桁を、最も少ないm+1段の演算ユニットを
用いた上記直並列型乗算器により、最も高速に演算する
ことができるという効果を奏する。
In addition, the digit addition circuit includes a first adder that calculates the sum of the value of the lower n bits of the intermediate register and the carry from the arithmetic unit of the next lower digit, and a The configuration includes a second adder that calculates the sum of the value and the contents of the output register, the output of the first adder is held in the output register, and the output of the second adder is used as a carry to be used as a carry in the next stage calculation unit. If the configuration is such that the lower m+1 digits of the product of A and B, where each digit is n bits and each is m+1 digits, are supplied, the lower m+1 digits of the product of A and B are processed by the above series-parallel multiplier using the minimum number of m+1 arithmetic units. , has the effect of being able to perform calculations at the highest speed.

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

【図1】本発明に係る直並列型乗算器の原理構成を示す
ブロック図である。
FIG. 1 is a block diagram showing the principle configuration of a series-parallel multiplier according to the present invention.

【図2】各1バイトのレジスタ1、2及び3に格納され
た合計3バイトの値と、同じく各1バイトのレジスタA
、B及びCに格納された合計3バイトの値との乗算方法
説明図である。
[Figure 2] A total of 3 bytes of values stored in registers 1, 2, and 3 of 1 byte each, and register A of 1 byte each.
, B, and C with a total of 3 bytes.

【図3】第10図に示すクロックサイクル1aの状態の
、直並列型乗算器の回路図である。
3 is a circuit diagram of the series-parallel multiplier in the state of clock cycle 1a shown in FIG. 10; FIG.

【図4】第10図に示すクロックサイクル1bの状態の
、直並列型乗算器の回路図である。
4 is a circuit diagram of the series-parallel multiplier in the state of clock cycle 1b shown in FIG. 10; FIG.

【図5】第10図に示すクロックサイクル2aの状態の
、直並列型乗算器の回路図である。
5 is a circuit diagram of the series-parallel multiplier in the state of clock cycle 2a shown in FIG. 10; FIG.

【図6】第10図に示すクロックサイクル2bの状態の
、直並列型乗算器の回路図である。
6 is a circuit diagram of the series-parallel multiplier in the state of clock cycle 2b shown in FIG. 10; FIG.

【図7】第10図に示すクロックサイクル3aの状態の
、直並列型乗算器の回路図である。
7 is a circuit diagram of the series-parallel multiplier in the state of clock cycle 3a shown in FIG. 10; FIG.

【図8】第10図に示すクロックサイクル3bの状態の
、直並列型乗算器の回路図である。
8 is a circuit diagram of the series-parallel multiplier in the state of clock cycle 3b shown in FIG. 10; FIG.

【図9】第10図に示すクロックサイクル4aの状態の
、直並列型乗算器の回路図である。
9 is a circuit diagram of the series-parallel multiplier in the state of clock cycle 4a shown in FIG. 10; FIG.

【図10】直並列型乗算器の動作を示すタイミングチャ
ートである。
FIG. 10 is a timing chart showing the operation of a series-parallel multiplier.

【図11】第18図に示すクロックサイクル1aの状態
の、直並列型乗算器の回路図である。
11 is a circuit diagram of the series-parallel multiplier in the state of clock cycle 1a shown in FIG. 18; FIG.

【図12】第18図に示すクロックサイクル1bの状態
の、直並列型乗算器の回路図である。
12 is a circuit diagram of the series-parallel multiplier in the state of clock cycle 1b shown in FIG. 18; FIG.

【図13】第18図に示すクロックサイクル2aの状態
の、直並列型乗算器の回路図である。
13 is a circuit diagram of the series-parallel multiplier in the state of clock cycle 2a shown in FIG. 18; FIG.

【図14】第18図に示すクロックサイクル2bの状態
の、直並列型乗算器の回路図である。
14 is a circuit diagram of the series-parallel multiplier in the state of clock cycle 2b shown in FIG. 18; FIG.

【図15】第18図に示すクロックサイクル3aの状態
の、直並列型乗算器の回路図である。
15 is a circuit diagram of the series-parallel multiplier in the state of clock cycle 3a shown in FIG. 18; FIG.

【図16】第18図に示すクロックサイクル3bの状態
の、直並列型乗算器の回路図である。
16 is a circuit diagram of the series-parallel multiplier in the state of clock cycle 3b shown in FIG. 18; FIG.

【図17】第18図に示すクロックサイクル4aの状態
の、直並列型乗算器の回路図である。
17 is a circuit diagram of the series-parallel multiplier in the state of clock cycle 4a shown in FIG. 18; FIG.

【図18】直並列型乗算器の動作を示すタイミングチャ
ートである。
FIG. 18 is a timing chart showing the operation of a series-parallel multiplier.

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

1〜3、A〜C、13、23、33、15、25、35
  レジスタ 10、10A、20、20A、30、30A  演算ユ
ニット 11、21、31  乗算器 12、22、32  ゲート 14、24、34、16、26、36  加算器17、
27、37  双方向セレクタ
1-3, A-C, 13, 23, 33, 15, 25, 35
Registers 10, 10A, 20, 20A, 30, 30A Arithmetic units 11, 21, 31 Multipliers 12, 22, 32 Gates 14, 24, 34, 16, 26, 36 Adder 17,
27, 37 Bidirectional selector

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】  A0、A1、・・・、Am及びB0、
B1、・・・、Bmがそれぞれnビットで表わされ、A
=A0+A1×2n +・・・+Am×2mn、B=B
0+B1×2n +・・・+Bm×2mnと表わされる
AとBとの積を演算する直並列型乗算器において、同一
構成のm+1段の演算ユニット(U0〜Um)と、制御
回路(C)とを備え、nビットを1桁とし、第i段の該
演算ユニット(Ui)は、該Aiが格納されるnビット
の第1入力レジスタ(RAi)と、該Biが格納される
nビットの第2入力レジスタ(RBi)と、開閉制御信
号に応答して開状態又は閉状態にするゲート(Gi)と
、一方の入力端子に該第1入力レジスタの出力端子が該
ゲートを介して接続され、他方の入力端子に該第2入力
レジスタの出力端子が接続され、該両入力端子に供給さ
れる値の積を演算する乗算器(Mi)と、該乗算器の出
力端子に接続され、第1保持制御信号に応答して該積を
部分積として保持する2nビットの中間レジスタ(RM
i)と、前段の該演算ユニットから桁送りされた値と該
中間レジスタに保持された値とについて、同一桁の部分
積の和を演算し、該桁と異なる桁の値を次段の該演算ユ
ニットに桁送りする桁加算回路(ADi)と、第2保持
制御信号に応答して該部分積の和を保持する出力レジス
タ(RCi)とを有し、各該演算ユニットの該乗算器の
該一方の入力端子が互いに接続され、該桁上げが行なわ
れるように該桁加算回路が該演算ユニット間で接続され
、該制御回路(C)は、該ゲート(G0〜Gm)に該開
閉信号を供給して第i段の該演算ユニット(Ui)の該
ゲート(Gi)のみを開状態にさせることにより、A0
、A1、・・・、AmとBiとの部分積を該乗算器(M
0〜Mm)に演算させ、該中間レジスタ(RM0〜RM
m)に該第1保持制御信号を供給して該部分積を該中間
レジスタに保持させ、該出力レジスタ(RC0〜RCm
)に該第2保持制御信号を供給して該部分積の該和を該
出力レジスタに保持させ、該演算及び該保持をi=0〜
mの各々について順に実行させることを特徴とする直並
列型乗算器。
[Claim 1] A0, A1, ..., Am and B0,
B1, ..., Bm are each represented by n bits, and A
=A0+A1×2n +...+Am×2mn, B=B
In a series-parallel multiplier that calculates the product of A and B expressed as 0+B1×2n +...+Bm×2mn, m+1 stages of arithmetic units (U0 to Um) with the same configuration and a control circuit (C) are used. , where n bits are one digit, and the i-th stage arithmetic unit (Ui) has an n-bit first input register (RAi) in which the Ai is stored, and an n-bit first input register (RAi) in which the Bi is stored. a two-input register (RBi), a gate (Gi) that is turned into an open state or a closed state in response to an opening/closing control signal, and one input terminal of which the output terminal of the first input register is connected via the gate; The output terminal of the second input register is connected to the other input terminal, and the multiplier (Mi) calculates the product of the values supplied to both input terminals; A 2n-bit intermediate register (RM) holds the product as a partial product in response to a hold control signal.
i), the value shifted from the arithmetic unit in the previous stage, and the value held in the intermediate register, calculate the sum of partial products of the same digit, and calculate the value of the digit different from the digit in the next stage. It has a digit adder circuit (ADi) that shifts to the arithmetic unit, and an output register (RCi) that holds the sum of the partial products in response to a second holding control signal. The one input terminals are connected to each other, the digit addition circuit is connected between the arithmetic units so that the carry is performed, and the control circuit (C) sends the opening/closing signal to the gates (G0 to Gm). A0
, A1,..., the partial product of Am and Bi is calculated by the multiplier (M
0 to Mm), and the intermediate registers (RM0 to RM
m) supplies the first holding control signal to hold the partial product in the intermediate register, and outputs the output register (RC0 to RCm
) is supplied with the second holding control signal to hold the sum of the partial products in the output register, and the operation and holding are performed from i=0 to
A series-parallel multiplier characterized in that each of m is executed in turn.
【請求項2】  a側端子が前記ゲートの前記乗算器側
の端子に接続され、b側端子が前記桁送りを出力する端
子に接続され、共通端子が次段の前記演算ユニットの前
記ゲートの前記乗算器側の端子に接続され、切換制御信
号(SC)に応じて該共通端子を該a側端子又は該b側
端子の一方に接続させる切換スイッチ手段(17、27
、37)を備え、前記制御回路(C)は、該切換スイッ
チ手段に該切換制御信号を供給して該切換スイッチ手段
をa側にさせた状態で前記部分積を演算させ、該切換ス
イッチ手段に該切換制御信号を供給して該切換スイッチ
手段をb側にさせた状態で前記部分積の和を演算させか
つ前記桁送りを行なわせることを特徴とする請求項1記
載の直並列型乗算器。
2. An a-side terminal is connected to the multiplier-side terminal of the gate, a b-side terminal is connected to the terminal that outputs the shift signal, and a common terminal is connected to the multiplier-side terminal of the gate, and a common terminal is connected to the multiplier-side terminal of the gate, and the b-side terminal is connected to the terminal that outputs the shift signal. changeover switch means (17, 27) connected to the terminal on the multiplier side and for connecting the common terminal to either the a-side terminal or the b-side terminal according to a switching control signal (SC);
, 37), the control circuit (C) supplies the changeover control signal to the changeover switch means to calculate the partial product with the changeover switch means set to the a side, and 2. The series-parallel multiplication device according to claim 1, wherein the switching control signal is supplied to the converter to cause the sum of the partial products to be calculated and the shift to be performed while the changeover switch means is set to the b side. vessel.
【請求項3】  前記桁加算回路(ADi)は、前記中
間レジスタ(13、23、33)の上位nビットの値と
1つ上位の桁の前記演算ユニットからの桁下がりとの和
を演算する第1加算器(14、24、34)と、該中間
レジスタの下位nビットの値と前記出力レジスタ(15
、25、35)の内容との和を演算する第2加算器(1
6、26、36)とを有し、該第1加算器の出力が前記
出力レジスタに保持され、該第2加算器の出力が桁下が
りとして次段の該演算ユニットに供給されることを特徴
とする請求項1又は2記載の直並列型乗算器。
3. The digit addition circuit (ADi) calculates the sum of the value of the upper n bits of the intermediate register (13, 23, 33) and the digit of the next higher digit from the arithmetic unit. the first adder (14, 24, 34), the value of the lower n bits of the intermediate register and the output register (15);
, 25, 35).
6, 26, 36), the output of the first adder is held in the output register, and the output of the second adder is supplied as a carry to the next-stage arithmetic unit. 3. A series-parallel multiplier according to claim 1 or 2.
【請求項4】  前記桁加算回路(ADi)は、前記中
間レジスタ(13、23、33)の下位nビットの値と
1つ下位の桁の前記演算ユニットからの桁上がりとの和
を演算する第1加算器(14、24、34)と、該中間
レジスタの上位nビットの値と前記出力レジスタ(15
、25、35)の内容との和を演算する第2加算器(1
6、26、36)とを有し、該第1加算器の出力が前記
出力レジスタに保持され、該第2加算器の出力が桁上が
りとして次段の該演算ユニットに供給されることを特徴
とする請求項1又は2記載の直並列型乗算器。
4. The digit addition circuit (ADi) calculates the sum of the value of the lower n bits of the intermediate register (13, 23, 33) and the carry of the next lower digit from the arithmetic unit. the first adder (14, 24, 34), the value of the upper n bits of the intermediate register and the output register (15);
, 25, 35).
6, 26, 36), the output of the first adder is held in the output register, and the output of the second adder is supplied as a carry to the arithmetic unit at the next stage. 3. A series-parallel multiplier according to claim 1 or 2.
JP2402364A 1990-12-14 1990-12-14 Serial-parallel multiplier Withdrawn JPH04216126A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2402364A JPH04216126A (en) 1990-12-14 1990-12-14 Serial-parallel multiplier

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2402364A JPH04216126A (en) 1990-12-14 1990-12-14 Serial-parallel multiplier

Publications (1)

Publication Number Publication Date
JPH04216126A true JPH04216126A (en) 1992-08-06

Family

ID=18512183

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2402364A Withdrawn JPH04216126A (en) 1990-12-14 1990-12-14 Serial-parallel multiplier

Country Status (1)

Country Link
JP (1) JPH04216126A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007078939A3 (en) * 2005-12-30 2007-11-15 Intel Corp Multiplier

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007078939A3 (en) * 2005-12-30 2007-11-15 Intel Corp Multiplier
US8073892B2 (en) 2005-12-30 2011-12-06 Intel Corporation Cryptographic system, method and multiplier

Similar Documents

Publication Publication Date Title
US5210806A (en) Digital audio signal processing apparatus
JPH0225987A (en) Picture processing integrated circuit device
EP0504996B1 (en) Arithmetic unit for multiplying long integers modulo M and R.S.A. converter provided with such multiplication device
US4939684A (en) Simplified processor for digital filter applications
JPS62284510A (en) Digital filter processor which employs mobile factor and facilitates cascade connection
JPH082014B2 (en) Multi-stage digital filter
JPH0812657B2 (en) Data storage
JPH11266140A (en) Programmable circuit for providing digital filter
IE77511B1 (en) Address processor for a signal processor
JP3277089B2 (en) Multiplier and product-sum operation unit
US5285403A (en) Arithmetic processing module to be associated with a microprocessor central processing unit
JPH04503720A (en) Flexible control device and method for digital signal processing device
JPH04216126A (en) Serial-parallel multiplier
JPH08152994A (en) Multiplier and digital filter
KR100235537B1 (en) Variable tap of digital filter and multiplier circuit thereof
JPS58151644A (en) Digital operating device
RU2097828C1 (en) Programmable digital filter
RU1791818C (en) Device for control of modulo three residual code
JPH0613843A (en) Digital signal processing circuit
US6941418B1 (en) Integrated circuit and method outputting data
US5367700A (en) System for multiplying digital input data in a multiplier circuit
US7043513B2 (en) Clock balanced segmentation digital filter provided with optimun area of data path
JPH0284807A (en) Digital signal processor
JPH1185470A (en) Arithmetic circuit
JPH0795671B2 (en) Digital Filter

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19980312