Data compression/decompression system
First Claim
1. A data processing system, comprising:
- an input memory configured to receive a data stream;
a plurality of data compressors communicatively coupled with the input memory, each of the plurality of data compressors configured to apply a data compression algorithm to the data stream to generate a respective compressed version of the data stream; and
a controller communicatively coupled with each of the plurality of data compressors, the controller configured to determine which of the plurality of data compressors generated the smallest compressed version of the data stream, the controller further configured to forward the smallest compressed version of the data stream.
2 Assignments
0 Petitions
Accused Products
Abstract
An improved system and method for data compression/decompression are disclosed. A data compression system may comprise an input memory, a plurality of data compressors, and a controller. In preferred embodiments, the controller selectively forwards data compressed with the most efficient data compressor over sub-portions of a data stream. A data decompression system may be implemented with an input memory, a data compression method identifier, and a plurality of data decompressors. In preferred embodiments, the data compression method identifier selectively applies an appropriate data decompressor over sub-portions of a compressed data stream. A method for compressing data can be summarized by the following steps: receiving a data stream; applying a plurality of data compression algorithms to the data stream; determining which of the plurality of data compression algorithms was most effective; buffering the compressed data; and generating a record indicative of which the applied data compression algorithms. A method for decompressing data can be summarized as follows: receiving a compressed data stream; identifying which of a plurality of data decompression algorithms is appropriate to apply over a sub-portion of the compressed data stream; determining the length of the compressed sub-portion of the data stream; and applying the identified data decompression algorithm to the received compressed data stream for the length in bytes generated in the determining step.
94 Citations
38 Claims
-
1. A data processing system, comprising:
-
an input memory configured to receive a data stream;
a plurality of data compressors communicatively coupled with the input memory, each of the plurality of data compressors configured to apply a data compression algorithm to the data stream to generate a respective compressed version of the data stream; and
a controller communicatively coupled with each of the plurality of data compressors, the controller configured to determine which of the plurality of data compressors generated the smallest compressed version of the data stream, the controller further configured to forward the smallest compressed version of the data stream. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method for compressing data, comprising:
-
receiving a data stream;
applying a plurality of data compression algorithms to the received data stream;
determining which of the plurality of data compression algorithms was most effective over a sub-portion of the data stream;
buffering the compressed version of the data stream identified in the determining step; and
generating a record indicative of which of the data compression algorithms was most effective. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A data processing system, comprising:
-
an input memory configured to receive a compressed data stream;
a controller communicatively coupled with the input memory, the controller configured to apply information indicative of the data compression algorithm used to compress the data stream in order to generate a control signal; and
a plurality of data decompressors each selectively coupled to an output of the input memory to receive the compressed data stream, wherein a particular data decompressor is coupled to the input memory in response to the control signal to generate a reproduction of a clear text version of the compressed data stream. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23)
-
-
24. A method for decompressing compressed data, comprising:
-
receiving a compressed data stream;
identifying which of a plurality of data decompression algorithms is appropriate to apply over a sub-portion of the data stream;
determining the length of the compressed sub-portion of the data stream; and
applying the identified data decompression algorithm to the received compressed data stream for the length in bytes generated in the determining step. - View Dependent Claims (25, 26, 27, 28)
-
-
29. A computer program embodied on a computer-readable medium, the computer program, comprising:
-
a first code segment that receives a data stream, the first code segment configured to forward the data stream to a plurality of data compression algorithms to generate a plurality of compressed representations of the data stream; and
a second code segment configured to receive and compare the compressed representations of the data stream, wherein the second code segment selectively forwards one of the plurality of compressed representations. - View Dependent Claims (30, 31, 32, 33, 34)
-
-
35. A computer program embodied on a computer-readable medium, the computer program, comprising:
-
a first code segment configured to receive a compressed data stream, the first code segment configured to identify one of a plurality of data decompression algorithms wherein the identified data decompression algorithm is the corollary to a data compression algorithm used to compress an original version of the data stream; and
a second code segment configured to apply the identified data decompression algorithm to reconstruct the original data stream. - View Dependent Claims (36, 37, 38)
-
Specification