JPH04184530A - 演算装置 - Google Patents

演算装置

Info

Publication number
JPH04184530A
JPH04184530A JP2314834A JP31483490A JPH04184530A JP H04184530 A JPH04184530 A JP H04184530A JP 2314834 A JP2314834 A JP 2314834A JP 31483490 A JP31483490 A JP 31483490A JP H04184530 A JPH04184530 A JP H04184530A
Authority
JP
Japan
Prior art keywords
carry
bits
multiplier
multiplicand
partial
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
JP2314834A
Other languages
English (en)
Inventor
Hiroshi Nakano
中野 拓
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2314834A priority Critical patent/JPH04184530A/ja
Publication of JPH04184530A publication Critical patent/JPH04184530A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 産業上の利用分野 本発明は、データ処理装置の演算器!に関する。
従来の技術 積を部分桁上げと部分和という中間的な形で他の積に加
算する演算装置の一例として、IBMJournal 
 (アイ・ビー・エム ジャーナル)(1967年1月
号34〜53頁)のAnderSOn (アンダーソン
)他による’The IBM 5ysten/360 
Model 91Floating−Point Ex
ecution Unit ”  (ジ アイ・ビー・
エム システム/360モデル91:フローティング−
ポイント エグゼキューション ユニット)に記載され
たものが知られている。
発明が解決しようとする課題 上記従来技術の例では、2個の浮動小数点数の積を求め
る場合に、仮数部に対して、単精度では24ビツトどう
しの数の積を、また、倍精度では56ビツトどうしの数
の積を求めている。このとき、倍数を発生するために順
次下位から12ビツトずつ採り、樹木状桁上げ保留加算
手段の出力の部分桁上げと部分和をそれぞれ12ビツト
右にシフトして一つ上位の12ビツトの乗数により発生
される倍数に加算する構成となっている。
しかし、I E E E  Internationa
l 5olid−3tate C1rcuits Co
nference DIGEST 0FTECHNIC
^L PAPER3(アイ・イー・イー・イー インタ
ーナショナル ソリッド ステイト サーキッツ コン
ファレンス ダイジェスト オブ テクニ力ルベーバー
ズ)、(1989年2月48〜49頁)のMo1nar
 (モルナー)他による“^40 HN364−Bit
Floating−Po1nt Co−Process
or” (ア40MHz 64ビツト フローティング
−ポイント コープロセ、ツサ)において、54ビツト
x54ビツトの規模の倍数発生手段と樹木状桁上げ保留
加算手段を含む乗算器が示されているように、近年、半
導体技術の進歩により、乗数を部分乗数に分割せずに一
度に必要な個数の倍数を発生する方式を採用した乗算器
が高速性を必要とする分野では使用されている。
このような大規模な演算器、たとえば64ビツト×64
ビツトの乗算器を用いて小規模の計算、たとえば32ビ
ツト×32ビツトの乗算を効率よく実行するためにはど
うすればよいかという新しい課題が発生してきた。
本発明は、倍精度に対応した規模の乗算器を用いて単精
度の積和などのタイプの計算をする場合の複数の計算を
複合して実行できる演算装置を提供することを目的とす
るものである。
課題を解決するための手段 上記課題を解決するなめに、本発明の演算装置は、乗数
を重複走査して被乗数の倍数を所定の個数発生させる倍
数発生手段と、上記倍数発生手段の出力する倍数を加−
して部分桁上げと部分和を出力する樹木状に構成された
複数の桁上げ保留加算手段からなる樹木状桁上げ保留加
算手段とをそれぞれ2分割するとともに、分割された2
面の樹木状桁上げ保留加算手段の出力を加算するための
2個の桁上げ保留加算手段と1個の桁上げ伝播加算手段
とを備えた演算装置に対して、上記倍数発生手段の入力
となる被乗数を選択する手段と、2面の樹木状桁上げ保
留加算手段の出力する部分桁上げと部分和の桁合わせを
行う手段を設けたものである。
作用 上記構成において、被乗数選択手段により、たとえば6
4ビツトのデータを2個の32ビツトの被乗数に分割し
たあと、上位に32ビツトのゼロを付加して、それぞれ
を2面の倍数発生手段に供給し、発生した倍数を2面の
樹木状桁上げ保留加算手段で加算することにより、2つ
の単精度の乗算を行い、2面の樹木状桁上げ保留加算手
段が出力する部分桁上げと部分和を桁合わせ手段により
桁合わせを行った後、2個の桁上げ保留加算手段と1個
の桁上げ伝播加算手段で加算することにより、最終結果
である積和が求まる。
実施例 以下、本発明の一実施例を図を用いて詳細に説明する。
なお、本発明の実施例で扱うデータは、単精度32ビツ
ト、倍精度64ビツトの整数とするが、本発明はこれら
のビット長のデータに限定するものではない。
第1図は本発明の第1の実施例における演算装置のブロ
ック図を示す、第1図において、1,2は被乗数レジス
タであり、倍精度のデータを扱う場合には上位32ビツ
トは被乗数レジスタ1に、下位32ビツトは被乗数レジ
スタ2にセ・ブトされる。
3.4は乗数レジスタであり、倍精度のデータを扱う場
合には上位32ビツトは乗数レジスタ3に、下位32ビ
ツトは乗数レジスタ4にセットされる。
5.6は被乗数選択手段、7.8は倍数発生手段であり
、被乗数選択手段5.6は倍数発生手段7゜8の入力と
なる被乗数を選択する。9.10は樹木状桁上げ保留加
算手段であり、倍数発生手段7゜8の出力する倍数を加
算して部分桁上げと部分和を出力する樹木状に構成され
た複数の桁上げ保留加算手段からなる。11.12は桁
合わせ手段であり、樹木状桁上げ保留加算手段10の出
力する部分桁上げと部分和を、樹木状桁上げ保留加算手
段9の出力する部分桁上げと部分和に加算するための折
合わせをする。 13.14は桁上げ保留加算手段、1
5は部分桁上げレジスタ、16は部分和レジスタ、17
は桁上げ伝播加算手段である。
先ず、倍精度どうしの乗算は以下のようにして行われる
。被乗数が被乗数レジスタ1,2に、乗数が乗数レジス
タ3.4にセットされる。被乗数選択手段5により被乗
数レジスタ1の出力が選択されるとともに被乗数選択手
段6により被乗数レジスタ2の出力が選択される。倍数
発生手段7には被乗数として上位32ビツトには被乗数
選択手段5の出力が、下位32ビツトには被乗数選択手
段6の出力が入力されるとともに、乗数として乗数レジ
スタ3の出力が入力される。また、倍数発生手段8には
被乗数として上位32ビツトには被乗数選択手段5の出
力が、下位32ビツトには被乗数レジスタ2の出力が入
力されるとともに、乗数として乗数レジスタ4の出力が
入力される0倍数発生手段7,8ではBooth  (
ブース)のアルゴリズムに基ずき、それぞれ17個の倍
数を発生する。倍数の間の位を考慮して図式的に表現す
ると、第2図(a)のハツチングされていない矩形1個
に対して倍数1個が対応しており、第2図(a)のハツ
チングされていない矩形の上段17個が倍数発生手段8
により生成され、下段17個が倍数発生手段7により生
成される0倍数発生手段7,8の出力する倍数は樹木状
桁上げ保留加算手段9.10により加算されて部分桁上
げと部分和にまとめられる。第2図(a)のハツチング
された矩形の上段2個が樹木状桁上げ保留加算手段10
の出力に対応し、また、下段2@が樹本状桁上げ保留加
算手段9の出力に対応している0桁合わせ手段11.1
2では樹木状桁上げ保留加算手段9,10の出力の位の
差を32ビツトとして樹木状桁上げ保留加算手段9がら
の入力を樹木状桁上げ保留加算手段10の出力に対して
桁合わせし、これら桁合わせ手段11.12の出力が樹
木状桁上げ保留加算手段10の出力と桁上げ保留加算手
段13.14により加算され、部分桁上げ、部分和とし
て、部分桁上げレジスタ15と部分和レジスタ16にセ
ットされる。最後に部分桁上げレジスタ15と部分和レ
ジスタ16の出力が桁上げ伝播加算手段17により加算
され、最終結果である積が求まる。
次に、単精度の積和計算について説明する。32ビツト
の2個の被乗数が被乗数レジスタ1.2に、32ヒツト
の2個の乗数が乗数レジスタ3.4にセットされる。被
乗数選択手段5により定数ゼロが選択されるとともに被
乗数選択手段6により被乗数レジスタ1の出力が選択さ
れる0倍数発生手段7には被乗数として上位32ビツト
には被乗数選択手段5の出力が、下位32ビツトには被
乗数選択手段6の出力が入力されるとともに、乗数とし
て乗数レジスタ3の出力が入力される。また、倍数発生
手段8には被乗数として上位32ビツトには被乗数選択
手段5の出力が、下位32ビツトには被乗数レジスタ2
の出力が入力されるとともに、乗数として乗数レジスタ
4の出力が入力される。倍数発生手段7,8ではBoo
th  (ブース)のアルゴリズムに基ずき、それぞれ
17個の倍数を発生する。倍数の間の位を考慮して図式
的に表現すると、第2図(b)のハツチングされていな
い矩形1個に対して倍数1個が対応しており、第2図(
l])のハツチングされていない矩形の上段17個が倍
数発生手段8により生成され、下段17個が倍数発生手
段7により生成される。なお、ハツチングされていない
矩形の左にある一重にハツチングされた矩形は被乗数の
上位32ビツトがゼロであることにより、倍数の符号ビ
ットが並んでいることを示すものである。倍数発生手段
7,8の出力する倍数は樹木状桁上げ保留加算手段9.
10により部分桁上げと部分和にまとめられる。第2図
(b)の二重にハツチングされた矩形の上段2個が樹木
状桁上げ保留加算手段10の出力に、また、第2図(b
)の最下段2個のハツチングされていない矩形が樹木状
桁上げ保留加算手段9の出力に対応している。桁合わせ
手段11.12では樹木状桁上げ保留加算手段9.10
の出力の位の差をOビットとして第2図(b)の最下段
の二重にハツチングされた矩形に対応するように樹木状
桁上げ保留加算手段9からの入力を樹木状桁上げ保留加
算手段10の出力に対して桁合わせし、これら桁合わせ
手段11.12の出力が樹木状桁上げ保留加算手段10
の出力と桁上げ保留加算手段13.14により加算され
、部分桁上げ、部分和として、部分桁上げレジスタ15
と部分和レジスタ16にセットされる。最後に部分桁上
げレジスタ15と部分和レジスタ16の出力が桁上げ伝
播加算手段17により加算され、最終結果である積和が
求まる。
また、第1の実施例の演算装置では、以上に説明した以
外に、Aを倍精度のデータ、B、Cを単精度のデータと
して、AXB十AXCの積和計算を、被乗数の選択では
倍精度の乗算の動作を行い、部分桁上げと部分和の桁合
わせでは単精度の積和計算の動作を行ない、池の動作に
ついては上記2種の計算では共通であるから同様に行っ
て、実行することができる。
第3図は本発明の第2の実施例における演算装置のブロ
ック図を示す、この演算装置では倍精度の乗算とAを倍
精度のデータ、B、Cを単精度のデータとして、AxB
+AxCの積和計算を行なう。第3図において、21は
被乗数レジスタであり、倍精度のデータがセットされる
。 22.23は乗数レジスタであり、倍精度のデータ
を汲う場合には上位32ビツトは乗数レジスタ22に、
下位32ビツトは乗数レジスタ23にセットされる。 
24.25は倍数発生手段、26.27は樹木状桁上げ
保留加算手段、28゜29は桁合わせ手段、30.31
は桁上げ保留加算手段、32は部分桁上げレジスタ、3
3は部分和レジスタ、34は桁上げ伝播加算手段である
。被乗数の選択を除いて動作は第1の実施例と同様であ
るので説明を省略する。
第4図は本発明を乗除算器に適用した一実施例のブロッ
ク図を示す、第4図において、400は被演算数レジス
タ、401は演算数レジスタ、402はテーブル情報格
納ユニット、403は被乗数選択手段、404 、40
5は乗数選択手段、406 、407は倍数発生手段、
408 、409 、410は選択回路(SEL) A
、 B、 C,471、412は樹木状桁上げ保留加算
手段、413 、414は桁合わせ手段、415゜41
6は桁上げ保留加算手段、417は部桁上げレジスタ、
418は部分和レジスタ、419 、425は桁上げ伝
播加算手段420〜424はレジスタ、426は選択回
路5ELD、427は乗除算結果レジスタである。第4
図の乗除算器は、除算諸部分については特願平1−21
0021号の第11Nに示されているものと実質的にお
なしであり、乗算を実行するために以下が追加されてい
るだけであるので詳細な説明は省略する。53ビツトど
うしの乗算を行なうために演算数レジスタ401から乗
数ビットの上半分が乗数選択手段404に、また乗数ビ
ットの下半分が乗数選択手段405に入力されているこ
と。倍数発生手段406 、407では除算だけの場合
と比べるとそれぞれ5個ずつ倍数を多く発生し、またこ
れらの倍数を除算だけの場合と比べて多く樹木状桁上げ
保留加算器手段411 、412では入力していること
。
乗算時には樹木状桁上げ保留力a算手段411 、41
2の出力は被乗数と乗数の上半分の槓、被乗数と乗数の
下半分の積に対応しているのでこれらを加える場合に桁
合わせ手段413 、414で桁合わせをおこなうこと
。乗算の結果は桁上げ伝播加算手段419より直接取り
出すことができるので、選択回路426により、桁上げ
伝播加算手段419の出力する乗算結果と桁上げ伝播加
算手段425の出力する除算結果を選択していること。
以上が乗算を実行するために追加されている。なお、選
択回路426では2°ビツトを“1”とするための正規
化を行っている。この例に示すように本発明は整数の演
算だけではなく、浮動小数点演算の仮数部の演算に対し
ても適用できる。
発明の効果 以上のように、本発明によれば、倍精度のデータを高速
に処理するために大規模の乗算器を装備した場合に、単
精度の積和計算を小量のハードウェアの追加により高速
に実行でき、また、乗算器を利用して除算I!I能を付
加する場合に一番ハードウエアの物量を必要とする倍数
発生手段と樹木状桁上げ保留加算手段を共通化できるの
で、データ処理装置の高a!I能化、高速化に効果があ
る。
【図面の簡単な説明】
第1図は本発明による第1の実施例の演算装置の構成を
示すブロック図、第2図は倍数の間の位を図式的に示す
図、第3図は本発明による第2の実施例の演算装!の構
成を示すブロック図、第4図は本発明による第3の実施
例の浮動小数点乗除算器の仮数部を処理する部分の構成
を示すブロック図である。 1.2.21・・・被乗数レジスタ、3.4.22.2
3・・・乗数レジスタ、5,6・・・被乗数選択手段、
7゜8、24.25・・・倍数発生手段、9 、10.
26.27・・・樹木状桁上げ保留加算手段、11.1
2.28.29・・・桁合わせ手段、13.14.30
.31・・・桁上げ保留加算手段、15、32・・・部
分桁上げレジスタ、16.33・・・部分和レジスタ、
17.34・・・桁上げ伝播加算手段。 第1図 第2図 第3図 第41”、4

Claims (1)

  1. 【特許請求の範囲】 1、i、j、k、lを正の整数として、被乗数(i+j
    )ビットに対して乗数(k+l)ビットを掛けて積を求
    める計算と、被乗数iビットに対して乗数kビットを掛
    けるとともに被乗数jビットに対して乗数lビットを掛
    け、それらの積の和を求める計算との2種の計算を行な
    う演算装置であり、かつ乗数を重複走査して被乗数の倍
    数を所定の個数発生させる倍数発生手段と、上記倍数発
    生手段の出力する倍数を加算して部分桁上げと部分和を
    出力する樹木状に構成された複数の桁上げ保留加算手段
    からなる樹木状桁上げ保留加算手段とを、乗数kビット
    と乗数lビットに対応して2面設けるとともに、上記2
    面の樹木状桁上げ保留加算手段の出力を加算するための
    2個の桁上げ保留加算手段と1個の桁上げ伝播加算手段
    とを備えた演算装置であつて、上記倍数発生手段の入力
    となる被乗数を選択する手段と、乗数lビットに対応す
    る樹木状桁上げ保留加算手段の出力する部分桁上げと部
    分和を、乗数kビットに対応する樹木状桁上げ保留加算
    手段の出力する部分桁上げと部分和に、上記2種の演算
    に対応して加算するための折合わせ手段を設けたことを
    特徴とする演算装置。 2、j、k、lを正の整数として、被乗数jビットに対
    して乗数(k+l)ビットを掛けて積を求め計算と、被
    乗数jビットに対して乗数kビットを掛けるとともに被
    乗数jビットに対して乗数lビットを掛け、それらの積
    の和を求める計算との2種の計算を行なう演算装置であ
    り、かつ乗数を重複走査して被乗数の倍数を所定の個数
    発生させる倍数発生手段と、上記倍数発生手段の出力す
    る倍数を加算して部分桁上げと部分和を出力する樹木状
    に構成された複数の桁上げ保留加算手段からなる樹木状
    桁上げ保留加算手段とを、乗数kビットと乗数1ビット
    に対応して2面設けるとともに、上記2面の樹木状桁上
    げ保留加算手段の出力を加算するための2個の桁上げ保
    留加算手段と1個の桁上げ伝播加算手段とを備えた演算
    装置であつて、乗数lビットに対応する樹木状桁上げ保
    留加算手段の出力する部分桁上げと部分和を、乗数kビ
    ットに対応する樹木状桁上げ保留加算手段の出力する部
    分桁上げと部分和に、上記2種の演算に対応して加算す
    るための桁合わせ手段を設けたことを特徴とする演算装
    置。
JP2314834A 1990-11-20 1990-11-20 演算装置 Pending JPH04184530A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2314834A JPH04184530A (ja) 1990-11-20 1990-11-20 演算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2314834A JPH04184530A (ja) 1990-11-20 1990-11-20 演算装置

Publications (1)

Publication Number Publication Date
JPH04184530A true JPH04184530A (ja) 1992-07-01

Family

ID=18058162

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2314834A Pending JPH04184530A (ja) 1990-11-20 1990-11-20 演算装置

Country Status (1)

Country Link
JP (1) JPH04184530A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0650115A1 (en) * 1993-10-21 1995-04-26 Kabushiki Kaisha Toshiba Multiplier capable of calculating double precision, single precision, inner product and multiplying complex numbers

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0650115A1 (en) * 1993-10-21 1995-04-26 Kabushiki Kaisha Toshiba Multiplier capable of calculating double precision, single precision, inner product and multiplying complex numbers

Similar Documents

Publication Publication Date Title
US6647404B2 (en) Double precision floating point multiplier having a 32-bit booth-encoded array multiplier
Li et al. Implementation of single precision floating point square root on FPGAs
US6349318B1 (en) Arithmetic processor for finite field and module integer arithmetic operations
US6360241B1 (en) Computer method and apparatus for division and square root operations using signed digit
US4168530A (en) Multiplication circuit using column compression
US5790446A (en) Floating point multiplier with reduced critical paths using delay matching techniques
EP0326415B1 (en) Floating point/integer processor with divide and square root functions
JPH02196328A (ja) 浮動小数点演算装置
US6240433B1 (en) High accuracy estimates of elementary functions
JP2002108606A (ja) スティッキービット生成回路及び乗算器
JPH0612229A (ja) 乗累算回路
JPH0375901B2 (ja)
US6009450A (en) Finite field inverse circuit
JPH0368416B2 (ja)
US5357455A (en) Floating point remainder generator for a math processor
US5721697A (en) Performing tree additions via multiplication
US5734599A (en) Performing a population count using multiplication
US7174015B1 (en) Methods and apparatus for variable radix scalable modular multiplication
Schuite et al. Integer multiplication with overflow detection or saturation
US4190894A (en) High speed parallel multiplication apparatus with single-step summand reduction
Chu et al. Cost/performance tradeoff of n-select square root implementations
JP3227538B2 (ja) 2進整数乗算器
US5206826A (en) Floating-point division cell
Nannarelli A multi-format floating-point multiplier for power-efficient operations
EP0326414B1 (en) High speed multiplier