JP4522292B2 - Image processing apparatus and image processing method - Google Patents
Image processing apparatus and image processing method Download PDFInfo
- Publication number
- JP4522292B2 JP4522292B2 JP2005065649A JP2005065649A JP4522292B2 JP 4522292 B2 JP4522292 B2 JP 4522292B2 JP 2005065649 A JP2005065649 A JP 2005065649A JP 2005065649 A JP2005065649 A JP 2005065649A JP 4522292 B2 JP4522292 B2 JP 4522292B2
- Authority
- JP
- Japan
- Prior art keywords
- functional circuit
- functional
- processor
- image processing
- circuit block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Description
本発明は、画像処理装置及び画像処理方法に関し、特に、種々の処理を行うPDL画像処理装置に関する。 The present invention relates to an image processing apparatus and an image processing method, and more particularly to a PDL image processing apparatus that performs various processes.
画像処理装置としての従来の複写機は、PDL(Page-description language:ページ記述言語)言語で記述されたPDL画像からラスタ画像を生成するPDL言語処理の機能を有する画像処理回路を備える(例えば、特許文献1)。複写機は、PDL言語処理を行う場合、PDL画像のオブジェクトのエッジ検出処理、重なり判定処理、及び彩色処理等を実行する必要であるので、これらの処理を夫々実行する複数の機能回路ブロックを備えると共に、当該機能回路ブロックにパイプライン処理を実行させることによってPDL言語処理を行う。具体的には、従来のPDL画像処理装置は、エッジ検出機能回路ブロック、レベル判定機能回路ブロック、及び彩色機能回路ブロックを備え、これらは順に接続されて、3段のパイプライン処理を実行している。各機能回路ブロックは、夫々前段に接続された機能回路ブロックから出力された起動信号を受信すると、処理に必要なパラメータや画像データを読み込み、実行すべき各処理を開始する。 A conventional copying machine as an image processing apparatus includes an image processing circuit having a PDL language processing function for generating a raster image from a PDL image described in a PDL (Page-description language) language (for example, Patent Document 1). When performing PDL language processing, the copying machine needs to execute edge detection processing, overlap determination processing, coloring processing, and the like of an object of a PDL image, and thus includes a plurality of functional circuit blocks that respectively execute these processing. At the same time, PDL language processing is performed by causing the functional circuit block to execute pipeline processing. Specifically, the conventional PDL image processing apparatus includes an edge detection function circuit block, a level determination function circuit block, and a coloring function circuit block, which are connected in order to execute three-stage pipeline processing. Yes. When each function circuit block receives the activation signal output from the function circuit block connected to the preceding stage, each function circuit block reads parameters and image data necessary for the process and starts each process to be executed.
エッジ検出機能回路ブロックは、入力されたPDL画像データ中の各オブジェクトのエッジをトラッキングし、トラッキングが終了した後、後段のレベル判定機能ブロックを起動させる。 The edge detection function circuit block tracks the edge of each object in the input PDL image data, and activates the subsequent level determination function block after the tracking is completed.
レベル判定機能回路ブロックは、エッジ検出機能回路ブロックがトラッキングした各オブジェクトのエッジ情報に基づき、各オブジェクト間の重なりを判定すると共に可視オブジェクトを決定した後、後段の彩色機能回路ブロックを起動させる。 The level determination function circuit block determines the overlap between the objects based on the edge information of each object tracked by the edge detection function circuit block, determines the visible object, and then activates the subsequent color function circuit block.
彩色機能回路ブロックは、レベル判定機能回路ブロックによって決定された可視オブジェクトの彩色処理を行う。 The coloring function circuit block performs coloring processing of the visible object determined by the level determination function circuit block.
PDL言語処理を実行する画像処理システムに要求される処理や制御は、複雑化しているので、処理や制御を行う画像処理回路には、大規模なプロセッサが搭載されている。 Since processing and control required for an image processing system that executes PDL language processing are complicated, a large-scale processor is mounted on an image processing circuit that performs processing and control.
全ての機能回路ブロックの動作速度が等しく、画像データ201,202,203,204,205が順に入力されるときは、各機能回路ブロックのパイプライン処理によって図4のように処理される。
しかしながら、従来のPDL画像処理装置において、各機能回路ブロックが処理するデータ量及び処理内容は、処理を行う画像データによって異なるので、各機能回路ブロックのデータ処理時間は夫々異なり、また、ある特定の各機能回路ブロックの処理負荷が重い場合、その他の機能回路ブロックが待ち状態となるので、パイプラインストールが発生し、PDL画像処理装置全体のスループットが低下する。 However, in the conventional PDL image processing apparatus, the amount of data processed by each functional circuit block and the processing content differ depending on the image data to be processed, so that the data processing time of each functional circuit block is different, and a certain specific circuit When the processing load of each functional circuit block is heavy, other functional circuit blocks are in a waiting state, so that pipeline installation occurs, and the throughput of the entire PDL image processing apparatus decreases.
また、ハードウェアによってPDL画像処理を行う場合、PDL画像処理装置は、PDL画像データのオブジェクト数の増加や、彩色に使用するパターンの複雑化に対応するために、多様な機能が必要となり、さらに、処理を高速化する場合は、ハードウェア内部に多量のバッファや演算回路が必要となり、もって回路規模が増大する。 In addition, when PDL image processing is performed by hardware, the PDL image processing apparatus needs various functions in order to cope with an increase in the number of objects of PDL image data and a complicated pattern used for coloring. In order to increase the processing speed, a large amount of buffers and arithmetic circuits are required in the hardware, which increases the circuit scale.
ある特定の機能回路ブロックの処理負荷が常に高いときに、PDL画像処理装置全体のスループットを向上させるべく、処理負担の高い機能回路ブロックの処理の一部をソフトウェアによる処理に振り分けてエミュレートする場合、ハードウェアによる処理時間は、処理を行う画像データの部位によって変化するので、ハードウェア及びソフトウェアへの処理の振り分けを固定的に行うと、ソフトウェアが処理しない機能回路ブロックの処理のスループットが向上せず、必ずしもPDL画像処理装置全体のスループットを向上させるわけではない。 When emulating a part of the processing of a functional circuit block having a high processing load distributed by software in order to improve the throughput of the entire PDL image processing apparatus when the processing load of a specific functional circuit block is always high Since the processing time by hardware varies depending on the part of image data to be processed, if processing is fixedly distributed to hardware and software, the processing throughput of functional circuit blocks that are not processed by software is improved. However, the throughput of the entire PDL image processing apparatus is not necessarily improved.
また、パイプラインストールを引き起こす可能性がある機能回路ブロックの処理を全てソフトウェアによって同時に実行する場合、ソフトウェアによる処理はハードウェアによる処理に比べて低速であるので、ソフトウェアによる処理の終了がハードウェアによる処理の終了より遅れる可能性が高くなり、ソフトウェアとハードウェアで負荷分散を行うことができず、もってPDL言語処理の実行速度を高速化することができない。 Also, when all the processing of functional circuit blocks that may cause pipeline installation is executed simultaneously by software, the processing by software is slower than the processing by hardware, so the end of processing by software is the processing by hardware. There is a high possibility that the process will be delayed, and the load cannot be distributed between software and hardware, so that the execution speed of the PDL language processing cannot be increased.
本発明の目的は、パイプライン処理による画像処理を高速化することができる画像処理装置及び画像処理方法を提供することにある。 An object of the present invention is to provide an image processing apparatus and an image processing method capable of speeding up image processing by pipeline processing.
上記目的を達成するために、本発明の画像処理装置は、互いに直列に接続されると共に入力されるデータに夫々所定の画像処理をパイプラインで施す複数の機能回路ブロックと、前記複数の機能回路ブロックに接続された機能プロセッサとを備える画像処理装置において、前記機能プロセッサ及び前記複数の機能回路ブロックの稼動状態を判定する稼動状態判定手段と、前記判定された稼動状態に応じて前記所定の画像処理の少なくとも1つを前記機能プロセッサに行わせる制御を行う制御手段とを備え、前記複数の機能回路ブロックは、第1機能回路ブロックと、前記第1機能回路ブロックの後段に接続されると共に前記第1機能回路ブロックの出力データを受取る第2機能回路ブロックとを含み、前記制御手段は、前記出力データが前記第2機能回路ブロックにおいて処理待ちを起こすか否かを判別する判別手段を備え、前記処理待ちを起こすときは、前記出力データを前記機能プロセッサに送出することを特徴とする。
上記目的を達成するために、本発明の画像処理装置は、互いに直列に接続されると共に入力されるデータに夫々所定の画像処理をパイプラインで施す複数の機能回路ブロックと、前記複数の機能回路ブロックに接続された機能プロセッサとを備える画像処理装置において、前記機能プロセッサ及び前記複数の機能回路ブロックの稼動状態を判定する稼動状態判定手段と、前記判定された稼動状態に応じて前記所定の画像処理の少なくとも1つを前記機能プロセッサに行わせる制御を行う制御手段とを備え、前記制御手段は、前記機能プロセッサがコマンドの処理を行っているか否かを判別する他の判別手段を備え、前記機能プロセッサが前記コマンドの処理を行っているときは、前記機能プロセッサが行っている前記コマンドの処理を終了させると共に前記コマンドの処理を前記第1機能回路ブロックに行わせることを特徴とする。
上記目的を達成するために、本発明の画像処理装置は、互いに直列に接続されると共に入力されるデータに夫々所定の画像処理をパイプラインで施す複数の機能回路ブロックと、前記複数の機能回路ブロックに接続された機能プロセッサとを備える画像処理装置において、前記機能プロセッサ及び前記複数の機能回路ブロックの稼動状態を判定する稼動状態判定手段と、前記判定された稼動状態に応じて前記所定の画像処理の少なくとも1つを前記機能プロセッサに行わせる制御を行う制御手段とを備え、前記複数の機能回路ブロックは、第1機能回路ブロックと、前記第1機能回路ブロックの後段に接続される第2機能回路ブロックと、前記第2機能回路ブロックの後段に接続された第3機能回路ブロックを含み、前記機能プロセッサは、前記第1機能回路ブロック、前記第2機能回路ブロック、及び前記第3機能回路ブロックの各出力データに夫々優先順位を付加する優先順位付加手段を備えると共に、前記優先順位が付加された出力データを前記優先順位の順に処理することを特徴とする。
上記目的を達成するために、本発明の画像処理方法は、互いに直列に接続されると共に入力されるデータに夫々所定の画像処理をパイプラインで施す複数の機能回路ブロックと、前記複数の機能回路ブロックに接続された機能プロセッサとを備え、前記複数の機能回路ブロックは、第1機能回路ブロックと、前記第1機能回路ブロックの後段に接続されると共に前記第1機能回路ブロックの出力データを受取る第2機能回路ブロックとを含む画像処理装置の画像処理方法において、前記機能プロセッサ及び前記複数の機能回路ブロックの稼動状態を判定する稼動状態判定ステップと、前記判定された稼動状態に応じて前記所定の画像処理の少なくとも1つを前記機能プロセッサに行わせる制御を行う制御ステップとを備え、前記制御ステップは、前記出力データが前記第2機能回路ブロックにおいて処理待ちを起こすか否かを判別する判別ステップを備え、前記処理待ちを起こすときは、前記出力データを前記機能プロセッサに送出することを特徴とする。
上記目的を達成するために、本発明の画像処理方法は、互いに直列に接続されると共に入力されるデータに夫々所定の画像処理をパイプラインで施す複数の機能回路ブロックと、前記複数の機能回路ブロックに接続された機能プロセッサとを備える画像処理装置の画像処理方法において、前記機能プロセッサ及び前記複数の機能回路ブロックの稼動状態を判定する稼動状態判定ステップと、前記判定された稼動状態に応じて前記所定の画像処理の少なくとも1つを前記機能プロセッサに行わせる制御を行う制御ステップとを備え、前記制御ステップは、前記機能プロセッサがコマンドの処理を行っているか否かを判別する他の判別ステップを備え、前記機能プロセッサが前記コマンドの処理を行っているときは、前記機能プロセッサが行っている前記コマンドの処理を終了させると共に前記コマンドの処理を前記第1機能回路ブロックに行わせることを特徴とする。
上記目的を達成するために、本発明の画像処理方法は、互いに直列に接続されると共に入力されるデータに夫々所定の画像処理をパイプラインで施す複数の機能回路ブロックと、前記複数の機能回路ブロックに接続された機能プロセッサとを備え、前記複数の機能回路ブロックは、第1機能回路ブロックと、前記第1機能回路ブロックの後段に接続される第2機能回路ブロックと、前記第2機能回路ブロックの後段に接続された第3機能回路ブロックを含む画像処理装置の画像処理方法において、前記機能プロセッサ及び前記複数の機能回路ブロックの稼動状態を判定する稼動状態判定ステップと、前記判定された稼動状態に応じて前記所定の画像処理の少なくとも1つを前記機能プロセッサに行わせる制御を行う制御ステップと、前記第1機能回路ブロック、前記第2機能回路ブロック、及び前記第3機能回路ブロックの出力データに夫々異なる優先順位を付加する優先順位付加ステップを備え、前記優先順位が付加された出力データを前記優先順位の順に処理することを特徴とする。
In order to achieve the above object, an image processing apparatus according to the present invention includes a plurality of functional circuit blocks that are connected in series to each other and that perform predetermined image processing on input data in a pipeline, and the plurality of functional circuits. In an image processing apparatus comprising a functional processor connected to a block, an operational state determining means for determining operational states of the functional processor and the plurality of functional circuit blocks, and the predetermined image according to the determined operational state Bei example and control means for at least one performs control to perform the function processor of the processing, the plurality of functional circuit blocks includes a first functional circuit block is connected to the subsequent stage of the first functional circuit block A second functional circuit block that receives the output data of the first functional circuit block, and the control means includes the output data Comprising a discriminating means for discriminating whether or not cause pending in 2 functional circuit blocks, when causing the processing wait is characterized by sending the output data to the function processor.
In order to achieve the above object, an image processing apparatus according to the present invention includes a plurality of functional circuit blocks that are connected in series to each other and that perform predetermined image processing on input data in a pipeline, and the plurality of functional circuits. In an image processing apparatus comprising a functional processor connected to a block, an operational state determining means for determining operational states of the functional processor and the plurality of functional circuit blocks, and the predetermined image according to the determined operational state Control means for performing control to cause the functional processor to perform at least one of processing, and the control means includes other determination means for determining whether or not the functional processor is processing a command, When the functional processor is processing the command, the processing of the command being performed by the functional processor is terminated. The process of Rutotomoni the command that is characterized in that to perform said first functional circuit block.
In order to achieve the above object, an image processing apparatus according to the present invention includes a plurality of functional circuit blocks that are connected in series to each other and that perform predetermined image processing on input data in a pipeline, and the plurality of functional circuits. In an image processing apparatus comprising a functional processor connected to a block, an operational state determining means for determining operational states of the functional processor and the plurality of functional circuit blocks, and the predetermined image according to the determined operational state Control means for performing control to cause the functional processor to perform at least one of processing, wherein the plurality of functional circuit blocks are a first functional circuit block and a second connected to a subsequent stage of the first functional circuit block. A functional circuit block; and a third functional circuit block connected to a subsequent stage of the second functional circuit block, The first functional circuit block, the second functional circuit block, and the third functional circuit block are provided with priority adding means for adding a priority to each output data, and the output data to which the priority is added is output. it comprises treating the order of the priority.
To achieve the above object, images processing method of the present invention includes a plurality of functional circuit blocks for performing each predetermined image processing pipeline data input is connected in series with each other, the plurality of functional A functional processor connected to the circuit block , wherein the plurality of functional circuit blocks are connected to a first functional circuit block and a subsequent stage of the first functional circuit block and output data of the first functional circuit block. In the image processing method of the image processing apparatus including the received second functional circuit block, an operation state determination step for determining an operation state of the functional processor and the plurality of functional circuit blocks, and the operation state determination step according to the determined operation state e Bei a control step of performing control to perform the function processor at least one of the predetermined image processing, the control step Comprises a determination step of said output data to determine whether cause pending in the second functional circuit block, when causing the processing waiting, to characterized in that sending the output data to the function processor The
To achieve the above object, images processing method of the present invention includes a plurality of functional circuit blocks for performing each predetermined image processing pipeline data input is connected in series with each other, the plurality of functional In an image processing method of an image processing apparatus comprising a functional processor connected to a circuit block, an operating state determining step for determining operating states of the functional processor and the plurality of functional circuit blocks, and depending on the determined operating state And a control step for controlling the function processor to perform at least one of the predetermined image processing, wherein the control step determines whether or not the function processor is processing a command. And when the functional processor is processing the command, the functional processor Processing said command together with the process ends of the command that is characterized in that to perform said first functional circuit block that.
In order to achieve the above object, an image processing method of the present invention includes a plurality of functional circuit blocks connected in series and performing predetermined image processing on input data in a pipeline, and the plurality of functional circuits. A functional processor connected to the block, wherein the plurality of functional circuit blocks include a first functional circuit block, a second functional circuit block connected to a subsequent stage of the first functional circuit block, and the second functional circuit. In the image processing method of the image processing apparatus including the third functional circuit block connected to the subsequent stage of the block, an operating state determining step for determining operating states of the functional processor and the plurality of functional circuit blocks, and the determined operation A control step for performing control to cause the functional processor to perform at least one of the predetermined image processing according to a state; and A priority adding step for adding different priorities to the output data of the functional circuit block, the second functional circuit block, and the third functional circuit block, respectively. It processes in order.
本発明によれば、プロセッサ及び複数の機能回路ブロックの稼動状態を判定し、判定された稼動状態に応じて所定の画像処理の少なくとも1つをプロセッサに行わせる制御を行うので、パイプライン処理による画像処理を高速化することができる。 According to the present invention, the operation state of the processor and the plurality of functional circuit blocks is determined, and control is performed to cause the processor to perform at least one of predetermined image processing according to the determined operation state. Image processing can be speeded up.
以下、本発明の実施の形態を図面を用いて詳述する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
図1は、本発明の実施の形態に係る画像処理装置の構成を概略的に示すブロック図である。 FIG. 1 is a block diagram schematically showing a configuration of an image processing apparatus according to an embodiment of the present invention.
図1において、画像処理装置としてのPDL画像処理装置1は、プロセッサ400と、データバス8,11、コマンドバス5、及びプロセッサ制御線17を介してプロセッサ400と接続された第1機能回路ブロック100と、データバス9,12及びプロセッサ制御線18を介してプロセッサ400に接続されると共にコマンドバス6及びブロック制御線15を介して第1機能回路ブロック100に接続された第2機能回路ブロック200と、データバス10,13を介して第2機能回路ブロック200に接続されると共にコマンドバス7及びブロック制御線16を介して第2機能回路ブロック200に接続された第3機能回路ブロック300と、データバス19に接続されたシステムメモリ500とを備え、プロセッサ400、第3機能回路ブロック14は、夫々データバス20,14を介してデータバス19に接続される。
In FIG. 1, a PDL image processing apparatus 1 as an image processing apparatus includes a
第1機能回路ブロック100は、入力されたPDL画像データ中のオブジェクトのエッジをトラッキングして各オブジェクトのエッジ検出を行い、第2機能回路ブロック200は、第1機能回路ブロック100によって検出された各オブジェクトのエッジの情報に基づき、各オブジェクト間の重なりを判定すると共に可視オブジェクトを決定するレベル判定を行い、第3機能回路ブロック300は、第2機能回路ブロック200によって決定された可視オブジェクトの彩色処理を行い、プロセッサ400は、コマンド受信バッファ(不図示)を備え各機能回路ブロック100,200,300の処理をソフトウェアによってエミュレートすると共にPDL画像処理装置1全体の初期化及びエラー処理等を行う。
The first
第1機能回路ブロック100は、プロセッサ400の処理結果及び出力データをコマンドとしてデータバス8を介して受信し、プロセッサ400が送出したコマンドをコマンドバス5を介して受信し、プロセッサ400のコマンド受信バッファの状態を示すプロセッサ制御信号をプロセッサ制御線17を介して受信し、第2機能回路ブロック200のコマンド受信バッファである後述するコマンドバッファ201の状態を示すブロック制御信号をブロック制御線15を介して受信する。
The first
第2機能回路ブロック200は、プロセッサ400の処理結果及びコマンドをデータバス9を介して受信し、第1機能回路ブロック100が送出したコマンドをコマンドバス6を介して受信し、プロセッサ400のコマンド受信バッファの状態を示すプロセッサ制御信号をプロセッサ制御線18を介して受信し、第3機能回路ブロック300のコマンド受信バッファの状態を示すブロック制御信号をブロック制御線16を介して受信する。
The second
第3機能回路ブロック300は、プロセッサ400の処理結果及びコマンドをデータバス10を介して受信し、第2機能回路ブロック200が送出したコマンドをコマンドバス7を介して受信し、コマンドをデータバス14を介してシステムバス19に送出する。
The third
図2は、図1のPDL画像処理装置の構成を詳細に示すブロック図である。 FIG. 2 is a block diagram showing in detail the configuration of the PDL image processing apparatus of FIG.
図2において、第1機能回路ブロック100は、コマンドバス5に接続されたコマンドバッファ101と、コマンドバッファ201に接続されたコマンド制御部102と、データバス8及びコマンドバッファ101が入力端に接続されたセレクタ103と、プロセッサ制御線17に接続されると共にブロック制御線15を介して後述するコマンド制御部202に接続された出力制御部105と、セレクタ103の出力端及び出力制御部105に接続された演算回路104と、演算回路104及び出力制御部105が入力端に接続されると共にデータバス11及び後述するコマンドバッファ201が出力端に接続されたセレクタ106とを備える。
In FIG. 2, the first
第2機能回路ブロック200は、コマンドバス6に接続されたコマンドバッファ201と、コマンドバッファ201及びブロック制御線15に接続されたコマンド制御部202と、データバス9及びコマンドバッファ201が入力端に接続されたセレクタ203と、プロセッサ制御線18に接続されると共にブロック制御線16を介して第3機能回路ブロック300が備えるコマンド制御部(不図示)に接続された出力制御部205と、セレクタ203の出力端及び出力制御部205に接続された演算回路204と、演算回路204及び出力制御部205が入力端に接続されると共にデータバス12及び第3機能回路ブロック300が備えるコマンドバッファ(不図示)が出力端に接続されたセレクタ206とを備える。
The second
第3機能回路ブロック300も、第1機能回路ブロック100及び第2機能回路ブロック200と同様の構成である。
The third
セレクタ103は、コマンドバッファ101の出力及びプロセッサ400の出力の一方を出力し、演算回路104は、入力されたデータのエッジ検出演算を行い、セレクタ106は、出力制御部105の制御に基づいて、演算回路104によって演算されたデータを、プロセッサ400及びコマンドバッファ201の一方に出力する。
The
出力制御部105は、プロセッサ400のコマンドバッファの空き状況情報であるプロセッサ制御信号をプロセッサ400から受信し、コマンドバッファ201の空き状況情報であるブロック制御信号をコマンド制御部202から受信し、受信したプロセッサ制御信号及びブロック制御信号に基づいてセレクタ106を制御する。
The
コマンド制御部202は、コマンドバッファ201の空き状態情報を出力制御部105に知らせ、セレクタ203は、コマンドバッファ201の出力及びプロセッサ400の出力の一方を出力し、演算回路204は、入力されたデータのレベル判定演算を行い、セレクタ206は、出力制御部205の制御に基づいて、演算回路204によって演算されたデータを、プロセッサ400及び第3機能回路ブロック300が備えるコマンドバッファの一方に出力する。
The
出力制御部205は、プロセッサ400のコマンドバッファの空き状況情報であるプロセッサ制御信号をプロセッサ400から受信し、第3機能回路ブロック300が備えるコマンドバッファの空き状況情報であるブロック制御信号を第3機能回路ブロック300が備えるコマンド制御部から受信し、受信したプロセッサ制御信号及びブロック制御信号に基づいてセレクタ206を制御する。
The
プロセッサ400は、各機能ブロック100,200,300の処理をエミュレートして、各機能ブロック100,200,300から夫々送られるコマンドに所定の処理を施す。
The
入力されたPDL画像データの中のオブジェクトは、各機能回路ブロック100,200,300によるパイプライン処理によって逐次的に処理されるが、その際、各機能回路ブロック100,200,300は、夫々後段の機能回路ブロックにPDL画像データへのポインタ及び処理モード等、処理に必要となる情報を含むコマンドを送出する。 Objects in the input PDL image data are sequentially processed by pipeline processing by the functional circuit blocks 100, 200, and 300. At this time, the functional circuit blocks 100, 200, and 300 A command including information necessary for processing, such as a pointer to PDL image data and a processing mode, is sent to the functional circuit block.
図2のPDL画像処理装置1によれば、出力制御部105は、プロセッサ400のコマンドバッファの空き状況情報であるプロセッサ制御信号と、コマンドバッファ201の空き状況情報であるブロック制御信号とに基づいてセレクタ106を制御するので、ソフトウェアとハードウェアで負荷分散を行うことによりPDL画像処理装置1全体のスループットを向上させることができ、もってPDL画像処理装置1全体の処理速度を高速化することができる。
According to the PDL image processing apparatus 1 of FIG. 2, the
また、PDL画像処理装置1の回路規模を増大させることなく複雑な画像に対応することができるので、PDL画像処理装置1全体のコストパフォーマンスの低下を防ぐことができる。 In addition, since it is possible to deal with complicated images without increasing the circuit scale of the PDL image processing apparatus 1, it is possible to prevent a decrease in cost performance of the entire PDL image processing apparatus 1.
図3は、図2における第1機能回路ブロックによって実行されるコマンド処理の手順を示すフローチャートである。 FIG. 3 is a flowchart showing a procedure of command processing executed by the first functional circuit block in FIG.
図3において、第1機能回路ブロック100は、コマンドバッファ101に有効なコマンドが入力されると(ステップS401でYES)、入力されたコマンドが有する制御情報をデコードする(ステップS402)。このとき、制御情報中のコマンド出力先ビットには、第1機能回路ブロック100が直前に出力したコマンドの出力先情報が含まれており、当該出力先情報を参照して、プロセッサ400が、入力されたコマンドより古いコマンドの処理を行っているか否かを判別し(ステップS403)、プロセッサ400が、入力されたコマンドより古いコマンドの処理を行っているときは、プロセッサ400の処理状態を参照して、プロセッサ400が、入力されたコマンドより古いコマンドの処理を終了したか否かを判別し(ステップS404)(他の判別手段)、入力されたコマンドより古いコマンドの処理が終了しているときは、プロセッサ400からデータバス8を介して、入力されたコマンドより古いコマンドの処理結果を読み込み(ステップS405)、出力制御部105は、ブロック制御信号線15と、プロセッサ制御信号線17からの信号に基づいて、プロセッサ400と第2機能回路ブロック200の少なくとも一方にコマンド受信可能なバッファがあるか否かを判別する(ステップS406)。
In FIG. 3, when a valid command is input to the command buffer 101 (YES in step S401), the first
ステップS406の判別の結果、プロセッサ400と第2機能回路ブロック200の少なくとも一方にコマンド受信可能なバッファがないときは、プロセッサ400のコマンドバッファとコマンドバッファ201の少なくとも一方が空くまでステップS406の処理を繰り返して待機(ストール)し、プロセッサ400と第2機能回路ブロック200の少なくとも一方にコマンド受信可能なバッファがあるときは、コマンドバッファ201にコマンド受信可能なバッファがあるか否かを判別し(ステップS407)(稼動状態判定手段、制御手段、判別手段)、コマンドバッファ201にコマンド受信可能なバッファがないとき、つまり、第1機能回路ブロック100からの出力コマンドを第2機能回路ブロック200が受信できない現象であるパイプラインのストールが起こったときは、プロセッサ400にデータバス11を介してコマンドを出力し(ステップS413)、プロセッサ400へのコマンド出力があったことを示すフラグを出力制御部105に設定し、第1機能回路ブロック100が次に出力するコマンドの制御情報に、第1機能回路ブロック100が直前に出力したコマンドの出力先がプロセッサ400であることを示す出力先情報を付加して(ステップS414)、本処理を終了する。
If it is determined in step S406 that at least one of the
ステップS407の判別の結果、コマンドバッファ201にコマンド受信可能なバッファがあるときは、コマンドバス6を介してコマンドバッファ201にコマンドを出力して(ステップS408)、本処理を終了する。
If it is determined in step S407 that there is a buffer capable of receiving commands in the
ステップS403の判別の結果、プロセッサ400が、入力されたコマンドより古いコマンドの処理を行っていないときは、演算回路104は、入力されたコマンドに対する演算を行い(ステップS409)、ステップS406以降の処理を実行して第2機能回路ブロック200及びプロセッサ400のいずれか一方にコマンドを出力する。
As a result of the determination in step S403, when the
ステップS404の判別の結果、入力されたコマンドより古いコマンドの処理が終了していないときは、データバス11を用いてプロセッサ400の処理を中断し(ステップS410)、演算回路104は、データバス8を介してプロセッサ400に出力されたコマンドを読み込み(ステップS411)、読み込まれたコマンドに対応する所定の演算を行って(ステップS412)、ステップS406以降の処理を実行して、第2機能回路ブロック200及びプロセッサ400のいずれか一方にコマンドを出力する。これにより、第1機能回路ブロック100は、プロセッサ400が処理しているコマンドを優先して処理することができ、もってPDL画像処理装置1全体のスループットを向上させることができる。
As a result of the determination in step S404, if the processing of the command older than the input command has not been completed, the processing of the
図3のフローチャートは、第1機能回路ブロック100に入力されたコマンドの処理の手順を示しているが、第2機能回路ブロック200入力されたコマンドも同様に処理される。
The flowchart of FIG. 3 shows the processing procedure of the command input to the first
プロセッサ400は、図3のコマンド処理により、第1機能回路ブロック100、第2機能回路ブロック200、及び第3機能回路ブロック300から出力されたコマンドを、夫々データバス11,12,13を介して受信し、当該コマンドの処理を行うが、この際、受信したコマンドに優先順位をつけ(優先順位付加手段)、優先順位の高いコマンドを優先して処理する。これにより、各機能回路ブロック及びプロセッサ400によってコマンドを処理する際、時分割処理よりも速く処理することができ、パイプラインストールが起きたときの待ち時間を短くすることができ、もって効率よく負荷分散を行うことができると共にPDL画像処理装置1全体のスループットを向上させることができる。
The
また、プロセッサ400は小規模なものであり、各機能回路ブロックは、プロセッサ400がアイドル状態のときにコマンドをプロセッサ400に出力して負荷分散を行うので、処理する画像の部位によってコマンドの処理内容や処理負荷が変化するPDL画像処理装置1においても、少ない追加回路で複雑な画像に対する処理速度を向上させることができる。
The
さらに、画像処理が複数の機能回路ブロックに分割された場合においても、画像処理回路内の負荷状況に応じて必要な部分の負荷分散を行うことができ、PDL画像処理装置1全体のスループットをより向上させることができる。 Furthermore, even when the image processing is divided into a plurality of functional circuit blocks, it is possible to perform load distribution of necessary portions according to the load status in the image processing circuit, and to further increase the throughput of the PDL image processing apparatus 1 as a whole. Can be improved.
図3の処理によれば、コマンドバッファ201にコマンド受信可能なバッファがないときは(ステップS407でNO)、プロセッサ400にデータバス11を介してコマンドを出力し(ステップS413)、コマンドバッファ201にコマンド受信可能なバッファがあるときは、コマンドバス6を介してコマンドバッファ201にコマンドを出力する(ステップS408)ので、後段の機能回路ブロックの終了待ち時間を短縮することができ、負荷分散することができると共にPDL画像処理装置1全体のスループットを向上させることができ、もってPDL画像処理装置1全体の処理速度を高速化することができる。
According to the processing of FIG. 3, when there is no command receivable buffer in the command buffer 201 (NO in step S407), the command is output to the
本実施の形態では、パイプライン処理を行う機能回路ブロックは3段であるが、3段に限ることはなく、何段であってもよい。 In this embodiment, the functional circuit block that performs pipeline processing is three stages, but is not limited to three stages, and may have any number of stages.
これにより、高負荷状態の機能回路ブロックがコマンド発行処理のための余分な処理を行う必要がなく、高付加状態の機能回路ブロックの処理が他の処理の割り込み等で中断されるのを防ぐことができる。 As a result, it is not necessary for the functional circuit block in the high load state to perform extra processing for command issue processing, and the processing of the functional circuit block in the high addition state is prevented from being interrupted by an interrupt of other processing. Can do.
また、本発明の目的は、実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出して実行することによっても達成される。 In addition, an object of the present invention is to supply a storage medium storing software program codes for realizing the functions of the embodiment to a system or apparatus, and a computer (or CPU, MPU, etc.) of the system or apparatus as a storage medium. This can also be achieved by reading and executing the stored program code.
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。 In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the program code and the storage medium storing the program code constitute the present invention.
又、プログラムコードを供給するための記憶媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、DVD−RW、DVD+RW、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。または、プログラムコードをネットワークを介してダウンロードしてもよい。 Examples of the storage medium for supplying the program code include a floppy (registered trademark) disk, a hard disk, a magneto-optical disk, a CD-ROM, a CD-R, a CD-RW, a DVD-ROM, a DVD-RAM, and a DVD. -RW, DVD + RW, magnetic tape, nonvolatile memory card, ROM, etc. can be used. Alternatively, the program code may be downloaded via a network.
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。 Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an OS (operating system) running on the computer based on an 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等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。 Further, after the program code read from the storage medium is written in a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. This includes the case where the CPU or the like provided in the board 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.
1 PDL画像処理装置
100 第1機能回路ブロック
200 第2機能回路ブロック
300 第3機能回路ブロック
400 プロセッサ
500 システムメモリ
5,6,7,14 コマンドバス
8,9,10,11,12,13 データバス
15,16 ブロック制御線
17,18 プロセッサ制御線
101,201 コマンドバッファ
102,202 コマンド制御部
103,203 セレクタ
104,204 演算回路
105,205 出力制御部
DESCRIPTION OF SYMBOLS 1 PDL
Claims (8)
前記機能プロセッサ及び前記複数の機能回路ブロックの稼動状態を判定する稼動状態判定手段と、
前記判定された稼動状態に応じて前記所定の画像処理の少なくとも1つを前記機能プロセッサに行わせる制御を行う制御手段とを備え、
前記複数の機能回路ブロックは、第1機能回路ブロックと、前記第1機能回路ブロックの後段に接続されると共に前記第1機能回路ブロックの出力データを受取る第2機能回路ブロックとを含み、
前記制御手段は、前記出力データが前記第2機能回路ブロックにおいて処理待ちを起こすか否かを判別する判別手段を備え、前記処理待ちを起こすときは、前記出力データを前記機能プロセッサに送出することを特徴とする画像処理装置。 In an image processing apparatus comprising a plurality of functional circuit blocks connected in series with each other and performing predetermined image processing on input data in a pipeline, and a functional processor connected to the plurality of functional circuit blocks,
Operating state determination means for determining an operating state of the functional processor and the plurality of functional circuit blocks;
E Bei and control means for performing control to perform at least one of the predetermined image processing in accordance with the determined operating state to said function processor,
The plurality of functional circuit blocks include a first functional circuit block and a second functional circuit block connected to a subsequent stage of the first functional circuit block and receiving output data of the first functional circuit block;
The control means includes a determination means for determining whether or not the output data causes a processing wait in the second functional circuit block, and when the processing waits, the output data is sent to the functional processor. An image processing apparatus.
前記機能プロセッサ及び前記複数の機能回路ブロックの稼動状態を判定する稼動状態判定手段と、
前記判定された稼動状態に応じて前記所定の画像処理の少なくとも1つを前記機能プロセッサに行わせる制御を行う制御手段とを備え、
前記制御手段は、前記機能プロセッサがコマンドの処理を行っているか否かを判別する他の判別手段を備え、前記機能プロセッサが前記コマンドの処理を行っているときは、前記機能プロセッサが行っている前記コマンドの処理を終了させると共に前記コマンドの処理を前記第1機能回路ブロックに行わせることを特徴とする画像処理装置。 In an image processing apparatus comprising a plurality of functional circuit blocks connected in series with each other and performing predetermined image processing on input data in a pipeline, and a functional processor connected to the plurality of functional circuit blocks,
Operating state determination means for determining an operating state of the functional processor and the plurality of functional circuit blocks;
Control means for performing control to cause the functional processor to perform at least one of the predetermined image processing according to the determined operating state;
The control means includes other determination means for determining whether or not the functional processor is processing a command, and when the functional processor is processing the command, the functional processor is performing images processor you characterized in that to perform processing of the command to the first functional circuit block with the process ends the command.
前記機能プロセッサ及び前記複数の機能回路ブロックの稼動状態を判定する稼動状態判定手段と、
前記判定された稼動状態に応じて前記所定の画像処理の少なくとも1つを前記機能プロセッサに行わせる制御を行う制御手段とを備え、
前記複数の機能回路ブロックは、第1機能回路ブロックと、前記第1機能回路ブロックの後段に接続される第2機能回路ブロックと、前記第2機能回路ブロックの後段に接続された第3機能回路ブロックを含み、
前記機能プロセッサは、前記第1機能回路ブロック、前記第2機能回路ブロック、及び前記第3機能回路ブロックの各出力データに夫々優先順位を付加する優先順位付加手段を備えると共に、前記優先順位が付加された出力データを前記優先順位の順に処理することを特徴とする画像処理装置。 In an image processing apparatus comprising a plurality of functional circuit blocks connected in series with each other and performing predetermined image processing on input data in a pipeline, and a functional processor connected to the plurality of functional circuit blocks,
Operating state determination means for determining an operating state of the functional processor and the plurality of functional circuit blocks;
Control means for performing control to cause the functional processor to perform at least one of the predetermined image processing according to the determined operating state;
The plurality of functional circuit blocks include a first functional circuit block, a second functional circuit block connected to the subsequent stage of the first functional circuit block, and a third functional circuit connected to the subsequent stage of the second functional circuit block. Including blocks,
The functional processor includes priority adding means for adding a priority to each output data of the first functional circuit block, the second functional circuit block, and the third functional circuit block, and the priority is added. images processor characterized by processing the output data in order of the priority.
前記機能プロセッサ及び前記複数の機能回路ブロックの稼動状態を判定する稼動状態判定ステップと、
前記判定された稼動状態に応じて前記所定の画像処理の少なくとも1つを前記機能プロセッサに行わせる制御を行う制御ステップとを備え、
前記制御ステップは、前記出力データが前記第2機能回路ブロックにおいて処理待ちを起こすか否かを判別する判別ステップを備え、前記処理待ちを起こすときは、前記出力データを前記機能プロセッサに送出することを特徴とする画像処理方法。 A plurality of functional circuit blocks connected in series to each other and performing predetermined image processing on input data in a pipeline, and a functional processor connected to the plurality of functional circuit blocks, the plurality of functional circuits In the image processing method of the image processing apparatus , the block includes a first functional circuit block and a second functional circuit block connected to a subsequent stage of the first functional circuit block and receiving output data of the first functional circuit block . ,
An operational state determination step of determining operational states of the functional processor and the plurality of functional circuit blocks;
E Bei a control step of performing control to perform at least one of the predetermined image processing in accordance with the determined operating state to said function processor,
The control step includes a determination step of determining whether or not the output data causes a process waiting in the second functional circuit block, and when the process waits, the output data is sent to the function processor. images processing how to said.
前記機能プロセッサ及び前記複数の機能回路ブロックの稼動状態を判定する稼動状態判定ステップと、
前記判定された稼動状態に応じて前記所定の画像処理の少なくとも1つを前記機能プロセッサに行わせる制御を行う制御ステップとを備え、
前記制御ステップは、前記機能プロセッサがコマンドの処理を行っているか否かを判別する他の判別ステップを備え、前記機能プロセッサが前記コマンドの処理を行っているときは、前記機能プロセッサが行っている前記コマンドの処理を終了させると共に前記コマンドの処理を前記第1機能回路ブロックに行わせることを特徴とする画像処理方法。 Image processing of an image processing apparatus comprising: a plurality of functional circuit blocks connected in series to each other and subjected to predetermined image processing on input data by a pipeline; and a functional processor connected to the plurality of functional circuit blocks In the method
An operational state determination step of determining operational states of the functional processor and the plurality of functional circuit blocks;
A control step of performing control to cause the functional processor to perform at least one of the predetermined image processing according to the determined operating state,
The control step includes another determination step of determining whether or not the functional processor is processing a command, and when the functional processor is processing the command, the functional processor is performing images processing how to characterized in that to perform the processing of the command to the first functional circuit block with the process ends the command.
前記機能プロセッサ及び前記複数の機能回路ブロックの稼動状態を判定する稼動状態判定ステップと、
前記判定された稼動状態に応じて前記所定の画像処理の少なくとも1つを前記機能プロセッサに行わせる制御を行う制御ステップと、
前記第1機能回路ブロック、前記第2機能回路ブロック、及び前記第3機能回路ブロックの出力データに夫々異なる優先順位を付加する優先順位付加ステップを備え、
前記優先順位が付加された出力データを前記優先順位の順に処理することを特徴とする画像処理方法。 A plurality of functional circuit blocks connected in series to each other and performing predetermined image processing on input data in a pipeline, and a functional processor connected to the plurality of functional circuit blocks, the plurality of functional circuits The block includes a first functional circuit block, a second functional circuit block connected to the subsequent stage of the first functional circuit block, and a third functional circuit block connected to the subsequent stage of the second functional circuit block. In the image processing method of the apparatus,
An operational state determination step of determining operational states of the functional processor and the plurality of functional circuit blocks;
A control step for performing control to cause the functional processor to perform at least one of the predetermined image processing according to the determined operating state;
A priority order adding step of adding different priorities to the output data of the first functional circuit block, the second functional circuit block, and the third functional circuit block,
Images processing how to characterized by processing the output data of the priority is added sequentially of the priority.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005065649A JP4522292B2 (en) | 2005-03-09 | 2005-03-09 | Image processing apparatus and image processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005065649A JP4522292B2 (en) | 2005-03-09 | 2005-03-09 | Image processing apparatus and image processing method |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2006252014A JP2006252014A (en) | 2006-09-21 |
JP2006252014A5 JP2006252014A5 (en) | 2008-04-17 |
JP4522292B2 true JP4522292B2 (en) | 2010-08-11 |
Family
ID=37092460
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005065649A Expired - Fee Related JP4522292B2 (en) | 2005-03-09 | 2005-03-09 | Image processing apparatus and image processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4522292B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5274075B2 (en) * | 2008-03-31 | 2013-08-28 | キヤノン株式会社 | Image forming apparatus, image forming processing method, and program |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000353152A (en) * | 1999-06-11 | 2000-12-19 | Nec Software Kobe Ltd | Graphic processor |
-
2005
- 2005-03-09 JP JP2005065649A patent/JP4522292B2/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000353152A (en) * | 1999-06-11 | 2000-12-19 | Nec Software Kobe Ltd | Graphic processor |
Also Published As
Publication number | Publication date |
---|---|
JP2006252014A (en) | 2006-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10877766B2 (en) | Embedded scheduling of hardware resources for hardware acceleration | |
JP5167844B2 (en) | Processor, electronic device, interrupt control method, and interrupt control program | |
US20050188178A1 (en) | Vector processing apparatus with overtaking function | |
US20140196034A1 (en) | Virtual machine control apparatus and virtual machine control method | |
US9342477B2 (en) | Multi-core processor, controlling method thereof and computer system with such processor | |
JP4522292B2 (en) | Image processing apparatus and image processing method | |
JP2007058786A (en) | Bridge and its control method | |
US10909270B2 (en) | Information processing device, mobile object, information processing method, and computer program product | |
US20220156211A1 (en) | Dynamic provisioning of pcie devices at run time for bare metal servers | |
US10769090B2 (en) | Information processing apparatus, control method of information processing, and non-transitory computer-readable storage medium for storing program | |
JP2005258509A (en) | Storage device | |
JP4597032B2 (en) | Computer system, basic program startup method, and loader program | |
CN112052439A (en) | Access right control method and device of embedded system and storage medium | |
JP2970082B2 (en) | Virtual intercluster communication processor | |
JP7470685B2 (en) | Programming and Controlling Computational Units in Integrated Circuits | |
JP3123946B2 (en) | Microcomputer | |
JP3140328U (en) | Bus logic gate circuit that processes multiple interrupt request signals | |
JP5561294B2 (en) | Microcomputer | |
JP6940283B2 (en) | DMA transfer control device, DMA transfer control method, and DMA transfer control program | |
JP2007087244A (en) | Co-processor and computer system | |
JP6138482B2 (en) | Embedded system | |
JPH10198524A (en) | Hard disk controller | |
JP3777304B2 (en) | Micro program loading method | |
JP2004118235A (en) | Data processor | |
JPH10247147A (en) | Virtual computer system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD05 | Notification of revocation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7425 Effective date: 20070626 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080229 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080229 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100210 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100216 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100414 |
|
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: 20100510 |
|
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 |