(57)【特許請求の範囲】
【請求項１】
２の補数形式にて表現された入力信号ｓ（ｋ）を受けてアドレスベクトルを出力するアドレスベクトル生成部を有する入力レジスタと、
複数の部分積を格納すると共に前記アドレスベクトルで指定された部分積を出力する適応関数空間回路であって、前記複数の部分積のうちの直前のアドレスベクトルで指定された部分積と誤差信号に基づいて前記直前のアドレスベクトルで指定された部分積を更新する機能を有する適応関数空間回路と、
前記適応関数空間回路から出力された部分積をシフト加算してフィルタ出力ｙ（ｋ）として出力するシフト加算器と、
前記誤差信号を所望信号ｄ（ｋ）と前記フィルタ出力ｙ（ｋ）とから生成し前記適応関数空間回路に出力する誤差信号出力回路と
を備える適応フィルタであって、
前記誤差信号出力回路は、前記所望信号ｄ（ｋ）と前記フィルタ出力ｙ（ｋ）の差分である正誤差信号ｅ（ｋ）と当該正誤差信号ｅ（ｋ）の反転信号である負誤差信号−ｅ（ｋ）の二種類の前記誤差信号を生成して、前記適応関数空間回路に出力するものであり、
前記適応関数空間回路は、前記部分積のうちの直前のアドレスベクトルで指定された部分積である第１更新対象要素と前記正誤差信号ｅ（ｋ）に基づいて前記第１更新対象要素を更新すると共に、前記直前のアドレスベクトルとビット反転の関係にあるアドレスベクトルにて指定されうる第２更新対象要素と前記負誤差信号−ｅ（ｋ）に基づいて前記第２更新対象要素を更新する
適応フィルタ。
【請求項２】
請求項１記載の適応フィルタであって、
前記適応関数空間回路は、
前記アドレスベクトルを受けてアドレス信号を生成するアドレスデコーダと、
前記部分積の一部を夫々格納するための複数のラッチ素子と、
アドレス信号に従って、前記ラッチ素子に格納されているデータを選択的に出力する出力計算用出力側セレクタと、
前記第１更新対象要素に対する読み出し及び書き込みを可能とする第１更新動作用出力側セレクタ及び第１更新動作用入力側セレクタと
前記第２更新対象要素に対する読み出し及び書き込みを可能とする第２更新動作用出力側セレクタ及び第２更新動作用入力側セレクタと
を備えており、２以上の前記ラッチ素子に対して同時に読み出し／書き込み可能となるように構成されている
適応フィルタ。
【請求項３】
請求項２記載の適応フィルタであって、
前記入力レジスタは、前記入力信号ｓ（ｋ）を受けて、更新用アドレスベクトルを生成する更新用アドレスベクトル生成部を更に有しており、
前記適応関数空間回路は：
前記更新用アドレスベクトルを受けて更新アドレス信号を生成して、前記第１更新動作用出力側セレクタと前記第１更新動作用入力側セレクタとに出力する更新用アドレスデコーダと；
前記更新アドレス信号を反転して更新用出力側反転アドレス信号を生成して、前記第２更新動作用出力側セレクタに出力する出力側反転アドレス信号生成部と；
前記更新アドレス信号を反転して更新用入力側反転アドレス信号を生成して、前記第２更新動作用入力側セレクタに出力する入力側反転アドレス信号生成部と；
前記第１更新動作用出力側セレクタから読みだされた前記第１更新対象要素と前記正誤差信号ｅ（ｋ）とから更新値を算出して前記第１更新動作用入力側セレクタを介して前記第１更新対象要素の更新を行う第１更新回路と；
前記第２更新動作用出力側セレクタから読みだされた前記第２更新対象要素と前記負誤差信号−ｅ（ｋ）とから更新値を算出して前記第２更新動作用入力側セレクタを介して前記第２更新対象要素の更新を行う第２更新回路と；
を更に備えている、
適応フィルタ。
【請求項４】
請求項３記載の適応フィルタであって、
前記適応関数空間回路は、
前記第１更新動作用出力側セレクタから読みだされた前記第１更新対象要素をラッチし、ラッチ後の第１更新対象要素を前記第１更新回路に出力する第１要素ラッチと、
前記第２更新動作用出力側セレクタから読みだされた前記第２更新対象要素をラッチし、ラッチ後の第２更新対象要素を前記第２更新回路に出力する第２要素ラッチと、
前記更新用アドレスデコーダから前記更新アドレス信号を受けてラッチし、ラッチ後の更新アドレス信号を前記第１更新動作用入力側セレクタ及び前記入力側反転アドレス信号生成部に出力するアドレスラッチと
を更に備えており、
前記第１要素ラッチ、前記第２要素ラッチ及び前記アドレスラッチにより、前記フィルタ出力ｙ（ｋ）を算出するための出力計算処理と前記正誤差信号ｅ（ｋ）及び前記負誤差信号−ｅ（ｋ）に基づいた更新処理とを互いに分離して行えるようにした適応フィルタ。
【請求項５】
請求項３又は請求項４記載の適応フィルタであって、
前記アドレスベクトル生成部は、前記入力信号ｓ（ｋ）の最上位ビットのみを反転して得られる一部反転信号を最下位ビットから処理することにより前記アドレスベクトルを生成するものであり、
前記更新用アドレスベクトル生成部は、前記入力信号ｓ（ｋ）の最上位ビットのみを反転して得られる一部反転信号を当該最上位ビットから処理することにより前記更新用アドレスベクトルを生成するものである
適応フィルタ。
【請求項６】
請求項２乃至請求項５のいずれかに記載の適応フィルタであって、
前記適応関数空間回路は、複数の適応関数空間モジュールとバイナリツリー加算器とから構成されるものであり、
前記適応関数空間モジュールの夫々は、前記複数のラッチ素子と、前記出力計算用出力側セレクタと、前記第１更新動作用出力側セレクタ及び前記第１更新動作用入力側セレクタと、前記第２更新動作用出力側セレクタ及び前記第２更新動作用入力側セレクタとを備えており、
前記バイナリツリー加算器は、前記複数の適応関数空間モジュールの前記出力計算用出力側セレクタからの出力を受けて前記部分積を出力するものである
適応フィルタ。
【請求項７】
請求項１記載の適応フィルタであって、
前記入力レジスタは、前記入力信号ｓ（ｋ）を受けて、該入力信号ｓ（ｋ）の最上位ビットのみを反転して得られる信号から前記アドレスベクトルを生成する
適応フィルタ。
【請求項８】
２の補数形式にて表現された入力信号ｓ（ｋ）に対して、所望信号ｄ（ｋ）に基づいて適応的に変化させたフィルタ係数を乗算して得られるようなフィルタ出力ｙ（ｋ）を出力する適応フィルタであって複数の部分積を格納した適応関数空間を利用して分散演算することにより乗算することなく加算のみで前記フィルタ出力ｙ（ｋ）を出力する適応フィルタにおいて、
前記適応関数空間に格納されている前記複数の部分積のうち、直前の前記入力信号ｓ（ｋ）から生成されたアドレスベクトルで指定された部分積と当該アドレスベクトルとビット反転の関係にあるアドレスベクトルにて指定されうる部分積との２組の部分積と、所望信号ｄ（ｋ）とフィルタ出力ｙ（ｋ）との差分から得られる相補信号とに基づいて前記２組の部分積を更新することにより、収束速度の向上が図られた適応フィルタ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分散演算処理に基づくことにより乗算器を用いずに構成された適応フィルタに関する。
【背景技術】
【０００２】
この種の適応フィルタは、例えば、非特許文献１及び非特許文献２に開示されている。
【０００３】
非特許文献１は、入力信号の表現形式を２の補数形式とすることで推定精度及び収束速度の大幅に改善された適応フィルタについて開示している。また、非特許文献１には、分散演算処理に用いられる複数の部分積から構成される適応関数空間を複数に分割することにより（マルチメモリブロック構造）、収束速度の更なる向上を図ると共に低消費電力化及び低ハードウェア量化を達成してなる適応フィルタについても開示している。
【０００４】
非特許文献２は、２の補数形式表現の入力信号を処理する適応フィルタの適応関数空間に準奇対称性が成立することを見出し、その準奇対称性を利用して、前述の非特許文献１に開示された適応フィルタを改善してなるものである。ここで、準奇対称性とは、ビット反転の関係にあるアドレスで指定される部分積が互いに異符号であり且つ近似的に等しい絶対値を有することをいう。準奇対称性を利用すると、適応関数空間の領域を約半分にする一方で収束速度の向上を図ることができる。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】恒川佳隆、高橋強、豊田真嗣、三浦守、「分散演算によるマルチプライヤレスＬＭＳ適応フィルタの高性能ＶＬＳＩアーキテクチャ」、電子情報通信学会論文誌Ａ、Ｖｏｌ．Ｊ８２−Ａ，Ｎｏ．１０，ｐｐ．１５１８〜１５２８，１９９９年１０月
【非特許文献２】高橋強、恒川佳隆、豊田真嗣、三浦守、「ハーフメモリアルゴリズムに基づく分散演算形ＬＭＳ適応フィルタの高性能アーキテクチャ」、電子情報通信学会論文誌Ａ、Ｖｏｌ．Ｊ８４−Ａ，Ｎｏ．６，ｐｐ．７７７〜７８７，２００１年６月
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、上述した準奇対称性を前述の非特許文献２とは若干異なるアプローチで利用することにより、非特許文献２の適応フィルタと比較して更に収束速度の向上を図ることのできる適応フィルタを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明によれば、第１の適応フィルタとして、
２の補数形式にて表現された入力信号ｓ（ｋ）を受けてアドレスベクトルを出力するアドレスベクトル生成部を有する入力レジスタと、
複数の部分積を格納すると共に前記アドレスベクトルで指定された部分積を出力する適応関数空間回路であって、誤差信号に基づいて対応する部分積を更新する機能を有する適応関数空間回路と、
前記適応関数空間回路から出力された部分積をシフト加算してフィルタ出力ｙ（ｋ）として出力するシフト加算器と、
前記誤差信号を所望信号ｄ（ｋ）と前記フィルタ出力ｙ（ｋ）とから生成し前記適応関数空間回路に出力する誤差信号出力回路と
を備える適応フィルタであって、
前記誤差信号出力回路は、前記所望信号ｄ（ｋ）と前記フィルタ出力ｙ（ｋ）の差分である正誤差信号ｅ（ｋ）と当該正誤差信号ｅ（ｋ）の反転信号である負誤差信号−ｅ（ｋ）の二種類の前記誤差信号を生成して、前記適応関数空間回路に出力するものであり、
前記適応関数空間回路は、前記正誤差信号ｅ（ｋ）を受けて、前記部分積のうちの第１更新対象要素を更新すると共に、前記負誤差信号−ｅ（ｋ）を受けて、前記部分積のうち前記第１更新対象要素に対応するアドレスベクトルとビット反転の関係にあるアドレスベクトルにて指定されうる第２更新対象要素を更新する
適応フィルタが得られる。
【０００８】
本発明によれば、第２の適応フィルタとして、第１の適応フィルタであって、
前記適応関数空間回路は、
前記アドレスベクトルを受けてアドレス信号を生成するアドレスデコーダと、
前記部分積の一部を夫々格納するための複数のラッチ素子と、
アドレス信号に従って、前記ラッチ素子に格納されているデータを選択的に出力する出力計算用出力側セレクタと、
前記第１更新対象要素に対する読み出し及び書き込みを可能とする第１更新動作用出力側セレクタ及び第１更新動作用入力側セレクタと
前記第２更新対象要素に対する読み出し及び書き込みを可能とする第２更新動作用出力側セレクタ及び第２更新動作用入力側セレクタと
を備えており、２以上の前記ラッチ素子に対して同時に読み出し／書き込み可能となるように構成されている
適応フィルタが得られる。
【０００９】
本発明によれば、第３の適応フィルタとして、第２の適応フィルタであって、
前記入力レジスタは、前記入力信号ｓ（ｋ）を受けて、更新用アドレスベクトルを生成する更新用アドレスベクトル生成部を更に有しており、
前記適応関数空間回路は：
前記更新用アドレスベクトルを受けて更新アドレス信号を生成して、前記第１更新動作用出力側セレクタと前記第１更新動作用入力側セレクタとに出力する更新用アドレスデコーダと；
前記更新アドレス信号を反転して更新用出力側反転アドレス信号を生成して、前記第２更新動作用出力側セレクタに出力する出力側反転アドレス信号生成部と；
前記更新アドレス信号を反転して更新用入力側反転アドレス信号を生成して、前記第２更新動作用入力側セレクタに出力する入力側反転アドレス信号生成部と；
前記第１更新動作用出力側セレクタから読みだされた前記第１更新対象要素と前記正誤差信号ｅ（ｋ）とから更新値を算出して前記第１更新動作用入力側セレクタを介して前記第１更新対象要素の更新を行う第１更新回路と；
前記第２更新動作用出力側セレクタから読みだされた前記第２更新対象要素と前記負誤差信号−ｅ（ｋ）とから更新値を算出して前記第２更新動作用入力側セレクタを介して前記第２更新対象要素の更新を行う第２更新回路と；
を更に備えている、
適応フィルタが得られる。
【００１０】
本発明によれば、第４の適応フィルタとして、第３の適応フィルタであって、
前記適応関数空間回路は、
前記第１更新動作用出力側セレクタから読みだされた前記第１更新対象要素をラッチし、ラッチ後の第１更新対象要素を前記第１更新回路に出力する第１要素ラッチと、
前記第２更新動作用出力側セレクタから読みだされた前記第２更新対象要素をラッチし、ラッチ後の第２更新対象要素を前記第２更新回路に出力する第２要素ラッチと、
前記更新用アドレスデコーダから前記更新アドレス信号を受けてラッチし、ラッチ後の更新アドレス信号を前記第１更新動作用入力側セレクタ及び前記入力側反転アドレス信号生成部に出力するアドレスラッチと
を更に備えており、
前記第１要素ラッチ、前記第２要素ラッチ及び前記アドレスラッチにより、前記フィルタ出力ｙ（ｋ）を算出するための出力計算処理と前記正誤差信号ｅ（ｋ）及び前記負誤差信号−ｅ（ｋ）に基づいた更新処理とを互いに分離して行えるようにした適応フィルタが得られる。
【００１１】
本発明によれば、第５の適応フィルタとして、第３又は第４の適応フィルタであって、
前記アドレスベクトル生成部は、前記入力信号ｓ（ｋ）の最上位ビットのみを反転して得られる一部反転信号を最下位ビットから処理することにより前記アドレスベクトルを生成するものであり、
前記更新用アドレスベクトル生成部は、前記入力信号ｓ（ｋ）の最上位ビットのみを反転して得られる一部反転信号を当該最上位ビットから処理することにより前記更新用アドレスベクトルを生成するものである
適応フィルタが得られる。
【００１２】
本発明によれば、第６の適応フィルタとして、第２乃至第５のいずれかの適応フィルタであって、
前記適応関数空間回路は、複数の適応関数空間モジュールとバイナリツリー加算器とから構成されるものであり、
前記適応関数空間モジュールの夫々は、前記複数のラッチ素子と、前記出力計算用出力側セレクタと、前記第１更新動作用出力側セレクタ及び前記第１更新動作用入力側セレクタと、前記第２更新動作用出力側セレクタ及び前記第２更新動作用入力側セレクタとを備えており、
前記バイナリツリー加算器は、前記複数の適応関数空間モジュールの前記出力計算用出力側セレクタからの出力を受けて前記部分積を出力するものである
適応フィルタが得られる。
【００１３】
本発明によれば、第７の適応フィルタとして、第１の適応フィルタであって、
前記入力レジスタは、前記入力信号ｓ（ｋ）を受けて、該入力信号ｓ（ｋ）の最上位ビットのみを反転して得られる信号から前記アドレスベクトルを生成する
適応フィルタが得られる。
【００１４】
本発明によれば、第８の適応フィルタとして、
２の補数形式にて表現された入力信号ｓ（ｋ）に対して、所望信号ｄ（ｋ）に基づいて適応的に変化させたフィルタ係数を乗算して得られるようなフィルタ出力ｙ（ｋ）を出力する適応フィルタであって部分積を格納した適応関数空間を利用して分散演算することにより乗算することなく加算のみで前記フィルタ出力ｙ（ｋ）を出力する適応フィルタにおいて、
所望信号ｄ（ｋ）とフィルタ出力ｙ（ｋ）との差分から得られる相補信号に基づいて適応関数空間に格納されている２組の要素であって対応するアドレスがビット反転の関係にある２組の要素を更新することにより、収束速度の向上が図られた適応フィルタが得られる。
【発明の効果】
【００１５】
本発明によれば、従来の更新処理に用いられていた（正）誤差信号ｅ（ｋ）に加えてその反転信号である負誤差信号−ｅ（ｋ）を生成し、それらを用いて準奇対称の関係にある２組の要素（部分積）を更新することとしたため、収束速度の向上を図ることができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施の形態による適応フィルタの構成を示す図である。
【図２】図１の適応フィルタの具体的構成を示す図である。図示された適応フィルタにおいては、適応関数空間が複数に分割されている（マルチメモリブロック構造）。
【図３】図２の適応フィルタにおける入力レジスタの構成を示す図である。
【図４】図２の適応フィルタにおける適応関数空間モジュールの構成を示す図である。
【図５】図２の適応フィルタの動作タイミングチャートである。
【発明を実施するための形態】
【００１７】
本発明の実施の形態による適応フィルタは、図１に示されるように、入力レジスタ１００と、適応関数空間回路２００と、シフト加算器５００と、誤差信号出力回路６００とを備えている。
【００１８】
入力レジスタ１００は、２の補数形式にて表現された入力信号ｓ（ｋ）を受けて、アドレスベクトルを出力するものである。
【００１９】
適応関数空間回路２００は、複数の部分積を要素として有する集合である適応関数空間を有している。ここで、Ｎ次のアドレスベクトルに対する部分積の総数は２Ｎ個である。即ち、適応関数空間回路２００には、基本的には、Ｎ次のアドレスベクトルに対して２Ｎ個の部分積を有している（後述するように、要素（この場合、部分積）の総数は、適応関数空間を分割することにより、削減することができる：マルチメモリブロック構造）。この適応関数空間回路２００は、概略、アドレスベクトルで指定された部分積をシフト加算器５００に出力する。この出力された部分積は、シフト加算器５００で順次シフト加算され、フィルタ出力ｙ（ｋ）として出力される。
【００２０】
誤差信号出力回路６００は、所望信号ｄ（ｋ）とフィルタ出力ｙ（ｋ）とから誤差信号を生成して適応関数空間回路２００に出力するものである。
【００２１】
特に、本実施の形態による誤差信号出力回路６００は、所望信号ｄ（ｋ）とフィルタ出力ｙ（ｋ）の差分である正誤差信号ｅ（ｋ）と、その反転信号である負誤差信号−ｅ（ｋ）との二種類の記誤差信号を生成して、適応関数空間回路２００に出力する。
【００２２】
これに関連して、上述した適応関数空間回路２００は、正誤差信号ｅ（ｋ）と負誤差信号−ｅ（ｋ）誤差信号に基づいて、対応する部分積を更新する機能が設けられている。詳しくは、適応関数空間回路２００は、正誤差信号ｅ（ｋ）に従って部分積のうちの第１更新対象要素を更新すると共に、負誤差信号−ｅ（ｋ）に従って部分積のうちの第２更新対象要素を更新する。ここで、第１更新対象要素は、例えば、出力計算に用いられた部分積である。また、第２更新対象要素は、第１更新対象要素と準奇対称性の関係にある部分積である。即ち、第２更新対象要素は、第１更新対象要素に対応するアドレスベクトルとビット反転の関係にあるアドレスベクトルにて指定されうる部分積である。
【００２３】
このように、本実施の形態においては、通常の更新処理に使用される誤差信号の相補信号である負誤差信号−ｅ（ｋ）を生成し、それを用いて、通常更新される部分積と準奇対称の関係にある部分積をも更新してしまうことから、収束速度の更なる向上を図ることができる。
【００２４】
以下、上述した適応フィルタについて、図２乃至図５を参照して更に具体的に説明する。図２に示される適応フィルタにおいては、上述した準奇対称性を利用した２組の部分積の更新に加えて、マルチブロック構造化や、出力計算と更新処理の並列化、入力信号に対する前処理など、複数の更なる工夫が盛り込まれている。以下、これらについても併せて説明する。
【００２５】
図２及び図３を参照すると、本実施の形態による入力レジスタ１００は、入力信号ｓ（ｋ）を受けて出力計算用のアドレスベクトルを生成するアドレスベクトル生成部１１０と、入力信号ｓ（ｋ）を受けて更新用アドレスベクトルを生成する更新用アドレスベクトル生成部１２０とを有している。
【００２６】
アドレスベクトル生成部１１０及び更新用アドレスベクトル生成部１２０は、いずれも複数のタップを有するシフトレジスタで構成されている。各タップの出力は、後述する適応関数空間回路２００内の対応する適応関数空間モジュール（ＡＦＳＭ０〜ＡＦＳＭＭ−１）３００に出力される。ここで、入力信号ｓ（ｋ）が２の補数形式で表現されていることから、ＭＳＢに関する重みづけのみ他のビットの重みづけと符号が異なっている。そのため、通常は、ＭＳＢのアドレスベクトルに対応する要素を反転するといった例外処理をした後に、他のビットに関連する部分積とシフト加算している。ここで、準奇対称性を考慮すると、ＭＳＢのベクトルにより読みだした要素に対して負数をとったものは、ＭＳＢを反転して得られるベクトルにより読みだした要素と少なくとも近似している関係にある。本実施の形態においては、この関係を利用して、ＭＳＢのみインバータを介してシフトレジスタに入力することとし、部分積をシフト加算する際における例外処理を削減することとした。通常、例外処理を含めてサンプリングレートが決定されていることを考慮すれば明らかなように、本実施の形態によれば、サンプリングレートの向上を図ることができる。また、出力滞在時間を短縮することができる。
【００２７】
更に、本実施の形態によるアドレスベクトル生成部１１０は、桁落ちを防ぐために通常通りＬＳＢから処理するように構成されている一方、更新用アドレスベクトル生成部１２０は、ＭＳＢから処理するように構成されている。換言すると、本実施の形態においては、出力計算については重みの小さいアドレスベクトルから処理を始めるのに対して、更新処理については重みの大きいアドレスベクトルから処理を始めることとしている。これは、繰り返し試作確認等したところ、更新用アドレスベクトル生成部１２０の場合には、ＭＳＢから処理しないと収束速度が著しく劣ることになってしまうことが明らかになったためである。換言すると、本実施の形態による更新用アドレスベクトル生成部１２０によれば、例えば、出力計算用のアドレスベクトルをそのまま更新処理に利用した場合と比較して、収束速度の更なる向上を図ることができる。
【００２８】
図２を参照すると、本実施の形態による適応関数空間回路２００は、上述したように、適応関数空間を複数に分割してマルチメモリブロック構造化されたものであり（分割数はＭ）、Ｍ個の適応関数空間モジュール３００と、その出力を加算して、部分積として出力するバイナリツリー加算器４００とを備えている。ここで、バイナリツリー加算器４００は、その名の通り、バイナリツリー状に加算器を多段接続してなるものである。
【００２９】
本実施の形態のように、適応関数空間を複数に分割すると、例えば、２Ｎ（Ｎは入力ベクトルの次数）個必要であった要素の数をＭ×２Ｒ個（Ｒはアドレス線の数：後述するアドレスデコーダの入力数）に減らすことができ、それによって、各要素の更新確率を向上させて収束速度の更なる向上を図ることができる。
【００３０】
詳しくは、各適応関数空間モジュール３００は、図４に示されるように、アドレスデコーダ３０１と、更新用アドレスデコーダ３０３と、複数のラッチ素子３０５と、出力計算用出力側セレクタ３０７と、第１更新動作用出力側セレクタ３０９と、第２更新動作用出力側セレクタ３１１と、第１更新動作用入力側セレクタ３１３と、第２更新動作用入力側セレクタ３１５と、出力側反転アドレス信号生成部３１７と、アドレスラッチ３１９と、入力側反転アドレス信号生成部３２１と、第１要素ラッチ３２３と、第１更新回路３２５と、第２要素ラッチ３２７と、第２更新回路３２９とを備えている。
【００３１】
アドレスデコーダ３０１は、アドレスベクトル生成部１１０からアドレスベクトルを受けて、アドレス信号を生成するものであり、一方、更新用アドレスデコーダ３０３は、更新用アドレスベクトル生成部１２０から更新用アドレスベクトルを受けて更新アドレス信号を生成するものである。アドレスデコーダ３０１から出力されたアドレス信号は、出力計算用出力側セレクタ３０７に入力され、対応するラッチ素子３０５に格納されている情報が読みだされ、バイナリツリー加算器４００に出力される（図２参照）。一方、更新アドレス信号は、第１更新動作用出力側セレクタ３０９に入力されると共に出力側反転アドレス信号生成部３１７により反転されて第２更新動作用出力側セレクタ３１１に入力される。このようにして、更新処理用の要素として、準奇対称の関係にある（対応するアドレスがビット反転の関係にある）要素が読みだされる。具体的には、更新アドレス信号が第１更新動作用出力側セレクタ３０９に入力されることにより、第１更新対象要素が読みだされる一方、第２更新動作用出力側セレクタ３１１に更新アドレス信号の反転信号が入力されることにより、第１更新対象要素と準奇対称の関係にある第２更新対象要素が読みだされる。これらは、夫々、第１要素ラッチ３２３及び第２要素ラッチ２３７に保持される。
【００３２】
ここで、更新用アドレスデコーダ３０３から出力された更新アドレス信号は、アドレスラッチ３１９にも保持されている。アドレスラッチ３１９に保持された更新アドレス信号は、第１更新動作用入力側セレクタ３１３に入力される一方、入力側反転アドレス信号生成部３２１により反転された後、第２更新動作用入力側セレクタ３１５に入力される。
【００３３】
第１更新回路３２５は、第１要素ラッチ３２３に保持されている第１更新対象要素と正誤差信号ｅ（ｋ）とを用いて所定の更新式に従った更新値を算出する。この更新値は、第１更新動作用入力側セレクタ３１３により選択されたアドレスのラッチ素子３０５に対して書き込まれ、このようにして第１更新対象要素の更新が行われる。
【００３４】
同様に、第２更新回路３２９は、第２要素ラッチ３２７に保持されている第２更新対象要素と負誤差信号−ｅ（ｋ）とを用いて所定の更新式に従った更新値を算出する。この更新値は、第２更新動作用入力側セレクタ３１５により選択されたアドレスのラッチ素子３０５に対して書き込まれ、このようにして第２更新対象要素の更新が行われる。
【００３５】
ここで、本実施の形態においては、アドレスラッチ３１９、第１要素ラッチ３２３及び第２要素ラッチ３２７の３つのラッチを設けていることから、出力計算は現在指定されたアドレスに従って処理されているが、更新処理は直前に指定されたアドレスに従って且つ直前の出力結果から得られた誤差信号に基づいて行われている。即ち、本実施の形態によれば、出力計算と更新処理とを分離することができ、図５に示されるように、両者を並列して処理することができる。これにより、出力計算と更新処理とをシリアルに処理していた場合と比較して、サンプリングレートの劇的な向上を図ることができる。
【００３６】
以上、本発明について具体的な構成を掲げて説明してきたが本発明はこれに限定されるものではない。例えば、上述した実施の形態においては、複数の要素に対して同時に書き込み・読み出しを可能とするため、複数のラッチ３０５と各種セレクタ（３０７，３０９，３１１，３１３，３１５）とで実質的な適応関数空間を構成していたが、例えば、従来の適応フィルタと同様の読み出し・書き込み能力で十分であれば、ＲＡＭなどで適応関数空間を構成することとしてもよい。
【符号の説明】
【００３７】
１００        入力レジスタ
１１０        アドレスベクトル生成部
１２０        更新用アドレスベクトル生成部
２００        適応関数空間回路
３００        適応関数空間モジュール
３０１        アドレスデコーダ
３０３        更新用アドレスデコーダ
３０５        ラッチ素子
３０７        出力計算用出力側セレクタ
３０９        第１更新動作用出力側セレクタ
３１１        第２更新動作用出力側セレクタ
３１３        第１更新動作用入力側セレクタ
３１５        第２更新動作用入力側セレクタ
３１７        出力側反転アドレス信号生成部
３１９        アドレスラッチ
３２１        入力側反転アドレス信号生成部
３２３        第１要素ラッチ
３２５        第１更新回路
３２７        第２要素ラッチ
３２９        第２更新回路
４００        バイナリツリー加算器
５００        シフト加算器
６００        誤差信号出力回路
【図１】
0005570250.tif 000002
【図２】
0005570250.tif 000003
【図３】
0005570250.tif 000004
【図４】
0005570250.tif 000005
【図５】
0005570250.tif 000006