以下、図面により本発明の実施形態を詳細に説明する。但し、この実施形態に記載される構成要素、種類、組み合わせ、形状、その相対配置などは特定的な記載がない限り、この発明の範囲をそれのみに限定する主旨ではなく単なる説明例に過ぎない。
図1は本発明の画像形成装置の第1の実施形態を示すデジタル複写機の構成図である。このような構成で、読み取り部1では、まず、原稿台11に沿って可動な露光ランプ12により原稿面を走査しながら露光して、その反射光をCCD(イメージセンサ)13により光電変換し、光の強弱に応じた電気信号を得る。そして、IPU(イメージプロセッシングユニット)14により、その電気信号に対してシェーディング補正などの処理を施し、A/D変換し、8ビットのデジタルデータとし、さらに変倍処理およびディザ処理など画像処理を行い、その画像データを画像同期信号と共に像形成部2へ送る。図2に上方から見た原稿台を示す。
スキャナ制御部15は以上のプロセスを実行するために各種センサの検知と駆動モータなどの制御を行い、また、IPU14に各種パラメータを設定する。また、像形成部2では、帯電チャージャ21により一様に帯電された回転する感光体22を、書き込み部23からの画像データにより変調されたレーザー光で露光する。これにより感光体22には静電潜像ができ、それを現像装置24がトナーで現像することにより顕像化してトナー像を生成する。一方、給紙コロ25によりあらかじめ給紙トレイ26より給紙搬送され、レジストローラ27で待機していた転写紙を、感光体22の回転とタイミングを図って搬送し、転写チャージャ28により感光体上のトナーを転写紙に転写し、分離チャージャ29により転写紙を感光体22から分離する。さらに、転写紙上のトナー像を定着装置30により加熱定着し、排紙コロ31により排紙トレイ32に排紙する。一方、転写後の感光体22に残留したトナー像は感光体22に圧接するクリーニング装置33により除去され、感光体22は除電チャージャ34により除電される。プロッタ制御部35は以上のプロセスを実行するために各種センサの検知と駆動モータなどの制御を行う。
次に、読み取り部1内のIPU14より出力される画像同期信号の様子を図3に示したタイミングチャートにより説明する。図3において、フレームゲート信号(/FGATE)は副走査方向の画像領域について画像有効範囲を表す信号であり、この信号がLowレベルの間の画像データを有効とする。図3に示したように、この/FGATEはライン同期信号(/LSYNC)の立ち下がりエッジでアサート(信号あり状態にすること)、あるいはネゲート(信号なし状態にすること)される。
また、/LSYNCは画素同期信号(PCLK)の立ち上がりエッジで所定クロック数だけアサートされ、この信号の立ち上がり後、所定クロック後に主走査方向の画像データが有効とされる。送られてくる画像データは、PCLKの1周期に対して1つであり、図3の矢印の範囲が終わった位置を起点として400DPI相当に分割されたもので、ラスタ形式のデータとして送出される。また、画像データの副走査有効範囲は通常、転写紙サイズによって決まる。
また、図1において、システム制御部3は、利用者による操作部4の入力状態を検知し、読み取り部1、像形成部2、記憶部5、ファクシミリ(FAX)部6、およびインタフェース(I/F)部7への各種パラメータの設定およびプロセス実行指示などを行う。また、システム全体の状態を操作部4に表示する。なお、システム制御部3への指示は利用者の操作部4へのキー入力によりなされる。
FAX部6は、システム制御部3から渡された画像データをG3またはG4ファクシミリ通信のデータ転送規定に基づき符号化し、電話回線へ送出する。また、電話回線よりFAX部6へ転送されたデータを復元して2値の画像データとし、像形成部2の書き込み部23へ送る。
I/F部7は、システム制御部3からの指示により記憶部5のデータを外部へ送信したり、外部から受信したデータを記憶部5へ格納したりする。
また、セレクタ部8はシステム制御部3からの指示によりセレクタの状態を変化させ、像形成の際の画像データのソースを読み取り部1、記憶部5、FAX部6、I/F部7の何れかから選択する。
また、記憶部5は、通常はIPU14から入力される原稿の画像データを記憶することにより、リピートコピーや回転コピーなど複写アプリケーションに使用される。また、FAX部6からの2値画像データを一時記憶させるバッファメモリとしても使用され、さらに、入出力装置からI/F部7を介して入力される固有情報を記憶する手段としても使用される。これらのデータ記憶の指示をシステム制御部3が行うのである。
図4に、記憶部5の構成を示す。以下、図4により記憶部5の機能をブロック毎に説明する。最初に画像入出力DMAコントローラ(DMAC)51だが、これはCPUおよび論理回路から構成され、メモリ制御部52と通信を行なってコマンドを受信し、そのコマンドに応じた動作設定を行い、また、画像入出力DMAC51の状態を知らせるためステータス情報として送信する。そして、画像入力のコマンドを受けた場合、入力画像データを入力画像同期信号に従って8画素単位のメモリデータとしてパッキングして、メモリ制御部52にメモリアクセス信号と共に随時出力する。また、画像出力のコマンドを受けると、メモリ制御部52からの画像データを出力画像同期信号に同期させて出力する。
次に、画像メモリ53だが、これは画像データを記憶するメモリであり、DRAMなど半導体記憶素子で構成される。記憶容量は400DPI・2値画像データのA3サイズ分として4Mバイト、電子ソート蓄積用として4Mバイト、データ転送用ワーク領域として6Mバイト、画像データ管理領域として2Mバイトで、合計16Mバイトである。メモリ制御部52が読み出しおよび書き込みの制御を行う。
また、メモリ制御部52はCPUおよび論理回路から構成され、システム制御部3と通信してコマンドを受信し、そのコマンドに応じた動作設定を行い、また、記憶部5の状態を知らせるためステータス情報として送信する。なお、システム制御部3から受ける動作コマンドには、画像入力、画像出力、圧縮、伸長などがあり、画像入力および画像出力のコマンドの場合は画像入出力DMAC51へデータを送信し、圧縮関連のコマンドの場合には画像転送DMAC54または符号転送DMAC55を介して圧縮伸長器56へデータを送信する。
図5に、メモリ制御部52のアドレス発生部および比較部の構成を示す。以下、ブロック毎に機能を説明する。まず、入出力画像アドレスカウンタ61だが、これは入出力メモリアクセス要求信号に応じてカウントアップするアドレスカウンタであり、入出力画像データが格納される格納場所を示す22ビットのメモリアドレスを出力する。なお、メモリアクセス開始時にアドレスはいったん初期化される。
次に、転送画像アドレスカウンタ62だが、これは転送メモリアクセス許可信号に応じてカウントアップするアドレスカウンタであり、転送画像データが格納される格納場所を示す22ビットのメモリアドレスを出力する。なお、メモリアクセス開始時にいったんアドレスは初期化される。
また、ライン設定部63には、画像入力時のバッファとして半導体メモリを使用する場合に、差分算出部65から出力された入力処理ラインと転送ラインの差分を差分比較部64において比較する値がシステム制御部3により設定される。なお、差分算出部65は、画像入力時、圧縮伸長部56が出力する転送処理ライン数から画像入出力DMAC51が出力する入出力処理ライン数を減算し、結果を差分比較部64に出力する。
また、差分比較部64は、画像入力時に差分算出部65が出力する差分ライン数とライン設定部63が出力する設定値とを比較し、差分ライン数=設定値となったならばエラー信号を出力し、また、差分ライン数が0となったならばアービタ66に出力する比較結果の転送要求マスク信号をアクティブとする。それ以外、または入出力画像が動作中でない状態では、アクティブを出力しない。アービタ66は圧縮伸張部56のアクセスのためのメモリアクセス許可信号を出力する。アドレス比較信号がアクティブで入出力メモリアクセス信号が非アクティブの条件でメモリアクセス許可信号を出力するのである。
また、アドレスセレクタ67はアービタにより選択されるセレクタで、入力画像または転送画像のアドレスのどちらかが選択される。また、要求マスク68は 差分比較部64からの比較結果に応じて圧縮伸張部56のアクセスのための転送メモリアクセス要求信号をマスク(ディスイネーブル状態とすること)し、転送処理を停止させる。
また、アクセス制御回路69は入力される物理アドレスを画像メモリ(例えばDRAM)53に対応したロウ(row)アドレスとカラムアドレスに分割し、11ビットのアドレスバスに出力する。また、アービタ66からのアクセス開始信号に従い、DRAM制御信号(RAS、CAS、WEなど)を出力する。
このような構成で、記憶部5はシステム制御部3からの画像入力指示により初期化され画像データの待ち状態となり、読み取り部1が動作することにより記憶部5に画像データが入力されると、メモリ制御部52はその画像データをいったん画像メモリ53に書き込む。また、その際、書き込んだ画像データの処理ライン数を画像入出力DMAC51により計数する。このとき、圧縮伸長器56は、画像転送のコマンドを受けて転送メモリアクセス要求信号を出力しているが、メモリ制御部52内の要求マスク部68によりその要求信号がマスクされ、実際のメモリアクセスは行われていない。その後、画像入出力DMAC51からのデータ入力が1ライン分終了することにより転送メモリアクセス要求信号のマスクが解除され、画像メモリ53から読み出しが行われ、画像データの圧縮伸長部56への転送動作が開始される。また、この動作中、差分算出部65は2つの処理ライン数の差を算出し、0になれば、アドレスの追い越しがないように要求マスク部68が転送メモリアクセス要求信号にマスクをかける。
次に、画像転送DMAC54について説明する。画像転送DMAC54はCPUおよび論理回路から構成され、メモリ制御部52と通信を行なってコマンドを受信し、そのコマンドに応じた動作設定を行い、また、状態を知らせるためのステータス情報を送信する。また、圧縮のコマンドを受けた場合は、メモリ制御部52にメモリアクセス要求信号を出力し、メモリアクセス許可信号がアクティブの場合に画像データを受け取って圧縮伸長器56へ転送する。また、メモリアクセス要求信号に応じてカウントアップするアドレスカウンタを内蔵し、画像データが格納される格納場所を示す22ビットのメモリアドレスを出力する。
また、符号転送DMAC55はCPUおよび論理回路から構成され、メモリ制御部52と通信を行なってコマンドを受信し、そのコマンドに応じた動作設定を行い、また、状態を知らせるためのステータス情報を送信する。伸長のコマンドを受けた場合は、メモリ制御部52にメモリアクセス要求信号を出力し、メモリアクセス許可信号がアクティブの場合に画像データを受け取って圧縮伸長器56へ転送する。また、メモリアクセス要求信号に応じてカウントアップするアドレスカウンタを内蔵し、画像データが格納される格納場所を示す22ビットのメモリアドレスを出力する。
また、圧縮伸長器56はCPUおよび論理回路から構成され、メモリ制御部52と通信を行なってコマンドを受信し、そのコマンドに応じた動作設定を行い、また、状態を知らせるためのステータス情報を送信する。2値データをMH符号化方法により処理する。
また、HDDコントローラ57はCPUおよび論理回路から構成され、メモリ制御部52と通信を行なってコマンドを受信し、そのコマンドに応じた動作設定を行う。また、2次記憶装置であるハードディスク記憶装置(HDD)58の状態を知らせるためのステータス情報を送信したり、HDD58からステータスを取得したり、HDD58との間でデータ転送を行なったりする。
記憶部5全体の動作としては、画像入力およびデータ蓄積に際して、システム制御部3からの指示により画像入出力DMAC51が画像データを画像メモリ53の所定の画像領域に書き込む一方、その画像データを画像メモリ53から読み出す。このとき、画像転送DMAC54では画像ライン数をカウントしている。
なお、この実施形態では、請求項記載の画像読み取り手段が画像読み取り部1により実現され、画像記憶手段がHDD58により実現され、画像一時記憶手段が画像メモリ53により実現され、画像転送手段がメモリ制御部52、画像転送DMAC54、符号転送DMAC55などにより実現され、データ消去手段がシステム制御部3およびメモリ制御部52などにより実現される。
このような構成で、この実施形態では、画像読み込み時、読み取られた1つの画像データのすべてまたは一部を読み取り部1とHDD58との間に設けた画像メモリ53に記憶し、その画像データを画像転送DMAC54により圧縮伸長器56へ転送し、ここでMH符号化によりデータ圧縮を行い、符号化された画像データを符号転送DMAC55によりHDD58へ転送する。また、その際、システム制御部3はメモリ制御部52を介して画像メモリ53内の転送済み画像データを消去する。
図6は、本発明の第2の実施形態を示す、デジタル複合機のソフトウェア構成図である。なお、ここでは、プリンタ、複写機、ファクシミリ装置、およびスキャナなど各装置の機能を1つの筐体内に収納した画像形成装置をデジタル複合機(以下、複合機と略す)と呼んでいる。図示したように、この複合機はアプリケーションプログラム群74およびプラットフォームプログラム群75から成るプログラム(ソフトウェア)群71、起動部72、およびハードウェア資源73を備え、この複合機に電源を投入すると、起動部72が最初に動作し、アプリケーションプログラム群74およびプラットフォームプログラム群75を起動する。例えば起動部72は、アプリケーションプログラム群74およびプラットフォームプログラム75を、外部記憶手段であるHDD(ハードディスク記憶装置)などから読み出し、読み出した各プログラムをメモリ領域に転送して起動するのである。なお、ハードウェア資源73は、白黒レーザプリンタ(B&W・LP)76、カラーレーザプリンタ(Color・LP)77、スキャナやファクシミリ装置など他のハードウェア資源78を備え、さらに、図示していないが、プログラム群71の動作環境としてのハードウェア資源である後述するCPU、半導体メモリ、および各種論理回路などを備える。
また、前記アプリケーションプログラム74およびプラットフォームプログラム75は、UNIX(登録商標)などオペレーティングシステム(以下、OSと称す)上で動作し、アプリケーションプログラム74としては、プリンタアプリケーション81、コピー(複写)アプリケーション82、ファックスアプリケーション83、およびスキャナアプリケーション84など、画像読み取りおよび画像形成に係るユーザサービスにそれぞれ固有の処理を行うプログラムを備える。
また、プラットフォームプログラム75は、アプリケーションプログラム74からの処理要求を解釈してハードウェア資源73の獲得要求を出すコントロールサービスプログラム79、1つ以上のハードウェア資源73を管理してコントロールサービスプログラム79からの獲得要求を調停するシステムリソースマネージャ(以下、SRMと称す)86、SRM86からの獲得要求に応じてハードウェア資源73を管理するハンドラ80を備える。
また、コントロールサービスプログラム79としては、ネットワークコントロールサービスプログラム(以下、NCSと称す)91、デリバリーコントロールサービスプログラム(以下、DCSと称す)92、オペレーションパネルコントロールサービスプログラム(以下、OCSと称す)93、ファックスコントロールサービスプログラム(以下、FCSと称す)94、エンジンコントロールサービスプログラム(以下、ECSと称す)95、メモリコントロールサービスプログラム(以下、MCSと称す)96、ユーザインフォメーションコントロールサービスプログラム(以下、UCSと称す)97、システムコントロールサービスプログラム(以下、SCSと称す)98などを備える。なお、プラットフォームプログラム75は、あらかじめ定義されている関数によりアプリケーションプログラム74からの処理要求を受信するAPI(アプリケーションインタフェース)90を有する構成としている。また、OSはアプリケーションプログラム74およびプラットフォームプログラム75をプロセスとして並列実行させる。
前記において、NCS91は、ネットワークに対する入出力を必要とするアプリケーションプログラムに対して共通に利用できるサービスを提供するものであり、ネットワーク側から各プロトコルに従って受信したデータを各アプリケーションプログラムに振り分けたり、各アプリケーションプログラムからのデータをネットワーク側に送信する際の仲介を行う。例えばNCS91は、ネットワークを介して接続されるネットワーク機器とのデータ通信をhttpd(HyperText Transfer Protocol Daemon)によりHTTP(HyperText Transfer Protocol)で制御する。
また、DCS92は蓄積文書の配信などを制御し、OCS93は利用者とこの複合機との間の情報伝達手段となるオペレーションパネルを制御する。FCS94は、アプリケーションプログラム74からPSTN(公衆電話回線網)またはISDN(デジタル網の1つ)を利用したファックス送受信、バックアップ用のメモリで管理されている各種ファックスデータの登録/引用、ファックス読み取り、ファックス受信印刷などを行うためのインタフェースを提供する。
また、ECS95は、白黒レーザプリンタ76、カラーレーザプリンタ77、他のハードウェア資源78などのエンジン部を制御する。MCS96はメモリの取得および開放やHDD利用などのメモリ制御を行い、UCS97はユーザ情報を管理する。SCS98は、アプリケーションプログラム74の管理、操作部制御、システム画面表示、LED表示、ハードウェア資源73の管理、割り込みアプリケーション制御などを行う。
また、SRM86は、SCS98と共にシステムの制御およびハードウェア資源73の管理を行う。例えばSRM86は、白黒レーザプリンタ76やカラーレーザプリンタ77などのハードウェア資源73を利用する上位層からの獲得要求に従って調停および実行制御を行う。具体的には、SRM86は獲得要求の行われたハードウェア資源73が利用可能であるか否か(他の獲得要求により利用されていないかどうか)を判定し、利用可能であれば獲得要求の行われたハードウェア資源73が利用可能である旨を上位層に通知する。また、SRM86は上位層からの獲得要求に対してハードウェア資源73を利用するためのスケジューリングを行い、要求内容(例えば、プリンタエンジンによる紙搬送と作像動作、メモリ確保、ファイル生成など)を直接実施する。
また、ハンドラ80は後述するファックスコントロールユニット(以下、FCUと称す)を管理するファックスコントロールユニットハンドラ(以下、FCUHと称す)99、前記した各プログラム(プロセス)に対するメモリの割り振りおよび割り振ったメモリの管理を行うイメージメモリハンドラ(以下、IMHと称す)100などを備える。SRM86およびFCUH99は、あらかじめ定義されている関数を用いて、ハードウェア資源73に対する処理要求を仲介するエンジンI/F101を介して、ハードウェア資源73に対する処理要求を行う。
このような構成により、この複合機では、各アプリケーションプログラムで共通的に必要な処理をプラットフォームプログラム75で一元的に処理することができるのである。
図7はこの複合機のハードウェア構成図である。以下、このハードウェア構成について説明する。図示したように、この複合機は、コントローラ110、オペレーションパネル120、FCU121、USBデバイス122、IEEE1394デバイス123、エンジン部124などを備えている。また、コントローラ110は、CPU111、システムメモリ(MEM−P)112、ノースブリッジ(以下、NBと称す)113、サウスブリッジ(以下、SBと称す)114、ASIC(専用集積回路)115、ローカルメモリ(MEM−C)116、HDD117などを備えている。そして、オペレーションパネル120はコントローラ110内のASIC115に接続され、FCU121、USBデバイス122、IEEE1394デバイス123、およびエンジン部124などは、ASIC115にPCIバスで接続されている。
また、コントローラ110内では、ASIC115にローカルメモリ116とHDD117が接続されると共に、CPU111とASIC115とがNB113を介して接続されている。このようにNB113を介してCPU111とASIC115とを接続すれば、CPU111のインタフェースが公開されていない場合に対応できるのである。なお、ASIC115とNB113とはPCIバスを介して接続されているのでなく、AGP(Accelerated Graphics Port)118を介して接続されている。このように低速のPCIバスでなくAGP118を介して接続することにより、図6に示したアプリケーションプログラム74やプラットフォームプログラム75を構成する一つ以上のプロセス(プログラム)を実行制御する際のパフォーマンスの低下を防ぐ。
CPU111は複合機の全体を制御する。CPU111は、図6に示したSRM86、NCS91、DCS92、OCS93、FCS94、ECS95、MCS96、UCS97、SCS98、FCUH99、およびIMH100をOS上にそれぞれプロセスとして起動して実行させると共に、アプリケーションプログラム74を構成するプリンタアプリケーション81、コピーアプリケーション82、ファックスアプリケーション83、スキャナアプリケーション84などを起動して実行させる。
NB113は、CPU111、システムメモリ112、SB114、およびASIC115を接続するためのブリッジであり、システムメモリ112はこの複合機の描画用メモリなどとして用いるメモリである。SB114は、NB113とROM(図示していない)、PCIバス、周辺デバイスとを接続するためのブリッジである。また、ローカルメモリ116はコピー用画像バッファおよび符号バッファとして用いるメモリである。
ASIC115は、画像処理用のハードウェア要素を有する画像処理用途向けの専用集積回路である。また、HDD117は、画像データ、文書データ、プログラム、フォントデータ、フォームなどを記憶しておくための記憶装置であり、オペレーションパネル120は、利用者からの入力操作を受け付けると共に、利用者に向けた表示を行う操作部である。ASIC115には画像データを転送するDMA転送機能があり、PCIバスを介してエンジン部124との間でDMA転送を行う。
具体的には、図8に示したように、ASIC115内にビデオ入力DMAコントローラを2チャンネルとビデオ出力DMAコントローラを備え、それぞれ異なるPCIバスのアドレスが割り振られており、スキャナ入力1、スキャナ入力2、プロッタ出力のビデオデータ転送を並行して行うことができる。例えばスキャナにより読み取った画像データを両面同時にローカルメモリ116へ転送する場合、SRM86から来た要求に対してIMH100は転送画像サイズ分のメモリをローカルメモリ116に確保して転送画像サイズXw、Ywと確保したメモリのアドレスをASIC115内のビデオ入力DMAコントローラに設定することにより転送可能にするのである。
図9に、両面原稿の表裏面同時読み取りを実現する場合のエンジン部124の構成ブロック図を示す。図9において、画像データ制御IFコントローラ(以下、コントローラと略す)131はCPU132により直接制御される。また、CCDなど画像入力デバイス133、134、入力信号を一時的に記憶するためのDRAMなどフレームメモリ135、GAVDなど出力デバイス136を備えている。コントローラ131はPCIなどデータバスに接続されており、入力データを外部記憶装置(HDD117)へ出力したり、出力データを外部記憶装置から入力したりすることが可能である。画像入力デバイス133、134はCCDなど画像読み取り素子であり、原稿の両面から同時に読み取る。
フレームメモリ135はそのような画像入力デバイス133、134からの画像データを一時的に記憶する。このフレームメモリ135を用いて、両面同時読み取りの際における表面と裏面の入力のタイミングやPCIバスへのデータ転送速度を調整する。
なお、この実施形態では、請求項記載の画像読み取り手段がエンジン部124により実現され、画像記憶手段が例えばHDD117により実現され、画像一時記憶手段がフレームメモリ135により実現され、画像転送手段がPCI転送コントローラ152により実現され、データ消去手段がCPU132により実現され、操作手段がオペレーションパネル120により実現される。以下、第2の実施形態の場合で本発明の実施例を説明する。
第2の実施形態の複合機ではフレームメモリ135への入力画像データの書き込みとフレームメモリ135からの入力画像データの読み出しが並行して実行できるものとし、両面読み取りを実行する際には、フレームメモリ135への表面画像データの書き込みと裏面画像データの書き込みが並行して実行できるものとする。
最初に、図9に基づいて原稿上の画像を読み取る際のデータフローを説明する。なお、画像読み取り動作は次の2つの動作に分けられる:
(1)画像入力デバイス133、134により入力された画像データをフレームメモリ135に書き込む;
(2)フレームメモリ135に記憶された画像データを読み出し、データ圧縮(データ変換)など画像処理を行い、データバスを介して記憶装置(例えばHDD117、以下、同様)へ転送する。但し、機器構成によってフレームメモリを持たない場合やフレームメモリのメモリ容量が少ない場合は前記(1)、(2)のように2つの動作に分割せずに直接データバスへ転送することも可能である。
以下、表面の読み取りの場合で(1)を説明する。まず、表面用の画像入力デバイス133から入力された画像信号が、シェーディング処理部136を介して画像データ入力IF138に入力される。そして、その画像データ(画像信号)はセレクタによりDRAMコントローラ140を介してフレームメモリ135へ転送される。フレームメモリ135では入力された画像データを順次書き込んで保存する。
次に、(2)を説明する。まず、フレームメモリ135に保存された画像データを、各種画像データ処理部141〜145を介して、セレクタ151によりPCI転送コントローラ152へ転送する。そして、転送されたデータをPCI転送コントローラ152によりPCIデータバスを介して記憶装置に保存する。なお、画像データ処理部としては、マスク処理部141、146、フィルタ処理部142、147、変倍処理部143、148、領域拡張/縮小処理部144、149、画像圧縮処理部145、150などがある。また、セレクタ151は複数の画像入力部と複数の画像出力部を有し、入力された画像データを選択された画像出力部へ出力するための切替え機能を有している。また、PCI転送コントローラ152はセレクタ151から出力された複数の画像データを記憶装置へ出力する。この際、画像データ毎に記憶装置へ出力するために必要なデータ容量や画像データ転送速度を設定できる。
この実施形態では、画像データ転送を実行する部分にPCIバスやUSBなど単一のデータパスによって複数のデータを送受信することが可能な手段を設けることにより、データ転送のチャネルを比較的容易に増設し、データ転送の制御を行うことが可能な構成としている。なお、画像入力デバイス133、134により入力される画像信号はCCDなど画像読み取り素子の物理的な配置によってそれぞれ入力開始タイミング、データ容量、画像データの転送速度などが異なる場合が想定される。そのため、セレクタ151やPCI転送コントローラ152は個々の画像データ毎に非同期に画像データの転送処理を行うことができる構成にしている。複数の画像データを同時に同期して転送を行うだけでなく、個別に非同期に並行して(同時期に)転送するのである。このように構成することにより、両面原稿読み取りの機能やデータ転送速度や読み取りのタイミングに応じて画像データ転送の方式を変更することができるのである。
図10に、原稿から画像を読み取る際の動作フローを示す。以下、図10に従ってこの動作フローを説明する。なお、この動作フローはスキャナアプリケーション84としてプログラミングされ、CPU111がそのスキャナアプリケーション84に従い、SRM86やECS95などプラットフォームプログラム75を用いて実行する。
まず、CPU111が、オペレーションパネル120により利用者に対して、読み取り実行後にフレームメモリ135の画像データを消去するか否かを設定させる(S1)。そして、「消去する」と設定されたならば(S2でY)、データ消去タイミング(データ消去単位)を設定させる(S3)。なお、これらの設定は、あらかじめ行なっておいてもよいし、読み取りを行う際に毎回行うようにしてもよい。CPU132が設定情報をCPU111から受け取ってNV−RAM155に書き込むのである。データ消去のタイミングとは画像データ転送後にその画像データを消去するタイミングであり、1画素転送毎、1ライン転送毎、フレームメモリ135に対するアクセス単位毎、ページ単位毎などのなかから利用者が選択でき、選択したタイミング(消去単位)で画像データの消去が行われる。
次に、CPU111はオペレーションパネル120により画像読み取りの制御設定を行わせる(S4)。両面読み取りであるとか読み取り解像度など画像読み取りに係る条件を利用者に設定させるのである。そして、CPU111はこの制御設定内容をCPU132に渡し、読み取りを開始させる。これにより、CPU132は制御IC154などを介して原稿を搬送させ、原稿が所定の読み取り位置に到着すると(S5でY)、画像入力デバイス133、(134)が読み取りを開始する(S6)。読み取られた画像データはフレームメモリ135に格納される一方で、その画像データはフレームメモリ135からPCIバスを介して記憶装置へ転送される。
その後、1ページまたは複数ページの当該原稿の画像読み取りおよび画像データ転送が終了するまで待ち(S7でN)、読み取り・画像データ転送が終了すると(S7でY)、次の1ページまたは複数ページの原稿が存在するかどうか確認する(S8)。そして、次の原稿があれば(S8でY)、再度画像読み取り・画像データ転送を実行し(S4〜S7)、なければ(S8でN)画像読み取り・画像データ転送を終了する。
図11に、前記した画像データ転送のより詳細な動作フローを示す。以下、この動作フローを説明する。最初に、画像読み取り(画像入力デバイスで画像を読み取り、画像データをフレームメモリへ書き込む動作)と画像データ転送(フレームメモリからPCIバスへの出力)を並行して実行するに際して、CPU111はCPU132により実行させるプログラムである画像読み取りプロセスとデータ転送プロセスを起動させる。これにより、画像読み取りプロセスではただちに原稿上の画像の読み取りを開始する(S11)。そして、原稿上の所定の読み取り終了位置に至るまで画像読み取りを続行し、その読み取り位置に達すると(S12でY)画像読み取り動作を終了する。
一方、データ転送プロセスでは、まず、画像データ転送開始の条件を満たすまで待つ(S21がNでS21へ)。そして、画像データ転送の開始条件を満たせば(S21でY)、フレームメモリ135から画像圧縮部145、150など画像データ処理部、およびPCIバスを経由した記憶装置へのデータ転送を開始する(S22)。ここで、データ転送開始条件はあらかじめ設定されているものとする。例えば、「画像読み取りプロセスが開始している」とか、「フレームメモリへの書き込みライン数が所定値に達した」などがデータ転送開始条件である。前者の場合は、フレームメモリ135への画像データ書き込みと同時にフレームメモリ135から画像データを読み出してPCIバスへ転送し、後者の場合は、画像データをフレームメモリ135へ何ラインか書き込んだ後、画像データ転送を開始することになる。
続いて、フレームメモリ135内の画像データ消去実行の設定を確認する(S23)。そして、消去実行が設定されていなければ(S23でN)、その後、所定のデータ転送量に到達するまで画像データ転送を続行し、そのデータ転送量に達したならば(S26でY)、この動作フローを終了する。それに対して、消去実行が設定されていれば(S23でY)、消去タイミングの条件を満たすまで(ステップS3で設定した画像データ消去単位に達するまで)画像データ転送を続行し、消去タイミングに到達すれば(S24でY)、フレームメモリ135内の転送終了した画像データを消去する(S25)。このような処理を所定のデータ転送量に到達するまで続行し、そのデータ転送量に達したならば(S26でY)、この動作フローを終了する。
以上、記憶装置への画像データ転送の完了とほぼ一致してフレームメモリ内の画像データの消去が終了する構成の場合で説明したが、記憶装置への画像データ転送の直後にフレームメモリ内の画像データを消去する構成であってもよい。
こうして、この実施例によれば、原稿画像読み取り手段内のバッファメモリであるフレームメモリに一時的に記憶される画像データが記憶装置への画像データ転送後直ちに消去されるので、機密漏洩を防止できる。また、画像データの消去を行うか否かを選択できるので、状況によっては消去を行わないようにして消去に要する時間を節約できる。また、画像データを消去する際の消去単位を選択できるので、前記したように画像データ圧縮と並行して画像データ消去を行なったりする際、より適切な消去単位を選択して、画像データ消去時間が圧縮時間内に収まるようにすることができる。
110 コントローラ、111 CPU、115 ASIC、116 ローカルメモリ、117 ハードディスク記憶装置、120 オペレーションパネル、124 エンジン部、132 CPU、133 画像入力デバイス、134 画像入力デバイス、135 フレームメモリ、145 画像圧縮処理部、152 PCI転送コントローラ、155 NV−RAM