JP4445041B2 - 適応デュアルフィルタによるエコーキャンセレーション - Google Patents
適応デュアルフィルタによるエコーキャンセレーション Download PDFInfo
- Publication number
- JP4445041B2 JP4445041B2 JP53758298A JP53758298A JP4445041B2 JP 4445041 B2 JP4445041 B2 JP 4445041B2 JP 53758298 A JP53758298 A JP 53758298A JP 53758298 A JP53758298 A JP 53758298A JP 4445041 B2 JP4445041 B2 JP 4445041B2
- Authority
- JP
- Japan
- Prior art keywords
- filter
- temporary storage
- storing
- echo canceller
- multipliers
- 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.)
- Expired - Lifetime
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B3/00—Line transmission systems
- H04B3/02—Details
- H04B3/20—Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other
- H04B3/23—Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other using a replica of transmitted signal in the time domain, e.g. echo cancellers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
- G06F15/7817—Specially adapted for signal processing, e.g. Harvard architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/544—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
- G06F7/5443—Sum of products
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Networks & Wireless Communication (AREA)
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
- Filters That Use Time-Delay Elements (AREA)
Description
発明の技術分野
本発明は、一般的には電気通信の分野に関し、特に電話システムにおけるエコーキャンセレーションに関する。
関連技術の説明
「エコー」は、電話システムにおいて、送信された音声信号エネルギーの一部が送信機へ反射される時に生じうる現象である。これらの反射は、電話ネットワークのアナログ部分におけるインピーダンス不整合により生じる。エコー源には、例えば、公衆電話交換網(PSTN)の加入者インタフェースにおいて4線式線路を2線式線路に変換するハイブリッド回路、または移動体電話機における音響漏話、のような多くの異なるものがありうる。実質的遅延(例えば、物理距離遅延または処理遅延)を伴うエコーの存在は、処理されている音声信号の品質を著しく劣化させる。
エコーキャンセラは、長距離トラヒック内のエコーを抑制または除去するために、電話システムにおいて通常用いられる装置である。例えば、セルラ公衆地上移動電話網(PLMN)においては、エコーキャンセラは、音声トラヒック内のエコーを抑制または除去するために、移動交換局(MSC)において用いられる。エコーキャンセラはまた、移動体電話機および「ハンドフリー」電話装置においても、音響エコーを補償するために用いられる。現存のエコーキャンセレーション技術の一般的説明は、スウェーデン、ルンド(Lund)大学、電気工学およびコンピュータ科学科、信号処理グループ、ゲンスラ
外著の「コヒーレンスに基づくダブルトーク検出器(A Double Talk Detector Based on Coherence)」と題する論文に見出されうる。
図1は、従来のエコーキャンセラ10の、簡単化された概略ブロック図である。そのようなエコーキャンセラの主要部品は、適応有限インパルス応答(FIR)フィルタ12である。(例えば、ソフトウェアにより実行される)適応アルゴリズムの制御を受けて、フィルタ12は、エコー経路のインパルス応答をモデル化する。一般に、フィルタ12は、最小2乗平均(LMS)アルゴリズムを用いて適応せしめられる。非線形プロセッサ(NLP)14は、入力信号の線形処理の後に残りうる残留エコーを除去するために用いられる。
電話コールに含まれる信号の性質は、非定常的である。従って、エコーキャンセラ10は、一般にダブルトーク検出器(DTD)16を含み、これは、エコー信号対「近端」信号の比が、フィルタ12をさらに適応させてもエコー経路推定がさらに改善されえない値を有する時、適応プロセスを制御し禁止するために用いられる。しかし、エコー経路の変化を追跡しうるためには、あまりに頻繁に適応を禁止することは不可能であり、そのような条件下では、もしエコー信号対雑音の比が悪化すればエコー経路推定のある劣化が起こる。18により示されているブロックは、「遠端」信号x(t)および「近端」信号v(t)の関数としての「所望」信号y(t)を発生する電話システムのエコー源を表す。
この劣化問題に対処するために提案されたデュアルフィルタ構造は、1977年6月の、通信に関するIEEE会報(IEEE Transactions on Communications)、第COM−25巻、第6号に所載の、カズオ・オチアイ(Kazuo Ochiai)外著の「2つのエコー経路モデルを有するエコーキャンセラ(Echo Canceller with Two Echo Path Models)」と題する文献に説明されている。図2に一般的に示されているように、この文献に説明されている技術は、エコーキャンセレーションのために固定フィルタ20を、またエコー経路推定のために適応フィルタ22を用いる。もし適応フィルタ22により、十分によいエコー経路推定を得ることができれば、適応フィルタの係数は固定フィルタ20へコピーされる。従って、もしエコー経路推定が悪化すれば、これらのもっと良い経路がキャンセレーションのために用いられうる。
上述したデュアルフィルタ構造のための制御戦略の改善は、ジョニー・カールセン(Johnny Karlsen)外に対する「適応デュアルフィルタによるエコーキャンセレーションの方法(An Adaptive Dual Filter Echo Cancellation Method)」と題する、権利者を共通とするスウェーデン特許第9503640−6号に開示されている。そこに説明されている方法によれば、両フィルタがエコーキャンセレーションのために用いられ、フィルタの係数は両方向へ転送されうる。この特許は、2つのフィルタ出力eaまたはefのいずれがエコーキャンセラのための出力として用いられるべきであるか、またいつ係数が1つのフィルタから他のフィルタへ転送されるべきであるか、を決定するために用いられる、ある条件を説明している。これらの決定は、関係する信号における電力および相関推定の比較に基づくので、用いられるアルゴリズムは高度にデータに依存するものとなる。
たいていの現存のエコーキャンセラは、中央計算素子として、汎用ディジタル信号プロセッサ(DSP)を用いている。図3には、エコーキャンセレーションのための用いられている一般的な汎用DSPアーキテクチャが示されている。例えば、図3を参照すると、エコーキャンセレーションのために用いられているDSP30は、2つのデータメモリセクション32および34および対応するデータバス32aおよび34aと、アドレスアーキテクチャユニット(AAU)36と、乗算器セクション38と、論理演算装置(ALU)40と、シフタ42と、を含む。
また、オチアイ外の文献においては、エコーキャンセラを、上述の適応アルゴリズムの機能ブロックに対応する計算ブロックから組立てることができた(図2)。しかし、そこに説明されているフィルタ適応技術は、最初はフィルタリングプロセスが行われた後にのみ得られうる現在のエラー信号e(t)の使用に基づいているので、オチアイのアルゴリズムにおける機能ブロックに対応する動作は、とにかく直列に実行されなければならず、顕著な効率は得られない。さらに、そのような機能を実現するために必要なハードウェアの実質的な量も、エコーキャンセラの全体的パフォーマンスを顕著には改善しない。
もし適応エコーキャンセレーションのために「長い」フィルタ(例えば、N=512またはそれ以上)が用いられるならば、比較的多数の計算が行われなければならないので、問題が起こる。その場合には、プロセッサのアーキテクチャを、使用されているアルゴリズムの機能に整合するように最適化することが極めて重要である。同時に、使用されているハードウェアリソースの量を、適度な限度内に保つこともまた重要である。
エコーキャンセレーションのために用いられる汎用DSP(例えば、図3のDSP30)は、2つのデータバス(例えば、32a、34a)のみを有する。従って、そのようなDSPは、クロックサイクル毎に最大2回のメモリアクセス(例えば、メモリセクション32および34のそれぞれに対する1回のアクセス)を行いうるのみである。従って、DSPの計算効率を顕著に低下させる、データ転送のボルトネックが存在した。
例えば、そのようなDSPにより実行されるアルゴリズムにおけるLMS更新方程式は、次のように表される。
hn(t+1)=hn(t)+α(t)xn(t) (1)
ただし、もし基本LMS値が用いられればα(t)=μe(t)であり、もし正規化LMS値が用いられれば、
である。いずれにせよ、α(t)は、それぞれのサンプル間隔における定数乗数である。上記方程式1において、xn(t)は時刻tにおけるn番目の信号サンプルであり、hn(t)は時刻tにおけるn番目の適応フィルタ係数であり、e(t)はエラー信号であり、μはサンプルのステップサイズを表す小さい定数である。
たいていの信号プロセッサにおいては、乗数α(t)は乗数レジスタ内に記憶され、全てのフィルタ係数が更新され終わるまでそこに保持されうる。その後、LMS更新方程式(方程式1)は、メモリセクションからの2回の読取り動作と、係数メモリセクションへの1回の書込み動作と、を必要とする。これらの動作は、単一クロックサイクル中に2つのデータバスによっては行われえず、従って、Nのそれぞれの値における更新を行うために2つのクロックサイクルが必要となる。一般にNは、関係するエコー経路のインパルス応答の長さにより決定される。Nの値としては512が、典型的なエコーキャンセレーションアプリケーションのために極めて一般的に用いられる。しかし、音響エコーキャンセレーションアプリケーションのためには、数千という高い値になりうる。
FIRフィルタによる入力信号のフィルタリングのプロセスは、
のように表され、これは明らかに、出力サンプルy(t)を計算するために、Nの値毎に1つのクロックサイクルを必要とする。前述のデュアルフィルタ技術は、2つのFIRフィルタを用いるので、対応する2つの出力サンプルを計算するためには、Nの値毎に2つのクロックサイクルを必要とすることになる。
2つのFIRフィルタの係数は、信号に依存する制御アルゴリズムにより行われる決定により、一方から他方へコピーされる。上で仮定されたように、もしNの値毎に単一クロックサイクルにより、FIRフィルタリングを行うことが所望されるならば、両フィルタの係数は、一方のメモリセクション内に置かれるべきであり、信号サンプルx(t)は、他方のメモリセクション内に置かれるべきである。この構成は、1つのフィルタ係数のコピー動作が同じメモリセクションへの2回のアクセスを必要とするために、係数のコピー動作がNの値毎に2つのサイクルを要することを意味する。
従って、上述のデュアルフィルタアプローチの完全なフィルタリング部分の最高の複雑性は、汎用DSPにおいては6*Nとして測定される。換言すれば、汎用DSPは、フィルタ計算を完成するために6*Nサイクルを要する。しかし、この複雑性のレベルは、エコーキャンセラアプリケーションにおいて必要とされる大きいNの値に対しては比較的高く、アルゴリズムの制御部分と、他の必要なエコーキャンセラ機能と、のためには、(たとえあるとしても)比較的小さい処理能力が残されるのみである。
発明の要約
従って、本発明は、エコーキャンセレーションのために用いられるディジタル信号プロセッサの計算時間を最小化することを目的とする。
本発明のもう1つの目的は、エコーキャンセレーションのために用いられるディジタル信号プロセッサにおけるデータ転送のボルトネックを最小化することである。
本発明のさらにもう1つの目的は、エコーキャンセレーションのために用いられるディジタル信号プロセッサの最小2乗平均の更新、フィルタリング、および係数をコピーする計算、の速度を最大化することである。
本発明のさらにもう1つの目的は、効率的な適応デュアルフィルタエコーキャンセラを実現することである。
本発明によれば、以上の目的およびその他の目的は、エコーキャンセレーションの計算のために用いられるディジタル信号プロセッサにより達成され、そのディジタル信号プロセッサは、並列乗算器/加算器と、入力信号サンプルメモリと、行われた計算の結果を一時的に記憶するための複数のアキュムレータと、を含む。従って、計算結果の全てが外部データメモリ内へセーブされなければならないわけではなく、このことが、データ転送のボルトネックを最小化し、ディジタル信号プロセッサの計算効率を顕著に増大させる。それにより、適応フィルタ係数の更新は遥かに高速で計算可能となり、その適応フィルタ係数は、一方のフィルタから他方のフィルタへ遥かに高速でコピーされうる。ディジタル信号プロセッサの計算の複雑度は、従来のディジタル信号プロセッサのそれよりも著しく低い。
【図面の簡単な説明】
本発明の方法および装置の、より完全な理解は、添付図面と共に以下の詳細な説明を参照することにより得られうる。添付図面において、
図1は、従来のエコーキャンセラの簡単化された概略ブロック図であり、
図2は、現存のデュアルフィルタエコーキャンセラの簡単化された概略ブロック図であり、
図3は、エコーキャンセレーションのために用いられてきた一般的な汎用ディジタル信号プロセッサのブロック図であり、
図4は、本発明の実施例により機能するように構成された、エコーキャンセレーションに用いるデュアルフィルタディジタル信号プロセッサのブロック図である。
図面の詳細な説明
本発明の実施例およびその利点は、添付図面の図1から図4までを参照することにより最もよく理解され、諸図の同じ部品および対応する部品に対しては同じ番号が用いられている。
図4は、本発明の実施例により機能するように構成された、エコーキャンセレーションに用いるデュアルフィルタDSPのブロック図である。例えば、専用集積回路(ASIC)により実現されうるこの実施例においては、デュアルフィルタDSP100は、3つの基本計算ユニットと、1対の乗算器/加算器ユニット102/104および106/108と、BビットALU/バレルシフタ110と、を含む。好ましくは、1対の乗算器/加算器ユニットのそれぞれの物理的および電気的特性は、(予期される公差内で)同じとする。これらの計算ユニットの全ては、4つのBビットアキュムレータ112、114、116、および118のセットにより、計算結果の処理および一時記憶のために互いに結合せしめられる。好ましくは、この実施例においては4つのアキュムレータが用いられるが、2つより多くの任意の適切な数のアキュムレータが用いられうる。また、入力信号サンプルを記憶するためのN個のワードメモリ位置を有するサンプルメモリ120も含まれている。入力サンプルは、上述のLMS更新方程式(方程式3)内に示されている式x(t)により表される。注意すべきことは、図4に示されている処理アーキテクチャは好ましくはDSPにより実現されるが、本発明はそのように制限されないように意図されていることである。例えば、図4に示されているアーキテクチャは、図4に関連して前述した機能を十分に行いうる任意の適切な処理装置により実現されうる。
サンプルメモリ120は、レジスタ122を経て乗算器102および106の入力に接続されている。1対のアラインメントユニット124および126は、乗算器102および106のそれぞれの出力に接続され、もし所望ならば、それぞれの乗算結果のいずれもが、アラインメントの目的のために左へ1ビットだけシフトされうる。メモリレジスタのそれぞれの対128、130および132、134は、入力/出力レジスタのそれぞれの対129、131および133、135を経てそれぞれの乗算器102および106に接続されている。メモリレジスタ128、130、132、および134は、データバスによりデータメモリ136および138に接続され、該データバスはそれらの間でデータを転送する。2つのデータメモリ136および138は、図4に示されている実施例においてはDSPコアの外部に配置されているが、データメモリをDSPコアの内部に配置することは本発明の範囲内にある。レジスタ(msr0)140は、BビットALU110に接続され、それは、もし指定されたならば、該ALUがシフトすべきビット位置の数を示すために用いられる。
動作に際しては、処理されるべき入力信号サンプル(例えば、N個のワード)がサンプルメモリ120内に記憶される。全ての他のデータ変数は、データメモリ136および138内に記憶される。それぞれのサンプル間隔中において、サンプルメモリ120内の最も古い入力信号サンプルは、得られた最も新しいサンプルにより置換される。好ましくは、サンプルメモリのアクセスには、循環形増加後アドレス指定(circular post−increment addressing)モードを用いる。
メモリレジスタ128、130、132、134内の全てのビットは、データメモリ136および138の双方からロードすることができ、あるいはデータメモリ136および138の双方へ記憶させうる。メモリレジスタとデータメモリとを接続するデータバスは、bビットの幅を有し、このbは、信号サンプルおよびフィルタ係数を適切に表すために必要な数である。この実施例においては、アキュムレータ112、114、116、118およびALU110は、含まれる変数のB≧2b+log2Nビット表示を可能にするように設計されている。このBビットの選択は、使用されているプロセッサが固定小数点演算で動作していることを仮定している。もし浮動小数点計算ユニットが用いられるべきであれば、b=Bを用いることが自然な選択となる。しかし、好ましくは固定小数点装置であるこの実施例(図4)においては、値b=16およびB=40を用いうる。
この実施例においては、基本的に、図4に示されているデュアルフィルタエコーキャンセラDSPにより行われる3つの動作が存在する。すなわち、(1)係数の更新、(2)フィルタリング、および(3)係数のコピーイングである。好ましくは、両フィルタの係数は、2つのデータメモリ136および138へ平等に分割される。例えば、適応フィルタの奇数インデックスを有する係数は、第1のデータメモリ136内へ記憶され、適応フィルタの偶数インデックスを有する係数は、第2のデータメモリ138内へ記憶されることができ、あるいはこの逆に記憶されることができる。この例においては、固定フィルタの偶数インデックスを有する係数は第1のデータメモリ136内へ記憶され、固定フィルタの奇数インデックスを有する係数は第2のデータメモリ138内へ記憶される。入力信号サンプルxnは、サンプルメモリ120内へ記憶される。
DSPが、更新ループを開始する前に係数更新動作を行うためには、定数乗数α(t)を一方のデータメモリ(例えば、136)から検索し、例えば、mx0レジスタ128内に記憶することができる。また、第1係数h0(t)は、そのデータメモリから検索し、アキュムレータの1つ(例えば、ma0すなわち112)に記憶することができる。次に、係数更新ループの第1サイクル中に、第2係数を第2データメモリ(例えば、138)から検索し、もう1つのアキュムレータ(例えば、ma1すなわち114)に記憶することができる。同じサイクル中に、乗算器102は、サンプルメモリ120からの第1データサンプルに、mx0レジスタ128からの定数α(t)を乗算する。Bビット加算器104は、この乗算の積を、アキュムレータ(ma0)112からの第1係数に加算し、結果をその同じアキュムレータに記憶させる。
係数更新ループの第2サイクル中には、第3係数が第1データメモリ136から読取られて、アキュムレータ(例えば、ma2すなわち116)に記憶される。また、同じサイクル中に、乗算器102は、サンプルメモリ120からの第2データサンプルに、レジスタmx0からの定数α(t)を乗算する。Bビット加算器104は、この乗算の積を、アキュムレータ(ma1)114からの第2係数に加算し、結果をその同じアキュムレータに記憶させる。
係数更新ループの第3サイクル中には、第4係数が第2データメモリ138から読取られて、アキュムレータ(例えば、ma3すなわち118)に記憶される。また、同じサイクル中に、乗算器102は、サンプルメモリ120からの第3データサンプルに、レジスタmx0からの定数α(t)を乗算する。Bビット加算器104は、この乗算の積を、アキュムレータ(ma2)116からの第3係数に加算し、結果をその同じアキュムレータに記憶させる。さらに、このサイクル中に、アキュムレータ(ma0)112から第1の更新された係数が、第1のデータメモリ136内の、第1係数の原位置に記憶される。次に、上述の動作が、データメモリ内の全てのフィルタ係数が更新され終わるまで繰返される。
DSPがそれぞれのクロックサイクル中にフィルタリング動作を行うために、1つの固定フィルタ係数および対応する適応フィルタ係数が、それぞれのデータメモリ位置から読取られ、例えば、mx0およびmx1レジスタ内に記憶される。同時に、前に記憶された固定フィルタ係数および適応フィルタ係数が、mx0およびmx1レジスタから読取られ、それぞれの乗算器102および106により、サンプルメモリ120からの対応する信号サンプルと乗算される。それぞれの結果は、2つのアキュムレータ(例えば、ma0およびma1)に格納され、累算される。
従って、本発明によれば、固定フィルタおよび適応フィルタの対応する係数は異なるデータメモリ内に記憶されうるので、これらの係数は、追加の遅延を生じることなく一時に1つコピーされうる。さらに、適応デュアルフィルタによるエコーキャンセレーションアルゴリズムにおける全ての基本動作(すなわち、LMS係数更新、2つのフィルタからの出力信号の計算、および係数のコピーイング)は、図4に示されているDSPアーキテクチャを用い、サンプル毎に1クロックサイクル以内に行われうる。そのようなわけで、図4に示されているDSPアーキテクチャの計算上の複雑性は、現存の汎用エコーキャンセレーションDSPにおける計算上の複雑性が6*Nであるのに反し、3*Nにすぎない。
注目すべきこととして、図4に示されているような1対の乗算器/加算器の組合せの使用はまた、デュアルフィルタの動作を制御し且つ必要な比較を行うために用いられる、電力および相関の推定を効率的に計算するためのプラットホームをも与える。また、効率の観点から、BビットALU110は、例えば、図1に示されているNLPおよびDTD機能のような、他のエコーキャンセラ機能を処理するために用いられうる。さらに、複数(例えば、4つ)のアキュムレータの使用は、計算動作の中間結果の記憶において、実質的な計算上の柔軟性を与え、これはデータメモリに対して行われるアクセスの数を顕著に減少させる。
本発明の方法および装置の実施例を、添付図面に示し、また以上の詳細な説明において説明したが、本発明は、開示した実施例へ制限されるものではなく、以下の請求の範囲により提示され且つ定められる本発明の精神から逸脱することなく、多くの再構成、改変、および置換が可能であることを理解すべきである。
Claims (17)
- 適応フィルタと固定フィルタとを含むデュアルフィルタを用いてエコーキャンセルを行うデュアルフィルタ・エコーキャンセラであって、
前記適応フィルタ及び前記固定フィルタの係数をそれぞれ分割して記憶する複数のデータメモリと、
前記適応フィルタと前記固定フィルタとを実現するディジタル信号プロセッサであって、係数の更新、フィルタリング、前記適応フィルタ-前記固定フィルタ間での係数コピーを含む適応デュアルフィルタ・エコーキャンセル・アルゴリズムにより、1入力信号サンプルを1クロックサイクルで処理するように構成されたディジタル信号プロセッサとを備え、
前記ディジタル信号プロセッサは、
前記入力信号サンプルを記憶するためのサンプルメモリと、
複数の乗算器であって、該複数の乗算器のそれぞれの乗算器の第1入力が前記サンプルメモリの出力に結合し、第2入力が前記複数のデータメモリと結合している、複数の乗算器と、
複数の加算器であって、前記複数の乗算器のそれぞれの出力が前記複数の加算器の少なくとも1つに結合している、複数の加算器と、
複数の一時記憶装置であって、該複数の一時記憶装置のそれぞれの入力および出力が、前記複数の乗算器および前記複数の加算器の少なくとも1つに選択的に結合される、複数の一時記憶装置と、
を含み、
前記ディジタル信号プロセッサは、
前記フィルタリング処理の各クロックサイクル中に、前記固定フィルタ及び前記適応フィルタの係数をそれぞれ前記複数のデータメモリから取り出して、前記複数の乗算器で、前記サンプルメモリからの対応する信号サンプルと乗算し、当該乗算結果をそれぞれ前記複数の一時記憶装置に累積格納する
ことを特徴とするデュアルフィルタ・エコーキャンセラ。 - 前記複数のデータメモリは、前記ディジタル信号プロセッサのコアの内部に設けられることを特徴とする請求項1に記載のデュアルフィルタ・エコーキャンセラ。
- 前記複数のデータメモリは、前記ディジタル信号プロセッサのコアの外部に設けられることを特徴とする請求項1に記載のデュアルフィルタ・エコーキャンセラ。
- 前記複数のデータメモリ装置のそれぞれが、前記複数の一時記憶装置の少なくとも1つに結合していることを特徴とする請求項1に記載のデュアルフィルタ・エコーキャンセラ。
- 前記ディジタル信号プロセッサは、論理演算装置をさらに含み、該論理演算装置の入力および出力が、前記複数の一時記憶装置と、前記複数の乗算器と、前記複数の加算器とのうちの少なくとも1つに選択的に結合されることを特徴とする請求項1に記載のデュアルフィルタ・エコーキャンセラ。
- 前記ディジタル信号プロセッサは、前記適応デュアルフィルタ・エコーキャンセル・アルゴリズムの制御部により要求される演算を実行するためのバレルシフタ及び論理演算装置を更に含み、前記バレルシフタ及び論理演算装置はそれぞれ、前記複数の一時記憶装置のうちの少なくとも1つに結合されることを特徴とする請求項1に記載のデュアルフィルタ・エコーキャンセラ。
- 前記複数の一時記憶装置のそれぞれはアキュムレータを含むことを特徴とする請求項1に記載のデュアルフィルタ・エコーキャンセラ。
- 前記複数の乗算器は2つの乗算器で構成されることを特徴とする請求項1に記載のデュアルフィルタ・エコーキャンセラ。
- 前記複数の加算器は2つの加算器で構成されることを特徴とする請求項1に記載のデュアルフィルタ・エコーキャンセラ。
- 前記複数の一時記憶装置は4つのアキュムレータで構成されることを特徴とする請求項1に記載のデュアルフィルタ・エコーキャンセラ。
- 前記入力信号サンプルは遠端話者の音声信号を含むことを特徴とする請求項1に記載のデュアルフィルタ・エコーキャンセラ。
- 前記電話システムは、移動通信交換局又は移動電話を含むことを特徴とする請求項1に記載のデュアルフィルタ・エコーキャンセラ。
- 適応フィルタ及び固定フィルタの係数をそれぞれ分割して記憶する複数のデータメモリと、
ディジタル信号プロセッサであって、
入力信号サンプルを記憶するためのサンプルメモリと、
複数の乗算器であって、該複数の乗算器のそれぞれの乗算器の第1入力が前記サンプルメモリの出力に結合し、第2入力が前記複数のデータメモリと結合している、複数の乗算器と、
複数の加算器であって、前記複数の乗算器のそれぞれの出力が前記複数の加算器の少なくとも1つに結合している、複数の加算器と、
複数の一時記憶装置であって、該複数の一時記憶装置のそれぞれの入力および出力が、前記複数の乗算器および前記複数の加算器の少なくとも1つに選択的に結合される、複数の一時記憶装置と、
を含み、適応フィルタ及び固定フィルタをそれぞれ実現し、適応デュアルフィルタ・エコーキャンセル・アルゴリズムによって、1入力信号サンプルを1クロックサイクルで処理するように構成されたディジタル信号プロセッサとを含むエコーキャンセラを用いて、エコーをキャンセルする方法であって、
前記適応フィルタの第1の出力信号を計算する計算ステップと、
前記第1の出力信号の出力に応答して、前記適応フィルタの係数を更新する更新ステップと、
前記適応フィルタの前記更新された係数を前記固定フィルタにコピーする、又は、前記固定フィルタの固定の係数を前記適応フィルタにコピーするコピーステップと、
を有し、
前記計算ステップは、各クロックサイクル中に、前記固定フィルタ及び前記適応フィルタの係数をそれぞれ前記第1及び第2データメモリから取り出して、前記第1及び第2乗算器で、前記サンプルメモリからの対応する信号サンプルと乗算し、当該乗算結果をそれぞれ前記複数の一時記憶装置に累積格納するステップを含む
ことを特徴とする方法。 - 前記更新ステップは、
複数の入力信号サンプルを前記サンプルメモリに格納するステップと、
第1記憶位置に定数乗数値を格納するステップと、
第1データメモリ位置から第1フィルタ係数値を検索するステップと、
前記第1フィルタ係数値を前記複数の一時記憶装置の第1一時記憶位置に格納するステップと、
第2データメモリ位置から第2フィルタ係数値を検索するステップと、
前記第2フィルタ係数値を前記複数の一時記憶装置の第2一時記憶位置に格納するステップと、
前記複数の入力信号サンプルの第1入力信号サンプル値に前記定数乗数値を乗算するステップと、
該乗算の結果を前記第1フィルタ係数値に加算し、該加算の結果を前記第1一時記憶位置に格納するステップと、
を含むことを特徴とする請求項13に記載の方法。 - 前記更新ステップは、
第3フィルタ係数値を第3データメモリ位置から検索するステップと、
前記第3フィルタ係数値を前記複数の一時記憶装置の第3一時記憶位置に格納し、前記複数の入力信号サンプルの第2入力信号サンプルに前記定数乗数値を乗算するステップと、
該乗算の結果を前記第2フィルタ係数値に加算し、該加算の結果を前記第2一時記憶位置に格納するステップと、
をさらに含むことを特徴とする請求項14に記載の方法。 - 前記更新ステップは、
第4フィルタ係数値を第4データメモリ位置から検索するステップと、
前記第4フィルタ係数値を前記複数の一時記憶装置の第4一時記憶位置に格納し、前記複数の入力信号サンプルの第3入力信号サンプルに前記定数乗数値を乗算するステップと、
該乗算の結果を前記第3フィルタ係数値に加算し、該加算の結果を前記第3一時記憶位置に格納するステップと、
前記第1一時記憶位置に格納されているデータを前記第1データメモリ位置に格納するステップと、
をさらに含むことを特徴とする請求項15に記載の方法。 - 前記第1一時記憶位置、第2一時記憶位置、第3一時記憶位置、および第4一時記憶位置はそれぞれアキュムレータで構成されることを特徴とする請求項16に記載の方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/810,601 US5933797A (en) | 1997-02-28 | 1997-02-28 | Adaptive dual filter echo cancellation |
US08/810,601 | 1997-02-28 | ||
PCT/SE1998/000349 WO1998038582A1 (en) | 1997-02-28 | 1998-02-26 | Adaptive dual filter echo cancellation |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001513293A JP2001513293A (ja) | 2001-08-28 |
JP4445041B2 true JP4445041B2 (ja) | 2010-04-07 |
Family
ID=25204205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP53758298A Expired - Lifetime JP4445041B2 (ja) | 1997-02-28 | 1998-02-26 | 適応デュアルフィルタによるエコーキャンセレーション |
Country Status (8)
Country | Link |
---|---|
US (1) | US5933797A (ja) |
JP (1) | JP4445041B2 (ja) |
CN (1) | CN1126049C (ja) |
AU (1) | AU6642498A (ja) |
DE (1) | DE19882141B4 (ja) |
GB (1) | GB2341067B (ja) |
MY (1) | MY122103A (ja) |
WO (1) | WO1998038582A1 (ja) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2758677B1 (fr) * | 1997-01-21 | 1999-04-02 | Matra Communication | Procede d'annulation d'echo et annuleur d'echo mettant en oeuvre un tel procede |
US6279020B1 (en) * | 1997-12-23 | 2001-08-21 | U.S. Philips Corporation | Programmable circuit for realizing a digital filter |
EP0992885B1 (en) * | 1998-10-06 | 2005-12-28 | Texas Instruments Incorporated | Multiplier accumulator circuits |
US6571268B1 (en) | 1998-10-06 | 2003-05-27 | Texas Instruments Incorporated | Multiplier accumulator circuits |
US6687373B1 (en) | 1999-08-24 | 2004-02-03 | Nortel Networks Limited | Heusristics for optimum beta factor and filter order determination in echo canceler systems |
US6557022B1 (en) * | 2000-02-26 | 2003-04-29 | Qualcomm, Incorporated | Digital signal processor with coupled multiply-accumulate units |
US6725360B1 (en) * | 2000-03-31 | 2004-04-20 | Intel Corporation | Selectively processing different size data in multiplier and ALU paths in parallel |
US6714956B1 (en) * | 2000-07-24 | 2004-03-30 | Via Technologies, Inc. | Hardware accelerator for normal least-mean-square algorithm-based coefficient adaptation |
US7068780B1 (en) * | 2000-08-30 | 2006-06-27 | Conexant, Inc. | Hybrid echo canceller |
US7346012B2 (en) * | 2002-12-13 | 2008-03-18 | Tioga Technologies Ltd. | Transceiver with accelerated echo canceller convergence |
US20040193668A1 (en) * | 2003-03-31 | 2004-09-30 | Patrick Devaney | Virtual double width accumulators for vector processing |
US7716712B2 (en) * | 2003-06-18 | 2010-05-11 | General Instrument Corporation | Narrowband interference and identification and digital processing for cable television return path performance enhancement |
US20060224652A1 (en) * | 2005-04-05 | 2006-10-05 | Nokia Corporation | Instruction set processor enhancement for computing a fast fourier transform |
GB2439988A (en) * | 2005-06-01 | 2008-01-16 | Tecteon Plc | Subband coefficient adaptor for adaptive filter |
EP1943730A4 (en) * | 2005-10-31 | 2017-07-26 | Telefonaktiebolaget LM Ericsson (publ) | Reduction of digital filter delay |
US9185233B2 (en) * | 2010-05-25 | 2015-11-10 | Intel Deutschland Gmbh | Audio communication device and method using fixed echo cancellation filter coefficients |
DE102012220488A1 (de) * | 2012-11-09 | 2014-05-15 | Robert Bosch Gmbh | Teilnehmerstation für ein Bussystem und Verfahren zur Verbesserung der Empfangsqualität von Nachrichten bei einer Teilnehmerstation eines Bussystems |
CN113194378B (zh) * | 2021-06-30 | 2021-11-26 | 深圳市汇顶科技股份有限公司 | 音频信号的降噪方法、音频信号处理装置及电子设备 |
EP4138406B1 (en) | 2021-06-30 | 2023-12-27 | Shenzhen Goodix Technology Co., Ltd. | Noise cancellation method for audio signal, audio signal processing apparatus, and electronic device |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0197945A1 (en) * | 1984-09-28 | 1986-10-22 | Motorola, Inc. | A digital signal processor for single cycle multiply/accumulation |
NL8901247A (nl) * | 1989-05-19 | 1990-12-17 | Philips Nv | Adaptief tijddiscreet transversaal filter. |
US5388092A (en) * | 1989-06-27 | 1995-02-07 | Nec Corporation | Echo canceller for two-wire full duplex digital data transmission |
JPH0344218A (ja) * | 1989-07-12 | 1991-02-26 | Fujitsu Ltd | 適応形エコーキャンセラ |
JPH03159423A (ja) * | 1989-11-17 | 1991-07-09 | Fujitsu Ltd | エコーキャンセラにおけるダブルトーク検出方式 |
US5001661A (en) * | 1990-01-23 | 1991-03-19 | Motorola, Inc. | Data processor with combined adaptive LMS and general multiplication functions |
JP2518433B2 (ja) * | 1990-01-24 | 1996-07-24 | 日本電気株式会社 | ダブルト―ク検出回路 |
JP3135902B2 (ja) * | 1990-05-11 | 2001-02-19 | 株式会社日立製作所 | 自動等化器及び半導体集積回路 |
EP0466997A1 (en) * | 1990-07-18 | 1992-01-22 | International Business Machines Corporation | Improved digital signal processor architecture |
JPH04302522A (ja) * | 1991-03-29 | 1992-10-26 | Hitachi Ltd | 演算回路及びこれを用いた適応フィルタ並びにエコーキャンセラ |
US5278872A (en) * | 1991-05-28 | 1994-01-11 | North American Philips Corporation | System and circuit architecture for echo cancellation and a television receiver comprising same |
JP2792311B2 (ja) * | 1992-01-31 | 1998-09-03 | 日本電気株式会社 | 多チャンネルエコー除去方法および装置 |
US5396517A (en) * | 1993-03-04 | 1995-03-07 | Adtran | Transversal filter useable in echo canceler, decision feedback equalizer applications for minimizing non-linear distortion in signals conveyed over full duplex two-wire communication link |
US5381357A (en) * | 1993-05-28 | 1995-01-10 | Grumman Corporation | Complex adaptive fir filter |
JPH07288493A (ja) * | 1994-04-18 | 1995-10-31 | Fujitsu Ltd | ダブルトーク検出装置 |
US5652903A (en) * | 1994-11-01 | 1997-07-29 | Motorola, Inc. | DSP co-processor for use on an integrated circuit that performs multiple communication tasks |
US5631957A (en) * | 1995-03-09 | 1997-05-20 | National Semiconductor Corporation | Band-energy near-end echo reducer for tonal signalling detectors |
US5745396A (en) * | 1995-04-28 | 1998-04-28 | Lucent Technologies Inc. | Pipelined adaptive IIR filter |
US5721782A (en) * | 1996-03-25 | 1998-02-24 | Motorola, Inc. | Partitioned echo canceler utilizing decimation echo location |
-
1997
- 1997-02-28 US US08/810,601 patent/US5933797A/en not_active Expired - Lifetime
-
1998
- 1998-02-19 MY MYPI98000717A patent/MY122103A/en unknown
- 1998-02-26 GB GB9920266A patent/GB2341067B/en not_active Expired - Fee Related
- 1998-02-26 CN CN98802943A patent/CN1126049C/zh not_active Expired - Lifetime
- 1998-02-26 JP JP53758298A patent/JP4445041B2/ja not_active Expired - Lifetime
- 1998-02-26 DE DE19882141T patent/DE19882141B4/de not_active Expired - Fee Related
- 1998-02-26 WO PCT/SE1998/000349 patent/WO1998038582A1/en active Application Filing
- 1998-02-26 AU AU66424/98A patent/AU6642498A/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
MY122103A (en) | 2006-03-31 |
DE19882141T1 (de) | 2000-01-13 |
DE19882141B4 (de) | 2009-01-02 |
CN1249829A (zh) | 2000-04-05 |
AU6642498A (en) | 1998-09-18 |
JP2001513293A (ja) | 2001-08-28 |
CN1126049C (zh) | 2003-10-29 |
US5933797A (en) | 1999-08-03 |
GB9920266D0 (en) | 1999-10-27 |
WO1998038582A1 (en) | 1998-09-03 |
GB2341067B (en) | 2001-11-07 |
GB2341067A (en) | 2000-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4445041B2 (ja) | 適応デュアルフィルタによるエコーキャンセレーション | |
CA1221180A (en) | Method of and device for the digital cancellation of the echo generated in connections with time-varying characteristics | |
JP3204151B2 (ja) | 適応フィルタ | |
JP2778513B2 (ja) | エコーキャンセラ装置 | |
JPH08288890A (ja) | 適応型フィルタリングのための方法および装置 | |
JP2004507922A (ja) | 区分ブロック周波数領域適応フィルタ | |
CA2020804C (en) | Adaptive echo canceller | |
JP2000196507A (ja) | 多重化回線用エコ―除去の方法及び装置 | |
US6088445A (en) | Adaptive filter system having mixed fixed point or floating point and block scale floating point operators | |
US6625279B1 (en) | Apparatus and method of estimating echo path delay | |
US7016487B1 (en) | Digital echo cancellation device | |
CA2282567C (en) | Adaptive dual filter echo cancellation | |
JP2888121B2 (ja) | 適応フィルタによる未知システム同定の方法及び装置 | |
Hillman | DSP56200: An algorithm-specific digital signal processor peripheral | |
JPH09261135A (ja) | 音響エコー消去装置 | |
US7386120B2 (en) | Echo canceller having a frequency domain active region location estimator | |
US8499020B2 (en) | Method and system for estimating and applying a step size value for LMS echo cancellers | |
JP4310926B2 (ja) | エコーキャンセラ装置 | |
JPS6113416B2 (ja) | ||
Baghious et al. | Realization of block adaptive filters using Fermat number transforms | |
Chen et al. | A zero-delay FFT-based subband acoustic echo canceller for teleconferencing and hands-free telephone systems | |
US20060210056A1 (en) | Estimation method and apparatus | |
Vardhan et al. | Implementation of AEC (Acoustic Echo Cancellation) on Cortex-M4 | |
Park et al. | A Nsvel Implementation of Acoustic and Electrical Echo Cancellers for a Full-Duplex Teleconference P | |
JPH04245810A (ja) | システム特性推定方法及び装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050222 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20061128 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080311 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080303 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080610 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090623 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090918 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20091102 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091109 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20091222 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100115 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130122 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |