JPS63195771A - 積和演算回路 - Google Patents

積和演算回路

Info

Publication number
JPS63195771A
JPS63195771A JP2854287A JP2854287A JPS63195771A JP S63195771 A JPS63195771 A JP S63195771A JP 2854287 A JP2854287 A JP 2854287A JP 2854287 A JP2854287 A JP 2854287A JP S63195771 A JPS63195771 A JP S63195771A
Authority
JP
Japan
Prior art keywords
multiplier
output
accumulator
bits
input
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
JP2854287A
Other languages
English (en)
Inventor
Hidenobu Harasaki
原崎 秀信
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 JP2854287A priority Critical patent/JPS63195771A/ja
Publication of JPS63195771A publication Critical patent/JPS63195771A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は積和演算回路に関し、特にディジタル信号処理
プロセッサの積和演算回路に関する。
〔従来の技術〕
ディジタル信号処理で最も多く用いられる演算は2つの
入力を乗算し、その結果を累算していく、いわゆる積和
演算である。この積和演算を高速に行なう信号処理プロ
セッサの一例として、16ビット×16ビットの入力に
対し31ビットの積を1インストラクシヨンサイクルで
計算する並列乗算器と、16ビットの算術論理演算回路
が並列動作でき、1演算サイクルで積和演算を行なうも
のがある。
〔発明が解決しようとする問題点〕
上述した従来の積和演算回路は、並列乗算器出力の上位
16ビットを累算するために、128点の直交変換を計
算する場合式(1)の計算式にしたがった演算を行う。
F(k)−1/128I:A(i、j)f (i)式(
1)で入力サンプルf (i)を−1交f(i)〈1、
係数A(i、j)を−1ΩA(i、j)〈1とすると、
積和後のダイナミックレンジは、なる、そこで、オーバ
フローを防ぐには係数にスケーリングを施す必要がある
。このスケーリングをより詳細に説明すると、先に示し
た式(1)を式(2)に書き換えることである。
式(2)で入力サンプルf(1)を−1<f (i)〈
1、係数A(i、j>を−1/128交A(i。
j)/128<1/128とすることによって、積和後
のダイナミックレンジを−1<F(k)<1にすること
である。しかし、このスケーリングのために、係数は1
6ビットの精度を保てなくなるという欠点がある。
本発明の目的は、係数のスケーリングによる精度劣化が
なく、式(1)を直接計算することができる積和演算回
路を提供することにある。
〔問題点を解決するための手段〕
本発明の積和演算回路は、2つの入力に対して乗算を行
なう乗算器と、該乗算器の出力を入力とし前記乗算器の
出力ビット数より上位側に演算ビット数を有する累算器
と、該累算器の出力を入力とし任意のビット数分だけ右
シフトするバレルシフタと、該バレルシフタにシフトす
るビット数のクロックを供給するレジスタとを含んで構
成される。
〔作用〕 本発明は入力サンプルと、係数がそれぞれ−1から1の
間の値を取るものと仮定している。この場合、−18−
1以外の係数の乗算においてオーバーフローが生じるこ
とはあり得ない。すなわち、乗算器出力も−1から1の
間になる。この乗算、弱出力をN個累算することから、
累算では−NからNまでダイナミックレンジが拡大する
。そこで、本発明の累算器には、乗算器出力のMSBよ
りも上位側にオーバーフローを防ぐための複数個のビッ
トが存在する。
このことによって、係数のスケーリングを行なう必要が
なく、精度よい積和演算が実現される。
この時積和演算出力は、やはり、−1から1までの値に
なるように、先に述べた累算個数Nで除算する必要があ
る。しかし、一般の信号処理において、累算個性Nは2
のべきであることが多く、除算を行なわずに右シフト演
算によって除算の代わりを行なうことができる。
〔実施例〕
次に、本発明について図面を参照して説明する。
第1図は本発明の一実施例を示すブロック図である。
第1図において、1は乗算器の一方の入端子、2は乗算
器の他方の入力端子、3は並列形の乗算器、4は累算器
、5はバレルシフタ、6は5のバレルシフタへシフト量
を供給するレジスタである。
乗算器3は16ビット精度であり、入力はそれぞれ16
ビットの2の補数表現であり、出力は31ビットの2の
補数表現となる。
乗算器3の出力が31ビットなのに対して、累算器4は
38ヒツトの精度があり、並列乗算器3の出力のMSB
が乗算器4の入力の上位8ビットに符号拡張が行なわれ
ている。この符号拡張によって、累算器4では乗算器3
の128倍までの数値を扱うことができる0、累算器4
の詳細な回路については後述する。
又、バレルシフタ5は22ビット入力の内、3ビットの
レジスタ6によって指定される任意の位置から連続する
15ビットを出力するものであり、累算器4の出力のM
SBを除く上位22ビットに接続されている。また、バ
レルシフタ5の出力のMSBは、累算器4の出力のMS
Bに接続されている。
第1図に示した積和演算回路を用いて式(1)の計算を
する場合、初期状態として累算器4の保持している値は
“0°”で、レジスタ6には1/128をシフトで行な
うためのシフト量“7′″が設定されているものとする
。入力端子1がら入力サンプルf (0) 、 f (
1)・・・f (127)を、入時のそれぞれの値は1
6ビットの2の補数表現で−1から1までの値をとる。
これらの入力から乗算時間分の遅れの後に、乗算器3か
らはA(0,0)f (0)、A (1,O)f (1
)・・・A(127,0)f (127)の出力が順次
得られる。
これらの積もすべて−1から1の間の値となり累算器4
に入力される。累算器4では乗算器3からの128個の
積を累算する。この時、先に述べたように累算器4は、
乗算器3の出力よりも128倍大きい値が保持できるよ
うにビット数があり、しかも符号拡張がされているため
、−128から128までの数値を扱うことができる。
このことから、累算器4ではオーバーフローすることな
しに、累算が行なえる。
128個の累算後、バレルシフタ5で1/128を実行
するバレルシフタ5には、レジスタ6から1/128で
あることを示すクロックが入力されており、バレルシフ
タ5の出力の16ビットは累算器4の出力の上位16ビ
ットを選択することにより、1/128が実現できる。
第2図は第1図の累算器4の詳細ブロック図である。
第2図に示すように、累算器4は38ビットの加算器1
0と38ビットのレジスタ11で構成される。
加算器10は第1図の乗算器3の出力31ビットを38
ビットに符号拡張を行なったものと、レジスタ11に保
持されている値とを加算する。そして、加算結果が加算
器10の出力として得られ、レジスタ11に保持される
〔発明の効果〕
以上説明したように本発明の積和演算回路は、固定小数
点演算方式の積和演算回路によって式(1)で示される
ような積和演算をオーバーフローすることなく、実行で
きるという効果がある。
又、係数のスケーリングが不用なので、スケーリングに
よる演算精度の劣化が生じないという効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例のブロック図、第2図は第1
図の累算器の詳細ブロック図である。 1.2・・・入力端子、3・・・乗算器、4・・・累算
器、5・・・バレルシフタ、6・・・レジスタ、10・
・・加算器、11・・・レジスタ。 第1図 第2rIA

Claims (1)

    【特許請求の範囲】
  1. 2つの入力に対して乗算を行なう乗算器と、該乗算器の
    出力を入力とし前記乗算器の出力ビット数より上位側に
    演算ビット数を有する累算器と、該累算器の出力を入力
    とし任意のビット数分だけ右シフトするバレルシフタと
    、該バレルシフタにシフトするビット数のクロックを供
    給するレジスタとを含むことを特徴とする積和演算回路
JP2854287A 1987-02-09 1987-02-09 積和演算回路 Pending JPS63195771A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2854287A JPS63195771A (ja) 1987-02-09 1987-02-09 積和演算回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2854287A JPS63195771A (ja) 1987-02-09 1987-02-09 積和演算回路

Publications (1)

Publication Number Publication Date
JPS63195771A true JPS63195771A (ja) 1988-08-12

Family

ID=12251550

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2854287A Pending JPS63195771A (ja) 1987-02-09 1987-02-09 積和演算回路

Country Status (1)

Country Link
JP (1) JPS63195771A (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6165362A (ja) * 1984-09-06 1986-04-03 Ricoh Co Ltd デジタル信号処理装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6165362A (ja) * 1984-09-06 1986-04-03 Ricoh Co Ltd デジタル信号処理装置

Similar Documents

Publication Publication Date Title
KR100284799B1 (ko) 시프트 수단을 이용한 지수 회로 및 사용 방법
JPH0612229A (ja) 乗累算回路
KR20040063143A (ko) 오퍼랜드 가산 방법 및 회로 장치 및 컴퓨터 구현형 장치
JPH0477932B2 (ja)
JP3003467B2 (ja) 演算装置
JP3318753B2 (ja) 積和演算装置および積和演算方法
JPS5939774B2 (ja) 指数関数の演算方式
JPS63195771A (ja) 積和演算回路
JPS61256436A (ja) 演算装置
JPH0831024B2 (ja) 演算プロセッサ
JPH03192429A (ja) 平方根演算装置
JP2508286B2 (ja) 平方根演算装置
JP2951685B2 (ja) 固定小数点演算器
JPS61213926A (ja) Dsp演算処理方式
RU1784975C (ru) Интегроарифметическое устройство
JP2821406B2 (ja) 積和演算器およびこれを用いたディジタルフィルタ回路
JP3226823B2 (ja) 高精度高桁乗算装置
JPS63118936A (ja) 倍精度演算装置
JP2000172487A (ja) 乗算回路及び方法
JPH05108693A (ja) Iirデジタルフイルタ装置
JPH0427587B2 (ja)
JPS62131334A (ja) 除算装置
JPH0324614A (ja) シフト演算装置
JPH0468435A (ja) 乗算器
JPH06203058A (ja) シグモイド関数演算装置及びその演算方法