JPH11220357A - デジタルフィルタ - Google Patents
デジタルフィルタ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
Links
Landscapes
- Complex Calculations (AREA)
Abstract
(57)【要約】
【課題】 デジタルフィルタにアッテネート機能を内蔵
させる。 【解決手段】 入力データX(n)がセレクタ33を通し
て乗算器35に入力され、セレクタ34を通して入力さ
れるアッテネート係数g(m)と乗算されて、減衰入力デ
ータx(n)としてRAM31に記憶される。RAM31
から読み出される減衰入力データx(n)は、セレクタ3
3を通して乗算器35に入力され、セレクタ34を通し
て入力されるフィルタ係数h(k)と乗算されて累加算器
36に供給される。乗算データが累加算器36でタップ
数に応じて累加算され、最終的な累加算データが中間デ
ータA(n)、B(n)としてレジスタ39、40に交互に格
納される。加減算器41により中間データA(n)、B(n)
に対して減算処理及び加算処理が施されて出力データY
a(n)、Yb(n)が出力レジスタ42に格納される。
させる。 【解決手段】 入力データX(n)がセレクタ33を通し
て乗算器35に入力され、セレクタ34を通して入力さ
れるアッテネート係数g(m)と乗算されて、減衰入力デ
ータx(n)としてRAM31に記憶される。RAM31
から読み出される減衰入力データx(n)は、セレクタ3
3を通して乗算器35に入力され、セレクタ34を通し
て入力されるフィルタ係数h(k)と乗算されて累加算器
36に供給される。乗算データが累加算器36でタップ
数に応じて累加算され、最終的な累加算データが中間デ
ータA(n)、B(n)としてレジスタ39、40に交互に格
納される。加減算器41により中間データA(n)、B(n)
に対して減算処理及び加算処理が施されて出力データY
a(n)、Yb(n)が出力レジスタ42に格納される。
Description
【0001】
【発明の属する技術分野】本発明は、デジタルオーディ
オ機器等に用いられるデジタルデータの分離を行うデジ
タルフィルタに関する。
オ機器等に用いられるデジタルデータの分離を行うデジ
タルフィルタに関する。
【0002】
【従来の技術】FIR型(Finite Impulse Responce)の
デジタルフィルタは、式(1)に示すように、入力データ
X(n)とインパルス応答との畳み込みによって出力デー
タY(n)を得るように構成される。
デジタルフィルタは、式(1)に示すように、入力データ
X(n)とインパルス応答との畳み込みによって出力デー
タY(n)を得るように構成される。
【0003】
【数1】
【0004】ここで、h(k)はフィルタ係数、Nはタッ
プ数である。そこで、式(1)をZ変換すると、
プ数である。そこで、式(1)をZ変換すると、
【0005】
【数2】
【0006】が得られ、この式(2)より、
【0007】
【数3】
【0008】となり、周波数応答がわかる。そして、ω
=2πk/Nとすると、式(3)は、
=2πk/Nとすると、式(3)は、
【0009】
【数4】
【0010】となる。この式(4)は、離散的フーリエ変
換(DFT:Discrete Fourier Transform)の式とみなす
ことができる。従って、フィルタ係数h(k)は、式(4)に
よって与えられる周波数特性を逆変換(IDFT:Invers
e Discrete Fourier Transform)することにより求めら
れる。図5は、標準的なFIR型のデジタルフィルタの
構成を示す回路図である。
換(DFT:Discrete Fourier Transform)の式とみなす
ことができる。従って、フィルタ係数h(k)は、式(4)に
よって与えられる周波数特性を逆変換(IDFT:Invers
e Discrete Fourier Transform)することにより求めら
れる。図5は、標準的なFIR型のデジタルフィルタの
構成を示す回路図である。
【0011】複数の遅延素子1は、例えばシフトレジス
タにより構成され、互いに直列に接続されて入力データ
X(n)をそれぞれ一定の期間Tだけ遅延する。複数の乗
算器2は、入力データX(n)の入力側及び各遅延素子1
の出力側にそれぞれ接続され、入力データX(n)及び各
遅延素子1の出力に固有のフィルタ係数h(k)をそれぞ
れ乗算する。これにより、入力データX(n)に対してイ
ンパルス応答の畳み込み処理が行われる。
タにより構成され、互いに直列に接続されて入力データ
X(n)をそれぞれ一定の期間Tだけ遅延する。複数の乗
算器2は、入力データX(n)の入力側及び各遅延素子1
の出力側にそれぞれ接続され、入力データX(n)及び各
遅延素子1の出力に固有のフィルタ係数h(k)をそれぞ
れ乗算する。これにより、入力データX(n)に対してイ
ンパルス応答の畳み込み処理が行われる。
【0012】総和加算器3は、各乗算器2の出力、即
ち、所定のフィルタ係数h(k)が乗算された入力データ
X(n)及び各遅延素子1の出力の総和をとり、出力デー
タY(n)として出力する。従って、入力データX(n)に対
して、上述の式(1)に従う演算が実行されたことにな
る。このようなデジタルフィルタは、タップ数Nに応じ
て遅延素子1及び乗算器2が配列されるため、タップ数
Nの増加に伴って回路規模が大きくなるという問題を有
している。そこで、時系列の入力データを一旦メモリに
記憶し、そのメモリから読み出した入力データにフィル
タ係数を順次乗算しながら、その乗算結果を累加算する
ようにしたストアードプログラム方式のデジタルフィル
タが提案されている。
ち、所定のフィルタ係数h(k)が乗算された入力データ
X(n)及び各遅延素子1の出力の総和をとり、出力デー
タY(n)として出力する。従って、入力データX(n)に対
して、上述の式(1)に従う演算が実行されたことにな
る。このようなデジタルフィルタは、タップ数Nに応じ
て遅延素子1及び乗算器2が配列されるため、タップ数
Nの増加に伴って回路規模が大きくなるという問題を有
している。そこで、時系列の入力データを一旦メモリに
記憶し、そのメモリから読み出した入力データにフィル
タ係数を順次乗算しながら、その乗算結果を累加算する
ようにしたストアードプログラム方式のデジタルフィル
タが提案されている。
【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)を乗算する。
タルフィルタの構成を示すブロック図である。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)を乗算する。
【0014】累加算器14は、加算器15及びレジスタ
16からなり、乗算器13の乗算結果を累加算する。即
ち、加算器15により乗算器13の出力とレジスタ16
の出力とが加算され、その加算結果が再びレジスタ16
に格納されることにより、乗算器13の乗算結果が順次
加算される。出力レジスタ17は、累加算器14から出
力される累加算結果を取り込み、出力データY(n)とし
て出力する。
16からなり、乗算器13の乗算結果を累加算する。即
ち、加算器15により乗算器13の出力とレジスタ16
の出力とが加算され、その加算結果が再びレジスタ16
に格納されることにより、乗算器13の乗算結果が順次
加算される。出力レジスタ17は、累加算器14から出
力される累加算結果を取り込み、出力データY(n)とし
て出力する。
【0015】このFIR型デジタルフィルタでは、RA
M11及びROM12からそれぞれ入力データX(n)及
びフィルタ係数h(k)を順次読み出して積和演算を繰り
返すことにより、式(1)に従う演算を実行して出力デー
タY(n)を得ている。このため、タップ数Nが大きくな
ったとしても、回路規模が大きくなることはない。とこ
ろで、第1のフィルタ係数h1(n)を有するデジタルフィ
ルタに対し、
M11及びROM12からそれぞれ入力データX(n)及
びフィルタ係数h(k)を順次読み出して積和演算を繰り
返すことにより、式(1)に従う演算を実行して出力デー
タY(n)を得ている。このため、タップ数Nが大きくな
ったとしても、回路規模が大きくなることはない。とこ
ろで、第1のフィルタ係数h1(n)を有するデジタルフィ
ルタに対し、
【0016】
【数5】
【0017】により与えられる第2のフィルタ係数h2
(n)を有するデジタルフィルタは、その周波数応答性か
らミラーフィルタと称される。このようなミラーフィル
タにおけるZ変換の関係は、
(n)を有するデジタルフィルタは、その周波数応答性か
らミラーフィルタと称される。このようなミラーフィル
タにおけるZ変換の関係は、
【0018】
【数6】
【0019】である。ここで、周波数応答性を考える
と、
と、
【0020】
【数7】
【0021】であることから、式(6)は、
【0022】
【数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頁に詳述されてい
る。
波数応答性が、π/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頁に詳述されてい
る。
【0024】上述のQMFにより、周波数成分の帯域分
離が行われる分離フィルタにおいては、式(9)及び式(1
0)に示すように、入力データX(n)とインパルス応答と
の畳み込み処理と、それらの加算または減算処理によ
り、入力データX(n)の分離データである2つの出力デ
ータYa(n)、Yb(n)を得るように構成される。
離が行われる分離フィルタにおいては、式(9)及び式(1
0)に示すように、入力データX(n)とインパルス応答と
の畳み込み処理と、それらの加算または減算処理によ
り、入力データX(n)の分離データである2つの出力デ
ータYa(n)、Yb(n)を得るように構成される。
【0025】
【数9】
【0026】
【数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)に対するインパルス
応答の畳み込み処理が行われる。
処理が行われる分離フィルタの構成を示すブロック図で
ある。複数の遅延素子21は、直列に接続され、入力デ
ータX(n)をそれぞれ一定期間Tだけ遅延する。複数の
第1の乗算器22は、入力データX(n)の入力側及び偶
数段の遅延素子21の出力側に接続され、入力データX
(n)及び各遅延素子21の出力にそれぞれフィルタ係数
h(2k)を乗算する。また、複数の第2の乗算器24は、
奇数段の遅延素子21の出力側に接続され、各遅延素子
21の出力にそれぞれフィルタ係数h(2k+1)を乗算す
る。これにより、入力データX(n)に対するインパルス
応答の畳み込み処理が行われる。
【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)に従う演算処理が達成される。
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)に従う演算処理が達成される。
【0029】以上のような分離フィルタを上述のストア
ードプログラム方式により構成することは、本出願人に
より提案された特開平7−131295号公報に開示さ
れている。
ードプログラム方式により構成することは、本出願人に
より提案された特開平7−131295号公報に開示さ
れている。
【0030】
【発明が解決しようとする課題】一般的なオーディオ機
器においては、音声信号を減衰させて再生音量を下げる
アッテネート機能が設けられる。MD(Mini Disc)プレ
ーヤに代表されるデジタルオーディオ機器の場合、デジ
タル化されたオーディオデータに利得が1以下となるよ
うなアッテネート係数を乗算することにより、アッテネ
ート機能を実現するように構成される。
器においては、音声信号を減衰させて再生音量を下げる
アッテネート機能が設けられる。MD(Mini Disc)プレ
ーヤに代表されるデジタルオーディオ機器の場合、デジ
タル化されたオーディオデータに利得が1以下となるよ
うなアッテネート係数を乗算することにより、アッテネ
ート機能を実現するように構成される。
【0031】デジタルデータの演算処理においては、回
路規模が大きい乗算器の数が増えると、演算処理装置が
複雑になり、コストの増加を招くことになる。特に、ビ
ット数の多いオーディオデータの場合には、乗算器の増
加がコストの増加に大きく影響し易い。そこで本発明
は、回路規模を増大させることなく、デジタルフィルタ
にアッテネート機能を内蔵させることを目的とする。
路規模が大きい乗算器の数が増えると、演算処理装置が
複雑になり、コストの増加を招くことになる。特に、ビ
ット数の多いオーディオデータの場合には、乗算器の増
加がコストの増加に大きく影響し易い。そこで本発明
は、回路規模を増大させることなく、デジタルフィルタ
にアッテネート機能を内蔵させることを目的とする。
【0032】
【課題を解決するための手段】本発明は、上述の課題を
解決するために成されたもので、その特徴とするところ
は、時系列入力データ及びこの時系列入力データに基づ
いて生成された減衰入力データが、所定のアッテネート
係数及び上記減衰入力データに対応したフィルタ係数と
共に入力され、上記時系列入力データ及び上記所定のア
ッテネート係数の組または上記減衰入力データ及び上記
フィルタ係数の組の何れか一方の組を選択するセレクタ
と、上記セレクタの選択データの組を互いに乗算する乗
算器と、上記時系列入力データ及び所定のアッテネート
係数の組に対する上記乗算器の演算結果を記憶し、上記
減衰入力データとして上記セレクタに供給するRAM
と、上記減衰入力データ及び上記フィルタ係数の組に対
応する上記乗算器の演算結果を順次累加算する累加算器
と、上記累加算器の演算結果を交互に取り込む第1及び
第2のレジスタと、上記第1及び第2のレジスタから取
り出される2つの演算結果を加算または減算する加減算
器と、を備え、上記加減算器の演算結果を上記入力時系
列データの分離データとなる第1及び第2の出力時系列
データとして出力することにある。
解決するために成されたもので、その特徴とするところ
は、時系列入力データ及びこの時系列入力データに基づ
いて生成された減衰入力データが、所定のアッテネート
係数及び上記減衰入力データに対応したフィルタ係数と
共に入力され、上記時系列入力データ及び上記所定のア
ッテネート係数の組または上記減衰入力データ及び上記
フィルタ係数の組の何れか一方の組を選択するセレクタ
と、上記セレクタの選択データの組を互いに乗算する乗
算器と、上記時系列入力データ及び所定のアッテネート
係数の組に対する上記乗算器の演算結果を記憶し、上記
減衰入力データとして上記セレクタに供給するRAM
と、上記減衰入力データ及び上記フィルタ係数の組に対
応する上記乗算器の演算結果を順次累加算する累加算器
と、上記累加算器の演算結果を交互に取り込む第1及び
第2のレジスタと、上記第1及び第2のレジスタから取
り出される2つの演算結果を加算または減算する加減算
器と、を備え、上記加減算器の演算結果を上記入力時系
列データの分離データとなる第1及び第2の出力時系列
データとして出力することにある。
【0033】本発明によれば、入力時系列データに所定
のアッテネート係数が乗算されてRAMに記憶される。
そして、アッテネート処理された入力時系列データに対
してフィルタ係数が乗算され、帯域分離のための演算処
理が行われる。アッテネート係数の乗算とフィルタ係数
の乗算とで共通の乗算器を用いることで、乗算器の数を
増やす必要がない。
のアッテネート係数が乗算されてRAMに記憶される。
そして、アッテネート処理された入力時系列データに対
してフィルタ係数が乗算され、帯域分離のための演算処
理が行われる。アッテネート係数の乗算とフィルタ係数
の乗算とで共通の乗算器を用いることで、乗算器の数を
増やす必要がない。
【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に応答して、選択制御される。
タの第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に応答して、選択制御される。
【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に供給される。
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に供給される。
【0036】加算器37及びレジスタ38よりなる累加
算器36は、乗算器35に接続され、乗算器35から入
力される乗算データをタップ数に従って累加算する。即
ち、レジスタ38から読み出したデータと乗算器35か
ら入力される乗算データとを加算器37で加算し、その
加算データを再びレジスタ38に格納することにより、
乗算器35の乗算データを累加算する。
算器36は、乗算器35に接続され、乗算器35から入
力される乗算データをタップ数に従って累加算する。即
ち、レジスタ38から読み出したデータと乗算器35か
ら入力される乗算データとを加算器37で加算し、その
加算データを再びレジスタ38に格納することにより、
乗算器35の乗算データを累加算する。
【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)を減算ある
いは加算する。
0は、累加算器36に接続され、累加算器36から連続
して入力される累加算データを交互に取り込んで格納
し、それぞれ所定のタイミングで出力する。例えば、累
加算器36から奇数番目に出力される中間データA(n)
を第1のレジスタ39に格納し、偶数番目に出力される
中間データB(n)を第2のレジスタ40に格納するよう
に構成される。加減算器41は、第1のレジスタ39及
び第2のレジスタ40に接続され、各レジスタ39、4
0から読み出される中間データA(n)、B(n)を減算ある
いは加算する。
【0038】出力レジスタ42は、加減算器41に接続
され、各演算処理毎に加減算器41から入力される加減
算データを格納し、出力データYa(n)、Yb(n)として出
力する。例えば、減算演算及び加算演算を交互に繰り返
す加減算器41に対応し、減算データを出力データYa
(n)として出力し、加算データを出力データYb(n)とし
て出力する。この出力レジスタ42の出力がエンコード
出力となる。
され、各演算処理毎に加減算器41から入力される加減
算データを格納し、出力データYa(n)、Yb(n)として出
力する。例えば、減算演算及び加算演算を交互に繰り返
す加減算器41に対応し、減算データを出力データYa
(n)として出力し、加算データを出力データYb(n)とし
て出力する。この出力レジスタ42の出力がエンコード
出力となる。
【0039】以上のデジタルフィルタは、乗算器35が
アッテネート係数g(m)の乗算とフィルタ係数h(k)の乗
算とを時分割で行い、入力データX(n)に対してアッテ
ネート処理と分離処理とが施された出力データYa(n)、
Yb(n)を生成する。これにより、デジタルフィルタにお
いて、新たな乗算器を追加することなく、アッテネート
処理を行うことが可能になる。
アッテネート係数g(m)の乗算とフィルタ係数h(k)の乗
算とを時分割で行い、入力データX(n)に対してアッテ
ネート処理と分離処理とが施された出力データYa(n)、
Yb(n)を生成する。これにより、デジタルフィルタにお
いて、新たな乗算器を追加することなく、アッテネート
処理を行うことが可能になる。
【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側)に切り換えられる。
タップ数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側)に切り換えられる。
【0041】デジタルフィルタによるデータの分離処理
は、RAM31に記憶された減衰入力データx(8)に対
して行われる。即ち、入力データX(n)を減衰入力デー
タx(n)に置き換え、タップ数N=4として式(9)及び式
(10)を計算して得られる以下の式(11)及び式(12)に従う
演算処理を実行する。
は、RAM31に記憶された減衰入力データx(8)に対
して行われる。即ち、入力データX(n)を減衰入力デー
タx(n)に置き換え、タップ数N=4として式(9)及び式
(10)を計算して得られる以下の式(11)及び式(12)に従う
演算処理を実行する。
【0042】
【数11】
【0043】
【数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)との乗算処理に対応して切り換えられる。
の書き込みについて図示を省略してあるが、入力データ
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)との乗算処理に対応して切り換えられる。
【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に格納される。
を通して減衰入力データ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に格納される。
【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に格納される。
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に格納される。
【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)で表される演算処理
が成されたことになる。
ジスタ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)で表される演算処理
が成されたことになる。
【0048】この実施形態においては、第1のセレクタ
33によって入力データX(n)または減衰入力データx
(n)の一方を選択し、第2のセレクタ34によってアッ
テネート係数g(m)またはフィルタ係数h(k)の一方を選
択するようにしているが、入力データX(n)とアッテネ
ート係数g(m)とを入れ替えて入力するようにしてもよ
い。
33によって入力データX(n)または減衰入力データx
(n)の一方を選択し、第2のセレクタ34によってアッ
テネート係数g(m)またはフィルタ係数h(k)の一方を選
択するようにしているが、入力データX(n)とアッテネ
ート係数g(m)とを入れ替えて入力するようにしてもよ
い。
【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に一致
するものである。
の実施形態を示すブロック図であり、図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に一致
するものである。
【0050】従って、ROM32'が、図1に示す第2
のセレクタ34と同等に機能し、入力データX(n)に対
してアッテネート係数g(m)を供給し、減衰入力データ
x(n)に対してROM32'からフィルタ係数h(k)を供
給する。この結果、図1の場合と同一の動作を達成する
ことができる。
のセレクタ34と同等に機能し、入力データX(n)に対
してアッテネート係数g(m)を供給し、減衰入力データ
x(n)に対してROM32'からフィルタ係数h(k)を供
給する。この結果、図1の場合と同一の動作を達成する
ことができる。
【0051】
【発明の効果】本発明によれば、回路規模の縮小に有利
なストアードプログラム方式のQMFによるデジタルフ
ィルタにおいて、乗算器の数を増やすことなく、アッテ
ネート機能を付加することができる。
なストアードプログラム方式のQMFによるデジタルフ
ィルタにおいて、乗算器の数を増やすことなく、アッテ
ネート機能を付加することができる。
【図1】本発明のデジタルフィルタの第1の実施形態を
示すブロック図である。
示すブロック図である。
【図2】第1の実施形態の動作を説明するタイミング図
である。
である。
【図3】本発明のデジタルフィルタの第2の実施形態を
示すブロック図である。
示すブロック図である。
【図4】第2の実施形態の動作を説明するタイミング図
である。
である。
【図5】FIR型デジタルフィルタの構成を示す回路図
である。
である。
【図6】ストアードプログラム方式のQMFの構成を示
すブロック図である。
すブロック図である。
【図7】QMFを用いた分離フィルタの構成図である。
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 加減算器
Claims (4)
- 【請求項1】 時系列入力データ及びこの時系列入力デ
ータに基づいて生成された減衰入力データが、所定のア
ッテネート係数及び上記減衰入力データに対応したフィ
ルタ係数と共に入力され、上記時系列入力データ及び上
記所定のアッテネート係数の組または上記減衰入力デー
タ及び上記フィルタ係数の組の何れか一方の組を選択す
るセレクタと、上記セレクタの選択データの組を互いに
乗算する乗算器と、上記時系列入力データ及び所定のア
ッテネート係数の組に対する上記乗算器の演算結果を記
憶し、上記減衰入力データとして上記セレクタに供給す
るRAMと、上記減衰入力データ及び上記フィルタ係数
の組に対応する上記乗算器の演算結果を順次累加算する
累加算器と、上記累加算器の演算結果を交互に取り込む
第1及び第2のレジスタと、上記第1及び第2のレジス
タから取り出される2つの演算結果を加算または減算す
る加減算器と、を備え、上記加減算器の演算結果を上記
入力時系列データの分離データとなる第1及び第2の出
力時系列データとして出力することを特徴とするデジタ
ルフィルタ。 - 【請求項2】 複数のフィルタ係数を記憶し、上記乗算
器の演算のタイミング毎に1つのフィルタ係数を読み出
して上記乗算器に供給するROMをさらに備えたことを
特徴とする請求項1に記載のデジタルフィルタ。 - 【請求項3】 上記ROMは、上記複数のフィルタ係数
と共に所定のアッテネート係数を記憶することを特徴と
する請求項2に記載のデジタルフィルタ。 - 【請求項4】 上記加減算器の演算結果を第1または第
2の出力時系列データをとして保持する出力レジスタを
さらに備えたことを特徴とする請求項1に記載のデジタ
ルフィルタ。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1739098A JPH11220357A (ja) | 1998-01-29 | 1998-01-29 | デジタルフィルタ |
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 (ja) | 1998-01-29 | 1998-01-29 | デジタルフィルタ |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH11220357A true JPH11220357A (ja) | 1999-08-10 |
Family
ID=11942681
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1739098A Pending JPH11220357A (ja) | 1998-01-29 | 1998-01-29 | デジタルフィルタ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH11220357A (ja) |
Cited By (2)
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 |
-
1998
- 1998-01-29 JP JP1739098A patent/JPH11220357A/ja active Pending
Cited By (2)
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 (ja) | デジタルフィルタ | |
US6405229B1 (en) | Digital filters | |
JPH03150910A (ja) | ディジタルオーディオ信号処理装置 | |
JP3135902B2 (ja) | 自動等化器及び半導体集積回路 | |
US5438532A (en) | Digital filter for use in synthesizing filter or a separation filter | |
JP5065784B2 (ja) | 同相成分抽出方法及び装置 | |
US6531969B2 (en) | Resampling system and apparatus | |
JP3584027B2 (ja) | デジタルフィルタ | |
JPH11220357A (ja) | デジタルフィルタ | |
JPH11220358A (ja) | デジタルフィルタ | |
JP3296772B2 (ja) | デジタルフィルタ | |
JP3349421B2 (ja) | 音声データの圧縮/伸長装置及びデジタルフィルタ | |
JP3177358B2 (ja) | デジタルフィルタ | |
JP3197648B2 (ja) | ディジタルフィルタ | |
JP3485786B2 (ja) | 音声データの圧縮/伸長装置 | |
KR100248266B1 (ko) | 유한충격응답적응디지탈필터의 탭계수갱신장치 | |
JP2733403B2 (ja) | デシメーション用ディジタルフィルタ | |
US8340285B2 (en) | Method for efficient and zero latency filtering in a long impulse response system | |
JPH06216715A (ja) | ディジタルフィルタ | |
JP3172046B2 (ja) | サンプリングレートコンバータ | |
JP3141523B2 (ja) | 有限インパルス応答フィルタ装置 | |
KR100214504B1 (ko) | 적응형 등화기 | |
JPH06181427A (ja) | デジタルフィルタ装置 | |
JP4267293B2 (ja) | フィルタ処理装置 | |
JPH10322164A (ja) | ディジタルフィルタ |