(57)【要約】【課題】長尺の画像データやカラーの画像データに対して、エンジンが、画像データを書き込むメモリの記憶領域を自動的に取得することで、メモリを効率よく使用することができる画像形成装置及びメモリ制御方法を提供することを目的とする。【解決手段】原稿を読み取って画像データを生成する読取手段１２０１と、複数の領域に分割された第１記憶手段１３０の管理を行うメモリ管理手段４１と、読取手段により生成された画像データを、第１記憶手段に書き込むエンジン１２０とを備える画像形成装置であって、エンジンは、メモリ管理手段から第１記憶手段への書き込みに関する設定情報を取得し、取得した設定情報に基づいて、第１記憶手段に画像データを書き込む画像形成装置。【選択図】図４
2010016541.tif 000002
【特許請求の範囲】
【請求項１】
原稿を読み取って画像データを生成する読取手段と、
複数の領域に分割された第１記憶手段の管理を行うメモリ管理手段と、
前記読取手段により生成された画像データを、前記第１記憶手段に書き込むエンジンとを備える画像形成装置であって、
前記エンジンは、
前記メモリ管理手段から前記第１記憶手段への書き込みに関する設定情報を取得し、取得した設定情報に基づいて、前記第１記憶手段に前記画像データを書き込む画像形成装置。
【請求項２】
前記第１記憶手段の所定の領域にポイントを設定するポイント設定手段と、
前記設定手段により設定されたポイントまで前記画像データが書き込まれたことを検知する検知手段とを備え、
前記検知手段により検知された場合、前記ポイントを未記憶の領域に再設定する請求項１記載の画像形成装置。
【請求項３】
前記ポイントは２つ設定され、
２つの前記ポイントは、前記検知手段により交互に検知されるよう前記第１記憶手段の領域に対して再設定される請求項２記載の画像形成装置。
【請求項４】
前記検知手段により検知された場合、前記第１記憶手段に書き込まれた画像データを前記領域単位で第２記憶手段に退避を行う退避処理手段と
を備える請求項３記載の画像形成装置。
【請求項５】
前記退避処理手段は、
前記画像データの退避処理が終了していないときに、次に設定されたポイントに対して、前記検知手段により検知された場合、警告の表示要求を行う請求項４記載の画像形成装置。
【請求項６】
前記退避処理手段は、
前記画像データの退避処理が終了していないときに、前記退避処理対象の領域の直前の領域に設定されたポイントに対して、前記検知手段により検知された場合、当該画像形成装置に係る処理の停止要求を行う請求項４又は５に記載の画像形成装置。
【請求項７】
前記画像データは長尺である請求項１乃至６いずれか一項に記載の画像形成装置。
【請求項８】
前記画像データはカラー画像である請求項１乃至７いずれか一項に記載の画像形成装置。
【請求項９】
原稿を読み取って画像データを生成する読取手段と、
複数の領域に分割された第１記憶手段の管理を行うメモリ管理手段と、
前記読取手段により生成された画像データを、前記第１記憶手段に書き込むエンジンとを備える画像形成装置におけるメモリ制御方法であって、
前記エンジンが、前記メモリ管理手段から前記第１記憶手段への書き込みに関する設定情報を取得する取得ステップと、
前記エンジンが、前記取得ステップにより取得した設定情報に基づいて、前記第１記憶手段に前記画像データを書き込む書込ステップと
を有するメモリ制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置及びメモリ制御方法に関する。
【背景技術】
【０００２】
従来から、設計図やインパクトのあるポスターなどの作成に巨大な印刷を行う場合がある。しかし、昨今は高画質化の要求もあり、普及機であるＡ３機と比較して画質に対しての劣化は許されない。また、市場の要請としてカラー化が必要となっている。
【０００３】
一方、画像データをエンジンがメモリに直接Ｗｒｉｔｅする仕組みが、特許第３７３０５８６号（特許文献１）にて考案され、既に知られている。
【０００４】
特許文献１には、２つのトグルバッファを使用して、交互に画像データを入力することで、画像データよりも少ないメモリ量で画像を取り込む画像形成装置（以下、融合機ともいう）が開示されている。
【０００５】
また、カラー化に応じて、従来のＡＳＩＣによる入力方式では、回路の規模や開発コストの増大を招くため、上記エンジンがメモリに直接Ｗｒｉｔｅする仕組みについてのカラー化が求められている。
【特許文献１】特許第３７３０５８６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、長尺の画像データのような大容量のデータでは、メモリ上を画像データが繰り返して入力されて行くため、入力された画像をＨＤＤなどに随時退避する必要がある。モノクロのような単色の場合は、入力と退避の経路が１つずつのため、お互いのタイミングを見ていればよかったが、カラーとなった場合は、ＣＭＹＫやＲＧＢといった入力経路は複数あるが、退避する経路は１つしか存在しないため、お互いのタイミングだけでは、効率的に退避できないという問題がある。
【０００７】
また、エンジンがメモリへの書き込みを折り返して、画像データをメモリに書き込む手段に関しても、特許文献１に記載の技術のように２つのバッファを用いる手段だけでは汎用性に欠けるという問題もある。
【０００８】
本発明は、上記問題に鑑みてなされたものであり、長尺の画像データやカラーの画像データに対して、エンジンが、画像データを書き込むメモリの記憶領域を自動的に取得することで、メモリを効率よく使用することができる画像形成装置及びメモリ制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一局面の画像形成装置は、原稿を読み取って画像データを生成する読取手段と、複数の領域に分割された第１記憶手段の管理を行うメモリ管理手段と、前記読取手段により生成された画像データを、前記第１記憶手段に書き込むエンジンとを備える画像形成装置であって、前記エンジンは、前記メモリ管理手段から前記第１記憶手段への書き込みに関する設定情報を取得し、取得した設定情報に基づいて、前記第１記憶手段に前記画像データを書き込む。
【００１０】
また、本発明の他の局面のメモリ制御方法は、原稿を読み取って画像データを生成する読取手段と、複数の領域に分割された第１記憶手段の管理を行うメモリ管理手段と、前記読取手段により生成された画像データを、前記第１記憶手段に書き込むエンジンとを備える画像形成装置におけるメモリ制御方法であって、前記エンジンが、前記メモリ管理手段から前記第１記憶手段への書き込みに関する設定情報を取得する取得ステップと、前記エンジンが、前記取得ステップにより取得した設定情報に基づいて、前記第１記憶手段に前記画像データを書き込む書込ステップとを有する。
【発明の効果】
【００１１】
本発明によれば、長尺の画像データやカラーの画像データに対して、エンジンが、画像データを書き込むメモリの記憶領域を自動的に取得することで、メモリを効率よく使用することができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施例を図面に基づいて説明する。
【実施例１】
【００１３】
＜融合機の一実施例の構成について＞
図１は、本発明に係る融合機の一実施例の構成図である。融合機１は、ソフトウェア群２と、融合機起動部３と、ハードウェア資源４とを含むように構成される。
【００１４】
融合機起動部３は融合機１の電源投入時に最初に実行され、アプリケーション層５およびプラットフォーム層６を起動する。例えば融合機起動部３は、アプリケーション層５およびプラットフォーム層６のプログラムを、ハードディスク装置（以下、ＨＤＤという）などから読み出し、読み出した各プログラムを記憶領域に転送して起動する。
【００１５】
ハードウェア資源４は、白黒レーザプリンタ（Ｂ＆Ｗ  ＬＰ）１１と、カラーレーザプリンタ（Ｃｏｌｏｒ  ＬＰ）１２と、スキャナやファクシミリなどのハードウェアリソース１３、画像変換ハードウェア（ＭＬＣ）４３とを含む。
【００１６】
また、ソフトウェア群２は、ＵＮＩＸ（登録商標）などのオペレーティングシステム（以下、ＯＳという）上に起動されているアプリケーション層５とプラットフォーム層６とを含む。アプリケーション層５は、プリンタ、コピー、ファックスおよびスキャナなどの画像形成にかかるユーザサービスにそれぞれ固有の処理を行うプログラムを含む。
【００１７】
アプリケーション層５は、プリンタ用のアプリケーションであるプリンタアプリ２１と、コピー用アプリケーションであるコピーアプリ２２と、ファックス用アプリケーションであるファックスアプリ２３と、スキャナ用アプリケーションであるスキャナアプリ２４とを含む。
【００１８】
また、プラットフォーム層６は、アプリケーション層５からの処理要求を解釈してハードウェア資源４の獲得要求を発生するコントロールサービス層９と、１つ以上のハードウェア資源４の管理を行ってコントロールサービス層９からの獲得要求を調停するシステムリソースマネージャ（以下、ＳＲＭという）３９と、ＳＲＭ３９からの獲得要求に応じてハードウェア資源４の管理を行うハンドラ層１０とを含む。
【００１９】
コントロールサービス層９は、ネットワークコントロールサービス（以下、ＮＣＳという）３１、デリバリーコントロールサービス（以下、ＤＣＳという）３２、オペレーションパネルコントロールサービス（以下、ＯＣＳという）３３、ファックスコントロールサービス（以下、ＦＣＳという）３４、エンジンコントロールサービス（以下、ＥＣＳという）３５、メモリコントロールサービス（以下、ＭＣＳという）３６、ユーザインフォメーションコントロールサービス（以下、ＵＣＳという）３７、システムコントロールサービス（以下、ＳＣＳという）３８など、一つ以上のサービスモジュールを含むように構成されている。
【００２０】
なお、プラットフォーム層６は予め定義されている関数により、アプリケーション層５からの処理要求を受信可能とするＡＰＩ５３を有するように構成されている。ＯＳは、アプリケーション層５およびプラットフォーム層６の各ソフトウェアをプロセスとして並列実行する。
【００２１】
ＮＣＳ３１のプロセスは、ネットワークＩ／Ｏを必要とするアプリケーションに対して共通に利用できるサービスを提供するものであり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、各アプリケーションからのデータをネットワーク側に送信する際の仲介を行う。
【００２２】
例えばＮＣＳ３１は、ネットワークを介して接続されるネットワーク機器とのデータ通信をｈｔｔｐｄ（HyperText Transfer Protocol Daemon）により、ＨＴＴＰ（HyperText Transfer Protocol）で制御する。
【００２３】
ＤＣＳ３２のプロセスは、蓄積文書の配信などの制御を行う。ＯＣＳ３３のプロセスは、オペレータと本体制御との間の情報伝達手段となるオペレーションパネルの制御を行う。ＦＣＳ３４のプロセスは、アプリケーション層５からＰＳＴＮまたはＩＳＤＮ網を利用したファックス送受信、バックアップ用のメモリで管理されている各種ファックスデータの登録／引用、ファックス読み取り、ファックス受信印刷などを行うためのＡＰＩを提供する。
【００２４】
ＥＣＳ３５のプロセスは、白黒レーザプリンタ１１、カラーレーザプリンタ１２、その他のハードウェアリソース１３などのエンジン部の制御を行う。ＭＣＳ３６のプロセスは、メモリの取得および開放、ＨＤＤの利用などのメモリ制御を行う。ＵＣＳ３７のプロセスは、ユーザ情報の管理を行うものである。
【００２５】
ＳＣＳ３８のプロセスは、アプリケーション管理、操作部制御、システム画面表示、ＬＥＤ表示、ハードウェア資源管理、割り込みアプリケーション制御などの処理を行う。
【００２６】
ＳＲＭ３９のプロセスは、ＳＣＳ３８と共にシステムの制御およびハードウェア資源４の管理を行うものである。例えばＳＲＭ３９のプロセスは、白黒レーザプリンタ１１やカラーレーザプリンタ１２などのハードウェア資源４を利用する上位層からの獲得要求に従って調停を行い、実行制御する。
【００２７】
具体的に、ＳＲＭ３９のプロセスは獲得要求されたハードウェア資源４が利用可能であるか（他の獲得要求により利用されていないかどうか）を判定し、利用可能であれば獲得要求されたハードウェア資源４が利用可能である旨を上位層に通知する。また、ＳＲＭ３９のプロセスは上位層からの獲得要求に対してハードウェア資源４を利用するためのスケジューリングを行い、要求内容（例えば、プリンタエンジンによる紙搬送と作像動作、メモリ確保、ファイル生成など）を直接実施している。
【００２８】
また、ハンドラ層１０は後述するファックスコントロールユニット（以下、ＦＣＵという）の管理を行うファックスコントロールユニットハンドラ（以下、ＦＣＵＨという）４０と、プロセスに対するメモリの割り振り及びプロセスに割り振ったメモリの管理を行うイメージメモリハンドラ（以下、ＩＭＨという）４１とを含む。ＭＥＵ４２は、ＭＬＣ４３の制御を行う。
【００２９】
ＳＲＭ３９およびＦＣＵＨ４０は、予め定義されている関数によりハードウェア資源４に対する処理要求を送信可能とするエンジンＩ／Ｆ５４を利用して、ハードウェア資源４に対する処理要求を行う。
【００３０】
融合機１は、各アプリケーションで共通的に必要な処理をプラットフォーム層６で一元的に処理することができる。次に、融合機１のハードウェア構成について説明する。
【００３１】
＜融合機１のハードウェア構成について＞
図２は、融合機１の一実施例のハードウェア構成図を示している。融合機１は、コントローラ６０と、オペレーションパネル７０と、ＦＣＵ８０と、ＵＳＢデバイス９０と、ＩＥＥＥ１３９４デバイス１００と、ＭＬＣ１１０と、エンジン１２０とを含む。
【００３２】
また、コントローラ６０は、ＣＰＵ６１と、ＡＳＩＣ６６と、ＨＤＤ６８と、システムメモリ（ＭＥＭ−Ｐ）６２と、ローカルメモリ（ＭＥＭ−Ｃ）６７と、ノースブリッジ（以下、ＮＢと記す）６３と、サウスブリッジ（以下、ＳＢと記す）６４とを含む。
【００３３】
オペレーションパネル７０は、コントローラ６０のＡＳＩＣ６６に接続されている。また、ＦＣＵ８０、ＵＳＢデバイス９０、ＩＥＥＥ１３９４デバイス１００、ＭＬＣ１１０およびエンジン（スキャナ／プロッタエンジンを含む）１２０は、コントローラ６０のＡＳＩＣ６６にＰＣＩバスで接続されている。また、ＦＣＵ８０は、Ｇ３規格対応ユニットと、Ｇ４規格対応ユニットとを有する。
【００３４】
コントローラ６０は、ＡＳＩＣ６６にローカルメモリ６７、ＨＤＤ６８などが接続されると共に、ＣＰＵ６１とＡＳＩＣ６６とがＣＰＵチップセットのＮＢ６３を介して接続されている。このように、ＮＢ６３を介してＣＰＵ６１とＡＳＩＣ６６とを接続すれば、ＣＰＵ６１のインタフェースが公開されていない場合に対応できる。
【００３５】
また、ＡＳＩＣ６６とＮＢ６３とはＰＣＩバスを介して接続されているのでなく、ＡＧＰ（Accelerated Graphics Port）６５を介して接続されている。このように、図１のアプリケーション層５やプラットフォーム層６を形成する一つ以上のプロセスを実行制御するため、ＡＳＩＣ６６とＮＢ６３とを低速のＰＣＩバスでなくＡＧＰ６５を介して接続し、パフォーマンスの低下を防いでいる。
【００３６】
ＣＰＵ６１は、融合機１の全体制御を行うものである。ＣＰＵ６１は、ＮＣＳ３１、ＤＣＳ３２、ＯＣＳ３３、ＦＣＳ３４、ＥＣＳ３５、ＭＣＳ３６、ＵＣＳ３７、ＳＣＳ３８、ＳＲＭ３９、ＦＣＵＨ４０、ＩＭＨ４１、ＭＥＵ４２をＯＳ上にそれぞれプロセスとして起動して実行させると共に、アプリケーション層５を形成するプリンタアプリ２１、コピーアプリ２２、ファックスアプリ２３、スキャナアプリ２４を起動して実行させる。
【００３７】
ＮＢ６３は、ＣＰＵ６１、システムメモリ６２、ＳＢ６４およびＡＳＩＣ６６を接続するためのブリッジである。システムメモリ６２は、融合機１の描画用メモリなどとして用いるメモリである。ＳＢ６４は、ＮＢ６３とＲＯＭ、ＰＣＩバス、周辺デバイスとを接続するためのブリッジである。また、ローカルメモリ６７はコピー用画像バッファ、符号バッファとして用いるメモリである。
【００３８】
ＡＳＩＣ６６は、画像処理用のハードウェア要素を有する画像処理用途向けのＩＣである。ＨＤＤ６８は、画像の蓄積、文書データの蓄積、プログラムの蓄積、フォントデータの蓄積、フォームの蓄積などを行うためのストレージである。また、オペレーションパネル７０は、ユーザからの入力操作を受け付けると共に、ユーザに向けた表示を行う操作部である。
【００３９】
画像の読み取りは、コピーアプリ２２、ファックスアプリ２３及びスキャナアプリ２４にて要求が発生し、プラットフォーム層６を通じて、ハードウェア資源４を使用して画像の読み取りを行う。読み取った画像は、図２のシステムメモリ６２又はローカルメモリ６７に記憶される。以下、コピー動作を例にして、画像の読み取りについてもう少し詳しく説明する。
【００４０】
画像を読み取るために、まず、ユーザは原稿を画像形成装置のエンジン１２０のスキャナ部にセットする。オペレーションパネル７０から、コピー条件の指示をして、オペレーションパネル７０のスタートキーを押下することで、スキャン動作がスタートする。
【００４１】
コピー開始の指示を受けたコントローラ６０はＰＣＩバスを経由してエンジン１２０にスキャンを開始するように指示する。ここで、エンジン１２０の構成について図３を参照して説明する。なお、紙搬送部は省略してある。
【００４２】
図３は、エンジンの概略構成例を示す図である。原稿の画像をＣＣＤ１２０１で読み取り、読み取ったアナログ信号レベルをＡ／Ｄ変換してから、シェーディング補正、ＭＴＦ補正、γ補正等の画像処理を行う入力用画像処理部１２０２を経由して、画像シフト部（ＳＦＴ）１２０３で主走査方向のシフト処理を行う。
【００４３】
シフト処理後のデータは、ユーザに指定された倍率で拡大／縮小等の変倍処理を行う変倍処理部１２０４を経由して、圧縮器（ＥＮＣ）１２０５で多値画像データを符号に変換され、ＰＣＩバスのプロトコルを実行する部分とＤＭＡＣとからなるＰＣＩ部１２０６で、コントローラ６０のＡＳＩＣ６６を経由して、システムメモリ６２又はローカルメモリ６７に保存される。
【００４４】
次に、プリント出力処理を説明する。システムメモリ６２又はローカルメモリ６７への画像の読み込みが終了すると、コントローラ６０はエンジン１２０に出力する指示を発行し、エンジン１２０は指示に従って、ＰＣＩ部１２０６がＰＣＩバスを経由して、コントローラ６０から画像データを読み込もうとする。
【００４５】
つまり、エンジン１２０はＰＣＩのリードトランザクションを発生し、ＡＳＩＣ６６に対してリード要求を出す。ＡＳＩＣ６６は要求に応じてシステムメモリ６２又はローカルメモリ６７から画像データを読み出して、エンジン１２０へ渡す。
【００４６】
エンジン１２０のＰＣＩ部１２０６がコントローラ６０から画像データを受取ると伸長部（ＤＥＣ）１２０７で符号データを伸長（復号）して元のデータに戻し、画像シフト処理部１２０８で画像出力のためのシフト処理を行う。
【００４７】
シフト処理後のデータは、出力用画像処理１２０９を経由して、感光体に描画するためのレーザードライバボードＬＤＢ１２１０へ最終段の画像データを渡し、転写、現像、定着され、用紙に印字されて排出トレイに出力される。
【００４８】
＜実施例１に係る融合機の主要機能構成について＞
図４は、実施例１に係る融合機の主要機能構成を示すブロック図である。図４に示すように融合機１は、ＩＭＨ４１、エンジン１２０、メモリ１３０、デバイスドライバ１４０、ＨＤＤ６８を含む。
【００４９】
また、ＩＭＨ４１は、書込設定手段４１１と退避処理手段４１２とを含む。書込設定手段４１１は、アプリケーション層５からの要求を受けて、メモリ１３０（システムメモリ６２又はローカルメモリ６７）の記憶領域を獲得し、メモリ１３０への画像データの書き込みの仕方を設定する。次に、書込設定手段４１１は、書き込みに関する設定情報が記載されたポインタをエンジン１２０に出力する。
【００５０】
エンジン１２０は、書込設定手段４１１より取得したポインタから設定情報を読み出し、読み出した設定情報を解釈して、解釈した設定情報に設定された書込設定値に従って画像データをメモリ１３０に書き込んでいく。
【００５１】
ここで、図５は、エンジン１２０がメモリ上に直接データを書き込む例を示す図である。エンジン１２０が、ＩＭＨ４１から書込設定値が設定された設定情報を記載したポインタを取得し、書込設定値に基づいて、順に記憶領域に画像データを書き込んでいく。
【００５２】
また、記憶領域１から８まで順に画像データを書き込むと、設定されたメモリ１３０上の記憶領域はフルになってしまうので、記憶領域１に戻り、記憶領域１を記憶領域９として、データを書き込む。同様にして、記憶領域２を記憶領域１０、記憶領域３を記憶領域１１とすることで、メモリ１３０を繰り返し使用することができる。
【００５３】
図５に示す例では、メモリ１３０を８つの記憶領域に分割して、これらの記憶領域を繰り返し使用したが、メモリ１３０は、８分割に限定されることはなく、また、必ずしも連続の空き記憶領域を使用することに限定されない（書込設定値が不連続の空き記憶領域を指定する場合もあり得る）。
【００５４】
図４に戻り、ＩＭＨ４１は、Ｗｒｉｔｅポイントを全て設定し、ハードウェア資源４を制御するデバイスドライバ１４０に設定情報を出力する。また、ＩＭＨ４１は、ＳＲＭ３９を経由して、エンジン１２０に対して画像データ読み取り開始の指示を出力する。エンジン１２０は、読み取り開始の指示を受けて、図５に示すようにメモリ１３０上に画像データを書き込んでいく。
【００５５】
次に、デバイスドライバ１４０は、ポイント設定手段１４０１、検知手段１４０２を含む。ポイント設定手段１４０１は、ＩＭＨ４１から取得した設定情報に基づいて２つのみチェックポイントを設定する。
【００５６】
検知手段１４０２は、エンジン１２０が画像データをメモリ１３０上に書き込んでいくに従って、エンジン１２０がチェックポイントを通過したことを検知する。つまり、検知手段１４０２は、チェックポイントまで画像データが書き込まれたことを検知する。
【００５７】
また、ポイント設定手段１４０１は、検知手段１４０２により検知されたチェックポイントを、次のチェックポイントに再設定する。
【００５８】
ここで、図６を用いてチェックポイントの再設定について説明する。図６は、チェックポイントを動的に変更する例を示す図である。図６に示すように、画像データの書込みに関しては、図５に示す処理と同様であるが、図６では、ポイント設定手段１４０１がチェックポイントを動的に再設定していく。
【００５９】
まず、ポイント設定手段１４０１は、チェックポイント１（図６に示す記憶領域右下の四角枠番号１であり以下同様に表現する）とチェックポイント２にチェックポイントを設定する。次に、検知手段１４０２が、エンジン１２０からの記憶領域１への画像データの書き込み終了を検知する。
【００６０】
次に、エンジン１２０による記憶領域２への画像データの書き込みが終了する前に、ポイント設定手段１４０１は、チェックポイントをチェックポイント１から未記憶の領域であるチェックポイント３に再設定する。
【００６１】
以下、同様にして、チェックポイント２に設定されたチェックポイントはチェックポイント４に再設定され、チェックポイント３に設定されたチェックポイントはチェックポイント５に再設定される。このように２つのチェックポイントは、検知手段１４０２により、交互に検知されるように記憶領域に対して再設定される。
【００６２】
つまり、始めにチェックポイント１に設定されたチェックポイントは１、３、５、７の順に設定されていき、始めにチェックポイント２に設定されたチェックポイントは２、４、６、８の順に設定されていく。これより、有効なチェックポイントは、２つあれば動作可能となる。
【００６３】
図４に戻り、検知手段１４０２は、エンジン１２０がチェックポイントを通過する度に検知し、退避処理手段４１２に検知した旨通知する。退避処理手段４１２は、検知手段１４０２より通知を受けると、検知したチェックポイントに対応した記憶領域の画像データをＨＤＤ６８に退避する。
【００６４】
ここで、図７は、画像データの退避処理の例を示す図である。図７に示す処理は、図５、図６に示す処理と同様の処理を行うことが前提である。図７に示すように、検知手段１４０２が、図６に示すように設定されるチェックポイントを検知し、検知したチェックポイントをＩＭＨ４１に通知する。
【００６５】
ＩＭＨ４１は、通知されたチェックポイントに対応する記憶領域の画像データを、通知された順にＨＤＤ６８に退避する。図７に示す例では、記憶領域１、２、３、・・・の順に各記憶領域に対応する画像データがＨＤＤ６８に退避される。
【００６６】
また、図８は、画像データが長尺である場合の退避処理の例を示す図である。基本的には、図７に示すようにＩＭＨ４１は、通知されたチェックポイントの順に画像データを退避するが、図８に示す例では、画像データが長尺であるため、メモリが繰り返し使用されている。よって、画像データが退避される記憶領域の順序は、記憶領域１、２、３、４、・・・８、９（記憶領域１）、１０（記憶領域２）、１１（記憶領域３）・・・となる。
【００６７】
このとき、チェックポイントの設定順は、始めにチェックポイント１に設定されたチェックポイントは１、３、５、７、１、３、・・・の順に設定されていき、始めにチェックポイント２に設定されたチェックポイントは２、４、６、８、２、４、・・・の順に設定されていく。
【００６８】
＜画像データがカラー画像の場合＞
カラーの画像データの場合、エンジン１２０は、Ｃ、Ｍ、Ｙ、Ｋ各色の画像データを同時に書き込んでいく。その結果、デバイスドライバ１４０に含まれる検知手段１４０２がチェックポイントを同時に検知することもある。
【００６９】
ＩＭＨ４１は、デバイスドライバ１４０からチェックポイント通過の通知をうけて、ＣＭＹＫの各色の画像データの退避を行うが、ＨＤＤ６８は１台しかないため、処理をキューイングして退避処理を行う。
【００７０】
退避処理をキューイングするため、退避したい画像データがＨＤＤ６８に退避完了する前に、エンジン１２０によってデータを書き込む領域が、退避している領域と同じ領域になってしまうとＮＧとなる（理由は後述する）。よって、ＨＤＤ６８の転送速度は、最低でもエンジン１２０の書き込む速度より速い必要がある。
【００７１】
ここで、図９を用いて、画像データが、カラーであり、かつ、長尺である（以下、カラー長尺画像という）場合について説明する。図９は、カラー長尺画像の退避処理の例を示す図である。
【００７２】
図９に示すように、ＩＭＨ４１は、Ｃ、Ｍ、Ｙ、Ｋの各色の画像データに対して、検知手段１４０２によりチェックポイントを通過したこと（チェックポイントまでデータが記憶されたこと）を通知されると、各色（ＣＭＹＫ）の記憶領域から画像データをＨＤＤ６８に退避しようとする。
【００７３】
このとき、前述したように、ＨＤＤ６８の転送速度が、エンジン１２０の書き込む速度よりも速ければ問題ないが、ＨＤＤ６８の転送速度が、エンジン１２０の書き込む速度よりも遅いなどの原因により、画像データのＨＤＤ６８への転送に遅延が生じる場合がある。
【００７４】
仮に遅延が発生したとし、エンジン１２０が画像データを同じ記憶領域に書き込むまでに、その遅れを解消することができない場合は、エラーを発生させてユーザに異常を知らせる必要がある。
【００７５】
図１０は、異常条件テーブルの一例を示す図である。図１０に示すように、ここでは、２つの条件を設定しておく。まず、条件１は、各色（ＣＭＹＫ）について、画像データの退避処理が終了する前に、次の退避要求がきた場合、異常と判断する。
【００７６】
条件１について、退避処理が終了していないときに、検知手段１４０２により、次の領域に対してデータの書き込みが終了したことが検知された場合、退避処理について遅延が発生していることになる。アプリケーションが多重に動作している融合機においては、このような状態が起こりえる。
【００７７】
しかしながら、条件１のように、退避処理に遅延が発生したとしても、画像データがすぐには異常画像とはならないため、動作上の異常であるとしてオペレーションパネル７０などに警告を表示させてユーザに注意を喚起する。
【００７８】
次に、条件２は、各色（ＣＭＹＫ）について、画像データの退避処理が終了する前に、退避処理を行なっている領域の直前の領域の退避要求がきた場合、異常と判断する。
【００７９】
条件２について、退避処理が終了していないときに、検知手段１４０２により、退避処理を行っている領域の直前の領域に対してデータの書き込みが終了したことが検知された場合、エンジン１２０は、退避処理を行っている領域にデータを書き込むことになり、退避処理をしているデータが上書きされる可能性が出てくる。
【００８０】
つまり、記憶領域へのデータの書き込みが一周して、また同じ記憶領域にデータを書き込む際、前のデータの退避処理が終了していなければ、条件２によって、異常と判断される。条件２の異常の場合、特定の周期で一部の画像が繰り返すような異常画像となってしまう。
【００８１】
よって、条件２による異常が発生した場合には、ユーザに異常が発生した旨を表示すると共に、係る処理を停止させるなどの処理を行って異常画像の発生を防ぐ。
【００８２】
また、前述した異常判定については、図１０に示すような条件テーブルをＩＭＨ４１が保持し、デバイスドライバ１４０より通知されるチェックポイントに対して、ＩＭＨ４１が、条件テーブルに含まれる条件を満たすか否かの判定を行なうようにすればよい。
【００８３】
＜実施例１に係る融合機のデータ書込みに関する処理について＞
図１１は、実施例１に係る融合機のデータ書込みに関する処理の例を示すフローチャートである。ステップ１１０１では、エンジン１２０が、ＩＭＨ４１からメモリ１３０への書き込みに関する情報である書込設定値を取得する。ステップ１１０１に続いてステップ１１０２に進み、エンジン１２０が、書込設定値に基づいて、画像データをメモリ１３０に対して記憶領域単位で書き込む。
【００８４】
ステップ１１０２に続いてステップ１１０３に進み、検知手段１４０２が、エンジン１２０が記憶領域に設定されたチェックポイントを通過したか否かを検知する。検知手段１４０２により検知がなされた場合、ＩＭＨ４１に通知し、ステップ１１０３からステップ１１０４に進み、ＩＭＨ４１が、画像データの退避処理を行う。
【００８５】
画像データの退避処理については、図７〜図９に示す通りである。簡単に言うと、エンジン１２０がチェックポイントを通過した場合、通過したチェックポイントに対応する記憶領域の画像データがＨＤＤ６８に退避される。
【００８６】
ステップ１１０４に続いてステップ１１０５に進み、ポイント設定手段１４０１が、チェックポイントの位置を再設定する。再設定の仕方は前述したとおり、２つのチェックポイントを用いて、交互に検知手段１４０２により検知されるように再設定する。なお、ステップ１１０５の処理はステップ１１０４の処理が終了しなくても行われるようにする。
【００８７】
ステップ１１０５に続いてステップ１１０６に進み、エンジン１２０がメモリ１３０に書き込むべき画像データを全て書き込んだか否かを判定する。ステップ１１０６の判定結果がＮＯである場合、ステップ１１０２に戻り、判定結果がＹＥＳである場合、処理を終了する。
【００８８】
以上、実施例１に係る融合機によれば、長尺の画像データやカラーの画像データに対して、エンジンが、画像データを書き込むメモリの記憶領域を自動的に取得することで、メモリを効率よく使用することができる。
【００８９】
また、長尺の画像データやカラーの画像データに対して適切な退避処理を行うことで、少ないメモリ容量のメモリを効率よく使用することができる。
【００９０】
また、２つのチェックポイントを用いて退避処理を行う際、退避処理、又は書込み処理に異常が発生していないかどうかを判定することで、異常画像の発生を事前に防ぐことができる。
【００９１】
以上、本発明の実施例について詳述したが、本発明は係る特定の実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【００９２】
なお、実施例１において説明した処理内容をプログラムとして記載し、このプログラムをコンピュータに実行させて前述した処理を画像形成装置に実行させることも可能である。また、このプログラムを記録媒体に記録し、このプログラムが記録された記録媒体をコンピュータに読み取らせて、前述した処理を画像形成装置に実行させることも可能である。
【図面の簡単な説明】
【００９３】
【図１】本発明に係る融合機の一実施例の構成図。
【図２】融合機１の一実施例のハードウェア構成図。
【図３】エンジンの概略構成例を示す図。
【図４】実施例１に係る融合機の主要機能構成を示すブロック図。
【図５】エンジンがメモリ上に直接データを書き込む例を示す図。
【図６】チェックポイントを動的に変更する例を示す図。
【図７】画像データの退避処理の例を示す図。
【図８】画像データが長尺である場合の退避処理の例を示す図。
【図９】カラー長尺画像の退避処理の例を示す図。
【図１０】異常条件テーブルの一例を示す図。
【図１１】実施例１に係る融合機のデータ書込みに関する処理の例を示すフローチャート。
【符号の説明】
【００９４】
１  融合機
４１  ＩＭＨ
６２  システムメモリ
６３  ローカルメモリ
６８  ＨＤＤ
７０  オペレーションパネル
１２０  エンジン
４１１  書込設定手段
４１２  退避処理手段
１３０  メモリ
１４０  デバイスドライバ
１２０１  ＣＣＤ
１４０１  ポイント設定手段
１４０２  検知手段
【図１】
2010016541.tif 000003
【図２】
2010016541.tif 000004
【図３】
2010016541.tif 000005
【図４】
2010016541.tif 000006
【図５】
2010016541.tif 000007
【図６】
2010016541.tif 000008
【図７】
2010016541.tif 000009
【図８】
2010016541.tif 000010
【図９】
2010016541.tif 000011
【図１０】
2010016541.tif 000012
【図１１】
2010016541.tif 000013