WO1995019662B1 - Data compression apparatus and method - Google Patents

Data compression apparatus and method

Info

Publication number
WO1995019662B1
WO1995019662B1 PCT/US1994/014823 US9414823W WO9519662B1 WO 1995019662 B1 WO1995019662 B1 WO 1995019662B1 US 9414823 W US9414823 W US 9414823W WO 9519662 B1 WO9519662 B1 WO 9519662B1
Authority
WO
WIPO (PCT)
Prior art keywords
history buffer
match
subsequence
offset
digital sequence
Prior art date
Application number
PCT/US1994/014823
Other languages
French (fr)
Other versions
WO1995019662A1 (en
Filing date
Publication date
Application filed filed Critical
Publication of WO1995019662A1 publication Critical patent/WO1995019662A1/en
Publication of WO1995019662B1 publication Critical patent/WO1995019662B1/en

Links

Abstract

Apparatus and method for compression of a digital sequence. The compressed sequence may be buffered and a compression procedure altered depending on buffer usage. This altering may include changing the depth of searching for matches performed in linked lists depending on the amount of the sequence being buffered. An adjacent element can be found in a linked list using a pointer, and a match can also be found in a history buffer using the same pointer. Frequency values may be updated for symbols based on a sampled subset of the symbols, and a token may be derived, such as by Huffman encoding, for each symbol from the updated frequency values. A subsequence may be encoded using an offset referenced to an earlier match. An insert pointer and a check pointer into a history buffer may be maintained, and a determination can be made as to whether accessing the history buffer is valid based on these check pointers. The maximum amount of the history buffer in which accessing is valid may be set. Decompression of sequences is also presented.

Claims

AMENDED CLAIMS
[received by the International Bureau on 13 July 1995 (13.07.95); original claims 1-26 cancelled; remaining claims unchanged (2 pages)]
27. Apparatus for compressing a digital sequence, comprising: a history buffer for receiving and buffering the digital sequence, match detection logic responsive to the history buffer, for detecting matches between a present subsequence in a history buffer and a previous subsequence in a history buffer, and coding logic responsive to the match detection logic to selectively encode a matched present subsequence as either an absolute offset referenced to the previous subsequence or a relative offset referenced to an earlier match.
28. The apparatus of claim 27 wherein the coding logic further includes logic to generate an indicator for indicating whether the matched present subsequence is encoded as an absolute offset or a relative offset.
29. A method of compressing a digital sequence, comprising: detecting a first match between a first and a second subsequence in the digital sequence, detecting a second match between a third and a fourth subsequence in the digital sequence, the first and second subsequences being different from the third and fourth subsequences, and encoding the fourth subsequence using an offset referenced to the first match.
30. The method of claim 29 wherein the step of encoding is performed in response to a further step of determining, the step of determining including determining whether to encode the fourth subsequence using an offset referenced to the first match instead of an offset from the beginning of a history buffer.
31. The method of claim 29 further including the step of receiving packet-switched data as the digital sequence.
32. A method of decompressing a digital sequence, comprising: receiving a first match token, after receiving the first match token, receiving a second match token including an offset, determining the position of a subsequence in a history buffer based on the offset and the first match token, and substituting the subsequence for the second match token in the digital sequence.
33. The method of claim 32 further including the step of reading an offset mode indication from the second match token to determine that the step of determining is to be based on the second match token and the offset instead of being based on the offset alone.
34. Apparatus for compressing a digital sequence, comprising: a history buffer for receiving and buffering the digital sequence, match detection logic responsive to the history buffer, for detecting matches between a present subsequence in a history buffer and a previous subsequence in a history buffer, and control logic for identifying a portion of the history buffer as a valid portion, the control logic further being responsive to the match detection logic to determine whether the matches detected by the match detection logic are within the valid portion of the history buffer.
35. The apparatus of claim 34 wherein the control logic is further operations to control the maximum size of the valid portion of the history buffer.
36. A method of compressing a digital sequence, comprising: maintaining an insert pointer and a check pointer into a history buffer, inserting characters at the insert pointer, accessing the history buffer to search for matches in the history buffer, and determining whether the step of accessing the history buffer is valid based on the insert and check pointers.
37. The method of claim 36 wherein the step of maintaining includes maintaining the check pointer to set the maximum amount of the history buffer in which the step of determining will determine that the step of accessing is valid.
38. The method of claim 37 further including the step of initializing the buffer by setting the insert and check pointers to be equal.
PCT/US1994/014823 1994-01-13 1994-12-21 Data compression apparatus and method WO1995019662A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US18118794A 1994-01-13 1994-01-13
US08/181,187 1994-01-13

Publications (2)

Publication Number Publication Date
WO1995019662A1 WO1995019662A1 (en) 1995-07-20
WO1995019662B1 true WO1995019662B1 (en) 1995-08-10

Family

ID=22663256

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1994/014823 WO1995019662A1 (en) 1994-01-13 1994-12-21 Data compression apparatus and method

Country Status (1)

Country Link
WO (1) WO1995019662A1 (en)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7190284B1 (en) 1994-11-16 2007-03-13 Dye Thomas A Selective lossless, lossy, or no compression of data based on address range, data type, and/or requesting agent
JP2840589B2 (en) * 1996-02-09 1998-12-24 富士通株式会社 Data compression device and data decompression device
GB9606465D0 (en) * 1996-03-27 1996-06-05 Memory Corp Plc Data conversion device
GB2323754B (en) * 1997-01-30 2002-03-20 Peter Graham Craven Lossless compression using iir prediction filters
US6879266B1 (en) 1997-08-08 2005-04-12 Quickshift, Inc. Memory module including scalable embedded parallel data compression and decompression engines
US5945933A (en) * 1998-01-27 1999-08-31 Infit Ltd. Adaptive packet compression apparatus and method
US6393149B2 (en) * 1998-09-17 2002-05-21 Navigation Technologies Corp. Method and system for compressing data and a geographic database formed therewith and methods for use thereof in a navigation application program
IL127434A0 (en) * 1998-12-07 1999-10-28 Rdc Comm Ltd Apparatus and methods for real time lossless compression
US7129860B2 (en) 1999-01-29 2006-10-31 Quickshift, Inc. System and method for performing scalable embedded parallel data decompression
US6822589B1 (en) 1999-01-29 2004-11-23 Quickshift, Inc. System and method for performing scalable embedded parallel data decompression
US6819271B2 (en) 1999-01-29 2004-11-16 Quickshift, Inc. Parallel compression and decompression system and method having multiple parallel compression and decompression engines
US7538694B2 (en) 1999-01-29 2009-05-26 Mossman Holdings Llc Network device with improved storage density and access speed using compression techniques
US6885319B2 (en) 1999-01-29 2005-04-26 Quickshift, Inc. System and method for generating optimally compressed data from a plurality of data compression/decompression engines implementing different data compression algorithms
US6208273B1 (en) 1999-01-29 2001-03-27 Interactive Silicon, Inc. System and method for performing scalable embedded parallel data compression
US6236341B1 (en) * 2000-03-16 2001-05-22 Lucent Technologies Inc. Method and apparatus for data compression of network packets employing per-packet hash tables
US6523102B1 (en) 2000-04-14 2003-02-18 Interactive Silicon, Inc. Parallel compression/decompression system and method for implementation of in-memory compressed cache improving storage density and access speed for industry standard memory subsystems and in-line memory modules
US6515598B2 (en) * 2000-12-22 2003-02-04 Cilys 53, Inc. System and method for compressing and decompressing data in real time
WO2003032296A1 (en) * 2001-10-03 2003-04-17 Sony Corporation Encoding apparatus and method, decoding apparatus and method, and recording medium recording apparatus and method
US6657565B2 (en) * 2002-03-21 2003-12-02 International Business Machines Corporation Method and system for improving lossless compression efficiency
US8514697B2 (en) 2010-01-08 2013-08-20 Sycamore Networks, Inc. Mobile broadband packet switched traffic optimization
US9325625B2 (en) 2010-01-08 2016-04-26 Citrix Systems, Inc. Mobile broadband packet switched traffic optimization
US8560552B2 (en) 2010-01-08 2013-10-15 Sycamore Networks, Inc. Method for lossless data reduction of redundant patterns
US8775776B2 (en) 2012-01-18 2014-07-08 International Business Machines Corporation Hash table using hash table banks
US10432216B1 (en) * 2017-06-05 2019-10-01 Amazon Technologies, Inc. Configurable compression circuit
CN108233942B (en) * 2018-01-08 2022-02-22 武汉斗鱼网络科技有限公司 Method and device for data storage and computer equipment
CN116886104B (en) * 2023-09-08 2023-11-21 西安小草植物科技有限责任公司 Intelligent medical data analysis method based on artificial intelligence
CN117294397B (en) * 2023-11-27 2024-02-20 深圳市正东兴通讯设备有限公司 Wireless communication data storage method and system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3605032A1 (en) * 1986-02-18 1987-08-20 Thomson Brandt Gmbh DIGITAL MESSAGE TRANSMISSION METHOD
GB8722394D0 (en) * 1987-09-23 1987-10-28 British Telecomm Video coder
US5159336A (en) * 1991-08-13 1992-10-27 Iomega Corporation Tape controller with data compression and error correction sharing a common buffer
US5140321A (en) * 1991-09-04 1992-08-18 Prime Computer, Inc. Data compression/decompression method and apparatus

Similar Documents

Publication Publication Date Title
WO1995019662B1 (en) Data compression apparatus and method
CN108880556B (en) LZ 77-based lossless data compression method, error code recovery method, encoder and decoder
US5374916A (en) Automatic electronic data type identification process
US4955066A (en) Compressing and decompressing text files
CA2299902C (en) Method and apparatus for data compression using fingerprinting
US5870036A (en) Adaptive multiple dictionary data compression
US7770091B2 (en) Data compression for use in communication systems
WO1995019662A1 (en) Data compression apparatus and method
KR100353171B1 (en) Method and apparatus for performing adaptive data compression
EP0313191B1 (en) Data compression system with expansion protection
EP0795965A2 (en) System for maintaining a data base log
EP1744461A2 (en) Data compression
JPH04503421A (en) Adaptive data compression device for tape drive systems
CA2260883A1 (en) Data compression and decompression system with immediate dictionary updating interleaved with string search
KR100314419B1 (en) Method and apparatus for encoding strained Rempel-Jib 1
EP0199088A2 (en) Method and apparatus for modifying a run-length limited code
JP2004518327A (en) Data compression method using identifier to refer to strings in reverse
JPH07212241A (en) System for compressing voice and thawing it in digital way real-time-wise
JP2003526986A (en) Arithmetic decoding of arithmetically encoded information signals
US6405155B2 (en) Data logging
KR100703577B1 (en) Coupled error code protection for multi-mode vocoders
GB2360915A (en) Run length compression encoding of selected bits of data words
US6107989A (en) Adaptive cursor for interpreting displays of grouped data words
KR940003661B1 (en) Data condensing and expanding method of pulse code modulation system
US6819272B2 (en) System, method and computer readable medium for compressing a data sequence for partial decompressing