DE69732896T2 - Verfahren und Geräte zur Schachtelung/Entschachtelung von digitalen Daten und Kommunikationssystem - Google Patents

Verfahren und Geräte zur Schachtelung/Entschachtelung von digitalen Daten und Kommunikationssystem Download PDF

Info

Publication number
DE69732896T2
DE69732896T2 DE69732896T DE69732896T DE69732896T2 DE 69732896 T2 DE69732896 T2 DE 69732896T2 DE 69732896 T DE69732896 T DE 69732896T DE 69732896 T DE69732896 T DE 69732896T DE 69732896 T2 DE69732896 T2 DE 69732896T2
Authority
DE
Germany
Prior art keywords
read
address
outgoing
bytes
mat
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
Application number
DE69732896T
Other languages
English (en)
Other versions
DE69732896D1 (de
Inventor
Miguel Peeters
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.)
Alcatel Lucent SAS
Original Assignee
Alcatel SA
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 Alcatel SA filed Critical Alcatel SA
Application granted granted Critical
Publication of DE69732896D1 publication Critical patent/DE69732896D1/de
Publication of DE69732896T2 publication Critical patent/DE69732896T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2789Interleaver providing variable interleaving, e.g. variable block sizes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2732Convolutional interleaver; Interleavers using shift-registers or delay lines like, e.g. Ramsey type interleaver
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/276Interleaving address generation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2782Interleaver implementations, which reduce the amount of required interleaving memory

Description

  • Die vorliegende Erfindung bezieht sich auf ein Verfahren zur Verschachtelung eines eintreffenden Datenstroms, wie im nicht kennzeichnenden Teil von Anspruch 1 definiert, auf ein Verfahren zur Entschachtelung eines eintreffenden verschachtelten Datenstroms, wie im nicht kennzeichnenden Teil von Anspruch 6 definiert, und auf Geräte zur Verschachtelung und Entschachtelung, wie im nicht kennzeichnenden Teil von Anspruch 7, bzw. Anspruch 10 definiert.
  • Ein solches Verfahren zur Verschachtelung und Entschachtelung, solche Geräte zur Verschachtelung und Entschachtelung und ein solches Kommunikationssystem sind bereits in der Technik bekannt, z.B. aus dem Patent der Vereinigten Staaten US 4,559,625 mit dem Titel "Interleavers for digital communications" der Erfinder Elwyn R. Berlekamp und Po Tong. Auch das europäische Patent EP 0 048 151 A1 beschreibt auf Seite 8, Zeile 23–30 und Seite 9, Zeile 27–34 einen herkömmlichen dreieckig geformten Verschachteler, der sich für den Einsatz in einem Fernsehsignal-Codierer/Decodierer eignet.
  • In dem in US 4,559,625 beschriebenen Kommunikationssystem entwickelt eine Codiervorrichtung redundante Information auf eine mathematisch vorgeschriebene Weise und fügt diese redundante Information den Datenbytes von Codeworten hinzu. Die Datenbytes von mehreren unabhängig codierten Codeworten werden dann von einem Verschachteler wieder der Reihe nach angeordnet. Auf diese Weise wird die Übertragung der Codeworte über eine Übertragungsverbindung unabhängiger gegen impulsartige Störungen großer Länge. Durch Neuanordnung der Datensymbole werden impulsartige Störungen gleichmäßiger über unabhängig codierte Codeworte verteilt. Als Folge davon wird die Fehlerkorrektur durch Decodierung der übertragenen Codeworte verbessert. Zusammenfassend kann man sagen, dass der Verschachteler die Reihenfolge von Datenbytes mehrerer Codeworte ändert, um den Effekt der Signalverschlechterung oder Störungen auf der Übertragungsleitung gleichmäßiger über verschiedene Codeworte zu verteilen. Im Verschachteler werden Datenbytes dazu in Speicherzellen eingegeben und später aus diesen Speicherzellen in einer Reihenfolge ausgelesen, die sich von der Reihenfolge unterscheidet, in der sie in den Speicher eingegeben wurden. Die Verschachtelungs-Verzögerung eines Datenbytes ist das Zeitintervall, das zwischen dem Eintritt in den und dem Verlassen des Speichers vergeht, und wird üblicherweise als Menge der Bytes ausgedrückt, die zwischen dem Zeitpunkt des Eintretens und des Verlassens des betrachteten Datenbytes aus dem Speicher ausgelesen werden. Ein weiterer wichtiger Parameter, der gleich der Anzahl der Datenbytes im abgehenden verschachtelten Datenstrom zwischen zwei Datenbytes ein und desselben Codewortes ist, wird Verschachtelungstiefe genannt. Die Verschachtelungstiefe ist eine quantitative Anzeige für die Verbesserung der Unempfindlichkeit gegen impulsartige und ähnliche Störungen. In dem in US 4,559,625 beschriebenen Verschachteler bilden die Speicherzellen, in denen Datenbytes gespeichert werden, eine dreieckig geformte Matrix, d.h. das obere rechte Dreieck in der in 4a in US 4,559,625 gezeigten rechteckigen Matrix. Wenn jede Zeile der dreieckig geformten Matrix durch eine First-In-First-Out-Warteschlange implementiert wird, und wenn eintreffende Datenbytes in hinten liegenden Speicherzellen der Zeilen gespeichert werden, während abgehende Datenbytes aus vorne liegenden Speicherzellen der Zeilen ausgelesen werden, ändert sich die Verschachtelungs-Verzögerung jedes Bytes linear zur Ordnungs-Position des Datenbytes. Dies wird in Spalte 2, Zeile 34–41 des zitierten US-Patentes angegeben. Mit anderen Worten besteht in dem bekannten dreieckigen Verschachteler ein linearer Zusammenhang zwischen der Verschachtelungs-Verzögerung eines Datenbytes und der Ordinate der Zeile, in der das Datenbyte gespeichert ist. Die Verschachtelungstiefe, welche die Störunempfindlichkeit der Übertragung definiert, ist konstant und durch die Verzögerungs-Zunahme pro Zeile der Matrix bestimmt. Diese Verzögerungs-Zunahme ist die Längendifferenz zwischen zwei aufeinander folgenden Zeilen der Matrix, ausgedrückt als Menge von Speicherzellen.
  • In einem Kommunikationssystem mit variablen Übertragungsraten ist der Einfluss der Verschachtelung auf die Störunempfindlichkeit der Übertragung abhängig von der aktuellen Übertragungsrate. Wenn die Übertragungsrate zum Beispiel in einer ersten Situation die Hälfte der Übertragungsrate einer zweiten Situation beträgt, werden impulsförmige Fehler gleicher Dauer in der zweiten Situation die doppelte Menge an Daten beschädigen, wie in der ersten Situation beschädigt werden. Wenn die Verschachtelungstiefe in Situation 2 gleich der in Situation 1 ist und die zu den Codeworten hinzugefügten Fehlerkorrektur-Codes in beiden Situationen gleich sind, ist die Störunempfindlichkeit in Situation 2, ausgedrückt als maximale Dauer eines impulsförmigen Fehlers, der beseitigt werden kann, nur die Hälfte der Störunempfindlichkeit in Situation 1. Entwickler von Kommunikationssystemen müssen üblicherweise einen bestimmten Mindest-Grad an Fehlerkorrektur realisieren, um Standard-Spezifikationen einzuhalten. Die Verschachtelungstiefe und die Länge des Fehlerkorrektur-Codes werden vom Entwickler gewählt, um diesen Mindest-Grad an Fehlerkorrektur in einem schlechtmöglichsten Fall einzuhalten. In einem Kommunikationssystem mit variablen Übertragungsraten ist dieser schlechtmöglichste Fall die Situation, in der Daten mit der höchsten zulässigen Übertragungsrate übertragen werden. Wenn der oben beschriebene bekannte Verschachteler benutzt wird, und Daten mit einer kleineren Übertragungsrate übertragen werden, ist die Störunempfindlichkeit besser als erforderlich, dies wird jedoch durch eine Verschachtelungs-Verzögerung erkauft, die länger als erforderlich ist, um die Störunempfindlichkeit bei dieser kleineren Übertragungsrate exakt auf den erforderlichen Mindest-Grad einzustellen.
  • In anderen Kommunikationssystemen kann es gewünscht werden, dass die Störunempfindlichkeit angepasst werden kann, so dass die Kapazität für die Beseitigung des Einflusses von impulsförmigen Störungen auf die Übertragungsleitung in Abhängigkeit von der Qualität der Leitung, von den Störungen, von dienstabhängigen oder benutzerbhängigen Anforderungen und so weiter geändert werden kann.
  • Es ist daher eine Aufgabe der vorliegenden Erfindung, ein Verfahren zur Verschachtelung und Entschachtelung und Geräte zur Verschachtelung und Entschachtelung des bekannten Typs bereitzustellen, in denen jedoch die Störunempfindlichkeit geändert werden kann oder unabhängig von der Übertragungsrate auf der Übertragungsleitung gemacht werden kann.
  • Gemäß der Erfindung wird dieses Ziel durch das in Anspruch 1 definierte Verfahren zur Verschachtelung eines eintreffenden Datenstroms, durch das in Anspruch 6 definierte Verfahren zur Entschachtelung eines verschachtelten Datenstroms, sowie durch die in Anspruch 7, bzw. 10 definierten Geräte zur Verschachtelung und Entschachtelung realisiert.
  • Eine offensichtliche Möglichkeit zur Realisierung des oben beschriebenen Ziels ist es, die Form der dreieckigen Matrix anzupassen, indem der Verschachtelungs-Speicher vollständig geleert wird und die dreieckige Matrix neu formatiert wird, so dass zum Beispiel die Verzögerungs-Zunahme pro Zeile der Matrix steigt. Wird die Verzögerungs-Zunahme pro Zeile zum Beispiel jedes Mal angepasst, wenn sich die Übertragungsrate ändert, ändert sich die Verschachtelungstiefe entsprechend und als Folge davon bleibt die Störunempfindlichkeit im Wesentlichen unabhängig von der Übertragungsrate. Die offensichtliche Möglichkeit ist jedoch nicht sehr effizient, da sie einen sehr langen Übergangszustand aufweist, in dem die Übertragung unterbrochen werden muss.
  • Gemäß der Erfindung wird die Verschachtelungstiefe geändert, indem die Form der dreieckigen Anordnung auf dynamische Weise geändert wird, d.h. ohne den gesamten Verschachtelungs-Speicher zu leeren. In der Tat wird, wenn die Anzahl verschachtelter Datenbytes, die aus einer Zeile der Matrix ausgelesen werden, während eines Übergangszustandes, in dem die Übertragungsrate sinkt oder steigt, positiv oder negativ linear mit der Ordinate dieser Zeile verknüpft wird, die Verzögerungs-Zunahme pro Zeile der Matrix gesenkt oder erhöht. Wenn zum Beispiel 1 Datenbyte aus Zeile 1 ausgelesen wird, 2 Datenbytes aus Zeile 2 ausgelesen werden, ..., l – 1 Datenbytes aus Zeile l – 1 ausgelesen werden, wird die Längendifferenz zwischen zwei aufeinander folgenden Zeilen der Matrix (was die Verzögerungs-Zunahme pro Zeile ist) um 1 verringert. Wenn sich in einem solchen System die Verzögerungs-Zunahme pro Zeile erhöht, erhöht sich die Verschachtelungstiefe entsprechend und als Folge davon verbessert sich der Schutz gegen Fehler. Auf die gleiche Weise wird der Schutz gegen Fehler schlechter, wenn die Verzögerungs-Zunahme pro Zeile verringert wird. Somit wird der Einfluss der sich ändernden Übertragungsrate auf die Unempfindlichkeit gegen impulsförmige Störungen durch eine justierte Verschachtelungstiefe des Verschachtelers/Entschachtelers kompensiert, so dass die Störunempfindlichkeit im Wesentlichen konstant bleibt.
  • Wenn die Zeilen der dreieckigen Matrix so nummeriert werden, dass die Ordinaten-Nummern mit der Länge der Zeile wachsen, sinkt die Verzögerungs-Zunahme pro Zeile, wenn die Anzahl ausgelesener verschachtelter Datenbytes pro Zeile positiv mit der Ordinaten-Nummer der Zeile verknüpft wird. Eine verkleinerte Verzögerungs-Zunahme pro Zeile führt zu einer kleineren Verschachtelungstiefe und somit zu einer kleineren Unempfindlichkeit gegen impulsförmige Störungen. Ein Sinken der Übertragungsrate hat andererseits die Wirkung, dass die Unempfindlichkeit gegen impulsförmige Störungen steigt. Beide Effekte können sich kompensieren, so dass die Störunempfindlichkeit im Wesentlichen unabhängig von der Übertragungsrate bleibt.
  • Nimmt man erneut an, dass die Zeilen der dreieckigen Matrix nummeriert sind, so das die Ordinaten-Nummern mit der Länge der Zeilen wachsen, kann auf ähnliche Weise wie oben abgeleitet werden, dass die Störunempfindlichkeit im Wesentlichen unempfindlich gegen einen Anstieg der Übertragungsrate bleibt, wenn die Menge verschachtelter Datenbytes, die aus den Zeilen der Matrix ausgelesen werden, negativ mit der Ordinaten-Nummer dieser Zeilen verknüpft wird.
  • Es muss darauf hingewiesen werden, dass der in den Ansprüchen verwendete Begriff "enthält" nicht als Einschränkung der danach aufgelisteten Mittel interpretiert werden darf. Somit ist der Umfang des Ausdrucks "Eine Einrichtung, die Mittel A und B enthält" nicht auf Einrichtungen begrenzt, die nur aus den Komponenten A und B bestehen. Er bedeutet, dass bezogen auf die vorliegende Erfindung die einzigen relevanten Komponenten der Einrichtung A und B sind.
  • Auf ähnliche Weise muss darauf hingewiesen werden, dass der ebenfalls in den Ansprüchen verwendete Begriff "gekoppelt" nicht auf direkte Verbindungen begrenzt ist. Somit ist der Umfang des Ausdrucks "Eine Einrichtung A, die mit einer Einrichtung B gekoppelt ist" nicht auf Einrichtungen oder Systeme begrenzt, in denen ein Ausgang von Einrichtung A direkt mit einem Eingang von Einrichtung B verbunden ist. Er bedeutet, dass ein Pfad zwischen einem Ausgang von A und einem Eingang von B vorhanden ist, wobei der Pfad andere Einrichtungen oder Mittel enthalten kann.
  • Eine weitere Anmerkung ist, dass eine offensichtliche Variante des vorliegenden Systems und Verfahrens eine ist, in der die Rolle von Spalten und Zeilen der Verschachtelungs- und Entschachtelungs-Matrix vertauscht ist. Die Anwendbarkeit der vorliegenden Erfindung ist offensichtlich nicht auf solche Implementationen beschränkt, in denen Zeilen der Matrizen horizontal und Spalten vertikal gezeichnet sind. Aus offensichtlichen Gründen erhält man dasselbe technische Ergebnis, wenn in der gesamten Patentanmeldung die Begriffe "Spalte" und "Zeile" vertauscht werden. Der Umfang des durch den Anspruch definierten Schutzes darf somit nicht auf Ausführungen der vorliegenden Erfindung beschränkt werden, in denen "Zeile" synonym für eine horizontale Struktur ist und "Spalte" mit einer vertikalen Struktur assoziiert wird.
  • Weiterhin muss betont werden, dass die Ordinaten-Nummern von Zeilen oder Spalten in den Verschachtelungs- und/oder Entschachtelungs-Matrizen je nach den Vorlieben der Entwickler von unten nach oben, von oben nach unten, von links nach rechts oder von rechts nach links ansteigen können. Als Folge davon kann die dreieckige Matrix eine Spitze haben, die nach oben, nach unten, nach links oder nach rechts zeigt. Für den Entwickler ist es nur wichtig, eine Adressierung zu haben, die konform zu seiner Wahl der Ordinaten-Nummern ist. Der Umfang der Ansprüche darf nicht so interpretiert werden, dass er für diese Auswahl einschränkend ist.
  • Es wird hier auch darauf hingewiesen, dass die Verzögerungs-Zunahme pro Zeile der dreieckigen Verschachtelungs-Matrix auf ähnliche Weise angepasst werden kann, um in Systemen mit konstanten Übertragungsraten den Schutz gegen Fehler zu erhöhen oder zu verringern. Weitere Kriterien als der Anstieg oder Abfall der Übertragungsrate müssen in solchen Systemen verwendet werden, um zu entscheiden, wann Bytes in linearem Zusammenhang zu Zeilen-Ordinaten-Nummern aus der Matrix ausgelesen werden. In einem solchen System steigt die Verzögerungs-Zunahme pro Zeile, die Verschachtelungstiefe erhöht sich entsprechend und als Folge davon verbessert sich der Schutz gegen Fehler. Auf die gleiche Weise verschlechtert sich der Schutz gegen Fehler, wenn die Verzögerungs-Zunahme pro Zeile verringert wird. Um die Verschachtelungstiefe zu verringern, können abgehende Bytes in einer ersten speziellen Implementation der vorliegenden Erfindung ausgelesen werden, wie in Anspruch 2 definiert.
  • In der Tat ist die Anzahl der aus jeder Zeile der Matrix ausgelesenen Datenbytes gleich der Ordinaten-Nummer der Zeile. Wie später erläutert wird, erfordert diese Implementation das Vorhandensein eines Puffers sowohl im Verschachteler als auch im Entschachteler.
  • In einer zweiten speziellen Implementation des vorliegenden Verfahrens zur Verschachtelung können abgehende Datenbytes ausgelesen werden, wie in Anspruch 3 definiert, um die Verschachtelungstiefe zu verringern.
  • Auf diese Weise ist die Anzahl der aus jeder Zeile in der Matrix ausgelesenen Datenbytes wieder gleich der Ordinaten-Nummer der Zeile. Die Leer-Bytes werden im Verschachteler eingefügt, aber im Entschachteler nicht entschachtelt. Ein Vorteil dieser Implementation ist, dass am Entschachteler kein Puffer benötigt wird, aber die Größe des Verschachtelungs-Puffers hat sich verdoppelt, wie später noch gezeigt wird. Ein weiterer Vorteil ist, dass der Verschachteler und der Entschachteler wie für die erste spezielle Implementation erhalten werden können, und die Störunempfindlichkeit bleibt konstant, während die Verschachtelungstiefe angepasst wird.
  • Um die Verzögerungs-Zunahme pro Zeile zu erhöhen, wird in Anspruch 4 eine erste spezielle Implementation definiert, und in Anspruch 5 wird eine zweite Implementation definiert.
  • Ähnlich wie die in Anspruch 2 und 3 definierten Implementationen zur Verringerung der Verzögerungs-Zunahme kann die zweite Implementation auf weniger komplizierte Weise realisiert werden und erfordert keinen Puffer im Verschachteler oder Entschachteler. Die erste Implementation erfordert das Vorhandensein eines Puffers im Verschachteler, realisiert aber einen besseren Durchsatz, da keine Bandbreite für Leer-Bytes benutzt wird.
  • Die oben angegebenen und weitere Aufgaben und Eigenschaften der Erfindung werden deutlicher, und die Erfindung selbst wird am besten verstanden, wenn man auf die folgende Beschreibung einer Ausführung in Zusammenhang mit den begleitenden Zeichnungen Bezug nimmt, in denen:
  • 1 ein Blockdiagramm einer Ausführung des Kommunikationssystems gemäß der vorliegenden Erfindung ist;
  • 2 ein Blockdiagramm einer Ausführung des Verschachtelungs-Gerätes INTERLEAVER gemäß der vorliegenden Erfindung ist;
  • 3 ein Blockdiagramm einer Ausführung des Entschachtelungs-Gerätes DE-INTERLEAVER gemäß der vorliegenden Erfindung ist;
  • 4A eine Zeichnung ist, die das Füllen des Verschachtelungs-Speichers entsprechend dem bekannten Verfahren mit Datenbytes während eines stabilen Zustands zeigt, in dem die Verzögerungs-Zunahme M gleich 3 ist;
  • 4B eine Zeichnung ist, die das Füllen des Entschachtelungs-Speichers entsprechend dem bekannten Verfahren mit Datenbytes während eines stabilen Zustands zeigt, in dem die Verzögerungs-Zunahme M gleich 3 ist;
  • 5A eine Zeichnung ist, die das Füllen des Verschachtelungs-Speichers mit Datenbytes während eines Übergangszustands zeigt, in dem die Verzögerungs-Zunahme M von 3 auf 2 verringert wird;
  • 5B eine Zeichnung ist, die das Füllen des Entschachtelungs-Speichers mit Datenbytes während dieses Übergangszustands zeigt, in dem die Verzögerungs-Zunahme M von 3 auf 2 verringert wird;
  • 6A eine Zeichnung ist, die das Füllen des Verschachtelungs-Speichers mit Datenbytes während eines Übergangszustands zeigt, in dem die Verzögerungs-Zunahme M von 3 auf 4 erhöht wird;
  • 6B eine Zeichnung ist, die das Füllen des Entschachtelungs-Speichers mit Datenbytes während dieses Übergangszustands zeigt, in dem die Verzögerungs-Zunahme M von 3 auf 4 erhöht wird.
  • Das in 1 gezeigte Kommunikationssystem besteht aus einem Sender TX, einem Empfänger RX und einer Übertragungsleitung TL. Der Sender TX enthält eine Datenquelle DATA SOURCE, einen Codierer ENCODER, ein Verschachtelungs-Gerät INTERLEAVER und einen Modulator MOD. Der Empfänger RX enthält einen Demodulator DMOD, ein Entschachtelungs-Gerät DE-INTERLEAVER, einen Decodierer DECODER und eine Datensenke DATA SINK.
  • Ein Ausgang des Senders TX ist über die Übertragungsleitung TL an einen Eingang des Empfängers RX angeschlossen. Im Sender TX sind die Datenquelle DATA SOURCE, der Codierer ENCODER, der Verschachteler INTERLEAVER und der Modulator MOD in Reihe geschaltet. Ein Ausgang des Modulators MOD ist über den Sender-Ausgang an die Übertragungsleitung TL angeschlossen. Das andere Ende der Übertragungsleitung TL ist über den Empfänger-Eingang an einen Eingang des Demodulators DMOD angeschlossen. Im Empfänger RX sind der Demodulator DMOD, der Entschachteler DE-INTERLEAVER, der Decodierer DECODER, und die Datensenke DATA SINK in Reihe geschaltet.
  • Die Datenquelle DATA SOURCE erzeugt einen Datenstrom, der Anwender-Datenbytes und/oder Kopfinformations-Datenbytes enthalten kann. Eine feste Menge dieser Bytes bildet ein einzelnes Wort, und jedes dieser Worte wird vom Codierer ENCODER codiert. Das hat zur Folge, dass der Codierer ENCODER jedes der Worte gemäß einem vordefinierten mathematischen Verfahren erweitert, indem er redundante Bytes hinzufügt. Diese redundanten Bytes und die mathematischen Verfahren versetzen den Empfänger RX in die Lage, Fehler in übertragenen Worten zu erkennen und wahrscheinlich zu korrigieren. Die vom Codierer ENCODER erzeugten erweiterten Worte werden Codeworte genannt und bilden einen eintreffenden Datenstrom ID für den Verschachteler INTERLEAVER. Indem er die Reihenfolge der Datenbytes unterschiedlicher Codeworte des eintreffenden Datenstroms ID umsortiert, erzeugt der Verschachteler INTERLEAVER einen abgehenden verschachtelten Datenstrom, OID, der besser gegen impulsförmige Störungen auf der Übertragungsleitung TL geschützt ist als der eintreffende Datenstrom ID. Der Modulator MOD moduliert schließlich die Datensymbole, d.h. Kombinationen von Datenbits des Datenstroms OID, die einen Punkt im Konstellationsschema des Modulationsverfahrens darstellen, auf einen oder mehrere Träger, um sie über die Übertragungsleitung TL zu übertragen.
  • Am Empfänger RX demoduliert der Demodulator DMOD die Datensymbole von dem/den Träger(n) und erzeugt aus den demodulierten Datensymbolen einen Strom von Datenbytes, der eintreffender verschachtelter Datenstrom IID genannt wird. Die Reihenfolge der Bytes des eintreffenden verschachtelten Datenstroms IID wird im Entschachteler DE-INTERLEAVER so umsortiert, dass die Wirkung des Verschachtelers INTERLEAVER auf die Reihenfolge der Bytes kompensiert wird, und der erzeugte abgehende Datenstrom OD wieder die ursprüngliche Reihenfolge der Datenbytes enthält. Im Decoder DECODER werden Übertragungsfehler erkannt und korrigiert, indem die oben erwähnten mathematischen Verfahren angewendet und die Informationen der hinzugefügten redundanten Bytes benutzt werden. Der so bestimmte Datenstrom wird dann an die Datensenke DATA SINK angelegt, die jede Art von Endgerät, Schnittstelle oder ähnliches sein kann.
  • In dem in 1 gezeigten Kommunikationssystem sind der Verschachteler INTERLEAVER und der Entschachteler DE-INTERLEAVER so konstruiert, dass sie für den übertragenen Datenstrom eine von der Übertragungsrate unabhängige Unempfindlichkeit gegen impulsförmige Störungen bieten. Die Struktur des Verschachtelers INTERLEAVER und des Entschachtelers DE-INTERLEAVER, die diese Aufgabe realisieren, ist in 2, bzw. 3 gezeigt und wird in den folgenden Abschnitten detailliert beschrieben.
  • Der Verschachteler INTERLEAVER in 2 enthält Schreib-Mittel WRITE, Lese-Mittel READ, einen Speicher MEM, einen Adressgenerator ADDRESS und eine Steuerung CTRL. Der Speicher MEM ist mit einer dreieckig geformten Matrix MAT aus Speicherzellen ausgestattet, in der jede Zeile aus einer First-In-First-Out-Warteschlange aus Speicherzellen besteht. In 2 werden fünf Zeilen der Matrix MAT mit den entsprechenden Ordinaten 0, 1, 2, 3 und 4 durch die Warteschlangen Fifo0, Fifo1, Fifo2, Fifo3 und Fifo4 gebildet, die eine schrittweise ansteigende Länge haben, wobei die Zunahme pro Zeile M = 3 ist.
  • Die Schreib-Mittel WRITE, die Speicher-Mittel MEM und die Lese-Mittel READ sind zwischen dem Eingang der eintreffenden Daten ID und einem Ausgang für die verschachtelten Daten OID des Verschachtelers INTERLEAVER in Reihe geschaltet. Ein Ausgang der Steuerung CTRL und ein Steuereingang CI des Adressgenerators ADDRESS sind miteinander verbunden, und zwei Ausgänge des Adressgenerators ADDRESS sind an Adresseingänge AI1 der Schreib-Mittel WRITE, bzw. AI2 der Lese-Mittel READ angeschlossen.
  • Die eintreffenden Datenbytes, die über seinen Eingang für eintreffende Daten ID an den Verschachteler INTERLEAVER angelegt werden, werden in hinten liegende Speicherzellen der Warteschlangen der Verschachtelungs-Matrix MAT geschrieben. Gleichzeitig werden abgehende Datenbytes durch die Lese-Mittel READ aus den vorne liegenden Speicherzellen der Warteschlangen der Matrix MAT ausgelesen und an den Ausgang für abgehende Daten OID des Verschachtelers INTERLEAVER angelegt. In welcher Warteschlange die Schreib-Mittel WRITE eintreffende Datenbytes zu speichern haben, und aus welchen Speicherzellen die Lese-Mittel READ abgehende Datenbytes auszulesen haben, wird durch die vom Adressgenerator ADDRESS erzeugten Adressen definiert. In der Tat erzeugt der Adressgenerator ADDRESS eine erste Sequenz von Zeilen-Ordinaten oder Schreibadressen, die anzeigen, an welche Zeilen der Verschachtelungs-Matrix MAT nachfolgend eintreffende Datenbytes angelegt werden müssen, und eine zweite Sequenz von Zeilen-Ordinaten oder Leseadressen, die anzeigen, von welchen Zeilen der Verschachtelungs-Matrix MAT nachfolgend abgehende Datensymbole ausgelesen werden müssen. Wie beide Sequenzen aussehen, ist von dem Zustand abhängig, in den der Adressgenerator ADDRESS von der Steuerung CTRL geschaltet wird. In den folgenden Abschnitten werden drei Zustände kurz beschrieben, in die der Adressgenerator ADDRESS geschaltet werden kann.
  • Wenn der Adressgenerator ADDRESS in einen stabilen Zustand geschaltet wird, werden nachfolgend eintreffende Datenbytes auf umlaufende Weise an aufeinander folgende Zeilen der Matrix MAT angelegt. Mit Bezug auf 2 bedeutet dies, dass ein erstes eintreffendes Datenbyte an Fifo0, ein zweites an Fifo1, ein drittes an Fifo2, ein viertes an Fifo3, ein fünftes an Fifo4, ein sechstes wieder an Fifo0 angelegt wird, und so weiter. In diesem stabilen Zustand werden nachfolgende abgehende Datenbytes aus aufeinander folgenden Zeilen der Matrix MAT auf umlaufende Weise ausgelesen. Dies wird zum Beispiel realisiert, wenn die eintreffende und die abgehende Datenrate gleich ist und ein Byte aus jeder Zeile ausgelesen wird, in die ein Byte eingeschrieben ist. Da die Zeilen unterschiedliche Längen haben, werden nacheinander gelesene Datenbytes nicht nacheinander in die Matrix MAT geschrieben.
  • Wenn der Adressgenerator ADDRESS in einen Übergangszustand geschaltet wird, in dem die Verschachtelungstiefe verringert wird, wird die Anzahl von Datenbytes, die aus jeder Zeile der Matrix MAT ausgelesen wird, positiv linear mit der Ordinate dieser Zeile verknüpft. Am Ende dieses Übergangszustandes wird der Zunahme-Parameter M verringert, und die mittlere Verschachtelungs-Verzögerung (die Zeit zwischen dem Eintreten und Verlassen des Verschachtelers INTERLEAVER für ein einzelnes Datenbyte) wird ebenfalls verringert.
  • Wenn der Adressgenerator ADDRESS in einen Übergangszustand geschaltet wird, in dem die Verschachtelungstiefe erhöht wird, wird die Anzahl von Datenbytes, die aus jeder Zeile der Matrix MAT ausgelesen wird, negativ linear mit der Ordinate dieser Zeile verknüpft. Am Ende dieses Übergangszustandes wird der Zunahme-Parameter M erhöht, und die mittlere Verschachtelungs-Verzögerung wird ebenfalls erhöht.
  • Zusammenfassend kann man sagen, dass die Sequenz des Auslesens von Datenbytes aus dem Verschachteler INTERLEAVER sich in verschiedenen Zuständen unterscheidet. Weitere Einzelheiten hierzu werden später angegeben. Zunächst wird die Struktur des in 3 gezeigten Entschachtelers DE-INTERLEAVER beschrieben.
  • Der Entschachteler DE-INTERLEAVER in 3 enthält Schreib-Mittel WRITE', Lese-Mittel READ', einen Speicher MEM', einen Adressgenerator ADDRESS' und eine Steuerung CTRL'. Der Speicher MEM' ist mit einer dreieckig geformten Matrix MAT' aus Speicherzellen ausgestattet, in der jede Zeile aus einer First-In-First-Out-Warteschlange aus Speicherzellen besteht. In 3 werden fünf Zeilen der Matrix MAT' mit den entsprechenden Ordinaten 0, 1, 2, 3 und 4 durch die Warteschlangen Fifo0', Fifo1', Fifo2', Fifo3' und Fifo4' gebildet, die eine schrittweise kleiner werdende Länge haben, wobei die Abnahme pro Zeile M = 3 ist.
  • Die Schreib-Mittel WRITE', die Speicher-Mittel MEM' und die Lese-Mittel READ' sind zwischen dem Eingang der eintreffenden verschachtelten Daten IID und dem Ausgang für die abgehenden Daten OD des Entschachtelers DE-INTERLEAVER in Reihe geschaltet. Ein Ausgang der Steuerung CTRL' und ein Steuereingang CI' des Adressgenerators ADDRESS' sind miteinander verbunden, und zwei Ausgänge des Adressgenerators ADDRESS' sind an Adresseingänge AI1' der Schreib-Mittel WRITE', bzw. AI2' der Lese-Mittel READ' angeschlossen.
  • Die eintreffenden verschachtelten Datenbytes, die über seinen Eingang für eintreffende verschachtelte Daten IID an den Entschachteler DE-INTERLEAVER angelegt werden, werden in hinten liegende Speicherzellen der Warteschlangen der Entschachtelungs-Matrix MAT' geschrieben. In der Zwischenzeit werden abgehende Datenbytes durch die Lese-Mittel READ' aus den vorne liegenden Speicherzellen der Warteschlangen der Matrix MAT' ausgelesen und an den Ausgang für abgehende Daten OD des Entschachtelers DE-INTERLEAVER angelegt. In welche Speicherzellen die Schreib-Mittel WRITE' Datenbytes zu speichern haben, und aus welchen Speicherzellen die Lese-Mittel READ' Datenbytes auszulesen haben, wird durch die vom Adressgenerator ADDRESS' erzeugten Adressen definiert. Dieser Adressgenerator ADDRESS' erzeugt eine erste Sequenz von Zeilen-Ordinaten oder Schreibadressen, die anzeigen, an welche Zeilen der Verschachtelungs-Matrix MAT' nachfolgend eintreffende verschachtelte Datenbytes angelegt werden müssen, und eine zweite Sequenz von Zeilen-Ordinaten oder Leseadressen, die anzeigen, von welchen Zeilen der Verschachtelungs-Matrix MAT' nachfolgend abgehende Datenbytes ausgelesen werden müssen. Wie beide Sequenzen aussehen, ist von dem Zustand abhängig, in den der Adressgenerator ADDRESS' von der Steuerung CTRL' geschaltet wird. In den folgenden Abschnitten werden drei Zustände kurz beschrieben, in die der Adressgenerator ADDRESS' geschaltet werden kann.
  • Wenn der Adressgenerator ADDRESS' in einen stabilen Zustand geschaltet wird, werden nachfolgend eintreffende verschachtelte Datenbytes an aufeinander folgende Zeilen der Matrix MAT' angelegt, und nachfolgend abgehende Datenbytes werden aus aufeinander folgenden Zeilen der Matrix MAT' auf umlaufende Weise ausgelesen. Somit wird jedes Mal, wenn ein eintreffendes Byte in die vorne liegende Speicherzelle einer Warteschlange geschrieben wird, ein abgehendes Byte aus dieser Warteschlange ausgelesen. Da die Summe der Längen einer Warteschlange im Verschachteler INTERLEAVER in 2 und der Länge der entsprechenden Warteschlange im Entschachteler DE-INTERLEAVER in 3 konstant ist, ist die globale Verschachtelungs-/Entschachtelungs-Verzögerung für alle Bytes gleich.
  • Wenn der Adressgenerator ADDRESS' in einen Übergangszustand geschaltet wird, in dem die Verschachtelungstiefe verringert wird, wird die Anzahl von Datenbytes, die in jede Zeile der Matrix MAT' eingeschrieben wird, positiv linear mit der Ordinate dieser Zeile verknüpft. Am Ende dieses Übergangszustandes wird der Abnahme-Parameter M verringert, und die mittlere Entschachtelungs-Verzögerung (die Zeit zwischen dem Eintreten und Verlassen des Entschachtelers DE-INTERLEAVER) wird ebenfalls verringert.
  • Wenn der Adressgenerator ADDRESS' in einen Übergangszustand geschaltet wird, in dem die Verschachtelungstiefe erhöht wird, wird die Anzahl von Datenbytes, die in jede Zeile der Matrix MAT' eingeschrieben wird, negativ linear mit der Ordinate dieser Zeile verknüpft. Am Ende dieses Übergangszustandes wird der Abnahme-Parameter M erhöht, und die mittlere Entschachtelungs-Verzögerung wird ebenfalls erhöht.
  • Zusammenfassend kann man sagen, dass die Sequenz des Schreibens von Datenbytes in den Entschachteler DE-INTERLEAVER sich in verschiedenen Zuständen unterscheidet. Weitere Einzelheiten hierzu werden in den nächsten Abschnitten angegeben.
  • Das Füllen der Verschachtelungs- und Entschachtelungs-Matrizen MAT und MAT' in den oben definierten Zuständen wird nun detaillierter beschrieben. Zunächst wird mit Bezug auf 4A und 4B das Füllen der Matrizen MAT und MAT' beschrieben, wenn die Adressgeneratoren ADDRESS und ADDRESS' im stabilen Zustand arbeiten, in dem der Verzögerungs-Zunahme-Parameter M gleich 3 ist. Zweitens wird angenommen, dass die Adressgeneratoren ADDRESS und ADDRESS' in den Übergangszustand gebracht werden, in dem der Verzögerungs-Zunahme-Parameter M von 3 auf 2 verringert wird. Zur Erklärung des Füllens von MAT und MAT' in diesem Zustand wird auf 5A und 5B Bezug genommen. In einem letzten Abschnitt werden die Adressgeneratoren ADDRESS und ADDRESS' in den Übergangszustand gebracht, in dem der Verzögerungs-Zunahme-Parameter M von 3 auf 4 erhöht wird. Das Füllen von MAT und MAT' in diesem letzten Zustand wird mit Bezug auf 6A und 6B beschrieben.
  • In 4A ist die Matrix MAT gezeigt. Jede Zeile der Matrix MAT wird durch einen First-In-First-Out-Speicher gebildet, dessen hinten liegende Speicherzelle auf der linken Seite und dessen vorne liegende Speicherzelle auf der rechten Seite liegt. Wenn ein Byte an eine Zeile von Matrix MAT angelegt wird, wird es somit in der hinten liegenden Speicherzelle gespeichert. Bevor dieses Byte in die hinten liegende Speicherzelle geschrieben wird, wird jedoch das Byte in der vorne liegenden Speicherzelle ausgelesen, und alle Bytes in dem First-In-First-Out-Speicher werden eine Position in Richtung auf die vorne liegende Speicherzelle verschoben. Ein solcher First-In-First-Out-Speicher kann in Hardware (z.B. als Schieberegister) oder Software realisiert werden (indem die Zeiger auf die hinten und die vorne liegende Speicherzelle jedes Mal, wenn ein Byte geschrieben oder gelesen wird, mit einem Programm angepasst werden). Die Schreib-Lese-Verzögerung, die ein an eine Zeile der Matrix MAT angelegtes Byte erfährt, ist proportional zur Länge des First-In-First-Out-Speichers, der diese Zeile bildet. Die in 4A gezeigte Matrix enthält 5 Zeilen mit den Ordinaten 0, 1, 2, 3 und 4 und First-In-First-Out-Speicher Fifo0, Fifo1, Fifo2, Fifo3 und Fifo4. Die Verzögerung, die ein Byte in MAT erfährt, ist gleich j.M.l. Hierin ist j die Ordinate der Zeile, M ist die Verzögerungs-Zunahme pro Zeile, und l ist die Anzahl der Zeilen in der Matrix MAT.
  • Die Entschachtelungs-Matrix MAT' in 4B ist gleich der Verschachtelungs-Matrix MAT in 4A, die Zeilen-Ordinaten sind jedoch umgekehrt, so dass Zeilen-Ordinaten, die in der Verschachtelungs-Matrix MAT kurzen First-In-First-Out-Speichern entsprechen, in der Entschachtelungs-Matrix MAT' langen First-In-First-Out-Speichern entsprechen.
  • Wenn ein Byte an eine Zeile im Verschachteler INTERLEAVER angelegt wird, zum Beispiel Zeile 2, wird es in der hinten liegenden Speicherzelle von Fifo2 gespeichert, nachdem ein Byte aus der vorne liegenden Speicherzelle von Fifo2 ausgelesen wurde, um über die in 1 gezeigte Übertragungsleitung TL übertragen zu werden. Bei Empfang am Entschachteler DE-INTERLEAVER wird dieses Byte in der hinten liegenden Speicherzelle von Fifo2' gespeichert, nachdem ein Byte aus der vorne liegenden Speicherzelle von Fifo2' ausgelesen wurde. Da die Summe der Schreib-Lese-Verzögerung einer Zeile des Verschachtelers INTERLEAVER und der der entsprechenden Zeile im Entschachteler DE-INTERLEAVER konstant ist, erfährt jedes Byte dieselbe globale Verzögerung. Nacheinander eintreffende Bytes werden in aufeinander folgende Zeilen der Matrix MAT eingeschrieben. Das erste Byte erfährt keine Verschachtelungs-Verzögerung und wird sofort zum Empfänger übertragen. Fifo0 ist daher in 4A eine leere Warteschlange. Das zweite Byte wird in Fifo1 geschrieben, was in 4A mit w2 gekennzeichnet ist. Das dritte Byte, vierte Byte und fünfte Byte wird an Fifo2, Fifo3, bzw. Fifo4 angelegt und füllt die mit w3, w4 und w5 bezeichneten Speicherzellen. Das sechste Byte durchläuft wieder Fifo0 und erfährt keine Verschachtelungs-Verzögerung, und die Bytes 7, 8, 9 und 10 werden nacheinander in den neuen hinten liegenden Speicherzellen von Fifo1, Fifo2, Fifo3 und Fifo4 gespeichert, die mit w7, w8, w9, bzw. w10 bezeichnet sind. Während Bytes in die hinten liegenden Speicherzellen der Warteschlangen geschrieben werden, werden Bytes aus den vorne liegenden Speicherzellen ausgelesen. Somit wird das erste Byte ohne Verschachtelungs-Verzögerung übertragen und wird von den Bytes r2, r3, r4, r5 gefolgt, die aus Fifo1, Fifo2, Fifo3, bzw. Fifo4 ausgelesen werden. Dann wird wieder ein Byte ohne Verschachtelungs-Verzögerung übertragen, und auf dieses folgen die Bytes r7, r8, r9 und r10. Die in 4B verwendeten Indizes mit den vorangestellten Buchstaben w und r zeigen auf ähnliche Weise, wie der verschachtelte eintreffende Strom von Bytes in der Entschachtelungs-Matrix MAT' gespeichert und aus ihr ausgelesen wird, um den nicht verschachtelten Ausgangs-Datenstrom zu bilden. In 4B ist Fifo4' eine leere Warteschlange, die anzeigt, dass an diese Zeile angelegte Bytes keine Entschachtelungs-Verzögerung erfahren.
  • Es wird angenommen, dass während des stabilen Zustandes des Systems die verschiedenen Bitraten an den Eingängen und den Ausgängen des Verschachtelers und Entschachtelers gleich sind. Die Verschachtelungstiefe D ist gleich l·M + 1. Hierin ist 1 wieder die Anzahl von Zeilen der Verschachtelungs-Matrix MAT.
  • Der Übergangszustand, in dem M von 3 auf 2 verringert wird, wird eingenommen, indem ein Byte w1 in eine Speicherzelle von Fifo0 geschrieben wird. Statt ein Byte aus Fifo0 auszulesen, wird nun ein Byte r1 aus Fifo4 ausgelesen. Die nächsten zu übertragenden Bytes werden ausgelesen aus:
    • – Fifo3 (r2) und Fifo4 (r3);
    • – Fifo2 (r4), Fifo3 (r5) und Fifo4 (r6);
    • – Fifo1 (r7), Fifo2 (r8), Fifo3 (r9) und Fifo4 (r10).
  • In der Zwischenzeit werden die Bytes w2 bis w10 in den Speicher des Verschachtelers geschrieben. Die Bytes, die aus der Matrix MAT im Verschachteler ausgelesen werden, werden zum Empfänger übertragen und im Entschachteler in entsprechenden Zeilen der Matrix MAT' gespeichert. Die Bytes r1 bis r10 von 5A repräsentieren somit die Bytes w1' bis w10' in 5B. Auf ähnliche Weise werden die Bytes r1' bis r10' aus der Matrix MAT' ausgelesen, um den entschachtelten Ausgangs-Datenstrom zu bilden, der an den Decodierer in 1 angelegt wird. Die Bytes, die während des Übergangszustandes geschrieben und gelesen werden, sind in 5A und 5B grau schattiert. Am Ende des Übergangszustandes ist ein Puffer BUF der Größe l·(l – 1)/2 sowohl im Verschachteler (siehe 5A), als auch im Entschachteler (siehe 5B) vorhanden. Um einen Verschachteler mit einem Verzögerungs-Zunahme-Parameter M = 2 zu erhalten, müssen diese beiden Puffer BUF geleert werden. Der Speicherbedarf zur Durchführung des Übergangs von M = 3 auf M = 2 ist somit l(l – 1)/2 Bytes im Verschachteler und im Entschachteler. Dieser Speicher kann durch eine vergrößerte Kapazität der First-In-First-Out-Warteschlangen der Matrizen MAT und MAT' bereitgestellt werden, oder er kann durch einen normalen Speicher ohne eine First-In-First-Out-Struktur implementiert werden.
  • Es soll darauf hingewiesen werden, dass statt nur Nutz-Bytes über die Übertragungsleitung TL zu übertragen, Leer-Bytes in dem gesendeten Datenstrom eingefügt werden können. Solche Leer-Bytes werden nicht entschachtelt. Eine alternative Übertragungs-Sequenz für die oben beschriebene ist:
    • – 4 Leer-Bytes werden gesendet, Byte r1 aus Fifo4 wird gesendet;
    • – 3 Leer-Bytes werden gesendet, Byte r2 und r3 aus Fifo3 und Fifo4 werden gesendet;
    • – 2 Leer-Bytes werden gesendet, Byte r4, r5 und r6 aus Fifo2, Fifo3 und Fifo4 werden gesendet;
    • – 1 Leer-Byte wird gesendet, Byte r7, r8, r9 und r10 aus Fifo1, Fifo2, Fifo3 und Fifo4 werden gesendet.
  • Im Vergleich zur obigen Version des Übergangszustandes hat die letztgenannte Implementation den Nachteil, dass ein Teil der Bandbreite der Übertragungsleitung TL für die Übertragung von Leer-Bytes benutzt wird, hat aber den Vorteil, dass während der Änderung von M die Störunempfindlichkeit nicht verloren geht. Die letztgenannte Implementation erfordert darüber hinaus keinen Puffer BUF im Entschachteler, aber die Größe des Puffers im Verschachteler hat sich verdoppelt.
  • Wenn die Senderate für die Übertragung über die Leitung TL steigt, muss die Verschachtelungstiefe D auch steigen, um die Unempfindlichkeit gegen impulsförmige Störungen konstant zu halten. Dies kann wieder dadurch realisiert werden, dass M und die Struktur der Matrizen MAT und MAT' manipuliert werden. In den folgenden Abschnitten wird geklärt, wie M während der in 6A und 6B gezeigten Übergangszustände von 3 auf 4 erhöht werden kann.
  • Die Übergangsphase zur Erhöhung von M von 3 auf 4 wird ausgelöst, indem ein Puffer BUF mit l·(l – 1) Bytes im Verschachteler gefüllt wird. Anschließend wird folgende Sequenz von Bytes gesendet:
    • – Ein Byte (r1) aus Fifo0;
    • – Ein Byte (r2) aus Fifo0 und ein Byte (r3) aus Fifo1;
    • – Ein Byte (r4) aus Fifo0, ein Byte (r5) aus Fifo1 und ein Byte (r6) aus Fifo2;
    • – Ein Byte (r7) aus Fifo0, ein Byte (r8) aus Fifo1, ein Byte (r9) aus Fifo2 und ein Byte (r10) aus Fifo3.
  • Während dieses Übergangszustandes werden über die Übertragungsleitung TL übertragene Bytes in die entsprechenden Zeilen des Entschachteler-Speichers geschrieben, aber keine Bytes werden aus dem Entschachteler-Speicher ausgelesen. Nach dem Übergangszustand kehren der Entschachteler und der Verschachteler in den stabilen Zustand mit der Verzögerungs-Zunahme-Schrittweite M = 4 zurück. Im Verschachteler-Speicher enthält ein Puffer BUF von l·(l – 1)/2 Speicherzellen nun Bytes. Um einen Verschachteler mit der Verzögerungs-Zunahme M = 4 zu erhalten, muss dieser Puffer BUF geleert werden. Der Speicherbedarf zur Durchführung des Übergangs von M = 3 auf M = 4 ist l·(l – 1) Bytes im Verschachteler. Dieser kann wieder durch eine vergrößerte Kapazität der First-In-First-Out-Speicher FifoO, Fifo1, Fifo2, Fifo3 und Fifo4 der Matrix MAT bereitgestellt werden, oder der Puffer BUF kann durch einen normalen Speicher ohne First-In-First-Out-Struktur implementiert werden.
  • Es soll darauf hingewiesen werden, dass statt nur Nutz-Bytes über die Übertragungsleitung TL zu übertragen, man erneut an eine alternative Implementation denken kann, in der Leer-Bytes gesendet werden. Die Sequenz zur Übertragung von Bytes kann dann folgende sein:
    • – Ein Byte (r1) aus Fifo0, gefolgt von 4 Leer-Bytes;
    • – Ein Byte (r2) aus Fifo0 und ein Byte (r2) aus Fifo1, gefolgt von 3 Leer-Bytes;
    • – Ein Byte (r4) aus Fifo0, ein Byte (r5) aus Fifo1 und ein Byte (r6) aus Fifo2, gefolgt von 2 Leer-Bytes; und
    • – Ein Byte (r7) aus Fifo0, ein Byte (r8) aus Fifo1, ein Byte (r9) aus Fifo2 und ein Byte (r10) aus Fifo3, gefolgt von einem Leer-Byte.
  • Im Vergleich zur ersten Version hat die letztgenannte Implementation des Übergangszustandes den Nachteil, dass ein Teil der Bandbreite der Übertragungsleitung TL für die Übertragung von Leer-Bytes benutzt wird, hat aber den Vorteil, dass während der Änderung von M die Störunempfindlichkeit nicht verloren geht. Die letztgenannte Implementation erfordert darüber hinaus keinen Puffer im Verschachteler und der Adressgenerator kann weniger kompliziert sein.
  • Es soll darauf hingewiesen werden, dass die Anwendbarkeit der vorliegenden Erfindung nicht durch das Übertragungsmedium der Übertragungsleitung TL eingeschränkt wird. Insbesondere kann jede beliebige Verbindung zwischen dem Sender TX und dem Empfänger RX, z.B. eine Kabelverbindung, eine Telefonleitung, eine Satellitenverbindung, eine optische Faser, eine Funkverbindung über die Luft und so weiter durch impulsförmige Störungen beeinflusst werden und kann somit durch ein Verfahren gemäß der vorliegenden Erfindung geschützt werden.
  • Die vorliegende Erfindung ist sehr geeignet für den Einsatz in VDSL-(Very High Speed Digital Subscriber Line)-Modems oder ähnlichem. Diese Modems übertragen digitale Daten mit hohen Bitraten über Telefonleitungen. Die Telefonleitungen können durch mehrere Quellen impulsförmiger Störungen beeinträchtigt werden, insbesondere wenn die Leitungen oberirdisch verlegt sind. Funkstörungen von Funkamateuren, kritische Wetterbedingungen, Transienten durch Klingeln und Einhängen sind einige der Störquellen, durch welche die Übertragung über solche Telefonleitungen beeinflusst wird. Obwohl die vorliegende Erfindung eine interessante Lösung zur Bereitstellung einer von der Übertragungsrate unabhängigen Unempfindlichkeit gegen impulsförmige Störungen in solchen VDSL-Systemen ist, ist die Anwendbarkeit der vorliegenden Erfindung nicht auf diese Systeme oder auf ähnliche Systeme, die denselben Typ von Modulation und/oder Codierung haben, begrenzt. Wie ein Fachmann erkennt, sind die Modulations-Konstellation und das Codierverfahren, das vom Modulator, bzw. dem Codierer verwendet wird, für die vorliegende Erfindung nicht von Bedeutung.
  • Es wird weiterhin darauf hingewiesen, dass der Sender TX und der Empfänger RX gemäß der vorliegenden Erfindung in einen einzigen Transceiver integriert werden können. Dies ist so in Modems, die Daten zu und von einer bidirektionalen Übertragungsleitung senden und empfangen. In dem Fall, dass der Sender und der Empfänger integriert sind, können die dreieckigen Verschachtelungs- und Entschachtelungs-Matrizen MAT und MAT' so gruppiert werden, dass sie eine rechteckige Verschachtelungs-/Entschachtelungs-Matrix bilden. Offensichtlich können auch die Funktionalitäten beider Schreib-Mittel WRITE und WRITE', beider Lese-Mittel READ und READ', beider Adressierungs-Mittel ADDRESS und ADDRESS' und beider Steuerungen CTRL und CTRL' kombiniert und in eine Schreib-Einheit, eine Lese-Einheit, eine Adressierungs-Einheit, bzw. eine Steuereinheit integriert werden.
  • Es wird weiterhin darauf hingewiesen, dass mit der vorliegenden Erfindung der Verzögerungs-Zunahme-Parameter M um mehr als eine Einheit erhöht oder verringert werden kann. Sowohl für den Erhöhungs- als auch den Verringerungs-Prozess reicht es aus, die oben beschriebenen Übergangszustände mehr als einmal auszuführen.
  • Obwohl die Prinzipien der vorliegenden Erfindung oben in Verbindung mit einer speziellen Vorrichtung beschrieben wurden, muss deutlich verstanden werden, dass diese Beschreibung nur als Beispiel erfolgt und nicht als Einschränkung des Umfangs der Erfindung.

Claims (12)

  1. Verfahren zur Verschachtelung eintreffender Datenbytes (w1, ..., w10) eines eintreffenden Datenstroms (ID), um dadurch einen abgehenden verschachtelten Datenstrom (OID) mit abgehenden verschachtelten Datenbytes (r1, ..., r10) zu erzeugen, wobei die eintreffenden Datenbytes (w1, ..., w10) in hinten liegende Speicherzellen von Zeilen einer dreieckigen Matrix (MAT) von Speicherzellen geschrieben werden, worin jede Zeile von Speicherzellen in der Matrix (MAT) eine First-In-First-Out-Warteschlange (Fifo0, Fifo1, Fifo2, Fifo3, Fifo4) repräsentiert und worin die abgehenden verschachtelten Datenbytes (r1, ..., r10) aus vorne liegenden Speicherzellen der Zeilen ausgelesen werden und dadurch der abgehende verschachtelte Datenstrom (OID) realisiert wird, DADURCH GEKENNZEICHNET, DASS, wenn sich die Übertragungsrate für die Übertragung des abgehenden verschachtelten Datenstroms (OID) erhöht oder verringert, aus jeder Zeile eine Anzahl der abgehenden verschachtelten Datenbytes (r1, ..., r10) ausgelesen wird, die negativ, bzw. positiv linear mit einer Ordinaten-Nummer (0, 1, 2, 3, 4) der Zeile in der dreieckigen Matrix (MAT) verknüpft ist, wobei in der Zwischenzeit eine gleiche Anzahl von eintreffenden Datenbytes (w1, ..., w10) in jede Zeile der dreieckigen Matrix geschrieben wird.
  2. Verfahren zur Verschachtelung gemäß Anspruch 1, DADURCH GEKENNZEICHNET, DASS, wenn die Übertragungsrate sinkt, aufeinander folgende abgehende verschachtelte Datenbytes (r1, ..., r10) ausgelesen werden aus: – Zeile 1; – Zeile l – 1 und Zeile 1; – Zeile l – 2, Zeile l – 1 und Zeile 1, und so weiter, bis abgehende verschachtelte Datenbytes aus Zeile 1 bis Zeile l – 1 ausgelesen sind, wobei l die Anzahl von Zeilen in der dreieckigen Matrix (MAT) ist.
  3. Verfahren zur Verschachtelung gemäß Anspruch 2, DADURCH GEKENNZEICHNET, DASS l – 1 Leer-Bytes erzeugt und in den abgehenden verschachtelten Datenstrom (OID) eingefügt werden, bevor ein erstes abgehendes verschachteltes Datenbyte aus Zeile 1 ausgelesen wird; l – 2 Leer-Bytes erzeugt und in den abgehenden verschachtelten Datenstrom (OID) eingefügt werden, bevor ein erstes abgehendes verschachteltes Datenbyte aus Zeile l – 1 ausgelesen wird; l – 3 Leer-Bytes erzeugt und in den abgehenden verschachtelten Datenstrom (OID) eingefügt werden, bevor ein erstes abgehendes verschachteltes Datenbyte aus Zeile l – 2 ausgelesen wird, und so weiter.
  4. Verfahren zur Verschachtelung gemäß Anspruch 1, DADURCH GEKENNZEICHNET, DASS, wenn die Übertragungsrate steigt, aufeinander folgende abgehende verschachtelte Datenbytes (r1, ..., r10) ausgelesen werden aus: – Zeile 0; – Zeile 0 und Zeile 1; – Zeile 0, Zeile 1 und Zeile 2, und so weiter, bis abgehende verschachtelte Datenbytes aus Zeile 0 bis Zeile l – 2 ausgelesen sind, wobei l die Anzahl von Zeilen in der dreieckigen Matrix (MAT) ist.
  5. Verfahren zur Verschachtelung gemäß Anspruch 4, DADURCH GEKENNZEICHNET, DASS l – 1 Leer-Bytes erzeugt und in den abgehenden verschachtelten Datenstrom (OID) eingefügt werden, nachdem ein erstes abgehendes verschachteltes Datenbyte aus Zeile 0 ausgelesen wird; l – 2 Leer-Bytes erzeugt und in den abgehenden verschachtelten Datenstrom (OID) eingefügt werden, nachdem ein erstes abgehendes verschachteltes Datenbyte aus Zeile 1 ausgelesen wird; l – 3 Leer-Bytes erzeugt und in den abgehenden verschachtelten Datenstrom (OID) eingefügt werden, nachdem ein erstes abgehendes verschachteltes Datenbyte aus Zeile 2 ausgelesen wird, und so weiter.
  6. Verfahren zur Entschachtelung eintreffender verschachtelter Datenbytes (w1', ..., w10') eines eintreffenden verschachtelten Datenstroms (IID), um dadurch einen abgehenden Datenstrom (OD) mit abgehenden Datenbytes (r1', ..., r10') zu erzeugen, wobei die eintreffenden verschachtelten Datenbytes (w1', ..., w10') in hinten liegende Speicherzellen von Zeilen einer dreieckigen Matrix (MAT') von Speicherzellen geschrieben werden, worin jede Zeile von Speicherzellen in der Matrix (MAT') eine First-In-First-Out-Warteschlange (Fifo0', Fifo1', Fifo2', Fifo3', Fifo4') repräsentiert und worin die abgehenden Datenbytes (r1', ..., r10') aus vorne liegenden Speicherzellen der Zeilen ausgelesen werden und dadurch der abgehende Datenstrom (OD) realisiert wird, DADURCH GEKENNZEICHNET, DASS, wenn sich die Übertragungsrate für die Übertragung des eintreffenden verschachtelten Datenstroms (IID) erhöht oder verringert, in jede Zeile der dreieckigen Matrix (MAT') eine Anzahl der eintreffenden verschachtelten Datenbytes (w1', ..., w10') geschrieben wird, die negativ, bzw. positiv linear mit einer Ordinaten-Nummer (0, 1, 2, 3, 4) der Zeile in der dreieckigen Matrix (MAT') verknüpft ist, wobei in der Zwischenzeit eine gleiche Anzahl von abgehenden Datenbytes (r1', ..., r10') aus jeder Zeile der dreieckigen Matrix (MAT') gelesen wird.
  7. Verschachtelungs-Vorrichtung (INTERLEAVER), die dazu verwendet wird, die Reihenfolge eintreffender Datenbytes (w1, ..., w10) eines eintreffenden Datenstroms (ID) zu ändern, um dadurch einen abgehenden verschachtelten Datenstrom (OID) aus abgehenden verschachtelten Datenbytes (r1, ..., r10) zu erzeugen, wobei die Verschachtelungs-Vorrichtung (INTERLEAVER) folgendes umfasst: a. Speicher-Mittel (MEM), die eine Vielzahl von First-In-First-Out-Warteschlangen (Fifo0, Fifo1, Fifo2, Fifo3, Fifo4) enthalten, die so angepasst sind, dass sie entsprechende Zeilen einer dreieckigen Matrix (MAT) von Speicherzellen repräsentieren; b. Schreib-Mittel (WRITE) mit einem Ausgang, der mit einem Eingang der Speicher-Mittel (MEM) gekoppelt ist, wobei die Schreib-Mittel (WRITE) so angepasst sind, dass sie jedes der eintreffenden Datenbytes (w1, ..., w10) in eine hinten liegende Speicherzelle einer der Zeilen schreiben, die durch eine Schreibadresse gekennzeichnet wird; c. Lese-Mittel (READ) mit einem Eingang, der mit einem Ausgang der Speicher-Mittel (MEM) gekoppelt ist, wobei die Lese-Mittel (READ) so angepasst sind, dass sie jedes der abgehenden verschachtelten Datenbytes (r1, ..., r10) aus einer vorne liegenden Speicherzelle einer der Zeilen lesen, die durch eine Leseadresse gekennzeichnet wird; und d. Adresserzeugungs-Mittel (ADDRESS), von denen ein erster Ausgang mit einem Adress-Eingang (AI1) der Schreib-Mittel (WRITE) gekoppelt ist und von denen ein zweiter Ausgang mit einem Adress-Eingang (AI2) der Lese-Mittel (READ) gekoppelt ist, wobei die Adresserzeugungs-Mittel (ADDRESS) so angepasst sind, dass sie die Schreibadresse und die Leseadresse erzeugen, DADURCH GEKENNZEICHNET, DASS die Adresserzeugungs-Mittel (ADDRESS) weiterhin so angepasst sind, dass sie, wenn sich die Übertragungsrate für die Übertragung des abgehenden verschachtelten Datenstroms (OID) erhöht oder verringert, für jede Zeile eine Anzahl von Leseadressen erzeugen, die negativ, bzw. positiv linear mit einer Ordinaten-Nummer (0, 1, 2, 3, 4) der Zeile in der dreieckigen Matrix (MAT) verknüpft ist, und in der Zwischenzeit eine gleich große Anzahl von Schreibadressen für jede Zeile der dreieckigen Matrix (MAT) erzeugen.
  8. Verschachtelungs-Vorrichtung (INTERLEAVER) gemäß Anspruch 7, DADURCH GEKENNZEICHNET, DASS die Verschachtelungs-Vorrichtung (INTERLEAVER) weiterhin folgendes enthält: e. Steuerungs-Mittel (CTRL), von denen ein Ausgang mit einem Steuerungs-Eingang (CI) der Adresserzeugungs-Mittel (ADDRESS) gekoppelt ist, wobei die Steuerungs-Mittel (CTRL) so angepasst sind, dass sie die Adresserzeugungs-Mittel (ADDRESS) entweder in einen stabilen Zustand oder in einen Übergangszustand bringen, und weiterhin dadurch, dass f. das Adresserzeugungs-Mittel (ADDRESS) so angepasst ist, die Leseadressen auf diese Weise im Übergangszustand zu erzeugen, und so angepasst ist, im stabilen Zustand für jede Zeile der dreieckigen Matrix (MAT) eine gleiche Anzahl von Leseadressen zu erzeugen und in der Zwischenzeit für jede Zeile eine gleiche Anzahl von Schreibadressen zu erzeugen.
  9. Verschachtelungs-Vorrichtung (INTERLEAVER) gemäß Anspruch 7, DADURCH GEKENNZEICHNET, DASS das Speicher-Mittel (MEM) weiterhin folgendes enthält: g. Einen Puffer von höchstens l·(l – 1) Speicherzellen, wobei l die Anzahl der Zeilen in der dreieckigen Matrix (MAT) ist, und wobei der Puffer so angepasst ist, vorübergehend einen Teil der eintreffenden Datenbytes (w1, ..., w10) zu speichern.
  10. Entschachtelungs-Vorrichtung (DE-INTERLEAVER), die dazu verwendet wird, die Reihenfolge eintreffender verschachtelter Datenbytes (w1', ..., w10') eines eintreffenden verschachtelten Datenstroms (IID) zu ändern, um dadurch einen abgehenden Datenstrom (OD) aus abgehenden Datenbytes (r1', ..., r10') zu erzeugen, wobei die Entschachtelungs-Vorrichtung (DE-INTERLERVER) folgendes umfasst: a. Speicher-Mittel (MEM'), die eine Vielzahl von First-In-First-Out-Warteschlangen (Fifo0', Fifo1', Fifo2', Fifo3', Fifo4') enthalten, die so angepasst sind, dass sie entsprechende Zeilen einer dreieckigen Matrix (MAT) von Speicherzellen repräsentieren; b. Schreib-Mittel (WRITE') mit einem Ausgang, der mit einem Eingang der Speicher-Mittel (MEM') gekoppelt ist, wobei die Schreib-Mittel (WRITE') so angepasst sind, dass sie jedes der eintreffenden verschachtelten Datenbytes (w1', ..., w10') in eine hinten liegende Speicherzelle einer der Zeilen schreiben, die durch eine Schreibadresse gekennzeichnet wird; c. Lese-Mittel (READ') mit einem Eingang, der mit einem Ausgang der Speicher-Mittel (MEM') gekoppelt ist, wobei die Lese-Mittel (READ') so angepasst sind, dass sie jedes der abgehenden Datenbytes (r1', ..., r10') aus einer vorne liegenden Speicherzelle einer der Zeilen lesen, die durch eine Leseadresse gekennzeichnet wird; und d. Adresserzeugungs-Mittel (ADDRESS'), von denen ein erster Ausgang mit einem Adress-Eingang (AI1') der Schreib-Mittel (WRITE') gekoppelt ist und von denen ein zweiter Ausgang mit einem Adress-Eingang (AI2') der Lese-Mittel (READ') gekoppelt ist, wobei die Adresserzeugungs-Mittel (ADDRESS') so angepasst sind, dass sie die Schreibadresse und die Leseadresse erzeugen, DADURCH GEKENNZEICHNET, DASS die Adresserzeugungs-Mittel (ADDRESS') weiterhin so angepasst sind, dass sie, wenn sich die Übertragungsrate für die Übertragung des eintreffenden verschachtelten Datenstroms (IID) erhöht oder verringert, für jede Zeile der dreieckigen Matrix (MAT') eine Anzahl von Schreibadressen erzeugen, die negativ, bzw. positiv linear mit einer Ordinaten-Nummer (0, 1, 2, 3, 4) der Zeile in der dreieckigen Matrix (MAT') verknüpft ist, und in der Zwischenzeit eine gleich große Anzahl von Leseadressen für jede Zeile der dreieckigen Matrix (MAT') erzeugen.
  11. Entschachtelungs-Vorrichtung (DE-INTERLEAVER) gemäß Anspruch 10, DADURCH GEKENNZEICHNET, DASS die Entschachtelungs-Vorrichtung (DE-INTERLEAVER) weiterhin folgendes enthält: e. Steuerungs-Mittel (CTRL'), von denen ein Ausgang mit einem Steuerungs-Eingang (CI') der Adresserzeugungs-Mittel (ADDRESS') gekoppelt ist, wobei die Steuerungs-Mittel (CTRL') so angepasst sind, dass sie die Adresserzeugungs-Mittel (ADDRESS') entweder in einen stabilen Zustand oder in einen Übergangszustand bringen, und weiterhin dadurch, dass f. das Adresserzeugungs-Mittel (ADDRESS') so angepasst ist, die Schreibadressen auf diese Weise im Übergangszustand zu erzeugen, und so angepasst ist, im stabilen Zustand für jede Zeile der dreieckigen Matrix (MAT') eine gleiche Anzahl von Leseadressen zu erzeugen und in der Zwischenzeit für jede Zeile eine gleiche Anzahl von Schreibadressen zu erzeugen.
  12. Entschachtelungs-Vorrichtung (DE-INTERLEAVER) gemäß Anspruch 10, DADURCH GEKENNZEICHNET, DASS das Speicher-Mittel (MEM') weiterhin folgendes enthält: g. Einen Puffer von höchstens l·(l – 1)/2 Speicherzellen, wobei l die Anzahl der Zeilen in der dreieckigen Matrix (MAT') ist, und wobei der Puffer so angepasst ist, vorübergehend einen Teil der eintreffenden verschachtelten Datenbytes (w1', ..., w10') zu speichern.
DE69732896T 1997-01-31 1997-01-31 Verfahren und Geräte zur Schachtelung/Entschachtelung von digitalen Daten und Kommunikationssystem Expired - Lifetime DE69732896T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP97400231A EP0856949B1 (de) 1997-01-31 1997-01-31 Verfahren und Geräte zur Schachtelung/Entschachtelung von digitalen Daten und Kommunikationssystem

Publications (2)

Publication Number Publication Date
DE69732896D1 DE69732896D1 (de) 2005-05-04
DE69732896T2 true DE69732896T2 (de) 2006-05-11

Family

ID=8229705

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69732896T Expired - Lifetime DE69732896T2 (de) 1997-01-31 1997-01-31 Verfahren und Geräte zur Schachtelung/Entschachtelung von digitalen Daten und Kommunikationssystem

Country Status (10)

Country Link
US (1) US6151690A (de)
EP (1) EP0856949B1 (de)
JP (1) JP4049429B2 (de)
KR (1) KR100502384B1 (de)
AT (1) ATE292336T1 (de)
AU (1) AU726761B2 (de)
CA (1) CA2225058A1 (de)
DE (1) DE69732896T2 (de)
ES (1) ES2236784T3 (de)
IL (1) IL122982A (de)

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6055277A (en) * 1997-05-29 2000-04-25 Trw Docket No. Communication system for broadcasting to mobile users
GB2332836A (en) * 1997-12-24 1999-06-30 Daewoo Electronics Co Ltd Adaptive convolutional interleaver and deinterleaver
US6507629B1 (en) * 1998-04-07 2003-01-14 Sony Corporation Address generator, interleave unit, deinterleave unit, and transmission unit
WO1999062184A1 (fr) * 1998-05-27 1999-12-02 Ntt Mobile Communications Network Inc. Procede et dispositif d'intercalage, et procede et dispositif de desintercalage
JP3359291B2 (ja) * 1998-07-17 2002-12-24 株式会社ケンウッド デインターリーブ回路
US6347385B1 (en) * 1998-08-03 2002-02-12 Nortel Networks Limited Interleavers for turbo code
US6381728B1 (en) * 1998-08-14 2002-04-30 Qualcomm Incorporated Partitioned interleaver memory for map decoder
GB2343342A (en) * 1998-10-28 2000-05-03 Int Mobile Satellite Org Satellite communication system with variable data transmission rate
US6536001B1 (en) * 1999-03-11 2003-03-18 Globespanvirata, Inc. Circuit and method for convolutional interleaving using a single modulo operation
US6553517B1 (en) 1999-04-09 2003-04-22 Sony Corporation Interleavers and de-interleavers
KR100526512B1 (ko) * 1999-05-20 2005-11-08 삼성전자주식회사 이동 통신시스템의 직렬 쇄상 컨볼루션 부호화를 위한 인터리빙장치 및 방법
US7099401B2 (en) * 1999-12-15 2006-08-29 Paradyne Corporation Discrete multitone interleaver
US7088781B2 (en) * 1999-12-15 2006-08-08 Paradyne Corporation Tone ordered discrete multitone interleaver
US6823002B1 (en) * 1999-12-15 2004-11-23 Paradyne Corporation Linear block interleaver for discrete multi-tone modulation
US6971057B1 (en) * 2000-02-25 2005-11-29 Globespanvirata, Inc. System and method for efficient convolutional interleaving/de-interleaving
US6634009B1 (en) * 2000-03-08 2003-10-14 Altera Corporation Interleaver-deinterleaver megacore
FR2812150A1 (fr) * 2000-07-18 2002-01-25 St Microelectronics Sa Dispositif d'emission/reception de donnees numeriques capable de traiter des debits differents, en particulier dans un environnement vdsl
GB2369274A (en) * 2000-11-17 2002-05-22 Ubinetics Ltd Interleaving by data permutation without a matrix
US6981031B2 (en) * 2000-12-15 2005-12-27 International Business Machines Corporation Language independent message management for multi-node application systems
JP4336809B2 (ja) * 2001-02-16 2009-09-30 日本電気株式会社 インタリーブ方法
US7385949B1 (en) 2001-06-05 2008-06-10 Broadcom Corporation System and method for de-interleaving data in a wireless receiver
US6772377B2 (en) * 2001-09-28 2004-08-03 Texas Instruments Incorporated Convolutional interleaving with interleave depth larger than codeword size
US7024596B2 (en) * 2001-11-12 2006-04-04 Broadcom Corporation Efficient address generation for interleaver and de-interleaver
US6954832B2 (en) * 2002-05-31 2005-10-11 Broadcom Corporation Interleaver for iterative decoder
US7433429B2 (en) * 2002-07-19 2008-10-07 Intel Corporation De-interleaver method and system
US7069398B2 (en) * 2003-06-20 2006-06-27 Industrial Technology Research Institute Apparatus and method for de-interleaving the interleaved data in a coded orthogonal frequency division multiplexing receiver
FR2857178B1 (fr) * 2003-07-04 2005-09-30 St Microelectronics Sa Entrelaceur et dispositif de decodage de signaux numeriques comportant un tel entrelaceur
US8077743B2 (en) * 2003-11-18 2011-12-13 Qualcomm Incorporated Method and apparatus for offset interleaving of vocoder frames
DE102004026800B4 (de) * 2004-05-24 2006-05-24 Infineon Technologies Ag Verfahren zum Verändern einer Tiefe einer Interleaver-Vorrichtung oder Deinterleaver-Vorrichtung sowie entsprechende Interleaver-Vorrichtung, Deinterleaver-Vorrichtung und Kommunikationseinrichtung
TWI261169B (en) * 2004-06-11 2006-09-01 Via Tech Inc Memory size allocation device and method applying in interleaving
EP1633052A1 (de) * 2004-09-07 2006-03-08 STMicroelectronics N.V. Blocksunverschachtelungssystem
CN1750577B (zh) * 2004-09-17 2010-06-16 中兴通讯股份有限公司 一种实现多路交织和解交织的方法和装置
US7831890B2 (en) 2004-10-12 2010-11-09 Aware, Inc. Resource sharing in a telecommunications environment
US7529984B2 (en) * 2004-11-16 2009-05-05 Infineon Technologies Ag Seamless change of depth of a general convolutional interleaver during transmission without loss of data
EP1919085A3 (de) 2004-11-16 2008-05-21 Infineon Technologies AG Nahtloser Wechsel der Tiefe eines allgemeinen Faltungsverschachtelers während der Übertragung ohne Datenverlust
US7716563B2 (en) * 2004-11-30 2010-05-11 Ciena Corporation Method and apparatus for the efficient implementation of a totally general convolutional interleaver in DMT-based xDSL systems
WO2006063210A2 (en) * 2004-12-09 2006-06-15 Conexant Systems, Inc. Method and system for dynamic interleaver adaptation scheme
US7657818B2 (en) 2005-06-22 2010-02-02 Adaptive Spectrum And Signal Alignment, Inc. Dynamic minimum-memory interleaving
JP2009533973A (ja) 2006-04-12 2009-09-17 アウェア, インコーポレイテッド パケット再送信ならびにメモリの共有
US7865796B2 (en) * 2006-09-25 2011-01-04 Broadcom Corporation Method and system for memory partitioning
US7751514B2 (en) * 2007-05-23 2010-07-06 Mediatek Inc. System and method of detecting burst noise and minimizing the effect of burst noise
CN101610089B (zh) * 2008-06-17 2013-06-05 中兴通讯股份有限公司 一种第二次交织及解交织的方法和装置
CN101547064B (zh) * 2009-05-06 2011-11-09 普天信息技术研究院有限公司 一种交织速率匹配和解交织解速率匹配方法
US8189408B2 (en) * 2009-11-17 2012-05-29 Freescale Semiconductor, Inc. Memory device having shifting capability and method thereof
GB2512600A (en) 2013-04-02 2014-10-08 Sony Corp Receivers and methods for receiving signals
GB2512601B (en) 2013-04-02 2016-02-10 Sony Corp Transmitters and methods for transmitting signals
CN103490855B (zh) * 2013-09-09 2017-03-08 华为技术有限公司 传输信息的方法和装置
KR102265052B1 (ko) 2014-12-17 2021-06-15 삼성전자주식회사 적응적으로 인터리빙 깊이를 결정하는 인터리빙 방법 및 장치
KR101579194B1 (ko) * 2015-02-09 2015-12-21 성균관대학교산학협력단 메모리 액세스 방법 및 메모리 장치
US10201026B1 (en) 2016-06-30 2019-02-05 Acacia Communications, Inc. Forward error correction systems and methods
WO2018175711A1 (en) * 2017-03-24 2018-09-27 Intel Corporation Code block segmentation and dynamic crc size adaptation for nr
WO2018187902A1 (en) * 2017-04-10 2018-10-18 Qualcomm Incorporated An efficient interleaver design for polar codes
CN109150198B (zh) 2017-06-16 2021-05-14 华为技术有限公司 一种极化码的交织处理方法及装置
CA3067724A1 (en) * 2017-08-04 2019-02-07 Qualcomm Incorporated A rectangular interleaver design for polar codes
US10505676B1 (en) * 2018-08-10 2019-12-10 Acacia Communications, Inc. System, method, and apparatus for interleaving data
EP3699767A1 (de) * 2019-02-21 2020-08-26 Realtek Semiconductor Corp. Vorrichtung und verfahren zur handhabung eines zeitentschachtelerblocks

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5555412A (en) * 1978-10-17 1980-04-23 Victor Co Of Japan Ltd Signal recording and reproducing device
JPS5753806A (en) * 1980-09-16 1982-03-31 Toshiba Corp Processor of digital signal
US4394642A (en) * 1981-09-21 1983-07-19 Sperry Corporation Apparatus for interleaving and de-interleaving data
US4559625A (en) 1983-07-28 1985-12-17 Cyclotomics, Inc. Interleavers for digital communications
FR2592258B1 (fr) * 1985-12-23 1991-05-03 Thomson Csf Procede et dispositif de transmission radioelectrique d'informations codees, resistant au brouillage
FR2693062B1 (fr) * 1992-06-26 1994-09-23 France Telecom Procédé et dispositif égaliseur à retour de décisions pour la transmission par blocs de symboles d'information.
JP3249280B2 (ja) * 1994-01-11 2002-01-21 富士通株式会社 インターリーブ回路
US5537420A (en) * 1994-05-04 1996-07-16 General Instrument Corporation Of Delaware Convolutional interleaver with reduced memory requirements and address generator therefor
JPH08335887A (ja) * 1995-06-08 1996-12-17 Fujitsu Ltd 複数インタリーブ・マトリクスのインタリーブアドレス生成回路
KR100192797B1 (ko) * 1996-07-01 1999-06-15 전주범 정적 램을 이용한 길쌈인터리버의 구조
US6055277A (en) * 1997-05-29 2000-04-25 Trw Docket No. Communication system for broadcasting to mobile users

Also Published As

Publication number Publication date
ATE292336T1 (de) 2005-04-15
AU726761B2 (en) 2000-11-23
KR100502384B1 (ko) 2005-09-26
EP0856949B1 (de) 2005-03-30
JPH10224236A (ja) 1998-08-21
EP0856949A1 (de) 1998-08-05
DE69732896D1 (de) 2005-05-04
IL122982A (en) 2003-04-10
JP4049429B2 (ja) 2008-02-20
ES2236784T3 (es) 2005-07-16
CA2225058A1 (en) 1998-07-31
US6151690A (en) 2000-11-21
IL122982A0 (en) 1998-08-16
KR19980070970A (ko) 1998-10-26
AU5273098A (en) 1998-08-06

Similar Documents

Publication Publication Date Title
DE69732896T2 (de) Verfahren und Geräte zur Schachtelung/Entschachtelung von digitalen Daten und Kommunikationssystem
DE69931862T2 (de) Vorwärtsfehlerkorrektur für hochratige optische Übertragungssysteme
DE69434501T2 (de) Sender für mit Fehlerkorrekturschutz versehene verwürfelte Daten in einem Übertragungsrahmen
DE69935356T2 (de) Verfahren zur Faltungsentschachtelung
DE3105199A1 (de) Verfahren und system zur uebertragung von datenpaketen
DE69907011T2 (de) Verallgemeinerter faltungsver- und -entschachteler
DE1265247B (de) Zeitmultiplex-UEbertragungsverfahren fuer die UEbertragung einer Mehrzahl von binaeren Nachrichten in einem transparenten Kanal
DE4128412C1 (de)
EP0219917B1 (de) Vermittlungsanlage mit Fehlerkorrektur
DE2515801A1 (de) Verfahren und schaltungsanordnungen zur zeitmultiplexen datenuebertragung
DE2523650C3 (de) Schaltungsanordnung zum Durchschalten von PCM-Wörtern bzw. Datenwörtern unterschiedlicher Bitfolgefrequenz über ein Koppelnetzwerk mit Multiplexleitungen erster, zweiter und dritter Ordnung
DE2729014C2 (de) Schaltungsanordnung für ein mehrstufiges Zeitmultiplex-Raumvielfach-Koppelfeld
DE3318673A1 (de) Schaltungsanordnung zur rahmensynchronisation und beseitigung der phasenmehrdeutigkeit in qam-uebertragunngsanlagen
EP0428089B1 (de) Teilnehmeranschlussknoten eines digitalen Nachrichtenübertragungssystems
DE60008268T2 (de) Wandler und verfahren zum wandeln eines eingangsdatenpaketstroms in einen ausgangsdatenpaketstroms
DE1275088B (de) Schaltungsanordnung fuer rechnergesteuerte Speichervermittlungsanlagen
EP0769853B1 (de) Logischer Block für einen Viterbi-Decoder
EP0018012B1 (de) Digital-Fernmeldesystem für Zweidraht-Getrenntlage-Betrieb
DE102004026800A1 (de) Verfahren zum Verändern einer Tiefe einer Interleaver-Vorrichtung oder Deinterleaver-Vorrichtung sowie entsprechende Interleaver-Vorrichtung und Deinterleaver-Vorrichtung
DE2143442C3 (de) Anordnung zur Erzeugung von Speicheradressen bei einem Zeitvielfachdatennetzwerk
DE4025621C2 (de)
DE2625528A1 (de) Schaltungsanordnung zur multiplexen uebertragung von statistisch anfallenden binaeren signalen
DE3501674A1 (de) Multiplexer/demultiplexer mit flexibler signalverarbeitungsfunktion fuer digitale zeitmultiplex-nachrichtenuebertragungssysteme
WO1998049799A2 (de) Verfahren zur gesicherten datenübertragung in synchronen übertragungssystemen
DE19936272C2 (de) Vorrichtung zum Empfang von digitalen Signalen und Vorrichtung zum Senden von digitalen Signalen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: ALCATEL LUCENT, PARIS, FR