(57)【特許請求の範囲】
【請求項１】
原稿画像を読み取る読み取り手段と、読み取った画像データを一旦格納する第１の記憶手段と、前記第１の記憶手段に格納した画像データを第２の記憶手段に転送させ格納させる制御手段と、を備える画像形成装置であって、
長尺読み取り時は、スワップアクセスによるリードデータよりも、画像データの転送を優先させるよう調停する調停手段を備えることを特徴とする画像形成装置。
【請求項２】
前記スワップアクセスのトランザクションか、画像データのトランザクションかは、トランザクション内のデスティネーションアドレスに基づいて判断する判断手段を備えることを特徴とする請求項１記載の画像形成装置。
【請求項３】
前記調停手段は、スワップアクセスのトランザクションと、画像データのトランザクションをそれぞれバッファリングするバッファを備えることを特徴とする請求項１又は２記載の画像形成装置。
【請求項４】
原稿画像を読み取る読み取り手段と、読み取った画像データを一旦格納する第１の記憶手段と、前記第１の記憶手段に格納した画像データを第２の記憶手段に転送させ格納させる制御手段と、を備える画像形成装置の制御方法であって、
長尺読み取り時は、スワップアクセスによるリードデータよりも、画像データの転送を優先させるよう調停するステップを備えることを特徴とする制御方法。
【請求項５】
原稿画像を読み取る読み取り手段と、読み取った画像データを一旦格納する第１の記憶手段と、前記第１の記憶手段に格納した画像データを第２の記憶手段に転送させ格納させる制御手段と、を備える画像形成装置の制御プログラムであって、
長尺読み取り時は、スワップアクセスによるリードデータよりも、画像データの転送を優先させるよう調停する処理をコンピュータに実行させることを特徴とする制御プログラム。
【請求項６】
請求項５記載の制御プログラムの処理を記録するコンピュータ読取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置、制御方法、プログラム及び記録媒体に関し、特に、長尺読み取り時に、スワップアクセスによる画像破綻を回避することが可能な画像形成装置、制御方法、プログラム及び記録媒体に関する。
【背景技術】
【０００２】
コピー機能や、ＦＡＸ機能、プリンタ機能、スキャナ機能等を備えた複合機であるＭＦＰ（Multi Function Printer）は、スキャン動作を行う場合、通常、メインメモリ上に1ページ分（例えばＡ３固定の領域）のメモリ空間を確保してから、スキャンを開始する。しかし、長尺読み取り時には、データ長を前もって知ることはできない。すなわち、例えばＡＤＦ（自動原稿読取装置）に原稿をセットするとＡＤＦ上に設置されたセンサで原稿サイズを自動検知するが、原稿が大きいとセンサによる自動検知ができず、予め原稿サイズを取得することが出来ない。そのため、予めメインメモリにメモリ空間を確保することが出来ず、メモリ空間が足りなくなってしまう虞がある。従って、長尺読み取り時の場合は、一旦メモリに受信したバンド分割したデータをすぐにHDD（Hard Disk Drive）に転送する制御を行っている。
【０００３】
ここで、読み取りデータのライン数で原稿長を判断し、原稿ライン数を含めた符号化コードを符号化コードのヘッダとして生成し、読み取り画像データの符号化を行う原稿読取装置が提案されている（特許文献１）。長尺読み取り時、すなわち画像サイズが未知な場合は、ダミーの仮ライン数でコード生成を行い、エンジン側で符号化を行い、コントローラ側のメモリ容量を著しく低減する。また、原稿の読取りと同時に符号化を開始できるため、原稿を読み終えた時点で、符号化は終了する。符号化データはコントローラ側メモリに格納され、この後、ライン数をエンジン側からコントローラ側に通知する。これにより読取り生産性を著しく向上できる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記のような技術には、以下の問題点がある。
【０００５】
特許文献１に記載の原稿読取装置は、長尺読み取り時のメモリ容量不足に対応しているが、読取り画像データの転送制御中に、CPU（Central Processing Unit）からHDDに対してスワップアクセスが発生した場合については考慮されていない。
【０００６】
ここで、CPU制御用のプログラムファイル全体はHDDに格納されているが、その時に使用しているプログラムのみをメインメモリ（例えばRAM）上にコピーし、メインメモリ上で動作を行う。例えば、現在「使用しているプログラム」をメインメモリからHDDに書き戻して、次に使用するプログラムをHDDからメインメモリにコピーすることをスワッピングと称する。
【０００７】
長尺読み取り中に、CPUからHDDに対して、スワップアクセスが発生した場合、HDDの帯域が消費される。帯域の消費は、メインメモリ上のプログラムをHDDに書き戻して記憶させるときと、HDD上のプログラムを読み出すときに発生する。この際、読み取り画像データが破壊、すなわちバンドメモリ（メインメモリであるＲＡＭ内に持つ領域）からHDDへの画像転送が間に合わずバンドメモリに対して次バンドの画像データが上書きされ、画像破綻を起こす、という問題があった。
【０００８】
スキャナ画像データの入力を一時停止させることで、次バンドの画像データ上書きを回避することが可能ではあるが、長尺原稿の場合、紙を吸い込むADFを原稿の途中で一時停止させたり、再起動させたりすると、紙の折れや、波打ち、ゴムローラーからのズレなど、画像劣化の要因となる課題が発生するため適切ではない。
【０００９】
また、スワップアクセスの頻度や転送データ量を予想することが出来れば、画像データ帯域とスワップアクセス帯域を足した分のHDD帯域を確保しておくことで画像破綻を回避することが出来る。しかしながら、現状ソフトウェアの構成からはこれらを予想するのは困難である。
【００１０】
本発明はこのような状況に鑑みてなされたものであり、長尺読み取り時に、スワップアクセスによる画像破綻を回避することを目的としている。
【課題を解決するための手段】
【００１１】
本発明に係る携帯通信端末は、原稿画像を読み取る読み取り手段と、読み取った画像データを一旦格納する第１の記憶手段と、前記第１の記憶手段に格納した画像データを第２の記憶手段に転送させ格納させる制御手段と、を備える画像形成装置であって、長尺読み取り時は、スワップアクセスによるリードデータよりも、画像データの転送を優先させるよう調停する調停手段を備えることを特徴とする。
【００１２】
本発明に係る制御方法は、原稿画像を読み取る読み取り手段と、読み取った画像データを一旦格納する第１の記憶手段と、前記第１の記憶手段に格納した画像データを第２の記憶手段に転送させ格納させる制御手段と、を備える画像形成装置の制御方法であって、長尺読み取り時は、スワップアクセスによるリードデータよりも、画像データの転送を優先させるよう調停するステップを備えることを特徴とする。
【００１３】
本発明に係る制御プログラムは、原稿画像を読み取る読み取り手段と、読み取った画像データを一旦格納する第１の記憶手段と、前記第１の記憶手段に格納した画像データを第２の記憶手段に転送させ格納させる制御手段と、を備える画像形成装置の制御プログラムであって、長尺読み取り時は、スワップアクセスによるリードデータよりも、画像データの転送を優先させるよう調停する処理をコンピュータに実行させることを特徴とする。
【００１４】
本発明に係る記録媒体は、上記本発明に係る通信制御プログラムの処理を記録するコンピュータ読取り可能な記録媒体である。
【発明の効果】
【００１５】
本発明によれば、長尺読み取り時に、スワップアクセスによる画像破綻を回避することが出来る。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施形態に係る画像読取装置のコントローラ基板の一例を示すブロック構成図である。
【図２】本発明の実施形態に係るコントローラASIC１０３のブロック構成図である。
【図３】本発明の実施形態に係るコントローラASIC１０３におけるアービタ制御を説明するための図である。
【発明を実施するための形態】
【００１７】
以下に、本発明の実施形態について図面を用いて詳細に説明する。なお、以下に述べる実施形態は、本発明の好適な実施形態であるから、技術的に好ましい種々の限定が付されているが、本発明の範囲は、以下の説明において特に本発明を限定する旨の記載がない限り、これらの態様に限られるものではない。
【００１８】
図１は、本発明の実施形態に係る画像読取装置のコントローラ基板の一例を示すブロック構成図である。
【００１９】
本実施形態に係る画像読取装置のコントローラ基板は、スキャナ１０１と、画像処理ASIC（Application Specific Integrated Circuit）１０２と、コントローラASIC１０３と、CPU１０４と、RAM（Random Access Memory）１０５と、HDD１０６と、から構成される。
【００２０】
スキャナ１０１は、原稿の画像データを読み取る読み取り手段である。画像処理ASIC１０２は、読み取った画像データの処理、圧縮を行う画像処理手段である。コントローラASIC１０３は、画像処理ASIC１０２とCPU１０４間、CPU１０４とHDD１０６間、接続する。CPU１０４は、コントローラ基板全体の制御を行う制御手段である。RAM１０５は、読み取った画像データを一次蓄積する。HDD１０６は、読み取った画像データを蓄積する。なおHDD１０６は、CPU１０４のプログラム領域やスワップ領域としても使用される。
【００２１】
スキャナ１０１で読み取った画像データは、画像処理ASIC１０２でシェーディング等の画像処理をされた後、JPEGフォーマットに圧縮される。圧縮された画像データは、PCIe（Peripheral Component Interconnect Express）でCPU１０４に送られ、RAM１０５に一次蓄積される。
【００２２】
RAM１０５には、画像１ページ分（例えばＡ３固定の領域）の領域が確保されているが、読み取った画像データが確保した領域以上であると判断された場合、RAM１０５がオーバーフローを起こす前にそのデータをHDD１０６に転送する。RAM１０５からHDD１０６への転送はCPU１０４及びコントローラASIC１０３を介して行われるが、その転送途中に、CPU１０４からHDD１０６に対して、スワップアクセスが発生する場合がある。
【００２３】
ここで、図２を用いてコントローラASIC１０３について説明する。図２は、コントローラASIC１０３のブロック構成図である。コントローラASIC１０３は、PCIe I/F（Inter Face）２０２、PCIe I/F２０４、PCIe I/F２０３、アービタ２０５、HDD I/F２０６、から構成される。
【００２４】
PCIe I/F２０２は、画像処理ASIC１０２とコントローラASIC１０３とを接続し、画像処理ASIC１０２から画像データを受け取る。PCIe I/F２０４は、CPU１０４とコントローラASIC１０３とを接続し、PCIe I/F ２０２から入力された画像データをＣＰＵ１０４に送る。PCIe I/F２０３は、ＣＰＵ１０４とコントローラASIC１０３とを接続し、CPU１０４からのデータ受信や、HDD I/F２０６から入力されアービタ２０５を介して送られたデータをCPU１０４へ送信する。
【００２５】
アービタ２０５は、CPU２０４側からのコマンドであるトランザクション（transaction）とHDD I/F２０６から還ってくるリードデータ（スワップアクセスによる、HDDから読み出すプログラムデータ）とを調停する調停手段である。PCI I/F２０３から転送されてきたトランザクションは、アービタ２０５を介して、HDD I/F２０６に転送され、HDD１０６に対してアクセスが行われる。
【００２６】
なお、メモリにはNANDメモリ、SSD、を用いても良いし、USB（Universal Serial Bus） I/F上のディスク領域、Ether Net上の格納領域を使用しても良い。
【００２７】
図３は、本実施形態に係るコントローラASIC１０３におけるアービタ制御を説明するための図である。
【００２８】
ＳＥＬ（Selector）302はCPU１０４から転送されてきたトランザクション内のデスティネーションアドレス（destination address；宛先アドレス）に基づき、CPU１０４から転送されてきたトランザクションが画像データかスワップアクセスかを判断する判断手段である。具体的には、デスティネーションアドレスがHDD上のプログラム領域アドレスであった場合はスワップアクセスと判断し、HDD上の画像データ領域アドレスであった場合は画像データと判断する。
【００２９】
符号303は、画像データのトランザクションをバッファリングするバッファである。符号304は、スワップアクセスのトランザクションをバッファリングするバッファである。
【００３０】
MUX（Multiplexer）305は、複数の信号から一つを選択する役割を持ち、具体的には、画像データとスワップアクセスのトランザクションを動作モードに応じて選択してHDD I/Fに出力する。動作モードとは、長尺読み取りモード／定型読み取りモードが想定される。長尺読み取りモードの場合は、画像データのトランザクションを選択する。
【００３１】
動作モードは、レジスタ（Register；データを一時的に保存しておくために用いる小容量で高速なメモリ）や、外部端子などで選択することができる。レジスタを使用する場合は、コントローラASIC内にあるレジスタを選択し、CPUで設定した上で読取を行う。外部端子を使用する場合は、コントローラASICの外部端子にI/O制御ASICを接続した構成になる。CPUによって、I/O制御ASICの外部端子レベルを変化させ、コントローラASICのモード設定端子を変化させ、モードを設定する。
【００３２】
ここで、上述したように、通常の定型読み取り時には、RAM上に1ページ分のメモリ領域（例えばＡ３固定の領域）を確保できるため、HDDの帯域に余裕があるときに、転送を行う。しかしながら、長尺読み取り時にはどれだけのデータが入力されてくるのか予測ができず、全データ分のメモリ領域を確保することが出来ない。長尺とは、Ａ０幅（８４１mm）で３０ｍが想定される。長尺読み取り時とは、例えばＡＤＦにセットされた原稿のサ
イズを検知するセンサが、原稿が大きいためセンサによる自動検知が出来ない場合に、長尺読み取り時と判断しても良い。
【００３３】
HDDの帯域とは、時間内にHDDにデータを書込むことのできる速度、またはHDDからデータを読み出すことのできる速度を指す。例えば3.5インチのHDDの帯域は100Mbps (Mega Byte Per Second)程度であり、スワップアクセスがこの速度を超えて発生すると、画像データの転送を行うことができなくなる。
【００３４】
すなわち、長尺読み取り中にCPUからHDDに対してのスワップアクセスが発生した場合、HDDの帯域が消費され、RAM上の読み取り画像データをHDDに転送する前に、後から転送されてきた画像データに上書きされて、破壊される場合があるという問題がある。
【００３５】
そこで、本実施形態では、長尺読み取り時に画像データの転送を最優先とするために、スワップアクセスのトランザクションが304のバッファ内にバッファリングされている場合でも、303の画像データトランザクションを優先して転送を行うことを特徴とする。
【００３６】
つまり、本実施形態に係るアービタによって、長尺読み取り時にのみCPUからHDDに対するアクセス帯域を制限し、画像データの転送を優先する制御を行う。換言すると、本実施形態に係るアービタは、スワップアクセスによるリードデータ（リードコマンド、トランザクション）が還るのを一旦待たせて、ＣＰＵからのトランザクションを優先させる調停が必要になる。
【００３７】
定型読み取り時には、1ページ分のメモリが確保されており、画像データのトランザクションを優先する必要は無いため、ファーストイン、ファーストアウトでの調停、つまり、先に入力されたトランザクションを先に出力して構わない。
【００３８】
以上により、長尺読み取り時にCPUによるスワップアクセスが発生した場合でも、画像転送帯域を保障し、画像破綻を回避することができる。
【００３９】
なお、各図のフローチャートに示す処理を、ＣＰＵが実行するためのプログラムは本発明によるプログラムを構成する。このプログラムを記録する記録媒体としては、半導体記憶部や光学的及び／又は磁気的な記憶部等を用いることができる。このようなプログラム及び記録媒体を、前述した各実施形態とは異なる構成のシステム等で用い、そこのＣＰＵで上記プログラムを実行させることにより、本発明と実質的に同じ効果を得ることができる。
【００４０】
以上、本発明を好適な実施形態に基づき具体的に説明したが、本発明は上記のものに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることは言うまでもない。
【符号の説明】
【００４１】
１０１    スキャナ
１０２    画像処理ＡＳＩＣ
１０３    コントローラＡＳＩＣ
１０４    ＣＰＵ
１０５    ＲＡＭ
１０６    ＨＤＤ
２０２、２０３、２０４    ＰＣＩｅ Ｉ／Ｆ
２０５    アービタ
２０６    ＨＤＤ Ｉ／Ｆ
３０２    ＳＥＬ
３０３、３０４    バッファ
３０５    ＭＵＸ
【先行技術文献】
【特許文献】
【００４２】
【特許文献１】特開２００８−３０１１８６号公報
【図１】
0005494055.tif 000002
【図２】
0005494055.tif 000003
【図３】
0005494055.tif 000004