(57)【要約】【課題】ソフトウェア（ＣＰＵ）の並行処理が可能で画像処理手段（ＡＳＩＣ）の処理時間の短縮化を図る。【解決手段】画像処理モジュール２と、画像処理に用いる複数の画像処理パラメータを保持する画像処理パラメータＤＭＡＣ５及び内部レジスタと、メモリ３とを有する画像処理装置において、前記画像処理モジュールを検証するときに、前記画像処理モジュール側から前記内部レジスタに保持された前記画像処理パラメータを前記メモリに転送する。前記画像処理パラメータＤＭＡＣ５は前記画像処理パラメータ毎のディスクリプタ情報を参照し、当該ディスクリプタ情報に基づいて前記画像処理パラメータを前記メモリに書き込む。【選択図】図１
2008234065.tif 000002
【特許請求の範囲】
【請求項１】
画像処理に用いる複数の画像処理パラメータを保持する画像処理手段と、記憶手段間で画像処理パラメータを転送する画像処理装置において、
前記画像処理手段を検証するときに、前記画像処理手段側から当該画像処理手段に保持された前記画像処理パラメータを前記記憶手段に転送することを特徴とする画像処理装置。
【請求項２】
請求項１記載の画像処理装置において、
前記が総処理手段は、前記画像処理パラメータを保持する保持回路を備え、当該保持回路は、前記記憶手段に予め書き込まれた前記画像処理パラメータ毎のディスクリプタ情報を参照し、当該ディスクリプタ情報に基づいて前記画像処理パラメータを前記記憶手段に書き込むことを特徴とする画像処理装置。
【請求項３】
請求項２記載の画像処理装置において、
前記ディスクリプタ情報は転送不要な情報を含み、前記保持回路は、前記転送不要な情報に対応する画像処理パラメータは記憶手段側に転送しないことを特徴とする画像処理装置。
【請求項４】
請求項２又は３記載の画像処理装置において、
前記ディスクリプタ情報は、前記画像処理パラメータの前記記憶手段上における書き込み開始位置と書き込みサイズ情報とを含み、前記保持回路は、前記書き込み開始位置から前記サイズ情報分だけ画像処理パラメータを前記記憶手段に転送することを特徴とする画像処理装置。
【請求項５】
請求項２ないし４のいずれか１項に記載の画像処理装置において、
前記ディスクリプタ情報は、前記画像処理パラメータの識別情報を含み、前記保持回路は、前記識別情報に基づいて前記画像処理パラメータを前記記憶手段に転送することを特徴とする画像処理装置。
【請求項６】
画像処理に用いる複数の画像処理パラメータを保持する画像処理手段と、記憶手段間で画像処理パラメータを転送する画像処理方法において、
前記画像処理手段を検証するときに、前記画像処理手段側から前記記憶手段側に前記画像処理パラメータを転送することを特徴とする画像処理方法。
【請求項７】
請求項６記載の画像処理方法において、
前記画像処理パラメータの転送が、
ディスクリプタ情報が格納されたアドレスをソフトウェアが前記画像処理手段内部のレジスタに書き込む第１の工程と、
前記画像処理手段が前記ソフトウェアから起動されたときに、前記第１の手順で指定されたアドレスから前記記憶手段に格納されているディスクリプタ情報を読み込む第２の工程と、  
前記記憶手段から読み込んだディスクリプタ情報を、前記画像処理手段内部のレジスタに格納する第３の工程と、
レジスタに格納されていたパラメータを第３の手順で読み込んだディスクリプタ情報で指定された最初の記憶手段のスタート・アドレスに書き込む第４の工程と、
レジスタに格納されていたパラメータを第３の手順で読み込んだディスクリプタ情報で指定された次のメモリのスタート・アドレスに書き込む第５の工程と、
を備えていることを特徴とする画像処理方法。
【請求項８】
請求項６又は７記載の画像処理方法をコンピュータで実行する手順を備えていることを特徴とするコンピュータプログラム。
【請求項９】
請求項８に記載のコンピュータプログラムをコンピュータによって実行可能に格納したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像処理手段と、該画像処理手段における画像処理に用いる複数の画像処理パラメータを保持する集積回路（レジスタ）と、記憶手段（メモリ）とを有する画像処理装置及び画像処理方法、前記画像処理方法を実行するためのコンピュータプログラム及び前記コンピュータプログラムが格納された記憶媒体に関する。
【背景技術】
【０００２】
例えばデジタル複写機は読み取った原稿の画像をデジタル画像信号に変換し、このデジタル画像信号を出力可能な画像信号に変換してフレームメモリに格納し、出力時にフレームメモリに格納された画像信号をプリンタエンジンに送り複写画像を形成し、あるいはデジタル画像信号を出力可能に変換した画像信号を一旦フロッピー（登録商標）ディスクやハードディスク等の補助記憶装置に格納し、出力時に補助記憶装置からフレームメモリに１ページあるいは複数ページ分の画像信号を転送後、この画像信号をプリンタエンジンに送り複写画像を形成する。また、ＬＡＮやシリアル・パラレルインターフェースを介してパソコン等の端末からプリントコマンドを受け取り、フォントメモリをアクセスしながらプリント画像信号をフレームメモリに展開し、展開した画像信号をプリンタエンジンへ送りプリント画像を形成する。
【０００３】
このデジタル画像信号等のデータを高速で転送するためにＤＭＡコントローラを備えたＡＳＩＣが使用されている。ＤＭＡコントローラを使用してデータを転送するとき、ＣＰＵは最初にＡＳＩＣ（ＤＭＡコントローラ）にコマンドとメモリの転送開始アドレスや転送するデータ数などの入出力制御情報を与えるだけでデータ転送には介在しないで済む。そして例えば特開平７−２１１１７号公報には、１回のＤＭＡ転送要求で１ブロック分の転送バイト数を計数し、計数値が所定値になるとＤＭＡ転送を中断して、１回のＤＭＡ転送要求につき１ブロック単位でデータを転送するようにしている。
【０００４】
一方、ＡＳＩＣ（ＤＭＡコントローラ）における画像処理のパラメータ（レジスタ群）は大量で、ＭＦＰなどの設計時には、読み取り特性や書き込み特性などを加味して所望の画質が得られるまでいろいろなパラメータの組み合わせ（パラメータ・セット）を試験する。最終的に決定されるパラメータ・セットはモード毎など複数である。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
前述のように、決定されたパラメータ・セットを再現させるために任意の記憶装置に保存するが、これまではＡＳＩＣを制御しているＣＰＵが全パラメータを読み出し、メモリ等に格納していた。読み出しには、リクエストを発行してから実際にデータを受け取るまでレイテンシ（遅延）が発生する。また、ＣＰＵからのバースト要求ができない（１レジスタに対して１回のリクエスト）場合、リクエスト間隔が発生し、全パラメータの読み出しまでにかなりの時間を要してしまう。特に、ＣＰＵとＡＳＩＣがＰＣＩ−Ｅｘｐｒｅｓｓで接続されている場合、その特性上さらにレイテンシが増えるためよりパフォーマンスの低下が激しくなる。また、ＣＰＵが主体（マスタ）になることによってパラメータの読み取りを行っていると他の処理ができなくなってしまう。
【０００６】
そこで、本発明が解決しようとする課題は、ソフトウェア（ＣＰＵ）の並行処理が可能で画像処理手段（ＡＳＩＣ）の処理時間の短縮化を図ることができるようにすることにある。
【課題を解決するための手段】
【０００７】
前記課題を解決するため、第１の手段は、画像処理に用いる複数の画像処理パラメータを保持する画像処理手段と、記憶手段間で画像処理パラメータを転送する画像処理装置において、前記画像処理手段を検証するときに、前記画像処理手段側から当該画像処理手段に保持された前記画像処理パラメータを前記記憶手段に転送することを特徴とする。
【０００８】
第２の手段は、第１の手段において、前記が総処理手段は、前記画像処理パラメータを保持する保持回路を備え、当該保持回路は、前記記憶手段に予め書き込まれた前記画像処理パラメータ毎のディスクリプタ情報を参照し、当該ディスクリプタ情報に基づいて前記画像処理パラメータを前記記憶手段に書き込むことを特徴とする。
【０００９】
第３の手段は、第２の手段において、前記ディスクリプタ情報は転送不要な情報を含み、前記保持回路は、前記転送不要な情報に対応する画像処理パラメータは記憶手段側に転送しないことを特徴とする。
【００１０】
第４の手段は、第２又は第３の手段において、前記ディスクリプタ情報は、前記画像処理パラメータの前記記憶手段上における書き込み開始位置と書き込みサイズ情報とを含み、前記保持回路は、前記書き込み開始位置から前記サイズ情報分だけ画像処理パラメータを前記記憶手段に転送することを特徴とする。
【００１１】
第５の手段は、第２ないし第４のいずれかの手段において、前記ディスクリプタ情報は、前記画像処理パラメータの識別情報を含み、前記保持回路は、前記識別情報に基づいて前記画像処理パラメータを前記記憶手段に転送することを特徴とする。
【００１２】
第６の手段は、画像処理に用いる複数の画像処理パラメータを保持する画像処理手段と、記憶手段間で画像処理パラメータを転送する画像処理方法において、前記画像処理手段を検証するときに、前記画像処理手段側から前記記憶手段側に前記画像処理パラメータを転送することを特徴とする。
【００１３】
第７の手段は、第６の手段において、前記画像処理パラメータの転送が、ディスクリプタ情報が格納されたアドレスをソフトウェアが前記画像処理手段内部のレジスタに書き込む第１の工程と、前記画像処理手段が前記ソフトウェアから起動されたときに、前記第１の手順で指定されたアドレスから前記記憶手段に格納されているディスクリプタ情報を読み込む第２の工程と、前記記憶手段から読み込んだディスクリプタ情報を、前記画像処理手段内部のレジスタに格納する第３の工程と、レジスタに格納されていたパラメータを第３の手順で読み込んだディスクリプタ情報で指定された最初の記憶手段のスタート・アドレスに書き込む第４の工程と、レジスタに格納されていたパラメータを第３の手順で読み込んだディスクリプタ情報で指定された次のメモリのスタート・アドレスに書き込む第５の工程と、を備えていることを特徴とする。
【００１４】
第８の手段は、第６又は第７の手段に係る画像処理方法をコンピュータで実行する手順を備えていることを特徴とする。
【００１５】
第９の手段は、第８の手段に係るコンピュータプログラムをコンピュータによって実行可能に格納した格納したコンピュータ読み取り可能な記憶媒体を特徴とする。
【００１６】
なお、後述の実施形態において、画像処理手段は画像処理モジュール２及び画像処理パラメータＤＭＡＣ５に、記憶手段はメモリ３に、保持回路は画像処理パラメータＤＭＡＣ５及び内部レジスタに、それぞれ対応する。
【発明の効果】
【００１７】
本発明によれば、ソフトウェア（ＣＰＵ）の並行処理が可能で画像処理手段（ＡＳＩＣ）の処理時間の短縮化を図ることができる。
【発明を実施するための最良の形態】
【００１８】
以下、図面を参照し、本発明の実施形態について説明する。  
【実施例１】
【００１９】
図１は本発明の実施例１に係る画像処理装置の構成を示すブロック図である。図１において括弧付き数字は各構成要素間の信号あるいは指令の出力順を示している。
【００２０】
図１において、画像処理回路はソフトウェアによって制御される制御部（以下、「ソフトウェア」と称す）１、ＡＳＩＣとして構成された画像処理モジュール２、及びメモリ３から構成されている。画像制御モジュール２は、制御レジスタ４、画像処理パラメータＤＭＡＣ５、リードＤＭＡＣ６及びライトＤＭＡＣ７を備えている。制御部１からは画像処理モジュール２に対して起動、パラメータ変更を指示し、画像処理モジュール２からは終了通知が入力される。制御部１からの入力及び制御部１への出力は制御レジスタ４を介して行われる。
【００２１】
図１に示すようにソフトウェア１から制御レジスタ４への指示により、画像処理モジュール２を起動し（１）、（１）の起動を受けて画像処理パラメータＤＭＡＣ５を起動する（２）。画像処理パラメータＤＭＡＣ５は画処理Ｐａｒａｍリード（３）で、 メモリ３上に展開された画像処理パラメータ群をダウンロードし、自身のレジスタに反映する。次いで、画処理Ｐａｒａｍリードが完了したことを制御レジスタ４に通知する（４）。
【００２２】
制御レジスタ４は（４）の終了通知を受けて、リードＤＭＡＣ６及びライトＤＭＡＣ７を起動する（５）。リードＤＭＡＣ６及びライトＤＭＡＣ７はそれぞれメモリ３上に展開されたディスクリプタ情報を読み込む（６）。リードＤＭＡＣ６はディスクリプタ情報に従って、メモリ３上に展開された画像データを読み出し（７）、ライトＤＭＡＣ７は（７）で画像処理後の画像データを書き込む（７）。読み出しと書き込みがそれぞれ終了すると、リードＤＭＡＣ６及びライトＤＭＡＣ７はそれぞれ制御レジスタ４に終了通知を出力する（８）。
【００２３】
リードＤＭＡＣ６及びライトＤＭＡＣ７の終了通知を受けて、制御レジスタ４はソフトウェア１に終了通知を発行し（９）、画像処理モジュール４の動作完了を通知ソフトウェア１に通知する。ソフトウェア１からパラメータ変更の通知があれば（１０）、画像処理パラメータの一部あるいは全てを変更し、（５）〜（９）を繰り返す。
【００２４】
さらに、画像処理モジュール４が起動されれば（１１）、画処理Ｐａｒａｍライトを実行して、 画像処理パラメータ群をメモリ３上にアップロードする（１２）。アップロードが完了すると、画像処理パラメータＤＭＡＣ５の動作完了を制御レジスタ４に通知し（１３）、制御レジスタ４はこれを受けてソフトウェア１に画像処理モジュール２の動作完了を通知する（１４）。
【００２５】
上記の（１）から（１４）の処理は、
（１）画像処理モジュール２の起動
（２）画像処理パラメータＤＭＡＣ５の起動
（３）画処理Ｐａｒａｍリード
（４）画処理Ｐａｒａｍリードの終了通知
（５）リードＤＭＡＣ６及びライトＤＭＡＣ７の起動
（６）ディスクリプタ情報の読み込み
（７）画像データの読み出しと画像処理後のデータの書き込み
（８）読み出しとの書き込みの制御レジスタ４への終了通知
（９）読み出しとの書き込みのソフトウェア１への終了通知
（１０）パラメータ変更
（１１）画像処理モジュール４の起動
（１２）画処理Ｐａｒａｍライト
（１３）画処理Ｐａｒａｍライトの終了通知
（１４）画像処理モジュール２の動作完了通知
のように表すことができる。
【００２６】
図２は制御シーケンスとして各構成要素間の信号あるいは指令の出力順を示す図である。
【００２７】
図２では、ソフトウェア１は（１）で画像処理パラメータをメモリ３に書き込む。すなわち、一連の動作制御を司るソフトウェア１が画像処理パラメータＤＭＡＣ５にダウンロードする画像処理パラメータをメモリ３上に展開する。次いで、（２）としてソフトウェア１が画像処理パラメータＤＭＡＣ５、リードＤＭＡＣ６、ライトＤＭＡＣ７の動作に必要なディスクリプタ情報をメモリ２上に展開する。
【００２８】
次いでソフトウェア１は画像処理パラメータＤＭＡＣ５、リードＤＭＡＣ６、ライトＤＭＡＣ７を起動するために必要な設定を画像処理モジュール２のレジスタ４に設定する。その後、画像処理モジュール２に起動をかける（４）と、画像処理モジュール２では画像処理パラメータＤＭＡＣ５、リードＤＭＡＣ６、ライトＤＭＡＣ７は（２）で設定されたディスクリプタ情報を読み込む（５）。次いで、画像処理パラメータＤＭＡＣ５がメモリ３上に展開されたパラメータを読み込み、レジスタに反映する（６）。さらに、画像処理前の画像データをメモリ３上から読み込み、画像処理モジュール２で画像処理後、メモリ３上に書き込み、画像データが転送される（７）。
【００２９】
画像データの転送が終了すると、完了割り込みとして、画像処理モジュール２の動作完了をソフトウェア１に通知する（８）。この通知を受けて、ソフトウェア１は、割り込み処理として、所定の後処理を実施し、その処理を完了する（９）と、パラメータ変更として、必要に応じて画像処理パラメータの一部あるいは全てを画像処理パラメータＤＭＡＣ５とは別の手段、例えばレジスタ・ライトにより変更する（１０）。そして、（２）のディスクリプタ情報から（９）の割り込み処理までの処理を画像処理パラメータの量に応じて繰り返す。
【００３０】
処理すべき最後の画像処理パラメータに対して、ソフトウェア１が画像処理パラメータＤＭＡＣ５の動作に必要なディスクリプタ情報をメモリ上に展開し（１１） 、画像処理パラメータＤＭＡＣ５を起動するために必要な設定を画像処理モジュール２のレジスタ４に設定する（１２）。次いで、画像処理パラメータＤＭＡＣ５を起動すると（１３）、画像処理モジュール２は（２）で設定されたディスクリプタ情報を読み込み（１４）、画像処理パラメータＤＭＡＣ５がレジスタ設定値をメモリ３上に展開し、パラメータ書き込みを実行する（１５）。画像処理パラメータＤＭＡＣ５の動作が完了すると、完了割り込みとしてその旨ソフトウェア１に通知する（１６）。その後、ソフトウェア１が所定の後処理を実施し、割り込み処理を行って全てを完了する（１７）。
【００３１】
これにより、必要な画像処理パラメータを全てメモリ３に転送することができる。
【００３２】
このように画像処理パラメータをメモリ３に書き込むのは、画質設計やデバックのためであり、一般ユーザが画像形成を行うための画像処理には特に必要ではない。なお、前記（２）から（９）の処理を繰り返す際、画質設計の際に既に決定されている画像処理パラメータ、あるいはデバックが完了している画像処理パラメータは特にメモリに転送する必要はない。
【００３３】
図３は、実施例１におけるＡＳＩＣ内部レジスタとメモリ上パラメータの関係を示す図である。
【００３４】
（１）ディスクリプタ情報が格納されたアドレス（０ｘ０１００）をソフトウェア１が画像処理モジュール２の画像処理パラメータＤＭＡＣ５内部のレジスタに書き込む。  
（２）画像処理パラメータＤＭＡＣ５は起動されると、（１）で指定されたアドレス（０ｘ１００）からメモリ３に格納されているディスクリプタ情報（０ｘ３０００，０ｘ１０００）を読み込む。  
（３）画像処理パラメータＤＭＡＣ５はメモリ３から読み込んだディスクリプタ情報を、画像処理モジュール２内部のレジスタに格納する。  
（４）画像処理パラメータＤＭＡＣ５はパラメータ（Ｐａｒａｍ１）を（３）で指定された最初のメモリのスタート・アドレス（０ｘ３０００）に書き込む。  
（５）画像処理パラメータＤＭＡＣ５はパラメータ（Ｐａｒａｍ２）を（３）で指定された次のメモリのスタート・アドレス（０ｘ１０００）に書き込む。  
一般的に画像処理を実現するＡＳＩＣなどには画像処理用レジスタ（パラメータ）が多く存在している。しかし、本実施例では、そのパラメータをソフトウェア１が直接レジスタ設定するのではなく、メモリ３に置いてからＤＭＡ処理にて画像処理パラメータＤＭＡＣ（ＡＳＩＣ）５が読み込むので、１つのディスクリプタに２個のデータ情報（Ｐａｒａｍ１、Ｐａｒａｍ２）を格納することができ、これによりＣＰＵ負荷の低減と画像処理に要する処理速度の向上が可能になる。
【実施例２】
【００３５】
図４は実施例２におけるソフトウェア１、画像処理パラメータＤＭＡＣ５、及びメモリ３間の基本動作を示す図である。前記三者の関係は図１で説明した通りである。
【００３６】
この実施例２では、
ａ）ディスクリプタ情報の１番目にはγテーブルであるＰａｒａｍ１のアップロード先であるスタート・アドレスが格納されている。  
ｂ）ディスクリプタ情報の２番目にはフィルタ係数であるＰａｒａｍ２のアップロード先であるスタート・アドレスが格納されている。  
という前提（条件下）における動作を示している。
【００３７】
図４において、
（１）ソフトウェア１が、ディスクリプタ情報（０ｘ３０００，０ｘ１０００）をメモリ３に書き込む。  
（２）ソフトウェア１が、ディスクリプタ情報を書き込んだメモリ４のアドレス（０ｘ０１００）を画像処理パラメータＤＭＡＣ５のレジスタに書き込む。  
（３）画像処理パラメータＤＭＡＣ５を起動する。  
（４）画像処理パラメータＤＭＡＣ５は、ディスクリプタ情報をメモリ３から読み込み、内部レジスタに格納する。  
（５）画像処理パラメータＤＭＡＣ５は、内部レジスタに格納された（４）のディスクリプタ情報に従ってＰａｒａｍ１を指定のアドレス（０ｘ３０００）にアップロード（転送）する。  
（６）画像処理パラメータＤＭＡＣ５は、内部レジスタに格納された（４）のディスクリプタ情報に従ってＰａｒａｍ２を指定のアドレス（０ｘ１０００）にアップロード（転送）する。
【００３８】
その他、特に説明しない各部や各シーケンスは実施例１と同様に構成されている。
【００３９】
この実施例では、従来は、ＣＰＵ（ソフトウェア１）がパラメータ１つ１つに対してリード処理を行っていたため、その間ＣＰＵは他の処理を実行することができなかったが、ＣＰＵ（ソフトウェア１）は、ＡＳＩＣ（画像処理モジュール２）に対して動作開始を指示してから終了割り込みが来るまで他の処理を実行することができる。
【００４０】
また、従来は、バースト処理ができなかったが、画像処理パラメータＤＭＡＣ５がメモリ３に対して所定のパケットサイズ分を連続で送信することができるため高速にアップロードすることができる。
【００４１】
さらに、従来では、ＣＰＵとのリード・ライト・プロトコルがＰＣＩ−Ｅｘｐｒｅｓｓを経由した場合、ＣＰＵからのリードのレイテンシが大きく処理が遅かったが、画像処理パラメータＤＭＡＣ５からのライトにすることによって、レイテンシが小さく処理速度を向上させることができる。
【実施例３】
【００４２】
図５は実施例３におけるソフトウェア１、画像処理パラメータＤＭＡＣ５、及びメモリ３間の基本動作を示す図である。前記三者の関係は図１で説明した通りである。
【００４３】
この実施例３に係る画像処理装置は、実施例２に係る画像処理装置に対してアップロードの要否が指定できるようにしたものである。また、この実施例３では、
ａ）ディスクリプタ情報の１番目にはγテーブルであるＰａｒａｍ１のアップロード先であるスタート・アドレスが格納されている。  
ｂ）ディスクリプタ情報の２番目にはフィルタ係数であるＰａｒａｍ２のアップロード先であるスタート・アドレスが格納されている。  
ｃ）ディスクリプタ情報の３番目には閾値係数であるＰａｒａｍ３のアップロード先であるスタート・アドレスが格納されている。  
ｄ）各スタート・アドレスでＮＵＬＬ（０ｘ００００）が指定された場合、各Ｐａｒａｍのアップロードは行わない。  
（アップロードを行わない条件は必ずしもＮＵＬＬでなくても良い。例えばＡＬＬ１（０ｘＦＦＦＦ）やメモリの領域外でも良い）
という前提（条件下）における動作を示している。
【００４４】
図５において、
（１）ソフトウェア１が、ディスクリプタ情報（０ｘ３０００，０ｘ００００、０ｘ２０００）をメモリ３に書き込む。  
（２）ソフトウェア１が、ディスクリプタ情報を書き込んだメモリ３のアドレス（０ｘ０１００）を画像処理パラメータＤＭＡＣ５のレジスタに書き込む。  
（３）画像処理パラメータＤＭＡＣ５を起動する。  
（４）画像処理パラメータＤＭＡＣ５は、ディスクリプタ情報をメモリ３から読み込み、内部レジスタに格納する。  
（５）画像処理パラメータＤＭＡＣ５は、（４）のディスクリプタ情報に従ってＰａｒａｍ１を指定のアドレス（０ｘ３０００）にアップロード（転送）する。  
（６）画像処理パラメータＤＭＡＣ５は、（４）のディスクリプタ情報によると次の指定のアドレスがＮＵＬＬ（０ｘ００００）指定であるためＰａｒａｍ２のアップロードは行わない。  
（７）画像処理パラメータＤＭＡＣ５は、（４）のディスクリプタ情報に従ってＰａｒａｍ３を指定のアドレス（０ｘ１０００）にアップロード（転送）する。  
その他、特に説明しない各部や各シーケンスは実施例１と同様に構成されている。
【００４５】
この実施例では、実施例１及び２に比べて、設計上判定条件が増え複雑化するが、画像処理パラメータＤＭＡＣ５は必要なパラメータの種類分だけアップロードすれば良くなるため、処理速度が向上する。
【実施例４】
【００４６】
図６は実施例４におけるソフトウェア１、画像処理パラメータＤＭＡＣ５、及びメモリ３間の基本動作を示す図である。前記三者の関係は図１で説明した通りである。
【００４７】
この実施例４に係る画像処理装置は、実施例３に係る画像形成装置に対してアップロードのサイズが指定できるようにしたものである。また、この実施例４では、
ａ）ディスクリプタ情報の１番目にはγテーブルであるＰａｒａｍ１のアップロード先であるスタート・アドレスとそのサイズが格納されている。  
ｂ）ディスクリプタ情報の２番目にはフィルタ係数であるＰａｒａｍ２のアップロード先であるスタート・アドレスとそのサイズが格納されている。  
ｃ）ディスクリプタ情報の３番目には閾値係数であるＰａｒａｍ２のアップロード先であるスタート・アドレスとそのサイズが格納されている。  
ｄ）サイズの指定が０の場合、アップロードは行わない。  
という前提（条件下）における動作を示している。
【００４８】
図６において、
（１）ソフトウェア１が、ディスクリプタ情報（０ｘ３０００、０ｘ００２０，０ｘ１０００、０ｘ００１０）をメモリ３に書き込む。  
（２）ソフトウェア１が、ディスクリプタ情報を書き込んだメモリ３のアドレス（０ｘ０１００）を画像処理パラメータＤＭＡＣのレジスタに書き込む。  
（３）画像処理パラメータＤＭＡＣ５を起動する。  
（４）画像処理パラメータＤＭＡＣ５は、ディスクリプタ情報をメモリ３から読み込み、内部レジスタに格納する。
【００４９】
（５）画像処理パラメータＤＭＡＣ５は、（４）のディスクリプタ情報に従ってＰａｒａｍ１を指定のアドレス（０ｘ１０００）に指定のサイズ（０ｘ００２０）分だけアップロード（転送）する。  
（６）画像処理パラメータＤＭＡＣ５は、（４）のディスクリプタ情報によると次の指定のサイズが０指定であるためＰａｒａｍ２のアップロードを行わない。  
（７）画像処理パラメータＤＭＡＣ５は、（４）のディスクリプタ情報に従ってＰａｒａｍ３を指定のアドレス（０ｘ３０００）に指定のサイズ（０ｘ００１０）分だけアップロードする。
【００５０】
その他、特に説明しない各部や各シーケンスは実施例１と同様に構成されている。
【００５１】
この実施例４によれば、実施例１ないし３に比べて、設計上判定条件が増え複雑化し、ＣＰＵ（ソフトウェア１）がメモリに書き込むディスクリプタ情報の容量も増すが、ＤＭＡＣは必要な種類の必要な分だけのパラメータをアップロードすれば良くなるため、処理速度がさらに向上する
【実施例５】
【００５２】
図７は実施例５におけるソフトウェア１、画像処理パラメータＤＭＡＣ５、及びメモリ３間の基本動作を示す図である。前記三者の関係は図１で説明した通りである。
【００５３】
この実施例５に係る画像処理装置は、実施例３に係る画像処理装置に対してアップロードの順番及びアップロードの終了を指定できるようにしたものである。また、この実施例５では、
ａ）ディスクリプタ情報にはアップロード先であるスタート・アドレスとその対象パラメータを示すＩＤが複数格納されている。  
ｂ）ＩＤはそれぞれ、０ｘ０００１がγテーブル、０ｘ０００２がフィルタ係数、０ｘ０００３が閾値係数を表す。  
ｃ）スタート・アドレスがＮＵＬＬ（０ｘ００００）又はＩＤが０指定された場合、アップロードを終了する。  
という前提（条件下）における動作を示している。
【００５４】
図７において、
（１）ソフトウェア１が、ディスクリプタ情報（０ｘ３０００、０ｘ０００１，０ｘ２０００、０ｘ０００３、０ｘ００００、０ｘ００００）をメモリ３に書き込む。  
（２）ソフトウェア１が、ディスクリプタ情報を書き込んだメモリ３のアドレス（０ｘ０１００）を画像処理パラメータＤＭＡＣ５のレジスタに書き込む。  
（３）画像処理パラメータＤＭＡＣ５を起動する。  
（４）画像処理パラメータＤＭＡＣ５は、ディスクリプタ情報をメモリ３から読み込み、内部レジスタに格納する。  
（５）画像処理パラメータＤＭＡＣ５は、（４）のディスクリプタ情報に従ってＰａｒａｍ１を指定のアドレス（０ｘ３０００）にアップロードする
（６）画像処理パラメータＤＭＡＣ５は、（４）のディスクリプタ情報に従ってＰａｒａｍ３を指定のアドレス（０ｘ２０００）にアップロードする
（７）画像処理パラメータＤＭＡＣ５は、（４）のディスクリプタ情報によると次の指定のアドレスがＮＵＬＬ（０ｘ００００）（又はＩＤが０）指定であるためアップロードを終了する。
【００５５】
その他、特に説明しない各部や各シーケンスは実施例１と同様に構成されている。
【００５６】
この実施例５によれば、順番を指定できるので、実施例４に比べ、例えばダウンロードの必要がないパラメータの種類の順番を飛ばしたり、パラメータ設定に順序が規定されているものに対して効率的に処理することができる。
【実施例６】
【００５７】
図８は実施例６におけるソフトウェア１、画像処理パラメータＤＭＡＣ５、及びメモリ３間の基本動作を示す図である。前記三者の関係は図１で説明した通りである。
【００５８】
この実施例６に係る画像処理装置は、実施例３に係る画像処理装置に対してアップロードのサイズ、アップロードの順番及びアップロードの終了を指定できるようにしたものである。また、この実施例６では、
ａ）ディスクリプタ情報にはアップロード先であるスタート・アドレスとその対象パラメータのサイズ及びＩＤが複数格納されている。  
ｂ）ＩＤはそれぞれ、０ｘ０００１がγテーブル、０ｘ０００２がフィルタ係数、０ｘ０００３が閾値係数を表す。  
ｃ）スタート・アドレスがＮＵＬＬ（０ｘ００００）又はサイズが０又はＩＤが０指定された場合、アップロードを終了する。  
という前提（条件下）における動作を示している。
【００５９】
図８において、
（１）ソフトウェア１が、ディスクリプタ情報（０ｘ１０００、０ｘ００２０，０ｘ０００１，０ｘ３０００、０ｘ００１０、０ｘ０００３、０ｘ００００、０ｘ００００、０ｘ００００）をメモリ４に書き込む。  
（２）ソフトウェア１が、ディスクリプタ情報を書き込んだメモリ３のアドレス（０ｘ０１００）を画像処理パラメータＤＭＡＣ５のレジスタに書き込む。  
（３）画像処理パラメータＤＭＡＣ５を起動する。  
（４）画像処理パラメータＤＭＡＣ５は、ディスクリプタ情報をメモリ３から読み込み、内部レジスタに格納する。  
（５）画像処理パラメータＤＭＡＣ５は、（４）のディスクリプタ情報に従ってＰａｒａｍ１を指定のアドレス（０ｘ１０００）に指定のサイズ（０ｘ００２０）分だけアップロードする。  
（６）画像処理パラメータＤＭＡＣ５は、（４）のディスクリプタ情報に従ってＰａｒａｍ３を指定のアドレス（０ｘ３０００）に指定のサイズ（０ｘ００１０）分だけアップロードする。  
（７）画像処理パラメータＤＭＡＣ５は、（４）のディスクリプタ情報によると次の指定のアドレスがＮＵＬＬ（０ｘ００００）（又はサイズが０、又はＩＤが０）指定であるためアップロードを終了する。
【００６０】
その他、特に説明しない各部や各シーケンスは実施例１と同様に構成されている。
【００６１】
この実施例６によれば、実施例１ないし５に比べ設計上複雑化するが、必要な種類の、必要な容量分を、順序に従って行えるので、自由度の高いパラメータのアップロード（転送）が可能となる。
【実施例７】
【００６２】
実施例１ないし６では、画像処理パラメータを画像処理パラメータＤＭＡＣ４がメモリにアップロード（転送）していたが、画像処理モジュール２にメモリ３から画像処理パラメータ（Ｐａｒａｍ）を転送することも可能である。
【００６３】
この例を実施例７として図９に示す。図９は実施例７におけるソフトウェア１、画像処理パラメータＤＭＡＣ５、及びメモリ３間の基本動作を示す図である。前記三者の関係は図１で説明した通りである。
【００６４】
この実施例では、
（１）ソフトウェア１がメモリ２のディスクリプタ情報領域にディスクリプタ情報が格納されたアドレス（ここでは２個）を書き込む。  
（２）ディスクリプタ情報に対応するメモリ３のアドレスに対してデータ情報（Ｐａｒａｍ１，２）をソフトウェア１が書き込む。その際に、最初はγテーブルのパラメータで次はフィルタ係数と決められている。  
（３）（１）でディスクリプタ情報を書き込んだ先頭アドレス情報を画像処理モジュール（ＡＳＩＣ）２内のディスクリプタ情報格納レジスタに書き込む。  
（４）ソフトウェア１が画像処理モジュール２に対して起動をかける。  
（５）起動された画像処理モジュール２は、最初にディスクリプタ情報格納レジスタにあるアドレスからディスクリプタ情報を読み込む。読み込んだディスクリプタ情報はデータ情報が書き込まれているアドレスとして画像処理モジュール２内部のレジスタに格納される。  
（６）（５）で格納された最初のアドレスは、γテーブルと決められているのでγテーブルのデータ量だけ格納されたメモリ３のアドレスからＰａｒａｍ１として取得する。  
（７）（５）で格納された２番目のアドレスは、フィルタ係数と決められているのでフィルタ係数のデータ量だけ格納されたメモリ３のアドレスからＰａｒａｍ２として取得する。  
という動作を行う。
【００６５】
一般的に画像処理を実現するＡＳＩＣ３などには画像処理用レジスタ（パラメータ）が多く存在している。本実施例では、そのパラメータをソフトウェア１が直接レジスタ設定するのではなく、メモリ３に置いてからＤＭＡ処理にて画像処理モジュール（ＡＳＩＣ）２が読み込むので、１つのディスクリプタに２個のデータ情報（Ｐａｒａｍ１、Ｐａｒａｍ２）を格納することができ、これによりＣＰＵ負荷の低減と画像処理に要する処理速度の向上が可能になる。
【００６６】
なお、前記各実施例における処理の手順はプログラム化され、コンピュータによって実行される。画像処理装置は前記コンピュータを備え、当該コンピュータによって前記各動作を実行する。また、コンピュータプログラムはＦＤ、ＣＤ−ＲＯＭ、メモリカード、あるいはネットワークを介して配布され、画像処理装置のコンピュータにインストールされて使用される。
【００６７】
このように、各実施例によれば、画像処理モジュール（ＡＳＩＣ）２がマスタとなり、画像処理パラメータをメモリ３等に対してバーストで書き込みを行い、全ての転送が完了した段階でソフトウェア（ＣＰＵ）１に対して割り込みを発生し、終了を知らせる。よって、ソフトウェア（ＣＰＵ）１はパラメータが書き込まれている間に別の処理を行うことができる。また、リードに比べレイテンシ等が発生しにくいライト処理で且つバースト転送が可能なため画像処理モジュール（ＡＳＩＣ）の処理時間の短縮化も図ることができる。このように一連の処理が早くなることによって、ＭＦＰなどシステムの高速化が実現できる。
【図面の簡単な説明】
【００６８】
【図１】本発明の実施例１に係る画像処理装置の構成を示すブロック図である。
【図２】実施例１における制御シーケンスとして各構成要素間の信号あるいは指令の出力順を示す図である。
【図３】実施例１におけるＡＳＩＣ内部レジスタとメモリ上パラメータの関係を示す図である。
【図４】実施例２におけるソフトウェア、画像処理パラメータＤＭＡＣ、及びメモリ間の基本動作を示す図である。
【図５】実施例３におけるソフトウェア、画像処理パラメータＤＭＡＣ、及びメモリ間の基本動作を示す図である。
【図６】実施例４におけるソフトウェア、画像処理パラメータＤＭＡＣ、及びメモリ間の基本動作を示す図である。
【図７】実施例５におけるソフトウェア、画像処理パラメータＤＭＡＣ、及びメモリ間の基本動作を示す図である。
【図８】実施例６におけるソフトウェア、画像処理パラメータＤＭＡＣ、及びメモリ間の基本動作を示す図である。
【図９】実施例７におけるソフトウェア、画像処理パラメータＤＭＡＣ、及びメモリ間の基本動作を示す図である。
【符号の説明】
【００６９】
１  ソフトウェア（ＣＰＵ）
２  画像処理モジュール（ＡＳＩＣ）
３  メモリ
４  制御レジスタ
５  画像処理パラメータＤＭＡＣ
【図１】
2008234065.tif 000003
【図２】
2008234065.tif 000004
【図３】
2008234065.tif 000005
【図４】
2008234065.tif 000006
【図５】
2008234065.tif 000007
【図６】
2008234065.tif 000008
【図７】
2008234065.tif 000009
【図８】
2008234065.tif 000010
【図９】
2008234065.tif 000011