JPH06103299A - 積和演算器 - Google Patents

積和演算器

Info

Publication number
JPH06103299A
JPH06103299A JP24918792A JP24918792A JPH06103299A JP H06103299 A JPH06103299 A JP H06103299A JP 24918792 A JP24918792 A JP 24918792A JP 24918792 A JP24918792 A JP 24918792A JP H06103299 A JPH06103299 A JP H06103299A
Authority
JP
Japan
Prior art keywords
accumulation
carry
result
product
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.)
Pending
Application number
JP24918792A
Other languages
English (en)
Inventor
Takashi Yano
隆 矢野
Koji Kojima
浩嗣 小島
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP24918792A priority Critical patent/JPH06103299A/ja
Publication of JPH06103299A publication Critical patent/JPH06103299A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

(57)【要約】 【目的】乗算結果を高速に累算する積和演算器を提供す
る。 【構成】部分積生成回路3により得られる乗数と被乗数
との論理演算の結果としての部分積と、累算レジスタ5
に保存されている直前までの累算の途中結果とを、単一
のウォレスツリー4で一括して加算し、その結果とし
て、桁上げを保留して各桁が最も多い桁については複数
のビットの和とし表される加算結果を新たな累算の途中
結果としてレジスタ6に入力する。 【効果】累算を伴う積和演算において、累算を高速に実
行することができる。累算は一つの演算結果出力を得る
ために複数回実行される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は乗算とその乗算結果の累
積とを行う積和演算器に関する。
【0002】
【従来の技術】積和を行う場合、完全な二進表現の乗算
結果と、もう一つの完全な二進表現の入力とを加え、積
和の結果を完全な二進表現で得る構成が一般的である。
この構成では、乗算及び、積和結果を完全な二進表現に
変換するため、2回にわたり下位の桁から上位の桁に桁
上げ信号が伝播する。桁上げ信号の伝播には一般的に時
間がかかるため、この構成により乗算結果の累積を行う
と演算に長い時間を要する。これに対して、従来、特開
平3−220668号公報に示される方法によりこの問
題に対処していた。
【0003】図2に、この方法を用いた6×6ビットの
乗算結果を累算する積和演算器の例を示す。乗数入力
1、被乗数入力2より入力された乗数および被乗数は部
分積生成回路3により互いに論理演算をほどこされ、部
分積が生成される。この部分積は、キャリーセーブアダ
ー9により加算され、各桁につき高々2本にまで削減さ
れた段階で桁上げが保留され、乗算結果とされる。この
乗算結果はキャリーセーブアダー5により、累算レジス
タ6に保存されていた直前までの累算の途中結果と加算
され、やはり桁上げが保留されたまま新たな累算の途中
結果とされる。新たな累算の途中結果は累算レジスタ6
に保持され、次の累算に用いられる。所定の累算を終了
すると、累算結果の保留されてい桁上げをキャリープロ
パゲーションアダー7により伝播し、完全な二進表現の
演算結果を得る。
【0004】
【発明が解決しようとする課題】図2に示す従来技術に
よれば、部分積を加算し乗算結果を得るキャリーセーブ
アダー9の演算時間と、乗算結果と過去の累算の途中結
果を加えるキャリーセーブアダー5の演算時間の和より
も短い時間間隔では累算を行うことができない。キャリ
ーセーブアダー9をウォレスツリーによって構成するこ
とにより部分積の加算にかかる演算時間を短縮できる
が、やはりウォレスツリーの演算時間とキャリーセーブ
アダー5の演算時間の和よりも短い時間間隔では累算を
行うことはできない。
【0005】
【課題を解決するための手段】乗算における部分積の加
算を行うためのキャリーセーブアダーと、累算を行うた
めのキャリーセーブアダーを分離して構成するのではな
く、一つのウォレスツリーにより構成する。前記ウォレ
スツリーは、部分積と累算の途中結果を一括して加算す
るが、複数の信号線が残された桁が存在する状態でそれ
以上の桁上げを保留したまま累算の途中結果として出力
する。
【0006】
【作用】部分積生成回路は、被乗数と乗数との部分積を
生成し、ウォレスツリーは、前記部分積及び、過去の累
算の途中結果との和をとるが、その結果を、桁上げの伝
播を保留し桁によっては複数の信号線を残した状態で新
しい累算の途中結果として出力する。新しい累算の途中
結果は累算レジスタに保存され、後続の累算に用いられ
る。所定の累算が終了すると、キャリープロバケーショ
ンアダーにより保留されていた桁上げを伝播し、完全な
二進表現に変換され、出力される。
【0007】ウォレスツリーは、1段ごとに全入力ビッ
ト数を約2/3に減じるという、おおよそ指数的な効果
を持っている。従って、本構成のように部分積の加算と
累算のための加算を単一のウォレスツリーにより一括し
て行うと、従来のように別々に行う場合に比べて少ない
段数で演算が可能となる。
【0008】
【実施例】第1の実施例として、図4に乗数6ビット、
被乗数6ビットの乗算を行い、その乗算結果の累算を行
う積和演算器の構成を示す。乗算入力1及び被乗数入力
2から入力された乗数、被乗数は、部分積生成回路3に
入力され、最下位桁から順に1、2、3、4、5、6、
5、4、3、2、1ビットの部分積が生成される。次
に、累算レジシタ6に保存されていた最下位桁から順に
1、1、1、1、2、2、2、2、2、2、2ビットか
らなる直前までの累算の途中結果と、部分積とはウォレ
スツリー4に入力され、全加算器と半加算器が4段相互
接続された構造により互いに加算され、最下位桁から順
に1、1、1、1、2、2、2、2、2、2、2ビット
となるまで削減され、それ以上の桁上げが保留されたま
ま出力される。ウォレスツリー4の出力は、新たな累算
の途中結果として累算レジスタ6に保存され、次回の累
算に用いられる。所定の累算が終了すると、キャリープ
ロバケーションアダー7により、保留されていた桁上げ
が伝播され、最終的な演算結果を得て演算結果出力8に
出力される。
【0009】図2の従来法による構成では、キャリーセ
ーブアダー9をウォレスツリーによって構成することで
処理段階を削減したとしても、累算と累算の時間間隔は
最小でも全加算器を5段通過する時間必要であるのに対
し、本構成では全加算器4段分の時間とすることができ
る。
【0010】第2の実施例として、図1に乗数6ビッ
ト、被乗数6ビット乗算を行い、その乗算結果の累算を
行う積和演算器の構成を示す。乗数入力1及び被乗数入
力2から入力された乗数、被乗数は、部分積生成回路3
に入力され、最下位桁から順に1、2、3、4、5、
6、5、4、3、2、1ビットの部分積が生成される。
次に、累算レジスタ6に保存されていた最下位桁から順
に1、1、1、2、2、3、3、3、3、2、2ビット
からなる直前までの累算の途中結果と、部分積とはウォ
レスツリー4に入力され、全加算器と半加算器が3段相
互接続された構成により互いに加算され、最下位桁から
順に1、1、1、2、2、3、3、3、3、2、2ビッ
トとなるまで削減され、それ以上の桁上げが保留された
まま出力される。ウォレスツリー4の出力は新たな累算
の途中結果として累算レジスタ6に保存され、次回の累
算に用いられる。所定の累算が終了すると、キャリープ
ロバゲーションアダー7により、保留されていた桁上げ
が伝播され、最終的な演算結果を得て演算結果出力8に
出力される。
【0011】本実施例では、キャリープロバゲーション
アダーまで含めた全体の段数は図4に示した実施例と同
一であるが、累算中に介存する段数が図4の実施例にお
いては4段であるのに対し本実例では3段であり、少な
くなっている。このため高速演算が可能である。
【0012】第3の実施例として、図5に乗数4ビッ
ト、被乗数4ビットの乗算を行い、その乗算結果の累算
を行う積和演算器で、ウォレスツリーの段数を1段とし
た構成を示す。乗数入力1及び被乗数入力2から入力さ
れた乗数、被乗数は、部分積生成回路3に入力され、最
下位桁から順に1、2、3、4、3、2、1ビットの部
分積が生成される。次に、累算レジスタ6に保存されて
いた最下位桁から順に1、3、5、7、8、7、5ビッ
トからなる直前までの累算の途中結果と、部分積とは1
段の全加算器、半加算器からなるウォレスツリー4に入
力され、互いに加算され、最下位桁から順に1、3、
5、7、8、7、5ビットに削減され、桁上げが保留さ
れたまま出力される。ウォレスツリー4の出力は、新た
な累算の途中結果として累算レジスタ6に保存され、次
回の累算に用いられる。所定の累算が終了すると、キャ
リープロバゲーションアダー7により、保留されていた
桁上げが伝播され、最終的な演算結果を得て演算結果出
力8に出力される。
【0013】本実施例では、キャリープロバゲーション
アダーまで含めた全体の段数は図1に示した実施例より
1段多いが、累算中に介在する段数が図1の実施例では
3段であるのに対し本実施例では1段であり、少なくな
っている。このため、一つの演算結果を得るために累算
を2回以上行う場合、図1に示した実施例に比べ、更に
高速演算が可能である。
【0014】本発明の積和演算回路をトランスバーサル
フィルタや行列演算回路に用いた場合、累算を複数回行
う間に一つの演算結果を出力すれば良い。この場合、キ
ャリープロバゲーションアダー7における桁上げの伝播
に許容される時間は累算を所定回数行う時間となる。こ
の時、累算レジスタ6とキャリープロバゲーションアダ
ー7の間にラッチを設けることにより回路を効率よく動
行させることができる。この場合、高速動作によって累
算を実行するのは回路の一部とすることができるので、
消費電力を低く押えることができる。
【0015】なお、部分積生成回路3は、図3に示すよ
うな構成で実現できる。符号付演算を行う場合にもこの
構成を僅かに変更することにより部分積を生成できる。
また、ブースのアルゴリズム等により部分積を生成する
ことも可能である。
【0016】また、演算結果を得るために必要な累算の
回数が多いために本発明の積和演算器1個では累算が終
了しない場合、一つの積和演算器で可能な回数の累算を
行った時点で、その途中結果を桁上げを保留したまま別
の本発明の積和演算器に転送し、累算の初期値として用
いることで引き続き累算を行うこともできる。このよう
にして、本発明の積和演算器を複数個縦続接続し、所定
の累算が終了した時点でキャリープロパゲーションアダ
ーにより1度だけ桁上げを伝播することにより大規模な
累算を行う場合でも効率よく演算を行うことができる。
例えば、エコーキャンセラや受信等化器は大規模なトラ
ンスバーサルフィルタによって構成されるが、本発明の
積和演算器を縦続接続して用いると効果的である。
【0017】
【発明の効果】本発明によれば、累算を伴う積和演算に
おいて、累算を高速に実行することができる。累算は一
つの演算結果出力を得るために複数回実行されるため、
高速化の効果は大きい。
【図面の簡単な説明】
【図1】本発明の第2の実施例を示すブロック図。
【図2】従来の技術のブロック図。
【図3】符号無し乗算のための部分積生成回路図。
【図4】本実施例の第1の実施例を示すブロック図。
【図5】本発明の第3の実施例を示すブロック図。
【符号の説明】
1…乗数入力、2…被乗数入力、3…部分積生成回路、
4…ウォレスツリー、5,9…キャリーセーブアダー、
6…累算レジスタ、7…キャリープロパゲーションアダ
ー、8…演算結果出力。

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】乗算を行い、その複数の乗算結果を累積し
    て出力する積和演算において、乗数と被乗数の部分積を
    出力する部分積生成回路と、累積値を保持するレジスタ
    と、前記部分積生成回路の出力と前記レジスタの出力と
    を入力し、桁上げが保留された各桁が最も多い桁は複数
    のビットの和として表される累積値を出力するウォレス
    ツリーとを含み、前記ウォレスツリーの出力が前記レジ
    スタに入力されることを特徴とする積和演算器。
  2. 【請求項2】請求項1において、前記ウォレスツリーが
    出力する累積値が、桁上げ保留され各桁が最も多い桁は
    三つ以上のビットの和として表わされる積和演算器。
JP24918792A 1992-09-18 1992-09-18 積和演算器 Pending JPH06103299A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24918792A JPH06103299A (ja) 1992-09-18 1992-09-18 積和演算器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24918792A JPH06103299A (ja) 1992-09-18 1992-09-18 積和演算器

Publications (1)

Publication Number Publication Date
JPH06103299A true JPH06103299A (ja) 1994-04-15

Family

ID=17189198

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24918792A Pending JPH06103299A (ja) 1992-09-18 1992-09-18 積和演算器

Country Status (1)

Country Link
JP (1) JPH06103299A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5847980A (en) * 1995-09-12 1998-12-08 Matsushita Electric Industrial Co., Ltd. Product-summing arithmetic circuit

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5847980A (en) * 1995-09-12 1998-12-08 Matsushita Electric Industrial Co., Ltd. Product-summing arithmetic circuit

Similar Documents

Publication Publication Date Title
CN100405361C (zh) 用于执行计算操作的方法、系统以及设备
Swartzlander Merged arithmetic
US5325320A (en) Area efficient multiplier for use in an integrated circuit
JPS6217770B2 (ja)
US5161119A (en) Weighted-delay column adder and method of organizing same
JP3516503B2 (ja) 電子乗算および加算装置および方法
Rakesh et al. Design and implementation of Novel 32-bit MAC unit for DSP applications
Sharma et al. Modified booth multiplier using wallace structure and efficient carry select adder
US5257217A (en) Area-efficient multiplier for use in an integrated circuit
JPH06103299A (ja) 積和演算器
Karthik et al. Design and implementation of 64 bit high speed vedic multiplier
JPH06223097A (ja) 乗算器、積和演算器の回路記述の発生方法
Ibrahim Radix-2n multiplier structures: A structured design methodology
Raghunath et al. A compact carry-save multiplier architecture and its applications
JPH0816903B2 (ja) 積和演算回路
Takagi Arithmetic unit based on a high-speed multiplier with a redundant-binary addition tree
Ganesh et al. Review of Multipliers
GB2218545A (en) Recursive processor for multiplication
Bhongale et al. Review on Recent Advances in VLSI Multiplier
Chugh Designing of Various types of multipliers and their implementation on FPGA
Student Design of Digital FIR Filter Based on MCMAT for 12 bit ALU using DADDA & WALLACE Tree Multiplier
Nepolean et al. An optimized design for Fused add-multiply operation
Bhargavi et al. Design of a high-speed matrix multiplier based on balanced word-width decomposition and karatsuba multiplication
KR950010451B1 (ko) 그룹 트리구조 알고리즘(GTSM ; Group Tree Structure Method)을 적용한 고속 승산기
Kumar Analysis of Booth Multiplier using Radix-2 and Radix-4 Technique using VHDL