JPH04230112A - Method and device for approximating unknown system by adaptive filter - Google Patents

Method and device for approximating unknown system by adaptive filter

Info

Publication number
JPH04230112A
JPH04230112A JP41612990A JP41612990A JPH04230112A JP H04230112 A JPH04230112 A JP H04230112A JP 41612990 A JP41612990 A JP 41612990A JP 41612990 A JP41612990 A JP 41612990A JP H04230112 A JPH04230112 A JP H04230112A
Authority
JP
Japan
Prior art keywords
output
circuit
multiplicand
value
delay
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP41612990A
Other languages
Japanese (ja)
Other versions
JP2541378B2 (en
Inventor
Akihiko Sugiyama
昭彦 杉山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2416129A priority Critical patent/JP2541378B2/en
Priority to DE69125806T priority patent/DE69125806T2/en
Priority to EP91122289A priority patent/EP0492647B1/en
Priority to US07/813,662 priority patent/US5245561A/en
Priority to CA002058495A priority patent/CA2058495C/en
Priority to AU90097/91A priority patent/AU648621B2/en
Publication of JPH04230112A publication Critical patent/JPH04230112A/en
Application granted granted Critical
Publication of JP2541378B2 publication Critical patent/JP2541378B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PURPOSE:To shorten the convergence time by switching sequentially tap coefficients of a limited number, allocating the coefficient to a different tap so as to reduce the hardware and replacing a tap position limited in the vicinity of an estimated waveform responsing part. CONSTITUTION:An input signal fed to a delay element 101 is transmitted sequentially to delay elements 102-10N at every clock. A matrix switch 14 connects N delay elements 101 and M coefficient circuits 11i selected by the output of a control circuit 13 adaptively. In the case of approximating an unknown system, the flat delay of the unknown system is estimated in an initial condition. Then plural input signal samples receiving a delay equivalent to the estimated flat delay and plural multiplicands changed adaptively are combined for multiplication and while the combination is changed in a prescribed limit, the multiplicand is updated.

Description

【発明の詳細な説明】 【0001】 【産業上の利用分野】本発明は未知系を同定する際に用
いられるアダプティブ・フィルタに関する。このような
アダプティブ・フィルタは、2線/4線変換部で生じる
エコーを除去するためのエコー・キャンセラ、伝送路上
で受ける符号間干渉を除去するための等化器、音響入力
用のマイクロホンに漏れ込むノイズを除去するためのノ
イズ・キャンセラ、スピーカからマイクロホンに至る音
響結合によって生じるハウリングを除去するためのハウ
リング・キャンセラ等に応用されている。 【0002】 【従来の技術】通常、アダプティブ・フィルタによる未
知系の同定は、同定しようとする未知系とアダプティブ
・フィルタに同一の信号を入力し、未知系出力からアダ
プティブ・フィルタ出力を差引いて得られる同定誤差(
以下、これを誤差信号と呼ぶ)を用いてアダプティブ・
フィルタの係数を更新することによって行なわれる。 このようなアダプティブ・フィルタによる未知系の同定
の応用として、エコー・キャンセラ、等化器、ノイズ・
キャンセラ、ハウリング・キャンセラ等が知られている
(アダプティブ・シグナル・プロセシング、(Adap
tive  Signal  Processing)
,プレンティス・ホール社(Prentice−Hal
l),1985;以下、「文献1」)。これらの応用に
おけるアダプティブ・フィルタの基本動作はほとんど同
じなので、ここではエコー・キャンセラを例にとって従
来の技術について説明する。 【0003】エコー・キャンセラはエコーのインパルス
応答を近似する伝送関数を持つ適応(アダプティブ)・
フィルタを用いて、2線/4線変換回路の4線側にて送
信回路から受診回路に漏れ込むエコーに対応した近似エ
コー(エコー・レプリカ)を生成することにより、受診
回路に混入して受診信号に妨害を与えるエコーを抑圧す
るように動作する。すなわち、2線/4線変換回路の4
線側にて送信回路から受診回路に至る経路が、エコー・
キャンセラにおいてアダプティブ・フィルタで同定しよ
うとする未知系に相当する。このとき、アダプティブ・
フィルタの各タップ係数は、エコーと受診信号が混在し
た混在信号からエコー・レプリカを差し引いた差信号と
送信信号との相関をとることにより逐次修正される。こ
のようなアダプティブ・フィルタの係数修正すなわちエ
コー・キャンセラの収束アルゴリズムの代表的なものと
してLMSアルゴリズム(LMS  ALGORITH
M;「文献2」)とラーニング・アイデンティフィケー
ション・メソッド(LEARNING  IDENTI
FICATION  METHOD;LIM)(アイイ
ーイーイー・トランザクションズ・オン・オートマティ
ック・コントロール(IEEE  TRANSACTI
ONS ON  AUTOMATIC  CONTRO
L)12巻3号、1967年、282−287ページ参
照;以下、「文献3」)が知られている。 【0004】図7は、従来のエコー・キャンセラの一構
成例を示したブロック図である。入力端子1に供給され
た送信信号が2線/4線変換回路2で受信側へ漏れ込ん
で発生するエコーek は減算器3においてエコー・レ
プリカek を減算された後、出力端子4に供給される
。一方、入力端子1に供給された送信信号はアダプティ
ブ・フィルタの第1タップ回路701 にも供給される
。第1タップ回路701 の第1の出力は隣接する第2
タップ回路702 に伝達される。第1タップ回路70
1 の第2の出力は加算器12に供給される。第2タッ
プ回路702 は第1タップ回路701 から受けた信
号から生成した第1の出力を第3タップ回路703 へ
、第2の出力を加算器12へ伝達する。同様に、第iタ
ップ回路70i は第(i−1)タップ回路70i−1
 から受けた信号から生成した第1の出力を第(i+1
)タップ回路70i+1 へ、第2の出力を加算器12
へ伝達する。但し、iは2≦i≦N−1を満たす整数で
、Nはアダプティブ・フィルタのタップ数を表す。第1
タップ回路701 は入力端子1から受けた信号から生
成した第1の出力を第2タップ回路702 へ、第2の
出力を加算器12ヘ伝達する。第Nタップ回路70N 
は第(N−1)タップ回路70N−1 から受けた信号
から生成した第2の出力を加算器12へ伝達する。加算
器12は第iタップ回路70i (1≦i≦N)から供
給された第2の出力を全て加算し、エコー・レプリカe
k として減算器3へ供給する。 【0005】第iタ
ップ回路70i には減算器3の出力である差信号及び
定数μ1 が供給されている。ここにμ1 はステップ
・サイズと呼ばれ、係数更新に深く関与する。図8に第
iタップ回路70i (1≦i≦N)のブロック図を示
す。但し、i=1の場合は遅延素子81を有しない。ま
た、i=Nの場合は出力804は用いない。 入力信号800は入力端子1又は第(i−1)タップ回
路70i−1 から伝達された信号、出力信号804は
第(i+1)タップ回路へ伝達される信号、入力信号8
01は減算器3の出力である差信号、出力信号803は
加算器12へ供給される信号、入力信号802はステッ
プ・サイズμ1 である。入力信号800は遅延素子8
1に供給されて1サンプル周期遅延された後、出力信号
804となって第(i+1)タップ回路へ供給されると
同時に係数発生回路82及び乗算器83へ伝達される。 係数発生回路82には差信号である入力信号801及び
ステップ・サイズμ1 である入力信号802も供給さ
れている。係数発生回路82はこれらの入力信号を用い
て発生した係数値を乗算器83に供給する。乗算器83
は、係数発生回路82からの信号と遅延素子81からの
信号を乗算し、結果を出力信号803として出力する。 【0006】図9に係数発生回路82の、LMSアルゴ
リズムを想定したブロック図を示す。入力信号95は図
8の遅延素子81の出力信号、入力信号801は差信号
、入力信号802はステップ・サイズμ1 、出力信号
96は係数値である。入力信号95と入力信号801は
乗算器91で乗算され、エコー・キャンセラの送信信号
と差信号の相関が求められる。乗算器91の出力は乗算
器92でステップ・サイズμ1 倍され加算器93に供
給される。加算器93では乗算器92の出力と帰還され
た遅延素子94の出力を加算し、遅延素子94に供給す
る。係数値である遅延素子94の出力は、1クロック毎
に出力信号96として出力される。 【0007】いま、送信信号をxk (但し、k は時
刻を示す指標)、エコーをek 、ek が受ける付加
ノイズをδk とする。一般にエコー・キャンセラは受
信信号がなくエコーek だけが存在するシングルトー
ク時だけ適応動作を行なうことを考慮すると、減算器3
に供給される信号uk はエコー及び付加ノイズから構
成され、次式で表される。         uk =ek +δk ………………
………………………………………(1)エコー・キャン
セラの目的は、式(1)におけるエコーek のレプリ
カek を生成し、これを用いてエコーを消去すること
である。減算器3の出力信号である差信号dk は、一
般にδk がek −ek に比較して十分小さいこと
を考慮すると、次式で表される。         dk =ek −ek ………………
………………………………………(2)式(2)におい
て、(ek −ek )は残留エコーと呼ばれる。LM
Sアルゴリズムでは、アダプティブ・フィルタのm番目
の係数cm,k を次式に従って更新する。         cm,k =cm,k−1 +μ1 
・dk ・xk−m−1 …………………………(3)
N個の係数全てに関する式(3)を行列形式で表せば、
        ck =ck−1 +μ1 ・dk 
・xk−1 …………………………………(4)となる
。ここに、ベクトルck とベクトルxk はそれぞれ
次式で与えられる。         ck =[c0,k c1,k ……
…cn−1,k ]T …………………………(5) 
       xk =[xk xk−1 ………xk
−N+1 ]T ……………………………(6)一方、
LIMでは式(4)の代りに、式(7)に従って係数の
更新が行なわれる。         ck =ck−1 +(α/Nσx2
 )・dk ・xk−1 …………………(7)αは、
LIMに対するステップ・サイズ、σx2 はアダプテ
ィブ・フィルタに入力される平均電力である。σx2 
はステップ・サイズαの値を前記平均電力に反比例させ
、安定な収束を行なわせるために用いられる。σx2 
を求めるためにはいくつかの方法があるが、例えば式(
8)によって求めることができる。 【0008】 【数1】 【0009】式(4)と式(7)におけるステップ・サ
イズは、アダプティブ・フィルタの収束の速度と収束後
の残留エコー・レベルを規定する。LMSの場合は、μ
1 が大きいほど収束は速くなるが、残留エコー・レベ
ルは大きくなる。反対に、十分小さい残留エコー・レベ
ルを達成するためには、それに見合った小さいμ1 を
採用する必要があり、収束速度の低下を招く。LIMの
ステップ・サイズαについても、同様である。 【0010】未知系の同定において、同定しようとする
未知系のインパルス応答の先頭に長い平坦遅延が含まれ
る場合が、特に衛星回線を対象としたエコー・キャンセ
ラに頻繁に見られる。このような長い平坦遅延を含むイ
ンパルス応答に対しても、インパルス応答長に相当する
タップ数を有することが、従来のエコー・キャンセラに
とって十分にエコーを抑圧するために必要であった。実
際には平坦遅延部のタップ係数は零になるので、これら
の係数をフィルタ出力の計算に用いることは無駄になる
。この問題を解決し、長い平坦遅延を含むインパルス応
答に対しても、効率的にシステム同定を行なう方法が、
「昭和59年電子通信学会通信部門全国大会予稿集、N
o.595」(以下、「文献4」)に記載されている。 この方法は、平坦遅延と実質的な波形応答から成るイン
パルス応答に対して実質的な波形応答に対応する位置の
係数だけをフィルタ出力計算に用いて、演算量を減らし
ている。以下、文献4に記載された方法について簡単に
説明する。 【0011】図10は、文献4に記載されたエコー・キ
ャンセラを示したブロック図である。図7に示したエコ
ー・キャンセラとの相違点は、図7が各タップ回路10
01 ,1002 ,………,100N から出て制御
回路101を経た後、各タップ回路1001 ,100
2 ,………,100N に戻る閉回路を有する点及び
各タップ回路701 ,702 ,………,70N と
各タップ回路1001 ,1002 ,………,100
N の構成である。制御回路101は、各タップ回路1
001 ,1002 ,………,100N から得た係
数値を用いて、どの係数に対する演算を停止するかを決
定し、その情報を制御信号として各タップ回路1001
 ,1002 ,………,100N に供給する。制御
回路101から供給された信号により各タップ回路10
01 ,1002 ,………,100N は不要な係数
に対する演算を停止する。 【0012】図11に、タップ回路100i のブロッ
ク図を示す。図8に示したタップ回路70i との違い
は、入力信号801がセレクタ110を介して係数発生
回路82に供給されている点及び係数発生回路82で発
生された係数がセレクタ111を介して乗算器83に供
給されている点である。セレクタ111は係数発生回路
82の出力又は零を選択して乗算器83に供給する。セ
レクタ110は入力信号801又は零を選択して係数発
生回路82に供給する。セレクタ110,111は共に
制御回路101から各タップ係数に供給される制御信号
115によって、零を選択する。従って、セレクタ11
0が零を選択したときには係数発生回路82へ供給され
る信号が、セレクタ111が零を選択したときには乗算
器83における被乗数が零になり、係数更新量及び対応
するタップ回路出力は零となる。セレクタ110,11
1は制御信号115が0のときに零を選択して出力する
。次に制御回路101について説明する。 【0013】図12は、制御回路101のブロック図で
ある。制御回路101には、アダプティブ・フィルタの
Nタップからタップ係数の値及びタップ番号が供給され
る。制御回路101は、対応するタップ番号が、制御回
路内に記憶されているタップ番号と一致するタップ係数
値について最小値を検出し、その最小値に対応したタッ
プ番号の代りに制御回路内に記憶されている待ち行列の
先頭の値を新たなタップ番号として置換することにより
新規なタップ番号の組を構成し、アダプティブ・フィル
タのNタップに供給する。制御回路101への入力信号
125は各タップ回路1001 ,1002 ,………
,100N から出て制御回路101に供給される信号
、出力信号126は制御回路101から各タップ回路1
001 ,1002 ,………,100N に供給され
る制御信号である。従って、図中では1本の線で表示さ
れているが、入力信号125及び出力信号126はN多
重信号である。入力信号125はまず絶対値回路121
に供給されて絶対値化され、最小値検出回路122に伝
達される。最小値検出回路122はこれらの絶対値信号
成分のうち最小のものを検出し、対応するタップ番号を
先入れ先出し回路(FIFO)123と記憶装置124
へ伝達する。FIFO123は、最小値検出回路122
から信号が供給されたときに、その時点で記憶している
サンプル値のうちで最も速く入力された1サンプルを記
憶装置124へ伝達する。記憶装置124にはフィルタ
リング演算の対象となるNタップの番号各々に対応して
0又は1が記憶されており、FIFO123から信号が
伝達されたときにそのタップ番号に対応した値を0から
1に変更する。一方、最小値検出回路122から記憶装
置124に供給されたタップ番号に対応した値は1から
0に変更される。従って、記憶装置124内の0と1の
総数はそれぞれ一定で、1の総数Mが係数を割当てる実
効タップ数、0の数N−Mが係数を割当てないタップ数
となる。以上の操作で得られた0及び1の並びから構成
された信号は記憶装置124から出力信号126として
出力された後、各タップ回路1001 ,1002 ,
………,100N に供給される。出力信号126のi
番めの数値(0又は1)は、タップ回路100i の制
御信号となる。タップ回路100i は出力信号126
のi番目の数値を第11図の制御信号115として、セ
レクタ110,111を制御する。 【0014】 【発明が解決しようとする課題】図11を用いて説明し
たように、文献4に記載された方法では、制御信号11
5として0が供給されたときにセレクタ111の出力と
して零が出力される。従って、係数発生回路82は実質
的に使用されず、無駄になる。さらに、図12の記憶装
置124の初期値として等間隔で有効タップ数に等しい
数の1を配置し、FIFO123すなわち待ち行列の初
期値として記憶装置124で0が割当てられたタップ番
号を小さい方から順に配置する。このような初期値を用
いた場合、平坦遅延が長いインパルス応答を近似すると
、波形応答部に対応するタップ番号がFIFO123の
中で出力に近い位置に移動し、記憶装置124に供給さ
れてタップ割当てされるまで、長時間を要する。従って
、収束時間が長くなるという問題を有する。 【0015】本発明の目的は、ハードウェア規模が小さ
く、収束時間の短いアダプティブ・フィルタを提供する
ことにある。 【0016】 【課題を解決するための手段】本発明は、1サンプル周
期ずつ遅延された複数の入力信号サンプルを、適応的に
変化する複数の被乗数と適応的に組合せて乗算を行ない
、該乗算に用いられない被乗数のアドレスを待ち行列に
格納し、前記乗算結果の総和をもって出力とするアダプ
ティブ・フィルタで未知システムを近似する際に、前記
入力サンプルと前記被乗数との組合せを固定した状態で
前記被乗数の更新を行ない、前記複数の被乗数の絶対値
の最大値を監視し、ある特定の被乗数が予め定められた
頻度で前記最大値として検知されたときには、前記被乗
数の更新を行ない、前記待ち行列内の先頭の値が前記最
大値の位置から予め定められた値の範囲内にない場合に
は該先頭の値を前記待ち行列の最後尾に格納して新たな
待ち行列先頭の値に対して位置の評価を行ない、前記予
め定められた値の範囲内にある新たな待ち行列先頭の値
を得るまでこの操作を繰返し、該先頭の値であるアドレ
スに対応する前記被乗数を乗算に用いるように設定し、
前記被乗数の絶対値の最小値を検出し、該最小値に対応
する被乗数のアドレスを前記待ち行列の最後尾に格納し
て乗算対象から除き、該新規被乗数の設定と最小値アド
レスの待ち行列格納を予め定められた回数に達するまで
繰返し、また前記入力サンプル徒被乗数の組合せを固定
した状態で被乗数を予め定められた回数更新する間にあ
る特定の被乗数が予め定められた頻度で前記最大値とし
て検知されないときには、前記入力サンプルと前記被乗
数との組合せを変更し、さらに前記被乗数を予め定めら
れた回数更新する間にある特定の被乗数が予め定められ
た頻度で前記最大値として検知されるまで、前記入力サ
ンプルと前記被乗数との組合せの変更を行なうことを特
徴とする。 【0017】また、本発明は、入力サンプルと被乗数と
の組合せを固定した状態で行なう被乗数の更新に対して
は予め定められた第1の定数を用い、組合が適応的に変
化する状態で行なう被乗数の更新には予め定められた第
2の定数を用いることを特徴とする。 【0018】さらに、本発明は、ある特定の被乗数が予
め定められた頻度で前記最大値として検知された場合に
は、最大値が他の被乗数に対して十分大きいと検知され
たときは被乗数の更新及び被乗数と待ち行列内の値に対
応した被乗数の入替えを行ない、十分大きいと判断され
なかったときには、入力サンプルと被乗数との組合せの
変更を行なうことを特徴とする。 【0019】 【作用】本発明のアダプティブ・フィルタでは、限られ
た数のタップ係数を逐次切替えて異なるタップに割当て
ることにより、ハードウェア規模を削減することができ
る。また、本発明のアダプティブ・フィルタでは、限ら
れた数のタップをインパルス応答の実質的な波形応答部
に割当てる際に、まず大まかな波形応答部の位置を推定
し、推定された位置の近傍にタップを集中させた後、推
定された波形応答部近傍に限定したタップ位置入替えを
行なうことにより、収束時間を短縮することができる。 特に、予め定められた時間以内に波形応答部の位置を推
定出来なかったときは、タップ割当ての初期値を変更し
て再推定を行なう。波形応答部の位置を推定した場合で
も、推定位置が妥当であると判定されなかったときには
、タップ割当ての初期値を更新して再推定を行なう。 さらに、本発明のアダプティブ・フィルタは、波形応答
部位置の推定では小さいステップ・サイズを用いて安定
な位置推定を行ない、推定された波形応答部近傍に限定
したタップ位置入替えでは大きいステップ・サイズを用
いて高速収束を行ない、収束時間を短縮することができ
る。 【0020】 【実施例】次に図面を参照して本発明について詳細に説
明する。図1は、本発明の一実施例を示すブロック図で
ある。同図において、図10と同一の参照番号を付与さ
れた機能ブロックは図10と同一の機能を有するものと
する。図1と図10の相違点は、各タップ回路1001
 ,1002 ,………,100N が遅延素子列10
1 ,102 ,………,10N 、マトリクススイッ
チ14、及び係数回路111 ,112 ,………,1
1M で置き換えられている点にある。これに伴って、
制御回路13は、その出力でマトリクススイッチ14を
制御する。 【0021】図1において、遅延素子101 に供給さ
れた入力信号は、1クロック毎に遅延素子102 ,…
……,10N へ逐次伝達される。遅延素子列101 
,102 ,………,10N はマトリクススイッチ1
4を介してM個の係数回路111,112 ,………,
11M と接続されている。但し、N>Mである。マト
リクススイッチ14は、制御回路13の出力により選択
されたM個の遅延素子列10i とM個の係数回路11
i を逐次適応的に接続する。 【0022】第i番めの係数回路11i の構成を図2
に示す。図2は基本的に図8のタップ回路に等しく、唯
一の違いは遅延素子81を有しないことである。図2の
入力信号20は図1の遅延素子10i の出力信号に対
応する。その他の信号21,25,23は図8の801
,803,802に対応し、それぞれ減算器3の出力で
ある差信号、加算器12へ供給される信号、ステップ・
サイズである。係数発生回路22,乗算器24は図8の
係数発生回路82、乗算器83と全く同じ動作をする。 【0023】図3に制御回路13の一具体例を示す。図
3の入力信号300はM個の係数回路111 ,112
 ,………,11Mから供給される係数値、出力信号3
01はマトリクススイッチ14の制御信号である。入力
信号300として供給された係数値は絶対値回路31で
絶対値化されて、最大値検出回路32及び最小値検出回
路33へ伝達される。最大値検出回路32では入力信号
のうち最大のものを検出し、対応するタップ番号を遅延
素子34と一致検出回路36、判定回路37及び記憶装
置39へ供給する。遅延素子34は入力信号を1サンプ
ル周期遅延させた後に一致検出回路36へ伝達する。一
致検出回路36は、最大値検出回路32から直接供給さ
れた信号及び遅延素子34を介して供給された信号の一
致を調べる。これは、現在の最大係数に対応したタップ
番号と1サンプル周期前の最大係数に対応したタップ番
号の一致を調べることに等しい。一致検出回路36は、
前記2入力が一致したときは1を、不一致のときは0を
出力する。カウンタ38はこの1または0を一致検出回
路36から受けて、1をカウントする。1が連続すると
きはカウンタ38はカウントアップを続けて、1の連続
が予め定められた値に達したときに、その出力を0から
1に変更する。また、0が検出されたときは、カウンタ
をリセットする。 【0024】カウンタ38の出力信号は遅延素子51、
一致検出回路52及びセレクタ53へ供給されており、
セレクタ53はこの出力信号が0のときに遅延素子54
の出力を、1のとき記憶装置39の出力を選択して出力
信号301として出力する。出力信号301は遅延素子
54を介して1サンプル周期遅延された後、セレクタ5
3に帰還される。従って、どのタップに係数を割当てる
かを表す制御信号301は、カウンタ38の出力が0の
ときは1サンプル周期前の値で係数割当てタップは変化
せず、1のときは記憶装置39から新たに供給される値
で係数割当てタップが変化することになる。一致検出回
路52は、カウンタ38の出力を遅延素子51で1サン
プル周期遅延させた信号とカウンタ38の出力の一致を
調べ、一致するときには1を,そうでないときには0を
記憶装置39に伝達する。 【0025】最小値検出回路33では入力信号のうち最
小のものを検出し、対応するタップ番号をFIFO35
と記憶装置39へ供給する。FIFO35は、最小値検
出回路33から信号が供給されたときに、その時点で記
憶しているサンプル値のうちで最も早く入力された1サ
ンプルを判定回路37へ伝達する。判定回路37ではF
IFO35から供給された信号と最大値検出回路32か
ら供給された信号との差を求め、その絶対値を予め定め
られたしきい値と比較する。絶対値が該しきい値より大
きいときには、FIFO35から供給された信号をその
ままFIFO35へ帰還する。該しきい値より小さいと
きには、記憶装置39に伝達する。記憶装置39にはフ
ィルタリング演算の対象となるNタップの番号各々に対
応して0又は1が記憶されており、判定回路37から信
号が伝達されたときにそのタップ番号に対応した値を0
から1に変更する。一方、最小値検出回路33から記憶
装置39に供給されたタップ番号に対応した値は1から
0に変更される。従って、記憶装置39内の0と1の総
数はそれぞれ一定である。さらに、一致検出回路52か
ら記憶装置39へ供給される信号が1のときには、記憶
装置39は最大値検出回路32から供給されるタップ番
号の前後にM個の1を配置する。1の配置方法の一例と
しては、前記タップ番号を中心として前後に等配分し、
かつ1が連続するように配置することができる。この操
作により、有効タップを推定された波形応答部の近傍へ
集中して配置する。以上の操作で得られた0及び1の並
びから構成された信号は記憶装置39からセレクタ53
に伝達される。セレクタ53は既に説明したように、記
憶装置39から供給された信号と遅延素子54から供給
された信号のいずれかをカウンタ38の出力で制御して
切替える。 【0026】カウンタ38はまた1の連続回数そのもの
を比較回路55へ供給する。比較回路55は通常0を出
力しているが、カウンタ38から供給された1の連続回
数と予め定められたしきい値Nthとを比較して、連続
回数がNthに等しくなったときには1を出力する。比
較回路55の出力は、FIFO35と記憶装置39に供
給されると同時にカウンタ38に帰還されており、カウ
ンタ38は比較回路55から供給される信号が1の時に
リセットされる。また、比較回路55の出力が1のとき
に、FIFO35と記憶装置39はそれぞれデータ変換
回路60とシフト回路59の出力を用いて、保持する内
容の一括書換えを行う。 【0027】記憶装置58には記憶装置の初期値として
タップ数Nに等しい1と0の並びが格納されている。こ
のとき、M個の1は、1と0の総数Nに対して等間隔に
配置されている。シフト回路59は、記憶装置58から
供給されたデータに対してシフトを施した後、記憶装置
39とデータ変換回路60へ供給し、さらに記憶装置5
8へもシフトされたデータを帰還する。シフト量は任意
に設定できるが、1例として初期値として等間隔配置さ
れた1の間隔の1/2を初期値として設定することが出
来る。シフト量は、1回シフトを行なう毎に1/2され
、シフト量の変更はシフト量が1(1サンプル)に等し
くなるまで反復される。シフト回路59におけるシフト
量は記憶装置58から供給される。 【0028】以上の説明から明らかなように、図3のカ
ウンタ38の出力が0のときにはM個の係数回路111
 ,112 ,………,11M の割当てられるタップ
番号は不変で、初期割当ての状態を維持する。タップ係
数値の振幅の成長具合を監視することにより、実質的な
波形応答部を推定することが出来る。カウンタ38の出
力が1になると実質的な波形応答部が推定できたことを
意味するので、M個の係数回路111 ,112 ,…
……,11M の割当てられるタップ番号を推定された
波形応答部の近傍に集中させ、より細かく係数の割当て
を行なう。 【0029】図4は本発明の他の実施例を示すブロック
図である。図4は係数回路111 ,112 ,………
,11M に供給されるステップ・サイズμ1 がステ
ップ・サイズμ1 とμ2 及びセレクタ42で置き換
えられている点で図1と異なる。これに伴って制御回路
13は制御回路41で置き換えられている。図4に示し
た実施例においては、セレクタ42が制御回路41から
の制御信号に従ってステップ・サイズμ1 とμ2 を
選択して、係数回路111 ,112 ,………,11
M に供給する。図5は図4に示した制御回路41のブ
ロック図である。図5と図3は、カウンタ38の出力を
制御信号302として出力する点で異なる。セレクタ4
2は、制御回路41から供給される制御信号302が0
のときはμ1 を、1のときはμ2 を選択する。制御
信号302が0のうちは係数を安定して成長させて正し
い波形応答部を推定し、制御信号302が1になった後
は係数を高速で最適値に収束させるために、通常μ1 
≦μ2 に設定する。 【0030】図6に制御回路13の他の具体例を示す。 図6と図5の制御回路の違いは、カウンタ38によって
最大係数が検出されても、その最大値が他の係数の絶対
値よりも十分大きくない限り、タップ配置を集中させず
、引続いて波形応答部の推定を続ける点である。このた
めに、比較回路56、AND回路61、OR回路57を
有する。 【0031】比較回路56は絶対値回路31と最大値検
出回路32から出力を受け、最大値と他係数との値を比
較する。比較は様々な基準で行なうことができるが、例
えば最大係数値cmax と2番目に大きい係数cjと
の比が予め定められたしきい値より大きい場合は、cm
ax が十分大きいとすることができる。比較回路56
は、cmax が十分大きいときに0を、十分大きくな
いときに1を出力して、AND回路61に伝達する。一
方、AND回路61にはカウンタ38の出力も供給され
ており、両者の出力が1のとき、すなわち最大係数を与
えるタップ番号が予め定められた回数連続したが、その
最大値が十分大きくないときに1を、それ以外の場合は
0を出力する。AND回路61の出力は比較回路55の
出力と共にOR回路57に供給されており、どちらかの
入力が1の時は1を出力する。従って、OR回路57の
出力が1となるのは、予め定められた回数の係数更新で
波形応答部が推定できなかったとき、または推定されて
も係数最大値が他の係数に比べて十分大きくない場合で
ある。このときOR回路57の出力によってFIFO3
5と記憶装置39は保持する内容の一括書換えを行ない
、新たな初期値から波形応答部の推定を開始する。 【0032】図3,5,6におけるカウンタ38の動作
として一致検出回路36からの信号が予め定められた回
数だけ連続するかを判定する場合を例にとって説明して
きたが、連続の代りに予め定められた確率に達するかを
判定する場合についても全く同様に説明できる。また、
これまでLMSアルゴリズムを仮定してきたが、LMS
特有の構成は図9に示した係数発生回路だけである。従
って、LIMを初めとする他のアルゴリズムにも本発明
を適用することができる。本発明の応用に関しても、エ
コー・キャンセラを例にとって説明してきたが、平坦遅
延と波形応答の組合せで表すことのできるインパルス応
答を有するシステムには、全て適用することができる。 【0033】 【発明の効果】以上詳細に述べたように、本発明によれ
ば、限られた数のタップ係数を逐次切替えて異なるタッ
プに割当てることにより、ハードウェア規模を削減する
ことができる。また、本発明のアダプティブ・フィルタ
は、限られた数のタップをインパルス応答の実質的な波
形応答部に割当てる際に、まず大まかな波形応答部の位
置を推定し、推定された位置の近傍にタップを集中させ
た後、推定された波形応答部近傍に限定したタップ位置
入替えを行なうことにより、収束時間を短縮することが
できる。 【0034】さらに、本発明のアダプティブ・フィルタ
は、波形応答部位置の推定では小さいステップ・サイズ
を用いて安定な位置推定を行ない、推定された波形応答
部近傍に限定したタップ位置入替えでは大きいステップ
・サイズを用いて高速収束を行ない、収束時間を短縮す
ることができる。タップ初期配置がインパルス応答の振
幅の小さいタップであっても、予め定められた時間の後
には初期値を変更して波形応答部の探索を開始するので
、波形応答部の位置推定を速く確実に行なうことができ
る。
Description: BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an adaptive filter used in identifying an unknown system. These adaptive filters include an echo canceller to remove echoes generated in the 2-wire/4-wire converter, an equalizer to remove intersymbol interference received on the transmission path, and a microphone for audio input. It is applied to noise cancellers to remove noise that enters the room, and howling cancellers to remove howling caused by acoustic coupling from speakers to microphones. [0002] Normally, an unknown system is identified using an adaptive filter by inputting the same signal to the adaptive filter as the unknown system to be identified, and subtracting the adaptive filter output from the unknown system output. Identification error (
(Hereafter, this is called an error signal)
This is done by updating the coefficients of the filter. Applications of unknown system identification using such adaptive filters include echo cancellers, equalizers, noise filters, etc.
Cancellers, howling cancellers, etc. are known (adaptive signal processing,
tive Signal Processing)
, Prentice-Hal
1), 1985; hereinafter referred to as "Reference 1"). Since the basic operations of adaptive filters in these applications are almost the same, the conventional technology will be explained here using an echo canceller as an example. [0003] An echo canceller is an adaptive canceller with a transfer function that approximates the echo impulse response.
By using a filter to generate an approximate echo (echo replica) that corresponds to the echo leaking from the transmitting circuit to the receiving circuit on the 4-wire side of the 2-wire/4-wire conversion circuit, it is possible to prevent echoes from entering the receiving circuit and receiving the test. It works by suppressing echoes that interfere with the signal. In other words, 4 of the 2-wire/4-wire conversion circuit
On the line side, the path from the transmitting circuit to the receiving circuit is
This corresponds to an unknown system that is attempted to be identified using an adaptive filter in a canceller. At this time, the adaptive
Each tap coefficient of the filter is successively corrected by correlating the transmitted signal with a difference signal obtained by subtracting the echo replica from a mixed signal in which echoes and consultation signals are mixed. The LMS algorithm (LMS ALGORITH) is a typical convergence algorithm for the echo canceller that corrects the coefficients of such an adaptive filter.
M; "Reference 2") and the Learning Identification Method (LEARNING IDENTI)
FICATION METHOD; LIM) (IEEE TRANSACTI
ONS ON AUTOMATIC CONTRO
L) Vol. 12, No. 3, 1967, pages 282-287; hereinafter referred to as "Reference 3") is known. FIG. 7 is a block diagram showing an example of the configuration of a conventional echo canceller. The echo ek generated when the transmission signal supplied to the input terminal 1 leaks to the receiving side in the 2-wire/4-wire conversion circuit 2 is supplied to the output terminal 4 after an echo replica ek is subtracted in the subtracter 3. Ru. On the other hand, the transmission signal supplied to the input terminal 1 is also supplied to the first tap circuit 701 of the adaptive filter. The first output of the first tap circuit 701 is connected to the adjacent second tap circuit 701.
The signal is transmitted to the tap circuit 702. First tap circuit 70
The second output of 1 is provided to adder 12. The second tap circuit 702 transmits the first output generated from the signal received from the first tap circuit 701 to the third tap circuit 703 and the second output to the adder 12. Similarly, the i-th tap circuit 70i is the (i-1)th tap circuit 70i-1.
The first output generated from the signal received from
) to the tap circuit 70i+1, the second output is sent to the adder 12
Communicate to. However, i is an integer satisfying 2≦i≦N−1, and N represents the number of taps of the adaptive filter. 1st
The tap circuit 701 transmits the first output generated from the signal received from the input terminal 1 to the second tap circuit 702 and the second output to the adder 12. Nth tap circuit 70N
transmits the second output generated from the signal received from the (N-1)th tap circuit 70N-1 to the adder 12. The adder 12 adds all the second outputs supplied from the i-th tap circuit 70i (1≦i≦N), and creates an echo replica e.
k to the subtracter 3. The i-th tap circuit 70i is supplied with the difference signal that is the output of the subtracter 3 and a constant μ1. Here, μ1 is called a step size and is deeply involved in coefficient updating. FIG. 8 shows a block diagram of the i-th tap circuit 70i (1≦i≦N). However, when i=1, the delay element 81 is not included. Furthermore, when i=N, the output 804 is not used. Input signal 800 is a signal transmitted from input terminal 1 or (i-1)th tap circuit 70i-1, output signal 804 is a signal transmitted to (i+1)th tap circuit, input signal 8
01 is the difference signal that is the output of the subtracter 3, the output signal 803 is the signal supplied to the adder 12, and the input signal 802 is the step size μ1. Input signal 800 is input to delay element 8
1 and delayed by one sample period, it becomes an output signal 804 and is supplied to the (i+1)th tap circuit and simultaneously transmitted to the coefficient generation circuit 82 and the multiplier 83. The coefficient generation circuit 82 is also supplied with an input signal 801 which is a difference signal and an input signal 802 which is a step size μ1. Coefficient generation circuit 82 supplies coefficient values generated using these input signals to multiplier 83. Multiplier 83
multiplies the signal from the coefficient generation circuit 82 and the signal from the delay element 81, and outputs the result as an output signal 803. FIG. 9 shows a block diagram of the coefficient generation circuit 82 assuming the LMS algorithm. The input signal 95 is the output signal of the delay element 81 in FIG. 8, the input signal 801 is the difference signal, the input signal 802 is the step size μ1, and the output signal 96 is the coefficient value. The input signal 95 and the input signal 801 are multiplied by a multiplier 91, and the correlation between the transmitted signal of the echo canceller and the difference signal is determined. The output of multiplier 91 is multiplied by step size μ1 in multiplier 92 and supplied to adder 93. The adder 93 adds the output of the multiplier 92 and the fed-back output of the delay element 94 and supplies the result to the delay element 94 . The output of the delay element 94, which is a coefficient value, is outputted as an output signal 96 every clock. [0007] Now, assume that the transmitted signal is xk (where k is an index indicating time), the echo is ek, and the additional noise received by ek is δk. Considering that the echo canceller generally performs adaptive operation only during single talk when there is no received signal and only the echo ek exists, the subtracter 3
The signal uk supplied to uk consists of echoes and additional noise and is expressed by the following equation. uk = ek + δk ………………
…………………………………………… (1) The purpose of the echo canceller is to generate a replica ek of the echo ek in equation (1) and use this to cancel the echo. . The difference signal dk, which is the output signal of the subtractor 3, is expressed by the following equation, considering that δk is generally sufficiently small compared to ek -ek . dk =ek −ek ………………
...................................................... (2) In equation (2), (ek - ek ) is called a residual echo. LM
In the S algorithm, the m-th coefficient cm,k of the adaptive filter is updated according to the following equation. cm,k =cm,k-1 +μ1
・dk ・xk−m−1 ………………………(3)
Expressing equation (3) regarding all N coefficients in matrix form, we get
ck = ck-1 + μ1 ・dk
・xk-1 …………………………………(4). Here, vector ck and vector xk are respectively given by the following equations. ck = [c0,k c1,k...
…cn-1,k ]T ………………………(5)
xk = [xk xk-1 ...... xk
−N+1]T …………………………………(6) On the other hand,
In LIM, coefficients are updated according to equation (7) instead of equation (4). ck = ck-1 + (α/Nσx2
)・dk・xk−1 ………………………(7) α is
The step size for LIM, σx2, is the average power input to the adaptive filter. σx2
is used to make the value of step size α inversely proportional to the average power and to achieve stable convergence. σx2
There are several ways to calculate, for example, the formula (
8). ##EQU1## The step size in equations (4) and (7) defines the speed of convergence of the adaptive filter and the residual echo level after convergence. In the case of LMS, μ
The larger 1, the faster the convergence, but the higher the residual echo level. On the other hand, in order to achieve a sufficiently small residual echo level, it is necessary to adopt a commensurately small μ1, which results in a decrease in the convergence speed. The same applies to the step size α of LIM. In identifying an unknown system, cases in which a long flat delay is included at the beginning of the impulse response of the unknown system to be identified are frequently observed, especially in echo cancellers intended for satellite lines. Even for an impulse response including such a long flat delay, it is necessary for the conventional echo canceller to have a number of taps corresponding to the impulse response length in order to sufficiently suppress the echo. In reality, the tap coefficients of the flat delay section are zero, so it is wasteful to use these coefficients in calculating the filter output. There is a method to solve this problem and perform system identification efficiently even for impulse responses that include long flat delays.
“Proceedings of the 1981 National Conference of the Telecommunications Society of the Institute of Electronics and Communication Engineers, N.
o. 595" (hereinafter referred to as "Reference 4"). In this method, for an impulse response consisting of a flat delay and a substantial waveform response, only coefficients at positions corresponding to a substantial waveform response are used for filter output calculation, thereby reducing the amount of calculation. The method described in Document 4 will be briefly explained below. FIG. 10 is a block diagram showing the echo canceller described in Document 4. The difference from the echo canceller shown in FIG. 7 is that each tap circuit 10 in FIG.
01 , 1002 , ......, 100N After passing through the control circuit 101 , each tap circuit 1001 , 100
2,......,100N and each tap circuit 701,702,......,70N and each tap circuit 1001,1002,......,100
This is a configuration of N. The control circuit 101 includes each tap circuit 1
Using the coefficient values obtained from 001, 1002, ......, 100N, it is determined for which coefficient the calculation should be stopped, and the information is used as a control signal to each tap circuit 1001.
, 1002 , ......, 100N. Each tap circuit 10 is controlled by a signal supplied from the control circuit 101.
01, 1002, ......, 100N stop calculations for unnecessary coefficients. FIG. 11 shows a block diagram of the tap circuit 100i. The difference from the tap circuit 70i shown in FIG. 83. The selector 111 selects the output of the coefficient generation circuit 82 or zero and supplies it to the multiplier 83 . Selector 110 selects input signal 801 or zero and supplies it to coefficient generation circuit 82 . Both selectors 110 and 111 select zero in response to a control signal 115 supplied from the control circuit 101 to each tap coefficient. Therefore, selector 11
When the selector 111 selects zero, the signal supplied to the coefficient generation circuit 82 becomes zero, and when the selector 111 selects zero, the multiplicand in the multiplier 83 becomes zero, and the coefficient update amount and the corresponding tap circuit output become zero. Selectors 110, 11
1 selects and outputs zero when the control signal 115 is 0. Next, the control circuit 101 will be explained. FIG. 12 is a block diagram of the control circuit 101. The control circuit 101 is supplied with tap coefficient values and tap numbers from N taps of the adaptive filter. The control circuit 101 detects a minimum value among tap coefficient values whose corresponding tap number matches a tap number stored in the control circuit, and stores the tap coefficient value in the control circuit in place of the tap number corresponding to the minimum value. A new set of tap numbers is constructed by replacing the value at the head of the current queue as a new tap number, and is supplied to the N taps of the adaptive filter. The input signal 125 to the control circuit 101 is input to each tap circuit 1001, 1002,...
, 100N and supplied to the control circuit 101, the output signal 126 is output from the control circuit 101 to each tap circuit 1.
This is a control signal supplied to 001, 1002, ......, 100N. Therefore, although shown as a single line in the figure, the input signal 125 and output signal 126 are N multiplexed signals. The input signal 125 is first input to the absolute value circuit 121.
The absolute value is converted into an absolute value and transmitted to the minimum value detection circuit 122. A minimum value detection circuit 122 detects the minimum of these absolute value signal components and stores the corresponding tap number in a first-in first-out circuit (FIFO) 123 and a storage device 124.
Communicate to. The FIFO 123 is the minimum value detection circuit 122
When a signal is supplied from the storage device 124, one sample inputted fastest among the sample values stored at that time is transmitted to the storage device 124. The storage device 124 stores 0 or 1 corresponding to each of the N tap numbers to be subjected to the filtering operation, and when a signal is transmitted from the FIFO 123, the value corresponding to the tap number is changed from 0 to 1. change. On the other hand, the value corresponding to the tap number supplied from the minimum value detection circuit 122 to the storage device 124 is changed from 1 to 0. Therefore, the total number of 0's and 1's in the storage device 124 is constant, the total number M of 1's is the effective number of taps to which coefficients are assigned, and the number of 0's NM is the number of taps to which no coefficients are assigned. A signal composed of a sequence of 0's and 1's obtained through the above operations is outputted from the storage device 124 as an output signal 126, and then sent to each tap circuit 1001, 1002,
......, 100N is supplied. i of output signal 126
The second numerical value (0 or 1) becomes a control signal for the tap circuit 100i. The tap circuit 100i outputs the output signal 126
The selectors 110 and 111 are controlled using the i-th value as the control signal 115 in FIG. [0014] As explained using FIG. 11, in the method described in Document 4, the control signal 11
When 0 is supplied as 5, zero is output as the output of the selector 111. Therefore, the coefficient generation circuit 82 is not substantially used and is wasted. Furthermore, as the initial value of the storage device 124 in FIG. 12, a number of 1s equal to the number of effective taps are arranged at equal intervals, and as the initial value of the FIFO 123, that is, the queue, the tap numbers to which 0 is assigned in the storage device 124 are assigned from the smallest to the lowest. Place them in order. When such an initial value is used and an impulse response with a long flat delay is approximated, the tap number corresponding to the waveform response section moves to a position closer to the output in the FIFO 123, is supplied to the storage device 124, and is assigned taps. It takes a long time until it is done. Therefore, there is a problem that the convergence time becomes long. An object of the present invention is to provide an adaptive filter with small hardware scale and short convergence time. [0016] The present invention performs multiplication by adaptively combining a plurality of input signal samples delayed by one sample period with a plurality of multiplicands that adaptively change. When approximating an unknown system with an adaptive filter that stores addresses of multiplicands that are not used in a queue and outputs the sum of the multiplication results, the combination of the input sample and the multiplicand is fixed. updating a multiplicand, monitoring the maximum absolute value of the plurality of multiplicands, and updating the multiplicand when a particular multiplicand is detected as the maximum value at a predetermined frequency; If the first value in the queue is not within a predetermined value range from the position of the maximum value, the first value is stored at the end of the queue and the new value at the beginning of the queue is set. Evaluate the position, repeat this operation until a new queue head value within the predetermined value range is obtained, and use the multiplicand corresponding to the address that is the head value for multiplication. Set,
Detecting the minimum value of the absolute value of the multiplicand, storing the address of the multiplicand corresponding to the minimum value at the end of the queue and removing it from the multiplication target, setting the new multiplicand, and storing the minimum value address in the queue. is repeated until a predetermined number of times is reached, and while the multiplicand is updated a predetermined number of times with the combination of input sample multiplicands fixed, a certain multiplicand is set as the maximum value at a predetermined frequency. If not detected, the combination of the input sample and the multiplicand is changed, and the multiplicand is updated a predetermined number of times until a certain multiplicand is detected as the maximum value at a predetermined frequency; The method is characterized in that the combination of the input sample and the multiplicand is changed. Further, according to the present invention, a predetermined first constant is used for updating the multiplicand when the combination of the input sample and the multiplicand is fixed, and the update is performed while the combination is adaptively changed. A feature is that a predetermined second constant is used to update the multiplicand. Furthermore, in the present invention, when a certain multiplicand is detected as the maximum value at a predetermined frequency, when the maximum value is detected to be sufficiently large compared to other multiplicands, the multiplicand is It is characterized in that the multiplicand is updated and the multiplicand corresponding to the value in the queue is replaced, and when it is determined that the multiplicand is not sufficiently large, the combination of the input sample and the multiplicand is changed. [0019] In the adaptive filter of the present invention, the hardware scale can be reduced by sequentially switching a limited number of tap coefficients and assigning them to different taps. In addition, in the adaptive filter of the present invention, when allocating a limited number of taps to the substantial waveform response part of the impulse response, the rough position of the waveform response part is first estimated, and then the approximate position of the waveform response part is After concentrating the taps, the convergence time can be shortened by replacing the tap positions only in the vicinity of the estimated waveform response section. In particular, when the position of the waveform response section cannot be estimated within a predetermined time, the initial value of the tap assignment is changed and re-estimation is performed. Even when the position of the waveform response unit is estimated, if the estimated position is not determined to be valid, the initial value of the tap assignment is updated and re-estimation is performed. Furthermore, the adaptive filter of the present invention performs stable position estimation using a small step size when estimating the position of the waveform response part, and uses a large step size when replacing the tap position limited to the vicinity of the estimated waveform response part. can be used to perform high-speed convergence and shorten the convergence time. DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, the present invention will be explained in detail with reference to the drawings. FIG. 1 is a block diagram showing one embodiment of the present invention. In the figure, functional blocks given the same reference numbers as in FIG. 10 have the same functions as in FIG. 10. The difference between FIG. 1 and FIG. 10 is that each tap circuit 1001
, 1002 , ......, 100N is the delay element array 10
1, 102, ......, 10N, matrix switch 14, and coefficient circuit 111, 112, ......, 1
The point is that it has been replaced by 1M. Along with this,
The control circuit 13 controls the matrix switch 14 with its output. In FIG. 1, the input signal supplied to the delay element 101 is transmitted to the delay elements 102, . . . every clock.
..., 10N sequentially. Delay element array 101
,102 ,......,10N is matrix switch 1
4 through M coefficient circuits 111, 112,......,
Connected to 11M. However, N>M. The matrix switch 14 includes M delay element arrays 10i selected by the output of the control circuit 13 and M coefficient circuits 11.
i sequentially and adaptively. FIG. 2 shows the configuration of the i-th coefficient circuit 11i.
Shown below. 2 is essentially equivalent to the tap circuit of FIG. 8, the only difference being that it does not include the delay element 81. The input signal 20 of FIG. 2 corresponds to the output signal of the delay element 10i of FIG. Other signals 21, 25, 23 are 801 in FIG.
, 803 and 802, respectively, the difference signal which is the output of the subtracter 3, the signal supplied to the adder 12, and the step signal.
It's the size. Coefficient generation circuit 22 and multiplier 24 operate exactly the same as coefficient generation circuit 82 and multiplier 83 in FIG. FIG. 3 shows a specific example of the control circuit 13. The input signal 300 in FIG. 3 has M coefficient circuits 111 and 112.
, ......, coefficient value supplied from 11M, output signal 3
01 is a control signal for the matrix switch 14. A coefficient value supplied as an input signal 300 is converted into an absolute value by an absolute value circuit 31 and transmitted to a maximum value detection circuit 32 and a minimum value detection circuit 33. The maximum value detection circuit 32 detects the maximum one of the input signals and supplies the corresponding tap number to the delay element 34 , the coincidence detection circuit 36 , the determination circuit 37 and the storage device 39 . Delay element 34 delays the input signal by one sample period and then transmits it to coincidence detection circuit 36 . The coincidence detection circuit 36 checks whether the signal supplied directly from the maximum value detection circuit 32 and the signal supplied via the delay element 34 match. This is equivalent to checking whether the tap number corresponding to the current maximum coefficient matches the tap number corresponding to the maximum coefficient one sample period ago. The coincidence detection circuit 36 is
When the two inputs match, 1 is output, and when they do not match, 0 is output. The counter 38 receives this 1 or 0 from the coincidence detection circuit 36 and counts 1. When 1s continue, the counter 38 continues to count up, and when the 1s reach a predetermined value, its output is changed from 0 to 1. Further, when 0 is detected, the counter is reset. The output signal of the counter 38 is transmitted to a delay element 51,
It is supplied to the coincidence detection circuit 52 and the selector 53,
The selector 53 selects the delay element 54 when this output signal is 0.
When the output is 1, the output of the storage device 39 is selected and outputted as the output signal 301. The output signal 301 is delayed by one sample period via the delay element 54 and then sent to the selector 5.
3 will be returned. Therefore, when the output of the counter 38 is 0, the control signal 301 indicating which tap to allocate a coefficient to is the value of one sample period before, and the coefficient allocation tap does not change, and when the output is 1, the control signal 301 is newly output from the storage device 39. The coefficient assignment tap will change depending on the supplied value. The coincidence detection circuit 52 checks whether the output of the counter 38 matches the signal obtained by delaying the output of the counter 38 by one sample period by the delay element 51 and the output of the counter 38, and transmits 1 if they match, and transmits 0 if not to the storage device 39. The minimum value detection circuit 33 detects the minimum value among the input signals, and stores the corresponding tap number in the FIFO 35.
and is supplied to the storage device 39. When the FIFO 35 is supplied with a signal from the minimum value detection circuit 33, it transmits the earliest input sample among the sample values stored at that time to the determination circuit 37. In the judgment circuit 37, F
The difference between the signal supplied from the IFO 35 and the signal supplied from the maximum value detection circuit 32 is determined, and its absolute value is compared with a predetermined threshold. When the absolute value is larger than the threshold value, the signal supplied from the FIFO 35 is fed back to the FIFO 35 as is. When it is smaller than the threshold value, it is transmitted to the storage device 39. The storage device 39 stores 0 or 1 corresponding to each of the N tap numbers to be subjected to the filtering operation, and when a signal is transmitted from the determination circuit 37, the value corresponding to the tap number is set to 0.
Change from 1 to 1. On the other hand, the value corresponding to the tap number supplied from the minimum value detection circuit 33 to the storage device 39 is changed from 1 to 0. Therefore, the total numbers of 0's and 1's in the storage device 39 are each constant. Further, when the signal supplied from the coincidence detection circuit 52 to the storage device 39 is 1, the storage device 39 places M 1's before and after the tap number supplied from the maximum value detection circuit 32. As an example of the arrangement method 1, the tap numbers are equally distributed in the front and rear around the tap number,
And they can be arranged so that 1's are consecutive. By this operation, effective taps are concentrated and arranged near the estimated waveform response section. The signal composed of the sequence of 0's and 1's obtained by the above operation is sent to the selector 53 from the storage device 39.
is transmitted to. As already explained, the selector 53 switches between the signal supplied from the storage device 39 and the signal supplied from the delay element 54 under control of the output of the counter 38. The counter 38 also supplies the number of consecutive 1s itself to the comparator circuit 55. Comparison circuit 55 normally outputs 0, but compares the number of consecutive 1's supplied from counter 38 with a predetermined threshold value Nth, and outputs 1 when the number of consecutive 1's is equal to Nth. do. The output of the comparison circuit 55 is fed back to the counter 38 at the same time as it is supplied to the FIFO 35 and the storage device 39, and the counter 38 is reset when the signal supplied from the comparison circuit 55 is 1. Further, when the output of the comparator circuit 55 is 1, the FIFO 35 and the storage device 39 perform batch rewriting of the held contents using the outputs of the data conversion circuit 60 and the shift circuit 59, respectively. A sequence of 1's and 0's equal to the number of taps N is stored in the storage device 58 as an initial value of the storage device. At this time, the M 1's are arranged at equal intervals with respect to the total number N of 1's and 0's. The shift circuit 59 shifts the data supplied from the storage device 58, supplies it to the storage device 39 and the data conversion circuit 60, and further shifts the data supplied from the storage device 58.
The data shifted to 8 is also returned. The shift amount can be set arbitrarily, but as an example, the initial value can be set to 1/2 of the interval of 1 arranged at equal intervals. The shift amount is halved each time a shift is performed, and changing the shift amount is repeated until the shift amount becomes equal to 1 (1 sample). The shift amount in shift circuit 59 is supplied from storage device 58 . As is clear from the above explanation, when the output of the counter 38 in FIG.
, 112 , . . . , 11M are unchanged and maintain the initial assignment state. By monitoring how the amplitude of the tap coefficient value grows, the substantial waveform response part can be estimated. When the output of the counter 38 becomes 1, it means that a substantial waveform response section has been estimated, so M coefficient circuits 111 , 112 , . . .
..., 11M are concentrated in the vicinity of the estimated waveform response section, and coefficients are more finely assigned. FIG. 4 is a block diagram showing another embodiment of the present invention. FIG. 4 shows coefficient circuits 111, 112,...
, 11M is different from FIG. 1 in that the step size .mu.1 supplied to . Along with this, the control circuit 13 has been replaced with a control circuit 41. In the embodiment shown in FIG. 4, the selector 42 selects the step sizes μ1 and μ2 according to the control signal from the control circuit 41, and the coefficient circuits 111, 112, 11
Supply to M. FIG. 5 is a block diagram of the control circuit 41 shown in FIG. 4. 5 and 3 differ in that the output of the counter 38 is output as a control signal 302. selector 4
2, the control signal 302 supplied from the control circuit 41 is 0.
When it is 1, select μ1, and when it is 1, select μ2. While the control signal 302 is 0, the coefficients are stably grown to estimate the correct waveform response part, and after the control signal 302 is 1, the coefficients are normally set to 1 in order to rapidly converge to the optimal value.
Set to ≦μ2. FIG. 6 shows another specific example of the control circuit 13. The difference between the control circuits of FIG. 6 and FIG. 5 is that even if the maximum coefficient is detected by the counter 38, the tap placement is not concentrated unless the maximum value is sufficiently larger than the absolute value of the other coefficients, and the control circuit continues to This is the point at which the estimation of the waveform response section continues. For this purpose, a comparison circuit 56, an AND circuit 61, and an OR circuit 57 are provided. The comparison circuit 56 receives outputs from the absolute value circuit 31 and the maximum value detection circuit 32, and compares the maximum value with other coefficients. The comparison can be made using various criteria, but for example, if the ratio between the maximum coefficient value cmax and the second largest coefficient cj is greater than a predetermined threshold, cm
It can be assumed that ax is sufficiently large. Comparison circuit 56
outputs 0 when cmax is sufficiently large, and outputs 1 when it is not sufficiently large, and transmits it to the AND circuit 61. On the other hand, the output of the counter 38 is also supplied to the AND circuit 61, and when the outputs of both are 1, that is, when the tap number giving the maximum coefficient continues a predetermined number of times, but the maximum value is not large enough. Outputs 1 in the following cases, and 0 in other cases. The output of the AND circuit 61 is supplied to the OR circuit 57 together with the output of the comparison circuit 55, and when either input is 1, it outputs 1. Therefore, the output of the OR circuit 57 becomes 1 when the waveform response section cannot be estimated by updating the coefficients a predetermined number of times, or when the maximum value of the coefficient is sufficiently large compared to other coefficients even if it is estimated. This is the case where there is no. At this time, the output of the OR circuit 57 causes the FIFO3
5 and the storage device 39 collectively rewrite the contents held therein, and start estimating the waveform response section from new initial values. The operation of the counter 38 in FIGS. 3, 5, and 6 has been explained by taking as an example a case where it is determined whether the signal from the coincidence detection circuit 36 is continuous a predetermined number of times, but instead of being continuous, a predetermined number of times is determined. The case of determining whether the given probability is reached can be explained in exactly the same way. Also,
Up until now, we have assumed the LMS algorithm, but the LMS
The only unique configuration is the coefficient generation circuit shown in FIG. Therefore, the present invention can be applied to other algorithms including LIM. Although the application of the present invention has been explained using an echo canceller as an example, it can be applied to any system having an impulse response that can be expressed by a combination of a flat delay and a waveform response. As described in detail above, according to the present invention, the hardware scale can be reduced by sequentially switching a limited number of tap coefficients and assigning them to different taps. Furthermore, when assigning a limited number of taps to the substantial waveform response part of the impulse response, the adaptive filter of the present invention first estimates the approximate position of the waveform response part, and then assigns the taps in the vicinity of the estimated position. After concentrating the taps, the convergence time can be shortened by replacing the tap positions only in the vicinity of the estimated waveform response section. Furthermore, the adaptive filter of the present invention performs stable position estimation using a small step size when estimating the position of the waveform response section, and uses a large step size when changing the tap position limited to the vicinity of the estimated waveform response section. - It is possible to perform high-speed convergence using the size and shorten the convergence time. Even if the initial tap placement is a tap with a small impulse response amplitude, the initial value is changed and the search for the waveform response section is started after a predetermined time, so the position of the waveform response section can be estimated quickly and reliably. can be done.

【図面の簡単な説明】[Brief explanation of the drawing]

【図1】本発明の一実施例を示すブロック図。FIG. 1 is a block diagram showing one embodiment of the present invention.

【図2】図1のタップ回路の詳細を示す図。FIG. 2 is a diagram showing details of the tap circuit in FIG. 1;

【図3】図1の制御回路の一具体例を示すブロック図。FIG. 3 is a block diagram showing a specific example of the control circuit in FIG. 1;

【図4】本発明の他の実施例を示すブロック図。FIG. 4 is a block diagram showing another embodiment of the present invention.

【図5】図4の制御回路の一具体例を示すブロック図。FIG. 5 is a block diagram showing a specific example of the control circuit shown in FIG. 4;

【図6】図4の制御回路の他の具体例を示すブロック図
FIG. 6 is a block diagram showing another specific example of the control circuit in FIG. 4;

【図7】従来のアダプティブ・フィルタをエコー・キャ
ンセラに適用した例を示すブロック図。
FIG. 7 is a block diagram showing an example in which a conventional adaptive filter is applied to an echo canceller.

【図8】図7におけるタップ回路の詳細を示すブロック
図。
FIG. 8 is a block diagram showing details of the tap circuit in FIG. 7.

【図9】図8における係数発生回路の詳細を示すブロッ
ク図。
FIG. 9 is a block diagram showing details of the coefficient generation circuit in FIG. 8;

【図10】従来のアダプティブ・フィルタをエコー・キ
ャンセラに適用した別の例を示すブロック図。
FIG. 10 is a block diagram showing another example in which a conventional adaptive filter is applied to an echo canceller.

【図11】図10におけるタップ回路の詳細を示すブロ
ック図。
FIG. 11 is a block diagram showing details of the tap circuit in FIG. 10.

【図12】図10の制御回路の詳細を示すブロック図。FIG. 12 is a block diagram showing details of the control circuit of FIG. 10;

【符号の説明】[Explanation of symbols]

1    入力端子 2    2線−4線変換回路 3    減算器 4    出力端子 10i (1≦i≦N)    遅延素子11i (1
≦i≦M)    タップ回路13    制御回路 14    マトリクススイッチ 41    制御回路 42    セレクタ
1 Input terminal 2 2-wire to 4-wire conversion circuit 3 Subtractor 4 Output terminal 10i (1≦i≦N) Delay element 11i (1
≦i≦M) Tap circuit 13 Control circuit 14 Matrix switch 41 Control circuit 42 Selector

Claims (1)

【特許請求の範囲】 【請求項1】  1サンプル周期ずつ遅延された複数の
入力信号サンプルを、適応的に変化する複数の被乗数と
適応的に組合せて乗算を行ない該乗算に用いられない被
乗数のアドレスを待ち行列に格納し、前記乗算結果の総
和をもって出力とするアダプティブ・フィルタで未知シ
ステムを近似する際に、ある初期条件のもとで未知シス
テムの平坦遅延を推定し、該推定された平坦遅延にほぼ
相当する遅延を受けた複数の前記入力信号サンプルと前
記被乗数を前記乗算のために組合せ、該組合せを一定の
制限のもとで変化させながら被乗数値を更新し、前記平
坦遅延の推定にあたっては、予め定められた繰返し回数
内に推定が完了しないか又は推定が完了しても推定値の
信頼度が予め定められた値に達しない場合には、新たな
前記組合せの初期値をもって遅延推定を行ない、それ以
外の場合には被乗数の更新及び被乗数と待ち行列内の値
に対応した被乗数の入替えを行なうことを特徴とするア
ダプティブ・フィルタによる未知システム近似の方法。 【請求項2】  平坦遅延の推定は、入力信号サンプル
と被乗数との組合せをある初期値に固定した状態で前記
被乗数の更新を行ない、前記複数の被乗数の絶対値の最
大値を監視し、ある特定の被乗数が予め定められた頻度
で前記最大値として検知されたことをもって行なうこと
を特徴とする請求項1に記載のアダプティブ・フィルタ
による未知システム近似の方法。 【請求項3】  平坦遅延推定後の被乗数更新は、待ち
行列内の先頭の値が被乗数最大値の位置から予め定めら
れた範囲内にない場合には該先頭の値を前記待ち行列の
最後尾に格納して新たな待ち行列先頭の値に対して位置
の評価を行ない、前記予め定められた範囲内にある新た
な待ち行列先頭の値を得るまでこの操作を繰返し、該先
頭の値であるアドレスに対応する前記被乗数を乗算に用
いるように設定し、前記被乗数の絶対値の最小値を検出
し、該最小値に対応する被乗数のアドレスを前記待ち行
列の最後尾に格納して乗算対象から除き、該新規被乗数
の設定と最小値アドレスの待ち行列格納を予め定められ
た回数に達するまで繰返して行なうことを特徴とする請
求項1又は2に記載のアダプティブ・フィルタによる未
知システム近似の方法。 【請求項4】  平坦遅延の推定における推定完了の判
定は、被乗数を入力サンプルと被乗数の組合せを固定し
た状態で予め定められた回数更新する間にある特定の被
乗数が予め定められた頻度で最大値として検知されるこ
とによって行なうことを特徴とする請求項1,2又は3
に記載のアダプティブ・フィルタによる未知システム近
似の方法。 【請求項5】  推定値の信頼度は被乗数最大値の他に
被乗数に対する大きさをもって決定することを特徴とす
る請求項1,2,3又は4に記載のアダプティブ・フィ
ルタによる未知システム近似の方法。 【請求項6】  被乗数の更新は、遅延された複数の入
力信号サンプルとアダプティブ・フィルタ出力を用いて
外部で計算される誤差信号を乗算して第1の乗算結果を
得、該第1の乗算結果と予め定められた第1の定数を乗
算して第2の乗算結果を得、該第2の乗算結果と遅延さ
れた第2の乗算結果を加算して加算結果を得、該加算結
果を1サンプル周期遅延させた後前記加算に使用し、前
記加算結果を更新された前記被乗数として用いることを
特徴とする請求項1,2,3,4又は5に記載のアダプ
ティブ・フィルタによる未知システム近似の方法。 【
請求項7】  平坦遅延の推定に対しては第1の定数を
用い、平坦遅延推定後の被乗数更新には予め定められた
第2の定数を用いることを特徴とする請求項6に記載の
アダプティブ・フィルタによる未知システム近似の方法
。 【請求項8】  特定の被乗数が予め定められた回数連
続して最大値として検出されることをもって定められた
頻度とすることを特徴とする請求項4,5,6又は7に
記載のアダプティブ・フィルタによる未知システム近似
の方法。 【請求項9】  特定の被乗数が予め定められた確率を
超えて最大値として検出されることをもって定められた
頻度とすることを特徴とする請求項4,5,6又は7に
記載のアダプティブ・フィルタによる未知システム近似
の方法。 【請求項10】  入力信号を1サンプル周期遅延させ
る複数の遅延素子の縦続接続からなる遅延素子列と、該
遅延素子列を構成する各遅延素子の出力と各遅延素子に
対応した係数との乗算を行なう複数の乗算回路と、前記
複数の遅延素子と複数の乗算回路との接続関係を決定す
るマトリクス・スイッチと、前記複数の乗算回路の出力
の総和をとる加算器と、前記複数の乗算回路の出力を受
け、前記マトリクス・スイッチに対する制御信号を発生
する制御回路とを少なくとも具備し、前記乗算回路は係
数発生回路と、該係数発生回路の出力又は零のうちいず
れかを選択する第1のセレクタと、該第1のセレクタの
出力と前記各遅延素子の出力とを乗算して出力とする乗
算器と、外部より供給される誤差信号又は零のうちいず
れかを選択して前記係数発生回路に伝達する第2のセレ
クタとから構成され、制御回路は、前記係数発生回路出
力を受けて絶対値化する絶対値回路と、該絶対値回路出
力のうちで最小のものを検出する最小値検出回路と、前
記絶対値回路出力のうちで最大のものを検出する最大値
検出回路と、該最大値検出回路の出力を遅延させる第1
の遅延素子と、該第1の遅延素子の出力と前記最大値検
出回路の出力との一致を検出する第1の一致検出回路と
、該第1の一致検出回路の出力を係数するカウンタと、
該カウンタ出力を遅延させる第2の遅延素子と、該第2
の遅延素子の出力と前記カウンタ出力の一致を判定する
第2の一致検出回路と、前記カウンタの出力と予め定め
られた第1の定数を比較する第1の比較回路と、前記最
小値検出回路の出力を受けてスタックの最深部に格納す
ると同時に最浅部の値を出力し、さらに前記第1の比較
回路の出力に応じてスタックの内容を全て書換える先入
れ先出し回路と、該先入れ先出し回路の出力と前記最大
値検出回路の出力を受け、前記先入れ先出し回路の出力
と前記最大値検出回路の出力との差が予め定められたし
きい値以下であるかどうかを判定し、しきい値以上であ
る場合には前記先入れ先出し回路の出力を前記先入れ先
出し回路へ帰還する判定回路と、該判定回路の出力と前
記最小値検出回路の出力を受けて記憶内容を逐次書換え
、前記第2の一致検出回路の出力に応じて前記最大値検
出回路の出力を用いて記憶内容を全部書換え、もしくは
前記第1の比較回路の出力に応じて記憶内容を全て書換
える第1の記憶装置と、該第1の記憶装置の出力と第3
の遅延素子の出力を前記カウンタの出力に従って選択し
て出力する第3のセレクタと、前記第1の記憶装置をリ
セットするためのデータを記憶する第2の記憶装置と、
該第2の記憶装置出力を受けて全ての1であるビットを
同量シフトした後前記第1の記憶装置に記憶内容全書換
えのために供給すると同時にシフト量を変更するシフト
回路と、該シフト回路の出力を受けて全ビットを反転し
、1であるビット番号を前記先入れ先出し回路にスタッ
ク内容書換えのために供給するデータ変換回路とから構
成され、該第3のセレクタ出力を前記第3の遅延素子に
供給すると同時に前記制御信号とし、前記制御信号によ
って前記第1及び第2のセレクタが制御されることを特
徴とするアダプティブ・フィルタによる未知システム近
似装置。 【請求項11】  係数発生回路は、各遅延素子の出力
と外部より供給される誤差信号を乗算する第1の乗算器
と、該第1の乗算器の出力と予め定められた第2の定数
を乗算する第2の乗算器と、該第2の乗算器の出力と後
述の第4の遅延素子出力を加算する加算器と、該加算器
出力を1サンプル周期遅延させた後、前記加算器に帰還
する第4の遅延素子とから構成され、該遅延素子出力を
係数値として出力することを特徴とする請求項10に記
載のアダプティブ・フィルタによる未知システム近似装
置。 【請求項12】  予め定められた第2の定数と、予め
定められた第3の定数を切換える第4のセレクタを有し
、カウンタ出力で前記第4のセレクタを制御することを
特徴とする請求項10又は11に記載のアダプティブ・
フィルタによる未知システム近似装置。 【請求項13】  絶対値回路出力と最大値検出回路の
出力を受けて比較する第2の比較回路と、該第2の比較
回路の出力と前記カウンタ出力を受けて積集合をとるA
ND回路と、第1の比較回路の出力と前記AND回路の
出力を受けて和集合をとるOR回路を少なくとも具備し
、該OR回路の出力で先入れ先出し回路と第1の記憶装
置を制御して、データ変換回路とシフト回路からそれぞ
れ供給される信号で内容を全部書換えることを特徴とす
る請求項10,11及び12に記載のアダプティブ・フ
ィルタによる未知システム近似装置。 【請求項14】  カウンタは一致回路出力の連続制を
係数し、連続しないときにはリセットする事を特徴とす
る請求項10,11,12又は13に記載のアダプティ
ブ・フィルタによる未知システム近似装置。 【請求項15】  カウンタは一致回路出力が一致と判
定する確率を観測し、該確率が予め定められた値を超え
ないときにはリセットする事を特徴とする請求項10,
11,12又は13に記載のアダプティブ・フィルタに
よる未知システム近似装置。
[Scope of Claims] [Claim 1] Multiplication is performed by adaptively combining a plurality of input signal samples delayed by one sample period with a plurality of multiplicands that are adaptively changed, and the multiplicands that are not used in the multiplication are multiplied. When approximating an unknown system with an adaptive filter that stores addresses in a queue and outputs the sum of the multiplication results, the flat delay of the unknown system is estimated under certain initial conditions, and the estimated flat delay is combining the multiplicand with a plurality of input signal samples that have undergone a delay approximately corresponding to the delay, updating the multiplicand value while varying the combination under certain restrictions, and estimating the flat delay. In this case, if the estimation is not completed within a predetermined number of repetitions, or if the reliability of the estimated value does not reach the predetermined value even after the estimation is completed, the process is delayed with a new initial value of the combination. A method for approximating an unknown system using an adaptive filter, characterized by performing estimation, and otherwise updating the multiplicand and replacing the multiplicand with the multiplicand corresponding to a value in a queue. 2. Estimating the flat delay is performed by updating the multiplicand while fixing the combination of the input signal sample and the multiplicand to a certain initial value, and monitoring the maximum absolute value of the plurality of multiplicands. 2. The method for approximating an unknown system using an adaptive filter according to claim 1, wherein the method is performed when a specific multiplicand is detected as the maximum value at a predetermined frequency. 3. Multiplicand updating after flat delay estimation is performed by updating the leading value in the queue to the end of the queue if the leading value in the queue is not within a predetermined range from the position of the maximum multiplicand value. This operation is repeated until a new queue head value within the predetermined range is obtained, and the position is evaluated for the new queue head value. The multiplicand corresponding to the address is set to be used for multiplication, the minimum absolute value of the multiplicand is detected, the address of the multiplicand corresponding to the minimum value is stored at the end of the queue, and the multiplicand is removed from the multiplication target. 3. The method of approximating an unknown system using an adaptive filter according to claim 1, wherein the setting of the new multiplicand and the storing of the minimum value address in a queue are repeated until a predetermined number of times is reached. 4. Determination of completion of estimation in estimating flat delay is performed when a certain multiplicand reaches the maximum at a predetermined frequency while the multiplicand is updated a predetermined number of times with the combination of input sample and multiplicand fixed. Claim 1, 2 or 3 characterized in that the method is carried out by being detected as a value.
A method of approximating an unknown system using an adaptive filter described in . 5. The method of approximating an unknown system using an adaptive filter according to claim 1, 2, 3, or 4, wherein the reliability of the estimated value is determined based on the magnitude of the multiplicand in addition to the maximum value of the multiplicand. . 6. Updating the multiplicand comprises multiplying an externally calculated error signal using a plurality of delayed input signal samples and an adaptive filter output to obtain a first multiplication result; Multiplying the result by a predetermined first constant to obtain a second multiplication result; adding the second multiplication result and the delayed second multiplication result to obtain an addition result; 6. The unknown system approximation by an adaptive filter according to claim 1, 2, 3, 4, or 5, wherein the adaptive filter is used for the addition after being delayed by one sample period, and the addition result is used as the updated multiplicand. the method of. [
7. The adaptive system according to claim 6, wherein the first constant is used for estimating the flat delay, and the predetermined second constant is used for updating the multiplicand after estimating the flat delay.・Method of approximating unknown systems using filters. 8. The adaptive system according to claim 4, 5, 6, or 7, wherein the predetermined frequency is defined as a specific multiplicand being detected as the maximum value consecutively a predetermined number of times. A method for approximating unknown systems using filters. 9. The adaptive method according to claim 4, 5, 6, or 7, wherein the predetermined frequency is determined by detecting a specific multiplicand as a maximum value exceeding a predetermined probability. A method for approximating unknown systems using filters. 10. Multiplying a delay element array consisting of a plurality of cascaded delay elements that delay an input signal by one sample period, and the output of each delay element constituting the delay element array by a coefficient corresponding to each delay element. a matrix switch that determines the connection relationship between the plurality of delay elements and the plurality of multiplier circuits, an adder that sums the outputs of the plurality of multiplier circuits, and the plurality of multiplier circuits. and a control circuit that receives the output of the matrix switch and generates a control signal for the matrix switch; a selector, a multiplier that multiplies the output of the first selector and the output of each of the delay elements to produce an output, and a coefficient generation circuit that selects either an error signal supplied from the outside or a zero. The control circuit includes an absolute value circuit that receives the coefficient generation circuit output and converts it into an absolute value, and a minimum value detection circuit that detects the minimum of the absolute value circuit outputs. a maximum value detection circuit for detecting the maximum of the absolute value circuit outputs; and a first circuit for delaying the output of the maximum value detection circuit.
a delay element, a first coincidence detection circuit that detects coincidence between the output of the first delay element and the output of the maximum value detection circuit, and a counter that coefficients the output of the first coincidence detection circuit;
a second delay element that delays the counter output;
a second coincidence detection circuit that determines whether the output of the delay element matches the output of the counter; a first comparison circuit that compares the output of the counter with a predetermined first constant; and the minimum value detection circuit. a first-in, first-out circuit that receives the output of the first comparator circuit, stores it in the deepest part of the stack, simultaneously outputs the value of the shallowest part, and rewrites all the contents of the stack in accordance with the output of the first comparison circuit, and the output of the first-in first-out circuit. and the output of the maximum value detection circuit, and determine whether the difference between the output of the first-in first-out circuit and the output of the maximum value detection circuit is less than or equal to a predetermined threshold; a determination circuit that feeds back the output of the first-in, first-out circuit to the first-in, first-out circuit; and a determination circuit that receives the output of the determination circuit and the output of the minimum value detection circuit, sequentially rewrites the memory contents, and outputs the second coincidence detection circuit. a first storage device that rewrites all stored contents using the output of the maximum value detection circuit in accordance with the output of the first comparison circuit; and the output of the third
a third selector that selects and outputs the output of the delay element according to the output of the counter; and a second storage device that stores data for resetting the first storage device;
a shift circuit that receives an output of the second storage device, shifts all 1 bits by the same amount, and supplies the output to the first storage device for rewriting the entire storage content, and at the same time changes the shift amount; a data conversion circuit that receives the output of the circuit, inverts all bits, and supplies a bit number of 1 to the first-in, first-out circuit for rewriting the stack contents, and converts the third selector output to the third delay. An unknown system approximation device using an adaptive filter, characterized in that the first and second selectors are controlled by the control signal, which is supplied to the element at the same time as the control signal. 11. The coefficient generation circuit includes a first multiplier that multiplies the output of each delay element by an error signal supplied from the outside, and a predetermined second constant that multiplies the output of the first multiplier. a second multiplier that multiplies the second multiplier, an adder that adds the output of the second multiplier and the output of a fourth delay element, which will be described later; 11. The unknown system approximation device using an adaptive filter according to claim 10, further comprising a fourth delay element that feeds back to the fourth delay element, and outputs the output of the delay element as a coefficient value. 12. A claim characterized in that the device comprises a fourth selector that switches between a predetermined second constant and a predetermined third constant, and the fourth selector is controlled by a counter output. Adaptive device according to item 10 or 11.
Unknown system approximation device using filters. 13. A second comparator circuit that receives and compares the output of the absolute value circuit and the output of the maximum value detection circuit, and A that receives the output of the second comparator circuit and the output of the counter and calculates a product set.
comprising at least an ND circuit and an OR circuit that receives the output of the first comparator circuit and the output of the AND circuit and takes a union, and controls the first-in first-out circuit and the first storage device with the output of the OR circuit; 13. An unknown system approximation device using an adaptive filter according to claim 10, wherein the contents are completely rewritten by signals respectively supplied from the data conversion circuit and the shift circuit. 14. The unknown system approximation device using an adaptive filter according to claim 10, 11, 12, or 13, wherein the counter is a coefficient for determining the continuity of the coincidence circuit output, and is reset when the output is not continuous. 15. The counter monitors the probability that the matching circuit output is determined to be a match, and is reset when the probability does not exceed a predetermined value.
14. An unknown system approximation device using an adaptive filter according to 11, 12 or 13.
JP2416129A 1990-12-27 1990-12-27 Method and apparatus for unknown system approximation by adaptive filter Expired - Fee Related JP2541378B2 (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2416129A JP2541378B2 (en) 1990-12-27 1990-12-27 Method and apparatus for unknown system approximation by adaptive filter
DE69125806T DE69125806T2 (en) 1990-12-27 1991-12-27 Adaptive filter suitable for quick identification of an unknown system
EP91122289A EP0492647B1 (en) 1990-12-27 1991-12-27 Adaptive filter capable of quickly identifying an unknown system
US07/813,662 US5245561A (en) 1990-12-27 1991-12-27 Adaptive filter capable of quickly identifying an unknown system
CA002058495A CA2058495C (en) 1990-12-27 1991-12-27 Adaptive filter capable of quickly identifying an unknown system
AU90097/91A AU648621B2 (en) 1990-12-27 1991-12-30 Adaptive filter capable of quickly identifying an unknown system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2416129A JP2541378B2 (en) 1990-12-27 1990-12-27 Method and apparatus for unknown system approximation by adaptive filter

Publications (2)

Publication Number Publication Date
JPH04230112A true JPH04230112A (en) 1992-08-19
JP2541378B2 JP2541378B2 (en) 1996-10-09

Family

ID=18524370

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2416129A Expired - Fee Related JP2541378B2 (en) 1990-12-27 1990-12-27 Method and apparatus for unknown system approximation by adaptive filter

Country Status (1)

Country Link
JP (1) JP2541378B2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04245810A (en) * 1991-01-31 1992-09-02 Nec Corp Method and device for estimating system characteristic
JP2006518164A (en) * 2003-02-18 2006-08-03 クゥアルコム・インコーポレイテッド Communication receiver with adaptive equalizer length
US8422544B2 (en) 2003-02-18 2013-04-16 Qualcomm Incorporated Communication receiver with an adaptive equalizer
US8615200B2 (en) 2003-02-18 2013-12-24 Qualcomm Incorporated Systems and methods for improving channel estimation
WO2018003057A1 (en) * 2016-06-30 2018-01-04 株式会社ソシオネクスト Equalizing circuit, reception circuit, and semiconductor integrated circuit

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01258511A (en) * 1988-04-08 1989-10-16 Matsushita Electric Ind Co Ltd Adaptive equalizer
JPH03266516A (en) * 1990-03-15 1991-11-27 Nec Corp Method and apparatus for adaptation of adaptive filter

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4727424A (en) 1986-10-16 1988-02-23 Rca Corporation Sampled data filtering system, including a crossbar switch matrix, as for a ghost cancellation system
US5245561A (en) 1990-12-27 1993-09-14 Nec Corporation Adaptive filter capable of quickly identifying an unknown system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01258511A (en) * 1988-04-08 1989-10-16 Matsushita Electric Ind Co Ltd Adaptive equalizer
JPH03266516A (en) * 1990-03-15 1991-11-27 Nec Corp Method and apparatus for adaptation of adaptive filter

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04245810A (en) * 1991-01-31 1992-09-02 Nec Corp Method and device for estimating system characteristic
JP2006518164A (en) * 2003-02-18 2006-08-03 クゥアルコム・インコーポレイテッド Communication receiver with adaptive equalizer length
JP2011176808A (en) * 2003-02-18 2011-09-08 Qualcomm Inc Communication receiver with adaptive equalizer length
US8422544B2 (en) 2003-02-18 2013-04-16 Qualcomm Incorporated Communication receiver with an adaptive equalizer
US8615200B2 (en) 2003-02-18 2013-12-24 Qualcomm Incorporated Systems and methods for improving channel estimation
WO2018003057A1 (en) * 2016-06-30 2018-01-04 株式会社ソシオネクスト Equalizing circuit, reception circuit, and semiconductor integrated circuit
US10498525B2 (en) 2016-06-30 2019-12-03 Socionext Inc. Equalizer circuit, reception circuit, and semiconductor integrated circuit

Also Published As

Publication number Publication date
JP2541378B2 (en) 1996-10-09

Similar Documents

Publication Publication Date Title
US6151614A (en) Adaptive filter and adapting method thereof
EP0561133B1 (en) Multi-channel echo cancellation with adaptive filters having selectable coefficient vectors
JP3204151B2 (en) Adaptive filter
US5455819A (en) Method and apparatus capable of quickly identifying an unknown system even on occurrence of a plurality of dispersive portions
EP0492647B1 (en) Adaptive filter capable of quickly identifying an unknown system
CA2051147C (en) Echo canceller using impulse response estimating method
JP2778513B2 (en) Echo canceller device
JPH0618331B2 (en) Device for digitally erasing echo generated in wiring having aging characteristics
US5867486A (en) Method and an apparatus for unknown system identification
US6442274B1 (en) Method and apparatus of canceling echoes in multi-channel
US6201866B1 (en) Echo canceler employing segment-based reinitialization
JP2924762B2 (en) Adaptive filter and adaptation method thereof
WO1998038582A1 (en) Adaptive dual filter echo cancellation
JPH088691A (en) Method and device for adapting adaptive filter
WO1999007071A1 (en) Adaptive filter system having mixed fixed point or floating point and block scale floating point operators
JPH04230112A (en) Method and device for approximating unknown system by adaptive filter
JP2540974B2 (en) Adaptive filter adaptation method and apparatus
JP3173017B2 (en) Adaptive filter
JP2569979B2 (en) Method and apparatus for estimating system characteristics
JP2888121B2 (en) Method and apparatus for identifying unknown system using adaptive filter
JP2002009675A (en) Method and device for canceling echo for multiplex channel
JP3180739B2 (en) Method and apparatus for identifying unknown system by adaptive filter
JP2973656B2 (en) Method and apparatus for identifying unknown system using adaptive filter
JP3089794B2 (en) Method and apparatus for identifying unknown system using adaptive filter
JP4310926B2 (en) Echo canceller

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19960604

LAPS Cancellation because of no payment of annual fees