JP5736826B2 - Image data processing apparatus, recording apparatus, and image data processing method - Google Patents
Image data processing apparatus, recording apparatus, and image data processing method Download PDFInfo
- Publication number
- JP5736826B2 JP5736826B2 JP2011032444A JP2011032444A JP5736826B2 JP 5736826 B2 JP5736826 B2 JP 5736826B2 JP 2011032444 A JP2011032444 A JP 2011032444A JP 2011032444 A JP2011032444 A JP 2011032444A JP 5736826 B2 JP5736826 B2 JP 5736826B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- image data
- pixel
- flag
- address
- 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.)
- Expired - Fee Related
Links
- 238000012545 processing Methods 0.000 title claims description 123
- 238000003672 processing method Methods 0.000 title claims description 8
- 238000012546 transfer Methods 0.000 claims description 127
- 238000003860 storage Methods 0.000 claims description 121
- 238000006243 chemical reaction Methods 0.000 claims description 47
- 230000000873 masking effect Effects 0.000 claims description 18
- 238000012937 correction Methods 0.000 claims description 9
- 238000005096 rolling process Methods 0.000 claims 6
- 230000002401 inhibitory effect Effects 0.000 claims 2
- 238000000034 method Methods 0.000 description 96
- 239000007788 liquid Substances 0.000 description 25
- 239000000976 ink Substances 0.000 description 24
- 238000010586 diagram Methods 0.000 description 18
- 239000012530 fluid Substances 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 239000000463 material Substances 0.000 description 4
- 239000003086 colorant Substances 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 239000004973 liquid crystal related substance Substances 0.000 description 3
- 239000011347 resin Substances 0.000 description 3
- 229920005989 resin Polymers 0.000 description 3
- 238000013500 data storage Methods 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 230000012447 hatching Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004321 preservation Methods 0.000 description 2
- 239000000243 solution Substances 0.000 description 2
- 239000000126 substance Substances 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 238000000018 DNA microarray Methods 0.000 description 1
- 239000002253 acid Substances 0.000 description 1
- 239000003513 alkali Substances 0.000 description 1
- 238000009835 boiling Methods 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 239000007772 electrode material Substances 0.000 description 1
- 238000005401 electroluminescence Methods 0.000 description 1
- 238000005530 etching Methods 0.000 description 1
- 239000008187 granular material Substances 0.000 description 1
- 239000012943 hotmelt Substances 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 229910001867 inorganic solvent Inorganic materials 0.000 description 1
- 239000003049 inorganic solvent Substances 0.000 description 1
- 239000007791 liquid phase Substances 0.000 description 1
- 229910001338 liquidmetal Inorganic materials 0.000 description 1
- 239000000314 lubricant Substances 0.000 description 1
- 239000000155 melt Substances 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 229910052751 metal Inorganic materials 0.000 description 1
- 239000002923 metal particle Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 239000005416 organic matter Substances 0.000 description 1
- 239000003960 organic solvent Substances 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 239000000049 pigment Substances 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 239000011343 solid material Substances 0.000 description 1
- 239000002904 solvent Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Landscapes
- Storing Facsimile Image Data (AREA)
- Record Information Processing For Printing (AREA)
Description
本発明は、第1画像データからこれを縦横変換した第2画像データを生成する画像データ処理装置、記録装置及び画像データ処理方法に関する。 The present invention relates to an image data processing apparatus, a recording apparatus, and an image data processing method for generating second image data obtained by vertically and horizontally converting the first image data.
例えば特許文献1、2には、インクを噴射する印刷ヘッドを備えた記録装置(プリンター)が開示されている。プリンターでは、印刷イメージデータ(第1画像データ)に複数の処理が施されることによりヘッドイメージデータ(第2画像データ)が生成され、このヘッドイメージデータに基づき印刷ヘッドは駆動される。印刷イメージデータは画素が横方向(行方向)に並んでいるのに対して、印刷ヘッドへ送られるヘッドイメージデータは、画素が縦方向に並ぶように配置する必要がある。これは、例えばシリアルプリンターでは、印刷ヘッドの走査方向と直交する方向に複数のノズルが配列されたノズル列が形成されており、印刷ヘッドが走査方向に1画素分移動する度にノズル1列分ずつインクを噴射する必要があるためである。このため、印刷ヘッドの走査方向(横方向)に沿った画素の並び順を、印刷ヘッドのインク噴射順序に合わせてノズル列方向(縦方向)の画素の並び順になるように、印刷イメージデータに縦横変換(回転処理)を施してヘッドイメージデータを生成する。例えば特許文献1、2では、印刷イメージデータはRAM等のメインメモリーから縦横変換装置(回転ユニット)に処理単位ずつ転送され、縦横変換装置においてライン方向(横方向)の画素の並び順が、印刷ヘッドのノズル配列に対応させたラスター方向(縦方向)の画素の並び順に縦横変換され、縦横変換後の処理単位のデータがメインメモリーへ順次転送されることにより、印刷イメージデータの縦横変換が行われる。このときのデータ転送には、処理単位のデータを連続して転送できて高速処理可能なバースト転送が採用される。
For example,
特許文献1、2では、第1画像データ(元画像データ)のうち例えばA×A画素ずつSRAM(メモリー)に転送した後、回転処理を施す。このとき回転処理されるA×A画素は、横方向に並ぶ画素の順番が第1画像データの同一行に属する連続した画素になっているとともに、縦方向に並ぶ画素の順番が第1画像データの同一の列に属する連続した画素となっている。このため、A×A画素を連続的に回転させるだけで、縦横変換を行うことができる。
In
第1画像データの行方向のデータサイズ(ラスターサイズ)が、バースト転送の転送単位であるバーストサイズ(例えば画素N個分のデータサイズ)の整数倍でない場合、バーストサイズ(転送サイズ)に満たない余りの画素ができる。このようにバーストサイズに満たない余りの画素ができる例を図20に示す。 When the data size (raster size) in the row direction of the first image data is not an integral multiple of a burst size (for example, a data size for N pixels) that is a transfer unit of burst transfer, it is less than the burst size (transfer size). Extra pixels are created. FIG. 20 shows an example in which extra pixels less than the burst size can be formed in this way.
図20(a)は回転処理前の印刷イメージデータを示し、図20(b)は回転処理後のヘッドイメージデータを示す。図20(a)では、印刷イメージデータを構成する各画素は、N行×M列のマトリクス状に配列されている。通常、回転処理時の画像データは数100行×数1000列ぐらいの画素数であるが、図20では説明を簡単にするため、画素数6行×10列の画像データの例を示す。ここで、画素の符号「N-M」は、N行M列目の画素データを指す。また、列方向(図20(a)の上下方向)は印刷ヘッドのノズル列を構成するノズルが並ぶノズル列方向に対応し、行方向(同図の左右方向)が印刷ヘッドの走査方向に対応する。 FIG. 20A shows print image data before rotation processing, and FIG. 20B shows head image data after rotation processing. In FIG. 20A, the pixels constituting the print image data are arranged in a matrix of N rows × M columns. Normally, the image data at the time of the rotation process has a number of pixels of about several hundred rows × several 1000 columns, but FIG. 20 shows an example of image data having 6 rows × 10 columns of pixels for the sake of simplicity. Here, the symbol “NM” of the pixel indicates the pixel data of the Nth row and the Mth column. Further, the column direction (vertical direction in FIG. 20A) corresponds to the nozzle column direction in which the nozzles constituting the nozzle column of the print head are arranged, and the row direction (left and right direction in FIG. 20) corresponds to the scan direction of the print head. To do.
回転処理では、メインメモリー100(DRAM)に格納された印刷イメージデータを、例えば4×4画素分の正方領域(正方ブロック)のデータずつ図中に太数字で示す順番で回転ユニットへバースト転送する。そして、回転ユニットは、転送されてきたデータに回転処理(縦横変換)を施し、その回転後のデータを、メインメモリー100へバースト転送し、図20(b)に太数字で示す位置に格納することで、メインメモリー100に縦横変換されたヘッドイメージデータが生成される。
In the rotation processing, print image data stored in the main memory 100 (DRAM) 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) of 4 × 4 pixels. . Then, the rotation unit performs rotation processing (vertical / horizontal conversion) on the transferred data, burst-transfers the rotated data to the
ところで、バースト転送方式では、図20(a)に太線枠で囲った回転処理単位の正方ブロック(4×4画素)のデータを転送する場合、バーストサイズ(同図では4画素分(16ビット×4))のデータずつ、行を切り換えながら4回転送する。そして、正方ブロックが図20(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. 20A, the burst size (4 pixels (16 bits × 16 in FIG. 20)) is transferred. 4)) Transfer the data four times while switching the rows. Then, the square blocks are read in the order of the bold numbers “1”, “2”,... “6” shown in FIG.
ところで、図20(a)に示すように、太数字「3」、「6」のデータは行方向に画素データがバーストサイズの4画素に満たない行余りデータになっており、太数字「4」、「5」、「6」のデータが列方向に画素データが転送回数「4」(4画素)に満たない列余りデータになっている。このため、図20(a)に網掛けで示すダミーデータを用意していた。この場合、4画素に満たないときだけバースト転送の指定の仕方を変えてダミーデータの追加を回避する方法もあるが、CPUのメモリーアクセスが頻繁になって転送速度が却って遅くなり好ましくない。 By the way, as shown in FIG. 20A, the data of the bold numbers “3” and “6” are 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 ”,“ 6 ”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. In this case, there is a method of changing the method of specifying burst transfer only when the number of pixels is less than 4 pixels and avoiding the addition of dummy data, but this is not preferable because the memory access of the CPU becomes frequent and the transfer rate is slowed down.
このため、バースト転送方式で高速転送を行おうとすると、ダミーデータを格納しておく必要がある。この場合、印刷イメージデータにダミーデータが追加されるうえ、ヘッドイメージデータにもダミーデータが追加されるので、データ格納領域(記憶容量)の大きなメインメモリー100を用意したり、メインメモリー100における他データの格納領域が圧迫されたりするなどの問題があった。このため、ダミーデータをなるべく減らしたいという要望があった。
For this reason, if high-speed transfer is to be performed by the burst transfer method, it is necessary to store dummy data. In this case, since dummy data is added to the print image data and dummy data is also added to the head image data, a
本発明は、上記課題に鑑みてなされたものであり、その目的の一つは、縦横変換処理速度をさほど落とさず、格納手段における使用格納領域を少なく抑えることができる画像データ処理装置、記録装置及び画像データ処理方法を提供することにある。 The present invention has been made in view of the above problems, and one of its purposes is an image data processing apparatus and a recording apparatus that can reduce the storage area used in the storage means without significantly reducing the vertical / horizontal conversion processing speed. And providing an image data processing method.
上記目的の一つを達成するために、本発明の態様の一つは、第1画像データを縦横変換して第2画像データを生成する画像データ処理装置であって、第1画像データが格納される第1格納手段と、メモリーと、第2画像データを格納するための第2格納手段と、前記第1画像データから同一の列に並ぶ着目画素を少なくとも1つ含む転送サイズの第1データを前記メモリーへ転送する第1の転送手段と、転送された前記第1データを前記メモリーに格納する書込手段と、前記メモリーにおける前記第1データから少なくとも1つの前記着目画素を選択して読み出す読出手段と、前記メモリーから読み出した前記着目画素を含む転送サイズの第2データを前記第2格納手段へ転送する第2の転送手段と、前記第2格納手段に、前記第2画像データの画素配列順になるように前記第2データの画素群を書き込むとともに、前記画素群が着目画素以外の不要画素を含む場合、前記着目画素を不要画素に上書きするとともに、不要画素の着目画素への上書きを禁止する書込調整手段と、を備えたことを要旨とする。 In order to achieve one of the above objects, one aspect of the present invention is an image data processing apparatus for generating second image data by longitudinally and laterally converting first image data, wherein the first image data is stored. First storage means, a memory, second storage means for storing second image data, and first data of transfer size including at least one pixel of interest arranged in the same column from the first image data First transfer means for transferring the first data to the memory, writing means for storing the transferred first data in the memory, and selecting and reading at least one pixel of interest from the first data in the memory A second transfer means for transferring second data having a transfer size including the pixel of interest read from the memory to the second storage means; a second transfer means for transferring the second image data to the second storage means; When the pixel group of the second data is written so as to be in the pixel arrangement order, and the pixel group includes unnecessary pixels other than the target pixel, the target pixel is overwritten with the unnecessary pixel, and the unnecessary pixel is transferred to the target pixel. The gist of the present invention is that it comprises a writing adjustment means for prohibiting overwriting.
本発明の一実施態様によれば、第1の転送手段により、第1画像データから同一の列に並ぶ着目画素を少なくとも1つ含む転送サイズの第1データが転送される。転送された第1データは書込手段によりメモリーに書き込まれる(格納される)。読出手段は、メモリーにおける第1データから少なくとも1つの着目画素を選択して読み出す。メモリーから読み出された着目画素を含む転送サイズの第2データは、第2の転送手段により転送される。転送された第2データ(画素群)は書込調整手段により、第2画像データの画素配列順になるように書き込まれる。このとき、書込調整手段により、第2データが着目画素以外の不要画素を含む場合、着目画素が不要画素に上書きされるとともに、不要画素の着目画素への上書きが禁止される。よって、ラスターサイズが転送サイズの自然数倍になるようにダミーデータを加えることなく、第1画像データから第2画像データへの縦横変換を行うことができる。従って、縦横変換処理速度をさほど落とさず、格納手段における使用格納領域を少なく抑えることができる。
上記目的の一つを達成するために、本発明の態様の一つは、第1画像データを縦横変換して第2画像データを生成する画像データ処理装置であって、第1画像データが格納される第1格納手段と、メモリーと、第2画像データを格納するための第2格納手段と、前記第1画像データから少なくとも1つの着目画素を含む一列に並ぶ複数の画素を選択した転送サイズの第1データを、前記着目画素を順次替えて前記第1格納手段から前記転送サイズずつ転送して前記メモリーに格納する第1転送手段と、前記メモリーに格納された前記第1データの群から少なくとも1つの前記着目画素を含む複数の画素を選択した転送サイズの第2データを、前記着目画素を順次替えて前記メモリーから前記転送サイズずつ前記第2格納手段へ転送し、当該第2データ中の着目画素が前記第2格納手段における前記第2画像データの画素配列順に合った位置に配置される前記第2格納手段中の位置に書き込む第2転送手段と、を備え、前記第2の転送手段は、前記第2データが画素の配列順が不適切なミスアラインである場合に、当該ミスアラインである第2データの画素の配列順を補正する補正手段と、前記第2データが着目画素以外の不要画素を含む場合に、当該不要画素の前記第2格納手段への書込みを禁止する書込調整手段と、を備えたことを要旨とする。
According to one embodiment of the present invention, the first data having a transfer size including at least one pixel of interest arranged in the same column is transferred from the first image data by the first transfer unit. The transferred first data is written (stored) in the memory by the writing means. The reading means selects and reads at least one target pixel from the first data in the memory. The second data having the transfer size including the target pixel read from the memory is transferred by the second transfer unit. The transferred second data (pixel group) is written by the writing adjusting means so as to be in the pixel arrangement order of the second image data. At this time, when the second data includes unnecessary pixels other than the target pixel, the write adjustment unit overwrites the target pixel with the unnecessary pixel and prohibits the unnecessary pixel from being overwritten on the target pixel. Therefore, the vertical / horizontal conversion from the first image data to the second image data can be performed without adding dummy data so that the raster size is a natural number multiple of the transfer size. Therefore, it is possible to suppress the use storage area in the storage means without significantly reducing the vertical / horizontal conversion processing speed.
In order to achieve one of the above objects, one aspect of the present invention is an image data processing apparatus for generating second image data by longitudinally and laterally converting first image data, wherein the first image data is stored. First storage means, a memory, second storage means for storing second image data, and a transfer size in which a plurality of pixels arranged in a line including at least one pixel of interest are selected from the first image data The first data is transferred from the first storage means by the transfer size by sequentially changing the pixel of interest and stored in the memory, and from the group of the first data stored in the memory Second data having a transfer size in which a plurality of pixels including at least one pixel of interest are selected is transferred from the memory to the second storage unit in increments of the transfer size by sequentially changing the pixels of interest. Second transfer means for writing the pixel of interest in the data to a position in the second storage means arranged at a position that matches the pixel arrangement order of the second image data in the second storage means, and The transfer means includes: a correction means for correcting the arrangement order of the pixels of the second data that is the misalignment when the second data is a misalignment in which the arrangement order of the pixels is inappropriate; and the second data is the pixel of interest And a write adjustment unit that prohibits writing of the unnecessary pixel to the second storage unit when unnecessary pixels other than the above are included.
本発明の態様の一つである画像データ処理装置では、前記読出手段は、前記転送サイズをBバイト(但しBは自然数)、当該Bを2の累乗に表したときの指数をm(但しmは自然数)とし、前記メモリーに書き込まれた転送サイズのデータから、前記着目画素のアドレスの下位mビットの位置を読出アドレスとして着目画素を読み出すことが好ましい。 In the image data processing apparatus according to one aspect of the present invention, the reading means is configured such that the transfer size is B bytes (B is a natural number), and an exponent when the B is expressed as a power of 2 is m (note that m Is a natural number), and it is preferable to read the pixel of interest from the transfer size data written in the memory, using the position of the lower m bits of the address of the pixel of interest as a read address.
本発明の一実施態様によれば、読出手段は、メモリーに書き込まれた転送サイズのデータから、着目画素のアドレスの下位mビットの位置を読出アドレスとして着目画素を読み出す。よって、メモリーに格納された転送サイズのデータから着目画素を適切に読み出すことができる。 According to one embodiment of the present invention, the reading means reads the pixel of interest from the transfer size data written in the memory, using the position of the lower m bits of the address of the pixel of interest as the reading address. Therefore, the pixel of interest can be appropriately read from the transfer size data stored in the memory.
本発明の態様の一つである画像データ処理装置では、前記第2データが画素の配列順が不適切なミスアラインであるか否かを判定する判定手段と、前記ミスアラインであると判定された第2データの画素の配列順を補正する補正手段と、を更に備えていることが好ましい。 In the image data processing apparatus according to one aspect of the present invention, a determination unit that determines whether or not the second data is a misalignment in which the pixel arrangement order is inappropriate, and a second that is determined to be the misalignment. It is preferable that correction means for correcting the arrangement order of the two data pixels is further provided.
本発明の一実施態様によれば、判定手段により第2データがミスアラインであると判定されると、補正手段によってミスアラインの第2データの画素の配列順が補正される。よって、補正後の第2データが第2格納手段に書き込まれることで、第2データの画素を回転処理後の適切な位置に書き込むことができる。 According to one embodiment of the present invention, when the determination unit determines that the second data is misaligned, the correction unit corrects the pixel arrangement order of the misaligned second data. Therefore, the corrected second data is written in the second storage unit, so that the pixels of the second data can be written at an appropriate position after the rotation process.
本発明の態様の一つである画像データ処理装置では、前記補正手段は、画素データ毎に付されると共にマスク有効の値とマスク無効の値のうち一方をとる第1フラグを生成する第1フラグ生成手段と、画素データ毎に付されると共にマスク有効の値とマスク無効の値のうち一方をとる第2フラグを生成する第2フラグ生成手段と、前記第2データを構成する前記画素をシフトさせて当該画素の配列順を変更させるシフト処理手段と、前記画素のシフトに伴って前記第1フラグ及び第2フラグをシフトさせると共に、着目画素以外の不要画素に対応する前記第2フラグをマスク有効の値に変更したうえで、シフト後の第1フラグと第2フラグとを論理和演算して第3フラグを生成する第3フラグ生成手段と、を備え、前記第2の転送手段は、シフト後の前記第2データを構成する画素データ毎に前記第3フラグを付けて当該データを第2格納手段に転送する構成であり、前記書込調整手段は、前記第3フラグがマスク無効の値であれば対応する画素データを書込み、マスク有効の値であれば対応する画素データの書込みを禁止するマスク処理手段を備えていることが好ましい。 In the image data processing apparatus according to one aspect of the present invention, the correction unit generates a first flag that is attached to each pixel data and takes one of a mask valid value and a mask invalid value. Flag generating means; second flag generating means for generating a second flag which is attached to each pixel data and takes one of a mask valid value and a mask invalid value; and the pixels constituting the second data A shift processing means for shifting and changing the arrangement order of the pixels; and the second flag corresponding to an unnecessary pixel other than the target pixel is shifted while the first flag and the second flag are shifted in accordance with the shift of the pixel. And a third flag generating means for generating a third flag by performing an OR operation on the shifted first flag and second flag after changing to a mask valid value, wherein the second transfer means comprises: , The third flag is attached to each pixel data constituting the second data after transfer, and the data is transferred to the second storage means. The write adjustment means has the mask invalid for the third flag. It is preferable to provide mask processing means for writing the corresponding pixel data if the value is valid, and prohibiting the writing of the corresponding pixel data if the mask is valid .
本発明の一実施態様によれば、第3フラグがマスク無効の値であれば対応する画素データの書込みが許容され、マスク有効の値であれば対応する画素データの書込みが禁止される。よって、第2格納手段に着目画素を書き込みできるうえ、不要画素による着目画素の上書きを禁止できる。従って、回転処理した着目画素を第2格納手段に先に書き込んだ着目画素を上書きすることなく書き込むことができる。 According to one embodiment of the present invention, the third flag is allowed write of the corresponding pixel data if the value of the invalid mask, the writing of the corresponding pixel data is prohibited if the mask effective value. Therefore, the pixel of interest can be written to the second storage means, and overwriting of the pixel of interest by unnecessary pixels can be prohibited. Therefore, it is possible to write the target pixel that has been subjected to the rotation process without overwriting the target pixel that has been previously written in the second storage means.
本発明の態様の一つである画像データ処理装置では、前記第1の転送手段に対して第1格納手段に格納された前記第1画像データから転送サイズずつ前記第1データを読み出すために指示する読出しアドレスは、前記第1データのうちの着目画素のリードアドレスの下位mビットをマスクして指定することが好ましい。 In the image data processing apparatus according to one aspect of the present invention, the first transfer unit is instructed to read out the first data by transfer size from the first image data stored in the first storage unit. The read address to be specified is preferably specified by masking the lower m bits of the read address of the pixel of interest in the first data.
本発明の一実施態様によれば、第1データのうちの着目画素のリードアドレスの下位mビットをマスクして読出アドレスを指定するので、第1格納手段の適切な読出アドレスから第1データを読み出すことができる。 According to one embodiment of the present invention, since the lower m bits of the read address of the pixel of interest in the first data are masked to designate the read address, the first data is obtained from the appropriate read address of the first storage means. Can be read.
本発明の態様の一つである画像データ処理装置では、前記読出手段は、前記メモリーに格納された前記第1データのうち、前記リードアドレスの下位mビットで示される位置の画素を選択して読み出すことが好ましい。 In the image data processing apparatus according to one aspect of the present invention, the reading unit selects a pixel at a position indicated by lower m bits of the read address from the first data stored in the memory. It is preferable to read.
本発明の一実施態様によれば、読出手段は、メモリーに格納された第1データに属する画素のうち、リードアドレスの下位mビットで示される位置の画素を選択して読み出すことにより、適切な画素が選択された第2データを読み出すことができる。 According to one embodiment of the present invention, the reading means selects and reads out the pixel at the position indicated by the lower m bits of the read address from among the pixels belonging to the first data stored in the memory, thereby appropriately The second data from which the pixel is selected can be read out.
本発明の態様の一つである画像データ処理装置では、前記第2の転送手段に対して前記第2データを前記第2格納手段に書き込ませるために指示する書込アドレスは、前記第2データのうちの着目画素のライトアドレスの下位mビットをマスクして指定することが好ましい。 In the image data processing apparatus according to one aspect of the present invention, the write address instructing the second transfer means to write the second data in the second storage means is the second data. Of these, it is preferable to specify by masking the lower m bits of the write address of the pixel of interest.
本発明の一実施態様によれば、第2データのうちの着目画素のライトアドレスの下位mビットをマスクして書込アドレスを指定するので、第2格納手段の適切な書込アドレスへ第2データを書き込むことができる。 According to one embodiment of the present invention, the lower m bits of the write address of the pixel of interest in the second data are masked to designate the write address, so that the second write means has an appropriate write address. Data can be written.
本発明の態様の一つである記録装置は、上記発明の態様に係る画像データ処理装置と、前記画像データ処理装置によって前記第1画像データが縦横変換された前記第2画像データに基づいて記録を行う記録手段と、を備えたことを要旨とする。 A recording apparatus according to an aspect of the present invention is based on the image data processing apparatus according to the aspect of the invention described above and the second image data obtained by vertically and horizontally converting the first image data by the image data processing apparatus. And a recording means for performing the above.
本発明の一実施態様によれば、第1画像データを縦横変換して第2画像データを生成する際に、記録装置に備えられた第1格納手段及び第2格納手段における各画像データの使用格納領域(使用記憶容量)を小さく抑えつつ、縦横変換処理を行うことができる。 According to one embodiment of the present invention, when the first image data is vertically and horizontally converted to generate the second image data, use of each image data in the first storage means and the second storage means provided in the recording apparatus Vertical / horizontal conversion processing can be performed while keeping the storage area (used storage capacity) small.
本発明の態様の一つは、第1画像データを縦横変換して第2画像データを生成する画像データ処理方法であって、第1画像データから同一の列に並ぶ着目画素を少なくとも1つ含む転送サイズの第1データをメモリーへ転送する第1の転送ステップと、転送された前記第1データを前記メモリーに格納する書込ステップと、前記メモリーにおける前記第1データから少なくとも1つの前記着目画素を選択して読み出す読出ステップと、前記メモリーから読み出した前記着目画素を含む転送サイズの第2データを前記第2格納手段へ転送する第2の転送ステップと、前記第2格納手段に、前記第2画像データの画素配列順になるように前記第2データの画素群を書き込むとともに、前記画素群が着目画素以外の不要画素を含む場合、前記着目画素の不要画素への書込みを許可するとともに、不要画素の着目画素への書込みをマスクする書込調整ステップと、を備えたことを要旨とする。本発明の一実施態様の画像データ処理方法によれば、上記画像データ処理装置に係る発明と同様の効果を得ることができる。
本発明の態様の一つは、第1画像データを縦横変換して第2画像データを生成する画像データ処理方法であって、第1格納手段に格納された第1画像データから少なくとも1つの着目画素を含む一列に並ぶ複数の画素を選択した転送サイズの第1データを、前記着目画素を順次替えて第1格納手段から前記転送サイズずつ転送してメモリーに格納する第1転送ステップと、前記メモリーに格納された前記第1データの群から少なくとも1つの前記着目画素を含む複数の画素を選択した転送サイズの第2データを、前記着目画素を順次替えて前記メモリーから前記転送サイズずつ第2格納手段へ転送し、当該第2データ中の着目画素が前記第2格納手段における前記第2画像データの画素配列順に合った位置に配置される前記第2格納手段中の位置に書き込む第2転送ステップと、を備え、前記第2の転送ステップは、前記第2データが画素の配列順が不適切なミスアラインである場合に、当該ミスアラインである第2データの画素の配列順を補正する補正ステップと、前記第2データが着目画素以外の不要画素を含む場合、当該不要画素の前記第2格納手段への書込みを禁止する書込調整ステップと、を備えたことを要旨とする。
One aspect of the present invention is an image data processing method for generating second image data by performing vertical / horizontal conversion on first image data, and includes at least one pixel of interest arranged in the same column from the first image data. A first transfer step of transferring first data of a transfer size to the memory; a writing step of storing the transferred first data in the memory; and at least one pixel of interest from the first data in the memory A read step for selecting and reading out, a second transfer step for transferring the second data of the transfer size including the pixel of interest read from the memory to the second storage means, and the second storage means to the second storage means When the pixel group of the second data is written so as to be in the pixel arrangement order of the two image data, and the pixel group includes unnecessary pixels other than the target pixel, the target image With Allow writing to unwanted pixels, is summarized as further comprising a, a write adjustment step of masking writing to the pixel of interest unnecessary pixels. According to the image data processing method of one embodiment of the present invention, it is possible to obtain the same effect as that of the image data processing apparatus.
One aspect of the present invention is an image data processing method for generating first image data by converting the first image data into vertical and horizontal directions, and includes at least one attention from the first image data stored in the first storage means. A first transfer step of storing first data of a transfer size in which a plurality of pixels arranged in a row including the pixels are selected, sequentially changing the pixel of interest from the first storage unit, transferring the transfer size by the transfer size, and storing the first data; Second data having a transfer size obtained by selecting a plurality of pixels including at least one pixel of interest from the group of the first data stored in the memory, and second data of the transfer size from the memory by changing the size of the second one by one. The pixel of interest in the second data is placed in a position that matches the pixel arrangement order of the second image data in the second storage means. A second transfer step of writing to the device, wherein the second transfer step is an array of pixels of the second data that is the misalignment when the second data is a misalignment in which the pixel arrangement order is inappropriate A correction step for correcting the order; and a writing adjustment step for prohibiting writing of the unnecessary pixel to the second storage means when the second data includes an unnecessary pixel other than the target pixel. And
以下、本発明を具体化した一実施形態を図1〜図19に基づいて説明する。図1に示すように、記録装置の一例である複合機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. As illustrated in FIG. 1, a
図1に示すように、操作パネル部17にはその幅方向中央部に表示部21(例えば液晶ディスプレイ)が設けられている。また、操作パネル部17には、電源ボタン22、モード選択ボタン23、印刷/スキャンを開始するスタートボタン24、実行中の動作を中止するストップボタン25等が配設されている。モード選択ボタン23の操作によって、「メモリーカード」「コピー」「スキャン」等を含む5つモードのうち一つを選択でき、メモリーカード19から読み取った画像データに基づく写真等の印刷や、原稿のコピー印刷、原稿のスキャニングなどを行うことができる。
As shown in FIG. 1, the
図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
この制御装置30には、CPU31(中央処理装置)、ASIC32(Application SpecificIC)、ROM33、メモリーコントローラー34、DRAM(Dynamic Random Access Memory)からなるメインメモリー35及びモーター駆動回路36が備えられている。なお、DRAMとしては、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
ROM33には、プログラムや各種制御に必要な設定データなどが記憶されている。CPU31はROM33から読み出したプログラム(例えばファームウェア用プログラム)を実行してコマンド及び指令値をモーター駆動回路36に与えることによりキャリッジモーター27及び搬送モーター28を駆動制御する。これにより、プリンター部14における用紙の搬送制御、及び印刷ヘッド29を備える不図示のキャリッジを主走査方向へ移動させるキャリッジ制御が行われる。
The
また、複合機11は、通信インターフェイス(以下、「通信I/F37」という)を備える。例えば不図示のホスト装置(パーソナルコンピューター等)から転送されてきた印刷データは、通信I/F37が受信する。この通信I/F37に接続されたバス38には、制御装置30を構成するCPU31、ASIC32、ROM33、メモリーコントローラー34、メインメモリー35及びモーター駆動回路36が接続されるとともに、スキャナー入力回路41、メモリーカード入出力回路42及び操作パネル部17が接続されている。
The
スキャナー部15は、原稿を光学的に読み取るラインセンサー15aと、ラインセンサー15aからの読取信号(アナログ信号)をA/D変換して多階調のRGB画像データ(ラインデータ)として出力するA/D変換回路15bとを備える。スキャナー入力回路41は、CPU31の制御の下、スキャナー部15から入力されるRGB画像データに対してライン間補正処理及び解像度変換処理を施す。そして、これらの処理が施されたRGB画像データはASIC32に入力され、不図示の圧縮回路によりJPEG画像データに圧縮される。また、メモリーカード入出力回路42は、スロット20に挿着されたメモリーカード19から例えばJPEG画像データを読み込む。
The
メインメモリー35は、その一部の記憶領域が画像データ格納用のバッファーとして使用され、受信バッファー35aと第1格納部35b(中間バッファー)と第2格納部35c(印刷バッファー)とを備える。受信バッファー35aには、ホスト装置から受信した印刷データ、スキャナー部15経由及びメモリーカード入出力回路42経由のJPEG画像データなどが格納される。
A part of the storage area of the
ASIC32は、受信バッファー35aに格納された画像データ(印刷データ、JPEG画像データ等)に、その画像データ種に応じた画像処理を施すため、図3に示すJPEG解凍回路43、画像処理回路44、縦横変換装置45及びヘッド制御ユニット46を内蔵している。
The
JPEG解凍回路43は、受信バッファー35aから読み込んだJPEG画像データを解凍(伸張)してRGB画像データに展開し、その展開したRGB画像データを第1格納部35bに格納する。
The
画像処理回路44は、第1格納部35bから読み込んだRGB画像データに対して、解像度変換処理、色変換処理、ハーフトーン処理等を含む公知の画像処理を施す。ここで、解像度変換処理とは、RGB画像データの解像度を表示用解像度から印刷用解像度に変換する処理である。色変換処理とは、RGB画像データをRGB表色系からCMYK表色系のCMYK画像データへ色変換テーブル(図示せず)を参照して変換する処理である。ハーフトーン処理とは、CMYK画像データの画素の階調値(例えば256階調)を、印刷用の階調値(例えば2階調又は4階調など)に変換する処理である。第1格納部35bは、これらの各画像処理終了後の画像データをそれぞれ格納する3つの格納領域を備え、これらの画像処理を全て終了した最終の印刷イメージデータ(CMYK画像データ)は、第1格納部35bの最終段の格納領域に格納される。
The
縦横変換装置45は、第1格納部35bから読み込んだ印刷イメージデータに縦横変換処理を施す。縦横変換処理とは、印刷イメージデータの画素の並び順を、表示用の横方向(ライン方向)の並び順から、印刷ヘッド29のノズル配列(つまりインク噴射順序)に合わせた縦方向(ラスター方向)の並び順に変換する処理である。そして、縦横変換処理後のヘッドイメージデータは第2格納部35c(イメージバッファー)に格納される。
The vertical /
ヘッド制御ユニット46は、第2格納部35cに格納されたヘッドイメージデータを、印刷ヘッド29による印刷制御(噴射制御)が可能なヘッド制御データに変換する。ヘッド制御データは、ヘッド制御ユニット46から例えば1パス分(印刷ヘッドの1走査分)ずつ印刷ヘッド29へ転送される。印刷ヘッド29は不図示のヘッド駆動回路を内蔵し、ヘッド駆動回路がヘッド制御データに基づきインクの噴射制御を行う。
The
図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
また、印刷ヘッド29には、図2に示す各ノズル♯1〜♯180と対応する吐出駆動素子48がノズルと同数内蔵されている(但し、図2では印刷ヘッド29の外側に模式的に描いている)。吐出駆動素子48は、例えば圧電振動素子又は静電駆動素子からなる。印刷ヘッド29は、不図示のヘッド駆動回路により、ヘッド制御ユニット46から転送されたヘッド制御データに基づいて吐出駆動素子48の駆動制御を行って、ノズルからの噴射制御を行う。もちろん吐出駆動素子48はノズル通路内のインクを加熱するヒーターでもよく、ヒーターで加熱したインク内に沸騰により発生した気泡の膨張を利用してノズルからインク滴を吐出させる構成でもよい。
The
図2に示す印刷ヘッド29は、プリンター部14において主走査方向(図2における左右方向)に移動可能に設けられた不図示のキャリッジの下部に固定されている。キャリッジモーター27の駆動により、印刷ヘッド29はキャリッジと共に主走査方向に移動し、その移動途中でノズルからインク滴を1ドット間隔で噴射することにより、用紙Pに印刷が施される。
The
図4は、回転処理に係る部分の詳細な構成図を示す。図4に示すように、縦横変換装置45は、バス38に接続された回転ユニット50と、この回転ユニット50に接続されたSRAM80とを備える。メインメモリー35は、前述の第1格納部35bと第2格納部35cとを備える(但し図4では受信バッファー35aを省略している)。図4に示すように、第1格納部35bには回転ユニット50による回転処理前の印刷イメージデータPDが格納され、第2格納部35cには回転ユニット50による回転処理後のヘッドイメージデータHDが格納されるようになっている。なお、第1格納部35bの印刷イメージデータPDは、縦横変換装置45の上段の画像処理回路44が所定の画像処理を施して生成した図6に示す印刷イメージデータPDを、図5に示す状態に第1格納部35bに格納したものである。
FIG. 4 is a detailed configuration diagram of a portion related to the rotation process. As shown in FIG. 4, the vertical /
図6は、印刷イメージデータPDのデータ構造を示す。図6に示す印刷イメージデータPDは、縦横変換装置45の上段の画像処理回路44が所定の画像処理を施して生成したものである。1パス分の印刷イメージデータPDのライン数は、ノズル1列当たりのノズル数(本例では180個)と同数の180ラインあるが、説明を簡単にするためにノズル数6個の6ラインの例で説明する。また、印刷ヘッド29の走査1回(1パス)分の印刷イメージデータにおける1ライン当たりの画素数は、M個とする。M個は、用紙に紙幅方向に印刷されるインクドットの最大数(最大ドット数)に相当し、用紙サイズや印刷範囲、印刷解像度にもよるが、例えば数千〜数万個ある。そして、バーストサイズBが、画素4個分(本例えでは8バイト)である場合、Mが、バーストサイズB(本例では8バイト(4画素分))で割り切れず、余りがでる場合を想定する。ここで、余りがでる例であれば、縦横変換装置45の効果的な作用を説明できるので、以下では説明を簡単にするため、印刷イメージデータPDの1ライン当たりの画素数を、バーストサイズBの画素数「4」(8バイト)で割って2画素(4バイト)余る10画素(20バイト)であると仮定して説明する。つまり、印刷イメージデータPDが、N行×M列=6行×10列の例で説明する。この場合、印刷イメージデータPDの1ライン当たりのデータサイズ、つまりラスターサイズを「R」とおく。1ライン当たり10画素の例である本例では、ラスターサイズR=20バイトである。
FIG. 6 shows the data structure of the print image data PD. The print image data PD shown in FIG. 6 is generated by performing predetermined image processing by the upper
本実施形態の回転ユニット50は、回転処理における回転前の印刷イメージデータPDと回転後のヘッドイメージデータHDの格納領域において、データのラスターサイズR(行方向長)がバーストサイズBの自然数倍に一致しない場合においても、ダミーデータを不要とするためにアライン機能を有する回転処理をハードウェアで実現する。 In the rotation unit 50 of the present embodiment, the raster size R (length in the row direction) of data is a natural number times the burst size B in the storage area of the print image data PD before rotation and the head image data HD after rotation in the rotation process. Even in the case where they do not coincide with each other, a rotation process having an align function is realized by hardware in order to eliminate the need for dummy data.
図5(a)は、メインメモリー35(第1格納部35b)に格納された印刷イメージデータPDの格納状態を示し、図5(b)は、印刷イメージデータPDに回転処理(縦横変換)を施して生成されたヘッドイメージデータHDのメインメモリー35(第2格納部35c)における格納状態を示す。図5(a)では、印刷イメージデータを構成する各画素は、N行×M列のマトリクス状に配列されている。印刷イメージデータPDは、印刷ヘッド29が印刷のため主走査方向に1回移動(1パス)したときの印刷に用いられる1パス分のデータである。よって、回転処理時の印刷イメージデータPDは、ノズル1列分のノズル数(本例では180個)と同数の行数Nで、印刷ヘッド29が主走査したときに主走査方向に形成されるインクドットの最大ドット数と同数の列数Mを有する。このため、印刷イメージデータPDは、通常、数100行×数1000列ぐらいの画素数であるが、説明を簡単にするため、図5では前述のとおり、画素数6行×10列の画像データの例を示す。ここで、画素の符号「N-M」は、N行M列目の画素データを指す。なお、以下の説明では、画素1つ分のデータ単位を「セル」と呼ぶ場合もある。なお、本例の印刷ヘッド29は、1ノズル列当たり1色で4色印刷できるように4列のノズル列を有するので、印刷イメージデータPDをヘッドイメージデータHDに変換する回転処理はインク色毎に行われる。例えば回転ユニット50を色数と同数設けて並列処理したり、1つの回転ユニット50で複数色分の印刷イメージデータPDの回転処理を順番に行ったりしてもよい。
FIG. 5A shows a storage state of the print image data PD stored in the main memory 35 (
本例では、バースト転送1回分のデータサイズであるバーストサイズB(バイト)は、4画素分に相当する8バイトとする。第1格納部35bは、バーストサイズBを考慮して、行方向のサイズ(Byte)がバーストサイズの自然数倍のC・B(Byte)(但しCは自然数)に設定されている。図5において破線で囲む領域が、1回でバースト転送されるバーストサイズB(4画素分)のデータである。1回のバースト転送でバーストサイズのデータがJ回転送される。バーストサイズB分(行方向のA画素分)ずつのデータを連続してN回バースト転送することにより、A×A個分の画素データを1単位とするデータが転送される。
In this example, the burst size B (byte), which is the data size for one burst transfer, is 8 bytes corresponding to 4 pixels. In the
図5(a)に示すように、メインメモリー35(第1格納部35b)に格納された印刷イメージデータPDの1バースト目のデータ(画素データ「1-1」「1-2」「1-3」「1-4」)を回転処理後のヘッドイメージデータがメインメモリー35(第2格納部35c)に格納された格納状態で見ると、各画素データがばらばらの位置に格納されることが分かる。このように各画素データをばらばらの位置に格納するためには、メモリーアクセスが頻繁となり効率が低下する。そのため、本実施形態では、各画素データがばらばらの位置に格納される割に、メモリーアクセスが頻繁とならず効率よく回転処理が可能なハードウェアからなる縦横変換装置45(回転処理装置)を用いる。
As shown in FIG. 5A, the first burst data (pixel data “1-1”, “1-2”, “1-”) of the print image data PD stored in the main memory 35 (
図4に示す回転ユニット50は、メモリーコントローラー34に対して読出アドレスAR1とバーストサイズBと転送回数Jとを指定する。メモリーコントローラー34は、指定された読出アドレスAR1からバーストサイズBずつのデータ(A画素分)を連続してA回(J=Aの場合)転送する。これにより回転ユニット50は、A×Aの正方ブロックを第1格納部35bから読み出す。これを連続的に行って、A×Aの正方ブロックずつ読み出される。
The rotation unit 50 shown in FIG. 4 designates the read address AR1, the burst size B, and the transfer count J for the
また、回転ユニット50は、メモリーコントローラー34に対して書込アドレスAW1とバーストサイズBと転送回数Jとを指定する。メモリーコントローラー34は、指定された書込アドレスAW1からバーストサイズB(A画素分)ずつのデータを連続してA回転送する。これにより回転ユニット50は、A×Aの正方ブロックを第2格納部35cに書き込む。そして、これを連続的に行って、A×Aの正方ブロックずつ読み出される。
Further, the rotation unit 50 designates the write address AW1, the burst size B, and the transfer count J to the
本実施形態ではバーストサイズBが32バイトであり、メモリーコントローラー34が32バイトバーストを行う構成である。但し、説明を簡単にするため、前述のとおり、バーストサイズBを8バイトとする8バイトバーストを行う例で説明する。もちろん、バーストサイズは適宜設定でき、例えば16バイトバースト、24バイトバースト、64バイトバーストなどを採用することもできる。また、バースト転送回数Jも適宜設定してよい。
In this embodiment, the burst size B is 32 bytes, and the
以下、図4を用いて、回転ユニット50、メモリーコントローラー34及びSRAM80などの詳細な構成を説明する。
図4に示す回転ユニット50は、入力系として、第1アドレスコントローラー51と、入力インターフェイス(以下、「入力I/F52」と記す)と、入力バッファー53とを備える。なお、本実施形態では、第1アドレスコントローラー51と入力I/F52により、第1の転送手段の一例が構成される。
Hereinafter, detailed configurations of the rotation unit 50, the
4 includes a
第1アドレスコントローラー51は、メインメモリー35の第1格納部32bに格納された印刷イメージデータPDから読み出すべき着目画素のリードアドレスAR0を生成する。そして、第1アドレスコントローラー51は、生成したリードアドレスAR0を入力I/F52へ送る。
The
入力I/F52は、第1アドレスコントローラー51からのリードアドレスAR0を基に読出アドレスAR1を生成するアドレス生成部60を備えている。そして、入力I/F52は、メモリーコントローラー34に対して読出アドレスAR1を指定してバースト転送でデータを読み出すバーストリードを要求する。また、入力I/F52は、リードアドレスAR0をポインターコントローラー54に送る。
The input I /
メモリーコントローラー34は、バーストリードを行う機能を持つ読出転送部81(バーストリード処理部)を備えている。読出転送部81は、入力I/F52からバーストリード要求を受け付けると、読出アドレスAR1からバーストサイズB分のデータD1を順次読み出して、入力I/F52へバースト転送する。本例では、バーストサイズBは4画素分のデータサイズである。1回のバーストリード要求で4つの読出アドレスAR1を指定して連続4回のバースト転送が行われる。つまり、読出転送部81は、バーストリード要求で指定された読出アドレスAR1からバーストサイズB(4画素)分ずつ4回読出して回転ユニット50の入力I/F52へバースト転送する。
The
入力I/F52は、バースト転送されてきたデータD1を入力すると、データD1の読み出しに使用された対応するリードアドレスAR0と共にデータD1を入力バッファー53に格納する。
When the input I /
また、ポインターコントローラー54は、SRAM80へのデータD1の書込位置(書き込み先頭アドレス)を指すライトポインターWPを生成する第1ポインター生成部61と、SRAM80に書き込まれたデータD1からデータD2を構成する4つの画素の読出位置を指すリードポインターRPを生成する第2ポインター生成部62とを備えている。ライトポインターWPは、SRAM80の行方向におけるデータD1の書込開始位置を指すポインターである。また、リードポインターRPは、データD1のうち読出し対象のセルを指すポインターである。第1ポインター生成部61は、SRAM80にデータD1が書き込まれる度に、ライトポインターWPを次の書込開始位置にシフトさせる。本例では、SRAM80の行方向サイズが2・Bバイトの例で説明するものとし、2・Bバイトである場合、ライトポインターWPは、2つの書込位置を順番に切り換わる。
The
また、第2ポインター生成部62は、SRAM80内の各データD1のうち読み出すべきセルを指すリードポインターRPをリードアドレスAR0から生成する。第2ポインター生成部62は、各データD1に対応するリードアドレスAR0の下位3ビットを、行毎のリードポインターRPの位置として求める。
Further, the
SRAMコントローラー55は、入力バッファー53に格納されたデータD1を順次読込んでSRAM80に書き込む処理を行う書込部63と、SRAM80に格納されたデータD1からリードポインターRPの指すセルを読み出す読出部64とを備える。
The
また、SRAMコントローラー55は、データD1のうちリードポインターRPの指すセルが、印刷イメージデータPDに属するセルでない場合にそのセルをマスクするための第1フラグF1を生成する第1フラグ生成部65を備える。印刷イメージデータPDの開始アドレス(先頭アドレス)とデータサイズが既知であるため、第1フラグ生成部65は、リードアドレスAR0から印刷イメージデータPDに属さない不定のセルを識別可能となっている。そして、第1フラグ生成部65は、リードポインターRPの指すセルが、印刷イメージデータPDの画素である場合には、そのセルに第1フラグF1としてマスクしない旨の「0」を設定し、印刷イメージデータPDの画素ではない不定のセルである場合には、その不定のセルに第1フラグF1としてマスクする旨の「1」を設定する。リードポインターRPは、各データD1に1つずつあるので、L個のリードポインターRPに対応する第1フラグF1を、F1K(但しKは、0,1,2,…L−1;但しLは2以上の自然数))とおく。ここで、Lは、データD1のライン数である。データD1が4ラインの本例では、4つのリードポインターRPが指す4つのセルには、第1フラグF1として、それぞれF1(0),F1(1),F1(2,F1(3)が設定される。SRAMコントローラー55は、読出部64が読み出したL個(本例では4個)のセルと第1フラグF1(K)(但しKは、0,1,2,…L−1)とをそれぞれ対応付けて出力バッファー56へ出力する。
In addition, the
回転ユニット50は、出力系として、出力バッファー56と、第2アドレスコントローラー57と、出力インターフェイス(以下、「出力I/F58」と記す)とを備えている。なお、本実施形態では、第2アドレスコントローラー57と出力I/F58により、書込手段の一例が構成される。
The rotation unit 50 includes an
第2アドレスコントローラー57は、メインメモリー35の第2格納部35cにヘッドイメージデータHDの一部として格納すべきセルのライトアドレスAW0を生成する。つまり、SRAM80から読み出したL個のセルをメインメモリー35の第2格納部35cに書き込むためのライトアドレスAW0を生成する。
The
また、第2アドレスコントローラー57は、ライトアドレスAW0を基にミスアラインであるか否かを判定する判定部66を備えている。ここで、ミスアラインとは、書込み位置が前回の書込み位置と連続せず間に空きを置いて書込む必要があり、そのまま書き込むと本来空けるべき位置に書き込まれてしまうことを指す。第2アドレスコントローラー57は、ライトアドレスAW0の下位3ビットが「000」(2進数)であればミスアラインではないと判定し、「000」以外の値、つまり下位3ビットのうちいずれかのビットに「1」が存在すればミスアラインと判定する。
Further, the
また、第2アドレスコントローラー57は、第2フラグF2を生成する第2フラグ生成部67を備えている。第2フラグ生成部67は、SRAM80から読み出されたセル(画素)の配列順が不適切である場合に、セルを適切な配列順に並び替えるミスアライン処理に用いるために第2フラグF2を生成する。第2フラグF2も、第1フラグF1と同様のマスクフラグであり、マスクしない旨の「0」と、マスクする旨の「1」のフラグ値をとる。第2フラグ生成部67は、値が「0」の第2フラグF2を生成する。第2アドレスコントローラー57は、ライトアドレスAW0と第2フラグF2とミスアライン判定結果とを出力I/F58へ送る。なお、判定部66を出力I/F58に設け、第2アドレスコントローラー57からのライトアドレスAW0を基に出力I/F58内の判定部66がミスラインであるか否かを判定する構成としてもよい。
The
出力I/F58は、ライトアドレスAW0を基に書込アドレスAW1を生成するアドレス生成部68と、ミスアライン処理のためのセルの配列順変更のためにセルをシフトさせるシフト処理部69と、第1フラグF1と第2フラグF2を用いて第3フラグF3を生成する第3フラグ生成部70とを備えている。
The output I /
シフト処理部69は、ミスアライン処理のためのセルの配列順変更のためにセルをフラグF1,F2と共にシフトさせるシフト処理を行う。第3フラグ生成部70は、シフト処理でシフトさせた着目画素以外の画素に対応する第2フラグF2を「0」から「1」に変更する処理と、第1フラグF1と変更後の第2フラグF2との論理和を演算する論理和演算(OR演算)とを行って、第3フラグF3を生成する。ここで、第3フラグF3は、第1フラグF1や第2フラグF2と同様のマスクフラグであり、マスクしない旨の「0」と、マスクする旨の「1」のフラグ値をとる。
The
そして、出力I/F58は、メモリーコントローラー34に対して書込アドレスAW1を指定してバースト転送でデータD2を書き込むバーストライトを要求する。このとき、第3フラグF3が付されたデータD2がバーストライト要求される。
The output I /
図4に示すメモリーコントローラー34は、バーストライト要求を受け付けると、データD2をバースト転送して、メインメモリー35の第2格納部35cにおける指定の書込アドレスAW1にデータD2を書き込む書込転送部82を備える。書込転送部82は、データD2に付された第3フラグF3が「0」の画素データについては書込み(上書き)を許容し、第3フラグF3が「1」の画素データについてはマスクしてその書込み(上書き)を禁止すマスク処理部82Aを備えている。
When the
次に、回転ユニット50がSRAM80を用いて行う回転処理について説明する。
ラスターサイズRをオフセット量offsetとおくと、その値が20バイトである本例では、offsetは16進数で「0x14」になる。
Next, a rotation process performed by the rotation unit 50 using the
If the raster size R is set as an offset amount offset, in the present example in which the value is 20 bytes, the offset is “0x14” in hexadecimal.
ここで、図5(a)に示す例では、第1格納部35bの行方向サイズがバーストサイズBに合わせてその自然数倍のC・B(Byte)に設定されており、一方の印刷イメージデータPDのラスターサイズRが、バーストサイズBで割ると余りの画素ができる値となっている。この場合、図6に示す印刷イメージデータPDの1列目のN個(本例ではN=6)の画素データ「1-1」「2-1」「3-1」…「6-1」は、メインメモリー35の第1格納部35bに格納された状態では、1ライン進む毎に後方へ2個(4バイト)ずつずれる。このため、同一列に属する画素「1-1」「2-1」「3-1」…「6-1」が、バーストサイズBずつ転送される各データD1における4画素中の位置が同じにならない。そのため、従来技術のように、同一列に属する連続する4画素を含む4×4正方ブロックをSRAMでただ回転させるだけでは、縦横変換できない。本例の回転ユニット50は、メモリーコントローラー34の画素(セル)単位での上書きの禁止機能を利用することにより、従来技術のように印刷イメージデータPDにダミーデータを追加することなく、かつ縦横変換処理の効率の低下を招く頻繁なメモリーアクセスを回避しつつ、印刷イメージデータPDをヘッドイメージデータHDに変換する。なお、バーストサイズBに満たない余りの画素数は2個以外の値でもよい。もちろん、本例の縦横変換装置45は、余りの画素数が「0」となる印刷イメージデータPDも縦横変換可能である。
Here, in the example shown in FIG. 5A, the row direction size of the
SRAM80はバーストサイズB及びバースト転送回数Jを考慮し、16バイト×8ライン×2面分用意する。一般化すれば、行方向にバーストサイズBの自然数Q倍の長さで、かつバースト転送回数Jの自然数S倍のライン数を格納可能な格納サイズを1面とし、これを2面用意する。
The
第1アドレスコントローラー51は、以下のようにリードアドレスAR0を求める。図6に示すように、印刷イメージデータPDの先頭画素、つまり1行(1ライン)・1列(1ラスター)目の画素データの格納位置を開始アドレスADst(先頭アドレス)とおく。また、ライン(行)が次の行にオフセットされる値(オフセット量)を「offset」とおく。このオフセット量offsetは、ラスターサイズRに等しい。これらの情報は、CPU31により第1アドレスコントローラー51に設定される。第1アドレスコントローラー51は、印刷イメージデータPD中のnライン目の先頭アドレスAD0を、以下の式で演算する。
The
AR0=ADst+offset*(n−1) … (1)
ここで、開始アドレスADstは、第1格納部35bにおいて印刷イメージデータPDが格納される先頭アドレスであり、任意のアドレスである。本例では説明を簡単にするため、開始アドレスADstを「0x0000」とする。
AR0 = ADst + offset * (n−1) (1)
Here, the start address ADst is a leading address where the print image data PD is stored in the
第1アドレスコントローラー51は、上記(1)式に基づいてリードアドレスAR0を生成する。このリードアドレスAR0は、メインメモリー35において、印刷イメージデータPDの1列目の画素データ、つまり「1-1」「2-1」「3-1」「4-1」「5-1」「6-1」の位置を指すアドレスである。これらの1列目の画素データ「1-1」「2-1」「3-1」「4-1」「5-1」「6-1」を行方向に配列するように縦横変換する。これらのライン先頭の画素データを選択するために、第1アドレスコントローラー51はリードアドレスAR0を生成する。つまり、ライン先頭の画素を含むバーストサイズB(4画素分)のデータD1が転送対象として選択されるように、第1アドレスコントローラー51はライン先頭の画素データの位置するアドレスをリードアドレスAR0として求める。
The
第1アドレスコントローラー51が生成するリードアドレスAR0は、あくまでライン先頭の画素(1列目の画素)のアドレスであり、これはライン先頭画素が必ずしもバースト転送されるデータD1(図5(a)における破線枠で囲まれたデータ)の先頭画素ではないので、データD1の先頭アドレスと必ずしも一致していない。第1アドレスコントローラー51は、生成したリードアドレスAR0を入力I/F52に送る。
The read address AR0 generated by the
入力I/F52は、第1アドレスコントローラー51から受け取ったリードアドレスAR0の下位3ビットをマスクすることにより読出アドレスAR1を演算する。読出アドレスAR1は、図5(a)の印刷イメージデータPDにおいて、破線で囲ったバーストサイズBのデータD1の先頭アドレスを指す。すなわち、バーストサイズBを2のm乗で表したときの指数mを用いて、リードアドレスAR0下位mビットをマスクして、読出アドレスAR1を生成する。ここで、リードアドレスAR0の下位3ビットをマスクした値は、その画素データが属するバーストサイズのデータD1(図5(a)の破線領域)の先頭アドレスを示し、下位3ビットは、そのデータD1の先頭アドレスを基準(0)としたときに対象の画素が、先頭アドレスから何バイト目に位置するかを示す。そして、入力I/F52は、メモリーコントローラー34に対して読出アドレスAR1を指定して、メインメモリー35からデータD1のバースト転送を要求するバーストリード要求を行う。また、入力I/F52は、第1アドレスコントローラー51から受け取ったリードアドレスAR0をポインターコントローラー54に渡す。
The input I /
メモリーコントローラー34の読出転送部81は、入力I/F52から読出アドレスAR1とともにバーストリード要求を受け付けると、メインメモリー35の読出アドレスAR1からバーストサイズB分のデータD1を読み出し、入力I/F52へバースト転送する。入力I/F52は、メモリーコントローラー34から転送され入力したデータD1をリードアドレスAR0と共に入力バッファー53に格納する。
When the read
一方、ポインターコントローラー54では、第1ポインター生成部61がライトポインターWPを生成し、第2ポインター生成部62がリードポインターRPを生成する。ライトポインターWPとは、SRAM80へのデータD1の書込位置(書込アドレス)を指すポインターである。第1ポインター生成部61は、4×4画素の正方ブロック(4ライン分のデータD1)が書き込まれる度に、ライトポインターWPをバーストサイズB(4画素)分進んだ次の書込位置にシフトさせる。一方、リードポインターRPは、SRAM80に格納されたデータD1の中からその先頭アドレスを基準として読み出すべき画素データの相対位置(先頭アドレスから何バイト目)を指すポインターである。第2ポインター生成部62は、リードアドレスAR0の下位mビット(本例では下位3ビット)をリードポインターRPの値とする。
On the other hand, in the
次に、縦横変換装置45の作用を図面に基づいて説明する。
まず、図7及び図8を用いて、メインメモリー35の第1格納部35bに格納された印刷イメージデータPDからバーストサイズBずつのデータD1のバーストリード(バースト転送)及びバーストリードしたデータD1をSRAM80へ書込む処理を説明する。
Next, the operation of the vertical /
First, referring to FIG. 7 and FIG. 8, burst read (burst transfer) of data D1 in burst size B and burst read data D1 from print image data PD stored in the
メインメモリー35の第1格納部35bには、図7(a)に示す状態に印刷イメージデータPDが格納されている。CPU31は、縦横変換装置45に対して、開始アドレスADstとオフセット量offset(=ラスターサイズR)を与える。第1アドレスコントローラー51は、開始アドレスADstとオフセット量offset(=R)とを用いて、前記(1)式に基づいて、リードアドレスAR0=ADst+offset*(n−1)(nはライン番号)を求める。
Print image data PD is stored in the
図7(a)において印刷イメージデータPDの1列目に属する画素(同図に薄い網掛が施された6個の画素)のうち最初の4ライン分の画素データ「1-1」「2-1」「3-1」「4-1」のリードアドレスAR0が、それぞれADst(0x0000)、ADst+offset(0x0014)、ADst+offset*2(0x0028)、ADst+offset*3(0x003C)が求められる。そして、入力I/F52は、メモリーコントローラー34に対して、リードアドレスAR0の下位3ビットをマスクして得た読出アドレスAR1を指示する。すなわち、メモリーコントローラー34に対しては、読出アドレスAR1が、「0x0000」、「0x0010」、「0x0028」、「0x0038」(16進数)として指示される。この結果、その指示された各読出アドレスAR1から図7(a)に破線枠で囲むバーストサイズB分の4つのデータD1が順番に回転ユニット50へバーストリードされる。
In FIG. 7A, the pixel data “1-1” and “2-” for the first four lines among the pixels belonging to the first column of the print image data PD (six shaded pixels in FIG. 7). For the read addresses AR0 of “1”, “3-1”, and “4-1”, ADst (0x0000), ADst + offset (0x0014), ADst + offset * 2 (0x0028), and ADst + offset * 3 (0x003C) are obtained, respectively. The input I /
これに前後して、ポインターコントローラー54では、SRAM80のライトポインターWPの初期値を求めるとともに、リードアドレスAR0を基にその下位3ビットをSRAM80のリードポインターRPの初期値として求め、これをSRAMコントローラー55に送る。図7(b)において下向きの太線矢印で示すライトポインターWPの指す位置に各データD1を上側の行から順番(行アドレス「+0000」「+0010」「+0020」「+0030」の順番)に書き込む。図7(b)において、斜め太線矢印がリードポインターRPの位置である。4つのリードアドレスAR0の下位3ビットで示される4つのリードポインターRPは、各データD1において1列目の画素「1-1」「2-1」「3-1」「4-1」の位置を指している。すなわち、各データD1には上側の行から順番に、リードポインターRPとして、RP1=0x0、RP2=0x4、RP3=0x0、RP4=0x4が設定される。
Before and after this, the
また、SRAMコントローラー55によって、各データD1にはそれぞれを構成する画素毎に第1フラグF1が付される。セルが印刷イメージデータPDの有効ラインに属する画素データであれば第1フラグF1はマスクしない旨の「0」が付され、セルが有効ラインに属さなければ第1フラグF1はマスクする旨の「1」が付される。図7(b)の例では、4つのデータD1は全て4個の画素を有するので、各データD1には上側の行から順番に、それぞれを構成する各画素に、第1フラグF1(0=0、F1(1=0、F1(2=0、F1(3=0が付される。つまり、行アドレス「+0000」のデータD1には各画素に第1フラグF1(0=0が付され、行アドレス「+0010」のデータD1には各画素に第1フラグF 1(1=0が付され、行アドレス「+0020」のデータD1には各画素に第1フラグF1(2=0が付され、さらに行アドレス「+0030」のデータD1には各画素に第1フラグF1(3=0が付される。このように1回目のバーストリードによって、SRAM80にはライトポインターWPの指す位置に図7(b)に示す4×4画素の正方ブロックが格納される。各データD1の書込みが終わると、ライトポインターWPは図7(b)に太線矢印で示す書込位置「+0」から、同図に二点鎖線の矢印で示す書込位置「+8」にシフトする。
Further, the
次に2回目のバーストリードが行われる。図8(a)において、印刷イメージデータPDの1回目のバーストリードの対象になった画素のリードアドレスAR0にバーストサイズB分の「8」を加算してリードアドレスAR0が演算される。すなわち、リードアドレスAR0が、それぞれADst+8(0x0008)、ADst+offset+8(0x001C)、ADst+offset*2+8(0x0030)、ADst+offset*3+8(0x0044)が求められる。そして、入力I/F52は、メモリーコントローラー34に対して、リードアドレスAR0の下位3ビットをマスクした読出アドレスAR1を指示する。すなわち、メモリーコントローラー34に対しては、読出アドレスAR1が、「0x0008」、「0x0018」、「0x0030」、「0x0040」(16進数)として指示される。この結果、その指示された各読出アドレスAR1から図8(a)に破線枠で囲むバーストサイズB分の4つのデータD1が順番に回転ユニット50へバーストリードされる。
Next, the second burst read is performed. In FIG. 8A, the read address AR0 is calculated by adding “8” for the burst size B to the read address AR0 of the pixel that is the target of the first burst read of the print image data PD. That is, ADst + 8 (0x0008), ADst + offset + 8 (0x001C), ADst + offset * 2 + 8 (0x0030), and ADst + offset * 3 + 8 (0x0044) are obtained, respectively. The input I /
そして、2回目にバーストリードされた各データD1は、図8(b)に破線枠で示すように、書込位置「+8」に上側の行から順番(行アドレス「+0000」「+0010」「+0020」「+0030」の順番)に書き込まれる。 Then, each data D1 burst-read for the second time is written in order from the upper row at the write position “+8” (row addresses “+0000” “+0010”), as indicated by the dashed frame in FIG. 8B. In the order of “+0020” and “+0030”).
また、SRAMコントローラー55によって、各データD1にはそれぞれを構成する画素毎に第1フラグF1が付される。図8(b)の例では、4つのデータD1は全て4個の画素を有するので、各データD1には上側の行から順番に、それぞれを構成する各画素に、第1フラグF1(1)=0、F1(2)=0、F1(3)=0、F1(4)=0が付される。つまり、行アドレス「+0000」のデータD1には各画素に第1フラグF1(1)=0が付され、行アドレス「+0010」のデータD1には各画素に第1フラグF1(2)=0が付され、行アドレス「+0020」のデータD1には各画素に第1フラグF1(3)=0が付され、さらに行アドレス「+0030」のデータD1には各画素に第1フラグF1(4)=0が付される。このように2回目のバーストリードによって、SRAM80にはライトポインターWPの指す位置に図8(b)に示す4×4画素の正方ブロックが格納される。各データD1のSRAM80への書込みが終わると、ライトポインターWPは図8(b)に太線矢印で示す書込位置「+8」から、同図に二点鎖線の矢印で示す書込位置「+0」にシフトする。
Further, the
なお、印刷イメージデータPDの1ライン目〜4ライン目を読み出す場合は、その読み出すライン数が4の倍数なので、第1フラグF1はリセット(=0)のままである。しかし、後述する5ライン目と6ライン目を読み出す場合、その読み出すライン数が4の倍数にならず半端なラインはダミーデータとなり、第1フラグF1がセット(=1)される。つまり、読み出すライン数が、1回のバーストリード要求で実施されるバースト転送回数であるJ(本例ではJ=4)の倍数にならない場合、転送すべきライン以外の半端なラインはダミーデータとなり、このダミーデータのセルをマスクする第1フラグF1が有効な値「1」にセットされる。 Note that when the first to fourth lines of the print image data PD are read, the number of lines to be read is a multiple of 4, so the first flag F1 remains reset (= 0). However, when the fifth line and the sixth line, which will be described later, are read, the number of lines to be read is not a multiple of 4, and the odd line becomes dummy data, and the first flag F1 is set (= 1). In other words, if the number of lines to be read is not a multiple of J (J = 4 in this example), which is the number of burst transfers performed in one burst read request, the odd lines other than the lines to be transferred are dummy data. The first flag F1 for masking the dummy data cell is set to a valid value “1”.
次に、SRAMコントローラー55の読出部64がSRAM80からデータを読み出す処理について図9を用いて説明する。読出部64は、図9(a)に示すように、リードポインターRP1〜RP4が指す画素データを読み出し、出力バッファー56へ転送する。すなわち、図9(a)に示す1回目の読出しでは、画素データ「1-1」「2-1」「3-1」「4-1」が読み出され、出力バッファー56へ転送される。画素データを読み出した後、リードポインターRPをカウントアップする。その結果、リードポインターRPが図9(b)に示す位置に1つ進む。
Next, a process in which the
図9(b)に示す2回目の読出しでは、リードポインターRP1〜RP4が指す画素データを読み出し、出力バッファー56へ転送する。すなわち、画素データ「1-2」「2-2」「3-2」「4-2」が読み出され、出力バッファー56へ転送される。画素データを読み出した後、リードポインターRPをカウントアップする。その結果、リードポインターRPが図9(c)に示す位置に1つ進む。図9(c)に示すように、いずれかのラインのリードポインターRPがライトポインターWPに追いついた場合は、読み出しを一旦停止する。その後、メインメモリー35からデータがロードされてライトポインターWPが進めば、読出部64による画素データの読み出しを再開する。
In the second reading shown in FIG. 9B, the pixel data indicated by the
図10(a)に示すように、メインメモリー35から転送されたデータD1が、SRAM80のそのときのライトポインターWPの指す書込位置に書き込まれると、ライトポインターWPが進む。ライトポインターWPが進めばSRAM80からの画素データの読み出しが再開される。そして、読出部64が、図10(a)に示すように、リードポインターRP1〜RP4が指す画素データを読み出し、出力バッファー56へ転送する。すなわち、画素データ「1-3」「2-3」「3-3」「4-3」が読み出され、出力バッファー56へ転送される。こうして各ラインのリードポインターRPを進めながら、リードポインターRPの指す画素データを読み出す処理を、4ライン分の画素データを全て処理するまで繰り返す。
As shown in FIG. 10A, when the data D1 transferred from the
例えば図10(a)までの読出処理によって、図10(b)に示すように、1回目の読み出しで画素データ「1-1」「2-1」「3-1」「4-1」が読み出され、2回目の読み出しで画素データ「1-2」「2-2」「3-2」「4-2」が読み出され、さらに3回目の読み出しで画素データ「1-3」「2-3」「3-3」「4-3」が読み出される。そして、各回の読出しデータには、各画素データに第1フラグF1(0)〜F1(3)が付される。1ライン目〜4ライン目であるので、このときの第1フラグF1(0)〜F1(3)はマスクしない旨の値「0」になる。 For example, as shown in FIG. 10B, pixel data “1-1”, “2-1”, “3-1”, and “4-1” are read out by the first reading by the reading process up to FIG. The pixel data “1-2”, “2-2”, “3-2”, and “4-2” are read out in the second reading, and the pixel data “1-3” and “4-2” are read out in the third reading. 2-3, 3-3, and 4-3 are read out. The first flag F1 (0) to F1 (3) is added to each pixel data for each read data. Since the first line to the fourth line, the first flags F1 (0) to F1 (3) at this time have a value “0” indicating that they are not masked.
SRAMコントローラー55による4画素分ずつの読出しデータD2は、各画素に対応する第1フラグF1(0)〜F1(3)と共に出力バッファー56に格納される。出力I/F58は、出力バッファー56から読出しデータD2を第1フラグF1(0)〜F1(3)と共に入力する。
The read data D2 for every four pixels by the
第2アドレスコントローラー57は、メインメモリー35の第2格納部35cへデータD2を書き込む際のライトアドレスAW0を生成する。第2アドレスコントローラー57には、CPU31から第2格納部35cに対するデータD2を書き込む際の開始アドレスADst(先頭番地)とオフセット量OFSとが与えられている。第2アドレスコントローラー57は、1回目のライトアドレスAW0を開始アドレスADstとし、2回目以降においては現在のライトアドレスAW0にオフセット量OFSを加えて、次のライトアドレスAW0を演算する。ここで、オフセット量OFSは、処理ライン数×2で与えられる。本例では、ノズル数「6」なので処理ライン数が「6」となり、その2倍の「0x000C」がオフセット量OFS(=0x000C)となる。
The
また、第2アドレスコントローラー57では、判定部66がライトアドレスAW0を基にミスアラインであるか否かを判定する。判定部66はライトアドレスAW0の下位mビットが全て「0」であるとミスアラインではないと判定し、下位mビットのいずれかのビットに「1」が存在するとミスアラインであると判定する。例えば図10(b)の1回目読出しデータD2(=「1-1」「2-1」「3-1」「4-1」の画素データ)のときには、ライトアドレスAW0=0x0000でありその下位3ビットが「000」なので、判定部66によりミスアラインではないと判定される。第2アドレスコントローラー57は、ライトアドレスAW0と第2フラグF2とミスアライン判定結果とを出力I/F58へ送る。
In the
出力I/F58のアドレス生成部68は、ライトアドレスAW0の下位3ビットをマスクして、書込アドレスAW1を生成する。このとき、ライトアドレスAW0=0x0000なので、書込アドレスAW1=0x0000が求められる。そして、出力I/F58では、第3フラグ生成部70が、第1フラグF1(0)〜F1(3)(=「0000」)と第2フラグF2(0)〜F2(3)(=「0000」)の論理和演算(OR演算)を行って、第3フラグF3(0)〜F3(3)(=「0000」)を生成する。このとき、ミスアライン判定結果からミスアラインではないので、シフト処理部69によるシフト処理は行われない。
The
出力I/F58は、メモリーコントローラー34に対して、書込アドレスAW1を指定して、第3フラグF3(0)〜F3(3)付きのデータD2のバーストライトを要求する。この結果、図11に示すように、1回目読出しデータD2(=「1-1」「2-1」「3-1」「4-1」の画素データ)が、第2格納部35cの開始アドレスADstに書き込まれる。このようにミスアラインとならない場合は、SRAM80からの画素の読出し順のままデータD2はバースト転送され、第2格納部35cの書込アドレスAW1に書き込まれる。
The output I /
2回目以降の読出しデータD2を書き込む際の処理は次のように行われる。第2アドレスコントローラー57は、現在のリードアドレスAR0にオフセット量OFSを加算して、次のライトアドレスAW0を求める。このため、2回目の読出しデータD2を書き込む際は、リードアドレスAR0=ADst+OFS=「0x000C」が求められる。また、判定部66は、ライトアドレスAW0(=「0x000C」)の下位3ビットが「100」(2進数)となり、いずれかのビットに「1」が存在するので、ミスアラインと判定する。ミスアラインの場合は2回に分けてバーストライト処理を行う。
The process for writing the second and subsequent read data D2 is performed as follows. The
まずミスアラインと判定した場合は、このとき第2格納部35cの次の書込アドレスAW1に書き込むべき画素データ以外の画素データの上書きを防ぐため、第2フラグ生成部67が第2フラグF2(0)〜F2(3)を生成する。この時点では第2フラグF2(0)〜F2(3)は、マスク無し状態(値「0」)で生成される。第2アドレスコントローラー57は、ライトアドレスAW0と第2フラグF2(0)〜F2(3)とミスアライン判定結果とを、出力I/F58へ送る。
First, when it is determined as misalignment, the second
以下、図12及び図13に基づいて、ミスアライン処理を説明する。ミスアライン処理では2回に分けてバーストライト処理(書込処理)が行われる。まず図12に基づいてミスアライン処理の1回目の書込み処理を説明する。 Hereinafter, the misalignment process will be described with reference to FIGS. In the misalignment process, burst write process (write process) is performed in two steps. First, the first writing process of the misalignment process will be described with reference to FIG.
出力I/F58は、図12(a)に示すように、出力バッファー56から入力した第1フラグF1(0)〜F1(3)付きの2回目読出しデータD2に、第2アドレスコントローラー57からの第2フラグF2(0)〜F2(3)を付す。今回のライトアドレスAW0は「0x000C」である。アドレス生成部68は、ライトアドレスAW0=0x000Cの下位3ビットをマスクして、書込アドレスAW1=0x0008を生成する。
As shown in FIG. 12A, the output I /
出力I/F58では、ミスアライン判定結果がミスアラインである場合、シフト処理部69がシフト処理を行う。シフト処理部69は、ライトアドレスAW0の下位mビットをシフト値にして、データD2を構成する4つの画素データをシフトさせるシフト処理を行う。図12(b)に示すように、ライトアドレスAW0の下位3ビットをシフト値にしてシフト処理を行う。ライトアドレスAW0が「0x000C」でその下位3ビットは「100」(=4バイト)であるので、シフト処理部69は、図12(b)に示すように、データD2を構成する4つの画素データを、4バイト(2画素)分だけ図12(b)における右方向(SRAM80からの画素データ読出し順序で後側)へシフトさせる。このとき、右方向へシフトアウトされた画素データ「3-2」「4-2」は、左方向からシフトインされる。シフト処理の結果、画素データ「1-2」「2-2」「3-2」「4-2」が、図12(c)に示すように画素データ「3-2」「4-2」「1-2」「2-2」の順番になる。この画素データのシフト処理に伴って、第3フラグ生成部70により、第1フラグF1(0)〜F1(3)と第2フラグF2(0)〜F2(3)もシフト処理される。第1フラグF1(0)〜F1(3)は、シフト後も全て「0」である。一方、第2フラグF2(0)〜F2(3)は、シフトアウトされた第2フラグF2(2),F2(3)が「1」(マスク)としてシフトインされる(図12(c)参照)。この第2フラグF2のシフトインのときに、「0」(マスク無し)から「1」(マスク有り)に変更する処理は、第3フラグ生成部70が行う。
In the output I /
さらに第3フラグ生成部70は、シフト処理後の第1フラグF1(0)〜F1(3)と第2フラグF2(0)〜F2(3)との論理和演算(OR演算)を行う。この論理和演算の結果、図12(c)に示すように、第3フラグF3(0)〜F3(3)(=「1100」)が生成される。そして、出力I/F58は、メモリーコントローラー34に対して、書込アドレスAW1(=0x0008)を指定して、第3フラグF3(0)〜F3(3)付きのシフト後のデータD2のバーストライトを要求する。メモリーコントローラー34の書込転送部82は、バーストライト要求を受け付けると、書込アドレスAW1にシフト後のデータD2を書き込むに当たり、マスク処理部82Aにマスク処理を行わせる。マスク処理部82Aは、第3フラグF3が「1」である画素データ「3-2」「4-2」をマスクするとともに、第3フラグF3が「0」である画素データ「1-2」「2-2」をマスクしない。このため、図12(d)に示すように、第2格納部35cの書込アドレスAW1には、画素データ「3-2」「4-2」は上書きされず(図12(d)では「dqm」と記載)、画素データ「1-2」「2-2」が上書きされる。この結果、画素データ「1-2」「2-2」は、画素データ「4-1」に対して2画素(つまり画素「5-1」「6-1」)分空けた正しい位置に書き込まれる。
Further, the third flag generation unit 70 performs a logical OR operation (OR operation) between the first flags F1 (0) to F1 (3) and the second flags F2 (0) to F2 (3) after the shift process. As a result of this logical sum operation, as shown in FIG. 12C, third flags F3 (0) to F3 (3) (= “1100”) are generated. Then, the output I /
続いてミスアライン処理の2回目の書込み処理を図13に基づいて説明する。第2アドレスコントローラー57はミスアライン処理1回目のライトアドレスAW0=0x000Cに、バーストサイズB(=「0x0008」)を加えてミスアライン処理の2回目のライトアドレスAW0=0x0014を生成する。アドレス生成部68は、今回のライトアドレスAW0=0x0014の下位3ビット「100」(2進数)をマスクして、書込アドレスAW1=0x0010を生成する。
Next, the second writing process of the misalignment process will be described with reference to FIG. The
このミスアライン処理の2回目では、図13(a)に示すように、シフト後の2回目読出しデータD2及びシフト後の第1フラグF1(0)〜F1(3)を用いると共に、第2フラグF2(0)〜F2(3)はミスアライン処理の1回目の第2フラグF2(0)〜F2(3)をビット反転させ、「0011」にする。そして、第3フラグ生成部70は、第1フラグF1(0)〜F1(3)と第2フラグF2(0)〜F2(3)との論理和演算(OR演算)を行う。この論理和演算の結果、図13(b)に示すように、第3フラグF3(0)〜F3(3)(=「0011」)が生成される。そして、出力I/F58は、メモリーコントローラー34に対して、書込アドレスAW1(=0x0010)を指定して、第3フラグF3(0)〜F3(3)付きのデータD2のバーストライトを要求する。メモリーコントローラー34の書込転送部82は、バーストライト要求を受け付けると、書込アドレスAW1にデータD2を書き込むに当たり、マスク処理部82Aにマスク処理を行わせる。マスク処理部82Aは、第3フラグF3が「0」である画素データ「3-2」「4-2」をマスクせず、第3フラグF3が「1」である画素データ「1-2」「2-2」をマスクする。このため、図13(c)に示すように、第2格納部35cの書込アドレスAW1には、画素データ「3-2」「4-2は上書きされ、画素データ「1-2」「2-2」は上書きされない(図13(c)では「dqm」と記載)。
In the second misalignment process, as shown in FIG. 13A, the second read data D2 after the shift and the first flags F1 (0) to F1 (3) after the shift are used, and the second flag F2 is used. (0) to F2 (3) bit-invert the second flag F2 (0) to F2 (3) for the first misalignment process to “0011”. Then, the third flag generation unit 70 performs a logical sum operation (OR operation) of the first flags F1 (0) to F1 (3) and the second flags F2 (0) to F2 (3). As a result of this logical sum operation, as shown in FIG. 13B, third flags F3 (0) to F3 (3) (= “0011”) are generated. Then, the output I /
そして、3回目以降の読出しデータD2について、同様の処理を繰り返す。1ライン目〜4ライン目のデータD2の書込み処理を終えると、メインメモリー35の第2格納部35cには、図13(d)に示すように、データD2中の画素データが縦横変換された場合の適切な位置に書き込まれる。
Then, the same processing is repeated for the third and subsequent read data D2. When the writing process of the data D2 of the first line to the fourth line is finished, the pixel data in the data D2 is converted into the
次に残りライン数が4の倍数でない場合、つまり図14に示す例では残りライン数が破線枠で囲む5ライン目〜6ライン目の2ラインである場合の処理について説明する。まずメインメモリー35の第1格納部35bからのデータD1の読出し(バーストリード)処理及びSRAM80からの画像データの読出し処理を説明する。
Next, processing when the number of remaining lines is not a multiple of 4, that is, in the example shown in FIG. 14, when the number of remaining lines is two lines from the fifth line to the sixth line surrounded by a broken line frame will be described. First, a process of reading data D1 from the
図15(a)に示す第1格納部35bにおいて着目画素「5-1」「6-1」を含む破線枠で囲まれた各データD1を読み出す。このとき、第1アドレスコントローラー51は、リードアドレスAR0=ADst+offset*4(=0x0050)とAR0=ADst+offset*5(=0x0064)を求める。入力I/F52のアドレス生成部60は、リードアドレスAR0の下位3ビットをマスクして、読出アドレスAR1=0x0050,0x0060を演算する。そして、入力I/F52は、メモリーコントローラー34に対して読出アドレスAR1を指定してバーストリードを要求する。メモリーコントローラー34の読出転送部81は、メインメモリー35の第1格納部35bの指定された読出アドレスAR1からデータD1を順次読出して回転ユニット50にバースト転送する。入力I/F52は、メモリーコントローラー34からバースト転送されたデータD1を入力バッファー53に格納する。
In the
そして、ポインターコントローラー54の第1ポインター生成部61は、SRAM80へのデータD1の書込位置を指すライトポインターWPを生成する。SRAMコントローラー55の書込部63は、ライトポインターWPの指す書込位置にデータD1を書き込む。
Then, the
ポインターコントローラー54の第2ポインター生成部62は、リードアドレスAR0の下位3ビットをSRAM80のリードポインターRPの初期値として生成する。但し、第1格納部35bにおいて画素データが存在しない箇所では、リードポインターRPの初期値は「0x0」にされる。よって、リードポインターRPの初期値は、RP1=0x0,RP2=0x4,RP3=0x0,RP4=0x0として演算される。そして、SRAMコントローラー55は、リードポインターRPの指す読出位置からバーストサイズB(4画素)分のデータD1を読み出す。
The
SRAMコントローラー55の第1フラグ生成部65によって、各データD1にはそれぞれを構成する画素毎に第1フラグF1が付される。セルが印刷イメージデータPDの有効ラインに属する画素データであれば第1フラグF1はマスクしない旨の「0」が付され、セルが有効ラインに属さなければ第1フラグF1はマスクする旨の「1」が付される。図15(b)の例では、4つのデータD1は最初の2つのデータD1が全て4個の画素を有するが、下側の2つのデータはセルが画素データの存在しない不定なので、各データD1には上側の行から順番に、それぞれを構成する各画素に、第1フラグF1(0=0、F1(1=0、F1(2=1、F1(3=1が付される。つまり、行アドレス「+0000」のデータD1には各画素に第1フラグF1(0=0が付され、行アドレス「+0010」のデータD1には各画素に第1フラグF1(1=0が付され、行アドレス「+0020」のデータD1には各セルに第1フラグF1(2=1が付され、さらに行アドレス「+0030」のデータD1には各セルに第1フラグF1(3=1が付される。
The
このように残りライン数が4の倍数にならない5〜6ライン目についても、1〜4ライン目と同様にSRAM80に対するデータD1の書込みとデータD2の読出しを行うが、SRAM80への書込処理は有効ラインのみ実施するため、有効でないラインに対するSRAM80には前処理時のデータが残っているため不定となる。また、有効でないラインの第1フラグF1は「1」(マスク有効)となる。
In this way, for the 5th to 6th lines where the remaining number of lines is not a multiple of 4, similarly to the 1st to 4th lines, the data D1 is written to the
そして、SRAM80からの1回目の読出しでは、SRAM80から図15(b)に示すリードポインターRPの指す画素データを読み出す。この1回目の読出しでは、図15(c)に示すように、画素データ(セル)「5-1」「6-1」「不定」「不定」が読み出される。このとき、各セルには、第1フラグF1(0)〜F1(3)が「0011」と付される。
Then, in the first reading from the
各データD1のSRAM80への書込みが終わると、ライトポインターWPがシフトされ、ライトポインターWPの指す次の書込位置にデータD1が書き込まれる。その結果、SRAM80には図16(a)に示す状態にデータD1が書き込まれる。SRAMコントローラー55は、このライトポインターWPの指す書込位置への書込部63によるデータD1の書込処理と並行し、リードポインターRPを進めながら(カウントアップしながら)、リードポインターRPの指す読出位置から画素データを読出す読出部64によるデータD2の読出処理を行う。
When the writing of each data D1 to the
データD2の読出処理の結果、図16(b)に示すように、1回目の読出しでセル「5-1」「6-1」「不定」「不定」が読み出され、各セルにそれぞれ第1フラグF1(0)=0,F1(1)=0,F1(2)=1,F1(3)=1が付される。続く2回目の読出しでセル「5-2」「6-2」「不定」「不定」が読み出され、各セルにそれぞれ第1フラグF1(0)=0,F1(1)=0,F1(2)=1,F1(3)=1が付される。さらに3回目の読出しでセル「5-3」「6-3」「不定」「不定」が読み出され、各セルにそれぞれ第1フラグF1(0)=0,F1(1)=0,F1(2)=1,F1(3)=1が付される。各読出しデータD2は読み出された順番に出力バッファー56へ転送される。出力I/F58は、出力バッファー56から第1フラグF1(0)〜F1(3)付きのデータD2を順番に読み込む。また、出力I/F58は、第2アドレスコントローラー57からライトアドレスAW0及び第2フラグF2(0)〜F2(3)を受け付ける。
As a result of the reading process of the data D2, as shown in FIG. 16B, the cells “5-1”, “6-1”, “undefined”, and “undefined” are read by the first reading, 1 flag F1 (0) = 0, F1 (1) = 0, F1 (2) = 1, F1 (3) = 1 is added. In the second reading, cells “5-2”, “6-2”, “undefined”, and “undefined” are read, and the first flags F1 (0) = 0, F1 (1) = 0, F1 are read in the respective cells. (2) = 1 and F1 (3) = 1 are added. Furthermore, the cells “5-3”, “6-3”, “indeterminate”, and “indeterminate” are read out in the third reading, and the first flag F1 (0) = 0, F1 (1) = 0, F1 is read in each cell. (2) = 1 and F1 (3) = 1 are added. Each read data D2 is transferred to the
次に5〜6ライン目の読出しデータD2のメインメモリー35の第2格納部35cへの保存(書込み)について、図17〜図19に基づいて説明する。まず5〜6ライン目の1回目の読出しデータD2の第2格納部35cへの書込み処理を図17に基づいて説明する。ライトアドレスAW0は、AW0=ADst+((現在のライン番号÷4)×8)により演算される。図17(a)に示すように、1回目の読出しデータD2のときは、ライトアドレスAW0=ADst+8=0x0008なので、下位3ビットが「000」(2進数)になり、ミスアラインではないと判定される。このため、1回目読出しデータD2の各セルには、第2フラグF2(0)〜F2(3)が値「0」(マスク無し)で付される。ミスアラインではないのでシフト処理は行われない。第3フラグ生成部70は、第1フラグF1(0)〜F1(3)と第2フラグF2(0)〜F2(3)の論理和演算(OR演算)を行って、第3フラグF3(0)〜F3(3)を求める。そして、データD2の各セルに第3フラグF3(0)=0,F3(1)=0,F3(2)=1,F3(3)=1が付される。
Next, storing (writing) the read data D2 of the fifth to sixth lines in the
そして、リードアドレスAR0の下位3ビットをマスクした書込アドレスAW1=0x0008を指定してバーストライトが要求される。その結果、メモリーコントローラー34によって、図17(c)に破線枠で示すように、書込アドレスAW1にデータD2が書き込まれる。このとき、第3フラグF3(2)=1,F3(3)=1に対応するセルはマスクされるため、画素データ「1-2」「2-2」は上書きされず残ることになる。
Then, burst write is requested by designating the write address AW1 = 0x0008 masking the lower 3 bits of the read address AR0. As a result, the data D2 is written to the write address AW1 by the
次に第2アドレスコントローラー57は、今回のライトアドレスAW0にオフセット量OFSを加えて、次のライトアドレスAW0を演算する。次のライトアドレスAW0は、AW0=0x0008+OFS(=0x0C)=0x0014と求められる。
Next, the
図18に示すように、2回目読出しデータD2を書き込むときには、今回のライトアドレスAW0=0x0014なので、下位3ビットが「1 00」(2進数)になり、ミスアラインであると判定される。ミスアライン処理の場合は2回に分けてバーストライト処理(書込処理)を行う。 As shown in FIG. 18, when the second read data D2 is written, since the current write address AW0 = 0x0014, the lower 3 bits are “1 00” (binary number), and it is determined to be misaligned. In the case of misalignment processing, burst write processing (write processing) is performed in two steps.
まずミスアライン処理の1回目では、今回の書込アドレスAW1に書き込むべき画素データ以外の画素データの上書きを防ぐため、第2フラグ生成部67が第2フラグF2(0)〜F2(3)を生成する。この時点では第2フラグF2(0)〜F2(3)は、マスク無し状態(値「0」)で生成される。ライトアドレスAW0と第2フラグF2(0)〜F2(3)とが、第2アドレスコントローラー57から出力I/F58へ送られる。
First, in the first misalignment process, the second
出力I/F58は、図18(a)に示すように、出力バッファー56から入力した第1フラグF1(0)〜F1(3)付きの2回目読出しデータD2に、第2アドレスコントローラー57からの第2フラグF2(0)〜F2(3)を付す。今回のライトアドレスAW0は「0x0014」である。アドレス生成部68は、ライトアドレスAW0=0x0014の下位3ビットをマスクして、書込アドレスAW1=0x0010を生成する。
As shown in FIG. 18A, the output I /
出力I/F58では、ミスアラインであると判定された場合、シフト処理部69がシフト処理を行う。すなわち、シフト処理部69は、図18(b)に示すように、ライトアドレスAW0の下位3ビットをシフト値にして、データD2を構成する4つの画素データをシフトさせるシフト処理を行う。ライトアドレスAW0が「0x0014」であるので、下位3ビットは「100」(=4バイト)である。よって、シフト処理部69が、図18(b)に示すように、データD2を構成する4つの画素データを、4バイト(2画素)分だけシフトさせる。このとき、同図の右方向へシフトアウトされたセル「不定」「不定」は、左方向からシフトインされる。シフト処理の結果、画素データ「5-2」「6-2」「不定」「不定」が、図18(b)に示すように画素データ「不定」「不定」「5-2」「6-2」の順番になる。この画素データのシフト処理に伴い、第3フラグ生成部70により、第1フラグF1(0)〜F1(3)と第2フラグF2(0)〜F2(3)もシフト処理される。第1フラグF1(0)〜F1(3)は、シフト後にはF1(0)=1,F1(1)=1,F1(2)=0,F1(3)=0になる。一方、第2フラグF2(0)〜F2(3)は、シフトインされた第2フラグF2(2),F2(3)が「1」(マスク有効)になる(図18(b)参照)。
In the output I /
さらに第3フラグ生成部70は、第1フラグF1(0)〜F1(3)と第2フラグF2(0)〜F2(3)との論理和演算(OR演算)を行う。この論理和演算の結果、第3フラグF3(0)〜F3(3)(=「1100」)が生成される。そして、出力I/F58は、メモリーコントローラー34に対して、書込アドレスAW1(=0x0010)を指定して、第3フラグF3(0)〜F3(3)付きのシフト後のデータD2のバーストライトを要求する。メモリーコントローラー34の書込転送部82は、バーストライト要求を受け付けると、図18(d)に示すように、書込アドレスAW1(=0x0010)にシフト後のデータD2を書き込む。このとき、マスク処理部82Aが、第3フラグF3(0)=1,F3(1)=1であるセル「不定」「不定」をマスクするため、画素データ「3-2」「4-2」は上書きされず残る。
Further, the third flag generation unit 70 performs a logical sum operation (OR operation) between the first flags F1 (0) to F1 (3) and the second flags F2 (0) to F2 (3). As a result of this logical sum operation, third flags F3 (0) to F3 (3) (= “1100”) are generated. Then, the output I /
続いてミスアライン処理の2回目の書込み処理を図19に基づいて説明する。第2アドレスコントローラー57はミスアライン処理の1回目のライトアドレスAW0=0x0014に、バーストサイズB(=「0x0008」)を加えてミスアライン処理の2回目のライトアドレスAW0=0x001Cを生成する。アドレス生成部68は、今回のライトアドレスAW0=0x001Cの下位3ビット「100」(2進数)をマスクして、書込アドレスAW1=0x0018を生成する。
Next, the second writing process of the misalignment process will be described with reference to FIG. The
このミスアライン処理の2回目では、図19(a)に示すように、2回目読出しデータのシフト後のデータD2及び1回目と同じ第1フラグF1(0)〜F1(3)を用いると共に、第2フラグF2(0)〜F2(3)はミスアライン処理の1回目の第2フラグF2(0)〜F2(3)をビット反転させ、「0011」にする。そして、第3フラグ生成部70は、第1フラグF1(0)〜F1(3)と第2フラグF2(0)〜F2(3)との論理和演算(OR演算)を行う。この論理和演算の結果、図19(b)に示すように、第3フラグF3(0)=1,F3(1)=1,F3(2)=1,F3(3)=1が生成される。そして、出力I/F58は、メモリーコントローラー34に対して、書込アドレスAW1(=0x0018)を指定して、第3フラグF3(0)〜F3(3)付きのデータD2のバーストライトを要求する。メモリーコントローラー34の書込転送部82は、バーストライト要求を受け付けると、書込アドレスAW1にデータD2を書き込むに当たり、マスク処理部82Aにマスク書影を行わせる。マスク処理部82Aは、第3フラグF3が「1」であるセル「不定」「不定」「5-2」「6-2」をマスクする。このため、図19(c)に破線枠で示す画素データ「1-3」「2-3」「3-3」「4-3」は上書きされず残る。
In the second misalignment process, as shown in FIG. 19A, the data D2 after the shift of the second read data and the same first flags F1 (0) to F1 (3) as the first time are used. Two flags F2 (0) to F2 (3) bit-invert the second flags F2 (0) to F2 (3) for the first misalignment process to “0011”. Then, the third flag generation unit 70 performs a logical sum operation (OR operation) of the first flags F1 (0) to F1 (3) and the second flags F2 (0) to F2 (3). As a result of this OR operation, as shown in FIG. 19B, the third flags F3 (0) = 1, F3 (1) = 1, F3 (2) = 1, and F3 (3) = 1 are generated. The Then, the output I /
そして、3回目以降の読出しデータD2について、同様の処理を繰り返すことにより、バースト転送でアライン処理を行いながら回転処理が進められる。5〜6ライン目のデータD2の書込み処理によって、メインメモリー35の第2格納部35cには、図19(d)に網掛けで示す画素データが書き込まれる。こうして、第1格納部35bに格納されていた印刷イメージデータPDが縦横変換されたヘッドイメージデータHDが第2格納部35cに格納される。
Then, by repeating the same process for the third and subsequent read data D2, the rotation process is advanced while performing the alignment process by burst transfer. By the writing process of the data D2 on the fifth to sixth lines, the pixel data indicated by hatching in FIG. 19D is written in the
以上詳述したように、本実施形態によれば、以下に示す効果を得ることができる。
(1)SRAM80に書き込んだデータD1からリードポインターRPの指す画素データを選択することによりデータD2を読み出す構成とした。この結果、行余りの画素のある印刷イメージデータPDでも、ダミーデータを追加することなく、バースト転送を効率よく行うことができる。このため、印刷イメージデータPDの格納に必要な第1格納部35bの使用容量、及びヘッドイメージデータHDの格納に必要な第2格納部35cの使用容量をそれぞれ低減できる。従って、メインメモリー35の使用容量を節約でき、他のデータの格納に使用可能な格納領域を増やすことができる。このとき、バースト転送時のメモリーアクセスが頻繁になることもないので、縦横変換処理の処理速度もさほど落とさずに済む。
As described above in detail, according to the present embodiment, the following effects can be obtained.
(1) The data D2 is read by selecting pixel data pointed to by the read pointer RP from the data D1 written in the
(2)バーストサイズB(バイト)を2の累乗に表したときの指数をm(但しmは自然数)とした場合、着目画素のリードアドレスAR0の下位mビット(本例では下位3ビット)をマスクすることにより読出アドレスAR1を生成した。よって、適切な読出アドレスAR1を指定して第1格納部35bから回転ユニット50へ適切なデータD1をバースト転送することができる。
(2) When the exponent when the burst size B (byte) is expressed as a power of 2 is m (where m is a natural number), the lower m bits (lower 3 bits in this example) of the read address AR0 of the pixel of interest The read address AR1 is generated by masking. Therefore, it is possible to burst transfer appropriate data D1 from the
(3)リードアドレスAR0の下位mビット(本例では下位3ビット)をリードポインターRPの初期値として設定するので、SRAM80に格納されたデータD1から適切な画素データを選択し、適切なデータD2を読み出すことができる。
(3) Since the lower m bits (lower 3 bits in this example) of the read address AR0 are set as the initial value of the read pointer RP, appropriate pixel data is selected from the data D1 stored in the
(4)ミスアライン処理であるか否かを判定部66により判定するので、ミスアラインでない場合と、ミスアラインである場合とを分けて、第2格納部35cへの適切なデータD2の書込みを行うことができる。
(4) Since the
(5)ライトアドレスAW0の下位mビット(本例では下位3ビット)をマスクして書込アドレスAW1を求めるので、データD2を第2格納部35cの適切な書込位置に書き込むことができる。
(5) Since the write address AW1 is obtained by masking the lower m bits (lower 3 bits in this example) of the write address AW0, the data D2 can be written to an appropriate write position in the
(6)第1フラグF1(0)〜F1(3)を生成し、データD2を構成するセルが印刷イメージデータPDの有効ラインに属する画素であれば「0」(マスク無効)を付し、有効ラインではないセルであって不定であれば「1」(マスク有効)を付す。よって、ミスアラインでないデータD2をそのまま書き込むバーストライト要求を行えば、第2格納部35cの適切な書込位置にデータD2を書き込むことができる、
(7)ミスアライン処理のときには、2回に分けてデータD2の書込み処理を行うことにより、不適切なセルにより必要な画素データが上書きされることを回避できる。
(6) The first flags F1 (0) to F1 (3) are generated, and if the cells constituting the data D2 are pixels belonging to the valid line of the print image data PD, “0” (mask invalid) is added. If the cell is not a valid line and is indefinite, "1" (mask valid) is added. Therefore, if a burst write request for directly writing the data D2 that is not misaligned is made, the data D2 can be written at an appropriate writing position in the
(7) At the time of misalignment processing, it is possible to avoid overwriting necessary pixel data by an inappropriate cell by performing writing processing of data D2 in two steps.
(8)判定部66がミスアラインであると判定した際のミスアライン処理では、ライトアドレスAW0の下位mビット(下位3ビット)をシフト値としてデータD2を構成する画素(セル)をシフトさせるので、画素が適切な位置に存在するデータD2に変更することができる。例えば他の画素の書込位置を確保するため空きを設ける必要がある場合、シフト処理でデータD2内の画素をシフトさせてその配列順を変更することにより、データD2を第2格納部35cに書き込む際に他の画素の書込位置を空けて画素を書き込むことができる。
(8) In the misalignment process when the
(9)ミスアライン処理のときには、セルのシフト処理に伴って、第3フラグ生成部70が、第1フラグF1(0)〜F1(3)と第2フラグF2(0)〜F2(3)をシフトさせ、シフトインさせた第2フラグF2については「1」に変更した。よって、第3フラグ生成部70が、第1フラグF1(0)〜F1(3)と第2フラグF2(0)〜F2(3)との論理和演算(OR演算)を行うことにより、適切な第3フラグF3(0)〜F3(3)を生成することができる。 (9) In the misalignment process, the third flag generation unit 70 sets the first flags F1 (0) to F1 (3) and the second flags F2 (0) to F2 (3) along with the cell shift process. The second flag F2 shifted and shifted in is changed to “1”. Therefore, the third flag generation unit 70 performs an OR operation (OR operation) on the first flags F1 (0) to F1 (3) and the second flags F2 (0) to F2 (3), so that The third flags F3 (0) to F3 (3) can be generated.
(10)第3フラグF3(0)〜F3(3)を付けてデータD2のバーストライトを要求するので、第2格納部35cに先に書き込んだ必要な画素データへの不要なセルによる上書きを回避することができる。
(10) Since burst write of the data D2 is requested with the third flags F3 (0) to F3 (3), the necessary pixel data previously written in the
(11)ミスアライン処理の2回目では、1回目のシフト後のデータD2を用い、第1フラグF1を1回目と同じ値とし、第2フラグF2を1回目の値のビット反転としたうえで、第1フラグF1と第2フラグF2との論理和演算を行って第3フラグF3を生成する。よって、2回目のバーストライト処理で、1回目の書込位置でマスクした画素を、2回目の書込位置では書き込むことができる。 (11) In the second misalignment process, the data D2 after the first shift is used, the first flag F1 is set to the same value as the first, and the second flag F2 is bit-inverted from the first value. The third flag F3 is generated by performing an OR operation on the first flag F1 and the second flag F2. Therefore, in the second burst write process, the pixel masked at the first write position can be written at the second write position.
(12)搬送モーター28の駆動により搬送される用紙に印刷ヘッド29がインク滴を噴射して画像を形成するプリンター部14を有する複合機11に縦横変換装置45を設けたので、複合機11においてバースト転送速度の低減を抑えつつ、メインメモリー35の格納領域を有効活用できる。
(12) Since the vertical /
なお、上記実施形態は以下の形態に変更することもできる。
・転送単位(処理単位)は、4×4画素に限定されず、例えば8×8画素、16×16画素、32×32画素、64×64画素の単位でもよい。また、転送単位は、A×A画素の正方ブロックに限定されず、A×D画素(A≠D)の矩形ブロックでもよい。すなわち、縦横変換処理(回転処理)できる限りにおいて適宜な転送単位を設定できる。
In addition, the said embodiment can also be changed into the following forms.
The transfer unit (processing unit) is not limited to 4 × 4 pixels, and may be units of 8 × 8 pixels, 16 × 16 pixels, 32 × 32 pixels, and 64 × 64 pixels, for example. The transfer unit is not limited to a square block of A × A pixels, but may be a rectangular block of A × D pixels (A ≠ D). That is, an appropriate transfer unit can be set as long as vertical / horizontal conversion processing (rotation processing) is possible.
・第1及び第2の転送手段の転送方式は、バースト転送方式に限定されない。ダイレクトメモリーアクセス転送(DMA転送)で用いられる他の転送方式も採用できる。例えばサイクルスチール転送方式、デマンド転送方式などを採用してもよい。また、第1の転送手段と第2の転送手段で異なる転送方式を採用してもよい。 The transfer method of the first and second transfer means is not limited to the burst transfer method. Other transfer methods used in direct memory access transfer (DMA transfer) can also be adopted. For example, a cycle steal transfer method or a demand transfer method may be employed. Further, different transfer methods may be adopted for the first transfer means and the second transfer means.
・アドレス生成方法は、適宜変更してもよい。要するに、目的のアドレスを生成できる方法であれば、他の演算式を用いた演算によりアドレスを生成してもよい。
・印刷イメージデータPDとヘッドイメージデータHDは、同一のメインメモリー35(例えばDRAM)に格納することに限定されず、異なるDRAMに格納する構成としてもよい。
-The address generation method 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.
The print image data PD and the head image data HD are not limited to being stored in the same main memory 35 (for example, DRAM), but may be stored in different DRAMs.
・回転ユニット50は、ハードウェアの構成に限定されず、その一部にソフトウェアの部分を含みハードウェアとソフトウェアとの協働により構成されてもよい。さらには処理速度が多少低下するが、ソフトウェアにより構成されもよい。 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 the above-described embodiment, as an example of the recording apparatus, a multifunction machine including the ink
・記録装置の一例として複合機を採用したが、記録装置はスキャナー機能を備えないプリンターでもよい。また、記録装置は、インクジェット記録方式に限定されずワイヤインパクト式記録装置、熱転写式記録装置、電子写真式記録装置等であってもよい。また、これらの記録装置は、モノクロ記録装置を採用してもよい。 A multi-function device is used as an example of a recording device, but the recording device may be a printer that does not have a scanner function. The recording device is not limited to the ink jet recording method, and may be a wire impact recording device, a thermal transfer recording device, an electrophotographic recording device, or the like. Further, these recording apparatuses may adopt a monochrome recording apparatus.
・画像データ処理装置はプリンターへの適用に限定されない。画像データの縦横変換処理(回転処理)が行われる情報処理装置に広く適用できる。画像データの縦横変換処理(回転処理)が行われる構成であれば、例えばスキャナー装置、デジタルカメラ、プロジェクター、デジタルフォトフレーム等に、画像データ処理装置を採用してもよい。 -The image data processing apparatus is not limited to application to a printer. The present invention can be widely applied to information processing apparatuses that perform vertical / horizontal conversion processing (rotation processing) of image data. An image data processing device may be employed in, for example, a scanner device, a digital camera, a projector, a digital photo frame, or the like as long as the image data is subjected to vertical / horizontal conversion processing (rotation processing).
11…記録装置の一例である複合機、14…プリンター部、28…搬送手段の一例である搬送モーター、29…記録手段の一例である流体噴射ヘッドとしての印刷ヘッド、34…メモリーコントローラー、35…格納手段の一例としてのメインメモリー、35b…第1格納手段の一例である第1格納部、35c…第2格納手段の一例である第2格納部、45…縦横変換装置、50…回転ユニット、51…第1の転送手段の一例を構成する第1アドレスコントローラー、52…第1の転送手段の一例を構成する入力I/F、54…ポインターコントローラー、55…SRAMコントローラー、57…第2アドレスコントローラー、58…第2の転送手段の一例を構成すると共に書込調整手段の一例を構成する出力I/F、60…アドレス生成部、61…第1ポインター生成部、62…第2ポインター生成部、63…書込手段の一例である書込部、64…読出手段の一例である読出部、65…第1フラグ生成手段の一例である第1フラグ生成部、66…判定手段の一例である判定部、67…第2フラグ生成手段の一例である第2フラグ生成部、68…アドレス生成部、69…書込調整手段及び補正手段の一例を構成すると共にシフト処理手段の一例であるシフト処理部、70…書込調整手段及び補正手段の一例を構成するとともに第3フラグ生成手段の一例である第3フラグ生成部、80…メモリーの一例であるSRAM、81…第1の転送手段の一例である読出転送部、82…第2の転送手段の一例である書込転送部、82A…書込調整手段の一例を構成すると共にマスク処理手段の一例であるマスク処理部、PD…第1画像データの一例である印刷イメージデータ、HD…第2画像データの一例であるヘッドイメージデータ、D1…第1データの一例であるデータ、D2…第2データの一例であるデータ、B…転送サイズの一例であるバーストサイズ、R…ラスターサイズ、AR0…リードアドレス、AR1…読出アドレス、AW0…ライトアドレス、AW1…書込アドレス、F1…第1フラグ、F2…第2フラグ、F3…第3フラグ、m…指数、P…記録媒体の一例である用紙。
DESCRIPTION OF
Claims (8)
第1画像データが格納される第1格納手段と、
メモリーと、
第2画像データを格納するための第2格納手段と、
前記第1画像データから少なくとも1つの着目画素を含む一列に並ぶ複数の画素を選択した転送サイズの第1データを、前記着目画素を順次替えて前記第1格納手段から前記転送サイズずつ転送して前記メモリーに格納する第1転送手段と、
前記メモリーに格納された前記第1データの群から少なくとも1つの前記着目画素を含む複数の画素を選択した転送サイズの第2データを、前記着目画素を順次替えて前記メモリーから前記転送サイズずつ前記第2格納手段へ転送し、当該第2データ中の着目画素が前記第2格納手段における前記第2画像データの画素配列順に合った位置に配置される前記第2格納手段中の位置に書き込む第2転送手段と、を備え、
前記第2の転送手段は、前記第2データが画素の配列順が不適切なミスアラインである場合に、当該ミスアラインである第2データの画素の配列順を補正する補正手段と、前記第2データが着目画素以外の不要画素を含む場合に、当該不要画素の前記第2格納手段への書込みを禁止する書込調整手段と、を備えたことを特徴とする画像データ処理装置。 An image data processing device for generating first image data by converting the first image data into vertical and horizontal directions,
First storage means for storing first image data;
Memory,
Second storage means for storing second image data;
Transferring said first data transfer size selected a plurality of pixels arranged in a row including at least one target pixel first image data or, et al., By the transfer size from the sequentially changed by the first storing means the pixel of interest a first rolling feed means that stores in the memory and,
The transfer second data size that selects a plurality of pixels including at least one of said target pixel from the group of pre-Symbol first data stored in said memory, said transfer size from the memory sequentially changing the target pixel Are transferred to the second storage means one by one , and the pixel of interest in the second data is arranged at a position in the second storage means arranged at a position that matches the pixel arrangement order of the second image data in the second storage means. includes a second rolling feed means for writing, a,
Said second transfer means, when the second data is an unsuitable misalignment is the arrangement order of the pixels, and correcting means for correcting the order of arrangement of the pixels of the second data is the misalignment, before Symbol second If the data contains unwanted pixels other than the target pixel, the image data processing apparatus being characterized in that and a write adjustment means for inhibiting writing to said second storage means of the required pixel.
画素データ毎に付されると共にマスク有効の値とマスク無効の値のうち一方をとる第1フラグを生成する第1フラグ生成手段と、
画素データ毎に付されると共にマスク有効の値とマスク無効の値のうち一方をとる第2フラグを生成する第2フラグ生成手段と、
前記第2データを構成する前記画素をシフトさせて当該画素の配列順を変更させるシフト処理手段と、
前記画素のシフトに伴って前記第1フラグ及び第2フラグをシフトさせると共に、着目画素以外の不要画素に対応する前記第2フラグをマスク有効の値に変更したうえで、シフト後の第1フラグと第2フラグとを論理和演算して第3フラグを生成する第3フラグ生成手段と、を備え、
前記第2転送手段は、前記第2データを画素毎に前記第3フラグを付けて前記第2格納手段に転送する構成であり、
前記書込調整手段は、前記第3フラグがマスク無効の値であれば対応する画素を書込み、マスク有効の値であれば対応する画素の書込みを禁止するマスク処理手段を備えたことを特徴とする請求項1又は2に記載の画像データ処理装置。 The correction means includes
First flag generation means for generating a first flag that is attached to each pixel data and takes one of a mask valid value and a mask invalid value;
Second flag generating means for generating a second flag that is attached to each pixel data and takes one of a mask valid value and a mask invalid value;
Shift processing means for shifting the pixels constituting the second data to change the arrangement order of the pixels;
The first flag and the second flag are shifted with the shift of the pixel, and the second flag corresponding to an unnecessary pixel other than the target pixel is changed to a mask effective value, and then the first flag after the shift is performed. And a third flag generating means for generating a third flag by performing an OR operation on the second flag and
The second rolling feed means is configured to transfer the second data in the second storage means prior SL with a third flag for each pixel,
The write adjustment means, said third flag is provided with a masking means for inhibiting the writing of picture element corresponding if the corresponding write picture element, mask valid value if the value of the invalid mask The image data processing apparatus according to claim 1, wherein the image data processing apparatus is an image data processing apparatus.
前記画像データ処理装置によって前記第1画像データが縦横変換された前記第2画像データに基づいて記録を行う記録手段と、
を備えたことを特徴とする記録装置。 The image data processing device according to any one of claims 1 to 6 ,
Recording means for performing recording based on the second image data obtained by vertically and horizontally converting the first image data by the image data processing device;
A recording apparatus comprising:
第1格納手段に格納された第1画像データから少なくとも1つの着目画素を含む一列に並ぶ複数の画素を選択した転送サイズの第1データを、前記着目画素を順次替えて第1格納手段から前記転送サイズずつ転送してメモリーに格納する第1の転送ステップと、
前記メモリーに格納された前記第1データの群から少なくとも1つの前記着目画素を含む複数の画素を選択した転送サイズの第2データを、前記着目画素を順次替えて前記メモリーから前記転送サイズずつ第2格納手段へ転送し、当該第2データ中の着目画素が前記第2格納手段における前記第2画像データの画素配列順に合った位置に配置される前記第2格納手段中の位置に書き込む第2転送ステップと、を備え、
前記第2転送ステップは、
前記第2データが画素の配列順が不適切なミスアラインである場合に、当該ミスアラインである第2データの画素の配列順を補正する補正ステップと、
前記第2データが着目画素以外の不要画素を含む場合、当該不要画素の前記第2格納手段への書込みを禁止する書込調整ステップと、
を備えたことを特徴とする画像データ処理方法。 An image data processing method for generating first image data by subjecting first image data to vertical and horizontal conversion,
The by the first data transfer size selected a plurality of pixels arranged in a row including one target pixel even without least first image data or et stored in the first storing means, sequentially changing the target pixel 1 a first transfer step of storing in memory and transferred from the storage means by the transfer size,
The transfer second data size that selects a plurality of pixels including at least one of said target pixel from the group of pre-Symbol first data stored in said memory, said transfer size from the memory sequentially changing the target pixel Are transferred to the second storage means one by one, and the pixel of interest in the second data is written at a position in the second storage means arranged at a position that matches the pixel arrangement order of the second image data in the second storage means. a step feeding second rolling includes a
The second transfer step includes
When the second data is a misalignment in which the pixel arrangement order is inappropriate, a correction step of correcting the pixel arrangement order of the second data that is the misalignment;
If the previous SL second data includes unnecessary pixels other than the target pixel, and the second write to that write adjustment step prohibits to the storage means of the unnecessary pixel,
An image data processing method comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011032444A JP5736826B2 (en) | 2011-02-17 | 2011-02-17 | Image data processing apparatus, recording apparatus, and image data processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011032444A JP5736826B2 (en) | 2011-02-17 | 2011-02-17 | Image data processing apparatus, recording apparatus, and image data processing method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012171110A JP2012171110A (en) | 2012-09-10 |
JP5736826B2 true JP5736826B2 (en) | 2015-06-17 |
Family
ID=46974476
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011032444A Expired - Fee Related JP5736826B2 (en) | 2011-02-17 | 2011-02-17 | Image data processing apparatus, recording apparatus, and image data processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5736826B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7238457B2 (en) * | 2019-02-22 | 2023-03-14 | ブラザー工業株式会社 | printer |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000218876A (en) * | 1999-02-01 | 2000-08-08 | Canon Inc | Image data converting circuit and image data converting method |
JP2000229454A (en) * | 1999-02-10 | 2000-08-22 | Canon Inc | Print data converting device and printer |
JP2001274975A (en) * | 2000-03-24 | 2001-10-05 | Matsushita Electric Ind Co Ltd | Image forming device |
JP2002292944A (en) * | 2001-04-02 | 2002-10-09 | Canon Inc | Image recording apparatus and controlling method therefor |
JP2006178867A (en) * | 2004-12-24 | 2006-07-06 | Nec Saitama Ltd | Cpu system using flash memory, flash memory protection circuit and its flash memory protection method |
JP4732183B2 (en) * | 2006-02-21 | 2011-07-27 | 株式会社リコー | Image processing apparatus, image processing method, and program for causing computer to execute the method |
JP2011182106A (en) * | 2010-02-26 | 2011-09-15 | Seiko Epson Corp | Image data processor, recorder, and image data processing method |
-
2011
- 2011-02-17 JP JP2011032444A patent/JP5736826B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2012171110A (en) | 2012-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3884498B2 (en) | Printer and method for printing raster images | |
JP2007185949A (en) | Recorder and its control method, control circuit of recording head and driving method of recording head | |
JP5245221B2 (en) | Droplet discharge device | |
JP2009029123A (en) | Recording device and its control method | |
US6705697B2 (en) | Serial data input full width array print bar method and apparatus | |
JP5736826B2 (en) | Image data processing apparatus, recording apparatus, and image data processing method | |
US20060290732A1 (en) | Ink-jet image forming apparatus and high resolution printing method | |
JP4691880B2 (en) | An image output device that outputs an image while converting resolution of data of a plurality of pixel columns in which dots are formed simultaneously | |
JP2011182106A (en) | Image data processor, recorder, and image data processing method | |
JP5074733B2 (en) | Recording device | |
JP5975894B2 (en) | Image forming apparatus | |
JP4661194B2 (en) | Image recording device | |
JP6844459B2 (en) | Image processing system, image processing method and image processing device, and image forming system | |
JP2010005919A (en) | Inkjet recording device | |
JP2010143122A (en) | Recording apparatus, and recording method | |
JP5960104B2 (en) | Image processing apparatus and image processing method | |
JP5288722B2 (en) | Recording apparatus and control method of the apparatus | |
JP2008265161A (en) | Ink jet recorder and method for forming recording data | |
JP2005305833A (en) | Printer | |
JP3219869B2 (en) | Ink jet recording device | |
JP2006159551A (en) | Inkjet recorder | |
JP4665492B2 (en) | Inkjet printer | |
JP2002127397A (en) | Recording device | |
JP2009220391A (en) | Liquid jet apparatus | |
JP2009226639A (en) | Controller |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140124 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20141023 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20141028 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150105 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150324 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150406 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5736826 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |