JP2011182106A - Image data processor, recorder, and image data processing method - Google Patents

Image data processor, recorder, and image data processing method Download PDF

Info

Publication number
JP2011182106A
JP2011182106A JP2010042829A JP2010042829A JP2011182106A JP 2011182106 A JP2011182106 A JP 2011182106A JP 2010042829 A JP2010042829 A JP 2010042829A JP 2010042829 A JP2010042829 A JP 2010042829A JP 2011182106 A JP2011182106 A JP 2011182106A
Authority
JP
Japan
Prior art keywords
data
processing
image data
unit
transfer
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2010042829A
Other languages
Japanese (ja)
Inventor
Junya Yada
淳也 矢田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2010042829A priority Critical patent/JP2011182106A/en
Publication of JP2011182106A publication Critical patent/JP2011182106A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide an image data processor, a recorder and an image data processing method, capable of reducing a used storage area of image data in a storage without reducing transfer rate when the image data is transferred for every processing unit so much. <P>SOLUTION: Print image data PD is stored in a DRAM. The print image data PD is stored so that line remainder data Dr less than four pixels of transfer unit is settled in an array range (burst raster size BR) of full data Df whose 4×4 pixel area (thick line frame area in a drawing) of the transfer unit is filled with pixels following the tail of the line remainder data Dc in the line direction (horizontal direction in a drawing). This image data processor includes an address generation section which generates an address readable in the array order of the data when the data constituting the print image data PD is read for rotation processing. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、格納手段と処理手段との間で処理単位ずつのデータ転送を伴って画像データに処理を施す画像データ処理装置、記録装置及び画像データ処理方法に関する。   The present invention relates to an image data processing apparatus, a recording apparatus, and an image data processing method for processing image data with data transfer in units of processing between a storage unit and a processing unit.

例えば特許文献1、2には、インクを噴射する印刷ヘッドを備えた記録装置(流体噴射装置)が開示されている。例えばスキャナーユニットにより読み込まれた画像データに、2値化処理(ハーフトーン処理)、RGB表色系からCMYK表色系への色変換処理、インターレース処理、縦横変換処理(回転処理)などの複数の処理が施され、これらの処理を経て生成されたヘッド制御データに基づき印刷ヘッドは駆動される。このとき、各処理では、処理前の画像データがバッファーから処理ユニットへ処理単位ずつ転送され、処理ユニットで処理が施された処理単位のデータはバッファーへ順次転送される。このときのデータ転送には高速処理可能なバースト転送が採用される(例えば特許文献1、2)。   For example, Patent Documents 1 and 2 disclose a recording apparatus (fluid ejecting apparatus) including a print head that ejects ink. For example, the image data read by the scanner unit is subjected to a plurality of processing such as binarization processing (halftone processing), color conversion processing from RGB color system to CMYK color system, interlace processing, vertical / horizontal conversion processing (rotation processing), etc. Processing is performed, and the print head is driven based on the head control data generated through these processing. At this time, in each processing, the image data before processing is transferred from the buffer to the processing unit for each processing unit, and the data of the processing unit processed by the processing unit is sequentially transferred to the buffer. For this data transfer, burst transfer capable of high-speed processing is employed (for example, Patent Documents 1 and 2).

例えば縦横変換処理(回転処理)では、画素の並び順がライン方向(横方向)である画像データを、印刷ヘッドのノズル配列に対応させたラスター方向(縦方向)の画素の並び順とすべく画像データの縦方向と横方向を入れ換える処理が回転ユニットにより行われる。この場合、回転ユニットへバッファーから処理単位のデータずつバースト転送され、縦横変換(回転)後のデータが回転ユニットからバッファーへ順次バースト転送される。   For example, in vertical / horizontal conversion processing (rotation processing), image data whose pixel arrangement order is in the line direction (horizontal direction) should be set as the pixel arrangement order in the raster direction (vertical direction) corresponding to the nozzle arrangement of the print head. Processing for switching the vertical direction and the horizontal direction of the image data is performed by the rotating unit. In this case, data in units of processing from the buffer is transferred in bursts to the rotation unit, and the data after vertical / horizontal conversion (rotation) is sequentially burst transferred from the rotation unit to the buffer.

図10(a)は回転処理前の画像データ(印刷イメージデータ)を示し、図10(b)は回転処理後の画像データ(ヘッドイメージデータ)を示す。図10(a)では、回転処理前の印刷イメージデータを構成する各画素は、N行×M列のマトリクス状に配列されている。通常、回転処理時の画像データは数100行×数100列ぐらいの画素数であるが、図10では説明を簡単にするため、画素数6行×10列の画像データの例で説明する。ここで、画素の符号「N-M」は、N行M列目の画素データを指す。   FIG. 10A shows image data (print image data) before the rotation process, and FIG. 10B shows image data (head image data) after the rotation process. In FIG. 10A, the pixels constituting the print image data before the rotation process are arranged in a matrix of N rows × M columns. Normally, the image data at the time of the rotation processing has a number of pixels of about several hundred rows × several hundred columns. However, in order to simplify the description in FIG. 10, an example of image data having six pixels × 10 columns will be described. Here, the symbol “NM” of the pixel indicates the pixel data of the Nth row and the Mth column.

回転処理では、DRAM100に格納された印刷イメージデータを、例えば4×4画素分の正方領域(正方ブロック)のデータずつ図中に太数字で示す順番で回転ユニットへバースト転送する。そして、回転ユニットは、転送されてきたデータに回転処理(縦横変換処理)を施し、その回転後のデータを、DRAM100へバースト転送し、図10(b)に太数字で示す位置に格納することで、DRAM100に縦横変換されたヘッドイメージデータが生成される。   In the rotation process, print image data stored in the DRAM 100 is burst-transferred to the rotation unit in the order indicated by bold numbers in the figure, for example, in each square area (square block) data of 4 × 4 pixels. Then, the rotation unit performs rotation processing (vertical / horizontal conversion processing) on the transferred data, burst-transfers the rotated data to the DRAM 100, and stores the data at the positions indicated by bold numerals in FIG. 10B. Thus, the head image data subjected to vertical / horizontal conversion in the DRAM 100 is generated.

ところで、バースト転送方式では、図10に太線枠で囲った回転処理単位の正方ブロック(4×4画素)のデータを転送する場合、バーストサイズ(16ビット×4)である1行(4画素)ずつ4回転送する。そして、正方ブロックが図10(a)に示す太数字「1」、「2」、…「6」の順番で読出されて回転ユニットへ順次転送される。   By the way, in the burst transfer method, when transferring data of a square block (4 × 4 pixels) in a rotation processing unit surrounded by a thick line frame in FIG. 10, one row (4 pixels) having a burst size (16 bits × 4) is transferred. Transfer 4 times each. Then, the square blocks are read in the order of bold numbers “1”, “2”,... “6” shown in FIG.

特開2004−122594号公報JP 2004-122594 A 特開2008−221769号公報JP 2008-221769 A

ところで、図10に示すように、太数字「1」、「2」のデータはその太線枠の領域内が4×4の画素データで満ちた満データになっている。ところが、太数字「3」、「6」のデータは行方向に画素データがバーストサイズの4画素に満たない行余りデータになっており、太数字「4」、「5」、「6」のデータが列方向に画素データが転送回数「4」(4画素)に満たない列余りデータになっている。このため、行余りデータには、図10(a)に網掛けで示すダミーデータを用意し、行余りデータについてもバーストサイズを確保してバースト転送できるようにしていた。この場合、4画素に満たないときだけバースト転送の指定の仕方を変えてダミーデータの転送を回避する方法もあるが、指定の仕方が複雑になって、転送速度が却って遅くなり好ましくない。   Incidentally, as shown in FIG. 10, the data of the bold numbers “1” and “2” are full data in which the area of the bold frame is filled with 4 × 4 pixel data. However, the data of the bold numbers “3” and “6” is the remainder data whose pixel data is less than 4 pixels of the burst size in the row direction, and the bold numbers “4”, “5”, and “6”. The data is the column remainder data in which the pixel data is less than the number of transfers “4” (4 pixels) in the column direction. For this reason, dummy data indicated by hatching in FIG. 10A is prepared as the surplus data, and the burst data can be burst-transferred with the surplus data secured. In this case, there is a method of avoiding dummy data transfer by changing the burst transfer designation method only when the number of pixels is less than four pixels. However, the designation method becomes complicated, and the transfer rate is rather slow.

このため、バースト転送方式で高速転送を行おうとすると、ダミーデータを格納しておく必要があり、ダミーデータの格納領域が余分に必要となるので、データ格納領域(記憶容量)の大きなDRAM100を用意したり、DRAM100における他データの格納領域が圧迫されたりするなどの問題があった。このため、ダミーデータをなるべく減らしたいという要望があった。また、回転処理後のデータが、DRAM100に図10(b)に太数字で示す位置に格納されることでヘッドイメージデータが生成されるが、同図(b)に示すようにDRAM100にダミーデータと一緒に格納されるので、DRAM100の格納領域がダミーデータの分だけ余分に必要なり、前述の問題が同様に発生する。   For this reason, when performing high-speed transfer by the burst transfer method, it is necessary to store dummy data, and an extra storage area for dummy data is required. Therefore, a DRAM 100 having a large data storage area (storage capacity) is prepared. Or the storage area of other data in the DRAM 100 is compressed. For this reason, there has been a demand for reducing dummy data as much as possible. Further, the head image data is generated by storing the data after the rotation processing in the DRAM 100 at the positions indicated by the bold numerals in FIG. 10B, but as shown in FIG. Therefore, an extra storage area of the DRAM 100 is required for the dummy data, and the above-described problem occurs in the same manner.

本発明は、上記課題に鑑みてなされたものであり、その目的の一つは、画像データを処理単位ずつ転送する際の転送速度をさほど落とさず、格納手段における画像データの使用格納領域を少なく抑えることができる画像データ処理装置、記録装置及び画像データ処理方法を提供することにある。   The present invention has been made in view of the above problems, and one of its purposes is to reduce the use storage area of image data in the storage means without significantly reducing the transfer speed when transferring image data for each processing unit. An object of the present invention is to provide an image data processing device, a recording device, and an image data processing method that can be suppressed.

上記問題点を解決するために、本発明(第1発明)は、画像データに処理を施す画像データ処理装置であって、前記画像データを格納する格納手段と、前記画像データに処理を施す処理手段と、前記画像データを前記格納手段から前記処理手段へ処理単位のデータずつ転送する転送手段とを備え、前記処理手段は、前記格納手段から前記処理単位ずつ転送されてくる前記データに順次処理を施す構成であり、前記格納手段において、前記画像データは、1個が前記処理単位で満たされたX×Y個の満データがX行×Y列のマトリクス配列で格納されるとともに、行方向に前記処理単位に満たない行余りデータがある場合には、当該行余りデータが、満データY列配列幅内に配列されたデータの末尾に続けて前記満データY列配列幅内に収まるようにアラインして格納される構成であり、前記転送手段は、前記格納手段から前記処理手段へ前記データを前記画像データにおける前記アライン前の元の順番で転送することを要旨とする。   In order to solve the above-mentioned problems, the present invention (first invention) is an image data processing apparatus for processing image data, a storage means for storing the image data, and a process for processing the image data And transfer means for transferring the image data from the storage means to the processing means for each processing unit, wherein the processing means sequentially processes the data transferred from the storage means for each processing unit. In the storage means, the image data is stored in a matrix arrangement of X rows and Y columns in which X × Y full data, one of which is filled in the processing unit, and in the row direction If there is a remainder data less than the processing unit, the remainder data will fit within the full data Y column array width following the end of the data arranged within the full data Y column array width. The transfer unit is configured to transfer the data from the storage unit to the processing unit in the original order before the alignment in the image data.

この発明によれば、処理前の画像データは、格納手段に、行余りデータが、満データY列配列幅内のデータの末尾に続けて満データY列配列幅内に収まるように格納されるので、格納手段における処理前の画像データの使用格納領域を少なく抑えることができる。よって、画像データを処理単位ずつ転送する際の転送速度をさほど落とさず、格納手段における画像データの使用格納領域を少なく抑えることができる。   According to the present invention, the image data before processing is stored in the storage means so that the margin data fits within the full data Y column array width following the end of the data within the full data Y column array width. Therefore, it is possible to reduce the use storage area of the image data before processing in the storage means. Therefore, it is possible to suppress the use storage area of the image data in the storage means without reducing the transfer speed when transferring the image data for each processing unit.

本発明(第2発明)は、画像データに処理を施す画像データ処理装置であって、前記画像データを処理単位のデータずつ読込んで該データに処理を施す処理手段と、処理後の画像データを格納するための格納手段と、前記処理が施された前記処理単位のデータを前記処理手段から前記格納手段へ順次転送して前記格納手段に処理後の画像データを格納させる転送手段とを備え、前記転送手段は、前記処理後の画像データを、前記格納手段に対して、1個が前記処理単位で満たされたY×X個の満データがY行×X列のマトリクス状に配列されるとともに、行方向に前記処理単位に満たない行余りデータがある場合には、当該行余りデータが、満データX列配列幅内に配列されたデータの末尾に続けて、前記満データX列配列幅内に収まるようにアラインして格納させることを要旨とする。   The present invention (second invention) is an image data processing device for processing image data, and processing means for reading the image data in units of processing and processing the data, and processing the processed image data Storage means for storing, and transfer means for sequentially transferring the processed unit data subjected to the processing from the processing means to the storage means and storing the processed image data in the storage means, The transfer means arranges the processed image data in a matrix of Y rows × X columns, with Y × X full data, one of which is filled in the processing unit, with respect to the storage means. In addition, when there is line remainder data that is less than the processing unit in the row direction, the line remainder data is added to the end of the data arranged within the full data X column arrangement width, and the full data X column arrangement To fit within the width The gist is to align and store.

この発明によれば、処理後の画像データは、格納手段に、行余りデータが、満データX列配列幅内のデータの末尾に続けて満データX列配列幅内に収まるように格納されるので、格納手段における処理後の画像データの使用格納領域を少なく抑えることができる。よって、画像データを処理単位ずつ転送する際の転送速度をさほど落とさず、格納手段における画像データの使用格納領域を少なく抑えることができる。   According to the present invention, the processed image data is stored in the storage means so that the margin data fits within the full data X column array width following the end of the data within the full data X column array width. Therefore, the use storage area of the processed image data in the storage means can be reduced. Therefore, it is possible to suppress the use storage area of the image data in the storage means without reducing the transfer speed when transferring the image data for each processing unit.

本発明は、画像データに処理を施す画像データ処理装置であって、処理前の画像データを格納する格納手段と、前記画像データに処理を施す処理手段と、前記処理前の画像データを前記格納手段から前記処理手段へ処理単位のデータずつ転送するとともに、前記処理手段が前記処理単位ずつ転送されてくる前記データに順次処理を施して生成された前記処理後のデータを前記処理手段から前記格納手段へ順次転送することで前記処理が施された画像データを前記格納手段に格納させる転送手段とを備え、前記格納手段において、前記画像データは、1個が前記処理単位で満たされたX×Y個の満データがX行×Y列のマトリクス配列で格納されるとともに、行方向に前記処理単位に満たない行余りデータがある場合には、当該行余りデータが、満データY列配列幅内に配列されたデータの末尾に続けて前記満データY列配列幅内に収まるようにアラインして格納される構成であり、前記転送手段は、前記格納手段から前記処理手段へ前記データを前記画像データにおける前記アライン前の元の順番で転送し、前記処理が施された前記処理単位のデータを前記処理手段から前記格納手段へ順次転送して前記格納手段に処理後の画像データを格納させる転送手段とを備え、前記転送手段は、前記処理後の画像データを、前記格納手段に対して、1個が前記処理単位で満たされたY×X個の満データがY行×X列のマトリクス状に配列されるとともに、前記行余りデータがある場合には、当該行余りデータが、満データX列配列幅内に配列されたデータの末尾に続けて、前記満データX列配列幅内に収まるようにアラインして格納させることを要旨とする。   The present invention is an image data processing apparatus for processing image data, a storage means for storing image data before processing, a processing means for processing image data, and the image data before processing. The processing unit transfers data from the processing unit to the processing unit, and the processing unit sequentially processes the data transferred by the processing unit to generate the processed data from the processing unit. Transfer means for causing the storage means to store the image data subjected to the processing by sequentially transferring to the means, wherein the image data is stored in the processing unit X × When Y full data is stored in a matrix arrangement of X rows × Y columns, and there is remaining data that is less than the processing unit in the row direction, the remaining data is The arrangement is such that the data arranged in the full data Y column array width is aligned and stored so as to fit within the full data Y column array width, and the transfer means is configured to perform the processing from the storage means. The data is transferred to the means in the original order before the alignment in the image data, and the data of the processing unit subjected to the processing is sequentially transferred from the processing means to the storage means and processed to the storage means Transfer means for storing the image data, and the transfer means stores the processed image data in the storage means with Y × X full data, one of which is filled in the processing unit. When there is a remainder data, the remainder data is arranged after the end of the data arranged within the full data X column arrangement width. Data X column array The gist is to arrange and store so as to fit within the width.

この発明によれば、上記第1発明と上記第2発明との両方の構成を備えるので、格納手段における処理前の画像データの使用格納領域を少なく抑えることができるうえ、処理後の画像データの使用格納領域を少なく抑えることができる。よって、画像データを処理単位ずつ転送する際の転送速度をさほど落とさず、格納手段における画像データの使用格納領域を少なく抑えることができる。   According to this invention, since both configurations of the first invention and the second invention are provided, the use storage area of the image data before processing in the storage means can be reduced, and the image data after processing can be reduced. The storage area used can be reduced. Therefore, it is possible to suppress the use storage area of the image data in the storage means without reducing the transfer speed when transferring the image data for each processing unit.

本発明の画像データ処理装置では、前記処理手段は画像データに回転処理を施す回転処理手段であり、前記転送手段は、前記処理単位が行方向と列方向で画素数の等しいK×K画素(但しK≧2)の正方ブロックの前記データをバースト転送することを要旨とする。この発明によれば、正方ブロック(K×K画素)のデータの転送をバースト転送で行えるので、K×K画素のデータずつ行われる回転処理を高速に行いつつ、格納手段においてデータの使用格納領域を少なく抑えることができる。   In the image data processing apparatus of the present invention, the processing means is a rotation processing means for performing a rotation process on the image data, and the transfer means includes K × K pixels having the same number of pixels in the row direction and the column direction. However, the gist is to burst transfer the data of the square block of K ≧ 2). According to the present invention, the data transfer of the square block (K × K pixels) can be performed by burst transfer. Therefore, the storage means uses the data storage area while performing the rotation process performed for each data of K × K pixels at high speed. Can be reduced.

本発明の画像データ処理装置では、前記転送手段は、前記格納手段からデータを読み出して転送する際の読出しアドレスを生成するか、又は前記格納手段に転送したデータを書き込む際の書込みアドレスを生成するアドレス生成手段を、更に備えたことを要旨とする。   In the image data processing apparatus of the present invention, the transfer unit generates a read address when reading and transferring data from the storage unit, or generates a write address when writing the transferred data to the storage unit. The gist of the present invention is that it further comprises an address generation means.

この発明によれば、転送手段は、アドレス生成手段が生成したアドレスを指定して転送の指示を行うことにより、画像データを構成するデータを元の配列順序で転送できる。
本発明の画像データ処理装置では、前記アドレス生成手段は、転送すべきデータが行余りデータであるか否かを判定する判定手段と、データが行余りデータ以外である場合には第1のアドレス生成演算式に従ってアドレスを生成し、データが行余りデータである場合には第2のアドレス生成演算式に従ってアドレスを生成することを要旨とする。
According to this invention, the transfer means can transfer the data constituting the image data in the original arrangement order by designating the address generated by the address generation means and instructing the transfer.
In the image data processing apparatus of the present invention, the address generation means includes a determination means for determining whether or not the data to be transferred is a remainder data, and a first address when the data is other than the remainder data. The gist is to generate an address according to the generation arithmetic expression, and to generate an address according to the second address generation arithmetic expression when the data is margin data.

この発明によれば、アドレス生成手段は、転送すべきデータが行余りデータであるか否かによって、それぞれに応じた第1又は第2のアドレス生成演算式に従ってアドレスを生成するので、転送手段は、アドレス生成手段が生成したアドレスを指定して転送の指示を行うことにより、画像データを元の配列順序で転送することができる。   According to the present invention, the address generating means generates an address according to the first or second address generation arithmetic expression corresponding to each depending on whether or not the data to be transferred is margin data. The image data can be transferred in the original arrangement order by designating the transfer by designating the address generated by the address generation means.

本発明は、上記発明の画像データ処理装置と、媒体を搬送する搬送手段と、前記搬送手段により搬送される媒体に画像を形成する記録手段とを備え、前記記録手段は前記処理手段による処理が施された画像データに基づき制御されることを要旨とする。   The present invention includes the image data processing apparatus according to the invention, a conveying unit that conveys a medium, and a recording unit that forms an image on a medium conveyed by the conveying unit, and the recording unit performs processing by the processing unit. The gist is that it is controlled based on the applied image data.

この発明の記録装置によれば、上記画像データ処理装置に係る発明と同様の効果を得ることができる。
本発明は、画像データに処理を施す画像データ処理方法であって、格納手段において、前記画像データを、1個が前記処理単位で満たされたX×Y個の満データがX行×Y列のマトリクス配列で格納されるとともに、行方向に前記処理単位に満たない行余りデータがある場合には、当該行余りデータが、満データY列配列幅内に配列されたデータの末尾に続けて前記満データY列配列幅内に収まるようにアラインして格納しておき、前記画像データを前記格納手段から処理手段へ前記処理単位のデータずつ転送する転送ステップと、前記処理手段が、前記格納手段から前記処理単位ずつ転送されてくる前記データに順次処理を施す処理ステップと、を備え、前記転送ステップでは、前記データを前記アライン前の元の順番で前記格納手段から前記処理手段へ転送することを要旨とする。この発明によれば、第1発明に係る画像処理装置と同様の作用効果を得ることができる。
According to the recording apparatus of the present invention, it is possible to obtain the same effects as the invention according to the image data processing apparatus.
The present invention is an image data processing method for processing image data, wherein in the storage means, X × Y full data, one of which is filled with the processing unit, is X rows × Y columns. And when there is less than the remaining data in the processing unit in the row direction, the remaining data is continued from the end of the data arranged within the full data Y column arrangement width. A transfer step of aligning and storing the data so as to be within the full data Y column array width, and transferring the image data from the storage means to the processing means for each piece of processing unit; and the processing means includes the storage A processing step for sequentially processing the data transferred from the means in units of the processing units. In the transferring step, the data is transferred from the storage means in the original order before the alignment. Transfer to the processing means. According to the present invention, it is possible to obtain the same effects as those of the image processing apparatus according to the first invention.

本発明は、画像データに処理を施す画像データ処理方法であって、前記画像データを処理単位のデータずつ読込んで処理手段が該データに処理を施す処理ステップと、前記処理が施された前記処理単位のデータを転送手段が前記処理手段から前記格納手段へ順次転送することで前記格納手段に処理後の画像データを格納させる転送ステップと、を備え、前記転送ステップでは、前記転送手段は、1個が前記処理単位で満たされたY×X個の満データがY行×X列のマトリクス状に配列されるとともに、行方向に前記処理単位に満たない行余りデータがある場合には、当該行余りデータが、満データX列配列幅内に配列されたデータの末尾に続けて、前記満データX列配列幅内に収まるようにアラインして格納させることを要旨とする。この発明によれば、第2発明に係る画像処理装置と同様の作用効果を得ることができる。   The present invention is an image data processing method for processing image data, the processing step of reading the image data in units of processing and processing the data by the processing means, and the processing subjected to the processing A transfer step in which the transfer means sequentially transfers the unit image data from the processing means to the storage means to store the processed image data in the storage means. In the transfer step, the transfer means includes 1 When Y × X full data, each of which is filled with the processing unit, is arranged in a matrix of Y rows × X columns, and there is remaining data that is less than the processing unit in the row direction, The gist is that the remaining data is aligned and stored so as to fit within the full data X column arrangement width following the end of the data arranged within the full data X column arrangement width. According to the present invention, it is possible to obtain the same effect as the image processing apparatus according to the second invention.

一実施形態における複合機の斜視図。1 is a perspective view of a multifunction machine according to an embodiment. 印刷ヘッドの模式底面図。FIG. 2 is a schematic bottom view of a print head. 複合機の電気的構成を示すブロック図。FIG. 2 is a block diagram illustrating an electrical configuration of the multifunction machine. 縦横変換処理に係る電気的構成を示すブロック図。The block diagram which shows the electrical structure which concerns on a vertical / horizontal conversion process. (a)印刷イメージデータの格納構造、(b)ヘッドイメージデータの格納構造をそれぞれ説明するための模式図。(A) Print image data storage structure, (b) Schematic diagram for explaining the head image data storage structure. (a)印刷イメージデータの格納構造、(b)ヘッドイメージデータの格納構造をそれぞれ示す模式図。(A) Print image data storage structure, (b) Schematic diagram showing the head image data storage structure. ソース側のアドレス生成方法を説明する模式図。The schematic diagram explaining the address generation method of a source side. ディスティネーション側のアドレス生成方法を説明する模式図。The schematic diagram explaining the address generation method on the destination side. SRAMにおける回転処理を説明する模式図。The schematic diagram explaining the rotation process in SRAM. (a)(b)従来技術における回転処理時のデータ格納構造を示す模式図。(A) (b) The schematic diagram which shows the data storage structure at the time of the rotation process in a prior art.

以下、本発明を具体化した一実施形態を図1〜図9に基づいて説明する。図1は、スキャナー機能を備えた印刷装置である複合機11の斜視図である。記録手段の一例である流体噴射装置としての複合機11は本体12とカバー13とを備える。本体12の下側部分がプリンター部14になっており、上側部分がスキャナー部15になっている。プリンター部14は、例えばインクジェット記録方式を採用する。本体12の前側上段部には、操作パネル17が設けられている。また、本体12の前側下部には、印刷済みの用紙Pが排出される排紙部18が設けられている。本体12において排紙部18の図1における右上位置には、メモリーカード19を挿抜可能なカードスロット20が設けられている。   Hereinafter, an embodiment embodying the present invention will be described with reference to FIGS. FIG. 1 is a perspective view of a multifunction machine 11 which is a printing apparatus having a scanner function. A multifunction machine 11 as a fluid ejecting apparatus as an example of a recording unit includes a main body 12 and a cover 13. The lower part of the main body 12 is a printer unit 14, and the upper part is a scanner unit 15. The printer unit 14 employs, for example, an ink jet recording method. An operation panel 17 is provided on the upper front portion of the main body 12. A paper discharge unit 18 for discharging the printed paper P is provided at the lower front side of the main body 12. A card slot 20 into which the memory card 19 can be inserted and removed is provided at the upper right position in FIG.

図1に示すように、操作パネル17にはその幅方向中央部に表示部21(例えば液晶ディスプレイ)が設けられている。また、操作パネル17には、電源ボタン22、モード選択ボタン23、印刷/スキャンを開始するスタートボタン24、実行中の動作を中止するストップボタン25等が配設されている。モード選択ボタン23の操作によって、「メモリーカード」「コピー」「スキャン」等を含む5つモードのうち一つを選択でき、メモリーカード19から読み取った画像データに基づく写真等の印刷や、原稿のコピー印刷、原稿のスキャニングなどを行うことができる。   As shown in FIG. 1, the operation panel 17 is provided with a display unit 21 (for example, a liquid crystal display) at the center in the width direction. The operation panel 17 is also provided with a power button 22, a mode selection button 23, a start button 24 for starting printing / scanning, a stop button 25 for stopping an operation being executed, and the like. By operating the mode selection button 23, one of five modes including “memory card”, “copy”, “scan”, and the like can be selected, and printing of a photo or the like based on image data read from the memory card 19 can be performed. Copy printing, document scanning, etc. can be performed.

図3は、複合機11の電気的構成を示すブロック図である。複合機11は、全体的な制御を司る制御装置30を備える。制御装置30は、プリンター部14及びスキャナー部15を駆動制御する。制御装置30は、プリンター部14を構成するキャリッジモーター27、搬送手段を構成する搬送モーター28及び記録手段の一例である流体噴射ヘッドを構成する印刷ヘッド29を駆動制御することにより、プリンター部14に用紙P(媒体)への印刷を行わせる。   FIG. 3 is a block diagram showing an electrical configuration of the multifunction machine 11. The multifunction machine 11 includes a control device 30 that controls the overall control. The control device 30 drives and controls the printer unit 14 and the scanner unit 15. The control device 30 drives and controls a carriage motor 27 that constitutes the printer unit 14, a conveyance motor 28 that constitutes a conveyance unit, and a print head 29 that constitutes a fluid ejection head that is an example of a recording unit. Printing on paper P (medium) is performed.

この制御装置30には、CPU31(中央処理装置)、ASIC32(Application SpecificIC)、ROM33、メモリーコントローラー34、DRAM35(Dynamic Random Access Memory)及びモーター駆動回路36が備えられている。なお、DRAM35としては、SDRAM(Synchronous DRAM)、DDR SDRAM(Double-Data-Rate SDRAM)、DDR2 SDRAM、DDR3 SDRAMなどが用いられているが、その他、EDO DRAM(Extended Data Out DRAM)、バーストEDO DRAMなどを用いることができる。   The control device 30 includes a CPU 31 (central processing unit), an ASIC 32 (Application Specific IC), a ROM 33, a memory controller 34, a DRAM 35 (Dynamic Random Access Memory), and a motor drive circuit 36. As the DRAM 35, SDRAM (Synchronous DRAM), DDR SDRAM (Double-Data-Rate SDRAM), DDR2 SDRAM, DDR3 SDRAM, etc. are used. Etc. can be used.

ROM33には、プログラムや各種制御に必要な設定データなどが記憶されている。CPU31はROM33から読み出したプログラム(例えばファームウェア用プログラム)を実行してコマンド及び指令値をモーター駆動回路36に与えることによりキャリッジモーター27及び搬送モーター28を駆動制御する。これにより、プリンター部14における用紙の搬送制御、及び印刷ヘッド29を備える不図示のキャリッジを主走査方向へ移動させるキャリッジ制御が行われる。   The ROM 33 stores programs, setting data necessary for various controls, and the like. The CPU 31 drives and controls the carriage motor 27 and the carry motor 28 by executing a program (for example, a firmware program) read from the ROM 33 and giving commands and command values to the motor drive circuit 36. Thereby, the conveyance control of the paper in the printer unit 14 and the carriage control for moving the carriage (not shown) including the print head 29 in the main scanning direction are performed.

また、複合機11は、通信インターフェイス(以下、「通信I/F37」という)を備える。例えば不図示のホスト装置(パーソナルコンピューター等)から転送されてきた印刷データは、通信I/F37が受信する。この通信I/F37に接続されたバス38には、制御装置30を構成するCPU31、ASIC32、ROM33、メモリーコントローラー34、DRAM35及びモーター駆動回路36が接続されるとともに、スキャナー入力回路41、メモリーカード入出力回路42及び操作パネル17が接続されている。   The multifunction machine 11 also includes a communication interface (hereinafter referred to as “communication I / F 37”). For example, the communication I / F 37 receives print data transferred from a host device (such as a personal computer) (not shown). A CPU 31, ASIC 32, ROM 33, memory controller 34, DRAM 35 and motor drive circuit 36 constituting the control device 30 are connected to the bus 38 connected to the communication I / F 37, and a scanner input circuit 41 and a memory card are inserted. The output circuit 42 and the operation panel 17 are connected.

スキャナー部15は、原稿を光学的に読み取るラインセンサー15aと、ラインセンサー15aからの読取信号(アナログ信号)をA/D変換して多階調のRGB画像データ(ラインデータ)として出力するA/D変換回路15bとを備える。スキャナー入力回路41は、CPU31の制御の下、スキャナー部15から入力されるRGB画像データに対しライン間補正処理及び解像度変換処理を施す。そして、これらの処理が施されたRGB画像データはASIC32に入力され、不図示の圧縮回路によりJPEG画像データに圧縮される。また、メモリーカード入出力回路42は、スロット20に挿着されたメモリーカード19から例えばJPEG画像データを読み込む。   The scanner unit 15 optically reads a document, and performs A / D conversion on a read signal (analog signal) from the line sensor 15a and outputs it as multi-gradation RGB image data (line data). D conversion circuit 15b. The scanner input circuit 41 performs inter-line correction processing and resolution conversion processing on the RGB image data input from the scanner unit 15 under the control of the CPU 31. The RGB image data subjected to these processes is input to the ASIC 32, and is compressed into JPEG image data by a compression circuit (not shown). The memory card input / output circuit 42 reads, for example, JPEG image data from the memory card 19 inserted in the slot 20.

DRAM35は、その一部の記憶領域が画像データ格納用のバッファーとして使用され、入力バッファー35aと中間バッファー35bと出力バッファー35cとを備える。入力バッファー35aには、ホスト装置から受信した印刷データ、スキャナー部15経由及びメモリーカード入出力回路42経由のJPEG画像データなどが格納される。   A part of the storage area of the DRAM 35 is used as a buffer for storing image data, and includes an input buffer 35a, an intermediate buffer 35b, and an output buffer 35c. The input buffer 35a stores print data received from the host device, JPEG image data via the scanner unit 15 and the memory card input / output circuit 42, and the like.

ASIC32は、入力バッファー35aに格納された画像データ(印刷データ、JPEG画像データ等)に、その画像データ種に応じた画像処理を施すため、図3に示すJPEG解凍回路43、画像処理回路44、縦横変換回路45及びヘッド制御ユニット46を内蔵している。   The ASIC 32 performs image processing corresponding to the image data type on the image data (print data, JPEG image data, etc.) stored in the input buffer 35a, so that the JPEG decompression circuit 43, the image processing circuit 44, and the like shown in FIG. A vertical / horizontal conversion circuit 45 and a head control unit 46 are incorporated.

JPEG解凍回路43は、入力バッファー35aから読み込んだJPEG画像データを解凍(伸張)してRGB画像データに展開し、その展開したRGB画像データを中間バッファー35bに格納する。   The JPEG decompression circuit 43 decompresses (decompresses) the JPEG image data read from the input buffer 35a and develops it into RGB image data, and stores the decompressed RGB image data in the intermediate buffer 35b.

画像処理回路44は、中間バッファー35bから読み込んだRGB画像データに対して、解像度変換処理、色変換処理、ハーフトーン処理等を含む公知の画像処理を施す。ここで、解像度変換処理とは、RGB画像データの解像度を表示用解像度から印刷用解像度に変換する処理である。色変換処理とは、RGB画像データをRGB表色系からCMYK表色系のCMYK画像データへ色変換テーブル(図示せず)を参照して変換する処理である。ハーフトーン処理とは、CMYK画像データの画素の階調値(例えば256階調)を、印刷用の階調値(例えば2階調又は4階調など)に変換する処理である。中間バッファー35bは、これらの各画像処理終了後の画像データをそれぞれ格納する3つの格納領域を備え、これらの画像処理を全て終了した最終の印刷イメージデータ(CMYK画像データ)は、中間バッファー35bの最終段の格納領域に格納される。   The image processing circuit 44 performs known image processing including resolution conversion processing, color conversion processing, halftone processing, and the like on the RGB image data read from the intermediate buffer 35b. Here, the resolution conversion processing is processing for converting the resolution of the RGB image data from the display resolution to the printing resolution. The color conversion process is a process of converting RGB image data from RGB color system to CMYK image data of CMYK color system with reference to a color conversion table (not shown). The halftone process is a process of converting a gradation value (for example, 256 gradations) of pixels of CMYK image data into a gradation value for printing (for example, 2 gradations or 4 gradations). The intermediate buffer 35b includes three storage areas for storing the image data after completion of each of these image processes, and the final print image data (CMYK image data) after completion of all these image processes is stored in the intermediate buffer 35b. Stored in the final storage area.

縦横変換回路45は、中間バッファー35bから読み込んだ印刷イメージデータに縦横変換処理を施す。縦横変換処理とは、印刷イメージデータの画素の並び順を、表示用の横方向(ライン方向)の並び順から、印刷ヘッド29のノズル配列(つまりインク噴射順序)に合わせた縦方向(ラスター方向)の並び順に変換する処理である。そして、縦横変換処理後のヘッドイメージデータは出力バッファー35c(イメージバッファー)に格納される。   The vertical / horizontal conversion circuit 45 performs vertical / horizontal conversion processing on the print image data read from the intermediate buffer 35b. Vertical / horizontal conversion processing is a vertical direction (raster direction) in which the order of pixels of print image data is adjusted from the horizontal order (line direction) for display to the nozzle arrangement of the print head 29 (that is, the ink ejection order). ) In the order of arrangement. The head image data after the vertical / horizontal conversion processing is stored in the output buffer 35c (image buffer).

ヘッド制御ユニット46は、出力バッファー35cに格納されたヘッドイメージデータを、印刷ヘッド29による印刷制御(噴射制御)が可能なヘッド制御データに変換する。ヘッド制御データは、ヘッド制御ユニット46から例えば1パス分(印刷ヘッドの1走査分)ずつ印刷ヘッド29へ転送される。印刷ヘッド29は不図示のヘッド駆動回路を内蔵し、ヘッド駆動回路がヘッド制御データに基づきインクの噴射制御を行う。   The head control unit 46 converts the head image data stored in the output buffer 35 c into head control data that can be printed by the print head 29 (ejection control). The head control data is transferred from the head control unit 46 to the print head 29, for example, for one pass (one scan of the print head). The print head 29 includes a head drive circuit (not shown), and the head drive circuit performs ink ejection control based on the head control data.

図2は、印刷ヘッドの底面(ノズル開口面)を示す。図2に示すように、印刷ヘッド29のノズル開口面29Aには、副走査方向(図2における上下方向)に一定のノズルピッチで配列された計180個のノズル♯1〜♯180よりなるノズル列が4色分(4列)形成されている。本例では、各ノズル列は、180個ずつのノズル29K,29C,29M,29Yを備え、黒(K)、シアン(C)、マゼンタ(M)、イエロー(Y)のインク滴の噴射に使用される。   FIG. 2 shows the bottom surface (nozzle opening surface) of the print head. As shown in FIG. 2, the nozzle opening surface 29A of the print head 29 has a total of 180 nozzles # 1 to # 180 arranged at a constant nozzle pitch in the sub-scanning direction (vertical direction in FIG. 2). Four columns (four columns) are formed. In this example, each nozzle row includes 180 nozzles 29K, 29C, 29M, and 29Y, and is used to eject ink droplets of black (K), cyan (C), magenta (M), and yellow (Y). Is done.

また、印刷ヘッド29には、図2に示す各ノズル♯1〜♯180と対応する吐出駆動素子48がノズルと同数内蔵されている(但し、図2では印刷ヘッド29の外側に模式的に描いている)。吐出駆動素子48は、例えば圧電振動素子又は静電駆動素子からなる。印刷ヘッド29は、不図示のヘッド駆動回路により、ヘッド制御ユニット46から転送されたヘッド制御データに基づいて吐出駆動素子48の駆動制御を行って、ノズルからの噴射制御を行う。もちろん吐出駆動素子48はノズル通路内のインクを加熱するヒーターでもよく、ヒーターで加熱したインク内に沸騰により発生した気泡の膨張を利用してノズルからインク滴を吐出させる構成でもよい。   The print head 29 includes the same number of ejection drive elements 48 corresponding to the nozzles # 1 to # 180 shown in FIG. 2 as the nozzles (however, in FIG. ing). The ejection drive element 48 is composed of, for example, a piezoelectric vibration element or an electrostatic drive element. The print head 29 performs drive control of the ejection drive element 48 based on the head control data transferred from the head control unit 46 by a head drive circuit (not shown), and performs ejection control from the nozzles. Of course, the ejection driving element 48 may be a heater that heats the ink in the nozzle passage, or may be configured to eject ink droplets from the nozzles by utilizing expansion of bubbles generated by boiling in the ink heated by the heater.

図2に示す印刷ヘッド29は、プリンター部14において主走査方向(図2における左右方向)に移動可能に設けられた不図示のキャリッジの下部に固定されている。キャリッジモーター27の駆動により、印刷ヘッド29はキャリッジと共に主走査方向に移動し、その移動途中でノズルからインク滴を1ドット間隔で噴射することにより、用紙Pに印刷が施される。   The print head 29 shown in FIG. 2 is fixed to a lower portion of a carriage (not shown) provided in the printer unit 14 so as to be movable in the main scanning direction (left and right direction in FIG. 2). By driving the carriage motor 27, the print head 29 is moved in the main scanning direction together with the carriage, and printing is performed on the paper P by ejecting ink droplets from the nozzles at intervals of one dot during the movement.

図4は、回転処理に係る部分の詳細な構成図を示す。図4に示すように、縦横変換回路45は、バス38に接続された回転ユニット50と、この回転ユニット50に接続されたSRAM70とを備える。DRAM35は、前述の中間バッファー35bと出力バッファー35cとを備える(但し図4では入力バッファー35aを省略している)。図4に示すように、中間バッファー35bには回転ユニット50による回転処理前の印刷イメージデータPDが格納され、出力バッファー35cには回転ユニット50による回転処理後のヘッドイメージデータHDが格納されるようになっている。   FIG. 4 is a detailed configuration diagram of a portion related to the rotation process. As shown in FIG. 4, the vertical / horizontal conversion circuit 45 includes a rotation unit 50 connected to the bus 38 and an SRAM 70 connected to the rotation unit 50. The DRAM 35 includes the above-described intermediate buffer 35b and output buffer 35c (however, the input buffer 35a is omitted in FIG. 4). As shown in FIG. 4, the intermediate buffer 35b stores print image data PD before rotation processing by the rotation unit 50, and the output buffer 35c stores head image data HD after rotation processing by the rotation unit 50. It has become.

図4に示す回転ユニット50は、転送手段の一例としてのDMAコントローラー51と、回転手段の一例としての回転処理部52とを備える。DMAコントローラー51は、メモリーコントローラー34に対してアドレスを指定して読出し(リード)又は書込み(ライト)のリクエストを行うことにより、DRAM35との間で行われるデータ転送の制御を司る。詳しくは、DMAコントローラー51は、メモリーコントローラー34に対してDRAM35からの読出しアドレスADreadを指定して、DRAM35(詳しくは中間バッファー35b)から印刷イメージデータPDを設定サイズ(処理単位)のデータずつ回転ユニット50に転送する第1転送機能を有する。また、回転処理部52は、DRAM35内の印刷イメージデータPDのうち回転ユニット50へ設定サイズ(処理単位)ずつ転送されてきたデータをSRAM70に格納し、SRAM70に格納されたデータに回転処理(縦横変換処理)を施す機能を有する。また、DMAコントローラー51は、メモリーコントローラー34に対してDRAM35への書込みアドレスADwriteを指定して、回転処理後のデータをSRAM70からDRAM35(詳しくは出力バッファー35c)へ設定サイズ(処理単位)ずつ転送する第2転送機能を有する。   The rotation unit 50 illustrated in FIG. 4 includes a DMA controller 51 as an example of a transfer unit and a rotation processing unit 52 as an example of a rotation unit. The DMA controller 51 controls the data transfer performed with the DRAM 35 by designating an address to the memory controller 34 and making a read (read) or write (write) request. Specifically, the DMA controller 51 designates the read address ADread from the DRAM 35 to the memory controller 34, and rotates the print image data PD from the DRAM 35 (more specifically, the intermediate buffer 35b) by data of a set size (processing unit). 50 has a first transfer function. In addition, the rotation processing unit 52 stores, in the SRAM 70, data that has been transferred to the rotation unit 50 among the print image data PD in the DRAM 35 by a set size (processing unit), and rotates the data stored in the SRAM 70 (vertically and horizontally). Conversion processing). Further, the DMA controller 51 designates the write address ADwrite to the DRAM 35 to the memory controller 34, and transfers the rotated data from the SRAM 70 to the DRAM 35 (specifically, the output buffer 35c) by a set size (processing unit). A second transfer function is provided.

図4に示すように、DMAコントローラー51は、上記第1転送機能及び第2転送機能を実現するための構成として、設定レジスター53、シーケンサー54、第1カウンター55、第2カウンター56、第3カウンター57、第4カウンター58、第1アドレス生成部59、第2アドレス生成部60及び転送指示部61を備える。   As shown in FIG. 4, the DMA controller 51 has a configuration register 53, a sequencer 54, a first counter 55, a second counter 56, a third counter as a configuration for realizing the first transfer function and the second transfer function. 57, a fourth counter 58, a first address generator 59, a second address generator 60, and a transfer instruction unit 61.

第1アドレス生成部59は、回転処理前のデータをDRAM35から回転ユニット50へ転送する際の読出しアドレスADreadを生成する。第2アドレス生成部60は、回転処理後のデータをSRAM70からDRAM35へ転送する際の書込みアドレスADwriteを生成する。   The first address generator 59 generates a read address ADread when transferring the data before the rotation process from the DRAM 35 to the rotation unit 50. The second address generator 60 generates a write address ADwrite when transferring the rotated data from the SRAM 70 to the DRAM 35.

設定レジスター53には、印刷イメージデータPD及びヘッドイメージデータHDに関する設定情報がCPU31により設定される。設定レジスター53の各種設定情報は、各アドレス生成部59,60がアドレスを生成する際に使用される。また、設定レジスター53には、バースト転送用の設定情報として、バースト転送1回当たりのデータサイズであるバーストサイズBS(本例では16ビット×4)と、転送回数T(本例では4回)とが、CPU31により設定される。   Setting information regarding the print image data PD and the head image data HD is set in the setting register 53 by the CPU 31. The various setting information in the setting register 53 is used when the address generators 59 and 60 generate addresses. In the setting register 53, as setting information for burst transfer, a burst size BS (16 bits × 4 in this example) which is a data size per burst transfer and a transfer count T (4 times in this example) are stored. Are set by the CPU 31.

シーケンサー54は、各カウンター55〜58の計数処理などを司る。各カウンター55〜58は、回転処理対象のデータのうちの対象画素が印刷イメージデータPDにおける何行目・何列目の画素であるかなどを計数する。各アドレス生成部59,60は、設定レジスター53の設定情報と、各カウンター55〜58の計数値とを用いて、各アドレスADread,ADwriteを生成する。第1アドレス生成部59は読出しアドレスADreadの生成に使用する判定部59a及び演算部59bを備え、第2アドレス生成部60は書込みアドレスADwriteの生成に使用する判定部60a及び演算部60bを備える。なお、本実施形態では、判定部59a,60aにより、判定手段が構成される。   The sequencer 54 manages the counting process of each counter 55-58. Each of the counters 55 to 58 counts which row / column of pixels in the print image data PD is the target pixel in the rotation processing target data. Each address generation unit 59, 60 generates each address ADread, ADwrite using the setting information of the setting register 53 and the count value of each counter 55-58. The first address generation unit 59 includes a determination unit 59a and a calculation unit 59b that are used to generate the read address ADread, and the second address generation unit 60 includes a determination unit 60a and a calculation unit 60b that are used to generate the write address ADwrite. In the present embodiment, a determination unit is configured by the determination units 59a and 60a.

転送指示部61は、回転ユニット50とDRAM35との間におけるデータの転送を指示する機能を有する。転送指示部61は、メモリーコントローラー34に対して第1アドレス生成部59の生成した読出しアドレスADreadを指定してリードリクエストを行うことで、DRAM35から回転ユニット50へのデータの転送を行う。また、転送指示部61は、メモリーコントローラー34に対して第2アドレス生成部60の生成した書込みアドレスADwriteを指定してライトリクエストを行うことで、回転ユニット50からDRAM35へのデータの転送を行う。   The transfer instruction unit 61 has a function of instructing data transfer between the rotation unit 50 and the DRAM 35. The transfer instruction unit 61 transfers the data from the DRAM 35 to the rotation unit 50 by designating the read address ADread generated by the first address generation unit 59 to the memory controller 34 and making a read request. Further, the transfer instruction unit 61 transfers the data from the rotation unit 50 to the DRAM 35 by designating the write address ADwrite generated by the second address generation unit 60 to the memory controller 34 and making a write request.

一方、図4に示す回転処理部52は、回転制御部62及びデータレジスター63を備える。DRAM35から回転ユニット50に転送されたデータは、データレジスター63に一旦格納される。回転処理部52は、データレジスター63に回転処理単位のデータが蓄積されると、そのデータをSRAM70に格納する。回転制御部62は、そのデータをSRAM70から再び読込んで回転処理(縦横変換処理)を施しつつ再びSRAM70に書き込むことでデータを90度回転させる。SRAM70は、回転処理用の格納領域をデータ2面分備え、回転制御部62は、2面の格納領域を交互に使用することで回転処理を高速に進める。   On the other hand, the rotation processing unit 52 illustrated in FIG. 4 includes a rotation control unit 62 and a data register 63. The data transferred from the DRAM 35 to the rotation unit 50 is temporarily stored in the data register 63. When the rotation processing unit 52 accumulates data in units of rotation processing in the data register 63, the rotation processing unit 52 stores the data in the SRAM 70. The rotation control unit 62 reads the data from the SRAM 70 again, performs rotation processing (vertical / horizontal conversion processing), and writes the data in the SRAM 70 again, thereby rotating the data by 90 degrees. The SRAM 70 includes two storage areas for the rotation process, and the rotation control unit 62 advances the rotation process at high speed by alternately using the two storage areas.

図4に示すように、DRAM35における中間バッファー35bには、印刷イメージデータPDが、図中に太数字で示す順番にデータが配列されたデータ格納構造で格納されている。これは、画像処理回路44内の不図示のDMAコントローラー(転送手段)が、バースト転送した各データをDRAM35の中間バッファー35bに図4に示す配列で格納したことによる。   As shown in FIG. 4, print image data PD is stored in the intermediate buffer 35b in the DRAM 35 in a data storage structure in which data is arranged in the order indicated by bold numerals in the figure. This is because a DMA controller (transfer means) (not shown) in the image processing circuit 44 stores each data subjected to burst transfer in the intermediate buffer 35b of the DRAM 35 in the arrangement shown in FIG.

DMAコントローラー51は、メモリーコントローラー34に対して、読出しアドレスADreadとデータサイズ(バーストサイズBS)とを指定して、リード又はライトのリクエストとを行う。メモリーコントローラー34は、DMAコントローラー51からリードリクエストを受け付けると、DRAM35における指定の読出しアドレスADreadから指定データサイズのデータを順次読み出す。そして、この読み出されたデータは、リードリクエスト元の回転ユニット50へ転送される。また、メモリーコントローラー34は、DMAコントローラー51からライトリクエストを受け付けると、回転ユニット50からバースト転送されてきたデータを、DRAM35における指定の書込みアドレスADwriteに順次書き込む。   The DMA controller 51 makes a read or write request to the memory controller 34 by designating the read address ADread and the data size (burst size BS). When the memory controller 34 receives a read request from the DMA controller 51, the memory controller 34 sequentially reads data of a specified data size from a specified read address ADread in the DRAM 35. The read data is transferred to the rotation unit 50 that is the read request source. In addition, when the memory controller 34 receives a write request from the DMA controller 51, the memory controller 34 sequentially writes the data transferred in burst from the rotation unit 50 to the designated write address ADwrite in the DRAM 35.

図5は、DRAMにおけるデータ格納構造を示す。図5(a)は回転処理前の印刷イメージデータを示し、図5(b)は回転処理後のヘッドイメージデータを示す。なお、図5では説明を簡単にするため、図10と同様に、画素配列が6行×10列の画像データを例にしている。   FIG. 5 shows a data storage structure in the DRAM. FIG. 5A shows print image data before rotation processing, and FIG. 5B shows head image data after rotation processing. In order to simplify the description in FIG. 5, as in FIG. 10, image data having a pixel array of 6 rows × 10 columns is taken as an example.

図5(a)において、画素の符号「N-M」は、図10と同様、印刷イメージデータPDにおける第N行のM列目の画素データを指す。図5(a)において、太線枠の範囲が、回転処理の1単位となっている。この1単位(処理単位)には、回転処理の前後で行と列の各画素数が同じになるように、K×K画素の正方ブロックが設定される。本実施形態では、一例として4×4画素の正方ブロックが設定される。また、本例では、図5(a)に示すように1画素(1ユニット)はBバイト(本例ではB=16ビット)である。バースト転送1回分のバーストサイズBSは、4画素データ分の4・Bバイトである。図5における太線枠で囲む正方ブロック(処理単位)のデータを転送する場合、まず1行目の4画素分(4・Bバイト)の画素データがバースト転送され、続けて2行目、3行目、4行目の順で4画素分(4・Bバイト)ずつの画素データが順次バースト転送され、原則、処理単位の転送に、転送回数「4回」のバースト転送が行われる。   In FIG. 5A, the symbol “NM” of the pixel indicates the pixel data of the Mth column of the Nth row in the print image data PD, as in FIG. In FIG. 5A, the range of the thick line frame is one unit of the rotation process. In this one unit (processing unit), a square block of K × K pixels is set so that the number of pixels in the row and column is the same before and after the rotation processing. In the present embodiment, a square block of 4 × 4 pixels is set as an example. In this example, as shown in FIG. 5A, one pixel (one unit) is B bytes (B = 16 bits in this example). The burst size BS for one burst transfer is 4 · B bytes for 4 pixel data. When transferring data of a square block (processing unit) surrounded by a thick line frame in FIG. 5, first, pixel data of 4 pixels (4 · B bytes) in the first row is burst transferred, followed by the second row and the third row. In the fourth and fourth rows, pixel data of 4 pixels (4 · B bytes) is sequentially transferred in bursts. In principle, burst transfer of “4 times” is performed for transfer in units of processing.

本実施形態では、図5(a)において太線枠で囲まれた太数字「1」、「2」のブロックのデータが、1回の転送単位(処理単位)である4×4画素の正方ブロック内が全て画素データで満たされた満データDfとなっている。また、図5(a)において右側に破線枠で囲む太数字「3」、「6」のブロックのデータが行方向にバーストサイズBSの4画素に満たない行余りデータとなっている。さらに、図5(a)において太線枠で囲む太数字「4」、「5」のブロックのデータが列方向に転送回数「4回」分の4画素に満たない列余りデータDcとなっている。   In this embodiment, the data of the blocks of bold numbers “1” and “2” surrounded by a thick frame in FIG. 5A is a square block of 4 × 4 pixels, which is one transfer unit (processing unit). The full data Df is filled with pixel data. Also, in FIG. 5A, the data of the blocks of bold numbers “3” and “6” enclosed in a broken line frame on the right side is the remainder data that is less than 4 pixels of the burst size BS in the row direction. Further, in FIG. 5A, the data of the blocks of bold numbers “4” and “5” surrounded by the thick line frame is the column remainder data Dc which is less than 4 pixels corresponding to the transfer count “4 times” in the column direction. .

ここで、図5(a)において、印刷イメージデータPDの行方向(図5(a)における横方向)のサイズを「ラスターサイズR」、印刷イメージデータPDの列方向(図5(a)における縦方向)のサイズを「ラインサイズL」と定義する。また、満データDfが行方向に存在する範囲のサイズを「バーストラスターサイズBR」、満データDfが列方向に存在する範囲のサイズを「バーストラインサイズBL」と定義する。なお、各サイズR,L,BR,BLは、画素数に相当する値である。   Here, in FIG. 5A, the size of the print image data PD in the row direction (lateral direction in FIG. 5A) is “raster size R”, and the print image data PD in the column direction (FIG. 5A). The size in the (vertical direction) is defined as “line size L”. Further, the size of the range where the full data Df exists in the row direction is defined as “burst raster size BR”, and the size of the range where the full data Df exists in the column direction is defined as “burst line size BL”. Each size R, L, BR, BL is a value corresponding to the number of pixels.

本実施形態では、図5(a)において破線枠で囲まれた行余りデータ「3」、「6」は、DRAM35において、同図(a)に矢印で示す位置に格納される。すなわち、「3」、「6」の行余りデータDrは、列余りデータDcの末尾(図5(a)では画素6-8)に続けて、満データDfの配列幅(つまりバーストラスターサイズBR)内に収まるように配列される。つまり、印刷イメージデータPDは、X・Y個の満データDfがX行Y列のマトリクス状に配列されるとともに、X個の行余りデータDrが、Y個の列余りデータDcの末尾に続けて、満データDfのY列配列幅(Y列分の配列幅)内に収まるように配列された状態でDRAM35に格納される。   In this embodiment, the remainder data “3” and “6” surrounded by the broken line frame in FIG. 5A are stored in the DRAM 35 at the positions indicated by the arrows in FIG. That is, the row remainder data Dr of “3” and “6” is arranged after the end of the column remainder data Dc (pixel 6-8 in FIG. 5A), and the arrangement width of the full data Df (that is, the burst raster size BR). ) Are arranged so as to be within. That is, in the print image data PD, X · Y full data Df is arranged in a matrix of X rows and Y columns, and X row remainder data Dr is continued from the end of Y column remainder data Dc. Thus, the data is stored in the DRAM 35 in a state of being arranged so as to be within the Y column arrangement width (the arrangement width for the Y column) of the full data Df.

一方、図5(b)に示すように、回転処理後のヘッドイメージデータHDでは、太線枠で囲まれた太数字「1」、「2」の領域のデータが、1回の転送単位(処理単位)である4×4画素の正方ブロック内が全て画素データで満たされた満データDfとなっている。また、図5(b)において太線枠で囲まれた太数字「3」の領域のデータが、列方向に転送回数「4回」分の4画素に満たない列余りデータDcとなっている。また、図5(b)において右側に破線枠で囲まれた太数字「4」、「5」、「6」の領域のデータは、行方向にバーストサイズBSの4画素に満たない行余りデータとなっている。なお、図5(b)に示すヘッドイメージデータHDは、印刷イメージデータPDを縦横変換したものであるため、その行方向の各サイズと列方向のサイズが逆になっている。すなわち、ヘッドイメージデータHDでは、その行方向(図5(b)における横方向)のサイズが「ラインサイズL」、その列方向(図5(b)における縦方向)のサイズが「ラスターサイズR」となる。また、ヘッドイメージデータHDにおいて満データDfが行方向に存在する範囲のサイズが「バーストラインサイズBL」、満データDfが列方向に存在する範囲のサイズが「バーストラスターサイズBR」となる。   On the other hand, as shown in FIG. 5B, in the head image data HD after the rotation processing, the data in the areas of the bold numbers “1” and “2” surrounded by the thick line frame are transferred in one transfer unit (process). A square block of 4 × 4 pixels, which is a unit, is full data Df filled with pixel data. In FIG. 5B, the data in the area of the bold numeral “3” surrounded by the thick frame is the column remainder data Dc that is less than 4 pixels corresponding to the transfer count “4 times” in the column direction. In addition, the data in the area of the bold numerals “4”, “5”, and “6” surrounded by the broken line frame on the right side in FIG. 5B is the remaining data that is less than 4 pixels of the burst size BS in the row direction. It has become. Note that the head image data HD shown in FIG. 5B is obtained by vertically and horizontally converting the print image data PD, so that the size in the row direction and the size in the column direction are reversed. That is, in the head image data HD, the size in the row direction (horizontal direction in FIG. 5B) is “line size L”, and the size in the column direction (vertical direction in FIG. 5B) is “raster size R”. " In the head image data HD, the size of the range where the full data Df exists in the row direction is “burst line size BL”, and the size of the range where the full data Df exists in the column direction is “burst raster size BR”.

本実施形態では、図5(b)において破線枠で囲まれた行余りデータ「4」、「5」、「6」が、DRAM35において同図(b)に矢印で示す位置に配列される。すなわち、「4」、「5」、「6」の行余りデータDrは、「3」の列余りデータDcの末尾(図5(b)では画素4-10)に続けて、満データDfの配列幅(つまりバーストラインサイズBL)内に収まるように配列されるようになっている。つまり、ヘッドイメージデータHDは、Y・X個の満データDfがY行X列のマトリクス状に配列されるとともに、Y個の行余りデータDrが、X個の列余りデータDcの末尾に続けて、満データDfのX列配列幅(X列分の配列幅)内に収まるように配列された状態でDRAM35に格納される。   In this embodiment, the remainder data “4”, “5”, and “6” surrounded by the broken line frame in FIG. 5B are arranged in the DRAM 35 at the positions indicated by the arrows in FIG. That is, the row remainder data Dr of “4”, “5”, and “6” is the full data Df following the end of the column remainder data Dc of “3” (pixel 4-10 in FIG. 5B). They are arranged so as to be within the arrangement width (that is, burst line size BL). That is, in the head image data HD, Y · X full data Df is arranged in a matrix of Y rows and X columns, and Y row remainder data Dr is continued from the end of X column remainder data Dc. Thus, the data is stored in the DRAM 35 in such a state that the full data Df is arranged within the X column arrangement width (X column arrangement width).

図6は、このようなデータ配列でDRAM35に格納された印刷イメージデータPDと、回転処理後にDRAM35に格納されるヘッドイメージデータHDとのデータ格納構造を示す。印刷イメージデータPDが、DRAM35に図6(a)に示すようにアラインされた状態で格納されることにより、図10の従来技術で多数(図10(a)の例では36個)存在していたダミーデータの数が少なく抑えられている。また、回転処理後のヘッドイメージデータHDが、DRAM35に図6(b)に示すようにアラインされた状態で格納されることにより、図10に示す従来技術で多数(図10(b)の例では36個)存在していたダミーデータの数が少なく抑えられる。   FIG. 6 shows a data storage structure of the print image data PD stored in the DRAM 35 in such a data arrangement and the head image data HD stored in the DRAM 35 after the rotation process. Since the print image data PD is stored in the DRAM 35 in an aligned state as shown in FIG. 6A, a large number (36 in the example of FIG. 10A) exists in the prior art of FIG. The number of dummy data is reduced. Further, the head image data HD after the rotation processing is stored in the DRAM 35 in an aligned state as shown in FIG. 6B, so that a large number (examples of FIG. 10B) are obtained in the prior art shown in FIG. 36) the number of existing dummy data can be reduced.

ここで、このように印刷イメージデータPDが図6(a)に示すデータ格納構造であっても、データ「1」「2」「3」「4」「5」「6」の順番でバースト転送できる読出しアドレスを指定できるように第1アドレス生成部59(図4参照)が用意されている。また、回転処理後のヘッドイメージデータHDを、DRAM35に図6(b)に示すデータ格納構造で格納できる書込みアドレスを指定できるように第2アドレス生成部60(図4参照)が用意されている。   Here, even if the print image data PD has the data storage structure shown in FIG. 6A, burst transfer is performed in the order of data “1” “2” “3” “4” “5” “6”. A first address generator 59 (see FIG. 4) is prepared so that a possible read address can be designated. Further, a second address generation unit 60 (see FIG. 4) is prepared so that the write address that can store the head image data HD after the rotation processing in the DRAM 35 with the data storage structure shown in FIG. .

次に、アドレス生成部59,60によるアドレス生成方法を説明する。CPU31が設定レジスター53に設定する設定情報としては、図5に示すラスターサイズR、ラインサイズL、バーストラスターサイズBR、バーストラインサイズBLがある。これらのサイズR,L,BR,BLは、印刷イメージデータPD用とヘッドイメージデータHD用とで別々に設定される。また、CPU31は設定レジスター53に、印刷イメージデータPDのベースアドレスBase Address、及びヘッドイメージデータHDのベースアドレスBase Addressを設定する。また、CPU31は設定レジスター53に、バースト転送条件として、バーストサイズBS(本例では4・Bバイト)及び転送回数T(本例では4回)を設定する。   Next, an address generation method by the address generation units 59 and 60 will be described. The setting information set in the setting register 53 by the CPU 31 includes a raster size R, a line size L, a burst raster size BR, and a burst line size BL shown in FIG. These sizes R, L, BR, and BL are set separately for print image data PD and head image data HD. Further, the CPU 31 sets the base address Base Address of the print image data PD and the base address Base Address of the head image data HD in the setting register 53. Further, the CPU 31 sets the burst size BS (4 · B bytes in this example) and the transfer count T (4 times in this example) in the setting register 53 as burst transfer conditions.

第1カウンター55は、ベースアドレスBase Addressから行方向(ライン方向)(図5(a)における横方向)に何番目(つまり何列目)の画素であるかをデータポジションRPとして計数する。データポジションRPは、0,1,2,…,BR,BR+1,…,R(但しR≧BR)をカウントする。   The first counter 55 counts, as the data position RP, the number of pixels (that is, which column) in the row direction (line direction) (the horizontal direction in FIG. 5A) from the base address Base Address. The data position RP counts 0, 1, 2, ..., BR, BR + 1, ..., R (where R≥BR).

第2カウンター56は、ベースアドレスBase Addressから列方向(ラスター方向)(図5(a)における縦方向)の何番目(つまり何行目)の画素であるかをデータポジションLPとして計数する。第2カウンター56は、第1カウンター55が1行の画素数分に相当するラスターサイズRを計数し終わって、データポジションRPがラスターサイズRに達する(RP=R)度に「1」ずつ加算される。データポジションLPは、0,1,2,…,BL,BL+1,…,L(但しL≧BL)をカウントする。このため、第2カウンター56のデータポジションLPがラインサイズLに達し(LP=L)、かつ第1カウンター55のデータポジションRPがラスターサイズRに達すると(RP=R)、シーケンサー54は印刷イメージデータの全画素について回転処理(つまりアドレス生成処理)が終了したと判断する。   The second counter 56 counts, as the data position LP, the pixel position (that is, which row) in the column direction (raster direction) (vertical direction in FIG. 5A) from the base address Base Address. The second counter 56 adds “1” each time the data position RP reaches the raster size R (RP = R) after the first counter 55 finishes counting the raster size R corresponding to the number of pixels in one row. Is done. The data position LP counts 0, 1, 2,..., BL, BL + 1, ..., L (where L ≧ BL). Therefore, when the data position LP of the second counter 56 reaches the line size L (LP = L) and the data position RP of the first counter 55 reaches the raster size R (RP = R), the sequencer 54 prints the print image. It is determined that the rotation process (that is, the address generation process) has been completed for all the pixels of the data.

第3カウンター57は、4×4画素の正方ブロック内で対象画素が行方向(ライン方向)に何番目(何列目)であるかを計数する。第4カウンター58は、4×4画素の正方ブロック内で対象画素が列方向(ラスター方向)に何番目(つまり何行目)であるかを計数する。第3カウンター57が「1」,「2」,「3」,「4」と計数して正方ブロック内の1行目の4画素を計数し終わると、初期値「1」にリセットされるとともに、第4カウンター58が「1」を加算して2行目を指す「2」になる。次に第3カウンター57が2行目の4画素を計数し終わると第4カウンター58が「3」になり、続いて第3カウンター57が3行目の4画素を計数し終わると第4カウンター58が「4」になり、最後に第3カウンター57が4行目の4画素を計数する。   The third counter 57 counts the number (number of columns) of the target pixel in the row direction (line direction) in the 4 × 4 pixel square block. The fourth counter 58 counts what number (that is, what row) the target pixel is in the column direction (raster direction) in the 4 × 4 pixel square block. When the third counter 57 counts “1”, “2”, “3”, “4” and finishes counting the four pixels in the first row in the square block, it is reset to the initial value “1”. The fourth counter 58 adds “1” to “2” indicating the second row. Next, when the third counter 57 finishes counting four pixels in the second row, the fourth counter 58 becomes “3”, and when the third counter 57 finishes counting four pixels in the third row, the fourth counter 58 becomes “4”, and finally the third counter 57 counts four pixels in the fourth row.

第1カウンター55は、第3及び第4カウンター57,58が第1行第1列目の正方ブロック内の画素を全て計数し終わると、はじめて同一行の次列のブロック内の第1列画素を指すデータポジションRP(この例では「5」)に値を進める。また、第2カウンター56は、図5(a)において1行目の最終列ブロック内の画素を第3及び第4カウンター57,58が全て計数し終わって、1行目の全ブロックの画素を計数し終わると、次行の第1列ブロック内の1行目の画素を指すデータポジションLP(この例では「5」)に値を進める。つまり、第1カウンター55のデータポジションRPは、各行の第1列ブロックで「1,2,3,4」を4回繰り返し、同一行の次列のブロックで「5,6,7,8」を4回繰り返し、同一行第Y列目(満データDfの最終列)のブロックで「4・(Y−1)+1,4・(Y−1)+2,4・(Y−1)+3,4・Y」を4回繰り返す。そして、同一行最終列の(Y+1)列目(行余りデータの列で図5(a)では太数字「3」)のブロックで「BR+1,BR+2,…,BR+r(=R)」を4回繰り返す。但し、rは行余りデータの行方向の画素数(r=R−BR)であり、0≦r<K(=4)である。   The first counter 55 is the first column pixel in the next column block of the same row only after the third and fourth counters 57 and 58 have counted all the pixels in the square block of the first row and first column. The value is advanced to the data position RP (in this example, “5”). Further, the second counter 56 finishes counting the pixels in the last column block of the first row in FIG. 5A, and the third and fourth counters 57 and 58 finish counting the pixels of all the blocks of the first row. When the counting is completed, the value is advanced to the data position LP (in this example, “5”) indicating the pixel in the first row in the first column block of the next row. That is, the data position RP of the first counter 55 repeats “1, 2, 3, 4” four times in the first column block of each row and “5, 6, 7, 8” in the next column block of the same row. Is repeated four times, and “4 · (Y−1) + 1,4 · (Y−1) + 2,4 · (Y−1) +3” is obtained in the block of the same row and the Yth column (the last column of the full data Df). Repeat “4 • Y” four times. Then, “BR + 1, BR + 2,..., BR + r (= R)” is performed four times in the block of the (Y + 1) th column (the column of the remainder data in FIG. 5A and the bold numeral “3” in FIG. 5A). repeat. Here, r is the number of pixels in the row direction of the remainder data (r = R−BR), and 0 ≦ r <K (= 4).

一方、第2カウンター56は、第1行ブロックで第1列から第(Y+1)列までの各ブロックで「1,2,3,4」を1回ずつ計数し、第2行の各列のブロックで「5,6,7,8」を1回ずつ計数し、第X行(満データDfの最終行)の各列のブロックで「4・(X−1)+1,4・(X−1)+2,4・(X−1)+3,4・X」を1回ずつ計数する。そして、最終の第(X+1)行(列余りデータDcの行)の各列のブロックで「BL+1,BL+2,…,BL+c(=L)」を1回ずつ計数する。但し、cは列余りデータの列方向の画素数(c=L−BL)であり、0≦c<K(=4)である。   On the other hand, the second counter 56 counts “1, 2, 3, 4” once in each block from the first column to the (Y + 1) th column in the first row block, In the block, “5, 6, 7, 8” is counted once, and “4 · (X−1) + 1,4 · (X−) in the block of each column of the Xth row (the last row of the full data Df). 1) +2, 4 · (X−1) + 3,4 × X ”are counted once. Then, “BL + 1, BL + 2,..., BL + c (= L)” is counted once in each column block of the last (X + 1) th row (row of column remainder data Dc). However, c is the number of pixels in the column direction of the column remainder data (c = L−BL), and 0 ≦ c <K (= 4).

そして、シーケンサー54は、データポジションLP=LかつデータポジションRP=Rになると、印刷イメージデータPDの全画素データの転送が終了したと判断する。なお、(Y+1)列目のブロックは行余りデータDrが属するブロックを指し、(X+1)行目のブロックは列余りデータDrが属するブロックを指す。このため、行余りデータDrが存在しない場合は最終列が第Y列になり、列余りデータDcが存在しない場合は最終行が第X列になる。   Then, when the data position LP = L and the data position RP = R, the sequencer 54 determines that the transfer of all pixel data of the print image data PD has been completed. The block in the (Y + 1) th column indicates a block to which the remainder data Dr belongs, and the block in the (X + 1) th row indicates a block to which the column remainder data Dr belongs. Therefore, when there is no line remainder data Dr, the last column is the Yth column, and when there is no column remainder data Dc, the last row is the Xth column.

以下、図7及び図8を用いてアドレス生成方法を説明する。図7は、第1アドレス生成部59によるソース側アドレス生成方法の説明図、図8は、第2アドレス生成部60によるディスティネーション側アドレス生成方法の説明図である。まず、図7を用いて、第1アドレス生成部59によるソース側アドレス生成方法について説明する。   Hereinafter, the address generation method will be described with reference to FIGS. FIG. 7 is an explanatory diagram of a source-side address generation method by the first address generator 59, and FIG. 8 is an explanatory diagram of a destination-side address generation method by the second address generator 60. First, a source-side address generation method by the first address generation unit 59 will be described with reference to FIG.

データポジションRPがバーストラスターサイズBR以下(RP≦BR)で満データ内にある場合と、データポジションRPがバーストラスターサイズBRを超えて(RP>BR)行余りデータ内にある場合とで、読出しアドレス生成用の演算式を使い分ける。   Read when data position RP is less than burst raster size BR (RP ≦ BR) and within full data, and when data position RP exceeds burst raster size BR (RP> BR) and is within the remainder data Use different formulas for address generation.

RP≦BRの場合、DRAM35における印刷イメージデータPDのM行N列の画素M−Nの読出しアドレスADreadは、次式で与えられる。
ADread=Base Address+(M−1)×BR×B+(N−1)×B …(1)
また、RP>BRの場合、DRAM35における印刷イメージデータPDのM行N列の画素M-Nの読出しアドレスADreadは、次式で与えられる。
ADread=Base Address+(BR×L)+(M−1)×(R−BR)×B+(N−BR−1)×B …(2)
図4に示す第1アドレス生成部59の判定部59aは、データポジションRPが、RP≦BRであるか、RP>BRであるかを判定する。第1アドレス生成部59の演算部59bは、上記(1)式と上記(2)式のうち判定部59aの判定結果に応じた一方の演算式に基づき、設定レジスター53の設定値Base Address,BR,L,B及び第1及び第2カウンター55,56の計数値RP(=N),LP(=M)を用いて、読出しアドレスADreadを演算する。但し、このときのベースアドレスBase Addressは、印刷イメージデータPDのものである。なお、印刷イメージデータPDにおいて転送対象の画素データの位置をM行N列で表したときの数値M,Nは、第2カウンター56の計数値としてM(=LP)が与えられ、第1カウンター55の計数値としてN(=RP)が与えられる。
When RP ≦ BR, the read address ADread of the pixel M−N of M rows and N columns of the print image data PD in the DRAM 35 is given by the following equation.
ADread = Base Address + (M−1) × BR × B + (N−1) × B (1)
Further, when RP> BR, the read address ADread of the pixel M-N of M rows and N columns of the print image data PD in the DRAM 35 is given by the following equation.
ADread = Base Address + (BR × L) + (M−1) × (R−BR) × B + (N−BR−1) × B (2)
The determination unit 59a of the first address generation unit 59 illustrated in FIG. 4 determines whether the data position RP is RP ≦ BR or RP> BR. The calculation unit 59b of the first address generation unit 59 is configured to set the set value Base Address of the setting register 53 based on one of the above formulas (1) and (2) according to the determination result of the determination unit 59a. The read address ADread is calculated using BR, L, B and the count values RP (= N) and LP (= M) of the first and second counters 55 and 56. However, the base address Base Address at this time is that of the print image data PD. Note that the numerical values M and N when the position of the pixel data to be transferred is represented by M rows and N columns in the print image data PD are given M (= LP) as the count value of the second counter 56, and the first counter N (= RP) is given as a count value of 55.

演算部59bは、第3カウンター57が「1」のときに、第1及び第2カウンター55,56が計数しているデータポジションRP(=N),LP(=M)のN,Mを用いて、読出しアドレスADreadを演算する。ここで、第3カウンター57が「1」のときとは、1回のバースト転送の対象となる4画素分(バーストサイズBS)のデータにおける先頭画素のポジションを指すときであり、このときのN,Mを用いることにより、ブロック毎に4回行うバースト転送の各回の読出しアドレスADreadを算出できる。なお、前記(1)式が第1のアドレス生成演算式に相当し、前記(2)式が第2のアドレス生成演算式に相当する。   The arithmetic unit 59b uses N and M of the data positions RP (= N) and LP (= M) counted by the first and second counters 55 and 56 when the third counter 57 is “1”. Thus, the read address ADread is calculated. Here, the time when the third counter 57 is “1” is the time when it indicates the position of the first pixel in the data for four pixels (burst size BS) to be subjected to one burst transfer. , M can be used to calculate the read address ADread for each burst transfer performed four times for each block. The expression (1) corresponds to the first address generation calculation expression, and the expression (2) corresponds to the second address generation calculation expression.

なお、画像処理回路44内の不図示の前述のDMAコントローラーは、第1アドレス生成部59と同様の構成の不図示のアドレス生成部を備える。この不図示のアドレス生成部は、内蔵する判定部及び演算部により、第1アドレス生成部59と同様の手法で、判定部の判定結果に応じて前記(1)式又は(2)式を用いて書込みアドレスを算出する。そして、DRAM35におけるその算出した書込みアドレスにバースト転送した各バーストデータを順次書き込むことにより、印刷イメージデータPDを図6(a)に示すデータ格納構造に格納する。   The DMA controller (not shown) in the image processing circuit 44 includes an address generator (not shown) having the same configuration as that of the first address generator 59. This address generation unit (not shown) uses the formula (1) or (2) according to the determination result of the determination unit by the built-in determination unit and calculation unit in the same manner as the first address generation unit 59. To calculate the write address. Then, by sequentially writing each burst data burst-transferred to the calculated write address in the DRAM 35, the print image data PD is stored in the data storage structure shown in FIG.

次に、図8を用いて、第2アドレス生成部60によるディスティネーション側アドレス生成方法について説明する。
データポジションLPがバーストラインサイズBL以下(LP≦BL)で満データ内にある場合と、データポジションLPがバーストラインサイズBLを超えて(RP>BR)行余りデータ内にある場合とで、書込みアドレス生成用の演算式を使い分ける。
Next, a destination-side address generation method by the second address generation unit 60 will be described with reference to FIG.
Write when data position LP is less than burst line size BL (LP ≦ BL) and within full data, and when data position LP exceeds burst line size BL (RP> BR) and within remainder data Use different formulas for address generation.

LP≦BLの場合、ヘッドイメージデータHDのM行N列の画素データDM-NのDRAM35への書込みアドレスADwriteは、次式で与えられる。
ADwrite=Base Address+(N−1)×BL×B+(M−1)×B …(3)
また、LP>BLの場合、ヘッドイメージデータHDのM行N列の画素データDM-NのDRAM35への書込みアドレスADwriteは、次式で与えられる。
ADwrite=Base Address+(BR×R)+(N−1)×(L−BL)×B+(M−BL−1)×B …(4)
図4に示す第2アドレス生成部60の判定部60aは、データポジションLPが、LP≦BLであるか、LP>BLであるかを判定する。第2アドレス生成部60の演算部60bは、上記(3)式と上記(4)式のうち判定部60aの判定結果に応じた一方の演算式に基づき、設定レジスター53の設定値Base Address,BL,R,B及び第1及び第2カウンター55,56の計数値RP(=M),LP(=N)を用いて、書込みアドレスADwriteを演算する。但し、このときのベースアドレスBase Addressは、ヘッドイメージデータHDのものである。なお、ヘッドイメージデータHDにおいて転送対象の画素データの位置をM行N列で表したときの数値M,Nは、第1カウンター55の計数値としてM(=RP)が与えられ、第2カウンター56の計数値としてN(=LP)が与えられる。
When LP ≦ BL, the write address ADwrite to the DRAM 35 of the pixel data DM-N of M rows and N columns of the head image data HD is given by the following equation.
ADwrite = Base Address + (N−1) × BL × B + (M−1) × B (3)
When LP> BL, a write address ADwrite to the DRAM 35 of the pixel data DM-N of M rows and N columns of the head image data HD is given by the following equation.
ADwrite = Base Address + (BR × R) + (N−1) × (L−BL) × B + (M−BL−1) × B (4)
The determination unit 60a of the second address generation unit 60 illustrated in FIG. 4 determines whether the data position LP is LP ≦ BL or LP> BL. The calculation unit 60b of the second address generation unit 60 is based on one of the above formulas (3) and (4) according to the determination result of the determination unit 60a, and the set value Base Address, The write address ADwrite is calculated using BL, R, B and the count values RP (= M), LP (= N) of the first and second counters 55, 56. However, the base address Base Address at this time is that of the head image data HD. The numerical values M and N when the position of the pixel data to be transferred is represented by M rows and N columns in the head image data HD are given M (= RP) as the count value of the first counter 55, and the second counter N (= LP) is given as a count value of 56.

演算部60bは、第4カウンター58が「1」のときに、第1及び第2カウンター55,56が計数しているデータポジションRP(=N),LP(=M)のN,Mを用いて、書込みアドレスADwriteを演算する。ここで、第4カウンター58が「1」のときとは、1回のバースト転送の対象となる4画素分(バーストサイズBS)のデータにおける先頭画素のポジションを指すときであり、このときのN,Mを用いることにより、ブロック毎に4回行うバースト転送の各回の書込みアドレスADwriteを算出できる。なお、前記(3)式が第1のアドレス生成演算式に相当し、前記(4)式が第2のアドレス生成演算式に相当する。   The arithmetic unit 60b uses N and M of the data positions RP (= N) and LP (= M) counted by the first and second counters 55 and 56 when the fourth counter 58 is “1”. The write address ADwrite is calculated. Here, the time when the fourth counter 58 is “1” means that the position of the first pixel in the data of four pixels (burst size BS) to be subjected to one burst transfer is indicated. , M can be used to calculate the write address ADwrite for each burst transfer performed four times for each block. The expression (3) corresponds to the first address generation arithmetic expression, and the expression (4) corresponds to the second address generation arithmetic expression.

次に回転ユニット50における縦横変換処理(回転処理)について説明する。なお、以下の説明において、ブロックのデータDf,Dr,Dcを特に区別しない場合は、単にデータDという場合がある。回転ユニット50は、DRAM35(詳しくは第1バッファー35a)に格納された印刷イメージデータPDを4×4画素分のデータずつ回転ユニット50へ転送しつつ、転送されてきたデータに回転処理を施し、回転処理後のデータをDRAM35(詳しくは第2バッファー35b)に順次転送して書き込む。   Next, the vertical / horizontal conversion process (rotation process) in the rotation unit 50 will be described. In the following description, if the block data Df, Dr, and Dc are not particularly distinguished, they may be simply referred to as data D. The rotation unit 50 performs rotation processing on the transferred data while transferring the print image data PD stored in the DRAM 35 (specifically, the first buffer 35a) to the rotation unit 50 by 4 × 4 pixel data. The data after the rotation processing is sequentially transferred and written to the DRAM 35 (specifically, the second buffer 35b).

このとき、回転ユニット50の転送指示部61が、メモリーコントローラー34に対して第1アドレス生成部59が生成した読出しアドレスADreadを指定してリードリクエストを行う。その結果、印刷イメージデータPDを構成する4×4画素の正方ブロックのデータDが、バーストサイズBS(4画素データ)ずつの4回のバースト転送により転送される。そして、DRAM35に図6(a)に示すように格納された印刷イメージデータPDは、図6(a)に太数字で示したブロックのデータDの順番で読み出されて回転ユニット50へバースト転送される。回転ユニット50は、4×4画素のブロックずつ転送されてくるデータDに回転処理(縦横変換処理)を施す。   At this time, the transfer instruction unit 61 of the rotation unit 50 makes a read request to the memory controller 34 by specifying the read address ADread generated by the first address generation unit 59. As a result, the square block data D of 4 × 4 pixels constituting the print image data PD is transferred by four burst transfers of each burst size BS (4 pixel data). Then, the print image data PD stored in the DRAM 35 as shown in FIG. 6A is read in the order of the block data D indicated by bold numbers in FIG. Is done. The rotation unit 50 performs rotation processing (vertical / horizontal conversion processing) on the data D transferred for each block of 4 × 4 pixels.

図9は、回転ユニットによるデータの回転処理を説明する模式図である。図9において左側が回転前のデータ、右側が回転後のデータを示す。また、図9では各データを上から順番に転送順で示している。なお、左側のデータの左上に示す<>内の数字は、図6に太線枠で示すブロックに付された太数字に対応している。   FIG. 9 is a schematic diagram for explaining data rotation processing by the rotation unit. In FIG. 9, the left side shows data before rotation, and the right side shows data after rotation. Further, in FIG. 9, each data is shown in order of transfer from the top. Note that the numbers in <> shown at the upper left of the left data correspond to the thick numbers attached to the blocks indicated by the thick line frames in FIG. 6.

データの回転処理は、図4に示す回転処理部52が行う。回転前のデータDは、一旦データレジスター63に蓄積されてからSRAM70に格納される。
このとき、回転制御部62は、バーストサイズBSずつ4回で転送されてくる4画素データ(以下、「バーストデータ」ともいう)を、SRAM70の1行目〜4行目に順番に格納する。回転制御部62は、SRAM70からデータDを読み込みつつ回転処理を施して回転後のデータを再びSRAM70に書き込む。この回転処理は例えば行方向に読み出した画素データを列方向に書き込むことにより行われる。この回転処理の結果、図9で左側に示す回転前のデータDは、図9で右側に示すデータDのように縦横変換される。
The rotation processing of the data is performed by the rotation processing unit 52 shown in FIG. Data D before rotation is temporarily stored in the data register 63 and then stored in the SRAM 70.
At this time, the rotation control unit 62 sequentially stores the four pixel data (hereinafter also referred to as “burst data”) transferred in four burst sizes BS in the first to fourth rows of the SRAM 70. The rotation control unit 62 performs the rotation process while reading the data D from the SRAM 70 and writes the rotated data in the SRAM 70 again. This rotation processing is performed, for example, by writing pixel data read in the row direction in the column direction. As a result of this rotation processing, the pre-rotation data D shown on the left side in FIG. 9 is vertically and horizontally converted as data D shown on the right side in FIG.

ここで、図6(a)における太数字「1」及び「2」の満データDfは、そのときのM,Nを用いて前記(1)式の演算式に基づき算出された読出しアドレスADreadから順次読出されて4回で転送されてきたバーストデータが、図9左側のSRAM70の1行目〜4行目に順次格納されることで、図9左側のように格納される。そして、図9左側の<1>及び<2>の満データDfに回転処理が順次施されて、図9右側に示す回転後のデータDfが生成される。   Here, the full data Df of the bold numbers “1” and “2” in FIG. 6A is obtained from the read address ADread calculated based on the arithmetic expression of the above expression (1) using M and N at that time. The burst data sequentially read and transferred four times are sequentially stored in the first to fourth rows of the SRAM 70 on the left side of FIG. 9, thereby being stored as shown on the left side of FIG. Then, the rotation processing is sequentially performed on the full data Df of <1> and <2> on the left side of FIG. 9, and the rotated data Df shown on the right side of FIG. 9 is generated.

次に、図6に網掛けで示す太数字「3」の行余りデータDrは、列余りデータDcの末尾に続けて満データ配列幅(バーストラスターサイズBR)内に格納されている。このとき、第1アドレス生成部59は、図7における画素1-9のときのM,Nを用いて前記(2)式に基づき、図6(a)における画素1-9を含むバーストデータの読出しアドレスADreadを算出する。この結果、図6(a)における太数字「3」のブロックのうち画素1-9を先頭とする4画素分のバーストデータが図9左側のSRAM70の1行目に格納される。次に第1アドレス生成部59は、図7における画素2-9のときのM,Nを用いて前記(2)式に基づき、図6(a)における画素2-9を含むバーストデータの読出しアドレスADreadを算出する。この結果、図6(a)における太数字「3」のブロックのうち画素2-9を先頭とする4画素分のバーストデータが図9左側のSRAM70の2行目に格納される。以下、同様に、図6(a)における太数字「3」のブロックのうち画素3-9を先頭とする4画素分のバーストデータが図9左側のSRAM70の3行目に格納され、最後に図6(a)における太数字「3」のブロックのうち画素4-9を先頭とする4画素分のバーストデータが図9左側のSRAM70の4行目に格納される。このため、図9左側の<3>における空白の領域には、実際にはバーストデータ中の後側2画素分の不要データが格納されている。そして、この<3>の行余りデータDrに回転処理が施されて、図9右側に示す回転後のデータDcが生成される。   Next, the row remainder data Dr indicated by the bold numeral “3” shown by shading in FIG. 6 is stored in the full data array width (burst raster size BR) following the end of the column remainder data Dc. At this time, the first address generation unit 59 uses the M and N at the time of the pixel 1-9 in FIG. 7 and the burst data including the pixel 1-9 in FIG. A read address ADread is calculated. As a result, burst data for four pixels starting from pixel 1-9 in the block of bold numeral “3” in FIG. 6A is stored in the first row of the SRAM 70 on the left side of FIG. Next, the first address generation unit 59 reads out burst data including the pixel 2-9 in FIG. 6A based on the equation (2) using M and N at the pixel 2-9 in FIG. The address ADread is calculated. As a result, burst data for four pixels starting from pixel 2-9 in the block of bold number “3” in FIG. 6A is stored in the second row of the SRAM 70 on the left side of FIG. Similarly, burst data for four pixels starting from pixel 3-9 in the block of bold numeral “3” in FIG. 6A is stored in the third row of the SRAM 70 on the left side of FIG. Burst data for four pixels starting from pixel 4-9 in the block of bold number “3” in FIG. 6A is stored in the fourth row of the SRAM 70 on the left side of FIG. Therefore, in the blank area in <3> on the left side of FIG. 9, unnecessary data for the rear two pixels in the burst data is actually stored. Then, the rotation processing is performed on the <3> margin data Dr, and the rotated data Dc shown on the right side of FIG. 9 is generated.

同様に列余りデータ<4>及び<5>についても、図9左側に示す配列でSRAM70に格納される。図9左側の<4>、<5>における空白の領域の少なくとも一部には、実際には一緒にバースト転送されてきた不要データが格納されている。そして、<4>及び<5>の列余りデータDcに回転処理が施されて、図9右側に示す回転後のデータDrが生成される。   Similarly, the column remainder data <4> and <5> are also stored in the SRAM 70 in the arrangement shown on the left side of FIG. Unnecessary data that has actually been burst transferred together is stored in at least a part of the blank areas in <4> and <5> on the left side of FIG. Then, the column remainder data Dc of <4> and <5> is subjected to the rotation process, and the rotated data Dr shown on the right side of FIG. 9 is generated.

次に、図6に網掛けで示す太数字「6」の行余りデータDrは、満データ配列幅(バーストラスターサイズBR)内に格納されている。このとき、第1アドレス生成部59は、図7における画素5-9のときのM,Nを用いて前記(2)式に基づき、図6(a)における画素5-9を含むバーストデータの読出しアドレスADreadを算出する。この結果、図6(a)における太数字「6」のブロックのうち画素5-9を先頭とする4画素分のバーストデータが図9左側のSRAM70の1行目に格納される。次に第1アドレス生成部59は、図7における画素6-9のときのM,Nを用いて前記(2)式に基づき、図6(a)における画素6-9を含むバーストデータの読出しアドレスADreadを算出する。この結果、図6(a)における太数字「6」のブロックのうち画素6-9を先頭とする4画素分のバーストデータが図9左側のSRAM70の2行目に格納される。このとき、印刷イメージデータPDの全画素のカウント処理が終わり、データポジションRP,LPがRP=RかつLP=Lになるので、印刷イメージデータPDの転送を終了する。図9左側の<6>における空白の領域の一部には、実際にはバーストデータ中の後側2画素分の不要データが格納されている。そして、この<6>の行余りデータDrに回転処理が施されて、図9の右側に示す回転後のデータDrが生成される。   Next, the surplus data Dr indicated by the bold numeral “6” shown by hatching in FIG. 6 is stored in the full data array width (burst raster size BR). At this time, the first address generation unit 59 uses the M and N of the pixel 5-9 in FIG. 7 and the burst data including the pixel 5-9 in FIG. A read address ADread is calculated. As a result, burst data for four pixels starting from pixel 5-9 in the block of bold number “6” in FIG. 6A is stored in the first row of the SRAM 70 on the left side of FIG. Next, the first address generator 59 reads out burst data including the pixel 6-9 in FIG. 6A based on the equation (2) using M and N at the time of the pixel 6-9 in FIG. The address ADread is calculated. As a result, burst data for four pixels starting from pixel 6-9 in the block of bold number “6” in FIG. 6A is stored in the second row of the SRAM 70 on the left side of FIG. At this time, the count processing of all the pixels of the print image data PD is completed, and the data positions RP and LP become RP = R and LP = L, so the transfer of the print image data PD is finished. In part of the blank area in <6> on the left side of FIG. 9, unnecessary data for the rear two pixels in the burst data is actually stored. Then, rotation processing is performed on the <6> margin data Dr, and the rotated data Dr shown on the right side of FIG. 9 is generated.

このように順次転送されてくるデータDに1つずつ順番に回転処理が施され、回転後のデータを第2アドレス生成部60が生成した書込みアドレスADwriteを指定してメモリーコントローラー34にライトリクエストを行うことにより順次DRAM35に転送する。この結果、回転後のデータDは、図6(b)に太数字で示す配列で格納される。   In this way, the data D sequentially transferred is subjected to rotation processing one by one, and the write data ADwrite generated by the second address generation unit 60 is designated for the rotated data and a write request is sent to the memory controller 34. As a result, the data is sequentially transferred to the DRAM 35. As a result, the rotated data D is stored in an array indicated by bold numerals in FIG.

ここで、回転後のデータDをSRAM70からDRAM35へ転送する場合は、図8に破線枠で囲まれた太数字「4」、「5」、「6」のブロックが、書込み先のDRAM35(出力バッファー35c)において行余りデータDrになる(図9右側の<4>〜<6>のブロックを参照)。また、図8に太線枠で囲まれた太数字「3」のブロックが、書込み先のDRAM35(出力バッファー35c)において列余りデータDcになる(図9右側の<3>のブロックを参照)。   Here, when the rotated data D is transferred from the SRAM 70 to the DRAM 35, the blocks of bold numbers “4”, “5”, “6” surrounded by a broken line frame in FIG. In the buffer 35c), the margin data Dr is obtained (see the blocks <4> to <6> on the right side of FIG. 9). Further, the block of bold number “3” surrounded by a thick frame in FIG. 8 becomes the column remainder data Dc in the write destination DRAM 35 (output buffer 35c) (see the block <3> on the right side of FIG. 9).

ここで、図9右側に示す回転後の<1>及び<2>の満データDfは、そのときのM,Nを用いて前記(3)式の演算式に基づき算出された書込みアドレスADwriteを指定してバーストデータずつ読出されてDRAM35へ転送されることで、図6(b)に示す太数字「1」及び「2」のブロックに順次格納される。   Here, the full data Df of <1> and <2> after the rotation shown on the right side of FIG. 9 uses the write address ADwrite calculated based on the arithmetic expression of the above expression (3) using M and N at that time. Designated burst data is read out and transferred to the DRAM 35 to be sequentially stored in blocks of bold numbers “1” and “2” shown in FIG.

次に、図9右側に網掛けで示す<3>の列余りデータDcは、そのときのM,Nを用いて前記(3)式の演算式に基づき算出された書込みアドレスADwriteを指定してバーストデータずつ読み出されてDRAM35へ転送されることで、図6(b)に示す太数字「3」のブロックに格納される。この時点では、一緒に転送された不要データが太数字「3」のブロック下側(太数字「4」)の領域に格納される。   Next, <3> column remainder data Dc indicated by shading on the right side of FIG. 9 designates the write address ADwrite calculated based on the equation (3) using M and N at that time. Each burst data is read out and transferred to the DRAM 35, and stored in the block of bold numerals “3” shown in FIG. At this time, the unnecessary data transferred together is stored in the area below the block of the bold numeral “3” (bold numeral “4”).

次に、図9右側に示す<4>、<5>の行余りデータDrは、そのときのM,Nを用いて前記(4)式の演算式に基づき算出された書込みアドレスADwriteを指定してバーストデータずつ読み出されてDRAM35へ転送されることで、図6(b)に示す太数字「4」、「5」のブロックに格納される。このとき、図6(b)における<4>のブロックは、「3」の転送時に書き込まれた不要データに上書きされる。   Next, the remainder data Dr of <4> and <5> shown on the right side of FIG. 9 designates the write address ADwrite calculated based on the equation (4) using M and N at that time. As a result, the burst data is read out and transferred to the DRAM 35, and stored in the blocks of bold numbers "4" and "5" shown in FIG. At this time, the block <4> in FIG. 6B is overwritten with the unnecessary data written during the transfer of “3”.

また、このとき、図6(b)における太数字「4」のブロックのうち画素5-1を先頭とする4画素分のバーストデータがまず格納され、次に画素5-2を先頭とする4画素分のバーストデータが格納されて画素5-2、6-2が不要データに上書きされ、以下同様に画素5-3を先頭とする4画素分のバーストデータ、画素5-4を先頭とする4画素分のバーストデータ順次格納される。図6(b)における太数字「5」のブロックも、同様に4画素ずつ4回書き込まれる。このため、図6(b)のブロック「4」、「5」の右側に1行当たり2画素分の不要データ(ダミーデータ)が発生する。   At this time, burst data for four pixels starting from the pixel 5-1 in the block of the bold numeral “4” in FIG. 6B is stored first, and then 4 starting from the pixel 5-2. The burst data for the pixels is stored, and the pixels 5-2 and 6-2 are overwritten with the unnecessary data. Similarly, the burst data for the four pixels starting with the pixel 5-3 and the pixel 5-4 starting at the same time. Burst data for 4 pixels is sequentially stored. Similarly, the block indicated by the bold numeral “5” in FIG. 6B is written four times for each four pixels. Therefore, unnecessary data (dummy data) for two pixels per row is generated on the right side of the blocks “4” and “5” in FIG.

そして、図9右側に示す<6>の行余りデータDrは、そのときのM,Nを用いて前記(4)式の演算式に基づき算出された書込みアドレスADwriteを指定してバーストデータずつ読み出されてDRAM35へ転送されることで、図6(b)に示す太数字「6」のブロックに格納される。このとき、4画素ずつ2回書き込まれる。このため、図6(b)のブロック「6」の右側に2画素分の不要データ(ダミーデータ)が発生する(ダミーデータは合計10個)。もちろん、ブロック「6」についても、転送条件を統一し、4画素(バーストデータ)ずつ4回転送する構成としてもよく、この場合、ブロック「6」の下側に6画素分(6・Bバイト)のダミーデータが発生する(ダミーデータは合計16個)。   Then, the <6> margin data Dr shown on the right side of FIG. 9 is read in burst data by designating the write address ADwrite calculated based on the equation (4) using M and N at that time. By being outputted and transferred to the DRAM 35, it is stored in the block of the bold numeral “6” shown in FIG. At this time, four pixels are written twice. Therefore, unnecessary data (dummy data) for two pixels is generated on the right side of the block “6” in FIG. 6B (a total of 10 dummy data). Of course, the block “6” may be configured to unify the transfer conditions and transfer four pixels (burst data) four times, and in this case, six pixels (6 · B bytes) below the block “6”. ) Dummy data is generated (a total of 16 dummy data).

こうしてヘッドイメージデータHDは、図8に破線で示す領域の行余りデータが、図6に示すように満データ配列幅(バーストラインサイズBL)内に収まるように格納される。   In this way, the head image data HD is stored so that the surplus data in the area indicated by the broken line in FIG. 8 fits within the full data array width (burst line size BL) as shown in FIG.

以上詳述したように、本実施形態では、以下に示す効果を得ることができる。
(1)DRAM35に印刷イメージデータPDを格納する場合、行方向(ライン方向)に転送単位である4×4画素に満たない行余りデータDrを、列余りデータDcの末尾(満データ配列幅内のデータの末尾)に続けて満データ配列幅(バーストラスターサイズBR)内に収まるように格納する構成である。よって、バースト転送を効率よく行うために格納すべきダミーデータを抑制でき、印刷イメージデータPDの格納に必要なDRAM35の使用容量を低減できる。従って、DRAM35の使用容量を節約でき、他のデータの格納に使用可能な格納領域を増やすことができる。よって、印刷イメージデータPDをDRAM35から回転ユニット50へ処理単位(4×4画素の正方領域)ずつバースト転送する際の転送速度をさほど落とさず、DRAM35における印刷イメージデータPDの使用格納領域を少なく抑えることができる。
As described above in detail, in the present embodiment, the following effects can be obtained.
(1) When storing the print image data PD in the DRAM 35, the line remainder data Dr that is less than 4 × 4 pixels as the transfer unit in the row direction (line direction) is replaced with the end of the column remainder data Dc (within the full data array width). The data is stored so as to fit within the full data array width (burst raster size BR) following the end of the data. Therefore, dummy data to be stored for efficient burst transfer can be suppressed, and the used capacity of the DRAM 35 necessary for storing the print image data PD can be reduced. Therefore, the used capacity of the DRAM 35 can be saved, and the storage area usable for storing other data can be increased. Accordingly, the transfer storage speed when burst transfer of the print image data PD from the DRAM 35 to the rotation unit 50 in units of processing units (square area of 4 × 4 pixels) is not reduced so much, and the use storage area of the print image data PD in the DRAM 35 is reduced. be able to.

(2)DRAM35にヘッドイメージデータHDを格納する場合、行方向(ラスター方向)に転送単位である4×4画素に満たない行余りデータDrを、列余りデータDcの末尾(満データ配列幅内のデータの末尾)に続けて満データ配列幅(バーストラインサイズBL)内に収まるように格納する構成である。よって、バースト転送を効率よく行うために格納すべきダミーデータを抑制できる。この結果、ヘッドイメージデータHDの格納に必要なDRAM35の使用容量を低減できる。従って、DRAM35の使用容量を節約でき、他のデータの格納に使用可能な格納領域を増やすことができる。よって、回転処理後のデータDを回転ユニット50からDRAM35へ処理単位(4×4画素の正方領域)ずつバースト転送する際の転送速度をさほど落とさず、DRAM35におけるヘッドイメージデータHDの使用格納領域を少なく抑えることができる。   (2) When the head image data HD is stored in the DRAM 35, the row remainder data Dr that is less than 4 × 4 pixels as the transfer unit in the row direction (raster direction) is replaced with the end of the column remainder data Dc (within the full data array width). The data is stored so as to fit within the full data array width (burst line size BL) following the end of the data. Therefore, it is possible to suppress dummy data to be stored in order to efficiently perform burst transfer. As a result, the used capacity of the DRAM 35 necessary for storing the head image data HD can be reduced. Therefore, the used capacity of the DRAM 35 can be saved, and the storage area usable for storing other data can be increased. Therefore, the use storage area of the head image data HD in the DRAM 35 is not reduced so much as the transfer speed at the time of burst transfer of the data D after the rotation process from the rotation unit 50 to the DRAM 35 in units of processing (square area of 4 × 4 pixels). It can be kept low.

(3)図6(a)に示すデータ格納構造を採用しても、第1アドレス生成部59が印刷イメージデータPDを構成するデータDをDRAM35から元の配列順(画像自体の配列順)に読み出し可能なアドレスADreadを生成する。よって、印刷イメージデータPDを構成するデータDをDRAM35から適切な順番で回転ユニット50へ転送できる。   (3) Even if the data storage structure shown in FIG. 6A is adopted, the first address generator 59 transfers the data D constituting the print image data PD from the DRAM 35 in the original arrangement order (the arrangement order of the images themselves). A readable address ADread is generated. Therefore, the data D constituting the print image data PD can be transferred from the DRAM 35 to the rotation unit 50 in an appropriate order.

(4)回転処理後のデータDをDRAM35へ転送する際に、第2アドレス生成部60が生成した書込みアドレスADwriteを指定するので、行余りデータDrを満データ配列幅内に収まるように図6(b)に示すアラインしたデータ格納構造でヘッドイメージデータHDを格納できる。   (4) Since the write address ADwrite generated by the second address generation unit 60 is specified when transferring the data D after the rotation processing to the DRAM 35, the remainder data Dr is set within the full data array width as shown in FIG. The head image data HD can be stored with the aligned data storage structure shown in FIG.

(5)第1アドレス生成部59は、データポジションRPがBR以下(RP≦BR)であるか否かを判定した判定結果に応じて、使用すべき読出しアドレスADread生成用の演算式を(1)式と(2)式の間で切り替える。よって、印刷イメージデータPDが図6(a)に示すデータ格納構造で格納されていても、適切な読出しアドレスADreadを生成できる。   (5) The first address generation unit 59 sets an arithmetic expression for generating the read address ADread to be used according to the determination result of determining whether the data position RP is equal to or less than BR (RP ≦ BR) (1 ) And (2). Therefore, even if the print image data PD is stored in the data storage structure shown in FIG. 6A, an appropriate read address ADread can be generated.

(6)第2アドレス生成部60は、データポジションLPがBL以下(LP≦BL)であるか否かを判定した判定結果に応じて、使用すべきアドレスADwrite生成用の演算式を(3)式と(4)式の間で切り替える。よって、適切な書込みアドレスADwriteを生成して、ヘッドイメージデータHDを図6(b)に示すデータ格納構造で格納できる。   (6) The second address generation unit 60 sets an arithmetic expression for generating the address ADwrite to be used according to the determination result of determining whether the data position LP is equal to or less than BL (LP ≦ BL) (3) Switch between equation and equation (4). Therefore, it is possible to generate an appropriate write address ADwrite and store the head image data HD with the data storage structure shown in FIG.

(7)印刷イメージデータPDのデータ格納構造をコンパクトにでき、かつ回転処理後のヘッドイメージデータHDのデータ格納構造をコンパクトにできるので、DRAM35において回転処理の前後で使用される格納領域をかなり低減できる。   (7) Since the data storage structure of the print image data PD can be made compact and the data storage structure of the head image data HD after the rotation process can be made compact, the storage area used in the DRAM 35 before and after the rotation process is considerably reduced. it can.

(8)行余りデータDrが満データ配列範囲(バーストラスターサイズBR)内に収まるデータ配列でDRAM35に印刷イメージデータPDを格納したので、DRAM35から回転ユニット50へのデータのバースト転送を高速に行うことができる。従って、バースト転送速度をできるだけ落とさず、DRAM35における印刷イメージデータPDの使用格納領域を効果的に低減できる。   (8) Since the print image data PD is stored in the DRAM 35 in a data array in which the margin data Dr is within the full data array range (burst raster size BR), burst transfer of data from the DRAM 35 to the rotation unit 50 is performed at high speed. be able to. Accordingly, it is possible to effectively reduce the use storage area of the print image data PD in the DRAM 35 without reducing the burst transfer rate as much as possible.

(9)処理後のデータをDRAM35に転送する場合、画像データの画像自体の元々の順番で、ブロック「1」、「2」、「3」、「4」、「5」、「6」の順に転送してDRAM35に格納するので、前のブロックの転送時に書き込まれた不要データを、後から転送された後続のブロックで上書きできる。   (9) When the processed data is transferred to the DRAM 35, the blocks “1”, “2”, “3”, “4”, “5”, “6” in the original order of the image of the image data itself. Since the data is sequentially transferred and stored in the DRAM 35, unnecessary data written at the time of transferring the previous block can be overwritten by the subsequent block transferred later.

(10)行余りデータDrが満データ配列範囲(バーストラインサイズBL)内に収まるデータ配列でDRAM35にヘッドイメージデータHDを格納したので、回転ユニット50からDRAM35への回転処理後のデータDのバースト転送を高速に行うことができる。従って、バースト転送速度をできるだけ落とさず、DRAM35におけるヘッドイメージデータHDの使用格納領域を効果的に低減できる。   (10) Since the head image data HD is stored in the DRAM 35 in a data array in which the extra data Dr falls within the full data array range (burst line size BL), the burst of the data D after the rotation processing from the rotation unit 50 to the DRAM 35 Transfer can be performed at high speed. Therefore, it is possible to effectively reduce the use storage area of the head image data HD in the DRAM 35 without reducing the burst transfer rate as much as possible.

(11)搬送モーター28の駆動により搬送される用紙に印刷ヘッド29がインク滴を噴射して画像を形成するプリンター部14を有する複合機11に画像処理装置を設けたので、複合機11においてデータ転送速度の低減を抑えつつ、DRAM35の格納領域を有効活用できる。   (11) Since the image processing apparatus is provided in the multi-function device 11 having the printer unit 14 in which the print head 29 ejects ink droplets onto the paper conveyed by driving the conveyance motor 28 to form an image, the data in the multi-function device 11 The storage area of the DRAM 35 can be effectively used while suppressing a reduction in transfer speed.

なお、上記実施形態は以下の形態に変更することもできる。
・処理手段は、回転手段に限定されず、他の処理を行ってもよい。処理手段は、例えば画像処理を行ってもよい。画像処理としては、例えば解像度変換処理、色変換処理、ハーフトーン処理、インターレース処理(マイクロウィーブ処理)等が挙げられる。その他、処理は、圧縮処理や解凍処理でもよい。要するに、画像データを設定サイズずつ処理手段に転送し、処理手段がその転送された設定サイズずつのデータに順次処理を施す構成であれば、処理の種類は特に限定されない。
In addition, the said embodiment can also be changed into the following forms.
-A processing means is not limited to a rotation means, You may perform another process. The processing means may perform image processing, for example. Examples of the image processing include resolution conversion processing, color conversion processing, halftone processing, interlace processing (microweave processing), and the like. In addition, the processing may be compression processing or decompression processing. In short, the type of processing is not particularly limited as long as the image data is transferred to the processing unit for each set size and the processing unit sequentially processes the transferred data for each set size.

・転送単位(処理単位)は、4×4画素に限定されず、例えば8×8画素、16×16画素、64×64画素の単位でもよい。また、転送単位は、K×K画素の正方ブロックに限定されず、K×J画素(K≠J)の矩形ブロックでもよい。すなわち、処理回路(処理手段)における処理単位に合わせた適宜な転送単位を設定できる。   The transfer unit (processing unit) is not limited to 4 × 4 pixels, and may be a unit of 8 × 8 pixels, 16 × 16 pixels, or 64 × 64 pixels, for example. The transfer unit is not limited to a square block of K × K pixels, but may be a rectangular block of K × J pixels (K ≠ J). That is, an appropriate transfer unit can be set in accordance with the processing unit in the processing circuit (processing means).

・アドレスの生成に使用するカウンターは2つでもよい。例えば第3及び第4カウンター57,58を廃止し、第1及び第2カウンター55,56の計数値を用いてアドレスを算出する。この場合、第1カウンター55の計数値RPが、「1」、「5」、「9」、…(RP=4・(Y−1)+1)のときに、そのときのRP(=M),LP(=N)を用いて読出しアドレスADreadを演算する。また、第2カウンター56の計数値LPが、「1」、「5」、「9」、…(LP=4・(X−1)+1)のときに、そのときのRP(=M),LP(=N)を用いて書込みアドレスADwriteを演算する構成を採用すればよい。   -Two counters may be used for address generation. For example, the third and fourth counters 57 and 58 are eliminated, and the address is calculated using the count values of the first and second counters 55 and 56. In this case, when the count value RP of the first counter 55 is “1”, “5”, “9”,... (RP = 4 · (Y−1) +1), RP (= M) at that time , LP (= N) is used to calculate the read address ADread. When the count value LP of the second counter 56 is “1”, “5”, “9”,... (LP = 4 · (X−1) +1), RP (= M), A configuration in which the write address ADwrite is calculated using LP (= N) may be employed.

・転送手段の一例であるDMAコントローラー51は、回転ユニット50の外側に独立した回路として設けられていてもよい。また、転送手段の転送方式はバースト転送方式に限定されない。他の転送方式も採用できる。   The DMA controller 51, which is an example of a transfer unit, may be provided as an independent circuit outside the rotation unit 50. Further, the transfer method of the transfer means is not limited to the burst transfer method. Other transfer methods can also be adopted.

・前記実施形態では、印刷イメージデータPDの格納と、ヘッドイメージデータHDの格納との両方の格納に、本発明のデータ格納構造を採用したが、これら両者のうち一方のみに本発明のデータ格納構造を採用してもよい。例えば図6(a)に示すデータ格納構造でDRAMに格納された印刷イメージデータPDから、前記(1)式又は(2)式を用いて算出した読出しアドレスADreadを指定して読出したデータを、回転処理後に、図10(b)に示すように格納する構成でもよい。この場合、DRAM35における中間バッファー35bの使用格納領域を抑制できる。また、例えば図10(a)に示すデータ格納構造でDRAMに格納された印刷イメージデータから読出したデータを、前記(3)式又は(4)式を用いて算出した書込みアドレスADwriteを指定して図6(b)に示すように格納する構成でもよい。この場合、DRAM35における出力バッファー35cの使用格納領域を抑制できる。   In the above-described embodiment, the data storage structure of the present invention is used for storing both the print image data PD and the head image data HD. However, the data storage of the present invention is stored in only one of the two. A structure may be adopted. For example, the data read by designating the read address ADread calculated using the equation (1) or (2) from the print image data PD stored in the DRAM with the data storage structure shown in FIG. After the rotation process, the storage may be performed as shown in FIG. In this case, the use storage area of the intermediate buffer 35b in the DRAM 35 can be suppressed. Further, for example, the data read from the print image data stored in the DRAM with the data storage structure shown in FIG. 10A is designated by the write address ADwrite calculated using the equation (3) or (4). A configuration of storing as shown in FIG. In this case, the use storage area of the output buffer 35c in the DRAM 35 can be suppressed.

・アドレス生成方法(判定部の判定内容・演算部の演算内容等)は、適宜変更してもよい。要するに、目的のアドレスを生成できる方法であれば、他の演算式を用いた演算によりアドレスを生成してもよい。   The address generation method (determination content of the determination unit, calculation content of the arithmetic unit, etc.) may be changed as appropriate. In short, as long as the method can generate the target address, the address may be generated by an operation using another arithmetic expression.

・印刷イメージデータPDとヘッドイメージデータHDは同じDRAMに格納することに限定されず、異なるDRAMに格納する構成としてもよい。
・回転ユニット50は、ハードウェアの構成に限定されず、その一部にソフトウェアの部分を含みハードウェアとソフトウェアとの協働により構成されてもよい。さらには処理速度が多少低下するが、ソフトウェアにより構成されもよい。
The print image data PD and the head image data HD are not limited to being stored in the same DRAM, and may be stored in different DRAMs.
The rotation unit 50 is not limited to a hardware configuration, and may include a software portion as a part thereof and may be configured by cooperation of hardware and software. Furthermore, although the processing speed is somewhat reduced, it may be configured by software.

・前記各実施形態では、インクジェット式のプリンター部14が採用されているが、インク以外の他の流体を噴射したり吐出したりする流体噴射装置を採用してもよい。また、微小量の液滴を吐出させる液体噴射ヘッド等を備える各種の液体噴射装置に流用可能である。この場合、液滴とは、上記液体噴射装置から吐出される液体の状態を言い、粒状、涙状、糸状に尾を引くものも含むものとする。また、ここでいう液体とは、液体噴射装置が噴射させることができるような材料であればよい。例えば、物質が液相であるときの状態のものであればよく、粘性の高い又は低い液状体、ゾル、ゲル水、その他の無機溶剤、有機溶剤、溶液、液状樹脂、液状金属(金属融液)のような流状体、また物質の一状態としての液体のみならず、顔料や金属粒子などの固形物からなる機能材料の粒子が溶媒に溶解、分散または混合されたものなどを含む。また、液体の代表的な例としては上記実施形態で説明したようなインクや液晶等が挙げられる。ここで、インクとは一般的な水性インクおよび油性インク並びにジェルインク、ホットメルトインク等の各種液体組成物を包含するものとする。液体噴射装置の具体例としては、例えば液晶ディスプレイ、EL(エレクトロルミネッセンス)ディスプレイ、面発光ディスプレイ、カラーフィルタの製造などに用いられる電極材や色材などの材料を分散または溶解のかたちで含む液体を噴射する液体噴射装置を挙げることができる。また、バイオチップ製造に用いられる生体有機物を噴射する液体噴射装置、精密ピペットとして用いられ試料となる液体を噴射する液体噴射装置、捺染装置やマイクロディスペンサ等であってもよい。さらに、時計やカメラ等の精密機械にピンポイントで潤滑油を噴射する液体噴射装置、光通信素子等に用いられる微小半球レンズ(光学レンズ)などを形成するために紫外線硬化樹脂等の透明樹脂液を基板上に噴射する液体噴射装置、基板などをエッチングするために酸又はアルカリ等のエッチング液を噴射する液体噴射装置を採用してもよい。そして、これらのうちいずれか一種の液体噴射装置に本発明を適用することができる。また、流体は、トナーなどの粉粒体でもよい。なお、本明細書でいう流体には、気体のみからなるものは含まないものとする。   In each of the above embodiments, the ink jet printer unit 14 is employed, but a fluid ejecting apparatus that ejects or ejects fluid other than ink may be employed. Further, the present invention can be used for various liquid ejecting apparatuses including a liquid ejecting head that ejects a minute amount of liquid droplets. In this case, the droplet refers to the state of the liquid ejected from the liquid ejecting apparatus, and includes liquid droplets having a granular shape, a tear shape, and a thread shape. The liquid here may be any material that can be ejected by the liquid ejecting apparatus. For example, it may be in a state in which the substance is in a liquid phase, such as a liquid with high or low viscosity, sol, gel water, other inorganic solvents, organic solvents, solutions, liquid resins, liquid metals (metal melts ) And liquids as one state of the substance, as well as those obtained by dissolving, dispersing or mixing particles of a functional material made of solid materials such as pigments and metal particles in a solvent. Further, representative examples of the liquid include ink and liquid crystal as described in the above embodiment. Here, the ink includes general water-based inks and oil-based inks, and various liquid compositions such as gel inks and hot-melt inks. As a specific example of the liquid ejecting apparatus, for example, a liquid containing a material such as an electrode material or a coloring material used for manufacturing a liquid crystal display, an EL (electroluminescence) display, a surface emitting display, a color filter, or the like in a dispersed or dissolved state. A liquid ejecting apparatus for ejecting can be given. Further, it may be a liquid ejecting apparatus that ejects a bio-organic matter used for biochip manufacture, a liquid ejecting apparatus that ejects a liquid as a sample that is used as a precision pipette, a printing apparatus, a microdispenser, or the like. In addition, transparent resin liquids such as UV curable resin to form liquid injection devices that pinpoint lubricant oil onto precision machines such as watches and cameras, and micro hemispherical lenses (optical lenses) used in optical communication elements. A liquid ejecting apparatus that ejects a liquid onto the substrate or a liquid ejecting apparatus that ejects an etching solution such as an acid or an alkali to etch the substrate may be employed. The present invention can be applied to any one of these liquid ejecting apparatuses. Further, the fluid may be a granular material such as toner. In addition, the fluid referred to in this specification does not include a fluid consisting only of a gas.

・また、前記各実施形態では、スキャナー機能を備えたカラーインクジェット式のプリンター部14が採用されているが、ワイヤインパクト式記録装置、熱転写式記録装置、電子写真式記録装置等の記録装置を採用してもよい。また、これらの記録装置は、モノクロ記録装置を採用しても良い。また、これらの記録装置は、スキャナー機能を備えない記録装置を採用してもよい。   In each of the above embodiments, the color ink jet printer unit 14 having a scanner function is employed, but a recording device such as a wire impact recording device, a thermal transfer recording device, or an electrophotographic recording device is employed. May be. Further, these recording apparatuses may adopt a monochrome recording apparatus. Further, these recording apparatuses may employ recording apparatuses that do not have a scanner function.

なお、前記実施形態及び変形例から把握される技術的思想を以下に記載する。
(イ)前記転送手段は、前記処理単位のデータの行方向サイズをバーストサイズとし、前記処理単位のデータをバーストサイズずつバースト転送する構成であり、前記行余りデータとは、前記画像データを前記処理単位のデータずつ区分した場合に、行方向に前記バーストサイズに満たないデータであることを特徴とする請求項1乃至6のうちいずれか一項に記載の画像データ処理装置。また、前記行余りデータが、上記(イ)と同様の構成であることを特徴とする請求項8又は9に記載の画像データ処理方法。
In addition, the technical idea grasped | ascertained from the said embodiment and modification is described below.
(A) The transfer means has a configuration in which the row direction size of the data of the processing unit is a burst size, and the data of the processing unit is burst transferred by the burst size, and the margin data is the image data The image data processing apparatus according to any one of claims 1 to 6, wherein the data is less than the burst size in a row direction when divided in units of processing units. The image data processing method according to claim 8 or 9, wherein the margin data has a configuration similar to that of (b).

11…記録装置の一例である流体噴射装置としての複合機、14…プリンター部、28…搬送手段の一例である搬送モーター、29…記録手段の一例である流体噴射ヘッドとしての印刷ヘッド、35…格納手段の一例としてのDRAM、35b…処理前の画像データを格納するための格納手段の一例である中間バッファー、35c…処理前の画像データを格納するための格納手段の一例である出力バッファー、50…回転ユニット、51…転送手段の一例としてのDMAコントローラー、52…処理手段及び回転処理手段の一例としての回転処理部、53…設定レジスター、54…シーケンサー、55…第1カウンター、56…第2カウンター、57…第3カウンター、58…第4カウンター、59…アドレス生成手段の一例である第1アドレス生成部、59a…判定手段としての判定部、59b…演算部、60…アドレス生成手段の一例である第2アドレス生成部、60a…判定手段としての判定部、60b…演算部、61…転送指示部、70…SRAM、PD…処理前の画像データの一例である印刷イメージデータ、HD…処理後の画像データの一例であるヘッドイメージデータ、Df…処理単位のデータとしての満データ、Dr…処理単位のデータとしての行余りデータ、Dc…処理単位のデータとしての列余りデータ、BS…バーストサイズ、ADread…アドレスとしての読出しアドレス、ADwrite…アドレスとしての書込みアドレス、P…媒体の一例である用紙。 DESCRIPTION OF SYMBOLS 11 ... Multifunction machine as a fluid ejecting apparatus which is an example of a recording apparatus, 14 ... Printer part, 28 ... Conveyance motor which is an example of a conveying means, 29 ... Print head as a fluid ejecting head which is an example of a recording means, 35 ... DRAM as an example of storage means, 35b... Intermediate buffer as an example of storage means for storing image data before processing, 35c... Output buffer as an example of storage means for storing image data before processing, DESCRIPTION OF SYMBOLS 50 ... Rotation unit, 51 ... DMA controller as an example of transfer means, 52 ... Rotation processing part as an example of processing means and rotation processing means, 53 ... Setting register, 54 ... Sequencer, 55 ... First counter, 56 ... First 2 counter, 57... Third counter, 58... 4th counter, 59. 59a ... a determination unit as a determination unit, 59b ... a calculation unit, 60 ... a second address generation unit as an example of an address generation unit, 60a ... a determination unit as a determination unit, 60b ... a calculation unit, 61 ... transfer Instructing unit 70... SRAM, PD... Print image data as an example of image data before processing, HD... Head image data as an example of image data after processing, Df... Full data as processing unit data, Dr. This is an example of line remainder data as processing unit data, Dc: column remainder data as processing unit data, BS: burst size, ADread: read address as address, ADwrite: write address as address, P: medium. Paper.

Claims (9)

画像データに処理を施す画像データ処理装置であって、
前記画像データを格納する格納手段と、
前記画像データに処理を施す処理手段と、
前記画像データを前記格納手段から前記処理手段へ処理単位のデータずつ転送する転送手段とを備え、
前記処理手段は、前記格納手段から前記処理単位ずつ転送されてくる前記データに順次処理を施す構成であり、
前記格納手段において、前記画像データは、1個が前記処理単位で満たされたX×Y個の満データがX行×Y列のマトリクス配列で格納されるとともに、行方向に前記処理単位に満たない行余りデータがある場合には、当該行余りデータが、満データY列配列幅内に配列されたデータの末尾に続けて前記満データY列配列幅内に収まるようにアラインして格納される構成であり、
前記転送手段は、前記格納手段から前記処理手段へ前記データを前記画像データにおける前記アライン前の元の順番で転送することを特徴とする画像データ処理装置。
An image data processing device for processing image data,
Storage means for storing the image data;
Processing means for processing the image data;
And transfer means for transferring the image data from the storage means to the processing means in units of processing units,
The processing means is configured to sequentially process the data transferred from the storage means for each processing unit.
In the storage means, X × Y full data, one of which is filled in the processing unit, is stored in a matrix arrangement of X rows × Y columns, and the processing unit is filled in the row direction. If there is no remaining data, the remaining data is aligned and stored so as to fit within the full data Y column array width following the end of the data arranged within the full data Y column array width. The configuration
The image data processing apparatus, wherein the transfer means transfers the data from the storage means to the processing means in the original order of the image data before the alignment.
画像データに処理を施す画像データ処理装置であって、
前記画像データを処理単位のデータずつ読込んで該データに処理を施す処理手段と、
処理後の画像データを格納するための格納手段と、
前記処理が施された前記処理単位のデータを前記処理手段から前記格納手段へ順次転送して前記格納手段に処理後の画像データを格納させる転送手段とを備え、
前記転送手段は、前記処理後の画像データを、前記格納手段に対して、1個が前記処理単位で満たされたY×X個の満データがY行×X列のマトリクス状に配列されるとともに、行方向に前記処理単位に満たない行余りデータがある場合には、当該行余りデータが、満データX列配列幅内に配列されたデータの末尾に続けて、前記満データX列配列幅内に収まるようにアラインして格納させることを特徴とする画像データ処理装置。
An image data processing device for processing image data,
Processing means for reading the image data in units of processing and processing the data;
Storage means for storing the processed image data;
Transfer means for sequentially transferring the data of the processing unit subjected to the processing from the processing means to the storage means, and storing the processed image data in the storage means;
The transfer means arranges the processed image data in a matrix of Y rows × X columns, with Y × X full data, one of which is filled in the processing unit, with respect to the storage means. In addition, when there is line remainder data that is less than the processing unit in the row direction, the line remainder data is added to the end of the data arranged within the full data X column arrangement width, and the full data X column arrangement An image data processing apparatus, wherein the image data processing apparatus is arranged and stored so as to be within a width.
画像データに処理を施す画像データ処理装置であって、
処理前の画像データを格納する格納手段と、
前記画像データに処理を施す処理手段と、
前記処理前の画像データを前記格納手段から前記処理手段へ処理単位のデータずつ転送するとともに、前記処理手段が前記処理単位ずつ転送されてくる前記データに順次処理を施して生成された前記処理後のデータを前記処理手段から前記格納手段へ順次転送することで前記処理が施された画像データを前記格納手段に格納させる転送手段とを備え、
前記格納手段において、前記画像データは、1個が前記処理単位で満たされたX×Y個の満データがX行×Y列のマトリクス配列で格納されるとともに、行方向に前記処理単位に満たない行余りデータがある場合には、当該行余りデータが、満データY列配列幅内に配列されたデータの末尾に続けて前記満データY列配列幅内に収まるようにアラインして格納される構成であり、
前記転送手段は、前記格納手段から前記処理手段へ前記データを前記画像データにおける前記アライン前の元の順番で転送し、
前記処理が施された前記処理単位のデータを前記処理手段から前記格納手段へ順次転送して前記格納手段に処理後の画像データを格納させる転送手段とを備え、
前記転送手段は、前記処理後の画像データを、前記格納手段に対して、1個が前記処理単位で満たされたY×X個の満データがY行×X列のマトリクス状に配列されるとともに、前記行余りデータがある場合には、当該行余りデータが、満データX列配列幅内に配列されたデータの末尾に続けて、前記満データX列配列幅内に収まるようにアラインして格納させることを特徴とする画像データ処理装置。
An image data processing device for processing image data,
Storage means for storing image data before processing;
Processing means for processing the image data;
The post-processing image data generated by transferring the pre-processing image data from the storage unit to the processing unit for each processing unit, and the processing unit sequentially processing the data transferred for each processing unit. Transfer means for storing the processed image data in the storage means by sequentially transferring the data from the processing means to the storage means,
In the storage means, X × Y full data, one of which is filled in the processing unit, is stored in a matrix arrangement of X rows × Y columns, and the processing unit is filled in the row direction. If there is no remaining data, the remaining data is aligned and stored so as to fit within the full data Y column array width following the end of the data arranged within the full data Y column array width. The configuration
The transfer means transfers the data from the storage means to the processing means in the original order before the alignment in the image data,
Transfer means for sequentially transferring the data of the processing unit subjected to the processing from the processing means to the storage means, and storing the processed image data in the storage means;
The transfer means arranges the processed image data in a matrix of Y rows × X columns, with Y × X full data, one of which is filled in the processing unit, with respect to the storage means. At the same time, when there is the margin data, the margin data is aligned so that it fits within the full data X column arrangement width following the end of the data arranged within the full data X column arrangement width. An image data processing apparatus characterized by being stored.
前記処理手段は画像データに回転処理を施す回転処理手段であり、
前記転送手段は、前記処理単位が行方向と列方向で画素数の等しいK×K画素(但しK≧2)の正方ブロックの前記データをバースト転送することを特徴とする請求項1乃至3のうちいずれか一項に記載の画像データ処理装置。
The processing means is rotation processing means for performing rotation processing on image data,
4. The transfer unit according to claim 1, wherein the transfer unit burst-transfers the data of a square block having K × K pixels (where K ≧ 2) having the same number of pixels in the row direction and the column direction. 5. The image data processing apparatus as described in any one of them.
前記転送手段は、前記格納手段からデータを読み出して転送する際の読出しアドレスを生成するか、又は前記格納手段に転送したデータを書き込む際の書込みアドレスを生成するアドレス生成手段を、更に備えたことを特徴とする請求項1乃至4のうちいずれか一項に記載の画像データ処理装置。   The transfer means further comprises an address generation means for generating a read address for reading and transferring data from the storage means, or for generating a write address for writing data transferred to the storage means. The image data processing apparatus according to claim 1, wherein the image data processing apparatus is an image data processing apparatus. 前記アドレス生成手段は、転送すべきデータが行余りデータであるか否かを判定する判定手段と、
データが行余りデータ以外である場合には第1のアドレス生成演算式に従ってアドレスを生成し、データが行余りデータである場合には第2のアドレス生成演算式に従ってアドレスを生成することを特徴とする請求項5に記載の画像データ処理装置。
The address generating means determines whether or not the data to be transferred is margin data; and
The address is generated according to the first address generation arithmetic expression when the data is other than the remainder data, and the address is generated according to the second address generation arithmetic expression when the data is the remainder data. The image data processing apparatus according to claim 5.
請求項1乃至6のいずれか一項に記載の画像データ処理装置と、
媒体を搬送する搬送手段と、
前記搬送手段により搬送される媒体に画像を形成する記録手段とを備え、
前記記録手段は前記処理手段による処理が施された画像データに基づき制御されることを特徴とする記録装置。
The image data processing device according to any one of claims 1 to 6,
Conveying means for conveying the medium;
Recording means for forming an image on a medium conveyed by the conveying means,
The recording apparatus according to claim 1, wherein the recording unit is controlled based on image data processed by the processing unit.
画像データに処理を施す画像データ処理方法であって、
格納手段において、前記画像データを、1個が処理単位で満たされたX×Y個の満データがX行×Y列のマトリクス配列で格納されるとともに、行方向に前記処理単位に満たない行余りデータがある場合には、当該行余りデータが、満データY列配列幅内に配列されたデータの末尾に続けて前記満データY列配列幅内に収まるようにアラインして格納しておき、
前記画像データを前記格納手段から処理手段へ前記処理単位のデータずつ転送する転送ステップと、
前記処理手段が、前記格納手段から前記処理単位ずつ転送されてくる前記データに順次処理を施す処理ステップと、を備え、
前記転送ステップでは、前記データを前記アライン前の元の順番で前記格納手段から前記処理手段へ転送することを特徴とする画像データ処理方法。
An image data processing method for processing image data,
In the storage means, the image data is stored in a matrix arrangement of X rows and Y columns in which X × Y full data, one of which is filled in a processing unit, and rows less than the processing unit in the row direction. If there is surplus data, the line surplus data is aligned and stored so as to fit within the full data Y column array width following the end of the data arranged within the full data Y column array width. ,
A transfer step of transferring the image data from the storage means to the processing means for each piece of processing unit data;
The processing means includes processing steps for sequentially processing the data transferred from the storage means for each processing unit;
In the transfer step, the data is transferred from the storage means to the processing means in the original order before the alignment.
画像データに処理を施す画像データ処理方法であって、
前記画像データを処理単位のデータずつ読込んで処理手段が該データに処理を施す処理ステップと、
前記処理が施された前記処理単位のデータを転送手段が前記処理手段から格納手段へ順次転送することで前記格納手段に処理後の画像データを格納させる転送ステップと、を備え、
前記転送ステップでは、前記転送手段は、1個が前記処理単位で満たされたY×X個の満データがY行×X列のマトリクス状に配列されるとともに、行方向に前記処理単位に満たない行余りデータがある場合には、当該行余りデータが、満データX列配列幅内に配列されたデータの末尾に続けて、前記満データX列配列幅内に収まるようにアラインして格納させることを特徴とする画像データ処理方法。
An image data processing method for processing image data,
A processing step of reading the image data in units of processing units and processing means processing the data;
A transfer step of causing the storage unit to store the processed image data by sequentially transferring the processing unit data subjected to the processing from the processing unit to the storage unit;
In the transfer step, the transfer means arranges Y × X full data, one of which is filled in the processing unit, in a matrix of Y rows × X columns and fills the processing unit in the row direction. If there is no line remainder data, the line remainder data is aligned and stored so as to fit within the full data X column arrangement width following the end of the data arranged within the full data X column arrangement width. And a method of processing image data.
JP2010042829A 2010-02-26 2010-02-26 Image data processor, recorder, and image data processing method Pending JP2011182106A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010042829A JP2011182106A (en) 2010-02-26 2010-02-26 Image data processor, recorder, and image data processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010042829A JP2011182106A (en) 2010-02-26 2010-02-26 Image data processor, recorder, and image data processing method

Publications (1)

Publication Number Publication Date
JP2011182106A true JP2011182106A (en) 2011-09-15

Family

ID=44693170

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010042829A Pending JP2011182106A (en) 2010-02-26 2010-02-26 Image data processor, recorder, and image data processing method

Country Status (1)

Country Link
JP (1) JP2011182106A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012171110A (en) * 2011-02-17 2012-09-10 Seiko Epson Corp Image data processing device, recording device, and image data processing method
JP2016068457A (en) * 2014-09-30 2016-05-09 セイコーエプソン株式会社 Printer, controller and image processing method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012171110A (en) * 2011-02-17 2012-09-10 Seiko Epson Corp Image data processing device, recording device, and image data processing method
JP2016068457A (en) * 2014-09-30 2016-05-09 セイコーエプソン株式会社 Printer, controller and image processing method

Similar Documents

Publication Publication Date Title
US9393778B2 (en) Image forming device and dot pattern determining method
JP5245221B2 (en) Droplet discharge device
KR100905455B1 (en) Image processing method, image processing apparatus, image forming apparatus and computer-readable storage medium storing program
US20050146557A1 (en) Printing apparatus, printing method, and print head
JP2009301576A (en) Printer, printing method, and computer program for printing
JP2011182106A (en) Image data processor, recorder, and image data processing method
US20090167800A1 (en) Inkjet recording apparatus, image forming system, and computer-readable encoding medium recorded with a computer program thereof
JP2004262171A (en) Printing method and printing system by ink jet printer, as well as host computer or printer driver equipped with the method
JP5736826B2 (en) Image data processing apparatus, recording apparatus, and image data processing method
JP2005125603A (en) Unit for outputting image while performing resolution conversion of data from a plurality of pixel arrays for forming dots simultaneously
JP2009131959A (en) Image forming method and image forming apparatus
JP2006264274A (en) Uncompressing circuit, uncompressing method and printer
JP4461890B2 (en) Printing device
JP2013049262A (en) Image processing apparatus
JP2005035085A (en) Ink jet recorder
JP2006264273A (en) Drive signal formation device for delivery head, printer and drive signal formation method for delivery head
JP5446108B2 (en) Control device and printing device
JP2005305832A (en) Printer
JP2010005919A (en) Inkjet recording device
JP5125642B2 (en) Liquid ejector
JP5288722B2 (en) Recording apparatus and control method of the apparatus
JP2014031021A (en) Printing apparatus, printing method, and printing program
JPH10278346A (en) Ink jet recording system
JP5343504B2 (en) Inkjet recording apparatus, image forming system, image forming method, and program
JP2011148133A (en) Data processor, data processing method, and recording apparatus