(57)【要約】【課題】  各色の画像形成に備えてスプールされている各色別の圧縮画像データをＣＰＵを介在させることなく、印刷可能な印刷データに伸長して支障なくカラー画像を形成することである。【解決手段】  複数の画像形成部を色別に備えてカラー画像を面順次で形成する場合に、レンダリングされ圧縮された画像データを外部メモリ５２０スプールされている圧縮画像をパケットＤｍａｃ１８０がパケット受信部２９０に転送する先頭パケットに圧縮画像データを付加せずに送信して、その応答パケットをパケット送信部２４０からパケットＤｍａｃ１９０に順次受信することで、後続の色別の圧縮画像データのパケットをＣＰＵ１３０を介在することなく送信するように制御する構成を特徴とする。【選択図】  図１
2006331073.tif 000002
【特許請求の範囲】
【請求項１】
入力された複数色にかかるカラー画像データから複数のパケットデータを生成するパケットデータ生成手段と、
前記パケットデータ生成手段が生成した複数のパケットデータを記憶する第１の記憶手段と、
前記複数のパケットデータを記憶する第２の記憶手段であって、前記複数色の各色にかかるパケットデータを、前記複数色の各色毎に割り当てられた所定の記憶領域に記憶する第２の記憶手段と、
前記複数色の各色について設けられ、前記第２の記憶手段に記憶されたパケットデータに基づいて画像を形成する複数の画像形成手段と、
前記複数色の各色について設けられ、第２の記憶手段の所定色にかかる前記記憶領域に記憶された前記パケットデータの記憶量に基づいて、前記第１の記憶手段に記憶された前記所定色にかかるパケットデータの、前記第２の記憶手段の前記所定色にかかる記憶領域への転送を制御する複数の第１転送制御手段と、
を有することを特徴とする画像形成装置。
【請求項２】
入力された複数色にかかるカラー画像データを圧縮する圧縮手段と、
前記第２の記憶手段に記憶されたパケットデータを伸張する伸長手段を有し、
前記パケットデータ生成手段は前記圧縮手段により圧縮された前記複数色にかかるカラー画像データから複数のパケットデータを生成し、
前記複数の画像形成手段は前記伸長手段により伸長された複数色の各色にかかるパケットデータを合成したカラー画像データに基づいて画像を形成することをすることを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記第２の記憶手段は、前記伸長手段により伸長された複数色の各色にかかるパケットデータを記憶し、前記複数の画像形成手段は、前記第２の記憶手段に記憶された前記伸長された複数色の各色にかかるパケットデータを合成したカラー画像データに基づいて画像を形成することを特徴とする請求項２に記載の画像形成装置。
【請求項４】
前記第１の記憶手段は、ページ単位で入力されるカラー画像データを所定単位に分割した画像データを複数のパケットデータとして格納することを特徴とする請求項１記載の画像形成装置。
【請求項５】
前記複数の第１転送制御手段からの転送要求に応じて、前記第１の記憶手段に記憶された複数色にかかるパケットデータを前記複数の第１転送制御手段のいずれかへ転送するための第２転送制御手段を有することを特徴とする請求項１〜４のいずれかに記載の画像形成装置。
【請求項６】
入力された複数色にかかるカラー画像データから複数のパケットデータを生成するパケットデータ生成工程と、
前記パケットデータ生成手段が生成した複数のパケットデータを第１の記憶部に記憶する記憶工程と、
前記第１の記憶部に記憶された所定色にかかるパケットデータを、第２の記憶部にて前記所定色に対して設けられた記憶領域へ転送する転送工程と、
前記第２の記憶部にて前記所定色に対して設けられた記憶領域に記憶されたパケットデータに基づいて前記所定色にかかる画像を形成する画像形成工程とを有し、
前記転送工程は、前記画像形成工程における画像形成動作に応じて変化する前記記憶領域に記憶される前記所定色にかかるパケットデータの記憶量に基づいて、前記所定色にかかるパケットデータを転送することを特徴とする画像形成方法。
【請求項７】
請求項５に記載の画像形成方法を実行させるためのプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【請求項８】
請求項５に記載の画像形成方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置、画像形成方法、コンピュータが読み取り可能な記憶媒体及びコンピュータに実行させるためのプログラムに関するものである。
【背景技術】
【０００２】
従来、画像形成装置においては、外部装置から入力されるＰＤＬデータ（ページ記述言語データ）を画像形成装置が印刷可能な画像データに展開処理して少なくとも１ページ分の画像データをメモリ等の記憶部に記憶させた後に、メモリから画像データを画像形成部に送信することで、ページ単位の画像形成を行っている。
【０００３】
そして、画像形成装置のなかでも、複数にかかる画像を各色毎に異なる画像形成部にて画像形成し、用紙等の記録媒体に対して複数色にかかる画像を順次重ね合わせることでカラー画像を形成する、いわゆるタンデム式の画像形成装置が知られている（例えば、特許文献１参照。）。
【０００４】
そして、タンデム式の画像形成装置では、各色ごとに画像形成するタイミングが異なるために、メモリから複数色にかかる画像データを同時に複数の画像形成部に出力することができず、それを調整するために複数の画像形成部の配置間隔に相当する遅延時間（用紙が配置間隔を通過するのに要する時間）を補償するための遅延メモリを備えてデータ転送のための同期処理を実行している。
【特許文献１】特開２００４−２６６５１３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、複数色にかかる画像形成部の各々に対して、複数の遅延メモリを設けると、コストアップとなる。
【０００６】
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、複数色にかる画像形成部の各々に対して遅延メモリを設けることなく安価にタンデム方式を実現する画像形成装置、画像形成方法、コンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラムを提供することである。
【課題を解決するための手段】
【０００７】
上記目的を達成する本発明の画像形成装置は以下に示す構成を備える。
【０００８】
入力された複数色にかかるカラー画像データから複数のパケットデータを生成するパケットデータ生成手段と、前記パケットデータ生成手段が生成した複数のパケットデータを記憶する第１の記憶手段と、前記複数のパケットデータを記憶する第２の記憶手段であって、前記複数色の各色にかかるパケットデータを、前記複数色の各色毎に割り当てられた所定の記憶領域に記憶する第２の記憶手段と、前記複数色の各色について設けられ、前記第２の記憶手段に記憶されたパケットデータに基づいて画像を形成する複数の画像形成手段と、前記複数色の各色について設けられ、第２の記憶手段の所定色にかかる前記記憶領域に記憶された前記パケットデータの記憶量に基づいて、前記第１の記憶手段に記憶された前記所定色にかかるパケットデータの、前記第２の記憶手段の前記所定色にかかる記憶領域への転送を制御する複数の第１転送制御手段と、
を有することを特徴とする。
【０００９】
上記目的を達成する本発明の画像処理方法は以下に示す構成を備える。
【００１０】
入力された複数色にかかるカラー画像データから複数のパケットデータを生成するパケットデータ生成工程と、前記パケットデータ生成手段が生成した複数のパケットデータを第１の記憶部に記憶する記憶工程と、前記第１の記憶部に記憶された所定色にかかるパケットデータを、第２の記憶部にて前記所定色に対して設けられた記憶領域へ転送する転送工程と、前記第２の記憶部にて前記所定色に対して設けられた記憶領域に記憶されたパケットデータに基づいて前記所定色にかかる画像を形成する画像形成工程とを有し、前記転送工程は、前記画像形成工程における画像形成動作に応じて変化する前記記憶領域に記憶される前記所定色にかかるパケットデータの記憶量に基づいて、前記所定色にかかるパケットデータを転送することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、複数色にかかる画像形成部の各々に対して遅延メモリを設けることなく安価にタンデム方式を実現する画像形成装置、画像形成方法、コンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラムを提供するという効果を奏する。
【発明を実施するための最良の形態】
【００１２】
次に本発明を実施するための最良の形態について図面を参照して説明する。
【００１３】
＜システム構成の説明＞
〔第１実施形態〕
図１は、本発明の第１実施形態を示す画像形成装置を適用可能な画像形成システムの構成を説明するブロック図であり、ネットワーク４１０を介してデータ入力源としてのＰＣ６００と通信可能な画像形成システム例に対応する。
【００１４】
図１において、ユーザがＰＣ６００上で、例えば図２に示すよなＧＵＩを使って、プリントしたい画像、枚数を設定すると、それに応じたＰＤＬデータがネットワーク４１０経由でＭａｉｎ  Ｃｏｎｔｒｏｌｌｅｒ部１００に送信される。
【００１５】
図２は、図１に示したＰＣ６００上の表示装置に表示される印刷設定画面の一例を示す図であり、図１に示したＰＣ６００のハードディスク等の外部記憶装置にインストールされているプリンタドライバにより表示される。
【００１６】
なお、本画面は、ページ設定に関する画面で、原稿サイズ、出力用紙サイズ、部数、印刷の向き、ページレイアウト等をコンボボックスやラジオボタンを選択することでユーザが意図する印刷設定を行えるように構成されている。ＨＤＤ５１０は、ＨＤＤ  Ｃｏｎｔｒｏｌｌｅｒ１１０を介してデータの書き込み読み出しが制御される。
【００１７】
Ｍａｉｎ  Ｃｏｎｔｒｏｌｌｅｒ部１００では、ネットワーク４１０を介してＰＣ６００から受信したＰＤＬデータをＮｅｔｗｏｒｋ  Ｃｏｎｔｒｏｌｌｅｒ１５０，Ｂｕｓ  Ｓｗｉｔｃｈ１６０，メモリ  Ｃｏｎｔｒｏｌｌｅｒ１２０を介して外部メモリ５２０に対して一度スプールする。
【００１８】
その後、ＣＰＵ１３０がＰＤＬデータを解析してディスプレイリストに展開し、Ｒｅｎｄｅｒｉｎｇ部１７０がディスプレイリストを多値のラスタ画像に展開し、外部メモリ５２０に書き戻す。
【００１９】
このようにして、１バンドの多値ラスタ画像が外部メモリ５２０にスプールされると、Ｂｕｓ  Ｃｏｎｔｒｏｌｌｅｒ（バスコントローラ）１４０，２１０により外部バウス４２０を介してプリンタ画像処理部２２０に送られ印刷するプリンタに適した画像データに変換される。
【００２０】
そして、画像圧縮部２３０ではバンド単位で圧縮（符号化）を実施し圧縮Ｃｏｄｅをパケット送信部２４０に送信する、圧縮Ｃｏｄｅを受け取ったパケット送信部２４０は、図３に示すように、受け取った圧縮コードを所定のサイズに分割しパケットの属性を示すＨｅａｄｅｒを先頭に付加することによってパケットを作成し、外部バス４３０を介してＭａｉｎ  Ｃｏｎｔｒｏｌｌｅｒ部１００に送信する。
【００２１】
Ｍａｉｎ  Ｃｏｎｔｒｏｌｌｅｒ部１００では、Ｐｒｉｎｔｅｒ  Ｃｏｎｔｒｏｌｌｅｒ部２００から外部バウス４３０を介して受信したパケットを図４に示すように、外部メモリ５２０に格納する。
【００２２】
図３は、図１に示した画像圧縮部２３０およびＰｒｉｎｔｅｒ  Ｃｏｎｔｒｏｌｌｅｒ部２００で処理されるデータの構造を説明する図であり、図４は、図１に示した外部メモリ５２０に格納されるパケットの構造を説明する図であり、１色分の画像データのパケット格納例に対応する。
【００２３】
図４に示すように、１Ｐａｇｅを構成するパケットの外部メモリ５２０へのＰａｇｅスプールが完了すると、ＣＰＵ１３０がパケットＤＭＡＣ１８０を起動しＣＭＹＫ各色、数バンド分の圧縮データを外部バス４３０経由でパケット受信部２９０に送信する。この時に送るバンド数は、外部メモリ５３０に圧縮データのスプール用に確保されているバンドＢｕｆｆｅｒの数によって決める。なお、外部メモリ５３０の構造は、図１７において詳述する。
【００２４】
パケット受信部２９０では、Ｍａｉｎ  Ｃｏｎｔｒｏｌｌｅｒ部１００のパケットＤＭＡＣ１８０が外部メモリ５２０から読み出されたパケットを受信すると、受信したパケットのＨｅａｄｅｒを解析して、ＣＭＹＫどの色のデータが含まれているパケットかを解析し、データ部分のみをメモリＣｏｎｔｒｏｌｌｅｒ２５０を介して外部メモリ５３０の適切な場所に格納する。
【００２５】
そして、メモリＣｏｎｔｒｏｌｌｅｒ２５０が１バンド分の圧縮データの外部メモリ５３０へのスプールが完了すると、画像伸長部２８０が圧縮データを外部メモリ５３０から読み出してから伸長し、Ｒａｗ  Ｒａｓｔｅｒ  Ｄａｔａに変換してから、メモリＣｏｎｔｒｏｌｌｅｒ２５０が外部メモリ５３０の適切な場所に書き戻す。
【００２６】
このようして、数バンド分のＲａｗ  Ｒａｓｔｅｒ  Ｄａｔａが外部メモリ５３０に準備できると、ＭａｉｎＣｏｎｔｒｏｌｌｅｒ１００のＣＰＵ１３０はＰｒｉｎｔ  Ｅｎｇｉｎｅ部３００を起動する。
【００２７】
プリンタ制御部２７０は、Ｐｒｉｎｔ  Ｅｎｇｉｎｅ部３００からのリクエストに応じて、ＭａｉｎＣｏｎｔｒｏｌｌｅｒ１００により外部メモリ５３０からＲａｗ  Ｒａｓｔｅｒ  Ｄａｔａを読み出して、Ｐｒｉｎｔ  Ｅｎｇｉｎｅ部３００に送信する。プリントが始まると、パケットＤＭＡＣ１８０、パケット受信部２９０、画像伸長部２８０、プリンタ制御部２７０は連携して動作し、各モジュールは外部メモリ５３０上に割り当てられたＢｕｆｆｅｒが使用可能になったタイミングで動作を開始する。
【００２８】
このようにして、プリンタ制御部２７０からＰｒｉｎｔｅｒ  Ｅｎｇｉｎｅ部３００に送信されたＲａｗ  Ｒａｓｔｅｒ  Ｄａｔａは、ＰＷＭ部３１０でレーザビームに変換され、マーキング部３２０で潜像の作成、現像が行われ用紙上に可視画像が形成される。
【００２９】
このように構成された画像形成装置は、例えば所定のページ記述言語に基づく印刷情報（ＰＤＬデータ）をネットワークを介して受信し、複数の画像形成部により形成される各色画像を搬送される記録媒体に面順次で重ねてカラー画像の形成を制御するＣＰＵを有する画像形成装置（例えば図９に示すように色別の画像形成部が並置されて、各色画像を搬送される記録媒体に面順次で重ねてカラー画像を形成する構成を備える画像形成装置）であって、前記印刷情報をラスタ多値画像に展開（例えば図１に示すレンダリング部１７０による）し、該展開される前記ラスタ多値画像を第１の外部バス（例えば図１に示す外部バス４２０）を介して図１に示す画像圧縮部２３０に送信する図１に示すバスコントローラ１４０、２１０と、前記圧縮手段により圧縮された画像データをパケットに分割し図１に示す外部バス４３０に送信する図１に示すパケット送信部２４０と、前記第１のパケット送信手段により送信されるパケットを図１に示す外部メモリ５２０にスプールする図１に示すパケットＤＭＡＣ１９０、メモリコントローラ１２０と、前記第１の外部メモリにスプールされたパケットを読み出し第２の外部バスを介して図１に示すパケット受信部２９０に送信する図１に示すパケットＤＭＡＣ１８０と、前記画像形成部から画像形成リクエストが発生する前に、前記第２のパケット送信手段から送信されるパケットに含まれる画像データのみを図１に示す画像伸長部２８０により伸長させながら図１に示す外部メモリ５３０に格納する図１に示すメモリコントローラ２５０とを備え、前記第１のパケット受信手段が受信するパケット毎に前記第１のパケット送信手段により送信される応答パケットを受信する図１に示すパケットＤＭＡＣ１９０を備え、前記第２のパケット送信手段は、前記第２のパケット受信手段が受信する先頭パケットに応答する最初の応答パケットに基づいて、図１に示すＣＰＵ１３０の制御から独立して順次第１の外部メモリとしての外部メモリ５２０に格納された後続のパケットを読み出し第２の外部バスを介して第１のパケット受信手段としてのＰａｃｋｅｔ受信部２９０に送信することを特徴とする。
【００３０】
これにより、先頭パケット受信時に、受信バッファが空き状態となり、即時応答パケットを送信元に通知可能となり、何等各色画像との同期を取るための遅延メモリ等を備えることなく、少ないＤＭＡＣ資源を備えるだけで、各色の画像形成に備えてスプールされている各色別の圧縮画像データをＣＰＵ１３０を介在させることなく、印刷可能な印刷データに伸長して支障なくカラー画像を形成できる。
【００３１】
なお、Ｐｒｉｎｔｅｒ  Ｃｏｎｔｒｏｌｌｅｒ部２００においけるプリント処理の詳細については、図１２以降のフローチャートを参照して詳述する。
【００３２】
＜プリンタ画像処理部２２０の説明＞
図５は、図１に示したプリンタ画像処理部２２０の構成を説明するブロック図であり、図１と同一のものには同一の符号を付してある。
【００３３】
図５において、Ｍａｉｎ  Ｃｏｎｔｒｏｌｌｅｒ部１００から、外部バス４２０を介して送られる画像信号は、Ｂｕｓ  Ｃｏｎｔｒｏｌｌｅｒ２１０によってプリンタ画像処理部２２０の色空間圧縮部２２１に送信される。
【００３４】
色空間圧縮部２２１では、入力されたイメージデータをＰｒｉｎｔｅｒ色再現色内圧縮し、彩度調整、色位相調整、下地調整、黒領域調整を行う。また、入力色空間がＹＵＶの場合には色空間圧縮部２２１でＲＧＢ色空間に変換を行う。
【００３５】
下地除去・白黒変換部２２２では、ＲＧＢのイメージデータに対して非線形演算を行い画像の下地を除去する機能を有する。
【００３６】
ＬＯＧ変換部２２３では、１次元のＬｏｏｋ−Ｕｐ  Ｔａｂｌｅを用いて非線形変換を行い、イメージデータをＲＧＢ信号からＣＭＹ信号に変換する。
【００３７】
ＣＭＹＫ変換部２２４では、３次元のＬｏｏｋ−Ｕｐ  Ｔａｂｌｅを用いてＣＭＹ信号をＣＭＹＫ信号に変換する。
【００３８】
なお、Ｍａｉｎ  Ｃｏｎｔｒｏｌｌｅｒ部１００から入力されたイメージデータの色空間がＣＭＹＫの場合には、色空間圧縮部２２１からＣＭＹＫ変換部２２４までは入力されたデータをそのまま出力する。
【００３９】
γ補正部２２６では、入力されたＣＭＹＫ信号を各々独立に１次元Ｌｏｏｋ−Ｕｐ  Ｔａｂｌｅを用いて濃度調整する。ハーフトーン部２２７では入力された多値のイメージデータを４／２／１ｂｉｔ階調にする。
【００４０】
ＳＳＴ部２２８では、イメージデータのエッジ部をパターマッチングで検出して変換を行い、ジャギーを軽減して滑らかにする。
【００４１】
Ｖｉｄｅｏカウント部２２５では、ＣＭＹＫ変換部２２４から出力されたＣＭＹＫ信号にγ補正を行い、補正後の信号値を加算する。なお、Ｖｉｄｅｏカウント部２２５による加算結果はプリンタエンジン部（Ｐｒｉｎｔｅｒ  Ｅｎｇｉｎｅ）３００でトナー消費量を推測するのに用いられる。γ補正部２２６，ハーフトーン部２２７，ＳＳＴ部２２８，Ｖｉｄｅｏカウント部２２５，は各々ＣＭＹＫ信号を独立に処理する為に４系統の回路を有している。
【００４２】
＜画像圧縮部２３０の説明＞
画像圧縮部２３０はＳＳＴ部から出力された画像データの可逆圧縮を行う。可逆圧縮方式として、一般的にはＪＢＩＧ圧縮が用いられる。
【００４３】
画像圧縮部２３０からは圧縮データをパケット送信部２４０に出力すると同時に、メモリ  Ｃｏｎｔｒｏｌｌｅｒ２５０を介して外部メモリ５３０に非圧縮の画像データを格納する。外部メモリ５３０に格納される非圧縮の画像データは、画像圧縮部２３０において圧縮率が「１」を超えた場合に圧縮ータを非圧縮データを再送する際に用いられる。画像圧縮部はＣＭＹＫ信号を独立に処理する為に４系統の回路を有している。
【００４４】
＜パケット送信部２４０の説明＞
パケット送信部２４０は、ＣＭＹＫ信号を独立に処理する為に４系統のパケット作成部２４１と、４つのパケット作成部２４１からの、外部バス４３０へのパケット送信要求をＭｕｌｔｉｐｌｅｘするパケットＭＵＸ２４２によって構成される。
【００４５】
図６は、本発明に係る画像形成装置における第１のデータ処理手順の一例を示すフローチャートであり、パケット処理手順に対応する。なお、Ｓ５０００〜Ｓ５００９、Ｓ５２００〜Ｓ５２０４、Ｓ５１００〜Ｓ５１０２、Ｓ５３００は各ステップを示す。なお、各ステップは、ＣＰＵ１３０が図示しないＲＯＭ等より読み出される制御プログラムを実行することで実現される。
【００４６】
先ず、ステップＳ５０００では、パケットＳｉｚｅ、１Ｂａｎｄのパケット数の設定を行う。この際にパケットのサイズ、１バンドのパケット数は、パケット数＝（非圧縮の場合のデータサイズ／パケットサイズ）の切り上げ＋１となるように設定する。
【００４７】
そして、ステップＳ５００１では、パケットの属性を示すＨｅａｄｅｒに記載すべき値をパケット作成部２４１のＲｅｇｉｓｔｅｒに設定する。
【００４８】
Ｈｅａｄｅｒに含まれる情報はパケットの番号を示すパケットＩＤ、パケットを送信したい相手を示すＴａｒｇｅｔ  ＩＤ、画像データが圧縮されているか非圧縮かを示すＣｏｍｐｒｅｓｓ  Ｆｌａｇ、パケットに含まれるＤａｔａの中で有効なＩｍａｇｅ  Ｄａｔａの長さを示すＩｍａｇｅ  Ｄａｔａ  Ｌｅｎｇｔｈ、前に送ったパケットと同じでパケットであることを示すＲｅｐｅａｔ  Ｆｌａｇなどである。
【００４９】
また、ステップＳ５００２ではバンドを構成する最初のパケットが有効なデータを含まない空パケット（Ｉｍａｇｅ  Ｄａｔａ  Ｌｅｎｇｔｈ＝０）とするために、まず空パケットを送信する。この空パケットは外部メモリ５２０にＰａｇｅスプールしたパケットを、パケット受信部２９０が読み出す際に、パケットＤＭＡＣ１８０とパケット受信部２９０のハンドシェイクのために使われる。
【００５０】
次に、ステップＳ５００３では画像圧縮部２３０から圧縮データ（Ｃｏｄｅ  Ｄａｔａ）の受信を開始する。そして、ステップＳ５００４ではパケットの送信を開始する。この際にＨｅａｄｅｒのＩｍａｇｅ  Ｄａｔａ  ＬｅｎｇｔｈはパケットＳｉｚｅに設定しておく。
【００５１】
次に、ステップＳ５００５では、パケット作成部２４１は１パケット分のＢｕｆｆｅｒを持っておらずパケットを一定サイズに単純に分割したＳｕｂ  パケット分のＢｕｆｆｅｒしか持っていないので、ＳｕｂパケットＢｕｆｆｅｒが一杯になると、パケット作成部２４１はＡｔｔｒｉｂｕｔｅ（Ｈｅａｄｅｒ情報のうち送受信のハンドシェイクに最低限必要な項目のみをコピーした物）＋Ｓｕｂ  パケットの送信をパケット  ＭＵＸ２４２に要求する。そのため、最初のＳｕｂ  パケットはＨｅａｄｅｒとＩｍａｇｅ  Ｄａｔａ（圧縮データ）の両方を含む。また、データを送信すると共に画像圧縮部２３０から受信したデータサイズをカウントする。
【００５２】
そして、ステップＳ５００６では、画像圧縮部２３０からの１バンド分画像データの圧縮終了を知らせる終了割り込みを監視して、圧縮終了を知らせる終了割り込みがあったか否かを判断し、圧縮終了を知らせる終了割り込みがなかったと判断した場合は、ステップＳ５００７で、受信Ｄａｔａ  ＳｉｚｅがパケットＳｉｚｅに一致したかどうかを判断し、画像圧縮部２３０からの終了割り込みが来る前に受信データサイズがパケットサイズに達していると判断した場合は、ステップＳ５００８で、パケット数が先に決めた１バンドのパケット数に収まっているかどうかを判定し、パケット数に収まっていると判断した場合は、例えばパケット数が先に決めた１バンドのパケット数未満であった場合は、ステップＳ５００９に進み、パケットＩＤをＩｎｃｒｅｍｅｎｔするとともに、受信Ｄａｔａ  Ｓｉｚｅをクリア（受信データサイズを０に設定）し、ステップＳ５００４に戻り次のパケットの送信を開始する。
【００５３】
一方、ステップＳ５００６で、受信データサイズがパケットサイズに達する前に画像圧縮部２３０からの終了割り込みがきたと判断した場合は、ステップＳ５２００に進み、すでに送信しているＨｅａｄｅｒのＩｍａｇｅ  Ｄａｔａ  Ｌｅｎｇｔｈを正しい値に修正するために、Ｉｍａｇｅ  Ｄａｔａ  ＬｅｎｇｔｈにＳ５００５でカウントした受信データサイズを設定したＦｏｏｔｅｒをパケットＤＭＡＣ１９０に送信する。
【００５４】
なお、ＦｏｏｔｅｒはＨｅａｄｅｒと同じ構成であり、パケットＤＭＡＣ１９０はＦｏｏｔｅｒを受信すると外部メモリ５２０のＨｅａｄｅｒ部分に上書きする。
【００５５】
そして、ステップＳ５２０１、Ｓ５２０３で、パケット数（パケットＩＤ）が先に決めた１バンドのパケット数に達しているかを判定して、１バンドのパケット数に達していると判断した場合は、ステップＳ５３００へそれぞれ進み、１Ｂａｎｄの処理を終了する。
【００５６】
一方、ステップステップＳ５２０１で、先に決めた１バンドのパケット数に達していないと判断した場合は、ステップＳ５２０２へ進み、有効なデータを含んだパケットを送信した後に、パケット数が先に決めた１バンドのパケット数に達していない場合であり、パケットＩＤをＩｎｃｒｅｍｅｎｔし、空パケットを送信する。
【００５７】
一方、ステップＳ５２０３で、先に決めた１バンドのパケット数に達していないと判断した場合、すなわち、空パケットを送信した後に、パケット数が先に決めた１バンドのパケット数に達していない場合は、ステップＳ５２０４に進み、パケットＩＤ  をＩｎｃｒｅｍｅｎｔしＲｅｐｅａｔ  Ｆｌａｇをセットしたパケットを送信する処理を、パケット数が先に決めた１バンドのパケット数に達するまで繰り返す。
【００５８】
一方、ステップＳ５００８で、１バンドの圧縮データが先に決めたパケット数に収まらなかったと判断した場合、つまり圧縮率が「１」を超えた場合であるので、ステップステップＳ５１００に進み、パケット送信部２４０はＭａｉｎ  Ｃｏｎｔｒｏｌｌｅｒ１００に割り込みを出し、外部メモリ５２０に格納された、送信中バンドの圧縮データの破棄を要求する。
【００５９】
そして、ステップＳ５１０１ではパケットＩＤをクリアする。次に、ステップＳ５１０２では、画像圧縮部２３０から圧縮率が「１」を超えたバンドのＲａｗ  Ｄａｔａ受信を開始して、ステップＳ５００５へ戻り、パケットＤａｔａの送信を再開する。
【００６０】
＜パケットＤＭＡＣ１９０の説明＞
外部メモリ５２０では、パケットは図４に示すように格納される。各パケットは外部メモリ５２０上の任意の場所に格納されパケット  Ｔａｂｌｅによって管理される。パケット  Ｔａｂｌｅは任意のパケットＩＤを持つパケットが外部メモリ１５２０上のどこに存在するかを示すＰｏｉｎｔｅｒの集合であり、Ｙｎ／Ｘｎの２次元のＴａｂｌｅである。
【００６１】
パケット  ＴａｂｌｅはパケットＤＭＡＣ１９０によって作成され、パケットＤＭＡＣ１９０はＲｅｐｅａｔ  Ｆｌａｇがセットされたパケットを受信するとパケットを外部メモリ１５２０に格納することなく、パケット  Ｔａｂｌｅの該当するパケットＩＤの部分に、１つ前に受信したパケットへのＰｏｉｎｔｅｒを設定する。
【００６２】
＜パケットＤＭＡＣ１８０の説明＞
外部メモリ１５２０に格納したパケットをパケットＤＭＡＣ１８０で読み出して外部バス４２０に送信する場合には、送信したいパケットＩＤをパケットＤＭＡＣ１８０に設定する。
【００６３】
パケットＤＭＡＣ１８０は２次元ＤＭＡをサポートし、パケットＩＤの設定は、Ｙｎ、Ｘｎそれぞれ独立に送信開始パケットＩＤ、Ｉｎｃｒｅｍｅｎｔ  ｏｒ  Ｄｅｃｒｅｍｅｎｔ、送信パケット数を設定可能である。
【００６４】
ｘバンドの圧縮データを構成するパケットを送信したい場合には、送信開始パケットＩＤ：Ｙｘ−１／Ｘ０、Ｘ  Ｄｉｒｅｃｔｉｏｎ：Ｉｎｃｒｅｍｅｎｔ、送信パケット数１：Ｘｍａｘに設定する。１バンドのパケット数をＸｍａｘに揃えることにより送信開始パケットＩＤのＹｎのみを変更することによって任意のバンドの圧縮データを構成するパケットを送信することが可能である。
【００６５】
また、リバース印刷のために最終バンドから送信したい場合に、送信開始パケットＩＤ：Ｙｍａｘ／Ｘ０、Ｙ  Ｄｉｒｅｃｔｉｏｎ：Ｄｅｃｒｅｍｅｎｔ，Ｘ  Ｄｉｒｅｃｔｉｏｎ：Ｉｎｃｒｅｍｅｎｔ、送信パケット数Ｙｍａｘ：Ｘｍａｘに設定することにより１Ｐａｇｅ分まとめてＤＭＡを起動することも可能である。
【００６６】
また、パケットＤＭＡＣ１８０がパケットを送信する場合には、パケット送信後にパケット受信部２９０からＲｅｔｕｒｎ  パケット（パケットのＨｅａｄｅｒ部分のみを切り出したもの）が帰って来るまで次のパケットを送信しない。
【００６７】
＜パケット受信部２９０の説明＞
パケット受信部２９０は、パケット  Ｄｉｓｔｒｉｂｕｔｅｒ２９１とパケットＤＭＡＣ２９２で構成される。パケット  Ｄｉｓｔｒｉｂｕｔｅｒ２９１はＳｕｂ  パケットをスプールするためのＳｕｂパケットＢｕｆｆｅｒを内部に持ち、Ｓｕｂ  パケットのスプールが完了すると、Ｓｕｂ  パケットのＡｔｔｒｉｂｕｔｅを解析しＴａｒｇｅｔに設定されているパケットＤＭＡＣ２９２にデータの引取りを要求する。
【００６８】
この要求を受けたパケットＤＭＡＣ２９２は、外部メモリ５３０上で自分に割り当てられたＢｕｆｆｅｒの状態を確認し、使用可能であればパケットのＩｍａｇｅ  Ｄａｔａ部分のみを外部メモリ５２０に格納する。
【００６９】
この際にパケット  ＨｅａｄｅｒのＣｏｍｐｒｅｓｓ  Ｆｌａｇを解析してＩｍａｇｅ  Ｄａｔａが非圧縮であれば、そのバンドが非圧縮であることを画像伸長部２８０に通知する。
【００７０】
また、Ｓｕｂ  パケットにＨｅａｄｅｒが含まれていた場合には、Ｒｅｔｕｒｎ  パケットをＭａｉｎ  Ｃｏｎｔｒｏｌｌｅｒ１００に返す。Ｂｕｆｆｅｒの状態が使用不可であった場合には、外部メモリ５３０上で自分に割り当てられたＢｕｆｆｅｒの状態が使用可になるまでＲｅｔｕｒｎ  パケットを返さない。
【００７１】
外部メモリ５３０上で自分に割り当てられたＢｕｆｆｅｒはバンド単位で確保するのでＢｕｆｆｅｒの状態が使用不可となる可能性があるのはバンドの最初のパケットのみであるが、バンド最初のパケットは空パケットであるので、パケットＤＭＡＣ２９２は、すぐにパケット  Ｄｉｓｔｒｉｂｕｔｏｒ２９１のＳｕｂパケットＢｕｆｆｅｒを開放することでき、他のパケットの受信を妨げることはない。
【００７２】
これにより、先頭パケット受信時に、受信バッファとしてのＳｕｂパケットＢｕｆｆｅｒが空き状態となり、即時応答パケットを送信元に通知可能となる。
【００７３】
そして、外部メモリ５３０上で自分に割り当てられたＢｕｆｆｅｒが使用可能になった時点でＲｅｔｕｒｎ  パケットを返し次のパケットを受信する。
【００７４】
＜画像伸長部２８０の説明＞
画像圧縮部２８０はパケット受信部２９０が外部メモリ５３０に格納したバンド単位の圧縮データを読み出し伸長し、外部メモリ５３０の別の領域に伸長したＲａｗ  Ｒａｓｔｅｒ  Ｄａｔａを書き戻す。
【００７５】
ただし、パケット受信部２９０から当該バンドが非圧縮であることを通知された場合には、外部メモリ５３０に格納したバンド単位の非圧縮データを読み出し、そのまま外部メモリ５３０の別の領域にＲａｗ  Ｒａｓｔｅｒ  Ｄａｔａを書き戻す。
【００７６】
画像伸長部２８０はパケット受信部２９０、プリンタ制御部２７０と外部メモリ５３０上のＢｕｆｆｅｒを共有し連携して動作する。
【００７７】
＜プリンタ制御部２７０の説明＞
プリンタ制御部２７０はＰｒｉｎｔ  Ｅｎｇｉｎｅ部３００からのＣＭＹＫ独立のリクエストに応じて、外部メモリ  ５３０からＲａｗ  Ｒａｓｔｅｒ  Ｄａｔａを読み出して送信する。プリンタ制御部ではリバース（１８０度回転）に対応するために、バンド単位の１８０度回転をサポートする。この機能の利用と、パケットＤＭＡＣ１８０による最終バンドからの送信を組み合わせることによりＰａｇｅ単位のリバース（１８０度回転）を実現する。
【００７８】
＜ＰＷＭ部３１０、マーキングユニット３０４の構成＞
図７は、図１に示したＰＷＭ部３１０の構成を説明する図であり、図１と同一のものには同一の符号を付してある。なお、ＰＷＭ部３１０及びマーキングユニット３０４は複数色（本実施形態ではＣＭＹＫの４色）の各々に対して設けられている。
【００７９】
図８は、図７に示すＰＷＭ部３１０の動作を説明するタイミングチャートである。
【００８０】
図７において、７０１は三角波発生部で、図８に示す三角波ａを発生する。７０２はＤ／Ａコンバータ（Ｄ／Ａ変換部）で、入力されるディジタル画像信号を図８に示すアナログ信号に変換する。
【００８１】
三角波発生部７０１からの図８の信号ａ及びＤ／Ａコンバータ７０２からの図８の信号ｂは、コンパレータ７０３で大小比較されて、図８の信号ｃとなってレーザ駆動部７０４に送られ、ＣＭＹＫそれぞれが、ＣＭＹＫそれぞれのレーザ７０５でレーザビームに変換される。
【００８２】
＜マーキング部３２０の構成＞
図９は、図１に示したマーキング部３２０の構成を説明する断面図であり、例えば４連タンデム型のフルカラー画像形成装置の例に対応する。
【００８３】
図９において、８１３はポリゴンミラーであり、４つの半導体レーザ８０５より発光された４本のレーザ光を受ける。その内の１本はミラー８１４、８１５、８１６をへて感光ドラム８１７を走査し、次の１本はミラー８１８、８１９、８２０をへて感光ドラム８２１を走査し、ミラー８２２、８２３、８２４をへて感光ドラム８２５を走査し、次の１本はミラー８２６、８２７、８２８をへて感光ドラム８２９を走査する。
【００８４】
一方、８３０はイエロー（Ｙ）のトナーを供給する現像器であり、レーザ光に従い、感光ドラム８１７上にイエローのトナー像を形成する。８３１はマゼンタ（Ｍ）のトナーを供給する現像器であり、レーザ光に従い、感光ドラム８２１上にマゼンタのトナー像を形成する。
【００８５】
８３２はシアン（Ｃ）のトナーを供給する現像器であり、レーザ光に従い、感光ドラム８２５上にシアンのトナー像を形成する。８３３はブラック（Ｋ）のトナーを供給する現像器であり、レーザ光に従い、感光ドラム８２９上にマゼンタのトナー像を形成する。以上４色（Ｙ，Ｍ，Ｃ，Ｋ）のトナー像がシートに転写され、フルカラーの出力画像を得ることができる。
【００８６】
シートカセット８３４、８３５および、手差しトレイ８３６のいずれかより供給されたシートは、レジストローラ８３７をへて、転写ベルト８３８上に吸着され、搬送される。給紙のタイミングと動機がとられて、予め感光ドラム８１７、８２１、８２５、８２９には各色のトナーが現像されており、シートの搬送とともに、トナーがシートに転写される。
【００８７】
このようにして、各色のトナーが転写されたシートは、分離され、搬送ベルト８３９により搬送され、定着器８４０によって、トナーがシートに定着される。定着器８４０を抜けたシートはフラッパ８５０によりいったん下方向へ導かれてシートの後端がフラッパ８５０を抜けた後、スイッチバックさせて排出する。これによりフェイスダウン状態で排出され、先頭頁から順にプリントしたときに正しい順となる。
【００８８】
なお、４つの感光ドラム８１７、８２１、８２５、８２９は、距離ｄをおいて、等間隔に配置されており、搬送ベルト８３９により、シートは一定速度ｖで搬送されており、このタイミング同期がなされて、４つの半導体レーザ８０５は駆動される。
【００８９】
＜Ｐａｇｅスプール処理の説明＞
図１０は、本発明に係る画像形成装置における第２のデータ処理手順の一例を示すフローチャートであり、図１に示したＣＰＵ１２０によるプリントデータスプール処理手順に対応する。なお、Ｓ２０００〜Ｓ２００２は各ステップを示す。
【００９０】
図１１は、本発明に係る画像形成システムにおけるデータ処理手順の一例を示すフローチャートであり、図１に示したＰＣ６００のプリンタドライバによるデータ処理手順に対応する。なお、Ｓ２００３〜Ｓ２００９は各ステップを示す。
【００９１】
先ず、ステップＳ２０００では、ユーザがＰＣ６００上で、例えば図２に示したＧＵＩ（ページ設定画面）を使って、プリントしたい画像、枚数、両面印刷の有無を設定する。
【００９２】
そして、ステップＳ２００１では、プリンタドライバにより設定に応じたＰＤＬデータが生成され、該生成されたＰＤＬデータがネットワーク４１０経由でＭａｉｎ  Ｃｏｎｔｒｏｌｌｅｒ部１００に送信して、処理を終了する。
【００９３】
そして、画像形成装置において、Ｍａｉｎ  Ｃｏｎｔｒｏｌｌｅｒ部１００では、ＰＣ６００から受信したＰＤＬデータをＮｅｔｗｏｒｋ  Ｃｏｎｔｒｏｌｌｅｒ１５０，Ｂｕｓ  Ｓｗｉｔｃｈ１６０，メモリ  Ｃｏｎｔｒｏｌｌｅｒ１２０を介して外部メモリ５２０に一度スプールする。Ｓ２００２では、ＣＰＵ１３０がＰＤＬデータを解析してディスプレイリストに展開し、Ｒｅｎｄｅｒｉｎｇ部１７０に転送する。
【００９４】
次に、ステップＳ２００３ではＲｅｎｄｅｒｉｎｇ部１７０がディスプレイリストをバンド単位でＲＧＢもしくはＣＭＹＫ点順次の多値のＲａｓｔｅｒ画像に展開し外部メモリ５２０に一度書き戻す。
【００９５】
そして、１バンドの多値のＲａｓｔｅｒ画像が外部メモリ５２０にスプールされると、Ｂｕｓ  Ｃｏｎｔｒｏｌｌｅｒ１４０，２１０を介してプリンタ画像処理部２２０に送信する。
【００９６】
そして、ステップＳ２００４では、プリンタ画像処理部２２０で多値のＲａｓｔｅｒ画像を印刷するプリンタに適した画像データに変換しＣＭＹＫ独立に面順次で画像圧縮部２３０に送信する。
【００９７】
次に、ステップＳ２００５では、画像圧縮部２３０がバンド単位で圧縮（符号化）を実施し圧縮Ｃｏｄｅをパケット送信部２４０に送信する。ただし、圧縮率が「１」を超えた場合には生データを送り直す。
【００９８】
そしてステップＳ２００６ではパケット送信Ｂｌｃｏｋ２４０が受け取った圧縮データもしくは生データを、図３に示すように所定にサイズに分割しパケットの属性を示すＨｅａｄｅｒを先頭に付加することによってパケットを作成し、外部バス４３０を介してＭａｉｎ  Ｃｏｎｔｒｏｌｌｅｒ部１００に送信する。
【００９９】
次に、ステップＳ２００７では、パケットＤＭＡＣ１９０が受信したパケットを図４に示すように、外部メモリ５２０に格納する。そして、パケットＤＭＡＣ１９０は受信パケット数が１バンドのパケット数に達しているとバンド単位の処理が終了したと認識する。
【０１００】
次に、ステップＳ２００８では、Ｐａｇｅを構成する最終バンドかどうかを判定し、まだ処理が終わっていないバンドがあると判断した場合は、ステップればＳ２００３に戻って、次のバンドの処理を始める。
【０１０１】
一方、ステップＳ２００８で、すべのバンドの処理が終了していると判断した場合は、ステップＳ２００９で、Ｐａｇｅスプールを終了する。
【０１０２】
＜Ｐａｇｅスプール後のプリントシーケンスの説明＞
図１２は、本発明に係る画像形成装置における第３のデータ処理手順の一例を示すフローチャートであり、画像形成装置におけるメイン処理手順に対応する。なお、Ｓ８０００〜Ｓ８０１０は各ステップを示し、各ステップは、図１に示したＭａｉｎ  Ｃｏｎｔｒｏｌｌｅｒ部１００のＣＰＵ１３０が図示しないメモリから制御プログラムを読み出して実行することで実現される。
【０１０３】
まず、ステップＳ８０００で、後述するフローに示す制御で参照されるべき変数、各色ごとのＰｒｉｎｔｅｒ  Ｃｏｎｔｒｏｌｌｅｒ部２００に転送するように要求されたバンド数（ｒｅｑ＿ｂａｎｄ＿ｙ，ｒｅｑ＿ｂａｎｄ＿ｍ，ｒｅｑ＿ｂａｎｄ＿ｃ，ｒｅｑ＿ｂａｎｄ＿ｋ）、各色ごとのＰｒｉｎｔｅｒＣｏｎｔｒｏｌｌｅｒ部２００への転送が完了したバンド数（ｓｅｎｔ＿ｂａｎｄ＿ｙ，ｓｅｎｔ＿ｂａｎｄ＿ｍ，ｓｅｎｔ＿ｂａｎｄ＿ｃ，ｓｅｎｔ＿ｂａｎｄ＿ｋ）をカウントするパラメータをそれぞれ初期化する。
【０１０４】
次に、ステップ８００１で本処理から、図１３に示すｐａｃｋｅｔ＿ｓｅｎｄ処理、図１４に示すＰａｃｋｅｔ受信部２９０、図１５に示す画像伸長Ｂｌｏｃｋ２８０、図１６に示すプリンタ制御部２７０による処理を開始する。
【０１０５】
その後、ステップＳ８００２で、Ｐｒｉｎｔｅｒ  Ｃｏｎｔｒｏｌｌｅｒ部２００から何らかの割込みが来るのを待ち、割込み要因がｎｅｘｔ＿ｂａｎｄ＿ｒｅｑｕｅｓｔであると判断した場合には、ステップＳ８００４〜Ｓ８００６でどのＰｌａｎｅ（色）からのｒｅｑｕｅｓｔであるかをＹ→Ｍ→Ｃ→Ｋの順に判定し、ステップＳ８００７〜Ｓ８０１０で、当該Ｐｌａｎｅ（色）毎にそれぞれパラメータｒｅｑ＿ｂａｎｄ＿ｙ，ｒｅｑ＿ｂａｎｄ＿ｍ，ｒｅｑ＿ｂａｎｄ＿ｃ，ｒｅｑ＿ｂａｎｄ＿ｋをインクリメント（＋１）して、ステップＳ８００２へ戻る。
【０１０６】
一方、ステップＳ８００３で、割込み要因がｎｅｘｔ＿ｂａｎｄ＿ｒｅｑｕｅｓｔでなく、ＰａｇｅＥｎｄであったと判断した場合には、本処理を終了する。
【０１０７】
図１３は、本発明に係る画像形成装置における第４のデータ処理手順の一例を示すフローチャートであり、図１２に示したステップＳ８００１で処理を開始している、ｐａｃｋｅｔ＿ｓｅｎｄ処理の詳細手順に対応する。なお、Ｓ８１００〜Ｓ８１０７は各ステップを示し、各ステップは、メモリＣｏｎｔｒｏｌｌｅｒ２５０が図示しないメモリから制御プログラムを読み出して実行することで実現される。
【０１０８】
本ｐａｃｋｅｔ＿ｓｅｎｄ処理では、図１２に示すステップＳ８００１で処理が開示されると、ステップＳ８１００〜Ｓ８１０３で各Ｐｌａｅｎ（色（Ｙ→Ｍ→Ｃ→Ｋ））順に、Ｐｒｉｎｔｅｒ  Ｃｏｎｔｒｏｌｌｅｒ部２００に転送するように要求されたバンド数と、Ｐｒｉｎｔｅｒ  Ｃｏｎｔｒｏｌｌｅｒ部２００への転送が完了したバンド数とをそれぞれ比較し、転送するように要求されたのに転送が完了していないバンドが存在するとそれぞれ判断した場合は、ステップＳ８１０４〜Ｓ８１０７で、当該Ｐｌａｎｅ（色（Ｙ→Ｍ→Ｃ→Ｋ））のパラメータｓｅｎｔ＿ｂａｎｄ＿ｙ＋１番目のバンド、パラメータｓｅｎｔ＿ｂａｎｄ＿ｍ＋１番目のバンド、パラメータｓｅｎｔ＿ｂａｎｄ＿ｃ＋１番目のバンド、パラメータｓｅｎｔ＿ｂａｎｄ＿ｋ＋１番目のバンドを構成するＰａｃｋｅｔをＰａｃｋｅｔＤｍａｃ１８０を使いＰｒｉｎｔｅｒ  Ｃｏｎｔｒｏｌｌｅｒ部２００に転送し、転送が終了すると、各パラメータｓｅｎｔ＿ｂａｎｄ＿ｙ、ｓｅｎｔ＿ｂａｎｄ＿ｍ、ｓｅｎｔ＿ｂａｎｄ＿ｃ、ｓｅｎｔ＿ｂａｎｄ＿ｋをインクリメントして、ステップＳ８１００に戻る。
【０１０９】
なお、ｒｅｑ＿ｂａｎｄ＿（ｘ）の初期値は「０」，ｓｅｎｔ＿ｂａｎｄ＿（ｘ）の初期値は「２」であるので、最初はｙ，ｍ，ｃ，ｋの１ｓｔ  Ｂａｎｄ，ｙ，ｍ，ｃ，ｋの２ｎｄ  Ｂａｎｄの順番でＰｒｉｎｔｅｒ  Ｃｏｎｔｒｏｌｌｅｒ部２００に転送する。
【０１１０】
なお、ｓｅｎｔ＿ｂａｎｄ＿（ｘ）における、（ｘ）のｘは、ｙ，ｍ，ｃ，ｋのいずれかを示す。
【０１１１】
また、ｐａｃｋｅｔ受信部２９０、画像伸長Ｂｌｏｃｋ２８０、プリンタ制御部２７０には各Ｐｌａｎｅ（色（Ｙ、Ｍ、Ｃ、Ｋ））ごとに独立して処理を行うために同じ物が４個存在するが、その一つを例として処理を説明する。
【０１１２】
図１４は、本発明に係る画像形成装置における第５のデータ処理手順の一例を示すフローチャートであり、図１２に示したステップＳ８００１で処理を開始している、ｐａｃｋｅｔ受信部２９０の処理の詳細手順に対応する。なお、Ｓ８２００〜Ｓ８２０３は各ステップを示し、各ステップは、ｐａｃｋｅｔ受信部２９０が図示しないメモリから制御プログラムを実行すること実現される。
【０１１３】
図５に示したＰａｃｋｅｔ受信部２９０では、ステップＳ８２００でＢａｎｄを構成する最初のＰａｃｋｅｔをＰａｃｋｅｔＤｍａｃ１８０から受信すると、ステップＳ８２０１で、図１７に示すデータ構造を備えるｃｏｄｅ  ｄａｔａ  ｂｕｆｆｅｒ５３１の使用数（パラメータｃｏｄｅ＿ｄａｔａ＿ｂｕｆ＿ｃｎｔ）とｃｏｄｅ  ｄａｔａ  ｂｕｆｆｅｒの総数（パラメータｃｏｄｅ＿ｄａｔａ＿ｂｕｆ＿ｎｕｍ）とを比較し、ｃｏｄｅ  ｄａｔａ  ｂｕｆｆｅｒ５３１に空きがあると判断した場合には、受信したＰａｃｋｅｔのＨｅａｄｅｒ部分のみをＰａｃｋｅｔＤｍａｃ１８０に返すことにより、ステップＳ８２０２で、Ｂａｎｄを構成する残り全部のＰａｃｋｅｔを受信し、受信した有効データを外部Ｍｅｍｏｒｙ５３０上のＣｏｄｅ  Ｄａｔａ  Ｂｕｆｆｅｒ５３１の領域に書き込む。そして、ステップＳ８２０３でｃｏｄｅ  ｄａｔａ  ｂｕｆｆｅｒ５３１の使用数をインクリメントし、ステップＳ８２００に戻る。
【０１１４】
図１５は、本発明に係る画像形成装置における第６のデータ処理手順の一例を示すフローチャートであり、図１２に示したステップＳ８００１で処理を開始している、画像伸長部２８０の処理の詳細手順に対応する。なお、Ｓ８３００〜Ｓ８３０６は各ステップを示し、各ステップは、ＰｒｉｎｔｅｒＣｏｎｔｒｏｌｌｅｒ部２００の画像伸長部２８０が図示しないメモリから読み出す制御プログラムを実行することで実現される。
【０１１５】
画像伸長部２８０では、ステップＳ８３００で、図１に示す外部メモリ５３０に確保されるｃｏｄｅ  ｄａｔａ  ｂｕｆｆｅｒ５３１（図１７に示すデータ構造を備える）に未処理のバンドデータが存在するかどうかを判定し、未処理のバンドデータが存在すると判断した場合には、さらにステップＳ８３０１で、次のＢａｎｄを処理（伸長）した場合に、処理したデータを書き出すための図１７に示すデータ構造を備えるｒａｗ  ｄａｔａ  ｂｕｆｆｅｒ５３２に空きがあるかどうかを判定する。
【０１１６】
そして、ステップＳ８３００、Ｓ８３０１の条件が成立して、画像伸長部２８０が処理を開始する条件が整うと、ステップＳ８３０２で、Ｎｅｘｔ  Ｂａｎｄのｒｅｑｕｅｓｔが必要であるかどうかを判定し、必要であると判断した場合は、ステップＳ８３０３でｎｅｘｔ＿ｂａｎｄ＿ｒｅｑｕｅｓｔ割り込みをＭａｉｎ  Ｃｏｎｔｒｏｌｌｅｒ部１００に送信する。
【０１１７】
その後、ステップＳ８３０４で、１バンド分の処理（伸長）を行い、ステップＳ８３０５で、未処理のバンド数（ｃｏｄｅ  ｄａｔａ  ｂｕｆｆｅｒ５３１の使用数）を示すパラメータｃｏｄｅ  ｄａｔａ  ｂｕｆ＿ｃｎｔを「１」ディクリメントし、ｒａｗ  ｄａｔａ  ｂｕｆｆｅｒ５３２の使用数を示すパラメータｒａｗ  ｄａｔａ  ｂｕｆ＿ｃｎｔを「１」インクリメント、処理を終えたバンド数（ｄｅｃ＿ｂａｎｄ＿ｃｎｔ）を示すパラメータｄｅｃ＿ｂａｎｄ＿ｃｎｔを「１」インクリメントする。
【０１１８】
そして、ステップＳ８３０６で、処理し終えたバンド数と１Ｐａｇｅのバンド総数（ｔｏｔａｌ＿ｂａｎｄ＿ｎｕｍ）とを比較して、１Ｐａｇｅ分すべて処理し終えていると判断したら、本処理を終了し、終了していないと判断した場合には、ステップＳ８３００へ戻る。
【０１１９】
図１６は、本発明に係る画像形成装置における第７のデータ処理手順の一例を示すフローチャートであり、図１２に示したステップＳ８００１で処理を開始している、プリンタ制御部２７０の処理の詳細手順に対応する。なお、Ｓ８４００〜Ｓ８４０６は各ステップを示し、各ステップは、プリンタ制御部２７０が図示しないメモリから制御プログラムを読み出して実行することで実現される。
【０１２０】
プリンタ制御部２７０では、ステップＳ８４００で、画像伸長部２８０が２Ｂａｎｄ処理（伸長）し終えるのを待つ。その後、ステップＳ８４０１で、Ｐｒｉｎｔ  Ｅｎｇｉｎｅ３００が起動する。ステップＳ８４０２で、１Ｂａｎｄ分のデータをＰｒｉｎｔ  Ｅｎｇｉｎｅ部３００に送信し終えると、ステップＳ８４０３で、図１７に示すデータ構造を備えるｒａｗ  ｄａｔａ  ｂｕｆｆｅｒ５３２の使用数（ｒａｗ＿ｄａｔａ＿ｂｕｆ＿ｃｎｔ）をディクリメントし、ステップＳ８４０４で、Ｐｒｉｎｔ  Ｅｎｇｉｎｅ部３００に送信し終えたＢａｎｄ数カウント（ｐｒｉｎｔ＿ｂａｎｄ＿ｃｎｔ）をインクリメントする。
【０１２１】
そして、ステップＳ８４０５で、１Ｐａｇｅ全部のＢａｎｄをＰｒｉｎｔ  Ｅｎｇｉｎｅ部３００に送信し終えたかどうかを判定し、送信し終えていないと判断した場合には、ステップＳ８４０２に戻り、すべて送信し終えていると判断した場合には、ステップＳ８４０６で、ＰａｇｅＥｎｄ割り込みをＭａｉｎ  Ｃｏｎｔｒｏｌｌｅｒ部１００に送信し、本処理処理を終了する。
【０１２２】
図１７は、図１に示した外部メモリ５２０のバッファ構成を説明図であり、図１と同一のものには同一の符号を付してある。
【０１２３】
図１７において、５３１はＣｏｄｅ  Ｄａｔａ  Ｂｕｆｆｅｒで、色別に備える複数の圧縮データバッファが設けられている。５３２はＲａｗ  Ｄａｔａ  Ｂｕｆｆｅｒで、画像伸長部２８０で伸長される伸長データ格納用のバッファとして機能し、色別に備える複数の伸長データバッファが設けられている。
【０１２４】
５３３はＲａｗ  Ｄａｔａ  Ｂｕｆｆｅｒで、画像圧縮部２３０で圧縮される圧縮データ格納用のバッファとして機能し、色別に備える複数の圧縮データバッファが設けられている。
【０１２５】
これにより、画像形成装置からのリクエストを先に予測してＤＭＡＣを起動しておき、空パケットと、そのＲｅｔｕｒｎ  パケットによるハンドシェイクによりＣＰＵ１３０を介さずに、すみやかにページスプールデータの転送開始を可能にすることにより、画像形成装置からのリクエストに応じてページスプールしたデータをバンド単位で送信し、１個のＤＭＡＣを時分割に各色で使いまわすことにより、従来、複数の感光ドラムを備える画像形成装置における各色画像形成のための同期に使用されていたドラム間遅延メモリをなくし、１つのＤＭＡＣで各色分のデータを適正なタイミングで送信することがきる。
【０１２６】
〔第２実施形態〕
以下、図１８に示すメモリマップを参照して本発明に係る印刷装置で読み取り可能なデータ処理プログラムの構成について説明する。
【０１２７】
図１８は、本発明に係る印刷装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【０１２８】
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報，作成者等も記憶され、かつ、プログラム読み出し側のＯＳ等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【０１２９】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【０１３０】
本実施形態における図６，図１０，図１１，図１２〜図１６に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやＦＤ等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【０１３１】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０１３２】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１３３】
従って、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【０１３４】
プログラムを供給するための記憶媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤなどを用いることができる。
【０１３５】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１３６】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは、圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバやｆｔｐサーバ等も本発明の請求項に含まれるものである。
【０１３７】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１３８】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１３９】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１４０】
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施形態の有機的な組合せを含む）が可能であり、それらを本発明の範囲から排除するものではない。
【０１４１】
本発明の様々な例と実施形態を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではなく、以下の実施態様も含まれることはいうまでもない。以下、その実施態様１〜８について説明する。
【０１４２】
〔実施態様１〕
入力された複数色にかかるカラー画像データから複数のパケットデータを生成するパケットデータ生成手段（図５に示すパケット送信部２４０）と、前記パケットデータ生成手段が生成した複数のパケットデータを記憶する第１の記憶手段と、前記複数のパケットデータを記憶する第２の記憶手段（図１に示す外部メモリ５３０）であって、前記複数色の各色にかかるパケットデータを、前記複数色の各色毎に割り当てられた所定の記憶領域に記憶する第２の記憶手段と、前記複数色の各色について設けられ、前記第２の記憶手段に記憶されたパケットデータに基づいて画像を形成する複数の画像形成手段と（図１に示すＰＷＭ部３１０及びマーキング部３０４であって、複数色（例えば４色）の各々に対して設けられている）、前記複数色の各色について設けられ、第２の記憶手段の所定色にかかる前記記憶領域に記憶された前記パケットデータの記憶量に基づいて、前記第１の記憶手段に記憶された前記所定色にかかるパケットデータの、前記第２の記憶手段の前記所定色にかかる記憶領域への転送を制御する複数の第１転送制御手段（図５に示すＰａｃｋｅｔＤＭＡＣ２９２）とを有することを特徴とする画像形成装置。
【０１４３】
これにより、複数色にかかる画像形成部の各々に対して遅延メモリを設けることなく安価にタンデム方式によるカラー画像形成を可能とすることができる。
【０１４４】
〔実施態様２〕
入力された複数色にかかるカラー画像データを圧縮する圧縮手段と、前記第２の記憶手段に記憶されたパケットデータを伸張する伸長手段を有し、前記パケットデータ生成手段は前記圧縮手段により圧縮された前記複数色にかかるカラー画像データから複数のパケットデータを生成し、前記複数の画像形成手段は前記伸長手段により伸長された複数色の各色にかかるパケットデータを合成したカラー画像データに基づいて画像を形成することをすることを特徴とする実施態様１に記載の画像形成装置。
【０１４５】
〔実施態様３〕
前記第２の記憶手段は、前記伸長手段により伸長されたパケットデータを記憶し、前記複数の画像形成手段は、前記第２の記憶手段に記憶された前記伸長された複数色の各色にかかるパケットデータを合成したカラー画像データに基づいて画像を形成することを特徴とする実施態様２記載の画像形成装置。
【０１４６】
これにより、印刷可能な印刷データに伸長して支障なくタンデム方式でカラー画像を形成できる。
【０１４７】
〔実施態様４〕
前記第１の記憶手段は、ページ単位で入力されるカラー画像データを所定単位に分割した画像データを複数のパケットデータとして格納することを特徴とする実施態様１記載の画像形成装置。
【０１４８】
〔実施態様５〕
前記複数の第１転送制御手段からの転送要求に応じて、前記第１の記憶手段に記憶された複数色にかかるパケットデータを前記複数の第１転送制御手段のいずれかへ転送するための第２転送制御手段を有することを特徴とする実施態様１〜４のいずれかに記載の画像形成装置。
【０１４９】
〔実施態様６〕
入力された複数色にかかるカラー画像データから複数のパケットデータを生成するパケットデータ生成工程（図５に示す圧縮処理部２３０による圧縮工程）と、前記パケットデータ生成手段が生成した複数のパケットデータを第１の記憶部（図１に示す外部メモリ５２０）に記憶する記憶工程（例えば図１１に示すステップＳ２００７）と、前記第１の記憶部に記憶された所定色にかかるパケットデータを、第２の記憶部（図１に示す外部メモリ５３０）にて前記所定色に対して設けられた記憶領域へ転送する転送工程（図１３に示すステップＳ８２０９）と、前記第２の記憶部にて前記所定色に対して設けられた記憶領域に記憶されたパケットデータに基づいて前記所定色にかかる画像を形成する画像形成工程（図１２に示すステップＳ８０１４）とを有し、前記転送工程は、前記画像形成工程における画像形成動作に応じて変化する前記記憶領域に記憶される前記所定色にかかるパケットデータの記憶量に基づいて、前記所定色にかかるパケットデータを転送することを特徴とする画像形成方法。
【０１５０】
これにより、実施態様１と同等の効果を期待できる。
【０１５１】
〔実施態様７〕
実施態様５に記載の画像形成方法を実行させるためのプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【０１５２】
これにより、実施態様１と同等の効果を奏する。
【０１５３】
〔実施態様８〕
実施態様５に記載の画像形成方法をコンピュータに実行させるためのプログラム。
【０１５４】
これにより、実施態様１と同等の効果を奏する。
【０１５５】
上記実施形態または実施態様によれば、画像形成装置からのリクエストを先に予測してＤＭＡＣを起動しておき、空パケットと、そのＲｅｔｕｒｎ  パケットによるハンドシェイクによりＣＰＵ１３０を介さずに、すみやかにページスプールデータの転送開始を可能にすることにより、画像形成装置からのリクエストに応じてページスプールしたデータをバンド単位で送信し、１個のＤＭＡＣを時分割に各色で使いまわすことにより、ドラム間遅延メモリをなくし、１つのＤＭＡＣで各色分のデータを送信することがきる。
【図面の簡単な説明】
【０１５６】
【図１】本発明の第１実施形態を示す画像形成装置を適用可能な画像形成システムの構成を説明するブロック図である。
【図２】図１に示したＰＣ上の表示装置に表示される印刷設定画面の一例を示す図である。
【図３】図１に示した画像圧縮部およびＰｒｉｎｔｅｒ  Ｃｏｎｔｒｏｌｌｅｒ部で処理されるデータの構造を説明する図である。
【図４】図１に示した外部メモリに格納されるパケットの構造を説明する図である。
【図５】図１に示したプリンタ画像処理部の構成を説明するブロック図である。
【図６】本発明に係る画像形成装置における第１のデータ処理手順の一例を示すフローチャートである。
【図７】図１に示したＰＷＭ部の構成を説明する図である。
【図８】図７に示すＰＷＭ部の動作を説明するタイミングチャートである。
【図９】図１に示したマーキング部の構成を説明する断面図である。
【図１０】本発明に係る画像形成装置における第２のデータ処理手順の一例を示すフローチャートである。
【図１１】本発明に係る画像形成システムにおけるデータ処理手順の一例を示すフローチャートである。
【図１２】本発明に係る画像形成装置における第３のデータ処理手順の一例を示すフローチャートである。
【図１３】本発明に係る画像形成装置における第４のデータ処理手順の一例を示すフローチャートである。
【図１４】本発明に係る画像形成装置における第５のデータ処理手順の一例を示すフローチャートである。
【図１５】本発明に係る画像形成装置における第６のデータ処理手順の一例を示すフローチャートである。
【図１６】本発明に係る画像形成装置における第７のデータ処理手順の一例を示すフローチャートである。
【図１７】図１に示した外部メモリのバッファ構成を説明図である。
【図１８】本発明に係る画像形成装置、データ処理装置を含む画像形成システムで読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【符号の説明】
【０１５７】
１２０  メモリコントローラ
１３０  ＣＰＵ
１４０，２１０  バスコントローラ
１７０  レンダリング部
１８０，１９０  パケットＤＭＡＣ
２４０  パケット送信部
２５０  メモリコントローラ
２８０  画像伸長部
２９０  パケット受信部
５２０，５３０  外部メモリ
【図１】
2006331073.tif 000003
【図２】
2006331073.tif 000004
【図３】
2006331073.tif 000005
【図４】
2006331073.tif 000006
【図５】
2006331073.tif 000007
【図６】
2006331073.tif 000008
【図７】
2006331073.tif 000009
【図８】
2006331073.tif 000010
【図９】
2006331073.tif 000011
【図１０】
2006331073.tif 000012
【図１１】
2006331073.tif 000013
【図１２】
2006331073.tif 000014
【図１３】
2006331073.tif 000015
【図１４】
2006331073.tif 000016
【図１５】
2006331073.tif 000017
【図１６】
2006331073.tif 000018
【図１７】
2006331073.tif 000019
【図１８】
2006331073.tif 000020