VIRTUAL SINGLE PRINTER ENGINE WITH SOFTWARE RIP

Abstract: A multiple print engine configuration allows a plurality of workstations (10) to create individual print jobs and then transfer them to a distributing processor (14). The distributing processor (14) is operable to spool the jobs in a print spooler (20) and then perform a software RIP on the print jobs. The RIP process divides the jobs into multiple individual jobs which are stored in the page buffer (24). An image task manager (26) in conjunction with an engine manager (28) are then operable to selectively distribute the pages to multiple print engines (16). They are distributed in such a manner that they are placed in the output bins (40) in the order that the pages were received in the print jobs.

Description: VIRTUAL SINGLE PRINTER ENGINE WITH SOFTWARE RIP TECHNICAL FIELD OF THE INVENTION The present invention pertains in general to electrophotographic printers and, more particularly, to a plurality of print engines arranged in parallel to process print jobs in a parallel manner. CROSSREFERENCETORELATEDAPPLICATIONS This application is related to U.S. Patent Application Serial No. 08/180,636, filed January 13, 1994, and entitled "Multiple Printer Module Electrophotographic Printing Device" (Atty. Dkt. No. TRYS-22,391). BACKGROUND OF THE INVENTION Electrophotographic print engines have been utilized with both printers and copiers. In a printer, the print engine is typically interfaced with a computer to select and organize fonts or bit map the images. In a copier application, the print engine is interfaced with an input device that scans the image onto the photoconductor drum ofthe print engine. However, a CCD device could also be utilized in this application in the form of a CCD scanner. In either ofthe applications, a conventional print engine for a monochrome process would typically feed a single sheet of paper and pass it by the photoconductor drum for an image transfer process and then pass it to a fuser. Thereafter, the completed sheet will be output. Multiple copy print jobs will sequentially feed the paper in a serial manner. The speed ofthe printer is a function ofthe speed at which the image can be created, the speed at which the image can be transferred to the paper and the speed ofthe fuser. As increased output is required, the speed of each of these elements must be increased. In a monochrome process, only one transfer operation is required. However, in a multipass color process, multiple images must be superimposed on one another on the sheet of paper in a direct transfer system, thus requiring multiple passes ofthe paper or image carrier through the print engine. In a double transfer system, the image is disposed on an intermediate drum and then the composite image transferred to the paper or image carrier. In a multiple print job on a direct transfer system, this requires each sheet of paper to be printed in a serial manner by passing it through the print engine. For either the monochrome process or the color process, a conventional serial feed print engine has the output thereof defined by the speed ofthe input device and the speed ofthe print engine itself. One technique that has been utilized to increase throughput is a tandem print engine. In a tandem print engine, multiple colors can be disposed on the sheet of paper or the image carrier at different stations that are disposed in serial configuration. In this manner, the speed is the same for one, two, three or four color printing. SUMMARY OF THE INVENTION The present invention disclosed and claimed herein comprises a multiple print engine system. The system includes at least one workstation for generating one or more print jobs having a plurality of copies associated with each print job. A REP engines is operable to receive the print job and parse it into separate pages in association with the print job. These are then disposed in a page buffer. A plurality of printers are then provided which are each accessible in parallel. A processor is operable to select pages from the page buffer and output them to select ones ofthe printers in a predetermined order. BRIEF DESCRIPTION OF THE DRAWINGS For a more complete understanding ofthe present invention and the advantages thereof, reference is now made to the following description taken in conjunction with the accompanying Drawings in which: FIGURE 1 illustrates an overall block diagram ofthe present invention; FIGURE 2 illustrates a more detailed block diagram ofthe present invention; FIGURES 3 a, 3b and 3 c illustrate three general processing configurations; FIGURE 4 illustrates a cutaway side view of a three module multiple print engine operated in accordance with the present invention; FIGURE 5 illustrates a flowchart illustrating the parsing operation; FIGURE 6 illustrates a flowchart for the duplex operation for a face up output; and FIGURE 7 illustrates a flowchart for the duplex operation for a face down output. DETAILED DESCRIPTION OF THE INVENTION Referring now to FIGURE 1, there is illustrated a block diagram ofthe overall operation ofthe present invention. A plurality of workstations 10 are provided, which workstations 10 comprise general personal computers or other terminals that allow a user to create print jobs. Each ofthe workstations is networked through a network interface 12, which is a conventional type of general network interface such as an Ethernet® network interface. This allows each workstation 10 to send its print job to a central processor 14, which processor is operable to process the print jobs in accordance with the system ofthe present invention and distribute these print jobs to multiple print engines 16. As will be described hereinbelow, the processor 14 is operable to disassemble the print job, parse the print job into different pages and distribute the parsed pages in a predetermined manner in accordance with the present invention. It should be understood that a print job, although initiated as a series of pages, is sent as a single job to a printer. Typically, printers receive the print job in a conventional manner, which is a string of digits and the printers determine whether the codes are for an end of page command, etc. However, most print operations within a given workstation 10 are designed such that the print job is to be sent to a single printer and, therefore, the codes are all "bundled" in a common string or job. As will be described hereinbelow, in order for the pages to be parsed, it is important to first determine what the beginning and the end of a print job is, then determine what printer to send that distinct and separate page to, in accordance with the system ofthe present invention. Referring now to FIGURE 2, there is illustrated a more detailed block diagram ofthe operation ofthe processor and the parsing operation for distributing the parsed pages to the various print engines 16. The job is received in a serial manner, and is "spooled" in a print spooler 20. This is then passed to a software RIP engine 22 which is operable to essentially decode the print string that is received from the print spooler 20. This effectively divides each print job into pages. These pages are then stored in page buffers 24. Each page in the page buffer essentially constitutes a single print job, such that any print job received from the workstations 10 will then be parsed into a multiple print job file. For example, if a thirty page document were to be sent, this would be sent as a single print job, which would be encoded as such. The software RIP engine 22 is then operable to divide this into thirty separate print jobs. Once the pages are stored in the page buffer 24, then the pages are sent to an image task manager 26 to determine how to organize the pages. This operates in conjunction with an engine manager 28 to determine which ofthe print engines 16 the job is to be passed to. In order to effectively increase the throughput from the engine manager 28, there are provided interface circuits 32 which are referred to as Peripheral Connect Interface (PCI) adaptors. Each print engine 16 has a PCI 32 associated therewith. Therefore, the engine manager 28 interfaces with the PCIs 32 through a parallel bus 36, such that data can be transferred thereto at a fairly high data rate, which is the bus transfer data rate ofthe processor 14. The PCIs 32 therefore provide an increased rate of transfer to the print engine 16. The print engines 16 then place their output into a separate output bin 40 for each of the print engines 16. As will be described hereinbelow, the image task manager 26 is operable to arrange the copies such that they can be placed in the output bins 40 in a predetermined order. For example, ifthere were two print engines, each with a 100 sheet paper supply and four print jobs of 50 copies each were to be sent to the printers and the workstation 10, the system ofthe present invention would parse these print jobs such that the first two print jobs went to the first print engine and the second two print jobs went to the second print engine. If, alternatively, the two print engines with the one hundred sheet paper supplies handled two print jobs, one at a 150 sheets and one at 50 sheets, then the first print engine would receive the first 100 sheets from the first print job, the second print engine would receive the first 50 sheets ofthe first print job and the second 50 sheets ofthe second print job. However, they would be sent to the printer in such a manner that when the paper output trays were unloaded and stacked together, the jobs would be arranged in the appropriate manner. Therefore, even though there are multiple printers, to the user they appear as a virtual single printer. All decision making is made in the processor 14. Referring now to FIGURES 3a-3c, there are illustrated the various configurations illustrating the transfer ofdata between an input and a print engine. In FIGURE 3 a, there is illustrated a general diagram of a software RIP processor 42, which is operable to generate the data necessary to transfer to a print engine 46. However, this is effected over a conventional parallel port 48. In this configuration, the software RIP processor 42 is relatively fast, whereas the print engine 46 is relatively slow. Ofthe time to print, three percent of that time is occupied by the operation of print engine 46, seventy percent is occupied by the software RLP processor 42 and twenty-seven percent is occupied by transferring the data from the processor 42 to the print engine 46. Therefore, the parallel port 48 becomes a key factor in the printing time. In FIGURE 3b, software RIP processor 42 is connected to the print engine 16 via a PCI 50. In this configuration, ninety-five percent ofthe print time is occupied by the software REP processor 42, three percent by the print engine 16 and five percent by the PCI 50. Therefore, by reducing the transfer time from the processor 42 to the print engine 16, an increase in speed has been seen. In FIGURE 3 c, there is illustrated a fairly conventional system wherein a processor 52 is provided, which can be a conventional PC for assembling the print job in a conventional manner and transferring it via a parallel port 54 to an engine 58, which is a conventional print engine having an internal RTP 60 associated with a marking engine 62. The processor 52 is relatively fast, and it occupies virtually no time. Seventeen percent ofthe print time is taken passing the data to the REP 60 through the parallel port 54, whereas eighty percent ofthe print time is occupied with the RIP 60 and only three percent by the marking engine 62. Referring now to FIGURE 4, there is illustrated a cutaway side view of a three print engine module parallel printer which includes three print engines 136, 138 and 40, all stacked one on top ofthe other. Each ofthe engines 136-140 is a multi-pass engine and includes a transfer drum 142 and a photoconductor drum 144. The photoconductor drum 144 rotates in a counterclockwise direction and is pressed against the transfer drum 142 to form a nip 146 therebetween. The photoconductor drum 144 is operable to have the surface thereof charged with a corona 148 and then an imaging device 150 is provided for generating a latent image on the charged surface ofthe photoconductor drum 144. The undeveloped latent image is then passed by four developing stations, three color developing stations, 152, 154 and 156 for the colors yellow, magenta and cyan, and a black and white developing station 158. The color developing stations 152, 154 and 156 each have a respective toner cartridge 160, 162 and 164 associated therewith. The black and white developing station 158 has a black and white toner cartridge 166 associated therewith. Although not described hereinbelow, each ofthe developing stations 152-168 and toner cartridges 160-166 can be removed as individual modules for maintenance thereof. During the print operation, the photoconductor drum 144 is rotated and the surface thereof charged by the corona 148. An undeveloped latent image is then formed on the surface ofthe photoconductor drum 144 and then passed under the developing stations 150-158. In a multi-pass operation, the latent image is generated and only one color at a time utilized in the developing process for the latent image. This latent image is then passed through the nip 146 and transferred to an image carrier, such as paper, which is disposed on the surface ofthe transfer drum 142. Thereafter, the surface ofthe drum 144 is passed under a cleaning station 168, which is operable to remove any excess toner particles which were not passed over to the transfer drum 142 during the transfer operation and also discharges the surface ofthe drum 144. The system then begins generation of another latent image, either for a different color on the same sheet of paper or the first color on a different sheet of paper. In the color operation, multiple passes must be made such that the image carrier, i.e., paper, remains on the surface ofthe transfer drum 142 for the multiple passes. In the first pass, the first latent image is transfeπed to the surface ofthe transfer image carrier and then the image carrier maintained on the transfer drum 142. The next latent image ofthe next color is superimposed on the first latent image, it being noted that the registration is important. This registration is provided by the mechanical alignment ofthe various drums, drive mechanisms, etc. Thereafter, the third color latent image is disposed on the image carrier followed by the fourth color latent image. After the last color latent image is disposed on the image carrier in the color process, a picker mechanism 172 comes down on the surface ofthe transfer drum 142 in order to lift up the edge ofthe image carrier or paper. This is then fed to a fuser mechanism 174. The image carrier is typically comprised of a predetermined weight paper. The transfer drum 142 utilizes electrostatic gripping for the purpose of adhering the paper to the surface ofthe transfer drum 142 for multiple passes. This therefore utilizes some type of charging mechanism for charging the surface ofthe drum 142 at an attachment point 176 where the paper is fed onto the surface of the transfer drum 142. The transfer drum 142 is, in the prefeπed embodiment, manufactured from a controlled resistivity type material that is disposed over an aluminum support layer which is a hollow cylindrical member. A voltage supply is provided that provides a uniform application of voltage from the voltage supply to the underside ofthe resilient layer that is disposed over the surface ofthe aluminum support member. This resilient layer is fabricated from a carbon filled elastomer or material such as butadaiene acrylonitorile, which has a thickness of approximately 3 mm. Overlying this resilient layer is a controlled resistivity layer which is composed of a thin dielectric layer of material at a thickness ofbetween 50 and 100 microns. This controlled resistivity layer has a non-linear relationship between the discharge (or relaxation) point tying and the applied voltage such that, as the voltage increases, the discharge time changes as a function thereof. The paper is then disposed over the surface ofthe drum. The construction of this drum is described in U.S. Patent Application Serial No. , filed October 22, 1993, and entitled, "Buried Electrode Drum for an Electrophotographic Print Engine with a Controlled Resistivity Layer" (Atty. Dkt. No. TRSY-21,888), which is a continuation-in-part of U.S. Patent Application Serial No. 07/954,786, filed September 30, 1992, and entitled, "Buried Electrode Drum for an Electrophotographic Print Engine" (Atty. Dkt. No. TRS Y-21,072), which U.S. Patent Application Serial No. 07/954,786, is incoφorated herein by reference. The paper is retrieved from one of two paper supply bins 178 or 180. The paper supply bin 178 contains one type of paper, typically 8 1 /-." x 11" paper, and the paper bin 180 contains another type of paper, typically 8 £" x 14" paper. The paper bin 178 has the paper stored therein selected by a first gripping roller 182, which is then fed along a paper path 180 into a nip 182 between two rollers and then to a nip 184 between two rollers. This is then fed to a paper path 186 to feed into a nip 188 between two rollers. The paper in the nip 188 is then fed into a nip formed between two precurl rollers 190 and 192, which have different durometers to cause the paper to have a curl bias applied thereto in the direction ofthe curvature of rotation ofthe transfer drum 142. The operation ofthe pre-curl rollers is described in detail in U.S. Patent No. 5,398,107, issued March 14, 1995, and entitled, "Apparatus for Biasing the Curvature of an Image Carrier on a Transfer Drum" (Atty. Dkt. No. TRSY-22,574). The paper from the bin 180 is extracted by a gripping roller 189 and pushed along a paper path 191 to the nip 188 and therefrom to the pre-curl rollers 190 and 192. The paper is fed from the nip between the two pre-curl rollers 190 and 192 at the attachment point 176. At the attachment point 176, an attachment electrode roller 194 is provided which is operable to operate on a cam mechanism (not shown) to urge the roller 194 against the surface ofthe drum 142 to form the attachment nip 176. This is done during the initial attachment ofthe paper to the drum 142. Typically, this attachment electrode roller 194 is connected to ground. The suiface ofthe drum 142 is charged to a positive voltage ofbetween 800- 1,000 volts. The voltage is disposed on the surface ofthe drum 142 by a positive electrode roller 196 that contacts the surface ofthe drum 142 at a point proximate to the photoconductor drum 144. Since the electrode 194 is grounded, the voltage will decrease along the surface thereof until a lower voltage is present at the attachment point 176. When the paper reaches the transfer nip 146, the portion ofthe surface ofthe photoconductor drum 144 in the nip 146 has a potential thereof reduced to ground such that the charged particles will be attracted from the surface ofthe photoconductor drum 144 to the surface ofthe paper on the drum 142. For a multiple pass operation, the attachment electrode 176 will be pulled outward from the drum and the paper allowed to remain on the drum and go through the transfer nip 146 for another pass. When the final pass has been achieved at the transfer nip 146, the picker 172 is swung down onto the surface of the drum 142 to direct the paper on the surface ofthe drum 142 to the fuser 174. A discharge electrode 198 is then swung down into contact with the drum 142 to provide a discharge operation before the surface ofthe drum enters the nip 176 for the next paper attachment process. When the paper is fed into the fuser 174, it is passed into a nip between two rollers 200 and 202, both of which have different durometers. Typically, there is one roller that is formed from a metallic material and one roller that is formed of a soft material. The rollers are oriented with the roller 200 having the smaller durometer, such that a reverse bias curl will be applied to the paper that is the opposite direction ofthe curvature ofthe drum 142. This will remove the curvature added to the paper. One ofthe rollers 200 is heated such that the transferred image is "fused". The paper is then fed into a paper path 204 by a pair of rollers 206. The paper path 204 is fed to a set of output rollers 208, which feed bins 210, 212 and 214 for each ofthe printers 136, 138 and 140. Again, these are conventional print engines, although the speeds ofthe print engines may be different. Referring now to FIGURE 5, there is illustrated a flowchart depicting the operation ofthe present invention. For this description, the following terms are defined: N = number of pages in a single document M = copies E = number of engines P = number of pages i = the engine number. The flowchart is initiated at a start block 230 and then proceeds to a decision block 232. A decision block 232 multiples the number of pages N by the number of copies M and determines whether this number if greater than or equal to the number of engines. If not, then the program flows along a "N" path to a function block 234 to utilize only a single engine for the print job. However, ifthe number is greater than the number of engines, then the program proceeds along the "Y" path to a decision block 236 to determine the number of copies M is greater than the number of engines E. If not, the program flows along a path "N" to a decision block 238 to determine ifthe number of pages in a single document "N" is greater than or equal to the number of engines. If not, the program will flow along a "N" path to a function block 240 to utilize the only M engines with the ith copy in the ith engine. Therefore, ifthere are ten engines and only five copies, then the fifth copy of a job will be in this ith engine. If, however, the number of copies in a single document is greater than the number of engines, then the program will flow along a "Y" path to a function block 242 wherein the copies will be distributed in accordance with the equation: N P = ( 1 ) If it was determined in the decision block 236 that the number of copies M was greater than the number of engines with the number of copies times the number of pages in a single document also being greater than the number of engines, then the program flows along the "Y" path from decision block 236 to a decision block 244 to distribute copies. These are distributed in accordance with the algorithms illustrated in FIGURE 5 with respect to four ofthe engines E^ E 2 , E 3 and E 4 . E,, E 2 and E 3 are also associated with function blocks 246, 248 and 250, each operating in accordance with the above equation, one associated with function block 242. However, E 4 will flow to a function block 256 wherein the distribution will be as follows: P 4 = N x M - ( P ) + P 2 +2 P 3 ) ( 2 ) Referring now to FIGURE 6, there is illustrated a flowchart depicting the operation for a duplex print job. In the flowchart of FIGURE 6, a face up output is considered which is initiated at a block 260. The function block then flows to a decision block 262 to determine ifthe value of N is even. If so, the program flows to a function block 264 to print the jobs N-2, N-4 ..., 2. The program then flows to a decision block 266, which determines whether the value of N is odd. However, if N was odd at decision block 266, the program would flow along the "N" path to the output ofthe decision block 266 and then to a function block 268 to print the N + 1 copies and blank copies and then print the N - 1, N - 3, ... 1 pages. The flowchart would then flow to a function block 270. It is noted that if N is even at decision block 266, the program would flow to the function block 270. Function block 270 is a function block wherein a user annually turns the output stack 180° without flipping the stack and then puts it back in the drawer of the printer from which it came. The program then flows to a decision block 74 to determine ifthe value of N is even, and if so, to the function block 270 along the "Y" path to print the pages 1, 3, 5, ... N-l, and then to a decision block 278 to determine ifthe value of N is odd. The program at this point will flow along the "N" path to a N block 280. However, ifthe value of N is determined to be odd at decision block 274, the program will flow through the output of decision block 278 and to the input of a function block 282 which will print the pages 1, 3, 5, ... N. Referring now to FIGURE 7, there is illustrated a flowchart depicting the duplex operation with a face down output, which is initiated at a block 284 and then proceeds to a decision block 286 to determine ifthe value of N is even. If so, the program then flows to a function block 288 along the "Y" path to print the pages 2, 4, 6, ... N. If it was determined that the value of N is odd, the program would flow along an "N" path to a function block 290 to print the pages 2, 4, 6, ... N-l. The program 288 would flow to a decision block 294, which determines if N is odd and, if not, flows along a "N" path to the output of function block 290, the output of a decision block 294 is input to function block 290. The output of function block 290 flows through a function block 296, as well as the output along the "N" path of decision block 294. Decision block 296 indicates the manual operation wherein the user flips the output stack without turning it 180° and then inputs it back into the drawer ofthe printer from which it was obtained. The program will then flow to a decision block 298 to determine ifthe value of N is even. If so, the program flows along a "Y" path to a function block 300 and the pages 1, 3, 5, ... N-l and then to the input of a decision block 302. Ifthe value of N is odd, the program flows along the "N" path from decision block 298 to the output of decision block 308 and to a function block 306 to print the pages 1, 3, 5, ... N. The output ofthe decision block 302 along the "Y" path also flows to the function block 306 when N is even, and the flowchart flows along the "N" path to an "END" block 310, this being the path from the function block 306. In summary, there has been provided a multiple print engine configuration wherein multiple jobs can be configured as a single print job, transfeπed to a central distribution processor which parses the print jobs into single pages and then determines how to pass them to multiple print engines such that, when output therefrom are such that when a user stacks them up from the output bin the order in which the printers are arranged, or in any type of predetermined order, the pages will be in a sequential manner as the print jobs were received. Although the prefeπed embodiment has been described in detail, it should be understood that various changes, substitutions and alterations can be made therein without departing from the spirit and scope ofthe invention as defined by the appended claims.

Claims: WHAT IS CLAIMED IS: 1. A multiple print engine system, comprising: at least one work station for generating a print job having a plurality of copies associated therewith; a RIP engine for receiving the print job and parsing it to set pages, the pages associated with the print job; a page buffer for storing the pages in association with the print job that they were generated in; a plurality of printers for printing pages and outputting them in an associated output bin; and a processor for selectively outputting pages stored in said page buffers for printing by select ones of said printers in a predetermined order for output in the associated output bin. 2. The multiple print engine system of Claim 1, wherein there are a plurality of work stations provided, each for generating one or more print jobs for input to said REP engine and a spooler disposed prior to said REP engine for receiving said print job in parallel and outputting it serially to said REP engine. 3. The multiple print engine system of Claim 1, wherein said predetermined order is the order ofthe copies in said print job, such that pages output from ones of said print engines, which print engines are arranged in a predetermined order, are in the order that they existed in the print job when the sheets are stacked from the print engine order.

Inventors: BARRY MICHAEL W, ROWE FRANCIS A, TOMPKINS E NEAL, BARRY, MICHAEL, W., ROWE, FRANCIS, A., TOMPKINS, E., NEAL
Applicants: T R SYSTEMS, T/R SYSTEMS
Application year: 1996
Main classification: G06F3
IPC codes: B41J29, G06F3