JP2016155280A - Control device, control method and program - Google Patents

Control device, control method and program Download PDF

Info

Publication number
JP2016155280A
JP2016155280A JP2015034044A JP2015034044A JP2016155280A JP 2016155280 A JP2016155280 A JP 2016155280A JP 2015034044 A JP2015034044 A JP 2015034044A JP 2015034044 A JP2015034044 A JP 2015034044A JP 2016155280 A JP2016155280 A JP 2016155280A
Authority
JP
Japan
Prior art keywords
data
image processing
sub
unit
processing 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.)
Pending
Application number
JP2015034044A
Other languages
Japanese (ja)
Inventor
佐藤 和也
Kazuya Sato
和也 佐藤
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 JP2015034044A priority Critical patent/JP2016155280A/en
Publication of JP2016155280A publication Critical patent/JP2016155280A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)
  • Image Processing (AREA)

Abstract

【課題】複数の画像処理機構による並列処理を制御する制御装置において、一部の画像処理機構の画像処理が継続できなくなった場合でも、複雑な機器構成を必要とすることなく画像処理の効率化を図る印刷装置を提供すること。
【解決手段】本発明に係る制御装置は、ジョブデータを分割して複数の画像処理手段に割り振る。サブデータを割り振る際に、サブデータに含まれるオブジェクトデータの情報と、割り振り先の画像処理手段とを対応付けて記録する。サブデータが正常に処理されなかった場合、割振手段は、サブデータの割り振り時の記録に基づいて、当該サブデータを処理した画像処理手段とは異なる他の画像処理手段に対して、前記サブデータを再度割り振る。
【選択図】図5
In a control apparatus that controls parallel processing by a plurality of image processing mechanisms, even if image processing of some image processing mechanisms cannot be continued, image processing efficiency is improved without requiring a complicated device configuration. To provide a printing apparatus that achieves the above.
A control apparatus according to the present invention divides job data and allocates it to a plurality of image processing means. When sub-data is allocated, the object data information included in the sub-data and the image processing means of the allocation destination are recorded in association with each other. If the sub-data is not processed normally, the allocating means sends the sub-data to another image processing means different from the image processing means that processed the sub-data based on the recording at the time of sub-data allocation. Allocate again.
[Selection] Figure 5

Description

本発明は、複数の画像処理機構による並列処理を制御する制御装置、制御方法およびプログラムに関する。   The present invention relates to a control device, a control method, and a program for controlling parallel processing by a plurality of image processing mechanisms.

デジタル印刷分野では、印刷物の一部を可変データ部分とし、印刷物一部ごとに可変データ部分を異ならせて出力するバリアブルデータ印刷(Variable Data Print、以後「VDP」と記す)が注目されている。VDPでは、標準言語としてのPPML(Personalized Print Markup Language、以後「PPML」と略す)が規定され、広く利用されている。PPMLでは、ページを描画する要素として、繰り返し参照されるリユーサブルオブジェクトと、1度限り参照されるローカルオブジェクトとの2つがある。リユーサブルオブジェクトはページ内、ページ間またはジョブ間で、同じ描画オブジェクトをページ内、ページ間、またはジョブ間の複数箇所に配置する場合に用いられる。   In the field of digital printing, variable data printing (variable data print, hereinafter referred to as “VDP”), in which a part of a printed material is used as a variable data portion and the variable data portion is output for each part of the printed material, has attracted attention. In VDP, PPML (Personalized Print Markup Language, hereinafter abbreviated as “PPML”) as a standard language is defined and widely used. In PPML, there are two elements for drawing a page: a reusable object that is repeatedly referred to and a local object that is referred to only once. The reusable object is used when the same drawing object is arranged in a plurality of locations within a page, between pages, or between jobs within a page, between pages, or between jobs.

通常、ローカルオブジェクトやリユーサブルオブジェクト等の描画オブジェクトは、ページ記述言語(Page Description Language、以後「PDL」と記す)形式で記述されたソース描画データから生成される。代表的なPDLとして、PostScript(登録商標、以後「PS」と記す)やPDF(Portable Document Format、以後「PDF」と記す)などが存在する。ローカルオブジェクトやリユーサブルオブジェクトのソース描画データは、ラスタライズ処理(以後、「RIP処理」と記す)と呼ばれる処理を経て、ラスタイメージ化された後にページ上に配置される。リユーサブルオブジェクトのように再利用されることが明確な場合は、RIP処理によって生成されたラスタイメージをキャッシュし、キャッシュされたラスタイメージを再利用することで、非常に高速な描画処理が可能となる。なお、一般的にラスタイメージデータは、ビットマップデータなどと呼ばれる。   Normally, drawing objects such as local objects and reusable objects are generated from source drawing data described in a page description language (hereinafter referred to as “PDL”) format. Typical PDL includes PostScript (registered trademark, hereinafter referred to as “PS”), PDF (Portable Document Format, hereinafter referred to as “PDF”), and the like. Source drawing data of a local object or reusable object is subjected to processing called rasterization processing (hereinafter referred to as “RIP processing”), rasterized to be arranged on the page. If it is clear that it will be reused, such as a reusable object, the raster image generated by RIP processing is cached, and the cached raster image can be reused to enable very high-speed drawing processing. Become. The raster image data is generally called bitmap data.

また、高解像度かつ高階調のカラーデータの場合、ラスタイメージは非常に大きなデータサイズとなるため、これらのラスタイメージをキャッシュするためには大容量のメモリが必要となる。そのため、VDPのなかには、ソース描画データからラスタイメージを生成する過程で出力されるディスプレイリスト(中間データ)を取得し、これをキャッシュするという方法も知られている。ディスプレイリストをキャッシュする方法では、ラスタイメージを取得するために、ディスプレイリストをレンダリングするための時間は残るが、キャッシュに必要なメモリ容量を大幅に削減することが可能となる。   In the case of color data with high resolution and high gradation, raster images have a very large data size, and a large capacity memory is required to cache these raster images. Therefore, a method of acquiring a display list (intermediate data) output in the process of generating a raster image from source drawing data and caching this is also known in VDP. In the method of caching the display list, it takes time to render the display list in order to obtain a raster image, but the memory capacity required for the cache can be greatly reduced.

ところで、近年は、複数のコアを単一パッケージに格納したマルチコア化が進んでいる。また、近年複数の印刷装置による分散処理化も進んでいる。マルチコアCPUの性能を引き出すとともに、複数の印刷装置による分散処理を効率よく行うために、VDPを含むPDLデータの並列処理のための方法が複数提案されている。   By the way, in recent years, a multi-core configuration in which a plurality of cores are stored in a single package has been advanced. In recent years, distributed processing by a plurality of printing apparatuses is also progressing. A plurality of methods for parallel processing of PDL data including VDP have been proposed in order to bring out the performance of a multi-core CPU and efficiently perform distributed processing by a plurality of printing apparatuses.

例えば、複数のジョブを同時並行してRIP処理するジョブ並列処理方式や、単一ジョブ内の複数ページを同時並行してRIP処理するページ並列処理方式などが提案されている。このような並列処理方式によるRIP処理を行う場合、再利用されるキャッシュデータとRIP処理との対応付けを適切に行わないと、RIP処理の並列化の効果が低くなるという課題がある。   For example, a job parallel processing system that performs RIP processing on a plurality of jobs simultaneously and a page parallel processing system that performs RIP processing on a plurality of pages in a single job simultaneously have been proposed. When performing RIP processing by such a parallel processing method, there is a problem in that the effect of parallelization of RIP processing is reduced unless the cache data to be reused is properly associated with the RIP processing.

このような課題に対し、特許文献1では、複数の画像処理機構が1つのキャッシュメモリを共有し、複数の画像処理機構によるRIP処理の効率化を図った画像処理装置が提案されている。   To deal with such a problem, Patent Document 1 proposes an image processing apparatus in which a plurality of image processing mechanisms share one cache memory, and the efficiency of RIP processing by the plurality of image processing mechanisms is improved.

また、特許文献2では、ジョブを各画像処理機構に割り振る際に、ある種類のジョブを処理した画像処理機構に、同じ種類のジョブを割り振るように制御する機構を備える印刷制御装置が提案されている。   Japanese Patent Application Laid-Open No. 2004-228561 proposes a print control apparatus including a mechanism that controls to allocate the same type of job to an image processing mechanism that has processed a certain type of job when a job is allocated to each image processing mechanism. Yes.

しかしながら、特許文献1、2によれば、複数の画像処理機構が並列処理を行う印刷装置において、一部の画像処理機構のRIP処理が継続できなくなった場合、印刷装置全体の印刷処理が継続できなくなるおそれが生じるという新たな課題が生じる。   However, according to Patent Documents 1 and 2, in a printing apparatus in which a plurality of image processing mechanisms perform parallel processing, when RIP processing of some image processing mechanisms cannot be continued, printing processing of the entire printing apparatus can be continued. A new problem arises that there is a risk of disappearance.

特開2012−200955号公報JP 2012-200955 A 特開2013−161096号公報JP 2013-161096 A 特開2009−255356号公報JP 2009-255356 A

この点、特許文献3では、一部の画像処理機構がRIP処理を継続することができなくなっても、他の画像処理機構がRIP処理を引き継ぐことにより、装置全体の印刷処理を継続する機能を備える画像処理装置が提案されている。   In this regard, in Patent Document 3, even if some image processing mechanisms cannot continue the RIP processing, another image processing mechanism takes over the RIP processing, and thus has a function of continuing the printing processing of the entire apparatus. An image processing apparatus provided has been proposed.

しかしながら、複数の画像処理機構が並列処理を行う印刷装置において、特許文献3に開示されている機能を実現するために、以下のような課題が生じていた。   However, in a printing apparatus in which a plurality of image processing mechanisms perform parallel processing, the following problems have occurred in order to realize the functions disclosed in Patent Document 3.

まず、一部の画像処理機構がRIP処理を継続することができなくなった場合、他の画像処理機構にRIP処理を引き継がせるためには、画像処理機構間でデータを受け渡しするための通信経路を設ける必要が生じていた。さらに、画像処理機構間で受け渡しするデータが、中間データなどのキャッシュデータであった場合、印刷装置に共有キャッシュメモリなどのキャッシュデータを共有する機構を設ける必要が生じていた。このような通信経路や共有キャッシュメモリを設けることは、印刷装置の機器構成が複雑となり、コストの増大を招来していた。   First, when some image processing mechanisms cannot continue the RIP process, in order to allow other image processing mechanisms to take over the RIP process, a communication path for transferring data between the image processing mechanisms is provided. It was necessary to provide it. Further, when the data transferred between the image processing mechanisms is cache data such as intermediate data, it is necessary to provide a mechanism for sharing cache data such as a shared cache memory in the printing apparatus. Providing such a communication path and a shared cache memory complicates the device configuration of the printing apparatus and causes an increase in cost.

本発明に係る制御装置は、複数の画像処理手段による並列処理を制御する制御装置において、入力されたジョブデータをサブデータに分割する分割手段と、サブデータを前記複数の画像処理手段に割り振る割振手段と、サブデータに含まれるオブジェクトデータの情報と、割り振り先の画像処理手段とを対応付けて記録する管理手段と、サブデータが正常に処理されたかを判定する判定手段とを備え、前記サブデータが正常に処理されなかった場合、前記割振手段は、前記記録に基づいて、前記サブデータを処理できなかった画像処理手段とは異なる他の画像処理手段に対して、前記サブデータを再度割り振ることを特徴とする。   The control device according to the present invention is a control device that controls parallel processing by a plurality of image processing means, a dividing means that divides input job data into sub-data, and an allocation that assigns sub-data to the plurality of image processing means. Management means for associating and recording information on object data included in the sub data and image processing means to which the data is allocated, and determination means for determining whether the sub data has been processed normally. When the data is not processed normally, the allocating unit reallocates the sub data to another image processing unit different from the image processing unit that could not process the sub data based on the recording. It is characterized by that.

本願は上述の課題に鑑みてなされたものである。すなわち、複数の画像処理機構による並列処理を制御する制御装置において、一部の画像処理機構の画像処理が継続できなくなった場合でも、複雑な機器構成を必要とすることなく画像処理の効率化を図る制御装置を提供する。   The present application has been made in view of the above-described problems. That is, in a control device that controls parallel processing by a plurality of image processing mechanisms, even when image processing of some image processing mechanisms cannot be continued, the efficiency of image processing can be improved without requiring a complicated device configuration. A control device is provided.

実施形態1における、システムの全体構成を示す概略図である。1 is a schematic diagram illustrating an overall configuration of a system in Embodiment 1. FIG. 実施形態1における、端末および印刷装置のハードウェア構成を示すブロック図である。FIG. 2 is a block diagram illustrating a hardware configuration of a terminal and a printing apparatus in the first embodiment. 実施形態1における、機能構成を示すブロック図である。3 is a block diagram illustrating a functional configuration according to Embodiment 1. FIG. 実施形態1における、制御部の処理内容を示すフローチャートである。5 is a flowchart illustrating processing contents of a control unit in the first embodiment. 実施形態1における、制御部の処理内容をジョブデータの遷移例と共に示した図である。FIG. 6 is a diagram illustrating processing contents of a control unit together with an example of job data transition in the first embodiment. 実施形態1における、記録テーブルに記録される内容を示す図である。It is a figure which shows the content recorded on the recording table in Embodiment 1. FIG. 実施形態1における、分割ジョブデータの再度の割り振り先を決定する処理内容を示すフローチャートである。5 is a flowchart illustrating processing contents for determining a re-allocation destination of divided job data according to the first exemplary embodiment. 実施形態1における、制御部のリトライ処理内容を分割ジョブデータの遷移例と共に示した図である。FIG. 6 is a diagram illustrating retry processing contents of a control unit together with a transition example of divided job data in the first exemplary embodiment. 実施形態2における、記録テーブルに記録される内容を示す図である。It is a figure which shows the content recorded on the recording table in Embodiment 2. FIG. 実施形態2における、分割ジョブデータの再度の割り振り先を決定する処理内容を示すフローチャートである。10 is a flowchart illustrating processing contents for determining a re-allocation destination of divided job data according to the second exemplary embodiment. 実施形態2における、中間データをキャッシュ保存するか否かの判定処理内容を示すフローチャートである。10 is a flowchart showing the content of determination processing for determining whether intermediate data is cache-stored in the second embodiment.

以下、本発明の好適な実施の形態について図面を参照して説明する。但し、この実施の形態に記載されている構成要素はあくまで例示であり、本発明の範囲をそれらに限定する趣旨のものではない。また、実施形態で説明されている構成要素の組み合わせのすべてが、課題を解決するための手段に必須のものとは限らない。本明細書において「印刷装置」とは、画像形成機能に特化した専用機に限らず、印刷機能とその他の機能を複合した複合機や、記録用紙等の媒体に画像やパターンを形成する製造装置等も含まれる。   Preferred embodiments of the present invention will be described below with reference to the drawings. However, the constituent elements described in this embodiment are merely examples, and are not intended to limit the scope of the present invention thereto. Moreover, not all the combinations of the constituent elements described in the embodiments are essential as means for solving the problem. In this specification, the “printing apparatus” is not limited to a dedicated machine specialized in the image forming function, but is a complex machine that combines the printing function and other functions, or a device that forms an image or pattern on a medium such as recording paper Devices etc. are also included.

[実施形態1]
図1は、本実施形態における、端末100と、印刷装置200との接続構成を示す概略図である。端末100と、印刷装置200とは、ネットワークを介して相互に通信可能に接続されている。本実施形態においては、端末100として、PC(パーソナルコンピュータ)などの情報機器が用いられる。印刷装置200は、少なくとも画像形成機能を有する印刷装置や複合機などとすることができる。
[Embodiment 1]
FIG. 1 is a schematic diagram illustrating a connection configuration between a terminal 100 and a printing apparatus 200 in the present embodiment. The terminal 100 and the printing apparatus 200 are connected to be able to communicate with each other via a network. In the present embodiment, an information device such as a PC (personal computer) is used as the terminal 100. The printing apparatus 200 can be a printing apparatus or a multifunction machine having at least an image forming function.

図2は、本実施形態における端末100および印刷装置200のハードウェア構成を示すブロック図である。端末100のCPU101は、バス108を介して相互に接続された端末100の各部を制御する制御部であり、端末100の全体を統括制御する。ROM102は、制御プログラムや各種の情報を格納する。CPU101は、ROM102に格納されている制御プログラムに基づいて、端末100に関する各種の動作を実行する。なお、このような制御プログラムは、ROM102に格納されているものに限らず、CD−ROM等による外部の記憶媒体に記憶されているものでもよい。さらにこれを専用の読取装置によって、端末100のRAM103に読み取り、RAM103をワークメモリとしてCPU101が制御プログラムを実行するようにしてもよい。HDD(Hard Disk Drive)104は、端末100の補助記憶装置であり、各種データを格納することができる。   FIG. 2 is a block diagram illustrating hardware configurations of the terminal 100 and the printing apparatus 200 according to the present embodiment. The CPU 101 of the terminal 100 is a control unit that controls each unit of the terminal 100 connected to each other via the bus 108, and performs overall control of the terminal 100. The ROM 102 stores control programs and various types of information. The CPU 101 executes various operations related to the terminal 100 based on a control program stored in the ROM 102. Note that such a control program is not limited to the one stored in the ROM 102, but may be one stored in an external storage medium such as a CD-ROM. Furthermore, this may be read into the RAM 103 of the terminal 100 by a dedicated reading device, and the CPU 101 may execute the control program using the RAM 103 as a work memory. An HDD (Hard Disk Drive) 104 is an auxiliary storage device of the terminal 100 and can store various data.

端末100の入力装置105は、例えばキーボードやポインティング装置等である。表示装置106は、例えば液晶ディスプレイ等であり、印刷装置200に出力させるための画像を表示することができる。外部接続インターフェース(以下インターフェースは「I/F」と記す)107は、端末100と印刷装置200とを接続するインターフェースであり、端末100は、外部接続I/F107を介してジョブデータなどの各種データを送受信する。   The input device 105 of the terminal 100 is, for example, a keyboard or a pointing device. The display device 106 is a liquid crystal display, for example, and can display an image to be output to the printing device 200. An external connection interface (hereinafter referred to as “I / F”) 107 is an interface for connecting the terminal 100 and the printing apparatus 200, and the terminal 100 receives various data such as job data via the external connection I / F 107. Send and receive.

印刷装置200は、外部接続I/F214を介して、端末100から送信されるジョブデータなどの各種データを受信する。   The printing apparatus 200 receives various data such as job data transmitted from the terminal 100 via the external connection I / F 214.

印刷装置200のCPU211は、相互に接続された印刷装置200の各部を制御する制御部であり、印刷装置200の全体を統括制御する。プログラムROM212は、制御プログラムや各種の情報を格納する。CPU211は、プログラムROM212に格納されている制御プログラムに基づいて、印刷装置200に関する各種の動作を実行する。ワークRAM213は、外部接続I/F214を介して取得したジョブデータなどの各種情報を一時記憶する領域である。また、後述する画像処理制御部によって分割されたジョブデータである、分割ジョブデータを一時記憶する領域でもある。   The CPU 211 of the printing apparatus 200 is a control unit that controls each unit of the printing apparatus 200 connected to each other, and performs overall control of the entire printing apparatus 200. The program ROM 212 stores control programs and various types of information. The CPU 211 executes various operations related to the printing apparatus 200 based on a control program stored in the program ROM 212. The work RAM 213 is an area for temporarily storing various information such as job data acquired via the external connection I / F 214. Further, it is also an area for temporarily storing divided job data, which is job data divided by an image processing control unit described later.

印刷装置200のイメージRAM215は、後述する画像処理部がジョブデータから生成したビットマップデータなどの各種情報を記憶する領域である。本実施形態においては、CPU211と、プログラムROM212と、ワークRAM213と、イメージRAM215と、外部接続I/F214と、ドライバ216とは、印刷装置200における制御部210として機能する。   The image RAM 215 of the printing apparatus 200 is an area that stores various types of information such as bitmap data generated from job data by an image processing unit described later. In the present embodiment, the CPU 211, the program ROM 212, the work RAM 213, the image RAM 215, the external connection I / F 214, and the driver 216 function as the control unit 210 in the printing apparatus 200.

印刷装置の操作パネル220は、例えばタッチパネルディスプレイ等から構成され、ユーザからの操作を受け付けることにより、所望の処理を印刷装置200に実行させることができる。操作パネル220は、印刷装置200の状態表示や、警報を表示することもできる。   The operation panel 220 of the printing apparatus is configured by a touch panel display, for example, and can accept the user's operation to cause the printing apparatus 200 to execute a desired process. The operation panel 220 can also display a status display of the printing apparatus 200 and an alarm.

プリントエンジン230は、ドライバ216を介してCPU211によって制御される。プリントエンジン230は、制御部210から受信したビットマップデータに対して色変換などの所定の処理を加えた後、印刷用紙などに対して印刷する処理を実行する印刷部である。プリントエンジン230はインクタンクと、印刷ヘッドなどから構成されるインクジェット方式のものであってもよいし、電子写真方式によるものであってもよい。   The print engine 230 is controlled by the CPU 211 via the driver 216. The print engine 230 is a printing unit that executes a process of printing on a print sheet or the like after applying predetermined processing such as color conversion to the bitmap data received from the control unit 210. The print engine 230 may be an ink jet type constituted by an ink tank and a print head, or may be an electrophotographic type.

図3は、本実施形態における印刷装置200の機能構成を示すブロック図である。本実施形態の印刷装置200は、端末100から受信するジョブデータを処理し、ジョブデータからビットマップデータを生成する。さらに、生成したビットマップデータによって構成される画像を、印刷用紙等の媒体に印刷を行う処理を、プリンタエンジン230に実行させる。   FIG. 3 is a block diagram illustrating a functional configuration of the printing apparatus 200 according to the present embodiment. The printing apparatus 200 according to the present embodiment processes job data received from the terminal 100 and generates bitmap data from the job data. Further, the printer engine 230 is caused to execute processing for printing an image constituted by the generated bitmap data on a medium such as printing paper.

印刷装置200における制御部210は、画像処理制御部240と、記録テーブル250と、画像処理部260〜280と、スプール部290とから構成され、端末100から受信したジョブデータを処理し、印刷用のビットマップデータを生成する。より具体的には、制御部210が端末100からジョブデータを受信すると、解析部242は、受信したジョブデータの内容を解析する。分割部243は、解析したジョブデータを、分割ジョブデータに分割する。割振部244は、分割ジョブデータを、複数の画像処理部260〜280のいずれかに割り振る。本実施形態においては、分割部243は、ジョブデータをページ単位の分割ジョブデータに分割する。画像処理部260〜280は、分割ジョブデータを並列処理することができ、割振部244は複数の画像処理部260〜280のいずれかに割り振る。   The control unit 210 in the printing apparatus 200 includes an image processing control unit 240, a recording table 250, an image processing unit 260 to 280, and a spool unit 290. The control unit 210 processes job data received from the terminal 100 and performs printing. Generate bitmap data. More specifically, when the control unit 210 receives job data from the terminal 100, the analysis unit 242 analyzes the content of the received job data. The dividing unit 243 divides the analyzed job data into divided job data. The allocation unit 244 allocates the divided job data to any of the plurality of image processing units 260 to 280. In the present embodiment, the dividing unit 243 divides job data into divided job data in page units. The image processing units 260 to 280 can process the divided job data in parallel, and the allocating unit 244 allocates them to any of the plurality of image processing units 260 to 280.

ここで、割振部244は各種の振分方法によって分割ジョブデータを割り振ることができる。例えば、あらかじめ定められた固定的な順序によって分割ジョブデータを複数の画像処理部260〜280に振り分る方法であってもよい。また、画像処理部260〜280のうちいずれかが、割り振られた分割ジョブデータの処理が終了する毎に、割振部244が新たな分割ジョブデータを当該画像処理部に新たに割り振る方法であってもよい。上記は分割ジョブデータの割振方法の一例であり、他の振分方法を用いてもよい。分割ジョブデータの割り振りと同時に、画像処理制御部240の管理部241は、分割ジョブデータに含まれるオブジェクトデータの情報と、割り振り先の画像処理部260〜280とを対応付けて、記録テーブル250に記録する。オブジェクトデータの情報については、図6において後述する。   Here, the allocation unit 244 can allocate the divided job data by various allocation methods. For example, a method may be used in which the divided job data is distributed to the plurality of image processing units 260 to 280 in a predetermined fixed order. Further, every time one of the image processing units 260 to 280 finishes processing of the allocated divided job data, the allocation unit 244 newly allocates new divided job data to the image processing unit. Also good. The above is an example of an allocation method for divided job data, and other allocation methods may be used. Simultaneously with the allocation of the divided job data, the management unit 241 of the image processing control unit 240 associates the information of the object data included in the divided job data with the image processing units 260 to 280 that are the allocation destinations in the recording table 250. Record. The object data information will be described later with reference to FIG.

本実施形態では、画像処理制御部240は、印刷装置200にプログラムとしてインストールされている態様について説明するが、外部接続I/F214を介して印刷装置200と接続されているコンピュータ装置に構築されていてもよい。   In the present embodiment, the image processing control unit 240 is described as being installed in the printing apparatus 200 as a program, but is configured in a computer apparatus connected to the printing apparatus 200 via the external connection I / F 214. May be.

画像処理部260〜280は、RIP処理部261,271,281をそれぞれ有し、割り振られた分割ジョブデータを受信すると所定の処理を実行する。画像処理部260〜280が分割ジョブデータを処理することにより、レンダリング後のビットマップデータデータを生成する。さらに、画像処理部260〜280は、出力部263,273,283をそれぞれ有し、生成されたビットマップデータを画像処理制御部240に出力する。   The image processing units 260 to 280 have RIP processing units 261, 271, and 281 respectively, and execute predetermined processing upon receiving the allocated divided job data. The image processing units 260 to 280 process the divided job data, thereby generating rendered bitmap data data. Furthermore, the image processing units 260 to 280 have output units 263, 273, and 283, respectively, and output the generated bitmap data to the image processing control unit 240.

ここで、RIP処理とは、ジョブデータを解釈し、ジョブデータに含まれる描画命令に基づいてレンダリング処理を実行し、ビットマップデータを生成する一連の処理をいう。また、RIP処理におけるレンダリング処理の過程で、中間データが出力される。画像処理部260〜280は、上記中間データをキャッシュメモリに保存するキャッシュ部262,272,282をそれぞれ有する。また、本実施形態では、キャッシュ部262〜282は、分割ジョブデータに含まれるオブジェクトデータをキャッシュメモリに保存することもできる。本実施形態においては、キャッシュ部262〜282はそれぞれ独立したキャッシュメモリを有し、所定のタイミングにおいて各キャッシュ部が中間データ乃至オブジェクトデータをキャッシュメモリに保存するキャッシュ処理を実行する。   Here, the RIP process is a series of processes for interpreting job data, executing a rendering process based on a drawing command included in the job data, and generating bitmap data. Also, intermediate data is output during the rendering process in the RIP process. The image processing units 260 to 280 include cache units 262, 272, and 282 that store the intermediate data in a cache memory, respectively. In the present embodiment, the cache units 262 to 282 can also save the object data included in the divided job data in the cache memory. In this embodiment, each of the cache units 262 to 282 has an independent cache memory, and each cache unit executes a cache process for storing intermediate data or object data in the cache memory at a predetermined timing.

RIP処理部261〜281は、キャッシュメモリに保存されている中間データ乃至オブジェクトデータを処理することにより、レンダリング処理の一部または全部を省略することができ、RIP処理全体の高速化を図ることができる。   The RIP processing units 261 to 281 process intermediate data or object data stored in the cache memory, so that part or all of the rendering process can be omitted, and the overall speed of the RIP process can be increased. it can.

さらに、出力部263〜283は、レンダリング後のビットマップデータに加えて、分割ジョブデータのRIP処理の処理結果を含むレポートデータを、画像処理制御部240に出力する。本実施形態におけるレポートデータは、前記分割ジョブデータが正常に処理されたか、すなわちエラーの有無を示す情報を含む。さらに、エラーが有った場合には、生成されたビットマップデータの異常か、または複数の画像処理部260〜280を構成するハードウェアの異常か、などのエラーの種別を示す情報を含むことができる。   Further, the output units 263 to 283 output report data including the processing result of the RIP processing of the divided job data to the image processing control unit 240 in addition to the bitmap data after rendering. The report data in this embodiment includes information indicating whether the divided job data has been processed normally, that is, whether there is an error. Furthermore, when there is an error, it includes information indicating the type of error, such as whether the generated bitmap data is abnormal or whether the hardware constituting the plurality of image processing units 260 to 280 is abnormal. Can do.

画像処理制御部240は、画像処理部260〜280からレンダリング後のビットマップデータを受信すると、受信したビットマップデータをスプール部290に格納し、その後ビットマップデータをプリントエンジン230へ送信する。なお、スプール部290は、図2に示すイメージRAM215の記憶領域をビットマップデータの記憶領域として利用する。   Upon receiving the rendered bitmap data from the image processing units 260 to 280, the image processing control unit 240 stores the received bitmap data in the spool unit 290, and then transmits the bitmap data to the print engine 230. The spool unit 290 uses the storage area of the image RAM 215 shown in FIG. 2 as a storage area for bitmap data.

本実施形態において、画像処理部260〜280は、それぞれ独立したハードウェア(例えば、回路など)として印刷装置内部に構成される態様について説明するが、単一のハードウェア上に各処理部が論理的に区画されて構築される態様であってもよい。   In the present embodiment, the image processing units 260 to 280 will be described as being configured inside the printing apparatus as independent hardware (for example, a circuit or the like), but each processing unit is logical on a single hardware. It may be an embodiment that is constructed in a divided manner.

図4は、本実施形態における印刷装置200の制御部210の処理内容を示すフローチャートである。以下図4を参照して、制御部210の処理内容について説明する。S201において、画像処理制御部240が端末100からジョブデータを受信する。S202において、解析部242は、受信したジョブデータを解析する。次いで、分割部243は、解析結果に基づいてジョブデータを分割ジョブデータに分割して、それらの割り振り先を決定する。なお、本実施形態における分割ジョブデータは、ジョブデータから、ジョブデータと同様の構成で複数に分割されたデータのことを言い、一つのジョブデータに対応するサブデータであると言える。   FIG. 4 is a flowchart showing the processing contents of the control unit 210 of the printing apparatus 200 in the present embodiment. Hereinafter, the processing content of the control unit 210 will be described with reference to FIG. In step S <b> 201, the image processing control unit 240 receives job data from the terminal 100. In step S202, the analysis unit 242 analyzes the received job data. Next, the dividing unit 243 divides the job data into divided job data based on the analysis result, and determines their allocation destinations. Note that the divided job data in the present embodiment refers to data divided into a plurality of pieces from the job data with the same configuration as the job data, and can be said to be sub-data corresponding to one job data.

S203において、割振部244は、分割ジョブデータを各画像処理部260〜280に割り振る。次いで、S204において、管理部241は、ジョブデータを分割する際に得られた各分割ジョブデータに含まれるオブジェクトデータの情報と、割り振り先の画像処理部260〜280とを対応付けて記録テーブル250に記録する。   In S203, the allocation unit 244 allocates the divided job data to the image processing units 260 to 280. Next, in S204, the management unit 241 associates the information of the object data included in each divided job data obtained when dividing the job data with the image processing units 260 to 280 as the allocation destinations in association with the recording table 250. To record.

画像処理部260〜280が、分割ジョブデータからビットマップデータを生成する処理を終えると、S205に移行する。S205において、画像処理制御部240は、画像処理部260〜280の出力部263〜283から、ビットマップデータと、レポートデータとを受信する。次いで、判定部245は、受信したレポートデータに基づいて、画像処理部260〜280が分割ジョブデータに対する処理を正常に終了したかを判定する。   When the image processing units 260 to 280 finish the process of generating the bitmap data from the divided job data, the process proceeds to S205. In S <b> 205, the image processing control unit 240 receives bitmap data and report data from the output units 263 to 283 of the image processing units 260 to 280. Next, based on the received report data, the determination unit 245 determines whether the image processing units 260 to 280 have normally finished processing the divided job data.

判定部245が、分割ジョブデータに対する処理を正常に終了したと判定した場合(S205:Yes)、管理部241は、処理を行った分割ジョブデータの情報を記録テーブル250に記録する(S206)。そして、画像処理制御部240は、生成されたビットマップデータをスプール部290に保存し、S207に移行する。一方、判定部245が、分割ジョブデータに対する処理を正常に終了していないと判定した場合(S205:No)、S209の処理に移行する。   When the determination unit 245 determines that the process for the divided job data has been normally completed (S205: Yes), the management unit 241 records information of the processed divided job data in the recording table 250 (S206). Then, the image processing control unit 240 stores the generated bitmap data in the spool unit 290, and proceeds to S207. On the other hand, when the determination unit 245 determines that the process for the divided job data has not been completed normally (S205: No), the process proceeds to S209.

S207において、次の分割ジョブデータが存在する場合は再びS203に移行し(S207:Yes)、次の分割ジョブデータが存在しない場合はS208に移行する(S207:No)。さらにS208において次のジョブデータが存在する場合は再びS201に移行し(S208:Yes)、制御部210による画像処理を継続する。   If the next divided job data exists in S207, the process proceeds to S203 again (S207: Yes), and if the next divided job data does not exist, the process proceeds to S208 (S207: No). Furthermore, when the next job data exists in S208, the process proceeds to S201 again (S208: Yes), and the image processing by the control unit 210 is continued.

S209において、判定部245はさらにS205でのエラーの内容を判定する。判定部245は、出力部263〜283が出力したレポートデータに含まれるエラー情報に基づいて、当該エラーがリトライ可能エラーかを判定する。具体的には、判定部245は、レポートデータに含まれるエラー情報から、分割ジョブデータを処理した画像処理部とは異なる他の画像処理部が、当該分割ジョブデータの処理が可能であるか否かを判定する。   In S209, the determination unit 245 further determines the content of the error in S205. The determination unit 245 determines whether the error is a retryable error based on the error information included in the report data output by the output units 263 to 283. Specifically, the determination unit 245 determines from the error information included in the report data whether another image processing unit different from the image processing unit that processed the divided job data can process the divided job data. Determine whether.

判定部245がリトライ可能エラーと判定した場合(S209:Yes)、S210に移行する。本実施形態では、例えば、画像処理部260〜280のうち一部が障害を発生しているものの、残りの一部によって画像処理を継続できる状態(縮退動作中)である場合、判定部245はリトライ可能エラーと判定する。このとき、制御部210は、画像処理部260〜280のうち一部が障害を発生しているものの、残りの一部によって画像処理を継続できる状態(縮退動作中)である警告表示を、操作パネル220に表示させる処理を実行する(S210)。一方、判定部245がリトライ可能エラーと判定しなかった場合(S209:No)、S213の処理に移行する。   When the determination unit 245 determines that a retryable error has occurred (S209: Yes), the process proceeds to S210. In the present embodiment, for example, when some of the image processing units 260 to 280 have failed, but the image processing can be continued with the remaining part (degenerate operation), the determination unit 245 Judged as a retryable error. At this time, the control unit 210 operates a warning display that is in a state in which image processing can be continued by the remaining part of the image processing units 260 to 280 but the remaining part is in the process (degenerate operation). Processing to be displayed on the panel 220 is executed (S210). On the other hand, when the determination unit 245 does not determine that the retry is possible (S209: No), the process proceeds to S213.

S211において、割振部244は、記録テーブル250の対応関係を参照し、前回分割ジョブデータを処理した画像処理部とは異なる他の画像処理部に対して、当該分割ジョブデータを再度割り振る。このとき、割振部244は、当該分割ジョブデータが再度の割り振りに係るものであることを意味するリトライフラグを付加して(S212)、当該分割ジョブデータを、再度の割り振り先の画像処理部に対して送信する。   In S211, the allocation unit 244 refers to the correspondence relationship of the recording table 250, and reallocates the divided job data to another image processing unit different from the image processing unit that processed the previous divided job data. At this time, the allocation unit 244 adds a retry flag indicating that the divided job data is related to the re-allocation (S212), and sends the divided job data to the re-allocation destination image processing unit. Send to.

判定部245がリトライ可能エラーと判定しなかった場合(S209:No)、S213において、制御部210は、ジョブエラーであるエラー表示を、操作パネル220に表示させる処理を実行する。本実施形態では、例えば、割振部244がいずれの画像処理部260〜280に分割ジョブデータを割り振っても、分割ジョブデータの処理を継続することが不可能であると判定された場合(S209:No)、判定部245はジョブエラーであると判定する。   If the determination unit 245 does not determine that the retry is possible (S209: No), in S213, the control unit 210 performs a process of displaying an error display indicating a job error on the operation panel 220. In the present embodiment, for example, when it is determined that the divided job data cannot be continued even if the allocation unit 244 allocates the divided job data to any of the image processing units 260 to 280 (S209: No), the determination unit 245 determines that there is a job error.

S214において、管理部241は、処理を行うことができなかった分割ジョブデータの情報と、当該処理がエラーであった情報とを記録テーブル250に記録する(S214)。その後、S208に移行する。   In S214, the management unit 241 records the information of the divided job data that could not be processed and the information that the process was an error in the recording table 250 (S214). Thereafter, the process proceeds to S208.

S208において次のジョブデータが存在しない場合は、処理を終了する(S208:No)。本実施形態においては、S214の処理の後に再びS208に移行する態様について説明したが、ジョブデータの処理自体を中止してもよい。ジョブデータ全体の処理を終了するか、またはエラーが発生したジョブデータに係るページのみの処理を中止するかは、予め設定によって決定してもよいし、操作パネル220または端末100で受け付けた設定に従ってもよい。   If the next job data does not exist in S208, the process is terminated (S208: No). In the present embodiment, the mode of shifting to S208 again after the processing of S214 has been described, but the job data processing itself may be stopped. Whether to end the processing of the entire job data or to stop the processing of only the page related to the job data in which an error has occurred may be determined in advance, or according to the setting accepted by the operation panel 220 or the terminal 100 Also good.

図5は、図4のフローチャートにおけるS201〜S204の処理内容を、ジョブデータの遷移例と共に示した図である。本実施形態におけるジョブデータ300は、オブジェクトデータ(311〜316)と、ページ情報データ(321〜326)とから構成される。   FIG. 5 is a diagram showing the processing contents of S201 to S204 in the flowchart of FIG. 4 together with a transition example of job data. The job data 300 in this embodiment is composed of object data (311 to 316) and page information data (321 to 326).

オブジェクトデータ311〜316は、VDPにおける可変データ部分に相当する。本実施形態において、オブジェクトデータ311〜316は、ジョブデータ300全体で必要なフォントを描画する要素であるフォントオブジェクトデータ311〜312と、画像を描画する要素である画像オブジェクトデータ313〜316とを有する。他の実施形態では、例えばカラープロファイルや、タイルパターンなどの、その他描画する要素をオブジェクトデータとしてもよい。   The object data 311 to 316 correspond to a variable data part in the VDP. In the present embodiment, the object data 311 to 316 include font object data 311 to 312 that are elements for drawing fonts necessary for the entire job data 300 and image object data 313 to 316 that are elements for drawing an image. . In other embodiments, other drawing elements such as a color profile and a tile pattern may be used as object data.

ページ情報データ321〜326は、本実施形態において、オブジェクトデータ311〜316を使用してページ単位での描画内容を規定するためのデータである。本実施形態において、ページ情報データ321〜326はそれぞれ独立した6ページ分を有するものを例に挙げて説明するが、ページ数はこれに限られない。   In the present embodiment, the page information data 321 to 326 is data for defining drawing contents in units of pages using the object data 311 to 316. In the present embodiment, the page information data 321 to 326 will be described using an example having six independent pages, but the number of pages is not limited thereto.

VDP、PS、またはPDFなどのオブジェクトを使用するPDL(ページ記述言語)では、オブジェクトデータをページ情報データとは独立して保持することにより、使用される共通のオブジェクトデータを重複して保持する必要がない。そのため、ジョブデータ全体のデータサイズを削減することができる。例えば、図5の例で説明すると、1ページ目のページ情報データ321には、オブジェクトデータA(311)と、オブジェクトデータC(313)とが含まれている。   In PDL (page description language) that uses objects such as VDP, PS, or PDF, it is necessary to hold the object data independently of the page information data, thereby holding the common object data used in duplicate. There is no. Therefore, the data size of the entire job data can be reduced. For example, referring to the example of FIG. 5, the page information data 321 of the first page includes object data A (311) and object data C (313).

図4のフローチャートにおいて、解析部242は、受信したジョブデータ300を解析し、分割部243は、各ページ単位での画像処理に必要なオブジェクトデータを含むように、分割ジョブデータ330〜380にそれぞれ分割する(S202)。このとき、分割部243は、ジョブデータをページ記述言語の形式に沿った分割ジョブデータ330〜380に分割する。さらに、本実施形態では、分割ジョブデータ330〜380はそれぞれ1つのページ情報データと、当該分割ジョブデータの画像処理に必要なオブジェクトデータのみを保持するデータに分割される。図5の例においては、ジョブデータ300は、6ページ構成となっている。そのため、分割部243は、6つの独立したページ情報データ321〜326を含む、6つの分割ジョブデータ330〜380に分割する。   In the flowchart of FIG. 4, the analysis unit 242 analyzes the received job data 300, and the division unit 243 includes divided object data 330 to 380 so as to include object data necessary for image processing in units of pages. Divide (S202). At this time, the dividing unit 243 divides the job data into divided job data 330 to 380 according to the page description language format. Further, in this embodiment, each of the divided job data 330 to 380 is divided into one page information data and data that holds only object data necessary for image processing of the divided job data. In the example of FIG. 5, the job data 300 has a 6-page configuration. Therefore, the dividing unit 243 divides the data into six divided job data 330 to 380 including six independent page information data 321 to 326.

分割ジョブデータ330は、1ページ目の分割ジョブデータであり、1ページ目のページ情報データ321と、対応するオブジェクトデータ311、313とから構成されるページ記述言語データである。以下同様に、分割ジョブデータ340〜380は、2ページ目〜6ページ目の分割ジョブデータであり、それぞれ2ページ目〜6ページ目のページ情報データと、対応するオブジェクトデータとから構成されるページ記述言語データである。各分割ジョブデータ330〜380は、1ページ分の画像処理に必要なデータを含むページ記述言語データであり、各分割ジョブデータ330〜380は等価なデータとなる。   The divided job data 330 is divided job data for the first page, and is page description language data composed of page information data 321 for the first page and corresponding object data 311 and 313. Similarly, the divided job data 340 to 380 are divided job data of the second page to the sixth page, and each page includes page information data of the second page to the sixth page and corresponding object data. Description language data. Each divided job data 330 to 380 is page description language data including data necessary for image processing for one page, and each divided job data 330 to 380 is equivalent data.

図4のフローチャートにおいて、割振部244は、分割ジョブデータ330〜380を画像処理部260〜280に割り振る(S203)。本実施形態では、割振部244は、6つの分割ジョブデータ330〜380を、3つの画像処理部260〜280に対して、ページ番号順にラウンドロビン方式で割り振る。具体的には、分割部243は、分割ジョブデータ330,360を画像処理部1(260)に対して、分割ジョブデータ340,370を画像処理部2(270)に対して、分割ジョブデータ350,380を画像処理部3(280)に対して割り振る。ラウンドロビン方式の割り振り以外にも、ジョブデータ300の内容を解析して、画像処理部260〜280の間で処理負荷を均等にする方式や、分割ジョブデータ330〜380のデータサイズを均等にする方式など、各種方式を採用することができる。   In the flowchart of FIG. 4, the allocation unit 244 allocates the divided job data 330 to 380 to the image processing units 260 to 280 (S203). In the present embodiment, the allocation unit 244 allocates the six divided job data 330 to 380 to the three image processing units 260 to 280 in the order of page numbers in a round robin manner. Specifically, the dividing unit 243 supplies the divided job data 330 and 360 to the image processing unit 1 (260) and the divided job data 340 and 370 to the image processing unit 2 (270). , 380 are allocated to the image processing unit 3 (280). Besides the allocation of the round robin method, the contents of the job data 300 are analyzed to equalize the processing load among the image processing units 260 to 280 and the data sizes of the divided job data 330 to 380 are equalized. Various methods such as a method can be adopted.

次いで、図4のフローチャートにおいて、管理部241は、ジョブデータを分割する際に得られた各分割ジョブデータに含まれるオブジェクトデータの情報と、割り振り先の画像処理部260〜280とを対応付けて記録テーブル250に記録する(S204)。   Next, in the flowchart of FIG. 4, the management unit 241 associates the information of the object data included in each divided job data obtained when dividing the job data with the image processing units 260 to 280 as the allocation destinations. Record in the recording table 250 (S204).

図6は、本実施形態における記録テーブル250に記録される内容を示す図である。管理部241は、画像処理部260〜280に付与されたIDと、ジョブデータ300に付与されたIDと、ページ情報データ321〜326のIDと、分割ジョブデータ330〜380のオブジェクトデータ311〜316のIDとの対応関係を記録する。すなわち、記録テーブル250に、各画像処理部と、ジョブデータと、それぞれに割当てられた分割ジョブデータとが関連付けて管理されている。   FIG. 6 is a diagram showing the contents recorded in the recording table 250 in the present embodiment. The management unit 241 includes an ID assigned to the image processing units 260 to 280, an ID assigned to the job data 300, an ID of the page information data 321 to 326, and object data 311 to 316 of the divided job data 330 to 380. The correspondence relationship with the ID is recorded. That is, each image processing unit, job data, and divided job data assigned to each image processing unit are managed in the recording table 250 in association with each other.

なお、図6に示される記録テーブル250の例では、画像処理部260がID「画像処理部1」、画像処理部270がID「画像処理部2」、画像処理部280がID「画像処理部3」と記録されている。また、ジョブデータ300のIDが「JobA」、ページ情報データ321〜326のIDが「Page1」〜「Page6」、オブジェクトデータ311〜316のIDが「ObjA」〜「ObjF」と記録されている。   In the example of the recording table 250 illustrated in FIG. 6, the image processing unit 260 has the ID “image processing unit 1”, the image processing unit 270 has the ID “image processing unit 2”, and the image processing unit 280 has the ID “image processing unit”. 3 "is recorded. Also, the job data 300 ID is recorded as “JobA”, the page information data 321 to 326 IDs are “Page1” to “Page6”, and the object data 311 to 316 IDs are recorded as “ObjA” to “ObjF”.

本実施形態ではさらに、オブジェクトデータの情報に対応付けて、分割ジョブデータの状態情報(「処理中」「処理済」「エラー」など)が記憶される。具体的には、割振部244が、オブジェクトデータ311を含む分割ジョブデータを割り振ったときに(S203)、管理部241はオブジェクトデータ311(ObjA)について「処理中」を記録テーブル250に記録する。判定部245が、オブジェクトデータ311を含む分割ジョブデータに対する処理が正常に終了したと判定した場合(S205:Yes)、管理部241はオブジェクトデータ311(ObjA)について「処理済」を記録テーブル250に記録する。判定部245が、オブジェクトデータ311を含む分割ジョブデータに対する処理が正常に終了していない判定した場合(S205:No)、管理部241はオブジェクトデータ311(ObjA)について「エラー」を記録テーブル250に記録する。なお、割振部244による分割ジョブデータの割り振りが行われる都度、管理部241は分割ジョブデータの種類と、割り振り先の画像処理部の種類との対応関係を記録テーブル250に記録する。   In the present embodiment, the status information (“processing”, “processed”, “error”, etc.) of the divided job data is stored in association with the object data information. Specifically, when the allocation unit 244 allocates the divided job data including the object data 311 (S203), the management unit 241 records “processing” for the object data 311 (ObjA) in the recording table 250. When the determination unit 245 determines that the processing for the divided job data including the object data 311 has been normally completed (S205: Yes), the management unit 241 sets “processed” for the object data 311 (ObjA) in the recording table 250. Record. When the determination unit 245 determines that the processing for the divided job data including the object data 311 has not ended normally (S205: No), the management unit 241 indicates “error” in the recording table 250 for the object data 311 (ObjA). Record. Each time the divided job data is allocated by the allocating unit 244, the management unit 241 records the correspondence relationship between the type of the divided job data and the type of the image processing unit as the allocation destination in the recording table 250.

本実施形態における記録テーブル250では、各画像処理部260〜280のレコードの最大数が定義される。そして、管理部241が新たなレコードをする際に、記録テーブル250に記録されている当該画像処理部の古いレコードから順次削除される。これにより、画像処理制御部240は、各画像処理部260〜280が、分割ジョブデータに含まれるいずれのページ情報データおよびいずれのオブジェクトデータを処理するかを、記録テーブル250を参照することで把握することができる。   In the recording table 250 in the present embodiment, the maximum number of records of each of the image processing units 260 to 280 is defined. Then, when the management unit 241 makes a new record, the old record of the image processing unit recorded in the recording table 250 is sequentially deleted. Thereby, the image processing control unit 240 grasps which page information data and which object data included in the divided job data each image processing unit 260 to 280 processes by referring to the recording table 250. can do.

図7は、本実施形態において、割振部244が分割ジョブデータの再度の割り振り先を決定する処理内容(S211)を示すフローチャートである。以下、割振部244が分割ジョブデータの再度の割り振り先を決定する処理内容について、図7を参照して説明する。   FIG. 7 is a flowchart showing the processing content (S211) in which the allocating unit 244 determines the re-allocation destination of the divided job data in this embodiment. In the following, the processing contents in which the allocation unit 244 determines the re-allocation destination of the divided job data will be described with reference to FIG.

S301において、記録テーブル250の対応関係を参照し、エラーとなった分割ジョブデータに含まれるオブジェクトデータの情報を取得する。   In S301, the correspondence relationship of the recording table 250 is referred to, and the information of the object data included in the divided job data in error is acquired.

S302において、S301で取得したオブジェクトデータの情報から、当該オブジェクトデータを使用している画像処理部を検索する。   In S302, the image processing unit that uses the object data is searched from the information of the object data acquired in S301.

S303において、当該オブジェクトデータを使用している他の画像処理部が1つのみかを判定する。該当する画像処理部が1つのみであった場合(S303:Yes)、S305に移行する。一方、該当する画像処理部が複数存在している場合(S303:No)、S304において、該当する画像処理部の候補から、当該オブジェクトデータを最も多く使用している画像処理部を選択する。   In step S303, it is determined whether only one other image processing unit is using the object data. When there is only one corresponding image processing unit (S303: Yes), the process proceeds to S305. On the other hand, when there are a plurality of corresponding image processing units (S303: No), in S304, an image processing unit that uses the object data most frequently is selected from the candidates for the corresponding image processing unit.

次いで、S305において、割振部244は、エラーとなった分割ジョブデータの再割り振り先を決定する。   Next, in S305, the allocation unit 244 determines a re-allocation destination of the divided job data in which an error has occurred.

画像処理部260〜280のRIP処理部261〜281は、割り振られた分割ジョブデータ330〜380からビットマップデータを生成するRIP処理を実行する。画像処理部260〜280のキャッシュ部262〜282は、分割ジョブデータ330〜380からビットマップデータを生成する過程で出力される中間データをキャッシュする。このとき、キャッシュ部262〜282は、分割ジョブデータ330〜380に含まれるオブジェクトデータ311〜316についてもキャッシュする。これにより、次回同一のオブジェクトデータが含まれる分割ジョブデータを処理する際に、オブジェクトデータの処理を省略し、画像処理部260〜280は処理を高速に行うことができる。   The RIP processing units 261 to 281 of the image processing units 260 to 280 execute RIP processing for generating bitmap data from the allocated divided job data 330 to 380. The cache units 262 to 282 of the image processing units 260 to 280 cache intermediate data output in the process of generating bitmap data from the divided job data 330 to 380. At this time, the cache units 262 to 282 also cache the object data 311 to 316 included in the divided job data 330 to 380. As a result, when the divided job data including the same object data is processed next time, the processing of the object data is omitted, and the image processing units 260 to 280 can perform the processing at high speed.

キャッシュ部262〜282は、それぞれ独立したキャッシュメモリを有しているが、各キャッシュメモリのデータ記憶領域は有限であるため、生成された中間データ乃至オブジェクトデータは古いものから順次消去される。そのため、各画像処理部260〜280の中間データ乃至オブジェクトデータのキャッシュ保存状況と、記録テーブル250に記録されているオブジェクトデータの情報とは、同期していることが望ましい。本実施形態においては、画像処理部260〜280に対応するオブジェクトデータの情報の最大記録数を、キャッシュメモリに保存することができるオブジェクトデータの数の概算値と同じ程度、記録テーブル250に記録させることができる。かかる構成により、管理部241が記録テーブル250に当該オブジェクトデータの情報を同期して記録させるための特別な機構を簡略化することができる。   Each of the cache units 262 to 282 has an independent cache memory. However, since the data storage area of each cache memory is limited, the generated intermediate data or object data is sequentially deleted from the oldest one. Therefore, it is desirable that the intermediate data or object data cache storage status of each of the image processing units 260 to 280 and the object data information recorded in the recording table 250 are synchronized. In the present embodiment, the maximum recording number of object data information corresponding to the image processing units 260 to 280 is recorded in the recording table 250 to the same extent as the approximate value of the number of object data that can be stored in the cache memory. be able to. With this configuration, it is possible to simplify a special mechanism for the management unit 241 to record the information of the object data in the recording table 250 in synchronization.

図8は、本実施形態における、制御部210のリトライ処理内容を分割ジョブデータの遷移例と共に示した図である。以下、図8を参照して制御部210のリトライ処理内容を説明する。   FIG. 8 is a diagram showing the retry processing contents of the control unit 210 according to the present embodiment, together with a transition example of the divided job data. Hereinafter, the retry processing content of the control unit 210 will be described with reference to FIG.

割り振られた分割ジョブデータ330〜380は、それぞれ画像処理部260〜280によって処理される。このとき、画像処理部3(280)に割り振られた分割ジョブデータ380の処理において、エラーが発生した場合、画像処理部3(280)は、分割ジョブデータ380の処理結果を含むレポートデータを、画像処理制御部240に出力する。   The allocated divided job data 330 to 380 are processed by the image processing units 260 to 280, respectively. At this time, when an error occurs in the processing of the divided job data 380 allocated to the image processing unit 3 (280), the image processing unit 3 (280) displays the report data including the processing result of the divided job data 380 as The image is output to the image processing control unit 240.

画像処理制御部240の判定部245は、出力されたレポートデータの内容に基づいて、画像処理部3(280)に割り振られた分割ジョブデータ380の処理において、エラーが発生したことを判定する(S205:No)。次いで、判定部245は、レポートデータに含まれるエラーの種類に基づいて、分割ジョブデータ380を処理した画像処理部3(280)とは異なる他の画像処理部が、分割ジョブデータ380を処理することが可能かを判定する(S209)。   The determination unit 245 of the image processing control unit 240 determines that an error has occurred in the process of the divided job data 380 allocated to the image processing unit 3 (280) based on the contents of the output report data ( S205: No). Next, in the determination unit 245, another image processing unit different from the image processing unit 3 (280) that processed the divided job data 380 processes the divided job data 380 based on the type of error included in the report data. It is determined whether it is possible (S209).

図8に示される例では、他の画像処理部が分割ジョブデータ380を処理することが可能と判定されたことを示している(S209:Yes)。このとき制御部210は、画像処理部260〜280のうち一部が障害を発生しているものの、残りの一部によって画像処理を継続できる状態(縮退動作中)である警告表示を、操作パネル220に表示させる処理を実行する(S210)。   The example shown in FIG. 8 indicates that it is determined that another image processing unit can process the divided job data 380 (S209: Yes). At this time, the control unit 210 displays a warning display in a state where a part of the image processing units 260 to 280 has failed but the image processing can be continued with the remaining part (during the degeneration operation). Processing to be displayed on 220 is executed (S210).

次いで、割振部244は、記録テーブル250の記録を参照し、前回分割ジョブデータを処理した画像処理部とは異なる他の画像処理部に対して、当該分割ジョブデータを再度割り振る(S211)。このとき、割振部244は、分割ジョブデータ380と対応付けられているオブジェクトデータの情報を取得する。   Next, the allocation unit 244 refers to the recording in the recording table 250 and reallocates the divided job data to another image processing unit different from the image processing unit that processed the previous divided job data (S211). At this time, the allocation unit 244 acquires information on object data associated with the divided job data 380.

図6の例において、画像処理部3(280)が分割ジョブデータ380の処理を行った処理内容は、「画像処理部3:JobA:Page6」というデータ形式で記録テーブル250に記録されている。さらに、記録テーブル250には、「画像処理部3:JobA:Page6」と「ObjB」との対応関係と、「画像処理部3:JobA:Page6」と「ObjB」との対応関係とがそれぞれ記録されている。   In the example of FIG. 6, the processing content that the image processing unit 3 (280) has processed the divided job data 380 is recorded in the recording table 250 in a data format of “image processing unit 3: JobA: Page6”. Furthermore, in the recording table 250, the correspondence between “image processing unit 3: JobA: Page6” and “ObjB” and the correspondence between “image processing unit 3: JobA: Page6” and “ObjB” are recorded. Has been.

次いで、割振部244は、記録テーブル250に記録されているオブジェクトデータの情報から、当該オブジェクトデータを使用している画像処理部を検索する(S302)。   Next, the allocation unit 244 searches the image processing unit that uses the object data from the information of the object data recorded in the recording table 250 (S302).

図6の例において、「ObjB」を使用している画像処理部は「画像処理部1:JobA:Page4」と、「画像処理部2:JobA:Page2」であることが記録テーブル250に記録されている。同様に、「ObjC」を使用している画像処理部は「画像処理部1:JobA:Page1」であることが記録テーブル250に記録されている。すなわち、割振部244は、オブジェクトデータ312が、分割ジョブデータ340と360とに含まれており、それぞれ画像処理部2(270)と、画像処理部1(260)とによって使用されていることを検索結果として特定することができる。同様に、割振部244は、オブジェクトデータ313が、分割ジョブデータ330に含まれており、画像処理部1(260)によって使用されていることを検索結果として特定することができる。   In the example of FIG. 6, the image processing units using “ObjB” are recorded in the recording table 250 as “image processing unit 1: JobA: Page4” and “image processing unit 2: JobA: Page2”. ing. Similarly, an image processing unit using “ObjC” is recorded in the recording table 250 as “image processing unit 1: JobA: Page1”. That is, the allocation unit 244 indicates that the object data 312 is included in the divided job data 340 and 360 and is used by the image processing unit 2 (270) and the image processing unit 1 (260), respectively. It can be specified as a search result. Similarly, the allocation unit 244 can specify that the object data 313 is included in the divided job data 330 and is used by the image processing unit 1 (260) as a search result.

図6の例では、「画像処理部1:JobA:Page1」と、「画像処理部2:JobA:Page2」、すなわち、2つの画像処理部260,270がオブジェクトデータを使用している画像処理部として特定されている。そのため、割振部244は、該当する画像処理部の候補から、エラーとなった分割ジョブデータに含まれるオブジェクトデータの情報を、最も多く使用している画像処理部を選択する。本実施形態では、画像処理部1(260)が、オブジェクトデータ312とオブジェクトデータ313を含む分割ジョブデータを処理し、画像処理部2(270)が、オブジェクトデータ312を含む分割ジョブデータ340を処理している。そのため、割振部244は、使用するオブジェクトデータの数が最も多い画像処理部として、画像処理部1(260)を選択する(S304)。次いで、割振部244は、画像処理部1(260)を、分割ジョブデータ380の再割り振り先と決定する(S305)。   In the example of FIG. 6, “image processing unit 1: JobA: Page1” and “image processing unit 2: JobA: Page2”, that is, an image processing unit in which two image processing units 260 and 270 use object data. Has been identified as Therefore, the allocating unit 244 selects an image processing unit that uses the information of the object data included in the divided job data in error most from the candidates of the corresponding image processing unit. In this embodiment, the image processing unit 1 (260) processes the divided job data including the object data 312 and the object data 313, and the image processing unit 2 (270) processes the divided job data 340 including the object data 312. doing. Therefore, the allocation unit 244 selects the image processing unit 1 (260) as the image processing unit having the largest number of object data to be used (S304). Next, the allocation unit 244 determines that the image processing unit 1 (260) is a reallocation destination of the divided job data 380 (S305).

次いで、割振部244は、決定した再割り振り先の画像処理部1(260)に対して、分割ジョブデータ380を送信する。このとき、再度割り振られた分割ジョブデータであるかを各画像処理部に通知するために、割振部244は、リトライフラグを分割ジョブデータ380に付加する(S212)。画像処理部260〜280は、各画像処理部が処理中の分割ジョブデータの種類と、リトライフラグが付加された分割ジョブデータの種類とを比較し、各分割ジョブデータの処理順を並び替えることができる。これにより、双方の分割ジョブデータに共通で含まれるオブジェクトデータを連続して参照して処理することにより、各画像処理部のキャッシュメモリに保存されているオブジェクトデータの利用率を向上させることができる。   Next, the allocation unit 244 transmits the divided job data 380 to the determined reallocation destination image processing unit 1 (260). At this time, the allocation unit 244 adds a retry flag to the divided job data 380 in order to notify each image processing unit whether the divided job data is reassigned (S212). The image processing units 260 to 280 compare the type of the divided job data being processed by each image processing unit with the type of the divided job data to which the retry flag is added, and rearrange the processing order of the divided job data. Can do. As a result, the object data stored in the cache memory of each image processing unit can be improved by continuously referencing and processing the object data included in both divided job data. .

また、図6の例において、画像処理部3(280)は、分割ジョブデータ380の処理結果がエラーであった場合、当該エラーの種類をさらに含むレポートデータを出力する。レポートデータに含まれるエラーの種類として、メモリ不足エラー、空きディスク容量不足エラー、または画像処理部固有のエラー等が挙げられる。判定部245は、レポートデータに含まれるこれらのエラーの種類に基づいて、分割ジョブデータ380を処理した画像処理装置3(208)とは異なる他の画像処理部260,270が、分割ジョブデータ380の処理が可能であるかを判定することができる。   In the example of FIG. 6, when the processing result of the divided job data 380 is an error, the image processing unit 3 (280) outputs report data further including the error type. Types of errors included in the report data include a memory shortage error, a free disk space shortage error, an error specific to the image processing unit, and the like. Based on these types of errors included in the report data, the determination unit 245 determines that the other image processing units 260 and 270 that are different from the image processing apparatus 3 (208) that processed the divided job data 380 are divided job data 380. It is possible to determine whether the process can be performed.

また、本実施形態においては、画像処理制御部240は、分割ジョブデータの再割り振りを行う際に、オブジェクトデータが、全てキャッシュされているかは正確に判別することができない。しかし、上記説明した通り、画像処理部260〜280のキャッシュメモリの容量に則して記録テーブル250のオブジェクトデータの情報の最大記録数を設定することができる。これにより、画像処理部260〜280が、再度割り当てられた分割ジョブデータを処理する際に、キャッシュメモリに保存されているオブジェクトデータを再利用する確率を高めることができる。   In the present embodiment, the image processing control unit 240 cannot accurately determine whether all object data is cached when reallocating divided job data. However, as described above, the maximum number of records of object data information in the recording table 250 can be set in accordance with the cache memory capacity of the image processing units 260 to 280. Accordingly, when the image processing units 260 to 280 process the reassigned divided job data, the probability of reusing the object data stored in the cache memory can be increased.

以上説明した通り、本実施形態における印刷装置は、複数の画像処理部のうち、一部の画像処理部の処理が継続できなくなった場合でも、オブジェクトデータの情報と割り振り先の画像処理部との対応関係に基づいて、分割ジョブデータを再度割り振る。このため、他の画像処理部へ処理を引き継ぐための通信経路や、キャッシュデータを共有するための共有キャッシュメモリなどの複雑な機器構成を必要とすることなく、処理の継続と処理の効率化を図ることができる。   As described above, the printing apparatus according to the present embodiment is configured so that the object data information and the image processing unit to which the image data is allocated can be used even when the processing of some of the image processing units cannot be continued. Based on the correspondence relationship, the divided job data is reassigned. For this reason, without requiring a complicated device configuration such as a communication path for taking over processing to another image processing unit or a shared cache memory for sharing cache data, the processing can be continued and the processing efficiency can be improved. Can be planned.

[実施形態2]
実施形態1における印刷装置200では、分割ジョブデータに含まれるオブジェクトデータの情報と、割り振り先の画像処理部との記録に基づいて、エラーとなった分割ジョブデータの再割り振り先を決定していた。本実施形態では、上記実施形態の特徴に加えて、オブジェクトデータの使用状況を画像処理部ごとに評価し、当該評価に基づいて、エラーとなった分割ジョブデータの再割り振り先を決定する。かかる構成により、各キャッシュメモリに保存されるオブジェクトデータの再利用性を向上させることができる。
[Embodiment 2]
In the printing apparatus 200 according to the first exemplary embodiment, the reassignment destination of the divided job data in which the error occurred is determined based on the information of the object data included in the divided job data and the recording of the image processing unit that is the assignment destination. . In the present embodiment, in addition to the features of the above-described embodiment, the usage status of the object data is evaluated for each image processing unit, and based on the evaluation, the reassignment destination of the divided job data in error is determined. With this configuration, it is possible to improve reusability of object data stored in each cache memory.

図9は、本実施形態における記録テーブル250に記録される内容を示す図である。本実施形態におけるオブジェクトデータの情報は、状態フィールド251、データサイズフィールド252、および参照回数フィールド253に記録されるそれぞれの情報が相当する。   FIG. 9 is a diagram showing the contents recorded in the recording table 250 in the present embodiment. The object data information in this embodiment corresponds to information recorded in the status field 251, the data size field 252, and the reference count field 253.

状態フィールド251には、実施形態1と同様に、分割ジョブデータの状態情報(「処理中」「処理済」「エラー」など)が記録される。   Similarly to the first embodiment, the status information of the divided job data (such as “processing”, “processed”, and “error”) is recorded in the status field 251.

データサイズフィールド252には、オブジェクトデータのデータサイズ情報が記録される。なお、図9における記録テーブル250では、各オブジェクトデータのデータサイズとして、バイト単位でのデータサイズが記録される。   Data size information of object data is recorded in the data size field 252. In the recording table 250 in FIG. 9, the data size in bytes is recorded as the data size of each object data.

参照回数フィールド253には、当該オブジェクトデータが各画像処理部に割り振られた回数が記録される。管理部241は、分割ジョブデータの割り振りを実施する都度(S203)、分割ジョブデータに含まれるオブジェクトデータが対応する画像処理部に割り振られた回数を参照回数フィールドに記録する。   The reference count field 253 records the number of times the object data is allocated to each image processing unit. Each time the divided job data is allocated (S203), the management unit 241 records the number of times the object data included in the divided job data is allocated to the corresponding image processing unit in the reference number field.

図10は、本実施形態において、割振部244が分割ジョブデータの再度の割り振り先を決定する処理内容(S211)を示すフローチャートである。以下、割振部244が分割ジョブデータの再度の割り振り先を決定する処理内容について、図10を参照して説明する。   FIG. 10 is a flowchart showing the processing contents (S211) in which the allocator 244 determines the re-allocation destination of the divided job data in this embodiment. In the following, processing contents in which the allocation unit 244 determines the re-allocation destination of the divided job data will be described with reference to FIG.

図10に示されるフローチャートにおいて、S401〜S403、およびS405の処理は、図7に示されるフローチャートにおける、S301〜S303、およびS305の処理と同一のため、説明を割愛する。   In the flowchart shown in FIG. 10, the processes of S401 to S403 and S405 are the same as the processes of S301 to S303 and S305 in the flowchart shown in FIG.

S404において、評価部246は、オブジェクトデータの使用状況を、候補となる画像処理部260〜280ごとに評価する。本実施形態においては、オブジェクトデータの情報は、状態フィールド251、データサイズフィールド252、参照回数フィールド253それぞれに記録される情報のように、項目ごとに数値化された情報を含む。評価部246は、項目ごとに数値化された情報を演算することにより、オブジェクトデータの使用状況を、画像処理部260〜280ごとに評価する。   In step S404, the evaluation unit 246 evaluates the usage status of the object data for each candidate image processing unit 260 to 280. In the present embodiment, the object data information includes information quantified for each item, such as information recorded in the status field 251, the data size field 252, and the reference count field 253, respectively. The evaluation unit 246 evaluates the usage status of the object data for each of the image processing units 260 to 280 by calculating the digitized information for each item.

評価部246は、画像処理部ごとにエラーとなったオブジェクトデータのポイントを算出する。評価部246は、合計ポイントが最も多い画像処理部を、エラーとなった分割ジョブデータに含まれるものと同じ種類のオブジェクトデータを処理するのに、最も適した画像処理部と評価する。次いで、割振部244は、評価部246の評価に基づいて、分割ジョブデータの再度の割り振り先となる画像処理部を選択する。   The evaluation unit 246 calculates a point of object data in which an error occurs for each image processing unit. The evaluation unit 246 evaluates the image processing unit having the largest total points as the most suitable image processing unit for processing the same type of object data as included in the divided job data in error. Next, the allocating unit 244 selects an image processing unit as a re-allocation destination of the divided job data based on the evaluation of the evaluation unit 246.

本実施形態においては、オブジェクトデータの情報から算出されたポイントが多いほど、対応する画像処理部が、キャッシュされたオブジェクトデータを再利用できる可能性が高くなるようにポイントが付与されている。そのため、評価部246は、分割ジョブデータに含まれるものと同じ種類のオブジェクトデータに対応するキャッシュデータを再利用できる可能性が高い画像処理部として、高く評価する。   In the present embodiment, points are given so that the more points calculated from the object data information, the higher the possibility that the corresponding image processing unit can reuse the cached object data. Therefore, the evaluation unit 246 highly evaluates as an image processing unit that is highly likely to be able to reuse cache data corresponding to the same type of object data included in the divided job data.

状態フィールド251の付与ポイントについては、「処理中」に2ポイント、「処理済」に1ポイント、「エラー」に0ポイントがそれぞれ付与される。これは、分割データが処理中の状態であれば、当該分割データに含まれるオブジェクトデータがキャッシュメモリに保存されている可能性が高いため、状態フィールド251の中で最も多いポイントが付与される。一方、分割ジョブデータの状態がエラーであった場合、対応するオブジェクトデータの正当性を保証できないため、0ポイントが付与される。   With respect to the granted points in the status field 251, 2 points are assigned to “processing”, 1 point is assigned to “processed”, and 0 point is assigned to “error”. This is because, if the divided data is being processed, there is a high possibility that the object data included in the divided data is stored in the cache memory. Therefore, the most points in the state field 251 are given. On the other hand, if the status of the divided job data is an error, the correctness of the corresponding object data cannot be guaranteed, so 0 points are given.

データサイズフィールド252の付与ポイントについては、オブジェクトデータのデータサイズが大きいものについては優先して中間データをキャッシュ保存させるため、データサイズ値がそのままポイントとして付与される。   With respect to the given points in the data size field 252, the data size value is given as a point as it is because the intermediate data is preferentially saved in the cache when the data size of the object data is large.

参照回数フィールド253の付与ポイントについては、オブジェクトデータの参照回数が多いものについては繰り返し処理が行われるため、参照回数がそのままポイントとして付与される。   With respect to the given points in the reference count field 253, since the repetitive processing is performed for those having a large reference count of object data, the reference count is given as a point as it is.

本実施形態では、評価部246は、状態フィールド251、データサイズフィールド252、参照回数フィールド253それぞれで付与されたポイントを掛け合わせ、算出された総ポイントに基づいて、画像処理部を評価する。   In the present embodiment, the evaluation unit 246 multiplies the points assigned in the state field 251, the data size field 252, and the reference count field 253, and evaluates the image processing unit based on the calculated total points.

オブジェクトデータの総ポイント数=(状態のポイント)×(データサイズのポイント)×(参照回数のポイント)
以下、実施形態1と同様に、図8を参照して制御部210のリトライ処理内容を説明する。まず、割振部244は、記録テーブル250の対応関係を参照し、前回分割ジョブデータを処理した画像処理部とは異なる他の画像処理部に対して、当該分割ジョブデータを再度割り振る(S211)。このとき、割振部244は、分割ジョブデータ380に含まれるオブジェクトデータの情報を取得する(S401)。
Total points of object data = (state points) x (data size points) x (reference count points)
Hereinafter, as in the first embodiment, the retry processing contents of the control unit 210 will be described with reference to FIG. First, the allocation unit 244 refers to the correspondence relationship in the recording table 250 and reallocates the divided job data to another image processing unit different from the image processing unit that processed the previous divided job data (S211). At this time, the allocation unit 244 acquires information on object data included in the divided job data 380 (S401).

図8の例において、画像処理部3(280)が分割ジョブデータ380の処理を行った処理内容は、「画像処理部3:JobA:Page6」というデータ形式で記録テーブル250に記録されている。さらに、記録テーブル250には、「画像処理部3:JobA:Page6」と「ObjB」との対応関係と、「画像処理部3:JobA:Page6」と「ObjB」との対応関係とがそれぞれ記録されている。   In the example of FIG. 8, the processing content that the image processing unit 3 (280) has processed the divided job data 380 is recorded in the recording table 250 in a data format of “image processing unit 3: JobA: Page6”. Furthermore, in the recording table 250, the correspondence between “image processing unit 3: JobA: Page6” and “ObjB” and the correspondence between “image processing unit 3: JobA: Page6” and “ObjB” are recorded. Has been.

次いで、割振部244は、記録テーブル250に記録されているオブジェクトデータの情報から、当該オブジェクトを使用している画像処理部を検索する(S402)。   Next, the allocation unit 244 searches for the image processing unit using the object from the information of the object data recorded in the recording table 250 (S402).

図8の例において、「ObjB」を使用している画像処理部は「画像処理部1:JobA:Page4」と、「画像処理部2:JobA:Page2」であることが記録テーブル250に記録されている。同様に、「ObjC」を使用している画像処理部は「画像処理部1:JobA:Page1」であることが記録テーブル250に記録されている。すなわち、割振部244は、オブジェクトデータ312が、分割ジョブデータ340と360とに含まれており、それぞれ画像処理部2(270)と、画像処理部1(260)とによって使用されていることを検索結果として特定することができる。同様に、割振部244は、オブジェクトデータ313が、分割ジョブデータ330に含まれており、画像処理部1(260)によって使用されていることを検索結果として特定することができる。   In the example of FIG. 8, the image processing units using “ObjB” are recorded in the recording table 250 as “image processing unit 1: JobA: Page4” and “image processing unit 2: JobA: Page2”. ing. Similarly, an image processing unit using “ObjC” is recorded in the recording table 250 as “image processing unit 1: JobA: Page1”. That is, the allocation unit 244 indicates that the object data 312 is included in the divided job data 340 and 360 and is used by the image processing unit 2 (270) and the image processing unit 1 (260), respectively. It can be specified as a search result. Similarly, the allocation unit 244 can specify that the object data 313 is included in the divided job data 330 and is used by the image processing unit 1 (260) as a search result.

次いで、評価部246は、特定された画像処理部1(260)と、画像処理部2(270)とについて、オブジェクトデータの使用状況を、候補となる画像処理部ごとに評価する(S404)。   Next, the evaluation unit 246 evaluates the usage status of the object data for each candidate image processing unit for the identified image processing unit 1 (260) and the image processing unit 2 (270) (S404).

図9に示される通り、画像処理部1(260)に対応するオブジェクトデータ312の情報は、「状態:処理済」「データサイズ:6542」「参照回数:3」である。そのため、オブジェクトデータ312の合計ポイント数は、(処理済:1)×(サイズ:6542)×(参照回数:3)=19626である。   As shown in FIG. 9, the information of the object data 312 corresponding to the image processing unit 1 (260) is “state: processed”, “data size: 6542”, and “reference count: 3”. Therefore, the total number of points of the object data 312 is (processed: 1) × (size: 6542) × (reference count: 3) = 19626.

同様に、画像処理部1(260)に対応するオブジェクトデータ313の情報は、「状態:処理中」「データサイズ:532」「参照回数:2」である。そのため、当該オブジェクトの合計ポイント数は、(処理中:2)×(サイズ:532)×(参照回数:2)=2128である。   Similarly, the information of the object data 313 corresponding to the image processing unit 1 (260) is “state: being processed”, “data size: 532”, and “reference count: 2”. Therefore, the total number of points of the object is (processing: 2) × (size: 532) × (reference count: 2) = 2128.

同様に、画像処理部2(270)に対応するオブジェクトデータ312の情報は、「状態:処理中」「データサイズ:6542」「参照回数:3」である。そのため、当該オブジェクトの合計ポイント数は、(処理中:2)×(サイズ:6542)×(参照回数:3)=39252である。   Similarly, the information of the object data 312 corresponding to the image processing unit 2 (270) is “state: being processed”, “data size: 6542”, and “reference count: 3”. Therefore, the total number of points of the object is (processing: 2) × (size: 6542) × (number of references: 3) = 39252.

以上より、画像処理部1(260)の総ポイント数は21754であり、画像処理部2(270)の総ポイント数は29252となる。評価部246は、分割ジョブデータ380に含まれるものと同じ種類のオブジェクトを使用して処理するのに、画像処理部2(270)が最も適した画像処理部であると評価する。   From the above, the total number of points of the image processing unit 1 (260) is 21754, and the total number of points of the image processing unit 2 (270) is 29252. The evaluation unit 246 evaluates that the image processing unit 2 (270) is the most suitable image processing unit to process using the same type of objects as those included in the divided job data 380.

割振部244は、評価部246の評価に基づいて、画像処理部2(270)を選択する(S404)。次いで、割振部244は、画像処理部2(270)を、分割ジョブデータ380の再割り振り先と決定する(S405)。   The allocation unit 244 selects the image processing unit 2 (270) based on the evaluation of the evaluation unit 246 (S404). Next, the allocation unit 244 determines the image processing unit 2 (270) as a reallocation destination of the divided job data 380 (S405).

本実施形態においては、キャッシュ部262〜282は、記録テーブル250のオブジェクトデータの情報に基づいて、各オブジェクトデータを保存するか否かの判断を行うことができる。この場合、割振部244は、当該オブジェクトデータの情報を含む分割ジョブデータ330〜380を画像処理部260〜280に割り振ることにより、キャッシュ部262〜282が記録テーブル250のオブジェクトデータの情報を参照することができる。かかる構成により、キャッシュ部262〜282は、オブジェクトデータのデータサイズが大きいもの、または参照回数が多いものを優先的にキャッシュ保存することが可能となる。そして、分割ジョブデータのリトライ処理の際に、キャッシュされたオブジェクトデータを再利用する確率を向上させることができる。   In the present embodiment, the cache units 262 to 282 can determine whether to save each object data based on the object data information of the recording table 250. In this case, the allocation unit 244 allocates the divided job data 330 to 380 including the object data information to the image processing units 260 to 280, so that the cache units 262 to 282 refer to the object data information of the recording table 250. be able to. With this configuration, the cache units 262 to 282 can preferentially save the object data having a large data size or a large number of references. In the retry processing of the divided job data, the probability of reusing the cached object data can be improved.

図11は、画像処理部260〜280が、オブジェクトデータの情報に基づいて中間データのキャッシュ保存を行うか否かの判定処理内容を示すフローチャートである。以下、図11のフローチャートを参照して、画像処理部260〜280の判定処理内容について説明する。   FIG. 11 is a flowchart showing the contents of determination processing for determining whether or not the image processing units 260 to 280 perform cache storage of intermediate data based on object data information. Hereinafter, the determination processing contents of the image processing units 260 to 280 will be described with reference to the flowchart of FIG.

S501において、画像処理部260〜280は、分割ジョブデータに含まれるオブジェクトデータと、オブジェクトデータの情報とを取得する。本実施形態におけるオブジェクトデータの情報は、参照回数などが相当する。   In step S501, the image processing units 260 to 280 acquire object data included in the divided job data and object data information. The object data information in this embodiment corresponds to the number of references.

S502において、画像処理部260〜280は、S501で取得したオブジェクトデータに対応するキャッシュデータが存在するかを判定する。キャッシュデータが存在する場合(S502:Yes)、画像処理部260〜280は、キャッシュ部262〜282の対応するキャッシュメモリに保存されているキャッシュデータを用いて処理を行い、その後本フローチャートの処理を終了する。一方、キャッシュデータが存在しない場合(S502:No)、S503において、当該オブジェクトデータの参照回数が閾値以上であるかを判定する。   In step S502, the image processing units 260 to 280 determine whether there is cache data corresponding to the object data acquired in step S501. If cache data exists (S502: Yes), the image processing units 260 to 280 perform processing using the cache data stored in the corresponding cache memory of the cache units 262 to 282, and then perform the processing of this flowchart. finish. On the other hand, if there is no cache data (S502: No), in S503, it is determined whether the number of references to the object data is equal to or greater than a threshold value.

参照回数が少ない場合(S503:No)、オブジェクトデータが再び参照されて処理される可能性が低いため、記憶領域が限られるキャッシュメモリを専有しないように、当該オブジェクトデータに係るキャッシュ保存を行わないようにする(S507)。参照回数が閾値以上であると判定された場合(S503:Yes)、S504において当該オブジェクトデータのデータサイズが閾値以上であるかを判定する。オブジェクトデータのデータサイズが小さければ、キャッシュメモリを用いなくても、画像処理部260〜280の処理速度に影響を及ぼさないため、キャッシュ部262〜282は、データサイズの大きいオブジェクトデータに係るキャッシュ保存を優先する。   When the number of references is small (S503: No), the object data is unlikely to be referred to and processed again, so that the cache storage related to the object data is not performed so that the cache memory having a limited storage area is not occupied. (S507). If it is determined that the reference count is equal to or greater than the threshold (S503: Yes), it is determined in S504 whether the data size of the object data is equal to or greater than the threshold. If the data size of the object data is small, the cache units 262 to 282 do not affect the processing speed of the image processing units 260 to 280 without using a cache memory. Priority.

データサイズが閾値以上であると判定された場合(S504:Yes)、S506において、RIP処理部261〜281は分割ジョブデータを処理し、その後キャッシュ部262〜282は、オブジェクトデータをキャッシュメモリに保存する。一方、データサイズが閾値以下であると判定された場合(S504:No)、S507において、RIP処理部261〜281は分割ジョブデータを処理した後、キャッシュ部262〜282は、オブジェクトデータを破棄して本フローチャートの処理を終了する。   If it is determined that the data size is equal to or larger than the threshold (S504: Yes), in S506, the RIP processing units 261 to 281 process the divided job data, and then the cache units 262 to 282 store the object data in the cache memory. To do. On the other hand, if it is determined that the data size is equal to or smaller than the threshold (S504: No), in S507, the RIP processing units 261 to 281 process the divided job data, and then the cache units 262 to 282 discard the object data. Then, the process of this flowchart ends.

以上説明した通り、本実施形態における印刷装置においては、実施形態1の特徴に加えて、以下の効果を奏する。本実施形態における印刷装置は、複数の画像処理部のうち、一部の画像処理部の処理が継続できなくなった場合でも、いずれの画像処理部が処理を行うのに適しているかの評価に基づいて、分割ジョブデータを再度割り振る。このため、エラーとなった分割ジョブデータに対応するキャッシュデータを再利用できる可能性が高いものを、分割ジョブデータの再割り振り先に選択することができ、処理の継続と処理の効率化を図ることができる。   As described above, the printing apparatus according to the present embodiment has the following effects in addition to the features of the first embodiment. The printing apparatus according to the present embodiment is based on an evaluation of which image processing unit is suitable for performing processing even when processing of some of the image processing units cannot be continued among the plurality of image processing units. Allocate the split job data again. For this reason, the cache data corresponding to the divided job data in error can be reused, and the divided job data can be re-allocated, so that the processing can be continued and the processing efficiency can be improved. be able to.

[その他の実施例]
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
[Other Examples]
The present invention supplies a program that realizes one or more functions of the above-described embodiments to a system or apparatus via a network or a storage medium, and one or more processors in a computer of the system or apparatus read and execute the program This process can be realized. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.

Claims (14)

複数の画像処理手段による並列処理を制御する制御装置において、
入力されたジョブデータをサブデータに分割する分割手段と、
サブデータを前記複数の画像処理手段に割り振る割振手段と、
サブデータに含まれるオブジェクトデータの情報と、割り振り先の画像処理手段とを対応付けて記録する管理手段と、
サブデータが正常に処理されたかを判定する判定手段とを備え、
前記サブデータが正常に処理されなかった場合、前記割振手段は、前記記録に基づいて、前記サブデータを処理できなかった画像処理手段とは異なる他の画像処理手段に対して、前記サブデータを再度割り振る
ことを特徴とする制御装置。
In a control device that controls parallel processing by a plurality of image processing means,
A dividing means for dividing the input job data into sub-data;
Allocating means for allocating sub-data to the plurality of image processing means;
Management means for recording the object data information included in the sub data in association with the image processing means of the allocation destination;
Determination means for determining whether the sub-data has been processed normally,
If the sub-data is not processed normally, the allocating unit sends the sub-data to another image processing unit different from the image processing unit that could not process the sub-data based on the recording. A control device characterized by reallocation.
前記サブデータが正常に処理されなかった場合、前記割振手段は、前記サブデータに含まれるものと同じ種類のオブジェクトデータを最も多く使用している画像処理手段に対して、前記サブデータを再度割り振る
ことを特徴とする請求項1に記載の制御装置。
If the sub-data is not processed normally, the allocating unit reallocates the sub-data to the image processing unit that uses the most object data of the same type as that included in the sub-data. The control device according to claim 1.
前記複数の画像処理手段によるオブジェクトデータの使用状況を、画像処理手段ごとに評価する評価手段をさらに備え、
前記サブデータが正常に処理されなかった場合、前記割振手段は、前記評価に基づいて、前記サブデータを処理できなかった画像処理手段とは異なる他の画像処理手段に対して、前記サブデータを再度割り振る
ことを特徴とする請求項1または2に記載の制御装置。
An evaluation unit that evaluates the usage status of the object data by the plurality of image processing units for each image processing unit;
If the sub-data is not processed normally, the allocating means sends the sub-data to another image processing means different from the image processing means that could not process the sub-data based on the evaluation. The control device according to claim 1, wherein the control device is reassigned.
前記評価手段は、前記サブデータに含まれるものと同じ種類のオブジェクトデータを再利用できる可能性が高い画像処理手段を、高く評価する
ことを特徴とする請求項3に記載の制御装置。
The control device according to claim 3, wherein the evaluation unit highly evaluates an image processing unit that has a high possibility of reusing object data of the same type as that included in the sub-data.
前記オブジェクトデータの情報は、項目ごとに数値化された情報を含み、
前記評価手段は、項目ごとに数値化された前記情報を演算することにより、前記複数の画像処理手段による前記オブジェクトデータの使用状況を、画像処理手段ごとに評価する
ことを特徴とする請求項3または4に記載の制御装置。
The information of the object data includes information quantified for each item,
The said evaluation means evaluates the usage condition of the said object data by these image processing means for every image processing means by calculating the said information digitized for every item. Or the control apparatus of 4.
前記複数の画像処理手段をさらに備えることを特徴とする請求項1から5のいずれか1項に記載の制御装置。   The control apparatus according to claim 1, further comprising the plurality of image processing means. 前記画像処理手段は、
前記サブデータからビットマップデータを生成するRIP処理部と、
前記サブデータに含まれる前記オブジェクトデータをキャッシュ保存するキャッシュ手段と、
生成された前記ビットマップデータを出力する出力手段とを備える
ことを特徴とする請求項6に記載の制御装置。
The image processing means includes
A RIP processing unit for generating bitmap data from the sub-data;
Cache means for caching and storing the object data included in the sub-data;
The control device according to claim 6, further comprising an output unit that outputs the generated bitmap data.
前記出力手段は、前記サブデータの処理結果を含むレポートデータをさらに出力する
ことを特徴とする請求項7に記載の制御装置。
The control device according to claim 7, wherein the output unit further outputs report data including a processing result of the sub data.
前記サブデータの処理がエラーの場合、前記出力手段は、前記エラーの種類を特定する情報を含む前記レポートデータを出力する
ことを特徴とする請求項8に記載の制御装置。
9. The control device according to claim 8, wherein, when the processing of the sub data is an error, the output unit outputs the report data including information for specifying the type of error.
前記判定手段は、前記レポートデータから、前記サブデータを処理できなかった画像処理手段とは異なる他の画像処理手段が、前記サブデータの処理が可能なエラーであるかを判定し、
前記割振手段は、前記サブデータの処理が可能なエラーであると判定された場合にのみ、前記サブデータを再度割り振る
ことを特徴とする請求項9に記載の制御装置。
The determination means determines, from the report data, whether or not the image processing means different from the image processing means that could not process the sub data is an error that can process the sub data,
The control device according to claim 9, wherein the allocation unit reallocates the sub data only when it is determined that the error is a processable sub data.
前記判定手段は、前記レポートデータから、
生成されたビットマップデータの異常であると判定した場合、前記サブデータを処理できなかった画像処理手段とは異なる他の画像処理手段が、前記サブデータの処理が可能であると判定し、
前記複数の画像処理手段を構成するハードウェアの異常であると判定した場合、前記サブデータを処理できなかった画像処理手段とは異なる他の画像処理手段が、前記サブデータの処理が不可能であると判定する
ことを特徴とする請求項10に記載の制御装置。
The determination means is based on the report data,
When it is determined that the generated bitmap data is abnormal, it is determined that another image processing unit different from the image processing unit that has not been able to process the sub data is capable of processing the sub data,
If it is determined that the hardware constituting the plurality of image processing means is abnormal, another image processing means different from the image processing means that could not process the sub data cannot process the sub data. The control device according to claim 10, wherein the control device is determined to be present.
前記画像処理手段が処理をしたデータに基づいて、印刷をする印刷部をさらに備えることを特徴とする請求項1〜10のいずれか1項に記載の画像形成装置。   The image forming apparatus according to claim 1, further comprising a printing unit that performs printing based on data processed by the image processing unit. 複数の画像処理手段による並列処理を制御する制御方法において、
入力されたジョブデータをサブデータに分割する分割ステップと、
サブデータを前記複数の画像処理手段に割り振る割振ステップと、
サブデータに含まれるオブジェクトデータの情報と、割り振り先の画像処理手段とを対応付けて記録する管理ステップと、
サブデータが正常に処理されたかを判定する判定ステップとを備え、
前記サブデータが正常に処理されなかった場合、前記割振ステップは、前記記録に基づいて、前記サブデータを処理できなかった画像処理手段とは異なる他の画像処理手段に対して、前記サブデータを再度割り振る
ことを特徴とする制御方法。
In a control method for controlling parallel processing by a plurality of image processing means,
A division step for dividing the input job data into sub-data;
Allocating sub-data to the plurality of image processing means;
A management step for associating and recording information of object data included in the sub-data and an image processing means of an allocation destination;
A determination step for determining whether the sub-data has been processed normally,
If the sub-data is not processed normally, the allocating step outputs the sub-data to another image processing unit different from the image processing unit that could not process the sub-data based on the recording. A control method characterized by reallocation.
コンピュータを、請求項1乃至請求項11のいずれか1項に記載の制御装置の各手段として機能させるためのプログラム。   The program for functioning a computer as each means of the control apparatus of any one of Claim 1 thru | or 11.
JP2015034044A 2015-02-24 2015-02-24 Control device, control method and program Pending JP2016155280A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015034044A JP2016155280A (en) 2015-02-24 2015-02-24 Control device, control method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015034044A JP2016155280A (en) 2015-02-24 2015-02-24 Control device, control method and program

Publications (1)

Publication Number Publication Date
JP2016155280A true JP2016155280A (en) 2016-09-01

Family

ID=56824676

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015034044A Pending JP2016155280A (en) 2015-02-24 2015-02-24 Control device, control method and program

Country Status (1)

Country Link
JP (1) JP2016155280A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018041274A (en) * 2016-09-07 2018-03-15 キヤノン株式会社 Information processing apparatus, control method thereof, printing system, and program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018041274A (en) * 2016-09-07 2018-03-15 キヤノン株式会社 Information processing apparatus, control method thereof, printing system, and program

Similar Documents

Publication Publication Date Title
JP4417153B2 (en) Parallel printing system
JP5663941B2 (en) Printed document conversion apparatus and program
US8782371B2 (en) Systems and methods for memory management for rasterization
JP5238526B2 (en) System and method for print resource management
JP5333763B2 (en) Image processing apparatus, image processing system, and image processing program
JP5594470B2 (en) Printing control apparatus, printing system, and program
US8625133B2 (en) Print data processing apparatus, print data processing method, and storage medium
EP2713263B1 (en) Conversion time prediction apparatus, recording medium, and conversion time prediction method
CN103034618A (en) Image processing device
US8760707B2 (en) Print data processing apparatus, cache processing method, and storage medium
US8928914B2 (en) Image processing apparatus, information processing method, and storage medium
US8334989B2 (en) Printing device and method for parallel processing of data
CN103927139B (en) Printing data processing system and print data processing method
JP4978556B2 (en) Image processing apparatus, printing system, and program
JP5471681B2 (en) Image processing apparatus and image processing program
US9250842B2 (en) Image forming apparatus processing a plurality of pages in parallel
JP2003044236A (en) Image processing system and control method for image processing system
JP2016155280A (en) Control device, control method and program
JP2020142507A (en) Page complexity analysis for print job
US11062185B2 (en) Converting apparatus, printing system, and non-transitory computer readable medium
US20200089454A1 (en) Printing system, printing method and computer-readable recording medium
US10241732B2 (en) Processing print jobs with a single sheet job model
JP2015168132A (en) Image forming system and print data drawing expansion method for image forming system
JP6539022B2 (en) PRINTING APPARATUS, PROCESSING METHOD, AND PROGRAM
JP6078954B2 (en) Image processing device