JPH11220357A - Digital filter - Google Patents

Digital filter

Info

Publication number
JPH11220357A
JPH11220357A JP1739098A JP1739098A JPH11220357A JP H11220357 A JPH11220357 A JP H11220357A JP 1739098 A JP1739098 A JP 1739098A JP 1739098 A JP1739098 A JP 1739098A JP H11220357 A JPH11220357 A JP H11220357A
Authority
JP
Japan
Prior art keywords
data
input data
attenuation
multiplier
filter
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
JP1739098A
Other languages
Japanese (ja)
Inventor
Koji Takano
浩二 高野
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.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric 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 Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP1739098A priority Critical patent/JPH11220357A/en
Priority to US09/237,520 priority patent/US6405229B1/en
Publication of JPH11220357A publication Critical patent/JPH11220357A/en
Priority to US09/873,626 priority patent/US6360240B2/en
Priority to US09/873,724 priority patent/US6510445B2/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To incorporate an attenuating function in the digital filter. SOLUTION: Input data X(n) is inputted to a multiplier 35 through a selector 33 and multiplied by an attenuation coefficient g(m) inputted through a selector 34 and the result is stored as attenuation input data x(n) in a RAM 31. The attenuation input data x(n) read out of the RAM 31 is inputted to a multiplier 35 through the selector 34 and supplied to a cumulating adder 36. The multiplication data is cumulatively added by the cumulating adder 36 according to the number of taps and final cumulative addition data are stored as intermediate data A(n) and B(n) in registers 39 and 40 alternately. An adder subtracter 41 performs a subtracting process and an adding process for the intermediate data A(n) and B(n) and output data Ya(n) and Yb(n) are stored in an output register 42.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、デジタルオーディ
オ機器等に用いられるデジタルデータの分離を行うデジ
タルフィルタに関する。
The present invention relates to a digital filter for separating digital data used in digital audio equipment and the like.

【0002】[0002]

【従来の技術】FIR型(Finite Impulse Responce)の
デジタルフィルタは、式(1)に示すように、入力データ
X(n)とインパルス応答との畳み込みによって出力デー
タY(n)を得るように構成される。
2. Description of the Related Art A FIR (Finite Impulse Response) digital filter is configured to obtain output data Y (n) by convolution of input data X (n) and an impulse response as shown in equation (1). Is done.

【0003】[0003]

【数1】 (Equation 1)

【0004】ここで、h(k)はフィルタ係数、Nはタッ
プ数である。そこで、式(1)をZ変換すると、
[0004] Here, h (k) is a filter coefficient, and N is the number of taps. Then, when Expression (1) is Z-transformed,

【0005】[0005]

【数2】 (Equation 2)

【0006】が得られ、この式(2)より、[0006] From this equation (2),

【0007】[0007]

【数3】 (Equation 3)

【0008】となり、周波数応答がわかる。そして、ω
=2πk/Nとすると、式(3)は、
Thus, the frequency response can be understood. And ω
= 2πk / N, equation (3) becomes

【0009】[0009]

【数4】 (Equation 4)

【0010】となる。この式(4)は、離散的フーリエ変
換(DFT:Discrete Fourier Transform)の式とみなす
ことができる。従って、フィルタ係数h(k)は、式(4)に
よって与えられる周波数特性を逆変換(IDFT:Invers
e Discrete Fourier Transform)することにより求めら
れる。図5は、標準的なFIR型のデジタルフィルタの
構成を示す回路図である。
## EQU1 ## This equation (4) can be regarded as an equation of a discrete Fourier transform (DFT). Therefore, the filter coefficient h (k) is obtained by inversely transforming the frequency characteristic given by the equation (4) (IDFT: Invers
e Discrete Fourier Transform). FIG. 5 is a circuit diagram showing a configuration of a standard FIR type digital filter.

【0011】複数の遅延素子1は、例えばシフトレジス
タにより構成され、互いに直列に接続されて入力データ
X(n)をそれぞれ一定の期間Tだけ遅延する。複数の乗
算器2は、入力データX(n)の入力側及び各遅延素子1
の出力側にそれぞれ接続され、入力データX(n)及び各
遅延素子1の出力に固有のフィルタ係数h(k)をそれぞ
れ乗算する。これにより、入力データX(n)に対してイ
ンパルス応答の畳み込み処理が行われる。
The plurality of delay elements 1 are composed of, for example, shift registers, are connected in series with each other, and each delay input data X (n) by a predetermined period T. The plurality of multipliers 2 are provided on the input side of the input data X (n) and each delay element 1
And multiplies the input data X (n) and the output of each delay element 1 by a unique filter coefficient h (k). Thereby, the convolution process of the impulse response is performed on the input data X (n).

【0012】総和加算器3は、各乗算器2の出力、即
ち、所定のフィルタ係数h(k)が乗算された入力データ
X(n)及び各遅延素子1の出力の総和をとり、出力デー
タY(n)として出力する。従って、入力データX(n)に対
して、上述の式(1)に従う演算が実行されたことにな
る。このようなデジタルフィルタは、タップ数Nに応じ
て遅延素子1及び乗算器2が配列されるため、タップ数
Nの増加に伴って回路規模が大きくなるという問題を有
している。そこで、時系列の入力データを一旦メモリに
記憶し、そのメモリから読み出した入力データにフィル
タ係数を順次乗算しながら、その乗算結果を累加算する
ようにしたストアードプログラム方式のデジタルフィル
タが提案されている。
The sum adder 3 takes the output of each multiplier 2, that is, the sum of the input data X (n) multiplied by a predetermined filter coefficient h (k) and the output of each delay element 1, and outputs the output data. Output as Y (n). Therefore, the operation according to the above equation (1) has been performed on the input data X (n). In such a digital filter, since the delay element 1 and the multiplier 2 are arranged according to the number of taps N, there is a problem that the circuit scale increases as the number of taps N increases. Therefore, there has been proposed a digital filter of a stored program method in which time-series input data is temporarily stored in a memory, and input data read from the memory is sequentially multiplied by a filter coefficient, and the multiplication result is cumulatively added. I have.

【0013】図6は、ストアードプログラム方式のデジ
タルフィルタの構成を示すブロック図である。RAM1
1は、時系列で入力される入力データX(n)を順次記憶
し、ROM12は、予め複数のフィルタ係数h(k)を記
憶する。また、RAM11は、記憶した入力データX
(n)を1ステップ毎に読み出して出力し、ROM12
は、1ステップごとに増加するkの値に対応して特定の
フィルタ係数h(k)を読み出して出力する。なお、この
kは、式(1)に示したkに一致するものである。そし
て、乗算器13は、RAM11から読み出された入力デ
ータX(n-k)にROM12から読み出されたフィルタ係
数h(k)を乗算する。
FIG. 6 is a block diagram showing the configuration of a digital filter of the stored program system. RAM1
1 sequentially stores input data X (n) input in time series, and the ROM 12 stores a plurality of filter coefficients h (k) in advance. Further, the RAM 11 stores the stored input data X
(n) is read and output for each step,
Reads and outputs a specific filter coefficient h (k) corresponding to the value of k that increases in each step. Note that k is equal to k shown in Expression (1). Then, the multiplier 13 multiplies the input data X (nk) read from the RAM 11 by the filter coefficient h (k) read from the ROM 12.

【0014】累加算器14は、加算器15及びレジスタ
16からなり、乗算器13の乗算結果を累加算する。即
ち、加算器15により乗算器13の出力とレジスタ16
の出力とが加算され、その加算結果が再びレジスタ16
に格納されることにより、乗算器13の乗算結果が順次
加算される。出力レジスタ17は、累加算器14から出
力される累加算結果を取り込み、出力データY(n)とし
て出力する。
The accumulator 14 comprises an adder 15 and a register 16, and accumulates the multiplication result of the multiplier 13. That is, the output of the multiplier 13 and the register 16
Is added to the output of the register 16 again.
, The multiplication results of the multiplier 13 are sequentially added. The output register 17 takes in the accumulation result output from the accumulator 14 and outputs it as output data Y (n).

【0015】このFIR型デジタルフィルタでは、RA
M11及びROM12からそれぞれ入力データX(n)及
びフィルタ係数h(k)を順次読み出して積和演算を繰り
返すことにより、式(1)に従う演算を実行して出力デー
タY(n)を得ている。このため、タップ数Nが大きくな
ったとしても、回路規模が大きくなることはない。とこ
ろで、第1のフィルタ係数h1(n)を有するデジタルフィ
ルタに対し、
In this FIR digital filter, RA
By sequentially reading the input data X (n) and the filter coefficient h (k) from the M11 and the ROM 12 and repeating the product-sum operation, the operation according to the equation (1) is executed to obtain the output data Y (n). . Therefore, even if the number of taps N increases, the circuit scale does not increase. By the way, for a digital filter having a first filter coefficient h1 (n),

【0016】[0016]

【数5】 (Equation 5)

【0017】により与えられる第2のフィルタ係数h2
(n)を有するデジタルフィルタは、その周波数応答性か
らミラーフィルタと称される。このようなミラーフィル
タにおけるZ変換の関係は、
The second filter coefficient h2 given by
The digital filter having (n) is called a mirror filter because of its frequency response. The relationship of Z conversion in such a mirror filter is as follows.

【0018】[0018]

【数6】 (Equation 6)

【0019】である。ここで、周波数応答性を考える
と、
## EQU1 ## Here, considering the frequency response,

【0020】[0020]

【数7】 (Equation 7)

【0021】であることから、式(6)は、Therefore, equation (6) is

【0022】[0022]

【数8】 (Equation 8)

【0023】となる。これにより、ミラーフィルタの周
波数応答性が、π/2で対称となることがわかる。ここ
で、π/2がサンプリング周期の1/4であることか
ら、このミラーフィルタは、QMF(Quadrature Mirror
Filter)と称される。このようなQMFは、アイイーイ
ーイー・トランザクションズ・オン・アコースティック
ス・スピーチ・アンド・シグナル・プロセッシング,エ
イエスエスピー32巻3号,1984年6月,(IEEE Tr
ans. Acoust.,Speech,Signal Process.,Vol.ASSP-32,N
o.3,June1984)第522頁〜第531頁に詳述されてい
る。
## EQU1 ## This indicates that the frequency response of the mirror filter is symmetric at π / 2. Here, since π / 2 is 4 of the sampling period, this mirror filter is a QMF (Quadrature Mirror).
Filter). Such a QMF is described in IEE Transactions on Acoustic Speech and Signal Processing, ISSP Vol. 32, No. 3, June 1984, (IEEE Tr
ans. Acoust., Speech, Signal Process., Vol.ASSP-32, N
o.3, June 1984) pages 522 to 531.

【0024】上述のQMFにより、周波数成分の帯域分
離が行われる分離フィルタにおいては、式(9)及び式(1
0)に示すように、入力データX(n)とインパルス応答と
の畳み込み処理と、それらの加算または減算処理によ
り、入力データX(n)の分離データである2つの出力デ
ータYa(n)、Yb(n)を得るように構成される。
In the separation filter that separates the frequency components by the above-described QMF, the equations (9) and (1)
As shown in (0), two output data Ya (n), which are separated data of the input data X (n), are obtained by convolution processing of the input data X (n) and the impulse response and addition or subtraction processing thereof. It is configured to obtain Yb (n).

【0025】[0025]

【数9】 (Equation 9)

【0026】[0026]

【数10】 (Equation 10)

【0027】図7は、式(9)及び式(10)に従う帯域分離
処理が行われる分離フィルタの構成を示すブロック図で
ある。複数の遅延素子21は、直列に接続され、入力デ
ータX(n)をそれぞれ一定期間Tだけ遅延する。複数の
第1の乗算器22は、入力データX(n)の入力側及び偶
数段の遅延素子21の出力側に接続され、入力データX
(n)及び各遅延素子21の出力にそれぞれフィルタ係数
h(2k)を乗算する。また、複数の第2の乗算器24は、
奇数段の遅延素子21の出力側に接続され、各遅延素子
21の出力にそれぞれフィルタ係数h(2k+1)を乗算す
る。これにより、入力データX(n)に対するインパルス
応答の畳み込み処理が行われる。
FIG. 7 is a block diagram showing a configuration of a separation filter for performing band separation processing according to equations (9) and (10). The plurality of delay elements 21 are connected in series, and each delay the input data X (n) by a certain period T. The plurality of first multipliers 22 are connected to the input side of the input data X (n) and the output side of the delay element 21 in the even-numbered stages, and
(n) and the output of each delay element 21 are respectively multiplied by a filter coefficient h (2k). Further, the plurality of second multipliers 24
It is connected to the output side of the odd-numbered delay elements 21 and multiplies the output of each delay element 21 by a filter coefficient h (2k + 1). Thereby, the convolution process of the impulse response with respect to the input data X (n) is performed.

【0028】第1の総和加算器24は、第1の乗算器2
2の各出力を全て加算し、中間データAnを出力する。
一方、第2の総和加算器25は、第2の乗算器23の各
出力を全て加算し、中間データBnを出力する。減算器
26は、第1の総和加算器24から入力される中間デー
タAnから、第2の総和加算器25から入力される中間
データBnを減算し、第1の出力データYa(n)として出
力する。また、加算器27は、第1の総和加算器24か
ら入力される中間データAnと、第2の総和加算器25
から入力される中間データBnとを加算し、第2の出力
データYb(n)として出力する。このようにして式(9)及
び式(10)に従う演算処理が達成される。
The first sum adder 24 includes a first multiplier 2
2 are all added to output intermediate data An.
On the other hand, the second sum adder 25 adds all the outputs of the second multiplier 23 and outputs intermediate data Bn. The subtracter 26 subtracts the intermediate data Bn input from the second sum adder 25 from the intermediate data An input from the first sum adder 24, and outputs the result as first output data Ya (n). I do. Further, the adder 27 includes the intermediate data An input from the first sum adder 24 and the second sum adder 25.
Is added to the intermediate data Bn input from the second unit and output as second output data Yb (n). In this way, the arithmetic processing according to the equations (9) and (10) is achieved.

【0029】以上のような分離フィルタを上述のストア
ードプログラム方式により構成することは、本出願人に
より提案された特開平7−131295号公報に開示さ
れている。
The construction of such a separation filter by the above-mentioned stored program method is disclosed in Japanese Patent Application Laid-Open No. Hei 7-131295 proposed by the present applicant.

【0030】[0030]

【発明が解決しようとする課題】一般的なオーディオ機
器においては、音声信号を減衰させて再生音量を下げる
アッテネート機能が設けられる。MD(Mini Disc)プレ
ーヤに代表されるデジタルオーディオ機器の場合、デジ
タル化されたオーディオデータに利得が1以下となるよ
うなアッテネート係数を乗算することにより、アッテネ
ート機能を実現するように構成される。
In general audio equipment, there is provided an attenuation function for attenuating an audio signal and lowering a reproduction volume. In the case of a digital audio device typified by an MD (Mini Disc) player, the attenuation function is realized by multiplying the digitized audio data by an attenuation coefficient having a gain of 1 or less.

【0031】デジタルデータの演算処理においては、回
路規模が大きい乗算器の数が増えると、演算処理装置が
複雑になり、コストの増加を招くことになる。特に、ビ
ット数の多いオーディオデータの場合には、乗算器の増
加がコストの増加に大きく影響し易い。そこで本発明
は、回路規模を増大させることなく、デジタルフィルタ
にアッテネート機能を内蔵させることを目的とする。
In digital data arithmetic processing, as the number of multipliers having a large circuit scale increases, the arithmetic processing device becomes complicated, resulting in an increase in cost. In particular, in the case of audio data having a large number of bits, an increase in the number of multipliers tends to greatly affect an increase in cost. Accordingly, an object of the present invention is to provide a digital filter with a built-in attenuation function without increasing the circuit scale.

【0032】[0032]

【課題を解決するための手段】本発明は、上述の課題を
解決するために成されたもので、その特徴とするところ
は、時系列入力データ及びこの時系列入力データに基づ
いて生成された減衰入力データが、所定のアッテネート
係数及び上記減衰入力データに対応したフィルタ係数と
共に入力され、上記時系列入力データ及び上記所定のア
ッテネート係数の組または上記減衰入力データ及び上記
フィルタ係数の組の何れか一方の組を選択するセレクタ
と、上記セレクタの選択データの組を互いに乗算する乗
算器と、上記時系列入力データ及び所定のアッテネート
係数の組に対する上記乗算器の演算結果を記憶し、上記
減衰入力データとして上記セレクタに供給するRAM
と、上記減衰入力データ及び上記フィルタ係数の組に対
応する上記乗算器の演算結果を順次累加算する累加算器
と、上記累加算器の演算結果を交互に取り込む第1及び
第2のレジスタと、上記第1及び第2のレジスタから取
り出される2つの演算結果を加算または減算する加減算
器と、を備え、上記加減算器の演算結果を上記入力時系
列データの分離データとなる第1及び第2の出力時系列
データとして出力することにある。
SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned problems, and is characterized by time-series input data and data generated based on the time-series input data. Attenuation input data is input together with a predetermined attenuation coefficient and a filter coefficient corresponding to the attenuation input data, and any one of the set of the time-series input data and the predetermined attenuation coefficient or the combination of the attenuation input data and the filter coefficient A selector for selecting one of the sets, a multiplier for multiplying the set of data selected by the selector with each other, and a calculation result of the multiplier for the set of the time-series input data and a predetermined attenuation coefficient, and storing the attenuation input. RAM for supplying data to the selector as data
And a accumulator for sequentially accumulating the operation result of the multiplier corresponding to the set of the attenuation input data and the filter coefficient; and first and second registers for alternately receiving the operation result of the accumulator. , An adder / subtractor for adding or subtracting two operation results taken out from the first and second registers, wherein the operation result of the adder / subtracter is used as first and second separation data of the input time series data. Output as time-series data.

【0033】本発明によれば、入力時系列データに所定
のアッテネート係数が乗算されてRAMに記憶される。
そして、アッテネート処理された入力時系列データに対
してフィルタ係数が乗算され、帯域分離のための演算処
理が行われる。アッテネート係数の乗算とフィルタ係数
の乗算とで共通の乗算器を用いることで、乗算器の数を
増やす必要がない。
According to the present invention, the input time-series data is multiplied by a predetermined attenuation coefficient and stored in the RAM.
Then, the attenuated input time-series data is multiplied by a filter coefficient, and arithmetic processing for band separation is performed. By using a common multiplier for the multiplication of the attenuation coefficient and the multiplication of the filter coefficient, it is not necessary to increase the number of multipliers.

【0034】[0034]

【発明の実施の形態】図1は、本発明のデジタルフィル
タの第1の実施形態を示すブロック図である。RAM3
1は、後述する乗算器35に接続され、乗算器35から
入力される減衰入力データx(n)を所定の期間記憶し、
その演算処理の各ステップ毎に順次読み出して出力す
る。ROM32は、予め複数のフィルタ係数h(k)を記
憶し、1ステップごとに増加するkの値に対応して所定
のフィルタ係数h(k)を読み出して繰り返し出力する。
このkは、上述の式(9)〜式(10)に示したkに一致する
ものである。第1のセレクタ33は、エンコード入力と
RAM31とに接続され、時系列の入力データX(n)ま
たはRAM31から読み出される減衰入力データx(n)
の何れか一方を選択して出力する。第2のセレクタ34
は、アッテネート入力とROM32とに接続され、アッ
テネート係数g(m)またはROM32から読み出される
フィルタ係数h(k)の何れか一方を選択して出力する。
これら第1及び第2のセレクタ33、34は、共通の選
択制御信号SCに応答して、選択制御される。
FIG. 1 is a block diagram showing a digital filter according to a first embodiment of the present invention. RAM3
1 is connected to a multiplier 35 to be described later and stores the attenuation input data x (n) input from the multiplier 35 for a predetermined period,
The data is sequentially read and output for each step of the arithmetic processing. The ROM 32 stores a plurality of filter coefficients h (k) in advance, reads out a predetermined filter coefficient h (k) corresponding to the value of k that increases for each step, and repeatedly outputs the same.
This k coincides with k shown in the above equations (9) to (10). The first selector 33 is connected to the encode input and the RAM 31, and receives time-series input data X (n) or attenuation input data x (n) read from the RAM 31.
Is selected and output. Second selector 34
Is connected to the attenuation input and the ROM 32, and selects and outputs one of the attenuation coefficient g (m) and the filter coefficient h (k) read from the ROM 32.
The first and second selectors 33 and 34 are selectively controlled in response to a common selection control signal SC.

【0035】乗算器35は、第1のセレクタ33及び第
2のセレクタ34に接続され、第1のセレクタ33で選
択された入力データX(n)または減衰入力データx(n)の
一方と、第2のセレクタ34で選択されたアッテネート
係数g(m)またはフィルタ係数h(k)の一方とを乗算す
る。ここで、第1のセレクタ33が入力データX(n)を
選択するときには第2のセレクタ34がアッテネート係
数g(m)を選択し、第1のセレクタ33が減衰入力デー
タx(n)を選択するときには第2のセレクタ34がフィ
ルタ係数h(k)を選択するようして動作する。これによ
り、乗算器35は、入力データX(n)とアッテネート係
数g(m)との乗算、あるいは、減衰入力データx(n)とフ
ィルタ係数h(k)との乗算を行う。そして、入力データ
X(n)とアッテネート係数g(m)との乗算データがRAM
31に供給され、減衰入力データx(n)とフィルタ係数
h(k)との乗算データが累加算器36に供給される。
The multiplier 35 is connected to the first selector 33 and the second selector 34, and receives one of the input data X (n) or the attenuation input data x (n) selected by the first selector 33, The signal is multiplied by one of the attenuation coefficient g (m) or the filter coefficient h (k) selected by the second selector 34. Here, when the first selector 33 selects the input data X (n), the second selector 34 selects the attenuation coefficient g (m), and the first selector 33 selects the attenuation input data x (n). In this case, the second selector 34 operates so as to select the filter coefficient h (k). Thereby, the multiplier 35 multiplies the input data X (n) by the attenuation coefficient g (m) or multiplies the attenuation input data x (n) by the filter coefficient h (k). The multiplication data of the input data X (n) and the attenuation coefficient g (m) is stored in the RAM.
The multiplied data of the attenuation input data x (n) and the filter coefficient h (k) is supplied to the accumulator 36.

【0036】加算器37及びレジスタ38よりなる累加
算器36は、乗算器35に接続され、乗算器35から入
力される乗算データをタップ数に従って累加算する。即
ち、レジスタ38から読み出したデータと乗算器35か
ら入力される乗算データとを加算器37で加算し、その
加算データを再びレジスタ38に格納することにより、
乗算器35の乗算データを累加算する。
An accumulator 36 comprising an adder 37 and a register 38 is connected to the multiplier 35, and accumulates the multiplication data input from the multiplier 35 according to the number of taps. That is, the data read from the register 38 and the multiplication data input from the multiplier 35 are added by the adder 37, and the added data is stored in the register 38 again.
The multiplication data of the multiplier 35 is cumulatively added.

【0037】第1のレジスタ39及び第2のレジスタ4
0は、累加算器36に接続され、累加算器36から連続
して入力される累加算データを交互に取り込んで格納
し、それぞれ所定のタイミングで出力する。例えば、累
加算器36から奇数番目に出力される中間データA(n)
を第1のレジスタ39に格納し、偶数番目に出力される
中間データB(n)を第2のレジスタ40に格納するよう
に構成される。加減算器41は、第1のレジスタ39及
び第2のレジスタ40に接続され、各レジスタ39、4
0から読み出される中間データA(n)、B(n)を減算ある
いは加算する。
First register 39 and second register 4
The 0 is connected to the accumulator 36, alternately fetches and stores the accumulated data continuously input from the accumulator 36, and outputs each at a predetermined timing. For example, odd-numbered intermediate data A (n) output from the accumulator 36
Is stored in the first register 39, and the intermediate data B (n) outputted even-numbered is stored in the second register 40. The adder / subtractor 41 is connected to the first register 39 and the second register 40,
The intermediate data A (n) and B (n) read from 0 are subtracted or added.

【0038】出力レジスタ42は、加減算器41に接続
され、各演算処理毎に加減算器41から入力される加減
算データを格納し、出力データYa(n)、Yb(n)として出
力する。例えば、減算演算及び加算演算を交互に繰り返
す加減算器41に対応し、減算データを出力データYa
(n)として出力し、加算データを出力データYb(n)とし
て出力する。この出力レジスタ42の出力がエンコード
出力となる。
The output register 42 is connected to the adder / subtractor 41, stores the addition / subtraction data input from the adder / subtractor 41 for each operation, and outputs the data as output data Ya (n) and Yb (n). For example, it corresponds to the adder / subtractor 41 that alternately repeats the subtraction operation and the addition operation, and outputs the subtraction data to the output data Ya.
(n), and outputs the added data as output data Yb (n). The output of this output register 42 is the encoded output.

【0039】以上のデジタルフィルタは、乗算器35が
アッテネート係数g(m)の乗算とフィルタ係数h(k)の乗
算とを時分割で行い、入力データX(n)に対してアッテ
ネート処理と分離処理とが施された出力データYa(n)、
Yb(n)を生成する。これにより、デジタルフィルタにお
いて、新たな乗算器を追加することなく、アッテネート
処理を行うことが可能になる。
In the above digital filter, the multiplier 35 performs the multiplication of the attenuation coefficient g (m) and the multiplication of the filter coefficient h (k) in a time-division manner, and attenuates and separates the input data X (n). Processed output data Ya (n),
Generate Yb (n). This makes it possible to perform an attenuation process in a digital filter without adding a new multiplier.

【0040】図2は、図1に示すデジタルフィルタが、
タップ数Nを「4」とした場合の動作を説明するタイミ
ング図であり、n=4のときを示している。最初に、第
1のセレクタ33は、入力データX(n)を選択し、第2
のセレクタ34は、アッテネート係数g(m)を選択して
いる。この状態において、入力データX(8)が入力され
ると、乗算器35において、入力データX(8)とアッテ
ネート係数g(1)との乗算が行われ、その乗算データx
(8)(=X(8)・g(1))が減衰入力データとしてRAM
31に書き込まれる。ここで、アッテネート係数g(1)
については、入力データX(n)に対する減衰の程度を決
定するものであり、通常は、一定値に固定されている。
そして、減衰入力データx(8)のRAM31への書き込
みが完了した時点で、第1のセレクタ33は、減衰入力
データx(8)側(RAM31側)に切り換えられ、同時
に、第2のセレクタ34は、フィルタ係数h(k)側(R
OM32側)に切り換えられる。
FIG. 2 shows that the digital filter shown in FIG.
FIG. 6 is a timing chart for explaining an operation when the number of taps N is “4”, and shows a case where n = 4. First, the first selector 33 selects the input data X (n),
Selector 34 selects the attenuation coefficient g (m). In this state, when the input data X (8) is input, the multiplier 35 multiplies the input data X (8) by the attenuation coefficient g (1), and obtains the multiplied data x (8).
(8) (= X (8) · g (1)) is RAM as attenuation input data.
31 is written. Here, the attenuation coefficient g (1)
Is used to determine the degree of attenuation with respect to the input data X (n), and is usually fixed at a constant value.
When the writing of the attenuation input data x (8) to the RAM 31 is completed, the first selector 33 is switched to the attenuation input data x (8) side (the RAM 31 side), and at the same time, the second selector 34 is switched to the second selector 34. Is the filter coefficient h (k) side (R
OM32 side).

【0041】デジタルフィルタによるデータの分離処理
は、RAM31に記憶された減衰入力データx(8)に対
して行われる。即ち、入力データX(n)を減衰入力デー
タx(n)に置き換え、タップ数N=4として式(9)及び式
(10)を計算して得られる以下の式(11)及び式(12)に従う
演算処理を実行する。
The data separation processing by the digital filter is performed on the attenuation input data x (8) stored in the RAM 31. That is, the input data X (n) is replaced with the attenuation input data x (n), and the number of taps N = 4, and the equations (9) and (9) are used.
The arithmetic processing according to the following equations (11) and (12) obtained by calculating (10) is executed.

【0042】[0042]

【数11】 [Equation 11]

【0043】[0043]

【数12】 (Equation 12)

【0044】図2においては、入力データX(0)〜X(7)
の書き込みについて図示を省略してあるが、入力データ
X(0)〜X(7)は、入力データX(8)よりも先に入力され
ており、それぞれアッテネート係数g(1)が乗算されて
減衰入力データx(0)〜x(7)としてRAM41に記憶さ
れている。第1及び第2のセレクタ33、34について
は、入力データX(0)〜X(7)と減衰入力データx(0)〜
x(7)との乗算処理に対応して切り換えられる。
In FIG. 2, input data X (0) to X (7)
Although not shown in the drawing, the input data X (0) to X (7) are input before the input data X (8), and are respectively multiplied by the attenuation coefficient g (1). It is stored in the RAM 41 as attenuation input data x (0) to x (7). For the first and second selectors 33 and 34, input data X (0) to X (7) and attenuation input data x (0) to
Switching is performed in accordance with the multiplication process with x (7).

【0045】まず、RAM31から第1のセレクタ33
を通して減衰入力データx(8)が読み出され、これに対
応してROM32から第2のセレクタ34を通してフィ
ルタ係数h(0)が読み出されると、これらが乗算器35
によって乗算され、その乗算データが累加算器36に供
給される。このとき、累加算器36のデータはクリアさ
れており、減衰入力データx(8)とフィルタ係数h(0)と
の乗算値が、 A(1)=h(0)・x(8) なるデータとしてそのままレジスタ38に格納される。
続いて、RAM31から減衰入力データx(6)、x(4)、
x(2)が順に読み出されると共に、ROM32からフィ
ルタ係数h(2)、h(4)、h(6)が順に読み出され、それ
ぞれ乗算器35により乗算されて各乗算データが順次累
加算器36に供給される。累加算器35では、入力され
る乗算データが累加算され、 A(2)=h(2)・x(6)+A1 A(3)=h(4)・x(4)+A2 A(4)=h(6)・x(2)+A3 なるデータがレジスタ38に順次格納される。そして、
最終的に格納された、 A(4)=h(0)・x(8)+h(2)・x(6)+h(4)・x(4)+
h(6)・x(2) なるデータが、第1のレジスタ39に格納される。
First, from the RAM 31 to the first selector 33
When the attenuation coefficient x (8) is read out from the ROM 32 and the filter coefficient h (0) is read out from the ROM 32 via the second selector 34, the attenuation input data x (8) is
, And the multiplied data is supplied to the accumulator 36. At this time, the data of the accumulator 36 has been cleared, and the multiplication value of the attenuation input data x (8) and the filter coefficient h (0) is A (1) = h (0) · x (8). The data is stored in the register 38 as it is.
Subsequently, attenuation input data x (6), x (4),
x (2) is sequentially read out, and the filter coefficients h (2), h (4), h (6) are sequentially read out from the ROM 32, multiplied by the multiplier 35, and each multiplied data is sequentially accumulated. 36. In the accumulator 35, the input multiplication data is accumulated, and A (2) = h (2) .x (6) + A1 A (3) = h (4) .x (4) + A2 A (4) = H (6) .x (2) + A3 are sequentially stored in the register 38. And
A (4) = h (0) .x (8) + h (2) .x (6) + h (4) .x (4) +
The data h (6) .x (2) is stored in the first register 39.

【0046】続いて、RAM31から第1のセレクタ3
3を通して減衰入力データx(7)が読み出され、これに
対応してROM32から第2のセレクタ34を通してフ
ィルタ係数h(1)が読み出されると、これらが乗算器3
5によって乗算され、その乗算データが累加算器36に
供給される。このとき、累加算器36のレジスタ38は
クリアされており、減衰入力データx(7)とフィルタ係
数h(1)との乗算値が、 B(1)=h(1)・x(7) なるデータとしてそのままレジスタ38に格納される。
続いて、RAM31から減衰入力データx(5)、x(3)、
x(1)が順に読み出されると共に、ROM32からフィ
ルタ係数h(3)、h(5)、h(7)が順に読み出され、それ
ぞれの乗算データが累加算器36に順次供給される。従
って、 B(2)=h(3)・x(5)+B1 B(3)=h(5)・x(3)+B2 B(4)=h(7)・x(1)+B3 なるデータがレジスタ38に順次格納される。そして、
最終的に格納された、 B(4)=h(1)・x(7)+h(3)・x(5)+h(5)・x(3)+
h(7)・x(1) なるデータが、第2のレジスタ40に格納される。
Subsequently, the RAM 31 stores the first selector 3
3, the attenuation input data x (7) is read out, and the filter coefficient h (1) is read out from the ROM 32 through the second selector 34 correspondingly.
5 and the multiplied data is supplied to the accumulator 36. At this time, the register 38 of the accumulator 36 has been cleared, and the multiplication value of the attenuation input data x (7) and the filter coefficient h (1) becomes B (1) = h (1) · x (7). Is stored in the register 38 as it is.
Subsequently, attenuation input data x (5), x (3),
x (1) is read out sequentially, and the filter coefficients h (3), h (5), h (7) are read out sequentially from the ROM 32, and the respective multiplied data are sequentially supplied to the accumulator 36. Therefore, B (2) = h (3) .x (5) + B1 B (3) = h (5) .x (3) + B2 B (4) = h (7) .x (1) + B3 The data is sequentially stored in the register 38. And
B (4) = h (1) .x (7) + h (3) .x (5) + h (5) .x (3) +
The data h (7) · x (1) is stored in the second register 40.

【0047】そして、第1のレジスタ39及び第2のレ
ジスタ40からデータA(4)、B(4)がそれぞれ加減算器
41に入力され、データA(4)とデータB(4)とが加算さ
れ、さらに、データA(4)からデータB(4)が減算され
る。この加減算器41の加算データ、即ち、 A(4)+B(4)=h(6)・X(2)+h(4)・X(4)+h(2)・
X(6)+h(0)・X(8)+h(7)・X(1)+h(5)・X(3)+
h(3)・X(5)+h(1)・X(7) は、出力データYb(4)として出力レジスタ42に格納さ
れる。また、減算データ、即ち、 A(4)−B(4)=h(6)・X(2)+h(4)・X(4)+h(2)・
X(6)+h(0)・X(8)−h(7)・X(1)−h(5)・X(3)−
h(3)・X(5)−h(1)・X(7) は、出力データYa(4)として出力レジスタ42に格納さ
れる。この結果、式(11)及び式(12)で表される演算処理
が成されたことになる。
Then, the data A (4) and B (4) are input from the first register 39 and the second register 40 to the adder / subtractor 41, respectively, and the data A (4) and the data B (4) are added. Then, data B (4) is subtracted from data A (4). A (4) + B (4) = h (6) · X (2) + h (4) · X (4) + h (2) ·
X (6) + h (0) · X (8) + h (7) · X (1) + h (5) · X (3) +
h (3) .X (5) + h (1) .X (7) is stored in the output register 42 as output data Yb (4). Also, subtraction data, that is, A (4) −B (4) = h (6) · X (2) + h (4) · X (4) + h (2) ·
X (6) + h (0) .X (8) -h (7) .X (1) -h (5) .X (3)-
h (3) .X (5) -h (1) .X (7) is stored in the output register 42 as output data Ya (4). As a result, the arithmetic processing represented by Expressions (11) and (12) has been performed.

【0048】この実施形態においては、第1のセレクタ
33によって入力データX(n)または減衰入力データx
(n)の一方を選択し、第2のセレクタ34によってアッ
テネート係数g(m)またはフィルタ係数h(k)の一方を選
択するようにしているが、入力データX(n)とアッテネ
ート係数g(m)とを入れ替えて入力するようにしてもよ
い。
In this embodiment, the input data X (n) or the attenuated input data x
(n), and the second selector 34 selects either the attenuation coefficient g (m) or the filter coefficient h (k). However, the input data X (n) and the attenuation coefficient g ( m) may be replaced with the input.

【0049】図3は、本発明のデジタルフィルタの第2
の実施形態を示すブロック図であり、図2は、その動作
を説明するタイミング図である。これらの図において、
ROM32'以外の部分は、図1と同一であり、説明は
省略する。ROM32'は、複数のフィルタ係数h(k)と
共にアッテネート係数g(m)を記憶する。そして、第1
のセレクタ33の選択動作を制御する選択制御信号SC
に応答し、アッテネート係数g(m)あるいはフィルタ係
数h(k)を読み出して出力する。即ち、図2に示すよう
に、第1のセレクタ33が入力データX(n)を選択して
いるときには、入力データX(n)に対する減衰の程度を
指定するmの値に対応してアッテネート係数g(m)を読
み出して出力する。そして、第1のセレクタ33が減衰
入力データx(n)を選択しているときには、1ステップ
ごとに増加するkの値に対応して所定のフィルタ係数h
(k)を読み出して繰り返し出力する。このkは、図1の
場合と同様に、上述の式(9)〜式(10)に示したkに一致
するものである。
FIG. 3 shows a second embodiment of the digital filter of the present invention.
FIG. 2 is a timing chart for explaining the operation. In these figures,
The parts other than the ROM 32 'are the same as those in FIG. 1, and the description is omitted. The ROM 32 'stores the attenuation coefficient g (m) together with the plurality of filter coefficients h (k). And the first
Control signal SC for controlling the selection operation of selector 33
, The attenuation coefficient g (m) or the filter coefficient h (k) is read and output. That is, as shown in FIG. 2, when the first selector 33 selects the input data X (n), the attenuation coefficient corresponding to the value of m which specifies the degree of attenuation with respect to the input data X (n). Read and output g (m). When the first selector 33 selects the attenuation input data x (n), a predetermined filter coefficient h corresponding to the value of k that increases for each step is set.
(k) is read and output repeatedly. This k coincides with k shown in the above equations (9) to (10), as in the case of FIG.

【0050】従って、ROM32'が、図1に示す第2
のセレクタ34と同等に機能し、入力データX(n)に対
してアッテネート係数g(m)を供給し、減衰入力データ
x(n)に対してROM32'からフィルタ係数h(k)を供
給する。この結果、図1の場合と同一の動作を達成する
ことができる。
Therefore, the ROM 32 'has the second memory shown in FIG.
, The attenuation coefficient g (m) is supplied to the input data X (n), and the filter coefficient h (k) is supplied from the ROM 32 'to the attenuation input data x (n). . As a result, the same operation as in FIG. 1 can be achieved.

【0051】[0051]

【発明の効果】本発明によれば、回路規模の縮小に有利
なストアードプログラム方式のQMFによるデジタルフ
ィルタにおいて、乗算器の数を増やすことなく、アッテ
ネート機能を付加することができる。
According to the present invention, an attenuating function can be added without increasing the number of multipliers in a digital filter using a stored program type QMF which is advantageous for reducing the circuit scale.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明のデジタルフィルタの第1の実施形態を
示すブロック図である。
FIG. 1 is a block diagram illustrating a digital filter according to a first embodiment of the present invention.

【図2】第1の実施形態の動作を説明するタイミング図
である。
FIG. 2 is a timing chart for explaining the operation of the first embodiment.

【図3】本発明のデジタルフィルタの第2の実施形態を
示すブロック図である。
FIG. 3 is a block diagram illustrating a digital filter according to a second embodiment of the present invention.

【図4】第2の実施形態の動作を説明するタイミング図
である。
FIG. 4 is a timing chart for explaining the operation of the second embodiment.

【図5】FIR型デジタルフィルタの構成を示す回路図
である。
FIG. 5 is a circuit diagram showing a configuration of an FIR digital filter.

【図6】ストアードプログラム方式のQMFの構成を示
すブロック図である。
FIG. 6 is a block diagram showing a configuration of a stored program type QMF.

【図7】QMFを用いた分離フィルタの構成図である。FIG. 7 is a configuration diagram of a separation filter using QMF.

【符号の説明】[Explanation of symbols]

1、21 遅延素子 2、22、23 乗算器 3、24、25 総和加算器 11、31 RAM 12、32、32' ROM 13、35 乗算器 14、36 累加算器 15、37 加算器 16、38 レジスタ 17、42 出力レジスタ 26 減算器 27 加算器 33、34 セレクタ 39、40 レジスタ 41 加減算器 1,21 delay element 2,22,23 multiplier 3,24,25 sum adder 11,31 RAM 12,32,32 'ROM 13,35 multiplier 14,36 accumulator 15,37 adder 16,38 Registers 17, 42 Output register 26 Subtractor 27 Adder 33, 34 Selector 39, 40 Register 41 Adder / subtractor

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 時系列入力データ及びこの時系列入力デ
ータに基づいて生成された減衰入力データが、所定のア
ッテネート係数及び上記減衰入力データに対応したフィ
ルタ係数と共に入力され、上記時系列入力データ及び上
記所定のアッテネート係数の組または上記減衰入力デー
タ及び上記フィルタ係数の組の何れか一方の組を選択す
るセレクタと、上記セレクタの選択データの組を互いに
乗算する乗算器と、上記時系列入力データ及び所定のア
ッテネート係数の組に対する上記乗算器の演算結果を記
憶し、上記減衰入力データとして上記セレクタに供給す
るRAMと、上記減衰入力データ及び上記フィルタ係数
の組に対応する上記乗算器の演算結果を順次累加算する
累加算器と、上記累加算器の演算結果を交互に取り込む
第1及び第2のレジスタと、上記第1及び第2のレジス
タから取り出される2つの演算結果を加算または減算す
る加減算器と、を備え、上記加減算器の演算結果を上記
入力時系列データの分離データとなる第1及び第2の出
力時系列データとして出力することを特徴とするデジタ
ルフィルタ。
1. Time-series input data and attenuation input data generated based on the time-series input data are input together with a predetermined attenuation coefficient and a filter coefficient corresponding to the attenuation input data. A selector for selecting one of the set of the predetermined attenuation coefficient or the set of the attenuation input data and the filter coefficient; a multiplier for multiplying the set of selection data of the selector by one another; and the time-series input data. And a RAM for storing a calculation result of the multiplier for a set of predetermined attenuation coefficients and supplying the result as the attenuation input data to the selector; and a calculation result of the multiplier corresponding to the set of the attenuation input data and the filter coefficient. And a first and second register for alternately taking in the operation result of the accumulator. And an adder / subtractor for adding or subtracting two operation results taken out from the first and second registers. The first and second units are used to separate the operation result of the adder / subtracter into separated data of the input time-series data. A digital filter for outputting as second output time-series data.
【請求項2】 複数のフィルタ係数を記憶し、上記乗算
器の演算のタイミング毎に1つのフィルタ係数を読み出
して上記乗算器に供給するROMをさらに備えたことを
特徴とする請求項1に記載のデジタルフィルタ。
2. The apparatus according to claim 1, further comprising a ROM storing a plurality of filter coefficients, reading one filter coefficient at each operation timing of the multiplier, and supplying the read filter coefficient to the multiplier. Digital filter.
【請求項3】 上記ROMは、上記複数のフィルタ係数
と共に所定のアッテネート係数を記憶することを特徴と
する請求項2に記載のデジタルフィルタ。
3. The digital filter according to claim 2, wherein the ROM stores a predetermined attenuation coefficient together with the plurality of filter coefficients.
【請求項4】 上記加減算器の演算結果を第1または第
2の出力時系列データをとして保持する出力レジスタを
さらに備えたことを特徴とする請求項1に記載のデジタ
ルフィルタ。
4. The digital filter according to claim 1, further comprising an output register for holding the operation result of said adder / subtracter as first or second output time-series data.
JP1739098A 1998-01-29 1998-01-29 Digital filter Pending JPH11220357A (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP1739098A JPH11220357A (en) 1998-01-29 1998-01-29 Digital filter
US09/237,520 US6405229B1 (en) 1998-01-29 1999-01-26 Digital filters
US09/873,626 US6360240B2 (en) 1998-01-29 2001-06-04 Digital filters
US09/873,724 US6510445B2 (en) 1998-01-29 2001-06-04 Digital filters

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1739098A JPH11220357A (en) 1998-01-29 1998-01-29 Digital filter

Publications (1)

Publication Number Publication Date
JPH11220357A true JPH11220357A (en) 1999-08-10

Family

ID=11942681

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1739098A Pending JPH11220357A (en) 1998-01-29 1998-01-29 Digital filter

Country Status (1)

Country Link
JP (1) JPH11220357A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6985522B2 (en) 1999-12-28 2006-01-10 Nec Corporation Variable-gain digital filter
US7334010B2 (en) 2002-03-12 2008-02-19 Oki Electric Industry Co., Ltd. Feedback digital filter

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6985522B2 (en) 1999-12-28 2006-01-10 Nec Corporation Variable-gain digital filter
US7334010B2 (en) 2002-03-12 2008-02-19 Oki Electric Industry Co., Ltd. Feedback digital filter

Similar Documents

Publication Publication Date Title
JP3291461B2 (en) Digital filter
US6405229B1 (en) Digital filters
JPH03150910A (en) Digital audio signal processing unit
JP3135902B2 (en) Automatic equalizer and semiconductor integrated circuit
US5438532A (en) Digital filter for use in synthesizing filter or a separation filter
JP5065784B2 (en) In-phase component extraction method and apparatus
WO2002089334A1 (en) Resampling system and apparatus
JP3584027B2 (en) Digital filter
JPH11220357A (en) Digital filter
JPH11220358A (en) Digital filter
JP3296772B2 (en) Digital filter
JP3349421B2 (en) Audio data compression / decompression device and digital filter
JP3177358B2 (en) Digital filter
JP3197648B2 (en) Digital filter
JP3485786B2 (en) Audio data compression / decompression device
JP2733403B2 (en) Digital filter for decimation
US8340285B2 (en) Method for efficient and zero latency filtering in a long impulse response system
JPH06216715A (en) Digital filter
JP3172046B2 (en) Sampling rate converter
JP3141523B2 (en) Finite impulse response filter device
JP2864827B2 (en) Wavelet converter
KR100214504B1 (en) Adaptive-type equalizer
JPH06181427A (en) Digital filter
JP4267293B2 (en) Filter processing device
JPH10322164A (en) Digital filter