JP2012120179A - Image processing apparatus and method - Google Patents
Image processing apparatus and method Download PDFInfo
- Publication number
- JP2012120179A JP2012120179A JP2011275079A JP2011275079A JP2012120179A JP 2012120179 A JP2012120179 A JP 2012120179A JP 2011275079 A JP2011275079 A JP 2011275079A JP 2011275079 A JP2011275079 A JP 2011275079A JP 2012120179 A JP2012120179 A JP 2012120179A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- command
- data
- output
- register
- 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.)
- Granted
Links
Images
Abstract
Description
本発明は、コマンド及びデータを多重化して、共通のデータバスによりそれらの入出力を行なう画像処理装置及び方法に関する。 The present invention relates to an image processing apparatus and method for multiplexing commands and data and inputting / outputting them through a common data bus.
従来技術として、データの入出力を行なう為のデータバスと、レジスタ設定を行なう為のCPUバスが別々に設けられた画像処理装置が知られている。この種の画像処理装置においては、割り込み信号を用いた制御方式により、特定のデータ単位(ページ、ブロック、バンド等)で処理に用いるパラメータを変更したり、内部状態を示すレジスタのリード動作を行なったりしていた。そして、このような割り込み処理の実行中では、データ転送を止めていた。 As a prior art, there is known an image processing apparatus in which a data bus for inputting / outputting data and a CPU bus for setting registers are separately provided. In this type of image processing apparatus, parameters used for processing are changed in a specific data unit (page, block, band, etc.) or a register reading operation indicating an internal state is performed by a control method using an interrupt signal. I was doing. During the execution of such interrupt processing, data transfer was stopped.
また、特許文献1では、映像データの各フレームのスキャンラインの先頭に制御コマンドを付加して、映像データに制御コマンドを多重化し伝送を行なうことにより、各フレームに同期した制御を行なっている。
In
しかしながら、割り込み信号を用いた制御方式では、転送中の任意のデータ間で、画像処理に用いるフィルタ係数や二値化用閾値等のパラメータを変更したり、内部状態を示すレジスタのリード動作を実行したりすることは困難であった。又、出来たとしても、割り込み処理中はデータ転送を止める必要があり、処理が低速になってしまうという課題があった。さらに特許文献1に記載された技術では、フレームごとにパラメータの変更やレジスタのリード動作を行なうことは可能であるが、フレーム内の任意のデータ間でのパラメータ変更やレジスタのリード動作を行なうことは困難であった。特許文献1においても、スキャンライン毎に制御コマンドを伝送することができるものの、データ転送中の任意のタイミングでコマンドによる処理を実行させることはできない。
However, in the control method using the interrupt signal, parameters such as the filter coefficient used for image processing and the threshold for binarization are changed between arbitrary data being transferred, and the register read operation indicating the internal state is executed. It was difficult to do. Even if it can be done, it is necessary to stop the data transfer during the interrupt processing, which causes a problem that the processing becomes slow. Furthermore, in the technique described in
本発明は、上記の課題に鑑みてなされたものであり、データ転送中の任意のデータ間でコマンドに応じた処理を実行可能な画像処理装置及びその方法を提供することを目的とする。 The present invention has been made in view of the above problems, and an object thereof is to provide an image processing apparatus and method capable of executing processing according to a command between arbitrary data during data transfer.
上記の目的を達成するための本発明の一態様によるデータ処理方法は、
それぞれが処理部を有する複数の処理ブロックが共通バスによって直列に接続された画像処理装置における当該複数の処理ブロックのそれぞれにより実行される画像処理方法であって、
前記共通バスを介して当該処理ブロックに入力されたデータを用いた画像処理を、当該処理ブロックの処理部により行なうデータ処理工程と、
前記共通バスを介して当該処理ブロックに入力されたコマンドに応じた処理を、当該処理ブロックの処理部に対して行なうコマンド処理工程と、
前記共通バスを介して第1の処理ブロックに入力される第1のコマンドについて、当該第1のコマンドの前に前記第1の処理ブロックへ入力されたデータに基づくデータ処理によるデータ出力が完了するまで、前記第1の処理ブロックから当該第1のコマンドを出力することを遅延させる遅延工程とを有する。
In order to achieve the above object, a data processing method according to an aspect of the present invention includes:
An image processing method executed by each of a plurality of processing blocks in an image processing apparatus in which a plurality of processing blocks each having a processing unit are connected in series by a common bus,
A data processing step in which image processing using data input to the processing block via the common bus is performed by a processing unit of the processing block;
A command processing step for performing processing corresponding to a command input to the processing block via the common bus to a processing unit of the processing block;
For the first command input to the first processing block via the common bus, the data output by the data processing based on the data input to the first processing block before the first command is completed. And a delay step for delaying the output of the first command from the first processing block.
本発明によれば、データ転送中の任意のデータ間でコマンドに応じた処理を実行することが可能となる。 According to the present invention, it is possible to execute processing according to a command between arbitrary data during data transfer.
以下、添付の図面を参照して本発明の好適な実施形態を説明する。 Hereinafter, preferred embodiments of the present invention will be described with reference to the accompanying drawings.
図1に、データ処理装置としての本実施形態による画像処理装置10の構成図を示す。100は送信部であり、コマンドワード及びデータワードを多重化して送信する。101〜103は画像処理ブロックであり、図示の如く直列に接続され、それぞれが所定の画像処理を行なう。以下、処理ブロック101〜103と記載する。104は受信部であり、コマンドワード及びデータワードを受信して、終了信号105を送信部100へ送信する。11はCPUであり、画像処理装置10を利用して、例えば印刷装置等の画像処理装置10が組み込まれる装置を制御する。12はDRAMであり、処理対象となる画像データを格納する。13はDMACであり、DRAM12から画像処理装置10への画像データの直接的な転送を制御する。
FIG. 1 shows a configuration diagram of an
次に図2〜図5を用いてコマンドワード及びデータワードのフォーマットを説明する。なお、コマンドワード及びデータワードは所定のビット長を有しており、本実施形態では64ビットで構成されているものとする。以下、コマンドワードをコマンド、データワードをデータと記載する。 Next, the format of the command word and the data word will be described with reference to FIGS. Note that the command word and the data word have a predetermined bit length, and in this embodiment are assumed to be composed of 64 bits. Hereinafter, a command word is referred to as a command, and a data word is referred to as data.
図2は入力コマンドのフォーマットの一例を示す。入力コマンドフォーマット200において、MSBを63ビット目、LSBを0ビット目とする。63ビット目はコマンド及びデータを識別する為のmodeフラグ201(属性データ)であり、0の場合はデータを、1の場合はコマンドを示す。56〜60ビット目は入力コマンドが適用される処理ブロック番号を示す処理ブロックID202である。なお、後述するように各処理ブロックにはそれぞれを特定するための識別データとしての処理ブロックIDが割り当てられており、処理ブロックID202と一致する処理ブロックのみにおいて、当該コマンドが実行される。55ビット目はレジスタのリードライトを指定するためのRWフラグ203である。32〜47ビット目はレジスタのアドレス204である。0〜31ビット目はレジスタデータ205のためのデータ領域である。ここで、レジスタデータ205の値は、リードコマンド時(RWフラグ203が0の時)は“0”であり、ライトコマンド時(RWフラグ203が1の時)はライトされるレジスタ値である。48〜54ビット目及び61、62ビット目は使用不可のリザーブド領域206である。以上のようにして、コマンドは、アクセスするレジスタへのデータ書き込みあるいはレジスタからのデータ読み出しを指示する。
FIG. 2 shows an example of the format of the input command. In the
また、図3は入力データのフォーマットの一例を示す。入力データフォーマット300において、MSBを63ビット目、LSBを0ビット目とする。63ビット目はコマンド及びデータを識別する為のmodeフラグ201(属性データ)であり、0の場合はデータを、1の場合はコマンドを示す。56ビット目は所定のデータ単位で(ページ、ブロック、バンド等の所定の範囲のデータを単位として)画像処理される最初のデータを示すstartフラグである。55ビット目は画像処理される最後のデータを示すendフラグ303である。0〜47ビット目は画像処理されるデータ304である。48〜54ビット目及び57〜62ビット目は、使用不可のリザーブド領域305である。
FIG. 3 shows an example of the format of input data. In the
図4は出力コマンドのフォーマットの一例を示す。出力コマンドフォーマット400において、MSBを63ビット目、LSBを0ビット目とする。63ビット目はコマンド及びデータを識別する為のmodeフラグ401(属性データ)であり、0の場合はデータを、1の場合はコマンドを示す。56〜60ビットはコマンドが適用された処理ブロック番号を示す処理ブロックID402である。55ビット目は、レジスタのリードライトを指定するためのRWフラグ203であるRWフラグ403である。32〜47ビット目はレジスタのアドレス404である。0〜31ビット目はレジスタデータ405のためのデータ領域である。ここで、レジスタデータ405の値はリードコマンド時(RWフラグ403が0の場合)はリードされたレジスタ値であり、ライトコマンド時(RWフラグ403が1の場合)は入力コマンドフォーマット200のレジスタデータ205の値である。48〜54ビット目及び61、62ビット目はリザーブド領域406である。
FIG. 4 shows an example of the format of the output command. In the
また、図5は出力データのフォーマットの一例を示す。出力データフォーマット500において、MSBを63ビット目、LSBを0ビット目とする。63ビット目は、コマンド及びデータを識別する為のmodeフラグ501(属性データ)であり、0の場合はデータを、1の場合はコマンドを示す。56ビット目は所定のデータ単位(ページ、ブロック、バンド等)で画像処理された最初のデータであることを示すstartフラグ502である。55ビット目は画像処理された最後のデータであることを示すendフラグ503である。0〜47ビット目は画像処理されたデータ504である。48〜54ビット目及び57〜62ビット目はリザーブド領域505である。
FIG. 5 shows an example of the format of output data. In the
尚、処理ブロック101〜103は、後述するように、入力コマンド/入力データを出力コマンド/出力データに変換する。入力コマンド及び入力データはそれぞれ入力コマンドフォーマット200、入力データフォーマット300を有する。また、出力コマンド及び出力データはそれぞれ出力コマンドフォーマット400、出力データフォーマット500を有する。通常、処理ブロックがmodeフラグ変更を行なうことは無い為、変換前後においてmodeフラグ201とmodeフラグ401の値は等しくかつ、modeフラグ301とmodeフラグ501の値は等しい値である。同様に処理ブロックID202と処理ブロックID402は等しく、RWフラグ203とRWフラグ403は等しく、アドレス204とアドレス404は等しい。
The processing blocks 101 to 103 convert input commands / input data into output commands / output data as will be described later. The input command and the input data have an
次に、図6のタイミング図を用いて、図1に示した画像処理装置10のレジスタのリードライト動作を説明する。図6において、600はクロックを、601は送信部100の出力を、602〜604は処理ブロック101〜103の出力をそれぞれ示す。ここで、各処理ブロックのコマンドに対するレイテンシは2クロックサイクルとする。また、処理ブロック101〜103に対してそれぞれ処理ブロックIDとして0〜2の値が割り振られているものとする。
Next, the read / write operation of the register of the
まず、CPU11から送信部100に対して、レジスタアドレス、ライトデータ、処理ブロック番号IDが設定される。送信部100は図2に示した入力コマンドフォーマット200に従って、リードレジスタコマンド又はライトレジスタコマンド(これらを入力コマンドという)を生成する。図6の605〜607はそれぞれ処理ブロック101〜103に対するライトレジスタコマンドであり、処理ブロックID202が0〜2に設定されている。また、608、610、612はそれぞれ処理ブロック101〜103に対するリードレジスタコマンドであり、処理ブロックID202が0〜2に設定されている。
First, a register address, write data, and a processing block number ID are set from the
ライトレジスタコマンド605〜607に従って、処理ブロック101〜103はそれぞれレジスタ値をライトする。その後、図6に示すように、処理ブロック101〜103は、ライトレジスタコマンド605〜607から、図4で説明した出力コマンドフォーマット400に従って入力コマンドと同等な出力コマンドを生成し、後段の処理ブロックへ出力する。受信部104は、各処理ブロックからの出力コマンドを受信する。その後、CPU11が受信部104で受信されたライトレジスタコマンドの確認を行なうことにより、レジスタのライトが正常に行なわれたこと確認をする。
In accordance with the write register commands 605 to 607, the processing blocks 101 to 103 respectively write the register values. Thereafter, as shown in FIG. 6, the processing blocks 101 to 103 generate an output command equivalent to the input command from the write register commands 605 to 607 according to the
また、処理ブロック101は、リードレジスタコマンド608に従ってレジスタリード動作を行なった後、図4で説明した出力コマンドフォーマット400に従った出力コマンド609を生成し、後段の処理ブロック102に出力する。出力コマンド609は、リードレジスタコマンド608のレジスタデータのデータ領域に、レジスタコマンド608が指定するアドレスから読み出したレジスタデータをセットしたものである。処理ブロック102及び処理ブロック103は出力コマンド609をそのまま後段へ出力する。こうして、出力コマンド609は受信部104にて受信される。
Further, the
リードレジスタコマンド610は処理ブロック101ではそのまま後段の処理ブロック102に出力される。処理ブロック102は、リードレジスタコマンド610に従ってレジスタリード動作を行なった後、図4で説明した出力コマンドフォーマット400に従った出力コマンド611を生成し、後段の処理ブロック103に出力する。出力コマンド611は、リードレジスタコマンド608のレジスタデータのデータ領域に、レジスタコマンド610が指定するアドレスから読み出したレジスタデータをセットしたものである。処理ブロック103は出力コマンド611をそのまま後段へ出力し、受信部104にて受信する。
The read
さらに、リードレジスタコマンド612は処理ブロック101及び102ではそのまま後段の処理ブロックに出力される。処理ブロック103はリードレジスタコマンド612に従ってレジスタリード動作を行なった後、図4で説明した出力コマンドフォーマット400に従った出力コマンド613を生成し、後段へ出力する。出力コマンド613は、リードレジスタコマンド612のレジスタデータのデータ領域に、レジスタコマンド612が指定するアドレスから読み出したレジスタデータをセットしたものである。出力された出力コマンド613は受信部104にて受信される。
Further, the
その後、CPU11が受信部104で受信されたリードレジスタコマンドから、レジスタ値を取得する。以上のように、直列に接続された複数の処理ブロックにおいて、前段の処理ブロックの出力が、後段の処理ブロックの多重化データとして入力され、最終的な処理結果が受信部104に受信されることになる。
Thereafter, the
次に、図7のタイミング図を用いて、図1に示した画像処理装置10が所定のデータ単位(ページ、ブロック、バンド等)の画像処理中にレジスタのリード又はライトを行なわない場合の画像処理動作を説明する。図7において、700は送信部100の出力を、701〜703は処理ブロック101〜103の出力をそれぞれ示す。ここで、各処理ブロックのコマンドに対するレイテンシは、画像処理中(最初のデータであることを示すstartフラグ302のセットされたデータを送信してから、最後のデータであることを示すendフラグ303のセットされたデータを送信するまでの間)にコマンドが送信されていないので、図6で説明したのと同様に2クロックサイクルとする。また、各処理ブロックのデータに対するレイテンシは4クロックサイクルとする。
Next, referring to the timing chart of FIG. 7, an image when the
まずCPU11から送信部100に対してレジスタアドレス、ライトデータ、処理ブロック番号IDが設定される。704〜706はそれぞれ、処理ブロック101〜103に対する、単数又は複数のライトレジスタコマンドである。図6を用いて説明したのと同様な手順で、処理ブロック101〜103はこれらライトレジストコマンドに従ってレジスタライト動作を行ない、これにより処理ブロック内の画像処理パラメータの設定が行なわれる。次に、DRAM12等の記憶媒体から、DMAC13を介して上記データ単位分の画像データが送信部100に転送される。送信部100では、図3に示した入力データフォーマット300に従ってデータ707を作成し、処理ブロック101に対して出力する。処理ブロック101は、入力されたデータ707に対して画像処理を実施した後、得られたデータ708を処理ブロック102に対して出力する。同様に、処理ブロック102は入力されたデータ708に対して画像処理を実施した後、得られたデータ709を処理ブロック103に対して出力する。更に、処理ブロック103は入力されたデータ709に対して画像処理を実施した後、得られたデータ710を受信部104へ出力する。受信部104は、DMAC13を介してDRAM12へ画像処理後のデータを転送する。
First, a register address, write data, and a processing block number ID are set from the
また、711、713、715はそれぞれ、処理ブロック101〜103に対する、画像処理後の内部状態を観測する為の、単数又は複数のリードレジスタコマンドである。処理ブロック101〜103は、これらリードレジスタコマンド711,713,715に従って、図6を用いて説明したのと同様な手順でレジスタリード動作を行なう。処理ブロック101〜103に対するレジスタリードの結果はそれぞれリードレジスタコマンド712,714,716として受信部104へ送られ、受信部104によって受信される。
その後、CPU11は、受信部104で受信されたリードレジスタコマンドから、レジスタ値を取得する。
Thereafter, the
次に、図8のタイミング図を用いて、図1に示した画像処理装置10が所定のデータ単位(ページ、ブロック、バンド等)の画像処理中にレジスタのリードを行なう場合の画像処理動作を説明する。800は送信部100の出力を、801〜803は処理ブロック101〜103の出力をそれぞれ示す。ここで、各処理ブロックのデータに対するレイテンシは4クロックサイクルとする。また、各処理ブロックのコマンドに対するレイテンシは、画像処理中(最初のデータであることを示すstartフラグ302のセットされたデータを送信してから、最後のデータであることを示すendフラグ303のセットされたデータを送信するまでの間)に送信される場合と画像処理中以外に送信される場合で異なる。画像処理中以外に送信されるコマンド(804〜806及び816〜821)に対するレイテンシは、図6で説明したのと同様に2クロックサイクルである。一方、画像処理中に送信されるコマンド(811及び822)のレイテンシは、画像処理対象のデータと同様に4クロックサイクルとする。
Next, an image processing operation when the
まずCPU11から送信部100に対してレジスタアドレス、ライトデータ、処理ブロック番号IDが設定される。804〜806はそれぞれ、処理ブロック101〜103に対する、単数又は複数のライトレジスタコマンドである。図6を用いて説明したのと同様な手順で、処理ブロック101〜103はこれらレジスタコマンドに従ってレジスタライト動作を行ない、処理ブロック101〜103の各々に対する画像処理パラメータの設定が行なわれる。
First, a register address, write data, and a processing block number ID are set from the
次に、DRAM12等の記憶手段からDMAC13を介して上記データ単位分の画像データが送信部100に対して転送される。送信部100では、図3に示した入力データフォーマット300に従ってデータを作成し、データ807及びデータ812として処理ブロック101に出力する。なお、送信部100は、データ807とデータ812の間に処理ブロック103に対する、画像処理中の内部状態を観測する為のリードレジスタコマンド811を挿入して、処理ブロック101に対して出力を行う。処理ブロック101は、データ807及び812に画像処理を実施し、得られたデータ808及び813を処理ブロック102に対して出力する。このとき、リードレジスタコマンド811は、データ808とデータ813の間に挟まれて、そのまま処理ブロック102に出力される。
Next, image data for the data unit is transferred from the storage means such as the
同様に、処理ブロック102は入力されたデータ808,813に画像処理を実施し、得られたデータ809及び814を処理ブロック103に対して出力する。また、リードレジスタコマンド811は、データ809及び814に挟まれて、そのまま処理ブロック103に対して出力される。処理ブロック103は、入力されたデータ809,814に画像処理を実施し、得られたデータ810及び815を受信部104に出力する。また、処理ブロック103は、リードレジスタコマンド811を実行し、レジスタリードの結果である出力コマンド822を受信部104へ出力する。
Similarly, the
その後、受信部104はDMAC13を介してDRAM12へ画像処理後のデータを転送する。CPU11はレジスタリード結果815からレジスタ値を取得することにより、処理ブロック103における画像処理中の内部状態を観測することができる。
Thereafter, the receiving
また、816、818、820はそれぞれ、処理ブロック101〜103に対する、画像処理後の内部状態を観測する為の、単数又は複数のリードレジスタコマンドである。これらのリードレジスタコマンド816,818,820は、図6を用いて説明したのと同様な手順で処理ブロック101〜107に対してレジスタリード動作を行なう。そして、処理ブロック101〜103に対するレジスタリードの結果が、出力コマンド817,819,821として、受信部104へ送られ、受信部104により受信される。CPU11は、受信部104で受信された出力コマンド817,819,821からレジスタ値を取得することにより、処理ブロック101〜103における画像処理後の内部状態を観測することができる。
次に、図9に図8をより詳細に示した、リードレジスタコマンド811の前後のデータ転送のタイミング図を示す。900はクロックを、901は送信部100の出力を、902〜904は処理ブロック101〜103の出力をそれぞれ示す。また、811及び812は図8に示したリードレジスタコマンド及びこれに対応した出力コマンドである。図8でも説明したように、リードレジスタコマンド811は処理ブロック103に対してレジスタリードを行なうコマンドである。通常、処理ブロック103のコマンドに対するレイテンシは2クロックであるが、リードレジスタコマンド811は入力データDn''までが処理された時点の処理ブロック103の内部状態のレジスタ値をリードする為のコマンドである。その為、リードレジスタコマンド811のレイテンシはデータと同じ4クロックとなる。そして、その出力(出力コマンド822))は、処理後のデータDn'''及びDn+1'''との前後関係を保ちながら、・・・Dn''',RC_ID2',Dn+1'''・・・の順で出力される。
Next, FIG. 9 shows a timing chart of data transfer before and after the read
次に、図10のタイミング図を用いて、図1に示した画像処理装置10が所定のデータ単位(ページ、ブロック、バンド等)の画像処理中にレジスタのライトを行なう場合の画像処理動作を説明する。ここで、図8と動作及びタイミングが同等なものに関しては同じ参照番号を付し、詳細な説明を省略する。また、図8と同様に、各処理ブロックのデータに対するレイテンシは4クロックサイクルとする。さらに、各処理ブロックのコマンドに対するレイテンシは、画像処理中(最初のデータであることを示すstartフラグ302のセットされたデータを送信してから、最後のデータであることを示すendフラグ303のセットされたデータを送信するまでの間)とそれ以外に送信される場合とで異なる。すなわち、画像処理中以外に送信されるライトレジスタコマンド(804〜806及び816〜821)は、図6で説明したのと同様に2クロックサイクルである。一方、画像処理中に送信されるライトレジスタコマンド(1000)のレイテンシは、データと同様に4クロックサイクルとする。
Next, referring to the timing chart of FIG. 10, the image processing operation when the
図8との違いは、リードレジスタコマンド811が処理ブロック103に対するライトレジスタコマンド1000に置き換わっている点である。このように、上記のデータ単位の画像処理動作中に、処理ブロック103のレジスタ設定値の変更が行なわれる。また、ライトレジスタコマンド1000は、図6で説明したように、処理ブロック103からそのまま受信部104へ送られる。
The difference from FIG. 8 is that the read
次に、図11に図10をより詳細に示した、ライトレジスタコマンド1000の前後のデータ転送のタイミング図を示す。図11において、図9と動作及びタイミングが同等なものに関しては同一の参照番号付し、詳細な説明を省略する。図9との違いは、リードレジスタコマンド811が図10に示したライトレジスタコマンド1000に置き換わっている点である。
Next, FIG. 11 shows a timing chart of data transfer before and after the
図10でも説明したように、ライトレジスタコマンド1000は処理ブロック103にレジスタライトを行なわせる。通常、処理ブロック103のコマンドに対するレイテンシは2クロックである。しかしながら、ライトレジスタコマンド1000は入力データDn+1''以降の画像処理に関して、処理ブロック103の設定を変更する為のコマンドである為、そのレイテンシはデータと同じ4クロックとなる。そして、その出力は、処理後のデータDn'''及びDn+1'''との前後関係を保ちながら、・・・Dn''',WC_ID2,Dn+1'''・・・の順で出力される。ただし、レジスタの更新は、データDn+1''が処理される前に行なわれる。
As described with reference to FIG. 10, the
次に、上述した処理ブロック101〜103について詳細に説明する。図12は、処理ブロック101〜103の内部構成を示すブロック図である。1200はコマンド及びデータの入力端子である。1201はデコーダであり、入力端子1200より入力されたコマンド及びデータをデコードする。1202はレジスタ部であり、デコーダ1201からのコマンドにより、レジスタデータの読み出し、及び書き込みを行なう。ここで、書き込み動作により、処理パラメータを格納するとともに、信号1211を介して処理部1203に与える。また、読み出し動作により、格納されている処理パラメータの読み出し、あるいは、処理部1203の内部ステータスを、信号1212を介して受け取って、その値の読み出しを行なう。1211は上記処理パラメータ値を処理部1203に伝える為の信号であり、1212は処理部1203の内部ステータスをレジスタ部1202に伝える為の信号である。
Next, the processing blocks 101 to 103 described above will be described in detail. FIG. 12 is a block diagram showing an internal configuration of the processing blocks 101 to 103.
1203は処理部であり、デコーダ1201からのデータ(画像データ)に対して予め定められた処理(画像処理)を施す。デコーダ1201は、modeフラグ201,301,401,501に基づいて、転送データ中のデータとコマンドを処理部1203とレジスタ部1202に振り分ける分離機能を有する。1204はバッファであり、コマンドとデータの前後関係を保証する。1205はデコーダ1201からバッファ1204へ出力されるコマンド保持信号である。1206は入力コマンドが自分のIDと一致しなかった場合、コマンドをそのまま出力する系に挿入される遅延調整用のフリップフロップである。1207はデコーダ1201でデコードされたmodeフラグ201及び処理ブロックID202の遅延調整用のフリップフロップである。1208はエンコーダであり、出力コマンド及びデータを生成する。1209はエンコーダ1208が出力を選択する為のセレクト信号である。1210はコマンド及びデータを出力する為の出力端子である。
A
図12において、デコーダ1201は、多重化されたコマンド及びデータを分離する。レジスタ部1202は、画像処理パラメータの値を格納し、処理部1203が、画像処理を行なう。バッファ1204は、時系列的な前後関係を保証し、エンコーダ1208は、バッファ1204の出力と処理部1203の出力とデコーダ1201の出力を選択する。
In FIG. 12, a
次に図13を用いて、図12に示した処理ブロックによるレジスタリード及びライト動作を説明する。ここで、図12の処理ブロックIDには“2”が設定されており、画像処理中(最初のデータであることを示すstartフラグ302のセットされたデータを送信してから、最後のデータであることを示すendフラグ303のセットされたデータを送信するまでの間)でない場合での動作を説明する。1300はクロック、1301はコマンド及びデータの入力端子1200における入力データのタイミングを示す。1304はレジスタ部1202の入力データのタイミング、1305はレジスタ部1202の出力データのタイミングを表す。1306はコマンド保持信号1205の内容、1307はバッファ1204の出力データのタイミング、1308はフリップフロップ1206の出力データを示す。1309はセレクト信号1209の内容、1310はエンコーダ1208の出力データ(すなわち出力端子1210における出力データ)のタイミングを示す。なお、エンコーダ1208は、セレクト信号1209が“0”の時はバッファ1204の出力を選択し、“2”の時はフリップフロップ1206の出力を選択して、出力コマンドを生成する。
Next, register read and write operations by the processing block shown in FIG. 12 will be described with reference to FIG. Here, “2” is set in the processing block ID of FIG. 12, and during the image processing (the data with the
1301に示すように、
・サイクルC0にて処理ブロックID202=2、アドレス204=0のライトレジスタコマンドが、
・サイクルC1にて処理ブロックID202=2、アドレス204=1のライトレジスタコマンドが、
・サイクルC2にて処理ブロックID202=2、アドレス204=0のリードコマンドが、
・サイクルC3にて処理ブロックID202=2、アドレス204=1のリードコマンドが、
・サイクルC4にて処理ブロックID202=0のライトコマンドが、
・サイクルC5にて処理ブロックID202=1のリードコマンドが入力されたとする。
As shown at 1301
In cycle C0, the write register command with
In cycle C1, the write register command with
In cycle C2, the read command with
In cycle C3, the read command with
-In cycle C4, the write command with
It is assumed that a read command with
これら入力されたコマンドはデコーダ1201にてデコードされる。そして、処理ブロックID202が“2”であるコマンドに関しては、RWフラグ203、アドレス204、レジスタデータ205の内容がレジスタ部1202へ出力される。また、画像処理中でなく、且つIDが“2”以外である場合は、当該コマンドはそのままフリップフロップ1206へ出力される。そして、フリップフロップ1206にて1クロック分遅延させられ、エンコーダ1208へ出力される。さらに、modeフラグ201及び処理ブロックID202がフリップフロップ1207へ入力され、そこで1クロック分遅延させられ、modeフラグ401及び処理ブロックID402としてバッファ1204へ出力される。また、サイクルC0〜C5においてはコマンドのみが入力されている。従って、デコーダ1201は、信号内容1309に示すように、処理ブロックのコマンドに対するレイテンシ(2クロックサイクル)分にあわせて、セレクト信号1209を出力する。
These input commands are decoded by the
つまり、1304に示すように、
・サイクルC0にてRWフラグ203=1、アドレス204=0及びレジスタデータ205がレジスタ部1202へ出力され、
・サイクルC1にてRWフラグ203=1、アドレス204=1及びレジスタデータ205がレジスタ部1202へ出力され、
・サイクルC2にてRWフラグ203=0、アドレス204=0及びレジスタデータ205がレジスタ部1202へ出力され、
・サイクルC3にてRWフラグ203=0、アドレス204=1及びレジスタデータ205がレジスタ部1202へ出力される。
That is, as shown at 1304,
In cycle C0, the
In cycle C1, the
In cycle C2, the
In cycle C3, the
また、1308に示すように、
・処理ブロックID202=0のライトコマンドは、サイクルC5にてエンコーダ1208へ出力され、
・処理ブロックID202=1のリードコマンドは、サイクルC6にてエンコーダ1208へ出力される。
Also, as shown at 1308,
The write command with the
The read command with the
また、エンコーダ1208は、セレクト信号1209が“0”の時はバッファ1204の出力を選択し、“1”の時は処理部1203の出力を選択し、“2”の時はフリップフロップ1206の出力を選択する。なお、セレクト信号は、
・当該処理ブロックで実行すべきコマンドに対して“0”が、
・当該処理ブロックが画像処理すべきデータに対して“1”が、
・当該処理ブロックで実行されないコマンドに対して“2”が、
セットされる。そのため、セレクト信号1209は、信号内容1309に示すように、サイクルC1〜C4の期間は“0”が出力され、サイクルC5〜C6の期間は“2”が出力される。
The
-"0" for the command to be executed in the processing block,
-"1" for data to be processed by the processing block,
・ "2" is displayed for commands not executed in the processing block.
Set. Therefore, as shown in the
レジスタ部1202においては、RWフラグ203の値が“0”の時は所望のアドレスのレジスタリード動作を行ない、同時にそのときのRWフラグ403=0、アドレス404及びレジスタデータ405をバッファ1204へ出力する。このとき、レジスタリード動作は、レジスタコマンドの直前に入力されたデータの処理が終了してから行なわれる。またRWフラグ203の値が“1”の時はレジスタライト動作を行ない、そのときのRWフラグ403、アドレス404と所望のアドレスのレジスタ値をバッファ1204へ出力する。
In the
この時、ライトされたレジスタデータは画像処理パラメータとして処理部1203へ出力される。また、レジスタリードデータには、処理部1203から入力された、内部状態等を反映させる。
At this time, the written register data is output to the
つまり、1305に示すように、
・サイクルC1にてアドレス204=0へのライト動作を行なうと同時にRWフラグ403=1、アドレス404=0及びレジスタデータ405をバッファ1204へ出力し、
・サイクルC2にてアドレス204=1へのライト動作を行なうと同時にRWフラグ403=1、アドレス404=1及びレジスタデータ405をバッファ1204へ出力し、
・サイクルC3にてアドレス204=0へのリード動作を行なうと同時にRWフラグ403=0、アドレス404=0及びレジスタデータ405をバッファ1204へ出力し、
・サイクルC4にてアドレス204=1へのリード動作を行なうと同時にRWフラグ403=0、アドレス404=1及びレジスタデータ405をバッファ1204へ出力する。
That is, as shown at 1305,
At the same time as performing the write operation to the
In cycle C2, the write operation to the
In cycle C3, the read operation to address 204 = 0 is performed, and at the same time, the
In cycle C4, the read operation to the
バッファ1204においては、コマンド保持信号1205が“1”の時、入力されたデータを保持する。“1”の値になるのは、デコーダ1201にて、所定のデータ単位(ページ、ブロック、バンド等)の画像処理中に、即ちデータ転送中に、レジスタリード動作などのコマンドの転送が行なわれた場合である。
The
図13の例では、画像処理中にコマンドの転送が行なわれていない為、コマンド保持信号1205が“0”値を有している。そして、入力されたmodeフラグ401、処理ブロックID402、RWフラグ403、アドレス404及びレジスタデータ405は、そのままエンコーダ1208へ出力される。そして、エンコーダ1208は、図4に示した出力コマンドフォーマット400に従った出力コマンドの生成をセレクト信号1209に従って行ない、1クロックサイクル後に出力端子1210より出力する。
In the example of FIG. 13, since no command is transferred during image processing, the
つまり、サイクルC1〜C4の期間はセレクト信号1209の値が“0”なので、エンコーダ1208はバッファ1204の出力を選択する。そして、エンコーダ1208は、1310に示すように、
・1クロックサイクル後のサイクルC2にて処理ブロックID402=2、アドレス404=0のライトコマンドを、
・サイクルC3にて処理ブロックID402=2、アドレス404=1のライトコマンドを、
・サイクルC4にて処理ブロックID402=2、アドレス404=0のリードコマンドを、
・サイクルC5にて処理ブロックID402=2、アドレス404=1のリードコマンドを、出力端子1210へ出力する。
That is, since the value of the
In cycle C2 after one clock cycle, write command with
In cycle C3, write command with
In cycle C4, a read command with
In cycle C5, the read command with
また、セレクト信号1209はサイクルC5〜C6の期間は値が“2”なので、エンコーダ1208はフリップフロップ1206の出力を選択する。そして、エンコーダ1208は、1310に示すように、
・1クロックサイクル後のサイクルC6にて処理ブロックID402=0のライトコマンドWC_ID0を、
・サイクルC7にて処理ブロックID402=1のリードコマンドRC_ID1を出力端子1210へ出力する。
Since the value of the
-In cycle C6 after one clock cycle, write command WC_ID0 with
In cycle C7, the read command RC_ID1 with the
次に図14を用いて、図12に示した処理ブロックが所定のデータ単位の画像処理中(最初のデータであることを示すstartフラグ302のセットされたデータを送信してから、最後のデータであることを示すendフラグ303のセットされたデータを送信するまでの間)にレジスタのリードを行なう場合の画像処理動作を説明する。なお、所定のデータ単位とは、ページ、ブロック、バンド等の単位である。ここで、図12の処理ブロックのIDは図13と同様に“2”が設定されており、処理ブロックのデータに対するレイテンシは4クロックサイクルとする。また、各処理ブロックのコマンドに対するレイテンシは、そのコマンドが画像処理中に送信される場合は、データと同様に4クロックサイクルとする。
Next, referring to FIG. 14, the processing block shown in FIG. 12 is performing image processing of a predetermined data unit (after transmitting the data in which the
図14において、1400はクロック、1401はコマンド及びデータの入力端子1200におけるタイミングを示す。1402は処理部1203の入力データのタイミング、1403は処理部1203の出力データのタイミングを示す。1404はレジスタ部1202の入力データのタイミング、1405はレジスタ部1202の出力データのタイミングを示す。1406はコマンド保持信号1205の状態、1409はセレクト信号1209の状態を示す。1407はバッファ1204の出力データのタイミング、1410はコマンド及びデータの出力端子1210における出力データのタイミングを示す。
In FIG. 14,
1401に示すように、サイクルC0にてデータDn-1が、サイクルC1にてデータDnが、サイクルC2にて処理ブロックID202=2のリードコマンドが、サイクルC3〜C7にてデータDn+1〜Dn+5が入力される場合を説明する。これら入力されたデータ及びコマンドのうち、データはデコーダ1201にてデコードされ、Startフラグ302、endフラグ303、データ304が処理部1203へ出力される(1402)。また、画像処理中においては、処理ブロックID202の値に関わらず、コマンドのRWフラグ203、アドレス204、レジスタデータ205がレジスタ部1202へ出力される(1404)。これは、たとえコマンドの処理ブロックID202が“2”以外の値であっても、データとコマンドの前後関係を保ちながら、後段の処理ブロックへデータ及びコマンドを伝播させる為である。
As shown at 1401, the data Dn-1 in cycle C0, the data Dn in cycle C1, the read command of
さらに、modeフラグ401及び処理ブロックID402がフリップフロップ1207へ出力され、フリップフロップ1207にて1クロック分遅延させられ、バッファ1204へ出力される。またデコーダ1201にはサイクルC2の期間以外はデータが入力されている。デコーダ1201は、データが入力されている期間中は画像処理中であると判断してセレクト信号1209を“1”にセットする。また、デコーダ1201は、自身の処理ブロックIDを持つコマンドを入力した場合には、セレクト信号1209を“0”にセットする。但し、処理ブロックのデータのレイテンシ、及び画像処理中に受信したコマンドに対するレイテンシが4クロックであり、セレクト信号1209はこれにあわせて出力されている(1409)。
Further, the
つまり、1402に示すように、サイクルC0,C1及びC3〜C7にてstartフラグ302、endフラグ303及びデータ304が処理部1203へ入力される。そして、1404に示すように、サイクルC2にてアドレス204及びレジスタデータ205がレジスタ部1202へ出力される。また、セレクト信号1209は、1409に示すようにサイクルC0〜C4、C6、C7の期間は“1”となり、サイクルC5の期間は“0”となる。
That is, as indicated by 1402, the
処理部1203においては入力されたデータに対して4クロックサイクルのレイテンシで画像処理をおこない、出力データのstartフラグ502、endフラグ503及びデータ504をエンコーダ1208へ出力する(1403)。
The
また、レジスタ部1202においては、サイクルC2で入力端子1200から入力されたレジスタリードコマンド(RC_ID2)に応じて、図13で説明したレジスタリード動作を行なう。つまり、1405に示すようにサイクルC3にてアドレス204へのリード動作を行なうと同時にRWフラグ403=0、アドレス404及び読み出したレジスタデータ405をバッファ1204へ出力する。
The
図13で説明したようにデコーダ1201にて所定のデータ単位(ページ、ブロック、バンド等)の画像処理中にレジスタリードコマンドを検知した為、サイクルC3及びC4においてコマンド保持信号1205が“1”となる。よって、バッファ1204は、サイクルC3で入力されたmodeフラグ401、処理ブロックID402、RWフラグ403、アドレス404、レジスタデータ405をそのままエンコーダ1208へ出力し、サイクルC4及びC5でそれらの値を保持する。この様子は、1407によって示されている。
As described with reference to FIG. 13, the register read command is detected during image processing of a predetermined data unit (page, block, band, etc.) by the
エンコーダ1208は、1409に示されるセレクト信号1209に従い、図4に示した出力コマンドフォーマット400或いは出力データフォーマット500を有する出力コマンド/データを生成し、出力端子1210より出力する。つまり、エンコーダ1208は、サイクルC0〜C4、C6、C7の期間はセレクト信号1209の値が“1”なので、処理部1203の出力を選択し、1クロックサイクル後のサイクルに出力端子1210へデータを出力する。また、サイクルC5ではセレクト信号1209の値が“0”である為、エンコーダ1208はバッファ1204を選択し、1クロックサイクル後のサイクルに処理ブロックID402=2、アドレス404=0のリード出力コマンドを出力端子1210へ出力する。
The
尚、図14の例では、画像処理中にレジスタのリード動作を行なう場合を示したが、レジスタのライト動作を行なう場合でも、レジスタのリード動作と同等な動作となる。但し、レジスタのライト動作では、レジスタの更新のタイミングが、当該レジスタライトコマンドの次のデータに対する処理の開始までに行なわれる。 In the example of FIG. 14, the case where the register read operation is performed during the image processing is shown. However, even when the register write operation is performed, the operation is equivalent to the register read operation. However, in the register write operation, the register update timing is performed before the start of processing for the next data of the register write command.
また、レイテンシの調整も画像処理部のレイテンシを4サイクル固定として説明したが、これに限られるものではない。例えば画像処理部のレイテンシが可変の場合においても、画像処理部にコマンド挿入個所を示す信号を追加し、上記出力の切替えを該コマンド挿入個所を示す信号によって切替えることにより、コマンドとデータの順番を維持して出力できる。 Further, the latency adjustment has been described with the latency of the image processing unit being fixed to 4 cycles, but is not limited to this. For example, even when the latency of the image processing unit is variable, a signal indicating a command insertion location is added to the image processing unit, and the output is switched by the signal indicating the command insertion location, thereby changing the order of the command and data. The output can be maintained.
以上説明したように、本実施形態によれば、コマンド及びデータを多重化して、共通のデータバス上を転送し、処理ブロックでは入力されたコマンドとデータの順序を保ちながら処理結果を出力する。これにより、データに同期した制御を、任意のデータ間でかつ高速に行なうことが可能となる。 As described above, according to the present embodiment, commands and data are multiplexed and transferred on a common data bus, and the processing block outputs the processing results while maintaining the order of the input commands and data. As a result, control synchronized with data can be performed between arbitrary data at high speed.
尚、本実施形態では、データ単位(ページ、ブロック、バンド等)の画像処理中にレジスタのリード及びライトを行なう動作に関して、1つのみのコマンドを転送する例を示したがこれに限られるものではない。複数のコマンドの転送及び、上記データ単位内の複数箇所でデータに対してコマンドを挿入して転送する場合も可能であることは上記実施形態の説明から当業者には明らかである。 In the present embodiment, an example is shown in which only one command is transferred with respect to an operation of reading and writing a register during image processing of a data unit (page, block, band, etc.). is not. It will be apparent to those skilled in the art from the description of the above embodiments that a plurality of commands can be transferred and a command can be inserted and transferred at a plurality of locations in the data unit.
また、本実施形態では画像処理中のコマンド転送が1つの処理ブロックに関してのみ行なう例を示したが、複数の処理ブロックに対して行なう場合も可能であることはいうまでもない。
また、上記実施形態では、1つのコマンドに1つの処理ブロックを特定するIDを記述したが、例えば、1FH(処理ブロックID202の全ビットが1)の場合には、全ての処理ブロックが選択されるようにしてもよい。例えば、全ての処理ブロックの同一アドレスに同一データを書き込むような処理を、1つのコマンドで実現できる。
また、上記実施形態では、処理ブロックが3つの場合を説明したが、処理ブロックの数は1以上、いくつでも良い。但し、処理ブロックIDで表せる数が上限となる。
In this embodiment, an example in which command transfer during image processing is performed only for one processing block is shown, but it goes without saying that it may be performed for a plurality of processing blocks.
In the above embodiment, an ID for specifying one processing block is described in one command. However, for example, in the case of 1FH (all bits of the
Moreover, although the case where the number of process blocks is three was demonstrated in the said embodiment, the number of process blocks may be one or more and how many. However, the number that can be represented by the processing block ID is the upper limit.
さらに、実施形態では各処理ブロックのデータに対するコマンド及びデータに対するレイテンシが同一の場合に関して説明したが、これに限定されるものではない。複数の処理ブロックのコマンド及びデータに対するレイテンシが互いに異なる場合でも、デコーダ1201によるバッファ1204でコマンドを保持するクロックサイクルの制御をそれぞれ適宜変更することにより対応できる。
Furthermore, in the embodiment, the case where the command for the data of each processing block and the latency for the data are the same has been described, but the present invention is not limited to this. Even when the latencies for commands and data of a plurality of processing blocks are different from each other, it can be coped with by appropriately changing the control of the clock cycle in which the
[他の実施形態]
以上、実施形態を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
[Other Embodiments]
Although the embodiment has been described in detail above, the present invention can take an embodiment as a system, apparatus, method, program, storage medium, or the like. Specifically, the present invention may be applied to a system composed of a plurality of devices, or may be applied to an apparatus composed of a single device.
尚、本発明は、ソフトウェアのプログラムをシステム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによって前述した実施形態の機能が達成される場合を含む。この場合、供給されるプログラムは実施形態で図に示したフローチャートに対応したコンピュータプログラムである。 In the present invention, the functions of the above-described embodiments are achieved by supplying a software program directly or remotely to a system or apparatus, and the computer of the system or apparatus reads and executes the supplied program code. Including the case. In this case, the supplied program is a computer program corresponding to the flowchart shown in the drawings in the embodiment.
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。 Accordingly, since the functions of the present invention are implemented by computer, the program code installed in the computer also implements the present invention. In other words, the present invention includes a computer program itself for realizing the functional processing of the present invention.
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。 In that case, as long as it has the function of a program, it may be in the form of object code, a program executed by an interpreter, script data supplied to the OS, or the like.
コンピュータプログラムを供給するためのコンピュータ読み取り可能な記憶媒体としては以下が挙げられる。例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などである。 Examples of the computer-readable storage medium for supplying the computer program include the following. For example, floppy (registered trademark) disk, hard disk, optical disk, magneto-optical disk, MO, CD-ROM, CD-R, CD-RW, magnetic tape, nonvolatile memory card, ROM, DVD (DVD-ROM, DVD- R).
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムをハードディスク等の記録媒体にダウンロードすることが挙げられる。この場合、ダウンロードされるプログラムは、圧縮され自動インストール機能を含むファイルであってもよい。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。 As another program supply method, a client computer browser is used to connect to a homepage on the Internet, and the computer program of the present invention is downloaded from the homepage to a recording medium such as a hard disk. In this case, the downloaded program may be a compressed file including an automatic installation function. It can also be realized by dividing the program code constituting the program of the present invention into a plurality of files and downloading each file from a different homepage. That is, a WWW server that allows a plurality of users to download a program file for realizing the functional processing of the present invention on a computer is also included in the present invention.
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布するという形態をとることもできる。この場合、所定の条件をクリアしたユーザに、インターネットを介してホームページから暗号を解く鍵情報をダウンロードさせ、その鍵情報を使用して暗号化されたプログラムを実行し、プログラムをコンピュータにインストールさせるようにもできる。 Further, the program of the present invention may be encrypted, stored in a storage medium such as a CD-ROM, and distributed to users. In this case, a user who has cleared a predetermined condition is allowed to download key information for decryption from a homepage via the Internet, execute an encrypted program using the key information, and install the program on the computer. You can also.
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどとの協働で実施形態の機能が実現されてもよい。この場合、OSなどが、実際の処理の一部または全部を行ない、その処理によって前述した実施形態の機能が実現される。 In addition to the functions of the above-described embodiment being realized by the computer executing the read program, the embodiment of the embodiment is implemented in cooperation with an OS or the like running on the computer based on an instruction of the program. A function may be realized. In this case, the OS or the like performs part or all of the actual processing, and the functions of the above-described embodiments are realized by the processing.
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれて前述の実施形態の機能の一部或いは全てが実現されてもよい。この場合、機能拡張ボードや機能拡張ユニットにプログラムが書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行なう。 Furthermore, the program read from the recording 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, so that part or all of the functions of the above-described embodiments are realized. May be. In this case, after a program is written in the function expansion board or function expansion unit, the CPU or the like provided in the function expansion board or function expansion unit performs part or all of the actual processing based on the instructions of the program.
Claims (12)
前記共通バスを介して当該処理ブロックに入力されたデータを用いた画像処理を、当該処理ブロックの処理部により行なうデータ処理工程と、
前記共通バスを介して当該処理ブロックに入力されたコマンドに応じた処理を、当該処理ブロックの処理部に対して行なうコマンド処理工程と、
前記共通バスを介して第1の処理ブロックに入力される第1のコマンドについて、当該第1のコマンドの前に前記第1の処理ブロックへ入力されたデータに基づくデータ処理によるデータ出力が完了するまで、前記第1の処理ブロックから当該第1のコマンドを出力することを遅延させる遅延工程とを有することを特徴とする画像処理方法。 An image processing method executed by each of a plurality of processing blocks in an image processing apparatus in which a plurality of processing blocks each having a processing unit are connected in series by a common bus,
A data processing step in which image processing using data input to the processing block via the common bus is performed by a processing unit of the processing block;
A command processing step for performing processing corresponding to a command input to the processing block via the common bus to a processing unit of the processing block;
For the first command input to the first processing block via the common bus, the data output by the data processing based on the data input to the first processing block before the first command is completed. And a delaying step of delaying the output of the first command from the first processing block.
前記複数の処理ブロックのそれぞれは、
当該処理ブロックに入力されたデータを用いた画像処理を行なう第1の処理手段と、
当該処理ブロックに入力されたコマンドに応じた処理を、前記第1の処理手段に対して行なう第2の処理手段と、
前記共通バスを介して第1の処理ブロックに入力される第1のコマンドについて、当該第1のコマンドの前に前記第1の処理ブロックへ入力されたデータに基づくデータ処理によるデータ出力が完了するまで、前記第1の処理ブロックから当該第1のコマンドを出力することを遅延させるように制御する制御手段とを有することを特徴とする画像処理装置。 An image processing apparatus having a plurality of processing blocks connected in series by a common bus,
Each of the plurality of processing blocks is
First processing means for performing image processing using data input to the processing block;
Second processing means for performing processing corresponding to the command input to the processing block on the first processing means;
For the first command input to the first processing block via the common bus, the data output by the data processing based on the data input to the first processing block before the first command is completed. And an image processing apparatus comprising: control means for controlling to delay the output of the first command from the first processing block.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011275079A JP5188620B2 (en) | 2011-12-15 | 2011-12-15 | Image processing apparatus and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011275079A JP5188620B2 (en) | 2011-12-15 | 2011-12-15 | Image processing apparatus and method |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007194794A Division JP4898590B2 (en) | 2007-07-26 | 2007-07-26 | Data processing apparatus and method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012120179A true JP2012120179A (en) | 2012-06-21 |
JP5188620B2 JP5188620B2 (en) | 2013-04-24 |
Family
ID=46502452
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011275079A Expired - Fee Related JP5188620B2 (en) | 2011-12-15 | 2011-12-15 | Image processing apparatus and method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5188620B2 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0537776A (en) * | 1990-12-13 | 1993-02-12 | Ricoh Co Ltd | Picture processing unit |
JPH07191845A (en) * | 1993-12-27 | 1995-07-28 | Fujitsu Ltd | Immediate data transfer device |
JPH07244587A (en) * | 1994-03-04 | 1995-09-19 | Nec Corp | Data processor |
-
2011
- 2011-12-15 JP JP2011275079A patent/JP5188620B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0537776A (en) * | 1990-12-13 | 1993-02-12 | Ricoh Co Ltd | Picture processing unit |
JPH07191845A (en) * | 1993-12-27 | 1995-07-28 | Fujitsu Ltd | Immediate data transfer device |
JPH07244587A (en) * | 1994-03-04 | 1995-09-19 | Nec Corp | Data processor |
Also Published As
Publication number | Publication date |
---|---|
JP5188620B2 (en) | 2013-04-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5149567B2 (en) | Image processing apparatus and method | |
JP4898590B2 (en) | Data processing apparatus and method | |
JP2010134627A (en) | Bus relay device | |
JP2006259898A (en) | I/o controller, signal processing system and data transferring method | |
JP4876051B2 (en) | Image processing apparatus and control method thereof | |
JP4562505B2 (en) | Multiplexing separation device and multiplexing separation method | |
JP5188620B2 (en) | Image processing apparatus and method | |
US10372655B1 (en) | Memory-mapped state bus for integrated circuit | |
JP2008009803A (en) | Information storage device, information transfer method, information transfer system, program and recording medium | |
JP2006215886A (en) | Signal processor, signal processing system and signal processing method | |
JP3185863B2 (en) | Data multiplexing method and apparatus | |
US6950472B2 (en) | Coded data transfer control method and storage and reproduction system | |
JP4534940B2 (en) | Information recording apparatus, imaging apparatus, information recording control method, and computer program | |
JP2005309606A (en) | Data processing circuit and method for receiving and transferring stream data | |
JP2005293391A (en) | Communication method and processor | |
JP6439299B2 (en) | Information processing system, network storage device, and program | |
JP3405190B2 (en) | Decryption method | |
JP2010128803A (en) | Data transfer device and data transfer method | |
JP2003297017A (en) | Data recording controller | |
JP2012043476A (en) | Image processor and control method for the same | |
JP2005338899A (en) | Initialization processing apparatus and initialization processing method | |
KR100846406B1 (en) | Video encoder transmitting extracted image outside during encoding | |
JP2008258839A (en) | Relay processing method and relay node device | |
JP2005110019A (en) | Serial communication system | |
JP2004046556A (en) | Image area separation method and printing device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20121225 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130122 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160201 Year of fee payment: 3 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5188620 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160201 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |