DE3742098A1 - Verfahren und vorrichtung zur kompression und rekonstruktion von daten - Google Patents

Verfahren und vorrichtung zur kompression und rekonstruktion von daten

Info

Publication number
DE3742098A1
DE3742098A1 DE19873742098 DE3742098A DE3742098A1 DE 3742098 A1 DE3742098 A1 DE 3742098A1 DE 19873742098 DE19873742098 DE 19873742098 DE 3742098 A DE3742098 A DE 3742098A DE 3742098 A1 DE3742098 A1 DE 3742098A1
Authority
DE
Germany
Prior art keywords
data
compression
compressed
mark
data sequence
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.)
Granted
Application number
DE19873742098
Other languages
English (en)
Other versions
DE3742098C2 (de
Inventor
Tokuhiro Tsukiyama
Hiroshi Yashiki
Osamu Hirose
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.)
Hitachi Ltd
Hitachi Information and Telecommunication Engineering Ltd
Original Assignee
Hitachi Computer Peripherals Co Ltd
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Computer Peripherals Co Ltd, Hitachi Ltd filed Critical Hitachi Computer Peripherals Co Ltd
Publication of DE3742098A1 publication Critical patent/DE3742098A1/de
Application granted granted Critical
Publication of DE3742098C2 publication Critical patent/DE3742098C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/005Statistical coding, e.g. Huffman, run length coding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/46Conversion 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

Description

Die Erfindung betrifft ein Verfahren und eine Vorrichtung zur Kompression und Rekonstruktion von Daten, die sich bei aufeinanderfolgenden Dateneinheiten, wie sie beispielsweise bei Aufzeichnung und Wiedergabe von Daten in Magnetbandspeichern auftreten, eignen und ein Einschreiben der Daten in Vor­ wärts- und Rückwärtsrichtung auf dem Aufzeichnungsmedium gestatten.
Aus der US-PS 45 86 027 ist ein Datenkompressionsverfahren für eine Magnetbandspeichereinheit bekannt, das eine Daten­ kompression unter der Verwendung von 4-Byte Dictionary- Daten bei Wiederholung der selben Daten über 5 Bytes oder mehr ausführt. Bei diesem Verfahren werden die Dictionary- Daten aus einem Wert, der die Distanz zwischen dem voran­ gehenden Dictionary-Datum und dem laufendem Dictionary- Datum angibt, der Anzahl aufeinanderfolgender Daten und einem Wert, der die Distanz zum nächsten Dictionary-Datum angibt, gebildet. Dieses bekannte Verfahren betrachtet jedoch Fälle von sich über 4 Bytes oder weniger wieder­ holenden Daten in den Eingabedaten nicht. Die Auftrittshäu­ figkeit von sich über 4 Bytes oder weniger wiederholenden Daten ist um den Faktor 4 bis 20 höher als die Auftritts­ häufigkeit der Wiederholung über 5 Bytes oder mehr und ihre Gesamtauftrittshäufigkeit liegt um 10%. Dadurch ergibt sich die Erkenntnis, daß sich durch deren Kompression der Kompressionsfaktor erhöhen läßt. Eine Schwierigkeit liegt darin, daß beim Auftreten auch nur eines Fehlers in den Dictionary-Daten während des Rekonstruktionsvorganges die Rekonstruktion aufeinanderfolgender Daten nicht sicherge­ stellt ist.
Es ist deshalb Aufgabe der Erfindung, ein Verfahren und eine Vorrichtung zur Kompression und Rekonstruktion von Daten unter Erhöhung des Kompressionsfaktors zu ermögli­ chen. Dabei sollen gemäß der Erfindung auch beim Vorliegen fehlerhafter komprimierter Information (Dictionary-Informa­ tion) Daten, die der fehlerhaften komprimierten Information folgen, richtig rekonstruiert werden können.
Die Lösung der obigen Aufgabe erfolgt erfindungsgemäß durch die in den Ansprüchen angegebenen Merkmale.
Da es bei zu komprimierenden digitalen Computerdaten nur eine begrenzte Anzahl von sich über 2 Bytes oder mehr mit hoher Auftrittshäufigkeit wiederholenden Datentypen gibt, beschränkt sich die Anzahl der zu komprimierenden Daten­ typen. Die zu komprimierenden Daten werden codiert, wo­ durch sich die Anzahl der zur Darstellung der zu kompri­ mierenden Daten nötigen Bits verringert. Weiterhin werden nur Daten, die sich in einer bestimmten Anzahl von Bytes wiederholen, der Kompression unterworfen, weil in den meisten Fällen die Anzahl der Bytes sich mit hoher Auftrittshäufigkeit wiederholender Daten in einem bestimm­ ten Bereich liegt. Dadurch läßt sich die zur Darstellung der Bytezahl aufeinanderfolgender Daten nötige Anzahl von Bits reduzieren. Der Kompressionsfaktor wird nämlich durch Ver­ ringern der Typenzahl zur Darstellung des Typus und der Anzahl sich wiederholender Daten gesteigert. Dieses Verfah­ ren wird nachfolgend erstes Kompressionsverfahren genannt.
Wenn die Bytezahl sich wiederholender Daten größer als ein bestimmter Wert wird oder wenn Daten anderer Datentypen, die nicht in den eingeschränkten Kompressionsdaten enthal­ ten sind, mit hoher Auftrittshäufigkeit erscheinen, läßt sich der Kompressionsfaktor durch Erhöhung der Anzahl der Bytes zur Darstellung des Typus der Objektdaten in den Dictionary-Daten und der Bitzahl oder Bytezahl zur Darstel­ lung der Anzahl aufeinanderfolgender Datenbytes steigern. Dieses Verfahren wird im folgenden zweites Kompressionsver­ fahren genannt.
Zudem wird Information (Kompressionsmarke), die das erste oder zweite Kompressionsverfahren angibt, entweder dem Kopf oder dem Ende der komprimierten Daten hinzugefügt. Die Kompressionsinformation istjeweils in den Einheiten der Kompressionsmarke unabhängig voneinander, weshalb, auch wenn falsche Kompressionsinformation während der Daten­ rekonstruktionsoperation auftritt, die folgende Datenrepro­ duktion durch die Erfassung der Kompressionsinformation, die auf der einzelnen Kompressionsmarke beruht, die also nicht von anderer Kompressionsinformation beeinflußt ist, möglich ist.
Die Erfindung wird im folgenden in Ausführungsbeispielen anhand der Zeichnung näher beschrieben. Es zeigen:
Die Fig. 1 und 2 Diagramme, die veranschaulichen, wie die Auftrittshäufigkeit zu komprimie­ render Objektdaten von der Anzahl auf­ einanderfolgender Bytes und vom Daten­ typus abhängt;
die Fig. 3 bis 5 Diagramme zur Erläuterung eines Auf­ zeichnungsformats komprimierter Daten auf einem magnetischen Aufzeichnungs­ medium;
Fig. 6 ein Diagramm, das das Aufzeichnungs­ datenformat auf dem Magnetband vor und nach der Kompression veranschaulicht;
Fig. 7 ein Diagramm, das die Bedingung der Datenkompression darstellt;
Fig. 8 ein Blockschaltbild einer Ausführungs­ art einer erfindungsgemäßen Datenkom­ pressionsschaltung;
Fig. 9 ein Blockschaltbild eines weiteren Aus­ führungsbeispiels einer erfindungs­ gemäßen Datenkompressionsschaltung; und
Fig. 10 ein Blockschaltbild einer Datenrekon­ struktionsschaltung gemäß einem Ausfüh­ rungsbeispiel der Erfindung.
Bevor nun die Erfindung anhand ihrer Ausführungsbeispiele beschrieben wird, wird das der Erfindung zugrundeliegende Prinzip erläutert. Bei Computerdaten sind häufig vorkommende Zeichen und spezielle Symbole in einem bestimmten Variations­ bereich beschränkt, und ihre Auftrittshäufigkeit bei aufeinan­ derfolgender Wiederholung ist umgekehrt proportional zur An­ zahl der Wiederholung. Fig. 1 stellt die prozentuale Auf­ trittshäufigkeit über der Anzahl der Bytes aufeinanderfolgen­ der Daten dar. Fig. 2 zeigt ein Beispiel der Auftrittshäufig­ keit für in unterschiedlichen kommerziellen Bereichen verwen­ dete und häufig auftretende Daten auf Magnetbändern. In Com­ puterdaten verläuft die Auftrittshäufigkeit abhängig von der Anzahl der Bytes etwa umgekehrt proportional zu der Anzahl aufeinanderfolgender Bytes gemäß Fig. 1, und gemäß Fig. 2 treten bestimmte Datentypen häufiger auf. Die vorliegende Er­ findung beruht auf dieser Erkenntnis und wählt beispielsweise 4 von 16 häufig auftretenden Daten. Die Länge zur Darstellung der Anzahl aufeinanderfolgender Bytes wird auf 4 Bits fest­ gelegt, weil die Anzahl aufeinanderfolgender Bytes häufig kleiner als 10 ist. Mit diesem Kompressionsschema lassen sich über 16 Bytes aufeinanderfolgende Daten oder weniger zu einem Byte komprimieren. Zusätzlich ist in den kompri­ mierten Daten ebenfalls eine Information in Form der Kom­ pressionsmarke, die das oben genannte erste oder zweite Kompressionsverfahren unterscheidet, enthalten. Diese Marke wird zur Angabe der Position der Kompressionsinformation beim Datenrekonstruktionsvorgang verwendet. Die Kompres­ sionsmarke wird entweder am Kopf oder am Ende der kompri­ mierten Daten angefügt.
Mit diesem Verfahren lassen sich auf der Basis der erfaßten Kompressionsmarke Daten in Vorwärts- und Rückwärtslaufrich­ tung des Aufzeichnungsmediums rekonstruieren.
Im folgenden werden Ausführungsarten der Erfindung anhand der Zeichnung beschrieben.
Fig. 3 zeigt das Datenformat nach einem Kompressionsvorgang gemäß einer Ausführungsart der Erfindung. Das Format be­ steht aus einer Kombination unkomprimierter Daten 5 und Kompressionsinformation (Dictionary-Information). Die Kom­ pressionsinformation 4 enthält einen Kompressionsdatencode (4 Bits) nach der Kompression, einen Zählwert 2 (4 Bits), der die Anzahl kontinuierlich aufeinanderfolgender Daten­ blöcke, die komprimiert sind, angibt und eine Kompressions­ marke 3 (1 Byte), die den Kompressionsmodus der komprimier­ ten Daten darstellt, insgesamt also zwei Bytes. Fig. 4 zeigt ein weiteres Beispiel von Kompressionsinformation 4′, bei der die jeweils entsprechenden Teile der obigen Infor­ mation (Kompressionsdatencode 1′, Zählwert 2′ und Kompres­ sionscode 3′) jeweils durch 1 Byte dargestellt sind, insge­ samt also 3 Bytes. Gemäß Fig. 5 können die in Fig. 3 und Fig. 4 gezeigten Kompressionsinformationsarten 4 und 4′ bei der Aufzeichnung gemischt werden.
Fig. 6 zeigt ein Datenkompressionsbeispiel unter Verwendung des in Fig. 3 dargestellten Datenformats. Die vor der Kompression vorliegenden Daten sind mit (a) bezeichnet, und die nach der Kompression vorliegenden Daten sind mit (b) bezeichnet. Die Daten (a) bestehen aus einer Vielzahl von 1-Byte-Datenblöcken, beispielsweise "00", "01", "02" und dergleichen. Fig. 7 zeigt die Bedingung der Datenkompres­ sion. Die dargestellte Bedingungstabelle beruht auf der Annahme, daß der Kompressionsdatencode 1 4 Bits, der Kom­ pressionsdatenzählwert ebenfalls 4 Bits, so daß letzterer insgesamt 15 Bytes darstellen kann, und die Kompressionsmar­ ke den Datenwert "01" haben.
Die in den Quellendaten 6 enthaltenen komprimierbaren Da­ tenblöcke sind die Kompressionsobjektdaten in der in Fig. 7 dargestellten Tabelle im Falle solche Kom­ pressionsobjektdatenblöcke mindestens 3 Byte lang kontinu­ ierlich auftreten. (Daten, die den selben Wert "01" wie die Kompressionsmarke haben, werden, auch wenn sie nur 1 Byte lang sind, zur Erzeugung eines Dictionary-Musters zugelassen, und in einen davon verschiedenen Datenwert umgesetzt, damit die Daten nach der Kompression von der Kompressionsmarke unterscheidbar sind.) Entsprechend werden aus den führenden 3 Bytes mit dem Wert "00" und den folgenden Daten mit dem Wert "01" und den 14 Bytes mit dem Wert "40" komprimierte Dictionary-Muster erzeugt. Die Kompressionsmarke 10 des Dictionary-Musters 7 hat den Wert "01", und der Kompressionsdatencode (d.h. der die zu komprimierenden Daten darstellende Code) 11 ist "0" (HEX), wie er sich aus Fig. 7 ergibt. Der Kompressions­ datenzählwert 12 wird "3", und stellt 3 Byte "00" dar, woraus sich das 1-Byte-Datum "03" ergibt. Danach wird das "01"-Datum, da es mit der Kompressionsmarke identisch ist, in "8" für den Kompressionsdatencode 13 gemäß Fig. 7 umge­ setzt, wie dies in Fig. 6 (b) durch das Dictionary-Muster 8 dargestellt ist, und der Kompressionsdatenzählwert 14 wird "1" wegen seines 1-Byte-Quellendatums, woraus sich das in Fig. 6 (b) gezeigte 1-Byte-Datum "81" ergibt. Dann werden 3 Bytes nicht komprimierbarer Daten 02, 02, 02 aufgezeichnet und das folgende Dictionary-Muster 9 erzeugt. Die Informa­ tion "1" des Kompressionsdatencodes 15 und die Information "E" des Kompressionsdatenzählwerts 2 werden in der zuvor beschriebenen Weise aufgezeichnet. Die folgenden, nicht komprimierbaren Daten "00", "00" und "07" werden unkompri­ miert aufgezeichnet. Durch die vorangehend beschriebene Pro­ zedur läßt sich das in Fig. 6(b) gezeigte Kompressionsformat gemäß Fig. 3 erzielen. Auch in den in den Fig. 4 und 5 dar­ gestellten Kompressionsformaten lassen sich in derselben Weise komprimierte Daten erzeugen.
Nun wird ein Verfahren zum Rekonstruieren von Daten nach dem Auslesen der in Fig. 6(b) dargestellten komprimierten Daten in Vorwärts- und Rückwärtsrichtung beschrieben. Vor­ wärtslesen erfolgt in der Reihenfolge Kompressionsmarke­ Kompressionsinformation, wohingegen Rückwärtslesen in der Reihenfolge Kompressionsinformation-Kompressionscode er­ folgt. Zuerst wird eine Ausführungsart des Datenrekonstruk­ tionsverfahrens beim Vorwärtsauslesen beschrieben. Der erste ausgelesene Datenwert "01" wird als Kompressionsmarke erkannt, und deshalb ist auch gewiß, daß das nächste Byte Kompressionsinformation enthält. Wenn diese Kompressions­ information gelesen wurde, ergibt sich der Kompressions­ datencode 11 zu "0", was sich aus der in umgekehrter Richtung erfolgenden Datenumsetzung gemäß der Tabelle in Fig. 7 ergibt, weil die komprimierten Objektdaten "00" und gleichzeitig der Kompressionsdatenbytezählwert "3" waren, wobei sich aus letzterem ergibt, daß 3 Bytes komprimierter Daten vorhanden sind. Entsprechend können 3 aufeinanderfol­ gende Datenbytes mit dem Wert "00" aus den ersten zwei Bytes rekonstruiert werden. Auf diese Weise werden immer auf die Erfassung der Kompressionsmarke hin Daten, beispielsweise die Quellendaten 6 rekonstruiert.
Nun wird eine Ausführungsart des Datenrekonstruktionsver­ fahrens beim Auslesen der komprimierten Daten gemäß Fig. 6 (b) in umgekehrter Richtung beschrieben. Bei jedem in umge­ kehrter Richtung ausgelesenen Datenstück wird geprüft, ob die Kompressionsmarke vorhanden ist, und gleichzeitig wird Dictionary-Muster-Information in einem Register zwischen­ gespeichert. In umgekehrter Leserichtung werden nämlich Datenwerte "07", "00", "00", "1E" und "01" ausgelesen und, sobald die Kompressionsmarke 9 mit dem Wert "01" erfaßt ist, steht fest, daß das vorangehend ausgelesene Byte Kom­ pressionsinformation ist. Für die in dem Register zwischen­ gespeicherte Kompressionsinformation "1E" wird mittels der Tabelle in Fig. 7 bestimmt, daß der Wert "1" des Kompres­ sionsdatencodes 15 ergibt. Aus dem Wert "E" des Kompressionsdatenzählwerts 16 ergibt sich, daß 14 Bytes aufeinanderfolgender Daten komprimiert wurden. Folglich werden die Quellendaten "07", "00", "00", "40", "40"... auch beim Lesen in Gegenrichtung rekonstruiert.
Bei der Rekonstruktion der in den Fig. 4 und 5 dargestell­ ten Formate wird die Anordnung der Kompressionsinformation jeweils auf der Basis der Kompressionsmarken 4 und 4′ erkannt, wodurch die Datenrekonstruktion wie im vorangehen­ den Fall möglich ist.
Fig. 8 zeigt als Blockschaltbild ein Ausführungsbeispiel einer Datenkompressionsschaltung zur Durchführung der er­ findungsgemäßen Datenkompression und Rekonstruktion. Diese Datenkompressionsschaltung erzeugt Kompressionsinformation 4 (d.h. 7, 8, 9 usw., z.B. gemäß Fig. 6(b)) aus in Fig. 6(a) dargestellten Daten. Dieses Beispiel verwendet 2-Byte- Dictionary-Muster 4. In Fig. 8 werden Daten seriell von einer (nicht gezeigten) übergeordneten Einheit, beispielsweise einer Magnetbandeinheit, übertragen. Eine in Fig. 8 gezeigte Eingangspufferschaltung 20 besteht aus dreistufigen Puffer­ speichern (die Stufenzahl des Puffers ergibt sich aus einem Wert n, der zuvor gesetzt wurde und angibt, daß mindestens n Bytes aufeinanderfolgender Daten zu komprimieren sind). Der Puffer 20 speichert zeitweilig die Daten, bis entschieden ist, ob die Eingangsdaten zu komprimieren sind. Eine Datenvergleicherschaltung 21 prüft, ob die in der Eingangspufferschaltung 20 zwischengespeicherten und übertragenen Daten gleichen Wert haben. Jedes übertra­ gene Datenbyte erzeugt, sobald es im Eingangspuffer 20 gespeichert ist, ein Ausgangssignal (CMP 12) auf der Si­ gnalleitung 30, falls die ersten und zweiten Bytes der Daten in der Eingangspufferschaltung 20 übereinstimmen, was von der Vergleicherschaltung 21 geprüft wird. Jedes Daten­ byte erzeugt ein Ausgangssignal (CMP 23) auf der Signallei­ tung 31, falls das zweite und dritte Byte der Daten über­ einstimmen. Ein Kompressionsdatendiskriminator 23 liest in der Eingangspufferschaltung 20 zwischengespeicherte Infor­ mation über den Bus 32 als drittes Byte des Eingangspuffers 20 aus und prüft auf ein Zeitsteuersignal hin, daß das Auslesen der nächsten übertragenen Daten angibt, ob das dritte Byte ein Teil der Kompressionsobjektdaten ist. Falls Daten zu komprimieren sind, gibt die Schaltung 23 über die Signalleitung 35 ein Signal ab, daß das dritte Byte ein Teil der Kompressionsobjektdaten darstellt. In diesem Fall teilt, falls die Daten einen mit der Kompressionsmarke gleichen Wert haben, die Schaltung 23 diese Information über die Signalleitung 35 mit. Eine Kompressionsdaten­ codierschaltung 22 gewinnt im zweiten Byte des Eingangspuf­ fers 20 gehaltene Information über den Bus 33 zum Zeitpunkt eines von einer Kompressionssteuerschaltung 24 über eine Steuerleitung 36 ausgegebenen Signals und erzeugt den Kom­ pressionsdatencode 1, der die Kompressionsinformation ist. Der Kompressionsdatencode 1, den die Kompressionsdaten­ codierschaltung 22 erzeugt und auf den Bus 37 gelegt hat, wird mit dem Zählwert eines Kompressionsdatenzählers 25 gemischt, der die Bytezahl von 3 Bytes oder mehr sich wiederholender Daten zählt, und als 1-Byte-Kompressions­ information an eine Wählschaltung 27 gesendet. Ein Muster­ generator 26 gibt kontinuierlich die Kompressionsmarke über den Bus 40 aus. Falls Daten, die mit der Kompressionsmarke 1 identisch sind, 1 Byte haben, wird 1-Byte-Kompressions­ information, die aus dem Kompressionsdatencode 1, der durch Codierung der obigen Daten erzeugt wird und aus dem Kom­ pressionsdatenzählwert 2 besteht, kontinuierlich über den Bus 41 ausgegeben. Falls dagegen mit der Kompressionsmarke gleiche Daten 2 Bytes umfassen, wird 1-Byte-Kompressions­ information, die aus dem Kompressionsdatencode 1 und dem Kompressionsdatenzählwert 2 besteht, kontinuierlich über den Bus 42 ausgegeben. Die Wählschaltung 27 gibt auf die Busleitung 43 wahlweise am Eingang 2 über den Bus 40 em­ pfangene nicht-komprimierbare Daten 5 betreffende Informa­ tion, an ihrem Eingang 2 über den Bus 40 empfangene Infor­ mation über die Kompressionsmarke 3, an ihrem Eingang 0 vom Bus 37 und vom Bus 38 empfangene Kompressionsinformation für Kompressionsdaten von 3 Bytes oder mehr oder Kompres­ sionsinformation, die sie an ihrem Eingang 3 vom Bus 41 oder an ihrem Eingang 4 vom Bus 42, wenn die mit der Kom­ pressionsmarke übereinstimmenden Daten 2 Bytes oder weniger umfassen, aus, wodurch sie komprimierte Daten in dem in Fig. 3 dargestellten Kompressionsformat erzeugt. Die Kom­ pressionssteuerschaltung 24 bildet eine Folgesteuerschal­ tung und formt komprimierte Daten aus den übertragenen Daten.
Die übertragenen Daten werden im Eingangspuffer 20 zeitlich gesteuert durch ein Datenübertragungssignal 50 eingespei­ chert. Gleichzeitig prüft die Datenvergleicherschaltung 21 kontinuierlich die Kontinuität der Daten (d.h. die Wieder­ holung der selben Daten), so daß der Zustand der Eingangs­ pufferschaltung 20 von der über die Signalleitungen 30 und 31 gelieferten Information erhältlich ist. Die im Eingangs­ puffer 20 gespeicherten Daten werden aufgrund der Zustände auf den Signalleitungen 30 und 31 und der Ausgangssignale 34 und 35 des Kompressionsdatendiskriminators 23 daraufhin geprüft, ob die Daten auf dem Bus 39 zu komprimieren sind, wenn die Anzahl des Auftritts von auf der Signalleitung 45 liegenden Signalen, die das den Zeitpunkt übertragener Daten angebende Signal führen, von 1 Byte bis 3 Bytes gezählt wurden. Dies wird durch die Information 44 der Kompressionssteuerschaltung 24 angegeben. Falls das Signal 35 nicht ausgegeben wird, wählt das Wählsignal 54 den Eingang 1 der Wählschaltung 27, um die nicht komprimierten Daten auf dem Bus 39 zum Übertragungszeitpunkt der Leitung 51 unabhängig von den Zuständen der Signalleitungen 30 und 31 zu senden. Wenn das Signal 35 ausgegeben wird, stellt die Kompressionssteuerschaltung 24 zuerst bei ausgeschalte­ tem Signal 34 den Kompressionsdatenzähler 25 auf den Wert 3 in Übereinstimmung mit dem Ladesignal des Signals 56 ein und speichert nachfolgend Daten des vierten Bytes der Ein­ gangspufferschaltung 20 zum Zeitpunkt des Signals 45, um die übertragenen Daten zu komprimieren. Gleichzeitig wählt die Kompressionssteuerschaltung 24 am Eingang 2 der Wähl­ schaltung 27 anliegende Information der Kompressionsmarke nach Maßgabe des Wählsignals 54 und sendet die Kompres­ sionsmarke auf den Bus 40 zum Zeitpunkt des Signals 51 aus. Gleichzeitig wird der Kompressionsdatenzähler 25 zum Zeitpunkt des Signals 55 hochgezählt. Der Kompressions­ datenzähler 25 wird in der gleichen Weise hochgezählt, wenn aufeinanderfolgende Daten übertragen werden.
Zu diesem Zeitpunkt wird, wenn der Zählwert der aufeinan­ derfolgenden Daten den vorgeschriebenen Wert (15 bei diesem Ausführungsbeispiel) erreicht hat, ein Signal 48 von dem Kompressionsdatenzähler 25 erzeugt, und die Kompressions­ steuerschaltung 24 wählt den Eingang 0 der Wählschaltung 27 mittels des Wählsignals 54 und sendet zum Übertragungszeit­ punkt gemäß dem Signal 51 die Kompressionsinformation 37 und 38 aus. Zur gleichen Zeit wird die Folgezählinformation 44 der Kompressionssteuerschaltung 24 auf 0 gesetzt, und die Kompressionsinformation 37 und 38 für aufeinanderfol­ gende Daten wird durch Iteration der obigen Operationen erzeugt. Sobald die Kompressionssteuerschaltung 24 erkannt hat, daß die Signalleitung 31 (CMP 23) ausgeschaltet ist, bevor der Kompressionsdatenzähler 25 den spezifizierten Wert erreicht hat, sendet sie die Kompressionsinformation 38 und 37 zu Beginn des nächsten Datenauslesevorgangs, in der selben Weise wie oben beschrieben, aus. Zu diesem Zeitpunkt befinden sich um ein Byte von den aufeinanderfol­ genden Kompressionsobjektdaten verschiedene Daten im ersten Byte des Eingangspuffers 20, und deshalb bleibt die Folge­ zählinformation 44 der Kompressionssteuerschaltung 24 in dem Zustand, in dem sie den vollen Puffer 20 angibt. Außer­ dem werden die Signalleitungen 30, 31, 34 und 35 geprüft und die gleiche Operation, wie sie oben beschrieben wurde, wiederholt. Wenn über beide Signalleitungen 34 und 35 eine Ausgabe erfolgt, wählt die Wählschaltung 27 einen Eingang auf der Basis der Information auf der Signalleitung 30 (CMP 12) und der Signalleitung 31 (CMP 23) wie folgt. Wenn die Signale auf beiden Leitungen 30 und 31 ausgeschaltet sind, sind die mit der Kompressionsmarke übereinstimmenden Daten nur für ein Byte auf dem Bus 39 vorhanden, und deshalb gibt die Kompressionssteuerschaltung 24 ein Signal 52 aus, so daß die übergeordnete Einheit keine Daten sendet und wählt daraufhin den Eingang 2 der Wählschaltung 27 mittels des Wählsignals 54, gibt das Übertragungszeitsteuersignal 51 aus und schaltet das Signal auf der Leitung 52 aus. Dann empfängt die Kompressionssteuerschaltung 24 übertragene Daten zum Zeitpunkt des Empfangs der nächsten übertragenen Daten, wählt den Eingang 3 der Wählschaltung 27 und über­ trägt die Kompressionsinformation über den Bus 41, die die Anwesenheit von 1-Bytedaten, die mit der Kompressionsmarke übereinstimmen, angibt mittels des Übertragungszeitsignals 51. In der selben Weise wählt die Kompressionssteuerschal­ tung 24, wenn die Signalleitung 30 Ein-Zustand und die Signalleitung 31 Aus-Zustand annehmen, was die Anwesenheit von zwei mit der Kompressionsmarke übereinstimmenden Daten­ stücken angibt, den Eingang 2 der Wählschaltung 27 zeit­ lich synchron mit den nächsten übertragenen Daten zur Aus­ sendung der Kompressionsmarke und wählt danach den Eingang 4, um die Kompressionsinformation auf dem Bus 42, die die Anwesenheit zweier mit der Kompressionsmarke übereinstim­ mender Daten darstellt, auszusenden.
Komprimierte Daten werden kontinuierlich durch dieselbe Operation erzeugt. Wenn die Übertragung der Daten von der übergeordneten Einheit abgeschlossen ist, erzeugt letztere ein Datenstopsignal 46. Auf dieses Signal hin erzeugt die Kompressionssteuerschaltung 24 ein Sub-Anforderungssignal 49, welches ein Schiebesignal für die Eingangspufferschaltung 20 ist, um in letzterer verbleibende Daten zu senden. Wenn alle Daten ausbleiben, was die vollständige Übertra­ gung komprimierter Daten angibt, stellt das Signal 53 das Datenstopsignal zur Beendigung des Kompressionsvorgangs dar.
Das Signal 47 wird erzeugt, wenn das System eine unterge­ ordnete Einheit benötigt, um zeitweilig die Übertragung der Daten zu unterbrechen und die Kompressionssteuerschaltung 24 reagiert auf dieses Signal, indem sie die Operation in dem gerade vorhandenen Zustand anhält.
Das in Fig. 4 dargestellte Verfahren läßt sich auch in der­ selben Weise durchführen.
Fig. 9 zeigt eine Schaltungsanordnung einer erfindungsge­ mäßen Ausführungsart einer Datenkompressionsvorrichtung, die die Datenkompression des in Fig. 5 dargestellten Kombi­ nationsverfahrens ausführt. Diese Schaltung ist im wesent­ lichen dieselbe wie die in Fig. 8, jedoch sind eine Kom­ pressionsobjektdatensignalleitung 100, Signalleitungen 101 für den erhöhten Maximalwert des Zählwerts für die kompri­ mierten Daten, ein Bus 102, der diesen Wert 1-Byte-weise überträgt und ein Bus 103, der 1-Byte-weise den Kompres­ sionsdatencode überträgt zusätzlich vorgesehen. Das Verfah­ ren läßt sich mit dieser Schaltung leicht durch geeignete Umschaltung des Wählsignals 54 durch die Kompressions­ steuerschaltung 24, abhängig von der Differenz des Diction­ ary-Musters, zur Wahl einer entsprechenden Eingangsinforma­ tion durch die Wählschaltung 27 durchführen.
Fig. 10 zeigt ein Blockschaltbild einer erfindungsgemäßen Ausführungsart einer Datenrekonstruktionsschaltung. Sie führt die Rekonstruktion der Daten aus, die von der Daten­ kompressionsschaltung in Fig. 8 komprimiert wurden. Die in Fig. 10 dargestellte Datenrekonstruktionsschaltung spei­ chert ausgelesene komprimierte Daten in einen Auslesedaten­ puffer 60. Die komprimierten Daten werden vom Auslesepuffer 60 als Transferdaten ausgesendet und rekonstruiert und daraufhin als Transferdaten gesteuert von einer Rekonstruk­ tionssteuerschaltung 64 ausgegeben.
Zuerst wird die Arbeitsweise jedes Schaltungsteils be­ schrieben. Der Auslesedatenpuffer 60 holt die ausgelesenen komprimierten Daten und plaziert das erste Byte dieser Daten auf einem Bus 72, der sie zu einer Kompressionsmar­ kenerfassungsschaltung 61, einer Wählschaltung 62 und einer Wählschaltung 66 überträgt. Das zweite Byte der Daten wird auf einen Bus 71 gelegt und zur Kompressionsmarkenerfas­ sungsschaltung 61 und zur Wählschaltung 62 übertragen. Die Kompressionsmarkenerfassungsschaltung 61 decodiert Daten, die über den Bus 72 kommen in Vorwärtsleserichtung, und aktiviert im Falle der Kompressionsmarke die Signalleitung 70, die der Rekonstruktionssteuerschaltung 64 angibt, daß das Dictionary-Muster 4 im Auslesedatenpuffer 60 gehalten wird und hält gleichzeitig vorübergehend den Datenauslese­ vorgang an, während sie zum Rekonstruktionsvorgang über­ geht. Die Wählschaltung 62 prüft die Datenausleserichtung, und wählt, wenn das Dictionary-Muster im Auslesedatenpuffer 60 enthalten ist, Bytes, die den Kompressionsdatencode 1 und den Kompressionsdatenzählwert 2 enthalten und sendet sie über einen Bus 74 aus. Ein Decodierer 63 decodiert den Kompressionsdatencode 1 in den auf den Bus 74 gelegten Daten, wie sie die Wählschaltung 62 zur Rekonstruktion nur eines Bytes gewählt hat, setzt dieses eine Byte in einen internen Pufferspeicher und gibt diese zwischengespeicher­ ten rekonstruierten Daten über den Bus 73 aus. Ein Rekon­ struktionszähler 65 holt sich den Kompressionsdatenzählwert 2 vom Bus 74 synchron mit dem Ladesignal 77 von der Rekon­ struktionssteuerschaltung 64, zählt den Wert synchron mit einem Ausgabezeitsteuersignal 78 in den rekonstruierten Daten herunter, und aktiviert, wenn der Zählwert Null er­ reicht hat, die Signalleitung 75, die das Ende des Rekon­ struktionsvorgangs für die komprimierten Daten der Rekon­ struktionssteuerschaltung 64 mitteilt. Die Wählschaltung 66 arbeitet in Übereinstimmung mit einem Wählsignal 76 von der Rekonstruktionssteuerschaltung 64 und gibt Daten auf dem Bus 72 aus, wenn das erste Byte im Auslesepuffer 60 ein nicht-komprimiertes Datum 5 ist, oder sie gibt nur den Kompressionsdatenzählwert in den Daten, der von dem Deco­ dierer 63 rekonstruiert wurde und der über den Bus 73 an der Wählschaltung 66 anliegt, aus. Die Rekonstruktions­ steuerschaltung 64 erfährt durch ein über eine Signalleitung 70 ankommendes Signal, ob die Daten, die im Auslesedaten­ puffer 60 stehen, ein Dictionary-Muster oder nicht-kompri­ mierte Daten sind. Im Falle nicht-komprimierter Daten wählt die Rekonstruktionssteuerschaltung 64 mittels des Wähl­ signals 76 die Daten auf dem Bus 72 und gibt außerdem ein Übernahmesignal 78 aus, das die Gültigkeit der auf dem Bus 79 ausgegebenen Daten angibt. Im Falle die im Auslesedaten­ puffer 60 gespeicherten Daten ein Dictionary-Muster 4 dar­ stellen, geht die Rekonstruktionssteuerschaltung 64 in die Rekonstruktionsoperation über. Diese beginnt, indem die Rekonstruktionssteuerschaltung 64 über eine Signalleitung 70 erfährt, daß die Daten im Auslesedatenpuffer 60 ein Dictionary-Muster darstellen, woraufhin die Rekonstruk­ tionssteuerschaltung 64 eine Signalleitung 80 aktiviert und die Datenübertragung damit anhält. Zu diesem Zeitpunkt ist der Kompressionsdatencode 1, der bereits von der Wähl­ schaltung 62 gewählt wurde, im Decodierer 63 nach Übertra­ gung über den Bus 74 vorhanden. Gleichzeitig liegt der Kompressionsdatenzählwert 2 im Rekonstruktionszähler 65 vor, nachdem er ebenfalls über den Bus 74 übertragen wurde. Die Rekonstruktionssteuerschaltung 64 aktiviert ein Daten­ verriegelungssignal für rekonstruierte Daten auf einer Signalleitung 81 und über eine Signalleitung 77 ein Lade­ signal für den Rekonstruktionszählwert um die rekonstruier­ ten Daten zu verriegeln und gleichzeitig den Kompressions­ datenzählwert zu laden. Vom Beginn der Rekonstruktionsope­ ration bis zu diesem Zeitpunkt bleibt das Ausgangsdaten­ übernahmesignal auf der Leitung 78 inaktiv. Nach diesen Vorbereitungen aktiviert die Rekonstruktionssteuerschaltung 64 das Ausgangsdatenübernahmesignal 78 um damit die Ausgabe über den Bus 73 mittels des Wählsignals 76 zu wählen. Gleichzeitig beginnt der Rekonstruktionszähler 65 synchron mit dem Ausgangsdatenübernahmesignal 78 herunterzuzählen. Nachdem Teile der rekonstruierten Daten mit dem Kompres­ sionsdatenzählwert gleicher Anzahl ausgegeben wurden, wird der Rekonstruktionszähler 65 zurückgesetzt, und die Signal­ leitung 75 aktiviert und teilt der Rekonstruktionssteuer­ schaltung 64 mit, daß die Rekonstruktion des Dictionary- Musters im Auslesedatenpuffer 60 ausgeführt ist. Nachdem die Folge der Rekonstruktionsoperationen beendet ist, des­ aktiviert die Rekonstruktionssteuerschaltung 64 das Daten­ übertragungshaltsignal auf der Leitung 80 und liest darauf­ hin die nächsten Daten aus. Diese Operationen werden wie­ derholt. Infolgedessen werden Daten, die sowohl komprimier­ te als auch nicht-komprimierte Datenteile enthalten, in das Originalformat rekonstruiert. Über eine Signalleitung 82 sendet die Rekonstruktionssteuerschaltung 64 ein Rekon­ struktionsendesignal aus, das angibt, daß sämtliche Daten rekonstruiert sind. Eine Signalleitung 83 überträgt ein Sub-Anforderungssignal, um verbleibende Daten am Schluß aus dem Auslesedatenpuffer herauszuholen. Eine Signalleitung 84 überträgt ein Anforderungssignal, das angibt, daß die kom­ primierten Daten angekommen sind. Eine Signalleitung 85 überträgt ein Stopsignal, das das Ende der Übertragung sämtlicher Daten angibt, während eine Signalleitung 86 ein Anforderungssignal zum Anhalten der Rekonstruktion der Daten von einer untergeordneten Einheit überträgt.
Eine Datenrekonstruktion in umgekehrter Richtung ist eben­ falls in der selben Weise durchführbar, indem das Rück­ wärtssignal aktiviert wird und die Beurteilungsposition für die Kompressionsmarke umgeschaltet wird. In gleicher Weise ist durch eine ähnliche Schaltung eine Rekonstruktion von Dictionary-Mustern im 3-Byte-Format und ebenfalls im 2-3- Byte-Format möglich.

Claims (7)

1. Verfahren zur Kompression einer Eingangsdatenfolge, die Teile mit mehreren aufeinanderfolgenden identischen Datenblöcken aufweist und sich aus Datenblöcken mehrerer Typen zusammensetzt, gekennzeichnet durch folgende Schritte:
  • - vorherige Auswahl derjenigen Typen unter den Daten­ blöcken aus der Eingangsdatenfolge, die wiederholt und aufeinanderfolgend mit hoher Auftrittsfrequenz er­ scheinen;
  • - Bereitstellen, falls geeignete Datenblöcke der gewähl­ ten Typen aufeinanderfolgend in bestimmter Mindestzahl und vorgegebener Maximalzahl enthalten sind, von komprimierten Datenblöcken (1, 2; 1′, 2′), die die Datenblöcke der gewählten Typen in der Eingangsdatenfolge darstellen sowie einer Zahl, die die Anzahl aufeinanderfolgender Blöcke angibt in Übereinstimmung mit einer vorgegebenen Kompressions­ methode;
  • - Hinzufügen einer Kompressionsmarke (3; 3′), welche angibt, daß die Kompression durchgeführt wurde, entwe­ der am Kopf oder am Ende des Datenblocks unter Erzeu­ gung eines Kompressionsinformationsblocks (4; 4′); und
  • - Verbindung eines Datenblocks (5) mit unkomprimierten Datenblöcken mit dem komprimierten Block unter Bildung einer komprimierten Ausgangsdatenfolge (Fig. 6(b)).
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die vorgegebene Kompressionsmethode mehrere Kompres­ sionsmethoden umfaßt und der Kompressionsmarkendaten­ block mehrere Kompressionsmarkenblocktypen (3; 3′) umfaßt, die die verschiedenen jeweils angewendeten Kom­ pressionsmethoden kennzeichnen.
3. Vorrichtung zur Kompression einer Eingangsdatenfolge, die aufeinanderfolgende Teile mehrerer aufeinanderfol­ gender untereinander identischer Datenblöcke aufweist und aus einer Kombination mehrerer Datenblocktypen ge­ bildet ist, gekennzeichnet durch
  • - eine Kompressionseinrichtung (20-25), welche Daten­ blöcke aufeinanderfolgender identischer Teile in Über­ einstimmung mit einem vorbestimmten Kompressionsformat codiert, falls die aufeinanderfolgenden Teile aus zuvor unter den mehreren Datenblocktypen ausgewählten Typen in bestimmter Anzahl und aufeinander­ folgend und wiederholt mit hoher Auftrittsfrequenz erscheinen;
  • - eine Zähleinrichtung, die die Anzahl der die aufeinan­ derfolgenden Teile bildenden Datenblöcke innerhalb eines bestimmten Maximalzählbereichs zählt und diesen Zählwert codiert;
  • - eine Mustergeneratoreinrichtung (26), die eine Kom­ pressionsmarke erzeugt, die die Anwesenheit der co­ dierten Datenblöcke und der codierten Anzahl angibt; und
  • - eine Steuer- und Wählschaltung (24, 27), die aus den codierten Datenblöcken bestehende Kompressionsinforma­ tionsdaten, die codierte Anzahl und die Kompressions­ marke mit einer Eingangsdatenfolge, die in anderer Weise als die aufeinanderfolgenden Teile komprimiert wurden, verbindet und dadurch eine komprimierte Aus­ gangsdatenfolge erzeugt.
4. Vorrichtung nach Anspruch 3, dadurch gekennzeichnet, daß sie weiterhin Einrichtungen (100, 101, 102, 103) auf­ weist, die die Kompressionseinrichtung, die Codierein­ richtung, die Mustergeneratoreinrichtung und die Wähl­ einrichtung so steuern, daß sie ein von dem vorbestimmten Kompressionsformat im Maximalwert der Anzahl aufeinander­ folgender Datenblöcke und der Kompressionsmarke unter­ schiedliches Kompressionsformat erzeugen und dadurch die Eingangsdatenfolge durch eine Kombination der verschiede­ nen Kompressionsformate in eine komprimierte Ausgangs­ datenfolge umsetzen.
5. Verfahren zur Rekonstruktion einer Datenfolge, die durch das Verfahren nach einem der Ansprüche 1 oder 2 komprimiert ist, gekennzeichnet durch folgende Schritte:
  • - sequentielles Auslesen der komprimierten Datenfolge in Vorwärts- oder Rückwärtsrichtung;
  • - Rekonstruktion des komprimierten Informationsblocks nach Erfassung der Kompressionsmarke an seinem Kopf oder Ende, abhängig von der Richtung, in der die kompri­ mierte Datenfolge gelesen wurde, zu dem vor der Kompres­ sion vorliegenden unkomprimierten Datenblock und Ausgabe des rekonstruierten Datenblocks;
  • - direkte Ausgabe der ausgelesenen Datenfolge, wenn die Kompressionsmarke nicht erfaßt wurde.
6. Vorrichtung zur Kompression und Rekonstruktion einer Eingangsdatenfolge, die aufeinanderfolgende Teile mehre­ rer untereinander identischer aufeinanderfolgender Da­ tenblöcke enthält und aus einer Kombination von Daten­ blöcken mehrerer Typen gebildet ist, mit einer Kompressionseinheit und einer Rekonstruktionsein­ heit, dadurch gekennzeichnet, daß die Kompressionseinheit aufweist:
  • - eine Kompressionseinrichtung (20-25), welche Daten­ blöcke aufeinanderfolgender identischer Teile in Über­ einstimmung mit einem vorbestimmten Kompressionsformat codiert, falls die aufeinanderfolgenden Teile aus zuvor unter den mehreren Datenblocktypen ausgewählten Typen bestehen und in bestimmter Anzahl und aufeinander­ folgend und wiederholt mit hoher Auftrittsfrequenz erscheinen;
  • - eine Zähleinrichtung, die die Anzahl der die aufeinan­ derfolgenden Teile bildenden Datenblöcke innerhalb eines bestimmten Maximalzählbereichs zählt und diesen Zählwert codiert;
  • - eine Mustergeneratoreinrichtung (26), die eine Kom­ pressionsmarke erzeugt, die die Anwesenheit der co­ dierten Datenblöcke und der codierten Anzahl angibt; und
  • - eine Steuer- und Wählschaltung (24, 27), die aus den codierten Datenblöcken bestehende Kompressionsinforma­ tionsdaten, die codierte Anzahl und die Kompressions­ marke mit einer unkomprimierten Eingangsdatenfolge, die sich von den Folgen aufeinanderfolgender Teile unter­ scheidet, verbindet und dadurch eine komprimierte Aus­ gangsdatenfolge erzeugt;
die Rekonstruktionseinheit aufweist:
  • - eine Einrichtung (60) zum Auslesen der Ausgangsdaten­ folge;
  • - eine Einrichtung (61), die in der ausgelesenen Aus­ gangsdatenfolge die Kompressionsmarke erfaßt;
  • - eine Decodiereinrichtung (63, 65), die die codierten Datenblöcke am Kopf oder am Ende der Kompressionsmar­ ke, sobald diese erfaßt wurde, decodiert und die de­ codierten Datenblöcke aufeinanderfolgend in der durch die codierte Anzahl aufeinanderfolgender Daten angege­ benen Anzahl ausgibt; und
  • - eine Wählschaltung (66), die auf die Erfassung der Kompressionsmarke die von der Decodiereinrichtung (63, 65) ausgegebene decodierte Datenfolge oder andern­ falls, wenn die Kompressionsmarke nicht erfaßt wurde, die ausgelesene Datenfolge direkt wählt und ausgibt.
DE19873742098 1986-12-12 1987-12-11 Verfahren und vorrichtung zur kompression und rekonstruktion von daten Granted DE3742098A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61294826A JPH0815263B2 (ja) 1986-12-12 1986-12-12 データ圧縮復元方法

Publications (2)

Publication Number Publication Date
DE3742098A1 true DE3742098A1 (de) 1988-06-23
DE3742098C2 DE3742098C2 (de) 1989-08-31

Family

ID=17812752

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19873742098 Granted DE3742098A1 (de) 1986-12-12 1987-12-11 Verfahren und vorrichtung zur kompression und rekonstruktion von daten

Country Status (3)

Country Link
US (1) US4872009A (de)
JP (1) JPH0815263B2 (de)
DE (1) DE3742098A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19921298A1 (de) * 1999-05-07 2000-11-16 Bosch Gmbh Robert Verfahren zur Komprimierung und Dekomprimierung von Daten und Vorrichtung

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2624299B2 (ja) * 1988-06-09 1997-06-25 株式会社日立製作所 加速演算回路
US5532694A (en) * 1989-01-13 1996-07-02 Stac Electronics, Inc. Data compression apparatus and method using matching string searching and Huffman encoding
US5146221A (en) * 1989-01-13 1992-09-08 Stac, Inc. Data compression apparatus and method
US4929946A (en) * 1989-02-09 1990-05-29 Storage Technology Corporation Adaptive data compression apparatus including run length encoding for a tape drive system
EP0394976B1 (de) * 1989-04-27 1995-11-29 Matsushita Electric Industrial Co., Ltd. Daten-Kompandierungsverfahren und Daten-Kompressor/Dehner
US4988998A (en) * 1989-09-05 1991-01-29 Storage Technology Corporation Data compression system for successively applying at least two data compression methods to an input data stream
US5049881A (en) * 1990-06-18 1991-09-17 Intersecting Concepts, Inc. Apparatus and method for very high data rate-compression incorporating lossless data compression and expansion utilizing a hashing technique
US5313604A (en) * 1990-11-13 1994-05-17 Hewlett-Packard Company Method for locating compressed data in a computed memory back up device including steps of refining estimater location
CA2065578C (en) * 1991-04-22 1999-02-23 David W. Carr Packet-based data compression method
US5349348A (en) * 1991-08-15 1994-09-20 International Business Machines Corporation Multi-mode data stream generator
CA2077271C (en) * 1991-12-13 1998-07-28 David J. Craft Method and apparatus for compressing data
US5396228A (en) * 1992-01-16 1995-03-07 Mobile Telecommunications Technologies Methods and apparatus for compressing and decompressing paging data
US5229768A (en) * 1992-01-29 1993-07-20 Traveling Software, Inc. Adaptive data compression system
FR2687259B1 (fr) * 1992-02-11 1994-05-06 Ouest Standard Telematique Sa Procede de compression de donnees pour systeme de transmission par unites de donnees de protocole, procede de decompression et dispositif correspondant.
US5371499A (en) * 1992-02-28 1994-12-06 Intersecting Concepts, Inc. Data compression using hashing
US5406278A (en) * 1992-02-28 1995-04-11 Intersecting Concepts, Inc. Method and apparatus for data compression having an improved matching algorithm which utilizes a parallel hashing technique
US5353024A (en) * 1992-05-01 1994-10-04 Intersecting Concepts, Inc. Method for data compression having an improved encoding algorithm which utilizes a token stacking technique
US5504929A (en) * 1993-11-17 1996-04-02 Adobe Systems Incorporated Method and apparatus for encoding byte sequence for self-clocked high speed data transfer from a parallel port
US5563595A (en) * 1993-12-23 1996-10-08 International Business Machines Corporation Method and apparatus for compressing data
JPH07205496A (ja) * 1994-01-14 1995-08-08 Oki Electric Ind Co Ltd ページプリンタ及びデータ圧縮方法
US5574952A (en) * 1994-05-11 1996-11-12 International Business Machines Corporation Data storage system and method for operating a disk controller including allocating disk space for compressed data
US5502439A (en) * 1994-05-16 1996-03-26 The United States Of America As Represented By The United States Department Of Energy Method for compression of binary data
US5701125A (en) * 1994-06-15 1997-12-23 The United States Of America As Represented By The United States Department Of Energy Method for compression of data using single pass LZSS and run-length encoding
US5721720A (en) * 1994-12-28 1998-02-24 Kabushiki Kaisha Toshiba Optical recording medium recording pixel data as a compressed unit data block
US6009202A (en) * 1994-12-28 1999-12-28 Kabushiki Kaisha Toshiba Image information encoding/decoding system
US5734677A (en) * 1995-03-15 1998-03-31 The Chinese University Of Hong Kong Method for compression of loss-tolerant video image data from multiple sources
US5689255A (en) * 1995-08-22 1997-11-18 Hewlett-Packard Company Method and apparatus for compressing and decompressing image data
US5729223A (en) * 1996-03-20 1998-03-17 Motorola Inc. Method and apparatus for data compression and restoration
US6023558A (en) * 1996-06-27 2000-02-08 Apple Computer, Inc. Graphics compression for an emulation system
US5734340A (en) * 1996-08-27 1998-03-31 Symantech Corporation Method and apparatus for storing run-intensive information in compact form
US5798718A (en) * 1997-05-12 1998-08-25 Lexmark International, Inc. Sliding window data compression method and apparatus
US6332152B1 (en) * 1997-12-02 2001-12-18 Matsushita Electric Industrial Co., Ltd. Arithmetic unit and data processing unit
JP3337633B2 (ja) 1997-12-03 2002-10-21 富士通株式会社 データ圧縮方法及びデータ復元方法並びにデータ圧縮プログラム又はデータ復元プログラムを記録したコンピュータ読み取り可能な記録媒体
US6275588B1 (en) 1998-11-12 2001-08-14 I-Data International A/S Apparatus and method for performing and controlling encryption/decryption for data to be transmitted on local area network
US6195024B1 (en) 1998-12-11 2001-02-27 Realtime Data, Llc Content independent data compression method and system
US6624761B2 (en) 1998-12-11 2003-09-23 Realtime Data, Llc Content independent data compression method and system
US6604158B1 (en) 1999-03-11 2003-08-05 Realtime Data, Llc System and methods for accelerated data storage and retrieval
US6601104B1 (en) 1999-03-11 2003-07-29 Realtime Data Llc System and methods for accelerated data storage and retrieval
US20030191876A1 (en) 2000-02-03 2003-10-09 Fallon James J. Data storewidth accelerator
US6748457B2 (en) 2000-02-03 2004-06-08 Realtime Data, Llc Data storewidth accelerator
US6836564B2 (en) * 2000-04-28 2004-12-28 Denso Corporation Image data compressing method and apparatus which compress image data separately by modifying color
US9143546B2 (en) 2000-10-03 2015-09-22 Realtime Data Llc System and method for data feed acceleration and encryption
US8692695B2 (en) 2000-10-03 2014-04-08 Realtime Data, Llc Methods for encoding and decoding data
US7417568B2 (en) 2000-10-03 2008-08-26 Realtime Data Llc System and method for data feed acceleration and encryption
US7386046B2 (en) 2001-02-13 2008-06-10 Realtime Data Llc Bandwidth sensitive data compression and decompression
US6714145B1 (en) 2002-09-26 2004-03-30 Richard Marques Method and apparatus for integer-based encoding and decoding of bits
US7433519B2 (en) * 2003-04-04 2008-10-07 Avid Technology, Inc. Bitstream format for compressed image data
US7403561B2 (en) * 2003-04-04 2008-07-22 Avid Technology, Inc. Fixed bit rate, intraframe compression and decompression of video
DE102005062077A1 (de) * 2005-12-22 2007-06-28 Micronas Gmbh Verfahren zum Komprimieren von Daten, Verfahren zum Dekomprimieren komprimierter Daten und Vorrichtungen dazu
US7365658B2 (en) * 2006-02-28 2008-04-29 The Board Of Trustees Of The University Of Arkansas Method and apparatus for lossless run-length data encoding
US8321325B2 (en) 2010-03-03 2012-11-27 Verticlear, Inc. Systems and methods for compression of trade-related records
US8533101B2 (en) * 2010-03-03 2013-09-10 Verticlear, Inc. Systems and methods for compression of trade-related records
US8779950B2 (en) 2012-03-05 2014-07-15 Dcba, Llc Command encoded data compression
JP6183101B2 (ja) * 2013-09-25 2017-08-23 富士通株式会社 情報処理システム、制御プログラム及び制御方法
US9543980B2 (en) 2014-10-10 2017-01-10 Massachusettes Institute Of Technology Systems and methods for model-free compression and model-based decompression
US9729168B1 (en) * 2016-07-17 2017-08-08 Infinidat Ltd. Decompression of a compressed data unit
CN110048725B (zh) * 2019-05-14 2023-07-07 四川九洲空管科技有限责任公司 一种基于taws系统的地形数据压缩解压缩算法
CN110811659B (zh) * 2019-10-17 2022-11-18 湖北锐世数字医学影像科技有限公司 时间数据处理方法、装置及系统
CN115396517A (zh) * 2022-08-16 2022-11-25 广东电网有限责任公司 北斗通信数据的处理方法、装置、终端设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4586027A (en) * 1983-08-08 1986-04-29 Hitachi, Ltd. Method and system for data compression and restoration
DE3606869A1 (de) * 1985-03-06 1986-09-11 Ferranti plc, Gatley, Cheadle, Cheshire Vorrichtung zur datenkompression

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58112135A (ja) * 1981-12-26 1983-07-04 Fujitsu Ltd オンラインデ−タ転送におけるデ−タ圧縮方式
US4558302A (en) * 1983-06-20 1985-12-10 Sperry Corporation High speed data compression and decompression apparatus and method
JPS613569A (ja) * 1984-06-18 1986-01-09 Nippon Denki Kanji Syst Kk ランレングス符号化方法
JPS61236224A (ja) * 1985-04-12 1986-10-21 Hitachi Ltd デ−タ圧縮方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4586027A (en) * 1983-08-08 1986-04-29 Hitachi, Ltd. Method and system for data compression and restoration
DE3606869A1 (de) * 1985-03-06 1986-09-11 Ferranti plc, Gatley, Cheadle, Cheshire Vorrichtung zur datenkompression

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19921298A1 (de) * 1999-05-07 2000-11-16 Bosch Gmbh Robert Verfahren zur Komprimierung und Dekomprimierung von Daten und Vorrichtung
US6737991B1 (en) 1999-05-07 2004-05-18 Robert Bosch Gmbh Method and device for compressing and decompressing data

Also Published As

Publication number Publication date
US4872009A (en) 1989-10-03
JPS63148466A (ja) 1988-06-21
JPH0815263B2 (ja) 1996-02-14
DE3742098C2 (de) 1989-08-31

Similar Documents

Publication Publication Date Title
DE3742098C2 (de)
DE2508706C2 (de) Schaltungsanordnung zur Codierung von Datenbitfolgen
DE2735258C3 (de) Nahtstellenkopplungsschaltkreis
EP0137208B1 (de) Verfahren zur Umwandlung eines Eingangsbitstromes
DE2723523A1 (de) Kompression und dekompression von gespeicherten digitaldaten
DE2728889C3 (de) Verfahren und Vorrichtung zum Übertragen eines Zweipegel-Faksimilesignals
DE2460979A1 (de) Verfahren und schaltungsanordnung zur kompensation von impulsverschiebungen bei der magnetischen signalaufzeichnung
DE2821348A1 (de) Digitales dialogsystem
DE2233796B2 (de) Verfahren zur Video-Signal-Kompression und Expansion und Vorrichtungen zur Durchführung des Verfahrens
DE2736967C3 (de) Fernwirkanordnung
DE3743705C2 (de)
DE2557922C3 (de) Verfahren zum Komprimieren von Faksimiledaten und Vorrichtung zu seiner Durchführung
DE1954475A1 (de) Zugriffsstelle einer Datenverarbeitungsanlage
DE2838228B2 (de) Verfahren zum Synchronisieren einer Datenbitfolge
EP0189860B1 (de) Verfahren zur Bildfehlerkorrektur
DE3202437A1 (de) Wiedergabegeraet fuer ein zweiphasiges codedatensignal
DE2525394C3 (de) Verfahren und Schaltungsanordnung zum Übertragen, Einspeichern und Ausspeichern von binärcodierten Datenblöcken
DE3039306C2 (de) Einrichtung für den Empfang von asynchron und bitweise seriell übertragenen Daten
DE2457435B2 (de) Schaltung zur Wiedergewinnung von Daten aus einem Daten- und Taktsignale enthaltenden Signalzug
EP0148413B1 (de) Verfahren und Vorrichtung zur Wiedergabe von digitalisierten Signalen, die als binäre Signale in Form von Pulsen übertragen werden
DE19711057A1 (de) Synchronsignal-Erfassungsvorrichtung
DE3033915C2 (de) PCM-Decodierer.
DE2702746C3 (de) Verfahren und Schaltung zum Codieren von Faksimilesignalgen
DE2513605A1 (de) Verfahren und anordnung zur selektiven abtastung eines balkencode
DE3034754C2 (de) Schaltungsanordnung zur Erzeugung von Adreßsignalen

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee