JP3457082B2 - 演算装置 - Google Patents

演算装置

Info

Publication number
JP3457082B2
JP3457082B2 JP03117695A JP3117695A JP3457082B2 JP 3457082 B2 JP3457082 B2 JP 3457082B2 JP 03117695 A JP03117695 A JP 03117695A JP 3117695 A JP3117695 A JP 3117695A JP 3457082 B2 JP3457082 B2 JP 3457082B2
Authority
JP
Japan
Prior art keywords
word
selection circuit
array
multiplier
multiplicand
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
JP03117695A
Other languages
English (en)
Other versions
JPH08227354A (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 JP03117695A priority Critical patent/JP3457082B2/ja
Publication of JPH08227354A publication Critical patent/JPH08227354A/ja
Application granted granted Critical
Publication of JP3457082B2 publication Critical patent/JP3457082B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、乗算セルをアレイ状に
並べ分割可能な演算装置に関する。
【0002】
【従来の技術】近年、音声の符号化や変復調、画像の圧
縮/伸長等の複雑なディジタル処理がディジタル信号処
理LSIにより実現されている。ディジタル信号処理L
SIでは、基本的な演算機能を高速に実行するため乗算
回路など各種の演算回路を備える。
【0003】乗算回路の方式としては、基本的なセルを
アレイ状に並べた構成の並列演算型がある(「LSI化
が進む並列演算方式による乗算器の回路方式を見る」日
経エレクトロニクス、1978.5.29)。また、特
開昭62-229440には、2つの乗算を並行に行う分割可能
な配列乗算器が示されている。
【0004】図12は、上記配列乗算器の構成を示すブ
ロック図である。この乗算器は主として4つのアレイブ
ロック121〜124と選択回路13、15、17と分
離回路14と有する。被乗数X(上位半ワードをXH、
下位半ワードをXLとする)と乗数Y(上位半ワードを
YH、下位半ワードをYLとする)は、同図のように選
択回路を介して4つのアレイブロックに入力される。
【0005】この構成によれば配列乗算器を分割しない
場合には1ワード×1ワードの乗算を、分割する場合に
は半ワード×半ワードの2つの乗算を次のように実行す
る。分割しない場合には、アレイブロック121〜12
4には選択回路を介して被乗数Xおよび乗数Yが入力さ
れる。その結果1ワードの乗算X・Yが実行され、2ワ
ードの乗算結果Z3〜Z0が得られる。
【0006】分割する場合には、アレイブロック121
には選択回路を介して被乗数XLと乗数YLが、アレイ
ブロック122には選択回路を介して被乗数XHと乗数
YHが、アレイブロック123、124には選択回路を
介して0が入力される。これによりアレイブロック12
3、124における部分積が0になり、また、このとき
アレイブロック123において分離回路14はキャリー
の伝搬を止める。その結果、アレイブロック121は半
ワードの乗算XL・YLを実行し1ワードの乗算結果Z
1、Z0を出力する。同時に、アレイブロック122は
半ワードの乗算XH・YHを実行し1ワードの乗算結果
Z3、Z2を出力する。
【0007】このように従来の乗算器では、半ワード同
士の2つの乗算を同時に実行することを可能にしてい
る。
【0008】
【発明が解決しようとする課題】しかしながら上記従来
技術における乗算器によれば、積和演算つまり2つの乗
算結果をさらに加算することができないという問題があ
った。例えば、ディジタル信号処理においては積和演算
を行う機能が非常に有用とされる。ところが上記乗算器
では2つの乗算のみを行うので、この乗算結果の和を求
めるためには別途加算器が必要という問題があった。さ
らにこの場合乗算の後に加算処理が必要となり処理時間
が長くなるという問題点がある。
【0009】上記問題点を解決するため本発明は、分割
可能な配列乗算器を改良して別途加算器を設けなくても
積和演算の処理を効率よく実行する演算装置を提供する
ことを目的とする。
【0010】
【課題を解決するための手段】上記目的を達成するため
に請求項1の発明は、1ワードの被乗数と1ワードの乗
数との積を求める配列乗算器を構成する4つのアレイブ
ロックを有する演算装置であって、被乗数の下位半ワー
ド(以下XLと略す)と0とを選択的に出力する第1の
選択回路と、被乗数の上位半ワード(以下XH)と0と
を選択的に出力する第2の選択回路と、前記XHと乗数
の下位半ワード(以下YL)とが入力される第1のアレ
イブロックと、第1の選択回路の出力と前記YLとが入
力される第2のアレイブロックと、第2の選択回路の出
力と乗数の上位半ワード(以下YH)とが入力される第
3のアレイブロックと、前記XLと前記YHとが入力さ
れる第4のアレイブロックとを備える。第1及び第2の
選択回路が0を同時に選択することによりXH・YL+
XL・YHを算出する。
【0011】請求項2の発明は請求項1の演算装置にお
いて、前記YHと1とを選択的に第4のアレイブロック
に出力する第3の選択回路を備え、前記第2の選択回路
は、さらに前記XHと0の他に1を選択的に出力する。
第1の選択回路が0を、第2の選択回路が1を、第3の
選択回路が1を同時に選択することによりXH・YL+
(YHとXLとからなる1ワード)を算出する。
【0012】請求項3発明は、請求項1記載においてさ
らに、第1のアレイブロックの前記XH入力の代わり
に、前記XHと0とを選択的に出力する第4の選択回路
と、第4のアレイブロックの前記XL入力の代わりに、
前記XLと0とを選択的に出力する第5の選択回路とを
備え、前記第4のアレイブロックは、所定桁位置のキャ
リーの伝搬を阻止する制御を行うキャリー制御回路を有
する。第1の選択回路がXLを、第2の選択回路がXH
を、第4の選択回路が0を、第5の選択回路が0を同時
に選択するとともに、前記キャリー制御回路がキャリー
の伝搬を阻止することによりXH・YH及びXL・YL
を算出する。
【0013】
【作用】上記の手段により請求項1の演算装置では、第
1選択回路が0を、第2の選択回路が0を同時に選択し
た場合、第1から第4のアレイブロックは、それぞれ
(被乗数、乗数)として(XH、YL)、(0、Y
L)、(0、YH)、(XL、YH)が入力される。第
2及び第3のアレイブロックの部分積は0になるので、
第1及び第4のアレイブロックの部分積が各アレイブロ
ックを通過して加算される結果、XH・YL+XL・Y
Hつまり半ワードの2つの乗算と、2つの乗算結果の和
を求める積和演算を同時に実行する。
【0014】また、第1の選択回路がXLを、第2の選
択回路がXHを同時に選択した場合には、XHとXLか
らなる1ワードの被乗数XとYHとYLからなる1ワー
ドの乗数Yとの積を求め、2ワードの乗算結果X・Yが
得られる。請求項2の演算装置では、第1の選択回路が
0を、第2の選択回路が1を、第3の選択回路が1を同
時に選択した場合、第1から第4のアレイブロックは、
それぞれ(被乗数、乗数)として(XH、YL)、
(0、YL)、(1、YH)、(XL、1)が入力さ
れ、部分積としてXH・YL、0、YH、XLが求めら
れる。これらの部分積が各アレイを通して加算される結
果、XH・YL+(YHの左半ワードシフト結果)+X
Lが算出される。この場合、YHとXLとが別個の半ワ
ードデータであれば、XH・YL+(YHの左半ワード
シフト結果)+XLを算出することになる。また、YH
とXLとが1ワードデータ中の上位と下位の関係にあれ
ば、半ワードの乗算及びその結果と1ワードデータとの
加算とが同時に実行されることになる。
【0015】
【実施例】図1は、本発明の第1実施例に係る演算装置
の概略構成を示すブロック図である。本演算装置は、ラ
ッチ1〜8、アレイブロック10、20、30、40、
選択回路11、21、31、41、キャリー伝搬制御回
路42とを備え、(1)1ワード(32ビット)×1ワー
ドの乗算、(2)半ワード(16ビット)×半ワードの2
つの乗算、(3)半ワード×半ワードの2つの乗算とその
加算の3種類の演算を実行するよう構成されている。
【0016】同図においてラッチ1、ラッチ2は、それ
ぞれ被乗数の上位半ワード(16ビット)、下位半ワー
ドをラッチする。被乗数をX、ラッチ1の上位半ワード
をXH、ラッチ2の下位半ワードをXLとする。ラッチ
3、ラッチ4は、それぞれ乗数Yの上位半ワード、下位
半ワードYLをラッチする。乗数をY、ラッチ3の上位
半ワードをYH、ラッチ4の下位半ワードをYLとす
る。
【0017】ラッチ5〜ラッチ8は、2ワードの演算結
果を半ワードずつ(上位から順にそれぞれZ3、Z2、
Z1、Z0とする)をラッチする。アレイブロック10
〜40は、それぞれ32ビット配列乗算器を4分割した
一部分であり、(XH又は0、YL)、(XL又は0、
YL)、(XH又は0、YH)、(XL又は0、YH)
が選択回路を介して入力される。
【0018】選択回路11、31は、それぞれアレイブ
ロック10、30に被乗数XHと0とを選択的に供給す
る。選択回路21、41は、それぞれアレイブロック2
0、40に被乗数XLと0とを選択的に供給する。具体
的には上記の演算(1)実行時には選択回路11、21、
31、41は被乗数を選択し、演算(2)実行時には選択
回路11、41は0を、選択回路21、31は被乗数を
選択し、演算(3)実行時には選択回路11、41は被乗
数を、選択回路21、31は0を選択して供給する。
【0019】キャリー伝搬制御回路42は、アレイブロ
ック40における特定の位(演算結果Z1の最上位ビッ
トに相当する桁)からのキャリーの伝搬を阻止する。具
体的には上記の演算(1)実行時には選択回路11、2
1、31、41は被乗数を選択し、演算(2)実行時には
選択回路11、41は0を、選択回路21、31は被乗
数を選択し、演算(3)実行時には選択回路11、41は
被乗数を、選択回路21、31は0を選択して供給す
る。
【0020】図2は、上記演算装置の詳細な構成を示す
ブロック図である。同図では説明の便宜上、1つのアレ
イブロックが4×4ビット(演算装置全体では8×8ビ
ット)の場合の構成例を示す。アレイブロックの内部は
規則的に配列されているのでデータ幅は任意に設定でき
る。32×32ビット構成であれば基本セルを32×3
2個に増やし、各ラッチと各選択回路とを16ビット長
に拡張すればよい。また、同図ではアレイブロック内の
桁位置を揃えるため基本セルが斜めに配置されている
が、実際のLSIでは回路面積を小さくするため図1の
ように配置される。
【0021】図2において、アレイブロック10〜40
は、それぞれアレイ状に並べられら16個の基本セルか
らなる。各基本セルは、ANDゲート61とフルアダー
62とからなり、次式の論理演算を行うことにより乗算
における部分積を求める。 s=kEOR(x・y)EORc c´=(k・x・y)OR(kEOR(x・y))・c ここで、Sは次段への加算結果出力、kは前段からの加
算結果入力、xは被乗数ビット入力、yは乗数ビット入
力、cは下位桁からのキャリー入力、c´は上位桁への
キャリー出力を表す。EORは排他的論理和、ORは論理
和、・は論理積を表す。図中、破線矢印のk入力とc入
力はローレベル(論理0)を示す。
【0022】選択回路11、21、31、41は、それ
ぞれ4個のANDゲートからなり、制御信号sel1、sel
2、sel3、sel4がハイレベルのときは被乗数を、ローレ
ベルのときは0を出力する。具体的には上記の(1)1ワ
ード×1ワードの乗算、(2)半ワード(16ビット)×
半ワードの2つの乗算、(3)半ワード×半ワードの2つ
の乗算結果の加算の各場合に、各選択回路は次のように
動作する。 <演算種類><sel1、sel2、sel3、sel4>→<11、21、31、41> <演算(1) ><ハイ、ハイ、ハイ、ハイ>→<XH、XL、XH、XL> <演算(2) ><ロー、ハイ、ハイ、ロー>→< 0、XL、XH、 0> <演算(3) ><ハイ、ロー、ロー、ハイ>→<XH、 0、 0、XL> ここでハイは選択信号がハイレベル、ローはローレベル
であることを示す。
【0023】キャリー伝搬制御回路42は4個のAND
ゲート63からなり、演算結果z7ビットからz8ビットの
桁に相当するアレイブロック40内のキャリーの伝搬を
制御信号c-onに従って次のように制御する。 <演算種類><c-on>→<伝搬 > <演算(1) ><ハイ>→<する > <演算(2) ><ロー>→<しない> <演算(3) ><ハイ>→<する > 以上のように構成された本発明の演算装置について、以
下その動作を説明する。演算動作のうち上記(1)1ワー
ド×1ワードの乗算、及び(2)半ワード×半ワードの2
つの乗算については、従来技術と同様であるので簡単に
説明する。以下の説明では1ワードを8ビットとして説
明する。
【0024】(1)1ワード×1ワードの乗算を行う場
合、4つの選択回路11、21、31、41はいずれも
被乗数を選択し、キャリー伝搬制御回路42はキャリー
の伝搬を行う。これにより、8ビット被乗数Xと8ビッ
ト乗数Yの積が求められ、ラッチ5〜8に16ビットの
乗算結果が4ビットずつ(Z3、Z2、Z1、Z0)出
力される。
【0025】図3は、1ワード(8ビット)×1ワード
の乗算を行う場合の計算過程を示す説明図である。図
中、X7〜X4、X3〜X0はラッチ1、ラッチ2内の8ビット
被乗数Xの各ビットを、Y7〜Y4、Y4〜Y0はラッチ3、ラ
ッチ4内の8ビット乗数の各ビットを示す。同図のよう
に、1ワード(8ビット)×ワードの乗算は、4つのア
レイブロック全体を使って、筆算による乗算に対応した
動作を行う。ここでは、基本セルの1つが1ビットの部
分積と前段との和を求めている。
【0026】(2)演算装置を分割して半ワード長の2つ
の乗算を同時に行う場合は、選択回路11と選択回路4
1は0を選択してアレイブロック10、40に出力す
る。選択回路21と選択回路31は被乗数を選択してア
レイブロック20、30に出力する。キャリー伝搬制御
回路42はキャリーを伝搬しない。そのためアレイブロ
ック20におけるXL・YLの演算結果がアレイブロッ
ク30におけるXH・YHの演算に影響しないようにな
る。このときの状態を図4に示す。アレイブロック1
0、40(図中のハッチング部分)ではその演算結果は
0となり、アレイブロック20と30では、それぞれX
L・YLとXH・YHの乗算が行われる。アレイブロッ
ク20によるXL・YLの32ビット演算結果はラッチ
7、8(Z1、Z0)に出力される。アレイブロック3
0によるXH・YHの32ビット演算結果はラッチ5、
6(Z3、Z2)に出力される。このように半ワードの
2つの乗算が同時に実行される。
【0027】(3)半ワード×半ワードの2つの乗算結果
の加算を行う場合、選択回路11、選択回路41は、被
乗数XH、XLを選択してアレイブロック10、40に
出力する。選択回路21と選択回路31は0を選択して
アレイブロック20、30に出力する。キャリー伝搬制
御回路42はキャリーを伝搬する。このときの状態を図
5に示す。アレイブロック20、30(ハッチング部
分)ではその演算結果は0となり、アレイブロック10
と40ではそれぞれXH・YLとXL・YHの乗算が行
われる。その加算結果(XH・YL+XL・YH)がラ
ッチ6とラッチ7に出力される。
【0028】図6は、上記半ワード×半ワードの2つの
乗算とその加算を同時に行う場合の動作説明図である。
破線枠で示したX7〜X4、Y4〜Y0は、半ワードの被乗数X
Hと半ワードの乗数YLとのペアとしてラッチ1、ラッ
チ4に保持される。実線枠で示したX3〜X0、Y7〜Y4は、
半ワードの被乗数XLと半ワードの乗数YHとの他方の
ペアとしてラッチ2、ラッチ3に保持される。アレイブ
ロック20、30では選択回路21、31により被乗数
として0が入力されるので、各基本セルの部分積出力S
が0になる。またアレイブロック10、アレイブロック
30で半ワードの乗算XH・YL、XL・YHが求めら
れる。この2つの乗算結果は位取りが同じ位置にあるの
で基本セルの各段を通じて加算される。この加算結果
(XH・YL+XL・YH)はラッチ6とラッチ7に出
力される。
【0029】次に本発明の第2の実施例について説明す
る。図7は、第2の実施例における演算装置の概略構成
を示すブロック図である。同図の演算装置は、図1に対
して選択回路31の代わりに選択回路32が備えられ新
たに選択回路43が追加されており、第1の実施例の演
算(1)〜(3)に加えて (4)XH・YL+YH<<(半ワード)+XLを求める
演算を実行するよう構成されている。ここで”<<”は
左シフト演算を表し、アレイブロックが16ビットであ
るときは16ビット左シフトを、4ビットであるときは
4ビット左シフトになる。以下図1と同じ番号の構成要
素は同一の回路を表すので説明を省略し、異なる点のみ
説明する。
【0030】選択回路32は、被乗数の上位半ワードX
Hと0と1の何れかを選択する。選択回路43は、乗数
上位半ワードYHと1の何れかを選択する。具体的には
上記の演算(1)実行時には選択回路11、21、32、
41は被乗数を、選択回路43は乗数を選択する。演算
(2)実行時には選択回路11、41は0を、選択回路2
1、32は被乗数を、選択回路43は乗数を選択する。
演算(3)実行時には選択回路11、41は被乗数を、選
択回路21、32は0を、選択回路43は乗数を選択す
る。上記演算(4)実行時には、選択回路11、41は被
乗数を、選択回路210を、選択回路32、43は1を
選択する。
【0031】図8は、上記演算装置の詳細な構成を示す
ブロック図である。同図では説明の便宜上、1つのアレ
イブロックが4×4ビット(演算装置全体では8×8ビ
ット)の場合の構成例を示す。選択回路32、選択回路
43以外の構成要素は図2と同じなので、異なる点のみ
説明する。選択回路32は、それぞれ4個のANDゲー
トと1個のORゲートからなり、、2本の制御信号(se
l3a、sel3b)が(ハイ、ロー)のときは被乗数XHを、
(ロー、ロー)ときは0を、(ロー、ハイ)のときは1
(XHのLSBのみ1)を出力する。
【0032】選択回路43は、それぞれ4個のANDゲ
ートと1個のORゲートからなり、、2本の制御信号
(sel4a、sel4b)が(ハイ、ロー)のときは乗数YH
を、(ロー、ハイ)のときは1(YHのLSBのみ1で
他のビットは0)を出力する。各選択回路11、21、32、41、
43は、(1)1ワード×1ワードの乗算、(2)半ワード(1
6ビット)×半ワードの2つの乗算、(3)半ワード×半
ワードの2つの乗算結果の加算、(4)XH・YL+YH
<<(半ワード)+XLを求める演算の各場合に、選択
信号に応じて次のように動作する。 <演算種類><sel1、sel2、(sel3a、 3b)、sel4、(sel4a、 4b)> → <11、21、32、41、43> <演算(1) ><ハイ、ハイ、(ハイ、ロー)、ハイ、(ハイ、ロー)> → <XH、XL、XH、XL、YH> <演算(2) ><ロー、ハイ、(ハイ、ロー)、ロー、(ハイ、ロー)> → < 0、XL、XH、 0、YH> <演算(3) ><ハイ、ロー、(ロー、ロー)、ハイ、(ハイ、ロー)> → <XH、 0、 0、XL、YH> <演算(4) ><ハイ、ロー、(ロー、ハイ)、ハイ、(ロー、ハイ)> → <XH、 0、 1、XL、 1> またキャリー伝搬制御回路42は、演算結果z7ビットか
らz8ビットの桁に相当するアレイブロック40内のキャ
リーの伝搬を制御信号c-onに従って次のように制御す
る。 <演算種類><c-on>→<伝搬 > <演算(1) ><ハイ>→<する > <演算(2) ><ロー>→<しない> <演算(3) ><ハイ>→<する > <演算(4) ><ハイ>→<する > 以上のように構成された本実施例の演算装置について、
以下その動作を説明する。演算動作のうち上記演算(1)
1ワード×1ワードの乗算及び演算(2)半ワード×半ワ
ードの2つの乗算については従来技術と同様であり、演
算(3)については第1実施例と同様であるので説明を省
略する。以下の説明では1ワードを8ビットとして説明
する。
【0033】演算(4)のXH・YL+YH<<4+XL
を求める動作について説明する。選択回路21は0を選
択し、XLとYLの入力されるアレイブロック20の出
力を0とする。図9に、このときの状態を示す。図中ハ
ッチングされた部分は演算を行わない部分を表す。選択
回路11は被乗数XHを選択し、アレイブロック10で
はXHとYLの間の乗算を実行する。選択回路32では
被乗数XHの代りに1が選択されるのでアレイブロック
30からはYHを半ワード左シフトされて出力される。
選択回路43では被乗数の代りに1が選択されアレイブ
ロック40からはXLが出力される。
【0034】図10は、上記半ワード×半ワードの2つ
の乗算とその加算を同時に行う場合の動作説明図であ
る。破線枠で示したX7〜X4、Y4〜Y0は半ワードの被乗数
XHと半ワードの乗数YLとのペアとしてラッチ1、ラ
ッチ4に保持される。実線枠で示したY7〜Y4は加算の対
象としてラッチ3に保持される。二重線で示したX3〜X0
は半ワード左シフトの対象としてラッチ2に保持され
る。アレイブロック10では被乗数XHと乗数YLの乗
算が実行される。アレイブロック20では各基本セルの
出力が0になる。アレイブロック30ではYHと半ワー
ド分上位に位置する1とが乗算された結果としてYHが
4ビット(半ワード)左シフトされる。アレイブロック
40ではーLと1とが乗算された結果としてXLが得ら
れる。これらのアレイブロックの演算結果は、各段を通
過することによって加算されてXH・YL+YH<<4
+XLの演算結果がラッチ6、ラッチ7に出力される。
【0035】なお、上記の動作のうち左半ワードシフト
の動作は、YHもXLも半ワードの別個の数値データで
あることを前提としている。これ以外に、1ワードの数
値データについて上位半ワードをYH、下位半ワードを
XLとして上記演算(4)を実行させた場合は、図11に
示すように入力X(上位半ワードXH、下位半ワードX
L)と入力Y(上位半ワードYH、下位半ワードYL)
に対して出力Zは、Z=XH・YL+[YH、XL]が
得られる。ここで[]内は連結を表し、YHは上位半ワ
ード、XLは下位半ワードである。この場合、半ワード
×半ワードの乗算結果と1ワードの数値データとを加算
する積和演算が1回で実行可能となる。
【0036】
【発明の効果】以上説明してきたように請求項1の発明
によれば、演算の回路を増加させることなく、2つの半
ワード長の乗算とこの乗算結果の和を1度に求める積和
演算が可能となる。請求項2の発明によれば、半ワード
長の乗算と、この乗算結果と1ワード長の入力との和を
求める積和演算を1度に実行することが可能となり、加
算回路の付加なしに積和演算を高速に実行することが可
能となる。
【0037】請求項3の発明によれば、請求項1の効果
に加えて、積和演算の他に独立した2つの半ワード長の
乗算を並列に実行することができる。
【図面の簡単な説明】
【図1】本発明の第1実施例に係る演算装置の概略構成
を示すブロック図である。
【図2】同実施例における演算装置の詳細な構成を示す
ブロック図である。
【図3】同実施例において1ワード(8ビット)×1ワ
ードの乗算を行う場合の計算過程を示す説明図である。
【図4】同実施例における2つの半ワード乗算を並列実
行させるときの演算装置の状態を示す図である。
【図5】同実施例における2つの半ワード乗算とその加
算を並列実行させるときの演算装置の状態を示す図であ
る。
【図6】同実施例における2つの半ワード乗算とその加
算を同時に行う場合の動作説明図である。
【図7】第2の実施例における演算装置の概略構成を示
すブロック図である。
【図8】同実施例における演算装置の詳細な構成を示す
ブロック図である。
【図9】同実施例におけるXH・YL+YH<<4+X
Lを求める演算実行時の演算装置の状態を示す図であ
る。
【図10】同実施例における半ワード×半ワードの2つ
の乗算とその加算を同時に行う場合の動作説明図であ
る。
【図11】同実施例における半ワードの乗算と1ワード
データの加算を求める積和演算の説明図である。
【図12】従来技術における配列乗算器の構成を示すブ
ロック図である。
【符号の説明】
1〜8 ラッチ 10 アレイブロック 20 アレイブロック 30 アレイブロック 40 アレイブロック 11 選択回路 21 選択回路 31 選択回路 32 選択回路 41 選択回路 42 キャリー伝搬制御回路 43 選択回路 61 ANDゲート 62 フルアダー 63 ANDゲート
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 7/52 G06F 7/00 G06F 17/10

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 1ワードの被乗数と1ワードの乗数との
    積を求める配列乗算器を構成する4つのアレイブロック
    を有する演算装置であって、 被乗数の下位半ワード(以下XLと略す)と0とを選択
    的に出力する第1の選択回路と、 被乗数の上位半ワード(以下XH)と0とを選択的に出
    力する第2の選択回路と、 前記XHと乗数の下位半ワード(以下YL)とが入力さ
    れる第1のアレイブロックと、 第1の選択回路の出力と前記YLとが入力される第2の
    アレイブロックと、 第2の選択回路の出力と乗数の上位半ワード(以下Y
    H)とが入力される第3のアレイブロックと、 前記XLと前記YHとが入力される第4のアレイブロッ
    クとを備え、 第1及び第2の選択回路が0を同時に選択することによ
    りXH・YL+XL・YHを算出することを特徴とする
    演算装置。
  2. 【請求項2】 請求項1記載の演算装置はさらに、前記
    YHと1とを選択的に第4のアレイブロックに出力する
    第3の選択回路を備え、 前記第2の選択回路は、さらに前記XHと0の他に1を
    選択的に出力し、 第1の選択回路が0を、第2の選択回路が1を、第3の
    選択回路が1を同時に選択することによりXH・YL+
    (YHとXLとからなる1ワード)を算出することを特
    徴とする演算装置。
  3. 【請求項3】 請求項1記載の演算装置はさらに、 第1のアレイブロックの前記XH入力の代わりに、前記
    XHと0とを選択的に出力する第4の選択回路と、 第4のアレイブロックの前記XL入力の代わりに、前記
    XLと0とを選択的に出力する第5の選択回路とを備
    え、 前記第4のアレイブロックは、所定桁位置のキャリーの
    伝搬を阻止する制御を行うキャリー制御回路を有し、 第1の選択回路がXLを、第2の選択回路がXHを、第
    4の選択回路が0を、第5の選択回路が0を同時に選択
    するとともに、前記キャリー制御回路がキャリーの伝搬
    を阻止することによりXH・YH及びXL・YLを算出
    することを特徴とする演算装置。
JP03117695A 1995-02-20 1995-02-20 演算装置 Expired - Fee Related JP3457082B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP03117695A JP3457082B2 (ja) 1995-02-20 1995-02-20 演算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP03117695A JP3457082B2 (ja) 1995-02-20 1995-02-20 演算装置

Publications (2)

Publication Number Publication Date
JPH08227354A JPH08227354A (ja) 1996-09-03
JP3457082B2 true JP3457082B2 (ja) 2003-10-14

Family

ID=12324146

Family Applications (1)

Application Number Title Priority Date Filing Date
JP03117695A Expired - Fee Related JP3457082B2 (ja) 1995-02-20 1995-02-20 演算装置

Country Status (1)

Country Link
JP (1) JP3457082B2 (ja)

Also Published As

Publication number Publication date
JPH08227354A (ja) 1996-09-03

Similar Documents

Publication Publication Date Title
JP3761977B2 (ja) 遅延整合技術の利用によりクリティカル・パスを減少させた浮動小数点型掛け算器及びその演算方法
US6366944B1 (en) Method and apparatus for performing signed/unsigned multiplication
EP0328063B1 (en) Absolute value calculating circuit having a single adder
JP3244506B2 (ja) 小型乗算器
JPH0447849B2 (ja)
US5023827A (en) Radix-16 divider using overlapped quotient bit selection and concurrent quotient rounding and correction
US7373368B1 (en) Multiply execution unit that includes 4:2 and/or 5:3 compressors for performing integer and XOR multiplication
US4878192A (en) Arithmetic processor and divider using redundant signed digit arithmetic
EP0416308A2 (en) Rectangular array signed digit multiplier
KR100308726B1 (ko) 고속 산술 장치에서 올림수 예견가산기 스테이지의 수를 감소시키는 장치 및 방법
JP3537378B2 (ja) 加算器および集積回路
US20040010536A1 (en) Apparatus for multiplication of data in two&#39;s complement and unsigned magnitude formats
US5870322A (en) Multiplier to selectively perform unsigned magnitude multiplication or signed magnitude multiplication
JPH04355827A (ja) 開平演算装置
JP3457082B2 (ja) 演算装置
US20030208519A1 (en) Power efficient booth recoded multiplier and method of multiplication
JPH04172526A (ja) 浮動小数点除算器
JP3453618B2 (ja) 根の多項近似式を利用した割り算と平方根の為のプロセッサー
JPH056263A (ja) 加算器およびその加算器を用いた絶対値演算回路
US7444366B2 (en) Faster shift value calculation using modified carry-lookahead adder
JPH06223097A (ja) 乗算器、積和演算器の回路記述の発生方法
JP3336986B2 (ja) 信号処理プロセッサ及びそれに用いる丸め機能付き積和演算器
JP3517162B2 (ja) 除算・開平演算装置
JP3210420B2 (ja) 整数上の乗算回路
JP3198868B2 (ja) 乗算処理装置

Legal Events

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