Parallel data compression and decompression
First Claim
1. Apparatus for parallel data compression and decompression, comprising:
- N data compression engines, where "N"=number of data words to be compressed in parallel;
packing means for receiving from the N data compression engines N data word codes in parallel, for serially packing received N data word codes in an order determined by order of compression and byte count for each of the N data word codes, and for transmitting N packed data word codes as a single code word data string;
N data decompression engines; and
unpacking means for receiving from the packing means the single code word data string, unpacking the single code word data siring, and sending N unpacked data word codes on N parallel outputs to the N data decompression engines in a order based on length of a single code word data string represented by an unpacked data word code last decoded by either the decompression engine for that unpacked data word code if the decompression engine is idle, or the length of the single code word data string that has been decoded so far if the decompression engine is currently working on an unpacked data word code.
4 Assignments
0 Petitions
Accused Products
Abstract
An apparatus and method for parallel data compression and decompression uses packing and unpacking of data which has multi-variable components, for example, relational multi-variable content data such as tristimulus color space data used in color hard copy applications. Multiple input words are compressed in parallel compression engines and fed in parallel to a packer device which configures the codes in an order determined by order of compression and byte count for each word into a single bit string code. In the decompression cycle of the process, an unpacker device separates the single bit string code based upon length of a data string represented by a code word last decoded by either the decompression engine for that code word if the decompression engine is idle, or the length of the string that has been decoded so far if the decompression engine is currently working on a code.
-
Citations
17 Claims
-
1. Apparatus for parallel data compression and decompression, comprising:
-
N data compression engines, where "N"=number of data words to be compressed in parallel; packing means for receiving from the N data compression engines N data word codes in parallel, for serially packing received N data word codes in an order determined by order of compression and byte count for each of the N data word codes, and for transmitting N packed data word codes as a single code word data string; N data decompression engines; and unpacking means for receiving from the packing means the single code word data string, unpacking the single code word data siring, and sending N unpacked data word codes on N parallel outputs to the N data decompression engines in a order based on length of a single code word data string represented by an unpacked data word code last decoded by either the decompression engine for that unpacked data word code if the decompression engine is idle, or the length of the single code word data string that has been decoded so far if the decompression engine is currently working on an unpacked data word code. - View Dependent Claims (2)
-
-
3. A method for parallel encoding of a data set wherein the data set of relational multi-variable content data set forth in data words, one for each variable of the data, the method comprising the steps of:
-
encoding data words in parallel into coded data words, one for each variable of the data; transmitting the coded data words in parallel; receiving the coded data words in a means for packing the coded data words into a single word bit string; packing the coded data words into a single word bit string in an order based upon order of compression and byte count for each of the coded data words, respectively; and transmitting the single word bit string from the means for packing. - View Dependent Claims (4, 5)
-
-
6. A method for parallel decoding of data wherein the data comprises a series of single word bit strings containing a code for multiple coded data code words comprising data of relational multi-variable content, one data word for each of the variables, the method comprising the steps of:
-
receiving each of the single word bit strings in a means for unpacking the multiple coded data words; providing a plurality of decompression engines, one for each of the variables of the data; unpacking each of the single word bit strings in an order based upon length of a data string represented by a coded data word last decoded by either the decompression engine for that coded data word if the decompression engine is idle, or the length of the single word bit string that has been decoded so far if the decompression engine is currently working on a coded data word; sending each unpacked coded data word to a respective decompression engine for the respective variable of the data. - View Dependent Claims (7, 8)
-
-
9. A parallel data compression and decompression method for the transmission of tristimulus color space data for a color image comprising a plurality of pixels, the method comprising the steps of:
-
providing at least three parallel data compression engines and at least three parallel data decompression engines; compression encoding in parallel at least three primary color space data words representative of a pixel into at least three data codes, one for each primary color variable of the data, in one each of the at least three parallel data compression engines, respectively; transmitting the at least three data codes in parallel from the at least three parallel data compression engines; receiving the at least three data codes in a means for packing the data codes into a single code bit string; packing the at least three data codes in an order based upon order of compression and byte count for each data code, respectively; transmitting the single code bit string; receiving the single code bit string in a means for unpacking the data codes from the single code bit string; unpacking the single code bit string in an order based upon length of a single code bit string represented by a data code last decoded by either the decompression engine for that code word if the decompression engine is idle, or the length of the single code bit string that has been decoded so far if the decompression engine is currently working on a data code; and sending each unpacked data code to a respective decompression engine for the respective variable of the color space data. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A color hard copy data compression and decompression system comprising:
-
data compression means having at least three data compression engines, each having an input for receiving a color data word representative of a primary color variable for a pixel to be produced in hard copy and an output for providing at least three codes in parallel, one each representative of each respective color data word, packing means for packing at least three respective codes received from the at least three data compression engines into a single pixel code, the packing means having at least three first in, first out buffers for receiving the at least three respective codes, and means for ordering the at least three respective codes determined by order of compression and byte count for each code, a packing means output for transmitting all bits of the single pixel code; and data decompression means having at least three decompression engines; unpacking means for receiving the single pixel code from the packing means output and for unpacking the single pixel code into the at least three respective codes and for transmitting the at least three respective codes to respective decompression engines based upon length of a data string represented by a code last decoded by either the decompression engine for that code if the decompression engine is idle, or the length of the string that has been decoded so far if the decompression engine is currently working on a code. - View Dependent Claims (16, 17)
-
Specification