JPH0535774A - 演算回路 - Google Patents

演算回路

Info

Publication number
JPH0535774A
JPH0535774A JP18642591A JP18642591A JPH0535774A JP H0535774 A JPH0535774 A JP H0535774A JP 18642591 A JP18642591 A JP 18642591A JP 18642591 A JP18642591 A JP 18642591A JP H0535774 A JPH0535774 A JP H0535774A
Authority
JP
Japan
Prior art keywords
register
output
data
adder
subtractor
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
JP18642591A
Other languages
English (en)
Inventor
Yoshihito Shimazaki
良仁 島▲崎▼
Norio Yamaguchi
法夫 山口
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP18642591A priority Critical patent/JPH0535774A/ja
Publication of JPH0535774A publication Critical patent/JPH0535774A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

(57)【要約】 【目的】 乗算誤差を少なくし、データ交換の回数を減
ずる。 【構成】 二重構造の入力レジスタ2−1,2−2、セ
レクタ3−1,3−2、乗算器4、加減算器5、出力レ
ジスタ6、及びセレクタ7を有する演算回路において、
各入力レジスタ2−1,2−2の出力側に、それぞれ補
助加減算器10−1,10−2を設け、さらにレジスタ
11−1,11−2を設けた。補助加減算器10−1,
10−2によりデータの加算又は減算を行うようにして
いるので、演算時、乗算の組み合わせを少なくでき、デ
ータの入れ替えが不必要となる。また、乗算回数が少な
くなることで、乗算誤差が減少する。さらに、補助加減
算器10−1,10−2の加減算を乗算器4の乗算と同
時に行うことにより、加減算回数の増加分を抑えること
が可能となる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、高速数値演算処理用の
ディジタル・シグナル・プロセッサ(以下、DSPとい
う)等に設けられる演算回路、特に乗算器、加減算器、
及び二重構造からなる入力レジスタ等を有し、該入力レ
ジスタ間で加減算する機能を備えた演算回路に関するも
のである。
【0002】
【従来の技術】従来、この種の演算回路としては、例え
ば、文献;ADSP−2100/2100Aユーザーズ
・マニュアル、アナログ・デバイセズ(株)(198
8)P.12−27に記載されるものがあった。
【0003】図2は、前記文献に記載された従来の演算
回路の一構成例を示すブロック図である。
【0004】この演算回路は、プログラムバス、データ
バス又は演算出力バス1を有し、そのバス1には、2つ
の入力レジスタ2−1,2−2が接続されている。この
入力レジスタ2−1,2−2は、それぞれ2個のXAレ
ジスタ2−1aとXBレジスタ2−1b、2個のYAレ
ジスタ2−2aとYBレジスタ2−2bからなる二重構
造で構成されている。XAレジスタ2−1aとYAレジ
スタ2−2a、及びXBレジスタ2−1bとYBレジス
タ2−2bとは一対になっており、二対のレジスタを同
時に使用することは不可能となっている。
【0005】各入力レジスタ2−1,2−2の出力側に
は、それぞれ第1のセレクタ3−1,3−2が接続され
ている。セレクタ3−1,3−2は、XAレジスタ2−
1aとXBレジスタ2−1b、及びYAレジスタ2−2
aとYBレジスタ2−2bのいづれか一方を選択して出
力データを出力する機能を有し、その出力側は、乗算器
4に接続されている。乗算器4は、セレクタ3−1,3
−2の各出力データの乗算を行う機能を有し、さらにそ
の出力側が加減算器5に接続されている。
【0006】加減算器5は、乗算結果と帰還入力データ
S7を加算、又は減算し、或いは演算結果を累積して演
算結果を出力する回路であり、その出力側には出力レジ
スタ6が接続されている。出力レジスタ6は、入力レジ
スタ2−1,2−2と同様に2個のZAレジスタ6aと
ZBレジスタ6bからなる二重構造で構成されている。
出力レジスタ6の出力側には、第2のセレクタ7が接続
されている。セレクタ7は、ZAレジスタ6aとZBレ
ジスタ6bのいづれか一方を選択して出力データを出力
する回路であり、その出力側から加減算器5の入力側へ
帰還入力データS7を供給する機能を有すると共に、出
力データをバス1に出力する機能を有している。
【0007】この演算回路内の各構成回路は、DSP等
に設けられる命令デコードからの制御信号により、制御
される構成となっている。
【0008】次に、この演算回路の動作について説明す
る。図示しない命令デコードからの制御信号により、プ
ログラムバス、データバス又は演算出力バス1からデー
タが入力レジスタ2−1及び入力レジスタ2−2に入力
されると、該データはそれぞれXAレジスタ2−1a、
XBレジスタ2−1b、YAレジスタ2−2a、及びY
Bレジスタ2−2bに格納される。
【0009】XAレジスタ2−1aとXBレジスタ2−
1bは、いづれか一方がセレクタ3−1により選択され
る。同様にYAレジスタ2−2aとYBレジスタ2−2
bは、いづれか一方がセレクタ3−2により選択され
る。
【0010】各セレクタ3−1,3−2により選択され
た出力データは乗算器4へ入力され、該乗算器4によっ
て乗算される。乗算結果は、帰還入力データS7と共に
加減算器5に出力される。加減算器5の演算結果は、出
力レジスタ6に出力され、ZAレジスタ6aとZBレジ
スタ6bに格納される。
【0011】セレクタ7は、ZAレジスタ6aとZBレ
ジスタ6bのうちいづれか一方を選択して出力データを
出力する。そして、その出力データが、加減算器5の入
力側に供給されると共に、プログラムバス、データバス
又は演算出力バス1へ出力される。
【0012】このように、この演算回路は、入力レジス
タ2−1,2−2間のデータを乗算する機能、乗算結果
と加減算器5の出力結果を加算する機能、及び乗算結果
を加減算器5の出力結果から減算する機能を有し、所定
の演算が行われる。
【0013】
【発明が解決しようとする課題】しかしながら、前記従
来の演算回路では、次のような課題があった。
【0014】(A) 従来の回路で、次式のような複素
数型のデータの演算を行う場合を考えてみる。複素数型
のデータは、実部と虚部のデータ構造を有しているた
め、次式(1)で与えられた計算の場合、通常、(2)
のように展開して演算が行われる。 (a+jb)・(c+jd) …(1) (ac−bd)+j(bc+ad) …(2) この展開では、ac,bd,bc,adの4項に応じ、
乗算は4回が必要となる。
【0015】一般に、加減算演算において、有限語長固
定小数点の演算誤差は、桁あふれが生じない場合には、
生じない。一方、乗算演算においては、乗算結果が出力
されるときに、有限語長に丸められるため、丸めによる
演算誤差が生じる。このため、乗算演算の回数に従っ
て、演算誤差も大きくなる。
【0016】(B) 入力レジスタ2−1,2−2を構
成するXAレジスタ2−1a、XBレジスタ2−1b、
YAレジスタ2−2a、及びYBレジスタ2−2bを同
時に使用できない。即ち、前記(2)式の展開に従って
演算を行う場合、aとc、bとd、bとc、aとdの各
データを入力するにあたり、XAレジスタ2−1aとY
Aレジスタ2−2a、又はXBレジスタ2−1bとYB
レジスタ2−2bに対して入れ換え操作を必要とすると
いう問題があった。
【0017】本発明は、前記従来技術が持っていた課題
として、乗算回数に従って演算誤差が生じる点、及びデ
ータの入れ換え操作を必要とするという点について解決
した演算回路を提供するものである。
【0018】
【課題を解決するための手段】第1の発明は、前記課題
を解決するために、バス上のデータを格納し二つの出力
データを出力する二重構造からなる入力レジスタと、前
記入力レジスタの二つの出力データのいづれか一方を選
択する第1のセレクタと、前記第1のセレクタの出力デ
ータを乗算する乗算器と、前記乗算器の乗算結果と帰還
入力データとの加算又は減算を行う加減算器と、前記加
減算器の演算結果を格納し二つの出力データを出力する
二重構造からなる出力レジスタと、前記出力レジスタの
二つの出力データのいづれか一方を選択して前記帰還入
力データを前記加減算器へ与える第2のセレクタとを、
備えた演算回路において、前記入力レジスタの二つの出
力データの加算又は減算を行う補助加減算器と、前記補
助加減算器の出力データを格納するレジスタとを、設け
ている。
【0019】第2の発明は、第1の発明の前記補助加減
算器を、制御信号に基づき加算又は減算を前記乗算器の
乗算と同時に行う構成としたものである。
【0020】
【作用】第1の発明は、以上のように演算回路を構成し
たので、入力レジスタにバス上のデータが格納される
と、補助加減算器によって入力レジスタの二つの出力デ
ータの加算又は減算が行われ、第1のセレクタにより選
択された入力レジスタ間の出力データが乗算器で乗算さ
れる。この時、乗算の回数は減少したものとなる。乗算
結果は、加減算器に入力されて帰還入力データと共に加
算又は減算され、その演算結果は出力レジスタに格納さ
れる。第2のセレクタは、出力レジスタの二つの出力デ
ータのいづれか一方を選択して帰還入力データを加減算
器へ与え、さらにバスへ出力する。
【0021】第2の発明は、第1の発明の補助加減算器
が行う加減算を、乗算器の乗算と同時に行うようにして
いるので、加減算回数の増加分が抑えられる。従って、
前記課題を解決できるのである。
【0022】
【実施例】図1は、本発明の一実施例を示す演算回路の
構成ブロック図であり、従来の図2中の要素と同一の要
素には、同一の符号が付されている。
【0023】この演算回路が従来の回路と異なる点は、
入力レジスタ2−1,2−2の出力側に補助加減算器1
0−1,10−2を設け、さらにその出力側にレジスタ
11−1,11−2を設けた点である。
【0024】即ち、従来の図2中の入力レジスタ2−
1,2−2を構成するXAレジスタ2−1aとXBレジ
スタ2−1b、及びYAレジスタ2−2aとYBレジス
タ2−2bの各出力側には、補助加減算器10−1,1
0−2が接続されている。補助加減算器10−1は、入
力レジスタ2−1の二つの出力データ、即ち、XAレジ
スタ2−1aとXBレジスタ2−1bに格納された各デ
ータの加算又は減算を行う機能を有し、その出力側には
レジスタ11−1が接続されている。レジスタ11−2
は、補助加減算器10−2の出力データを格納する機
能、及び出力データをプログラムバス、データバス又は
演算出力バス1に出力する機能を有している。
【0025】同様に、補助加減算器10−2は、入力レ
ジスタ2−2の二つの出力データ、即ち、YAレジスタ
2−2aとYBレジスタ2−2bに格納された各データ
の加算又は減算を行う機能を有し、その出力側にはレジ
スタ11−2が接続されている。レジスタ11−2は、
補助加減算器10−2の出力データを格納する機能、及
び出力データをプログラムバス、データバス又は演算出
力バス1に出力する機能を有している。
【0026】補助加減算器10−1,10−2及びレジ
スタ11−1,11−2は、図示しない命令デコーダか
ら出力される制御信号により、他の回路と同様に制御さ
れる。
【0027】次に、この演算回路の動作を説明する。こ
の演算回路で、例えば、前記(1)式の複素数型のデー
タの計算を行う場合を考える。 (a+jb)・(c+jd) …(1) この(1)式に対して、従来の展開は、次の(2)式に
表せるものであった。 (ac−bd)+j(bc+ad) …(2) この場合、ac,bd,bc,adの4項に応じ、4回
の乗算を必要とし、除算結果を出力する際に丸めによる
誤差が生じるのであるから、誤差を低減させるために
は、乗算演算の回数を減少させればよい。従って乗算回
数を減少させるために、(1)式を次の(3)式に展開
する。 (ac−bd)+j{(a+b)・(c+d)−(ac−bd)}…(3) このような展開では、乗算回数は、ac,bd,(a+
b)・(c+d)の3回となる。
【0028】この展開式に従って、図示しない命令デコ
ーダにより演算に必要なデータを入力レジスタ2−1,
2−2へ送出し、XAレジスタ2−1aにデータa、X
Bレジスタ2−1bにデータb、YAレジスタ2−2a
にデータc、YBレジスタ2−2bにデータdを入力す
る。
【0029】入力レジスタ2−1から出力されるデータ
a,bは、セレクタ3−1によっていづれか一方に選択
され、選択されたデータが乗算器4へ出力される。ま
た、入力レジスタ2−1の二つの出力データは、補助加
減算器10−1にそれぞれ入力される。一方、入力レジ
スタ2−2から出力されるデータc,dは、セレクタ3
−2によっていづれか一方に選択され、選択されたデー
タが乗算器4へ出力される。入力レジスタ2−2の二つ
の出力データは、補助加減算器10−2にそれぞれ入力
される。
【0030】補助加減算器10−1は、二つの出力デー
タa,bの加算(a+b)、又は減算(a−b)を行
い、一方、補助加減算器10−2は、二つの出力データ
c,dの加算(c+d)、又は減算(c−d)を行う。
この加減算は、乗算器4が行う乗算と同時に行われる。
補助加減算器10−1,10−2の演算結果は、それぞ
れレジスタ11−1,11−2に格納されてバス1へ出
力される。
【0031】乗算器4では、各セレクタ3−1,3−2
により選択された出力データを乗算し、乗算結果を加減
算器5へ出力する。加減算器5は、乗算結果と帰還入力
データS7を入力し、加算、又は減算を行い、該演算結
果が、出力レジスタ6内のZAレジスタ6aとZBレジ
スタ6bに格納される。
【0032】ZAレジスタ6a及びZBレジスタ6bに
格納された各演算結果は、セレクタ7によりいづれか一
方が選択されて出力される。セレクタ7から出力された
出力データは、加減算器5の入力側へ供給されると共に
プログラムバス、データバス又は演算出力バス1へ出力
される。
【0033】このように、乗算器4では、出力データ
a,cの乗算、出力データb,dの乗算、及び出力デー
タ(a+b),(c+d)の乗算の3回の乗算が行われ
ることになる。
【0034】本実施例では、次のような利点を有する。
【0035】(a) 入力レジスタ2−1,2−2の各
出力側に補助加減算器10−1,10−2を設け、さら
にその出力側にレジスタ11−1,11−2を設けてい
る。これにより、展開式に含まれる乗算の組み合わせを
少なくできる。例えば、前記(1)式のような複素数型
のデータを乗算する場合、展開式の変更により乗算の組
み合わせが4種類から3種類となっている。このため、
入力レジスタ2−1,2−2を構成するXAレジスタ2
−1a、XBレジスタ2−1b、YAレジスタ2−2
a、及びYBレジスタ2−2bに格納するデータを乗算
の組み合わせに対応させることができ、データの入れ換
え操作が不必要となる。さらに、乗算回数も4回から3
回になるため、乗算誤差が減少するようになる。
【0036】(b) 前記(1)式の展開を前記(3)
式のように変更したことによって、乗算回数は減少し、
加減算演算の回数は増加しているが、本実施例では、補
助加減算器10−1,10−2が行う加算又は減算を、
乗算器4が行う乗算と同時に行うようにしていること
で、展開式の変更による加減算回数の増加分を抑えるこ
とが可能となる。
【0037】なお、本発明は前記実施例に限らず、種々
の変形が可能である。その変形例としては、例えば次の
ようなものがある。
【0038】(i) 図1では、入力レジスタ2−1,
2−2の各出力側に、補助加減算器10−1,10−2
及びレジスタ11−1,11−2を設けたが、入力レジ
スタを任意の数だけ設け、該入力レジスタの個数に応じ
た数の補助加減算器及びレジスタを設けるようにしても
よい。
【0039】(ii) 前記実施例では、複素数型デー
タについて説明したが、他の数値演算についても、前記
実施例と同様の利点が得られる。
【0040】
【発明の効果】以上詳細に説明したように、第1の発明
によれば、補助加減算器を設けて入力レジスタの二つの
出力データの加算又は減算を行うようにしているので、
乗算の組み合わせを少なくできる。これにより、乗算の
組み合わせに応じた入力データの入れ替えが不必要とな
る。さらに、乗算回数が少なくなるので、乗算誤差が減
少する演算回路を実現できる。
【0041】第2の発明によれば、補助加減算器の演算
と乗算器の乗算とを同時に行うようにしているため、加
減算回数の増加分を抑えることができる。
【図面の簡単な説明】
【図1】本発明の実施例を示す演算回路の構成ブロック
図である。
【図2】従来の演算回路の構成例を示すブロック図であ
る。
【符号の説明】
2−1,2−2 入力レジスタ 3−1,3−2 第1のセレクタ 4 乗算器 5 加減算器 6 出力レジスタ 7 第2のセレクタ 10−1,10−2 補助加減算器 11−1,11−2 レジスタ

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 バス上のデータを格納し二つの出力デー
    タを出力する二重構造からなる入力レジスタと、 前記入力レジスタの二つの出力データのいづれか一方を
    選択する第1のセレクタと、 前記第1のセレクタの出力データを乗算する乗算器と、 前記乗算器の乗算結果と帰還入力データとの加算又は減
    算を行う加減算器と、前記加減算器の演算結果を格納し
    二つの出力データを出力する二重構造からなる出力レジ
    スタと、 前記出力レジスタの二つの出力データのいづれか一方を
    選択して前記帰還入力データを前記加減算器へ与える第
    2のセレクタとを、 備えた演算回路において、 前記入力レジスタの二つの出力データの加算又は減算を
    行う補助加減算器と、前記補助加減算器の出力データを
    格納するレジスタとを、設けたことを特徴とする演算回
    路。
  2. 【請求項2】 請求項1記載の演算回路において、前記
    補助加減算器は、制御信号に基づき加算又は減算を前記
    乗算器の乗算と同時に行う構成とした演算回路。
JP18642591A 1991-07-25 1991-07-25 演算回路 Withdrawn JPH0535774A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18642591A JPH0535774A (ja) 1991-07-25 1991-07-25 演算回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18642591A JPH0535774A (ja) 1991-07-25 1991-07-25 演算回路

Publications (1)

Publication Number Publication Date
JPH0535774A true JPH0535774A (ja) 1993-02-12

Family

ID=16188203

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18642591A Withdrawn JPH0535774A (ja) 1991-07-25 1991-07-25 演算回路

Country Status (1)

Country Link
JP (1) JPH0535774A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7308560B2 (en) 2004-04-19 2007-12-11 Oki Electric Industry Co., Ltd. Processing unit
JP2009048532A (ja) * 2007-08-22 2009-03-05 Nec Electronics Corp マイクロプロセッサ

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7308560B2 (en) 2004-04-19 2007-12-11 Oki Electric Industry Co., Ltd. Processing unit
JP2009048532A (ja) * 2007-08-22 2009-03-05 Nec Electronics Corp マイクロプロセッサ

Similar Documents

Publication Publication Date Title
JP3479438B2 (ja) 乗算回路
US6317764B1 (en) Apparatus for computing transcendental functions quickly
US7774400B2 (en) Method and system for performing calculation operations and a device
JP2835153B2 (ja) 高基数除算器
JP2885041B2 (ja) アダプティブフィルタ修正係数演算回路
JP3287305B2 (ja) 積和演算装置
US5694349A (en) Low power parallel multiplier for complex numbers
JPH08329261A (ja) パラメータ曲線発生器
JPH0535774A (ja) 演算回路
US5351207A (en) Methods and apparatus for subtraction with 3:2 carry-save adders
US5777915A (en) Multiplier apparatus and method for real or complex numbers
JP3092545B2 (ja) Fft演算回路
US5204962A (en) Processor with preceding operation circuit connected to output of data register
KR20040045152A (ko) 모듈러 곱셈 장치
JPS63254525A (ja) 除算装置
JPH11119979A (ja) 並列加減算回路
JPS59201144A (ja) 10進数演算回路
JP4073513B2 (ja) 浮動小数点処理装置
JP2586032B2 (ja) アドレス計算付加装置
JPS6267637A (ja) 配列乗算器
JP3068640B2 (ja) 計算装置
JPH08287037A (ja) デジタル信号処理プロセッサ
JP2000250895A (ja) データ処理装置
JP3528334B2 (ja) データセレクト回路
JP2639212B2 (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: 19981008