Recently, for print images, the resolution in dots per inch (dpi) of printing apparatuses, such as a printer which prints digital images, is increasing along with the spread of personal computers, digital cameras, and the like. Of printing apparatuses, ink-jet printing apparatuses using an ink-jet printing head have rapidly become popular. Demands has arisen for lower-cost ink-jet printing apparatuses which realize high-resolution images.
A serial scanning ink-jet printing apparatus prints an image of one scanning by the printing head width while scanning the printing head in a direction (main scanning direction) perpendicular to the convey direction (sub-scanning direction) of a printing medium such as a printing sheet. At the end of printing by one scanning, the ink-jet printing apparatus conveys the printing medium in the convey direction. The ink-jet printing apparatus sequentially repeats the image printing operation by one scanning described above, forming a desired image on the printing medium.
In a conventional printing apparatus, data sent from a host computer are data sequential in the main scanning direction (to be referred to as raster data hereinafter). To print an image of one scanning by the printing head width, data must be converted into data sequential in the sub-scanning direction (to be referred to as column data hereinafter) in accordance with the number of print elements (e.g., the number of ink discharge nozzles) of the printing head. To print an image of one scanning, the printing apparatus must hold at least a memory area for accumulating raster data by the number of discharge nozzles and a memory area for accumulating column data.
A higher image quality is required by increasing the dpi (e.g., recording resolution) of the printing apparatus. A higher dpi of the printing apparatus increases the image resolution, resulting in a large data amount for image printing. The memory area necessary for the printing apparatus also increases, and an expensive large-capacity memory leads to high cost, inhibiting cost reduction of the printing apparatus.
A technique of reducing the memory area necessary for the printing apparatus is disclosed in Japanese Patent Laid-Open No. 11-259248. According to Japanese Patent Laid-Open No. 11-259248, isochronous data transfer is performed between a host computer and a printer by minimum buffering. This can reduce the memory capacity necessary for the printing apparatus.
More specifically, image data necessary to print an image of one scanning by a width corresponding to the number of print elements of the printing head is divided into a plurality of data frames and transferred in isochronous data transfer between the host computer and the printer. When the printer receives image data transferred from the host computer, the printer processes the image data and temporarily holds it in the memory area of the printer. This memory area stores one or more data frames of image data during the printing operation by one scanning.
In isochronous data transfer in which image data of one scanning is divided into data frames and transferred, data frames of image data of one scanning are successively transmitted to the memory area of the printer. The memory area size of the printer suffices to ensure at least a memory area capable of storing one or more data frames, and the memory area need not store image data of one scanning. Unlike a conventional printer, a memory area for storing image data of one scanning is not required.
In the above-described isochronous data transfer, the printing operation by one scanning can start upon reception of minimum data necessary for image printing without storing image data of one scanning in the memory area of the printing apparatus. Sequentially transmitted data frames are stored in the memory area of the printer while the memory area is rewritten. An image of one scanning can be formed without interrupting scanning of the printing head, while the memory capacity necessary for the printing apparatus can be reduced.
A serial printing apparatus having no memory area for one scanning of a carriage starts the printing operation upon reception of data of a given amount (e.g., one or more data frames). A memory area which stores printed data is freed, and data newly received from a host computer is stored in the freed area.
An example of the memory area of the serial printing apparatus and reception data in the memory area is shown in FIGS. 3A and 3B. The memory area of the serial printing apparatus comprises 0000H to FFFFH, as shown in FIG. 3A. The memory area is divided into two memory areas: a memory area (b0) of 0000H to 7FFFH and a memory area (b1) of 8000H to FFFFH, as shown in FIG. 3A. As shown in FIG. 3A, the respective memory areas are alternately used to receive and store data frames transmitted from the host computer.
The two memory areas are expressed as blocks (b0 and b1), b0-1th represents that the first data is received and stored in the memory area b0, and b1-1th represents that the first data is received and stored in the memory area b1. Similarly, b0-2th represents that the second data is received in the memory area b0 and the memory content is rewritten, and b1-2th represents that the second data is received in the memory area b1 and the memory content is rewritten.
FIG. 3B shows data frames (reception data) b0-1th, b1-1th, b0-2th, b1-2th, b0-3th, . . . which are alternately accumulated in the two memory areas described above, and an image printed on a printing medium on the basis of these data frames (reception data).
The above printer does not have any memory area for one scanning of a carriage. The printer starts printing (print) operation upon reception of data by either of the blocks. If the other block has received data at the end of printing operation of one block, printing continues. This printing method will be explained in detail with reference to FIGS. 3C and 3D.
FIG. 3C shows the following printing operation. More specifically, the first data (data frame) (b0-1th) is received from a host computer and stored in one memory area (b0) out of the two memory areas (blocks b0 and b1) shown in 1 of FIG. 3C (2 of FIG. 3C). Upon the completion of storage in block b0 (3 of FIG. 3C), the second data (data frame) (b1-1th) transmitted from the host computer is received and stored in block b1 as the other memory area. At the same time, image printing using the first data (b0-1th) starts (reception data decreases) (4 of FIG. 3). After the second data (b1-1th) is stored in b1 (5 of FIG. 3C), printing using the first data (b0-1th) ends (6 of FIG. 3C)
In addition, 7 to 12 of FIG. 3D illustrate the following printing operation subsequent to 6 of FIG. 3C. More specifically, image printing using the second data (b1-1th) starts, and the third data (data frame) (b0-2th) is received and stored in memory area b0 (7 of FIG. 3D). After the third data (b0-2th) is stored (8 of FIG. 3D), printing using the second data (b1-1th) ends (9 of FIG. 3D). Image printing using the third data (b0-2th) starts, and the fourth data (data frame) (b1-2th) is received and stored in memory area b1 (10 of FIG. 3D). After the fourth data (b1-2th) is stored (11 of FIG. 3D), printing using the third data (b0-2th) ends (12 of FIG. 3D).
As described above, the serial printing apparatus having no memory area for one scanning of a carriage starts printing (print) operation upon reception of data of a given amount (e.g., one or more data frames). A memory area which stores printed data is freed, and data newly received from the host is stored in the freed area. The memory area can be reduced on this premise.
The above-described isochronous data transfer suffers the following problem. That is, a job and task in the host computer cannot be managed by the printing apparatus. Isochronous data transfer from the host computer to the printing apparatus may be left undone due to any reason.
For example, if the above-mentioned data transfer from the host computer to the printing apparatus is left undone (data transfer is not in time for image printing) after the start of the printing operation by one scanning, the printing apparatus cannot print any image by the printing head. In this case, the printing head returns to, e.g., the home position (reference position) and waits until image data is stored in the memory area. After a sufficient amount of image data is stored in the memory area, the printing head is scanned again. The printing head returns from the home position (reference position) to the position where image printing is interrupted. Printing then restarts to complete image printing by one scanning.
Every time data transfer from the host computer is left undone, printing operation is interrupted. The printing head returns to the home position, and returns to the interrupted position in order to restart image printing, decreasing the throughput of the printing apparatus.