Claims Analysis
Total Claims: 15
Claim 1
Independent Claim
137 words
A method of compressing a stream of raw data: providing a memory device having compression active state and a compression inactive state; inputting a raw data segment into the memory device; generating a compressed data segment based on the raw data segment; creating output data based on the compressed data segment when the memory device is in the compression active state, otherwise based on the raw data segment when the memory device is in the compression inactive state; calculating a compression coefficient as a function of a prior compression coefficient, and the sizes of the raw and compressed data segments; and setting the state of the memory device based on the compression coefficient, such that compressed data is output only when compression has recently proven effective, and raw data is output when compression has recently proven ineffective.
Claim 2
Independent Claim
137 words
A method of compressing a stream of raw data: providing a memory device having compression active state and a compression inactive state; inputting a raw data segment into the memory device; generating a compressed data segment based on the raw data segment; creating output data based on the compressed data segment when the memory device is in the compression active state, otherwise based on the raw data segment when the memory device is in the compression inactive state; calculating a compression coefficient as a function of a prior compression coefficient, and the sizes of the raw and compressed data segments; and setting the state of the memory device based on the compression coefficient, such that compressed data is output only when compression has recently proven effective, and raw data is output when compression has recently proven ineffective.
Claim 3
Dependent Claim
54 words
The method of claim 1 wherein generating a compressed data segment includes searching for the raw data segment in a dictionary having a plurality of data segments each having an associated code, and if the raw data segment is found, defining the compressed data segment as the code associated with the raw data segment.
Claim 4
Dependent Claim
27 words
The method of claim 1 wherein calculating the compression coefficient comprises determining a ratio of the sizes of the raw data segment and the compressed data segment.
Claim 5
Dependent Claim
15 words
The method of claim 1 wherein calculating the compression coefficient comprises generating a moving average.
Claim 6
Dependent Claim
22 words
The method of claim 1 including storing the compression coefficient, such that it is retained for calculation of the next compression coefficient.
Claim 7
Dependent Claim
59 words
The method of claim 1 wherein calculating the compression coefficient comprises: recalling a prior compression coefficient; calculating a current compression ratio equal to the size of the raw data segment divided by the size of the compressed data segment; and setting the compression coefficient equal to a weighted average of the prior compression coefficient and the current compression ratio.
Claim 8
Dependent Claim
21 words
The method of claim 6 wherein calculating the compression coefficient includes setting the prior compression coefficient equal to the compression coefficient.
Claim 9
Dependent Claim
33 words
The method of claim 1 wherein setting the state of the memory device comprises, if the compression coefficient is above a predetermined activation threshold, setting the memory device to the compression active state.
Claim 10
Dependent Claim
33 words
The method of claim 1 wherein setting the state of the memory device comprises, if the compression coefficient is below a predetermined deactivation threshold, setting the memory device to the compression inactive state.
Claim 11
Dependent Claim
76 words
The method of claim 1 including the steps of storing the output data in a storage device, then decompressing the output data from the storage device by determining for each segment in the output data whether the segment is a raw data segment or a compressed data segment, and if the segment is a compressed data segment, converting the segment to raw data, such that the resulting data stream is identical to the original data stream.
Claim 12
Independent Claim
124 words
A method of storing and retrieving a stream of data comprising the steps: inputting a sequence of raw data segments; for a first raw data segment, calculating a compression coefficient; after calculating a compression coefficient, determining based on the compression coefficient whether to operate in a raw mode in which subsequent data segments are not compressed, or in a compression mode in which subsequent data segments are compressed; for each subsequent data segment, compressing the segment if in the compression mode; storing the segment; generating a new compression coefficient as a function of a prior compression coefficient; recalling the segment by determining whether or not the segment was compressed, and decompressing the segment if the segment was compressed; and outputting the sequence of segments.
Claim 13
Independent Claim
124 words
A method of storing and retrieving a stream of data comprising the steps: inputting a sequence of raw data segments; for a first raw data segment, calculating a compression coefficient; after calculating a compression coefficient, determining based on the compression coefficient whether to operate in a raw mode in which subsequent data segments are not compressed, or in a compression mode in which subsequent data segments are compressed; for each subsequent data segment, compressing the segment if in the compression mode; storing the segment; generating a new compression coefficient as a function of a prior compression coefficient; recalling the segment by determining whether or not the segment was compressed, and decompressing the segment if the segment was compressed; and outputting the sequence of segments.
Claim 14
Dependent Claim
50 words
The method of claim 11 wherein compressing the segment includes searching for an identical segment entry in a dictionary having a plurality of data segment entries each having an associated code, and if the identical segment entry is found, defining the segment as the code associated with the segment entry.
Claim 15
Dependent Claim
15 words
The method of claim 11 wherein calculating the compression coefficient comprises generating a moving average.