Patent ID: 6097499
Filing Date: 2000-08-01
Classification: G06F,G06K,H04L

Abstract:
A method for transferring data between a printer that operates in a plurality of data passes, and a host, said method comprising:(a) providing a host, a printer, and an isochronous data channel therebetween that provides a guaranteed and predictable data transfer bandwidth over at least a single print pass, said printer having a memory circuit, a processing circuit, and a print engine, said memory circuit containing a buffer that is sized to prevent a data overflow;(b) transmitting from said host to said printer over said isochronous data channel a message that print data is available for a print pass, and starting said print engine so as to be ready for receiving print data for consumption;(c) transmitting from said printer to said host over said isochronous data channel an initial feedback message that said printer is ready to receive print data from said host for said print pass, said initial feedback message exhibiting periodic timing;(d) transmitting from said host to said printer over said isochronous data channel at least one frame of print data, storing if necessary said at least one frame of print data in the memory circuit of said printer, and initiating consumption of said print pass before all data necessary to complete said print pass has been received at said printer;(e) further transmitting from said printer to said host over said isochronous data channel at least one further feedback message that said printer is ready to receive further print data from said host for said print pass, said at least one further feedback message exhibiting periodic timing;(f) after receiving said at least one further feedback message from said printer, further transmitting from said host to said printer over said isochronous data channel at least one additional frame of print data before completion of said print pass, said at least one additional frame of print data containing sufficient data to complete said print pass, once initiated, without interruption; and(g) wherein a data size per frame is variable, and said at least one further feedback message further instructs said host as to the data size of each at least one additional frame of print data, thereby resulting in a necessary size of said buffer being made smaller.