JPS58101343A - Multiplication system - Google Patents
Multiplication systemInfo
- Publication number
- JPS58101343A JPS58101343A JP56199554A JP19955481A JPS58101343A JP S58101343 A JPS58101343 A JP S58101343A JP 56199554 A JP56199554 A JP 56199554A JP 19955481 A JP19955481 A JP 19955481A JP S58101343 A JPS58101343 A JP S58101343A
- Authority
- JP
- Japan
- Prior art keywords
- carry
- register
- bit
- sum
- adder
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/52—Multiplying; Dividing
- G06F7/523—Multiplying only
- G06F7/53—Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel
- G06F7/5324—Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel partitioned, i.e. using repetitively a smaller parallel parallel multiplier or using an array of such smaller multipliers
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Complex Calculations (AREA)
Abstract
Description
(1)発明の技術分野
本発明は1乗数をデコードするデコーダ、マルチプル・
ゲート、C8ム(キャリー・セーブ・アダー))リーお
よびスピル(split Adder)を有する複数の
乗算部分を有すると共に、上記番乗算部分から出力され
るサムとキャリーとが時分割的に入力されるメイン・ア
ダーを有する乗算装置において、メイン・アダーおよび
周辺回路部のビット幅を小さく出来るようにしたもので
ある。
(2)従来技術と問題点
籐1図は従来の乗算装置を示すものであり(1) Technical field of the invention The present invention relates to a decoder for decoding a single multiplier, a multiple
It has a plurality of multiplication parts including a gate, a C8 m (carry save adder), a spill (split adder), and a main part into which the sum and carry output from the above multiplication part are inputted in a time-sharing manner. - In a multiplication device with an adder, the bit width of the main adder and peripheral circuit section can be reduced. (2) Prior art and problems Figure 1 shows a conventional multiplication device.
【、1は被乗
数がセットされる入力レジスタ、2は乗数がセットされ
る入力レジスタ、3はマルチプレクサ、4はデ薯−ダ、
Sはマルチプル拳ゲート、6と7 輪C8ム、8はサム
がセットされる中間レジスタ、9はキャリーが一ットさ
れる中間レジスタ、1Gはスピル・アダー、11は7リ
ツプ・フatプ、1,2はキャリー・プーパゲーシ曹y
・アダーで作られたメイン・アダー、13は結果レジス
タをそれぞれ示している。
第1図の例では、大力レジスタ1.2はそれぞれ4バイ
ト構成とされている。マルチプレタt3は、先ず最下位
パイ)(バイトs)*tia訳し、最後にパイ)Ol−
選択する。マルチプレクサ3から選択出力されるバイト
情報はデコーダ4に入力される。デコーダ4の出力はマ
ルチプル・ゲー)5にル刀される。マルチプル・ゲート
5はデコーダ4かものデクート信号に基づい【、4種の
乗数Kl、Kl、Kl、に4を生成し、乗数をに1倍し
たもの、、に1倍したもの、K1倍したもの及びに4倍
したものをC8五6に人力する。CBムロから出力され
るサムと中ヤリ−は、C8ム7に入力される。
この際、中間レジスタ8の上位4バイトおよび中間レジ
スタ9の上位4バイトもCBB10入力される。C8ム
1から出力されるサムとキャリーは、それぞれ中間レジ
スタ8.9に入力される。中間レジスタ8の最下位バイ
トおよび中間レジスタ9の1下位バイトはスピル・アダ
ー10に入力される。
また、スピル・アダー10にはフリップ・フロップ11
の内容も入力される。スピル・アダー10から出力され
るキャリーは、7リツプ・フ冒シブ11にセットされる
。所定のタイ叱ングで、中間レジスタ8の内容、中間レ
ジスタ9の内容およびアリツブ・フロップ11の内容は
メインφアダー12に入力され、メイン・アダー12の
出力は結果レジスフ1Bにセットされる。
第1図において、入力レジスタ1は32ビツト構成であ
り、入力レジスタ1からマルチプル・ゲ−)!!に至る
パスも32ピツF構成であり、マにチプレクサ3からデ
冨−ダ4に至るパスは8ビツト構成である。中間レジス
タ8および9は5バイト構成であり、中間レジスタ8か
らメイン・アダー12に至るパス−幅および中間レジス
ターからメイン・アダーに至るパスの幅は40ビツトで
ある。中間・レジスタ8からC8ム7の入力に至るパス
は3怠ピツ)構成であり、中間レジスタ9からCBB1
0入力に至るパスも32ピツ)構成である。
メイン−アダー12の出力は5パイ)構成であるが、最
下位バイトは捨てられ、上位4パイシのみが結果レジス
タ13にセデートされる。なお、入力レジスタ1と2、
デコーダ4、マルチプル・ゲー)墨、C8ムロと7、中
間レジスI8と9、スピル・アダー10及びツリッグe
?■ツブ11は、S算部分を構成している。
第!図は第1IIの乗算器の動作を示すタイム・チャー
トである。なお、第2図において、ムは波乗#1%Bは
乗数sCは結果オペランドをそれぞれ示している。ml
算が指令されると、ナ1ターツクでムX 11 (1)
の乗算が開始される。なお、ml(1)は乗数Bのパイ
)(荀、1(匂は乗数1のパイ)意、10)は乗数Bの
バイト1、B(4)は乗数Bのパイ)Oをそれぞれ示し
ている。
φ寓夕璽ツクでは、ム×B(2)の乗算が開始され、ま
た、Csムから出力されるムX B (1)のサム成分
8U(1)とキャ警−成分Cム(1)が中間レジスタ8
.9にそれぞれセットされる。
÷3夕璽ツクでは、ムX B (3)の乗算が開始され
る。また、ムXI(aと!ム成分8U(1)の上位4バ
イトとキャリー成分Cム(1)の上位4バイトの和がす
ム成分8U(2)とキャリー成分Cム(りに分離されて
中間レジスタ8.9にそれぞ“れセットされる。
さらに4サム威分8U(1)の最下位バイトとキャリー
成分Cム(1)の最下位バイトを加算して得られるキャ
1−R(1)が7リツプ・フセツプ11にセットされる
・
÷4夕胃ツタでは、ムxll(430乗算が開始される
。また、AXB(3)とサム成分BUtりの上位4バイ
トとキャリー成分Cム(りの上位4バイトの和がサム成
分8U(3)とキャリー成分Cム(勢に分離されて中間
レジス/g、9にそれぞれセットされる。
さらに、サム成分S、U(7)の最下位バイトとキャ蓼
−成分Cム(りの最下位バイトとキャリーR(υを加算
した時に生ずるキャリーR(Iが7リツプの]璽ツブ1
1にセ、ツトされる。
+l$t4/、uでit、AXB(4)とtA成88U
(31の上位4バイトとキャリー成分Cム(3)の上位
4バイトの和がすム成分8 U (4)とキャリー成分
Cム(4に分離されてそれぞれ中間レジスタ8、fIK
−kvFされる。また、サム成分8U(Iの最下パイF
とキャリー成分Cム(句の最下位バイトとキャリー1(
りを加算した時に生ずるキャリーR(a)がツリツブ・
フ四シブ11にセットされる。さらに、パイy・アダー
12が起動され、サム成分5U(4)S 中ヤリー成分
Cム(4およびキャリーR(至)の加算が行われている
。
+6り■ツタでは、メイン−アダー12の出力の王位4
バイトが結果レジスタ13にセットされる。
ところで、ベクトルφオペッンドを対象とする乗算Sを
第111に示すような複数の乗算部分と1個のメイン・
アダーで構成することが既に!I案され【いる、この種
の乗算器においては、各乗算部分から40ビツト構成の
すム成分とキャリー成分tメイン・アダーに転送する必
要があり、パスや選択ゲートIi′?構成が非常に複雑
になるという欠点が存在する。
(31発明′の目的
本発明は、上記の欠点を除去するものであって、乗数を
デコードするデコーダとマルチプル・ゲートとCsムト
リーとスピル・アダーとより成る複数の乗算部分と、各
乗算部分から出力されるサム成分、キャリー成分および
精度保証用数値データが入力される1個のメイン・アダ
ーを有する乗算器において、各乗算部分からメイン・ア
ダーに至るバスや選択ゲートなどの周辺部の構成を簡単
化できるlKメイン噛アダーのピット幅をも小さくでき
るよ5Kt、た乗算方式&提供することva的としてい
る。
(4)発明の構成
そしてそのため、本発明の乗算方式は、賜×謁ビットの
乗数がセットされる乗数レジスタ、易×ルビツシの被−
数がセットされる被乗数レジスタ、上記被乗数レジスタ
の中から取出された酪ビットのデータをデコードするデ
コーダ、上記デー−〆のデコード結果に基づいて乗数の
倍数な算出するマルチプル争ゲート、上記マルチプルe
ゲージからの乗数の倍数が入力される桁上げ保存加算器
トリー、上記桁上げ保存加算器トリーから出力されるサ
ム成分がセットされる(m+1)Xsビツシ幅のす^用
中間レジスタ、上記桁上げ保存加算器トリーから出力さ
れるキャリー成分がセットされる(馬◆1)x%ビツシ
幅のすム層中間しジスI及び上記す^期中間しジスメの
最下位鶏ピッ)と上記キャリ一層中間しジスメの最下位
外ビットが入力されるスピル・アダーから構成される複
数個の乗算部分、並びに上記すム用中間レジスタの内容
、7上記キヤリ一用中間レジスタの内容および上記スピ
ル・アダーの演算結果が入力されるキャリー伝播加算器
を有する乗算装置において、乗算すべき入力オペランド
が送られ【来たと鎗、1個の乗算部分を選択して虐該乗
算部分の被乗数レジスIおよび乗数レジスタのそれぞれ
に被乗数ムおよび乗数BYセツシし、幽腋乗算部分の中
において、ピ】上記乗数レジスタから第i’4NAの襲
ビット・データB(りを取出し、上記デコーダを用いて
酪ビット・データl(りをデ;−ドし、上記マルチプル
φゲー)を用いて上記波乗数人の倍数を求め、上記桁上
げ保存加算器トリーを用いてムX B (t)と上記す
入用中間レジスタに格納されているす^成分5U(a−
1)と上記キャリー期中間しジスメに格納されているキ
ャリー成分Cム(1−1)の和を算出し、との細果得ら
れるす^成分gtr(t)とキャリー成分Cム(i)を
それぞれサム用中間レジスタとキャリー用中間レジスタ
にセットする処理と、(ロ)上記ピ)の処理の終了後、
上記す五層中間レジスIのサム成分8U(りと最下位1
ビツトと上記キャリー用中間レジスタの最下位1ビツト
を上記スピル・アダーに入力すると共に前のサイタルで
得られた精度保証用キャリーR(i −1)!’上記ス
ピル・アダーに人力し、その演算結果を記憶する旭瑠と
を上記乗数レジスタの第1番目の亀ビットφデータない
し第一゛番目の謁ビツシ・データのそれぞれについて昇
順で行い、上記1番目の謁ビット・データに対する上記
U)、に)の処理が終了した後、上記桁上げ伝播加算器
を用いて上記サム用中間レジスタの内容、上記キャリー
用中間レジメタの内容および上記スピル・アダーの演算
結果の和V求めることVlI黴とするものである。
(5) 発明の実施例
以下、本発明な図面を参照しつつ説明する。
第3図は本発明の1実施例のブーツタ図、#I4園はそ
の動作を示すタイムチャートである。
183図において、1−1と1−8は大力レジスタ、2
−1と2−2も大力レジスタ、3−1と3−2は!ルテ
プレクす、4はデーーダ、s−1と5−2はマルチプル
・ゲート、6−1と6−2はC&ム、7−1と7−2も
C8ム、8−1と8−2はサムがセットされる中間レジ
スタ、9−1と9−2は中ヤリ−がセットされる中間レ
ジスタ、10−1と10−2はスピル・アダー、11−
1と11−2は7リツプ・フロップ、12′はメイン・
アダー、13は結果レジスタ、14は最終すム・レジス
タ、1sは最終キャリー・レジスタ、16はマルチプレ
クサをそれぞれ示し【いる、入力レジスタ1−1と2−
1、マルチプレクサ3−1、デコJダ4−1、マルチプ
ル・ゲート5−1、C3A6−1と7−1、中間VシX
I 8−1 ト9−1、スピル・アダー1O−1および
7リツプ・7aツブ11−1は第1の乗算部分vIl成
し【おり、同様に大力レジスタ1−2と2−2、マルチ
プレクサ3−2、デソーダ4−2、マルチプル・ゲート
5−2、C3A6−2と7−2、中間レジスタ8−2と
9−2、スピル・アダー10−2おヨヒフリツプ・70
ツブ11−2は第2の乗算部分を構成し【いる、これら
の第1の乗算部分および第2の乗算部分は、第1図の乗
算部分と同一構成を有し【いる。最終サム・レジスタ1
4には、中間レジスタ8−1又は8−2の最終サム成分
の上位4バイトがセットされる。最終キャリー・レジス
タ15には、中間レジスタ9−1又は9−!Iの最終キ
ャリー成分の上位4バイトがセットされる。最終サムe
レジスタ14は4バイト構成であり、最終キャリー・レ
ジスタ15も4パイシ構威である。マルチプレクサ16
は、7リツプリ1ツブ11−1又は11−2の精度保証
用キャリーを選択して出力するものである。メイン・ア
ダー12’には、最終サム・レジスタ14の内容とl&
員キャリー・レジス11&の内容と!ルテプレ/!16
の出力とが入力される。メイン・アダー121は32ビ
ツシ幅のものである。メイン・アダー12’の出力は結
果レジスメIIKセットされる。
第4図はjI3図の実施例の動作を示すタイムチャート
である。第4111に示されるように、先ず被乗数AI
と乗数B1とが第1の乗算部分に入力され、2サイクル
後に被乗数A2と乗数B2が第20乗算部分に入力され
る。先ず、AlXB1の乗算について説明する。
#lクロック2はAlXB1[)の乗算が開始される。
#2クロックでは、AIXBl(2)の乗算が開始され
、また、C3A7−1から出力されるAIXB 1 (
11のサム成分S U 1 (1)とキャリー成分C’
AI(1)が中間レジスタ8−1.9−1にそれぞれセ
ットされる。
#3クロックでは、AIXBIQ31の乗算が開始され
る。また、A I X B 1 (21とサム成分5U
(11の上位4バイトとキャリー成分S A 1 (1
)の上位4ノ(イトの和がサム成分S U 1 (2)
とキャリー成分CA1(2)努離されて中間レジスタ8
−1.9−1にそれぞれセットされる。さらに、サム成
分S U 1 (11の最下位バイトとキャリー成分C
A 1 (11の最下位バイトを加算して得られるキャ
リーR1(1)が7リツプ・フロップ11−1にセット
される。
#4クロックでは、AIXBl(4)の乗算が開始され
る。また、A t x B 1 (3)とサム成分S
U 1 (2)の上位4バイトとキャリー成分Cム1(
幻の上位4パイ)の和がサム成分8U1(句とキャリー
成分CAl(3)K分離されて中間レジスタ8−1.9
−1にそれぞれセットされる。さらに、サム成分8U1
(21の最下位バイトとキャリー成分CA 1 (a)
の最下位バイトとキャリーR1(1)を加算した時に生
ずるキャリーR1(Soが7リツプ・フロップ11−1
にセットされる。
+5サイクルでは、ムI X B 1 (4とサム成分
lU 1 (3)の上位4バイトとキャリー成分Cム1
備の上位4バイトの和がサム成分8 U 1 (4とキ
ャリー成分CA 1 (4)に分離されてそれぞれ中間
レジスl8−1.9−1にセットされる。また、サム成
分SUI(mの最下位バイトとキャリー成分CA 1
(39の最下位バイトとキャリーR1(りを加算した時
に生ずるキャリーR1(3)が7、リップ・フロップ1
l−IK上セツトれる。
$69イクルでは、サム成分8 U 1 (4)の上位
4バイトが最終サム・レジスタ14にセットされ、キャ
リー成分CA 1 (4)の上位4バイトが最終命ヤリ
ー金レジスタ15#cセットされる。なお、第4図にお
いて、Xはレジスタ14を示し、Yはレジスタrsv示
している。また、サム成分8 U 1 (4)の最下位
バイトとキャリー成分Cム1(4の最下位)(イトとキ
ャリーR1(8) &加算した時に生ずるキャリーR1
(4が7リツプa7ayプ1l−IK−にットされ、マ
ルチプレタナ16によりてフリップ・フロップ11−1
の内容が選択出力される。さらに、メイy・アダー12
’が起動され、サム成分5Ul(+)、キャリー成分C
A 1 (4)および精度保証用キャ9−Rl(4の加
算が行われる。
+7!ロツクでは、メイン・アダー12Iの出力が結果
レジスタIIK−%!ツトされる。
ム2×B20乗算もAIXBIの乗算と同様にして行わ
れる。たyしム2XIl!の乗算は、ム1XBIの乗算
より2ナイクJ4/後に開始される。なお、上記のよ5
な制御を行わせる制御手段は第3図には示され曵いない
が、上記のような制御は!イク四プqダラム又は布鐘論
理の制御111iKより−c負行することが出来る。
第1図の乗算装置と第3図の実施例とを比較して明らか
なように、メイン・アダ−12′σ〕ビツシ幅は33ビ
ツトであり、第1図のメイン・アダー12に比べ−c8
ビットだけピッ゛゛ト幅カを小さくなりている。これは
、スピル−77−10−1,10−2を4tイクル利用
するととにより、第1IIσ)メイン・アダー12で行
っている1ノ(イトσ)切り捨てをス、ビル・アダー1
0−1.10−!力1行うているからである。第3図の
よ5に1乗算装置が複数′の乗算部分を有していると、
各乗算部分力蔦らの最終のサム成分とキャリー成分を選
択し、メイン・アダー12′に入力することが必要とな
り、第1図のような帆用Iイブの乗算装置に比べてメイ
ン・アダーの前段に1サイクル分必要となゐ0本発明は
、この選択用サイクルを利用して各スピル・アダー10
−1.10−2の結果を結果オペランドに反映させ、メ
イン・アダー及び周辺回路部分のピッ)幅を縮小するよ
5Kしたものであ1゜さらに、結果オペランドv8ノ(
イトとした揚台、メイン・アダーv7/<イトとし、残
る1バイトなスピイル・アダーの結果の1バイトで補う
こともできる。
(6) !明の効果
以上の説明から明らかなよ5に、本発明によれば、乗数
奮デコードするデコーダ、マルチプル・グー)、C8ム
トリおよびスピル・アダーを有する複数の乗算部分を有
すると共に、上記各乗算部分から出力されるすムとキャ
リーとが時分割的に入力されるメイン−アゲ−において
、メイン・アダー及び周辺a絡部分のビット@を減少さ
せることが可能となる。[, 1 is the input register where the multiplicand is set, 2 is the input register where the multiplier is set, 3 is the multiplexer, 4 is the decoder,
S is a multiple fist gate, 6 and 7 rings C8, 8 is an intermediate register where a thumb is set, 9 is an intermediate register where a carry is set, 1G is a spill adder, 11 is a 7 rip flip, 1 and 2 are Carrie Pupagesi Sergeant Y.
・Main adder made by adder, 13 indicates the result register, respectively. In the example shown in FIG. 1, the large registers 1.2 each have a 4-byte configuration. The multiplier t3 is first translated into the lowest order pi) (byte s) * tia, and finally pi) Ol-
select. The byte information selectively output from the multiplexer 3 is input to the decoder 4. The output of the decoder 4 is fed into a multiple gamer 5. The multiple gate 5 generates four types of multipliers Kl, Kl, Kl, based on the decode signals of the decoder 4, and the multipliers are multiplied by 1, , multiplied by 1, and multiplied by K1. Multiply it by 4 and manually input it to C856. The thumb and medium cum output from the CB Muro are input to the C8 module 7. At this time, the upper 4 bytes of intermediate register 8 and the upper 4 bytes of intermediate register 9 are also input to CBB10. The sum and carry output from the C8 module 1 are respectively input to intermediate registers 8.9. The least significant byte of intermediate register 8 and the least significant byte of intermediate register 9 are input to spill adder 10. In addition, the spill adder 10 has a flip-flop 11
The contents of are also input. The carry output from the spill adder 10 is set in the 7-lip active 11. At a predetermined tie, the contents of intermediate register 8, intermediate register 9, and arrival flop 11 are input to main φ adder 12, and the output of main adder 12 is set to result register 1B. In FIG. 1, input register 1 has a 32-bit configuration, and input register 1 to multiple gates)! ! The path from the multiplexer 3 to the reader 4 also has a 32-bit F configuration, and the path from the multiplexer 3 to the reader 4 has an 8-bit configuration. Intermediate registers 8 and 9 have a 5-byte configuration, and the path width from intermediate register 8 to main adder 12 and the path width from intermediate register to main adder are 40 bits. The path from intermediate register 8 to the input of C8 and 7 has a 3-path configuration, and from intermediate register 9 to CBB1
The path leading to 0 input also has a 32-pits configuration. The output of the main adder 12 is composed of 5 pi), but the least significant byte is discarded and only the upper 4 pi are sedated into the result register 13. In addition, input registers 1 and 2,
Decoder 4, Multiple Game) Black, C8 Muro and 7, Intermediate Regis I8 and 9, Spill Adder 10 and Tsurig e
? ■The knob 11 constitutes the S calculation part. No.! The figure is a time chart showing the operation of the first II multiplier. In FIG. 2, M is a wave number #1%B is a multiplier sC is a result operand, respectively. ml
When the calculation is commanded, the number is 11 (1)
The multiplication of is started. In addition, ml (1) is multiplier B pi) (Xu, 1 (odd is multiplier 1 pi)), 10) is multiplier B byte 1, and B (4) is multiplier B pi) O. There is. In the φ block, the multiplication of M x B (2) is started, and the sum component 8U (1) of M X B (1) output from Cs and the component C M (1) is intermediate register 8
.. 9 respectively. In the case of ÷3, the multiplication of M X B (3) is started. In addition, the top 4 bytes of M -XI (A and A and! Material 8U (1) and the Carry Ingredients C (1) are the top 4 bytes of the carrier 8U (2) and the carry ingredient C and are set in the intermediate registers 8.9, respectively.Furthermore, the lowest byte of the 4-sum component 8U(1) and the lowest byte of the carry component CM(1) are added to obtain the carry 1-R. (1) is set to 7 rip/fusep 11. In ÷4 evening stomach ivy, M xll (430 multiplication is started. Also, AXB (3), the upper 4 bytes of the sum component BUt, and the carry component C The sum of the upper 4 bytes of the sum component S and U (7) is separated into a sum component 8U (3) and a carry component C M (column) and set in intermediate registers /g and 9, respectively. Carry R (where I is 7 lip) generated when adding the least significant byte and carry component Cm(ri) and carry R(υ)
It is set to 1. +l$t4/, u in it, AXB(4) and tA formation 88U
(The sum of the upper 4 bytes of 31 and the upper 4 bytes of carry component C (3) is the sum of the upper 4 bytes of U (4) and the carry component C (4), each separated into intermediate register 8 and fIK
-kvF is applied. In addition, thumb component 8U (bottom pie F of I
and the carry component Cm (the least significant byte of the phrase and the carry 1 (
The carry R(a) that occurs when adding the
It is set to 11. Furthermore, the pie adder 12 is activated, and the addition of the sum component 5U (4) S, the middle component Cmu (4 and the carry R (to)) is performed. throne of output 4
The byte is set in result register 13. By the way, the multiplication S for the vector φ opend consists of a plurality of multiplication parts as shown in the 111th part and one main part.
Already configured with adder! In this type of multiplier proposed in I, it is necessary to transfer the sum component and carry component of 40 bits from each multiplication part to the main adder, and the paths and selection gates Ii'? The disadvantage is that the configuration is very complex. (31 Object of the Invention') The present invention eliminates the above-mentioned drawbacks, and provides a plurality of multiplication parts each consisting of a decoder for decoding a multiplier, a multiple gate, a Csmut tree, and a spill adder, and a In a multiplier that has one main adder into which output sum components, carry components, and numerical data for accuracy guarantee are input, the configuration of peripheral parts such as buses and selection gates from each multiplication part to the main adder is explained. It is our intention to provide a multiplication method & provide a multiplication method which can simplify the pitch width of the lK main bit adder by reducing the pit width by 5Kt. Multiplier register where multiplier is set,
a multiplicand register in which a number is set; a decoder that decodes the bit data extracted from the multiplicand register; a multiple contest gate that calculates a multiple of the multiplier based on the decoding result of the data;
A carry save adder tree into which the multiple of the multiplier from the gauge is input, an intermediate register for the (m+1) Xs width width, where the sum component output from the carry save adder tree is set, the above carry The carry component output from the save adder tree is set (horse ◆ 1) x % bit width bottom layer middle layer and the above ^ period middle layer bottom layer middle layer) and the above carry layer middle layer. 7. A plurality of multiplication parts consisting of a spill adder into which the least significant outer bit of the signal is input, the contents of the intermediate register for the above-mentioned sum, the contents of the intermediate register for the above-mentioned carrier, and the operation of the spill adder. In a multiplier having a carry propagation adder into which the result is input, the input operands to be multiplied are sent, one multiplication part is selected, and each of the multiplicand register I and multiplier register of the multiplication part is Set the multiplicand and the multiplier BY, and in the external multiplication part, take out the i'4NA bit data B() from the multiplier register, and use the decoder to write the bit data L(). , calculate the multiple of the wave multiplier using the above multiple φ game, and use the above carry-save adder tree to calculate M Tersu^ Ingredients 5U (a-
Calculate the sum of 1) and the carry component C(1-1) stored in the image during the carry period, and obtain the sub-component gtr(t) and the carry component C(i). After completing the process of setting the sum intermediate register and the carry intermediate register, respectively, and (b) the process of the above p),
Thumb component 8U of the above five-layer intermediate register I (bottom 1)
bit and the lowest 1 bit of the carry intermediate register are input to the spill adder, and the accuracy guarantee carry R(i-1) obtained in the previous cit! 'The above spill adder is manually loaded and the operation results are stored in ascending order for each of the first tome bit φ data to the first audience bit data of the multiplier register. After the above processes U) and 2) for the th audience bit data are completed, the carry propagation adder is used to add the contents of the sum intermediate register, the carry intermediate register, and the spill adder. The sum V of the calculation results is calculated as VlI mold. (5) Embodiments of the invention The present invention will be described below with reference to the drawings. FIG. 3 is a boot diagram of one embodiment of the present invention, and #I4 is a time chart showing its operation. In Figure 183, 1-1 and 1-8 are large registers, 2
-1 and 2-2 are also large registers, and 3-1 and 3-2 are! luteplex, 4 is data, s-1 and 5-2 are multiple gates, 6-1 and 6-2 are C&M, 7-1 and 7-2 are also C8, 8-1 and 8-2 are Sam. intermediate registers are set, 9-1 and 9-2 are intermediate registers where intermediate registers are set, 10-1 and 10-2 are spill adders, 11-
1 and 11-2 are 7 lip-flops, 12' is the main
13 is the result register, 14 is the final sum register, 1s is the final carry register, and 16 is the multiplexer, input registers 1-1 and 2- respectively.
1, multiplexer 3-1, decoder 4-1, multiple gate 5-1, C3A6-1 and 7-1, intermediate V
The I8-1 bit 9-1, the spill adder 1O-1 and the 7rip 7a tube 11-1 form the first multiplication part vIl, and similarly the large power registers 1-2 and 2-2, the multiplexer 3 -2, Desodor 4-2, Multiple gate 5-2, C3A6-2 and 7-2, Intermediate registers 8-2 and 9-2, Spill adder 10-2, Yohiflip 70
The knob 11-2 constitutes a second multiplication section. The first multiplication section and the second multiplication section have the same structure as the multiplication section of FIG. final sum register 1
4 is set to the upper 4 bytes of the final sum component of intermediate register 8-1 or 8-2. The final carry register 15 contains intermediate registers 9-1 or 9-! The upper 4 bytes of the final carry component of I are set. final sum e
Register 14 has a 4-byte configuration, and final carry register 15 also has a 4-byte configuration. multiplexer 16
selects and outputs the precision guarantee carry of 7 ripples 11-1 or 11-2. The main adder 12' contains the contents of the final sum register 14 and l&
Member Carey Regis 11 & contents and! Lutepre/! 16
The output and the input are input. The main adder 121 is 32 bits wide. The output of main adder 12' is set to result register IIK. FIG. 4 is a time chart showing the operation of the embodiment shown in FIG. As shown in No. 4111, first, the multiplicand AI
and multiplier B1 are input into the first multiplication section, and two cycles later, multiplicand A2 and multiplier B2 are input into the 20th multiplication section. First, the multiplication of AlXB1 will be explained. #l clock 2 starts multiplication of AlXB1[). At #2 clock, multiplication of AIXBl(2) is started, and AIXB1(2) output from C3A7-1 is started.
11 sum component S U 1 (1) and carry component C'
AI(1) is set in intermediate registers 8-1 and 9-1, respectively. At clock #3, multiplication of AIXBIQ31 is started. Also, A I X B 1 (21 and sum component 5U
(11 upper 4 bytes and carry component S A 1 (1
), the sum of the top four (ite) is the sum component S U 1 (2)
and the carry component CA1(2) is separated from the intermediate register 8.
-1.9-1 respectively. Furthermore, the sum component S U 1 (11 least significant bytes and the carry component C
A carry R1 (1) obtained by adding the least significant byte of A 1 (11) is set in the 7-lip flop 11-1. At the #4 clock, multiplication of AIXBl (4) is started. A t x B 1 (3) and the sum component S
The upper 4 bytes of U 1 (2) and the carry component Cmu 1 (
The sum of the phantom top four pies) is separated into sum component 8U1 (phrase and carry component CAl(3)K) and stored in intermediate register 8-1.9.
-1 respectively. Furthermore, Sam component 8U1
(21 least significant byte and carry component CA 1 (a)
Carry R1 (So is 7 rip-flops 11-1
is set to +5 cycles, M I
The sum of the upper 4 bytes of the data is separated into a sum component 8 U 1 (4) and a carry component CA 1 (4), which are each set in intermediate registers 18-1.9-1. Least significant byte and carry component CA 1
(The carry R1 (3) that occurs when adding the lowest byte of 39 and the carry R1 (3) is 7, and the
l-IK is set. In the $69 cycle, the upper 4 bytes of the sum component 8 U 1 (4) are set in the final sum register 14, and the upper 4 bytes of the carry component CA 1 (4) are set in the final life balance register 15#c. . In FIG. 4, X indicates the register 14, and Y indicates the register rsv. Also, the least significant byte of the sum component 8 U 1 (4) and the carry component Cmu 1 (the least significant of 4) (ite and carry R1 (8) & the carry R1 that occurs when added
(4 is put into the 7-lip a7ay-p1l-IK-, and the flip-flop 11-1 is set by the multiple converter 16.
The contents of are selectively output. In addition, Mayy Adder 12
' is activated, sum component 5Ul(+), carry component C
A 1 (4) and accuracy guarantee cache 9-Rl (4) are added. At +7! lock, the output of the main adder 12I is loaded into the result register IIK-%!. The multiplication of 2
Although the control means for performing such control is not shown in FIG. 3, the above control is possible! -c can be negative from the control 111iK of the iku4pqdaram or the bell logic. As is clear from a comparison between the multiplication device of FIG. 1 and the embodiment of FIG. c8
The pitch width has been reduced by a bit. By using Spill-77-10-1 and 10-2 for 4t cycles, the 1 point (ite σ) truncation performed in the 1st II σ) main adder 12 can be performed, and the bill adder 1
0-1.10-! This is because you are doing one force. If the 5:1 multiplication device has a plurality of multiplication parts as shown in FIG.
It is necessary to select the final sum and carry components of each multiplier and enter them into the main adder 12'; The present invention utilizes this selection cycle to select each spill adder 10.
-1.The result of 10-2 is reflected in the result operand, and the pitch width of the main adder and peripheral circuit part is reduced by 5K.
It is also possible to make the main adder v7/< it and supplement it with the 1 byte resulting from the remaining 1 byte spill adder. (6)! As is clear from the above description, the present invention has a plurality of multiplication parts each having a multiplier decoder, a C8 multiplier, and a spill adder. In the main game where the sum and carry outputted from the main adder and the carry are input in a time-divisional manner, it is possible to reduce the bits of the main adder and the peripheral a-contact portion.
第1図は従来の乗算装置のブーツク図、第2図はその動
作を示すタイムチャート、第3図は本発明のl実施例の
プ■ツタ図、第4図はその動作を示すタイムチャートで
ある、ヵ
1−1と1−2・・・入力レジスタ、2−1と2−2・
・・入力レジスタ、3−1と8−2−・・マルチプレフ
ナ、4−・デコーダ、5−1と5−2・・・マルチプル
eゲー)、6−1と6−2−C8ム、γ−1と7−2・
・・CSム、8−1と8−2・・・サムがセットされる
中間レジスタ、9−1と9−!!・・・キャリーがセッ
トされる中間レジスタ、1G−1と10−2・・・δビ
ル・アダー、11−1と11−2・・・フリップ@ 7
Elツブ、12′・・・メイン・アダー、13・・・
結果レジスタ、14・・・最終サムeレジスj1.15
・・・最終キャリー・し°ジスタ、16・・・マルチプ
レクサ。
特許出願人 富士通株式金社
代理人弁理士 京 谷 四 部
′−X1 図
茜早大へ・ラシド
1+FI m12 1F3 11F4 $5 書
61 4111 件’l 菩10CLKIILII
IIIIIFIG. 1 is a boot diagram of a conventional multiplication device, FIG. 2 is a time chart showing its operation, FIG. 3 is a printer diagram of an embodiment of the present invention, and FIG. 4 is a time chart showing its operation. There are 1-1 and 1-2...input registers, 2-1 and 2-2.
・・Input register, 3-1 and 8-2・・・Multiple front panel, 4-・Decoder, 5-1 and 5-2・・・Multiple e-game), 6-1 and 6-2-・C8 system, γ -1 and 7-2・
...CS, 8-1 and 8-2... Intermediate registers where sum is set, 9-1 and 9-! ! ...Intermediate register where carry is set, 1G-1 and 10-2...δ Bill Adder, 11-1 and 11-2...Flip @ 7
El tube, 12'...Main adder, 13...
Result register, 14...Final sum e register j1.15
...Final carry register, 16...Multiplexer. Patent Applicant Fujitsu Kinsha Patent Attorney Kyotani 4'-X1 To Akane Waseda University Rashid 1+FI m12 1F3 11F4 $5 Book 61 4111 cases'l Bodhisattva 10CLKIIILII
III
Claims (1)
×nビットの被乗数がセラ)される被乗数レジスタ、上
記被乗数レジスタの中から取出された絡ビットのデータ
をデコードするデーーダ、上記デ冨−ダのデコード結果
に基づいて乗数の倍数を算出するマルチプル・ゲート、
上記マルチプルΦゲートからの乗数の倍数が入力される
桁上げ保存加算器トリー、上記桁上げ保存加算器トリー
から出方されるサム成分がセットされる(霞◆五)×酪
ビツシ輻のすム崩中間レジスタ、上記桁上げ保存加算器
トリーから出力されるキャリー成分がセットされる(襲
+1)×鶴ピッ)幅のすム用中間しジスI及び上記サム
層中間しジメIの最下位弗ビツシと上記キャリー用中間
レジスタの最下位酪ビットが入力されるスピル・アダー
から構成される複数個の乗算部分、並びに上記サム用中
間レジスタの内容、上記キャリー用中間レジスタの内容
および上記、スピル・アダ、−の演算結果が入力される
キャリー伝播加算器を有する乗算装置r−おい【、乗算
すべき入力オペランドが送られ【来たとぎ、1個の乗算
部分を選択し″c#NA咳乗算部分の被乗数レジスタお
よび乗数レジスlのそれぞれに砿乗数ムおよび乗数Bt
−セットし、mlI乗算部分の中において、(へ)上記
乗数レジスIから第一番8v襲ビツシ・データB(りを
龜出し、上記デ;−ダな用い−(Sビット・デー/B(
りをデコードし、上記マルチプル・ゲートを用いて上記
被乗数ムの倍数を求め、上記桁上げ保存加算器シリ−を
用いてムX1l(s)と上記サム用中間レジスタに格納
され【いるすム成分5U(t−1)と上記キャリ一層中
閣しジスメに格納され【いる゛キャリー成分Cム(−−
1)の和を算出し、このIIII呆得られるすム・成分
11U(j)とキャリー成分Cム(j)をそれぞれVA
N中間中間レジスキャリー用中間しジスメにセラ)する
処理と、(ロ)上記H)の処理の終了後、上記ずム用中
間レジスタのす^成分8U(りの最下位路ビットとL記
キャリー用中間レジスタの最下位路ビットを上記スピル
・アダーに人力すると共に前のナイクルで得られた精度
保証用キャリーR(1−1)を上記スピル・アダーに人
力し、その演算結果を記憶する処理とを、上記乗数レジ
スタの第1番目の絡ビツシ・データないし側風番目の絡
ビットΦデーメのそれぞれについて昇順で行い、上記藁
番目の襲ピツシ・データに対する上記ヒ)、(ロ)の処
理が終了した後、上記桁上げ伝播加算器を用いて上記サ
ム用中間レジスタの内容、上記キャリー用中間レジスタ
の内容および上記スピル−アダーの演算結果の和を求め
るととV特徴とする乗算方式。[Scope of Claims] A multiplier register in which the multiplier of book x dairy bits is 7 IF), a multiplicand register in which the multiplicand of trout x n bits is set in IF), a multiplicand register in which the multiplicand of trout x n bits is set as IF), and data of the interlocking bit taken out from the multiplicand register is decoded. a multiple gate that calculates a multiple of the multiplier based on the decoding result of the decoder;
A carry-save adder tree into which the multiple of the multiplier from the multiple Φ gate is input, and a sum component output from the carry-save adder tree is set (Kasumi ◆ 5) x Dairy convergence sum. The carry component output from the carry-save adder tree is set in the collapse intermediate register, the intermediate register I for the sum of the width (+1) x Tsuru Pi, and the lowest cross register of the sum layer intermediate register I. A plurality of multipliers are constructed of a spill adder into which the bit and the least significant bit of the carry intermediate register are input, as well as the contents of the sum intermediate register, the contents of the carry intermediate register, and the spill adder. A multiplication device with a carry propagation adder into which the result of the operation of adda, - is input. The multiplicand register and multiplier register l of the part are filled with a multiplier and a multiplier Bt, respectively.
- set, and in the mlI multiplication part, (to) the first 8th bit bit data B (receiver) from the multiplier register I, and the above data bit data/B (
The multiple gate is used to find the multiple of the multiplicand, and the carry-save adder series is used to store the multiplicand X1l(s) and the intermediate register for sum. 5U (t-1) and the above carry is stored in the middle layer and the carry component C (--
1), and calculate the sum component 11U(j) and the carry component C(j) obtained by VA respectively.
After completing the processing for N intermediate intermediate register carry, and (B) the processing in H) above, the sum component 8U of the intermediate register for ZUM (lowest path bit of R and L carry A process of manually inputting the least significant bit of the intermediate register for use in the spill adder, inputting the accuracy guarantee carry R (1-1) obtained in the previous Nicle to the spill adder, and storing the calculation result. are carried out in ascending order for each of the first bit bit data or the side bit bit Φdeme of the multiplier register, and the above processes (a) and (b) for the first bit bit Φdeme are performed on the first bit bit Φdeme of the multiplier register. After completion of the multiplication, the carry propagation adder is used to calculate the sum of the contents of the intermediate register for sum, the contents of the intermediate register for carry, and the operation result of the spill adder.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP56199554A JPS58101343A (en) | 1981-12-11 | 1981-12-11 | Multiplication system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP56199554A JPS58101343A (en) | 1981-12-11 | 1981-12-11 | Multiplication system |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS58101343A true JPS58101343A (en) | 1983-06-16 |
JPS6250853B2 JPS6250853B2 (en) | 1987-10-27 |
Family
ID=16409752
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP56199554A Granted JPS58101343A (en) | 1981-12-11 | 1981-12-11 | Multiplication system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS58101343A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4811269A (en) * | 1985-10-09 | 1989-03-07 | Hitachi, Ltd. | Bit slice multiplication circuit |
US5136537A (en) * | 1991-11-19 | 1992-08-04 | Advanced Micro Devices, Inc. | Method and apparatus for determining the product of two numbers |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5638590U (en) * | 1979-08-31 | 1981-04-11 |
-
1981
- 1981-12-11 JP JP56199554A patent/JPS58101343A/en active Granted
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5638590U (en) * | 1979-08-31 | 1981-04-11 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4811269A (en) * | 1985-10-09 | 1989-03-07 | Hitachi, Ltd. | Bit slice multiplication circuit |
US5136537A (en) * | 1991-11-19 | 1992-08-04 | Advanced Micro Devices, Inc. | Method and apparatus for determining the product of two numbers |
Also Published As
Publication number | Publication date |
---|---|
JPS6250853B2 (en) | 1987-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5790446A (en) | Floating point multiplier with reduced critical paths using delay matching techniques | |
US6115729A (en) | Floating point multiply-accumulate unit | |
US4754421A (en) | Multiple precision multiplication device | |
US4866652A (en) | Floating point unit using combined multiply and ALU functions | |
US3993891A (en) | High speed parallel digital adder employing conditional and look-ahead approaches | |
US4156922A (en) | Digital system for computation of the values of composite arithmetic expressions | |
KR840006089A (en) | Combination processor | |
US5253195A (en) | High speed multiplier | |
JPS62194577A (en) | Complex multiplier and complex multiplication | |
US4769780A (en) | High speed multiplier | |
JPS6125245A (en) | Rounding process circuit | |
US5957999A (en) | Booth multiplier with squaring operation accelerator | |
JPS60140429A (en) | Decimal notation multiplier system | |
US5661673A (en) | Power efficient booth multiplier using clock gating | |
US4677583A (en) | Apparatus for decimal multiplication | |
JPS58101343A (en) | Multiplication system | |
JPH07107664B2 (en) | Multiplication circuit | |
US3840727A (en) | Binary multiplication by addition with non-verlapping multiplier recording | |
US5724280A (en) | Accelerated booth multiplier using interleaved operand loading | |
EP0534760A2 (en) | High speed multiplier device | |
JP3227538B2 (en) | Binary integer multiplier | |
US5684731A (en) | Booth multiplier using data path width adder for efficient carry save addition | |
US4685077A (en) | Data processing apparatus having binary multiplication capability | |
JPH0578049B2 (en) | ||
GB2230627A (en) | Recursive processor for multiplication |