(57)【要約】【課題】  回路規模が小さく、消費電力を低く抑えることが可能なデジタルフィルタを提供すること。【解決手段】  乗算器１と、第一の加算器２と、第二の加算器３とは、デジタルフィルタ１０に入力されたデータに対してフィルタ演算を行う。第一の出力データ記憶部５は、第二の加算器３の出力データを記憶する。第二の出力データ記憶部６は、乗算器１及び第一の加算器２の出力データを記憶する。係数記憶部７は、乗算器１の乗算係数を出力する。入力選択部８は、デジタルフィルタ１０の入力データ及び出力データのうちの一方を選択して乗算器１に出力する。状態制御部４は、複数の異なる演算状態を１サイクルとし、その演算状態の切り換えを制御する制御信号を出力する。１サイクルの演算を行った結果を、デジタルフィルタ１０の出力データとして出力する。【選択図】  図１
2006180423.tif 000002
【特許請求の範囲】
【請求項１】
入力データに対してフィルタ処理を行って出力データを出力するデジタルフィルタであって、
入力されたデータに対して所定の乗算係数を乗算する乗算器と、
前記乗算器の出力データと、第一の加算データとを加算する第一の加算器と、
前記第一の加算器の出力データと、第二の加算データとを加算する第二の加算器と、
複数の異なる演算状態を１サイクルとし、前記演算状態の切り換えを制御する状態制御部と、
前記第二の加算器の出力データを記憶し、前記状態制御部によって指定された状態に応じて前記第一の加算器へ前記第一の加算データとして出力する第一の記憶部と、
前記第一の加算器の出力データを記憶し、前記状態制御部によって指定された状態に応じて前記第二の加算器へ前記第二の加算データとして出力する第二の記憶部と、
複数のフィルタ係数を記憶し、前記状態制御部によって指定された状態に応じて、前記フィルタ係数を、前記乗算器に前記乗算係数として出力する係数記憶部と、
前記１サイクル毎の前記第二の加算器の出力データを記憶する出力記憶部と、
前記乗算器に入力されるデータを、前記状態制御部によって指定された状態に応じて、前記デジタルフィルタへの入力データと、前記出力記憶部に記憶されているデータとのいずれかを切り換える入力切替部と、
を備えるデジタルフィルタ。
【請求項２】
請求項１記載のデジタルフィルタであって、
前記第二の記憶部は、前記乗算器の出力データを更に記憶し、前記状態制御部によって指定された状態に応じて、前記乗算器の出力データを前記第一の加算データとして出力するデジタルフィルタ。
【請求項３】
請求項１又は２記載のデジタルフィルタであって、
フィルタの次数を設定する次数設定器を備え、
前記係数記憶部は、前記次数設定器により設定されたフィルタ次数に従って前記フィルタ係数を選択する係数選択部を有するデジタルフィルタ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線通信機等の通信データの信号処理部等に使用し、入力データに対してフィルタ処理を行って出力データを出力するデジタルフィルタに関するものである。
【背景技術】
【０００２】
デジタルフィルタとは観測信号から不要なノイズ成分を除去し、目的とする信号成分を取り出す機能を持つデジタル信号処理システムである。
【０００３】
デジタルフィルタの信号処理は、入力信号Ｘ、出力信号Ｙとしたとき、下記の数１で表され、数１で表される演算を行うことによりデジタル回路においてフィルタ機能を実現するものである。
【０００４】
【数１】
2006180423.tif 000003
【０００５】
一般的にデジタルフィルタでは、デジタルシグナルプロセッサ（Digital Signal Proceccer：以下、ＤＳＰ）と呼ばれる信号処理専用マイクロプロセッサとソフトウェアで上記の式の演算を行い、信号処理を行っている。
【０００６】
また、ＤＳＰを使用しない場合には、遅延素子、乗算回路、加算回路をハードウェアで構成し、上記数１の演算を実現している（例えば、特許文献１参照）。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来のデジタルフィルタにおいては、ＤＳＰを使用する場合は、ＤＳＰが高価であり、また、基板への実装面積が必要となるという事情があった。
【０００８】
また、ＤＳＰを使用せず、回路のみでデジタルフィルタを構成する場合には、多ビットの乗算および加算回路がフィルタの段数分必要となり回路規模が膨大となっていた。特許文献１に見られるように必要なビット幅を考慮し計算順序を変更したり、フィルタ係数の対称性を考慮し乗算量を減らすなど若干の改良が実行されている例もあるが、基本的には乗算および加算回路の数は従来のままのため、大幅に回路の量を削減することはできなかった。また、回路規模が大きいため、消費電力が大きくなってしまうといった事情があった。
【特許文献１】特開２００４−２４２０５１号公報
【０００９】
本発明は、上記従来の事情に鑑みてなされたものであって、回路規模が小さく、消費電力を低く抑えることが可能なデジタルフィルタを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明のデジタルフィルタは、入力データに対してフィルタ処理を行って出力データを出力するデジタルフィルタであって、入力されたデータに対して所定の乗算係数を乗算する乗算器と、前記乗算器の出力データと、第一の加算データとを加算する第一の加算器と、前記第一の加算器の出力データと、第二の加算データとを加算する第二の加算器と、複数の異なる演算状態を１サイクルとし、前記演算状態の切り換えを制御する状態制御部と、前記第二の加算器の出力データを記憶し、前記状態制御部によって指定された状態に応じて前記第一の加算器へ前記第一の加算データとして出力する第一の記憶部と、前記第一の加算器の出力データを記憶し、前記状態制御部によって指定された状態に応じて前記第二の加算器へ前記第二の加算データとして出力する第二の記憶部と、複数のフィルタ係数を記憶し、前記状態制御部によって指定された状態に応じて、前記フィルタ係数を、前記乗算器に前記乗算係数として出力する係数記憶部と、前記１サイクル毎の前記第二の加算器の出力データを記憶する出力記憶部と、前記乗算器に入力されるデータを、前記状態制御部によって指定された状態に応じて、前記デジタルフィルタへの入力データと、前記出力記憶部に記憶されているデータとのいずれかを切り換える入力切替部と、を備える。
【００１１】
この構成により、複数の演算状態を切り換えて回路を制御してフィルタ演算を行うので、回路規模及び消費電力が小さなデジタルフィルタを提供することができる。
【００１２】
また、本発明のデジタルフィルタは、前記第二の記憶部は、前記乗算器の出力データを更に記憶し、前記状態制御部によって指定された状態に応じて、前記乗算器の出力データを前記第一の加算データとして出力する。
【００１３】
この構成により、例えば、デジタルフィルタの係数が対称性を有する場合に、乗算器の出力データを必要に応じて共用することができるので、更に回路規模及び消費電力を抑制させることができる。
【００１４】
また、本発明のデジタルフィルタは、フィルタの次数を設定する次数設定器を備え、前記係数記憶部は、前記次数設定器により設定されたフィルタ次数に従って前記フィルタ係数を選択する係数選択部を有する。
【００１５】
この構成により、簡易な構成で、フィルタ次数に応じた演算を適応的に行うことができる。
【発明の効果】
【００１６】
本発明によれば、回路規模が小さく、消費電力を低く抑えることが可能なデジタルフィルタを提供することができる。
【発明を実施するための最良の形態】
【００１７】
本発明の実施形態のデジタルフィルタは、乗算器及び加算器並びにこれらの演算器の出力を記憶する記憶部を有し、複数の異なる演算状態を順次切り換えて１サイクル分の演算を行い、デジタルフィルタの演算結果を出力することにより、減少した乗算器及び加算器の数にてフィルタ演算を行うことができる。以下、本発明の実施形態について、図面を参照して説明する。
【００１８】
（第１の実施形態）
図１は、本発明の第１の実施形態に係るデジタルフィルタの概略構成を示すブロック図である。
【００１９】
図１に示すように、第１の実施形態のデジタルフィルタ１０は、乗算器１と、乗算器１の出力側に接続された第一の加算器２と、第一の加算器２の出力側に接続された第二の加算器３とを備える。
【００２０】
また、デジタルフィルタ１０は、複数の異なる演算状態を１サイクルとし、演算状態の切り換えを制御する状態制御部４と、第二の加算器３から出力されたデータを記憶する第一の出力データ記憶部５と、乗算器１及び第一の加算器２から出力されたデータを記憶する第二の出力データ記憶部６と、乗算器１に対する係数を出力する係数記憶部７と、デジタルフィルタ１０の入力データ又は出力データのいずれか一方を選択して乗算器１へ出力する選択部８と、デジタルフィルタ１０の出力データを記憶する出力記憶部９とを備える。
【００２１】
乗算器１は、入力選択部８から出力されたデータに対して、係数記憶部７から出力された乗算係数を乗算する。乗算器１によって乗算されたデータは、第一の加算器２及び第二の出力データ記憶部６へ出力される。
【００２２】
第一の加算器２は、乗算器１から出力されたデータと、第一の出力データ記憶部５から出力された第一の加算データとを加算する。第一の加算器２によって加算されたデータは、第二の加算器３及び第二の出力データ記憶部６へ出力される。
【００２３】
第二の加算器３は、第一の加算器２から出力されたデータと、第二の出力データ記憶部６から出力された第二の加算データとを加算する。第二の加算器３によって加算されたデータは、出力記憶部９及び第一の出力データ記憶部５へ出力される。
【００２４】
状態制御部４は、デジタルフィルタ１０が有する、異なる複数の演算状態を切り換え制御する。これらの複数の演算状態を一通り（１サイクル）行うごとに、デジタルフィルタ１０の出力データが得られる。そして、演算状態に応じて、第一出力データ記憶部５、第二出力データ記憶部６、係数記憶部７、入力選択部８へ制御信号を出力する。
【００２５】
第一の出力データ記憶部５は、第二の加算器３から出力されたデータを記憶する。そして、状態制御部４から出力された制御信号に応じて、記憶されているデータを、第一の加算データとして、第一の加算器２へ出力する。
【００２６】
第二の出力データ記憶部６は、乗算器１の出力データ及び第一の加算器２の出力データを記憶する。そして、状態制御部４から出力された制御信号に応じて、記憶されているデータを、第二の加算データとして、第二の加算器３へ出力する。
【００２７】
係数記憶部７は、複数の係数を記憶し、状態制御部４から出力された制御信号に応じて、記憶されている係数を選択し、乗算器１への乗算係数として出力する。
【００２８】
入力選択部８は、デジタルフィルタ１０に入力された入力データと、出力記憶部９から出力されたデジタルフィルタ１０からの出力データとのうち、いずれか一方を選択して、乗算器１へ出力する。
【００２９】
出力記憶部９は、第二の加算器３から出力されたデータのうち、少なくともデジタルフィルタ１０の出力となる、複数の異なる演算状態を含む１サイクルごとに取得されるデータを記憶する。そして、記憶された出力データは、デジタルフィルタ１０の出力データとして出力されると共に、入力選択部８へ出力される。
【００３０】
次に、本実施形態のデジタルフィルタ１０について、以下にその動作を説明する。
【００３１】
図２は、デジタルフィルタの構成の一例を示す図である。図２に示すように、デジタルフィルタ１００は乗算器１０１と、加算器１０２と、遅延器１０３とを用いて図２の構成図の様に構成される。
【００３２】
図２のデジタルフィルタの構成図ではフィルタ次数を便宜上４次としているが、フィルタの特性により次数は増減する。以下の説明でもフィルタ次数を４次としているがこれは４次に限定したことではなく、何次でも可能である。
【００３３】
そして、図２に示された回路は、図３に示す構成図のように変形することができる。図３は、本発明の第１の実施形態のデジタルフィルタ演算の一例を示す概念図である。すなわち、図１に示されたデジタルフィルタ１０が有する、１つの乗算器１及び２つの加算器２，３を用いて複数の演算状態（以下、ステートという）に応じて演算を行い、それぞれのステートにおいて用いられる、図３における遅延器１０３の役割を記憶部５、６が担うことにより、乗算器や加算器等の数を抑制し、デジタルフィルタ演算を行うことができる。なお、このような演算の場合、第二の出力データ記憶部６は、第一の加算器２の出力データのみを記憶すればよく、乗算器１からの出力データを記憶する必要はない。
【００３４】
さらに、デジタルフィルタの係数ｂ０〜ｂ４は通常対称性を持つ。この対称性を考慮すると、図３に示される構成は、図４に示す構成のように変形することができる。従って、図２に示された回路は、図４に示す構成のように変形することができる。図４は、本発明の第１の実施形態のデジタルフィルタ演算の別の例を示す概念図である。
【００３５】
上述したように、デジタルフィルタの対称性により、係数ｂ０＝ｂ４、ｂ１＝ｂ３となるため、デジタルフィルタの状態制御部４は、図４に示されるステートを制御し、ステート１〜ステート７のステートを順時遷移させる。
【００３６】
ステート毎に、乗算器１及び加算器２，３を用いた演算が行われ、その出力データは記憶部５，６に記憶される。そして、状態制御部４によって、ステートの切り換えタイミングを制御することにより、図４の遅延素子１０３に示される機能が実現される。
【００３７】
デジタルフィルタ１０は一定時間ごとに図２に示される計算を繰り返し行なうもので、状態制御部は図４に示すステート１〜ステート７を１サイクルとし、１サイクルのステート遷移を繰り返し処理を行なう。
【００３８】
第一の出力データ記憶部５、第二の出力データ記憶部６は、乗算器１、第一の加算器２、第二の加算器３の出力データを記憶しているが、状態制御部４から出力された制御信号に応じて、第一の加算器２、第二の加算器３の入力データとして出力する。
【００３９】
係数記憶部７は状態制御部４のステートに応じて係数を選択し乗算器１に対し出力する。出力記憶部９は状態制御部がステートを一巡する１サイクルの間、デジタルフィルタの出力を記憶し、入力選択部８は状態制御部４のステートに応じて、デジタルフィルタ１０の入力と出力とを選択し、乗算器１に対し出力する。
【００４０】
図５は、演算状態とデジタルフィルタの動作との対応関係を示す図であり、４次のフィルタの場合のステート毎の乗算器１、第一の加算器２、第二の加算器３の入力信号選択の例を示す。
【００４１】
図５に示されるように、乗算器１、第一の加算器２、第二の加算器３は、状態制御部４のステートに応じて選択された入力データの演算をステートが変更されるたびに行なうことでデジタルフィルタの処理が可能となる。
【００４２】
このような本発明の第１の実施形態によれば、乗算器１、第一の加算器２、第二の加算器３に対し、複数の演算状態に応じて入力データを選択して演算することにより、規模の小さく消費電力の少ないデジタルフィルタを提供することができる。
【００４３】
また、フィルタ係数の対称性を考慮して、演算のステートを抑えることにより、演算量を減少させることができる。
【００４４】
（第２の実施形態）
図６は、本発明の第２の実施形態に係るデジタルフィルタの概略構成を示すブロック図である。図１に示した第１の実施形態のデジタルフィルタと重複する部分は同一の符号を付す。
【００４５】
本実施形態のデジタルフィルタ２０は、第１の実施形態のデジタルフィルタ１０と比較して、次数設定部２１を更に有する。次数設定部２１は、使用者による入力又は所定の条件に応じて、フィルタ演算の次数を設定して設定信号を出力する。次数設定部２１から出力された設定信号は、状態制御部４及び係数記憶部７に出力される。
【００４６】
状態制御部４は、設定された次数に基づいて、状態（ステート）の制御を行う。係数記憶部７は、フィルタ演算の次数と、係数とを対応付けて記憶しており、また、設定された次数と、状態制御部４からの制御信号に基づいて、記憶している係数を選択し、乗算器１に出力する。
【００４７】
図７は、本発明の第２の実施形態に係る係数記憶部に記憶された係数選択表を示す図である。さて、第１の実施形態にて述べたとおり、ｍ次のデジタルフィルタの係数ｂ０〜ｂｍは通常対称性を持つため、係数はｂｉ＝ｂｍ−ｉとなる。ここで、ｉは０≦ｉ≦ｍの整数である。
【００４８】
したがって、図７に示すように、設定が必要な係数は表中の網掛けの部分であり、それ以外の部分は、フィルタ次数に応じて選択される部分である。フィルタの係数として設定されたｋ０〜ｋ２から、フィルタの次数に応じてフィルタ係数を選択し乗算器１に対して出力を行なう。
【００４９】
以上のように、本発明の第２の実施形態のデジタルフィルタによれば、第１の実施の形態に加え、次数記憶部と係数選択部を係数記憶部に設けることにより、さらに規模の小さいデジタルフィルタを提供することができる。
【産業上の利用可能性】
【００５０】
本発明のデジタルフィルタは、回路規模が小さく、消費電力を低く抑えることが可能な効果を有し、ノイズが含まれた観測信号からノイズを除去し、目的とする信号成分を取り出すために使用されるデジタルフィルタ等に有用である。
【図面の簡単な説明】
【００５１】
【図１】本発明の第１の実施形態に係るデジタルフィルタの概略構成を示すブロック図
【図２】デジタルフィルタの構成の一例を示す図
【図３】本発明の第１の実施形態のデジタルフィルタ演算の一例を示す概念図
【図４】本発明の第１の実施形態のデジタルフィルタ演算の別の例を示す概念図
【図５】演算状態とデジタルフィルタの動作との対応関係を示す図
【図６】本発明の第２の実施形態に係るデジタルフィルタの概略構成を示すブロック図
【図７】本発明の第２の実施形態に係る係数記憶部に記憶された係数選択表を示す図
【符号の説明】
【００５２】
１  乗算器
２  第一の加算器
３  第二の加算器
４  状態制御部
５  第一の出力データ記憶部
６  第二の出力データ記憶部
７  係数記憶部
８  入力選択部
９  出力記憶部
１０、２０  デジタルフィルタ
２１  次数設定部
【図１】
2006180423.tif 000004
【図２】
2006180423.tif 000005
【図３】
2006180423.tif 000006
【図４】
2006180423.tif 000007
【図５】
2006180423.tif 000008
【図６】
2006180423.tif 000009
【図７】
2006180423.tif 000010