(57)【要約】【課題】  高速なデータ転送バスを使用した画像転送システムにおいて、ユーザが画質優先かあるいは転送効率優先かを選択する手段により画像の転送経路を変える制御を実現することで画質と転送効率のトレードオフ関係をユーザの判断にゆだねることができるようになる。【解決手段】  高速な画像データ転送バスを制御する手段とリアルタイムな画像データの受け渡しを必要とする画像入出力手段を有し、ユーザが操作部上でキー操作を行った時を起点に前記画像データ転送バスのバス占有率を算出する手段とあらかじめ画質優先かあるいは転送効率優先かをユーザが選択をするモードに応じて、バス占有率の閾値を設定する手段を有し、前記の算出されたバス占有率と閾値を比較した結果に応じて、画像転送経路を解像度変換（間引き）を行う系等に切り換える画像転送システム。【選択図】        図１
2005192116.tif 000002
【特許請求の範囲】
【請求項１】
高速な画像データ転送バスを制御する制御手段とリアルタイムな画像データの受け渡しを必要とする画像入出力手段を有し、前記画像データ転送バスのバス占有率を算出するバス占有率算出手段とあらかじめバス占有率の閾値を設定する閾値設定手段を有し、前記バス占有率算出手段により算出されたバス占有率と前記閾値設定手段により設定された閾値を比較する比較手段による比較結果に応じて、画像の転送経路を変えることが可能にした画像転送システム。
【請求項２】
請求項１において画像データ転送バスのバス占有率の算出はユーザが操作部上で何らかのキー操作を行った時からの累積時間で行うことを特徴とした画像転送システム。
【請求項３】
請求項１において画像の転送経路を変えることにより画質の程度が変化することを特徴とした画像転送システム。
【請求項４】
請求項３においてユーザが操作部上で画質優先かあるいは転送効率優先か選択をする選択手段を有し、前記選択手段によって選択されたモードに応じて、請求項１記載のバス占有率の閾値を生成することを特徴とした画像転送システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は共有バスを用いて画像データ転送を行う、ネットワーク機器、デジタル複写機等に関するものである。
【背景技術】
【０００２】
従来から高速なデータ転送バス（例えばＰＣＩバスやＩＥＥＥ１３９４等）を使用した画像データ転送を行う処理系はすでに考案されていた。また、従来のデジタル複写機の様にリアルタイムな画像転送を必要とする画像処理系の画像転送用として上記高速バスを使用し、リアルタイムな画像転送とネットワーク転送等の処理を同一バス上で共存させる手段も実現されている。
【０００３】
このようなバス上ではリアルタイムな画像転送に関するアクセスの優先度を高くし、他のデバイスのアクセスに関する優先度を低くしたアービトレーションを行うことにより、リアルタイム系の確保を行う手段がすでに用いられている（特許文献１参照）。
【特許文献１】特開平１１−１６５４５４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、上記のような高速バスは画像のリアルタイム転送以外にもネットワーク等多様な接続デバイスとのアクセスが行われるため、画像のデータ量によるバスの占有率の変化は他のデバイスのアクセスに影響を与える。従って、このバスの占有率の変化よって優先順位の高いリアルタイムなタスクに関する画像の画質と優先順位の低いタスクが待たされる時間のうち、いずれかを向上させると他方が犠牲になる、互いにトレードオフの関係になることが多い。
【０００５】
本発明は、以上の点に着目して成されたもので、高速なデータ転送バスを使用した画像転送システムにおいて、ユーザが画質優先かあるいは転送効率優先かを選択する手段により画像の転送経路を変える制御を実現することで画質と転送効率のトレードオフ関係をユーザの判断にゆだねることができるようになる画像転送システムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
そこで本発明では高速な画像データ転送バスを制御する制御手段とリアルタイムな画像データの受け渡しを必要とする画像入出力手段を有し、前記画像データ転送バスのバス占有率を算出するバス占有率算出手段とあらかじめバス占有率の閾値を設定する閾値設定手段を有し、前記バス占有率算出手段により算出されたバス占有率と前記閾値設定手段により設定された閾値を比較する比較手段による比較結果に応じて、画像の転送経路を変える制御を画質優先かあるいは転送効率優先か選択をする選択手段で実現する画像転送システムを提供することで画質と転送効率のトレードオフ関係をユーザの判断にゆだねることができるようになる。
【０００７】
なお、さらに詳細に説明すれば、本発明は下記の構成によって前記課題を解決できた。
【０００８】
（１）高速な画像データ転送バスを制御する制御手段とリアルタイムな画像データの受け渡しを必要とする画像入出力手段を有し、前記画像データ転送バスのバス占有率を算出するバス占有率算出手段とあらかじめバス占有率の閾値を設定する閾値設定手段を有し、前記バス占有率算出手段により算出されたバス占有率と前記閾値設定手段により設定された閾値を比較する比較手段による比較結果に応じて、画像の転送経路を変えることが可能にした画像転送システム。
【０００９】
（２）前記（１）において画像データ転送バスのバス占有率の算出はユーザが操作部上で何らかのキー操作を行った時からの累積時間で行うことを特徴とした画像転送システム。
【００１０】
（３）前記（１）において画像の転送経路を変えることにより画質の程度が変化することを特徴とした画像転送システム。
【００１１】
（４）前記（３）においてユーザが操作部上で画質優先かあるいは転送効率優先か選択をする選択手段を有し、前記選択手段によって選択されたモードに応じて、前記（１）記載のバス占有率の閾値を生成することを特徴とした画像転送システム。
【発明の効果】
【００１２】
本発明によれば、画像の転送経路を変える制御画質優先か、あるいは転送効率優先かを選択する構成を提供することで、画質と転送効率の設定をユーザが任意に設定可能となり、利便性を向上させることができる。
【発明を実施するための最良の形態】
【００１３】
以下本発明を実施するための最良の形態を、実施例により詳しく説明する。
【実施例】
【００１４】
以下で本発明の装置及びその動作について詳細に説明する。
【００１５】
［ハードウェア］
全体構成
全体構成図を図３に示す。Ｃｏｎｔｒｏｌｌｅｒ  Ｕｎｉｔ  ２０００は画像入力デバイスであるＳｃａｎｎｅｒ  ２０７０や画像出力デバイスであるＰｒｉｎｔｅｒ  ２０９５と接続し、一方ではＬＡＮ２０１１や公衆回線（ＷＡＮ）２０５１接続することで、画像情報やデバイス情報の入出力を行う為のコントローラである。ＣＰＵ２００１はシステム全体を制御するコントローラである。ＲＡＭ２００２はＣＰＵ２００１が動作するためのシステムワークメモリであり、画像データを一時記憶するための画像メモリでもある。ＲＯＭ２００３はブートＲＯＭであり、システムのブートプログラムが格納されている。ＨＤＤ２００４はハードディスクドライブで、システムソフトウェア、画像データを格納する。操作部Ｉ／Ｆ２００６は操作部（ＵＩ）２０１２とインターフェイス部で、操作部２０１２に表示する画像データを操作部２０１２に対して出力する。また、操作部２０１２から本システム使用者が入力した情報を、ＣＰＵ２００１に伝える役割をする。Ｎｅｔｗｏｒｋ２０１０はＬＡＮ２０１１に接続し、情報の入出力を行う。Ｍｏｄｅｍ２０５０は公衆回線２０５１に接続し、情報の入出力を行う。
【００１６】
以上のデバイスがシステムバス２００７上に配置される。Ｉｍａｇｅ  ＢｕｓＩ／Ｆ２００５はシステムバス２００７と画像データを高速で転送する画像バス２００８を接続し、データ構造を変換するバスブリッジである。画像バス２００８は、ＰＣＩバスまたはＩＥＥＥ１３９４で構成される。画像バス２００８上には以下のデバイスが配置される。ラスターイメージプロセッサ（ＲＩＰ）２０６０はＰＤＬコードをビットマップイメージに展開する。デバイスＩ／Ｆ部２０２０は、画像入出力デバイスであるスキャナ２０７０やプリンタ２０９５とコントローラ２０００を接続し、画像データの同期系／非同期系の変換を行う。スキャナ画像処理部２０８０は、入力画像データに対し補正、加工、編集を行う。プリンタ画像処理部は、プリント出力画像データに対して、プリンタの補正、解像度変換等を行う。画像回転部２０３０は画像データの回転を行う。画像圧縮部２０４０は、多値画像データはＪＰＥＧ、２値画像画像データはＪＢＩＧ、ＭＭＲ、ＭＨの圧縮伸張処理を行う。
【００１７】
画像入出力部
画像入出力デバイスを図４に示す。画像入力デバイスであるスキャナ部２０７０は、原稿となる紙上の画像を照明し、ＣＣＤラインセンサ（図示せず）を走査することで、ラスターイメージデータ２０７１として電気信号に変換する。原稿用紙は原稿フィーダ２０７２のトレイ２０７３にセットし、装置使用者が操作部２０１２から読み取り起動指示することにより、コントローラＣＰＵ２００１がスキャナ２０７０に指示を与え（２０７１）、フィーダ２０７２は原稿用紙を１枚ずつフィードし原稿画像の読み取り動作を行う。
【００１８】
画像出力デバイスであるプリンタ部２０９５は、ラスターイメージデータ２０９６を用紙上の画像に変換する部分であり、その方式は感光体ドラムや感光体ベルトを用いた電子写真方式、微少ノズルアレイからインクを吐出して用紙上に直接画像を印字するインクジェット方式等があるが、どの方式でも構わない。プリント動作の起動は、コントローラＣＰＵ２００１からの指示２０９６によって開始する。プリンタ部２０９５には、異なる用紙サイズまたは異なる用紙向きを選択できるように複数の給紙段を持ち、それに対応した用紙カセット２１０１、２１０２、２１０３、２１０４がある。また、排紙トレイ２１１１は印字し終わった用紙を受けるものである。
【００１９】
操作部
操作部２０１２の構成を図５に示す。ＬＣＤ表示部２０１３は、ＬＣＤ上にタッチパネルシートが貼られており、システムの操作画面を表示するとともに、表示してあるキーが押されるとその位置情報をコントローラＣＰＵ２００１に伝える。スタートキー２０１４は原稿画像の読み取り動作を開始する時などに用いる。スタートキー２０１４中央部には、緑と赤の２色ＬＥＤ２０１８があり、その色によってスタートキー２０１４が使える状態にあるかどうかを示す。ストップキー２０１５は稼働中の動作を止める働きをする。ＩＤキー２０１６は、使用者のユーザＩＤを入力する時に用いる。リセットキー２０１７は操作部からの設定を初期化する時に用いる。
【００２０】
スキャナ画像処理部
スキャナ画像処理部２０８０の構成を図６に示す。フィルタ処理部２０８２は、空間フィルタでコンボリューション演算を行う。編集部２０８３は、例えば入力画像データからマーカーペンで囲まれた閉領域を認識して、その閉領域内の画像データに対して、影つけ、網掛け、ネガポジ反転等の画像加工処理を行う。変倍処理部２０８４は、読み取り画像の解像度を変える場合にラスターイメージの主走査方向について補間演算を行い拡大、縮小を行う。副走査方向の変倍については、画像読み取りラインセンサ（図示せず）を走査する速度を変えることで行う。テーブル２０８５は、読み取った輝度データである画像データを濃度データに変換するために、行うテーブル変換である。２値化２０８６は、多値のグレースケール画像データを、誤差拡散処理やスクリーン処理によって２値化する。
【００２１】
プリンタ画像処理部
プリンタ画像処理部２０９０の構成を図７に示す。解像度変換部２０９２は、Ｎｅｔｗｏｒｋ２０１１あるいは公衆回線２０５１から来た画像データを、プリンタ２０９５の解像度に変換するための解像度変換を行う。スムージング処理部２０９３は、解像度変換後の画像データのジャギー（斜め線等の白黒境界部に現れる画像のがさつき）を滑らかにする処理を行う。
【００２２】
画像圧縮部
画像圧縮部２０４０の構成を図８に示す。また、以下に画像圧縮処理部の処理手順を示す。
【００２３】
画像バス２００８を介して、ＣＰＵ２００１から画像バスＩ／Ｆコントローラ２０２１に画像圧縮制御のための設定を行う。この設定により画像バスＩ／Ｆコントローラ２０２１は画像圧縮部２０４３に対して画像圧縮に必要な設定（例えばＭＭＲ圧縮・ＪＢＩＧ伸長等の）を行う。必要な設定を行った後に、再度ＣＰＵ２００１から画像バスＩ／Ｆコントローラ２０２１に対して画像データ転送の許可を行う。この許可に従い、画像バスＩ／Ｆコントローラ２０２１はＲＡＭ２００２もしくは画像バス２００８上の各デバイスから画像切換え部２０２６を介して画像データの転送を開始する。受け取った画像データは入力バッファ２０４２に一時格納され、画像圧縮部２０４３の画像データ要求に応じて一定のスピードで画像を転送する。この際、入力バッファは画像バスＩ／Ｆコントローラ２０２１と、画像圧縮部２０４３両者の間で、画像データを転送できるかどうかを判断し、画像バス２００８からの画像データの読み込み及び、画像圧縮部２０４３への画像の書き込みが不可能である場合は、データの転送を行わないような制御を行う（以後このような制御をハンドシェークと呼称する）。画像圧縮部２０４３は受け取った画像データを、一旦ＲＡＭ２０４４に格納する。これは画像圧縮を行う際には行う画像圧縮処理の種類によって、数ライン分のデータを要するためであり、最初の１ライン分の圧縮を行うためには数ライン分の画像データを用意してからでないと画像圧縮が行えないためである。画像圧縮を施された画像データは直ちに出力バッファ２０４５に送られる。出力バッファ２０４５では、画像切換え部２０２６及び画像圧縮部２０４３とのハンドシェークを行い、画像切換え部２０２６を介して画像データを画像バスＩ／Ｆコントローラ２０２１に転送する。画像バスＩ／Ｆコントローラ２０２１では転送された圧縮（もしくは伸長）された画像データをＲＡＭ２００２もしくは画像バス２００８上の各デバイスにデータを転送する。こうした一連の処理は、ＣＰＵ２００１からの処理要求が無くなるまで（必要なページ数の処理が終わったとき）、もしくはこの画像圧縮部から停止要求が出るまで（圧縮及び伸長時のエラー発生時等）繰り返される。
【００２４】
画像回転部
画像回転部２０３０の構成を図１５に示す。画像バスＩ／Ｆコントローラ２０３１は、画像バス２００８と接続し、そのバスシーケンスを制御する働き、画像回転部２０３２にモード等を設定する制御及び、画像回転部２０３２に画像データを転送するためのタイミング制御を行う。以下に画像回転部の処理手順を示す。
【００２５】
画像バス２００８を介して、ＣＰＵ２００１から画像バスＩ／Ｆコントローラ２０３１に画像回転制御のための設定を行う。この設定により画像バスＩ／Ｆコントローラ２０４１は画像回転部２０３２に対して画像回転に必要な設定（たとえば画像サイズや回転方向・角度等）を行う。必要な設定を行った後に、再度ＣＰＵ２００１から画像バスＩ／Ｆコントローラ２０４１に対して画像データ転送の許可を行う。この許可に従い、画像バスＩ／Ｆコントローラ２０３１はＲＡＭ２００２もしくは画像バス２００８上の各デバイスから画像データの転送を開始する。尚、ここでは３２ｂｉｔをそのサイズとし回転を行う画像サイズを３２×３２（ｂｉｔ）とし、又、画像バス２００８上に画像データを転送させる際に３２ｂｉｔを単位とする画像転送を行うものとする（扱う画像は２値を想定する）。
【００２６】
上述のように、３２×３２（ｂｉｔ）の画像を得るためには、上述の単位データ転送を３２回行う必要があり、且つ不連続なアドレスから画像データを転送する必要がある（図１６参照）。不連続アドレッシングにより転送された画像データは、読み出し時に所望の角度に回転されているように、ＲＡＭ２０３３に書き込まれる。例えば、９０度反時計方向回転であれば、最初に転送された３２ｂｉｔの画像データを、図１７のようにＹ方向に書き込んでいく。読み出し時にＸ方向に読み出すことで、画像が回転される。
【００２７】
３２×３２（ｂｉｔ）の画像回転（ＲＡＭ２０３３への書き込み）が完了した後、画像回転部２０３２はＲＡＭ２０３３から上述した読み出し方法で画像データを読み出し、画像バスＩ／Ｆコントローラ２０３１に画像を転送する。
【００２８】
回転処理された画像データを受け取った画像バスＩ／Ｆコントローラ２０３１は、連続アドレッシングを以て、ＲＡＭ２００２もしくは画像バス２００８上の各デバイスにデータを転送する。こうした一連の処理は、ＣＰＵ２００１からの処理要求が無くなるまで（必要なページ数の処理が終わったとき）繰り返される。
【００２９】
デバイスＩ／Ｆ部
デバイスＩ／Ｆ部２０２０の構成を図９に示す。画像バスＩ／Ｆコントローラ２０２１は、画像バス２００８と接続し、そのバスアクセスシーケンスを制御する働きと、デバイスＩ／Ｆ部２０２０内の各デバイスの制御及びタイミングを発生させる。また、画像切換え部２０２６への制御信号を発生させる。スキャンバッファ２０２２は、画像切換え部２０２６から送られてくる画像データを一時保存し、画像バス２００８に同期させて画像データを出力する。シリアルパラレル・パラレルシリアル変換２０２３は、スキャンバッファ２０２２に保存された画像データを順番に並べて、あるいは分解して、画像バス２００８に転送できる画像データのデータ幅に変換する。パラレルシリアル・シリアルパラレル変換２０２４は、画像バス２００８から転送された画像データを分解して、あるいは順番に並べて、プリントバッファ２０２５に保存できる画像データのデータ幅に変換する。プリントバッファ２０２５は、画像バス２００８から送られてくる画像データを一時保存し、画像切換え部２０２６からの転送要求に応じて画像データを出力する。
【００３０】
画像スキャン時の処理手順を以下に示す。スキャナ２０７０から送られてくる画像データをスキャナ２０７０から送られてくるタイミング信号に同期させて、画像切換え部２０２６に送る。画像切換え部２０２６ではスキャナ２０７０から受け取った画像をＣＰＵ２００１からの設定に応じて選択された転送先へ画像を送る。通常はスキャナ２０７０から受け取った画像はスキャナ画像処理部２０８０へ送られ、所定の画像処理を行った後、画像切換え部２０２６を介してスキャンバッファ２０２２に保存される。そして、画像バス２００８がＰＣＩバスの場合には、パッファ内に画像データが３２ビット以上入ったときに、画像データを先入れ先出しで３２ビット分、バッファからシリアルパラレル・パラレルシリアル変換２０２３に送り、３２ビットの画像データに変換し、画像バスＩノＦコントローラ２０２１を通して画像バス２００８上に転送する。また、画像バス２００８がＩＥＥＥ１３９４の場合には、バッファ内の画像データを先入れ先出しで、バッファからシリアルパラレル・パラレルシリアル変換２０２３に送り、シリアル画像データに変換し、画像バスＩ／Ｆコントローラ２０２１を通して画像バス２００８上に転送する。
【００３１】
画像プリント時の処理手順を以下に示す。画像バス２００８がＰＣＩバスの場合には、画像バスから送られてくる３２ビットの画像データを画像バスＩ／Ｆコントローラで受け取り、パラレルシリアル・シリアルパラレル変換２０２４に送り、プリンタ２０９５の入力データビット数の画像データに分解し、プリントバッファ２０２５に保存する。また、画像バス２００８がＩＥＥＥ１３９４の場合には、画像バスからおくられてくるシリアル画像データを画像バスＩ／Ｆコントローラで受け取り、パラレルシリアル・シリアルパラレル変換２０２４に送り、プリンタ２０９５の入力データビット数の画像データに変換し、プリントバッファ２０２５に保存する。画像データはプリントバッファ２０２５から画像切換え部２０２６を介してプリンタ画像処理部２０９０に送られる。そして所定の画像処理を行った後、画像切換え部２０２６を介し、プリンタ２０９５から送られてくるタイミング信号に同期させて、バッファ内の画像データを先入れ先出しで、プリンタ２０９５に送る。
【００３２】
バス占有率の算出
ここでは本発明の中心であるバス占有率の算出について説明する。ここではバス２０２１がＰＣＩバスである例を示す。画像バスＩ／Ｆコントローラ２０２１は図９のようにスキャンバッファ２０２２、プリントバッファ２０２５、シリアル・パラレルの変換部２０２３、２０２４とＰＣＩバス２０２１間の画像転送制御を行うと同時に図１０の様なバス占有率の算出回路を有する。ユーザが操作部２００３上で何らかの操作を行うと本装置のＣＰＵ２００１は画像転送が近々行われると判断して、画像バスＩ／Ｆコントローラ２０２１のレジスタを制御することで、図２４０１の回路上のＲＥＳＥＴ信号（内部信号）をディアサートする。
【００３３】
ＲＥＳＥＴ信号がディアサートされるとバス占有率の算出回路上のトータル時間累積カウント部２４１１で実際に転送が開始されるまでの間、ＣＬＫのカウントを続ける。また、転送時間累積カウント部２４１２ではＦＲＡＭＥ，ＩＲＤＹ，ＴＲＤＹのＯＲゲート信号がアクティブな時間のみＣＬＫのカウントを行い、実際にＰＣＩバス上でのバスサイクルが行われていた時間をカウントする。図１１はＰＣＩバスの波形と、転送時間累積カウント部２４１２でカウントされた時間の関係を示している。また、それぞれのカウント結果は除算部２４１３で除算処理され、バス占有率は画像バスＩ／Ｆコントローラ２０２１上のレジスタにラッチされ、ＣＰＵ２００１により読み取られる。
【００３４】
画像切換え部の制御
ユーザはあらかじめ請求項記載のように画質優先かあるいは転送効率優先かを設定することができる。図１２はその設定キーの例を示す。速度優先はすなわち転送効率優先を示す。ユーザにより図１２の設定キーを操作するとそれに応じた請求項記載のバス占有率の閾値が決定される。画質優先に近い設定を選べば選ぶほど、バス占有率の閾値は大きく設定される。また、速度優先に近い設定を選べば選ぶほど、バス占有率の閾値は小さく設定される。この閾値と上記算出回路で算出されたバス占有率を比較した結果によって画像切換え部２０２６上の画像バス制御等が変化する。
【００３５】
まず、バス占有率が閾値以下の場合にはバスの占有率が小さいと判断されて、図１３に示す様な画像転送経路を通る。スキャナ画像処理部２０８０では画像がフルカラーで処理されＲＧＢ２４ｂｉｔの画像が画像切換え部２０２６を介してデバイスＩ／Ｆ２０２０に転送される。従って画質は良質を保たれたままＰＣＩバスヘ画像が送られ、プリンタ等、転送先のデバイスヘも高画質が画像を提供することになる。しかし、その反面ＰＣＩバス２００８への負荷は大きくなり、膨大なデータ転送が終了するまではネートワーク経由の画像等がＰＣＩバス２００８を通ることを許可されない。
【００３６】
また、バス占有率が閥値以上の場合にはバスの占有率が大きいと判断されて、図１４に示す様な画像転送経路を通る。スキャナ画像処理部２０８０では画像が２値化されたＣＭＹＫ４ｂｉｔの画像が画像切換え部２０２６を介してさらに解像度変換部２０２９で間引き処理が行われ、デバイスＩ／Ｆ２０２０に転送される（スキャナ画像処理部２０８０による２値化処理、あるいは解像度変換部２０２９による間引き処理のいずれかのみを行う方法でももちろんかまわない。）。この場合、画質は劣化するが、その反面ＰＣＩバス２００８への負荷は小さくなり、速やかにデータ転送が終了し、ネートワーク経由の画像等のＰＣＩバス２００８上のアクセスはすぐに許可される様になる。
【００３７】
また、ユーザにより図１２の設定キー上の強制画質優先キーが押された場合は上記バス占有率の結果にかかわらず、図１３に示す様な画像転送経路を通り、スキャナ画像処理部２０８０では画像がフルカラーで処理されＲＧＢ２４ｂｉｔの画像が画像切換え部２０２６を介してデバイスＩ／Ｆ２０２０に転送される。画質は良質を保たれたままＰＣＩバスヘ画像が送られ、プリンタ等、転送先のデバイスヘも高画質が画像を提供することになる。しかし、その反面バスが混みあっていても、ＰＣＩバス２００８へ大きな負荷を与えるため画像転送効率は最も悪くなる。
【００３８】
また、ユーザにより図１２の設定キー上の強制速度優先キーが押された場合は上記バス占有率の結果にかかわらず、図１４に示す様な画像転送経路を通り、スキャナ画像処理部２０８０では画像が２値化されたＣＭＹＫ４ｂｉｔの画像が画像切換え部２０２６を介してさらに解像度変換部２０２９で間引き処理が行われ、デバイスＩ／Ｆ２０２０に転送される。この場合、バスは空いていても、画質は劣化したものが転送される。バスは空いており、データ転送量は小さいため、ＰＣＩバス２００８への負荷は最も小さくなり、速やかにデータ転送が終了する。
【００３９】
いずれのケースも画像データのプリント時はプリントバッファ２０２５から画像切換え部２０２６を介してプリンタ画像処理部２０９０でプリンタ用画像処理が行われて、再び画像切換え部２０２６を介してプリンタ２０９５に出力される。
【００４０】
［ソフトウェア］
システム全体
本発明のネットワークシステム全体の構成図を図１に示す。１００１は本発明の装置で、後述するスキャナとプリンタから構成され、スキャナから読み込んだ画像をローカルエリアネットワーク１０１０（以下ＬＡＮ）に流したり、ＬＡＮから受信した画像をプリンタによりプリントアウトできる。また、スキャナから読んだ画像を図示しないＦＡＸ送信手段により、ＰＳＴＮまたはＩＳＤＮ（１０３０）に送信したり、ＰＳＴＮまたはＩＳＤＮから受信した画像をプリンタによりプリントアウトできる。１００２は、データベースサーバで、本発明の装置１００１により読み込んだ２値画像及び多値画像をデータベースとして管理する。１００３は、データベースサーバ１００２のデータベースクライアントで、データベース１００２に保存されている画像データを閲覧／検索等できる。１００４は、電子メールサーバで、本発明の装置１００１により読み取った画像を電子メールの添付として受け取ることができる。１００５は、電子メールのクライアントで、電子メールサーバ１００４の受け取ったメールを受信し閲覧したり、電子メールを送信したり、可能である。１００６がＨＴＭＬ文書をＬＡＮに提供するＷＷＷサーバで、本発明の装置１００１によりＷＷＷサーバで提供されるＨＴＭＬ文書をプリントアウトできる。１００７は、ルータでＬＡＮ１０１０をインターネット／イントラネット１０１２と連結する。インターネット／イントラネットに、前述したデータベースサーバ（１００２）、ＷＷＷサーバ（１００６）、電子メールサーバ（１００４）、本発明の装置（１００１）と同様の装置が、それぞれ１０２０、１０２１、１０２２、１０２３として連結している。一方、本発明の装置１００１は、ＰＳＴＮまたはＩＳＤＮ（１０３０）を介して、ＦＡＸ装置１０３１と送受信可能になっている。また、ＬＡＮ上にプリンタ１０４０も連結されており、本発明の装置１００１により読み取った画像をプリントアウト可能なように構成されている。
【００４１】
ソフトウエアブロック全体構成
図２は、本発明を実施した複合機のソフトウエアブロック図である。
【００４２】
１５０１はＵＩ即ちユーザインターフェイスを司るものであり、オペレータが本複合機の各種操作・設定を行う際、機器との仲介を行うモジュールである。本モジュールは、オペレータの操作に従い、後述の各種モジュールに入力情報を転送し処理の依頼、或いはデータの設定等を行う。
【００４３】
１５０２はＡｄｄｒｅｓｓ−Ｂｏｏｋ即ちデータの送付先、通信先等を管理するデータベースモジュールである。Ａｄｄｒｅｓｓ−Ｂｏｏｋの内容は、ＵＩ  １５０１からの操作によりデータの追加、削除、取得が行われ、オペレータの操作により後述の各モジュールにデータの送付・通信先情報を与えるものとして使用されるものである。
【００４４】
１５０３はＷｅｂ−Ｓｅｒｖｅｒモジュールであり、図外のＷｅｂクライアントからの要求により、本複合機の管理情報を通知するために使用される。管理情報は、後述のＣｏｎｔｒｏｌｌ−ＡＰＩ  １５１８を介して読み取られ、後述のＨＴＴＰ  １５１２、ＴＣＰ／ＩＰ  １５１６、Ｎｅｔｗｏｒｋ−Ｄｒｉｖｅｒ  １５１７を介してＷｅｂクライアントに通知される。
【００４５】
１５０４はＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ即ち、データの配信を司るモジュールであり、ＵＩ  １５０１によりオペレータに指示されたデータを、同様に指示された通信（出力）先に配布するものである。
【００４６】
また、オペレータにより、本機器のスキャナ機能を使用し配布データの生成が指示された場合は、後述のＣｏｎｔｒｏｌｌ−ＡＰＩ  １５１８を介して機器を動作させ、データの生成を行う。
【００４７】
１５０５はＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ  １５０４内で出力先にプリンタが指定された際に実行されるモジュールである。
【００４８】
１５０６はＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ  １５０４内で通信先にＥ−ｍａｌｌアドレスが指定された際に実行されるモジュールである。
【００４９】
１５０７はＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ  １５０４内で出力先にデータベースが指定された際に実行されるモジュールである。
【００５０】
１５０８はＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ  １５０４内で出力先に本機器と同様の複合機が指定された際に実行されるモジュールである。
【００５１】
１５０９はＲｅｍｏｔｅ−Ｃｏｐｙ−Ｓｃａｎモジュールであり、本複合機のスキャナ機能を使用し、ネットワーク等で接続された他の複合機を出力先とし、本複合機単体で実現しているＣｏｐｙ機能と同等の処理を行うモジュールである。
【００５２】
１５１０はＲｅｍｏｔｅ−Ｃｏｐｙ−Ｐｒｉｎｔモジュールであり、本複合機のプリンタ機能を使用し、ネットワーク等で接続された他の複合機を入力先とし、本複合機単体で実現しているＣｏｐｙ機能と同等の処理を行うモジュールである。
【００５３】
１５１１はＷｅｂ−Ｐｕｌｌ−Ｐｒｉｎｔ、即ちインターネットまたはイントラネット上の各種ホームページの情報を読み出し、印刷するモジュールである。
【００５４】
１５１２は本複合機がＨＴＴＰにより通信する際に使用されるモジュールであり、後述のＴＣＰ／ＩＰ１５１６モジュールにより前述のＷｅｂ−Ｓｅｒｖｅｒ  １５０３、Ｗｅｂ−Ｐｕｌｌ−Ｐｒｉｎｔ  １５１１モジュールに通信を提供するものである。
【００５５】
１５１３はｌｐｒモジュールであり、後述のＴＣＰ／ＩＰ  １５１６モジュールにより前述のＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ  １５０４内のプリンタモジュール１５０５に通信を提供するものである。
【００５６】
１５１４はＳＭＴＰモジュールであり、後述のＴＣＰ／ＩＰ  １５１６モジュールにより前述のＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ  １５０４内のＥ−ｍａｉｌモジュール１５０６に通信を提供するものである。
【００５７】
１５１５はＳＬＭ即ちＳａｌｕｔａｔｉｏｎ−Ｍａｎａｇｅｒモジュールであり、後述のＴＣＰ／ＩＰ１５１６モジュールにより前述のＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ  １５０４内のデータベースモジュール１５１７、ＤＰモジュール１５１８、及びＲｅｍｏｔｅ−Ｃｏｐｙ−Ｓｃａｎ  １５０９モジュール、Ｒｅｍｏｔｅ−Ｃｏｐｙ−Ｐｒｉｎｔ  １５１０モジュールに通信を提供するものである。
【００５８】
１５１６はＴＣＰ／ＩＰ通信モジュールであり、前述の各種モジュールに後述のＮｅｔｗｏｒｋ−Ｄｒｉｖｅｒによりネットワーク通信を提供するものである。
【００５９】
１５１７はネットワークドライバであり、ネットワークに物理的に接続される部分を制御するものである。
１５１８はＣｏｎｔｒｏｌｌ−ＡＰＩであり、Ｕｎｉｖｅｒｓａｌ−Ｓｅｎｄ  １５０４等の上流モジュールに対し、後述のＪｏｂ−Ｍａｎａｇｅｒ  １５１９等の下流モジュールとのインターフェイスを提供するものであり、上流、及び下流のモジュール間の依存関係を軽減しそれぞれの流用性を高めるものである。
【００６０】
１５１９はＪｏｂ−Ｍａｎａｇｅｒであり、前述の各種モジュールよりＣｏｎｔｒｏｌｌ−ＡＰＩ  １５１８を介して指示される処理を解釈し、後述の各モジュールに指示を与えるものである。また、本モジュールは、本複合機内で実行されるハード的な処理を一元管理するものである。
【００６１】
１５２０はＣＯＤＥＣ−Ｍａｎａｇｅｒであり、Ｊｏｂ−Ｍａｎａｇｅｒ  １５１９が指示する処理の中でデータの各種圧縮・伸長を管理・制御するものである。
【００６２】
１５２１はＦＢＥ−Ｅｎｃｏｄｅｒであり、Ｊｏｂ−Ｍａｎａｇｅｒ  １５１９、Ｓｃａｎ−Ｍａｎａｇｅｒ  １５２４により実行されるスキャン処理により読み込まれたデータをＦＢＥフォーマットにより圧縮するものである。
【００６３】
１５２２はＪＰＥＧ−ＣＯＤＥであり、Ｊｏｂ−Ｍａｎａｇｅｒ  １５１９、Ｓｃａｎ−Ｍａｎａｇｅｒ  １５２４により実行されるスキャン処理、及びＰｒｉｎｔ−Ｍａｎａｇｅｒ  １５２６により実行される印刷処理において、読み込まれたデータのＪＰＥＧ圧縮及び印刷データのＪＰＥＧ展開処理を行うものである。
【００６４】
１５２３はＭＭＲ−ＣＯＤＥＣであり、Ｊｏｂ−Ｍａｎａｇｅｒ  １５１９、Ｓｃａｎ−Ｍａｎａｇｅｒ  １５２４により実行されるスキャン処理、及びＰｒｉｎｔ−Ｍａｎａｇｅｒ  １５２６により実行される印刷処理において、読み込まれたデータのＭＭＲ圧縮及び印刷データのＭＭＲ伸長処理を行うものである。
【００６５】
１５２４はＳｃａｎ−Ｍａｎａｇｅｒであり、Ｊｏｂ−Ｍａｎａｇｅｒ  １５１９が指示するスキャン処理を管理・制御するものである。
【００６６】
１５２５はＳＣＳＩドライバであり、Ｓｃａｎ−Ｍａｎａｇｅｒ  １５２４と本複合機が内部的に接続しているスキャナ部との通信を行うものである。
【００６７】
１５２６はＰｒｉｎｔ−Ｍａｎａｇｅｒであり、Ｊｏｂ−Ｍａｎａｇｅｒ  １５１９が指示する印刷処理を管理・制御するものである。
【００６８】
１５２７はＥｎｇｉｎｅ−Ｉ／Ｆドライバであり、Ｐｒｉｎｔ−Ｍａｎａｇｅｒ  １５２６と印刷部とのＩ／Ｆを提供するものである。
【００６９】
１５２８はパラレルポートドライバであり、Ｗｅｂ−Ｐｕｌｌ−Ｐｒｉｎｔ  １５１１がパラレルポートを介して図外の出力機器にデータを出力する際のＩ／Ｆを提供するものである。
【００７０】
アプリケーション
以下、本発明の組み込みアプリケーションの実施の形態について図面を用いて説明する。
【００７１】
図１８は、本発明の配信に関する組み込みアプリケーションブロックを表すものである。
【００７２】
４０５０は、前記３０００で説明した本発明の操作部アプリケーションを示すブロックである。
【００７３】
４１００は、リモートコピーアプリケーションの送信側を示すブロック図である。
【００７４】
４１５０は、同報配信の送信側を示すブロック図である。
【００７５】
４２００は、Ｗｅｂ  Ｐｕｎ  Ｐｒｉｎｔモジュールを示すブロック図である。
【００７６】
４２５０は、Ｗｅｂ  Ｓｅｒｖｅｒモジュールを示すブロック図である。
【００７７】
４３００は、リモートコピーの受信側（プリント側）を示すブロック図である。
【００７８】
４３５０は、同報配信で送信されてきたイメージを汎用のプリンタで受信にプリントするブロック図である。
【００７９】
４４００は、リモートプリントの受信側（プリント側）を示すブロック図である。
【００８０】
４４５０は、同報配信で送信されてきたイメージを公知のＮｏｔｅｓ  Ｓｅｒｖｅｒで受信・格納するブロック図である。
【００８１】
４５００は、同報配信で送信されてきたイメージを２値のイメージを受信・格納するブロック図である。
【００８２】
４５５０は、同報配信で送信されてきたイメージを公知のＭａｉｌ  Ｓｅｒｖｅｒで受信・格納するブロック図である。
【００８３】
４６００は、同報配信で送信されてきたイメージを多値のイメージを受信・格納するブロック図である。
【００８４】
４６５０は、情報コンテンツを含んだ、公知のＷｅｂ  Ｓｅｒｖｅｒを示す図である。
【００８５】
４７００は、本発明のＷｅｂ  Ｓｅｒｖｅｒなどにアクセスする公知のＷｅｂ  Ｂｒｏｗｓｅｒを示す図である。
【００８６】
以下、それぞれのブロックに照らし合わせながら、アプリケーション群の説明を詳細に行う。
【００８７】
Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ  アプリケーション
４０５０ブロックに示したＵｓｅｒ  Ｉｎｔｅｒｆａｃｅ（以下、ＵＩ）の詳細は、前記したとおりであるが、ここでは、４０５１のＡｄｄｒｅｓｓ  Ｂｏｏｋについて説明する。このＡｄｄｒｅｓｓ  Ｂｏｏｋは、本発明の機器内の不揮発性の記憶装置（不揮発性メモリやハードディスクなど）に保存されており、この中には、ネットワークに接続された機器の特徴が記載されている。例えば、以下に列挙するようなものが含まれている。
機器の正式名やエイリアス名
機器のネットワークアドレス
機器の処理可能なネットワークプロトコル
機器の処理可能なドキュメントフォーマット
機器の処理可能な圧縮タイプ
機器の処理可能なイメージ解像度
プリンタ機器の場合の給紙可能な紙サイズ、給紙段情報
サーバ（コンピュータ）機器の場合のドキュメントを格納可能なフォルダ名
【００８８】
以下に説明する各アプリケーションは、上記Ａｄｄｒｅｓｓ  Ｂｏｏｋ  ４０５１に記載された情報により配信先の特徴を判別することが可能となる。
【００８９】
また、このＡｄｄｒｅｓｓ  Ｂｏｏｋは、編集可能であると共に、ネットワーク内のサーバコンピュータなどに保存されているものをダウンロードして使用する、または、直接参照することも可能である。
【００９０】
リモートコピーアプリケーション
リモートコピーアプリケーションは、配信先に指定された機器の処理可能な解像度情報を前記Ａｄｄｒｅｓｓ  Ｂｏｏｋ  ４０５１より判別し、それに従い、スキャナにより読みとった画像２催画像を公知のＭＭＲ圧縮を用いて圧縮し、それを公知のＴＩＦＦ（Ｔａｇｇｅｄ  Ｉｍａｇｅ  Ｆｉｌｅ  Ｆｏｒｍａｔ）化し、ＳＬＭ４１０３に通して、ネットワーク上のプリンタ機器に送信する。ＳＬＭ４１０３とは、詳細には説明しないが、公知のＳａｌｕｔａｔｉｏｎ  Ｍａｎａｇｅｒ（または、Ｓｍａｒｔ  Ｌｉｎｋ  Ｍａｎａｇｅｒ）と呼ばれる機器制御情報などを含んだネットワークプロトコルの一種である。
【００９１】
同報配信アプリケーション
同報配信アプリケーションは、前記リモートコピーアプリケーションと違い、一度の画像走査で複数の配信宛先に画像を送信する事が可能である。また、配信先もプリンタ機器にとどまらず、いわゆるサーバコンピュータにも直接配信可能である。
【００９２】
以下、配信先に従って純に説明する。
【００９３】
配信先の機器が公知のネットワークプリンタプロトコルであるＬＰＤ（Ｌｉｎｅ  Ｐｒｉｎｔｅｒ  Ｄａｅｍｏｎ）、プリンタ制御コマンドとして公知のＬＩＰＳを処理可能だとＡｄｄｒｅｓｓ  Ｂｏｏｋ  ４０５１より判別した場合、同様にＡｄｄｒｅｓｓ  Ｂｏｏｋ  ４０５１より判別した画像解像度に従って画像読み取りを行い、画像自体は、本実施例では、公知のＦＢＥ（Ｆｉｒｓｔ  Ｂｉｎａｒｉ  Ｅｎｃｏｄｉｎｇ）を用いて圧縮し、さらにＬＩＰＳコード化して、公知のネットワークプリンタプロトコルであるＬＰＲで相手機器に送信する。
【００９４】
配信先の機器が前記ＳＬＭで通信可能で、サーバ機器の場合、Ａｄｄｒｅｓｓ  Ｂｏｏｋ  ４０５１より、サーバアドレス、サーバ内のフォルダの指定を判別し、リモートコピーアプリケーションと同様に、スキャナにより読み取った画像２値画像を公知のＭＭＲ圧縮を用いて圧縮し、それを公知のＴＩＦＦ（Ｔａｇｇｅｄ  Ｉｍａｇｅ  Ｆｉｌｅ  Ｆｏｒｍａｔ）化し、ＳＬＭを通して、ネットワーク上のサーバ機器の特定のフォルダに格納する事が可能である。
【００９５】
また、本実施例の機器では、相手機器であるサーバが公知のＪＰＥＧ圧縮された多値画像を処理可能だと判別した場合、前記の２値画像と同様に多値読み取りした画像を公知のＪＰＥＧ圧縮を用いて、やはり公知のＪＦＩＦ化し、ＳＬＭを通して、ネットワーク上のサーバ機器の特定のフォルダに格納する事が可能である。
【００９６】
配信先の機器が公知のＥ−Ｍａｉｌサーバである場合、Ａｄｄｒｅｓｓ  Ｂｏｏｋ  ４０５１に記載されたメールアドレスを判別し、スキャナにより読み取った画像２値画像を公知のＭＭＲ圧縮を用いて圧縮し、それを公知のＴＩＦＦ（Ｔａｇｇｅｄ  Ｉｍａｇｅ  Ｆｉｌｅ  Ｆｏｒｍａｔ）化し、公知のＳＭＴＰ（Ｓｉｍｐｌｅ  Ｍａｉｌ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｃｏｌ）４１５３を使用して、Ｅ−Ｍａｉｌサーバに送信する。その後の配信は、Ｍａｉｌ  Ｓｅｒｖｅｒ  ４５５０に従って実行される。
【００９７】
Ｗｅｂ  Ｐｕｌｌ  Ｐｒｉｎｔ  アプリケーション
Ｗｅｂ  Ｐｕｌｌ  Ｐｒｉｎｔ  アプリケーションは、本実施例と直接関係しないので、説明は省略する。
【００９８】
Ｗｅｂ  Ｓｅｒｖｅｒ  アプリケーション
Ｗｅｂ  Ｓｅｒｖｅｒ  アプリケーションは、本実施例と直接関係しないので、説明は省略する。
【００９９】
Ｄｅｖｉｃ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｓｅｒｖｉｃｅ（ＤＩＳ）
コントローラ内でジョブに対する設定値、デバイス（スキャナ、プリンタなど）の機能、ステータス、課金情報等をＣｏｎｔｒｏｌ  ＡＰＩに準拠したデータ形態で保持するデータベースと、そのデータベースとのＩ／ＦをＤｅｖｉｃｅ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｓｅｒｖｉｃｅ（以下、ＤＩＳと呼称する）として定義している。図１９にＤＩＳ  ７１０２と  ＪｏｂＭａｎａｇｅｒ  ７１０１、及びＳｃａｎ、Ｐｒｉｎｔの各ＤｏｃｕｅｎｔＭａｎａｇｅｒ  ７１０３、７１０４とのやり取りを示す。
【０１００】
基本的に、Ｊｏｂの開始命令など動的な情報はＪｏｂＭａｎａｇｅｒ  ７１０１  から各ＤｏｃｕｍｅｎｔＭａｎａｇｅｒに直接指示され、デバイスの機能やジョブの内容など静的な情報はＤＩＳ  ７１０２を参照する。各ＤｏｃｕｍｅｎｔＭａｎａｇｅｒからの静的、動的情報、イベントはＤＩＳ  ７１０２を介してＪｏｂＭａｎａｇｅｒ  ７１０１に伝えられる。
【０１０１】
各ＤｏｃｕｍｅｎｔＭａｎａｇｅｒからＤＩＳのデータベースにデータの設定、取得を行う場合、ＤＩＳの内部データ形式がＣｏｎｔｒｏｌ  ＡＰＩ準拠であることから、Ｃｏｎｔｒｏｌ  ＡＰＩに準拠したデータ形式と各ＤｏｃｕｍｅｎｔＭａｎａｇｅｒが理解できるデータ形式との相互の変換処理を行う。例えば、各ＤｏｃｕｍｅｎｔＭａｎａｇｅｒからステータスデータの設定を行う場合、デバイス固有のデータを解釈し、Ｃｏｎｔｒｏｌ  ＡＰＩで定義される対応するデータに変換し、ＤＩＳのデータベースヘ書き込みを行う。
【０１０２】
ＪｏｂＭａｎａｇｅｒからＤＩＳのデータベースにデータの設定、取得を行う場合には、ＪｏｂＭａｎａｇｅｒとＤＩＳの間でデータの変換は生じない。
【０１０３】
またＤＩＳには、ＤｏｃｕｍｅｎｔＭａｎａｇｅｒから通知される各種イベント情報に基づき、イベントデータの更新が行われる。
【０１０４】
図２０にＤＩＳ内部に保持される各種データベース（以下、ＤＢと呼称する）を示し、それぞれのＤＢについて説明する。図２０中の丸角長方形は個々のＤＢを表している。
【０１０５】
７２０１はＳｕｐｅｒｖｉｓｏｒＤＢであり、機器全体についてのステータスやユーザ情報を保持しているＤＢであり、ユーザＩＤやパスワード等、バックアップが必要な情報はＨＤ装置、あるいはバックアップメモリなどの不揮発性の記憶装置に保持される。
【０１０６】
７２０２はＳｃａｎＣｏｍｐｏｎｅｎｔＤＢ、７２０３はＰｒｉｎｔＣｏｍｐｏｎｅｎｔＤＢであり、これらＣｏｍｐｏｎｅｎｔＤＢは存在するＣｏｍｐｏｎｅｎｔ毎に対応して保持される。例えば、プリンタのみからなる機器の場合はＰｒｉｎｔＣｏｍｐｏｎｅｎｔＤＢのみが存在し、また例えば、ＦＡＸを備えた機器の場合はＦＡＸＣｏｍｐｏｎｅｎｔＤＢが保持される。各ＣｏｍｐｏｎｅｎｔＤＢには初期化時に、それぞれ対応するＤｏｃｕｍｅｎｔＭａｎａｇｅｒがＣｏｍｐｏｎｅｎｔの機能やステータスを設定する。
【０１０７】
７２０４はＳｃａｎＪｏｂＳｅｒｖｉｃｅＤＢ、７２０５はＰｒｉｎｔＪｏｂＳｅｒｖｉｃｅＤＢであり、これらのＪｏｂＳｅｒｖｉｃｅＤＢもＣｏｍｐｏｎｅｎｔＤＢ同様、初期化時にそれぞれ対応するＤｏｃｕｍｅｎｔＭａｎａｇｅｒが機器で使用できる機能や、それらのサポート状況を設定する。
【０１０８】
次にＪｏｂＤＢ、ＤｏｃｕｍｅｎｔＤＢについて説明する。７２０６はＳｃａｎＪｏｂＤＢ、７２０７はＰｒｉｎｔＪｏｂＤＢの各ＪｏｂＤＢ、７２０８はＳｃａｎＤｏｃｕｍｅｎｔＤＢ、７２０９はＰｒｉｎｔＤｏｃｕｍｅｎｔＤＢである。
【０１０９】
ＪｏｂＤＢ、ＤｏｃｕｅｎｌＤＢはＪｏｂとそれに付随するＤｏｃｕｍｅｎｔが生成される度にＪｏｂＭａｎａｇｅｒにより動的に確保、初期化が行われ、必要な項目の設定が行われる。各ＤｏｃｕｍｅｎｔＭａｎａｇｅｒはＪｏｂの処理開始前にＪｏｂＤＢ、およびＤｏｃｕｅｎｔＤＢから処理に必要な項目を読み出し、Ｊｏｂを開始する。その後、Ｊｏｂが終了するとこれらのＪｏｂ、及びそれに付随していたＤｏｃｕｍｅｎｔのＤＢは解放される。Ｊｏｂは１つ以上のＤｏｃｕｍｅｎｔを持つので、あるＪｏｂに対して複数のＤｏｃｕｍｅｎｔＤＢが確保される場合がある。
【０１１０】
７２１０は各ＤｏｃｕｍｅｎｔＭａｎａｇｅｒから通知されるイベント情報を保持するデータベース、７２１１は装置のＳｃａｎ回数、Ｐｒｉｎｔ回数を記録するためのカウンタテーブルである。
【０１１１】
ＤｏｃｕｍｅｎｔＭａｎａｇｅｒから通知されるイベントには、ＳｃａｎＤｏｃｕｍｅｎｔＭａｎａｇｅｒからのＣｏｍｐｏｎｅｎｔの状態遷移、Ｓｃａｎ処理動作完了や各種のエラー、またＰｒｉｎｔＤｏｃｕｍｅｎｔＭａｎａｇｅｒからのＣｏｍｐｏｎｅｎｔの状態遷移、Ｐｒｉｎｔ処理動作完了、紙詰まり、給紙カセットオープンなどがあり、それぞれのイベントを識別するためのイベントＩＤが予め定められている。
【０１１２】
ＤｏｃｕｍｅｎｔＭａｎａｇｅｒからイベントが発行された場合、ＤＩＳはイベントデータベース７２１１に発行されたイベントＩＤと必要なら該イベントに付随する詳細データを登録する。また、ＤｏｃｕｍｅｎｔＭａｎａｇｅｒからイベントの解除が通知された場合、解除指定されたイベントデータをイベントデータベース７２１１から削除する。
【０１１３】
ＪｏｂＭａｎａｇｅｒよりイベントのポーリングが行われた場合、ＤＩＳはイベントデータベース７２１０を参照し、現在発生しているイベントＩＤと必要ならイベントに付随する詳細データをＪｏｂＭａｎａｇｅｒへ返信し、現在イベントが発生していなければその旨を返信する。
【０１１４】
また、Ｓｃａｎ処理動作完了、Ｐｒｉｎｔ処理動作完了のイペントが通知された場合はＳｃａｎ、Ｐｒｉｎｔを行ったユーザのカウンタ値を更新する。このソフトウェアによるカウンタは不慮の電源遮断などでその値が失われないように、バックアップされたメモリ装置やＨＤ装置の不揮発性記憶装置にその値が更新されるたびに書き戻す。
【０１１５】
スキャン動作
以下にスキャン動作の詳細について説明する。図２１はスキャン動作に関するブロックの概念図である。ＰＣＩバス８１０５にＣＰＵ８１０１とメモリ８１０２、画像の圧縮・伸長ボード８１０４、及びスキャナ８１０７と、このシステムを接続するためのＩ／Ｆを提供するＳＣＳＩ  Ｉ／Ｆ回路８１０３が接続されている。ＳＣＳＩ  Ｉ／Ｆ回路８１０３とスキャナ（または複合機能を有する複写機のスキャナ機能ユニット）８１０７はＳＣＳＩインターフェースケーブル８１０６で接続されている。またＰＣＩバス８１０５にはＩＤＥ  Ｃｏｎｔｒｏｌｌｅｒ  ８１０８が接続されており、ＩＤＥ  Ｃａｂｌｅ  ８１０９を介してＩＤＥ  Ｈａｒｄ  Ｄｉｓｋ  ８１１０と接続されている。図２２はスキャン動作に関するソフトウェア構造を示したものである。ＪｏｂＭａｎａｇｅｒ  ８２０１はアプリケーションレベルの要求を分類、保存する機能を持つ。ＤＩＳ  ８２０２はアプリケーションレベルからのスキャン動作に必要なパラメータを保存する。アプリケーションからの要求はメモリ８１０２に保存される。スキャン動作管理部８２０３はＪｏｂＭａｎａｇｅｒ  ８２０１とＤＩＳ  ８２０２からスキャンを行うのに必要な情報を取得する。スキャン動作管理部８２０３はＪｏｂＭａｎａｇｅｒ  ８２０１から図２３のジョブ番号、ドキュメント番号のテーブルデータ８３０１を受け取り、ジョブ番号、ドキュメント番号のテーブルデータ８３０１を元に、ＤＩＳ  ８２０２よりスキヤンパラメータ８３０２を受け取る。これによりアプリケーションから要求されているスキャン条件を元にスキャンを行う。
【０１１６】
スキャン動作管理部８２０３はＤＩＳ  ８２０２から取得したスキャンパラメータ８３０２をドキュメント番号順にスキャンシーケンス制御部８２０４に渡す。スキャンパラメータ８３０２を受け取ったスキャンシーケンス制御部８２０４はスキャン画像属性８３０８の内容に従ってＳＣＳＩ制御部８２０７をコントロールする。これにより図２１のＰＣＩ  ８１０５に接続されたＳＣＳＩＣｏｎｔｒｏｌｌｅｒ  ８１０３を動作させることにより、ＳＣＳＩケーブル８１０６を介してＳｃａｎｎｅｒ  ８１０７にＳＣＳＩ制御コマンドを送ることによりスキャンが実行される。スキャンした画像はＳＣＳＩＣａｂｌｅ  ８１０６を介してＳＣＳＩ  Ｃｏｎｔｒｏｌｌｅｒ  ８１０３にわたり、さらにＰＣＩ  ８１０５を介してＭｅｍｏｒｙ  ８１０２に格納される．スキャンシーケンス制御部８２０４はスキャンが終了し、ＰＣＩ  ８１０５を介してＭｅｍｏｒｙ  ８１０２に画像が格納された時点で、スキャンパラメータ８３０２のスキャン画像圧縮形式８３０９の内容にしたがって、Ｍｅｍｏｒｙ  ８１０２に格納されているスキャン画像を圧縮するために、圧縮・伸長制御部８２０５に対して要求を出す。要求を受け取った圧縮・伸長制御部８２０５はＰＣＩ  ８１０５に接続されているＣＯＤＥＣ  ８１０４を用いて、スキャンシーケンス制御部８２０４からのスキャン画像圧縮形式８３０９の指定で圧縮を行う。圧縮・伸長制御部８２０５は圧縮された画像をＰＣＩ  ８１０５を介してＭｅｍｏｒｙ  ８１０２に格納する。
【０１１７】
スキャンシーケンス制御部８２０４は圧縮・伸長制御部８２０５がスキャン画像圧縮形式８３０９で指定された形式にスキャン画像を圧縮し、Ｍｅｍｏｒｙ  ８１０２に格納した時点で、スキャンパラメータ８３０２の画像ファイルタイプ８３０７にしたがってＭｅｍｏｒｙ  ８１０２に格納されている圧縮されたスキャン画像をファイル化する。スキャンシーケンス制御部８２０４はファイルシステム８２０６に対して、スキャンパラメータ８３０２の画像ファイルタイプ８３０７で指定されたファイル形式でファイル化することを要求する。ファイルシステム８２０６はスキャンシーケンス制御部８２０４からの画像ファイルタイプ８３０７にしたがって、Ｍｅｍｏｒｙ  ８１０２に格納されている圧縮された画像をファイル化し、ＰＣＩ  ８１０５を介してＩＤＥ  Ｃｏｎｔｒｏｎｅｒ  ８１０８に転送し、ＩＤＥ  Ｃａｂｌｅ  ８１０９を介してＩＤＥ  Ｈａｒｄ  Ｄｉｓｋ  ８１１０に転送することによりスキャンされた圧縮画像をファイル化する。スキャンシーケンス制御部８２０４はファイルシステム８２０６がＩＤＥ  Ｈａｒｄ  Ｄｉｓｋ  ８１１０にファイル化された画像を格納した時点で、Ｓｃａｎｎｅｒ  ８１０７上の一枚の現行の処理が終了したとして、スキャン動作管理部８２０３にスキャン終了通知を送り返す。
【０１１８】
この時点でＳｃａｎｎｅｒ  ８１０７上にまだスキャンが行われていない原稿が存在し、ＪｏｂＭａｎａｇｅｒ  ８２０１からスキャン要求が存在する場合には再度、ＤＩＳ  ８２０２に格納されているスキャンパラメータ８３０２を用いてスキャンシーケンス制御部にスキャン動作を要求する。Ｓｃａｎｎｅｒ  ８１０７上にスキャンされていない原稿が存在しない場合、またはＪｏｂＭａｎａｇｅｒ  ８２０１からのスキャン要求が存在しない場合には、スキャン動作が終了したものとしてＪｏｂＭａｎａｇｅｒ  ８２０１に対してスキャン終了通知を発行する。
【０１１９】
プリント動作
以下でプリント動作について詳細に説明する。
【０１２０】
図２４はプリント動作に関するブロックの概念図である。ＰＣＩバス９００５にＣＰＵ９００１とメモリ９００２、画像の圧縮・伸張ボード９００４、及びプリンタ９００７と、このシステムを接続するためのＩ／Ｆを提供するＥｎｇｉｎｅＩ／Ｆボード９００３が接続されている。ＥｎｇｉｎｅＩ／Ｆボード９００３とプリンタ（または複合機能を有する複写機のプリンタ機能ユニット）９００７はエンジンインターフェースケーブル９００６で接続されている。
【０１２１】
ＥｎｇｉｎｅＩ／Ｆボードは内部にＤＰＲＡＭを持ち、このＤＰＲＡＭを介してプリンタヘのパラメータ設定及びプリンタの状態読み出しと、プリントの制御コマンドのやり取りを行う。またこのボードはＶｉｄｅｏコントローラを持ち、プリンタからエンジンインターフェースケーブル経由で与えられるＶＣＬＫ（ＶｉｄｅｏＣｌｏｃｋ）とＨＳＹＮＣに合わせて、ＰＣＩ上に展開されているイメージデータをエンジンインターフェースケーブルを介してプリンタに送信する。この送信のタイミングを図で表すと図２５の様になる。ＶＣＬＫは常に出続け、ＨＳＹＮＣがプリンタの１ラインの開始に同期して与えられる。Ｖｉｄｅｏコントローラは設定された画像幅（ＷＩＤＴＨ）分のデータを、設定されたＰＣＩ上のメモリ（ＳＯＵＲＣＥ）から読み出して、Ｖｉｄｅｏ信号としてエンジンインターフェースケーブルに出力する。これを指定ライン分（ＬＩＮＥＳ）繰り返した後、ＩＭＡＧＥ＿ＥＮＤ割り込みを発生する。
【０１２２】
先に説明したとおり、ＣＰＵ上のアプリケーションプログラムからＣｏｎｔｒｏｌｌＡＰＩにプリントジョブの指示が渡されると、ＣｏｎｔｒｏｌｌＡＰＩはこれをコントローラレベルのＪｏｂＭａｎａｇｅｒにジョブとして渡す。さらにこのＪｏｂＭａｎａｇｅｒはジョブの設定をＤＩＳに格納し、ＰｒｉｎｔＭａｎａｇｅｒにジョブの開始を指示する。ＰｒｉｎｔＭａｎａｇｅｒはジョブを受け付けるとＤＩＳからジョブ実行に必要な情報を読み出し、ＥｎｇｉｎｅＩ／Ｆボード及び、ＤＰＲＡＭを介してプリンタに設定する。
【０１２３】
ＥｎｇｉｎｅＩ／Ｆボードの設定項目を図２６に、プリンタのＤＰＲＡＭを介した設定項目及び制御コマンド、状態コマンドを図２７に示す。
【０１２４】
簡単のためにこのジョブを非圧縮、レター（１１″ｘ８．５″）サイズ２値画像の、２ページ１部プリント、プリンタが６００ｄｐｉの性能を持つものとして、具体的に動作を説明する。
【０１２５】
まず、このジョブを受けるとＰｒｉｎｔＭａｎａｇｅｒはこの画像の幅（この場合８．５″の側とする）の画像バイト数を算出する。
【０１２６】
ＷＩＤＴＨ＝８．５×６００÷８≒６３０（Ｂｙｔｅｓ）
次にライン数を演算する。
【０１２７】
ＬＩＮＥＳ＝１１×６００＝６６００（Ｌｉｎｅｓ）
これらの算出した値と、与えられた１ページ目の画像が格納されているＳＯＵＲＣＥアドレスとを図２６に示したＷＩＤＴＨ，ＬＩＮＥＳ，ＳＯＵＲＣＥに設定する。この時点でＥｎｇｉｎｅＩ／Ｆボードは画像出力の用意が完了しているが、プリンタからのＨＳＹＮＣ信号が来ていないため（ＶＣＬＫは来ている）画像データを出力していない。
【０１２８】
次にＰｒｉｎｔＭａｎａｇｅｒは図２７に示したＤＰＲＡＭの所定のアドレス（ＢｏｏｋＮｏ）に出力部数である１を書き込む。その後、１ページ目に対する出力用紙の給紙要求（ＦＥＥＤ＿ＲＥＱ）を出し、プリンタからのＩＭＡＧＥ＿ＲＥＱを待つ。プリンタからＩＭＡＧＥ＿ＲＥＱが来たら、ＩＭＡＧＥ＿ＳＴＡＲＴを出す。これを受けてプリンタはＨＳＹＮＣを出し始め、ＨＳＹＮＣ待ちであったＥｎｇｉｎｅＩ／Ｆボードは画像を出力する。プリンタは出力用紙の後端を検出すると、ＩＭＡＧＥ＿ＥＮＤを出力し、出力用紙が排出されるとＳＨＥＥＴ＿ＯＵＴを出力する。ＰｒｉｎｔＭａｎａｇｅｒは１ページ目のＩＭＡＧＥ＿ＥＮＤを受けて、２ページ目のＷＩＤＴＨ，ＬＩＮＥＳ，ＳＯＵＲＣＥをＥｎｇｉｎｅＩ／Ｆボードに設定し、ＦＥＥＤ＿ＲＥＱを出して、ＩＭＡＧＥ＿ＲＥＱを待つ。２ページ目のＩＭＡＧＥ＿ＲＥＱが来てからの動作は、１ページ目と同様である。
【図面の簡単な説明】
【０１２９】
【図１】本ネットワークシステム全体の構成図
【図２】本システムのソフトウェアの全体構成図
【図３】本システムの全体ブロック図
【図４】スキャナ部、プリンタ部、及び操作部の外形図
【図５】操作部を示す図
【図６】スキャナ画像処理部のブロック図
【図７】プリンタ画像処理部のブロック図
【図８】画像圧縮処理部のブロック図
【図９】デバイスＩ／Ｆ部のブロック図
【図１０】バス占有率算出回路のブロック図
【図１１】ＰＣＩバスの占有率の説明図
【図１２】ユーザ設定キーの図
【図１３】バス占有率が低い場合の画像転送の経路を示す図
【図１４】バス占有率が高い場合の画像転送の経路を示す図
【図１５】画像回転部のブロック図
【図１６】画像回転処理の説明図
【図１７】画像回転処理の説明図
【図１８】組み込みアプリケーション説明のブロック図
【図１９】ＤＩＳとＪｏｂＭａｎａｇｅｒ、ＰｒｉｎｔＭａｎａｇｅｒ、ＳｃａｎＭａｎａｇｅｒとのやり取りを示す図
【図２０】ＤＩＳ内部のデータベース、及びカウンタを示す図
【図２１】スキャンに関するハードウェア制御のブロック図
【図２２】スキャンにおけるソフトウェア制御のブロック図
【図２３】スキャンにおけるパラメータテーブルの概略図
【図２４】プリントに関するブロック図
【図２５】プリントイメージデータの転送タイミング図
【図２６】ＥｎｇｉｎｅＩ／Ｆボード内のプリントパラメータレジスタ表
【図２７】プリンタとＥｎｇｉｎｅＩ／Ｆボードとの通信コマンド表
【符号の説明】
【０１３０】
１００１  装置
１００２  データベースサーバ
１００３  データベースクライアント
１００４  電子メールサーバ
１００５  電子メールのクライアント
１００７  ルータ
１０１０  ローカルエリアネットワーク（ＬＡＮ）
１０１２  インターネット／イントラネット
１０３０  ＰＳＴＮまたはＩＳＤＮ
１０３１  ＦＡＸ装置
１０４０  プリンタ
２０００  Ｃｏｎｔｒｏｌｌｅｒ  ｕｎｉｔ
２００１  ＣＰＵ
２００２  ＲＡＭ
２００３  ＲＯＭ
２００４  ＨＤＤ
２００６  操作部Ｉ／Ｆ
２００５  Ｉｍａｇｅ  ＢｕｓＩ／Ｆ
２００７  システムバス
２００８  画像バス
２０１０  Ｎｅｔｗｏｒｋ
２０１１  ＬＡＮ
２０１２  操作部（ＵＩ）
２０２０  デバイスＩ／Ｆ部
２０３０  画像回転部
２０４０  像画圧縮部
２０５０  Ｍｏｄｅｍ
２０５１  公衆回線（ＷＡＮ）
２０６０  ラスターイメージプロセッサ（ＲＩＰ）
２０７０  Ｓｃａｎｎｅｒ
２０８０  スキャナ画像処理部
２０９０  プリンタ画像処理部
２０９５  Ｐｒｉｎｔｅｒ
【図１】
2005192116.tif 000003
【図２】
2005192116.tif 000004
【図３】
2005192116.tif 000005
【図４】
2005192116.tif 000006
【図５】
2005192116.tif 000007
【図６】
2005192116.tif 000008
【図７】
2005192116.tif 000009
【図８】
2005192116.tif 000010
【図９】
2005192116.tif 000011
【図１０】
2005192116.tif 000012
【図１１】
2005192116.tif 000013
【図１２】
2005192116.tif 000014
【図１３】
2005192116.tif 000015
【図１４】
2005192116.tif 000016
【図１５】
2005192116.tif 000017
【図１６】
2005192116.tif 000018
【図１７】
2005192116.tif 000019
【図１８】
2005192116.tif 000020
【図１９】
2005192116.tif 000021
【図２０】
2005192116.tif 000022
【図２１】
2005192116.tif 000023
【図２２】
2005192116.tif 000024
【図２３】
2005192116.tif 000025
【図２４】
2005192116.tif 000026
【図２５】
2005192116.tif 000027
【図２６】
2005192116.tif 000028
【図２７】
2005192116.tif 000029