(57)【要約】【課題】データの転送用メモリへの入力速度が確定しているか否かを考慮して、画像転送用メモリの有効利用を図ることができるデータ処理装置を提供する。【解決手段】入力されたジョブのデータを記憶するデータ転送用のメモリ５と、前記メモリから転送されてきた前記データを圧縮する圧縮手段７１〜７４と、前記メモリ５から転送されてきたデータを印字する印字手段３と、前記データの前記メモリへの入力速度が確定しているか否かに応じて、前記データのメモリへの記憶に際して確保すべき記憶容量を設定する制御手段１０とを備えたことを特徴とする。【選択図】  図２
2004358909.tif 000002
【特許請求の範囲】
【請求項１】
入力されたジョブのデータを記憶するデータ転送用のメモリと、
前記メモリから転送されてきた前記データを圧縮する圧縮手段と、
前記メモリから転送されてきたデータを印字する印字手段と、
前記データの前記メモリへの入力速度が確定しているか否かに応じて、前記データのメモリへの記憶に際して確保すべき記憶容量を設定する制御手段と、
を備えたことを特徴とするデータ処理装置。
【請求項２】
前記制御手段は、前記メモリに記憶されるデータが、前記メモリから圧縮手段を介して再度メモリに転送され、印字手段によって印字される２部目以降のデータか否かに応じて、確保すべき記憶容量を設定する請求項１に記載のデータ処理装置。
【請求項３】
前記制御手段は、データのメモリへの入力速度が確定していない場合は、１ページ分の記憶容量を確保するためのフルページメモリ制御を行い、データのメモリへの入力速度が確定している場合は、１ページ分の記憶容量を確保する必要のないリングバッファ制御を行う請求項１に記載のデータ処理装置。
【請求項４】
データのメモリへの入力速度が確定している場合は、前記印字手段により異なるページが現在出力されている時に限り、前記制御手段は、出力中のページの出力速度と前記入力速度の関係により、１ページ分の記憶容量が確保されていなくても、出力による記憶領域の空きを予測して記憶容量を確保する請求項１に記載のデータ処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、例えば複写機能、プリンタ機能、スキャナ機能、ファクシミリ機能などの多機能を備えた複合機であるＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｒｏｄｕｃｔｓ）等に用いられるデータ処理装置に関する。
【０００２】
【従来の技術】
上記のようなＭＦＰは、多機能を実現するために、複数の入力手段、例えばパーソナルコンピュータ（以下、パソコンという）等の外部装置からネットワークを介して送られてくるプリントジョブを受信する受信部や、ファクシミリ（以下ＦＡＸという）装置等の外部装置から通信回線網を介して送られてくるＦＡＸジョブを受信する受信部や、原稿を読み取るための原稿読取部等を備えている。
【０００３】
また、前記原稿読取部で読み取った画像データや前記外部装置からのプリントデータ等を印字するプリンタ部等を備えている。また、各入力手段から入力されたデータを記憶するファイルメモリを備えている。
【０００４】
このファイルメモリへ蓄積されるデータの記憶容量を小さくするために、一般には、データを圧縮及び伸張する圧縮／伸張器が設けられている。そして、入力されたデータは、圧縮／伸張器に転送されて圧縮され、この圧縮されたデータがファイルメモリに蓄積されるものとなされている。
【０００５】
このようなＭＦＰにおいて、前記各入力部から入力されたデータを、前記プリンタ部や圧縮／伸張器等に転送するために、入力されたデータを一旦記憶する転送用のメモリが設けられ、各データはこの転送用のメモリを経由して各部へ転送されるものとなされている。
【０００６】
従来、前記入力部から入力されたデータの転送用メモリへの記憶に際しては、データのメモリへの入力速度にかかわらず、常時１ページ分の記憶容量（空き領域）を確保した上で、メモリへのデータ転送入力を開始していた。
【０００７】
例えば、プリンタ部で印字するデータのメモリへの入力速度が確定していない場合はもとより、確定している場合において、異なるページのデータ出力転送中に新たなページのデータ入力転送を開始しようとする場合においても、１ページ分の記憶容量が確保できない限り、データの転送入力を開始しなかった。
【０００８】
このように、従来では、データのメモリへの入力速度にかかわらず常時１ページ分のデータに相当する記憶容量を確保するために、次ジョブの展開用にメモリを解放できず、次ジョブのプリントが待たされるという問題があった。
【０００９】
なお、下記特許文献１には、印字実行中に生じる印字バッファ内の部分的な空き記憶領域を有効利用し、印字処理を高速化する技術が提案されている。
【００１０】
また、下記特許文献２には、画像データの展開処理予測時間と転送速度とを比較して、前者が長い場合には印刷処理速度を低速モードに切り替える技術が提案されている。
【００１１】
【特許文献１】
特開１９９８−１９８５３５号公報
【００１２】
【特許文献２】
特開２０００−７９７２７号公報
【００１３】
【発明が解決しようとする課題】
しかしながら、上記特許文献１、特許文献２の技術は、データの転送用メモリへの入力速度が確定しているか否かを考慮して、画像転送用メモリの有効利用を図るものではなかった。
【００１４】
この発明は、このような技術的背景に鑑みてなされたものであって、データの転送用メモリへの入力速度が確定しているか否かを考慮して、画像転送用メモリの有効利用を図ることができるデータ処理装置の提供を課題とする。
【００１５】
【課題を解決するための手段】
上記課題は、入力されたジョブのデータを記憶するデータ転送用のメモリと、前記メモリから転送されてきた前記データを圧縮する圧縮手段と、前記メモリから転送されてきたデータを印字する印字手段と、前記データのメモリへの入力速度が確定しているか否かに応じて、前記データのメモリへの記憶に際して確保すべき記憶容量を設定する制御手段と、を備えたことを特徴とするデータ処理装置によって解決される。
【００１６】
このデータ処理装置では、データのメモリへの入力速度が確定しているか否かに応じて、制御手段が前記データのメモリへの記憶に際して確保すべき記憶容量を設定するから、例えばデータのメモリへの入力速度が確定している場合には、より少ない記憶容量を確保することができ、メモリの有効利用が可能となる。
【００１７】
前記データ処理装置において、前記制御手段は、前記メモリに記憶されるデータが、前記メモリから圧縮手段を介して再度メモリに転送され、印字手段によって印字される２部目以降のデータか否かに応じて、確保すべき記憶容量を設定する構成としても良い。
【００１８】
転送用メモリから圧縮手段を介して再度メモリに転送され、印字手段によって印字される２部目以降のデータについては、メモリへの入力速度が必ず確定しているので、制御手段は、２部目以降のデータか否かを把握することにより、データのメモリへの入力速度が確定しているかいないかを判断することができる。
【００１９】
また、前記制御手段による制御の一例として、データのメモリへの入力速度が確定していない場合は、１ページ分の記憶容量を確保するためのフルページメモリ制御を行い、データのメモリへの入力速度が確定している場合は、１ページ分の記憶容量を確保する必要のないリングバッファ制御を行うものとしても良い。
【００２０】
この場合には、データのメモリへの入力速度が確定していれば、リングバッファ制御により、１ページ分の記憶容量を確保する必要がないから、その分メモリの有効利用が図れる。
【００２１】
また、データのメモリへの入力速度が確定している場合は、前記印字手段により異なるページが現在出力されている時に限り、前記制御手段は、出力中のページの出力速度と前記入力速度の関係により、１ページ分の記憶容量が確保されていなくても、出力による記憶領域の空きを予測して記憶容量を確保する構成としても良い。
【００２２】
この場合には、１ページ分の記憶容量が確保されていなくても、出力による記憶領域の空きを予測して記憶容量が確保されるから、必要な記憶容量が確保されるまで待たなくてもメモリへの入力処理を開始でき、メモリの有効利用を図れる。
【００２３】
【発明の実施の形態】
次に、この発明の一実施形態について説明する。
【００２４】
図１は、この発明の一実施形態に係るデータ処理装置としてのＭＦＰ１のブロック図である。
【００２５】
このデータ処理装置は、複数個の入力手段と複数個の出力手段を備えている。即ち、入力手段としての原稿読取部２及び外部コントローラインターフェース部（図面では、外部コントローラＩ／Ｆと記す）１２と、出力手段としてのプリンタ部３と、入力手段及び出力手段の両方として機能するイーサネット（ＥｔｈｅｒＮｅｔ）コントローラ４と、同じく入力手段及び出力手段の両方として機能するＦＡＸコントローラ１１を備えている。
【００２６】
前記原稿読取部２は、原稿を読み取るためのスキャナを備え、読み取った原稿の画像データは、読取画像インターフェース部（図面ではＩＲ画像Ｉ／Ｆと記す）２１を介して、バス調停器８に送られるものとなされている。前記外部コントローラインターフェース部１２は、図示しない外部コントローラからのプリントジョブを受信する。前記プリンタ部３は、バス調停器８から転送されてきた画像データを用紙等にプリントする。
【００２７】
また、前記イーサネットコントローラ４は、イーサネット３０を介してジョブの送受を行うものであり、パソコンやＩＦＡＸ装置等の外部装置４０からイーサネット４１を介して送信されてきたプリントジョブやＩＦＡＸジョブを受信し、あるいは原稿読取部２で読み取った原稿の画像データを、イーサネット４１を介して外部装置４０へ送信する。
【００２８】
また、前記ＦＡＸコントローラ１１は、電話回線５１を介して外部ＦＡＸ装置５０との間でＦＡＸジョブの送受を行うものであり、外部ＦＡＸ装置５０から電話回線５１を介して送信されてきたＦＡＸジョブを受信し、あるいは原稿読取部２で読み取った原稿の画像データを、電話回線５１を介して外部ＦＡＸ装置５０へＦＡＸ送信する。
【００２９】
さらに、ＭＦＰ１は、ワークメモリ５、ファイルメモリ６、圧縮・伸張制御部７、前述したバス調停器８、ＣＰＵ９、メモリコントローラＰＣＩブリッジ１０を備えている。
【００３０】
前記ワークメモリ５は、イーサネットコントローラ４が受信した外部装置４０からのプリントジョブに含まれるプリントデータ、ＦＡＸコントローラ１１が受信したＦＡＸ受信ジョブに含まれるデータ、あるいは原稿読取部２で読み取られた画像データ、等の出力対象データを展開したり、他のデータを記憶したりするものである。
【００３１】
前記圧縮・伸張制御部７は、この実施形態では並列接続された４個の圧縮／伸張器７１〜７４を備え、これら圧縮／伸張器７１〜７４を制御して、前記出力対象データの圧縮及び伸張を前記圧縮／伸張器７１〜７４に行わせる。
【００３２】
前記ファイルメモリ６は、圧縮／伸張器７１〜７４で圧縮された出力対象データを蓄積保存する。
【００３３】
前記バス調停器８は、転送制御部８１によって、前記出力対象データのＭＦＰ内の各部への転送を行うものである。
【００３４】
前記メモリコントローラＰＣＩブリッジ１０は、ワークメモリ５に対するデータの入力及び出力状態等を制御するとともに、ＣＰＵ９のバスとＰＣＩバスとを接続するものである。また、メモリコントローラＰＣＩブリッジ１０は、出力されるジョブが１部目の出力か２部目以降の出力か等を判断する機能も有する。
【００３５】
前記ＣＰＵ９は、メモリコントローラＰＣＩブリッジ１０、転送制御部８１、圧縮・伸張制御部７等、ＭＦＰ１の全体を統括的に制御する。
【００３６】
図１に示したＭＦＰ１において実行可能なジョブは、コピヤジョブ、スキャンジョブ、内部プリンタジョブ、外部コントローラプリントジョブ、ＦＡＸ送信ジョブ、ＦＡＸ受信ジョブである。これら各ジョブについて、データの流れとしては、データ入力とデータ出力がある。
【００３７】
また、本実施形態では、コピヤジョブ、内部プリンタジョブ、外部コントローラプリントジョブ、ＦＡＸ受信ジョブにおいて、データ入力とデータ出力（プリンタ部３によるプリント）とが同期するときの生産性向上のために、１部目のプリントに限り、ワークメモリ５に転送されたデータをそのまま出力する。従って、データがプリントされるときの転送経路は、１部目のプリントと２部目以降のプリントとで相違する。
【００３８】
前記各ジョブについて、データの流れを説明すると次の通りである。
［データ入力］
コピヤジョブ、スキャンジョブ、ＦＡＸ送信ジョブについては、原稿読取部２で読み取られた画像データが、読取画像インターフェース部２１を介してワークメモリ５に転送され、さらに圧縮・伸張制御部７に転送されて圧縮され、ファイルメモリ６に記憶される。
【００３９】
内部プリンタジョブについては、外部装置４０からイーサネット４１を経由して送信されてきたプリントデータがイーサネットコントローラ４で受信され、ワークメモリ５に展開されたのち、圧縮・伸張制御部７に転送されて圧縮され、ファイルメモリ６に記憶される。
【００４０】
ＦＡＸ受信ジョブについては、電話回線５１を介して外部ＦＡＸ装置５０から送られてきた画像データが、ＦＡＸコントローラ１１で受信され、ワークメモリ５に転送され、次いで、圧縮・伸張制御部７に転送されて圧縮され、ファイルメモリ６に記憶される。
【００４１】
外部コントローラプリントジョブについては、図示しない外部コントローラから送られてきたプリントデータが、外部コントローラインターフェース部１２で受信され、ワークメモリ５に展開されたのち、圧縮・伸張制御部７に転送されて圧縮され、ファイルメモリ６に記憶される。
［データ出力］
コピヤジョブ、内部プリンタジョブ、外部コントローラプリントジョブ、ＦＡＸ受信ジョブの１部目プリントについては、ワークメモリ５からプリンタインターフェース部３１を経由してプリンタ３に転送され、プリントされる。
【００４２】
コピヤジョブ、内部プリンタジョブ、外部コントローラプリントジョブ、ＦＡＸ受信ジョブの２部目以降のプリントについては、ファイルメモリ６から読み出された圧縮データが、圧縮・伸張制御部７で伸張され、ワークメモリ５、プリンタインターフェース部３１を経由してプリンタ部３に転送され、プリントされる。
【００４３】
スキャンジョブについては、ファイルメモリ６から読み出された圧縮データが、圧縮・伸張制御部７で伸張され、ワークメモリ５を経由してイーサネットコントローラ４へ転送され、イーサネット４１を介してパソコン等の外部装置４０へと送信される。
【００４４】
ＦＡＸ送信ジョブについては、ファイルメモリ６から読み出された圧縮データが、圧縮・伸張制御部７で伸張され、ワークメモリ５を経由してＦＡＸコントローラ１１へ転送され、電話回線５１を介して外部ＦＡＸ装置５０へと送信される。
【００４５】
図１に示したＭＦＰ１において、ワークメモリ５へのぺージ入力が開始されるときに、メモリコントローラＰＣＩブリッジ１０が行う記憶容量を確保するためのメモリ確保起動処理の内容を図２のフローチャートを参照して説明する。
【００４６】
この処理は、定期的にコールされるものとする。
【００４７】
まず最初にＳ１０１で、ジョブのデータが入力中かどうか判断する、データ入力中でなければ（Ｓ１０１の判断がＮＯ）、Ｓ１０２で、ぺージ入力の起動要求（圧縮／伸張器７１〜７４の使用要求）が存在するかどうか判断する。存在していなければ（Ｓ１０２の判断がＮＯ）、そのまま何も処理をせずに終了する。
【００４８】
ぺージ入力の起動要求が存在していれば（Ｓ１０２の判断がＹＥＳ）、次のＳ１０３でスキャンジョブの入力かどうか判断する。スキャンジョブの場合は原稿読取部２から画像を入力するため入力速度は確定している。また、具体的な画像データの流れとしては、ワークメモリ５に１ページ分の画像を格納後、圧縮・伸張制御部７にバンド単位で転送して圧縮処理を行ってファイルメモリ６に格納し、さらにバンド単位で伸張してファイルメモリ６からワークメモリ５に転送して、イーサネット４１を経由して外部装置４０に出力する。従って、できるだけ早くワークメモリ５に画像を入力する必要がある。
【００４９】
そこで、スキャンジョブの入力要求であれば（Ｓ１０３の判断がＹＥＳ）、まずＳ１１１で、このスキャンジョブのデータについてワークメモリ５に確保すべき記憶容量（スキャン確保サイズともいう）を１ぺージフルサイズとする。そして、Ｓ１４１で、計算されたスキャン確保サイズが残りの記憶容量（残りサイズともいう）より大きいか否かを判断する。
【００５０】
スキャン確保サイズの方が小さければ（Ｓ１４１の判断がＮＯ）、直ちに入力可能なためＳ１４６に移行し、ぺージ入力起動とぺージ入力起動要求のリセットと入力バンド数のクリヤ処理を行う。
【００５１】
スキャン確保サイズの方が大きい場合は（Ｓ１４１の判断がＹＥＳ）、Ｓ１４２でプリント中かどうかの判断を行う。プリント中であれば（Ｓ１４２の判断がＹＥＳ）、プリント画像出力によるメモリ解放量も加味してメモリ確保処理を行うために、Ｓ１４３へ移行し、不足する記憶容量（不足サイズともいう）の計算を行い、さらにＳ１４４で、予測確保計算処理のサブルーチン（詳細は後述）をコールして、予測確保が可能かどうかの判断を行う。
【００５２】
Ｓ１４２においてプリント中でなければ（Ｓ１４２の判断がＮＯ）プリンタ部３に何らかの要因でエラーが発生してワークメモリ５を解放できない状態になっているため、このエラーが解除されるまで待ち状態となる。
【００５３】
前記Ｓ１４４の予測計算処理の詳細を以下に示す。
【００５４】
入力開始から最終バンドの入力開始までの時間に画像出力により解放される量が、入力開始しようとした時に確保できなかった不足サイズ分以上あれば良いので、以下にその計算方法を示す。
【００５５】
入力開始から最終バンド入力開始までの時間をＴＩとする。この時間ＴＩは、入力速度と画像サイズにより計算できる。
【００５６】
１バンド当たりの出力時間をＴＢＰとすると、現時点でのプリント出力バンドは後述する図３のＳ２２２で計算されているので、残り出力時間と単位時間のワークメモリ解放量と残り解放量は以下のように計算できる。なお、１バンド当たりの出力時間ＴＢＰは、出力速度と１バンドのライン数から計算できる。
【００５７】
残り出力時間＝ＴＢＰ×（出力全バンド数−出力完了バンド数）
単位時間当たり解放量＝１バンド当たりの解放量／ＴＢＰ
残り解放量＝プリント確保サイズ×（出力全バンド数−出力完了バンド数）／出力全バンド数
最終的に計算されるワークメモリ５の最終解放確定量は以下の式で計算できる。
【００５８】
・ＴＩ＜残り出力時間の時
最終解放確定量＝単位時間当たりの出力解放量×ＴＩ
・ＴＩ＞＝残り出力時間の時
最終解放確定量＝残り解放量
従って、最終解放確定量＞＝不足サイズとなった時に、予測確保フラグをセットし、最終解放確定量＜不足サイズとなった時に、予測確保フラグをリセットする。
【００５９】
図２の説明に戻って、上記予約確保計算により入力開始可能であれは予約確保フラグがセットされるため、Ｓ１４５で、このフラグが設定されているかどうか判断する。セットされていれば（Ｓ１４５の判断がＹＥＳ）、Ｓ１４６へ移行し前述と同様の処理を行う。フラグがセットされていない場合は（Ｓ１４５の判断がＮＯ）、プリント出力の進行によるメモリの解放を待つ。
【００６０】
次に、Ｓ１０３で、スキャンジョブ以外のジョブの入力である時（Ｓ１０３の判断がＮＯ）の処理について説明する。
【００６１】
Ｓ１０５で、そのジョブのデータのワークメモリ５に対する入力速度が確定しているかどうか判断する、本案施形態では入力速度が確定している入力としてはぺージ単位の入カとし、以下の３つの種類がある。
【００６２】
１．原稿読取部２からＩＲ画像インターフェース部２１を介してワークメモリ５へ入力されるもの
２．外部コントローラから外部コントローラインターフェース部１２を介してワークメモリ５へ入力されるもの
３．ファイルメモリ５から圧縮・伸張制御部（伸張処理）７で圧縮及び伸張され、ワークメモリ５へ入力されるもの
なお、上記３に関しては、画像出力時の動作であるが、ワークメモリ５の記憶容量を確保する必要があるのでこれも入力として取り扱う。
【００６３】
また、ワークメモリ５に対する入力速度が確定していない入力としては、ぺージ単位でない入力（バンド単位の入力）であり、以下の２つがある。
【００６４】
１．外部装置４０からイーサネット４１及びイーサネットコントローラ４を介してワークメモリ５へ入力されるもの
２．外部ＦＡＸ装置５０から電話回線５１及びＦＡＸコントローラ１１を介してワークメモリ５へ入力されるもの
入力速度が確定していれば（Ｓ１０５の判断がＹＥＳ）、入力とプリントとを同期する必要があるため、Ｓ１２１とＳ１２２でプリント中でないかつプリント可能状態かどうかの判断を行い、両方の条件成立で（Ｓ１２１の判断がＮＯかつＳ１２２の判断がＹＥＳ）、Ｓ１２３へ移行し、このジョブのデータについてワークメモリ５に確保すべき記憶容量（プリント確保サイズともいう）のサイズを、１ページ分のデータの記憶容量サイズよりも小さいリングバッファサイズとする。両方の条件が成立していなければ（Ｓ１２１の判断がＹＥＳまたはＳ１２２の判断がＮＯ）、待ち状態とする。
【００６５】
前記リングバッファサイズは、入力速度と出力速度の比率により計算できる（詳細は後述する）。Ｓ１０５において、入力速度が確定していなければ（Ｓ１０５の判断がＮＯ）、Ｓ１３１でプリント確保サイズを１ページ分フルサイズとする。
【００６６】
次に、Ｓ１５０で、上記プリント確保サイズが残りサイズより小さいか否かを判断する。小さければ（Ｓ１５０の判断がＹＥＳ）、入力可能であるのでＳ１４６へ移行し前述と同様の処理を行う。残りサイズより大きければ（Ｓ１５０の判断がＮＯ）、待ち状態とする。
【００６７】
Ｓ１０１で、ジョブのデータが入力中であれば（Ｓ１０１の判断がＹＥＳ）、Ｓ１６１で、現在の入力ライン数から、入力完了バンド数を加算すべきかどうかの判断をする、具体的には、入カライン数を１バンドのライン数（本実施形態では２５６とする）で割った値がバンド数となるので、これが入力完了バンド数より大きいかどうか判断する。Ｓ１６１の条件が成立すれば（Ｓ１６１の判断がＹＥＳ）、Ｓ１６２で入力完了バンド数を加算する。この出力値は、後述のぺージ出力起動メモリ解放処理の出力起動判断条件に用いられる。また、入力ライン数は入力実行動作に応じて常時更新されるものとする。
【００６８】
以下にリングバッファサイズの計算を示す。
【００６９】
リングバッファのバンド数をＮ、入力及び出力の全バンド数をＭ、１バンド当たりの入力時間をＴＢＩ、１バンド当たりの出力時間をＴＢＰとする。
【００７０】
１バンド入力完了後に出力を開始するとして、入力の最終バンド開始時にリングバッファの１周前の出力が完了していれば良いので、以下の条件式が成立するＮを計算すれば良い。
【００７１】
ＴＢＩ×（Ｍ−２）＞ＴＢＰ×（Ｍ−Ｎ）
上記式よりＮを求める式に直すと、
ＴＢＩ×Ｍ−２×ＴＢＩ＞ＴＢＰ×Ｍ−ＴＢＰ×Ｎ
この式を変形すると、
ＴＢＰ×Ｎ＞ＴＢＰ×Ｍ−ＴＢＩ×Ｍ＋２×ＴＢＩ
となり、Ｎについて求めると、
Ｎ＞Ｍ×（１−ＴＢＩ／ＴＢＰ）＋２×ＴＢＩ／ＴＢＰ
となる。
【００７２】
ここで、入力速度をＶＩ、出力速度をＶＰとすると、ＴＢＩ／ＴＢＰ＝ＶＰ／ＶＩとなるので、以下の式で最終釣なリングバッファのバンド数が計算できる。
【００７３】
Ｎ＞Ｍ×（１−ＶＰ／ＶＩ）＋２×ＶＰ／ＶＩ
一例として、入力の速度ＶＩを２００ｍｍ／ｓｅｃ、出力の速度を１５０ｍｍ／ｓｅｃ、１バンドのライン数を２５６ラインとして、Ａ３画像４２０ｍｍを６００ｄｐｉで入力し出力する場合を考えると、
Ｍ＝４２０／２５．４×６００／２５６＝３８．７５＝３９バンド
となるので
Ｎ＞３９×（１−１５０／２００）＋２×１５０／２００＝１１．２５＝１２バンド（切り上げ）となる。
【００７４】
従って、フルバッファ３９バンドに対してリングバッファでは１２バンドと１／３のメモリ容量でデータの入出力が可能となり、メモリの記憶容量の節約が実現でき、メモリの有効利用が可能となる。
【００７５】
次に、図１に示したＭＦＰ１において、メモリコントローラＰＣＩブリッジ１０が行うぺージ出力起動及びメモリ解放処理のフローチャートを図３に示す。
【００７６】
この処理は、定期的にコールされるものとする。
【００７７】
まず、Ｓ２０１で、プリンタ部３によるプリント中かどうか判断する。プリント中でなければ（Ｓ２０１の判断がＮＯ）、Ｓ２０２に移行しプリント起動要求が存在するか否かの判断を行う。
【００７８】
プリント起動要求がなければ（Ｓ２０２の判断がＮＯ）、何もせずに終了する。プリント起動要求があれば（Ｓ２０２の判断がＹＥＳ）、Ｓ２１１で、１部目のプリント中かどうか判断する。１部目プリント中であれば（Ｓ２１１の判断がＹＥＳ）、Ｓ２３１で、要求されたぺージの入力速度が確定しているかどうか判断する。この判断は上述のジョブの画像入力がぺージ単位かバンド単位かで判断できる。１部目プリント中でなければ（Ｓ２１１の判断がＮＯ）、データは必ずぺージ単位でファイルメモリ６→ワークメモリ５の経路で転送されるので、入力速度は必ず確定しているのでＳ２３１の判断は不要であり、Ｓ２３２に進む。また、Ｓ２３１において、入力速度が確定している場合も（Ｓ２３１の判断がＹＥＳ）、Ｓ２３２に進む。
【００７９】
入力速度が確定している場合は、１ぺージの入力完了を侍たずして出力起動が可能であるので、Ｓ２３２で１バンドの入力が完了しているかどうか判断して、完了していれば（Ｓ２３２の判断がＹＥＳ）、Ｓ２３５で出力起動と出力起動要求のリセットと出力完了バンド数のクリヤ処理を行う。本実施形態においては、入力速度は出力速度よりも必ず速い又は等しいと想定しているので、１バンド入力完了した後に出力を開始すれば出力が入力を追い越すことはない。
【００８０】
Ｓ２３１で入力速度が確定していなければ（Ｓ２３１の判断がＮＯ）、１ページ分の記憶容量を確保するためのフルページメモリ制御となるので、Ｓ２３３で１ぺージの入力完了を待っての出力起動となる。
【００８１】
Ｓ２０１においてプリント中であれば（Ｓ２０１の判断がＹＥＳ）、Ｓ２２１で、現在の出力ライン数より出力完了バンド数を加算すべきかどうかの判断を行う。具体的には、出力ライン数を１バンドのライン数（本案施形態では２５６とする）で割った値がバンド数となるので、これが出力完了バンド数より大きいかどうか判断する。
【００８２】
Ｓ２２１の条件が成立すれば（Ｓ２２１の判断がＹＥＳ）、Ｓ２２２で出力完了バンド数を加算し、Ｓ２２３にて記憶容量の残りサイズに１バンド解放分のサイズを加算する。この出力値は、前述の入力開始メモリ確保起動処理に用いられる。また、出力ライン数はプリント実行動作に応じて常時更新されるものとする。
【００８３】
次に、図４、図５、図６を用いて、１ページ分の記憶容量を確保するためのフルページメモリ制御、１ページ分の記憶容量を確保する必要のないリングバッファ制御、予測確保制御における記憶容量確保（専有）状態を説明する。
【００８４】
図４は、フルページメモリ制御時のワークメモリ５に対するデータの入力と出力の関係を示す具体例である。この例では、５バンドの入出力バッファを設け、５バンドの入力の確定後に出力する。この制御は、上述の入力速度が確定していない場合に適用される。
【００８５】
図５は、リングバッファ制御時のワークメモリ５に対するデータの入力と出力の関係を示す具体例である。この例では、３バンドのリングバッファを設け、１バンドの入力の確定後に出力する。また、４バンド目の入力時には、１バンド目の出力が完了していることから、このリングバッファ制御が成り立つ。本例では、入力と出力の速度が等しい場合を示しているが、上述の計算式により入力と出力の速度が異なる時も計算により容易にリングバッファ制御が実現できる。
【００８６】
図６は、予測確保制御時のワークメモリ５に対するデータの入力と出力の関係を示す具体例である。この例では、入力と出力のぺージは異なる場合であり、入力開始時には５バンドのメモリ確保を必要とするが、３バンドのみしか確保できない。しかし、現在出力中のぺージによりメモリが解放されることを計算により求め、３バンドのみの確保で入力を開始する。不足の２バンドに関しては、入力の途中に出力中のぺージの出力によりメモリが解放されるタイミングで割り当てられる。
【００８７】
以上説明した具体的実施形態には、以下の構成を有する発明が含まれる。
（１）データがスキャンジョブのデータである請求項４に記載のデータ処理装置。
（２）入力されたジョブのデータをデータ転送用のメモリに記憶するステップと、
前記メモリから転送されてきた前記データを圧縮するステップと、
前記メモリから転送されてきたデータを印字するステップと、
前記データの前記メモリへの入力速度が確定しているか否かに応じて、前記データのメモリへの記憶に際して確保すべき記憶容量を設定する制御ステップと、
を備えたことを特徴とするデータ処理方法。
（３）前記制御ステップにおいて、前記メモリに記憶されるデータが、圧縮後に再度メモリに転送され印字される２部目以降のデータか否かに応じて、確保すべき記憶容量を設定する（２）に記載のデータ処理方法。
（４）前記制御ステップにおいて、データのメモリへの入力速度が確定していない場合は、１ページ分の記憶容量を確保するためのフルページメモリ制御を行い、データのメモリへの入力速度が確定している場合は、１ページ分の記憶容量を確保する必要のないリングバッファ制御を行う（２）に記載のデータ処理方法。
（５）データのメモリへの入力速度が確定している場合は、前記印字ステップにより異なるページが現在出力されている時に限り、前記制御ステップにおいて、出力中のページの出力速度と前記入力速度の関係により、１ページ分の記憶容量が確保されていなくても、出力による記憶領域の空きを予測して、確保すべき記憶容量設定する（２）に記載のデータ処理方法。
【００８８】
【発明の効果】
この発明は、上述の次第で、データのメモリへの入力速度が確定しているか否かに応じて、制御手段が前記データのメモリへの記憶に際して確保すべき記憶容量を設定するから、例えばデータのメモリへの入力速度が確定している場合には、より少ない記憶容量を確保すれば良く、メモリの有効利用が可能となる。その結果、次ジョブのデータ展開用の記憶領域を十分に確保することができ、次ジョブのデータ入力待ち時間を短くすることが可能となる。
【００８９】
また、前記制御手段は、前記メモリに記憶されるデータが、前記メモリから圧縮手段を介して再度メモリに転送され、印字手段によって印字される２部目以降のデータか否かに応じて、確保すべき記憶容量を設定する構成となされている場合には、２部目以降のデータについては、メモリへの入力速度が必ず確定しているので、制御手段は、２部目以降のデータか否かを把握することにより、データのメモリへの入力速度が確定しているかいないかを判断することができる。
【００９０】
また、前記制御手段による制御の一例として、データのメモリへの入力速度が確定していない場合は、１ページ分の記憶容量を確保するためのフルページメモリ制御を行い、データのメモリへの入力速度が確定している場合は、１ページ分の記憶容量を確保する必要のないリングバッファ制御を行うものとなされている場合には、データのメモリへの入力速度が確定していれば、リングバッファ制御により、１ページ分の記憶容量を確保する必要がないから、その分メモリの有効利用を図ることができる。
【００９１】
また、データのメモリへの入力速度が確定している場合は、前記印字手段により異なるページが現在出力されている時に限り、前記制御手段は、出力中のページの出力速度と前記入力速度の関係により、１ページ分の記憶容量が確保されていなくても、出力による記憶領域の空きを予測して、記憶容量を確保する構成となされているときは、１ページ分の記憶容量が確保されていなくても、出力による記憶領域の空きを予測して記憶容量が確保されるから、必要な記憶容量が確保されるまで待たなくてもメモリへの入力処理を開始でき、メモリの有効利用を図ることができる。
【図面の簡単な説明】
【図１】この発明の一実施形態に係るデータ処理装置の構成を示すブロック図である。
【図２】図１のデータ処理装置におけるメモリ確保起動処理の内容を示すフローチャートである。
【図３】同じく、ぺージ出力起動及びメモリ解放処理の内容を示すフローチャートである。
【図４】フルページメモリ制御時のワークメモリに対するデータ入力と出力の関係を説明するための図である。
【図５】リングバッファ制御時のワークメモリ５に対するデータの入力と出力の関係を説明するための図である。
【図６】予測確保制御時のワークメモリ５に対するデータの入力と出力の関係を説明するための図である。
【符号の説明】
１            ＭＦＰ（データ処理装置）
２                    原稿読取部
３                    プリンタ部
４                    イーサネットコントローラ
５                    ワークメモリ
６                    ファイルメモリ
７                        圧縮／伸張制御部
７１〜７４        圧縮／伸張器
８１                    転送制御部
９                        ＣＰＵ
１０                    メモリコントローラ（制御手段）
１１                    ＦＡＸコントローラ
５０                    外部ＦＡＸ装置
【図１】
2004358909.tif 000003
【図２】
2004358909.tif 000004
【図３】
2004358909.tif 000005
【図４】
2004358909.tif 000006
【図５】
2004358909.tif 000007
【図６】
2004358909.tif 000008