JP3198868B2 - 乗算処理装置 - Google Patents

乗算処理装置

Info

Publication number
JP3198868B2
JP3198868B2 JP09485895A JP9485895A JP3198868B2 JP 3198868 B2 JP3198868 B2 JP 3198868B2 JP 09485895 A JP09485895 A JP 09485895A JP 9485895 A JP9485895 A JP 9485895A JP 3198868 B2 JP3198868 B2 JP 3198868B2
Authority
JP
Japan
Prior art keywords
value
circuit
multiplicand
partial product
decoding
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 - Fee Related
Application number
JP09485895A
Other languages
English (en)
Other versions
JPH08292875A (ja
Inventor
明 三好
保 西山
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 Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP09485895A priority Critical patent/JP3198868B2/ja
Publication of JPH08292875A publication Critical patent/JPH08292875A/ja
Application granted granted Critical
Publication of JP3198868B2 publication Critical patent/JP3198868B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はLSI化に好適な高速乗
算処理装置に関するものであり、SD(Signed
Digit)数を用いた乗算装置に関するものである。
【0002】
【従来の技術】近年の集積回路技術の進歩にともない3
2ビット、64ビットの浮動小数点演算をおこなう算術
演算用プロセッサが1チップで開発されるようになり、
グラフィックスや回路シミュレーション等種々の分野へ
の応用がなされている。これら演算プロセッサの中に
は、ALUのみならず、乗算回路も実装することが多く
なってきている。
【0003】乗算を高速に実現するためには、乗数をデ
コードし、生成される部分積数を減らし、部分積の加算
数を減らすことにより乗算の高速化を実現する手法が用
いられてきた。例えば、従来において、3次のブースデ
コード回路を用いた乗算については、特開平1−263
720号公報に記述されている。該従来例に示される3
次のブースデコーダによる部分積生成を示す回路を図7
に示す。1はSD数加算器、2は選択器、3は3次のブ
ースデコーダである。ここで、SD数とは、−1、0、
1の様にある一つの桁を正と負の複数個の数字で表す方
法である。
【0004】該従来例においては、3次のブースのデコ
ーダを使用し、部分積を以下のように生成している。つ
まり、3次のブースデコーダを用いた部分積の生成は、
3次のブースデコーダから出力される出力信号線16−
1〜16−5を通して、被乗数*1の部分積を生成する
命令が選択器Aに入力された場合、選択器Aは第iビッ
ト信号の符号ビットおよび信号ビット入力信号線11−
1,11−2の信号を選択し、選択器Aの符号ビットお
よび信号ビットの出力線15−1,15−2に出力す
る。3次のブースデコーダより被乗数*2および被乗数
*4の部分積を生成する命令を選択器Aに与えると、選
択器Aはそれぞれ、前記被乗数第i−1ビット信号の符
号ビットおよび信号ビット入力信号線12−1、12−
2および、前記被乗数第i−2ビット信号の符号ビット
および信号ビット入力信号線14−1、14−2の信号
を選択し出力する。これらは、シフトアップの動作であ
り、高速に実行できる。また、3次のブースデコードが
被乗数*3の部分積を生成する命令を選択器Aに与える
と、選択器AはSD数加算器の符号ビットおよび信号ビ
ットの出力信号線13−1、13−2の信号を選択する
ことにより、被乗数*3の部分積を生成する。ここでS
D数加算器1には、被乗数の第iビット信号の符号ビッ
トおよび信号ビットの入力信号線11−1,11−2と
被乗数の第i−1ビット信号の符号ビットおよび信号ビ
ットの入力信号線12−1,12−2が入力されてい
る。
【0005】図7のSD数加算器1の詳細図を図8に示
す。31はSD数中間加算器であり、入力される2つの
SD数を加算し、中間和27,28、中間桁上げ22,2
3を生成する回路である。32はSD数最終加算器であ
り、前記SD数中間加算器31から出力される中間和2
7,28と一つ下位桁からの中間桁上げ24,25を加算
し、加算結果13ー11,13ー21を出力する回路で
ある。
【0006】3次のブースデコード回路によるデコード
値が、3、−3の場合には、SD数加算器1で(数1)
のように3倍値を生成する。つまり、SD数中間加算器
31とSD数最終加算器32は加算器であるため、3倍
値は、被乗数Xの2倍値(1桁左シフト)と被乗数Xの
加算になる。ここで、XはいまSD数である場合につい
て述べたが、被乗数Xが2進数である場合は、SD数の
符号桁を0に固定すれば、同様に3倍値を生成出来る。
【0007】
【数1】
【0008】しかしながら、該従来例においては、図8
に示すように、3倍値を生成するために、必ず2つの加
算(SD数中間加算器、SD数最終加算器)を使用しな
ければならなかった。
【0009】例えば、被乗数Xを2進数としたとき、3
倍値を生成するためには、図9に示されるような構成方
法が考えられる。301は中間加算器である。302
は、SD数加算器である。いま、2進数の被乗数をXと
し、(数2)に示されるように8ビット符号無し整数で
構成されるとする。
【0010】
【数2】
【0011】この時、中間加算器301では、例えば以
下の論理に従って2XとXを加算する。2Xは、1桁左
シフトすることで実現できるため、加算はXi-1とXi
加算で実現できる。中間加算器301は(数3)に従
い、中間和Si、中間桁上げCiが、(表1)に示す様に
生成される。ここで、Tは−1を表す。(表1)から分
かる様に、中間和Sは非正、中間桁上げCを非負で作
る。さらに、SD加算器302では、(表1)で生成さ
れた中間和S、中間桁上げCからSD数Zを生成する。
これは(数4)に従い生成され、例えば(表2)に示さ
れる様に構成される。
【0012】
【数3】
【0013】
【表1】
【0014】
【数4】
【0015】
【表2】
【0016】このように、従来の3次のブースを用いた
乗算回路の様に3倍値を被乗数Xの2倍値と被乗数Xの
加算により実現する場合、中間加算回路およびSD数加
算回路が必要になり、3倍値の生成に多くのトランジス
タが必要になると同時に、3倍値の生成時間がかかると
いう問題点を有していた。つまり、従来の被乗数の3倍
値生成には、加算器を2つシリアルに使用しなければ成
らず演算時間が遅くしかも論理が複雑であり素子数が多
いという問題点があった。
【0017】また、乗数においてさらに高次のデコード
を行う場合、例えば、4次のデコードの場合、デコード
値として、ー8から8までの整数値が生成される。この
時、部分積生成回路では、例えば、(表3)の様に部分
積が生成されていた。ここで、Xは被乗数である。つま
り、被乗数の3倍値、5倍値、7倍値については、予め
ROMや演算回路等で求められた値を部分積生成回路に
入力し、これを乗数デコード値で選択し出力ようになっ
ていた。このため、上記3倍値、5倍値、7倍値を生成
するために、図7に示したようなSD加算器がさらに必
要になり、ハードウェアの増加が大きいという問題があ
った。
【0018】
【表3】
【0019】また、従来の乗算器においては、入力デー
タの到達時刻をそろえることで、論理回路の無駄な状態
遷移をなくし消費電力を低減するという処理、および実
現手段がとられていなかった。
【0020】例えば、図7の場合、SD数加算器1に入
力されるデータおよび3次のブースデコーダ3に入力さ
れるデータは、それぞれのデータを同じクロックにより
ラッチされているとする。そして、3次のブースデコー
ダで入力データをデコードするために必要な時間をtd
とし、SD数加算器1で3倍値を生成するために必要な
時間をTtとし、Td、Ttは違うとすると、選択器A
2に入力されるSD数加算器1、3次のブースデコーダ
3からの入力データの到達時間の違いによる無駄な動作
が発生する。無駄な動作が発生するということは、選択
器Aを構成する論理回路が動作し、その分余計に電力を
消費するということである。特にブースのデコード回路
を用いた並列乗算回路では、いくつかの選択器Aの出力
を加算し乗算結果を生成するため、特に選択器Aに入力
されるデータのタイミングがずれているということは、
消費電力を増加させる原因と成っていた。
【0021】
【発明が解決しようとする課題】以上説明したような従
来の乗算処理装置に於ては、デコード値に基づき、3倍
値をSD数表現で生成する場合、中間和中間桁上げ生成
手段、SD数変換手段が必要になり、トランジスタ数も
多く、演算時間も遅くする原因となっていた。
【0022】第1の発明は上記問題点に鑑み、高次のブ
ースデコード回路を用いた乗算処理装置において、被乗
数の(2i−2m)倍値(i>m)を高速に少ないハード
ウエアで生成する乗算処理装置を提供することを目的と
する。
【0023】また、従来の乗算処理装置では、乗数を高
次にわたりデコードする場合、被乗数の倍数値を予め演
算しておくための演算装置がSD数を生成するために中
間和、中間桁上げを生成し、その後加算しなければなら
ず、回路規模が大きくなるという問題点を有していた。
【0024】第2の発明は上記問題点に鑑み、乗数デコ
ード値が被乗数の(2i+2m)倍値であった場合にも同
様に少ないハードウエアで乗算ができる乗算処理装置を
提供することを目的とする。
【0025】また、従来の乗算装置に於いては、部分積
生成回路に入力される入力データの到達時刻を揃える手
段が講じられていなかった。このため、部分積の加算に
おいて、入力時間の相違による無駄な状態遷移が発生
し、消費電力が増加するという問題があった。
【0026】第3の発明は、上記問題点に鑑み、乗数デ
コード回路の出力または、被乗数演算回路の出力に遅延
手段または制御信号により動作するデータ保持手段を設
けることで、低消費電力を実現する乗算処理装置を提供
することを目的とする。
【0027】
【課題を解決するための手段】上記問題点を解決するた
めに、第1の発明の乗算処理装置は、乗数をデコードし
出力するデコード回路と、該デコード値の情報に基づき
複数の数値の中から1つを選択し、部分積を生成する部
分積生成回路を備えた乗算処理装置に於て、被乗数の2
i倍値から被乗数の2m倍値(i>m)を減算し、SD数
を生成する減算回路を有し、該減算回路の出力値を上記
複数の数値の一部とするものである。前記減算回路は被
乗数の4倍値から被乗数を減算し、3倍の被乗数値をS
D数で生成するか、または被乗数の8倍値から被乗数を
減算し、7倍の被乗数値をSD数で生成するものが望ま
しい。
【0028】第2の発明の乗算処理装置は、乗数をデコ
ードし出力するデコード回路と、該デコード値の情報に
基づき複数の数値の中から1つを選択し、部分積を生成
する部分積生成回路を備えた乗算処理装置に於て、被乗
数の2i倍値から2m倍の論理反転値を減算しSD数を生
成する減算回路を有し、該減算回路の出力値を上記複数
の数値の一部とし、上記部分積生成回路の最下位桁にお
いて、前記デコード値の情報によって、数値0と数値1
を選択し出力するものである。前記減算回路は被乗数の
4倍値から被乗数の論理反転値を減算しSD数を生成す
るものが望ましい。
【0029】第3の発明(その1)は、乗数をデコード
し出力するデコード回路と、被乗数を演算し出力する演
算回路と、前記デコード回路の出力値と演算回路の出力
値より部分積を生成する複数の部分積生成回路と、該複
数の部分積生成回路から出力される部分積をツリー状に
加算し、積を出力する加算回路を備えた乗算処理装置に
おいて、前記デコード回路の出力と部分積生成回路の
間、または、前記演算回路の出力と部分積生成回路の間
のどちらか一方に遅延手段を有するものである。
【0030】また、第3の発明(その2)は、乗数をデ
コードし出力するデコード回路と、被乗数を演算し出力
する演算回路と、前記デコード回路の出力値と演算回路
の出力値より部分積を生成する複数の部分積生成回路
と、該複数の部分積生成回路から出力される部分積をツ
リー状に加算し、積を出力する加算回路を備えた乗算処
理装置において、前記デコード回路の出力と部分積生成
回路の間、または、前記演算回路の出力と部分積生成回
路の間に制御信号により動作するデータ保持手段を有す
るものである。
【0031】
【作用】第1の発明は、高次のブースデコード回路を用
いた乗算処理装置において、被乗数の2i倍値から被乗
数の2m倍値(i>m)を減算し、SD数を生成する減
算回路を有し、該減算回路の出力値を上記複数の数値の
一部とするため、被乗数の(2i−2m)倍値を高速に少
ないハードウエアで生成されることとなる。例えば、被
乗数の3倍値生成は、被乗数に4倍値(2桁右シフト)
から被乗数を減算することにより実現する。
【0032】第2の発明は、乗数を高次にわたりデコー
ドする乗算処理装置において、被乗数の2i倍値から2m
倍の論理反転値を減算しSD数を生成する減算回路を有
し、該減算回路の出力値を上記複数の数値の一部とし、
上記部分積生成回路の最下位桁において、前記デコード
値の情報によって、数値0と数値1を選択し出力するた
め、回路規模を小さくできる。例えば、被乗数の5倍値
生成は、被乗数の4倍値から被乗数の論理反転を減算し
部分積を生成し、これを加算する際に前記被乗数の補正
項を足し込むことにより実現する。
【0033】また、第3の発明は、部分積生成加算回路
の乗数側、被乗数側へのデータ入力到達時刻を同一にす
ることで、低消費電力な乗算処理装置が実現できる。
【0034】
【実施例】
(実施例1)図1は第1の発明の一実施例に於ける乗算
処理装置のブロック図である。
【0035】図1において、101は3次のブースデコ
ード回路であり、被乗数を−4から4までの値にデコー
ドする。102はデコード回路101から出力されたデ
コード値と被乗数を用いて冗長2進数で表現される部分
積を生成する部分積生成回路である。103は、部分積
生成回路102から出力される部分積を加算する冗長2
進加算回路である。104は被乗数Xを4倍した値(被
乗数を2桁左シフトにより実現)と、被乗数Xから被乗
数Xの3倍値を冗長2進数で生成する3倍値生成回路で
ある。
【0036】以上のような構成により、例えば、8ビッ
トの符号無し整数のオペランドを乗算する場合について
述べる。
【0037】いま、被乗数をX、乗数をYとし、それぞ
れ、(数5)、(数6)のように表されるとする。
【0038】
【数5】
【0039】
【数6】
【0040】3次のブースのデコード回路101は、例
えば、(数7)で書き換えられる。この様に、変形する
と、(数7)の係数部分(−4yj+2+2yj+1+yj
j-1)は、−4から4までの整数値をとる。
【0041】
【数7】
【0042】部分積生成回路102では、(数7)に示
されるデコード値に基づき、部分積を生成する。部分積
の生成方法を(表4)に示す。ここで、Xは被乗数であ
る。すなわち、デコード値が3、−3の時には、3倍値
生成回路104の出力値を使用し、部分積を生成する。
【0043】
【表4】
【0044】3倍値生成回路104については、図2に
示される構成になる。201は2つの2進数同士を減算
し、冗長2進数を生成する、冗長2進減算回路である。
3倍値は、生成される3倍値の2i桁目の係数をziとす
ると、(数8)に示されるようになる。ここで、Xi
2進数であるから、Ziは、−1,0,1の3値を持つ
冗長2進数になる。即ち、従来に比べ、中間加算器を使
用する事なく、3倍値が生成できるため、トランジスタ
数の少ない高速な3倍値生成回路を構成することが可能
になる。
【0045】
【数8】
【0046】(実施例2)次に第2の発明の一実施例と
なる4次の乗数デコードを行った場合について述べる。
【0047】従来においては、部分積の生成は(表1)
に示されるように、3倍値、5倍値、7倍値を予めRO
M、演算器等で生成しておかなければならなく行われて
いた。これに対し、本発明では、被乗数の5倍値の生
成、7倍値の生成を以下のように行う。
【0048】まず7倍値の生成においては、上記した3
倍値の生成と同様に、2進数から2進数の減算を行う。
つまり(数9)により実行する。ここで、8Xは、被乗
数Xを3桁右シフトする事により実現できる。すなわ
ち、被乗数Xの7倍値は、2進数の減算により実現でき
るため、図2に示したような回路で実現できる。
【0049】
【数9】
【0050】一方、被乗数Xの5倍値については、(数
10)の様に実現する。つまり被乗数Xの5倍値は以下
のように変形できる。ここで、not(X)はXの各桁
の符号反転、1はXの2の補数を取るときに生じる補正
項である。ここで、5倍値生成の為に必要な数値4X−
not(X)(以下この数値を5倍値生成準備値とす
る)を図2に示す回路を用いて生成する。そして、デコ
ード値の情報により、この5倍値生成準備値が選択され
た場合、部分積を加算する加算ツリーにおいて、(数1
0)に示す補正項を足し込む事により実現する。
【0051】
【数10】
【0052】この様子を図3を用いて説明する。被乗数
Xと乗数Yの乗算の模式図を示す。ここで乗算式は、以
下のように(数7)を変形し、4次のブースデコードは
(数11)のようにできる。すなわち、(数11)の係
数部分(−8yj+3+4yj+2+2yj+1+yj+yj-1
は、乗数デコード値であり、ー8から8までの整数値を
とる。つまり生成されるデコード値の20の桁、23の桁
の係数は、ー8から8までの値を取る。デコード値13
03により生成される部分積は1301である。デコー
ド値1304により生成される部分積は1302であ
る。1305はデコード値1303の数値の絶対値が5
の時、生じる補正項である。積は、生成される部分積1
301、1302と補正項1305の加算により実現で
きる。つまり、部分積の加算時に、補正項1305の足
し込みを行うことで、乗算が実現できる。
【0053】
【数11】
【0054】図4は本発明(第2の発明)の一実施例に
おける、4次のブースデコードを用いた場合の、乗算処
理装置のブロック図を示し、同図において1401は4
次のブースデコード回路である。1402は被乗数Xの
3倍値生成回路であり、図2に示される様に構成され
る。1403は、(数10)に示される4X−not
(X)を生成する回路であり、図2に示されるように構
成される。1404は7倍値生成回路であり、図2に示
される回路で構成される。1405は部分積生成回路で
あり、4次のブースデコード回路から出力されるデコー
ド値に従い部分積を生成することと、デコード値に従っ
て補正項1411を出力する部分積生成回路である。1
406は、2つの部分積生成回路1406から出力され
る部分積と補正項を加算する加算回路である。
【0055】このように、5倍値生成においても、その
補正値を部分積加算ツリーの中に埋め込むことができる
ため、高速に5倍値の生成ができる。
【0056】(実施例3)次に、第3の発明についての
実施例を以下に述べる。
【0057】図5は、本発明(第3の発明)の一実施例
における、部分積生成加算回路の入力に遅延手段を設け
た乗算処理装置のブロック図である。401は、図1で
示した3次のブースのデコード基本回路101を集つめ
た3次のブースデコード回路であり、データが入力され
てから出力されるまでの遅延時間はTdである。402
は図1に示される部分積生成回路102、冗長2進加算
回路103を含めた部分積生成加算回路である。104
は、被乗数Xの3倍値を生成する3倍値生成回路であ
り、データが入力されてから出力されるまでの遅延時間
はTtである。403は、被乗数の3倍値生成回路から
の出力値と被乗数数値を遅延させる、遅延手段である。
404は、3次のブースデコード回路401の出力値を
遅延させる遅延手段である。
【0058】ここで、Td>Ttの場合、図5に示す通
り、Td−Ttの遅延時間を持つ遅延手段403を3倍
値生成回路104と部分積生成加算回路402の間に置
き、404は0遅延(つまり何も置かない)にすること
によって、部分積生成加算回路402に入力される3次
のブースのデコード回路401から出力されるデータ4
10と遅延手段403から出力されるデータ411の被
乗数、乗数のセットされた時刻からの遅延が同一(T
d)になる。この様に入力データの到達時刻を同一にす
ることによって、部分積生成加算回路402で組まれて
いる論理回路のデータのばらつきを抑えることが可能に
なり、消費電力の低減が図れる。
【0059】ここでは、Td>Ttの場合について述べ
たが、Td<Ttの場合についても、遅延手段を3次の
ブースデコード回路401と部分積生成加算回路402
の間に設けることで、部分積生成加算回路へのデータ入
力時刻を同一にすることが可能になる。
【0060】また、部分積生成加算回路402へのデー
タの入力時刻を同一にするため、3次のブースデコード
回路401の出力値と、3倍値生成回路104の出力値
および被乗数Xをあるタイミングで同時に出力する保持
手段を設けることでも同様に実現できる。すなわち、該
保持手段のあるタイミングでの出力値を部分積生成加算
回路402に入力する。このことでも、同様に、部分積
生成加算回路402内部の論理回路への入力データのば
らつきを抑えることが可能になり、消費電力の低減が図
れる。
【0061】図6は本発明(第3の発明)の他の実施例
における、部分積生成加算回路の入力に制御信号による
データ保持手段を設けた乗算処理装置のブロック図であ
る。401は、図1で示した3次のブースのデコード基
本回路101を集つめた3次のブースデコード回路であ
る。402は図1に示される部分積生成回路102、冗
長2進加算回路103を含めた部分積生成加算回路であ
る。104は、被乗数Xの3倍値を生成する3倍値生成
回路である。503は、ある制御信号によって、3倍値
生成回路104からの出力値と被乗数値Xを保持する保
持手段である。504は、ある制御信号によって、3次
のブースデコード回路401からの出力値を保持する保
持手段である。ここで、例えば、保持手段503,50
4とはフリップフロップ(以下FFとする)のように、制
御信号の立上りエッジ(または立下がりエッジ)により
データを取り込み、次の制御信号の立上りエッジが来る
までデータを保持するような手段であるとする。
【0062】いま、3次のブースデコード回路401に
データが入力されてから出力されるまでの遅延時間をT
d、3倍値生成回路104にデータが入力されてから出
力されるまでの遅延時間はTtとする。乗数Yと被乗数
Xの入力時刻(時刻Tiとする)が同一であるとし、T
d>Ttであるとすると保持手段503,504に入力
される制御信号の立上り(または立下がり)時刻がTi
+Tdになるような制御信号を入力することで、部分積
生成加算回路402に、3次のブースデコード回路40
1からの出力値と、被乗数Xの3倍値生成回路104か
らの出力値または被乗数Xを同時刻(時刻Ti+Td)
に入力することができる。
【0063】このことにより、部分積生成加算回路40
2内部の論理回路への入力データのばらつきを抑えるこ
とが可能になり、消費電力の低減が図れる。ここでは、
Td>Ttの場合について述べたが、Td<Ttの場合
についても、制御信号の立上り(または立ち下がり)時
刻をTi+Tdに設定すれば同様な動作が実現でき、部
分積生成加算回路402へのデータ入力時刻を同一にす
ることが可能になる。
【0064】なお、本実施例は、乗算装置においての例
を示したが、他の論理回路においても当てはめられる。
【0065】
【発明の効果】以上説明したように本発明(第1の発
明)は、高次のブースデコードを用いる乗算装置に於
て、被乗数の2i−2m(i>m)倍値を高速に少ない回
路規模で生成できることで回路規模の小さい低消費電力
な乗算処理装置を実現でき、実用上極めて有用である。
【0066】また、本発明(第2の発明)は、被乗数の
i+2m倍値を高速に少ない回路規模で生成できること
で回路規模の小さい低消費電力な乗算処理装置を実現で
き、実用上極めて有用である。
【0067】また、本発明(第3の発明)は、部分積生
成加算回路の乗数側、被乗数側へのデータ入力到達時刻
を同一にすることで、低消費電力な乗算処理装置が実現
できるため、実用上極めて有用である。
【図面の簡単な説明】
【図1】本発明(第1の発明)の一実施例における、乗
算処理装置のブロック図
【図2】同実施例における2i−2m倍値生成回路のブロ
ック図
【図3】被乗数Xと乗数Yの乗算の模式図
【図4】本発明(第2の発明)の一実施例における、4
次のブースデコードを用いた場合の、乗算処理装置のブ
ロック図
【図5】本発明(第3の発明)の一実施例における、部
分積生成加算回路の入力に遅延手段を設けた乗算処理装
置のブロック図
【図6】本発明(第3の発明)の他の実施例における、
部分積生成加算回路の入力に制御信号によるデータ保持
手段を設けた乗算処理装置のブロック図
【図7】従来の部分積生成に関するブロック図
【図8】従来のSD数加算回路のブロック図
【図9】従来のSD数加算回路のブロック図
【符号の説明】
101 3次のブースデコード回路 102 部分積生成回路 103 冗長2進加算回路 104 3倍値生成回路
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 7/52 310

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】乗数をデコードし出力するデコード回路
    と、該デコード値の情報に基づき複数の数値の中から1
    つを選択し、部分積を生成する部分積生成回路を備えた
    乗算処理装置に於て、 被乗数の2i倍値から被乗数の2m倍値(i>m)を減算
    し、SD数を生成する減算回路を有し、該減算回路の出
    力値を上記複数の数値の一部とすることを特徴とする乗
    算処理装置。
  2. 【請求項2】前記減算回路は被乗数の4倍値から被乗数
    を減算し、3倍の被乗数値をSD数で生成することを特
    徴とする請求項1記載の乗算処理装置。
  3. 【請求項3】前記減算回路は被乗数の8倍値から被乗数
    を減算し、7倍の被乗数値をSD数で生成することを特
    徴とする請求項1記載の乗算処理装置。
  4. 【請求項4】乗数をデコードし出力するデコード回路
    と、該デコード値の情報に基づき複数の数値の中から1
    つを選択し、部分積を生成する部分積生成回路を備えた
    乗算処理装置に於て、 被乗数の2i倍値から2m倍の論理反転値を減算しSD数
    を生成する減算回路を有し、該減算回路の出力値を上記
    複数の数値の一部とし、 上記部分積生成回路の最下位桁において、前記デコード
    値の情報によって、数値0と数値1を選択し出力する事
    を特徴とする乗算処理装置。
  5. 【請求項5】前記減算回路は被乗数の4倍値から被乗数
    の論理反転値を減算しSD数を生成することを特徴とす
    る請求項4記載の乗算処理装置。
JP09485895A 1995-04-20 1995-04-20 乗算処理装置 Expired - Fee Related JP3198868B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP09485895A JP3198868B2 (ja) 1995-04-20 1995-04-20 乗算処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP09485895A JP3198868B2 (ja) 1995-04-20 1995-04-20 乗算処理装置

Publications (2)

Publication Number Publication Date
JPH08292875A JPH08292875A (ja) 1996-11-05
JP3198868B2 true JP3198868B2 (ja) 2001-08-13

Family

ID=14121738

Family Applications (1)

Application Number Title Priority Date Filing Date
JP09485895A Expired - Fee Related JP3198868B2 (ja) 1995-04-20 1995-04-20 乗算処理装置

Country Status (1)

Country Link
JP (1) JP3198868B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9703531B2 (en) * 2015-11-12 2017-07-11 Arm Limited Multiplication of first and second operands using redundant representation

Also Published As

Publication number Publication date
JPH08292875A (ja) 1996-11-05

Similar Documents

Publication Publication Date Title
US6604120B1 (en) Multiplier power saving design
Farooqui et al. General data-path organization of a MAC unit for VLSI implementation of DSP processors
JP2000259394A (ja) 浮動小数点乗算器
JPH0612229A (ja) 乗累算回路
JPH0447849B2 (ja)
JP3139466B2 (ja) 乗算器及び積和演算器
JP2010044398A (ja) 多倍長演算装置
Takagi et al. A hardware algorithm for integer division
US5721697A (en) Performing tree additions via multiplication
US4677583A (en) Apparatus for decimal multiplication
US4866655A (en) Arithmetic processor and divider using redundant signed digit
US6183122B1 (en) Multiplier sign extension
JP3198868B2 (ja) 乗算処理装置
US7693925B2 (en) Multiplicand shifting in a linear systolic array modular multiplier
Kernhof et al. A CMOS floating-point processing chip for verified exact vector arithmetic
JP3190826B2 (ja) 積和演算装置
US20040049528A1 (en) Apparatus and method for adding multiple-bit binary-strings
JP3336986B2 (ja) 信号処理プロセッサ及びそれに用いる丸め機能付き積和演算器
JP2608090B2 (ja) 高基数非回復型除算装置
JPH07141148A (ja) パイプライン並列乗算器
JP3522167B2 (ja) 演算処理回路及び演算処理方法
JP3457082B2 (ja) 演算装置
Gopal A novel low power multi path double precision fused multiplier accumulator architecture
Karthikeyan et al. More on arbitrary boundary packed arithmetic
JPH03179521A (ja) 乗算回路の構成

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees