(57)【特許請求の範囲】
【請求項１】
入力印刷情報の描画処理を実行し、印刷装置において出力可能な印字データへの展開を行う印刷処理装置において、
印刷情報を印字データに展開する前記描画処理を実行する本体処理手段と、
前記本体処理手段に接続可能な構成を有し、前記描画処理の少なくとも一部の処理を実行する付加処理手段と、
前記本体処理手段に接続された付加処理手段の種類を識別する検出手段と、
前記検出手段により識別された付加処理手段の実行処理が特定できる形態である場合には前記本体処理手段および該識別された付加処理手段において実行すべき描画処理プロセスを決定し、前記検出手段により識別された付加処理手段の実行処理が異なる形態で複数設定できる場合にはユーザによる指定によって前記本体処理手段および該識別された付加処理手段において実行すべき描画処理プロセスを決定する描画処理プロセス決定手段と、
前記描画処理プロセス決定手段により決定された描画処理プロセスの実行プログラムを前記本体処理手段および接続された付加処理手段にロードする描画処理プログラムロード手段と、
を備えたことを特徴とする印刷処理装置。
【請求項２】
前記描画処理プロセス決定手段は、前記検出手段により識別された付加処理手段の種類、個数、および描画処理プロセス指示情報に基づいて実行すべき描画処理プロセスを決定することを特徴とする請求項１記載の印刷処理装置。
【請求項３】
前記描画処理プロセス決定手段は、付加処理手段の種類、個数、および描画処理プロセス指示情報の有無と、実行すべき描画処理プロセスとを対応させた描画処理プロセス決定テーブルに基づいて実行すべき描画処理プロセスを決定することを特徴とする請求項２記載の印刷処理装置。
【請求項４】
前記付加処理手段は前記本体処理手段に対して着脱可能な構成を有することを特徴とする請求項１乃至３いずれかに記載の印刷処理装置。
【請求項５】
前記付加処理手段は前記本体処理手段または他の付加処理手段のアクセラレータとして構成されることを特徴とする請求項１乃至４いずれかに記載の印刷処理装置。
【請求項６】
前記付加処理手段は、一連の描画処理プロセス中、前記本体処理手段または他の付加処理手段の実行する描画処理プロセス以外の描画処理プロセスを実行する構成を有することを特徴とする請求項１乃至４いずれかに記載の印刷処理装置。
【請求項７】
前記付加処理手段は、一連の描画処理プロセス中、前記本体処理手段または他の付加処理手段の実行する描画処理プロセスの少なくとも一部の描画処理プロセスを前記本体処理手段または他の付加処理手段とともに並列に実行する構成を有することを特徴とする請求項１乃至４いずれかに記載の印刷処理装置。
【請求項８】
前記付加処理手段は同一の描画処理プロセスを並列処理可能な複数の付加処理手段によって構成され、前記描画処理プロセス決定手段は、印刷情報のページ単位の処理を前記複数の付加処理手段を用いた並列処理とするプロセスを実行プロセスとして決定することを特徴とする請求項１乃至４いずれかに記載の印刷処理装置。
【請求項９】
前記付加処理手段は同様の処理を並列に処理可能な複数の付加処理手段によって構成され、前記描画処理プロセス決定手段は、印刷情報中の描画オブジェクト単位の処理を前記複数の付加処理手段を用いた並列処理とするプロセスを実行プロセスとして決定することを特徴とする請求項１乃至４いずれかに記載の印刷処理装置。
【請求項１０】
入力印刷情報の描画処理を実行し、印刷装置において出力可能な印字データへの展開を行なう印刷処理方法であって、
印刷情報を印字データに展開する前記描画処理を実行する本体処理手段と、前記本体処理手段に接続可能な構成を有し、前記描画処理の少なくとも一部の処理を実行する付加処理手段とを適用して実行する印刷処理方法において、
前記本体処理手段に接続された付加処理手段の種類を識別する検出ステップと、
前記検出ステップにおいて識別された付加処理手段の実行処理が特定できる形態である場合には前記本体処理手段および該識別された付加処理手段において実行すべき描画処理プロセスを決定し、前記検出ステップにおいて識別された付加処理手段の実行処理が異なる形態で複数設定できる場合にはユーザによる指定によって前記本体処理手段および該識別された付加処理手段において実行すべき描画処理プロセスを決定する描画処理プロセス決定ステップと、
前記描画処理プロセス決定ステップにおいて決定された描画処理プロセスの実行プログラムを前記本体処理手段および接続された付加処理手段にロードする描画処理プログラムロードステップと、
を備えたことを特徴とする印刷処理方法。
【請求項１１】
前記描画処理プロセス決定ステップは、
前記検出ステップにおいて識別された付加処理手段の種類、個数、および描画処理プロセス指示情報に基づいて実行すべき描画処理プロセスを決定することを特徴とする請求項１０記載の印刷処理方法。
【請求項１２】
前記描画処理プロセス決定ステップは、
付加処理手段の種類、個数、および描画処理プロセス指示情報の有無と、実行すべき描画処理プロセスとを対応させた描画処理プロセス決定テーブルに基づいて実行すべき描画処理プロセスを決定することを特徴とする請求項１１記載の印刷処理方法。
【請求項１３】
前記付加処理手段は、一連の描画処理プロセス中、前記本体処理手段または他の付加処理手段の実行する描画処理プロセス以外の描画処理プロセスを実行することを特徴とする請求項１０乃至１２いずれかに記載の印刷処理方法。
【請求項１４】
前記付加処理手段は、一連の描画処理プロセス中、前記本体処理手段または他の付加処理手段の実行する描画処理プロセスの少なくとも一部の描画処理プロセスを前記本体処理手段または他の付加処理手段とともに並列に実行することを特徴とする請求項１０乃至１２いずれかに記載の印刷処理方法。
【請求項１５】
前記付加処理手段は同一の描画処理プロセスを並列処理可能な複数の付加処理手段によって構成され、前記描画処理プロセス決定ステップは、印刷情報のページ単位の処理を前記複数の付加処理手段を用いた並列処理とするプロセスを実行プロセスとして決定することを特徴とする請求項１０乃至１２いずれかに記載の印刷処理方法。
【請求項１６】
前記付加処理手段は同様の処理を並列に処理可能な複数の付加処理手段によって構成され、前記描画処理プロセス決定ステップは、印刷情報中の描画オブジェクト単位の処理を前記複数の付加処理手段を用いた並列処理とするプロセスを実行プロセスとして決定することを特徴とする請求項１０乃至１２いずれかに記載の印刷処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は印刷処理装置に係り、例えば電子写真方式のページプリンタを利用した印刷処理装置中の描画処理に関する。さらに詳しく言えば、印刷情報を印字データに展開するための描画処理に必要な機能の一部あるいは全部を実行するための演算処理手段を着脱可能とし、付加された演算処理手段の構成に基づいて処理プロセスを決定し効率的な描画処理を可能とした印刷処理装置に関する。
【０００２】
【従来の技術】
各種の記述言語で作成されている印刷情報は、ページ内の任意の位置の画像、図形、文字を表現する描画命令が任意の順で構成されており、本発明に係わる電子写真方式のページプリンタで印字するためには、印字前に印刷情報をラスターデータ化しなければならない。ラスターデータ化というのは、ページ又はページの一部を横切る一連の個々のドットまたは画素へ展開してラスター走査線を形成し、そのページの下へ引き続く走査線を次々に発生する過程である。この印刷情報のラスターデータ化（以下、描画処理と記載する。）にともない処理しなければならないデータ量は膨大であり、描画処理するための演算処理リソースは高性能のものが要求されている。
【０００３】
特に、電子写真方式のカラーページプリンタでは、Ｃ（Ｃｙａｎ），Ｍ（Ｍａｇｅｎｔａ），Ｙ（Ｙｅｌｌｏｗ），Ｂｋ（Ｂｌａｃｋ）の４色のトナーに対応するラスターデータを必要とするとともに、白黒ページプリンタ以上に画質が要求されるため１画素当たり複数のビット情報を持つのが一般的である。例えば、解像度６００ｄｐｉ，階調情報各色８ｂｉｔ／画素，記録サイズＡ４の一般的なカラーページプリンタでは、１ページあたり処理しなければならないデータ量は、最終的なラスターデータのところで約１４０ＭＢになる。また、プリント速度が１分間に６枚のカラーページプリンタであるとすると、少なくとも１４ＭＢ／ｓ以上のスループットで処理する必要がある。
【０００４】
しかしながら、記述言語で作成されている生の印刷情報を受け取って、プリント速度でリアルタイムに全ての印刷情報をラスターデータ化することは通常不可能であり、ラスター化されたページ全体のラスターデータをページメモリに蓄積したり、バンド分割された中間データからプリント速度でバンド毎にラスターデータ化しメモリに蓄積することが、一般的に行われている。即ち、電子写真方式のページプリンタを用いた印刷処理装置におけるボトルネックは一般的には描画処理である。描画処理においては、高速処理とともに、限定された描画処理の演算処理リソースを効率的に利用することが望まれている。
【０００５】
近年の印刷処理装置では、上記描画処理は１つの中央演算処理装置（以下、ＣＰＵと記載する。）を用いてソフトウェアで実行されるのが一般的である。また、上記した処理の高速化の問題を解決するため、特開平４−１２８０６８公報に記載されている印刷処理装置では、複数のＣＰＵをバスにより密結合し、プログラムによって複数の描画命令を並列的に解釈させて高速処理を行う技術が開示されている。また、特開平５−１２４３０２公報に記載されている印刷処理装置では、印刷処理装置本体にＣＰＵを内蔵したカートリッジを複数装着できるよう構成されており、印刷処理装置本体および複数のカートリッジに印刷情報をページ単位で振り分け、印刷処理装置本体および複数のカートリッジのＣＰＵで並列的に解釈させて高速処理を行う技術が開示されている。
【０００６】
しかしながら、特開平４−１２８０６８公報に記載されている印刷処理装置では、描画処理のためのリソースは固定的で、ユーザの利用状況に応じた拡張／削減が不可能であり、処理する印刷情報の少ないユーザに対しても初期的に必要以上の投資を強いることになる。これに対し、特開平５−１２４３０２公報に記載されている印刷処理装置では、印刷処理装置本体に装着するカートリッジの数を増減させることにより、ユーザの利用状況に応じて描画処理のためのリソースの拡張／削減が可能となる。しかしながら、特開平５−１２４３０２公報に記載されている印刷処理装置では、カートリッジの機能が固定的であり、上記したようにページ単位の並列処理しか実行できない。一方、ユーザの利用状況には、複雑な図形処理が多く含まれている印刷情報を出力する場合が多いとか、写真等の画像データが多く含まれている印刷情報を出力する場合が多いとか、１ページ毎の負荷は小さいが多数ページからなる印刷情報を出力する場合が多いとか、様々である。従って、上記したようにカートリッジの機能が固定的では、ユーザの利用状況には柔軟に対応することはできない。即ち、限定された描画処理リソースにおいて、効率的に利用することはできない。
【０００７】
【発明が解決しようとする課題】
本発明は、このような点に鑑みてなされたものであり、描画処理のためのリソースの拡張と削減を可能とし、描画処理性能を実行すべき印刷情報の処理に応じて変更、構築可能とする印刷処理装置を提供することを目的としている。さらに、付加する描画処理リソースをユーザの利用状況の詳細に応じて選択可能とし、限定された描画処理リソースにおいて描画処理リソースを最も効率的に利用する印刷処理装置を提供することを目的としている。
【０００８】
また、付加する描画処理リソースの設置と利用に関し、ユーザの手を煩わすことなく、簡易に設置と利用ができる印刷処理装置を提供することを目的としている。さらに、付加する描画処理リソースの交換により、性能の異なる様々な印字装置に対して共通の描画処理装置で対応できるアーキテクチャを提供することを目的としている。
【０００９】
【課題を解決するための手段】
本発明は上述の目的を達成する印刷処理装置であり、入力印刷情報の描画処理を実行し、印刷装置において出力可能な印字データへの展開を行う印刷処理装置において、印刷情報を印字データに展開する描画処理を実行する本体処理手段と、本体処理手段に接続可能な構成を有し、描画処理の少なくとも一部の処理を実行する付加処理手段と、本体処理手段に接続された付加処理手段の種類を識別する検出手段と、検出手段により識別された付加処理手段の実行処理が特定できる形態である場合には本体処理手段および該識別された付加処理手段において実行すべき描画処理プロセスを決定し、検出手段により識別された付加処理手段の実行処理が異なる形態で複数設定できる場合にはユーザによる指定によって本体処理手段および該識別された付加処理手段において実行すべき描画処理プロセスを決定する描画処理プロセス決定手段と、描画処理プロセス決定手段により決定された描画処理プロセスの実行プログラムを本体処理手段および接続された付加処理手段にロードする描画処理プログラムロード手段とを備えたことを特徴とする。
【００１０】
さらに、本発明の印刷処理装置において、描画処理プロセス決定手段は、検出手段により識別された付加処理手段の種類、個数、および描画処理プロセス指示情報に基づいて実行すべき描画処理プロセスを決定することを特徴とする。
【００１１】
さらに、本発明の印刷処理装置において、描画処理プロセス決定手段は、付加処理手段の種類、個数、および描画処理プロセス指示情報の有無と、実行すべき描画処理プロセスとを対応させた描画処理プロセス決定テーブルに基づいて実行すべき描画処理プロセスを決定することを特徴とする。
【００１２】
さらに、本発明の印刷処理装置において、付加処理手段は本体処理手段に対して着脱可能な構成を有することを特徴とする。
【００１３】
さらに、本発明の印刷処理装置において、付加処理手段は本体処理手段または他の付加処理手段のアクセラレータとして構成されることを特徴とする。
【００１４】
さらに、本発明の印刷処理装置において、付加処理手段は、一連の描画処理プロセス中、本体処理手段または他の付加処理手段の実行する描画処理プロセス以外の描画処理プロセスを実行する構成を有することを特徴とする。
【００１５】
さらに、本発明の印刷処理装置において、付加処理手段は、一連の描画処理プロセス中、本体処理手段または他の付加処理手段の実行する描画処理プロセスの少なくとも一部の描画処理プロセスを本体処理手段または他の付加処理手段とともに並列に実行する構成を有することを特徴とする。
【００１６】
さらに、本発明の印刷処理装置において、付加処理手段は同一の描画処理プロセスを並列処理可能な複数の付加処理手段によって構成され、描画処理プロセス決定手段は、印刷情報のページ単位の処理を複数の付加処理手段を用いた並列処理とするプロセスを実行プロセスとして決定することを特徴とする。
【００１７】
さらに、本発明の印刷処理装置において、付加処理手段は同様の処理を並列に処理可能な複数の付加処理手段によって構成され、描画処理プロセス決定手段は、印刷情報中の描画オブジェクト単位の処理を複数の付加処理手段を用いた並列処理とするプロセスを実行プロセスとして決定することを特徴とする。
さらに、本発明の印刷処理方法は、入力印刷情報の描画処理を実行し、印刷装置において出力可能な印字データへの展開を行なう印刷処理方法であって、印刷情報を印字データに展開する前記描画処理を実行する本体処理手段と、前記本体処理手段に接続可能な構成を有し、前記描画処理の少なくとも一部の処理を実行する付加処理手段とを適用して実行する印刷処理方法において、前記本体処理手段に接続された付加処理手段の種類を識別する検出ステップと、前記検出ステップにおいて識別された付加処理手段の実行処理が特定できる形態である場合には前記本体処理手段および該識別された付加処理手段において実行すべき描画処理プロセスを決定し、前記検出ステップにおいて識別された付加処理手段の実行処理が異なる形態で複数設定できる場合にはユーザによる指定によって前記本体処理手段および該識別された付加処理手段において実行すべき描画処理プロセスを決定する描画処理プロセス決定ステップと、前記描画処理プロセス決定ステップにおいて決定された描画処理プロセスの実行プログラムを前記本体処理手段および接続された付加処理手段にロードする描画処理プログラムロードステップと、を備えたことを特徴とする印刷処理方法にある。
さらに、本発明の印刷処理方法において、前記描画処理プロセス決定ステップは、前記検出ステップにおいて識別された付加処理手段の種類、個数、および描画処理プロセス指示情報に基づいて実行すべき描画処理プロセスを決定することを特徴とする。
さらに、本発明の印刷処理方法において、前記描画処理プロセス決定ステップは、付加処理手段の種類、個数、および描画処理プロセス指示情報の有無と、実行すべき描画処理プロセスとを対応させた描画処理プロセス決定テーブルに基づいて実行すべき描画処理プロセスを決定することを特徴とする。
さらに、本発明の印刷処理方法において、前記付加処理手段は、一連の描画処理プロセス中、前記本体処理手段または他の付加処理手段の実行する描画処理プロセス以外の描画処理プロセスを実行することを特徴とする。
さらに、本発明の印刷処理方法において、前記付加処理手段は、一連の描画処理プロセス中、前記本体処理手段または他の付加処理手段の実行する描画処理プロセスの少なくとも一部の描画処理プロセスを前記本体処理手段または他の付加処理手段とともに並列に実行することを特徴とする。
さらに、本発明の印刷処理方法において、前記付加処理手段は同一の描画処理プロセスを並列処理可能な複数の付加処理手段によって構成され、前記描画処理プロセス決定ステップは、印刷情報のページ単位の処理を前記複数の付加処理手段を用いた並列処理とするプロセスを実行プロセスとして決定することを特徴とする。
さらに、本発明の印刷処理方法において、前記付加処理手段は同様の処理を並列に処理可能な複数の付加処理手段によって構成され、前記描画処理プロセス決定ステップは、印刷情報中の描画オブジェクト単位の処理を前記複数の付加処理手段を用いた並列処理とするプロセスを実行プロセスとして決定することを特徴とする。
【００１８】
【発明の実施の形態】
以下、図面に基づき本発明に係わる印刷処理装置について説明する。図１は本発明に係る印刷処理装置の一実施例の基本構成を示すブロック図である。図１に示すように本実施例の印刷処理装置は、印刷情報１を入力し処理を実行する本体演算処理手段２と、付加演算処理手段３と、印刷装置４と、検出手段５と、描画処理プロセス決定手段６と、描画処理プログラムロード手段７とから構成されている。
【００１９】
図１において、本発明の印刷処理装置で処理される印刷情報１は、例えばＧＤＩコマンドで記述された印刷データであるが、Ａｃｒｏｂａｔで代表されるＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ）、ＰｏｓｔＳｃｒｉｐｔで代表されるページ記述言語で記述された印刷データ等、様々な記述言語を用いて記述されたデータであってもよい。
【００２０】
本体演算処理手段２は、印刷処理装置に本体処理手段として固定的に備えられたものであり、印刷処理のコアの機能を実現するものである。さらに、本体処理手段に接続される付加演算処理手段３との協調により、描画処理性能を向上させるものであるが、単独の場合でも、最低限の印刷処理を実行するためのリソースを備えたものである。即ち、本体演算処理手段２単独での描画処理を実行することが可能である。従って、本体演算処理手段２は、少なくとも印刷情報１を入力するための通信機能、描画処理が開始されるまでの間、印刷データを一時記憶する機能、印刷情報１を解釈しラスタデータ化された印字データに展開する描画処理機能、印刷装置４へラスタデータを出力するためのインターフェース機能等を有する。さらに、付加演算処理手段３が本体演算処理手段２に付加された場合、付加演算処理手段３の種類に応じて協調して動作するよう所定の描画処理プログラムが本体演算処理手段２にロードされ、描画処理機能が変更される。
【００２１】
付加演算処理手段３は、描画処理の少なくとも一部の処理を実行する付加処理手段であり、本体演算処理手段２に対して着脱可能な構成を有する。付加演算処理手段３は、本体演算処理手段２と協調して描画処理機能の全て、あるいは一部を実行する。また、付加演算処理手段３には各種の描画処理機能を有するものおよび性能の異なる複数の種類のものがあり、それらが１つまたは複数個、インターフェースを介して本体演算処理手段２に接続される。本体演算処理手段２には、付加演算処理手段３を設置するためのスロットが複数設けられ、１つの付加演算処理手段３のみ、または複数の付加演算処理手段３の組み合わせによって本体演算処理手段２において実行される描画処理を並列化したり、あるいは順次処理によりアシストする。
【００２２】
印刷装置４は、本体演算処理手段２あるいは付加演算処理手段３より出力される印字データを受け取って、記録用紙に印字し出力する電子写真方式のプリンタであり、例えばカラーレーザプリンタである。
【００２３】
検出手段５は、本体演算処理手段２に設置された付加演算処理手段３を検出して動作可能とするとともに、検出された付加演算処理手段３の種類と数を描画処理プロセス決定手段６に通知するものである。尚、数の検出および通知は、設置された付加演算処理手段３の個数分、付加演算処理手段３の種類の検出と描画処理プロセス決定手段６への付加演算処理手段３の種類の通知を繰り返すことによって行われる。
【００２４】
描画処理プロセス決定手段６は、検出手段５より通知された本体演算処理手段２に設置された付加演算処理手段３の種類と数に基づき、本体演算処理手段２および付加演算処理手段３で実行される描画処理プロセスを決定するものである。描画処理プロセスの決定に関しては、付加演算処理手段３の種類，数と描画処理プロセスとの対応関係を示すデータベースを参照して決定される。
【００２５】
描画処理プログラムロード手段７は、描画処理プロセス決定手段６で決定された描画処理プロセスに基づき、本体演算処理手段２および該当する付加演算処理手段３に描画処理プログラムを保持するデータベースより読み出して所定の描画処理プログラムをロードし、本体演算処理手段２および該当する付加演算処理手段３を実行状態にさせるものである。
【００２６】
次に本実施例の実装の形態について説明する。図２は本実施例の印刷処理装置全体が実装されるハードウェアの構成例である。
【００２７】
図２において、本実施例の印刷処理装置は、ネットワーク１１と、本体演算処理手段２と、付加演算処理手段である付加ハードウェア２０と、プリンタ装置２２とで構成されている。ネットワーク１１は、例えばＥｔｈｅｒｎｅｔであり、ネットワーク１１を介して図示しないＰＣやワークステーションから印刷情報１が入力される。本体演算処理手段２は、ＣＰＵ（中央演算処理装置）１３と、メモリコントローラ１４と、ＤＲＡＭ１５と、システムバスコントローラ１７と、ネットワークインタフェース１２と、磁気ディスク１８と、ＣＰＵバス１６と、システムバス２３とから構成される一般的なものである。さらに本実施例では、印刷処理装置として処理性能を向上させるために、付加ハードウェアインターフェース１９を介して付加ハードウェア２０がシステムバス２３に接続される。また、プリンタ装置２２もまたプリンタインターフェース２１を介してシステムバス２３に接続される。システムバス２３は、例えばＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐａｃｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バスであり、高速のデータ転送が可能である。
【００２８】
本体演算処理手段２には、本実施例の描画処理、検出手段５、描画処理プロセス決定手段６、描画処理プログラムロード手段７に相当する機能が実装される。例えば、磁気ディスク１８は描画処理、検出手段５、描画処理プロセス決定手段６、描画処理プログラムロード手段７の各処理のための所定のプログラム等の格納領域、印刷情報１の格納領域として使用される。また、ＤＲＡＭ１５は、各処理のためのワークエリア、描画処理されたラスターデータのメモリ領域として使用される。さらに、ＣＰＵ１３では本体演算処理手段２の各処理のための所定のプログラム各処理が実行される。
【００２９】
プリンタ装置２２は、印刷装置４に相当するものである。図３は、プリンタ装置２２の電子写真方式を用いたカラーページプリンタの構成例である。図３において、ビデオインターフェース３１は、本体演算処理手段２および付加演算処理手段３から順次送られてくるＣＭＹＢｋの色情報に対応したラスターデータを図示されない半導体レーザの点灯を制御するドライバーへ入力して光信号に変換する。半導体レーザ走査装置３２は、赤外半導体レーザ３２２、レンズ３２１、ポリゴンミラー等により構成され、数十μｍのスポット光となって感光体ドラム３３を走査する。感光体ドラム３３は、帯電器４０により帯電されており、光信号により、静電潜像が形成される。潜像はロータリー現像器３５上の２成分磁気ブラシ現像によりトナー像となり、転写ドラム３６上に吸着させた用紙上に転写される。感光体ドラム３３は、クリーナー３７で余分のトナーをクリーニングする。この工程をＢｋ，Ｙ，Ｍ，Ｃの順に繰り返し、用紙上に多重転写する。最後に、転写ドラムにより用紙を剥離し、定着器３８でトナーを定着する。３９は用紙の搬送経路を示す。
【００３０】
付加ハードウェア２０は、図１の付加演算処理手段３に相当するものである。付加ハードウェア２０の実施形態としては、例えば図４〜図６に示す３種の形態がある。図４の付加ハードウェアは画像処理アクセラレータ５２であり、本体演算処理手段２のみでは負荷の重い画像処理のためのハードウェアで本体演算処理手段２の描画処理５１の一部に組み込まれて動作するものである。例えば、付加ハードウェアである画像処理アクセラレータ５２の保持する機能が色変換機能であれば、本体演算処理手段２の描画処理フローにおいて色変換処理に関しては、付加ハードウェアとして設置された画像処理アクセラレータ５２の色変換機能を利用するＡＰＩがコールされ、色変換処理を画像処理アクセラレータ５２においてハードウェア処理する。
【００３１】
図５の付加ハードウェアは、中間データレンダリング処理装置５４であり、文字・図形処理のためのハードウェアである。中間データレンダリング処理装置５４は、文字・図形情報の描画処理の中間で生成されるベクターデータを中間データとし、中間データ以降の描画処理をハードウェア動作させるためものである。図５に示すように、中間データレンダリング処理装置５４を付加ハードウェアとして備えた構成においては、本体演算処理手段２は中間データまでを生成すればよいため描画処理の負荷が軽くなるとともに、中間データ以降を中間データレンダリング処理装置５４によってハードウェア動作処理が可能となるため全体の処理の高速化が達成される。
【００３２】
図６の付加ハードウェアは副描画処理装置５７であり、ＣＰＵおよびメモリを内蔵し、本体演算処理手段２の描画処理と同様の機能を実行するものである。この図６に示すように副描画処理装置５７を付加ハードウェアとして有する形態においては、本体演算処理手段２において、予め印刷情報１を解析しページ単位、あるいは描画オブジェクト単位に印刷情報１に含まれる印刷データを本体演算処理手段２の主描画処理部５６と付加ハードウェア５７の副描画処理装置５７に分配する印刷情報分配処理部５５が備えられている。
【００３３】
図６の形態では付加ハードウェアの種類と数に応じて、本体演算処理手段２と付加ハードウェア２０の両方に所定の描画処理プログラムが描画処理プログラムロード手段７よりロードされる。一方、図４および図５の形態では一般的に、本体演算処理手段２に所定の描画処理プログラムが描画処理プログラムロード手段７よりロードされる。しかし、図４および図５のハードウェアがＤＳＰやＦＰＧＡのようなプログラマブルなデバイスで構成されていても良く、この場合は描画処理のためのハードウェア構成を記述する描画処理プログラムが描画処理プログラムロード手段７よりロードされる。
【００３４】
図７は、図４の形態に対応する付加演算処理手段３のハードウェアの構成例と本体演算処理手段２とのインターフェース部のハードウェアの構成例を示すものである。図４の形態に対応する付加演算処理手段３は、カードバス（ＣａｒｄＢｕｓ）コネクタ６４と、カード・コントローラ６５と、属性情報メモリ６６と、入力バッファＦＩＦＯ６７と、アクセラレータ演算処理部６８と、出力バッファＦＩＦＯ６９で構成される。本体演算処理手段２とのインターフェースに使用されているカードバス（ＣａｒｄＢｕｓ）は、ＰＣＩバス同レベルの高速の転送速度が得られるとともに、ＰＣＭＣＩＡ規格のＰＣカード同様にカードの着脱の自動認識やカードドライバの自動ロードが実行される。一方、本体演算処理手段２のインターフェース部は、本実施例のシステムバスであるＰＣＩバス６１とカードバス（ＣａｒｄＢｕｓ）を接続するためのＰＣＩ−ｔｏ−ＣａｒｄＢｕｓコントローラ６２と、付加演算処理手段３を挿入するためのＣａｒｄＢｕｓスロット６３で構成される。
【００３５】
カード・コントローラ６５は、本体演算処理手段２からの入力バッファ６７へのデータ転送、アクセラレータ演算処理部６８の演算、出力バッファ６９から本体演算処理手段２へのデータ転送、付加演算処理手段３の種類に関する情報を含む属性情報の出力等を制御するものである。尚、本実施例では容易に着脱可能な付加演算処理手段３としてＣａｒｄＢｕｓカードを例にしているが、これに限定されるものではなく、例えばＰＣＩバスに直接に接続される付加回路基板の形態であってもよい。
【００３６】
また、図６の形態に対応する付加演算処理手段３のハードウェアの構成例を図１３に示す。図６の形態に対応する付加演算処理手段３は、カードバス（ＣａｒｄＢｕｓ）コネクタ６４と、カード・コントローラ１０１と、属性情報メモリ１０２と、ＣＰＵ１０３と、メモリコントローラ１０４と、ＤＲＡＭ１０５と、専用ＣＰＵバス１０６で構成される。同様に、図５の形態に対応する付加演算処理手段３のハードウェアの構成例を図１４に示す。図５の形態に対応する付加演算処理手段３は、カードバス（ＣａｒｄＢｕｓ）コネクタ６４と、カード・コントローラ１１１と、属性情報メモリ１１２と、レンダリング処理ＬＳＩ  １１３と、メモリコントローラ１１４と、ＤＲＡＭ１１５と、専用内部バス１１６で構成される。
【００３７】
以上、本発明を適用する印刷処理装置の概要およびハードウェア構成について記述した。次に、本発明の主要部の詳細について説明する。
【００３８】
初めに、検出手段５について詳細を説明する。検出手段５は、図８に示すように、ソケットサービス７１と、カードサービス７２と、カード・サービス・クライアント・ドライバ７３，７３’・・・・とから構成されている。ソケットサービス７１のおもな機能は、ＰＣＩカードバス（ＰＣＩ−ｔｏ−ＣａｒｄＢｕｓ）コントローラ６２および各カードバス（ＣａｒｄＢｕｓ）スロット６３の制御であり、アダプタ用ファンクション、ソケット用ファンクション、メモリウィンドウ用ファンクションが提供される。カードサービス７２は、カード・サービス・クライアントに対するファンクションを中心に、リソース管理、バルク・メモリ関連のファンクションで構成されている。カード・サービス・クライアント・ドライバ７３，７３’・・・・は、各付加演算処理手段３毎に用意されたドライバであり、各付加演算処理手段３の認識、および付加演算処理手段３に対して必要なハードウェアリソースの割当て等を実行するものである。
【００３９】
図９に、上記ソケットサービス７１、カードサービス７２、カード・サービス・クライアント・ドライバ７３，７３’・・・・を使って、付加演算処理手段３を認識する方法および付加演算処理手段３に対して必要なハードウェアリソースを割当てるための処理フローを示す。図９において、先ずＣａｒｄＢｕｓスロット６３に付加演算処理手段３が挿入されると、ＰＣＩ−ｔｏ−ＣａｒｄＢｕｓコントローラ６２はカードサービスに付加演算処理手段３の挿入を通知する（図９中、ステップ１）。次に、カードサービスは、カード・サービス・クライアント・ドライバに付加演算処理手段３の挿入を通知するとともに、処理を渡す（ステップ２）。続いて、カード・サービス・クライアント・ドライバは、付加演算処理手段３内の属性情報メモリ６６から属性情報を取得し（ステップ３）、対象とする付加演算処理手段３かどうかを認識する（ステップ４）。認識の結果ＮＯであれば、カード・サービス・クライアント・ドライバは不一致をカード・サービスに通知し、カードサービスは登録されている次のカード・サービス・クライアント・ドライバに付加演算処理手段３の挿入を通知するとともに、処理を渡す（ステップ５）。認識の結果ＹＥＳであれば、カード・サービス・クライアント・ドライバはカード・サービスに対して付加演算処理手段３に対して必要なハードウェアリソースの割当て等の初期化処理要求を行う（ステップ６）。続いて、カードサービスは、ソケットサービスに対して付加演算処理手段３に対するリソースの割当て指示（ステップ７、８）と、描画処理プロセス決定手段６に付加演算処理手段３の種類を通知（ステップ９）する。
【００４０】
以上の処理フローをＣａｒｄＢｕｓスロット６３に挿入された付加演算処理手段３の個数分繰り返すことにより、描画処理プロセス決定手段６に付加演算処理手段３の種類と数を通知することができる。
【００４１】
次に描画処理プロセス決定手段６について説明する。描画処理プロセス決定手段６は、図１０に示すように、描画処理プロセス決定サービス８１と、描画処理プロセスデータベース８２とから構成される。描画処理プロセス決定サービス８１は、カードサービス７３から入力される付加演算処理手段３の種類情報と数に基づき、描画処理プロセスデータベース８２を参照して描画処理プロセスを決定し、描画処理プログラムロード手段に通知する。
【００４２】
付加演算処理手段３が、例えば図４および図５に示したように実行処理が特定される形態である場合は、描画処理プロセスは一義的に決定されるが、付加演算処理手段３が図６に示すＣＰＵ処理型の場合は、並列処理の実行形態は異なる形態で複数設定することができるため、本実施例では図示されないユーザインターフェースより入力される描画処理プロセス指示情報８３の入力の有無によって処理形態を切り換えて設定することが可能に構成されている。例えば、付加演算処理手段３が図６に示すＣＰＵ内蔵型の場合、デフォルトではページ単位の並列処理を行うが、オブジェクト単位の並列処理を指示する描画処理プロセス指示情報８３が描画処理プロセス決定サービス８１に入力された場合はオブジェクト単位の並列処理とするように構成することができる。なお、処理の切り換えを印刷処理装置で処理される印刷情報１の状況に応じて行ってもよい。
【００４３】
図１１に描画処理プロセスデータベース８２に記憶される描画処理プロセス決定に使用されるテーブルの例を示す。図１１において示すテーブルには、本体処理手段に接続される付加処理手段として、ＪＰＥＧ圧縮伸長カード，色変換アクセラレータカード，レンダリング処理カード，ＣＰＵ内蔵カードの４種類を想定している。これら４種類のいずれかまたは組み合わせが付加された場合の構成、および描画処理プロセス指示情報の有無に基づいて、描画処理プロセスが一義的に決定される。決定される描画処理プロセスはテーブルの右端の描画処理プロセスＮｏ．によって規定されたプロセスである。例えば、図１１に示す描画処理プロセス決定テーブル中の最下欄の場合、ＪＰＥＧ圧縮伸長カード，ＣＰＵ内蔵カードが付加され、描画処理プロセス指示情報が有りの場合は、描画処理プロセスＮｏ．９によって規定された処理が実行されることになる。
【００４４】
なお、図１１の描画処理プロセス決定テーブルは、設置される付加演算処理手段３の組合せは２個までの組合せ、すなわち付加演算処理手段３を設置できるＣａｒｄＢｕｓスロットが２個の場合を示してあるが、本体演算処理手段２にさらに多くのスロットを設けることは可能であり、その場合は、その数に対応した付加演算処理手段の組み合わせに対応して描画処理プロセスを設定してテーブル化すればよい。
【００４５】
次に描画処理プログラムロード手段６について説明する。描画処理プロセス決定手段６は、図１２に示すように、描画処理プログラムロードサービス９１と、描画処理プログラムデータベース９２とから構成される。描画処理プログラムロードサービス９１は、描画処理プロセス決定サービス８１より入力される描画処理プロセスＮｏ．に基づき、描画処理プログラムデータベース９２を検索し、当該の描画処理プログラムモジュールを本体演算処理手段２３のＤＲＡＭ１５およびＣＰＵ内蔵型の付加演算処理手段３のＤＲＡＭ１０５にロードするものである。また、描画処理プログラムモジュールは、前記検出手段５および描画処理プロセス決定手段６を介して、付加演算処理手段３の着脱時に瞬時に対応してロードされるよう構成されている。
【００４６】
次に本発明の付加演算処理手段３を用いた場合の描画処理について説明する。先ず、図５および図１４の形態の付加演算処理手段３、すなわち中間データレンダリング処理手段５４を付加演算処理手段として設置した場合の描画処理について説明する。この構成では、本体演算処理手段２で中間データを生成した後、付加演算処理手段の中間データレンダリング処理手段５４で中間データをラスターデータ化する。
【００４７】
図１５に本体演算処理手段２に実装される中間データ生成処理のブロック図を示す。図１５において中間データ生成処理は、字句解釈部１２１と、トークン解釈部１２２と、命令実行部１２３と、描画状態記憶部１２４と、画像処理部１２５と、ベクターデータ生成部１２６と、フォント管理部１２７と、マトリックス変換部１２８と、ショートベクター生成部１２９と、台形データ生成部１３０と、バンド分解部１３１と、中間データ管理部１３２とから構成される。尚、本実施例における中間データは台形データである。
【００４８】
字句解釈部１２１は、印刷情報記憶部９より入力された印刷情報ファイルを定められた記述言語のシンタックスに従ってトークンとして切り出し、そのトークン解釈部１２２をに出力するものである。
【００４９】
トークン解釈部１２２は、字句解析部３０１から入力されたトークンを解釈し、内部命令やその引数に変換し、それら内部命令と引数の組を命令実行部１２３へ転送する。例えば内部命令には、文字／図形／画像の描画を実行する描画命令や、色や線属性など描画必要な情報を設定する描画状態命令などがある。
【００５０】
命令実行部１２３は、トークン解釈部１２２から送られてきた内部命令を実行する。ここで実行する命令は、主に描画命令と描画状態命令がある。例えば描画命令には、以下の表１に示すように３種類の描画命令があり、それぞれの描画に必要な情報が示されている。このうちアンダーラインがある情報については、描画命令中の引数として与えられ、その他の情報は予め初期設定や先行する命令などにより描画状態記憶部１２４に記憶されている。描画命令の実行は、画像描画以外は受け取った描画命令をそのままベクターデータ生成部１２６へ転送する。画像描画の場合は、受け取った描画命令を画像処理部１０５へ転送するとともに、画像ヘッダの縦と横の大きさをベクターデータ生成部１２６へ転送する。また描画状態命令については、命令を描画状態記憶部１２４へ転送する。
【００５１】
【表１】
0003755265.tif 000002
【００５２】
画像処理部１２５は、命令実行部１２３から入力された命令の引数である入力画像ヘッダと入力画像データを、描画状態記憶部１２４から獲得した変換マトリックスを使ってアフィン変換したり、入力画像の色空間を出力装置の色空間に変換する色空間変換などの処理を行い、出力画像ヘッダと出力画像データを生成してバンド分解部１３１に転送する。また、画像処理部１２５では、展開処理手段８で処理可能なデータ量にするための、間引き処理を行う。さらに、画像処理部１２５では、通常の処理フローでは圧縮処理は施されないが、転送制御手段１０の中間データ再生性指示に基づき、対象画像データに対して圧縮処理を施すよう構成されている。本実施例では、圧縮処理として、例えばＪＰＥＧ圧縮が用いられる。
【００５３】
描画状態記憶部１２４は、命令実行部１２３から受け取った命令に含まれる引数の値で、例えば表１に示したアンダーラインの無い情報についての値の設定を行い、それらを記憶する。また、画像処理部１２５、ベクターデータ生成部１２６、マトリックス変換部１２８、ショートベクター生成部１２９、中間データ管理部１３２などの要求に従って、それらの値を転送する。
【００５４】
ベクターデータ生成部１２６では、命令実行部１２３から送られてきた命令と引数、描画状態記憶部１２４の値を使用して、塗りつぶし描画を除く、新たに描画するためのベクターデータを生成する。まず文字描画の場合について説明する。引数で与えられた文字コードと描画状態記憶部から獲得したフォントＩＤをフォント管理部へ転送して、文字のアウトラインデータを獲得する。獲得したアウトラインデータには、描画原点（カレントポイント）の情報が含まれていないので、描画状態記憶部１２４から獲得したカレントポイントのオフセットをアウトラインデータに加えることによって、目的のベクターデータを生成する。画像描画の場合には、引数で与えられた画像ヘッダの縦と横のサイズからそれに対する矩形ベクターを生成し、描画状態記憶部１２４から獲得したカレントポイントのオフセットを加えることで目的のベクターデータを生成する。ストローク描画の場合は、引数で与えられたベクターと描画状態記憶部１２４から獲得した各種の線属性から、太さを持った線のアウトラインベクターを生成する。このように生成したベクター（塗りつぶし描画の場合は命令実行部１０３から直接受け取ったベクター）を、マトリックス変換部１２８へ転送する。
【００５５】
フォント管理部１２７は、各種フォントに対するアウトラインベクターデータを記憶するとともに、与えられた文字コードとフォントＩＤによって、その文字に対するアウトラインベクターデータを提供する。
【００５６】
マトリックス変換部１２８は、ベクターデータ生成部１２６から受け取ったベクターデータを、描画状態記憶部１２４から獲得した変換マトリックスによってアフィン変換する。このアフィン変換の主な目的は、アプリケーションの解像度（座標系）からプリンタの解像度（座標系）に変換するためのものである。変換マトリックスには下式（１）に示すような３ｘ３のものが使われ、入力ベクターデータ（Ｘｎ，Ｙｎ）は、出力ベクターデータ（Ｘｎ’，Ｙｎ’）に変換されてショートベクター生成部１２９へ送られる。
【００５７】
【数１】
0003755265.tif 000003
【００５８】
ショートベクター生成部１２９は、入力されたベクターの中に曲線のベクターがある場合にその曲線のベクターを、誤差が描画状態記憶部１２４から獲得したフラットネス（ｆｌａｔｎｅｓｓ）値より小さくなるように、複数のショートベクターで近似する処理を行う。例えば曲線のベクターには、４つの制御点で表現されるベジエ曲線が使われる。この場合ショートベクター化の処理は、ベジエ曲線を再帰的に分割し、高さがｆｌａｔｎｅｓｓで与えられた値より小さくなった時点で分割を終了する。そして分割された各ベジエ曲線の始点と終点を順番に結ぶことにより、ショートベクター化が完了する。生成されたショートベクターは、台形データ生成部１３０へ送られる。
【００５９】
台形データ生成部１３０は、入力されたベクターデータから、描画領域を示す台形データ（三角形の場合もあるがデータ構造は台形と同じである）の集合を生成する。例えば図１６（ａ）に示す太線で示された多角形のベクターは、４つの台形により描画領域が示される。尚、この台形は出力装置のスキャンラインに平行な２辺を持った台形であり、１つの台形は図１６（ｂ）に示すように（ｓｘ，ｓｙ，ｘ０，ｘ１，ｘ２，ｈ）の６つのデータで表現される。生成された台形は、バンド分解部１３１へ送られる。
【００６０】
バンド分解部１３１は、入力された台形データのうち複数のバンドにまたがる台形データをバンド毎の台形データに分割し、バンド毎に台形データを中間データ管理部１３２へ転送する。例えば図１７では、４つの台形データがバンド分解部によって６つの台形データに分割される。
【００６１】
中間データ管理部１３２は、バンド毎に入力された台形データに付加情報をつけて中間データを生成し、バンド毎に中間データを本体演算処理手段２のＤＲＡＭ１５に書き込む処理を行う。付加情報は、中間データを管理するための管理情報と、台形データを何色で塗りつぶすかを示す色情報である。文字／図形の描画命令に対する管理情報は、オブジェクトＩＤ，オブジェクトの種類，台形数のデータであり、例えばＣＭＹＢｋの値が色情報である。
【００６２】
これらのデータは、図１８（ａ）に示すように、描画命令によって生成されたバンド毎の台形データの前に付加される。画像の描画命令に対する管理情報は文字／図形と同じであるが、色情報は画像ヘッダと画像データとなる。また図１８（ｂ）に示すように、画像ヘッダと画像データは、描画命令によって生成されたバンド毎の台形データそれぞれに対して１つずつ付加される。また、画像データは圧縮された形で格納される場合もあり、画像ヘッダに圧縮処理の有無が含まれている。以上の各中間データは記録色毎、バンド毎にまとめられ、各バンドの最終データにＥＯＤ（Ｅｎｄ  Ｏｆ  Ｄａｔａ）を表すデータを付加して、バンドデータの終了を明確にしている。
【００６３】
次に、付加演算処理手段である中間データレンダリング処理手段５４（図３参照）において実行される中間データをラスターデータに展開するレンダリング処理について説明する。レンダリング処理ＬＳＩ１１３（図１４参照）は、本体演算処理装置のＤＲＡＭ１５から入力した中間データをなす台形データ（ｓｘ，ｓｙ，ｘ０，ｘ１，ｘ２，ｈ）を、図２０に示されるような４点からなるデータ形式に変換して台形領域を描画するものである。図１９に、レンダリング処理ＬＳＩ１１３のブロック図を示す。中間データ入力部１４１は、ＤＲＡＭ１１５に割当てられた入力バッファから１つ１つの台形をなすデータを読み込んで、座標計算部Ａ１４２および座標計算部Ｂ１４３に台形データを出力する。座標計算部Ａ１４２は、台形の左側のエッジ（図２０のエッジＰ０Ｐ１）の座標計算を担当し、エッジ上の座標値をＰ０からＰ１に向かって順に出力する。座標計算部Ｂ１４３は、台形の右側のエッジ（図２０のエッジＰ２Ｐ３）の座標計算を担当し、エッジ上の座標値をＰ２からＰ３に向かって順に出力する。エッジ描画部４５７は、座標計算部Ａ１４２及び座標計算部Ｂ１４３から入力される座標値により、台形のｘ軸に平行な直線を描画する。
【００６４】
図２１に、座標計算部のブロック図を示す。入力された台形データ（ｓｘ，ｓｙ，ｘ０，ｘ１，ｘ２，ｈ）はＤＤＡパラメータ計算部１５１で４点の台形データ（Ｐ０，Ｐ１，Ｐ２，Ｐ３）に変換されて、傾きや残差の初期値などのＤＤＡのパラメータを計算し、ＤＤＡ処理部１５２に出力する。ＤＤＡ処理部１５２は、入力されたパラメータに基づいてＤＤＡ処理を行い、最後に求めた点に対する移動方向と移動量を出力する。座標更新部１５３は、入力された移動方向と移動量から現在保持している座標値を更新して出力する。座標の初期値は、図示されていないＣＰＵなどであらかじめ設定されているものとする。
【００６５】
図２２は、エッジ描画部１４４のブロック図である。エッジ描画部１４４は、座標値Ａ／Ｂ及び画像データを入力して台形の内部領域を塗りつぶす。アドレス計算部１６１は、座標値Ａ／Ｂを入力して、描画するエッジ成分のアドレスを計算する。マスク演算部１６２は、座標値Ａ／Ｂの値を入力して、描画するワード中の有効なビットを表すマスクを出力する。データ演算部１６３は、入力されたデータが文字／図形の場合には台形領域によって固定的な色を表す色データを入力し、この値を用いてスクリーン処理をして出力する。入力されたデータが画像データの場合には、画像データ入力に対してスクリーン処理をして出力する。さらに、データ演算部１６３には、ＪＰＥＧ圧縮された画像データを伸長するためのＪＰＥＧ伸長回路が設けられており、圧縮された画像データに対してはリアルタイムに伸長処理した後、スクリーン処理が施される。
【００６６】
ＲｍｏｄＷ処理部１６４は、入力されたアドレス、マスク、データを用いて以下の処理をすることにより描画を行う。まず、アドレスにより、出力バッファをリードする。これにより読み込まれたデータをＳｏｕｒｃｅ、マスクデータをＭａｓｋ、描画データをＤａｔａとすると、（Ｍａｓｋ＊Ｄａｔａ＋Ｍａｓｋ＃＊Ｓｏｕｒｃｅ）の値を演算して同一アドレスに書き戻す。ただし、＊は論理積、＋は論理和、＃は論理否定をそれぞれ表す。この処理は、描画するエッジが含まれるワード毎に繰り返し行われる。
【００６７】
以上、説明したように、付加演算処理手段として図５および図１４に示すように中間データレンダリング処理手段を本体に対して設置した場合は、描画処理におけるレンダリング処理を図１４に示す構成で実行可能となる。このような処理プロセスは、先に説明した図１１の描画処理プロセスデータベースにおける描画処理プロセスの決定テーブルに基づいて決定され、本体演算処理手段と付加演算処理手段間のデータの転送もテーブルによって決定されたプロセスに従って実行される。
【００６８】
次に、上記した描画処理フローを複雑な文字・図形処理が含まれる印刷情報に適用した場合の効果について説明する。例えば、適用するプリンタ装置２２の出力解像度を１２００ｄｐｉのような高解像度とすると、本体演算処理手段２のソフトウェア処理のみの場合、印刷情報を台形データにするまでの処理時間は、印刷情報をラスターデータにするまでの処理時間は平均的に５０％以下となる。一方、レンダリング処理ＬＳＩ１１３での処理時間はソフトウェア処理時間に比較して１／５〜１／１０程度になる。従って、図５および図１４に示すように付加演算処理手段として中間データレンダリング処理手段を設置し、本体のＣＰＵによるソフトウェア処理に依存せず付加された中間データレンダリング処理手段によるレンダリング処理を実行することによって、印刷情報をラスターデータにするまでの処理時間は本体によるＣＰＵ処理のみの場合に比較して平均的に５０％以下に削減できる。
【００６９】
次に、図４および図７に示す付加演算処理手段３を適用する場合の描画処理について説明する。以下、付加演算処理手段３のアクセラレータ処理として３次元補間方式の色変換処理を例に説明する。
【００７０】
図４および図７に示すように付加演算処理手段として画像処理アクセラレータ５２を適用した場合の描画処理フローは、全体としては基本的に上述の図５および図１４に示す中間データレンダリング処理手段５４を付加演算処理手段として設置した場合の描画処理フローと同様なものとなるが、設置された付加演算処理手段に基づいて描画処理プロセスの決定テーブルによって決定されるプロセスに従って本体演算処理手段および付加演算処理手段によって個々に実行されるプロセスが異なってくる。
【００７１】
また、付加演算処理手段を設置できるスロットが複数あれば、ＪＰＥＧ圧縮伸長カード，色変換アクセラレータカード，レンダリング処理カード，ＣＰＵ内蔵カード等、複数の付加演算処理手段をスロット数に応じて設置することも可能である。
【００７２】
図２３に、付加演算処理手段を設置せず、本体演算処理手段のみにおいて描画処理を実行する構成のブロック図を示す。図２３において、ショートベクタ生成部１２９以降において、中間データを生成しない点が図１５の構成と異なり、またエッジデータ生成部１３３、エッジデータでのバンド分解部１３４、エッジ描画部１３５、画像処理部１３６が変更および追加されている点が図１５の構成と異なっている。エッジデータ生成部１３３は、ショートベクターから直接座標点を計算するもので、図１９に示す座標点計算部Ａ１４２および座標点計算部Ｂ１４３のハードウェア処理をソフトウェア処理におきかえたものに相当している。同様に、エッジ描画部１３５は、図１９に示すエッジ描画部１４４のハードウェア処理をソフトウェア処理におきかえたものに相当している。また、バンド分解部１３４は台形データでのバンド分解ではなく、ライン単位のバンド分解をするもので、処理は図１５のバンド分解部１３１に比較して単純処理である。また、画像処理部１３６に関しては、図１５の画像処理部１２５においては中間データとして付加演算処理手段に転送するために出力画像ヘッダを付加していたが、出力画像ヘッダの付加処理がなくなっている点が異なっている。従って、画像処理部１２５および画像処理部１３６において適用される色変換処理ハードウェアの基本構成は、図４および図７に示す中間データレンダリング処理手段を付加演算処理手段として付加した場合あるいは付加しない場合のいずれにおいても共通である。
【００７３】
図２４に色変換処理のためのアクセラレータ演算処理部６８（図７参照）のブロック図を示す。色変換処理のためのアクセラレータ演算処理部６８は、３次元補間演算処理部１７１と３次元ルックアップテーブル１７２とから構成されている。３次元ルックアップテーブル１７２は、色変換処理のための格子点データが蓄積されており、３次元補間演算処理部は格子点データに基づき、注目画素の色変換演算を実行する。本実施例では、３次元補間演算は、例えば図２５に示す３角柱補間演算が用いられる。３角柱補間演算では、図２５に示す８つの格子点データに対して注目画素が存在する３角柱領域を形成する６つの格子点データの補間演算により注目画素の色信号が決定される。図２５に示す３角柱補間演算は、下式で処理される。
【００７４】
【数２】
Ｄ（ｏ）＝Ｄ（ｍ）＋△Ｇ×（Ｄ（ｎ）−Ｄ（ｍ））．．．（１）
ただし
0003755265.tif 000004
【００７５】
次に、上記した描画処理を画像処理が含まれる印刷情報に適用した場合の効果について説明する。例えば、画像データを読み込んでプリンタ装置２２の特性にあわせて色変換処理のみをする最も基本的な画像処理において、本体演算処理手段２におけるソフトウェア処理のみの場合と、色変換処理を付加演算処理手段として本体に付加したハードウェアアクセラレータによって実行させた場合を比較すると、ハードウェアアクセラレータによって実行させた場合の処理時間は、ソフトウェア処理のみの処理時間のおおよそ３０％以下となる。
【００７６】
次に、図６および図１３に示すように付加演算処理手段として副描画処理手段５７を適用する場合の描画処理について説明する。付加演算処理手段として副描画処理手段５７を適用した場合の描画フローは、基本的に図２３によって説明されるの描画処理フローと同一であるが、本体演算処理手段２と付加演算処理手段３にページ単位、又はオブジェクト単位に印刷情報１に含まれる印刷データを振り分けるための印刷情報分配処理部５５が加わる点が異なっている。
【００７７】
付加演算処理手段を設置できるスロットが複数あれば、例えば図５および図１４に示す中間データレンダリング処理手段５４と図４および図７に示す画像処理アクセラレータ５２を付加演算処理手段３として付加して併用することも可能であるが、組合せによって本体演算処理手段２および付加演算処理手段３にロードされる描画処理プログラムは変更される。
【００７８】
図２６に図６および図１３に示す付加演算処理手段として副描画処理手段５７を適用する場合の基本的な描画処理のブロック図を示す。図２６では、図２３に対してページ分配処理部１３７が付加されていること、および命令実行部１２３以下が、本体演算処理手段２と付加演算処理手段３と並列に設けられている点が異なっている。尚、図２６はページ単位に印刷データを振り分ける場合の構成であるが、オブジェクト単位に印刷データを振り分ける場合も同様の構成となる。また、描画状態記憶部１２４とフォント管理部１２７は、本体演算処理手段２と付加演算処理手段３とで共通に利用するよう構成されている。これは、ポストスクリプト（ＰｏｓｔＳｃｒｉｐｔ）のように構造化されていない記述言語で記述された印刷データに対してはリソース情報を共有することが必要であること、およびデータサイズの大きいフォント情報を複数箇所で保持することを避けるためである。ページ分配処理部１３７は、本体演算処理手段２と付加演算処理手段３の処理性能、例えばＣＰＵの処理速度に応じて、処理するページを振り分けるよう構成されている。また、上記構成の効果に対しては、単純に付加演算処理手段３の処理性能にほぼ比例する。
【００７９】
【発明の効果】
以上、説明したように本発明の印刷処理装置は印刷情報を印字データに展開するための描画処理を実行する処理機能の少なくとも一部を実行可能とした付加処理手段を本体処理手段に着脱可能に構成したので、実行すべき描画処理に応じた描画処理システム構成を容易に構築することが可能となり、例えば時間の要する処理機能を専用の付加ハードウェアで実行させることにより処理の高速化が達成される。
【００８０】
また本発明の印刷処理装置は、処理すべき印刷情報に応じて付加処理手段を選択し、選択され本体処理手段に接続された付加処理手段に基づいて実行すべき描画処理フローを最適なものとし、また実行すべき描画処理プロセスをユーザが指定可能としたので、任意の描画処理ステップを付加処理手段に実行させることが可能となり、限定された描画処理リソースを効率的に利用可能な印刷処理装置が提供できる。
【００８１】
また、付加する描画処理リソースの設置を本体側で自動的に認識し、描画処理構成を再構成し、最適なプログラムの選定を行う機構が設けられており、ユーザの手を煩わすことなく、簡易に設置と利用ができる印刷処理装置を提供することが可能となる。さらに、付加する描画処理リソースの交換により、性能の異なる様々な印字装置に対して共通の描画処理装置での対応も可能となる。
【図面の簡単な説明】
【図１】  本発明に係る印刷処理装置の構成を示すブロック図である。
【図２】  本発明の印刷処理装置が実装されるハードウェアの構成例を示すブロック図である。
【図３】  本発明の印刷処理装置の実施例に係わる電子写真方式を用いたカラーページプリンタの構成例である。
【図４】  本発明に係る印刷処理装置の付加処理手段としての付加ハードウェアの一実施形態を示す図（その１）である。
【図５】  本発明に係る印刷処理装置の付加処理手段としての付加ハードウェアの一実施形態を示す図（その２）である。
【図６】  本発明に係る印刷処理装置の付加処理手段としての付加ハードウェアの一実施形態を示す図（その３）である。
【図７】  図４の構成に対応する付加処理手段のハードウェア構成例と本体処理手段とのインターフェース部のハードウェアの構成例を示す図である。
【図８】  本発明に係る印刷処理装置の検出手段の構成を示すブロック図である。
【図９】  本発明の印刷処理装置において付加演算処理手段を認識する方法および付加演算処理手段に対して必要なハードウェアリソースを割当てるための処理フローを説明する図である。
【図１０】  本発明の印刷処理装置における描画処理プロセス決定手段の構成を示すブロック図である。
【図１１】  本発明の印刷処理装置の描画処理プロセスデータベースにおける描画処理プロセスの決定テーブルの一例を示す図である。
【図１２】  本発明の印刷処理装置の描画処理プログラムロード手段の構成を示すブロック図である。
【図１３】  図６の構成に対応する付加処理手段のハードウェア構成例と本体処理手段とのインターフェース部のハードウェアの構成例を示す図である。
【図１４】  図５の構成に対応する付加処理手段のハードウェア構成例と本体処理手段とのインターフェース部のハードウェアの構成例を示す図である。
【図１５】  本発明の印刷処理装置の本体処理手段に実装される中間データ生成処理のブロック図である。
【図１６】  印刷処理装置において処理される台形データを説明する図である。
【図１７】  印刷処理装置において処理される台形データのバンド境界での分割を説明する図である。
【図１８】  印刷処理装置において処理される台形データのデータ表現の一例を説明する図である。
【図１９】  本発明の印刷処理装置におけるレンダリング処理ＬＳＩの構成を示すブロック図である。
【図２０】  本発明の印刷処理装置におけるレンダリング処理ＬＳＩでの台形データ描画を説明する図である。
【図２１】  印刷処理装置における座標計算部の構成を示すブロック図である。
【図２２】  印刷処理装置におけるエッジ描画部の構成を示すブロック図である。
【図２３】  本発明の印刷処理装置の本体処理手段におけるソフトウェア処理の描画処理構成示すブロック図である。
【図２４】  色変換処理のためのアクセラレータ演算処理部の構成示すブロック図である。
【図２５】  描画処理における三角柱補間演算を説明する図である。
【図２６】  図６の構成の付加処理手段を設けた印刷処理装置に対応する描画処理の構成示すブロック図である。
【符号の説明】
１  印刷情報
２  本体演算処理手段
３  付加演算処理手段
４  印刷装置
５  検出手段
６  描画処理プロセス決定手段
７  描画処理プログラムロード手段
１１  ネットワーク
１２  ネットワークインタフェース
１３  ＣＰＵ
１４  メモリコントローラ
１５  ＤＲＡＭ
１６  ＣＰＵバス
１７  システムバスコントローラ
１８  磁気ディスク
１９  付加ハードウェアインタフェース
２０  付加ハードウェア
２１  プリンタインタフェース
２２  プリンタ装置
５１  描画処理装置
５２  画像処理アクセラレータ
５３  中間データ生成処理手段
５４  中間データレンダリング処理手段
５５  印刷データ分配処理手段
５６  主描画処理手段
５７  副描画処理手段
６２  ＰＣＩカードバス・コントローラ
６３  カードバス・スロット
６４  カードバス・コネクタ
６５，１０１，１１１  カード・コントローラ
６６，１０２，１１２  属性情報メモリ
６７  入力バッファ
６８  アクセラレータ演算処理部
６９  出力バッファＦＩＦＯ
７１  ソケットサービス
７２  カードサービス
７３  カードサービス・クライアント・ドライバ
８１  描画処理決定サービス
８２  描画処理プロセスデータベース
８１  描画処理プログラムロードサービス
８２  描画処理プログラムデータベース
１０３  ＣＰＵ
１０４，１１４  メモリ・コントローラ
１０５，１１５  ＤＲＡＭ
１１３  レンダリング処理ＬＳＩ
【図１】
0003755265.tif 000005
【図２】
0003755265.tif 000006
【図３】
0003755265.tif 000007
【図４】
0003755265.tif 000008
【図５】
0003755265.tif 000009
【図６】
0003755265.tif 000010
【図７】
0003755265.tif 000011
【図８】
0003755265.tif 000012
【図９】
0003755265.tif 000013
【図１０】
0003755265.tif 000014
【図１１】
0003755265.tif 000015
【図１２】
0003755265.tif 000016
【図１３】
0003755265.tif 000017
【図１４】
0003755265.tif 000018
【図１５】
0003755265.tif 000019
【図１６】
0003755265.tif 000020
【図１７】
0003755265.tif 000021
【図１８】
0003755265.tif 000022
【図１９】
0003755265.tif 000023
【図２０】
0003755265.tif 000024
【図２１】
0003755265.tif 000025
【図２２】
0003755265.tif 000026
【図２３】
0003755265.tif 000027
【図２４】
0003755265.tif 000028
【図２５】
0003755265.tif 000029
【図２６】
0003755265.tif 000030