(57)【特許請求の範囲】
【請求項１】
入力データに係数Ａ０を乗算した結果と、前記入力データを１サンプルタイム遅延させて係数Ａ１を乗算した結果と、前記入力データを２サンプルタイム遅延させて係数Ａ２を乗算した結果とを加算して非帰還部の出力を得、
出力データを１サンプルタイム遅延させて係数Ｂ１を乗算した結果と、前記出力データを２サンプルタイム遅延させて係数Ｂ２を乗算した結果とを加算して帰還部の出力を得、
前記非帰還部の出力と前記帰還部の出力を加算して前記出力データとするＩＩＲ型のディジタルフィルタにおいて、
ピーク型共振フィルタを構成するときは、Ａ０(PEAK)，Ａ１(PEAK)，Ａ２(PEAK)，Ｂ１(PEAK)，Ｂ２(PEAK)を、
予め記憶されているサンプリング周波数fs、フィルタの中心周波数fo、利得Ｇ、Ｑ値に基づき、
Ｔｘ＝tan（πfo／fs）
でＴｘ値を得て、
Ｂ１(PEAK)＝｛２（１−Ｔｘ２）／（１＋１/Ｑ・Ｔｘ＋Ｔｘ２）}×0.25
Ｂ２(PEAK)＝−｛(１−１/Ｑ・Ｔｘ＋Ｔｘ２）／（１＋１/Ｑ・Ｔｘ＋Ｔｘ２）}×0.25
Ａ１(PEAK)＝−Ｂ１(PEAK)
Ａ０(PEAK)＝α(PEAK)（0.25＋Ｂ２(PEAK)）＋0.25
Ａ２(PEAK)＝−Ｂ２(PEAK)−Ａ０(PEAK)＋0.25
但し、α(PEAK)＝1/2（１０｜Ｇ｜／２０−１）
で求め、
ディップ型共振フィルタを構成するときは、Ａ０(DIP)，Ａ１(DIP)，Ａ２(DIP)，Ｂ１(DIP)，Ｂ２(DIP)を、
Ｂ１(DIP)＝Ｂ１(PEAK)×β＊
Ｂ２(DIP)＝−Ａ２(PEAK)×β＊
Ａ０(DIP)＝α(DIP)（0.25＋Ｂ２(DIP)）+0.25
Ａ１(DIP)＝−Ｂ１(DIP)
Ａ２(DIP)＝−Ｂ２(DIP)−Ａ０(DIP)＋0.25
但し、α(DIP)＝1/2｛（１／１０｜Ｇ｜／２０）−１｝
β＊＝0.25／Ａ０(PEAK)
で求める演算手段を設けたことを特徴とするディジタルフィルタ。
【請求項２】
入力データに係数Ａ０を乗算した結果と、前記入力データを１サンプルタイム遅延させて係数Ａ１を乗算した結果と、前記入力データを２サンプルタイム遅延させて係数Ａ２を乗算した結果とを加算して非帰還部の出力を得、
出力データを１サンプルタイム遅延させて係数Ｂ１を乗算した結果と、前記出力データを２サンプルタイム遅延させて係数Ｂ２を乗算した結果とを加算して帰還部の出力を得、
前記非帰還部の出力と前記帰還部の出力を加算して前記出力データとするＩＩＲ型のディジタルフィルタにおいて、
ＨＰＦを構成するときは、Ａ０(HPF)，Ａ１(HPF)，Ａ２(HPF)，Ｂ１(HPF)，Ｂ２(HPF)を、
予め記憶されているサンプリング周波数fs、フィルタのロールオフ周波数frに基づき、
Ｔｘ＝tan（πfｒ／fs）
でＴｘ値を得て、
Ａ０(HPF)＝｛１／（１＋√２・Ｔｘ＋Ｔｘ２）｝×0.5
Ａ１(HPF)＝−２・Ａ０(HPF)
Ａ２(HPF)＝Ａ０(HPF)
Ｂ１(HPF)＝２[Ａ０(HPF)−｛Ｔｘ２／（１＋√２・Ｔｘ＋Ｔｘ２）｝×0.5]
Ｂ２(HPF)＝[{√２・Ｔｘ／（１＋√２・Ｔｘ＋Ｔｘ２）｝×0.5]
−[Ａ０(HPF)−｛Ｔｘ２／（１＋√２・Ｔｘ＋Ｔｘ２）｝×0.5]
で求め、
ＬＰＦを構成するときは、Ａ０(LPF)，Ａ１(LPF)，Ａ２(LPF)，Ｂ１(LPF)，Ｂ２(LPF)を、
Ａ０(LPF)＝｛Ｔｘ２／（１＋√２・Ｔｘ＋Ｔｘ２）｝×0.5
Ａ１(LPF)＝２・Ａ０(LPF)
Ａ２(LPF)＝Ａ０(LPF)
Ｂ１(LPF)＝Ｂ１(HPF)
Ｂ２(LPF)＝Ｂ２(HPF)
で求める演算手段を設けたことを特徴とするディジタルフィルタ。
【請求項３】
前記演算手段が、前記複数のフィルタパラメータを記憶する記憶手段と、該記憶手段から前記フィルタパラメータを読み出す読出手段と、該読出手段で読み出したフィルタパラメータを適用して前記帰還部の係数の分母を演算する係数分母演算手段と、該係数分母演算手段で得られ係数分母の値の逆数を演算する逆数演算手段と、該逆数演算手段で得られた値および前記読出手段から読み出したフィルタパラメータに基づいて前記帰還部の係数および前記非帰還部の係数を演算する係数演算手段とを具備することを特徴とする請求項１又は２に記載のディジタルフィルタ。
【請求項４】
前記逆数演算手段が、ニュートン法に基づき乗算と加減算により演算を行う手段であることを特徴とする請求項３に記載のディジタルフィルタ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はＩＩＲ型のディジタルフィルタに係り、特にそのフィルタ係数を演算により得るようにしてメモリ容量を大幅に削減する技術に関するものである。
【０００２】
【従来の技術】
ＩＩＲ型のディジタルフィルタは、例えば２次の例では、図７に示すようなシグナルフローで表される。１〜４は１サンプルタイムの遅延器、５〜９は所定の乗算係数（フィルタ係数）Ａ0,Ａ1,Ａ2,Ｂ1,Ｂ2が設定された乗算器、１０は加算器、１１は４倍器である。遅延器１，２と乗算器５〜７は非帰還部を構成し、遅延器３，４と乗算器８，９は帰還部を構成する。
【０００３】
このディジタルフィルタの差分方程式は、入力信号をＸ(n)、４倍器１１の入力側の出力信号をＹ’(n)とすると、
Ｙ’(n)＝Ａ0・Ｘ(n)＋Ａ1・Ｘ(n-1)＋Ａ2・Ｘ(n-2)
−Ｂ1・Ｙ’(n-1)−Ｂ2・Ｙ’(n-２)            (1)
と表すことができる。なお、最終の出力信号は、Ｙ(n)＝４・Ｙ’(n)である。
【０００４】
このディジタルフィルタをＤＳＰ（ディジタルシグナルプロセッサ）を使用して演算するときは、係数Ａ0,Ａ1,Ａ2,Ｂ1,Ｂ2をそのＤＳＰの係数用メモリに予め記憶しておいて、これを読み出して上記式(1)を演算処理することにより、所望のフィルタ特性（ＬＰＦ，ＨＰＦ，ＢＰＦ，ＢＲＦ、共振ピーク回路、共振ディップ回路等）を実現していた。また、フィルタ特性を変更するときは、係数用メモリの内容を更新することで、実現していた。
【０００５】
【発明が解決しようとする課題】
ところが、上記の方法で所望の１個のフィルタ特性を得るには、係数がＡ0,Ａ1,Ａ2,Ｂ1,Ｂ2の５個であるので、最低５ワードの係数データを記憶する必要がある。
【０００６】
したがって、例えば、共振型フィルタでイコライザ用フィルタを２次ＩＩＲディジタルフィルタにより構成するとき、中心周波数fo、利得Ｇ、Ｑ値（中心周波数foを半値幅周波数で割った値）をパラメータとするときは、必要なワード数は、サンプリング周波数の切替個数をfs(h)、フィルタの切替個数（バンド数＝中心周波数foの切替個数）をf(j)、利得の切替個数をG(k)、Ｑ値の切替個数をQ(m)とすると、
ワード数＝５・fs(h)・f(j)・G(k)・Q(m)              (2)
となり、係数メモリに記憶させなければならないワード数（フィルタ係数の数）が、fs(h)，f(j)，G(k)，Q(m)の増加に伴って４次関数的に増加する。
【０００７】
このため、フィルタ特性を多段に切り替えるイコライザにおいては、切り替えるべきフィルタ特性の数を多くするほど、必要とする係数データが増加するので、係数メモリ容量が対応できなくなる。
【０００８】
本発明の目的は、２以上のフィルタ特性を得る場合に、必要とするメモリ容量を削減し、しかも従来通りのフィルタ特性を得ることができるようにしたディジタルフィルタを提供することである。
【０００９】
【課題を解決するための手段】
上記課題を解決するための第１の発明のディジタルフィルタは、入力データに係数Ａ０を乗算した結果と、前記入力データを１サンプルタイム遅延させて係数Ａ１を乗算した結果と、前記入力データを２サンプルタイム遅延させて係数Ａ２を乗算した結果とを加算して非帰還部の出力を得、出力データを１サンプルタイム遅延させて係数Ｂ１を乗算した結果と、前記出力データを２サンプルタイム遅延させて係数Ｂ２を乗算した結果とを加算して帰還部の出力を得、前記非帰還部の出力と前記帰還部の出力を加算して前記出力データとするＩＩＲ型のディジタルフィルタにおいて、
ピーク型共振フィルタを構成するときは、Ａ０(PEAK)，Ａ１(PEAK)，Ａ２(PEAK)，Ｂ１(PEAK)，Ｂ２(PEAK)を、
予め記憶されているサンプリング周波数fs、フィルタの中心周波数fo、利得Ｇ、Ｑ値に基づき、
Ｔｘ＝tan（πfo／fs）
でＴｘ値を得て、
Ｂ１(PEAK)＝｛２（１−Ｔｘ２）／（１＋１/Ｑ・Ｔｘ＋Ｔｘ２）}×0.25
Ｂ２(PEAK)＝−｛(１−１/Ｑ・Ｔｘ＋Ｔｘ２）／（１＋１/Ｑ・Ｔｘ＋Ｔｘ２）}×0.25
Ａ１(PEAK)＝−Ｂ１(PEAK)
Ａ０(PEAK)＝α(PEAK)（0.25＋Ｂ２(PEAK)）＋0.25
Ａ２(PEAK)＝−Ｂ２(PEAK)−Ａ０(PEAK)＋0.25
但し、α(PEAK)＝1/2（１０｜Ｇ｜／２０−１）
で求め、
ディップ型共振フィルタを構成するときは、Ａ０(DIP)，Ａ１(DIP)，Ａ２(DIP)，Ｂ１(DIP)，Ｂ２(DIP)を、
Ｂ１(DIP)＝Ｂ１(PEAK)×β＊
Ｂ２(DIP)＝−Ａ２(PEAK)×β＊
Ａ０(DIP)＝α(DIP)（0.25＋Ｂ２(DIP)）+0.25
Ａ１(DIP)＝−Ｂ１(DIP)
Ａ２(DIP)＝−Ｂ２(DIP)−Ａ０(DIP)＋0.25
但し、α(DIP)＝1/2｛（１／１０｜Ｇ｜／２０）−１｝
β＊＝0.25／Ａ０(PEAK)
で求める演算手段を設けて構成した。
【００１０】
第２の発明のディタルフィルタは、入力データに係数Ａ０を乗算した結果と、前記入力データを１サンプルタイム遅延させて係数Ａ１を乗算した結果と、前記入力データを２サンプルタイム遅延させて係数Ａ２を乗算した結果とを加算して非帰還部の出力を得、出力データを１サンプルタイム遅延させて係数Ｂ１を乗算した結果と、前記出力データを２サンプルタイム遅延させて係数Ｂ２を乗算した結果とを加算して帰還部の出力を得、前記非帰還部の出力と前記帰還部の出力を加算して前記出力データとするＩＩＲ型のディジタルフィルタにおいて、
ＨＰＦを構成するときは、Ａ０(HPF)，Ａ１(HPF)，Ａ２(HPF)，Ｂ１(HPF)，Ｂ２(HPF)を、
予め記憶されているサンプリング周波数fs、フィルタのロールオフ周波数frに基づき、
Ｔｘ＝tan（πfｒ／fs）
でＴｘ値を得て、
Ａ０(HPF)＝｛１／（１＋√２・Ｔｘ＋Ｔｘ２）｝×0.5
Ａ１(HPF)＝−２・Ａ０(HPF)
Ａ２(HPF)＝Ａ０(HPF)
Ｂ１(HPF)＝２[Ａ０(HPF)−｛Ｔｘ２／（１＋√２・Ｔｘ＋Ｔｘ２）｝×0.5]
Ｂ２(HPF)＝[{√２・Ｔｘ／（１＋√２・Ｔｘ＋Ｔｘ２）｝×0.5]
−[Ａ０(HPF)−｛Ｔｘ２／（１＋√２・Ｔｘ＋Ｔｘ２）｝×0.5]
で求め、
ＬＰＦを構成するときは、Ａ０(LPF)，Ａ１(LPF)，Ａ２(LPF)，Ｂ１(LPF)，Ｂ２(LPF)を、
Ａ０(LPF)＝｛Ｔｘ２／（１＋√２・Ｔｘ＋Ｔｘ２）｝×0.5
Ａ１(LPF)＝２・Ａ０(LPF)
Ａ２(LPF)＝Ａ０(LPF)
Ｂ１(LPF)＝Ｂ１(HPF)
Ｂ２(LPF)＝Ｂ２(HPF)
で求める演算手段を設けて構成した。
【００１１】
第３の発明は、第１又は第２の発明において、前記演算手段が、前記複数のフィルタパラメータを記憶する記憶手段と、該記憶手段から前記フィルタパラメータを読み出す読出手段と、該読出手段で読み出したフィルタパラメータを適用して前記帰還部の係数の分母を演算する係数分母演算手段と、該係数分母演算手段で得られ係数分母の値の逆数を演算する逆数演算手段と、該逆数演算手段で得られた値および前記読出手段から読み出したフィルタパラメータに基づいて前記帰還部の係数および前記非帰還部の係数を演算する係数演算手段とを具備するよう構成した。
【００１２】
第４の発明は、第３の発明において、前記逆数演算手段が、ニュートン法に基づき乗算と加減算により演算を行う手段であるよう構成した。
【００１４】
【発明の実施の形態】
以下、図７に示した２次ＩＩＲ型ディジタルフィルタを使用する場合を例にとり説明する。ここでは、そのフィルタ係数Ａ0,Ａ1,Ａ2,Ｂ1,Ｂ2を、サンプリング周波数fs、中心周波数fo、利得Ｇ、Ｑ値をフィルタパラメータとして使用し演算する。このとき、記憶装置に記憶すべきワード数は、演算のためのプログラム容量をＷoとすると、
ワード数＝Ｗo＋｛fs(h)・f(j)｝＋G(k)＋Q(m)            (3)
と極めて少なくなる。以下、詳しく説明する。
【００１５】
［ピーク型共振フィルタ］
図１は２次のＩＩＲ型ディジタルフィルタを使用してピーク型共振フィルタを実現するときフィルタ係数Ａ0(PEAK),Ａ1(PEAK),Ａ2(PEAK),Ｂ1(PEAK),Ｂ2(PEAK)を得るための演算手段の説明図である。ここでは、その演算を乗算と加減算のみで行い、除算にはニュートンのアルゴリズムを利用する。つまり、除算演算は行わない。よって、除算演算機能のない安価なＤＳＰを利用できる。
【００１６】
２１は記憶装置であり、サンプリング周波数fsと中心周波数foで決まるｊ＋１個のＴ値（Ｔ0、Ｔ1，・・・，Ｔj）、ｋ＋１個の利得Ｇ値（Ｇ０,Ｇ1，・・・，Ｇk）、ｍ＋１個のＱ値（1/Ｑ0，1/Ｑ1，・・・，1/Ｑm）の３種のデータが各々記憶されている。Ｔ値のうちのＴx値は、
Ｔx＝tan（πfo／fs）                                  (4)
で与えられたものが記憶されている。また、Ｑ値は予め逆数の形で記憶されている。
【００１７】
２２は変数パラメータ制御回路（読出手段）であり、ここで記憶回路２１から実現すべきフィルタのパラメータ（Ｔ値、Ｇ値、Ｑ値）を取り出す。２３は係数分母演算回路であり、前記したＴ値とＱ値から後記する式(5)、(6)の分母を演算する。２４は逆数演算回路であり、係数分母演算回路２３で演算して得た値（分母）の逆数をニュートン法のアルゴリズムを利用し乗算と加減算のみで演算して得る。２５は係数演算回路であり、前記の逆数演算回路２４で得られた逆数値と変数パラメータ制御回路２２により記憶装置２１から取り込んだパラメータとにより、ディジタルフィルタの前記した係数Ａ0(PEAK),Ａ1(PEAK),Ａ2(PEAK),Ｂ1(PEAK),Ｂ2(PEAK)を演算する。
【００１８】
さて、ここでは、変数パラメータ制御回路２２によって、記憶装置２１からパラメータＴ2,Ｇ3，1/Ｑ4が選択されるものとする。
【００１９】
まず、ピーク型共振フィルタ用の場合の係数Ｂ1(PEAK)、Ｂ2(PEAK)は、良く知られているように、
Ｂ1(PEAK)＝{２(１−Ｔx2）／（１＋１/Ｑ・Ｔx＋Ｔx2)}
×0.25                                      (5)
Ｂ2(PEAK)＝−｛(１−１/Ｑ・Ｔx＋Ｔx2）／(１＋１/Ｑ・Ｔx＋Ｔx2)}
×0.25                                      (6)
である。
【００２０】
なお、0.25倍するのは、使用するＤＳＰが0.0〜1.0の範囲のデータを扱うので、係数が１以上とならないようにするためである。このように係数を0.25倍しているので、図７に示したように、４倍器１１を使用する。ただし、0.25に限られるものではないが、別の倍率にするときは４倍器１１の倍数も調整する必要がある。
【００２１】
この式(5)、(6)において、１/Ｑ、Ｔxを記憶装置２１から選択的に読み出した1/Ｑ4、Ｔ2とおいたときの分母（１＋１/Ｑ4・Ｔ2＋Ｔ22）の値を係数分母演算回路２３で演算して、
（１＋１/Ｑ4・Ｔ2＋Ｔ22）＝Ｍ                        (7)
を得る。
【００２２】
次に、この係数分母演算回路２３で得られた分母の値Ｍから、逆数演算回路２４を使用して式(5)、(6)中の0.25／Ｍを得る。ここでは、前述したように、この逆数演算を除算ではなく、ニュートン法のアルゴリズムを使用し乗算と加減算のみで演算する。
【００２３】
まず、
β＝0.25／Ｍ                                        (8)
とおいて、この式(8)を発展させて、
ｆ（β）＝１／β−４Ｍ                              (9)
なる双曲線関数を仮定し、この式(9)にニュートン法のアルゴリズムを用いて、ｆ（β）＝０を満たすβの値を求めると、そのβの値が0.25／Ｍである。この値は、
βｎ＝βｎ-１−f(βｎ-１)／[d{f(βｎ-１)}/dβ]
＝２（βｎ-１−２Ｍ・βｎ-２２）                (10)
である。ただし、0.0＜β０＜1.0である。
【００２４】
このニュートン法のアルゴリズムの操作は、図２に示すように、任意のβ値（β１）を設定して、そのβ値での１／βの曲線の点を通る接線Ｐ１がβ値と交わる値を次のβ値（β２）とし、そのβ値での１／βの曲線の点を通る接線Ｐ２がβ値と交わる値を次のβ値（β３）とし、これを繰り返してｆ（β）＝０のときのβ値が求まると、その値を0.25／Ｍとするものである。
【００２５】
ｎの値はこれを大きくするほど、ｆ（β）＝０、つまり式(8)のβ値がより真の値に収束していくが、ｎ＝６程度で充分であり、そのときの演算精度は、２４bit固定少数点ＤＳＰを用いた場合ではその誤差が２-7bit以下（２４bit中の下位７bit以下）になることが実験的に分かっている。
【００２６】
以上により0.25／Ｍが求まったので、これを式(5)、(6)に代入して、ピーク型共振フィルタ用のフィルタ係数Ｂ1(PEAK),Ｂ2(PEAK)を演算する。
【００２７】
次に、以上のようにして得られたフィルタ係数Ｂ1(PEAK),Ｂ2(PEAK)と前記のように記憶装置２１から読み出したＧ3を使用して、ピーク型共振フィルタ用の残りのフィルタ係数Ａ0(PEAK),Ａ1(PEAK),Ａ2(PEAK)を求める。
【００２８】
まず、係数Ａ1(PEAK)は、
Ａ1(PEAK)＝−Ｂ1(PEAK)                               (11)
であるので、式(5)の極性を反転することで求まる。
【００２９】
次に、係数Ａ0(PEAK)は、
Ａ0(PEAK)＝α(PEAK)（0.25＋Ｂ2(PEAK)）＋0.25         (12)
であり、そのα(PEAK)は、
α(PEAK)＝1/2（１０|G|/20−１）                     (13)
であるので、この式(13)にＧ＝Ｇ3を代入してα(PEAK)を求め、続けて式(12)から係数Ａ0(PEAK)を求める。
【００３０】
さらに、係数Ａ2(PEAK)は、
Ａ2(PEAK)＝−Ｂ2(PEAK)−Ａ0(PEAK)＋0.25                (14)
であるので、これまでに求めたＢ2(PEAK)、Ａ0(PEAK)から簡単に求まる。
【００３１】
以上は記憶装置２１からパラメータＴ2,Ｇ3，1/Ｑ4が選択された場合であるが、他のパラメータが選択された場合も同様に演算して、そのパラメータが実現できるフィルタ係数Ａ0(PEAK),Ａ1(PEAK),Ａ2(PEAK),Ｂ1(PEAK),Ｂ2(PEAK)を求めることにより、ピーク型共振フィルタを実現する。
【００３２】
［ディップ型共振フィルタ］
また、以上ではピーク型共振フィルタを実現する場合について説明したが、そのピーク型共振フィルタと利得が反対（負）のディップ型共振フィルタを実現する場合のフィルタ係数Ａ0(DIP),Ａ1(DIP),Ａ2(DIP),Ｂ1(DIP),Ｂ2(DIP)は、前記のようにして得られたピーク型の共振フィルタの係数を利用して下記のように演算する。
【００３３】
Ｂ1(DIP)＝Ｂ1(PEAK)×β*                             (15)
Ｂ2(DIP)＝−Ａ2(PEAK)×β*                           (16)
Ａ0(DIP)＝α(DIP)（0.25＋Ｂ2(DIP））＋0.25            (17)
Ａ1(DIP)＝−Ｂ1(DIP)                                  (18)
Ａ2(DIP)＝−Ｂ2(DIP)−Ａ0(DIP)＋0.25                  (19)
但し、
α(DIP)＝1/2{(１／１０|G|/20）−１｝                  (20)
β*＝0.25／Ａ0(PEAK)                                  (21)
である。
【００３４】
［ＨＰＦ、ＬＰＦ］
以上では、ピーク型共振フィルタ用のフィルタ係数Ａ0(PEAK),Ａ1(PEAK),Ａ2(PEAK),Ｂ1(PEAK),Ｂ2(PEAK)や、ディップ型共振フィルタ用のフィルタ係数Ａ0(DIP),Ａ1(DIP),Ａ2(DIP),Ｂ1(DIP),Ｂ2(DIP)を演算で得る場合について説明したが、ＬＰＦ、ＨＰＦについても同様にそのフィルタ係数を演算で得ることができる。
【００３５】
ＬＰＦ用のフィルタ係数をＡ0(LPF),Ａ2(LPF),Ｂ1(LPF),Ｂ2(LPF)とし、ＨＰＦ用のフィルタ係数をＡ0(HPF),Ａ1(HPF),Ａ2(HPF),Ｂ1(HPF),Ｂ2(HPF)とするとき、ＬＰＦ用フィルタ係数Ａ0(LPF)とＨＰＦ用フィルタ係数Ａ0(HPF)を次の式(22),(23)で求めると、残りのフィルタ係数はこれらをもとにして、式(24)〜(29)より全て求まる。このように、このＬＰＦ、ＨＰＦの係数を演算するときは、共振フィルタの場合と異なって、まず非帰還部の係数Ａ0を計算する。
【００３６】
なお、このＨＰＦ、ＬＰＦにおけるパラメータであるロールオフ周波数frは、前記した共振型フィルタにおける中心周波数foに相当する。よって、前記の式(4)は、
Ｔx＝tan（πfr／fs）                                    (4)’
となる。また、当然ながらここでは利得ＧやＱ値は使用しない。
【００３７】
Ａ0(LPF)＝｛Ｔx2／（１＋√２・Ｔx＋Ｔx2）｝×0.5        (22)
Ａ0(HPF)＝｛１／（１＋√２・Ｔx＋Ｔx2）｝×0.5          (23)
Ａ1(LPF)＝２・Ａ0(LPF)                                  (24)
Ａ2(LPF)＝Ａ0(LPF)                                      (25)
Ａ1(HPF)＝−２・Ａ0(HPF)                                (26)
Ａ2(HPF)＝Ａ0(HPF)                                      (27)
Ｂ1(LPF)＝Ｂ1(HPF)＝２（Ａ0(HPF)−Ａ0(LPF)）            (28)
Ｂ2(LPF)＝Ｂ2(HPF)＝［{√２・Ｔx／(１＋√２・Ｔx＋Ｔx2）}×0.5 ］
−（Ａ0(HPF)＋Ａ0(LPF)）                (29)
【００３８】
【実施例】
図３はfs＝44.1ＫHz、fo＝１ＫHz、Ｇ＝１６、Ｑ値＝2.0の条件で、２４bit固定少数点ＤＳＰを使用して得られた入力信号レベル−２０dBでのピーク型の共振フィルタの周波数特性図であり、(a)は本発明のもの、(b)は従来例のものである。なお、ｎ＝６、入力信号のフルスケールは０dBである。このように入力レベルを２０dB下げたときでも、予め設定したフィルタ係数を使用する従来方法と演算から求めたフィルタ係数を使用する本発明ではほとんど差がない。
【００３９】
また、図４は図３と同様のパラメータで、入力信号レベルを５０dB下げた場合であるが、この場合も(a)の本発明のものと(b)の従来例のものでは差がほとんどない。
【００４０】
さらに、図５はfs＝44.1ＫHz、fo＝１ＫHz、Ｇ＝−１６、Ｑ値＝2.0の条件で、２４bit固定少数点ＤＳＰを使用して得られた入力信号レベル−２０dBでのディップ型の共振フィルタの周波数特性図であり、(a)は本発明のもの、(b)は従来例のものである。このようにディップ型においても、本発明は従来例と差はほとんどない。
【００４１】
以上から、例えば、サンプリング周波数fsを１種のみ、Ｑ値を３種切替え可能なイコライザを構成するために必要なワード数を比較すると、従来方式では前記した式(2)から、
ワード数＝５・fs(h)・f(j)・G(k)・Q(m)
＝５・１・f(j)・G(k)・３
＝１５・f(j)・G(k)                          (30)
となる。
【００４２】
これに対して、本発明では、式(3)から、
ワード数＝Ｗo＋｛fs(h)・f(j)｝＋G(k)＋Q(m)
＝３５０＋｛１・f(j)｝＋G(k)＋３
＝３５３＋f(j)＋G(k)                        (31)
となる。ただし、ここではＷo＝３５０で、図１の変数パラメータ制御回路２２からフィルタ係数演算回路２５までを演算するに要するワード数（プログラム数）であり、１ワードを１６bitとした場合のものである。
【００４３】
図６は上記イコライザを実現するためのワード数（必要メモリ容量）を示す図であり、切り替えるべき中心周波数f(j)の数と切り替えるべき利得の数が増えるほど、式(30)を表す(a)の本発明の方が、式(29)を表す(b)の従来例の方法に比べて、遙かに必要メモり容量が少なくなっていることが分かる。
【００４４】
【発明の効果】
以上から本発明によれば、従来と同等のイコライザを得るためのメモリ容量が遙かに少なくなるという大きな利点がある。
【図面の簡単な説明】
【図１】  本発明の一つの実施形態の共振フィルタのフィルタ係数の演算手段の説明図である。
【図２】  ニュートンのアルゴリズムの説明図である。
【図３】  ピーク型共振フィルタの入力信号−２０dBのときの周波数特性の本発明と従来例の比較図である。
【図４】  ピーク型共振フィルタの入力信号−５０dBのときの周波数特性の本発明と従来例の比較図である。
【図５】  ディップ型共振フィルタの入力信号−２０dBのときの周波数特性の本発明と従来例の比較図である。
【図６】  ワード数（必要メモリ容量）の従来例と本発明の比較図である。
【図７】  ２次のＩＩＲ型ディジタルフィルタのシグナルフロー図である。
【符号の説明】
１〜４：１サンプル遅延器、５〜９：乗算器、１０：加算器、１１：４倍、２１：記憶装置、２２：変数パラメータ制御回路、２３：係数分母演算回路、２４：逆数演算回路、２５：フィルタ係数演算回路。
【図１】
0004240347.tif 000002
【図２】
0004240347.tif 000003
【図３】
0004240347.tif 000004
【図４】
0004240347.tif 000005
【図５】
0004240347.tif 000006
【図６】
0004240347.tif 000007
【図７】
0004240347.tif 000008