特許第5979512号(P5979512)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ コニカミノルタ株式会社の特許一覧

特許5979512画像形成装置及びフラッシュメモリの制御方法
<>
  • 特許5979512-画像形成装置及びフラッシュメモリの制御方法 図000003
  • 特許5979512-画像形成装置及びフラッシュメモリの制御方法 図000004
  • 特許5979512-画像形成装置及びフラッシュメモリの制御方法 図000005
  • 特許5979512-画像形成装置及びフラッシュメモリの制御方法 図000006
  • 特許5979512-画像形成装置及びフラッシュメモリの制御方法 図000007
  • 特許5979512-画像形成装置及びフラッシュメモリの制御方法 図000008
  • 特許5979512-画像形成装置及びフラッシュメモリの制御方法 図000009
  • 特許5979512-画像形成装置及びフラッシュメモリの制御方法 図000010
  • 特許5979512-画像形成装置及びフラッシュメモリの制御方法 図000011
  • 特許5979512-画像形成装置及びフラッシュメモリの制御方法 図000012
  • 特許5979512-画像形成装置及びフラッシュメモリの制御方法 図000013
  • 特許5979512-画像形成装置及びフラッシュメモリの制御方法 図000014
  • 特許5979512-画像形成装置及びフラッシュメモリの制御方法 図000015
  • 特許5979512-画像形成装置及びフラッシュメモリの制御方法 図000016
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5979512
(24)【登録日】2016年8月5日
(45)【発行日】2016年8月24日
(54)【発明の名称】画像形成装置及びフラッシュメモリの制御方法
(51)【国際特許分類】
   H04N 1/00 20060101AFI20160817BHJP
   H04N 1/21 20060101ALI20160817BHJP
   G06F 12/16 20060101ALI20160817BHJP
【FI】
   H04N1/00 C
   H04N1/21
   G06F12/16 310A
【請求項の数】18
【全頁数】20
(21)【出願番号】特願2014-75948(P2014-75948)
(22)【出願日】2014年4月2日
(65)【公開番号】特開2015-198377(P2015-198377A)
(43)【公開日】2015年11月9日
【審査請求日】2015年10月21日
(73)【特許権者】
【識別番号】000001270
【氏名又は名称】コニカミノルタ株式会社
(74)【代理人】
【識別番号】100114672
【弁理士】
【氏名又は名称】宮本 恵司
(72)【発明者】
【氏名】佐久間 啓史
【審査官】 橋爪 正樹
(56)【参考文献】
【文献】 特開2012−168937(JP,A)
【文献】 特開2012−133651(JP,A)
【文献】 特開2006−166222(JP,A)
【文献】 特開2011−101994(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 1/00
H04N 1/21
B41J29/38
G06F12/00−12/16
(57)【特許請求の範囲】
【請求項1】
複数のメモリブロックで構成され、各々の前記メモリブロックへのデータの書き込みがウェアレベリングによって制御されるフラッシュメモリを画像データのバッファとして使用する画像形成装置において、
前記フラッシュメモリを制御する制御部は、
前記フラッシュメモリに対して、予め定めた所定期間内に予め定めた所定量を越える画像データの書き込みが発生することを予測する第1の機能と、
前記所定期間内に前記所定量以上の画像データの書き込みが発生すると予測された場合に、画像データの入力、及び/又は、入力された画像データのバッファリング速度を抑制し、前記所定期間内の前記フラッシュメモリへの書き込みデータ量を前記所定量以下に抑える制御を行う第2の機能と、を備え
前記所定期間は、前記フラッシュメモリの各々の前記メモリブロックのデータ保持期間を特定期間以上とするためのデータの書き込み間隔であり、
前記制御部は、前記所定期間内の前記フラッシュメモリへの書き込みデータ量を前記所定量以下に抑えることにより、前記データの書き込み間隔を維持し、各々の前記メモリブロックのデータ保持期間の低下を抑制する、
ことを特徴とする画像形成装置。
【請求項2】
前記特定期間は、前記画像形成装置の寿命である、
ことを特徴とする請求項1に記載の画像形成装置。
【請求項3】
前記画像形成装置は、画像入力装置と画像出力装置とを備え、
前記制御部は、前記画像入力装置及び/又は前記画像出力装置の動作モードを変更することによって、前記画像データの入力、及び/又は、前記入力された画像データのバッファリング速度を抑制する、
ことを特徴とする請求項に記載の画像形成装置。
【請求項4】
前記画像入力装置はスキャナであり、
前記制御部は、前記画像入力装置に、スキャン解像度を下げる指示、スキャン速度を下げる指示、スキャン間隔を長くする指示、の少なくとも1つを行うことによって、前記画像データの入力を抑制する、
ことを特徴とする請求項に記載の画像形成装置。
【請求項5】
前記画像出力装置は印刷エンジンであり、
前記制御部は、前記画像出力装置に、印刷速度を下げる指示、印刷の時間間隔を長くする指示、の少なくとも1つを行うことによって、前記入力された画像データのバッファリング速度を抑制する、
ことを特徴とする請求項に記載の画像形成装置。
【請求項6】
複数のメモリブロックで構成され、各々の前記メモリブロックへのデータの書き込みがウェアレベリングによって制御されるフラッシュメモリを画像データのバッファとして使用する画像形成装置において、
前記フラッシュメモリを制御する制御部は、
前記フラッシュメモリに対して、予め定めた所定期間内に予め定めた所定量を越える画像データの書き込みが発生することを予測する第1の機能と、
前記所定期間内に前記所定量以上の画像データの書き込みが発生すると予測された場合に、画像データの入力、及び/又は、入力された画像データのバッファリング速度を抑制し、前記所定期間内の前記フラッシュメモリへの書き込みデータ量を前記所定量以下に抑える制御を行う第2の機能と、を備え、
前記制御部は、予め、前記フラッシュメモリの外部からのデータ書き込み量と前記フラッシュメモリ内部で発生するデータ書き込み量との比率を示すW/A(Write Amplification)係数を取得し、前記W/A係数を参照して、前記フラッシュメモリ内部で、前記所定期間内に前記所定量以上のデータ書き込みが発生することを予測する、
ことを特徴とする画像形成装置。
【請求項7】
前記画像形成装置は、画像入力装置と画像出力装置とを備え、
前記制御部は、前記画像入力装置及び/又は前記画像出力装置の動作モードを変更することによって、前記画像データの入力、及び/又は、前記入力された画像データのバッファリング速度を抑制する、
ことを特徴とする請求項に記載の画像形成装置。
【請求項8】
前記画像入力装置はスキャナであり、
前記制御部は、前記画像入力装置に、スキャン解像度を下げる指示、スキャン速度を下げる指示、スキャン間隔を長くする指示、の少なくとも1つを行うことによって、前記画像データの入力を抑制する、
ことを特徴とする請求項に記載の画像形成装置。
【請求項9】
前記画像出力装置は印刷エンジンであり、
前記制御部は、前記画像出力装置に、印刷速度を下げる指示、印刷の時間間隔を長くする指示、の少なくとも1つを行うことによって、前記入力された画像データのバッファリング速度を抑制する、
ことを特徴とする請求項7に記載の画像形成装置。
【請求項10】
複数のメモリブロックで構成され、各々の前記メモリブロックへのデータの書き込みがウェアレベリングによって制御されるフラッシュメモリを画像データのバッファとして使用する画像形成装置における前記フラッシュメモリの制御方法であって、
前記フラッシュメモリを制御する制御部は、
前記フラッシュメモリに対して、所定期間内に所定量を越える画像データの書き込みが発生することを予測する第1の処理と、
前記所定期間内に前記所定量以上の画像データの書き込みが発生すると予測された場合に、画像データの入力、及び/又は、入力された画像データのバッファリング速度を抑制し、前記所定期間内の前記フラッシュメモリへの書き込みデータ量を前記所定量以下に抑える第2の処理と、を実行し、
前記所定期間は、前記フラッシュメモリの各々の前記メモリブロックのデータ保持期間を特定期間以上とするためのデータの書き込み間隔であり、
前記第2の処理では、前記所定期間内の前記フラッシュメモリへの書き込みデータ量を前記所定量以下に抑えることにより、前記データの書き込み間隔を維持し、各々の前記メモリブロックのデータ保持期間の低下を抑制する、
ことを特徴とするフラッシュメモリの制御方法。
【請求項11】
前記特定期間は、前記画像形成装置の寿命である、
ことを特徴とする請求項10に記載のフラッシュメモリの制御方法。
【請求項12】
前記画像形成装置は、画像入力装置と画像出力装置とを備え、
前記第2の処理では、前記画像入力装置及び/又は前記画像出力装置の動作モードを変更することによって、前記画像データの入力、及び/又は、前記入力された画像データのバッファリング速度を抑制する、
ことを特徴とする請求項10に記載のフラッシュメモリの制御方法。
【請求項13】
前記画像入力装置はスキャナであり、
前記第2の処理では、前記画像入力装置に、スキャン解像度を下げる指示、スキャン速度を下げる指示、スキャン間隔を長くする指示、の少なくとも1つを行うことによって、前記画像データの入力を抑制する、
ことを特徴とする請求項12に記載のフラッシュメモリの制御方法。
【請求項14】
前記画像出力装置は印刷エンジンであり、
前記第2の処理では、前記画像出力装置に、印刷速度を下げる指示、印刷の時間間隔を長くする指示、の少なくとも1つを行うことによって、前記入力された画像データのバッファリング速度を抑制する、
ことを特徴とする請求項12に記載のフラッシュメモリの制御方法。
【請求項15】
複数のメモリブロックで構成され、各々の前記メモリブロックへのデータの書き込みがウェアレベリングによって制御されるフラッシュメモリを画像データのバッファとして使用する画像形成装置における前記フラッシュメモリの制御方法であって、
前記フラッシュメモリを制御する制御部は、
前記フラッシュメモリに対して、所定期間内に所定量を越える画像データの書き込みが発生することを予測する第1の処理と、
前記所定期間内に前記所定量以上の画像データの書き込みが発生すると予測された場合に、画像データの入力、及び/又は、入力された画像データのバッファリング速度を抑制し、前記所定期間内の前記フラッシュメモリへの書き込みデータ量を前記所定量以下に抑える第2の処理と、を実行し、
前記第1の処理では、予め、前記フラッシュメモリの外部からのデータ書き込み量と前記フラッシュメモリ内部で発生するデータ書き込み量との比率を示すW/A(Write Amplification)係数を取得し、前記W/A係数を参照して、前記フラッシュメモリ内部で、前記所定期間内に前記所定量以上のデータ書き込みが発生することを予測する、
ことを特徴とするフラッシュメモリの制御方法。
【請求項16】
前記画像形成装置は、画像入力装置と画像出力装置とを備え、
前記第2の処理では、前記画像入力装置及び/又は前記画像出力装置の動作モードを変更することによって、前記画像データの入力、及び/又は、前記入力された画像データのバッファリング速度を抑制する、
ことを特徴とする請求項15に記載のフラッシュメモリの制御方法。
【請求項17】
前記画像入力装置はスキャナであり、
前記第2の処理では、前記画像入力装置に、スキャン解像度を下げる指示、スキャン速度を下げる指示、スキャン間隔を長くする指示、の少なくとも1つを行うことによって、前記画像データの入力を抑制する、
ことを特徴とする請求項16に記載のフラッシュメモリの制御方法。
【請求項18】
前記画像出力装置は印刷エンジンであり、
前記第2の処理では、前記画像出力装置に、印刷速度を下げる指示、印刷の時間間隔を長くする指示、の少なくとも1つを行うことによって、前記入力された画像データのバッファリング速度を抑制する、
ことを特徴とする請求項16に記載のフラッシュメモリの制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像データを書き込むフラッシュメモリを備える画像形成装置及び当該フラッシュメモリの制御方法に関する。
【背景技術】
【0002】
近年、様々な機器の記憶手段としてフラッシュメモリが使用されている。このフラッシュメモリは、同一のブロックに対して短い時間間隔でデータの書き込み(書き換えを含む)を連続して行うと、当該ブロックのデータ保持期間が低下するという特徴を持つ。
【0003】
この特徴について説明する。フラッシュメモリは、一般に、ゲート電極が2層構造となったMOS(Metal Oxide Semiconductor)トランジスタ(セル)からなり、1バイト単位で読み出し/書き込み、消去、書き換えが可能な(すなわち、ソース線とビット線が個々のセルに繋がっている)NOR型と、複数ビットでの読み出し/書き込み、消去、書き換えが可能な(複数のセルがソース線とビット線の間に直列に接続された)NAND型と、がある。いずれの場合も、浮遊ゲートとシリコン基板の間に高電界を加えることによって、電子がゲート絶縁膜をトンネリングして浮遊ゲートに注入され、これによってMOSトランジスタがオフ状態からオン状態に変わるゲート電圧(閾値電圧)が変化することを利用して情報を記憶する。
【0004】
そのため、フラッシュメモリへのデータの書き込み回数が多くなると、電子のトンネリングによってゲート絶縁膜が劣化し、浮遊ゲートに注入した電子がシリコン基板に逃げやすくなり、データ保持期間が短くなる。特に、NAND型のフラッシュメモリでは、メモリブロック(以下、単にブロックと称する。)内の一部のセルに対する書き込みでもブロック単位で書き込みを行うため、書き込み回数が実質的に増加してゲート絶縁膜の劣化が進行し、データ保持期間が短くなる。
【0005】
このような背景から、通常は、フラッシュメモリへのデータの書き込みに際し、ウェアレベリングの機能により、同一のブロックに対してデータの書き込みが集中しないように制御している。このウェアレベリングの機能は、フラッシュメモリのブロック毎の書き込み履歴を記録しておき、この履歴を参照して偏りなく各ブロックにデータを書き込むものである。
【0006】
このようなデータの書き込みを分散する技術に関して、例えば、下記特許文献1には、データ消去の単位であるブロックを複数個有する不揮発性メモリを含むメモリシステムの制御方法であって、各ブロックのデータが消去された消去時期を計測する工程と、少なくとも外部から供給されるデータを、空き状態でありかつ消去時期が最も古い第1のブロックに書き込む工程と、を具備するメモリシステムの制御方法が開示されている。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2010−108522号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
ウェアレベリングの機能により、同一のブロックに対するデータの書き込みを抑制することができるが、フラッシュメモリに入力されるデータが多いとデータの書き込みが頻繁に行われるため、ウェアレベリングを実施したとしても、短時間にデータの書き込みが行われるブロックが発生する。そして、短時間にデータの書き込みが行われるブロックでは、ゲート絶縁膜の劣化が進行するため、当該ブロックのデータ保持期間が低下し、その結果、フラッシュメモリの寿命が短くなる。
【0009】
また、特許文献1の技術を利用して、消去時期が最も古いブロックに優先的にデータを書き込んだとしても、当該ブロックは、それ以外のブロックと比較して相対的に消去時期が古いだけであり、絶対的な消去時期が古いとは限らない。そのため、各ブロックにデータを書き込んでから次にデータを書き込むまでの時間間隔を十分に確保することができない場合が生じ、その場合はそのブロックのゲート絶縁膜の劣化が進行し、データ保持期間が低下し、フラッシュメモリの寿命が短くなる。
【0010】
このような問題は、フラッシュメモリにデータを書き込む任意の装置において生じるが、特に、フラッシュメモリを画像データのバッファとして使用する画像形成装置においては、サイズの大きい画像データの書き込みが短期間に連続して発生するため、この問題が顕著になる。
【0011】
本発明は、上記問題点に鑑みてなされたものであって、その主たる目的は、ウェアレベリングの機能によりデータの書き込みが制御されるフラッシュメモリに対して、全てのブロックのデータ保持期間の低下を抑制し、フラッシュメモリの寿命を延ばすことができる画像形成装置及びフラッシュメモリの制御方法を提供することにある。
【課題を解決するための手段】
【0012】
本発明の一側面は、複数のメモリブロックで構成され、各々の前記メモリブロックへのデータの書き込みがウェアレベリングによって制御されるフラッシュメモリを画像データのバッファとして使用する画像形成装置において、前記フラッシュメモリを制御する制御部は、前記フラッシュメモリに対して、予め定めた所定期間内に予め定めた所定量を越える画像データの書き込みが発生することを予測する第1の機能と、前記所定期間内に前記所定量以上の画像データの書き込みが発生すると予測された場合に、画像データの入力、及び/又は、入力された画像データのバッファリング速度を抑制し、前記所定期間内の前記フラッシュメモリへの書き込みデータ量を前記所定量以下に抑える制御を行う第2の機能と、を備え、前記所定期間は、前記フラッシュメモリの各々の前記メモリブロックのデータ保持期間を特定期間以上とするためのデータの書き込み間隔であり、前記制御部は、前記所定期間内の前記フラッシュメモリへの書き込みデータ量を前記所定量以下に抑えることにより、前記データの書き込み間隔を維持し、各々の前記メモリブロックのデータ保持期間の低下を抑制することを特徴とする。
【0013】
本発明の一側面は、複数のメモリブロックで構成され、各々の前記メモリブロックへのデータの書き込みがウェアレベリングによって制御されるフラッシュメモリを画像データのバッファとして使用する画像形成装置における前記フラッシュメモリの制御方法であって、前記フラッシュメモリを制御する制御部は、前記フラッシュメモリに対して、所定期間内に所定量を越える画像データの書き込みが発生することを予測する第1の処理と、前記所定期間内に前記所定量以上の画像データの書き込みが発生すると予測された場合に、画像データの入力、及び/又は、入力された画像データのバッファリング速度を抑制し、前記所定期間内の前記フラッシュメモリへの書き込みデータ量を前記所定量以下に抑える第2の処理と、を実行し、前記所定期間は、前記フラッシュメモリの各々の前記メモリブロックのデータ保持期間を特定期間以上とするためのデータの書き込み間隔であり、前記第2の処理では、前記所定期間内の前記フラッシュメモリへの書き込みデータ量を前記所定量以下に抑えることにより、前記データの書き込み間隔を維持し、各々の前記メモリブロックのデータ保持期間の低下を抑制することを特徴とする。
【発明の効果】
【0014】
本発明の画像形成装置及びフラッシュメモリ制御方法によれば、ウェアレベリングの機能によりデータの書き込みが制御されるフラッシュメモリに対して、全てのブロックのデータ保持期間の低下を抑制し、フラッシュメモリの寿命を延ばすことができる。
【0015】
その理由は、所定期間内にフラッシュメモリに書き込まれる画像データのデータ量を計算し、当該データ量が予め定めた所定量を越えるか否かに基づいて、書き込み負荷超過状態になるかを予測し、書き込み負荷超過状態になると予測した場合には、画像データの入力、及び/又は、データのバッファリングの速度を抑制し、所定期間内にフラッシュメモリに書き込まれる画像データのデータ量を所定量以下にする書き込み負荷軽減制御を実行するからである。
【図面の簡単な説明】
【0016】
図1】本発明の一実施例に係る画像形成装置の概略構成を示すブロック図である。
図2】本発明の一実施例に係る画像形成装置におけるデータのバッファリング制御を説明する図である。
図3】フラッシュメモリの特性(データ書き込み直後からトランジスタの閾値電圧が変化し始めるまでの時間の書き込み間隔依存性)を示す図である。
図4】フラッシュメモリの特性(トランジスタの閾値電圧の放置時間依存性)を示す図である。
図5】ウェアレベリングによるブロック書き込み制御を説明する図である。
図6】ウェアレベリングによるブロック書き込み制御(十分な書き込み間隔を確保できない場合)を説明する図である。
図7】画像データのバッファリング制御の具体例を示す図である。
図8】ウェアレベリングによるデータ書き込み制御の具体例を示す図である。
図9】本発明の一実施例に係るフラッシュメモリのデータバス監視による書き込み負荷超過状態の予測方法の一例を示す図である。
図10】本発明の一実施例に係る書き込み負荷軽減制御の一例を示す図である。
図11】本発明の一実施例に係る書き込み負荷軽減制御の他の例を示す図である。
図12】本発明の一実施例に係る画像形成装置の動作を示すフローチャート図である。
図13】フラッシュメモリのW/A係数を説明する図である。
図14】フラッシュメモリの特性(W/A係数の転送データサイズ依存性)の測定結果を示す図である。
【発明を実施するための形態】
【0017】
背景技術で示したように、フラッシュメモリへのデータの書き込みに際し、ウェアレベリングの機能を用いて、同一のブロックに対して書き込みが集中しないように制御しているが、入力されるデータが多いと、短期間にデータの書き込みが行われるブロックが発生し、当該ブロックのゲート絶縁膜の劣化が進行し、データの保持期間が低下する。また、特許文献1の技術を利用して消去時期が最も古いブロックにデータを書き込んだとしても、短期間にデータの書き込みが行われるブロックが発生する場合があり、その場合には、やはり、当該ブロックのゲート絶縁膜の劣化が進行し、データの保持期間が低下する。
【0018】
すなわち、ウェアレベリングが機能していても尚、あるブロックにデータを書き込んでから次にデータを書き込むまでの期間が短くなり、データの保持期間が低下することがある。この問題に対して、各ブロックのデータの書き込み間隔と予め定めた閾値とを比較して、いずれのブロックにおいても書き込み間隔が閾値を下回らないように制御することも可能であるが、この方法では、ブロック毎のデータの書き込み履歴を管理する必要があり、制御が複雑になる。また、全てのブロックのデータの書き込み間隔が閾値を下回る場合は、データの入力を抑制する必要があるが、入力されたデータをプログラム処理して出力するコンピュータ装置などでは、一般に入力されるデータ自体を調整することは困難であり、データの入力を制限するとコンピュータ装置の動作に支障をきたす場合がある。
【0019】
一方、フラッシュメモリを画像データのバッファとして使用する画像形成装置においては、入力される画像データのサイズや数は予測可能であるため、ブロック毎のデータの書き込み履歴を管理しなくても、全てのブロックに対してデータの書き込み間隔が閾値を下回らないようにフラッシュメモリへの書き込みを制御することは可能である。また、画像形成装置では、スキャナなどの機構部から入力された画像データをフラッシュメモリに一時的に保持し、印刷エンジンなどの機構部に出力するため、入力される画像データのデータ量が多い場合には、これらの機構部の動作条件を調整することによって、入力される画像データのデータ量を調整することも可能である。
【0020】
そこで、本発明の一実施の形態では、このような画像形成装置の特質を考慮し、フラッシュメモリを画像データのバッファメモリとして使用する画像形成装置において、画像データのバッファリングを実施する際、所定期間(例えば、フラッシュメモリの各ブロックのデータ保持期間を十分な期間に保つために必要となるデータの書き込み間隔)内にフラッシュメモリに書き込まれる画像データのデータ量を算出し、当該データ量が予め定めた所定量(例えば、フラッシュメモリの記憶容量)を超えるか否かに基づいて、書き込み負荷超過状態になるかを予測し、書き込み負荷超過状態になると予測される場合に、機構部の動作条件を変更するなどして画像データの入力、及び/又は、データのバッファリングの速度を抑制し、フラッシュメモリへの所定期間内の累計書き込みデータ量が所定量以下になるように書き込み負荷軽減制御を行う。
【0021】
これにより、フラッシュメモリ内の全ブロックに対してデータの書き込み間隔を所定期間以上にすることができ、各ブロックのデータ保持期間を向上させると共に、フラッシュメモリの寿命を延ばすことができる。
【実施例】
【0022】
上記した本発明の実施の形態についてさらに詳細に説明すべく、本発明の一実施例に係る画像形成装置及びフラッシュメモリの制御方法について、図1乃至図14を参照して説明する。図1は、本実施例の画像形成装置の概略構成を示すブロック図であり、図2は、本実施例の画像形成装置におけるデータのバッファリング制御を説明する図である。また、図3及び図4は、フラッシュメモリの特性を説明する図であり、図5及び図6は、ウェアレベリングによるブロック書き込み制御を説明する図である。また、図7は、データのバッファリング制御の具体例を示す図であり、図8は、ウェアレベリングによるデータ書き込み制御の具体例を示す図である。また、図9は、本実施例のフラッシュメモリのデータバス監視による書き込み負荷超過状態の予測方法の一例を示す図であり、図10及び図11は、本実施例の書き込み負荷軽減制御の一例を示す図である。また、図12は、本実施例の画像形成装置の動作を示すフローチャート図であり、図13は、フラッシュメモリのW/Aを説明する図、図14は、フラッシュメモリの特性(W/A係数の転送データサイズ依存性)の測定結果を示す図である。なお、以下の説明において、フラッシュメモリへのデータ書き込みとは、データが保持されていないブロックにデータを書き込む場合の他、ブロックに保持されているデータを他のデータに書き換える場合も含む。
【0023】
以下、本実施例では、フラッシュメモリを備える装置として、画像形成装置を例にして説明する。本実施例の画像形成装置10は、図1に示すように、CPU(Central Processing Unit)11、メインメモリ12、フラッシュメモリ13、画像入力装置14、画像処理装置15、画像出力装置16などから構成される。なお、画像入力装置14や画像出力装置16は、画像形成装置10内部に含まれる構成としてもよいし(その場合は、画像入力部や画像出力部となる。)、画像形成装置10とは別体の装置とし、画像形成装置10と有線又は無線で接続される構成としてもよい。
【0024】
CPU11とメインメモリ12とで制御部が構成され、制御部は、画像形成装置10全体の制御、各動作モードに応じた各構成要素の制御を行う。また、制御部は、フラッシュメモリ制御機能を内蔵し、フラッシュメモリ13に対するデータの読み出し/書き込み、消去、書き換え(これらを総称して書き込みと称する。)を制御する。具体的には、フラッシュメモリ制御機能は、画像入力装置14から入力され、必要に応じて画像処理装置15で処理された画像データを一旦メインメモリ12に格納し、ウェアレベリングによってフラッシュメモリ13の各ブロックに書き込むと共に、フラッシュメモリ13から画像データを読み出し、画像出力装置15に出力する。
【0025】
このフラッシュメモリ制御機能は、所定期間内にフラッシュメモリ13に書き込まれる画像データのデータ量(累積書き込みデータ量と呼ぶ。)を計算し、累積書き込みデータ量が予め定めた所定量を越えるか否かに基づいて、フラッシュメモリ13の状態が書き込み負荷超過状態になるかを予測する機能と、書き込み負荷超過状態になると予測される場合に、画像入力装置14などの機構部の動作条件を変更するなどして画像データの入力、及び/又は、データのバッファリングの速度を抑制する制御(書き込み負荷軽減制御と呼ぶ。)を行う機能と、を有する。なお、上記所定期間は、フラッシュメモリ13の各ブロックのデータ保持期間を十分な期間に保つために必要となるデータの書き込み間隔であり、具体的には、フラッシュメモリ13の寿命が画像形成装置10の寿命と同等以上となるようなデータ保持期間で特定されるデータの書き込み間隔などである。また、上記所定量は、フラッシュメモリ13の記憶容量などである。
【0026】
フラッシュメモリ13は、データの読み出し/書き込み、消去、書き換えが可能なNOR型又はNAND型の不揮発性メモリであり、制御部の指示に従って、画像入力装置14から入力され、必要に応じて画像処理装置15で処理された画像データを保持し、制御部の指示に従って、保持した画像データを画像出力装置16に出力するバッファメモリとして機能する。また、フラッシュメモリ13は、CPU11が実行するプログラムを記憶する。
【0027】
画像入力装置14は、例えば、スキャナなどであり、原稿台に載置された原稿をスキャンし、光学的に読み取った画像データを画像処理装置15に出力(画像処理が不要な場合は、制御部の指示に従ってメインメモリ12を経由してフラッシュメモリ13に格納)する。その際、画像入力装置14は、制御部の指示に従って、入力する画像データを多く(データサイズを大きく)する高速動作モード、若しくは、入力する画像データを少なく(データサイズを小さく)する低速動作モードで画像データの入力処理を行う。
【0028】
画像処理装置15は、必要に応じて、画像入力装置14から転送された画像データに対して、エッジ強調処理や、スムージング処理、色変換処理等の画像処理を行う。また、必要に応じて、画像処理装置15は、他の装置から、PostScriptやPCL(Printer Control Language)に代表されるPDL(Page Description Language)で記述された印刷データを取得した場合は、印刷データに含まれる各ページをラスタライズしてページ毎の画像データを生成し、生成した画像データに対して上記画像処理を行う。そして、画像処理後の画像データを、制御部の指示に従ってメインメモリ12を経由してフラッシュメモリ13に格納する。
【0029】
画像出力装置16は、例えば、印刷エンジンであり、フラッシュメモリ13に格納された画像データに基づき、用紙への印刷処理を行う。その際、画像出力装置16は、制御部の指示に従って、処理する画像データを多く(データサイズを大きく)する高速動作モード、若しくは、処理する画像データを少なく(データサイズを小さく)する低速動作モードで画像データの出力処理を行う。具体的には、電子写真方式の場合は、帯電装置により帯電された感光体ドラムに、露光装置から画像に応じた光を照射して静電潜像を形成し、現像装置で帯電したトナーを付着させて現像し、そのトナー像を転写ベルトに1次転写し、転写ベルトから用紙に2次転写し、更に定着装置で用紙上のトナー像を定着させる処理を行う。
【0030】
図1に示す画像形成装置において、例えば、スキャンやコピーといった動作によって、画像データの入力が行われた場合、一般的に、図2に示すようなデータのバッファリング制御が行われる。
【0031】
まず、画像入力装置14が取得した画像データを、画像処理装置15が画像処理を行った後、メインメモリ12へ格納する(図2のA参照)。次に、メインメモリ12上の画像データを、フラッシュメモリ13にバッファリングする(図2のB参照)。バッファリングされた画像データは、画像出力装置16のデータ受け入れ準備が出来次第、フラッシュメモリ13から読み出され、画像出力装置16に出力される(図2のC参照)。
【0032】
上記のようなフラッシュメモリ13へのデータバッファリング制御は、以下の理由で実施される。画像入力装置14と画像出力装置16のデータ転送速度に差異があり、特に、画像入力装置14側のデータ転送速度が速い場合、入力された画像データを何れかのメモリにバッファする必要がある。また、画像入力装置14側は連続的にデータ入力を行い、画像出力装置16側は断続的にデータ出力を行う場合も、入力された画像データを何れかのメモリにバッファする必要がある。一般的に、図1に示すようなシステムでは、メインメモリ12としてDRAM(Dynamic Random Access Memory)等が使用されることが多いが、DRAMは、HDD(Hard Disk Drive)やフラッシュメモリ13と比較してビット単価が高いため、画像データのような大容量データの一時格納先としては適さない。そのため、コスト削減の目的で、メインメモリ12以外のHDDやフラッシュメモリ13に画像データのバッファリングが行われる。
【0033】
次に、上述したフラッシュメモリ13へのデータバッファリング時の問題点について、図3及び図4を参照して説明する。図3は、フラッシュメモリ13を構成する各ブロックの各セルに関して、データ書き込み直後からセルを構成するトランジスタの閾値電圧が変化し始めるまでの時間(time offset T0と表記)の書き込み間隔依存性を示している。また、図4は、セルを構成するトランジスタの閾値電圧(ΔVthと表記)の放置時間依存性を示している。
【0034】
図3及び図4に示すように、データの書き込み間隔が長い場合、ゲート絶縁膜の劣化は遅くなるため、トランジスタの閾値電圧が変化し始めるまでの時間は長くなり(例えば、図3のT0_L)、その結果、閾値電圧の変化の許容レベルで規定されるデータ保持期間(いわゆるデータリテンション)を長くすることができる。一方、データの書き込み間隔が短くなるにつれて、ゲート絶縁膜の劣化が進行するため、トランジスタの閾値電圧が変化し始めるまでの時間は短くなり(例えば、図3のT0_S)、その結果、閾値電圧の変化の許容レベルで規定されるデータ保持期間は短くなる。
【0035】
このように、複数のブロックで構成されるフラッシュメモリ13のいずれかのブロックに対して、短い時間間隔でデータの書き込みを連続して行うと、当該ブロックに格納されたデータの保持期間が低下し、フラッシュメモリ13全体の寿命が低下する。そこで、通常、ウェアレベリングの機能を用いて、同一のブロックに対して書き込みが集中しないよう制御しているが、図2に示すようなデータのバッファリング制御を継続した場合、ウェアレベリングが機能していても尚、何れかのブロックのデータの書き込み間隔が短くなり、当該ブロックに格納されたデータの保持期間が低下することがある。
【0036】
この問題について、図5及び図6を参照して具体的に説明する。図5及び図6は、ウェアレベリングによるブロック書き込み制御を説明する図である。例えば、図5に示すように、データの書き込みを行う際、フラッシュメモリの外部からのデータ書き込み要求(図のa参照)に対して、書き込み先のアドレスとして論理アドレスが指定される。この時、フラッシュメモリ内では、ウェアレベリングの機能により、指定された論理アドレスに対して、1対1で紐付けられた物理アドレスが選択され(図5のb参照)、当該物理アドレスにデータの書き込みが行われる(図5のc参照)。
【0037】
この物理アドレスの選択に際し、フラッシュメモリ内の各ブロックの中で、最後の書き込みからの経過時間が最も長いブロックが選択され、当該ブロックに対応する物理アドレスが選択される。つまり、外部からのデータ書き込み要求において、どのような論理アドレスを指定しても、フラッシュメモリ内部では、最後の書き込みからの経過時間が最も長いブロックに対してデータの書き込みが行われる。本制御により、短期間内の同一ブロックへの連続したデータの書き込みは抑制される。
【0038】
しかしながら、図6に示すように、全てのブロックに対して最後の書き込みから十分な経過時間を確保できていない状態において、外部からのデータ書き込み要求があった場合には、最後の書き込みからの経過時間が最も長いブロックでも経過時間は短いため、ウェアレベリングの機能によっても尚、何れかのブロックのデータの書き込み間隔が短くなり、当該ブロックに格納されたデータの保持期間が低下する。
【0039】
十分な書き込み間隔を確保できないケースの発生要因について説明する。例えば、画像形成装置において、記憶容量が4GBのフラッシュメモリを使用するものとし、当該フラッシュメモリにおいて、各ブロックに書き込んだデータに対して十分なデータ保持期間を持たせる(例えば、フラッシュメモリの寿命を画像形成装置の寿命と同程度若しくは画像形成装置の寿命以上にする)ために必要となる、データの書き込み間隔(推奨書き込み間隔と呼ぶ。)を5minとする。
【0040】
図6の状態では、フラッシュメモリ内のブロックの最後の書き込みからの経過時間は1〜4minであるため、その状態でデータの書き込みが発生すると、いずれのブロックでも、書き込み間隔を推奨書き込み間隔である5min以上確保することができず、データ保持期間が低下する。全てのブロックの最後の書き込みからの経過時間が5min以内となるのは、過去5min以内に、フラッシュメモリ13内の全ブロックに対して書き込みが発生した時である。つまり、5min以内にフラッシュメモリの記憶容量(ここでは4GB)以上のデータの書き込みが発生した時(この状態を書き込み負荷超過状態と呼ぶ。)である。
【0041】
フラッシュメモリに画像データをバッファリングする画像形成装置を例にして説明すると、画像形成装置では、図7に示すように、画像データのバッファリングと、バッファリングされた画像データの順次読み出しを繰り返し行う。この時、予めフラッシュメモリ上に用意したバッファ領域以上のデータ量の画像データが入力された場合、当該画像データは、既にデータの出力が完了し、不要となったデータが格納されているアドレス(物理アドレス)に上書きされる。
【0042】
例えば、画像形成装置において、コピーやスキャンなどの画像データ入力を断続的に行い、入力された画像データを、図7に示すような制御により、フラッシュメモリにバッファリングし続けたとすると、容易に、短期間内にフラッシュメモリの記憶容量を超えるデータの書き込みが発生し、書き込み負荷超過状態となる。この状態になってからも、データのバッファリング制御を継続した場合、フラッシュメモリ内の何れかのブロックにおいて、データの書き込み間隔が短くなり、データ保持期間が低下することになる。
【0043】
このようにデータ保持期間が低下した場合、画像データが消失するだけでなく、画像形成装置の動作に支障をきたすリスクもある。例えば、図7に示すように、フラッシュメモリ内に、プログラム等の重要データが格納されている固定データ領域と、一時的なデータを格納するバッファ領域とを設けた状態で、バッファ領域に対してデータ書き込みを行った結果、書き込み負荷超過状態となったとする。この時、どのブロックに対してどのデータを書き込むかは、予めフラッシュメモリが備えるウェアレベリングの制御により決定されることがあるため、その場合にはフラッシュメモリ内の全ブロック及び全データが書き込み対象となる可能性がある。
【0044】
一般的に、ウェアレベリングは、フラッシュメモリ内の全ブロックに対して行われるため、バッファ領域のみにデータの書き込みを行ったとしても、図8に示すような、ブロック毎の書き込み回数の分散を目的とした置き換え処理により、固定データ領域に対しても置き換えが発生する。そのため、書き込み負荷超過状態になって以降のデータの書き込みにおいて、固定データ領域のデータが置き換えられた場合、当該データの保持期間が低下する。特に、当該データが、プログラム等の重要データであった場合、フラッシュメモリに対するデータバッファリングを原因として、システムに対して致命的なエラーを発生させる大きなリスクを負う事となる。
【0045】
具体的に説明すると、図8(a)に示すように、バッファ領域のみにデータの書き込みを行うと、各ブロック間で書き込み回数の偏りが発生する。そこで、ウェアレベリングでは、書き込み回数の偏りが大きくなった時点で、偏り是正のためにデータの置き換え処理を行う。まず、図8(b)に示すように、バッファ領域へのデータの書き込みが発生した時点で、固定データ領域の固定データを、バッファ領域の空き領域に移動する。続いて、図8(c)に示すように、元々固定データが格納されていた固定データ領域のデータを消去した後、当該固定データ領域へのデータの書き込みを行う。この一連の置き換え処理により、重要なデータである固定データは書き込み回数が多いバッファ領域に格納されることになり、その結果、固定データの保持期間が低下し、固定データが消失したり読み出せなくなったりした場合には画像形成装置に致命的なエラーが発生する恐れがある。
【0046】
このようなリスクを回避するために、本実施例では、フラッシュメモリにデータを書き込む際に、書き込み負荷超過状態となることを事前に予測し、書き込み負荷超過状態となると予測される場合には、書き込み負荷を軽減する制御を行う。具体的には、書き込み負荷超過状態は、例えば、フラッシュメモリの各ブロックのデータ保持期間を十分に確保可能な書き込み間隔(推奨書き込み間隔)を5minとし、フラッシュメモリの記憶容量を4GBとすると、過去5min間に、4GBを超えるデータ書き込みがあった場合に生じる。そこで、上記の推奨書き込み間隔とフラッシュメモリの記憶容量とを用いて、書き込み負荷超過状態となることを事前に予測する。この書き込み負荷超過状態を事前に予測する方法としては、以下に示す方法がある。
【0047】
[第1の予測方法]
第1の予測方法は、フラッシュメモリのデータバスを監視する方法である。例えば、図9(a)に示すように画像データのバッファリング制御を実施する時に、フラッシュメモリ13へのデータの書き込み速度(所定時間の平均値でもよいし、所定時間の最大値でもよい。)を計測し、この書き込み速度に基づいて、5分間の累積書き込みデータ量(すなわち、推奨書き込み間隔に達していないブロックに書き込まれるデータの総量)を計算する。そして、図9(b)に示すように、計算した5分間の累計書き込みデータ量がフラッシュメモリの記憶容量である4GBを超える場合、該データ書き込み速度でバッファリングを継続した時、書き込み負荷超過状態となると予測することができる。
【0048】
[第2の予測方法]
第2の予測方法は、画像入力の動作モードに基づいて予測する方法である。例えば、画像形成装置の画像入力装置14によって入力される画像データのサイズが、画像入力装置14の動作モードや画像の種類によって決定される場合、予め表1に示すようなテーブルを作成する。具体的には、スキャンの解像度とスキャンサイズから画像データのサイズを求め、画像データのサイズとスキャナ生産性(ppm:page per minute)から単位時間あたりのデータ量を求め、この単位時間あたりのデータ量から5分間の累積書き込みデータ量を算出する。そして、累積書き込みデータ量がフラッシュメモリの記憶容量(4GB)を越える時に書き込み負荷超過状態と判定する。表1のパターンでは、No.2、4、6の動作モードにおいて、書き込み負荷超過状態になると予測することができる。
【0049】
【表1】
【0050】
このような方法を用いて書き込み負荷超過状態になると予測された場合の書き込み負荷軽減方法について説明する。ここでは一例として、画像入力装置14をスキャナとした場合のフラッシュメモリ13への書き込み負荷軽減方法を示す。
【0051】
図10(a)に示すように、スキャナを高速動作モードにて動作させて連続読み取りを実施し、断続的な画像データのバッファリング制御を行う際、上述した第1の予測方法又は第2の予測方法により、5分間の累計書き込みデータ量を計算する。そして、図10(b)に示すように、5分間の累計書き込みデータ量がフラッシュメモリの記憶容量を越える(すなわち、書き込み負荷超過状態になる)と予測された場合、スキャナの動作モードを低速動作モードに切り替えるなどして、スキャナ生産性(画像入力速度)を低下させて書き込み負荷の軽減を行い、書き込み負荷超過状態となることを回避する。
【0052】
なお、スキャナ生産性(ここでは動作モード)の切り替えタイミングは、高速動作モード時及び低速動作モード時のスキャナ生産性から閾値(時間)を適切に設定し、データバッファリング開始からの経過時間が閾値を超えた時点で、スキャナ生産性の切り替え制御を行えばよい。例えば、図10の例で、高速動作モード時のスキャナ生産性をH[ppm]、低速動作モードの生産性をL[ppm]、フラッシュメモリの容量をC[GB]、データ保持期間を十分な期間に保つために必要となるデータの書き込み間隔をT[min]、画像データのサイズをS[MB]とすると、閾値Tth[min]は以下のように計算できる。
【0053】
((H×Tth×S)+(L×(T−Tth)×S))/1024<C
Tth<(1024×C−L×T×S)/(H−L)×S … (1)
【0054】
このように、上記式(1)に従って閾値Tthを設定し、バッファリング開始からの経過時間がTthを超えた時点で、スキャナ生産性の切り替えを行うことで、書き込み負荷超過状態を回避することができる。
【0055】
具体的な数値で説明すると、図10(b)の(1)は、4.88GB/5分のペースでデータを書き込んでいる状態を示しており、このペースでデータを書き込むと書き込み開始から約4分(4GB/4.88GB×5分)でフラッシュメモリ13の記憶容量を越えてしまう。(2)〜(4)は、閾値である3分(図の5分)経過後から2.44GB/5分のペースでデータを書き込んでいる状態を示しており、書き込み開始から3分経過後5分までの間(図の5分から7分)は、2.44GB/5分のペースでデータが書き込まれ、5分経過後の累積書き込みデータ量は約3.9GBとなり、フラッシュメモリ13の記憶容量である4GB以下となる((2)参照)。書き込み開始から5分経過後8分までの間(図の7分から10分)は、2.44GB/5分のペースでデータを書き込むが、(1)でデータが書き込まれたブロックは推奨書き込み間隔を越え、4.88GB/5分のペースで累計書き込みデータ量が減るため、累計書き込みデータ量は、2.44GB/5分のペースで減っていく((3)参照)。書き込み開始から8分経過後(図の10分以降)は、全てのブロックに2.44GB/5分のペースでデータを書き込むため、累計書き込みデータ量は2.44GB/5分で一定の値となる。
【0056】
図10では、閾値経過後にスキャナの動作モードを切り替えてから、低速動作モードを継続しているが、低速動作モードに切り替えることによって5分間の累積書き込みデータ量が十分に小さい値になる場合は、例えば、図10(c)に示すように、5分間の累積書き込みデータ量が安定した段階で動作モードを元の高速動作モードに切り替え、この動作モードの切り替えを繰り返すようにしてもよい。
【0057】
また、図10では、閾値時間を求め、閾値時間経過後にスキャナの動作モードを切り替える(すなわち、書き込み開始からの時間に基づいて書き込み負荷超過状態を予測する)ようにしたが、フラッシュメモリ13の記憶容量よりも小さい閾値容量を基準にし、5分間の累積書き込みデータ量が閾値容量を越えた時にスキャナの動作モードを切り替える(すなわち、容量に基づいて書き込み負荷超過状態を予測する)こともできる。
【0058】
例えば、図11(a)に示すように、スキャナを高速動作モードにて動作させて連続読み取りを実施し、断続的な画像データのバッファリング制御を行う際、5分間の累計書き込みデータ量を計算する。そして、図11(b)に示すように、フラッシュメモリ13の記憶容量4GBよりもαだけ小さい値を閾値容量として設定し、この閾値容量を超えた時にスキャナの動作モードを切り替えるようにしてもよい。また、上記と同様に、図11(c)に示すように、5分間の累積書き込みデータ量が安定した段階(若しくは、累積書き込みデータ量が上記閾値容量よりも小さい第2の閾値容量以下となった段階)で動作モードを元の高速動作モードに切り替え、この動作モードの切り替えを繰り返すようにしてもよい。
【0059】
なお、図10及び図11では、動作モードを切り替えることによって書き込み負荷超過状態を回避したが、例えば、スキャンの解像度のみを下げたり、スキャン速度のみを遅くしたり、スキャンの時間間隔(次のスキャンを開始するまでの時間)を長くしたり、画像入力装置14又は画像処理装置15で、画像データの色数を減らしたり(例えば1677万色から256色に減色)、画像データのカラーモードを変えたり(例えば、カラーから白黒)、これらを任意に組み合わせたりして、書き込み負荷超過状態を回避してもよい。
【0060】
また、画像入力装置14側の機構部の動作を制御する代わりに、若しくは、画像入力装置14側の機構部の動作の制御と共に、画像出力装置16側の機構部の動作を制御してもよい。例えば、画像出力装置16の動作モードを変更して、出力(印刷)速度を遅くしたり、出力(印刷)の時間間隔(次のページの印刷を開始するまでの時間)を長くしたりすることによって、画像データのバッファリングの速度を抑制してもよい。また、CPU11がメインメモリ12から画像データを読み出すタイミングやフラッシュメモリ13に画像データを書き込むタイミング、フラッシュメモリ13から画像データを読み出すタイミングを遅くするなどして、画像データのバッファリング自体を抑制してもよい。
【0061】
以下、本実施例の画像形成装置における書き込み負荷軽減制御について、図12のフローチャート図を参照して説明する。CPU11は、フラッシュメモリ13が記憶するプログラムを実行することにより、図12のフローチャートに示す処理を実行する。なお、図12では、図10の閾値時間(Tth)に基づいて書き込み負荷軽減制御を行うものとする。
【0062】
画像入力装置14が画像データの入力を開始すると(S101)、制御部はデータのバッファリングを開始する(S102)。例えば、画像入力装置14(スキャナ)は高速動作モードにて画像データを取り込み、取り込んだ画像データを画像処理装置15に出力する。画像処理装置15は所定の画像処理を行った後、処理後の画像データをメインメモリ12に格納する。そして、CPU11は、メインメモリ12に格納された画像データをフラッシュメモリ13の所定のブロックに書き込む。その際、フラッシュメモリ13は、ウェアレベリング機能を用いて、画像データを書き込む。その後、画像出力装置16のデータ受け入れ準備が整ったら、CPU11は、フラッシュメモリ13から順次画像データを読み出して画像出力装置16に出力し、画像出力装置16(印刷エンジン)は出力を開始する(S103)。
【0063】
次に、CPU11は、上述した第1の予測方法又は第2の予測方法などにより、所定期間(推奨書き込み間隔)内の累積書き込みデータ量を計算し、その累積書き込みデータ量が所定値(フラッシュメモリ13の記憶容量)を越えるか否かを判断することによって、書き込み負荷超過状態となるかを判断する(S104)。
【0064】
書き込み負荷超過状態とならない場合は、書き込み負荷軽減制御を行う必要がないため、S107にスキップし、書き込み負荷超過状態となる場合は、CPU11は、バッファリング開始から所定期間(上記の閾値Tth)が経過したかを判断する(S105)。バッファリング開始から所定期間が経過していない場合は、まだ書き込み負荷軽減制御を行う必要がないため、S107にスキップする。
【0065】
一方、バッファリング開始から所定期間が経過した場合は、このままフラッシュメモリ13への書き込みを継続すると、いずれかのブロックでデータの書き込み間隔が推奨書き込み間隔よりも短くなり、当該ブロックのデータ保持期間が短くなってしまうため、CPU11は、書き込み負荷軽減制御を行う(S106)。具体的には、スキャナの動作モードを低速動作モードに切り替えたり、解像度を下げたり、スキャン速度を遅くしたり、スキャン間隔を長くしたり、画像データの色数を減らしたり、画像データのカラーモードを変えたり、印刷速度を遅くしたり、印刷間隔を長くしたり、画像データのバッファリング速度を遅くしたりする。
【0066】
その後、CPU11は、画像データの入力が完了したかを判断し(S107)、画像データの入力が完了していない場合はS105に戻って同様の処理を繰り返し、画像データの入力が完了した場合は、CPU11は、データのバッファリングを終了し(S108)、画像出力装置16は、画像出力を終了する(S109)。
【0067】
なお、以上の説明では、入力される画像データのサイズから累積書き込みデータ量を計算したが、NAND型のフラッシュメモリは、デバイス構造上の制約により、データのリード/ライトはページサイズ単位、データの消去はブロックサイズ単位で行う必要があり、この制約に起因して、フラッシュメモリに実際に書き込まれるデータのサイズは、入力されるデータのサイズよりも大きくなる。従って、上記所定期間内の累積書き込みデータ量を計算する際に、入力されるデータのサイズではなく、フラッシュメモリに実際に書き込まれるデータのサイズを用いることで、書き込み負荷超過状態となるか否かをより正確に予測することができる。
【0068】
具体的には、図13に示すように、外部(Host Controller)からの書き込みデータサイズに対して、フラッシュメモリ内部の書き込みデータサイズがどの程度大きくなるかを現す指標として、W/A(Write Amplification)係数がある。例えば、外部(Host Controller)からの書き込みデータサイズが4KBで、フラッシュメモリ内部の書き込みデータサイズが160KBの場合、W/A係数は160KB/4KB=40となる。
【0069】
このW/A係数は、図14の測定結果に示すように、外部からの書き込みデータサイズが大きくなるほど減少し、外部からの書き込みデータサイズが小さくなるほど増加する。つまり、外部からの書き込みデータサイズを小サイズに制約すると、外部からの書き込みデータサイズに対してフラッシュメモリ内部の書き込みデータサイズは増加し、外部バスでのデータ転送サイズを大サイズにすると、外部からの書き込みデータサイズとフラッシュメモリ内部の書き込みデータサイズとの差異はほぼなくなる。
【0070】
そこで、データバッファリング時の書き込み負荷超過状態を予測する第1及び第2の予測方法において、この指標を用いて累積書き込みデータ量を計算する。つまり、所定期間内の累積書き込みデータ量にW/A係数を乗算した値が、フラッシュメモリ13の記憶容量を超える場合に、書き込み負荷超過状態になると予測することができる。
【0071】
以上説明したように、フラッシュメモリ13を画像データのバッファメモリとして使用する画像形成装置10において、入力画像データのバッファリングを実施する際に、フラッシュメモリ13に所定期間(データ保持期間を十分な期間に保つために必要となるデータの書き込み間隔)内に書き込まれる累積書き込みデータ量(好ましくはW/A係数を考慮した累積書き込みデータ量)が所定量(フラッシュメモリ13の記憶容量)を超える(すなわち、書き込み負荷超過状態となる)と予測される場合に、動作モードを変更するなどして画像データの入力を抑制する書き込み負荷軽減制御を行うことにより、ゲート絶縁膜の劣化を抑制することができ、フラッシュメモリ13の各ブロックのデータ保持期間を向上させることができ、フラッシュメモリ13の寿命を延長することができる。
【0072】
なお、本発明は上記実施例に限定されるものではなく、本発明の趣旨を逸脱しない限りにおいて、フラッシュメモリを備える装置の構成やフラッシュメモリの制御方法は適宜変更可能である。例えば、上記実施例では、書き込み負荷超過状態の予測方法として、データバスを監視する方法と画像入力の動作モードに基づいて予測する方法を例示したが、累積書き込みデータ量を算出可能な任意の方法を用いることができる。また、上記実施例では、書き込み負荷軽減制御として、高速動作モードと低速動作モードの切り替える場合を例示したが、データの入力、及び/又は、データのバッファリングを抑制可能な任意の制御を行うことができる。
【産業上の利用可能性】
【0073】
本発明は、フラッシュメモリを備える情報処理装置、特に、フラッシュメモリを画像データのバッファとして使用する画像形成装置に利用可能である。
【符号の説明】
【0074】
10 画像形成装置
11 CPU
12 メインメモリ
13 フラッシュメモリ
14 画像入力装置
15 画像処理装置
16 画像出力装置
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14