JP2006350843A - Image processing device, control program for the same, computer-readable storage medium storing control program - Google Patents

Image processing device, control program for the same, computer-readable storage medium storing control program Download PDF

Info

Publication number
JP2006350843A
JP2006350843A JP2005178327A JP2005178327A JP2006350843A JP 2006350843 A JP2006350843 A JP 2006350843A JP 2005178327 A JP2005178327 A JP 2005178327A JP 2005178327 A JP2005178327 A JP 2005178327A JP 2006350843 A JP2006350843 A JP 2006350843A
Authority
JP
Japan
Prior art keywords
image processing
transfer
data
unit
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2005178327A
Other languages
Japanese (ja)
Inventor
Hiroshi Maeda
博 前田
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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Priority to JP2005178327A priority Critical patent/JP2006350843A/en
Publication of JP2006350843A publication Critical patent/JP2006350843A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To carry out proper data processing even when boundaries of at least two modules are different from each other in an image processing device including a plurality of image processing modules. <P>SOLUTION: A control part 50 of this image processing device 10 includes a module selection part 51 selecting an image processing module corresponding to the type of image processing to be operated, a data transfer control part 71 controlling a DMAC for transferring data to the selected image processing module, and a transfer data amount regulation means 60 regulating a transfer data amount per one transfer of the DMAC according to the boundary of the selected image processing module. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、複数の画像処理モジュールを備え、各々の画像処理モジュールに画像データの処理を実行させる画像処理装置、画像処理装置の制御プログラム、該制御プログラムを記憶した記憶媒体に関するものである。   The present invention relates to an image processing apparatus that includes a plurality of image processing modules and causes each image processing module to execute image data processing, a control program for the image processing apparatus, and a storage medium that stores the control program.

従来から、複数種類の画像処理を実行する画像処理装置においては、画像処理の種類毎に画像処理モジュールが設けられていることがある。例えば、「回転処理」「変倍処理」「圧縮処理」を行える画像処理装置においては、回転処理用の画像処理モジュールと、変倍処理用の画像処理モジュールと、圧縮処理用の画像処理モジュールと、が設けられている。なお、「画像処理モジュール」とは、画像処理を実現する一つのユニットであって、画像データを入出力するためのDMAC(Direct Memory Access Controller),画像処理を実行する演算回路,等からなるユニットである。   Conventionally, in an image processing apparatus that executes a plurality of types of image processing, an image processing module may be provided for each type of image processing. For example, in an image processing apparatus that can perform “rotation processing”, “magnification processing”, and “compression processing”, an image processing module for rotation processing, an image processing module for magnification processing, an image processing module for compression processing, , Is provided. The “image processing module” is a unit that realizes image processing, and includes a DMAC (Direct Memory Access Controller) for inputting / outputting image data, an arithmetic circuit for executing image processing, and the like. It is.

つぎに、従来の画像処理装置における画像データの転送方式について、図に基づいて説明する。図8は、従来の画像処理装置の内部構成を模式的に示したブロック図である。図8に示すように、画像処理装置100には、画像処理モジュールIP1,IP2,IP3,および、メモリ70が設けられている。また、同図に示すように、画像処理モジュールIP1,IP2,IP3の各々には、入力用DMACおよび出力用DMACが含まれている。この入力用DMACとは、メモリ70から画像処理モジュールへ画像データを転送(入力)するものであり、出力用DMACとは、画像処理モジュールからメモリ70へ画像データを転送(出力)するものである。   Next, an image data transfer method in a conventional image processing apparatus will be described with reference to the drawings. FIG. 8 is a block diagram schematically showing an internal configuration of a conventional image processing apparatus. As shown in FIG. 8, the image processing apparatus 100 is provided with image processing modules IP1, IP2, IP3, and a memory. Further, as shown in the figure, each of the image processing modules IP1, IP2, and IP3 includes an input DMAC and an output DMAC. The input DMAC is for transferring (inputting) image data from the memory 70 to the image processing module, and the output DMAC is for transferring (outputting) image data from the image processing module to the memory 70. .

この画像処理装置100においては、実行する画像処理の種類に対応する画像処理モジュールのみが画像処理を実行し、当該モジュールのみにメモリ70から画像データが転送される。例えば、利用者による実行命令のあった画像処理の種類に対応する画像処理モジュールがIP1,IP2の場合、メモリ70上の画像データは、処理を実行する画像処理モジュールIP1,IP2の各々に順次転送されて画像処理が実行されるものの、画像処理モジュールIP3には転送されずに画像処理装置100から出力されることになる。なお、この転送は、画像処理を実行する画像処理モジュールIP1,IP2に備えられているDMACによって行われる。   In this image processing apparatus 100, only the image processing module corresponding to the type of image processing to be executed executes the image processing, and the image data is transferred from the memory 70 only to the module. For example, when the image processing modules corresponding to the type of image processing for which the execution instruction is issued by the user are IP1 and IP2, the image data on the memory 70 is sequentially transferred to each of the image processing modules IP1 and IP2 that execute the processing. Then, although the image processing is executed, it is output from the image processing apparatus 100 without being transferred to the image processing module IP3. This transfer is performed by the DMAC provided in the image processing modules IP1 and IP2 that execute image processing.

つぎに、図8に示す画像処理モジュールIP1,IP2,IP3の全てが画像処理を実行する場合を例にして、画像処理装置100における画像データの転送の流れについて、より詳細に説明する。   Next, the flow of image data transfer in the image processing apparatus 100 will be described in more detail by taking as an example the case where all of the image processing modules IP1, IP2, and IP3 shown in FIG. 8 execute image processing.

まず、スキャナ等によって画像処理装置100に入力された画像データは、一旦メモリ70に展開される。ここで、メモリ70に展開される画像データに対応する画像(ビットマップ画像)には、図7に示すように、処理対象の画像が展開されている実画像領域と、実画像領域を囲むように展開されているマージン領域とが含まれている。   First, image data input to the image processing apparatus 100 by a scanner or the like is temporarily expanded in the memory 70. Here, as shown in FIG. 7, the image corresponding to the image data developed in the memory 70 (bitmap image) surrounds the real image region where the image to be processed is developed and the real image region. And the expanded margin area.

そして、図8に示すように、メモリ70に書き込まれた画像データは、画像処理モジュールIP1,IP2,IP3に含まれるDMACによって、これら画像処理モジュールIP1,IP2,IP3に対して、カスケードに転送される。より詳細に説明すると、画像データは、画像処理モジュールIP1→メモリ70→画像処理モジュールIP2→メモリ70→画像処理モジュールIP3→メモリ70の順に転送される。   As shown in FIG. 8, the image data written in the memory 70 is transferred in cascade to the image processing modules IP1, IP2, and IP3 by the DMAC included in the image processing modules IP1, IP2, and IP3. The More specifically, the image data is transferred in the order of image processing module IP 1 → memory 70 → image processing module IP 2 → memory 70 → image processing module IP 3 → memory 70.

また、この転送において、画像処理装置100は、図7に示すように、所定の画素数(図では5000画素)からなる主走査方向1行分の画像を1転送ラインとして設定している。そして、画像処理モジュールIP1,IP2,IP3の各々に含まれるDMACは、転送ライン毎に画像データを転送するように設定されている。   In this transfer, as shown in FIG. 7, the image processing apparatus 100 sets an image for one row in the main scanning direction having a predetermined number of pixels (5000 pixels in the figure) as one transfer line. The DMAC included in each of the image processing modules IP1, IP2, and IP3 is set to transfer image data for each transfer line.

ところで、このような画像処理モジュールIP1,IP2,IP3の各々のバウンダリは、図8に示すように、互いに共通かつ固定値である。なお、画像処理モジュールのバウンダリとは、その画像処理モジュールにおいて転送単位となるデータ量を示すものである(つまり、その画像処理モジュールに含まれるDMACの転送単位となるデータ量とも表現できる)。   By the way, such boundaries of the image processing modules IP1, IP2, and IP3 are common and fixed values as shown in FIG. Note that the boundary of an image processing module indicates the amount of data serving as a transfer unit in the image processing module (that is, it can also be expressed as the amount of data serving as a transfer unit of DMAC included in the image processing module).

よって、画像処理モジュールIP1,IP2,IP3の各々においては、DMACの1転送処理当たりで、バウンダリの倍数のデータ量の画像データの転送(入力または出力)が可能であるが、バウンダリの倍数でないデータ量の画像データを転送することはできない。例えば、バウンダリが3byteの場合、画像処理モジュールIP1,IP2,IP3の各々においては、DMACの1回の転送処理において、3byteの倍数のデータ量の画像データを転送可能である。   Therefore, in each of the image processing modules IP1, IP2, and IP3, it is possible to transfer (input or output) image data having a data amount that is a multiple of the boundary per DMAC transfer process, but data that is not a multiple of the boundary. The amount of image data cannot be transferred. For example, when the boundary is 3 bytes, each of the image processing modules IP1, IP2, and IP3 can transfer image data having a data amount that is a multiple of 3 bytes in one transfer process of the DMAC.

ここで、上述したように、各画像処理モジュールIP1,IP2,IP3の各々に含まれるDMACは、転送ライン毎に画像データを転送するように設定されているため、1転送ライン分の画像のデータ量(以下、「転送データ数」と称する)は、1転送処理当たりの転送データ量に該当する。したがって、この転送データ数は、上記バウンダリの倍数になるように設定されていなければならず、仮にバウンダリの倍数でないデータ転送数が設定されると、DMACは処理を停止し、転送処理を行うことができない。   Here, as described above, since the DMAC included in each of the image processing modules IP1, IP2, and IP3 is set to transfer image data for each transfer line, image data for one transfer line is stored. The amount (hereinafter referred to as “transfer data number”) corresponds to the transfer data amount per transfer process. Therefore, this transfer data number must be set to be a multiple of the above boundary. If a data transfer number that is not a multiple of the boundary is set, the DMAC stops the process and performs the transfer process. I can't.

そこで、画像処理装置100においては、画像データの転送処理を適切に実行するために、処理対象となる画像がカラーかモノクロかの相違に応じて上記転送データ数を切り換える必要がある。以下、この切り換えについて詳細に説明する。   Therefore, in the image processing apparatus 100, in order to appropriately execute the image data transfer process, it is necessary to switch the number of transfer data depending on whether the image to be processed is color or monochrome. Hereinafter, this switching will be described in detail.

例えば、図7に示す画像において、1色/1画素当たりのデータ量は1byteであるものとする。さらに、図8に示すように、各画像処理モジュールIP1,IP2,IP3の各々のバウンダリは3byteで固定されているものとする。   For example, in the image shown in FIG. 7, the data amount per color / pixel is 1 byte. Further, as shown in FIG. 8, it is assumed that the boundaries of the image processing modules IP1, IP2, and IP3 are fixed at 3 bytes.

この例において、図7の画像が3色の色成分からなるカラー画像の場合、1画素当たりのデータ量は3byteとなる。ここで、図示の通り、上記1転送ラインの画素数を5000画素として設定すると、上記転送データ数は15Kbyteとして設定される。これにより、上記転送データ数は、各画像処理モジュールIP1,IP2,IP3のバウンダリ(3byte)の倍数となり、DMACによる転送処理を適切に実行できる。   In this example, when the image in FIG. 7 is a color image composed of three color components, the data amount per pixel is 3 bytes. Here, as shown in the figure, when the number of pixels of the one transfer line is set to 5000 pixels, the number of transfer data is set to 15 Kbytes. As a result, the number of transfer data is a multiple of the boundary (3 bytes) of each image processing module IP1, IP2, IP3, and transfer processing by DMAC can be executed appropriately.

これに対し、図7の画像がモノクロの場合、1画素当たりのデータ量は1byteとなる。ここで、仮に、カラーの場合と同様、上記1転送ラインの画素数を5000画素として設定すると、上記転送データ数は、5000byteとして設定され、各画像処理モジュールIP1,IP2,IP3のバウンダリ(3byte)の倍数とならない。   On the other hand, when the image in FIG. 7 is monochrome, the data amount per pixel is 1 byte. As in the case of color, if the number of pixels of one transfer line is set to 5000 pixels, the number of transfer data is set to 5000 bytes, and the boundary (3 bytes) of each image processing module IP1, IP2, IP3. It is not a multiple of.

そこで、モノクロの場合、上記1転送ラインにマージン領域の画素を1画素分だけ余分に加えることにより(図7参照)、上記1転送ラインの画素数を5001画素に設定変更する。このようにすることにより、上記転送データ数は、5001byteとして設定され、各画像処理モジュールIP1,IP2,IP3のバウンダリ(3byte)の倍数となり、適切にデータ転送を実行することができる。   Therefore, in the case of monochrome, the number of pixels in the one transfer line is changed to 5001 pixels by adding one extra pixel in the margin area to the one transfer line (see FIG. 7). By doing so, the number of transfer data is set as 5001 bytes, which is a multiple of the boundary (3 bytes) of each image processing module IP1, IP2, IP3, and data transfer can be executed appropriately.

従来の画像処理装置100においては、このようにして、上記転送データ数をカラーかモノクロかの相違に応じて切り換えることとしていた。
特開平6−266655号公報(公開日:平成6年9月22日)
In the conventional image processing apparatus 100, the number of transfer data is thus switched according to the difference between color and monochrome.
JP-A-6-266655 (publication date: September 22, 1994)

また、以上示した画像処理装置100では、上述したように、画像処理モジュールIP1,IP2,IP3の各々のバウンダリは、各々で共通値となるように設定されている。しかし、本来、各々の画像処理モジュールIP1,IP2,IP3において設定されるべきバウンダリの最適値は、各々の画像処理モジュールにて実行される画像処理の種類によって異なるものである。したがって、画像処理装置100において、画像処理モジュールIP1,IP2,IP3の各々のバウンダリは、全画像処理モジュールで共通の値とはせずに、画像処理モジュール毎に、各々で実行される処理に最適なバウンダリを設定することが好ましい。   In the image processing apparatus 100 described above, as described above, the boundaries of the image processing modules IP1, IP2, and IP3 are set to have a common value. However, the optimum value of the boundary to be originally set in each of the image processing modules IP1, IP2, and IP3 differs depending on the type of image processing executed in each of the image processing modules. Therefore, in the image processing apparatus 100, the boundaries of the image processing modules IP1, IP2, and IP3 are not common values for all the image processing modules, and are optimal for the processing executed for each image processing module. It is preferable to set a valid boundary.

ところが、画像処理装置100において、画像処理モジュールIP1,IP2,IP3の各々のバウンダリが異なっていると、上記転送データ数が、あるモジュールのバウンダリの倍数に該当するが、別の画像処理モジュールのバウンダリの倍数にならないという不都合が起こり得、この場合、画像処理モジュール間でのデータ転送を行うことができなくなる。   However, in the image processing apparatus 100, if the boundaries of the image processing modules IP1, IP2, and IP3 are different, the number of transfer data corresponds to a multiple of the boundary of a certain module, but the boundary of another image processing module. Inconvenience that it does not become a multiple of 1 can occur, and in this case, data transfer between the image processing modules cannot be performed.

また、ある画像処理においては画像処理モジュールIP1にのみ画像データの転送が行われ、別の画像処理においては画像処理モジュールIP2にのみ画像データの転送が行われるという場合もあり得る。ここで、常に上記転送データ数を一定とすると、画像処理モジュールIP1と画像処理モジュールIP2とでバウンダリが互いに異なる場合、いずれかの画像処理においてデータ転送を実現できなくなる事があり得るという問題が生じる。   In some image processing, image data may be transferred only to the image processing module IP1, and in another image processing, image data may be transferred only to the image processing module IP2. Here, if the number of transfer data is always constant, there is a problem that data transfer may not be realized in any of image processing when the boundary is different between the image processing module IP1 and the image processing module IP2. .

また、画像処理モジュールIP1,IP2,IP3の各々のバウンダリを共通としない場合に、仮に、選択された各画像処理モジュールIP1,IP2,IP3の各々に対してモジュール別に上記転送データ数を設定すれば、当該転送データ数を画像処理モジュール別に計算する必要があり、CPUや演算回路等の演算処理の負荷が増大するという問題も生じる。例えば、選択された複数の画像処理モジュールIP1,IP2,IP3において、各々の転送データ数が3byte,6byte,9byteとして設定されている場合、画像処理モジュール毎に転送データ数を計算すると、画像処理モジュールIP1に対しては3の倍数の5001byteを上記転送データ数として計算し、画像処理モジュールIP2に対しては6の倍数の5004byteを上記転送データ数として計算し、画像処理モジュールIP3に対しては9の倍数の5004byteを上記転送データ数として計算する必要がある。   Further, if the boundaries of the image processing modules IP1, IP2, and IP3 are not common, the transfer data number is set for each module for each of the selected image processing modules IP1, IP2, and IP3. Therefore, it is necessary to calculate the number of transfer data for each image processing module, which causes a problem that the processing load on the CPU, arithmetic circuit, etc. increases. For example, when the number of transfer data is set as 3 bytes, 6 bytes, and 9 bytes in the selected plurality of image processing modules IP1, IP2, and IP3, the image processing module is calculated by calculating the number of transfer data for each image processing module. For IP1, 5001 bytes, which is a multiple of 3, is calculated as the number of transfer data, for image processing module IP2, 5004 bytes, which is a multiple of 6, is calculated as the number of transfer data, and for image processing module IP3, 9 It is necessary to calculate 5004 bytes which is a multiple of the number as the number of transfer data.

本発明は、以上の問題に鑑みてなされたものであり、複数の画像処理部を備えた画像処理装置において、少なくとも2つの画像処理部のバウンダリが互いに異なっている場合であっても、適切にデータ転送を実現できる画像処理装置、画像処理装置の制御プログラム、該プログラムを記録したコンピュータ読み取り可能な記録媒体を提供することを目的とする。   The present invention has been made in view of the above problems, and in an image processing apparatus including a plurality of image processing units, even when the boundaries of at least two image processing units are different from each other, An object of the present invention is to provide an image processing apparatus capable of realizing data transfer, a control program for the image processing apparatus, and a computer-readable recording medium on which the program is recorded.

以上の目的を達成するために、本発明の画像処理装置は、複数の画像処理部と制御部とを備え、さらに、画像処理部に対するデータ転送を実行するデータ転送部を含み、上記複数の画像処理部のうちの少なくとも2つの画像処理部においては、上記データ転送の転送単位のデータ量を示す転送パラメータが互いに異なっており、上記制御部は、実行すべき画像処理の種類に対応した画像処理部を選択する画像処理選択手段と、選択した画像処理部において画像データの転送が行われるように上記データ転送部を制御する転送制御手段と、上記選択された画像処理部の上記転送パラメータに応じて、上記データ転送部の1転送当たりの転送データ量を調整する転送データ量調整手段と、を含むことを特徴とする。   In order to achieve the above object, an image processing apparatus of the present invention includes a plurality of image processing units and a control unit, and further includes a data transfer unit that executes data transfer to the image processing unit, and the plurality of images At least two image processing units of the processing units have different transfer parameters indicating the data amount of the transfer unit of the data transfer, and the control unit performs image processing corresponding to the type of image processing to be executed. An image processing selection unit for selecting a copy unit, a transfer control unit for controlling the data transfer unit so that image data is transferred in the selected image processing unit, and the transfer parameter of the selected image processing unit. And a transfer data amount adjusting means for adjusting a transfer data amount per transfer of the data transfer unit.

上記構成によれば、上記複数の画像処理部のうち、画像処理を実行する画像処理部のみにおいて画像データの転送処理が実行されることとなるが、当該画像処理部の転送パラメータ(バウンダリ)に応じて、データ転送部の1転送当たりの転送データ量を調整することができる。それゆえ、データ転送のなされる画像処理部の転送パラメータがどのような値であっても、上記データ転送部の1転送当たりの転送データ量を上記転送パラメータに適した値に調整することができる。   According to the above configuration, among the plurality of image processing units, the image data transfer process is executed only in the image processing unit that executes the image processing, and the transfer parameter (boundary) of the image processing unit is set as the transfer parameter (boundary). Accordingly, the transfer data amount per transfer of the data transfer unit can be adjusted. Therefore, the transfer data amount per transfer of the data transfer unit can be adjusted to a value suitable for the transfer parameter regardless of the transfer parameter of the image processing unit to which data transfer is performed. .

これにより、画像処理装置において、画像処理部を複数含み、少なくとも2つの画像処理部の上記転送パラメータが互いに異なっている場合でも、データ転送のなされる画像処理部の転送パラメータに応じて、上記データ転送部における1転送当たりの転送データ量を該転送パラメータに適合した値に調整することが可能となり、適切にデータ処理を実行することができる。   Thus, in the image processing apparatus, even if the image processing unit includes a plurality of image processing units and the transfer parameters of at least two image processing units are different from each other, the data is transferred according to the transfer parameters of the image processing unit to which data transfer is performed. The amount of transfer data per transfer in the transfer unit can be adjusted to a value suitable for the transfer parameter, and data processing can be executed appropriately.

なお、前記特許文献1には、バウンダリの異なる2つのプロセッサ間でデータ転送を行う構成において、データバッファを介して転送データを変換する方式が開示されている。しかしながら、この方式では、転送元および転送先は定まっており、バウンダリを異ならせる複数のプロセッサのなかから転送先のプロセッサを選択し、選択されたプロセッサのバウンダリに応じて1転送当たりのデータ転送量を調整するといった構成は開示されていない。   The above-mentioned patent document 1 discloses a method of converting transfer data via a data buffer in a configuration in which data transfer is performed between two processors having different boundaries. However, in this method, the transfer source and the transfer destination are determined, and a transfer destination processor is selected from a plurality of processors having different boundaries, and the data transfer amount per transfer is selected according to the boundary of the selected processor. There is no disclosure of a configuration that adjusts.

また、本発明の画像処理装置においては、上記データ転送部における1転送当たりの転送データ量を、データ転送のなされる画像処理部における転送パラメータの倍数となるように設定することが可能となり、データ転送が行えないという事態の発生を回避できる。   In the image processing apparatus of the present invention, the transfer data amount per transfer in the data transfer unit can be set to be a multiple of the transfer parameter in the image processing unit to which data transfer is performed. Occurrence of a situation where transfer cannot be performed can be avoided.

さらに、本発明の画像処理装置は、上記画像処理選択手段は2以上の画像処理部を選択し、上記転送指示手段は、選択された各画像処理部に順に画像データが転送されるように上記データ転送部を制御し、上記転送データ量調整手段は、上記選択された2以上の画像処理部における各々の上記転送パラメータの公倍数になるように上記転送データ量を調整する構成であってもよい。   Furthermore, in the image processing apparatus of the present invention, the image processing selection unit selects two or more image processing units, and the transfer instruction unit transfers the image data to each of the selected image processing units in order. The data transfer unit may be controlled, and the transfer data amount adjusting unit may adjust the transfer data amount so as to be a common multiple of each of the transfer parameters in the two or more selected image processing units. .

上記構成によれば、画像処理部が2以上選択され、選択された各画像処理部に対して順に画像データを転送する場合、データ転送のなされる各画像処理部の転送パラメータが夫々で異なることもあり得る。   According to the above configuration, when two or more image processing units are selected and image data is sequentially transferred to each selected image processing unit, the transfer parameters of each image processing unit to which data transfer is performed are different. There is also a possibility.

そこで、上記構成において、上記データ転送量調整手段は、上記選択された2以上の画像処理部における各々の上記転送パラメータの公倍数になるように上記転送データ量を調整している。それゆえ、データ転送のなされる各画像処理部の上記転送パラメータが夫々で異なっていても、選択された画像処理部の各々に対して、これら画像処理部の上記転送パラメータの倍数のデータ量の画像データを順に転送することができ、適切にデータ処理を実行することができる。   Therefore, in the above configuration, the data transfer amount adjusting means adjusts the transfer data amount so as to be a common multiple of each of the transfer parameters in the two or more selected image processing units. Therefore, even if the transfer parameters of the image processing units to which data transfer is performed are different from each other, the data amount that is a multiple of the transfer parameters of the image processing units is selected for each of the selected image processing units. Image data can be transferred in order, and data processing can be performed appropriately.

なお、本発明の画像処理装置は、コンピュータによって実現してもよく、この場合には、コンピュータを上記各手段として動作させる画像処理装置の制御プログラム,該プログラムを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。   The image processing apparatus of the present invention may be realized by a computer. In this case, a control program for the image processing apparatus that causes the computer to operate as each of the above-described means, and a computer-readable recording medium that records the program are also included. Falls within the scope of the present invention.

以上のように、本発明の画像処理装置は、複数の画像処理部と制御部とを備え、さらに、各画像処理部における画像データの転送処理を実行するデータ転送部を含み、上記複数の画像処理部のうちの少なくとも2つの画像処理部においては、上記転送処理における転送単位のデータ量を示す転送パラメータが互いに異なっており、上記制御部は、実行すべき画像処理の種類に対応した画像処理部を選択する画像処理選択手段と、選択した画像処理部へ画像データが転送されるように上記データ転送部を制御する転送制御手段と、上記選択された画像処理部の上記転送パラメータに応じて、上記データ転送部の1転送当たりの転送データ量を調整する転送データ量調整手段と、を含むことを特徴とする。   As described above, the image processing apparatus of the present invention includes a plurality of image processing units and a control unit, and further includes a data transfer unit that executes a transfer process of image data in each image processing unit. At least two image processing units of the processing units have different transfer parameters indicating data amounts of transfer units in the transfer processing, and the control unit performs image processing corresponding to the type of image processing to be executed. An image processing selection unit for selecting a copy unit, a transfer control unit for controlling the data transfer unit so that image data is transferred to the selected image processing unit, and the transfer parameter of the selected image processing unit. And a transfer data amount adjusting means for adjusting a transfer data amount per transfer of the data transfer unit.

それゆえ、画像処理装置において、画像処理部を複数含み、少なくとも2つの画像処理部の上記取扱データ量が互いに異なっている場合でも、適切なデータ処理を実現できる。   Therefore, even if the image processing apparatus includes a plurality of image processing units and the handling data amounts of at least two image processing units are different from each other, appropriate data processing can be realized.

また、上記の画像処理装置において、上記画像処理選択手段が2以上の画像処理部を選択し、上記転送指示手段が、選択された各画像処理部に順に画像データが転送されるように上記データ転送部を制御し、上記転送データ量調整手段が、上記選択された2以上の画像処理部における各々の上記転送パラメータの公倍数になるように上記転送データ量を調整する構成を採用すれば、1転送当たりの転送データ量を画像処理部毎で計算する必要がなく、各画像処理部に共通の上記転送データ量を1回計算するだけでよく、制御部の演算処理の負荷を軽減できるという効果が生じる。また、開発者にとっては把握すべき転送データ量の個数が減り(3個→1個)、開発が容易になるメリットがある。   In the image processing apparatus, the image processing selection unit selects two or more image processing units, and the transfer instruction unit transfers the data so that the image data is sequentially transferred to each selected image processing unit. If the transfer unit is controlled and the transfer data amount adjusting means adjusts the transfer data amount so as to be a common multiple of each of the transfer parameters in the two or more selected image processing units, 1 There is no need to calculate the transfer data amount per transfer for each image processing unit, and it is only necessary to calculate the transfer data amount common to each image processing unit once, and the load of calculation processing of the control unit can be reduced. Occurs. Further, there is an advantage that the number of transfer data to be grasped is reduced (3 → 1) for the developer, and the development becomes easy.

例えば、選択された複数の画像処理部a,b,cにおいて、各々の転送パラメータが3byte,6byte,9byteであるとき、(3,6,9)の最小公倍数→18から、18の倍数の5004byteを選択されたすべての画像処理部a,b,cに対する共通の転送データ量として演算すれば、画像処理モジュール毎に転送データ量を演算する構成よりも演算処理の負荷を軽減できる。   For example, in the plurality of selected image processing units a, b, and c, when the transfer parameters are 3 bytes, 6 bytes, and 9 bytes, the least common multiple of (3, 6, 9) → 18 to the multiple of 18, 5004 bytes Is calculated as a common transfer data amount for all the selected image processing units a, b, and c, the load of the calculation process can be reduced as compared with the configuration in which the transfer data amount is calculated for each image processing module.

以下、本発明の画像処理装置の一実施形態を図に基づいて説明する。図1は、本実施形態の画像処理装置10の概略構成を示すブロック図である。なお、以下で説明する画像処理装置10は、図示しないものの、MFP(Multi Function Printer)等の画像形成装置に備えられている画像処理手段であるものとする。   Hereinafter, an embodiment of an image processing apparatus of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram illustrating a schematic configuration of an image processing apparatus 10 according to the present embodiment. Note that an image processing apparatus 10 described below is an image processing means (not shown) provided in an image forming apparatus such as an MFP (Multi Function Printer).

図1に示すように、画像処理装置10は、複数の画像処理モジュール(M1,M2,・・・,Mn),メモリ15,バス20,入力部30,出力部40,制御部50を含む構成である。   As shown in FIG. 1, the image processing apparatus 10 includes a plurality of image processing modules (M1, M2,..., Mn), a memory 15, a bus 20, an input unit 30, an output unit 40, and a control unit 50. It is.

画像処理モジュールM1,・・・,Mnの各々は、画像処理を実現するユニットである。また、図1に示すように、各々の画像処理モジュールM1,・・・,Mnは、メモリ15に書き込まれている画像データを該画像処理モジュールに転送する入力用DMACと、転送されてきた画像データに対して画像処理を実行する演算回路(不図示)と、画像処理の実行された画像データをメモリ15に転送する出力用DMACと、を含んでいる。   Each of the image processing modules M1,..., Mn is a unit that realizes image processing. As shown in FIG. 1, each of the image processing modules M1,..., Mn has an input DMAC that transfers the image data written in the memory 15 to the image processing module, and the transferred image. An arithmetic circuit (not shown) that performs image processing on the data and an output DMAC that transfers the image data subjected to the image processing to the memory 15 are included.

なお、図1に示すように、本実施形態の画像処理モジュールの各々においては、入力用DMACと出力用DMACとが別々に構成され、これらDMACはバス20に接続されている。そして、図2に示すように、この入力用DMACとは、メモリ70から画像処理モジュールへ画像データを転送(入力)するものであり、出力用DMACとは、画像処理モジュールからメモリ70へ画像データを転送(出力)するものである。   As shown in FIG. 1, in each of the image processing modules of this embodiment, an input DMAC and an output DMAC are configured separately, and these DMACs are connected to a bus 20. As shown in FIG. 2, the input DMAC transfers (inputs) image data from the memory 70 to the image processing module, and the output DMAC refers to image data from the image processing module to the memory 70. Is transferred (output).

また、各画像処理モジュールM1,・・・,Mnは、各々で互いに異なる種類の画像処理を実行するものである。ここで、実行される画像処理の種類としては、「回転処理」「変倍処理」「圧縮処理」「伸張処理」等がある。   Each of the image processing modules M1,..., Mn executes different types of image processing. Here, types of image processing to be executed include “rotation processing”, “magnification processing”, “compression processing”, “decompression processing”, and the like.

なお、図1の画像処理装置10において、各画像処理モジュールM1,・・・,Mnは、カラー画像を処理するためのものであり、図示しないが、モノクロ画像を処理する画像処理モジュールm1,・・・,mnも備えられているものとする。   In the image processing apparatus 10 of FIG. 1, each of the image processing modules M1,..., Mn is for processing a color image, and although not shown, the image processing modules m1,. .., mn is also provided.

メモリ15は、各々の画像処理モジュールM1,・・・,Mnにおいて処理対象とされる画像データが書き込まれるデータ展開領域であり、バス20に接続されている。   The memory 15 is a data development area in which image data to be processed in each of the image processing modules M1,..., Mn is written, and is connected to the bus 20.

入力部30は、外部装置(例えば、スキャナ、PC等)から送られてくる画像データを画像処理装置10に入力するインターフェイスであり、バス20に接続されている。出力部40は、画像処理装置10にて画像処理された画像データをプリンタエンジン(画像形成手段)へ出力するインターフェイスである。   The input unit 30 is an interface for inputting image data sent from an external device (for example, a scanner, a PC, etc.) to the image processing device 10, and is connected to the bus 20. The output unit 40 is an interface that outputs image data processed by the image processing apparatus 10 to a printer engine (image forming unit).

制御部50は、画像処理装置10に備えられている各種ハードウェア(各画像処理モジュール,DMAC,メモリ,入力部,出力部)の動作を統括的に制御するコンピュータであり、例えば、プログラムコードを実行するCPU(Central Processing Unit)、該プログラムコードを格納するROM(Read Only Memory)やRAM(Random Access Memory)などによって実現される。   The control unit 50 is a computer that comprehensively controls the operation of various types of hardware (each image processing module, DMAC, memory, input unit, output unit) provided in the image processing apparatus 10. This is realized by a CPU (Central Processing Unit) to be executed, a ROM (Read Only Memory) and a RAM (Random Access Memory) for storing the program code.

つぎに、画像処理装置10における画像データの転送の概略について説明する。まず、入力部30から画像データが入力されると、この画像データはメモリ15に書き込まれる。そして、ある画像処理の実行コマンドが利用者によって入力されると、制御部50は、当該画像処理を実行する画像処理モジュールを選択・起動する。なお、ここで選択される画像処理モジュールは単数であっても複数であってもよいが、以下では、説明の便宜上、画像処理モジュールM1,M2,M3が選択されたものとする。   Next, an outline of image data transfer in the image processing apparatus 10 will be described. First, when image data is input from the input unit 30, the image data is written in the memory 15. When an execution command for an image process is input by the user, the control unit 50 selects and activates an image processing module that executes the image process. The image processing modules selected here may be singular or plural, but in the following, it is assumed that the image processing modules M1, M2, and M3 are selected for convenience of explanation.

そして、図2に示すように、メモリ15に書き込まれた画像データは、上記選択された各画像処理モジュールM1,M2,M3に含まれる各DMACによって、これら画像処理モジュールM1,M2,M3に対して、カスケードに転送される。より詳細に説明すると、画像データは、画像処理モジュールM1→メモリ15→画像処理モジュールM2→メモリ15→画像処理モジュールM3→メモリ15の順に転送される。   As shown in FIG. 2, the image data written in the memory 15 is transferred to the image processing modules M1, M2, and M3 by the DMACs included in the selected image processing modules M1, M2, and M3. And transferred to the cascade. More specifically, the image data is transferred in the order of image processing module M 1 → memory 15 → image processing module M 2 → memory 15 → image processing module M 3 → memory 15.

つぎに、以上示した画像データの転送について、より詳細に説明する。転送される画像データは、図3に示すように、ビットマップ形式のデータであり、処理対象の画像が展開されている実画像領域と、実画像領域を囲むように展開されているマージン領域とが含まれている。   Next, the transfer of the image data described above will be described in more detail. As shown in FIG. 3, the transferred image data is bitmap format data, and an actual image area in which an image to be processed is expanded, and a margin area expanded so as to surround the actual image area, It is included.

画像処理装置10は、入力部30から入力した画像データがメモリ15に書き込まれると、メモリ15上に展開された画像について、図3に示すように、所定の画素数(図では5000画素)からなる主走査方向1行分の画像を1転送ラインとし、上記1転送ライン×n列個の画素からなる画像を1転送ブロックとして、メモリ15上に展開された画像を転送ブロック毎に分割設定する。   When the image data input from the input unit 30 is written in the memory 15, the image processing apparatus 10 determines the image developed on the memory 15 from a predetermined number of pixels (5000 pixels in the figure) as shown in FIG. 3. An image for one row in the main scanning direction is set as one transfer line, an image composed of 1 transfer line × n columns of pixels is set as one transfer block, and the image developed on the memory 15 is divided and set for each transfer block. .

この設定の後、まず、画像処理モジュールM1では、入力用DMACによって、1転送ライン分の画像データが転送・入力される。さらに、画像処理モジュールM1は入力した画像データを処理し、その後、画像処理モジュールM1の出力用DMACによって該画像データはメモリ15に転送される。画像処理モジュールM1では、上記1転送ライン毎に、このような処理がn回繰り返され、最初の転送ブロックa(図3参照)の画像データの処理が行われる。   After this setting, first, in the image processing module M1, image data for one transfer line is transferred / input by the input DMAC. Further, the image processing module M1 processes the input image data, and then the image data is transferred to the memory 15 by the output DMAC of the image processing module M1. In the image processing module M1, such processing is repeated n times for each transfer line, and the image data of the first transfer block a (see FIG. 3) is processed.

つぎに、図6に示すように、画像処理モジュールM1は、最初の転送ブロックaの画像データの処理・転送が終了すると、次段の画像処理モジュールM2に対して、転送ブロックaに対する処理の完了を通知する。この通知を受けた画像処理モジュールM2においては、転送ブロックaに対応する画像データの転送・処理が上記1転送ライン毎に行われる。また、図6に示すように、この画像処理モジュールM2の動作と並行して、画像処理モジュールM1においては、次の転送ブロックb(図3参照)に対応する画像データの転送・処理が上記1転送ライン毎に行われる。   Next, as shown in FIG. 6, when the image processing module M1 finishes processing and transferring the image data of the first transfer block a, the image processing module M1 completes the processing for the transfer block a with respect to the next-stage image processing module M2. To be notified. In the image processing module M2 that has received this notification, image data transfer / processing corresponding to the transfer block a is performed for each transfer line. Further, as shown in FIG. 6, in parallel with the operation of the image processing module M2, in the image processing module M1, the transfer / processing of image data corresponding to the next transfer block b (see FIG. 3) is performed as described above. This is done for each transfer line.

さらに、画像処理モジュールM1が転送ブロックbの画像データの処理を終え、画像処理モジュールM2が転送ブロックaに相当する画像データの処理を終えると、次は、画像処理モジュールM1において、転送ブロックcに相当する画像データの転送・処理が上記1転送ライン毎に行われ、画像処理モジュールM2において、転送ブロックbに相当する画像データの転送・処理が上記1転送ライン毎に行われ、画像処理モジュールM3において、転送ブロックaに相当する画像データの転送・処理が上記1転送ライン毎に行われる。このようにして、画像処理モジュールM1,M2,M3は、処理を進行していく。   Further, when the image processing module M1 finishes processing the image data of the transfer block b and the image processing module M2 finishes processing the image data corresponding to the transfer block a, the image processing module M1 then transfers the transfer block c to the transfer block c. Corresponding image data transfer / processing is performed for each transfer line, and in the image processing module M2, image data transfer / processing for the transfer block b is performed for each transfer line, and the image processing module M3. The transfer / processing of the image data corresponding to the transfer block a is performed for each transfer line. In this way, the image processing modules M1, M2, and M3 proceed with processing.

つまり、画像処理モジュールM1,M2,M3においては、DMACによる1転送処理当たり、1転送ラインの画像が転送(入力または出力)されることになる。   That is, in the image processing modules M1, M2, and M3, one transfer line image is transferred (input or output) per transfer process by the DMAC.

また、本実施形態では、1転送ラインの画像のデータ量を表現する際、「転送データ数」というパラメータを使用することとする。つまり、「転送データ数」は、上記1転送ブロックの画像における主走査方向1行分のデータ量であって、DMACの1転送処理当たりの転送データ量に該当する。例えば、1画素当たりのデータ量が3byteからなり、上記1転送ラインの画素数が5000画素の場合、上記「転送データ数」は15Kbyteとなる。   In this embodiment, a parameter “number of transfer data” is used when expressing the data amount of an image of one transfer line. That is, the “number of transfer data” is the amount of data for one row in the main scanning direction in the image of the one transfer block, and corresponds to the amount of transfer data per DMAC transfer process. For example, when the data amount per pixel is 3 bytes and the number of pixels of the one transfer line is 5000 pixels, the “number of transfer data” is 15 Kbytes.

ところで、本実施形態の画像処理装置10では、画像処理モジュールM1,M2,M3,・・・,Mnは、各々、バウンダリを異ならせている。具体的に説明すると、図2に示すように、画像処理モジュールM1のバウンダリは3byteであり、画像処理モジュールM2のバウンダリは6byteであり、画像処理モジュールM3のバウンダリは9byteとなっている。   Incidentally, in the image processing apparatus 10 of the present embodiment, the image processing modules M1, M2, M3,..., Mn have different boundaries. Specifically, as shown in FIG. 2, the boundary of the image processing module M1 is 3 bytes, the boundary of the image processing module M2 is 6 bytes, and the boundary of the image processing module M3 is 9 bytes.

なお、画像処理モジュールのバウンダリ(転送パラメータ)とは、その画像処理モジュールにおけるデータ転送の転送単位となるデータ量を示すものであり、より具体的には、その画像処理モジュールに含まれる入力用DMACおよび出力用DMACの転送単位となるデータ量を示すものである。つまり、各画像処理モジュールにおいては、1転送当たりで、バウンダリの倍数のデータ量の画像データを転送可能であるが、バウンダリの倍数でないデータ量の画像データを転送することはできない。例えば、バウンダリが3byteの画像処理モジュールにおいては、DMACによる1回の転送処理にて、3byteの倍数のデータ量の画像データを転送可能である。   The boundary (transfer parameter) of an image processing module indicates the amount of data that is a transfer unit of data transfer in the image processing module, and more specifically, the input DMAC included in the image processing module. And the amount of data that is a transfer unit of the output DMAC. That is, in each image processing module, image data having a data amount that is a multiple of the boundary can be transferred per transfer, but image data having a data amount that is not a multiple of the boundary cannot be transferred. For example, in an image processing module having a boundary of 3 bytes, image data having a data amount that is a multiple of 3 bytes can be transferred by a single transfer process by the DMAC.

そして、制御部50は、選択・起動させる画像処理モジュールのバウンダリに基づいて、上記「転送データ数」を調整する機能を実現する。以下では、制御部50における上記した機能について詳細に説明する。   Then, the control unit 50 realizes a function of adjusting the “number of transfer data” based on the boundary of the image processing module to be selected / activated. Hereinafter, the functions described above in the control unit 50 will be described in detail.

図4に示すように、制御部50には、モジュール選択部51,転送データ数調整部60,データ転送制御部71が含まれている。   As shown in FIG. 4, the control unit 50 includes a module selection unit 51, a transfer data number adjustment unit 60, and a data transfer control unit 71.

モジュール選択部51は、画像処理の実行コマンドが利用者によって入力されると、当該画像処理を実行する画像処理モジュールを選択かつ起動させる制御を行う。つまり、モジュール選択部51は、実行される画像処理の種類に対応した画像処理モジュールを選択・起動する制御を行う。また、モジュール選択部51は、選択した画像処理モジュールおよび当該画像処理モジュールのバウンダリを示す情報を、転送データ数調整部60およびデータ転送制御部71に伝達する機能をも有する。   When an execution command for image processing is input by the user, the module selection unit 51 performs control for selecting and starting an image processing module that executes the image processing. That is, the module selection unit 51 performs control for selecting and starting an image processing module corresponding to the type of image processing to be executed. The module selection unit 51 also has a function of transmitting information indicating the selected image processing module and the boundary of the image processing module to the transfer data number adjusting unit 60 and the data transfer control unit 71.

転送データ数調整部60は、モジュール選択部51に選択されている画像処理モジュールのバウンダリに応じて、上記転送データ数を調整する。以下では、転送データ数調整部60において実行されている制御の具体的手順について詳細に説明する。   The transfer data number adjustment unit 60 adjusts the transfer data number according to the boundary of the image processing module selected by the module selection unit 51. Below, the specific procedure of the control currently performed in the transfer data number adjustment part 60 is demonstrated in detail.

転送データ数調整部60には、転送ブロック初期設定部61、転送データ数演算部62、転送データ数修正部63、転送ブロック再設定部64が含まれている。   The transfer data number adjustment unit 60 includes a transfer block initial setting unit 61, a transfer data number calculation unit 62, a transfer data number correction unit 63, and a transfer block resetting unit 64.

転送ブロック初期設定部61は、メモリ15にアクセスすることによって、メモリ15に書き込まれた画像データに対応する画像について、上述した各転送ブロック(図3参照)を初期設定する。なお、転送ブロック初期設定部61は、図3に示すように、各転送ブロックにおいて、実画像領域の主走査方向両端と該両端に隣接するマージン領域とが必ず含まれるように、上記初期設定を行う。   The transfer block initial setting unit 61 accesses the memory 15 to initialize each transfer block (see FIG. 3) described above for an image corresponding to the image data written in the memory 15. As shown in FIG. 3, the transfer block initial setting unit 61 performs the initial setting so that each transfer block always includes both ends of the actual image area in the main scanning direction and margin areas adjacent to both ends. Do.

転送データ数演算部62は、メモリ15にアクセスすることによって、転送ブロック初期設定部61によって初期設定された各転送ブロックの1転送ラインの画素数から、初期設定された各転送ブロックの転送データ数を演算する。なお、上述通り、上記転送データ数とは、1転送ライン分の画像のデータ量に相当するものである。   The transfer data number calculation unit 62 accesses the memory 15, and from the number of pixels of one transfer line of each transfer block initialized by the transfer block initial setting unit 61, the transfer data number of each transfer block initialized Is calculated. As described above, the number of transfer data corresponds to the amount of image data for one transfer line.

例えば、1画素当たり3byteのデータ量の画像データ(例えば、8bitの3色カラー画像のデータ)において、初期設定された各転送ブロックの1転送ラインの画素数が5000画素である場合、転送データ数は、5000×3=15000byteになる。また、例えば、1画素当たり1byteのデータ量の画像データ(例えば、8bitのモノクロ画像のデータ)において、初期設定された各転送ブロックの1転送ラインの画素数が5000画素である場合、転送データ数は、5000×1=5000byteになる。   For example, in the case of image data having a data amount of 3 bytes per pixel (for example, 8-bit 3-color image data), when the number of pixels of one transfer line in each transfer block that is initially set is 5000 pixels, the number of transfer data Becomes 5000 × 3 = 15000 bytes. Further, for example, in the case of image data having a data amount of 1 byte per pixel (for example, 8-bit monochrome image data), when the number of pixels in one transfer line of each initially set transfer block is 5000 pixels, the number of transfer data Becomes 5000 × 1 = 5000 bytes.

なお、転送データ数演算部62は、演算した転送データ数を転送データ数修正部63へ伝達する。   The transfer data number calculation unit 62 transmits the calculated transfer data number to the transfer data number correction unit 63.

転送データ数修正部63は、モジュール選択部51によって選択された画像処理モジュールのバウンダリを示す情報をモジュール選択部51から取得し、このバウンダリを参照して、上記転送データ数の修正値を演算する。この演算について、以下、詳細に説明する。   The transfer data number correction unit 63 obtains information indicating the boundary of the image processing module selected by the module selection unit 51 from the module selection unit 51, and calculates the correction value of the transfer data number with reference to this boundary. . This calculation will be described in detail below.

まず、転送データ数修正部63は、モジュール選択部51によって選択された画像処理モジュールが単一の場合、該選択された画像処理モジュールのバウンダリの倍数であって、転送データ数演算部62に演算された転送データ数以上かつ該転送データ数と最も差のない値になるように、転送データ数の修正値を演算する。   First, when there is a single image processing module selected by the module selection unit 51, the transfer data number correction unit 63 calculates the transfer data number calculation unit 62, which is a multiple of the boundary of the selected image processing module. The correction value of the transfer data number is calculated so that the value is equal to or greater than the transfer data number and the least difference from the transfer data number.

具体的には、転送データ数演算部62に演算された転送データ数をT,選択された画像処理モジュールのバウンダリをBとした場合、転送データ数修正部63は、TをBで除算し、除算して得られた値の小数部分を切り上げて、切り上げて得られた値にBを乗算することによって上記修正値を得ることとしている。   Specifically, when the transfer data number calculated by the transfer data number calculation unit 62 is T and the boundary of the selected image processing module is B, the transfer data number correction unit 63 divides T by B, The corrected value is obtained by rounding up the fractional part of the value obtained by division and multiplying the value obtained by rounding up by B.

例えば、転送データ数演算部62に演算された転送データ数が5000byte(上記モノクロ画像の場合)であって、モジュール選択部51に選択された画像処理モジュールのバウンダリが3byteの場合、
5000/3≒1667(小数点以下切り上げ)
1667×3=5001
となり、転送データ数の修正値は5001byte(3の倍数)となる。
For example, when the transfer data number calculated by the transfer data number calculation unit 62 is 5000 bytes (in the case of the monochrome image), and the boundary of the image processing module selected by the module selection unit 51 is 3 bytes,
5000 / 3≈1667 (rounded up after the decimal point)
1667 × 3 = 5001
Thus, the correction value of the number of transfer data is 5001 bytes (multiple of 3).

また、例えば、転送データ数演算部62に演算された転送データ数が15000byte(上記カラー画像の場合)であって、モジュール選択部51に選択されたのが画像処理モジュールM1のみの場合、該画像処理モジュールM1のバウンダリは3byteであることから(図2参照)、転送データ数修正部63によって演算される転送データ数の修正値も15000byte(3の倍数)となる。   Also, for example, when the transfer data number calculated by the transfer data number calculation unit 62 is 15000 bytes (in the case of the color image) and the module selection unit 51 selects only the image processing module M1, the image Since the boundary of the processing module M1 is 3 bytes (see FIG. 2), the transfer data number correction value calculated by the transfer data number correction unit 63 is also 15000 bytes (a multiple of 3).

また、転送データ数修正部63は、モジュール選択部51に選択された画像処理モジュールが複数の場合、該選択された複数の画像処理モジュールにおける各々バウンダリの公倍数であって、転送データ数演算部62に演算された転送データ数以上かつ該転送データ数と最も差のない値になるように、上記転送データ数の修正値を演算する。   In addition, when there are a plurality of image processing modules selected by the module selection unit 51, the transfer data number correction unit 63 is a common multiple of each boundary in the selected plurality of image processing modules, and the transfer data number calculation unit 62 The correction value for the number of transfer data is calculated so that the value is equal to or greater than the number of transfer data calculated in (1) and has the least difference from the number of transfer data.

具体的には、転送データ数演算部62に演算された転送データ数をT,選択された各画像処理モジュールの各バウンダリをE,F,Gとした場合、転送データ数修正部63は、E,F,Gの最小公倍数を求め、Tを当該最小公倍数で除算して得られた値の小数部分を切り上げて、切り上げて得られた値に当該最小公倍数を乗算することによって上記修正値を得ることとしている。   Specifically, when the number of transfer data calculated by the transfer data number calculation unit 62 is T and each boundary of each selected image processing module is E, F, G, the transfer data number correction unit 63 , F, and G are obtained, the fractional part of the value obtained by dividing T by the least common multiple is rounded up, and the value obtained by rounding up is multiplied by the least common multiple to obtain the corrected value. I am going to do that.

例えば、転送データ数演算部62に演算された転送データ数が5000byte(上記モノクロ画像の場合)であって、モジュール選択部51に選択された各画像処理モジュールの各バウンダリが3byte,6byte,9byteの場合、
(3,6,9)の最小公倍数→18
5000/18≒278(小数点以下切り上げ)
278×18=5004
となり、転送データ数修正部63によって演算される転送データ数の修正値は5004byte(3,6,9の公倍数)となる。
For example, the transfer data number calculated by the transfer data number calculation unit 62 is 5000 bytes (in the case of the monochrome image), and each boundary of each image processing module selected by the module selection unit 51 is 3 bytes, 6 bytes, and 9 bytes. If
Least common multiple of (3, 6, 9) → 18
5000/18 ≒ 278 (rounded up after the decimal point)
278 × 18 = 5004
Thus, the correction value of the transfer data number calculated by the transfer data number correction unit 63 is 5004 bytes (the common multiple of 3, 6, 9).

また、例えば、転送データ数演算部62に演算された転送データ数が15000byte(上記カラー画像の場合)であって、モジュール選択部51に選択されたのが画像処理モジュールM1,M2,M3の場合、該画像処理モジュールM1,M2,M3のバウンダリは3byte,6byte,9byteであることから、転送データ数修正部63によって演算される転送データ数の修正値は、
(3,6,9)の最小公倍数→18
15000/18≒834(小数点以下切り上げ)
834×18=15012となり、転送データ数修正部63によって演算される転送データ数の修正値は15012byte(3,6,9の公倍数)となる。
Further, for example, when the transfer data number calculated by the transfer data number calculation unit 62 is 15000 bytes (in the case of the color image) and the module selection unit 51 selects the image processing modules M1, M2, and M3. Since the boundaries of the image processing modules M1, M2, and M3 are 3 bytes, 6 bytes, and 9 bytes, the correction value of the transfer data number calculated by the transfer data number correction unit 63 is
Least common multiple of (3, 6, 9) → 18
15000/18 ≒ 834 (rounded up after the decimal point)
834 × 18 = 15021, and the transfer data number correction value calculated by the transfer data number correction unit 63 is 15012 bytes (a common multiple of 3, 6, 9).

なお、転送データ数修正部63は、演算した転送データ数の修正値を、転送ブロック再設定部64へ伝達する。   The transfer data number correcting unit 63 transmits the calculated correction value of the transfer data number to the transfer block resetting unit 64.

転送ブロック再設定部64は、1転送ラインのデータ量が上記転送データ数の修正値になるように、メモリ15にアクセスして上記1転送ラインおよび各転送ブロックを再設定する。なお、転送データ数の修正値は、初期設定された各転送ブロックの1転送ラインの転送データ数と同一または増加することになるが、増加する場合は、図3に示すマージン領域の画素を増加することによって、上記1転送ラインおよび各転送ブロックを再設定する。   The transfer block resetting unit 64 accesses the memory 15 and resets the one transfer line and each transfer block so that the data amount of one transfer line becomes the correction value of the transfer data number. Note that the correction value of the transfer data number is the same as or increased with the transfer data number of one transfer line of each transfer block that has been initially set. If it increases, the number of pixels in the margin area shown in FIG. 3 is increased. By doing so, the one transfer line and each transfer block are reset.

なお、転送ブロック再設定部64は、各転送ブロックの再設定を終えると、修正された転送データ数、および、再設定された転送ブロックにおけるデータ転送を開始すべき箇所の画素位置(図3の符号α参照)を示すアドレスをデータ転送制御部71へ伝達する。   When the transfer block resetting unit 64 finishes resetting each transfer block, the number of corrected transfer data and the pixel position at the location where data transfer in the reset transfer block should start (see FIG. 3). An address indicating (see symbol α) is transmitted to the data transfer control unit 71.

データ転送制御部71は、転送ブロック再設定部64から上記アドレスおよび転送データ数が伝達されると、モジュール選択部51に選択されている各画像処理モジュールに含まれているDMACを制御することによって、各画像処理モジュールにおけるデータ転送を制御する。具体的に、データ転送制御部71は、転送ブロック再設定部64から伝達されてきたアドレスをスタートアドレスとして上記DMACに設定し、上記伝達されてきた転送データ数を1転送処理当たりの転送データ量として上記DMACに設定する。   When the address and the number of transfer data are transmitted from the transfer block resetting unit 64, the data transfer control unit 71 controls the DMAC included in each image processing module selected by the module selection unit 51. The data transfer in each image processing module is controlled. Specifically, the data transfer control unit 71 sets the address transmitted from the transfer block resetting unit 64 as a start address in the DMAC, and sets the number of transferred data transmitted to the transfer data amount per one transfer process. Is set in the DMAC.

これにより、モジュール選択部51に選択されている各画像処理モジュールにおいては、カスケードに画像データが転送されることとなる。また、モジュール選択部51に選択されている画像処理モジュールM1,M2,M3の各々が互いにバウンダリを異ならせていても、メモリ15に展開されている画像の1転送ラインのデータ量(1回の転送処理における転送データ量)を、画像処理モジュールM1,M2,M3の各々のバウンダリの倍数にすることができる。それゆえ、互いにバウンダリの異なる各画像処理モジュールM1,M2,M3に対する1転送当たりのデータ量は、各画像処理モジュールのバウンダリの共通の倍数に該当することとなる。   Thereby, in each image processing module selected by the module selection unit 51, the image data is transferred in cascade. Even if each of the image processing modules M1, M2, and M3 selected by the module selection unit 51 has a different boundary, the data amount of one transfer line of the image developed in the memory 15 (one time The transfer data amount in the transfer process) can be a multiple of the boundary of each of the image processing modules M1, M2, and M3. Therefore, the amount of data per transfer for the image processing modules M1, M2, and M3 having different boundaries corresponds to a common multiple of the boundaries of the image processing modules.

つぎに、以上示した制御部50に含まれる各部の処理の流れを図5に示すフローチャートに基づいて説明する。   Next, the flow of processing of each unit included in the control unit 50 described above will be described based on the flowchart shown in FIG.

入力部30から入力された画像データがメモリ15に書き込まれ、かつ、画像処理の実行コマンドが利用者によって入力されると、モジュール選択部51は、当該実行コマンドに応じた画像処理を実行する画像処理モジュールを選択かつ起動させる(S1)。さらに、転送ブロック初期設定部61は、メモリ15に書き込まれた画像データに対応する画像について、上述した各転送ブロック(図3参照)を初期設定する(S2)。その後、転送データ数演算部62が、S2において初期設定された1転送ブロックにおける1転送ラインの画素数から転送データ数を演算する(S3)。つぎに、転送データ数修正部63が、モジュール選択部51によって選択されている各画像処理モジュールのバウンダリに基づいて、上記転送データ数の修正値を演算する(S4)。さらに、転送ブロック再設定部64は、転送ブロックの1転送ラインのデータ量が転送データ数の修正値になるように、上記各転送ブロックを再設定する(S5)。   When the image data input from the input unit 30 is written in the memory 15 and an execution command for image processing is input by the user, the module selection unit 51 executes an image processing for executing the image processing according to the execution command. A processing module is selected and activated (S1). Further, the transfer block initial setting unit 61 initializes each transfer block (see FIG. 3) described above for the image corresponding to the image data written in the memory 15 (S2). Thereafter, the transfer data number calculation unit 62 calculates the transfer data number from the number of pixels of one transfer line in one transfer block initialized in S2 (S3). Next, the transfer data number correction unit 63 calculates the correction value of the transfer data number based on the boundary of each image processing module selected by the module selection unit 51 (S4). Further, the transfer block resetting unit 64 resets each transfer block so that the data amount of one transfer line of the transfer block becomes the correction value of the transfer data number (S5).

ここで、再設定された各転送ブロックの1転送ライン分のデータ量は、画像処理モジュールに対してデータ転送を行うDMACにおける1転送処理当たりの転送データ量に該当することとなる。それゆえ、転送データ数調整部60は、モジュール選択部51に選択されている画像処理モジュールのバウンダリに応じて、該画像処理モジュールにデータ転送を行うDMACにおける1転送処理当たりの転送データ量(1転送ラインのデータ量,転送データ数)を調整(修正)していることとなる。   Here, the data amount for one transfer line of each transfer block that has been reset corresponds to the transfer data amount per transfer process in the DMAC that performs data transfer to the image processing module. Therefore, the transfer data number adjusting unit 60 transfers the amount of transfer data per transfer process (1) in the DMAC that transfers data to the image processing module according to the boundary of the image processing module selected by the module selecting unit 51. The data amount of transfer lines and the number of transfer data) are adjusted (corrected).

以上示したように、図1に示す画像処理装置10は、複数の画像処理モジュール(画像処理部)を備え、この複数の画像処理モジュールのうち、少なくとも、画像処理モジュールM1,M2,M3は、バウンダリが互いに異なっている。さらに、上記複数の画像処理モジュールの各々には、各々の画像処理モジュールに対して画像データを転送するDMAC(データ転送部)が備えられている。また、画像処理装置10には、上記複数の画像処理モジュールおよびDMACの動作を制御する制御部50が備えられている。さらに、制御部50には、モジュール選択部51と転送データ数調整部60とデータ転送制御部71とが含まれている。   As described above, the image processing apparatus 10 shown in FIG. 1 includes a plurality of image processing modules (image processing units). Among the plurality of image processing modules, at least the image processing modules M1, M2, and M3 are Boundaries are different from each other. Further, each of the plurality of image processing modules is provided with a DMAC (data transfer unit) that transfers image data to each image processing module. Further, the image processing apparatus 10 includes a control unit 50 that controls the operations of the plurality of image processing modules and the DMAC. Further, the control unit 50 includes a module selection unit 51, a transfer data number adjustment unit 60, and a data transfer control unit 71.

モジュール選択部(画像処理選択手段)51は、上述通り、実行される画像処理の種類に対応した画像処理モジュールを選択・起動する。そして、データ転送制御部(転送制御手段)71は、選択・起動された画像処理モジュールにおいて画像データの転送が行われるように、該画像処理モジュールに含まれるDMACを制御する。また、転送データ数調整部(転送データ量調整手段)60は、モジュール選択部51に選択された画像処理モジュールのバウンダリに応じて、該画像処理モジュールに含まれるDMACにおける1転送処理当たりの転送データ量を調整していることとなる。   As described above, the module selection unit (image processing selection means) 51 selects and activates an image processing module corresponding to the type of image processing to be executed. Then, the data transfer control unit (transfer control unit) 71 controls the DMAC included in the image processing module so that the image data is transferred in the selected / activated image processing module. Also, the transfer data number adjusting unit (transfer data amount adjusting means) 60 transfers transfer data per transfer process in the DMAC included in the image processing module according to the boundary of the image processing module selected by the module selecting unit 51. The amount will be adjusted.

これにより、画像処理装置100において、画像処理モジュールを複数含み、各画像処理モジュールのバウンダリが互いに異なっている場合でも、データ転送のなされる画像処理モジュールのバウンダリに応じて、データ転送を行うDMACにおける1転送当たりの転送データ量を該バウンダリに適合した値に調整することが可能となり、適切にデータ処理を実行することができる。   As a result, in the image processing apparatus 100, the image processing apparatus 100 includes a plurality of image processing modules, and even when the boundaries of the image processing modules are different from each other, the DMAC that performs data transfer according to the boundary of the image processing module to which data transfer is performed. The amount of transfer data per transfer can be adjusted to a value suitable for the boundary, and data processing can be executed appropriately.

また、本実施形態においては、上記DMACにおける1転送当たりの転送データ量を、データ転送のなされる画像処理モジュールにおけるバウンダリの倍数となるように設定することが可能となり、データ転送が行えないという事態の発生を回避できる。   In this embodiment, the transfer data amount per transfer in the DMAC can be set to be a multiple of the boundary in the image processing module to which data transfer is performed, and data transfer cannot be performed. Can be avoided.

さらに、本実施形態においては、モジュール選択部(画像処理選択手段)51によって画像処理モジュールが2以上選択され、選択された各画像処理モジュールに対して順に画像データを転送する場合、上記選択された2以上の画像処理部における各々のバウンダリの公倍数になるように上記転送データ量を調整している。それゆえ、データ転送のなされる各画像処理モジュールのバウンダリが夫々で異なっていても、選択された画像処理モジュールの各々に対して、これら画像処理モジュールの上記バウンダリの共通の倍数のデータ量の画像データを順に転送することができ、適切にデータ処理を実行することができる。   Further, in the present embodiment, when two or more image processing modules are selected by the module selection unit (image processing selection means) 51 and image data is sequentially transferred to each selected image processing module, the above-described selection is performed. The transfer data amount is adjusted so as to be a common multiple of each boundary in two or more image processing units. Therefore, even if the boundary of each image processing module to which data is transferred is different, an image having a data amount that is a common multiple of the above-mentioned boundary of these image processing modules for each of the selected image processing modules. Data can be transferred in order, and data processing can be performed appropriately.

また、以上の構成によれば、1転送当たりの転送データ量を画像処理モジュール毎で計算する必要がなく、制御部50の演算処理の負荷を軽減することが可能になる。例えば、モジュール選択部51によって選択された複数の画像処理モジュールIP1,IP2,IP3において、図2に示すように、各々のバウンダリが3byte,6byte,9byteであるとき、画像モジュール毎に1転送あたりの転送データ量を計算すると、画像処理部IP1に対しては3の倍数の5001byteを上記転送データ量として計算し、画像処理部IP2に対しては6の倍数の5004byteを上記転送データ量として計算し、画像処理部IP3に対しては9の倍数の5004byteを上記転送データ量として計算する必要がある。これに対し、本実施形態の構成によれば、画像処理モジュール毎に1転送当たりの転送データ量を計算する必要がなく、各画像処理モジュールに共通の上記転送データ量を1回計算するだけでよく、制御部の負荷を軽減することができる。また、開発者にとっては把握すべき転送データ量の個数が減り(3個→1個)、開発が容易になるメリットがある。   Further, according to the above configuration, it is not necessary to calculate the transfer data amount per transfer for each image processing module, and it is possible to reduce the calculation processing load of the control unit 50. For example, in the plurality of image processing modules IP1, IP2, and IP3 selected by the module selection unit 51, when each boundary is 3 bytes, 6 bytes, and 9 bytes as shown in FIG. When the transfer data amount is calculated, 5001 bytes which is a multiple of 3 is calculated as the transfer data amount for the image processing unit IP1, and 5004 bytes which is a multiple of 6 is calculated as the transfer data amount for the image processing unit IP2. For the image processing unit IP3, it is necessary to calculate 5004 bytes which is a multiple of 9 as the transfer data amount. On the other hand, according to the configuration of the present embodiment, it is not necessary to calculate the transfer data amount per transfer for each image processing module, and only to calculate the transfer data amount common to each image processing module once. Well, the load on the control unit can be reduced. Further, there is an advantage that the number of transfer data to be grasped is reduced (3 → 1) for the developer, and the development becomes easy.

また、以上の実施形態では、画像処理モジュールM1,M2,M3の各々が互いにバウンダリを異ならせているが、少なくとも2つの画像処理モジュールが互いにバウンダリを異ならせている構成であればよく、3つの画像処理モジュールが互いにバウンダリを異ならせている必要はない。   In the above embodiment, each of the image processing modules M1, M2, and M3 has a different boundary from each other. However, any configuration may be used as long as at least two image processing modules have different boundaries from each other. It is not necessary for the image processing modules to have different boundaries.

なお、以上の実施形態においては、画像処理モジュールのバウンダリとは、その画像処理モジュールにおける転送単位となるデータ量であり、より具体的には、その画像処理モジュールに含まれる入力用DMACおよび出力用DMACの転送単位となるデータ量であった。つまり、以上の実施形態においては、各画像処理モジュールにおいて、入力用DMACの転送単位となるデータ量と、出力用DMACの転送単位となるデータ量とは同一となるように設定されていることとなる。   In the above embodiment, the boundary of an image processing module is the amount of data serving as a transfer unit in the image processing module, and more specifically, the input DMAC and output output included in the image processing module. The amount of data was a DMAC transfer unit. That is, in the above embodiment, in each image processing module, the data amount that is the transfer unit of the input DMAC and the data amount that is the transfer unit of the output DMAC are set to be the same. Become.

しかし、各画像処理モジュールにおいて、入力用DMACの転送単位となるデータ量と、出力用DMACの転送単位となるデータ量とが異なるように設定されていてもよい。この場合、画像処理モジュールのバウンダリとは、該画像処理モジュールに含まれている入力用DMACの転送単位となるデータ量である入力バウンダリと、該画像処理モジュールに含まれている出力用DMACの転送単位となるデータ量である出力バウンダリとの両方を意味するものとなる。さらに、この場合、転送データ数修正部63は、モジュール選択部51に選択された全画像処理モジュールの入力バウンダリおよび出力バウンダリの公倍数であって、転送データ数演算部62に演算された転送データ数以上かつ該転送データ数と最も差のない値になるように、上記転送データ数の修正値を演算する。   However, in each image processing module, the data amount serving as the transfer unit of the input DMAC may be set to be different from the data amount serving as the transfer unit of the output DMAC. In this case, the boundary of the image processing module refers to the input boundary that is the amount of data serving as a transfer unit of the input DMAC included in the image processing module, and the transfer of the output DMAC included in the image processing module. It means both the output boundary which is the data amount as a unit. Further, in this case, the transfer data number correcting unit 63 is a common multiple of the input boundary and the output boundary of all the image processing modules selected by the module selecting unit 51, and is the transfer data number calculated by the transfer data number calculating unit 62. The correction value of the transfer data number is calculated so that the value is the least difference from the transfer data number.

なお、上記実施形態の制御部50は、CPUなどの演算手段が、ROM(Read Only Memory)やRAMなどの記憶手段に記憶されたプログラムを実行し、キーボードなどの入力手段、ディスプレイなどの出力手段、あるいは、インターフェイス回路などの通信手段を制御することにより実現することができる。したがって、これらの手段を有するコンピュータが、上記プログラムを記録した記録媒体を読み取り、当該プログラムを実行するだけで、本実施形態の制御部50の各種機能および各種処理を実現することができる。また、上記プログラムをリムーバブルな記録媒体に記録することにより、任意のコンピュータ上で上記の各種機能および各種処理を実現することができる。   In the control unit 50 of the above-described embodiment, a calculation unit such as a CPU executes a program stored in a storage unit such as a ROM (Read Only Memory) or a RAM, and an input unit such as a keyboard or an output unit such as a display. Alternatively, it can be realized by controlling communication means such as an interface circuit. Therefore, the computer having these means can realize various functions and various processes of the control unit 50 of the present embodiment simply by reading the recording medium storing the program and executing the program. In addition, by recording the program on a removable recording medium, the various functions and various processes described above can be realized on an arbitrary computer.

この記録媒体としては、マイクロコンピュータで処理を行うために図示しないメモリ、例えばROMのようなものがプログラムメディアであっても良いし、また、図示していないが外部記憶装置としてプログラム読み取り装置が設けられ、そこに記録媒体を挿入することにより読み取り可能なプログラムメディアであっても良い。   As the recording medium, a program medium such as a memory (not shown) such as a ROM may be used for processing by the microcomputer, and a program reading device is provided as an external storage device (not shown). It may be a program medium that can be read by inserting a recording medium there.

また、何れの場合でも、格納されているプログラムは、マイクロプロセッサがアクセスして実行される構成であることが好ましい。さらに、プログラムを読み出し、読み出されたプログラムは、マイクロコンピュータのプログラム記憶エリアにダウンロードされて、そのプログラムが実行される方式であることが好ましい。なお、このダウンロード用のプログラムは予め本体装置に格納されているものとする。   In any case, the stored program is preferably configured to be accessed and executed by the microprocessor. Furthermore, it is preferable that the program is read out, and the read program is downloaded to the program storage area of the microcomputer and the program is executed. It is assumed that the download program is stored in the main device in advance.

また、上記プログラムメディアとしては、本体と分離可能に構成される記録媒体であり、磁気テープやカセットテープ等のテープ系、フレキシブルディスクやハードディスク等の磁気ディスクやCD/MO/MD/DVD等のディスクのディスク系、ICカード(メモリカードを含む)等のカード系、あるいはマスクROM、EPROM(Erasable Programmable Read Only Memory)、EEPROM(Electrically Erasable Programmable Read Only Memory)、フラッシュROM等による半導体メモリを含めた固定的にプログラムを担持する記録媒体等がある。   The program medium is a recording medium configured to be separable from the main body, such as a tape system such as a magnetic tape or a cassette tape, a magnetic disk such as a flexible disk or a hard disk, or a disk such as a CD / MO / MD / DVD. Fixed disk system, card system such as IC card (including memory card), or semiconductor memory such as mask ROM, EPROM (Erasable Programmable Read Only Memory), EEPROM (Electrically Erasable Programmable Read Only Memory), flash ROM, etc. In particular, there are recording media that carry programs.

また、インターネットを含む通信ネットワークを接続可能なシステム構成であれば、通信ネットワークからプログラムをダウンロードするように流動的にプログラムを担持する記録媒体であることが好ましい。   In addition, if the system configuration is capable of connecting to a communication network including the Internet, the recording medium is preferably a recording medium that fluidly carries the program so as to download the program from the communication network.

さらに、このように通信ネットワークからプログラムをダウンロードする場合には、そのダウンロード用のプログラムは予め本体装置に格納しておくか、あるいは別な記録媒体からインストールされるものであることが好ましい。   Further, when the program is downloaded from the communication network as described above, it is preferable that the download program is stored in the main device in advance or installed from another recording medium.

本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、上述した実施形態において開示された各技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。   The present invention is not limited to the above-described embodiments, and various modifications are possible within the scope shown in the claims, and the embodiments can be obtained by appropriately combining the respective technical means disclosed in the above-described embodiments. The form is also included in the technical scope of the present invention.

本発明の画像処理装置は、複写機,インクジェットプリンタ,MFP(Multi Function Printer)等に含まれる画像処理手段として好適であるが、これに限定されず、画像処理装置単体としても構成することが可能である。   The image processing apparatus of the present invention is suitable as an image processing means included in a copying machine, an ink jet printer, an MFP (Multi Function Printer), etc., but is not limited to this, and can be configured as a single image processing apparatus. It is.

本発明の一実施形態に係る画像処理装置の内部構成を模式的に示すブロック図である。1 is a block diagram schematically showing an internal configuration of an image processing apparatus according to an embodiment of the present invention. 図1に示した画像処理装置において、各画像処理モジュール間における画像データの転送の流れを示した模式図である。FIG. 2 is a schematic diagram illustrating a flow of image data transfer between image processing modules in the image processing apparatus illustrated in FIG. 1. 図1に示した画像処理装置にて取り扱われる画像データに対応する画像を示した模式図である。FIG. 2 is a schematic diagram illustrating an image corresponding to image data handled by the image processing apparatus illustrated in FIG. 1. 図1に示した画像処理装置に含まれる制御部の構成を示したブロック図である。It is the block diagram which showed the structure of the control part contained in the image processing apparatus shown in FIG. 図1に示した画像処理装置に含まれる制御部の処理の流れを示したフローチャートである。2 is a flowchart showing a flow of processing of a control unit included in the image processing apparatus shown in FIG. 1. 図1に示した画像処理装置において、各画像処理モジュールによる画像データの処理のタイミングを示したチャートである。2 is a chart showing the timing of image data processing by each image processing module in the image processing apparatus shown in FIG. 1. 従来の画像処理装置において取り扱われる画像データに対応する画像を示した模式図である。It is the schematic diagram which showed the image corresponding to the image data handled in the conventional image processing apparatus. 従来の画像処理装置において、各画像処理モジュール間における画像データの転送の流れを示した模式図である。It is the model which showed the flow of the transfer of the image data between each image processing module in the conventional image processing apparatus.

符号の説明Explanation of symbols

10 画像処理装置
15 メモリ
20 バス
50 制御部
51 モジュール選択部(画像処理選択手段)
60 転送データ数調整部(転送データ量調整手段)
61 転送ブロック初期設定部
62 転送データ数演算部
63 転送データ数修正部
64 転送ブロック再設定部
70 メモリ
71 データ転送制御部(データ転送制御手段)
M1,M2,M3 画像処理モジュール(画像処理部)
DMAC(データ転送部)
DESCRIPTION OF SYMBOLS 10 Image processing apparatus 15 Memory 20 Bus 50 Control part 51 Module selection part (Image processing selection means)
60 Transfer data number adjustment unit (transfer data amount adjustment means)
61 Transfer block initial setting unit 62 Transfer data number calculation unit 63 Transfer data number correction unit 64 Transfer block resetting unit 70 Memory 71 Data transfer control unit (data transfer control means)
M1, M2, M3 Image processing module (image processing unit)
DMAC (data transfer unit)

Claims (5)

複数の画像処理部と制御部とを備え、
さらに、画像処理部に対するデータ転送を実行するデータ転送部を含み、
上記複数の画像処理部のうちの少なくとも2つの画像処理部においては、上記データ転送の転送単位のデータ量を示す転送パラメータが互いに異なっており、
上記制御部は、
実行すべき画像処理の種類に対応した画像処理部を選択する画像処理選択手段と、
選択した画像処理部において画像データの転送が行われるように上記データ転送部を制御する転送制御手段と、
上記選択された画像処理部の上記転送パラメータに応じて上記データ転送部の1転送当たりの転送データ量を調整する転送データ量調整手段と、
を含むことを特徴とする画像処理装置。
A plurality of image processing units and a control unit;
And a data transfer unit that executes data transfer to the image processing unit,
In at least two image processing units of the plurality of image processing units, transfer parameters indicating data amounts of transfer units of the data transfer are different from each other,
The control unit
Image processing selection means for selecting an image processing unit corresponding to the type of image processing to be executed;
Transfer control means for controlling the data transfer unit so that image data is transferred in the selected image processing unit;
Transfer data amount adjusting means for adjusting the transfer data amount per transfer of the data transfer unit according to the transfer parameters of the selected image processing unit;
An image processing apparatus comprising:
請求項1に記載の画像処理装置であって、
上記転送データ量調整手段は、上記選択された画像処理部の上記転送パラメータの倍数となるように上記転送データ量を調整することを特徴とする画像処理装置。
The image processing apparatus according to claim 1,
The transfer data amount adjusting unit adjusts the transfer data amount so as to be a multiple of the transfer parameter of the selected image processing unit.
請求項1または2に記載の画像処理装置であって、
上記画像処理選択手段は2以上の画像処理部を選択し、
上記転送制御手段は、選択された各画像処理部に順に画像データが転送されるように上記データ転送部を制御し、
上記転送データ量調整手段は、上記選択された2以上の画像処理部における各々の上記転送パラメータの公倍数になるように上記転送データ量を調整することを特徴とする画像処理装置。
The image processing apparatus according to claim 1, wherein:
The image processing selection means selects two or more image processing units,
The transfer control means controls the data transfer unit so that image data is sequentially transferred to each selected image processing unit,
The transfer data amount adjusting means adjusts the transfer data amount so as to be a common multiple of the transfer parameters of each of the two or more selected image processing units.
画像処理装置の制御プログラムであって、コンピュータを請求項1ないし3のいずれか1項に記載の各手段として機能させる画像処理装置の制御プログラム。   An image processing apparatus control program for causing a computer to function as each unit according to any one of claims 1 to 3. 請求項4に記載の制御プログラムを記録したコンピュータ読み取り可能な記録媒体。   The computer-readable recording medium which recorded the control program of Claim 4.
JP2005178327A 2005-06-17 2005-06-17 Image processing device, control program for the same, computer-readable storage medium storing control program Pending JP2006350843A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005178327A JP2006350843A (en) 2005-06-17 2005-06-17 Image processing device, control program for the same, computer-readable storage medium storing control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005178327A JP2006350843A (en) 2005-06-17 2005-06-17 Image processing device, control program for the same, computer-readable storage medium storing control program

Publications (1)

Publication Number Publication Date
JP2006350843A true JP2006350843A (en) 2006-12-28

Family

ID=37646582

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005178327A Pending JP2006350843A (en) 2005-06-17 2005-06-17 Image processing device, control program for the same, computer-readable storage medium storing control program

Country Status (1)

Country Link
JP (1) JP2006350843A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009017297A (en) * 2007-07-05 2009-01-22 Ricoh Co Ltd Image processing apparatus, image processing control method and image processing control program
JP2018157492A (en) * 2017-03-21 2018-10-04 富士ゼロックス株式会社 Image processing apparatus, image processing method and program

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009017297A (en) * 2007-07-05 2009-01-22 Ricoh Co Ltd Image processing apparatus, image processing control method and image processing control program
US8891091B2 (en) 2007-07-05 2014-11-18 Ricoh Company, Ltd. Image processing apparatus, image processing control method and computer-readable storage medium
JP2018157492A (en) * 2017-03-21 2018-10-04 富士ゼロックス株式会社 Image processing apparatus, image processing method and program

Similar Documents

Publication Publication Date Title
JP2009151102A (en) Image forming apparatus and image processing method
JP2006254169A (en) System and method for controlling printing
JP2006325186A (en) Image processing apparatus
JP2006350843A (en) Image processing device, control program for the same, computer-readable storage medium storing control program
US9036197B2 (en) Data transfer control apparatus and data transfer control method
JP2000165563A (en) Image processing unit
JP2006304243A (en) Image processor, printer and image processing method
JP2008299519A (en) Image processor
JP5560785B2 (en) Information processing apparatus, image forming apparatus, and information processing method
JP2006285792A (en) Image processor and image processing method
JP2005094564A (en) Image processing apparatus and method for image processing
JP2002314763A (en) Controller for color copying machine
WO2017163590A1 (en) Image processing device, image processing method, and image processing program
JP2008263311A (en) Image forming apparatus
JP4468754B2 (en) Image forming apparatus and memory control method
JP6794765B2 (en) Image processing accelerator and image forming device
CN107734210B (en) Image processing apparatus, image forming apparatus, and image processing method
JP2009265776A (en) Image processor
JP4905294B2 (en) Image processing circuit, printing apparatus, and image processing program
JP5753370B2 (en) Image processing apparatus, method, and program
JP2007164665A (en) Image processor and image forming apparatus
KR20070008129A (en) Image forming method and system capable of displaying thumbnail image
JP2003224716A (en) Image processing system
JP2007122318A (en) Print controller
JP2006050402A (en) Image processing device