DE60215807T2 - Verfahren zur decodierung einer sequenz von codeworten variabler länge - Google Patents

Verfahren zur decodierung einer sequenz von codeworten variabler länge Download PDF

Info

Publication number
DE60215807T2
DE60215807T2 DE60215807T DE60215807T DE60215807T2 DE 60215807 T2 DE60215807 T2 DE 60215807T2 DE 60215807 T DE60215807 T DE 60215807T DE 60215807 T DE60215807 T DE 60215807T DE 60215807 T2 DE60215807 T2 DE 60215807T2
Authority
DE
Germany
Prior art keywords
states
state
symbols
bit time
group
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
DE60215807T
Other languages
English (en)
Other versions
DE60215807D1 (de
Inventor
Catherine Lamy
Olivier Pothier
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.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
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 Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of DE60215807D1 publication Critical patent/DE60215807D1/de
Application granted granted Critical
Publication of DE60215807T2 publication Critical patent/DE60215807T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/3944Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes for block codes, especially trellis or lattice decoding thereof
    • 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/3955Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using a trellis with a reduced state space complexity, e.g. M-algorithm or T-algorithm
    • 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/63Joint error correction and other techniques
    • H03M13/6312Error control coding in combination with data compression
    • H03M13/6318Error control coding in combination with data compression using variable length codes

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

  • Die vorliegende Erfindung bezieht sich auf ein Verfahren zur Quellendecodierung von Sequenzen von Codeworten variabler Länge, wobei die genannte Quellendecodierung auf einem assoziierten Zustandsdiagramm basiert mit einer Vielzahl von Zuständen und auf einem Code basiert, wobei ein Zustand ein Knoten in der Graphik ist, durch die etwaige decodierte Codewortsequenzen passieren können. Die vorliegende Erfindung bezieht sich auch auf einen Decoder, wobei der genannte Decoder das genannte Verfahren anwendet.
  • Ein derartiges Verfahren kann in jedem beliebigen System angewandt werden, das Codes mit variabler Länge verwendet, wie beispielsweise ein Video- oder Audiokommunikationssystem.
  • Ein Videokommunikationssystem umfasst typischerweise ein Quellencodiersystem, einen Kanal und ein Quellendecodiersystem. Das genannte Quellencodiersystem erzeugt eine Codewortsequenz und überträgt diese über den genannten Kanal zu dem genannten Quellendecodiersystem, das sie durch einen gemeinsamen Code decodiert. Dergenannte gemeinsame Code definiert eine Vielzahl von Symbolen. Eine Codewortsequenz umfasst eine Anzahl Symbole. Die Decodierung erfolgt über ein Zustandsdiagramm (bekannt als Bit gerichtete Graphik), wie in 1 dargestellt.
  • Das Zustandsdiagramm umfasst eine X-Achse, die Bitzeiten darstellt, und eine Y-Achse, die ein Alphabet des gemeinsamen Codes darstellt, der einen Satz mit Werten umfasst. In 1 umfasst das Alphabet drei Werte "1", "01", "00". Eine Box stellt einen Zustand des Zustandsdiagramm dar. Eine Strecke wird durch Übergänge zwischen verschiedenen Zuständen dargestellt und eine decodierte Sequenz wird durch eine Strecke mit einem Anfangszustand (im Allgemeinen den Zustand 0) und einem Endzustand dargestellt.
  • Da es einige Störungen über den Kanal gibt, enthält die empfangene Codewortsequenz Fehler; folglich gibt es eine Vielzahl möglicher decodierter Codewortsequenzen. Das genannte Zustandsdiagramm gibt die möglichen decodierten Codewortsequenzen, wobei ein Zustand ein Knoten in der Graphik ist, durch den die möglichen decodierten Codewortsequenzen hindurchgehen können. Ein optimales Verfahren ist mit Hilfe des Codes nach dem Ganzen möglicher decodierter Codewortsequenzen zu suchen, unabhängig von der empfangenen Sequenz und die beste decodierte Codewortsequenz am Ende der Zu standsdiagrammkonstruktion zu selektieren. Eine L die beste komplette decodierte Codewortsequenz zu finden ist dann, unter diesen Sequenzen nach derjenigen Sequenz zu suchen, die den kleinsten Abstand (entsprechend einer gewählten Metrik) von der empfangenen Sequenz hat.
  • Ein großes Problem bei der Lösung ist, dass die Graphik komplexer ist, je nachdem die gesendete Codewortsequenz länger ist, je komplexer die Graphik ist und je mehr die Anzahl decodierter Codewortsequenzen nach Erweiterungen sucht. Deswegen ist, wie beschrieben in: "Joint source-channel decoding for variable length encoded data by exact and approximate map sequence estimation", "Proceedings of the IEEE Conference on acoustics, Speech and Signal Processing referenced ICASSP'99", Seiten 2451-2454, 15. – 19. März 1999, von Park und Miller, eine vorgeschlagene Lösung für dieses komplexe Problem die Anzahl Zustände zu reduzieren durch Selektion zu jeder Bitzeit der decodierten Codewortsequenz, welche die beste Metrik hat, aus einem Satz der Zustände, die denselben Symbolwert innerhalb des Alphabets des gemeinsamen Codes haben. Diese Lösung aber bietet kein befriedigendes Paketfehlerratenleistung.
  • Auf entsprechende Weise ist es u. a. eine Aufgabe der vorliegenden Erfindung, ein Verfahren und einen Decoder zur Quellendecodierung von Codewortsequenzen mit variabler Länge mit einer Anzahl Symbole zu schaffen, wobei die genannte Quellendecodierung auf einem assoziierten Zustandsdiagramm mit einer Anzahl Zustände basiert und auf einem Code basiert, der durch einen Satz von Symbolwerten definiert ist, wobei ein Zustand ein Knoten ist, durch den mögliche decodierte Codewortsequenzen passieren können und einer Bitzeit sowie einem Symbolwert entspricht, was zu einer effizienten Decodierung mit einer angemessenen Komplexität führt.
  • Dazu umfasst das Verfahren nach der vorliegenden Erfindung einen Schritt zum Reduzieren der Zustände in dem Zustandsdiagramm, und zwar derart, dass bei einer Bitzeit, assoziiert mit einer Gruppe von Zuständen nur Zustände mit der besten Metrik in der Gruppe von Zuständen gespeichert werden, ungeachtet des Symbolwertes.
  • Außerdem umfasst der Decoder nach der vorliegenden Erfindung Zustandsreduktionsmittel, vorgesehen um zu einem Bitzeitpunkt, assoziiert mit einer Gruppe von Zuständen, nur Zustände zu speichern, welche die besten Metriken in der Gruppe von Zuständen haben, ungeachtet des Symbolwertes.
  • Wie nachstehend noch detailliert beschrieben wird, ermöglicht ein derartiges Verfahren einerseits eine Reduktion der Zustände in dem Zustandsdiagramm bei jedem Schritt der Diagrammkonstruktion und andererseits eine bessere Leistung durch das Kriterium, das von der teilweisen Metrikberechnung hergeleitet worden ist.
  • In einer ersten Ausführungsform weist das Verfahren zur Quellendecodierung das Kennzeichen auf, dass das Kriterium derart ist, dass nur ein einziger Zaustand S aus all den Zuständen einer Gruppe G gespeichert wird, welche dieselbe Anzahl Symbole SY haben, entsprechend einem besten Metriklage.
  • Wie nachstehend noch näher erläutert wird, wird die Anzahl Zustände N an der Oberseite durch die Bitzeit begrenzt, folglich wird die Komplexität durch eine derartige obere Grenze begrenzt. Deswegen führt ein derartiges Kriterium zu Leistungen, ähnlich dem optimalen bekannten Verfahren mit weniger Komplexität.
  • Bei einer zweiten Ausführungsform weist das Verfahren zur Quellendecodierung das Kennzeichen auf, dass das Kriterium derart ist, dass die gespeicherten Zustände die besten Metriken in der Gruppe von Zuständen haben.
  • Wie nachstehend noch erläutert wird, ist die Anzahl Zustände N in diesem Fall eine fest Anzahl. Deswegen führt ein derartiges Kriterium zu einem Zustandsdiagramm, dessen Komplexität stabil ist und nicht mit der Bitzeit zunimmt, dies im Gegensatz zu dem optimalen Fall, und ein derartiges Kriterium führt zu einem Zustandsdiagramm, das nicht länger von der Länge der gesendeten Codewortsequenz abhängig ist. Weiterhin gibt es eine gute Paketfehlerratenleistung, dies im Gegensatz zu dem bekannten Verfahren von Park & Miller.
  • Ausführungsbeispiele der vorliegenden Erfindung sind in der Zeichnung dargestellt und werden im Folgenden näher beschrieben. Es zeigen:
  • 1 ein Zustandsdiagramm eines Verfahrens zur Quellendecodierung von Codewortsequenzen mit variabler Länge nach dem Stand der Technik,
  • 2 eine schematische Darstellung eines Video-Kommunikationssystemms, wobei das Verfahren zu Quellendecodierung nach der vorliegenden Erfindung angewandt wird,
  • 3 ein erstes Zustandsdiagramm eines Verfahrens zur Quellendecodierung von Codewortsequenzen variabler Länge nach einer ersten Ausführungsform der vorliegenden Erfindung,
  • 4 ein zweites Zustandsdiagramm eines Verfahrens zur Quellendecodierung von Codewortsequenzen variabler Länge nach einer zweiten Ausführungsform der vorliegenden Erfindung,
  • 5 eine erste Graphik mit einer ersten Leistung des Verfahrens nach dervorliegenden Erfindung, dargestellt in 3 und 4,
  • 6 eine zweite Graphik mit einer zweiten Leistung des Verfahrens nach der vorliegenden Erfindung, dargestellt in 3 und 4, und
  • 7 eine dritte Graphik mit Komplexitätsergebnissen des Verfahrens nach der vorliegenden Erfindung, dargestellt in 3 und 4, und
  • 8 ein drittes Zustandsdiagramm mit einer Implementierung des Verfahrens nach der vorliegenden Erfindung, dargestellt in 3 und 4.
  • In der nachfolgenden Beschreibung werden einem Fachmann durchaus bekannte Funktionen oder Konstruktionen nicht detailliert beschrieben, da dies die vorliegende Erfindung unnötig vernebeln würde.
  • Die vorliegende Erfindung bezieht sich auf ein Verfahren zur Quellendecodierung von Codewortsequenzen variabler Länge auf Basis eines assoziierten Zustandsdiagramms mit einer Anzahl Zustände. Das genannte Verfahren wird insbesondere in einem VLC Decoder ("Variable-Length-Code") angewandt, wie in 2 dargestellt, und zwar innerhalb einer Video-Kommunikationssystems VS. Außerdem das genannte Video-Kommunikationssystem VS umfasst ein Quellencodierungssystem S-ENC, das einen VLC Codierer VLC-ENC, einen Kanal CH und ein Quellendecodiersystem S-DEC mit dem genannten VLC Decoder umfasst. Das Quellencodiersystem S-ENC codiert eine Codewortsequenz SQ über den VLC Codierer und überträgt diese über den genannten Kanal CH während einer Anzahl Bitzeiten zu dem genannten Quellendecodiersystem S-DEC, das sie über den VLC Decoder VLC-DEC kraft eines gemeinsamen Codes C decodiert. Die Übertragung erfolgt bitweise. Eine Codewortsequenz SQ hat eine variable Länge L_SQ. Dies bedeutet, dass die gesendeten Codewortsequenzen SQs verschiedene Längen haben können, folglich können die empfangenen Codewortsequenzen SQr verschiedene Längen haben. Eine Codewortsequenz SQ umfasst eine Anzahl Symbole SY, die durch den gemeinsamen Code C definiert werden. Es sei bemerkt, dass ein einziges Symbol SY wenigstens ein Bit umfasst.
  • In einem ersten Beispiel, dargestellt in 3, wird der Code C wie Folgt definiert:
    • – eine maximale Länge L_MAX, die gleich 2 ist und auch die maximale Länge einen Symbols = 2 darstellt,
    • – eine Größe K, die gleich 3 ist und auch die Anzahl Symbole darstellt,
    • – ein Alphabet des Codes C, das einen Satz mit Werten [C1, C2, C3] umfasst, die gleich [0; 10; 11] sind und ebenfalls die Werte darstellen, die die drei Symbole annehmen können. Mit diesen Codewerten sind 3 Erscheinungswahrscheinlichkeiten [Pc1, Pc2, Pc3] assoziiert.
  • Eine gesendete Codewortsequenz wird wie folgt definiert. Es wird vorausgesetzt, dass SQs' = 0 0 1 1 0 1 0 0 ist. Dann ist nach einem Modulationsschritt in dem Quellencodiersystem S-ENC, beispielsweise einem BPSK Modulationsschritt, was dem Fachmann durchaus bekannt ist, SQs = –1; –1; 1; 1; –1; 1; –1; –1. Dann ist, wegen Störungen des Kanals CH, die Sequenz SQr, die von dem Quellendecodiersystem empfangen worden ist, SQr = –0,8; –0,7; 0,2; 1,2; –0,5; 0,6; –0,3; 0,3.
  • Von jetzt an muss die empfangene Sequenz SQr decodiert werden um die gesendete Sequenz SQs wieder herzustellen Mit anderen Worten, die Symbole SY, die in der genannten gesendeten Sequenz SQs gesendet worden sind, müssen wiederhergestellt werden. Wegen der Störungen, die zu Fehlern führen, sei bemerkt, dass es dabei viele mögliche decodierte Codewortsequenzen SQd geben kann.
  • Es wird ein Zustandsdiagramm verwendet um alle möglichen decodierten Codewortsequenzen SQd zu zeigen. 3 zeigt ein derartiges Zustandsdiagramm. Die X-Achse stellt die Bitzeiten dar. Die Y-Achse stellt ein Alphabet des verwendeten Codes C dar, wobei das Alphabet einen Satz mit Werten aufweist, die auch Werte darstellen, die von den Symbolen SY angenommen werden können.
  • Das Zustandsdiagramm nach 3 umfasst 6 Gruppen von Zuständen G0 bis G5, die je mit einer Bitzeit B0 bis B5 assoziiert sind. Eine Gruppe G entspricht allen berechneten Zuständen zu jeder Bitzeit Bj(j ≥ 0) wenn eine Codewortsequenz SQr empfangen wird, wie das Alphabet des Codes C auch sein mag. Eine Box in dem Zustandsdiagramm stellt einen Zustand S dar. Eine Anzahl T Symbole ist in jeder Zustandsbox angegeben. Sie stellt die Anzahl Symbole SY innerhalb einer teilweise empfangenen Sequenz SQr zu einem bestimmten Bitzeit Bj dar. Sie stellt auch die Anzahl Symbole innerhalb einer entsprechenden möglichen decodierten Codewortsequenz SQd dar.
  • Während vertikale Linien die Gruppen von Zuständen begrenzen, begrenzen horizontale Linien das Alphabet des Codes c mit drei Werten C1, C2, C3, welche die Symbole annehmen können.
  • Eine Strecke stellt eine decodierte Codewortsequenz SQd dar. Sie besteht aus einem Endzustand und zwischen liegenden Zuständen. So besteht beispielsweise die Strecke S011-S111-S321-S412-S512 aus dem Endzustand S512 und drei zwischen liegenden Zuständen S111, S321 und S412, mit denen die Symbole "0", "10", "0" bzw. "0" übereinstimmen. Die gesamte Anzahl Symbole ist gleich 4.
  • Es sei bemerkt, dass wir einen Zustand S mit den Indizes Sklm darstellen, wobei k = Anzahl der Gruppe, l = Anzahl Werte innerhalb des Alphabets des Codes C, und m = Rangordnung des Zustandes in der Gruppe und des Codewertes. So beideutet beispielsweise S211, dass dieser Zustand S zu der Gruppe G2, zu dem Codewert C1 gehört und der erste Zustand in dieser Gruppe G2 für den Codewert C1 ist.
  • Wie aus dem Zustandsdiagramm ersichtlich, kann ein Zustand der Endzustand oder ein zwischen liegender Zustand verschiedener Strecken sein, deswegen lässt sich sagen, dass ein derartiger Zustand S zu einer Bitzeit Bj einen Knoten in der Graphik darstellt, durch den mögliche decodiere Codewortsequenzen hindurch gehen können, die auch als decodiere Symbolsequenzen bezeichnet werden.
  • Um die beste decodierte Codewortsequenz SQd zu selektieren, die am besten mit der gesendeten Codewortsequenz SQs übereinstimmt, wird ein erster Schritt 1) zum Reduzieren der Zustände in dem Zustandsdiagramm durchgeführt. Zu einer Bitzeit Bj(j ≥ 0) wird nur eine Anzahl N Zustände in einer Gruppe G mit Zuständen in Bezug auf ein Kriterium auf Basis einer teilweisen Metrikberechnung gespeichert und sonst unabhängig von dem Alphabet des genannten Codes C, wobei eine Gruppe G mit einer Bitzeit Bj assoziiert ist.
  • Wie nachher noch näher erläutert wird, wird in einer ersten Ausführungsform die Anzahl Zustände N an der Oberseite durch die Bitzeit begrenzt, oder gleich einem bestimmten Wert NBMAX in einer zweiten Ausführungsform.
  • Auf diese Weise umfasst der Reduktionsschritt zwei Subschritte. In einem ersten Subschritt A) werden Berechnungen teilweiser Metriken an teilweisen Sequenzen durchgeführt. Das Adjektiv teilweise bedeutet, dass eine Berechnung einer Metrik durchgeführt wird, und zwar vor dem Ende des Empfangs der ganzen Sequenz SQr. Die Metrikberechnung erfolgt entsprechend einem MAP-Kriterium ("Maximum A Posteriori"), das, wie dem Fachmann bekannt, der Berechnung eines Euklidischen Abstandes zwischen einer teilweisen empfangenen Sequenz SQr und der teilweisen gesendeten Sequenz SQs nach der Modulation entspricht, wonach eine Gewichtung um einen Faktor folgt, und zwar abhängig von den Erscheinungswahrscheinlichkeiten des Codewortes.
  • Die Formel für die ganze Metrikberechnung ist: m(i) = Σi(||SQri – Ci||2 + ln(PCi))wobei SQr; ein Teil der gesendeten Sequenz SQr ist entsprechend der Emission des Codes Ci. Eine Teilmetrik kann auf einfache Weise aus dem Obenstehenden hergeleitet werden, als aus nur den ersten Termen der Summe bestehend.
  • Wie ersichtlich wird die Konstruktion des Zustandsdiagramms als eine Funktion der empfangenen Sequenz SQr effektuiert, dies im Gegensatz zu dem optimalen Verfahren, wie in dem Stand der Technik. Tat sachlich gibt es zu jeder Bitzeit einige Zustände, die auf Basis der Teilmetrikberechnungen entfernt werden, die von teilweise empfangenen Sequenzen abhängig sind, während in dem Stand der Technik keine Zustände entfernt werden und ganze Metrikberechnungen am Ende der Zustandsdiagrammkonstruktion durchgeführt werden, oder die Zustandsentfernungstechniken sind nicht nahe genug bei der optimalen Technik.
  • In einem zweiten Subschritt B) wird das Reduktionskriterium angewandt.
  • In einer ersten Ausführungsform, wie in 3 dargestellt, ist das Kriterium derart, dass nur ein einziger Zustand unter allen Zuständen einer Gruppe G gespeichert wird, welche die gleiche Anzahl T Symbole SY haben, dies entsprechend einer besten Metriklage.
  • Eine Metrik assoziiert mit einem betrachteten Zustand S ist eine der Teilmetriken, berechnet in dem ersten Subschritt A) einer Teilsequenz, die sich bis an den genannten betrachteten Zustand S erstreckt.
  • Auf diese Weise suchen wir in 3 beispielsweise bei einer Bitzeit = 2 nach dem Zustand S, der die beste Metrik unter alle Zuständen der dritten Gruppe G2 hat, die T = 1 Symbol SY haben. Der zweite Zustand S221 und der dritte Zustand S231 in der dritten Gruppe G2 haben T = 1 Symbol SY. Der zweite Zustand S221 wird gespeichert, weil er eine bessere Metrik hat als der dritte Zustand S231. Für die Anzahl Symbole T = 2 gibt es nur einen Zustand S211, welcher genannte Zustand beibehalten wird. Dasselbe tun wir für die Bitzeit = 3 und die Anzahl Symbole T = 2, usw.
  • Ein Vorteil dieser ersten Ausführungsform ist, dass die Komplexität des Zustandsdiagramms nun auf einfache Art und Weise begrenzt werden kann: der Bitzeitwert ist im Wesentlichen eine deutliche Vergrößerung der Anzahl N Zustände. Da aber die genannte Anzahl N Zustände nicht fest liegt, ist diese noch immer von der Länge der gesendeten Codewortsequenz SQs abhängig. Deswegen wird die Komplexität mit der Bitzeit zunehmen.
  • In einer zweiten bevorzugten Ausführungsform, wie in 4 dargestellt, ist das Kriterium derart, dass die gespeicherten Zustände S die beste Metrik haben, ungeachtet des Symbols oder des Bitwertes, oder der Anzahl Symbole oder Bits. Die Anzahl N der gespeicherten Zustände wird definiert als ein gegebener Wert NBMAX und wird als eine Funktion der Leistung genommen, die wir erreichen möchten und der Komplexität, die wir haben möchten. Es werden keine weitere Bedingungen verwendet. Auf diese Weise ist beispielsweise die Anzahl zu speichernder Zustände NBMAX = 2. In 4 zu der Bitzeit = 4, werden der erste und der sechste Zustand S411 und S432 gespeichert, weil sie die besten Metrik haben. Die anderen Zustände werden entfernt. Es sei bemerkt, dass alle Zustände S mit derselben Anzahl Symbole SY, hier mit der Anzahl 3, entfernt werden können.
  • Die Vorteile der zweiten Ausführungsform im Vergleich zu dem Stand der Technik sind:
    • – NBMAX kann, falls erwünscht, festgelegt werden,
    • – da NBMAX invariabel ist, nimmt die Komplexität nicht mit der Bitzeit oder folglich mit der Länge der gesendeten Codewortsequenz SQs zu, dies im Gegensatz zu dem optimalen Verfahren oder Park & Miller Verfahren nach dem Stand der Technik.
  • Es sei bemerkt, dass dies für die zwei Ausführungsformen, wenn ein Zustand S entfernt wird, bedeutet, dass die Zweige, die davon kommen würden, nicht länger als wahrscheinliche Kandidaten betrachtet werden. Die Reduktion des Zustandsdiagramms ist deutlich bemerkenswert, da die Anzahl überlebender Zustände in dem Zustandsdiagramm zu der Bitzeit Bj (d.h. für eine Teilsequenz von j Bits) höchstens gleich j für die erste Ausführungsform und höchstens gleich NBMAX für die zweite Ausführungsform ist. Weiterhin ist, wie oben erwähnt, deutlich, dass die Komplexität dieses letzteren Diagramms nicht mehr von der Länge der gesendeten Codewortsequenz SQs abhängig ist.
  • Es sei ebenfalls bemerkt, dass abgesehen von dem Einfluss in der Metrikherleitung der Reduktionsschritt unabhängig von dem Code C Alphabet oder der Erscheinungswahrscheinlichkeit der Elemente durchgeführt wird, dies im Gegensatz zu dem Park & Miller Verfahren.
  • Am Ende der Diagrammkonstruktion, wenn innerhalb einer Codewortsequenz keine weiteren Bits mehr gesendet werden, eine Endentscheidung, die für die beiden Ausführungsformen die gleiche ist, getroffen wird. Diese besteht aus einem zweiten Schritt 2) der Selektion eines schlussendlichen besten Zustandes Skalierungsfaktoren, aus den gespeicherten Zuständen, als der Zustand mit der besten Metrik, und aus der Bestimmung der besten decodierten Codewortsequenz SQd, welche die gleiche Anzahl Symbole SY hat wie die gesendete Codewortsequenz SQs.
  • Es sei bemerkt, dass vorgeschlagen worden ist, dass einerseits der VLC Decoder die Anzahl Symbole NB_SY, die von dem VLC Codierer innerhalb einer gesendeten Sequenz SQs gesendet wurden, und, andererseits die Länge L_SQs in Bits der genannten gesendeten Sequenz SQs für das Ende der Diagrammkonstruktion kennt.
  • Es sei bemerkt, dass, wie in der Literatur gefunden werden kann und dem Fachmann durchaus bekannt ist, unter der besten Metrik verstanden wird, die Sequenz, welche die beste, folglich höchste Wahrscheinlichkeit in dem Sinne des MAP Kriteriums erreicht, was der besten, folglich kleinsten minimalen Abstand in dem Sinne der oben definierten Metrik m(i) entspricht.
  • Es wird eine Annäherung durchgeführt, weil dieser schlussendliche beste Zustand Skalierungsfaktoren als die beste Metrik innerhalb aller möglichen Zustände aufweisend betrachtet wird, die alle möglichen decodierten Codewortsequenzen bestimmen, obschon sie nur unter den gespeicherten Zuständen durchgeführt wird. Folglich wird das Verfahren nach der vorliegenden Erfindung als ein Annäherungsverfahren bezeichnet.
  • Zum Schluss wird in einem dritten Schritt 3) die Decodierung dadurch effektuiert, dass von dem selektierten schlussendlichen besten Zustand Skalierungsfaktoren über die Strecke der entsprechenden Sequenz in dem Zustandsdiagramm rückwärts gegangen wird, um die Werte der Symbole SY wiederherzustellen, die durch die gesendete Sequenz SQs gesendet worden sind.
  • Leistungen der ersten und der zweiten Ausführungsform des Verfahrens nach der vorliegenden Erfindung werden nachstehend dargestellt.
  • Leistungsvergleich mit anderen Quellendecodierverfahren
  • 5 und 6 zeigen Leistungen des Verfahrens nach der vorliegenden Erfindung im Vergleich zu anderen Verfahren zur Quellendecodierung von Codewortsequenzen variabler Länge. Die nachfolgenden Verfahrensleistungen werden dargestellt:
    • – harte VLC Decodierung "HARD" (Kreisen),
    • – optimal weiche VLC Decodierung "OPTIMAL" (Quadrate)
    • – Park & Mittel VLC Decodierung "P&M" (aufrecht stehende Dreiecke), und
    • – eine erste Ausführungsform des Verfahrens zum Decodieren nach der vorliegenden Erfindung "AMAP-1" (Kreuze),
    • – eine zweite Ausführungsform des Verfahrens zum decodieren nach der vorliegenden Er findung "AMA-2" (nach rechts zeigende Dreiecke).
  • Das harte VLC Verfahren ist ein Verfahren, das meistens auf Codewortsequenzen mit festen Länge angewandt wird.
  • Das optimale Verfahren, wie in dem Stand der Technik definiert, ist ein verfahren ohne Zustandsreduktion und ohne Annäherung. Die anderen Verfahren sind Annäherungsverfahren.
  • In diesen zwei Figuren ist insbesondere die Leistung der Ausführungsformen des Verfahrens nach der vorliegenden Erfindung ersichtlich, die eine "vertikale" Situation benutzen (da dies einige Zustände als eine Funktion einer Gruppe beibehalten, die mit einer Bitzeit assoziiert ist), gegenüber der Leistung des P&M Verfahrens, das eine "horizontale" Situation benutzt (da dies einige Zustände als eine Funktion des Wertes eines Symbols SY beibehalten).
  • Die beiden Graphiken von 5 und 6 zeigen die Leistung in Termen von Paketfehlerrate PER gegenüber Signal-Rauschverhältnis Einbruchnachricht/N0, wobei ein Paket einer Codewortsequenz SQ entspricht. Es sei bemerkt, dass die Berechnung des Signal-Rauschverhältnisses dem Fachmann durchaus bekannt ist. Mit anderen Worten, wir berechnen eine Leistung zu Kosten. Die Leistung zeigt, ob eine Codewortsequenz gut decodiert worden ist, und die Kosten zeigen, wie viel Energie verwendet worden ist um die Bits einer Codewortsequenz SQ zu senden. Danach selektieren wir, abhängig von dem Fehler, den wir akzeptieren und/oder von der Energie, die wir verwenden wollen, die beste Lösung. Diejenigen des optimalen Verfahrens und diejenigen des harten Verfahrens begrenzten alle Leistungen.
  • Für die zweite Ausführungsform wird die Anzahl NBMAX = 3 Zustände, die beibehalten werden müssen, wird derart gewählt, dass diese der Anzahl entspricht oder kleiner ist als die Anzahl, die für das P&M Verfahren erhalten wurde, damit ein ehrlicher Vergleich in Bezug auf das P&M Verfahren gemacht werden kann. Für das P&M Verfahren gibt es tatsächlich zu jeder Bitzeit K Zustände, d.h. die decodierte Codewortsequenz, welche die beste Metrik für jeden Satz mit Zuständen hat, wobei die Symbole den gleichen Wert [Cl, ...., Ci, .... Ck] haben, der eingehalten wird.
  • Für die erste Graphik in 5 wird ein Code CA für die vier oben genannten Verfahren betrachtet.
    • – die betreffende variable Länge Codegröße ist K = 3,
    • – die maximale Länge L_MAX = 2,
    • – das Alphabet des Codes umfasst die Werte [C1; C2; C3] = [0; 10; 11],
    • – die assoziierten Symbolwahrscheinlichkeiten [Pc1(0), Pc2(10), Pc3(11)] sind derart gewählt worden, dass sie gleich [0,5; 0,25; 0,25] sind, und
    • – die Anzahl gesendeter Symbole NB_SY = 100.
  • Wie aus der ersten Graphik ersichtlich, zeigt sich, dass die zwei Ausführungsformen des Verfahrens nach der vorliegenden Erfindung besser leisten als das P&M Verfahren. Ihre Leistungen liegen näher bei den Leistungen des optimalen Verfahrens als die des P&M Verfahrens.
  • Für die zweite Graphik in 6 wird ein Code CB für die vier oben genannten Verfahren betrachtet.
    • – die betreffende variabler Länge Codegröße ist K = 6,
    • – die maximale Länge L_MAX = 4,
    • – das Alphabet des Codes umfasst die Werte [C1; C2; C3; C4; C5; C6] = [0; 100; 101; 110; 1110; 1111],
    • – die assoziierten Symbolwahrscheinlichkeiten Pc1(0), Pc2(100), Pc3(101), Pc4(110), PC5(1110), PC6(1111)], und
    • – die Anzahl gesendeter Symbole = 100.
  • Wie aus dieser Graphik ersichtlich, zeigt sich auch hier, dass die zwei Ausführungsformen des Verfahrens nach der vorliegenden Erfindung besser leisten als das P&M Verfahren. Die Leistungen liegen näher bei den Leistungen des optimalen Verfahrens als die des P&M Verfahrens. Es zeigt sich, dass die verschiedenen Ausführungsformen des Verfahrens nach der vorliegenden Erfindung auf gleiche Art und Weise leisten.
  • Um auf entsprechende Weise das beste Verfahren zu selektieren muss die Komplexität des Zustandsdiagramm für jedes dieser Verfahren studiert werden, aber das harte Verfahren ist in 7 für den ersten Code CA gegeben. Eine Anzahl Übergänge NbT zwischen den Zuständen S in dem ganzen Zustandsdiagramm und die Anzahl NbS Zustände symbolisiert eine Komplexität. Pfeile in einem Zustandsdiagramm stellen die Übergänge dar. Auf diese Weise steht die Komplexität im Verhältnis zu NbT·NbS. Wenn die maximale Länge des Codes K ist (wobei K im Falle des Codes CA gleich 3 ist), ist die Anzahl Übergänge je Zustand K für alle Verfahren. Folglich ist in der Praxis ersichtlich, dass die Komplexität im Wesentlichen in einem Verhältnis zu der Anzahl Zustände NbS steht.
  • In 7 stellt die X-Achse die Anzahl Bitzeiten dar und die Y-Achse stellt die Anzahl Zustände NbS je Bitzeit dar. Dies bildet eine gute Bewertung der gesamten Verfahrenskomplexität, da die Anzahl Übergänge je Zustand für jedes Verfahren dieselbe ist, wie oben bereits erwähnt.
  • Es zeigt sich, dass, während das optimale Verfahren und das AMP-1 Verfahren eine Komplexität linear zu den Bitzeiten des Zustandsdiagramms zeigen, das P&M Verfahren und das AMAP-2 Verfahren beide unabhängig von den Bitzeitwerten des Zustandsdiagramms sind.
  • Ähnliche Ergebnisse können erhalten werden, wenn der Fall des zweiten Codes CB betrachtet wird.
  • Schließlich zeigt sich aus den Ergebnissen dieser Figuren, dass die insgesamt beste Lösung die zweite Ausführungsform der vorliegenden Erfindung ist, das AMAP-2 Verfahren, da dieses Verfahren eine besserte Paketfehlerrate PER mit einer geringeren Komplexität des Zustandsdiagramms im vergleich zu anderen bestehenden Annäherungsverfahren ergibt. Die Anzahl NBMAX Zustände zum Sparen für die zweite Ausführungsform wird vorzugsweise in dem Intervall zwischen 4 und 10 genommen. Für dieses Intervall gibt es ein gutes Gleichgewicht zwischen der Komplexität, die ansteigt, wenn NBMAX ansteigt, und der Leistung, die nach dem Wert NBMAX = 10 nicht weiter verbessert wird.
  • Implementierung des verfahrens nach der vorliegenden Erfindung
  • Hier ist ein Beispiel einer weichen Implementierung des Verfahrens nach der vorliegenden Erfindung.
  • In der Praxis betrifft das Verfahren nach der vorliegenden Erfindung in einem ersten Schritt eine erste Vorwärtsfortpflanzung mit einem metrischen Berechnungsprozess, wobei Zeiger auf vorhergehende Zustände gespart werden, und in einem zweiten Schritt einen Zurückverfolgungsprozess zum Bilden der besten decodierten Codewortsequenz entsprechend einem Zustand, selektiert aus allen gesparten Zuständen.
  • In der ersten Ausführungsform des Verfahrens nach der vorliegenden Erfindung behält die erste Vorwärtsfortpflanzung zu jeder Bitzeit nur diejenigen Zustände S bei, welche die beste Metrik unter allen Zuständen der Gruppe H haben, welche die gleiche Anzahl Symbole SY haben, wie oben bereits erwähnt.
  • Das Zustandsdiagramm wird mit Hilfe der nachfolgenden Strukturen beschrieben.
  • Eine, die als "Zustand" bezeichnet wird, die Folgendes umfasst:
    • – die Anzahl Symbole bis zu einem betrachteten Zustand (die mit der Anzahl Symbole der gesendeten Sequenz für die Endentscheidung verglichen wird),
    • – die Anzahl Bist bis zu dem betrachteten Zustand (die mit der Anzahl aus dem Bitzeitschritt übereinstimmt),
    • – den Wert des Symbols bei dem Übergang, der zu dem betrachteten Zustand führt (gespart für den Rückverfolgungsprozess),
    • – die kumulative Metrik bis zu dem Übergang, der zu dem betrachteten Zustand führt,
    • – einen ersten Zeiger PSTATE_PREV zu den vorhergehenden Zustand,
    • – einen zweiten Zeiger PSTATE_VERT_NEXT zu dem nächsten "vertikalen" Zustand, der untersucht werden muss.
  • Eine die als "Trellis" bezeichnet wird, die Folgendes umfasst:
    • – einen Vektor von ganzen Zahlen, wobei die Anzahl Überlebungszustände für jede Bitzeit gespeichert wird, eine Matrix der Diagrammzustände.
  • Es sei bemerkt, dass die zwei Zeiger in der Zustandsstruktur für das Verfahren nach der vorliegenden Erfindung entscheidend sind. Der erste PSTATE_PREV ist notwendig für den Rückverfolgungsvorgang und der zweite PSTATE_VERT_NEXT ermög licht die Abtastung der "vertikalen" Zustände, d.h. aller Zustände für dieselbe Bitzeit Bj. Ein Beispiel davon ist zur Illustration in 8 gegeben.
  • Auf diese Art und Weise wird der Vorwärtsprozess für die erste Ausführungsform wie folgt effektuiert. Zu einer Bitzeit Bj von einem Zustand S1j:
    • – Für jede neue untersuchte SU(j + 1) Zustandsmöglichkeit:
    • – wenn es in der Graphik bereits einen Zustand SE(j + 1) mit derselben Bitzeit und derselben Anzahl Symbole gibt, DANN:
    • – Vergleiche die teilweisen kumulativen Metriken zwischen diesem bestehenden Zustand SE(j + 1) und dem untersuchten SI(j + 1). Der Zustand mit der besten Metrik soll dabei behalten werden.
    • – Sonst soll der Zustand in der Graphik erzeugt werden und der untersuchte Zustand SI(j + 1) soll darin kopiert werden.
    • – Untersuchung des nächsten "vertikalen" Zustandes S2j (dem fallweisen Zeiger PSTA-TE_VERT_NEXT folgend) oder, wenn es keinen weiteren "vertikalen" Zustand mehr gibt, (der zweite Zeiger PSTATE_VERT_NEXT gleich NULL), soll zu der nächsten Bitzeit weitergefahren werden.
  • In der zweiten Ausführungsform des Verfahrens nach der vorliegenden Erfindung behält die erste Vorwärtsfortpflanzung zu jeder Bitzeit NBMAX Zustände bei, welche die beste Metrik haben, wie oben bereits erwähnt.
  • Die verwendeten Strukturen sind die gleichen wie für die erste Ausführungsform.
  • Auf diese Weise wird der Vorwärtsprozess für die zweite Ausführungsform wie folgt effektuiert.
  • Zu einer Bitzeit Bj, von einem Zustand S1j:
    • – Für jede neue untersuchte SI(j + 1) Zustandsmöglichkeit:
    • – Wenn es in der Graphik bereits einen Zustand SE(j + 1) mit derselben Bitzeit und derselben Anzahl Symbole gibt, DANN
    • – Vergleiche die teilweisen kumulativen Metriken zwischen diesem bestehenden Zustand SE(j + 1) und dem untersuchten SI(j + 1). Der Zustand mit der besten Metrik soll dabei behalten werden.
    • – Sonst
    • – Wenn die Anzahl bestehender Zustände zu der nächsten Bitzeit Bj + 1 kleiner ist als die Anzahl zu sparender Zustände NBMAX, DANN: soll der Zustand in der Graphik erzeugt werden und der untersuchte Zustand SI(j + 1) soll darin kopiert werden.
    • – Sonst
    • – Bestimmung des bestehenden Zustandes SE(j + 1) mit der schlechtesten partiellen kumulativen Metrik, und
    • – Vergleich des untersuchten Zustandes SI(j + 1) mit diesem schlechtesten bestehenden Zustand SE(j + 1). Derjenige mit der besten Metrik soll beibehalten werden.
    • – Untersuchung des nächsten "vertikalen" Zustandes S2j (dem fallweisen zweiten Zeiger PSTATE_VERT_NEXT folgend oder, wenn es keinen weiteren "vertikalen" Zustand mehr gibt (den zweiten Zeiger PSTATE_VERT_NEXT gleich NULL), soll zu der nächsten Bitzeit Bj + 1 fortgefahren werden.
  • Der Rückverfolgungsprozess für die beiden Ausführungsformen wird wie folgt effektuiert.
  • Erforsche den besten Zustand mit L_SQs Bits mit übereinstimmenden NB_SY Symbolen.
    • – wenn kein Zustand mit der richtigen Anzahl Symbole gefunden wird:
    • – Keine Übereinstimmung gefunden
    • – Sonst
    • – Eine Übereinstimmung gefunden
    • – Geh zurück und vermerke die Symbole bei den entsprechenden Übergängen.
    • – Kehre die Rangordnung der Symbole um die decodierte Codewortsequenz zu erhalten.
  • Es sei bemerkt, dass die vorliegende Erfindung sich nicht auf die oben genannte Videoapplikation beschränkt. Sie kann bei jeder beliebigen Applikation angewandt werden, wobei Codierung mit variabler Länge angewandt wird und sie kann die Kosten der genannten Codierung unterstützen (in Termen der rechnerischen Komplexität und Zeitverzögerung, wobei die genannte Zeitverzögerung, bei dem Verfahren nach der vorliegenden Erfindung von dem Ende des Empfangs einer ganzen Sequenz abhängig ist, und zwar wegen des Nachverfolgungsprozesses). Typischerweise kann die vorliegende Erfindung Basis-Elektrode bei Video-Audio- oder Textkompression angewandt werden.
  • Es sei bemerkt, dass das Verfahren nach der vorliegenden Erfindung sich nicht auf die oben genannte Implementierung beschränkt.
  • Es gibt viele Möglichkeiten zum Implementieren von Funktionen des Verfahrens nach der vorliegenden Erfindung, und zwar mit Hilfe von Hardware- oder Software-Items, oder von beiden, vorausgesetzt, dass ein einziges Hardware- oder Software-Item mehrere Funktionen erledigen kann. Dies schließt die Tatsache nicht aus, dass ein Gebilde von Hardware- oder Software-Items oder von beiden eine Funktion durchführen. So kann beispielsweise der Reduktionsschritt mit der Selektion eines schlussendlichen besten Zustandsschrittes kombiniert werden, wodurch auf diese Art und weise eine einzige Funktion gebildet wird ohne dass dadurch das Verfahren zur Quellendecodierung nach der vorliegenden Erfindung modifiziert wird.
  • Die genannten Hardware- oder Software-Items können verschiedenartig implementiert werden, wie mit Hilfe verdrahteter Schaltungsanordnungen oder mit Hilfe auf geeignete Art und Weise programmierter integrierter Schaltungen. Die integrierte Schaltung kann sich in einem Computer oder in einem Decoder befinden. In dem zweiten Fall umfasst der Decoder Zustandsreduktionsmittel, dazu vorgesehen, zum Durchführen des Reduktionsschrittes 1) entsprechend dem ersten oder dem zweiten Kriterium, und Selektionsmittel, dazu vorgesehen, den Selektionsschritt 2) durchzuführen, wie oben beschrieben, wobei die genannten Mittel Hardware- oder Software-Items sind, wie oben erwähnt.
  • Die integrierte Schaltung umfasst einen Satz mit Instruktionen. Auf diese Weise kann der genannte Satz mit Instruktionen, der beispielsweise in einem computerprogrammierten Speicher oder in einem Decoderspeicher untergebracht ist, dafür sorgen, dass der Computer oder der Decoder die verschiedenen Schritte des Quellendecodierverfahrens durchführt.
  • Der Satz mit Instruktionen kann dadurch in den Programmierungsspeicher eingeladen werden, dass der Datenträger, wie beispielsweise eine Disk, ausgelesen wird. Auch kann ein Service-Provider den Satz mit Instruktionen zur Verfügung stellen, und zwar über ein Kommunikationsnetzwerk, wie beispielsweise das Internet.
  • Bezugszeichen in den nachfolgenden Patentansprüche sollen nicht ans den Anspruch begrenzend betrachtet werden. Es dürfte einleuchten, dass das Verb "umfassen" und die Konjugationen davon das Vorhandensein anderer Schritte oder Elemente anders als die in dem Anspruch definiert, nicht ausschließt. Der Artikel "ein" vor einem Element oder einem Schritt soll das Vorhandensein einer Anzahl derartiger Elemente bzw. Schritte nicht ausschließen.

Claims (7)

  1. Verfahren zur Quellendecodierung von Sequenzen von Codeworten variabler Länge mit einer Vielzahl von Symbolen, wobei das genannte Quellendecodieren auf einem assoziierten Zustandsdiagramm basiert, das eine Vielzahl von Zuständen (S) aufweist und auf einem Code (C) basiert ist, das durch einen Satz von Symbolwerten definiert wird, wobei ein Zustand ein Knoten ist, durch den etwaige decodierte Codewortsequenzen (SQd) hindurchgehen können und einer Bitzeit und einem Symbolwert entspricht, dadurch gekennzeichnet, dass das Verfahren einen Verfahrensschritt zum Reduzieren der Zustände (S) in dem Zustandsdiagramm umfasst, und zwar derart, dass bei einer Bitzeit (Bj) assoziiert mit einer Gruppe von Zuständen nur Zustände mit der besten Metrik in der Gruppe (G) von Zuständen gespeichert werden, ungeachtet des Symbolwertes.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass nur ein einziger Zustand unter allen Zuständen der Gruppe (G) gespeichert wird, welche dieselbe Anzahl Symbole (SY) haben.
  3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass nur eine feste Anzahl Zustände in der Gruppe (G) von Zuständen gespeichert werden.
  4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass es einen anderen Schritt aufweist zum Selektieren eines letztendlich besten Zustandes (Sf) unter den gespeicherten Zuständen, als der Zustand mit der besten Metrik, und zum Ermitteln einer besten decodierten Codewortsequenz (SQd), welche die gleiche Anzahl Symbole (SY) hat, wie eine gesendete Codewortsequenz (SQs).
  5. Computerprogrammprodukt für einen Decoder, mit einem Satz von Instruktionen, die das Verfahren nach Anspruch 1 bis 4 durchführen, wenn sie in den genannten Decoder geladen worden sind.
  6. Computerprogrammprodukt für einen Computer, mit einem Satz von Instruktionen, die das Verfahren nach Anspruch 1 bis 4 durchführen, wenn sie in den genannten Computer geladen worden sind.
  7. Decoder zur Quellendecodierung von Sequenzen von Codeworten variabler Länge mit einer Anzahl Symbole, wobei die genannte Quellendecodierung auf einem assoziierten Zustandsdiagramm basiert mit einer Anzahl Zustände (S) und auf Basis eines Codes (C) der durch einen Satz von Symbolwerten definiert ist, wobei ein Zustand ein Knoten ist, durch den etwaige decodierte Codewortsequenzen (SQd) hindurch gehen können, und einer Bitzeit und einem Symbolwert entspricht, dadurch gekennzeichnet, dass er Zustandsreduktionsmittel aufweist, vorgesehen um zu einem Bitzeitpunkt (Bj), assoziiert mit einer Gruppe von Zuständen, nur Zustände zu speichern, welche die besten Metriken in der Gruppe (G) von Zuständen haben, ungeachtet des Symbolwertes.
DE60215807T 2001-05-22 2002-05-21 Verfahren zur decodierung einer sequenz von codeworten variabler länge Expired - Fee Related DE60215807T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP01401349 2001-05-22
EP01401349 2001-05-22
PCT/IB2002/001878 WO2002095955A1 (en) 2001-05-22 2002-05-21 Method of decoding a variable-length codeword sequence

Publications (2)

Publication Number Publication Date
DE60215807D1 DE60215807D1 (de) 2006-12-14
DE60215807T2 true DE60215807T2 (de) 2007-09-13

Family

ID=8182740

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60215807T Expired - Fee Related DE60215807T2 (de) 2001-05-22 2002-05-21 Verfahren zur decodierung einer sequenz von codeworten variabler länge

Country Status (8)

Country Link
US (1) US6891484B2 (de)
EP (1) EP1397869B1 (de)
JP (1) JP2004533766A (de)
KR (1) KR20030036624A (de)
CN (1) CN1463500A (de)
AT (1) ATE344551T1 (de)
DE (1) DE60215807T2 (de)
WO (1) WO2002095955A1 (de)

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1682450A (zh) * 2002-09-11 2005-10-12 皇家飞利浦电子股份有限公司 用于对可变长度的软输入代码字序列进行信源译码的方法和装置
US7178094B2 (en) * 2003-03-11 2007-02-13 Koninklijke Philips Electronics N. V. Method and device for building a variable-length error code
CN100394693C (zh) * 2005-01-21 2008-06-11 华中科技大学 一种变长码的编码和解码方法
CN100527847C (zh) * 2007-03-16 2009-08-12 清华大学 基于零前缀码的变长码解码方法
CN101562747B (zh) * 2009-05-19 2010-08-25 华中科技大学 一种视频编码预测残差块的分解及重建方法
US9288089B2 (en) 2010-04-30 2016-03-15 Ecole Polytechnique Federale De Lausanne (Epfl) Orthogonal differential vector signaling
US9251873B1 (en) 2010-05-20 2016-02-02 Kandou Labs, S.A. Methods and systems for pin-efficient memory controller interface using vector signaling codes for chip-to-chip communications
US9288082B1 (en) 2010-05-20 2016-03-15 Kandou Labs, S.A. Circuits for efficient detection of vector signaling codes for chip-to-chip communication using sums of differences
US9077386B1 (en) 2010-05-20 2015-07-07 Kandou Labs, S.A. Methods and systems for selection of unions of vector signaling codes for power and pin efficient chip-to-chip communication
US8948272B2 (en) 2012-12-03 2015-02-03 Digital PowerRadio, LLC Joint source-channel decoding with source sequence augmentation
CN110166217B (zh) 2013-04-16 2022-05-17 康杜实验室公司 高带宽通信接口方法和系统
CN105393512B (zh) 2013-06-25 2019-06-28 康杜实验室公司 具有低接收器复杂度的向量信令
US9806761B1 (en) 2014-01-31 2017-10-31 Kandou Labs, S.A. Methods and systems for reduction of nearest-neighbor crosstalk
JP6317474B2 (ja) 2014-02-02 2018-04-25 カンドウ ラボズ ソシエテ アノニム 制約isi比を用いる低電力チップ間通信の方法および装置
EP3672176B1 (de) 2014-02-28 2022-05-11 Kandou Labs, S.A. Vektorsignalisierungskodes mit eingebettetem takt
US11240076B2 (en) 2014-05-13 2022-02-01 Kandou Labs, S.A. Vector signaling code with improved noise margin
US9509437B2 (en) * 2014-05-13 2016-11-29 Kandou Labs, S.A. Vector signaling code with improved noise margin
US9112550B1 (en) 2014-06-25 2015-08-18 Kandou Labs, SA Multilevel driver for high speed chip-to-chip communications
CN106797352B (zh) 2014-07-10 2020-04-07 康杜实验室公司 高信噪特性向量信令码
US9432082B2 (en) 2014-07-17 2016-08-30 Kandou Labs, S.A. Bus reversable orthogonal differential vector signaling codes
CN106664272B (zh) 2014-07-21 2020-03-27 康杜实验室公司 从多点通信信道接收数据的方法和装置
US9461862B2 (en) 2014-08-01 2016-10-04 Kandou Labs, S.A. Orthogonal differential vector signaling codes with embedded clock
US9674014B2 (en) 2014-10-22 2017-06-06 Kandou Labs, S.A. Method and apparatus for high speed chip-to-chip communications
EP3314835B1 (de) 2015-06-26 2020-04-08 Kandou Labs S.A. Hochgeschwindigkeitskommunikationssystem
US10055372B2 (en) 2015-11-25 2018-08-21 Kandou Labs, S.A. Orthogonal differential vector signaling codes with embedded clock
WO2017132292A1 (en) 2016-01-25 2017-08-03 Kandou Labs, S.A. Voltage sampler driver with enhanced high-frequency gain
WO2017185070A1 (en) 2016-04-22 2017-10-26 Kandou Labs, S.A. Calibration apparatus and method for sampler with adjustable high frequency gain
CN115085727B (zh) 2016-04-22 2026-04-21 康杜实验室公司 高性能锁相环
US10003454B2 (en) 2016-04-22 2018-06-19 Kandou Labs, S.A. Sampler with low input kickback
CN109313622B (zh) 2016-04-28 2022-04-15 康杜实验室公司 用于密集路由线组的向量信令码
US10153591B2 (en) 2016-04-28 2018-12-11 Kandou Labs, S.A. Skew-resistant multi-wire channel
US10193716B2 (en) 2016-04-28 2019-01-29 Kandou Labs, S.A. Clock data recovery with decision feedback equalization
CN109417521B (zh) 2016-04-28 2022-03-18 康杜实验室公司 低功率多电平驱动器
US9906358B1 (en) 2016-08-31 2018-02-27 Kandou Labs, S.A. Lock detector for phase lock loop
US10411922B2 (en) 2016-09-16 2019-09-10 Kandou Labs, S.A. Data-driven phase detector element for phase locked loops
US10200188B2 (en) 2016-10-21 2019-02-05 Kandou Labs, S.A. Quadrature and duty cycle error correction in matrix phase lock loop
US10200218B2 (en) 2016-10-24 2019-02-05 Kandou Labs, S.A. Multi-stage sampler with increased gain
US10372665B2 (en) 2016-10-24 2019-08-06 Kandou Labs, S.A. Multiphase data receiver with distributed DFE
EP3610576B1 (de) 2017-04-14 2022-12-28 Kandou Labs, S.A. Pipeline-vorwärtsfehlerkorrektur für vektorsignalisierungscodekanal
CN110945830B (zh) 2017-05-22 2022-09-09 康杜实验室公司 多模式数据驱动型时钟恢复电路
US10608676B2 (en) * 2017-06-27 2020-03-31 Intel Corporation Bit-alignment testing for obtaining FEC code lock
US10116468B1 (en) 2017-06-28 2018-10-30 Kandou Labs, S.A. Low power chip-to-chip bidirectional communications
US10686583B2 (en) 2017-07-04 2020-06-16 Kandou Labs, S.A. Method for measuring and correcting multi-wire skew
US10693587B2 (en) 2017-07-10 2020-06-23 Kandou Labs, S.A. Multi-wire permuted forward error correction
US10203226B1 (en) 2017-08-11 2019-02-12 Kandou Labs, S.A. Phase interpolation circuit
US10467177B2 (en) 2017-12-08 2019-11-05 Kandou Labs, S.A. High speed memory interface
US10326623B1 (en) 2017-12-08 2019-06-18 Kandou Labs, S.A. Methods and systems for providing multi-stage distributed decision feedback equalization
CN116614338B (zh) 2017-12-28 2026-04-21 康杜实验室公司 同步切换多输入解调比较器的方法和装置
US10554380B2 (en) 2018-01-26 2020-02-04 Kandou Labs, S.A. Dynamically weighted exclusive or gate having weighted output segments for phase detection and phase interpolation
US11831472B1 (en) 2022-08-30 2023-11-28 Kandou Labs SA Pre-scaler for orthogonal differential vector signalling

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5588028A (en) * 1993-02-02 1996-12-24 U.S. Robotics Simplified trellis decoder
US5446758A (en) * 1993-07-08 1995-08-29 Motorola, Inc. Device and method for precoding
US6233290B1 (en) * 1995-04-13 2001-05-15 California Institute Of Technology Method for noncoherent coded modulation
AT405470B (de) * 1997-10-10 1999-08-25 Kratochwil Konrad Verfahren und anordnung zur übertragung von digitalen daten
US6246347B1 (en) * 1997-10-27 2001-06-12 Philips Electronics North America Corporation Controller for a variable length decoder
US6151370A (en) * 1998-02-12 2000-11-21 Lucent Technologies Inc. Path-oriented decoder for signal-dependent noise

Also Published As

Publication number Publication date
US6891484B2 (en) 2005-05-10
KR20030036624A (ko) 2003-05-09
WO2002095955A1 (en) 2002-11-28
JP2004533766A (ja) 2004-11-04
ATE344551T1 (de) 2006-11-15
DE60215807D1 (de) 2006-12-14
EP1397869A1 (de) 2004-03-17
EP1397869B1 (de) 2006-11-02
US20040155802A1 (en) 2004-08-12
CN1463500A (zh) 2003-12-24

Similar Documents

Publication Publication Date Title
DE60215807T2 (de) Verfahren zur decodierung einer sequenz von codeworten variabler länge
DE19609170B4 (de) Verfahren zur Durchführung einer "Tiefe-Zuerst"-Suche in einem Codebuch zur Codierung eines Geräusch- bzw. Klangsignales, Vorrichtung zur Durchführung dieses Verfahrens sowie zellulares Kommunikationssystem mit einer derartigen Vorrichtung
DE60128359T2 (de) Erneute benützung von feste checksuminformationen bei datenkopfkomprimierung
DE69735200T2 (de) Verfahren zu metrikbestimmung in einem übertragungssystem
DE69215743T2 (de) Fehlerkorrekturkodierungsverfahren mit mindestens zwei parallellen, systematischen Faltungsenkodern, iterativem Dekodierungsverfahren, Dekodierungsmodul und Dekoder dafür
DE69726661T2 (de) Verfahren und vorrichtung zur kodierung eines digitalen informationssignales
DE10133595B4 (de) Pufferschaltung, Speicherzugriffsverfahren und Reed-Solomon-Decoder
DE102009017540B4 (de) Verfahren zum Wiederherstellen verlorener und/oder beschädigter Daten
DE69634155T2 (de) Erfassung einer Konfidenz und eines Rahmen-Qualitäts-Signals in einem "soft decision"-Faltungs-Dekoder
DE2614916C2 (de) Konverter zur Codeumwandlung
DE69522497T2 (de) System und Verfahren zur Datenkompression
EP0488456B1 (de) Maximalwahrscheinlichkeitsempfänger
DE3485824T2 (de) Verfahren zur datenkompression.
DE69425313T2 (de) Viterbi-Entzerrer mit Rechenleistungsparendem Trace-Back-Verfahren
DE4491015C2 (de) Verfahren zum Erzeugen eines Spektralrauschbewertungsfilters zur Verwendung in einem Sprachcoder
DE60214584T2 (de) Differentielle kodierung im frequenz bereich von sinusmodell parametern
DE69434249T2 (de) Digitaler Signalprozessor mit Coprozessor zur Viterbi Decodierung
DE69932001T2 (de) Faltungsdekodierung , Durchführungsverfahren und Anordnung
DE3779897T2 (de) Verfahren und vorrichtung zur ableitung der formantfrequenzen aus einem teil eines sprachsignals.
DE10010238C2 (de) Verfahren zum Speichern von Pfadmetriken in einem Viterbi-Decodierer
DE19907728C2 (de) Vorrichtung und Verfahren zum Erzeugen eines Datenstroms und Vorrichtung und Verfahren zum Lesen eines Datenstroms
DE60035099T2 (de) Verfahren zur bestimmung der rahmenfrequenz eines datenrahmens in einem kommunikationssystem
DE69628357T2 (de) Verfahren zur Bestimmung des Phasenfehlers in einem digitalen Datenempfänger
EP0958685B1 (de) Verfahren und schaltungsanordnung zur übertragung ausgewählten signalpunkten einer signalkonstellation
EP1252716B1 (de) Verfahren und anordnung zur dekodierung von informationen

Legal Events

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