JPH0584528B2 - - Google Patents

Info

Publication number
JPH0584528B2
JPH0584528B2 JP58250029A JP25002983A JPH0584528B2 JP H0584528 B2 JPH0584528 B2 JP H0584528B2 JP 58250029 A JP58250029 A JP 58250029A JP 25002983 A JP25002983 A JP 25002983A JP H0584528 B2 JPH0584528 B2 JP H0584528B2
Authority
JP
Japan
Prior art keywords
multiplier
carry
multiplicand
carry information
value
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.)
Expired - Lifetime
Application number
JP58250029A
Other languages
English (en)
Other versions
JPS60142424A (ja
Inventor
Tomoyoshi Takebayashi
Shigeyuki Umigami
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 JP58250029A priority Critical patent/JPS60142424A/ja
Publication of JPS60142424A publication Critical patent/JPS60142424A/ja
Publication of JPH0584528B2 publication Critical patent/JPH0584528B2/ja
Granted 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)

Description

【発明の詳細な説明】
(1) 発明の技術分野 本発明は情報処理装置の演算回路に関するもの
で、リコード形乗算器の高速化に係るものであ
る。 (2) 従来技術と問題点 第1図は従来の並例乗算器の構成例を示すブロ
ツク図であつて、1は被乗数レジスタ、2は乗数
レジスタ、31〜34は2次のブースのアルゴリズ
ムを実現する回路、41〜43は加算回路、5はキ
ヤリの伝搬ルートを表わしている。 第1図において、被乗数レジスタ1にセツトさ
れた値と、乗数レジスタ2にセツトされた値の桁
毎の部分値とが2次のブースのアルゴリズムを実
現する回路31〜34によつてそれぞれ部分積とし
て出力され、それらが加算回路41〜43に加えら
れて、その総和を求めることにより乗算が行なわ
れている。このとき、キヤリ(桁上げ信号)は図
中点線で示したキヤリの伝搬ルート5を通つて伝
搬する。 従来のこのような乗算器では、部分積の並列加
算器におけるキヤリの伝搬に相当の時間を要し、
それが演算速度の高速化を妨げると云う問題点が
あつた。 そのため、キヤリの伝搬時間を減少させる目的
でWallaceのトリーを用いた桁上げ保存加算器
(キヤリセーブ形加算器)を使用して、演算部に
キヤリ用のレジスタを設けA×B+C→Cと云つ
たような積和算をパイプライン処理することによ
つて高速化を図る方式も考えられている。しか
し、この方式の場合も、演算結果を一旦メモリに
ストアするときや、A×B×Cと云つた演算を行
なう場合には、それまで保存(セーブ)してあつ
たキヤリを一度加算してから演算する必要がある
のでパイプライン化が困難であり、演算速度の高
速化が期待出来ないと云う問題点があつた。 (3) 発明の目的 本発明は上記従来の問題点に鑑み、演算処理の
行程中におけるキヤリの伝搬速度が一連の演算の
処理速度に影響を与えることが少なく高速な演算
を期待出来る乗算器を提供することを目的として
いる。 (4) 発明の構成 そしてこの目的は本発明によれば特許請求の範
囲に記載のとおり、被乗数たる2進数値と桁上げ
情報との組み合わせからなる数値データと、乗数
たる2進数値と桁上げ情報との組み合わせからな
る数値データとを入力として、被乗数と乗数の部
分値との積と、被乗数と乗数の桁上げ情報を含む
部分値との積と、被乗数の桁上げ情報と乗数の積
とを加算して、その結果を2進数値と桁上げ情報
との組み合わせからなる数値データとして出力す
ることを特徴とする高速乗算器により達成され
る。 (5) 発明の実施例 第2図は本発明の1実施例のブロツク図であつ
て、6は被乗数レジスタ、7は桁上げ情報レジス
タ、8は乗数レジスタ、91〜93は2次のブース
のアルゴリズムを実現する回路、10は変形2次
のブースのアルゴリズムを実現する回路、11は
1ビツトマルチ回路、12は加算回路、13は出
力レジスタである。 第3図は部分積について説明する図である。 第4図は本発明の1実施例の加算回路を説明す
る図で141〜143は桁上げ保存加算器、15は
4ビツト桁上げ保存加算器、16は出力データの
形式を示している。 ここで、その桁上げ情報を含めない被乗数をA
とし、被乗数の桁上げ情報をaとする。また、そ
の桁上げ情報を含めた乗数をBとする。この場合
において、乗算は、 (A+a)×B=A×B+a×B という計算になる。 第2図において、乗数レジスタ8にセツトされ
る乗数Bは、b4、b3、b2、b1とにより構成される
ものとする。このうち、b3は、乗数の最上位より
3桁目のビツトα、及び4桁目のビツトβの他
に、桁上げ情報γを含むものとする。このとき、
乗算器は、 (A+a)×B=A×B+a×B=A×b4
A×b3+A×b2+A×b1+a×B という計算を行なう。 2次のブースのアルゴリズムを実現する回路9
〜93は、それぞれ、A×b1、A×b2、A×b4
部分積を求める。また、変形2次のブースのアル
ゴリズムを実現する回路10は、A×b3の部分積
を求め、1ビツトマルチ回路11は、a×Bの部
分積を求める。これらの部分積は、加算回路12
に入力される。 第5図は部分積のビツト値について説明する図
である。例えば、被乗数Aを、(a0、a1、a2、a3
a4、a5、a6、a7)とすると、部分積A×b3は、い
ずれの場合にせよ、第5図に示すように、9ビツ
トの2進数値と桁上げ情報とにより成る。第3図
は、このような部分積をそれぞれ位取りして示し
たものである。部分積を、第3図のように展開す
ると、加算回路12は、N1〜N6の6つの入力で
実現できることが分かる。 加算回路12は、第4図に示すように、桁上げ
保存加算器のトリーによつて構成することがで
き、その出力データの形式16は、図示するとお
り、2進数値に桁上げ情報を加えた最終的なもの
ではなく、2進数値と桁上げ情報とによりなつて
いる。 ここで、第2図における変形2次のブースのア
ルゴリズムを実現する回路10について、その部
分積の導出方法を説明する。 2の補数表現された乗数をYと置くと、 Y=y027+y126+y225+…+y720 の様に現わされる。 ここで、桁上げ保存加算器と同じデータを
Y′とすれば、Y′は次式の通りになる。 Y′=−y027+y126+α25+β24+γ24+y423+…+y72
0=−2y026+y126+α26−α25 +β24+γ24+y423+…+y720=(α+y1−2y0)26
+(y4+β+γ−2α)24 +(y6+y5−2y4)22+(y8+y7−2y6)20 ……(1) ただし、y8=0とする。 (1)式において、第1項の(α+y1−2y0)26
第3項の(y6+y5−2y4)22、及び第4項の(y8
+y7−2y6)20は、従来のブースのアルゴリズム
により対応できる。すなわち、第2図に示すブー
スのアルゴリズムを実現する回路91〜93を用い
て導出することができる。しかし、第2項の(y4
+β+γ−2α)24については、ブースのアルゴリ
ズムについての若干の修正が必要となる。これ
は、第1表の中欄に示すように、(y4+β+γ−
2α)に対応する値に“+3”という値が存在す
るためである。この“+3”という値は演算処理
を高速に行なう上で好ましくないものである。 “+3”という値をとるのは、第1表より、
(α、β、γ)=(0、1、1)のときであること
が分かる。このとき、α、β、γの値を部分的に
加算すると、(α、β、γ)=(1、0、0)とな
りキヤリは上位に伝搬しない。この点に着目し、
(α、β、γ)を次のようにして(α′、β′、γ′)
に置き換える。 ≪イ≫ (α、β、γ)≠(0、1、1)のとき、
(α′、β′、γ′)=(α、β、γ) ≪ロ≫ (α、β、γ)=(0、1、1)のとき、
(α′、β′、γ′)=(1、0、0) 第1表の右欄は、その置き換えの結果を示した
ものである。なお、(α、β、γ)=(0、1、1)
の場合において、(1)式第1項(α+y1−2y0)26
のαでは、α+βγを用いることにより、桁移動
(シフト)と2の補数により従来の2次のブース
のアルゴリズムと同様に取り扱うことができる。
【表】
【表】 第6図は、本願発明の適用例を説明するための
図である。第6図において、信号処理を実現する
演算部21、信号処理の対象となる数値データを
格納するメモリ部22、A/D、D/A変換器な
どといつた外部モジユール25とのインタフエー
スを実現するI/O部23、これらの機能を制御
し、信号処理を実現するプログラム制御部24で
構成された信号処理LSI20を考える。従来、演
算部には、キヤリセーブ形加算器を用いること
で、N1+N2+…+Nkなどの演算の高速化が図れ
たが、k−1回の加算の後で、その加算結果メモ
リ部にセーブする際には、加算出力である2進数
値に桁上げ保存レジスタの内容(桁上げ情報)を
加えて最終結果を得る必要があつた。けれども、
2進数値と桁上げ保存レジスタの内容(桁上げ情
報)をそのままメモリ部に記憶できるようにすれ
ば、この最終的な加算処理の時間を削減でき、全
体としての信号処理の高速化が図れる。 本発明は、2進数値と桁上げ情報とからなる数
値データを直接入力できる乗算器を実現するもの
である。本発明の高速乗算器を採用すれば、例え
ば、第6図の演算部21及びメモリ部22では、
2進数値と桁上げ情報とからなる数値データをそ
のまま取り扱うことが可能になる。外部機能モジ
ユールへの出力時のみ、2進数値と桁上げ情報と
の加算を行なうことで、全体としての処理の高速
化が図れる。 (6) 発明の効果 本発明の高速乗算器は入出力データとして桁上
げ保存加算器の出力と同様な形式のデータを扱え
るので、一連の演算処理の最終時にのみ保存され
ていたキヤリの加算を行なえば良いから、乗算処
理を高速に行なえるので効果は大である。
【図面の簡単な説明】
第1図は従来の並列乗算器の構成例を示すブロ
ツク図、第2図は本発明の1実施例のブロツク
図、第3図は部分積について説明する図、第4図
は本発明の1実施例の加算回路を説明する図、第
5図は部分積のビツト値について説明する図、第
6図は、本発明の適用例を説明するための図であ
る。 1,6……被乗数レジスタ、2,8……乗数レ
ジスタ、31〜34,91〜93……2次のブースの
アルゴリズムを実現する回路、41〜43,12…
…加算回路、5……キヤリの伝搬ルート、7……
桁上げ情報レジスタ、10……変形2次のブース
のアルゴリズムを実現する回路、11……1ビツ
トマルチ回路、13……出力レジスタ、141
143……桁上げ保存加算器、15……4ビツト
桁上げ保存加算器、16……出力データの形式、
20……信号処理LSI、21……演算部、22…
…メモリ部、23……I/O部、24……プログ
ラム制御部、25……外部モジユール。

Claims (1)

    【特許請求の範囲】
  1. 1 被乗数たる2進数値と桁上げ情報との組み合
    わせからなる数値データと、乗数たる2進数値と
    桁上げ情報との組み合わせからなる数値データと
    を入力として、被乗数と乗数の部分値との積と、
    被乗数と乗数の桁上げ情報を含む部分値との積
    と、被乗数の桁上げ情報と乗数の積とを加算し
    て、その結果を2進数値と桁上げ情報との組み合
    わせからなる数値データとして出力することを特
    徴とする高速乗算器。
JP58250029A 1983-12-28 1983-12-28 高速乗算器 Granted JPS60142424A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58250029A JPS60142424A (ja) 1983-12-28 1983-12-28 高速乗算器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58250029A JPS60142424A (ja) 1983-12-28 1983-12-28 高速乗算器

Publications (2)

Publication Number Publication Date
JPS60142424A JPS60142424A (ja) 1985-07-27
JPH0584528B2 true JPH0584528B2 (ja) 1993-12-02

Family

ID=17201773

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58250029A Granted JPS60142424A (ja) 1983-12-28 1983-12-28 高速乗算器

Country Status (1)

Country Link
JP (1) JPS60142424A (ja)

Also Published As

Publication number Publication date
JPS60142424A (ja) 1985-07-27

Similar Documents

Publication Publication Date Title
US6539368B1 (en) Neural processor, saturation unit, calculation unit and adder circuit
JPH10214176A (ja) 超越関数を迅速に計算する装置
JPS6217770B2 (ja)
US5796645A (en) Multiply accumulate computation unit
JPH0612229A (ja) 乗累算回路
US4556948A (en) Multiplier speed improvement by skipping carry save adders
JPH0375901B2 (ja)
US6684236B1 (en) System of and method for efficiently performing computations through extended booth encoding of the operands thereto
JPH0584528B2 (ja)
JPH0519170B2 (ja)
JPH0816903B2 (ja) 積和演算回路
JPH04172526A (ja) 浮動小数点除算器
JPS6222178A (ja) 2つの複素数の乗算のための乗算器
JPS6259828B2 (ja)
JP2953918B2 (ja) 演算装置
JPH06223097A (ja) 乗算器、積和演算器の回路記述の発生方法
JPS60254372A (ja) 積和演算装置
JPS6285333A (ja) 浮動小数点乗算器丸め処理方式
JPH0784762A (ja) 乗算回路
JPH01300338A (ja) 浮動小数点乗算器
JPH0583930B2 (ja)
JPH0247769A (ja) 積和演算装置
JPH06131160A (ja) 積和演算回路
JPH0253819B2 (ja)
JPH06110659A (ja) マイクロコンピュータ