JP2001171184A - Image data-processing apparatus - Google Patents

Image data-processing apparatus

Info

Publication number
JP2001171184A
JP2001171184A JP35770099A JP35770099A JP2001171184A JP 2001171184 A JP2001171184 A JP 2001171184A JP 35770099 A JP35770099 A JP 35770099A JP 35770099 A JP35770099 A JP 35770099A JP 2001171184 A JP2001171184 A JP 2001171184A
Authority
JP
Japan
Prior art keywords
image data
data
line
bit array
line buffer
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.)
Withdrawn
Application number
JP35770099A
Other languages
Japanese (ja)
Inventor
Keiji Fujiwara
啓司 藤原
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.)
Fujitsu Ltd
Fujitsu Peripherals Ltd
Original Assignee
Fujitsu Ltd
Fujitsu Peripherals Ltd
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 Fujitsu Ltd, Fujitsu Peripherals Ltd filed Critical Fujitsu Ltd
Priority to JP35770099A priority Critical patent/JP2001171184A/en
Publication of JP2001171184A publication Critical patent/JP2001171184A/en
Withdrawn legal-status Critical Current

Links

Landscapes

  • Record Information Processing For Printing (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide an image data-processing apparatus which rotates image data with a small memory capacity at a high speed when a bit map development direction and a paper transfer direction are different from each other. SOLUTION: The apparatus has a page memory in which image data developed to a bit map are stored in units of pages, a bit array memory in which image data present at a predetermined block of the page memory is stored by reading out the data for every bit arrangement aligned in a predetermined line direction, a rotation process control means for taking out image data stored in the bit array memory for every line of a direction different from the bit arrangement direction, a line buffer memory for storing image data taken out by the rotation process control means in a predetermined order, and an image data output means for sequentially outputting image data stored in the line buffer memory.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】この発明は、画像データ処理
装置に関し、特に、印刷装置等の画像処理を必要とする
装置において、メモリ上に展開されたビットマップデー
タの所定の変換処理を高速化するための画像データ処理
装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an image data processing apparatus, and more particularly, to an apparatus which requires image processing such as a printing apparatus, which speeds up a predetermined conversion process of bitmap data expanded on a memory. Data processing apparatus for the same.

【0002】[0002]

【従来の技術と発明が解決しようとする課題】一般に、
印刷用紙は、A3,A4,B4など、所定のサイズに決
められているが、縦・横の長さが異なる長方形である。
プリンタ装置に印刷用紙をセットする場合、用紙の長辺
を搬送口にそろえ、用紙の短辺が用紙の搬送方向となる
ようにする場合(図13(a))と、用紙の短辺を搬送
口にそろえ、用紙の長辺が用紙の搬送方向となるように
する場合(図13(b))とがある。
2. Description of the Related Art In general,
The printing paper is determined to have a predetermined size such as A3, A4, or B4, but is a rectangle having different vertical and horizontal lengths.
When the printing paper is set in the printer device, the long side of the paper is aligned with the conveyance port so that the short side of the paper is in the conveyance direction of the paper (FIG. 13A). There is a case where the paper is aligned with the mouth so that the long side of the paper is in the transport direction of the paper (FIG. 13B).

【0003】特に、A3用紙まで給紙できるタイプの印
刷装置では、一般にA3用紙は図13(b)に示すよう
に、いわゆるポートレイト方向(縦長方向)にセットさ
れるが、A4用紙は図13(a)に示すようにいわゆる
ランドスケープ方向(横長方向)にセットされる。
In particular, in a printing apparatus capable of feeding up to A3 paper, A3 paper is generally set in a portrait direction (longitudinal direction) as shown in FIG. 13B, while A4 paper is set in FIG. As shown in (a), the image is set in a so-called landscape direction (horizontally long direction).

【0004】パソコン等で印刷機能を実行させるとき、
一般に縦長方向に印刷するか、横長方向に印刷するかの
指示入力がされ、その指示どおりに印刷データが作成さ
れ、印刷装置に転送される。たとえば、A3縦長方向と
いう印刷指示入力がされた場合は、図13(b)のよう
に縦長方向に用紙を搬送して印刷するための印刷データ
が作成されて印刷装置へ転送される。このとき、印刷装
置に用紙が図13(b)に示すようにセットされていれ
ば、転送されてきた印刷データと用紙の搬送方向とが一
致しているので、その印刷データをそのままビットマッ
プデータに展開すればよい。
When executing a printing function on a personal computer or the like,
In general, an instruction for printing in a portrait or landscape orientation is input, and print data is created in accordance with the instruction and transferred to a printing device. For example, when a print instruction input of A3 portrait orientation is input, print data for transporting and printing paper in the portrait orientation is created as shown in FIG. 13B and transferred to the printing apparatus. At this time, if the paper is set in the printing apparatus as shown in FIG. 13B, the transferred print data and the transport direction of the paper coincide with each other. Should be expanded to

【0005】しかし、転送されてきた印刷データと用紙
の搬送方向とが異なる場合は特別な変換処理をする必要
がある。たとえば、印刷装置にA4用紙が図13(a)
に示すように横長方向に搬送して印刷するようにセット
されていたときに、A4縦長方向という印刷指示入力が
された場合、転送される印刷データは縦長方向に用紙を
搬送して印刷するデータとなっているので、この印刷デ
ータを横長方向で印刷するためには変換処理をする必要
がある。
[0005] However, when the transferred print data is different from the paper transport direction, a special conversion process needs to be performed. For example, A4 paper is used in the printing device as shown in FIG.
When the print instruction is input in the A4 portrait direction when the printer is set to carry in the landscape direction and prints as shown in (2), the print data to be transferred is the data to transport and print the paper in the portrait direction. Therefore, it is necessary to perform a conversion process in order to print the print data in the landscape orientation.

【0006】変換処理としては、次のようなものが必要
である。 (1)一旦ビットマップに展開されたフォントを90°
回転してビットマップデータとして書き戻す。 (2)座標系の変換を実行してイメージ展開する。
The following is required for the conversion process. (1) The font once expanded to bitmap is 90 °
Rotate and write back as bitmap data. (2) Convert the coordinate system and develop the image.

【0007】また、転送されてきた印刷データと用紙の
搬送方向が異なる場合に、一旦縦長方向の印刷データを
そのままビットマップ展開した後、ビデオ転送の出力を
する前に、プログラム処理により縦長方向のデータを9
0°回転して横長方向のデータに、ページ単位で変換す
る必要があり、この処理はかなりの時間がかかる。
In the case where the transferred print data and the paper conveyance direction are different, the print data in the portrait direction is once subjected to bitmap development as it is, and before the video transfer output, the program is processed in the portrait direction. Data 9
It is necessary to rotate the data by 0 ° and convert it into data in the horizontal direction on a page-by-page basis, and this process takes a considerable time.

【0008】このとき、ページ単位で変換するため、変
換前の印刷データ用と、変換後の印刷データ用のため
に、それぞれ別のページ単位のメモリを用意する必要が
あり、大きなメモリ容量が必要となる。また、この変換
処理をビデオ転送出力処理時に行うことも可能ではある
が、ビデオ転送レートが高速になると、この変換のため
のプログラム処理の速度がビデオ出力速度に比べて遅い
ため、印刷装置の基本性能としての印刷速度の低下を招
く。
At this time, since conversion is performed in page units, it is necessary to prepare separate page unit memories for print data before conversion and for print data after conversion, and a large memory capacity is required. Becomes It is also possible to perform this conversion process during the video transfer output process. However, if the video transfer rate is increased, the speed of the program processing for this conversion is slower than the video output speed. This causes a reduction in printing speed as performance.

【0009】このように、従来の印刷装置においては、
印刷装置に転送されてきた印刷データの展開方向と、実
際にセットされた用紙の搬送方向とが異なる場合には、
印刷データの変換処理をページ単位で行う必要があった
ので、印刷装置の基本性能としての印刷速度が大きく低
下し、さらに、予めページ単位の容量を持つデータ展開
用メモリを少なくとも2つ用意する必要があった。
As described above, in the conventional printing apparatus,
If the developing direction of the print data transferred to the printing device is different from the transport direction of the actually set paper,
Since it is necessary to perform the print data conversion process in units of pages, the printing speed as the basic performance of the printing apparatus is greatly reduced, and it is necessary to prepare at least two data development memories having a page unit capacity in advance. was there.

【0010】この発明は以上のような点を考慮してなさ
れたものであり、印刷データをある領域のブロックごと
に変換する処理を行うことにより、展開用のメモリの節
約ができ、さらに、用紙の搬送方向と指示された印刷方
向とが一致しない場合でも、印刷速度の低下を招くこと
のない画像データ処理装置を提供するものである。
The present invention has been made in view of the above points, and by performing processing for converting print data for each block in a certain area, it is possible to save memory for expansion and to further reduce the paper size. The present invention is to provide an image data processing apparatus which does not cause a decrease in printing speed even when the transport direction of the image does not match the designated printing direction.

【0011】[0011]

【課題を解決するための手段】この発明は、ビットマッ
プ展開された画像データをページ単位で記憶したページ
メモリと、ページメモリの所定のブロックに存在する画
像データを所定のライン方向に並んだビット配列ごとに
読み出して格納したビットアレイメモリと、ビットアレ
イメモリに格納された画像データに対して、前記ビット
配列の方向と異なる方向のラインごとに画像データを取
り出す回転処理制御手段と、回転処理制御手段によって
取り出された画像データを所定の順序で格納したライン
バッファメモリと、ラインバッファメモリに格納された
画像データを順次読み出す画像データ出力手段とを備え
たことを特徴とする画像データ処理装置を提供するもの
である。
According to the present invention, there is provided a page memory in which bitmap-deployed image data is stored in units of pages, and image data present in a predetermined block of the page memory arranged in a predetermined line direction. A bit array memory read and stored for each array, rotation processing control means for extracting image data for each line in a direction different from the bit array direction with respect to the image data stored in the bit array memory, and rotation processing control An image data processing apparatus comprising: a line buffer memory storing image data taken out by means in a predetermined order; and image data output means for sequentially reading out image data stored in the line buffer memory. Is what you do.

【0012】また、この発明の前記ラインバッファは、
2つのラインバッファから構成され、一方のラインバッ
ファが、前記回転処理制御手段によって取り出された画
像データを格納するのに用いられているときには、他方
のラインバッファは、前記画像データ出力手段により読
み出されるのに用いられ、前記2つのラインバッファ
は、互いに排他的に巡回利用される。ここで、2つのラ
インバッファを巡回利用するためのラインバッファ切替
手段をさらに備えてもよい。
Further, the line buffer of the present invention comprises:
When the one line buffer is used to store the image data extracted by the rotation processing control means, the other line buffer is read by the image data output means. The two line buffers are used cyclically exclusively to each other. Here, a line buffer switching means for cyclically using the two line buffers may be further provided.

【0013】さらに、前記ビットアレイメモリに格納さ
れた複数個のビット配列は、それぞれ単位ワード長で構
成してもよい。単位ワード長とは、たとえば8ビット,
16ビット,32ビット,64ビットである。
Further, each of the plurality of bit arrays stored in the bit array memory may have a unit word length. The unit word length is, for example, 8 bits,
They are 16 bits, 32 bits, and 64 bits.

【0014】また、前記ページメモリに記憶された画像
データがポートレイト方向に展開されたデータである場
合には、前記ブロックはポートレイト方向に並んだライ
ン上の所定数のビット配列から構成され、前記回転処理
制御手段が前記ビットアレイメモリから取り出す画像デ
ータは、前記ポートレイト方向と垂直な方向に並んだラ
イン上の第2のビット配列である。すなわち、ブロック
を構成するビット配列と第2のビット配列は90°方向
が異なるものである。
When the image data stored in the page memory is data developed in the portrait direction, the block is constituted by a predetermined number of bit arrays on lines arranged in the portrait direction, The image data retrieved from the bit array memory by the rotation processing control means is a second bit array on a line arranged in a direction perpendicular to the portrait direction. That is, the bit arrangement constituting the block and the second bit arrangement are different in the 90 ° direction.

【0015】また、この発明は、前記したような画像デ
ータ処理装置と、用紙搬送手段とを備え、前記ページメ
モリに記憶された画像データの展開方向と、用紙搬送手
段に設置された用紙の搬送方向とが異なる場合に、前記
回転処理制御手段が、ビットアレイメモリに格納された
画像データのビット配列の方向とは異なる方向のライン
ごとに画像データを取り出すことを特徴とする印刷装置
を提供するものである。
Further, the present invention comprises the above-described image data processing apparatus and a paper transport means, and a developing direction of the image data stored in the page memory, and a transport of the paper set in the paper transport means. If the direction is different, the rotation processing control means extracts the image data for each line in a direction different from the direction of the bit array of the image data stored in the bit array memory. Things.

【0016】ページメモリは、書き換え可能なメモリで
構成され、たとえばSRAM,DRAM等を用いること
ができる。ページメモリに記憶されるデータは1ページ
内に作成されたデータであり、ページメモリはたとえば
ページプリンタで印刷される一単位のデータをすべて記
憶できる容量を持つ。
The page memory is constituted by a rewritable memory, and for example, an SRAM, a DRAM or the like can be used. The data stored in the page memory is data created in one page, and the page memory has a capacity capable of storing all data of one unit printed by a page printer, for example.

【0017】ビットアレイメモリは、ページメモリより
も小さなメモリ容量を持つ書き換え可能なメモリであ
り、ページメモリの所定のブロック内に含まれるデータ
を記憶するものである。ここでブロックとは、マトリク
ス状の領域であり、たとえば、縦方向及び横方向がそれ
ぞれ1ワード長である平面的な記憶空間をいう。このと
き、縦方向には、1ワード長に相当する数のラインが並
び、各ラインは1ワード分の数のビット配列から構成さ
れる。ただし、ブロックの縦方向及び横方向の長さはこ
の限りではなく、複数ワード長であってもよい。1ワー
ドは、この発明の画像データ処理を実行するプロセッサ
及びハードウェアにより異なるが、以下に述べるこの発
明の実施例では1ワード=32ビットとする。
The bit array memory is a rewritable memory having a smaller memory capacity than the page memory, and stores data contained in a predetermined block of the page memory. Here, the block is a matrix-shaped area, and refers to, for example, a planar storage space in which the vertical direction and the horizontal direction are each one word long. At this time, the number of lines corresponding to the length of one word is arranged in the vertical direction, and each line is composed of a bit array of the number of one word. However, the vertical and horizontal lengths of the block are not limited to this, and may be a plurality of words. One word varies depending on the processor and hardware that execute the image data processing of the present invention, but in the embodiment of the present invention described below, one word is 32 bits.

【0018】ページメモリに記憶された画像データがい
わゆるポートレイト方向に展開されたビットマップデー
タである場合には、前記ブロックの縦方向がポートレイ
ト方向であり、ブロックの横方向がランドスケープ方向
となる。すなわち、ブロック内において、ポートレイト
方向に複数のラインが並び、各ラインを形成するビット
配列の方向がランドスケープ方向となる。
When the image data stored in the page memory is bitmap data expanded in a so-called portrait direction, the vertical direction of the block is the portrait direction and the horizontal direction of the block is the landscape direction. . That is, in the block, a plurality of lines are arranged in the portrait direction, and the direction of the bit array forming each line is the landscape direction.

【0019】一方、回転処理制御手段が取り出す画像デ
ータは、前記したビット配列の並ぶ方向とは異なる方向
のライン上に並んだビット配列を1単位とする。ここ
で、異なる方向とはこのビット配列を90°回転したよ
うな方向を意味する。たとえば、ポートレイト方向に展
開されたビットマップデータでは、前記したビットアレ
イメモリ上のビット配列の方向はランドスケープ方向で
あるが、回転処理制御手段が取り出す画像データの方向
は、90°回転したポートレイト方向である。
On the other hand, the image data taken out by the rotation processing control means uses one unit of a bit array arranged on a line in a direction different from the direction in which the bit arrays are arranged. Here, the different direction means a direction in which this bit array is rotated by 90 °. For example, in the bitmap data expanded in the portrait direction, the direction of the bit array on the bit array memory is the landscape direction, but the direction of the image data taken out by the rotation processing control means is the portrait rotated by 90 °. Direction.

【0020】ラインバッファは、ページメモリよりも少
ない容量を持つ書き換え可能なメモリで構成され、たと
えば、SRAM,DRAM等を用いることができる。た
とえば、ビットアレイメモリが、1ワード×1ワードの
大きさで構成され、ページメモリが、ポートレイト方向
にnラインで、ランドスケープ方向にmワード長の大き
さで構成されるとすると、ラインバッファは少なくとも
1ワード×nラインの大きさの容量を持てばよい。
The line buffer is composed of a rewritable memory having a smaller capacity than the page memory. For example, an SRAM, a DRAM, or the like can be used. For example, if the bit array memory has a size of 1 word × 1 word and the page memory has a size of n lines in the portrait direction and m words in the landscape direction, the line buffer is It is sufficient to have a capacity of at least one word × n lines.

【0021】ラインバッファへの画像データの格納順序
は、たとえば、印刷装置の用紙の搬送方向がランドスケ
ープ方向であるとすると、画像データの印刷される方向
がランドスケープ方向となるような位置に順次格納して
いけばよい。
The order of storing the image data in the line buffer is, for example, assuming that the paper transport direction of the printing apparatus is the landscape direction, and the image data is sequentially stored at a position such that the printing direction of the image data is the landscape direction. I should go.

【0022】前記回転処理制御手段及び画像データ出力
手段は、いわゆるプロセッサ(CPU)により実現でき
る。画像データ処理装置は、プロセッサ,RAM,RO
M,タイマー,I/Oコントローラ等からなり、ROM
等に格納された制御プログラムをCPUが実行すること
により、各手段の処理が実行される。また、前記ライン
バッファ切替手段は、マイクロプロセッサにより実行す
ることも可能であるが、CPUの負荷を低減するため
に、CPUとは独立したハードウェアで実現することが
好ましい。
The rotation processing control means and the image data output means can be realized by a so-called processor (CPU). The image data processing device includes a processor, RAM, RO
M, timer, I / O controller, etc., ROM
The processing of each means is executed by the CPU executing the control program stored in the CPU or the like. Further, the line buffer switching means can be executed by a microprocessor, but is preferably implemented by hardware independent of the CPU in order to reduce the load on the CPU.

【0023】[0023]

【発明の実施の形態】以下、図面に示す実施の形態に基
づいてこの発明を詳述する。なお、これによってこの発
明が限定されるものではない。図1に、この発明の印刷
装置における画像データ処理装置の第1実施例の概略構
成ブロック図を示す。図1において、印刷装置は、画像
データ処理装置1とプリンタエンジン12とからなる。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, the present invention will be described in detail based on an embodiment shown in the drawings. Note that the present invention is not limited to this. FIG. 1 is a schematic block diagram of a first embodiment of an image data processing apparatus in a printing apparatus according to the present invention. In FIG. 1, the printing apparatus includes an image data processing device 1 and a printer engine 12.

【0024】ホスト11は、いわゆるパソコン等の印刷
データの送り手である。画像データ処理装置1は、プロ
セッサ(CPU)2,印刷処理等のプログラムを格納し
たROM3,各種設定データ等を記憶するRAM4,ホ
スト11との通信を行う周辺I/F6,印刷文字等のフ
ォント情報を格納したフォントROM7,転送されてき
た印刷データをビットマップ展開する領域であるビット
マップメモリ5,この発明の特徴となる変換処理に用い
られるビットアレイ13及びラインバッファ14,プリ
ンタエンジン12に印刷できる形式に変換された後の画
像データを出力するビデオ出力部8,ビデオ出力部8の
動作を制御するとともにプリンタエンジン12とプロセ
ッサ2の間のコマンド、ステータスのやりとりを制御す
るプリンタI/F部9とから構成される。プリンタエン
ジン12は、いわゆる用紙搬送機構,半導体レーザ等を
用いた画像形成機構から構成される。
The host 11 is a sender of print data such as a so-called personal computer. The image data processing apparatus 1 includes a processor (CPU) 2, a ROM storing a program for printing processing, a RAM storing various setting data, a peripheral I / F for communicating with the host 11, font information such as print characters, and the like. ROM 7, a bitmap memory for developing the transferred print data in a bitmap format, a bit array 13 and a line buffer 14 used in the conversion process, which is a feature of the present invention, and a printer engine 12. A video output unit 8 that outputs image data converted to a format, a printer I / F unit 9 that controls the operation of the video output unit 8 and controls the exchange of commands and status between the printer engine 12 and the processor 2. It is composed of The printer engine 12 includes a so-called paper transport mechanism and an image forming mechanism using a semiconductor laser or the like.

【0025】ここで、ビットマップメモリ5は、1ペー
ジ分のビットマップデータを格納するだけの容量を持つ
メモリであり、通常は、ホスト11から転送されてきた
印刷データをそのままビットマップ展開したものが格納
される。
Here, the bitmap memory 5 is a memory having a capacity enough to store bitmap data for one page. Normally, the bitmap memory 5 is obtained by directly expanding the print data transferred from the host 11 into a bitmap. Is stored.

【0026】ビットアレイ13は、ビットマップメモリ
5に展開されたデータの一部分をぬき出して、データの
並びの方向変換を行うためのメモリである。方向変換と
は、縦長方向のビットの並び(縦長ビット配列)を横長
方向のビットの並び(横長ビット配列)に変換するこ
と、またはこの逆をいうが、以下の実施例では、縦長方
向(ポートレイト)のビット配列を横長方向(ランドス
ケープ)のビット配列に変換する場合について説明す
る。すなわち縦長方向(ポートレイト)のデータとして
転送されてポートレイト方向に展開された印刷データ
を、用紙を横長方向(ランドスケープ)に搬送して印刷
する場合の変換について説明する。以下ではこの方向変
換のことを回転処理と呼ぶ。
The bit array 13 is a memory for extracting a part of the data developed in the bit map memory 5 and changing the direction of the data arrangement. The direction conversion refers to converting the arrangement of bits in the vertical direction (vertical bit array) to the arrangement of bits in the horizontal direction (horizontal bit array), or vice versa. A description will be given of a case where the bit array of (Late) is converted into a bit array of a landscape (landscape) direction. That is, a description will be given of conversion in a case where print data transferred as portrait data (portrait) and expanded in portrait direction is transported in the landscape direction (landscape) and printed. Hereinafter, this direction conversion is referred to as rotation processing.

【0027】ラインバッファ14とは、ビットアレイ1
3に格納されたデータから、1ワードごとのデータを取
り出して格納するためのメモリである。
The line buffer 14 is a bit array 1
3 is a memory for taking out data for each word from the data stored in No. 3 and storing it.

【0028】図2に、ビットマップメモリの格納内容の
一実施例の説明図を示す。図2においては、ホスト11
から縦長方向(ポートレイト方向)のデータが転送さ
れ、ビットマップメモリ5上に展開された場合を示して
いる。ビットマップメモリ5は、用紙1ページ分のデー
タを格納できる容量を持ち、縦長方向の長辺はX個のラ
インで構成され、横長方向の短辺はm個のワードで構成
されるものとする。また、1ワード=32ビットとする
と、1つのラインはmワードで構成されるので、32m
ビットで構成される。
FIG. 2 is an explanatory diagram of one embodiment of the contents stored in the bit map memory. In FIG. 2, the host 11
4 shows a case where data in a vertically long direction (portrait direction) is transferred from the memory and is developed on the bit map memory 5. The bitmap memory 5 has a capacity capable of storing data for one page of paper. The long side in the vertical direction is composed of X lines, and the short side in the horizontal direction is m words. . Further, if 1 word = 32 bits, one line is composed of m words.
Consists of bits.

【0029】1ワードは、番号0から31と名付けられ
たビットからなるものとする。図2(a)において、1
ライン目の左端の1ワードのアドレスをnとすると、1
ライン目の右端はアドレスn+m−1となる。以下、同
様に2ライン目の左端の1ワードのアドレスはn+m、
その右端はn+2m−1で表わされ、最も下のXライン
目の左端のワードのアドレスはn+(x−1)m,右端
のワードのアドレスはn+xm−1となる。また、プロ
セッサ2は、1ワード、すなわち32ビット幅のデータ
を取扱えるものとする。
One word consists of bits named numbers 0 to 31. In FIG. 2A, 1
Assuming that the address of one word at the left end of the line is n, 1
The right end of the line is address n + m-1. Hereinafter, similarly, the address of one word at the left end of the second line is n + m,
The right end is represented by n + 2m-1, the address of the leftmost word on the bottom X line is n + (x-1) m, and the address of the rightmost word is n + xm-1. It is assumed that the processor 2 can handle one word, that is, data having a 32-bit width.

【0030】ビットアレイ13は、ここでは、32ビッ
ト×32ビットのマトリクス状の領域からなるメモリと
する。ビットマップデータの一部分の領域内のワード
が、必要に応じてここに格納される。たとえば、図2
(a)のアドレスn+(x−32)mからアドレスn+
(x−1)mまでの32ワード分のデータがビットアレ
イ13に格納される。
Here, the bit array 13 is a memory composed of a matrix area of 32 bits × 32 bits. Words in a partial area of the bitmap data are stored here as needed. For example, FIG.
(A) from address n + (x−32) m to address n +
Data of 32 words up to (x−1) m are stored in the bit array 13.

【0031】図3にラインバッファ14の一実施例の構
成図を示す。ラインバッファ14は、横方向がx/32
ワード分の長さで、縦方向が32ビット長の大きさのメ
モリで構成される。後述するように、このラインバッフ
ァ14には、ビットアレイ13に読み出されたブロック
のデータが90°回転されたような配置で格納される。
FIG. 3 is a block diagram showing an embodiment of the line buffer 14. As shown in FIG. The line buffer 14 has x / 32 in the horizontal direction.
It is composed of a memory having a length of a word and a size of 32 bits in the vertical direction. As will be described later, the line buffer 14 stores the data of the block read into the bit array 13 in an arrangement rotated by 90 °.

【0032】また、図2(a)において、アドレスn+
(x−32)m,……,n+(x−1)mからなる32
ワード分のブロック1が、後述する「ビットアレイによ
る回転処理」の第1の処理単位となる。この第1の処理
単位のブロックが、図2(a)のXライン方向(垂直の
上方向)に順次処理されて、1ワード,Xライン分のデ
ータ(これを第2の処理単位と呼ぶ)が、まずラインバ
ッファ14に格納される。
In FIG. 2A, the address n +
32 consisting of (x−32) m,..., N + (x−1) m
The block 1 corresponding to a word is a first processing unit of “rotation processing by a bit array” described later. The block of the first processing unit is sequentially processed in the X-line direction (vertical upward direction) in FIG. 2A, and data of one word and X lines (this is referred to as a second processing unit). Are first stored in the line buffer 14.

【0033】すなわち、アドレスn,n+m,……,n
+(x−32)m,……,n+(x−1)mからなるブ
ロック2のデータが、第2の処理単位となる。この第2
の処理単位のデータは、後述するように、この単位でビ
ット出力部8へ転送される。したがって、ラインバッフ
ァ14の容量は、この第2の処理単位分必要であり、図
21(a)の場合には、垂直方向すなわち長辺方向のラ
イン数が“X”なので、ラインバッファ14は、水平方
向がx/32ワード、垂直方向が1ワード(32)ビッ
トに相当するライン数分、すなわち32ライン分の大き
さのメモリが必要となる。
That is, addresses n, n + m,..., N
+ (X−32) m,..., N + (x−1) m data of block 2 is the second processing unit. This second
Is transferred to the bit output unit 8 in this unit as described later. Therefore, the capacity of the line buffer 14 is required for the second processing unit. In the case of FIG. 21A, the number of lines in the vertical direction, that is, the long side direction is “X”. A memory having a size corresponding to the number of lines corresponding to x / 32 words in the horizontal direction and one word (32) bits in the vertical direction, that is, 32 lines is required.

【0034】図3に示したラインバッファ14におい
て、水平方向についての第1ライン(番号31のライ
ン)の左端の1ワード分をアドレスaとすると、その右
端のアドレスはa+(x/32−1)となり、第2ライ
ン(番号30のライン)の左端はa+x/32となる。
また、ラインバッファ14の最も下のライン(番号0の
ライン)の左端のアドレスはa+31x/32となる。
In the line buffer 14 shown in FIG. 3, if one word at the left end of the first line (line No. 31) in the horizontal direction is an address a, the address at the right end is a + (x / 32-1). ), And the left end of the second line (the line of number 30) is a + x / 32.
The leftmost address of the lowermost line (the line with the number 0) of the line buffer 14 is a + 31x / 32.

【0035】この実施例の場合は、長辺方向のライン数
Xは、32の倍数とすることが好ましいが、ライン数X
が32の倍数とならない場合は、全白のラインを付加
し、全体としてライン数が32の倍数となるようにす
る。図2(d)は、ビットアレイ13に、前記したブロ
ック1のデータを読み出し、格納した状態を示してい
る。すなわち、ビットアレイ13の最上行31にはアド
レスn+(x−1)mの1ワード分のデータが格納さ
れ、最下行0にはアドレスn+(x−32)mの1ワー
ド分のデータが格納されている。
In this embodiment, the number of lines X in the long side direction is preferably a multiple of 32, but the number of lines X
Is not a multiple of 32, an all-white line is added so that the total number of lines is a multiple of 32. FIG. 2D shows a state in which the data of the block 1 is read and stored in the bit array 13. That is, the uppermost row 31 of the bit array 13 stores data of one word at the address n + (x−1) m, and the lowermost row 0 stores data of one word at the address n + (x−32) m. Have been.

【0036】図5に、この発明のビットアレイの一実施
例の構成図を示す。この実施例では、ビットアレイ13
は、32×32ビットの数のセルから構成され、各セル
はいくつかの論理素子とフリップフロップの組合せによ
り構成できる。たとえば、セルの基本構成1(符号13
a)において、フリップフロップ13−1のデータ入力
はAND−ORゲート(13−2,3,4)からなるマ
ルチプレクサによって選択入力される。
FIG. 5 shows a configuration diagram of an embodiment of the bit array of the present invention. In this embodiment, the bit array 13
Is composed of 32 × 32 bit cells, and each cell can be composed of a combination of several logic elements and flip-flops. For example, the basic configuration 1 of the cell (reference numeral 13)
In a), the data input of the flip-flop 13-1 is selectively input by a multiplexer including AND-OR gates (13-2, 3, 4).

【0037】ビットアレイ13へのデータ書込み時(W
RITE信号=‘1’)においては、X座標が同じで、
Y座標が1小さい位置、すなわち真下のセルのフリップ
フロップの出力(MTX(X,Y−1)の信号)がフリ
ップフロップ13−1へ入力される。また、ビットアレ
イ13からのデータの読出し時(READ信号=
‘1’)においては、Y座標が同じでX座標が1大きい
位置、すなわち右隣のセルのフリップフロップの出力
(MTX(X+1,Y)の信号)がフリップフロップ1
3−1へ入力される。READ信号又はWRITE信号
は、システムバスから与えられ、NORゲート13−5
を介してフリップフロップ13−1へ与えられる。
At the time of writing data to the bit array 13 (W
In the RITE signal = '1'), the X coordinate is the same,
The output (the signal of MTX (X, Y-1)) of the flip-flop of the cell whose Y coordinate is smaller by 1, that is, the cell immediately below is input to the flip-flop 13-1. When data is read from the bit array 13 (READ signal =
In “1”), the position where the Y coordinate is the same and the X coordinate is larger by 1, that is, the output (MTX (X + 1, Y) signal) of the flip-flop of the cell on the right is the flip-flop 1
Input to 3-1. The READ signal or the WRITE signal is supplied from the system bus, and is output from the NOR gate 13-5.
To the flip-flop 13-1.

【0038】このようにビットアレイ13が構成される
場合、ビットアレイ13へのデータの書込みは、データ
バス(0〜31ビット)から得られた32ビットデータ
が水平方向の行単位のセルに対して行われる。そして行
ごとに新たなデータの書込みが行われるときに、第k行
の32ビットデータはその1つ上の行(k+1行)に書
き込まれることになる。すなわち一行ずつ32ビットデ
ータが上方向に移動させられる。
When the bit array 13 is configured as described above, writing of data to the bit array 13 is performed by using 32-bit data obtained from the data bus (0 to 31 bits) with respect to cells in row units in the horizontal direction. Done. Then, when new data is written for each row, the 32-bit data of the k-th row is written to the row immediately above (k + 1 row). That is, 32-bit data is moved upward one row at a time.

【0039】一方、ビットアレイ13からのデータの読
み出しは、ビットアレイの垂直方向の列単位のセルに対
して行われ、出力バッファ13−6を介してデータバス
に出力される。また、列ごとのデータの読出しが行われ
るときに、第i列の32ビットデータは、その1つ左の
行(i−1列)に書き込まれることになる。すなわち一
列ずつ32ビットデータが左方向へ移動させられる。
On the other hand, the reading of data from the bit array 13 is performed on cells in the column unit of the bit array in the vertical direction, and is output to the data bus via the output buffer 13-6. When data is read out for each column, the 32-bit data in the i-th column is written in the next left row (i-1 column). That is, 32-bit data is moved leftward by one column.

【0040】ところで、ビットアレイ13の最も右側の
一列のセル、すなわちX座標がX=31の垂直方向に並
んだ32個のセルは、読み出し時に、これらのセルに入
力されるデータがないので、図5の符号13bに示すよ
うな基本構成でよい。この基本構成13bでは、読み出
し信号(READ信号=‘1’)が入力されると、フリ
ップフロップ13−1の入力データは0となるが、この
ときは無効データとして取扱えばよい。
By the way, the cells in the rightmost column of the bit array 13, that is, 32 cells arranged in the vertical direction where the X coordinate is X = 31, have no data input to these cells at the time of reading. A basic configuration as shown by reference numeral 13b in FIG. 5 may be used. In the basic configuration 13b, when a read signal (READ signal = '1') is input, the input data of the flip-flop 13-1 becomes 0, but at this time, it may be handled as invalid data.

【0041】図5において、ビットアレイのY=0かつ
X=0の座標位置のセルは、システムのデータバスのビ
ット31に接続され、Y=0かつX=31の座標位置の
セルはシステムのデータバスのビット0に接続されてお
り、Y=0の座標位置に水平方向に並ぶ32個のセル
に、システムのデータバス上に出力された32ビットデ
ータ(ビット0〜31)が書込まれることになる。
In FIG. 5, the cell at the coordinate position of Y = 0 and X = 0 in the bit array is connected to bit 31 of the data bus of the system, and the cell at the coordinate position of Y = 0 and X = 31 is connected to the system. The 32-bit data (bits 0 to 31) output on the data bus of the system is written to 32 cells which are connected to bit 0 of the data bus and are arranged horizontally at the coordinate position of Y = 0. Will be.

【0042】また、X=0の座標位置に垂直方向に並ぶ
32個のセルのフリップフロップ出力は、読出し信号
(READ信号)によって制御されるスリーステート出
力バッファ13−6を介してシステムバスに接続され、
X=0かつY=0の位置のセルの出力はデータバスのビ
ット0に、Y=31の位置のセルの出力はデータバスの
ビット31に出力されるように構成される。
The flip-flop outputs of 32 cells arranged in the vertical direction at the coordinate position of X = 0 are connected to the system bus via a three-state output buffer 13-6 controlled by a read signal (READ signal). And
The output of the cell at the position of X = 0 and Y = 0 is output to bit 0 of the data bus, and the output of the cell at the position of Y = 31 is output to bit 31 of the data bus.

【0043】このように構成することにより、ビットア
レイの全セルは、論理“1”が真である書込み信号と読
み出し信号の論理和の反転論理信号であるクロック入力
により同時に動作する。書込み時には、Y=0の座標の
32個のセルにデータバス上のデータが書込まれ、残る
水平方向32個×垂直方向31個(Y=1〜31)のセ
ルにはそれぞれX座標が同じでY座標が1小さい位置の
セルのデータが書込まれる。すなわち、Y=1〜31の
座標にあるセルのデータは、Y座標のプラス方向へ1座
標分データがシフトすることとなる。
With this configuration, all the cells of the bit array operate simultaneously by the clock input which is the inverted logical signal of the logical sum of the write signal and the read signal whose logic "1" is true. At the time of writing, data on the data bus is written to 32 cells at the coordinates of Y = 0, and the remaining 32 cells in the horizontal direction × 31 cells in the vertical direction (Y = 1 to 31) have the same X coordinate. Then, the data of the cell at the position where the Y coordinate is smaller by 1 is written. That is, the data of the cell at the coordinates of Y = 1 to 31 is shifted by one coordinate in the plus direction of the Y coordinate.

【0044】一方、読み出し時には、X=31の垂直方
向の32個のセルには無効データが入り、残る水平方向
31個(X=0〜30)×垂直方向32個のセルには、
それぞれY座標が同じでX座標が1大きいセルのデータ
が書込まれる。すなわち、X=0〜30の座標にあるセ
ルのデータは、X座標のマイナス方向へ1座標分データ
がシフトすることとなる。書込み信号WRITEおよび
読み出し信号READは、プロセッサの書込み、読み出
しの各動作に対し、パルス状に変化する信号である。
On the other hand, at the time of reading, invalid data is stored in 32 cells in the vertical direction where X = 31, and the remaining 31 cells in the horizontal direction (X = 0 to 30) × 32 cells in the vertical direction have
Data of cells having the same Y coordinate and one larger X coordinate is written. That is, the data of the cell at the coordinates of X = 0 to 30 is shifted by one coordinate in the minus direction of the X coordinate. The write signal WRITE and the read signal READ are signals that change in a pulse shape for each of the write and read operations of the processor.

【0045】図6に、この発明のビットアレイのフリッ
プフロップに対する読出し/書込み動作のタイミングの
説明図を示す。図6(a)は書込みタイミングを示して
おり、図6(b)は読出しタイミングを示している。書
込み信号の立ち下がりエッジあるいは読出し信号の立ち
下がりエッジのタイミングで、セル内のフリップフロッ
プのデータが変化することになる。書込み信号あるいは
読み出し信号は、NORゲート13−5により論理反転
するので、書込み信号あるいは読み出し信号の立ち下が
りエッジは、フリップフロップのクロック入力では立ち
上がりエッジとなっている。
FIG. 6 is an explanatory diagram of the timing of the read / write operation for the flip-flop of the bit array according to the present invention. FIG. 6A shows the write timing, and FIG. 6B shows the read timing. The data of the flip-flop in the cell changes at the timing of the falling edge of the write signal or the timing of the falling edge of the read signal. Since the write signal or the read signal is logically inverted by the NOR gate 13-5, the falling edge of the write signal or the read signal is the rising edge at the clock input of the flip-flop.

【0046】次に、ビットマップに展開された印刷デー
タをビットアレイを経由して、ラインバッファに格納す
る処理について説明する。以下の処理は、プロセッサ2
がROM等に格納されている制御プログラムに基づいて
行う。
Next, a description will be given of a process for storing print data developed into a bitmap into a line buffer via a bit array. The following processing is performed by the processor 2
Is performed based on a control program stored in a ROM or the like.

【0047】縦長方向の印刷データ(ポートレイトイメ
ージ)を横長方向の印刷データ(ランドスケープイメー
ジ)に変更する場合、すべてのデータが90°回転させ
られるが、ポートレイトイメージの左下がランドスケー
プイメージの左上になる。そこで、まず図2(a)にお
ける最も左下の位置のデータから処理を開始する。すな
わち、図2(a)の第2の処理単位であるブロック2の
中であって、さらに第1の処理単位であるブロック1の
中の左下ワードに相当するアドレスn+(x−1)mの
データを読み出して、ビットアレイに書き込む。
When the print data (portrait image) in the portrait direction is changed to the print data (landscape image) in the landscape direction, all the data are rotated by 90 °, but the lower left of the portrait image is positioned at the upper left of the landscape image. Become. Therefore, first, the processing is started from the data at the lower left position in FIG. That is, in the block 2 that is the second processing unit in FIG. 2A, the address n + (x−1) m corresponding to the lower left word in the block 1 that is the first processing unit Read data and write to bit array.

【0048】このとき、アドレスn+(x−1)mの1
ワード分(32ビット)のデータは、データバス上に出
力され、書込み信号(WRITE)の立ち下がり時に、
図5のY=0の座標の水平方向にある32個のセル(ラ
イン0のセル群と呼ぶ)に書込まれる。図2(b)は、
この書き込み後のビットアレイの状態(状態1)を示し
ている。このとき、ビットアレイのライン31〜ライン
1の各セルのデータは、Y座標のプラス方向にシフトさ
れるが、図2(b)においては前記したようにすべて無
効データが格納されている。
At this time, 1 of address n + (x-1) m
The word data (32 bits) is output on the data bus, and when the write signal (WRITE) falls,
The data is written to 32 cells (referred to as a cell group of line 0) in the horizontal direction at the coordinate of Y = 0 in FIG. FIG. 2 (b)
The state of the bit array after writing (state 1) is shown. At this time, the data of each cell of the lines 31 to 1 of the bit array is shifted in the positive direction of the Y coordinate, but in FIG. 2B, all invalid data is stored as described above.

【0049】次に、ビットマップのアドレスn+(x−
2)nにある32ビットデータがビットアレイのY=0
の位置の最下行(ライン0のセル群)に書き込まれる。
このとき、アドレスn+(x−2)mのデータが書き込
まれると同時に、Y=0の位置のライン0のセル群に書
込まれていたデータが、Y=1の位置のライン1のセル
群に書き込まれる。すなわち、1ライン分の32ビット
データ(アドレスn+(x−1)mのデータ)がY座標
の上方向に1ビットだけシフトされる。
Next, the address n + (x−
2) 32-bit data in n is Y = 0 in the bit array
Is written to the bottom row (cell group on line 0) at the position of.
At this time, at the same time as the data at the address n + (x−2) m is written, the data written to the cell group at line 0 at the position Y = 0 is replaced with the cell group at line 1 at the position Y = 1. Is written to. That is, one line of 32-bit data (data of address n + (x-1) m) is shifted by one bit in the upward direction of the Y coordinate.

【0050】図2(c)は、このときのビットアレイの
状態を示したものである。このように、図2(a)のブ
ロック1のデータを、1ワード単位で順次ビットアレイ
へ書込んでいくと、データバスから最新の32ビットデ
ータがY=0の位置にあるライン0のセル群に書込ま
れ、ビットアレイにすでに書き込まれていたデータは、
Y座標の上方向へ順次1ライン分ずつシフトされる。
FIG. 2C shows the state of the bit array at this time. As described above, when the data of the block 1 in FIG. 2A is sequentially written to the bit array in word units, the latest 32-bit data is read from the data bus on the line 0 cell at the position of Y = 0. Data written to the group and already written to the bit array
The data is sequentially shifted upward by one line in the upward direction of the Y coordinate.

【0051】したがって、ブロック1のデータ、すなわ
ちアドレスn+(x−1)mからアドレスn+(x−3
2)mまでの32ワード分のデータが、ビットアレイに
書き込まれた後、ビットアレイの状態は図2(d)に示
すような状態となる。ビットアレイの最上行(ライン3
1のセル群)にはアドレスn+(x−1)mの1ワード
分のデータが入り、最下行(ライン0のセル群)にはア
ドレスn+(x−32)mの1ワード分のデータが入
る。このように、1ブロック分のデータの書き込みが終
了すると、次にビットアレイからデータの読出しが行わ
れ、ラインバッファに書き込まれる。
Therefore, the data of the block 1, that is, the address n + (x-1) m to the address n + (x-3)
2) After 32 words of data up to m have been written into the bit array, the state of the bit array is as shown in FIG. 2 (d). Top row of bit array (line 3
1 cell group) contains data for one word at address n + (x-1) m, and the bottom row (cell group for line 0) contains data for one word at address n + (x-32) m. enter. When the writing of data for one block is completed, data is read from the bit array and written to the line buffer.

【0052】図4に、この発明のビットアレイからのデ
ータの読み出し処理の説明図を示す。読み出しは、前記
したように、図5のX=0の垂直方向の32個のセル
(列31のセル群と呼ぶ)にあるデータに対して行われ
る。すなわち、書き込まれたデータに対して90°回転
した32ビット分のデータが読み出される。図4(b)
は、図2(d)と同一のビットアレイの状態を示したも
のであるが、ここでX=0の位置の垂直方向の32ビッ
トデータ、すなわち列31のセル群のデータのまとまり
を“a”と表わす。以下、右隣の列30のセル群の32
ビットデータのまとまりを“a+1”,右端の列0のセ
ル群の32ビットデータのまとまりを“a+31”と表
わす。
FIG. 4 is an explanatory diagram of a process of reading data from a bit array according to the present invention. As described above, reading is performed on data in 32 cells in the vertical direction at X = 0 in FIG. 5 (referred to as a cell group in column 31). That is, 32-bit data rotated by 90 ° with respect to the written data is read. FIG. 4 (b)
2D shows the same state of the bit array as that of FIG. 2D. Here, the 32-bit data in the vertical direction at the position of X = 0, that is, a group of data of the cell group of the column 31 is represented by “a”. ". Hereinafter, 32 of the cell group of the column 30 on the right
A group of bit data is represented as "a + 1", and a group of 32-bit data of the cell group in the rightmost column 0 is represented as "a + 31".

【0053】プロセッサがビットアレイに対して読み出
し動作を行うと、読み出しパルスが“1”の間、ビット
アレイの出力バッファがイネーブルとなり、座標X=0
にある32個のセルのデータaがデータバス上に出力さ
れる。この1回目の読み出し動作の終了、すなわち、読
み出し信号の下がりエッジでビットアレイのデータはX
座標のマイナス方向へ1座標シフトされるとともに、X
=0の垂直方向の32個のセル(列31のセル群)には
その右隣にあった列30のセル群のデータがシフトさ
れ、X=31の垂直方向にある32個のセル(列0のセ
ル群)は無効データとなり、ビットアレイは図4(c)
の状態となる。
When the processor performs a read operation on the bit array, while the read pulse is "1", the output buffer of the bit array is enabled, and the coordinate X = 0.
Is output on the data bus. At the end of the first read operation, that is, at the falling edge of the read signal, the data in the bit array becomes X
The coordinate is shifted by one coordinate in the minus direction, and X
= 0, the data of the cell group in the column 30 adjacent to the right is shifted to the 32 cells in the vertical direction (cell group in the column 31), and the 32 cells (columns in the vertical direction) of X = 31 are shifted. 0 cell group) becomes invalid data, and the bit array is shown in FIG.
State.

【0054】ビットアレイから読みだされたデータ
‘a’は、プロセッサにより、ラインバッファのアドレ
スA(図4(a)参照)に書き込まれる。すなわち、最
初の書き込みであるので、ラインバッファの左上の1ワ
ード分の領域(縦方向の第1ラインのビット31〜0の
領域)に書き込まれる。
The data 'a' read from the bit array is written by the processor to the address A of the line buffer (see FIG. 4A). That is, since this is the first write, the data is written in the upper left one-word area of the line buffer (the area of bits 31 to 0 of the first line in the vertical direction).

【0055】次に、ビットアレイの2回目の読み出しが
行われる。このとき、前回の読み出し時に、X=1の座
標の垂直方向のデータ‘a+1’が、X=0の位置にシ
フトされているので、2回目の読み出し時には、データ
‘a+1’がデータバス上に出力される。そして、プロ
セッサは、データ‘a+1’を、ラインバッファのアド
レスA+x/32に書き込む。
Next, the second reading of the bit array is performed. At this time, the data 'a + 1' in the vertical direction at the coordinate of X = 1 has been shifted to the position of X = 0 at the time of the previous reading, so that at the time of the second reading, the data 'a + 1' is on the data bus. Is output. Then, the processor writes the data 'a + 1' to the address A + x / 32 of the line buffer.

【0056】図4(d)は、最後の列のセル群のデータ
‘a+31’、すなわち、図2(b)のビットアレイの
列0のセル群にあったデータが左端にシフトされた状態
を示しており、このデータ‘a+31’は32回目の読
み出しでデータバス上に出力され、プロセッサによりラ
インバッファのアドレスA+31x/32の位置に書き
込まれる。このように、ビットアレイからの読出し処理
を32回繰り返すと、図2(a)に示したビットマップ
のブロック1の中のデータが、90°回転された状態で
ラインバッファのブロック4(アドレスA,A+x/3
2,……,A+31x/32)に書き込まれる。以上
が、前記した第1の処理単位におけるビットマップデー
タの一連の回転処理である。
FIG. 4D shows a state where the data “a + 31” of the cell group in the last column, that is, the data in the cell group in column 0 of the bit array in FIG. 2B is shifted to the left end. This data 'a + 31' is output on the data bus in the 32nd read, and is written by the processor at the position of the address A + 31x / 32 in the line buffer. As described above, when the reading process from the bit array is repeated 32 times, the data in the block 1 of the bit map shown in FIG. , A + x / 3
2,..., A + 31x / 32). The above is a series of rotation processing of the bitmap data in the first processing unit.

【0057】次に、以上のような第1の処理単位につい
て行った処理を、第2の処理単位に対して繰り返す。す
なわち、図2(a)のブロック2の内部において、上方
向に向かって、32ワード分ずつ、前記したようなビッ
トアレイを介したラインバッファへの書込み処理を行
う。ブロック2全体についての回転処理が完了すると、
ラインバッファには、図4(a)に示すように、32ラ
イン分のランドスケープイメージ(回転後のビットマッ
プデータ)が格納されたことになる。
Next, the processing performed for the first processing unit as described above is repeated for the second processing unit. That is, in the block 2 in FIG. 2A, the above-described write processing to the line buffer via the bit array is performed for each of 32 words in the upward direction. When the rotation process for the entire block 2 is completed,
As shown in FIG. 4A, a landscape image (rotated bitmap data) for 32 lines is stored in the line buffer.

【0058】このラインバッファに格納されたランドス
ケープイメージは、プロセッサによってアドレスA,A
+1,A+2,……,A+x/32−1,A+x/3
2,……の順に読み出され、ビデオ出力部8へ出力され
る。そして、ビデオ出力部8は、各アドレスごとのパラ
レルの32ビットデータをシリアルデータに変換してプ
リンタエンジン12へ出力することにより、図13
(a)に示すような用紙の搬送方向に対する印刷が可能
となる。
The landscape image stored in the line buffer is stored in the address A, A by the processor.
+1, A + 2,..., A + x / 32-1, A + x / 3
Are read out in the order of 2,... And output to the video output unit 8. The video output unit 8 converts the parallel 32-bit data for each address into serial data and outputs the serial data to the printer engine 12, whereby
Printing in the paper transport direction as shown in FIG.

【0059】ラインバッファからビデオ出力部への出力
処理と、残りの第2の処理単位(ブロック3)に対する
回転処理(ビットマップからビットアレイへの書込み処
理)とは互いに影響を及ぼさない独立した処理なので、
この2つの処理は並行して行うことができる。
The output processing from the line buffer to the video output unit and the rotation processing (write processing from the bit map to the bit array) for the remaining second processing unit (block 3) are independent processings that do not affect each other. So,
These two processes can be performed in parallel.

【0060】66MHzのシステムバスクロックの場
合、解像度600dpiのA4ポートレイト(長辺方
向)のブロック2のデータをランドスケープ(短辺方
向)に変換し、そのデータをビデオ出力部に書込むのに
要する時間Tは、メモリにSDRAM(クロックレイテ
ンシCL=3)を使用する場合、以下のように算出する
ことができる。
In the case of a 66 MHz system bus clock, it is necessary to convert the data of the block 2 of A4 portrait (long side direction) having a resolution of 600 dpi into a landscape (short side direction) and write the data to the video output unit. The time T can be calculated as follows when the SDRAM (clock latency CL = 3) is used for the memory.

【0061】(1)1ロングワード(1ワード×4)あた
りのデータ転送時間=180ns (2)A4ポートレイトの長辺のドット数=7040ドッ
ト (3)ビットマップからのデータ読み出し数=7040ワ
ード (4)ブロック2のデータのビットアレイへの書込み数=
7040ワード (5)ブロック2のデータのビットアレイからの読み出し
数=7040ワード (6)ビットアレイ読み出しデータのラインバッファへの
書込み=7040ワード (7)ラインバッファからビデオ出力部への書込み数=7
040ワード
(1) Data transfer time per 1 long word (1 word × 4) = 180 ns (2) Number of dots on long side of A4 portrait = 7040 dots (3) Number of data read from bit map = 7040 words (4) Number of block 2 data written to bit array =
7040 words (5) Number of block 2 data read from bit array = 7040 words (6) Write bit array read data to line buffer = 7040 words (7) Number of write from line buffer to video output unit = 7
040 words

【0062】上記のうち、(3)〜(7)の5つのデー
タ転送がプロセッサによって実行され、処理時間Tは次
式で表わされる。 T=180ns×(7040/4)×5=1.584m
s また、プロセッサの処理オーバーヘッドを2倍とする
と、総処理時間は2Tであり、1.584ms×2=
3.168msとなる。
Of the above, five data transfers (3) to (7) are executed by the processor, and the processing time T is represented by the following equation. T = 180 ns × (7040/4) × 5 = 1.584 m
If the processing overhead of the processor is doubled, the total processing time is 2T, and 1.584 ms × 2 =
3.168 ms.

【0063】一方、当社40ppmの速度のページプリ
ンタ(VSP4701)の1ラインの周期は約235μ
sであるので、32ライン分の周期を算出すると、 235μs×32=7.52ms となる。
On the other hand, the cycle of one line of our page printer (VSP4701) with a speed of 40 ppm is about 235 μm.
s, the cycle of 32 lines is calculated as 235 μs × 32 = 7.52 ms.

【0064】このように、第2の処理単位の総処理時間
2Tが、プリンタエンジンの32ライン分の周期に比べ
て十分早いので、32ライン分のラインバッファは2組
用意すれば十分であり、一方を変換・格納用に、他方を
ビデオ出力部への出力用として、順次巡回利用(ローテ
ーション)させれば、回転処理用のメモリをページ単位
で持つことなく、ポートレイトイメージで展開されたビ
ットマップデータを、回転処理(ランドスケープデータ
に変換)しビデオ出力部へ出力することが可能となる。
As described above, since the total processing time 2T of the second processing unit is sufficiently faster than the period of 32 lines of the printer engine, it is sufficient to prepare two sets of line buffers for 32 lines. If one is used for conversion / storage and the other is used for output to the video output unit, the data is sequentially rotated (rotated), so that a bit developed in a portrait image can be used without having a memory for rotation processing in page units. The map data can be rotated (converted to landscape data) and output to the video output unit.

【0065】なお、プロセッサによるデータ転送を実施
例として説明したが、データ転送の制御マスタとしてD
MAコントローラを使用するようにしてもよい。また、
以上の実施例では、ポートレイト方向(長辺方向)で展
開されたビットマップデータをランドスケープ方向(短
辺方向)に変換する場合を説明したが、逆に、ランドス
ケープからポートレイト方向への変換も、同様の処理を
用いれば可能である。
Although the data transfer by the processor has been described as an embodiment, the data transfer control master is
An MA controller may be used. Also,
In the above embodiment, the case where the bitmap data expanded in the portrait direction (long side direction) is converted in the landscape direction (short side direction) has been described. On the contrary, the conversion from the landscape to the portrait direction is also performed. It is possible by using similar processing.

【0066】以上の実施例では、図1に示すように、ラ
インバッファ14は、システムバスに接続されている場
合を考えたが、システムバスには接続されない2組のラ
インバッファを設けた構成とすることもできる。図7
に、この発明の画像データ処理装置の第2実施例の構成
ブロック図を示す。
In the above embodiment, as shown in FIG. 1, the case where the line buffer 14 is connected to the system bus is considered. However, the line buffer 14 is provided with two sets of line buffers not connected to the system bus. You can also. FIG.
2 is a block diagram showing the configuration of a second embodiment of the image data processing apparatus according to the present invention.

【0067】ここでは、ビットアレイ15の出力側端子
がシステムバスに接続されていないこと、ラインバッフ
ァ16は2つ備えられ(16a,16b)、いずれもシ
ステムバスに接続されていないこと、ラインバッファへ
のデータの書き込み及びラインバッファからビデオ出力
部8へのデータの読み出しを行うラインバッファ制御回
路17を新たに備えることが、図1に示した実施例の構
成と異なる。図7の構成によれば、プロセッサの負荷を
低減させることができる。ここで、2つのラインバッフ
ァ(図8の16a,16b)は読み出し・書き込みが交
互に利用されるが、一方にビットアレイ15から読み出
されたデータが書き込まれているときには、他方からビ
デオ出力部8へデータが読み出されるように、ラインバ
ッファ制御回路17によって制御される。
Here, the output side terminal of the bit array 15 is not connected to the system bus, two line buffers 16 are provided (16a, 16b), and both are not connected to the system bus. 1 is different from the configuration of the embodiment shown in FIG. 1 in that a line buffer control circuit 17 for writing data into the video buffer and reading data from the line buffer to the video output unit 8 is newly provided. According to the configuration of FIG. 7, the load on the processor can be reduced. Here, reading and writing are alternately used for the two line buffers (16a and 16b in FIG. 8), but when data read from the bit array 15 is written to one of them, the video output unit is sent from the other. 8 is controlled by the line buffer control circuit 17 so that data is read out.

【0068】図9に、この発明の第2の実施例のビット
アレイ15の構成図を示す。第1の実施例で示した図5
のビットアレイ13とは、次の2点で異なる。1)図5
のビットアレイ13は、出力バッファ13−6を介して
システムバスに接続されていたが、図9のビットアレイ
15はシステムバスには接続されていない。2)図9の
ビットアレイ15では、出力選択用のマルチプレクサ1
5cを備えている。
FIG. 9 shows a configuration diagram of the bit array 15 according to the second embodiment of the present invention. FIG. 5 shown in the first embodiment.
Is different from the bit array 13 in the following two points. 1) FIG.
Is connected to the system bus via the output buffer 13-6, but the bit array 15 in FIG. 9 is not connected to the system bus. 2) In the bit array 15 of FIG.
5c.

【0069】ここで、マルチプレクサ15cには、ビッ
トアレイからの2つのセル群の出力が接続される。1つ
は、図5のビットアレイと同様に、X=0の位置にある
垂直方向に並んだ32個のセルの出力(MTX(0,
Y))であり、もう一つは、Y=31の位置にある水平
方向に並んだ32個のセルの出力(MTX(X,3
1))である。このMTX(X,31)の出力は、ビッ
トアレイに書き込まれた水平方向の1ワード分のデータ
に対応するが、これは回転処理が不要なときの出力に対
応する。すなわち、MTX(X,31)の出力は、ビッ
トマップに展開されたデータの方向と印刷する際の用紙
の搬送方向とが一致する場合を考慮したものであり、こ
の出力経路を設けることにより、ビットアレイに書き込
んだ水平方向のデータをそのまま容易に出力できるよう
になる。
The outputs of the two cell groups from the bit array are connected to the multiplexer 15c. One is the output (MTX (0, 0) of 32 cells arranged in the vertical direction at the position of X = 0 similarly to the bit array of FIG.
Y)), and the other is the output (MTX (X, 3) of 32 cells arranged in the horizontal direction at the position of Y = 31.
1)). The output of MTX (X, 31) corresponds to one horizontal word of data written in the bit array, which corresponds to the output when no rotation processing is required. In other words, the output of MTX (X, 31) takes into consideration the case where the direction of the data developed in the bitmap matches the transport direction of the paper when printing, and by providing this output path, The horizontal data written in the bit array can be easily output as it is.

【0070】また、マルチプレクサ15cの動作は、プ
ロセッサからのUNROT信号によって制御される。こ
こでUNROT信号は、回転処理をするかしないかを示
す信号であり、UNROT=“1”は回転処理をしない
ことを意味し、このときマルチプレクサ15cは出力M
TX(X,31)を選択し、そのデータがラインバッフ
ァへ送られる。また、UNROT=“0”は回転処理を
することを意味し、このときマルチプレクサ15cは出
力MTX(0,Y)を選択し、そのデータがラインバッ
ファへ送られる。
The operation of the multiplexer 15c is controlled by the UNROT signal from the processor. Here, the UNROT signal is a signal indicating whether or not to perform the rotation processing, and UNROT = "1" means that the rotation processing is not performed. At this time, the multiplexer 15c outputs the output M
TX (X, 31) is selected, and the data is sent to the line buffer. Further, UNROT = "0" means that the rotation process is performed. At this time, the multiplexer 15c selects the output MTX (0, Y), and the data is sent to the line buffer.

【0071】ビットアレイ15の基本構成は、図5に示
したのと同様に2種類存在する。図9の符号15aに示
す基本構成1は、X=31の垂直方向に並んだ32個の
セル以外の構成であり、符号15bに示す基本構成2は
ビットアレイ15の右端に位置するX=31の垂直方向
に並んだ32個のセルの構成である。図9の基本構成1
及び2では、回転処理しない場合の読み出し、またはビ
ットアレイへの書き込みの論理を意味する回路(図9の
符号15−6,15−7)および読み出し時のX座標の
マイナス方向へのデータのシフト条件として回転処理を
行う論理(図9の符号15−3)が追加されている。
There are two basic configurations of the bit array 15, as shown in FIG. The basic configuration 1 shown by reference numeral 15a in FIG. 9 is a configuration other than 32 cells arranged in the vertical direction of X = 31, and the basic configuration 2 shown by reference numeral 15b is X = 31 located at the right end of the bit array 15. Is a configuration of 32 cells arranged in the vertical direction. Basic configuration 1 in FIG.
In (2) and (2), a circuit (reference numerals 15-6 and 15-7 in FIG. 9) indicating the logic of reading or writing to the bit array when the rotation processing is not performed, and shifting the data in the minus direction of the X coordinate at the time of reading. A logic for performing a rotation process (reference numeral 15-3 in FIG. 9) is added as a condition.

【0072】たとえば、読み出し時に回転処理をしない
場合、または書き込みの場合、すなわちUNROT=
“1”かつ、READ=“1”またはWRITE=
“1”のとき、Y座標のプラス方向へのデータのシフト
が選択される。また、読み出し時に回転処理をする場
合、すなわち、UNROT=“0”かつ、READ=
“1”のときX座標のマイナス方向へのデータのシフト
が選択される。
For example, when no rotation processing is performed at the time of reading, or at the time of writing, that is, UNROT =
“1” and READ = “1” or WRITE =
When “1”, the shift of the data in the plus direction of the Y coordinate is selected. In the case of performing a rotation process at the time of reading, that is, UNROT = "0" and READ =
When "1", data shift in the minus direction of the X coordinate is selected.

【0073】次に、図8に、この発明のラインバッファ
及びラインバッファ制御回路の実施例の構成図を示す。
ここでラインバッファ制御回路17は、ビットアレイ1
5にデータが書き込まれた後、ビットアレイ15のデー
タをラインバッファを経由してビデオ出力部へ転送制御
するためのものであり、プロセッサの処理とは無関係
に、ハードウェア的に動作できるものである。この発明
の第2の実施例におけるビットマップデータの回転処理
について、以下に説明する。ここでも、ポートレイト方
向で展開されたビットマップデータをランドスケープ方
向へ回転する場合を考える。
Next, FIG. 8 shows a configuration diagram of an embodiment of the line buffer and the line buffer control circuit of the present invention.
Here, the line buffer control circuit 17 controls the bit array 1
5 is for controlling the transfer of the data of the bit array 15 to the video output unit via the line buffer after the data has been written to the data array 5, and can operate in hardware independently of the processing of the processor. is there. The rotation processing of the bitmap data according to the second embodiment of the present invention will be described below. Here, a case is considered in which the bitmap data developed in the portrait direction is rotated in the landscape direction.

【0074】図8において、“WRITE READ
Y”信号は、ラインバッファ制御回路17からプロセッ
サ2へ送られる書き込み許可用信号である。この“WR
ITEREADY”信号が“1”のときのみ、プロセッ
サ2が、ビットアレイ15にデータを書き込むことがで
きる。これは、ラインバッファ制御回路17が、ビット
アレイ15のデータを読み出し中に、次の第1の処理単
位のブロックのデータの書込みが実行されると、正しい
読み出しができないからである。
In FIG. 8, "WRITE READ"
The "Y" signal is a write permission signal sent from the line buffer control circuit 17 to the processor 2. This "WR" signal is used.
Only when the "ITEREADY" signal is "1", the processor 2 can write data to the bit array 15. This is because the line buffer control circuit 17 reads the data of the bit array 15 during the next first operation. This is because if the data of the block of the processing unit is written, correct reading cannot be performed.

【0075】図8において、ラインバッファ16は、2
つのラインバッファ2a,2b(符号16a,16b)
とマルチプレクサ16cとから構成される。ラインバッ
ファ16a,16bのどちらもその入力がビットアレイ
15の出力端子に接続され、その出力がマルチプレクサ
16cに接続される。マルチプレクサ16cは、BUF
SEL信号に基づいて、2つのラインバッファ16a,
16bのどちらか一方の出力を選択してビデオ出力部へ
転送する動作をする。ビットアレイ15から出力された
データは、ラインバッファ制御回路17によってどちら
か一方のラインバッファ(16a又は16b)に書き込
まれる。
In FIG. 8, the line buffer 16
Line buffers 2a and 2b (reference numerals 16a and 16b)
And a multiplexer 16c. The input of each of the line buffers 16a and 16b is connected to the output terminal of the bit array 15, and the output is connected to the multiplexer 16c. The multiplexer 16c has a BUF
Based on the SEL signal, two line buffers 16a,
The operation of selecting one of the outputs 16b and transferring it to the video output unit is performed. The data output from the bit array 15 is written into one of the line buffers (16a or 16b) by the line buffer control circuit 17.

【0076】図10に、この発明のラインバッファ制御
回路17に関係する制御信号のタイミングチャートを示
す。WRITE READY信号は、初期状態が“1”
(=書込み可)となっており、かつラインバッファ制御
回路の内部信号の一つであるBWSEL信号により選択
されているラインバッファの入力レディ信号(ラインバ
ッファ制御回路の内部信号IRDYAまたはIRDY
B)が“1”のときのみアサートされる。
FIG. 10 is a timing chart of control signals related to the line buffer control circuit 17 of the present invention. The WRITE READY signal is initially "1".
(= Writable) and the input ready signal of the line buffer selected by the BWSEL signal which is one of the internal signals of the line buffer control circuit (the internal signal IRDYA or IRDY of the line buffer control circuit).
Asserted only when B) is "1".

【0077】WRITE READY信号がアサートさ
れている時は、プロセッサによるビットアレイ15への
32ワード分のデータの書込みが可能であることを示し
ており、この書込みが一回でも実行されるとネゲートさ
れ(WRITE READY信号が“0”となる)、そ
の後、ビットアレイ15に書込まれた32ワード分のデ
ータがラインバッファ16へすべて読み出された後、再
びアサートされる。ビットアレイ15からラインバッフ
ァへのデータの書込みは、ラインバッファ制御回路17
の内部信号であるRR(READ READY)信号に
よって制御される。
When the WRITE READY signal is asserted, it indicates that data of 32 words can be written into the bit array 15 by the processor, and if this writing is performed even once, it is negated. (The WRITE READY signal becomes “0”.) Then, after all of the 32 words of data written in the bit array 15 are read out to the line buffer 16, the signal is asserted again. Writing of data from the bit array 15 to the line buffer is performed by the line buffer control circuit 17.
Is controlled by an RR (READ READY) signal which is an internal signal of

【0078】また、ラインバッファの選択は、読み出し
のための*READa及び*READb信号と、書き込
みのための*WRITEa及び*WRITEb信号のい
ずれか一方をアサートすることによって行われる。すな
わち、RR信号がアサートされると、ビットアレイから
データが読み出されるとともに、現在選択されているラ
インバッファ(たとえば符号16a)へ、読み出された
データが書き込まれる。
The line buffer is selected by asserting one of the * READa and * READb signals for reading and the * WRITEa and * WRITEb signals for writing. That is, when the RR signal is asserted, data is read from the bit array and the read data is written to the currently selected line buffer (for example, reference numeral 16a).

【0079】この第2実施例で、ラインバッファのライ
ン方向(すなわち、短辺方向)のワード数を256ワー
ドとすると、図4(a)において、アドレスAからアド
レスA+31x/32に相当するラインバッファへのデ
ータの書込みアドレスは、それぞれ16進数で、
“0”、“100”、……“1F00”となる。
In the second embodiment, assuming that the number of words in the line direction (that is, the short side direction) of the line buffer is 256, the line buffer corresponding to address A to address A + 31x / 32 in FIG. The write address of the data to each is hexadecimal,
"0", "100", ... "1F00".

【0080】ラインバッファ制御回路17から出力され
る読み出し信号READと書込み信号*WRITEaと
は、同じタイミングで変化するパルス信号である。ここ
で、*WRITEa信号は負論理の信号(“0”が真)
である。
The read signal READ and the write signal * WRITEa output from the line buffer control circuit 17 are pulse signals that change at the same timing. Here, the * WRITEa signal is a negative logic signal (“0” is true)
It is.

【0081】この*WRITEa信号によりビットアレ
イから読み出されたデータのラインバッファへの書込み
タイミング制御が行われる。1つのREADパルスでビ
ットアレイはX座標のマイナス方向に1つシフトし、1
つの*WRITEaパルスでラインバッファの書込みア
ドレスの上位バイトが1だけインクリメントされる。こ
れが32ワード分繰り返され、ビットアレイからの32
ワード目の読み出し完了、すなわち、ラインバッファへ
の32ワード目の書込み完了によりRRがネゲートされ
るとともに、再び、WRITE READYがアサート
される。
The timing of writing the data read from the bit array to the line buffer is controlled by the * WRITEa signal. With one READ pulse, the bit array is shifted by one in the minus direction of the X coordinate, and
With one * WRITEa pulse, the upper byte of the write address of the line buffer is incremented by one. This is repeated for 32 words, and 32 words from the bit array are read.
Upon completion of the reading of the word, that is, completion of writing of the 32nd word to the line buffer, RR is negated, and WRITE READY is asserted again.

【0082】また、ラインバッファの書込みアドレスは
下位バイトが1インクリメントされ、上位バイトが0に
リセットされ、次の32ワードのラインバッファへの書
込みに備える。WRITE READYのアサートによ
り、プロセッサによる次の第1の処理単位のブロックの
ビットアレイへの書込み、続いて、ビットアレイからの
読み出しとラインバッファへの書込みが行われる。この
ような処理が繰り返し行われ、第2の処理単位であるブ
ロック2の回転処理(ポートレイト−ランドスケープ変
換)が行われる。
The write address of the line buffer is such that the lower byte is incremented by 1 and the upper byte is reset to 0 to prepare for writing to the next 32 words of the line buffer. The assertion of WRITE READY causes the processor to write the next block of the first processing unit to the bit array, and then read from the bit array and write to the line buffer. Such processing is repeatedly performed, and the rotation processing (portrait-landscape conversion) of the block 2 as the second processing unit is performed.

【0083】また、プロセッサは、第2処理単位の最終
ワード(アドレスn)をビットアレイへ書込みをした
後、TC信号をアサートする。これは、第2の処理単位
がそのワードの書込みで最終であることをラインバッフ
ァ制御回路17に通知するためのものである。
After writing the last word (address n) of the second processing unit into the bit array, the processor asserts the TC signal. This is for notifying the line buffer control circuit 17 that the second processing unit is the last in writing the word.

【0084】TC信号がアサートされたブロックの32
ワードのデータ読み出し終了後、ラインバッファ制御回
路内では、以下の信号遷移が行われる。 BWSEL:“0”→“1” これはビットアレイの読み出しデータの格納ラインバッ
ファを2aから2bへ切り替えることを意味する。 IRDYA:“1”→“0” ORDYA:“0”→“1” これは、ラインバッファ2aをライトモードからリード
モートへ切り替えることを意味する。
The block 32 in which the TC signal was asserted
After the data reading of the word is completed, the following signal transition is performed in the line buffer control circuit. BWSEL: “0” → “1” This means that the storage line buffer for the read data of the bit array is switched from 2a to 2b. IRDYA: “1” → “0” ORDYA: “0” → “1” This means that the line buffer 2a is switched from the write mode to the read mode.

【0085】これにより、ビットアレイの読み出しデー
タを格納するラインバッファが2bとなり、前述のライ
ンバッファ2aの際と同様の処理により、次の第2の処
理単位分のデータが順次、ビットアレイ15に書込ま
れ、変換され、ラインバッファ2bに格納される。
As a result, the line buffer for storing the read data of the bit array becomes 2b, and the data of the next second processing unit is sequentially stored in the bit array 15 by the same processing as that of the line buffer 2a. The data is written, converted, and stored in the line buffer 2b.

【0086】一方、リードモードに切り替わったライン
バッファ2aは次のように動作する。ORDYAのアサ
ート後のプリントエンジンからのライン同期信号BDの
アサートにより、BUFSEL=1となりマルチプレク
サ16cがラインバッファ2aの出力を選択する。ビデ
オ出力部からは、データ要求信号DREQがビデオバッ
ファ制御回路17に送られる。DREQ信号はBDのア
サート以降、プリントエンジンへの32個のシリアルデ
ータの送出毎にアサートされる信号でありその応答信号
である*DACKによってネゲートされる。
On the other hand, the line buffer 2a switched to the read mode operates as follows. BUFSEL = 1 is set by the assertion of the line synchronization signal BD from the print engine after the assertion of ORDYA, and the multiplexer 16c selects the output of the line buffer 2a. From the video output unit, a data request signal DREQ is sent to the video buffer control circuit 17. The DREQ signal is asserted every time 32 serial data is sent to the print engine after the assertion of the BD, and is negated by the response signal * DACK.

【0087】なお、ライン最終ワードのビデオ出力部へ
の送出を示すTCAが*DACKとともにアサートされ
た場合は、次のラインが開始されるまで、すなわち、新
たなBD信号のアサートがあるまではDREQはアサー
トされない。
When the TCA indicating the transmission of the last word of the line to the video output unit is asserted together with * DACK, DREQ is started until the next line is started, that is, until a new BD signal is asserted. Is not asserted.

【0088】ビデオ出力部からのデータ要求DREQに
応じて、まず、1ライン目のデータを、アドレスを
“0”から順次インクリメントとして読み出す。読み出
し信号*READaと同じタイミングで変化するパルス
信号である*DACKをDREQの応答信号としてビデ
オ出力部へ出力し、マルチプレクサ16cから選択出力
されたデータのビデオ出力部への書込みを行う。
In response to the data request DREQ from the video output unit, first, the data of the first line is read from the address “0” sequentially in increments. * DACK, which is a pulse signal that changes at the same timing as the read signal * READa, is output to the video output unit as a DREQ response signal, and data selected and output from the multiplexer 16c is written to the video output unit.

【0089】ビデオ出力部では第1の実施例同様、パラ
レル−シリアルのデータ変換を行い、ビデオデータをプ
リントエンジンに送出する。なお、ビデオ出力部への送
出数はTCがアサートされた第1の処理単位のブロック
の最終データをラインバッファに格納する時のアドレス
値の下位バイト値に等しい。この値をラインバッファ制
御回路内で保持しておき、ビデオ出力部への送出ワード
数がこの値に等しくなった時、TCAをアサートし、ビ
デオ出力部へのデータ送出をターミネイトする。
As in the first embodiment, the video output unit performs parallel-serial data conversion and sends the video data to the print engine. The number of transmissions to the video output unit is equal to the lower byte value of the address value when the last data of the block of the first processing unit for which TC is asserted is stored in the line buffer. This value is held in the line buffer control circuit, and when the number of words to be transmitted to the video output unit becomes equal to this value, TCA is asserted to terminate data transmission to the video output unit.

【0090】第2ラインのデータの送出は、次のBDの
アサートにより開始される。開始アドレスもまたBD信
号のアサートにより上位バイトが“1”インクリメン
ト、下位バイトがリセットされて、“100”(16
進)のアドレスのデータより送出が再開される。このよ
うな動作が32ライン分に渡って行われる。
The transmission of the data of the second line is started by the assertion of the next BD. As for the start address, the upper byte is incremented by "1" and the lower byte is reset by the assertion of the BD signal to "100" (16
The transmission is restarted from the data of the address (hex). Such an operation is performed over 32 lines.

【0091】32ライン目の最終ワードがビデオ出力部
へ出力された後、ラインバッファ制御回路内では、以下
の信号遷移が行われる。 IRDYA:“0”→“1” ORDYA:“1”→“0” これは、ラインバッファ2aをリードモードからライト
モードへ切り替えることを意味する。
After the last word of the 32nd line is output to the video output unit, the following signal transition is performed in the line buffer control circuit. IRDYA: “0” → “1” ORDYA: “1” → “0” This means that the line buffer 2a is switched from the read mode to the write mode.

【0092】ビットマップデータをランドスケープに変
換したデータをラインバッファに格納する時間は、32
ライン分のビデオ送出時間より十分に早い。したがっ
て、ビットアレイの読み出しデータの格納先を選択する
BWSELは他方のラインバッファ2bへの変換データ
格納完了により、ラインバッファ2a側に既に切り替え
られている(図10のTime−Bのタイミング参
照)。
The time for storing the data obtained by converting the bitmap data into the landscape is 32 lines.
It is much faster than the video transmission time for the line. Therefore, the BWSEL for selecting the storage destination of the read data of the bit array has already been switched to the line buffer 2a side by the completion of the conversion data storage in the other line buffer 2b (see the timing of Time-B in FIG. 10).

【0093】しかし、このタイミングのとき、ラインバ
ッファの入力レディ信号IRDYAは“0”である。し
たがって、IRDYA=“0”であるため、プロセッサ
へのWRITE READY信号はアサートされず、ネ
ゲートされたままとなり、ビットアレイのデータの書込
みは禁止される。
However, at this timing, the input ready signal IRDYA of the line buffer is "0". Therefore, since IRDYA = "0", the WRITE READY signal to the processor is not asserted, remains negated, and the writing of data in the bit array is prohibited.

【0094】ラインバッファ2aの全てのデータをビデ
オ出力部に出力した時点で、IRDYA=1となり、W
RITE READYもまたアサートされて、新たな第
2の処理単位のブロックの変換処理が実行可能となる
(図10のTime−Cのタイミング参照)。
When all the data in the line buffer 2a is output to the video output unit, IRDYA = 1, and W
RITE READY is also asserted, and the conversion process of the block of the new second processing unit can be executed (see the timing of Time-C in FIG. 10).

【0095】このような動作を1ページ分にわたって実
行することにより、ポートレイト方向で展開されたビッ
トマップデータをランドスケープ方向に回転させてビデ
オ出力部に送出することが可能となる。
By executing such an operation over one page, it is possible to rotate the bitmap data developed in the portrait direction in the landscape direction and send it to the video output unit.

【0096】この第2実施例によれば、ラインバッファ
制御回路17を設けたので、第1の実施例において述べ
たプロセッサが行う5つのデータ転送処理のうち、次の
3つのデータ転送処理が不要となる。 (1)プロセッサによるビットアレイからの読み出し処
理 (2)プロセッサによるラインバッファへの書込み処理 (3)プロセッサによるラインバッファからビデオ出力
部への書込み処理
According to the second embodiment, since the line buffer control circuit 17 is provided, the following three data transfer processes among the five data transfer processes performed by the processor described in the first embodiment are unnecessary. Becomes (1) Read processing from the bit array by the processor (2) Write processing to the line buffer by the processor (3) Write processing from the line buffer to the video output unit by the processor

【0097】このとき、ビデオ出力部へ書き込むまでの
回転処理に要する総処理時間は(180ns×(704
0/4)×2)×2=1.267msとなり、前記した
第1実施例(3.168ms)に比べて、回転処理の時
間を低減できる。
At this time, the total processing time required for the rotation processing until writing to the video output unit is (180 ns × (704)
0/4) × 2) × 2 = 1.267 ms, so that the rotation processing time can be reduced as compared with the first embodiment (3.168 ms).

【0098】図11及び図12に、この発明の第3実施
例のラインバッファへの展開処理の説明図を示す。これ
は、ビットマップに展開されたデータの展開方向と、用
紙の搬送方向とが一致する場合の処理を示している。ビ
ットアレイ15,ラインバッファ16は、図8及び図9
に示したのと同じ回路を用い、図9のMTX(X,3
1)の経路を介して、ビットアレイ15からラインバッ
ファ16へデータを転送し、さらにビデオ出力部へ出力
する。
FIG. 11 and FIG. 12 are explanatory diagrams of the processing for expanding the data into the line buffer according to the third embodiment of the present invention. This indicates a process in a case where the developing direction of the data developed into the bitmap matches the paper transport direction. The bit array 15 and the line buffer 16 are shown in FIGS.
The MTX (X, 3) shown in FIG.
The data is transferred from the bit array 15 to the line buffer 16 via the path 1), and further output to the video output unit.

【0099】図11の場合は、図4のように回転処理を
する必要がないので、図11(a)に示したように左上
位置のアドレスn,n+m,……,n+31mの順に、
ビットマップデータを読み出して、ビットアレイ15へ
書き込めばよい。すなわち図11(a)のブロック1の
32ワード分のデータがビットアレイへ書き込まれる
と、図11(b),図11(c)の状態を経た後、図1
1(d)のようになる。
In the case of FIG. 11, there is no need to perform the rotation process as shown in FIG. 4, and therefore, as shown in FIG. 11A, the addresses n, n + m,...
The bitmap data may be read out and written to the bit array 15. That is, when the data of 32 words of the block 1 of FIG. 11A is written into the bit array, the state of FIG. 11B and FIG.
It becomes like 1 (d).

【0100】またビットアレイに書き込まれたデータ
は、そのまま変換(回転処理)されることなく、図12
に示すようにラインバッファへ転送される。このとき、
図9に示した読み出し方向制御信号UNROTを“1”
として行えば、経路MTX(X,31)から出力された
データがマルチプレクサ15cにより選択され、ライン
バッファへ転送される。
The data written in the bit array is not converted (rotated) as it is,
Is transferred to the line buffer as shown in FIG. At this time,
The read direction control signal UNROT shown in FIG.
, The data output from the path MTX (X, 31) is selected by the multiplexer 15c and transferred to the line buffer.

【0101】図11(b)に示した最上行のアドレスn
のデータは、ラインバッファの左上位置に格納され、次
に図11(c)に示したアドレスn+mのデータはその
一つ下のラインである第2ラインに格納され、アドレス
n+31mのデータはラインバッファの左下の位置に格
納される。また、ブロックごとの処理順は、図2とは異
なり、図11(a)に示すように、ブロック1に対し
て、その右方向に順に行えばよい。ラインバッファ制御
回路17による処理、すなわちラインバッファへの書込
み処理及びラインバッファからビデオ出力部への読み出
し処理の詳細は、第2実施例と同様に行えばよい。な
お、この発明の画像データ処理装置は、上記実施例のよ
うに印刷装置に組み込まれるほか、ビットマップ展開及
び回転処理を必要とする各種の画像処理装置に用いるこ
とができる。
Address n in the uppermost row shown in FIG.
Is stored in the upper left position of the line buffer, then the data at the address n + m shown in FIG. 11C is stored in the second line which is one line below, and the data at the address n + 31m is stored in the line buffer. Is stored at the lower left position. Further, the processing order for each block is different from that in FIG. 2, and as shown in FIG. The details of the processing by the line buffer control circuit 17, that is, the writing processing to the line buffer and the reading processing from the line buffer to the video output unit may be performed in the same manner as in the second embodiment. The image data processing apparatus according to the present invention can be incorporated in a printing apparatus as in the above-described embodiment, and can be used in various image processing apparatuses that require bitmap development and rotation processing.

【0102】[0102]

【発明の効果】この発明によれば、ビットマップ展開さ
れた画像データの展開方向と用紙の搬送方向が異なって
いても、メモリ容量を増加させることなく画像データの
回転処理ができ、またプロセッサの負担を軽減し印刷速
度を低下させることなく画像データの回転処理ができる
画像データ処理装置を提供できる。
According to the present invention, even if the developing direction of the bitmap-developed image data is different from the conveying direction of the sheet, the image data can be rotated without increasing the memory capacity, and the processor can be used. It is possible to provide an image data processing apparatus capable of performing a rotation process of image data without reducing a load and reducing a printing speed.

【図面の簡単な説明】[Brief description of the drawings]

【図1】この発明の画像データ処理装置の第1実施例の
構成ブロック図である。
FIG. 1 is a configuration block diagram of a first embodiment of an image data processing device of the present invention.

【図2】この発明のビットマップメモリの一実施例の格
納内容の説明図である。
FIG. 2 is an explanatory diagram of storage contents of an embodiment of a bit map memory according to the present invention.

【図3】この発明のラインバッファの一実施例の構成図
である。
FIG. 3 is a configuration diagram of one embodiment of a line buffer according to the present invention;

【図4】この発明のビットアレイからのデータの読出処
理の説明図である。
FIG. 4 is an explanatory diagram of a process of reading data from a bit array according to the present invention.

【図5】この発明の第1実施例のビットアレイの構成図
である。
FIG. 5 is a configuration diagram of a bit array according to the first embodiment of the present invention.

【図6】この発明のビットアレイの読出し/書込み動作
のタイミングの説明図である。
FIG. 6 is an explanatory diagram of a timing of a read / write operation of the bit array of the present invention.

【図7】この発明の画像データ処理装置の第2実施例の
構成ブロック図である。
FIG. 7 is a configuration block diagram of a second embodiment of the image data processing device of the present invention.

【図8】この発明のラインバッファ及びラインバッファ
制御回路の一実施例の構成図である。
FIG. 8 is a configuration diagram of one embodiment of a line buffer and a line buffer control circuit of the present invention.

【図9】この発明の第2実施例のビットアレイの構成図
である。
FIG. 9 is a configuration diagram of a bit array according to a second embodiment of the present invention.

【図10】この発明のラインバッファ制御回路に関係す
る制御信号のタイムチャートである。
FIG. 10 is a time chart of control signals related to the line buffer control circuit of the present invention.

【図11】この発明の第3実施例において、ラインバッ
ファへの展開処理の説明図である。
FIG. 11 is an explanatory diagram of a process of expanding a line buffer in a third embodiment of the present invention.

【図12】この発明の第3実施例において、ラインバッ
ファへの展開処理の説明図である。
FIG. 12 is an explanatory diagram of expansion processing to a line buffer in a third embodiment of the present invention.

【図13】印刷装置の用紙の搬送方向の説明図である。FIG. 13 is an explanatory diagram of a sheet conveying direction of the printing apparatus.

【符号の説明】[Explanation of symbols]

1 画像データ処理装置 2 プロセッサ 3 ROM 4 RAM 5 ビットマップメモリ 6 周辺I/F 7 フォントROM 8 ビデオ出力部 9 プリンタI/F 10 プロセッサバス 11 ホスト 12 プリンタエンジン 13 ビットアレイ 13a ラインバッファ基本構成1 13b ラインバッファ基本構成2 14 ラインバッファ 15 ビットアレイ 15a ラインバッファ基本構成1 15b ラインバッファ基本構成2 15c マルチプレクサ 16 ラインバッファ 16a ラインバッファ2a 16b ラインバッファ2b 16c マルチプレクサ 17 ラインバッファ制御回路 Reference Signs List 1 image data processing device 2 processor 3 ROM 4 RAM 5 bitmap memory 6 peripheral I / F 7 font ROM 8 video output unit 9 printer I / F 10 processor bus 11 host 12 printer engine 13 bit array 13a line buffer basic configuration 1 13b Line buffer basic configuration 2 14 Line buffer 15 Bit array 15a Line buffer basic configuration 1 15b Line buffer basic configuration 2 15c Multiplexer 16 Line buffer 16a Line buffer 2a 16b Line buffer 2b 16c Multiplexer 17 Line buffer control circuit

Claims (6)

【特許請求の範囲】[Claims] 【請求項1】 ビットマップ展開された画像データをペ
ージ単位で記憶したページメモリと、ページメモリの所
定のブロックに存在する画像データを所定のライン方向
に並んだビット配列ごとに読み出して格納したビットア
レイメモリと、ビットアレイメモリに格納された画像デ
ータに対して、前記ビット配列の方向と異なる方向のラ
インごとに画像データを取り出す回転処理制御手段と、
回転処理制御手段によって取り出された画像データを所
定の順序で格納したラインバッファメモリと、ラインバ
ッファメモリに格納された画像データを順次読み出す画
像データ出力手段とを備えたことを特徴とする画像デー
タ処理装置。
1. A page memory for storing bitmap-deployed image data in page units, and a bit for reading and storing image data present in a predetermined block of the page memory in a bit array arranged in a predetermined line direction. An array memory, rotation processing control means for extracting image data for each line in a direction different from the bit array direction with respect to the image data stored in the bit array memory,
Image data processing comprising: a line buffer memory for storing image data taken out by a rotation processing control means in a predetermined order; and image data output means for sequentially reading the image data stored in the line buffer memory. apparatus.
【請求項2】 前記ラインバッファが、2つのラインバ
ッファから構成され、一方のラインバッファが、前記回
転処理制御手段によって取り出された画像データを格納
するのに用いられているときには、他方のラインバッフ
ァは、前記画像データ出力手段により読み出されるのに
用いられ、前記2つのラインバッファは、互いに排他的
に巡回利用されることを特徴とする請求項1記載の画像
データ処理装置。
2. The image processing apparatus according to claim 1, wherein the line buffer includes two line buffers. When one of the line buffers is used to store image data extracted by the rotation processing control unit, the other line buffer is used. 2. The image data processing apparatus according to claim 1, wherein the first line buffer is used for reading by the image data output unit, and the two line buffers are used exclusively cyclically.
【請求項3】 前記2つのラインバッファを巡回利用す
るためのラインバッファ切替手段をさらに備えたことを
特徴とする請求項2記載の画像データ処理装置。
3. The image data processing apparatus according to claim 2, further comprising a line buffer switching unit for cyclically using said two line buffers.
【請求項4】 前記ビットアレイメモリに格納された複
数個のビット配列が、それぞれ単位ワード長であること
を特徴とする請求項3記載の画像データ処理装置。
4. The image data processing apparatus according to claim 3, wherein each of the plurality of bit arrays stored in the bit array memory has a unit word length.
【請求項5】 前記ページメモリに記憶された画像デー
タがポートレイト方向に展開されたデータである場合
に、前記ブロックがポートレイト方向に並んだライン上
の所定数のビット配列から構成され、前記回転処理制御
手段が前記ビットアレイメモリから取り出す画像データ
が、前記ポートレイト方向と垂直な方向に並んだライン
上の第2のビット配列であることを特徴とする請求項
1,2,3又は4記載の画像データ処理装置。
5. When the image data stored in the page memory is data expanded in a portrait direction, the block is constituted by a predetermined number of bit arrays on a line arranged in the portrait direction, 5. The image data retrieved by the rotation processing control means from the bit array memory is a second bit arrangement on a line arranged in a direction perpendicular to the portrait direction. An image data processing apparatus as described in the above.
【請求項6】 前記請求項1乃至4の画像データ処理装
置と、用紙搬送手段とを備え、前記ページメモリに記憶
された画像データの展開方向と、用紙搬送手段に設置さ
れた用紙の搬送方向とが異なる場合に、前記回転処理制
御手段が、ビットアレイメモリに格納された画像データ
のビット配列の方向とは異なる方向のラインごとに画像
データを取り出すことを特徴とする印刷装置。
6. An image data processing apparatus according to claim 1, further comprising a paper transport unit, wherein a developing direction of the image data stored in the page memory and a transport direction of the paper set in the paper transport unit. Wherein the rotation processing control means extracts the image data for each line in a direction different from the direction of the bit array of the image data stored in the bit array memory.
JP35770099A 1999-12-16 1999-12-16 Image data-processing apparatus Withdrawn JP2001171184A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP35770099A JP2001171184A (en) 1999-12-16 1999-12-16 Image data-processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP35770099A JP2001171184A (en) 1999-12-16 1999-12-16 Image data-processing apparatus

Publications (1)

Publication Number Publication Date
JP2001171184A true JP2001171184A (en) 2001-06-26

Family

ID=18455472

Family Applications (1)

Application Number Title Priority Date Filing Date
JP35770099A Withdrawn JP2001171184A (en) 1999-12-16 1999-12-16 Image data-processing apparatus

Country Status (1)

Country Link
JP (1) JP2001171184A (en)

Similar Documents

Publication Publication Date Title
JP2001171184A (en) Image data-processing apparatus
US20020018238A1 (en) Printer, print control apparatus and method
US4935897A (en) Semiconductor memory device suitable for use as a dot image buffer for a printer
JPS6324321A (en) Dynamic memory control circuit for image memory
US6014225A (en) Frame buffer control method and circuit
JP2711673B2 (en) Image data transfer control method and device
JPH03114856A (en) Printer data management system
JPH0645252B2 (en) Rastaskian printer controller
JP3039503B2 (en) Control device and control method in printer system
JP2748004B2 (en) Rotation processing method of character pattern group
JPS6183048A (en) Image data rotary apparatus
JP2001239707A (en) Printer controller and method for transferring data
JPS59199272A (en) Printer
JPH0520178A (en) Data transfer controller
JPH0761087A (en) Efficient utilization method for frame memory
JPH0284357A (en) Page memory device
JPH1040167A (en) Picture processor
JPH0592620A (en) Outputting system for reduced data
JPH11342653A (en) Image output unit
JPH02164567A (en) Page printer for information processor
JPH07262082A (en) Memory controller
JPH047175A (en) Page printer controlling apparatus
JPH04140163A (en) Printer
JPH08258346A (en) Data processor
JPH03114850A (en) Printer control apparatus

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20070306