DE10131801B4 - Method for data compression and navigation system - Google Patents

Method for data compression and navigation system Download PDF

Info

Publication number
DE10131801B4
DE10131801B4 DE2001131801 DE10131801A DE10131801B4 DE 10131801 B4 DE10131801 B4 DE 10131801B4 DE 2001131801 DE2001131801 DE 2001131801 DE 10131801 A DE10131801 A DE 10131801A DE 10131801 B4 DE10131801 B4 DE 10131801B4
Authority
DE
Germany
Prior art keywords
literal
sequences
length
control codes
lzss
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
Application number
DE2001131801
Other languages
German (de)
Other versions
DE10131801A1 (en
Inventor
Arnd Braun
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE2001131801 priority Critical patent/DE10131801B4/en
Priority to GB0212613A priority patent/GB2378868A/en
Priority to FR0207994A priority patent/FR2826804B1/en
Priority to JP2002187725A priority patent/JP4191438B2/en
Publication of DE10131801A1 publication Critical patent/DE10131801A1/en
Application granted granted Critical
Publication of DE10131801B4 publication Critical patent/DE10131801B4/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3084Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
    • H03M7/3086Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method employing a sliding window, e.g. LZ77
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

Verfahren zur Datenkompression und/oder Datendekompression nach einem Verfahren des LZSS-Typs unter Verwendung von folgenden Steuercodes: – eines ersten Steuercodes für Literalsequenzen, wobei die Literalsequenzen eine einer oberen Schranke (S1) für die Länge der Literalsequenzen entsprechende erste maximale Länge haben, – eines zweiten Steuercodes für einen Zeiger für einen Rückverweis auf eine zu komprimierende Literalsequenz, wobei der Rückverweis eine zweite maximale Länge und die zu kopierende Literalsequenz eine dritte maximale Länge haben, wobei zur Feststellung der ersten maximalen Länge die Häufigkeitsverteilung der Längen der Literalsequenzen in einem mittels Steuercodes ohne Längenbegrenzung durchgeführten LZSS-Verfahren codierten Musterdatensatz verwendet wird.Method for data compression and / or data decompression according to an LZSS-type method using the following control codes: - a first control code for literal sequences, the literal sequences having a first maximum length corresponding to an upper bound (S1) for the length of the literal sequences, - one second control code for a pointer for a reference to a literal sequence to be compressed, the reference having a second maximum length and the literal sequence to be copied having a third maximum length, the frequency distribution of the lengths of the literal sequences being determined by means of control codes to determine the first maximum length Length limitation performed LZSS method encoded pattern data set is used.

Description

Die Erfindung betrifft ein Verfahren zur Datenkompression und/oder Datendekompression nach einem auf einem Verfahren des LZSS-Typs basierenden Verfahrens. sowie ein entsprechendes elektronisches System, insbesondere ein Navigationssystem.The invention relates to a method for data compression and / or data decompression according to a method based on a method of the LZSS type. and a corresponding electronic system, in particular a navigation system.

Verfahren des LZSS-Typs sind aus der US-A-487 6541 sowie aus T. C. Bell in „Better OPM/L Text Compression, „IEEE Trans. On Communications”, Vol. COM-34, No. 12. Dec., 1986 bekannt.LZSS-type processes are known from the US-A-4876541 and TC Bell in Better OPM / L Text Compression, "IEEE Trans. On Communications", Vol. COM-34, no. Dec. 12, 1986 known.

Bei dem LZSS-Verfahren handelt es sich um eine Weiterentwicklung des Lempel Ziv Verfahrens.The LZSS process is a further development of the Lempel Ziv process.

Bei Anwendung des LZSS-Verfahrens wird in den zuletzt übertragenen Zeichen innerhalb eines Datenfensters einer bestimmten Länge nach einer Zeichenkette gesucht, die mit den nächsten zu übertragenden Zeichen übereinstimmt. Wird eine solche Zeichenkette gefunden, dann wird diese durch einen Rückverweis ersetzt.When using the LZSS method, a character string is searched for in the last transmitted characters within a data window of a certain length, which matches the next character to be transmitted. If such a string is found, then this is replaced by a back reference.

Für die entsprechende Codierung werden zwei unterschiedliche Steuercodes verwendet. Der Steuercode „L” zeigt an, dass als nächstes eine Anzahl „echter” Zeichen, sogenannte Literals, übertragen werden. Dagegen zeigt der Steuercode „C” an, dass aus den schon übertragenen Zeichen eine Zeichenkette kopiert werden soll:

F(s)
– Datenfenster, in dem nach gleichen Zeichenketten gesucht wird. Es umfasst eine Anzahl von s Zeichen vor der aktuellen Leseposition im Eingabedatenstrom.
L(n)
– Steuerzeichen zur Angabe, dass nachfolgend eine Anzahl von n Literals, das heißt, eine Literalsequenz der Länge n übertragen wird.
C(p, n)
– Steuerzeichen, zur Identifikation einer zu kopierenden vorausgegangenen Literalsequenz, d. h. gehe p Zeichen zurück und kopiere von dort n Zeichen.
For the corresponding coding two different control codes are used. The control code "L" indicates that next a number of "literal" characters, so-called literals, are transmitted. On the other hand, the control code "C" indicates that a character string is to be copied from the already transmitted characters:
F (s)
- Data window in which to search for the same character strings. It includes a number of s characters before the current reading position in the input stream.
L (n)
Control characters for indicating that subsequently a number of n literals, that is, a literal sequence of length n, is transmitted.
C (p, n)
Control character, for identifying a preceding literal sequence to be copied, ie return p characters and copy therefrom n characters.

Die 1 zeigt ein Beispiel für die Codierung einer Zeichenkette 1 nach dem aus dem Stand der Technik bekannten LZSS-Verfahrens. Das Ergebnis der Codierung ist die Zeichenkette 2 der 1, wobei es sich bei den Zeichen in Fettschrift um Literals handelt.The 1 shows an example of the encoding of a string 1 according to the LZSS method known from the prior art. The result of the encoding is the string 2 of the 1 , where the characters in bold are literals.

Ferner sind aus dem Stand der Technik verschiedene Varianten des LZSS-Verfahrens bekannt, beispielsweise LZSS mit adaptiver arithmetischer Codierung und LZSS mit adaptiver Hoffman-Codierung. Eine Übersicht hierüber findet sich in dem Proseminar „Redundanz”, Vortrag 5, Maximilian Hrabowski (http://goethe.ira.uka.de/seminare/redundanz/vortrag05/#LZSS). Weitere Darstellungen des LZSS-Verfahrens finden sich unter http://ttrip1.fhworms.de/sem/ws95_96/kompressionsalgorithmen/node19.html und http://ttrip1.fh-worms.de/sem/ws95_96/kompressionsalgorithmen/node20.html.Furthermore, various variants of the LZSS method are known from the prior art, for example LZSS with adaptive arithmetic coding and LZSS with adaptive Hoffman coding. An overview of this can be found in the introductory seminar "Redundancy", lecture 5, Maximilian Hrabowski (http://goethe.ira.uka.de/seminare/redundanz/vortrag05/#LZSS). Further illustrations of the LZSS procedure can be found at http://ttrip1.fhworms.de/sem/ws95_96/kompressionsalgorithmen/node19.html and http://ttrip1.fh-worms.de/sem/ws95_96/kompressionsalgorithmen/node20.html ,

Aus der US-A-5 502 439 ist ein Verfahren zur Kompression binärer Daten nach dem LZSS-Verfahren bekannt. Dabei wird ein Puffer in einem Speicher mit wahlfreiem Zugriff für die vorübergehende Speicherung sogenannter Flag-Bits, die bei der Durchführung des LZSS-Verfahrens generiert werden, verwendet. Weitere Verfahren des LZSS-Typs sind aus US-A-5 701 125 , US-A-5 673 042 und US-A-5 867 114 bekannt.From the US-A-5 502 439 For example, a method of compressing binary data according to the LZSS method is known. In this case, a buffer is used in a random access memory for the temporary storage of so-called flag bits, which are generated in the implementation of the LZSS method. Other methods of the LZSS type are out US-A-5,701,125 . US-A-5,673,042 and US-A-5 867 114 known.

Die EP 0 903 865 A1 befasst sich mit einem Verfahren und einem Gerät zur Datenkompression. Dabei wird ein Eingangsdatenstrom aus Quellsymbolen kodiert, um eine Ausgangssequenz von Zeigern zu erhalten. Dabei wird eine LITERAL-Sequenz verwendet.The EP 0 903 865 A1 deals with a method and a device for data compression. In this case, an input data stream is encoded from source symbols to obtain an output sequence of pointers. A LITERAL sequence is used.

Die Schrift von CRAFT; D. J.: A fast hardware data compression algorithm and some algorithmic extensions. In: IBM Journal. Of Research and Development, Nov. 1998 befasst sich mit einer Datenkompression unter Verwendung von ALDC-Hardware Implementierungen.The font of CRAFT; D.J .: A almost hardware data compression algorithm and some algorithmic extensions. In: IBM Journal. Of Research and Development, Nov. 1998, deals with data compression using ALDC hardware implementations.

Die EP 0 582 907 A2 befasst sich mit einer Datenkompressionsvorrichtung, die die Suche nach übereinstimmenden Zeichenketten und Huffman Verschlüsselung verwendet.The EP 0 582 907 A2 deals with a data compression device that uses the search for matching strings and Huffman encryption.

Die Schrift SALOMON, D.: Data Compression: The Complete Reference”, New York, NY: Springer, US, ISBN: 0-387-98280-9, S. 101–162 u. 357–360 befasst sich mit einer Kompression von Daten.The font SALOMON, D .: Data Compression: The Complete Reference, New York, NY: Springer, US, ISBN: 0-387-98280-9, pp. 101-162 and the like. 357-360 deals with a compression of data.

Der Erfindung liegt die Aufgabe zu Grunde, ein verbessertes Verfahren des LZSS-Typs und ein entsprechendes verbessertes Computerprogrammprodukt sowie elektronisches System zu schaffen.The invention is based on the object to provide an improved method of the LZSS type and a corresponding improved computer program product and electronic system.

Die der Erfindung zu Grunde liegende Aufgabe wird jeweils mit den Merkmalen der unabhängigen Patentansprüche gelöst. Bevorzugte Weiterbildungen der Erfindung sind in den abhängigen Ansprüchen angegeben. The object underlying the invention is achieved in each case with the features of the independent claims. Preferred embodiments of the invention are specified in the dependent claims.

Das erfindungsgemäße Verfahren des LZSS-Typs ermöglicht eine besonders schnelle Datendekompression bei gleichzeitiger guter Kompressionsrate. In einer bevorzugten Ausführungsform der Erfindung werden hierzu die Steuercodes für die Durchführung des LZSS-Verfahrens in Abhängigkeit von der Auftretenshäufigkeit unterschiedlicher Längen von Literalsequenzen, Längen von zu kopierenden Literalsequenzen und den Längen von Rückverweisen festgelegt.The method according to the invention of the LZSS type enables a particularly fast data decompression while maintaining a good compression rate. In a preferred embodiment of the invention, the control codes for carrying out the LZSS method are defined for this purpose as a function of the frequency of occurrence of different lengths of literal sequences, lengths of literals sequences to be copied and the lengths of return references.

Nach einer weiteren bevorzugten Ausführungsform werden jeweils Mengen von Steuercodes gebildet, die zur Erreichung einer weiteren Kompression ihrerseits beispielsweise Hoffman-codiert werden können.According to a further preferred embodiment, respective sets of control codes are formed, which in turn can be Hoffman-coded to achieve further compression in turn.

Gemäß einer weiteren Ausführungsform der Erfindung erfolgen die Rückverweise nur in einem Byte-Raster, welches durch die Breite des verwendeten Datenbusses bzw. des verwendeten Prozessors vorgegeben ist. Hierdurch wird die Verarbeitungsgeschwindigkeit bei der Dekompression nochmals gesteigert. Ebenso wird hierdurch auch die Kompressionsrate erhöht.According to a further embodiment of the invention, the back references are made only in a byte grid, which is predetermined by the width of the data bus or the processor used. This further increases the processing speed during decompression. Likewise, this also increases the compression rate.

Von besonderem Vorteil ist die Anwendung des erfindungsgemäßen Verfahrens für ein elektronisches System, beispielsweise ein Navigationssystem. Bei bekannten Navigationssystemen werden im Allgemeinen CDs für die Speicherung der Navigationsdatenbanken verwendet. Um möglichst viele Navigationsdaten auf einer CD unterzubringen, ist es vorteilhaft, die Navigationsdaten nach einem erfindungsgemäßen Verfahren zu komprimieren. Die Geschwindigkeit der Datenkompression ist dabei praktisch zweitrangig, da diese nur einmal und nicht im laufenden Betrieb, erfolgt.Of particular advantage is the application of the method according to the invention for an electronic system, for example a navigation system. In known navigation systems, CDs are generally used for storing the navigation databases. To accommodate as many navigation data on a CD, it is advantageous to compress the navigation data according to a method of the invention. The speed of the data compression is practically secondary, as this only once and not during operation, takes place.

Für den praktischen Einsatz des Navigationssystems ist dagegen die Dekompressionsgeschwindigkeit von großer Bedeutung, da ständig beim Betrieb des Navigationssystems Navigationsdaten zu dekomprimieren sind, um die Routenplanung und Positionsbestimmung vorzunehmen. Auch insofern ist das erfindungsgemäße Verfahren besonders vorteilhaft, da es eine besonders schnelle Datendekompression ermöglicht.For the practical use of the navigation system, however, the decompression is of great importance, since constantly during operation of the navigation system to decompress navigation data to make the route planning and position determination. Also in this respect, the method according to the invention is particularly advantageous, since it allows particularly fast data decompression.

Im Weiteren wird die Erfindung anhand eines bevorzugten Ausführungsbeispiels mit Bezug auf die Zeichnungen näher erläutert. Es zeigen:Furthermore, the invention will be explained in more detail using a preferred embodiment with reference to the drawings. Show it:

1 die Codierung einer Zeichensequenz nach dem Stand der Technik, 1 the coding of a character sequence according to the prior art,

2 ein Flussdiagramm einer Ausführungsform des erfindungsgemäßen Verfahrens, 2 a flow chart of an embodiment of the method according to the invention,

3 die prozentuale Verteilung von Literalsequenzen und der Länge von Rückverweisen in einem Musterdatensatz, 3 the percentage distribution of literal sequences and the length of references in a pattern record,

4 eine Ausführungsform für die Bestimmung von Mengen von Steuercodes, 4 an embodiment for the determination of sets of control codes,

5 die Codierung einer Zeichenkette mittels der Steuerungscodes der 4, 5 the coding of a character string by means of the control codes of the 4 .

6 die Umcodierung der codierten Zeichenkette der 5 mittels eines weiteren Steuercodes, 6 the transcoding of the encoded character string 5 by means of another tax code,

7 ein Blockdiagramm eines erfindungsgemäßen elektronischen Systems. 7 a block diagram of an electronic system according to the invention.

Das Verfahren der 2 dient zur Ermittlung von Steuercodes für die Anwendung in einer Ausführungsform des erfindungsgemäßen Verfahrens. Dazu wird in dem Schritt 20 zunächst ein Musterdatensatz eingegeben, der in dem Schritt 21 einer Codierung mittels eines an sich aus dem Stand der Technik bekannten LZSS-Verfahrens unterzogen wird. Als Musterdatensatz kann ein typischer Datensatz oder auch ein tatsächlicher Datensatz verwendet werden.The procedure of 2 serves to determine control codes for use in an embodiment of the method according to the invention. This is done in the step 20 First, a pattern record entered in the step 21 a coding by means of a known from the prior art LZSS method is subjected. As a sample data set, a typical data record or even an actual data record can be used.

In dem Schritt 22 wird das durch die Ausführung des Schritt 21 erhaltene Kompressionsergebnis einer statistischen Analyse unterzogen. Dazu wird beispielsweise die Häufigkeitsverteilung der unterschiedlichen Längen von in dem Kompressionsergebnis vorkommenden Literalsequenzen festgestellt, sowie auch die Häufigkeitsverteilungen der Längen von Rückverweisen und der Längen von bei der Anwendung des Schritts 21 kopierten Literalsequenzen.In the step 22 This will be done by the execution of the step 21 obtained compression result of a statistical analysis. For this purpose, for example, the frequency distribution of the different lengths of literal sequences occurring in the compression result, as well as the frequency distributions of the lengths of return references and the lengths of the step in the application of the step 21 copied literal sequences.

Zur Optimierung der Dekompressionsgeschwindigkeit werden im Nachfolgenden maximale Längen festgelegt. Hierzu wird zunächst in dem Schritt 23 eine obere Schranke S1 für die Länge der Literalsequenzen ermittelt, so dass X% der in dem Kompressionsergebnis des Schritt 21 beinhalteten Literale eine Länge ≤ S1 aufweisen. X% kann beispielsweise als 95% angenommen werden. To optimize the decompression speed, maximum lengths are defined below. This is done first in the step 23 determines an upper limit S 1 for the length of the literal sequences, so that X% of the in the compression result of the step 21 contained literals have a length ≤ S 1 . For example, X% can be assumed to be 95%.

Entsprechend wird in dem Schritt 24 eine obere Schranke S2 für die Länge der Rückverweise ermittelt, so dass Y% der Rückverweise eine Länge aufweisen, die ≤ der oberen Schranke S2 ist. Auch hier kann Y% wieder als 95% gewählt werden.Accordingly, in the step 24 determines an upper bound S 2 for the length of the back references, so that Y% of the back references have a length which is ≤ the upper bound S 2 . Again, Y% can be selected as 95% again.

Schließlich wird in dem Schritt 25 noch eine obere Schranke S3 für die Länge der kopierten Literale in dem Kompressionsergebnis des Schritts 21 ermittelt, so dass Z% der kopierten Literalsequenzen eine Länge ≤ der oberen Schranke 33 aufweisen. Z% kann wiederum als 95% gewählt werden.Finally, in the step 25 another upper bound S 3 for the length of the copied literals in the compression result of the step 21 so that Z% of the copied literal sequences have a length ≤ the upper bound 33 exhibit. Z% can again be chosen as 95%.

In dem Schritt 26 werden die für die Codierung der unterschiedlichen Längen jeweils erforderlichen Bitanzahlen ermittelt, das heißt, es werden die Anzahl der Bits B1 zur Codierung von S1 unterschiedlichen Längen von Literalsequenzen, die Anzahl von Bits B2 zur Codierung von S2 unterschiedlichen Längen von Rückverweisen und die Anzahl von Bits B3 zur Codierung von S3 unterschiedlichen Längen zu kopierender Literalsequenzen ermittelt.In the step 26 For example, the number of bits B 1 for encoding S 1 different lengths of literal sequences, the number of bits B 2 for encoding S 2 different lengths of references, and determines the number of bits B 3 for encoding S 3 different lengths of literal sequences to be copied.

Aufgrund der Ergebnisse des Schritts 26 erfolgt in dem Schritt 27 die Festlegung der Steuercodes. Die Unterscheidung zwischen einem L und einem C Steuercode erfolgt durch die erste Bitposition – in dem betrachteten Beispiel 0 für den Steuercode L und 1 für den Steuercode C.Based on the results of the step 26 takes place in the step 27 the determination of tax codes. The distinction between an L and a C control code is made by the first bit position - in the example considered 0 for the control code L and 1 for the control code C.

In dem Steuercode L folgen danach eine Anzahl von B1 Bitpositionen X zur Kodierung der Länge n der nachfolgenden Literalsequenz. In dem Steuercode C folgen nach der führenden 1 zunächst eine Anzahl B2 von Bitpositionen X für die Codierung der unterschiedlichen Längen von Rückverweisen und danach eine Anzahl von B3 von Bitpositionen Y zur Codierung der unterschiedlichen Zeichenlängen der zu kopierenden Literalsequenzen.The control code L is then followed by a number of B 1 bit positions X for encoding the length n of the subsequent literal sequence. In the control code C, after the leading 1, a number B 2 of bit positions X follows first for coding the different lengths of references and then a number of B 3 of bit positions Y for coding the different character lengths of the literals to be copied.

Für einen Musterdatensatz wurden dabei beispielsweise folgende Werte ermittelt: S1 = 128, S2 = 4096 und S3 = 32. Daraus ergibt sich B1 = 7, B2 = 12 und B3 = 5.For example, the following values were determined for a sample data set: S 1 = 128, S 2 = 4096 and S 3 = 32. This results in B 1 = 7, B 2 = 12 and B 3 = 5.

Die Tabellen der 3 zeigen, dass ein hoher Prozentsatz der Daten nur einen kleinen Teil der möglichen Steuerungscodes ausnutzt.The tables of 3 show that a high percentage of the data exploits only a small portion of the possible control codes.

Bei dem untersuchten Musterdatensatz hatten Literalsequenzen der Länge 1 einen Anteil von 50% an den vorkommenden Steuerzeichen L; Literalsequenzen einer Länge von 2 bis 8 einen Anteil von 25% und Literalsequenzen von > 8 bis zu der oberen Schranke S1 einen Anteil von 25%.In the sample data set examined, literal sequences of length 1 had a proportion of 50% of the occurring control characters L; Literal sequences of a length of 2 to 8 a share of 25% and literal sequences of> 8 up to the upper bound S 1 a share of 25%.

Entsprechend hatten Rückverweise mit zu kopierenden Literalsequenzen einer Länge von 1 bis 8 einen Anteil von 70% an den Steuerungscodes C. Ferner haben Rückverweise mit einer Länge des Zeigers p zwischen 1 und 32 Positionen einen Anteil von 50% der Steuerungscodes C, Rückverweise einer Länge zwischen 33 und 512 Positionen einen Anteil von 25% und Rückverweise einer Länge von > 512 bis zu der oberen Schranke einen Anteil von 25%.Similarly, back-references with literal sequences of 1 to 8 length to be copied had a 70% share in the control codes C. Further, pointer-length references p between 1 and 32 positions have 50% of the control codes C, references of length between 33 and 512 positions accounting for 25% and trades of length> 512 for the upper bound accounting for 25%.

Entsprechend werden gemäß der Darstellung der 4 zwei unterschiedliche Mengen von Steuerungscodes L und C gebildet. Für die Steuerungscodes L sind dies die Codes L1, L2 und L3 jeweils für einen Längenbereich der Literalsequenzen von 1, 2 bis 9 und 10 bis 265. Die für die Steuerungscodes L1, L2 und L3 jeweils erforderliche Anzahl von Bits B1 beträgt dabei 0, 3 bzw. 8. In dem hier betrachteten Beispiel wird der Steuerungscode L1 als 001, der Steuerungscode L2 als 010 und der Steuerungscodes L3 als 011 codiert; die jeweilige Länge für die Codierung eines Steuerungscodes beträgt daher in diesem Fall je drei Bit.Accordingly, according to the illustration of 4 two different sets of control codes L and C are formed. For the control codes L, these codes are L 1, L 2 and L 3 each represents a length range of Literalsequenzen from 1, 2 to 9 and 10 to 265. The 3 are each required number of bits for the control code L 1, L 2 and L B 1 is 0, 3 or 8. In the example considered here, the control code L 1 is coded as 001, the control code L 2 as 010 and the control code L 3 as 011; the respective length for the coding of a control code is therefore in this case three bits each.

Die Darstellung der 4 beinhaltet ferner die Codierung für die Steuerungscodes C. In dem betrachteten Beispiel werden sechs Steuerungscodes C1 bis C6 entsprechend der Verteilung der Rückverweise der 3 gebildet. Der Steuerungscode C1 wird dabei als 1001 codiert, der Steuerungscode C2 als 1010 usw..The presentation of the 4 further includes the coding for the control codes C. In the considered example, six control codes C 1 to C 6 corresponding to the distribution of the references of the 3 educated. The control code C 1 is encoded as 1001, the control code C 2 as 1010 etc ..

Die Anzahl der für die Codierung jedes der Steuerungscodes C verwendeten Bits ist gleichbleibend vier; alternativ kann jedoch die Codierung der Steuerungscodes L und C auch beispielsweise nach einem Huffman-Verfahren erfolgen, wobei die Auftretenswahrscheinlichkeit eines bestimmten Codes gemäß der Tabelle der 3 berücksichtigt wird.The number of bits used to encode each of the control codes C is constantly four; Alternatively, however, the coding of the control codes L and C, for example, according to a Huffman method, wherein the probability of occurrence of a particular code according to the table of 3 is taken into account.

Nachdem mit der Tabelle 3 die Anzahl der Codes, und ihre Größe, bestimmt wurde, wird die Häufigkeit der einzelnen Codes an der Gesamtheit der auftretenden Codes bestimmt und nach dieser Häufigkeit die Huffman-Codes vergeben. After having determined the number of codes, and their size, using Table 3, the frequency of the individual codes is determined on the totality of the codes that occur and the Huffman codes are assigned after this frequency.

Wenn die Literal-Codes 40% aller Codes ausmachen und die Copy-Codes mit kurzer Zeichenkette 70% aller Copy-Codes, ergibt sich mit Tabelle 3 folgende Verteilung: Code Häufigkeit L1 20% L2 10% L3 10% C1 21% C2 10,5% C3 10,5% C4 9% C5 4,5% C6 4,5% If the literal codes make up 40% of all codes and the short-code copy codes make up 70% of all copy codes, Table 3 shows the following distribution: code frequency L 1 20% L 2 10% L 3 10% C 1 21% C 2 10.5% C 3 10.5% C 4 9% C 5 4.5% C 6 4.5%

In diesem Fall ergeben sich unterschiedliche Code-Längen, wobei der Code mit der höchsten Häufigkeit die kürzeste Codierung erhält. In dem betrachteten Beispiel ist dies der Code C1.In this case, different code lengths result, with the code with the highest frequency receiving the shortest coding. In the example considered, this is the code C1.

Der Steuerungscode C1 kommt für einen Rückverweis mit einem Zeiger in dem Wertebereich 2 bis 33 Zeichen auf eine Literalsequenz einer Länge von 2 bis 5 Zeichen zur Anwendung. Dabei ist zu berücksichtigen, dass ein Rückverweis nur dann stattfindet, wenn die Länge des Rückverweises mindestens zwei Zeichen beträgt und die Länge der zu kopierenden Literalsequenz, auf die rückverwiesen wird, mindestens zwei ist. Entsprechend beträgt die Anzahl von Bits zur Codierung des Wertebereichs des Zeigers („Pointer”) fünf und die Anzahl von Bits für die Codierung des Wertebereichs 2 bis 5 der Länge der zu kopierenden Literalsequenzen zwei Bits. Entsprechende Zuordnungen finden sich in der Tabelle der 4 auch für die Steuerungscodes C2 bis C6.The control code C 1 is used for a back reference with a pointer in the value range 2 to 33 characters to a literal sequence of a length of 2 to 5 characters. It should be noted that a back reference only takes place if the length of the back reference is at least two characters and the length of the referenced literal sequence to be copied is at least two. Similarly, the number of bits for encoding the pointer's range of values is five and the number of bits for encoding the range of values 2-5 of the length of the literal sequences to be copied is two bits. Corresponding assignments can be found in the table of 4 also for the control codes C 2 to C 6 .

Wenn die Zeichen in der zu komprimierenden Sequenz in einem Byteraster angeordnet sind, beispielsweise einer Breite von zwei oder vier Bytes, kann die Datenkompression weiter optimiert werden, in dem nur die tatsächlich vorkommenden Zeigerlängen in den Steuercodes C abgebildet werden. Beispielsweise lässt sich die Bitanzahl für die Codierung der Zeigerlänge in dem Steuercode C1 für Daten in einem Zweibyteraster von fünf auf vier Bit reduzieren, da ungeradzahlige Rückverweise per Definition nicht vorkommen können. Bei einem Raster von Vierbytelänge lässt sich entsprechend eine Reduktion um ein weiteres Bit erzielen. Das Vorliegen von Daten in einem Byteraster wird auch als Alignment bezeichnet. Das Alignment der Daten überträgt sich entsprechend auf die Rückverweise.If the characters in the sequence to be compressed are arranged in a byte-master, for example a width of two or four bytes, the data compression can be further optimized by mapping only the actually occurring pointer lengths in the control codes C. For example, the bit length for coding the pointer length in the control code C 1 for data in a two-byte pad can be reduced from five to four bits, since odd-numbered references can not occur by definition. With a grid of four-byte length, a reduction by one more bit can be achieved accordingly. The presence of data in a byte grid is also referred to as alignment. The alignment of the data is transferred accordingly to the back references.

Die 5 zeigt die Codierung der Sequenz 1 (vgl. 1) nach einem erfindungsgemäßen Verfahren mittels der Steuerungscodes der 4. Es resultiert dabei das Kompressionsergebnis 3.The 5 shows the coding of the sequence 1 (see. 1 ) by a method according to the invention by means of the control codes of 4 , This results in the compression result 3 ,

Ein Nachteil bei dem Kompressionsergebnis 3 ist, dass die in dem Kompressionsergebnis 3 beinhalteten Literalsequenzen wegen der bitorientierten Codierung der Befehle nicht mehr an Bytegrenzen ausgerichtet sind und deshalb entsprechend geshiftet werden müssen.A disadvantage with the compression result 3 is that in the compression result 3 contained literal sequences because of the bit-oriented coding of the commands are no longer aligned to byte boundaries and therefore must be shifted accordingly.

Um diesen Nachteil zu beheben, werden die Steuerungsbefehle und die Literalsequenzen bei der Codierung zunächst in zwei Datenströme getrennt. Der Datenstrom der Literalsequenzen ist dabei byteorientiert. Der Datenstrom der Steuerungscodes ist bitorientiert.To overcome this drawback, the control commands and the literal sequences are first separated into two streams during encoding. The data stream of the literal sequences is byte-oriented. The data stream of the control codes is bit-oriented.

Nachdem die beiden Datenströme vollständig vorliegen, können sie wieder in einen einzigen Datenstrom zusammengeführt werden, in dem die beiden Datenströme beispielsweise aneinandergehängt werden. Die Trennung der beiden Datenströme wird in dem durch Aneinanderhängen entstandenen Datenstrom durch einen weiteren Steuercode gekennzeichnet. Dieser kann etwa an den Anfang des resultierenden Datenstroms gestellt werden, um von dort die Trennung zwischen den Datenströmen zu referenzieren.After the two data streams are complete, they can be merged back into a single data stream, in which the two data streams are, for example, concatenated. The separation of the two data streams is characterized by a further control code in the stream of data created by concatenation. This can be placed at the beginning of the resulting data stream, for example, in order to refer to the separation between the data streams from there.

Die 6 zeigt ein entsprechendes Beispiel, in dem das Kompressionsergebnis 3 der 5 umcodiert wird. Zunächst erfolgt eine Aufteilung des Kompressionsergebnisses 3 in einen Datenstrom 4 von Steuerungscodes und in einen Datenstrom 5 von Literalsequenzen.The 6 shows a corresponding example in which the compression result 3 of the 5 is recoded. First, a breakdown of the compression result 3 into a data stream 4 of control codes and into a data stream 5 of literal sequences.

Durch Aneinanderhängen der Datenströme 4 und 5 entsteht der resultierende Datenstrom 6. Diesem ist ein Zeiger Z(n) vorangestellt, der auf das erste Zeichen des Datenstroms 5 zeigt.By concatenating the data streams 4 and 5 the resulting data stream is created 6 , This is preceded by a pointer Z (n), which points to the first character of the data stream 5 shows.

Die 7 zeigt ein Blockdiagramm eines Navigationssystems 7, welches einen CD-ROM Abspieler 8 beinhaltet. Das Navigationssystem 7 hat ferner einen Mikroprozessor 9 sowie Speicherbereiche 10, 11 und 12. Auf einer CD-ROM des CD-ROM Abspielers 8 befinden sich nach einem erfindungsgemäßen Verfahren komprimierte Navigationsdaten.The 7 shows a block diagram of a navigation system 7 , which is a CD-ROM player 8th includes. The navigation system 7 also has a microprocessor 9 as well as storage areas 10 . 11 and 12 , On a CD-ROM of the CD-ROM player 8th are located according to a method of the invention compressed navigation data.

Sequenzen solcher Navigationsdaten werden von dem Navigationssystem von dem CD-ROM Abspieler 8 abgefragt und zu dem Navigationssystem 7 übertragen. Bei Empfang eines Datenstroms entsprechend dem Datenstrom 6 der 6 teilt der Mikroprozessor 9 den empfangenen Datenstrom in einem ersten Datenstrom von Steuercodes und in einem zweiten Datenstrom von Literalsequenzen auf, wobei dies unter Verwendung des vorangestellten Zeigers Z(n) erfolgt.Sequences of such navigation data are played by the navigation system from the CD-ROM player 8th queried and to the navigation system 7 transfer. Upon receipt of a data stream corresponding to the data stream 6 of the 6 shares the microprocessor 9 the received data stream in a first data stream of control codes and in a second data stream of literal sequences, this being done using the prefixed pointer Z (n).

Die Steuercodedatensequenz wird in dem Speicherbereich 10 abgelegt, die Literalsequenzen in dem Speicherbereich 11. Zur Decodierung muss der Mikroprozessor 9 dann lediglich die Steuercodes in dem Speicherbereich 10 abarbeiten und dabei auf die Literalsequenzen in dem Speicherbereich 11 zugreifen. Nach Ausführung eines Steuercodes ermittelte Dekompressionsergebnisse werden dann nacheinander in dem Speicherbereich 12 abgelegt, ohne dass Shift-Operationen notwendig sind. Aufgrund dessen lässt sich eine sehr schnelle Decodierung in dem Navigationssystem 7 erreichen, so dass während der Fahrt beispielsweise auf Routenänderungen und dergleichen sehr schnell reagiert werden kann.The control code data sequence becomes in the memory area 10 stored, the literal sequences in the memory area 11 , For decoding the microprocessor must 9 then only the control codes in the memory area 10 process and thereby the literal sequences in the memory area 11 access. Decompression results determined after execution of a control code are then successively stored in the memory area 12 filed without the need for shift operations. Due to this, a very fast decoding can be done in the navigation system 7 reach, so that during the trip, for example, can be responded to route changes and the like very quickly.

Eine weitere Beschleunigung der Dekompression lässt sich erreichen, wenn bei der Kompression nur Rückverweise einer Zeigerlänge, die größer als die Länge der zu kopierenden Literalsequenz ist, zugelassen werden. Beispielsweise wird ein Rückverweis C4 (17, 20) dann aufgespalten in C4 (17, 17) C4 (17, 3). Dies führt zu einer Einsparung von Prozessorleistung.A further acceleration of the decompression can be achieved if in compression only back references of a pointer length greater than the length of the liter sequence to be copied are allowed. For example, a back reference C4 (17, 20) is then split into C4 (17, 17) C4 (17, 3). This leads to a saving of processor power.

Wenn die zu komprimierenden Daten besondere Strukturen beinhalten, kann durch weitere ergänzende Methoden und ggf. weitere Steuercodes eine nochmalige Verbesserung der Kompressionsrate bzw. der Dekompressionszeit erzielt werden:

  • – Einige Datenstrukturen haben Bereiche, in denen eine lange Folge gleicher Zeichen auftritt; diese Sequenzen können zusätzlich vorab mit einem RUN-LENGTH-ENCODING Verfahren codiert werden.
  • – Wenn sich zeigt, dass Steuerungscodesequenzen mehrfach hintereinander wiederholt auftreten, können diese mit einem Wiederholungskommando codiert werden. Der Vorteil ist, dass die entsprechende Steuerungscodesequenz nur einmal decodiert werden muss.
If the data to be compressed contain special structures, a further improvement of the compression rate or the decompression time can be achieved by further supplementary methods and possibly further control codes:
  • - Some data structures have areas where a long string of same characters occurs; these sequences may additionally be pre-coded using a RUN-LENGTH ENCODING method.
  • - If it appears that control code sequences occur repeatedly in succession, they can be coded with a repeat command. The advantage is that the corresponding control code sequence only has to be decoded once.

Claims (13)

Verfahren zur Datenkompression und/oder Datendekompression nach einem Verfahren des LZSS-Typs unter Verwendung von folgenden Steuercodes: – eines ersten Steuercodes für Literalsequenzen, wobei die Literalsequenzen eine einer oberen Schranke (S1) für die Länge der Literalsequenzen entsprechende erste maximale Länge haben, – eines zweiten Steuercodes für einen Zeiger für einen Rückverweis auf eine zu komprimierende Literalsequenz, wobei der Rückverweis eine zweite maximale Länge und die zu kopierende Literalsequenz eine dritte maximale Länge haben, wobei zur Feststellung der ersten maximalen Länge die Häufigkeitsverteilung der Längen der Literalsequenzen in einem mittels Steuercodes ohne Längenbegrenzung durchgeführten LZSS-Verfahren codierten Musterdatensatz verwendet wird.Method for data compression and / or data decompression according to an LZSS-type method using the following control codes: A first control code for literal sequences, the literal sequences having a first maximum length corresponding to an upper bound (S1) for the length of the literal sequences, A second control code for a pointer for a reference to a literal sequence to be compressed, the reference having a second maximum length and the literal sequence to be copied having a third maximum length, wherein, to determine the first maximum length, the frequency distribution of the lengths of the literal sequences is used in a pattern data set encoded using LZSS non-constrained control codes. Verfahren nach Anspruch 1, bei dem zur Festlegung der zweiten maximalen Länge die Häufigkeitsverteilung der Längen der Zeiger in einem mittels eines LZSS-Verfahrens ohne Längenbeschränkung ermittelten komprimierten Datensatzes verwendet wird.Method according to Claim 1, in which, to determine the second maximum length, the frequency distribution of the lengths of the pointers is used in a compressed data record determined by means of an LZSS method without length limitation. Verfahren nach Anspruch 1 oder 2, bei dem zur Festlegung der dritten maximalen Länge die Häufigkeitsverteilung der Längen von zu kopierenden Literalsequenzen in einem mittels eines LZSS-Verfahren ohne Längenbeschränkung ermittelten komprimierten Datensatzes eines Musterdatensatzes verwendet wird.Method according to Claim 1 or 2, in which, to determine the third maximum length, the frequency distribution of the lengths of literal sequences to be copied is used in a compressed data set of a pattern data record determined by means of an LZSS method without length limitation. Verfahren nach einem der vorhergehenden Ansprüche 1 bis 3, bei dem zur Durchführung des LZSS-Verfahrens eine erste Menge erster Steuercodes und eine zweite Menge zweiter Steuercodes verwendet wird. Method according to one of the preceding Claims 1 to 3, in which a first set of first control codes and a second set of second control codes are used to carry out the LZSS method. Verfahren nach Anspruch 4, bei dem die erste Menge jeweils einen ersten Steuercode für Literalsequenzen innerhalb eines bestimmten Wertebereichs beinhaltet.The method of claim 4, wherein the first set each includes a first control code for literal sequences within a certain range of values. Verfahren nach Anspruch 5, bei dem die ersten und die zweiten Steuercodes nach der Auftretentenshäufigkeit der Literalsequenzen bzw. der Häufigkeit des Auftretens von Rückweisen in den betreffenden Wertebereichen nach einem Huffman-Verfahren codiert sind.Method according to Claim 5, in which the first and the second control codes are coded according to the frequency of occurrence of the literal sequences or the frequency of occurrence of rejections in the relevant value ranges according to a Huffman method. Verfahren nach einem der vorhergehenden Ansprüche 4, 5 oder 6, bei dem die zweite Menge je einen Steuercode für einen Wertebereich des Zeigers und einen Wertebereich der zu kopierenden Literalsequenz aufweist.Method according to one of the preceding claims 4, 5 or 6, wherein the second set has a control code for a value range of the pointer and a value range of the literal sequence to be copied. Verfahren nach Anspruch 7, wobei die zweiten Steuercodes Huffmanncodiert sind.The method of claim 7, wherein the second control codes are Huffman coded. Verfahren nach Anspruch 7 oder 8, bei dem der Wertebereich des Zeigers byteweise oder in Vielfachen einer Bytelänge aufgeteilt ist.Method according to Claim 7 or 8, in which the value range of the pointer is divided in bytes or in multiples of a byte length. Verfahren nach einem der vorhergehenden Ansprüche 1 bis 9, bei dem die ersten und zweiten Steuercodes und die Literals in zwei voneinander getrennten Abschnitten des Kompressionsergebnisses abgelegt werden und ein dritter Steuercode zur Identifizierung der Trennung dient.Method according to one of the preceding claims 1 to 9, wherein the first and second control codes and the literals are stored in two separate sections of the compression result and a third control code is used to identify the separation. Computerprogrammprodukt auf einem computerlesbaren Medium oder einer über ein Computernetzwerk ladbaren Datei mit Programmmitteln zur Durchführung eines Verfahrens nach einem der vorhergehenden Ansprüche 1 bis 10, wenn das Computerprogramm auf einem elektronischen System, vorzugsweise einem Navigationssystem, ausgeführt wird.Computer program product on a computer-readable medium or a file loadable via a computer network with program means for performing a method according to one of the preceding claims 1 to 10, when the computer program is executed on an electronic system, preferably a navigation system. Elektronisches System, vorzugsweise Navigationssystem, mit Mitteln zur Durchführung der Verfahrensschritte nach einem der vorhergehenden Ansprüche 1 bis 10.Electronic system, preferably navigation system, with means for carrying out the method steps according to one of the preceding claims 1 to 10. Elektronisches System, vorzugsweise Navigationssystem, nach Anspruch 12 mit einem ersten Speicherbereich (10) zum Ablegen von Steuercodes, einem zweiten Speicherbereich (11) zum Ablegen von Literalsequenzen und einem dritten Speicherbereich (12) zum Ablegen von kopierten Literalsequenzen.Electronic system, preferably navigation system, according to claim 12, having a first memory area ( 10 ) for storing control codes, a second memory area ( 11 ) for storing literal sequences and a third memory area ( 12 ) for storing copied literal sequences.
DE2001131801 2001-06-30 2001-06-30 Method for data compression and navigation system Expired - Lifetime DE10131801B4 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE2001131801 DE10131801B4 (en) 2001-06-30 2001-06-30 Method for data compression and navigation system
GB0212613A GB2378868A (en) 2001-06-30 2002-05-31 Data Compression
FR0207994A FR2826804B1 (en) 2001-06-30 2002-06-27 DATA COMPRESSION METHOD AND NAVIGATION SYSTEM
JP2002187725A JP4191438B2 (en) 2001-06-30 2002-06-27 Data compression method and data decompression method, computer program product and electronic system for implementing the method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE2001131801 DE10131801B4 (en) 2001-06-30 2001-06-30 Method for data compression and navigation system

Publications (2)

Publication Number Publication Date
DE10131801A1 DE10131801A1 (en) 2003-01-16
DE10131801B4 true DE10131801B4 (en) 2013-03-07

Family

ID=7690186

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2001131801 Expired - Lifetime DE10131801B4 (en) 2001-06-30 2001-06-30 Method for data compression and navigation system

Country Status (4)

Country Link
JP (1) JP4191438B2 (en)
DE (1) DE10131801B4 (en)
FR (1) FR2826804B1 (en)
GB (1) GB2378868A (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2148444B1 (en) 2008-07-21 2010-09-15 Sony Computer Entertainment Europe Limited Data compression and decompression
JP2013214832A (en) * 2012-03-30 2013-10-17 Fujitsu Ltd Compression and decompression system, compression device, decompression device, compression and decompression method, and compression program and decompression program
JP6609404B2 (en) 2014-07-22 2019-11-20 富士通株式会社 Compression program, compression method, and compression apparatus
KR101890365B1 (en) * 2017-07-26 2018-08-21 국방과학연구소 Method and apparatus for error detection in compressed data
CN110868222B (en) * 2019-11-29 2023-12-15 中国人民解放军战略支援部队信息工程大学 LZSS compressed data error code detection method and device
JP7475319B2 (en) 2021-11-16 2024-04-26 株式会社日立製作所 STORAGE SYSTEM AND DATA PROCESSING METHOD THEREIN

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0582907A2 (en) * 1992-08-10 1994-02-16 Stac Electronics, Inc. Data compression apparatus and method using matching string searching and Huffman encoding
EP0903865A1 (en) * 1997-09-19 1999-03-24 International Business Machines Corporation Method and apparatus for compressing data

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3397431B2 (en) * 1994-03-16 2003-04-14 富士通株式会社 Data compression method and device and data decompression method and device
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
US5867114A (en) * 1996-02-29 1999-02-02 Mitel Corporation Method and apparatus for performing data compression
US5877711A (en) * 1997-09-19 1999-03-02 International Business Machines Corporation Method and apparatus for performing adaptive data compression

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0582907A2 (en) * 1992-08-10 1994-02-16 Stac Electronics, Inc. Data compression apparatus and method using matching string searching and Huffman encoding
EP0903865A1 (en) * 1997-09-19 1999-03-24 International Business Machines Corporation Method and apparatus for compressing data

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CRAFT, D.J.: A fast hardware data compression algorithm and some algorithmic extensions. In: IBM Journal of Research and Development, Nov. 1998 *
SALOMON, D.: "Data Compression: The Complete Reference", New York, NY: Springer, US, ISBN: 0-387-98280-9, S. 101-162 u. 357-360 *

Also Published As

Publication number Publication date
DE10131801A1 (en) 2003-01-16
FR2826804A1 (en) 2003-01-03
JP2003046392A (en) 2003-02-14
GB2378868A (en) 2003-02-19
GB0212613D0 (en) 2002-07-10
JP4191438B2 (en) 2008-12-03
FR2826804B1 (en) 2004-10-15

Similar Documents

Publication Publication Date Title
DE69935811T3 (en) Frequency domain audio decoding with entropy code mode change
DE69725215T2 (en) Method and device for compressing and decompressing fonts
DE10301362B4 (en) A block data compression system consisting of a compression device and a decompression device, and methods for fast block data compression with multi-byte search
DE69838074T2 (en) METHOD AND DEVICE FOR SIMULTANEOUS ENCRYPTION AND COMPRESSION OF DATA
DE19742417B4 (en) Apparatus and method for performing M-end machine-end-state entropy-coding or entropy-coding with a finite state machine
DE69722085T2 (en) Method and device for compressing and decompressing messages
DE19622045C2 (en) Data compression and data decompression scheme using a search tree in which each entry is stored with an infinite length string
DE10196890B4 (en) Method for performing Huffman decoding
DE69834695T2 (en) Method and device for data compression
DE69433620T2 (en) Data compression method
DE10196847B4 (en) A method for generating Huffman code length information
DE60128146T2 (en) SYSTEM AND METHOD FOR COMPRESSING AND DECOMPRESSING DATA IN REAL TIME
DE10131801B4 (en) Method for data compression and navigation system
EP1323313B1 (en) Method and assembly used for vector transfer
DE19907728C2 (en) Device and method for generating a data stream and device and method for reading a data stream
EP2823568B1 (en) Method for coding a data stream
DE19907729C2 (en) Method and device for generating a data stream from code words of variable length and method and device for reading a data stream from code words of variable length
EP1186175B1 (en) Method and device for compressing and decompressing data
DE19653133C2 (en) System and method for pre-entropic coding
DE102006047465A1 (en) Method and apparatus for compressing and decompressing digital data electronically using context grammar
EP0456893A2 (en) Data compression method
WO2014114506A1 (en) Method for compressing source data using symmetries and device for performing the method
DE3732045C2 (en)
DE4432436A1 (en) Data compression method and device for compressing data
DE10206407A1 (en) Method for (de)compression of data, such as 256th data banks with dual data coding and binary data bank formation

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final

Effective date: 20130608

R084 Declaration of willingness to licence
R071 Expiry of right