(57)【要約】【課題】パラメータの転送タイミングをＣＰＵ等のプロセッサに管理させること無く、プロセッサの負担を軽減させる。【解決手段】画像処理に用いられるパラメータを記憶するメインメモリと、パラメータを記憶するパラメータレジスタと、パラメータレジスタに記憶されているパラメータを用いて、画像データに対して画像処理を実行する画像処理部と、画像処理を実行していない期間に、メインメモリに記憶されたパラメータを、パラメータレジスタへと転送するパラメータ転送部と、を備える画像処理装置を提供する。【選択図】図２
2015091105.tif 000002
【特許請求の範囲】
【請求項１】
画像処理に用いられるパラメータを記憶するメインメモリと、
前記パラメータを記憶するパラメータレジスタと、
前記パラメータレジスタに記憶されている前記パラメータを用いて、画像データに対して画像処理を実行する画像処理部と、
前記画像処理を実行していない期間に、前記メインメモリに記憶された前記パラメータを、前記パラメータレジスタへと転送するパラメータ転送部と、
を備える画像処理装置。
【請求項２】
前記画像処理部は、複数のパスの画像データのそれぞれ毎に画像処理を実行し、
前記画像処理装置は、画像処理に用いられるパラメータを前記複数のパスの画像データのそれぞれに対応して記憶する複数の前記パラメータレジスタを備え、
前記パラメータ転送部は、対象のパスの画像データに対する画像処理を実行していない期間に、前記対象のパスの画像データに対応する前記パラメータを、前記メインメモリから対応する前記パラメータレジスタへと転送する
請求項１に記載の画像処理装置。
【請求項３】
プロセッサから与えられた転送指示を前記複数のパスの画像データのそれぞれに対応して記憶する複数の起動レジスタをさらに備え、
前記パラメータ転送部は、何れかの前記起動レジスタに転送指示がアサートされた場合に、対応するパスの画像データの前記パラメータを前記メインメモリから対応する前記パラメータレジスタへと転送する
請求項２に記載の画像処理装置。
【請求項４】
前記複数の起動レジスタに前記転送指示がアサートされた順序を記憶する指示順序記憶部をさらに備え、
前記パラメータ転送部は、前記転送指示がアサートされた順序を優先して、前記パラメータを転送するパスを決定する
請求項３に記載の画像処理装置。
【請求項５】
前記複数のパスの画像データに対する画像処理の実行期間を示す前記ゲート信号がネゲートされた順序を記憶するゲート順序記憶部をさらに備え、
前記パラメータ転送部は、前記ゲート信号がネゲートされた順序を優先して、前記パラメータを転送するパスを決定する
請求項３に記載の画像処理装置。
【請求項６】
プロセッサがアクセスしている期間、前記パラメータ転送部による前記パラメータの転送の中止を指示するウェイト制御部をさらに備える請求項２から５の何れか１項に記載の画像処理装置。
【請求項７】
前記パラメータ転送部は、前記パラメータの転送を中止した後、転送を途中で中止した前記パラメータを対応する前記パラメータレジスタへと再転送する
請求項６に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置に関する。
【背景技術】
【０００２】
原稿を読み取ってデジタルデータに変換するスキャナ装置が知られている。スキャナ装置は、例えば、複写装置、プリンタ装置およびファクシミリ装置、または、これらのうち何れか２つを備える複合装置等にも設けられる。スキャナ装置は、近年、原稿読取部において、１回の通紙で、両面原稿の表裏を同時に読み取る機構（１パス両面同時読取機構）を有する。この機構を有するスキャナ装置によれば、１面分の読み取り時間で２面分を読み取れるので、生産性を向上することができる。
【０００３】
ところで、この機能を有するスキャナ装置は、読み取り時間を短縮できるが、２面分の画像データに対する画像処理を並列化しなければならなく、トータルコストが大きくなる。この問題に対し、安価なローカルメモリを配置し、読み取った２面分の画像を一旦ローカルメモリに蓄積し、１面ずつ順次に画像処理した後に、出力装置に転送するスキャナ装置が提案されている。このようにすることで、この機構を有するスキャナ装置は、両面原稿の読み取りの生産性を向上させながら、トータルコストを小さくすることができる。
【０００４】
ただし、１パス両面同時読取機構は、原稿読取部のセンサが表面用と裏面用とで物理的に異なるので、読み取られた画像データの色味等は、表面側と裏面側との間で異なる。従って、この機構を有するスキャナ装置は、画質調整のためのパラメータを表面側の画像処理と裏面側の画像処理とで交互に切り替えながら、１面ずつ順次に画像処理をしなければならない。
【０００５】
ここで、画質調整のためのパラメータは、画像処理の実行に先立って、メインメモリから対象のレジスタへと転送される。このため、従来のスキャナ装置では、パラメータ書き換えのための専用のパラメータＤＭＡＣ（Direct  Memory  Access  Controller）を備える。これにより、従来のスキャナ装置では、表面側の画像処理と裏面側の画像処理との間で行うパラメータの書き換えのオーバーヘッドを少なくするとともに、ＣＰＵ（Central  Processing  Unit）の処理負担を軽減させている。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、従来のパラメータＤＭＡＣは、ＣＰＵから起動指示を受けた後、すぐにパラメータの転送を開始する。このため、ＣＰＵは、パラメータＤＭＡＣの起動タイミングをソフトウェアプログラム等に従って管理する必要があった。しかし、ＣＰＵが起動タイミングを検知するためには、割り込み信号を受信するまたはレジスタを読み出す等の処理を実行する必要があり、処理時間がかかっていた。
【０００７】
また、スキャナおよびプロッタで共通に１つのパラメータＤＭＡＣを使用したり、複数の色版で共通に１つのパラメータＤＭＡＣを使用したりする場合、ＣＰＵは、パラメータＤＭＡＣが他の用途で使用されていないかを確認しつつ、それぞれの処理の優先度を判断してパラメータＤＭＡＣに対して起動指示を与えなければならない。さらに、ＣＰＵとパラメータＤＭＡＣとはどちらもレジスタへアクセスするので、競合の可能性が生じる。従って、ＣＰＵは、常にパラメータＤＭＡＣの動作状況を管理しなければならず制御が煩雑であった。
【０００８】
本発明は、上記に鑑みてなされたものであって、画像処理に用いられるパラメータの転送タイミングをＣＰＵ等のプロセッサに管理させること無く、プロセッサの負担を軽減させることができる画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決し、目的を達成するために、本発明に係る画像処理装置は、画像処理に用いられるパラメータを記憶するメインメモリと、前記パラメータを記憶するパラメータレジスタと、前記パラメータレジスタに記憶されている前記パラメータを用いて、画像データに対して画像処理を実行する画像処理部と、前記画像処理を実行していない期間に、前記メインメモリに記憶された前記パラメータを、前記パラメータレジスタへと転送するパラメータ転送部と、を備える。
【発明の効果】
【００１０】
本発明によれば、画像処理に用いられるパラメータの転送タイミングをＣＰＵ等のプロセッサに管理させること無く、プロセッサの負担を軽減させることができる。
【図面の簡単な説明】
【００１１】
【図１】図１は、実施形態に係る画像形成装置の構成を示す図である。
【図２】図２は、画像処理装置の構成を示す図である。
【図３】図３は、画像処理装置における処理フローを示す図である。
【図４】図４は、パラメータＤＭＡＣの構成を示す図である。
【図５】図５は、起動レジスタへのアサートを優先する場合のパラメータの転送のタイミングを示す図である。
【図６】図６は、ゲート信号のネゲートを優先する場合のパラメータの転送のタイミングを示す図である。
【図７】図７は、パラメータの転送の中止および再転送をする場合のタイミングを示す図である。
【発明を実施するための形態】
【００１２】
以下に、本発明に係る実施形態を図面に基づいて詳細に説明する。なお、この実施形態によりこの発明が限定されるものではない。
【００１３】
図１は、画像形成装置１０の構成を示す。画像形成装置１０は、スキャナおよびプリンタを有する機器である。例えば、画像形成装置１０は、複写装置、プリンタ装置およびファクシミリ装置、または、これらのうち何れか２つを備える複合装置等として用いられる。
【００１４】
画像形成装置１０は、プロッタ２１と、表面側スキャナ２２と、裏面側スキャナ２３と、パネル２４と、ハードディスクドライブ２５と、制御部２６と、メインメモリ３０とを備える。
【００１５】
プロッタ２１は、画像データに応じた画像を用紙に印刷する。表面側スキャナ２２は、用紙の表面の画像を光学的に読み取って、用紙の表面側を表す画像データを生成する。裏面側スキャナ２３は、用紙の裏面の画像を光学的に読み取って、用紙の裏面側を表す画像データを生成する。表面側スキャナ２２および裏面側スキャナ２３は、両面原稿の表裏を同時に読み取る機構により、１回の通紙動作で同時に表面側の画像データおよび裏面側の画像データを生成する。
【００１６】
パネル２４は、ユーザに情報を表示するとともに、ユーザからの操作情報を入力する。ハードディスクドライブ２５は、読み取った画像データおよび印刷用の画像データを記憶する不揮発性の大容量記憶装置である。
【００１７】
制御部２６は、プロッタ２１、表面側スキャナ２２、裏面側スキャナ２３、パネル２４およびハードディスクドライブ２５を制御するとともに、装置全体を制御する。メインメモリ３０は、ＤＲＡＭ（Dynamic  Random  Access  Memory）等の揮発性の半導体メモリである。メインメモリ３０は、制御部２６に接続され、画像処理の対象となる画像データ、および、画像処理に用いられるパラメータを記憶する。
【００１８】
なお、メインメモリ３０は、画像処理に用いられるパラメータを画像データの系統（パス）毎に記憶する。メインメモリ３０は、一例として、印刷対象の画像データの色版毎（例えば、Ｙ，Ｍ，Ｃ，Ｋ毎）に、および、スキャン読み取りをした画像データの色版毎（例えば、Ｙ，Ｍ，Ｃ，Ｋ毎）に、パラメータを記憶する。また、さらに、メインメモリ３０は、スキャン読み取りをした画像データについては、さらに、表面側か裏面側かによって異なるパラメータを記憶する。
【００１９】
制御部２６は、メモリコントローラ５１と、プロッタ制御部５２と、表面側制御部５３と、裏面側制御部５４と、画像処理装置５５と、ＣＰＵ５６と、ＲＯＭ（Read  Only  Memory）５７と、ＤＭＡ（Direct  Memory  Access）５８と、パネルコントローラ６１と、ハードディスクコントローラ６２と、通信コントローラ６３とを有する。これらの各機能ブロックは、例えば、１または複数のチップ上に形成されており、バスまたはインターフェイスを介して互いに接続される。
【００２０】
メモリコントローラ５１は、メインメモリ３０に対するアクセスを制御する。プロッタ制御部５２は、プロッタ２１を制御する。プロッタ制御部５２は、メインメモリ３０に記憶されている印刷対象の画像データを受け取って、プロッタ２１に印刷させる。
【００２１】
表面側制御部５３は、表面側スキャナ２２を制御する。表面側制御部５３は、表面側スキャナ２２により読み取られた画像データに対して、シェーディング補正等の補正処理を行い、メインメモリ３０に記憶させる。
【００２２】
裏面側制御部５４は、裏面側スキャナ２３を制御する。また、裏面側制御部５４は、裏面側スキャナ２３により読み取られた画像データに対して、シェーディング補正等の補正処理を行い、メインメモリ３０に記憶させる。
【００２３】
画像処理装置５５は、メインメモリ３０に記憶されている画像データを取得して、画像処理を実行する。そして、画像処理装置５５は、画像処理をした後の画像データをメインメモリ３０に記憶させる。
【００２４】
ここで、画像処理装置５５は、画像データのパス毎にメインメモリ３０からパラメータを取得し、取得したパラメータを用いて画像処理を実行する。さらに、画像処理装置５５は、１回の通紙で表面側と裏面側の同時にスキャン読み取りをした画像データに対しては、１回のパスで表面側と裏面側とを交互に切り替えて画像処理を実行する。この場合において、画像処理装置５５は、表面側の画像処理を実行する場合に用いるパラメータと、裏面側の画像処理を実行する場合のパラメータとを、それぞれの処理の前に切り替える。
【００２５】
ＣＰＵ５６は、プログラムを実行して装置全体の制御をするプロセッサである。ＲＯＭ５７は、ＣＰＵ５６により実行されるプログラム等を記憶する。
【００２６】
ＤＭＡ５８は、メインメモリ３０から他のユニットへの画像データの転送、または、他のユニットからメインメモリ３０への画像データの転送を、ＣＰＵ５６に代わり制御する。ＤＭＡ５８は、一例として、プロッタ２１の動作に同期して、印刷対象の画像データをメインメモリ３０から読み出して、プロッタ制御部５２へと転送する。また、ＤＭＡ５８は、一例として、表面側スキャナ２２の動作に同期して、表面側の画像データを表面側制御部５３から取得して、メインメモリ３０へと書き込む。また、ＤＭＡ５８は、一例として、裏面側スキャナ２３の動作に同期して、裏面側の画像データを裏面側制御部５４から取得して、メインメモリ３０へと書き込む。
【００２７】
また、ＤＭＡ５８は、画像処理装置５５による処理対象の画像データをメインメモリ３０から読み出して、画像処理装置５５へと転送する。また、ＤＭＡ５８は、画像処理装置５５により画像処理がされた後の画像データを取得して、メインメモリ３０に書き込む。
【００２８】
パネルコントローラ６１は、パネル２４を制御する。ハードディスクコントローラ６２は、ハードディスクドライブ２５へのデータの書き込みおよび読み出しを制御する。通信コントローラ６３は、ネットワークを介した外部のコンピュータ等との通信を制御する。
【００２９】
図２は、画像処理装置５５の構成を示す図である。画像処理装置５５は、画像処理部８１と、ゲート信号生成部８２と、インターフェイス部８３と、複数のパラメータレジスタ８４と、パラメータＤＭＡＣ８５とを有する。
【００３０】
画像処理部８１は、複数のパスの画像データのそれぞれ毎に画像処理を実行する。画像処理部８１は、一例として、印刷対象の画像データの色版毎（例えば、Ｙ，Ｍ，Ｃ，Ｋ毎）、および、スキャン読み取りをした画像データの色版毎（例えば、Ｙ，Ｍ，Ｃ，Ｋ毎）に、ガンマ補正、フィルタ処理および色補正等を行う。
【００３１】
ゲート信号生成部８２は、複数のパス毎に、画像処理部８１による画像処理の実行期間を示すゲート信号を生成する。ゲート信号は、画像処理の実行期間中は有効（アサート）となり、画像処理を実行していない期間は無効（ネゲート）となる。
【００３２】
インターフェイス部８３は、ＣＰＵ５６またはパラメータＤＭＡＣ８５からの複数のパラメータレジスタ８４に対するパラメータの書き込みのアクセスを受け付ける。
【００３３】
複数のパラメータレジスタ８４は、画像処理に用いられるパラメータを、複数のパスの画像データのそれぞれに対応して記憶する。複数のパラメータレジスタ８４には、一例として、印刷対象の画像データのそれぞれの色版（例えば、Ｙ，Ｍ，Ｃ，Ｋ）に対応するパラメータを記憶するパラメータレジスタ８４、および、スキャン読み取りをした画像データのそれぞれの色版（例えば、Ｙ，Ｍ，Ｃ，Ｋ毎）に対応するパラメータを記憶するパラメータレジスタ８４が含まれる。さらに、複数のパラメータレジスタ８４には、スキャン読み取りをした画像データのパスのそれぞれについては、表面側の画像データに対応するパラメータを記憶するパラメータレジスタ８４、および、裏面側の画像データに対応するパラメータを記憶するパラメータレジスタ８４も含まれる。
【００３４】
パラメータＤＭＡＣ８５は、ＣＰＵ５６からの指示に応じて、メインメモリ３０から指示がされたパスの画像データに対応するパラメータを読み出して、対応するパラメータレジスタ８４へと転送する。
【００３５】
このような構成の画像処理装置５５においては、画像処理部８１は、それぞれのパスの画像データに対する画像処理の実行に先立って、対応するパラメータレジスタ８４からパラメータを読み出す。そして、画像処理部８１は、パラメータレジスタ８４に記憶されているパラメータを用いて、画像データに対して画像処理を実行する。
【００３６】
さらに、画像処理部８１は、１回の通紙で表面側と裏面側の同時にスキャン読み取りをした画像データに対しては、１回のパスで表面側と裏面側とを交互に切り替えて画像処理を実行する。この場合において、画像処理装置５５は、用紙と用紙との間の期間毎に、対応するパラメータレジスタ８４からパラメータを読み出して、表面側の画像処理に用いるパラメータと、裏面側の画像処理に用いるパラメータとを切り替える。
【００３７】
図３は、画像処理装置５５における処理フローを示す図である。ＣＰＵ５６は、あるパスの画像データに対する画像処理を画像処理装置５５に実行させる場合、その画像処理に先立って、対応するパラメータをメインメモリ３０から対応するパラメータレジスタ８４へと転送させる。この場合、ＣＰＵ５６は、自身が転送処理を実行してもよいし、パラメータＤＭＡＣ８５に転送を代行させてもよい。
【００３８】
ここで、ＣＰＵ５６がパラメータＤＭＡＣ８５にパラメータの転送を代行させる場合、図３に示す順序で処理が実行される。
【００３９】
まず、ステップＳ１１において、ＣＰＵ５６は、パラメータＤＭＡＣ８５に対して、パラメータの転送指示を与える。パラメータＤＭＡＣ８５は、パラメータの転送指示を受けると、続いて、ステップＳ１２において、ゲート信号がネゲートされたか否かを判定する。
【００４０】
パラメータＤＭＡＣ８５は、ゲート信号がネゲートするまでステップＳ１２で処理を待機する。ゲート信号がネゲートされると、パラメータＤＭＡＣ８５は、処理をステップＳ１３に進める。
【００４１】
ステップＳ１３において、パラメータＤＭＡＣ８５は、メインメモリ３０からパラメータを読み出す。続いて、ステップＳ１４において、パラメータＤＭＡＣ８５は、読み出したパラメータを対応するパラメータレジスタ８４に書き込む。
【００４２】
このような処理を実行する画像処理装置５５は、ＣＰＵ５６からパラメータの転送指示を受け取り、且つ、対応するゲート信号がネゲートされている場合において、パラメータをメインメモリ３０から対応するパラメータレジスタ８４へと転送することができる。
【００４３】
図４は、パラメータＤＭＡＣ８５の構成を示す図である。パラメータＤＭＡＣ８５は、複数の起動レジスタ９１と、指示順序記憶部９２と、ゲート順序記憶部９３と、パラメータ転送部９４と、ウェイト制御部９５とを有する。
【００４４】
複数の起動レジスタ９１は、ＣＰＵ５６から与えられた転送指示を、複数のパスの画像データのそれぞれに対応して記憶する。複数の起動レジスタ９１には、一例として、印刷対象の画像データのそれぞれの色版（例えば、Ｙ，Ｍ，Ｃ，Ｋ）に対応する転送指示を記憶する起動レジスタ９１、および、スキャン読み取りをした画像データのそれぞれの色版（例えば、Ｙ，Ｍ，Ｃ，Ｋ毎）に対応する転送指示を記憶する起動レジスタ９１が含まれる。さらに、複数の起動レジスタ９１には、スキャン読み取りをした画像データのパスのそれぞれについては、表面側の画像データに対応する転送指示を記憶する起動レジスタ９１、および、裏面側の画像データに対応する転送指示を記憶する起動レジスタ９１も含まれる。
【００４５】
指示順序記憶部９２は、複数の起動レジスタ９１に転送指示がアサートされた順序を記憶する。ゲート順序記憶部９３は、複数のパスの画像データに対する画像処理の実行期間を示すゲート信号がネゲートされた順序を記憶する。
【００４６】
パラメータ転送部９４は、何れかの起動レジスタ９１に転送指示がアサートされた場合に、対応するパスの画像データのパラメータをメインメモリ３０から対応するパラメータレジスタ８４へと転送する。この場合において、パラメータ転送部９４は、対象のパスの画像データに対する画像処理の実行期間を示すゲート信号がネゲートされている期間に、対象のパスの画像データに対応するパラメータを、メインメモリ３０から対応するパラメータレジスタ８４へと転送する。
【００４７】
具体的には、パラメータ転送部９４は、決定部１０１と、リクエスト送信部１０２と、受信部１０３と、内部メモリ１０４と、転送制御部１０５とを含む。
【００４８】
決定部１０１は、パラメータをメインメモリ３０から対応するパラメータレジスタ８４へと転送するパスを決定する。より具体的には、決定部１０１は、起動レジスタ９１に対してＣＰＵ５６から転送指示がアサートされ、且つ、ゲート信号がネゲートされているパスを、パラメータを転送するパスとして決定する。
【００４９】
さらに、決定部１０１は、複数のパスの起動レジスタ９１に対して転送指示がアサートされた場合には、指示順序記憶部９２に記憶されている転送指示がアサートされた順序、または、ゲート順序記憶部９３に記憶されているゲート信号がネゲートされた順序に基づき、複数のパラメータの転送順序を決定する。そして、決定部１０１は、決定した転送順序に従って、１パスずつ順次にパラメータを転送するパスを決定する。
【００５０】
ここで、決定部１０１は、一例として、転送指示がアサートされた順序を優先して、パラメータを転送するパスを決定する。また、決定部１０１は、一例として、ゲート信号がネゲートされた順序を優先して、パラメータを転送するパスを決定してもよい。なお、転送指示がアサートされた順序を優先してパスを決定するモードのことを、転送指示優先モードといい、図５を参照してさらに説明する。また、ゲート信号がネゲートされた順序を優先してパスを決定するモードのことを、ゲート信号優先モードといい、図６を参照してさらに説明する。
【００５１】
リクエスト送信部１０２は、決定部１０１によりパスが決定されると、決定されたパスのパラメータに対する読み出しリクエスト（データおよびアドレス）を、メインメモリ３０に送信する。受信部１０３は、メインメモリ３０からパラメータを受信して、内部メモリ１０４に一時的に記憶させる。転送制御部１０５は、内部メモリ１０４に一時的に記憶されたパラメータを、転送指示がアサートされたパスに対応するパラメータレジスタ８４に書き込む。
【００５２】
ウェイト制御部９５は、ＣＰＵ５６がパラメータレジスタ８４にアクセスしているか否かを監視する。そして、ウェイト制御部９５は、ＣＰＵ５６がパラメータレジスタ８４にアクセスしている期間、パラメータ転送部９４によるパラメータの転送の中止を指示する。転送の中止の指示を受けたパラメータ転送部９４の転送制御部１０５は、パラメータの転送を中止する。
【００５３】
また、ウェイト制御部９５は、パラメータの転送を中止した後、ＣＰＵ５６のパラメータレジスタ８４に対するアクセスが終了した場合、転送を中止したパラメータの再転送の指示をパラメータ転送部９４の転送制御部１０５に対して与える。再転送の指示を受けた転送制御部１０５は、転送を途中で中止したパラメータが存在すれば、転送を途中で中止したパラメータを対応するパラメータレジスタ８４へと再転送する。
【００５４】
図５は、起動レジスタ９１へのアサートを優先する場合のパラメータの転送のタイミングを示す図である。
【００５５】
図５では、第１から第５のパスのゲート信号を示す。本例のゲート信号は、Ｌ論理が有効、Ｈ論理が無効（ネゲート）を表す。このような負論理のゲート信号に代えて、正論理のゲート信号が用いられてもよい。また、図５では、下向き矢印の位置が、そのパスについて転送指示がアサートされたタイミングを示す。また、下向き矢印の上に付された数字は、転送指示がアサートされた順序を示す。なお、後述の図６でも同様である。
【００５６】
転送指示優先モードに設定されている場合、パラメータ転送部９４は、例えば、図５に示すようなタイミングでそれぞれのパスのパラメータを転送する。
【００５７】
図５の例では、時刻ｔ1で第３のパスの転送指示がアサートされ、続いて、時刻ｔ2で第２のパスの転送指示がアサートされ、続いて、時刻ｔ3で第１のパスの転送指示がアサートされる。そして、時刻ｔ4で、第１のパスのゲート信号がネゲートされる。
【００５８】
時刻ｔ4では、第１のパスだけが、転送指示がアサートされ且つゲート信号がネゲートされている。従って、パラメータ転送部９４は、時刻ｔ4から、第１のパスのパラメータをメインメモリ３０から対応するパラメータレジスタ８４へと転送する。
【００５９】
続いて、時刻ｔ5で第２のパスのゲート信号がネゲートされる。そして、時刻ｔ6で、第１のパスのパラメータの転送が完了すると同時に、第３のゲート信号がネゲートされる。
【００６０】
時刻ｔ6では、第２のパスと第３のパスが、共に、転送指示がアサートされ且つゲート信号がネゲートされている。そこで、パラメータ転送部９４は、転送指示優先モードで優先順位を判断し、転送指示が先にアサートされている第３のパスを第２のパスに優先して、次にパラメータを転送するパスとして決定する。従って、パラメータ転送部９４は、時刻ｔ6から、第３のパスのパラメータをメインメモリ３０から対応するパラメータレジスタ８４へと転送する。
【００６１】
続いて、時刻ｔ7で、第３のパスのパラメータの転送が完了する。時刻ｔ7では、第２のパスだけが、転送指示がアサートされ且つゲート信号がネゲートされている。そこで、パラメータ転送部９４は、第２のパスを次にパラメータを転送するパスとして決定する。従って、パラメータ転送部９４は、時刻ｔ7から、第２のパスのパラメータをメインメモリ３０から対応するパラメータレジスタ８４へと転送する。
【００６２】
続いて、時刻ｔ8で第４のパスの転送指示がアサートされる。続いて、時刻ｔ9で、第２のパスのパラメータの転送が完了する。続いて、時刻ｔ10で第５のパスの転送指示がアサートされる。そして、時刻ｔ11で、第４のパスのゲート信号と第５のパスのゲート信号とが同時にネゲートされる。
【００６３】
時刻ｔ11では、第４のパスと第５のパスが、共に、転送指示がアサートされ且つゲート信号がネゲートされている。そこで、パラメータ転送部９４は、転送指示優先モードで優先順位を判断し、転送指示が先にアサートされている第４のパスを第５のパスに優先して、次にパラメータを転送するパスとして決定する。従って、パラメータ転送部９４は、時刻ｔ11から、第４のパスのパラメータをメインメモリ３０から対応するパラメータレジスタ８４へと転送する。
【００６４】
続いて、時刻ｔ12で、第４のパスのパラメータの転送が完了する。時刻ｔ12では、第５のパスだけが、転送指示がアサートされ且つゲート信号がネゲートされている。そこで、パラメータ転送部９４は、第５のパスを次にパラメータを転送するパスとして決定する。従って、パラメータ転送部９４は、時刻ｔ12から、第５のパスのパラメータをメインメモリ３０から対応するパラメータレジスタ８４へと転送する。
【００６５】
以上のような転送指示優先モードでは、例えば、複数のパスのゲート信号が同時期に重複してネゲートされる場合に明示的にパラメータの転送順序を制御することができる。
【００６６】
図６は、ゲート信号のネゲートを優先する場合のパラメータの転送のタイミングを示す図である。
【００６７】
ゲート信号優先モードに設定されている場合、パラメータ転送部９４は、例えば、図６に示すようなタイミングでそれぞれのパスのパラメータを転送する。
【００６８】
図６の例では、時刻ｔ21で第３のパスの転送指示がアサートされ、続いて、時刻ｔ22で第２のパスの転送指示がアサートされ、続いて、時刻ｔ23で第１のパスの転送指示がアサートされ、続いて、時刻ｔ24で第４のパスの転送指示がアサートされる。
【００６９】
そして、時刻ｔ25で、第１のパスのゲート信号がネゲートされる。時刻ｔ25では、第１のパスだけが、転送指示がアサートされ且つゲート信号がネゲートされている。従って、パラメータ転送部９４は、時刻ｔ25から、第１のパスのパラメータをメインメモリ３０から対応するパラメータレジスタ８４へと転送する。
【００７０】
続いて、時刻ｔ26で第４のパスのゲート信号がネゲートされる。そして、時刻ｔ27で、第１のパスのパラメータの転送が完了すると同時に、第２のゲート信号がネゲートされる。
【００７１】
時刻ｔ27では、第２のパスと第４のパスが、共に、転送指示がアサートされ且つゲート信号がネゲートされている。そこで、パラメータ転送部９４は、ゲート信号優先モードで優先順位を判断し、ゲート信号が先にネゲートされている第４のパスを、第２のパスに優先して、次にパラメータを転送するパスとして決定する。従って、パラメータ転送部９４は、時刻ｔ27から、第４のパスのパラメータをメインメモリ３０から対応するパラメータレジスタ８４へと転送する。
【００７２】
続いて、時刻ｔ28で第３のゲート信号がネゲートされる。続いて、時刻ｔ29で第４のパスのパラメータの転送が完了する。時刻ｔ29では、第２のパスと第３のパスが、共に、転送指示がアサートされ且つゲート信号がネゲートされている。そこで、パラメータ転送部９４は、ゲート信号優先モードで優先順位を判断し、ゲート信号が先にネゲートされている第２のパスを、第３のパスに優先して、次にパラメータを転送するパスとして決定する。従って、パラメータ転送部９４は、時刻ｔ29から、第２のパスのパラメータをメインメモリ３０から対応するパラメータレジスタ８４へと転送する。
【００７３】
続いて、時刻ｔ30で第２のパスのパラメータの転送が完了する。時刻ｔ30では、第３のパスだけが、転送指示がアサートされ且つゲート信号がネゲートされている。そこで、パラメータ転送部９４は、第３のパスを次にパラメータを転送するパスとして決定する。従って、パラメータ転送部９４は、時刻ｔ30から、第３のパスのパラメータをメインメモリ３０から対応するパラメータレジスタ８４へと転送する。
【００７４】
以上のような転送指示優先モードでは、例えば、複数のゲート信号のネゲートの期間が同一である場合、残りのネゲートの期間が短いパスから順にパラメータの転送をすることができる。従って、転送指示優先モードでは、パラメータの転送が間に合わなくなる可能性を小さくすることができる。
【００７５】
図７は、パラメータの転送の中止および再転送をする場合のタイミングを示す図である。
【００７６】
パラメータＤＭＡＣ８５がパラメータレジスタ８４への転送タイミングを制御しているので、ＣＰＵ５６は、パラメータＤＭＡＣ８５が動作中か否かを管理していない。従って、パラメータＤＭＡＣ８５は、ＣＰＵ５６の動作と競合しないように動作している。具体的には、パラメータＤＭＡＣ８５は、ＣＰＵ５６のパラメータレジスタ８４へのアクセス信号を常時監視し、ＣＰＵ５６がアクセス中の場合には処理を待機し、ＣＰＵ５６がアクセスしていないタイミングでパラメータレジスタ８４へアクセスする。
【００７７】
しかし、パラメータＤＭＡＣ８５がパラメータの転送を開始したサイクルと同一のサイクルでＣＰＵ５６がパラメータレジスタ８４にアクセスした場合、または、パラメータＤＭＡＣ８５がパラメータの転送をしている最中にＣＰＵ５６がパラメータレジスタ８４へのアクセスを開始した場合、競合が発生する。この場合、パラメータＤＭＡＣ８５は、図７に示すように動作を行う。
【００７８】
なお、図７において、クロックはシステムのクロックを表し、クロックの上に付された番号は任意に付したクロック番号を示す。
【００７９】
まず、１番目のクロックの立ち上がりにおいて、パラメータＤＭＡＣ８５は、ＣＰＵ５６のアクセスが無いのでデータの転送を開始する。２番目のクロックの立ち上がりにおいて、パラメータＤＭＡＣ８５は、ＣＰＵ５６のアクセスが無いので、アクセスを継続している。続いて、３番目のクロックの立ち上がりにおいて、パラメータＤＭＡＣ８５は、データの転送を終了する。なお、図７の例では、データの転送期間を２サイクルとしているが、どのような長さであってもよい。
【００８０】
続いて、４番目のクロックの立ち上がりにおいて、パラメータＤＭＡＣ８５は、次のアクセスまで処理を待機する。
【００８１】
続いて、５番目のクロックの立ち上がりにおいて、パラメータＤＭＡＣ８５は、データの転送を開始する。ただし、同じクロックにおいて、ＣＰＵ５６のアクセスが開始される。
【００８２】
続いて、６番目のクロックの立ち上がりにおいて、パラメータＤＭＡＣ８５は、ＣＰＵ５６のアクセスを検知し、データの転送を中止する。パラメータＤＭＡＣ８５は、データの転送が完了しなかったため、転送を中止したデータを保持する。
【００８３】
続いて、１０番目のクロックの立ち上がりにおいて、パラメータＤＭＡＣ８５は、ＣＰＵ５６のアクセスが無くなったので、一時的に保持しているデータ（転送を中止したデータ）を再転送する。なお、図７の例では、パラメータＤＭＡＣ８５は、ＣＰＵ５６のアクセスが終了してから、次のデータの転送を開始するまでの期間を１サイクルとしているが、任意のサイクルであってよい。
【００８４】
以上のように、パラメータＤＭＡＣ８５がＣＰＵ５６のアクセスを監視して動作しているので、ＣＰＵ５６が実行するソフトウェアプログラムに影響を与えず、ＣＰＵ５６の処理負担を軽減することができる。
【００８５】
以上のような本実施形態に係る画像処理装置５５は、ＣＰＵ５６から転送指示がアサートされ且つゲート信号がネゲートされている場合に、パラメータＤＭＡＣ８５がパラメータをメインメモリ３０から対応するパラメータレジスタ８４に転送する。これにより、画像処理装置５５によれば、パラメータの転送タイミングをＣＰＵ５６に管理させること無く、ＣＰＵ５６の負担を軽減させることができる。
【００８６】
また、本実施形態に係る画像処理装置５５によれば、パラメータＤＭＡＣ８５が、画像処理のパスの優先度を判断して１パスずつパラメータを転送するので、ＣＰＵ５６がそれぞれのパスの優先度の管理をしなくてよく、ＣＰＵ５６の負担を軽減させることができる。
【００８７】
また、本実施形態に係る画像処理装置５５によれば、パラメータＤＭＡＣ８５が、ＣＰＵ５６からパラメータレジスタ８４へのアクセスを監視しているので、パラメータＤＭＡＣ８５とＣＰＵ５６との競合が生じず、さらに、ＣＰＵ５６による監視負担を軽減させることができる。
【符号の説明】
【００８８】
１０  画像形成装置
２１  プロッタ
２２  表面側スキャナ
２３  裏面側スキャナ
２４  パネル
２５  ハードディスクドライブ
２６  制御部
３０  メインメモリ
５１  メモリコントローラ
５２  プロッタ制御部
５３  表面側制御部
５４  裏面側制御部
５５  画像処理装置
５６  ＣＰＵ
５７  ＲＯＭ
５８  ＤＭＡ
６１  パネルコントローラ
６２  ハードディスクコントローラ
６３  通信コントローラ
８１  画像処理部
８２  ゲート信号生成部
８３  インターフェイス部
８４  パラメータレジスタ
８５  パラメータＤＭＡＣ
９１  起動レジスタ
９２  指示順序記憶部
９３  ゲート順序記憶部
９４  パラメータ転送部
９５  ウェイト制御部
１０１  決定部
１０２  リクエスト送信部
１０３  受信部
１０４  内部メモリ
１０５  転送制御部
【先行技術文献】
【特許文献】
【００８９】
【特許文献１】特開２００８−２３４０６５号公報
【特許文献２】特開２００９−１２３０９１号公報
【図１】
2015091105.tif 000003
【図２】
2015091105.tif 000004
【図３】
2015091105.tif 000005
【図４】
2015091105.tif 000006
【図５】
2015091105.tif 000007
【図６】
2015091105.tif 000008
【図７】
2015091105.tif 000009