JPH05216626A - 乗算器 - Google Patents

乗算器

Info

Publication number
JPH05216626A
JPH05216626A JP4017339A JP1733992A JPH05216626A JP H05216626 A JPH05216626 A JP H05216626A JP 4017339 A JP4017339 A JP 4017339A JP 1733992 A JP1733992 A JP 1733992A JP H05216626 A JPH05216626 A JP H05216626A
Authority
JP
Japan
Prior art keywords
multiplier
bit
bits
multiplication
partial product
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.)
Withdrawn
Application number
JP4017339A
Other languages
English (en)
Inventor
Yasushi Ozaki
靖 尾崎
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP4017339A priority Critical patent/JPH05216626A/ja
Publication of JPH05216626A publication Critical patent/JPH05216626A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】部分積の加算速度を速くすると共に、ハードウ
ェアの規模の増大を抑える。 【構成】2n×2nビットの乗算を(n+1)×nビッ
トの乗算を4回繰り返すようにYHレジスタ1,YLレ
ジスタ2,選択回路3、2次のブースのデコーダ4を構
成する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は乗算器に関し、特に単精
度乗算器を用いて倍精度乗算を実行する乗算器に関す
る。
【0002】
【従来の技術】2の補数表示の2nビット×2nビット
の乗算を行う乗算器について説明する。
【0003】図2は従来のこの種の乗算器の一例を示す
回路図である。
【0004】この従来の乗算器においては、2の補数表
示された2nビットの数どうしの乗算を行う場合、被乗
数をX、乗数をYとすると
【0005】
【0006】と書ける。X,Yの積をPとすると
【0007】
【0008】ここで
【0009】
【0010】とおくと P=(2n ・R+S)・(2n ・Q+T) =22nR・Q+2n ・(R・T+S・Q)+S・T …(10) となる。よって2nビットの倍精度乗算は、 R・Q:(2の補数)×(2の補数) R・T:(2の補数)×(絶対値) S・Q:(絶対値)×(2の補数) S・T:(絶対値×(絶対値) の4種のnビットの単精度乗算を行い式(10)に従っ
て22nまたは2n の重み付けのためのシフトと加算によ
って行うことができる。
【0011】従来、2の補数と絶対値の混在したこの4
種のnビッド×nビット乗算を同一のハードウェアを用
いて実行するために、(n+1)ビット×(n+1)ビ
ットの乗算器を用いていた。これは2の補数表現のデー
タのMSBを1ビット符号拡張して(n+1)をビット
データとし、絶対値のデータはMSBの第(n+1)ビ
ット目を0にし、結局4種のnビット乗算を(n+1)
ビットの2の補数乗算に帰着させるものである。この規
則に従い、(6)式〜(9)式を変形した式が(11)
式〜(14)式でありその演算結果が(15)式であ
る。
【0012】
【0013】よって Pa=22nRaQa+2n (RaTa+SaQa)+SaTa …(15) 2次のブースのデコーダ4aの入力として、YLレジス
タ2a及びYHレジスタ1aのいずれかが乗算の組合せ
によって選択されてる。YLレジスタ2aは(15)
式、YHレジスタ1aは(11)式に従ってレジスタが
構成されている。部分積生成回路8では、2次のブース
のデコーダ4a、選択回路7の出力を受けて(11)式
〜(15)式に従い部分積の各項が生成される。
【0014】次に部分積加算回路9において、部分積生
成回路8から出力された部分積が加算される。さらに、
部分積加算回路9から出力される結果を算術回路10に
よってシフト加算を繰り返すことによって2nビット×
2nビットの乗算を行うことができる。この時シフト量
は(15)式で示されている2n 及び22nの重み付けで
決まる。
【0015】
【発明が解決しようとする課題】上述した従来の乗算器
では、2nビットの倍精度データを、2個のnビットの
単精度データに分けて(2の補数)×(2の補数)、
(2の補数)×(絶対値)、(絶対値)×(2の補数)
及び(絶対値)×(絶対値)の4種類の乗算を同一のハ
ードウェアで実行するために、2の補数データはMSB
を1ビット符号拡張し、絶対値データはMSBの第(n
+1)ビット目を0にし、結局(n+1)ビットの2の
補数乗算に帰着させている。よってデータのビット数が
元のデータのビット数よりも増加しているため、ブース
のアルゴリズムによって生成される部分積の数が1個増
加している。従って、部分積の演算スピードが遅くな
り、ハードウェアも大きくなるという問題があった。
【0016】
【課題を解決するための手段】本発明の乗算器は、2n
ビットの被乗数X,乗数Yのうちの乗数Yに2次のブー
スのアルゴリズムを用いてデコードし部分積生成回路の
乗数側に入力しn×nビット(nは任意の自然数)の単
精度乗算器により乗算する乗算器において、前記乗数Y
【0017】
【0018】と表しこの乗数Yに対する2次のブースの
アルゴリズムの式を Ej =−2y2j+1+y2j+y2j-1 …(c) としてこれをデコードするデコーダの入力を、
(y2j+1,y2j,y2j-1)としてEj =−2y2j+1+y
2j+y2j-1をデコードする場合と、(y2j+1+n
2j+n,y2j-1+n)としてEj+n =−2y2j+1+n+y
2j+n+y2j-1+nをデコードする場合とに切り替えるよう
にして構成される。
【0019】
【実施例】次に本発明について図面を参照して説明す
る。
【0020】図1は本発明の一実施例を示すブロック図
である。
【0021】2の補数表現された2nビットの数どうし
の乗算を行う場合、被乗数Xは
【0022】
【0023】符号を1ビット拡張して
【0024】
【0025】と表現することができる。但し、
【0026】
【0027】この様に2nビットの2の補数データを上
位(n+1)ビット、下位(n+1)ビットの2つの2
の補数データにわけることができる。
【0028】乗数Yは2次のブースのアルゴリズムを用
いて
【0029】
【0030】と表現することができる。但し、
【0031】
【0032】この様に上位nビット、下位nビットをわ
けることができる。
【0033】よってX、Yの積をPとおくと P=X・Y =(XH+XL)・(YH+YL) …(23) 従って、乗算X・Yは乗算XH・YH、XH・YL、X
L・YH及びXL・YLを行いその結果を累算するのと
等価である。
【0034】実際に乗算を行ってみると
【0035】
【0036】ここで、
【0037】
【0038】符号部は、−Aj ・2n =−2n+1 +bA
j ・2n +2n (但し、bAはAの否定)とおくと、
【0039】
【0040】よって符号部は(26)式の様になり、マ
イナスは22n-1の項だけである。
【0041】またAj はEj の値により Ej >0 Aj =xsj =0 Aj =0 Ej =0 Aj =bxs となるが、xs =0なのでEj の値にかかわらずAj
0である。
【0042】数値部は
【0043】
【0044】となる。
【0045】同様にして、XH・YL、XL・YH、X
H・YHの乗算を行うと以下のようになる。
【0046】
【0047】これより、XH・YH、XH・YL、XL
・YH、XL・YLの乗算は乗算結果の重み付けを変え
るだけで、同一のハードウェアで実現できる事が解る。
【0048】図1を参照すると、2次のブースのデコー
ダ4の入力として、YLレジスタ2,YHレジスタ1の
いずれかが乗算の組合せによって選択されている。YL
レジスタ2のLSBには“0”、YHレジスタ1のLS
Bにはyn-1 が代入されており、これは(21)式及び
(22)式に従ってこれらレジスタが構成されているこ
とを示す。
【0049】部分積生成回路8では、2次のブースのデ
コーダ4,選択回路7の出力を受けて(27)式〜(3
0)式に従い部分積の各項が生成される。
【0050】次に部分積加算回路9において、部分積生
成回路8から出力された部分積が加算される。さらに、
部分積加算回路9から出力される結果を算術回路10に
よってシフト加算を繰り返すことによって2nビット×
2nビットの乗算を行うことができる。この時シフト量
は(25)式(30)式で示されている重み付けで決ま
る。
【0051】
【発明の効果】以上説明したように本発明は、例えばn
が4ビット,8ビット,16ビット,32ビット、及び
64ビット等の場合の2nビット×2nビットの倍精度
乗算を(n+1)ビット×nビットの乗算を4回繰り返
すことによって行っているため、生成される部分積の数
を2次のブースのアルゴリズムを用いた場合n個にで
き、よって部分積の加算スピードを高めることができ、
またハードウェアの規模の増加を抑えることができる効
果がある。
【図面の簡単な説明】
【図1】本発明の一実施例のブロック図である。
【図2】従来の乗算器の一例を示すブロック図である。
【符号の説明】
1,1a YHレジスタ 2,2a YLレジスタ 3 選択回路 4,4a 2次のブースのデコーダ 5 XHレジスタ 6 XLレジスタ 7 選択回路 8 部分積生成回路 9 部分加算回路 10 算術回路 11 出力レジスタ

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 2nビットの被乗数X,乗数Yのうちの
    乗数Yに2次のブースのアルゴリズムを用いてデコード
    し部分積生成回路の乗数側に入力しn×nビット(nは
    任意の自然数)の単精度乗算器により乗算する乗算器に
    おいて、前記乗数Yを と表しこの乗数Yに対する2次のブースのアルゴリズム
    の式を Ej =−2y2j+1+y2j+y2j-1 …(c) としてこれをデコードするデコーダの入力を、
    (y2j+1,y2j,y2j-1)としてEj =−2y2j+1+y
    2j+y2j-1をデコードする場合と、(y2j+1+n
    2j+n,y2j-1+n)としてEj+n =−2y2j+1+n+y
    2j+n+y2j-1+nをデコードする場合とに切り替えるよう
    にしたことを特徴とする乗算器。
  2. 【請求項2】 2次のブースのデコーダの入力端に、E
    j とEj+n とを切り替える選択回路が設けられた請求項
    1記載の乗算器。
JP4017339A 1992-02-03 1992-02-03 乗算器 Withdrawn JPH05216626A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4017339A JPH05216626A (ja) 1992-02-03 1992-02-03 乗算器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4017339A JPH05216626A (ja) 1992-02-03 1992-02-03 乗算器

Publications (1)

Publication Number Publication Date
JPH05216626A true JPH05216626A (ja) 1993-08-27

Family

ID=11941299

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4017339A Withdrawn JPH05216626A (ja) 1992-02-03 1992-02-03 乗算器

Country Status (1)

Country Link
JP (1) JPH05216626A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6233597B1 (en) 1997-07-09 2001-05-15 Matsushita Electric Industrial Co., Ltd. Computing apparatus for double-precision multiplication

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6233597B1 (en) 1997-07-09 2001-05-15 Matsushita Electric Industrial Co., Ltd. Computing apparatus for double-precision multiplication

Similar Documents

Publication Publication Date Title
CA1231455A (en) Nonrestoring divider
JPH0713742A (ja) 乗算装置
JPH0612229A (ja) 乗累算回路
JPH0456339B2 (ja)
JPH07121354A (ja) 倍精度・単精度・内積演算および複素乗算が可能な乗算器
US5870322A (en) Multiplier to selectively perform unsigned magnitude multiplication or signed magnitude multiplication
JP3660075B2 (ja) 除算装置
JPH05216626A (ja) 乗算器
JP2578482B2 (ja) 浮動小数点演算器
JP3190826B2 (ja) 積和演算装置
JPH056263A (ja) 加算器およびその加算器を用いた絶対値演算回路
JPH02287874A (ja) 積和演算装置
JP2606326B2 (ja) 乗算器
JP3071607B2 (ja) 乗算回路
JPS58181143A (ja) デイジタル乗算器
JP3610564B2 (ja) 情報処理装置
JP4042215B2 (ja) 演算処理装置およびその方法
JPH0784762A (ja) 乗算回路
JP2508286B2 (ja) 平方根演算装置
JP2580413B2 (ja) 乗算処理装置
JP3198868B2 (ja) 乗算処理装置
JP3106767B2 (ja) 乗算方法及び乗算回路
JPH1011267A (ja) 乗算器
JP2001134556A (ja) 繰り返し型乗算器とアレイ型乗算器
JP2568608B2 (ja) 乗算回路

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19990518