(57)【要約】【課題】プリンタ処理の高速化を実現する画像処理装置および画像処理方法を提供する。【解決手段】画像形成装置は、グラフィックス符号化装置２０８と、階調処理後のバンドデータへ展開する画像処理装置２０５とを有する。このことにより、ドットデータへ展開されたグラフィック画像を符号化し、フォントキャッシュへの書き込む処理と、その符号化されたデータの画像処理を行い、メインメモリ２２４の階調処理後のバンドデータ領域へ書き込む処理とが並列処理可能となる。また、フォントキャッシュからの符号データの読み込みと、その符号データの画像処理と、その画像処理後のデータをメインメモリ２２４の階調処理後のバンドデータ領域へ書き込む処理とが並列処理可能となる。よって、グラフィック画像の描画処理を高速化することが可能となる。【選択図】        図２
2004230742.tif 000002
【特許請求の範囲】
【請求項１】
画像データを生成する画像生成手段と、
前記画像生成手段により生成された画像データを記憶する画像記憶手段と、
前記画像記憶手段により記憶された画像データを符号化する画像符号化手段と、
前記符号化手段により符号化された画像データを記憶する符号記憶手段と、
前記画像符号化手段により符号化された画像データに画像処理を行う画像処理手段と、
前記画像処理手段により画像処理された画像データを記憶する画像処理後画像記憶手段とを有し、
前記画像符号化手段により符号化された画像データを、前記符号記憶手段により記憶する処理と、
前記画像符号化手段により符号化された画像データを、前記画像処理手段により画像処理した後に、前記画像処理後画像記憶手段により記憶する処理と、
を並列処理することを特徴とする画像処理装置。
【請求項２】
前記画像符号化手段は、
前記画像記憶手段により記憶された画像データをハフマン符号化することを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記画像処理手段は、
前記画像符号化手段により符号化された画像データを受信し、該受信した符号化データを展開する前記画像処理後画像記憶手段の先頭アドレスを求めることを特徴とする請求項２記載の画像処理装置。
【請求項４】
前記画像処理手段は、
前記画像符号化手段により符号化された画像データをランレングスへ変換することを特徴とする請求項３記載の画像処理装置。
【請求項５】
前記画像処理手段は、
前記変換されたランレングスを加算し、該ランレングスの合計値を求めることを特徴とする請求項４記載の画像処理装置。
【請求項６】
前記画像処理手段は、
前記変換されたランレングスが、黒ランレングスであるか否かを判定することを特徴とする請求項４記載の画像処理装置。
【請求項７】
前記画像処理手段は、
前記黒ランレングス判定時までの前記ランレングスの合計値を前記画像データのＹ幅で除算し、該除算の整数解を前記黒ランレングスの先頭の論理アドレスのＹ値とし、前記除算の余りを前記黒ランレングスの先頭の論理アドレスのＸ値として算出することを特徴とする請求項６記載の画像処理装置。
【請求項８】
前記画像処理手段は、
前記論理アドレス生成手段により求めた黒ランレングスの先頭の論理アドレスと、バンドデータのＸ幅と、バンドデータにおける画像データのスタートアドレスとに基づいて、前記黒ランレングスのバンドデータ上の先頭アドレスを求めることを特徴とする請求項７記載の画像処理装置。
【請求項９】
前記画像処理手段は、
前記判定された黒ランレングスの色データを生成することを特徴とする請求項６から８のいずれか１項に記載の画像処理装置。
【請求項１０】
前記画像処理手段は、
前記生成された色データに階調処理を行うことを特徴とする請求項９記載の画像処理装置。
【請求項１１】
前記画像処理手段は、
前記階調処理された色データを、前記画像処理後画像記憶手段のワード長へ変換することを特徴とする請求項１０記載の画像処理装置。
【請求項１２】
前記画像処理手段は、
前記画像処理後画像記憶手段のワード長へ変換されたデータを、前記判定された黒ランレングス分格納することを特徴とする請求項１１記載の画像処理装置。
【請求項１３】
画像データを生成する画像生成工程と、
前記画像生成工程により生成された画像データを記憶する画像記憶工程と、
前記画像記憶工程により記憶された画像データを符号化する画像符号化工程と、
前記符号化工程により符号化された画像データを記憶する符号記憶工程と、
前記画像符号化工程により符号化された画像データに画像処理を行う画像処理工程と、
前記画像処理工程により画像処理された画像データを記憶する画像処理後画像記憶工程とを有し、
前記画像符号化工程により符号化された画像データを、前記符号記憶工程により記憶する処理と、
前記画像符号化工程により符号化された画像データを、前記画像処理工程により画像処理した後に、前記画像処理後画像記憶工程により記憶する処理と、
を並列処理することを特徴とする画像処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像処理装置および画像処理方法に関し、特に、コピー、デジタルカメラ、プリンタなどにおいて画像処理を行う画像処理装置および画像処理方法に関する。
【０００２】
【従来の技術】
従来、プリンタ等の印字装置は、ＲＯＭまたはハードディスク上のアウトラインフォント（図２１の左側）を、指定された文字サイズにラスタライズして、ビットマップフォント（図２１の右側）に変換し、ページメモリに転写する、という手順で印字に用いる文字を展開する処理を行っていた。この際、印字装置におけるＲＡＭは、ラスタライズされたビットマップフォントをフォントキャッシュとして格納していた。同じ印刷ジョブ及び次回以降の印刷ジョブで同じフォント、同じサイズの文字が指定された場合、印字装置は、アウトラインフォントをラスタライズする手順を行わずに、すでにラスタライズされたフォントキャッシュ上のビットマップフォントを使用することにより、印刷時間の短縮を行っていた。
【０００３】
また、グラフィック画像を小さなハードウエアで圧縮する方法として１次元圧縮のランレングス画像圧縮、ファクシミリなどのＭＨ（Ｍｏｄｉｆｉｅｄ  Ｈｕｆｆｍａｎ；ハフマン）符号が広く知られている。
【０００４】
特許文献１記載の発明では、アウトラインフォントをワークエリアに展開してのビットマップフォントを作成する時、そのフォントのサイズにより、ワークエリアに分割せずに展開可能か否かを判断していた。特許文献１においては、展開可能な場合は分割せずにワークエリアに展開し、可能でない場合はアウトラインフォントを分割していた。
【０００５】
また、特許文献２記載の発明では、描画装置からの描画データをトグルの描画用ワークメモリへ一時格納し、片方の描画用ワークメモリへ描画処理装置が描画中にもう片方の描画用ワークメモリからの画像データをメモリコントローラが読み込み、画像メモリへ展開していた。
【０００６】
また、特許文献３記載の発明では、フォントキャッシュに保存されたフォントを複数のパーツに分解し、各パーツの形状を定義するデータをパーツ間、フォント間で共有し得る形式のデータに変換し再保存していた。
【０００７】
【特許文献１】
特開平９−２３０８４４号公報
【特許文献２】
特開２０００−１１２６８１号公報
【特許文献３】
特開２００２−６７４０６号公報
【０００８】
【発明が解決しようとする課題】
従来、アウトラインフォントを展開した後のビットマップデータの画像処理、フォントキャッシュへ格納する時のビットマップデータの符号化処理、およびフォントキャッシュからの読み込み処理時の復号化処理をＣＰＵのソフトウエアで行ってきた。その為に、処理スピードを上げることが困難であった。また、従来、フォントキャッシュには、符号化されたグラフィック画像が格納されており、描画時にフォントキャッシュ内の符号を復号化して、描画処理を行う為に、復号化処理に大きな時間を有し、高速化の妨げとなっていた。
【０００９】
特許文献１では、アウトラインフォントをワークエリアに展開してビットマップフォントを作成する時、そのフォントのサイズにより、ワークエリアに分割せずに展開可能か否かを判断し、可能な場合は分割せずにワークエリアに展開し、可能ではない場合はアウトラインフォントを分割する方法が知られているが、アウトラインフォントを分割する時、分割された領域を跨ぐラインの処理に大きな時間を必要としていた。
【００１０】
また、特許文献２には、描画用ワークメモリへ描画後の画像処理について明記されていなかった。また、特許文献２には、描画用ワークメモリを超えるサイズのグラフィックデータをどのように処理するのかを明記していなかった。また、特許文献２には、描画する対象の画像や、描画処理方式について明記されていなかった。
【００１１】
また、特許文献３には、描画用ワークメモリへ描画後の画像処理について明記されていなかった。
【００１２】
本発明は、上記問題点に鑑みてなされたものであり、プリンタ処理の高速化を実現する画像処理装置および画像処理方法を提供することを目的とする。
【００１３】
【課題を解決するための手段】
かかる目的を達成するため、本発明によれば、画像データを生成する画像生成手段と、画像生成手段により生成された画像データを記憶する画像記憶手段と、画像記憶手段により記憶された画像データを符号化する画像符号化手段と、符号化手段により符号化された画像データを記憶する符号記憶手段と、画像符号化手段により符号化された画像データに画像処理を行う画像処理手段と、画像処理手段により画像処理された画像データを記憶する画像処理後画像記憶手段とを有し、画像符号化手段により符号化された画像データを、符号記憶手段により記憶する処理と、画像符号化手段により符号化された画像データを、画像処理手段により画像処理した後に、画像処理後画像記憶手段により記憶する処理と、を並列処理することを特徴とする。
【００１４】
また、本発明によれば、画像符号化手段は、画像記憶手段により記憶された画像データをハフマン符号化することを特徴とする。
【００１５】
また、本発明によれば、画像処理手段は、画像符号化手段により符号化された画像データを受信し、受信した符号化データを展開する画像処理後画像記憶手段の先頭アドレスを求めることを特徴とする。
【００１６】
また、本発明によれば、画像処理手段は、画像符号化手段により符号化された画像データをランレングスへ変換することを特徴とする。
【００１７】
また、本発明によれば、画像処理手段は、変換されたランレングスを加算し、ランレングスの合計値を求めることを特徴とする。
【００１８】
また、本発明によれば、画像処理手段は、変換されたランレングスが、黒ランレングスであるか否かを判定することを特徴とする。
【００１９】
また、本発明によれば、画像処理手段は、黒ランレングス判定時までのランレングスの合計値を画像データのＹ幅で除算し、除算の整数解を黒ランレングスの先頭の論理アドレスのＹ値とし、除算の余りを黒ランレングスの先頭の論理アドレスのＸ値として算出することを特徴とする。
【００２０】
また、本発明によれば、画像処理手段は、論理アドレス生成手段により求めた黒ランレングスの先頭の論理アドレスと、バンドデータのＸ幅と、バンドデータにおける画像データのスタートアドレスとに基づいて、黒ランレングスのバンドデータ上の先頭アドレスを求めることを特徴とする。
【００２１】
また、本発明によれば、画像処理手段は、判定された黒ランレングスの色データを生成することを特徴とする。
【００２２】
また、本発明によれば、画像処理手段は、生成された色データに階調処理を行うことを特徴とする。
【００２３】
また、本発明によれば、画像処理手段は、階調処理された色データを、画像処理後画像記憶手段のワード長へ変換することを特徴とする。
【００２４】
また、本発明によれば、画像処理手段は、画像処理後画像記憶手段のワード長へ変換されたデータを、判定された黒ランレングス分格納することを特徴とする。
【００２５】
また、本発明によれば、画像データを生成する画像生成工程と、画像生成工程により生成された画像データを記憶する画像記憶工程と、画像記憶工程により記憶された画像データを符号化する画像符号化工程と、符号化工程により符号化された画像データを記憶する符号記憶工程と、画像符号化工程により符号化された画像データに画像処理を行う画像処理工程と、画像処理工程により画像処理された画像データを記憶する画像処理後画像記憶工程とを有し、画像符号化工程により符号化された画像データを、符号記憶工程により記憶する処理と、画像符号化工程により符号化された画像データを、画像処理工程により画像処理した後に、画像処理後画像記憶工程により記憶する処理と、を並列処理することを特徴とする。
【００２６】
【発明の実施の形態】
本実施形態における画像形成装置は、グラフィック用の符号化装置と、階調処理後のバンドデータへ展開する画像処理装置とを有する。このことにより、ドットデータへ展開されたグラフィック画像を符号化し、フォントキャッシュへの書き込む処理と、その符号化されたデータの画像処理を行い、メインメモリの階調処理後のバンドデータ領域へ書き込む処理とが並列処理可能となる。また、フォントキャッシュからの符号データの読み込みと、その符号データの画像処理と、その画像処理後のデータをメインメモリの階調処理後のバンドデータ領域へ書き込む処理とが並列処理可能となる。よって、プリンタの処理の高速化が実現される。また、この時、画像処理装置は符号データを直接復号化することなく、画像処理を行う際の復号化処理の為のメモリアクセスを必要としないため、処理の高速化を実現することができる。
【００２７】
図１は、本発明の一実施形態における画像形成装置の機構部の構成例を示す図である。以下、図１を用いて、本実施形態における画像形成装置の機構部の構成および動作について説明する。
【００２８】
図１に示される画像形成装置（カラープリンタ）は、４色（Ｙ、Ｍ、Ｃ、Ｋ）の画像をそれぞれ形成する独立の作像系１Ｙ、１Ｍ、１Ｃ、１Ｋを有し、この４色の画像を合成する４ドラムタンデムエンジンタイプの画像形成装置である。
【００２９】
各作像系１Ｙ、１Ｍ、１Ｃ、１Ｋは、像担持体としての感光体、例えば小径のＯＰＣ（有機感光体）ドラム２Ｙ、２Ｍ、２Ｃ、２Ｋを有する。ＯＰＣドラム２Ｙ、２Ｍ、２Ｃ、２Ｋを取り囲むように作像の上流側から、帯電手段としての帯電ローラ３Ｙ、３Ｍ、３Ｃ、３Ｋと、ＯＰＣドラム２Ｙ、２Ｍ、２Ｃ、２Ｋ上の静電潜像をそれぞれ現像剤で現像してＹ、Ｍ、Ｃ、Ｋ各色のトナー像とする現像装置４Ｙ、４Ｍ、４Ｃ、４Ｋと、クリーニング装置５Ｙ、５Ｍ、５Ｃ、５Ｋと、除電装置６Ｙ、６Ｍ、６Ｃ、６Ｋなどが配置されている。
【００３０】
各現像装置４Ｙ、４Ｍ、４Ｃ、４Ｋの脇には、Ｙトナー、Ｍトナー、Ｃトナー、Ｋトナーをそれぞれ現像装置４Ｙ、４Ｍ、４Ｃ、４Ｋへ補給するトナーボトルユニット７Ｙ、７Ｍ、７Ｃ、７Ｋが配置されている。
【００３１】
また、各作像系１Ｙ、１Ｍ、１Ｃ、１Ｋには、各々独立な光書き込み装置８Ｙ、８Ｍ、８Ｃ、８Ｋが配置されている。また、光書き込み装置８Ｙ、８Ｍ、８Ｃ、８Ｋは、レーザ光源としてのレーザダイオード（ＬＤ）光源９Ｙ、９Ｍ、９Ｃ、９Ｋと、コリメートレンズ１０Ｙ、１０Ｍ、１０Ｃ、１０Ｋと、ｆθレンズ１１Ｙ、１１Ｍ、１１Ｃ、１１Ｋといった光学部品を有する。さらに、光書き込み装置８Ｙ、８Ｍ、８Ｃ、８Ｋは、偏向走査手段としてのポリゴンミラー１２Ｙ、１２Ｍ、１２Ｃ、１２Ｋと、折り返しミラー１３Ｙ、１３Ｍ、１３Ｃ、１３Ｋ、１４Ｙ、１４Ｍ、１４Ｃ、１４Ｋなどを有する。
【００３２】
各作像系１Ｙ、１Ｍ、１Ｃ、１Ｋは垂直に配列され、その図１に向かって右側には、転写ベルトユニット１５がＯＰＣドラム２Ｙ、２Ｍ、２Ｃ、２Ｋに接する形で配置される。転写ベルトユニット１５は、転写ベルト１６がローラ１７〜２０に張架されて図示しない駆動源により回転駆動される。
【００３３】
画像形成装置下側には、転写材としての転写紙が収納された給紙トレイ２１が配置され、画像形成装置上部に定着装置２２、排紙ローラ２３及び排紙トレイ２４が配設される。
【００３４】
作像時には、各作像系１Ｙ、１Ｍ、１Ｃ、１Ｋにおいて、それぞれ、ＯＰＣドラム２Ｙ、２Ｍ、２Ｃ、２Ｋが図示しない駆動源により回転駆動される。帯電ローラ３Ｙ、３Ｍ、３Ｃ、３Ｋにより、ＯＰＣドラム２Ｙ、２Ｍ、２Ｃ、２Ｋが一様に帯電する。光書き込み装置８Ｙ、８Ｍ、８Ｃ、８Ｋが各色の画像データに基づきＯＰＣドラム２Ｙ、２Ｍ、２Ｃ、２Ｋに光書込みを行うことによって、ＯＰＣドラム２Ｙ、２Ｍ、２Ｃ、２Ｋ上に静電潜像が形成される。
【００３５】
このＯＰＣドラム２Ｙ、２Ｍ、２Ｃ、２Ｋ上の静電潜像は、それぞれ現像装置４Ｙ、４Ｍ、４Ｃ、４Ｋにより現像されて、Ｙ、Ｍ、Ｃ、Ｋ各色のトナー像となる。
【００３６】
一方、給紙トレイ２１から給紙ローラ２５により転写紙が水平方向に給紙されて、搬送系により作像系１Ｙ、１Ｍ、１Ｃ、１Ｋ方向へ垂直に搬送される。この転写紙は、転写ベルト１６に静電的に吸着保持されて転写ベルト１６により搬送され、図示しない転写バイアス印加手段により転写バイアスが印加されてＯＰＣドラム２Ｙ、２Ｍ、２Ｃ、２Ｋ上のＹ、Ｍ、Ｃ、Ｋ各色のトナー像が順次に重ねて転写されることで、転写紙上にフルカラー画像が形成される。このフルカラー画像が形成された転写紙は、定着装置２２によりフルカラー画像が定着されて排紙ローラ２３により排紙トレイ２４へ排出される。
【００３７】
また、画像形成装置は、画像形成処理などを行う電送・制御装置２６を有する。図２は、図１に示される本発明の一実施形態における画像形成装置の電送・制御装置２６のブロック図である。以下、図２を用いて、本実施形態における画像形成装置における電送・制御装置２６の構成および動作について説明する。
【００３８】
電送・制御装置２６は、メモリコントローラ２００と、ＣＰＵ２０１と、パネルコントローラ２１７と、ＲＯＭ２１８と、パネル２１９と、Ｃ版プリンタエンジン２２０と、Ｍ版プリンタエンジン２２１と、Ｙ版プリンタエンジン２２２と、Ｋ版プリンタエンジン２２３と、メインメモリ２２４とを有する。
【００３９】
また、メモリコントローラ２００は、ＣＰＵ  Ｉ／Ｆ２０２と、メモリＡＲＢ２０３と、ローカルＩ／Ｆ２０４と、画像処理装置２０５と、通信コントローラ２０６と、符号化装置２０７と、グラフィックス符号化装置２０８と、Ｃ版復号化処理装置２０９と、Ｍ版復号化処理装置２１０と、Ｙ版復号化処理装置２１１と、Ｋ版復号化処理装置２１２と、Ｃ版エンジンコントローラ２１３と、Ｍ版エンジンコントローラ２１４と、Ｙ版エンジンコントローラ２１５と、Ｋ版エンジンコントローラ２１６とを有する。
【００４０】
ＣＰＵ２０１は、プリンタ機器を全体の制御を行う。ＣＰＵ  Ｉ／Ｆ２０２は、メモリコントローラ２００のメモリＡＲＢ２０３に接続され、ＣＰＵ２０１とメモリコントローラ２００との間のＩ／Ｆ（インタフェース）を処理する。
【００４１】
メモリＡＲＢ２０３は、メインメモリ２２４をコントロールし、ＣＰＵ２０１、ローカルＩ／Ｆ（ローカルバス）２０４、Ｃ版復号化処理装置２０９、Ｍ版復号化処理装置２１０、Ｙ版復号化処理装置２１１、Ｋ版復号化処理装置２１２、画像処理装置２０５、符号化装置２０７、グラフィックス符号化装置２０８などと、メモリとの間のデータ転送をコントロールする。
【００４２】
ローカルＩ／Ｆ２０４は、ローカルバスのインタフェースであり、ＲＯＭ２１８、パネルコントローラ２１７などと、ＣＰＵ２０１、メインメモリ２２４などとのＩ／Ｆを処理する。
【００４３】
通信コントローラ２０６は、ネットワークに接続されており、ネットワークから各種データやコマンドなどを受け取り、メモリＡＲＢ２０３を介して各種のコントローラに接続されている。
【００４４】
画像処理装置２０５は、メインメモリ２２４のフォントキャッシュの符号を読み込み、画像処理を行った後、メインメモリ２２４のバンドメモリ領域へ描画する。
【００４５】
符号化装置２０７は、メインメモリ２２４のバンドデータを符号化し、メインメモリ２２４へ転送する。
【００４６】
グラフィック符号化装置２０８は、メインメモリ２２４のワーク領域のフォントデータを符号化し、またメインメモリ２２４のフォントキャッシュ領域の符号データを復号化する。
【００４７】
Ｃ版復号化処理装置２０９、Ｍ版復号化処理装置２１０、Ｙ版復号化処理装置２１１、およびＫ版復号化処理装置２１２は、Ｃ、Ｍ、Ｙ、Ｋの各版ごとの符号化装置２０７により符号化された符号をメインメモリ２２４から受け取り、復号化し、それぞれ各版のエンジンコントローラ（Ｃ版エンジンコントローラ２１３、Ｍ版エンジンコントローラ２１４、Ｙ版エンジンコントローラ２１５、Ｋ版エンジンコントローラ２１６）へ転送する。
【００４８】
ＲＯＭ２１８は、文字などのフォント情報や、ＣＰＵ２０１のプログラムなどを格納する。
【００４９】
パネルコントローラ２１７は、パネル２１９をコントロールしている。
【００５０】
パネル２１９は、ユーザの操作により情報を入力する部位であって、入力された情報をコピー装置（画像形成装置）へ知らせる。
【００５１】
Ｃ版エンジンコントローラ２１３、Ｍ版エンジンコントローラ２１４、Ｙ版エンジンコントローラ２１５、およびＫ版エンジンコントローラ２１６は、それぞれＣ版復号化処理装置２０９、Ｍ版復号化処理装置２１０、Ｙ版復号化処理装置２１１、およびＫ版復号化処理装置２１２から画像を受け取り、各版のプリンタエンジン（それぞれＣ版プリンタエンジン２２０、Ｍ版プリンタエンジン２２１、Ｙ版プリンタエンジン２２２、およびＫ版プリンタエンジン２２３）へ転送する。
【００５２】
Ｃ版プリンタエンジン２２０、Ｍ版プリンタエンジン２２１、Ｙ版プリンタエンジン２２２、およびＫ版プリンタエンジン２２３は、それぞれＣ、Ｍ、Ｙ、Ｋ版のプリンタエンジンである。
【００５３】
メインメモリ２２４は、符号化装置２０７の符号と、ＣＰＵ２０１のプログラムおよびフォントデータと、各種データなどを格納する。
【００５４】
図３は、本発明の一実施形態における画像形成装置による全体の処理の流れを示す図である。以下、図３に沿って、本実施形態における画像形成装置による全体動作について説明する。
【００５５】
図３の（ａ）は、グラフィック画像がフォントキャッシュに無い場合のグラフィック画像処理の流れを示す図である。以下、図３の（ａ）に沿って説明する。
【００５６】
ＣＰＵ２０１は、ワークメモリへグラフィックス画像を展開する（ステップＳ１１）。図１９は、本発明の一実施形態における画像形成装置のＣＰＵによるグラフィック画像の展開例を示す図である。図１９に示されているように、ベクトルを左辺、右辺に分割し、その間を塗りつぶすことで実現する。
【００５７】
メインメモリ２２４は、自身のワークメモリ領域にグラフィックス画像を一時格納する（ステップＳ１２）。
【００５８】
符号化装置２０８は、メインメモリ２２４のワークメモリ領域のグラフィック画像を符号化し、メインメモリ２２４のフォントキャッシュ領域へ書き込む。図８は、本発明の一実施形態における画像形成装置による符号化の例を示す図である。図８に示されているように、グラフィック画像をランレングスへ変換し、そのラン情報を符号化する（ステップＳ１３）。図８の「あ」の文字の黒い部分が黒のランレングスとなる。
【００５９】
メインメモリ２２４は、自身のフォントキャッシュ領域にフォントなどの符号化されたグラフィック画像データを格納する（ステップＳ１４）。
【００６０】
画像処理装置２０５は、メインメモリのフォントキャッシュ領域におけるフォントキャッシュの符号データを読み込み、画像処理を行って、２値ＣＭＹＫバンドデータへ書き込む（ステップＳ１５）。図９は、本発明の一実施形態における２値バンドメモリへのデータ展開処理を示す図である。図９に示されるように、フォントキャッシュに格納したグラフィック符号データに画像処理を行い、階調処理後のデータを２値の各Ｃ、Ｍ、Ｙ、Ｋ版のバンドメモリへ展開する。
【００６１】
メインメモリ２２４は、階調処理後のデータを自身の２値バンドメモリ領域に格納する（ステップＳ１６）。
【００６２】
図３の（ｂ）は、グラフィック画像がフォントキャッシュにある場合のグラフィック画像処理の流れを示す図である。以下、図３の（ｂ）に沿って説明する。
【００６３】
メインメモリ２２４は、自身のフォントキャッシュ領域に符号データを格納する（ステップＳ２１）。
【００６４】
画像処理装置２０５は、メインメモリ２２４のフォントキャッシュにおける符号データを読み込み、画像処理を行い、２値ＣＭＹＫバンドデータへ書き込む（ステップＳ２２）。
【００６５】
メインメモリ２２４は、階調処理後のデータを自身の２値バンドメモリ領域に格納する（ステップＳ２３）。
【００６６】
図４は、本発明の一実施形態における画像形成装置の構成を示す図である。以下、図４を用いて、本実施形態における画像形成装置による処理について説明する。
【００６７】
ＣＰＵ２０１は、メインメモリ２２４のワーク領域へグラフィック画像を展開する。また、ＣＰＵ２０１は、画像処理装置２０５を制御し、メインメモリ２２４の各版の階調処理後のバンドメモリに描画処理を行う。
【００６８】
画像処理装置２０５は、ＣＰＵ２０１からのコマンドや、各版のバンドメモリのアドレス＆データを受け取り、メインメモリ２２４の各版のバンドメモリに階調処理後のバンドデータを作成する。
【００６９】
グラフィックス符号化装置２０８は、メインメモリ２２４のワークメモリに展開されたグラフィック画像データを符号化し、メインメモリ２２４のフォントキャッシュ領域へ転送する。
【００７０】
メインメモリ２２４は、各版のページの符号データ、階調処理後のバンドデータ、およびフォントキャッシュなどを格納する。
【００７１】
符号化装置２０５は、メインメモリ２２４の各版の階調処理後のバンドデータを符号化し、メインメモリ２２４の各版のページ符号メモリ領域へ転送する。
【００７２】
Ｃ版復号化処理装置２０６、Ｍ版復号化処理装置２０７、Ｙ版復号化処理装置２０８、およびＫ版復号化処理装置２０９は、各版のプリンタエンジンに同期し、各版の必要とする符号を順次、メインメモリ２２４から読み込み復号化し、それぞれＣ版エンジンコントローラ２１３、Ｍ版エンジンコントローラ２１４、Ｙ版エンジンコントローラ２１５、およびＫ版エンジンコントローラ２１６といった各版のエンジンコントローラへ転送する。
【００７３】
Ｃ版エンジンコントローラ２１３、Ｍ版エンジンコントローラ２１４、Ｙ版エンジンコントローラ２１５、およびＫ版エンジンコントローラ２１６は、各版のエンジンコントローラであり、各版の復号化装置（Ｃ版復号化処理装置２０６、Ｍ版復号化処理装置２０７、Ｙ版復号化処理装置２０８、およびＫ版復号化処理装置２０９）からの符号を受け取り、各版のプリンタエンジン（Ｃ版プリンタエンジン２２０、Ｍ版プリンタエンジン２２１、Ｙ版プリンタエンジン２２２、Ｋ版プリンタエンジン２２３）をコントロールする。
【００７４】
Ｃ版プリンタエンジン２２０、Ｍ版プリンタエンジン２２１、Ｙ版プリンタエンジン２２２、Ｋ版プリンタエンジン２２３は、各版のＣ、Ｍ、Ｙ、Ｋ版のプリンタエンジンである。
【００７５】
図５は、本発明の一実施形態におけるメインメモリ２２４のフォーマットを示す図である。以下、図５を用いて、メインメモリ２２４のフォーマットについて説明を進める。
【００７６】
フォントキャッシュ領域は、フォントなどの符号化されたグラフィック画像データを格納する。
【００７７】
Ｃ、Ｍ、Ｙ、Ｋ版２値バンドメモリ格納領域は、画像処理された２値、４値、１６値化された複数の各版のバンド情報を格納する領域である。
【００７８】
Ｃ版符号ページメモリ領域は、符号化されたＣ版のバンド単位の階調処理後の符号データを複数ページ分格納する領域である。
【００７９】
Ｍ版符号ページメモリ領域は、符号化されたＭ版のバンド単位の階調処理後の符号データを複数ページ分格納する領域である。
【００８０】
Ｙ版符号ページメモリ領域は、符号化されたＹ版のバンド単位の階調処理後の符号データを複数ページ分格納する領域である。
【００８１】
Ｋ版符号ページメモリ領域は、符号化されたＫ版のバンド単位の階調処理後の符号データを複数ページ分格納する領域である。
【００８２】
プログラム領域は、各種のＣＰＵ２０１のプログラムを格納する領域である。
【００８３】
ワーク領域は、ＣＰＵ２０１などによりフォントなどのグラフィック画像を展開する時に使用されるワーク領域である。
【００８４】
図６は、本発明の一実施形態における画像形成装置によるグラフィック画像の生成と２値バンドメモリへの展開を示す図である。以下、図６を用いて説明を進める。
【００８５】
ＣＰＵ２０１は、メインメモリ２２４のワーク領域におけるグラフィック画像を展開し、ドットデータを生成する（図６の点線矢印▲１▼）。
【００８６】
グラフィックス符号化装置２０８は、メインメモリ２２４のワーク領域のグラフィック画像データを読み込み、符号化する（図６の点線矢印▲２▼）。
【００８７】
符号化されたグラフィック画像データをメインメモリ２２４のフォントキャッシュ領域へ転送する。また、同時に画像処理装置２０５へ符号化されたデータを転送する（図６の点線矢印▲３▼）。
【００８８】
画像処理装置２０５は、符号化装置２０７からの符号データを受け取り、画像処理を行う（図６の点線矢印▲４▼）。
【００８９】
画像処理装置２０５は、画像処理後のデータをメインメモリ２２４のＣ、Ｍ、Ｙ、Ｋ版の２値バンドメモリ領域へ展開する（図６の点線矢印▲５▼）。
【００９０】
図７は、本発明の一実施形態における画像形成装置によるフォントキャッシュの符号データの２値バンドメモリへの展開を示す図である。以下、図７を用いて、説明を進める。
【００９１】
画像処理装置２０５は、メインメモリ２２４のフォントキャッシュ領域から符号データを読み込む（図７の点線矢印▲１▼）。
【００９２】
画像処理装置２０５は、フォントキャッシュからの符号データを受け取り、画像処理を行う（図７の点線矢印▲２▼）。
【００９３】
画像処理装置２０５は、画像処理後のデータをメインメモリ２２４のＣ、Ｍ、Ｙ、Ｋ版の２値バンドメモリ領域へ展開する（図７の点線矢印▲３▼）。
【００９４】
図１０は、本発明の一実施形態における画像処理装置２０５の構成を示すブロック図である。以下、図１０を用いて、本発明の一実施形態における画像処理装置２０５の構成について説明する。
【００９５】
画像処理装置２０５は、メモリＡＲＢ  Ｉ／Ｆ１００１と、読み込みアドレス生成装置１００２と、符号解析装置１００３と、色変換装置１００４と、階調処理装置１００５と、書き込みアドレス生成装置１００６と、パラメータ記憶装置１００７と、コントローラ１００８とを有する。
【００９６】
メモリＡＲＢ  Ｉ／Ｆ１００１は、メモリＡＲＢ２０３とのＩ／Ｆを行い、読み込みアドレス生成装置１００２からのアドレスに基づきフォントキャッシュからグラフィック画像の符号データを読み込み、書き込みアドレス生成装置（メインメモリアドレス生成装置）１００６からのアドレスに基づき、メインメモリ２２４へ階調処理後のデータを書き込む。
【００９７】
読み込みアドレス生成装置１００２は、フォントキャッシュからグラフィック画像の符号データを読み込むアドレスを生成する。
【００９８】
符号解析装置１００３は、フォントキャッシュからグラフィック画像の符号データを解析し、黒のランレングスとその先頭の論理アドレス（ＯＸ、ＯＹ）を求める。次に、符号解析装置１００３は、パラメータ記憶装置１００７からのバンドデータのバンド幅（ＢＡＮＤＷＩＤＴＨ）と展開するグラフィック画像のバンドの先頭アドレス（ＳＡＤ）により、求めた黒のランの先頭アドレスを求め色変換装置１００４へ転送し、１ワードの符号を処理後に読み込み、アドレス生成装置１００２へ読み込みアドレスをカウントＵＰさせる信号を送る。
【００９９】
色変換装置１００４は、符号解析装置１００３からの黒のランレングスとその先頭のアドレスを受け取り、パラメータ記憶装置１００７からのＣＭＹＫ値と、黒のランレングスと、先頭アドレスとを階調処理装置１００５へ転送する。
【０１００】
階調処理装置１００５は、色変換装置１００４からのＣＭＹＫ値と黒のランレングスとそのバンド上での先頭アドレスを受け取り、階調処理を行い、メモリＡＲＢ  Ｉ／Ｆ１００１へ転送する。
【０１０１】
メインメモリアドレス生成装置１００６は、図５に示されるメインメモリ２２４のＣ、Ｍ、Ｙ、Ｋ版の２値バンドメモリ領域のアドレスを生成する。
【０１０２】
パラメータ記憶装置１００７は、符号解析装置１００３、色変換装置１００４、階調処理装置１００５のパラメータを一時記憶する。
【０１０３】
コントローラ１００８は、画像処理装置２０５全体をコントロールする。
【０１０４】
図１１は、本発明の一実施形態における画像処理装置２０５による画像処理の流れを示すフローチャートである。以下、図１０を用い、図１１に沿って、本発明の一実施形態における画像処理装置２０５の動作について説明する。
【０１０５】
まず、コントローラ１００８は、読み込みアドレス生成装置１００２へフォントキャッシュの符号の先頭アドレスを設定する（ステップＳ１０１）。
【０１０６】
次に、コントローラ１００８は、パラメータ記憶装置１００７へメインメモリ２２４の各版のバンドメモリ領域のバンド幅（ＢＡＮＤＷＩＤＴＨ）と先頭アドレス（ＳＡＤ）とを設定する（ステップＳ１０２）。
【０１０７】
次に、コントローラ１００８は、パラメータ記憶装置１００７へグラフィック画像のＸ幅（ＤＸ）、Ｙ幅（ＤＹ）を設定する（ステップＳ１０３）。
【０１０８】
次に、コントローラ１００８は、パラメータ記憶装置１００７へグラフィック画像のＣＭＹＫ値を設定する（ステップＳ１０４）。
【０１０９】
次に、コントローラ１００８は、階調処理装置１００５のディザアドレスを設定する（ステップＳ１０５）。
【０１１０】
画像処理装置２０５を起動し、画像処理を開始させる（ステップＳ１０６）。
【０１１１】
符号を読み込む（ステップＳ１０７）。
【０１１２】
次に、符号解析装置１００３は、読み込まれた符号解析を行う（ステップＳ１０８）。
【０１１３】
次に、色変換装置１００４は、色変換処理を行う（ステップＳ１０９）。
【０１１４】
次に、階調処理装置１００５は、階調処理を行う（ステップＳ１１０）。
【０１１５】
ここで、コントローラ１００８は、全ての符号を処理したか否かを判断する（ステップＳ１１１）。まだ、未処理の符号が残っている場合には（ステップＳ１１１／Ｎｏ）、ステップＳ１０７の処理に移行する。また、全ての符号の処理が完了したと判断した場合（ステップＳ１１１／Ｙｅｓ）、「ＲＥＴＵＲＮ」に移行する。
【０１１６】
図１２は、本発明の一実施形態における符号解析装置１００３の構成を示すブロック図である。以下、図１２を用いて、本実施形態における符号解析装置１００３の構成について説明する。
【０１１７】
符号解析装置１００３は、ランレングス変換装置１２０１と、黒ラン判定装置１００２と、ランレングス合計装置１２０３と、論理アドレス生成装置１２０４と、物理アドレス生成装置１２０５と、コントローラ１２０６とを有する。
【０１１８】
ランレングス変換装置１２０１は、符号からランレングスへ変換し、変換されたランレングスを黒ラン判定装置１２０２およびランレングス合計装置１２０３へ転送する。このとき、ランレングス変換装置は、黒、白、黒、白、黒・・・・の順に黒と白のランレングスを交互に転送する。
【０１１９】
黒ラン判定装置１２０２は、ランレングス変換装置１２０１からのランレングスのうち奇数番目の黒のランレングスのみ色変換装置１００４へ転送する。
【０１２０】
ランレングス合計装置１２０３は、ランレングス変換装置１２０１からのランレングスを加算し、合計値を順次求める。
【０１２１】
論理アドレス生成装置１２０４は、パラメータ記憶装置１００７のグラフィック画像のＸ幅（ＤＸ）とＹ幅（ＤＹ）と、ランレングス合計装置１２０３からのランレングスの合計値とから黒のランレングスの先頭の論理アドレスを求める。具体的には、ランレングスの合計値をＤＸで除算し、その整数値を論理アドレスのＹ値（ＯＹ）とし、余りを論理アドレスのＸ値（ＯＸ）とする。また、論理アドレス生成装置１２０４は、算出したＯＹに基づいて、ディザＹ値カウントＵＰ信号を色変換装置１００４に送信する。
【０１２２】
物理アドレス生成装置１２０５は、パラメータ記憶装置１００７のバンドデータのＸ幅（ＢＡＮＤＷＩＤＴＨ）とバンドデータ上でのグラフィック画像のスタート（先頭）アドレス（ＳＡＤ）と、論理アドレスＯＸ、ＯＹとから先頭の物理アドレスを求める。具体的には、ＯＹ＊ＢＡＮＤＷＩＤＴＨ＋ＯＸ＋ＳＡＤの計算により、物理アドレスを求める。
【０１２３】
コントローラ１２０６は、符号解析装置１００３の全体をコントロールする。
【０１２４】
図１３は、本発明の一実施形態における符号解析装置１００３による処理の流れを示すフローチャートである。以下、図１２を用い、図１３に沿って、本実施形態における符号解析装置１００３による符号解析処理について説明する。
【０１２５】
まず、ランレングス変換装置１２０１は、符号を読み込む（ステップＳ２０１）。ランレングス変換装置１２０１は、読み込んだ符号から１つのランレングスを求める（読み込んだ符号をランレングスに変換する）（ステップＳ２０２）。
【０１２６】
黒ラン判定装置１２０２は、奇数個目のランレングスを黒ランレングスとして色変換装置１００４に転送する（ステップＳ２０３）。
【０１２７】
ランレングス合計装置１２０３は、ランレングス変換装置１２０１から変換されたランレングス（ラン値）を受け取ると、加算してランレングスの合計値を順次求める（ステップＳ２０４）。
【０１２８】
論理アドレス生成装置１２０４は、ランレングス合計装置１２０３により算出されたランレングスの合計値を受け取り、ランレングスの合計値をグラフィック画像のＸ幅（ＤＸ）で除算し、その整数値をＯＹ（現在のランレングスの先頭のＹ座標）とし、その余りをＯＸ（現在のランレングスの先頭のＸ座標）として算出する（ステップＳ２０５）。
【０１２９】
ここで、論理アドレス生成装置１２０４は、今回求めたＯＹが前回求めたＯＹと同一であるか否かを判断する（ステップＳ２０６）。
【０１３０】
今回求めたＯＹが前回求めたＯＹと同一であると判断された場合（ステップＳ２０６／Ｙｅｓ）、論理アドレス生成装置１２０４は、ディザＹ値カウントＵＰ信号を「０」にして色変換装置１００４に送信する（ステップＳ２０７）。
【０１３１】
また、今回求めたＯＹが前回求めたＯＹと異なっていると判断された場合（ステップＳ２０６／Ｎｏ）、論理アドレス生成装置１２０４は、ディザＹ値カウントＵＰ信号を「１」にして色変換装置１００４に送信する（ステップＳ２０８）。
【０１３２】
次に、物理アドレス生成装置１２０５は、現在のランレングスの先頭のＸ座標およびＹ座標を示す情報（ＯＸ、ＯＹ）を論理アドレス生成装置１２０４から受け取る。また、物理アドレス生成装置１２０５は、パラメータ記憶装置１００７からバンド幅（ＢＡＮＤＷＩＤＴＨ）およびグラフィック画像先頭アドレス（ＳＡＤ）を受け取る。物理アドレス生成装置１２０５は、ＳＡＤ＋ＯＹ＊ＢＡＮＤＷＩＤＴＨ＋ＯＸを計算し、ランレングス先頭アドレスの値を算出する。物理アドレス生成装置１２０５は、求めたランレングス先頭アドレスを色変換処理装置１００４へ転送する（ステップＳ２０９）。
【０１３３】
ここで、コントローラ１２０６は、全ての符号を処理したか否かを判断する（ステップＳ２１０）。まだ、未処理の符号が残っている場合には（ステップＳ２１０／Ｎｏ）、ステップＳ２０１の処理に移行する。また、全ての符号の処理が完了したと判断した場合（ステップＳ２１０／Ｙｅｓ）、「ＲＥＴＵＲＮ」に移行する。
【０１３４】
図１４は、本発明の一実施形態における色変換装置１００４の構成を示すブロック図である。以下、図１４を用いて、本実施形態における色変換装置１００４の構成について説明する。
【０１３５】
色変換装置１００４は、ＣＭＹＫ値記憶装置１４０１と、レジスタ１４０２、１４０３、１４０４と、コントローラ１４０５とを有する。
【０１３６】
ＣＭＹＫ値記憶装置１４０１は、パラメータ記憶装置１００７からのＣＭＹＫ値を受け取り、一時格納する。
【０１３７】
レジスタ１４０２は、符号解析装置１００３からの黒のランレングスを一時格納し、階調処理装置１００５へ転送する。
【０１３８】
レジスタ１４０３は、符号解析装置１００３からのディザＹ値カウントＵＰ信号を一時格納し、階調処理装置１００５へ転送する。
【０１３９】
レジスタ１４０４は、符号解析装置１００３からの先頭アドレスを一時格納し、階調処理装置１００５へ転送する。
【０１４０】
コントローラ１４０４は、色変換装置１００４全体をコントロールする。
【０１４１】
図１５は、本発明の一実施形態における色変換装置１００４による処理の流れを示すフローチャートである。以下、図１４を用い、図１５に沿って、本実施形態における色変換装置１００４による色変換処理について説明する。
【０１４２】
レジスタ１４０２は、符号解析装置１００３からランレングスを受け取り、階調処理装置１００５へ転送する（ステップＳ３０１）。
【０１４３】
次に、ＣＭＹＫ値記憶装置１４０１は、パラメータ記憶装置１００７からＣＭＹＫ値を受け取り、階調処理装置１００５へ転送する（ステップＳ３０２）。
【０１４４】
次に、レジスタ１４０３は、符号解析装置１００３から先頭アドレスを受け取り、階調処理装置１００５へ転送する（ステップＳ３０３）。
【０１４５】
図１６は、本発明の一実施形態における階調処理装置１００５の構成を示すブロック図である。以下、図１６を用いて、本実施形態における階調処理装置１００５の構成について説明する。
【０１４６】
階調処理装置１００５は、しきい値マトリックス記憶装置アドレス生成装置１６０１と、しきい値マトリックス記憶装置１６０２と、データ分配装置１６０３と、比較装置１６０４〜１６０７と、Ｃ固定長データ生成装置１６０８と、Ｍ固定長データ生成装置１６０９と、Ｙ固定長データ生成装置１６１０と、Ｋ固定長データ生成装置１６１１と、Ｃ−ＦＩＦＯ（ｆｉｒｓｔ−ｉｎ  ｆｉｒｓｔ−ｏｕｔ）１６１２と、Ｍ−ＦＩＦＯ１６１３と、Ｙ−ＦＩＦＯ１６１４と、Ｋ−ＦＩＦＯ１６１５と、ＭＵＸ（Ｍｕｌｔｉｐｌｅｘｅｒ）１６１６、１６２１と、ＣＭＹＫアドレス生成装置１６２０と、コントローラ１６２２とを有する。
【０１４７】
しきい値マトリックス記憶装置アドレス生成装置１６０１は、しきい値マトリックスのサイズを受け取り、しきい値マトリックス記憶装置１６０２のアドレスを生成する。
【０１４８】
しきい値マトリックス記憶装置１６０２は、各種のしきい値マトリックスを格納している。
【０１４９】
データ分配装置１６０３は、しきい値マトリックス記憶装置１６０２からＣ、Ｍ、Ｙ、Ｋ版のしきい値を受け取り、各版の比較装置１６０４〜１６０７へ値を分配する。
【０１５０】
比較装置１６０４は、データ分配装置１６０３からのＣ版のしきい値と色変換装置１００４からのＣ版の画素データを受け取って比較し、Ｃ版の階調処理後のデータを作成する。
【０１５１】
比較装置１６０５は、データ分配装置１６０３からのＭ版のしきい値と色変換装置１００４からのＭ版の画素データを受け取って比較し、Ｍ版の階調処理後のデータを作成する。
【０１５２】
比較装置１６０６は、データ分配装置１６０３からのＹ版のしきい値と色変換装置１００４からのＹ版の画素データを受け取って比較し、Ｙ版の階調処理後のデータを作成する。
【０１５３】
比較装置１６０７は、データ分配装置１６０３からのＫ版のしきい値と色変換装置１００４からのＫ版の画素データを受け取って比較し、Ｋ版の階調処理後のデータを作成する。
【０１５４】
Ｃ固定長データ生成装置１６０８は、比較装置１６０４からのＣ版の階調処理後のデータを順次受け取り、Ｃ版２値バンドメモリ格納領域のワード長の固定長データへ変換する。
【０１５５】
Ｍ固定長データ生成装置１６０９は、比較装置１６０５からのＭ版の階調処理後のデータを順次受け取り、Ｍ版２値バンドメモリ格納領域のワード長の固定長データへ変換する。
【０１５６】
Ｙ固定長データ生成装置１６１０は、比較装置１６０６からのＹ版の階調処理後のデータを順次受け取り、Ｙ版２値バンドメモリ格納領域のワード長の固定長データへ変換する。
【０１５７】
Ｋ固定長データ生成装置１６１１は、比較装置１６０７からのＫ版の階調処理後のデータを順次受け取り、Ｋ版２値バンドメモリ格納領域のワード長の固定長データへ変換する。
【０１５８】
Ｃ−ＦＩＦＯ１６１２は、Ｃ固定長データ生成装置１６０８からのデータを受け取り一時格納する。
【０１５９】
Ｍ−ＦＩＦＯ１６１３は、Ｍ固定長データ生成装置１６０９からのデータを受け取り一時格納する。
【０１６０】
Ｙ−ＦＩＦＯ１６１４は、Ｙ固定長データ生成装置１６１０からのデータを受け取り一時格納する。
【０１６１】
Ｋ−ＦＩＦＯ１６１５は、Ｋ固定長データ生成装置１６１１からのデータを受け取り一時格納する。
【０１６２】
ＭＵＸ１６１６は、各版のＦＩＦＯ１６１２〜１６１５からのデータを受け取り、順次選択してメモリＡＲＢ  Ｉ／Ｆ１００１へ転送する。
【０１６３】
ＣＭＹＫアドレス生成装置１６２０は、色変換装置１００４からの物理アドレスである先頭アドレスに各版の原点アドレスを加算し、各版の先頭アドレスを求め、ＭＵＸ１６２１へ転送する。
【０１６４】
ＭＵＸ１６２１は、各版の先頭アドレスからメインメモリに書き込む階調処理後の画像データの先頭アドレスを選択し、書き込みアドレス生成装置１００６へ転送する。
【０１６５】
コントローラ１６２２は、階調処理装置１００５全体を制御する。
【０１６６】
図３１は、本発明の一実施形態におけるディザマトリックスを用いて階調処理を行うパターンディザ法を示す図である。階調処理装置１００５は、図３１に示されるパターンディザ法を用いて階調処理を行う。ここで、図３１を用いて本実施形態における階調処理の概要について説明する。
【０１６７】
階調処理装置１００５は、グラフィック画像の階調を行う場合、そのグラフィック画像の原点からディザマトリックスを展開し、その展開されたディザマトリックスと、ディザマトリクスのしきい値とを比較し、２値化する。また、図３１に示されているように、ディザマトリックスの水平方向のサイズを水平ディザマトリックスサイズとし、垂直方向のサイズを垂直ディザマトリックスサイズとする。
【０１６８】
図１７は、本発明の一実施形態における階調処理装置１００５による階調処理の流れを示すフローチャートである。以下、図１６を用い、図１７に沿って、本実施形態における階調処理装置１００５による処理について説明する。
【０１６９】
まず、しきい値マトリックス記憶装置アドレス生成装置１６０１は、ディザの水平方向のアドレスを初期値（図９のＳＡＤの点におけるディザの水平方向のアドレス値）にセットする。また、しきい値マトリックス記憶装置アドレス生成装置１６０１は、ディザの垂直方向のアドレスを初期値（図９のＳＡＤの点におけるディザの垂直方向のアドレス値）にセットする（ステップＳ４０１）。
【０１７０】
ここで、「ディザの水平方向のアドレス」とは、順次水平方向に、ディザマトリックスをしきい値マトリックスと比較し、階調処理を行うときのディザマトリックスの水平方向のアドレスを示す。また、「ディザの垂直方向のアドレス」とは、ディザマトリックスをしきい値マトリックスと比較し、階調処理を行うときのディザマトリックスの垂直方向のアドレスを示す。
【０１７１】
次に、コントローラ１６２２は、ＷＲＵＮを「０」にセットする（ステップＳ４０２）。ここで、ＷＲＵＮとは、階調処理装置１００５で階調処理を行ったランレングスの値を示す。ＷＲＵＮは、「０」から「黒ランレングス値」まで変化する。ＷＲＵＮが「黒ランレングス値」まで変化すると、その黒ランレングス値が示す黒ランレングスの階調処理が終了したことを示す。
【０１７２】
次に、しきい値マトリックス記憶装置１６０２からデータ分配装置１６０３を介して、しきい値マトリックスが比較装置１６０４〜１６０７に入力される。また、比較装置１６０４〜１６０７には、色変換装置１００４からそれぞれＣ、Ｍ、Ｙ、Ｋの各データが入力されている。
【０１７３】
比較装置１６０４〜１６０７は、各ＣＭＹＫのしきい値マトリックスと、各ＣＭＹＫデータとを比較し、２値化を行う（ステップＳ４０３）。
【０１７４】
比較装置１６０４〜１６０７は、２値化したデータをそれぞれ各ＣＭＹＫの固定長データ生成装置１６０８〜１６１１に送信する。各ＣＭＹＫの固定長データ生成装置１６０８〜１６１１は、それぞれ受け取った２値化データを自身の固定長データに追加する（ステップＳ４０４）。
【０１７５】
ここで、コントローラ１６２２は、各ＣＭＹＫの固定長データ生成装置１６０８〜１６１１における固定長データが予め定められているデータ長（固定長）まで達したか否かを判断する（ステップＳ４０５）。固定長まで達していないと判断された場合（ステップＳ４０５／Ｎｏ）、階調処理装置１００５は、ステップＳ４０７の処理を行う。
【０１７６】
固定長データが固定長まで達したと判断された場合（ステップＳ４０５／Ｙｅｓ）、各ＣＭＹＫの固定長データ生成装置１６０８〜１６１１に格納されている固定長までデータ長が達した固定長データをそれぞれ各ＣＭＹＫのＦＩＦＯ１６１２〜１６１５へライトする（ステップＳ４０６）。
【０１７７】
次に、コントローラ１６２２は、ディザの水平方向のアドレスをカウントＵＰする（ステップＳ４０７）。
【０１７８】
次に、コントローラ１６２２は、ディザの水平方向のアドレスが、水平ディザマトリックスサイズを超えたか否かを判断する（ステップＳ４０８）。ディザの水平方向のアドレスが、水平ディザマトリックスサイズを超えていないと判断された場合（ステップＳ４０８／Ｎｏ）、階調処理装置１００５は、ステップＳ４１０の処理を行う。
【０１７９】
ディザの水平方向のアドレスが、水平ディザマトリックスサイズを超えたと判断された場合（ステップＳ４０８／Ｙｅｓ）、コントローラ１６２２は、ディザの水平方向のアドレスを初期値にセットする（ステップＳ４０９）。
【０１８０】
次に、コントローラ１６２２は、ＷＲＵＮが黒ランレングス値未満か否かを判断する（ステップＳ４１０）。
【０１８１】
ＷＲＵＮが黒ランレングス値未満であると判断された場合（ステップＳ４１０／Ｙｅｓ）、コントローラ１６２２は、ＷＲＵＮを「１」インクリメントする（ステップＳ４１１）。その後階調処理装置１００５は、ステップＳ４０３の処理に移行する。
【０１８２】
ＷＲＵＮが黒ランレングス値未満ではない、すなわちＷＲＵＮが黒ランレングス値に達したと判断された場合（ステップＳ４１０／Ｎｏ）、階調処理装置１００５は、各ＣＭＹＫのＦＩＦＯ１６１２〜１６１５に格納されている階調処理後のデータを、先頭アドレスが示すメインメモリ４２２における各ＣＭＹＫ版のバンドメモリ格納領域に順次書き込む（ステップＳ４１２）。
【０１８３】
ここで、コントローラ１６２２は、各ＣＭＹＫの固定長データ生成装置１６０８〜１６１１に固定長までデータ長が達していないデータが存在するか否かを判断する（ステップＳ４１３）。固定長まで達していないデータが存在しない場合（ステップＳ４１３／Ｎｏ）、階調処理装置１００５は、ステップＳ４１５の処理に移行する。
【０１８４】
固定長まで達していないデータが存在する場合（ステップＳ４１３／Ｙｅｓ）、階調処理装置１００５は、固定長までデータ長が達していない階調処理後のデータをメインメモリ４２２における各ＣＭＹＫ版のバンドメモリ格納領域に順次書き込む（ステップＳ４１４）。
【０１８５】
次に、コントローラ１６２２は、ディザＹ値カウントＵＰ信号が「１」であるか否かを判断する（ステップＳ４１５）。ディザＹ値カウントＵＰ信号が「１」ではない、すなわち「０」であると判断された場合（ステップＳ４１５／Ｎｏ）、階調処理装置１００５は、ステップＳ４１９の処理に移行する。
【０１８６】
ディザＹ値カウントＵＰ信号が「１」であると判断された場合（ステップＳ４１５／Ｙｅｓ）、コントローラ１６２２は、ディザの垂直方向のアドレスをカウントＵＰする（ステップＳ４１６）。
【０１８７】
次に、コントローラ１６２２は、ディザの水平方向のアドレスが、水平ディザマトリックスサイズを超えたか否かを判断する（ステップＳ４１７）。ディザの水平方向のアドレスが、水平ディザマトリックスサイズを超えていないと判断された場合（ステップＳ４１７／Ｎｏ）、階調処理装置１００５は、ステップＳ４１９の処理を行う。
【０１８８】
ディザの水平方向のアドレスが、水平ディザマトリックスサイズを超えたと判断された場合（ステップＳ４１７／Ｙｅｓ）、コントローラ１６２２は、ディザの水平方向のアドレスを初期値にセットする（ステップＳ４１８）。
【０１８９】
ここで、コントローラ１６２２は、全ての黒ランレングスを描画したか否かを判断する（ステップＳ４１９）。全ての黒ランレングスを描画していないと判断された場合（ステップＳ４１９／Ｎｏ）、階調処理装置１００５は、ステップＳ４０２の処理に移行する。また、全ての黒ランレングスを描画したと判断された場合（ステップＳ４１９／Ｙｅｓ）、階調処理装置１００５は、動作を終了する。
【０１９０】
図１８は、本発明の一実施形態における固定長データ生成装置（Ｃ、Ｍ、Ｙ、Ｋ固定長データ生成装置１６０８〜１６１１）構成を示すブロック図である。以下、図１８を用いて、本発明の一実施形態における固定長データ生成装置の構成について説明する。
【０１９１】
固定長データ生成装置は、シフタ１８０１と、ＯＲ装置１８０２と、レジスタ１８０３、１８０４、１８０６と、加算器１８０５とを有する。
【０１９２】
シフタで１８０１は、比較装置１６０４から２値データを受け取り、レジスタ１８０６におけるシフト値だけシフトし、ＯＲ装置１８０２へ転送する。
【０１９３】
ＯＲ装置１８０２は、シフタ１８０１によりシフトされた２値データをＯＲ処理し、レジスタ１８０４へ送る。
【０１９４】
レジスタ１８０４は、ＯＲ装置１８０２でＯＲ処理され、追加された２値データを格納する。
【０１９５】
レジスタ１８０３は、固定長に達したデータを格納する。
【０１９６】
加算器１８０５は、比較装置１６０４から２値データを受けるごとに”１”を加算していく。
【０１９７】
レジスタ１８０６は、シフト値を格納する。
【０１９８】
図２０は、本発明の一実施形態におけるグラフィック符号化装置２０８の構成を示すブロック図である。以下、図２０を用いて、本実施形態におけるグラフィク符号化装置２０８の構成について説明する。
【０１９９】
グラフィック符号化装置２０８は、メモリＡＲＢ  Ｉ／Ｆ２００１と、バッファ２００２、２００４と、ＭＨ符号化装置２００３と、メモリアドレス生成装置２００５とを有する。
【０２００】
メモリＡＲＢ  Ｉ／Ｆ２００１は、メモリＡＲＢ２０３とのＩ／Ｆを行い、メモリアドレス生成装置２００５からのアドレスにより、メインメモリ２２４のフォントキャッシュ（図５に図示）および画像処理装置２０５へ符号化された符号を転送する。
【０２０１】
バッファ２００２は、メモリＡＲＢ  Ｉ／Ｆ２００１を通して、メインメモリ２２４のワーク領域からのグラフィック画像データを一時格納し、ＭＨ符号化装置２００３へ転送する。
【０２０２】
ＭＨ符号化装置２００３は、モディファイハフマン（ＭＨ；ＭｏｄｉｆｉｅｄＨｕｆｆｍａｎ）符号化方式により、グラフィック画像データを符号化し、バッファ２００４へ転送する。
【０２０３】
バッファ２００４は、ＭＨ符号化装置２００３からの符号データを一時格納し、メモリＡＲＢ  Ｉ／Ｆ２００１を通して、メインメモリ２２４のフォントキャッシュ領域（図５に図示）および画像処理装置２０５へ転送する。
【０２０４】
図２２は、本発明の一実施形態における画像処理装置２０５の他の構成を示すブロック図である。以下、図２２を用いて、本実施形態における画像処理装置２０５の他の構成例について説明する。
【０２０５】
画像処理装置２０５は、メモリＡＲＢ  Ｉ／Ｆ２２０１と、読み込みアドレス生成装置２２０２と、符号解析装置２２０３と、色変換装置２２０４と、階調処理装置２２０５と、書き込みアドレス生成装置２２０６と、パラメータ記憶装置２２０７と、コントローラ２２０８とを有する。
【０２０６】
メモリＡＲＢ  Ｉ／Ｆ２２０１は、メモリＡＲＢ２０３とのＩ／Ｆを行い、読み込みアドレス生成装置２２０２からのアドレスに基づきフォントキャッシュからグラフィック画像の符号データを読み込み、書き込みアドレス生成装置（メインメモリアドレス生成装置）２２０６からのアドレスに基づき、メインメモリ２２４へ階調処理後のデータを書き込む。
【０２０７】
読み込みアドレス生成装置２２０２は、フォントキャッシュからグラフィック画像の符号データを読み込むアドレスを生成する。
【０２０８】
符号解析装置２２０３は、フォントキャッシュからグラフィック画像の符号データを解析し、ランレングスと、黒ランかあるいは白ランかを判定するための黒ランＦＬＡＧと、を色変換装置２２０４へ転送する。
【０２０９】
色変換装置２２０４は、ランレングスと黒ランＦＬＡＧとを符号解析装置２００３から受け取り、パラメータ記憶装置２２０７から受け取ったＣＭＹＫ値と、ランレングスと、黒ランＦＬＡＧとを階調処理装置２２０５へ転送する。
【０２１０】
階調処理装置２２０５は、ＣＭＹＫ値とランレングスと黒ランＦＬＡＧとを色変換装置２２０４から受け取り、ランレングスが黒ランである場合、そのバンドデータ上でのアドレスを求め、順次階調処理を行い、メモリＡＲＢ  Ｉ／Ｆ２２０１へ転送する。
【０２１１】
メインメモリアドレス生成装置２２０６は、図５に示されるメインメモリ２２４のＣ、Ｍ、Ｙ、Ｋ版の２値バンドメモリ領域のアドレスを生成する。
【０２１２】
パラメータ記憶装置２２０７は、符号解析装置２２０３、色変換装置２２０４、階調処理装置２２０５のパラメータを一時記憶する。
【０２１３】
コントローラ２２０８は、画像処理装置２０５全体をコントロールする。
【０２１４】
図２３は、本発明の一実施形態における符号解析装置２２０３の構成を示すブロック図である。以下、図２３を用いて、本実施形態における符号解析装置２２０３の構成について説明する。
【０２１５】
符号解析装置２２０３は、ランレングス変換装置２３０１と、黒ラン判定装置２３０２と、コントローラ２３０３とを有する。
【０２１６】
ランレングス変換装置２３０１は、符号からランレングスへ変換し、色変換装置２２０４へ転送する。
【０２１７】
黒ラン判定装置２３０２は、ランレングス変換装置２３０１からのランレングスが黒ランレングスかあるいは白ランレングスかを判定し、色変換装置２２０４へ転送する。
【０２１８】
コントローラ２３０３は、符号解析装置２２０３の全体をコントロールする。
【０２１９】
図２４は、本発明の一実施形態における符号解析装置２２０３による符号解析処理の流れを示すフローチャートである。以下、図２３を用い、図２４に沿って、本実施形態における符号解析装置２２０３による符号解析処理について説明する。
【０２２０】
まず、ランレングス変換装置２３０１は、符号を読み込む（ステップＳ５０１）。ランレングス変換装置２３０１は、読み込んだ符号から１つのランレングスを求める（読み込んだ符号をランレングスに変換する）（ステップＳ５０２）。
【０２２１】
黒ラン判定装置２３０２は、ランレングス変換装置２３０１からランレングスの値を受け取り、受け取ったランレングスのうち奇数個目のランレングスを黒ランレングスとして、黒ランＦＬＡＧを求める（ステップＳ５０３）。
【０２２２】
ここで、コントローラ２３０３は、全ての符号を処理したか否かを判断する（ステップＳ５０４）。まだ、未処理の符号が残っている場合には（ステップＳ５０４／Ｎｏ）、ステップＳ５０２の処理に移行する。また、全ての符号の処理が完了したと判断した場合（ステップＳ５０４／Ｙｅｓ）、「ＲＥＴＵＲＮ」に移行する。
【０２２３】
図２５は、本発明の一実施形態における色変換装置２２０４の構成を示すブロック図である。以下、図２５を用いて、本実施形態における色変換装置２２０４の構成について説明する。
【０２２４】
色変換装置２２０４は、ＣＭＹＫ値記憶装置２５０１と、レジスタ２５０２、２５０３と、コントローラ２５０４とを有する。
【０２２５】
ＣＭＹＫ値記憶装置２５０１は、パラメータ記憶装置２２０７からＣＭＹＫ値を受け取り、一時格納する。
【０２２６】
レジスタ２５０２は、符号解析装置２２０３からランレングス値を一時格納し、階調処理装置２２０５へ転送する。
【０２２７】
レジスタ２５０３は、符号解析装置２２０３からの黒ランＦＬＡＧを一時格納し、階調処理装置２２０５へ転送する。
【０２２８】
コントローラ２５０４は、色変換装置２２０４の全体をコントロールする。
【０２２９】
図２６は、本発明の一実施形態における色変換装置２２０４による色変換処理の流れを示すフローチャートである。以下、図２５を用い、図２６に沿って、本実施形態における色変換装置２２０４による色変換処理について説明する。
【０２３０】
レジスタ２５０２は、符号解析装置２２０３からランレングスを受け取り、階調処理装置２２０５へ転送する（ステップＳ６０１）。
【０２３１】
次に、ＣＭＹＫ値記憶装置２５０１は、パラメータ記憶装置２２０７からＣＭＹＫ値を受け取り、階調処理装置２２０５へ転送する（ステップＳ６０２）。
【０２３２】
次に、レジスタ２５０３は、符号解析装置２２０３から黒ランＦＬＡＧを受け取り、階調処理装置２２０５へ転送する（ステップＳ６０３）。
【０２３３】
図２７は、本発明の一実施形態における階調処理装置２２０５の構成を示すブロック図である。以下、図２７を用いて、本実施形態における階調処理装置２２０５の構成について説明する。
【０２３４】
階調処理装置２２０５は、しきい値マトリックス記憶装置アドレス生成装置２７０１と、しきい値マトリックス記憶装置２７０２と、データ分配装置２７０３と、比較装置２７０４〜２７０７と、Ｃ固定長データ生成装置２７０８と、Ｍ固定長データ生成装置２７０９と、Ｙ固定長データ生成装置２７１０と、Ｋ固定長データ生成装置２７１１と、Ｃ−ＦＩＦＯ（ｆｉｒｓｔ−ｉｎ  ｆｉｒｓｔ−ｏｕｔ）２７１２と、Ｍ−ＦＩＦＯ２７１３と、Ｙ−ＦＩＦＯ２７１４と、Ｋ−ＦＩＦＯ２７１５と、ＭＵＸ（Ｍｕｌｔｉｐｌｅｘｅｒ）２７１６、２７２１と、ランレングス合計装置２７１７と、論理アドレス生成装置２７１８と、物理アドレス生成装置２７１９と、ＣＭＹＫアドレス生成装置２７２０と、コントローラ２７２２とを有する。
【０２３５】
しきい値マトリックス記憶装置アドレス生成装置２７０１は、しきい値マトリックスのサイズを受け取り、しきい値マトリックス記憶装置２７０２のアドレスを生成する。
【０２３６】
しきい値マトリックス記憶装置２７０２は、各種のしきい値マトリックスを格納している。
【０２３７】
データ分配装置２７０３は、しきい値マトリックス記憶装置２７０２からＣ、Ｍ、Ｙ、Ｋ版のしきい値を受け取り、各版の比較装置２７０４〜２７０７へ値を分配する。
【０２３８】
比較装置２７０４は、データ分配装置２７０３からのＣ版のしきい値と色変換装置２２０４からのＣ版の画素データを受け取って比較し、Ｃ版の階調処理後のデータを作成する。
【０２３９】
比較装置２７０５は、データ分配装置２７０３からのＭ版のしきい値と色変換装置２２０４からのＭ版の画素データを受け取って比較し、Ｍ版の階調処理後のデータを作成する。
【０２４０】
比較装置２７０６は、データ分配装置２７０３からのＹ版のしきい値と色変換装置２２０４からのＹ版の画素データを受け取って比較し、Ｙ版の階調処理後のデータを作成する。
【０２４１】
比較装置２７０７は、データ分配装置２７０３からのＫ版のしきい値と色変換装置２２０４からのＫ版の画素データを受け取って比較し、Ｋ版の階調処理後のデータを作成する。
【０２４２】
Ｃ固定長データ生成装置２７０８は、比較装置２７０４からのＣ版の階調処理後のデータを順次受け取り、Ｃ版２値バンドメモリ格納領域のワード長の固定長データへ変換する。
【０２４３】
Ｍ固定長データ生成装置２７０９は、比較装置２７０５からのＭ版の階調処理後のデータを順次受け取り、Ｍ版２値バンドメモリ格納領域のワード長の固定長データへ変換する。
【０２４４】
Ｙ固定長データ生成装置２７１０は、比較装置２７０６からのＹ版の階調処理後のデータを順次受け取り、Ｙ版２値バンドメモリ格納領域のワード長の固定長データへ変換する。
【０２４５】
Ｋ固定長データ生成装置２７１１は、比較装置２７０７からのＫ版の階調処理後のデータを順次受け取り、Ｋ版２値バンドメモリ格納領域のワード長の固定長データへ変換する。
【０２４６】
なお、Ｃ、Ｍ、Ｙ、Ｋ固定長データ生成装置２７０８〜２７１１は、図１８に示される固定長データ生成装置と同様であるとする。
【０２４７】
Ｃ−ＦＩＦＯ２７１２は、Ｃ固定長データ生成装置２７０８からのデータを受け取り一時格納する。
【０２４８】
Ｍ−ＦＩＦＯ２７１３は、Ｍ固定長データ生成装置２７０９からのデータを受け取り一時格納する。
【０２４９】
Ｙ−ＦＩＦＯ２７１４は、Ｙ固定長データ生成装置２７１０からのデータを受け取り一時格納する。
【０２５０】
Ｋ−ＦＩＦＯ２７１５は、Ｋ固定長データ生成装置２７１１からのデータを受け取り一時格納する。
【０２５１】
ＭＵＸ２７１６は、各版のＦＩＦＯ２７１２〜２７１５からのデータを受け取り、順次選択してメモリＡＲＢ  Ｉ／Ｆ２２０１へ転送する。
【０２５２】
ランレングス合計装置２７１７は、色変換装置２２０４からのランレングスの合計を演算する。
【０２５３】
論理アドレス生成装置２７１８は、パラメータ記憶装置２２０７のグラフィック画像のＸ幅（ＤＸ）およびＹ幅（ＤＹ）と、ランレングス合計装置２７１７からのランレングスの合計値とから黒のランレングスの先頭の論理アドレスを求める。具体的には、論理アドレス生成装置２７１８は、ランレングスの合計値をＤＸで除算し、その整数値を論理アドレスのＹ値（ＯＹ）とし、余りを論理アドレスのＸ値（ＯＸ）とする。
【０２５４】
物理アドレス生成装置２７１９は、パラメータ記憶装置２２０７のバンドデータのＸ幅（ＢＡＮＤＷＩＤＴＨ）とバンドデータ上でのグラフィック画像のスタートアドレス（ＳＡＤ）と、論理アドレスＯＸ、ＯＹから先頭の物理アドレスを求める。具体的には、物理アドレス生成装置２７１９は、ＯＹ＊ＢＡＮＤＷＩＤＴＨ＋ＯＸ＋ＳＡＤの計算により、物理アドレスを求める。
【０２５５】
ＣＭＹＫアドレス生成装置２７２０は、色変換装置２２０４からの物理アドレスである先頭アドレスに各版の原点アドレスを加算し、各版の先頭アドレスを求め、ＭＵＸ２７２１へ転送する。
【０２５６】
ＭＵＸ２７２１は、各版の先頭アドレスからメインメモリに書き込む階調処理後の画像データの先頭アドレスを選択し、書き込みアドレス生成装置２２０６へ転送する。
【０２５７】
コントローラ２７２２は、階調処理装置２２０５全体を制御する。
【０２５８】
図２８は、本発明の一実施形態における階調処理装置２２０５による階調処理の流れを示すフローチャートである。以下、図２７を用い、図２８に沿って、本実施形態における階調処理装置２２０５による処理について説明する。
【０２５９】
まず、コントローラ２７２２は、ランレングス値を読み込む（ステップＳ７０１）。ここで、コントローラ２７２２は、読み込んだランレングス値とともに受け取った黒ランＦＬＡＧの値を判定して、そのランレングス値が黒ランレングスであるか否かを判定する（ステップＳ７０２）。
【０２６０】
黒ランＦＬＡＧの値から、読み込んだランレングス値が黒ランレングスではないと判断された場合（ステップＳ７０２／Ｎｏ）、階調処理装置２２０５は、ステップＳ７０１の処理に移行する。
【０２６１】
黒ランＦＬＡＧの値から、読み込んだランレングス値が黒ランレングスであると判断された場合（ステップＳ７０２／Ｙｅｓ）、階調処理装置２２０５は、ステップＳ７０３の処理に移行する。
【０２６２】
以降、ステップＳ７０３〜Ｓ７２１の処理は、図１７に示される階調処理装置１００５によるステップＳ４０１〜Ｓ４１９の処理と同様であるので省略する。
【０２６３】
図２９は、本発明の一実施形態における画像形成装置がモノクロ機である場合における電装・制御装置の構成を示すブロック図である。以下、図２９を用いて、本実施形態における画像形成装置がモノクロ機である場合の構成および動作について説明する。
【０２６４】
画像形成装置の電送・制御装置は、メモリコントローラ２９００と、ＣＰＵ２９０１と、パネルコントローラ２９１７と、ＲＯＭ２９１８と、パネル２９１９と、メインメモリ２９２４と、プリンタエンジン２９２７とを有する。
【０２６５】
また、メモリコントローラ２９００は、ＣＰＵ  Ｉ／Ｆ２９０２と、メモリＡＲＢ２９０３と、ローカルＩ／Ｆ２９０４と、画像処理装置２９０５と、通信コントローラ２９０６と、符号化装置２９０７と、グラフィックス符号化装置２９０８と、復号化処理装置２９２５と、エンジンコントローラ２９２６とを有する。
【０２６６】
ＣＰＵ２９０１は、プリンタ機器を全体の制御を行う。ＣＰＵ  Ｉ／Ｆ２９０２は、メモリコントローラ２９００のメモリＡＲＢ２９０３に接続され、ＣＰＵ２９０１とメモリコントローラ２９００との間のＩ／Ｆ（インタフェース）を処理する。
【０２６７】
メモリＡＲＢ２９０３は、メインメモリ２９２４をコントロールし、ＣＰＵ２９０１、ローカルＩ／Ｆ（ローカルバス）２９０４、画像処理装置２９０５、符号化装置２９０７、グラフィックス符号化装置２９０８、復号化処理装置２９２５などと、メインメモリ２９２４との間のデータ転送をコントロールする。
【０２６８】
ローカルＩ／Ｆ２９０４は、ローカルバスのインタフェースであり、ＲＯＭ２９１８、パネルコントローラ２９１７などと、ＣＰＵ２９０１、メインメモリ２９２４などとのＩ／Ｆを処理する。
【０２６９】
通信コントローラ２９０６は、ネットワークに接続されており、ネットワークから各種データやコマンドなどを受け取り、メモリＡＲＢ２９０３を介して各種のコントローラに接続されている。
【０２７０】
画像処理装置２９０５は、メインメモリ２９２４のフォントキャッシュの符号を読み込み、画像処理を行った後、メインメモリ２９２４のバンドメモリ領域へ描画する。
【０２７１】
符号化装置２９０７は、メインメモリ２９２４のバンドデータを符号化し、メインメモリ２９２４へ転送する。
【０２７２】
グラフィック符号化装置２９０８は、メインメモリ２９２４のワーク領域のフォントデータを符号化し、またメインメモリ２９２４のフォントキャッシュ領域の符号データを復号化する。
【０２７３】
復号化処理装置２９２５は、符号化装置２９０７により符号化された符号をメインメモリ２９２４から受け取り、復号化し、エンジンコントローラ２９２６へ転送する。
【０２７４】
ＲＯＭ２９１８は、文字などのフォント情報や、ＣＰＵ２９０１のプログラムなどを格納する。
【０２７５】
パネルコントローラ２９１７は、パネル２９１９をコントロールしている。
【０２７６】
パネル２９１９は、ユーザの操作により情報を入力する部位であって、入力された情報をコピー装置（画像形成装置）へ知らせる。
【０２７７】
エンジンコントローラ２９２６は、復号化処理装置２９２５から画像を受け取り、プリンタエンジン２９２７へ転送する。
【０２７８】
プリンタエンジン２９２７は、モノクロ印刷を行うプリンタエンジンである。
【０２７９】
メインメモリ２９２４は、符号化装置２９０７の符号と、ＣＰＵ２９０１のプログラムおよびフォントデータと、各種データなどを格納する。
【０２８０】
図３０は、本発明の一実施形態における画像処理装置２９０５の構成を示すブロック図である。以下、図３０を用いて、本実施形態における画像処理装置２９０５の構成について説明する。
【０２８１】
画像処理装置２９０５は、メモリＡＲＢ  Ｉ／Ｆ１００１と、読み込みアドレス生成装置１００２と、符号解析装置１００３と、色変換装置１００４と、階調処理装置１００５と、書き込みアドレス生成装置１００６と、パラメータ記憶装置１００７と、コントローラ１００８とを有する。
【０２８２】
メモリＡＲＢ  Ｉ／Ｆ１００１は、メモリＡＲＢ２０３とのＩ／Ｆを行い、読み込みアドレス生成装置１００２からのアドレスに基づきフォントキャッシュからグラフィック画像の符号データを読み込み、書き込みアドレス生成装置（メインメモリアドレス生成装置）１００６からのアドレスに基づき、メインメモリ２２４へ階調処理後のデータを書き込む。
【０２８３】
読み込みアドレス生成装置１００２は、フォントキャッシュからグラフィック画像の符号データを読み込むアドレスを生成する。
【０２８４】
符号解析装置１００３は、フォントキャッシュからグラフィック画像の符号データを解析し、黒のランレングスとその先頭の論理アドレス（ＯＸ、ＯＹ）を求める。次に、符号解析装置１００３は、パラメータ記憶装置１００７からのバンドデータのバンド幅（ＢＡＮＤＷＩＤＴＨ）と展開するグラフィック画像のバンドの先頭アドレス（ＳＡＤ）により、求めた黒のランの先頭アドレスを求め色変換装置１００４へ転送し、１ワードの符号を処理後に読み込み、アドレス生成装置１００２へ読み込みアドレスをカウントＵＰさせる信号を送る。
【０２８５】
色変換装置１００４は、符号解析装置１００３からの黒のランレングスとその先頭のアドレスを受け取り、パラメータ記憶装置１００７からのＣＭＹＫ値と、黒のランレングスと、先頭アドレスとを階調処理装置１００５へ転送する。
【０２８６】
階調処理装置１００５は、色変換装置１００４からのＣＭＹＫ値と黒のランレングスとそのバンド上での先頭アドレスを受け取り、階調処理を行い、メモリＡＲＢ  Ｉ／Ｆ１００１へ転送する。
【０２８７】
メインメモリアドレス生成装置１００６は、図５に示されるメインメモリ２２４のＣ、Ｍ、Ｙ、Ｋ版の２値バンドメモリ領域のアドレスを生成する。
【０２８８】
パラメータ記憶装置１００７は、符号解析装置１００３、色変換装置１００４、階調処理装置１００５のパラメータを一時記憶する。
【０２８９】
コントローラ１００８は、画像処理装置２０５全体をコントロールする。
【０２９０】
なお、上記の実施形態は本発明の好適な実施の一例であり、本発明の実施形態は、これに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々変形して実施することが可能となる。
【０２９１】
以上説明したように、本実施形態によれば、画像形成装置は、グラフィックス符号化装置２０８と、階調処理後のバンドデータへ展開する画像処理装置２０５とを有する。このことにより、ドットデータへ展開されたグラフィック画像を符号化し、フォントキャッシュへの書き込む処理と、その符号化されたデータの画像処理を行い、メインメモリ２２４の階調処理後のバンドデータ領域へ書き込む処理とが並列処理可能となる。また、フォントキャッシュからの符号データの読み込みと、その符号データの画像処理と、その画像処理後のデータをメインメモリ２２４の階調処理後のバンドデータ領域へ書き込む処理とが並列処理可能となる。よって、グラフィック画像の描画処理を高速化することが可能となる。
【０２９２】
また、本実施形態によれば、画像処理装置２０５は、符号データを直接復号化せずに画像処理を行う。従って、画像処理を行う際の復号化処理の為のメモリアクセスを必要としないため、処理の高速化を実現することが可能となる。
【０２９３】
また、画像形成装置は、画像処理と、符号化処理と、復号化処理とを行う。上記の処理は、画像形成装置が有するコンピュータプログラムにより実行されるが、上記のプログラムは、光記録媒体、磁気記録媒体、光磁気記録媒体、または半導体等の記録媒体に記録され、上記の記録媒体からロードされるようにしてもよいし、所定のネットワークを介して接続されている外部機器からロードされるようにしてもよい。
【０２９４】
【発明の効果】
以上説明したように、本発明によれば、画像形成装置は、グラフィック用の符号化装置と、階調処理後のバンドデータへ展開する画像処理装置とを有する。このことにより、ドットデータへ展開されたグラフィック画像を符号化し、フォントキャッシュへの書き込む処理と、その符号化されたデータの画像処理を行い、メインメモリの階調処理後のバンドデータ領域へ書き込む処理とが並列処理可能となる。また、フォントキャッシュからの符号データの読み込みと、その符号データの画像処理と、その画像処理後のデータをメインメモリの階調処理後のバンドデータ領域へ書き込む処理とが並列処理可能となる。よって、グラフィック画像の描画処理を高速化することが可能となる。
【０２９５】
また、本発明によれば、画像処理装置は、符号データを直接復号化せずに画像処理を行う。従って、画像処理を行う際の復号化処理の為のメモリアクセスを必要としないため、処理の高速化を実現することが可能となる。
【図面の簡単な説明】
【図１】本発明の一実施形態における画像形成装置の機構部の構成例を示す図である。
【図２】本発明の一実施形態における画像形成装置の電装・制御装置のブロック図である。
【図３】本発明の一実施形態における画像形成装置による全体の処理の流れを示す図であって、（ａ）は、グラフィック画像がフォントキャッシュに無い場合のグラフィック画像処理の流れを示す図であり、（ｂ）は、グラフィック画像がフォントキャッシュにある場合のグラフィック画像処理の流れを示す図である。
【図４】本発明の一実施形態における画像形成装置の構成を示す図である。
【図５】本発明の一実施形態におけるメインメモリのフォーマットを示す図である。
【図６】本発明の一実施形態における画像形成装置によるグラフィック画像の生成と２値バンドメモリへの展開を示す図である。
【図７】本発明の一実施形態における画像形成装置によるフォントキャッシュの符号データの２値バンドメモリへの展開を示す図である。
【図８】本発明の一実施形態における画像形成装置による符号化の例を示す図である。
【図９】本発明の一実施形態における２値バンドメモリへのデータ展開処理を示す図である。
【図１０】本発明の一実施形態における画像処理装置の構成を示すブロック図である。
【図１１】本発明の一実施形態における画像処理装置による画像処理の流れを示すフローチャートである。
【図１２】本発明の一実施形態における符号解析装置の構成を示すブロック図である。
【図１３】本発明の一実施形態における符号解析装置による処理の流れを示すフローチャートである。
【図１４】本発明の一実施形態における色変換装置の構成を示すブロック図である。
【図１５】本発明の一実施形態における色変換装置による処理の流れを示すフローチャートである。
【図１６】本発明の一実施形態における階調処理装置の構成を示すブロック図である。
【図１７】本発明の一実施形態における階調処理装置による階調処理の流れを示すフローチャートである。
【図１８】本発明の一実施形態における固定長データ生成装置の構成を示すブロック図である。
【図１９】本発明の一実施形態における画像形成装置のＣＰＵによるグラフィック画像の展開例を示す図である。
【図２０】本発明の一実施形態におけるグラフィック符号化装置の構成を示すブロック図である。
【図２１】従来のアウトラインフォントおよびビットマップフォントを示す図である。
【図２２】本発明の一実施形態における画像処理装置の他の構成例を示すブロック図である。
【図２３】本発明の一実施形態における符号解析装置の他の構成例を示すブロック図である。
【図２４】本発明の一実施形態における他の符号解析装置による符号解析処理の流れを示すフローチャートである。
【図２５】本発明の一実施形態における色変換装置の他の構成例を示すブロック図である。
【図２６】本発明の一実施形態における他の色変換装置による色変換処理の流れを示すフローチャートである。
【図２７】本発明の一実施形態における階調処理装置の他の構成例を示すブロック図である。
【図２８】本発明の一実施形態における他の階調処理装置による階調処理の流れを示すフローチャートである。
【図２９】本発明の一実施形態における画像形成装置がモノクロ機である場合の電装・制御装置の構成を示すブロック図である。
【図３０】本発明の一実施形態における画像形成装置がモノクロ機である場合の画像処理装置の構成を示すブロック図である。
【図３１】本発明の一実施形態におけるディザマトリックスを用いて階調処理を行うパターンディザ法を示す図である。
【符号の説明】
１Ｙ、１Ｍ、１Ｃ、１Ｋ  作像系
２Ｙ、２Ｍ、２Ｃ、２Ｋ  ＯＰＣドラム
３Ｙ、３Ｍ、３Ｃ、３Ｋ  帯電ローラ
４Ｙ、４Ｍ、４Ｃ、４Ｋ  現像装置
７Ｙ、７Ｍ、７Ｃ、７Ｋ  トナーボトルユニット
８Ｙ、８Ｍ、８Ｃ、８Ｋ  光書き込み装置
９Ｙ、９Ｍ、９Ｃ、９Ｋ  レーザダイオード光源
１０Ｙ、１０Ｍ、１０Ｃ、１０Ｋ  コリメートレンズ
１１Ｙ、１１Ｍ、１１Ｃ、１１Ｋ  光学部品
１２Ｙ、１２Ｍ、１２Ｃ、１２Ｋ  ポリゴンミラー
１３Ｙ、１３Ｍ、１３Ｃ、１３Ｋ、１４Ｙ、１４Ｍ、１４Ｃ、１４Ｋ  折り返しミラー
１５  転写ベルトユニット
１６  転写ベルト
１７〜２０  ローラ
２１  給紙トレイ
２２  定着装置
２３  排紙ローラ
２４  排紙トレイ
２５  給紙ローラ
２６  電送・制御装置
２００、２９００  メモリコントローラ
２０１、２９０１  ＣＰＵ
２０２、２９０２  ＣＰＵ  Ｉ／Ｆ
２０３、２９０３  メモリＡＲＢ
２０４、２９０４  ローカルＩ／Ｆ
２０５、２９０５  画像処理装置
２０６、２９０６  通信コントローラ
２０７、２９０７  符号化装置
２０８、２９０８  グラフィックス符号化装置
２０９  Ｃ版符号化処理装置
２１０  Ｍ版符号化処理装置
２１１  Ｙ版符号化処理装置
２１２  Ｋ版符号化処理装置
２１３  Ｃ版エンジンコントローラ
２１４  Ｍ版エンジンコントローラ
２１５  Ｙ版エンジンコントローラ
２１６  Ｋ版エンジンコントローラ
２１７、２９１７  パネルコントローラ
２１８、２９１８  ＲＯＭ
２１９、２９１９  パネル
２２０  Ｃ版プリンタエンジン
２２１  Ｍ版プリンタエンジン
２２２  Ｙ版プリンタエンジン
２２３  Ｋ版プリンタエンジン
２２４、２９２４  メインメモリ
２２５  全体コントローラ
１００１、２００１、２２０１  メモリＡＲＢ  １／Ｆ
１００２、２２０２  読み込みアドレス生成装置
１００３、２２０３  符号解析装置
１００４、２２０４  色変換装置
１００５、２２０５  階調処理装置
１００６、２２０６  書き込みアドレス生成装置
１００７、２２０７  パラメータ記憶装置
１００８、１２０６、１４０５、１６２２、２２０８、２３０３、２５０５  コントローラ
１２０１、２３０１  ランレングス変換装置
１２０２、２３０２  黒ラン判定装置
１２０３、２７１７  ランレングス合計装置
１２０４、２７１８  論理アドレス生成装置
１２０５、２７１９  物理アドレス生成装置
１４０１、２５０１  ＣＭＹＫ値記憶装置
１４０２〜１４０４、２５０２〜２５０４  レジスタ
１６０１、２７０１  しきい値マトリックス記憶装置アドレス生成装置
１６０２、２７０２  しきい値マトリックス記憶装置
１６０３、２７０３  データ分配装置
１６０４〜１６０７、２７０４〜２７０７  比較装置
１６０８、２７０８  Ｃ固定長データ生成装置
１６０９、２７０９  Ｍ固定長データ生成装置
１６１０、２７１０  Ｙ固定長データ生成装置
１６１１、２７１１  Ｋ固定長データ生成装置
１６１２、２７１２  Ｃ−ＦＩＦＯ
１６１３、２７１３  Ｍ−ＦＩＦＯ
１６１４、２７１４  Ｙ−ＦＩＦＯ
１６１５、２７１５  Ｋ−ＦＩＦＯ
１６１６、１６２１、２７１６、２７２１  ＭＵＸ
１６２０、２７２０  ＣＭＹＫアドレス生成装置
２００２、２００４  バッファ
２００３  ＭＨ符号化装置
２００５  メモリアドレス生成装置
【図１】
2004230742.tif 000003
【図２】
2004230742.tif 000004
【図３】
2004230742.tif 000005
【図４】
2004230742.tif 000006
【図５】
2004230742.tif 000007
【図６】
2004230742.tif 000008
【図７】
2004230742.tif 000009
【図８】
2004230742.tif 000010
【図９】
2004230742.tif 000011
【図１０】
2004230742.tif 000012
【図１１】
2004230742.tif 000013
【図１２】
2004230742.tif 000014
【図１３】
2004230742.tif 000015
【図１４】
2004230742.tif 000016
【図１５】
2004230742.tif 000017
【図１６】
2004230742.tif 000018
【図１７】
2004230742.tif 000019
【図１８】
2004230742.tif 000020
【図１９】
2004230742.tif 000021
【図２０】
2004230742.tif 000022
【図２１】
2004230742.tif 000023
【図２２】
2004230742.tif 000024
【図２３】
2004230742.tif 000025
【図２４】
2004230742.tif 000026
【図２５】
2004230742.tif 000027
【図２６】
2004230742.tif 000028
【図２７】
2004230742.tif 000029
【図２８】
2004230742.tif 000030
【図２９】
2004230742.tif 000031
【図３０】
2004230742.tif 000032
【図３１】
2004230742.tif 000033