WO2006054618A1 - Method and device for transferring data to peripheral device - Google Patents

Method and device for transferring data to peripheral device Download PDF

Info

Publication number
WO2006054618A1
WO2006054618A1 PCT/JP2005/021086 JP2005021086W WO2006054618A1 WO 2006054618 A1 WO2006054618 A1 WO 2006054618A1 JP 2005021086 W JP2005021086 W JP 2005021086W WO 2006054618 A1 WO2006054618 A1 WO 2006054618A1
Authority
WO
WIPO (PCT)
Prior art keywords
data set
transfer
compressed
current data
end time
Prior art date
Application number
PCT/JP2005/021086
Other languages
French (fr)
Japanese (ja)
Inventor
Tomokazu Nagai
Original Assignee
Naltec Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Naltec Inc. filed Critical Naltec Inc.
Priority to JP2006545111A priority Critical patent/JPWO2006054618A1/en
Publication of WO2006054618A1 publication Critical patent/WO2006054618A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1245Job translation or job parsing, e.g. page banding by conversion to intermediate or common format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1284Local printer device

Definitions

  • the present invention relates to a control method and apparatus including a process of transferring data to a peripheral device.
  • Peripherals can generate the output intended by the host device by appropriately converting and reconfiguring the transferred data. Since the transfer time is reduced for compressed transfer data, generally the processing time of the entire job for transferring the data from the host to a peripheral device such as a printer can be reduced.
  • the time required for compression and the data transfer time do not depend only on the amount of data.
  • the time required for compression also depends on the compression method, the type of data, and the host CPU occupancy rate.
  • the amount of data after compression is not always constant, which affects the transfer time.
  • the transfer time depends not only on the transfer speed (communication speed) but also on the time and timing for releasing the buffer in the peripheral device.
  • the transfer data is sent in sequence, and the time required for compression and the transfer time can always vary during the job.
  • One aspect of the present invention is a peripheral device control method including a step of dividing output data from a host device into a plurality of sets of transfer data and transferring the data to the peripheral device.
  • a transfer step a plurality of sets of transfer data are sequentially compressed and stored in a memory, and either a compressed data set or an uncompressed data set is selected and transferred.
  • this transfer process is
  • the first end time when the compressed current data set is transferred and the current uncompressed time Predict the second end time when the current data set is transferred, transfer the current data set with a shorter predicted end time
  • the transfer data set is referred to as a set or a data set.
  • the data transfer rate may vary during a job. Therefore, it is desirable that the transfer process includes predicting the first end time and the second end time based on the transfer rate of the previous data set.
  • the transfer rate of the previous transfer data can be determined on the data processing device side based on a signal indicating that the reception from the peripheral device is completed, for example, a transfer permission signal.
  • the transferring step includes obtaining the transfer speed or information for determining the transfer speed together with the peripheral device power transfer permission signal.
  • the first data set of the transfer data of the job is transferred in an uncompressed state. Therefore, since the transfer method of the next data set is selected depending on the transfer time of the first data set, it is possible to save time and processing time for transferring the test data.
  • the buffer capacity of the peripheral device allocated for data transfer is Greatly affects data transfer time. If the amount of data in the data set to be transferred is larger than the free capacity of the buffer and the buffer release speed is slower than the transfer speed, it is necessary to wait for the buffer to be released during the transfer. In general, since the buffer release rate is slower than the data transfer rate, the buffer release rate affects the data set transfer time.
  • the transfer process is larger than the free capacity of the buffer of the peripheral device assigned to the data transfer, the compressed data set is compressed. Hope to include transferring, and so on.
  • the transfer speed may be determined depending on the release speed or waiting for the buffer free space multiple times. Is expensive. For this reason, the prediction accuracy of the second end time is greatly reduced. Therefore, it is desirable not to predict the end time and transfer the compressed data set.
  • the predicted data amount of the compressed current data set is smaller than the free space of the peripheral device buffer and the data amount of the uncompressed current data set If it is greater than the free space, it should include predicting the second end time based on the previous data set transfer rate and buffer release rate. In this case, the accuracy of predicting the second end time can be improved by taking into account the release rate of the noffer.
  • the release rate of the noffer is data that depends on the peripheral device, so it can be set in the host device in advance.
  • the peripheral device can measure the release rate by an appropriate method and send it to the host device along with the transfer permission signal.
  • a compressed data set or an uncompressed data set is selected according to the state that changes during the progress of the output job, not just the state when the output job is started. Can be transferred to. For this reason, the host device can also provide a method suitable for improving the processing speed of jobs that transfer and output data to peripheral devices (peripheral devices).
  • the method of one embodiment of the present invention includes combinations with other optimization methods.
  • the transferring step may include setting an optimal compression method according to the initial conditions of the output job.
  • Another aspect of the present invention is an apparatus having transfer means for dividing output data into a plurality of sets of transfer data and transferring the output data to a peripheral device so that the peripheral device can generate an output based on the output data. It is.
  • This transfer means compresses a plurality of sets of transfer data in order and stores them in a memory, and selects and transfers either a compressed data set or an uncompressed data set.
  • the transfer means further includes:
  • the first end time when the compressed current data set is transferred and the current uncompressed time Predicting the second end time when the data set is transferred, and transferring the current data set with a short predicted end time
  • the transfer means predicts the first end time and the second end time based on the transfer rate of the previous data set. For this reason, it is desirable that the judging means obtains the transfer speed or information for obtaining the transfer speed together with the peripheral device power transfer permission signal.
  • the transfer means transfers the compressed current data set when the predicted data amount of the compressed current data set is larger than the free space of the peripheral device buffer allocated for data transfer. It is desirable to make a judgment that includes
  • the transfer means is configured such that the compressed predicted data amount is smaller than the buffer capacity of the peripheral device and the uncompressed current data set data amount is smaller than the buffer free capacity. When it is large, it is desirable to predict the second end time based on the transfer rate of the previous data set and the buffer release rate.
  • Another different aspect of the present invention is a system including a host device and a printer that performs printing based on the output data divided and transferred into a plurality of sets of transfer data of the host device.
  • the host device has transfer means for compressing a plurality of sets of transfer data in order and storing them in a memory, and selecting and transferring either a compressed data set or an uncompressed data set.
  • the transfer means is
  • the first end time when the compressed current data set is transferred and the current uncompressed time Predicting the second end time when the data set is transferred, and transferring the current data set with a short predicted end time
  • the transfer means preferably predicts the first end time and the second end time based on the transfer rate of the previous data set.
  • means for transmitting information for obtaining the transfer speed together with the transfer permission signal are provided.
  • Another different aspect of the present invention is a device driver program for dividing output data from a computer into a plurality of sets of transfer data and transferring the data to a peripheral device, and generating an output based on the output data in the peripheral device.
  • This device driver program includes a process of compressing a plurality of sets of transfer data in order and storing them in a computer memory, and selecting and transferring either a compressed data set or an uncompressed data set in the memory. .
  • the first end time when the compressed current data set is transferred and the second end time when the uncompressed current data set is transferred When the current data set with a short predicted end time is transferred and the transfer of the current data set is started, compression of the next data set is started. Initiating compression of the data set.
  • the transferring process includes predicting the first end time and the second end time based on the transfer rate of the previous data set.
  • the transfer process includes obtaining the transfer speed or information for obtaining the transfer speed from the peripheral device together with the transfer permission signal.
  • the processing to be transferred is further predicted data capacity of the compressed current data set is larger than the free space of the peripheral buffer allocated for data transfer. It is desirable to include
  • the process of transferring is further based on the fact that the predicted data volume of the compressed current data set is smaller than the free space of the peripheral buffer, and the data volume of the uncompressed current data set is smaller than the free space of the buffer. If large, it is desirable to include predicting the second end time based on the previous data set transfer rate and buffer release rate.
  • This device driver program or program product has instructions or codes that enable the above-described processing to be executed by a computer, and is recorded on a suitable recording medium such as a CD-ROM or the like. Can be provided via a network.
  • a suitable recording medium such as a CD-ROM or the like.
  • the method having the transferring step of the present invention can be executed by the computer.
  • the computer can function as an apparatus having the transfer means of the present invention.
  • the transfer time is minimized each time each data set is transferred. It is possible to select an expected data set. Therefore, it is possible to automatically reflect the situation that changes with the progress of the job in the transfer form, and it is possible to improve the processing speed of the job.
  • FIG. 1 Transferring computer power data as a host device using a printer as a peripheral device.
  • FIG. 2 is a diagram showing an outline of functions of a printer driver of a host device.
  • FIG. 3 is a flowchart showing an outline of processing by a printer driver.
  • FIG. 4 is a flowchart showing an outline of printer processing.
  • FIG. 5 is a timing chart showing the progress of a job for printing out an image.
  • FIG. 1 shows an outline of a system 1 in which a host computer and a printer are connected.
  • the host computer 2 is installed with an operating system 11, application software 12 that operates on the operating system and performs image processing, and a printer driver 13.
  • the host computer 2 transfers the image data 81 selected or generated by the application 12 to the printer 3 via the printer driver 13 and the communication path 4 formed by an interface cable or wirelessly.
  • the printer 3 Based on the transferred image data 81, the printer 3 generates (prints) a printed material corresponding to the data 81.
  • the printer driver 13 divides the selected image data 81 into a plurality of sets of transfer data 82 in units of one or a plurality of lines, and transfers the transfer data sets 82 to the printer 3 in order.
  • the printer 3 generates a printout corresponding to the image data 81 based on the transfer data set 82 transferred in order.
  • the transfer data set 82 is referred to as a set or a data set.
  • the printer driver 13 divides and acquires the image data 81 spooled in the RAM 14 of the host 2 or the memory 14 such as a hard disk into data sets 82 of appropriate units when a print event occurs, and the data
  • This is a device driver program that transfers the set 82 to the printer 3 in order after being compressed or uncompressed. Accordingly, the printer driver 13 is installed in the computer 2 to realize a predetermined function using an appropriate resource of the computer 2.
  • the printer driver 13 sequentially compresses the acquired data set 82, stores the compressed data set 82c (after compression) in the memory 14, and stores the compressed data set 82c, which is not compressed (before compression). ) Data set 82 ⁇ is selected and transferred to printer 3.
  • the transfer function 22 is the data divided to transfer the image data 81 that is output data.
  • One of the compression function 21 that compresses the set in order and stores it in the memory 14 and the compressed data set 82c and the uncompressed data set 82 ⁇ stored in the memory 14 via the communication path 4
  • the selection function 24 for outputting to the printer 3 and the determination function 25 for determining the data set selected by the selection function 24 are provided.
  • the judgment function 25 judges the condition or status at that time when the transfer of each data set 82 can be started (when the transfer can be started), and as the data set 82 to be transferred this time (current data set) 82, Select compressed data set 82c or uncompressed data set 82 ⁇ .
  • the printer 3 includes a CPU 31, a RAM 32, a ROM 33, a decompression unit 34 for decompressing the compressed data set 82c, an interface 35 for exchanging data with the host device 2, and a printer engine 37.
  • a mechanism control unit 36 for controlling and a bus 38 for connecting them are provided.
  • the interface 35 acquires the compressed data set 82c or the uncompressed data set 82 ⁇ transferred from the host device 2, and the data set is a buffer for data transfer secured in a partial area of the RAM 32. Store in 39. If the acquired data set 82 is compressed, it is decompressed by the decompression unit 34 and supplied to the mechanism control unit 36, and a printed matter is printed by the printing mechanism (engine) 37 based on the data set 82.
  • the acquired data set 82 is uncompressed, it is supplied to the mechanism control unit 36 without being expanded, and the printed matter 37 is printed by the printing mechanism 37 based on the data set 82.
  • the printer 3 performs various controls based on a control program (firmware) 40 stored in advance in the CPU 31 power ROM 33.
  • the CPU 31 performs a process of controlling whether the data set 82 stored in the buffer 39 is compressed, whether the data set 82 is uncompressed data, and receiving data at the nother 39. Further, the CPU 31 can instruct to perform printing in units of the acquired data set 82, for example, in units of lines.
  • FIG. 2 shows a schematic configuration of the transfer function 22 included in the printer driver 13.
  • the compression function 21 sequentially acquires uncompressed transfer data sets 82 ⁇ from the image data 81, compresses them, and stores the compressed data sets 82c in the memory 14 in order.
  • the transfer start signal 88 is received from the judgment function 25
  • the compression of the next data set is started if the next data set scheduled to be transferred next to the current data set is not started. . That is, the compression function 21 transfers the data set 82 ⁇ in the middle of compression.
  • the compression of the data set 82 ⁇ is interrupted, and the compression of the next data set 82 ⁇ is started. If the next data set compression is not started when the current data set transfer starts (at the start of the transfer), the decision to start the next data set compression may be included in the decision function 25. it can.
  • the determination function 25 includes a first determination function 41 and a second determination function 42. These determination functions 41 and 42 determine the state when the transfer can be started for each data set, and the type of the data set 82 output from the selection function 24 (whether it is compressed or uncompressed). Select.
  • the first determination function 41 uses the selection function 24 to compress the memory 14 if the current data set 82 has already been compressed by the compression function 21 when the transfer of the current data set 82 to be newly started can be started.
  • the current data set 82c already selected is selected, and an instruction is given to transfer the compressed current data set 82c to the printer 3.
  • the data amount of the compressed data set 82c is compared with the data amount of the uncompressed data set 82 ⁇ , the data amount of the compressed data set 82c is smaller. If the compressed data set 82c is already prepared when transfer can be started, the compressed data set is transferred because time is not required for compression.
  • “when transfer can be started” indicates the timing when the current data set 82 can be transferred. For example, if it is the first data set, it is the timing when a print event occurs in the host computer 2 and a print job is started. If it is in the middle of the job, it is the timing when the previously transferred data set 82 is stored in the buffer 39 of the printer 3 and the transfer permission signal 85 is notified from the printer 3 to the host computer 2. The reception completion notification notified from the printer 3 is the transfer permission signal 85.
  • the second determination function 42 determines when the current data set 82 has not been compressed by the compression function 21 when transfer can be started. That is, the second determination function 42 first determines that there is no compressed current data set 82c in the memory 14. Next, the second determination function 42 waits for the compression process of the current data set 82 to be completed, and then the first end time Tcp when the compressed data set 82c is transferred and the compression process. Without waiting for completion, predict the second end time Tnp when the uncompressed data set 82 ⁇ is transferred. It then controls the selection function 24 to transfer the data set that is expected to end first.
  • the second decision function 42 selects and transfers the current data set 82c with the shortest predicted end time among the compressed current data set 82c and the uncompressed current data set 82 ⁇ . Like that. If the data set is not compressed when transfer can be started, it is desirable that the total time of the remaining time required for compression and the time required for transfer is shorter.
  • the second determination function 42 shortens the time required for the transfer process of the current data set 82 by predicting the first end time Tcp and the second end time Tnp.
  • the second determination function 42 further determines several cases based on the free capacity Nb of the data transfer buffer 39 secured in the printer 3 when the transfer can be started. It has a judgment function to transfer the optimal data set. Each parameter referenced below is the value obtained each time the data set is transferred unless otherwise indicated.
  • Nb Free space in buffer 39 for data transfer of printer 3 when transfer can start
  • Nn Data size or data of the current data set 82 (uncompressed data set 82c)
  • Ncf Predicted data volume when the current data set 82 is compressed (predicted compressed data value)
  • Tcf Force at which transfer can be started Predicted remaining time until compression processing of the current data set 82 is completed (predicted remaining time of compression)
  • Tcp Predicted end time (first end time) when the compressed data set 82c is transferred
  • Tnp Estimated end time (second end time) when uncompressed data set 82 ⁇ is transferred
  • the free space Nb of the buffer 39 is larger than the data amount Nn of the current uncompressed data set.
  • the first end time T cp and the second end time Tnp can be calculated by the following equations (1) and (2).
  • Tcp Tcf + Ncf / R (1)
  • the current data set can be transferred to the buffer 39 on the printer side without any problem even if the compressed data set and the uncompressed data set are misaligned. Therefore, the data set with the shorter end times Tcp and Tnp is transferred.
  • the first condition in this case ⁇ indicates that the free capacity of the buffer 39 Nb force is larger than the compressed data predicted value Ncf which is smaller than the data amount Nn of the current data set 82 ⁇ uncompressed. Under this condition, if the release speed K of the notifier 39 is the same as or faster than the transfer speed R, the notifier will not become full. Therefore, the end time for compressed and uncompressed data sets can be calculated as in Case A.
  • the first end time Tcp of the compressed data set 82c can be calculated by the equation (1) as in the case A.
  • the second end time ⁇ of the uncompressed data set 82 ⁇ can be calculated by the following equation (3) that takes into account the notafull.
  • Tnp Nb / R + (Nn-Nb) / K (3)
  • Tcp Tcf + Nb / R + (Ncf-Nb) / K (4)
  • the compressed current data set 82c also becomes full during transfer in the same way as the uncompressed current data set 82 ⁇ , and after that the first data set 82c is transferred at the release speed K.
  • the end time of Tcp can be predicted.
  • the release speed K is slower than the transfer speed R, the ratio of the data transfer time to the estimated remaining compression time Tcf increases, and in most cases the first end time Tcp Is shorter.
  • the accuracy of the release speed K that can be predicted on the host side is low, if the time determined by the release speed K increases, the prediction accuracy of the first end time Tcp and the second end time Tnp decreases.
  • the second function 42 determines that it is case C, the second function 42 does not predict the end time, and the compression function 21 generates the compressed current data set 82c. Wait and control the selection function 24 to transfer the compressed data set 82c.
  • the second determination function 42 determines the transfer rate R used for calculating the first end time Tcp and the second end time Tnp, the data size Nn of the previous data set 82 transferred immediately before, and the previous data. Calculated by dividing by the reception time Tt in printer 3 of set 82.
  • the printer 3 transmits the reception time Tt as information for obtaining the transfer rate R together with the transfer permission signal 85 or the transfer rate R calculated based on the reception time Tt to the host 2.
  • the printer driver 13 of the host 2 can acquire the latest transfer rate R each time the transfer of the current data set 82 can be started upon receiving the transfer permission signal 85. Therefore, when the end times Tcp and Tnp of the current data set 82 are predicted, the first end time Tcp and the second end time Tnp can be calculated based on the transfer rate R in the course of the job. Therefore, the data set is selected in consideration of the status change of the transfer path in the middle of the job and the transfer time is shortened. Can be planned.
  • the printer 3 transmits, together with the transfer permission signal 85, the free capacity Nb of the notifier 39 and the release rate K of the noffer when the previous data set is processed.
  • the printer driver 13 on the host side can determine the above cases A to C when the transfer can be started, and more accurate first end time Tcp and second end time. Tnp can be calculated. This makes it possible to shorten the transfer time by selecting a data set in consideration of printer status changes during the job.
  • the transfer speed R, the free space Nb, and the release speed K are determined by the printer driver 13 based on the job progress status if information such as the printer model and the communication path with the printer is set in the printer driver 13 in advance. You can make your own predictions. By obtaining the actual values from the printer 3, the reliability of the prediction can be improved, and the calculation load of the printer driver 13 can be reduced.
  • the control function realized by the firmware 40 in the printer 3 of this example is the time Tt required to receive each data set 82, the release speed K of the buffer 39, and the A function 46 for notifying the free side Nb to the host side together with the transfer permission signal 85 is provided.
  • This control function 40 also has a function 45 for determining whether the data set 82 stored in the nother 39 is compressed or uncompressed.
  • the control function 40 is supplied to the function 34 for expanding the data set 82 stored in the nother 39. Or supply the mechanism control 36 by bypassing the expanding function 34.
  • the release speed K of the noffer 39 changes in proportion to the compression rate of the data stored in the buffer 39. For this reason, when predicting the release speed K of the buffer 39 on the host side, the compression speed of the notch 39 when the uncompressed data is stored is predicted by the model of the printer 3, etc.
  • the rate (uncompressed data size NnZ compressed data size Nc) can also calculate the release speed K of the compressed data buffer 39. If the release speed of the notch 39 corresponding to the uncompressed data is Kn, the release speed ⁇ ⁇ ⁇ ⁇ of the buffer 39 can be calculated by the following equation (5).
  • the estimated remaining compression time Tcf used to obtain the first end time Tcp is This value varies depending on the host CPU capacity and task status. Since the printer driver 13 can acquire the conditions of the host 2 by itself, it can reflect the state of the host 2 in the prediction of the transfer end time of each data set.
  • FIG. 3 is a flowchart showing a process in which output data is divided into a plurality of sets and transferred to the printer 3 by the computer (host device) 2 in which the printer driver 13 is installed.
  • step 51 an event (print instruction) for printing the image data 81 in the host apparatus 2 occurs.
  • step 52 the determination function 25 determines that there is no compressed data set in the memory 14 for the first data set.
  • step 65 the second decision function 42 transfers the first data set as an uncompressed data set 82 ⁇ .
  • the transfer permission signal 85 of the first data set is a reception completion notification, and at the same time, the transfer rate R of the first data set is obtained.
  • This transfer rate R can be used to predict the end time of the next data set.
  • the free capacity Nb and release speed ⁇ of the noffer can be acquired as the actual values transferred from the first data set. These parameters can also be used to predict the end time of the next data set. Therefore, the test data is transferred to obtain the transfer rate R, and the time spent for that is also unnecessary.
  • the printer driver 13 can start data transfer immediately and can start printing in the printer 3. For this reason, it is possible to shorten the time for which the user waits for the start of printing.
  • step 58 the compression function 21 starts compression processing of the next data set 82.
  • the next data set 82 is compressed in parallel with the transfer of the first data set 82.
  • step 53 when receiving the transfer permission signal 85, the printer driver 13 determines that the transfer of the current data set 82 can be started.
  • the transfer function 22 sets the transfer permission signal to the reception time Tt of the previous data set 82, the free space Nb of the buffer 39, and the release speed K of the buffer 39. Alternatively, it is obtained together with the reception completion notification 85.
  • step 54 the determination function 25 determines whether the compressed current data 82c is stored in the memory 14. If it is stored, the first determination function 41 controls the selection means 24, and in step 55, the transfer of the compressed current data set 82c from the memory 14 is started. If there is no compressed current data set 82c in the memory 14, the second determination function 42 determines which of the cases A to C is present. In step 59, if the free space Nb of the nofer is smaller than the compressed data predicted value Nc; f, it corresponds to the case C. Therefore, in step 60, the process waits for the compression processing of the current data set 82 to be completed, and in step 55, transfer of the compressed current data set 82c is started.
  • step 59 if the buffer free space Nb is larger than the compressed data predicted value Ncf, in step 61, the buffer free space Nb is compared with the data amount Nn of the uncompressed data set. Since the buffer free space Nb is smaller than the data amount Nn of the uncompressed data set, it corresponds to case B. Therefore, in step 62, for the second end time Tnp, an expression that takes into account the release speed ⁇ (3 ). If the free space Nb is larger than the data volume Nn of the uncompressed data set, it corresponds to case A. Therefore, in step 63, the formula (2) that does not consider the release speed K for the second end time Tnp. ) To predict. Note that the first end time Tcp is estimated using Equation (1) in all cases.
  • step 64 the calculated first end time Tcp and second end time Tnp are compared. If the first end time Tcp ends first, in step 60, it waits until the compression processing of the current data set 82 is completed, and in step 55, transfer of the compressed current data set is started. If the second end time Tnp is expected to end earlier than the first end time Tcp, then in step 65 the compression is performed. Without waiting for the completion of processing, transfer of the current data set 82 is started without being compressed. By making such a determination, the total processing time of compression processing and transfer processing is optimized for each data set, and the processing time of the entire job can be shortened.
  • step 56 it is determined whether all data sets have been transferred. If there is an untransferred data set, step 57 checks whether the next untransferred data set has been compressed. If compression has not started, the compression function 21 starts compression of the next data set in step 58. If the compression function 21 is compressing the current data set, it is interrupted and compression of the next data set is started. As a result, useless compression work can be minimized, and compression processing of the next data set can be started early. This increases the likelihood that the compressed data set can be transferred in step 54, further improving the overall job processing time.
  • the printer driver program 13 for performing the processing shown in FIG. 3 is a program or program product having instructions that can execute each step.
  • the program product can be provided by being recorded on a suitable recording medium such as a CD-ROM or via a computer network.
  • FIG. 4 is a flowchart showing a process for receiving data in the printer 3.
  • the printer 3 starts receiving the current data set 82 that has been compressed or not compressed.
  • the notification function 46 causes the time Tt required to receive the current data set 82, the free space Nb of the nofer 39, and Information including the release rate K of the buffer 39 is returned to the host 2 together with the transfer permission signal 85.
  • the printer 3 in parallel with the reception process, if there is a data set in the nota 39, the compressed data is decompressed by the decompression unit 34, and the uncompressed data is not decompressed and sent to the printing mechanism 37. Print.
  • the control program (firmware) 40 for performing the processing shown in FIG. 4 is a program or program product having instructions capable of executing each step.
  • This program product can be provided on a suitable recording medium such as a CD-ROM or provided on a computer network. Can be provided via a network.
  • FIG. 5 is a timing chart showing an example of a print job executed in the system 1 including the host 2 and the printer 3.
  • the first data set 82 is transferred to the printer 3 without being compressed according to the determination by the second determination function 42.
  • the compression function 21 starts the next compression process of the data set 82.
  • the printer 3 When all the uncompressed head data set 82 ⁇ is stored in the buffer 39 at time tl, the printer 3 starts printing the data set 82 ⁇ .
  • the printer control function 40 returns a transfer permission signal 85 to the host 2. At the same time, it sends to the host 2 the transfer rate R, the free space Nb of the buffer, and the buffer release rate K.
  • the time t2 is the time when the next data set 82 can start to be transferred.
  • the compression processing of the next data set (current data set based on time t2) 82 is not completed at time t2 when transfer can be started. Therefore, the second determination function 42 determines the conditions of cases A to C.
  • the first end time Tcp is calculated using equation (1)
  • the second end time Tnp is calculated using equation (3) with the buffer release speed K taken into account.
  • the second end time Tnp may be shorter than the first end time Tcp even if it is expected that the transfer will occur at the release rate ⁇ after the nofler becomes full.
  • transfer is performed using the uncompressed data set 82 ⁇ without waiting for the completion of the compression process of the current data set 82.
  • the compression process for the next data set 82 is started. In this case, the timing when the transfer can be started and the timing when the transfer starts are substantially equal.
  • transfer permission signal 85 and other parameters are transmitted from host 3 to host 2.
  • host 2 receives transfer permission signal 85 and other information at time t5
  • transfer of the next data set 82 can be started.
  • the current data set 82 has already been compressed and stored in the memory 14 at a time t3 before the transfer start time t5, and the compression function 21 further compresses the next data set 82. Yes.
  • the first determination function 41 determines the transfer of the compressed current data set 82c. Transmission starts.
  • the transfer start signal 85 is notified again from the printer 3 to the host side.
  • the second determination function 42 determines that it is case C because the free space Nb is smaller than the compressed data predicted value Nc; f. Therefore, the second determination function 42 determines to start transfer of the compressed data set after waiting until time t8 when the compression of the current data set ends. Time t8 is when the transfer starts.
  • a transfer start signal 85 is returned to the host 2.
  • transfer start signal 85 At time tlO, transfer can be started.
  • the second determination function 42 predicts the first end time Tcp and the second end time Tnp. In this case, the second end time ⁇ is shorter than the first end time Tcp. Therefore, the current data set 82 is output as an uncompressed data set 82 ⁇ without waiting for completion of the compression process.
  • the printer driver 13 predicts the transfer end time (end time) of each data set 82 by the transfer rate R, the notch capacity Nb, and the release rate K at that time when transfer can be started. Individual data sets are transferred in a timely manner. For this reason, each time the data set is transferred, the data set is selected so that the transfer time is shortened, so that the processing time of the entire output job can be shortened.
  • the printer 3 is a peripheral device
  • the image data 81 is output data
  • the data is transferred to the printer 3
  • the printed matter is printed by the printer 3.
  • Peripheral devices may be other printing devices such as fax machines, but in some cases the peripheral device and the host are integrated.
  • the output data is not limited to image data, and may be text data.
  • peripheral devices include various devices that receive output data from a host device, such as a display device such as an LCD that generates (displays) image data as an image.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Record Information Processing For Printing (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

A host device (2) has a transfer function (22) for dividing output data into a plurality of sets of transfer data and transferring them to a peripheral device (3). The transfer function (22) provides a device for successively compressing the plurality of sets of transfer data, storing them in a memory (14), selecting a compressed data set (82c) and a non-compressed data set (82n), and transferring them. The transfer function (22) makes judgments including the following judgments. When a current data set transfer can be started and if the current data set has been compressed, the compressed data set is transferred. If the current data set has not be compressed, the first end time when the compressed data set is transferred and the second end time when the non-compressed data set is transferred are predicted and the data set having the shorter end time predicted is transferred. If the next data set compression is not started when transfer is started, the compression of the data set is started.

Description

明 細 書  Specification
周辺装置に対してデータを転送するための方法および装置  Method and apparatus for transferring data to a peripheral device
技術分野  Technical field
[0001] 本発明は、周辺機器に対しデータを転送する処理を備えた制御方法および装置に 関するものである。  [0001] The present invention relates to a control method and apparatus including a process of transferring data to a peripheral device.
背景技術  Background art
[0002] 画像データを圧縮して送受信 (伝送)するシステムが知られて 、る。ホスト装置から 圧縮されたデータをプリンタに出力し、プリンタで伸張して印刷するシステムはその一 例である。 日本特開 2001— 53619号公報には、送信側の装置におけるデータ圧縮 処理の種類やデータ圧縮比のパラメータを、通信速度により決定する画像データ通 信装置が開示されている。この画像データ通信装置では、テストデータを用いて送信 側装置と受信側装置との間の通信時間を計測し、この通信時間とテストデータのデ ータサイズとから通信速度を算出し、それに基づいて圧縮パラメータを決定する。  [0002] Systems for compressing and transmitting (transmitting) image data are known. An example is a system that outputs compressed data from a host device to a printer and decompresses the data with the printer. Japanese Patent Laid-Open No. 2001-53619 discloses an image data communication apparatus that determines the type of data compression processing and data compression ratio parameters in a transmission-side apparatus based on the communication speed. In this image data communication device, the communication time between the transmission side device and the reception side device is measured using the test data, the communication speed is calculated from the communication time and the data size of the test data, and the compression is performed based on the communication speed. Determine the parameters.
[0003] ホスト装置などの送信側装置で画像データを圧縮して送信するシステムでは、画像 データ全体を、プリンタや表示装置などの周辺機器で処理される単位のデータセット に分割して順番に転送する。圧縮してデータを転送する場合、圧縮処理と転送処理 とを並列に処理可能なハードウ アおよびソフトウエアリソースがあれば、分割された 1セットの転送データの圧縮が完了すれば、以降のデータセットについては、それら の圧縮処理を継続しながら、圧縮済みのデータセットを送信することが可能である。 1 ライン、 1ページあるいは 1フレームなどの単位で出力を生成する、例えば、印刷物を 印刷したり、画像を表示する周辺機器であれば、その単位で圧縮済みのデータセット をホスト装置力も周辺機器に順次転送することが可能である。周辺機器は、転送され たデータを適切に変換したり再構成することによりホスト装置が意図した出力を生成 できる。圧縮済みの転送データであれば転送時間は短縮されるので、一般的にはホ ストからプリンタなどの周辺機器にデータを転送して出力するジョブ全体の処理時間 を短縮できる。  [0003] In a system in which image data is compressed and transmitted by a sending device such as a host device, the entire image data is divided into unit data sets that are processed by peripheral devices such as printers and display devices, and transferred in order. To do. When transferring data with compression, if there are hardware and software resources that can process compression processing and transfer processing in parallel, compression of one divided transfer data is completed, and subsequent data sets For, it is possible to send a compressed data set while continuing the compression process. If the peripheral device generates output in units of 1 line, 1 page or 1 frame, for example, prints or displays images, the compressed data set in that unit is also used by the host device as a peripheral device. It is possible to transfer sequentially. Peripherals can generate the output intended by the host device by appropriately converting and reconfiguring the transferred data. Since the transfer time is reduced for compressed transfer data, generally the processing time of the entire job for transferring the data from the host to a peripheral device such as a printer can be reduced.
[0004] し力しながら、ホスト装置においては圧縮するために時間を要する。したがって、圧 縮する時間が、周辺装置を用 、た出力ジョブの処理速度のクリティカルパスになるの であれば、圧縮しな 、でデータを転送した方がジョブ全体の処理時間を短縮できる 可能性がある。一方、転送時間がクリティカルパスになるのであれば、圧縮済みの転 送データを送信することが望ましい。 日本特開 2001— 53619号公報では、ジョブの 開始で圧縮パラメータが決定する。 [0004] However, it takes time to compress the host device. Therefore, pressure If the reduction time becomes a critical path for the processing speed of the output job using the peripheral device, it is possible that the processing time of the entire job can be shortened by transferring the data without compression. On the other hand, if the transfer time becomes a critical path, it is desirable to send compressed transfer data. In Japanese Unexamined Patent Publication No. 2001-53619, the compression parameter is determined at the start of a job.
[0005] し力しながら、ジョブの開始時に一律に圧縮済みのデータを転送することが好まし いか否かが決定されるというものではない。例えば、圧縮に要する時間およびデータ の転送時間はデータ量にのみ依存するものではない。圧縮に要する時間は、圧縮方 法、データの種類、さらにはホストの CPUの占有率などにも依存する。さらに、圧縮 後のデータ量は常に一定というわけではなぐそれが転送時間に影響を与える。また 、転送時間は、転送速度 (通信速度)だけに左右されるだけではなぐ周辺機器にお いてバッファを解放する時間やタイミングにも左右される。さらに、ジョブの間、転送デ ータは順番に送信され、圧縮に要する時間および転送時間はジョブの途中で変動す る可能性は常にある。 However, it is not determined whether it is preferable to transfer compressed data uniformly at the start of a job. For example, the time required for compression and the data transfer time do not depend only on the amount of data. The time required for compression also depends on the compression method, the type of data, and the host CPU occupancy rate. In addition, the amount of data after compression is not always constant, which affects the transfer time. In addition, the transfer time depends not only on the transfer speed (communication speed) but also on the time and timing for releasing the buffer in the peripheral device. In addition, during the job, the transfer data is sent in sequence, and the time required for compression and the transfer time can always vary during the job.
発明の開示  Disclosure of the invention
[0006] 本発明の一つの態様は、ホスト装置から出力データを複数セットの転送データに分 割して周辺機器に転送する工程を有する周辺機器の制御方法である。この転送する 工程は、複数セットの転送データを順番に圧縮してメモリに格納し、圧縮済みのデー タセットおよび未圧縮のデータセットのいずれかを選択して転送する。さらに、この転 送する工程は、  [0006] One aspect of the present invention is a peripheral device control method including a step of dividing output data from a host device into a plurality of sets of transfer data and transferring the data to the peripheral device. In this transfer step, a plurality of sets of transfer data are sequentially compressed and stored in a memory, and either a compressed data set or an uncompressed data set is selected and transferred. In addition, this transfer process is
今回のデータセットの転送の開始が可能となったときに、今回のデータセットが圧縮 済みであれば、圧縮済みの今回のデータセットを転送し、  If the current data set has already been compressed when the transfer of the current data set can be started, the compressed current data set is transferred,
今回のデータセットの転送の開始が可能となったときに、今回のデータセットが圧縮 済みでなければ、圧縮済みの今回のデータセットを転送したときの第 1の終了時間と 、未圧縮の今回のデータセットを転送したときの第 2の終了時間とを予測し、予測され た終了時間の短い今回のデータセットを転送し、  If the current data set can be started and the current data set is not compressed, the first end time when the compressed current data set is transferred and the current uncompressed time Predict the second end time when the current data set is transferred, transfer the current data set with a shorter predicted end time,
今回のデータセットの転送を開始するときに、次回のデータセットの圧縮が開始さ れていなければ、次回のデータセットの圧縮を開始することを含む。なお、本明細書 において、転送データのセットを、セットあるいはデータセットと称する。 When starting the transfer of the current data set, if the compression of the next data set has not been started, this includes starting the compression of the next data set. In addition, this specification The transfer data set is referred to as a set or a data set.
[0007] 転送データの今回のデータセット(新しいデータセット)の転送の開始が可能となつ たとき(転送開始可能時)に、今回のデータセットの圧縮の状況を判断する。これによ り、転送する工程による出力ジョブの中で何らかの条件が変化したときに、圧縮に要 する時間が処理速度のクリティカルパスになり続けることを制御できる。また、転送の 開始が可能となったタイミングで、第 1および第 2の終了時間を予想する。これにより、 残りの圧縮に要する時間および転送に要する時間のトータルが最短となるデータセッ トを、その都度選択できる。  [0007] When transfer of the current data set (new data set) of transfer data can be started (when transfer can be started), the compression state of the current data set is determined. This makes it possible to control that the time required for compression continues to be a critical path of processing speed when some condition changes in the output job by the transferring process. In addition, the first and second end times are predicted when the transfer can be started. As a result, the data set that minimizes the total time required for the remaining compression and transfer can be selected each time.
[0008] さらに、今回のデータセットの転送を開始するとき (転送開始時)に、次回のデータ セットの圧縮を強制的に開始する。これにより、今回のデータセットの圧縮終了を待た ずに、即座に次回のデータセットの圧縮が開始されるので、圧縮処理のタイムロスを 抑制できる。さらに、出力ジョブが開始された直後の、最初のデータセットの転送は、 圧縮を待たずに開始されるので、周辺機器力 最初のアウトプットに要する時間を短 縮できる可能性がある。  [0008] Furthermore, when the transfer of the current data set is started (at the start of transfer), the compression of the next data set is forcibly started. As a result, the compression of the next data set is started immediately without waiting for the end of the compression of the current data set, and the time loss of the compression process can be suppressed. Furthermore, since the transfer of the first data set immediately after the output job is started is started without waiting for compression, there is a possibility that the time required for the first output of peripheral devices can be shortened.
[0009] データの転送速度は、ジョブ中に変動する可能性がある。したがって、転送するェ 程は、前回のデータセットの転送速度に基づき、第 1の終了時間および第 2の終了時 間を予測することを含むことが望ましい。前回の転送データの転送速度は、周辺装置 からの受信を完了したことを示す信号、例えば、転送許可信号に基づきデータ処理 装置の側で判断することも可能である。転送許可信号の転送時間が誤差として加わ る可能性を低くするためには、周辺装置の側で転送速度を適当な方法で計測し、転 送許可信号と共にデータ処理装置に送信することが望ましい。転送する工程は、転 送速度、または転送速度を求めるための情報を、周辺機器力 転送許可信号と共に 取得することを含むことが好まし 、。  [0009] The data transfer rate may vary during a job. Therefore, it is desirable that the transfer process includes predicting the first end time and the second end time based on the transfer rate of the previous data set. The transfer rate of the previous transfer data can be determined on the data processing device side based on a signal indicating that the reception from the peripheral device is completed, for example, a transfer permission signal. In order to reduce the possibility that the transfer time of the transfer permission signal is added as an error, it is desirable to measure the transfer speed by an appropriate method on the side of the peripheral device and send it to the data processing device together with the transfer permission signal. Preferably, the transferring step includes obtaining the transfer speed or information for determining the transfer speed together with the peripheral device power transfer permission signal.
[0010] 転送する工程においては、ジョブの転送データの最初のデータセットは未圧縮の状 態で転送される。したがって、最初のデータセットの転送時間により次のデータセット の転送方法が選択されるので、テストデータを転送する手間および処理時間を省くこ とがでさる。  [0010] In the transferring step, the first data set of the transfer data of the job is transferred in an uncompressed state. Therefore, since the transfer method of the next data set is selected depending on the transfer time of the first data set, it is possible to save time and processing time for transferring the test data.
[0011] 転送開始時に、データ転送に割当てられる周辺機器のバッファの空き容量は、デ ータ転送時間に大きな影響を与える。転送するデータセットのデータ量がバッファの 空き容量よりも大きぐバッファの開放速度が転送速度よりも遅ければ、転送途中でバ ッファの開放を待つ必要がある。そして、一般に、データ転送速度よりバッファの解放 速度は遅いので、ノ ッファの解放速度がデータセットの転送時間に影響を与える。 [0011] At the start of transfer, the buffer capacity of the peripheral device allocated for data transfer is Greatly affects data transfer time. If the amount of data in the data set to be transferred is larger than the free capacity of the buffer and the buffer release speed is slower than the transfer speed, it is necessary to wait for the buffer to be released during the transfer. In general, since the buffer release rate is slower than the data transfer rate, the buffer release rate affects the data set transfer time.
[0012] このため、転送する工程は、さらに、圧縮済みの今回のデータセットの予測データ 量力 データ転送に割当てられた周辺機器のバッファの空き容量よりも大きいときは、 圧縮済みの今回のデータセットを転送することを含むことが望まし 、。圧縮済みのデ ータセットのデータ量がバッファの空き容量を超えるケースでは、未圧縮のデータセ ットであればバッファの空きを複数回待ったり、解放速度に依存して転送速度の殆ど が決まる可能性が高い。このため、第 2の終了時間の予測精度は大幅に低下する。 したがって、終了時間の予測は不用とし、圧縮済みの今回のデータセットを転送する ことが望ましい。  [0012] For this reason, if the transfer process is larger than the free capacity of the buffer of the peripheral device assigned to the data transfer, the compressed data set is compressed. Hope to include transferring, and so on. In cases where the amount of data in the compressed data set exceeds the free space of the buffer, if the data set is uncompressed, the transfer speed may be determined depending on the release speed or waiting for the buffer free space multiple times. Is expensive. For this reason, the prediction accuracy of the second end time is greatly reduced. Therefore, it is desirable not to predict the end time and transfer the compressed data set.
[0013] 転送する工程は、さらに、圧縮済みの今回のデータセットの予測データ量が周辺機 器のバッファの空き容量よりも小さぐかつ、未圧縮の今回のデータセットのデータ量 力 Sバッファの空き容量よりも大きいときは、前回のデータセットの転送速度およびバッ ファの解放速度に基づき第 2の終了時間を予測することを含むことが望ましい。この ケースでは、ノ ッファの解放速度を条件に入れることにより第 2の終了時間の予測精 度を向上できる。ノ ッファの解放速度は、周辺機器に依存したデータであるので、予 めホスト装置にセットできる。また、転送速度と同様に、周辺機器の側で解放速度を 適当な方法で計測し、転送許可信号と共にホスト装置に送信できる。  [0013] In the transferring step, the predicted data amount of the compressed current data set is smaller than the free space of the peripheral device buffer and the data amount of the uncompressed current data set If it is greater than the free space, it should include predicting the second end time based on the previous data set transfer rate and buffer release rate. In this case, the accuracy of predicting the second end time can be improved by taking into account the release rate of the noffer. The release rate of the noffer is data that depends on the peripheral device, so it can be set in the host device in advance. Similarly to the transfer rate, the peripheral device can measure the release rate by an appropriate method and send it to the host device along with the transfer permission signal.
[0014] この転送する工程においては、出力ジョブが開始されたときの状態だけではなぐ 出力ジョブの進行中に変化する状態により、圧縮されたデータセットまたは未圧縮の データセットを選択して周辺機器に転送できる。このため、ホスト装置力も周辺機器( 周辺装置)にデータを転送して出力するジョブの処理速度を改善するのに適した方 法を提供できる。本発明の一態様の方法は、他の最適化方法との組み合わせも含む 。例えば、転送する工程は、出力ジョブの初期条件により最適な圧縮方法をセットす ることを含んでも良い。また、タイプの異なる複数の方法により圧縮する工程あるいは 圧縮する手段を並列に動作させることが可能なホスト装置においては、転送するェ 程は、異なる方法により圧縮されたデータセットの終了時間をさらに予測し、最も終了 時間の短い今回のデータセットを選択すること、および、それらの異なる方法の中か ら最適な圧縮方法を随時選択することを含めることも可能である。 [0014] In this transfer step, a compressed data set or an uncompressed data set is selected according to the state that changes during the progress of the output job, not just the state when the output job is started. Can be transferred to. For this reason, the host device can also provide a method suitable for improving the processing speed of jobs that transfer and output data to peripheral devices (peripheral devices). The method of one embodiment of the present invention includes combinations with other optimization methods. For example, the transferring step may include setting an optimal compression method according to the initial conditions of the output job. In a host device that can operate in parallel the compression process or compression means by a plurality of different types of methods, Therefore, it is possible to further predict the end time of a data set compressed by different methods, select the current data set with the shortest end time, and select the optimal compression method from among these different methods at any time. It is also possible to include
[0015] 本発明の他の一つの態様は、出力データを複数セットの転送データに分割して周 辺機器に転送し、周辺機器において出力データに基づく出力を生成可能とする転送 手段を有する装置である。この転送手段は、複数セットの転送データを順番に圧縮し てメモリに格納し、圧縮済みのデータセットおよび未圧縮のデータセットの 、ずれかを 選択して転送する。  [0015] Another aspect of the present invention is an apparatus having transfer means for dividing output data into a plurality of sets of transfer data and transferring the output data to a peripheral device so that the peripheral device can generate an output based on the output data. It is. This transfer means compresses a plurality of sets of transfer data in order and stores them in a memory, and selects and transfers either a compressed data set or an uncompressed data set.
[0016] この転送手段は、さらに、  [0016] The transfer means further includes:
今回のデータセットの転送の開始が可能となったときに、今回のデータセットが圧縮 済みであれば、圧縮済みの今回のデータセットを転送すること、  If the current data set has already been compressed when it is possible to start transferring the current data set, transfer the compressed current data set.
今回のデータセットの転送の開始が可能となったときに、今回のデータセットが圧縮 済みでなければ、圧縮済みの今回のデータセットを転送したときの第 1の終了時間と 、未圧縮の今回のデータセットを転送したときの第 2の終了時間とを予測し、予測され た終了時間の短い今回のデータセットを転送すること、  If the current data set can be started and the current data set is not compressed, the first end time when the compressed current data set is transferred and the current uncompressed time Predicting the second end time when the data set is transferred, and transferring the current data set with a short predicted end time,
今回のデータセットの転送を開始するときに、次回のデータセットの圧縮が開始さ れていなければ、次回のデータセットの圧縮を開始すること、を含む判断を行う。  When the transfer of the current data set is started, if the next data set has not been compressed, a determination is made including starting the next data set.
[0017] 転送手段は、前回のデータセットの転送速度に基づき、第 1の終了時間および第 2 の終了時間を予測することが望ましい。そのため、判定手段は、転送速度、または転 送速度を求めるための情報を、周辺機器力 転送許可信号と共に取得することが望 ましい。  [0017] It is desirable that the transfer means predicts the first end time and the second end time based on the transfer rate of the previous data set. For this reason, it is desirable that the judging means obtains the transfer speed or information for obtaining the transfer speed together with the peripheral device power transfer permission signal.
[0018] 転送手段は、圧縮済みの今回のデータセットの予測データ量が、データ転送に割 当てられる周辺機器のバッファの空き容量よりも大きいときは、圧縮済みの今回のデ ータセットを転送することを含む判断を行うことが望ましい。  [0018] The transfer means transfers the compressed current data set when the predicted data amount of the compressed current data set is larger than the free space of the peripheral device buffer allocated for data transfer. It is desirable to make a judgment that includes
[0019] また、転送手段は、圧縮済みの今回の予測データ量が、周辺機器のバッファの空 き容量よりも小さぐかつ、未圧縮の今回のデータセットのデータ量がバッファの空き 容量よりも大きいときは、前回のデータセットの転送速度およびバッファの解放速度 に基づき第 2の終了時間を予測することが望ましい。 [0020] 本発明のさらに異なる一つの態様は、ホスト装置と、このホスト装置力 複数セットの 転送データに分割して転送された出力データに基づき印刷するプリンタとを有するシ ステムである。ホスト装置は、複数セットの転送データを順番に圧縮してメモリに格納 し、圧縮済みのデータセットおよび未圧縮のデータセットの 、ずれかを選択して転送 する転送手段を有し、さらに、この転送手段は、 [0019] In addition, the transfer means is configured such that the compressed predicted data amount is smaller than the buffer capacity of the peripheral device and the uncompressed current data set data amount is smaller than the buffer free capacity. When it is large, it is desirable to predict the second end time based on the transfer rate of the previous data set and the buffer release rate. [0020] Another different aspect of the present invention is a system including a host device and a printer that performs printing based on the output data divided and transferred into a plurality of sets of transfer data of the host device. The host device has transfer means for compressing a plurality of sets of transfer data in order and storing them in a memory, and selecting and transferring either a compressed data set or an uncompressed data set. The transfer means is
今回のデータセットの転送の開始が可能となったときに、今回のデータセットが圧縮 済みであれば、圧縮済みの今回のデータセットを転送すること、  If the current data set has already been compressed when it is possible to start transferring the current data set, transfer the compressed current data set.
今回のデータセットの転送の開始が可能となったときに、今回のデータセットが圧縮 済みでなければ、圧縮済みの今回のデータセットを転送したときの第 1の終了時間と 、未圧縮の今回のデータセットを転送したときの第 2の終了時間とを予測し、予測され た終了時間の短い今回のデータセットを転送すること、  If the current data set can be started and the current data set is not compressed, the first end time when the compressed current data set is transferred and the current uncompressed time Predicting the second end time when the data set is transferred, and transferring the current data set with a short predicted end time,
今回のデータセットの転送を開始するときに、次回のデータセットの圧縮が開始さ れていなければ、次回のデータセットの圧縮を開始すること、を含む判断を行う。  When the transfer of the current data set is started, if the next data set has not been compressed, a determination is made including starting the next data set.
[0021] 転送手段は、前回のデータセットの転送速度に基づき、第 1の終了時間および第 2 の終了時間を予測することが好ましぐこのシステムの周辺機器であるプリンタは、転 送速度、または転送速度を求めるための情報を、転送許可信号と共に送信する手段 を備えている。 [0021] The transfer means preferably predicts the first end time and the second end time based on the transfer rate of the previous data set. Alternatively, there is provided means for transmitting information for obtaining the transfer speed together with the transfer permission signal.
[0022] 本発明のさらに異なる一つの態様は、コンピュータから出力データを複数セットの 転送データに分割して周辺機器に転送し、周辺機器において出力データに基づく 出力を生成するためのデバイスドライバプログラムある!/、はデバイスドライバプロダラ ム製品である。このデバイスドライバプログラムは、複数セットの転送データを順番に 圧縮してコンピュータのメモリに格納し、メモリの圧縮済みのデータセットおよび未圧 縮のデータセットのいずれかを選択して転送する処理を含む。  [0022] Another different aspect of the present invention is a device driver program for dividing output data from a computer into a plurality of sets of transfer data and transferring the data to a peripheral device, and generating an output based on the output data in the peripheral device. ! /, Is a device driver product. This device driver program includes a process of compressing a plurality of sets of transfer data in order and storing them in a computer memory, and selecting and transferring either a compressed data set or an uncompressed data set in the memory. .
[0023] この転送する処理は、  [0023] This transfer process is:
今回のデータセットの転送の開始が可能となったときに、今回のデータセットが圧縮 済みであれば、圧縮済みの今回のデータセットを転送し、  If the current data set has already been compressed when the transfer of the current data set can be started, the compressed current data set is transferred,
今回のデータセットが圧縮済みでなければ、圧縮済みの今回のデータセットを転送 したときの第 1の終了時間と、未圧縮の今回のデータセットを転送したときの第 2の終 了時間とを予測し、予測された終了時間の短い今回のデータセットを転送し、 今回のデータセットの転送を開始するときに、次回のデータセットの圧縮が開始さ れて 、なければ、次回のデータセットの圧縮を開始することを含む。 If the current data set is not compressed, the first end time when the compressed current data set is transferred and the second end time when the uncompressed current data set is transferred. When the current data set with a short predicted end time is transferred and the transfer of the current data set is started, compression of the next data set is started. Initiating compression of the data set.
[0024] 転送する処理は、前回のデータセットの転送速度に基づき、第 1の終了時間および 第 2の終了時間を予測することを含むことが望ましい。また、転送する処理は、転送 速度、または転送速度を求めるための情報を、周辺機器から転送許可信号と共に取 得することを含むことが望ましい。また、転送する処理は、さらに、圧縮済みの今回の データセットの予測データ量力 データ転送に割当てられた周辺機器のバッファの空 き容量よりも大き 、ときは、圧縮済みの今回のデータセットを転送することを含むこと が望ましい。また、転送する処理は、さらに、圧縮済みの今回のデータセットの予測 データ量が周辺機器のバッファの空き容量よりも小さぐかつ、未圧縮の今回のデー タセットのデータ量がバッファの空き容量よりも大き 、ときは、前回のデータセットの転 送速度およびバッファの解放速度に基づき第 2の終了時間を予測することを含むこと が望ましい。  [0024] Preferably, the transferring process includes predicting the first end time and the second end time based on the transfer rate of the previous data set. In addition, it is preferable that the transfer process includes obtaining the transfer speed or information for obtaining the transfer speed from the peripheral device together with the transfer permission signal. In addition, the processing to be transferred is further predicted data capacity of the compressed current data set is larger than the free space of the peripheral buffer allocated for data transfer. It is desirable to include In addition, the process of transferring is further based on the fact that the predicted data volume of the compressed current data set is smaller than the free space of the peripheral buffer, and the data volume of the uncompressed current data set is smaller than the free space of the buffer. If large, it is desirable to include predicting the second end time based on the previous data set transfer rate and buffer release rate.
[0025] このデバイスドライバプログラムまたはプログラム製品は、上記の処理をコンピュータ において実行可能とする命令あるいはコードを有するものであり、実行するための C D— ROMなどの適当な記録媒体に記録したり、コンピュータネットワークを介して提 供できる。コンピュータに、このデバイスドライバプログラムを実装あるいはロードする ことにより、本発明の転送する工程を有する方法をコンピュータにより実行できる。ま た、コンピュータに、このデバイスドライバプログラムを実装あるいはロードすることによ り、コンピュータを本発明の転送手段を有する装置として機能させることができる。  [0025] This device driver program or program product has instructions or codes that enable the above-described processing to be executed by a computer, and is recorded on a suitable recording medium such as a CD-ROM or the like. Can be provided via a network. By mounting or loading the device driver program on a computer, the method having the transferring step of the present invention can be executed by the computer. Also, by mounting or loading this device driver program on a computer, the computer can function as an apparatus having the transfer means of the present invention.
[0026] これらの態様を含む本発明により、ホスト側力 周辺機器にデータを複数セットの転 送データに分けて転送する際に、それぞれのデータセットを転送する都度、転送時 間が最短になると予想されるデータセットを選択することが可能となる。したがって、ジ ヨブの進行により変わる状況を自動的に転送形態に反映させることが可能となり、ジョ ブの処理速度の改善を図ることが可能となる。  [0026] According to the present invention including these aspects, when data is transferred to a host-side peripheral device by dividing it into a plurality of sets of transfer data, the transfer time is minimized each time each data set is transferred. It is possible to select an expected data set. Therefore, it is possible to automatically reflect the situation that changes with the progress of the job in the transfer form, and it is possible to improve the processing speed of the job.
図面の簡単な説明  Brief Description of Drawings
[0027] [図 1]プリンタを周辺機器として、ホスト装置であるコンピュータ力 データを転送して 印刷するシステムの概略を示す図。 [0027] [Fig. 1] Transferring computer power data as a host device using a printer as a peripheral device. The figure which shows the outline of the system which prints.
[図 2]ホスト装置のプリンタドライバの機能の概略を示す図。  FIG. 2 is a diagram showing an outline of functions of a printer driver of a host device.
[図 3]プリンタドライバによる処理の概要を示すフローチャート。  FIG. 3 is a flowchart showing an outline of processing by a printer driver.
[図 4]プリンタの処理の概要を示すフローチャート。  FIG. 4 is a flowchart showing an outline of printer processing.
[図 5]画像を印刷出力するジョブの進行を示すタイミングチャート。  FIG. 5 is a timing chart showing the progress of a job for printing out an image.
発明を実施するための形態  BEST MODE FOR CARRYING OUT THE INVENTION
[0028] 図 1にホストコンピュータとプリンタとが接続されたシステム 1の概略を示している。ホ ストコンピュータ 2は、オペレーティングシステム 11と、そのオペレーティング上で動き 、画像処理を行うアプリケーションソフト 12と、プリンタドライバ 13とがインストールされ ている。ホストコンピュータ 2は、アプリケーション 12により選択あるいは生成された画 像データ 81を、プリンタドライバ 13とインターフェイスケーブルや無線により形成され る通信路 4を介してプリンタ 3に転送する。プリンタ 3は、転送された画像データ 81〖こ 基づき、そのデータ 81に対応した印刷物を生成(印刷)する。  FIG. 1 shows an outline of a system 1 in which a host computer and a printer are connected. The host computer 2 is installed with an operating system 11, application software 12 that operates on the operating system and performs image processing, and a printer driver 13. The host computer 2 transfers the image data 81 selected or generated by the application 12 to the printer 3 via the printer driver 13 and the communication path 4 formed by an interface cable or wirelessly. Based on the transferred image data 81, the printer 3 generates (prints) a printed material corresponding to the data 81.
[0029] プリンタドライバ 13は、選択された画像データ 81を、 1または複数のラインを単位と する複数セットの転送データ 82に分割し、それらの転送データセット 82をプリンタ 3に 順番に転送する。プリンタ 3は、順番に転送された転送データセット 82に基づき画像 データ 81に対応するプリントアウトを生成する。なお、以降においては、転送データ のセット 82を、セットまたはデータセットと記述する。  The printer driver 13 divides the selected image data 81 into a plurality of sets of transfer data 82 in units of one or a plurality of lines, and transfers the transfer data sets 82 to the printer 3 in order. The printer 3 generates a printout corresponding to the image data 81 based on the transfer data set 82 transferred in order. Hereinafter, the transfer data set 82 is referred to as a set or a data set.
[0030] プリンタドライバ 13は、印刷イベントが発生し、ホスト 2の RAMあるいはハードデイス クなどのメモリ 14にスプールされた画像データ 81を適当な単位のデータセット 82に 分割して取得し、それらのデータセット 82を圧縮してから、あるいは未圧縮のまま、順 番にプリンタ 3に転送するデバイスドライバプログラムである。したがって、プリンタドラ ィバ 13は、コンピュータ 2にインストールされることにより、コンピュータ 2の適当な資源 を用いて所定の機能を実現する。このプリンタドライバ 13は、取得したデータセット 82 を順番に圧縮し、圧縮済み (圧縮後)のデータセット 82cをメモリ 14に格納し、圧縮済 みのデータセット 82c、ある 、は未圧縮 (圧縮前)のデータセット 82ηを選択してプリン タ 3に転送する転送機能 22を備えている。  The printer driver 13 divides and acquires the image data 81 spooled in the RAM 14 of the host 2 or the memory 14 such as a hard disk into data sets 82 of appropriate units when a print event occurs, and the data This is a device driver program that transfers the set 82 to the printer 3 in order after being compressed or uncompressed. Accordingly, the printer driver 13 is installed in the computer 2 to realize a predetermined function using an appropriate resource of the computer 2. The printer driver 13 sequentially compresses the acquired data set 82, stores the compressed data set 82c (after compression) in the memory 14, and stores the compressed data set 82c, which is not compressed (before compression). ) Data set 82η is selected and transferred to printer 3.
[0031] 転送機能 22は、出力データである画像データ 81を転送するために分割したデータ セットを順番に圧縮してメモリ 14に格納する圧縮機能 21と、メモリ 14に格納された圧 縮済みのデータセット 82cおよび未圧縮のデータセット 82ηの!、ずれか一方を、通信 路 4を介してプリンタ 3に出力する選択機能 24と、選択機能 24において選択されるデ ータセットを判断する判定機能 25とを備えている。判定機能 25は、それぞれのデー タセット 82の転送を開始できるとき(転送開始可能時)に、そのときの条件あるいは状 況を判断し、今回の転送するデータセット (今回のデータセット) 82として、圧縮され たデータセット 82c、または未圧縮のデータセット 82ηを選択する。 [0031] The transfer function 22 is the data divided to transfer the image data 81 that is output data. One of the compression function 21 that compresses the set in order and stores it in the memory 14 and the compressed data set 82c and the uncompressed data set 82η stored in the memory 14 via the communication path 4 The selection function 24 for outputting to the printer 3 and the determination function 25 for determining the data set selected by the selection function 24 are provided. The judgment function 25 judges the condition or status at that time when the transfer of each data set 82 can be started (when the transfer can be started), and as the data set 82 to be transferred this time (current data set) 82, Select compressed data set 82c or uncompressed data set 82η.
[0032] プリンタ 3は、 CPU31と、 RAM32と、 ROM33と、圧縮済みのデータセット 82cを伸 張する伸張部 34と、ホスト装置 2との間でデータ交換するインターフェイス 35と、プリ ンタエンジン 37を制御する機構制御部 36と、これらを接続するバス 38とを備えて ヽ る。インターフェイス 35は、ホスト装置 2から転送された圧縮済みのデータセット 82cま たは未圧縮のデータセット 82ηを取得し、そのデータセットを RAM32の一部の領域 に確保されているデータ転送用のバッファ 39に格納する。取得されたデータセット 82 が圧縮されていれば、伸張部 34により伸張され、機構制御部 36に供給され、そのデ ータセット 82に基づき印刷機構 (エンジン) 37により印刷物が印刷される。取得され たデータセット 82が未圧縮であれば、伸張処理は行われずに、機構制御部 36に供 給され、そのデータセット 82に基づき印刷機構 37により印刷物が印刷される。プリン タ 3においては、 CPU31力 ROM33に予め格納された制御用のプログラム(ファー ムウェア) 40に基づき種々の制御を行う。例えば、 CPU31は、バッファ 39に格納され たデータセット 82が圧縮されている力、未圧縮のデータであるかの識別、ノッファ 39 でのデータの受信制御を行う。さらに、 CPU31は、取得されたデータセット 82の単位 、例えば、ライン単位で印刷を行うように指示できる。  [0032] The printer 3 includes a CPU 31, a RAM 32, a ROM 33, a decompression unit 34 for decompressing the compressed data set 82c, an interface 35 for exchanging data with the host device 2, and a printer engine 37. A mechanism control unit 36 for controlling and a bus 38 for connecting them are provided. The interface 35 acquires the compressed data set 82c or the uncompressed data set 82η transferred from the host device 2, and the data set is a buffer for data transfer secured in a partial area of the RAM 32. Store in 39. If the acquired data set 82 is compressed, it is decompressed by the decompression unit 34 and supplied to the mechanism control unit 36, and a printed matter is printed by the printing mechanism (engine) 37 based on the data set 82. If the acquired data set 82 is uncompressed, it is supplied to the mechanism control unit 36 without being expanded, and the printed matter 37 is printed by the printing mechanism 37 based on the data set 82. The printer 3 performs various controls based on a control program (firmware) 40 stored in advance in the CPU 31 power ROM 33. For example, the CPU 31 performs a process of controlling whether the data set 82 stored in the buffer 39 is compressed, whether the data set 82 is uncompressed data, and receiving data at the nother 39. Further, the CPU 31 can instruct to perform printing in units of the acquired data set 82, for example, in units of lines.
[0033] 図 2に、プリンタドライバ 13に含まれる転送機能 22の概略構成を示している。圧縮 機能 21は、画像データ 81から未圧縮の転送用のデータセット 82ηを順番に取得して 、圧縮した後に、圧縮済みのデータセット 82cをメモリ 14に順番に格納する。ただし、 判定機能 25から、転送開始の信号 88を受けると、今回のデータセットの次に転送さ れる予定の次回のデータセットの圧縮が開始されていなければ、次回のデータセット の圧縮を開始する。すなわち、圧縮機能 21は、圧縮途中のデータセット 82ηの転送 指示 88を受信すると、そのデータセット 82ηの圧縮を中断して、次のデータセット 82 ηの圧縮を開始する。今回のデータセットの転送を開始するとき (転送開始時)に、次 回のデータセットの圧縮が開始されていなければ、次回のデータセットの圧縮を開始 する判断は、判定機能 25に含めることができる。 FIG. 2 shows a schematic configuration of the transfer function 22 included in the printer driver 13. The compression function 21 sequentially acquires uncompressed transfer data sets 82η from the image data 81, compresses them, and stores the compressed data sets 82c in the memory 14 in order. However, when the transfer start signal 88 is received from the judgment function 25, the compression of the next data set is started if the next data set scheduled to be transferred next to the current data set is not started. . That is, the compression function 21 transfers the data set 82η in the middle of compression. When the instruction 88 is received, the compression of the data set 82η is interrupted, and the compression of the next data set 82η is started. If the next data set compression is not started when the current data set transfer starts (at the start of the transfer), the decision to start the next data set compression may be included in the decision function 25. it can.
[0034] 判定機能 25は、第 1の判断機能 41と、第 2の判断機能 42とを含んでいる。これらの 判断機能 41および 42は、データセット毎に、転送が開始可能な時の状態を判定して 、選択機能 24から出力されるデータセット 82の種別 (圧縮であるか未圧縮であるか) を選択する。第 1の判断機能 41は、新たに転送を開始する今回のデータセット 82の 転送開始可能時に、今回のデータセット 82が圧縮機能 21により圧縮済みであれば、 選択機能 24により、メモリ 14の圧縮済みの今回のデータセット 82cが選択され、圧縮 済みの今回のデータセット 82cがプリンタ 3に転送されるように指示する。  The determination function 25 includes a first determination function 41 and a second determination function 42. These determination functions 41 and 42 determine the state when the transfer can be started for each data set, and the type of the data set 82 output from the selection function 24 (whether it is compressed or uncompressed). Select. The first determination function 41 uses the selection function 24 to compress the memory 14 if the current data set 82 has already been compressed by the compression function 21 when the transfer of the current data set 82 to be newly started can be started. The current data set 82c already selected is selected, and an instruction is given to transfer the compressed current data set 82c to the printer 3.
[0035] 圧縮済みのデータセット 82cのデータ量と、未圧縮のデータセット 82ηのデータ量と を比較すれば、圧縮済みのデータセット 82cのデータ量の方が少ない。転送開始可 能時に圧縮済みのデータセット 82cがすでに用意されているのであれば、圧縮に時 間を要しないので、圧縮済みのデータセットを転送する。本明細書において転送開 始可能時とは、今回のデータセット 82を転送できる状態になったタイミングを示す。 例えば、最初のデータセットであれば、ホストコンピュータ 2において印刷イベントが 発生し、印刷ジョブを開始するタイミングである。ジョブの途中であれば、前回転送し たデータセット 82がプリンタ 3のバッファ 39に格納され、プリンタ 3からホストコンビユー タ 2に転送許可信号 85が通知されたタイミングである。プリンタ 3から通知される受信 完了通知が、転送許可信号 85となる。  [0035] If the data amount of the compressed data set 82c is compared with the data amount of the uncompressed data set 82η, the data amount of the compressed data set 82c is smaller. If the compressed data set 82c is already prepared when transfer can be started, the compressed data set is transferred because time is not required for compression. In this specification, “when transfer can be started” indicates the timing when the current data set 82 can be transferred. For example, if it is the first data set, it is the timing when a print event occurs in the host computer 2 and a print job is started. If it is in the middle of the job, it is the timing when the previously transferred data set 82 is stored in the buffer 39 of the printer 3 and the transfer permission signal 85 is notified from the printer 3 to the host computer 2. The reception completion notification notified from the printer 3 is the transfer permission signal 85.
[0036] 第 2の判断機能 42は、転送開始可能時に、今回のデータセット 82が圧縮機能 21 により圧縮済みでないときの判断を行う。すなわち、第 2の判断機能 42は、まず、メモ リ 14に、圧縮済みの今回のデータセット 82cがないことを判断する。第 2の判断機能 4 2は、次に、今回のデータセット 82の圧縮処理が完了するのを待って、圧縮済みのデ ータセット 82cを転送したときの第 1の終了時間 Tcpと、圧縮処理の完了を待たずに、 未圧縮のデータセット 82ηを転送したときの第 2の終了時間 Tnpを予測する。そして、 先に終了すると予想されるデータセットを転送するように選択機能 24を制御する。す なわち、第 2の判断機能 42は、圧縮済みの今回のデータセット 82cと、未圧縮の今回 のデータセット 82ηの内、予測された終了時間の短い今回のデータセットを選択し転 送されるようにする。転送開始可能時に、データセットが圧縮済みでないケースでは 、そのデータセットの圧縮に要する残り時間および転送に要する時間のトータルの時 間が短い方が望ましい。第 2の判断機能 42は、第 1の終了時間 Tcpおよび第 2の終 了時間 Tnpを予測することにより、今回のデータセット 82の転送処理に要する時間を 短くなるようにしている。 The second determination function 42 determines when the current data set 82 has not been compressed by the compression function 21 when transfer can be started. That is, the second determination function 42 first determines that there is no compressed current data set 82c in the memory 14. Next, the second determination function 42 waits for the compression process of the current data set 82 to be completed, and then the first end time Tcp when the compressed data set 82c is transferred and the compression process. Without waiting for completion, predict the second end time Tnp when the uncompressed data set 82η is transferred. It then controls the selection function 24 to transfer the data set that is expected to end first. The In other words, the second decision function 42 selects and transfers the current data set 82c with the shortest predicted end time among the compressed current data set 82c and the uncompressed current data set 82η. Like that. If the data set is not compressed when transfer can be started, it is desirable that the total time of the remaining time required for compression and the time required for transfer is shorter. The second determination function 42 shortens the time required for the transfer process of the current data set 82 by predicting the first end time Tcp and the second end time Tnp.
[0037] この第 2の判断機能 42は、さらに、転送開始可能時にプリンタ 3に確保されている データ転送用のバッファ 39の空き容量 Nbにより、幾つかのケースを判断し、それぞ れに対して最適なデータセットを転送する判断機能を備えて 、る。以下で参照する 各パラメータは、特に示されない限り、データセットを転送する毎に得られる値である [0037] The second determination function 42 further determines several cases based on the free capacity Nb of the data transfer buffer 39 secured in the printer 3 when the transfer can be started. It has a judgment function to transfer the optimal data set. Each parameter referenced below is the value obtained each time the data set is transferred unless otherwise indicated.
R :転送レートまたは転送速度 (前回転送したデータセットの実績) R: Transfer rate or transfer rate (actual data set transferred last time)
Nb :転送開始可能時のプリンタ 3のデータ転送用のバッファ 39の空き容量  Nb: Free space in buffer 39 for data transfer of printer 3 when transfer can start
Nn :今回のデータセット 82 (未圧縮のデータセット 82c)のデータサイズまたはデー  Nn: Data size or data of the current data set 82 (uncompressed data set 82c)
Ncf :今回のデータセット 82を圧縮したときの予測データ量 (圧縮データ予測値) Tcf :転送開始可能時力 今回のデータセット 82の圧縮処理が完了するまで予測残 時間 (圧縮残時間予測値) Ncf: Predicted data volume when the current data set 82 is compressed (predicted compressed data value) Tcf: Force at which transfer can be started Predicted remaining time until compression processing of the current data set 82 is completed (predicted remaining time of compression)
K :プリンタ 3のノ ッファ 39の解放速度(定数または前回の実績)  K: Release speed of printer 3 notifier 39 (constant or previous record)
Tcp :圧縮済み今回のデータセット 82cを転送したときの予測終了時間(第 1の終了 時間)  Tcp: Predicted end time (first end time) when the compressed data set 82c is transferred
Tnp :未圧縮の今回のデータセット 82ηを転送したときの予測終了時間(第 2の終了 時間)  Tnp: Estimated end time (second end time) when uncompressed data set 82η is transferred
[0038] ケース A (Nn<Nb)  [0038] Case A (Nn <Nb)
ケース Aでは、バッファ 39の空き容量 Nbが未圧縮の今回のデータセットのデータ 量 Nnよりも大きい。このケースでは、以下の式(1)および(2)により第 1の終了時間 T cpおよび第 2の終了時間 Tnpを算出できる。 Tcp=Tcf + Ncf/R · · · (1) In Case A, the free space Nb of the buffer 39 is larger than the data amount Nn of the current uncompressed data set. In this case, the first end time T cp and the second end time Tnp can be calculated by the following equations (1) and (2). Tcp = Tcf + Ncf / R (1)
Tnp=Nn/R …(2)  Tnp = Nn / R (2)
[0039] このケース Aでは、今回のデータセットについて、圧縮されたデータセットおよび未 圧縮のデータセットの 、ずれでも支障なくプリンタ側のバッファ 39に転送できる。した がって、終了時間 Tcpおよび Tnpの短い方のデータセットを転送する。  In this case A, the current data set can be transferred to the buffer 39 on the printer side without any problem even if the compressed data set and the uncompressed data set are misaligned. Therefore, the data set with the shorter end times Tcp and Tnp is transferred.
[0040] ケース Β (?^^< ?^) < ?^1、かっ、1^<1 [0040] Case Β (? ^^ <? ^) <? ^ 1, brackets, 1 ^ <1
このケース Βの最初の条件は、バッファ 39の空き容量 Nb力 未圧縮の今回のデー タセット 82ηのデータ量 Nnよりも小さぐ圧縮データ予測値 Ncfよりは大きいことを示 す。この条件だけであれば、ノ ッファ 39の解放速度 Kが転送速度 Rと同じあるいは速 ければ、ノ ッファフルにならない。したがって、圧縮済みのデータセットおよび未圧縮 のデータセットの終了時間はケース Aと同等に計算できる。  The first condition in this case Β indicates that the free capacity of the buffer 39 Nb force is larger than the compressed data predicted value Ncf which is smaller than the data amount Nn of the current data set 82η uncompressed. Under this condition, if the release speed K of the notifier 39 is the same as or faster than the transfer speed R, the notifier will not become full. Therefore, the end time for compressed and uncompressed data sets can be calculated as in Case A.
[0041] ケース Bの次の条件は、ノ ッファ 39の解放速度 Kが転送速度 Rよりも遅いことを示 す。したがって、未圧縮のデータセットを転送する場合には、ノ ッファフルが発生する [0041] The following condition for Case B indicates that the release speed K of the notifier 39 is slower than the transfer speed R. Therefore, when transferring an uncompressed data set, a notafull occurs.
[0042] まず、このケース Bは、圧縮済みのデータセット 82cの第 1の終了時間 Tcpは、ケー ス Aと同様に式(1)により算出できる。一方、未圧縮のデータセット 82ηの第 2の終了 時間 Τηρは、ノ ッファフルが考慮された下式(3)により算出できる。未圧縮の今回の データセット 82ηを転送する際は、ノ ッファフルになるので、それ以降は解放速度 Κ で転送されるとして、その終了時間 Τηρを予測する。 [0042] First, in this case B, the first end time Tcp of the compressed data set 82c can be calculated by the equation (1) as in the case A. On the other hand, the second end time Τηρ of the uncompressed data set 82η can be calculated by the following equation (3) that takes into account the notafull. When the uncompressed data set 82η is transferred, it becomes noffer full, and after that it is transferred at the release rate 以降 and its end time Τηρ is predicted.
Tnp=Nb/R+ (Nn-Nb) /K …(3)  Tnp = Nb / R + (Nn-Nb) / K (3)
[0043] ケース C (Nb<Ncf)  [0043] Case C (Nb <Ncf)
ケース Cでは、転送開始可能時のプリンタ 3のバッファ 39の空き容量 Nbが、圧縮デ ータ予測値 Nc;fよりも小さい。この条件だけであれば、バッファ 39の解放速度 Kが転 送速度 Rと同じあるいは速ければ、バッファフルにならない。したがって、圧縮済みの データセットおよび未圧縮のデータセットの終了時間はケース Aと同等に計算できる  In case C, the free space Nb of the buffer 39 of the printer 3 when transfer can start is smaller than the predicted compressed data value Nc; f. Under this condition only, if the release speed K of the buffer 39 is equal to or faster than the transfer speed R, the buffer will not become full. Therefore, the end time for compressed and uncompressed datasets can be calculated as in case A
[0044] ケース Cにおいて、ノ ッファ 39の解放速度 Kが転送速度 Rよりも遅ければ (K<R)、 未圧縮のデータセットだけではなぐ圧縮済みのデータセットを転送する場合にも、バ ッファフルが発生する。したがって、このケースでは、バッファフルを考慮すると、圧縮 済みのデータセット 82cの第 1の終了時間 Tcpは下式 (4)により予測できる。未圧縮 のデータセット 82ηの第 2の終了時間 Tnpは、ケース Βと同様に、上記(3)式により求 めることができる。 [0044] In case C, if the release rate K of the notifier 39 is slower than the transfer rate R (K <R), even if the compressed data set is transferred more than just the uncompressed data set, the buffer is transferred. A buffer full occurs. Therefore, in this case, considering buffer full, the first end time Tcp of the compressed data set 82c can be predicted by the following equation (4). The second end time Tnp of the uncompressed data set 82η can be obtained by the above equation (3) as in the case ケ ー ス.
Tcp=Tcf + Nb/R+ (Ncf-Nb) /K …(4)  Tcp = Tcf + Nb / R + (Ncf-Nb) / K (4)
[0045] このケース Cでは、圧縮済みの今回のデータセット 82cも、未圧縮の今回のデータ セット 82ηと同様に転送中にバッファフルになり、それ以降は解放速度 Kで転送され るとして第 1の終了時間 Tcpを予測することができる。し力しながら、解放速度 Kが転 送速度 Rより遅いので、圧縮残時間予測値 Tcfに対してデータを転送する時間が占 める割合が大きくなり、殆どの場合、第 1の終了時間 Tcpの方が短い。さらに、ホスト 側で予測できる解放速度 Kの精度は低 、ので、解放速度 Kにより決まる時間が増加 すると、第 1の終了時間 Tcpおよび第 2の終了時間 Tnpの予測精度は低下する。した がって、本例においては、第 2の機能 42は、ケース Cであると判断すると、終了時間 の予測を行わず、圧縮機能 21が圧縮済みの今回のデータセット 82cを生成するのを 待って、圧縮済みのデータセット 82cを転送するように選択機能 24を制御する。  [0045] In this case C, the compressed current data set 82c also becomes full during transfer in the same way as the uncompressed current data set 82η, and after that the first data set 82c is transferred at the release speed K. The end time of Tcp can be predicted. However, since the release speed K is slower than the transfer speed R, the ratio of the data transfer time to the estimated remaining compression time Tcf increases, and in most cases the first end time Tcp Is shorter. Further, since the accuracy of the release speed K that can be predicted on the host side is low, if the time determined by the release speed K increases, the prediction accuracy of the first end time Tcp and the second end time Tnp decreases. Therefore, in this example, if the second function 42 determines that it is case C, the second function 42 does not predict the end time, and the compression function 21 generates the compressed current data set 82c. Wait and control the selection function 24 to transfer the compressed data set 82c.
[0046] このように、第 2の判断機能 42により、第 1の終了時間 Tcpおよび第 2の終了時間 T npを算出して、先に終了する方のデータセットの転送を選択することにより、今回の データセット 82の転送に要する処理時間を短縮する。第 2の判断機能 42は、第 1の 終了時間 Tcpおよび第 2の終了時間 Tnpの算出に用いられる転送速度 Rを、直前に 転送された前回のデータセット 82のデータサイズ Nnと、前回のデータセット 82のプリ ンタ 3における受信時間 Ttにより除算して算出する。プリンタ 3は、転送許可信号 85 と共に、転送速度 Rを求めるための情報としての受信時間 Tt、あるいはそれに基づ いて算出された転送速度 Rをホスト 2に送信する。ホスト 2のプリンタドライバ 13は、転 送許可信号 85を受けて今回のデータセット 82の転送が開始可能になったときに、そ の都度、直近の転送速度 Rを取得できる。このため、今回のデータセット 82の終了時 間 Tcpおよび Tnpの予測に際し、ジョブの進行途上における転送速度 Rに基づき、 第 1の終了時間 Tcpおよび第 2の終了時間 Tnpを算出できる。したがって、ジョブの 途中の転送路の状態変化などを考慮してデータセットを選択し、転送時間の短縮を 図ることができる。 In this way, by calculating the first end time Tcp and the second end time T np by the second determination function 42 and selecting the transfer of the data set that ends first, Reduce the processing time required to transfer this dataset 82. The second determination function 42 determines the transfer rate R used for calculating the first end time Tcp and the second end time Tnp, the data size Nn of the previous data set 82 transferred immediately before, and the previous data. Calculated by dividing by the reception time Tt in printer 3 of set 82. The printer 3 transmits the reception time Tt as information for obtaining the transfer rate R together with the transfer permission signal 85 or the transfer rate R calculated based on the reception time Tt to the host 2. The printer driver 13 of the host 2 can acquire the latest transfer rate R each time the transfer of the current data set 82 can be started upon receiving the transfer permission signal 85. Therefore, when the end times Tcp and Tnp of the current data set 82 are predicted, the first end time Tcp and the second end time Tnp can be calculated based on the transfer rate R in the course of the job. Therefore, the data set is selected in consideration of the status change of the transfer path in the middle of the job and the transfer time is shortened. Can be planned.
[0047] プリンタ 3は、転送許可信号 85と共に、さらに、ノ ッファ 39の空き容量 Nb、前回の データセットを処理したときのノ ッファの解放速度 Kを送信する。これらを受信するこ とにより、ホスト側のプリンタドライバ 13は、転送開始可能時における上記のケース A 〜Cを判断することが可能となり、さらに的確な第 1の終了時間 Tcpおよび第 2の終了 時間 Tnpを算出できる。このため、ジョブの途中のプリンタの状態変化などを考慮して データセットを選択し、転送時間の短縮を図ることができる。  The printer 3 transmits, together with the transfer permission signal 85, the free capacity Nb of the notifier 39 and the release rate K of the noffer when the previous data set is processed. By receiving these, the printer driver 13 on the host side can determine the above cases A to C when the transfer can be started, and more accurate first end time Tcp and second end time. Tnp can be calculated. This makes it possible to shorten the transfer time by selecting a data set in consideration of printer status changes during the job.
[0048] 転送速度 R、空き容量 Nbおよび解放速度 Kは、プリンタの型式、プリンタとの通信 経路などの情報が予めプリンタドライバ 13に設定されていれば、ジョブの進行状況か らプリンタドライバ 13が独自で予想することが可能である。プリンタ 3から実際の各値 を取得することにより、予測の信頼性を向上でき、また、プリンタドライバ 13の計算負 荷を下げることができる。  [0048] The transfer speed R, the free space Nb, and the release speed K are determined by the printer driver 13 based on the job progress status if information such as the printer model and the communication path with the printer is set in the printer driver 13 in advance. You can make your own predictions. By obtaining the actual values from the printer 3, the reliability of the prediction can be improved, and the calculation load of the printer driver 13 can be reduced.
[0049] 図 2に示すように、本例のプリンタ 3においてファームウェア 40により実現される制御 機能は、個々のデータセット 82の受信に要した時間 Tt、バッファ 39の解放速度 K、 ノ ッファ 39の空き容量 Nbを転送許可信号 85と共にホスト側に通知する機能 46を備 えている。また、この制御機能 40は、ノッファ 39に格納されたデータセット 82が圧縮 か未圧縮かを判別する機能 45も備えており、ノッファ 39に格納されたデータセット 8 2を伸張する機能 34に供給したり、伸張する機能 34をバイパスして機構制御 36に供 給したりする制御を行う。  [0049] As shown in FIG. 2, the control function realized by the firmware 40 in the printer 3 of this example is the time Tt required to receive each data set 82, the release speed K of the buffer 39, and the A function 46 for notifying the free side Nb to the host side together with the transfer permission signal 85 is provided. This control function 40 also has a function 45 for determining whether the data set 82 stored in the nother 39 is compressed or uncompressed. The control function 40 is supplied to the function 34 for expanding the data set 82 stored in the nother 39. Or supply the mechanism control 36 by bypassing the expanding function 34.
[0050] ノッファ 39の解放速度 Kは、バッファ 39に格納されているデータの圧縮率に比例し て変わるのが一般的である。このため、ホスト側でバッファ 39の解放速度 Kを予測す る場合は、未圧縮のデータが格納されて!ヽるときのノッファ 39の解放速度 Kをプリン タ 3の型式などにより予測し、圧縮率 (未圧縮データサイズ NnZ圧縮データサイズ N c)力も圧縮されたデータのバッファ 39の解放速度 Kを算出できる。未圧縮のデータ に対応するノ ッファ 39の解放速度を Knとすると、下式(5)によりバッファ 39の解放速 度 Κを算出できる。  [0050] Generally, the release speed K of the noffer 39 changes in proportion to the compression rate of the data stored in the buffer 39. For this reason, when predicting the release speed K of the buffer 39 on the host side, the compression speed of the notch 39 when the uncompressed data is stored is predicted by the model of the printer 3, etc. The rate (uncompressed data size NnZ compressed data size Nc) can also calculate the release speed K of the compressed data buffer 39. If the release speed of the notch 39 corresponding to the uncompressed data is Kn, the release speed バ ッ フ ァ of the buffer 39 can be calculated by the following equation (5).
K=Kn X Nn/Nc …(5)  K = Kn X Nn / Nc (5)
[0051] さらに、第 1の終了時間 Tcpを求めるために使用される圧縮残時間予測値 Tcfも、 ホスト側の CPUの能力およびタスクの状態などによって変動する値である。プリンタド ライバ 13は、ホスト 2の条件は自ら取得できるので、それぞれのデータセットの転送終 了時間の予測にホスト 2の状態を反映することが可能である。 [0051] Further, the estimated remaining compression time Tcf used to obtain the first end time Tcp is This value varies depending on the host CPU capacity and task status. Since the printer driver 13 can acquire the conditions of the host 2 by itself, it can reflect the state of the host 2 in the prediction of the transfer end time of each data set.
[0052] 図 3に、プリンタドライバ 13をインストールしたコンピュータ(ホスト装置) 2により、出 力データが複数セットに分割されてプリンタ 3へ転送される過程をフローチャートによ り示している。ステップ 51において、ホスト装置 2で画像データ 81を印刷するイベント (印刷指示)が発生する。判定機能 25は、ステップ 52において、先頭のデータセット については、圧縮済みのデータセットがメモリ 14にはないと判断する。第 2の判断機 能 42は、ステップ 65において、先頭のデータセットを未圧縮のデータセット 82ηとし て転送する。 FIG. 3 is a flowchart showing a process in which output data is divided into a plurality of sets and transferred to the printer 3 by the computer (host device) 2 in which the printer driver 13 is installed. In step 51, an event (print instruction) for printing the image data 81 in the host apparatus 2 occurs. In step 52, the determination function 25 determines that there is no compressed data set in the memory 14 for the first data set. In step 65, the second decision function 42 transfers the first data set as an uncompressed data set 82η.
[0053] したがって、出力ジョブが開始されると、先頭のデータセットを圧縮する時間が省か れる。先頭のデータセットのデータ量力 プリンタ 3が出力を開始するのに充分な情 報を含んでいれば、ジョブスタートからプリンタ 3の出力が開始されるまでの時間を短 縮できる。  [0053] Therefore, when the output job is started, time for compressing the first data set is saved. Data capacity of the first data set If the printer 3 contains enough information to start output, the time from the start of the job to the start of output of the printer 3 can be shortened.
[0054] また、先頭のデータセットの転送許可信号 85は、受信完了通知であり、それと共に 、先頭のデータセットの転送速度 Rが得られる。この転送速度 Rは、次回のデータセッ トの終了時間の予測に使用できる。また、先頭のデータセットを転送した実績値として 、ノ ッファの空き容量 Nbおよび解放速度 Κを取得できる。これらのパラメータも、次回 のデータセットの終了時間の予測に使用することができる。したがって、転送速度 Rを 求めるためにテストデータを転送したり、そのために費やされる時間も不用となる。こ れらの点においても、プリンタドライバ 13は、即座にデータの転送を開始でき、プリン タ 3における印刷を開始できる。このため、ユーザが印刷開始を待つ時間を短縮でき る。  Further, the transfer permission signal 85 of the first data set is a reception completion notification, and at the same time, the transfer rate R of the first data set is obtained. This transfer rate R can be used to predict the end time of the next data set. In addition, the free capacity Nb and release speed Κ of the noffer can be acquired as the actual values transferred from the first data set. These parameters can also be used to predict the end time of the next data set. Therefore, the test data is transferred to obtain the transfer rate R, and the time spent for that is also unnecessary. Also in these respects, the printer driver 13 can start data transfer immediately and can start printing in the printer 3. For this reason, it is possible to shorten the time for which the user waits for the start of printing.
[0055] ステップ 65において、先頭のデータセット 82の転送が開始されると、ステップ 58に おいて、圧縮機能 21は、次回のデータセット 82の圧縮処理を開始する。これにより、 ホスト装置 2においては、先頭のデータセット 82の転送と共に、次回のデータセット 8 2の圧縮処理が並列して行われる。  [0055] When transfer of the first data set 82 is started in step 65, in step 58, the compression function 21 starts compression processing of the next data set 82. As a result, in the host device 2, the next data set 82 is compressed in parallel with the transfer of the first data set 82.
[0056] 前回のデータセットの転送が終了すると、プリンタ 3から受信完了通知である転送許 可信号 85が送信される。ステップ 53において、プリンタドライバ 13は、転送許可信号 85を受信すると、今回のデータセット 82の転送を開始できると判断する。今回のデー タセットの転送が開始可能になるステップ 53のタイミングで、転送機能 22は、前回の データセット 82の受信時間 Tt、バッファ 39の空き容量 Nbおよびバッファ 39の解放 速度 Kを、転送許可信号または受信完了通知 85と共に取得する。 [0056] When the transfer of the previous data set is completed, a transfer permission is received from the printer 3 as a reception completion notification. A good signal 85 is transmitted. In step 53, when receiving the transfer permission signal 85, the printer driver 13 determines that the transfer of the current data set 82 can be started. At the timing of step 53 when the transfer of the current data set can be started, the transfer function 22 sets the transfer permission signal to the reception time Tt of the previous data set 82, the free space Nb of the buffer 39, and the release speed K of the buffer 39. Alternatively, it is obtained together with the reception completion notification 85.
[0057] ステップ 54において、判定機能 25は、圧縮済みの今回のデータ 82cがメモリ 14に 格納されているカゝ否かを判断する。格納されていれば、第 1の判断機能 41が選択手 段 24を制御し、ステップ 55において、メモリ 14から圧縮済みの今回のデータセット 8 2cの転送を開始する。メモリ 14に圧縮済みの今回のデータセット 82cがない場合は 、第 2の判断機能 42は、現状がケース A〜Cのいずれであるかを判断する。ステップ 59において、ノ ッファの空き容量 Nbが圧縮データ予測値 Nc;fよりも小さければ、ケ ース Cに該当する。したがって、ステップ 60において、今回のデータセット 82の圧縮 処理が完了するのを待ち、ステップ 55において、圧縮済みの今回のデータセット 82c の転送を開始する。 [0057] In step 54, the determination function 25 determines whether the compressed current data 82c is stored in the memory 14. If it is stored, the first determination function 41 controls the selection means 24, and in step 55, the transfer of the compressed current data set 82c from the memory 14 is started. If there is no compressed current data set 82c in the memory 14, the second determination function 42 determines which of the cases A to C is present. In step 59, if the free space Nb of the nofer is smaller than the compressed data predicted value Nc; f, it corresponds to the case C. Therefore, in step 60, the process waits for the compression processing of the current data set 82 to be completed, and in step 55, transfer of the compressed current data set 82c is started.
[0058] ステップ 59において、バッファの空き容量 Nbが圧縮データ予測値 Ncfよりも大きけ れば、ステップ 61において、バッファの空き容量 Nbと未圧縮のデータセットのデータ 量 Nnとを比較する。バッファの空き容量 Nbが未圧縮のデータセットのデータ量 Nnよ りも小さければケース Bに該当するので、ステップ 62において、第 2の終了時間 Tnp については解放速度 Κをカ卩味した式(3)により予測する。ノ ッファの空き容量 Nbが 未圧縮のデータセットのデータ量 Nnよりも大きければケース Aに該当するので、ステ ップ 63において、第 2の終了時間 Tnpについては解放速度 Kを加味しない式(2)に より予測する。なお、第 1の終了時間 Tcpについてはいずれの場合も式(1)により予 測する。  In step 59, if the buffer free space Nb is larger than the compressed data predicted value Ncf, in step 61, the buffer free space Nb is compared with the data amount Nn of the uncompressed data set. Since the buffer free space Nb is smaller than the data amount Nn of the uncompressed data set, it corresponds to case B. Therefore, in step 62, for the second end time Tnp, an expression that takes into account the release speed Κ (3 ). If the free space Nb is larger than the data volume Nn of the uncompressed data set, it corresponds to case A. Therefore, in step 63, the formula (2) that does not consider the release speed K for the second end time Tnp. ) To predict. Note that the first end time Tcp is estimated using Equation (1) in all cases.
[0059] ステップ 64において、算出した第 1の終了時間 Tcpおよび第 2の終了時間 Tnpを 比較する。第 1の終了時間 Tcpが先に終了するのであれば、ステップ 60において、 今回のデータセット 82の圧縮処理が完了するまで待ち、ステップ 55において、圧縮 済みの今回のデータセットの転送を開始する。第 2の終了時間 Tnpが第 1の終了時 間 Tcpよりも短ぐ先に終了すると予測されるのであれば、ステップ 65において、圧縮 処理の完了を待たずに、今回のデータセット 82を未圧縮のまま転送を開始する。こ のような判断を行なうことにより、圧縮処理と転送処理のトータルの処理時間が、デー タセット毎に最適化され、ジョブ全体の処理時間を短縮できる。 [0059] In step 64, the calculated first end time Tcp and second end time Tnp are compared. If the first end time Tcp ends first, in step 60, it waits until the compression processing of the current data set 82 is completed, and in step 55, transfer of the compressed current data set is started. If the second end time Tnp is expected to end earlier than the first end time Tcp, then in step 65 the compression is performed. Without waiting for the completion of processing, transfer of the current data set 82 is started without being compressed. By making such a determination, the total processing time of compression processing and transfer processing is optimized for each data set, and the processing time of the entire job can be shortened.
[0060] ステップ 56において、全てのデータセットが転送された力否かを判断する。未転送 のデータセットがあれば、ステップ 57において、次の未転送のデータセットの圧縮が 開始されている力否かを確認する。圧縮が開始されていなければ、圧縮機能 21によ り、ステップ 58で次のデータセットの圧縮を開始する。圧縮機能 21が今回のデータ セットの圧縮を行なっていれば、それを中断して次回のデータセットの圧縮を開始す る。これにより、無駄な圧縮作業を最小限に止めることができると共に、次のデータセ ットの圧縮処理を早期に開始できる。このため、ステップ 54において、圧縮済みのデ ータセットを転送できる可能性が高くなり、ジョブ全体の処理時間をさらに向上できる [0060] In step 56, it is determined whether all data sets have been transferred. If there is an untransferred data set, step 57 checks whether the next untransferred data set has been compressed. If compression has not started, the compression function 21 starts compression of the next data set in step 58. If the compression function 21 is compressing the current data set, it is interrupted and compression of the next data set is started. As a result, useless compression work can be minimized, and compression processing of the next data set can be started early. This increases the likelihood that the compressed data set can be transferred in step 54, further improving the overall job processing time.
[0061] 図 3に示した処理を行うためのプリンタドライバプログラム 13は、各ステップを実行 可能な命令を有するプログラムあるいはプログラム製品である。プログラム製品は、 C D—ROM等の適当な記録媒体に記録して提供したり、コンピュータネットワークを介 して提供することが可能である。 The printer driver program 13 for performing the processing shown in FIG. 3 is a program or program product having instructions that can execute each step. The program product can be provided by being recorded on a suitable recording medium such as a CD-ROM or via a computer network.
[0062] 図 4に、プリンタ 3においてデータを受信する処理をフローチャートにより示してある 。プリンタ 3では、ステップ 71において、圧縮済みまたは未圧縮の今回のデータセット 82の受信を開始する。ステップ 72において、今回のデータセット 82の全てがバッファ 39に格納されると、ステップ 73において、通知機能 46により、今回のデータセット 82 の受信に要した時間 Tt、ノ ッファ 39の空き容量 Nbおよびバッファ 39の解放速度 K を含む情報を、転送許可信号 85と共にホスト 2に返す。プリンタ 3においては、受信 処理と並行して、ノ ッファ 39にデータセットがあれば、圧縮されたデータは伸張部 34 により伸張した後に、未圧縮のデータは伸張せずに、印刷機構 37に送って印刷を行 なう。  FIG. 4 is a flowchart showing a process for receiving data in the printer 3. In Step 71, the printer 3 starts receiving the current data set 82 that has been compressed or not compressed. In step 72, when all of the current data set 82 is stored in the buffer 39, in step 73, the notification function 46 causes the time Tt required to receive the current data set 82, the free space Nb of the nofer 39, and Information including the release rate K of the buffer 39 is returned to the host 2 together with the transfer permission signal 85. In the printer 3, in parallel with the reception process, if there is a data set in the nota 39, the compressed data is decompressed by the decompression unit 34, and the uncompressed data is not decompressed and sent to the printing mechanism 37. Print.
[0063] 図 4に示した処理を行うための制御プログラム(ファームウェア) 40は、各ステップを 実行可能な命令を有するプログラムあるいはプログラム製品である。このプログラム製 品は、 CD— ROM等の適当な記録媒体に記録して提供したり、コンピュータネットヮ ークを介して提供することが可能である。 [0063] The control program (firmware) 40 for performing the processing shown in FIG. 4 is a program or program product having instructions capable of executing each step. This program product can be provided on a suitable recording medium such as a CD-ROM or provided on a computer network. Can be provided via a network.
[0064] 図 5に、ホスト 2およびプリンタ 3を備えたシステム 1において、実行される印刷ジョブ の一例を、タイミングチャートにより示している。ホスト 2で時刻 tOに印刷イベントが発 生すると、先頭のデータセット 82は、第 2の判断機能 42の判断により、未圧縮のまま プリンタ 3に転送される。また、先頭のデータセット 82の転送が開始されると、圧縮機 能 21により次回のデータセット 82の圧縮処理が開始される。  FIG. 5 is a timing chart showing an example of a print job executed in the system 1 including the host 2 and the printer 3. When a print event occurs at the time tO in the host 2, the first data set 82 is transferred to the printer 3 without being compressed according to the determination by the second determination function 42. When the transfer of the first data set 82 is started, the compression function 21 starts the next compression process of the data set 82.
[0065] プリンタ 3は、時刻 tlにおいて、未圧縮の先頭のデータセット 82ηの全てがバッファ 39に格納されると、データセット 82ηの印刷を開始する。プリンタの制御機能 40は、 転送許可信号 85をホスト 2に返す。同時に、転送速度 R、ノ ッファの空き容量 Nbおよ びバッファの解放速度 Kをホスト 2に送信する。  [0065] When all the uncompressed head data set 82η is stored in the buffer 39 at time tl, the printer 3 starts printing the data set 82η. The printer control function 40 returns a transfer permission signal 85 to the host 2. At the same time, it sends to the host 2 the transfer rate R, the free space Nb of the buffer, and the buffer release rate K.
[0066] プリンタドライバ 13においては、プリンタ 3からの転送許可信号 85を受け取った時 刻 t2力 次のデータセット 82の転送の開始が可能となる時である。この例においては 、転送開始可能時である時刻 t2には、次のデータセット(時刻 t2を基準とする今回の データセット) 82の圧縮処理が済んでいない。このため、第 2の判断機能 42は、ケー ス A〜Cの条件を判断する。ケース Bであれば、式(1)により第 1の終了時間 Tcpを算 出し、式(3)によりバッファの解放速度 Kを加味して第 2の終了時間 Tnpを算出する。 ノ ッファがフルになり、その後、解放速度 Κで転送が行われると予想しても、第 2の終 了時間 Tnpの方が第 1の終了時間 Tcpよりも短いとして良い。したがって、時刻 t2に 、今回のデータセット 82の圧縮処理の完了を待たずに、未圧縮のデータセット 82ηで 転送を行なう。同時に、次回のデータセット 82の圧縮処理を開始する。このケースで は、転送開始可能時と、転送開始時とは略等しいタイミングとなる。  In the printer driver 13, when the transfer permission signal 85 is received from the printer 3, the time t2 is the time when the next data set 82 can start to be transferred. In this example, the compression processing of the next data set (current data set based on time t2) 82 is not completed at time t2 when transfer can be started. Therefore, the second determination function 42 determines the conditions of cases A to C. In case B, the first end time Tcp is calculated using equation (1), and the second end time Tnp is calculated using equation (3) with the buffer release speed K taken into account. The second end time Tnp may be shorter than the first end time Tcp even if it is expected that the transfer will occur at the release rate Κ after the nofler becomes full. Therefore, at time t2, transfer is performed using the uncompressed data set 82η without waiting for the completion of the compression process of the current data set 82. At the same time, the compression process for the next data set 82 is started. In this case, the timing when the transfer can be started and the timing when the transfer starts are substantially equal.
[0067] 時刻 t4において、未圧縮の今回のデータセット 82ηが全てプリンタ 3で受信されると 、上記と同様に、プリンタ 3から転送許可信号 85とその他のパラメータがホスト 2に送 信される。時刻 t5に、転送許可信号 85および他の情報をホスト 2が受信すると、次の データセット 82の転送が開始可能になる。今回のデータセット 82は、転送開始可能 な時刻 t5よりも前の時刻 t3に既に圧縮処理が終了してメモリ 14に格納されており、 圧縮機能 21はさらに次のデータセット 82の圧縮を行っている。このため、時刻 t5に おいては、第 1の判断機能 41の判断により、圧縮済みの今回のデータセット 82cの転 送が開始される。時刻 t6において、この圧縮済みのデータセット 82cが全て受信され ると、プリンタ 3からホスト側に再び転送開始信号 85が通知される。 When all uncompressed current data set 82η is received by printer 3 at time t4, similarly to the above, transfer permission signal 85 and other parameters are transmitted from host 3 to host 2. When host 2 receives transfer permission signal 85 and other information at time t5, transfer of the next data set 82 can be started. The current data set 82 has already been compressed and stored in the memory 14 at a time t3 before the transfer start time t5, and the compression function 21 further compresses the next data set 82. Yes. For this reason, at time t5, the first determination function 41 determines the transfer of the compressed current data set 82c. Transmission starts. When all the compressed data sets 82c are received at time t6, the transfer start signal 85 is notified again from the printer 3 to the host side.
[0068] 時刻 t7において、ホスト 2が転送開始信号 85を受け取ると、今回のデータセット 82 は、転送を開始可能な時刻 t7では圧縮処理が済んでいない。また、プリンタ 3のバッ ファ 39は殆どフルの状態であり、空き容量 Nbが小さい。したがって、第 2の判断機能 42は、圧縮データ予測値 Nc;fよりも空き容量 Nbが小さいので、ケース Cであると判断 する。このため、第 2の判断機能 42は、今回のデータセットの圧縮が終了する時刻 t8 まで待って、圧縮済みのデータセットの転送を開始するように判断する。時刻 t8が転 送を開始する時になる。  When the host 2 receives the transfer start signal 85 at time t7, the current data set 82 has not been compressed at time t7 at which transfer can be started. In addition, the buffer 39 of the printer 3 is almost full and the free space Nb is small. Therefore, the second determination function 42 determines that it is case C because the free space Nb is smaller than the compressed data predicted value Nc; f. Therefore, the second determination function 42 determines to start transfer of the compressed data set after waiting until time t8 when the compression of the current data set ends. Time t8 is when the transfer starts.
[0069] 時刻 t9において、この圧縮済みのデータセット 82cが全てプリンタ 3で受信されると 、転送開始信号 85がホスト 2に返される。時刻 tlOに、転送開始信号 85をホスト 2が 受信すると、転送開始可能になる。時刻 tlOに、今回のデータセット 82の圧縮処理が 済んでいない。このため、第 2の判断機能 42は、第 1の終了時間 Tcpおよび第 2の終 了時間 Tnpを予測する。このケースでは、第 2の終了時間 Τηρが第 1の終了時間 Tc pよりも短い。したがって、今回のデータセット 82を圧縮処理の完了を待たずに、未圧 縮のデータセット 82ηで出力する。  [0069] When all the compressed data sets 82c are received by the printer 3 at time t9, a transfer start signal 85 is returned to the host 2. When host 2 receives transfer start signal 85 at time tlO, transfer can be started. At time tlO, the current data set 82 has not been compressed. Therefore, the second determination function 42 predicts the first end time Tcp and the second end time Tnp. In this case, the second end time Τηρ is shorter than the first end time Tcp. Therefore, the current data set 82 is output as an uncompressed data set 82η without waiting for completion of the compression process.
[0070] このプリンタドライバ 13は、各々のデータセット 82の転送終了時間(終了時刻)を、 そのときの転送速度 R、ノ ッファ容量 Nbおよび解放速度 Kにより転送開始可能時に 予測し、最も転送終了時刻の早い方法で個々のデータセットを転送している。このた め、データセットを転送する毎に転送時間が短くなるようにデータセットが選択される ので、出力ジョブ全体の処理時間の短縮が図られる。  [0070] The printer driver 13 predicts the transfer end time (end time) of each data set 82 by the transfer rate R, the notch capacity Nb, and the release rate K at that time when transfer can be started. Individual data sets are transferred in a timely manner. For this reason, each time the data set is transferred, the data set is selected so that the transfer time is shortened, so that the processing time of the entire output job can be shortened.
[0071] なお、上記では、プリンタ 3を周辺機器とし、画像データ 81を出力データとして、プリ ンタ 3に対してデータを転送し、プリンタ 3において印刷物を印刷する例を示している 。周辺機器はファックスなどの他の印刷機器であっても良ぐファックスであると、周辺 機器とホストが一体になつているケースもある。さらに、出力データは画像データに限 らず、テキストデータなどであっても良い。さらに、周辺装置には、画像データを画像 として生成 (表示)する LCDなどの表示デバイスなど、ホスト装置からの出力データを 受信する種々の機器が含まれる。  In the above example, the printer 3 is a peripheral device, the image data 81 is output data, the data is transferred to the printer 3, and the printed matter is printed by the printer 3. Peripheral devices may be other printing devices such as fax machines, but in some cases the peripheral device and the host are integrated. Furthermore, the output data is not limited to image data, and may be text data. In addition, peripheral devices include various devices that receive output data from a host device, such as a display device such as an LCD that generates (displays) image data as an image.

Claims

請求の範囲 The scope of the claims
[1] ホスト装置から出力データを複数セットの転送データに分割して周辺機器に転送す る工程を有する方法であって、当該転送する工程は、前記複数セットの転送データを 順番に圧縮してメモリに格納し、圧縮済みのデータセットおよび未圧縮のデータセッ トのいずれかを選択して転送し、さら〖こ、この転送する工程は、  [1] A method including a step of dividing output data from a host device into a plurality of sets of transfer data and transferring the data to a peripheral device, wherein the transfer step compresses the plurality of sets of transfer data in order. Store in memory, select and transfer either compressed or uncompressed data sets.
今回のデータセットの転送の開始が可能となったときに、前記今回のデータセットが 圧縮済みであれば、圧縮済みの今回のデータセットを転送し、  If the current data set has already been compressed when the transfer of the current data set can be started, the compressed current data set is transferred,
前記今回のデータセットの転送の開始が可能となったときに、前記今回のデータセ ットが圧縮済みでなければ、前記圧縮済みの今回のデータセットを転送したときの第 If the current data set is not compressed when the transfer of the current data set can be started, the first time when the compressed current data set is transferred.
1の終了時間と、未圧縮の今回のデータセットを転送したときの第 2の終了時間とを 予測し、予測された終了時間の短い今回のデータセットを転送し、 Predict the end time of 1 and the second end time when the uncompressed current data set is transferred, transfer the current data set with a short predicted end time,
今回のデータセットの転送を開始するときに、次回のデータセットの圧縮が開始さ れていなければ、前記次回のデータセットの圧縮を開始することを含む、方法。  A method including starting compression of the next data set if compression of the next data set is not started when the transfer of the current data set is started.
[2] 前記転送する工程は、前回のデータセットの転送速度に基づき、前記第 1の終了 時間および第 2の終了時間を予測することを含む、請求項 1の方法。 [2] The method of claim 1, wherein the transferring step includes predicting the first end time and the second end time based on a transfer rate of a previous data set.
[3] 前記転送する工程は、前記転送速度、または前記転送速度を求めるための情報を[3] The transferring step includes the transfer rate or information for obtaining the transfer rate.
、前記周辺機器から転送許可信号と共に取得することを含む、請求項 2の方法。 3. The method of claim 2, comprising obtaining along with a transfer permission signal from the peripheral device.
[4] 前記転送する工程は、さらに、前記圧縮済みの今回のデータセットの予測データ量 力 データ転送に割当てられた前記周辺機器のバッファの空き容量よりも大きいとき は、前記圧縮済みの今回のデータセットを転送することを含む、請求項 1の方法。 [4] The transferring step further includes the predicted data amount of the compressed current data set when the data size is larger than the free space of the buffer of the peripheral device allocated for data transfer. 2. The method of claim 1, comprising transferring the data set.
[5] 前記転送する工程は、さらに、前記圧縮済みの今回のデータセットの予測データ量 が前記周辺機器のバッファの空き容量よりも小さぐかつ、前記未圧縮の今回のデー タセットのデータ量が前記バッファの空き容量よりも大き 、ときは、前回のデータセット の転送速度および前記バッファの解放速度に基づき前記第 2の終了時間を予測する ことを含む、請求項 1の方法。 [5] In the transferring step, the predicted data amount of the compressed current data set is smaller than a free capacity of the buffer of the peripheral device, and the data amount of the uncompressed current data set is further reduced. 2. The method of claim 1, comprising: predicting the second end time based on a transfer rate of a previous data set and a release rate of the buffer when larger than a free capacity of the buffer.
[6] 出力データを複数セットの転送データに分割して周辺機器に転送し、前記周辺機 器において前記出力データに基づく出力を生成可能とする転送手段を有する装置 であって、 前記転送手段は、前記複数セットの転送データを順番に圧縮してメモリに格納し、 圧縮済みのデータセットおよび未圧縮のデータセットのいずれかを選択して転送し、 さらに、この転送手段は、 [6] An apparatus having transfer means that divides output data into a plurality of sets of transfer data and transfers the data to a peripheral device, and enables the peripheral device to generate an output based on the output data, The transfer means compresses the plurality of sets of transfer data in order and stores them in a memory, selects and transfers either a compressed data set or an uncompressed data set, and the transfer means further includes:
今回のデータセットの転送の開始が可能となったときに、前記今回のデータセットが 圧縮済みであれば、圧縮済みの今回のデータセットを転送すること、  If the current data set is already compressed when the transfer of the current data set can be started, the compressed current data set can be transferred,
前記今回のデータセットの転送の開始が可能となったときに、前記今回のデータセ ットが圧縮済みでなければ、前記圧縮済みの今回のデータセットを転送したときの第 If the current data set is not compressed when the transfer of the current data set can be started, the first time when the compressed current data set is transferred.
1の終了時間と、未圧縮の今回のデータセットを転送したときの第 2の終了時間とを 予測し、予測された終了時間の短い今回のデータセットを転送すること、 Predicting the end time of 1 and the second end time when the uncompressed current data set is transferred, and transferring the current data set with a short predicted end time,
今回のデータセットの転送を開始するときに、次回のデータセットの圧縮が開始さ れていなければ、前記次回のデータセットの圧縮を開始すること、を含む判断を行う 、装置。  A device that makes a determination including starting compression of the next data set if compression of the next data set has not started when the transfer of the current data set is started.
[7] 前記転送手段は、前回のデータセットの転送速度に基づき、前記第 1の終了時間 および第 2の終了時間を予測する、請求項 6の装置。  7. The apparatus according to claim 6, wherein the transfer means predicts the first end time and the second end time based on a transfer rate of a previous data set.
[8] 前記転送手段は、前記転送速度、または前記転送速度を求めるための情報を、前 記周辺機器から転送許可信号と共に取得する、請求項 7の装置。  8. The apparatus according to claim 7, wherein the transfer means acquires the transfer rate or information for obtaining the transfer rate together with a transfer permission signal from the peripheral device.
[9] 前記転送手段は、さらに、  [9] The transfer means further includes:
前記圧縮済みの今回のデータセットの予測データ量力 データ転送に割当てられ る前記周辺機器のバッファの空き容量よりも大き 、ときは、前記圧縮済みの今回のデ ータセットを転送すること、を含む判断を行う、請求項 6の装置。  The predicted data capacity of the compressed current data set is larger than the free space of the peripheral device's buffer allocated for data transfer, and when the compressed data set is transferred, 7. The apparatus of claim 6, wherein
[10] 前記転送手段は、前記圧縮済みの今回の予測データ量が、前記周辺機器のバッ ファの空き容量よりも小さぐかつ、前記未圧縮の今回のデータセットのデータ量が前 記バッファの空き容量よりも大きいときは、前回のデータセットの転送速度および前記 バッファの解放速度に基づき前記第 2の終了時間を予測する、請求項 6の装置。  [10] The transfer means may be configured such that the compressed current predicted data amount is smaller than the free space of the buffer of the peripheral device, and the data amount of the uncompressed current data set is stored in the buffer. 7. The apparatus according to claim 6, wherein when it is larger than the free capacity, the second end time is predicted based on a transfer rate of a previous data set and a release rate of the buffer.
[11] ホスト装置と、このホスト装置から複数セットの転送データに分割して転送された出 力データに基づき印刷するプリンタとを有するシステムであって、  [11] A system having a host device and a printer that prints based on output data divided and transferred from the host device into a plurality of sets of transfer data,
前記ホスト装置は、前記複数セットの転送データを順番に圧縮してメモリに格納し、 圧縮済みのデータセットおよび未圧縮のデータセットのいずれかを選択して転送する 前記転送手段を有し、さらに、この転送手段は、 The host device compresses the plurality of sets of transfer data in order and stores them in a memory, and selects and transfers either a compressed data set or an uncompressed data set. The transfer means further comprising:
今回のデータセットの転送の開始が可能となったときに、前記今回のデータセットが 圧縮済みであれば、圧縮済みの今回のデータセットを転送する、  If the current data set has already been compressed when transfer of the current data set can be started, the compressed current data set is transferred.
前記今回のデータセットの転送の開始が可能となったときに、前記今回のデータセ ットが圧縮済みでなければ、前記圧縮済みの今回のデータセットを転送したときの第 If the current data set is not compressed when the transfer of the current data set can be started, the first time when the compressed current data set is transferred.
1の終了時間と、未圧縮の今回のデータセットを転送したときの第 2の終了時間とを 予測し、予測された終了時間の短い今回のデータセットを転送する、 Predict the end time of 1 and the second end time when the uncompressed current data set is transferred, and transfer the current data set with a short predicted end time,
今回のデータセットの転送を開始するときに、次回のデータセットの圧縮が開始さ れていなければ、前記次回のデータセットの圧縮を開始すること、を含む判断を行う 、システム。  When starting the transfer of the current data set, if the compression of the next data set has not started, the system performs a determination including starting the compression of the next data set.
[12] 前記転送手段は、前回のデータセットの転送速度に基づき、前記第 1の終了時間 および第 2の終了時間を予測し、  [12] The transfer means predicts the first end time and the second end time based on the transfer rate of the previous data set,
前記プリンタは、前記転送速度、または前記転送速度を求めるための情報を、転送 許可信号と共に送信する手段を備えて 、る、請求項 11のシステム。  12. The system according to claim 11, wherein the printer includes means for transmitting the transfer speed or information for determining the transfer speed together with a transfer permission signal.
[13] 前記転送手段は、さらに、 [13] The transfer means further includes:
前記圧縮済みの今回のデータセットの予測データ量力 データ転送に割当てられ る前記プリンタのバッファの空き容量よりも大きいときは、前記圧縮済みの今回のデー タセットを転送すること、を含む判断を行う、請求項 11のシステム。  A predicted data capacity of the compressed current data set is determined to include a transfer of the compressed current data set when it is larger than a free space in the printer buffer allocated for data transfer; The system of claim 11.
[14] 前記転送手段は、前記圧縮済みの今回の予測データ量が、前記プリンタのバッフ ァの空き容量よりも小さぐかつ、前記未圧縮の今回のデータセットのデータ量が前 記バッファの空き容量よりも大きいときは、前回のデータセットの転送速度および前記 ノ ッファの解放速度に基づき前記第 2の終了時間を予測する、請求項 11のシステム [14] The transfer means may be configured such that the compressed predicted data amount is smaller than the free space of the printer buffer and the data amount of the uncompressed current data set is empty in the buffer. 12. The system of claim 11, wherein if greater than the capacity, the second end time is predicted based on a transfer rate of a previous data set and a release rate of the notifier.
[15] コンピュータから出力データを複数セットの転送データに分割して周辺機器に転送 し、前記周辺機器において前記出力データに基づく出力を生成するためのデバイス ドライバプログラムであって、 [15] A device driver program for dividing output data from a computer into a plurality of sets of transfer data and transferring the data to a peripheral device, and generating an output based on the output data in the peripheral device,
前記複数セットの転送データを順番に圧縮して前記コンピュータのメモリに格納し、 前記メモリの圧縮済みのデータセットおよび未圧縮のデータセットのいずれかを選択 して転送する処理を含み、この転送する処理は、 The plurality of sets of transfer data are sequentially compressed and stored in the memory of the computer, and either the compressed data set or the uncompressed data set in the memory is selected. Transfer process, and this transfer process includes
今回のデータセットの転送の開始が可能となったときに、前記今回のデータセットが 圧縮済みであれば、圧縮済みの今回のデータセットを転送し、  If the current data set has already been compressed when the transfer of the current data set can be started, the compressed current data set is transferred,
前記今回のデータセットが圧縮済みでなければ、前記圧縮済みの今回のデータセ ットを転送したときの第 1の終了時間と、未圧縮の今回のデータセットを転送したとき の第 2の終了時間とを予測し、予測された終了時間の短い今回のデータセットを転送 し、  If the current data set is not compressed, the first end time when the compressed current data set is transferred and the second end time when the uncompressed current data set is transferred And transfer this dataset with a short predicted end time,
前記今回のデータセットの転送を開始するときに、次回のデータセットの圧縮が開 始されていなければ、前記次回のデータセットの圧縮を開始することを含む、プログ ラム。  The program includes starting compression of the next data set if compression of the next data set is not started when the transfer of the current data set is started.
[16] 前記転送する処理は、前回のデータセットの転送速度に基づき、前記第 1の終了 時間および第 2の終了時間を予測することを含む、請求項 15のプログラム。  16. The program according to claim 15, wherein the transferring process includes predicting the first end time and the second end time based on a transfer rate of a previous data set.
[17] 前記転送する処理は、前記転送速度、または前記転送速度を求めるための情報を 、前記周辺機器力も転送許可信号と共に取得することを含む、請求項 16のプロダラ ム。  17. The program according to claim 16, wherein the process of transferring includes acquiring the transfer speed or information for obtaining the transfer speed and the peripheral device power together with a transfer permission signal.
[18] 前記転送する処理は、さらに、前記圧縮済みの今回のデータセットの予測データ量 力 データ転送に割当てられた前記周辺機器のバッファの空き容量よりも大きいとき は、前記圧縮済みの今回のデータセットを転送することを含む、請求項 15のプロダラ ム。  [18] The process to be transferred is further performed when the compressed current data set has a predicted data capacity greater than the free space of the peripheral device allocated for data transfer. 16. The program of claim 15, comprising transferring a data set.
[19] 前記転送する処理は、さらに、前記圧縮済みの今回のデータセットの予測データ量 が前記周辺機器のバッファの空き容量よりも小さぐかつ、前記未圧縮の今回のデー タセットのデータ量が前記バッファの空き容量よりも大き 、ときは、前回のデータセット の転送速度および前記バッファの解放速度に基づき前記第 2の終了時間を予測する ことを含む、請求項 15のプログラム。  [19] In the transfer process, the predicted data amount of the compressed current data set is smaller than an available buffer capacity of the peripheral device and the data amount of the uncompressed current data set is further reduced. 16. The program according to claim 15, further comprising: predicting the second end time based on a transfer rate of a previous data set and a release rate of the buffer when the capacity is larger than an empty capacity of the buffer.
PCT/JP2005/021086 2004-11-17 2005-11-17 Method and device for transferring data to peripheral device WO2006054618A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006545111A JPWO2006054618A1 (en) 2004-11-17 2005-11-17 Method and apparatus for transferring data to a peripheral device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004332571 2004-11-17
JP2004-332571 2004-11-17

Publications (1)

Publication Number Publication Date
WO2006054618A1 true WO2006054618A1 (en) 2006-05-26

Family

ID=36407156

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2005/021086 WO2006054618A1 (en) 2004-11-17 2005-11-17 Method and device for transferring data to peripheral device

Country Status (2)

Country Link
JP (1) JPWO2006054618A1 (en)
WO (1) WO2006054618A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010141515A (en) * 2008-12-10 2010-06-24 Fujitsu Ltd Data transfer device and data transfer method and data transfer program
WO2014024610A1 (en) * 2012-08-07 2014-02-13 日本電気株式会社 Data forwarding device, data forwarding method, and program
WO2014168025A1 (en) * 2013-04-12 2014-10-16 日本電気株式会社 Data transfer device, data transfer system, method for compressing and transferring data, and program
JP2017508383A (en) * 2014-02-28 2017-03-23 クアルコム,インコーポレイテッド Introducing uncompressed packets into compressed flows based on flow control
US9807189B2 (en) 2012-10-19 2017-10-31 Nec Corporation Data transfer device and data transfer system using adaptive compression algorithm

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09193482A (en) * 1996-01-23 1997-07-29 Fuji Xerox Co Ltd Printing data transfer device
JP2001134391A (en) * 2000-09-18 2001-05-18 Canon Inc Information processor, data processing method for information processor and storage medium
JP2003296055A (en) * 2002-04-01 2003-10-17 Fuji Xerox Co Ltd Print data transmitting method, printer control device, and computer program for controlling printer

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09193482A (en) * 1996-01-23 1997-07-29 Fuji Xerox Co Ltd Printing data transfer device
JP2001134391A (en) * 2000-09-18 2001-05-18 Canon Inc Information processor, data processing method for information processor and storage medium
JP2003296055A (en) * 2002-04-01 2003-10-17 Fuji Xerox Co Ltd Print data transmitting method, printer control device, and computer program for controlling printer

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010141515A (en) * 2008-12-10 2010-06-24 Fujitsu Ltd Data transfer device and data transfer method and data transfer program
WO2014024610A1 (en) * 2012-08-07 2014-02-13 日本電気株式会社 Data forwarding device, data forwarding method, and program
US9769241B2 (en) 2012-08-07 2017-09-19 Nec Corporation Data transfer device, data transfer method, and program storage medium
US9807189B2 (en) 2012-10-19 2017-10-31 Nec Corporation Data transfer device and data transfer system using adaptive compression algorithm
WO2014168025A1 (en) * 2013-04-12 2014-10-16 日本電気株式会社 Data transfer device, data transfer system, method for compressing and transferring data, and program
US9698824B2 (en) 2013-04-12 2017-07-04 Nec Corporation Data transfer device, data transfer system, method for compressing and transferring data, and program
JP2017508383A (en) * 2014-02-28 2017-03-23 クアルコム,インコーポレイテッド Introducing uncompressed packets into compressed flows based on flow control

Also Published As

Publication number Publication date
JPWO2006054618A1 (en) 2008-05-29

Similar Documents

Publication Publication Date Title
JP5415750B2 (en) Information processing apparatus, information processing method, program, and information processing system
WO2006054618A1 (en) Method and device for transferring data to peripheral device
US20060164680A1 (en) Printing system and method of printing data on a designated paper
JP4543945B2 (en) Printing system, control method therefor, and print management program
JP4165451B2 (en) Printing system, printing request terminal, compression algorithm selection program, and printing method
JP5822470B2 (en) Information processing apparatus, control method thereof, and storage medium
US8717607B2 (en) Image forming apparatus, image processing system, and image processing method
JP2008198126A (en) Data communications system and program, and data receiving device, program, and method
JP3154393B2 (en) Information processing apparatus and information processing method
CN103092540A (en) Printing apparatus, printing system and printing method
JP2010187281A (en) Communication apparatus and method of controlling the same, and program
JP2011018157A (en) Image forming system and image forming method
JP6711718B2 (en) Monitoring device, control method, and program
US20170255848A1 (en) Print control device that facilitates management of print job, control method therefor and storage medium, and printing system and control method therefor
JP3897083B2 (en) Print processing apparatus and print processing method
US7433071B2 (en) Printing method and apparatus of multi function product and computer-readable recording medium for storing computer program for controlling the product
JP3141718B2 (en) Image processing device
JP4488356B2 (en) Program, information processing apparatus, printing system, and print data output method
JPH11338652A (en) Printer controller
JP3466823B2 (en) Image forming apparatus and image forming method
JP3125997B2 (en) Print information output device and print system
KR100334111B1 (en) Method for canceling of printing job
KR20060009652A (en) Apparatus and method for management print files
JP6033383B2 (en) Information processing apparatus, control method thereof, and control program
JP3021023B2 (en) Print information output device and printing device

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KM KN KP KR KZ LC LK LR LS LT LU LV LY MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU LV MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2006545111

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 05806897

Country of ref document: EP

Kind code of ref document: A1