JPH02287873A - Product sum arithmetic unit - Google Patents

Product sum arithmetic unit

Info

Publication number
JPH02287873A
JPH02287873A JP11051589A JP11051589A JPH02287873A JP H02287873 A JPH02287873 A JP H02287873A JP 11051589 A JP11051589 A JP 11051589A JP 11051589 A JP11051589 A JP 11051589A JP H02287873 A JPH02287873 A JP H02287873A
Authority
JP
Japan
Prior art keywords
coefficient
data
bits
multiplication
multiplied
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
JP11051589A
Other languages
Japanese (ja)
Inventor
Hideyuki Naka
秀之 中
Kazuo Konishi
和夫 小西
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP11051589A priority Critical patent/JPH02287873A/en
Publication of JPH02287873A publication Critical patent/JPH02287873A/en
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

PURPOSE:To execute the arithmetic processing with high accuracy by bringing a coefficient to 2<n> multiple, multiplying it as a coefficient in which a difference of the maximum value and the minimum value of its value becomes two folds or below by plural input signals, respectively, and also, bringing a result of each multiplication to 2<-n> multiple in accordance with 2<n> multiple of the coefficient and adding them. CONSTITUTION:Input digital data A - D are converted into serial data by P-S converting circuits 38 - 41, respectively, and thereafter, supplied to multiplying circuits 42 - 45, and coefficient data of 8 bits stored in each coefficient ROM 46 - 49 are multiplied. In this case, the coefficient data stored in each coefficient ROM 46 - 49 are multiplied in advance by 2<n>(n = 0, + or -1, + or -2, + or -3,...), and corrected so that a difference of the maximum value and the minimum value thereof becomes two folds or below. Subsequently, a result of this multiplication is supplied to S-P converting circuits 50 - 53, respectively, and converting into parallel data of 8 bits or more, based on a clock outputted from a timing control circuit 54. In such a way, an arithmetic processing of high accuracy can be executed without increasing the number of bits of data.

Description

【発明の詳細な説明】 [発明の目的コ (産業上の利用分野) この発明は、例えばデジタル・フィルタ等に使用される
積和演算器に係り、特にそのビット数を増加させること
なく精度の高い演算を行えるようにしたものに関する。
[Detailed Description of the Invention] [Purpose of the Invention (Industrial Application Field) The present invention relates to a product-sum calculator used for example in digital filters, and particularly relates to a product-sum calculator used in digital filters, etc. It relates to something that can perform high-level calculations.

(従来の技術) 周知のように、積和演算器は、デジタル信号処理一般に
広く使用されており、特にデジタル・フィルタ(DF)
やデジタル・シグナル・プロセッサ(DSP)等を構成
する場合には、必須のものとなっている。
(Prior Art) As is well known, product-sum calculators are widely used in digital signal processing in general, and in particular in digital filters (DF).
It is indispensable when configuring a digital signal processor (DSP) or a digital signal processor (DSP).

第4図は、このような従来の積和演算器を示している。FIG. 4 shows such a conventional product-sum calculator.

すなわち、図中11〜14は入力端子で、それぞれ例え
ば8ビツトの入力デジタルデータA〜Dが、パラレルに
供給されている。
That is, in the figure, 11 to 14 are input terminals, to which, for example, 8-bit input digital data A to D are respectively supplied in parallel.

これら入力端子11〜14に供給された入力デジタルデ
ータA−Dは、それぞれp−s (パラレル−シリアル
)変換回路15〜18によりシリアルデータに変換され
た後、乗算回路19〜22に供給され、各係数ROM 
(リード・オンリー・メモリ)23〜26に記憶された
9ビツト以上の係数データが乗算される。
Input digital data A-D supplied to these input terminals 11-14 are converted into serial data by p-s (parallel-serial) conversion circuits 15-18, respectively, and then supplied to multiplication circuits 19-22. Each coefficient ROM
(Read-only memory) Coefficient data of 9 bits or more stored in 23 to 26 is multiplied.

そして、各乗算回路19〜22からシリアルで出力され
る乗算結果は、それぞれ5−P(シリアル−パラレル)
変換回路27〜30に供給され、クロック入力端子31
に供給された一定周期のクロックCKに基づいて、同一
のタイミングで8ビツト以上のパラレルデータに変換さ
れる。
The multiplication results serially output from each multiplication circuit 19 to 22 are 5-P (serial-parallel).
The clock input terminal 31 is supplied to the conversion circuits 27 to 30.
The data is converted into parallel data of 8 bits or more at the same timing based on a clock CK of a constant period supplied to the data.

その後、各S−P変換回路27〜30から出力されたパ
ラレルデータが、加算回路32によって加算されること
により、ここに、人力デジタルデータA〜Dを積和演算
した、8ビツト以上の出力デジタルデータEが、出力端
子33から取り出される。
Thereafter, the parallel data outputted from each S-P conversion circuit 27 to 30 is added by the addition circuit 32, thereby producing an 8-bit or more output digital data obtained by performing a sum-of-products operation on the human-powered digital data A to D. Data E is taken out from output terminal 33.

ここで、上記係数ROM23〜26に記憶されている各
係数データは、処理中のデータがオーバーフローするこ
とを防ぐために、“1”よりも小さな値に設定されるの
が、−船釣である。
Here, each coefficient data stored in the coefficient ROMs 23 to 26 is set to a value smaller than "1" in order to prevent data being processed from overflowing.

すなわち、係数ROM23〜26が8ビツトであるとす
ると、係数データとしては、−128/128〜L/1
28.  O,l/128〜127/ 128の範囲の
値を取り得ることになる。
That is, assuming that the coefficient ROMs 23 to 26 are 8 bits, the coefficient data is -128/128 to L/1.
28. It can take values in the range of O, l/128 to 127/128.

しかしながら、上記のような従来の積和演算器では、演
算精度を高めるために、上述した係数ブタの範囲を越え
る精度の高い係数データを用いるには、係数ROM23
〜26のビット数を増加さぜるしか方法かないことにな
る。
However, in the conventional product-sum calculation unit as described above, in order to improve the calculation accuracy and use highly accurate coefficient data that exceeds the range of the coefficient pigtails described above, the coefficient ROM 23 is required.
The only way is to increase the number of bits to ~26.

例えば7.5/ 128なる係数データを得るためには
、係数ROM23〜26を1ビツト増やして、15/2
56としなければならず、経済的に不利になるという問
題か生じるものである。
For example, to obtain coefficient data of 7.5/128, increase coefficient ROM23 to 26 by 1 bit to make it 15/2.
56, which may cause an economic disadvantage.

また、係数ROM23〜26のビット数を増加させるこ
とは、取りも直さず、乗算回路19〜22や加算回路3
2等の回路規模の増大をも招くことにもなるという不都
合がある。
In addition, increasing the number of bits in the coefficient ROMs 23 to 26 does not change the number of bits in the multiplication circuits 19 to 22 and the
This is disadvantageous in that it also leads to an increase in the scale of the second-class circuit.

(発明が解決しようとする課題) 以上のように、従来の積和演算器では、演算精度を高め
るためには、取り扱うデータのビット数を増加させる必
要があり、回路規模が増大し経済的に不利になるという
問題を有している。
(Problems to be Solved by the Invention) As described above, in order to improve the calculation accuracy of conventional multiply-accumulators, it is necessary to increase the number of bits of data handled, which increases the circuit scale and makes it economically difficult. It has the problem of being disadvantageous.

そこで、この発明は上記事情を考慮してなされたもので
、取り扱うデータのビット数を増加させることな(、精
度の高い演算処理を行うことができる極めて良好な積和
演算器を提供することを目的とする。
Therefore, this invention was made in consideration of the above circumstances, and aims to provide an extremely good product-sum calculator that can perform highly accurate arithmetic processing without increasing the number of bits of data handled. purpose.

[発明の構成] (課題を解決するための手段) この発明に係る積和演算器は、複数の入力信号にそれぞ
れ係数を乗算し、各乗算結果を加算するものを対象とし
ている。そして、係数を2″(n=0.  ±1.±2
.±3、……)倍し、その値の最大値と最小値との差が
2倍以内となる係数として、複数の入力信号にそれぞれ
乗算するとともに、各乗算結果を係数を2″倍したのに
対応させて2−倍して加算するように構成したものであ
る。
[Structure of the Invention] (Means for Solving the Problems) A product-sum calculator according to the present invention is intended for multiplying a plurality of input signals by respective coefficients and adding the respective multiplication results. Then, set the coefficient to 2″ (n=0. ±1.±2
.. ±3,...), then multiply each of the multiple input signals as a coefficient that makes the difference between the maximum value and minimum value within 2 times, and multiply each multiplication result by 2'' by the coefficient. The structure is such that the result is multiplied by 2 and added accordingly.

る。Ru.

(作用) 上記のような構成によれば、例えば8ビットでは表せな
い7.5/ 128という係数も、24倍することによ
り 120/ 128と8ビツトで表現することができ
、さらに、その最大値と最小値との差が2倍以内、つま
り、64/ 128〜128/ 128としておけば、
実質的に、係数のとり得る値は、その係数のビット数の
半分で済み、データのビット数を増加させることなく、
精度の高い演算処理を行うことができることになる。
(Function) According to the above configuration, for example, the coefficient 7.5/128, which cannot be expressed in 8 bits, can be expressed in 8 bits as 120/128 by multiplying by 24, and furthermore, the maximum value can be expressed as 120/128 in 8 bits. If the difference between
In effect, the possible values of a coefficient are only half the number of bits of the coefficient, without increasing the number of data bits.
This means that highly accurate arithmetic processing can be performed.

(実施例) 以下、この発明の一実施例について図面を参照して詳細
に説明する。すなわち、第1図において、34〜37は
入力端子で、それぞれ例えば8ビツトの入力デジタルデ
ータA−Dが、パラレルに供給されている。
(Example) Hereinafter, an example of the present invention will be described in detail with reference to the drawings. That is, in FIG. 1, 34 to 37 are input terminals to which, for example, 8-bit input digital data A to D are respectively supplied in parallel.

これら入力端子34〜37に供給された入力デジタルデ
ータA−Dは、それぞれP−8変換回路38〜41によ
りシリアルデータに変換された後、乗算回路42〜45
に供給され、各係数ROM48〜49に記憶された8ビ
ツトの係数データが乗算される。
The input digital data A-D supplied to these input terminals 34-37 are converted into serial data by P-8 conversion circuits 38-41, respectively, and then sent to multiplication circuits 42-45.
and is multiplied by 8-bit coefficient data stored in each coefficient ROM 48-49.

ここで、各係数ROM48〜49に記憶された係数デー
タは、予め2”(n=o、±1.±2.±3゜・・・・
・・)が乗算されており、その最大値と最小値との差か
2倍以内となるように補正されている。
Here, the coefficient data stored in each coefficient ROM 48 to 49 is 2'' (n=o, ±1.±2.±3°...
) is multiplied, and the difference between the maximum value and the minimum value is corrected to within twice.

そして、各乗算回路42〜45からシリアルで出力され
る乗算結果は、それぞれS−P変換回路50〜53に供
給され、タイミング制御回路54から出力されるクロッ
クに基づいて、8ビツト以上のパラレルデータに変換さ
れる。
The multiplication results serially output from each of the multiplication circuits 42 to 45 are supplied to S-P conversion circuits 50 to 53, respectively, and based on the clock output from the timing control circuit 54, parallel data of 8 bits or more is converted. is converted to

ここで、上記S−P変換回路50は、第2図に示すよう
に構成されている。なお、他のS−P変換回路51〜5
3は、S−P変換回路50と同様な構成であるので、そ
の説明は省略する。
Here, the above-mentioned S-P conversion circuit 50 is configured as shown in FIG. Note that the other S-P conversion circuits 51 to 5
3 has the same configuration as the S-P conversion circuit 50, so the explanation thereof will be omitted.

すなわち、図中55は入力端子で、乗算回路42から出
力される乗算シリアルデータが供給される。
That is, numeral 55 in the figure is an input terminal to which multiplied serial data output from the multiplication circuit 42 is supplied.

この入力端子55に供給されたシリアルデータは、7つ
のDタイプ−フリップフロップ回路(以下D−FF回路
という)56〜62を縦続接続してなるシフトレジスタ
63により、クロック入力端子64に供給されたビット
クロックB CKに同期して順次取り込まれる。
The serial data supplied to this input terminal 55 is supplied to a clock input terminal 64 by a shift register 63 formed by cascading seven D-type flip-flop circuits (hereinafter referred to as D-FF circuits) 56 to 62. The bit clock BCK is sequentially captured in synchronization with the bit clock BCK.

そして、各D−FFl路56〜62にそれぞれラッチさ
れたデータは、8ビツトのラッチ回路65によって、ク
ロック入力端子66に供給されたラッチクロックLCK
に同期して一斉にラッチされて、8つの出力端子67か
ら出力され、ここにシリアル−パラレル変換が行われる
The data latched in each of the D-FF1 paths 56 to 62 is transferred to the latch clock LCK supplied to the clock input terminal 66 by an 8-bit latch circuit 65.
The signals are latched all at once in synchronization with and output from eight output terminals 67, where serial-to-parallel conversion is performed.

ここで、出力端子67から出力される8ビツトのパラレ
ルデータは、ラッチクロックLCKをビットクロックB
CKの1クロック分早く発生させるか遅く発生させるか
で、2倍にしたり 1/2倍にしたりすることができる
Here, the 8-bit parallel data output from the output terminal 67 uses the latch clock LCK as the bit clock B.
It can be doubled or halved by generating it one clock earlier or later than CK.

このため、先に係数ROM46〜49において係数デー
タを2″倍したものを、S−P変換回路50〜53で2
−1倍することができる。
Therefore, the coefficient data is first multiplied by 2'' in the coefficient ROMs 46 to 49, and then multiplied by 2'' in the S-P conversion circuits 50 to 53.
-Can be multiplied by 1.

そして、各S−P変換回路50〜53から出力されたパ
ラレルデータが、加算回路68によって加算されること
により、ここに、人力デジタルデータA〜Dを積和演算
した、8ビツト以上の出力デジタルデータEか、出力端
子B9から取り出される。
Then, the parallel data output from each of the S-P conversion circuits 50 to 53 is added by the addition circuit 68, thereby producing an 8-bit or more output digital data obtained by performing a sum-of-products operation on the human-powered digital data A to D. Data E is taken out from output terminal B9.

上記のような構成によれば、例えば7.5/ 128の
ように8ビツトでは表現できない係数データでも、2n
  (=IB)倍することによって120/ 128と
8ビツトで表わすことができる。
According to the above configuration, even coefficient data such as 7.5/128 that cannot be expressed in 8 bits can be expressed as 2n.
(=IB) can be expressed in 8 bits as 120/128.

また、24倍した係数データの最大値と最小値との差が
2倍以内、つまり、64/ 128〜128/128と
なるようにしているので、実質的に、係数データのとり
得る値は、その係数データのビット数の半分で済む。
Also, since the difference between the maximum value and the minimum value of the coefficient data multiplied by 24 is set to within 2 times, that is, 64/128 to 128/128, the values that the coefficient data can take are essentially: It only requires half the number of bits of the coefficient data.

さらに、S−P変換回路50〜53により、2(−1/
 1B)となるタイミングでパラレルデータを取り出す
ことによって、データのビット数を増加させることなく
、精度の高い演算処理を行うことができることになる。
Furthermore, 2(-1/
By extracting the parallel data at the timing of 1B), highly accurate arithmetic processing can be performed without increasing the number of data bits.

第3図は、この発明の他の実施例を示している。FIG. 3 shows another embodiment of the invention.

すなわち、入力端子70〜73に供給された8ビツトの
入力デジタルデータA−Dを、シリアルデータに変換せ
ずに、直接、乗算回路74〜77によって、係数ROM
78〜81に記憶された係数データ(2″倍されている
)と乗算する。
That is, the 8-bit input digital data A-D supplied to the input terminals 70-73 is directly input into the coefficient ROM by the multiplication circuits 74-77 without being converted into serial data.
Multiply by the coefficient data (multiplied by 2'') stored in 78 to 81.

そして、この乗算結果をビットシフト回路82〜85で
2−”倍するようにビットシフトした後、加算回路86
で加算することにより、ここに、入力デジタルデータA
−Dを積和演算した、8ビツト以上の出力デジタルデー
タEが、出力端子87から取り出される。
After this multiplication result is bit-shifted by bit shift circuits 82 to 85 so as to be multiplied by 2-'', an addition circuit 86
By adding the input digital data A
Output digital data E of 8 bits or more, which is obtained by performing a sum-of-products operation on -D, is taken out from the output terminal 87.

上記実施例のような構成によれば、P−3変換回路等が
不要となり、より一層の構成の簡易化を図ることができ
る。
According to the configuration of the above embodiment, a P-3 conversion circuit or the like is not required, and the configuration can be further simplified.

なお、この発明は上記各実施例に限定されるものではな
く、この外その要旨を逸脱しない範囲で種々変形して実
施することができる。
It should be noted that the present invention is not limited to the above-described embodiments, and can be implemented with various modifications without departing from the gist thereof.

[発明の効果] 以上詳述したようにこの発明によれば、取り扱うデータ
のビット数を増加させることなく、精度の高い演算処理
を行うことができる極めて良好な積和演算器を提供する
ことができる。
[Effects of the Invention] As detailed above, according to the present invention, it is possible to provide an extremely good product-sum calculator that can perform highly accurate arithmetic processing without increasing the number of bits of data handled. can.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図はこの発明に係る積和演算器の一実施例を示すブ
ロック構成図、第2図は同実施例のS−P変換回路の詳
細を示すブロック構成図、第3図はこの発明の他の実施
例を示すブロック構成図、第4図は従来の積和演算器を
示すブロック構成図である。 11〜14・・・入力端子、15〜18・・・P−8変
換回路、19〜22・・・乗算回路、23〜26・・・
係数ROM、27〜30・・・S−P変換回路、31・
・・クロック入力端子、32・・・加算回路、33・・
・出力端子、34〜37・・・入力端子、38〜41・
・・P−8変換回路、42〜45・・・乗算回路、46
〜49・・・係数ROM、50〜53・・・S−P変換
回路、54・・タイミング制御回路、55・・・入力端
子、56〜62・・・D−FF回路、63・・・シフト
レジスタ、64・・・クロック入力端子、65・・ラッ
チ回路、6G・・・クロック入力端子、67・・・出力
端子、68・・・加算回路、69・・・出力端子、70
〜73・・入力端子、74〜77・・・乗算回路、78
〜81・・係数ROM、82〜85・・・ビットシフト
回路、8G・・・加算回路、87・・・出力端子。
FIG. 1 is a block diagram showing an embodiment of the product-sum calculator according to the present invention, FIG. 2 is a block diagram showing details of the S-P conversion circuit of the embodiment, and FIG. FIG. 4 is a block diagram showing another embodiment. FIG. 4 is a block diagram showing a conventional product-sum calculator. 11-14...Input terminal, 15-18...P-8 conversion circuit, 19-22...Multiplication circuit, 23-26...
Coefficient ROM, 27-30... S-P conversion circuit, 31.
...Clock input terminal, 32... Addition circuit, 33...
・Output terminals, 34-37...Input terminals, 38-41・
・・P-8 conversion circuit, 42 to 45 ・・Multiplication circuit, 46
~49... Coefficient ROM, 50-53... S-P conversion circuit, 54... Timing control circuit, 55... Input terminal, 56-62... D-FF circuit, 63... Shift Register, 64... Clock input terminal, 65... Latch circuit, 6G... Clock input terminal, 67... Output terminal, 68... Addition circuit, 69... Output terminal, 70
~73...Input terminal, 74-77...Multiplication circuit, 78
~81...Coefficient ROM, 82-85...Bit shift circuit, 8G...Addition circuit, 87...Output terminal.

Claims (1)

【特許請求の範囲】[Claims] 複数の入力信号にそれぞれ係数を乗算し、各乗算結果を
加算する積和演算器において、前記係数を2^n(n=
0、±1、±2、±3、……)倍し、その値の最大値と
最小値との差が2倍以内となる係数として、前記複数の
入力信号にそれぞれ乗算するとともに、各乗算結果を前
記係数を2^n倍したのに対応させて2^−^n倍して
加算するように構成してなることを特徴とする積和演算
器。
In a product-sum calculator that multiplies multiple input signals by coefficients and adds the multiplication results, the coefficients are calculated as 2^n (n=
0, ±1, ±2, ±3, ...), and multiply each of the plurality of input signals by a coefficient such that the difference between the maximum value and the minimum value is within 2 times, and each multiplication A product-sum calculator characterized in that the result is multiplied by 2^-^n corresponding to the coefficient multiplied by 2^n and added.
JP11051589A 1989-04-28 1989-04-28 Product sum arithmetic unit Pending JPH02287873A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11051589A JPH02287873A (en) 1989-04-28 1989-04-28 Product sum arithmetic unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11051589A JPH02287873A (en) 1989-04-28 1989-04-28 Product sum arithmetic unit

Publications (1)

Publication Number Publication Date
JPH02287873A true JPH02287873A (en) 1990-11-27

Family

ID=14537751

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11051589A Pending JPH02287873A (en) 1989-04-28 1989-04-28 Product sum arithmetic unit

Country Status (1)

Country Link
JP (1) JPH02287873A (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5833754A (en) * 1981-08-24 1983-02-28 Victor Co Of Japan Ltd Digital multiplication circuit
JPS6043743A (en) * 1983-08-19 1985-03-08 Nec Corp Signal processing circuit

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5833754A (en) * 1981-08-24 1983-02-28 Victor Co Of Japan Ltd Digital multiplication circuit
JPS6043743A (en) * 1983-08-19 1985-03-08 Nec Corp Signal processing circuit

Similar Documents

Publication Publication Date Title
JPS6272218A (en) Infinite impulse response filter
JPH09325955A (en) Square root arithmetic circuit for sum of squares
US5798954A (en) Digital filter device having a bit shifter unit
JPH02287873A (en) Product sum arithmetic unit
US4755961A (en) Digital tank circuit
JPH0421218B2 (en)
JPH0537299A (en) Circular digital filter
JPH06350398A (en) Method for filtering digital signal and digital filter thereof
JPH0997166A (en) Digital multiplier, digital transversal equalizer, and digital product sum operation circuit
JP2731881B2 (en) Mark ratio setting circuit
JP2003037504A (en) Device for generating gray code
JPS60254373A (en) Arithmetic unit for sum of product
KR890004649Y1 (en) Digital filter
JPS62166609A (en) Digital filter device
JP3041932B2 (en) Sample rate conversion circuit
JPH0252518A (en) Digital filter
JPH08335850A (en) Simple digital filter
JPH0624310B2 (en) Digital Filter
JPS60208113A (en) Digital filter
JPS63163927A (en) Multiplication circuit
JPH03145323A (en) Arithmetic circuit
JPH118531A (en) Oversampling digital filter
JPH06224695A (en) Digital signal processor
JPS617715A (en) Digital filter
JPH07334348A (en) Image filter