(57)【要約】  本発明の適応ディジタルフィルタは、フィルタ係数の期待値に基づいて少なくとも１つの乗算器と他の乗算器とにグループ分けされた複数の乗算器３３６０〜３３６Ｎ−１を含み、入力信号とフィルタ係数との畳み込み演算によって第１の信号を生成するフィルタ部と、少なくとも１つの乗算器３３６Ｍ−１に入力される入力信号と第１の信号とを加算して第２の信号を出力する加算器３３８と、第２の信号から導出した指標値と目標信号との誤差に基づいてフィルタ係数を制御する係数制御部３１８、３１９０〜３１９Ｎ−１とを有する構成である。【特許請求の範囲】
【請求項１】
フィルタ係数の期待値に基づいて少なくとも１つの乗算器と他の乗算器とにグループ分けされた複数の乗算器を含み、入力信号と前記フィルタ係数との畳み込み演算によって第１の信号を生成するフィルタ部と、
前記少なくとも１つの乗算器に入力される前記入力信号と前記第１の信号とを加算して第２の信号を出力する加算器と、
前記第２の信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する係数制御部と、
を有する適応ディジタルフィルタ。
【請求項２】
前記少なくとも１つの乗算器は前記フィルタ係数の前記期待値に対応して設定される初期値が他の乗算器よりも大きい請求項１記載の適応ディジタルフィルタ。
【請求項３】
前記少なくとも１つの乗算器は前記フィルタ係数の前記期待値に対応して設定される初期値が他の乗算器よりも大きく、該乗算器が前記複数の乗算器に１つだけ含まれている請求項１記載の適応ディジタルフィルタ。
【請求項４】
入力信号とフィルタ係数との畳み込み演算を行う複数の乗算器を含み、該複数の乗算器のうち少なくとも１つの乗算器の出力を所定の倍率で拡大し、前記畳み込み演算の結果を第１の信号として生成するフィルタ部と、
前記第１の信号から導出した指標値と目標信号との誤差に基づいて前記複数の乗算器で使用される前記フィルタ係数を制御し、出力が所定の倍率で拡大された前記乗算器で使用されるフィルタ係数の生成元となる前記誤差にかかる信号を前記所定の倍率分だけ縮小する係数制御部と、
を有する適応ディジタルフィルタ。
【請求項５】
フィルタ係数の期待値に基づいて該フィルタ係数が複数のグループに分類され、
前記グループ毎に拡大の場合の前記倍率または縮小の場合の前記倍率が設定された請求項４記載の適応ディジタルフィルタ。
【請求項６】
前記入力信号は、１つの実信号から生成され、互いに位相が９０度ずれた２つの信号の一方を実部に他方を虚部に持つ複素信号であり、
前記フィルタ係数は実信号である、請求項１から５のいずれか１項に記載の適応ディジタルフィルタ。
【請求項７】
前記係数制御部は、
前記指標値と前記目標信号との誤差に応じた実信号を生成して出力する共通部と、
前記フィルタ部における畳み込み演算用の前記複数の乗算器毎に設けられ、対応する乗算器に入力される複素信号を実数化した信号と前記共通部から入力される前記実信号と現在の実フィルタ係数とに基づいて次サンプリング周期で使用する実フィルタ係数を算出する複数の個別部と、
を有する請求項６記載の適応ディジタルフィルタ。
【請求項８】
前記係数制御部は、前記第１の信号の包絡線の値を前記指標値とする請求項１から５のいずれか１項に記載の適応ディジタルフィルタ。
【請求項９】
請求項１から５のいずれか１項に記載された適応ディジタルフィルタと、
中間周波数に変換されディジタル化されたＦＭ変調信号をヒルベルト変換して生成した複素信号を前記適応ディジタルフィルタに入力するヒルベルト変換器と、
を有するＦＭ受信機。
【請求項１０】
複数の乗算器を含むフィルタ部および該複数の乗算器のフィルタ係数を制御する係数制御部を有する適応ディジタルフィルタの信号処理方法であって、
フィルタ係数の期待値に基づいて前記複数の乗算器が少なくとも１つの乗算器と他の乗算器とにグループ分けされ、前記少なくとも１つの乗算器に入力される信号を前記フィルタ部の出力である第１の信号に加算する加算器を設け、
前記フィルタ部が入力信号と前記フィルタ係数との畳み込み演算によって前記第１の信号を生成し、
前記加算器が前記少なくとも１つの乗算器に入力される前記入力信号と前記第１の信号とを加算して第２の信号を出力し、
前記係数制御部が前記第２の信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する、信号処理方法。
【請求項１１】
前記少なくとも１つの乗算器は前記フィルタ係数の前記期待値に対応して設定される初期値が他の乗算器よりも大きい請求項１０記載の信号処理方法。
【請求項１２】
前記少なくとも１つの乗算器は前記フィルタ係数の前記期待値に対応して設定される初期値が他の乗算器よりも大きく、該乗算器が前記複数の乗算器に１つだけ含まれている請求項１０記載の信号処理方法。
【請求項１３】
複数の乗算器を含むフィルタ部および該複数の乗算器のフィルタ係数を制御する係数制御部を有する適応ディジタルフィルタの信号処理方法であって、
前記フィルタ部が入力信号とフィルタ係数との畳み込み演算を行い、前記複数の乗算器のうち少なくとも１つの乗算器の出力を所定の倍率で拡大し、前記畳み込み演算の結果を第１の信号として生成し、
前記係数制御部が前記第１の信号から導出した指標値と目標信号との誤差に基づいて前記複数の乗算器で使用される前記フィルタ係数を制御し、出力が所定の倍率で拡大された前記乗算器で使用されるフィルタ係数の生成元となる前記誤差にかかる信号を前記所定の倍率分だけ縮小する、信号処理方法。
【請求項１４】
フィルタ係数の期待値に基づいて該フィルタ係数を複数のグループに分類し、
前記グループ毎に拡大の場合の前記倍率または縮小の場合の前記倍率を設定する、請求項１３記載の信号処理方法。
【請求項１５】
前記入力信号は、１つの実信号から生成され、互いに位相が９０度ずれた２つの信号の一方を実部に他方を虚部に持つ複素信号であり、
前記フィルタ係数は実信号である、請求項１０から１４のいずれか１項に記載の信号処理方法。
【請求項１６】
前記係数制御部が、前記指標値と前記目標信号との誤差に応じた実信号を生成し、
前記係数制御部が、前記複数の乗算器毎に、対応する乗算器に入力される複素信号を実数化した信号と前記共通部から入力される前記実信号と現在の実フィルタ係数とに基づいて次サンプリング周期で使用する実フィルタ係数を算出する、請求項１５記載の信号処理方法。
【請求項１７】
前記係数制御部が前記第１の信号の包絡線の値を前記指標値とする請求項１０から１４のいずれか１項に記載の信号処理方法。
【請求項１８】
複数の乗算器を含むフィルタ部および該複数の乗算器のフィルタ係数を制御する係数制御部を有する適応ディジタルフィルタの動作をコンピュータに実行させるためのプログラムであって、
フィルタ係数の期待値に基づいて前記複数の乗算器が少なくとも１つの乗算器と他の乗算器とにグループ分けされ、前記少なくとも１つの乗算器に入力される信号を前記フィルタ部の出力である第１の信号に加算する加算器を設け、
前記フィルタ部が入力信号と前記フィルタ係数との畳み込み演算によって前記第１の信号を生成し、
前記加算器が前記少なくとも１つの乗算器に入力される前記入力信号と前記第１の信号とを加算して第２の信号を出力し、
前記係数制御部が前記第２の信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する処理を前記コンピュータに実行させるためのプログラム。
【請求項１９】
前記少なくとも１つの乗算器は前記フィルタ係数の前記期待値に対応して設定される初期値が他の乗算器よりも大きい請求項１８記載のプログラム。
【請求項２０】
前記少なくとも１つの乗算器は前記フィルタ係数の前記期待値に対応して設定される初期値が他の乗算器よりも大きく、該乗算器が前記複数の乗算器に１つだけ含まれている請求項１８記載のプログラム。
【請求項２１】
複数の乗算器を含むフィルタ部および該複数の乗算器のフィルタ係数を制御する係数制御部を有する適応ディジタルフィルタの動作をコンピュータに実行させるためのプログラムであって、
前記フィルタ部が入力信号とフィルタ係数との畳み込み演算を行い、前記複数の乗算器のうち少なくとも１つの乗算器の出力を所定の倍率で拡大し、前記畳み込み演算の結果を第１の信号として生成し、
前記係数制御部が前記第１の信号から導出した指標値と目標信号との誤差に基づいて前記複数の乗算器で使用される前記フィルタ係数を制御し、出力が所定の倍率で拡大された前記乗算器で使用されるフィルタ係数の生成元となる前記誤差にかかる信号を前記所定の倍率分だけ縮小する処理を前記コンピュータに実行させるためのプログラム。
【請求項２２】
フィルタ係数の期待値に基づいて該フィルタ係数を複数のグループに分類し、
前記グループ毎に拡大の場合の前記倍率または縮小の場合の前記倍率を設定する処理をさらに有する請求項２１記載のプログラム。
【請求項２３】
前記入力信号は、１つの実信号から生成され、互いに位相が９０度ずれた２つの信号の一方を実部に他方を虚部に持つ複素信号であり、
前記フィルタ係数は実信号である、請求項１８から２２のいずれか１項に記載のプログラム。
【請求項２４】
前記係数制御部が、前記指標値と前記目標信号との誤差に応じた実信号を生成し、
前記係数制御部が、前記複数の乗算器毎に、対応する乗算器に入力される複素信号を実数化した信号と前記共通部から入力される前記実信号と現在の実フィルタ係数とに基づいて次サンプリング周期で使用する実フィルタ係数を算出する、請求項２３記載のプログラム。
【請求項２５】
前記係数制御部が前記第１の信号の包絡線の値を前記指標値とする請求項１８から２２のいずれか１項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、適応ディジタルフィルタに関し、特にＦＭ（Frequency  Modulation）受信機のマルチパス等化器などに好適な適応ディジタルフィルタ、ＦＭ受信機、信号処理方法、および、コンピュータに実行させるためのプログラムに関する。
【背景技術】
【０００２】
ＦＭラジオ放送やテレビ放送に広く用いられているＦＭ変調波は、正弦波のキャリア信号を楽音信号により位相変調した信号であり、雑音耐性が高く、１５kHzという広帯域な楽音信号を低い歪率で伝送することができる。しかし、電波が直接到達する経路以外にビルなどで反射し遅延して到達する経路があるマルチパス伝搬路では、直接波とともに受信される強い反射波の影響により復調に必要な位相情報が乱され、復調信号に歪が生じる。マルチパス伝搬路のために生じたこの歪をマルチパス歪と呼ぶ。またマルチパス伝搬路の特性を補償することによりマルチパス歪を低減する等化器は、マルチパス等化器あるいはマルチパス歪キャンセラと呼ばれる。【０００３】
マルチパス等化器は、マルチパス伝搬路の逆特性を持つフィルタ、すなわち逆フィルタに受信信号を通すことで、受信信号におけるマルチパスの影響を補償する。マルチパス伝搬路の特性は環境によって変化するため、逆フィルタの特性もその時々の状態に応じて最適化する必要がある。このため、逆フィルタとしては一般に適応ディジタルフィルタが使用される。【０００４】
適応ディジタルフィルタとは、フィルタ係数を環境の変化に応じて自動的に更新する機能を持つフィルタである。フィルタ係数を時点毎に計算するアルゴリズムは適応アルゴリズム（adaptive  algorithm）と言い、代表的なものにＬＭＳ（Least  Mean  Square）アルゴリズムがある。ＬＭＳアルゴリズムは、広い意味で、２乗平均誤差を最急降下法に基づいて最小にする方式であり、安定性があり、演算量が少ないという利点がある。また、複素ＬＭＳアルゴリズムという適応アルゴリズムも知られている。これは、入力信号、出力信号、目標信号およびフィルタ係数がそれぞれ複素量である場合にＬＭＳアルゴリズムを拡張したものであり、例えば入力が狭帯域高周波信号であるときに、その同相成分と直角成分を分離して適応する場合に用いられる。【０００５】
他方、適応ディジタルフィルタを用いて実現される従来の等化器は、その適応のために参照信号（トレーニング信号）を必要とし、通信の中断や冗長な参照信号による通信効率の低下を招いていた。これに対して近年開発されたブラインド等化器と呼ばれる等化器は、適応化のための参照信号を必要とせず受信信号のみから信号の復元等化を行う。このようなブラインド等化に適するアルゴリズムをブラインドアルゴリズムと呼び、その代表的なものとして、ＣＭＡ（Constant  Modulus  Algorithm:コンスタントモジュラスアルゴリズム）がある。ＣＭＡの一例が、C.  Richard  Johson,  Jr.、P.Schniter、T.J.Endres、J.D.Behm,  D.  R.  Brown、Raul  A.Casas、"Blind  Equalization  Using  the  Constant  Modulus  Criterion:A  Review、"Proceedings  of  IEEE、Vol.86、No.10、Oct.1998.（以下では、非特許文献１と称する）に開示されている。【０００６】
ＣＭＡは、非特許文献１に示されるように、フィルタ出力の包絡線、高次統計量など、出力信号に関する統計量を指標として、この指標が目標値に近づくようにフィルタ係数を更新するアルゴリズム一般を指す。ＦＭ変調のように変調波の振幅が一定である定振幅変調波を用いる場合が、J.R.Treichler,  and  B.G.Agee,  "A  New  Approach  to  Multipath  Correction  of  constant  Modulus  Signals"  IEEE  Transactions  on  Acoustics,  Speech,  and  Signal  Processing,  Vol.31  No.2,pp.459-472,Apr.1983.（以下では、非特許文献２と称する）に開示されている。非特許文献２に示されるように、定振幅変調波を用いる場合は、指標として、フィルタ出力の包絡線、すなわち振幅を使用し、フィルタを通した後の信号の包絡線の値と目標値との誤差が最小となるようにフィルタ係数を更新する。これにより、包絡線の歪の補正に伴い、位相の歪も補正され、マルチパス伝搬路の反射波による影響が除去される。ここで、ＣＭＡは適応アルゴリズムとは別の概念である。ＣＭＡにおいてフィルタ係数を各時点で計算するための適応アルゴリズムとしては、上述したＬＭＳアルゴリズムなどの適応アルゴリズムが使用される。【０００７】
上述のようにフィルタの出力信号の包絡線の値を一定に制御するためには、包絡線の値を瞬時に抽出する必要がある。その代表的な手法に複素信号化処理がある。複素信号化処理では、或る実信号f1に対して位相が９０度（π／２）遅れた実信号f2をヒルベルト変換器などによって生成し、f1を実部に、f2を虚部にもった複素信号（一般に解析信号と呼ばれる）を生成する。こうすると、この実信号の包絡線の値は、複素信号の実部と虚部の２乗和を計算することによって瞬時に求めることができる。ただし、フィルタの出力信号に対して複素信号化処理を施すと、係数更新ループ中に複素信号化処理による遅延が入ってループの不安定要因になるため、入力信号に対して複素信号化処理を施す。この場合、入力信号が複素信号となるので、適応アルゴリズムとして複素ＬＭＳアルゴリズムなど複素量が扱えるアルゴリズムを使用する。この方法を第１の従来技術と呼ぶ。【０００８】
第１の従来技術を用いた適応ディジタルフィルタの構成を図１に示す。入力信号X（k）は図示しないヒルベルト変換器により複素信号となっている。この複素信号を入力として複素フィルタ係数W（k）を畳み込み、複素信号の出力信号y（k）を得る。複素フィルタ係数W（k）は、出力信号y（k）の包絡線の値が予め規定した目標値に近づくように、複素信号を扱えるように拡張した適応アルゴリズムにより更新される。この適応ディジタルフィルタのアルゴリズムは以下のように表現される。【０００９】
W（k+1）＝W（k）−μ（｜y（k）｜ｐ−yref0）ｑy（k）XＨ（k）    …（1）
y（k）＝WＴ（k）X（k）                                        …（2）
W（k）＝［w0（k）,w1（k）,…,wN-1（k）］Ｔ                      …（3）
X（k）＝［x（k）,x（k-1）,…,x（k-N+1）］Ｔ                      …（4）
ここで、W（k）はフィルタ係数ベクトルを表し、X（k）は複素信号ベクトルを表し、kはサンプルインデックスを表し、Nはフィルタのタップ数を表す。また、y（k）は出力信号であり、yref0は包絡線目標値であり、μはフィルタ係数の更新量を決定するパラメータである。また、Hは複素共役転置を表し、Tは転置を表す。p,  qは、包絡線目標値に対する誤差の評価関数を定める定数であり、例えばp=1,  q=1とする。【００１０】
第１の従来技術では、複素信号化処理を適用することにより位相が９０度（π／２）ずれた２つの信号を生成したが、特開２００５−６４６１８号公報（以下では、特許文献１と称する）、および「伊丹  誠,  羽鳥  光俊,  塚本  憲男,  "FMマルチパスひずみキャンセラの試作",  1986年テレビジョン学会全国大会  355ページから356ページ」（以下では、非特許文献３と称する）に見られるように、入力信号を標本化する際に搬送周波数の（４／奇数）倍の周波数で標本化すれば、隣り合った標本点の位相が９０度ずれるようになる。こうすれば、実数を扱う適応アルゴリズムをそのまま使用することができ、出力の包絡線の値を求める際には隣り合った標本点の２乗和を計算すればよくなる。この方法を第２の従来技術と呼ぶ。【００１１】
第２の従来技術を用いた適応ディジタルフィルタの構成を図２に示す。入力信号Xr（k）は実信号であり、この実信号を入力として実信号のフィルタ係数Wr（k）を畳み込み、実信号の出力信号yr（k）を得る。フィルタ係数Wr（k）は、出力信号yr（k）の包絡線が予め規定した目標値に近づくように、実係数を扱う適応アルゴリズムにより更新される。この適応ディジタルフィルタのアルゴリズムは以下のように表現される。【００１２】
Wr（k+1）＝Wr（k）−μ（Env［yr（k）］−yref0）yr（k）Xr（k）  …（5）
yr（k）＝WrT（k）Xr（k）                                          …（6）
Env［yr（k）］＝（yr２（k-1）＋yr２（k））１／２                    …（7）
Wr（k）＝Re［W（k）］                                            …（8）
Xr（k）＝Re［X（k）］                                            …（9）
ここで、Wr（k）は実係数ベクトルを表し、Xr（k）は実信号ベクトルを表し、Env［  ］は包絡線の近似値を得る操作を表し、Re［  ］は複素数の実部を取り出す操作を表し、yr（k）は実数出力信号を表す。
【発明の開示】
【００１３】
従来の適応ディジタルフィルタの問題点は、演算量が多く大規模なハードウェアが必要になることである。その理由は次の通りである。
【００１４】
第１の理由は、フィルタ係数のビット数が大きいことに起因する。適応ディジタルフィルタには、各フィルタ係数の現在値を保持する記憶部（遅延器）や各フィルタ係数を被乗数とする乗算器がフィルタ係数の数（タップ数）だけ必要であり、１つフィルタ係数のビット数が僅かでも全体としてのハードウェア量は多くなり、またビット数の多い数値の演算は演算量が増えることになる。
【００１５】
第２の理由は、複素信号処理に起因する。すなわち、図１に示した適応ディジタルフィルタでは、入力信号X（k）、フィルタ係数W（k）、出力信号y（k）など、ほとんど全ての信号処理が複素数で行われる。複素数の乗算１回は、実数乗算４回と加算２回に相当する。ＦＭ受信機用のマルチパス等化器では、多くのタップを有するフィルタの畳み込み演算および係数更新演算を短いサンプリング周期毎に実行しなければならないため、演算量が膨大になる。
【００１６】
なお、図２に示した適応ディジタルフィルタでは、サンプリング周波数が中間周波信号の中心周波数からみて正確に（４／奇数）倍であれば、包絡線の計算精度も高く、図１の適応ディジタルフィルタと同等の性能が得られ、しかも演算量が約２５％に削減できる。しかし、サンプリング周波数の制限が厳しく、任意のサンプリング周波数で設計できないという別の課題がある。若し、サンプリング周波数が中間周波信号の中心周波数の（４／奇数）倍からずれると、包絡線の計算精度が低下するため、マルチパス等化能力が劣化する。
【００１７】
本発明はこのような事情に鑑みて提案されたものであり、その目的は、演算量およびハードウェア量を削減可能な適応ディジタルフィルタ、ＦＭ受信機、信号処理方法、およびコンピュータに実行させるためのプログラムを提供することにある。
【００１８】
上記目的を達成するための本発明の適応ディジタルフィルタは、フィルタ係数の期待値に基づいて少なくとも１つの乗算器と他の乗算器とにグループ分けされた複数の乗算器を含み、入力信号とフィルタ係数との畳み込み演算によって第１の信号を生成するフィルタ部と、少なくとも１つの乗算器に入力される入力信号と第１の信号とを加算して第２の信号を出力する加算器と、第２の信号から導出した指標値と目標信号との誤差に基づいてフィルタ係数を制御する係数制御部と、を有する構成である。
【００１９】
本発明によれば、グループ分けにより、少なくとも１つの乗算器は他の乗算器と比べてフィルタ係数が異なっている。この１つの乗算器に入力される入力信号は、そのままであればフィルタ係数１の乗算器で乗算された値と同等であり、この入力信号を取り出してフィルタ部の出力の第１の信号に加算して第２の信号を生成するとともに、上記乗算器における乗算結果に上記入力信号分が含まれないように指標値と目標信号との誤差に基づいて上記乗算器のフィルタ係数を小さくする制御を行うことで、フィルタ部内のフィルタ係数のばらつきが従来よりも小さい値に抑えられる。そのため、畳み込み演算用の乗算器やフィルタ係数を保持する遅延器などに必要なビット数が低減し、演算量の削減とハードウェア量の削減が可能になる。
【００２０】
また、本発明の適応ディジタルフィルタは、入力信号とフィルタ係数との畳み込み演算を行う複数の乗算器を含み、複数の乗算器のうち少なくとも１つの乗算器の出力を所定の倍率で拡大し、畳み込み演算の結果を第１の信号として生成するフィルタ部と、第１の信号から導出した指標値と目標信号との誤差に基づいて複数の乗算器で使用されるフィルタ係数を制御し、出力が所定の倍率で拡大された乗算器で使用されるフィルタ係数の生成元となる誤差にかかる信号を所定の倍率分だけ縮小する係数制御部と、を有する構成である。
【００２１】
本発明によれば、畳み込み演算用の乗算器のうち少なくとも１つの乗算器の出力信号を拡大し、その乗算器で使用するフィルタ係数の生成元となる誤差にかかる信号を拡大に見合った分だけ縮小しているため、畳み込み演算用の乗算器に必要なフィルタ係数が実質的に従来よりも小さな値で済む。そのため、畳み込み演算用の乗算器やフィルタ係数を保持する遅延器などに必要なビット数を減らすことができ、演算量の削減とハードウェア量の削減が可能になる。
【００２２】
さらに、上記目的を達成するための本発明のＦＭ受信機は、上記本発明の適応ディジタルフィルタと、中間周波数に変換されディジタル化されたＦＭ変調信号をヒルベルト変換して生成した複素信号を前記適応ディジタルフィルタに入力するヒルベルト変換器と、を有する構成である。
【００２３】
上述したように、本発明では、適応ディジタルフィルタを実現するための信号処理の演算量を削減することができる。その理由は、畳み込み演算用の乗算器で使用するフィルタ係数が従来よりも実質的に小さな値で済むからである。
【図面の簡単な説明】
【００２４】
【図１】図１は第１の従来技術にかかる適応ディジタルフィルタのブロック図である。
【図２】図２は第２の従来技術にかかる適応ディジタルフィルタのブロック図である。
【図３】図３は本発明の第１の実施の形態にかかる適応ディジタルフィルタのブロック図である。
【図４】図４は本発明の第１の実施の形態にかかる適応ディジタルフィルタの動作を示すフローチャートである。
【図５】図５適応ディジタルフィルタのフィルタ係数の収束時点のシミュレーション結果を示す図である。
【図６】図６は本発明の第２の実施の形態にかかる適応ディジタルフィルタのブロック図である。
【図７】図７は本発明の第３の実施の形態にかかる適応ディジタルフィルタのブロック図である。
【図８】図８は本発明の第４の実施の形態にかかる適応ディジタルフィルタのブロック図である。
【図９】図９は本発明の第５の実施の形態にかかる適応ディジタルフィルタのブロック図である。
【図１０】図１０本発明の第６の実施の形態にかかる適応ディジタルフィルタのブロック図である。
【図１１】図１１は本発明の第７の実施の形態にかかる適応ディジタルフィルタのブロック図である。
【図１２】図１２は本発明の第７の実施の形態にかかる適応ディジタルフィルタで使用するグループ処理部の実施例のブロック図である。
【図１３】図１３は本発明の第７の実施の形態にかかる適応ディジタルフィルタで使用する個別処理部の実施例のブロック図である。
【図１４】図１４は本発明の実施の形態にかかるＦＭ受信機のブロック図である。
【符号の説明】
【００２５】
１０５    ヒルベルト変換器
３０３    ステップサイズ発生回路
３０５    包絡線目標値発生回路
３０７    減算器
３０８    絶対値回路
３０９    実部抽出回路
３１０、３１１    乗算器
３１８    共通部
３１９０〜３１９Ｎ−１    個別部
３３０１〜３３０Ｎ−１    遅延器
３３１０〜３３１Ｎ−１、３４１０〜３４１Ｎ−１    乗算器
３３３０〜３３３Ｎ−１、３４３０〜３４３Ｎ−１    加算器
３３４０〜３３４Ｎ−１、３４４０〜３４４Ｎ−１    遅延器
３３５０〜３３５Ｎ−１    実部抽出回路
３３６０〜３３６Ｎ−１    乗算器
３３７１〜３３７Ｎ−１    加算器
３３８    加算器
３４９    分岐線
３３９１〜３３９Ｎ−１    遅延器
３４００〜３４０Ｎ−１    複素共役器
【発明を実施するための最良の形態】
【００２６】
（第１の実施の形態）
本発明の実施の形態の適応ディジタルフィルタの構成を説明する。図３は本実施の形態の適応ディジタルフィルタの一構成例を示すブロック図である。【００２７】
図３を参照すると、本発明の実施の形態にかかる適応ディジタルフィルタは、入力端子３０１を介して入力される複素信号（複素入力信号）と実信号のフィルタ係数（実フィルタ係数）との畳み込み演算によって複素信号の出力信号（複素出力信号）を生成して出力端子３０２に出力するフィルタ部と、複素出力信号から導出した指標値（本実施の形態の場合は包絡線の値）と目標信号との誤差に基づいてフィルタ係数を制御する係数制御部とを備えている。図３において、破線のブロックで示す共通部３１８と破線のブロックで示すＮ個（Ｎは２以上の正整数）の個別部３１９０〜３１９Ｎ−１の部分が係数制御部を構成し、それら以外の部分がフィルタ部を構成する。ここで、複素入力信号は、一つの実信号から生成した互いに位相が９０度ずれた２つの信号の一方を実部に他方を虚部に持つ複素信号である。【００２８】
フィルタ部は、それぞれ１サンプリング周期の遅延を与えるＮ−１個の遅延器３３０１〜３３０Ｎ−１からなるタップつき遅延線、複素入力信号および各遅延器３３０１〜３３０Ｎ−１の出力信号に対してフィルタ係数を乗ずるためのＮ個の乗算器３３６０〜３３６Ｎ−１、ならびにこれらＮ個の乗算器３３６０〜３３６Ｎ−１の乗算結果を順次加算するＮ−１個の加算器３３７１〜３３７Ｎ−１を含み、タップ数がＮ、すなわちフィルタ係数がＮ個のＦＩＲ（Finite  Impulse  Response）型フィルタと、遅延器３３０Ｍ−１の出力信号を取り出す分岐線３４９と、ＦＩＲ型フィルタの出力信号、すなわち加算器３３７Ｎ−１の出力信号と分岐線３４９で取り出された信号とを加算し、その結果を出力端子３０２に伝達する加算器３３８とを備えている。【００２９】
なお、遅延器３３０Ｓ（Ｓは１以上（Ｎ−１）以下の正整数のうちいずれか）、乗算器３３６Ｓおよび加算器３３７Ｓを含む構成がフィルタの基本要素であり、“タップ”と称されている。また、遅延器３３０Ｍ−１、乗算器３３６Ｍ−１および加算器３３７Ｍ−１を含むタップをセンタータップと称する。ただし、Ｍは１以上の正整数である。【００３０】
各フィルタ係数の初期値の決め方の例として、以下のような場合がある。マルチパス伝播の場合、適応ディジタルフィルタの起動前では、フィルタ部のフィルタ係数には全て同一の値が設定され、適応ディジタルフィルタが起動すると、各フィルタ係数が変化する。収束後に各タップ内のフィルタ係数の期待値が求まる。そして、求まった期待値に対応して各フィルタ係数の初期値が設定される。特に、マルチパス伝搬でない場合、すなわち直接伝搬する電波のみがある場合では、収束をさせなくてもフィルタ係数の期待値が得られ、フィルタ係数の期待値が１のタップ一つと、期待値が０のその他のタップとに分類され、それぞれの期待値が初期値として設定される。【００３１】
本実施形態では、センタータップはフィルタ係数の初期値が他のタップよりも大きい値に設定されている。【００３２】
フィルタ係数の期待値に基づいてフィルタ係数が所定の基準値以上かそれより小さいかでタップを複数のグループに分類することが可能となる。この分類方法によれば、センタータップはフィルタ係数が他のタップよりも大きいことから、センタータップと他のタップとでグループ分けされる。基準値としては、例えば、１．０である。【００３３】
分岐線３４９により取り出される信号は、入力端子３０１の入力信号を（Ｍ−１）サンプル遅延させた信号であり、この信号はセンタータップの遅延器３３０Ｍ−１から出力される信号である。すなわち、フィルタ係数の初期値が他のタップよりも大きいタップでの遅延器の出力信号に相当する。従って、本実施の形態では、センタータップの信号を直接引き出し、加算器３３８で別途加算していることになる。【００３４】
また、係数制御部は、適応アルゴリズムとしてＬＭＳを使用し、全てのフィルタ係数の制御に共通な共通部３１８と個々のフィルタ係数の制御毎の個別部３１９０〜３１９Ｎ−１とを有する構成である。【００３５】
共通部３１８は、フィルタ部の出力である複素出力信号が入力されると、複素出力信号の包絡線の値を実部と虚部の２乗和により計算して出力する絶対値回路３０８と、包絡線が収束すべき値、すなわち包絡線目標値を発生する包絡線目標値発生回路３０５と、絶対値回路３０８で求められた包絡線の値から包絡線目標値を減じた値を出力する減算器３０７と、複素出力信号が入力されると、その実部のみを抽出して出力する実部抽出回路３０９と、減算器３０７の出力と実部抽出回路３０９の出力とを乗じた結果を出力する乗算器３１０と、フィルタ係数の更新量を決定するパラメータであるステップサイズを発生するステップサイズ発生回路３０３と、乗算器３１０の出力とステップサイズとを乗じた結果を各個別部３１９０〜３１９Ｎ−１に出力する乗算器３１１とを有する構成である。【００３６】
ここで、本実施の形態の場合、フィルタ係数は複素数でなく実数になっているため、ステップサイズ発生回路３０３で発生するステップサイズを、複素フィルタ係数を使用する場合のステップサイズの約４倍に設定している。これにより、複素フィルタ係数を使用する場合と収束速度を同等にすることができる。【００３７】
また、各個別部３１９０〜３１９Ｎ−１は、複素入力信号あるいはタップつき遅延線上の対応する遅延器３３０１〜３３０Ｎ−１の出力信号が入力されると、その複素信号の実部のみを抽出して出力する実部抽出回路３３５０〜３３５Ｎ−１と、共通部３１８から入力される信号と実部抽出回路３３５０〜３３５Ｎ−１で抽出された実部とを乗じた結果を出力する乗算器３３１０〜３３１Ｎ−１と、乗算器３３６０〜３３６Ｎ−１に与えられているフィルタ係数と乗算器３３１０〜３３１Ｎ−１の出力とを加算して次サンプリング周期で使用するフィルタ係数を出力する加算器３３３０〜３３３Ｎ−１と、この加算器３３３０〜３３３Ｎ−１の出力を１サンプリング周期だけ遅延させて乗算器３３６０〜３３６Ｎ−１に出力する遅延器３３４０〜３３４Ｎ−１とを有する構成である。【００３８】
本実施の形態の適応ディジタルフィルタのアルゴリズムは以下のように表現される。【００３９】
Wr（k+1）＝Wr（k）−μ（｜y（k）｜ｐ−yref0）ｑRe［y（k）］Re［X（k）］…（10）
y（k）＝WrT（k）X（k）＋X（M-1）                                  …（11）
ここで、Wr（k）は実係数ベクトルを表し、X（k）は複素信号ベクトルを表し、Re［  ］は複素数の実部を取り出す操作を表す。また、y（k）は複素出力信号であり、kはサンプルインデックスを表し、Nはフィルタのタップ数を表し、yref0は包絡線目標値であり、μはフィルタ係数の更新量を決定するパラメータであり、X（M-1）は分岐線３４９で取り出される信号である。p,  qは、包絡線目標値に対する誤差の評価関数を定める定数であり、例えばp=1,  q=1とする。【００４０】
次に、本実施の形態の適応ディジタルフィルタの動作を説明する。【００４１】
図４は本実施の形態の適応ディジタルフィルタの動作を示すフローチャートである。適応ディジタルフィルタは、入力端子３０１を介して新たな複素入力信号が入力されると（入力処理Ｓ１）、複素入力信号に対して適応等化処理（適応等化処理Ｓ２）を行った後、適応等化処理Ｓ２による複素出力信号を出力端子３０２に出力する（出力処理Ｓ３）。続いて、パラメータを更新する処理（パラメータ更新処理Ｓ４）を行う。新たな複素入力信号が入力端子３０１を介して入力される度に、上記入力処理１からパラメータ更新処理Ｓ４までを繰り返す。適応等化処理Ｓ２は上記式（11）に基づく処理であり、パラメータ更新処理Ｓ４は上記式（10）に基づく処理である。以下に、適応等化処理Ｓ２およびパラメータ更新処理Ｓ４についての動作を詳しく説明する。【００４２】
まず、適応等化処理Ｓ２について説明する。入力端子３０１に入力された複素入力信号は、乗算器３３６０および実部抽出回路３３５０に供給されると同時に、１サンプリング周期の遅延を生じる遅延器３３０１〜３３０Ｎ−１からなるタップつき遅延線に供給される。遅延器３３０１〜３３０Ｎ−１に供給された複素信号は、１クロック毎に隣接する遅延器に転送され、各遅延器３３０１〜３３０Ｎ−１の出力信号は、対応する乗算器３３６１〜３３６Ｎ−１および対応する実部抽出回路３３５１〜３３５Ｎ−１に供給される。また、遅延器３３０Ｍ−１の出力信号は分岐線３４９により取り出され、加算器３３８へと供給される。【００４３】
乗算器３３６０では、入力端子３０１から入力された複素信号に、遅延器３３４０から供給された実数フィルタ係数を乗じ、結果を加算器３３７１に供給する。乗算器３３６１〜３３６Ｎ−１では、対応する遅延器３３０１〜３３０Ｎ−１から供給された複素信号に、対応する遅延器３３４１〜３３４Ｎ−１から供給された実数フィルタ係数を乗じ、結果を加算器３３７１〜３３７Ｎ−１に供給する。加算器３３７１〜３３７Ｎ−１は、乗算器３３６０〜３３６Ｎ−１から受けた複素信号を全て加算し、結果を加算器３３８に供給する。【００４４】
加算器３３８では、加算器３３７Ｎ−１から供給された信号と分岐線３４９により取り出された信号とを加算し、その結果を出力端子３０２に供給すると同時に、絶対値回路３０８および実部抽出回路３０９に供給する。こうして、複素入力信号と実信号のフィルタ係数との畳み込み演算によって生成された複素信号とセンタータップから取り出された複素信号とを加算した複素信号が生成され、出力される。【００４５】
次に、パラメータ更新処理Ｓ４について説明する。絶対値回路３０８は、複素出力信号を受けて、その絶対値を計算し、結果を包絡線の値として減算器３０７へと伝達する。包絡線目標値発生回路３０５は、包絡線目標値を発生し、減算器３０７へと伝達する。減算器３０７は、包絡線目標値発生回路３０５から受けた包絡線目標値を、絶対値回路３０８から受けた信号から減算し、結果を乗算器３１０へと伝達する。実部抽出回路３０９は、複素出力信号を受けて、その実部のみを抽出し、結果を乗算器３１０へと伝達する。乗算器３１０は、減算器３０７から受けた信号に、実部抽出回路３０９から受けた信号を乗じて、結果を乗算器３１１へと伝達する。ステップサイズ発生回路３０３は、フィルタ部内のフィルタ係数更新の量を決定するパラメータであるステップサイズを発生し、乗算器３１１へと供給する。乗算器３１１は、乗算器３１０から受けた信号に、ステップサイズ発生回路３０３から供給されたステップサイズを乗じて、結果を各個別部３１９０〜３１９Ｎ−１へと伝達する。【００４６】
各個別部３１９０〜３１９Ｎ−１においては、乗算器３１１から供給された信号は、乗算器３３１０〜３３１Ｎ−１に伝達される。実部抽出回路３３５０〜３３５Ｎ−１はそれぞれ、対応する遅延器３３０１〜３３０Ｎ−１または入力端子３０１から供給された複素信号の実部を抽出し、対応する乗算器３３１０〜３３１Ｎ−１へと伝達する。乗算器３３１０〜３３１Ｎ−１はそれぞれ、対応する実部抽出器３３５０〜３３５Ｎ−１から供給された実数信号と、共通部３１８から供給された実数信号を乗じて、結果を対応する加算器３３３０〜３３３Ｎ−１へと伝達する。加算器３３３０〜３３３Ｎ−１はそれぞれ、対応する乗算器３３１０〜３３１Ｎ−１から受けた実数信号に、対応する遅延器３３４０〜３３４Ｎ−１から供給された実数フィルタ係数を加算し、結果を次サンプルのフィルタ係数として、対応する遅延器３３４０〜３３４Ｎ−１へと伝達する。遅延器３３４０〜３３４Ｎ−１はそれぞれ、対応する加算器３３３０〜３３３Ｎ−１から受けた実数フィルタ係数を１サンプル遅延させて対応する乗算器３３６０〜３３６Ｎ−１へと供給するとともに、対応する加算器３３３０〜３３３Ｎ−１へと伝達する。【００４７】
次に本実施の形態の効果を説明する。【００４８】
今、マルチパス伝搬路H（z）として、
H（z）＝１＋a＊z-10                              …（12）
ただし、ａ＝0.675
を想定し、等化フィルタG（z）の初期値としてG0（z）＝z-25を用いて、マルチパス歪の除去をシミュレーションすることを考える。このマルチパス伝搬路においては、反射波は直接波より１０サンプル遅れて到達するため、理想的には、H（z）を等化するフィルタG（z）は次のようになる。【００４９】
G（z）＝z-25＊［1/H（z）］
＝z-25＊［1/（1+a＊z-10）］
＝z-25＊［1-a＊z-10+a2＊z-20-a3＊z-30+a4＊z-40-....］          …（13）
つまり、２５番目のフィルタ係数（タップ係数）が１となり、３５番目のフィルタ係数が-a、４５番目のフィルタ係数が+a2、…と、１０番目ごとに０でないフィルタ係数が現れ、他の全てのフィルタ係数は０となる。しかしながら、実際には理想通りにはならず、例えば図５に示されるようなシミュレーション結果が得られる。図５において、横軸はタップ位置、縦軸はフィルタ係数の値を示す。【００５０】
図５を参照すると、センタータップに対応する２５番目のタップの係数だけが１より大きくなり、その他のタップの係数はすべて０．５以下である。なお、１０番目ごとに０でないフィルタ係数が現れそれ以外のフィルタ係数が０になるという規則性が見られないが、この状態で十分な等化が実現されている。その理由は、１０タップ程度の時間では入力信号はほとんど一定周波数の正弦波とみなすことができ、一定周波数の正弦波は同じ周波数で位相の異なる正弦波を複数加算することにより合成することができるためである。例えば、３５番目周辺のフィルタ係数がいくつか大きくなれば、３５番目のフィルタ係数が-aまで大きくなった場合とほとんど同じ信号が得られる。【００５１】
ここで、図３の構成から分岐線３４９と加算器３３８を取り去った構成において、センタータップの信号をX（M-1）、センタータップのフィルタ係数を１＋Δh（Δh＜０．５）とすると、加算器３３６Ｍ−１の出力値は、
X（M-1）＊（１＋Δh）＝X（M-1）＋X（M-1）＊Δh              …（14）
となる。他方、図３の構成において、センタータップの遅延器３３４Ｍ−１に保持されるフィルタ係数を１だけ減らしたΔhとすると、加算器３３６Ｍ−１の出力は、X（M-1）＊Δhになる。しかし、分岐線３４９により加算器３３８に伝達される信号はX（M-1）であるため、合計すると式（14）と同じ値になる。つまり、本実施の形態によれば、センタータップの乗算器３３６Ｍ−１に与えるフィルタ係数をΔhにしても等価な動作が行われる。図５のシミュレーション結果に見られるようにセンタータップ以外のすべてのフィルタ係数の値は０．５以下なので、本実施の形態によれば、すべてのフィルタ係数として０．５以下の値を扱えればよいことになる。従って、遅延器３３４０〜３３４Ｎ−１、加算器３３３０〜３３３Ｎ−１および乗算器３３６０〜３３６Ｎ−１は、フィルタ係数として０．５以下を扱えればよい。その結果、すべてのフィルタ係数について０．５以上の値まで扱っていた従来の適応ディジタルフィルタに比べて、演算量およびハードウェア量の削減が可能になる。【００５２】
本実施の形態の適応ディジタルフィルタでは、フィルタ係数に基づいて乗算器３３６０〜３３６Ｎ−１をグループ分けすると、乗算器３３６Ｍ−１は他の乗算器と比べてフィルタ係数が異なっていると言える。この乗算器３３６Ｍ−１に入力される入力信号は、そのままであればフィルタ係数１の乗算器で乗算された値と同等であり、この入力信号を分岐線で取り出してフィルタ部の出力信号に加算して複素出力信号を生成するとともに、乗算器３３６Ｍ−１における乗算結果に上記入力信号分が含まれないように指標値と目標信号との誤差に基づいて乗算器３３６Ｍ−１のフィルタ係数を小さくする制御を行うことで、フィルタ部内のフィルタ係数のぱらつきが従来よりも小さい値に抑えられる。【００５３】
また、本実施の形態では、乗算器３３６Ｍ−１は他の乗算器と比べてフィルタ係数が大きい。乗算器３３６Ｍ−１に入力される入力信号は、そのままであればフィルタ係数１の乗算器で乗算された値と同等であり、この入力信号を分岐線３４９で取り出してフィルタ部の出力信号に加算器３３８で加算して複素出力信号を生成している。そして、乗算器３３６Ｍ−１における乗算結果に上記入力信号分が含まれないように指標値と目標信号との誤差に基づいて乗算器３３６Ｍ−１のフィルタ係数を小さくする制御を行っている。そのため、乗算器３３６Ｍ−１のフィルタ係数が実質的に初期値よりも小さな値となる。したがって、畳み込み演算用の乗算器やフィルタ係数を保持する遅延器などに必要なビット数が低減し、演算量の削減とハードウェア量の削減が可能になる。【００５４】
また、図３を参照すると明らかなように、本実施の形態の適応ディジタルフィルタでは、多くの信号が複素数ではなく、実数になっている。信号が複素数でなく、実数になることにより、図１に示した第１の従来技術と比較して、演算量は大きく削減される。何故なら、第１の従来技術による適応ディジタルフィルタではすべての信号が複素数であるために、すべての乗算器において、複素数同士の乗算を行うのに対し、本実施の形態では乗算器３３６０〜３３６Ｎ−１では複素数と実数の乗算になり、乗算器３３１０〜３３１Ｎ−１では、実数同士の乗算になるからである。複素数どうしの乗算は、実数どうしの乗算４回と実数どうしの加算２回に相当するのに対し、複素数と実数の乗算は、実数どうしの乗算２回にしか相当せず、さらに実数どうしの乗算になった場合には、実数どうしの乗算１回にしか相当しない。【００５５】
従って、第１の従来技術で複素数どうしの乗算が行われていた箇所が複素数と実数の乗算を行う乗算器３３６０〜３３６Ｎ−１に置き換わったことにより、実数同士の乗算にしてＮ回分相当が削減される。また、第１の従来技術で複素数どうしの乗算が行われていた箇所が実数どうしの乗算を行う乗算器３３１０〜３３１Ｎ−１に置き換わったことにより、実数同士の乗算にして３Ｎ回分相当、および、実数同士の加算にして２Ｎ回分相当が削減される。さらに、実部抽出回路３３５０〜３３５Ｎ−１の部分は第１の従来技術では複素共役器が必要であったため、虚数部の符号を伝達しない分だけ演算量は削減される。【００５６】
以上のことから本実施の形態では、第１の従来技術の約４０％の演算量まで削減することができる。【００５７】
さらに本実施の形態では、フィルタ部の出力信号は複素数で得られるため、出力信号の包絡線の値、すなわち振幅は、図３の絶対値回路３０８の出力信号として瞬時かつ正確に得られる。したがって、本実施の形態によれば、第２の従来技術におけるようなサンプリング周波数の制約はない。
（第２の実施の形態）
本発明の第２の実施の形態にかかる適応ディジタルフィルタについて図６のブロック図を用いて説明する。なお、図３に示した係数制御部の共通部３１８を図に示すことを省略している。【００５８】
図６を参照すると、本発明の第２の実施の形態にかかる適応ディジタルフィルタは、入力端子３０１を介して入力される入力信号を（M-1）サンプル遅延させるためのM-1個の遅延器３３９１〜３３９Ｍ−１および分岐線３４９を通じて加算器３３８に伝達するようにした点で、図３の第１の実施の形態にかかる適応ディジタルフィルタと相違する。【００５９】
本実施の形態では、M-1個の遅延器３３９１〜３３９Ｍ−１が新たに必要になるが、分岐線３４９によって加算器３３８に伝達される信号は第１の実施の形態と同じであるため、第１の実施の形態と同様の効果が得られる。
（第３の実施の形態）
本発明の第３の実施の形態にかかる適応ディジタルフィルタについて図７のブロック図を用いて説明する。【００６０】
図７を参照すると、本発明の第３の実施の形態にかかる適応ディジタルフィルタは、入力端子３０１を介して入力される複素信号（複素入力信号）と複素信号のフィルタ係数（複素フィルタ係数）との畳み込み演算によって複素信号の出力信号（複素出力信号）を生成し出力端子３０２に出力するフィルタ部と、複素出力信号から導出した指標値（本実施の形態の場合は包絡線の値）と目標信号との誤差に基づいてフィルタ係数を制御する係数制御部とを備えている。図７において、破線のブロックで示す共通部３１８と破線のブロックで示すＮ個の個別部３１９０〜３１９Ｎ−１の部分が係数制御部を構成し、それ以外の部分がフィルタ部を構成する。ここで、複素入力信号は、一つの実信号から生成した互いに位相が９０度ずれた２つの信号の一方を実部に他方を虚部に持つ複素信号である。【００６１】
フィルタ部は、それぞれ１サンプリング周期の遅延を与えるＮ−１個の遅延器３３０１〜３３０Ｎ−１からなるタップつき遅延線、複素入力信号および各遅延器３３０１〜３３０Ｎ−１の出力信号に対してフィルタ係数を乗ずるためのＮ個の乗算器３４６０〜３４６Ｎ−１、ならびにこれらＮ個の乗算器３４６０〜３４６Ｎ−１の乗算結果を順次加算するＮ−１個の加算器３３７１〜３３７Ｎ−１を含み、タップ数がＮ、すなわちフィルタ係数がＮ個のＦＩＲ型フィルタと、遅延器３３０Ｍ−１の出力信号を取り出す分岐線３４９と、ＦＩＲ型フィルタの出力信号、すなわち加算器３３７Ｎ−１の出力信号と分岐線３４９で取り出された信号とを加算し、その結果を出力端子３０２に伝達する加算器３３８とを備えている。【００６２】
ここで、分岐線３４９により取り出される信号は、入力端子３０１の入力信号を（Ｍ−１）サンプル遅延させた信号であり、この信号はセンタータップの遅延器３３０Ｍ−１から出力される信号である。すなわち、フィルタ係数の初期値が他のタップよりも大きいタップでの遅延器の出力信号に相当する。従って、本実施の形態では、センタータップの信号を直接引き出し、加算器３３８で別途加算していることになる。【００６３】
また、係数制御部は、適応アルゴリズムとして複素数を扱えるように拡張した複素ＬＭＳを使用し、全てのフィルタ係数の制御に共通な共通部３１８と個々のフィルタ係数の制御毎の個別部３１９０〜３１９Ｎ−１とを有する構成である。【００６４】
共通部３１８は、包絡線目標値を発生する包絡線目標値発生回路３０５と、フィルタ部の出力である複素出力信号が入力されると、複素出力信号の包絡線の値を実部と虚部の２乗和により計算して出力する絶対値回路３０８と、絶対値回路３０８で求められた包絡線の値から包絡線目標値を減じた値を出力する減算器３０７と、減算器３０７の出力と複素出力信号とを乗じた結果を出力する乗算器１８１と、フィルタ係数の更新量を決定するパラメータであるステップサイズを発生するステップサイズ発生回路３０３と、乗算器１８１の出力とステップサイズとを乗じた結果を各個別部３１９０〜３１９Ｎ−１に出力する乗算器１８２とを有する構成である。【００６５】
また、各個別部３１９０〜３１９Ｎ−１は、複素入力信号あるいはタップつき遅延線上の対応する遅延器３３０１〜３３０Ｎ−１の出力信号が入力されると、その複素信号を複素共役変換して出力する複素共役器３４００〜３４０Ｎ−１と、共通部３１８から入力される信号と複素共役器３４００〜３４０Ｎ−１から供給された複素信号とを乗じた結果を出力する乗算器３４１０〜３４１Ｎ−１と、乗算器３４６０〜３４６Ｎ−１に与えられているフィルタ係数と乗算器３４１０〜３４１Ｎ−１の出力とを加算して次サンプリング周期で使用するフィルタ係数を出力する加算器３４３０〜３４３Ｎ−１と、この加算器３４３０〜３４３Ｎ−１の出力を１サンプリング周期だけ遅延させて乗算器３４６０〜３４６Ｎ−１に出力する遅延器３４４０〜３４４Ｎ−１とを有する構成である。【００６６】
本実施の形態の適応ディジタルフィルタのアルゴリズムは以下のように表現される。【００６７】
W（k+1）＝W（k）−μ（｜y（k）｜ｐ−yref（k））ｑy（k）XＨ（k）  …（15）
y（k）＝WＴ（k）X（k）＋X（M-1）                                …（16）
W（k）＝［w0（k）,w1（k）,…,wN-1（k）］Ｔ                        …（17）
X（k）＝［x（k）,x（k-1）,…,x（k-N+1）］Ｔ                        …（18）
yref（k）＝Av［｜x（k）｜］                                      …（19）
Av［｜x（k）｜］＝（1−β）Av［｜x（k−1）｜］＋β｜x（k）｜    …（20）
ここで、W（k）はフィルタ係数ベクトルを表し、X（k）は複素信号ベクトルを表し、kはサンプルインデックスを表し、Nはフィルタのタップ数を表す。また、y（k）は出力信号であり、yrefは時変の包絡線目標値であり、μはフィルタ係数の更新量を決定するパラメータであり、X（M-1）は分岐線３４９で取り出される信号であり、Av［  ］は平均化を行う操作を表し、βは重み係数で、０＜β＜１を満たす正定数である。また、Hは複素共役転置を表し、Tは転置を表す。p,qは、包絡線目標値に対する誤差の評価関数を定める定数であり、例えばp=1,q=1とされる。【００６８】
次に、本実施の形態の適応ディジタルフィルタの動作を説明する。【００６９】
本実施の形態の適応ディジタルフィルタは、入力端子３０１に新たな複素入力信号が入力される毎に、第１の実施の形態と同様に図４に示した適応等化処理Ｓ２からパラメータ更新処理Ｓ４までを繰り返す。ただし、適応等化処理Ｓ２は、上記式（16）に基づく処理であり、パラメータ更新処理Ｓ４は上記式（15）に基づく処理である。以下、適応等化処理Ｓ２およびパラメータ更新処理Ｓ４についての動作を詳しく説明する。【００７０】
まず、適応等化処理Ｓ２について説明する。入力端子３０１に入力された複素入力信号は、乗算器３４６０および複素共役器３４００に供給されると同時に、１サンプリング周期の遅延を生じる遅延器３３０１〜３３０Ｎ−１からなるタップつき遅延線に供給される。遅延器３３０１〜３３０Ｎ−１に供給された複素信号は、１クロック毎に隣接する遅延器に転送され、各遅延器３３０１〜３３０Ｎ−１の出力信号は、対応する乗算器３４６１〜３４６Ｎ−１および対応する複素共役器３４０１〜３４０Ｎ−１に供給される。また、遅延器３３０Ｍ−１の出力信号は分岐線３４９により取り出され、加算器３３８へと供給される。【００７１】
乗算器３４６０では、入力端子３０１から入力された複素信号に、遅延器３４４０から供給された複素フィルタ係数を乗じ、結果を加算器３３７１に供給する。乗算器３４６１〜３４６Ｎ−１では、対応する遅延器３３０１〜３３０Ｎ−１から供給された複素信号に、対応する遅延器３４４１〜３４４Ｎ−１から供給された複素フィルタ係数を乗じ、結果を加算器３３７１〜３３７Ｎ−１に供給する。加算器３３７１〜３３７Ｎ−１は、乗算器３４６０〜３４６Ｎ−１から受けた複素信号を全て加算し、結果を加算器３３８に供給する。【００７２】
加算器３３８では、加算器３３７Ｎ−１から供給された信号と分岐線３４９により取り出された信号とを加算し、その結果を出力端子３０２に供給すると同時に、絶対値回路３０８および乗算器１８１に供給する。こうして、複素入力信号と複素フィルタ係数との畳み込み演算によって生成された複素信号と、センタータップから取り出された複素信号とを加算した複素信号が生成され、出力される。【００７３】
次に、パラメータ更新処理Ｓ４について説明する。包絡線目標値発生回路３０５は包絡線目標値を発生して減算器３０７に供給する。他方、絶対値回路３０８は、複素出力信号を受けて、その絶対値を計算し、結果を包絡線の値として減算器３０７へと伝達する。減算器３０７は、包絡線目標値発生器３０５から受けた包絡線目標値を、絶対値回路３０８から受けた信号から減算し、結果を乗算器１８１へと伝達する。乗算器１８１は、減算器３０７から受けた信号に、複素出力信号を乗じて、結果を乗算器１８２へと伝達する。ステップサイズ発生回路３０３は、フィルタ部内のフィルタ係数更新の量を決定するパラメータであるステップサイズを発生し、乗算器１８２へと供給する。乗算器１８２は、乗算器１８１から受けた信号に、ステップサイズ発生回路３０３から供給されたステップサイズを乗じて、結果を各個別部３１９０〜３１９Ｎ−１へと伝達する。【００７４】
各個別部３１９０〜３１９Ｎ−１においては、乗算器１８２から供給された信号は、乗算器３４１０〜３４１Ｎ−１に伝達される。複素共役器３４００〜３４０Ｎ−１はそれぞれ、対応する遅延器３３０１〜３３０Ｎ−１または入力端子３０１から供給された複素信号を複素共役変換して、対応する乗算器３４１０〜３４１Ｎ−１へと伝達する。乗算器３４１０〜３４１Ｎ−１はそれぞれ、対応する複素共役器３４００〜３４０Ｎ−１から供給された実数信号と、共通部３１８から供給された複素信号を乗じて、結果を対応する加算器３４３０〜３４３Ｎ−１へと伝達する。加算器３４３０〜３４３Ｎ−１はそれぞれ、対応する乗算器３４１０〜３４１Ｎ−１から受けた複素信号に、対応する遅延器３４４０〜３４４Ｎ−１から供給された複素フィルタ係数を加算し、結果を次サンプルのフィルタ係数として、対応する遅延器３４４０〜３４４Ｎ−１へと伝達する。遅延器３４４０〜３４４Ｎ−１はそれぞれ、対応する加算器３４３０〜３４３Ｎ−１から受けた複素フィルタ係数を１サンプル遅延させて対応する乗算器３４６０〜３４６Ｎ−１へと供給するとともに、対応する加算器３４３０〜３４３Ｎ−１へと伝達する。【００７５】
次に本実施の形態の効果を説明する。【００７６】
本実施の形態においてもセンタータップを含め全てのフィルタ係数を小さな値に抑えることができるため、遅延器３４４０〜３４４Ｎ−１、加算器３４３０〜３４３Ｎ−１および乗算器３４６０〜３４６Ｎ−１の演算量ならびにハードウェア量の削減が可能になる。【００７７】
また、本実施の形態においても、フィルタ部の出力信号は複素数で得られるため、出力信号の包絡線の値、すなわち振幅は、図７の絶対値回路３０８の出力信号として瞬時かつ正確に得られる。したがって、第２の従来技術におけるようなサンプリング周波数の制約はない。
（第４の実施の形態）
本発明の第４の実施の形態にかかる適応ディジタルフィルタについて図８のブロック図を用いて説明する。なお、図７に示した係数制御部の共通部３１８を図に示すことを省略している。【００７８】
図８を参照すると、本発明の第４の実施の形態にかかる適応ディジタルフィルタは、入力端子３０１を介して入力される入力信号を（M-1）サンプル遅延させるためのM-1個の遅延器３３９１〜３３９Ｍ−１および分岐線３４９を通じて加算器３３８に伝達するようにした点で、図７の第３の実施の形態にかかる適応ディジタルフィルタと相違する。【００７９】
本実施の形態では、M-1個の遅延器３３９１〜３３９Ｍ−１が新たに必要になるが、分岐線３４９によって加算器３３８に伝達される信号は第３の実施の形態と同じであるため、第３の実施の形態と同様の効果が得られる。
（第５の実施の形態）
本発明の第５の実施の形態にかかる適応ディジタルフィルタについて図９のブロック図を用いて説明する。なお、図３に示した係数制御部の共通部３１８を図に示すことを省略している。【００８０】
図９を参照すると、本発明の第５の実施の形態にかかる適応ディジタルフィルタは、図３に示した第１の実施の形態における分岐線３４９および加算器３３８に代えて、センタータップの信号を扱う個別部３１９Ｍ−１に乗算器３３１１Ｍ−１を備え、かつ、センタータップの信号とフィルタ係数を乗算する乗算器３３６Ｍ−１の出力側に乗算器３３１３Ｍ−１を備えており、その他の点は第１の実施の形態と同じである。乗算器３３１１Ｍ−１は、共通部から伝達されてきた信号に所定の定数Cを乗ずることにより個別部３１９Ｍ−１で扱うフィルタ係数の値を小さくする。乗算器３３１３Ｍ−１は、乗算器３３６Ｍ−１の出力信号に上記定数Cの逆数を乗じ、その結果を加算器３３７Ｍ−１に出力する。【００８１】
本実施の形態の動作を簡単に説明する。【００８２】
図５のシミュレーション結果に示したようにセンタータップのフィルタ係数は１より大きく、その他のタップの係数はすべて０．５以下である。今、センタータップのフィルタ係数の値を仮に１．２とする。この場合、乗算器３３１１Ｍ−１がなければ、遅延器３３４Ｍ−１から乗算器３３６Ｍ−１に出力されるフィルタ係数は１．２になるが、乗算器３３１１Ｍ−１があるので、定数Cを例えば０．１とすると、フィルタ係数は１．２を約１０分の１にした０．１２になる。従って、遅延器３３０Ｍ−１の出力信号をX（M-1）とすると、乗算器３３６Ｍ−１の出力は０．１２X（M-1）になる。しかし、乗算器３３６Ｍ−１の出力は、後段の乗算器３３１３Ｍ−１によってCの逆数倍されるため、加算器３３７Ｍ−１へ伝達される信号は、１．２X（M-1）となり、乗算器３３１１Ｍ−１および乗算器３３１３Ｍ−１のない場合と同じになる。【００８３】
このように本実施の形態によれば、センタータップの乗算器３３６Ｍ−１に与えるフィルタ係数を小さくしても等価な動作が行われる。図５のシミュレーション結果に見られたようにセンタータップ以外のすべてのフィルタ係数の値は０．５以下なので、本実施の形態によれば、すべてのフィルタ係数として０．５以下の値を扱えればよいことになる。従って、遅延器３３４０〜３３４Ｎ−１、加算器３３３０〜３３３Ｎ−１および乗算器３３６０〜３３６Ｎ−１は、フィルタ係数として０．５以下を扱えればよい。その結果、すべてのフィルタ係数について０．５以上の値まで扱っていた従来の適応ディジタルフィルタに比べて、演算量およびハードウェア量の削減が可能になる。【００８４】
本実施の形態の適応ディジタルフィルタでは、畳み込み演算用の乗算器のうち少なくとも１つの乗算器の出力信号を拡大し、その乗算器で使用するフィルタ係数の生成元となる誤差にかかる信号を拡大に見合った分だけ縮小しているため、畳み込み演算用の乗算器に必要なフィルタ係数が実質的に従来よりも小さな値で済む。そのため、畳み込み演算用の乗算器やフィルタ係数を保持する遅延器などに必要なビット数を減らすことができ、演算量の削減とハードウェア量の削減が可能になる。
（第６の実施の形態）
本発明の第６の実施の形態にかかる適応ディジタルフィルタについて図１０のブロック図を用いて説明する。なお、図７に示した係数制御部の共通部３１８を図に示すことを省略している。【００８５】
図１０を参照すると、本発明の第６の実施の形態にかかる適応ディジタルフィルタは、図７に示される第３の実施の形態における分岐線３４９および加算器３３８に代えて、センタータップの信号を扱う個別部３１９Ｍ−１に乗算器３３１１Ｍ−１を備え、かつ、センタータップの信号とフィルタ係数を乗算する乗算器３３６Ｍ−１の出力側に乗算器３３１３Ｍ−１を備えており、その他の点は第３の実施の形態と同じである。乗算器３３１１Ｍ−１は、共通部から伝達されてきた信号に所定の定数Cを乗ずることにより個別部３１９Ｍ−１で扱うフィルタ係数の値を小さくする。乗算器３３１３Ｍ−１は、乗算器３３６Ｍ−１の出力信号に上記定数Cの逆数を乗じ、その結果を加算器３３７Ｍ−１に出力する。【００８６】
本実施の形態は、複素フィルタ係数を扱う第３の実施の形態に対して第５の実施の形態と同様の変更を加えたものであり、第１の従来技術による適応ディジタルフィルタに比べて、演算量およびハードウェア量を削減することができる効果がある。【００８７】
上述の第１から第６の実施の形態では、収束後のフィルタ係数が大きくなるタップが１個である場合に好適な実施の形態について説明したが、収束後のフィルタ係数が大きくなるタップが２個以上既知である場合には、それらのタップ毎に上述した各実施の形態と同様な構成を付加すればよい。【００８８】
例えば、遅延器３３０Ｍ−１の出力箇所に相当するタップ以外に、遅延器３３０Ｊ−１の出力箇所に相当するタップのフィルタ係数が１より大きくなる場合、図３および図７の実施の形態にあっては、遅延器３３０Ｊ−１の出力信号を分岐線３４９とは別の分岐線で分岐して加算器３３８へ伝達し、加算器３３８において２つの分岐線のそれぞれから伝達された信号と加算器３３７Ｎ−１から伝達された信号とを加算すればよい。【００８９】
また、図６および図８の実施の形態にあっては、（J-1）個の遅延器によって入力端子３０１の入力信号を（J-1）サンプル遅延させて加算器３３８へ伝達し、加算器３３８において２つの分岐線のそれぞれから伝達された信号と加算器３３７Ｎ−１から伝達された信号とを加算すればよい。【００９０】
さらに、図９および図１０の実施の形態にあっては、（J-1）サンプル遅延した入力信号を扱う個別部３１９Ｊ−１の乗算器３３１Ｊ−１、３４１Ｊ−１の入力側および乗算器３３６Ｊ−１、３４６Ｊ−１の出力側に、乗算器３３１１Ｍ−１および乗算器３３１３Ｍ−１と同様な乗算器を設ければよい。【００９１】
また、フィルタ係数の期待値に応じてフィルタ係数群を幾つかのグループに分類し、以下で説明する第７の実施の形態のようにグループ単位で処理することも可能である。
（第７の実施の形態）
本発明の第７の実施の形態にかかる適応ディジタルフィルタについて図１１のブロック図を用いて説明する。【００９２】
図１１を参照すると、本発明の第７の実施の形態にかかる適応ディジタルフィルタは、複素入力信号が入力される入力端子３０１と、この入力端子３０１を介して入力される複素入力信号を１サンプリング周期の遅延を与えて順次伝達するＮ−１個の遅延器３３０１〜３３０Ｎ−１からなるタップつき遅延線と、フィルタ係数の期待値に応じてグループ分けされた係数群に対応するＬ個（Ｌは２以上の正整数）のグループ処理部３３１００〜３３１０Ｌ−１と、各グループ処理部３３１００〜３３１０Ｌ−１の処理結果を加算し、結果を適応ディジタルフィルタの複素出力信号として出力端子３０２に出力する加算器３３２０と、複素出力信号が入力されると、各グループ処理部３３１００〜３３１０Ｌ−１内でのフィルタ係数更新のための信号を生成して処理部３３１００〜３３１０Ｌ−１に出力する共通部３１８とを有する構成である。ここで、入力端子３０１に加わる入力信号および各遅延器３３０１〜３３０Ｎ−１の出力信号は、処理部３３１００〜３３１０Ｌ−１のうちの何れか１つだけに入力される。【００９３】
共通部３１８は、図３に示した第１の実施の形態にかかる適応ディジタルフィルタにおけるものと同じである。グループ処理部３３１００〜３３１０Ｌ−１は、図３に示した適応ディジタルフィルタにおける個別部３１９０〜３１９Ｎ−１およびフィルタ部を合わせたものと同様である。【００９４】
次に、グループ処理部３３１００〜３３１０Ｌ−１の構成を説明する。【００９５】
図１２を参照すると、各々のグループ処理部３３１０ｊ（ｊ=0〜N-1）は、共通部３１８から入力される信号に予め定められた定数Cを乗じ、その結果を出力する乗算器３３１１と、入力端子３０１からの入力信号またはその入力信号を遅延器３３０１〜３３０Ｎ−１で遅延させた信号、すなわち各タップの信号のうち自グループ処理部３３１０ｊに入力された信号と、乗算器３３１１の出力信号とを入力して所定の演算を行い、その結果を出力する１以上の個別処理部３３１２０〜３３１２Ｍ−１と、個別処理部３３１２０〜３３１２Ｍ−１の出力信号の合計値を算出して出力する加算器３３１４と、この加算器３３１４の出力信号に上記定数Cの逆数を乗じ、結果を図１１の加算器３３２０へと伝達する乗算器３３１３とを有する構成である。ここで、定数Cはグループ処理部毎に適切な値が定められ、例えばそのグループに属するフィルタ係数の期待値の平均値に反比例させた値、つまり、期待値の平均値が大きい場合には小さな値を、期待値が小さい場合には大きな値を使用する。【００９６】
次に、個別処理部３３１２０〜３３１２Ｍ−１の構成を説明する。【００９７】
図１３を参照すると、各々の個別処理部３３１２ｉ（ｉ=0〜M-1）は、複素入力信号あるいはタップつき遅延線上の対応する遅延器３３０１〜３３０Ｎ−１の出力信号が入力されると、その複素信号の実部のみを抽出して出力する実部抽出回路３３５ｉと、乗算器３３１１から入力された信号と実部抽出回路３３５ｉで抽出された実部とを乗じた結果を出力する乗算器３３１ｉと、乗算器３３６ｉと、この乗算器３３６ｉに与えられているフィルタ係数と乗算器３３１ｉの出力とを加算して次サンプリング周期で使用するフィルタ係数を出力する加算器３３３ｉと、この加算器３３３ｉの出力を１サンプリング周期だけ遅延させて乗算器３３６ｉに出力する遅延器３３４ｉとを有する構成である。【００９８】
乗算器３３６ｉは、複素入力信号あるいはタップつき遅延線上の対応する遅延器３３０１〜３３０Ｎ−１の出力信号と遅延器３３４ｉからのフィルタ係数とを乗じ、その結果を図１２に示した加算器３３１４に出力する。すなわち、図３の適応ディジタルフィルタとの関係では、１つの個別処理部３３１２ｉは、入力信号とフィルタ係数との畳み込み演算を行うフィルタ部における上記畳み込み演算用の１つの乗算器３３６ｉと、係数制御部を構成する複数の個別部３１９０〜３１９Ｎ−１の１つとを合わせたものに相当する。【００９９】
以下、本実施の形態の動作を説明する。ここでは、Ｌ＝２、つまりフィルタ係数を２つのグループに分ける場合を例に説明する。今、収束後の各タップのフィルタ係数の値の分布が１以上１．５未満の範囲に属するグループ０と、０．５未満の範囲に属するグループ１との２つに分けられるとする。タップの信号のうちグループ０に属するタップの信号はグループ処理部３３１００に入力され、グループ１に属するタップの信号はグループ処理部３３１０１に入力されるように、タップ付き遅延線とグループ処理部３３１００、３３１０１とが予め接続されている。【０１００】
グループ処理部３３１００においては、図１２の乗算器３３１１が乗じる定数Cは、第６の実施の形態で説明したようにフィルタ係数の値が小さくなるように例えば０．１に設定され、乗算器３３１１が乗じる値は定数Cの逆数に設定される。これによって、第６の実施の形態と同様の理由により、個別処理部３３１２ｉの演算量とハードウェア量の削減が可能になる。【０１０１】
他方、グループ処理部３３１０１においては、収束後のフィルタ係数の値が０．５以下なので、第６の実施の形態と同様に扱って、定数Cを１とすることもできる。しかし、例えば、収束後のフィルタ係数の値が小さいために乗算器３３１ｉあるいは乗算器３３６ｉの乗算結果の値も小さくなり、固定小数点演算のために下の桁が捨て去られて演算精度が劣化する場合、フィルタ係数が大きくなるような定数Cを乗じることもできる。例えば、0.1＊0.2は0.02になるが、若し個別処理部内では小数点１桁までしか表現できない場合、答えは０になる。このときC=10を乗じて、0.1＊10=1.0とし、これと0.2を乗ずると0.2になり、表現内に収まる。この時点では結果は１０倍になっているが、乗算器３３１３でCの逆数を乗じるので、乗算器３３１３以降は0.02として扱われる。【０１０２】
以上、フィルタ係数を２つのグループに分ける場合を例に説明したが、３つ以上のグループに分ける場合も同様である。【０１０３】
本実施の形態は、フィルタ係数が実数である図３で説明した実施の形態を前提としたが、複素フィルタ係数を使用する図７の実施の形態を前提とすることも勿論可能である。【０１０４】
次に、第１から第７のいずれかの実施の形態にかかる適応ディジタルフィルタを用いたＦＭ受信器について図１４を用いて説明する。【０１０５】
図１４を参照すると、本発明の実施の形態にかかるＦＭ受信機は、アンテナ１０１、無線周波数中間周波数変換器（ＲＦ→ＩＦ）１０２、アナログディジタル変換器（ＡＤＣ）１０３、自動利得制御器（ＡＧＣ）１０４、ヒルベルト変換器１０５、マルチパスキャンセラ１０６および復調器１０７を有する構成である。このマルチパスキャンセラ１０６に、上記いずれかの実施の形態にかかる適応ディジタルフィルタが使用されている。【０１０６】
アンテナ１０１で受信されたＦＭ変調波は、無線周波数中間周波数変換器１０２において、中間周波数帯域の信号に変換され、アナログディジタル変換器１０３に伝達される。アナログディジタル変換器１０３は、無線周波数中間周波数変換器１０２から伝達されたアナログ信号を適切なサンプリング周波数でサンプリングしてディジタル信号へと変換し、自動利得制御器１０４へと伝達する。自動利得制御器１０４は、包絡線の値を指標とするＣＭＡアルゴリズムに悪影響を与えない範囲で出力信号の振幅が一定範囲内に収まるような利得を乗じた結果を、ヒルベルト変換器１０５へと伝達する。【０１０７】
ヒルベルト変換器１０５では、自動利得制御器１０４から伝達された信号を解析信号、すなわち互いに位相が９０度ずれた２つの信号の一方を実部に他方を虚部に持つ複素信号へと変換してマルチパスキャンセラ１０６へと伝達する。マルチパスキャンセラ１０６は、ヒルベルト変換器１０５から伝達され複素入力信号を入力し、多重反射の影響を低減した信号に変換して復調器１０７へと伝達する。復調器１０７は、マルチパスキャンセラ１０６から伝達された信号のＦＭ復調を行い、音声周波数帯域の信号を出力する。なお、上述の各実施の形態の適応ディジタルフィルタの出力端子３０２からは複素出力信号が出力されるが、その実部のみを抽出して復調器１０７に出力するか、あるいはその虚部のみを抽出し符号を反転して復調器１０７に出力する。【０１０８】
以上、本発明の実施の形態について説明したが、本発明は以上の実施の形態にのみ限定されず、以下に述べるような各種の付加変更が可能である。【０１０９】
上述の実施の形態では、包絡線目標値は固定値としてが、適応ディジタルフィルタの入力信号および出力信号の少なくとも一方に基づいて変化する時変の包絡線目標値とすることも可能である。【０１１０】
分岐線を使用する実施の形態では、分岐線により取り出したタップの信号をそのまま加算器３３８へと伝達したが、或る係数を乗じる乗算器を経由して加算器３３８へと供給したり、或る種のフィルタを通過させて加算器３３８へと供給したりするようにしてもよい。【０１１１】
実数フィルタ係数を使用する実施の形態では、実部抽出回路３３５０〜３３５Ｎ−１および実部抽出回路３０９を使用したが、これらの全部または一部を虚部抽出反転回路で置換してもよい。虚部抽出反転回路とは、入力された複素信号の虚部のみを抽出し、その符号を反転させた値を出力する回路である。適応ディジタルフィルタの入力端子３０１に加わる複素入力信号は、一つの実信号から生成した互いに位相が９０度ずれた２つの信号の一方を実部に他方を虚部に持つ複素信号としたものであるので、虚部抽出反転回路を使用しても上述の実施の形態と同様の効果がある。【０１１２】
実数フィルタ係数を使用する実施の形態では、フィルタ係数はすべて実数、すなわちスカラー値としたが、演算量の削減効果は低下するものの、一部のフィルタ係数を複素数にすることも可能である。また、実部抽出回路３０９を乗算器３１０の出力側に移動したり、乗算器３１１の出力側に移動したりして、乗算器３１０、３１１で複素数による演算を行うようにしてもよい。【０１１３】
上述の実施の形態では、フィルタ部としてＦＩＲ型のフィルタを用いたが、ＩＩＲ（Ｉｎｆｉｎｉｔｅ  Ｉｍｐｕｌｓｅ  Ｒｅｓｐｏｎｓｅ）型のフィルタを使用することもできる。【０１１４】
上述の実施の形態では、適応アルゴリズムとして、ＬＭＳアルゴリズムを用いたが、この他、逐次最小二乗法（Ｒｅｃｕｒｓｉｖｅ  Ｌｅａｓｔ  Ｓｑｕａｒｅｓ  Ａｌｇｏｒｉｔｈｍ）、最小二乗法（Ｌｅａｓｔ  Ｓｑｕａｒｅｓ  Ａｌｇｏｒｉｔｈｍ）、アフィン射影法（Ａｆｆｉｎｅ  Ｐｒｏｊｅｃｔｉｏｎ  Ａｌｇｏｒｉｔｈｍ）、勾配法（Ｇｒａｄｉｅｎｔ  Ａｌｇｏｒｉｔｈｍ）などの各種の適応アルゴリズムを用いることもできる。これらの適応アルゴリズムによるフィルタ係数更新の際の乗算回数が、ＬＭＳ型アルゴリズムより多い場合には、フィルタ係数を実数化したことによる演算量削減の効果はさらに大きくなる。【０１１５】
上述の実施の形態では、ＦＭ変調を対象としたが、ＰＳＫ（Ｐｈａｓｅ  Ｓｈｉｆｔ  Ｋｅｙｉｎｇ）など他の定振幅変調にも、本発明の構成を適用できることは明らかである。また、マルチレベルＣＭＡを用いれば、ＱＡＭ（Ｑｕａｄｒａｔｕｒｅ  Ａｍｐｌｉｔｕｄｅ  Ｍｏｄｕｌａｔｉｏｎ）のような変調方式にも、本発明を適用可能であることは明らかである。また、非特許文献１で示されているコンスタントモジュラスアルゴリズムのうち、出力信号が複素数であるものなどにも本発明を適用できることは明らかである。【０１１６】
上述の実施の形態では、包絡線を指標とするＣＭＡを対象に説明してきたが、非特許文献１に示されるように、出力信号から導出される他の統計量を指標とした場合にも、本発明を適用できることは明らかである。【０１１７】
本発明の適応ディジタルフィルタは、その有する機能を個別部品、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などを使用してハードウェア的に実現することも可能である。また、本発明の適応ディジタルフィルタによる信号処理方法をコンピュータのＤＳＰ（Digital  Signal  Processor）などの演算処理部に実行させるためのプログラムに適用することも可能である。また、このプログラムをコンピュータが読み取り可能な記録媒体に書き込んで他のコンピュータにインストールすることも可能である。プログラムは、磁気ディスクや半導体メモリ等のコンピュータ可読記録媒体に記録されて提供され、コンピュータの立ち上げ時などにコンピュータに読み取られ、そのコンピュータの動作を制御することにより、そのコンピュータを上述した各実施の形態における適応ディジタルフィルタとして機能させる。【０１１８】
また、本発明は上記実施例に限定されることなく、発明の範囲内で種々の変形が可能であり、それらも本発明の範囲内に含まれることはいうまでもない。
【産業上の利用可能性】
【０１１９】
以上のように、本発明にかかる適応ディジタルフィルタは、ＣＭＡアルゴリズムを用いた適応ディジタルフィルタとして有用であり、特にＦＭ受信機のマルチパス等化器に用いるのに適している。
【図１】
2007010889.tif 000002
【図２】
2007010889.tif 000003
【図３】
2007010889.tif 000004
【図４】
2007010889.tif 000005
【図５】
2007010889.tif 000006
【図６】
2007010889.tif 000007
【図７】
2007010889.tif 000008
【図８】
2007010889.tif 000009
【図９】
2007010889.tif 000010
【図１０】
2007010889.tif 000011
【図１１】
2007010889.tif 000012
【図１２】
2007010889.tif 000013
【図１３】
2007010889.tif 000014
【図１４】
2007010889.tif 000015
【手続補正書】
【提出日】平成19年1月30日(2007.1.30)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
フィルタ係数の期待値に基づいて少なくとも１つの乗算器と他の乗算器とにグループ分けされた複数の乗算器を含み、入力信号と前記フィルタ係数との畳み込み演算によって第１の信号を生成するフィルタ部と、
前記少なくとも１つの乗算器に入力される前記入力信号と前記第１の信号とを加算して第２の信号を出力する加算器と、
前記第２の信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する係数制御部と、
を有する適応ディジタルフィルタ。
【請求項２】
前記少なくとも１つの乗算器は前記フィルタ係数の前記期待値に対応して設定される初期値が他の乗算器よりも大きい請求項１記載の適応ディジタルフィルタ。
【請求項３】
前記少なくとも１つの乗算器は前記フィルタ係数の前記期待値に対応して設定される初期値が他の乗算器よりも大きく、該乗算器が前記複数の乗算器に１つだけ含まれている請求項１記載の適応ディジタルフィルタ。
【請求項４】
入力信号とフィルタ係数との畳み込み演算を行う複数の乗算器を含み、該複数の乗算器のうち少なくとも１つの乗算器の出力を所定の倍率で拡大し、前記畳み込み演算の結果を第１の信号として生成するフィルタ部と、
前記第１の信号から導出した指標値と目標信号との誤差に基づいて前記複数の乗算器で使用される前記フィルタ係数を制御し、出力が所定の倍率で拡大された前記乗算器で使用されるフィルタ係数の生成元となる前記誤差にかかる信号を前記所定の倍率分だけ縮小する係数制御部と、
を有する適応ディジタルフィルタ。
【請求項５】
フィルタ係数の期待値に基づいて該フィルタ係数が複数のグループに分類され、
前記グループ毎に拡大の場合の前記倍率または縮小の場合の前記倍率が設定された請求項４記載の適応ディジタルフィルタ。
【請求項６】
前記入力信号は、１つの実信号から生成され、互いに位相が９０度ずれた２つの信号の一方を実部に他方を虚部に持つ複素信号であり、
前記フィルタ係数は実信号である、請求項１から５のいずれか１項に記載の適応ディジタルフィルタ。
【請求項７】
前記係数制御部は、
前記指標値と前記目標信号との誤差に応じた実信号を生成して出力する共通部と、
前記フィルタ部における畳み込み演算用の前記複数の乗算器毎に設けられ、対応する乗算器に入力される複素信号を実数化した信号と前記共通部から入力される前記実信号と現在の実フィルタ係数とに基づいて次サンプリング周期で使用する実フィルタ係数を算出する複数の個別部と、
を有する請求項６記載の適応ディジタルフィルタ。
【請求項８】
前記係数制御部は、前記第１の信号の包絡線の値を前記指標値とする請求項１から５のいずれか１項に記載の適応ディジタルフィルタ。
【請求項９】
請求項１から５のいずれか１項に記載された適応ディジタルフィルタと、
中間周波数に変換されディジタル化されたＦＭ変調信号をヒルベルト変換して生成した複素信号を前記適応ディジタルフィルタに入力するヒルベルト変換器と、
を有するＦＭ受信機。
【請求項１０】
複数の乗算器を含むフィルタ部および該複数の乗算器のフィルタ係数を制御する係数制御部を有する適応ディジタルフィルタの信号処理方法であって、
フィルタ係数の期待値に基づいて前記複数の乗算器が少なくとも１つの乗算器と他の乗算器とにグループ分けされ、前記少なくとも１つの乗算器に入力される信号を前記フィルタ部の出力である第１の信号に加算する加算器を設け、
前記フィルタ部が入力信号と前記フィルタ係数との畳み込み演算によって前記第１の信号を生成し、
前記加算器が前記少なくとも１つの乗算器に入力される前記入力信号と前記第１の信号とを加算して第２の信号を出力し、
前記係数制御部が前記第２の信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する、信号処理方法。
【請求項１１】
前記少なくとも１つの乗算器は前記フィルタ係数の前記期待値に対応して設定される初期値が他の乗算器よりも大きい請求項１０記載の信号処理方法。
【請求項１２】
前記少なくとも１つの乗算器は前記フィルタ係数の前記期待値に対応して設定される初期値が他の乗算器よりも大きく、該乗算器が前記複数の乗算器に１つだけ含まれている請求項１０記載の信号処理方法。
【請求項１３】
複数の乗算器を含むフィルタ部および該複数の乗算器のフィルタ係数を制御する係数制御部を有する適応ディジタルフィルタの信号処理方法であって、
前記フィルタ部が入力信号とフィルタ係数との畳み込み演算を行い、前記複数の乗算器のうち少なくとも１つの乗算器の出力を所定の倍率で拡大し、前記畳み込み演算の結果を第１の信号として生成し、
前記係数制御部が前記第１の信号から導出した指標値と目標信号との誤差に基づいて前記複数の乗算器で使用される前記フィルタ係数を制御し、出力が所定の倍率で拡大された前記乗算器で使用されるフィルタ係数の生成元となる前記誤差にかかる信号を前記所定の倍率分だけ縮小する、信号処理方法。
【請求項１４】
フィルタ係数の期待値に基づいて該フィルタ係数を複数のグループに分類し、
前記グループ毎に拡大の場合の前記倍率または縮小の場合の前記倍率を設定する、請求項１３記載の信号処理方法。
【請求項１５】
前記入力信号は、１つの実信号から生成され、互いに位相が９０度ずれた２つの信号の一方を実部に他方を虚部に持つ複素信号であり、
前記フィルタ係数は実信号である、請求項１０から１４のいずれか１項に記載の信号処理方法。
【請求項１６】
前記係数制御部が、前記指標値と前記目標信号との誤差に応じた実信号を生成し、
前記係数制御部が、前記複数の乗算器毎に、対応する乗算器に入力される複素信号を実数化した信号と前記共通部から入力される前記実信号と現在の実フィルタ係数とに基づいて次サンプリング周期で使用する実フィルタ係数を算出する、請求項１５記載の信号処理方法。
【請求項１７】
前記係数制御部が前記第１の信号の包絡線の値を前記指標値とする請求項１０から１４のいずれか１項に記載の信号処理方法。
【請求項１８】
複数の乗算器を含むフィルタ部および該複数の乗算器のフィルタ係数を制御する係数制御部を有する適応ディジタルフィルタの動作をコンピュータに実行させるためのプログラムであって、
フィルタ係数の期待値に基づいて前記複数の乗算器が少なくとも１つの乗算器と他の乗算器とにグループ分けされ、前記少なくとも１つの乗算器に入力される信号を前記フィルタ部の出力である第１の信号に加算する加算器を設け、
前記フィルタ部が入力信号と前記フィルタ係数との畳み込み演算によって前記第１の信号を生成し、
前記加算器が前記少なくとも１つの乗算器に入力される前記入力信号と前記第１の信号とを加算して第２の信号を出力し、
前記係数制御部が前記第２の信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する処理を前記コンピュータに実行させるためのプログラム。
【請求項１９】
前記少なくとも１つの乗算器は前記フィルタ係数の前記期待値に対応して設定される初期値が他の乗算器よりも大きい請求項１８記載のプログラム。
【請求項２０】
前記少なくとも１つの乗算器は前記フィルタ係数の前記期待値に対応して設定される初期値が他の乗算器よりも大きく、該乗算器が前記複数の乗算器に１つだけ含まれている請求項１８記載のプログラム。
【請求項２１】
複数の乗算器を含むフィルタ部および該複数の乗算器のフィルタ係数を制御する係数制御部を有する適応ディジタルフィルタの動作をコンピュータに実行させるためのプログラムであって、
前記フィルタ部が入力信号とフィルタ係数との畳み込み演算を行い、前記複数の乗算器のうち少なくとも１つの乗算器の出力を所定の倍率で拡大し、前記畳み込み演算の結果を第１の信号として生成し、
前記係数制御部が前記第１の信号から導出した指標値と目標信号との誤差に基づいて前記複数の乗算器で使用される前記フィルタ係数を制御し、出力が所定の倍率で拡大された前記乗算器で使用されるフィルタ係数の生成元となる前記誤差にかかる信号を前記所定の倍率分だけ縮小する処理を前記コンピュータに実行させるためのプログラム。
【請求項２２】
フィルタ係数の期待値に基づいて該フィルタ係数を複数のグループに分類し、
前記グループ毎に拡大の場合の前記倍率または縮小の場合の前記倍率を設定する処理をさらに有する請求項２１記載のプログラム。
【請求項２３】
前記入力信号は、１つの実信号から生成され、互いに位相が９０度ずれた２つの信号の一方を実部に他方を虚部に持つ複素信号であり、
前記フィルタ係数は実信号である、請求項１８から２２のいずれか１項に記載のプログラム。
【請求項２４】
前記係数制御部が、前記指標値と前記目標信号との誤差に応じた実信号を生成し、
前記係数制御部が、前記複数の乗算器毎に、対応する乗算器に入力される複素信号を実数化した信号と前記共通部から入力される前記実信号と現在の実フィルタ係数とに基づいて次サンプリング周期で使用する実フィルタ係数を算出する、請求項２３記載のプログラム。
【請求項２５】
前記係数制御部が前記第１の信号の包絡線の値を前記指標値とする請求項１８から２２のいずれか１項に記載のプログラム。
【請求項２６】
入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するフィルタ部と、
前記畳み込み演算を行うための少なくとも１つの乗算器に入力される前記入力信号と前記フィルタ部の出力信号とを加算して出力する加算器と、
該加算器の前記出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する係数制御部と、
を備えることを特徴とする適応ディジタルフィルタ。
【請求項２７】
入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するフィルタ部と、
前記畳み込み演算を行うための複数の乗算器のうち初期値の大きなフィルタ係数が与えられる乗算器に入力される前記入力信号と前記フィルタ部の出力信号とを加算して出力する加算器と、
該加算器の前記出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する係数制御部と、
を備えることを特徴とする適応ディジタルフィルタ。
【請求項２８】
入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するフィルタ部と、
前記畳み込み演算を行うための複数の乗算器のうち初期値の大きなフィルタ係数が与えられる１つの乗算器に入力される前記入力信号と前記フィルタ部の出力信号とを加算して出力する加算器と、
該加算器の前記出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する係数制御部と、
を備えることを特徴とする適応ディジタルフィルタ。
【請求項２９】
入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するフィルタ部と、
前記出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する係数制御部と、
を備え、かつ、前記フィルタ部は、前記畳み込み演算を行うための少なくとも１つの乗算器の出力信号を拡大して使用し、前記係数制御部は、前記乗算器で使用するフィルタ係数の生成元となる前記誤差にかかる信号を前記拡大に見合った分だけ縮小して使用することを特徴とする適応ディジタルフィルタ。
【請求項３０】
収束後のフィルタ係数の期待値に基づいてフィルタ係数を複数のグループに分類し、グループ毎に前記拡大の倍率と前記縮小の倍率とを定めることを特徴とする請求項２９記載の適応ディジタルフィルタ。
【請求項３１】
前記入力信号として、一つの実信号から生成した互いに位相が９０度ずれた２つの信号の一方を実部に他方を虚部に持つ複素信号を使用し、前記フィルタ係数として実信号を使用することを特徴とする請求項２６乃至３０の何れか１項に記載の適応ディジタルフィルタ。
【請求項３２】
前記係数制御部は、前記指標値と前記目標信号との誤差に応じた実信号を生成して出力する共通部と、前記フィルタ部における前記畳み込み演算用の乗算器毎に設けられ、対応する乗算器に入力される複素信号を実数化した信号と前記共通部から入力される前記実信号と現在の実フィルタ係数とに基づいて次サンプリング周期で使用する実フィルタ係数を算出する複数の個別部とを含むことを特徴とする請求項３１記載の適応ディジタルフィルタ。
【請求項３３】
前記係数制御部は、前記出力信号の包絡線の値を前記指標値とすることを特徴とする請求項２６乃至３２の何れか１項に記載の適応ディジタルフィルタ。
【請求項３４】
請求項２６乃至３３の何れか１項に記載された適応ディジタルフィルタと、中間周波数に変換されディジタル化されたＦＭ変調信号をヒルベルト変換して生成した複素信号を前記適応ディジタルフィルタに入力するヒルベルト変換器とを備えたことを特徴とするＦＭ受信機。
【請求項３５】
ａ）入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するステップ、
ｂ）前記畳み込み演算を行うための少なくとも１つの乗算器に入力される前記入力信号と前記ステップａの出力信号とを加算して出力するステップ、
ｃ）前記ステップｂの出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御するステップ、
を含むことを特徴とする信号処理方法。
【請求項３６】
ａ）入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するステップ、
ｂ）前記畳み込み演算を行うための複数の乗算器のうち初期値の大きなフィルタ係数が与えられる乗算器に入力される前記入力信号と前記ステップａの出力信号とを加算して出力するステップ、
ｃ）前記ステップｂの出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御するステップ、
を含むことを特徴とする信号処理方法。
【請求項３７】
ａ）入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するステップ、
ｂ）前記畳み込み演算を行うための複数の乗算器のうち初期値の大きなフィルタ係数が与えられる１つの乗算器に入力される前記入力信号と前記ステップａの出力信号とを加算して出力するステップ、
ｃ）前記ステップｂの出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御するステップ、
を含むことを特徴とする信号処理方法。
【請求項３８】
ａ）入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するステップ、
ｂ）前記出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御するステップ、
を含み、
前記ステップａにおいては、前記畳み込み演算を行うための少なくとも１つの乗算器の出力信号を拡大して使用し、前記ステップｂにおいては、前記乗算器で使用するフィルタ係数の生成元となる前記誤差にかかる信号を前記拡大に見合った分だけ縮小して使用することを特徴とする信号処理方法。
【請求項３９】
収束後のフィルタ係数の期待値に基づいてフィルタ係数を複数のグループに分類し、グループ毎に前記拡大の倍率と前記縮小の倍率とを定めることを特徴とする請求項３８記載の信号処理方法。
【請求項４０】
前記入力信号として、一つの実信号から生成した互いに位相が９０度ずれた２つの信号の一方を実部に他方を虚部に持つ複素信号を使用し、前記フィルタ係数として実信号を使用することを特徴とする請求項３５乃至３９の何れか１項に記載の信号処理方法。
【請求項４１】
前記出力信号の包絡線の値を前記指標値とすることを特徴とする請求項３５乃至４０の何れか１項に記載の信号処理方法。
【請求項４２】
コンピュータを、入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するフィルタ部、前記畳み込み演算を行うための少なくとも１つの乗算器に入力される前記入力信号と前記フィルタ部の出力信号とを加算して出力する加算器、該加算器の前記出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する係数制御部、として機能させるためのプログラム。
【請求項４３】
コンピュータを、入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するフィルタ部、前記畳み込み演算を行うための複数の乗算器のうち初期値の大きなフィルタ係数が与えられる乗算器に入力される前記入力信号と前記フィルタ部の出力信号とを加算して出力する加算器、該加算器の前記出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する係数制御部、として機能させるためのプログラム。
【請求項４４】
コンピュータを、入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するフィルタ部、前記畳み込み演算を行うための複数の乗算器のうち初期値の大きなフィルタ係数が与えられる１つの乗算器に入力される前記入力信号と前記フィルタ部の出力信号とを加算して出力する加算器、該加算器の前記出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する係数制御部、として機能させるためのプログラム。
【請求項４５】
コンピュータを、入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するフィルタ部であって、前記畳み込み演算を行うための少なくとも１つの乗算器の出力信号を拡大して使用するフィルタ部、前記出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する係数制御部であって、前記乗算器で使用するフィルタ係数の生成元となる前記誤差にかかる信号を前記拡大に見合った分だけ縮小して使用する係数制御部、として機能させるためのプログラム。
【請求項４６】
収束後のフィルタ係数の期待値に基づいてフィルタ係数を複数のグループに分類し、グループ毎に前記拡大の倍率と前記縮小の倍率とを定めることを特徴とする請求項４５記載のプログラム。
【請求項４７】
前記入力信号として、一つの実信号から生成した互いに位相が９０度ずれた２つの信号の一方を実部に他方を虚部に持つ複素信号を使用し、前記フィルタ係数として実信号を使用することを特徴とする請求項４２乃至４６の何れか１項に記載のプログラム。
【請求項４８】
前記係数制御部は、前記指標値と前記目標信号との誤差に応じた実信号を生成して出力する共通部と、前記フィルタ部における前記畳み込み演算用の乗算器毎に設けられ、対応する乗算器に入力される複素信号を実数化した信号と前記共通部から入力される前記実信号と現在の実フィルタ係数とに基づいて次サンプリング周期で使用する実フィルタ係数を算出する複数の個別部とを含むことを特徴とする請求項４７記載のプログラム。
【請求項４９】
前記係数制御部は、前記出力信号の包絡線の値を前記指標値とすることを特徴とする請求項４２乃至４８の何れか１項に記載のプログラム。
【手続補正書】
【提出日】平成20年1月19日(2008.1.19)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するフィルタ部と、
前記畳み込み演算を行うための少なくとも１つの乗算器に入力される前記入力信号と前記フィルタ部の出力信号とを加算して出力する加算器と、
該加算器の前記出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する係数制御部と、
を備えることを特徴とする適応ディジタルフィルタ。
【請求項２】
入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するフィルタ部と、
前記畳み込み演算を行うための複数の乗算器のうち初期値の大きなフィルタ係数が与えられる乗算器に入力される前記入力信号と前記フィルタ部の出力信号とを加算して出力する加算器と、
該加算器の前記出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する係数制御部と、
を備えることを特徴とする適応ディジタルフィルタ。
【請求項３】
入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するフィルタ部と、
前記畳み込み演算を行うための複数の乗算器のうち初期値の大きなフィルタ係数が与えられる１つの乗算器に入力される前記入力信号と前記フィルタ部の出力信号とを加算して出力する加算器と、
該加算器の前記出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する係数制御部と、
を備えることを特徴とする適応ディジタルフィルタ。
【請求項４】
入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するフィルタ部と、
前記出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する係数制御部と、
を備え、かつ、前記フィルタ部は、前記畳み込み演算を行うための少なくとも１つの乗算器の出力信号を拡大して使用し、前記係数制御部は、前記乗算器で使用するフィルタ係数の生成元となる前記誤差にかかる信号を前記拡大に見合った分だけ縮小して使用することを特徴とする適応ディジタルフィルタ。
【請求項５】
収束後のフィルタ係数の期待値に基づいてフィルタ係数を複数のグループに分類し、グループ毎に前記拡大の倍率と前記縮小の倍率とを定めることを特徴とする請求項４記載の適応ディジタルフィルタ。
【請求項６】
前記入力信号として、一つの実信号から生成した互いに位相が９０度ずれた２つの信号の一方を実部に他方を虚部に持つ複素信号を使用し、前記フィルタ係数として実信号を使用することを特徴とする請求項１乃至５の何れか１項に記載の適応ディジタルフィルタ。
【請求項７】
前記係数制御部は、前記指標値と前記目標信号との誤差に応じた実信号を生成して出力する共通部と、前記フィルタ部における前記畳み込み演算用の乗算器毎に設けられ、対応する乗算器に入力される複素信号を実数化した信号と前記共通部から入力される前記実信号と現在の実フィルタ係数とに基づいて次サンプリング周期で使用する実フィルタ係数を算出する複数の個別部とを含むことを特徴とする請求項６記載の適応ディジタルフィルタ。
【請求項８】
前記係数制御部は、前記出力信号の包絡線の値を前記指標値とすることを特徴とする請求項１乃至７の何れか１項に記載の適応ディジタルフィルタ。
【請求項９】
請求項１乃至８の何れか１項に記載された適応ディジタルフィルタと、中間周波数に変換されディジタル化されたＦＭ変調信号をヒルベルト変換して生成した複素信号を前記適応ディジタルフィルタに入力するヒルベルト変換器とを備えたことを特徴とするＦＭ受信機。
【請求項１０】
ａ）入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するステップ、
ｂ）前記畳み込み演算を行うための少なくとも１つの乗算器に入力される前記入力信号と前記ステップａの出力信号とを加算して出力するステップ、
ｃ）前記ステップｂの出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御するステップ、
を含むことを特徴とする信号処理方法。
【請求項１１】
ａ）入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するステップ、
ｂ）前記畳み込み演算を行うための複数の乗算器のうち初期値の大きなフィルタ係数が与えられる乗算器に入力される前記入力信号と前記ステップａの出力信号とを加算して出力するステップ、
ｃ）前記ステップｂの出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御するステップ、
を含むことを特徴とする信号処理方法。
【請求項１２】
ａ）入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するステップ、
ｂ）前記畳み込み演算を行うための複数の乗算器のうち初期値の大きなフィルタ係数が与えられる１つの乗算器に入力される前記入力信号と前記ステップａの出力信号とを加算して出力するステップ、
ｃ）前記ステップｂの出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御するステップ、
を含むことを特徴とする信号処理方法。
【請求項１３】
ａ）入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するステップ、
ｂ）前記出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御するステップ、
を含み、
前記ステップａにおいては、前記畳み込み演算を行うための少なくとも１つの乗算器の出力信号を拡大して使用し、前記ステップｂにおいては、前記乗算器で使用するフィルタ係数の生成元となる前記誤差にかかる信号を前記拡大に見合った分だけ縮小して使用することを特徴とする信号処理方法。
【請求項１４】
収束後のフィルタ係数の期待値に基づいてフィルタ係数を複数のグループに分類し、グループ毎に前記拡大の倍率と前記縮小の倍率とを定めることを特徴とする請求項１３記載の信号処理方法。
【請求項１５】
前記入力信号として、一つの実信号から生成した互いに位相が９０度ずれた２つの信号の一方を実部に他方を虚部に持つ複素信号を使用し、前記フィルタ係数として実信号を使用することを特徴とする請求項１０乃至１４の何れか１項に記載の信号処理方法。
【請求項１６】
前記出力信号の包絡線の値を前記指標値とすることを特徴とする請求項１０乃至１５の何れか１項に記載の信号処理方法。
【請求項１７】
コンピュータを、入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するフィルタ部、前記畳み込み演算を行うための少なくとも１つの乗算器に入力される前記入力信号と前記フィルタ部の出力信号とを加算して出力する加算器、該加算器の前記出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する係数制御部、として機能させるためのプログラム。
【請求項１８】
コンピュータを、入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するフィルタ部、前記畳み込み演算を行うための複数の乗算器のうち初期値の大きなフィルタ係数が与えられる乗算器に入力される前記入力信号と前記フィルタ部の出力信号とを加算して出力する加算器、該加算器の前記出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する係数制御部、として機能させるためのプログラム。
【請求項１９】
コンピュータを、入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するフィルタ部、前記畳み込み演算を行うための複数の乗算器のうち初期値の大きなフィルタ係数が与えられる１つの乗算器に入力される前記入力信号と前記フィルタ部の出力信号とを加算して出力する加算器、該加算器の前記出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する係数制御部、として機能させるためのプログラム。
【請求項２０】
コンピュータを、入力信号とフィルタ係数との畳み込み演算によって出力信号を生成して出力するフィルタ部であって、前記畳み込み演算を行うための少なくとも１つの乗算器の出力信号を拡大して使用するフィルタ部、前記出力信号から導出した指標値と目標信号との誤差に基づいて前記フィルタ係数を制御する係数制御部であって、前記乗算器で使用するフィルタ係数の生成元となる前記誤差にかかる信号を前記拡大に見合った分だけ縮小して使用する係数制御部、として機能させるためのプログラム。
【請求項２１】
収束後のフィルタ係数の期待値に基づいてフィルタ係数を複数のグループに分類し、グループ毎に前記拡大の倍率と前記縮小の倍率とを定めることを特徴とする請求項２０記載のプログラム。
【請求項２２】
前記入力信号として、一つの実信号から生成した互いに位相が９０度ずれた２つの信号の一方を実部に他方を虚部に持つ複素信号を使用し、前記フィルタ係数として実信号を使用することを特徴とする請求項１７乃至２１の何れか１項に記載のプログラム。
【請求項２３】
前記係数制御部は、前記指標値と前記目標信号との誤差に応じた実信号を生成して出力する共通部と、前記フィルタ部における前記畳み込み演算用の乗算器毎に設けられ、対応する乗算器に入力される複素信号を実数化した信号と前記共通部から入力される前記実信号と現在の実フィルタ係数とに基づいて次サンプリング周期で使用する実フィルタ係数を算出する複数の個別部とを含むことを特徴とする請求項２２記載のプログラム。
【請求項２４】
前記係数制御部は、前記出力信号の包絡線の値を前記指標値とすることを特徴とする請求項１７乃至２３の何れか１項に記載のプログラム。
【国際調査報告】
2007010889.tif 000016
2007010889.tif 000017
2007010889.tif 000018
2007010889.tif 000019