DE69310240T2 - Verfahren und Anordnung zur adaptiven digitalen Löschung des in Fernsprechverbindungen mit zeitvarianten Eigenschaften erzeugten Echos - Google Patents
Verfahren und Anordnung zur adaptiven digitalen Löschung des in Fernsprechverbindungen mit zeitvarianten Eigenschaften erzeugten EchosInfo
- Publication number
- DE69310240T2 DE69310240T2 DE69310240T DE69310240T DE69310240T2 DE 69310240 T2 DE69310240 T2 DE 69310240T2 DE 69310240 T DE69310240 T DE 69310240T DE 69310240 T DE69310240 T DE 69310240T DE 69310240 T2 DE69310240 T2 DE 69310240T2
- Authority
- DE
- Germany
- Prior art keywords
- echo
- signal
- vector
- iteration
- far end
- 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
- 230000003044 adaptive effect Effects 0.000 title claims abstract description 28
- 238000000034 method Methods 0.000 title claims description 48
- 238000012937 correction Methods 0.000 claims abstract description 14
- 238000001914 filtration Methods 0.000 claims abstract description 10
- 239000013598 vector Substances 0.000 claims description 69
- 230000005540 biological transmission Effects 0.000 claims description 32
- 238000005070 sampling Methods 0.000 claims description 19
- 230000014509 gene expression Effects 0.000 claims description 9
- 230000003111 delayed effect Effects 0.000 claims description 7
- 230000000694 effects Effects 0.000 claims description 4
- 230000001360 synchronised effect Effects 0.000 claims description 4
- 230000001629 suppression Effects 0.000 claims description 3
- 230000002123 temporal effect Effects 0.000 claims 2
- 230000002596 correlated effect Effects 0.000 claims 1
- 230000000875 corresponding effect Effects 0.000 claims 1
- 238000004364 calculation method Methods 0.000 description 33
- 238000004422 calculation algorithm Methods 0.000 description 18
- BKAYIFDRRZZKNF-VIFPVBQESA-N N-acetylcarnosine Chemical compound CC(=O)NCCC(=O)N[C@H](C(O)=O)CC1=CN=CN1 BKAYIFDRRZZKNF-VIFPVBQESA-N 0.000 description 15
- 230000004044 response Effects 0.000 description 14
- 230000006870 function Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 238000012360 testing method Methods 0.000 description 7
- 230000006978 adaptation Effects 0.000 description 5
- 230000000737 periodic effect Effects 0.000 description 5
- 230000001105 regulatory effect Effects 0.000 description 4
- 230000007704 transition Effects 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- ATJFFYVFTNAWJD-UHFFFAOYSA-N Tin Chemical compound [Sn] ATJFFYVFTNAWJD-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000002250 progressing effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000011410 subtraction method Methods 0.000 description 1
- 230000017105 transposition Effects 0.000 description 1
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
- H04B3/232—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 using phase shift, phase roll or frequency offset correction
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
- Interconnected Communication Systems, Intercoms, And Interphones (AREA)
- Piezo-Electric Or Mechanical Vibrators, Or Delay Or Filter Circuits (AREA)
Description
- Die vorliegende Erfindung bezieht sich auf das Gebiet der Signalübertragung und im besonderen auf ein Verfahren und eine Anordnung zur adaptiven digitalen Kompensation des in Fernsprechverbindungen mit zeitvarianten Eigenschaften erzeugten Echos.
- Bekanntlich können in Telefon-Fernverbindungen Reflexionen des Sprachsignals rückwärts zum gleichen sprechenden Teilnehmer vorkommen, von dem das Sprachsignal ausgegangen ist. Das ist hauptsächlich auf eine Fehlanpassung der Spulenimpedanz in der Gabelschaltung zwischen einer 4- Drahtleitung und den 2-Drahtleitungen zurückzuführen, die an die Fernsprecher an beiden Enden der Verbindung angeschlossen sind. Wegen der genannten Reflexionen hört ein Teilnehmer, während er noch spricht, was er eben gesagt hat, mit einer Verzögerung, die von der Länge der Verbindung abhängt. Der hörbare Bruchteil des Signals ist das Echo des übertragenen Signals und der Pfad, den das Echo vom Sprechpunkt zum Hörpunkt zurücklegt, wird 'Echokanal' genannt.
- Es ist gezeigt worden, daß der Echoeffekt bei Verzögerungen von mehr als wenigen Zehntelsekunden und Kanadämpfungen zwischen 6 dB und 15 dB störend wirkt. Zur Überwindung dieses Nachteils werden in Telefonfernverbindungen geeignete Einrichtungen verwendet, die 'Echokompensator' genannt werden.
- Diese Einrichtungen werden normalerweise in die mit einem internationalen Vermittlungsamt verbundene 4-Drahteitung eingeschaltet und löschen das beim Sprechen erzeugte Echo dadurch, daß vom wirklichen Echo ein geschätztes Echosignal subtrahiert wird, das man mit Hilfe eines Digitalfilters mit adaptiven Koeffizienten erhält, das seinerseits das Impulsverhalten des Echokanals kopiert.
- In den bekannten Echokompensatoren ist gewöhnlich auch ein 'nicht linearer Schaltkreis' vorhanden, der das Restecho vollständig eliminiert, sobald dieses unter eine voreingestellte Schwelle absinkt. Zusätzlich sind diese mit einer doppelten Spracherkennungsschaltung ausgestattet, die bei Vorhandensein der Stimme des sprechenden Teilnehmers am nahen Ende sowohl die Aktualisierung des Tranversalfilterkoeffizienten als auch die Wirkung des 'nicht linearen Schaltkreises' unterdrückt, sodaß die genannte Stimme nicht unterbrochen wird.
- Bekanntlich kann der Echokanal eine Übertragungsfunktion haben, die zeitlich nicht konstant ist. In diesem Fall wird sein Impulsverhalten eine zeitlich veränderliche Funktion, die die Leistung des Echokompensators entscheidend beeinflussen kann.
- Dieses Verhalten erscheint in FDM-SSB-SC Systemen mit einem einzelnen Übertragungspfad, die über Träger mit unterschiedlichen Frequenzen eine Übertragung in beiden Richtungen vornehmen.
- Die Modulations- und Demodulationsfrequenzen des Trägersystems sind nicht synchronisiert, da sie örtlich erzeugt werden. Das kann eine Verschiebung aller Frequenzkomponenten des Echokanals gegenüber dem Sendesignal zur Folge haben.
- Dieser Vorgang wird 'phase-roll' genannt und ist die Ursache für das nicht stationäre Verhalten des Echokanals.
- Internationale Richtlinien in dieser Materie sind z.B. in der CCITT Empfehlung G.311 festgelegt, die vorschreibt, daß die Frequenzverschiebung zwischen den beiden Enden einer Verbindung in jeder Richtung 2 Hz nicht überschreiten darf. Folglich ist die Obergrenze der totalen Frequenzverschiebung auf dem Echopfad 4 Hz.
- Ein erster bekannter Echokompensator zur Lösung des Problems der Echounterdrückung in mit phase-roll behafteten Verbindungen beliebiger Entfernung basiert auf einem in dem europäischen Patentantrag Nr. EP-A-01 37508 beschriebenen Verfahren der Erfinder. R. Montana und L. Nebbia, das unter dem Namen von CSELT registriert ist. Der genannte Echokompensator benutzt die Tatsache, daß das Impulsverhalten des Echokanals durch eine reine Übertragungsverzögerung charakterisiert ist, gefolgt von einem etwa 6 ms breiten Gebiet, in welchem das Impulsverhalten sich wesentlich von Null unterscheidet. Folglich wird in Übereinstimmung mit dem oben beschriebenen Verfahren eine Beurteilung der Übertragungsverzögerung des Signals durchgeführt mit dem Zweck, ein kurzes Transversalfilter zu verwenden, dessen Koeffizienten nur dem signalteil des Impulsverhaltens entsprechen. Das verwendete Filter ist vom nichtrekursiven Typ (FIR) mit adaptiven Koeffizienten, die mit der Gradientenmethode aktualisiert werden.
- Die begrenzte Zahl zu aktualisierender Koeffizienten erhöht die Geschwindigkeit des Echokompensators bei der Erstellung der Echoschätzung, sodaß er sogar in Verbindungen mit begrenztem Phase-roll verwendet werden kann.
- Obwohl der oben genannte Echokompensator in mit phase-roll behafteten Verbindungen leistungsfähiger ist als vorhergehende Typen, ist er doch nicht in der Lage, bei Vorhandensein von anhaltendem Phase-roll, d.h. in der Größenordnung von 4 Hz, eine gute Betriebsleistung aufrechtzuerhalten. Ein zweiter bekannter Echokompensator ist in dem Text des italienischen Patents Nr.1228106 beschrieben, Erfinder Giacomo Cannalire, Giacomo Prermoli und Roberto Ravasio, erteilt am 28. Mai 1991 und beantragt am 21 Dezember 1988 unter dem Namen der gleichen Antragsteller. Der darin beschriebene Echokompensator benutzt die Übertragungsverzögerung des Echosignals zur Begrenzung des abgeschätzten Impulsverhaltens lediglich auf den wichtigen Teil, ähnlich dem Verfahren des Nebbia-Montagna Echokpompensators, aber von diesem und der Mehrzahl der bekannten Echokompensatoren darin unterschieden, daß ein rekursiver Digitalfiltes vom IIR-Typ mit adaptiven Koeffizienten benutzt wird. Die letzteren werden mit Hilfe eines Algonthmus auf den neuesten Stand gebracht, der auf innovative Weise den konventionellen Kalman-Algorithmus vereinfacht. Bekanntlich besitzt der Kalman-.Algorithmus eine bemerkenswerte Konvergenzgeschwindigkeit, erfordert aber eine hohe Zahl arithmetischer Schritte. Die innovative Vereinfachung lag darin, die Berechnung typischer Iterationen des Algorithmus mit einem 'Quadratische Fehlerdezimierung' genannten Kriterium auf mehrere Abtastintervalle aufzuteilen. Dezimierung verringert die Konvergenzgeschindigkeit des Algorithmus, diese bleibt jedoch für die Kompensation von 4 Hz Phase-roll mehr als zufriedenstellend, und erlaubt darüber hinaus auch eine Reduzierung der Anzahl arithmetischer Schritte für jedes Abtastintervall. im Vergleich mit früheren Echokompensatoren zeigt der genannte Echokompensator eine offensichtlich bessere Leistung in Verbindungen, die mit Phase-roll bis zu 4 Hz behaftet sind. Auf der anderen Seite ist wegen der größeren Komplexität des Kalman-Algorithmus die Berechnung immer noch von beachtenswerter Komplexität im Vergleich zur Gradientenmethode.
- Die vorliegende Erfindung stellt sich deshalb die Aufgabe, diese Nachteile zu umgehen und ein Verfahren und eine Schaltung zur Echokompensation in nichtstationären, z.B. mit Phase-roll behafteten Fernsprechverbindungen anzugeben.
- Das Verfahren besteht aus einer ersten Phase, in der eine Schätzung der Übertragungsverzögerung des Echosignals durchgeführt wird, wobei in der Impulsantwort des Echokanals der Anfangspunkt des von Null wesentlich verschiedenen Teils der genannten Impulsantwort identifiziert wird. In einer zweiten Phase wird der genannte wesentliche Teil der Impulsantwort durch ein nichtrekursives FIR (finite impulse response) Digitalfilter mit adaptiven Koeffizienten simuliert, an dessen Eingang die durch die genannte Übertragungsverzögerung auf geeignete Weise verzögerten Sprach- Abtastwerte des sprechenden Teilnehmers am fernen Ende erscheinen, und an dessen Ausgang ein geschätztes Echo vorhanden ist, das von dem wirklichen Echo subtrahiert wird, um die für den höhrenden Teilnehmer störenden Effekte zu eliminieren. Die Filterkoeffizienten werden iterativ durch algebraische Addition eines dem Fehler in der Echoschätzung proportionalen Korrektionsfaktors zu den bei der vorhergehenden Iteration vorhandenen Werten auf den letzten Stand gebracht. Die Häufigkeit der Iterationen für die Aktualisierung ist ein Vielfaches M der Abtasthäufigkeit für Sprach- und Echowerte durch den Echokompensator. Der im Echokompensator vorhandene Algorithmus zur Angleichung von Koeffizienten, der den Gegenstand der vorliegenden Erfindung bildet, ist eine innovative Anwendung der in den bekannten Echkompensatoren verwendeten und weiter unten 'Methode zur Berechnung von Koeffizienten durch Fehlerinterpolation' genannten Verfahrens und erlaubt größere Konvergenzgeschwindigkeiten bei der Koeffizientenberechnung als die traditionelle Gradientenmethode; der unter Benutzung dieses Verfahrens aufgebaute Echokompensator, Gegenstand der vorliegenden Erfindung, ist in der Lage, auch bei Vorhandensein von 4 Hz Phase-roll gute Betriebsleistungen zu erbringen.
- Der Ausdruck 'Fehlerinterpolation' bedeutet, daß die Fehlerberechnung e(t) bei der Echoschätzung während eines Abtastintervalls von 125 µs M-mal wiederholt wird. Deshalb ist im Zusammenhang mit Echokompensatoren, Gegenstand der vorliegenden Erfindung, die Bedeutung der Interpolation verschieden von der bekannten Bedeutung auf dem Gebiet der Digitalsignale. Das genannte Interpolationsverfahren bekannten Typs ist zum Beispiel auf den Seiten 203 bis 212 in dem Band 'Digital signal processing' von Haddad and Parsons beschrieben, herausgegeben 1991 von Computer Science Press und besteht in der Einführung einer gewissen Zahl von Nullabtastwerten nach jedem Abtastwert des zu interpolierenden Signals.
- Eine Einrichtung vom Interpolationstyp zur Kompensation von Echosignalen ist aus dem Patentantrag EP-A-0065769 bekannt. Die genannte Einrichtung unterscheidet sich von einem nach dem Verfahren der vorliegenden Erfindung arbeitenden digitalen Echokompensator besonders durch das Subtraktionsverfahren zur Bestimmung des Fehlers e(t) [in dem Zitat mit Restsignal r(t) bezeichnet], das mit einem Analogverfahren durchgeführt wird, und durch die Interpolation des Restsignals r(t), das auf die bekannte oben bereits erwähnte Weise durchgeführt wird. Folglich ist sowohl ein vollständig digitaler Aufbau mit Mikroprozessor sowie eine Erhöhung der Konvergenzgeschwindigkeit nicht erreichbar.
- Man muß beachten, daß die höhere Konvergenzgeschwindigkeit des Verfahrens der vorliegenden Erfindung mit einer Erhöhung der Zahl der nach jedem Abtastintervall für Sprach- und Echoabtastwerte durchzuführenden arithmetischen Schritte erkauft wird, verglichen mit der Anzahl Schritte, die im gleichen Zeitintervall mit der traditionellen Gradientenmethode durchgeführt werden. In Anbetracht der unkomplizierten Berechnungen, die für jede Iteration durchzuführen sind, führt die zusätzliche Komplexität jedoch nicht zu nennenswerten Nachteilen. Tatsächlich ist ein Aufbau mit mehreren Echokompensatoren möglich, die für den Betrieb nach dem Verfahren der vorliegenden Erfindung nur einen einzelnen auf die Verarbeitung von Digitalsignalen spezialisierten Mikroprozessor verwenden.
- Zur Erreichung der genannten Resultate ist der Gegenstand der vorliegenden Erfindung ein Verfahren und eine Einrichtung nach Anspruch 1 zur adaptiven digitalen Löschung des in Fernsprechverbindungen mit zeitvarianten Eigenschaften erzeugten Echos.
- Ein weiterer Zweck der vorliegenden Erfindung ist ein nach dem Verfahren in Anspruch 7 arbeitetender Echokompensator, Gegenstand der vorliegenden Erfindung.
- Andere Zwecke und Vorteile der vorliegenden Erfindung werden in der folgenden, ins einzelne gehenden Beschreibung einer Realisierung klar gemacht, sowie durch die Zeichnungen in der Anlage, die jedoch lediglich zur Erklärung und als nicht begrenzendes Beispiel angegeben werden, dabei zeigt:
- BILD 1 ein funktionelles Blockschaltbild des Echokompensators, Gegenstand der vorliegenden Erfindung,
- BILD 2, 3 und 4 das Flußdiagramm eines Mikroprozessorprogramms, Gegenstand der vorliegenden Erfindung, zur Realisierung des Echkompensators von Bild 1.
- In Bild 1 erkennt man den Echokompensator CANC, Gegenstand der vorliegenden Erfindung, der nahe einer internationalen Fernsprechvermittlung RTI installiert und in Serie mit einer 4-Draht Fernsprechleitung verbunden ist, die die genannte Vermittlung mit einer nationalen Vermittlung RTN verbindet.
- Die 4-Drahtleitung L4 ist über die Vermittlung RTN an die Gabelschatung HIB angeschlossen, die ihrerseits über die 2-Drahteitung L2 an den Fernsprecher TEL angeschlossen ist.
- Der Echokompensator CANC besitzt vier mit Rin, Rout, Sin und Sout bezeichnete Anschlußpunkte, die folgende Bedeutung haben:
- - Anschlußpunkt Rin ist der Eingang für das Signal x (t), das die Stimme des sprechenden Teilnehmers am fernen Ende darstellt (d.h. des sprechenden Teilnmehmer am anderen Ende der Verbindung mit dem Fernsprecher TEL).
- - Der Anschlußpunkt Rout ist der Ausgang fü das genannte Signal x (t)
- - Der Anschlußpunkt Sin ist der Eingang für das Signal d (t), das entweder die Stimme des sprechenden Teilnmehmers am nahen Ende (des in den Fernsprecher TEL sprechenden Teilnmehmers), das Echo des Signais x (t) oder die Überlagerung von beiden sein kann.
- - Der Anschlußpunkt Sout ist der Ausgang für das Signal e' (t), das entweder die Stimme des sprechenden Teilnehmers am nahen Ende oder, wie weiter unten besser erklärt wird, ein Restecho des Signals x (t) sein kann.
- In dem betrachteten Fall sind alle in den Bildern angegebenen Signale digital und deshalb ist der Einfachheit halber die Angabe der jeweiligen Analog/Digitalumsetzer unterlassen worden. Außerdem ist die Zeitvariable t eine diskrete Variable, die schrittweise Erhöhungen von125 µs erfährt, die jeweils der Periode P der Abtastfrequenz fc (8 kHz) der Signale x (t) und d (t) entsprechen.
- Die Bilder zeigen einen Echokompensator CANC mit Schnittstelle zu der internationalen Fernsprechvermittlung RTI mit der 4-Drahtleitung L4. Genauer gesagt sind die Anschlußpunkte Rin und Sout des Echokompensators CANC an die Fernsprechvermittlung RTI angeschlossen. Der Anschlußpunkt Rout ist mit dem ersten Draht der Leitung L4 verbunden, die bis an den Empfangseingang der Vermittlung RTN erweitert ist. Der genannte Anschlußpunkt ist ebenfalls mit einem ersten Eingang eines Blocks zur Erkennung von Doppelsprechen RDC angeschlossen, der auch als Teil des Echokompensators CANC angesehen werden kann.
- Der Anschlußpunkt Sin von CANC ist mit dem zweiten Draht der von der Sendeseite der Vermittlung RTN kommenden Leitung L4 verbunden. Der genannte Anschlußpunkt ist auch mit einem zweiten Eingang des Blocks RDC verbunden.
- Der Echokompensator CANC kann der Funktion nach in folgende Blöcke unterteilt werden:
- - ein nichrekursives Digitalfilter FTR mit adaptiven Koeffizienten welches das geschätzte Signal (t) des Echos d (t) erzeugt;
- - ein Block CAC der die adaptiven Koeffizienten des Filters FTR mit Hilfe eines geeigneten Anpassungsalgorithmus berechnet;
- - ein Subtraktionsblock SOT, der das geschätzte Echo von dem wirklichen Echo abzieht, sodaß das Fehlersignal e (t) = d (t) - (t) entsteht, das auch Restecho genannt wird;
- - ein Block CIR, der die Blöcke CAC, FTR und SOT entsprechend synchronisiert, sodaß bei der Berechnung der adaptiven Filterkoeffizienten der Fehler e (t) interpoliert werden kann;
- - ein Block RIT, der die Übertragungsverzögerung d (t) berechnet, wobei unter Übertragungsverzögerung die Gesamtverzögerung zwischen dem Signal x (t) am Ausgang Rout des Echokompensators und dem Signal d (t) an dessen Eingang Sin zu verstehen ist;
- - ein Block VET, der zum Ausgleich der Echopfadverzögerung das Sprachsignal des sprechenden Teilnehmers am fernen Ende auf geeignete Weise verzögert; und
- - ein mit 'nicht linearer Schaltkreis' bezeichneter Block CNL, der als Spezialfall des mit bekannter Technologie aufgebauten Echokompensators betrachtet werden kann.
- Wie breits oben erwähnt, stellen die Blöcke in Bild 1 hauptsächlich ein Funktionsschaltbild des Echokompensators dar, während sie in Wirklichkeit Teile des zum Aufbau des Echkompensators verwendeten Mikroprozessorprogramms sind, Gegenstand der vorliegenden Erfindung. Der verwendete Mikroprozessor ist z.B. der AT&T WE DSP16A, der mit Festpunktfunktion, 16 Bit-Operand und einer Dekodierphase von 34 ns arbeitet. Der genannte Mikroprozessor ist für diesen Zweck sehr gut geeignet, und enthält tatsächlich einen parallelen Multiplikator mit 16 Bit-Eingang und 32 Bit- Ausgang sowie einen Addierer mit zwei 32 Bit-Eingängen und 36 Bit-Ausgang. Der genannte Schaltkreis erlaubt die Durchführung einer Multiplikation und einer Addition in einer einzigen Dekodierphase. Er enthält außerdem eine RAM, eine ROM und geeignete Eingangslausgangsregister für serielle Daten. Ein in den Bildern nicht gezeigtes Taktsignal und Rahmnensynchronisier-signal erreicht den Mikroprozessor zur Synchronisierung der internen Eingangs/Ausgangsvorgänge von PCM-Abtastwerten.
- In Übereinstimmung mit der obigen Beschreibung sind die Anschlußpunkte Rin und Sin direkt mit den ensprechenden seriellen Eingangsschnittstellen des Mikroprozessors verbunden, wobei zur Vereinfachung die Analog/Digitalumsetzer nicht gezeigt sind. Auf ähnliche Weise sind die Anschlußpunkte Rout und Sout direkt mit den ensprechenden seriellen Ausgangsschnittstellen des Mikroprozessors verbunden, wobei zur Vereinfachung die Analog/Digtalumsetzer nicht gezeigt sind.
- Das von der Vermittlung RTI kommende Sprachsignal x (t) erreicht den Anschlußpunkt Rin und danach einen ersten Eingang der Blöcke VET und CNL.
- Der Block VET organisiert die Sprachabtastwerte x (t) in dem nachfolgend 'Eingangssignalvektor' genannten N-dimensionalen Vektor N(t), der an einem ersten und einem zweiten Ausgang zur Verfügung gestellt wird. Der am ersten und zweiten Ausgang vorliegende Vektor erreicht einen ersten Eingang des Blocks RIT, der ihn zur Berechnung der Übertragungsverzögerung des Echos verwendet.
- Das von der Vermittlung RTN kommende Echosignal d (t) erreicht den Anschlußpunkt Sin und danach einen ersten Eingang des in den Bildern mit dem Symbol (+) bezeichneten Blocks SOT, sowie einen zweiten Eingang des Blocks RIT, der es zur Berechnung der Übertragungsverzögerung verwendet. Nach Durchführung der Berechnung ist an einem ersten Ausgang des Blocks RIT das Signal INDX vorhanden, das die als Anzahl von 125 µs-Intervallen ausgedrückte Übertragungsverzögerung darstellt. Das Signal INDX geht einem zweiten Block VET zu, der es zur Berechnung des an einem dritten Ausgang zur Verfügung stehenden Vektors N(t') verwendet, der sich von dem Vektor N(t) dadurch unterscheidet, daß die Sprachabtastwerte des sprechenden Teilnehmers am fernen Ende um das Zeitintervall t' = t - INDX verzögert sind. Die Vektoren N(t) und N(t') werden in den entsprechenden zum Block VET gehörigen Schieberegistern gespeichert und durch Benutzung von auf geeignete Weise adressierten RAM-Zellen des Mikroprozessors realisiert.
- Am Ausgang des Blocks FTR ist das Signal d (t) für das geschätzte Echo vorhanden, das einem zweiten Eingang des in den Bildern mit (-) bezeichneten Blocks SOT zugeht.
- Am Ausgang des Blocks SOT ist das Fehlersignal (t) vorhanden, das einen ersten Eingang des Blocks CIR erreicht und dann in Abhängigkeit von dem Auftreten geeigneter Betriebsbedingungen an den ersten oder zweiten Ausgang des genannten Blocks übertragen wird, wie weiter unten besser geklärt wird.
- Der erste und zweite Ausgang des Blocks CIR ist mit einem ersten Eingang des Blocks CAC und einem zweiten Eingang des Blocks CNL verbunden.
- Am Eingang des Blocks FTR ist eine Vielzahl von Signalen angeschlossen, die von dem Ausgang des Blocks CAC kommen und in den Bildern durch das Vektorsymbol N(t) angezeigt werden. Die genannte Vielzahl enthält eine Anzahl N adaptiver Koeffizienten des Filters FTR und N(t) wird deshalb als Koeffizientenvektor des Filters FTR bezeichnet.
- Das von dem ersten Ausgang des Blocks RDC kommende Sperrsignal INT wird an einen zweiten Eingang der Blöcke CIR und CAC und an einen dritten Eingang des Blocks CNL übertragen.
- Das von dem Ausgang des Blocks CNL kommende Signal e' (t) erreicht den dritten Eingang des Blocks RIT und den Anschlußpunkt SOUT von CANC. An einem zweiten Ausgang des Blocks RIT steht das zweite, an einen dritten Eingang der Blöcke CAC und CIR und einen vierten Eingang des Blocks CNL gerichtete Sperrsignal INIB an. An einem vierten Eingang des Blocks CAC steht der von dem zweiten Eingang des Blocks VET kommende Vektor N(t) des Eingangangssignals an. An einem zweiten Eingang des Blocks FTR steht der vom dritten Ausgang des Blocks VET kommende Vektor N(t') an. Schließlich geht von einem-dritten Ausgang des Blocks CIR das an einen dritten Eingang des Blocks SOT, einen dritten Eingang des Blocks FTR und einen fünften Eingang des Blocks CAC gerichtete Taktsignal Mfc aus.
- Im Betriebszustand kann der Echokompensator CANC in einem der folgenden Zustände sein, die aus praktischen Gründen mit den Buchstaben T, A, X, Y und W bezeichnet werden. Zustand T ist eine Phase zur Initialisierung und Berechnung der Echopfadverzögerung. Zustand A charakterisiert den Betrieb bei Vorhandensein der Stimme nur des sprechenden Teilnehmers am fernen Ende, während der Echkompensator sich bereits im eingeregelten Zustand befindet. Zustand X charakterisiert den Betrieb bei Abwesenheit beider sprechender Teilnehmer. Das Vorhandensein nur des sprechenden Teilnehmers am nahen Ende wird durch den Zustand Y charakterisiert und Doppesprechen durch den Zustand W.
- Der Echkompensator tritt beim Auftreten jeder neuen Verbindung zwischen zwei jeweils an die Vermittlungen RTI und RTN angeschlossenen Fernsprechem in die Initialisierungsphase (Zustand T) ein.In dieser Phase berechnet der Block RIT bei Vorhandensein der Stimme nur des sprechenden Teilnehmers am fernen Ende die Übertragunsverzögerung des tatsächlichen Echosignals d (t).
- Die Berechnung erfolgt durch ein Korrelationsverfahren zwischen den Stimmenabtastwerten x (t) des sprechenden Teilnehmers am fernen Ende und dem tatsächlichen Echoabtastwert d (t). Das genannte Korrelationsverfahren bestimmt den Punkt größter Ähnlichkeit zwischen den beiden Signalen und erkennt auf diese Weise die Übertragungsdämpfung, wie weiter unten besser beschrieben wird.
- Während der Berechnung wird zum Block CAC das Signal INIB übertragen, das die Koeffizienten des Filters FTR auf Null stellt, ein Vorgang, der der Nullstellung der Impulsantwort entspricht. Bei Vorhandensein von INIB ist deshalb (t) = 0. Nach Durchführung der Berechnung beseitigt Block RIT das Signal INIB und überträgt das Signal INDX zum Block VET. Zu diesem Zeitpunkt durchläuft der Echokompensator eine Übergangsphase, die ihn in den durch den Zustand A charakterisierten eingeregelten Betriebszustand bei Nenngeschwindigkeit bringt. Die vorangehende Nullstellung der Koeffizienten von FTR ist deshalb erforderlich, weil bei nicht erfolgter Nullstellung die Konvergenzzeit des Anpassungsalgorithmus eine Verlängerung erfahren würde, die folglich das Erreichen des eingeregelten Zustandes A verzögern müßte. Wenn der Echokompensator sich im eingeregelten Zustand A befindet, hält der Block RIT außerdem das von Block CNL abgegebene Restecho e' (t) unterständiger Beobachtung. Falls dieses eine gewisse voreingestellte Schwelle überschreitet, führt Block eine Neuberechnung der Übertragungsverzögerung INDX durch, da diese sich höchstwahrscheinlich stark verändert hat.
- Im folgenden wird der Betrieb des Echokompensators im Zustand A untersucht. In diesem Betriebszustand werden die Sperrsignale INT und INIB nicht erzeugt und deshalb sind alle Blöcke in Betrieb.
- Wie bereits weiter oben erwähnt, reflektiert die Spule der Gabelschaltung einen Bruchteil des Signals x(t) auf Leitung L4 in Richtung der Vermittlung RTN. Der genannte Bruchteil des Signals erreicht den Anschlußpunkt Sin des Echokompensators CANC und wird in den Bildern mit Echosignal d(t) bezeichnet.
- Das Filter FTR führt eine Schätzung (t) des Echos d(t) durch und sendet diese zu dem Subtrahierer SOT, der sie seinerseits von dem tatsächlichen Echo d(t) subtrahiert, sodaß das Fehlersignal e(t) = d(t) - (t) entsteht, das auch 'Restecho' genannt wird.
- Block CIR synchronisiert den Betrieb des Blöcke FTR, CAC und SOT mit dem Zweck, ein Taktsignal Mfc mit einer Frequenz von m fc zu erzeugen, wobei fc = 8 kHz die Abtastfrequenz der Signale x(t) und d(t) und M eine gerade Zahl > 1 ist, die sorgfältig ausgesucht und mit 'Interpolationsfaktor des Fehlers e(t) bezeichnet wird.
- Die Vorgänge in den Blöcken FTR, CAC und SOT laufen wie folgt ab: anfänglich berechnet das Filter FTR eine neue Schätzung des Echoabtastwertes (t); dann subtrahiert der Block SOT den geschätzten Echoabtastwert (t) von dem tatsächlichen Echoabtastwert d (t), sodaß ein Fehlerabtastwert e(t) entsteht; schließlich wird der Abtastwert e(t) zur Aktualisierung des Koeffizientenvektors N(t) an den Block CAC übertragen.
- In Anbetracht der oben genannten Tatsachen kann man folgern, daß die Blöcke CIR, CAC, FTR und SOT eine Art Interpolationsschleife darstellen, die M-mal schneller reagiert als die verbleibenden Blöcke von CANC, die ja die Geschwindigkeit der Sprachabtastwerte x(t) am Anschlußpunkt Rin und die Geschwindigkeit der zugehörigen Echoabtastwerte e(t) am Anschlußpunkt Sin berücksichtigen müssen. Die Komplexität der Berechnungen, ausgedrückt als Anzahl artihmetischer Schritte innerhalb einer Dekodierphase, erhöht sich auf M-mal die Anzahl artihmetischer Schritte eines Echokompensators, der die genannte Interpolation nicht durchführt, auf der Gegenseite wird jedoch eine M- malige Erhöhung der Konvergenzgeschwindigkeit des Berechnungskoeffizienten erzielt.
- Zum Betrieb des Blocks CIR wird ein Zähler für den Index j benutzt, der bei Beginn eines jeden Rahmens von 125 µs auf Null gestellt wird und alle 125/M µs durch das Taktsignal Mfc weitergeschaltet wird. Der genannte Zähler zählt die Anzahl Iterationen eines jeden aus M Iterationen bestehenden
- Fehlerinterpolationszyklus und wird aus diesem Grund Iterationszähler genannt. Der genannte Zähler wird mittels Software realisiert, ebenso wie die Erzeugung des Signals Mfc. In der Praxis entspricht die Fehlerinterpolationsschleife einem Programmablauf, wie weiter unten besser beschrieben wird.
- Nach jedem Weiterschalten des index j führt Block CIR eine Überprüfung des hierbei erreichten Wertes durch. Jedesmal, wenn das Resultat j ≠ M ist, wird ein neuer Abtastwert des Signals e(t) an den ersten mit dem Block CAC verbundenen Ausgang übertragen. Wenn aber die Bedingung j = M auftritt, wird der Abtastwert von e(t) sowohl zum Block CAC, der die lezte iteration zur Aktualisierung des Vektors N(t) durchführt, als auch zum zweiten an den Block CNL angeschlossenen Ausgang übertragen.
- Da bei j = M das Restecho e(t) an den Ausgang des Echkompensators CAN übertragen wird, ist damit der gegenwärtige Zyklus der Fehlerinterpolarisation e(t) beendet. Die Berechnung der Echoschätzung (t) wird im nächsten Interpolationszyklus durchgeführt, wobei ein neuer Echoabtastwert d(t) und ein mit einem neuen Abtastwert x (t') aktualisierter Eingangsvektor N(t') verwendet wird.
- Der Block CNL ist eine Stummschaltungseinchtung für das Restecho, die die Abastwerte e(t) des Restechos mit einem Schwellenwert vergleicht, der von dem Pegel des Signals x(t) abhängt. Falls bei einem Vergleich der Wert e(t) den genannten Bruchteil von x(t) überschreitet, durchläuft das Signal e(t) den Block CNL ungehindert und erreicht den Anschlußpunkt Sout des Echokompensators; andernfalls-wird es vollständig unterdrückt.
- Das im Echokompensator benutzte Filter FTR, Gegenstand der vorliegenden Erfindung, ist, wie bereits erwähnt, ein nichtrekursives Filter (FIR) mit adaptiven Koeffizienten, im folgenden auch Transversalfilter genannt, dessen Übertragungsfunktion nur aus Nullen besteht. Es wird direkt in Übereinstimmung mit bekannten Konstruktionstechniken für Digitalfilter aufgebaut. Das Filter enthält 48 Anzapfungen, die einer gleich großen Zahl von Koeffizienten entsprechen, sodaß N = 48 ist. Dieser Wert reicht für die Simulation nur des wichtigeren Teils der Impulsantwort des Echokanals aus, die etwa 6 ms beträgt.
- Der erste Teil des Impulsantwort im Echokanal, der einer reinen Verzögerung entspricht, wird durch Anlegen der Sprachabtastwerte x (t') an den Eingang des Filters FTR simuliert, was den zeitlich um t' = t - INDX verzögerten Abtastwerten des Signals x(t) entspricht.
- Das Schätzsignal (t) erhält man durch ein Faltungsverfahren zwischen der Impulsantwort des Filters FTR und dem Eingang x(t) auf die in der folgenden Formel angegebene Art und Weise.
- wobei ci die adaptiven Koeffizienten des Tranversalfilters bezeichnet, und x (t' - i) die verzögerten Sprachabtastwerte des sprechenden Teilnehmers am fernen Ende.
- Der Schätzwert (t) des Echosignals kann auf kompaktere Weise mit den folgenden Vektorsymbolen ausgedrückt werden:
- wobei NT(t) den transponierten Vektor NT(t) der adaptiven Koeffizienten ci, N die Anzahl adaptiver Koeffizienten und T einen typischen Transpositionsvektor darstellen. N(t') ist der Vektor des Einangssignals des Transversalfilters, wobei N die Anzhl von Sprachabtast-werten x (t' - i) angibt.
- Die Berechnung des Vektors NT(t) wird weiter unten nach Beschreibung der anderen Betriebsarten des Echokompensators in allen Einzelheiten klargestellt.
- Die Vektoren NT(t) und N(t') werden wie folgt ausgedrückt:
- Die obige Analyse zeigt klar, daß das genannte Echo, falls das Filter FTR auch in Gegenwart von Phase-roll gute Schätzwerte des Echos d(t) erhält, am Ausgang Sout des Echokompensators wirksam ausgeblendet wird, sodaß für den sprechenden Teilnehmer am fernen Ende die lästigen Störungen vermieden werden können.
- Es werden nun die andere Betriebszustände des Echkompensators diskutiert, die weiter oben mit X, Y und W bezeichnet sind. Die die genannten Zustände charakterisierenden Bedingungen werden von dem Block RDC erkannt, der die Signale x(t) und d(t) ständig überwacht und sie auf geeigenete Weise miteinader vergleicht. Bei den Verfahren, die die verschiedenen Blöcke des Echokompensators durchführen müssen, sind die Zustände X (Abwesenheit beider sprechenden Teilnehmer) und Y (Anwesenheit nur des sprechenden Teilnehmers am nahen Ende) gleichwertig. Es genügt daher, wenn Block RDC nur den Zustand der Abwesenheit des sprechenden Teilnehmers am fernen Ende erkennt, da dieser den beiden Zuständen gemeinsam ist. Block RDC erkennt den genannten Zustand durch Überprüfung, ob die Schwelle von -31 dBmo von Signal x(t) unterschritten wird.
- Die den Zustand W charakterisierende Bedingung (Doppelsprechen) wird erkannt durch Überprüfung, ob die Differenz zwischen den Signalen x(t) und d(t) weniger als 6 dB beträgt, wobei angenommen wird, daß die Gabeischaltung HIB das Echosignal d(t) um mindestens 6 dB dämpft.
- Bei Abwesenheit de sprechenden Teilnehmers am fernen Ende, Zustände X und Y, und bei Vorhandensein von Doppelsprechen, Zustand W, erzeugt der Schaltkreis RDC das an den Block CAC gerichtete Signal INT zur Abschaltung des Algorithmus für die Koeffizienten-Adaption. In Gegenwart von INT ist der Koeffizientenvektor NT(t) deshalb ein konstanter, d.h. nicht aktualisierter Vektor. Der Grund für die genannte Abschaltung ist, daß das von Block CAC verwendete Signal e(t) die Stimme des sprechenden Teilnehmers am nahen Ende enthalten könnte.
- Das Signal INT ist ebenfalls an die Blöcke CIR und CNL gerichtet. In Block CIR setzt es den index j auf den Wert M des Iterationszählers, um das Signal e(t) an den Block CNL weiterzuleiten. In Block CNL schaltet das Signal INT die Sperrung des Restechos e'(t) ab, um die Stimme des sprechenden Teilnehmers am nahen Ende nicht zu unterbrechen.
- In den Zuständen X und Y stimmt das Ausgangssignal zum Anschlußpunkt Sout mit dem Eingangssignal zum Anschlußpunkt Sin überein. im Zustand W führt der Echokompensator weiterhin die Unterdrückung des Echos mittels Schätzung und Subtraktion vom Eingangssignal zum Anschlußpunkt Sin durch.
- Im folgenden wird die Arbeitsweise des Echokompensators im Zustand A und besonders der Adaptionsalgorithmus für den Koeffizientenvektor des Transversalfilters genauer untersucht.
- Der Adaptionsalgorithmus für Koeffizienten wurde auf neuartige Weise entwickelt, ausgehend von den bekannten Gradientenmethode. Eine ins einzelne gehende Beschreibung der Gradientenmethode findet sich z.B. auf den Seiten 298 bis 300 des Buches mit dem Titel 'Digital Processing of Signals' von Maurice Bellanger, herausgegeben 1984 von John Wiley & Sons.
- Das Krtiterium für Koeffizientenoptimierung, auf die sich die Gradientenmethode stützt, ist die Minimierung des mittleren quadratischen Fehlers der Leistung des Restechos e(t).
- Der mit ε(t) bezeichnete mittlere quadratische Fehler wird wie folgt ausgedrückt:
- wobei n eine diskrete zeitliche Veränderliche mit der Steigung fc und t ein typischer Abtastzeitpunkt ist.
- Minimierung des mittleren quadratischen Fehlers führt auf ein lineares System von N Gleichungen mit der gleichen Zahl von Unbekannten, in denen die Unbekannten die N Koeffizienten des Transversalfilters sind.
- Das genannte System wird in Vektorform dargestellt und führt auf eine Vektorgeichung, die als Wiener-Hopf Gleichung bekannt ist. Die Lösung dieser Gleichung ist der Vektor NT(t), den man durch Multiplikation der inversen selbskorrelierenden Matrix NT(t') mit einem gegenseitigen Korrelationsvektor unter N Sprachabtastwerten des sprechenden Teilnehmers am fernen Ende und der zugehörigen Echoabtastwerte erhält.
- Zur Verminderung der Anzahl arithmetischer Schritte, die nahe mit der Zahl N der Filterkoeffizienten zusammenhängen, sind Algorithmen bekannt, die die Wiener-Hopf Gleichung durch Iteration lösen, sodaß die Lösung eines linearen Systems mit N Gleichungen vermieden werden kann.
- Einer der genannten bekannten Algorithmen ist unter der Bezeichnung Gradientenmethode in dem oben genannten Band von Bellanger op cit beschrieben. Es wird angenommen, daß die Lösung der Wiener-Hopf Gleichung zu einem Zeitpunkt, der dem gegenwärtigen Zeitpunkt unmittelbar vorausgeht, bereits bekannt ist, sodaß die Lösung für den gegenwärtigen Zeitpunkt durch eine geeignete Korrektur des vorhergehenden Koffizientenvektors nach der folgenden Formel gefunden werden kann:
- wobei t eine diskrete, mit einer der Abtastgeschwindigkeit von fc = 8 kHz gleichen Schrittgeschwindigkeit weiterschreitende zeitliche Veränderliche ist; Δ ist ein konstanter Wert, der in dem Korrekturausdruck erscheint; ist die Veränderung des Sprachsignais des sprechenden Teilnehmers am fernen Ende.
- Wenn man die Ausdrücke des Vektors N(t) mit ci bezeichnet, erhält man für einen typischen Koeffizienten ci:
- wobei x (t-i) das dem untersuchten Koeffizienten entsprechende Sprachabtastsignal ist.
- Bei Berechnung des Koeffizienten ci mit der Formel (5') ist die für die Konvergenz eines typischen i-ten Koeffizienten auf seinen aktuellen Wert erforderliche Zeit ziemlich lang. Deshalb kann ein den Gradientenalgorithmus benutzender Echokompensator, wie in dem oben genannten Buch gezeigt wird, nur an den beiden Enden von Fernsprechleitungen benutzt werden, die stationäre oder langsam veränderliche elektrische Kennwerrte aufweisen. An den beiden Enden einer mit hohem Phase-roll behafteten Fernsprechleitung arbeitet er nicht sehr gut.
- Um diesen Nachteil zu umgehen, ist ein neuartiges, 'Fehlerinterpolation' genanntes Kriterium in die Berechnung der adaptiven Koeffizienten eingeführt worden. Wie oben bereits erwähnt, besteht die interpolation aus M-maliger iterativer Aktualisierung des Vektors CN(t) während eines Rahmens von125 µs Länge, unterschiedlich von der konventionellen Graddientenmethode, die den genannten Vektor nur einmal pro Rahmen aktualisiert. Die Formel zur Berechnung eines typischen Vektorkoeffizienten N(t) lautet:
- wobei , , x (t-1), Δ, . in der Formel (5') definiert sind; j ist der Index des bei Beginn des Zeitintervalls t mit mit der Geschwindigkeit fc auf Null gestellten und mit der Geschwindigkeit Mxfc fortschreitenden Iterationszählers; e (t, j) ist das bei jeder j-ten Iteration berechnete Restecho. Es muß spezifiziert werden, daß in (6) in Übereinstimmung mit den Bemerkungen bezüglich des Betriebs von Block CIR, für j=0 jeweils ci (t, 0) = ci (t - 1, M) auftritt. In Vektorschreibweise wird (6):
- N(t,j) = N(t,j - 1) + (Δ / ) N(t)e(t,j) (6')
- Den für jede Iteration in (6) einzuführenden Wert e (t, j) zur Berechnung von N(t, j) erhält man durch Berechnung des geschätzten Echos (t,,j) mit der während der Bearbeitung auf die j-te Iteration anzuwendenden Formel (2) und nachfolgender Subtraktion des geschätzten Echos von dem wirklichen Echo d(t), genauer gesagt: e (t, j) = d(t) - (t, j).
- Am Ende des typischen Intervalls t ist der Wert des typischen Koeffizienten ci in Formel (6):
- wobei die Summierung im letzten Ausdruck von der Interpolation des Fehersignais e(t) stammt.
- Zur Vervollständigung der in Formel (6') ausgedrückten Verfahren enthält Block CAC die folgenden Schaltkreise: ein Speicherregister, das am Ende jeder Iteration zur Aktualisierung des Vektors N(t) den auf den letzten Stand gebrachten Wert des genannten Vekrtors speichert; ein Multiplizierer, der den Vektor N(t) mit (Δ / )e(t,j) multipliziert, wodurch ein Vektorkorrekturausdruck entsteht, der mit dem zweiten Summanden von (6') identisch ist; sowie ein Addierer, der den Inhalt des genannten Speicherregisters (das dem ersten Summanden in (6') entspricht) zu dem Vektorkorrekturausdruck addiert. Die genannten Schaltkreise von Block CAC werden durch das Signal Mfc getaktet und gehören zu dem Mikroprozessor, der den Echokompensator realisiert.
- Man muß betonen, daß die Interpolation, wie man aus der Anwendung der Formeln (2, 6, 6', 6") ersieht, nur die Berechnung der adaptiven Koeffizienten betrifft. Es wird keinerlei Interpolation der Sprachabtastwerte des sprechenden Teilnehmers am fernen Ende und des Echosignals durchgeführt. Tatsächlich verhält sich der Echokompensator CANC bei jedem Fortschreiten der Variablen t, was jeweils nach M Schritten des Index j zutrifft, wie folgt:
- - Block VET aktualisiert die Eingangsvektoren N(t) und N (t') durch Verschieben der in den jeweiligen Schieberegistern enthaltenen Abtastwerte um eine Position, wobei die älteren Abtastwerte x (t-N) und x (t'N) verloren gehen und jeweils die beiden neuen Abtastwerte x (t-1) und x (t'1) eingeführt werden;
- - Block SOT erfasst einen neuen Echoabtastwert d(t) zur Berechnung des Fehlers e (t, 1) zu Beginn eines neuen Interpolationszyklus; und
- - Block CIR stellt den Abtastwert des während der letzten Iteration (j = M) berechneten Restechos e (t, M) dem Block CNL zur Verfügung, der es zum sprechenden Teilnehmer am fernen Ende weiterleitet.
- Wie man sieht, werden die Eingangslausgangsvorgänge für Abtastwerte zu/von dem Echokompensator mit der Geschwindigkeit fc durchgeführt.
- In den Formeln (6') und (6") erhhält man die Veränderung durch Quadrierung des Asusdrucks x, der auch als Standardabweichung des Signals x(t) bekannt ist; x erhält man der Reihe nach durch Filterung des Signals x(t) durch die in Block CAC enthaltenen Digitalfilter erster Ordnung. Normalisierung der Amplitude des Korrekturausdrucks auf den Wert macht die Konvergenszeit unabhängig von dem Sprachsignalpegel des sprechenden Teilnehmers am fernen Ende. Der konstante Wert Δ hat einen bestimmenden Einfluß auf die Konvergenzgeschwindigkeit des Berechnungsalgorithmus des Koeffizienten ci. In (6') ist der Wert Δ = 1/N gewählt worden.
- Bei Vergleich der Formeln (6") und (5'), wobei die letztere sich auf die Gradientenmethode bezieht, kann man erkennen, daß die beiden Formeln, in denen die gesamte Korrektur des Koeffizienten ci in dem Zeitraum t durchgeführt wird, den gleichen Ausdruck (Δ / )x(t - 1) enthalten, der in (6") eine auf verschiedene Fehlerabtastwerte ausgedehnte Summierung multipliziert, wärend in (5') nur ein einziger Fehlerabtastwert multipliziert wird. Davon kann man ableiten, daß ein auf konventionelle Weise in Übereinstimmung mit (5') berechneter typischer Koeffizient M Abtastintervalle zur Erreichung dieses Wertes benötigt, den die Formel (6"), Dank der Fehlerinterpolation, in einem einzigen Abtastintervall berechnet. Folglich ist die Konvergenzgeschwindigkeit des neuen Algoritmus zur Berechnung der Transversalfilterkoeffizienten M-mal höher als die Berechnung mit der Gradientenmethode.
- Die Wahl eines Interpolationsfaktors von M = 3 erlaubt Kompensation eines Phase-rolls von 4 Hz und Aufbau von vier Echokompensatoren mit einem einzigen Mikroprozessor des oben genannten Typs.
- Die Bilder 2, 3 und 4 zeigen ein Flußdiagramm der Verfahrensschritte, die von dem genannten Mikroprozessor durchgeführt werden, der im folgenden auch mit 'Einheit' bezeichnet wird und den Echokompensator von Bild 1 realisiert.
- In Phase 0 (Bild 2) der oben genannten Bilder werden verschiedene Initialisierungs-verfahren der RAM (Random Access Memory) und einiger Register des Mikroprozessors durchgeführt. Die hauptsächlichen Initialisierungen sind: Nullstellung der Register, die den Index INDX zur Messung der Übertragungsverzögerung enthalten, sowie der Speicherzellen, die als Verzögerungselement bei der Berechnung der genannten Übertragungsverzögerung dienen; Nullstellung der Speicherzellen, die die Koeffizienten des Transversalfilters enthalten; Nullsteung der Speicherzellen, die als Verzögerungselement bei der Berechnung der Standardabweichung x dienen; sowie Einlesen eines geeigneten Anfangswertes in die Register, die die Sequenz der Betriebszustände T, A, W, X oder Y des Echokompensators speichern. Phase 0 wird nach Einschalten des Mikroprozessors oder in einigen speziellen Fällen durchgeführt, wenn eine Initialisierung der Einrichtung notwendig wird.
- In Phase 1 der Synchronisierung wartet die Einheit, bis die beiden PCM Abtastwerte x(t) und d(t) verarbeitet sind. Letztere erreichen jeweils die Anschlußpunkte Rin und Sin des Echokompensators.
- Wenn die oben genannten Abtastwerte einmal erfaßt und in den jeweiligen Eingangs-registern gespeichert worden sind, geht die Einheit zur Phase 2 über, in der sie den Restechoabtastwert e'(t) von einem Ausgangsregister zum Anschlußpunkt Sout des Echokompensators überträgt.
- In der nachfolgenden Phase 3 werden die Abtastwerte x(t) und d(t) in zwei Speicherregister der Einheit übertragen. Der Abtastwert x(t) wird ebenfalls an den Anschlußpunkt Rout des Echokompensators übertragen.
- In Phase 4 findet eine A/µ-Umcodierung der nach dem A-Gesetz komprimierten 8-Bit Signale x(t) und d(t) in homogene 13 Bit PCM oder linear codierte Signale statt.
- In Phase 5 stellt die Einheit den Index j des lterationszählers auf Null. In der nächsten Phase 6 berechnet die Einheit die Standardabweichung x des Signais x(t), das in Phase 7 zur Berechnung des reziproken Wertes der Varianz 1/ des genannten Signals benutzt wird.
- In Phase 8 nimmt die Einheit eine Aktualisierung des Eingangsvektors N(t) der Sprachabtastwerte und des Eingangsvektors N(t') des verzögerten Sprachabtastwertes vor, wodurch die Abtastwerte x (t-N) und x (t'N) von den entsprechenden Vektoren eliminiert, die verbleibenden Abtastwerte um eine Position verschoben und die Abtastwerte x (t-1) und x (t'1) in den Koppfteil der verbleibenden N-1 Sprachabtastwerte des sprechenden Teilnehmers an fernen Ende eingelesen werden. Falls die Berechnung der Übertragungsverzögerung nicht durchgeführt oder abgeschlossen wurde, ist das Resultat INDX = 0 und folglich N (t') = X N(t).
- In der Verarbeitungsphase 9 bringt die Einheit die von dem Schaltkreis RDC (Bild 1) durchgeführten Funktionen zur Ausführung. Genauer gesagt vergleicht die Einheit in Phase 9 das Sprachsignal des sprechenden Teilnehmers am fernen Ende mit einer bestimmten Pegechwelle von -31 dBmo, um zu erkennen, ob der sprechende Tel nhemer am fernen Ende abwesend ist. Erkennung dieses Zustandes führt zu einem von zwei möglichen Zuständen, die mit X (Abwesenheit beider sprechender Teilnehmer) oder Y (Vorhandensein nur des sprechenden Teilnmehmers am nahen Ende) bezeichnet werden und nicht voneinander unterscheidbar sind, da der Test nur für die Stimme des fernen Teilnehmers durchgeführt wird. Für die Gesamtdauer der Zustände X und Y bleibt das Signal INT aktiv, da es in der nachfolgenden Verarbeitung verwendet werden muß.
- In Phase 10 sperrt das Signal INT die Aktualisierung der adaptiven Koeffizientenvektoren CN(t) des Transversalfilters.
- In Phase 11 schaltet das Signal INT die Interpolation des Restechos e(t) ab und setzt den Index j = M.
- In Phase 12 unterdrückt das Signal INT die Stummschaltung des Restechos e'(t).
- In der nachfolgenden Phase 13 wird der Abtastwert e'(t), der entweder die Stimme des sprechenden Teilnehmers am fernen Ende (Zustand Y) oder aber eine zu diesem Zeitpunkt auf der Leitung vorhandene Störung mit niedrigem Pegel (Zustand X) sein kann, in das Ausgangsregister eingelesen.
- In der nachfolgenden Phase 14 wird der Abtastwert e'(t) von homogener PCM in komprimierte PCM umgesetzt. Die Einheit kehrt dann zur Synchronisierungsphase 1 zurück, und wartet die Verarbeitung der nächsten beiden PCM Abtastwerte x(t) und d(t) ab.
- Wie man sieht, bestehen die Betriebszustände X und Y des Echokompensators aus periodischen Wiederholung der Phasen 1 bis 14.
- Falls während des Ablaufs der genannten periodischen Zyklen in Phase 9 die Stimme des sprechenden Teilnehmers am fernen Ende erkannt wird, geht die Einheit zur Phase 15 über, wo sie die Signale x(t) und d(t) miteinander vergleicht, um Doppelsprechen erkennen zu können., Wie bereits erwähnt, gilt dieser Zustand als erkannt, wenn die Pegeldifferenz zwischen x(t) und d(t) weniger als 6 dB beträgt, wobei man annimmt, daß die Spule der Gabelschaltung HIB das Signal d(t) um mindestens 6 dB dämpft. Wenn der genannte Zustand erkannt wird, geht die Einheit zu Phase 16 über, die zu dem Betriebszustand W gehört, in welchem das Signal INT aktiviert wird.
- In Phase 16 sperrt das Signal INT die Aktualisierung des Vektors N(t) der adaptiven Koeffizienten des Transversalfilters und hält dessen Impulsantwort fest. Es ist zu beachten, daß dieser Haltevorgang es dem Echokompensator ermöglicht, das Echo auch unter Bedingungen mit Doppelsprechen zu unterdrücken. Dieses Resultat ist jedoch nur bei Abwesenheit von Phase-roll tatsächlich erzielbar. In Gegenwart von andauerndem Phase-roll erscheint eine sinusförmige Moduation der Restechoammplitude mit einer Frequenz, die gleich dem Phase-roll ist.
- In Phase 17 sperrt das Signal INT die interpolation des Restechos e(t) und setzt den Index j = M.
- In Phase 18 sperrt das Signal INT die Stummschaltung des Restechos e'(t), sodaß die Stimme des sprechenden Teilnehmers am nahen Ende den Ausgangsanschlußpunkt Sout des Echokompensators erreichen kann.
- In Phase 19 führt die Einheit die digitale Filterung durch, die zu der in Formal (2) angegebenen Echoschätzung (t) führt.
- In Phase 20 wird durch Subtraktion der Echoschätzung (t) von dem Signal d(t) das Ausgangssignal e'(t) berechnet. Dieses repräsentiert im Zustand W die Stimme des sprechenden Teilnehmers am nahen Ende plus das Echo der Stimme des sprechenden Teilnehmers am fernen Ende. In der nachfolgenden Phase 14 wird der Abtastwert e'(t) von homogener PCM in komprimierte PCM umgesetzt. Danch geht die Einheit zur Synchronisierungsphase 1 zurück und wartet die Verarbeitung der nächsten beiden PCM Abtastwerte x(t) und d(t) ab.
- Wie man sieht, besteht der Betriebszustand W con CANC aus einer periodischen Wiederholung der Phasen 1 bis 9, 15 bis 20 , 14 und 1.
- Falls während der Durchführung der genannten periodischen Zyklen in Phase 15 kein Doppelsprechen erkannt wird, so bedeutet das, daß der Echokompensator CANC sich entweder im stationären Zustand A oder aber in der zu dem genannten stationären Zustand führenden Übergangsphase befindet. Die nachfolgende Phase 21 klärt diese Doppeldeutigkeit, indem sie einen Test für Anwesenheit des Signals INIB durchführt. Vorhandensein des Signais INIB bedeutet, daß der Echokompensator sich in der Übergangsphase T befindet, in der die Übertragungsverzögerung des Echosignals berechnet wird. Das Programm springt deshalb auf Phase 22 und führt die periodischen Wiederholungen durch, die den Betriebszustand T charakterisieren. Dieser Zyklus enthält die Phasen 22 bis 28, 14, 1 bis 15 und 21. In Phase 22 stellt das Signal INIB den Vektor N(t) der adaptiven Koeffizienten des Transversalfilters auf Null. In Phase 23 schaltet das Signal INIB durch Unterdrückung des Korrekturausdrucks in Formel (6) die Aktualisierung des Vektors N(t) ab. In Phase 24 schaltet das Signal INIB den Fehlerinterpolations-prozess ab und setzt den Index j des Iterationszählers auf den Wert M. In Phase 25 schaltet das Signal INIB die Stummschaltfunktion für das Restecho ab und deshalb kann während der Berechnung der Übertragungsdämpfung das wirkliche Echo d(t) vom sprechenden Teilnehmer am fernen Ende wahrgenommen werden.
- In der folgenden Phase 26 wird die Berechung der Übertragungsverzögerung im Echopfad durchgeführt. Diese Berechnung wird von einem in Block RIT (Bild 1) befindliches digitales Korrelationsfilter durchgeführt, an dessen Eingang die Signale x(t) und d(t) an liegen. Der am Ausgang des Filter vorhandenen typische Wert Wk(t) ist durch die folgende Formel gegeben:
- Wk(t) = px(t - k)d(t) + αwk(t - 1) (7)
- dabei ist t ein Index, der mit einer der Abtastgeschwindigkeit fc = 8 kHz gleichen Geschwindigkeit erhöht wird, k ist ein Index von 1 bis 320, der eine Korrelation eines jeden Abtastwertes d(t) mit allen 320 oben genannten Abtastwerten von x(t) ermöglicht; und α: sind Konstanten, die sich auf Kennwerte des Digitalfilters wie Durchgangs- und Banddämpfung beziehen und die Genauigkeit der Berechnung bestimmen.
- Index t wird, ausgehend von dem Wert tin, den er bei Beginn der Berechnung der Übertragungsverzögerung hatte, solange erhöht, bis der Wert + 320 erreicht ist, was eine Erweiterung des Korrelationsfensters um ein Zeitintervall von 40 ms erlaubt.
- Am Ende des Korrelationsprozesses wird der Wert Wk(t)max gespeichert, bei dem es sich um den Maximalwert unter den 320 Werten von Wk(t) handelt. Auf diese Weise wird die Übertragungsverzögerung INDX erkannt und auf den gleichen Wert wie der Index k von Wk(t)max eingestellt.
- In Phase 27 wird ein Test zur Feststellung durchgeführt, ob die Berechnung der Übertragungsverzögerung durchgeführt worden ist; falls sich dieser Zustand nicht bewahrheitet, geht das Programm auf Phase 28 über und erzeugt den Ausgangsabtastwert e'(t); danach wird Phase 14 durchgeführt mit einer Rückkehr zu Phase 1 zur Wiederholung des Zyklus, der den Zustand T charakterisiert. Falls der Test von Phase 27 zeigt, daß die Berechnung der Übertragungsverzögerung durchgeführt worden ist, springt das Programm vor Durchführung der Phase 28 auf die Phase 29, in der der Wert von INDX gespeichert und das Signal INIB beseitigt wird, womit beginnend von der nächsten iteration die Berechnung der Übertragungsverzögerung abgeschaltet bleibt.
- Wenn das Programm wieder in die Phase 21 eintritt, wird der Zustand des Signais INIB nicht weiter überprüft und deshalb findet ein Sprung zu Phase 30 statt, was den Beginn eines Zyklus mit Dauerbetrieb des Echokompensators im Zustand A anzeigt. Dieser Zyklus enthält die Phasen 35, 36 oder 37, 38, 14, 1 bis 9,15 und 21 und andere Zyklen, die aus den Phasen 30 bis 34 bestehen.
- In Phase 30 überprüft die Verarbeitungseinheit, ob Index j des Iterationszählers den Wert M erreicht hat und wenn dieser Zustand bestätigt wird, führt das Programm den Test von Phase 35 zur Überprüfung des über eine gewisse Zahl von Abtastwerten gemittelten Restechowertes e (t, M) durch, um nachzuweisen, ob der genannte Wert höher ist als die entsprechende Schwelle 0,05 x. Falls diese Bedingung ebenfall bestätigt wird, springt das Programm zu Phase 37, wo der gegenwärtige Abtastwert e (t, M) des Restechos im Ausgangsregister des Signals e'(t) gespeichert ist, bereit, in komprimierte PCM umgesetzt und am Ende des Zyklus für den Zustand A zum Anschlußpunkt Sout übertragen zu werden. Falls diese Bedingung nicht bestätigt wird, geht das Programm auf Phase 36 über, wo es die Register e'(t) auf Null stellt, was die Stummschaltung des Restechos zur Folge hat. Wie man sieht, stellt die Einheit in den Phasen 35 und 36 den nicht linearen Schaltkreis CNL dar (Bild 1).
- Die beiden Phasen 36 und 37 führen zur Phase 38, wo eine andere Funktion des Blocks RIT (Bild 1) durchgeführt wird, und zwar die Überwachung des Signals e'(t) am Ausgang des Echkompensators CANC. In Phase 38 wird der Wert des über eine gewisse Anzahl von Abtastwerten gemittelen Restechos e'(t) durchgeführt, um nachzuweisen, ob der genannte Wert höher ist als die entsprechende Schwelle 0,25 x. Eine Bestätigung dieser Bedingung bedeutet, daß der Echokompensator die Echokompensation schlecht durchführt, wahrscheinlich wegen Variationen in der Verzögerung des Echopfades. Deshalb ist eine erneute Brechnung der genannten Verzögerung erforderlich. Zu diesem Zweck aktiviert die Einheit in Phase 39 das Signal INIB auf solche Weise, daß beim nächsten Übergang auf diesen Zyklus der Test von Phase 21 auf die Berechnung der Übertragungsverzögerung zurückführt. Das Programm fährt mit Phase 40 fort, in welcher die Speicherzonen, die INDX enthalten, sowie die zur Berechnung der gegenseitigen Korreation der Signale x(t) und d(t) erforderlichen Verzögerungselemente auf Null gestellt werden. Danach geht das Programm auf Phase 14 über, wo der vorher im Ausgangsregister gespeicherte Abtastwert des Restechos e'(t) in komprimierte PCM umgesetzt und dann zum Anschlußpunkt Sout übertragen wird. Falls die Bedingung von Phase 38 nicht überprüft wird, wird die Verzögerung des Echopfades nicht berechnet und das Programm springt direkt auf Phase 14. Die Einheit wiederholt dann den Anfangsteil des Betriebszyklus von Zustand A, in welchem unter anderem der Index j auf Null gestellt wird, und erreicht Phase 30, wo es den Wert von Index j erneut überprüft. Da an diesem Programmpunkt j = 0 ist, startet der genannte Test einen aus den Phasen 30 bis 34 bestehenden Zyklus, was einer Iteration der Berechnung eines neuen Abtastwertes des Restechos e (t, M) nach den Formeln (2) und (6) entspricht, der an den Computer übertragen werden muß.
- Genauer gesagt wird der Index j des Iterationszählers in der Phase 31 um eine Einheit erhöht. In Phase 32 wird eine digitale Filterung durchgeführt, die das geschätzte Echo (t, j) nach der auf die j-te Iteration angewendeten Formel (2) erzeugt.
- In Phase 33 wird die Berechnung des Fehersignals e (t, j) für die j-te Iteration durchgeführt, wobei das geschätzte Echo (t) von dem wirklichen Echo d(t) abgezogen wird.
- In Phase 34 wird der Vektor der Koeffizienten N(t) aktualisiert, wobei jeder Koeffizient nach der Formel (6) berechnet wird. Das Programm kehrt dann zu Phase 30 zurück, um eine neue Iteration der Berechnung von e (t, M) durchzuführen.
- Der Berechnungszyklus 30 bis 34 wird iterativ M-mal ohne Unterbrechung wiederholt. Jede Iteration verbessert die Beurteilung des Vektors N(t) und reduziert folglich den Fehler e (t, j). in Phase 30 wird beim Auftreten der Bedingung j = M der Zyklus nicht wiederholt und der Abtastwert e (t, M) wird für die nachfolgenden Verarbeitungsschritte der Phase 35 gespeichert.
- In Hinblick auf die obigen Bemerkungen muß wiederum unterstrichen werden, daß der aus den Phasen 30 bis 34 bestehende Zyklus bei jedem Zugriff auf einen neuen Sprachabtastwert x(t) oder auf das wirkliche Echo d(t) iterativ M- mal wiederholt wird. Die Eingangs/Ausgangsvorgänge für Abtastwerte zum/vom Echokompensator erfolgen mit der Abtastfrequenz fc = 8 kHz und der Zxyklus 30 bis 34 hat eine Wiederholfrequenz (rate), die gleich M × 8 kHz (24 kHz) ist. Die höhere Geschwindigkweit des Iterationszyklus, ein Mehrfaches der Geschwindigkeit, mit der der Echokompensator auf die Sprach- und Echoabtastwerte zugreift, zusammen mit der Einfachheit des Berechnungsalgotihmus für den Vektor N(t) erlauben eine mehrfache Abschätzung des Echoabtastwertes im Laufe des Zeitintervalls zwischen zwei aufeinanderfolgenden Zugriffen des Echokompensators auf die Abtastwerte, wobei bei jeder neuen Abschätzung ein Wert auftritt, der dem gemessenen Abtastwert des wirklichen Echosignals immer näher kommt.
- Auf der Basis der obigen Beschreibung des Funktionsblocks (Bild 1) und des Flußdiagramms (Bild 2, 3 und 4) können Experten in der Materie das Mikroprogramm erstellen, das die Vorgänge des oben genannten Mikroprozessors zum Aufbau des Echokompensators steuert, der den Gegenstand der vorliegenden Erfindung bildet.
Claims (15)
1. Verfahren zur adaptiven digitalen Löschung des in
Fernsprechverbindungen mit zeitvarianten Eigenschaften erzeugten Echos, das
die folgenden Phasen enthält:
- Abschätzung der reinen Übertragungsverzögerung INDX zwischen
dem Sprachsignal x(t) eines sprechenden Teinehmers am fernen
Ende und einem durch Reflexion seiner Stimme in Richtung des
sprechenden Teilnehmers am fernen Ende entstandenen Echosignais d(t),
wobei t eine mit der Abtastfrequenz fc diskretisierte zeitliche Variable der
Signale x(t)( und d(t) ist.;
- nichtrekursive digitale Filterung mit den adaptiven Koeffizienten (ci) der
durch den Wert der genannten Übertragungsverzögerung INDX
verzögerten Sprachabtastwerte des sprechenden Teilnehmers am fernen
Ende zur Erzeugung eines geschätzten Signals (t) des Echos d(t); dabei
werden die genannten adaptiven Koeffizienten (ci) bei jeder Iteration durch
algebraische Addition eines geeigeneten, während der vorliegenden
Iteration berechneten und dem Wert des Restechos e(t) proportionalen
Korrekturfaktors zu dem Wert, den sie bei einer unmittelbar vorhergenden
Iteration hatten, iterativ auf den neuesten Stand gebracht.
- Subtraktion des genannten geschätzten Signals (t) von dem Echosignal
d(t) zur Erstellung des zum sprechenden Teilnehmer am fernen Ende
übertragenen Restechosignals e(t) ohne die auf das Echo d(t)
zurückzuführenden Auswirkungen; wobei die Frequenz der
nichtrekursivem digitalen Filterung, der Iterationen zur Aktualisierung der
genannten Koeffizienten ci, sowie der Subtraktionsvorgänge zur Erstellung
des genannten Restechos e(t) einen Wert hat, der ein Vielfaches M der
genannten Abtastfrequenz fc beträgt.
2. Verfahren zur digitalen Echokompensation nach Anspruch 1,
dadurch charakterisiert, daß die genannte digitale Filterung durch
Multiplikation des transponierten Vektors N(t) einschließlich einerAnzahl N der
genannten adaptiven Koeffizienten (ci) mit einem Eingangsvektor N(t'),
einschließlich einer identischen Anzahl N der genannten, durch die genannte
Übertragungsverzögerung INDX des Echopfads verzögerten Sprachabtastwerte
x(t') des sprechenden Teilnehmers am fernen Ende, wobei t' = t - INDX ist.
3. Verfahren zur digitalen Echokompensation nach Anspruch 2,
dadurch charakterisiert, daß der genannte Korrekturfaktor, der den
Koeffizientenvektor N(t) iterativ auf den neusten Stand bringt, den folgenden
Ausdruck hat: (Δ / )XN(t)e(t,j), dabei istj ein Index, der bei jeder Iteration
erhöht wird, e(t, j) das genannte bei jeder j-ten Iteration berechnete Restecho
e(t) und Δ = 1/N und die Varianz des Sprachsignals x(t).
4. Verfahren zur digitalen Echokompensation nach Anspruch 2,
dadurch charakterisiert, daß der Eingangsvektor N(t) in jeder Abtastperiode
mit der Frequenz fc aktualisiert wird, wobei ein Abtastwert x(t'N) vom
zugehörigen Vektor eliminiert, die restlichen Abtastwerte um eine Position
verschoben und ein Abtastwert x(t'1) am Kopfende der verbleibenden N-1
Abtastwerte des sprechenden Teilnehmers am fernen Ende eingelesen wird;
und dadurch, daß auf einen neuen Echoabtastwert d(t) zur iterativen
Berechnung des Koeffizientenvektors N(t) zugegriffen wird, sowie auf einen
Abtastwert e(t, M) des Restechos, das bei der Iteration der gegenwärtigen
Aktualisierung j = M berechnet und zum sprechenden Teilmeher am fernen
Ende übertragen wird.
5. Verfahren zur digitalen Echokompensation nach Anspruch 1,
dadurch charakterisiert, daß das genannte Vielfache M eine gerade Zahl
gleich oder größer als 2 ist.
6. Verfahren zur digitalen Echokompensation nach Anspruch 1,
dadurch charakterisiert, daß die genannte Übertragungsdämpfung INDX des
Echopfades zu Beginn jeder neuen Fernsprechverbindung zwischen zwei
Teilnehmern berechnet wird und später nur dann neu berechnet wird, wenn der
Pegel des genannten Restechos e(t) einen geeigneten Schwellenwert
überschreitet.
7. Echokompensator für das in nichtstationären Fernsprechverbindugen
erzeugte Echo, einschließlich:
- Einrichtungen (RIT), die die Übertragungsverzögerung INDX zwischen einem
vom sprechenden Teilnehmer am fernen Ende erzeugten Signal x(t) und
einem durch Reflexion der eigenen Stimme in Richtung des sprechenden
Teilnehmers am fernen Ende erzeugten Echosignal d(t) abschätzen, wobei t
eine mit der Abtastfrequenz fc der Signale x(t) und d(t) diskretisierte zeitliche
Variable darstellt;
- Einrichtungen (VET), die einen Eingangsvektor N(t') erzeugen, der aus einer
Anzahl von N Sprachabtastwerten x(t') des sprechenden Teilnehmers am fernen
Ende bestehen, wobei t' gleich t - INDX ist;
- Einrichtungen (CAC), die einen adaptiven Koeffizientenvektor N(t) erzeugen,
wobei N die Anzahl der genannten Koeffizienten (ci) darstellt, und den
genannten Vektor dadurch iterativ aktualisieren, daß zu jedem iterationwert der
vorhergehenden Iteration alebraisch ein geeigneter Korrektionsfaktor addiert
wird, der einem bei der gegenwärtigen Iteration berechneten Restecho e(t)
proportional ist;
- Einrichtungen zur nichtrekursiven digitale Filterung (FTR), die eine Reihe von
Abtastwerten eines geschätzten Signals (T) erzeugt, die durch Multiplikation
des transponierten Koeffizientenvektors N(t) mit dem genannten
Eingangsvektor N(t') berechnet werden;
- Subtraktionseinrichtungen (SOT), die die Abtastwerte des genannten
abgeschätzten Signals (t) von denen des Echosignais d(t) abziehen, wodurch
Abtastwerte des genannten Restechosignals e(t) entstehen, die ohne die auf
das Echo d(t) zurückzuführenden Störungen an den sprechenden Teilnemer am
fernen Ende übertragen werden;
- Zeitgebereinrichtungen (CIR), die ein Taktsignal Mfc mit einer Frequenz
erzeugen, die ein Vielfaches des Wertes M der Abtastfrequenz fc beträgt, wobei
das Signal Mfc die genannten Enrichtungen (CAC) zur Erzeugung des adaptiven
Koeffizientenvektors N(t), die genannten nichtrekursiven Filtereinrichtunge n
(FTR) und die genannten Subtraktionseinrichtungen (SOT) steuert.
8. Echokompensator nach Anspruch 7, dadurch gekennzeichnet, daß die
genannten Zeitgebereinrichtungen (CIR) zur Erzeugung des Signals Mfc einen Zähler
für die genannten Aktualisierungsiterationen enthalten, dessen Zählerwert einem
durch das Taktignal Mfc ehöhten Index j entspricht und der nach jeder Abtastperiode
bis zur Frequenz fc auf Nullgestellt wird, dadurch, daß für j = M die genannten
Zeitgebereinrichtungen (CIR) die Aussendung eines Restechos e(t,M) zum
sprechenden Teilnehmer am fernen Ende steuern, wobei e(t,M) das bei der dem Wert
j = M entsprechenden Iteration berechnete Restecho e(t) darstellt.
9. Echokompensator nach Anspruch 7, dadurch gekennzeichnet, daß die
genannten Einrichtungen (CAC) zur Aktualisierung des adaptiven
Koeffizientenvektors N(t) folgendes enthalten:
- ein durch die gennannten Taktsignale Mfc synchronisiertes Speicherregister,
das am Ende jeder Iteration zur Aktualisierung des Vektors Ö N(t) die
aktualisierten Werte des genannten Vektors speichert;
- ein durch das genannte Taktsignal Mfc synchronisierter Multiplizierer, der den
genannten Eingang svektor N(t) mit einem Multiplikationsausdruck
(Δ / )e(t,j) multipliziert, wobei e(t,j) das genannte bei der j-ten Iteration
berechnete Restecho e(t) und Δ = 1/N und die Varianz des Sprachsignals
x(t) darstellen, wobei der genannte Multiplizierer den gennannten
Korrektionsfaktor erzeugt, der den Koeffizientenvektor N(t) aktualisiert;
- ein durch das genannte Taktsignal Mfc synchronisierter Addierer, der den Inhalt
des genannten Speicherregisters zu dem genannten Korrekturfaktor addiert,
wodurch der genannte Koeffizientenvektor aktualisiert wird.
10. Echokompensator nach Anspruch 7, dadurch gekennzeichnet, daß
die genannten den Eingangsvektor N(t') erzeugenden Einrichtungen (VET) ein
Schieberegister mit N Speicherzellen zur Speicherung des genannten
Eingangsvektors enthalten, und worin ein Einlesesignal mit der Frequenz fc die
Verschiebung um eine Position des Inhalts der genannten Zellen synchronisiert,
mit Verlust des ältesten Abtastwertes und Einlesen eines neuen Abtastwertes in
das genannte Schieberegister.
11. Echokompnsator nach Anspruch 7, dadurch gekennzeichnet, daß
dieser auch folgendes enthält:
- Einrichtungen (CNL) zur Unterdrückung des Restechos, die Abtastwerte
des Restechos e(t) mit einem ersten, direkt mit dem Signalpegel x(t)
korrelierten Schwellenwert vergleichen und das genannte Restecho e(t)
nur dann zum sprechenden Teilnehmer am fernen Ende durchlassen,
wenn der genannte erste Schwellenwert überschritten wird;
- Einrichtungen (RDC), die auf einer Fernsprechleitung (L4) das
gleichzeitige Vorhandensein von Sprachsignalen der sprechenden
Teilnehmer am nahen und am fernen Ende erkennen können und im Falle
von Doppelsprechen ein Signal (INT) erzeugen, das die Aktualisierung des
Koeffizientenvektors N(t) und die Unterdrückung des Restechos sperrt.
12. Echokompensator nach Anspruch 7, dadurch gekennzeichnet, daß
die genannten Einrichtungen (RIT) zur Abschätzung der
Übertragungsverzögerung INDX des Echos die genannte Verzögerung bei
Beginn jeder neuen Fernsprechverbindung berechnen und sie nur dann erneut
berechnen, wenn der Pegel des genannten Restechos e(t) einen zweiten
Schwellenwert überschreitet.
13. Echokompensator nach Anspruch 7, dadurch gekennzeichnet, daß das
genannte Vielfache M eine ganze Zahl ist, die gleich oder größer als als 2 ist.
14. Echokompensator nach einem der Ansprüche 7 bis 13, dadurch
gekennzeichnet, daß er mit Hilfe eines Mikroprozessors aufgebaut ist.
15. Echokompensator, der das Verfahren mit einem der Ansprüche 1 bis
6 verwirklicht, dadurch gekennzeichnet, daß er mit Hilfe eines Mikroprozessors
aufgebaut ist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
ITMI920398A IT1254819B (it) | 1992-02-24 | 1992-02-24 | Procedimento e dispositivo per la cancellazione numerica adattativa dell'eco generato in collegamenti telefonici non stazionari |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69310240D1 DE69310240D1 (de) | 1997-06-05 |
DE69310240T2 true DE69310240T2 (de) | 1997-10-09 |
Family
ID=11362103
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69310240T Expired - Lifetime DE69310240T2 (de) | 1992-02-24 | 1993-02-12 | Verfahren und Anordnung zur adaptiven digitalen Löschung des in Fernsprechverbindungen mit zeitvarianten Eigenschaften erzeugten Echos |
Country Status (7)
Country | Link |
---|---|
US (1) | US5414766A (de) |
EP (1) | EP0557829B1 (de) |
AT (1) | ATE152557T1 (de) |
DE (1) | DE69310240T2 (de) |
ES (1) | ES2101147T3 (de) |
GR (1) | GR3024103T3 (de) |
IT (1) | IT1254819B (de) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2576767B2 (ja) * | 1993-09-10 | 1997-01-29 | 日本電気株式会社 | エコー消去方法およびエコーキャンセラ |
US5457684A (en) * | 1993-12-21 | 1995-10-10 | At&T Ipm Corp. | Delay-less signal processing arrangement for use in an ATM network |
FI935834A (fi) * | 1993-12-23 | 1995-06-24 | Nokia Telecommunications Oy | Menetelmä kaikukohtaan sovittautumiseksi kaiunpoistajassa |
US5535194A (en) * | 1994-07-14 | 1996-07-09 | Motorola, Inc. | Method and apparatus for echo canceling with double-talk immunity |
DE4426226A1 (de) * | 1994-07-23 | 1996-01-25 | Philips Patentverwaltung | Schaltungsanordnung zum Übertragen von codierten Sprachsignalen |
US5600718A (en) * | 1995-02-24 | 1997-02-04 | Ericsson Inc. | Apparatus and method for adaptively precompensating for loudspeaker distortions |
US5680450A (en) * | 1995-02-24 | 1997-10-21 | Ericsson Inc. | Apparatus and method for canceling acoustic echoes including non-linear distortions in loudspeaker telephones |
US5587998A (en) * | 1995-03-03 | 1996-12-24 | At&T | Method and apparatus for reducing residual far-end echo in voice communication networks |
JPH08251082A (ja) * | 1995-03-13 | 1996-09-27 | Sony Corp | エコー除去装置 |
US5577027A (en) * | 1995-04-18 | 1996-11-19 | Intel Corporation | Apparatus and method for effectively eliminating the echo signal of transmitting signal in a modem |
US5636272A (en) * | 1995-05-30 | 1997-06-03 | Ericsson Inc. | Apparatus amd method for increasing the intelligibility of a loudspeaker output and for echo cancellation in telephones |
US5664011A (en) * | 1995-08-25 | 1997-09-02 | Lucent Technologies Inc. | Echo canceller with adaptive and non-adaptive filters |
US5675644A (en) * | 1995-09-26 | 1997-10-07 | Qualcomm Incorporated | Method and apparatus for canceling echo accounting for delay variations |
US5805480A (en) * | 1997-07-03 | 1998-09-08 | National Semiconductor Corporation | Rotationally predictive adaptive filter |
US6031908A (en) * | 1997-11-14 | 2000-02-29 | Tellabs Operations, Inc. | Echo canceller employing dual-H architecture having variable adaptive gain settings |
US6181791B1 (en) * | 1998-01-06 | 2001-01-30 | Stmicroelectronics, Inc. | Apparatus and method for reducing local interference in subscriber loop communication system |
AU4492100A (en) * | 1999-04-22 | 2000-11-10 | Broadcom Corporation | Gigabit ethernet with timing offsets between the twisted pairs |
SE516143C2 (sv) * | 1999-05-10 | 2001-11-26 | Ericsson Telefon Ab L M | Skattning av ren fördröjning |
EP1117191A1 (de) * | 2000-01-13 | 2001-07-18 | Telefonaktiebolaget Lm Ericsson | Verfahren zur echounterdruckung |
ATE408933T1 (de) | 2000-01-25 | 2008-10-15 | Aware Inc | System und verfahren zur anwendung von einem lms verfahren zur aktualisierung eines echounterdrückers in einem adsl modem |
DE10055375A1 (de) * | 2000-11-08 | 2002-05-23 | Infineon Technologies Ag | Auswerteschaltung für Wechselspannungsimpulse |
US6963643B1 (en) * | 2002-06-14 | 2005-11-08 | Xilinx, Inc. | Method and apparatus for canceling echo in a telephone communication system |
AU2003233019A1 (en) * | 2002-06-19 | 2004-01-06 | Koninklijke Philips Electronics N.V. | Non stationary echo canceller |
BR0313259A (pt) * | 2002-08-06 | 2005-06-14 | Siemens Ag | Processamento de erros de informações úteis recebidas através de uma rede de comunicação |
US7043208B2 (en) * | 2002-10-15 | 2006-05-09 | Motorola, Inc. | Method and apparatus to reduce interference in a communication device |
US8077782B2 (en) * | 2005-01-11 | 2011-12-13 | Sharp Kabushiki Kaisha | Adaptive modulation control apparatus and wireless communication apparatus |
CN101026659B (zh) * | 2006-02-23 | 2010-04-07 | 中兴通讯股份有限公司 | 一种回声延时定位的实现方法 |
KR100758206B1 (ko) * | 2006-09-14 | 2007-09-12 | 주식회사 쏠리테크 | 반향성분 제거 시스템 및 반향성분 제거방법 |
US8369511B2 (en) * | 2006-12-26 | 2013-02-05 | Huawei Technologies Co., Ltd. | Robust method of echo suppressor |
US7928392B1 (en) * | 2009-10-07 | 2011-04-19 | T-Ray Science Inc. | Systems and methods for blind echo cancellation |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL8102225A (nl) * | 1981-05-07 | 1982-12-01 | Philips Nv | Inrichting voor het compenseren van echosignalen. |
IT1208769B (it) * | 1983-10-12 | 1989-07-10 | Cselt Centro Studi Lab Telecom | Teristiche varianti nel tempo procedimento e dispositivo per la cancellazione numerica dell eco generato in collegamenti con carat |
DE3784490T2 (de) * | 1987-04-22 | 1993-09-16 | Ibm | Echokompensationseinrichtung mit korrektur von phasenabweichungen. |
US4813073A (en) * | 1987-07-02 | 1989-03-14 | Codex Corporation | Echo cancellation |
FR2629293A1 (fr) * | 1988-03-25 | 1989-09-29 | Trt Telecom Radio Electr | Annuleur d'echo pour signal d'echo a phase variable |
IT1228106B (it) * | 1988-12-21 | 1991-05-28 | Sits Soc It Telecom Siemens | Procedimento e dispositivo per la cancellazione numerica adattativa dell'eco generato in collegamenti telefonici con caratteristiche varianti nel tempo |
EP0403716B1 (de) * | 1989-06-22 | 1995-09-13 | International Business Machines Corporation | Echokompensationseinrichtung mit Anpassung der Echokompensationskoeffizienten während der Vollduplexübertragung |
-
1992
- 1992-02-24 IT ITMI920398A patent/IT1254819B/it active IP Right Grant
-
1993
- 1993-02-12 ES ES93102255T patent/ES2101147T3/es not_active Expired - Lifetime
- 1993-02-12 DE DE69310240T patent/DE69310240T2/de not_active Expired - Lifetime
- 1993-02-12 AT AT93102255T patent/ATE152557T1/de not_active IP Right Cessation
- 1993-02-12 EP EP93102255A patent/EP0557829B1/de not_active Expired - Lifetime
- 1993-02-23 US US08/021,522 patent/US5414766A/en not_active Expired - Lifetime
-
1997
- 1997-07-15 GR GR970401754T patent/GR3024103T3/el unknown
Also Published As
Publication number | Publication date |
---|---|
ITMI920398A1 (it) | 1993-08-24 |
ITMI920398A0 (it) | 1992-02-24 |
IT1254819B (it) | 1995-10-11 |
DE69310240D1 (de) | 1997-06-05 |
EP0557829A3 (en) | 1995-08-02 |
EP0557829A2 (de) | 1993-09-01 |
GR3024103T3 (de) | 1997-10-31 |
EP0557829B1 (de) | 1997-05-02 |
ATE152557T1 (de) | 1997-05-15 |
ES2101147T3 (es) | 1997-07-01 |
US5414766A (en) | 1995-05-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69310240T2 (de) | Verfahren und Anordnung zur adaptiven digitalen Löschung des in Fernsprechverbindungen mit zeitvarianten Eigenschaften erzeugten Echos | |
DE69734932T2 (de) | Schätzung der verzögerung auf einem echopfad | |
DE69019197T2 (de) | Echokompensator mit FIR und IIR Filtern für Kompensation von Echos mit langem Ausschwingen. | |
DE69533375T2 (de) | Echokompensator und Echopfadschätzungsverfahren | |
DE69427770T2 (de) | Verfahren zur bestimmung der echolage in einem echokompensator | |
DE69633458T2 (de) | Verfahren und gerät zur echounterdrückung unter verwendung der leistungsschätzung des restsignals | |
DE69316065T2 (de) | Interferenzlöscher mit vorwärtsgekoppeltem Transversalfilter mit geschalteten Abgriffkoeffizienten | |
DE69033576T2 (de) | Echokompensator | |
DE69532394T2 (de) | Verfahren und Vorrichtung zur Echokompensation mit Anwendung der "fast projection scheme" | |
DE3880228T2 (de) | Digitaler Echokompensator. | |
DE69110700T2 (de) | Akustischer Teilband-Echokompensator. | |
DE2207141C3 (de) | Schaltungsanordnung zur Unterdrückung unerwünschter Sprachsignale mittels eines vorhersagenden Filters | |
DE69700593T2 (de) | Verfahren und anordnung zur durchführung von echokompensation in einem übertragungsnetzwerk unter verwendung eines gemischten adaptiven balancefilters nach dem verfahren des kleinsten quadratischen fehlers | |
DE2727242B2 (de) | Schaltungsanordnung für simultane Zweiwegdatenübertragung über Zweidrahtverbindungen | |
DE69512540T2 (de) | Verfahren und Einrichtung zur Analyse eines Echosignals und adaptiver Echokompensator welcher diese anwendet | |
DE69535121T2 (de) | Echokompensator und dessen lernverfahren | |
DE3405010A1 (de) | Vorrichtung zur erzeugung eines verzoegerungsschaetzwertes fuer eine echoausloescheinrichtung | |
DE69821662T2 (de) | Echokompensator zum Gebrauch in einem Übertragungssystem | |
DE69801083T2 (de) | Adaptives Filter | |
DE2734941C2 (de) | Echoauslöscheinrichtung | |
DE3113394C2 (de) | Verfahren und Vorrichtung zur adaptiven Echokompensation bei einer Zweidraht-Vollduplexübertragung | |
DE69225268T2 (de) | Endgerät für Vollduplexdatenübertragung mit Echokompensator | |
DE68905782T2 (de) | Verfahren und anordnung zur adaptiven digitalen loeschung des im fernsprechverbindungen mit zeitvarianten eigenschaften erzeugten echos. | |
DE3145419C2 (de) | ||
DE102007018585B4 (de) | Vorrichtung und Verfahren zur Ermittlung und Kompensation von Störsignalen in einem Nachrichtenübertragungssystem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8328 | Change in the person/name/address of the agent |
Free format text: DERZEIT KEIN VERTRETER BESTELLT |
|
R071 | Expiry of right |
Ref document number: 557829 Country of ref document: EP |