(57)【要約】【課題】  入力信号に含まれる複数の周波数成分の各々の強度及び位相を算出することができるだけでなく、算出に要する処理時間を増加させないデジタルフィルタを提供する。【解決手段】  入力信号が順に格納される複数個（Ｎ個）のレジスタ１を備え、レジスタ１の出力値とレジスタ１の入力値とを加算した値に、入力信号と同期し時系列的に変化させる係数を掛ける乗算器３を備える。すなわち、実数部においては、出力信号X(i+1)は、加算器２によりレジスタ１への入力信号x(i+N)とレジスタ１からの出力信号−x(i)とが計算され、これに乗算器３により係数としての(1/N)cos[(2πk/N)×i]が乗じられ、更にこれに加算器４により１つ前の出力信号X(i)が加算されたものとなる。【選択図】      図１
2006352390.tif 000002
【特許請求の範囲】
【請求項１】
入力信号が順に格納される複数個のレジスタを備えるデジタルフィルタにおいて、
フィルタ演算に使用するフィルタ利得等のフィルタ係数が時系列的・周期的に変化することを特徴とするデジタルフィルタ。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、特に無限インパルス応答を持つＩＩＲ（Infinite Impulse Response）型デジタルフィルタに関する。
【背景技術】
【０００２】
従来のＩＩＲ（再回帰）型デジタルフィルタは、例えば最も単純なシステムブロック図を図８に示すように、出力Ｙ（ｚ）は、現在の入力信号Ｘ（ｚ）と１つ前の出力信号ｚ−１Ｙ（ｚ）を加算し、これに係数ｋを乗じたものである。
【０００３】
この他、ＩＩＲ型デジタルフィルタとしては、特許文献１にも記載されているように、今回のレジスタの出力に乗算器で×αの処理を行い、減算器でレジスタ出力の（１−α）を得て、加算器で次の入力を加算し、それをレジスタに記憶し、一方、レジスタの記憶値と加算器の出力を別の加算器で加算して、これに乗算器で×α／２を行い、出力を得るものがある（例えば、特許文献１参照）。
【０００４】
ところで、入力信号の強度と位相を検出するための手段としてフーリエ変換（デジタル信号ではディスクリートフーリエ変換）がある。しかしながら、フーリエ変換は一定範囲の周波数スペクトルを計算するため、計算処理時間を必要とする。また、特定の周波数についてのみフーリエ変換処理を行うことも可能であるが、それでも処理計算には多くの乗算を含み計算時間を要する。
【特許文献１】特公平７−７０９５８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
フーリエ変換方法により特定周波数の入力信号強度と位相を実時間的に測定することはその演算量から非現実的であるが、何らかの手段により演算量を減らし、実時間性を改善できれば、計測分野での交流信号計測において、直交検波方式の２相ロックインに変わる計測手段となり得る。
【０００６】
本発明は、そのような現状を踏まえてなされたものであって、入力信号に含まれる複数の周波数成分の各々の強度及び位相を算出することができるだけでなく、算出に要する処理時間を増加させないデジタルフィルタを提供することを目的としている。
【課題を解決するための手段】
【０００７】
前記課題を解決するために、この発明のデジタルフィルタは、入力信号が順に格納される複数個のレジスタを備えるものにおいて、フィルタ演算に使用するフィルタ利得等のフィルタ係数が時系列的・周期的に変化することを特徴とする。
【０００８】
具体的には、例えばレジスタの出力値とレジスタの入力値とを加算した値に、入力信号と同期し時系列的に変化させる係数を掛ける乗算器を備えることとする。
【発明の効果】
【０００９】
この発明によれば、入力信号に含まれる複数の周波数成分に対してそれぞれ強度・位相をリアルタイムで求めることができる上に、それに要する処理時間は増加しない。
【発明を実施するための最良の形態】
【００１０】
以下、実施の形態により、この発明を更に詳細に説明する。
【００１１】
但し、デジタルフィルタ自体の構造は従来のものと変わりがなく、演算処理回路に特徴があるので、それを中心に説明する。
【００１２】
ＩＩＲ型デジタルフィルタの一般的な一次式はｚ関数を用いて次のように表される。
【００１３】
【数１】
2006352390.tif 000003
【００１４】
デジタルフィルタにおいて、この計算を実行するために、次のように変形し計算を行う。
【００１５】
【数２】
2006352390.tif 000004
【００１６】
ここで、ｙｎは求める出力値であり、ｙｎ−１は１つ前の出力値、ｘｎは入力信号であり、ｘｎ−１は１つ前の入力信号を意味する。Ｇは利得、ａ１，ｂ１はフィルタ係数を表している。これらは予め一定の値がフィルタに設定され、ｘ，ｙだけが順次更新されていく。
【００１７】
本発明では、これまで一定値であったＧ，ａ１，ｂ１などの係数値も、入力信号の更新に伴い次々に更新することを特徴とする。
【００１８】
ディスクリートフーリエ変換は、Ｎ個の連続時間軸データを実数部、虚数部それぞれＮ個のフーリエ周波数成分に分解する（数３参照）。数３で、大文字のＸはフーリエ周波数成分、ｋはその周波数を意味する番号、小文字のｘは時系列入力信号で、そのデータ個数はＮ（０〜Ｎ−１）である。
【００１９】
【数３】
2006352390.tif 000005
【００２０】
ここで、全てのＸ（ｋ）を求めるなら、全てのｋについて数３を計算しなければならない。しかしながら、計測分野では必ずしも全てのＸ（ｋ）が必要な場合は少なく、ほとんどの場合、プローブ信号として使用した信号周波数が入力信号周波数となっている場合が多い。
【００２１】
このようなケースでは、入力信号周波数だけに対するフーリエ変換結果が得られるのであれば、そのフーリエ変換結果より信号強度と位相を求めることができる。また、連続した入力の時間軸データに対し、時間的に連続した結果が得られるのであれば、更に計測分野では都合がよいといえる。ディスクリートフーリエ変換では、所定のデータ数（Ｎ）ごとにフーリエ変換処理を行うため、リアルタイム性が乏しいという特性がある。
【００２２】
Ｎ個の時系列データより１つのｋについてＸ(k)を求める場合、単純に数３を計算すれば求められるが、この場合、Ｎが大きいと、その計算量も実数部、虚数部でそれぞれＮ回の乗算を含む演算となり、必ずしも（又はかなり）実用的でない。
【００２３】
時系列的に数３の演算を行おうとすると、数３は次のように変形される。
【００２４】
【数４】
2006352390.tif 000006
【００２５】
ここで、ＸｋｉとＸｋｉ＋１を比較すると次の式が求められる。
【００２６】
【数５】
2006352390.tif 000007
【００２７】
数５に含まれる三角関数はＮに対して２πのｋ倍を周期とするので、数５の（ｉ＋Ｎ）と（ｉ）では、ｃｏｓ，ｓｉｎとも値は等しくなる。従って、数５は次式となる（但し、実数部のみ示すが、虚数部も同様である）。
【００２８】
【数６】
2006352390.tif 000008
【００２９】
数６と数２を比較すると、形式的には同じであることが分かる。大きな違いは、数６では数２のＧに相当する項が一定値でなく、入力データの更新に伴い時系列的（周期的）に値を変えていく点である。これが本デジタルフィルタの特徴であり、直接計算する際の問題点であった演算量は、この場合格段に少なくなり、実数部、虚数部でそれぞれ各１回の乗算で済む。
【００３０】
数６は通常のＩＩＲ型デジタルフィルタと同様に実現することができ、従ってほぼリアルタイム（連続的）にフーリエ周波数ｋ成分の係数を求めることができる。実数分と虚数分を本方法で求めることで、入力信号強度と位相をリアルタイムに測定することができる。
【００３１】
デジタルフィルタでよく使用される表現方法に数６を書き直すと図１のシステムブロック図のようになる。ここで、ｚ−１とあるのはｚ−１を意味する（但し、実数部のみ示す）。図１において、Ｎ個のレジスタ１に入力信号が順に格納されるとすると、出力信号X(i+1)は、加算器２によりレジスタ１への入力信号x(i+N)とレジスタ１からの出力信号−x(i)とが計算され、これに乗算器３により係数としての(1/N)cos[(2πk/N)×i]が乗じられ、更にこれに加算器４により１つ前の出力信号X(i)が加算されたものとなる。勿論、虚数部も同様に算出される。
【００３２】
この方式による数値計算例を以下に示す。
入力信号は４つの正弦波（ｃｏｓ波）の合成信号で、それぞれの振幅、位相、周波数（ｋ）は次とした。
【００３３】
振幅          位相          周波数（ｋ）
入力信号１      ２          ２０              １
入力信号２      ３          ３０            １０
入力信号３      ４          ４０            １２
入力信号４      １          １０              ２
フィルタ長（Ｎ）は２００とし、実数部、虚数部を求めた後、強度と位相の計算を行っている。
【００３４】
この場合の入力信号（Input Signal）を図２に示す。データ数（Data Number）０〜２００まではフィルタ初期値確定のため振幅（Amplitude）０としている。また、Data Numberを横軸としているが、これは時間軸である。
【００３５】
この入力信号に対し、強度・位相の計算結果を図３（振幅）及び図４（位相）に示す。フィルタ出力で横軸（データ数）２００〜４００の間は計算結果が収束するまでの時間となっている。図３及び図４によると、計算結果は確実に入力信号の強度・位相を算出していることが分かる。
【００３６】
入力信号の強度を変化させた場合の計算結果例を次に示す。入力信号４の振幅強度を変化させた場合で、通信で言うところの振幅変調信号である。
【００３７】
振幅          位相          周波数（ｋ）
入力信号４      １          ４０              ３
変調信号        ０．８        ０              ０．０３
この計算に使用したフィルタ長（Ｎ）は２０とした。
【００３８】
この場合の入力信号を図５に示す。図５より、入力信号の包絡線は設定の振幅０．８となっている。本計算方式はこの入力信号の強度が求められるので、強度計算結果は０．１から０．９の間を変化する結果となるはずである。
【００３９】
一方、図６（振幅）及び図７（位相）に示される強度・位相の計算結果は、この予想通りの結果となっている。図６では入力信号の振幅が０．８（０．９−０．１）であり、図７では、入力信号の位相４０°が求められている。
【図面の簡単な説明】
【００４０】
【図１】実施形態に係るデジタルフィルタにおいて、数６を表すシステムブロック図である。
【図２】実施形態に係るデジタルフィルタにおいて、数値計算例の入力信号を示す図である。
【図３】図２の入力信号に対する計算結果（振幅）を示す図である。
【図４】図２の入力信号に対する計算結果（位相）を示す図である。
【図５】実施形態に係るデジタルフィルタにおいて、入力信号の強度を変化させた場合の数値計算例の入力信号を示す図である。
【図６】図５の入力信号に対する計算結果（振幅）を示す図である。
【図７】図５の入力信号に対する計算結果（位相）を示す図である。
【図８】従来例に係るＩＩＲ型デジタルフィルタにおいて、最も単純なシステムブロック図である。
【符号の説明】
【００４１】
１        レジスタ
２，４    加算器
３        乗算器
【図１】
2006352390.tif 000009
【図２】
2006352390.tif 000010
【図３】
2006352390.tif 000011
【図４】
2006352390.tif 000012
【図５】
2006352390.tif 000013
【図６】
2006352390.tif 000014
【図７】
2006352390.tif 000015
【図８】
2006352390.tif 000016