JP2004171466A - Image data storage device - Google Patents

Image data storage device Download PDF

Info

Publication number
JP2004171466A
JP2004171466A JP2002339412A JP2002339412A JP2004171466A JP 2004171466 A JP2004171466 A JP 2004171466A JP 2002339412 A JP2002339412 A JP 2002339412A JP 2002339412 A JP2002339412 A JP 2002339412A JP 2004171466 A JP2004171466 A JP 2004171466A
Authority
JP
Japan
Prior art keywords
data
memory
backup
storage device
image data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2002339412A
Other languages
Japanese (ja)
Inventor
Shoji Imaizumi
祥二 今泉
Taketoshi Nakao
竹寿 中尾
Masatomo Matsubara
正知 松原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Minolta Co Ltd
Original Assignee
Minolta Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Minolta Co Ltd filed Critical Minolta Co Ltd
Priority to JP2002339412A priority Critical patent/JP2004171466A/en
Publication of JP2004171466A publication Critical patent/JP2004171466A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)
  • Power Sources (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide an image data storage device capable of actually extending a backup time to a volatile memory without losing data. <P>SOLUTION: This device comprises a volatile memory 10 having a plurality of memory blocks 1, 2, 3, and 4, so that the backup of the individual memory blocks 1, 2, 3 and 4 is performed by the use of a backup power source 610. This device further comprises power supply control means 600, 641, 651, 661, and 671 capable of controlling the power supply to the individual memory blocks. Data are transferred among the memory blocks 1, 2, 3, and 4 so that at least one memory block becomes empty on the basis of reference information obtained from the nonvolatile memory 10. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
この発明は画像データ記憶装置に関する。より詳しくは、複数のメモリブロックを有する揮発性メモリを備え、上記揮発性メモリの個々のメモリブロックに対して電源供給を行うようになっている画像データ記憶装置に関する。
【0002】
【従来の技術】
MFP(マルチ・ファンクション・ペリフェラルズ(Multi Function Peripherals)の略で、効率的なオフィス業務を提供するために、コピー、ファクシミリ、プリンタ、スキャナなどの機能を1台に集約した機器を指す。)などに代表される画像処理装置では、画像データを記憶するためにDRAM(ダイナミック・ランダム・アクセス・メモリ)を備えることが多い。DRAMは、揮発性メモリであり、定期的にリフレッシュを行わないと記憶内容が消去されてしまう。そこで、画像処理装置の本体の主電源(メインスイッチ)がオフになったりコンセントが抜かれたときでも、定期的にリフレッシュ動作を行ってデータの消失を防止するように、DRAMに対してバックアップ用電源による電源供給がなされる(これを「バックアップ」という。)。このバックアップ用電源としては、ニッケルカドミウム等の2次電池やリチウム電池等の1次電池が用いられている。
【0003】
従来は、例えばファクシミリ装置において、DRAMを複数のブロックに分けておき、データを格納していないブロックについてバックアップを停止する方式(これを「第1の方式」と呼ぶ。)や、バックアップ用電源の電圧が低下した場合には、その程度に応じて、より重要度の低いブロックからバックアップを停止する方式(これを「第2の方式」と呼ぶ。)が知られている(例えば、特許文献1参照。)。これにより、同一容量の電源であっても、DRAMに対するバックアップの時間をより長くしたり、また、重要なデータについてはバックアップの時間を長くすることを図っている。
【0004】
【特許文献1】
特開平5−91225号公報(第1頁、要約書)
【0005】
【発明が解決しようとする課題】
しかしながら、通常のメモリ管理によれば、ジョブの受け付け順に応じてデータを格納すべきメモリ領域が確保され、ジョブの実行完了とともにそのメモリ領域が解放される。このジョブの受け付け順とジョブの実行完了順とは異なる場合があるため、通常動作時にはDRAMの複数のブロック全部にわたって画像データが断片化して格納される。このため、上述の第1の方式では、実際にはバックアップを停止できるブロックが発生せず、DRAMに対するバックアップ時間を長くする効果が得られないという問題がある。また、第2の方式では、DRAMに対するバックアップ時間を長くするために一部のデータが失われるという問題がある。
【0006】
そこで、この発明の課題は、データを失うことなく、実際に揮発性メモリに対するバックアップ時間を長くすることができる画像データ記憶装置を提供することにある。
【0007】
【課題を解決するための手段】
上記課題を解決するため、請求項1に記載の画像データ記憶装置は、
複数のメモリブロックを有する揮発性メモリを備え、上記揮発性メモリの個々のメモリブロックに対してバックアップ用電源を用いてバックアップを行うようになっている画像データ記憶装置であって、
上記揮発性メモリの個々のメモリブロックに対して電源供給を制御し得る電源供給制御手段と、
上記複数のメモリブロック間でデータを転送するためのデータ転送手段と、
上記揮発性メモリから得られる参照情報に基づいて、少なくとも1つのメモリブロックが空きメモリブロックとなるように上記データ転送手段を制御するバックアップ制御手段とを備えたことを特徴とする。
【0008】
なお、「バックアップ」とは、揮発性メモリに対してバックアップ用電源からの電源供給を行って、上記揮発性メモリの記憶内容を保持することを意味する。例えば装置の主電源(メインスイッチ)がオフになったりコンセントが抜かれたりした時や、停電時には、バックアップを行って揮発性メモリの記憶内容を保持するものとする。
【0009】
また、上記揮発性メモリの「メモリブロック」は、個々に電源供給が行われる限り、任意の単位を取り得る。例えば、1枚の基板に複数個のDRAMチップが搭載され、それらのDRAMチップに対して個々に電源供給が行われる場合は、各DRAMチップが単位となる。また、1枚の基板に複数個のメモリチップを搭載してなるメモリユニットを複数備え、各メモリユニットに対して個々に電源供給が行われる場合は、各メモリユニットが単位となる。
【0010】
「空きメモリブロック」とは、上記揮発性メモリのメモリブロックであって、記憶しているデータが無いもの(または、後述するバックアップ対象に該当するデータが無いもの)を意味する。
【0011】
この請求項1の画像データ記憶装置では、バックアップ制御手段が、揮発性メモリから得られる参照情報に基づいて、少なくとも1つのメモリブロックが空きメモリブロックとなるようにデータ転送手段を制御する。このバックアップ制御手段による制御に応じて、データ転送手段は、上記揮発性メモリの複数のメモリブロック間でデータを転送する。ここで、電源供給制御手段は、揮発性メモリの個々のメモリブロックに対して電源供給を制御し得るようになっている。したがって、上記データ転送手段によるデータ転送によって少なくとも1つの空きメモリブロックが生じれば、電源供給制御手段は、その空きメモリブロックに対して電源供給を停止することができる。
【0012】
また、上記揮発性メモリの複数のメモリブロック間で転送されたデータは、転送先のメモリブロックで保持される。したがって、データが失われることはない。
【0013】
このように、この発明のデータ記憶装置は、揮発性メモリから得られる参照情報に基づいて、少なくとも1つのメモリブロックが空きメモリブロックとなるように上記揮発性メモリの複数のメモリブロック間でデータを転送する。したがって、通常動作時に複数のメモリブロック全部にわたって画像データが断片化して格納されている場合であっても、実際に空きメモリブロックを発生させることができ、その空きメモリブロックに対して電源供給を停止することができる。したがって、バックアップを開始したとき、限られた容量のバックアップ用電源を用いていても、実際に上記揮発性メモリに対するバックアップ時間を長くすることができる。
【0014】
上記バックアップ制御手段による制御や上記データ転送手段によるデータ転送は、バックアップ開始前に実行するのが望ましい。バックアップ用電源を極力消費しないようにするためである。
【0015】
例えば、上記バックアップ制御手段による制御や上記データ転送手段によるデータ転送は、この画像データ記憶装置がMFPなどの画像処理装置に適用された場合は、印字不可(トナーエンプティ、ペーパエンプティ)などの所定のイベントが発生した時点で実行しても良い。
【0016】
請求項2に記載の画像データ記憶装置は、請求項1に記載の画像データ記憶装置において、上記バックアップ制御手段は、上記データ転送手段によるデータ転送によって少なくとも1つの空きメモリブロックが生じるか否かを判断して、少なくとも1つの空きメモリブロックが生じる場合にのみ上記データ転送手段にデータ転送を実行させることを特徴とする。
【0017】
この請求項2の画像データ記憶装置では、上記バックアップ制御手段は、上記データ転送手段によるデータ転送によって少なくとも1つの空きメモリブロックが生じるか否かを判断して、少なくとも1つの空きメモリブロックが生じる場合にのみ上記データ転送手段にデータ転送を実行させる。すなわち、上記データ転送手段によるデータ転送を実行しても空きメモリブロックが生じない場合は、複数のメモリブロック間でのデータ転送は行われない。したがって、バックアップ時間を長くするのに寄与しないような無駄なデータ転送は行われず、無駄な電力が消費されない。
【0018】
請求項3に記載の画像データ記憶装置は、請求項1に記載の画像データ記憶装置において、上記参照情報は上記揮発性メモリが記憶しているデータの量と格納位置を表す情報であることを特徴とする。
【0019】
この請求項3の画像データ記憶装置では、上記揮発性メモリが記憶しているデータの量と格納位置を表す情報に基づいて、少なくとも1つのメモリブロックが空きメモリブロックとなるように上記揮発性メモリの複数のメモリブロック間でデータを転送することができる。したがって、通常動作時に複数のメモリブロック全部にわたって画像データが断片化して格納されている場合であっても、空きメモリブロックを的確に発生させることができる。
【0020】
請求項4に記載の画像データ記憶装置は、請求項1に記載の画像データ記憶装置において、上記参照情報は上記揮発性メモリが記憶しているデータの種類を表す情報であり、上記バックアップ制御手段は、上記揮発性メモリが記憶しているデータの種類がバックアップ対象に該当するときのみ、そのデータを上記データ転送手段による転送の対象とすることを特徴とする。
【0021】
なお、「バックアップ対象」に該当するデータを「バックアップ対象データ」と呼ぶ。例えば、ファクシミリ(FAX)によって受信したジョブに関する画像データは、「バックアップ対象データ」とされる場合が多い。一方、コピージョブやプリントジョブに関する画像データは、ユーザ自身が同じジョブを再び容易に指示できるので、「バックアップ対象データ」ではないとされる場合が多い。
【0022】
この請求項4の画像データ記憶装置では、上記揮発性メモリが記憶しているデータのうちバックアップ対象データのみを上記データ転送手段による転送の対象とする。したがって、バックアップ対象データは、転送されたときは転送先のメモリブロックで保持され、転送されないときは元のメモリブロックで保持される。一方、バックアップ対象データに該当しないデータ、つまり不要なデータは、転送の対象とならず、元のメモリブロックに残される。この元のメモリブロックに残されているのが「バックアップ対象データに該当しないデータ」のみとなったときは、この元のメモリブロックは空きメモリブロックになったものとして扱われて、この元のメモリブロックに対する電源供給が停止される。
【0023】
このように、この画像データ記憶装置は、上記揮発性メモリが記憶しているデータのうちバックアップ対象データのみを上記データ転送手段による転送の対象とするので、無駄なデータ転送は行われず、無駄な電力が消費されない。
【0024】
請求項5に記載の画像データ記憶装置は、請求項1に記載の画像データ記憶装置において、上記バックアップ制御手段は、上記データ転送手段によるデータ転送の実行時には上記複数のメモリブロックに対する外部からのデータの書き込みを少なくとも禁止することを特徴とする。
【0025】
なお、「外部」とは、上記複数のメモリブロック以外の要素を指す。
【0026】
この請求項5の画像データ記憶装置では、上記バックアップ制御手段は、上記データ転送手段によるデータ転送の実行時には上記複数のメモリブロックに対する外部からのデータの書き込みを少なくとも禁止する。したがって、例えば上記複数のメモリブロック間で転送されるデータと外部からのデータとが混在することが無く、メモリ管理が容易に行われる。
【0027】
例えば、上記データ転送手段によるデータ転送の実行時には、新たなジョブを受け付けないものとする。これにより、上記複数のメモリブロックに対して外部からデータが書き込まれるのを有効に防止できる。
【0028】
なお、上記複数のメモリブロックに対する外部からのデータの書き込みに併せて、外部からのデータの読み出しおよび消去を禁止しても良い。そのようにした場合、メモリ管理がさらに容易に行われる。
【0029】
【発明の実施の形態】
以下、この発明を図示の実施の形態により詳細に説明する。
【0030】
図1は、本発明を適用したMFP(マルチ・ファンクション・ペリフェラルズ(Multi Function Peripherals))の概略ブロック構成を示している。
【0031】
このMFP1000は、コピー、ファクシミリ、プリンタ、ネットワークスキャナなどの機能を1台に集約した機器であり、各機能はそれぞれアプリケーションプログラム(以下、単に「アプリケーション」という。)を利用して実現されている。大別すると、このMFP1000は、ユーザがこの機器を操作するための操作パネル700と、この機器全体の制御を司るCPU(中央演算処理装置)600と、原稿画像を光学的に読み取ってデジタル画像データに変換して出力するスキャナ100と、ネットワークに接続するためのNIC(ネットワーク・インターフェイス・カード)300と、デジタル画像データを用紙上に印字出力(画像形成)するプリンタ200と、FAX送受信を行うためのFAXボード400と、データを記憶するための揮発性メモリとしてのDRAM(ダイナミック・ランダム・アクセス・メモリ)10と、このDRAM10に対するメモリ管理を行うメモリ制御部500と、このDRAM10に対する電源供給を制御する電源供給制御手段としての電源供給制御部650とを備えている。
【0032】
このMFP1000は、NIC300を介してネットワーク上のPC(パーソナル・コンピュータ)群800との間でデータの送受信が可能となっている。送受信される主なデータとしては、このMFP1000がネットワークスキャナとして機能したときのPC800へのスキャンデータ転送や、このMFP1000がプリンタとして機能するときのPC800からのプリントアウト指示などがある。
【0033】
また、このMFP1000は、FAXボード400を介して電話回線に接続可能となっており、電話回線網900を通して他の機器との間でFAXデータなどの送受信が可能となっている。
【0034】
メモリ制御部500は、スキャナ100が出力した画像データを一旦保存するスキャナ入力バッファ530と、NIC300を介して入力された画像データを一旦保存する外部I/F入力バッファ540と、これらの入力バッファ530,540に保存されたデータを圧縮する圧縮器510を備えている。
【0035】
圧縮器510により圧縮されたデータは、DRAM10内のコピージョブ、スキャンジョブ、プリントジョブデータ領域570に格納される。この例では、コピージョブ、スキャンジョブ、プリントジョブデータは、停電時にデータ保証をする必要がないため、バックアップ対象データには該当しないものとして取り扱われる。
【0036】
このコピージョブ、スキャンジョブ、プリントジョブデータは、必要なタイミングに応して伸張器520によって伸張される。伸張器520により伸張されたデータは、用途に応じて、例えばプリンタ出力バッファ560に一旦保存され後、プリンタ200による印字出力に用いられる。または、PC800へ転送される場合には、外部I/F出力バッファ550に一旦保存された後、NIC300を介してPC800へ転送される。
【0037】
一方、電話回線900とFAXボード400を通して受信されたFAX受信データは、DRAM10内の、上記データ領域570とは異なるFAXジョブ受信データ領域580に格納される。また、スキャナ100で読み取られた画像データは、FAX送信されるべき場合はFAX送信データとして、圧縮器510で圧縮された後、DRAM10内のFAXジョブ送信データ領域590に格納される。この例では、これらのFAX受信データおよびFAX送信データは、停電時にデータ保証をする必要があるため、バックアップ対象データに該当するものとして取り扱われる。
【0038】
なお、FAX送信データについては、ユーザ自身が同じものを再び容易に作成できるから、バックアップ対象データには該当しないものとして取り扱っても良い。その場合、ユーザは、操作パネル700を通して指示を入力し、バックアップ対象データをFAX受信データのみに限定するものとする。このように、バックアップ対象データを最小限に限定することによって、バックアップを開始したとき、バックアップ用電源の電力消費を抑制できる。したがって、限られた容量のバックアップ用電源を用いていても、DRAM10に対するバックアップ時間を長くすることができる。
【0039】
具体的には、メモリ制御部500の動作は、CPU600が図示しないDMA(ダイレクト・メモリ・アクセス)へのレジスタ設定を行ってデータの転送を制御することにより行われる。
【0040】
スキャナ入力バッファ530、外部I/F入力バッファ540、外部I/F出力バッファ550、プリンタ出力バッファ560、コピージョブ、スキャンジョブ、プリントジョブデータ領域570、FAXジョブ受信データ領域580、FAXジョブ送信データ領域590は、全てDRAM10上にマッピングされている。
【0041】
上述のコピー、ファクシミリ、プリンタ、ネットワークスキャナの機能を実現するためのアプリケーションは、ユーザの操作等に基づく要求が生じる毎に、メモリ制御部500の制御によって圧縮データをDRAM10上に保存していく。メモリ制御部500は各アプリケーションから要求があった順に画像データを格納していくため、DRAM10には各アプリケーションのための画像データが断片化して混在した状態で格納される。なお、各アプリケーンョン毎にそれぞれ連続した一定のメモリ領域を確保する考え方もあるが、或るアプリケーションに瞬間的に偏りが生じたときに処理できる最大ジョブ数の制限を受けるため、メモリ管理上好ましくない。
【0042】
一方、DRAM10に格納された画像データ(圧縮データ)は、
コピーの場合はコピー出力完了時、
ネットワークスキャナの場合はスキャンデータ転送完了時、
プリンタの場合はプリント出力完了時、
ファクシミリ送信の場合はFAXデータ送信完了時、
ファクシミリ受信の場合はFAX受信データプリント完了時
に、それぞれ保持しておく必要がなくなるため、消去される。
【0043】
通常は、コピージョブとプリントジョブに関するデータは、プンリタエンジンが印字可能状態であれば、長時間メモリ上に留まることなく消去されていく。同様に、スキャンジョブに関するデータも、送信相手さえあれば、長時間メモリ上に留まることなく消去されていく。一方、FAX送受信に関するデータは、送信相手との通信が確立できなかったり、メモリ一括送信や親展プリント機能が指示されたりする場合があるため、長時間にわたってメモリ上に保持されることが多い。この結果、メモリ上に書き込まれる順番と消去される順番とが異なることになる。したがって、MFP1000がしばらくの期間動作すると、DRAM10には、各アプリケーションのための画像データが断片化して格納された領域の間に、データが格納されていない空き領域(例えば図5(B−1)(C−1)中にブランクで示す領域)が生ずる。そして、これが定常的な状態となる。
【0044】
図2は電源供給制御手段としての電源供給制御部650の構成を示している。
【0045】
DRAM10は、複数(この例では4個)のメモリブロック1,2,3,4に分けられ、各メモリブロック毎に独立して動作可能になっている。各メモリブロック1,2,3,4には、それぞれCPU600によって制御されるスイッチ641,651,661,671が直列に接続されている。
【0046】
直列接続のメモリブロック1とスイッチ641、メモリブロック2とスイッチ651、メモリブロック3とスイッチ661、メモリブロック4とスイッチ671に対して、商用電源620が共通に接続されるとともに、直列接続のバックアップ用電源としてのバックアップ電池(例えばニッケルカドミウム電池)610とノーマルオン型のリレースイッチ630とが共通に接続されている。
【0047】
通常動作時は、CPU600の制御によって、リレースイッチ630はオフされるとともに、スイッチ641,651,661,671がオンされている。これにより、商用電源620から個々のメモリブロック1,2,3,4に対して電源供給が行われる。
【0048】
一方、商用電源620がオフになったりコンセントが抜かれたりした時や、停電時によって商用電源620からの電源供給が受けられなくなった場合は、リレースイッチ630がオンする。CPU600の制御によって、スイッチ641,651,661,671が個々にオン、オフされるようになっている。これにより、個々のメモリブロック1,2,3,4に対してバックアップ電池610からの電源供給が可能になっている。なお、停電状態であることは、図示しない停電検出センサによってCPU600へ通知される構成となっている。
【0049】
また、CPU600は、アドレスバスとデータバスとを介して個々のメモリブロック1,2,3,4に対してアクセスが可能になっている。そして、CPU600はデータ転送手段として働いて、メモリブロック間1,2,3,4でデータを自由に転送することができる(具体的には、データ転送はDMAを介在して行うが、ここでの説明は割愛する。)。
【0050】
また、CPU600はバックアップ制御手段として働いて、DRAM10から得られる参照情報に基づいて、少なくとも1つのメモリブロック1,2,3,4が空きメモリブロックとなるようにデータ転送を制御する。
【0051】
図3はCPU600による具体的な制御のフロー(メインルーチン)を示している。
【0052】
i) まず、停電、印字不可などのバックアップ開始原因となるイベントが発生したか否かをチェックする(S1)。「印字不可」とは、エンジンステータス変更(例えばペーパーエンプティ、トナーエンプティ、トラブル、ウォームアップ中、スリープ中など)などの何らかの要因によってプリンタエンジンが印字不可状態になったことを意味する。なお、どのようなイベントをバックアップ開始原因とするかは、ユーザニーズに応じて、操作パネル700からの指示により設定変更可能になっている。
【0053】
イベントが発生していない場合には(S2でNO)、イベント待ちの状態を維持する。
【0054】
ii) 一方、イベントが発生して処理要求があった場合には(S2でYES)、DRAM10の状態を参照し、得られた参照情報に基づいてデータ転送判定処理を行う(S3)。
【0055】
この例では、DRAM10から得られる「参照情報」は、DRAM10、つまり各メモリブロック1,2,3,4が記憶しているデータの量と格納位置と種類を表すものとする。
【0056】
データの「種類」に応じて、そのデータが「バックアップ対象データ」であるか否かが定められる。この例では、ファクシミリ(FAX)ジョブに関するFAX受信データ、FAX送信データは、既述のようにバックアップ対象データに該当するものとされている。一方、コピージョブ、スキャンジョブ、プリントジョブデータは、バックアップ対象データには該当しないものとされている。
【0057】
詳しくは後述するが、この「データ転送判定処理」では、メモリブロック1,2,3,4間でのデータ転送によって少なくとも1つの空きメモリブロックが生じるか否か等を判断する。上述の参照情報に基づいて判断を行うことにより、空きメモリブロックを的確に発生させることができる。
【0058】
iii) そして、このデータ転送判定処理によって、バックアップ時間延長の効果があり(S4でYES)、かつデータ転送が必要であると判定された場合(S5でYES)にのみ、メモリブロック1,2,3,4間でのデータ転送を開始する(S6)。バックアップ時間延長の効果がある場合であるから、データ転送が終了したら(S7でYES)、メモリブロック1,2,3,4のうち少なくとも1つが空きメモリブロックになっている。そこで、CPU600の制御によって、その空きメモリブロックに対応するスイッチ(スイッチ641,651,661,671のいずれか)をオフして、その空きメモリブロックに対する電源供給を停止する(S8)。したがって、バックアップを開始したとき、限られた容量のバックアップ電池610を用いていても、実際にDRAM10に対するバックアップ時間を長くすることができる。
【0059】
iv) 一方、上記データ転送判定処理(図3のS3)によって、バックアップ時間延長の効果がない(S4でNO)と判断されたときは、ステップS1へ戻ってイベントの発生を待つ。
【0060】
v) また、上記データ転送判定処理(図3のS3)によって、バックアップ時間延長の効果があるが(S4でYES)、データ転送が必要ではない(S5でNO)と判断されたときは、データ転送を行わなくても、既にメモリブロック1,2,3,4のうち少なくとも1つが空きメモリブロックになっている。そこで、CPU600の制御によって、その空きメモリブロックに対応するスイッチ(スイッチ641,651,661,671のうち少なくとも1つ)をオフして、その空きメモリブロックに対する電源供給を停止する(S8)。したがって、バックアップを開始したとき、限られた容量のバックアップ電池610を用いていても、実際にDRAM10に対するバックアップ時間を長くすることができる。
【0061】
なお、この図3の処理は、実際のバックアップ開始前に実行するのが望ましい。バックアップ電池610を極力消費しないようにするためである。
【0062】
図4は上述のデータ転送判定処理(図3のS3)のフローを詳細に示している。図5のメモリマップを参照しながら、この処理を次に説明する。
【0063】
i) まず最初に、バックアップ対象データに関する容量計算を行う(S11)。つまり、メモリブロック1,2,3,4に格納されているデータのうちバックアップ対象データに該当するものの合計容量(これを「バックアップ対象データ容量」と呼ぶ)を計算する。
【0064】
ii) 次に、そのバックアップ対象データ容量に基づいて、バックアップされるべきメモリブロックの数を削減できるか否かを判断する(S12)。例えば、各メモリブロック1,2,3,4が1MBの容量であり、4個のメモリブロックで最大4MBのデータを保存できるものと仮定する。その場合、バックアップ対象データ容量が3MB以下であれば、少なくとも1つのメモリブロックを空きメモリブロックにすることができ、バックアップされるべきメモリブロックの数を削減できることが分かる。
【0065】
iii) このステップS12で、例えば図5(D−1)に示すように、バックアップ対象データ容量が3MBを超えていれば、バックアップされるべきメモリブロックの数を削減不可能であるため、削減の「効果なし」と判定する(S19)。そして、メインルーチンへ戻る。この場合、図5(D−2)に示すように、データ転送は行われず、全てのメモリブロック1,2,3,4に対して電源供給が維持される。削減の「効果なし」と判定された場合は、複数のメモリブロック間でのデータ転送は行われない。したがって、バックアップ時間を長くするのに寄与しないような無駄なデータ転送は行われず、無駄な電力が消費されない。
【0066】
iv) 一方、ステップS12で、バックアップ対象データ容量が3MB以下であれば、バックアップされるべきメモリブロックの数を削減可能であるから、削減の「効果あり」と判定する(S13)。
【0067】
v) 続いて、メモリブロック1,2,3,4におけるデータの配置(格納位置)をチェックして(S14)、空きメモリブロックを発生させるためにデータ転送が必要であるか否かを判断する(S15)。
【0068】
vi) このステップS15で、例えば図5(A−1)に示すように、バックアップ対象データがメモリブロック1,2,3のみに存在し、メモリブロック4がこの時点で空きメモリブロックになっている場合は、データ転送不要と判定する(S17)。そして、メインルーチンへ戻る。この場合、データ転送を行わなくても、図5(A−2)に示すようにメモリブロック4に対して電源供給を停止することができる(電源供給が停止されたメモリブロックを破線で示す。以下同様。)。したがって、バックアップを開始したとき、限られた容量のバックアップ電池610を用いていても、実際にDRAM10に対するバックアップ時間を長くすることができる。しかも、メモリブロック1,2,3に対する電源供給を維持すれば、バックアップ対象データを失うことはない。
【0069】
vii) 一方、ステップS15で、例えば図5(B−1),図5(C−1)に示すように、バックアップ対象データ容量が3MB以下(実際には2MB以下)であり、かつバックアップされるべきメモリブロックの数を削減できる場合は、データ転送必要と判定する(S16)。
【0070】
例えば、図5(B−1)の例では、図5(B−2)に示すようにバックアップ対象データをメモリブロック番号の若い方へ集める方針で、メモリブロック3に格納されているデータe、データfの転送元アドレスと転送先アドレスを求める処理を行っている。このように単純な方針を採用した場合、アドレスを求める処理を簡素化できる。
【0071】
一方、図5(C−1)の例では、データ転送に必要な電力消費をできるだけ抑えるためにデータ転送を最小にする方針で、転送元アドレスと転送先アドレスを求める処理を行っている。データ転送量を最小にするためには、各メモリブロック毎にバックアップ対象データ容量を計算して、図5(C−2)に示すようにバックアップ対象データ容量の少ないメモリブロックからバックアップ対象データ容量の多いメモリブロック(つまり空き領域が少ないメモリブロック)へ転送すれば良い。この例ではメモリブロック1からメモリブロック2へデータa,bを転送している。この場合、アドレスを求める処理は、狙いの空き容量が確保できるまで繰り返し行う。
【0072】
viii) そして最後に、データ転送元アドレスとデータ転送先アドレスを計算して、データ転送を実行するための情報を準備する(S18)。この後、図3のメインルーチンへ戻る。
【0073】
データ転送の結果、例えば図5(B−1)から図5(B−2)のようになった場合、また、図5(C−1)から図5(C−2)のようになった場合は、それぞれバックアップされるべきメモリブロックの数を2個に削減できる。したがって、バックアップを開始したとき、限られた容量のバックアップ電池610を用いていても、実際にDRAM10に対するバックアップ時間を長くすることができる。しかも、メモリブロック間で転送されたバックアップ対象データは、転送先のメモリブロックで保持される。したがって、バックアップ対象データが失われることはない。
【0074】
なお、メモリブロック1,2,3,4間でのデータ転送の実行時にはメモリブロック1,2,3,4に対する外部からのデータの書き込み、読み出しおよび消去を禁止するのが望ましい。例えば、メモリブロック1,2,3,4間でのデータ転送の実行時には、新たなジョブを受け付けないものとする。これにより、メモリブロック1,2,3,4に対して外部からデータが書き込まれるのを有効に防止できる。そのようにした場合、メモリブロック1,2,3,4間で転送されるデータと外部からのデータとが混在することが無く、メモリ管理が容易に行われる。
【0075】
この実施形態では、揮発性メモリとしてDRAMをバックアップする例について述べたが、当然ながらこれに限られるものではない。本発明は例えばSRAM(スタティック・ランダム・アクセス・メモリ)をバックアップする場合にも同様に適用することができる。
【0076】
【発明の効果】
以上より明らかなように、この発明の画像データ記憶装置によれば、データを失うことなく、実際に揮発性メモリに対するバックアップ時間を長くすることができる。
【図面の簡単な説明】
【図1】この発明の一実施形態の画像データ記憶装置を適用したMFPの概略構成を示す図である。
【図2】上記MFPの電源供給制御部の構成を示す図である。
【図3】上記MFPのCPUによる制御のフロー(メインルーチン)を示す図である。
【図4】上記メインルーチンにおけるデータ転送判定処理のフロー(サブルーチン)を示す図である。
【図5】メモリブロックでのデータの取り扱いを模式的に説明する図である。
【符号の説明】
1,2,3,4 メモリブロック
10 DRAM
500 メモリ制御部
600 CPU
610 バックアップ電池
641,651,661,671 スイッチ
650 電源供給制御部
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an image data storage device. More specifically, the present invention relates to an image data storage device that includes a volatile memory having a plurality of memory blocks and supplies power to each memory block of the volatile memory.
[0002]
[Prior art]
MFP (abbreviation for Multi Function Peripherals), which refers to a device in which functions such as copying, facsimile, printer, and scanner are integrated into one unit in order to provide efficient office work. An image processing apparatus typified by an image processing apparatus often includes a DRAM (Dynamic Random Access Memory) for storing image data. The DRAM is a volatile memory, and the stored contents are erased unless the refresh is performed periodically. Therefore, even when the main power supply (main switch) of the main body of the image processing apparatus is turned off or the outlet is unplugged, a backup power supply is provided to the DRAM so as to periodically perform a refresh operation to prevent data loss. (This is referred to as “backup”). As this backup power supply, a secondary battery such as nickel cadmium or a primary battery such as a lithium battery is used.
[0003]
Conventionally, for example, in a facsimile apparatus, a method in which a DRAM is divided into a plurality of blocks and backup is stopped for blocks that do not store data (this is called a "first method") or a backup power supply is used. When the voltage drops, there is known a method of stopping backup from a block of lower importance according to the degree (this is called a “second method”) (for example, Patent Document 1). reference.). As a result, even if the power supplies have the same capacity, the backup time for the DRAM is made longer, and the backup time for important data is made longer.
[0004]
[Patent Document 1]
JP-A-5-91225 (page 1, abstract)
[0005]
[Problems to be solved by the invention]
However, according to normal memory management, a memory area in which data is to be stored is secured according to the order in which jobs are received, and the memory area is released upon completion of job execution. Since the order in which the jobs are accepted may be different from the order in which the jobs are completed, the image data is fragmented and stored over all of the plurality of blocks of the DRAM during normal operation. For this reason, in the above-mentioned first method, there is a problem that no block in which the backup can be actually stopped does not occur, and the effect of extending the backup time for the DRAM cannot be obtained. Further, the second method has a problem that part of data is lost in order to lengthen the backup time for the DRAM.
[0006]
Therefore, an object of the present invention is to provide an image data storage device capable of actually extending the backup time for a volatile memory without losing data.
[0007]
[Means for Solving the Problems]
In order to solve the above problem, an image data storage device according to claim 1 is provided.
An image data storage device comprising a volatile memory having a plurality of memory blocks, and performing backup using a backup power supply for each memory block of the volatile memory,
Power supply control means capable of controlling power supply to individual memory blocks of the volatile memory;
Data transfer means for transferring data between the plurality of memory blocks;
Backup control means for controlling the data transfer means such that at least one memory block becomes a free memory block based on reference information obtained from the volatile memory.
[0008]
Note that "backup" means that power is supplied from a backup power supply to the volatile memory to retain the contents stored in the volatile memory. For example, when the main power supply (main switch) of the apparatus is turned off or the outlet is disconnected, or at the time of a power failure, backup is performed to retain the stored contents of the volatile memory.
[0009]
The “memory block” of the volatile memory can take an arbitrary unit as long as power is individually supplied. For example, when a plurality of DRAM chips are mounted on one substrate and power is individually supplied to the DRAM chips, each DRAM chip is a unit. When a plurality of memory units each including a plurality of memory chips mounted on one substrate are provided, and power is individually supplied to each memory unit, each memory unit is a unit.
[0010]
The “empty memory block” means a memory block of the volatile memory, which has no stored data (or has no data corresponding to a backup target described later).
[0011]
In the image data storage device according to the first aspect, the backup control unit controls the data transfer unit based on the reference information obtained from the volatile memory so that at least one memory block becomes a free memory block. The data transfer means transfers data between the plurality of memory blocks of the volatile memory according to the control by the backup control means. Here, the power supply control means can control the power supply to each memory block of the volatile memory. Therefore, when at least one empty memory block is generated by the data transfer by the data transfer unit, the power supply control unit can stop the power supply to the empty memory block.
[0012]
Data transferred between the plurality of memory blocks of the volatile memory is held in the transfer destination memory block. Therefore, no data is lost.
[0013]
As described above, the data storage device of the present invention stores data between the plurality of memory blocks of the volatile memory based on the reference information obtained from the volatile memory such that at least one memory block becomes a free memory block. Forward. Therefore, even when the image data is stored in a fragmented manner over all of the plurality of memory blocks during the normal operation, an empty memory block can be actually generated, and the power supply to the empty memory block is stopped. can do. Therefore, when the backup is started, the backup time for the volatile memory can be actually lengthened even if a limited capacity backup power supply is used.
[0014]
It is desirable that the control by the backup control means and the data transfer by the data transfer means are executed before the start of backup. This is to minimize the consumption of the backup power supply.
[0015]
For example, when the image data storage device is applied to an image processing apparatus such as an MFP, the control by the backup control means and the data transfer by the data transfer means may be performed in a predetermined manner such as a printing failure (toner empty or paper empty). It may be executed when an event occurs.
[0016]
The image data storage device according to claim 2 is the image data storage device according to claim 1, wherein the backup control unit determines whether at least one free memory block is generated by the data transfer by the data transfer unit. It is characterized in that the data transfer means performs data transfer only when at least one free memory block is generated.
[0017]
In the image data storage device according to the second aspect, the backup control means determines whether or not at least one free memory block is generated by data transfer by the data transfer means, and determines whether at least one free memory block is generated. Only causes the data transfer means to execute data transfer. That is, if no empty memory block is generated even when the data transfer by the data transfer unit is performed, the data transfer between the plurality of memory blocks is not performed. Therefore, useless data transfer that does not contribute to lengthening the backup time is not performed, and useless power is not consumed.
[0018]
The image data storage device according to claim 3 is the image data storage device according to claim 1, wherein the reference information is information indicating an amount and a storage position of the data stored in the volatile memory. Features.
[0019]
4. The image data storage device according to claim 3, wherein the volatile memory is configured such that at least one memory block is a free memory block based on information indicating an amount of data stored in the volatile memory and a storage position. Can be transferred between a plurality of memory blocks. Therefore, even when the image data is stored in a fragmented manner over all of the plurality of memory blocks during the normal operation, an empty memory block can be accurately generated.
[0020]
The image data storage device according to claim 4, wherein the reference information is information indicating a type of data stored in the volatile memory, and the backup control unit Is characterized in that, only when the type of data stored in the volatile memory corresponds to a backup target, the data is to be transferred by the data transfer unit.
[0021]
Note that data corresponding to “backup target” is referred to as “backup target data”. For example, image data related to a job received by facsimile (FAX) is often referred to as “backup target data”. On the other hand, image data related to a copy job or a print job is often not considered to be “backup target data” because the user himself can easily designate the same job again.
[0022]
In the image data storage device according to the fourth aspect, only the data to be backed up among the data stored in the volatile memory is to be transferred by the data transfer means. Therefore, the backup target data is held in the transfer destination memory block when transferred, and is held in the original memory block when not transferred. On the other hand, data that does not correspond to backup target data, that is, unnecessary data, is not transferred and remains in the original memory block. If only the “data not applicable to backup target data” is left in this original memory block, this original memory block is treated as a free memory block and this original memory block is The power supply to the block is stopped.
[0023]
As described above, the image data storage device sets only the data to be backed up among the data stored in the volatile memory as the data to be transferred by the data transfer means. No power is consumed.
[0024]
6. The image data storage device according to claim 5, wherein the backup control unit is configured to execute the external data transfer to the plurality of memory blocks when executing the data transfer by the data transfer unit. Is forbidden at least.
[0025]
Note that “external” refers to an element other than the plurality of memory blocks.
[0026]
In the image data storage device according to the fifth aspect, the backup control unit at least prohibits external data writing to the plurality of memory blocks when the data transfer unit executes data transfer. Therefore, for example, data transferred between the plurality of memory blocks and external data are not mixed, and memory management is easily performed.
[0027]
For example, it is assumed that a new job is not accepted when data transfer is performed by the data transfer unit. This effectively prevents data from being externally written to the plurality of memory blocks.
[0028]
Note that reading and erasing of data from the outside may be prohibited along with writing of the data from the outside to the plurality of memory blocks. In such a case, memory management is more easily performed.
[0029]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, the present invention will be described in detail with reference to the illustrated embodiments.
[0030]
FIG. 1 shows a schematic block configuration of an MFP (Multi Function Peripherals) to which the present invention is applied.
[0031]
The MFP 1000 is a device in which functions such as copying, facsimile, printer, and network scanner are integrated into one unit, and each function is realized by using an application program (hereinafter, simply referred to as “application”). Broadly speaking, the MFP 1000 includes an operation panel 700 for a user to operate the device, a CPU (Central Processing Unit) 600 for controlling the entire device, and digital image data obtained by optically reading a document image. A scanner 100 for converting and outputting to a network, an NIC (Network Interface Card) 300 for connecting to a network, a printer 200 for printing out (image forming) digital image data on paper, and performing FAX transmission and reception. FAX board 400, a DRAM (Dynamic Random Access Memory) 10 as a volatile memory for storing data, a memory control unit 500 for managing the memory of the DRAM 10, and a power supply to the DRAM 10 Power supply control means And a control unit 650.
[0032]
The MFP 1000 can transmit and receive data to and from a PC (personal computer) group 800 on a network via the NIC 300. The main data transmitted and received includes scan data transfer to PC 800 when MFP 1000 functions as a network scanner, and printout instructions from PC 800 when MFP 1000 functions as a printer.
[0033]
Further, MFP 1000 can be connected to a telephone line via FAX board 400, and can transmit and receive FAX data and the like to and from other devices via telephone line network 900.
[0034]
The memory control unit 500 includes a scanner input buffer 530 for temporarily storing image data output from the scanner 100, an external I / F input buffer 540 for temporarily storing image data input via the NIC 300, and an input buffer 530. , 540 are provided with a compressor 510 for compressing the data stored therein.
[0035]
The data compressed by the compressor 510 is stored in a copy job, scan job, and print job data area 570 in the DRAM 10. In this example, the copy job, scan job, and print job data do not need to guarantee the data at the time of the power failure, and are handled as not corresponding to the backup target data.
[0036]
The copy job, scan job, and print job data are expanded by the expander 520 according to necessary timing. The data decompressed by the decompressor 520 is temporarily stored in, for example, a printer output buffer 560 depending on the application, and is used for print output by the printer 200. Alternatively, when the data is transferred to the PC 800, the data is temporarily stored in the external I / F output buffer 550 and then transferred to the PC 800 via the NIC 300.
[0037]
On the other hand, FAX reception data received through the telephone line 900 and the FAX board 400 is stored in the FAX job reception data area 580 different from the data area 570 in the DRAM 10. The image data read by the scanner 100 is compressed by the compressor 510 as FAX transmission data when it is to be transmitted by FAX, and then stored in the FAX job transmission data area 590 in the DRAM 10. In this example, these FAX reception data and FAX transmission data are handled as data corresponding to the backup target data because it is necessary to guarantee the data at the time of power failure.
[0038]
Note that the user can easily create the same FAX transmission data again, so that the FAX transmission data may be handled as not corresponding to the data to be backed up. In this case, the user inputs an instruction through the operation panel 700 to limit the backup target data to only the FAX reception data. In this way, by limiting the backup target data to the minimum, the power consumption of the backup power supply can be suppressed when the backup is started. Therefore, the backup time for the DRAM 10 can be lengthened even when a backup power supply having a limited capacity is used.
[0039]
Specifically, the operation of the memory control unit 500 is performed by the CPU 600 controlling the data transfer by performing register setting for a DMA (direct memory access) not shown.
[0040]
Scanner input buffer 530, external I / F input buffer 540, external I / F output buffer 550, printer output buffer 560, copy job, scan job, print job data area 570, FAX job reception data area 580, FAX job transmission data area 590 are all mapped on the DRAM 10.
[0041]
The application for realizing the functions of the above-described copy, facsimile, printer, and network scanner stores compressed data in the DRAM 10 under the control of the memory control unit 500 every time a request based on a user operation or the like occurs. Since the memory control unit 500 stores the image data in the order requested by each application, the DRAM 10 stores the image data for each application in a fragmented and mixed state. Although there is a concept of securing a fixed memory area that is continuous for each application, there is a limitation on the maximum number of jobs that can be processed when a certain application is momentarily biased. Not preferred.
[0042]
On the other hand, the image data (compressed data) stored in the DRAM 10
When copying, when copying is completed,
When the scan data transfer is completed for a network scanner,
When printing is completed for a printer,
In the case of facsimile transmission, when fax data transmission is completed,
When facsimile reception, when fax reception data printing is completed
Then, since it is no longer necessary to hold them, they are erased.
[0043]
Normally, data relating to a copy job and a print job are erased without remaining in the memory for a long time when the prunita engine is in a printable state. Similarly, the data relating to the scan job is deleted without remaining in the memory for a long time as long as there is a transmission partner. On the other hand, data related to FAX transmission / reception is often retained in the memory for a long time because communication with the transmission destination cannot be established or batch transmission of memory or a confidential print function is instructed. As a result, the order of writing on the memory and the order of erasing are different. Therefore, if the MFP 1000 operates for a while, the DRAM 10 has an empty area where no data is stored between the areas where the image data for each application is fragmented and stored (for example, FIG. 5B-1). (A region shown by a blank in (C-1)). This is a steady state.
[0044]
FIG. 2 shows the configuration of the power supply control unit 650 as power supply control means.
[0045]
The DRAM 10 is divided into a plurality (four in this example) of memory blocks 1, 2, 3, and 4, and can operate independently for each memory block. Switches 641, 651, 661, and 671 controlled by the CPU 600 are connected in series to the memory blocks 1, 2, 3, and 4, respectively.
[0046]
A commercial power supply 620 is commonly connected to the series-connected memory block 1 and the switch 641, the memory block 2 and the switch 651, the memory block 3 and the switch 661, and the memory block 4 and the switch 671. A backup battery (eg, nickel cadmium battery) 610 as a power supply and a normally-on type relay switch 630 are commonly connected.
[0047]
During normal operation, the relay switch 630 is turned off and the switches 641, 651, 661, 671 are turned on under the control of the CPU 600. Thus, power is supplied from the commercial power supply 620 to the individual memory blocks 1, 2, 3, and 4.
[0048]
On the other hand, when the commercial power supply 620 is turned off or the outlet is disconnected, or when power supply from the commercial power supply 620 cannot be received due to a power failure, the relay switch 630 is turned on. Under the control of the CPU 600, the switches 641, 651, 661, 671 are individually turned on and off. Thus, power can be supplied from the backup battery 610 to the individual memory blocks 1, 2, 3, and 4. The power failure state is notified to the CPU 600 by a power failure detection sensor (not shown).
[0049]
Further, the CPU 600 can access each of the memory blocks 1, 2, 3, and 4 via an address bus and a data bus. The CPU 600 functions as a data transfer means and can freely transfer data between the memory blocks 1, 2, 3, and 4 (specifically, data transfer is performed via a DMA, but here, The explanation of is omitted.).
[0050]
Further, the CPU 600 functions as backup control means and controls data transfer based on reference information obtained from the DRAM 10 so that at least one of the memory blocks 1, 2, 3, and 4 becomes a free memory block.
[0051]
FIG. 3 shows a specific control flow (main routine) performed by the CPU 600.
[0052]
i) First, it is checked whether an event causing a backup start such as a power failure or printing failure has occurred (S1). "Print disabled" means that the printer engine has been disabled for printing due to some cause such as an engine status change (for example, paper empty, toner empty, trouble, warming up, sleeping, etc.). It should be noted that what kind of event is the cause of the backup start can be changed by an instruction from the operation panel 700 according to the user's needs.
[0053]
If an event has not occurred (NO in S2), the state of waiting for the event is maintained.
[0054]
ii) On the other hand, if an event occurs and there is a processing request (YES in S2), the state of the DRAM 10 is referred to, and a data transfer determination process is performed based on the obtained reference information (S3).
[0055]
In this example, the "reference information" obtained from the DRAM 10 indicates the amount, storage position, and type of data stored in the DRAM 10, that is, in each of the memory blocks 1, 2, 3, and 4.
[0056]
Depending on the “type” of the data, it is determined whether the data is “backup target data”. In this example, FAX reception data and FAX transmission data relating to a facsimile (FAX) job correspond to backup target data as described above. On the other hand, copy job, scan job, and print job data do not correspond to backup target data.
[0057]
As will be described in detail later, in the "data transfer determination process", it is determined whether or not at least one empty memory block is generated by data transfer between the memory blocks 1, 2, 3, and 4. By making a determination based on the above-mentioned reference information, an empty memory block can be generated accurately.
[0058]
iii) Only when the data transfer determination processing has the effect of extending the backup time (YES in S4) and it is determined that data transfer is necessary (YES in S5), the memory blocks 1, 2, and Data transfer between 3 and 4 is started (S6). When the data transfer is completed (YES in S7), at least one of the memory blocks 1, 2, 3, and 4 is a free memory block because the effect of extending the backup time is obtained. Therefore, under the control of the CPU 600, the switch (one of the switches 641, 651, 661, 671) corresponding to the empty memory block is turned off, and the power supply to the empty memory block is stopped (S8). Therefore, when the backup is started, the backup time for the DRAM 10 can be actually lengthened even if the backup battery 610 having a limited capacity is used.
[0059]
iv) On the other hand, if it is determined by the data transfer determination processing (S3 in FIG. 3) that there is no effect of extending the backup time (NO in S4), the process returns to step S1 and waits for the occurrence of an event.
[0060]
v) In the data transfer determination process (S3 in FIG. 3), the backup time can be extended (YES in S4), but when it is determined that data transfer is not necessary (NO in S5), Even if the transfer is not performed, at least one of the memory blocks 1, 2, 3, and 4 is already a free memory block. Then, under the control of the CPU 600, the switch (at least one of the switches 641, 651, 661, 671) corresponding to the empty memory block is turned off, and the power supply to the empty memory block is stopped (S8). Therefore, when the backup is started, the backup time for the DRAM 10 can be actually lengthened even if the backup battery 610 having a limited capacity is used.
[0061]
It is desirable that the processing in FIG. 3 be executed before the actual backup starts. This is to minimize the consumption of the backup battery 610.
[0062]
FIG. 4 shows the flow of the above-described data transfer determination processing (S3 in FIG. 3) in detail. This processing will be described next with reference to the memory map of FIG.
[0063]
i) First, the capacity of the data to be backed up is calculated (S11). That is, the total capacity of the data stored in the memory blocks 1, 2, 3, and 4 corresponding to the data to be backed up (hereinafter referred to as "data capacity to be backed up") is calculated.
[0064]
ii) Next, it is determined whether the number of memory blocks to be backed up can be reduced based on the backup target data capacity (S12). For example, it is assumed that each of the memory blocks 1, 2, 3, and 4 has a capacity of 1 MB, and that four memory blocks can store a maximum of 4 MB of data. In this case, if the backup target data capacity is 3 MB or less, at least one memory block can be made a free memory block, and the number of memory blocks to be backed up can be reduced.
[0065]
iii) In step S12, for example, as shown in FIG. 5D-1, if the data volume to be backed up exceeds 3 MB, the number of memory blocks to be backed up cannot be reduced. It is determined that there is no effect (S19). Then, the process returns to the main routine. In this case, as shown in FIG. 5D-2, data transfer is not performed, and power supply to all the memory blocks 1, 2, 3, and 4 is maintained. If it is determined that the reduction has no effect, data transfer between a plurality of memory blocks is not performed. Therefore, useless data transfer that does not contribute to lengthening the backup time is not performed, and useless power is not consumed.
[0066]
iv) On the other hand, in step S12, if the data size of the data to be backed up is 3 MB or less, the number of memory blocks to be backed up can be reduced, so it is determined that the reduction is "effective" (S13).
[0067]
v) Subsequently, the arrangement (storage position) of data in the memory blocks 1, 2, 3, and 4 is checked (S14), and it is determined whether or not data transfer is necessary to generate an empty memory block. (S15).
[0068]
vi) In this step S15, for example, as shown in FIG. 5A-1, the backup target data exists only in the memory blocks 1, 2, and 3, and the memory block 4 is a free memory block at this time. In this case, it is determined that data transfer is unnecessary (S17). Then, the process returns to the main routine. In this case, the power supply to the memory block 4 can be stopped as shown in FIG. 5A-2 without performing the data transfer (the memory block to which the power supply is stopped is indicated by a broken line). The same applies hereinafter.). Therefore, when the backup is started, the backup time for the DRAM 10 can be actually lengthened even if the backup battery 610 having a limited capacity is used. Moreover, if the power supply to the memory blocks 1, 2, 3 is maintained, the data to be backed up is not lost.
[0069]
vii) On the other hand, in step S15, as shown in, for example, FIG. 5 (B-1) and FIG. 5 (C-1), the backup target data capacity is 3 MB or less (actually 2 MB or less) and the data is backed up. If the number of memory blocks to be reduced can be reduced, it is determined that data transfer is necessary (S16).
[0070]
For example, in the example of FIG. 5 (B-1), as shown in FIG. 5 (B-2), data to be backed up is collected in the memory block 3 with a policy of collecting data e, Processing for obtaining the transfer source address and the transfer destination address of the data f is performed. When such a simple policy is adopted, the process of obtaining an address can be simplified.
[0071]
On the other hand, in the example of FIG. 5 (C-1), the process of obtaining the transfer source address and the transfer destination address is performed with a policy of minimizing the data transfer in order to minimize the power consumption required for the data transfer. In order to minimize the amount of data transfer, the backup target data capacity is calculated for each memory block, and as shown in FIG. What is necessary is just to transfer to a large memory block (that is, a memory block with a small free space). In this example, data a and b are transferred from the memory block 1 to the memory block 2. In this case, the process of obtaining an address is repeatedly performed until a target free space can be secured.
[0072]
viii) Finally, the data transfer source address and the data transfer destination address are calculated, and information for executing the data transfer is prepared (S18). Thereafter, the process returns to the main routine of FIG.
[0073]
As a result of the data transfer, for example, the state changes from FIG. 5 (B-1) to FIG. 5 (B-2), and the state changes from FIG. 5 (C-1) to FIG. 5 (C-2). In this case, the number of memory blocks to be backed up can be reduced to two. Therefore, when the backup is started, the backup time for the DRAM 10 can be actually lengthened even if the backup battery 610 having a limited capacity is used. In addition, the backup target data transferred between the memory blocks is held in the transfer destination memory block. Therefore, data to be backed up is not lost.
[0074]
When data transfer is performed between the memory blocks 1, 2, 3, and 4, it is desirable to prohibit externally writing, reading, and erasing data to and from the memory blocks 1, 2, 3, and 4. For example, it is assumed that a new job is not accepted when executing data transfer between the memory blocks 1, 2, 3, and 4. As a result, it is possible to effectively prevent data from being externally written to the memory blocks 1, 2, 3, and 4. In such a case, data transferred between the memory blocks 1, 2, 3, and 4 and data from the outside are not mixed, and memory management is easily performed.
[0075]
In this embodiment, an example has been described in which a DRAM is backed up as a volatile memory. However, the present invention is not limited to this. The present invention can be similarly applied to, for example, a case of backing up an SRAM (Static Random Access Memory).
[0076]
【The invention's effect】
As apparent from the above, according to the image data storage device of the present invention, the backup time for the volatile memory can be actually lengthened without losing data.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating a schematic configuration of an MFP to which an image data storage device according to an embodiment of the present invention is applied.
FIG. 2 is a diagram illustrating a configuration of a power supply control unit of the MFP.
FIG. 3 is a diagram showing a flow of control (main routine) by a CPU of the MFP.
FIG. 4 is a diagram showing a flow (subroutine) of a data transfer determination process in the main routine.
FIG. 5 is a diagram schematically illustrating handling of data in a memory block.
[Explanation of symbols]
1,2,3,4 memory block
10 DRAM
500 Memory control unit
600 CPU
610 Backup battery
641,651,661,671 switch
650 Power supply control unit

Claims (5)

複数のメモリブロックを有する揮発性メモリを備え、上記揮発性メモリの個々のメモリブロックに対してバックアップ用電源を用いてバックアップを行うようになっている画像データ記憶装置であって、
上記揮発性メモリの個々のメモリブロックに対して電源供給を制御し得る電源供給制御手段と、
上記複数のメモリブロック間でデータを転送するためのデータ転送手段と、
上記揮発性メモリから得られる参照情報に基づいて、少なくとも1つのメモリブロックが空きメモリブロックとなるように上記データ転送手段を制御するバックアップ制御手段とを備えたことを特徴とする画像データ記憶装置。
An image data storage device comprising a volatile memory having a plurality of memory blocks, and performing backup using a backup power supply for each memory block of the volatile memory,
Power supply control means capable of controlling power supply to individual memory blocks of the volatile memory;
Data transfer means for transferring data between the plurality of memory blocks;
An image data storage device, comprising: backup control means for controlling the data transfer means such that at least one memory block becomes a free memory block based on reference information obtained from the volatile memory.
請求項1に記載の画像データ記憶装置において、
上記バックアップ制御手段は、上記データ転送手段によるデータ転送によって少なくとも1つの空きメモリブロックが生じるか否かを判断して、少なくとも1つの空きメモリブロックが生じる場合にのみ上記データ転送手段にデータ転送を実行させることを特徴とする画像データ記憶装置。
The image data storage device according to claim 1,
The backup control means determines whether or not at least one free memory block is generated by the data transfer by the data transfer means, and executes the data transfer to the data transfer means only when at least one free memory block is generated. An image data storage device, wherein
請求項1に記載の画像データ記憶装置において、
上記参照情報は上記揮発性メモリが記憶しているデータの量と格納位置を表す情報であることを特徴とする画像データ記憶装置。
The image data storage device according to claim 1,
The image data storage device, wherein the reference information is information indicating an amount and a storage position of data stored in the volatile memory.
請求項1に記載の画像データ記憶装置において、
上記参照情報は上記揮発性メモリが記憶しているデータの種類を表す情報であり、
上記バックアップ制御手段は、上記揮発性メモリが記憶しているデータの種類がバックアップ対象に該当するときのみ、そのデータを上記データ転送手段による転送の対象とすることを特徴とする画像データ記憶装置。
The image data storage device according to claim 1,
The reference information is information indicating the type of data stored in the volatile memory,
The image data storage device, wherein the backup control unit sets the data to be transferred by the data transfer unit only when the type of data stored in the volatile memory corresponds to a backup target.
請求項1に記載の画像データ記憶装置において、
上記バックアップ制御手段は、上記データ転送手段によるデータ転送の実行時には上記複数のメモリブロックに対する外部からのデータの書き込みを少なくとも禁止することを特徴とする画像データ記憶装置。
The image data storage device according to claim 1,
The image data storage device, wherein the backup control means at least prohibits writing of external data to the plurality of memory blocks when data transfer is performed by the data transfer means.
JP2002339412A 2002-11-22 2002-11-22 Image data storage device Pending JP2004171466A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002339412A JP2004171466A (en) 2002-11-22 2002-11-22 Image data storage device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002339412A JP2004171466A (en) 2002-11-22 2002-11-22 Image data storage device

Publications (1)

Publication Number Publication Date
JP2004171466A true JP2004171466A (en) 2004-06-17

Family

ID=32702360

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002339412A Pending JP2004171466A (en) 2002-11-22 2002-11-22 Image data storage device

Country Status (1)

Country Link
JP (1) JP2004171466A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010191951A (en) * 2009-01-20 2010-09-02 Ricoh Co Ltd Electronic device, power saving control method for the same, and program
JP2011086044A (en) * 2009-10-14 2011-04-28 Ricoh Co Ltd Memory backup controller, image forming apparatus, and information processing apparatus
JP2014067184A (en) * 2012-09-25 2014-04-17 Fujitsu Ltd Semiconductor integrated circuit and power consumption suppression method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010191951A (en) * 2009-01-20 2010-09-02 Ricoh Co Ltd Electronic device, power saving control method for the same, and program
JP2011086044A (en) * 2009-10-14 2011-04-28 Ricoh Co Ltd Memory backup controller, image forming apparatus, and information processing apparatus
JP2014067184A (en) * 2012-09-25 2014-04-17 Fujitsu Ltd Semiconductor integrated circuit and power consumption suppression method

Similar Documents

Publication Publication Date Title
JP5289153B2 (en) Information processing apparatus, control method therefor, and computer program
US9152365B2 (en) Image processing apparatus, network system, information processing method, program, and storage medium
JP2004005029A (en) Device having power saving function and power saving control method
US20130104142A1 (en) Information processing apparatus and information processing method
JP2003089254A (en) Information input-output device, image processor, method for controlling network of image processor, network controlling program, and computer-readable recording medium storing program
JP2004171466A (en) Image data storage device
JP2018078485A (en) Information processing apparatus and starting method of information processing apparatus
JP2007221239A (en) Extended image processing system
JP4134895B2 (en) Image processing apparatus and image processing method
JP2008067299A (en) Image forming apparatus
JP5915670B2 (en) Image processing apparatus, image processing method and image processing program in the same
US8914806B2 (en) Information processing apparatus and virtual storage management method, and storage medium for restriction on process swapping based on process attributes and processor utilization
JP3974762B2 (en) Image processing apparatus and image processing method
JP2001253152A (en) Digital combined unit with uninterruptible power supply and its control method
JP3539916B2 (en) Peripheral device management device and system having peripheral device management function
JP2008113415A (en) Multifunction machine having facsimile function, method for holding facsimile data, and computer program product
JP2002268940A (en) Image processor
JP2004254079A (en) Image processing device
JPH11239254A (en) Digital composite device
JPH06305217A (en) Image forming device
JP2004220280A (en) Data processor
JP2013088941A (en) Electronic apparatus
JP2011016343A (en) Image forming apparatus
JP2005094522A (en) Facsimile apparatus
JP2005176029A (en) Image processing apparatus and image processing method

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20050614