(57)【特許請求の範囲】
【請求項１】
処理の内容が定められている処理内容情報を、前記処理内容情報に基づいた処理を実行する処理実行部に設定する処理内容情報設定部と、
前記処理実行部に設定される前記処理内容情報を格納させる処理内容情報格納部としての前記処理内容情報と前記処理内容情報が設定される処理実行部を特定する情報とを格納させる第一の処理内容情報格納部と、前記処理内容情報及び前記処理内容情報の設定先を特定する情報を含む前記処理の実行命令を格納させる、前記第一の処理内容情報格納部とは異なる第二の処理内容情報格納部と、
前記実行命令を送信する処理実行制御部と、
前記実行命令に基づいて受信した情報を符号化する情報符号化部と、
を含み、
前記処理実行制御部は、
前記実行命令に基づいて、前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とを符号化させ、符号化された前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とを前記第一の処理内容情報格納部もしくは前記第二の処理内容情報格納部に格納させ、
前記実行命令に基づいて、前記第一の処理内容情報格納部と前記第二の処理内容情報格納部とのうち、符号化された前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とが格納されていない方の処理内容情報格納部に、符号化された前記処理内容情報が設定される処理実行部を特定する情報に基づいて特定される処理実行部に前記処理内容情報を設定する処理を開始させる情報である処理開始情報を格納させる格納命令を送信し、
前記処理内容情報設定部は、
前記格納命令に基づいて、前記第一の処理内容情報格納部と前記第二の処理内容情報格納部とのうち、符号化された前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とが格納されていない方の処理内容情報格納部に、前記処理開始情報を格納させることを特徴とする情報処理装置。
【請求項２】
前記実行命令に基づいて受信した情報を符号化する情報符号化部を含み、
前記処理実行制御部は、
前記実行命令に基づいて、前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とを符号化させ、符号化された前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とを前記第一の処理内容情報格納部もしくは前記第二の処理内容情報格納部に格納させることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記実行命令に基づいて受信した情報を符号化する情報符号化部を含み、
前記処理実行制御部は、
前記実行命令に基づいて、前記処理内容情報設定部に前記処理内容情報が設定される処理実行部を特定する情報に基づいて特定される処理実行部に前記処理内容情報を設定する処理を開始させる情報である処理開始情報を符号化させ、符号化された前記処理開始情報を前記第一の処理内容情報格納部もしくは前記第二の処理内容情報格納部に格納させることを特徴とする請求項１に記載の情報処理装置。
【請求項４】
処理の内容が定められている処理内容情報を、前記処理内容情報に基づいた処理を実行する処理実行部に設定する処理内容情報設定部と、
前記処理実行部に設定される前記処理内容情報を格納させる処理内容情報格納部としての前記処理内容情報と前記処理内容情報が設定される処理実行部を特定する情報とを格納させる第一の処理内容情報格納部と、前記処理内容情報及び前記処理内容情報の設定先を特定する情報を含む前記処理の実行命令を格納させる、前記第一の処理内容情報格納部とは異なる第二の処理内容情報格納部と、
前記実行命令を送信する処理実行制御部と、
前記実行命令に基づいて受信した情報を符号化する情報符号化部と、
符号化された前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とを関連付けて前記第一の処理内容情報格納部もしくは前記第二の処理内容情報格納部に格納させる符号化関連情報格納制御部と、
を含み、
前記処理実行制御部は、
前記実行命令に基づいて前記処理内容情報を前記処理実行部に設定させるか否かもしくは前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とを符号化させ、符号化された前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とを前記第一の処理内容情報格納部もしくは前記第二の処理内容情報格納部に格納させるか否かの判断を行い、
前記処理内容情報設定部は、
前記判断の結果に基づいて、前記設定先を特定する情報に基づいて前記処理内容情報を前記処理実行部に設定するか、前記第一の処理内容情報格納部もしくは前記第二の処理内容情報格納部に格納されている処理内容情報を取得して前記処理実行部に設定することを特徴とする情報処理装置。
【請求項５】
前記処理実行制御部は、
前記実行命令に基づいて、前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とを格納させる際に、前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とを格納させるための記憶容量に相当する量の情報を増減させることを特徴とする請求項１ないし請求項４のいずれか一項に記載の情報処理装置。
【請求項６】
処理の内容が定められている処理内容情報を、前記処理内容情報に基づいた処理を実行する処理実行部に設定する処理内容情報設定部と、
前記処理実行部に設定される前記処理内容情報を格納させる処理内容情報格納部としての前記処理内容情報と前記処理内容情報が設定される処理実行部を特定する情報とを格納させる第一の処理内容情報格納部と、前記処理内容情報及び前記処理内容情報の設定先を特定する情報を含む前記処理の実行命令を格納させる、前記第一の処理内容情報格納部とは異なる第二の処理内容情報格納部と、
前記実行命令を送信する処理実行制御部と、
を含み、
前記処理実行制御部は、
前記実行命令に基づいて、前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とを格納させる際に、前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とを格納させるための記憶容量に相当する量の情報を増減させ、前記処理内容情報を前記処理実行部に設定させるか否かもしくは前記第一の処理内容情報格納部もしくは前記第二の処理内容情報格納部に格納させるか否かの判断を行い、
前記処理内容情報設定部は、
前記判断の結果に基づいて、前記設定先を特定する情報に基づいて前記処理内容情報を前記処理実行部に設定するか、もしくは、前記処理内容情報格納部に格納されている処理内容情報を取得して前記処理実行部に設定することを特徴とする情報処理装置。
【請求項７】
前記第一の処理内容情報格納部もしくは前記第二の処理内容情報格納部もしくは前記処理実行部のうち、いずれかにひとつに前記処理内容情報を格納させるための格納設定情報を割り当てる格納設定制御部を含むことを特徴とする請求項１ないし請求項６のいずれか一項に記載の情報処理装置。
【請求項８】
処理の内容が定められている処理内容情報を、前記処理内容情報に基づいた処理を実行する処理実行部に設定する処理内容情報設定部と、
前記処理実行部に設定される前記処理内容情報を格納させる処理内容情報格納部として前記処理内容情報と前記処理内容情報が設定される処理実行部を特定する情報とを格納させる第一の処理内容情報格納部と、前記処理内容情報及び前記処理内容情報の設定先を特定する情報を含む前記処理の実行命令を格納させる、前記第一の処理内容情報格納部とは異なる第二の処理内容情報格納部と、
前記実行命令を送信する処理実行制御部と、
前記第一の処理内容情報格納部もしくは前記第二の処理内容情報格納部もしくは前記処理実行部のうち、いずれかにひとつに前記処理内容情報を格納させるための格納設定情報を割り当てる格納設定制御部と、
を含み、
前記処理実行制御部は、
前記実行命令に基づいて前記処理内容情報を前記処理実行部に設定させるか否かもしくは前記第一の処理内容情報格納部もしくは前記第二の処理内容情報格納部に格納させるか否かの判断を行い、
前記処理内容情報設定部は、
前記判断の結果に基づいて、前記設定先を特定する情報に基づいて前記処理内容情報を前記処理実行部に設定するか、もしくは、前記第一の処理内容情報格納部又は前記第二の処理内容情報格納部に格納されている処理内容情報を取得して前記処理実行部に設定することを特徴とする情報処理装置。
【請求項９】
前記処理実行制御部は、
前記実行命令に基づいて、前記処理内容情報が前記第一の処理内容情報格納部もしくは前記第二の処理内容情報格納部に設定されるように前記格納設定情報を書き換えることを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記処理実行制御部は、
前記実行命令に基づいて、前記格納設定制御部に前記処理内容情報を前記第一の処理内容情報格納部に格納させる格納設定情報が定められている場合には、前記第一の処理内容情報格納部に前記処理内容情報が格納された後に、前記処理内容情報を前記第二の処理内容情報格納部に格納されるように前記格納設定制御部に設定されている格納設定情報を書き換えることを特徴とする請求項８または請求項９に記載の情報処理装置。
【請求項１１】
前記処理実行制御部は、
前記実行命令に基づいて、前記格納設定制御部に前記処理内容情報を前記第二の処理内容情報格納部に格納させる格納設定情報が定められている場合には、前記第二の処理内容情報格納部に前記処理内容情報が格納された後に、前記処理内容情報を前記第一の処理内容情報格納部に格納されるように前記格納設定制御部に設定されている格納設定情報を書き換えることを特徴とする請求項８または請求項９に記載の情報処理装置。
【請求項１２】
請求項１ないし請求項１１いずれか１項に記載の情報処理装置を備えることを特徴とする画像処理装置。
【請求項１３】
処理の内容が定められている処理内容情報を、前記処理内容情報に基づいた処理を実行する処理実行部に設定し、
前記処理実行部に設定される前記処理内容情報を格納させるにあたり、前記処理内容情報と前記処理内容情報が設定される処理実行部を特定する情報とを格納させる第一の処理内容情報格納をさせるか、又は、前記処理内容情報及び前記処理内容情報の設定先を特定する情報を含む前記処理の実行命令を格納させる、前記第一の処理内容情報格納とは異なる第二の処理内容情報格納をし、
前記実行命令を送信し、
前記実行命令に基づいて受信した情報を符号化し、
前記実行命令を送信する際に、前記実行命令に基づいて、前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とを符号化させ、符号化された前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とを前記第一の処理内容情報格納をさせるか、もしくは前記第二の処理内容情報格納をさせ、
前記実行命令に基づいて、前記第一の処理内容情報格納と前記第二の処理内容情報格納とのうち、符号化された前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とが格納されていない方に、符号化された前記処理内容情報が設定される処理実行部を特定する情報に基づいて特定される処理実行部に前記処理内容情報を設定する処理を開始させる情報である処理開始情報を格納させる格納命令を送信し、
前記格納命令に基づいて、前記第一の処理内容情報格納と前記第二の処理内容情報格納とのうち、符号化された前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とが格納されていない方に、前記処理開始情報を格納させることを特徴とする情報処理方法。
【請求項１４】
処理の内容が定められている処理内容情報を、前記処理内容情報に基づいた処理を実行する処理実行部に設定するステップと、
前記処理実行部に設定される前記処理内容情報を格納させる処理内容情報格納ステップとしての前記処理内容情報と前記処理内容情報が設定される処理実行部を特定する情報とを格納させる第一の処理内容情報格納ステップ、又は、前記処理内容情報及び前記処理内容情報の設定先を特定する情報を含む前記処理の実行命令を格納させる、前記第一の処理内容情報格納ステップとは異なる第二の処理内容情報格納ステップと、
前記実行命令を送信するステップと、
前記実行命令に基づいて受信した情報を符号化する情報符号化ステップと、
をコンピュータに実行させ、
前記実行命令を送信するステップにおいて、
前記実行命令に基づいて、前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とを符号化させ、符号化された前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とを前記第一の処理内容情報格納ステップもしくは前記第二の処理内容情報格納ステップにおいて格納させ、
前記実行命令に基づいて、前記第一の処理内容情報格納ステップと前記第二の処理内容情報格納ステップとのうち、符号化された前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とが格納されていない方の処理内容情報格納ステップに、符号化された前記処理内容情報が設定される処理実行部を特定する情報に基づいて特定される処理実行部に前記処理内容情報を設定する処理を開始させる情報である処理開始情報を格納させる格納命令を送信し、
前記格納命令に基づいて、前記第一の処理内容情報格納ステップと前記第二の処理内容情報格納ステップとのうち、符号化された前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とが格納されていない方の処理内容情報格納ステップにおいて、前記処理開始情報を格納させることを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、画像処理装置、情報処理方法、情報処理プログラムに関する。
【背景技術】
【０００２】
近年、情報の電子化が推進される傾向にあり、電子化された情報の出力に用いられるプリンタやファクシミリ及び書類の電子化に用いるスキャナ等の画像処理装置は欠かせない機器となっている。このような画像処理装置は、撮像機能、画像形成機能及び通信機能等を備えることにより、プリンタ、ファクシミリ、スキャナ、複写機として利用可能な複合機として構成されることが多い。
【０００３】
このような画像処理装置においては、スキャンによって生成された画像情報を処理する機能や、画像形成出力するべき画像情報を処理する機能等、画像処理機能を担う画像処理部が設けられている。このような画像処理部を動作させるためには、パラメータの設定が必要である。
【０００４】
このような画像処理部では、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等のメモリ領域に用意されたパラメータ値を、ＤＭＡＣ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌｅｒ）によりレジスタに転送し、パラメータを設定してプロセッサへ過剰な処理負荷がかからないようにしている（例えば、特許文献１参照）。
【０００５】
特許文献１では、画像処理パラメータとアドレス情報とを画像処理部で実行される画像処理制御タスクに対応付けて、画像処理パラメータを転送するＤＭＡＣであるＰＤＭＡＣの転送用レジスタ（以下、「ＰＤＭＡＣ転送用レジスタ」とする）に記憶させる。そして、読み出された画像処理パラメータに対応付けられたアドレス情報に基づいて、画像処理部で実行される画像処理制御タスクごとに画像処理パラメータをレジスタへ転送する。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１で開示された技術では、ＰＤＭＡＣ転送用レジスタが画像処理制御タスクに対して不足している。そのために、複数の画像処理制御タスクを切り替える場合、プロセッサにかかる処理負荷が大きくなってしまう。尚、このような問題は、画像処理部におけるＰＤＭＡＣ転送に限らず、一般的な情報処理部におけるＰＤＭＡＣ転送についても同様に起こり得る。
【０００７】
本発明は、上記課題を解決するためになされたものであり、プロセッサにかかる処理負荷を低減することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明の一態様は、  処理の内容が定められている処理内容情報を、前記処理内容情報に基づいた処理を実行する処理実行部に設定する処理内容情報設定部と、前記処理実行部に設定される前記処理内容情報を格納させる処理内容情報格納部としての前記処理内容情報と前記処理内容情報が設定される処理実行部を特定する情報とを格納させる第一の処理内容情報格納部と、前記処理内容情報及び前記処理内容情報の設定先を特定する情報を含む前記処理の実行命令を格納させる、前記第一の処理内容情報格納部とは異なる第二の処理内容情報格納部と、前記実行命令を送信する処理実行制御部と、前記実行命令に基づいて受信した情報を符号化する情報符号化部と、を含み、前記処理実行制御部は、前記実行命令に基づいて、前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とを符号化させ、符号化された前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とを前記第一の処理内容情報格納部もしくは前記第二の処理内容情報格納部に格納させ、前記実行命令に基づいて、前記第一の処理内容情報格納部と前記第二の処理内容情報格納部とのうち、符号化された前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とが格納されていない方の処理内容情報格納部に、符号化された前記処理内容情報が設定される処理実行部を特定する情報に基づいて特定される処理実行部に前記処理内容情報を設定する処理を開始させる情報である処理開始情報を格納させる格納命令を送信し、前記処理内容情報設定部は、前記格納命令に基づいて、前記第一の処理内容情報格納部と前記第二の処理内容情報格納部とのうち、符号化された前記処理内容情報が設定される処理実行部を特定する情報と前記処理内容情報とが格納されていない方の処理内容情報格納部に、前記処理開始情報を格納させることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、プロセッサにかかる処理負荷を低減することが出来る。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施形態に係る画像処理装置のハードウェア構成を示すブロック図。
【図２】本発明の実施形態に係る画像処理装置の機能構成を示す機能ブロック図。
【図３】本発明の実施形態に係る画像処理部の内部構成を示す機能ブロック図。
【図４】本発明の実施形態に係る画像処理パスにおいて行われる処理の流れを示す図。
【図５】本発明の実施形態に係る画像処理部の動作を示す図。
【図６】本発明の実施形態に係る転送データの情報構成を示す図。
【図７】本発明の実施形態に係る転送データの他の情報構成を示す図。
【図８】本発明の実施形態に係る画像処理パラメータを書き込む動作を示す図。
【図９】本発明の実施形態に係る転送データの転送先を決定する処理の流れを示すフローチャート。
【図１０】本発明の実施形態に係る格納モード０の転送データに対して行われる処理の流れを示すシーケンス図。
【図１１】本発明の実施形態に係る格納モード１の転送データに対して行われる処理の流れを示すシーケンス図。
【図１２】本発明の実施形態に係る格納モード２の転送データに対して行われる処理の流れを示すシーケンス図。
【図１３】本発明の実施形態に係る格納先選択番号が含まれる転送データの情報構成を示す図。
【図１４】本発明の実施形態に係る格納先選択番号が含まれない転送データの情報構成を示す図。
【図１５】本発明の実施形態に係る格納モードに応じて各画像処理制御タスクによって実行される動作を示す図。
【図１６】本発明の実施形態に係る格納モードに応じて各画像処理制御タスクによって増減されるアドレスを示す図。
【図１７】本発明の実施形態に係るディスクリプタに書き込まれるデータによって実行される動作を示す図。
【図１８】本発明の実施形態に係る複数の画像処理制御タスクが並列して実行される時の処理の流れを示す図。
【図１９】本発明の実施形態に係るメモリダンプを例示した図。
【図２０】本発明の実施形態に係るメモリダンプを例示した図。
【図２１】本発明の実施形態に係るメモリダンプを例示した図。
【図２２】本発明の実施形態に係るメモリダンプを例示した図。
【図２３】本発明の実施形態に係るメモリダンプを例示した図。
【図２４】本発明の実施形態に係るメモリダンプを例示した図。
【発明を実施するための形態】
【００１１】
以下、図面を参照して、本発明の実施の形態について説明する。本実施形態においては、撮像機能、画像形成機能、ＦＡＸ（Ｆａｃｓｉｍｉｌｅ）機能及びネットワーク通信機能等を備えることにより、プリンタ、ファクシミリ、スキャナ、複写機として利用可能な画像処理装置であるＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ：複合機）を例として説明する。
【００１２】
まず、本実施形態に係る画像処理装置１全体のハードウェア構成について説明する。図１は、本実施形態に係る画像処理装置１のハードウェア構成を示すブロック図である。図１に示すように、本実施形態に係る画像処理装置１は、一般的なＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）やサーバ等の情報処理装置と同様の構成を有する。即ち、本実施形態に係る画像処理装置１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）３０、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）４０及びＩ／Ｆ５０がバス９０を介して接続されている。また、Ｉ／Ｆ５０にはＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）６０、操作部７０及び外部装置８０が接続されている。
【００１３】
ＣＰＵ１０は演算手段であり、画像処理装置１全体の動作を制御する。ＲＡＭ２０は、情報の高速な読み書きが可能な揮発性の記憶媒体であり、ＣＰＵ１０が情報を処理する際の作業領域として用いられる。ＲＯＭ３０は、読み出し専用の不揮発性記憶媒体であり、ファームウェア等のプログラムが格納されている。ＨＤＤ４０は、情報の読み書きが可能な不揮発性の記憶媒体であり、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）や各種の制御プログラム、アプリケーション・プログラム（以後、アプリケーション）等が格納されている。
【００１４】
Ｉ／Ｆ５０は、バス９０と各種のハードウェアやネットワーク等を接続し制御する。ＬＣＤ６０は、ユーザが画像処理装置１の状態を確認するための視覚的ユーザインタフェースである。操作部７０は、ユーザが画像処理装置１に情報を入力するためのユーザインタフェースであり、本実施形態においては、タッチパネルやハードキー等によって構成される。
【００１５】
外部装置８０は、画像処理装置１特有の機能を実現するためのハードウェアであり、紙面上に画像形成出力を実行するプリントエンジンや、紙面上の画像を読み取るためのスキャナユニットである。
【００１６】
このようなハードウェア構成において、ＲＯＭ３０に格納されたプログラムやＨＤＤ４０若しくは図示しない光学ディスク等の記録媒体からＲＡＭ２０に読み出されたプログラムに従ってＣＰＵ１０が演算を行うことにより、図２に示すコントローラ１００が構成される。このようにして構成されたコントローラ１００と、ハードウェアとの組み合わせによって、画像処理装置１の機能を実現する機能ブロックが構成される。
【００１７】
次に、本実施形態に係る画像処理装置１の機能構成について、図２を参照して説明する。図２は、本実施形態に係る画像処理装置１の機能構成を示すブロック図である。図２に示すように、本実施形態に係る画像処理装置１は、コントローラ１００、ＡＤＦ（Ａｕｔｏ  Ｄｏｃｕｍｅｎｔ  Ｆｅｅｄｅｒ：原稿自動搬送装置）１０１、スキャナユニット１０２、排紙トレイ１０３、ディスプレイパネル１０４、給紙テーブル１０５、プリントエンジン１０６、排紙トレイ１０７及びネットワークＩ／Ｆ１０８を有する。
【００１８】
また、コントローラ１００は、主制御部１１０、エンジン制御部１２０、画像処理部１３０、操作表示制御部１４０及び入出力制御部１５０を含む。図２に示すように、本実施形態に係る画像処理装置１は、スキャナユニット１０２、プリントエンジン１０６を有する複合機として構成されている。尚、図２においては、電気的接続を実線の矢印で示しており、用紙の流れを破線の矢印で示している。
【００１９】
ディスプレイパネル１０４は、画像処理装置１の状態を視覚的に表示する出力インタフェースであると共に、タッチパネルとしてユーザが画像処理装置１を直接操作し、若しくは画像処理装置１に対して情報を入力する際の入力インタフェースでもある。即ち、ディスプレイパネル１０４は、ユーザによる操作を受けるための画像を表示する機能を含む。ディスプレイパネル１０４は、図２に示すＬＣＤ６０及び操作部７０によって実現される。従って、ディスプレイパネル１０４は操作表示部として機能する。
【００２０】
ネットワークＩ／Ｆ１０８は、画像処理装置１がネットワークを介して他の機器と通信するためのインタフェースであり、Ｅｔｈｅｒｎｅｔ（登録商標）やＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）インタフェースが用いられる。ネットワークＩ／Ｆ１０８は、ＴＣＰ／ＩＰプロトコルによる通信が可能である。また、ネットワークＩ／Ｆ１０８は、画像処理装置１がファクシミリとして機能する際に、ファクシミリ送信を実行するためのインタフェースとしても機能する。そのため、ネットワークＩ／Ｆ１０８は、電話回線にも接続されている。ネットワークＩ／Ｆ１０８は、図２に示すＩ／Ｆ５０によって実現される。
【００２１】
コントローラ１００は、ソフトウェアとハードウェアとの組み合わせによって構成される。具体的には、ＲＯＭ３０や不揮発性メモリ並びにＨＤＤ４０や光学ディスク等の不揮発性記憶媒体に格納されたプログラムが、ＲＡＭ２０等の揮発性メモリ（以下、メモリ）にロードされ、ＣＰＵ１０がそのプログラムに従って演算を行うことにより構成されるソフトウェア制御部と集積部などのハードウェアとによってコントローラ１００が構成される。コントローラ１００は、画像処理装置１全体を制御する制御部として機能する。
【００２２】
主制御部１１０は、コントローラ１００に含まれる各部を制御する役割を担い、コントローラ１００の各部に命令を与える。エンジン制御部１２０は、プリントエンジン１０６やスキャナユニット１０２等を制御若しくは駆動する駆動手段としての役割を担う。画像処理部１３０は、主制御部１１０の制御に従い、印刷出力すべき画像情報に基づいて描画情報を生成する。この描画情報とは、画像形成部であるプリントエンジン１０６が画像形成動作において形成すべき画像を描画するための情報である。
【００２３】
また、画像処理部１３０は、スキャナユニット１０２から入力される撮像データを処理し、画像データを生成する。この画像データとは、スキャナ動作の結果物として画像処理装置１の記憶領域に格納され若しくはネットワークＩ／Ｆ１０８を介して他の情報処理端末や記憶装置に送信される情報である。
【００２４】
操作表示制御部１４０は、ディスプレイパネル１０４に情報表示を行い若しくはディスプレイパネル１０４を介して入力された情報を主制御部１１０に通知する。入出力制御部１５０は、ネットワークＩ／Ｆ１０８を介して入力される情報を主制御部１１０に入力する。また、主制御部１１０は、入出力制御部１５０を制御し、ネットワークＩ／Ｆ１０８及びネットワークを介してネットワークに接続された他の機器にアクセスする。
【００２５】
画像処理装置１がプリンタとして動作する場合は、まず、入出力制御部１５０がネットワークＩ／Ｆ１０８を介して印刷ジョブを受信する。入出力制御部１５０は、受信した印刷ジョブを主制御部１１０に転送する。主制御部１１０は、印刷ジョブを受信すると、画像処理部１３０を制御して印刷ジョブに含まれる文書情報若しくは画像情報に基づいて描画情報を生成させる。
【００２６】
画像処理部１３０によって描画情報が生成されると、エンジン制御部１２０は、プリントエンジン１０６を制御し、上記生成された描画情報に基づき、給紙テーブル１０５から搬送される用紙に対して画像形成を実行させる。即ち、画像処理部１３０、エンジン制御部１２０及びプリントエンジン１０６が画像形成出力部として機能する。プリントエンジン１０６の具体的態様としては、インクジェット方式による画像形成機構や電子写真方式による画像形成機構等を用いることが可能である。プリントエンジン１０６によって画像形成が施された文書は排紙トレイ１０７に排紙される。
【００２７】
画像処理装置１がスキャナとして動作する場合は、ユーザによるディスプレイパネル１０４の操作若しくはネットワークＩ／Ｆ１０８を介して他の端末から入力されるスキャン実行指示に応じて、操作表示制御部１４０若しくは入出力制御部１５０が主制御部１１０にスキャン実行信号を転送する。主制御部１１０は、受信したスキャン実行信号に基づき、エンジン制御部１２０を制御する。
【００２８】
エンジン制御部１２０は、ＡＤＦ１０１を駆動し、ＡＤＦ１０１にセットされた撮像対象原稿をスキャナユニット１０２に搬送する。また、エンジン制御部１２０は、スキャナユニット１０２を駆動し、ＡＤＦ１０１から搬送される原稿を撮像する。また、ＡＤＦ１０１に原稿がセットされておらず、スキャナユニット１０２に直接原稿がセットされた場合、スキャナユニット１０２は、エンジン制御部１２０の制御に従い、セットされた原稿を撮像する。即ち、スキャナユニット１０２が撮像部として動作すると共に、エンジン制御部１２０が、読取制御部として機能する。
【００２９】
撮像動作においては、スキャナユニット１０２に含まれるＣＩＳ（Ｃｏｎｔａｃｔ  Ｉｍａｇｅ  Ｓｅｎｓｏｒ）やＣＣＤ（ｃｈａｒｇｅ−ｃｏｕｐｌｅｄ  ｄｅｖｉｃｅ）等の撮像素子が原稿を光学的に走査し、光学情報に基づいて生成された撮像情報が生成される。エンジン制御部１２０は、スキャナユニット１０２が生成した撮像情報を画像処理部１３０に転送する。画像処理部１３０は、主制御部１１０の制御に従い、エンジン制御部１２０から受信した撮像情報に基づき画像情報を生成する。
【００３０】
画像処理部１３０が生成した画像情報は主制御部１１０が取得し、主制御部１１０がＨＤＤ４０等の画像処理装置１に装着された記憶媒体に保存する。即ち、スキャナユニット１０２、エンジン制御部１２０及び画像処理部１３０が連動して、画像入力部として機能する。画像処理部１３０によって生成された画像情報は、ユーザの指示に応じてそのままＨＤＤ４０等に格納され若しくは入出力制御部１５０及びネットワークＩ／Ｆ１０８を介して外部の装置に送信される。
【００３１】
また、画像処理装置１が複写機として動作する場合は、エンジン制御部１２０がスキャナユニット１０２から受信した撮像情報若しくは画像処理部１３０が生成した画像情報に基づき、画像処理部１３０が描画情報を生成する。その描画情報に基づいてプリンタ動作の場合と同様に、エンジン制御部１２０がプリントエンジン１０６を駆動する。尚、描画情報と撮像情報との情報形式が同一である場合は、撮像情報をそのまま描画情報として用いることも可能である。
【００３２】
以上説明したような機能構成であって、本実施形態に係る画像処理装置１は、一度に大量の画像を処理する実行命令である画像処理制御タスクを切り替える制御に特徴を有す。以下、図３を参照して、本実施形態に係る画像処理部１３０で行われる画像処理制御について説明する。
【００３３】
図３は、本実施形態に係る画像処理部１３０で行われる画像処理制御の構成を示す図である。図３に示すように、画像処理部１３０は、ＣＰＵ１０、ＤＭＡ転送用ＲＡＭ２１、画像処理デバイス１３１を含む。画像処理デバイス１３１は、例えばＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）であり、ＰＤＭＡＣ（Ｐａｒａｍｅｔｅｒ  Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌｅｒ）１３２、モジュール１３３、格納先選択部１３５、格納先スイッチ１３６、コード化部１３７を含む。
【００３４】
画像処理部１３０は、主制御部１１０及びエンジン制御部１２０を介して受信した画像データに対してディスプレイパネル１０４の操作に基づいて指定された画像処理を行う。エンジン制御部１２０は、スキャナユニット１０２において読み取られた画像データを画像処理部１３０に送信する。また、ＦＡＸ制御部１６０はネットワーク２３を介して受信した画像データを主制御部１１０に送信する。
【００３５】
主制御部１１０は、ＦＡＸ制御部１６０から受信した画像データ以外にも、外部の情報処理端末からネットワーク２３を介して取得した画像データを画像処理部１３０に送信する。また、主制御部１１０は、ディスプレイパネル１０４の操作に基づいて指定された画像処理を行うための制御を実行する。
【００３６】
ＣＰＵ１０においては、画像処理装置１にインストールされたプログラムが実行される。すなわち、ＣＰＵ１０は、画像処理制御タスクを実行する処理実行制御部として機能する。
【００３７】
本実施形態においてＣＰＵ１０は、例えば、色補正パラメータ及びγ変換テーブルなど、画像処理が行われる際の処理内容情報である画像処理パラメータ７３ｃを選択して画像処理を実行する画像処理制御タスク７２ｃ、階調処理を行うための画像処理パラメータ７３ｂを選択して画像処理を実行する画像処理制御タスク７２ｂ、色相判定を行うための画像処理パラメータ７３ａを選択して画像処理を実行する画像処理制御タスク７２ａ、・・・、などの画像処理制御タスクを実行する。以後の説明において、夫々を特に区別する必要がない場合には、「画像処理制御タスク７２」、「画像処理パラメータ７３」と記載する。
【００３８】
これらの画像処理制御タスク７２は、テーブルで管理され、画像処理ごとに画像処理で使用される画像処理パラメータ７３をテーブルから選択してもよい。また、画像処理制御タスク７２は、画像処理を行うたびに計算によって画像処理パラメータ７３を算出してもよい。
【００３９】
画像処理制御タスク７２は、さらに、ＤＭＡ転送を利用して、画像処理パラメータ７３をレジスタ１３４に設定するか、もしくは、ＤＭＡ転送を使用せずに画像処理パラメータ７３を自らレジスタ１３４に設定するかを選択する。
【００４０】
ＤＭＡ転送を使用する場合、画像処理制御タスク７２は、ＤＭＡ転送用ドライバ７４を用いてＤＭＡ転送用ＲＡＭ２１内のＤＭＡ転送領域２１０に画像処理パラメータ（転送データ）７３を格納させる。さらに、画像処理制御タスク７２は、ＤＭＡ転送用ＲＡＭ２１内にディスクリプタ７５を生成させる。従って、ＤＭＡ転送用ＲＡＭ２１は、処理内容情報格納部として機能する。
【００４１】
ディスクリプタ７５は、画像処理デバイス１３１で生成された画像処理パラメータ７３が記憶されるＤＭＡ転送用ＲＡＭ２１内の情報として、アドレス情報及び転送データ数などの情報を含む。また、画像処理制御タスク７２は、ＰＤＭＡＣ１３２を起動する。ＰＤＭＡＣ１３２は、ディスクリプタ７５の情報に基づいて、画像処理パラメータ７３を読み出し、レジスタ１３４に画像処理パラメータ７３を設定する処理内容情報設定部である。尚、転送データとは、画像処理パラメータ７３の一部または全部に対応するデータである。
【００４２】
また、ＤＭＡ転送用ＲＡＭ２１内に、ＤＭＡ転送領域が複数含まれている場合、図３に示すように、画像処理制御タスク７２はＤＭＡ転送領域２１０もしくはＤＭＡ転送領域２１１を選択してデータを送信する。
【００４３】
一方、ＤＭＡ転送を使用しない場合、画像処理制御タスク７２は、ＤＭＡ転送用ドライバ７４を用いて、モジュール１３３内のレジスタ１３４に画像処理パラメータ７３を自ら設定する。従って、画像処理パラメータ７３を直接レジスタ１３４に設定する場合、画像処理制御タスク７２は処理内容情報設定部として機能する。
【００４４】
画像処理部１３０で処理された画像データは、エンジン制御部１２０を介して、プリントエンジン１０６から所定の出力フォーマットで出力される。
【００４５】
画像処理デバイス１３１は、複数の画像処理制御タスク７２を行う際にＰＤＭＡＣ１３２を使用して画像処理パラメータ７３のＤＭＡ転送を行うかもしくはレジスタ１３４に直接画像処理パラメータ７３を設定するかを切り替える機能を実現する格納先選択部１３５を含む。さらに、画像処理デバイス１３１は、複数の格納先スイッチ１３６を含む。
【００４６】
格納先スイッチ１３６は、レジスタ１３４と、ＤＭＡ転送領域２１０（もしくは２１１）と、ＤＭＡ転送領域２１０（もしくは２１１）に含まれるディスクリプタ７５とから、画像処理パラメータ７３の設定先を選択してデータを送信するものがある。尚、各格納先スイッチ１３６には、“格納モード”が割り当てられており、“格納モード０”、“格納モード１”、“格納モード２”から選択することが出来る。
【００４７】
“格納モード０”は、画像処理パラメータ７３をＤＭＡ転送用ドライバ７４によって直接レジスタに格納する格納モードである。“格納モード１”は、画像処理パラメータ７３をＤＭＡ転送用ドライバ７４によってＤＭＡ転送領域２１０（もしくは２１１）に転送した後にＰＤＭＡＣ１３２によってレジスタ１３４に格納させる格納モードである。従って、画像処理パラメータ７３はＤＭＡ転送領域２１０において第一の処理内容情報格納部として機能する。
【００４８】
“格納モード２”は、画像処理制御タスク７２で行われる動作をディスクリプタ７５としてＤＭＡ転送用ドライバ７４によってＤＭＡ転送領域２１０（もしくは２１１）に転送した後に、ＰＤＭＡＣ１３２によってレジスタ１３４に格納させる格納モードである。従って、ディスクリプタ７５はＤＭＡ転送領域２１０において第二の処理内容情報格納部として機能する。
【００４９】
尚、画像処理制御タスク７２によって、格納先スイッチ１３６に割り当てられている格納モードを切り替える処理が実行される。従って、画像処理制御タスク７２は格納モードが設定されている格納設定情報が割り当てられる格納設定制御部として機能する。
【００５０】
具体的に、ＣＰＵ１０から送信される画像処理制御タスク７２によって、“格納モード１”でＤＭＡ転送用ＲＡＭ２１に書き込まれる前に、格納先スイッチ１３６ｂ〜ｎの格納モードに“格納モード１”が設定される。また、ＣＰＵ１０から送信される画像処理制御タスク７２によって、“格納モード２”によってＤＭＡ転送用ＲＡＭ２１に書き込まれる前に、格納先スイッチ１３６ｂ〜ｎの格納モードに“格納モード２”が設定される。従って、画像処理制御タスク７２は、転送データをＤＭＡ転送用ＲＡＭ２１に格納させる格納命令を送信する。
【００５１】
格納先選択部１３５は、画像処理制御タスク７２から送信されるデータに基づいて上記説明した格納先スイッチ１３６のうち、いずれかひとつを選択する。また、ＣＰＵ１０から送信される画像処理制御タスク７２によって格納先スイッチ１３６ｂ〜ｎに割り当てられている格納モードを切り替える処理が実行される。
【００５２】
また、格納先スイッチ１３６が、ＣＰＵ１０から送信される画像処理制御タスク７２の数と比較して不足していることがある。例えば、格納先スイッチ１３６がＮ個であった場合に、画像処理制御タスク７２の数がＮ個以上である場合である。
【００５３】
このような場合には、少なくとも一つの格納先スイッチ１３６を分割して使い分ける必要がある。例えば、画像処理制御タスク７２ｂの動作が格納先スイッチ１３６ｂを使用して行われている場合、ＣＰＵ１０は、画像処理制御タスク７２ｃが格納先スイッチ１３６ｂを使用しないように制御する必要がある。
【００５４】
そこで、ＣＰＵ１０は、格納先スイッチ１３６を共有する複数の画像処理制御タスク７２が存在する場合に、少なくとも格納先スイッチ１３６が使用されている間、格納先スイッチ１３６を共有する画像処理制御タスク７２が切り替わらないようにソフトウェア制御を実行する。
【００５５】
格納先選択部１３５によってＤＭＡ転送領域２１０（もしくは２１１）、ＤＭＡ転送領域２１０（もしくは２１１）に含まれるディスクリプタ７５が格納先として選択されたデータは、コード化部１３７に送信される。
【００５６】
コード化部１３７は、取得したデータをコード化する情報符号化部である。「コード化」とは、レジスタ１３４を示すアドレスや転送データを符号化して圧縮することを示す。コード化部１３７は、例えば、１００００以上、２００００未満の番地に記憶されている転送データに対して、５桁目の「１」を省略して４桁の「００００」とし、レジスタ１３４のアドレスをコード化する。
【００５７】
さらに、コード化部１３７は、レジスタ１３４および転送データをコード化して固定長データにする。例えば、レジスタ１３４を示すアドレスが１９ビット、転送データが１８ビットである場合、コード化部１３７は、レジスタ１３４を示すアドレスをコード化して１６ビットとし、さらに転送データをコード化して１６ビットとする。この時、コード化部１３７は、コード化されたレジスタ１３４を示すアドレスおよびコード化された転送データが合計２バイト（３２ビット）の固定長データとなるように、コード化を行う。
【００５８】
また、コード化部１３７は、ＣＰＵ１０から受信した転送データをディスクリプタ７５としてコード化し、ディスクリプタ７５をＤＭＡ転送用ＲＡＭ２１に記憶させる。
【００５９】
モジュール１３３は、例えば、色補正部、階調補正部、γ変換部、色相判定処理部などの画像処理を行う処理実行部である。また、モジュール１３３は、これらの画像処理を行う際に、画像処理パラメータ７３に基づいて処理を実行する。モジュール１３３は、画像処理実行中には、「ＢＵＳＹ信号」を、画像処理が終了した場合には、「ＲＥＡＤＹ信号」をＰＤＭＡＣ１３２に夫々送信する。
【００６０】
ＰＤＭＡＣ１３２は、ディスクリプタ７５に基づいて、ＤＭＡ転送領域２１０、２１１からコード化されたレジスタ１３４のアドレスおよび転送データを読み出し、デコードする。従って、ディスクリプタ７５は、ＤＭＡ転送領域２１０、２１１からレジスタ１３４のアドレスおよび転送データを読み出し、レジスタ１３４に設定する処理を開始するための処理開始情報として機能する。
【００６１】
次に、ＰＤＭＡＣ１３２は、モジュール１３３から「ＲＥＡＤＹ信号」を受信した場合に、転送データから画像処理パラメータ７３をデコードし、アドレスに対応するレジスタ１３４にデコードした画像処理パラメータ７３を設定する。
【００６２】
尚、ＰＤＭＡＣ１３２は、画像処理パスと、最初に読み出す転送データが格納されている領域のアドレスの指定を画像処理制御タスク７２から受けて起動される。画像処理パスとは、画像処理の際に使用するモジュール１３３の情報である。例えば、スキャナユニット１０２から原稿を読み込んで、プリントエンジン１０６にて印刷用紙に読み込んだ原稿から生成された画像データを印刷する場合、ＣＰＵ１０は、原稿読み取り用の画像処理パスと印刷用の画像処理パスとを用いる。
【００６３】
図４に示すように、例えば、画像処理装置１において、第一の画像処理パス４１では、スキャナユニット１０２による原稿の読み取り処理４００から編集４１１までが行われ、第二の画像処理パス４２では、域像分離４２４から編集４３５までが実行されるとする。このような場合、画像処理装置１においては、第一の画像処理パス４１と第二の画像処理パス４２とを夫々独立に変更して画像処理を行うことが出来る。
【００６４】
図４においては、例えば、スキャナ・ＩＰＵ１４の点線画像処理パス（シェーディング補正４０１ａ、４０１ｂ〜編集（１）、４１１）のタスクＡと、画像処理パス（像域分離ＡＣＳ（２）、４５１〜編集（２）、４３５）のタスクＢとに分けて制御する。この時、自動原稿送り装置（ＡＤＦ）によって、スキャナ４００ａ，４００ｂにより原稿の表面、裏面を夫々読み取る。
【００６５】
スキャナ・ＩＰＵ１４のブロックでは、表面・裏面を連続して画像処理を行い、ＨＤＤ４０内に蓄積させることが出来る。このとき、画像処理速度（１分間に画像処理可能な枚数）は、ＡＤＦ１０１の読み取り速度に依存する。
【００６６】
一方、ＩＰＵ１５では、ＨＤＤ４０からの画像データを画像処理して、プロッタ４１５で印刷する。このＩＰＵ１５の画像処理速度（１分間に画像処理する画像データの数）は、プロッタ４１３の印刷速度（１分間に印刷可能な枚数）に依存するか、あるいは、ＨＤＤ４０に再度保存する場合は、ＨＤＤ４０への保存速度（一例として、１分間に保存可能な画像データの枚数）に依存する。
【００６７】
そのため、スキャナ・ＩＰＵ１４とＩＰＵ１５とが独立なタスクでない場合には、スキャナ・ＩＰＵ１４の画像処理速度が、プロッタ４１３の印刷速度の制約を受けやすくなってしまう。また、ＩＰＵ１５の画像処理速度が、スキャナ４００ａ、ｂの読み取り速度（一例として、１分間に原稿を読み取り可能な枚数）の制約を受けやすくなる。
【００６８】
そこで、本実施形態においては、上述したような影響を低減するために、スキャナ・ＩＰＵ１４もしくはＩＰＵ１５で行われるそれぞれの制御を、独立した画像処理制御タスク７２とする。また、同一の画像処理パス内でも、画像データの流れを制御するためにリアルタイムに制御を行う必要があるタスクと、画像処理パラメータを計算で求めるためのタスクのようにリアルタイム制御に比べて長い計算時間が必要である場合もある。
【００６９】
例えば、図４のスキャナ・ＩＰＵ１４で行われる画像処理パスに含まれる、像域分離・ＡＣＳ部４０３、色相判定部４０６、色補正・ＵＣＲ処理部４０７などである。像域分離・ＡＣＳ部４０３は、スキャナ４００ａ、ｂで読み取られた画像データについて、文字領域、網点領域、地肌領域などを判定し、領域判定結果を示す信号、カラー判定結果を示すカラー判定信号、透明トナーの付加量を示す信号を出力する。
【００７０】
色相判定部４０６は、読み取られた画像データがどの色相に判別されるかを判定し、判定結果に基づいて色相ごとの色補正係数を選択する。また、色補正・ＵＣＲ処理部４０７は、読み取られた画像データをＣＭＹＫの画像データに変換し、変倍処理部４０８に入力する。
【００７１】
そこで、これらの処理部で行われる画像処理制御タスクについて、リアルタイムな制御が要求されないタスクと、リアルタイムな制御が要求されるタスクとを分けて夫々別の画像処理制御タスクとする。このようにすることで、本実施形態においては、リアルタイム制御が必要な画像処理制御タスクのみを制御可能とする。
【００７２】
このように、タスクを分けることによって、別のタスクの影響を考慮しないでプログラムを作成することができる。また、システムが所定の時間で画像処理制御タスク７２を切り替え、画像処理制御タスク７２ごとにリアルタイムに制御することが出来る。このように、画像処理に応じてシステムにかかる負荷を低減させることが本発明の要旨のひとつである。
【００７３】
以上説明したような構成であって、本実施形態に係る画像処理装置１は、ＣＰＵ１０から画像処理デバイス１３１に送信されたデータの送信先を振り分ける際の処理に特徴を有する。以下、図５を参照して、画像処理部１３０におけるデータの流れを説明する。
【００７４】
図５は、本実施形態に係る画像処理部１３０におけるデータの流れを示す説明図である。図５においては、画像処理パラメータ７３の設定先となるレジスタ１３４のアドレス及びレジスタに設定されるデータの流れを破線の矢印で示し、データの格納先となるＤＭＡ転送領域２１０、２１１のアドレス及び格納モードの流れを実線の矢印で示している。
【００７５】
尚、画像処理パラメータ７３の設定先となるレジスタ１３４のアドレス及びレジスタに設定されるデータと、データの格納先となるＤＭＡ転送領域２１０、２１１のアドレス及び格納モードとは、ＣＰＵ１０から画像処理デバイス１３１に送信される転送データ、即ち画像処理制御タスク７２において指定される。
【００７６】
図６、図７は、本実施形態に係るデータの情報構成を例示した図である。尚、図６、図７においては、例として、３２ビット長のデータを用いてレジスタ１３４のアドレスを指定する。図６、図７に示すように、本実施形態においては、１８ビット〜２４ビットを設定対象となるレジスタ１３４のアドレスを指定する領域として使用し、残りの１４ビット〜８ビットを、格納先選択番号を指定する領域として使用する。
【００７７】
尚、格納先スイッチ１３６には、夫々、転送先となるＤＭＡ転送用ＲＡＭ２１のアドレスと格納モードが割り当てられている。「格納モード０」は、対象のレジスタ１３４に直接画像処理パラメータ７３を設定する格納モードである。「格納モード１」は、ＤＭＡ転送用ＲＡＭ２１内のＤＭＡ転送領域２１０、２１１に画像処理パラメータ７３を記憶させ、ＰＤＭＡＣ１３２を介して対象となるモジュール１３３のレジスタ１３４に画像処理パラメータ７３を設定する格納モードである。
【００７８】
「格納モード２」は、ＤＭＡ転送する画像処理パラメータ７３をディスクリプタ７５としてＤＭＡ転送領域２１０、２１１に転送し、ＰＤＭＡＣ１３２を介して対象となるモジュール１３３のレジスタ１３４に設定する格納モードである。
【００７９】
格納先選択部１３５は、ＣＰＵ１０から受信した転送データ、すなわち画像処理制御タスク７２に予め対応付けられている格納先スイッチ１３６を参照し、転送先のアドレスを取得する。また、画像処理制御タスク７２が切り替えられる際に、タスクの切り替えと連動してＣＰＵ１０から格納先選択番号を発行する構成であってもよい。
【００８０】
以上説明したような機能構成によって、本実施形態に係る格納先選択部１３５は、画像処理制御タスク７２を切り替えて実行させるために画像処理パラメータ７３の転送先を選択する。次に、図８から図１１を参照して本実施形態に係る画像処理パラメータ７３の転送先を選択する処理について説明する。
【００８１】
図８は、本実施形態に係る画像処理パラメータ７３の転送先を選択する処理の流れを示すフローチャートである。尚、図５には、図９、図１０、図１１で説明する処理と対応する箇所に同じ符号を付している。
【００８２】
ＣＰＵ１０は、レジスタ１３４のアドレス、レジスタに設定する画像処理パラメータ７３を含むデータを画像処理デバイス１３１に送信する。格納先選択部１３５は、データを受信する（Ｓ８０１）と、格納先選択番号の情報を含むか否か判断する（Ｓ８０２）。
【００８３】
図１２に示すように、受信したデータに格納先選択番号の情報が含まれていない場合（Ｓ８０２／Ｎｏ）、格納先選択部１３５は、受信したデータを直接レジスタ１３４に書き込み、記憶させる（Ｓ８０３）。一方で、図１３に示すように、受信したデータに格納先選択番号の情報が含まれている場合（Ｓ８０２／Ｙｅｓ）、格納先選択部１３５は、格納先選択番号の情報を読み出し、受信したデータの格納先を判断する。
【００８４】
尚、この時、格納先選択番号が「０」であった場合（Ｓ８０４／Ｙｅｓ）、格納先選択部１３５は、受信したデータを直接レジスタ１３４に書き込み、記憶させる（Ｓ８０３）。格納先選択部１３５は、格納先選択番号が「０」ではない場合（Ｓ８０４／Ｎｏ）、受信したデータの格納先選択番号を読み出して、データの送信先となる格納先スイッチ１３６を決定する（Ｓ８０５）。
【００８５】
そして、格納先選択部１３５は、決定した格納先スイッチ１３６から、データの転送先のアドレス及び格納モードの情報を読み出して取得する（Ｓ８０６）。さらに格納先選択部１３５は、取得した格納モードの情報に基づいて、受信したデータを送信する（Ｓ８０７）。
【００８６】
以下、図９から図１１を参照して、本実施形態に係る格納モードごとに行われる処理について説明する。図０９は、格納モードが「０」である場合に画像処理部１３０で行われる処理の流れを示すシーケンス図である。
【００８７】
格納先スイッチ１３６に設定されている格納モードが「０」である場合、格納先選択部１３５は、画像処理パラメータ７３ａの格納先であるレジスタ１３４ａのアドレスをＤＭＡ転送用ドライバ７４ａに送信する（Ｓ９０１）。ＤＭＡ転送用ドライバ７４ａは、レジスタ１３４ａに画像処理パラメータ７３ａを書き込む（Ｓ９０２）。画像処理パラメータ７３ａがレジスタ１３４に格納されると（Ｓ９０３）、ＤＭＡ転送用ドライバ７４ａは本処理を終了する。
【００８８】
図１０は、格納モードが「１」である場合に、画像処理部１３０で行われる処理の流れを示すシーケンス図である。格納先スイッチ１３６に設定されている格納モードが「１」であった場合、格納先選択部１３５は、格納モードの情報に基づいてＤＭＡ転送領域２１０を指定するアドレスをＤＭＡ転送用ドライバ７４ｂに送信する（Ｓ１００１）。
【００８９】
ＤＭＡ転送用ドライバ７４ｂは、格納モード「１」に割り当てられている処理の情報をコード化部１３７に送信する。即ち、ＤＭＡ転送用ドライバ７４ｂは、ＤＭＡ転送領域２１０を指定するアドレスと、画像処理パラメータ７３ｂと、画像処理パラメータ７３ｂの設定先となるレジスタ１３４ｂのアドレスをコード化部１３７に送信する（Ｓ１００２）。
【００９０】
コード化部１３７は、受信したデータを夫々コード化し（Ｓ１００３）、コード化した送信先のレジスタ１３４のアドレスを画像処理パラメータ７３ｂとセットにする（Ｓ１００４）。従って、コード化部１３７は、符号化されたデータを関連付けて格納させる符号化関連情報格納制御部として機能する。
【００９１】
コード化された送信先のレジスタ１３４のアドレス及び画像処理パラメータ７３ｂの情報は、コード化部１３７によって、データの転送先として指定されたＤＭＡ転送領域２１０の指定アドレスに書き込まれる（Ｓ１００５）。
【００９２】
ＤＭＡ転送用ドライバ７４ｂは、データがＤＭＡ転送領域２１０に格納される（Ｓ１００６）と、データの格納先であるＤＭＡ転送領域２１０のアドレスを所定分インクリメントし、本処理を終了する。尚、本実施形態においてＤＭＡ転送領域２１０のアドレスは、データがＤＭＡ転送領域２１０に書き込まれる度に、書き込まれるデータの量に相当する記憶容量である「＋０４Ｈ」だけオートインクリメントされる。
【００９３】
図１１は、格納モードが「２」である場合に、画像処理部１３０で行われる処理の流れを示すシーケンス図である。格納先スイッチ１３６に設定されている格納モードが「２」である場合、格納先選択部１３５は、格納モードの情報に基づいてＤＭＡ転送領域２１０を指定するアドレスをＤＭＡ転送用ドライバ７４ｂに送信する（Ｓ１１０１）。
【００９４】
ＤＭＡ転送用ドライバ７４ｂは、格納モード「２」に割り当てられている処理の情報をコード化部１３７に送信する。即ち、ＤＭＡ転送用ドライバ７４ｂは、ＤＭＡ転送領域２１０を指定するアドレスと、画像処理パラメータ７３ｂの設定先となるレジスタ１３４ｂのアドレスをコード化部１３７に送信する（Ｓ１１０２）。さらに、画像処理制御タスク７２ｂには、転送データをディスクリプタ７５ｂとして記憶領域に格納するための制御情報が含まれている。
【００９５】
コード化部１３７は、受信したデータをディスクリプタ７５ｂとしてコード化する（Ｓ１１０３）。ディスクリプタ７５ｂは、Ｓ８０６で取得したデータにおいて指定されたＤＭＡ転送領域２１０に書き込まれる（Ｓ１１０４）。送信されたデータが、ディスクリプタ７５ｂとしてＤＭＡ転送領域２１０に格納される（Ｓ１１０５）と、ＤＭＡ転送用ドライバ７４ｂは、本処理を終了させる。
【００９６】
次に、ＣＰＵ１０がＰＤＭＡＣ１３２を起動して、各モジュール１３３のレジスタ１３４に画像処理パラメータ７３を書き込むまでの動作を説明する。図１４に示すのは、本実施形態に係るＰＤＭＡＣ１３２の内部構成を示す機能ブロック図である。図１４に示すように、ＰＤＭＡＣ１３２は、アドレス制御部１４１、データ制御部１４２を含む。また、データ制御部１４２は、内部バッファ１４８、アドレス生成部１４９を含む。
【００９７】
ＣＰＵ１０は、ＰＤＭＡＣ１３２のアドレス制御部１４１に含まれるＰＤＭＡＣ起動ディスクリプタ・アドレス１４４にディスクリプタ７５が格納されているＤＭＡ転送用ＲＡＭ２１のアドレスを設定する。ＣＰＵ１０は、モジュール１３３に画像データが出力されていないことを確認し、ＰＤＭＡＣ１３２のアドレス制御部１４１に含まれるレジスタであり、ＰＤＭＡＣ１３２を起動させるＰＤＭＡＣ起動レジスタ１４３に、ＰＤＭＡＣ１３２を起動させる設定値を設定する。この時、ＣＰＵ１０は、例えば、「１」をＰＤＭＡＣ起動レジスタ１４３に設定する。
【００９８】
ＰＤＭＡＣ１３２は、ＰＤＭＡＣ起動レジスタ１４３に、ＰＤＭＡＣ１３２を起動させる設定値が設定されると、ＰＤＭＡＣ起動ディスクリプタ・アドレス１４４に設定されているＤＭＡ転送用ＲＡＭ２１のアドレスに基づいて、ディスクリプタ７５を読み出すためのコマンドをＤＭＡ転送用ＲＡＭ２１に発行する。データ制御部１４２は、ＤＭＡ転送用ＲＡＭ２１からコマンドに対応したディスクリプタ７５を受け取る。尚、ＰＤＭＡＣ１３２とＤＭＡ転送用ＲＡＭ２１との間には、アービタ兼ＤＭＡ転送用ＲＡＭ制御部２２が存在しているものとする。
【００９９】
尚、ＣＰＵ１０はあらかじめＤＭＡ転送用ＲＡＭ２１に画像処理パラメータ７３を格納し、格納されている画像処理パラメータ７３に対応するディスクリプタ７５をＤＭＡ転送用ＲＡＭ２１の所定の領域に格納する。本実施形態においては、格納されている画像処理パラメータ７３と、その画像処理パラメータ７３に対応するディスクリプタ７５が格納される領域をＤＭＡ転送領域２１０、２１１として記載している。
【０１００】
また、ＣＰＵ１０は、ディスクリプタ７５が格納されているＤＭＡ転送領域２１０、２１１のアドレスを、アドレス制御部１４１に含まれるＰＤＭＡＣ起動ディスクリプタ・アドレス１４４に設定しておくものとする。
【０１０１】
なお、図１４に示すように、ディスクリプタ７５としては、例えばＮＤＰ（Ｎｅｘｔ  Ｄｅｓｃｒｉｐｔｏｒ  Ｐｏｉｎｔｅｒ）１５５、ＳＡ（Ｓｔａｒｔ  Ａｄｄｒｅｓｓ）１５６、ＳＩＺＥ１５７などの項目が登録されている。
【０１０２】
ＮＤＰ１５５には、次のディスクリプタ７５が格納されているＤＭＡ転送領域２１０、２１１のアドレスが設定される。ＣＰＵ１０は、ＤＭＡ転送領域２１０、２１１上の連続しない領域に画像処理パラメータ７３を格納する場合には、それぞれの領域のディスクリプタ７５を生成し、次のディスクリプタ７５が格納されているＤＭＡ転送領域２１０、２１１のアドレスをＮＤＰ１５５に書き込む。
【０１０３】
このように、ＮＤＰ１５５に次のディスクリプタ７５を指定するアドレスを書き込むことで、連続しない領域に格納された画像処理パラメータ７３を用いて連続して画像処理を行うことが可能になる。
【０１０４】
また、ＳＡ１５６には、例えばＤＭＡ転送領域２１０、２１１からデータを読み出す先頭アドレス（転送開始アドレス）が設定される。ＳＩＺＥ１５７には、転送データ量（例えば単位：バイト）が設定される。
【０１０５】
データ制御部１４２は、ＤＭＡ転送領域２１０、２１１から取得したディスクリプタ７５をアドレス制御部１４１に受け渡す。アドレス制御部１４１は、ディスクリプタ７５を内部バッファ１４８に格納する。アドレス制御部１４１は、ＳＡレジスタ１４６で指定されたＤＭＡ転送領域２１０、２１１の空間領域からＳＩＺＥレジスタ１４７で指定されたサイズに相当する画像処理パラメータ７３とその画像処理パラメータ７３を書き込むアドレス情報とを読み出すための読み出しコマンドを発行する。
【０１０６】
データ制御部１４２は、ＤＭＡ転送領域２１０、２１１から読み出しコマンドに対応した画像処理パラメータ７３とその画像処理パラメータ７３のアドレス情報を受け取る。図１４に示すように、あらかじめＣＰＵ１０によりＤＭＡ転送領域２１０、２１１に格納された画像処理パラメータ７３には、その画像処理パラメータ７３に対応するアドレス情報としてのレジスタアドレスが付加されている。
【０１０７】
上述したように、ＣＰＵ１０が書き換えを実施したい画像処理パラメータ７３と、その画像処理パラメータ７３を書き込むモジュール１３３のレジスタ１３４のレジスタアドレスとを対応付けてＤＭＡ転送領域２１０、２１１に格納しておく。これにより、モジュール１３３では、書き換えを実施したい画像処理パラメータ７３のみを書き換えることが出来る。
【０１０８】
ここで、データ制御部１４２は、ＤＭＡ転送領域２１０、２１１からバースト転送により、例えば一つの書き込みコマンドによって複数の画像処理パラメータ７３を取得する。これに対し、データ制御部１４２は、単一転送として、例えば一つの書き込みコマンドで一つの画像処理パラメータ７３をモジュール１３３に転送する。
【０１０９】
上述した転送速度の差を吸収するため、データ制御部１４２には、内部バッファ１４８が設けられている。データ制御部１４２は、ＤＭＡ転送領域２１０、２１１から取得した画像処理パラメータ７３とその画像処理パラメータ７３に対応するアドレス情報とを内部バッファ１４８に一時的に格納し、内部バッファ１４８に収まらない状態になると、アドレス生成部１４９に出力する。
【０１１０】
アドレス生成部１４９は、例えばＣＰＵ１０により設定可能なベースアドレステーブル１５１を含む。アドレス生成部１４９は、ベースアドレステーブル１５１を参照して、内部バッファ１４８から取得したアドレス情報に、起動されたディスクリプタ７５に対応したベースアドレス（ベース情報）を加算する。アドレス生成部１４９は、ベースアドレスを加算したアドレス情報に対する書き込み要求をモジュール１３３に発行する。
【０１１１】
図１４に示すように、例えば、ＰＤＭＡＣ１３２から発行された書き込み要求は、コントローラ１００を介してモジュール１３３に出力される。モジュール１３３のレジスタ１３４には、対応する画像処理パラメータ７３が書き込まれる。
【０１１２】
ＳＩＺＥレジスタ１４７で指定されたサイズに相当する画像処理パラメータ７３の転送が完了すると、アドレス制御部１４１は、ＮＤＰレジスタ１４５で指定されたＤＭＡ転送領域２１０、２１１に格納された次のディスクリプタ７５の読み出しコマンドを発行する。以上説明したような処理を繰り返すことによって、モジュール１３３のレジスタ１３４に画像処理パラメータ７３が設定される。
【０１１３】
尚、ＰＤＭＡＣ１３２は、ＮＤＰレジスタ１４５で指定された設定値が、例えば「０」などの場合には、モジュール１３３への画像処理パラメータ７３の書き込みが終了すると、ＣＰＵ１０に転送完了通知を発行する。以上説明したようにして、ＤＭＡ転送用ＲＡＭ２１に格納された画像処理パラメータ７３はモジュール１３３のレジスタ１３４に設定される。
【０１１４】
このように、本実施形態に係る画像処理部１３０においては、ＣＰＵ１０から送信される画像処理制御タスク７２に基づいて画像処理パラメータ７３の格納先を振り分ける処理が実行される。以下、本実施形態に係る画像処理パラメータ７３の格納先を振り分ける処理について説明する。
【０１１５】
図１５は、本実施形態に係る夫々の画像処理制御タスク７２で行われる動作を示す図である。尚、本実施形態においては、画像処理制御タスク７２ａに格納モード０、画像処理制御タスク７２ｂに格納モード１、画像処理制御タスク７２ｂに格納モード２が関連付けられているものとして、以下の説明を行う。
【０１１６】
図１５に示すように、格納モード０の場合、画像処理パラメータ７３ａは、ＰＤＭＡＣ１３２を経由せずにＤＭＡ転送用ドライバ７４ａによって直接レジスタ１３４ａに書き込まれる。この時、画像処理パラメータ７３ａは、レジスタ１３４のアドレス「０×００００Ｈ」を開始アドレスとして、２バイトのデータが「０×００００」、「０×０００１」、「０×０００２」、「０×０００３」、「０×０００４」、「０×０００５」のアドレスに順次書き込まれる。
【０１１７】
また、格納モード１の場合、画像処理パラメータ７３ｂはＤＭＡ転送用ドライバ７４ｂによってＤＭＡ転送領域２１０に格納された後に、ＰＤＭＡＣ１３２によってレジスタ１３４ｂに書き込まれる。
【０１１８】
この時、ＤＭＡ転送領域２１０の「０×１０００Ｈ」のアドレスで指定される領域に、レジスタ１３４ｂを指定するアドレスとコード化された画像処理パラメータ７３ｂとのデータセットが３セット分、２バイトずつ順次書き込まれる。また、ＤＭＡ転送領域２１０内のアドレスは、図１６に示すように書き込まれるデータの量に相当する記憶容量である４ずつオートインクリメントされる。
【０１１９】
また、画像処理パラメータ７３ｂによって、格納先スイッチ１３６ｂの格納モードが「１から２」に書き換えられる。
【０１２０】
画像処理パラメータ７３ｂによって、格納モード２に切り替えられた格納先スイッチ１３６ｂに送信される画像処理パラメータ７３ｂは、ＤＭＡ転送用ドライバ７４ｂによってＤＭＡ転送領域２１０内にディスクリプタ７５ｂとして格納される。そして、ＰＤＭＡＣ１３２によってディスクリプタ７５ｂから画像処理パラメータ７３ｂがレジスタ１３４ｂに格納される。
【０１２１】
この時、ＤＭＡ転送領域２１１の「０×２０００Ｈ」のアドレスで指定される領域に、ディスクリプタ７５ｂとしてコード化されたレジスタ１３４ｂを指定するアドレスと画像処理パラメータ７３ｂとを含むデータが２バイトずつ順次書き込まれる。また、ＤＭＡ転送領域２１０内のアドレスは、図１６に示すように書き込まれるデータの量に相当する記憶容量である４ずつオートインクリメントされる。
【０１２２】
画像処理制御タスク７２ｂにおいては、まず、格納モード１により画像処理パラメータ７３ｂを含む転送データがＤＭＡ転送用ＲＡＭ２１に格納される。そして、画像処理制御タスク７２ｂによって、格納先スイッチ１３６ｂに設定されている格納モードが格納モード「２」に書き換えられる。
【０１２３】
書き換えられて格納モード２にされたことにより、画像処理制御タスク７２ｂにおいては、転送データがディスクリプタ７５ｂとしてＤＭＡ転送用ＲＡＭ２１に格納される。画像処理パラメータ７３ｂを含む転送データとディスクリプタ７５ｂとがＤＭＡ転送用ＲＡＭ２１に格納されると、画像処理制御タスク７２ｂによって、ＰＤＭＡＣ１３２が起動される。
【０１２４】
図１７は、本実施形態に係るＰＤＭＡＣ１３２を起動させるために行われる動作の一例を示すテーブルである。図１７に示すように、格納モード２の場合、ディスクリプタ７５によって転送されるデータを設定するために、レジスタアドレス「０×ＦＦＦ０」によって指定される転送ＲＡＭ設定用レジスタが用いられる。
【０１２５】
また、ＰＤＭＡＣ起動レジスタ１４３（レジスタアドレス「０×ＦＦＦ２」）において読み取られた設定値が「０」である場合は待機状態に、また、読み取られた設定値が「１」である場合は、ＰＤＭＡＣ１３２を起動状態にする。待機状態である場合に、ＰＤＭＡＣ起動レジスタ１４３に、画像処理制御タスク７２からＣＰＵ１０を経由して「１」が設定されると、ＰＤＭＡＣ１３２は待機状態から起動状態に状態遷移される。
【０１２６】
逆に、ＰＤＭＡＣ１３２が起動状態である場合、ＰＤＭＡＣ起動レジスタ１４３に対して、画像処理制御タスク７２からＣＰＵ１０を経由して、「０」が設定されると、ＰＤＭＡＣ１３２は起動状態から待機状態に状態遷移される。
【０１２７】
ＰＤＭＡＣ１３２が起動している間、転送データが設定される対象となるレジスタ１３４が、使用中（画像パスに画像データが流れている状態）である場合、ＰＤＭＡＣ１３２はデータ転送を即座には実行せず、転送データが設定される対象となるレジスタ１３４が不使用状態になった後に、ＰＤＭＡＣ転送を実行する。
【０１２８】
尚、ＰＤＭＡＣ起動ディスクリプタ・アドレス１４４には、ＰＤＭＡＣ転送を行う動作において、最初に使用されるディスクリプタ７５ｂが格納されているＤＭＡ転送用ＲＡＭ２１のアドレス「０×２０００」が設定される。
【０１２９】
ＰＤＭＡＣ転送においては、まず、ＰＤＭＡＣ起動ディスクリプタ・アドレス１４４「０ｘＦＦＦ４」に設定されたアドレスを、ＰＤＭＡＣ転送に使用する最初のディスクリプタ７５ｂのアドレスとして使用する。また、次のディスクリプタ７５を設定するためのディスクリプタ・アドレスは、最初のディスクリプタ７５ｂ内に設定されている。尚、転送されるディスクリプタ７５が末端のディスクリプタ７５である場合には「０」が設定される。
【０１３０】
そして、ＰＤＭＡＣ１３２は、ディスクリプタ７５を順次呼び出し、ＰＤＭＡＣ転送を行う。データを転送している間、ＰＤＭＡＣ１３２は転送中のディスクリプタ・アドレスを、ＰＤＭＡＣ起動ディスクリプタ・アドレス１４４に表示させる。
【０１３１】
一方、転送ＲＡＭデータが設定される対象となるレジスタ１３４が、使用されていない（画像パスに画像データが流れていない状態）場合、ＰＤＭＡＣ１３２は、ＰＤＭＡＣ転送を即座に実行する。
【０１３２】
次に、画像処理制御タスク７２が並列して実行される場合のデータの流れを図１８〜図２４を参照して説明する。図１８は、本実施形態に係る複数の画像処理制御タスク７２が並列して実行される時の処理の流れを示す図である。尚、本実施形態においては、画像処理制御タスク７２ａ、７２ｂが並列して行われる処理について説明する。また、図１９は、本処理を実行する前のレジスタ１３４ａ、ＤＭＡ転送領域２１０夫々のメモリダンプを示す図である。
【０１３３】
図１９に示すように、本処理を実行する前、すなわち初期状態におけるレジスタ１３４ａ、ＤＭＡ転送領域２１０の記憶領域には、「００００」のデータのみが存在する。また、図１９〜図２４においては、レジスタ１３４ａ、ＤＭＡ転送領域２１０夫々におけるオフセットアドレスを、１６進数を用いて、「００００」、「０００２」、「０００４」、「０００６」、「０００８」、「０００Ａ」と表す。レジスタ１３４ａ、ＤＭＡ転送領域２１０夫々においては、「００００」のオフセットアドレスからデータを書き込む処理が開始される。
【０１３４】
図１８の設定回数１回目の処理から順に説明を行う。設定回数１回目の処理では、夫々の画像処理制御タスク７２に対応付けられている格納先スイッチ１３６を参照し、夫々の画像処理制御タスク７２に格納モードを割り当てる処理が実行される。
【０１３５】
画像処理制御タスク７２ａは格納モード０が対応付けられているタスクである。従って、画像処理制御タスク７２ａによって、格納先スイッチ１３６ａに格納モード０が割り当てられる。従って、画像処理制御タスク７２ａが実行されることによって画像処理パラメータ７３ａが直接レジスタ１３４ａに書き込まれる。設定回数１回目の処理においては、まず、レジスタ１３４ａのアドレス「０×００００」に、画像処理パラメータ７３ａのデータ「０×００００」が書き込まれる。
【０１３６】
画像処理制御タスク７２ｂは格納モード１が対応付けられているタスクが含まれ、画像処理制御タスク７２ｂによって、格納先スイッチ１３６ｂに格納モード「１」が割り当てられる。従って、画像処理制御タスク７２ｂが実行されることによって、画像処理パラメータ７３ｂがＤＭＡ転送領域２１０に一時的に格納された後に、レジスタ１３４ｂに書き込まれる。設定回数１回目の処理においては、ＣＰＵ１０から画像処理制御タスク７２ｂが格納モード「１」で実行される処理であることが、コード化部１３７に送信される。
【０１３７】
画像処理制御タスク７２ｂには格納モード２が対応付けられているタスクが含まれ、画像処理制御タスク７２ｂによって、格納先スイッチ１３６ｂに割り当てられている格納モードを格納モード「２」に書き換えられる。従って、画像処理制御タスク７２ｂが実行されることによって、画像処理パラメータ７３ｂがディスクリプタ７５ｂとしてＤＭＡ転送領域２１０に一時的に格納された後に、レジスタ１３４ｂに書き込まれる。設定回数１回目の処理においては、画像処理制御タスク７２ｂに格納モード「２」で実行される処理が含まれることを示す情報が、コード化部１３７に送信される。
【０１３８】
尚、以後の処理について、格納モード１で行われる画像処理制御タスク７２ｂの処理を「画像処理制御タスク７２ｂ−１」、格納モード２で行われる画像処理制御タスク７２ｂの処理を「画像処理制御タスク７２ｂ−２」とそれぞれ記載する。
【０１３９】
設定回数２回目の画像処理制御タスク７２ａにおいては、レジスタ１３４ａのアドレス「０×０００２」に、画像処理パラメータ７３ａのデータ「０×０００１」が書き込まれる。設定回数２回目の画像処理制御タスク７２ｂ−１においては、格納先スイッチ１に対応付けられているＤＭＡ転送領域２１０を格納先として指定するための格納先アドレス「０×１０００」が設定される。
【０１４０】
設定回数２回目の画像処理制御タスク７２ｂ−２においては、格納先スイッチ１３６ｂに対応付けられているＤＭＡ転送領域２１０を格納先として指定するための格納先アドレス「０×２０００」が設定される。
【０１４１】
図１９は、画像処理制御タスク７２ａ、７２ｂについて設定回数２回目の処理が終了したタイミングにおけるメモリダンプを例示した図である。図１９に破線を用いて示すように、「０×００００Ｈ」のアドレスで指定されるレジスタ１３４ａにのみ２バイト分×２つの画像処理パラメータ７３ａが書き込まれている。
【０１４２】
設定回数３回目の画像処理制御タスク７２ａにおいては、レジスタ１３４ａのアドレス「０×０００４」に、画像処理パラメータ７３ａのデータ「０×０００２」が書き込まれる。
【０１４３】
設定回数３回目の画像処理制御タスク７２ｂ−１においては、格納先スイッチ１に対応付けられているＤＭＡ転送領域２１０のアドレス「０×１０００」に、レジスタ１３４ｂの領域を指定するアドレス「０×００００」が書き込まれる。また同時に、ＤＭＡ転送領域２１０のアドレス「０×１００２」に、画像処理パラメータ７３ｂのデータ「０×００１０」が書き込まれる。同時に書き込まれるのは、格納モード「１」においては、コード化されたレジスタ１３４ｂを指定するアドレスと画像処理パラメータ７３ｂとがデータセットとして扱われるためである。
【０１４４】
設定回数３回目の画像処理制御タスク７２ｂ−２においては、格納先スイッチ１３６ｂに対応付けられているＤＭＡ転送領域２１０のアドレス「０×２０００」に、レジスタアドレス「０×ＦＦＦ０」が書き込まれる。また、同時に、ＤＭＡ転送領域のアドレス「０×２００２」に、ＤＭＡ転送領域２１０に格納されている画像処理パラメータ７３ｂを転送元として指定するアドレスである「０×１０００」が書き込まれる。
【０１４５】
図２０は、画像処理制御タスク７２ａ、７２ｂについて設定回数３回目の処理が終了したタイミングにおけるメモリダンプを例示した図である。図２０に破線を用いて示すように、「０×００００Ｈ」のアドレスで指定されるレジスタ１３４ａには、２バイト×３つ分の画像処理パラメータ７３ａが書き込まれている。また、「０×１０００Ｈ」のアドレスで指定されるＤＭＡ転送領域２１０には、画像処理パラメータ７３ｂの設定先のレジスタ１３４ｂのアドレスと、画像処理パラメータ７３ｂとが書き込まれている。さらに、「０×２０００Ｈ」のアドレスで指定されるＤＭＡ転送領域２１０には、「０×ＦＦＦ０」が書き込まれている。
【０１４６】
設定回数４回目の画像処理制御タスク７２ａにおいては、レジスタ１３４ａのアドレス「０×０００６」に、画像処理パラメータ７３ａのデータ「０×０００３」が書き込まれる。
【０１４７】
設定回数４回目の画像処理制御タスク７２ｂ−１においては、格納先スイッチ１に対応付けられているＤＭＡ転送領域２１０のアドレス「０×１００４」に、レジスタ１３４ｂの領域を指定するアドレス「０×０００２」が書き込まれる。また同時に、ＤＭＡ転送領域２１０のアドレス「０×１００６」に、画像処理パラメータ７３ｂのデータ「０×００１１」が書き込まれる。
【０１４８】
設定回数４回目の画像処理制御タスク７２ｂ−２においては、格納先スイッチ１３６ｂに対応付けられているＤＭＡ転送領域２１０のアドレス「０×２００４」に、転送されるデータが一時的に格納されていることを示す情報であるレジスタアドレス「０×ＦＦＦ０」が書き込まれる。また、同時に、ＤＭＡ転送領域２１０のアドレス「０×２００６」に、ＤＭＡ転送領域２１０に格納された画像処理パラメータ７３ｂを転送元として、データをレジスタ１３４の３つ分転送することを示す転送サイズを設定するデータである「０×０００３」が書き込まれる。
【０１４９】
図２１は、画像処理制御タスク７２ａ、７２ｂについて設定回数４回目の処理が終了したタイミングにおけるメモリダンプを示した図である。図２１に破線を用いて示すように、「０×００００Ｈ」のアドレスで指定されるレジスタ１３４ａには、２バイト分×４つの画像処理パラメータ７３ａが書き込まれている。
【０１５０】
また、「０×１０００Ｈ」のアドレスで指定されるＤＭＡ転送領域２１０には、画像処理パラメータ７３ｂの設定先のレジスタ１３４ｂのアドレスと、画像処理パラメータ７３ｂとが書き込まれている。さらに、「０×２０００Ｈ」のアドレスで指定されるＤＭＡ転送領域２１０には、ＤＭＡ転送領域２１０に格納されているデータ（画像処理パラメータ７３ｂ）をレジスタ１３４の３つ分転送することを示すデータが書き込まれている。
【０１５１】
設定回数５回目の画像処理制御タスク７２ａにおいては、レジスタ１３４ａのアドレス「０×０００８」に、画像処理パラメータ７３ａのデータ「０×０００４」が書き込まれる。
【０１５２】
設定回数５回目の画像処理制御タスク７２ｂ−１においては、格納先スイッチ１に対応付けられているＤＭＡ転送領域２１０のアドレス「０×１００８」に、レジスタ１３４ｂの領域を指定するアドレス「０×０００４」が書き込まれる。また同時に、ＤＭＡ転送領域２１０のアドレス「０×１００Ａ」に、画像処理パラメータ７３ｂのデータ「０×００１２」が書き込まれる。本実施形態においては、データセットがＤＭＡ転送領域２１０に３つ書き込まれた場合に、画像処理制御タスク７２ｂ−１は終了する。
【０１５３】
設定回数５回目の画像処理制御タスク７２ｂ−２においては、格納先スイッチ１３６ｂに対応付けられているＤＭＡ転送領域２１０のアドレス「０×２００８」に、転送されるデータが一時的に格納されていることを示す情報であるレジスタアドレス「０×ＦＦＦ０」が書き込まれる。
【０１５４】
また、同時に、ＤＭＡ転送領域２１０のアドレス「０×２００Ａ」に、次のディスクリプタ７５を指定するアドレスの設定値として「０」が書き込まれる。上述したように、本実施形態においては、レジスタ１３４を３つ分転送するための設定値がＤＭＡ転送領域２１０に書き込まれ、次のディスクリプタ７５のアドレスに０が指定される。
【０１５５】
設定回数６回目の画像処理制御タスク７２ａにおいては、レジスタ１３４ａのアドレス「０×０００Ａ」に、画像処理パラメータ７３ａのデータ「０×０００５」が書き込まれる。そして、設定回数６回目の画像処理制御タスク７２ｂ−２においては、ＰＤＭＡＣ起動ディスクリプタ・アドレス１４４のアドレス「０×ＦＦＦ４」に、次のディスクリプタ７５の先頭アドレス「０×２０００」が書き込まれる。
【０１５６】
そして、設定回数７回目の画像処理制御タスク７２ｂ−２において、ＰＤＭＡＣ１３２を起動させるＰＤＭＡＣ起動レジスタ１４３のアドレス「０×ＦＦＦ２」に、ＰＤＭＡＣ１３２を起動させる設定値「１」が設定される。以上説明したような動作によって、本実施形態に係る画像処理制御タスク７２は終了する。
【０１５７】
尚、本実施形態においては、ＰＤＭＡＣ起動レジスタ１４３がひとつ存在する場合を例に説明を行ったが、実際の画像処理装置においては、画像処理を行う際に実行される画像処理パスの数に相当する数のＰＤＭＡＣ起動レジスタが存在する。
【０１５８】
図２３は、画像処理制御タスク７２ａの設定回数６回目の処理が終了したタイミングにおけるメモリダンプを示した図である。図２３に破線を用いて示すように、「０×００００Ｈ」のアドレスで指定されるレジスタ１３４ａには、２バイト×６つ分の画像処理パラメータ７３ａが書き込まれている。
【０１５９】
また、「０×１０００Ｈ」のアドレスで指定されるＤＭＡ転送領域２１０には、画像処理パラメータ７３ｂの設定先のレジスタ１３４ｂのアドレスと、画像処理パラメータ７３ｂとのデータセットが３つ分書き込まれている。さらに、「０×２０００Ｈ」のアドレスで指定されるＤＭＡ転送領域２１０には、次のディスクリプタのアドレスを示すデータが書き込まれている。
【０１６０】
ＰＤＭＡＣ起動レジスタ１４３に設定値「１」が設定されると、ＰＤＭＡＣ１３２が起動する。起動したＰＤＭＡＣ１３２は、「０×１０００Ｈ」のアドレスで指定されるＤＭＡ転送領域２１０に格納されている画像処理パラメータ７３ｂをデコードしてレジスタ１３４ｂに設定する。
【０１６１】
図２４は、ＰＤＭＡＣ１３２によってデータ転送が行われた直後のタイミングにおけるメモリダンプを示した図である。図２４に破線を用いて示すように、「０×１０００Ｈ」のアドレスに書き込まれたデータが「０×００００Ｈ」のアドレスで指定されるレジスタ１３４に転送されている。
【０１６２】
以上説明したように、本実施形態に係る画像処理装置１においては、ＣＰＵ１０から送信される画像処理制御タスク７２を切り替える際に、夫々の画像処理制御タスク７２に応じて画像処理を行うモジュール１３３に設定される画像処理パラメータ７３の転送先を決定する。そのため、複数の画像処理制御タスク７２が並列して実行される場合であっても、ＣＰＵ１０にかかる処理負荷を低減させることが出来る。
【０１６３】
さらに、画像処理制御タスク７２において、リアルタイム制御が必要なタスクと、リアルタイム制御は要求されないが画像処理パラメータ７３のように計算時間がかかるタスクとを別タスクとしておくことも出来る。このような場合、リアルタイム制御が必要なタスクが、計算時間がかかるタスクからの影響を受けにくくなる。
【０１６４】
例えば、一時的にでも、リアルタイム制御が必要なタスクに対して、ＣＰＵ１０の処理能力を占有しやすくするように処理を行う優先度を上げる。一方で、計算時間が必要とされ、かつ、リアルタイムな制御が必要とされるタスクに対しては、ＣＰＵ１０の処理能力を占有しにくくする優先度を下げる処理を行う。このようにタスクを分けることによって更に、ＣＰＵ１０にかかる処理負担を低減させて制御することが出来る。
【０１６５】
尚、レジスタ１３４に直接設定される画像処理パラメータ７３ａとして、画像データの開始／終了のような動作タイミングに合わせてリアルタイムに設定することが必要な画像処理パラメータを設定する構成であってもよい。また、画像処理パラメータ７３ａとして、画像処理装置１の電源投入時などに、一度設定しておけば、再設定が不要な画像処理パラメータを設定してもよい。
【０１６６】
また、ＤＭＡ転送領域２１０に設定される画像処理パラメータ７３ｂとして、例えば、リアルタイムに設定することが不要な画像処理パラメータを設定する構成であってもよい。このような画像処理パラメータとしては、例えば、画像処理が開始されるまでに画像処理デバイス１３１に設定しておけばよい画像処理パラメータなどがある。
【０１６７】
また、Ｌｏｏｋｕｐ  Ｔａｂｌｅなど画像データごとに設定し直す必要があるものも画像処理パラメータ７３ｂとしてＤＭＡ転送領域２１０に設定することが出来る。
【符号の説明】
【０１６８】
１  画像処理装置
１０  ＣＰＵ
２０  ＲＡＭ
３０  ＲＯＭ
４０  ＨＤＤ
５０  Ｉ／Ｆ
６０  ＬＣＤ
７０  操作部
７２  画像処理制御タスク
７３  画像処理パラメータ
７４  ＤＭＡ転送用ドライバ
７５  ディスクリプタ
８０  外部装置
９０  バス
１００  コントローラ
１０１  ＡＤＦ
１０２  スキャナユニット
１０３  排紙トレイ
１０４  ディスプレイパネル
１０５  給紙テーブル
１０６  プリントエンジン
１０７  排紙トレイ
１０８  ネットワークＩ／Ｆ
１０９  ＦＡＸモデム
１１０  主制御部
１２０  エンジン制御部
１３０  画像処理部
１３１  画像処理デバイス
１３２  ＰＤＭＡＣ
１３３  モジュール
１３４  レジスタ
１３５  格納先選択部
１３６  格納先スイッチ
１３７  コード化部
１４０  操作表示制御部
１５０  入出力制御部
１６０  ＦＡＸ制御部
【先行技術文献】
【特許文献】
【０１６９】
【特許文献１】特開２０１５−０８４５０７号公報
【図１】
0006736925.tif 000002
【図２】
0006736925.tif 000003
【図３】
0006736925.tif 000004
【図４】
0006736925.tif 000005
【図５】
0006736925.tif 000006
【図６】
0006736925.tif 000007
【図７】
0006736925.tif 000008
【図８】
0006736925.tif 000009
【図９】
0006736925.tif 000010
【図１０】
0006736925.tif 000011
【図１１】
0006736925.tif 000012
【図１２】
0006736925.tif 000013
【図１３】
0006736925.tif 000014
【図１４】
0006736925.tif 000015
【図１５】
0006736925.tif 000016
【図１６】
0006736925.tif 000017
【図１７】
0006736925.tif 000018
【図１８】
0006736925.tif 000019
【図１９】
0006736925.tif 000020
【図２０】
0006736925.tif 000021
【図２１】
0006736925.tif 000022
【図２２】
0006736925.tif 000023
【図２３】
0006736925.tif 000024
【図２４】
0006736925.tif 000025