(57)【特許請求の範囲】
【請求項１】
縦属接続された複数の遅延タップを備え、入力信号に対する前記複数の遅延タップの演算結果を加算することによって前記入力信号を等化する等化回路と、
前記等化回路の等化誤差に応じて、前記複数の遅延タップの動作数を変更する動作数変更部と、を備え、
前記動作数変更部は、前記遅延タップの動作数を変更する前に前記複数の遅延タップの少なくともいずれかの演算係数を変更することによって前記等化誤差を低減した場合と、前記遅延タップの動作数を所定値まで低減した後に前記複数の遅延タップの少なくともいずれかの演算係数を変更することによって前記等化誤差を低減した場合との間で、前記等化誤差の変動量がしきい値以下の場合または特定の遅延タップの演算係数の変動量がしきい値以下の場合に、当該所定値まで前記遅延タップの動作数を低減することを特徴とする適応等化器。
【請求項２】
前記動作数変更部は、前記複数の遅延タップへの電力供給を個別に停止することによって動作数を低減することを特徴とする請求項１記載の適応等化器。
【請求項３】
前記動作数変更部は、前記複数の遅延タップの動作数を低減する際には、動作している遅延タップのうち最後段の遅延タップへの電力供給を停止することを特徴とする請求項２記載の適応等化器。
【請求項４】
前記動作数変更部は、前記等化誤差が所定値以下である場合に、前記遅延タップの動作数を低減させることを特徴とする請求項１〜３のいずれかに記載の適応等化器。
【請求項５】
前記動作数変更部は、遅延タップの動作数を低減した場合の前記等化誤差の低減量が所定値以下になるまで、前記遅延タップの動作数を低減させることを特徴とする請求項１〜３のいずれかに記載の適応等化器。
【請求項６】
前記動作数変更部は、前記等化誤差に応じて前記遅延タップの演算係数を計算し、当該演算係数が所定値以下の遅延タップへの電力供給を停止することを特徴とする請求項１〜４のいずれかに記載の適応等化器。
【請求項７】
前記等化誤差とは、前記等化回路が出力する等化出力の平均誤差であることを特徴とする請求項１〜６のいずれかに記載の適応等化器。
【請求項８】
前記平均誤差は、前記等化回路の等化出力と、前記等化出力を識別することによって得られる復号データとの差分の平均値であることを特徴とする請求項７記載の適応等化器。
【請求項９】
前記等化回路は、ＦＦＥフィルタ、ＤＦＥフィルタ、および、ＩＩＲフィルタの少なくとも１つを含むことを特徴とする請求項１〜８のいずれかに記載の適応等化器。
【請求項１０】
前記遅延タップの演算係数を最適化する係数設定部を備え、
前記係数設定部は、前記等化回路の等化誤差が最小となるように前記遅延タップの演算係数を設定することを特徴とする請求項１〜９のいずれかに記載の適応等化器。
【請求項１１】
前記遅延タップは、最小二乗法によって、前記遅延タップの演算係数をフィードバック制御することを特徴とする請求項１〜１０のいずれかに記載の適応等化器。
【請求項１２】
縦属接続された複数の遅延タップの、入力信号に対する演算結果を加算することによって前記入力信号を等化する等化ステップと、
前記等化ステップにおける等化誤差に応じて、前記複数の遅延タップの動作数を変更する動作数変更ステップと、を含み、
前記動作数変更ステップにおいて、前記遅延タップの動作数を変更する前に前記複数の遅延タップの少なくともいずれかの演算係数を変更することによって前記等化誤差を低減した場合と、前記遅延タップの動作数を所定値まで低減した後に前記複数の遅延タップの少なくともいずれかの演算係数を変更することによって前記等化誤差を低減した場合との間で、前記等化誤差の変動量がしきい値以下の場合または特定の遅延タップの演算係数の変動量がしきい値以下の場合に、当該所定値まで前記遅延タップの動作数を低減することを特徴とする適応等化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、適応等化器および適応等化方法に関する。
【背景技術】
【０００２】
一般的な適応等化器においては、複数の遅延タップが縦属接続されている。各遅延タップには、演算係数が設定されている。このような構成では、チャネル減衰等が生じた結果、演算係数を更新することによって、等化誤差を抑制することができる。しかしながら、従来の適応等化器では、遅延タップ数を最大チャネルロスに合わせて設計する必要があったため、消費電力を抑制することができなかった。なお、データ受信装置の等化器において、バースト毎に最適なアップ数の分配を行うことによって、総タップ数を減らす技術が開示されている（例えば、特許文献１参照。）
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平５−７５３９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１の技術に係る等化器は、エラー検出に基づいて総タップ数を減少させているわけではないことから、等化精度を保つことができない。
【０００５】
本発明は上記課題に鑑みなされたものであり、等化精度を維持しつつ、消費電力を抑制することができる適応等化器および適応等化方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、明細書開示の適応等化器は、縦属接続された複数の遅延タップを備え、入力信号に対する複数の遅延タップの演算結果を加算することによって入力信号を等化する等化回路と、等化回路の等化誤差に応じて、複数の遅延タップの動作数を変更する動作数変更部と、を備え、前記動作数変更部は、前記遅延タップの動作数を変更する前に前記複数の遅延タップの少なくともいずれかの演算係数を変更することによって前記等化誤差を低減した場合と、前記遅延タップの動作数を所定値まで低減した後に前記複数の遅延タップの少なくともいずれかの演算係数を変更することによって前記等化誤差を低減した場合との間で、前記等化誤差の変動量がしきい値以下の場合または特定の遅延タップの演算係数の変動量がしきい値以下の場合に、当該所定値まで前記遅延タップの動作数を低減するものである。
【０００７】
上記課題を解決するために、明細書開示の適応等化方法は、縦属接続された複数の遅延タップの、入力信号に対する演算結果を加算することによって入力信号を等化する等化ステップと、等化ステップにおける等化誤差に応じて、複数の遅延タップの動作数を変更する動作数変更ステップと、を含み、前記動作数変更ステップにおいて、前記遅延タップの動作数を変更する前に前記複数の遅延タップの少なくともいずれかの演算係数を変更することによって前記等化誤差を低減した場合と、前記遅延タップの動作数を所定値まで低減した後に前記複数の遅延タップの少なくともいずれかの演算係数を変更することによって前記等化誤差を低減した場合との間で、前記等化誤差の変動量がしきい値以下の場合または特定の遅延タップの演算係数の変動量がしきい値以下の場合に、当該所定値まで前記遅延タップの動作数を低減するものである。
【発明の効果】
【０００８】
明細書開示の適応等化器および適応等化方法によれば、等化精度を維持しつつ、消費電力を抑制することができる。
【図面の簡単な説明】
【０００９】
【図１】実施例１に係る適応等化器の構成を説明するためのブロック図である。
【図２】各遅延タップへの電力供給をオンオフするためのスイッチの詳細について説明するための図である。
【図３】係数最適化制御および動作タップ数制御の際に実行されるフローチャートの一例である。
【図４】実施例１に係る適応等化器の効果を視覚的に表す図である。
【図５】動作タップ数低減の効果について説明するための図である。
【図６】実施例２に係る適応等化器の構成を説明するためのブロック図である。
【図７】係数最適化制御および動作タップ数制御の際に実行されるフローチャートの一例である。
【図８】実施例３に係る適応等化器の構成を説明するためのブロック図である。
【図９】実施例４に係る適応等化器の構成を説明するためのブロック図である。
【図１０】係数最適化制御および動作タップ数制御の際に実行されるフローチャートの一例である。
【図１１】実施例５に係る適応等化器の全体構成を説明するためのブロック図である。
【図１２】実施例６に係る適応等化器の全体構成を説明するためのブロック図である。
【発明を実施するための形態】
【００１０】
以下、図面を参照しつつ、実施例について説明する。
【実施例１】
【００１１】
図１は、実施例１に係る適応等化器１００の構成を説明するためのブロック図である。図１を参照して、適応等化器１００は、複数の遅延タップ１０、加算部２０、識別部３０、引算部４０、平均化部４１、係数設定部５０、および制御部６０を含む。
【００１２】
本実施例においては、ｎ個（ｎは２以上の整数）の遅延タップ１０が設けられており、縦属接続されている。したがって、適応等化器１００に入力される信号（Ｉ／Ｐ）は、前段側の遅延タップ１０から後段側の遅延タップ１０に向けて順に入力される。各遅延タップ１０は、遅延部１１、係数記憶部１２、および乗算部１３を含む。各遅延タップ１０は、電源がオンされると動作し、電源がオフされると動作を停止する。ここで、適応等化器１００に設けられた遅延タップ１０の総数をタップ総数と称する。また、電源がオンされて動作している遅延タップ１０の総数を動作タップ数と称する。したがって、ｎ個の遅延タップ１０が全て動作していれば、タップ総数および動作タップ数は「ｎ」となる。
【００１３】
各遅延部１１は、各遅延タップ１０を接続する伝送路に挿入されており、入力される信号に所定時間の遅延量を設定して出力する。したがって、適応等化器１００に入力される信号（Ｉ／Ｐ）は、各遅延タップ１０を経由するごとに、遅延量が付加される。係数記憶部１２は、レジスタなどの記憶手段であり、係数設定部５０によって設定された演算係数を記憶する。ここで、最前段（１段目）の遅延タップ１０の係数記憶部１２は、係数Ｃ１を記憶している。以下、後段に向けて順に、各遅延タップ１０の係数記憶部１２は、係数Ｃ２〜Ｃｎを記憶している。すなわち、２段目〜ｎ段目の遅延タップ１０の係数記憶部１２は、自身の段に対応して係数を記憶している。各遅延タップ１０において、乗算部１３は、遅延部１１によって遅延量が付加された信号（Ｉ／Ｐ）と係数記憶部１２に記憶された係数との乗算結果を出力する。
【００１４】
また、１段目の遅延タップ１０のさらに前段に、係数記憶部１４および乗算部１５が設けられている。係数記憶部１４は、係数設定部５０によって設定された係数Ｃ０を記憶している。乗算部１５は、１段目の遅延タップ１０に入力される前の信号（Ｉ／Ｐ）と係数Ｃ０との乗算結果を出力する。
【００１５】
加算部２０は、各乗算部１３および乗算部１５の出力結果を互いに加算して総和を出力する。加算部２０は、上記総和を、等化出力ｙ（ｔ）として識別部３０に入力する。識別部３０は、等化出力ｙ（ｔ）を「０」と「１」とに識別することによって、復号データを生成出力する。生成された復号データは、下記式（１）で表すこととする。「ｔ」は、等化器の動作を開始してからの時間であり、等化出力ｙ（ｔ）は、時間によって変化するものを示している。
【００１６】
【数１】
0005487996.tif 000002
【００１７】
上記復号データは、引算部４０のプラス側に入力される。引算部４０のマイナス側には、上記等化出力が入力される。引算部４０は、下記式（２）に基づいて、復号データから等化出力を差し引くことによってエラー値ｅ（ｔ）を算出する。平均化部４１は、エラー値ｅ（ｔ）の平均値｜Ａｖｇ｛ｅ（ｔ）｝｜を算出して出力する。本実施例においては、上記のエラー値ｅ（ｔ）を評価関数として用いる。なお、上記の平均値は、下記式（３）で表すことができる。以下、下記式（３）の平均値のことを、平均誤差と称する。下記式（３）において、「ｎ」は動作タップ数を表す。したがって、動作タップ数が「ｋ」であれば、下記式（３）の「ｎ」は、「ｋ」となる。
【００１８】
係数設定部５０は、下記式（３）の平均誤差を最小化する。係数設定部５０は、乗算部１５および各乗算部１３の係数Ｃ０〜Ｃｎを、下記式（３）の平均誤差の最小化に対応する係数に更新して、係数記憶部１４および各係数記憶部１２に出力する。それにより、係数Ｃ０〜Ｃｎが最適化される。なお、係数Ｃ０〜Ｃｎを算出する方法として、最小二乗平均を用いる方法が挙げられる。
【００１９】
【数２】
0005487996.tif 000003
【００２０】
【数３】
0005487996.tif 000004
【００２１】
制御部６０は、レジスタ６１、引算部６２、判定部６３、およびスイッチコントローラ６４を含む。レジスタ６１は、平均化部４１の算出結果を記憶する。引算部６２は、平均化部４１の算出結果から、レジスタ６１に記憶されたデータを差し引いて出力する。引算部６２の演算については、後述する。判定部６３は、引算部６２の出力値の絶対値がしきい値未満であるか否かを判定する。スイッチコントローラ６４は、判定部６３の判定結果に基づいて各遅延タップ１０への電力供給をオンまたはオンする。したがって、制御部６０は、動作数変更部として機能する。
【００２２】
各遅延タップ１０、係数記憶部１４、乗算部１５、および加算部２０は、等化回路として機能する。特に、本実施例に係る適応等化器１００においては、各遅延タップ１０、係数記憶部１４、乗算部１５、および加算部２０は、ＦＦＥ（Feed Forward Equalization）フィルタとして機能する。
【００２３】
図２（ａ）は、各遅延タップ１０への電力供給をオンオフするためのスイッチの詳細について説明するための図である。図２（ａ）を参照して、各遅延タップ１０には、第１スイッチ１６、第２スイッチ１７、および第３スイッチ１８が設けられている。第１スイッチ１６は、乗算部１３から加算部２０への伝送路とグラウンドとの、接続および非接続を切替えるスイッチである。第２スイッチ１７は、電源Ｖｄｄと遅延タップ１０との、接続および非接続を切替えるスイッチである。第３スイッチ１８は、各遅延タップ１０同士を接続する伝送線路とグラウンドとの、接続および非接続を切替えるスイッチである。
【００２４】
図１のスイッチコントローラ６４は、遅延タップ１０を動作させる場合には、図２（ｂ）のテーブルに示すように、第１スイッチ１６をオフさせ、第２スイッチ１７をオンさせ、第３スイッチ１８をオフさせる。それにより、電力が電源Ｖｄｄから遅延タップ１０に供給され、乗算部１３の算出結果が図１の加算部２０に出力され、遅延部１１で遅延量が付加された信号が次の遅延タップ１０に出力される。一方で、スイッチコントローラ６４は、遅延タップ１０の動作を停止する場合には、第１スイッチ１６をオンさせ、第２スイッチ１７をオフさせ、第３スイッチ１８をオンさせる。それにより、遅延タップ１０への電力供給が停止され、遅延部１１および乗算部１３が接地される。その結果、遅延タップ１０の動作が停止され、動作タップ数が１つ減じる。
【００２５】
続いて、適応等化器１００における係数最適化制御および動作タップ数制御の詳細について説明する。図３は、係数最適化制御および動作タップ数制御の際に実行されるフローチャートの一例である。図３を参照して、スイッチコントローラ６４は、すべての遅延タップ１０をオンさせる（ステップＳ１）。次に、係数設定部５０は、係数記憶部１４および各係数記憶部１２に記憶されている係数Ｃ０からＣｎを初期化する（ステップＳ２）。
【００２６】
次いで、係数設定部５０は、平均誤差を最小化する（ステップＳ３）。次に、係数設定部５０は、ステップＳ３で得られた結果に対応する係数Ｃ０〜Ｃｎを係数記憶部１４および各係数記憶部１２に記憶させる（ステップＳ４）。それにより、各係数が最適化される。なお、ステップＳ４で記憶させる係数Ｃ０〜Ｃｋは、レジスタ６１にも記憶される。次いで、スイッチコントローラ６４は、動作タップ数を「ｋ」から「ｋ−１」に減じる（ステップＳ５）。なお、動作タップ数「ｋ」の初期値は、適応等化器１００に設けられている遅延タップ１０の数（ｎ個）に設定される。また、スイッチコントローラ６４は、動作タップ数を１つずつ減らす際には、現状で動作している遅延タップ１０のうち最後段のものをオフする。
【００２７】
次に、係数設定部５０は、動作タップ数「ｋ−１」での平均誤差を最小化する（ステップＳ６）。次いで、係数設定部５０は、ステップＳ６で得られた結果に対応する係数Ｃ０〜Ｃｋ−１を係数記憶部１４および１段目〜「ｋ−１」段目の各係数記憶部１２に記憶させる（ステップＳ７）。それにより、各係数が最適化される。
【００２８】
次に、判定部６３は、動作タップ数「ｋ」での平均誤差から動作タップ数「ｋ−１」での平均誤差を差し引いた値の絶対値がしきい値未満であるか否かを判定する（ステップＳ８）。なお、ステップＳ８においては、動作タップ数「ｋ」での平均誤差は、レジスタ６１から読み出される。ステップＳ８において「Ｙｅｓ」と判定された場合、ステップＳ５〜ステップＳ８が再度実行される。ステップＳ８において「Ｎｏ」と判定された場合には、スイッチコントローラ６４は、動作タップ数を「ｋ」に設定し直す（ステップＳ９）。この場合、スイッチコントローラ６４は、ステップＳ５でオフした遅延タップ１０をオンする。その後、フローチャートの実行が終了する。
【００２９】
図３のフローチャートによれば、平均誤差を最小化させることができるため、係数Ｃ０〜Ｃｎを最適化することができる。また、動作タップ数を低減させた場合の平均誤差の低減量が所定値以下になるまで動作タップ数を低減させることができることから、適応等化精度を維持しつつ、適応等化器１００の消費電力を低減させることができる。なお、図３のフローチャートでは、動作タップ数「ｋ」での平均誤差から動作タップ数「ｋ−１」での平均誤差を差し引いた値を判断基準に用いているが、例えば平均誤差自体が所定値以下になる範囲で動作タップ数を低減させてもよい。
【００３０】
図４は、以上の効果を視覚的に表す図である。図４において、横軸は経過時間を示す。図４を参照して、適応等化器１００に入力される信号（Ｉ／Ｐ）は、完全な矩形波を有しているわけではなく、崩れた波形を有している。等化出力ｙ（ｔ）は、適応等化器１００の適応等化処理によって、矩形波に近づく。等化出力ｙ（ｔ）から得られる復号データは、識別部３０の識別処理によって、矩形波を有するようになる。
【００３１】
次に、係数設定部５０による係数最適化によって、平均誤差が低下する。なお、図４を参照して、係数最適化が完了するタイミングで、平均誤差が最小値を示すようになる。図４の例では、動作タップ数を４つ低減させた場合に平均誤差がしきい値を超えるようになる。したがって、図４の例では、動作タップ数を３つ低減させることができる。
【００３２】
図５（ａ）および図５（ｂ）は、動作タップ数低減の効果について説明するための図である。図５（ａ）は、最大チャネルロスと適応等化器１００の消費電力との関係を説明するための図である。図５（ａ）において、横軸は最大チャネルロスを示し、縦軸は消費電力を示す。一般に、等化器は最大チャネルロスに応じて設計されるため、タップ総数増加に伴って消費電力も増加する。これに対して、図５（ａ）を参照して、本実施例に係る適応等化器１００を用いることによって、電力供給される動作タップ数を低減させることができるため、消費電力を低減させることができる。
【００３３】
図５（ｂ）は、動作タップ数と平均誤差との関係を説明するための図である。図５（ｂ）において、横軸は動作タップ数を示し、縦軸は平均誤差を示す。図５（ｂ）を参照して、動作タップ数が多いほど平均誤差は小さくなる。適応等化の精度が向上するからである。しかしながら、動作タップ数の増加に伴って平均誤差の減少幅は小さくなる。したがって、平均誤差がしきい値以下となった場合においては、動作タップ数を多くすることによる効果に比較して、動作タップ数を少なくすることによる消費電力低下の効果が大きくなる。以上のことから、本実施例に係る適応等化器１００を用いることによって、平均誤差を所定値以下に維持しつつ、消費電力を低減させることができる。
【００３４】
なお、本実施例においては、動作タップ数を減らす際には、動作中の最後段の遅延タップ１０への電力供給を停止していたが、いずれの遅延タップ１０への電力供給を停止してもよい。ただし、適応等化精度に対する影響は、動作中の最後段の遅延タップ１０が最も小さいため、動作中の最後段の遅延タップ１０への電力供給を停止することが好ましい。
【実施例２】
【００３５】
図６は、実施例２に係る適応等化器１０１の構成を説明するためのブロック図である。図６を参照して、本実施例に係る適応等化器１０１が図１の適応等化器１００と異なる点は、引算部６２の代わりに判定部６５を備える点である。その他の構成については、同一符号を付すことによって説明を省略する。
【００３６】
適応等化器１０１においては、係数設定部５０によって設定された各係数は、判定部６５に入力されるとともにレジスタ６１に記憶される。レジスタ６１に記憶された各係数は、判定部６３および判定部６５に入力される。判定部６３は、レジスタ６１に記憶された所定の係数の絶対値がしきい値未満であるか否かを判定する。判定部６５は、判定部６３における判定結果に基づいて、レジスタ６１に記憶された所定の係数と係数設定部５０によって設定された所定の係数との差の絶対値がしきい値未満であるか否かを判定する。判定部６５の判定の詳細については、後述する。スイッチコントローラ６４は、判定部６３および判定部６５の判定結果に基づいて各遅延タップ１０への電力供給をオンまたはオンする。
【００３７】
本実施例においては、各遅延タップ１０に設定される係数に着目する。具体的には、設定される係数が十分に小さい遅延タップ１０は、適応等化にあまり影響を及ぼさない。したがって、設定される係数が十分に小さい遅延タップ１０への電力供給を停止しても、適応等化精度の低下を抑制することができる。一方で、適応等化器１０１の消費電力を低減させることができる。
【００３８】
以下、係数最適化制御および動作タップ数制御の詳細について説明する。図７は、係数最適化制御および動作タップ数制御の際に実行されるフローチャートの一例である。図７を参照して、スイッチコントローラ６４は、すべての遅延タップ１０をオンさせる（ステップＳ１１）。次に、係数設定部５０は、係数記憶部１４および各係数記憶部１２に記憶されている係数Ｃ０からＣｎを初期化する（ステップＳ１２）。
【００３９】
次いで、係数設定部５０は、平均誤差を最小化する（ステップＳ１３）。次に、係数設定部５０は、ステップＳ１３で得られた結果に対応する係数Ｃ０〜Ｃｎを係数記憶部１４および各係数記憶部１２に記憶させる（ステップＳ１４）。それにより、各係数が最適化される。なお、ステップＳ１４で記憶させる係数Ｃ０〜Ｃｋは、レジスタ６１にも記憶される。次いで、スイッチコントローラ６４は、動作タップ数を「ｋ」から「ｋ−１」に減じる（ステップＳ１５）。なお、動作タップ数「ｋ」の初期値は、適応等化器１０１に設けられている遅延タップ１０の数（ｎ個）に設定される。また、スイッチコントローラ６４は、動作タップ数を１つずつ減らす際には、現状で動作している遅延タップ１０のうち最後段のものをオフする。
【００４０】
次に、係数設定部５０は、動作タップ数「ｋ−１」での平均誤差を最小化する（ステップＳ１６）。次いで、係数設定部５０は、ステップＳ１６で得られた結果に対応する係数Ｃ０〜Ｃｋ−１を係数記憶部１４および１段目〜「ｋ−１」段目の各係数記憶部１２に記憶させる（ステップＳ１７）。それにより、各係数が最適化される。
【００４１】
次に、判定部６３は、動作タップ数が「ｋ」のときの「ｋ」番目の係数Ｃｋ（ｋ）をレジスタ６１から取得し、係数Ｃｋ（ｋ）の絶対値が第１しきい値未満であるか否かを判定する（ステップＳ１８）。第１しきい値として、係数Ｃ０〜Ｃｋの平均値よりも小さい値を用いることができる。ステップＳ１８において「Ｙｅｓ」と判定された場合、判定部６５は、動作タップ数が「ｋ」のときの「ｋ−１」番目の係数Ｃｋ（ｋ−１）をレジスタ６１から取得する。また判定部６５は、動作タップ数が「ｋ−１」のときの「ｋ−１」番目の係数Ｃｋ−１（ｋ−１）を係数設定部５０から取得する。その後、判定部６５は、係数Ｃｋ（ｋ−１）と係数Ｃｋ−１（ｋ−１）との差の絶対値が第２しきい値未満であるか否かを判定する（ステップＳ１９）。第２しきい値として、係数Ｃ０〜Ｃｋの平均値よりも小さい値を用いることができる。
【００４２】
ステップＳ１９において「Ｙｅｓ」と判定された場合、ステップＳ１５〜ステップＳ１９が再度実行される。ステップＳ１８およびステップＳ１９において「Ｎｏ」と判定された場合、スイッチコントローラ６４は、動作タップ数を「ｋ」に設定し直す（ステップＳ２０）。この場合、スイッチコントローラ６４は、ステップＳ１５でオフした遅延タップ１０をオンする。その後、フローチャートの実行が終了する。
【００４３】
図７のフローチャートによれば、平均誤差を最小化させることができるため、係数Ｃ０〜Ｃｎを最適化することができる。また、設定される係数が十分に小さい遅延タップ１０への電力供給が停止されることから、動作タップ数を低減させた場合の平均誤差の低減量を所定値以下に抑えることができる。したがって、適応等化の精度を維持しつつ、消費電力を低減させることができる。また、ステップＳ１９で、動作タップ数を「ｋ」から「ｋ−１」に減らしても「ｋ−１」番目の係数に大きな変化が無いことを確認していることから、適応等化の精度が担保される。
【実施例３】
【００４４】
図８は、実施例３に係る適応等化器１０２の構成を説明するためのブロック図である。図８を参照して、本実施例に係る適応等化器１０２が図１の適応等化器１００と異なる点は、フィルタとしてＦＦＥフィルタの代わりに、ＤＦＥ（Decision Feedback Equalization）フィルタが設けられている点である。その他の構成については、同一符号を付すことによって説明を省略する。なお、遅延タップ１０ａは、図１の遅延タップ１０と同様の機能を有する。したがって、図８の遅延部１１ａ、係数記憶部１２ａおよび乗算部１３ａは、図１の遅延部１１、係数記憶部１２および乗算部１３と同様の機能を有する。
【００４５】
ＤＦＥフィルタは、図１のＦＦＥフィルタと同様に、複数の遅延タップ１０ａが縦属接続された構造を有する。適応等化器１０２に入力される信号（Ｉ／Ｐ）は、加算部２０に入力される。また、加算部２０には、各遅延タップ１０ａの乗算部１３ａの出力結果が入力される。加算部２０は、乗算部１３ａの出力結果を互いに加算して総和を出力する。加算部２０の加算結果は、等化出力ｙ（ｔ）として識別部３０に入力される。識別部３０は、等化出力ｙ（ｔ）を「０」と「１」とに識別することによって、復号データを生成出力する。
【００４６】
復号データは、最前段（１段目）の遅延タップ１０ａに入力される。復号データは、１段目の遅延タップ１０ａから後段の遅延タップ１０ａに向けて順に入力される。各遅延部１１ａは、入力される信号に所定時間の遅延量を付加して出力する。各遅延タップ１０ａの係数記憶部１２ａは、係数ｄ１〜ｄｍを記憶している（ｍは、２以上の整数）。各遅延タップ１０ａにおいて、乗算部１３ａは、遅延部１１ａによって遅延量が付加された復号データと係数記憶部１２ａに記憶された係数との乗算結果を加算部２０に入力する。
【００４７】
一方、識別部３０によって出力された復号データは、引算部４０のプラス側にも入力される。また、加算部２０が出力する等化出力は、引算部４０のマイナス側にも入力される。引算部４０は、復号データから等化出力を差し引くことによってエラー値ｅ（ｔ）を算出する。平均化部４１は、エラー値ｅ（ｔ）の平均誤差｜Ａｖｇ｛ｅ（ｔ）｝｜を算出して平均誤差として出力する。係数設定部５０は、平均誤差を最小化する。係数設定部５０は、各乗算部１３ａの係数ｄ１〜ｄｍを、平均誤差の最小化に対応する係数に更新して、各係数記憶部１２ａに出力する。それにより、係数ｄ１〜ｄｍが最適化される。なお、係数ｄ１〜ｄｍを算出する方法として、最小二乗平均を用いる方法が挙げられる。
【００４８】
本実施例においては、制御部６０は、実施例１と同様に、平均誤差がしきい値未満になる範囲で動作タップ数を低減させてもよい。また、制御部６０は、動作タップ数を低減させた場合の平均誤差の低減量が所定値以下になるまで動作タップ数を低減させてもよい。また、制御部６０は、実施例２と同様に、設定される係数が十分に小さい遅延タップ１０ａへの電力供給を停止することによって動作タップ数を低減させてもよい。このようにすることによって、適応等化精度を維持しつつ、適応等化器１０２の消費電力を低減させることができる。
【実施例４】
【００４９】
図９は、実施例４に係る適応等化器１０３の構成を説明するためのブロック図である。図９を参照して、本実施例に係る適応等化器１０３が図１の適応等化器１００と異なる点は、フィルタとしてＦＦＥフィルタおよびＤＦＥフィルタの両方が設けられている点である。その他の構成については、同一符号を付すことによって説明を省略する。なお、制御部６０ａは、制御部６０と同様の機能を有する。
【００５０】
本実施例においては、ＦＦＥフィルタの乗算部１５および各乗算部１３の出力結果が加算部２０に入力されるとともに、ＤＦＥフィルタの各乗算部１３ａの出力結果が加算部２０に入力される。加算部２０は、乗算部１５、各乗算部１３および各乗算部１３ａの出力結果を互いに加算して総和を出力する。加算部２０の加算結果は、等化出力ｙ（ｔ）として識別部３０に入力される。識別部３０は、等化出力ｙ（ｔ）を「０」と「１」とに識別することによって、復号データを生成出力する。
【００５１】
復号データは、ＤＦＥフィルタの最前段（１段目）の遅延タップ１０に入力されるとともに、引算部４０のプラス側にも入力される。また、加算部２０が出力する等化出力は、引算部４０のマイナス側にも入力される。引算部４０は、復号データから等化出力を差し引くことによってエラー値ｅ（ｔ）を算出する。平均化部４１は、エラー値ｅ（ｔ）の平均値｜Ａｖｇ｛ｅ（ｔ）｝｜を算出して平均誤差として出力する。係数設定部５０は、平均誤差を最小化する。係数設定部５０は、ＦＦＥフィルタの係数記憶部１４の係数Ｃ０および係数記憶部１２の係数Ｃ１〜Ｃｎを、平均誤差の最小化に対応する係数に更新して、ＦＦＥフィルタの係数記憶部１４および各係数記憶部１２に出力する。また、係数設定部５０は、ＤＦＥフィルタの係数記憶部１２ａの係数ｄ１〜ｄｍを、平均誤差の最小化に対応する係数に更新して、ＤＦＥフィルタの各係数記憶部１２ａに出力する。それにより、係数Ｃ０〜Ｃｎおよび係数ｄ１〜ｄｍが最適化される。
【００５２】
さらに、ＦＦＥフィルタの制御部６０およびＤＦＥフィルタの制御部６０ａは、実施例１と同様に、平均誤差がしきい値未満になる範囲で動作タップ数を低減させてもよい。また、上記制御部６０および上記制御部６０ａは、動作タップ数を低減させた場合の平均誤差の低減量が所定値以下になるまで動作タップ数を低減させてもよい。また、上記制御部６０および上記制御部６０ａは、実施例２と同様に、設定される係数が十分に小さい遅延タップ１０への電力供給を停止することによって動作タップ数を低減させてもよい。このようにすることによって、適応等化精度を維持しつつ、適応等化器１０３の消費電力を低減させることができる。
【００５３】
図１０は、係数最適化制御および動作タップ数制御の際に実行されるフローチャートの一例である。図１０を参照して、ＦＦＥフィルタの制御部６０およびＤＦＥフィルタの制御部６０ａは、すべての遅延タップ１０をオンさせる（ステップＳ２１）。次に、係数設定部５０は、ＦＦＥフィルタの係数記憶部１４および各係数記憶部１２に記憶されている係数Ｃ０〜Ｃｎを初期化する。さらに、係数設定部５０は、ＤＦＥフィルタの各係数記憶部１２ａに記憶されている係数ｄ１〜ｄｎを初期化する（ステップＳ２２）。
【００５４】
次いで、係数設定部５０は、平均誤差を最小化する（ステップＳ２３）。次に、係数設定部５０は、ステップＳ２３で得られた結果に対応する係数Ｃ０〜ＣｎをＦＦＥフィルタの係数記憶部１４および各係数記憶部１２に記憶させる。さらに、係数設定部５０は、ステップＳ２３で得られた結果に対応する係数ｄ１〜ｄｍをＤＦＥフィルタの係数記憶部１２ａに記憶させる（ステップＳ２４）。
【００５５】
次に、ＤＦＥフィルタの制御部６０ａは、動作タップ数を「ｋ」から「ｋ−１」に減じる（ステップＳ２５）。なお、動作タップ数「ｋ」の初期値は、ＤＦＥフィルタに設けられている遅延タップ１０ａの数（ｍ個）に設定される。次に、係数設定部５０は、動作タップ数「ｋ−１」での平均誤差を最小化する（ステップＳ２６）。次いで、係数設定部５０は、ステップＳ２６で得られた結果に対応する係数ｄ１〜ｄｋ−１をＤＦＥフィルタの各係数記憶部１２ａに記憶させる（ステップＳ２７）。
【００５６】
次に、ＤＦＥフィルタの制御部６０ａは、動作タップ数「ｋ」での平均誤差から動作タップ数「ｋ−１」での平均誤差を差し引いた値の絶対値がしきい値未満であるか否かを判定する（ステップＳ２８）。ステップＳ２８において「Ｙｅｓ」と判定された場合、ステップＳ２５〜ステップＳ２８が再度実行される。ステップＳ２８において「Ｎｏ」と判定された場合には、ＤＦＥフィルタの制御部６０ａは、動作タップ数を「ｋ」に設定し直す（ステップＳ３４）。この場合、制御部６０ａは、ステップＳ２５でオフした遅延タップ１０ａをオンする。
【００５７】
次いで、ＦＦＥフィルタの制御部６０は、ＦＦＥフィルタの動作タップ数を「ｋ」から「ｋ−１」に減じる（ステップＳ３０）。なお、動作タップ数「ｋ」の初期値は、ＦＦＥフィルタに設けられている遅延タップ１０の数（ｎ個）に設定される。次に、係数設定部５０は、動作タップ数「ｋ−１」での平均誤差を最小化する（ステップＳ３１）。次いで、係数設定部５０は、ステップＳ３１で得られた結果に対応する係数Ｃ０〜Ｃｋ−１をＦＦＥフィルタの係数記憶部１４および各係数記憶部１２に記憶させる（ステップＳ３２）。
【００５８】
次に、ＦＦＥフィルタの制御部６０は、動作タップ数「ｋ」での平均誤差から動作タップ数「ｋ−１」での平均誤差を差し引いた値の絶対値がしきい値未満であるか否かを判定する（ステップＳ３３）。ステップＳ３３において「Ｙｅｓ」と判定された場合、ステップＳ３０〜ステップＳ３３が再度実行される。ステップＳ３３において「Ｎｏ」と判定された場合には、ＦＦＥフィルタの制御部６０は、動作タップ数を「ｋ」に設定し直す（ステップＳ３４）。この場合、制御部６０は、ステップＳ３０でオフした遅延タップ１０をオンする。
【００５９】
図１０のフローチャートによれば、適応等化精度を維持しつつ、適応等化器１０３の消費電力を低減させることができる。また、ＤＦＥフィルタの最適化の後にＦＦＥフィルタの最適化を行うことによって、ＦＦＥフィルタの最適化の際にＤＦＥフィルタのフィードバックの結果を利用することができる。したがって、図１０のフローチャートのように、ＤＦＥフィルタの最適化の後にＦＦＥフィルタの最適化を行うことが好ましい。
【実施例５】
【００６０】
図１１は、実施例５に係る適応等化器１０４の全体構成を説明するためのブロック図である。適応等化器１０４は、等化回路として実施例３に係るＤＦＥフィルタを備える。適応等化器１０４が実施例３に係る適応等化器１０２と異なる点は、加算部７１、引算部７２、および合波部７３を備える点、および、識別部３０の代わりに第１識別部３１および第２識別部３２を備える点である。本実施例においては、ＤＦＥフィルタ、加算部７１、加算部７２、第１識別部３１および第２識別部３２がＩＩＲ（Infinite Impulse Response）フィルタとして機能する。
【００６１】
適応等化器１０４に入力される信号（Ｉ／Ｐ）は、加算部７１および引算部７２に入力される。また、加算部７１および引算部７２には、加算部２０の出力Ｖ＿ＩＩＲ（ｔ）が入力される。加算部７１は、信号（Ｉ／Ｐ）と出力Ｖ＿ＩＩＲ（ｔ）との加算結果を等化出力ｙｅ（ｔ）として第１識別部３１に入力する。引算部７２は、信号（Ｉ／Ｐ）から出力Ｖ＿ＩＩＲ（ｔ）を差し引いた結果を等化出力ｙ０（ｔ）として第２識別部３２に入力する。
【００６２】
第１識別部３１は、等化出力ｙｅ（ｔ）を「０」と「１」とに識別したデータを、合波部７３に出力する。第２識別部３２は、等化出力ｙ０（ｔ）を「０」と「１」とに識別したデータを、合波部７３に出力する。合波部７３は、クロック信号の入力タイミングで第１識別部３１の生成データと第２識別部３２の生成データとを合成することによって、復号データを生成出力する。
【００６３】
復号データは、最前段（１段目）の遅延タップ１０ａに入力される。復号データは、１段目の遅延タップ１０ａから後段の遅延タップ１０ａに向けて順に入力される。各遅延部１１ａは、入力される信号に所定時間の遅延量を付加して出力する。各遅延タップ１０ａの係数記憶部１２ａは、係数ｄ１〜ｄｍを記憶している（ｍは、２以上の整数）。各遅延タップ１０ａにおいて、乗算部１３ａは、遅延部１１ａによって遅延量が付加された復号データと係数記憶部１２ａに記憶された係数との乗算結果を加算部２０に入力する。
【００６４】
一方、合波部７３で生成された復号データは、引算部４０のプラス側にも入力される。また、信号（Ｉ／Ｐ）は、引算部４０のマイナス側にも入力される。引算部４０は、復号データから信号（Ｉ／Ｐ）を差し引くことによってエラー値ｅ（ｔ）を算出する。平均化部４１は、エラー値ｅ（ｔ）の平均値｜Ａｖｇ｛ｅ（ｔ）｝｜を算出して平均誤差として出力する。係数設定部５０は、平均誤差を最小化する。係数設定部５０は、各乗算部１３ａの係数ｄ１〜ｄｍを、平均誤差の最小化に対応する係数に更新して、各係数記憶部１２ａに出力する。それにより、係数ｄ１〜ｄｍが最適化される。なお、係数ｄ１〜ｄｍを算出する方法として、最小二乗平均を用いる方法が挙げられる。
【００６５】
本実施例においては、制御部６０は、実施例１と同様に、平均誤差がしきい値未満になる範囲で動作タップ数を低減させてもよい。制御部６０は、動作タップ数を低減させた場合の平均誤差の低減量が所定値以下になるまで動作タップ数を低減させてもよい。また、制御部６０は、実施例２と同様に、設定される係数が十分に小さい遅延タップ１０ａへの電力供給を停止することによって動作タップ数を低減させてもよい。このようにすることによって、適応等化精度を維持しつつ、適応等化器１０４の消費電力を低減させることができる。
【実施例６】
【００６６】
図１２は、実施例６に係る適応等化器１０５の全体構成を説明するためのブロック図である。図１２を参照して、適応等化器１０５が図１の適応等化器１００と異なる点は、遅延タップ１０の代わりに遅延タップ１０ｂを備える点である。遅延タップ１０ｂが遅延タップ１０と異なる点は、乗算部２１、加算部２２、加算部２３、およびスイッチ２４をさらに備える点である。
【００６７】
適応等化器１０５に入力される信号（Ｉ／Ｐ）は、１段目の遅延タップ１０ｂから後段の遅延タップ１０ｂに向けて順に入力される。各遅延部１１は、入力される信号に所定時間の遅延量を付加して出力する。係数記憶部１２は、レジスタなどの記憶手段であり、加算部２２から入力される係数を記憶する。乗算部１３は、遅延部１１によって遅延量が付加された信号（Ｉ／Ｐ）と係数記憶部１２に記憶された係数との乗算結果を加算部２３に出力する。
【００６８】
加算部２３は、乗算部１３の出力結果と、次段の遅延タップ１０ｂの加算部２３の出力結果とを足し合わせる。加算部２３の出力結果は、スイッチ２４がオンしている場合に、前段の遅延タップ１０ｂの加算部２３に出力される。例えば、２段目の遅延タップ１０ｂにおいては、加算部２３は、乗算部１３の出力結果と次段の遅延タップ１０ｂの加算部２３の出力結果とを足し合わせる。スイッチ２４がオンしている場合には、加算部２３の出力結果は、１段目の遅延タップ１０ｂの加算部２３に入力される。
【００６９】
なお、最後段の遅延タップ１０ｂには、加算部２３は設けられていない。また、最前段の遅延タップ１０ｂの前段には、係数記憶部１４、乗算部１５、乗算部２１、加算部２２、および加算部２３が設けられている。乗算部１５は、適応等化器１０５に入力された信号（Ｉ／Ｐ）と係数記憶部１４に記憶された係数との乗算結果を加算部２３に出力する。加算部２３は、乗算部１５の出力結果と、１段目の遅延タップ１０ｂの加算部２３の出力結果とを足し合わせ、その結果を等化出力ｙ（ｔ）として、識別部３０と引算部４０のマイナス側とに入力する。
【００７０】
識別部３０は、等化出力ｙ（ｔ）を「０」と「１」とに識別することによって、復号データを生成出力する。生成された復号データは、引算部４０のプラス側に入力される。上記等化出力は、引算部４０のマイナス側に入力される。引算部４０は、復号データから等化出力を差し引くことによってエラー値ｅ（ｔ）を算出する。平均化部４１は、エラー値ｅ（ｔ）の平均値｜Ａｖｇ｛ｅ（ｔ）｝｜を算出して、平均誤差として出力する。
【００７１】
本実施例に係る適応等化器１０５には、係数設定部５０の代わりに乗算部５１が設けられている。乗算部５１は、引算部４０によって得られたエラー値ｅｋ（ｔ）と１よりも十分に小さい係数ｕとの乗算結果を、各遅延タップ１０ｂの乗算部２１に入力する。なお、エラー値ｅｋ（ｔ）とは、動作タップ数が「ｋ」である場合のエラー値である。各遅延タップ１０ｂにおいては、乗算部２１は、乗算部５１から入力されたｕ×ｅｋ（ｔ）を用いて、下記式（４）に従って新たに係数を設定し、係数記憶部１２に記憶させる。このような最小二乗法を用いることによって、各遅延タップ１０ｂの演算係数を最適化することができる。なお、下記式（４）において旧Ｃ（ｋ）は、下記式（４）が演算される直前に係数記憶部１２に記憶されていた係数のことである。また、ｙ（ｔ−ｋＴ）は、「ｋ」段目の遅延タップ１０ｂに入力される信号のことであり、「Ｔ」は各遅延部１１における遅延量である。なお、最前段の遅延タップ１０ｂよりも前段の乗算部２１および加算部２２も、各遅延タップ１０ｂと同様の作用をもたらす。
新Ｃ（ｋ）＝旧Ｃ（ｋ）＋ｙ（ｔ−ｋＴ）・ｕ・ｅｋ（ｔ）    （４）
【００７２】
本実施例によれば、実施例１〜５のような係数設定部５０を備えていなくても、各遅延タップ１０ｂの演算係数が最適化される。このように、各遅延タップ１０ｂにおいて係数が自己最適化されるため、スイッチコントローラによる電力供給停止の対象となる遅延タップ１０ｂの数を増やすことができる。それにより、消費電力をより低減させることができる。
【００７３】
なお、上記各実施例においては、遅延タップは演算として乗算を行っていたが、それに限られない。遅延タップはどのような演算を行っていてもよく、重みづけ等を行ってもよい。
【００７４】
以上、本発明の実施例について詳述したが、本発明は係る特定の実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００７５】
１０  遅延タップ
１１  遅延部
１２  係数記憶部
１３  乗算部
１４  係数記憶部
１５  乗算部
１６  第１スイッチ
１７  第２スイッチ
１８  第３スイッチ
２０  加算部
３０  識別部
４０  引算部
５０  係数設定部
６０  制御部
６１  レジスタ
６２  引算部
６３  判定部
６４  スイッチコントローラ
１００  適応等化器
【図１】
0005487996.tif 000005
【図２】
0005487996.tif 000006
【図３】
0005487996.tif 000007
【図４】
0005487996.tif 000008
【図５】
0005487996.tif 000009
【図６】
0005487996.tif 000010
【図７】
0005487996.tif 000011
【図８】
0005487996.tif 000012
【図９】
0005487996.tif 000013
【図１０】
0005487996.tif 000014
【図１１】
0005487996.tif 000015
【図１２】
0005487996.tif 000016