JP2001171185A - Image-forming apparatus and method for processing image - Google Patents

Image-forming apparatus and method for processing image

Info

Publication number
JP2001171185A
JP2001171185A JP35975099A JP35975099A JP2001171185A JP 2001171185 A JP2001171185 A JP 2001171185A JP 35975099 A JP35975099 A JP 35975099A JP 35975099 A JP35975099 A JP 35975099A JP 2001171185 A JP2001171185 A JP 2001171185A
Authority
JP
Japan
Prior art keywords
rendering
band
data
time
unit
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
JP35975099A
Other languages
Japanese (ja)
Inventor
Shigeo Kubota
繁男 窪田
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.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP35975099A priority Critical patent/JP2001171185A/en
Publication of JP2001171185A publication Critical patent/JP2001171185A/en
Withdrawn legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To prevent a printing overrun by estimating a processing time required for a rendering process in accordance with a length of a period in which an access conflict for a rendering part and an output part to concurrently access to the same physical memory is likely to occur. SOLUTION: The rendering part 334 estimates the time required for rendering for each band from intermediate data stored in an intermediate data memory part 333, and simulates the rendering process for each band or the like on the basis of the estimated time. Whether accessing to the same physical memory conflicts or not is checked from the simulation result. Which of the band- processings conflicts is detected when the conflict takes place. A corresponding safety coefficient is obtained from a safety coefficient memory part 335 on the basis of the detected result, based on which the time required for rendering for each band is estimated again. The estimated value is compared with a preset predetermined value.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、PDL等で表現さ
れた印刷データをビットマップ等の形でメモリに展開し
て印刷出力を行う画像形成装置及びこの画像形装置のた
めの画像処理方法に関する。
[0001] 1. Field of the Invention [0002] The present invention relates to an image forming apparatus for developing print data expressed in PDL or the like in a memory in the form of a bit map or the like and performing print output, and an image processing method for the image forming apparatus. .

【0002】[0002]

【従来の技術】パーソナルコンピュータなどの外部装置
(ホスト)から印刷データを受信し、これを印刷する画
像形成装置では、受信した所定フォーマットの印刷デー
タを一旦メモリに格納し、メモリから読み出してビット
マップデータに変換し、これをまた一時的にメモリに格
納したあと、最終的に読み出して印刷するものが一般的
である。このような画像形成装置では、画像情報の高解
像度化、多値化が進んでいるために、元の印刷データを
ビップマップデータに変換してメモリ上に展開する際
に、必要なメモリ容量が増加する傾向にある。
2. Description of the Related Art In an image forming apparatus which receives print data from an external device (host) such as a personal computer and prints the print data, the received print data in a predetermined format is temporarily stored in a memory, read out from the memory, and read in a bitmap format. Generally, data is converted to data, temporarily stored in a memory, and finally read out and printed. In such an image forming apparatus, since the resolution of image information has been increased and the number of values has been increased, the memory capacity required when converting the original print data into bitmap data and expanding the data on the memory is reduced. It tends to increase.

【0003】図1は、このような画像形成装置1のデー
タの全体的な流れを示した図、図2は画像形成装置1の
概略ブロック図、図3はバンド処理におけるデータの流
れを示した図である。まず、図1を参照して、データの
全体的な流れを説明する。画像形成装置1は、外部装置
(ホスト)2から送られてきた印刷データを、まず受信
部3で受信する。画像形成装置1の内部では、データは
システムバス10を介してやり取りされる。受信部3で
受信されたデータは、ビットマップに展開し易い形式の
中間データに変換されて不図示のメモリに格納される。
そして、レンダリング部4は、この中間データをレンダ
リング処理してビットマップデータを生成し、これをメ
モリ5(図2及び図3では、物理メモリ11、12とし
て示す)に一時的に格納する。出力部6は、印刷部7の
動作に同期してメモリ5からビットマップデータを読み
出して印刷部7に送出し、印刷部7がこのビットマップ
データを印刷するという手順で印刷を完了する。
FIG. 1 shows the overall flow of data of such an image forming apparatus 1, FIG. 2 is a schematic block diagram of the image forming apparatus 1, and FIG. 3 shows the flow of data in band processing. FIG. First, the overall flow of data will be described with reference to FIG. In the image forming apparatus 1, first, the receiving unit 3 receives the print data sent from the external device (host) 2. Data is exchanged via the system bus 10 inside the image forming apparatus 1. The data received by the receiving unit 3 is converted into intermediate data in a format that can be easily developed into a bitmap, and stored in a memory (not shown).
Then, the rendering unit 4 performs rendering processing on the intermediate data to generate bitmap data, and temporarily stores the bitmap data in the memory 5 (in FIGS. 2 and 3, the physical memories 11 and 12). The output unit 6 reads out the bitmap data from the memory 5 in synchronization with the operation of the printing unit 7 and sends out the bitmap data to the printing unit 7, and the printing unit 7 prints the bitmap data, thus completing the printing.

【0004】ところで、例えば、レーザープリンタのよ
うな画像形成装置では、1ページ分のビットマップデー
タの全情報をメモリ7上に展開するのではなく、図3に
示すように、中間データを用紙の搬送方向と垂直な方向
に分割して多数の短冊状のバンド(バンド1〜バンド
9)に分割する方式を採用しているものがある。この場
合、画像形成装置1は、外部装置2から受信した印刷デ
ータを中間データに変換して1ページ分保持するとも
に、レンダリング部4は、この中間データから、分割し
た各バンドごとのビットマップデータを生成する。
By the way, for example, in an image forming apparatus such as a laser printer, not all information of one page of bitmap data is developed on the memory 7 but, as shown in FIG. There is a method that employs a method in which the sheet is divided into a number of strip-shaped bands (band 1 to band 9) by dividing the sheet in a direction perpendicular to the transport direction. In this case, the image forming apparatus 1 converts the print data received from the external apparatus 2 into intermediate data and holds it for one page, and the rendering unit 4 converts the intermediate data into bitmap data for each of the divided bands. Generate

【0005】画像形成装置1には、物理メモリ1(1
1)、物理メモリ2(12)が設けられており、物理メ
モリ1(11)の中にはバンドメモリ1の領域が、ま
た、物理メモリ2(12)の中にはバンドメモリ2の領
域が確保されている。ここで「物理メモリ」とは、デー
タバス、アドレスバスなどが独立しており、別々にアク
セスすることができるメモリのことを指している。ここ
では物理メモリ1(11)と物理メモリ2(12)は、
それぞれ別個のデバイスとされ、それぞれにバスが設け
られている。従って、物理メモリ1(11)と物理メモ
リ2(12)に同時にアクセスすることはできるが、例
えば同じ物理メモリ1(11)内においてバンドメモリ
1の領域とその他の領域に同時にアクセスすることはで
きない。
The image forming apparatus 1 has a physical memory 1 (1
1), a physical memory 2 (12) is provided, and an area of the band memory 1 is provided in the physical memory 1 (11), and an area of the band memory 2 is provided in the physical memory 2 (12). Is secured. Here, "physical memory" refers to a memory in which a data bus, an address bus, and the like are independent and can be accessed separately. Here, the physical memory 1 (11) and the physical memory 2 (12)
Each is a separate device, and each is provided with a bus. Therefore, it is possible to access the physical memory 1 (11) and the physical memory 2 (12) at the same time, but it is not possible to simultaneously access the area of the band memory 1 and other areas within the same physical memory 1 (11). .

【0006】各バンドメモリは、前記バンド1〜バンド
9の1バンド分のビットマップデータを格納できるだけ
の容量が確保されている。実際に印刷するときは、ま
ず、バンド1についてレンダリングを行い、得られたビ
ットマップデータを、物理メモリ1(11)のバンドメ
モリ1へ格納する。バンド1についてのレンダリングが
終わると、バンド2についてのレンダリングを開始し、
得られたビットマップデータを物理メモリ2(12)の
バンドメモリ2に格納するが、このときこれと併行し
て、出力部は、バンドメモリ1からバンド1のビットマ
ップデータを読み出して印刷部7にそのデータを送出
し、印刷部7による印刷動作が行われる。バンド2につ
いてのレンダリング及びバンドメモリ1からの読み出し
が終了すると、次にバンド3についてのレンダリングを
開始し、得られたビットマップデータを物理メモリ1
(11)のバンドメモリ1に格納するとともに、出力部
はバンドメモリ2からバンド2のビットマップデータの
読み出して印刷部7にそのデータを送出し、印刷部7が
印刷動作を併せて行う。以後、バンドメモリ1とバンド
メモリ2を交互に使いながら同様の動作を繰り返し、9
バンド分のレンダリング処理及び印刷が終了すると、1
ページ分の画像形成が完了する。
[0006] Each band memory has a capacity enough to store bitmap data for one band of the bands 1 to 9. When actually printing, first, rendering is performed for band 1 and the obtained bitmap data is stored in band memory 1 of physical memory 1 (11). When the rendering for band 1 is completed, the rendering for band 2 is started,
The obtained bitmap data is stored in the band memory 2 of the physical memory 2 (12). At this time, the output unit reads the bitmap data of the band 1 from the band memory 1 and outputs the read bitmap data to the printing unit 7. And the printing unit 7 performs the printing operation. When rendering for band 2 and reading from band memory 1 are completed, rendering for band 3 is started, and the obtained bitmap data is stored in physical memory 1.
The output unit reads out the bitmap data of band 2 from the band memory 2 and sends the data to the printing unit 7 while storing the data in the band memory 1 of (11), and the printing unit 7 also performs the printing operation. Thereafter, the same operation is repeated while using the band memories 1 and 2 alternately, and 9
When rendering processing and printing for the band are completed, 1
Image formation for a page is completed.

【0007】しかしながら、このような方法で印刷を実
行する場合、特にレーザープリンタのように静電ドラム
の回転速度によって用紙の搬送時間が決まっている画像
形成装置では、1バンド分の用紙の搬送時間内に、1バ
ンド分の中間データをレンダリングすることが必要とな
る。この条件が満たされない状況は「プリントオーバー
ラン」と呼ばれ、このまま印刷動作を実行すると、印刷
結果が不完全なものとなる。
However, when printing is performed by such a method, especially in an image forming apparatus such as a laser printer in which the transport time of the paper is determined by the rotation speed of the electrostatic drum, the transport time of one band of paper is It is necessary to render one band of intermediate data. A situation where this condition is not satisfied is called “print overrun”, and if the printing operation is performed as it is, the printing result will be incomplete.

【0008】従来、プリントオーバーランが生じる場合
の不完全な印刷を回避するために、ホストから受信した
データに基づいて中間データを生成する段階で、各バン
ドごとにレンダリングに要する時間を予測するととも
に、前記二つのバンドメモリの他に、更にもう1バンド
分の第三のバンドメモリを確保する方法が提案されてい
る。この方法では、レンダリングに要する時間が1バン
ド分の用紙搬送時間を超えると予測されたバンドに対し
ては、用紙搬送(印刷動作)が開始される前に予めレン
ダリングを行ってビットマップデータを生成しておき
(プリレンダリング)、これを第三のバンドメモリに格
納しておく。そして、用紙搬送が開始されると、レンダ
リングに要する時間が1バンド分の用紙搬送に要する時
間を超えるバンド以外は、前述のように二つのバンドメ
モリを交互に使ってレンダリングと印刷出力を行うとと
もに、レンダリングに要する時間が1バンド分の用紙搬
送に要する時間を超えるバンドを印刷する段階になった
ら、前述の第三のバンドメモリからビットマップデータ
を読み出して印刷処理を行う。このような処理を行うこ
とによって、プリントオーバーランが生じる状況での不
完全な印刷結果を回避していた。
Conventionally, in order to avoid incomplete printing when a print overrun occurs, at the stage of generating intermediate data based on data received from a host, the time required for rendering for each band is estimated and In addition to the above two band memories, a method of securing a third band memory for one more band has been proposed. In this method, for a band whose rendering time is expected to exceed the paper transport time for one band, rendering is performed in advance before paper transport (printing operation) is started to generate bitmap data. In advance (pre-rendering), this is stored in the third band memory. Then, when the paper transport is started, the rendering and print output are performed by alternately using the two band memories as described above, except for the bands that require a rendering time that exceeds the time required for the paper transport for one band. When it is time to print a band whose rendering time exceeds the time required to convey the paper for one band, the bit map data is read from the third band memory and the printing process is performed. By performing such processing, an incomplete print result in a situation where a print overrun occurs has been avoided.

【0009】ところで、前述のレンダリングに要する時
間を予測して得られる予測時間は、単純にレンダリング
に要する時間だけであり、実際には、印刷部の制御の際
の割り込み処理等により、予測された時間との差が生じ
ることがある。そこで、前述のようにして予測された時
間に対して、さらに安全係数を用意しておき、例えば、
レンダリングの予測時間が、1バンド分の用紙搬送の時
間の80%に達した場合には、プリントオーバーランが
生じてリアルタイムでのレンダリングができないものと
判断し、予めプリレンダリングを行って得られたビット
マップデータを前述の第三のバンドメモリに格納してお
くようにした画像形成装置があった。このような安全係
数を設けることによって、実際のレンダリング処理が上
記の予測時間よりも遅延した場合でも、不完全な印刷結
果が生じないようにしている。
The estimated time obtained by estimating the time required for the above-described rendering is simply the time required for the rendering. Actually, the estimated time is estimated by an interrupt process or the like in controlling the printing unit. There may be a time difference. Therefore, a safety factor is further prepared for the time predicted as described above, for example,
When the predicted rendering time reaches 80% of the paper transport time for one band, it is determined that a print overrun has occurred and rendering in real time cannot be performed, and pre-rendering has been performed in advance. There has been an image forming apparatus in which bitmap data is stored in the above-described third band memory. By providing such a safety coefficient, an incomplete print result is prevented from occurring even when the actual rendering processing is delayed more than the predicted time.

【0010】しかしながら、実際のレンダリング処理が
予測時間よりも遅延する度合いは、本来、印刷しようと
するデータごとに異なっているはずであるが、従来の装
置では、前述の安全係数は一律に設定されていた。この
ため、印刷しようとするデータによっては、同一の物理
メモリに対するアクセスの重複が頻発し、レンダリング
処理の遅延時間が、安全係数を掛けた予測時間をも上回
ってしまい、プリントオーバーランが発生してしまうこ
とがあった。
However, the degree to which the actual rendering process is delayed from the predicted time should originally be different for each piece of data to be printed. However, in the conventional apparatus, the above-described safety coefficient is set uniformly. I was For this reason, depending on the data to be printed, duplication of accesses to the same physical memory occurs frequently, and the delay time of the rendering process exceeds the predicted time multiplied by the safety factor, and a print overrun occurs. There was sometimes.

【0011】図4は、図1乃至図3に示した従来の画像
形成装置が行う処理を示したフローチャートであり、レ
ンダリング部4及び出力部6の処理内容と、物理メモリ
1(11)内のバンドメモリ1及び物理メモリ2(1
2)内のバンドメモリ2が保持しているデータについ
て、その時間的な変化を、縦軸下向きに時間をとって示
している。例えば、バンド1についてみると、レンダリ
ング部4は、時刻t0から時刻t1までの期間にレンダリ
ングを行い、その結果をバンドメモリ1に出力イメージ
(ビットマップデータ)として格納する。このバンドメ
モリ1に格納されたデータは、出力部6が時刻t1から
時刻t2の期間に読み出して印刷される。
FIG. 4 is a flow chart showing the processing performed by the conventional image forming apparatus shown in FIGS. 1 to 3, and shows the processing contents of the rendering unit 4 and the output unit 6 and the physical memory 1 (11). Band memory 1 and physical memory 2 (1
As for the data held by the band memory 2 in 2), the temporal change thereof is shown by taking time along the vertical axis downward. For example, regarding band 1, the rendering unit 4 performs rendering during a period from time t0 to time t1, and stores the result in the band memory 1 as an output image (bitmap data). The data stored in the band memory 1 is read and printed by the output unit 6 during a period from time t1 to time t2.

【0012】ところで、各バンドをレンダリング処理す
るのに要する時間は、バンドごとに異なる。図4では、
時間t1−t0、t1−t2、…を、1バンド分の印刷処理
(1バンド分の用紙の搬送処理)を行うのに十分な時間
としてとっており、各バンドのレンダリングの開始時刻
も、例えばバンド3についてみると、バンド2のレンダ
リングが終了後直ちに開始せず、時刻t3になってから
でなければ開始できない。これは、バンドメモリは中の
データがすべて読み出されないと次のバンドのビットマ
ップデータを書き込むことができない状況下で、出力部
6がバンドメモリ1からバンド1のデータを読み出すの
に時刻t2までかかっているからである。このため、図
4を見ると分かるように、比較的短い時間でレンダリン
グが終了するバンドについては、そのバンドのレンダリ
ングが終了してから次のバンドのレンダリングを開始す
るまでに、レンダリング処理の待ち時間が生じている。
この時間は、処理全体を遅延させる原因となる。
By the way, the time required for rendering each band differs for each band. In FIG.
The times t1-t0, t1-t2,... Are set to a time sufficient for performing the printing process for one band (conveying process of the paper for one band). Regarding the band 3, the rendering of the band 2 does not start immediately after the end, but cannot be started until the time t3. This is because the band memory cannot write the bitmap data of the next band unless all the data in the band memory is read out. Because it is hanging. Therefore, as can be seen from FIG. 4, for a band for which rendering is completed in a relatively short time, the waiting time of the rendering process is required after rendering of the band is completed until rendering of the next band is started. Has occurred.
This time causes a delay in the entire processing.

【0013】そこで、各物理メモリ内にさらにバンドメ
モリを増やす方法が考えられる。例えば、図5(図3に
対応する)に示すように、物理メモリ1(111)の中
にバンドメモリ1とバンドメモリ3の領域を確保し、物
理メモリ2(112)の中にバンドメモリ2とバンドメ
モリ4の領域を確保してバンド処理を実行する場合を考
える。図6は、図5に示した構成でのバンド処理がどの
ようになるかを示したフローチャートである。
Therefore, a method of further increasing the band memory in each physical memory is considered. For example, as shown in FIG. 5 (corresponding to FIG. 3), the areas of the band memory 1 and the band memory 3 are secured in the physical memory 1 (111), and the band memory 2 is stored in the physical memory 2 (112). And a case where the band processing is executed while securing the area of the band memory 4. FIG. 6 is a flowchart showing how the band processing is performed in the configuration shown in FIG.

【0014】ここで、バンド2及びバンド3に注目す
る。バンド2は、時刻t1においてレンダリング処理が
開始され、時刻t2の少し前までレンダリング処理が続
いている。バンド3のレンダリング処理は、バンド2の
レンダリング処理が終了した時点(時刻t2の少し前)
から開始され、時刻t3の少し後までこのレンダリング
処理が続いている。ここで、バンド2のレンダリング処
理の結果得られるビットマップデータは物理メモリ2
(112)のバンドメモリ2に格納され、バンド3のレ
ンダリング処理の結果得られるビットマップデータは、
物理メモリ2(112)のバンドメモリ4に格納されて
いる。すなわち、これら二つのバンドのビットマップデ
ータが格納されるバンドメモリは異なるが、物理メモリ
は同一である。
Here, attention is paid to band 2 and band 3. For band 2, the rendering process is started at time t1, and the rendering process is continued shortly before time t2. The rendering process of band 3 is performed when the rendering process of band 2 is completed (a little before time t2).
, And this rendering process continues until a little after time t3. Here, the bitmap data obtained as a result of the band 2 rendering process is stored in the physical memory 2
Bitmap data stored in the band memory 2 of (112) and obtained as a result of the band 3 rendering process is as follows:
It is stored in the band memory 4 of the physical memory 2 (112). That is, the band memories storing the bitmap data of these two bands are different, but the physical memories are the same.

【0015】このため、時刻t2から出力部106によ
るバンド2のビットマップデータの読み出しが開始され
ると、バンド3のレンダリング処理が終了する時刻t3
の少し後まで(斜線で示す)の期間、同一の物理メモリ
2(112)に対して、データの書き込みと読み出しが
併行して行われる。すなわち、バンド3の斜線で示した
期間は、出力部とレンダリング部が、同じ物理メモリに
対するアクセスが重なる可能性がある。図6の他の斜線
部分についても同様のことが起こる。
Therefore, when the output unit 106 starts reading the bitmap data of band 2 from time t2, time t3 at which the rendering processing of band 3 ends.
The data writing and reading are performed concurrently with respect to the same physical memory 2 (112) until a little after (indicated by oblique lines). That is, during the period of the band 3 indicated by the diagonal line, the output unit and the rendering unit may access the same physical memory at the same time. The same occurs for the other shaded portions in FIG.

【0016】このような期間では、バスのアクセス競合
を避けるために、レンダリング部104と出力部106
のいずれかが処理を中断するか、処理を遅延させる必要
がある。さらに、印刷部が印刷処理を中断しないように
するためには、出力部106の処理を優先して実行する
ようにしなければならない。要するに、この期間は、出
力部106による物理メモリに対するアクセスのため
に、レンダリング部のレンダリングが遅延する。従っ
て、図6に示した斜線の領域が大きければ、それだけレ
ンダリング処理の効率が低下し、プリントオーバーラン
が発生する危険が大きい。
In such a period, the rendering unit 104 and the output unit 106 are used to avoid contention for bus access.
Needs to interrupt or delay the processing. Furthermore, in order to prevent the printing unit from interrupting the printing process, the process of the output unit 106 must be executed with priority. In short, during this period, rendering of the rendering unit is delayed due to access to the physical memory by the output unit 106. Therefore, the larger the shaded area shown in FIG. 6, the lower the efficiency of the rendering process and the greater the risk of print overrun.

【0017】[0017]

【発明が解決しようとする課題】図6のレンダリング部
104による予測レンダリング時間が、安全係数を加味
したものだとした場合、斜線部の面積が大きければそれ
だけ前述の安全係数も、よりレンダリング処理にかかる
時間が長くなるように見積もるものでなければならな
い。ところが、安全係数を用いていた従来の技術では、
この斜線部の面積が大きいか小さいかに関係なく、一律
に安全係数が決定されていた。このため、あるバンドに
ついて斜線部分の領域が大きくなる状況が発生したとき
に、そのバンドについてのレンダリング処理が大きく遅
延すると、プリントオーバーランが発生する可能性が高
かった。
Assuming that the estimated rendering time by the rendering unit 104 in FIG. 6 is based on a safety factor, the larger the area of the hatched portion, the more the above-mentioned safety factor is applied to the rendering process. The time must be estimated to be long. However, in the conventional technology using the safety factor,
Regardless of whether the area of the hatched portion is large or small, the safety coefficient is determined uniformly. For this reason, when a situation where the area of the shaded portion becomes large for a certain band occurs, if the rendering processing for the band is greatly delayed, there is a high possibility that a print overrun will occur.

【0018】プリントオーバーランを防止するための手
段の一つが、特開平11−249833号公報に開示さ
れている。同公報によると、バンドごとにレンダリング
処理を行うのに要する時間を予測し、その予測されたレ
ンダリング時間が所定値を超えるバンドに関しては、出
力部が印刷部に対して画像データを転送する以前、すな
わち印刷が開始される以前にレンダリング処理を実行
し、所定値以内に収まるバンドであればプリンタエンジ
ンの印刷処理と併行して同時にレンダリング処理を実行
することで、プリントオーバーランが確実に防止される
としている。すなわち、前述の第三のバンドメモリを設
ける方式である。
One means for preventing print overrun is disclosed in JP-A-11-249833. According to the publication, the time required to perform the rendering process for each band is predicted, and for the band whose predicted rendering time exceeds a predetermined value, before the output unit transfers the image data to the printing unit, That is, the rendering process is executed before printing is started, and if the band is within a predetermined value, the rendering process is executed simultaneously with the printing process of the printer engine, so that the print overrun is reliably prevented. And That is, the third band memory is provided.

【0019】しかし、この方法は、物理メモリに対する
アクセスの競合の頻度を考慮してプリレンダリング処理
を実行するものではなく、単にレンダリングに要する時
間が所定値を超えると予想されるバンドのレンダリング
処理を印刷が開始される以前に実行することで、プリン
トオーバーランを防止しようとするものである。このた
め、所定値以内であり、かつ、所定値に限りなく近いバ
ンドのレンダリングなどは、図6に示した斜線部の領域
が大きい状況が発生した場合には、プリントオーバーラ
ンを引き起こしてしまうと考えられる。なぜなら、レン
ダリングに要する時間を上記物理メモリに対するアクセ
スの競合の頻度とは無関係に予測し、同じく物理メモリ
に対するアクセスの競合の頻度とは無関係に設定される
所定値に基づいてプリレンダリングすべきバンドを割り
出しているからである。
However, this method does not execute the pre-rendering process in consideration of the frequency of contention for access to the physical memory, but simply executes the band rendering process in which the time required for rendering is expected to exceed a predetermined value. This is executed before printing is started to prevent print overrun. For this reason, rendering of a band that is within the predetermined value and as close as possible to the predetermined value or the like may cause print overrun in a situation where the shaded area shown in FIG. 6 is large. Conceivable. This is because the time required for rendering is predicted independently of the frequency of contention for access to the physical memory, and the band to be pre-rendered is set based on a predetermined value which is also set independently of the frequency of contention for access to the physical memory. It is because it has been determined.

【0020】また、プリントオーバーランを防止するた
めの別の手段が、特開平11−198462号公報に開
示されている。同公報には、最小限のメモリ容量で効率
的にバンド処理を実行するために、プリンタエンジンが
動作を開始する以前にレンダリングするスケジュールを
作成し、それに基づいて各バンドのレンダリングと出力
を実行する方法が示されている。しかし、同公報にも、
スケジュール作成の方法においては、物理メモリに対す
るアクセス競合の頻度については、何ら言及されておら
ず、図6に示した斜線部の領域が大きい状況が発生した
場合には、やはりプリントオーバーランが生じてしま
う。
Another means for preventing a print overrun is disclosed in Japanese Patent Application Laid-Open No. H11-198462. In this publication, in order to efficiently execute band processing with a minimum memory capacity, a rendering schedule is created before the printer engine starts operation, and rendering and output of each band are executed based on the schedule. The method is shown. However, the publication also states that
In the schedule creation method, there is no mention of the frequency of access conflicts to the physical memory, and when a situation occurs where the shaded area shown in FIG. 6 is large, a print overrun still occurs. I will.

【0021】本発明は、このような技術的背景のもとで
なされたものである。すなわち、本発明の目的は、同一
の物理メモリに対してレンダリング部と出力部が同時に
アクセスするアクセス競合が起こる可能性のある期間の
長さに応じて、レンダリング処理にかかる処理時間を見
積もり、その上でプリントオーバーランを防止するため
の処理を実行する画像形成装置及びその画像処理方法を
提供することである。
The present invention has been made under such a technical background. That is, an object of the present invention is to estimate the processing time required for the rendering process according to the length of the period during which there is a possibility that an access conflict may occur in which the rendering unit and the output unit access the same physical memory at the same time. An object of the present invention is to provide an image forming apparatus for executing a process for preventing a print overrun and an image processing method therefor.

【0022】[0022]

【課題を解決するための手段】上記の目的を達成するた
めに、請求項1記載の発明は、印刷すべき描画データに
基づいて所定の記録方式で画像を記録する画像形成装置
において、入力された印刷データに基づいてビットマッ
プデータに展開される前の中間データを生成する中間デ
ータ生成手段と、前記中間データに基づいて所定の描画
単位ごとにビットマップデータを生成するレンダリング
手段と、前記レンダリング手段が生成するビットマップ
データを格納する、互いに独立してアクセス可能な複数
の物理メモリと、前記複数の物理メモリ内に確保され
る、前記レンダリング手段が生成するビットマップデー
タを格納する複数のバンドメモリと、前記中間データに
基づいて前記レンダリング手段が所定の描画単位ごとに
ビットマップデータを生成するのに要する時間を予測す
るレンダリング時間予測手段と、前記複数の物理メモリ
から印刷部の動作に同期して前記印刷部に対して記録デ
ータを転送する出力手段と、前記印刷部の印刷に要する
時間を実際よりも長く見積もるための指標となる安全係
数を格納した安全係数格納手段とを含んで構成され、前
記レンダリング手段と前記出力手段の前記物理メモリに
対するアクセスが重複する可能性のある期間に応じて前
記安全係数を変化させ、前記レンダリング時間予測手段
がこの安全係数を用いて予測して得られた時間が、所定
値を超えるバンドについては、プリレンダリングを行う
ことを特徴とする。
According to one aspect of the present invention, there is provided an image forming apparatus for recording an image by a predetermined recording method based on drawing data to be printed. Intermediate data generating means for generating intermediate data before being developed into bitmap data based on the print data, rendering means for generating bitmap data for each predetermined drawing unit based on the intermediate data, A plurality of physical memories that store bitmap data generated by the means and that can be accessed independently of each other; and a plurality of bands that are allocated in the plurality of physical memories and store the bitmap data generated by the rendering means. A memory, wherein the rendering means determines bitmap data for each predetermined drawing unit based on the intermediate data; Rendering time estimating means for estimating the time required for generation, output means for transferring recording data from the plurality of physical memories to the printing unit in synchronization with the operation of the printing unit, and printing for the printing unit. A safety coefficient storing means for storing a safety coefficient serving as an index for estimating the required time longer than the actual time, wherein a period during which the rendering means and the output means may access the physical memory may overlap. And the rendering time estimating means performs pre-rendering for a band whose time obtained by prediction using the safety coefficient exceeds a predetermined value.

【0023】請求項2記載の発明は、印刷すべき描画デ
ータに基づいて所定の記録方式で画像を記録する画像形
成装置の画像処理方法において、入力された印刷データ
に基づいてビットマップデータに展開される前の中間デ
ータを生成する中間データ生成工程と、前記中間データ
に基づいて所定の描画単位ごとにビットマップデータを
生成するレンダリング工程と、前記中間データに基づい
て前記レンダリング手段が所定の描画単位ごとにビット
マップデータを生成するのに要する時間を予測するレン
ダリング時間予測工程と、印刷部の印刷に要する時間を
実際よりも長く見積もるための指標となる安全係数を格
納した安全係数を取得する工程とを含んで構成され、前
記レンダリング工程において生成されるビットマップデ
ータを物理メモリに格納するためのアクセスと、前記印
刷部が前記物理メモリに格納されたビットマップデータ
を読み出すためのアクセスとが重複する可能性のある期
間に応じて、前記安全係数を変化させ、前記レンダリン
グ時間予測工程でこの安全係数を用いて予測して得られ
た時間が、所定値を超えるバンドについては、プリレン
ダリングを行うことを特徴とする。
According to a second aspect of the present invention, in an image processing method of an image forming apparatus for recording an image by a predetermined recording method based on drawing data to be printed, the image processing method develops bitmap data based on the input print data. An intermediate data generating step of generating intermediate data before being performed, a rendering step of generating bitmap data for each predetermined drawing unit based on the intermediate data, and a step of the rendering unit performing predetermined drawing based on the intermediate data. A rendering time estimation step of estimating the time required to generate bitmap data for each unit, and a safety coefficient storing a safety coefficient serving as an index for estimating the time required for printing by the printing unit longer than the actual time are obtained. And the bitmap data generated in the rendering step is stored in a physical memory. The security factor is changed according to a period in which access for storage and access for reading the bitmap data stored in the physical memory by the printing unit may overlap, and the rendering time prediction is performed. Pre-rendering is performed for a band whose time obtained by predicting using the safety coefficient in the process exceeds a predetermined value.

【0024】[0024]

【発明の実施の形態】以下に、図面を参照して本発明の
実施の一形態について説明する。なお、ここでは、本発
明の画像形成装置及び画像処理方法を、インクジェット
プリンタに適用する場合について説明するが、本発明を
適用できるのはインクジェットプリンタには限られず、
熱転写プリンタやレーザープリンタ、及びワイヤードッ
トインパクト方式のプリンタにも適用することができ
る。
Embodiments of the present invention will be described below with reference to the drawings. Here, a case will be described in which the image forming apparatus and the image processing method of the present invention are applied to an ink jet printer, but the present invention is not limited to an ink jet printer.
The present invention can be applied to a thermal transfer printer, a laser printer, and a wire dot impact type printer.

【0025】図7は、本実施形態の画像形成装置の構成
を示したブロック図である。同図において、203は外
部装置201と画像形成装置202とを接続するための
外部インターフェース(I/F)である。204は、本
装置全体を制御するCPUであり、205は、CPU2
04が実行する処理手順の中の基本的なプログラムを記
憶しているROMである。211はRAMであり、この
中には、CPU204が各種処理を実行する際に参照す
るワークエリア211a、受信したPDLデータの一時
格納エリアである受信バッファエリア211b、中間デ
ータを格納する中間言語エリア211c、そしてプリレ
ンダリングするバンドのビットマップデータを格納する
一時メモリエリア211dが設けられている。
FIG. 7 is a block diagram showing the configuration of the image forming apparatus of the present embodiment. In the figure, reference numeral 203 denotes an external interface (I / F) for connecting the external device 201 and the image forming apparatus 202. Reference numeral 204 denotes a CPU that controls the entire apparatus, and 205 denotes a CPU 2
04 is a ROM that stores a basic program in a processing procedure to be executed. A RAM 211 includes a work area 211a to which the CPU 204 refers when executing various processes, a reception buffer area 211b which is a temporary storage area for received PDL data, and an intermediate language area 211c for storing intermediate data. And a temporary memory area 211d for storing bitmap data of the band to be pre-rendered.

【0026】また、206は、各種プリンタ言語を解釈
するエミュレーションプログラムを格納したエミュレー
ションプログラムメモリであり、ここではROMから構
成されている。207は、ドットパターンの発生にかか
る各種関数の集合体を格納している中間言語発生用ライ
ブラリメモリである。212a、212bは、フォント
スケーラメモリであり、複数種類の文字(例えばゴシッ
ク体、明朝体等)の印刷を可能にしている。フォントス
ケーラメモリ212a、212bに格納されているフォ
ントデータの内容は、それぞれの文字種のアウトライン
フォントデータ及びそのデータに基づいて最終的な文字
パターンを生成するためのプログラムである。この例で
は、フォントスケーラメモリ212a、212bもRO
Mから構成されている。
An emulation program memory 206 stores an emulation program for interpreting various printer languages, and is constituted by a ROM in this case. Reference numeral 207 denotes an intermediate language generation library memory that stores a collection of various functions related to the generation of a dot pattern. Reference numerals 212a and 212b denote font scaler memories that enable printing of a plurality of types of characters (for example, Gothic font, Mincho font, etc.). The contents of the font data stored in the font scaler memories 212a and 212b are outline font data of each character type and a program for generating a final character pattern based on the data. In this example, the font scaler memories 212a and 212b are also RO
M.

【0027】第一の物理メモリ213aの内部には、バ
ンドメモリ1及びバンドメモリ3の領域が確保されてお
り、第二の物理メモリ213bの内部には、バンドメモ
リ2及びバンドメモリ4の領域が確保されている。第一
の物理メモリ213a、第二の物理メモリ213bは、
それぞれ別々にシステムバス215に接続されており、
独立にアクセスすることができる。208は、各種設定
内容を格納している不揮発性のメモリであり、ここでは
EEPROMから構成されている。
An area for the band memories 1 and 3 is secured inside the first physical memory 213a, and an area for the band memories 2 and 4 is secured inside the second physical memory 213b. Is secured. The first physical memory 213a and the second physical memory 213b are
Each is separately connected to the system bus 215,
Can be accessed independently. Reference numeral 208 denotes a nonvolatile memory which stores various setting contents, and is constituted by an EEPROM in this case.

【0028】209は、RS変換部である。RS変換部
209は、第一の物理メモリ213a及び第二の物理メ
モリ213bからビットマップデータを読み出し、これ
をRS(ラスター/スライス)変換してSRAM214
a、214bに格納し、その後、印刷部216の動作に
同期してSRAM214a、214bから出力インター
フェース210を介して画像データを印刷部216に転
送する。RS変換部209は、ここではASIC等のカ
スタムICから構成されている。
Reference numeral 209 denotes an RS conversion unit. The RS conversion unit 209 reads the bitmap data from the first physical memory 213a and the second physical memory 213b, converts the bitmap data into an RS (raster / slice), and converts the data into an SRAM 214.
a, 214b, and then transfer the image data from the SRAMs 214a, 214b to the printing unit 216 via the output interface 210 in synchronization with the operation of the printing unit 216. The RS conversion unit 209 is configured by a custom IC such as an ASIC here.

【0029】図8は、図7に示したブロック図の一部
と、画像データの流れを概念的に示した図である。図8
のうち、図7に示した構成部分と一対一に対応する部分
には、同一の符号を付してある。ここでは、図8に示す
ように、1ページ分の画像を9個のバンドに区切ってバ
ンド処理を行う場合について説明する。
FIG. 8 is a diagram conceptually showing a part of the block diagram shown in FIG. 7 and the flow of image data. FIG.
Among them, the portions corresponding to the components shown in FIG. 7 in one-to-one correspondence are denoted by the same reference numerals. Here, as shown in FIG. 8, a case will be described in which an image for one page is divided into nine bands and band processing is performed.

【0030】入力部331は、主として図7の外部イン
ターフェース(I/F)203に対応する。出力部34
4は、主として図7の出力インターフェース(I/F)
210に対応する。入力部331で受信された印刷デー
タは、中間データ生成部332に送られ、中間データに
変換される。ここで、「中間データ」とは、高次元の印
刷データと低次元のビットマップデータとの中間に位置
するデータで、PDL( Page Description Language )
などの高次元の印刷データ(PDLデータ)をビットマ
ップデータに展開しやすいように変換されたイメージデ
ータである。中間データ生成部332に対応する機能
は、図7のCPU204と中間言語発生用ライブラリメ
モリ207が果たす。
The input unit 331 mainly corresponds to the external interface (I / F) 203 shown in FIG. Output unit 34
4 is an output interface (I / F) of FIG.
210. The print data received by the input unit 331 is sent to the intermediate data generation unit 332, and is converted into intermediate data. Here, the “intermediate data” is data located at an intermediate position between high-dimensional print data and low-dimensional bitmap data, and is a PDL (Page Description Language).
Is high-dimensional print data (PDL data) such as image data converted so as to be easily developed into bitmap data. The function corresponding to the intermediate data generation unit 332 is performed by the CPU 204 and the intermediate language generation library memory 207 in FIG.

【0031】安全係数記憶部335は、競合するバンド
処理の時間的な長さに応じて、何段階かの安全係数が設
定されている。レンダリング部334はこの時間の長さ
に基づいて、安全係数記憶部335から適当な値の安全
係数を取得する。なお、レンダリング部334の機能
は、主として図7のCPU204が果たし、安全係数記
憶部335の機能は、主として図7の不揮発性メモリ2
08が果たす。
In the safety coefficient storage unit 335, several levels of safety coefficients are set according to the time length of competing band processing. The rendering unit 334 acquires an appropriate value of the safety coefficient from the safety coefficient storage unit 335 based on the length of time. The function of the rendering unit 334 is mainly performed by the CPU 204 of FIG. 7, and the function of the safety coefficient storage unit 335 is mainly performed by the nonvolatile memory 2 of FIG.
08 plays.

【0032】中間データ生成部332によって生成され
た1ページ分の中間データは、中間データ記憶部333
に一時的に格納され、最終的に、レンダリング部334
がこのデータを逐次読み出して、ビットマップデータに
展開してゆく。なお、中間データ記憶部333は、図7
のRAM211中の中間言語エリア211bに対応す
る。
The intermediate data for one page generated by the intermediate data generation unit 332 is stored in the intermediate data storage unit 333.
Temporarily, and finally, the rendering unit 334
Sequentially reads this data and develops it into bitmap data. Note that the intermediate data storage unit 333 stores the
Corresponding to the intermediate language area 211b in the RAM 211.

【0033】ところで、レンダリング部334は、レン
ダリング処理を行う前に、まず中間データ記憶部333
に格納されている中間データから、各バンドごとのレン
ダリングに要する時間を予測するとともに、この予測さ
れた各バンドのレンダリング時間に基づいて、各バンド
のレンダリング処理と出力処理とをシミュレーションす
る。シミュレーションの結果が、例えば図6に示したよ
うなものだとする。図6の場合は、前述のように、斜線
部分においてレンダリング処理のためのアクセスと出力
処理のためのアクセスとが競合する可能性が高い。この
結果から、同一の物理メモリに対するレンダリング処理
のためのアクセスと出力処理のためのアクセスとが競合
するかどうかを調べ、競合する場合はどのバンド処理が
競合するかを割り出す。
Before performing the rendering process, the rendering unit 334 first stores the intermediate data storage unit 333.
, The rendering time of each band is predicted based on the estimated rendering time of each band, and the rendering process and the output process of each band are simulated based on the predicted rendering time of each band. It is assumed that the result of the simulation is as shown in FIG. 6, for example. In the case of FIG. 6, as described above, there is a high possibility that the access for the rendering process and the access for the output process conflict in the hatched portion. From this result, it is checked whether or not access for rendering processing and access for output processing to the same physical memory conflict with each other, and if so, which band processing conflicts is determined.

【0034】そして、この結果に基づいて、前述の安全
係数記憶部335から、対応する安全係数を取得し、こ
の安全係数に基づいて再び、各バンドごとにレンダリン
グに要する時間を予測し、この予測値を、あらかじめ設
定されている所定値と比較する。図9は、縦軸に時間を
とってこの予測値を示した帯グラフであり、点線で示し
た所定値は、予め設定しておく。また、グラフでは、無
地の帯グラフが安全係数とは無関係に予測したレンダリ
ング処理に要する時間を示しており、斜線を伴った帯グ
ラフが安全件数に基づいて予測したレンダリング処理に
要する時間を示している。
Then, based on the result, the corresponding safety coefficient is obtained from the above-described safety coefficient storage unit 335, and the time required for rendering for each band is predicted again based on the obtained safety coefficient. The value is compared with a predetermined value set in advance. FIG. 9 is a band graph in which the predicted value is shown by taking time on the vertical axis, and the predetermined value indicated by the dotted line is set in advance. In the graph, the solid band graph shows the time required for the rendering process predicted independently of the safety coefficient, and the hatched band graph shows the time required for the rendering process predicted based on the number of safety cases. I have.

【0035】図9を見てみると、安全係数を導入するか
しないかで、所定値を超えるバンドの数が変化すること
が分かる。また、安全係数の値が変化すれば、図9の斜
線を伴った帯グラフの高さが変化することも分かる。こ
の安全係数を導入して得られたレンダリングの予測時間
が、所定値を超えるバンドについては、実際の印刷動作
が開始される前にプリレンダリングを実行し、また、こ
れ以外のバンドについてのレンダリングは、出力処理と
併行して、すなわち印刷部210の画像形成処理と併行
してリアルタイムで実行する。
FIG. 9 shows that the number of bands exceeding a predetermined value changes depending on whether or not a safety coefficient is introduced. It can also be seen that if the value of the safety coefficient changes, the height of the shaded band graph in FIG. 9 changes. Pre-rendering is performed before the actual printing operation is started for a band in which the estimated rendering time obtained by introducing this safety factor exceeds a predetermined value, and rendering for other bands is performed. , In parallel with the output process, that is, in parallel with the image forming process of the printing unit 210.

【0036】本実施形態では、上で述べたように、安全
係数を考慮した予測時間を所定値と比較し、この所定値
を超えるバンドについては、全体のレンダリング処理に
先立ってプリレンダリングするようにすることによっ
て、プリントオーバーランを防止する。この場合、効率
的なバンド処理を実現するためには、前述の安全係数と
所定値を適切に決めることが重要となる。
In the present embodiment, as described above, the predicted time in consideration of the safety coefficient is compared with a predetermined value, and for a band exceeding the predetermined value, pre-rendering is performed prior to the entire rendering processing. By doing so, print overrun is prevented. In this case, in order to realize efficient band processing, it is important to appropriately determine the above-described safety coefficient and a predetermined value.

【0037】本実施形態では、安全係数を、外部装置2
01から送られてくるPDLデータの1ページ分ごとに
変更できるようにしてある。そのために、安全係数記憶
部335内には、予めいくつかの安全係数を記憶させて
おき、レンダリング部がレンダリングしようとする画像
データに対して最適とされる安全係数を安全係数記憶部
335から取得し、CPU204は、その安全係数に基
づいてプリレンダリングするバンドを決定する。
In the present embodiment, the safety coefficient is determined by the external device 2
01 can be changed for each page of the PDL data sent from the server. For this purpose, some safety factors are stored in advance in the safety factor storage unit 335, and the safety factor optimized for the image data to be rendered by the rendering unit is obtained from the safety factor storage unit 335. Then, the CPU 204 determines a band to be pre-rendered based on the safety coefficient.

【0038】安全係数記憶部335の機能は、図7の不
揮発メモリ208が果たす。すなわち、不揮発性メモリ
208には、上記の過程で算出された割合に応じた安全
係数が、図10に示すように予めルックアップテーブル
として設定されており、CPU204は必要に応じてこ
れを参照する。このルックアップテーブルは、図10に
示すように、図6に示した斜線部領域の比率が大きいほ
ど、安全係数も大きくなるよう設定されている。すなわ
ち、斜線部領域の比率が大きいほど、CPU204のレ
ンダリング処理を遅く見積もるよう設定されている。図
10に示した安全係数の数値は、レンダリング処理を遅
く見積もる比率を百分率で表している。例えば安全係数
が「10」の場合は、安全係数を考慮しない予測レンダ
リング所要時間の110%の時間をレンダリング所要時
間として見積もるという意味である。
The function of the safety coefficient storage unit 335 is performed by the nonvolatile memory 208 shown in FIG. That is, in the nonvolatile memory 208, a safety coefficient corresponding to the ratio calculated in the above process is set in advance as a look-up table as shown in FIG. 10, and the CPU 204 refers to this as necessary. . As shown in FIG. 10, the look-up table is set so that the larger the ratio of the hatched area shown in FIG. 6, the larger the safety coefficient. That is, the setting is made such that the larger the ratio of the shaded area, the slower the estimation of the rendering process of the CPU 204. The numerical value of the safety coefficient shown in FIG. 10 represents the ratio of estimating the rendering process late, as a percentage. For example, when the safety coefficient is “10”, it means that the time required for rendering is estimated to be 110% of the estimated rendering time without considering the safety coefficient.

【0039】プリレンダリングするバンドについては、
その結果得られるビットマップデータの格納には一時メ
モリ211dを使用し、それ以外のバンドのレンダリン
グには第一の物理メモリ213a、第二の物理メモリ2
13bを使用する。各物理メモリには、レンダリング部
334によって生成されるビットマップデータをバンド
単位で格納する領域(バンドメモリ領域)が二つ分確保
されている。すなわち、第一の物理メモリ213a内の
バンドメモリはバンドメモリ1及びバンドメモリ3であ
り、第二の物理メモリ213b内のバンドメモリは、バ
ンドメモリ2及びバンドメモリ4である。一方、一時メ
モリ211dは、レンダリング部334がプリレンダリ
ングするバンド数分に必要な容量が、図7のRAM21
1内に確保され、使用される。
For the band to be pre-rendered,
The temporary memory 211d is used for storing the bitmap data obtained as a result, and the first physical memory 213a and the second physical memory 2 are used for rendering other bands.
13b is used. Each physical memory has two areas (band memory areas) for storing bitmap data generated by the rendering unit 334 in band units. That is, the band memories in the first physical memory 213a are the band memories 1 and 3, and the band memories in the second physical memory 213b are the band memories 2 and 4. On the other hand, in the temporary memory 211d, the capacity required for the number of bands to be pre-rendered by the rendering unit 334 is equal to the RAM 21 in FIG.
1 is reserved and used.

【0040】本実施形態では、レンダリング部334が
プリレンダリングすべきバンドを、上記のようにページ
単位で変化しうる安全係数に基づいて割り出すことによ
り、何もしなければ物理メモリに対するレンダリング部
334からのアクセスと出力部344からのアクセスの
競合が起こる頻度の高い場合であっても、プリントオー
バーランを防止することができる。また、外部装置20
1から送られてくるPDLデータに応じてプリレンダリ
ング処理すべきバンドを適切に決定し、物理メモリを効
率的に利用することができる。
In this embodiment, the rendering unit 334 determines the band to be pre-rendered based on the security coefficient that can be changed in page units as described above. Even in the case where the contention between access and access from the output unit 344 frequently occurs, print overrun can be prevented. In addition, the external device 20
The band to be subjected to the pre-rendering process is appropriately determined in accordance with the PDL data sent from No. 1, and the physical memory can be used efficiently.

【0041】次に、図7に示したブロック図を参照し
て、データの流れを説明する。外部装置201から送信
されてくる、PDLデータは、まず外部インターフェー
ス203を介してRAM211内の受信バッファエリア
211bに格納される。受信バッファエリア211b内
にPDLデータが格納されると、CPU204はこのP
DLデータを解析し、中間データに展開するためのエミ
ュレーションプログラムをエミュレーションプログラム
メモリ206からコールし、PDLデータを基にして中
間データを生成してゆく。1ページ分の中間データが生
成されると、これは中間言語エリア211cに格納され
る。
Next, the data flow will be described with reference to the block diagram shown in FIG. The PDL data transmitted from the external device 201 is first stored in the reception buffer area 211b in the RAM 211 via the external interface 203. When the PDL data is stored in the reception buffer area 211b, the CPU 204
An emulation program for analyzing the DL data and developing it into intermediate data is called from the emulation program memory 206, and intermediate data is generated based on the PDL data. When one page of intermediate data is generated, it is stored in the intermediate language area 211c.

【0042】CPU204は、中間データを生成する過
程で、各バンド毎に対応する中間データをレンダリング
するのに要する時間(レンダリング所要時間)を予測
し、累計する。このレンダリング所要時間を導出する方
法は中間データの種類によって異なり、大きく分けて三
つの方法がある。第一の方法は、その中間データに固有
のレンダリング時間が固定的に決まっている場合であ
る。この場合は、予めデーブルに格納されている内容か
らレンダリング時間を読み出す。第二の方法は、中間デ
ータがたとえばイメージビットマップのようなものでレ
ンダリング処理の内容が単純なメモリ内容のコピーであ
るようなものの場合は、レンダリング所要時間は単純に
中間データのサイズによって決まるため、データのサイ
ズからレンダリング所要時間を導出する方法である。第
三の方法は、実際にレンダリングしてみないとレンダリ
ング所要時間が分からない中間データの場合で、このよ
うなものについては、実際にレンダリング処理を実行し
てレンダリング所要時間を求める。
In the process of generating the intermediate data, the CPU 204 estimates and accumulates the time required for rendering the intermediate data corresponding to each band (required rendering time). The method of deriving the required rendering time differs depending on the type of the intermediate data, and is roughly classified into three methods. The first method is a case where a rendering time peculiar to the intermediate data is fixedly determined. In this case, the rendering time is read from the contents stored in the table in advance. The second method is that if the intermediate data is, for example, an image bitmap, and the content of the rendering process is a copy of a simple memory content, the rendering time is simply determined by the size of the intermediate data. Is a method of deriving the rendering time from the data size. The third method is a case of intermediate data for which the rendering time is not known unless the rendering is actually performed. For such data, the rendering process is actually executed to determine the rendering time.

【0043】1ページ分の画像の中に文字、表、グラフ
ィックなどが混在している場合は、各バンドにも前述の
第一、第二、第三の方法が混在している可能性がある。
このため、レンダリング所要時間を予測する際には、中
間データの一単位ごとに(描画オブジェクトごとに)レ
ンダリング所要時間を予測・算出し、各バンドごとに予
測したレンダリング所要時間を累積して求めてゆく。こ
うして得られたレンダリング所要時間は、各バンド毎の
情報として、RAM211のワークエリア211aに格
納される。
When characters, tables, graphics, and the like are mixed in an image for one page, there is a possibility that the first, second, and third methods described above are mixed in each band. .
Therefore, when estimating the required rendering time, the required rendering time is estimated and calculated for each unit of the intermediate data (for each drawing object), and the estimated required rendering time is accumulated for each band. go. The rendering time thus obtained is stored in the work area 211a of the RAM 211 as information for each band.

【0044】次に、CPU204は、各バンド毎の予測
レンダリング所要時間と印刷部216の画像形成処理速
度をもとに、まず、図6に示すようなシミュレーション
を実行する。そして、図6に斜線で示した領域、すなわ
ちCPU204のレンダリング処理がRS変換部209
の割り込みによって遅延する時間の累積時間を計算し、
1ページ分の斜線部の領域に対応する期間の1ページ分
の画像データをレンダリングするのに占める割合を算出
し、前述のように不揮発性メモリ208に設定されてい
るルックアップテーブルを参照する。
Next, the CPU 204 first executes a simulation as shown in FIG. 6 based on the estimated rendering time required for each band and the image forming processing speed of the printing unit 216. 6, that is, the rendering process of the CPU 204 is performed by the RS conversion unit 209.
Calculates the accumulated time of the time delayed by the interrupt of
The ratio of rendering the image data for one page in the period corresponding to the shaded area for one page is calculated, and the lookup table set in the nonvolatile memory 208 is referred to as described above.

【0045】次に、このようにして見積もられたレンダ
リング時間が予め設定されている所定値を超えるか否か
を、CPU204が判定する。この所定値は不揮発メモ
リ208に予め設定されている。すなわち、CPU20
4は、この所定値と前述のようにして見積もられた予測
レンダリング所要時間を比較し、予測レンダリング所要
時間が所定値を超えると判断されるバンドについては、
プリレンダリング処理を実行するものとし、その情報を
RAM211のワークエリア211aに格納する。そし
て印刷部216の動作開始に先立って、ワークエリア2
11aに格納された情報に基づいて、所定のバンドにつ
いてプリレンダリングを実行し、その課程で生成される
ビットマップデータを一時メモリエリア211dに格納
する。このプリレンダリング処理が終了すると、CPU
204及びRS変換部209は、それ以外のバンドにつ
いて、順次、通常のバンド処理を実行してゆく。
Next, the CPU 204 determines whether or not the rendering time estimated in this way exceeds a predetermined value set in advance. This predetermined value is set in the nonvolatile memory 208 in advance. That is, the CPU 20
4 compares the predetermined value with the predicted rendering time estimated as described above, and for a band for which it is determined that the predicted rendering time exceeds the predetermined value,
Pre-rendering processing is performed, and the information is stored in the work area 211a of the RAM 211. Before starting the operation of the printing unit 216, the work area 2
Based on the information stored in 11a, pre-rendering is performed for a predetermined band, and bitmap data generated in the process is stored in a temporary memory area 211d. When the pre-rendering process ends, the CPU
204 and the RS conversion unit 209 sequentially execute normal band processing for the other bands.

【0046】図11は、上で説明した処理を行って得ら
れた処理のスケジュールを示したフローチャートであ
る。図11では、バンド2とバンド5についてプリレン
ダリング処理が実行される。図11を図6と比較すると
分かるように、図11の場合には、物理メモリに対する
アクセスが競合する斜線部が、図6の場合に比べて小さ
く、従って、プリントオーバーランを有効に防止できる
ことが分かる。
FIG. 11 is a flowchart showing a processing schedule obtained by performing the above-described processing. In FIG. 11, the pre-rendering process is executed for band 2 and band 5. As can be seen by comparing FIG. 11 with FIG. 6, in the case of FIG. 11, the hatched portion in which access to the physical memory competes is smaller than in the case of FIG. 6, and therefore, it is possible to effectively prevent print overrun. I understand.

【0047】以上、本発明の実施の一形態について説明
してきたが、本発明は上記の実施形態に限定されるもの
ではなく、特許請求の範囲に記載した発明の要旨の範囲
内で種々の変更が可能である。
The embodiment of the present invention has been described above. However, the present invention is not limited to the above embodiment, and various modifications may be made within the scope of the invention described in the appended claims. Is possible.

【0048】[0048]

【発明の効果】以上で説明したように、物理メモリに対
するアクセス競合を避けるために発生するレンダリング
処理の遅延時間を考慮して安全係数を変換せて、言い換
えると、レンダリング手段と出力手段の物理メモリに対
するアクセスが重複する可能性のある期間に応じて安全
係数を変化させて、レンダリング時間予測手段がこの安
全係数を用いて予測して得られた時間が所定値を超える
バンドについては、プリレンダリングを行うようにし結
果、レンダリング部と印刷部にビットマップデータを転
送する出力部との、同一メモリに対するアクセスの競合
を避けるために発生する遅延時間が大きくなっても、プ
リントオーバーランを確実に防止することが可能とな
る。
As described above, the safety factor is converted in consideration of the delay time of the rendering process which occurs to avoid contention for access to the physical memory. In other words, the physical memory of the rendering means and the output means is converted. The security factor is changed in accordance with the period in which access to may be duplicated, and for a band in which the time obtained by the rendering time estimating means using the safety factor and predicted exceeds a predetermined value, pre-rendering is performed. As a result, even if the delay time generated to avoid contention for access to the same memory between the rendering unit and the output unit that transfers the bitmap data to the printing unit increases, print overrun is reliably prevented. It becomes possible.

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

【図1】従来の画像形成装置のデータの全体的な流れを
示した図である。
FIG. 1 is a diagram showing an overall flow of data of a conventional image forming apparatus.

【図2】従来の画像形成装置の概略ブロック図である。FIG. 2 is a schematic block diagram of a conventional image forming apparatus.

【図3】従来の画像形成装置のバンド処理におけるデー
タの流れを示した図である。
FIG. 3 is a diagram showing a data flow in band processing of a conventional image forming apparatus.

【図4】従来の画像形成装置が行う処理を示したフロー
チャートである。
FIG. 4 is a flowchart illustrating processing performed by a conventional image forming apparatus.

【図5】一つの物理メモリの中に二つのバンドメモリ領
域を確保してバンド処理を行う場合のデータの流れを示
した図である。
FIG. 5 is a diagram showing a data flow when band processing is performed by securing two band memory areas in one physical memory.

【図6】レンダリングの待ち時間をなくした場合にバン
ド処理がどのようになるかを示したフローチャートであ
る。
FIG. 6 is a flowchart showing how band processing is performed when the waiting time for rendering is eliminated.

【図7】本発明の実施の一形態の画像形成装置の構成を
示したブロック図である。
FIG. 7 is a block diagram illustrating a configuration of an image forming apparatus according to an embodiment of the present invention.

【図8】図7に示したブロック図の一部と、画像データ
の流れを概念的に示した図である。
8 is a diagram conceptually showing a part of the block diagram shown in FIG. 7 and a flow of image data.

【図9】安全係数を考慮してレンダリングに要する時間
の予測値を示した帯グラフである。
FIG. 9 is a band graph showing a predicted value of a time required for rendering in consideration of a safety coefficient.

【図10】斜線部領域の比率によって安全係数が変化す
るよう設定されたルックーアップテーブルの内容を示し
た図である。
FIG. 10 is a diagram showing the contents of a look-up table set so that the safety coefficient changes according to the ratio of the shaded area.

【図11】本実施形態の方法によってスケジュールを組
みなおしたあとのバンド処理のフローチャートである。
FIG. 11 is a flowchart of band processing after a schedule is reconfigured by the method of the present embodiment.

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

201…外部装置(ホスト), 202…画像処理装
置, 203…外部インターフェース(I/F),
204…CPU, 205…ROM, 206…
エミュレーションプログラムメモリ, 207…中間
言語発生用ライブラリメモリ, 208…不揮発性メ
モリ, 209…RS変換部, 210…出力イン
ターフェース, 211…RAM, 211a…ワ
ークエリア, 211b…受信バッファエリア,
211c…中間言語エリア, 211d…一時メモリ
エリア, 213a…第一の物理メモリ, 213
b…第二の物理メモリ, 216…印刷部, 33
1…入力部, 332…中間データ生成部, 33
3…中間データ記憶部, 334…レンダリング部,
335…安全係数記憶部, 344…出力部
201: external device (host), 202: image processing device, 203: external interface (I / F),
204 ... CPU, 205 ... ROM, 206 ...
Emulation program memory, 207: library memory for generating an intermediate language, 208: non-volatile memory, 209: RS converter, 210: output interface, 211: RAM, 211a: work area, 211b: reception buffer area,
211c: Intermediate language area, 211d: Temporary memory area, 213a: First physical memory, 213
b: second physical memory, 216: printing unit, 33
1 input unit, 332 ... intermediate data generation unit, 33
3 intermediate data storage unit 334 rendering unit
335: safety coefficient storage unit, 344: output unit

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 印刷すべき描画データに基づいて所定の
記録方式で画像を記録する画像形成装置において、 入力された印刷データに基づいてビットマップデータに
展開される前の中間データを生成する中間データ生成手
段と、 前記中間データに基づいて所定の描画単位ごとにビット
マップデータを生成するレンダリング手段と、 前記レンダリング手段が生成するビットマップデータを
格納する、互いに独立してアクセス可能な複数の物理メ
モリと、 前記複数の物理メモリ内に確保される、前記レンダリン
グ手段が生成するビットマップデータを格納するための
複数のバンドメモリと、 前記中間データに基づいて前記レンダリング手段が所定
の描画単位ごとにビットマップデータを生成するのに要
する時間を予測するレンダリング時間予測手段と、 前記複数の物理メモリから印刷部の動作に同期して前記
印刷部に対して記録データを転送する出力手段と、 前記印刷部の印刷に要する時間を実際よりも長く見積も
るための指標となる安全係数を格納した安全係数格納手
段とを含んで構成され、 前記レンダリング手段と前記出力手段の前記物理メモリ
に対するアクセスが重複する可能性のある期間に応じて
前記安全係数を変化させ、前記レンダリング時間予測手
段がこの安全係数を用いて予測して得られた時間が、所
定値を超えるバンドについては、プリレンダリングを行
うことを特徴とする画像形成装置。
1. An image forming apparatus for recording an image in a predetermined recording method based on drawing data to be printed, comprising: an intermediate unit for generating intermediate data before being developed into bitmap data based on input print data; A data generation unit, a rendering unit that generates bitmap data for each predetermined drawing unit based on the intermediate data, and a plurality of physical units that store bitmap data generated by the rendering unit and that can be accessed independently of each other. A memory, a plurality of band memories secured in the plurality of physical memories, and a plurality of band memories for storing bitmap data generated by the rendering means; and the rendering means for each predetermined drawing unit based on the intermediate data. A rendering time estimator that estimates the time required to generate bitmap data An output unit for transferring recording data from the plurality of physical memories to the printing unit in synchronization with an operation of the printing unit; and an index for estimating a time required for printing by the printing unit longer than the actual time. Safety factor storing means for storing a safety coefficient, wherein the rendering time is changed in accordance with a period in which the rendering means and the output means may access the physical memory in an overlapping manner; An image forming apparatus characterized in that a pre-rendering is performed for a band in which the time obtained by the prediction means using the safety coefficient exceeds a predetermined value.
【請求項2】 印刷すべき描画データに基づいて所定の
記録方式で画像を記録する画像形成装置の画像処理方法
において、 入力された印刷データに基づいてビットマップデータに
展開される前の中間データを生成する中間データ生成工
程と、 前記中間データに基づいて所定の描画単位ごとにビット
マップデータを生成するレンダリング工程と、 前記中間データに基づいて前記レンダリング手段が所定
の描画単位ごとにビットマップデータを生成するのに要
する時間を予測するレンダリング時間予測工程と、 印刷部の印刷に要する時間を実際よりも長く見積もるた
めの指標となる安全係数を格納した安全係数を取得する
工程とを含んで構成され、 前記レンダリング工程において生成されるビットマップ
データを物理メモリに格納するためのアクセスと、前記
印刷部が前記物理メモリに格納されたビットマップデー
タを読み出すためのアクセスとが重複する可能性のある
期間に応じて、前記安全係数を変化させ、前記レンダリ
ング時間予測工程でこの安全係数を用いて予測して得ら
れた時間が、所定値を超えるバンドについては、プリレ
ンダリングを行うことを特徴とする画像形成装置の画像
処理方法。
2. An image processing method for an image forming apparatus for recording an image in a predetermined recording method based on drawing data to be printed, wherein the intermediate data before being developed into bitmap data based on the input print data. Generating a bitmap data for each predetermined drawing unit based on the intermediate data; and generating a bitmap data for each predetermined drawing unit based on the intermediate data. A rendering time prediction step of predicting the time required to generate the image, and a step of obtaining a safety coefficient storing a safety coefficient serving as an index for estimating the time required for printing of the printing unit longer than the actual time. The bitmap data generated in the rendering step is stored in a physical memory. The security factor is changed in accordance with a period in which the access and the access for reading the bitmap data stored in the physical memory by the printing unit may overlap with each other. An image processing method for an image forming apparatus, comprising: performing pre-rendering for a band whose time obtained by prediction using a coefficient exceeds a predetermined value.
JP35975099A 1999-12-17 1999-12-17 Image-forming apparatus and method for processing image Withdrawn JP2001171185A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP35975099A JP2001171185A (en) 1999-12-17 1999-12-17 Image-forming apparatus and method for processing image

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP35975099A JP2001171185A (en) 1999-12-17 1999-12-17 Image-forming apparatus and method for processing image

Publications (1)

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

Family

ID=18466113

Family Applications (1)

Application Number Title Priority Date Filing Date
JP35975099A Withdrawn JP2001171185A (en) 1999-12-17 1999-12-17 Image-forming apparatus and method for processing image

Country Status (1)

Country Link
JP (1) JP2001171185A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005309865A (en) * 2004-04-22 2005-11-04 Ricoh Co Ltd Image processing apparatus and method, and computer readable recording medium for recording program for causing computer to implement this method
EP1785838A2 (en) 2005-11-01 2007-05-16 Kyocera Mita Corporation Image-forming system and image-forming program
US7579798B2 (en) 2001-12-13 2009-08-25 Kabushiki Kaisha Toshiba Inverter for washer and inverter for washer-drier
JP2011207121A (en) * 2010-03-30 2011-10-20 Canon Inc Image processor and control method or program of the same

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7579798B2 (en) 2001-12-13 2009-08-25 Kabushiki Kaisha Toshiba Inverter for washer and inverter for washer-drier
JP2005309865A (en) * 2004-04-22 2005-11-04 Ricoh Co Ltd Image processing apparatus and method, and computer readable recording medium for recording program for causing computer to implement this method
EP1785838A2 (en) 2005-11-01 2007-05-16 Kyocera Mita Corporation Image-forming system and image-forming program
US8023143B2 (en) 2005-11-01 2011-09-20 Kyocera Mita Corporation Image-forming system and image-forming program
JP2011207121A (en) * 2010-03-30 2011-10-20 Canon Inc Image processor and control method or program of the same

Similar Documents

Publication Publication Date Title
JP4455459B2 (en) Printing system, printing apparatus, and printing method
JPH0971013A (en) Printing control device and memory-control method and printing control method and storage medium storing control program
JP2008526555A (en) Print control method capable of reducing the required amount of print memory
JP3584082B2 (en) Method and apparatus for preventing print overrun by rasterizing complex page strips with increased clock frequency
JP3862396B2 (en) Printing apparatus and image processing method
US6124943A (en) Printing apparatus and method for managing print data in units of a band
JP2004074783A (en) Method of suppressing printing of nearly-blank page
JP2001171185A (en) Image-forming apparatus and method for processing image
JPH1131052A (en) Document processing system
US6359700B1 (en) Method and apparatus for preventing print overruns by rasterizing complex page strips using an auxiliary processor
JP3800678B2 (en) Printer control device
JP3715796B2 (en) Printing control apparatus, data processing method for printing control apparatus, and storage medium storing computer-readable program
JP3034196B2 (en) Printing apparatus and data processing method for printing apparatus
US6832187B1 (en) Methods of providing page protection in a digital printing system having multiple output devices
JP2981400B2 (en) Printing apparatus and data processing method for printing apparatus
JP4144169B2 (en) Printer
JP4400097B2 (en) Printing apparatus, printing control method, program, and recording medium
JP2002063582A (en) Device and method for forming image
JP3809284B2 (en) Image generating apparatus, control method therefor, and printing apparatus
JP4770609B2 (en) PRINT CONTROL DEVICE, DRIVER PROGRAM, AND RECORDING MEDIUM CONTAINING THE PROGRAM
JP2000148418A (en) Printer
JP2707963B2 (en) Printing system
JP2003039747A (en) Image forming apparatus and method of controlling the same
JP2687478B2 (en) Printing device
JPH10171612A (en) Picture processor and compression processing method

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20060421

A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20070306