(57)【要約】【課題】多段に構成されるディジタルフィルタの回路規模を削減し、フィルタのパラメータ設定や次数の変更を可能にする。【解決手段】乗算器１〜５、加算器６、７、１９およびレジスタ８、９で構成されるディジタルフィルタ演算回路と、前記ディジタルフィルタ演算回路の出力をラッチするレジスタ１０と、ディジタルフィルタ演算回路の入力としてサンプル値入力または前記フィードバックレジスタの出力を選択するセレクタ１７と、乗算器に与える乗算係数を保持する乗算器と同数のレジスタ１１〜１５とを備え、ディジタルフィルタ演算回路を動作させた後にレジスタ８、９に保持された値を退避させ、ディジタルフィルタ演算回路を動作させる前にレジスタ８、９に退避させた値を復元させる。【選択図】　図１
2004015406.tif 000002
【特許請求の範囲】
【請求項１】
乗算器、加算器および遅延用ラッチ回路で構成されるディジタルフィルタ演算回路と、
前記ディジタルフィルタ演算回路の出力をラッチするフィードバックレジスタと、
前記ディジタルフィルタ演算回路の入力としてサンプル値入力または前記フィードバックレジスタの出力を選択するセレクタと、
前記乗算器に与える乗算係数を保持する前記乗算器と同数のレジスタと、
前記ディジタルフィルタ演算回路を動作させた後に前記遅延用ラッチ回路に保持された値を退避させ、前記ディジタルフィルタ演算回路を動作させる前に前記遅延用ラッチ回路に前記退避させた値を復元させる制御手段と、
を具備したことを特徴とするディジタルフィルタ回路。
【請求項２】
前記乗算係数を保持するレジスタへの乗算係数の設定はマイクロコンピュータにより制御されることを特徴とする請求項１記載のディジタルフィルタ回路。
【請求項３】
前記ディジタルフィルタ演算回路は無限長インパルス応答型のディジタルフィルタ回路であることを特徴とする請求項１または２記載のディジタルフィルタ回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はディジタルフィルタの構成法に係り、特に多段に構成されるディジタルフィルタにおいて回路規模を削減することができるディジタルフィルタ回路に関するものである。
【０００２】
【従来の技術】
従来、ＩＩＲ（無限長インパルス応答）型のサブフィルタでバンドパスフィルタを構成する場合、複数のハイパスフィルタやローパスフィルタを直列に接続して構成していた。個々のハイパスフィルタやローパスフィルタにおけるフィルタのパラメータは設計時に決定し、半導体チップとしてハード化されていた。
【０００３】
図３は、このようなＩＩＲ型のサブフィルタを多段に接続した従来のバンドパスフィルタの構成を示す回路図である。図３において、サブフィルタ３１および３２は標準的な２次のＩＩＲ型のハイパスフィルタまたはローパスフィルタである。ここでは２次のＩＩＲ型フィルタをＮ個使用し、２×Ｎ次のバンドパスフィルタを構成している。
【０００４】
ハイパスフィルタとローパスフィルタの回路構成は同様で、フィルタのパラメータを与える乗算係数が違うだけである。サブフィルタ３１および３２はそれぞれ、乗算器４１〜４５および６１〜６５、加算器４６、４７、５１および６６、６７、７１、データラッチ用のレジスタ４８〜５０および６８〜７０で構成され、乗算係数は各乗算器について半導体チップ内のハードウェアで固定されている。
【０００５】
【発明が解決しようとする課題】
上記従来のバンドパスフィルタの構成においては、各ハイパスフィルタやローパスフィルタに乗算器と加算器が含まれており、必要な次数を２×Ｎとすると、１サブフィルタのＮ倍の乗算器と加算器が必要であった。そのため、これらの乗算器や加算器のトランジスタ数は非常に多くなり、半導体チップのコストアップを招いていた。
【０００６】
また、フィルタを設計する際、サブフィルタのパラメータやサブフィルタの次数（この場合は２×Ｎ）は、所望するフィルタ特性を実現できる様に設計されるが、半導体チップの製造過程で特性のバラツキなどが発生した場合に、所望の特性が得られなくてもパラメータの変更や次数の変更などはできなかった。
【０００７】
本発明は、かかる従来例の問題点に鑑みてなされたものであり、多段に構成されるディジタルフィルタにおいて、回路規模を削減することができるディジタルフィルタ回路を提供することを目的とする。さらに、本発明は半導体チップ製造後でもフィルタのパラメータ設定や変更が可能で、かつフィルタ次数の変更も可能なディジタルフィルタ回路を提供することも目的とする。
【０００８】
【課題を解決するための手段】
この目的を達成するために、本発明の請求項１に係るディジタルフィルタ回路は、乗算器（１〜５）、加算器（６、７、１９）および遅延用ラッチ回路（レジスタ８、９）で構成されるディジタルフィルタ演算回路と、前記ディジタルフィルタ演算回路の出力をラッチするフィードバックレジスタ（１０）と、前記ディジタルフィルタ演算回路の入力としてサンプル値入力または前記フィードバックレジスタの出力を選択するセレクタ（１７）と、前記乗算器に与える乗算係数を保持する前記乗算器と同数のレジスタ（１１〜１５）と、前記ディジタルフィルタ演算回路を動作させた後に前記遅延用ラッチ回路に保持された値を退避させ、前記ディジタルフィルタ演算回路を動作させる前に前記遅延用ラッチ回路に前記退避させた値を復元させる制御手段（マイクロコンピュータ１６）と、を備えるものである。
【０００９】
上記構成によれば、ディジタルフィルタ演算回路を繰り返し使用し、初回はディジタルフィルタ演算回路の入力としてサンプル値入力を選択し、次回からはフィードバックレジスタの出力を選択し、毎回乗算係数を保持するレジスタの値を更新し、ディジタルフィルタ演算回路を動作させた後に毎回遅延用ラッチ回路に保持された値を回数に応じた記憶場所に退避させ、ディジタルフィルタ演算回路を動作させる前に毎回遅延用ラッチ回路に保持された値を回数に応じた記憶場所から復元することにより、繰り返し回数の段数の縦続接続されたディジタルフィルタと同等の動作をさせることができるため、多段構成のディジタルフィルタとして使用することができ、従来の多段構成のディジタルフィルタ回路に比べて回路規模を大幅に削減することができる。
【００１０】
さらに、上記構成によれば、ディジタルフィルタ演算回路を繰り返し使用する際に毎回乗算係数を保持するレジスタの値を更新する方式であるため、乗算係数や繰り返し回数の設定を変えることにより、半導体チップの製造後であっても、ディジタルフィルタの特性の変更や調整をすることができる。
【００１１】
本発明の請求項２に係るディジタルフィルタ回路は、請求項１記載のディジタルフィルタ回路において、前記乗算係数を保持するレジスタへの乗算係数の設定はマイクロコンピュータにより制御されるものである。
【００１２】
上記構成によれば、乗算係数の設定がマイクロコンピュータにより制御されるため、マイクロコンピュータで実行させるソフトウェアにより任意にディジタルフィルタの特性の変更や調整をすることが可能になる。
【００１３】
本発明の請求項３に係るディジタルフィルタ回路は、請求項１または２記載のディジタルフィルタ回路において、前記ディジタルフィルタ演算回路は無限長インパルス応答型のディジタルフィルタ回路とするものである。
【００１４】
上記構成によれば、多段構成の無限長インパルス応答型のディジタルフィルタ回路において、従来に比べて回路規模を大幅に削減することができ、また、半導体チップの製造後であっても特性の変更や調整をすることができる。
【００１５】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照しながら説明する。図１は本発明の一実施の形態に係るディジタルフィルタ回路の構成を示す回路図である。図１において、１、２、３、４、５は乗算器、６、７、１９は加算器、８、９はデータラッチ用のレジスタであり、これらは標準的なＩＩＲ型のフィルタ回路を構成する。
【００１６】
さらに図１において、１１、１２、１３、１４、１５はそれぞれ乗算器１、２、３、４、５に与える乗算係数を保持するレジスタ、１６はフィルタ回路を制御するマイクロコンピュータ、１７はフィルタ回路への入力を選択するセレクタ、１８はセレクタ１７の入力選択を制御するフリップフロップ、２０は入力端子、２１は出力端子である。
【００１７】
ここでは実施形態として、フィルタ処理されるデータ幅は１４ビットとし、レジスタ１１、１２、１３、１４、１５は１４ビット構成、データラッチ用のレジスタ８、９、１０は３０ビット構成とする。３０ビット必要な理由は、入力データが１４ビット、乗算係数が１４ビット、乗算後に必要となる可能性のある桁上げに１ビット、符号に１ビットで、計３０ビットとなるためである。ただし実施形態はビット数を限定するものではなく、基本構成をかえずにビット数のみを増減できることは言うまでもない。
【００１８】
データラッチ用のレジスタ８、９とフリップフロップ１８と乗算器の乗算係数設定用レジスタ１１、１２、１３、１４、１５は、データの読み出し／書き込みのためのアドレスバス、データバス、コントロール信号などでマイクロコンピュータ１６に接続されており、マイクロコンピュータで実行されるソフトウェアにより書き込むことができる。また、データラッチ用のレジスタ８、９の内容は、マイクロコンピュータで実行されるソフトウェアにより読み出すことができる。
【００１９】
セレクタ１７の入力には入力端子２０からのフィルタ入力とレジスタ１０の出力が接続され、マイクロコンピュータ１６からフリップフロップ１８をセットあるいはリセットすることによりいずれかの入力が選択される。本実施形態では、フリップフロップ１８が０の場合に入力端子２０のフィルタ入力が選択され、フリップフロップ１８が１の場合にレジスタ１０の出力が選択されるものとする。
【００２０】
セレクタの出力は乗算器１、２、３に接続され、乗算器１、２、３、４、５と加算器６、７、１９とレジスタ８、９からなるＩＩＲ型のフィルタ回路で演算が行われ、出力がフィードバック用のレジスタ１０にラッチされる。レジスタ１０の出力は出力端子２１に接続されるとともに、上記のようにセレクタ１７に接続されることで、フィルタ回路の演算結果を入力にフィードバックする構成になっている。
【００２１】
以上のように構成されたディジタルフィルタ回路の動作について、図２に示すフローチャートを用いて説明する。図１の回路を多段構成のディジタルフィルタとして使用するために、まずステップ２０１でフィルタの段数Ｎを設定する。
【００２２】
本実施の形態では、Ｎ段のサブフィルタを直列に接続する代わりに、図１のディジタルフィルタをＮ回繰り返して使用することにより多段構成のディジタルフィルタの動作をさせる。そのために、各段のフィルタ動作を終了する度にレジスタ８および９の内容を退避させ、各段のフィルタ動作を開始する前に退避させた値をレジスタ８および９に復元する。
【００２３】
レジスタ８および９の内容を退避させる記憶場所は各段において必要になるので、これをＲ（ｋ，１）およびＲ（ｋ，２）（ｋ＝１〜Ｎ）とする。ステップ２０２では、Ｒ（ｋ，１）およびＲ（ｋ，２）の初期値を０に設定する。
【００２４】
次に、ステップ２０３でディジタルフィルタ回路へのサンプル値Ｓｉの入力を待つ。サンプル値Ｓｉが入力される度に、ステップ２０４以下の処理をＮ回繰り返すことにより、Ｎ段のフィルタ動作をさせる。繰り返し制御を行うために、ステップ２０４で繰り返し変数ｋを初段を示す１に設定する。
【００２５】
初段ではディジタルフィルタ回路にサンプル値Ｓｉを入力するので、セレクタ１７の入力選択がＳｉになるように、ステップ２０５でフリップフロップ１８を０にリセットする。なお、サンプル値Ｓｉは図示しないラッチ回路により値が保持されているものとする。
【００２６】
次に、ｋ＝１であるので、ステップ２０６で初段の乗算係数をレジスタ１１〜１５にセットし、ステップ２０７でレジスタ８および９にそれぞれ、Ｒ（１，１）およびＲ（１，２）をロードする。これで図１のディジタルフィルタ回路を初段のディジタルフィルタとして動作させる準備ができたので、ステップ２０８でディジタルフィルタ回路にクロックを与えてフィルタ回路動作をさせる。
【００２７】
ステップ２０９ではフィルタ動作後のレジスタ８および９の内容をＲ（１，１）およびＲ（１，２）に退避させ、次のサンプル値Ｓｉの入力時の初段の動作に備える。ステップ２１０で繰り返し変数ｋをＮと比較し、ｋ＜Ｎであればステップ２１１に進み、次段のフィルタ動作に備えてｋに１を加え、さらに、セレクタ１７の入力選択でフィードバック用のレジスタ１０からフィードバックされた値を選択するように、ステップ２１２でフリップフロップ１８を１にセットする。
【００２８】
再びステップ２０６に戻り、ｋ段の乗算係数をレジスタ１１〜１５にセットし、ステップ２０７でレジスタ８および９にそれぞれ、Ｒ（ｋ，１）およびＲ（ｋ，２）をロードする。これで図１のディジタルフィルタ回路をｋ段のディジタルフィルタとして動作させる準備ができたので、ステップ２０８でディジタルフィルタ回路にクロックを与えてフィルタ回路動作をさせる。
【００２９】
ステップ２０９ではフィルタ動作後のレジスタ８および９の内容をＲ（ｋ，１）およびＲ（ｋ，２）に退避させ、次のサンプル値Ｓｉの入力時のｋ段の動作に備える。ステップ２１０で繰り返し変数ｋをＮと比較し、ｋ＜Ｎであればステップ２１１に進み、ｋ＝Ｎであればステップ２０３に戻り、次のサンプル値Ｓｉの入力を待つ。
【００３０】
このようにして、入力端子２０にサンプル値Ｓｉが入力される度にＮ段のフィルタ動作が行われ、出力端子２１には２×Ｎ次のディジタルフィルタ出力の時系列が得られる。
【００３１】
以上の説明から明らかなように、本実施の形態においては、ディジタルフィルタのパラメータをソフトウェアによりマイクロコンピュータから任意に設定することができる。またフィルタの段数Ｎもソフトウェアで任意に設定できる。このことにより半導体チップ製造後でもフィルタの特性を任意に変更することが可能になる。
【００３２】
従来、ディジタルフィルタのパラメータや次数はチップ設計時に計算され、半導体チップ内のハードウェアで構成されて製造されるため、製造工程での特性変動や製造バラツキの影響を受けた場合に設計した特性が得られないなどの問題があった。上述したように、本発明によりこの問題を解決することができる。
【００３３】
また、従来のバンドパスフィルタは複数のサブフィルタを縦列接続させることで構成されており、フィルタを構成するトランジスタ数が多くなっていた。本発明によれば従来のサブフィルタの１回路とレジスタ群だけで構成できるため、トランジスタ数の大幅な削減が可能となる。
【００３４】
【発明の効果】
以上説明したように、本発明によれば、ディジタルフィルタ演算回路を繰り返し使用することができるため、多段構成のディジタルフィルタとして使用することができ、従来の多段構成のディジタルフィルタ回路に比べて回路規模を大幅に削減するという優れた効果を得ることができる。
【００３５】
さらに本発明によれば、乗算器の乗算係数や繰り返し回数の設定を変えることにより、半導体チップの製造後であっても、ディジタルフィルタの特性の変更や調整をすることができ、特にソフトウェアによりディジタルフィルタの特性を任意に変更することが可能になるという優れた効果を得ることができる。
【図面の簡単な説明】
【図１】本発明の一実施の形態に係るディジタルフィルタ回路の構成を示す回路図。
【図２】本発明の一実施の形態に係るディジタルフィルタ回路の動作を説明するフローチャート。
【図３】従来の多段構成のバンドパスフィルタの構成を示す回路図。
【符号の説明】
１〜５、４１〜４５、６１〜６５　乗算器
６、７、１９、４６、４７、５１、６６、６７、７１　加算器
８〜１０、４８〜５０、６８〜７０　データラッチ用のレジスタ
１１〜１５　乗算係数用のレジスタ
１６　マイクロコンピュータ
１７　セレクタ
１８　フリップフロップ
２０、５２　入力端子
２１、７２　出力端子
３１、３２　サブフィルタ
【図１】
2004015406.tif 000003
【図２】
2004015406.tif 000004
【図３】
2004015406.tif 000005