Coded data generation or conversion – Digital code to digital code converters
Reexamination Certificate
2000-05-15
2003-12-02
Jeanpierre, Peguy (Department: 2819)
Coded data generation or conversion
Digital code to digital code converters
C341S059000, C341S063000, C382S245000
Reexamination Certificate
active
06657561
ABSTRACT:
BACKGROUND OF THE INVENTION
1. The Field of the Invention
The present invention relates to the field of digital scanning devices such as printers. More specifically, the present invention relates to the decompression of run length encoded image data in digital scanning devices.
2. The Relevant Art
Printer systems, such as the printer system
100
shown in
FIG. 1
, are configured to conduct a series of hardware and software operations on digital print data in preparation for printing. These hardware and software operations are often referred to as a pipeline. The digital print data is used by the printer
108
to form a print image on a printing surface. Suitable examples of the printer
108
include a scanning laser beam and an inkjet. An area of the print surface on which the image is formed is referred to as a picture element (PEL or pixel). One scan of the laser beam or inkjet across the print surface forms a row of pixels referred to as a scan row. The print image is formed by multiple scan rows being successively formed on the print surface. Often, the image is further broken up into objects, with a plurality of objects per page.
The types of data passing through the pipeline generally includes text, graphics, images and combinations of these elements. The density of dot placement in modem printers is constantly increasing, particularly with color printing that requires additional bits per PEL over monochrome printing. The time required for the data pipeline to transmit the data from the host computer
102
to the printer
108
is correspondingly increasing. To fully utilize the increasing speed capabilities of print engines, the pipeline of a printer system must be able to transfer data fast enough to supply a continuous stream of data to the printer
108
. This allows the printer
108
to print data continuously.
The depicted printer system
100
utilizes data compression
106
and data decompression
110
to compress and decompress print data in such a manner that it may be transferred to the printer
108
as a high volume, continuous data stream. Data compression refers to a process that attempts to convert data in a given format into an alternative format requiring less space and bandwidth than the original. One example of a data compression format is JPEG. By using data compression and decompression in printer systems such as the printer system
100
, it is possible to transmit data quickly enough to keep the printer
108
printing data continuously.
One further compression technique, referred to as run length encoding, converts a data stream of continuous pixel data into a code for transmission. In so doing, repeated identical bytes of the data stream frequently occur and can be passed in compressed code. For example, using one run length compression method, the pixel data line “aaaabbbbbbbccccc22” is converted into the coded data “a4b7c5d2.” The coded data consists of bytes of pixel information (a, b, c and d) and the number of those bytes that are the same (4, 7, 5 and 1). Each byte contains 8 bits of pixel information.
Once the print data is compressed in the print controller
104
, the print data can be transmitted to the printer, for instance, across a PCI bus interface. Upon arriving at the printer
108
, it becomes necessary to then decompress the print data. Prior art print engines are configured to decompress one incoming data stream at a time, typically, one PEL (which in color printers occupies one byte of print data) per clock cycle. Under this type of decompression scheme, the print engine is required to stop the printing process frequently while waiting for the incoming compressed data stream to be decompressed. This time expenditure in decompressing a data stream significantly slows the printing process.
From the above discussion, it can be seen that it would be beneficial to improve the performance of printing systems by providing a system and method for data decompression that is capable of decompressing incoming print data more quickly so as to supply a continuous stream of print data to a high capacity print engine.
OBJECTS AND BRIEF SUMMARY OF THE INVENTION
The data decompression system of the present invention has been developed in response to the present state of the art, and in particular, in response to the problems and needs in the art that have not yet been fully solved by currently available data decompression systems. Accordingly, it is an overall object of the present invention to provide a data decompression system that overcomes many or all of the above-discussed shortcomings in the art.
To achieve the foregoing object, and in accordance with the invention as embodied and broadly described herein in the preferred embodiment, an improved data decompression system and method are provided.
The data decompression method of the present invention may include receiving a plurality of parallel data streams of compressed print data each having a plurality of bytes into a storage stage such as a barrel shifter. The barrel shifter is fed in groups of bytes as space opens up. The bytes are selected for decompression, and a control byte is selected out. The control byte indicates initially whether the following byte or bytes are run length encoded or not. If not, a number of data bytes, as indicated in the control byte, are passed straight through to the print engine. If the control byte indicates that the following data byte is run length encoded, the control byte also indicates how many times to repeat the data byte. Preferably, the byte is repeated a multiple of the indicated number of times. The process then repeats by selecting the control byte of the next string of bytes.
Additionally, a plurality of such decompression circuits may be operating at one time within a decompression circuit of a color interface card, and a plurality of color interface cards may be resident, each providing decompressed print data to a separate print head. The plurality of decompression circuits are multiplexed within the decompression circuits. Thus, a plurality of parallel data streams are concurrently decompressed. The data decompression system and method are designed to be lossless, simple, efficient, and high capacity in order to enable such a parallel decompression operation.
These and other objects, features, and advantages of the present invention will become more fully apparent from the following description and appended claims, or may be learned by the practice of the invention as set forth hereinafter.
REFERENCES:
patent: 4937681 (1990-06-01), Fujinawa et al.
patent: 5060242 (1991-10-01), Arbeiter
patent: 5572209 (1996-11-01), Farmer et al.
patent: 5673209 (1997-09-01), Heiney et al.
patent: 5768481 (1998-06-01), Chan et al.
patent: 5778253 (1998-07-01), Blair et al.
patent: 5790705 (1998-08-01), Anderson et al.
patent: 5903715 (1999-05-01), Sawano
patent: 6016360 (2000-01-01), Nguyen et al.
patent: 6300885 (2001-10-01), Davenport et al.
International Business Machines - Corporation
Jeanpierre Peguy
Kunzler & Associates
LandOfFree
Data decompression system and method does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Data decompression system and method, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Data decompression system and method will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3144545