JP4522216B2 - Image processing device - Google Patents

Image processing device Download PDF

Info

Publication number
JP4522216B2
JP4522216B2 JP2004297861A JP2004297861A JP4522216B2 JP 4522216 B2 JP4522216 B2 JP 4522216B2 JP 2004297861 A JP2004297861 A JP 2004297861A JP 2004297861 A JP2004297861 A JP 2004297861A JP 4522216 B2 JP4522216 B2 JP 4522216B2
Authority
JP
Japan
Prior art keywords
rendering
processing
module
clock
extended
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2004297861A
Other languages
Japanese (ja)
Other versions
JP2006113672A (en
JP2006113672A5 (en
Inventor
栄治 相澤
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 JP2004297861A priority Critical patent/JP4522216B2/en
Publication of JP2006113672A publication Critical patent/JP2006113672A/en
Publication of JP2006113672A5 publication Critical patent/JP2006113672A5/ja
Application granted granted Critical
Publication of JP4522216B2 publication Critical patent/JP4522216B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Image Processing (AREA)
  • Digital Computer Display Output (AREA)
  • Image Generation (AREA)

Description

本発明は、ページ記述言語データを入力し、イメージデータを生成して出力する画像処理装置に関するものである。 The present invention receives the page description language data, and relates to an image processing equipment for generating and outputting image data.

ページ記述言語で記述されたデータを入力し、それをラスタ展開して画像を生成する画像処理装置が知られており、それによれば、入力したページ記述言語のセマンティクス(意味解析)を行い、その後レンダリング処理を行うという2つの手順を実施している。このレンダリング処理を実現する代表的なアルゴリズムとして、ペインタアルゴリズム、スキャンラインアルゴリズム等がある。従来の画像処理装置では、ページ記述言語で記述された入力データのセマンティクス処理後に、そのアルゴリズムを実装したハードウェアデバイス或はソフトウェアデバイスで画像処理を行っていた。これらアルゴリズムを実行するハードウェアの構成上の大きな違いは、必要とするメモリ容量の大小であり、スキャンラインアルゴリズムは、これらアルゴリズム中で、使用するメモリ容量が少ないレンダリングアルゴリズムである。   An image processing apparatus that inputs data described in a page description language and rasterizes it to generate an image is known. According to the image processing apparatus, semantics (semantic analysis) of the input page description language is performed, and then Two procedures of rendering processing are performed. Typical algorithms for realizing this rendering process include a painter algorithm and a scan line algorithm. In a conventional image processing apparatus, after semantic processing of input data described in a page description language, image processing is performed by a hardware device or software device that implements the algorithm. The major difference in the hardware configuration for executing these algorithms is the required memory capacity, and the scan line algorithm is a rendering algorithm that uses a small memory capacity among these algorithms.

このようなアルゴリズムを実行するレンダリング装置では、各オブジェクトのエッジをトラッキングし、X座標のエッジのソートを行うエッジ処理、各オブジェクトの表示位置レベルを処理するレベル処理、色生成処理、イメージ処理、色合成処理等の複数の処理モジュールを備えるベーシックレンダリング処理部と呼ばれる処理部を備えており、このベーシックレンダリング処理部は、複数のモジュールで構成されており、各モジュールはパイプライン接続されて画像処理に必要な処理を逐次行っている。   In a rendering device that executes such an algorithm, an edge process that tracks the edge of each object and sorts the edges of the X coordinate, a level process that processes the display position level of each object, a color generation process, an image process, a color A processing unit called a basic rendering processing unit having a plurality of processing modules such as compositing processing is provided, and this basic rendering processing unit is composed of a plurality of modules, and each module is pipeline-connected for image processing. Necessary processing is performed sequentially.

各処理モジュールの処理方法及び制御方法に関して、特許文献1には、高速ラスタ形式レンダリングのためのグラフィックオブジェクト処理方法及び装置が開示されている。これによれば、ベーシックレンダリング処理部では、ページ記述言語を解析した結果に基づいて発行された命令に応じて、パイプライン処理モジュール内での各種パラメータ設定やレンダリング処理を行う。また、これら処理モジュールのいくつかを担当する複数の拡張ソフトウェアモジュールが設けられており、各拡張ソフトウェアモジュールは、その内部にCPUを備えて、ソフトウェアによりレンダリングを行う機能を提供している。
特開2000−149035公報
Regarding a processing method and a control method of each processing module, Patent Document 1 discloses a graphic object processing method and apparatus for high-speed raster format rendering. According to this, the basic rendering processing unit performs various parameter settings and rendering processing in the pipeline processing module in accordance with an instruction issued based on the result of analyzing the page description language. In addition, a plurality of extended software modules responsible for some of these processing modules are provided, and each extended software module includes a CPU therein and provides a function of rendering with software.
JP 2000-149035 A

しかし上述した従来の画像処理装置では、使用する機能に応じて使用する処理モジュールの動作を停止させたり、実行させたりするようには構成されていないため、使用される機能に応じた低消費電力化を実現することができなかった。ページ記述言語には、入力データに応じて、使用される機能と使用されない機能とが存在する。例えば、グラフィックのみの入力データに対して、文字処理用のモジュールを動作状態にしておくのは無駄である。特に上述の拡張ソフトウェアモジュールのCPUは、その内部にキャッシュやRAM等を備えており電力を大量に消費する。しかし、従来の画像処理装置では、入力データの種類を特定して、その入力データの処理に必要な拡張ソフトウェアモジュールだけを動作させるといった機能がないため無駄に電力を消費するといった問題があった。   However, the above-described conventional image processing apparatus is not configured to stop or execute the operation of the processing module to be used according to the function to be used. Therefore, low power consumption according to the function to be used. Could not be realized. In the page description language, there are functions that are used and functions that are not used depending on input data. For example, it is useless to leave a character processing module in an operating state for input data only for graphics. In particular, the CPU of the above-described extended software module includes a cache, a RAM, and the like therein, and consumes a large amount of power. However, the conventional image processing apparatus has a problem that power is wasted because there is no function of specifying the type of input data and operating only the extended software module necessary for processing the input data.

本発明は上記問題点に鑑みてなされたもので、全体的な消費電力を抑えるようにした画像処理装置を提供することにある。 The present invention has been made in view of the above problems, it is to provide an image processing equipment which is to suppress the entire electric power consumption.

本発明の一態様に係る画像処理装置は以下のような構成を備える。即ち、
ページ記述言語データを入力し、イメージデータを生成して出力する画像処理装置であって、
入力されたページ記述言語データを解析する解析手段と、
前記解析手段による解析に基づいて、前記ページ記述言語データをレンダリングするレンダリング手段と、
前記レンダリング手段によるレンダリング機能の一部を実行し、それぞれがCPUを具備する複数の拡張ソフトウェアモジュールと、
前記ページ記述言語データに拡張ソフトウェアモジュールで処理すべき命令が含まれているか否かを判断する判断手段と、
前記判断手段による判断結果に基づいて、前記複数の拡張ソフトウェアモジュールの内の対応する拡張ソフトウェアモジュールのCPUにクロック信号を供給し、CPUにクロックを供給したことを示す信号を前記解析手段に送信する制御手段と、
前記レンダリング手段でレンダリングされた画像データを入力して出力装置に出力するとともに、前記レンダリング手段によるレンダリングが終了したことを示す信号を前記制御手段に供給する出力処理手段とを有し、
前記解析手段は、前記制御手段から前記CPUにクロックを供給したことを示す信号を受信すると、前記レンダリング手段によるレンダリングを開始させ、
前記制御手段は、前記レンダリングが終了したことを示す信号を受信すると、前記CPUへのクロックの供給を停止することを特徴とする。
An image processing apparatus according to an aspect of the present invention has the following configuration. That is,
An image processing apparatus for inputting page description language data, generating and outputting image data,
An analysis means for analyzing the input page description language data;
Rendering means for rendering the page description language data based on the analysis by the analysis means;
A plurality of extension software modules that execute a part of the rendering function by the rendering means, each of which includes a CPU;
Determining means for determining whether or not the page description language data includes an instruction to be processed by an extended software module;
Based on the determination result by the determining means, a clock signal is supplied to the CPU of the corresponding extended software module among the plurality of extended software modules, and a signal indicating that the clock is supplied to the CPU is transmitted to the analyzing means . Control means;
Output processing means for inputting the image data rendered by the rendering means and outputting the image data to an output device, and supplying a signal indicating that rendering by the rendering means is completed to the control means,
When the analysis means receives a signal indicating that a clock is supplied to the CPU from the control means, the rendering means starts rendering by the rendering means,
The control means stops the supply of a clock to the CPU upon receiving a signal indicating that the rendering has been completed .

本発明によれば、ページ記述言語データをレンダリングするのに必要なモジュールにクロック信号を供給することにより、消費電力の低減を実現することができる。   According to the present invention, power consumption can be reduced by supplying a clock signal to a module necessary for rendering page description language data.

以下、添付図面を参照して本発明の好適な実施の形態を詳しく説明する。   Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

図1は、本発明の実施の形態1に係る画像処理装置の一例を示すブロック図である。   FIG. 1 is a block diagram showing an example of an image processing apparatus according to Embodiment 1 of the present invention.

意味解析部1は、受信したページ記述言語データの内容を解析し、レンダリング処理部2に対して命令を発行する。この命令には、例えば、各種パラメータの設定処理や、グラフィックスデータからビットマップデータへの変換などが考えられる。レンダリング処理部2は複数のモジュールで構成されており、各モジュールはパイプライン接続され画像処理に必要な処理を逐次処理する。このパイプラインモジュールの機能としては、各オブジェクトのエッジをトラッキングし、X座標のエッジのソートを行うエッジ処理部3、各オブジェクトの表示位置レベルを処理するレベル処理部4、色生成を行う色生成処理部5、イメージデータを処理するイメージ処理部6、色合成を行う色合成部7などがある。   The semantic analysis unit 1 analyzes the content of the received page description language data and issues a command to the rendering processing unit 2. For this command, for example, various parameter setting processing or conversion from graphics data to bitmap data can be considered. The rendering processing unit 2 is composed of a plurality of modules, and each module is connected in a pipeline and sequentially processes processes necessary for image processing. Functions of this pipeline module include an edge processing unit 3 that tracks the edges of each object and sorts X-coordinate edges, a level processing unit 4 that processes the display position level of each object, and a color generation that performs color generation. There are a processing unit 5, an image processing unit 6 for processing image data, a color composition unit 7 for performing color composition, and the like.

出力処理部8は、レンダリング部2でレンダリングされた画像データを入力して、プリンタや表示装置などの出力装置9に出力する。   The output processing unit 8 inputs the image data rendered by the rendering unit 2 and outputs the image data to an output device 9 such as a printer or a display device.

拡張ソフトウェアモジュール60,61はそれぞれ各CPU24,27を有し、レンダリング処理部2のそれぞれ対応する処理部の機能を実現している。21〜23は拡張ソフトウェアモジュール60に設けられ、エッジ処理部3、レベル処理部4、色生成部5のそれぞれとのインターフェースを司るインターフェース部である。また同様に、25〜26は拡張ソフトウェアモジュール部61に設けられ、イメージ処理部6、色合成部7のそれぞれとのインターフェースを司るインターフェース部である。   The extension software modules 60 and 61 have CPUs 24 and 27, respectively, and realize the functions of the corresponding processing units of the rendering processing unit 2. Reference numerals 21 to 23 denote interface units that are provided in the extended software module 60 and control interfaces with the edge processing unit 3, the level processing unit 4, and the color generation unit 5. Similarly, reference numerals 25 to 26 denote interface units that are provided in the extended software module unit 61 and manage the interfaces with the image processing unit 6 and the color synthesis unit 7.

PDLプリフェッチ部40は、入力したページ記述言語データをプリフェッチし、拡張ソフトウェアモジュール60,61で処理が必要な命令が入力データに含まれているかを調べ、その結果をクロック制御部41に送信する。クロック制御部41は、PDLプリフェッチ部40からの結果を基に、処理が必要な拡張ソフトウェアモジュールのCPUにクロック(50,51)を供給する。その後、意味解析部1にクロック切り替え終了信号52を送信する。   The PDL prefetch unit 40 prefetches the input page description language data, checks whether the input data includes an instruction that needs to be processed by the extended software modules 60 and 61, and transmits the result to the clock control unit 41. Based on the result from the PDL prefetch unit 40, the clock control unit 41 supplies a clock (50, 51) to the CPU of the extended software module that needs to be processed. Thereafter, a clock switching end signal 52 is transmitted to the semantic analysis unit 1.

意味解析部1は、クロック制御部41から、このクロック切り替え終了信号52を受信すると、レンダリング処理部2に対して各種パラメータの設定命令、グラフィック処理命令を供給する。これによりレンダリング処理が開始される。またレンダリング処理が終了すると、レンダリング処理終了信号53が出力処理部8からクロック制御部41へ供給される。このレンダリング終了信号53を受信したクロック制御部41は、次の画像処理が開始されるまで、全ての拡張ソフトウェアモジュールのCPU24,27へのクロックの供給を停止する。   When the semantic analysis unit 1 receives the clock switching end signal 52 from the clock control unit 41, the semantic analysis unit 1 supplies various parameter setting commands and graphic processing commands to the rendering processing unit 2. Thus, the rendering process is started. When the rendering process ends, a rendering process end signal 53 is supplied from the output processing unit 8 to the clock control unit 41. The clock control unit 41 that has received the rendering end signal 53 stops supplying the clocks to the CPUs 24 and 27 of all the extended software modules until the next image processing is started.

図2は、本発明の実施の形態1に係る画像処理装置の処理を説明するフローチャートである。   FIG. 2 is a flowchart for explaining processing of the image processing apparatus according to Embodiment 1 of the present invention.

まずステップS101で、意味解析部1の言語解析ブロックにより、入力したページ記述言語データの言語解析を行う。次にステップS102で、上述したクロックの切り替えが終了しているかどうかを判定し、終了していないときは、クロックの切り替えが終了するまでステップS102を実行する。こうしてクロックの切替えが終了するとステップS103に進み、入力したページ記述言語を、ステップS101の言語解析に基づいて、パラメータ設定用命令と内部処理用の命令に変換する。次にステップS104で、ステップS103で生成した命令が、パイプラインモジュールで処理可能か否かが判断され、パイプラインモジュールで処理可能な場合はステップS105で処理される。またパイプラインモジュールで処理できないと判断された場合はステップS106で、拡張ソフトウェアモジュールで処理される。こうしてステップS105或はS106を実行した後ステップS107に進み、データの出力処理を行う。そしてステップS108で、拡張モジュールへのクロックの供給を停止する。 First, in step S101, the language analysis block of the semantic analysis unit 1 performs language analysis of the input page description language data. Next, in step S102, it is determined whether or not the above-described clock switching has been completed. If the clock switching has not been completed, step S102 is executed until the clock switching is completed. When the clock switching is thus completed, the process proceeds to step S103, where the input page description language is converted into a parameter setting instruction and an internal processing instruction based on the language analysis in step S101. In step S104, the instruction generated in step S103 is, whether it is possible to process in the pipeline module is determined, if possible processing in a pipelined modules is processed in step S105. If it is determined that processing cannot be performed by the pipeline module, processing is performed by the extended software module in step S106. After executing step S105 or S106 in this way, the process proceeds to step S107 to perform data output processing. In step S108, the supply of the clock to the expansion module is stopped.

また前述のステップS101の言語解析処理と並行して、ステップS112で、PDLプリフェッチ部40により、入力したページ記述言語をフェッチし、ステップS113で、拡張ソフトウェアモジュール60,61での処理が必要な命令が入力データに含まれているかを調べ、その結果をクロック制御部41に送信する。こうしてクロック制御部41は、PDLプリフェッチ部40からの結果を基に、処理が必要な拡張ソフトウェアモジュールのCPUにクロック(50,51)を供給するクロック切替え処理を実行する。この切替え処理が終了しているか否かがステップS102で判定されて前述の処理が実行される。   In parallel with the language analysis processing in step S101 described above, in step S112, the PDL prefetch unit 40 fetches the input page description language, and in step S113, an instruction that requires processing in the extended software modules 60 and 61. Is included in the input data, and the result is transmitted to the clock control unit 41. In this way, the clock control unit 41 executes the clock switching process for supplying the clock (50, 51) to the CPU of the extended software module that needs to be processed based on the result from the PDL prefetch unit 40. It is determined in step S102 whether or not this switching process has been completed, and the above-described process is executed.

図3は、実施の形態1に係るクロックの切替え処理の詳細を説明するフローチャートである。   FIG. 3 is a flowchart for explaining details of the clock switching processing according to the first embodiment.

まずステップS121で、入力データの有無を判断し、入力データがある場合はステップS122で、入力データのプリフェッチ処理を行う。そしてステップS123で、そのプリフェッチした入力データの構文を解析し、入力データ処理に必要な機能を検索する。次にステップS124で、その検索結果に基づいて、拡張ソフトウェアモジュールで処理すべき機能があるか否かを調べ、拡張ソフトウェアモジュールで処理する必要がない場合はステップS126で、クロック切り替え処理終了信号を出力する。一方、拡張ソフトウェアモジュールで処理する必要がある場合はステップS125で、該当する拡張ソフトウェアモジュールのCPUにクロックを供給し、ステップS126で、クロック切り替え処理終了信号を出力する。   First, in step S121, the presence / absence of input data is determined. If there is input data, input data prefetch processing is performed in step S122. In step S123, the syntax of the prefetched input data is analyzed to search for a function necessary for input data processing. Next, in step S124, it is checked whether there is a function to be processed by the extended software module based on the search result. If there is no need to process in the extended software module, a clock switching process end signal is sent in step S126. Output. On the other hand, if it is necessary to perform processing by the extended software module, a clock is supplied to the CPU of the corresponding extended software module in step S125, and a clock switching process end signal is output in step S126.

またステップS121で、入力データが無いと判定されるとステップS127に進み、レンダリング処理終了信号の有無を判定し、レンダリング処理終了信号がある場合はステップS128で、全ての拡張ソフトウェアモジュールのCPUへのクロックの供給を停止する。   If it is determined in step S121 that there is no input data, the process advances to step S127 to determine whether or not there is a rendering process end signal. If there is a rendering process end signal, in step S128, the CPU of all the extended software modules is sent to the CPU. Stop supplying the clock.

図4は、本発明の実施の形態1に係る画像処理装置のベーシックレンダリング処理部2と拡張ソフトウェアモジュールのモジュール構成例を説明する図である。   FIG. 4 is a diagram for explaining a module configuration example of the basic rendering processing unit 2 and the extended software module of the image processing apparatus according to Embodiment 1 of the present invention.

図において、例えばベーシックレンダリングモジュールのエッジ処理部と接続している拡張ソフトウェアモジュールNo1は、「Bitmap Font」(ビットマップフォント),「FastBitmapEncoding」(高速ビットマップ符号化),「Bezier」(ベジェ),「DirectSorting」(直接ソーティング)を処理可能であることが分かる。また拡張ソフトウェアモジュールに割り当てられた番号(No)とは、各ソフトウェアモジュールに割り振られた番号を示している。   In the figure, for example, the extended software module No. 1 connected to the edge processing unit of the basic rendering module includes “Bitmap Font” (bitmap font), “FastBitmapEncoding” (high-speed bitmap encoding), “Bezier” (Bézier), It can be seen that “DirectSorting” can be processed. The number (No) assigned to the extended software module indicates the number assigned to each software module.

本実施の形態1に係る画像処理装置に入力されるデータは、ページ記述言語で記述されたデータであり、この実施の形態では、ページ記述言語として代表的な言語であるポストスクリプト(PostScript)使用時のベジェ曲線処理の場合で説明する。以下、ベジェ曲線の一般的な説明と、ポストスクリプトにおけるベジェ曲線の記述例を説明する。   The data input to the image processing apparatus according to the first embodiment is data described in a page description language. In this embodiment, PostScript, which is a typical language as a page description language, is used. A case of Bezier curve processing will be described. Hereinafter, a general description of Bezier curves and description examples of Bezier curves in PostScript will be described.

ベジェ曲線は、曲線の描画に使用される制御方法の一つであり、ポストスクリプトは4点から制御されるベジェ曲線をサポートしている。4点から制御されるベジェ曲線とは、点Aから始まり、B,Cに制御され、D点で終端する曲線である。4点A,B,C,Dを制御点とするベジェ曲線は、次の式で生成される。尚,A,B,C,Dは位置ベクトルで、tは[0..1]のスカラーであるtを媒介変数とする3次式となっている。   A Bezier curve is one of the control methods used to draw a curve, and Postscript supports Bezier curves controlled from four points. A Bezier curve controlled from four points is a curve that starts at point A, is controlled by B and C, and ends at point D. A Bezier curve having four points A, B, C, and D as control points is generated by the following equation. A, B, C, and D are position vectors, and t is [0. . 1] is a cubic expression with t as a parameter.

r(t)=A・(1-t)3+3B・t・(1-t)2+3C・t2・(1-t)+D・t3
この式から、t=0のときr(t)=A、t=1のときr(t)=Dとなり、tが0から1に変化するに連れてr(t)の値は、A>B>C>Dの順に変化する。ベジェ曲線の性質として以下の性質が挙げられる。
r (t) = A. (1-t) 3 + 3B.t. (1-t) 2 + 3C.t2. (1-t) + D.t3
From this equation, r (t) = A when t = 0, r (t) = D when t = 1, and as t changes from 0 to 1, the value of r (t) becomes A> It changes in the order of B>C> D. The following properties are listed as the properties of the Bezier curve.

1.ベジェ曲線は、4点が凸多角形の場合、その中に入る。   1. A Bezier curve falls within a four-point convex polygon.

2.直線A−B,C−Dは、曲線の開始点と終端点で曲線の接線になる。   2. The straight lines AB and CD are tangent to the curve at the start and end points of the curve.

3.線分A−B,B−C,C−Dの各中点をP,Q,Rとする。線分P−Q,Q−Rの中点をそれぞれS,T,線分S−tの中点をWとすると、Wはt=1/2のベジェ曲線の点となる。一般に、各線分をm:nの比で分割した点Wは、ベジェ曲線の点となる。 3. Let P, Q, and R be the midpoints of line segments AB, BC, and CD, respectively. Line P-Q, Q-R a midpoints of, respectively it S, T, when the midpoint of the line segment S-t and W, W is the point of the Bezier curve in t = 1/2. In general, a point W obtained by dividing each line segment by a ratio of m: n is a point of a Bezier curve.

図5は、制御点が4点のベジェ曲線の中点W(t=1/2)を視覚的に表した図で、上記ベジェ曲線の公式における制御点A(38,120),B(54,136),C(82,143),D(104,134)とした時のベジェ曲線を示している。   FIG. 5 is a diagram visually representing the middle point W (t = 1/2) of the Bezier curve having four control points. The control points A (38, 120) and B (54) in the above Bezier curve formula are shown. 136), C (82, 143), and D (104, 134).

図6は、このベジェ曲線を記述するポストスクリプトの命令を示す図である。   FIG. 6 is a diagram showing PostScript commands describing this Bezier curve.

図6の3行目の「38 120 moveto」は、カレント座標を制御点Aとして(38,120)に移動することを意味し、4行目の「54 136 82 143 104 134 curveto」は、制御点B(54,136)、制御点C(82,143)、制御点D(104,134)を設定してベジェ曲線を描画するよう指示している。以上がベジェ曲線の一般的な説明と、ポストスクリプトにおけるベジェ曲線の記述方法である。   “38 120 moveto” in the third line in FIG. 6 means that the current coordinate is moved to (38, 120) as the control point A, and “54 136 82 143 104 134 curveto” in the fourth line is the control point. A point B (54, 136), a control point C (82, 143), and a control point D (104, 134) are set to instruct to draw a Bezier curve. The above is the general description of the Bezier curve and the description method of the Bezier curve in Postscript.

この例から明らかなように、ベジェ曲線を表すオペレータ「curveto」がポストスクリプトに含まれていれば、他の条件を考えずにベジェ曲線の描画であると判断できることが分かる。   As is clear from this example, if the operator “curveto” representing the Bezier curve is included in the postscript, it can be determined that the Bezier curve is drawn without considering other conditions.

そこでPDLプリフェッチ部40は、指定されたメインメモリのアドレスからPDLデータをフェッチしてページ記述言語データの意味を解析する。ここで「curveto」とマッチするオペレータが含まれていると、対象データにベジェ曲線が含まれていると判断し、その判定結果をクロック制御部41に送信する。これによりクロック制御部41は、図4に示すテーブルを参照して、ベジェ曲線に対応する拡張ソフトウェアモジュールが拡張ソフトウェアモジュールNo1であることを認識する。そして、拡張ソフトウェアモジュールNo1にクロック50を供給し、クロック供給終了信号52を意味解析部1に送信する。   Therefore, the PDL prefetch unit 40 fetches PDL data from the designated main memory address and analyzes the meaning of the page description language data. If an operator that matches “curveto” is included, it is determined that the target data includes a Bezier curve, and the determination result is transmitted to the clock control unit 41. Thereby, the clock control unit 41 recognizes that the extension software module corresponding to the Bezier curve is the extension software module No1 with reference to the table shown in FIG. Then, the clock 50 is supplied to the extended software module No 1 and a clock supply end signal 52 is transmitted to the semantic analysis unit 1.

また意味解析部1は、入力されたページ記述言語データを解釈し、ベーシックレンダリング処理部2に対する命令を生成する。こうして生成された命令には、ループ処理や条件判定等の簡単な処理や、数値演算、パラメータ設定等も含まれている。更に意味解析部1は、クロック制御部41からのクロック切り替え終了信号がアサートされた後、生成した命令をベーシックレンダリング処理部2に対して出力する。ここで生成した命令がパラメータ設定の場合は、所定のテーブルにパラメータを設定する。また生成した命令がレンダリング処理に関する場合には、ベーシックレンダリング処理部2内の各パイプラインモジュールで処理が実施される(ステップS105)。更にまた、その生成されたレンダリング命令が各パイプラインモジュールで処理できない場合には拡張ソフトウェアモジュールに対して命令を発行する(ステップS106)。これにより各拡張ソフトウェアモジュールでは、その受信したレンダリング命令をデコードし、レンダリング命令をソフトウェア処理する。   The semantic analysis unit 1 interprets the input page description language data and generates a command for the basic rendering processing unit 2. The command generated in this way includes simple processing such as loop processing and condition determination, numerical calculation, parameter setting, and the like. Further, the semantic analysis unit 1 outputs the generated instruction to the basic rendering processing unit 2 after the clock switching end signal from the clock control unit 41 is asserted. If the command generated here is parameter setting, the parameter is set in a predetermined table. If the generated instruction relates to rendering processing, processing is performed in each pipeline module in the basic rendering processing unit 2 (step S105). Furthermore, if the generated rendering instruction cannot be processed by each pipeline module, the instruction is issued to the extension software module (step S106). Thus, each extended software module decodes the received rendering instruction and processes the rendering instruction by software.

ここでエッジ処理部3に入力された命令がベジェ曲線処理だった場合は、エッジ処理部3は、拡張ソフトウェアモジュールに対して命令を供給する(S125)。本実施の形態では、拡張ソフトウェアモジュールNo1がベジェ曲線処理を行うモジュールであるため(図4)、拡張ソフトウェアモジュールNo1は受信命令をデコードし、データがベジェに関する命令であると判断すると、それに対してソフトウェア処理を行う。   If the instruction input to the edge processing unit 3 is Bezier curve processing, the edge processing unit 3 supplies the instruction to the extension software module (S125). In this embodiment, since the extended software module No1 is a module that performs Bezier curve processing (FIG. 4), when the extended software module No1 decodes the received instruction and determines that the data is an instruction related to Bezier, Perform software processing.

このとき、パイプラインモジュールに接続された他の拡張ソフトウェアモジュールの内、入力データ処理に関係のない拡張ソフトウェアモジュールではクロックが供給されていないため動作が実行されない。また意味解析部1が生成した命令が出力処理に関する命令である場合には、出力処理部8に蓄えられたデータを出力装置9に出力することにより、印刷処理もしくは画面出力が行われる。また同時に、出力処理部8はレンダリング処理終了信号53をクロック制御部41へ供給する。これによりクロック制御部41は、レンダリング処理の終了信号53を受信した後、全ての拡張ソフトウェアモジュールのCPUへのクロックの供給を停止する(ステップS108)。   At this time, the operation is not executed because the clock is not supplied to the extension software module not related to the input data processing among the other extension software modules connected to the pipeline module. When the command generated by the semantic analysis unit 1 is a command related to output processing, printing processing or screen output is performed by outputting data stored in the output processing unit 8 to the output device 9. At the same time, the output processing unit 8 supplies a rendering processing end signal 53 to the clock control unit 41. Thus, after receiving the rendering process end signal 53, the clock control unit 41 stops supplying the clocks to the CPUs of all the extended software modules (step S108).

[実施の形態2]
図7は、本発明の実施の形態2に係る画像処理装置の構成を説明するブロック図で、前述の図1と共通する部分は同じ記号で示し、それらの説明を省略する。
[Embodiment 2]
FIG. 7 is a block diagram for explaining the configuration of the image processing apparatus according to the second embodiment of the present invention. The parts common to those in FIG.

図において、拡張レンダリングモジュール部11は、拡張ハードウェアモジュール部12,13,14,15,16,17,18,19と、拡張ソフトウェアモジュール部20とを備えている。   In the figure, the extended rendering module unit 11 includes extended hardware module units 12, 13, 14, 15, 16, 17, 18, and 19 and an extended software module unit 20.

PDLプリフェッチ部40は、入力したページ記述言語データのプリフェッチを行い、拡張レンダリングモジュール部11で処理が必要な命令が入力データに含まれているか検索し、その検索結果をクロック制御部41に供給する。クロック制御部41は、この検索結果を基に、拡張レンダリングモジュール部11内の該当するブロックにクロックを供給し、その後、意味解析部1にクロック切り替え終了信号を送信する。意味解析部1では、このクロック制御部41からのクロック切り替え終了信号を受信すると、レンダリング処理部2に対して各種パラメータの設定命令、グラフィック処理命令を送信して処理を開始する。   The PDL prefetch unit 40 prefetches the input page description language data, searches the input data for an instruction that requires processing in the extended rendering module unit 11, and supplies the search result to the clock control unit 41. . Based on the search result, the clock control unit 41 supplies a clock to the corresponding block in the extended rendering module unit 11, and then transmits a clock switching end signal to the semantic analysis unit 1. When the semantic analysis unit 1 receives the clock switching end signal from the clock control unit 41, it transmits various parameter setting commands and graphic processing commands to the rendering processing unit 2 and starts processing.

尚、拡張ハードウェアモジュール部のそれぞれを説明すると、12はビットマップフォントモジュール、13はベジェ処理モジュール、14はブロックレンダリングモジュール、15はビットマップモジュール、16はリニアランプモジュール、17はJPEGモジュール、18はJBIGモジュール、19はPDFモジュールである。   Each of the extended hardware module units will be described. 12 is a bitmap font module, 13 is a Bezier processing module, 14 is a block rendering module, 15 is a bitmap module, 16 is a linear lamp module, 17 is a JPEG module, 18 Is a JBIG module, and 19 is a PDF module.

またこの実施の形態2では、拡張ソフトウェアモジュール部20は一つのモジュールで構成されており、21〜26のそれぞれは、エッジ処理部3、レベル処理部4、色生成部5、イメージ処理部6、色合成部7のそれぞれとのインターフェースを制御するインターフェース部である。CPU24は、この拡張ソフトウェアモジュール部20の処理を制御している。   Further, in the second embodiment, the extended software module unit 20 is composed of one module, and each of 21 to 26 includes an edge processing unit 3, a level processing unit 4, a color generation unit 5, an image processing unit 6, It is an interface unit that controls an interface with each of the color synthesis units 7. The CPU 24 controls the processing of the extension software module unit 20.

図8は、本発明の実施の形態2に係る画像処理装置の処理を説明するフローチャートである。   FIG. 8 is a flowchart for explaining the processing of the image processing apparatus according to the second embodiment of the present invention.

まずステップS131で、意味解析部1の言語解析ブロックにより、入力したページ記述言語を言語解析する。次にステップS132で、上述したクロックの切り替えが終了しているかどうかを判定し、終了していないときは、クロックの切り替えが終了するまでステップS132を実行する。こうしてクロックの切替えが終了するとステップS133に進み、入力したページ記述言語を、ステップS131の言語解析に基づいて、パラメータ設定用命令と内部処理用の命令に変換する。次にステップS134で、ステップS133で生成した命令が、パイプラインモジュールで処理可能か判断され、処理可能な場合はステップS135で処理される。またパイプラインモジュールで処理できないと判断された場合はステップS137に進み、拡張ハードウェアモジュール12〜19で処理可能かどうかを判定する。処理可能であればステップS138に進み、対応する拡張ハードウェアモジュールによる処理を行う。一方、ステップS137で処理できないと判定されるとステップS139に進み、拡張ソフトウェアモジュールによる処理を実行する。こうしてステップS135、ステップS138或はS139を実行した後ステップS136に進み、データの出力処理を行う。   First, in step S131, the language analysis block of the semantic analysis unit 1 performs language analysis on the input page description language. Next, in step S132, it is determined whether or not the above-described clock switching has been completed. If the clock switching has not been completed, step S132 is executed until the clock switching is completed. When the clock switching is thus completed, the process proceeds to step S133, and the input page description language is converted into a parameter setting instruction and an internal processing instruction based on the language analysis in step S131. Next, in step S134, it is determined whether the instruction generated in step S133 can be processed by the pipeline module. If it can be processed, it is processed in step S135. If it is determined that processing cannot be performed by the pipeline module, the process advances to step S137 to determine whether processing by the extended hardware modules 12 to 19 is possible. If processing is possible, the process proceeds to step S138, and processing by the corresponding extended hardware module is performed. On the other hand, if it is determined that the process cannot be performed in step S137, the process proceeds to step S139, and the process by the extended software module is executed. After executing step S135, step S138, or S139 in this way, the process proceeds to step S136 to perform data output processing.

また前述のステップS131の言語解析処理と並行して、ステップS141で、PDLプリフェッチ部40により、入力したページ記述言語をフェッチし、ステップS142で、拡張レンダリングモジュール11での処理が必要な命令が入力データに含まれているかを調べ、その結果をクロック制御部41に送信する。こうしてクロック制御部41は、PDLプリフェッチ部40からの結果を基に、処理が必要な拡張レンダリングモジュール11のCPU24にクロックを供給するクロック切替え処理を実行する。この切替え処理が終了しているか否かがステップS132で判定されて前述の処理が実行される。   In parallel with the language analysis processing in step S131 described above, the input page description language is fetched by the PDL prefetch unit 40 in step S141, and an instruction that requires processing in the extended rendering module 11 is input in step S142. It is checked whether it is included in the data, and the result is transmitted to the clock control unit 41. Thus, the clock control unit 41 executes a clock switching process for supplying a clock to the CPU 24 of the extended rendering module 11 that needs to be processed based on the result from the PDL prefetch unit 40. It is determined in step S132 whether or not this switching process has been completed, and the above-described process is executed.

図9は、実施の形態2に係るクロックの切替え処理の詳細を説明するフローチャートである。   FIG. 9 is a flowchart for explaining the details of the clock switching process according to the second embodiment.

まずステップS151で、入力データのプリフェッチ処理を行う。そしてステップS152で、そのプリフェッチした入力データの構文を解析し、入力データ処理に必要な機能を検索する。次にステップS153で、その検索結果に基づいて、拡張レンダリングモジュール11で処理すべき機能があるか否かを調べ、拡張レンダリングモジュール11で処理する必要がない場合は、処理終了信号を出力して処理を終了する。   First, in step S151, input data prefetch processing is performed. In step S152, the syntax of the prefetched input data is analyzed, and a function necessary for input data processing is searched. Next, in step S153, it is checked whether or not there is a function to be processed by the extended rendering module 11 based on the search result. If there is no need for the extended rendering module 11, a processing end signal is output. The process ends.

一方ステップS153で、拡張レンダリングモジュール11で処理する必要がある場合はステップS154に進み、該当する拡張ハードウェアモジュールがあるかどうかを調べ、あればステップS155で、その拡張ハードウェアモジュールにクロックを供給して処理を終了する。またステップS154で、拡張ハードウェアモジュールで処理する必要がないと判定するとステップS156で、拡張ソフトウェアモジュールの該当するインターフェースにクロックを供給する。   On the other hand, if it is necessary to perform processing in the extended rendering module 11 in step S153, the process proceeds to step S154 to check whether or not there is a corresponding extended hardware module. If there is, the clock is supplied to the extended hardware module in step S155. To finish the process. If it is determined in step S154 that processing by the extended hardware module is not necessary, a clock is supplied to the corresponding interface of the extended software module in step S156.

図10は、本実施の形態2に係る画像処理装置のベーシックレンダリング処理部と拡張レンダリング処理部のモジュール構成を説明する図である。   FIG. 10 is a diagram illustrating the module configuration of the basic rendering processing unit and the extended rendering processing unit of the image processing apparatus according to the second embodiment.

図において、例えばレンダリング処理部2のエッジ処理部3と接続している拡張レンダリングモジュールは、「BitmapFont」,「FastBitmapEncoding」,「Bezier」,「DiretSorting」であり、「BitmapFont」は拡張ハードウェアモジュールNo1、「FastBitmapEncoding」は拡張ソフトウェアモジュールインターフェースNo1、「Bezier」は拡張ハードウェアモジュールNo2、「DiretSorting」は、拡張ソフトウェアモジュールインターフェースNo1で処理することが分かる。尚、これら拡張レンダリングモジュールに割り当てられたNoは、各モジュールに割り振られた番号である。   In the figure, for example, the extended rendering modules connected to the edge processing unit 3 of the rendering processing unit 2 are “BitmapFont”, “FastBitmapEncoding”, “Bezier”, “DiretSorting”, and “BitmapFont” is the extended hardware module No1. It is understood that “FastBitmapEncoding” is processed by the extended software module interface No1, “Bezier” is processed by the extended hardware module No2, and “DiretSorting” is processed by the extended software module interface No1. Note that “No” assigned to these extended rendering modules is a number assigned to each module.

本実施の形態2に係る画像処理装置に入力されるデータは、前述の実施の形態1と同様に、ページ記述言語で記述されたデータであり、ページ記述言語として代表的な言語であるポストスクリプト使用時のベジェ曲線処理は、前述の実施の形態1の場合と同様にして実行される。   The data input to the image processing apparatus according to the second embodiment is data described in a page description language as in the first embodiment, and is a postscript that is a typical language as a page description language. The Bezier curve process at the time of use is executed in the same manner as in the first embodiment.

具体的には、PDLプリフェッチ部40は、指定されたメインメモリのアドレスからPDLデータをフェッチし、ページ記述言語の意味を解析し、「curveto」(図6)とマッチしたオペレータが存在する場合、その入力データにベジェ曲線が含まれていると判断し、その判断結果をクロック制御部41に送信する。クロック制御部41は、図10から、ベジェ曲線に対応する拡張レンダリングモジュールは拡張ハードウェアモジュールNo2であることが判明するので、拡張ハードウェアモジュールNo2にクロックを供給し、クロック供給終了信号を意味解析部1に送信する。   Specifically, the PDL prefetch unit 40 fetches PDL data from the address of the designated main memory, analyzes the meaning of the page description language, and when there is an operator that matches “curveto” (FIG. 6), It is determined that the input data includes a Bezier curve, and the determination result is transmitted to the clock control unit 41. Since the extended rendering module corresponding to the Bezier curve is found to be the extended hardware module No. 2 from FIG. 10, the clock control unit 41 supplies the extended hardware module No. 2 with a clock and performs a semantic analysis on the clock supply end signal. Send to part 1.

意味解析部1は、この入力されたページ記述言語を解釈し、ベーシックレンダリング処理部2に対する命令を生成する。こうして生成された命令には、ループ処理や条件判定等の簡単な処理や、数値演算、パラメータ設定などもある。クロック制御部41からのクロック切り替え終了信号がアサートされた後、生成した命令をレンダリング処理部2に対して出力する。この生成した命令がパラメータ設定の場合は、所定のテーブルにパラメータを設定する。   The semantic analysis unit 1 interprets the input page description language and generates an instruction for the basic rendering processing unit 2. The commands generated in this way include simple processing such as loop processing and condition determination, numerical calculation, parameter setting, and the like. After the clock switching end signal from the clock control unit 41 is asserted, the generated instruction is output to the rendering processing unit 2. When the generated instruction is parameter setting, the parameter is set in a predetermined table.

一方、生成した命令が、パイプラインモジュールで処理可能なレンダリング処理に関する場合には、レンダリング処理部2内の各パイプラインモジュールで処理が実施される(ステップS135)。また生成されたレンダリング命令が各パイプラインモジュールで処理できない命令であり、拡張ハードウェアモジュールで処理可能な場合には(ステップS137)、パイプラインモジュールに接続している拡張ハードウェアモジュール全てに対して命令をブロードキャストする。こうして各拡張ハードウェアモジュールでは、受信したレンダリング命令をデコードし、自モジュールが処理する必要があるか判断し、自モジュールが処理する必要があると判断した場合は処理を行う(ステップS138)。   On the other hand, when the generated instruction relates to a rendering process that can be processed by the pipeline module, the process is performed in each pipeline module in the rendering processing unit 2 (step S135). If the generated rendering instruction is an instruction that cannot be processed by each pipeline module and can be processed by the extended hardware module (step S137), all of the extended hardware modules connected to the pipeline module are processed. Broadcast instructions. In this way, each extended hardware module decodes the received rendering command, determines whether the own module needs to be processed, and performs processing when it is determined that the own module needs to be processed (step S138).

また生成されたレンダリング命令が各パイプラインモジュールで処理できない命令であり、かつ拡張ハードウェアモジュールでも処理できない場合は、パイプラインモジュールに接続している拡張ソフトウェアモジュールインターフェースに対してレンダリング命令を供給する。これにより拡張ソフトウェアモジュールは、インターフェース21〜26に入力されたレンダリング命令を、CPU24を用いてソフトウェア処理する(ステップS139)。   If the generated rendering instruction cannot be processed by each pipeline module and cannot be processed by the extended hardware module, the rendering instruction is supplied to the extended software module interface connected to the pipeline module. As a result, the extended software module processes the rendering command input to the interfaces 21 to 26 using the CPU 24 (step S139).

例えば、エッジ処理部3に入力された命令がベジェ曲線処理だった場合は、エッジ処理部3は、拡張ハードウェアモジュールに対して命令のブロードキャストを行う。本実施の形態2では、拡張ハードウェアモジュールNo2がベジェ曲線処理を行うモジュールである。このため拡張ハードウェアモジュールNo2が、その受信した命令をデコードし、データがベジェに関する命令である場合のベジェ処理を行う。この場合、エッジ処理部3に接続された他の拡張ハードウェアモジュールは、入力データ処理に関係のない場合はクロックが供給されていないため、動作が行われていない。またクロックが供給されている他拡張ハードウェアモジュールが存在する場合でも、受信命令をデコードして、その命令が自モジュールで処理する必要がないと判断した場合は処理を行わない。   For example, when the instruction input to the edge processing unit 3 is Bezier curve processing, the edge processing unit 3 broadcasts the instruction to the extended hardware module. In the second embodiment, the extended hardware module No. 2 is a module that performs Bezier curve processing. For this reason, the extended hardware module No. 2 decodes the received instruction and performs Bezier processing when the data is an instruction related to Bezier. In this case, the other extended hardware modules connected to the edge processing unit 3 are not operated because the clock is not supplied when they are not related to the input data processing. Even when there is another extended hardware module to which a clock is supplied, if the received instruction is decoded and it is determined that the instruction does not need to be processed by the own module, no processing is performed.

また意味解析部1が生成した命令が出力処理である場合は、出力処理部8に蓄えられたデータを出力装置9に対して出力し、印刷処理もしくは画面出力が行われる。   If the command generated by the semantic analysis unit 1 is output processing, the data stored in the output processing unit 8 is output to the output device 9, and printing processing or screen output is performed.

なお本発明は、複数の機器(例えばホストコンピュータ、インターフェース機器、リーダ、プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機、ファクシミリ装置など)に適用してもよい。   Note that the present invention can be applied to a system (for example, a copier, a facsimile machine, etc.) composed of a single device even if it is applied to a system composed of a plurality of devices (for example, a host computer, interface device, reader, printer, etc.). May be.

また本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体(または記録媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成される。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。   Another object of the present invention is to supply a storage medium (or recording medium) on which a program code of software for realizing the functions of the above-described embodiments is recorded to a system or apparatus, and to perform computer (or CPU or MPU) of the system or apparatus. ) Is also achieved by reading and executing the program code stored in the storage medium. In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the storage medium storing the program code constitutes the present invention. Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an operating system (OS) running on the computer based on the instruction of the program code. A case where part or all of the actual processing is performed and the functions of the above-described embodiments are realized by the processing is also included.

さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。   Furthermore, after the program code read from the storage medium is written into a memory provided in a function expansion card inserted into the computer or a function expansion unit connected to the computer, the function is determined based on the instruction of the program code. The case where the CPU of the expansion card or the function expansion unit performs part or all of the actual processing and the functions of the above-described embodiments are realized by the processing is also included.

本発明の実施の形態1に係る画像処理装置の一例を示すブロック図である。It is a block diagram which shows an example of the image processing apparatus which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係る画像処理装置の処理を説明するフローチャートである。It is a flowchart explaining the process of the image processing apparatus which concerns on Embodiment 1 of this invention. 実施の形態1に係るクロックの切替え処理の詳細を説明するフローチャートである。4 is a flowchart illustrating details of a clock switching process according to the first embodiment. 本実施の形態1に係る画像処理装置のベーシックレンダリング処理部2と拡張ソフトウェアモジュールのモジュール構成例を説明する図である。It is a figure explaining the module structural example of the basic rendering process part 2 of the image processing apparatus which concerns on this Embodiment 1, and an extended software module. 制御点が4点のベジェ曲線の中点W(t=1/2)を視覚的に表した図である。It is the figure which represented visually the middle point W (t = 1/2) of the Bezier curve with four control points. ベジェ曲線を記述するポストスクリプトの命令を説明する図である。It is a figure explaining the instruction | indication of the postscript describing a Bezier curve. 本発明の実施の形態2に係る画像処理装置の構成を説明するブロック図である。It is a block diagram explaining the structure of the image processing apparatus which concerns on Embodiment 2 of this invention. 本発明の実施の形態2に係る画像処理装置の処理を説明するフローチャートである。It is a flowchart explaining the process of the image processing apparatus which concerns on Embodiment 2 of this invention. 実施の形態2に係るクロックの切替え処理の詳細を説明するフローチャートである。10 is a flowchart illustrating details of a clock switching process according to the second embodiment. 本実施の形態2に係る画像処理装置のベーシックレンダリング処理部と拡張レンダリング処理部のモジュール構成を説明する図である。It is a figure explaining the module structure of the basic rendering process part of the image processing apparatus which concerns on this Embodiment 2, and an extended rendering process part.

Claims (2)

ページ記述言語データを入力し、イメージデータを生成して出力する画像処理装置であって、
入力されたページ記述言語データを解析する解析手段と、
前記解析手段による解析に基づいて、前記ページ記述言語データをレンダリングするレンダリング手段と、
前記レンダリング手段によるレンダリング機能の一部を実行し、それぞれがCPUを具備する複数の拡張ソフトウェアモジュールと、
前記ページ記述言語データに拡張ソフトウェアモジュールで処理すべき命令が含まれているか否かを判断する判断手段と、
前記判断手段による判断結果に基づいて、前記複数の拡張ソフトウェアモジュールの内の対応する拡張ソフトウェアモジュールのCPUにクロック信号を供給し、CPUにクロックを供給したことを示す信号を前記解析手段に送信する制御手段と、
前記レンダリング手段でレンダリングされた画像データを入力して出力装置に出力するとともに、前記レンダリング手段によるレンダリングが終了したことを示す信号を前記制御手段に供給する出力処理手段とを有し、
前記解析手段は、前記制御手段から前記CPUにクロックを供給したことを示す信号を受信すると、前記レンダリング手段によるレンダリングを開始させ、
前記制御手段は、前記レンダリングが終了したことを示す信号を受信すると、前記CPUへのクロックの供給を停止することを特徴とする画像処理装置。
An image processing apparatus for inputting page description language data, generating and outputting image data,
An analysis means for analyzing the input page description language data;
Rendering means for rendering the page description language data based on the analysis by the analysis means;
A plurality of extension software modules that execute a part of the rendering function by the rendering means, each of which includes a CPU;
Determining means for determining whether or not the page description language data includes an instruction to be processed by an extended software module;
Based on the determination result by the determination means, a clock signal is supplied to the CPU of the corresponding extension software module among the plurality of extension software modules, and a signal indicating that the clock is supplied to the CPU is transmitted to the analysis means . Control means;
Output processing means for inputting the image data rendered by the rendering means and outputting the image data to an output device, and supplying a signal indicating that rendering by the rendering means is completed to the control means,
When the analysis means receives a signal indicating that a clock is supplied to the CPU from the control means, the rendering means starts rendering by the rendering means,
When the control means receives a signal indicating that the rendering has been completed, the control means stops the supply of a clock to the CPU .
前記レンダリング手段は、所定のページ記述言語データを対応する拡張ソフトウェアモジュールに供給してレンダリング処理を行うことを特徴とする請求項1に記載の画像処理装置。   The image processing apparatus according to claim 1, wherein the rendering unit performs rendering processing by supplying predetermined page description language data to a corresponding extended software module.
JP2004297861A 2004-10-12 2004-10-12 Image processing device Expired - Fee Related JP4522216B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004297861A JP4522216B2 (en) 2004-10-12 2004-10-12 Image processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004297861A JP4522216B2 (en) 2004-10-12 2004-10-12 Image processing device

Publications (3)

Publication Number Publication Date
JP2006113672A JP2006113672A (en) 2006-04-27
JP2006113672A5 JP2006113672A5 (en) 2007-11-29
JP4522216B2 true JP4522216B2 (en) 2010-08-11

Family

ID=36382161

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004297861A Expired - Fee Related JP4522216B2 (en) 2004-10-12 2004-10-12 Image processing device

Country Status (1)

Country Link
JP (1) JP4522216B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011122079A1 (en) * 2010-03-29 2011-10-06 コニカミノルタホールディングス株式会社 Image-forming apparatus, accelerator and image-forming method
JP5643946B2 (en) * 2010-06-25 2014-12-24 ナルテック株式会社 Device having a plurality of interface units

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11157161A (en) * 1997-12-01 1999-06-15 Fuji Xerox Co Ltd Device and method for printing operation
JP2001184495A (en) * 1999-12-27 2001-07-06 Ricoh Co Ltd Image processor
JP2003208607A (en) * 2002-01-15 2003-07-25 Canon Inc Image processing device, method therefor, control program, and recording medium

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11157161A (en) * 1997-12-01 1999-06-15 Fuji Xerox Co Ltd Device and method for printing operation
JP2001184495A (en) * 1999-12-27 2001-07-06 Ricoh Co Ltd Image processor
JP2003208607A (en) * 2002-01-15 2003-07-25 Canon Inc Image processing device, method therefor, control program, and recording medium

Also Published As

Publication number Publication date
JP2006113672A (en) 2006-04-27

Similar Documents

Publication Publication Date Title
KR20160074154A (en) Compiler
JP2003237149A (en) Drawing processor, drawing processing method, computer readable storage medium, and program
US20220171630A1 (en) Apparatus and method
JP4522216B2 (en) Image processing device
US10049487B2 (en) Identifying duplicate indices in an input index stream
US8289533B2 (en) Printing system and printing method for increasing efficiency by selectively rasterizing print data in either a host device or a print device
JP2002268877A (en) Clock control method and information processor using the same
US20030210410A1 (en) Efficient implementation of raster operations flow
JP2011096109A (en) Image processing apparatus and image processing program
JP2019204348A (en) Information processing device, control method therefor, and program
JP2014032436A (en) Image processing device, image processing method, image forming device, program and recording medium
JP2004303077A (en) Information processor and page description language generating method, program and storage medium
JP2001270170A (en) Printer controller
JP2008305093A (en) Memory controller, control method for memory controller, program, and storage medium
JP2008269260A (en) Data processor, data processing method and program
JP2008018577A (en) Image forming apparatus, image forming method, and program
JPH10114113A (en) Printing device, printing control, and storage medium storing program to be read by computer
JP2008071054A (en) Data transfer control method, data processor, and image processor
JP2758875B2 (en) Registered character display system
JP2009132082A (en) Image forming device
JPH06110888A (en) Method and device for document output
JP2001146048A (en) Printer control device, printer control method and recording medium having printer control program recorded thereon
JP2004056446A (en) Picture processor, picture processing method, computer readable storage medium and program
JP2001016443A (en) Enlarging/reducing method of printing data and enlarging/reducing device
JP2007028449A (en) Image processing apparatus, image processing method, and program

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071012

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071012

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20071012

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100226

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100420

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100517

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100525

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130604

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees