DE69618418T2 - Dekodierer variabler Länge unter Verwendung eines FIFO-Speichers - Google Patents

Dekodierer variabler Länge unter Verwendung eines FIFO-Speichers

Info

Publication number
DE69618418T2
DE69618418T2 DE69618418T DE69618418T DE69618418T2 DE 69618418 T2 DE69618418 T2 DE 69618418T2 DE 69618418 T DE69618418 T DE 69618418T DE 69618418 T DE69618418 T DE 69618418T DE 69618418 T2 DE69618418 T2 DE 69618418T2
Authority
DE
Germany
Prior art keywords
level
length
data
run
variable length
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
DE69618418T
Other languages
English (en)
Other versions
DE69618418D1 (de
Inventor
Heon-Hee Moon
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of DE69618418D1 publication Critical patent/DE69618418D1/de
Application granted granted Critical
Publication of DE69618418T2 publication Critical patent/DE69618418T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • 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
    • H03M7/42Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory
    • H03M7/425Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory for the decoding process only
    • 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
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Description

  • Die vorliegende Erfindung betrifft eine Decodiervorrichtung zur Decodierung von mit variabler Länge codierten Daten und insbesondere eine Hochgeschwindigkeits-Variable- Längen-Decodiervorrichfiung, die eine Verarbeitungsgeschwindigkeit zur Variable- Lärtgen-Decodierung in einem Datenübertragungssystem verbessern kann das eine Signalverarbeitung mit hoher Geschwindigkeit durchführt.
  • Im Allgemeinen verarbeiten Systeme, wie hochauflösende Fernseher, hochauflösende Videorecorder, digitale Videorecorder, digitale Camcorder und Multimediageräte Video- und Audioinformationen digital und zeichnen digital verarbeitete Information auf oder übertragen digital verarbeitete Information. Die Verfähren, die zur digitalen Verarbeitung von Videoinformation vorgeschlagen wurden, sind die Prädiktionscodierung, orthogonale Transformationscodierung und Variable-Längen-Codierung. Ein typisches Codiersystem, das diese Codierverfahren verwendet, führt eine orthogonale Transformationscodierung, eine Quantisierung und eine Variable-Längen-Codierung für Blöcke aus, die durch eine Aufteilung des Videosignals erhalten werden, um Videoinformation effizient zu komprimieren. Außerdem führt solch ein System eine Prädiktionscodierung zwischen Vollbildern oder Halbbildern durch, um die Datenkompressionsrate weiter zu erhöhen.
  • Die oben beschriebene Variable-Längen-Codiervorrichtung, die Informationen, basierend auf der Häufigkeit des Auftretens von Symbolen komprimiert, enthält eine VLC- Code-Tabelle für die Variable-Längen-Codierung der Eingangssymbole. Die VLC-Code- Tabelle ist gemäß dem Huffman-Codierverfahren gestaltet. Wie bekannt; ordnet die Huffman-Codierung einen kürzeren Code einem Symbol zu, das eine höhere Auftrittshäufigkeit aufweist, und ordnet einen längeren Code einem Symbol zu, das eine niedrigere Auftrittshäufigkeit aufweist. Bei dem typischen Codiersystem sind die Symbole, die der Variable-Längen-Codiervorrichtung zugeführt werden, [Lauflänge, Pegel]-Symbole, die im Allgemeinen über eine Lauflängen-Codierung erhalten werden. Die [Lauflänge, Pegel]-Symbole werden über eine wohlbekannte Zickzack-Abtastung erhalten, bei der die "Lauflänge" die Anzahl aufeinanderfolgender Nullen darstellt, die zwischen Transformationskoeffizienten vorhanden sind, die nicht Null sind, und der "Pegel" stellt einen Wert des Transformationskoeffizienten dar, der nicht Null ist. Die Variable-Längen- Codiertabelle, die gemäß dem Huffman-Codierverfahren gestaltet ist, ist in einen Escape-Bereich für Symbole, bei denen entweder die "Lauflänge" oder der "Pegel" einen sehr großen Wert aufweist, und einen normalen Bereich für die anderen Symbole unterteilt. Code-Wörter in dem normalen Bereich werden den [Lauflänge, Pegel]- Symbolen gemäß dem Huffman-Codierverfahren zugeordnet. Da die [Lauflänge, Pegel]- Symbole in dem Escape-Bereich dabei eine statistisch extrem niedrige Auftrittshäufigkeit haben, wird ein "ESC-Code", der das [Lauflänge, Pegel]-Symbol des Escape-Bereichs angibt, zusammen mit einem relativ langen Code den [Lauflänge, Pegel]-Symbolen jeweils zugeordnet. Code-Worte, die durch die Variable-Längen-Codierung erzeugt werden, werden zu einem Decodiersystem in Form eines Bitstroms übertragen, dem zusätzliche Information wie ein ESC-Code und ein end-of-block (EOB)-Code, der ein Blockende anzeigt, hinzugefügt.
  • Das Decodiersystem enthält einen Variable-Längen-Decoder, einen inversen Quantisierer und eine inverse orthogonale Transformationseinrichtung, um die codierten Daten durch Ausführung des umgekehrten Verfahrens der Signalverarbeitung des Codiersystems zu decodieren. Gemäß Fig. 1, die eine bekannte Variable-Längen-Decodiervorrichtung zeigt, werden mit variabler Länge codierte Daten einem FIFO-Speicher 11 in der Form eines seriellen oder parallelen Bitstroms zugeführt. Der FIFO-Speicher 11 speichert die zugeführten, mit variabler Länge codierten Daten und gibt die zuerst zugeführten Bitdaten der gespeicherten Daten an eine Schnittstelleneinrichtung 12 aus, sobald ein Lesesignal READ von der Schnittstelleneinrichtung 12 zugeführt wird. Die Schnittstelleneinrichtung 12 trennt die Daten, die von dem FIFO-Speicher 11 ausgegeben werden, in mit variabler Länge codierte Daten und andere, zusätzliche Daten basierend auf einem Startcode, der in den Daten enthalten ist, die von dem FIFO-Speicher 11 ausgegeben werden. Die Schnittstelleneinrichtung 12 gibt Daten mit einer vorbestimmten Anzahl von Bits aus, beispielsweise 32-Bit-Daten an eine zyklische Vertauschungseinrichtung (barrel shifter) 14 in Abhängigkeit von einem Datenanforderungssignal RQST, das von der Zyklischen Vertauschungseinrichtung 14 ausgegeben wird.
  • Die zyklische Vertauschungseinrichtung 14 verschiebt ein Fenster einer vorbestimmten Größe durch eine Code-Länge, die von einer Code-Tabelle 15 zugeführt wird, und gibt Daten aus dem verschobenen Fenster an eine [Lauflänge, Pegel]-Tabelle 16 und die Code-Tabelle 16 aus. Die [Lauflänge, Pegel]-Tabelle 16 gibt ein [Lauflänge, Pegel]- Symbol, das einem Code entspricht, der in den von der zyklischen Vertauschungseinrichtung 14 zugeführten Daten enthalten ist, an einen [Lauflänge, Pegel]Decoder 17 aus. Die Code-Tabelle 15 verwendet die Daten, die von der zyklischen Vertauschungseinrichtung 14 zugeführt werden, und gibt eine Code-Länge entsprechend zu dem [Lauflänge, Pegel]-Symbol, das von der [Lauflänge, Pegel]-Tabelle 16 ausgegeben wird, an die zyklische Vertauschungseinrichtung 14 aus. Die zyklische Vertauschungseinrichtung 14 gibt die Bitdaten aus dem Fenster, das durch die neu zugeführte Code- Länge verschoben worden ist, an die [Lauflänge, Pegel]-Tabelle 16 und die Code- Tabelle 14 aus. Die zyklische Vertauschungseinrichtung 14, die [Lauflänge, Pegel]- Tabelle 16 und die Codetabelle 15 wiederholen die obige Operation, um eine Variable- Längen-Decodierung für die von der Schnittstelleneinrichtung 12 zugeführten Daten durchzuführen.
  • Eine Ablaufsteuereinrichtung 13 unterbricht den Betrieb der Schnittstelleneinrichtung 12 und der zyklischen Vertauschungseinrichtung 14 und beendet die unterbrochenen Operationen. Zu diesem Zweck erzeugt die Ablaufsteuereinrichtung 13 ein Startsignal START oder ein Unterbrechungssignal HOLD in Abhängigkeit von Parametern, die aus einer externen Steuereingabe und den Daten, die von der zyklischen Vertauschungseinrichtung 14 ausgegeben werden, erhalten werden. Diese Signale START und HOLD werden der Schnittstelleneinrichtung 12 und der zyklischen Vertauschungseinrichtung 14 zugeführt.
  • Der [Lauflänge, Pegel]-Decoder 17 decodiert [Lauflänge, Pegel]-Symbole, die von der [Lauflänge, Pegel]-Tabelle 16 zugeführt werden, und gibt die decodierten [Lauflänge, Pegel]-Symbole an einen inversen Quantisierer (IQ)-(nicht gezeigt) und eine inverse orthogonale Transformationseinrichtung, wie eine inverse diskrete Kosinus-Transformationseinrichtung (IDCT) (nicht gezeigt) aus. Die entsprechenden Ablaufzeitdiagramme des [Lauflänge, Pegel]-Decoders 17 sind in de Fig. 2A bis 2C gezeigt. Wenn die [Lauflänge, Pegel]-Symbole, die von der [Lauflänge, Pegel]-Tabelle 16 erzeugt werden [5, 3], [3, 2], ... sind, erzeugt der [Lauflänge, Pegel]-Decoder 17 Nullen aus den Daten für die Lauflänge für das eingegebene [Lauflänge, Pegel]-Symbol und den folgenden Pegel, wie in Fig. 2A gezeigt, auf der Basis der in Fig. 2B gezeigten Taktimpulse, die mit einer konstanten Taktrate erzeugt werden. Das bedeutet, dass fünf Nullen für das [Lauflänge, Pegel]-Symbol [5, 3] ausgegeben werden, und anschließend wird der Pegelwert 3 ausgegeben. Darauf folgend werden drei Nullen für das [Lauflänge, Pegel]-Symbol [3, 2] ausgegeben, und anschließend wird der Pegelwert 2 ausgegeben. In diesem Fall erzeugt der [Lauflänge, Pegel]-Decoder 17 ein Unterbrechungssignal HOLDA mit niedrigem Pegel, das den Betrieb der zyklischen Vertauschungseinrichtung 14 während der Erzeugung der Taktimpulse mit einer Anzahl, die mit der Lauflänge übereinstimmt, unterbricht. Das bedeutet, dass das Unterbrechungssignal HOLDA der Fig. 2C so erzeugt wird, dass die zyklische Vertauschungseinrichtung 14 die Verschiebungsoperation bei der Erzeugung der Taktimpulse der Lauflänge 5 für das [Lauflänge, Pegel]-Symbol [5, 3] unterbricht. Außerdem wird das Unterbrechungssignal HOLDA der Fig. 2C so erzeugt, dass sie die zyklische Vertauschungseinrichtung 14 die Verschiebeoperation bei der Erzeugung der Taktimpulse für die Lauflänge 3 für das [Lauflänge, Pegel]-Symbol [3, 2] unterbricht.
  • Bei der von oben bekannten Variable-Längen-Decodiervorrichtung wird der Betrieb der zyklischen Vertauschungseinrichtung 14 jedoch bei der aufeinanderfolgenden Ausgabe von Nullen durch den [Lauflänge, Pegel]-Decoder 17 unterbrochen. Deshalb kann die bekannte Variable-Längen-Decodiervorrichfung nur in einem System mit einer nicht hohen Arbeitsgeschwindigkeit verwendet werden. Es ist somit schwierig, die bekannte Variable-Längen-Codiervorrichtung in einem Hochgeschwindigkeitssystem wie einem HDTV-System zu verwenden, das mehr Symbole pro Zeiteinheit decodieren sollte.
  • Das Dokument US-AA 355, 306 offenbart ein dynamisches Datenstapelkompressions- und -dekompressionssystem.
  • Bevorzugte Ausführungsformen der Erfindung
  • Im Hinblick auf die Lösung oder Verminderung der obigen Probleme ist es ein Ziel der bevorzugten Ausführungsformen der vorliegenden Erfindung, eine Hochgeschwindigkeits-Variable-Längen-Decodiervorrichtung anzugeben, die unabhängig eine Erzeugung eines [Lauflänge, Pegel]-Symbols und eine Decodierung des [Lauflänge, Pegel]- Symbols ausführt, um damit die Zeitverzögerung aufgrund eines Ablaufstopps eines Teils einer zyklischen Vertauschungseinrichtung für ein Lauflängen-Intervall zu beseitigen.
  • Gemäß einem ersten Aspekt der vorliegenden Erfindung ist eine Variable-Längen- Decodiervorrichtung zur Decodierung von mit variabler Länge codierten Daten vorgesehen, wobei die Variable-Längen-Decodiervorrichtung umfasst:
  • einen Speicher- und Ausgabeabschnitt zur Speicherung der mit variabler Länge codierten Daten und zur Ausgabe der gespeicherten mit variabler Länge codierten Daten mit einer vorbestimmten Datenlänge in Abhängigkeit von einem Datenspeicher- Zustandssignal;
  • eine [Lauflänge, Pegel]-Tabelle zur Ausgabe eines [Lauflänge, Pegel]-Symbols, das durch die Datenausgabe von dem Speicher- und Ausgabeabschnitt bestimmt wird;
  • einen Speicher zum Speichern und Ausgeben des [Lauflänge, Pegel]-Symbols, das von der [Lauflänge, Pegel]-Tabelle ausgegeben ist, in FLFO-Weise und zur Erzeugung des Signals, das den eigenen Datenspeicher-Zustand angibt; und
  • einen [Lauflänge, Pegel]-Decoder zur Lauflänge-Pegel-Decodierung des [Lauflänge, Pegel]-Symbols, das von dem Speicher ausgegeben ist.
  • Vorzugsweise speichert der Speicher- und Ausgabeabschnitt die Ausgabe der mit variabler Länge codierten Daten, wenn der Datenspeicher-Zustand angibt, dass der Speicher vollständig mit Daten angefüllt ist.
  • Vorzugsweise erzeugt der Speicher ein Leer-Signal, das angibt, dass in ihm keine gespeicherten Daten vorliegen, und der Lauflänge-Pegel-Decoder hält die Lauflänge- Pegel-Decodieroperation in Abhängigkeit von dem Leer-Signal aufrecht.
  • Die Variable-Längen-Decodiervorrichtung kann außerdem eine Speichereinrichtung zum Speichern und Ausgeben der Lauflänge-Pegel-decodierten Daten umfassen, die von dem Lauflänge-Pegel-Decoder in Datenblockeinheiten vorbestimmter Größe ausgegeben werden.
  • Die Speichereinrichtung speichert und gibt die Lauflänge-Pegel-decodierten Daten vorzugsweise abwechselnd in Einheiten der Datenblöcke aus.
  • Die Datenblöcke können aus 8 · 8-Pixeln zusammengesetzt sein.
  • Vorzugsweise umfasst die Speichereinrichtung zumindest zwei Blockspeichereinheiten zum Speichern der Lauflänge-Pegel-decodierten Daten von jedem der Datenblöcke und die Blockspeicher speichern und geben die Lauflänge-Pegel-decodierten Daten abwechselnd aus.
  • Für ein besseres Verständnis der Erfindung und um zu zeigen, wie ihre Ausführungsformen umgesetzt werden können, wird nun im Wege eines Beispiels auf die beiliegenden diagrammartigen Zeichnungen Bezug genommen, in denen:
  • Fig. 1 ein Blockdiagramm einer herkömmlichen Variable-Längen-Decodiervorrichtung darstellt;
  • Fig. 2A bis 2C Zeitdiagramme zur Erläuterung des Betriebs der Vorrichtung gemäß Fig. 1 darstellen;
  • Fig. 3 ein Blockdiagramm einer Hochgeschwindigkeits-Variable-Längen-Decodiervorrichtung gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung darstellt; und
  • Fig. 4A bis 4E Zeitdiagramme zur Erläuterung des Betriebs der Vorrichtung gemäß Fig. 3 darstellen.
  • Eine bevorzugte Form der vorliegenden Erfindung wird nachfolgend im Einzelnen unter Bezugnahme auf die begleitenden Zeichnungen beschrieben.
  • Die Vorrichtung der Fig. 3 enthält Blöcke zur Durchführung derselben Funktionen wie diejenigen der Blöcke, die der Vorrichtung der Fig. 1 entsprechen. Diese Blöcke besitzen dieselben Bezugszeichen wie diejenigen der Vorrichtung der Fig. 1. Die Fig. 3 enthält zusätzlich einen zweiten FIFO-Speicher 37, der zwischen einer [Lauflänge, Pegel]- Tabelle 16 und einem [Lauflänge, Pegel]-Decoder 38 eingefügt ist, um [Lauflänge, Pegel]-Symbole zu speichern, eine Ablaufsteuereinrichtung 33 zur Steuerung des Betriebs einer Schnittstelleneinrichtung 12 und einer zyklischen Vertauschungseinrichtung 14 gemäß dem Datenspeicherzustand des zweiten FIFO-Speichers 37 und einem Blockspeicher 39 zur Speicherung der Lauflänge-Pegel-decodierten Daten, die von dem [Lauflänge, Pegel]-Decoder 38 in Blockeinheiten ausgegeben werden.
  • Ein erster FIFO-Speicher 11 speichert die mit variabler Länge codierten Daten in der Form eines seriellen oder parallelen Bitstroms und gibt die zuerst zugeführten Daten unter den gespeichert Daten an die Schnittstelleneinrichtung 12 aus, sobald ein Lesesignal READ diesem von der Bitstrom-Schnittstelleneinrichtung 12 zugeführt wird. Die Schnittstelleneinrichtung gibt ein Lesesignal READ an den ersten FIFO-Speicher 11 aus, sobald ein Datenanforderungssignal RQST diesem von der zyklischen Vertauschungseinrichtung 14 zugeführt wird. Die Schnittstelleneinrichtung 12 ordnet außerdem die mit variabler Länge codierten Daten, die von dem ersten FIFO-Speicher 11 ausgegeben werden, in der Form der Ausgabe auf das Datenanforderungssignal RQST, basierend auf einem Startkode an, der einen Beginn eines Intervalls angibt, das in den mit variabler Länge codierten Daten enthalten ist. Wenn die umgeordneten, mit variabler Länge codierten Daten von der Schnittstelleneinrichtung 12 zugeführt werden, gibt die zyklische Vertauschungseinrichtung 14 die mit variabler Länge codierten Daten in dem Fenster, das von der von der Code-Tabelle 15 zugeführten Code-Länge verschoben wird, an die Code-Tabelle 15 und die [Lauflänge, Pegel]-Tabelle 16 aus. Die [Lauflänge, Pegel]-Tabelle 16 gibt das [Lauflänge, Pegel]-Symbol entsprechend zu einem Code- Wort in den mit variabler Länge codierten Daten aus, die von der zyklischen Vertauschungseinrichtung 14 zugeführt werden.
  • Unterdessen gibt die Code-Tabelle 15 an die zyklische Vertauschungseinrichtung 14 die Code-Länge des Code-Wortes in dem mit variabler Länge codierten Code aus, der von der zyklischen Vertauschungseinrichtung 14 zugeführt wird. Die Code-Länge ist eine Länge eines Code-Wortes, das dem [Lauflänge, Pegel]-Symbol entspricht, das durch Variable-Längen-Decodierung derselben mit variabler Länge codierter Daten erhalten wird. Die zyklische Vertauschungseinrichtung 14 verschiebt ein Fenster einer vorbestimmten Größe um eine Code-Länge, die neu von der Code-Tabelle 15 zugeführt wird, und gibt die mit variabler Länge codierten Daten in dem verschobenen Fenster an die [Lauflänge, Pegel]-Tabelle 16 und die Codetabelle 15 aus. Die zyklische Verschiebungseinrichtung 14, die [Lauflänge, Pegel]-Tabelle 16 und die Code-Tabelle 15 wiederholen die obigen Verarbeitungsschritte. Die Daten, die nicht für die Variable-Längen- Decodierung verwendet werden, werden wiederholt von der zyklischen Verschiebungseinrichtung 14 ausgegeben, bis durch die Code-Tabelle 15 ein entsprechendes [Lauflänge, Pegel]-Symbol bestimmt wird. Da der Betrieb einer zyklischen Verschiebungseinrichtung 14 dem Fachmann wohl bekannt ist, wird auf dessen detaillierte Beschreibung verzichtet.
  • Der zweite FIFO-Speicher 37 speichert das [Lauflänge, Pegel]-Symbol, das von der [Lauflänge, PegelJ-Tabelle 16 ausgegeben wird, und führt das gespeicherte [Lauflänge, Pegel)-Symbol dem [Lauflänge, Pegel]-Decoder 38 in der Eingabereihenflolge zu. Der FIFO-Speicher 37 gibt ein Vollsignal (/FULL) an die Ablaufsteuereinrichtung 33 aus, wenn der Datenspeicher-Zustand angibt, dass der FfFO-Speicher 37 mit Daten gefüllt ist.
  • Die Ablaufsteuereinrichtung 33 unterbricht den Betrieb der Schnittstelleneinrichtung 12 und der zyklischen Verschiebungseinrichtung 14 oder führt die unterbrochenen Operationen fort. Das bedeutet, dass die Ablaufsteuereinrichtung 33 das Voll-Signal (/FULL), eine externe Steuereingabe und weitere Parameter, die über einen variablen Decoder (nicht gezeigt) decodiert werden, empfängt und ein Startsignal START oder ein Unterbrechungssignal HOLD der Schnittstelleneinrichtung 12 und der zyklischen Verschiebungseinrichtung 14 zuführt. Die Ablaufsteuereinrichtung 33 erzeugt als Reaktion auf das Voll-Signal (/FULL) das HOLD-Signal, wenn der zweite FIFO-Speicher 37 mit Daten aufgefüllt ist. Das HOLD-Signal wird der Schnittstelleneinrichtung 12 und der zyklischen Verschiebungseinrichtung 14 zugeführt. Die Schnittstelleneinrichtung 12 und die zyklische Verschiebungseinrichtung 14 arbeiten in Reaktion auf das HOLD-Signal so, dass die mit variabler Länge codierten Daten von der zyklischen Verschiebungseinrichtung 14 nicht ausgegeben werden. Unter Steuerung der Ablaufsteuereinrichtung 33 kann der zweite FIFO-Speicher 37 in Reaktion auf das Voll-Signal (/FULL) alle [Lauflänge, Pegel]- Symbole speichern, die von der [Lauflänge, Pegel]-Tabelle 16 ausgegeben werden.
  • Somit kann das Problem, die [Lauflänge, Pegel]-Symbole aufgrund eines Überlaufs eines zweiten FIFO-Speichers 37 zu verlieren, verhindert werden.
  • Der zweite FIFO-Speicher 37 gibt ein Leer-Signal EMPTY, das angibt, dass der Datenspeicher-Zustand leer ist, an den [Lauflänge, Pegel]-Decoder 38 aus, wenn der zweite FIFO-Speicher 37 leer geworden ist. Der zweite FIFO-Speicher 37 erzeugt mit anderen Worten ein Leer-Signal, wenn es keine auszugebenden Daten mehr gibt. Der [Lauflänge, Pegel]-Decoder 38 führt während der Zeit keine Lauflänge-Pegel-Decodieroperation durch, wenn das EMPTY-Signal zugeführt wird, was bedeutet, dass es keine von dem zweiten FIFO-Speicher 37 auszugebende Daten gibt. Während der Zeit jedoch, wenn das EMPTY-Signal nicht zugeführt wird, Lauflänge-Pegel-decodiert der [Lauflänge, Pegel]-Decoder 38 das [Lauflänge, Pegel]-Symbol, das von der [Lauflänge, Pegel]-Tabelle 16 über den zweiten FIFO-Speicher 37 zugeführt wird, und gibt die Lauflänge-Pegeldecodierten Daten an den Blockspeicher 39 aus. Gemäß der Arbeitsweise des zweiten FIFO-Speichers 37 und des [Lauflänge, Pegel]-Decoders 38 kann eine inkorrekte Lauflänge-Pegel-Decodieroperation verhindert werden. Die [Lauflänge, Pegel]-Symbole, die von der [Lauflänge, Pegel]-Tabelle 16 ausgegeben werden, können dabei ohne Verzögerung Lauflänge-Pegel-decodiert werden.
  • Ein Beispiel der Lauflänge-Pegel-Decodierung für die [Lauflänge, Pegel]-Symbole wird im Einzelnen unter Bezugnahme auf die Zeitdiagramme, die in den Fig. 4A bis 4D gezeigt sind, beschrieben.
  • Die Beispiele der [Lauflänge, Pegel]-Symbole, die in dem zweiten FIFO-Speicher 37 gespeichert sind, werden in Fig. 4A als [5, 3], [3, 2], [2, -1], ..., [3, 2], [2, -1], gezeigt. Wenn der Datenspeicher-Zustand den Voll-Zustand durch Eingabe des [Lauflänge, Pegel]- Symbols [2, -1] erreicht, gibt der zweite FIFO-Speicher 37 ein Voll-Signal (/FULL), das angibt, dass er voll mit Daten ist, an die Ablaufsteuereinrichtung 33 in der Form eines, wie in Fig. 4B gezeigt, niedrigen Pegels aus. Anschließend gibt die Ablaufsteuereinrichtung 33 das in Fig. 4C gezeigte Niedrig-Pegel-HOLD-Signal an die Bitstrom-Schnittstelleneinrichtung 12 und die zyklische Vertauschungseinrichtung 14 aus. Als Ergebnis gibt die zyklische Vertauschungseinrichtung 14 nicht mit variabler Länge codierte Daten aus und erzeugt kein [Lauflänge, Pegel]-Symbol mehr während der Zeit, wenn ihr das niedrigpegelige HOLD-Signal zugeführt wird.
  • Der [Lauflänge, Pegel]-Decoder 38 Lauflänge-Pegel-decodiert die [Lauflänge, Pegel]- Symbole, die von dem zweiten FIFO-Speicher 37 ausgegeben werden. Durch die Lauflänge-Pegel-Decodierung wird jedes [Lauffänge, Pegel]-Symbol in Daten-Nullen, die der Lauflänge entsprechen, und den folgenden Pegel umgewandelt. Beispielsweise wird das Symbol [5, 3] in die Daten von fünf Nullen und den folgenden Pegelwert 3 umgewandelt, wie in Fig. 4D gezeigt. Die Lauflänge-Pegel-Decodierung für die [Lauflänge, Pegel]-Symbole wird in derselben Weise für die Symbole [3, 2], [2, -1], ..., [2, 1], die dem Symbol [5, 3] folgen, durchgeführt, wobei deren Ergebnis in Fig. 4D gezeigt ist.
  • Wenn das EMPTY-Signal von dem zweiten FIFO-Speicher 37 zugeführt wird, das bedeutet, zu einem Zeitpunkt, an dem ein Arbeitsintervall des [Lauflänge, Pegel]-Decoders 38 verstrichen ist, gibt der zweite FIFO-Speicher 37 das [Lauflänge, Pegel]-Symbol nicht aus. Der [Lauflänge, Pegel]-Decoder 38 führt auch keine Lauflänge-Pegel-Decodieroperation durch. Solch ein Halteintervall, für das ein Beispiel in Fig. 4D gezeigt ist, beruht auf zusätzliche Information, die zu den aktuellen Videodaten, gemäß dem Daten- Codierstandard, hinzugefügt wird.
  • Wenn das EMPTY-Signal in einen Hoch-Pegel-Zustand umgewandelt wird, nimmt der [Lauflänge, Pegel]-Decoder 38 die Lauflänge-Pegel-Decodieroperation für die [Lauflänge, Pegel]-Symbole wieder auf, die von dem zweiten FIFO-Speicher 37 zugeführt werden. Die Daten, die von der Lauflänge-Pegel-Decodierung erhalten werden, werden dem Blockspeicher 39 zugeführt.
  • Gemäß MPEG (der Moving Picture Experts Group) in Zusammenhang mit dem Videostandard besteht ein Block aus einer Größe von 8 · 8 Pixeln. Eine inverse orthogonale Transformationseinrichtung führt eine inverse orthogonale Transformation in Blockeinheiten durch. Der Blockspeicher 39 gemäß dec Ausführungsform der vorliegenden Erfindung ist somit so ausgelegt, dass er zumindest die Daten zweier Blöcke speichern kann. Der Blockspeicher 39 besitzt einen Doppelbank-Aufbau, bei dem die Daten eines Blockes, die in einer Bank gespeichert sind, ausgegeben werden, während die Lauflänge- Pegel-decodierten Daten in der anderen Bank gespeichert werden. Die Daten, die in dem Blockspeicher 39 gespeichert werden, werden an einen inversen Quantisierer IQ (nicht gezeigt) und eine inverse diskrete Kosinustransformationseinrichtung (IDCT) (nicht gezeigt) ausgegeben.
  • Wie oben beschrieben, führt die Variable-Längen-Decodiervorrichtung mit hoher Geschwindigkeit gemäß der vorliegenden Erfindung unabhängig eine Erzeugung eines [Lauflänge, Pegel]-Symbols und eine Decodierung des [Lauflänge, Pegel]-Symbols aus, um dadurch die mit variabler Länge codierten Daten mit hoher Geschwindigkeit für die Signalverarbeitung zu Variable-Längen-decodieren. Somit kann die Variable-Längen- Decodiervorrichtung mit hoher Geschwindigkeit in einem Hochgeschwindigkeits- Decodiersystem, wie einem HDTV-System eingesetzt werden. Außerdem, da die Lauflänge-Pegel-decodierten Daten in Einheiten von Blöcken gespeichert werden können, kann ein FIFO-Speicher zur Speicherung der [Lauflänge, Pegel]-Symbole mit kleiner Datenkapazität ausgelegt werden und kann unter Verwendung eines anwendungsspezifisch integrierten Schaltkreises (ASIC) hergestellt werden.

Claims (7)

1. Variable-Längen-Decodiervorrichtung zur Dekodierung von mit variabler Länge codierten Daten, wobei die Variable-Längen-Decodiervorrichtung umfasst:
einen Speicher- und Ausgabeabschnitt (14) zum Speichern der mit variabler Länge codierten Daten und zum Ausgeben der mit variabler Länge codierten Daten mit einer vorbestimmten Datenmenge in Abhängigkeit von einem Datenspeicher- Zustandssignal;
eine [Lauflänge, Pegel]-Tabelle (16) zum Ausgeben eines [Lauflänge, Pegel]- Symbols, das durch Datenausgabe von dem Speicher- und Ausgabeabschnitt (14) bestimmt wird; gekennzeichnet durch
einen Speicher (37) zum Speichern und Ausgeben des [Lauflänge, Pegel]-Symbols, das von der [Lauflänge, Pegel]-Tabelle (16) ausgegeben ist, in einer FIFO- Weise und zum Erzeugen des Signals, das einen eigenen Datenspeicher-Zustand angibt;
einen [Lauflänge, Pegel]-Decoder (38) zum Lauflänge-Pegel-decodieren des [Lauflänge, Pegel]-Symbols, das von dem Speicher (37) ausgegeben wird.
2. Variable-Längen-Decodiervorrichtung nach Anspruch 1, wobei der Speicher- und Ausgabeabschnitt (14) die Ausgabe der mit variabler Länge codierten Daten speichert, wenn der Datenspeicher-Zustand angibt, dass der Speicher (37) mit den Daten gefüllt ist.
3. Variable-Längen-Decodiervorrichtung nach Anspruch 1 oder 2, wobei der Speicher (37) ein Leer-Signal erzeugt, das angibt, dass darin keine gespeicherten Daten vorhanden sind, und, wobei der Lauflänge-Pegel-Decodierer (38) die Lauflänge- Pegel-Decodieroperation in Abhängigkeit von dem Leer-Signal anhält.
4. Variable-Längen-Decodiervorrichtung nach Anspruch 1, 2 oder 3, die weiterhin eine Speichereinrichtung (39) zum Speichern und Ausgeben der Lauflänge-Pegeldecodierten Daten umfasst, die von dem Lauflänge-Pegel-Decoder (38) in Einheiten eines Datenblocks vorbestimmter Größe ausgegeben werden.
5. Variable-Längen-Decodiervorrichtung nach Anspruch 4, wobei die Speichereinrichtung (39) abwechselnd die Lauflänge-Pegel-decodierten Daten in Einheiten des Datenblocks speichert und ausgibt.
6. Variable-Längen-Decodiervorrichtung nach Anspruch 4 oder 5, wobei der Datenblock aus 8 · 8 Pixeln besteht.
7. Variable-Längen-Decodiervorrichtung nach Anspruch 4, 5 oder 6, wobei die Speichereinrichtung (39) zumindest zwei Blockspeicher zum Speichern der Lauflänge- Pegel-decodierten Daten für jeden Datenblock umfasst und wobei die Blockspeicher abwechselnd die Lauflänge-Pegel-decodierten Daten speichern und ausgeben.
DE69618418T 1995-10-19 1996-10-11 Dekodierer variabler Länge unter Verwendung eines FIFO-Speichers Expired - Fee Related DE69618418T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019950036148A KR100203246B1 (ko) 1995-10-19 1995-10-19 고속의 가변장복호화장치

Publications (2)

Publication Number Publication Date
DE69618418D1 DE69618418D1 (de) 2002-02-14
DE69618418T2 true DE69618418T2 (de) 2002-06-27

Family

ID=19430665

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69618418T Expired - Fee Related DE69618418T2 (de) 1995-10-19 1996-10-11 Dekodierer variabler Länge unter Verwendung eines FIFO-Speichers

Country Status (7)

Country Link
US (1) US5892791A (de)
EP (1) EP0769852B1 (de)
JP (1) JP3022784B2 (de)
KR (1) KR100203246B1 (de)
CN (1) CN1103142C (de)
DE (1) DE69618418T2 (de)
ES (1) ES2170209T3 (de)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1023415A (ja) * 1996-07-05 1998-01-23 Matsushita Electric Ind Co Ltd 画像符号化復号方法および装置
JPH11215008A (ja) * 1998-01-27 1999-08-06 Oki Electric Ind Co Ltd 復号回路
KR100627494B1 (ko) * 2002-10-07 2006-09-22 엘지전자 주식회사 동영상 부호화기 및 이를 이용한 부호화 방법
US7281950B2 (en) 2004-09-29 2007-10-16 Fci Americas Technology, Inc. High speed connectors that minimize signal skew and crosstalk
US7500871B2 (en) 2006-08-21 2009-03-10 Fci Americas Technology, Inc. Electrical connector system with jogged contact tails
US7497736B2 (en) 2006-12-19 2009-03-03 Fci Americas Technology, Inc. Shieldless, high-speed, low-cross-talk electrical connector
US8764464B2 (en) 2008-02-29 2014-07-01 Fci Americas Technology Llc Cross talk reduction for high speed electrical connectors
US9277649B2 (en) 2009-02-26 2016-03-01 Fci Americas Technology Llc Cross talk reduction for high-speed electrical connectors
US8366485B2 (en) 2009-03-19 2013-02-05 Fci Americas Technology Llc Electrical connector having ribbed ground plate
US8267721B2 (en) 2009-10-28 2012-09-18 Fci Americas Technology Llc Electrical connector having ground plates and ground coupling bar
US8616919B2 (en) 2009-11-13 2013-12-31 Fci Americas Technology Llc Attachment system for electrical connector
US8824569B2 (en) * 2011-12-07 2014-09-02 International Business Machines Corporation High bandwidth decompression of variable length encoded data streams
EP2624034A1 (de) 2012-01-31 2013-08-07 Fci Abbaubare optische Kupplungsvorrichtung
US9257778B2 (en) 2012-04-13 2016-02-09 Fci Americas Technology High speed electrical connector
US8944831B2 (en) 2012-04-13 2015-02-03 Fci Americas Technology Llc Electrical connector having ribbed ground plate with engagement members
USD727268S1 (en) 2012-04-13 2015-04-21 Fci Americas Technology Llc Vertical electrical connector
USD727852S1 (en) 2012-04-13 2015-04-28 Fci Americas Technology Llc Ground shield for a right angle electrical connector
USD718253S1 (en) 2012-04-13 2014-11-25 Fci Americas Technology Llc Electrical cable connector
US9543703B2 (en) 2012-07-11 2017-01-10 Fci Americas Technology Llc Electrical connector with reduced stack height
USD751507S1 (en) 2012-07-11 2016-03-15 Fci Americas Technology Llc Electrical connector
USD745852S1 (en) 2013-01-25 2015-12-22 Fci Americas Technology Llc Electrical connector
USD720698S1 (en) 2013-03-15 2015-01-06 Fci Americas Technology Llc Electrical cable connector
CN103596013B (zh) * 2013-11-19 2017-02-15 上海高清数字科技产业有限公司 新型解码器及解码方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4355306A (en) * 1981-01-30 1982-10-19 International Business Machines Corporation Dynamic stack data compression and decompression system
JPS61107818A (ja) * 1984-10-30 1986-05-26 Nec Corp エントロピ−符号化方式とその装置
US5253078A (en) * 1990-03-14 1993-10-12 C-Cube Microsystems, Inc. System for compression and decompression of video data using discrete cosine transform and coding techniques
DE69126198T2 (de) * 1990-12-24 1997-12-04 Xerox Corp Datendekodierungsvorrichtung
JP3063180B2 (ja) * 1991-02-13 2000-07-12 富士通株式会社 可変長符号復号回路
JP3136796B2 (ja) * 1992-09-24 2001-02-19 ソニー株式会社 可変長符号デコーダ
KR950004555B1 (ko) * 1992-10-12 1995-05-02 현대전자산업주식회사 데이타 저장방식의 컴팩트디스크 플레이어 회로
EP0629050B1 (de) * 1993-06-10 2001-10-17 Koninklijke Philips Electronics N.V. Dekodierer für Wörter variabler Länge mit hohem Durchfluss und Vorrichtung mit einem solchen Dekodierer
KR970002483B1 (ko) * 1993-11-29 1997-03-05 대우전자 주식회사 고속의 가변길이 복호화장치
KR0152032B1 (ko) * 1994-05-06 1998-10-15 김광호 영상신호를 위한 가변장복호기
US5710595A (en) * 1994-12-29 1998-01-20 Lucent Technologies Inc. Method and apparatus for controlling quantization and buffering for digital signal compression

Also Published As

Publication number Publication date
EP0769852B1 (de) 2002-01-09
DE69618418D1 (de) 2002-02-14
CN1154014A (zh) 1997-07-09
EP0769852A1 (de) 1997-04-23
CN1103142C (zh) 2003-03-12
US5892791A (en) 1999-04-06
KR100203246B1 (ko) 1999-06-15
JPH09191257A (ja) 1997-07-22
KR970025145A (ko) 1997-05-30
ES2170209T3 (es) 2002-08-01
JP3022784B2 (ja) 2000-03-21

Similar Documents

Publication Publication Date Title
DE69618418T2 (de) Dekodierer variabler Länge unter Verwendung eines FIFO-Speichers
DE69330191T2 (de) Prädiktive Zwischenbildkodierungsvorrichtung mit Bewegungsausgleich
DE69535569T2 (de) Verfahren zur Synchronisationsrückgewinnung und Vorrichtung zur variablen Längendekodierung
DE69315174T2 (de) Mehrzweckkodierer von Abbruchkoden und Lauflängen/Amplituden für eine Vorrichtung zum Verarbeiten eines digitalen Videosignals
DE69524269T2 (de) Vorrichtung und Verfahren zur Dekodierung von Kodes variabler Länge
DE69230922T2 (de) Videosignalkodierer mit Blockvertauschungstechnik
DE69322110T2 (de) Vorrichtung und Verfahren zur digitalen Aufzeichnung und Wiedergabe eines Videosignals
DE69425047T2 (de) Adaptives variables längenkodierungs- und -dekodierungsverfahren für bilddaten
DE69228893T2 (de) Vorrichtung und Verfahren zur Datenmischung und -entmischung
DE69720559T2 (de) Methode zur Bildkodierung mit Kodes variabler Länge
DE3587107T2 (de) Drehungsverfahren und -geraet fuer binaere bilder.
DE69228641T2 (de) Kodierer und dekodierer
DE69122595T2 (de) Aufzeichnungs- und Abspielgerät
DE69127739T2 (de) Bilddatenverarbeitungsgerät
DE69630644T2 (de) Anlage und Verfahren zur Bildkodierung und Aufnahme/Wiedergabe
DE69838729T2 (de) Verfahren und vorrichtung zur verringerung des benötigten speicherplatzes zur speicherung von referenzbildern in einem videodekoder
DE69416045T2 (de) Intra-Bild-Zwangskodierungsverfahren
DE69231880T2 (de) Verfahren zur Bildübertragung
DE69535392T2 (de) Vorrichtung zur Dekodierung von Codes mit variablen Lauflängen unter Verwendung einer relativen Adressierung
DE69129653T2 (de) Informationsaufzeichnungsgerät
DE19634600A1 (de) Bildsignalkodiervorrichtung und zugehöriges Verfahren
DE69428034T2 (de) Bildsignalkodierung und -dekodierung
DE4408522C2 (de) Vorrichtung zur Bilddatenverarbeitung und Verfahren zur Verarbeitung von Bilddaten
DE69324114T2 (de) Bewegtbilddekodierungssystem
DE69230047T2 (de) Fernsehsystem zum Übertragen von Bildsignalen in einem digitalen Format

Legal Events

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