DE112015001607T5 - Orthogonale Datenorganisation für Fehlerdetektion und -korrektur in seriellen Videoschnittstellen - Google Patents

Orthogonale Datenorganisation für Fehlerdetektion und -korrektur in seriellen Videoschnittstellen Download PDF

Info

Publication number
DE112015001607T5
DE112015001607T5 DE112015001607.4T DE112015001607T DE112015001607T5 DE 112015001607 T5 DE112015001607 T5 DE 112015001607T5 DE 112015001607 T DE112015001607 T DE 112015001607T DE 112015001607 T5 DE112015001607 T5 DE 112015001607T5
Authority
DE
Germany
Prior art keywords
data
bits
codewords
error
digital
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.)
Withdrawn
Application number
DE112015001607.4T
Other languages
English (en)
Inventor
Ju Hwan Yi
Laurence Alan Thompson
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.)
Lattice Semiconductor Corp
Original Assignee
Lattice Semiconductor Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lattice Semiconductor Corp filed Critical Lattice Semiconductor Corp
Publication of DE112015001607T5 publication Critical patent/DE112015001607T5/de
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2703Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
    • H03M13/2707Simple row-column interleaver, i.e. pure block interleaving
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1515Reed-Solomon codes
    • 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/152Bose-Chaudhuri-Hocquenghem [BCH] codes
    • 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/19Single error correction without using particular properties of the cyclic codes, e.g. Hamming codes, extended or generalised Hamming codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

Eine Quelle-Vorrichtung empfängt digitale Daten, welche unkomprimierte Videodaten und deren assoziierte Metadaten aufweisen und komprimiert die Videodaten. Die Quelle-Vorrichtung generiert einen Fehlercode für jedes Datenwort, welches die komprimierten Videodaten und deren assoziierte Metadaten repräsentiert. Das Datenwort und dessen korrespondierender Fehlercode werden zum Bilden eines Codeworts kombiniert. Die Quelle-Vorrichtung organisiert Codewörter der Videodaten und deren Metadaten in orthogonale Datenblöcke und überträgt die Datenblöcke zu einer Senke-Vorrichtung. Die Senke-Vorrichtung decodiert beschädigte Datenbits in den empfangen Daten basierend auf einer Analyse der Fehlercodes der Codewörter in den Datenblöcken. Das Organisieren der Codewörter in orthogonale Datenblöcke trägt dazu bei, beschädigte Datenbits in Datenblöcken zu isolieren, und ermöglicht der Senke-Vorrichtung beschädigte Datenbits, welche aus einem einzelnen Übertragungsfehler resultieren, zu detektieren und zu korrigieren und beschädigte Datenbits, welche aus mehreren Übertragungsfehlern resultieren, zu detektieren.

Description

  • GEBIET
  • Ausführungsformen der Erfindung betreffen im Allgemeinen das Feld der digitalen Datenübertragung über Computernetzwerke und insbesondere die Fehlerdetektion und -korrektur innerhalb eines Videokanals.
  • HINTERGRUND
  • Die Übertragung von Videodaten über (mit anderen Worten mittels) eines Videokanals in modernen digitalen Videoschnittstelle-Systemen unterliegt im Allgemeinen irgendeiner nicht-null (d.h. von Null verschiedenen) Bit-Fehlerrate. Moderne Videoschnittstellen-Standards, z.B. einer Hochauflösung-Multimedia-Schnittstelle (HDMI, engl.: „High-Definition Multimedia Interface“), einer Mobile-Hochauflösung-Verbindung (MHL, engl.: „Mobile High-Definition Link“) und andere Audio/Videoschnittstelle-Standards, unterstützen die Übertragung von unkomprimierten Videodaten und spezifizieren eine akzeptable Bit-Fehlerrate für die Übertragung der Videodaten. Ein gelegentlicher Bit-Fehler in übertragenen Videodaten resultiert in einem beschädigten Pixel der Videodaten. Allerdings ist die Fehlerrate von übertragenen Videodaten über einen Videokanal in einem digitalen Videoschnittstelle-System, basierend auf HDMI, MHL und anderen Audio/Videoschnittstelle-Standards, im Allgemeinen niedrig, so dass der gelegentliche Bit-Fehler in den übertragenen Videodaten für das menschliche Auge nicht sichtbar ist.
  • Die Entwicklung einer modernen digitalen Audio/Videoschnittstelle, z.B. einem Anzeigestrom-Kompressionsstandard (DSC, engl.: “Display Stream Compression Standard”), kann die Übertragung von komprimierten digitalen Videodaten unterstützen. Die Unterstützung der Übertragung von komprimierten digitalen Videodaten von einem modernen digitalen Videoschnittstelle-System tritt Herausforderungen in der Bereitstellung effizienter Fehlerdetektion und Korrektur in übertragenen digitalen Videodaten entgegen, da, wenn komprimierte digitale Videodaten übertragen werden, ein einzelner Bit-Fehler einen großen Block von Pixeln der digitalen Videodaten beschädigen kann und für das menschliche Auge sichtbar sein kann, selbst wenn der Fehler nicht wiederholt auftritt.
  • ÜBERBLICK
  • Hierin wird eine Lösung beschrieben zum Generieren von Fehlercodes für digitale Daten und zum Detektieren beschädigter Datenbits in den digitalen Daten auf einer Empfängerseite. Die Lösung organisiert Codewörter für die digitalen Daten in einem oder mehreren orthogonalen Datenblöcken, wobei jedes Codewort einen Datenabschnitt, welcher den Inhalt der digitalen Daten repräsentiert, und einen Fehlerkorrektur-Abschnitt zum Detektieren beschädigter Datenbits in dem Datenabschnitt aufweist. Mittels der Verwendung orthogonaler Datenblöcke ermöglicht die Lösung einer Senke-Vorrichtung, beschädigte Datenbits, welche in einem Datenblock aus einem einzelnen Übertragungsfehler resultieren, zu detektieren und zu korrigieren und beschädigte Datenbits, welche in einem Datenblock aus mehreren Übertragungsfehlern resultieren, zu detektieren.
  • Eine Quelle-Vorrichtung empfängt digitale Daten, welche unkomprimierte Videodaten und deren assoziierte Metadaten aufweisen, und komprimiert die Videodaten. Die Quelle-Vorrichtung generiert einen Fehlercode für jedes Datenwort, welches die komprimierten Videodaten repräsentiert, und jedes Datenwort, welches die mit den Videodaten assoziierten Metadaten (mit anderen Worten diesen zugehörigen Metadaten) repräsentiert. Das Datenwort und dessen korrespondierenden Fehlercodes werden zum Bilden eines Codeworts kombiniert. Die Quelle-Vorrichtung organisiert Codewörter der Videodaten und deren Metadaten in orthogonale Datenblöcke und überträgt die Datenblöcke zu einer Senke-Vorrichtung. Die Senke-Vorrichtung detektiert beschädigte Datenbits in den empfangenen Daten basierend auf einer Analyse der Fehlercodes der Codewörter in den Datenblöcken. Das Organisieren der Codewörter in orthogonalen Datenblöcken trägt dazu bei, beschädigte Datenbits in Datenblöcken zu isolieren und ermöglicht der Senke-Vorrichtung mehrere beschädigte Datenbits, welche aus einem einzelnen Übertragungsfehler resultieren, zu detektieren und zu korrigieren und mehrere beschädigte Datenbits, welche aus mehreren Übertragungsfehlern resultieren, zu detektieren.
  • KURZBESCHREIBUNG DER FIGUREN
  • Ausführungsformen der Erfindung werden beispielhaft und nicht limitierend in den Figuren der beigefügten Zeichnungen, in welchen gleiche Bezugszeichen auf ähnliche Elemente verweisen, veranschaulicht:
  • 1 zeigt ein Blockdiagram, welches eine Videoschnittstelle-Umgebung gemäß einer Ausführungsform veranschaulicht.
  • 2 zeigt ein Blockdiagram, welches ein Beispiel von digitalen leitungscodierten Codewörtern von Eingangsdaten während Übertragungsintervallen veranschaulicht, gemäß einer Ausführungsform.
  • 3 zeigt ein Blockdiagram, welches einen beispielhaften orthogonalen Codeblock, welcher mehrere Codewörter aufweist, veranschaulicht gemäß einer Ausführungsform.
  • 4A veranschaulicht ein erstes Beispiel, in dem keine Bit-Fehler in einem übertragenen orthogonalen Codeblock detektiert sind, gemäß einer Ausführungsform.
  • 4B veranschaulicht ein zweites Beispiel, in dem Bit-Fehler in allen vertikalen Stellen einer einzelnen Spalte eines übertragenen orthogonalen Codeblocks detektiert sind, gemäß einer Ausführungsform.
  • 4C veranschaulicht ein drittes Beispiel, in dem Bit-Fehler in einigen vertikalen Stellen einer einzelnen Spalte eines orthogonalen Codeblocks detektiert sind, gemäß einer Ausführungsform.
  • 4D veranschaulicht ein viertes Beispiel, in dem Bit-Fehler in 2 vertikalen Spalten eines übertragenen orthogonalen Codeblocks detektiert sind, gemäß einer Ausführungsform.
  • 5 zeigt ein Ablaufdiagram, welches einen Prozess zum Generieren von Fehlercodes für Eingangsdaten in einer Videoschnittstelle-Umgebung veranschaulicht, gemäß einer Ausführungsform
  • 6 zeigt ein Ablaufdiagram, welche einen Prozess zum Detektieren und/oder Korrigieren beschädigter Datenbits in empfangenen digitalen Daten in einer Videoschnittstelle-Umgebung veranschaulicht, gemäß einer Ausführungsform.
  • DETAILLIERTE BESCHREIBUNG
  • Wie hierin verwendet, bezeichnen "Netzwerk" oder "Kommunikationsnetzwerk" ein Verbindungsnetzwerk zum Übertragen von digitalem Medieninhalt (aufweisend Musik, Audio/Video, Spiele, Fotos/Bilder, und Anderes) zwischen Vorrichtungen unter Verwendung irgendeiner Anzahl von Technologien, wie etwa seriell-ATA (SATA), einer Frame-Informationsstruktur (FIS, engl.: „Frame Informationen Structure“), usw. Ein Netzwerk weist eine lokales Netzwerk (LAN, engl.: „Local Area Network), ein Weitverkehrsnetz (WAN, engl.: „Wide Area Network“), ein großstädtisches Netzwerk (MAN, engl.: „Metropolitan Area Network“), ein Intranetz, das Internet, usw. auf. In einem Netzwerk können bestimmte Netzwerk-Vorrichtungen eine Quelle für digitalen Medieninhalt sein, wie etwa ein digitaler Fernseher-Tuner (mit anderen Worten ein TV-Tuner), ein Kabel-Beistellgerät (mit anderen Worten eine Kabel-Set-Top-Box), eine Handheld-Vorrichtung (z.B. ein persönlicher digitaler Assistent (PDA)), ein Videospeicher-Server und eine andere Quelle-Vorrichtung. Solche Vorrichtungen werden hierin bezeichnet als "Quelle-Vorrichtungen" oder "Übertragen-Vorrichtungen". Andere Vorrichtungen können digitalen Medieninhalt empfangen, anzeigen, verwenden oder speichern, wie etwa ein digitaler Fernseher, ein Heimtheater-System, ein Audiosystem, ein Spielesystem, ein Video- und Audiospeicher-Server und Ähnliches. Solche Vorrichtungen sind hierin bezeichnet als "Senke-Vorrichtungen" oder "Empfangen-Vorrichtungen".
  • Wie hierin verwendet, bezeichnet eine "Videoschnittstelle-Umgebung" eine Umgebung, welche eine Quelle-Vorrichtung und eine Senke-Vorrichtung aufweist, welche mittels eines Übertragungskanals gekoppelt sind zum Übertragen von Videodaten und Metadaten, welche mit den Videodaten assoziiert sind. Ein Beispiel einer Videoschnittstelle-Umgebung ist eine HDMI-Umgebung, in welcher eine Quelle-Vorrichtung (wie etwa ein DVD-Abspielgerät) eingerichtet ist einer Senke-Vorrichtung (wie etwa ein Fernsehgerät oder eine andere Anzeige) Medieninhalt, welcher gemäß einem HDMI Protokoll codiert ist, über einen (mit anderen Worten mittels eines) HDMI-Kanal oder einen MHL3-Kanal bereitzustellen.
  • Es sollte erwähnt sein, dass bestimmte Vorrichtungen mehrere Medienfunktionen (mit anderen Worten Mediafunktionen) ausführen können, wie etwa eine Kabel-Set-Top-Box, welche als ein Empfänger (Informationen von einem Kabel-Kopfende empfangend) wie auch als Überträger (Informationen zu einem TV übertragend) und andersherum dienen können. In einigen Ausführungsformen können die Quelle- und Senke-Vorrichtungen zusammen in einem einzelnen lokalen Netzwerk angeordnet sein. In anderen Ausführungsformen können die Vorrichtungen mehrere Netzwerksegmente überspannen, wie etwa zwischen lokalen Netzwerken tunnelnd. Es sollte erwähnt werden, dass obwohl das Generieren von Fehlercodes für digitale Daten und das Detektieren beschädigter Datenbits in empfangenen digitalen Daten hierin im Kontext mit einer Videoschnittstelle-Umgebung beschrieben wird, die Fehler-Generieren und -Detektieren Techniken, welche hierin beschrieben sind, auf andere Typen von digitalem Datentransfer zwischen einer Quelle-Vorrichtung und einer Senke-Vorrichtung anwendbar sind, wie etwa auf Netzwerkdaten in einer Netzwerkumgebung und auf Ähnliches.
  • 1 zeigt ein Blockdiagram, welche eine Videoschnittstelle-Umgebung gemäß einer Ausführungsform veranschaulicht. Die Umgebung in 1 weist eine Quelle-Vorrichtung 100 auf, welche mit einer Senke-Vorrichtung 102 mittels eines Datenübertragungskanals 116 gekoppelt ist. Die Quelle-Vorrichtung 100 weist auf: ein Videokompression-Modul 112, ein Fehlercode-Generator 200 und einen digitalen Leitungscodierer 114. Die Senke-Vorrichtung 102 weist auf: einen digitalen Leitungsdecodierer 118, einen Blockpuffer 120, ein Fehlerkorrektur-Modul 122 und ein Videodekompression-Modul 124. Die Quelle-Vorrichtung 100 empfängt Eingangsdaten 104 und kombiniert die Eingangsdaten 104 mit Fehlercodes, und überträgt die kombinierten Daten über den (mit anderen Worten mittels des) Übertragungskanal 116 zu der Senke-Vorrichtung 102. Die Senke-Vorrichtung 102 detektiert Fehler in den empfangenen Daten und produziert Ausgangsdaten 106 (mit anderen Worten Ausgabedaten 106). Die Senke-Vorrichtung 102 detektiert und korrigiert beschädigte Datenbits in den empfangenen Daten, welche aus einem einzelnen Übertragungsfehler resultieren. Die Senke-Vorrichtung 102 detektiert und berichtet weiterhin beschädigte Datenbits in den empfangenen Daten, welche aus mehreren Übertragungsfehlern resultieren. Andere Ausführungsformen der Umgebung von 1 können verschiedene und/oder zusätzliche Komponenten aufweisen als die, die hierin veranschaulicht sind. Zum Beispiel kann der Datenübertragungskanal 116 irgendein geeigneter Typ von Video- oder Kommunikationskanal sein, wie etwa ein HDMI-Kanal, ein MHL-Kanal oder ein anderer Seriell-Typ Kanal.
  • In einer Ausführungsform weisen die Eingangsdaten 104 unkomprimierte Videodaten 110 und Metadaten 111, welche mit den Videodaten 110 assoziiert sind, auf. Beispiele von mit den Videodaten assoziierten Metadaten weisen auf: Hochkontrast-Metadaten (engl.: „high dynamic range“ Metadaten), welche einen Umfang der Videodaten beschreiben, und Videokompression-Metadaten, welche eine Charakteristik der Videodaten beschreiben, z.B. eine Länge des Videos, eine Bitrate und eine Bildgröße (mit anderen Worten Framegröße) des Videos und/oder eine Charakteristik des Codierens, welches zum Codieren von Videobildern der Videodaten verwendet wird, z.B. der Typ des Kompressionsalgorithmus. Die Eingangsdaten 104 können auf einem nicht-flüchtigen computerlesbaren Speichermedium gespeichert sein oder werden, wie etwa einem Datenspeicher (engl.: „memory“), oder von einer Quelle extern zu der Quelle-Vorrichtung 100 empfangen werden, zum Beispiel von einem externen Videoserver, welcher kommunikativ mit der Quelle-Vorrichtung 100 mittels des Internets oder irgendeinem anderen Typ eines Netzwerks gekoppelt ist.
  • Das Videokompression-Modul 112 ist eingerichtet zum digitalen Komprimieren eines Videos der Videodaten 110. Das Videokompression-Modul 112 kann eine Komprimierung unter Verwendung irgendeines bekannten Videocodierungsstandards implementieren, zum Beispiel eine Anzeigestrom-Komprimierung (DSC) der Videoelektronikstandard-Assoziation (VESA) und Ähnlichem. Ausführungsformen des Videokompression-Moduls 112 können irgendwelche Videokompression-Schemata verwenden, welche denen, die in der Technik befähigt sind, bekannt sind, zum Beispiel aufweisend eine diskrete Kosinus-Transformation (DCT), eine Wavelet-Transformation, eine Quantelung und eine Entropiecodierung. Das Videokompression-Modul 112 stellt dem Fehlercode-Generator 200 die komprimierten Videodaten für eine Fehlercode-Generierung bereit. Die Metadaten, welche mit den Videodaten 110 assoziiert sind, werden dem Fehlercode-Generator 200 zur Fehlercode-Generierung direkt bereitgestellt.
  • Der Fehlercode-Generator 200 generiert Fehlercodes für die komprimierten Videodaten und Metadaten, welche mit den Videodaten assoziiert sind. In einer Ausführungsform empfängt der Fehlercode-Generator 200 einen Abschnitt der komprimierten Videodaten von dem Videokompression-Modul 112 und generiert einen Fehlercode basierend auf dem Abschnitt der komprimierten Videodaten. In einer Ausführungsform weist ein Abschnitt der komprimierten Videodaten mehrere Datenwörter auf, von denen jedes mehrere Datenbits aufweist. Für jedes Datenwort generiert der Fehlercode-Generator 200 einen Fehlercode, welcher eine vorbestimmte Anzahl von Syndrombits (auch bezeichnet als "Paritätsbits") aufweist. Jedes Datenwort und dessen korrespondierender Fehlercode werden kombiniert zum Bilden eines Fehlerkorrektur-Codeworts (oder einfach "Codewort"). In einer Ausführungsform wird der Fehlercode, welcher mittels des Fehlercode-Generators 200 generiert wird, zu dem Datenwort hinzugefügt, z.B. unter Verwendung eines Multiplexers, bevor diese mittels des digital Leitungscodierers 114 leitungscodiert und über den Übertragungskanal 116 übertragen werden.
  • In einer Ausführungsform wendet der Fehlercode-Generator 200 einen Fehlerkorrektur-Algorithmus auf jedes Datenwort an zum Generieren der korrespondierenden Syndrombits. Beispiele des Fehlerkorrektur-Algorithmus, welcher von dem Fehlercode-Generator 200 verwendet werden kann, weisen auf: BCH-Codes, Reed-Solomon-Codes und Hamming-Fehlerkorrektur-Codes. Der Fehlercode-Generator 200 wählt einen Fehlerkorrektur-Algorithmus basierend auf einem oder mehreren Faktoren aus, z.B. aufweisend Charakteristiken des Algorithmus (wie etwa zyklisch oder nicht-zyklisch), Größe des Codeworts, Anzahl von Syndrombits und Anzahl von Fehlern innerhalb eines Codeworts, welche detektiert und korrigiert werden können.
  • Der Fehlercode-Generator 200 kann ferner eine Fehlercode-Effizienz berücksichtigen, wenn dieser einen Fehlerkorrektur-Algorithmus zur Verwendung auswählt. Die Fehlercode-Effizienz ist definiert als das Verhältnis der Größe eines Datenworts zu der Größe von dessen korrespondierenden Codewort. Zum Beispiel kann die Fehlercode-Effizienz 191/255 sein, z.B. 0.749, für ein Codewort, welches unter Verwendung eines BCH-Algorithmus generiert wird, der insgesamt 255 Bits für das Codewort aufweist, 191 Bits für das Datenwort, und bis zu 8 Fehler, welche von dem Fehlercode korrigiert werden können. In einem anderen Beispiel ist die Fehlercode-Effizienz 247/255, z.B. 0.968, für ein Codewort, welches unter Verwendung eines BCH-Algorithmus generiert wird, der insgesamt 255 Bits für das Codewort, 247 Bits für das Datenwort und 1 Fehler aufweist, der von dem Fehlercode korrigiert wird.
  • Der Fehlercode-Generator 200 generiert auf ähnliche Weise Fehlercodes für die Metadaten, welche mit den Videodaten assoziiert sind. Zum Beispiel empfängt der Fehlercode-Generator 200 einen Abschnitt der Metadaten, welche mit den Videodaten assoziiert sind. Der Abschnitt der empfangenen Metadaten weist mehrere Datenwörter auf, von denen jedes mehrere Datenbits aufweist. Für jedes Datenwort generiert der Fehlercode-Generator 200 einen Fehlercode, welcher eine vorbestimmte Anzahl von Syndrombits aufweist. Jedes Datenwort der Metadaten und dessen korrespondierender Fehlercode werden zum Bilden eines Fehlerkorrektur-Codeworts kombiniert.
  • Zum Verbessern der Code-Effizienz organisiert der Fehlercode-Generator 200 die Codewörter (z.B. die Codewörter für die komprimierten Videodaten und die Codewörter für die Metadaten, welche mit den Videodaten assoziiert sind) gemäß einer orthogonalen Datenorganisation-Struktur. In einer Ausführungsform organisiert der Fehlercode-Generator 200 die Codewörter in einem oder mehreren orthogonalen Datenblöcken. Jeder orthogonale Datenblock weist eine Anzahl von Codewörtern auf, von denen jedes eine Anzahl von Datenbits und korrespondierenden Syndrombits aufweist. Die Bits, welche in einer einzelnen vertikalen Spalte sind, werden zu dem digitalen Leitungscodierer gesendet, z.B. werden die Bits aus der ganz linken Spalte, welche 0, 1, 2, 3, 4, 5, 6, 7 benannt werden, als erstes zu dem digitalen Leitungscodierer gesandt. Danach werden als zweites dieselben Bits 0 bis 7 aus der zweiten Spalte zu dem digitalen Leitungscodierer gesandt, usw.
  • Das Organisieren der Codewörter in orthogonalen Datenblöcken ermöglicht eine effiziente Korrektur von mehreren Bit-Fehlern. Für das System, welches in 1 gezeigt ist, sind Fehler in der Übertragung Fehler in den leitungscodierten Daten, welche den digitalen Leitungsdecodierer 118 erreichen. Ein einzelner Bit-Fehler in einem Leitungscode, wie etwa einem 8b/10b TMDS-Code, kann nach dem Decodieren des beschädigten Leitungscodes in Fehlern in einigen oder allen der 8 Bits des Datensymbols resultieren. Die orthogonale Datenblock-Struktur verteilt diese mehreren Fehler über mehrere Codewörter, wo diese als ein einzelner Fehler pro Codewort auftreten können. Mehrere Codewörter werden zum Korrigieren der mehreren Fehler bereitgestellt. Jedes Codewort korrigiert einen einzelnen Fehler, was in weniger Syndrombits resultiert als wenn das Codewort mehrere Bit-Fehler pro Codewort korrigiert. Dies resultiert in der Fähigkeit mehrere Bit-Fehler in einem einzelnen 8 Bit Datensymbol zu korrigieren, wobei das Datensymbol aus einem beschädigten Leitungscode decodiert wurde, mit dem Nutzen einer Einzelbit-Fehlerkorrektur-Effizienz. Details der Fehlerdetektion und -korrektur sind ferner nachfolgend mit Bezug auf 4A4D beschrieben.
  • Bezugnehmend auf 3, zeigt 3 ein Blockdiagram, welches einen beispielhaften orthogonalen Codeblock 304 veranschaulicht, welcher 8 Codewörter 304a304h aufweist, gemäß einer Ausführungsform. Andere Ausführungsformen können eine andere Anzahl von Codewörtern in einem orthogonalen Datenblock aufweisen. Jedes von den Codewörtern, 304a304h, weist insgesamt n Bits auf, welche zwischen Datenbits und Syndrombits aufgeteilt sind. Die Aufteilung der insgesamt n Bits unter den Datenbits und Syndrombits ist mittels des Fehlercode-Generators 200 konfigurierbar. Beispiele einer Bits-Aufteilung für ein Codewort von insgesamt 255 Bits weisen 191 Datenbits und 64 Syndrombits auf, welches bis zu 8 Fehlern innerhalb der insgesamt 255 Bits korrigieren kann. Ein anderes Beispiel ist 247 Datenbits und 8 Syndrombits, welches 1 Fehler innerhalb der insgesamt 255 Bits korrigieren kann. Der Fehlercode-Generator 200 sendet Bits der Codewörter von 1 vertikalen Spalte des orthogonalen Datenblocks 304 an derselben Bitposition (mit anderen Worten einer Spalte von Bits des orthogonalen Datenblocks 304), z.B. 8 vertikal ausgerichtete Bits der Codewörter 304a, 304b, 304c, 304d, 304e, 304f, 304g und 304h, an den digitalen Leitungscodierer 114 zum weiteren Prozessieren. Der Fehlercode-Generator 200 sendet die verbleibenden Bits des orthogonalen Datenblocks 304, 8 Bits zur selben Zeit, an den digitalen Leitungscodierer 114 zum weiteren Prozessieren.
  • Zurückverweisend zu 1 weist die Quelle-Vorrichtung 100 einen digitalen Leitungscodierer 114 zum Codieren der orthogonalen Datenblöcke von Codewörtern für die komprimierten Videodaten und deren assoziierte Metadaten auf. In einer Ausführungsform codiert der digitale Leitungscodierer 114 die Codewörter unter Verwendung einer 8b/10b Leitungscodierung gemäß dem TMDS-Standard. Andere Ausführungsformen des digitalen Leitungscodierers 114 können andere Leitungscodieren-Schemata verwenden, z.B. eine 16b/18b Leitungscodierung. Die 8b/10b Leitungscodierung bildet ein 8-Bit Datensymbol auf ein 10-Bit Symbol ab, was dazu beiträgt, ein DC-Gleichgewicht zu erreichen und ausreichende Zustandsänderungen bereitzustellen zum Ermöglichen akzeptabler Takt-Rückgewinnung auf einer Empfängerseite. Bei Anwendung auf das Beispiel, welches in 3 veranschaulicht ist, nimmt der digitale Leitungscodierer 114 eine Spalte der 8 Bits des orthogonalen Datenblocks 304 und codiert die 8 Bits in ein 10-Bit Datensymbol und überträgt die Bits des 10-Bit Datensymbols in Serie (mit anderen Worten seriell, d.h. der Reihe nach) zu der Senke-Vorrichtung 102. Der digitale Leitungscodierer 114 wiederholt den Codieren-Schritt auf alle verbleibenden Spalten des orthogonalen Datenblocks 304.
  • Der digitale Leitungscodierer 114 gibt die leitungscodierten Codewörter auf den Übertragungskanal 116 aus als ein serieller Bitstrom. In einer Ausführungsform werden die leitungscodierten Codewörter für die komprimierten Videodaten und die leitungscodierten Codewörter für die Metadaten, welche mit den komprimierten Videodaten assoziiert sind, während verschiedener Zeitintervalle ausgegeben. Zum Beispiel werden die leitungscodierten Codewörter für die komprimierten Videodaten während eines aktiven Intervalls ausgegeben und die leitungscodierten Codewörter für die Metadaten, welche mit den komprimierten Videodaten assoziiert sind, werden während Austastintervalle ausgegeben, wobei das aktive Intervall und das Austastintervall gemäß dem HDMI-Videoschnittstelle-Standard definiert sind. 2 zeigt ein Blockdiagram, welches ein Beispiel von leitungscodierten Codewörtern von Eingangsdaten während Übertragungsintervallen veranschaulicht, gemäß einer Ausführungsform.
  • Der digitale Leitungsdecodierer 118 der Senke-Vorrichtung 102 ist eingerichtet zum Empfangen und Decodieren der leitungscodierten Codewörter aus der Quelle-Vorrichtung 100. In einer Ausführungsform wendet der digitale Leitungsdecodierer 118 ein Leitungsdecodieren-Schema korrespondierend zu dem Leitungscodieren-Schema, welches von dem digitalen Leitungscodierer 114 verwendet wurde, an. Zum Beispiel konvertiert der digitale Leitungsdecodierer 118 ein 10-Bit Datensymbol in ein 8-Bit Datensymbol in Antwort auf die 8b/10b Leitungscodierung an der Quelle-Vorrichtung 110. Der Blockpuffer 120 ist ein Speicher oder ein anderes Speichermedium, welches zum Puffern der Codewörter eingerichtet ist, welche von dem digitalen Leitungsdecodierer 118 decodiert werden.
  • Das Videodekompression-Modul 124 ist eingerichtet zum Decodieren von Videodaten, welche von dem Fehlerkorrektur-Modul 122 empfangen werden. Der Decodieren-Prozess (mit anderen Worten Decodierungsprozess), welcher von dem Videodekompression-Modul 124 durchgeführt wird, ist eine Inversion jedes Durchgangs des Codieren-Prozesses, welcher von dem Videokompression-Modul 112 durchgeführt wird (ausgenommen des Quantifizierung-Durchgangs einer verlustbehafteten Komprimierung). Zum Beispiel führt das Videodekompression-Modul 124 einen Decodieren-Prozess gemäß dem DSC-Codierung-Standard durch in Antwort auf das Videokompression-Modul 112, welches das Videobild gemäß dem DSC-Codierung-Standard codiert.
  • Das Fehlerkorrektur-Modul 122 ist eingerichtet zum Empfangen von leitungsdecodierten Codewörtern aus dem Blockpuffer 120 und zum Detektieren und Korrigieren von Fehlern (z.B. von beschädigten Datenbits) in den Codewörtern. Die Übertragung der Videodaten über einen Videokanal in modernen digitalen Videoschnittstelle-Systemen unterliegt im Allgemeinen irgendeiner nicht-null Bit-Fehlerrate. Zum Beispiel kann ein einzelner Bit-Fehler in einem 10-Bit TMDS-Datensymbol, welcher über einen Übertragungskanal transportiert wird, z.B. dem Übertragungskanal 116, bis zu alle 8 Bits in den leitungsdecodierten Daten beschädigen. Mit den Codewörtern, welche in orthogonalen Datenblöcken organisiert sind, wird dem Fehlerkorrektur-Modul 122 ermöglicht, beschädigte Datenbits in den Codewörtern zu detektieren und mehrere beschädigte Datenbits, welche aus einem einzelnen TMDS-Übertragungsfehler resultieren, zu korrigieren.
  • In einer Ausführungsform detektiert das Fehlerkorrektur-Modul 122 einen oder mehrere Fehler in Codewörtern eines Datenblocks mittels Überprüfens der Werte der Syndrombits in jedem Codewort und unterscheidet zwischen den Werten der Syndrombits der Codewörter. In Antwort auf die Werte der Syndrombits von allen Codewörtern in dem Datenblock, welche ein vordefinierter Wert sind, was Fehlerfreiheit angibt, z.B. Null, ermittelt das Fehlerkorrektur-Modul 122, dass der Datenblock keine Fehler aufweist. In Antwort auf die Syndrombits von allen Codewörtern, welche nicht-null sind aber denselben Wert aufweisen, ermittelt das Fehlerkorrektur-Modul 122, dass der Datenblock 8 beschädigte Datenbits aufweist, welche aus einem einzelnen Übertragungsfehler resultieren. In Antwort auf die Syndrombits von mehreren Codewörtern (aber nicht allen Codewörtern), welche nicht-null sind, und den Syndrombits der verbleibenden Codewörter, welche den Wert von Null aufweisen, ermittelt das Fehlerkorrektur-Modul 122, dass der Datenblock eine Anzahl beschädigter Datenbits aufweist, welche aus einem einzelnen Übertragungsfehler resultieren, und die Anzahl der beschädigten Datenbits gleich ist zu der Anzahl der Codewörter, welche nicht-null Syndrombits aufweisen. In Antwort zu den Syndrombits von allen Codewörtern, welche nicht-null sind, und den nicht-null Werten der Syndrombits, welche verschieden sind, bestimmt das Fehlerkorrektur-Modul 122, dass es mehrere beschädigte Datenbits in dem Datenblock gibt, welche aus mehreren Übertragungsfehlern resultieren.
  • In Antwort auf beschädigte Datenbits, welche aus einem einzelnen Übertragungsfehler resultieren, korrigiert das Fehlerkorrektur-Modul 122 die beschädigten Datenbits in den Codewörtern. Irgendwelche Fehlerkorrektur-Schemata, welche denen bekannt sind, die in der Technik befähigt sind, können von dem Fehlerkorrektur-Modul 112 zum Korrigieren der beschädigten Datenbits verwendet werden. Zum Beispiel greift das Fehlerkorrektur-Modul 122 in Antwort auf Codewörter, welche beschädigte Datenbits in dem Datenblock aufweisen, welche aus einem einzelnen Übertragungsfehler resultieren, die Leitungsdecodierten Daten, welche in dem Blockpuffer 120 gespeichert sind, auf und korrigiert die beschädigten Bits mittels Ersetzens jedes beschädigten Bits mit seinem Inversen. In Antwort auf mehrere beschädigte Datenbits, welche aus mehreren Übertragungsfehlern resultieren, detektiert das Fehlerkorrektur-Modul 122 beschädigte Datenbits und berichtet die detektierten Fehler zum weiteren Prozessieren.
  • 4A4D veranschaulichen vier Beispiele von Bit-Fehlern, welche in übertragenen digitalen Daten von dem Fehlerkorrektur-Modul 122 detektiert sind, gemäß einer Ausführungsform. In den veranschaulichten Beispielen sind die übertragenen digitalen Daten leitungsdecodierte Symbole für die komprimierten Videodaten und deren assoziierte Metadaten; das Leitungsdecodieren-Schema, welches verwendet wird, ist die 10b/8b-Decodierung gemäß dem TMDS-Standard. Jedes Beispiel, welches in 4A bis 4D gezeigt ist, zeigt einen orthogonalen Datenblock von 8 Codewörtern.
  • 4A veranschaulicht ein Beispiel, in dem es keine beschädigten Datenbits in irgendeinem Codewort des empfangenen orthogonalen Datenblocks gibt. Das Fehlerkorrektur-Modul 122 überprüft die Werte der Syndrombits in jedem Codewort. In Antwort auf die Werte der Syndrombits von allen Codewörtern in dem Datenblock, welche ein vorbestimmter Wert sind, was Fehlerfreiheit angibt, z.B. Null, ermittelt das Fehlerkorrektur-Modul 122, dass der Datenblock keine Fehler aufweist. In dem Beispiel, welches in 4A veranschaulicht ist, sind die Syndrombits 404 von allen 8 Codewörtern alle Null, was der Wert ist, welcher eine fehlerfreie Datenübertragung repräsentiert. Basierend auf den Werten der Syndrombits von allen 8 Codewörtern ermittelt das Fehlerkorrektur-Modul 122t, dass der Datenblock keine beschädigten Datenbits aufweist.
  • 4B veranschaulicht ein zweites Beispiel, in dem es 8 beschädigte Datenbits in dem Datenblock gibt, welche aus einem einzelnen TMDS-Übertragungsfehler resultieren. Das Fehlerkorrektur-Modul 122 detektiert die beschädigten Datenbits mittels Überprüfens der Werte der Syndrombits in jedem Codewort und Vergleichens der Werte der Syndrombits. In dem Beispiel, welches in 4B veranschaulicht ist, sind die Syndrombits 404 von allen 8 Codewörtern alle nicht-null und weisen denselben Wert auf, z.B. den Wert "xyz". In Antwort auf die Syndrombits von allen Codewörtern, die nicht-null sind aber denselben Wert aufweisen, ermittelt das Fehlerkorrektur-Modul 122, dass der Datenblock 8 beschädigte Datenbits aufweist, welche aus einem einzelnen TMDS-Übertragungsfehler resultieren. Derselbe nicht-null Wert der Syndrombits in allen 8 Codewörtern gibt an, dass das beschädigte Datenbit in jedem Codewort bei derselben Bitposition in jedem Codewort angeordnet ist. Das Fehlerkorrektur-Modul 122 korrigiert die beschädigten Datenbits in allen 8 Codewörtern, z.B. mittels Umdrehens (mit anderen Worten Flippens) der beschädigten Datenbits in jedem Datenwort.
  • 4C veranschaulicht ein drittes Beispiel, in dem nicht alle der 8 Codewörter beschädigte Datenbits aufweisen. Das Fehlerkorrektur-Modul 122 detektiert die beschädigten Datenbits mittels Überprüfens der Werte der Syndrombits in jedem Codewort und Vergleichens der Werte der Syndrombits. Basierend auf der Überprüfung und dem Vergleich detektiert das Fehlerkorrektur-Modul 122 3 Codewörter, welche nicht-null Syndrombits aber denselben Wert aufweisen, und die Syndrombits der verbleibenden 5 Codewörter, welche Null-Syndrombits aufweisen, was Fehlerfreiheit angibt. Die 3 Codewörter, welche nicht-null Syndrombits aufweisen, werden bestimmt, um ein beschädigtes Bit in jedem Codewort zu haben, welches aus einem einzelnen TMDS-Übertragungsfehler resultiert. Das Fehlerkorrektur-Modul 122 korrigiert die beschädigten Datenbits in den identifizierten 3 Codewörtern.
  • 4D veranschaulicht ein viertes Beispiel, in dem der Datenblock mehrere beschädigte Datenbits aufweist, welche aus mehreren Übertragungsfehlern resultieren. In dem Beispiel, welches in 4D veranschaulicht ist, weisen alle 8 Codewörter zumindest ein beschädigtes Datenbit auf, was von den nicht-null Syndrombits von allen 8 Codewörtern angegeben wird (mit anderen Worten indiziert wird). In dem Beispiel, welches in 4D veranschaulicht wird, weisen zwei Codewörter mehrere beschädigte Datenbits in jedem Codewort auf, was von einem Wert der Syndrombits indiziert wird (z.B. dem Wert "abc") verschiedenen von den Syndrombits (z.B. dem Wert "xyz") der verbleibenden Codewörter. Zum Beispiel weist das Codewort 433 zwei beschädigte Datenbits auf, wobei dessen korrespondierende Syndrombits einen Wert von "abc" anstatt von "xyz" aufweisen. Basierend auf der Überprüfung (mit anderen Worten dem Überprüfen) und dem Vergleich (mit anderen Worten dem Vergleichen), detektiert das Fehlerkorrektur-Modul 122, dass der Datenblock 436 mehrere beschädigte Datenbits aufweist, welche aus mehreren TMDS-Übertragungsfehlern resultieren, und berichtet die Detektion zum weiteren Prozessieren.
  • 5 zeigt ein Ablaufdiagram, welche einen Prozess zum Generieren von Fehlercodes für Eingangsdaten in einer Videoschnittstelle-Umgebung veranschaulicht, gemäß einer Ausführungsform. Zuerst empfängt 502 die Quelle-Vorrichtung 100 Eingangsdaten, welche unkomprimierte Videodaten und deren assoziierte Metadaten aufweisen. Ein Videokompression-Modul der Senke-Vorrichtung 100 komprimiert die Videodaten gemäß einem Videokompression Standard, z.B. VESA/DSC und stellt die komprimierten Videodaten einem Fehlercode-Generator der Quelle-Vorrichtung 110 zum Generieren von Syndrombits bereit. Die mit den Videodaten assoziierten Metadaten werden ebenso dem Fehlercode-Generator bereitgestellt zur Syndrombits-Generierung (mit anderen Worten zum Generieren von Syndrombits).
  • Der Fehlercode-Generator generiert Fehlercodes, welche eine Anzahl von Syndrombits aufweisen, für die komprimierten Videodaten und deren Metadaten jeweils einen Zeitabschnitt. In einer Ausführungsform weist ein Abschnitt der komprimierten Videodaten/Metadaten mehrere Datenwörter auf, von denen jedes eine vorbestimmte Anzahl von Datenbits aufweist. Für jedes Datenwort generiert 506 der Fehlercode-Generator einen Fehlercode, welcher mehrere Syndrombits aufweist, und kombiniert das Datenwort mit dessen korrespondierenden Fehlercodes zu einem Codewort. Die Größe des Codeworts ist konfigurierbar, z.B. auf 255 Bits insgesamt. Mehrere Codewörter werden in einem orthogonalen Datenblock organisiert, was dazu beiträgt, Übertragungsfehler in den Codewörtern zu isolieren.
  • Vor der Übertragung der orthogonalen Datenblöcke zu der Senke-Vorrichtung 102 leitungscodiert 510 ein digitaler Leitungscodierer der Quelle-Vorrichtung 100 die Codewörter, z.B. unter Verwendung einer 8b/10b Leitungscodierung des TMDS-Standards. Andere Leitungscodierung-Schemata, wie etwa 16b/18b, können von dem digitalen Leitungscodierer der Quelle-Vorrichtung 100 verwendet werden. Die Quelle-Vorrichtung 100 überträgt 512 die leitungscodierten Codewörter über einen Übertragungskanal, z.B. einer HDMI-Serial-Verbindung, zu der Senke-Vorrichtung 102.
  • 6 zeigt ein Ablaufdiagram, welches einen Prozess zum Detektieren und/oder Korrigieren beschädigter Datenbits in empfangenen digitalen Daten in einer Videoschnittstelle-Umgebung veranschaulicht, gemäß einer Ausführungsform. Zuerst empfängt 602 die Senke-Vorrichtung 102 digitale Daten, z.B. eine Serie (und/oder Abfolge) von Codewörtern für Videodaten und deren assoziierte Metadaten, von der Senke-Vorrichtung 100. Ein digitaler Leitungsdecodierer der Senke-Vorrichtung 102 leitungsdecodiert 604 die empfangenen Daten gemäß einem digitalen Leitungsdecodieren-Schema, welches zu dem Leitungscodieren-Schema, welches von dem digitalen Leitungscodierer der Quelle-Vorrichtung 100 verwendet wird, korrespondiert. Die Senke-Vorrichtung 102 speichert 606 die leitungsdecodierten Daten auf einem Computer-Speichermedium, z.B. einem Blockpuffer 120. In einer Ausführungsform sind oder werden die leitungsdecodierten Daten in mehreren Datenblöcke gemäß einer Datenstruktur, z.B. einer orthogonal-Organisierung-Datenstruktur, organisiert. Jeder Datenblock weist mehrere Codewörter auf, z.B. 8 Codewörter.
  • Ein Fehlerkorrektur-Modul der Senke-Vorrichtung 102 analysiert 608 die Codewörter und detektiert 610 die beschädigten Datenbits in den Codewörtern von jedem Datenblock. In einer Ausführungsform detektiert das Fehlerkorrektur-Modul beschädigte Datenbits in den Codewörtern eines Datenblocks mittels Überprüfens der Syndrombits aller Codewörter des Datenblocks, Vergleichens der Syndrombits mit einem vorbestimmten Wert, welcher Fehlerfreiheit repräsentiert, und Vergleichens der Werte der Syndrombits der Codewörter untereinander. Basierend auf dem Überprüfen und Vergleichen detektiert das Fehlerkorrektur-Modul die beschädigten Bits in dem Datenblock, wie in 4A und 4D veranschaulicht.
  • In Antwort auf die beschädigten Datenbits eines Datenblocks, welche aus einem einzelnen Übertragungsfehler resultieren, z.B. einem Fehler in einem 10-Bit TMDS-Datensymbol, korrigiert 612 das Fehlerkorrektur-Modul die beschädigten Datenbits, z.B. mittels Umdrehens dieser Bits, welche als fehlerhaft ermittelt wurden. In Antwort auf die beschädigten Datenbits eines Datenblocks, welche aus mehreren Übertragungsfehlern resultieren, berichtet 614 das Fehlerkorrektur-Modul die Detektion von beschädigten Datenbits in dem Datenblock zum weiteren Prozessieren.
  • Die vorstehende Beschreibung der Ausführungsformen wurde zum Zweck der Veranschaulichung präsentiert; diese ist nicht angedacht, vollständig zu sein oder die Ausführungsformen auf die spezifischen offengelegten Formen zu beschränken. Personen, welche in der relevanten Technik befähigt sind, können wahrnehmen, dass viele Modifikationen und Variationen im Lichte der vorstehenden Offenlegung möglich sind.
  • Einige Abschnitte dieser Beschreibung beschreiben die Ausführungsformen hinsichtlich Algorithmen und symbolischen Repräsentationen von Behandlungen der Informationen. Diese algorithmischen Beschreibungen und Repräsentationen werden allgemein von denen, die in der Datenverarbeitungstechnik befähigt sind, zum effektiven Übertragen der Substanz ihrer Arbeit zu anderen, in der Technik befähigten, verwendet. Diese Behandlungen, obwohl funktionell, rechnerbetont oder logisch beschrieben, können verstanden werden als mittels Computerprogramen oder äquivalenten elektrischen Schaltkreisen, Mikrocode oder Ähnlichem implementiert zu werden. Darüber hinaus hat es sich gelegentlich als günstig erwiesen, sich auf diese Anordnung von Behandlungen als Module, ohne Verlust der Allgemeinheit, zu beziehen. Die beschrieben Behandlungen und deren assoziierte Module können verkörpert werden in Software, Firmware, Hardware oder irgendeiner Kombination davon.
  • Irgendwelche von den Schritten, Behandlungen oder Prozessen, welche hierin beschrieben sind, können mit einem oder mehreren Hardware- oder Softwaremodulen durchgeführt oder implementiert werden, allein oder in Kombination mit anderen Vorrichtungen. In einer Ausführungsform ist ein Softwaremodul mit einem Computerprogram-Produkt implementiert, welches ein computer-lesbares Medium, welches Computerprogram-Code aufweist, welcher von einem Computerprozessor zum Durchführen irgendeines oder aller der beschrieben Schritte, Behandlungen, oder Prozesse ausgeführt werden kann, aufweist.
  • Ausführungsformen können auch eine Vorrichtung zum Durchführen der hierin beschriebenen Behandlungen betreffen. Diese Vorrichtung kann speziell konstruiert sein für den benötigten Zweck und/oder diese kann eine Allzweck-rechnende Vorrichtung aufweisen, welche selektiv mittels eines Computerprograms aktiviert oder rekonfiguriert ist, welches in dem Computer gespeichert ist. Ein solches Computerprogram kann gespeichert werden in einem nicht-flüchtigen, greifbaren computerlesbaren Speichermedium oder irgendeinem Typ von Medium, welcher geeignet zu Speichern elektronischer Instruktionen, und welcher mit einem Computersystem-Bus gekoppelt werden kann. Darüber hinaus kann irgendein Computersystem, auf welches in der Beschreibung Bezug genommen wird, einen einzelnen Prozessor aufweisen oder kann eine Architektur zum Einsatz einer Mehrfach-Prozessor-Konstruktion aufweisen, um die Rechenkapazität zu vergrößern.
  • Ausführungsformen können auch ein Produkt betreffen, welches mittels eines hierin beschriebenen Rechenprozesses produziert wird. Ein solches Produkt kann Informationen aufweisen, welche aus einem Rechenprozess resultieren, wobei die Informationen auf einem nicht-flüchtigen, greifbaren, computerlesbaren Speichermedium gespeichert sein können, und irgendeine Ausführungsform eines Computerprogram-Produkts oder einer anderen hierin beschrieben Datenkombinationen aufweisen können.
  • Schließlicht wurde die Sprache, welche in der Beschreibung verwendet wurde, hauptsächlich zur Lesbarkeit und zum Lehrzweck ausgewählt, und diese kann nicht zum Umreißen oder Umschreiben des erfinderischen Gegenstands ausgewählt sein. Es ist daher angedacht, dass der Umfang der Ausführungsformen nicht von dieser detaillierten Beschreibung begrenzt ist, sondern vielmehr von den Ansprüchen, welche der hierauf basierenden Anmeldung beiliegen. Dementsprechend ist die Offenlegung der Ausführungsformen angedacht, veranschaulichend aber nicht beschränkend zu sein.

Claims (20)

  1. Ein Verfahren zum Generieren von Fehlercodes für digitale Daten, das Verfahren aufweisend: • Empfangen der digitalen Daten, wobei die digitalen Daten unkomprimierte Videodaten und mit den unkomprimierten digitalen Videodaten assoziierte Metadaten aufweisen; • Codieren der unkomprimierten Videodaten zum Generieren komprimierter Videodaten, wobei die komprimierten Videodaten eine Mehrzahl von Datenwörtern aufweisen; • Generieren eines Fehlercodes für jedes von der Mehrzahl von Datenwörtern der komprimierten Videodaten und für jedes von einer Mehrzahl von Datenwörtern der Metadaten; • für jedes Datenwort, Kombinieren des Datenworts und seines korrespondierenden Fehlercodes zum Bilden eines Codeworts; und • Organisieren einer Mehrzahl Codewörter in einem oder mehreren Datenblöcken gemäß einer Datenstruktur.
  2. Das Verfahren gemäß Anspruch 1, wobei ein Codewort einen Datenabschnitt und einen Fehlerkorrektur-Abschnitt aufweist, der Datenabschnitt des Codeworts eine Mehrzahl von Datenbits, welche digitalen Inhalt des Codeworts repräsentieren, aufweist und der Fehlerkorrektur-Abschnitt eine Mehrzahl von Syndrombits zum Detektieren von Fehlern in dem Datenabschnitt aufweist.
  3. Das Verfahren gemäß Anspruch 1, wobei das Generieren eines Fehlercodes für ein Datenwort der digitalen Daten aufweist: • Anwenden eines Fehlerkorrektur-Schemas auf das Datenwort; und • Generieren eines Fehlercodes für das Datenwort basierend auf dem Anwenden des Fehlerkorrektur-Schemas.
  4. Das Verfahren gemäß Anspruch 1, wobei das Organisieren der Mehrzahl Codewörter in einem oder mehreren Datenblöcken gemäß einer Datenstruktur aufweist: • Auswählen einer Anzahl von Codewörtern zum Bilden eines Datenblocks, wobei der Datenblock eine Breite und Höhe aufweist, wobei die Breite des Datenblocks gleich ist zu der Größe des Codeworts und die Höhe des Datenblocks gleich ist zu der Anzahl von Datenbits, welche in jedem Leitungscode-Symbol codiert sind; und • Auswählen korrespondierender Bits aus dem ausgewählten Codewort bei einer gleichen Bitposition des Datenblocks zum digitalen Leitungscodieren.
  5. Das Verfahren gemäß Anspruch 4, wobei die Anzahl von Codewörtern eines Datenblocks gleich ist zu der Anzahl von Datenbits, welche codiert sind in jedem Leitungscode-Symbol, und die Anzahl von Bit-Fehlern, welche aus einem einzelnen Übertragungsfehler resultieren, und welche in dem Datenblock korrigiert werden, gleich ist zu der Anzahl von Datenbits, welche codiert sind in jedem Leitungscode-Symbol.
  6. Das Verfahren gemäß Anspruch 1, ferner aufweisend: • digitales Leitungscodieren der Datenblöcke; und • Übertragen der leitungscodierten Datenblöcke in Serie zu einer Senke-Vorrichtung.
  7. Das Verfahren gemäß Anspruch 6, wobei das Leitungscodieren eines Datenblocks eines der Folgenden aufweist: • Codieren von acht Datenbits des Datenblocks in eine zehn-Bit Repräsentation; und • Codieren von sechzehn Datenbits des Datenblocks in eine achtzehn-Bit Repräsentation.
  8. Ein Verfahren zum Detektieren von Fehlern in übertragenen digitalen Daten, das Verfahren aufweisend: • Empfangen der digitalen Daten, wobei die digitalen Daten Codewörter, welche Videodaten repräsentieren, und Codewörter, welche mit den Videodaten assoziierte Metadaten repräsentieren, aufweisen; • Leitungsdecodieren der Codewörter der digitalen Daten und Organisieren der Codewörter in eine Mehrzahl von Datenblöcken basierend auf eine Datenstruktur, wobei jeder Datenblock eine Mehrzahl Codewörter aufweist; • Analysieren der Codewörter in jedem Datenblock; und • Detektieren eines oder mehrerer beschädigter Datenbits in jedem Datenblock.
  9. Das Verfahren gemäß Anspruch 8, wobei das Detektieren eines Bit-Fehlers in einem Codewort der digitalen Daten aufweist: • Analysieren des Fehlerkorrektur-Abschnitts des Codeworts; • Vergleichen des Fehlerkorrektur-Codes mit einem vorbestimmten Schwellenwert-Code; • Vergleichen des Fehlerkorrektur-Abschnitts des Codeworts mit korrespondierenden Fehlerkorrektur-Abschnitten von der verbleibenden Codewörter in demselben Datenblock; und • Detektieren des Bit-Fehlers basierend auf dem Vergleichen.
  10. Das Verfahren gemäß Anspruch 8, ferner aufweisend: • Korrigieren der beschädigten Datenbits in Antwort auf die beschädigten Datenbits in einem Datenblock, welche aus einem einzelnen Übertragungsfehler resultieren; und • Berichten der Detektion der beschädigten Datenbits in Antwort auf die beschädigten Datenbits in einem Datenblock, welche aus mehreren einzelnen Übertragungsfehler resultieren.
  11. Ein nicht-flüchtiges computerlesbares Speichermedium, welches Computerprogram-Instruktionen zum Generieren von Fehlercodes für digitale Daten speichert, wobei die Computerprogram-Instruktionen Instruktionen aufweisen, welche, wenn von einem Computerprozessor ausgeführt, den Computerprozessor bringen zum: • Empfangen der digitalen Daten, wobei die digitalen Daten unkomprimierte Videodaten und mit den unkomprimierten digitalen Videodaten assoziierte Metadaten aufweisen; • Codieren der unkomprimierten Videodaten zum Generieren komprimierter Videodaten, wobei die komprimierten Videodaten eine Mehrzahl von Datenwörtern aufweisen; • Generieren eines Fehlercodes für jedes von der Mehrzahl von Datenwörtern der komprimierten Videodaten und für jedes von einer Mehrzahl von Datenwörtern der Metadaten; • für jedes Datenwort, Kombinieren des Datenworts und seines korrespondierenden Fehlercodes zum Bilden eines Codeworts; und • Organisieren einer Mehrzahl von Codewörtern in einem oder mehreren Datenblöcken gemäß einer Datenstruktur.
  12. Das computerlesbare Speichermedium gemäß Anspruch 11, wobei ein Codewort einen Datenabschnitt und einen Fehlerkorrektur-Abschnitt aufweist, der Datenabschnitt des Codeworts eine Mehrzahl von Datenbits, welche digitalen Inhalt des Codeworts repräsentieren, aufweist und der Fehlerkorrektur-Abschnitt eine Mehrzahl von Syndrombits zum Detektieren von Fehlern in dem Datenabschnitt aufweist.
  13. Das computerlesbare Speichermedium gemäß Anspruch 11, wobei die Computerprogram-Instruktionen, zum Generieren eines Fehlercodes für ein Datenwort der digitalen Daten, Instruktionen aufweisen, welche, wenn von dem Computerprozessor ausgeführt, den Computerprozessor bringen zum: • Anwenden eines Fehlerkorrektur-Schemas auf das Datenwort; und • Generieren eines Fehlercodes für das Datenwort basierend auf dem Anwenden des Fehlerkorrektur-Schemas.
  14. Das computerlesbare Speichermedium gemäß Anspruch 11, wobei die Computerprogram-Instruktionen, zum Organisieren der Mehrzahl Codewörter in einem oder mehreren Datenblöcken gemäß einer Datenstruktur, Instruktionen aufweisen, welche, wenn von dem Computerprozessor ausgeführt, den Computerprozessor bringen zum: • Auswählen einer Anzahl von Codewörtern zum Bilden eines Datenblocks, wobei der Datenblock eine Breite und Höhe aufweist, wobei die Breite des Datenblocks gleich ist zu der Größe des Codeworts und die Höhe des Datenblocks gleich ist zu der Anzahl von Datenbits, welche in jedem Leitungscode-Symbol codiert sind; und • Auswählen korrespondierender Bits aus dem ausgewählten Codewort bei einer gleichen Bitposition des Datenblocks zum digitalen Leitungscodieren.
  15. Das computerlesbare Speichermedium gemäß Anspruch 11, wobei die Anzahl von Codewörtern eines Datenblocks die Anzahl von Datenbits ist, welche in jedem Leitungscode-Symbol codiert sind, und die Anzahl von Bit-Fehlern, welche aus einem einzelnen Übertragungsfehler resultieren, und welche in dem Datenblock korrigiert werden, die Anzahl von Datenbits ist, welche in jedem Leitungscode-Symbol codiert sind.
  16. Das computerlesbare Speichermedium gemäß Anspruch 11, ferner Computerprogram-Instruktionen aufweisend, welche, wenn von dem Computerprozessor ausgeführt, den Computerprozessor bringen zum: • digitalen Leitungscodieren der Datenblöcke; und • Übertragen der leitungscodierten Datenblöcke in Serie zu einer Senke-Vorrichtung.
  17. Das computerlesbare Speichermedium gemäß Anspruch 16, wobei die Computerprogram-Instruktionen, zum Leitungscodieren eines Datenblocks, Instruktionen aufweisen, welche, wenn von dem Computerprozessor ausgeführt, den Computerprozessor bringen zum Codieren eines der Folgenden: • Codieren von acht Datenbits des Datenblocks in eine zehn-Bit Repräsentation; und • Codieren von sechzehn Datenbits des Datenblocks in eine achtzehn-Bit Repräsentation.
  18. Ein nicht-flüchtiges computerlesbares Speichermedium, welches Computerprogram-Instruktionen zum Detektieren von Fehlern in übertragenen digitalen Daten speichert, wobei die Computerprogram-Instruktionen Instruktionen aufweisen, welche, wenn von einem Computerprozessor ausgeführt, den Computerprozessor bringen zum: • Empfangen der digitalen Daten, wobei die digitalen Daten Codewörter, welche Videodaten repräsentieren, und Codewörter, welche mit den Videodaten assoziierte Metadaten repräsentieren, aufweisen; • Leitungsdecodieren der Codewörter der digitalen Daten und Organisieren der Codewörter in eine Mehrzahl von Datenblöcken basierend auf eine Datenstruktur, wobei jeder Datenblock eine Mehrzahl Codewörter aufweist; • Analysieren der Codewörter in jedem Datenblock; und • Detektieren eines oder mehrerer beschädigter Datenbits in jedem Datenblock.
  19. Das computerlesbare Speichermedium gemäß Anspruch 18, wobei die Computerprogram-Instruktionen, zum Detektieren eines Bit-Fehlers in einem Codewort der digitalen Daten, Instruktionen aufweisen, welche, wenn von dem Computerprozessor ausgeführt, den Computerprozessor bringen zum: • Analysieren des Fehlerkorrektur-Abschnitts des Codeworts; • Vergleichen des Fehlerkorrektur-Codes mit einem vorbestimmten Schwellenwert-Code; • Vergleichen des Fehlerkorrektur-Abschnitts des Codeworts mit korrespondierenden Fehlerkorrektur-Abschnitten von der verbleibenden Codewörter in demselben Datenblock; und • Detektieren des Bit-Fehlers basierend auf dem Vergleichen.
  20. Das computerlesbare Speichermedium gemäß Anspruch 18, ferner Computerprogram-Instruktionen aufweisend, welche, wenn von dem Computerprozessor ausgeführt, den Computerprozessor bringen zum: • Korrigieren der beschädigten Datenbits in Antwort auf die beschädigten Datenbits in einem Datenblock, welche aus einem einzelnen Übertragungsfehler resultieren; und • Berichten der Detektion der beschädigten Datenbits in Antwort auf die beschädigten Datenbits in einem Datenblock, welche aus mehreren einzelnen Übertragungsfehler resultieren.
DE112015001607.4T 2014-04-01 2015-03-30 Orthogonale Datenorganisation für Fehlerdetektion und -korrektur in seriellen Videoschnittstellen Withdrawn DE112015001607T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201461973837P 2014-04-01 2014-04-01
US61/973,837 2014-04-01
PCT/US2015/023373 WO2015153478A1 (en) 2014-04-01 2015-03-30 Orthogonal data organization for error detection and correction in serial video interfaces

Publications (1)

Publication Number Publication Date
DE112015001607T5 true DE112015001607T5 (de) 2017-01-05

Family

ID=54192254

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112015001607.4T Withdrawn DE112015001607T5 (de) 2014-04-01 2015-03-30 Orthogonale Datenorganisation für Fehlerdetektion und -korrektur in seriellen Videoschnittstellen

Country Status (6)

Country Link
US (1) US20150281743A1 (de)
KR (1) KR20160141771A (de)
CN (1) CN106105219A (de)
DE (1) DE112015001607T5 (de)
TW (1) TW201543885A (de)
WO (1) WO2015153478A1 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9508282B2 (en) * 2014-12-10 2016-11-29 Ati Technologies Ulc Virtualized display output ports configuration
US10367530B2 (en) 2016-01-14 2019-07-30 Qualcomm Incorporated Unified code block segmentation providing a cyclic redundancy check for low density parity check code codewords
EP3443675A4 (de) * 2016-04-04 2019-11-20 Lattice Semiconductor Corporation Vorwärtsfehlerkorrektur und asymmetrische codierung einer videodatenübertragung über eine multimediaverbindung
US11082062B2 (en) * 2019-09-17 2021-08-03 SK Hynix Inc. Hardware implementations of a quasi-cyclic syndrome decoder
WO2023108600A1 (en) * 2021-12-17 2023-06-22 Intel Corporation System, method and apparatus for reducing power consumption of error correction coding using compacted data blocks

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9421552D0 (en) * 1994-10-26 1994-12-14 Philips Electronics Uk Ltd Improvements in or relating to data communication
US5768533A (en) * 1995-09-01 1998-06-16 National Semiconductor Corporation Video coding using segmented frames and retransmission to overcome channel errors
FR2823035B1 (fr) * 2001-04-03 2003-07-11 St Microelectronics Sa Code de detection et/ou de correction d'erreurs a haute efficacite
US6820140B2 (en) * 2002-07-24 2004-11-16 Intel Corporation Method, system, and program for returning data to read requests received over a bus
CN100539671C (zh) * 2003-06-11 2009-09-09 松下电器产业株式会社 记录装置、信息记录媒体和记录方法
US6747580B1 (en) * 2003-06-12 2004-06-08 Silicon Image, Inc. Method and apparatus for encoding or decoding data in accordance with an NB/(N+1)B block code, and method for determining such a block code
US7596743B2 (en) * 2005-09-28 2009-09-29 Ati Technologies Inc. Method and apparatus for error management
US7467344B2 (en) * 2005-12-23 2008-12-16 Avnera Corporation Devices and system for exchange of digital high-fidelity audio and voice through a wireless link
US20070268905A1 (en) * 2006-05-18 2007-11-22 Sigmatel, Inc. Non-volatile memory error correction system and method
JP4648255B2 (ja) * 2006-06-26 2011-03-09 アラクサラネットワークス株式会社 情報処理装置および情報処理方法
US20090032784A1 (en) * 2007-08-02 2009-02-05 Bielat Donald E Winch strap and method
JP5007676B2 (ja) * 2008-01-31 2012-08-22 富士通株式会社 符号化装置、復号化装置、符号化・復号化装置及び記録再生装置
US8230305B2 (en) * 2009-04-02 2012-07-24 Micron Technology, Inc. Extended single-bit error correction and multiple-bit error detection
US8341501B2 (en) * 2009-04-30 2012-12-25 International Business Machines Corporation Adaptive endurance coding of non-volatile memories
WO2012117263A1 (en) * 2011-03-02 2012-09-07 Sandisk Il Ltd. Method of data storage in non-volatile memory
JP5764392B2 (ja) * 2011-06-13 2015-08-19 株式会社メガチップス メモリコントローラ
US10474584B2 (en) * 2012-04-30 2019-11-12 Hewlett Packard Enterprise Development Lp Storing cache metadata separately from integrated circuit containing cache controller

Also Published As

Publication number Publication date
CN106105219A (zh) 2016-11-09
US20150281743A1 (en) 2015-10-01
KR20160141771A (ko) 2016-12-09
WO2015153478A1 (en) 2015-10-08
TW201543885A (zh) 2015-11-16

Similar Documents

Publication Publication Date Title
DE112015001607T5 (de) Orthogonale Datenorganisation für Fehlerdetektion und -korrektur in seriellen Videoschnittstellen
US10218976B2 (en) Quantization matrices for compression of video
DE69817137T2 (de) Bildverarbeitung für elektronisches Wasserzeichensetzen
CN103501441B (zh) 一种基于人类视觉系统的多描述视频编码方法
US20190222864A1 (en) Fast encoding loss metric
DE102008051562A1 (de) Bittiefenerweiterung für skalierbare Videokodierung
CN110460851B (zh) 分段图像数据的无损压缩系统、方法及存储介质
DE112016003638B4 (de) Auf eine Decodierung folgende Fehlerprüfung mit Diagnose für Produktcodes
DE202016008155U1 (de) Hybrid-Prädiktionsmodi zur Kodierung von Videos
DE102018122297A1 (de) Verfahren zur Kompression und Dekompression von Bilddaten
DE102016012160B4 (de) Restentropiekompression für cloudbasierte Videoanwendungen bzw. Apps
DE102012110806A1 (de) Verfahren und Vorrichtung zum Senden eines Signals in einem digitalen Rundfunksystem
WO2021057676A1 (zh) 视频编解码方法、装置、电子设备及可读存储介质
DE102015103827B4 (de) Fehlerverfolgung und Fehlerabschwächung für Videokompression auf Bewegungskompensationsbasis
Luo et al. Color image restoration via extended joint sparse model
EP2122569B1 (de) Verfahren zur kennzeichnung eines digitalen bildes mit einem digitalen wasserzeichen
DE102011115100B3 (de) Verfahren zum Wiederherstellen von verloren gegangenen und/oder beschädigten Daten
WO2017025182A1 (de) Verfahren, vorrichtung und computerprogrammprodukt zum komprimieren eines eingangsdatensatzes
DE112016002451T5 (de) Datenverarbeitungsvorrichtung und Datenverarbeitungsverfahren
CN110753241B (zh) 基于多描述网络的图像编码、解码方法及系统
DE102012218854B4 (de) Verfahren und Vorrichtung zur Kompression von Bilddaten
US20240015313A1 (en) Video compression based on spatial-temporal features
DE102011102503B3 (de) Verfahren zum Berichtigen beschädigter Daten
KR20170119189A (ko) 영상의 이미지 분할 인코딩 및 디코딩 시스템
Hasan Combination of lossy and lossless for image compression

Legal Events

Date Code Title Description
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04N0007640000

Ipc: H04N0019890000

R005 Application deemed withdrawn due to failure to request examination