JPS61246837A - 並列乗算器 - Google Patents

並列乗算器

Info

Publication number
JPS61246837A
JPS61246837A JP60087741A JP8774185A JPS61246837A JP S61246837 A JPS61246837 A JP S61246837A JP 60087741 A JP60087741 A JP 60087741A JP 8774185 A JP8774185 A JP 8774185A JP S61246837 A JPS61246837 A JP S61246837A
Authority
JP
Japan
Prior art keywords
data
adder
addition
partial products
stage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP60087741A
Other languages
English (en)
Inventor
Shigeru Tanaka
茂 田中
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP60087741A priority Critical patent/JPS61246837A/ja
Publication of JPS61246837A publication Critical patent/JPS61246837A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/533Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even
    • G06F7/5334Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even by using multiple bit scanning, i.e. by decoding groups of successive multiplier bits in order to select an appropriate precalculated multiple of the multiplicand as a partial product
    • G06F7/5336Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even by using multiple bit scanning, i.e. by decoding groups of successive multiplier bits in order to select an appropriate precalculated multiple of the multiplicand as a partial product overlapped, i.e. with successive bitgroups sharing one or more bits being recoded into signed digit representation, e.g. using the Modified Booth Algorithm
    • G06F7/5338Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even by using multiple bit scanning, i.e. by decoding groups of successive multiplier bits in order to select an appropriate precalculated multiple of the multiplicand as a partial product overlapped, i.e. with successive bitgroups sharing one or more bits being recoded into signed digit representation, e.g. using the Modified Booth Algorithm each bitgroup having two new bits, e.g. 2nd order MBA

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)

Abstract

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

Description

【発明の詳細な説明】 [+発明の技術分野〕 この発明は集積回路で実現するのに適したディジタルの
並列乗算器に関する。
[発明の技術的背景とその問題点] ディジタルの乗算を高速で実行する方式として、乗数、
被乗数から生成される部分積を多数の全加算器を使用し
て加算する並列乗算方式がよく知られている。この並列
乗算方式における演算の高速化に有効な手段として、加
算の方式を工夫することにより加算の段数を減少させる
ことが考えられる。部分積の数を減少させて部分積の加
算段数を減少させる方式には従来からよく知られている
クラス(Wa I l ace>のトリーという方式が
あり、この方式を採用すれば通常の全加算器をアレイ状
に配列する方式に比較して、加算段数を大幅に減少させ
ることができる。しかし、ワラスの方式による加算では
乗算器の構成が規則的でなくなるため、集積回路化の際
の設計に多大の手間と時間を必要とする欠点がある。こ
のため、集積回路化に適した規則性の高い構成であり、
かつ高速な並列乗算器が求められている。
[発明の目的〕 この発明は上記のような事情を考慮してなされたもので
ありその目的は、集積回路化に適した規則性の高い構成
であり、かつ高速な並列乗算器を提供することにある。
[発明の概要1 高速に乗算を実行するための方法として知られているブ
ース(3ooth)のアルゴリズムは、nxnビットの
乗算を行なう際に生成される部分積の数をn/2とする
ことができ、高速化に有効であることが知られている。
そこでこの発明ではこのブースのアルゴリズムを用いて
、nxnビットの乗算を行なう際に生成されるn/2組
の部分積の加算を並列に実行し、これらの加算結果をア
レイ状に配列した3人力2出力の全加算器の一つの入力
として供給し、他の全加算器の入力として対応する他の
全加算器の出力を供給するように構成している。
[発明の実施例] 1以下、図面を参照してこの発明の一実施例を説明する
第1図はこの発明に係る並列乗算器を、被乗数が×1・
・・x16からなる16ビツト、乗数がyl・・・y1
6からなる16ビツトの16ビツト×16ビツトの乗算
を行なうものに実施した場合の回路構成を示すブロック
図である。この実施例回路ではまず、第2因に示すよう
に、ブースのアルゴリズムに従って、被乗数×1・・・
x16、乗数y1・・・y16からal・・・a1γ、
bl・・・bl7、・・・hl・・・htlからなるそ
れぞれ17ビツトの8組の部分積Z1・・・z8を生成
する。そしてこれら8組の部分積z1・・・Z8のうち
任意の二組の組合わせに対してまず加算を実行する。こ
の実施例ではzlと75、Z2と26、z3とz7、Z
4とZ8というように、第に番目と第{K+ (8/2
))番目のものをCLA (キャリー・ルック・アヘッ
ド)方式の加算器により加算するようにしている。
上記のような各二組の部分積の生成および部分積の加算
を実行するのが、第1図において符号11ないし14で
示される第1段目ないし第4段目の演算ブロックである
。上記第1段目の演算ブロック11から出力される各ビ
ットデータは、アレイ状に配列された第1段目の複数の
各全加算器15にそれぞれ入力データの一つとして供給
される。なお、演算ブロック11から出力される最下位
ビットおよびその1ビツト上位のデータは2個の全加算
器15で構成された2ビツトのCLA方式の加算器16
に供給されている。上記第1段目の複数の全加算器15
および加算器16のうち下位12ビツトまでのものには
他の入力データとして2の補数生成および符号ピットの
ためのPl・・・Pl2からなる補正データが乗数に応
じて供給されている。上記第2段目の演算ブロック12
から出力される各ビットデータは、アレイ状に配列され
た第2段目の複数の各全加算器15にそれぞれ入力デー
タの一つとして供給される。この場合も演算ブロック1
2から出力される最下位ビットおよびその1ビツト上位
のデータは2個の全加算器15で構成された2ビツトの
CLA方式の加算器16に供給されている。そしてこれ
ら第21段目の複数の各全加算器16および加算器16
には他の入力データおよび桁上げデータとして上記第1
段目の対応する全加算器15および加算器16の和出力
データSおよび桁上げ出力データCが供給されている。
同様に第3段目以降の演算ブロック13.14から出力
される各ビットデータは、アレイ状に配列された第3段
目、第4段目の複数の各全加算器15および加算器16
にそれぞれ入力データの一つとして供給される。そして
これら第3段目、第4段目の複数の各全加算器15およ
び加算器16には他の入力データおよび桁上げデータと
して第2段目、第3段目の対応する全加算器15および
加算器16の和出力データおよび桁上げ出力データが供
給されている。そして第4段目の複数の各全加算器15
の和出力データおよび加算出力データ、加算器16の桁
上げ出力データのうち必要なデータがCLA方式の加算
器17に供給されている。
第3図は上記演算ブロック11ないし14それぞれの具
体的構成を示す回路図である。図において21.22が
それぞれ一つの部分積7を生成する部分積生成部である
。この両部分積生成部21.22はそれぞれ17個のデ
ータセレクタ23で構成されている。上記部分積生成部
21.22内のそれぞれ11個のデータセレクタ23の
うち最下位ビットおよび最上位ビットのものを除くもの
には入力データとして被乗数×1・・・×16のうちそ
れぞれビットの隣合った一対のビットデータが供給され
、最下位ビットには入力データとして最下位ビットの被
乗数×1のみが、最上位ビットには入力データとして最
上位ビットの被乗数X16のみがそれぞれ供給されてい
る。そしてこの部分積生成部21.22で生成された二
組の部分積は加算器24に供給され、ここで二組の部分
積の加算データが生成される。なお、この演算ブロック
では前記のように8組の部分積Z1・・・z8うち、第
に番目と第{K+ (8/2))番目のものを加算する
ために、二つの部分積生成部21.22で生成される部
分積データが必要なピット数だけずらされた状態で加算
器24に供給されている。
上記各データセレクタ23には選択用のデータとして乗
数y1・・・y16に基づいて生成されるそれぞれ複数
ビットからなるデータ81、S2が供給されており、各
データセレクタ23はこれらデータS1もしくはS2に
応じてxi、xi−1、xi、xi−”l、Qもしくは
1の固定値のいずれか一つを選択的に出力する。ここで
ブースのアルゴリズムに従った部分積とは、上記のよう
に被乗数をXとしたときに生成される部分積がX、−X
、2x、−2X、Oもしくは1のいずれかであることを
いう。
このような構成の並列乗算器では、第1段目ないし第4
段目の演算ブロック11ないし14それぞれからは前記
のような2組の部分積の和である26ビツトのデータが
出力される。これに対応して全加算器15を第1段目な
いし第4段目に2次元的に配置し、各全加算器15の入
力データとして対応する段の演算ブロックから出力され
る部分積の和である26ビツトのデータと上位段の全加
算器15の和出力データおよび桁上げ出力データを供給
して加算を行ない、最終的な加算を加算器17で行なう
ことにより乗算を実行している。
ここで上記のような16ビツトxIGビツトの乗算を例
にすれば、通常のブースのアルゴリズム用いた乗算器で
は、全加算器のデータ通過時間をT (FA) 、最終
段のCLA加算に要する時間をT (CLA)とすれば
全体の乗算時間はおよそ8xT (FA)+T (CL
A)となるが、上記実施例によれば 4xT (FA)+T (CLAI )+T (CLA
2>となる。上記時間T (CLAI )、T (CL
A2)はそれぞれ第3図回路の加算器24で要する加算
時間、第1図回路の加算器17で要する加算時間である
。ここでT(CLA)とT (CLAl )、T (C
LA2)は同程度の時間であり、4XT (FA)に比
較してT (CLAl )もしくはT (CLA2)は
十分短いので、従来に比較して演算の大幅な高速化が達
成できる。また、回路の規則性が高い構成なので集積回
路化する際の設計も容易に行なうことができる。
また第1段目ないし第4段目の演算ブロック11ないし
14で加算する部分積の組合せを第に番目と第{K+ 
(8/2))番目にしているので、部分積生成部21.
22で生成される部分積データを加算する加算器24で
は2ビツト入力の加算を行なう部分のビット数を最小に
でき、これにより加算器24自体の構成も簡単にするこ
とができる。
第4図はこの発明の他の実施例の構成を示すブロック図
である。この実施例では前記のような2ビツトのCLA
方式の加算器16を用いずに、全加算器15を用いて桁
上げ出力データおよび和出力デ    □−夕を上段か
ら下段に伝達するようにしたものである。
なお、この発明は上記実施例に限定されるものではなく
種々の変形が可能であることはいうまでもない。例えば
上記実施例ではこの発明を16ビットメ16ビツトの乗
算器に実施した場合について説明したが、任意のビット
数のものにも実施が可能であることはいうまでもない。
さらに全加算器15の配列の仕方および接続方法につい
ても種々の変形が可能であることはいうまでもない。
[発明の効果] 以上説明したようにこの発明によれば、集積回路化に適
した規則性の高い構成であり、かつ高速な並列乗算器を
提供することができる。
【図面の簡単な説明】
第1図はこの発明の一実施例の回路構成を示すブロック
図、第2図は上記実施例回路においてブースのアルゴリ
ズムに従って生成される部分積を示す図、第3図は上記
実施例回路の一部分を具体的に示す回路図、第4図はこ
の発明の他の実施例の回路構成を示すブロック図である
。 11、12.13.14・・・演算ブロック、15・・
・全加算器、16、17・・・加算器、21.22・・
・部分積生成部、23・・・データセレクタ、24・・
・加算器、Z・・・部分積。

Claims (4)

    【特許請求の範囲】
  1. (1)乗数および被乗数の値に応じて2組の部分積を生
    成する部分積生成手段およびこの部分積を加算する加算
    手段を備えた演算ブロックを乗数もしくは被乗数のビッ
    ト数に応じた数だけ配置し、上記各演算ブロックの加算
    出力を一つの加算入力とする全加算器を必要な数だけ配
    列し、これら各全加算器の他の加算入力として他の演算
    ブロックからの加算出力が供給される他の全加算器の桁
    上げ出力および和出力を供給するように構成したことを
    特徴とする並列乗算器。
  2. (2)前記部分積生成手段がキャリー・ルック・アヘッ
    ド方式を用いた加算器である特許請求の範囲第1項に記
    載の並列乗算器。
  3. (3)前記部分積生成手段がブースのアルゴリズムに基
    づいて部分積を生成するように構成される特許請求の範
    囲第1項に記載の並列乗算器。
  4. (4)前記部分積の数がN(ただしNは偶数)であると
    き、前記演算ブロック内の加算手段で加算される二つの
    部分積が第K番目と 第{K+(N/2)}番目のものである特許請求の範囲
    第1項に記載の並列乗算器。
JP60087741A 1985-04-24 1985-04-24 並列乗算器 Pending JPS61246837A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60087741A JPS61246837A (ja) 1985-04-24 1985-04-24 並列乗算器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60087741A JPS61246837A (ja) 1985-04-24 1985-04-24 並列乗算器

Publications (1)

Publication Number Publication Date
JPS61246837A true JPS61246837A (ja) 1986-11-04

Family

ID=13923351

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60087741A Pending JPS61246837A (ja) 1985-04-24 1985-04-24 並列乗算器

Country Status (1)

Country Link
JP (1) JPS61246837A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5477479A (en) * 1993-03-08 1995-12-19 Nkk Corporation Multiplying system having multi-stages for processing a digital signal based on the Booth's algorithm
KR960042334A (ko) * 1995-05-15 1996-12-21 김주용 병렬 독립 다중비트 가산기
CN107977191A (zh) * 2016-10-21 2018-05-01 中国科学院微电子研究所 一种低功耗并行乘法器

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5477479A (en) * 1993-03-08 1995-12-19 Nkk Corporation Multiplying system having multi-stages for processing a digital signal based on the Booth's algorithm
KR960042334A (ko) * 1995-05-15 1996-12-21 김주용 병렬 독립 다중비트 가산기
CN107977191A (zh) * 2016-10-21 2018-05-01 中国科学院微电子研究所 一种低功耗并行乘法器
CN107977191B (zh) * 2016-10-21 2021-07-27 中国科学院微电子研究所 一种低功耗并行乘法器

Similar Documents

Publication Publication Date Title
US4168530A (en) Multiplication circuit using column compression
US4901270A (en) Four-to-two adder cell for parallel multiplication
US4864528A (en) Arithmetic processor and multiplier using redundant signed digit arithmetic
JPH0375901B2 (ja)
JPH0157814B2 (ja)
US4745570A (en) Binary multibit multiplier
US4910701A (en) Split array binary multiplication
US4706211A (en) Digital multiplying circuit
JPH0831025B2 (ja) 乗算回路
JPH0368416B2 (ja)
EP0862110A2 (en) Wallace-tree multipliers using half and full adders
US4843585A (en) Pipelineable structure for efficient multiplication and accumulation operations
JPS61246837A (ja) 並列乗算器
JP3227538B2 (ja) 2進整数乗算器
US4190894A (en) High speed parallel multiplication apparatus with single-step summand reduction
US6622154B1 (en) Alternate booth partial product generation for a hardware multiplier
EP0326414A2 (en) High speed multiplier
KR100265355B1 (ko) 마이크로프로세서에서 2사이클 파이프라인방식으로 부동소수점 데이터를 곱셈 연산하는 장치
US6004022A (en) Product sum operation apparatus
JPS6355627A (ja) 半導体論理演算装置
JPS6378229A (ja) 乗算器の単位回路
JP3461252B2 (ja) 乗算方法
JP2744299B2 (ja) 演算処理装置及び方法
CN117555514A (zh) 一种乘法器
JP2728958B2 (ja) 演算処理装置及び方法