JPH0253819B2 - - Google Patents

Info

Publication number
JPH0253819B2
JPH0253819B2 JP59086451A JP8645184A JPH0253819B2 JP H0253819 B2 JPH0253819 B2 JP H0253819B2 JP 59086451 A JP59086451 A JP 59086451A JP 8645184 A JP8645184 A JP 8645184A JP H0253819 B2 JPH0253819 B2 JP H0253819B2
Authority
JP
Japan
Prior art keywords
input
output
multiplexer
register
barrel shifter
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
JP59086451A
Other languages
English (en)
Other versions
JPS60230266A (ja
Inventor
Katsuhiko Ueda
Natsume Kurosaki
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 JP59086451A priority Critical patent/JPS60230266A/ja
Publication of JPS60230266A publication Critical patent/JPS60230266A/ja
Publication of JPH0253819B2 publication Critical patent/JPH0253819B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/544Methods 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 for evaluating functions by calculation
    • G06F7/5443Sum of products
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49905Exception handling
    • G06F7/4991Overflow or underflow

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Description

【発明の詳細な説明】 産業上の利用分野 本発明は、デイジタル信号処理に用いられる演
算装置に関するものである。
従来例の構成とその問題点 近年、デイジタル信号処理の手法は、LSI化可
能、高精度化可能等々の特徴から多くの注目を集
めるようになつた。
このデイジタル信号処理の特徴のひとつに積和
演算があげられる。積和演算を高速に行うため
に、従来から第1図に示すような演算装置が用い
られている。1は二つの入力x,yの間で乗算を
行う乗算器であり、2,3は入力ラツチである。
4は加算器であり、乗算器1の出力と、後述のア
キユムレータ5の出力との加算を行う。6,7は
加算器4の入力ラツチであり、5は加算器4の出
力を蓄えるアキユムレータである。
以上のように構成された従来の演算装置につい
て、以下の動作を説明する。なお、数体系は、固
定小数点で、負数は2の補数で表現する系を用い
る。
乗算器1の出力は入力ラツチ7を経て加算器4
の一方の入力に接続されている。また加算器4の
出力はアキユムレータ5に蓄えられるが、このア
キユムレータ5の出力は加算器4もう一つの入力
に接続されている。そこで乗算器1と加算器4と
をパイプライン動作させることにより高速に積和
演算を行うことができる。すなわち入力ラツチ2
に対する入力系列をxi、入力ラツチ3に対する入
力系列yiとするアキユムレータ5には最終的に
Σxiyiが求まる。
しかしここでオーバフローという問題を考える
必要がある。Σxiyiを第1図に示す演算装置で求
める場合、積xiyiが異るiで正および負の値をと
る時は、加算器4内でオーバフローが発生するこ
とは比較的少い。しかし、Σxiyiを求める過程で
積xiyiが連続して同符号となつた時には加算器4
内でオーバフローが発生する可能性があり、この
ためアキユムレータ5の内容は無意味なものとな
る。信号のパワーΣxi 2を求める時にはxi 2は常に
正であるのでこのオーバフローが発生する恐れは
十分にある。
そこでこのオーバフローを防ぐため、従来は、
入力系列xi,yiに対して先ずlビツトの右シフト
演算を行つて2-lxi,2-lyiの形にし、その後乗算器
1に入力することが行われていた。しかし総ての
入力系列xi,yiに対してシフト演算を行うこと
は、本来の積和演算Σxiyiに対して大きなオーバ
ヘツドとなつてしまう欠点を有していた。
発明の目的 本発明の目的は、上記従来の問題を解消するこ
と、すなわち、オーバフローを生じにくい形で積
和演算を行う演算装置を提供すること、並びに累
積加算等積和演算以外の演算に対してもオーバフ
ローを生じにくい形で演算を行う演算装置を提供
することにある。
発明の構成 本発明は、二つの入力データの積を求める乗算
器と、前記乗算器の出力を一つの入力とする二入
力の第1のマルチプレクサと、前記第1のマルチ
プレクサから出力されるデータを入力としこれを
シフトして出力するバレルシフタと、前記バレル
シフタに対してシフト数を与える第1レジスタお
よび第2のレジスタと、前記第1のレジスタおよ
び第2のレジスタの出力のいずれかを出力する第
2のマルチプレクサと、前記バレルシフタの出力
を一つの入力とする二入力の算術論理演算器とを
備えた演算装置であり、前記乗算器の出力は前記
バレルシフタで前記第1のレジスタで示される数
だけシフトした後、前記算術論理演算器に入力す
ることにより積和演算時の前記算術論理演算器内
でのオーバフロー発生を防ぎ、また、積和演算以
外の時は、前記第1のマルチプレクサに入力され
るもう一方の入力に対し、前記バレルシフタで前
記第2のレジスタで示される数だけシフトした
後、前記算術論理演算器に入力することにより前
記算術論理演算器でオーバフローが発生すること
を防ぐ。
実施例の説明 第2図は、本発明の一実施例における演算装置
の構成を示す。第2図において、21は乗算器で
あり二つのnビツトのデータx,yの積を求め
2nビツトの出力のうち最上位ビツトを除く2n−
1ビツトのデータを乗算結果として出力する。2
2,23は入力ラツチである。24はおよび
の入力端子をもつマルチプレクサであり、乗算器
21の出力データおよびそれ以外のデータのいず
れか一方を出力する。25はバレルシフタであり
マルチプレクサ24の出力をシフトしmビツトの
データとして出力する。26,27は共にレジス
タでありバレルシフタにシフト数を与える。レジ
スタ26は、乗算器21の出力に対するシフト数
を、レジスタ27はマルチプレクサ24のもう一
方の入力に対するシフト数をそれぞれ保持してい
る。28はおよびの入力端子をもつマルチプ
レクサであり、レジスタ26、レジスタ27のい
ずれの値をバレルシフタ25に与える。マルチプ
レクサ24とマルチプレクサ28とは連動してお
り、同一のセレクト信号で動作する。29は入力
ビツト幅がmピツトの算術論理演算器でありバレ
ルシフタ25の出力データおよびもう一方の入力
データとの間で算出あるいは論理演算を行う。3
0,31は共に入力ラツチである。
以上のように構成された本実施例の演算装置に
ついて以下その動作を説明する。
先ず積和演算時の動作について説明する。積和
演算時には、マルチプレクサ24,28の入力端
子はセレクト信号によりが選択される。nビツ
トの入力データ系列xi,yiは入力ラツチ22,2
3でラツチされた後乗算器21で乗算され、2n
−1ビツトのデータxiyiとしてマルチプレクサ2
4を経由してバレルシフタ25に入力される。バ
レルシフタ25は、マルチプレクサ28から出力
されるレジスタ26の値に従つて2n−1ビツト
のデータxiyiをシフトしmビツトのデータとして
出力する。ここでレジスタ26で、バレルシフタ
25の入力をlビツト右にシフトすることを指示
しておくことにより2n−1ビツトのデータxiyi
第3図に示すように少くとも上位l+1ビツトが
符号ビツト(第3図においてSで示す)であるm
ビツトのデータに変換された後入力ラツチ31に
入力される。そして算術論理演算器29で入力ラ
ツチ30のデータと加算を行う。入力ラツチ30
の値を演算開始時にはクリアしておき、その後は
算術論理演算器29での演算結果の値に更新して
ゆくことにより、積和演算を行うことができ、最
終的に算術論理演算器29は2-lΣxiyiを出力する。
そしてこの演算過程において、算術論理演算器2
9内の桁上りが発生しても少くともl回以内の桁
上りはオーバフローとはならない。すなわち、入
力系列xi、yiを予め右にl/2ビツトしてから積和 演算を行いオーバフローの発生を防ぐ従来の方法
と同様のことを入力系列xi,yiを予めシフトする
ことなく実現している。また、xi,yiの有効ビツ
トがnビツトである状態で乗算を行つた後にlビ
ツト右シフトしているため、予めl/2ビツト右シ フトし有効ビツトがn−l/2ビツトの状態で乗算 を行つた場合と比べて乗算結果の誤差は少くなつ
ている。
次に積和演算以外の時の動作について説明す
る。この時のマルチプレクサ24,28の入力端
子はセレクト信号により共にが選択される。そ
こで算術論理演算器29で行われる演算は、マル
チプレクサ24の入力端子に対する入力と入力
ラツチ30に対する入力の間で行われることにな
るがマルチプレクサ24の入力端子に対するデ
ータは、レジスタ27の値に従い、バレルシフタ
25でシフトが行われた後、入力ラツチ31に入
力される。そこで例えば入力ラツチ30の内容を
クリアしておき、算術論理演算器9で論理和演算
を行うと、算術論理演算器29の出力からは、マ
ルチプレクサ24の入力端子に入力されたデー
タをレジスタ27の値でシフトしたものが得られ
ることになり、単純なシフト演算が実現できる。
また、和Σxiを求めるのはマルチプレクサ24の
入力端子からxiを入力し算術論理演算器29で
加算を行い、その出力を入力ラツチ30に与える
ことにより実現できる。そしてこの場合も、入力
データxiをレジスタ27の値に従つてバレルシフ
タ25で右にシフトされた後、加算を行うことに
より、先に述べた積和演算の時と同様の原理より
オーバフローの発生を防ぐことができる。
発明の効果 本発明の演算装置は、二つの入力データの積を
求める乗算器と、前記乗算器の出力を一つの入力
とする二入力の第1のマルチプレクサと、前記第
1のマルチプレクサから出力されるデータを入力
とし、これをシフトして出力するバレルシフタ
と、前記バレルシフタに対してシフト数を与える
第1のレジスタおよび第2のレジスタと、前記第
1のレジスタおよび第2のレジスタの出力のいず
れかを出力する第2のマルチプレクサと、前記バ
レルシフタの出力を一つの入力とする二入力の算
術論理演算器とを備え、積和演算時には、前記乗
算器の出力を前記第1のレジスタの値に従つて前
記バレルシフタで右シフトした後、前記算術論理
演算器で加算を行うことによりオーバフローの発
生を防ぐことができる。また乗算結果に対して自
動的に右シフトを行つているため、従来のように
二つに被乗算データに対して右シフトを行つてか
ら乗算を行う方法とくらべ、シフトに要するオー
バヘツドはなく、乗算結果の誤差も少くなる。累
積加算を行う時は、前記第1のマルチプレクサの
前記乗算器に接続されていない方の入力端子にデ
ータを与え、これと前記第2のレジスタの値に従
い、前記バレルシフタで右にシフトした後前記算
術論理演算器で加算することによりオーバフロー
の発生を防ぐことができる。また、前記バレルシ
フタの機能だけを用い単純シフト演算も可能であ
り、デイジタル信号処理用の演算装置としての本
発明の実用的効果は大きい。
【図面の簡単な説明】
第1図は従来の演算装置のブロツク図、第2図
は本発明の一実施例における演算装置のブロツク
図、第3図は本発明の一実施例における乗算器の
出力およびバレルシフタの出力を示す図である。 1,21……乗算器、24,28……マルチプ
レクサ、25……バレルシフタ、26,27……
レジスタ、29……算術論理演算器。

Claims (1)

    【特許請求の範囲】
  1. 1 二つのデータの積を求めると乗算器と、前記
    乗算器の出力もしくは外部から与えられるデータ
    の何れか一方を出力する第1のマルチプレクサ
    と、前記第1のマルチプレクサ出力をシフトして
    出力するバレルシフタと、前記第1のマルチプレ
    クサが前記乗算器出力を選択した場合に使用する
    シフト数を保持する第1のレジスタと、前記第1
    のマルチプレクサが前記外部データを選択した時
    に使用するシフト数を保持する第2のレジスタ
    と、前記第1のマルチプレクサが前記乗算器出力
    を選択したときには前記第1のレジスタ出力を前
    記バレルシフタにシフト数として出力し、前記第
    1のマルチプレクサが前記外部データを出力した
    ときには前記第2のレジスタ出力を前記バレルシ
    フタにシフト数として出力する第2のマルチプレ
    クサと、前記バレルシフタの出力を一つの入力と
    する二入力の算術論理演算器とを具備したことを
    特徴とする演算装置。
JP59086451A 1984-04-27 1984-04-27 演算装置 Granted JPS60230266A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59086451A JPS60230266A (ja) 1984-04-27 1984-04-27 演算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59086451A JPS60230266A (ja) 1984-04-27 1984-04-27 演算装置

Publications (2)

Publication Number Publication Date
JPS60230266A JPS60230266A (ja) 1985-11-15
JPH0253819B2 true JPH0253819B2 (ja) 1990-11-19

Family

ID=13887293

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59086451A Granted JPS60230266A (ja) 1984-04-27 1984-04-27 演算装置

Country Status (1)

Country Link
JP (1) JPS60230266A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62145468A (ja) * 1985-12-20 1987-06-29 Oki Electric Ind Co Ltd 信号処理用プロセツサ
EP0593073A1 (en) * 1992-10-16 1994-04-20 Matsushita Electric Industrial Co., Ltd. A processor incorporating shifters

Also Published As

Publication number Publication date
JPS60230266A (ja) 1985-11-15

Similar Documents

Publication Publication Date Title
EP0113391B1 (en) Digital multiplier and method for adding partial products in a digital multiplier
US4878192A (en) Arithmetic processor and divider using redundant signed digit arithmetic
US5144576A (en) Signed digit multiplier
EP0398568A2 (en) Multiplier circuit
US4677583A (en) Apparatus for decimal multiplication
US4866655A (en) Arithmetic processor and divider using redundant signed digit
US4873660A (en) Arithmetic processor using redundant signed digit arithmetic
US4823300A (en) Performing binary multiplication using minimal path algorithm
JP3660075B2 (ja) 除算装置
JPH0519170B2 (ja)
JPH0253819B2 (ja)
US5153847A (en) Arithmetic processor using signed digit representation of internal operands
US20020178202A1 (en) Floating point multiplier for delimited operands
JPH0427587B2 (ja)
JPH10333885A (ja) 乗算回路
EP0626638A1 (en) A one's complement adder and method of operation
JP2777265B2 (ja) 高基数開平演算装置
JP3074958B2 (ja) 加算機能付きシリアル乗算器
KR100196520B1 (ko) 면적 개선을 위한 2의보수 변환 장치
KR0161485B1 (ko) 산술 연산 장치를 이용한 부스 알고리즘 곱셈 연산 장치
SU1179322A1 (ru) Устройство дл умножени двух чисел
JPH0784762A (ja) 乗算回路
JPH0582609B2 (ja)
JPH01300338A (ja) 浮動小数点乗算器
JPH08292875A (ja) 乗算処理装置

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term