JPH01302426A - 高速並列乗算回路 - Google Patents

高速並列乗算回路

Info

Publication number
JPH01302426A
JPH01302426A JP63297174A JP29717488A JPH01302426A JP H01302426 A JPH01302426 A JP H01302426A JP 63297174 A JP63297174 A JP 63297174A JP 29717488 A JP29717488 A JP 29717488A JP H01302426 A JPH01302426 A JP H01302426A
Authority
JP
Japan
Prior art keywords
bits
column
matrix
bit
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
Application number
JP63297174A
Other languages
English (en)
Other versions
JPH056892B2 (ja
Inventor
Matthew J Adiletta
マシュー ジェイ アディレッタ
Stephen C Root
スティーヴン シー ルート
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.)
Digital Equipment Corp
Original Assignee
Digital Equipment Corp
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 Digital Equipment Corp filed Critical Digital Equipment Corp
Publication of JPH01302426A publication Critical patent/JPH01302426A/ja
Publication of JPH056892B2 publication Critical patent/JPH056892B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • G06F7/53Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel
    • G06F7/5318Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel with column wise addition of partial products, e.g. using Wallace tree, Dadda counters

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

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 産業上の利用分野 本発明は、高速並列乗算回路に係る。
従来の技術 2進乗算においては、Nビットの被乗数[A=(a、a
、  ・・・a )]にMビットの乗数n   n−1
1 [B=(b、b   、  ・・・b )]を乗算する
こra     m−11 とによってN+Mビットの積[P=(p   、 pI
I+nIII+ n−1、・・・p )]が形成される。この乗算のやり
方が第1図に示されており、積Pは被加数マトリクス1
の対応するエレメントの和として示されている。被加数
マトリクス1は、部分積のM×Nのオリジナル入力又は
被加数マトリクスビットを有しており、その各々は、乗
数及び被乗数ビットの別々の対の論理積である。
被加数マトリクスビットの加算を単一論理レベルで行な
って積Pを得ようとする場合には、各列ごとの並列加算
回路を用いることによってこのような和を得ることがで
きる。第i番目の加算器(第i番目の列)への入力は、
第i番目の列におけるオリジナル被加数マトリクスビッ
トを含んでいると共に、下位加算器からの桁上げ出力も
含んでいる6被加数マトリクスを加算するこの方法は、
多数の欠点がある。先ず、第1に、非常に多数の入力に
対して並列な加算器を設けることは回連である。第2に
、最下位ビット位置から最上位ビット位置へ並列加算器
の連鎖に沿って桁上げが伝播す乞と共に最下位ビット位
置から最上位ビット位置へ各ビットの加算を順次に行な
わねばならないので多量の遅延を伴うことになる。それ
故、被加数マトリクスのこの加算方法を用いて2進乗算
を行なうのに必要な全時間は甚だしく長いものとなる。
 。
デジタルコンピュータが2進乗算を実行する速度を高め
るために多数の試みがなされている。
これらの試みは、被加数マトリクスビットの加算を加速
することが含まれる。一般に、このような試みは、「減
少(reduction) 」と称する反復演算に集約
され、これは、和が積に等しくなるような2行のビット
(即ち加数)まで被加数マトリクスビットの数を減少す
る。この減少法は、一般に、被加数マトリクスの別々の
列に各々対応する多数の論理「レベル」の加算回路を用
いている。このような加算回路は、例えば、3つの入力
から和及び桁上げビットを発生する全加算器と、2つの
入力から和及び桁上げビットを発生する半加算器とを備
えている。各論理レベルの減少内では桁上げ伝播が許さ
れず、従って、多数の加算を逐次ではなくて同時に行な
うことができる。被加数マトリクスを2行のビットに減
少するときには、これら2つの行を全桁上げ伝播加算器
へ入力して積を得ることができる、それ故1桁上げ伝播
は最後の段階に限定され、高速回路によって実行するこ
とができる。
多入力の並列加算器ではなくて全加算器及び半加算器を
使用することにより、2進乗算を実行するに要する時間
が著しく低減される。全加算器5がオペランドA、B及
びCに対して第2A図に示されており、これは1次の2
つの式によって定義することができる。
SUM=A  XORB  XORC CARRY=(A AND 、B)OR(B  AND
  C)OR(A AND  C) 半加算器12がオペランドA及びBに対して第2B図に
示されており、これは1次の2つの式によって定義する
ことができる。
SUM=A  XORB CARRY=A  AND  B 第2A図に示すように、全加算回路5は、ビットA、B
及びCを受け取るように接続されて和(SUM)ビット
を出力する3入力の排他的オアゲート6と、3つの2入
力アンドゲート7ないし9と、桁上げ(CARRY)ビ
ットを出力する3入力オアゲート10とに等価である。
アンドゲート7はビットB及びCを受け取るように接続
され、アンドゲート8はビットA及びBを受け取るよう
に接続され、そしてアンドゲート9はビットA及びCを
受け取るように接続される。アンドゲート7.8及び9
からの出力は、オアゲート10の入力となる。
第2B図に示すように、半加算回路12は、ビットA及
びBを受け取るように接続されて和ビットを出力する2
入力の排他的オアゲート14と、ビットA及びBを受け
取るように接続されて桁上げビットを出力する2入力ア
ンドゲートとに等価である。4つ以上の入力を有する並
列加算器の論理的な定義は非常に複雑である。それ故、
並列な加算器は一般的に製造が困難である。
上記の原理を利用した1つの公知の被加数マトリクス減
少機構がr I E E E  Transactio
nson Electronic Computers
J  (1964年2月)第13巻、第14号に掲載さ
れたC、S、ワラース氏の「高速乗算器についての提案
(A Suggestionfor a Fast M
ultiplier)Jに述べられており、これは、マ
トリクスの各列における被加数マトリクスビットを3ビ
ツトのグループに分類し、そして全加算器を用いて3ビ
ツトのグループを加算するか又は所与の列に2ビツトし
か残っていない場合には半加算器を使用することを提案
している。加算器は、同じ列に対する和ビットと、次の
上位ビットを有する列に対する桁上げビットとを発生す
る。ビットのグループは、各列において加算され(和及
び桁上げビットを手前のグループから後でグループ分け
することを含む)やがて被加数マトリクスが2列のビッ
トに減少される。その一方の列は和ビットの列を表わし
そしてもう一方の列は桁上げビットの列を表わす1次い
で、2つの列が通常の桁上げ伝播加算器へ入力され、こ
の加算器は、桁上げルックアヘッド設計に基づいて高速
加算演算を実行することができる。
ワラス(Wallace)減少法のルールは、列をでき
るだけ即座に且つできるだけ多量に減少すると共に、で
きるだけ多数の全加算器を使用することである。ワラス
の被加数減少法が5×5ビツトの乗算回路について第3
図に示されている。被加数マトリクスのオリジナル入力
は、第1図に示されたように+ alb、、a、bい等
々で表わされている。5×5マトリクスを2つのビット
列に減少するには、3つの論理的な減少レベルが必要で
ある。
第1の論理的な減少レベルであるレベル1においては、
少なくとも3つのビットを有する被加数マトリクスの各
列が3ビツトのグループに分割され、そして3ビツトの
各グループが全加算器へ入力される。例えば、aより2
、a2b、及びa3b工が全加算器15に入力され、該
加算器は和のビットと桁上げビットとを発生する。これ
らのビットは第2の論理的な減少レベル、即ちレベル■
にあるゲートへ入力される。このように、3つの入力ビ
ットがレベル■の2つの出力ビットに減少される。同様
に、a、 b、、a3b2及びa4b□が全加算器17
に入力され、該加算器は和のビットと桁上げビットとを
発生する。更に、a、b、、a4b2及びasb工が全
加算器19に入力され、該加算器は和のビットと桁上げ
ビットとを出力する。更に、alb5及びa4b、は列
5に残され、半加算器25へ入力され、該半加算器は和
のビットと桁上げビットとを出力する。a3b4、a4
b=及びasb2が全加算器21に入力され、該加算器
は和のビットと桁上げビットとを発生する。又、a、b
、、a。
b4及びasb3が全加算器23に入力され、該加算器
は和のビットと桁上げビットとを出力する。
レベルIゲートからの全ての和のビット及び桁上げビッ
トは、レベル■のゲートに入力される。
レベル■の減少においては、全加算器27がその入力と
して被加数マトリクスのオリジナル入力であるa1b4
と、全加算器17からの和のビットと、全加算器15か
らの桁上げビットとを受け取る。これらの入力から、全
加算器27は和のビット及び桁上げビットを発生し、こ
れらは、第3の論理的な減少レベルであるレベル■のゲ
ートへ送られる。同様に、全加算器29はその入力とし
て全加算器17からの桁上げビットと、全加算器19か
らの和のビットと、半加算器25からの和のビットとを
受け取り、和のビット及び桁上げビットを発生する。こ
れらのビットはレベル3のゲートへ送られる。全加算器
31はその入力として半加算器25からの桁上げビット
と、全加算器19からの桁上げビットと、全加算器21
からの和のビットとを受け取り、そしてその出力として
和のビット及び桁上げビットを発生する。これらのビッ
トはレベル■、のゲートに送られる。最終的に、レベル
■において、全加算器33はその入力としてオリジナル
の被加数入力a、bs及びasb+(これらは2つの入
力しかもたない列の一部分である)と、全加算器23か
らの桁上げビットとを受け取り、そしてその出力として
和のビット及び桁上げビットを発生する。これらのビッ
トはレベル■のゲートへ送られる。レベル■の減少の後
に、はとんどの列には2ビツトしか残らない。これらに
ついては、これらの残りのビット数に基づいて全加算器
又は半加算器を用いて更に別の減少レベルが必要とされ
る。
レベル■の減少においては、半加算器35がその入力と
して被加数マトリクスのオリジナル入力であるa、b、
と、全加算器31からの和のビットとを受け取り、そし
てその出力として和のビット及び桁上げビットを発生す
る。全加算器37は、その入力として、全加算器23か
らの和のビットと、全加算器21からの桁上げビットと
、全加算器31からの桁上げビットとを受け取り、そし
てその出力として和のビット及び桁上げビットを発生す
る。レベル■においては、オリジナルの被加数マトリク
スが1組の2列のビットに減少される。
これらの残りのビットは、次いで、桁上げルックアヘッ
ド加算器40へ入力されて積を形成する。
第3図に示されたように、10個の全加算器と2個の半
加算器とを用いてオリジナルの被加数マトリクスが2列
のビットに減少される。被乗数及び乗数のビット数が増
加するにつれて、被加数のマトリクスを減少するに必要
な加算器の数も増加する。又、この減少機構を実施する
には多量のハードウェア及び配線が必要とされることに
より、種々の減少論理レベルにある加算器へ入力を供給
することが困難になるために問題が生じる。ハードウェ
ア及びワイヤが増加する結果として、ハードウェア及び
ワイヤに生じる遅延が増加し、ワイヤの分布密度が非均
−になりそして信号送給機構が複雑になるために、実行
速度が低下する。
更に別の公知の被加数マトリクス減少機構がrAlta
 FrequenzaJ  (1965年3月)第34
巻に掲載されたり、ダッダ氏のr並列乗算器のための幾
つかの機構(Some Scheme For Par
allelMultipliers) Jに掲載されて
おり、これは、各々の論理的な減少レベルにおいて被加
数マトリクスから最/J%数の入力しか減少すべきでな
いと仮定している。このダッダ氏の機構は、被加数マト
リクスを2行のビットに減少するという目標で始まる。
次いで、ダッダ氏の機構は、逆方向に作用し、3行の減
少から2行が得られ、3行が6行から変換され、6行を
9行から減少することができ、9行が13行から変換さ
れ、13行が19行から変換され、等々となることを計
算する。従って、この機構は1次の級数を形成する。
2;3;6;9;13;19;28;42;63・・・ この機構は、各々の論理的な減少レベルにおいて。
全加算器及び半加算器を用いることにより列を上記級数
の中の次に低い数のポイントへのみ減少すべきであるこ
とを仮定している。この機構は、第1の論理的な減少レ
ベルにおいて少数のゲートしか使用しない。この機構の
目標は、第3図を参照して述べた第1の減少機構よりも
全ゲート数を少なくして速度を上げることである。
第2の減少機構が第4図に示されている。レベル■の減
少においては、半加算器50がその入力としてasbl
及びa4b、を受け取り、そして和のビット及び桁上げ
ビットを出力し、これらはレベル■のゲートへ送られる
レベル■の減少においては、半加算器54が入力として
a、b2及びa4b工を受け取り、そして和のビット及
び桁上げビットを出力し、これらはレベル■のゲートへ
送られる。全加算器56は、その入力としてa 2 b
 4s a s b□及び半加算器50からの和のビッ
トを受け取り、そして和のビット及び桁上げビットを出
力する。全加算器58は、その入力として、a3b、と
、半加算器52からの和のビットと、半加算器50から
の桁上げビットとを受け取り、そして和のビット及び桁
上げビットを出力する。全加算器60は、その入力とし
て。
a4 b 4 + a 5 t) 2及び半加算器52
からの桁上げビットを受け取り、そして和のビット及び
桁上げビットを出力し、これらはレベル■のゲートへ送
られる。
レベル■の減少においては、半加算器62がその入力と
してa2b2、a2b□を受け取り、そして和のビット
及び桁上げビットを出力する。全加算器64は、その入
力としてa 1b 4s a 2 b 3及び半加算器
54からの和のビットを受け取り、そして和のビット及
び桁上げビットを出力する。全加算器66は、その入力
としてalbい全加算器56からの和のビット及び半加
算器54からの桁上げビットを受け取り、そして和のビ
ット及び桁上げビットを出力する。全加算器68は、そ
の入力としてa2bい全加算器58からの和のビット及
び全加算器56からの桁上げビットを受け取り、そして
和のビット及び桁上げビットを出力する。
全加算器70は、その入力としてa、b5、全加算器6
0からの和のビット及び全加算器58がらの桁上げビッ
トを受け取り、そして和のビット及び桁上げビットを出
力する。全加算器72は、その入力としてa4b5、a
、b4及び全加算器60からの桁上げビットを受け取り
、そして和のビット及び桁上げビットを出力する。この
ようにして、被加数マトリクスは、1組の2行のビット
に減少され、これは、桁上げルックアヘッド加算器74
へ入力されて、オリジナルの被乗数及び乗数の積が形成
される。
この構成においては、第4図に示すように。
非常に多数のオリジナルの被加数マトリクスビットが桁
上げルックアヘッド加算器74へ直接入力されるように
保持される。第3図を参照して上記した減少機構の場合
よりも少数のオリジナルの被加数マトリクスビットがレ
ベル■の加算器に入力される。この機構は、8個の全加
算器及び4個の半加算器を用いて、5X5の被加数マト
リクスを2行の数に減少する。この設計を実施するに必
要なハードウェアの量は、第3図に示した機構の場合よ
り少ないが、加算器への入力の供給及び回路の配線は、
依然として非常に複雑であり、実行遅延を招く。
発明が解決しようとする課題 ワラス及びダッダ氏の両方の考え方は、高速2進乗算回
路の必要性を認めている。然し乍ら、どちらの考え方も
、全加算器ではなくて多数の半加算器を用いて速度を高
めると共に所要スペースを減少する効果については認め
ていない、半加算器は、全加算器に勝る多数の効果を有
している。
例えば、全加算器は非常に複雑で且つ低速の装置である
から、多数の半加算回路を用いると、全被加数減少に関
連した伝播遅延が低減される。更に、全加算回路ではな
くて半加算回路を用いると、ゲート配置のために回路板
上に要求される面積が低減される。というのは、半加算
回路は、全加算回路に必要とされる面積のはVl/4L
、か必要としないからである。又、半加算回路は全加算
回路よりも所要電力が少ない。更に、上記のいずれの考
え方も、ワイヤの交差及び被加数マトリクス減少のため
のゲートへの入力の引き回しに関連した問題を認識して
いな°い。
課題を解決するための手段 そこで、本発明の目的は、少数のハードウェア及びワイ
ヤと、多数の半加算器とを使用し、高速被加数マトリク
ス減少演算を実行し、且つ容易に効率的に実施できる設
計になった高速並列2進乗算回路を提供することである
本発明の更に別の目的及び効果は、以下の説明に部分的
に述べ、以下の説明から部分的に明らかとなり、或いは
本発明を実施することによって学習することができよう
。又、本発明の目的及び効果は、特許請求の範囲に特に
指摘された手段やその組み合わせによって実現及び達成
することができよう。
ここに実施し且つ広範に述べる本発明の目的を達成する
ために、Mビットの乗数とNビットの被乗数との積を得
るための2進乗算回路は、2進乗算手段と、減少回路手
段と、桁上げ伝播全加算手段とを具備しており、上記2
進乗算手段は、その入力が乗数及び被乗数を受け取るよ
うに接続されていて、M×Nのオリジナル被加数マトリ
クスビットと、M行及びM+N列とを有する被加数マト
リクスを形成し、上記列の各々は、上記積における異な
ったビット位置を表わしそして上記積の上昇するビット
位置に基づいて位が決められ、上記減少回路手段は、上
記2進乗算手段に接続されていて、上記被加数マトリク
スビットから2つの加数を発生し、上記減少回路手段は
、オリジナル被加数マトリクスビットを受け取るように
接続された第1レベル加算回路を含んでおり、該第1レ
ベル加算回路は、第1組の全加算器を含み、その各々は
、3つのオリジナル被加数マトリクスビットしかもたな
い最下位ビット位置を表わす1つの列を除いて、3つ又
はそれ以上のオリジナル被加数マトリクスビットを有す
る被加数マトリクスの選択された列に対応し、全加算器
の各々は、対応する列から3つの異なったオリジナル被
加数マトリクスビットを受け取るように接続され、そし
てその列に対する和のビットと1次の上位ビット位置を
表わす列に対する桁上げビットとを発生する手段を含ん
でおり、上記第1レベル加算回路は、更に、第1組の半
加算器を備えており、その各々は、3つのオリジナル被
加数マトリクスビットしかもたない最下位ビット位置を
表わす列の1つに対し、最初に4つ以上のオリジナル被
加数マトリクスビットを有すると共に上記第1組の全加
算器の1つに接続されていない厳密に2つのオリジナル
被加数マトリクスビットを有している被加数マトリクス
の選択された列に対応し、半加算器の各々は、それに対
応する列から2つの異なるオリジナル被加数マトリクス
ビットを受け取るように接続され、そしてその列に対す
る和のビットと、次の上位ビット位置を表わす列に対す
る桁上げビットとを発生する手段を備えており、上記減
少回路手段は、更に、上記第1組の半加算器又は全加算
器によって受け取られないオリジナル被加数マトリクス
ビットか又は上記第1組の全加算器及び半加算器からの
和及び桁上げビットかのいずれかを受け取るように接続
された中間レベルの加算回路とを備えており、この中間
レベルの加算回路は。
複数の異なったレベルに編成されていると共に、対応す
る列及びレベルに対し、上記第1組の半加算器又は全加
算器によって受け取られないオリジナル被加数マトリク
スビットと、その手前のレベルの入力ではない和及び桁
上げビットとを含む列ビットを受け取り、更に、上記中
間レベルの加算回路は、3つのオリジナル被加数マトリ
クスビットしかもたない最下位ビット位置を表わす対応
するレベルにある列の1つを除いて4つ以上の列ビット
を有する列の選択された1つとレベルの1つとに各々対
応する複数の全加算器を備えており、各レベルにある全
加算器の各々は、対応する列に対する3つの列ビットを
受け取るように接続され、そしてその列に対する和のビ
ットと、次の上位ビット位置を表わす列に対する桁上げ
ビットとを発生する手段を含んでおり、更に、上記中間
レベル加算回路は、複数の半加算器も備えており、その
各々は、中間レベルの各々において上記第1組又は中間
レベル加算回路からの複数の全加算器の少なくとも1つ
がその列と、いずれの全加算器にも接続されないでいる
厳密に2つのビットとに対応するところの列の選択され
た1つ及びレベルの1つに対応し、且つ又、3つのビッ
トしか残っていない最下位ビット位置を表わす各レベル
における列の1つに対応し、半加算器の各々は、対応す
る列に対する2つの列ビットを受け取るように接続され
、更に、複数の半加算器の各々は、その列に対する和の
ビットと、次の上位ビット位置を表わす列に対する桁上
げビットとを発生する手段を備えており、そして上記桁
上げ伝播全加算手段は、上記中間レベル加算回路からの
出力である加数を入力として受け取って積を形成する。
実施例 本明細書の一部分を構成する添付図面には、本発明の一
実施例が示されており、これを参照して本発明の原理を
詳細に説明する。
対応する素子が同じ参照番号で示された添付図面を参照
しながら、本発明の好ましい実施例を詳細に説明する。
本発明の2進乗算回路は、半加算器の使用を最大にする
ことにより高速被加数マトリクス減少演算を実行するも
ので、これは、簡単な入力引き回し機構を用いることに
より少数のワイヤで容易に且つ効率的に実施することが
できる。本発明の被加数マトリクス減少演算は、最も低
い論理減少レベルにおけるオリジナル被加数マトリクス
ビットをできるだけ減少して、必要とされるワイヤの本
数を最小限にするものである。本発明の乗算回路は、和
及び桁上げベクトルの最大数の最下位ビットを、最終的
な和及び桁上げベクトルが計算される前の1つのゲート
遅延において、桁上げ伝播全加算回路へ供給するように
動作する。これにより、本発明では、2つの桁上げ伝播
全加算器を用いて最終的な2行のビットを加算すること
ができる。その一方の加算器はMビット巾であり、もう
一方の加算器はNビット巾である。最下位ビット位置は
、それより上位のビット位置よりも1ゲ一ト遅延分だけ
早くに一方の加算器へ入力され、これら上位ビット位置
を2つの行に対して減少する際の伝播遅延を、これらビ
ットを桁上げ伝播加算器に入力する前に補償する。これ
により、動作速度が高められる。
第5図は、Mビットの乗数とNビットの被乗数との積を
得るための本発明による2進乗算回路の好ましい実施例
を示す一般的なブロック図である。第5図は、本発明の
詳細な説明を表わすもので、本発明の位置的な実施に何
部制約を課するものではく、これについては、第7図を
参照して詳細に説明する。本発明によれば、2進乗算回
路は、乗数及び被乗数を受け取るように接続された入力
を有する2進乗算手段を備えており、該手段は、M×N
のオリジナル被加数マトリクスビット及びM+N列を有
する被加数マトリクスを発生し、各々の列は、積におけ
る別々のビット位置を表わしそして積の増加するビット
位置に従って位が決められる。
第5図に示されたように、乗算回路100は、乗数ag
a4aiazaxと、被乗数bsb、b、b、b。
を入力として受け取り、そして5行及び10列のオリジ
ナル被加数マトリクスビットの被加数マトリクスを発生
する。各々のオリジナル被加数マトリクスビットは、第
1図に示すように、1ビツトの乗数と1ビツトの被乗数
の異なった組合せについての論理積演算の結果を表わし
ている。
本発明は、オリジナル被加数マトリクスビットを、2行
のビット(即ち、加数)が得られるような点まで減少す
るために次のようなルールを用いる。即ち、1つの行は
和のビットを表わし、そしてもう1つの行は桁上げビッ
トを表おす。それらの和は、オリジナルの乗数と被乗数
との積に等しい。本発明によれば、2進乗算回路は、被
加数マトリクスビットから2つの加数を発生するために
2進乗算手段に接続された減少回路手段を備えている。
この減少回路手段は、オリジナルの被加数マトリクスビ
ットを受け取るように接続された第1レベルの加算回路
を備えている。この回路は、第1組の全加算器を備えて
おり、その各々は、3つのオリジナル被加数マトリクス
ビットしがもたない最下位ビット位置を表わす列を除い
て、3つ或いはそれ以上のオリジナル被加数マトリクス
ビットを有する被加数マトリクスの列の選択された1つ
に対応する。各々の全加算器は、それに対応する列から
3つの別々のビットを受け取るように接続され、そして
その列に対する和のビットと、次の上位ビット位置を表
わす列に対する桁上げビットとを発生する手段を含んで
いる。
又、第1レベルの加算回路は、第1組の半加算回路も備
えており、その各々は、3つのオリジナル被加数マトリ
クスビットしかもたない最下位ビット位置を表わす列の
1つに対し、最初に4つ以上のオリジナル被加数マトリ
クスビットを有すると共に上記第1組の全加算器の1つ
に接続されていない厳密に2つのオリジナル被加数マト
リクスビットを有している列のうちの選択された1つに
対応している。各々の半加算器は、対応する列から2つ
の別々のオリジナル被加数マトリクスビットを受け取る
ように接続される。又、半加算器は、その列に対する和
のビットと、次の上位ビット位置を表わす列に対する桁
上げビットとを発生する手段を備えている。
第5図に示すように、被加数マトリクスの列1は、1つ
のオリジナル被加数マトリクスビットa1b□しか含ん
でおらず、従って、この列は2ビツト又は1ビツトしか
ないので、それ以上の減少を必要とせず、更に、全加算
回路の使用も半加算回路の使用も必要としない。列2は
、2つのオリジナル被加数マトリクスビットaib2及
びa2b1を含むだけであるから、全加算器又は半加算
器を用いることによるそれ以上の減少は必要としない6
列3は、3つのオリジナル被加数マトリクスビットを含
んでおり、従って、半加算回路101を必要とする。と
いうのは、これが3つのオリジナル被加数マトリクスビ
ットしかもたない最下位ビット位置だからである。半加
算器101は、a、 bl及びa2b、を受け取るよう
に接続され、列3に対する( a 3 b 1XORa
 z b z) ニ等しい和のビットと、次の上位ビッ
ト位置を表わす列4に対する(a3b工AND azb
z)に等しい桁上げビットとを発生する。ここで、列3
は、2つのビット、即ち、半加算器101からの和のビ
ットと、オリジナル被加数マトリクスビットa1b、L
lか含まず、それ故、それ以上の減少は必要としない。
列4は、4つのオリジナル被加数マトリクスビットを含
んでおり、従ってa、 b、、a、b2及びa4b工を
受け取るように接続された全加算器102を使用する必
要がある。この全加算器102は、列4に対する(a2
b、XORa、b、XORa4b□)に等しい和のビッ
トと、列5に対する(azbzAND a、b、 AN
D a4b、)に等しい桁上げビットを発生する。ここ
で、列4は、次の論理的な減少レベルに対して3つのビ
ットに減少される。
列5は、5つのオリジナル被加数マトリクスビットを含
んでおり、従ってa、 b3、a4b2及びa、b工を
受け取るように接続された全加算器104を必要とする
。この全加算器104は、列5に対する(a、b、XO
Ra4b2XORa、bl)に等しい和のビットと、列
6に対する( 63 b 3 AND a 4b、 A
ND a、bl)に等しい桁上げビットを発生する。残
りの2つのオリジナル被加数マトリクスビットは、半加
算器110へ入力される。というのは、列5は、最初に
4つ以上のオリジナル被加数マトリクスビットを有して
おり、そしてレベル■の全加算器104に接続されない
厳密に2つのオリジナル被加数マトリクスビットを有し
ているからである。半加算器110は、alb、及びa
、b。
を受け取るように接続され、列5に対する和のビットと
、列6に対する桁上げビットとを発生する。
列6は、4つのオリジナル被加数マトリクスビットを含
んでおり、従って、全加算器106を必要とする。この
全加算器106はa2 b 4 + a 4b、及びa
sbzを受け取るように接続され、列6に対する(a3
b4XORa4b、XORasbz)に等しい和のビッ
トと、列7に対する(a、b4ANDa4b3 AND
 asbz)に等しい桁上げビットとを発生する。列6
からの残りの1つのオリジナル被加数マトリクスビット
a2b、は、レベル■減少のためのゲートへ送り込まれ
る。
列7は、3つのオリジナル被加数マトリクスビットしか
含んでいない。列7の減少には半加算回路を使用するこ
とができない。というのは、列3が厳密に3つのビット
を有する最下位列位置だからである。むしろ、全加算器
108が使用され、a、b、、a4b4及びasb3を
受け取るように接続され、列7に対する和のビットと、
列8に対する桁上げビットとを発生する。
列8は、2つのオリジナル被加数マトリクスビットを備
えている。これらのビットは、レベル■減少のためのゲ
ートへ送り込まれる。列9は、1つのオリジナル被加数
マトリクスビットを含んでおり、これもその後の減少レ
ベルのためのゲートへ送り込まれる。
又、本発明による2進乗算回路は、第1組の半加算器又
は全加算器によって受け取られなかったオリジナル被加
数マトリクスビットか或いは第1組の半加算器又は全加
算器からの和及び桁上げビットかのいずれかを受け取る
ように接続された中間レベル加算回路も備えており、そ
して対応する列及びレベルに対し、第1組の半加算器又
は全加算器によって受け取られなかったオリジナル被加
数マトリクスビットと、手前のレベルにおける入力では
なかった和及び桁上げビットとを含む列ビットを受け取
る複数の種々のレベルに編成される。中間レベルの加算
回路は、複数の全加算器を含み、その各々は、3つのオ
リジナル被加数マトリクスビットしかもたない最下位ビ
ット位置を表わす対応レベルにある列の1つを除いて、
4つ以上の列ビットを有する列のうちの選択された1つ
とレベルの1つとに対応し、各レベルにある全加算器の
各々は、対応する列に対する3つの列ビットを受け取る
ように接続される。複数の全加算器の各々は、その列に
対する和ビットと、次の上位ビット位置を表わす列に対
する桁上げビットとを発生するための手段を備えている
又、中間レベル加算回路は、複数の半加算器も備えてお
り、その各々は、各々の中間レベルにおいて、第1組又
は中間レベル加算回路からの複数の全加算器の少なくと
も1つがその列と、いずれの全加算器にも接続されてい
ない厳密に2つのビットとに対応するようになった列の
うちの選択された1つ及びレベルの1つに対応し、且つ
3ビツトしか残っていない最下位ビット位置を表わす各
レベルにおける列の1つの対応する。半加算器は、対応
する列から2つの列ビットを受け取るように接続される
。半加算器の各々は、その列に対する和ビットと1次の
上位ビット位置を表わす列に対する桁上げビットとを発
生する手段を備えている。これら中間レベルの加算回路
は、全ての列が2又はそれ以下のビットに減少されるま
で使用される。
第5図に示すように、列1.2及び3は既にレベル■に
おいて2又は1ビツトに減少されている。列4は、全加
算器102からの和ビットと、半加算器101からの桁
上げビットとを含んでいる。半加算器112は、これら
のビットを受け取るように接続され1列4に対する和の
ビットと、列5に対する桁上げビットとを発生する。こ
れで、列4は、2つのビット、即ち、オリジナル被加数
マトリクスビットaxb*と、半加算器112からの和
ビットとに減少され、従って、それ以上の減少を必要と
しない。
列5は、レベル■において、3つの列ビット、即ち、全
加算器102からの桁上げビット、半加算器110から
の和のビット及び全加算器104からの和のビットとを
含んでいる。これらのビットは全加算器114へ入力さ
れ、これは、列5の和ビット及び列6の桁上げピッ“ト
を発生する。列5は、これで、2つのビット、即ち、半
加算器112からの桁上げビットと全加算器114から
の和のビットとを含み、従って、それ以上の減少を必要
としない。
レベル■において、列6は、4つの列ビット。
即ち、オリジナル被加数マトリクスビットa、b。
と、全加算器106からの和のビットと、全加算器10
4からの桁上げビットと、半加算器110からの桁上げ
ビットとを含んでいる。それ故、3つのビット、即ち、
オリジナル被加数マトリクスビットa、b、と、全加算
器106からの和のビットと、全加算器104からの桁
上げビットとが全加算器116に接続れ、該加算器は、
列6に対する和のビットと、列7に対する桁上げビット
とを発生する。これで、列6は、3つのビットを含み、
これらは減少のためにレベル■へ送り込まれる。
レベル■において、列7は、2つの列ビット、即ち全加
算器108からの和のビットと全加算器106からの桁
上げビットとを含んでおり、これらは減少のためにその
後のレベルへ送り込まれる。
というのは、列7からの桁上げはレベル■において列7
へ入力され、従って、列7を更に減少する必要があるか
らである。
列8は、レベル■において、3つの列ビット、即ちオリ
ジナル被加数マトリクスビットa5b、と、オリジナル
被加数マトリクスビットa4b5と、全加算器108か
らの桁上げビットとを含んでいる。
これらのビットは全加算器117へ入力され、該加算器
は、列8に対する和のビットと、列9に対する桁上げビ
ットとを発生する。列9は、ここで、1ビツトとなる。
レベル■において、列1.2.3.4及び5は、2つ又
は1つの列ビットを有し、このレベルではそれ以上の減
少は必要とされない0列6は、3つのビットを含み、又
、3つのビットしか残らない最下位最上位ビット位置で
もある。それ故、半加算器118は、全加算器114か
らの桁上げビットと全加算器116からの和のビットと
を受け取るように接続され、列6に対する和のビット及
び列7に対する桁上げビットを発生する。列6は、ここ
で、半加算器110からの桁上げビットと半加算器11
8からの和のビットしか残らないので、2つのビットに
減少される。
レベル■において、列7は、3つの列ビット。
即ち全加算器116からの桁上げビットと、全加算器1
06からの桁上げビットと、全加算器108からの和の
ビットとを含んでいる。それ故、全加算器120は、こ
れらのビットを受け取るように接続され、列7に対する
和のビットと列8に対する桁上げビットとを発生する。
これで、列7は、全加算器120からの和のビットと、
半加算器118からの桁上げビットとを含んでいる。
レベル■において、列8は、全加算器117からの和の
ビットと、全加算器120からの桁上げビットとを含み
、それ故、2つ又は1つの列ビットを含み、それ以上の
減少を必要としない。列9は、全加算器117からの桁
上げビットとオリジナル被加数マトリクスビットa、J
とを含み、そして又2つ又は1つの列ビットも含んでい
る。
全ての列は2ビツト又は1ビツトに減少されているので
、それ以上の減少を行なうことはできない。残りのビッ
トは、積を形成するために加えられるべき2つの数即ち
加数であると考えられる。
本発明によれば、2進乗算回路は、上記中間レベル加算
回路からの出力である加数を入力として受け取って積を
形成するための桁上げ伝播全加算手段も備えている。第
5図に示されたように、桁上げ伝播全加算手段は、標準
的なM+Nビットの桁上げルックアヘッド加算器122
を備えており、この加算器は、桁上げ伝播全加算器の設
計の当業者に良く知られたように残りの加数を加算し。
そしてオリジナルの乗数及び被乗数の積に等しい和を出
力する。
本発明の2進乗算回路は、第3図及び第4図に示された
減少機構に比して非常に多数の半加算器を用いている。
この機構は、この多数の半加算器によって全体的な被加
数減少に関連した伝播遅延が低減されると共に、半加算
器の使用によってゲート配置のために回路装置上に必要
とされる面積及び乗算回路の消費電力が低減されるので
、効果的である。
本発明の減少機構は、試行錯誤により、M×NN−2N
−2+3個の全加算器と、M−1個の半加算器しか必要
としないことが決定された。但し1Mは乗算器のビット
数に等しく、そしてNは被乗数のビット数に等しい。乗
数が被乗数より多くのビットを有していないと仮定すれ
ば、この機構のもとてオリジナル被加数マトリクスの列
3ないしM及び列N+1の各々を減少するためには1個
の半加算回路しか使用されない。
論理的な減少レベルの数は、オリジナル被加数マトリク
スにおける行の数の整数Mを3で分割したものの2倍に
整数除算演算の他部分を加えたもの、即ち、2XINT
 (M/3)+REM (M/3)に等しい。
本発明の減少機構は、オリジナルの乗数及び被乗数が2
の補数の2進コードフォーマットで表わされているとき
又は大きさ2進コードフォーマットで表わされていると
きに使用できることに注意されたい。被乗数及び乗数が
2の補数の2進コードフォーマットで表わされていると
きには、被加数マトリクスを先ず「ボー/クーレイ(B
augh/すooley)の2の補数入力論理」を用い
ることによって変換しなければならない。2の補数の入
力論理の詳細な説明については、r I E E E 
 Trans−actions on Compute
rsJ  (1973年12月)の第C−22巻、第1
2号に掲載されたCボー及びBウーレイ氏の「2の補数
の並列アレイ乗算アルゴリズム(A Two’s Co
mplement Parallel ArrayMu
ltiplication Algorithm)Jを
参照されたい。
然し、乗数及び被乗数には正又は負の符号が組み込まれ
ているので、2の補数の乗算を実行するのは固層である
。それ故、負及び正の符号を有するオリジナル被加数マ
トリクスビットが存在する。
ボー/クーレイのアルゴリズムは、先ず、負の符号を有
する全てのオリジナル被加数マトリクスビットをマトリ
クスの最後の2行に配置する。このアルゴリズムでは、
anbi(i=1、”’m−1)及びaibm (i=
1.  ・・・n−1)の符号が負であると決められて
いる。従って、このアルゴリズムは、負の符号を有する
オリジナル被加数マトリクスビット(即ち、被加数マト
リクスの最後の2つの行に入れられたもの)を減算する
のではなく、これらの被加数マトリクスビットの否定型
を加えることができる。それ故、このアルゴリズムは、
2の補数の入力論理回路を用いて、負の符号を有する被
加数マトリクスピットの否定型を得ることができる。
2の補数の入力論理回路が第6図に示されており、列に
おける3つのオリジナル被加数マトリクスビットのうち
の2つ(B及びC)を受け取るように接続された2入力
アンドゲート130と。
該アンドゲートの出力と3つのオリジナル被加数マトリ
クスビットのうちの残りの1つ(ビットA)とを受け取
るように接続された2入力排他的オアゲート132とを
備えている。ゲート132からの出力は、次いで、その
後の論理的な減少レベルへ送り込まれる。
本発明の減少機構は、乗算回路が効果的なゲート配置パ
ターンを使用しているので1乗数及び被乗数におけるビ
ット数が増加するにつれて、より大きな効果を発揮する
。第7図は、本発明の回路の位置的な配置を示している
。第7図に示すように、第5図の乗算回路のゲート配置
の概念が三角形構成に変換され、ワイヤの交差を最小に
すると共に、回路装置をより効率的に使用するようにさ
れる。
ゲート配置のルールは、次の通りである。各列及び各論
理減少レベルについて必要とされる全加算器及び半加算
器が決定された後に、各加算回路は、その列の最も上の
位置において、その上の加算器に隣接するか又は回路板
上の加算器の開始レベルに達するまで配置される。例え
ば、全加算器117は、レベル■におけるその位置から
スタート位置まで移動される。というのは、その上に加
算回路がないからである。全加算器120は、全加算器
108に達するまで移動される。全加算器116は、全
加算器106に隣接するまで上方に移動され、そして半
加算器118は、全加算器116に隣接するまで上方に
移動される。半加算器112は、全加算器102に隣接
するまで上方に移動される。
ゲート配置についてのこのルールは、各レベルにおいて
実行される減少によって成る程度の遅延が生じるという
利点を利用するものである。その後のレベルの減少では
、そのゲートの入力の幾つかに対して手前の減少レベル
の結果を必要とするので、その後の減少レベルにおいて
ゲートの入力として使用されるべきオリジナル被加数ビ
ットを送給するのに伴う伝播遅延が、手前のレベルの減
少に伴う遅延に等しくなる。
又、各々の論理的な減少レベルは成る程度の遅延を招き
そして最後の2行のビットは最下位ビット位置から最上
位ビット位置へと次第に増加する遅延をもって発生され
るので、最後の2行の数の最下位列は、より上位の列の
減少がまだ行なわれている間に、桁上げ伝播加算器へ入
力される。
加算器において最下位列を加算するのに含まれる桁上げ
伝播遅延は、乗算器の減少レベルを通じて次第に増加す
る遅延によって重畳される。
第7図に示されたゲートの配置は、必要なワイヤの本数
及びワイヤの交差を最小にすると共に、入力を必要に応
じて加算回路へ容易に送り込めるようにする。ワイヤの
密度は、その設計全体にわたってより均一に分布させる
ことができ、これにより、負荷をより均一に分布できる
と共に、電力をより効率的に使用することができる。又
、このゲート配置のルールでは1回路装置において空間
をより効率的に利用できると共に、乗数及び被乗数にお
けるビットの数が増加するにつれてより優れた効果を奏
する。ゲート配置に対するこのルールと、被加数マトリ
クス減少に対するルールとの作用により、乗算演算を非
常に高速に実行することのできる並列乗算器が形成され
る。
第8図は、ワイヤの密度及び時間遅延を最小にするため
の32X32ビツトの被加数マトリクスの好ましいゲー
ト配置設計を示している。この図は、その側部に注目さ
れるもので、これまで列として説明されたものが第8図
では行として示されている。最も上の行は最上位ビット
位置を表わし、そして最も下の行は最下位ビット位置を
表わす。左側の列の数は、その数の右にある行における
オリジナル被加数マトリクスビットの数を表わしている
。中央の行は、オリジナル被加数マトリクスビットの最
大数を有しており、その上又はその下の行は、オリジナ
ル被加数マトリクスビットの次第に小さくなる数を有し
ている。左側の列の右にある行は、使用すべき実際のゲ
ートを表わしている。
1つの行に用いられる論理ゲートは、その位のビット位
置を減少するのに用いられる。論理的な減少レベルから
得られる和のビットは同じ行に配置され、そして桁上げ
ビットは次の上位行のビット位置に配置される。Yは、
ボーノウ−レイの2の補数入力論理によって変換される
べきオリジナル被加数マトリクスビットの入力を有する
レベル■のゲートを表わしている。Zは、オリジナル被
加数ビットと、ボーノウ−レイの2の補数入力論理に入
力されるべくレベル■減少から得られるビットの入力を
有するレベル■のゲートを表わしている。Aは、アンド
ゲートを表わしている。0は、オリジナル被加数マトリ
クスビットからの全ての入力を有するレベルIの全加算
器を表わしている。1は、オリジナル被加数マトリクス
ビット及びレベル■の減少から得られるビットを受け取
るように接続されたレベル■の全加算器を表わしている
。2は、オリジナル被加数マトリクスビットか、レベル
I減少から得られたビットか又はレベル■減少から得ら
れたビットかを受け取るように接続されたレベル■の全
加算器を表わしている。
3は、オリジナル被加数マトリクスビットか、レベルI
の減少から得られたビットか、レベル■の減少から得ら
れたビットか又はレベル■の減少から得られたビットか
のいずれかを受け取るように接続されたレベル■の全加
算器を表わしている。
4は、オリジナル被加数マトリクスビットか又はレベル
1.II、■又は■の減少から得られたビットを受け取
るように接続されたレベルVの全加算器を表おしている
。5は、オリジナル被加数マトリクスビットか又はレベ
ル■、■、IIl、rV又は■の減少から得られたビッ
トを受け取るように接iされたレベル■の全加算器を表
わしている。6は、オリジナル被加数マトリクスビット
を含むグループか又はレベル1.I[、■、■、■又は
■の減少から得られたビットを受け取るように接続され
たレベル■の全加算器を表わしている。7は、オリジナ
ル被加数マトリクスビットを含むグループか又はレベル
夏ないし■の減少から得られたビットを受け取るように
接続されたレベル■の全加算器を表わしている。
文字H1工、J、に、L、M及びNは、各々、レベル!
、■、■、■、■、■及び■の半加算機を表わしており
、これらは、オリジナル被加数マトリクスビットを含む
グループからの入力と、全加算器に対して上記したよう
に手前の論理的な減少レベルから得られたビットとを受
け取ることができる。
本発明の被加数マトリクス減少機構の前記の説明では、
全てのレベルIゲートが最初に配置され、次いで、全て
のレベル■ゲートが配置され、等々となるようなゲート
配置概念を述べたが、32×32ビツトマトリクスの実
際の構成は、このパターンに従うものではない、第8図
に示すように、特定の行内では、ゲートレベル数が常に
数字的に増加するものではない、M番目の行及びN番目
の列においては、更に別のボー/クーレイの2の補数入
力論理が符号操作に必要とされる。この更に別の論理は
、使用する半加算器のパターンにおいて減少機構を若干
変える必要がある。
乗算論理回路を回路装置上に取り付ける実際の考え方で
は、三角形の隅を切り取ることを必要とする。然し乍ら
、ワイヤの密度が最も高く且つ時間遅延が最も長い三角
形の中心はチップ内においてそのま\の状態に保たれる
。然し乍ら、それでもなお三角形による実施が望まれる
。というのは、試行錯誤により、ワイヤ密度及び時間遅
延の低下をもたらすことが示されているからである。
32X32ビツトの被加数マトリクスでは、本発明の減
少機構を用いるときに8個の論理的な減少レベルが必要
とされる6本発明のゲート配置に対するルールを使用す
るときには1乗算回路が現状のECL回路で実施される
と仮定すれば、5ナノ秒以内に被加数マトリクスを2つ
の加数まで減少することができる。これは、公知の減少
機構゛ からの著しい速度の増加をもたらす、このよう
な多数のオリジナル被加数マトリクスピットでは、ゲー
トの配置が非常に複雑なものとなる。然し乍ら、最初に
論理的な減少レベルを計算しそしてゲートをこの三角形
配置設計で配置することにより、2進乗算回路を、最小
量のワイヤと入力ビツトの容易な送給機構とによって容
易に且つ効率的に実施することができる。
第5図及び第7図に示されたように、本発明の2進乗算
回路は、第3図及び第4図の機構よりも多数の半加算器
を使用し、そして第7図に示されたように、最小量のワ
イヤと容易な入力送給機構とによって容易に且つ効率的
に実施することができる。本発明の2進乗算回路の設計
及びゲート配置では、2進乗算を行なう速度が高められ
ると共に、乗数及び被乗数のビット数が増すほど効果的
なものとなる。
本発明の上記方法及び装置においては本発明の範囲又は
精神を逸脱することなく種々の変更や修正がなされ得る
ことが当業者に明らかであろう。
従って、本発明は、特許請求の範囲に入る修正や変更及
びその等動物を包含するものとする。
【図面の簡単な説明】
第1図は、5ビツトの乗数及び5ビツトの被乗数から構
成された被加数マトリクスを示す図、第2A図は、全加
算器の論理回路及びブロック図、 第2B図は、半加算器の論理回路及びブロック図、 第3図は、被加数マトリクス減少の1つの従来の方法を
示すブロック図、 第4図は、被加数マトリクス減少の別の従来の方法を示
すブロック図。 第5図は、本発明の好ましい実施例による2進乗算回路
の部分を示すブロック図、 第6図は、本発明の減少回路に使用するための大きさエ
ンコードフォーマットに対して2の補数フォーマットで
表わされた従来のオリジナル被加数マトリクスピットの
回路を示す論理回路図、第7図は、第4図の2進乗算回
路に対し、本発明の好ましい実施例によるゲート配置及
び配線構成を示す図、そして 第8図は、32x32ビツト被加数マトリクスに対する
本発明のゲート配置及び配線構成を示す図である。 100・・・乗算回路 101.110,112,118・・・半加算器102
.104.106.108.114.116.120・
・・全加算器 122・・・桁上げルックアヘッド加算器拐= 帽 手続補正書く方式) 4.−3 平成元年  月  日 特許庁長官  吉 1)文 毅  殿     遍1、
事件の表示   昭和63年特許願第297174号2
、発明の名称    高速並列乗算回路3、補正をする
者 事件との関係  出願人 4、代理人 5、補正命令の日付  平成1年3月7日(門谷II−
又丈lよ、し−声

Claims (9)

    【特許請求の範囲】
  1. (1)Mビットの乗数とNビットの被乗数との積を得る
    ための2進乗算回路において、 2進乗算手段を具備し、その入力は上記乗数及び被乗数
    を受け取るように接続され、この乗算手段は、M×Nの
    オリジナル被加数マトリクスビットと、M行及びM+N
    列とを有する被加数マトリクスを形成し、上記列の各々
    は、上記積における異なったビット位置を表わしそして
    上記積の上昇するビット位置に基づいて位が決められ、
    更に、上記2進乗算手段に接続された減少回路手段を具
    備し、この減少回路手段は上記被加数マトリクスビット
    から2つの加数を発生し、上記減少回路手段は、オリジ
    ナル被加数マトリクスビットを受け取るように接続され
    た第1レベル加算回路を含んでおり、該第1レベルの加
    算回路は、第1組の全加算器を含み、その各々は、3つ
    のオリジナル被加数マトリクスビットしかもたない最下
    位ビット位置を表わす上記列の1つを除いて、3つ又は
    それ以上のオリジナル被加数マトリクスビットを有する
    被加数マトリクスの列のうちの選択された1つに対応し
    、全加算器の各々は、対応する列から3つの異なったオ
    リジナル被加数マトリクスビットを受け取るように接続
    され、そしてその列に対する和のビットと、次の上位ビ
    ット位置を表わす列に対する桁上げビットとを発生する
    手段を含んでおり、上記第1レベル加算回路は、更に、
    第1組の半加算器を備えており、その各々は、3つのオ
    リジナル被加数マトリクスビットしかもたない最下位ビ
    ット位置を表わす列の1つに対し、最初に4つ以上のオ
    リジナル被加数マトリクスビットを有すると共に上記第
    1組の全加算器の1つに接続されていない厳密に2つの
    オリジナル被加数マトリクスビットを有している被加数
    マトリクスの列のうちの選択された1つに対応しており
    、半加算器の各々は、それに対応する列から2つの異な
    るオリジナル被加数マトリクスビットを受け取るように
    接続され、そしてその列に対する和のビットと、次の上
    位ビット位置を表わす列に対する桁上げビットとを発生
    する手段を備えており、上記減少回路手段は、更に、上
    記第1組の半加算器又は全加算器によって受け取られな
    いオリジナル被加数マトリクスビットか又は上記第1組
    の全加算器及び半加算器からの和及び桁上げビットかの
    いずれかを受け取るよう接続された中間レベルの加算回
    路とを備えており、この中間レベルの加算回路は、複数
    の異なったレベルに編成されていると共に、対応する列
    及びレベルに対し、上記第1組の半加算器又は全加算器
    によって受け取られないオリジナル被加数マトリクスビ
    ットと、その手前のレベルの入力ではない和及び桁上げ
    ビットとを含む列ビットを受け取り、更に、上記中間レ
    ベルの加算回路は、3つのオリジナル被加数マトリクス
    ビットしかもたない最下位ビット位置を表わす対応する
    レベルにある列の1つを除いて4つ以上の列ビットを有
    する列の選択された1つとレベルの1つとに各々対応す
    る複数の全加算器を備えており、各レベルにある全加算
    器の各々は、対応する列に対する3つの列ビットを受け
    取るように接続され、そしてその列に対する和のビット
    と、次の上位ビット位置を表わす列に対する桁上げビッ
    トとを発生する手段を含んでおり、更に、上記中間レベ
    ル加算回路は、複数の半加算器も備えており、その各々
    は、中間レベルの各々において上記第1組又は中間レベ
    ル加算回路からの複数の全加算器の少なくとも1つがそ
    の列と、いずれの全加算器にも接続されないでいる厳密
    に2つのビットとに対応するところの列の選択された1
    つ及びレベルの1つに対応し、且つ又、3つのビットし
    か残っていない最下位ビット位置を表わす各レベルにお
    ける列の1つに対応し、半加算器の各々は、対応する列
    に対する2つの列ビットを受け取るように接続され、更
    に、複数の半加算器の各々は、その列に対する和のビッ
    トと、次の上位ビット位置を表わす列に対する桁上げビ
    ットとを発生する手段を備えており、そして 更に、上記中間レベル加算回路からの出力である加数を
    入力として受け取って積を形成する桁上げ伝播全加算手
    段を具備したことを特徴とする2進乗算回路。
  2. (2)上記全加算器の数は、M×N−2N−2M+3で
    ある請求項1に記載の2進乗算回路。
  3. (3)上記半加算器の数は、M−1である請求項1に記
    載の2進乗算回路。
  4. (4)1つの半加算回路のみを用いて、上記被加数マト
    リクスの列3ないしM及び列N+1の各々を減少させる
    請求項1に記載の2進乗算回路。
  5. (5)上記2進乗算手段は、上記乗数及び被乗数のビッ
    トの各別々の組合せに対して論理積演算を実行する回路
    を含んでいる請求項1に記載の2進乗算回路。
  6. (6)上記乗数の値及び被乗数の値は、2の補数の2進
    コードフォーマットで表わされる請求項1に記載の2進
    乗算回路。
  7. (7)上記乗数の値及び被乗数の値は、大きさの2進コ
    ードフォーマットで表わされる請求項1に記載の2進乗
    算回路。
  8. (8)複数の2の補数入力回路を更に具備し、該回路の
    各々は、3つのオリジナル被加数マトリクスビットのう
    ちの2つを入力として受け取るように接続された2入力
    アンドゲートと、上記対応するアンドゲートの出力及び
    上記3つのオリジナル被加数マトリクスビットの残りの
    1つとを入力として受け取るように接続された2入力の
    排他的オアゲートとを含んでいる請求項1に記載の2進
    乗算回路。
  9. (9)Mビットの乗数及びNビットの被乗数の積から被
    加数マトリクスを受け取りそしてこの被加数マトリクス
    を2つの加数に減少するように2進乗算回路の加算回路
    を構成する方法において、上記被加数マトリクスは複数
    の列を含み、その各々は、上記積における別々のビット
    位置を表わしそして上記積の上昇するビット位置に基づ
    いて位が定められ、上記方法は、 上記被加数マトリクスのサイズから、上記マトリクスを
    上記2つの加数に減少するに要する加算器のレベルの所
    要数を決定し、 上記列の各々に2つ又はそれ以下のビットしか残らない
    ように上記被加数マトリクスの各列を減少するための全
    加算器及び半加算器の所定数を、必要とされる上記レベ
    ルの各々に指定し、そして上記全加算器又は半加算器の
    各々を、各列の最も上の位置において、それがその上の
    全加算器又は半加算器に隣接するまで或いは乗算回路に
    おける全加算器及び半加算器の開始レベルに達するまで
    配置するという段階を備えたことを特徴とする方法。
JP63297174A 1987-11-24 1988-11-24 高速並列乗算回路 Granted JPH01302426A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US124926 1987-11-24
US07/124,926 US5159568A (en) 1987-11-24 1987-11-24 High speed parallel multiplier circuit

Publications (2)

Publication Number Publication Date
JPH01302426A true JPH01302426A (ja) 1989-12-06
JPH056892B2 JPH056892B2 (ja) 1993-01-27

Family

ID=22417458

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63297174A Granted JPH01302426A (ja) 1987-11-24 1988-11-24 高速並列乗算回路

Country Status (4)

Country Link
US (1) US5159568A (ja)
EP (1) EP0318223A3 (ja)
JP (1) JPH01302426A (ja)
CA (1) CA1295743C (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5146421A (en) * 1987-11-24 1992-09-08 Digital Equipment Corporation High speed parallel multiplier circuit
US5339447A (en) * 1989-11-17 1994-08-16 Texas Instruments Incorporated Ones counting circuit, utilizing a matrix of interconnected half-adders, for counting the number of ones in a binary string of image data
US5912832A (en) * 1996-09-12 1999-06-15 Board Of Regents, The University Of Texas System Fast n-bit by n-bit multipliers using 4-bit by 4-bit multipliers and cascaded adders
US6065033A (en) * 1997-02-28 2000-05-16 Digital Equipment Corporation Wallace-tree multipliers using half and full adders
US6122655A (en) * 1998-05-15 2000-09-19 Lucent Technologies Inc. Efficient use of inverting cells in multiplier converter
US8713085B1 (en) 2006-05-31 2014-04-29 Marvell International Ltd. Systems and methods for a signed magnitude adder in one's complement logic

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3691359A (en) * 1970-07-28 1972-09-12 Singer General Precision Asynchronous binary multiplier employing carry-save addition
US4463439A (en) * 1982-05-17 1984-07-31 International Business Machines Corporation Sum and carry outputs with shared subfunctions
US4736335A (en) * 1984-11-13 1988-04-05 Zoran Corporation Multiplier-accumulator circuit using latched sums and carries

Also Published As

Publication number Publication date
JPH056892B2 (ja) 1993-01-27
CA1295743C (en) 1992-02-11
EP0318223A2 (en) 1989-05-31
EP0318223A3 (en) 1991-01-02
US5159568A (en) 1992-10-27

Similar Documents

Publication Publication Date Title
US5465226A (en) High speed digital parallel multiplier
Fadavi-Ardekani M* N Booth encoded multiplier generator using optimized Wallace trees
US6029187A (en) Fast regular multiplier architecture
Ma et al. Multiplier policies for digital signal processing
US5790446A (en) Floating point multiplier with reduced critical paths using delay matching techniques
JP3244506B2 (ja) 小型乗算器
Abdelgawad et al. High speed and area-efficient multiply accumulate (MAC) unit for digital signal prossing applications
US4791601A (en) Parallel multiplier with a modified booth algorithm
US5504915A (en) Modified Wallace-Tree adder for high-speed binary multiplier, structure and method
US4831577A (en) Digital multiplier architecture with triple array summation of partial products
US5257218A (en) Parallel carry and carry propagation generator apparatus for use with carry-look-ahead adders
JPH05233228A (ja) 浮動小数点演算装置およびその演算方法
US5146421A (en) High speed parallel multiplier circuit
Yan et al. An energy-efficient multiplier with fully overlapped partial products reduction and final addition
JP3556950B2 (ja) 高速算術演算装置のけた上げ先見加算器段の数を減少させる構造及び方法
JPH01302426A (ja) 高速並列乗算回路
GB2263002A (en) Parallel binary adder.
US20040010536A1 (en) Apparatus for multiplication of data in two's complement and unsigned magnitude formats
JPH0552530B2 (ja)
US5586071A (en) Enhanced fast multiplier
EP0344226B1 (en) High-speed digital adding system
CA2055900C (en) Binary tree multiplier constructed of carry save adders having an area efficient floor plan
KR0152911B1 (ko) 병렬승산기
Ragunath et al. Delay optimized binary to BCD converter for multi-operand parallel decimal adder
Nagendra et al. Digit systolic algorithms for fine-grain architectures