DE3881883T2 - Digitales Filter für einen Sigma-Delta-Dekoder. - Google Patents

Digitales Filter für einen Sigma-Delta-Dekoder.

Info

Publication number
DE3881883T2
DE3881883T2 DE88480022T DE3881883T DE3881883T2 DE 3881883 T2 DE3881883 T2 DE 3881883T2 DE 88480022 T DE88480022 T DE 88480022T DE 3881883 T DE3881883 T DE 3881883T DE 3881883 T2 DE3881883 T2 DE 3881883T2
Authority
DE
Germany
Prior art keywords
clock
output
accumulator
digital
frequency
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 - Fee Related
Application number
DE88480022T
Other languages
English (en)
Other versions
DE3881883D1 (de
Inventor
Maurice Cukier
Daniel Mauduit
Gerard Orengo
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Application granted granted Critical
Publication of DE3881883D1 publication Critical patent/DE3881883D1/de
Publication of DE3881883T2 publication Critical patent/DE3881883T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03HIMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
    • H03H17/00Networks using digital techniques
    • H03H17/02Frequency selective networks
    • H03H17/06Non-recursive filters
    • H03H17/0621Non-recursive filters with input-sampling frequency and output-delivery frequency which differ, e.g. extrapolation; Anti-aliasing
    • H03H17/0628Non-recursive filters with input-sampling frequency and output-delivery frequency which differ, e.g. extrapolation; Anti-aliasing the input and output signals being derived from two separate clocks, i.e. asynchronous sample rate conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/02Speed or phase control by the received code signals, the signals containing no special synchronisation information
    • H04L7/033Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)

Description

  • Die Erfindung betrifft Analog-Digital-Umsetzer und, genauer gesagt, ein digitales Filter für einen Sigma-Delta-Analog-Digital- Umsetzer, der im Empfangsteil eines Modems eingesetzt wird.
  • In Datenübertragungssystemen, in denen Daten in Form von analogen Signalen über Telefonleitungen übertragen werden, werden die zu übertragenden digitalen Daten im allgemeinen durch Modulationszustände eines Trägersignals dargestellt. Das Trägersignal wird von einem Modulator auf der Senderseite moduliert und von einem Demodulator auf der Empfängerseite demoduliert, wobei die Modulator-/Demodulator-Funktionseinheit als Modem bezeichnet wird.
  • Bei den heutigen Modems erfolgt die gesamte Modulation digital und wird von einem Signalprozessor gesteuert. Die digitalen Abtastwerte der Trägerfrequenz müssen dann in analoge Signale umgesetzt werden, damit sie über analoge Telefonleitungen übertragen werden können. Diese Umsetzung erfolgt im allgemeinen in einem Digital-Analog-Umsetzer (DAU), wobei solch ein Umsetzer beispielsweise auf dem Verfahren der sukzessiven Approximation basiert. Jedoch geht man immer mehr dazu über, diese Art Umsetzer durch Sigma-Delta-Umsetzer zu ersetzen, die es möglich machen, analoge Komponenten durch gleichwertige digitale Komponenten zu ersetzen, die sich für eine VLSI-Ausführung eignen.
  • Die auf der Telefonleitung empfangenen analogen Signale werden in digitale PCM-Abtastwerte umgesetzt, die dann vom Signalprozessor des Modems decodiert werden. Die PCM-Abtastrate am Ausgang des Analog-Digital-Umsetzers muß phasengleich mit dem Sendetakt des fernen Modems bleiben, der für die Synchronisation der von dem fernen Modem empfangenen analogen Signale verwendet wird. Die Frequenz des Sendetakts dieses fernen Modems kann anders sein als die Basisfrequenz des Quarzoszillators, der alle in dem Modem benötigten Frequenzen liefert, insbesondere auch die Frequenz des PCM-Abtasttaktes. Mit Hilfe eines phasenstarren Oszillators wird der aktuelle Sendetakt des fernen Modems synchron verfolgt, um die Abtastfrequenz einzustellen, indem der PCM-Abtasttakt im Bedarfsfall einfach verlangsamt oder beschleunigt wird.
  • Während die mit Hilfe des phasenstarren Oszillators vorgenommenen Korrekturen die Funktion der herkömmlichen Analog-Digital- Umsetzer nicht beeinträchtigen, führen sie jedoch zu einem Fehler am digitalen Ausgang der Sigma-Delta-Umsetzer. Ein Sigma- Delta-Umsetzer besteht aus zwei Teilen, einem analogen Teil, der die auf der Telefonleitung empfangenen analogen Signale in eine fortlaufende Folge von Bits mit einer hohen Frequenz umsetzt, und einem digitalen Filter, das die PCM-Abtastwerte in Form von Wörtern mit einer niedrigen Frequenz als Reaktion auf die fortlaufende Folge von Bits erzeugt. Wenn durch den phasenstarren Oszillator eine Korrektur vorgenommen wird, indem die PCM-Abtastzeit verkürzt oder verlängert wird, zieht diese Korrektur einen fehlerhaften PCM-Abtastwert nach sich, der am Ausgang des digitalen Filters ausgegeben wird.
  • Ein digitales Filter, das in einem Sigma-Delta-Umsetzer eingesetzt werden kann, wird in dem Artikel "A Novel Architecture Design for VLSI Implementation of an FIR Decimation Filter" von H. Meleis, ATT Laboratories, beschrieben, der 1985 in IEEE, Seite 1380, veröffentlicht wurde. Es führt die Dezimierung eines 1- Bit-Codes bei 1024 kHz eines Sigma-Delta-Modulationsausgangs doppelter Integration auf PCM-Abtastwerte mit 16 kHz aus. Das Ansprechverhalten des Filters beträgt Sinc³(f), was eine Abschwächung bei der Modulation ermöglicht, die mittels doppelter Integration erzeugt wird. Die Ausführung dieses Filters erfordert die Generierung der Koeffizienten im Laufe von 192 Eingangssignalwerten (1024/16 x 3) in drei Akkumulatoren sowie die Ausführung der Faltungsoperation, indem die Koeffizienten akkumuliert werden, wenn der binäre Eingangswert gleich 1 ist. Der PCM-Abtastwert wird jeweils nach 64 Eingangssignalwerten der Reihe nach am Ausgang eines Akkumulators erzeugt. Gehen wir, wie oben erwähnt, davon aus, daß die PCM-Abtastrate am Ausgang des Filters nicht mehr phasengleich mit dem Sendetakt des fernen Modems ist. Obwohl es in dem Artikel nicht vorgesehen ist, kann eine Korrektur durch einen phasenstarren Oszillator vorgenommen werden, indem die PCM-Abtastzeit verkürzt oder verlängert wird. In diesem Fall wird entweder ein Koeffizient mehr oder ein Koeffizient weniger in einem der Akkumulatoren akkumuliert, was zu einem fehlerhaften PCM-Abtastwert am Ausgang führt.
  • Daher ist es die Aufgabe der Erfindung, ein verbessertes digitales Filter für einen in einem Modem eingesetzten Sigma-Delta- Umsetzer zu entwickeln, das so ausgelegt ist, daß es einen fehlerhaften PCM-Wert am Ausgang verhindert, wenn eine Korrektur durch den phasenstarren Oszillator vorgenommen wird, um den Takt, der die Ausgabe der PCM-Abtastwerte von dem digitalen Filter steuert, zu verlangsamen oder zu beschleunigen.
  • Dementsprechend ist es die Aufgabe der Erfindung, ein digitales Filter zu entwickeln, das digitale Eingangssignale mit einer Taktrate eines ersten Taktes mit einer Frequenz F empfängt und digitale Ausgangssignale mit einer Taktrate eines zweiten Taktes mit einer Frequenz f, die ein Teiler von F ist, bereitstellt, wobei der Takt mit einer Frequenz f verlangsamt oder beschleunigt wird, wenn er nicht mehr synchron mit dem Schrittakt der Gegenstation ist, das Filter eine endliche Impulsantwort aufweist sowie eine Anzahl von Abgriffen, die ein Vielfaches X vom Verhältnis N zwischen F und f ist, und das Filter einen letzten Nullstellenabgriff aufweist. Ein solches Filter besteht aus vielen Akkumulatoren, deren Anzahl gleich dem Vielfachen X ist, um bei jedem Impuls des Taktes F das Produkt eines vorher festgelegten Eingangssignalwertes mit einem vorher festgelegten Abgriffskoeffizienten, je nach dem beteiligten Akkumulator, hinzuzufügen, ferner aus einer Aufbereitungsschaltung, um während eines jeden Zyklus des Taktes F das Produkt des Eingangssignalwertes mit dem Abgriffskoeffizienten in jeden einzelnen der vielen Akkumulatoren zu laden, einer Ausgangsschaltung, um ein digitales Ausgangssignal mit einer Taktrate f bereitzustellen, indem der Inhalt eines jeden Akkumulators mit der Taktrate f nacheinander ausgegeben wird, sowie einer Ansteuerungsschaltung, um den Akkumulator, dessen Inhalt als digitales Ausgangssignal ausgegeben wurde, als den durch die Aufbereitungsschaltung zuerst zu ladenden Akkumulator anzusteuern, wodurch das letzte auszugebende Produkt, das im Akkumulator akkumuliert wird, immer Null ist, so daß das entsprechende Zeitintervall zur Einstellung der Frequenz F genutzt werden kann.
  • Die Einzelheiten einer bevorzugten Ausführung der Erfindung lassen sich anhand der folgenden Beschreibung ohne weiteres verstehen, wenn diese in Verbindung mit den beigefügten Zeichnungen gelesen wird, wobei
  • Figur 1 eine Prinzipskizze eines Sigma-Delta-Analog-Digital-Umsetzers ist;
  • Figur 2 eine Funktionsübersicht eines digitalen Filters ist, worin die vorliegende Erfindung implementiert ist;
  • Figur 3 ein Diagramm ist, welches das Impulsverhalten eines digitalen Filters des Typs Sinc³ darstellt;
  • Figur 4 ein Blockdiagramm eines Dezimierungsfilters ist, in dem die Erfindung integriert ist;
  • Figur 5 ein Blockdiagramm ist, das den logischen Schaltungsaufbau darstellt, mittels dem die für den Betrieb des in Figur 4 abgebildeten Filters erforderlichen Signale erzeugt werden;
  • Figur 6 eine Prinzipskizze eines Zustandsgenerators ist, der den im logischen Schaltungsaufbau von Figur 5 integrierten Zykluszähler implementiert;
  • Figur 7 eine Prinzipskizze eines Zustandsgenerators ist, der den im logischen Schaltungsaufbau von Figur 5 integrierten Fensterzähler implementiert;
  • Figur 8 ein Blockdiagramm ist, das den im logischen Schaltungsaufbau von Figur 5 integrierten Logikblock darstellt, um alle Signale zu erzeugen, die den Betrieb des Dezimierungsfilters gemäß der Erfindung steuern.
  • Bezugnehmend auf Figur 1, wird das analoge, von der Telefonleitung empfangene Signal vom Sigma-Delta-Codierer 10 in eine fortlaufende Folge von Bits mit einer hohen Frequenz F umgesetzt, die in der vorliegenden Ausführung 864 kHz beträgt. Dann erzeugt ein digitales, der Erfindung entsprechendes Filter 12 PCM-Wörter, die in das Register 14 geladen und mit einer Frequenz f = 14,4 kHz abgetastet werden, um vom Signalprozessor 16 des Modems weiterverarbeitet werden zu können. Es wird davon ausgegangen, daß die Wörter eine Wortlänge von 16 Bit haben, doch ist dies kein bedeutendes Merkmal der Erfindung.
  • Da der Sigma-Delta-Codierer 10 nicht zur Erfindung gehört, wird er hier nicht im Detail beschrieben. Eine Beschreibung eines Sigma-Delta-Codierers, der in der Erfindung eingesetzt werden könnte, findet sich in dem Artikel "A Unity Bit Coding Method by Negative Feedback", der im November 1963 in Proceedings IEEE, Jahrgang 51, Seiten 1524-1535 veröffentlicht wurde, sowie in dem Artikel "A Use of Double Integration in Sigma-Delta-Modulation", der im Januar 1986 in IEEE Trans. Comm., Jahrgang Com-34, Seiten 72-76 veröffentlicht wurde.
  • Die Takte, die die Frequenzen f und F bereitstellen, werden im allgemeinen aus einem Einzeltakt erzeugt, der alle im Modem benötigten Frequenzen bereitstellt. Dieser Einzeltakt stammt von einem Quarzoszillator. Bei der vorliegenden Erfindung kann ein solcher Modemtakt eine Frequenz von 2,592 MHz aufweisen, die durch 3 geteilt wird, um den Sigma-Delta-Takt (F) mit einer Frequenz von 864 kHz bereitzustellen, und die durch 180 geteilt wird, um den PCM-Abtasttakt mit einer Frequenz von 14,4 kHz zu erzeugen.
  • Die Funktionsweise des digitalen Filters 12 ist in Figur 2 abgebildet. Wenn man davon ausgeht, daß N der Wert ist, der sich aus dem Verhältnis zwischen der Sigma-Delta-Abtastrate und der PCM- Abtastrate ergibt (N wird auch als Dezimierungsfaktor bezeichnet), handelt es sich bei dem Filter um den Typ Sinc³(f), das eine Abschwächung bei der mittels doppelter Integration erzeugten Modulation ermöglicht. Ein solches Filter enthält 3N Koeffizienten, die wie folgt berechnet werden:
  • (1) H(n) = n(n+1)/2 für n = 0... N-1
  • H(n) = N(N+1)/2 + (n-N) (2N-1-n) für n = N... 2N-1
  • H(n) = (3N-n-1) (3N-n)/2 für n = 2N... 3N-1
  • Wie in Figur 2 gezeigt, besteht die Funktion des Filters in der Mittelwertbildung aus 3N Eingangssignalwerten, um jeden PCM-Ausgangssignalwert zu berechnen. Jede Zelle des Filters führt eine Verzögerung von T = 1/F ein. In der Ausführung der Erfindung weist das Filter 12 3 x 864/14,4 = 180 Koeffizienten und eine Verzögerung T = 1/864 ms auf.
  • Der Einfachheit halber gehen wir davon aus, daß im nachstehenden Beispiel N = 4 ist. In diesem Fall hat das Filter 3N = 12 Koeffizienten, von denen 10 ungleich 0 sind. Es handelt sich um die folgenden Koeffizienten:
  • Nehmen wir an, daß S(j) bei j = 1, 2, 3, ... die Abtastwerte (entsprechend der fortlaufenden Folge von Bits) sind, die in das Sigma-Delta-Filter 12 eingegeben werden, und P(j) die PCM-Abtastwerte sind, die am Ausgang des Sigma-Delta-Filters 12 erzeugt werden. Da N = 4, beträgt die Ausgabegeschwindigkeit 4.f, wobei f die Eingabegeschwindigkeit ist, und die PCM-Abtastwerte P(j) werden für j = 4, 8, 12, ... erzeugt.
  • Wie in Tabelle I abgebildet, läßt sich jeder PCM-Abtastwert durch folgende Formel ausdrücken:
  • bei k = 1, 2,... TABELLE I
  • Hieraus geht deutlich hervor, daß jeder Abtastwert S(j) bei der Berechnung von 3 Ausgangssignalwerten eine Rolle spielt. Wie beispielsweise aus Tabelle I hervorgeht, spielt S(10) bei den folgenden Berechnungen eine Rolle:
  • P(12) bei H( 9) = 3
  • P(16) bei H( 5) = 12
  • P(20) bei H( 1) = 1
  • Eine solche Besonderheit geht deutlich aus Figur 3 hervor, in der jede Kurve aus Punkten zusammengesetzt ist, die jeden einzelnen der Filterkoeffizienten H(j) bei j = 0 bis 11 darstellen, wie vorstehend erläutert.
  • Die in Figur 2 abgebildete Ausführung des Filters kann einfacher gestaltet werden, indem man der Tatsache Rechnung trägt, daß die Eingangssignalwerte S(j) nur zwei Werte annehmen: +1 (entsprechend einem Bit 0) und -1 (entsprechend einem Bit 1). Dadurch reduziert sich die Komplexität des Filters, indem jede Multiplikation in eine Addition oder eine Subtraktion geändert wird.
  • Wie oben erwähnt, spielt jeder Eingangssignalwert S(j) bei der Berechnung von drei aufeinanderfolgenden Ausgangssignalwerten eine Rolle: der erste bei der Gewichtung von H(n), der zweite bei H(n+N) und der dritte bei H(n+2N). Daher reichen drei Akkumulatoren für die Ausführung des Filters aus. Während einer Sigma-Delta-Periode muß das Filter drei parallele Operationen ausführen. Diese können auf effiziente Weise ausgeführt werden, indem ein dreimal schnellerer Addierer multiplex genutzt wird. Beispielsweise muß der Addierer in der vorliegenden Ausführung in jedem Intervall des Taktes F = 864 kHz drei Operationen ausführen. Das heißt, daß der Addierer mit der Frequenz des Modemoszillators, 2,592 MHz, arbeitet.
  • Figur 4 zeigt ein Dezimierungsfilter gemäß der vorliegenden Erfindung. Drei Register, 22, 24 und 26, werden während eines jeden Intervalls des Taktes F abwechselnd mit den Indexwerten I&sub1;, I&sub2; und I&sub3; geladen. Tatsächlich wird jedes Intervall des Taktes F in drei Zyklen aufgeteilt, die in der bevorzugten Ausführung Perioden des Modemoszillators mit 2,592 MHz sind.
  • Jedes Indexregister Ii (i = 1, 2 oder 3) wird während einem dieser Zyklen durch Aktivieren des entsprechenden Ladesignals Li geladen. Auf die gleiche Weise wird der Multiplexer 28 durch ein Ansteuersignal Si aktiviert, um ein Register Ii anzusteuern. Normalerweise wird der Wert eines vom Multiplexer 28 angesteuerten Registers bei jedem Zyklus über die Leitung 30 in den Aufwärtszähler/Abwärtszähler 20 eingegeben, wo er erhöht wird, bevor er in das entsprechende Register geladen wird. Die Art und Weise und die Reihenfolge, in der die Ladesignale wie auch die Ansteuersignale aktiviert werden, stellen eines der wesentlichen Merkmale der Erfindung dar und werden nachstehend erläutert.
  • Es ist zu beachten, daß das Impulsverhalten des Sinc³-Filters symmetrisch ist, wie sich aus den Gleichungen (1) ableiten läßt. Somit sind statt 3N Koeffizienten 3N/2 Koeffizienten erforderlich. Daher variieren die lndizes von 0 bis 3N/2-1 und dann von 3N/2-1 bis hinab zu 0, wenn N geradzahlig ist. Wenn N ungeradzahlig ist, variieren die Indizes von 0 bis (3N+1)/2 und dann von (3N-1)/2 bis hinab zu 0. Beispielsweise ist in der bevorzugten Ausführung N = 60, und dementsprechend variieren die Indizes von 0 bis 89 und dann von 89 bis 0. Solch eine Aufwärtszählung/- Abwärtszählung wird vom Aufwärtszähler/Abwärtszähler 20 problemlos durchgeführt.
  • Der vom Multiplexer 28 ausgegebene Indexwert wird als Adresse zum Festspeicher (ROS) 32 verwendet, um den entsprechenden Filterkoeffizienten bereitzustellen. Es sollte beachtet werden, daß in der vorliegenden Ausführung nur 3N/2 Koeffizienten (90 in der bevorzugten Ausführung) gespeichert werden müssen.
  • Wie bereits erläutert, ist der Eingangssignalwert S(j) gleich +1, wenn das entsprechende Sigma-Delta-Bit den Wert 0 hat, und - 1, wenn das Sigma-Delta-Bit den Wert 1 hat. Deshalb wird der vom ROS 32 bereitgestellte Koeffizient in eine Exklusiv-ODER- Logik 34 eingegeben, die auch das Sigma-Delta-Bit als weitere Eingabe erhält. Daher bleibt der Binärwert des Koeffizienten unverändert, wenn das Sigma-Delta-Bit den Wert 0 hat, und wird von der Exklusiv-ODER-Logik 34 ergänzt, wenn das Sigma-Delta-Bit den Wert 1 hat. Der Ausgabewert der Exklusiv-ODER-Logik 34 wird dem Addierer 36 zugeführt, wo er zur Akkumulation des PCM-Abtastwertes verwendet wird, wie nachstehend erläutert wird. An dieser Stelle ist zu beachten, daß ein Sigma-Delta-Bit mit dem Wert "1", für das der Eingangssignalwert S(j) gleich -1 ist, auch als Übertrag für den Addierer 36 verwendet wird, um einen Binärwert zu erhalten, der den invertierten Wert des entsprechenden, vom ROS 32 ausgegebenen Koeffizienten darstellt.
  • Wie bei den Indexregistern 22, 24 und 26 werden drei Akkumulatoren, 38, 40 und 42, während eines jeden Intervalls des Taktes F mit dem Ergebnis der vom Addierer 36 ausgeführten Addition abwechselnd geladen. In der gleichen Reihenfolge wie bei den Indexregistern wird der Multiplexer 44 während eines Zyklus durch ein Ansteuersignal Si (i = 1, 2 oder 3) aktiviert, um den Inhalt des Akkumulators ACi auszuwählen, der über die Leitung 46 als Eingabe in den Addierer 36 zurückgeführt wird, wo er zu einem neuen Koeffizienten addiert wird, wenn der Sigma-Delta-Abtastwert 0 beträgt, oder aber zu dem invertierten Koeffizienten, wenn der Sigma-Delta-Abtastwert 1 beträgt.
  • Jetzt, nachdem N Koeffizienten in einem Akkumulator akkumuliert wurden, wird dessen Inhalt als PCM-Abtastwert dem Ausgaberegister 48 zugeführt. Dazu wird ein Ladesignal LD, das mit der PCM- Frequenz f bereitgestellt wird, aktiviert, um den Inhalt des Registers 48 an die Ausgangsleitung 50 aus zugeben und um den neuen PCM-Wert vom dem gerade angesteuerten Akkumulator zu laden. Dann wird dieser Akkumulator durch Aktivieren eines Rücksetzsignals Ri (wobei i die Folgenummer des Akkumulators ist) zurückgesetzt.
  • An dieser Stelle der Beschreibung ist erneut zu beachten, daß die PCM-Abtastrate am Ausgang des Modemumsetzers phasengleich mit dem Sendetakt des fernen Modems bleiben muß. Dies wird dadurch erreicht, daß der Abtasttakt durch einen digitalen phasenstarren Oszillator (PLO) gesteuert wird. Der Phasennachlauf wird einfach dadurch realisiert, daß ein oder mehrere PLO-Schritte von Zeit zu Zeit zum Taktintervall des Abtasttaktes addiert beziehungsweise von diesem subtrahiert werden. Es ist naheliegend, daß eine kleinere PLO-Schrittweite weichere Taktkorrekturen zur Folge hat. Wie vorstehend erwähnt, erfolgt die gesamte Zeitsteuerung des Modems von einem Einzeltakt (eines Quarzoszillators mit einer Frequenz von 2592 kHz in der bevorzugten Ausführung), der eine programmierbare Dividiereinrichtung speist, um den Takt F durch eine erste Teilung durch 3 und den Takt f durch eine Teilung durch N zu erzeugen. Die programmierbare Dividiereinrichtung wird vom Signalprozessor des Modems gesteuert. Wenn eine Korrektur durch den phasenstarren Oszillator erforderlich ist, ändert der Signalprozessor den Standardwert der programmierbaren Dividiereinrichtung. Dadurch können Zyklen des Oszillators hinzugefügt oder übersprungen werden. Sobald die Korrektur vorgenommen wurde, nimmt die programmierbare Dividiereinrichtung wieder ihren Standardwert an.
  • Eine Korrektur durch den phasenstarren Oszillator könnte, wenn am ersten System keine Verbesserung erfolgt ist, zur Akkumulation eines weiteren Koeffizienten oder zum Verlust eines Koeffizienten führen, was einen fehlerhaften PCM-Abtastwert am Ausgang zur Folge hätte. Das wesentliche Merkmal der Erfindung sorgt dafür, daß ein solcher Fehler nicht auftreten kann, wie nachstehend erläutert wird.
  • Wie bereits erwähnt (siehe Gleichungen (1)), werden die Koeffizienten des Filters in drei "Fenster" unterteilt:
  • Fenster 1 H(0), ..., H(N-1)
  • Fenster 2 H(N), ..., H(2N-1)
  • Fenster 3 H(2N), ..., H(3N-1)
  • Außerdem wird, wie in Figur 3 abgebildet, jeder beliebige Eingangssignalwert S(j) mit einem Koeffizienten eines jeden Filterfensters multipliziert.
  • Da der letzte Koeffizient, H(3N-1), gleich 0 ist, ist der PCM- Ausgangssignalwert in dem entsprechenden Akkumulator bereits schon eine Sigma-Delta-Periode (Takt F) verfügbar, bevor er in das Ausgaberegister geladen werden soll. Daher, wenn die letzte Akkumulation mit dem Koeffizienten 0 immer zuletzt ausgeführt wird, werden die Ergebnisse der Rechenoperationen nicht beeinflußt, wenn diese Akkumulation entweder übersprungen wird, wenn eine Korrektur durch den phasenstarren Oszillator das Abtastintervall verkürzt, oder aber zweimal ausgeführt wird, wenn eine Korrektur durch den phasenstarren Oszillator das Abtastintervall verlängert. Dementsprechend werden die Akkumulatoren bei jedem PCM-Abtastimpuls "zyklisch verschoben", und zwar dergestalt, daß die Koeffizienten des Fensters 1 immer zuerst verarbeitet werden, dann die Koeffizienten des Fensters 2 und schließlich die Koeffizienten des Fensters 3, wodurch die letzte Akkumulation des Fensters 3 (die durch eine Korrektur des phasenstarren Oszillators beeinflußt werden kann) immer dem letzten Koeffizienten entspricht, der gleich 0 ist.
  • Die Einzelheiten der Erfindung, die es ermöglichen, daß diese Verarbeitungsfunktion in die Filteroperationen integriert werden kann, werden nun in bezug auf Figur 5 beschrieben.
  • Die in Figur 5 abgebildete Ausführung schließt zwei Zähler ein:
  • einen Zykluszähler 60, der den Sigma-Delta-Takt F vom Oszillator mit der Frequenz 3F erzeugt, und einen Fensterzähler 62, der jedesmal erhöht wird, wenn ein PCM-Abtastwert in das Ausgaberegister geladen wird.
  • Wie bereits erläutert, bestehen die durch den phasenstarren Oszillator vorgenommenen Korrekturen darin, den PCM-Abtasttakt zu beschleunigen oder zu verlangsamen. Das PCM-Taktsignal auf der Leitung 64 wird daher in den Zykluszähler 40 eingegeben, damit dieser den durch den phasenstarren Oszillator vorgenommenen Korrekturen Rechnung tragen kann. Eine Ausführung eines solchen Zykluszählers kann durch Verwendung eines Zustandsgenerators, wie in Figur 6 abgebildet, realisiert werden. Normalerweise ist das PCM-Taktsignal, das während eines Zyklus des Oszillators 3F aktiv ist, schon zwei Zyklen aktiv, bevor der Inhalt eines Akkumulators in das Ausgaberegister 48 von Figur 4 geladen werden soll. Wenn keine Korrektur durch den phasenstarren Oszillator erfolgt, kann das PCM-Taktsignal nur während des Zustands A aktiv sein. In diesem Fall geht das System ohne Unterbrechung vom Zustand A in den Zustand B über, vom Zustand B in den Zustand C und vom Zustand C in den Zustand A. In diesem Fall handelt es sich bei dem Zykluszähler 60 um einen "Teile-durch-3"-Zähler. Es ist zu beachten, daß P in der Figur für das Auftreten des PCM- Taktsignals steht und für das Nicht-Auftreten des PCM-Taktsignals.
  • Wenn durch die vom phasenstarren Oszillator vorgenommene Korrektur ein zusätzlicher Zyklus zu dem Abtastintervall addiert wird - was bedeutet, daß der PCM-Takt verlangsamt wird - ist das PCM-Taktsignal P während des Zustands B aktiv. Das hat zur Folge, daß Zustand C' zur Periode des Zyklbszählers addiert wird. Wenn ein Zyklus von dem Abtastintervall unterdrückt wird - was bedeutet, daß der PCM-Takt beschleunigt wird - ist das PCM- Taktsignal P während des Zustands C aktiv. In diesem Fall werden zwei weitere Zustände, A' und B', zu der Periode des Zykluszählers addiert. Es sollte beachtet werden, daß die Zustände A und A' der Akkumulation der Koeffizienten des Fensters 1 entsprechen, die Zustände B und B' der Akkumulation der Koeffizienten des Fensters 2 und C und C' der Akkumulation der Koeffizienten des Fensters 3. Die durch den phasenstarren Oszillator vorgenommenen Korrekturen beeinflussen nur die Koeffizienten des Fensters 3, indem der Zustand C' addiert oder der Zustand C übersprungen wird.
  • In dem Zustandsgenerator sind nur 3 Zustände erforderlich, da A', B' und C' jeweils mit A, B und C identisch sind. Dies bedeutet, daß lediglich zwei Variable in der Schaltung verwendet werden müssen. Diese Variablen, Q&sub1; und Q&sub2;, können in Verbindung mit den verschiedenen Zuständen die folgenden Werte annehmen:
  • Um dem in Figur 6 abgebildeten Zustandsgenerator zu entsprechen, wird der Zykluszähler 60, der die Ausgabewerte Q&sub1; und Q&sub2; bereitstellt, problemlos durch ein Verfahren bestimmt, das jedoch nicht erläutert wird, da es kein wesentliches Merkmal der Erfindung darstellt.
  • Bei der Decodierschaltung 66 handelt es sich um eine Logikschaltung, die den Wert von A, B und C als Funktion der beiden Variablen Q&sub1; und Q&sub2; bereitstellt, welche die oben erwähnten Binärwerte annehmen. Dementsprechend stellt die Decodierschaltung 43 die folgenden drei Ausgangswerte bereit:
  • A = &sub1; &sub2;
  • B = Q&sub1; &sub2;
  • C = Q&sub1; Q&sub2;
  • Ebenso kann die Ausführung des Fensterzählers 62 durch Verwendung eines Zustandsgenerators, wie in Figur 7 abgebildet, realisiert werden. Er weist die drei Zustände W0, W1 und W2 auf. Das System bleibt im Zustand W0, W1 oder W2, solange es kein PCM- Taktsignal gibt (durch dargestellt), und geht in den nächsten Zustand über, sobald ein PCM-Taktsignal auftritt (durch P dargestellt).
  • Wie bei dem Zustandsgenerator, der den Zykluszähler unterstützt, wird auch der Fensterzähler problemlos durch ein Verfahren bestimmt, das aus dem in Figur 7 abgebildeten Zustandsgenerator resultiert, jedoch nicht erläutert wird, da es kein wesentliches Merkmal der Erfindung darstellt.
  • Da drei Zustände notwendig sind, macht es der Zustandsgenerator, der den Fensterzähler unterstützt, erforderlich, daß zwei Variable in der Schaltung verwendet werden. Diese Variablen, Q&sub3; und Q&sub4;, können in Verbindung mit den verschiedenen Zuständen die folgenden Werte annehmen:
  • Dementsprechend handelt es sich bei der Decodierschaltung 68 um eine Logikschaltung, die den Wert von W0, W1 und W2 als Funktion der beiden Variablen Q&sub3; und Q&sub4; bereitstellt:
  • W0 = &sub3; &sub4;
  • W1 = Q&sub3; &sub4;
  • W2 = &sub3; Q&sub4;
  • Was den Betrieb des in Figur 4 abgebildeten Filters angeht, so wird die Akkumulation, wenn sich der Fensterzähler 62 im Zustand W0 (00) befindet, zuerst im Akkumulator AC1 mit den Koeffizienten des Fensters 1 ausgeführt, dann im Akkumulator AC3 mit den Koeffizienten des Fensters 2 und schließlich im Akkumulator AC2 mit den Koeffizienten des Fensters 3. Wenn sich der Fensterzähler 62 im Zustand W1 (01) befindet, wird die Akkumulation zuerst im Akkumulator AC2 mit den Koeffizienten des Fensters 1, dann im Akkumulator AC1 mit den Koeffizienten des Fensters 2 und schließlich im Akkumulator AC3 mit den Koeffizienten des Fensters 3 ausgeführt. Wenn sich der Fensterzähler im Zustand W2 (10) befindet, wird die Akkumulation zuerst im Akkumulator AC3 mit den Koeffizienten des Fensters 1 ausgeführt, dann im Akkumulator AC2 mit den Koeffizienten des Fensters 2 und schließlich im Akkumulator AC1 mit den Koeffizienten des Fensters 3. Daraus geht hervor, daß der Akkumulator, der zur Akkumulation der Koeffizienten des Fensters 3 zuletzt angesteuert wird und daher den PCM-Abtastwert bereitstellt, als erster Akkumulator verwendet wird (für die Koeffizienten des Fensters l), nachdem das Ergebnis der Akkumulation ausgegeben wurde. Eine solche Regel wird in der folgenden Tabelle II deutlich aufgezeigt. TABELLE II
  • Bei jedem Zustand, W0, W1 und W2, ist der PCM-Abtastwert in dem in dem Kästchen aufgeführten Akkumulator präsent.
  • Wie in Figur 5 abgebildet, wird das PCM-Taktsignal zur Erhöhung des Fensterzählers 62 um zwei Zyklen im Schieberegister 70 verzögert und um drei Zyklen für das Signal LD, durch das ermöglicht wird, daß der PCM-Abtastwert in das Ausgaberegister geladen werden kann, wie später in bezug auf Figur 8 ersichtlich sein wird. Tatsächlich wird der Fensterzähler 62 jedesmal erhöht, wenn ein PCM-Abtastwert ausgegeben wird. Diese Erhöhung wird durch das Auftreten des PCM-Taktsignals initiiert. Da es nicht möglich ist, im Zyklus A unmittelbar auf das Auftreten des PCM-Takts im Zyklus A zu reagieren, wenn keine Korrektur durch den phasenstarren Oszillator erfolgt, und es natürlich auch nicht möglich ist, im Zyklus A zu reagieren, wenn das PCM-Taktsignal im Zyklus B bei verlangsamtem PCM-Taktimpuls auftritt, ermöglicht eine Verzögerung von zwei Zyklen dem Fensterzähler 62, für den Zyklus A bereit zu sein, der dem Auftreten des PCM- Taktsignals folgt.
  • Der logische Schaltungsaufbau (in Figur 5 durch Block 72 dargestellt), mittels dem alle Signale erzeugt werden, welche die Operation des Dezimierungsfilters steuern, ist in Figur 8 detailliert dargestellt.
  • Wie bereits erläutert, wird die UND-Schaltung 80-1 aktiviert, wenn sich der Fensterzähler 62 im Zustand W0 (d.h. W0=1 und W1=W2=0) befindet, wodurch die Koeffizienten des Fensters 1 während des Zyklus A im Akkumulator AC1 akkumuliert werden können, da das Ladesignal L1 mittels der ODER-Schaltung 82 und der UND- Schaltung 84 aktiviert wurde. Es ist zu beachten, daß das Ansteuersignal S1, das die Ansteuerung der Multiplexer 28 und 48 ermöglicht, während des gesamten Zyklus A am Ausgang der ODER- Schaltung 82 anliegt, während das Ladesignal L1, das aus der Kombination dieses Ansteuersignals S1 mit dem Oszillatortakt 3F hervorgeht, erst aktiviert wird, wenn das Signal S1 anliegt. Dieser Zeitunterschied macht es möglich, daß die Indexregister I1, I2, I3 und die Akkumulatoren AC1, AC2, AC3 (siehe Figur 4) angesteuert werden können, bevor sie mit einem neuen Wert geladen werden.
  • Dann wird die UND-Schaltung 92-1 während des Zyklus B aktiviert, wodurch die Koeffizienten des Fensters 2 im Akkumulator AC3 mit der Aktivierung des Ladesignals L3 mittels der ODER-Schaltung 94 und der UND-Schaltung 96 akkumuliert werden können. Wie beim Ansteuersignal S1 wird auch das Ansteuersignal S3 bereits einen halben Zyklus des Taktes 3F vor dem Anliegen des Ladesignals L3 bereitgestellt.
  • Zuletzt wird die UND-Schaltung 86-1 während des Zyklus C aktiviert, wodurch die Koeffizienten des Fensters 3 im Akkumulator AC2 mit der Aktivierung des Ladesignals L2 mittels der ODER- Schaltung 88 und der UND-Schaltung 90 akkumuliert werden können. Am Ausgang der ODER-Schaltung 88 wird das Ansteuersignal S2 bereits einen halben Zyklus des Taktes 3F vor dem Ladesignal L2 bereitgestellt.
  • Die vorstehende Reihenfolge wird wiederholt, solange sich der Fensterzähler 62 im Zustand W0 befindet. Sobald ein PCM-Taktsignal P auftritt, entweder während des Zyklus A (keine Korrektur durch den phasenstarren Oszillator) oder während des Zyklus B (der PCM-Takt wird verlangsamt) oder während des Zyklus C (der PCM-Takt wird beschleunigt), geht der Fensterzähler 62 vom Zustand W0 in den Zustand W1 über (siehe Figur 7). In diesem Zustand wird die UND-Schaltung 86-2 während des Zyklus A zuerst aktiviert, dann die UND-Schaltung 80-2 während des Zyklus B und schließlich die UND-Schaltung 92-2 während des Zyklus C. Diese Reihenfolge ermöglicht die Aktivierung des Ansteuersignals S2 und des Ladesignals L2 (was die Akkumulation des Koeffizienten des Fensters 1 im Akkumulator AC2 zur Folge hat) mittels der ODER-Schaltung 88 und der UND-Schaltung 90, dann die Aktivierung des Ansteuersignals S1 und des Ladesignals L1 (was die Akkumulation des Koeffizienten des Fensters 2 im Akkumulator AC1 zur Folge hat) mittels der ODER-Schaltung 82 und der UND-Schaltung 84 und schließlich die Aktivierung des Ansteuersignals S3 und des Ladesignals L3 (was die Akkumulation des Koeffizienten des Fensters 3 im Akkumulator AC3 zur Folge hat) mittels der ODER- Schaltung 94 und der UND-Schaltung 96.
  • Wiederum geht der Fensterzähler 62 vom Zustand W1 in den Zustand W2 über, sobald ein PCM-Taktsignal auftritt. In diesem Fall wird das Ansteuersignal S3 und das Ladesignal L3 während des Zyklus A zuerst aktiviert (was die Akkumulation des Koeffizienten des Fensters 1 im Akkumulator AC3 zur Folge hat), und zwar mittels der UND-Schaltung 92-3, der ODER-Schaltung 94 und der UND-Schaltung 96. Dann wird das Ansteuersignal S2 und das Ladesignal L2 während des Zyklus B mittels der UND-Schaltung 86-3, der ODER- Schaltung 88 und der UND-Schaltung 90 aktiviert (was die Akkumulation des Koeffizienten des Fensters 2 im Akkumulator AC2 zur Folge hat), und schließlich wird das Ansteuersignal S1 und das Ladesignal L1 während des Zyklus C mittels der UND-Schaltung 80- 3, der ODER-Schaltung 82 und der UND-Schaltung 84 aktiviert (was die Akkumulation des Koeffizienten des Fensters 3 im Akkumulator AC1 zur Folge hat).
  • Wie in Figur 8 abgebildet, wird das Signal QC, das durch das PCM-Taktsignal aktiviert wird, das wiederum um drei Zyklen 3F im Schieberegister 70 (siehe Figur 5) verzögert wird, verwendet, um die nächsten Signale R1, R2, R3 und das Ladesignal LD zu erzeugen.
  • Die Rücksetzsignale R1, R2 und R3 werden von der UND-Schaltung 98, der UND-Schaltung 100 beziehungsweise der UND-Schaltung 102 geliefert. Jedes Rücksetzsignal wird durch das Auftreten des entsprechenden Ansteuersignals aktiviert. Da das Ansteuersignal durch das Auftreten des Signals W0, W1 oder W2 vom Fensterzähler erzeugt wurde, das selbst von dem um 2 Zyklen 3F verzögerten PCM-Taktsignal aktiviert worden ist, bedeutet dies, daß das Rücksetzsignal, das zum Zeitpunkt von QC (des um 3 Zyklen 3F verzögerten PCM-Taktsignals) auftritt, um einen Zyklus 3F mit Bezug auf das entsprechende Ansteuersignal verzögert wird.
  • Was das Signal LD angeht, so ist die Verzögerung von 3 Zyklen 3F angesichts der Korrekturen durch den phasenstarren Oszillator notwendig. Tatsächlich wird jede Akkumulation der Filterkoeffizienten in einem der Akkumulatoren immer während des Zyklus C beendet, wenn keine Korrektur durch den phasenstarren Oszillator erfolgt. Wenn man davon ausgeht, daß der phasenstarre Oszillator eine Korrektur in Form einer Beschleunigung vornimmt, bedeutet dies, daß ein Zyklus C übersprungen wird. Das Ergebnis der Akkumulation liegt bereits im Akkumulator vor, da der letzte Koeffizient 0 ist, doch ist es nicht möglich, den akkumulierten Wert im fehlenden Zyklus C auszugeben, was möglich wäre, wenn keine Korrektur durch den phasenstarren Oszillator erfolgen würde. Wie bereits erläutert, werden die Akkumulatoren "zyklisch verschoben", und zwar dergestalt, daß der Akkumulator, der den PCM-Abtastwert bereitstellt, im nächsten Zyklus zuerst angesteuert wird. Deshalb ist der PCM-Abtastwert in diesem Akkumulator während des nächsten Zyklus A präsent. Genau aus diesem Grund tritt das Signal LD, das es dem Ausgaberegister 48 ermöglicht, den PCM-Abtastwert auszugeben, in einem Zyklus A auf, wird aber in der UND-Schaltung 104 um drei Zyklen 3F (Signal QC vom Schieberegister 70, in Figur 5 abgebildet) verzögert.
  • Wieder werden der Einfachheit halber Beispiele genannt, bei denen von N=4 ausgegangen wird, was bedeutet, daß das Dezimierungsfilter 12 Koeffizienten H(n) bei n = 0, 1, ..., 11 und H(0)=H(11)=0 aufweist. TABELLE III Abtastwerte PCM-Abtastwerte
  • Zunächst, wenn man davon ausgeht, daß keine Korrektur durch den phasenstarren Oszillator vorgenommen wird, veranschaulicht Tabelle III die Reihenfolge der Rechenoperationen für die Eingangssignalwerte S(j), wobei j von 1 bis 14 variiert. Die erste Spalte der Tabelle gibt die Anzahl der Eingangssignalwerte an sowie für jeden Eingangssignalwert die Reihenfolge 1, 2, 3, die die drei Zyklen des Taktes 3F kennzeichnet, während derer jeder der drei Akkumulatoren verwendet wird, um einen Filterkoeffizienten (oder dessen Gegenstück) zu akkumulieren, der in der zweiten, dritten und vierten Spalte angegeben ist. In der fünften Spalte ist der PCM-Abtastwert angegeben, der bei jeder vierten Akkumulation erzeugt wird, und zwar abwechselnd von jedem Akkumulator.
  • Aus Tabelle II geht hervor, daß der letzte Filterkoeffizient H(11) (und auch der erste Filterkoeffizient) mit dem Wert 0 angegeben ist. Das bedeutet, daß jeder PCM-Abtastwert im entsprechenden Akkumulator einen Zyklus vor der letzten Akkumulation verfügbar ist. Da der Akkumulator, der den PCM-Abtastwert bereitstellt, "zyklisch verschoben" und als erster Akkumulator für die nächsten Rechenoperationen verwendet wird, ist der PCM-Abtastwert in dem als nächstes angesteuerten Akkumulator am Anfang des nächsten Zyklus verfügbar. Somit werden während der drei Zyklen, in denen der Eingangssignalwert S(8) vorhanden ist, drei Akkumulationen ausgeführt.
  • 1. AC2 = AC2 + S(8).H(3)
  • 2. AC1 = AC1 + S(8).H(7)
  • 3. AC3 = AC3 + S(8).H(11) = AC3
  • Beim nächsten Eingangssignalwert S(9) wird der Inhalt von AC3, der den PCM-Abtastwert P(8) darstellt, an das Ausgaberegister übertragen, und AC3 wird zurückgesetzt. Dann ist die Reihenfolge, in der die Akkumulationen ausgeführt werden, wie folgt:
  • 1. AC3 = S(9).H(0) = 0
  • 2. AC2 = AC2 + S(9).H(4)
  • 3. AC1 = AC1 + S(9).H(8) TABELLE IV Abtastwerte PCM-Abtastwerte
  • Tabelle IV veranschaulicht den Fall, bei dem eine Korrektur durch den phasenstarren Oszillator in Form einer Beschleunigung des PCM-Taktes vorgenommen wird. Wie bereits erläutert, wird die Abtastzeit dadurch verkürzt, daß ein Zyklus C unterdrückt wird. Somit wird im vorliegenden Fall der dritte Zyklus unterdrückt, welcher der Rechenoperation mit dem Eingangssignalwert S(8) entspricht. Solch eine Unterdrückung hat keinen Fehler zur Folge, da die Akkumulation während dieses Zyklus dem Koeffizienten H(11) = 0 entsprach. Daher wird der PCM-Abtastwert von der vorausgehenden Akkumulation S(7).H(10) genommen, die nach wie vor im Akkumulator AC3 präsent ist. TABELLE V Abtastwerte PCM-Abtastwerte
  • Tabelle V veranschaulicht den Fall, bei dem eine Korrektur durch den phasenstarren Oszillator in Form einer Verlangsamung des PCM-Taktes vorgenommen wird, was eine Verlängerung der Abtastzeit um einen Zyklus C' zur Folge hat. Somit wird die letzte Akkumulation im Akkumulator AC3 im vorliegenden Fall zweimal ausgeführt (während des 3. und 4. Zyklus). Solch ein Hinzufügen eines ergänzenden Zyklus wirkt sich auf das Ergebnis nicht aus, da der entsprechende Filterkoeffizient H(11) = 0 ist. Die letzte wesentliche Akkumulation, die S(7).H(10) entspricht, ist während dreier Zyklen im Akkumulator AC3 präsent.
  • Wie bereits erwähnt wurde, ist das wesentliche Merkmal der Erfindung die "zyklische Verschiebung" der Akkumulatoren, die es ermöglicht, daß Korrekturen durch den phasenstarren Oszillator vorgenommen werden können, indem ein Zyklus C übersprungen oder wiederholt wird, ohne daß dies eine falsche Berechnung des PCM- Abtastwertes zur Folge hätte. Bei den Korrekturen durch den phasenstarren Oszillator, die das Überspringen oder Wiederholen des Zyklus C zur Folge haben, handelt es sich um Korrekturen, die das Abtastintervall verkürzen (wenn der PCM-Takt beschleunigt wird) beziehungsweise verlängern (wenn der PCM-Takt verlangsamt wird). Tatsächlich ist es möglich, einen Phasennachlauf zu realisieren, indem drei PLO-Schritte zum Taktintervall des Abtasttaktes addiert beziehungsweise von diesem subtrahiert werden, vorausgesetzt, daß beim Impulsverhalten des Dezimierungsfilters der erste Koeffizient gleich 0 ist (was nicht der Fall sein muß, wenn nur ein PLO-Schritt addiert oder subtrahiert wird). Angenommen, es erfolgt eine Korrektur durch den phasenstarren Oszillator, indem die Abtastzeit um drei elementare Zyklen verkürzt wird, so bedeutet dies, daß das PCM-Taktsignal drei Zyklen früher auftritt. Solch eine Korrektur hat keine Auswirkungen auf den Takt F, da das PCM-Taktsignal nach wie vor in einem Zyklus A auftritt. Im Falle einer Korrektur durch den phasenstarren Oszillator, bei der die Abtastzeit um einen Zyklus verkürzt wird, wird der Inhalt des Akkumulators, der Rechenoperationen mit den Koeffizienten des Fensters 3 ausführt, als PCM-Abtastwert ausgegeben. Die Korrektur durch den phasenstarren Oszillator hat dabei keinen fehlerhaften PCM-Abtastwert zur Folge, da die fehlende Rechenoperation den letzten Koeffizienten H(11) = 0 einschließt.
  • Wenn nun eine Korrektur durch den phasenstarren Oszillator erfolgt, bei der die Abtastzeit um drei Zyklen verlängert wird, tritt das PCM-Taktsignal drei Zyklen später auf. Auch hier hat die Korrektur durch den phasenstarren Oszillator keine Auswirkungen auf den Takt F, da das PCM-Taktsignal in einem Zyklus A auftritt. Wenn die PCM-Abtastzeit durch die Korrektur des phasenstarren Oszillators nur um einen Zyklus verlängert wird, enthält der Akkumulator, der Rechenoperationen mit den Koeffizienten des Fensters 3 ausführt, den auszugebenden PCM-Abtastwert. Aufgrund der Verzögerung des PCM-Taktsignals wird der Inhalt dieses Akkumulators nicht am Ende der PCM-Abtastzeit ausgegeben, sondern erst am Ende des ersten Zyklus der nächsten PCM-Abtastzeit. Dies hat keinen Fehler zur Folge, da der erste Koeffizient H(0) = 0 ist.
  • Obwohl die bevorzugte Ausführung der Erfindung ein Dezimierungsfilter des Typs Sinc³ enthält, ist es auch möglich, ein anderes Filter, wie beispielsweise ein Filter des Typs Sinc² oder Sinc&sup4;, zu verwenden; die wichtigste Voraussetzung ist, daß der letzte Koeffizient gleich 0 ist. Beispielsweise hätte die Vorrichtung der Erfindung bei einem Filter des Typs Sinc² nur zwei Akkumulatoren, und es könnte auch derselbe Oszillator verwendet werden, doch wäre einer der drei Zyklen, die ein Intervall des Taktes F bilden, überflüssig. Bei einem Filter des Typs Sinc&sup4; würden vier Akkumulatoren für die Vorrichtung benötigt, und ein Oszillator mit einer Frequenz 4F wäre erforderlich, um jedes Intervall des Taktes F in vier elementare Zyklen unterteilen zu können.
  • Die vorliegende Erfindung wurde mittels einer Realsierungsmöglichkeit beschrieben, bei der die Funktionen unter Verwendung von Logikschaltungen ausgeführt werden. Jedoch kann der Fachmann all diese Funktionen auch mit Hilfe einer von einem Universalprozessor gesteuerten Software ausführen oder indem er auf der Grundlage der Darlegungen der vorliegenden Beschreibung einen Spezialprozessor implementiert.

Claims (10)

1. Ein digitales Filter, das digitale Eingangssignale mit einer Taktrate eines ersten Taktes mit einer Frequenz F empfängt und digitale Ausgangssignale mit einer Taktrate eines zweiten Taktes mit einer Frequenz f, die ein Teiler von F ist, bereitstellt, wobei der Takt mit einer Frequenz f verlangsamt oder beschleunigt wird, wenn er nicht mehr synchron mit einem entfernten Takt ist, das Filter eine endliche Impulsantwort aufweist sowie eine Anzahl von Abgriffen, die ein Vielfaches X vom Verhältnis zwischen F und f ist, das Filter einen letzten Nullstellenabgriff aufweist und dadurch gekennzeichnet ist, daß es:
viele Akkumulatoren (38, 40, 42) enthält, deren Anzahl gleich dem Vielfachen X ist, um während eines jeden Intervalls des Taktes F das Produkt eines vorher festgelegten Eingangssignalwertes (S) durch einen vorher festgelegten Abgriffskoeffizienten (H), je nach dem beteiligten Akkumulator, hinzuzufügen;
eine Aufbereitungsschaltung (32, 34, 36) aufweist, um während eines jeden Zyklus des Taktes F das Produkt des Eingangssignalwertes mit dem Abgriffskoeffizienten in jeden einzelnen der vielen Akkumulatoren zu laden;
eine Ausgangsschaltung (48) aufweist, um ein Ausgangssignal (P) mit einer Taktrate f bereitzustellen, indem der Inhalt eines jeden Akkumulators mit der Taktrate f nacheinander ausgegeben wird und
eine Ansteuerungsschaltung (44 und Figur 5) aufweist, um den Akkumulator, dessen Inhalt als digitales Ausgangssignal ausgegeben wurde, als den durch die Aufbereitungsschaltung zuerst zu ladenden Akkumulator auszuwählen, wodurch das letzte auszugebende Produkt, das im Akkumulator akkumuliert wird, immer Null ist, so daß das entsprechende Zeitintervall zur Einstellung der Frequenz f genutzt werden kann.
2. Ein digitales Filter gemäß Anspruch 1, bei dem der erste Takt mit der Frequenz F und der zweite Takt mit der Frequenz f von einem Basisoszillator mit der Frequenz XF ausgegeben wird, so daß während eines Intervalls des ersten Taktes, der in X Zyklen des Oszillators aufgeteilt wird, jeder einzelne der vielen Akkumulatoren (38, 40, 42) innerhalb von einem Zyklus mit dem Produkt des gleichen digitalen Eingangssignales mit einem anderen Abgriffskoeffizienten des Filters geladen wird.
3. Ein digitales Filter gemäß Anspruch 2, bei dem, wenn der zweite Takt (f) mit dem entfernten Takt durch Verlangsamung synchronisiert wird, der erste Takt (F) angepaßt wird, indem ein Zyklus des Oszillators zu einem Intervall des ersten Taktes addiert wird, wodurch das Ausgangssignal (P), das am Ende des Intervalls vom Akkumulator ausgegeben wird, aufgrund der Verlangsamung nicht fehlerhaft ist, da das letzte Produkt, das im Akkumulator zweimal akkumuliert wird, die letzte Nullstelle einschließt und deshalb gleich Null ist.
4. Ein digitales Filter gemäß Anspruch 2, bei dem, wenn der zweite Takt (f) mit dem entfernten Takt durch Beschleunigung synchronisiert wird, der erste Takt (F) angepaßt wird, indem ein Zyklus des Oszillators während eines Intervalls des ersten Taktes übersprungen wird, wodurch das Ausgangssignal (P), das am Ende des Intervalls vom Akkumulator ausgegeben wird, aufgrund der Beschleunigung nicht fehlerhaft ist, da das letzte Produkt, das durch diese Beschleunigung übersprungen wird, die letzte Nullstelle einschließt und deshalb gleich Null ist.
5. Ein digitales Filter gemäß Anspruch 2, das einen ersten Nullstellenabgriff aufweist und bei dem, wenn der zweite Takt (f) mit dem entfernten Takt durch Verlangsamung synchronisiert wird, der erste Takt (F) angepaßt wird, indem die Ausgabe des Ausgangssignals (P) von dem Akkumulator durch drei Zyklen des Oszillators verzögert wird, wodurch das Ausgangssignal aufgrund der Verlangsamung nicht fehlerhaft ist, da das letzte Produkt, das im Akkumulator akkumuliert wird, den ersten Nullstellenkoeffizienten einschließt und deshalb gleich Null ist.
6. Ein digitales Filter gemäß Anspruch 2, bei dem, wenn der zweite Takt (f) mit dem entfernten Takt durch Beschleunigung synchronisiert wird, der erste Takt (F) angepaßt wird, indem die Ausgabe des Ausgangssignals (P) von dem Akkumulator um drei Zyklen des Oszillators vorgerückt wird, wodurch das Ausgangssignal aufgrund der Beschleunigung nicht fehlerhaft ist, da das letzte Produkt, das bei Nichtbeschleunigung akkumuliert worden wäre, die letzte Nullstelle einschließt und deshalb gleich Null ist.
7. Ein digitales Filter gemäß jedem der vorstehenden Ansprüche, das in einem Sigma-Delta-Analog-Digital-Umsetzer eingesetzt wird und bei dem die digitalen Eingangssignale eine Folge von Bits sind, die von einem Sigma-Delta-Codierer (10) mit der Frequenz f empfangen werden, und die digitalen Ausgangssignale digitale Wörter sind, die mit der Abtastfrequenz f erzeugte PCM-Abtastwerte darstellen.
8. Ein digitales Filter gemäß jedem der vorstehenden Ansprüche, das außerdem einen Steuerkreis aufweist, der Steuersignale an die Akkumulatoren (38, 40, 42), die Aufbereitungsschaltung (32, 34, 36), die Ausgangsschaltung (48) und die Ansteuerungsschaltung (44) liefert und der:
- einen Zykluszähler (60) enthält, um dem ersten Takt F entsprechende Ausgangsimpulse als Reaktion auf dem zweiten Takt f entsprechende Eingangsimpulse zu generieren, wobei die Ausgangsimpulse die Verlangsamung oder Beschleunigung der Eingangsimpulse berücksichtigen;
- einen Fensterzähler (62) enthält, um Fenstern entsprechende Fenstersignale als Reaktion auf das Ausgangssignal eines Akkumulators zu generieren, wobei jedes die Reihenfolge festlegt, in der die Akkumulatoren während eines Intervalls des Taktes F geladen werden, und
- eine Logikschaltung (72) enthält, um die Steuersignale als Reaktion auf die Ausgangsimpulse und die Fenstersignale zu erzeugen.
9. Ein digitales Filter gemäß jedem der vorgenannten Ansprüche, bei dem der erste Takt die Frequenz F = 864 kHz, der zweite Takt eine Frequenz f = 14,4 kHz hat und es sich bei dem Filter um den Typ Sinc³ mit 3F/f = 180 Abgriffen handelt.
10. Ein digitales Filter gemäß jedem der vorgenannten Ansprüche, das im Analog-Digital-Umsetzer eines Modems eingesetzt wird.
DE88480022T 1988-08-30 1988-08-30 Digitales Filter für einen Sigma-Delta-Dekoder. Expired - Fee Related DE3881883T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP88480022A EP0356598B1 (de) 1988-08-30 1988-08-30 Digitales Filter für einen Sigma-Delta-Dekoder

Publications (2)

Publication Number Publication Date
DE3881883D1 DE3881883D1 (de) 1993-07-22
DE3881883T2 true DE3881883T2 (de) 1993-12-23

Family

ID=8200499

Family Applications (1)

Application Number Title Priority Date Filing Date
DE88480022T Expired - Fee Related DE3881883T2 (de) 1988-08-30 1988-08-30 Digitales Filter für einen Sigma-Delta-Dekoder.

Country Status (4)

Country Link
US (1) US4972360A (de)
EP (1) EP0356598B1 (de)
JP (1) JPH0824252B2 (de)
DE (1) DE3881883T2 (de)

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3881883T2 (de) 1988-08-30 1993-12-23 Ibm Digitales Filter für einen Sigma-Delta-Dekoder.
JPH0812982B2 (ja) * 1990-06-08 1996-02-07 シャープ株式会社 ディジタルディシメーションフィルタ
JP2703126B2 (ja) * 1991-04-23 1998-01-26 三菱電機株式会社 A/d,d/a変換装置
DE69114129T2 (de) * 1991-07-17 1996-06-13 Ibm Dezimationsfilter für Sigma-Delta Konverter und Datenendeinrichtung mit einem solchen Filter.
EP0523307B1 (de) * 1991-07-17 1996-03-27 International Business Machines Corporation Dezimationsfilter für Sigma Delta Konverter und Datenendeinrichtung mit einem solchen Filter
US5212659A (en) * 1991-10-08 1993-05-18 Crystal Semiconductor Low precision finite impulse response filter for digital interpolation
US5181033A (en) * 1992-03-02 1993-01-19 General Electric Company Digital filter for filtering and decimating delta sigma modulator output signals
US5257026A (en) * 1992-04-17 1993-10-26 Crystal Semiconductor, Inc. Method and apparatus for calibrating a multi-bit delta-sigma modular
US5345236A (en) * 1992-12-21 1994-09-06 Harris Corporation Improved sigma-delta type analog-to-digital converter and method
US5590065A (en) * 1994-08-10 1996-12-31 Crystal Semiconductor Corporation Digital decimation filter for delta sigma analog-to-digital conversion with reduced hardware compelexity
US5583501A (en) * 1994-08-24 1996-12-10 Crystal Semiconductor Corporation Digital-to-analog converter with digital linearity correction
US5594439A (en) * 1994-08-24 1997-01-14 Crystal Semiconductor Corporation Diagnosing problems in an electrical system by monitoring changes in nonlinear characteristics
US5594612A (en) * 1994-08-24 1997-01-14 Crystal Semiconductor Corporation Analog-to-digital converter with digital linearity correction
US5563535A (en) * 1994-11-29 1996-10-08 Microunity Systems Engineering, Inc. Direct digital frequency synthesizer using sigma-delta techniques
GB2319933B (en) * 1996-11-27 2001-07-25 Sony Uk Ltd Signal processors
US5974363A (en) * 1997-04-09 1999-10-26 Lucent Technologies Inc. Self-testing of smart line cards
US6553518B1 (en) 1999-03-08 2003-04-22 International Business Machines Corporation Severe error detectors, methods and computer program products that use constellation specific error event thresholds to detect severe error events during demodulation of a signal comprising symbols from a plurality of symbol constellations
US6389064B1 (en) 1999-03-08 2002-05-14 International Business Machines Corporation Modems, methods, and computer program products for identifying a signaling alphabet in variance with an ideal alphabet due to digital impairments
US7003030B2 (en) 1999-03-08 2006-02-21 Lenovo (Singapore) Pte. Ltd. Receivers, methods, and computer program products for an analog modem that receives data signals from a digital modem
US6661837B1 (en) 1999-03-08 2003-12-09 International Business Machines Corporation Modems, methods, and computer program products for selecting an optimum data rate using error signals representing the difference between the output of an equalizer and the output of a slicer or detector
US6487243B1 (en) 1999-03-08 2002-11-26 International Business Machines Corporation Modems, methods, and computer program products for recovering from errors in a tone reversal sequence between two modems
US6381267B1 (en) 1999-03-08 2002-04-30 International Business Machines Corporation Modems, methods, and computer program products for falling back to a lower data rate protocol upon detecting abnormal line conditions during startup
US6341360B1 (en) 1999-03-08 2002-01-22 International Business Machines Corporation Decision feedback equalizers, methods, and computer program products for detecting severe error events and preserving equalizer filter characteristics in response thereto
US6661847B1 (en) 1999-05-20 2003-12-09 International Business Machines Corporation Systems methods and computer program products for generating and optimizing signal constellations
US6505222B1 (en) 1999-10-29 2003-01-07 International Business Machines Corporation Systems methods and computer program products for controlling undesirable bias in an equalizer
US6662322B1 (en) 1999-10-29 2003-12-09 International Business Machines Corporation Systems, methods, and computer program products for controlling the error rate in a communication device by adjusting the distance between signal constellation points
US6754258B1 (en) 1999-10-29 2004-06-22 International Business Machines Corporation Systems, methods and computer program products for averaging learned levels in the presence of digital impairments based on patterns
US6826157B1 (en) 1999-10-29 2004-11-30 International Business Machines Corporation Systems, methods, and computer program products for controlling data rate reductions in a communication device by using a plurality of filters to detect short-term bursts of errors and long-term sustainable errors
US6611563B1 (en) 1999-10-29 2003-08-26 International Business Machines Corporation Systems, methods and computer program products for data mode refinement of modem constellation points
US6967995B1 (en) 1999-10-29 2005-11-22 International Business Machines Corporation Methods, systems and computer program products for carrier drop detection using a variable threshold
US6792004B1 (en) 1999-10-29 2004-09-14 International Business Machines Corporation Systems, methods and computer program products for averaging learned levels in the presence of robbed-bit signaling based on proximity
US6823017B1 (en) 1999-10-29 2004-11-23 International Business Machines Corporation Systems, methods and computer program products for filtering glitches from measured values in a sequence of code points
US6650657B1 (en) 1999-10-29 2003-11-18 International Business Machines Corporation Systems, methods and computer program products for identifying digital impairments in modem signals
US6765955B1 (en) 1999-10-29 2004-07-20 International Business Machines Corporation Methods, systems and computer program products establishing a communication configuration for a modem connection to compensate for echo noise
US6792040B1 (en) 1999-10-29 2004-09-14 International Business Machines Corporation Modems having a dual power mode capability and methods of operating same
US6823004B1 (en) 1999-10-29 2004-11-23 International Business Machines Corporation Methods, systems and computer program products for monitoring performance of a modem during a connection
US6839382B1 (en) 1999-10-29 2005-01-04 International Business Machines Corporation System, methods and computer program products for identifying digital impairments in modem signals using signature analysis and signal level comparison analysis
US6816545B1 (en) 1999-10-29 2004-11-09 International Business Machines Corporation Systems, methods and computer program products for identifying digital impairments in modems based on clusters and/or skips in pulse code modulation signal levels
US7194037B1 (en) 2000-05-23 2007-03-20 Marvell International Ltd. Active replica transformer hybrid
US7113121B1 (en) 2000-05-23 2006-09-26 Marvell International Ltd. Communication driver
US7095348B1 (en) 2000-05-23 2006-08-22 Marvell International Ltd. Communication driver
US6462688B1 (en) 2000-12-18 2002-10-08 Marvell International, Ltd. Direct drive programmable high speed power digital-to-analog converter
US7433665B1 (en) 2000-07-31 2008-10-07 Marvell International Ltd. Apparatus and method for converting single-ended signals to a differential signal, and transceiver employing same
USRE41831E1 (en) 2000-05-23 2010-10-19 Marvell International Ltd. Class B driver
US6775529B1 (en) 2000-07-31 2004-08-10 Marvell International Ltd. Active resistive summer for a transformer hybrid
US7312739B1 (en) 2000-05-23 2007-12-25 Marvell International Ltd. Communication driver
US6567290B2 (en) * 2000-07-05 2003-05-20 Mosaic Systems, Inc. High-speed low-power semiconductor memory architecture
US7606547B1 (en) 2000-07-31 2009-10-20 Marvell International Ltd. Active resistance summer for a transformer hybrid
KR100340048B1 (ko) * 2000-10-26 2002-06-15 오길록 승산기를 사용하지 않는 유한 임펄스 응답 필터 장치
US7312662B1 (en) 2005-08-09 2007-12-25 Marvell International Ltd. Cascode gain boosting system and method for a transmitter
US7577892B1 (en) 2005-08-25 2009-08-18 Marvell International Ltd High speed iterative decoder
CN114337600B (zh) * 2022-03-11 2022-06-03 华南理工大学 一种片上差分有源rc滤波器的校准和调谐方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3796004A (en) * 1972-11-10 1974-03-12 Master Evans Inc Construction toy
FR2238299B1 (de) * 1973-07-20 1977-12-23 Trt Telecom Radio Electr
FR2275936A1 (fr) * 1974-06-21 1976-01-16 Ibm France Filtre frequentiel numerique
JPS60160720A (ja) * 1984-01-31 1985-08-22 Nec Corp 半導体装置
JPS61196473A (ja) * 1985-02-25 1986-08-30 Sharp Corp Pcm方式信号再生装置
US4709394A (en) * 1985-08-23 1987-11-24 Rca Corporation Multiplexed real-time pyramid signal processing system
US4796004A (en) * 1986-02-14 1989-01-03 General Instrument Corp. Integrated analog-to-digital converter
DE3881883T2 (de) 1988-08-30 1993-12-23 Ibm Digitales Filter für einen Sigma-Delta-Dekoder.

Also Published As

Publication number Publication date
JPH0282807A (ja) 1990-03-23
JPH0824252B2 (ja) 1996-03-06
US4972360A (en) 1990-11-20
EP0356598A1 (de) 1990-03-07
DE3881883D1 (de) 1993-07-22
EP0356598B1 (de) 1993-06-16

Similar Documents

Publication Publication Date Title
DE3881883T2 (de) Digitales Filter für einen Sigma-Delta-Dekoder.
EP0401562B1 (de) Anordnung zur Umsetzung eines Signals mit einer ersten Abtastrate in ein Signal mit einer zweiten Abtastrate
DE3856142T2 (de) Verfahren und Vorrichtung zur Umsetzung der Abtastfrequenz
DE69315614T2 (de) Frequenzsynthesierer
AT402246B (de) Bruchteils-n-synthese mit verriegelten speicherwerken und mit verringerung des restfehlers
DE69221526T2 (de) Abtastfrequenzumsetzer
DE2639326A1 (de) Frequenz-synthesizer
DE2539532C3 (de) Nichtrekursives interpolierendes Digitalfilter mit Eingangspuffer
DE2549574C3 (de) Rekursives Digitalfilter
EP0406469B1 (de) Digitale Steuerschaltung für Abstimmsysteme
DE2548265C3 (de) Schaltungsanordnung zur symmetrischen Frequenzteilung durch eine ungerade Zahl
DE2541054C2 (de) Schaltungsanordnung zur Synthetisierung einer phasenmodulierten Trägerwelle in Abhängigkeit von Digitaldatenelementen
DE2536673B2 (de) Phasenfilter
DE2432594C3 (de) Rekursives Digitalfilter
DE60117395T2 (de) Verfahren und anordnung zur synchronisierung eines sigma-delta-modulators
DE2831059C2 (de) Integrierender Kodeumsetzer
DE69118372T2 (de) Dezimationsfilter für Sigma Delta Konverter und Datenendeinrichtung mit einem solchen Filter
EP0215810B1 (de) Schaltungsanordnung zur mittelwertbildung
DE69114129T2 (de) Dezimationsfilter für Sigma-Delta Konverter und Datenendeinrichtung mit einem solchen Filter.
DE2724347A1 (de) Deltamodulator mit einem quantisierenden vergleicher
DE2119091A1 (de) Spannungsgesteuerter Taktgenerator
DE3153243C2 (de)
DE3917020C2 (de)
DE3002960A1 (de) Adaptiver deltamodulator
DE2638314A1 (de) Digitale vorrichtung zur erzeugung einer durch ein datensignal phasenmodulierten und gefilterten welle

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee