(57)【要約】所定の基本的な数値列をフィルタ係数とする基本ユニットフィルタに基づいて、中心周波数Ｆｃが共通の通過域を有するハイパスユニットフィルタＨ１５とローパスユニットフィルタＬ１３とを作成し、これらを縦続接続することによってバンドパスフィルタを設計することにより、数種類のユニットフィルタを組み合わせた特性値どうしの相殺により必要な周波数帯域を抜き出すようにすることなく、ハイパスユニットフィルタＨ１５とローパスユニットフィルタＬ１３との縦続接続だけで、互いに重なった部分をバンドパスフィルタの通過域として取り出すことができるようにする。
2004008637.tif 000002
【特許請求の範囲】
【請求項１】
複数の遅延器から成るタップ付き遅延線における各タップの信号を、所定の基本的な数値列より成るフィルタ係数によりそれぞれ数倍した後、それらの乗算結果を加算して出力するように成された基本ユニットフィルタに基づいて、互いに共通の通過域を有する１以上のユニットフィルタを作成し、上記１以上のユニットフィルタを縦続接続することによってデジタルフィルタの設計を行うようにしたことを特徴とするデジタルフィルタの設計方法。
【請求項２】
上記１以上のユニットフィルタは、略同じ中心周波数を有するハイパスユニットフィルタとローパスユニットフィルタとを含むことを特徴とする請求の範囲第１項に記載のデジタルフィルタの設計方法。
【請求項３】
上記各タップの間に数クロック分のディレイを挿入することにより、上記ユニットフィルタの通過域のバンド幅を狭くするようにしたことを特徴とする請求の範囲第１項に記載のデジタルフィルタの設計方法。
【請求項４】
上記ユニットフィルタをＹＦで表した場合、
ａ＊ＹＦｉ−ｂ＊ＹＦｊ
ただし、ＹＦに対する乗算は上記ユニットフィルタの縦続接続を表し、ａ，ｂ，ｉ，ｊは上記ユニットフィルタの縦続接続数を表す係数であり、ａ＞ｂ、ｉ＜ｊ
の関係が成り立つように上記ユニットフィルタを縦続接続することにより、上記ユニットフィルタの通過域のバンド幅を広くするようにしたことを特徴とする請求の範囲第１項に記載のデジタルフィルタの設計方法。
【請求項５】
比較的広い通過域を有するユニットフィルタの当該通過域の中で、それぞれの通過域が互いに重複するようにハイパスフィルタとローパスフィルタとを設計し、上記ユニットフィルタ、上記ハイパスフィルタおよび上記ローパスフィルタを縦続接続することにより、それぞれの通過域の重なった部分が通過域となるバンドパスフィルタを設計するようにしたことを特徴とする請求の範囲第１項に記載のデジタルフィルタの設計方法。
【請求項６】
複数の遅延器から成るタップ付き遅延線における各タップの信号を、所定の基本的な数値列より成るフィルタ係数によりそれぞれ数倍した後、それらの乗算結果を加算して出力するように成された基本ユニットフィルタに基づいて、比較的広い通過域を有するユニットフィルタを作成し、
上記ユニットフィルタの通過域の中で、それぞれの通過域が互いに重複するようにハイパスフィルタとローパスフィルタとを設計し、上記ユニットフィルタ、上記ハイパスフィルタおよび上記ローパスフィルタを縦続接続することにより、それぞれの通過域の重なった部分が通過域となるバンドパスフィルタを設計するようにしたことを特徴とするデジタルフィルタの設計方法。
【請求項７】
上記ハイパスフィルタおよび上記ローパスフィルタの何れか一方または双方に対して、上記各タップの間に数クロック分のディレイを挿入することによって上記ユニットフィルタの通過域のバンド幅を狭くする処理および、ａ＊ＹＦｉ−ｂ＊ＹＦｊ（ただし、上記ユニットフィルタＹＦに対する乗算は上記ユニットフィルタの縦続接続を表し、ａ，ｂ，ｉ，ｊは上記ユニットフィルタの縦続接続数を表す係数であり、ａ＞ｂ、ｉ＜ｊ）の関係が成り立つように上記ユニットフィルタを縦続接続することによって上記ユニットフィルタの通過域のバンド幅を広くする処理の何れか一方または双方の操作を行うことにより、上記バンドパスフィルタの通過域を微調整するようにしたことを特徴とする請求の範囲第５項に記載のデジタルフィルタの設計方法。
【請求項８】
上記ハイパスフィルタおよび上記ローパスフィルタの何れか一方または双方に対して、上記各タップの間に数クロック分のディレイを挿入することによって上記ユニットフィルタの通過域のバンド幅を狭くする処理および、ａ＊ＹＦｉ−ｂ＊ＹＦｊ（ただし、上記ユニットフィルタＹＦに対する乗算は上記ユニットフィルタの縦続接続を表し、ａ，ｂ，ｉ，ｊは上記ユニットフィルタの縦続接続数を表す係数であり、ａ＞ｂ、ｉ＜ｊ）の関係が成り立つように上記ユニットフィルタを縦続接続することによって上記ユニットフィルタの通過域のバンド幅を広くする処理の何れか一方または双方の操作を行うことにより、上記バンドパスフィルタの通過域を微調整するようにしたことを特徴とする請求の範囲第６項に記載のデジタルフィルタの設計方法。
【請求項９】
上記基本ユニットフィルタのフィルタ係数は、絶対値が１，１，８，８，１，１の比率の数値列もしくは１，０，９，１６，９，０，１の比率の数値列から成ることを特徴とする請求の範囲第１項に記載のデジタルフィルタの設計方法。
【請求項１０】
上記基本ユニットフィルタのフィルタ係数は、絶対値が１，１，８，８，１，１の比率の数値列もしくは１，０，９，１６，９，０，１の比率の数値列から成ることを特徴とする請求の範囲第１項に記載のデジタルフィルタの設計方法。
【請求項１１】
請求の範囲第１項に記載されたデジタルフィルタの設計方法に関する処理手順をコンピュータに実行させるためのデジタルフィルタ設計用プログラム。
【請求項１２】
請求の範囲第６項に記載されたデジタルフィルタの設計方法に関する処理手順をコンピュータに実行させるためのデジタルフィルタ設計用プログラム。
【請求項１３】
請求の範囲第１項に記載されたデジタルフィルタの設計方法を用いて設計されたことを特徴とするデジタルフィルタ。
【請求項１４】
請求の範囲第６項に記載されたデジタルフィルタの設計方法を用いて設計されたことを特徴とするデジタルフィルタ。
【請求項１５】
複数の遅延器から成るタップ付き遅延線を備え、各タップの信号を、請求の範囲第１項に記載のフィルタ設計法により求められたフィルタ係数によりそれぞれ数倍した後、加算して出力することを特徴とするデジタルフィルタ。
【請求項１６】
複数の遅延器から成るタップ付き遅延線を備え、各タップの信号を、請求の範囲第６項に記載のフィルタ設計法により求められたフィルタ係数によりそれぞれ数倍した後、加算して出力することを特徴とするデジタルフィルタ。
【請求項１７】
所定の基本的な数値列をフィルタ係数とする基本ユニットフィルタに基づいて作成された、互いに共通の通過域を有する１以上のユニットフィルタを縦続接続することによって構成されているデジタルフィルタ。
【請求項１８】
所定の基本的な数値列をフィルタ係数とする基本ユニットフィルタに基づいて作成された比較的広い通過域を有するユニットフィルタと、上記ユニットフィルタの通過域の中でそれぞれの通過域が互いに重複するように作成されたハイパスフィルタおよびローパスフィルタとを縦続接続することによって構成されているデジタルフィルタ。
【請求項１９】
請求の範囲第１項に記載の設計方法を用いて生成したフィルタ列を１つ以上のブロックに分割し、ブロック毎の最終生成係数である１つ以上のフィルタを縦続接続することによってデジタルフィルタの設計を行うようにしたことを特徴とするデジタルフィルタの設計方法。
【請求項２０】
請求の範囲第６項に記載の設計方法を用いて生成したフィルタ列を１つ以上のブロックに分割し、ブロック毎の最終生成係数である１つ以上のフィルタを縦続接続することによってデジタルフィルタの設計を行うようにしたことを特徴とするデジタルフィルタの設計方法。
【請求項２１】
請求の範囲第１項に記載の設計方法を用いて生成したフィルタ列を１つ以上のブロックに分割し、ブロック毎の最終生成係数である１つ以上のフィルタの縦続接続より成るデジタルフィルタ。
【請求項２２】
請求の範囲第６項に記載の設計方法を用いて生成したフィルタ列を１つ以上のブロックに分割し、ブロック毎の最終生成係数である１つ以上のフィルタの縦続接続より成るデジタルフィルタ。
【発明の詳細な説明】
【技術分野】  本発明は、デジタルフィルタの設計方法、デジタルフィルタ設計用プログラム、デジタルフィルタに関し、特に、複数の遅延器から成るタップ付き遅延線を備え、各タップの信号をそれぞれ数倍した後、加算して出力するＦＩＲフィルタの設計法に関するものである。
【背景技術】  通信、計測、音声・画像信号処理、医療、地震学などの様々な分野で提供されている種々の電子機器においては、その内部で何らかのデジタル信号処理を行っているのが通常である。デジタル信号処理の最も重要な基本操作に、各種の信号や雑音が混在している入力信号の中から、必要なある周波数帯域の信号のみを取り出すフィルタリング処理がある。このために、デジタル信号処理を行う電子機器では、デジタルフィルタが用いられることが多い。
デジタルフィルタとしては、ＩＩＲ（Ｉｎｆｉｎｉｔｅ  Ｉｍｐｕｌｓｅ  Ｒｅｓｐｏｎｓｅ：無限長インパルス応答）フィルタやＦＩＲ（Ｆｉｎｉｔｅ  Ｉｍｐｕｌｓｅ  Ｒｅｓｐｏｎｓｅ：有限長インパルス応答）フィルタが多く用いられる。このうちＦＩＲフィルタは、複数の遅延器から成るタップ付き遅延線を備え、各タップの信号をそれぞれ数倍した後、加算して出力するタイプのフィルタであり、次のような利点を持つ。第１に、ＦＩＲフィルタの伝達関数の極はｚ平面の原点のみにあるため、回路は常に安定である。第２に、完全に正確な直線位相特性を実現することができる。
フィルタを通過域と阻止域との配置から分類すると、主にローパスフィルタ、ハイパスフィルタ、帯域通過フィルタ、帯域消去フィルタの４つに分けられる。ＩＩＲフィルタやＦＩＲフィルタで基本となるのはローパスフィルタであり、その他のハイパスフィルタ、帯域通過フィルタ、帯域消去フィルタは、ローパスフィルタから周波数変換等の処理を行うことによって導かれる。
従来、基本となるローパスフィルタを設計する際には、サンプリング周波数とカットオフ周波数との比率をもとに、窓関数やチェビシェフ近似法などを用いた畳み込み演算等を行うことにより、ＦＩＲフィルタの各タップに対する係数を求める。そして、その求めたフィルタ係数を用いてシミュレーションを行うことにより周波数特性を確認しながら、係数値を適宜修正し、所要特性のローパスフィルタを得ていた。
また、ハイパスフィルタ、帯域通過フィルタ、帯域消去フィルタ等の他のフィルタを設計する際には、まず上述のような手順で基本となるローパスフィルタを複数設計する。そして、それらを組み合わせて周波数変換等の操作を行うことにより、所望の周波数特性を有するＦＩＲフィルタを設計していた。
しかしながら、上記従来のフィルタ設計法では、熟練した技術者が時間と手間をかけて設計する必要があり、所望特性のＦＩＲフィルタを容易には設計できないという問題があった。
また、仮に所望特性に近いＦＩＲフィルタを設計できたとしても、設計されたフィルタのタップ数は膨大となり、しかもその係数値は非常に複雑でランダムな値となる。そのため、そのタップ数および係数値を実現するためには大規模な回路構成（加算器、乗算器）が必要になるという問題もあった。また、設計されたＦＩＲフィルタを実際に使用する際に、その演算量が非常に多くなり、処理負荷が重くなるという問題もあった。
そこで本出願人は、このような問題点に鑑みて、所望の周波数特性を有するＦＩＲデジタルフィルタを簡易的に設計でき、かつ、希望する周波数特性を小さな回路規模で高精度に実現することが可能なフィルタ設計法を考案し、特許出願した（特願２００１−４００６７３）。
本発明は、この既出願の内容を更に改良するものであり、所望の周波数特性をより高精度に実現でき、かつ、そのような周波数特性を持つＦＩＲデジタルフィルタをより簡易的に設計できるようにすることを目的とする。
【発明の開示】
上記課題を解決するために、本発明においては、複数の遅延器から成るタップ付き遅延線における各タップの信号を、所定の基本的な数値列より成るフィルタ係数によりそれぞれ数倍した後、それらの乗算結果を加算して出力するように成された基本ユニットフィルタに基づいて、互いに共通の通過域を有する１以上のユニットフィルタを作成し、上記１以上のユニットフィルタを縦続接続することによってデジタルフィルタの設計を行う。
上記基本ユニットフィルタのフィルタ係数は、例えば、絶対値が１，１，８，８，１，１の比率の数値列もしくは１，０，９，１６，９，０，１の比率の数値列から成るものである。
また、上記１以上のユニットフィルタは、例えば、略同じ中心周波数を有するハイパスユニットフィルタとローパスユニットフィルタとを含む。
本発明の他の態様では、上記各タップの間に数クロック分のディレイを挿入することにより、上記ユニットフィルタの通過域のバンド幅を狭くする。
本発明の他の態様では、上記ユニットフィルタをＹＦで表した場合、
ａ＊ＹＦｉ−ｂ＊ＹＦｊ
ただし、ＹＦに対する乗算は上記ユニットフィルタの縦続接続を表し、ａ，ｂ，ｉ，ｊは上記ユニットフィルタの縦続接続数を表す係数であり、ａ＞ｂ、ｉ＜ｊの関係が成り立つように上記ユニットフィルタを縦続接続することにより、上記ユニットフィルタの通過域のバンド幅を広くする。
本発明の他の態様では、複数の遅延器から成るタップ付き遅延線における各タップの信号を、所定の基本的な数値列より成るフィルタ係数によりそれぞれ数倍した後、それらの乗算結果を加算して出力するように成された基本ユニットフィルタに基づいて、比較的広い通過域を有するユニットフィルタを作成し、上記ユニットフィルタの通過域の中で、それぞれの通過域が互いに重複するようにハイパスフィルタとローパスフィルタとを設計し、上記ユニットフィルタ、上記ハイパスフィルタおよび上記ローパスフィルタを縦続接続することにより、それぞれの通過域の重なった部分が通過域となるバンドパスフィルタを設計する。
本発明の他の態様では、上記ハイパスフィルタおよび上記ローパスフィルタの何れか一方または双方に対して、請求の範囲第３項および請求の範囲第４項の何れか一方または双方の操作を行うことにより、上記バンドパスフィルタの通過域を微調整する。
本発明の他の態様では、上述の設計方法を用いて生成したフィルタ列を１つ以上のブロックに分割し、ブロック毎の最終生成係数である１つ以上のフィルタを縦続接続することによってデジタルフィルタの設計を行う。
上記のように本発明では、所定の基本的な数値列をフィルタ係数とする基本ユニットフィルタから作成された１以上のユニットフィルタを縦続接続することによってデジタルフィルタを設計するようにした。または、比較的広い通過域を有するユニットフィルタの当該通過域の中で、それぞれの通過域が互いに重複するようにハイパスフィルタとローパスフィルタとを設計し、上記ユニットフィルタ、ハイパスフィルタおよびローパスフィルタを縦続接続することによってデジタルフィルタを設計するようにしたので、殆どユニットフィルタの組み合わせだけでデジタルフィルタの複雑なフィルタ係数を得ることができ、熟練した技術者でなくてもフィルタ設計を極めて簡単に行うことができる。
また、本発明によれば、設計されるデジタルフィルタに必要なタップ数は非常にわずかで済み、かつ、各タップ出力に対して必要なフィルタ係数の種類も非常に少なくて済むので、デジタルフィルタの構成を極めて簡単にすることができる。したがって、回路素子数（特に乗算器）を大幅に削減して回路規模を小さくすることができるとともに、消費電力の低減、演算負荷の軽減等を図ることができる。また、設計されるデジタルフィルタは、ユニットフィルタという同一パターンの繰り返しから成る極めて単純な構成であるので、集積化に際して工数を短縮することができ、ＩＣ化を容易にすることもできる。
また、本発明の他の特徴によれば、各タップ間に挿入するディレイの数（フィルタ係数間に挿入する“０”の数）がより多いユニットフィルタを縦続接続してデジタルフィルタを設計することにより、フィルタの縦続段数やタップ数を増やすことなく、バンド幅を任意に狭めることができる。
また、本発明の他の特徴によれば、
ａ＊ＹＦｉ−ｂ＊ＹＦｊ（ａ，ｂ，ｉ，ｊは係数。ａ＞ｂ、ｉ＜ｊ）
の関係を満たすようにユニットフィルタを縦続接続するだけで、バンド幅を任意に広げることができる。
また、本発明の他の特徴によれば、比較的広い通過域を有するユニットフィルタの当該通過域の中で、それぞれの通過域が互いに重複するようにハイパスフィルタとローパスフィルタとを設計し、当該ハイパスフィルタおよびローパスフィルタの何れか一方または双方に対して上述のバンド幅を狭める操作またはバンド幅を広げる操作を行うようにしたので、バンド幅を簡単に微調整することができる。
【図面の簡単な説明】  図１は、本実施形態のフィルタ設計法で最も基本となる４種類の基本ユニットフィルタＦ０〜Ｆ３の回路構成およびフィルタ係数の数値列を示す図である。
図２は、ローパスユニットフィルタＬ１０の生成アルゴリズムおよび回路構成を示す図である。
図３は、ローパスユニットフィルタＬ１１の生成アルゴリズムおよび回路構成を示す図である。
図４は、ローパスユニットフィルタＬ１０，Ｌ１１の周波数−ゲイン特性を示す図である。
図５は、ローパスユニットフィルタ（Ｌ１０）ｍの周波数−ゲイン特性を示す図である。
図６は、ハイパスユニットフィルタＨ１０の生成アルゴリズムおよび回路構成を示す図である。
図７は、ハイパスユニットフィルタＨ１０，Ｈ１１の周波数−ゲイン特性を示す図である。
図８は、ハイパスユニットフィルタ（Ｈ１０）ｍの周波数−ゲイン特性を示す図である。
図９は、本実施形態によるバンドパスフィルタの設計法を模式的に示す図である。
図１０は、本実施形態によるバンドパスフィルタの具体的な設計例を示す図である。
図１１は、本実施形態によるバンドパスフィルタの具体的な設計例を示す図である。
図１２は、本実施形態によるバンドパスフィルタの回路構成例を示す図である。
図１３は、図１２に示したバンドパスフィルタの周波数−ゲイン特性を示す図である。
図１４は、バンド幅を狭める手段を模式的に示す図である。
図１５は、バンド幅を広げる手段を模式的に示す図である。
図１６は、ハイパスユニットフィルタＨ１８のバンド幅を調整した結果の周波数−ゲイン特性の例を示す図である。
図１７は、バンド幅を微調整する手段を模式的に示す図である。
【発明を実施するための最良の形態】  まず、本発明の実施形態を説明する前に、本出願人が既に出願した特願２００１−４００６７３（以下、既出願と言う）の概要を以下に説明する。この既出願は、以下に説明する４種類の基本ユニットフィルタＦ０，Ｆ１，Ｆ２，Ｆ３を用いて４種類のユニットフィルタＬ１ｎ，Ｌ２ｎ，Ｈ１ｎ，Ｈ２ｎを作り、これらの組み合わせだけで所望の周波数特性を有するＦＩＲフィルタを設計できるようにしたものである。
図１は、上記４種類の基本ユニットフィルタＦ０〜Ｆ３を示す図であり、（ａ）は回路構成を示し、（ｂ）はフィルタ係数の数値列を示している。図１（ａ）に示すように、基本ユニットフィルタＦ０〜Ｆ３では、縦続接続された５個のＤ型フリップフロップ１−１〜１−５によって入力信号を１クロックＣＫずつ順次遅延させる。そして、各Ｄ型フリップフロップ１−１〜１−５の入出力タップから取り出した信号に対し、フィルタ係数を１６倍した結果の整数値ｈ１〜ｈ６を６個の係数器２−１〜２−６でそれぞれ乗算し、それらの乗算結果をすべて５個の加算器３−１〜３−５で加算する。さらに、最終段の加算器３−５の出力段に設けられた乗算器４において、加算出力を１／１６倍することにより、振幅を元に戻して出力する。
４種類の基本ユニットフィルタＦ０〜Ｆ３は、何れも回路構成は図１（ａ）のようになっており、フィルタ係数（係数器２−１〜２−６の乗数値ｈ１〜ｈ６）のみが図１（ｂ）のように異なっている。図１（ｂ）から分かるように、基本ユニットフィルタＦ０〜Ｆ３のフィルタ係数は、その絶対値として“１”または“８”のみを用いた極めて単純な数値列から成り、正または負の符号を加えてその配列を異ならせたものである。ただし、どの基本ユニットフィルタＦ０〜Ｆ３の係数も、中央付近のタップに対する乗数値ｈ３，ｈ４は絶対値が“８”、その両側のタップに対する乗数値ｈ１，ｈ２，ｈ５，ｈ６は絶対値が“１”となっている。
ユニットフィルタＬ１ｎ，Ｌ２ｎ，Ｈ１ｎ，Ｈ２ｎは、これらの基本ユニットフィルタＦ０〜Ｆ３を用いて生成する。なお、ユニットフィルタを表す符号の後ろに付けた“ｎ”の文字は、各タップ間に挿入するディレイのクロック数、すなわち、各フィルタ係数の間に挿入する“０”の数を示している（詳しくは後述する）。
図２は、ローパスユニットフィルタＬ１０を示す図であり、（ａ）は当該ローパスユニットフィルタＬ１０の生成法を示し、（ｂ）は回路構成を示している。図２（ａ）に示すように、ローパスユニットフィルタＬ１０は、基本ユニットフィルタＦ０のフィルタ係数に対して１回の移動平均演算を行うことによって生成する。
回路構成では、図２（ｂ）に示すように、基本ユニットフィルタ（Ｆ０）１１の後段に接続されたＤ型フリップフロップ１２によって、基本ユニットフィルタ１１の出力信号を１クロックＣＫだけ遅延させる。そして、Ｄ型フリップフロップ１２によって遅延を受ける前後の信号を加算器１３で加算し、その加算出力を乗算器１４で１／２倍することにより、振幅を元に戻して出力する。
図３は、ローパスユニットフィルタＬ１１を示す図であり、（ａ）は当該ローパスユニットフィルタＬ１１の生成法を示し、（ｂ）は回路構成を示している。ローパスユニットフィルタＬ１１のフィルタ係数は、上記ローパスユニットフィルタＬ１０の各フィルタ係数の間に“０”を１つずつ挿入することによって生成する。すなわち、ローパスユニットフィルタＬ１１のフィルタ係数は、図３（ａ）に示すように、基本ユニットフィルタＦ０１のフィルタ係数に対して１回の移動平均演算を行うことによって生成する。
ローパスユニットフィルタＬ１１の回路構成では、図３（ｂ）に示すように、基本ユニットフィルタ（Ｆ０１）２１の後段に縦続接続された２つのＤ型フリップフロップ２２−１，２２−２によって、基本ユニットフィルタ２１の出力信号を１クロックＣＫずつ順次遅延させる。そして、２つのＤ型フリップフロップ２２−１，２２−２によって遅延を受ける前後の信号を加算器２３で加算し、その加算出力を乗算器２４で１／２倍することにより、振幅を元に戻して出力する。
同様に、ローパスユニットフィルタＬ１ｎ（ｎ＝２，３，・・・）のフィルタ係数は、ローパスユニットフィルタＬ１０の各フィルタ係数の間に“０”をｎ個ずつ挿入することによって生成する。
図４は、ローパスユニットフィルタＬ１０，Ｌ１１の周波数−ゲイン特性を示す図である。ここではゲインおよび周波数を“１”で基準化している。この図４から分かるように、フィルタ係数間に挿入する“０”の数をｎとすると、その周波数−ゲイン特性の周波数軸（周波数方向に対する周期）は１／ｎとなる。
次に、ユニットフィルタの縦続接続について説明する。ローパスユニットフィルタを縦続接続することにより、各ユニットフィルタの係数どうしが乗算・加算されて新しいフィルタ係数が作り出される。以下では、例えばローパスユニットフィルタＬ１０の縦続数をｍとするとき、これを（Ｌ１０）ｍと記述することにする。
図５は、ローパスユニットフィルタＬ１０，（Ｌ１０）２，（Ｌ１０）４，（Ｌ１０）８周波数−ゲイン特性を示す図である。この図５でもゲインおよび周波数を“１”で基準化している。ローパスユニットフィルタＬ１０が１個のみの場合、振幅が０．５となる位置のクロックは０．２５である。これに対して縦続数ｍが多くなると、フィルタの通過帯域幅が狭くなる。例えばｍ＝８の場合、振幅が０．５となる位置のクロックは０．１２５となる。
図６は、ハイパスユニットフィルタＨ１０を示す図であり、（ａ）は当該ハイパスユニットフィルタＨ１０の生成法を示し、（ｂ）は回路構成を示している。ハイパスユニットフィルタＨ１０のフィルタ係数は、図６（ａ）に示すように、基本ユニットフィルタＦ２，Ｆ３のフィルタ係数を用いて１回の移動平均演算を行うことによって生成する。
回路構成では、図６（ｂ）に示すように、入力信号が２つの基本ユニットフィルタ（Ｆ２）４１，（Ｆ３）４２を通り、一方の基本ユニットフィルタ４２の出力信号はその後段に接続されたＤ型フリップフロップ４３によって１クロックＣＫだけ遅延される。そして、基本ユニットフィルタ４１の出力信号と、Ｄ型フリップフロップ４３によって１クロック遅れた基本ユニットフィルタ４２の出力信号とを加算器４４で加算し、その加算出力を乗算器４５で１／２倍することにより、振幅を元に戻して出力する。
上述したローパスユニットフィルタＬ１ｎの場合と同様に、ハイパスユニットフィルタＨ１ｎ（ｎ≧１）のフィルタ係数は、ハイパスユニットフィルタＨ１０の各フィルタ係数の間に“０”をｎ個ずつ挿入することによって生成する。また、ｍ個のハイパスユニットフィルタＨ１ｎを縦続接続することによって、新しいフィルタ係数を作ることが可能である。ハイパスユニットフィルタ（Ｈ１ｎ）ｍの周波数−ゲイン特性は、縦続数ｍが多くなるほど通過帯域幅が狭くなり、高周波域においても極めて深くストレートに落ち込む特性が得られる。
図７は、ハイパスユニットフィルタＨ１０，Ｈ１１の周波数−ゲイン特性を示す図である。この図７でもゲインおよび周波数を“１”で基準化している。この図７から分かるように、ハイパスユニットフィルタＨ１ｎの場合も、フィルタ係数間にｎ個の“０”を挿入すると、その周波数−ゲイン特性の周波数軸（周波数方向に対する周期）は１／ｎとなる。
また、図８は、ハイパスユニットフィルタＨ１０，（Ｈ１０）２，（Ｈ１０）４，（Ｈ１０）８の周波数−ゲイン特性を示す図である。この図８でもゲインおよび周波数を“１”で基準化している。ハイパスユニットフィルタＨ１０が１個のみの場合、振幅が０．５となる位置のクロックは０．２５である。これに対して縦続数ｍが多くなると、フィルタの通過帯域幅が狭くなる。例えばｍ＝８の場合、振幅が０．５となる位置のクロックは０．３７５となる。
以上が既出願の基本的な内容である。以下に、本実施形態によるフィルタ設計法について説明する。ここでは、上述したローパスユニットフィルタＬ１ｎとハイパスユニットフィルタＨ１ｎとを組み合わせることによって、所望の周波数帯域を通過域とするバンドパスフィルタを設計する例について説明する。
バンドパスフィルタの中心周波数Ｆｃまたは信号のサンプリング周波数Ｆｓの何れかを自由に決定できるときは、周波数抜き取りの条件を最適化することにより、フィルタの構成をより簡素化することができる。今、バンドパスフィルタの中心周波数Ｆｃと信号のサンプリング周波数Ｆｓとの関係が、
Ｆｓ＝Ｆｃ＊（４＋２ｋ）  （ｋ＝０，１，２，・・・）
であるとする。
この場合において、Ｆｃ＝４５０ＫＨｚのとき、Ｆｓ＝１．８ＭＨｚ，２．７ＭＨｚ，３．６ＭＨｚ，・・・である。このような設定の場合には、ハイパスユニットフィルタＨ１（５＋３ｋ）とローパスユニットフィルタＬ１（３＋２ｋ）とを縦続接続するだけで、バンドパスフィルタを設計することができる。これらのハイパスユニットフィルタＨ１（５＋３ｋ）、ローパスユニットフィルタＬ１（３＋２ｋ）は共に、中心周波数Ｆｃが４５０ＫＨｚとなる通過域を有している。
例えば、ｋ＝０（Ｆｓ＝４Ｆｃ）の場合、ハイパスユニットフィルタＨ１５とローパスユニットフィルタＬ１３との縦続接続によりバンドパスフィルタを設計することができる。また、ｋ＝１（Ｆｓ＝６Ｆｃ）の場合、ハイパスユニットフィルタＨ１８とローパスユニットフィルタＬ１５との縦続接続によりバンドパスフィルタを設計することができる。
図９は、上述したバンドパスフィルタの設計法を模式的に示す図であり、（ａ）はｋ＝０の場合、（ｂ）はｋ＝１の場合を示している。例えば図９（ａ）において、ハイパスユニットフィルタＨ１５とローパスユニットフィルタＬ１３とを縦続接続すると、それぞれの通過域▲１▼，▲２▼で互いに重なった部分のみを通過域▲３▼として取り出すことができる。
図９（ｂ）においても同様に、ハイパスユニットフィルタＨ１８とローパスユニットフィルタＬ１５とを縦続接続すると、それぞれの通過域▲１▼，▲２▼で互いに重なった部分のみを通過域▲３▼として取り出すことができる。ｋ＞０の場合は、求めるバンドパスフィルタの中心周波数Ｆｃ以外にも通過域が生じるので、これをローパスフィルタ（ＬＰＦ１）▲４▼によって抜き取る。
バンドパスフィルタのバンド幅は、ハイパスユニットフィルタ（Ｈ１ｎ）ｍあるいはローパスユニットフィルタ（Ｌ１ｎ）ｍの縦続接続の段数（ｍの数）によって調整することが可能である。図９（ｂ）に示す例では、ハイパスユニットフィルタＨ１８およびローパスユニットフィルタＬ１５の双方ともｍ＝１としているが、これらを何れもｍ＝８とした場合の周波数特性を、図１０および図１１に示す。
図１０は、ハイパスユニットフィルタ（Ｈ１８）８およびローパスユニットフィルタ（Ｌ１５）８の周波数特性を重ねて示したものであり、これらのフィルタを縦続接続することにより、互いに重なった部分のみを取り出すことができる。また、図１１は、ＬＰＦ１あるいはＬＰＦ２による通過域の抜き取りを示したものであり、図１０のように取り出した３つのバンドパスに対してＬＰＦ１あるいはＬＰＦ２をかけることにより、両端の通過域のみを取り出すことができる。
次に、実際の回路例を示す。目標規格は、中心周波数Ｆｃ＝４５０ＫＨｚ、−３ｄＢバンド幅＝１００ＫＨｚ、−８０ｄＢバンド幅＝２００ＫＨｚとする。図１２は、この目標規格を実現するバンドパスフィルタの回路例を示す図である。
バンドパスの減衰量は、縦続接続するフィルタの個数に依存する。図１２に示す回路では、８０ｄＢ以上の減衰量を確保するために、８個のハイパスユニットフィルタＨ１８と８個のローパスユニットフィルタＬ１５との後段に、４個のローパスユニットフィルタＬ１１１を更に縦続接続している。これより後に接続されているローパスユニットフィルタ（Ｌ１０）２、Ｌ１１、Ｌ１２、Ｄ型フリップフロップＤ９，Ｄ６および数個の乗加算器は、ＬＰＦ１を構成する。なお、Ｄ９，Ｄ６は各々９クロック、６クロックのディレイを意味する。
この図１２から分かるように、本実施形態のフィルタ設計法によれば、ほぼ同じユニットフィルタの繰り返しから成る極めて単純な構成で所望特性のバンドパスフィルタを得ることができる。また、各ユニットフィルタの内部構成は上述した通りであり、全体として必要なタップ数は１４４タップで、非常にわずかである。さらに、各タップ出力に対して必要なフィルタ係数は−１／１６，１／１６，−８／１６，８／１６の４種類のみであり、特に−８／１６＝−１／２，８／１６＝１／２であるから、演算回路を格段に簡素化することができる。
図１３は、図１２のように構成したバンドパスフィルタの周波数−ゲイン特性を示す図であり、（ａ）は全体の周波数特性を示し、ゲインを対数目盛りで表している。また、（ｂ）および（ｃ）は通過域の部分を拡大して示す図であり、（ｂ）はゲインを対数目盛りで表し、（ｃ）はゲインを直線目盛りで表している。
図１３（ａ）から分かるように、図１２のように構成したバンドパスフィルタは、８０ｄＢ以上の減衰量を実現できている。しかし、−３ｄＢのバンド幅は約６３ＫＨｚ、−８０ｄＢのバンド幅は約１４５ＫＨｚであり、要求仕様を満たしていない。図１２の回路ではｋ＝１（Ｆｓ＝６Ｆｃ）としているが、より大きなバンド幅を必要とするときは、ｋ≧２にしてサンプリング周波数Ｆｓを大きくすれば良い。
次に、バンド幅を狭く調整するための手段について説明する。図５および図８を用いて上述したように、バンド幅を狭くするためにはフィルタの縦続段数を増やせば良いが、これには限界がある。ここでは、より効率的にバンド幅を狭くできる方法について説明する。図１４は、その方法を模式的に示す図である。
図１４（ａ）は図９（ｂ）と同じものである。これより狭いバンド幅を得たい場合は、図１４（ｂ）に示すように、ハイパスユニットフィルタＨ１８の代わりにハイパスユニットフィルタＨ１１４を用いる。ハイパスユニットフィルタＨ１１４は、ハイパスユニットフィルタＨ１８と同様に中心周波数Ｆｃが４５０ＫＨｚとなる通過域を有しており、しかも、バンド幅がハイパスユニットフィルタＨ１８の９／１５＝３／５となっている。
したがって、このハイパスユニットフィルタＨ１１４を用いることにより、フィルタの縦続段数を増やすことなく、バンド幅を効率的に狭めることができる。また、ハイパスユニットフィルタＨ１１４は、各フィルタ係数の間に挿入する“０”の数を増やしただけなので、係数として実際に取り出すタップ数は全く増えず、回路規模が大きくなることもない。なお、ここではハイパスユニットフィルタＨ１１４を用いる例について説明したが、同じ中心周波数Ｆｃ＝４５０ＫＨｚに通過域を有するユニットフィルタであれば、同様に用いることが可能である。
次に、バンド幅を広く調整するための手段について説明する。図１５は、傾斜を含めたバンド幅の調整手法を説明するための周波数−ゲイン特性図である。この図１５でもゲインを“１”で基準化している。ここでは、調整前のユニットフィルタの周波数特性をＹＦで表すものとする。上述したように、▲１▼に示すユニットフィルタＹＦを２個縦続接続すると、傾斜が急峻になってバンド幅が狭くなる（−６ｄＢのクロック位置が低周波側に移動する）（▲２▼）。
そして、ゲインの中心値（＝０．５）を軸として、▲２▼に示すユニットフィルタＹＦ２の周波数−ゲイン特性を反転させる（▲３▼）。これは、ディレイを合わせて基準ゲイン値“１”のユニットパルス（中心値が１で、その他が全て０のフィルタ係数に相当）からユニットフィルタＹＦ２のフィルタ係数を引くことによって求められる（１−ＹＦ２）。ここでは、これを反転ユニットフィルタと呼ぶことにする。
さらに、▲３▼に示す反転ユニットフィルタを２個縦続接続する。これにより得られる周波数−ゲイン特性の傾斜は更に急峻になり、バンド幅も更に狭くなる（−６ｄＢのクロック位置が高周波側に移動する）（▲４▼）。ここでは、縦続接続する反転ユニットフィルタの個数を▲２▼の場合と同じ２個としているが、これより多くすることにより、高周波側への移動量を、先ほどの低周波側への移動量より大きくすることができる。
最後に、ゲインの中心値（＝０．５）を軸として、▲４▼に示す周波数−ゲイン特性を反転させる（▲５▼）。これは、ディレイを合わせて基準ゲイン値“１”のユニットパルスから▲４▼のフィルタ係数を引くことによって求められる（１−（１−ＹＦ２）２）。元データ▲１▼の周波数特性と調整後データ▲５▼の周波数特性とを比較して見ると、調整後データ▲５▼の周波数特性は元データ▲１▼より傾斜が急峻になるとともに、バンド幅が広くなっている。
調整後データ▲５▼の式を展開すると、以下のようになる。
１−（１−ＹＦ２）２
＝１−１＋２ＹＦ２−ＹＦ４
＝２ＹＦ２−ＹＦ４    ・・・（式１）
この式１は、▲１▼のユニットフィルタおよび▲３▼の反転ユニットフィルタをそれぞれ２個縦続接続した場合に得られる式であるが、縦続接続する段数はこれに限られない。ただし、バンド幅を広げるためには、▲１▼の縦続段数より▲３▼の縦続段数の方を多くするのが好ましい。
この場合、上述した式１は、次の式２のように一般化できる。
ａ＊ＹＦｉ−ｂ＊ＹＦｊ    ・・・（式２）
ただし、ａ，ｂは係数（ａ＞ｂ）、ｉ＜ｊであり、＊は縦続接続を表す。図１６は、調整前の元データとしてハイパスユニットフィルタＨ１８を用い、このバンド幅を調整した結果の例を示す。ここでは、調整後のフィルタを
２＊（Ｈ１８）５−（Ｈ１８）９
としている。この調整により、−３ｄＢのバンド幅は約１００ＫＨｚ、−５０ｄＢのバンド幅は約２００ＫＨｚとなる。
次に、バンド幅の周波数を微調整するための手段について説明する。図１７は、周波数の微調整手法を説明するための周波数−ゲイン特性図である。この図１７でもゲインを“１”で基準化している。
図１７に示すように、ハイパスユニットフィルタＨ１８の比較的広い通過域の中で、通過域が互いにオーバーラップするようにハイパスフィルタ（ＨＰＦ）とローパスフィルタ（ＬＰＦ）とを設計する。これらの各フィルタＨ１８，ＨＰＦ，ＬＰＦを縦続接続することにより、それぞれの通過域の重なった部分（斜線部分）が通過域となるバンドパスフィルタを得ることができる。
このとき、ハイパスフィルタＨＰＦおよびローパスフィルタＬＰＦの何れか一方、あるいはその両方に対して、図５および図８あるいは図１４で示したような通過域を狭める操作または、図１５および図１６で示したような通過域を広げる操作をすることにより、バンドパスフィルタのバンド幅を任意に微調整することができる。
図１７（ａ）では、ローパスフィルタＬＰＦに対して通過域を広げる操作をすることにより、バンドパスフィルタの片側のみを高周波側にシフトする例を示している。また、図１７（ｂ）では、ハイパスフィルタＨＰＦに対して通過域を広げる操作をするとともに、ローパスフィルタＬＰＦに対して通過域を狭める操作をすることにより、バンド幅を変えずにバンドパスフィルタの両側を低周波側にシフトする例を示している。
以上に説明した本実施形態によるデジタルフィルタの設計方法を実現するための装置は、ハードウェア構成、ＤＳＰ、ソフトウェアの何れによっても実現することが可能である。例えばソフトウェアによって実現する場合、本実施形態のフィルタ設計装置は、実際にはコンピュータのＣＰＵあるいはＭＰＵ、ＲＡＭ、ＲＯＭなどで構成され、ＲＡＭやＲＯＭあるいはハードディスク等に記憶されたプログラムが動作することによって実現できる。
したがって、コンピュータが上記本実施形態の機能を果たすように動作させるプログラムを例えばＣＤ−ＲＯＭのような記録媒体に記録し、これをコンピュータに読み込ませることによって実現できるものである。上記プログラムを記録する記録媒体としては、ＣＤ−ＲＯＭ以外に、フレキシブルディスク、ハードディスク、磁気テープ、光ディスク、光磁気ディスク、ＤＶＤ、不揮発性メモリカード等を用いることができる。また、上記プログラムをインターネット等のネットワークを介してコンピュータにダウンロードすることによっても実現できる。
すなわち、各種のユニットフィルタＬ１ｎ，Ｈ１ｎ等に関するフィルタ係数を情報としてＲＡＭあるいはＲＯＭ等のメモリに保持しておき、ユーザがユニットフィルタＬ１ｎ，Ｈ１ｎ等に関する任意の組み合わせを指示すると、ＣＰＵが、上記メモリに保持されているフィルタ係数の情報を用いて、指示された組み合わせに対応するフィルタ係数を演算して求めるようにすることが可能である。
例えば、各種のユニットフィルタＬ１ｎ，Ｈ１ｎをアイコン化しておき（各アイコンに対応してフィルタ係数を情報として保持している）、ユーザがこれらのアイコンをディスプレイ画面上で任意に組み合わせて配置することにより、ＣＰＵがその配列に対応するフィルタ係数を自動的に演算して求めるようにしても良い。また、求めたフィルタ係数を自動的にＦＦＴ変換し、その結果を周波数−ゲイン特性図として表示するようにすれば、設計したフィルタの特性を確認することができ、フィルタ設計をより容易に行うことができる。
なお、コンピュータが供給されたプログラムを実行することにより上述の実施形態の機能が実現されるだけでなく、そのプログラムがコンピュータにおいて稼働しているＯＳ（オペレーティングシステム）あるいは他のアプリケーションソフト等と共同して上述の実施形態の機能が実現される場合や、供給されたプログラムの処理の全てあるいは一部がコンピュータの機能拡張ボードや機能拡張ユニットにより行われて上述の実施形態の機能が実現される場合も、かかるプログラムは本発明の実施形態に含まれる。
以上詳しく説明したように、本実施形態では、所定の基本的な数値列をフィルタ係数とする基本ユニットフィルタをベースとした１以上のユニットフィルタを用いて、これらを縦続接続することによって所望の周波数特性を有するＦＩＲフィルタを設計するようにしたので、殆どユニットフィルタの組み合わせだけでバンドパスフィルタの複雑なフィルタ係数を生成することができる。したがって、フィルタ設計法が単純で考えやすく、熟練した技術者でなくてもフィルタ設計を極めて簡単に行うことができる。
また、本実施形態を適用して設計されるフィルタ回路に必要なタップ数は非常にわずかで済み、かつ、各タップ出力に対して必要なフィルタ係数は−１／１６，１／１６，−８／１６，８／１６の４種類のみであるから、フィルタ回路の構成を極めて簡単にすることができる。したがって、回路素子数（特に乗算器）を大幅に削減してフィルタ回路の規模を小さくすることができるとともに、消費電力の低減、演算負荷の軽減等を図ることができる。
また、本実施形態を適用して設計されるフィルタ回路は、殆ど同一パターンの繰り返しから成る極めて単純な構成であるので、集積化に際して工数を短縮することができ、ＩＣ化を容易にすることができるというメリットも有する。また、特性面では遮断特性の極めて大きな改善が可能となり、位相特性も直線で優れたフィルタ特性を得ることができる。
また、本実施形態では、バンドパスフィルタの中心周波数Ｆｃまたは信号のサンプリング周波数Ｆｓの何れかを自由に決定できるときは、ハイパスユニットフィルタＨ１（５＋３ｋ）とローパスユニットフィルタＬ１（３＋２ｋ）とを縦続接続するだけで、バンドパスフィルタを設計することができる。これにより、数種類のユニットフィルタを組み合わせた特性値どうしの相殺により必要な周波数帯域を抜き出すようにする必要もなく、バンドパスフィルタの設計を極めて簡単に行うことができるとともに、フィルタの構成をより簡素化することができる。
この場合において、フィルタの中心周波数Ｆｃが同じで、かつ、フィルタ係数間に挿入する“０”の数がより多い（ｋの値が大きい）ユニットフィルタを縦続接続してバンドパスフィルタを設計することにより、フィルタの縦続段数やタップ数を増やすことなく、バンド幅を効率的に狭めることができる。すなわち、フィルタの回路規模を大きくすることなく、バンド幅を簡単に狭くすることができるようになる。
さらに、本実施形態では、
ａ＊（Ｈ１ｎ）ｉ−ｂ＊（Ｈ１ｎ）ｊあるいは
ａ＊（Ｌ１ｎ）ｉ−ｂ＊（Ｌ１ｎ）ｊ
（ａ，ｂ，ｉ，ｊは係数。ａ＞ｂ、ｉ＜ｊ）
の関係を満たすようにユニットフィルタを縦続接続するだけで、バンド幅を任意に広げることもできる。
また、このようにバンド幅を広げる操作と上述したバンド幅を狭める操作とを用いることにより、バンド幅を簡単に微調整することもできる。これにより、所望の周波数特性をより高精度に実現でき、かつ、そのような周波数特性を持つＦＩＲデジタルフィルタをより簡易的に設計することができるようになる。
なお、上記実施形態では、基本ユニットフィルタの例としてＬ０〜Ｌ３を示したが、これに限定されるものではない。すなわち、絶対値が“１”と“８”の数値を用いて図１（ｂ）と異なる数値列を基本ユニットフィルタのフィルタ係数とするようにしても良い。また、上記実施形態では、ユニットフィルタの例としてＬ１ｎ，Ｈ１ｎの２種類を示したが、これに限定されない。
また、上記実施形態では、基本ユニットフィルタのフィルタ係数として、絶対値が１，１，８，８，１，１の比率から成る数値列を用いたが、これを１回移動平均して得られる、絶対値が１，０，９，１６，９，０，１の比率から成る数値列を用いても良い。
また、上記実施形態では、バンドパスフィルタを設計する例について主に説明したが、同様の手法によりハイパスフィルタ、ローパスフィルタ、バンドエリミネーションフィルタ等を設計することも可能である。以下に、これらの各フィルタを設計する場合の手法を簡単に説明する。
＜バンドパスフィルタを作る場合＞
▲１▼ハイパスユニットフィルタＨ１１を縦続接続する（Ｆｓ＝４＊Ｆｃに限る）。
▲２▼ハイパスフィルタＨＰＦとローパスフィルタＬＰＦとを使用する。
▲３▼通過域が互いに重なったハイパスフィルタとローパスフィルタとを作る。
（互いに重なったバンドパスフィルタでも可）
＜ハイパスフィルタを作る場合＞
▲１▼ハイパスユニットフィルタＨ１０を縦続接続する。
▲２▼（Ｈ１０）ｍ１＊（Ｈ１１）ｍ２を作る。
＜ローパスフィルタを作る場合＞
▲１▼ローパスユニットフィルタＬ１０を縦続接続する。
▲２▼（Ｌ１０）ｍ１＊（Ｌ１１）ｍ２を作る。
＜バンドエリミネーションフィルタを作る場合＞
▲１▼ゲインの中心値を軸として、バンドパスフィルタの周波数−ゲイン特性を反転させる。具体的には、バンドパスフィルタの係数の最大値を基準ゲイン値“１”より減算するとともに、他の係数の極性を反転する。これは、ディレイを合わせて基準ゲイン値“１”のユニットパルスからバンドパスフィルタのフィルタ係数を引くことによって求められる。
また、上述の設計方法を用いて生成したフィルタ列を１つ以上のブロックに分割し、ブロック毎の最終生成係数である１つ以上のフィルタを縦続接続することによってデジタルフィルタの設計を行うようにしても良い。
その他、上記実施形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその精神、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【産業上の利用可能性】  本発明は、所望の周波数特性をより高精度に実現でき、かつ、そのような周波数特性を持つＦＩＲデジタルフィルタをより簡易的に設計できるようにするのに有用である。
【図１】
2004008637.tif 000003
【図２】
2004008637.tif 000004
【図３】
2004008637.tif 000005
【図４】
2004008637.tif 000006
【図５】
2004008637.tif 000007
【図６】
2004008637.tif 000008
【図７】
2004008637.tif 000009
【図８】
2004008637.tif 000010
【図９】
2004008637.tif 000011
【図１０】
2004008637.tif 000012
【図１１】
2004008637.tif 000013
【図１２】
2004008637.tif 000014
【図１３】
2004008637.tif 000015
【図１４】
2004008637.tif 000016
【図１５】
2004008637.tif 000017
【図１６】
2004008637.tif 000018
【図１７】
2004008637.tif 000019
【国際調査報告】
2004008637.tif 000020
2004008637.tif 000021
2004008637.tif 000022
2004008637.tif 000023