DE69612515T2 - Digitale Kodierungsvorrichtung - Google Patents
Digitale KodierungsvorrichtungInfo
- Publication number
- DE69612515T2 DE69612515T2 DE69612515T DE69612515T DE69612515T2 DE 69612515 T2 DE69612515 T2 DE 69612515T2 DE 69612515 T DE69612515 T DE 69612515T DE 69612515 T DE69612515 T DE 69612515T DE 69612515 T2 DE69612515 T2 DE 69612515T2
- Authority
- DE
- Germany
- Prior art keywords
- data
- code
- circuit
- length
- constant 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 - Lifetime
Links
- 230000009466 transformation Effects 0.000 claims description 8
- 238000013139 quantization Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 10
- 238000000034 method Methods 0.000 description 8
- 239000011159 matrix material Substances 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000005549 size reduction Methods 0.000 description 1
- 230000002195 synergetic effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/46—Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods 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/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
- Die vorliegende Erfindung betrifft eine digitale Codiervorrichtung zur Verwendung bei der Kompression von Bilddaten oder ähnlichem.
- Im Folgenden wird eine Beschreibung für ein typisches Verfahren zur Komprimierung von Bilddaten mittels einer digitalen Codiervorrichtung gegeben.
- Zunächst werden Bilddaten in kleine Blöcke von etwa 8 · 8 Pixeln unterteilt, die anschließend einer zweidimensionalen diskreten Kosinustransform unterworfen werden, die von einem diskreten Kosinustransformationsschaltkreis durchgeführt wird. Die diskrete Kosinustransformation ist eine Art einer orthogonalen Transformation, bei der Koordinaten der Bilddaten von Raumkoordinaten zu Frequenzkoordinaten transformiert werden können.
- Da im Allgemeinen nur leichte Variationen in der Farbe oder Helligkeit benachbarter Pixel in einem natürlichen Bild existieren, ist ihre Raumfrequenz niedrig, die durch die Anzahl der Schwankungen pro Einheitsabstand dargestellt wird. Dementsprechend haben einzelne Elemente einer Übertragungskoeffizientenmatrix, die über die zweidimensionale diskrete Kosinustransformation erhalten wurde, hohe Werte, wenn sie niederfrequente Komponenten darstellen. Im Gegensatz dazu haben sie im wesentlichen den Wert Null, wenn die einzelnen Elemente der Übertragungskoeffizientenmatrix hochfrequente Komponenten darstellen. Durch Ausnutzung des obigen Merkmals und gemeinsame Codierung kann eine Kompression der Bilddaten durchgeführt werden.
- Als nächstes werden von der Übertragungskoeffizientenmatrix einzelne Elemente sequentiell als DCT-Koeffizient in der Reihenfolge ausgelesen, bei der das Element, das die niedrigste Frequenzkomponente darstellt, zuerst ausgelesen wird. Fig. 11 zeigt die Reihenfolge, in der die Komponenten des DCT-Koeffizienten von der Übertragungskoeffizientenmatrix ausgelesen werden. In der Übertragungskoeffizientenmatrix stellt das am weitesten oben und am weitesten links in der Matrix angeordnete Element die niedrigste Frequenzkomponente dar, während das am weitesten unten und am weitesten rechts angeordnete Element die höchste Frequenzkomponente darstellt. Die Elemente, die diagonal dazwischen angeordnet sind, stellen zunehmend höherfrequente Komponenten dar, so wie sie näher an das am weitesten unten und am weitesten rechts angeordnete Element kommen. Das am weiteste oben und am weitesten links angeordnete Element wird als DC-Koeffizient ausgelesen, gefolgt von einer Zickzack-Abtastung, bei der aufeinanderfolgend die anderen Elemente als AC-Koeffizienten ausgelesen werden. Fig. 11 zeigt den Fall, bei dem Bilddaten mit 8 · 8 Pixeln zugeführt werden. In der Zeichnung werden der DCT- Koeffizient, der aus einem DC-Koeffizienten und 63 AC-Koeffizienten besteht, ausgegeben.
- Der obige DCT-Koeffizient wird von einem Quantisierungsschaltkreis quantisiert, was zu einem quantisierten DCT-Koeffizienten führt.
- Anschließend codiert ein Variable-Längen-Codierungsschaltkreis (im folgenden als VLC-Schaltkreis bezeichnet), die DC-Koeffizienten zu einem DC-Code, während die AC-Koeffizienten zu AC-Codes codiert werden. Bei dem Vorgang wird eine variable- Längen-Huffman-Codierung verwendet.
- Schließlich erzeugt ein Erzeugungsschaltkreis für Daten fester Länge Daten fester Länge aus dem DC-Code und den AC-Codes und gibt sie aus.
- Fig. 7 zeigt ein Blockdiagramm, das den jeweiligen internen Aufbau des VLC- Schaltkreises und des Erzeugungsschaltkreises für Daten fester Länge in einer herkömmlichen digitalen Codiervorrichtung zeigt. In der Zeichnung werden gezeigt: ein VLC-Schaltkreis 10; ein Beurteilungsschaltkreis 11; ein AC-Codierschaltkreis 12; ein DC-Codierschaltkreis 13; ein Erzeugungsschaltkreis 20 für Daten fester Länge; ein Auffüllschaltkreis 21 für Daten fester Länge; ein erster Datenschreibschaltkreis 25; ein erster Speicher (RAM 1) 26; ein Datenhalteschaltkreis 27; ein zweiter Speicher (RAM 2) 28 und ein zweiter Datenschreibschaltkreis 29.
- Eine Beschreibung für den Betrieb des in Fig. 7 gezeigten Schaltkreises wird im folgenden gegeben. Es wird dabei angenommen, dass der DCT-Koeffzient wie in Fig. 11 gezeigt, zugeführt wird.
- Der Beurteilungsschaltkreis 11 beurteilt, ob jede der Komponenten des eingegebenen DCT-Koeffizienten der DC-Koeffizient oder der AC-Koeffizient ist, und gibt die AC-Koeffizienten an den AC-Codierungsschaltkreis 12 aus, während der DC- Koeffizient an den DC-Codierschaltkreis 13 ausgegeben wird.
- Der AC-Codierschaltkreis 12 detektiert eine Folge von Null-Wert-AC-Koeffizienten und ersetzt sie durch einen Code, der die Anzahl aufeinanderfolgender Nullen repräsentiert. Anschließend transformiert der AC-Codierschaltkreis 12 die AC- Koeffizienten zu Huffman-Codes mit variabler Länge und gibt sie als AC-Codes aus.
- Der DC-Codierschaltkreis 13 transformiert den DC-Koeffizienten in einen DC-Code und gibt ihn aus. In dem Fall jedoch, in dem der DC-Koeffizient so wie er ist als DC- Code, ohne transformiert zu werden, verwendet wird, wird der DC-Codierschaltkreis 13 unnötig.
- Der Auffüllschaltkreis 21 füllt die Daten fester Länge dicht gepackt aufeinanderfolgend mit dem AC-Code variabler Länge oder AC-Codes.
- Der erste Datenschreibschaltkreis 25 schreibt die Daten fester Länge des AC-Codes in den ersten Speicher 26.
- Der oben beschriebene Betrieb wird durch eine durch jeden Takt gesteuerte Pipeline-Verarbeitung durchgeführt.
- Der Datenhalteschaltkreis 27 speichert in dem zweiten Speicher 28 den DC-Code während der Pipeline-Verarbeitung, der von dem DC-Codierschaltkreis 13 ausgegeben ist.
- Nach dem zeitweiligen Aussetzen der Pipeline-Verarbeitung speichert der zweite Datenschreibschaltkreis 29 in dem ersten Speicher 26 den DC-Code, der von dem Datenhalteschaltkreis 17 aus dem zweiten Speicher 28 gelesen wird. Da die aufeinanderfolgenden AC-Codes als Daten fester Länge in dem ersten Speicher 26 gespeichert sind, sollte der DC-Code jetzt so platziert werden, dass der die AC-Codes nicht überlagert.
- Fig. 8 stellt ein Betriebszeitdiagramm für den Fall dar, in dem herkömmliche digitale Codiervorrichtungen Daten fester Länge erzeugen. In der Zeichnung sind gezeigt: der zweite Speicher 28; eine Dauer für 1 DCT, die erforderlich ist, um einen DCT- Koeffizienten zu verarbeiten und Blockeinheiten A, B, C und D, mit denen die Pipeline-Verarbeitung der digitalen Codiervorrichtung durchgeführt wird.
- Bei der Eingabe des DCT-Koeffizienten speichert die Datenhalteeinrichtung 17 zunächst den DC-Code in dem zweiten Speicher 28. Andererseits werden die AC- Codes durch die Pipeline-Verarbeitung aufeinanderfolgend zur Erzeugung von Daten fester Länge des AC-Codes verarbeitet. Die Anzahl der Takte, die erforderlich ist, um 1 DCT der Pipelineverarbeitung zu vervollständigen, ist 64, was gleich die Gesamtanzahl des DC-Koeffizienten und der AC-Koeffizienten darstellt. Die obige Verarbeitung wird für die Mehrzahl von DCT-Koeffizienten, die aufeinanderfolgend eingegeben werden, durchgeführt.
- Wenn eine Bildverarbeitungsvorrichtung, die Daten von der digitalen Codiervorrichtung empfängt, eine Austastperiode eingibt, wird der DC-Code, der in dem zweiten Speicher 28 gespeichert ist, von dem Datenhalteschaltkreis 27 in einer Nicht- Pipeline-Verarbeitung ausgelesen. Der gelesene DC-Code wird von dem zweiten Datenschreibschaltkreis 29 in den ersten Speicher 26 geschrieben, um Daten fester Länge des DC-Codes zu erzeugen. Fig. 8 zeigt ein Beispiel, in dem die Bildverarbeitungsvorrichtung die Austastperiode alle 15 DCTs eingibt. In diesem Fall ist die Anzahl von DC-Codes, die während der Austastperiode zu verarbeiten sind, 15, während die Anzahl der Takte, die bei der Nicht-Pipeline-Verarbeitung erforderlich sind, 15 beträgt.
- Fig. 9 zeigt eine Ansicht, die den Inhalt der Daten fester Länge darstellt, die von der herkömmlichen digitalen Codiervorrichtung erzeugt werden und in dem ersten Speicher 26 gespeichert sind. In der Zeichnung ist der Fall dargestellt, in dem die Anzahl der Werte von Daten fester Länge am größten ist, d. h. indem die Anzahl der AC- Codes 63 beträgt und die Codelänge von jedem der 63 AC-Codes maximal ist. In diesem Fall bestehen die Daten fester Länge, die für einen DCT-Koeffizienten erzeugt werden, aus einem DC-Code, 63 AC-Codes und einem EOB-Code, der die Endposition der AC-Codes darstellt. Wenn angenommen wird, dass der Speicherbereich für einen Wert von Daten fester Länge ein Wort beträgt, beträgt die größte Anzahl von Werten von Daten fester Länge, die für einen DCT-Koeffizienten erzeugt werden, 65 Worte.
- Die Fig. 10 zeigen Ansichten, die den Inhalt eines weiteren Beispiels für Daten fester Länge zeigen, die von der herkömmlichen digitalen Codiervorrichtung erzeugt werden. Wenn, wie in Fig. 10 (a) gezeigt, der DCT-Koeffizient, in dem alle AC- Koeffizienten mit Ausnahme des 63. einen Nullwert haben, gegeben ist, wird die Anzahl der Werte der Daten fester Länge wie in Fig. 10(b) gezeigt, drei Worte.
- Druckschrift EP-A1- 0 453 113 beschreibt eine Codiervorrichtung für digitale Bildsignale. Digitale Eingangssignale werden in Datenblöcke aufgeteilt, die unter Verwendung eines diskreten Kosinustransformations(DCT)-Wandlers codiert werden. Die Koeffizienten, die von dem DCT-Wandler bereitgestellt werden, werden einem Variable-Längen-Codierschaltkreis zugeführt. Die Daten, die von der Variable-Längen- Codierung herrühren, werden in eine Folge von Daten mit einer Begrenzung auf eine konstante Bitzahl umgewandelt.
- EP-A2-0 582 819 bezieht sich auf einen digitalen Videorekorder, der ein digitales Videosignal auf einem magnetischen Band aufzeichnet. Vor der Aufzeichnung werden die digitalen Daten unter Verwendung eines effizienten Codierverfahrens komprimiert. Zu diesem Zweck werden eine diskrete Kosinustransformation (DCT) und eine Variable Längen-Codierung der resultierenden Koeffizientendaten verwendet. Diese komprimierten Daten werden vor der Übertragung zu den Rotationsköpfen zur Aufzeichnung der Daten auf dem magnetischen Band einer Vollbildsegmentierung unterworfen.
- Die herkömmliche digitale Codiervorrichtung weist jedoch die folgenden Probleme auf.
- Da die herkömmliche digitale Codiervorrichtung die AC-Code-Verarbeitung und die DC-Code-Verarbeitung in dem Erzeugungsschaltkreis 20 für Daten fester Länge getrennt vornimmt, ist sie nachteilig in den Ausmaßen des Schaltkreises vergrößert. Da außerdem die AC-Code-Verarbeitung eine Pipeline-Verarbeitung ist und die DC- Code-Verarbeitung eine Nicht-Pipeline-Verarbeitung ist, sind zusätzliche Takte erforderlich, die den Stromverbrauch nachteilig erhöhen.
- Da weiterhin die DC-Code-Verarbeitung durch Ausnutzung der Austastperiode der Bildverarbeitungsvorrichtung durchgeführt wird, besitzt die herkömmliche digitale Codiervorrichtung keine Probleme in dem Fall, in dem sie für eine Anzeigeeinheit wie ein Monitor verwendet wird. In dem Fall jedoch, in dem Daten in einem Speichermedium wie einem Videospeicher gesammelt werden, erfordert die DC-Code- Verarbeitung eine Zeitdauer, die die Austastzeit ersetzt, was ein ernstzunehmendes Problem für eine Hochgeschwindigkeitsverarbeitung darstellt.
- Wenn zudem sowohl die DC-Code-Verarbeitung als auch die AC-Codierverarbeitung durch Pipeline-Verarbeitung in der herkömmlichen digitalen Codiervorrichtung durchgeführt wird, ist es schwierig, die Kompatibilität mit dem Aufbau der Vorrichtung zu bewahren, die mit der Verarbeitung vor oder nach der Pipeline-Verarbeitung verbunden ist. Da zum Beispiel die größte Anzahl von Werten der Daten fester Länge, die aus einem DC-Koeffizienten und 63 AC-Koeffizienten erzeugt werden, aufgrund des Vorhandenseins des EOB-Codes in dem in Fig. 9 gezeigten Fall 65 Worte wird, folgt, dass ein DCT-Koeffizient 65 Takte zur Verarbeitung erfordert, was eine große Zeitlücke zwischen dem Vorgang der Zeugung des DCT-Koeffizienten in der vorhergehenden Stufe und dem Vorgang der Erzeugung der Daten fester Länge verursacht. Da außerdem der EOB-Code in einem Wort gespeichert wird, nachdem der 63. AC- Code in dem in Fig. 10 gezeigten Fall erzeugt worden ist, erfordert die Verarbeitung insgesamt 65 Takte.
- In Anbetracht des Vorhergehenden ist es eine Aufgabe der vorliegenden Erfindung, eine digitale Codiervorrichtung anzugeben, die kleiner in den Schaltkreisausmaßen ist und eine geringere Leistungsaufnahme besitzt. Mit der digitalen Codiervorrichtung der vorliegenden Erfindung kann eine Hochgeschwindigkeitsverarbeitung unabhängig von dem Vorhandensein der Austastperiode in der Bildverarbeitungsvorrichtung erreicht werden. Bei der digitalen Codiervorrichtung der vorliegenden Erfindung kann außerdem der Aufbau, der die Pipeline-Verarbeitung betrifft, leicht die Kompatibilität mit dem Aufbau erhalten, der die Verarbeitung vor oder nach der Pipeline- Verarbeitung betrifft. Dies wird mit der Lehre des Anspruchs 1 erreicht.
- Um das obige Ziel zu erreichen, ermöglicht die vorliegende Erfindung eine einzige Hardware zur Durchführung sowohl einer DC-Code-Verarbeitung als auch einer AC- Code-Verarbeitung und verbessert das Format der erzeugten Daten fester Länge so, um die Pipeline-Verarbeitung unter Aufrechterhaltung der Kompatibilität mit dem Aufbau durchzuführen, der mit der Verarbeitung vor oder nach der Pipelineverarbeitung verbunden ist.
- Der Schaltkreis zur Erzeugung Daten fester Länge kann somit den Vorgang zur Speicherung des DC-Codes in den Daten fester Länge in Verbindung mit dem Vorgang zur Speicherung der AC-Codes in Daten fester Länge durchführen. Im Ergebnis wird der Schaltkreis, der für die herkömmliche Vorrichtung zur Speicherung des DC- Codes in den Daten fester Länge erforderlich ist, unnötig, was zu einer deutlichen Verkleinerung des Schaltkreises führt. Da außerdem die Takte für die Nicht-Pipeline- Verarbeitung zusätzlich zu der Schaltkreisverkleinerung unnötig werden, kann die Leistungsaufnahme deutlich vermindert werden. Da es weiterhin unnötig wird, die Verarbeitung während der Austastlücke durchzuführen, kann eine Hochgeschwindigkeitsverarbeitung unabhängig davon erreicht werden, ob eine Bildverarbeitungsvorrichtung mit oder ohne Austastperiode verwendet wird.
- In dem Fall, in dem die Summe der Codelänge des obigen DC-Codes und der Codelänge des EOB-Codes, der die Endposition der obigen AC-Codes darstellt, gleich oder kleiner als die Länge der obigen Daten fester Länge ist, überschreitet die Anzahl der Werte der erzeugten Daten fester Länge niemals die Gesamtanzahl des DC- Codes und der AC-Codes, so dass keine Notwendigkeit zur Erhöhung der Anzahl der Takte besteht, was einen Unterschied zu der herkömmlichen Ausführungsform darstellt. Dementsprechend kann der Vorgang der Speicherung des DC-Codes und der AC-Codes in Daten fester Länge in exzellenter Kompatibilität mit den Vorgängen vor und nach diesem Vorgang ausgeführt werden.
- Wenn alternativ die Anzahl der Bits der obigen Daten fester Längen ist und die Anzahl der Bits des obigen DC-Codes m ist, weist der obige Erzeugungsschaltkreis für Daten fester Länge vorzugsweise auf: einen Auffüllschaltkreis für Daten fester Länge, der die obigen AC-Codes empfängt, die eingegebenen AC-Codes aufeinanderfolgend verbindet, die verbundenen AC-Codes in n-Bit-Segmente aufteilt und die n-Bit- Segmente als Daten fester Länge der AC-Codes ausgibt; und einen Rotationsschaltkreis mit fester Bitbreite, der dem obigen DC-Code und die Daten fester Länge des AC-Codes, die von dem obigen Auffüllschaltkreis für Daten fester Länge ausgegeben werden, empfängt, um den führenden Datenwert der Daten fester Länge durch Verbindung des obigen DC-Codes mit den oberen (n-m)-Bits des führenden Wertes der Daten fester Länge des AC-Codes zu erzeugen, während sequentiell die Daten fester Länge, die nicht den führenden Datenwert darstellen, durch Verbindung der unteren m-Bits der Daten fester Länge von einem der AC-Codes mit den oberen (n-m)- Bits der Daten fester Länge eines Nachfolgenden der AC-Codes erzeugt werden.
- In dem obigen Erzeugungsschaltkreis fester Länge kann der Vorgang zur Speicherung des DC-Codes in den Daten fester Länge und der Vorgang zur Speicherung der AC-Codes in den Daten fester Länge dementsprechend gemeinsam und zuverlässig durch eine einzige Hardware ausgeführt werden.
- Fig. 1 stellt ein Blockdiagramm dar, das eine digitale Codiervorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung zeigt;
- Fig. 2 stellt ein Blockdiagramm dar, das jeweils einen internen Aufbau eines VLC- Schaltkreises und eines Erzeugungsschaltkreises für Daten fester Länge in der digitalen Codiervorrichtung gemäß der Ausführungsform der vorliegenden Erfindung zeigt;
- Fig. 3 (a) stellt ein Blockdiagramm dar, das ein Beispiel für den Aufbau eines Auffüllschaltkreises für Daten fester Länge in der digitalen Codiervorrichtung gemäß der Ausführungsform der vorliegenden Erfindung zeigt;
- Fig. 3 (b) stellt eine Ansicht dar, die die Erzeugung der Daten fester Länge des AC- Codes in dem Auffüllschaltkreis für Daten fester Länge zeigt;
- Fig. 4 (a) zeigt ein Blockdiagramm, das ein Beispiel für den Aufbau eines Rotationsschaltkreises mit fester Bitbreite in der digitalen Codiervorrichtung gemäß der Ausführungsform der vorliegenden Erfindung zeigt;
- Fig. 4 (b) zeigt eine Ansicht, die die Transformation der Daten fester Länge in dem Rotationsschaltkreis mit fester Bitbreite zeigt;
- Fig. 5 stellt eine Ansicht dar, die den Inhalt der Daten fester Länge zeigt, die von der digitalen Codiervorrichtung gemäß der Ausführungsform der vorliegenden Erfindung erzeugt wurden;
- Fig. 6 zeigt ein Betriebs-Zeitdiagramm der digitalen Codiervorrichtung gemäß der Ausführungsform der vorliegenden Erfindung;
- Fig. 7 ist ein Blockdiagramm, das jeweils den internen Aufbau eines VLC- Schaltkreises und eines Erzeugungsschaltkreises für Daten fester Länge in einer herkömmlichen digitalen Codiervorrichtung zeigt;
- Fig. 8 ist ein Betriebszeitdiagramm einer herkömmlichen digitalen Codiervorrichtung;
- Fig. 9 ist eine Ansicht, die den Inhalt von Daten fester Länge zeigt, die von der herkömmlichen digitalen Codiervorrichtung erzeugt werden;
- die Fig. 10 zeigen Ansichten, die den Inhalt der Daten fester Länge zeigen, die von der herkömmlichen digitalen Codiervorrichtung erzeugt werden, wobei Fig. 10(a) einen DCT-Koeffizienten zeigt und Fig. 10(b) den Inhalt der Daten fester Länge zeigt, die aus dem DCT Koeffizienten der Fig. 10(a) erzeugt werden; und
- Fig. 11 ist eine Ansicht, die den DCT-Koeffizienten in der vorliegenden Erfindung und dem Stand der Technik darstellt.
- Im folgenden wird eine digitale Codiervorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung unter Bezugnahme auf die Zeichnungen beschrieben.
- Fig. 1 stellt ein Blockdiagramm dar, das den Grundaufbau der digitalen Codiervorrichtung gemäß der Ausführungsform der vorliegenden Erfindung zeigt. In der Zeichnung sind dargestellt: ein Schaltkreis für eine diskrete Kosinustransformation (im folgenden als DCT-Schaltkreis bezeichnet) 1; ein Quantisierungsschaltkreis 2; ein Variabler Längen-Codierschaltkreis (im folgenden als VLC-Schaltkreis bezeichnet) 10; und ein Erzeugungsschaltkreis 20 für Daten fester Länge. Der DCT-Schaltkreis 1 und der Quantisierungsschaltkreis 20 bilden einen Transformationsschaltkreis.
- Der DCT-Schaltkreis 1 führt eine zweidimensionale diskrete Kosinustransformation für ein Helligkeitssignal oder ein Farbdifferenzsignal der Bilddaten durch, die in kleine Blöcke von 8 · 8 Pixeln aufgeteilt sind.
- Von der Übertragungskoeffizientenmatrix werden einzelne Elemente sequentiell als ein DCT-Koeffizient, der aus einem DC-Koeffizienten und 63 AC-Koeffizienten besteht, in der Reihenfolge ausgelesen, bei der das Element, das die niedrigste Frequenzkomponente darstellt, zuerst, wie in Fig. 11 gezeigt, gelesen wird.
- Der Quantisierungsschaltkreis 2 quantisiert den DCT-Koeffizienten, der von dem DCT-Schaltkreis 1 ausgegeben wird, und gibt ihn als quanitisierten DCT- Koeffizienten aus.
- Der VLC-Schaltkreis 10 codiert den DC-Koeffizienten zu einem DC-Code, während die AC-Koeffizienten zu AC-Codes codiert werden. Bei dem Vorgang wird eine Variable-Längen-Huffman-Codierung verwendet.
- Der Erzeugungsschaltkreis 20 für Daten fester Länge erzeugt Daten fester Länge aus dem DC-Code und den AC-Codes. Der vorhergehende Grundaufbau ist derselbe wie im Stand der Technik.
- Fig. 2 stellt ein Blockdiagramm dar, das den internen Aufbau des VLC-Schaltkreises 10 und des Datenerzeugungsschaltkreises 20 für Daten fester Länge in der digitalen Codiervorrichtung gemäß der Ausführungsform der vorliegenden Erfindung zeigt. In der Zeichnung sind dargestellt: ein Beurteilungsschaltkreis 11; ein AC- Codierschaltkreis 12; ein DC-Codierschaltkreis 13; ein Auffüllschaltkreis 21 für Daten fester Länge; ein Rotationsschaltkreis 22 mit fester Bitbreite; ein Datenschreibschaltkreis 23 und ein Speicher (RAM) 24.
- Der Beurteilungsschaltkreis 11 beurteilt, ob jede der Komponenten des DCT- Koeffizienten einen DC-Koeffizienten oder einen AC-Koeffizienten darstellt und gibt die AC-Koeffizienten an den AC-Codierschaltkreis 12 aus, während der DC- Koeffizient an den DC-Codierschaltkreis 13 ausgegeben wird.
- Der AC-Codierschaltkreis 12 detektiert eine Folge von Nullwert-AC-Koeffizienten, zählt die Anzahl aufeinanderfolgender Nullen, transformiert die Anzahl zusammen mit dem AC-Koeffizienten, der einen Nicht-Nullwert aufweist, zu Variable-Längen- Huffman-Codes und gibt sie als AC-Codes aus.
- Der DC-Codierschaltkreis 13 transformiert den DC-Koeffizienten zu dem DC-Code und gibt ihn aus. In dem Fall jedoch, in dem der DC-Koeffizient so wie er ist als DC- Code ohne Transformation verwendet wird, ist der DC-Codierschaltkreis 13 unnötig. Der Auffüllschaltkreis 21 füllt Daten fester Länge dicht gedrängt mit dem Variable- Längen-AC-Code oder AC-Codes in Folge auf. Wenn sowohl die maximale Codelänge des AC-Codes als auch die Länge der Daten fester Länge zu 16 Bit angenommen wird, wird die Anzahl der Worte, die als Daten fester Länge erforderlich sind, maximal, wenn ein AG-Code einem AC-Koeffizienten zugeordnet wird und die Codelänge von jedem der zugeordneten Codes mit Ausnahme des EOB-Codes 16 Bit beträgt, was maximal ist. Wenn jeder der AC-Koeffizienten Null ist, besteht der AC-Code nur aus dem EOB, so dass die Anzahl der Worte, die für die Daten fester Länge erforderlich sind, minimal wird. Dementsprechend beträgt die größte Anzahl von Werten der Daten fester Länge des AC-Codes 64 Worte, während der minimale Wert der Daten fester Länge ein Wort beträgt.
- In dem Fall, in dem die Daten fester Länge des AC-Codes die größte Anzahl von Werten besitzen, besteht das 64. Wort nur aus dem EOB-Code. Wenn hier angenommen sei, dass der EOB-Code aus beispielsweise vier Bit zusammengesetzt ist, wird ein 12-Bit unbenutzter Bereich an dem Ende der Daten fester Länge erzeugt, die dem 64. Wort entsprechen. Wenn der unbenutzte Bereich durch irgendeine Einrichtung an den Anfang verschoben wird, um den DC-Code ohne Störung der Pipelineverarbeitung zu speichern, wird es möglich, die Pipeline-Verarbeitung sowohl für den DC-Code als auch für die AC-Codes durchzuführen. Die vorliegende Erfindung wurde durch Beachtung der vorhergehenden Tatsache erreicht.
- Fig. 3(a) stellt ein Blockdiagramm dar, das ein Beispiel für den Aufbau des Auffüllschaltkreises 21 für Daten fester Länge zeigt. Es sei hier angenommen, das die maximale Codelänge des AC-Codes und die Länge der Daten fester Länge 16 Bit beträgt und dass die Codelänge durch vier Bits dargestellt wird, die zusammen mit dem AC-Code eingegeben wird. In der Zeichnung sind dargestellt: eine Auswahleinrichtung 21a; eine Ringverschiebungseinrichtung (barrel shifter)21b; 16 Bit-Halteeinrichtungen 21c und 21d; ein 4-Bit-Addierer21e und eine 4-Bit-Halteeinrichtung 21f.
- Der AC-Code wird zusammen mit den Ausgangsdaten von der Auswahleinrichtung 21a der Ringverschiebungseinrichtung 21b zugeführt, mit dem AC-Code verbunden, der schon in dem Halteschaltkreis 21c oder 21d vorhanden ist, und anschließend ausgegeben. Von den 32 Bit-Daten, die von der Ringverschiebungseinrichtung 21b ausgegeben werden, werden die oberen 16 Bits vorübergehend in der Halteeinrichtung 21c gespeichert, während die unteren 16 Bits vorübergehend in der Halteeinrichtung 21d gespeichert werden. Wenn die Daten, die in der Halteeinrichtung 21c gespeichert sind, vollständig aus dem AC-Code bestehen, werden sie als Daten fester Länge an den Rotationsschaltkreis 22 mit fester Bitbreite ausgegeben.
- Die Codelänge des AC-Codes wird dem Addierer 21e zugeführt und zu dem Ergebnis der vorherigen Addition hinzugefügt, die zwischenzeitlich in der Halteeinrichtung 21f gespeichert ist. Die Halteeinrichtung 21f gibt ebenfalls das darin gespeicherte Additionsergebnis an die Ringverschiebeeinrichtung 21b aus. Ein Übertragssignal, das von dem Addierer 21e ausgegeben wird, wird der Auswahleinrichtung 21a zugeführt. Wenn ein Übertrag erzeugt wird, gibt die Auswahleinrichtung 21a aufeinanderfolgend die Daten aus, die in der Halteeinrichtung 21d gespeichert sind. Wenn andererseits kein Übertrag erzeugt wird, gibt die Auswahleinrichtung 21a aufeinanderfolgend die Daten aus, die in der Halteeinrichtung 21c gespeichert sind.
- Fig. 3(b) stellt eine Ansicht dar, die die Erzeugung der festen Daten des AC-Codes in dem Auffüllschaltkreis 21 zu Daten fester Länge zeigt. Es sei hier angenommen, dass die AC-Codes, die die jeweiligen Codelängen von a&sub1;, a&sub2;, a&sub3;, a&sub4; und a&sub5; haben, aufeinanderfolgend zugeführt werden.
- Wenn der AC-Code mit der Codelänge a&sub1; zugeführt ist, hält zunächst die Halteeinrichtung 21c den AC-Code bündig am linken Rand ausgerichtet, während die Halteeinrichtung 21f die Daten a&sub1; speichert, die von dem Addierer 21e ausgegeben werden. Die Position, an der der AC-Code gespeichert wird, wird durch die Daten a&sub1; bestimmt, die von der Halteeinrichtung 21f ausgegeben werden. Die Halteeinrichtung 21f speichert anschließend Daten (81+82), die eine Position darstellen, an der nachfolgende AC-Code gespeichert wird.
- Der nachfolgende AC-Code mit der Codelänge a&sub3; wird anschließend zugeführt und mit dem vorhergehenden AC-Code verbunden. Da jedoch (a&sub1; + a&sub2; + a&sub3;) 16 überschreitet, wird ein Teil des AC-Codes mit der Codelänge a&sub3; verbunden und als Daten fester Länge des AC-Codes ausgegeben. Der verbleibende Anteil des AC-Codes mit der Codelänge a&sub3; wird in der Halteeinrichtung 21d gespeichert. Da in dem Addierer 21e ein Übertrag erzeugt wird, gibt die Auswahleinrichtung 21a aufeinanderfolgend die in der Halteeinrichtung 21d gespeicherten Daten aus, wenn der nachfolgende AC-Code eingegeben wird.
- Anschließend wird der AC-Code mit der Codelänge 34 zugeführt und mit dem verbleibenden Teil des AC-Codes mit der Codelänge a&sub3; verbunden, um linksbündig in der Halteeinrichtung 21c gespeichert zu werden.
- Der Rotationsschaltkreis 22 mit fester Bitbreite verbindet die Daten fester Länge des AC-Codes dicht gedrängt mit dem DC-Code, so dass der DC-Code am Anfang positioniert ist.
- Wenn hier angenommen wird, dass der DC-Code aus 12 Bits besteht und der EOB- Code aus 4 Bits zusammengesetzt ist, kann der Betrieb des Rotationsschaltkreises 22 mit fester Bitbreite für jeden Takt durch die folgenden einfachen numerischen Ausdrücke dargestellt werden:
- if (code = DC code)
- TMP < - DC; OUT < - {TMP, IN[15 : 12]};
- weiter
- TMP < - IN[11 : 0] OUT < - {TMP, IN[15 : 12]};
- wobei DC den einzuggebenden DC-Code darstellt, IN die einzugebenden Daten fester Länge des AC-Codes darstellt, OUT die auszugebenden Daten fester Länge darstellt, TMP die in einem TMP-Register zu speichernden Daten darstellt, IN [15 : 12] die oberen vier Bit der Daten fester Länge des einzugebenden AC-Codes darstellt und IN [11 : 0] die unteren 12 Bit der Daten fester Länge des einzugebenden AC- Codes darstellt. Der Betrieb kann mit einem Schaltkreis von extrem einfachen Aufbau realisiert werden.
- Fig. 4(a) stellt ein Blockdiagramm dar, das ein Beispiel für den Aufbau des Rotationsschaltkreises 22 mit fester Bitbreite darstellt. In der Zeichnung sind gezeigt: eine Auswahleinrichtung 22a, ein DC-Code-Beurteilungsschaltkreis 22b; ein TMP- Register 22c und ein Ausgaberegister 22d.
- Der DC-Code-Beurteilungsschaltkreis 22b gibt eine "1" als Beurteilungssignal bei der Eingabe des DC-Codes aus und gibt eine "0" zu allen anderen Zeitpunkten aus. Die Auswahleinrichtung 22a gibt die unteren 12 Bit aller eingegebenen Daten fester Länge des AC-Codes aus, wenn das Beurteilungssignal "0" ist, und gibt den 12 Bit DC- Code aus, wenn das Beurteilungssignal "1" ist. Das TMP-Register 22c ist ein 12-Bit- Register, das die von der Auswahleinrichtung 22a empfangenen 12 Bit DC-Daten nach Speicherung für einen Takt ausgibt. Das Ausgaberegister 22d verbindet die von dem TMP-Register 22c ausgegebenen 12 Bit-Daten mit den oberen 4 Bits aller eingegebenen Daten fester Länge des AC-Codes und gibt ein 16 Bit-Wort der Daten fester Länge aus.
- Fig. 4(b) zeigt die Transformation der Daten fester Länge in dem Rotationsschaltkreis 22 mit fester Bitbreite für den Fall, bei dem die Anzahl der Worte der Daten fester Länge des AC-Codes am größten ist. In der Zeichnung stellt ein kleiner Buchstabe h die oberen 4 Bit der Daten fester Länge des AC-Codes dar und ein kleiner Buchstabe t stellt die unteren 12 Bit der Daten fester Länge des AC-Codes dar.
- Zunächst werden die oberen 12 Bit des ersten Wortes der Ausgabedaten durch den DC-Code belegt, während die unteren 4 Bit davon von den oberen 4 Bit der Datenfester Länge des ersten AC-Codes belegt werden. Die oberen 12 Bit des zweiten Wortes werden von den unteren 12 Bit der Daten fester Länge des ersten AC-Codes belegt, während die unteren 4 Bit davon von den oberen 4 Bit der Daten fester Länge des zweiten AC-Codes belegt werden. Wenn n = 3 bis 63 werden in entsprechender Weise die oberen 12 Bit des n-ten Wortes der Ausgabedaten von den unteren 12 Bit der Daten fester Länge des (n-1)-ten AC-Codes belegt, während die unteren vier Bit davon von den oberen 4 Bit der Daten fester Länge des n-ten AC Codes belegt werden.
- In dem 64. Wort der Ausgabedaten werden die oberen 12 Bit von den unteren 12 Bit der Daten fester Länge des 63. AC-Codes belegt, während die unteren vier Bit von dem EOB-Code belegt werden. Mit dem Rotationsschaltkreis 22, der wie in Fig. 4(a) aufgebaut ist, kann somit der Betrieb der Rotation der Daten fester Länge aller AC- Codes um 4 Bit in Richtung des MSB und eine Belegung der ungenutzten 12 Bit beginnend mit dem MSB des ersten Wortes mit dem DC-Code realisiert werden.
- Der Datenschreibschaltkreis 23 speichert in dem Speicher 24 die Daten fester Länge, die von dem Rotationsschaltkreis 22 mit fester Bitbreite ausgegeben werden. Da dies die einfache Arbeitsweise des Schreibens der Daten fester Länge von mindestens einem Wort bis maximal 64 Worten in den Speicher darstellt, kann der Betrieb leicht durch eine Pipelineverarbeitung realisiert werden.
- Mit der digitalen Codiervorrichtung gemäß der Ausführungsform der vorliegenden Erfindung kann somit jede Verarbeitung nicht nur in dem VLC-Schaltkreis 10, sondern auch in dem Erzeugungsschaltkreis 20 für Daten fester Länge durch Pipelineverarbeitung durchgeführt werden.
- Fig. 5 zeigt den Inhalt der Daten fester Länge, die von der digitalen Codiervorrichtung gemäß der Ausführungsform der vorliegenden Erfindung in dem Fall erzeugt werden, in dem die Anzahl der Worte der Daten fester Länge am größten ist, d. h., wenn 63 AC-Codes gegeben sind und jeder der AC-Codes die maximale Länge aufweist. Anders als die in Fig. 9 gezeigte herkömmliche Ausführungsform ist die Summe der Codelänge des DC-Codes und der Codelänge des EOB-Codes gleich oder kürzer als die Länge der Daten fester Länge. Da außerdem die AC-Codes um fest vorgegebene Bits rotiert und mit dem DC-Code verbunden werden, beträgt die größte Anzahl an Worten der Daten fester Länge, die von einem DCT-Koeffizienten erzeugt werden, 64. Mit dem Speicherverfahren kann der Speicherbereich für die Daten fester Länge reduziert werden. Weiterhin verursacht die Hinzufügung des DC-Codes keinen Anstieg in der Anzahl der Takte, und Daten können aufeinanderfolgend durch Pipelineverarbeitung mit 64 Takten verarbeitet werden, ähnlich zu der herkömmlichen Ausführungsform.
- Fig. 6 zeigt ein Betriebszeitdiagramm der digitalen Codiervorrichtung gemäß der Ausführungsform der vorliegenden Erfindung. Anders als das in Fig. 8 gezeigte Betriebszeitdiagramm des herkömmlichen Schaltkreises ist keine Nicht- Pipelineverarbeitung zur Verarbeitung des DC-Codes während der Austastperiode zu erkennen.
- Mit der digitalen Codiervorrichtung gemäß der Ausführungsform der vorliegenden Erfindung wird der Schaltkreis zur Verarbeitung des DC-Codes unnötig und die Verarbeitung des DC-Codes außerhalb der Perioden der Pipelineverarbeitung wird ebenfalls unnötig. Im Vergleich mit dem herkömmlichen System, in dem die AC- Codeverarbeitung und die DC-Codeverarbeitung separat durchgeführt werden, kann daher eine signifikante Schaltkreisverkleinerung und eine Erniedrigung der Leistungsaufnahme aufgrund einer verminderten Anzahl von Takten für die Verarbeitung erreicht werden. Zu dem DC-Code kann Information zur Bildverarbeitung wie eine Bewegungsdetektion hinzugefügt werden. In der Praxis besteht das DVC (Digital Video Cassette)-Format aus insgesamt 12 Bit, von denen 9 Bit für den DC-Code, 1 Bit für die Bewegungsdetektion und 2 Bit für Klasseninformation als zusätzliche Information zu den Bilddaten vorgesehen sind. Da der EOB-Code aus 4 Bits besteht, kann die vorliegende Erfindung realisiert werden.
- Die Effekte der Schaltkreisverminderung und der Verminderung der Leistungsaufnahme, die von der digitalen Codiervorrichtung gemäß der Ausführungsform der vorliegenden Erfindung erreicht werden, werden nun beschrieben.
- Wenn der in Fig. 2 gezeigte Schaltkreis der vorliegenden Erfindung mit dem in Fig. 7 gezeigten herkömmlichen Schaltkreis verglichen wird, werden der Datenhalteschaltkreis 27, der zweite Speicher 28 und der zweite Datenschaltkreis 29, die von dem herkömmlichen Schaltkreis benötigt werden, unnötig in dem Schaltkreis der vorliegenden Erfindung. In dem Schaltkreis der vorliegenden Erfindung wird dagegen der Rotationsschaltkreis 22 mit fester Bitbreite erforderlich.
- Der Rotationsschaltkreis 22 mit fester Bitbreite ist, wie in Fig. 4(a) gezeigt, ein Schaltkreis extrem kleiner Größe. Andererseits ist sowohl der Datenhalteschaltkreis 27 als auch der zweite Datenschreibschaltkreis 29 in den Ausmaßen größer als der Rotationsschaltkreis 22 mit fester Bitbreite, da sie das Schreiben und Lesen von Daten in und aus dem Speicher und das Schreiben von Daten in den Speicher jeweils steuern. Der Datenhalteschaltkreis 27 benötigt den zweiten Speicher 28, dessen Kapazität 12 · 15 Bit in dem Fall der sequenzierten Verarbeitung von 15 DCTs und der anschließenden Verarbeitung des DC-Codes während der Austastperiode beträgt. Wenn die Anzahl der aufeinanderfolgend verarbeiteten DCTs durch n dargestellt wird, wird die Kapazität des Speichers 12 · n bits. Dementsprechend wird die Schaltkreisgröße deutlich reduziert.
- Im Gegensatz zu der herkömmlichen digitalen Codiervorrichtung, die zusätzliche Takte zur Verarbeitung des DC-Codes zusätzlich zu den Takten für die Pipelineverarbeitung benötigt, benötigt die vorliegende Ausführungsform keine zusätzlichen Takte. Dementsprechend kann die Leistungsaufnahme durch synergetische Effekte der Schaltkreisreduktion und der verminderten Anzahl von Takten zur Verarbeitung vermindert werden.
- Weiterhin benötigt die digitale Codiervorrichtung gemäß der Ausführungsform der vorliegenden Erfindung nicht notwendigerweise die Austastperiode. Dementsprechend kann sequentielle Verarbeitung durchgeführt werden, wenn die digitale Codiervorrichtung zur Bildverarbeitung mit keiner Austastperiode verwendet wird, wie bei der Aufzeichnung von Bilddaten in einem Speichermedium wie einem Videospeicher oder die Übertragung von Bilddaten über das Internet oder ähnliches, wobei die Verarbeitung mit einer höheren Geschwindigkeit als in der herkömmlichen Ausführungsform realisiert wird. Wenn die digitale Codiervorrichtung mit einem Monitor oder ähnlichem mit einer Austastperiode verwendet wird, kann die Austastperiode für eine weitere Verarbeitung verwendet werden.
Claims (6)
1. Digitale Codiervorrichtung, umfassend:
einen Transformationsschaltkreis (1, 2), der Eingangsdaten einer orthogonalen
Transformation unterwirft, um Koeffizientendaten als Ausgabedaten zu erzeugen, die
Koeffizientendaten umfassen einen DC-Koeffizienten und AC-Koeffizienten,
einen Variable-Längen-Codierschaltkreis (10) zur Erzeugung eines DC-Codes und
von AC-Codes basierend auf dem DC-Koeffizienten und den AC-Koeffizienten, die
von dem Transformationsschaltkreis (1, 2) erzeugt wurden,
einen Erzeugungsschaltkreis (20) für Daten fester Länge zur Erzeugung Daten fester
Länge, basierend auf dem DC-Code und den AC-Codes, die von dem Variable-
Längen-Schaltkreis (10) erzeugt wurden,
dadurch gekennzeichnet,
dass der Erzeugungsschaltkreis (20) für Daten mit konstanter Länge angepasst ist,
um
AC-Daten mit konstanter Länge basierend auf den AC-Codes zu erzeugen, und
Ausgangsdaten fester Länge basierend auf den AC-Daten mit konstanter Länge und
den DC-Daten zu erzeugen, wobei die Ausgangsdaten mit konstanter Länge ein
führendes Datenwort umfassen, das die DC-Daten und einen ersten Datenabschnitt
eines unmittelbar anschließenden AC-Datenwertes mit konstanter Länge umfasst,
und eine Folge weiterer Datenworte, wobei jedes der weiteren Datenworte einen
verbleibenden Datenabschnitt eines AC-Datenwertes mit konstanter Länge, der
einen ersten Datenabschnitt aufweist, der in einem unmittelbar vorhergehenden
Datenwort enthalten ist, und einen weiteren Datenabschnitt eines AC-Datenwertes
mit konstanter Länge umfasst, der unmittelbar auf den vorhergehenden Datenwert
folgt.
2. Digitale Codiervorrichtung nach Anspruch 1, wobei ein letztes Datenwort der
Ausgangsdaten mit konstanter Länge, die von dem Erzeugungsschaltkreis (20) für
Daten mit kontanter Länge erzeugt wurden, einen verbleibenden Abschnitt des
letzten AC-Wertes mit konstanter Länge und einen EOB-Code umfasst, wobei EOB
eine Endposition der AC-Codes darstellt.
3. Digitale Codiervorrichtung nach Anspruch 1 oder 2, wobei eine Summe aus einer
Codelänge der DC-Codes und einer Codelänge des EOB-Codes, die eine
Endposition der AC-Codes darstellt, gleich oder kleiner als eine Länge der
Datenwerte der Daten mit konstanter Länge ist.
4. Digitale Codiervorrichtung nach einem der Ansprüche 1 bis 3, wobei der
Transformationsschaltkreis (1, 2) einen Quantisierungsschaltkreis (2) aufweist, der
den DC-Koeffizienten und die AC-Koeffizienten durch Quantisierung des Ergebnisses
einer diskreten Kosinustransformation erzeugt.
5. Digitale Codiervorrichtung nach einem der Ansprüche 1 bis 4, wobei der Variable-
Längen-Codierschaltkreis (10) und der Erzeugungsschaltkreis (20) für Daten
konstanter Länge eine Pipeline-Verarbeitung durchführt.
6. Digitale Codiervorrichtung nach einem der Ansprüche 1 bis 5, wobei, wenn die
Anzahl der Bits der Datenwerte mit konstanter Längen ist und die Anzahl der Bits
des DC-Codes m ist, der Erzeugungsschaltkreis (20) für Daten konstanter Länge
umfasst:
einen Auffüllschaltreis (21), um Daten mit konstanter Länge zu erzeugen, der
Auffüllschaltkreis (21) empfängt die AC-Codes, verbindet die eingegebenen AC-
Codes in aufeinanderfolgender Weise, teilt die verbundenen AC-Codes in n-Bit-
Abschnitte auf und gibt die n-Bit-Abschnitte als Datenwerte konstanter Länge des
AC-Codes aus, und
einen Rotationsschaltkreis (22) mit fester Bitbreite, der den DC-Code und die Daten
konstanter Länge des AC-Codes empfängt, die von dem Auffüllschaltreis (21)
ausgegeben werden, um Daten mit konstanter Länge auszugeben, die durch
Erzeugen eines führenden Datenwortes mit Daten konstanter Länge durch
Verbindung des DC-Codes mit den oberen (n-m) Bits eines führenden Wertes der
Daten konstanter Länge des AC-Codes erzeugt werden, während in
aufeinanderfolgender Weise Daten fester Länge, die nicht die führenden betreffen,
durch Verbindung der unteren m-Bits der Daten konstanter Länge von einem der AC-
Codes mit den oberen (n-m) Bits der Daten konstanter Länge von nachfolgenden der
AC-Codes erzeugt werden.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP99995 | 1995-01-09 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69612515D1 DE69612515D1 (de) | 2001-05-23 |
DE69612515T2 true DE69612515T2 (de) | 2001-08-23 |
Family
ID=11489296
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69612515T Expired - Lifetime DE69612515T2 (de) | 1995-01-09 | 1996-01-08 | Digitale Kodierungsvorrichtung |
Country Status (3)
Country | Link |
---|---|
US (1) | US6026191A (de) |
EP (1) | EP0721285B1 (de) |
DE (1) | DE69612515T2 (de) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6332152B1 (en) * | 1997-12-02 | 2001-12-18 | Matsushita Electric Industrial Co., Ltd. | Arithmetic unit and data processing unit |
US6434635B1 (en) * | 1999-04-29 | 2002-08-13 | Unisys Corporation | Methods, apparatus, and computer program product for data transfer using a scatter-gather list |
US6449394B1 (en) * | 1999-07-09 | 2002-09-10 | Sarnoff Corporation | Packing variable-length code bits at fixed positions |
FR2937767B1 (fr) * | 2008-10-24 | 2012-01-20 | Commissariat Energie Atomique | Procede d'estimation de la concentration d'un traceur dans un ensemble de structures tissulaires, support d'information et dispositif correspondants |
WO2011126277A2 (en) | 2010-04-05 | 2011-10-13 | Samsung Electronics Co., Ltd. | Low complexity entropy-encoding/decoding method and apparatus |
JP5685683B2 (ja) * | 2011-10-28 | 2015-03-18 | 株式会社Gnzo | バイトアラインメント装置及びバイトアラインメント方法 |
JP6142833B2 (ja) | 2014-03-31 | 2017-06-07 | ブラザー工業株式会社 | 電子機器 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA1211219A (en) * | 1982-06-30 | 1986-09-09 | Hideo Kuroda | Digital data code conversion circuit for variable- word-length data code |
JP3013381B2 (ja) * | 1990-03-28 | 2000-02-28 | ソニー株式会社 | 可変長データの復号装置 |
JPH04221465A (ja) * | 1990-12-21 | 1992-08-11 | Matsushita Electric Ind Co Ltd | 記録装置 |
JP3353317B2 (ja) * | 1991-12-25 | 2002-12-03 | ソニー株式会社 | ディジタル画像信号の記録装置 |
JP3360844B2 (ja) * | 1992-02-04 | 2003-01-07 | ソニー株式会社 | ディジタル画像信号の伝送装置およびフレーム化方法 |
JP3245977B2 (ja) * | 1992-06-30 | 2002-01-15 | ソニー株式会社 | ディジタル画像信号の伝送装置 |
GB2270603B (en) * | 1992-09-09 | 1996-07-24 | Sony Broadcast & Communication | Data formatting |
JPH06215492A (ja) * | 1993-01-14 | 1994-08-05 | Canon Inc | 符号化データ処理装置 |
-
1996
- 1996-01-08 EP EP96100175A patent/EP0721285B1/de not_active Expired - Lifetime
- 1996-01-08 DE DE69612515T patent/DE69612515T2/de not_active Expired - Lifetime
- 1996-01-11 US US08/585,416 patent/US6026191A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
DE69612515D1 (de) | 2001-05-23 |
EP0721285B1 (de) | 2001-04-18 |
EP0721285A2 (de) | 1996-07-10 |
US6026191A (en) | 2000-02-15 |
EP0721285A3 (de) | 1999-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69119847T2 (de) | Elektronische standbildkamera mit mehrformatspeicherung von bildern mit voller und beschränkter auflösung | |
DE69230922T2 (de) | Videosignalkodierer mit Blockvertauschungstechnik | |
DE69127739T2 (de) | Bilddatenverarbeitungsgerät | |
DE69720559T2 (de) | Methode zur Bildkodierung mit Kodes variabler Länge | |
DE69425847T2 (de) | Rechner für die inverse diskrete Cosinus-Transformation | |
DE69736329T2 (de) | Verschachtelte verteilte kodierung von spärlich bestückten datensätzen | |
DE69131533T2 (de) | Datenkompression unter Verwendung eines direkt gesteuerten Quantisierungsprediktors | |
DE2625973C3 (de) | Verfahren und Anordnung zur redundanzvermindernden Transformation von Bildern | |
EP0230437B1 (de) | Verfahren zum komprimieren und dekomprimieren mehrerer strukturverwandter datenfolgen sowie einrichtungen zur durchführung des verfahrens | |
DE3940682C2 (de) | Codiervorrichtung und System, bestehend aus einer Codiervorrichtung und einer Decodiervorrichtung für digitale Bilddaten | |
DE4314741A1 (de) | Dekodierer-Architektur nach Huffman für eine höhere Betriebsgeschwindigkeit und reduzierten Speicherbedarf | |
DE69624670T2 (de) | Verfahren und Vorrichtung zur doppelten Lauflängenkodierung von binären Daten | |
DE69618418T2 (de) | Dekodierer variabler Länge unter Verwendung eines FIFO-Speichers | |
DE2640140A1 (de) | Verfahren und anordnung zur redundanzvermindernden bildcodierung | |
DE4038240A1 (de) | Prozessor zum durchfuehren einer orthogonaltransformation | |
EP3624456A1 (de) | Verfahren zur kompression und dekompression von bilddaten | |
DE69535392T2 (de) | Vorrichtung zur Dekodierung von Codes mit variablen Lauflängen unter Verwendung einer relativen Adressierung | |
DE69820148T2 (de) | Verfahren zur Kompression/Dekompression von Bilddaten | |
DE69612515T2 (de) | Digitale Kodierungsvorrichtung | |
DE60015755T2 (de) | Verlustfreie adaptive codierung von daten eines endlichen alphabets | |
DE69026634T2 (de) | Verfahren und System zum Schreiben und Lesen von kodierten Daten | |
EP0304836B1 (de) | Verfahren und Schaltungsanordnung zur Verbesserung der Auflösung von digitalen Signalen | |
DE19511413C2 (de) | Bildbearbeitungsvorrichtung zur Verarbeitung von Bilddaten | |
DE3545106C2 (de) | ||
DE69228913T2 (de) | Verfahren und Vorrichtung zur Kodierung eines digitalen Videosignals |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: PANASONIC CORP., KADOMA, OSAKA, JP |
|
8320 | Willingness to grant licences declared (paragraph 23) |