JPH02287873A - Product sum arithmetic unit - Google Patents
Product sum arithmetic unitInfo
- 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
Links
- 238000006243 chemical reaction Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Landscapes
- Complex Calculations (AREA)
Abstract
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.
第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)
加算する積和演算器において、前記係数を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.
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)
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 |
-
1989
- 1989-04-28 JP JP11051589A patent/JPH02287873A/en active Pending
Patent Citations (2)
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 |