(57)【特許請求の範囲】
【請求項１】
印刷装置に画像を印刷させる印刷制御装置であって、
前記印刷制御装置に接続されている外部装置から印刷ジョブデータを受信する受信手段と、
ストレージと、
第１の接続手段を介して前記ストレージと接続され、前記受信手段により受信された印刷ジョブデータに基づき画像データを作成する第１のプロセッサと、
前記第１の接続手段とは異なる第２の接続手段を介して前記ストレージと接続され、前記第１のプロセッサにより作成された画像データに基づき前記印刷装置に画像を印刷させる、前記第１のプロセッサとは異なる第２のプロセッサと、
前記第１のプロセッサと前記第２のプロセッサとを接続する、前記第１の接続手段と前記ストレージと前記第２の接続手段とを介した接続とは異なる通信路と、を有し、
前記第２のプロセッサは、前記受信手段により受信された印刷ジョブデータを前記第２の接続手段を介して前記ストレージに格納し且つ前記通信路を介して当該格納を前記第１のプロセッサに通知し、前記第１のプロセッサは当該通知に応じて、前記ストレージに格納されている当該印刷ジョブデータを前記第１の接続手段を介して前記ストレージから読み出して、読み出された当該印刷ジョブデータに基づき画像データを作成することを特徴とする印刷制御装置。
【請求項２】
前記第２のプロセッサは、前記第１のプロセッサにより作成された画像データを取得し、取得された画像データに基づき、前記印刷装置に画像を印刷させることを特徴とする請求項１に記載の印刷制御装置。
【請求項３】
前記第２のプロセッサは、前記通信路を介して、前記第１のプロセッサにより作成された画像データを取得することを特徴とする請求項２に記載の印刷制御装置。
【請求項４】
前記第１のプロセッサは、前記第１のプロセッサにより作成された画像データを前記第１の接続手段を介して前記ストレージに格納し、前記第２のプロセッサは、前記ストレージに格納されている当該画像データを前記第２の接続手段を介して前記ストレージから読み出すことにより、当該画像データを取得することを特徴とする請求項２に記載の印刷制御装置。
【請求項５】
前記第２のプロセッサは、前記通知として、前記ストレージへの前記印刷ジョブデータの格納の開始を前記第２のプロセッサに通知することを特徴とする請求項２乃至４のいずれか１項に記載の印刷制御装置。
【請求項６】
前記第２のプロセッサは前記印刷ジョブデータを前記ストレージに順次格納し、順次格納された当該印刷ジョブデータに対応する画像データを順次取得し、当該取得に応じた通知を前記ストレージへの格納の開始の通知として、前記第１のプロセッサに通知することを特徴とする請求項５に記載の印刷制御装置。
【請求項７】
前記第２のプロセッサは、前記印刷ジョブデータの一部のデータを前記ストレージに順次格納し、前記第１のプロセッサは、当該一部のデータを順次読み出すことを特徴とする請求項１乃至６のいずれか１項に記載の印刷制御装置。
【請求項８】
前記第２のプロセッサは、前記印刷ジョブデータに基づく１ページの画像における一部の領域に対応するデータを順次格納することを特徴とする請求項７に記載の印刷制御装置。
【請求項９】
前記第１のプロセッサと前記第２のプロセッサは、それぞれ別の回路が有するプロセッサであることを特徴とする請求項１乃至８のいずれか１項に記載の印刷制御装置。
【請求項１０】
外部装置から受信された印刷ジョブデータに基づいて印刷装置に画像を印刷させる印刷制御装置であって、ストレージと、第１の接続手段を介して前記ストレージと接続され、当該受信された印刷ジョブデータに基づき画像データを作成する第１のプロセッサと、前記第１の接続手段とは異なる第２の接続手段を介して前記ストレージと接続され、前記第１のプロセッサにより作成された画像データに基づき前記印刷装置に画像を印刷させる、前記第１のプロセッサとは異なる第２のプロセッサと、前記第１のプロセッサと前記第２のプロセッサとを接続する、前記第１の接続手段と前記ストレージと前記第２の接続手段とを介した接続とは異なる通信路と、を有する印刷制御装置の制御方法であって、
前記第２のプロセッサが、前記受信された印刷ジョブデータを前記第２の接続手段を介して前記ストレージに格納し且つ前記通信路を介して当該格納を前記第１のプロセッサに通知し、前記第１のプロセッサが当該通知に応じて、前記ストレージに格納されている当該印刷ジョブデータを前記第１の接続手段を介して前記ストレージから読み出して、読み出された当該印刷ジョブデータに基づき画像データを作成するよう前記印刷制御装置を制御することを特徴とする印刷制御装置の制御方法。
【請求項１１】
請求項１０に記載の印刷制御装置の制御方法をコンピュータにより実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷媒体に画像を印刷する印刷制御装置、印刷制御装置の制御方法、およびプログラムに関する。
【背景技術】
【０００２】
従来の画像形成装置では、画像形成装置本体の印字機能を制御する本体制御部とは別に、プリンタコントローラまたはＰＤＬコントローラと呼ばれる印刷ジョブデータの処理用制御部を用いる場合がある。上記ＰＤＬコントローラは、ページ記述言語を処理する制御部である。
【０００３】
印字機能の印字が滞りなく行われるように、本体制御部が、画像形成装置本体の各駆動系を制御する。この間に、並行して、印刷ジョブデータ処理用の制御部は、印刷ジョブデータを、ホストＰＣから受け取り、画像形成装置本体が、処理可能な画像データに変換する。この並列処理によって、画像データの作成と画像形成装置の印字動作とが最適かつ高速に実行される。
【０００４】
この印刷ジョブデータ処理用の制御装置において、データを蓄積するために、ハードディスク等のストレージが接続されている。このストレージのデータは、本体制御装置と印刷ジョブデータ制御装置との双方が関係する。
【０００５】
たとえば、印刷ジョブデータ制御装置は、ホストＰＣから受信した印刷ジョブをストレージに記憶する。ホストＰＣから受信した印刷ジョブデータをストレージに記憶する理由は、ユーザが、同じデータを必要部数分、印刷して再印刷する場合に、２度目のデータ転送を省くためである。また、たとえば、印刷ジョブデータ制御装置が作成した印刷用の画像データを、プリンタ本体で印刷するときに、本体制御装置がストレージにアクセスし、そのストレージのデータを読み出す。
【０００６】
従来の画像形成装置において、ＰＤＬコントローラ側に、ストレージを有することが知られている（たとえば、特許文献１参照）。また、プリンタ本体の本体制御部側に、ストレージを有する場合もあるが、ＰＤＬコントローラ側、プリンタ本体の本体制御部側のどちらかにストレージが接続されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００５−１０４０４１号公報（図３）
【発明の概要】
【発明が解決しようとする課題】
【０００８】
図１６は、本体制御部２００１にストレージ２０１２が接続されている従来の画像形成装置ＰＦ１１を示す図である。外部Ｉ／Ｆ部２００７は、本体制御部２００１に接続されている。本体制御部２００１が制御するプリンタに、ページ記述言語の処理を加速するプリンタコントローラ２０１３を追加できる場合、従来の画像形成装置ＰＦ１１が採用される。
【０００９】
外部Ｉ／Ｆ部２００７から入力された印刷ジョブデータは、まず、本体制御部２００１のＲＡＭ２００４に記憶され（経路１６００１）、受信処理された後に、ストレージ２０１２に保存される（経路１６００２）。ストレージ２０１２に保存された印刷ジョブデータは、プリンタコントローラ２０１３でレンダリング処理するために、まず、ストレージ２０１２から読み出し、本体制御装置のＲＡＭ２００４に書き込まれる（経路１６００３）。
【００１０】
書き込まれた印刷ジョブデータは、プロセッサ間通信路２０１９を通って、プリンタコントローラ２０１３へ転送され、プリンタコントローラ２０１３のＲＡＭ２０１６に書き込まれる（経路１６００４）。プリンタコントローラ２０１３が、ＲＡＭ２０１６の印刷ジョブデータを実行する。レンダリングされた画像データは、プロセッサ間通信路２０１９を通って、本体制御部２００１のＲＡＭ２００４に書き込まれ（経路１６００５）、本体制御部２００１は、ＲＡＭ２００４の画像データを印刷制御部２０１０に印刷させる（経路１６００６）。
【００１１】
このときに、本体制御部２００１のデータフローを考える。経路１６００１、経路１６００３、経路１６００５のように、ＲＡＭ２００４への書き込みが３回実行され、また、経路１６００２、経路１６００４、経路１６００６のように、ＲＡＭ２００４からの読み出しが３回実行される。
【００１２】
これらの経路のうちで、経路１６００３と経路１６００４とは、プリンタコントローラ２０１３が印刷ジョブデータを処理するに際して、データ転送する経由路として使用されているだけである。経路１６００３、１６００４をデータ転送するので、従来の画像形成装置ＰＦ１１では、ＲＡＭ２００４へのアクセスに関して、メモリバスが輻輳し、高速化に限界があるという問題がある。
【００１３】
また、プロセッサ間通信路２０１９では、経路１６００４、経路１６００５のように、データ転送が２回実行される。このうちで、経路１６００４は、プリンタコントローラ２０１３が印刷ジョブデータを処理するに際して、データ転送する経由路として使用されているだけである。この経路１６００４をデータ転送するので、従来の画像形成装置ＰＦ１１では、プロセッサ間通信路２０１９で、通信路が輻輳し、高速化に限界があるという問題がある。
【００１４】
図１７は、プリンタコントローラ２０１３にストレージ２０１２が接続されている従来の画像形成装置ＰＦ１２を示す図である。外部Ｉ／Ｆ部１０００１は、プリンタコントローラ２０１３に接続されている。本体制御部２００１が制御するプリンタの印刷処理速度よりも、ページ記述言語を処理するプリンタコントローラ２０１３の処理速度が速い場合に、従来の画像形成装置ＰＦ１２が採用される。すなわち、ストレージ２０１２に対し、印刷ジョブデータだけではなく、レンダリング済みの画像データを蓄積できる画像形成装置として、従来の画像形成装置ＰＦ１２が採用される。
【００１５】
外部Ｉ／Ｆ部１０００１から入力された印刷ジョブデータは、プリンタコントローラ２０１３のＲＡＭ２０１６に書き込まれる（経路１７００１）。この書き込まれた印刷ジョブデータは、その後に、ページ毎のファイルとして、ストレージ２０１２のファイルシステムに格納される（経路１７００２）。
【００１６】
プリンタコントローラ２０１３は、ストレージ２０１２のファイルシステムに格納され、各ページに分かれている印刷ジョブデータを読み出し、プリンタコントローラ２０１３のＲＡＭ２０１６に書き込む（経路１７００３）。そして、プリンタコントローラ２０１３は、ＲＡＭ２０１６の印刷ジョブデータを、画像データへレンダリングし、レンダリングされた画像データ（レンダリング済み画像データ）は、ストレージ２０１２に格納される（経路１７００４）。
【００１７】
ストレージ２０１２に保存されているレンダリング済み画像データは、本体制御部２００１で印刷処理するために、まず、ストレージ２０１２から読み出し、プリンタコントローラ２０１３のＲＡＭ２０１６に書き込まれる（経路１７００５）。ＲＡＭ２０１６に書き込まれたレンダリング済み画像データは、プロセッサ間通信路２０１９を通って、本体制御部２００１へ転送され、本体制御部２００１のＲＡＭ２００４に書き込まれる（経路１７００６）。
【００１８】
本体制御部２００１は、ＲＡＭ２００４に書き込まれた画像データを用いて、印刷制御部２０１０とメカ制御部２００９とを駆動し、印刷する（経路１７００７）。
【００１９】
このときに、プリンタコントローラ２０１３のデータフローを考える。経路１７００１、経路１７００３、経路１７００５のように、ＲＡＭ２０１６への書き込みが３回実行され、また、経路１７００２、経路１７００４、経路１７００６のように、ＲＡＭ２０１６からの読み出しが３回実行される。
【００２０】
これらの経路のうちで、経路１７００５と経路１７００６とは、本体制御部２００１が画像データを印刷するに際して、データ転送する経由路として使用されているだけである。これら経路１７００５、１７００６をデータ転送するので、従来の画像形成装置ＰＦ１２では、ＲＡＭ２０１６へのアクセスに関して、メモリバスが輻輳し、高速化に限界があるという問題がある。
【００２１】
また、プロセッサ間通信路２０１９では、経路１７００６のデータ転送が行われる。経路１７００６は、本体制御部２００１が画像データを印刷するに際して、データ転送する経由路として使用されているだけである。上記のように、従来の画像形成装置ＰＦ１２では、プロセッサ間通信路２０１９で、プロセッサ間コマンドだけではなく、画像データも転送する必要があり、低コストな通信系を用いることができないという問題がある。
【００２２】
本発明は、印刷装置に画像を印刷させるプロセッサの負荷を抑えた上で、印刷ジョブデータに基づき画像データを作成するプロセッサに、印刷ジョブデータを適切に取得させることができる印刷制御装置、印刷制御方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００２３】
本発明の印刷制御装置は、印刷装置に画像を印刷させる印刷制御装置であって、前記印刷制御装置に接続されている外部装置から印刷ジョブデータを受信する受信手段と、ストレージと、第１の接続手段を介して前記ストレージと接続され、前記受信手段により受信された印刷ジョブデータに基づき画像データを作成する第１のプロセッサと、前記第１の接続手段とは異なる第２の接続手段を介して前記ストレージと接続され、前記第１のプロセッサにより作成された画像データに基づき前記印刷装置に画像を印刷させる、前記第１のプロセッサとは異なる第２のプロセッサと、前記第１のプロセッサと前記第２のプロセッサとを接続する、前記第１の接続手段と前記ストレージと前記第２の接続手段とを介した接続とは異なる通信路と、を有し、前記第２のプロセッサは、前記受信手段により受信された印刷ジョブデータを前記第２の接続手段を介して前記ストレージに格納し且つ前記通信路を介して当該格納を前記第１のプロセッサに通知し、前記第１のプロセッサは当該通知に応じて、前記ストレージに格納されている当該印刷ジョブデータを前記第１の接続手段を介して前記ストレージから読み出して、読み出された当該印刷ジョブデータに基づき画像データを作成することを特徴とする。
【発明の効果】
【００２４】
本発明によれば、印刷装置に画像を印刷させるプロセッサの負荷を抑えた上で、印刷ジョブデータに基づき画像データを作成するプロセッサに、印刷ジョブデータを適切に取得させることができる。
【図面の簡単な説明】
【００２６】
【図１】実施例１である画像形成装置ＰＦ１を用いたシステムを示す図である。
【図２】本発明の画像形成装置ＰＦ１の構成を示すブロック図である。
【図３】画像形成装置ＰＦ１におけるデータフローの説明図である。
【図４】ストレージ２０１２におけるファイルシステムを示す図である。
【図５】ストレージ２０１２とマルチプレクサ２０１１とを示す図である。
【図６】画像形成装置ＰＦ１におけるＲＡＭ上のデータを示す図である。
【図７】画像形成装置ＰＦ１におけるプロセッサ間コマンドを示す図である。
【図８】プリンタコントローラ２０１３の動作を示すフローチャートである。
【図９】本体制御部２００１で１頁分画像データを印刷するフローチャートである。
【図１０】本発明の実施例２である画像形成装置ＰＦ２を示すブロック図である。
【図１１】実施例２におけるデータフローの説明図である。
【図１２】ストレージ２０１２のファイルシステムを示す図である。
【図１３】実施例２におけるプロセッサ間コマンドを示す図である。
【図１４】プリンタコントローラ２０１３の動作を示すフローチャートである。
【図１５】実施例２における本体制御部２００１の動作のフローチャートである。
【図１６】従来の画像形成装置ＰＦ１１を示す図である。
【図１７】従来の画像形成装置ＰＦ１２を示す図である。
【発明を実施するための形態】
【００２７】
発明を実施するための形態は、次の実施例である。
【実施例１】
【００２８】
図１は、本発明の実施例１である画像形成装置ＰＦ１を用いたシステムの構成を示す図である。画像形成装置ＰＦ１は、大判のインクジェットプリンタであり、本体制御部２００１と、プリンタコントローラ２０１３と、印字手段であるインクヘッド１００４と、給紙手段であるロール紙給紙ユニット１００５とを有する。
【００２９】
インクヘッド１００４で印刷されたロール紙は、図示しないカッターによってカットされ、排紙部１００６に排紙される。ユーザは、操作部１００７を介して、画像形成装置ＰＦ１の各種操作を指示する。
【００３０】
ＬＡＮのネットワーク１００８が、画像形成装置ＰＦ１に接続され、ホストＰＣ１００９は、ＬＡＮのネットワーク１００８に接続されている。実施例１では、ホストＰＣ１００９が、ラスタ表記のプリンタ言語のジョブデータを生成している。
【００３１】
なお、画像形成装置ＰＦ１は、インクジェット方式の大判プリンタであるが、複数の制御部を有する画像形成装置であれば、電子写真方式でも、サーマルヘッド方式でも、昇華型でも、像形成方式に関わらずに、適用可能である。また、大判プリンタではなく、デスクトップ型のカセット給紙や手差し給紙のプリンタや、複数の給紙段を有するプリンタや、スキャナやＦＡＸと組み合わされた多機能型の複合機にも、画像形成装置ＰＦ１を適用することができる。
【００３２】
また、画像形成装置ＰＦ１は、外部Ｉ／Ｆ部２００７としてネットワーク接続ユニットを有するが、外部Ｉ／Ｆ部２００７として、ＵＳＢやＩＥＥＥ１３９４、ｅＳ−ＡＴＡ等を有するようにしてもよい。
【００３３】
図２は、画像形成装置ＰＦ１の構成を示すブロック図である。本体制御部２００１は、画像形成装置ＰＦ１における印刷機能を制御する。ＣＰＵ２００２は、本体制御部２００１の中央演算装置である。本体制御部２００１は、ＲＯＭ２００３から読み出したプログラムを実行する。
【００３４】
ＲＡＭ２００４は、外部から受信した印刷ジョブデータやプリンタコントローラから受信した画像データを格納するためのデータメモリ領域と、本体制御部２００１がプログラムを実行するためのワークメモリ領域とを、それぞれ独立して確保している。不揮発性メモリ２００５は、ＦｌａｓｈＲＯＭやＥＥＰＲＯＭで構成され、画像形成装置ＰＦ１に現在設定されている印刷媒体の種類のような設定値を、電力供給から独立して、不揮発に記憶する。本体制御部２００１の画像処理回路２００６は、プリンタコントローラ２０１３から受信した画像データの各画素データを処理し、インクヘッドに送るヘッドデータ信号を出力する。つまり、画像処理回路２００６は、画像データに基づいて、画像形成する回路する。
【００３５】
外部Ｉ／Ｆ部２００７は、外部インタフェースであり、ＩＰプロトコルのようなネットワーク接続プロトコルによる送受信が可能である。操作部２００８は、ＣＰＵ２００２からのメッセージを、ＬＣＤやＬＥＤによってユーザに表示し、キー入力装置によってユーザからの指示を画像形成装置ＰＦ１に入力する。メカ制御部２００９は、図示しない給紙駆動部、カッター駆動部、排紙駆動部を制御し、用紙の搬送制御を行う。印刷制御部２０１０は、図示しないインク供給部、キャリッジ駆動部、ヘッド制御部を制御し、メカ制御部２００９と同期して、用紙上に印刷する。
【００３６】
マルチプレクサ２０１１は、本体制御部２００１とプリンタコントローラ２０１３とをストレージ２０１２に接続する。ストレージ２０１２に論理的に配置されているファイルシステムによって、本体制御部２００１とプリンタコントローラ２０１３とから、マルチプレクサ２０１１をアクセスすることができる。また、マルチプレクサ２０１１は、信号切り替え機能または信号選択機能を有し、それも、片方向だけではなく双方向で、信号切り替えまたは信号選択を実行する。
【００３７】
すなわち、マルチプレクサ２０１１は、本体制御部２００１が格納している印刷ジョブデータをストレージ２０１２に送信し、ストレージ２０１２に格納されている印刷ジョブデータを、プリンタコントローラ２０１３に送信する。
【００３８】
ストレージ２０１２は、ＨＤＤで形成され、プリンタコントローラ２０１３のデータを読み取り、プリンタコントローラ２０１３に書き込み可能であり、また本体制御部２００１のデータを読み取り、また本体制御部２００１に書き込み可能である。
【００３９】
プリンタコントローラ２０１３は、画像形成装置ＰＦ１における印刷ジョブデータのページ記述言語を画像データにレンダリングする機能を制御する。
【００４０】
ＣＰＵ２０１４は、プリンタコントローラ２０１３の中央演算装置であり、ＲＯＭ２０１５から読み出したプログラムを実行することによって制御する。ＲＡＭ２０１６は、ストレージ２０１２から受信した印刷ジョブデータや本体制御部２００１へ送信する画像データを格納するデータメモリ領域を有する。また、ＲＡＭ２０１６は、ＣＰＵ２０１４がプログラムを実行し、レンダリングを実行するためのワークメモリ領域を有する。
【００４１】
不揮発性メモリ２０１７は、ＦｌａｓｈＲＯＭやＥＥＰＲＯＭで構成され、プリンタコントローラ２０１３に現在設定されているフォントのような設定データが、電力供給から独立して、不揮発に記憶している。画像処理回路２０１８は、印刷ジョブデータを、画像データへレンダリングする。
【００４２】
プロセッサ間通信路２０１９は、本体制御部２００１とプリンタコントローラ２０１３との間の通信路であり、本体制御部２００１とプリンタコントローラ２０１３との間の指示コマンドの経路である。また、プロセッサ間通信路２０１９は、プリンタコントローラ２０１３でレンダリングされた画像データを、本体制御部２００１に転送する経路でもある。つまり、プロセッサ間通信路２０１９は、プリンタコントローラ２０１３が加工した画像データを、本体制御部２００１に送る経路であり、プリンタコントローラ２０１３と本体制御部２００１との間に、ストレージ２０１２を介した接続とは異なる通信路である。さらに、プロセッサ間通信路２０１９を介して、プリンタコントローラ２０１３と本体制御部２００１との間でコマンドを通信する。
【００４３】
次に画像形成装置ＰＦ１におけるデータフローについて説明する。
【００４４】
図３は、画像形成装置ＰＦ１におけるデータフローの説明図である。外部Ｉ／Ｆ部２００７から入力された印刷ジョブデータは、本体制御部２００１のＲＡＭ２００４に書き込まれる（経路３００１）。この書き込まれた印刷ジョブデータは、その後に、ページ毎のファイルとして、マルチプレクサ２０１１を経由し、ストレージ２０１２のファイルシステムに格納される（経路３００２）。
【００４５】
プリンタコントローラ２０１３は、マルチプレクサ２０１１を経由し、ストレージ２０１２のファイルシステムに格納されている各ページに分かれている印刷ジョブデータを読み出す。そして、プリンタコントローラ２０１３のＲＡＭ２０１６に書き込む（経路３００３）。ＲＡＭ２０１６の印刷ジョブデータを、プリンタコントローラ２０１３が、画像データへレンダリングする。レンダリングされた画像データは、プロセッサ間通信路２０１９を経由し、本体制御部２００１のＲＡＭ２００４に転送される（経路３００４）。本体制御部２００１は、ＲＡＭ２００４に書き込まれている画像データを用い、印刷制御部２０１０とメカ制御部２００９とを駆動し、印刷を実行する（経路３００５）。
【００４６】
本体制御部２００１が、外部Ｉ／Ｆ部２００７に接続され、画像形成装置ＰＦ１の外のホストＰＣから印刷ジョブデータを受信し、本体制御部２００１が受信した印刷ジョブデータは、ストレージ２０１２に保存される。プリンタコントローラ２０１３は、ストレージ２０１２の印刷ジョブデータを、本体制御部２００１が処理可能な画像データに加工し、本体制御部２００１に上記画像データを転送する回路である。本体制御部２００１は、受信した画像データを印刷させる回路である。
【００４７】
次に、実施例１におけるストレージ２０１２のデータファイルについて説明する。
【００４８】
図４は、画像形成装置ＰＦ１のストレージ２０１２におけるファイルシステムを示す図である。ストレージ２０１２は、１頁分書き込み済みの印刷ジョブデータファイル４００１（１頁分）と、本体制御部２００１から書き込み中の頁の印刷ジョブデータファイル４００２（１頁分）とを有する。ストレージ２０１２上で１頁づつ管理することによって、レンダリング可能な頁のデータを切り分けている。なお、画像形成装置ＰＦ１では、１頁分ごとにファイルを切り分けるが、複数頁を１ファイルとし、ファイル内の頁の節目のアドレスによって管理するようにしてもよい。
【００４９】
次に、画像形成装置ＰＦ１におけるマルチプレクサ２０１１について説明する。
【００５０】
図５は、画像形成装置ＰＦ１におけるストレージ２０１２とマルチプレクサ２０１１とを示す図である。本体制御部２００１とプリンタコントローラ２０１３とは、マルチプレクサ２０１１を介して、ストレージ２０１２のファイルに対するリードとライトとのアクセスが可能である。図５に示す例では、ファイル５００１とファイル５００２とは、それぞれ印刷ジョブデータの１頁分である。経路５００３は、本体制御部２００１からファイル５００１への書き込み経路であり、経路５００４は、ファイル５００１から本体制御部２００１への読み出し経路である。
【００５１】
一方、経路５００５は、プリンタコントローラ２０１３からファイル５００２への書き込み経路であり、経路５００６は、ファイル５００２からプリンタコントローラ２０１３への読み出し経路である。図５に示すように、ストレージ接続用のマルチプレクサ２０１１を用いることによって、プリンタコントローラ２０１３と本体制御部２００１との双方から、ストレージ２０１２のファイルにアクセスすることができる。
【００５２】
次に、画像形成装置ＰＦ１において、プリンタコントローラ２０１３のＲＡＭ２０１６に展開する画像データバンドと、本体制御部２００１のＲＡＭ２００４に展開する印刷用画像データバンドとについて説明する。
【００５３】
図６は、画像形成装置ＰＦ１におけるＲＡＭ上のデータを示す図である。図６には、プリンタコントローラ２０１３側のＲＡＭ２０１６と、本体制御部２００１側のＲＡＭ２００４とが図示されている。印刷ジョブデータの解析用ワークエリア６００１は、ストレージ２０１２からマルチプレクサ２０１１を経由して獲得された印刷ジョブデータを、データ解析のために記憶する。ディスプレイリスト６００２は、解析用ワークエリア６００１に格納されている印刷ジョブデータを解析し、作成されたディスプレイリストである。
【００５４】
画像データバンド６００３、６００４は、ディスプレイリスト６００２に基づいてレンダリングした画像データが格納されている画像データバンドである。そして、プリンタコントローラ２０１３がストレージ２０１２に書き込んでいる上記画像データの特定のページ内のバンドと、本体制御部２００１がストレージ２０１２から読み出している上記画像データの上記特定のページ内のバンドとが異なる。上記画像データバンドは、１頁のデータを横にスライスして分けたものであり、１頁分の画像データが大きいサイズであっても、メモリを節約して印字を実現する機構である。
【００５５】
また、上記画像データバンドの代わりに、画像データのページを想定するようにしてもよい。この場合、プリンタコントローラ２０１３がストレージ２０１２に書き込んでいる上記画像データのページと、本体制御部２００１がストレージ２０１２から読み出している上記画像データのページとが異なる。
【００５６】
プリンタコントローラ２０１３が、外部インタフェースに接続され、画像形成装置ＰＦ１の外のホストＰＣから印刷ジョブデータを受信し、プリンタコントローラ２０１３が受信した印刷ジョブデータは、ストレージ２０１２に保存される。プリンタコントローラ２０１３は、ストレージ２０１２に保存されている印刷ジョブデータを、本体制御部２００１が処理可能な画像データに加工し、ストレージ２０１２に上記画像データを書き込む回路である。本体制御部２００１は、ストレージ２０１２から上記画像データを読み込み、読み込んだ上記画像データを印刷する回路である。
【００５７】
画像形成装置ＰＦ１は、画像データバンド６００３、６００４の２バンド分によって、所謂ダブルバッファを構成するが、メモリが許されるならば、３バンド目、４バンド目、４バンド以降を格納する画像データバンドを設けるようにしてもよい。
【００５８】
画像データバンド６００５、６００６は、本体制御部２００１側のＲＡＭ２００４に格納されている印刷用の画像データバンドである。本体制御部２００１は、印刷用画像データバンド６００５、６００６の画像データを、印刷制御部２０１０に送ることによって、印刷を実行する。画像形成装置ＰＦ１では、印刷用画像データバンド６００５、６００６の２バンド分によって、所謂ダブルバッファを構成するが、メモリが許されるならば、３バンド目、４バンド目、４バンド以降を格納する画像データバンドを設けるようにしてもよい。
【００５９】
画像形成装置ＰＦ１でバンドにダブルバッファを用いる理由は、１バンドを印字中に次のバンドを転送できないことによって、印刷待ちが発生することを防ぐためである。また、画像形成装置ＰＦ１において、レンダリング用画像データバンド６００３、６００４側と、印刷用画像データバンド６００５、６００６側とで、１バンドの大きさは、同じサイズであるが、互いに異なるサイズであってもよい。また、メモリが豊富であれば、１バンドを１頁と同じサイズにし、ページメモリを構成するようにしてもよい。
【００６０】
次に、画像形成装置ＰＦ１におけるプロセッサ間のコマンド通信について説明する。
【００６１】
図７は、画像形成装置ＰＦ１におけるプロセッサ間コマンドを示す図である。頁保存開始コマンド７００１は、本体制御部２００１からプリンタコントローラ２０１３に対して、当該頁の印刷ジョブデータのストレージ２０１２への保存を開始させる。頁保存開始コマンド兼頁終了コマンド７００２は、次の頁の印刷ジョブデータのストレージ２０１２への保存を開始させる。頁保存開始コマンド兼頁終了コマンド７００２は、次の頁が無ければ、頁終了をプリンタコントローラ２０１３に伝えるために用いられる。なお、頁保存開始コマンド兼頁終了コマンド７００２は、図７では、バンド転送完了通知７００７と頁終了要求コマンド７００８との間に表示されているが、順序に依存関係はなく１頁分の印刷ジョブデータのストレージ２０１２への保存が完了したときに発行される。
【００６２】
頁保存開始コマンド７００１や頁保存開始コマンド兼頁終了コマンド７００２には、頁を特定するページＩＤ（ＰＩＤ）が割り振られる。図７に示す例では、頁保存開始コマンド７００１に、ＰＩＤとして１が割り当てられ、頁保存開始コマンド兼頁終了コマンド７００２に、ＰＩＤとして２が割り当てられている。
【００６３】
頁開始要求コマンド７００３は、プリンタコントローラ２０１３から本体制御部２００１へ送信され、本体制御部２００１に印刷開始を通知する。バンド転送要求コマンド７００４は、プリンタコントローラ２０１３から本体制御部２００１へ送信され、１バンド分の画像データの転送が可能になったことを、本体制御部２００１に通知する。バンド転送完了通知７００５は、本体制御部２００１からプリンタコントローラ２０１３に送信され、該当バンドの画像データを本体制御部２００１側へ転送する処理が完了したことを、プリンタコントローラ２０１３に通知する。バンド転送要求コマンド７００６は、次バンドのバンド転送要求であり、バンド転送完了通知７００７は、次バンドのバンド転送完了通知である。
【００６４】
図７では、バンド転送要求とバンド転送完了通知との組を２組のみ示してあるが、頁内の画像データが転送し終わるまで、図示しないが、バンド転送要求とバンド転送完了通知とが続く。
【００６５】
バンド転送要求コマンド７００４には、バンドを特定するバンドＩＤ（ＢＩＤ）が割り振られる。図７に示す例では、バンド転送要求コマンド７００４、バンド転送完了通知７００５のそれぞれのＢＩＤとして、１が割り当てられている。バンド転送要求コマンド７００６、バンド転送完了通知７００７のそれぞれのＢＩＤとして、２が割り当てられている。
【００６６】
頁終了要求コマンド７００８は、プリンタコントローラ２０１３から本体制御部２００１へ送信され、該当頁の画像データ転送が完了したことを、本体制御部２００１に通知する。頁開始要求コマンド７００９は、次頁の頁開始要求である。
【００６７】
頁開始要求コマンド７００３には、ＰＩＤとして１が割り当てられている。頁開始要求コマンド７００９のＰＩＤとして、２が割り当てられている。頁終了要求コマンド７００８のＰＩＤとして、１が割り当てられている。
【００６８】
ページＩＤ（ＰＩＤ）とバンドＩＤ（ＢＩＤ）とによって、プリンタコントローラ２０１３と本体制御部２００１とは、図７に示す各コマンドと、印刷対象のページとを関連付けることができる。
【００６９】
次に、プリンタコントローラ２０１３における１頁分の画像データのレンダリング制御動作について説明する。
【００７０】
図８は、画像形成装置ＰＦ１におけるプリンタコントローラ２０１３の動作を示すフローチャートである。ステップＳ８０１０で、本体制御部２００１から頁保存開始コマンド７００１または７００２を受信したかどうかを判断する。受信していたらステップＳ８０２０へ進み、受信していなければ受信するまで待つ。ステップＳ８０２０で、ディスプレイリスト６００２の作成を実行する。ディスプレイリスト６００２の１頁分の作成が完了すると、ステップＳ８０３０で、頁保存開始コマンド７００１が本体制御部２００１に送信される。
【００７１】
ステップＳ８０４０で、最初の画像データバンドのレンダリング指示が、プリンタコントローラ２０１３自身に発行される。ステップＳ８０５０は、イベント分岐部であり、プリンタコントローラ２０１３内の各種イベントの発生を待ち、イベントが発生したら各種処理を実行する。イベントが複数発生すれば、発生順にキューイングすることが可能である。
【００７２】
レンダリング指示のイベントが発生すると、ステップＳ８０６０へ進む。ステップＳ８０６０で、画像データバンド６００３または６００４の獲得をプリンタコントローラ２０１３自身に発行し、イベント分岐ステップＳ８０５０へ戻る。画像データバンドを獲得する場合、プリンタコントローラ２０１３のメモリを管理するオペレーティングシステムが実行する。画像データバンド６００３、６００４の両者が使用されていれば、どちらか一方が解放された後に、画像データバンドの獲得が実施され、獲得完了のイベントがプリンタコントローラ２０１３自身に発行される。
【００７３】
ステップＳ８０５０で、画像データバンドの獲得イベントが発生すると、ステップＳ８０７０で、画像データバンドのメモリに対し、ディスプレイリスト６００２に基づいてレンダリングが実行され、ステップＳ８０８０へ進む。ステップＳ８０８０で、画像データバンド転送要求が、プリンタコントローラ２０１３から、本体制御部２００１へ発行される。ステップＳ８０９０で、次の画像データバンドに対するレンダリング指示がプリンタコントローラ２０１３自身に発行され、ステップＳ８０５０へ戻る。
【００７４】
画像データバンド転送要求に対して、画像データバンド転送完了通知が、本体制御部２００１からプリンタコントローラ２０１３に返信されると、ステップＳ８０５０で、画像データバンド転送完了通知受信イベントが発生し、ステップＳ８１００へ進む。ステップＳ８１００で、本体制御部２００１に送信済みの画像データバンドが解放される。ステップＳ８１１０で、頁で最後のディスプレイリストがレンダリングされたか否かが判定され、頁で最後であれば、ステップＳ８１２０へ進み、頁で最後でなければ、ステップＳ８０５０へ戻る。ステップＳ８１２０で、本体制御部２００１に頁終了要求を送信し、処理フローを抜ける。
【００７５】
次に、本体制御部２００１における１頁分の画像データの印刷制御について説明する。
【００７６】
図９は、本体制御部２００１における１頁分の画像データの印刷制御を示すフローチャートである。ステップＳ９０１０で、プリンタコントローラ２０１３からの頁開始要求が受信されているかどうかを判断し、受信していれば、ステップＳ９０２０へ進み、受信していなければ、受信するまで待つ。ステップＳ９０２０は、イベント分岐部であり、本体制御部２００１内の各種イベントの発生を待ち、イベントが発生したら各種の処理を実行する。イベントが複数発生した場合、発生順にキューイングすることが可能である。
【００７７】
プリンタコントローラ２０１３からバンド転送要求を受信すると、ステップＳ９０３０へ進む。ステップＳ９０３０で、印刷用画像データバンド６００５、６００６のいずれかを獲得したことを本体制御部２００１自身に発行し、ステップＳ９０２０へ戻る。画像データバンドを獲得する場合、本体制御部２００１のメモリを管理するオペレーティングシステムが実行する。印刷用画像データバンド６００５、６００６の両者が使用されていれば、どちらか一方が解放された後に、印刷用画像データバンドの獲得が実施され、印刷用画像データバンド獲得完了のイベントが本体制御部２００１自身に発行される。
【００７８】
印刷用画像データバンド獲得完了のイベントが発生すると、ステップＳ９０４０で、獲得された印刷用画像データバンドに、プリンタコントローラ２０１３から画像データの転送が開始され、ステップＳ９０２０に戻る。
【００７９】
プリンタコントローラ２０１３から本体制御部２００１への画像データの転送が１バンド分終了すると、本体制御部２００１は、自身にバンドデータ転送完了イベントを発行し、バンドデータ転送完了イベントが発生すると、ステップＳ９０５０へ進む。ステップＳ９０５０で、バンド転送完了通知をプリンタコントローラ２０１３へ送信する。ステップＳ９０６０で、該当印刷用画像データバンドの画像データの印字制御を、印刷制御部２０１０に指示し、ステップＳ９０２０へ戻る。
【００８０】
印刷制御部２０１０で、該当バンドの印字が完了すると、本体制御部２００１は、バンド印刷完了イベントを自身に発行する。バンド印刷完了イベントが発生すると、ステップＳ９０７０へ進み、該当印刷用画像データバンドが解放される。ステップＳ９０８０で、頁終了要求をプリンタコントローラ２０１３から受信し、かつ全印刷用画像データバンドの印刷が完了したか否かが判定される。頁終了要求受信かつ全印刷用画像データバンド印刷完了であれば、処理フローを抜ける。そうでなければ、ステップＳ９０２０へ戻る。
【００８１】
上記のように、画像形成装置ＰＦ１は、図３で説明したデータフローで、画像形成を実行することができる。ストレージ２０１２が本体制御部２００１にのみ接続されている従来例（図１６）と比較すると、画像形成装置ＰＦ１では、本体制御部２００１によるＲＡＭ２００４へのアクセス回数が、図１６に示す経路１６００３と１６００４との分、減る。また、プロセッサ間通信路の経由数が、図１６に示す経路１６００４の分、減る。
【００８２】
上記のように、画像形成装置ＰＦ１は、マルチプレクサ２０１１を経由し、プリンタコントローラ２０１３と本体制御部２００１との双方に、ストレージ２０１２を結合し、印刷する。つまり、プリンタコントローラ２０１３と本体制御部２００１との双方に、ストレージ２０１２を結合し、ストレージ２０１２に格納されている印刷ジョブデータを直接ＲＡＭ２０１６に送信する。このために、ストレージ２０１２に格納されている印刷ジョブデータをＲＡＭ２００４に中継する必要がない。したがって、本体制御部２００１のＲＡＭ２００４のメモリバスの輻輳を抑制することができ、プロセッサ間通信路２０１９の輻輳を抑制することができる。
【実施例２】
【００８３】
図１０は、本発明の実施例２である画像形成装置ＰＦ２を示すブロック図である。画像形成装置ＰＦ２は、実施例１である画像形成装置ＰＦ１と基本的には同じであるが、画像形成装置ＰＦ１において、外部Ｉ／Ｆ部２００７の代わりに、外部Ｉ／Ｆ部１０００１が設けられている。つまり、外部Ｉ／Ｆ部が、実施例１では、本体制御部２００１に設けられているが、実施例２では、外部Ｉ／Ｆ部が、プリンタコントローラ２０１３に設けられている。
【００８４】
なお、実施例２の説明において、実施例１と同じ構成については、同じ符号を付し、その詳細な説明を省略する。また、実施例２におけるシステムの構成において、図１に示す実施例１のシステム構成と同じシステム構成については、説明を省略する。
【００８５】
外部Ｉ／Ｆ部１０００１は、実施例１における外部Ｉ／Ｆ部２００７と同様の機能を有しているが、本体制御部２００１側に接続されるのではなく、プリンタコントローラ２０１３側に接続されている。プロセッサ間通信路２０１９は、本体制御部２００１とプリンタコントローラ２０１３との間に設けられているプロセッサ間通信路であり、両者間の指示コマンドの経路である。しかし、プリンタコントローラ２０１３でレンダリングされた画像データが、本体制御部２００１に転送される経路は、後述するように、ストレージ２０１２経由である。
【００８６】
次に、実施例２におけるデータフローについて説明する。
【００８７】
図１１は、実施例２におけるデータフローの説明図である。プリンタコントローラ２０１３に接続されている外部Ｉ／Ｆ部１０００１から入力された印刷ジョブデータは、プリンタコントローラ２０１３のＲＡＭ２０１６に書き込まれる（経路１１００１）。ＲＡＭ２０１６に書き込まれた印刷ジョブデータは、ページ毎のファイルとして、マルチプレクサ２０１１を経由し、ストレージ２０１２のファイルシステムに格納される（経路１１００２）。
【００８８】
プリンタコントローラ２０１３は、マルチプレクサ２０１１を経由し、ストレージ２０１２のファイルシステムに格納されている各ページに分かれた印刷ジョブデータを読み出し、プリンタコントローラ２０１３のＲＡＭ２０１６に書き込む（経路１１００３）。プリンタコントローラ２０１３は、ＲＡＭ２０１６の印刷ジョブデータを、画像データへレンダリングする。レンダリングされた画像データ（レンダリング済み画像データ）は、マルチプレクサ２０１１を経由し、ストレージ２０１２に格納される（経路１１００４）。
【００８９】
本体制御部２００１は、ストレージ２０１２に格納されているレンダリング済み画像データを、マルチプレクサ２０１１経由で読み出し、ＲＡＭ２００４に書き込む（経路１１００５）。本体制御部２００１は、ＲＡＭ２００４に書き込まれた画像データを用いて、印刷制御部２０１０とメカ制御部２００９とを駆動し、印刷を実行する（経路１１００６）。
【００９０】
ストレージ２０１２は、プリンタコントローラ２０１３のデータを読み取り、また、プリンタコントローラ２０１３に書き込み可能であり、かつ本体制御部２００１のデータを読み取り、また本体制御部２００１に書き込み可能である。
【００９１】
マルチプレクサ２０１１は、プリンタコントローラ２０１３が格納している印刷ジョブデータをストレージ２０１２に送信し、ストレージ２０１２に格納されている印刷ジョブデータをプリンタコントローラ２０１３に送信する。また、マルチプレクサ２０１１は、プリンタコントローラ２０１３が加工した画像データをストレージ２０１２に送信し、ストレージ２０１２に格納されているプリンタコントローラ２０１３が加工した画像データを本体制御部２００１に送信する。
【００９２】
次に、実施例２におけるストレージ２０１２のデータファイルについて説明する。
【００９３】
図１２は、実施例２におけるストレージ２０１２のファイルシステムを示す図である。画像形成装置ＰＦ２のストレージ２０１２には、１頁分書き込み済みの印刷ジョブデータファイル（１頁分）１２００１と、プリンタコントローラ２０１３から受信した書き込み中の頁の印刷ジョブデータファイル（１頁分）１２００２とが格納されている。ストレージ２０１２上で１頁づつ管理することによって、レンダリング可能な頁のデータを切り分ける。
【００９４】
なお、実施例２では、１頁分ごとにファイルを切り分けるが、複数頁を１ファイルとし、ファイル内の頁の節目のアドレスによって管理するようにしてもよい。
【００９５】
画像形成装置ＰＦ２のストレージ２０１２には、書き込み済みの１頁分のレンダリング済み画像データファイル１２００３と、プリンタコントローラ２０１３から受信した書き込み中の１頁分のレンダリング済み画像データファイル１２００４とが格納されている。レンダリング済み画像データファイル１２００３には、プリンタコントローラ２０１３のＲＡＭ２０１６の画像データバンド６００３または６００４から、画像データバンドサイズの対象頁の画像データが、レンダリングされた順に、追記で書き込まれる。
【００９６】
実施例２において、プリンタコントローラ２０１３のＲＡＭ２０１６に展開する画像データバンドと、本体制御部２００１のＲＡＭ２００４に展開する印刷用画像データバンドとは、実施例１における印刷用画像データバンドと同様である。したがって、その詳細な説明を省略する。
【００９７】
次に、実施例２におけるプロセッサ間のコマンド通信について説明する。
【００９８】
図１３は、実施例２におけるプロセッサ間コマンドを示す図である。頁開始要求１３００１は、プリンタコントローラ２０１３から本体制御部２００１へ送信され、本体制御部２００１に印刷開始を通知する。バンド書き込み完了通知１３００２は、プリンタコントローラ２０１３から本体制御部２００１へ送信され、１バンド分の画像データのストレージ２０１２からの読み出しが可能になったことを、本体制御部２００１に通知する。バンド書き込み完了通知１３００３は、バンド書き込み完了通知１３００２のバンドの次のバンドに対するバンド書き込み完了通知である。
【００９９】
図１３には２つのバンド書き込み完了通知が示されているが、頁内の画像データのストレージ２０１２への書き込みが終わるまで、図示しないバンド書き込み完了通知が続く。
【０１００】
バンド書き込み完了通知１３００２、１３００３には、それぞれバンドを特定するバンドＩＤ（ＢＩＤ）が割り振られている。図１３に示す例では、バンド書き込み完了通知１３００２に、ＢＩＤとして１が割り当てられ、バンド書き込み完了通知１３００３に、ＢＩＤとして２が割り当てられている。
【０１０１】
頁終了要求１３００４は、プリンタコントローラ２０１３から本体制御部２００１へ送信され、本体制御部２００１に、頁内の画像データのストレージ２０１２への書き込みが完了したことを通知する。
【０１０２】
頁開始要求１３００１、１３００５や、頁終了要求１３００４には、頁を特定するページＩＤ（ＰＩＤ）が割り振られている。図１３に示す例において、頁開始要求１３００１には、ＰＩＤとして、１が割り当てられている。頁開始要求１３００５には、ＰＩＤとして、２が割り当てられている。頁終了要求１３００４には、ＰＩＤとして、１が割り当てられている。
【０１０３】
ページＩＤ（ＰＩＤ）とバンドＩＤ（ＢＩＤ）とが、プリンタコントローラ２０１３と本体制御部２００１とを、図１３に示す各コマンドと、印刷対象のページまた対応するレンダリング済み画像データファイルとに関連付けることができる。
【０１０４】
次に、プリンタコントローラ２０１３における１頁分の画像データのレンダリング制御動作について説明する。
【０１０５】
図１４は、実施例２におけるプリンタコントローラ２０１３の動作を示すフローチャートである。なお、外部Ｉ／Ｆ部１０００１からプリンタコントローラ２０１３が受信した印刷ジョブデータをストレージ２０１２へ書き込む動作は、印刷制御と非同期に実施可能であるので、図１４のフローチャートには図示しない。
【０１０６】
ステップＳ１４０１０で、プリンタコントローラ２０１３は、ストレージ２０１２に格納されている印刷ジョブデータファイルを、マルチプレクサ２０１１経由で読み出し、ＲＡＭ２０１６に書き込み、解析し、ディスプレイリスト６００２を作成する。ディスプレイリストの１頁分の作成が完了すると、ステップＳ１４０２０で、頁開始要求が本体制御部２００１に送信される。
【０１０７】
ステップＳ１４０３０で、最初の画像データバンドのレンダリング指示が、プリンタコントローラ２０１３自身に発行される。ステップＳ１４０４０は、イベント分岐部であり、プリンタコントローラ２０１３内の各種イベントの発生を待ち、イベントが発生すれば、各種の処理を実行する。イベントが複数発生すれば、発生順にキューイングすることができる。
【０１０８】
レンダリング指示のイベントが発生すると、ステップＳ１４０５０で、画像データバンド６００３または６００４の獲得を、プリンタコントローラ２０１３自身に発行し、イベント分岐ステップＳ１４０４０へ戻る。プリンタコントローラ２０１３のメモリを管理するオペレーティングシステムが、画像データバンドを獲得する動作を実行する。そして、画像データバンド６００３、６００４の両者が使用されていれば、どちらか一方が解放された後に、画像データバンドを獲得し、獲得完了のイベントがプリンタコントローラ２０１３自身に発行される。
【０１０９】
ステップＳ１４０４０で、画像データバンドの獲得イベントが発生すると、ステップＳ１４０６０へ進む。ステップＳ１４０６０で、ディスプレイリスト６００２に基づいて、画像データバンドのメモリに対してレンダリングが実行され、ステップＳ１４０７０へ進む。ステップＳ１４０７０で、画像データバンドのストレージ２０１２への書き出し要求が、プリンタコントローラ２０１３自身へ発行される。ステップＳ１４０８０で、次の画像データバンドに対するレンダリング指示が、プリンタコントローラ２０１３自身に発行され、ステップＳ１４０４０へ戻る。
【０１１０】
ステップＳ１４０４０で、プリンタコントローラ２０１３のオペレーティングシステムが、画像データバンドの書き出し完了通知をストレージ２０１２に発生すると、ステップＳ１４０９０へ進む。ステップＳ１４０９０で、バンド書き込み完了通知が、本体制御部２００１に発行される。ステップＳ１４１００で、ストレージ２０１２への書き込み済みの画像データバンドが解放される。ステップＳ１４１１０で、頁の最後のディスプレイリストがレンダリングされたか否かを判定し、頁の最後であれば、ステップＳ１４１２０へ進み、頁の最後でなければ、ステップＳ１４０４０へ戻る。ステップＳ１４１２０で、本体制御部２００１に、頁終了要求を送信し、処理フローを抜ける。
【０１１１】
次に、実施例２の本体制御部２００１における１頁分の画像データの印刷制御について説明する。
【０１１２】
図１５は、実施例２における本体制御部２００１の動作を示すフローチャートである。ステップＳ１５０１０で、プリンタコントローラ２０１３からの頁開始要求を受信しているかどうかを判断し、受信していれば、ステップＳ１５０２０へ進み、そうでなければ、受信するまで待つ。ステップＳ１５０２０は、イベント分岐部であり、本体制御部２００１内の各種イベントの発生を待ち、イベントが発生すれば、各種の処理を実行する。イベントが複数発生すれば、発生順にキューイングすることができる。
【０１１３】
プリンタコントローラ２０１３からのバンド書き出し完了通知を受信すると、ステップＳ１５０３０へ進む。ステップＳ１５０３０で、印刷用画像データバンド６００５または６００６の獲得を、本体制御部２００１自身に発行し、ステップＳ１５０２０へ戻る。画像データバンドを獲得する場合、本体制御部２００１のメモリを管理するオペレーティングシステムが実行する。印刷用画像データバンド６００５、６００６の両者が使用されていれば、どちらか一方が解放された後に、印刷用画像データバンドの獲得が実施され、印刷用画像データバンド獲得完了のイベントが、本体制御部２００１自身に発行される。
【０１１４】
印刷用画像データバンド獲得完了のイベントが発生すると、ステップＳ１５０４０で、獲得された印刷用画像データバンドに、ストレージ２０１２から画像データの転送が開始され、ステップＳ１５０２０に戻る。
【０１１５】
ストレージ２０１２から印刷用画像データバンドへ、１バンド分の画像データを転送すると、本体制御部２００１は、自身にバンドデータ転送完了イベントを発行し、バンドデータ転送完了イベントが発生すると、ステップＳ１５０５０へ進む。ステップＳ１５０５０で、該当印刷用画像データバンドの画像データの印字制御を、印刷制御部２０１０に指示し、ステップＳ１５０２０へ戻る。
【０１１６】
印刷制御部２０１０で、該当バンドの印字が完了すると、本体制御部２００１はバンド印刷完了イベントを自身に発行する。バンド印刷完了イベントが発生すると、ステップＳ１５０６０へ進み、該当印刷用画像データバンドが解放される。ステップＳ１５０７０で、頁終了要求をプリンタコントローラ２０１３から受信し、かつ全印刷用画像データバンドの印刷が完了したか否かを判定する。頁終了要求受信かつ全印刷用画像データバンド印刷完了であれば、処理フローを抜ける。そうでなければ、ステップＳ１５０２０へ戻る。
【０１１７】
実施例２は、図１１で説明したデータフローで、画像形成を実行することができる。図１７に示す従来例においてストレージ２０１２がプリンタコントローラ２０１３にのみ接続されている場合と比較すると、実施例２は、本体制御部２００１によるＲＡＭ２００４へのアクセス回数が、図１７に示す経路１７００５と経路１７００６との分、減る。
【０１１８】
つまり、画像形成装置ＰＦ２によれば、マルチプレクサ２０１１を経由し、プリンタコントローラ２０１３と本体制御部２００１との双方にストレージ２０１２を結合し、印刷する。そして、ストレージ２０１２に格納されているレンダリング済み画像データを直接ＲＡＭ２０１６に送信する。このために、ストレージ２０１２に格納されているレンダリング済み画像データをＲＡＭ２０１６に中継する必要がない。したがって、本体制御部２００１のＲＡＭ２０１６のメモリバスの輻輳を抑制することができる。
【０１１９】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上記実施例の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。また、上記プログラムを、１つのコンピュータが実行してもよく、また、複数のコンピュータが連動して実行してもよい。さらに、上記処理の全てをソフトウェアで実現する必要はなく、一部または全部をハードウェアによって実現するようにしてもよい。
【符号の説明】
【０１２０】
ＰＦ１…画像形成装置、
２００１…本体制御部、
２０１３…プリンタコントローラ、
２０１１…マルチプレクサ、
２０１２…ストレージ。
【図１】
0005580584.tif 000002
【図２】
0005580584.tif 000003
【図３】
0005580584.tif 000004
【図４】
0005580584.tif 000005
【図５】
0005580584.tif 000006
【図６】
0005580584.tif 000007
【図７】
0005580584.tif 000008
【図８】
0005580584.tif 000009
【図９】
0005580584.tif 000010
【図１０】
0005580584.tif 000011
【図１１】
0005580584.tif 000012
【図１２】
0005580584.tif 000013
【図１３】
0005580584.tif 000014
【図１４】
0005580584.tif 000015
【図１５】
0005580584.tif 000016
【図１６】
0005580584.tif 000017
【図１７】
0005580584.tif 000018