Evaluating alternative encoding solutions during data compression
AssigneeSeagate Technology LLC
InventorsDonald Preston Matthews, Jr., David Orrin Sluiter
Life of this patent
Estimating the term…
Abstract
Method and apparatus for compressing data. In accordance with various embodiments, an input string of data bits is received and arranged into fixed-sized chunks. Multiple successive chunks of the input string are compared to previously received chunks of the input string during a single clock cycle. At least two alternative encoding solutions are identified based on matches obtained during said comparison. The input string is compressed to form a compressed output string using a selected one of the at least two alternative encoding solutions that achieves a fewer number of bits in said output string.
Claims20
A method comprising:
- receiving an uncompressed input string of data bits arranged into fixed-sized chunks;
- comparing a multiple number of successive chunks of the input string to previously received chunks of the input string during a single clock cycle;
- identifying at least two alternative encoding solutions based on matches obtained during the comparing step, each solution having a different number of indexes and a different number of literals;
- and
- compressing the input string to form a compressed output string using a selected one of the at least two alternative encoding solutions that achieves a fewer number of bits in said output string.
An apparatus comprising:
- a memory which stores previously received chunks of an input string of data bits;
- a match module which compares multiple successive chunks of the input string to the previously received chunks during a single clock cycle;
- and
- an encoding module which identifies at least two alternative encoding solutions based on different combinations of matches obtained by the match module for a common set of said chunks, and compresses the input string to form a compressed output string using a selected one of the at least two alternative encoding solutions that achieves a fewer number of bits in said output string.
An apparatus comprising a data compression engine adapted to identify a plurality of alternative lossless data encoding solutions available to encode a selected set of successive chunks of uncompressed input data resident in a first memory, and to employ a selected one of said plurality of available encoding solutions to generate a compressed data set in a second memory, each solution having a different total number of indexes, each index having a starting address and a run length.
Dependencies are inferred from the claim text.