(57)【要約】【課題】回路規模を小さくすることが可能なＦＩＲディジタルフィルタを提供する。【解決手段】セレクタ５１は切替制御部１０１の制御によって入力データ信号と遅延素子６１から出力されるデータ信号とを選択的に出力し、遅延素子６１へ供給する。遅延素子６１からのデータ信号はラッチ４１を介して、入力クロック信号と同じ周波数でサンプリングされたデータ信号としてデータ信号出力端子１４へ出力される。メモリ１１２からはメモリ制御部１１１の出力タイミング制御によってタップ係数信号が出力され、乗算器７１は遅延素子６１からの出力とタップ係数信号との乗算を行う。乗算器７１の出力データは加算器８１、ラッチ４３とを介してタップ出力信号ｇ１として出力され、ラッチ４２を介してフィルタ信号出力端子１３へ出力される。【選択図】      図１
2004165945.tif 000002
【特許請求の範囲】
【請求項１】
入力データ信号をサンプリングした入力クロック信号からｍ倍（ｍは正の整数）した第１のクロックと前記入力クロック信号に対して位相制御を行った第２のクロックとを発生するクロック発生器と、前記第１のクロックに基づいて前記入力データ信号に対して所定のフィルタ係数の演算処理を行ってタップ出力信号を出力する積和演算器と、前記積和演算器からのタップ出力信号を前記第２のクロックでサンプリングする第１のラッチとを有することを特徴とするＦＩＲディジタルフィルタ。
【請求項２】
前記積和演算器は、入力信号を（ｍ−１）段遅延させる遅延素子と、前記遅延素子の出力信号と前記入力データ信号とを切替える第１のセレクタと、予めタップ係数信号を格納するメモリと、前記メモリから出力されるタップ係数信号と前記遅延素子からの出力信号とを乗算する乗算器と、前記乗算器の乗算結果を逐次累算して出力する累算器と、前記遅延素子からの出力信号を前記第２のクロックでサンプリングする第２のラッチとを含み、
前記累算器の出力を前記タップ出力信号として出力することを特徴とする請求項１記載のＦＩＲディジタルフィルタ。
【請求項３】
前記第１のクロックを基に前記第１のセレクタの切替えを行う第１の切替制御手段を含むことを特徴とする請求項２記載のＦＩＲディジタルフィルタ。
【請求項４】
前記第１のクロックを基に前記メモリからの前記タップ係数信号の出力を制御するメモリ制御手段を含むことを特徴とする請求項２または請求項３記載のＦＩＲディジタルフィルタ。
【請求項５】
前記累算器は、前記乗算器からの出力信号と前記タップ出力信号とを加算する加算器と、前記乗算器からの出力信号と前記加算器からの加算結果とを切替える第２のセレクタと、前記第２のセレクタの出力信号を前記第１のクロックで保持するラッチとを含むことを特徴とする請求項２から請求項４のいずれか記載のＦＩＲディジタルフィルタ。
【請求項６】
前記第１のクロックを基に前記第２のセレクタの切替えを行う第２の切替制御手段を含むことを特徴とする請求項５記載のＦＩＲディジタルフィルタ。
【請求項７】
前記積和演算器を直列に複数段接続したことを特徴とする請求項１から請求項６のいずれか記載のＦＩＲディジタルフィルタ。
【請求項８】
タップ数を増大させる場合に前記クロック発生器における前記入力クロック信号の倍数ｍを大きくすることを特徴とする請求項１から請求項７のいずれか記載のＦＩＲディジタルフィルタ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はＦＩＲディジタルフィルタに関し、特にＦＩＲ（Ｆｉｎｉｔｅ  Ｉｍｐｕｌｓｅ  Ｒｅｓｐｏｎｓｅ）ディジタルフィルタの回路規模の削減に関する。
【０００２】
【従来の技術】
従来、ＦＩＲディジタルフィルタにおいては、図４に示すように、遅延素子２００〜２０ｍ（ｍは正の整数）と、乗算器２１０〜２１ｎ（ｎは正の整数、ｎ＝ｍ＋１）と、加算器２２０〜２２０ｍとから構成されている。
【０００３】
上記のＦＩＲディジタルフィルタでは、データ信号入力端子とデータ信号出力端子との間に複数の遅延素子２００〜２０ｍを直列に接続し、各接続にタップを形成している。
【０００４】
各タップにはタップ係数Ｈ０〜Ｈｎを乗算するための複数の乗算器２１０〜２１ｎが接続され、各乗算器２１０〜２１ｎの出力端は複数の加算器２２０〜２２０ｍに接続され、乗算結果の総和が算出されて出力されるものである（例えば、特許文献１参照）。
【０００５】
【特許文献１】
特開２００１−１７７３７８号公報（第２，３頁、図５）
【０００６】
【発明が解決しようとする課題】
上述した従来のＦＩＲディジタルフィルタでは、良好な特性を得ようと、ＦＩＲディジタルフィルタのタップ数を増大していくと、タップ数と同等の数の乗算器とタップ数より１個少ない数の加算器とが必要となる。
【０００７】
例えば、１０００タップのディジタルフィルタの場合、乗算器が１０００個、加算器が９９９個必要となる。多タップ数のフィルタを構成すると、上記のように乗算器と加算器とが多数必要となるため、回路規模が膨大となり、集積回路化するのに非常に困難である。
【０００８】
そこで、本発明の目的は上記の問題点を解消し、回路規模を小さくすることができるＦＩＲディジタルフィルタを提供することにある。
【０００９】
【課題を解決するための手段】
本発明によるＦＩＲディジタルフィルタは、入力データ信号をサンプリングした入力クロック信号からｍ倍（ｍは正の整数）した第１のクロックと前記入力クロック信号に対して位相制御を行った第２のクロックとを発生するクロック発生器と、前記第１のクロックに基づいて前記入力データ信号に対して所定のフィルタ係数の演算処理を行ってタップ出力信号を出力する積和演算器と、前記積和演算器からのタップ出力信号を前記第２のクロックでサンプリングする第１のラッチとを備えている。
【００１０】
すなわち、本発明のＦＩＲ（Ｆｉｎｉｔｅ  Ｉｍｐｕｌｓｅ  Ｒｅｓｐｏｎｓｅ）ディジタルフィルタは、入力データ信号をサンプリングした入力クロック信号からｍ倍（ｍは正の整数）した第１のクロックと入力クロック信号に対して位相制御を行った第２のクロックとを発生するクロック発生器と、第１のクロックに基づいて入力データ信号に対して所定のフィルタ係数の演算処理を行う積和演算器と、積和演算器の出力信号を第２のクロックでサンプリングするラッチとを備えている。
【００１１】
積和演算器は、入力信号を（ｍ−１）段遅延させる遅延素子と、その遅延素子の出力信号と入力データ信号とを切替えるセレクタと、そのセレクタの切替えを行う切替制御部と、タップ係数信号を格納するメモリと、そのメモリの出力制御を行うメモリ制御部と、このメモリから出力されるタップ係数信号と遅延素子からの出力信号とを乗算する１個の乗算器と、タップ係数信号と遅延された出力信号とを乗算させた結果を逐次累算して出力する１個の累算器と、遅延素子からの出力信号を入力クロック周波数でサンプリングするためのラッチとを備えている。
【００１２】
累算器は乗算器からの出力信号とラッチから出力されるタップ出力信号とを加算する１個の加算器と、乗算器からの出力信号と加算器からの加算結果とを切替えるセレクタと、そのセレクタの切替えを行う切替制御部と、そのセレクタの出力信号を保持するためのラッチとから構成されている。
【００１３】
上記のように構成することで、本発明のＦＩＲディジタルフィルタは、回路規模の大幅な削減が可能となるので、従来よりも小規模の集積回路によって実現可能になるとともに、ＦＩＲディジタルフィルタが有する良好な特性を維持することも可能となる。
【００１４】
また、本発明のＦＩＲディジタルフィルタは、ｍタップのフィルタを構成する場合、クロックをｍ倍にすれば実現可能となる。つまり、本発明のＦＩＲディジタルフィルタは、タップ数を増大させる場合、クロック発生部で入力クロックの倍数ｍを大きくすることで、多タップ数のフィルタが実現可能となる。この場合にはｍがタップ数となり、例えばｍ＝２０００とすると、２０００タップ数のフィルタが実現可能となる。
【００１５】
【発明の実施の形態】
次に、本発明の実施の形態について図面を参照して説明する。図１は本発明の実施の形態によるＦＩＲ（Ｆｉｎｉｔｅ  Ｉｍｐｕｌｓｅ  Ｒｅｓｐｏｎｓｅ）ディジタルフィルタの構成を示すブロック図である。図１において、本発明の実施の形態によるＦＩＲディジタルフィルタはデータ信号入力端子１２から入力される入力データ信号ｄ１をサンプリングしかつクロック信号入力端子１１から入力される入力クロック信号ａ１からｍ倍したクロックｂ１と入力クロック信号ａ１の位相制御したクロックｃ１，ｈ１とを発生するクロック発生部２１と、フィルタの演算処理を行う積和演算器３１と、積和演算器３１内から出力されるタップ出力信号ｇ１を入力クロック周波数（クロックｃ１）でサンプリングするためのラッチ４２とを備えている。
【００１６】
積和演算器３１は入力信号を（ｍ−１）段遅延させる遅延素子６１と、その遅延素子６１の出力信号ｅ１と入力データ信号ｄ１とを切替えるセレクタ５１と、そのセレクタ５１の切替えを行う切替制御部１０１と、タップ係数信号ｆ１を格納するメモリ１１２と、そのメモリ１１２の出力制御を行うメモリ制御部１１１と、このメモリ１１２から出力されるタップ係数信号ｆ１と遅延素子６１からの出力信号ｅ１とを乗算する１個の乗算器７１と、タップ係数信号ｆ１と遅延された出力信号ｅ１とを乗算させた結果を逐次累算して出力する１個の累算器９１と、遅延素子６１の出力信号ｅ１を入力クロック周波数（クロックｈ１）でサンプリングするためのラッチ４１とを備えている。
【００１７】
累算器９１は乗算器７１からの出力信号ｍ１とラッチ４３から出力されるタップ出力信号ｇ１とを加算する１個の加算器８１と、乗算器７１からの出力信号ｍ１と加算器８１からの加算結果ｎ１とを切替えるセレクタ５２と、そのセレクタ５２の切替えを行う切替制御部１０２と、そのセレクタ５２の出力信号ｑ１を保持するためのラッチ４３とから構成されている。
【００１８】
図２は本発明の実施の形態によるＦＩＲディジタルフィルタの動作を示すタイミングチャートである。図２はｍ＝４の場合を例にしたタイミングを示しており、これら図１と図２とを用いて本発明の実施の形態によるＦＩＲディジタルフィルタの動作について説明する。
【００１９】
クロック信号入力端子１１から入力クロック信号ａ１が入力され、この入力クロック信号ａ１はデータ信号入力端子１２からの入力データ信号ｄ１をサンプリングしているクロックである。したがって、データ信号入力端子１２から入力されるデータ信号ｄ１は入力クロック信号ａ１でサンプリングされている。上記の入力クロック信号ａ１と入力データ信号ｄ１とのタイミング関係は図２に示す通りである。
【００２０】
クロック発生部２１は入力クロック信号ａ１をｍ倍したクロックｂ１として出力しており、積和演算器３１ではこのｍ倍したクロックｂ１に基づいてフィルタの演算処理を行っている。例えば、ｍ＝４の場合のクロック発生部２１から出力される４倍したクロックｂ１と入力クロック信号ａ１とのタイミング関係は図２に示す通りである。
【００２１】
また、上記のクロック発生部２１ではラッチ４１にクロックｈ１を供給し、ラッチ４２にクロックｃ１を供給している。上記の各クロックｃ１，ｈ１は入力クロック信号ａ１と同じサンプリング周波数のクロックであるが、上記の各ラッチ４１，４２に入力されるデータ信号とのタイミングを合わせるために、入力クロック信号ａ１の位相を制御して生成され、それぞれのラッチ４１，４２へ出力されている。
【００２２】
セレクタ５１は入力データ信号ｄ１と（ｍ−１）段遅延される遅延素子６１から出力されるデータ信号ｅ１とを選択的に出力し、遅延素子６１へ供給している。切替制御部１０１では、ｍ回に１回、Ｈｉｇｈパルスを出力する切替制御信号ｒ１をセレクタ５１へ供給し、セレクタ５１の切替えを行っている。例えば、ｍ＝４の場合の上記の遅延素子６１と切替制御部１０１とセレクタ５１とのタイミング関係は図２に示す通りである。
【００２３】
図２において、切替制御部１０１の出力である切替制御信号ｒ１は４回に１回、Ｈｉｇｈパルスとして出力される。セレクタ５１では上記の切替制御信号ｒ１がＨｉｇｈパルス時に入力データ信号（Ａ，Ｂ，Ｃ，Ｄ）を選択し、上記の切替制御信号ｒ１がＬｏｗパルス時に遅延素子６１の出力データ［（Ｘ，Ｙ，Ｚ）、（Ｙ，Ｚ，Ａ）、（Ｚ，Ａ，Ｂ）、（Ａ，Ｂ，Ｃ）］を選択して出力する。
【００２４】
上記のセレクタ５１の出力データｋ１は遅延素子６１に入力され、３段遅延された後、再びセレクタ５１へ入力される。このように、セレクタ５１と遅延素子６１との間でのデータ処理は、巡回的に繰り返し行われ、上記の遅延素子６１から出力されるデータ信号ｅ１はラッチ４１に供給される。
【００２５】
上記のラッチ４１に使用されるクロックｈ１は、図２に示すように、上記の遅延素子６１から出力されるデータ信号ｅ１とのタイミングを合わせるため、クロック発生部２１で入力クロック信号ａ１が位相制御されて出力されるものである。したがって、上記のデータ信号ｅ１はラッチ４１を介して、入力クロック信号ａ１と同じ周波数でサンプリングされたデータ信号ｓ１（ここではＷ，Ｘ，Ｙ，Ｚ）としてデータ信号出力端子１４へ出力される。
【００２６】
メモリ制御部１１１ではメモリ１１２からの出力タイミングを制御し、タップ係数信号ｆ１を出力している。上記のタップ係数信号ｆ１は、図４に示す従来例のタップ係数Ｈ０〜Ｈｎに対応している。そして、このタップ係数は全てメモリ１１２に格納されており、メモリ制御部１１１の制御によってｍ倍したクロックｂ１で出力され、乗算器７１へと供給されている。
【００２７】
また、上記の遅延素子６１から出力されるデータ信号ｅ１も乗算器７１へと供給されているので、上記の乗算器７１は上記の遅延素子６１からの出力に対して、タイミングを合わせて出力されたタップ係数信号ｆ１との乗算を行う。上記の乗算器７１への入力タイミングは、例えば、ｍ＝４の場合、図２に示す通りである。
【００２８】
図２において、タップ係数信号ｆ１は上記の遅延素子６１から出力されるデータ信号ｅ１を４個毎に［ここでは（Ｘ，Ｙ，Ｚ，Ａ）とする］、タイミングを合わせ、４タップ分（ここでは、Ｈ３〜Ｈ０）を出力し、Ｘ＊Ｈ３、Ｙ＊Ｈ２、Ｚ＊Ｈ１、Ａ＊Ｈ０と順々に乗算されている。この乗算器７１による結果ｍ１は、図２に示すように、Ｍｂ０〜Ｍｂ３として出力される。
【００２９】
上記の乗算器７１からの出力のうちの一方はセレクタ５２へ直接供給される。上記の乗算器７１からの出力のうちのもう一方は加算器８１へ供給される。上記の加算器８１は乗算器７１からの出力ｍ１とラッチ４３から出力されるタップ出力信号ｇ１との加算を行い、その加算結果をセレクタ５２へ供給する。
【００３０】
切替制御部１０２ではｍ回に１回、Ｈｉｇｈパルスを出力する切替制御信号ｐ１としてセレクタ５２の切替えを行っている。例えば、ｍ＝４の場合、上記のラッチ４３と加算器８１と切替制御部１０２とセレクタ５２とのタイミング関係は図２に示す通りである。
【００３１】
図２において、切替制御部１０２の出力である切替制御信号ｐ１は、４回に１回、Ｈｉｇｈパルスが出力されている。セレクタ５２では上記の切替制御信号ｐ１がＨｉｇｈパルス時に乗算器７１の出力データｍ１（Ｍｂ０，Ｍｃ０，Ｍｄ０，Ｍｅ０）を選択し、上記の切替制御信号ｐ１がＬｏｗパルス時に加算器８１の出力データｎ１（Ａｂ１〜Ａｂ３，Ａｃ１〜Ａｃ３，Ａｄ１〜Ａｄ３）を選択して出力している。
【００３２】
上記のセレクタ５２の出力データｑ１はラッチ４３で１段遅延された後、再び加算器８１へ入力される。このように、上記の切替制御部１０２と加算器８１とセレクタ５２とラッチ４３とによって累算器９１を構成しており、この累算器９１は乗算された結果を逐次累算して出力している。
【００３３】
尚、上記の累算器９１はセレクタ５２で乗算器７１の出力データを選択することで、これまでの累算結果をクリアし、累算の初期値となって再び逐次累算を始める。ここまでの演算処理またはデータ処理は、上記のセレクタ５１〜累算器９１によって積和演算器３１として構成されている。
【００３４】
ラッチ４２に使用されるクロックｃ１は、図２に示すように、上記の積和演算器３１の累算器９１から出力されるタップ出力信号ｇ１とのタイミングを合わせるため、クロック発生部２１で入力クロック信号ａ１が位相制御されて出力されるものである。したがって、タップ出力信号ｇ１はラッチ４２を介して、入力クロック信号ａ１と同じ周波数でサンプリングされたタップ出力信号ｔ１（ここではＡｚ３，Ａａ３，Ａｂ３，Ａｃ３）として、フィルタ信号出力端子１３へ出力される。
【００３５】
上述した如く、本発明の実施の形態によるＦＩＲディジタルフィルタは、回路規模を大幅に削減することができる。例えば、従来のＦＩＲディジタルフィルタで１０００タップ数の場合，１０００個の乗算器と９９９個の加算器とが必要であるのに対し、本発明の実施の形態によるＦＩＲディジタルフィルタでは、ｍ倍したクロックを１０００倍に設定すると、１個の乗算器７１と１個の累算器９１とで済む。よって、これら回路規模の大幅な削減が可能であり、またＦＩＲディジタルフィルタが有する良好な特性を維持することができる。
【００３６】
さらに、本発明の実施の形態によるＦＩＲディジタルフィルタでは、タップ数を増大させる場合、クロック発生部２１で入力クロック信号ａ１の倍数ｍを大きくすることで、多タップ数のフィルタを実現することができる。つまり、ｍがタップ数となり、例えば、ｍ＝２０００とすると、２０００タップ数のフィルタが実現可能となる。
【００３７】
図３は本発明の一実施例によるＦＩＲディジタルフィルタの構成を示すブロック図である。図３において、本発明の一実施例によるＦＩＲディジタルフィルタは、直列に５段接続した積和演算器３１〜３５と、各積和演算器３１〜３５からのタップ出力信号ｇ１〜ｇ５を加算する加算器１２１と、クロック発生器２１と、ラッチ４２とから構成されている。尚、クロック発生器２１の動作は上述した本発明の実施の形態と同様であるため、その動作についての説明は省略する。
【００３８】
データ信号入力端子１２から入力される入力データ信号ｄ１は、１段目の積和演算器３１へ供給され、上述した積和演算器３１の動作によって、積和演算器３１からデータ信号ｓ１が出力され、２段目の積和演算器３２へと供給される。以下、この動作と同様に、３段目の積和演算器３３、４段目の積和演算器３４、５段目の積和演算器３５で動作が行われる。
【００３９】
また、上記の各積和演算器３１〜３５から出力されるタップ出力信号ｇ１〜ｇ５は、最終的な累算結果を算出するために加算器１２１へと供給される。上記の加算器１２１の出力である加算結果ｕ１は、上述した通り、ラッチ４２を介して、入力クロック信号ａ１と同じ周波数でサンプリングされたタップ出力信号ｔ１としてフィルタ信号出力端子１３へ出力される。
【００４０】
本実施例は、ｍ倍したクロック信号が、ディジタルフィルタ内で周波数制限された場合でも、積和演算器３１〜３５を直列接続することで、従来のディジタルフィルタよりも回路規模を大幅に削減することができることを示した例である。例えば、従来のＦＩＲディジタルフィルタで１０００タップ数の場合、１０００個の乗算器と９９９個の加算器とが必要であるのに対し、本実施例では、積和演算器３１〜３５内の最大クロック周波数が入力クロックの２００倍と制限されていても、積和演算器３１〜３５内の５個の乗算器及び５個の累算器と１個の加算器１２１とで済む。したがって、これら回路規模の削減が可能であり、またＦＩＲディジタルフィルタが有する良好な特性を維持することができる。
【００４１】
さらに、タップ数を増大させる場合には、積和演算器の数をｎ段接続することで多タップ数のフィルタが可能となる。つまり、上記のようなディジタルフィルタ内で最大クロック周波数が制限されている場合、ｍ×ｎがタップ数となり、例えば、ｍ＝２００、ｎ＝１０とすると、２０００タップ数のフィルタが実現可能となる。
【００４２】
このように、本実施例によるＦＩＲディジタルフィルタでは、回路規模の大幅な削減が可能であり、またＦＩＲディジタルフィルタが有する良好な特性を維持することもできる。
【００４３】
さらに、本実施例によるＦＩＲディジタルフィルタでは、タップ数を増大させる場合、クロック発生器２１における入力クロック信号ａ１の倍数ｍを大きくすることで、多タップ数のフィルタを実現することができる。この場合にはｍがタップ数となるので、例えば、ｍ＝２０００とすると、２０００タップ数のフィルタが実現可能となる。
【００４４】
【発明の効果】
以上説明したように本発明は、入力データ信号をサンプリングした入力クロック信号からｍ倍（ｍは正の整数）した第１のクロックと入力クロック信号に対して位相制御を行った第２のクロックとを発生するクロック発生器と、第１のクロックに基づいて入力データ信号に対して所定のフィルタ係数の演算処理を行ってタップ出力信号を出力する積和演算器と、積和演算器からのタップ出力信号を第１のクロックでサンプリングするラッチとを備えることによって、回路規模を小さくすることができるという効果が得られる。
【図面の簡単な説明】
【図１】本発明の実施の形態によるＦＩＲディジタルフィルタの構成を示すブロック図である。
【図２】本発明の実施の形態によるＦＩＲディジタルフィルタの動作を示すタイミングチャートである。
【図３】本発明の一実施例によるＦＩＲディジタルフィルタの構成を示すブロック図である。
【図４】従来のＦＩＲディジタルフィルタの構成を示すブロック図である。
【符号の説明】
１１  クロック信号入力端子
１２  データ信号入力端子
１３  フィルタ信号出力端子
１４  データ信号出力端子
２１  クロック発生部
３１〜３５  積和演算器
４１〜４３  ラッチ
５１，５２  セレクタ
６１  遅延素子
７１  乗算器
８１  加算器
９１  累算器
１０１，１０２  切替制御部
１１１  メモリ制御部
１１２  メモリ
１２１  加算器
【図１】
2004165945.tif 000003
【図２】
2004165945.tif 000004
【図３】
2004165945.tif 000005
【図４】
2004165945.tif 000006