(57)【要約】【課題】記憶媒体としてフラッシュメモリを使用している画像形成装置において、各機能の動作に必要なデータを保持可能にしつつ、データの信頼性及び機能のパフォーマンスの向上を図る。【解決手段】単一メモリセル当たりに多値でデータを記録するか２値でデータを記録するかを領域毎に変更可能なフラッシュメモリを備える画像形成装置において、前記画像形成装置の使用状態を監視し、使用履歴情報を生成して記憶する履歴情報生成部と、前記使用履歴情報を参照して、使用頻度が相対的に高いデータを特定する判定部と、少なくとも前記特定したデータを２値で記録できるように、前記フラッシュメモリの記録領域における、２値でデータを記録する領域と多値でデータを記録する領域との比率を変更する記録領域変更部と、を有する。【選択図】図３
2015228197.tif 000002
【特許請求の範囲】
【請求項１】
単一メモリセル当たりに多値でデータを記録するか２値でデータを記録するかを領域毎に変更可能なフラッシュメモリを備える画像形成装置において、
前記画像形成装置の使用状態を監視し、使用履歴情報を生成して記憶する履歴情報生成部と、
前記使用履歴情報を参照して、使用頻度が相対的に高いデータを特定する判定部と、
少なくとも前記特定したデータを２値で記録できるように、前記フラッシュメモリの記録領域における、２値でデータを記録する領域と多値でデータを記録する領域との比率を変更する記録領域変更部と、を有する、ことを特徴とする画像形成装置。
【請求項２】
前記履歴情報生成部は、前記フラッシュメモリへのデータのアクセスを監視し、データ毎に、データサイズ及びアクセス回数を取得して、前記使用履歴情報を生成し、
前記判定部は、前記使用履歴情報を参照して、各々のデータのアクセス回数と予め定めた閾値とを比較し、前記アクセス回数が前記閾値以上のデータを特定する、ことを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記履歴情報生成部は、前記画像形成装置に設けられた操作部の操作を監視し、前記操作部により実行が指示された機能毎に、当該機能により使用されるデータのデータサイズ及び当該機能の実行回数を取得して、前記使用履歴情報を生成し、
前記判定部は、前記使用履歴情報を参照して、各々の機能の実行回数と予め定めた閾値とを比較し、前記実行回数が前記閾値以上の機能により使用されるデータを特定する、ことを特徴とする請求項１又は２に記載の画像形成装置。
【請求項４】
前記履歴情報生成部は、前記画像形成装置に設けられた操作部の操作を監視し、前記操作部によりログインされたユーザ毎に、当該ユーザにより使用されるデータのデータサイズ及び当該ユーザの装置使用回数を取得して、前記使用履歴情報を生成し、
前記判定部は、前記使用履歴情報を参照して、各々のユーザの装置使用回数と予め定めた閾値とを比較し、前記装置使用回数が前記閾値以上のユーザにより使用されるデータを特定する、ことを特徴とする請求項１乃至３のいずれか一に記載の画像形成装置。
【請求項５】
前記データは、スキャンデータ、コピーデータ、プリントデータ、ＦＡＸデータ、カウンタ情報のいずれか１つを含む、ことを特徴とする請求項１乃至４のいずれか一に記載の画像形成装置。
【請求項６】
前記判定部は、前記特定したデータの合計データサイズが予め定めた領域サイズを超えるまで、前記データを順に特定する、ことを特徴とする請求項１乃至５のいずれか一に記載の画像形成装置。
【請求項７】
前記記録領域変更部は、前記２値でデータを記録する領域に予め記録されていたデータを、前記多値でデータを記録する領域若しくは他の記録装置に一時的に退避させ、前記領域の比率を変更した後に、待避させたデータを前記２値でデータを記録する領域に書き戻す、ことを特徴とする請求項１乃至６のいずれか一に記載の画像形成装置。
【請求項８】
前記記録領域変更部は、前記画像形成装置の起動時、終了時、不使用時のいずれかのタイミングで前記領域の比率の変更を行う、ことを特徴とする請求項１乃至７のいずれか一に記載の画像形成装置。
【請求項９】
単一メモリセル当たりに多値でデータを記録するか２値でデータを記録するかを領域毎に変更可能なフラッシュメモリを備える画像形成装置における前記フラッシュメモリの制御方法であって、
前記画像形成装置の使用状態を監視し、使用履歴情報を生成して記憶する履歴情報生成処理と、
前記使用履歴情報を参照して、使用頻度が相対的に高いデータを特定する判定処理と、
少なくとも前記特定したデータを２値で記録できるように、前記フラッシュメモリの記録領域における、２値でデータを記録する領域と多値でデータを記録する領域との比率を変更する記録領域変更処理と、を実行する、ことを特徴とするフラッシュメモリの制御方法。
【請求項１０】
前記履歴情報生成処理では、前記フラッシュメモリへのデータアクセスを監視し、データ毎に、データサイズ及びアクセス回数を取得して、前記使用履歴情報を生成し、
前記判定処理では、前記使用履歴情報を参照して、各々のデータのアクセス回数と予め定めた閾値とを比較し、前記アクセス回数が前記閾値以上のデータを特定する、ことを特徴とする請求項９に記載のフラッシュメモリの制御方法。
【請求項１１】
前記履歴情報生成処理では、前記画像形成装置に設けられた操作部の操作を監視し、前記操作部により実行が指示された機能毎に、当該機能により使用されるデータのデータサイズ及び当該機能の実行回数を取得して、前記使用履歴情報を生成し、
前記判定処理では、前記使用履歴情報を参照して、各々の機能の実行回数と予め定めた閾値とを比較し、前記実行回数が前記閾値以上の機能により使用されるデータを特定する、ことを特徴とする請求項９又は１０に記載のフラッシュメモリの制御方法。
【請求項１２】
前記履歴情報生成処理では、前記画像形成装置に設けられた操作部の操作を監視し、前記操作部によりログインされたユーザ毎に、当該ユーザにより使用されるデータのデータサイズ及び当該ユーザの装置使用回数を取得して、前記使用履歴情報を生成し、
前記判定処理では、前記使用履歴情報を参照して、各々のユーザの装置使用回数と予め定めた閾値とを比較し、前記装置使用回数が前記閾値以上のユーザにより使用されるデータを特定する、ことを特徴とする請求項９乃至１１のいずれか一に記載のフラッシュメモリの制御方法。
【請求項１３】
前記データは、スキャンデータ、コピーデータ、プリントデータ、ＦＡＸデータ、カウンタ情報のいずれか１つを含む、ことを特徴とする請求項９乃至１２のいずれか一に記載のフラッシュメモリの制御方法。
【請求項１４】
前記判定処理では、前記特定したデータの合計データサイズが予め定めた領域サイズを超えるまで、前記データを順に特定する、ことを特徴とする請求項９乃至１３のいずれか一に記載のフラッシュメモリの制御方法。
【請求項１５】
前記記録領域変更処理では、前記２値でデータを記録する領域に予め記録されていたデータを、前記多値でデータを記録する領域若しくは他の記録装置に一時的に退避させ、前記領域の比率を変更した後に、待避させたデータを前記２値でデータを記録する領域に書き戻す、ことを特徴とする請求項９乃至１４のいずれか一に記載のフラッシュメモリの制御方法。
【請求項１６】
前記記録領域変更処理を、前記画像形成装置の起動時、終了時、不使用時のいずれかのタイミングで実行する、ことを特徴とする請求項９乃至１５のいずれか一に記載のフラッシュメモリの制御方法。
【請求項１７】
単一メモリセル当たりに多値でデータを記録するか２値でデータを記録するかを領域毎に変更可能なフラッシュメモリを備える画像形成装置で動作する制御プログラムであって、
前記画像形成装置に、
前記画像形成装置の使用状態を監視し、使用履歴情報を生成して記憶する履歴情報生成処理、
前記使用履歴情報を参照して、使用頻度が相対的に高いデータを特定する判定処理、
少なくとも前記特定したデータを２値で記録できるように、前記フラッシュメモリの記録領域における、２値でデータを記録する領域と多値でデータを記録する領域との比率を変更する記録領域変更処理、を実行させる、ことを特徴とする制御プログラム。
【請求項１８】
前記履歴情報生成処理では、前記フラッシュメモリへのデータアクセスを監視し、データ毎に、データサイズ及びアクセス回数を取得して、前記使用履歴情報を生成し、
前記判定処理では、前記使用履歴情報を参照して、各々のデータのアクセス回数と予め定めた閾値とを比較し、前記アクセス回数が前記閾値以上のデータを特定する、ことを特徴とする請求項１７に記載の制御プログラム。
【請求項１９】
前記履歴情報生成処理では、前記画像形成装置に設けられた操作部の操作を監視し、前記操作部により実行が指示された機能毎に、当該機能により使用されるデータのデータサイズ及び当該機能の実行回数を取得して、前記使用履歴情報を生成し、
前記判定処理では、前記使用履歴情報を参照して、各々の機能の実行回数と予め定めた閾値とを比較し、前記実行回数が前記閾値以上の機能により使用されるデータを特定する、ことを特徴とする請求項１７又は１８に記載の制御プログラム。
【請求項２０】
前記履歴情報生成処理では、前記画像形成装置に設けられた操作部の操作を監視し、前記操作部によりログインされたユーザ毎に、当該ユーザにより使用されるデータのデータサイズ及び当該ユーザの装置使用回数を取得して、前記使用履歴情報を生成し、
前記判定処理では、前記使用履歴情報を参照して、各々のユーザの装置使用回数と予め定めた閾値とを比較し、前記装置使用回数が前記閾値以上のユーザにより使用されるデータを特定する、ことを特徴とする請求項１７乃至１９のいずれか一に記載の制御プログラム。
【請求項２１】
前記データは、スキャンデータ、コピーデータ、プリントデータ、ＦＡＸデータ、カウンタ情報のいずれか１つを含む、ことを特徴とする請求項１７乃至２０のいずれか一に記載の制御プログラム。
【請求項２２】
前記判定処理では、前記特定したデータの合計データサイズが予め定めた領域サイズを超えるまで、前記データを順に特定する、ことを特徴とする請求項１７乃至２１のいずれか一に記載の制御プログラム。
【請求項２３】
前記記録領域変更処理では、前記２値でデータを記録する領域に予め記録されていたデータを、前記多値でデータを記録する領域若しくは他の記録装置に一時的に退避させ、前記領域の比率を変更した後に、待避させたデータを前記２値でデータを記録する領域に書き戻す、ことを特徴とする請求項１７乃至２２のいずれか一に記載の制御プログラム。
【請求項２４】
前記記録領域変更処理を、前記画像形成装置の起動時、終了時、不使用時のいずれかのタイミングで実行する、ことを特徴とする請求項１７乃至２３のいずれか一に記載の制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置及びフラッシュメモリの制御方法並びに制御プログラムに関し、特に、フラッシュメモリを搭載する画像形成装置及び当該フラッシュメモリの記録領域を変更する制御方法並びに制御プログラムに関する。
【背景技術】
【０００２】
記憶媒体としてフラッシュメモリを採用する画像形成装置が増加してきている。フラッシュメモリの用途としては、プログラムの格納だけでなく、画像データのバッファメモリとして使用し、頻繁にデータの書き換えを行うような使い方も行われている。一方で、半導体製造プロセス・ルールの微細化により、フラッシュメモリの最大書き換え回数やデータ保持期間は減少傾向にある。一般に、フラッシュメモリはデバイス寿命（予備セクタの枯渇）に至った場合、読み込み専用（書き換え禁止）状態となる場合が多く、画像形成装置としてユーザの要求に応えることが困難になる。
【０００３】
そのような状況を鑑みて、フラッシュメモリの中には、単一メモリセルあたりにデータを多値（このようなセルをＭＬＣ：Multi Level Cellと呼ぶ。）で記録するか、２値（このようなセルをＳＬＣ：Single Level Cellと呼ぶ。）で記録するかを切り替えることができるデバイスが提供されており、多値で記録する場合には、大量のデータを記録することができ、２値で記録する場合には、データの書き込み回数およびデータ保持期間を延長することができる。
【０００４】
このようなデバイスに関して、例えば、下記特許文献１には、ある電圧レベルのしきい値を複数設定し、２ビット以上のデータを記憶する複数のメモリセルを有するメモリアレイを有した１以上の不揮発性半導体メモリと、外部から発行されたコマンドに基づいて前記不揮発性半導体メモリの動作指示を行うコントローラとを備え、前記不揮発性半導体メモリは、前記不揮発性半導体メモリにデータが書き込まれる際に、２値でデータを格納するか多値でデータを格納するかを示す２値／多値書き込み情報を有したブロック管理テーブルを備え、前記コントローラは、前記ブロック管理テーブルの２値／多値書き込み情報を参照して前記不揮発性半導体メモリにデータを書き込む記憶装置が開示されている。
【０００５】
また、下記特許文献２には、外部装置と、前記外部装置がアクセスするデータを記憶する第１記憶手段と、前記データを記憶し、前記データの書き換え可能回数が前記第１記憶手段より大きい第２記憶手段と、に接続されたアクセス制御装置であって、前記外部装置が前記データをアクセスするために指定した外部アドレスと、前記第１記憶手段での前記データの記憶位置または前記第２記憶手段での前記データの記憶位置のいずれかを表す内部アドレスと、前記データの書き換え回数と、を対応づけた変換テーブルを記憶するテーブル記憶手段と、書込みが指定された前記外部アドレスに対応する前記内部アドレスが前記第１記憶手段の前記内部アドレスであるか否かを判断し、前記第１記憶手段の前記内部アドレスである場合に、前記内部アドレスに対応する前記書き換え回数が予め定められた第１閾値を超えたか否かを判断する判断手段と、前記書き換え回数が前記第１閾値を超えた前記第１記憶手段の前記内部アドレスに記憶された前記データを、前記第２記憶手段の前記内部アドレスに移動する移動手段と、移動した前記データの前記外部アドレスに対応する前記内部アドレスを、移動先の前記内部アドレスに置換して前記変換テーブルを更新するテーブル更新手段と、を備えるアクセス制御装置が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−４８６８０号公報
【特許文献２】特開２００９−６４３９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記特許文献１の技術は、メモリのコントローラが書き込み回数をカウント・管理し、ブロックの書き込み回数が設定値以上になったら、２値でデータを格納する領域にデータを格納するものであり、書き込み回数が多いデータを２値で記録することによりデータの信頼性を確保することができる。しかしながら、特許文献１は記憶装置の発明であり、書き込み回数に基づいてデータの記録方式を変更しても記憶装置自体に問題は生じないが、フラッシュメモリに格納したデータに基づいて処理を実行する装置の場合は、その装置の動作状態に応じてフラッシュメモリに書き込むデータ量が変化するため、データの記録方式の変更によってフラッシュメモリの使用可能容量が減少すると、装置の動作に支障をきたす場合が生じる。
【０００８】
また、特許文献２のように、ＭＬＣ、ＳＬＣ、ＦｅＲＡＭ（Ferroelectric Random Access Memory）などの複数のデバイスを設け、書き込み回数が閾値を超えた内部アドレスに記憶されたデータを、最大書き換え回数がより多いＳＬＣまたはＦｅＲＡＭの内部アドレスに移動することによって、データ保持期間を延長することができる。しかしながら、この方法では、予めＭＬＣ、ＳＬＣ、ＦｅＲＡＭなどの複数のデバイスが必要になるため、装置構成が複雑になり、コストも上昇してしまう。
【０００９】
また、多値で記録したデータを読み出す際に２値のデータに変換する処理が必要になるため、多値で記録したデータを利用して動作する機能のパフォーマンスが低下する。
【００１０】
このように、大量にデータを記録できるようにするためには多値でデータを記録する方が好ましく、記録したデータの信頼性や機能のパフォーマンスを向上させるためには２値でデータを記録する方が好ましく、従来の方法では双方の要求を満足することができないという問題があった。
【００１１】
本発明は、上記問題点に鑑みてなされたものであって、その主たる目的は、記憶媒体としてフラッシュメモリを使用している画像形成装置において、各機能の動作に必要なデータを保持可能にしつつ、データの信頼性及び機能のパフォーマンスの向上を図ることができる画像形成装置及びフラッシュメモリの制御方法並びに制御プログラムを提供することにある。
【課題を解決するための手段】
【００１２】
本発明の一側面は、単一メモリセル当たりに多値でデータを記録するか２値でデータを記録するかを領域毎に変更可能なフラッシュメモリを備える画像形成装置において、前記画像形成装置の使用状態を監視し、使用履歴情報を生成して記憶する履歴情報生成部と、前記使用履歴情報を参照して、使用頻度が相対的に高いデータを特定する判定部と、少なくとも前記特定したデータを２値で記録できるように、前記フラッシュメモリの記録領域における、２値でデータを記録する領域と多値でデータを記録する領域との比率を変更する記録領域変更部と、を有することを特徴とする。
【００１３】
本発明の一側面は、単一メモリセル当たりに多値でデータを記録するか２値でデータを記録するかを領域毎に変更可能なフラッシュメモリを備える画像形成装置における前記フラッシュメモリの制御方法であって、前記画像形成装置の使用状態を監視し、使用履歴情報を生成して記憶する履歴情報生成処理と、前記使用履歴情報を参照して、使用頻度が相対的に高いデータを特定する判定処理と、少なくとも前記特定したデータを２値で記録できるように、前記フラッシュメモリの記録領域における、２値でデータを記録する領域と多値でデータを記録する領域との比率を変更する記録領域変更処理と、を実行することを特徴とする。
【００１４】
本発明の一側面は、単一メモリセル当たりに多値でデータを記録するか２値でデータを記録するかを領域毎に変更可能なフラッシュメモリを備える画像形成装置で動作する制御プログラムであって、前記画像形成装置に、前記画像形成装置の使用状態を監視し、使用履歴情報を生成して記憶する履歴情報生成処理、前記使用履歴情報を参照して、使用頻度が相対的に高いデータを特定する判定処理、少なくとも前記特定したデータを２値で記録できるように、前記フラッシュメモリの記録領域における、２値でデータを記録する領域と多値でデータを記録する領域との比率を変更する記録領域変更処理、を実行させることを特徴とする。
【発明の効果】
【００１５】
本発明の画像形成装置及びフラッシュメモリの制御方法並びに制御プログラムによれば、記憶媒体としてフラッシュメモリを使用している画像形成装置において、各機能の動作に必要なデータを保持可能にしつつ、データの信頼性及び機能のパフォーマンスの向上を図ることができる。
【００１６】
その理由は、単一メモリセル当たりに多値でデータを記録するか２値でデータを記録するかを領域ごとに変更可能なフラッシュメモリを備え、フラッシュメモリに対してデータを多値で記録するか２値で記録するかを制御可能な画像形成装置において、予め記憶したデータ種類や機能、ユーザの使用履歴情報を参照して、使用頻度が相対的に高いデータを特定し、特定したデータが２値で記録されるように、フラッシュメモリの記録領域における２値で記録する領域（ＳＬＣ領域）と多値で記録する領域（ＭＬＣ領域）との比率を動的に変更する制御を行うからである。
【図面の簡単な説明】
【００１７】
【図１】本発明の第１の実施例に係る画像形成装置の構成を示すブロック図である。
【図２】本発明の第１の実施例に係る画像形成装置の制御部の構成を示すブロック図である。
【図３】本発明の第１の実施例に係る画像形成装置の動作を示すフローチャート図である。
【図４】本発明の第１の実施例に係る画像形成装置の動作（データの使用頻度に基づくフラッシュメモリの記録領域の変更処理）を示すフローチャート図である。
【図５】本発明の第１の実施例に係るカウンタ情報テーブルの一例を示す図である。
【図６】本発明の第１の実施例に係るアクセス回数閾値テーブルの一例を示す図である。
【図７】本発明の第１の実施例に係るフラッシュメモリ領域テーブルの一例を示す図である。
【図８】本発明の第２の実施例に係る画像形成装置の動作（機能の使用頻度に基づくフラッシュメモリの記録領域の変更処理）を示すフローチャート図である。
【図９】本発明の第２の実施例に係る機能使用履歴テーブルの一例を示す図である。
【図１０】本発明の第２の実施例に係る実行回数閾値テーブルの一例を示す図である。
【図１１】本発明の第２の実施例に係るフラッシュメモリ領域テーブルの一例を示す図である。
【図１２】本発明の第３の実施例に係る画像形成装置の動作（ユーザの使用頻度に基づくフラッシュメモリの記録領域の変更処理）を示すフローチャート図である。
【図１３】本発明の第３の実施例に係るユーザ使用履歴テーブルの一例を示す図である。
【図１４】本発明の第３の実施例に係る使用回数閾値テーブルの一例を示す図である。
【図１５】本発明の第３の実施例に係るフラッシュメモリ領域テーブルの一例を示す図である。
【発明を実施するための形態】
【００１８】
フラッシュメモリは、一般に、ゲート電極が２層構造となったＭＯＳ（Metal Oxide Semiconductor）トランジスタ（セル）からなり、１バイト単位で読み出し／書き込み、消去、書き換えが可能な（すなわち、ソース線とビット線が個々のセルに繋がっている）ＮＯＲ型と、複数ビットでの読み出し／書き込み、消去、書き換えが可能な（すなわち、複数のセルがソース線とビット線の間に直列に接続された）ＮＡＮＤ型と、がある。いずれの場合も、浮遊ゲートとシリコン基板の間に高電界を加えることによって、電子がゲート絶縁膜をトンネリングして浮遊ゲートに注入され、これによってＭＯＳトランジスタがオフ状態からオン状態に変わるゲート電圧（しきい電圧）が変化することを利用して情報を記憶する。
【００１９】
そのため、フラッシュメモリへのデータ書き込み回数が多くなると、電子のトンネリングによってゲート絶縁膜が劣化し、浮遊ゲートに注入した電子がシリコン基板に逃げやすくなり、データ保持期間が短くなる。特に、ＮＡＮＤ型のフラッシュメモリでは、ブロック内の一部のセルに対する書き込みでもブロック単位で書き込みを行うため、書き込み回数が実質的に増加してゲート絶縁膜の劣化が進行し、データ保持期間が短くなる。更に、近年の半導体製造プロセス・ルールの微細化により、フラッシュメモリの最大書き込み回数やデータ保持時間が更に減少する傾向にある。
【００２０】
そこで、書き込み回数が多いデータを２値で記録する制御が行われているが、多値でデータを記録するデバイスと２値でデータを記録するデバイスの複数のデバイスを設けると、装置構成が複雑になってコストの上昇を招くため、コスト削減が求められる装置に適用することは困難である。また、単純に書き込み回数に基づいてデータの記録方式を変更すと、元々のフラッシュメモリの容量を想定して動作している装置の動作に不具合が発生する可能性がある。
【００２１】
この動作の不具合について詳述すると、メモリ単体を制御する場合は、単純に書き込み回数に基づいてデータを２値で記憶するか多値で記憶するかを切り替えても問題は生じない。しかしながら、フラッシュメモリを装置に組み込んで使用する場合は、装置の動作状態を考慮する必要がある。特に、ＭＦＰ（Multi Function Peripheral）などの画像形成装置のように、画像データのバッファとしてフラッシュメモリを使用する装置の場合、データの記録方式を多値から２値に変更することにより、単一メモリセル内に記録できるデータ量が少なくなり、フラッシュメモリのメモリセルを多く使用し、その結果、フラッシュメモリの使用可能領域が減少するため、スキャナなどで読み込んだ画像データを記憶することができずにスキャン動作が遅延したり、印刷データの各ページをラスタライズした画像データを記憶することができずに印刷動作が遅延したりする。
【００２２】
更に、多値でデータを記録した場合は、記録したデータを読み出して使用する際に多値のデータを２値のデータに変換する処理が必要になるため、多値で記録したデータを利用して動作する機能のパフォーマンスが低下するという問題もある。
【００２３】
このように、大量にデータを記録できるようにするためには多値でデータを記録する方が好ましく、記録したデータの信頼性や機能のパフォーマンスを向上させるためには２値でデータを記録する方が好ましく、どちらで記録する方がよいかは装置の使用状態に応じて変化する。そのため、データの信頼性や機能のパフォーマンスに着目して単に多値で記録したデータを２値で記録するような制御では装置を適切に動作させることはできず、装置構成を複雑にすることなく、装置の使用状態に応じてデータを適切に記録できる方法の提案が求められている。
【００２４】
そこで、本発明の一実施の形態では、装置の使用状態を監視してデータ種類や機能、ユーザの使用履歴情報として保存しておき、装置の起動時や終了時、装置が使用されない夜間などの不使用時などに、上記使用履歴情報を参照して使用頻度が相対的に高いデータを特定し、特定したデータが２値で記録されるように、フラッシュメモリの記録領域（２値で記録する領域と多値で記録する領域の比率）を変更する制御を行う。
【００２５】
これにより、使用頻度が高いデータの信頼性を向上させ、そのデータを読み書きする際のフラッシュメモリのアクセス性能（すなわち、そのデータを使用する機能のパフォーマンス）を向上させることができると共に、フラッシュメモリの記憶容量の減少を極力抑制することにより、他の機能によって使用されるデータを確実にフラッシュメモリに記録することができる。
【実施例１】
【００２６】
上記した本発明の実施の形態についてさらに詳細に説明すべく、本発明の第１の実施例に係る画像形成装置及びフラッシュメモリの制御方法並びに制御プログラムについて、図１乃至図７を参照して説明する。図１は、本実施例の画像形成装置の構成を示すブロック図であり、図２は、画像形成装置の制御部の構成を示すブロック図である。また、図３及び図４は、本実施例の画像形成装置の動作を示すフローチャート図であり、図５乃至図７は、各々、カウンタ情報テーブル、アクセス回数閾値テーブル、フラッシュメモリ領域テーブルの一例である。
【００２７】
本実施例の情報処理装置は、例えば、ＭＦＰ（Multi Function Peripheral）などの画像形成装置であり、この画像形成装置は、図１に示すように、メインコントローラ１００、画像読取部１１０、画像処理部１２０、画像形成部１３０、操作表示部１４０等で構成される。
【００２８】
メインコントローラ１００は、ＲＡＭ（Random Access Memory）１０１、ＲＯＭ（Read Only Memory）１０２、ＣＰＵ（Central Processing Unit）１０３、フラッシュメモリ１０４等によって構成される。
【００２９】
ＣＰＵ１０３とＲＯＭ１０２とＲＡＭ１０１とで制御部が構成され、制御部は、操作表示部１４０からのユーザの操作を受け付け、画像読取部１１０、画像処理部１２０、画像形成部１３０、操作表示部１４０、フラッシュメモリ１０４に対して所定の制御を実行する。また、制御部は、図２に示すように、履歴情報生成部１０５と、判定部１０６と、記録領域変更部１０７などとして機能する。
【００３０】
履歴情報生成部１０５は、フラッシュメモリ１０４へのアクセスを監視し、データの拡張子やデータに付与された属性情報などを参照してフラッシュメモリ１０４に読み書きされるデータの種類を特定し、各種類のデータのデータサイズ及びアクセス回数を取得する。そして、データ種類毎の使用履歴情報を作成してＲＡＭ１０１などに保存する。
【００３１】
判定部１０６は、データ種類毎の使用履歴情報を参照して、各データの使用頻度を判定し、使用頻度が相対的に高いデータを特定する。例えば、各データのアクセス回数と予め設定した閾値とを比較すると共に、アクセス回数が閾値以上のデータの合計データサイズと予め設定した領域サイズとを比較し、アクセス回数が閾値以上、かつ、合計データサイズが領域サイズ以下のデータを特定する。なお、必ずしも画像形成装置が取り扱う全てのデータに対して使用頻度の判定を行う必要はなく、プログラムのデータや画像形成装置の設定データなどの重要なデータは使用頻度の判定対象から除外してもよい。
【００３２】
記録領域変更部１０７は、判定部１０６が特定したデータが２値で記録されるように、フラッシュメモリ１０４に対して、２値でデータを記録する領域（ＳＬＣ領域と呼ぶ。）と多値でデータを記録する領域（ＭＬＣ領域と呼ぶ。）との比率を変更する。具体的には、使用頻度が相対的に高いデータは２値で記録され、他のデータは多値で記録されるように、フラッシュメモリ１０４におけるＳＬＣ領域とＭＬＣ領域の比率を動的に変更する。その際、記録領域変更部１０７は、ＳＬＣ領域に予め記録されていたデータがある場合は、そのデータをフラッシュメモリ１０４のＭＬＣ領域若しくは画像形成装置に内蔵又は外付けされる他の記憶手段（ＲＡＭ１０１や図示しないＨＤＤ（Hard Disk Drive）など）に一時的に退避させておき、領域変更後に書き戻す。なお、ＳＬＣ領域は特定したデータのみが記録されることが好ましいが、上記のプログラムのデータや画像形成装置の設定データなどの重要なデータはＳＬＣ領域に記録しても構わない。
【００３３】
なお、上記履歴情報生成部１０５、判定部１０６、記録領域変更部１０７はハードウェアとして構成してもよいし、制御部を履歴情報生成部１０５、判定部１０６、記録領域変更部１０７として機能させる制御プログラムとして構成し、当該制御プログラムをＣＰＵ１０３に実行させるようにしてもよい。
【００３４】
フラッシュメモリ１０４は、スキャンデータ、コピーデータ、プリントデータ、ＦＡＸデータ、カウンタ情報などのデータを記録するデバイスである。このフラッシュメモリ１０４は、単一メモリセルが多値でデータを記録できる構造（ＭＬＣ）で構成されており、記録領域変更部１０７からの指示に応じて部分的に２値でデータを記録できるように切り替え可能になっている。一例として、ｅＭＭＣ（embedded Multi Media Card）は、記録領域の一部又は全域を２値でデータを保存するように変更することができるため、本実施例のフラッシュメモリ１０４として好適である。
【００３５】
また、図１に示すように、画像読取部１１０、画像処理部１２０及び画像形成部１３０は、メインコントローラ１００からの制御を受け、画像形成装置としての機能を提供する。
【００３６】
具体的には、画像読取部１１０は、原稿台上に載置された原稿から画像データを光学的に読み取る部分であり、原稿を走査する光源と、原稿で反射された光を電気信号に変換するＣＣＤ（Charge Coupled Devices）等のイメージセンサと、電気信号をＡ／Ｄ変換するＡ／Ｄ変換器等により構成され、原稿から読み取った画像データをメインコントローラ１００に出力する。
【００３７】
画像処理部１２０は、画像読取部１１０によって読み取られた原稿の画像データに対して、エッジ強調処理やスムージング処理、色変換処理等の画像処理を行う。また、画像処理部１２０は、他の装置から、PostScriptやＰＣＬ（Printer Control Language）に代表されるＰＤＬ（Page Description Language）で記述された印刷データを取得した場合は、印刷データに含まれる各ページをラスタライズしてページ毎の画像データを生成し、生成した画像データに対して上記画像処理を行う。そして、画像処理後の画像データをメインコントローラ１００に出力する。
【００３８】
画像形成部１３０は、画像処理部１２０で画像処理を行った画像データに基づき、用紙への印刷処理を行う。具体的には、電子写真方式の場合は、帯電装置により帯電された感光体ドラムに、露光装置から画像に応じた光を照射して静電潜像を形成し、現像装置で帯電したトナーを付着させて現像し、そのトナー像を転写ベルトに１次転写し、転写ベルトから用紙に２次転写し、更に定着装置で用紙上のトナー像を定着させる処理を行う。
【００３９】
操作表示部１４０は、ＬＣＤ（Liquid Crystal Display）等の表示部上に格子状の透明電極からなるタッチセンサなどの操作部が配置されたタッチパネル、ハードキーなどで構成され、画像形成装置の操作画面を提示し、ユーザからの操作を受け付け、操作に応じた信号をメインコントローラ１００に出力する。
【００４０】
なお、本実施例では、情報処理装置をＭＦＰなどの画像形成装置とし、画像読取部１１０や画像処理部１２０、画像形成部１３０などを備える構成としたが、これらの構成要素は必須ではなく、画像読取部１１０を持たない単機能プリンタや、画像読取部１１０や画像形成部１３０を持たないプリンタコントローラやＲＩＰ（Raster Image Processor）コントローラなどとしてもよいし、電話回線による通信機能を備えたファクシミリ装置などとしてもよい。
【００４１】
次に、本実施例の画像形成装置の動作について、図３及び図４を参照して説明する。画像形成装置は、ＣＰＵ１０３が、ＲＯＭ１０２やフラッシュメモリ１０４内に記憶された制御プログラムを実行することにより、図３及び図４のフローチャートに示す各ステップの処理を実現する。なお、後述するカウンタ情報テーブルは、予め履歴情報生成部１０５によって作成され、ＲＡＭ１０１などに保存されているものとする。
【００４２】
電源オフ状態である画像形成装置に対して、使用者により電源スイッチがオンにされて電源が投入されると（Ｓ１０１）、メインコントローラ１００は、装置初期化処理を実行する（Ｓ１０２）。そして、装置初期化処理が完了したら、メインコントローラ１００は、操作表示部１４０にユーザインターフェース画面を表示させ、使用者が画像形成装置を操作可能な状態にする。
【００４３】
次に、メインコントローラ１００（判定部１０６）は、予め記憶された使用履歴情報に基づいて、所定の種類のデータの使用頻度を判定し、使用頻度が相対的に高いデータを特定する（Ｓ１０３）。そして、メインコントローラ１００（記録領域変更部１０７）は、判定部１０６によって特定されたデータがあれば（Ｓ１０４のＹｅｓ）、フラッシュメモリ１０４の記録領域を変更（ＳＬＣ領域とＭＬＣ領域の比率を変更）する（Ｓ１０５）。このＳ１０３〜Ｓ１０５の処理の詳細については後述する。
【００４４】
その後、メインコントローラ１００（履歴情報生成部１０５）は、画像形成装置の使用状態を監視し（Ｓ１０６）、ユーザの指示に従って画像形成装置が動作すると、その動作時のデータをＳＬＣ領域又はＭＬＳ領域に記録する（Ｓ１０７）。具体的には、メインコントローラ１００は、Ｓ１０３で特定されたデータはＳＬＣ領域に２値で記録し、他のデータはＭＬＳ領域に多値で記録するように記録を制御する。そして、メインコントローラ１００（履歴情報生成部１０５）は、上記動作の使用履歴情報を生成若しくは更新する（Ｓ１０８）。メインコントローラ１００は、使用者により電源スイッチがオフにされたかを判断し（Ｓ１０９）、電源スイッチがオフにされるまで、Ｓ１０６〜Ｓ１０９の処理を繰り返す。
【００４５】
なお、図３では、画像形成装置の起動時（初期化処理後）にフラッシュメモリ１０４の記録領域を変更したが、この記録領域の変更は、フラッシュメモリ１０４へのアクセスが頻繁に行われている時以外であればよく、例えば、画像形成装置の終了時や画像形成装置に処理が指示されていない時（例えば、夜間などの不使用時）などに行うことができる。
【００４６】
次に、使用頻度が相対的に高いデータを特定し、そのデータをＳＬＣ領域に記録できるようにフラッシュメモリ１０４の記録領域を変更する処理（図３のＳ１０３〜Ｓ１０５の処理）について具体的に説明する。
【００４７】
画像形成装置では、スキャン、コピー、プリント、ＦＡＸなどの機能の処理と並行して多くのカウンタ情報を更新している。このカウンタ情報は、例えば、通紙枚数カウンタ、カラー／モノクロの課金カウンタ、消耗品のライフカウンタ、機能の利用頻度カウンタなどの情報であり、カウンタ情報を更新するためにフラッシュメモリ１０４にアクセスする必要があるため、アクセスに時間がかかっている。そこで、フラッシュメモリ１０４に記録するデータとしてカウンタ情報に着目して、使用頻度が相対的に高いカウンタ情報をＳＬＣ領域に記録するように制御する。以下、この制御について、図４のフローチャート図及び図５乃至図７のテーブルを参照して詳細に説明する。
【００４８】
まず、メインコントローラ１００（判定部１０６）は、ＲＡＭ１０１などに予め保存された使用履歴情報（カウンタ情報テーブル）を取得する（Ｓ２０１）。図５は、カウンタ情報テーブルの一例であり、データ種類欄には予め画像形成装置で使用されるカウンタ情報（ここではカウンタ情報１〜１５０）が記録されており、データサイズ欄には各カウンタ情報のデータサイズ、アクセス回数欄には任意の期間のアクセス回数が記録されている。なお、アクセス回数は全期間（装置搬入時や装置がリセットされた時から現在までの期間）のアクセス回数としてもよいし、所定期間（例えば、直近の１ヶ月や１年など）のアクセス回数としてもよく、所定期間のアクセス回数とする場合は、所定期間経過後にアクセス回数欄の値をリセットすればよい。また、カウンタ情報以外のデータ（例えば、PostScriptやＰＣＬ（Printer Control Language）に代表されるＰＤＬ（Page Description Language）のデータやラスタデータなどの機能固有データ）を管理する場合は、機能固有データに対しても同様のテーブルを作成すればよい。
【００４９】
次に、メインコントローラ１００（判定部１０６）は、カウンタ情報テーブルをアクセス回数が多い順にソートする（Ｓ２０２）。図５のカウンタ情報の場合は、アクセス回数が多い順にソートすると、カウンタ情報２、カウンタ情報８…の順に配列される。
【００５０】
次に、メインコントローラ１００（判定部１０６）は、アクセス回数閾値テーブルからアクセス回数の閾値を取得する（Ｓ２０３）。図６は、アクセス回数閾値テーブルの一例であり、本実施例では、カウンタ情報に対応する閾値として”20000”を取得する。なお、カウンタ情報以外のデータ（例えば、機能固有データ）の使用履歴情報がある場合は、そのデータの閾値（例えば、機能固有データの閾値として”3000”）を取得する。
【００５１】
次に、メインコントローラ１００（判定部１０６）は、変数ｉに”1”をセットし（Ｓ２０４）、ソート済みのカウンタ情報テーブルのｉ番目のカウント値（アクセス回数）を取得する（Ｓ２０５）。
【００５２】
次に、メインコントローラ１００（判定部１０６）は、Ｓ２０５で取得したカウント値とＳ２０３で取得した閾値とを比較する（Ｓ２０６）。ｉ番目のカウント値が閾値未満の場合は、そのカウンタ情報はそれほど頻繁に使用されるデータではないため、一連の処理を終了する。一方、ｉ番目のカウント値が閾値以上の場合は、そのカウンタ情報は頻繁に使用されるデータであるため、メインコントローラ１００（判定部１０６）は、カウンタ情報テーブルのｉ番目のカウンタ情報のデータサイズから合計データサイズを算出（ｉ番目のデータサイズを合計データサイズに加算）する（Ｓ２０７）。
【００５３】
次に、メインコントローラ１００（判定部１０６）は、フラッシュメモリ領域テーブルからカウンタ情報に対して予め設定された領域サイズを取得する（Ｓ２０８）。図７は、フラッシュメモリ領域テーブルの一例であり、ここでは、カウンタ情報に対応する領域サイズとして”160MB”を取得する。そして、メインコントローラ１００（判定部１０６）は、Ｓ２０７で算出した合計データサイズとＳ２０８で取得した領域サイズとを比較する（Ｓ２０９）。
【００５４】
算出した合計データサイズが領域サイズよりも大きい場合は、データの記録方式を切り替えることによって記録領域を圧迫し、他のデータの記録に支障が生じる可能性があることから、一連の処理を終了する。すなわち、多くのカウンタの使用頻度が高い場合、それらのカウンタ情報を全てＳＬＣ領域に記録すると、他の情報を記録する領域が不足して画像形成装置としての機能を維持できなくなると判断した場合は、ＳＬＣ領域に変更せずに、ＭＬＣ領域のままにする。一方、算出した合計データサイズが領域サイズ以下の場合は、メインコントローラ１００（記録領域変更部１０７）は、カウンタ情報テーブルのｉ番目のカウンタ情報の記録領域をＳＬＣ領域に変更する（Ｓ２１０）。その際、記録領域変更部１０７は、ＳＬＣ領域に予め記録されていたデータがある場合は、そのデータをＭＬＣ領域や画像形成装置に内蔵又は外付けされる他の記憶手段に一時的に退避させ、領域変更後に書き戻すようにする。
【００５５】
そして、メインコントローラ１００（判定部１０６）は、カウンタ情報テーブルの合計欄のデータサイズを更新し（Ｓ２１１）、ｉに１を加算する（Ｓ２１２）。その後、Ｓ２０５に戻り、カウンタ情報テーブルの全てのカウント情報に対してＳ２０６〜Ｓ２１１の処理を繰り返し実行する。
【００５６】
このような処理を繰り返し実行することにより、使用頻度が相対的に高いデータ（ここではカウンタ情報）の記録領域のみがＳＬＣ領域に変更されるため、フラッシュメモリ１０４の記録領域を圧迫することなく、使用頻度が相対的に高いデータの信頼性及びアクセス速度を向上させることができる。
【実施例２】
【００５７】
次に、本発明の第２の実施例に係る画像形成装置及びフラッシュメモリの制御方法並びに制御プログラムについて、図８乃至図１１を参照して説明する。図８は、本実施例の画像形成装置の動作を示すフローチャート図であり、図９乃至図１１は、各々、機能使用履歴テーブル、実行回数閾値テーブル、フラッシュメモリ領域テーブルの一例である。
【００５８】
前記した第１の実施例では、相対的に高い頻度で読み書きされるデータを特定し、そのデータをＳＬＣ領域に記録できるように記録領域を変更したが、画像形成装置は複数の機能（スキャン、コピー、プリント、ＦＡＸ等）を同時に動作させることができるように、機能毎に個別データを保持する。すなわち、フラッシュメモリ１０４に読み書きされるデータは機能に関連付けられている）ことから、本実施例では、相対的に高い頻度で使用される機能を特定し、特定した機能に使用されるデータをＳＬＣ領域に記録できるように記録領域を変更する。その場合、画像形成装置及び制御部の基本構成は第１の実施例の図１及び図２と同様であるが、制御部の動作が異なる。
【００５９】
具体的には、履歴情報生成部１０５は、操作表示部１４０の操作を監視し、操作情報に基づいて指示された機能を特定し、その機能によって使用されるデータのデータサイズ及び機能の実行回数を取得する。そして、機能毎の使用履歴情報を作成して保存する。
【００６０】
また、判定部１０６は、機能毎の使用履歴情報を参照して、各機能の使用頻度を判定し、使用頻度が相対的に高い機能を特定することによって、その機能に使用されるデータを特定する。例えば、ある機能の使用頻度が高い場合、その機能を実行する際に使用されるデータ（プリント機能によって使用される印刷データ、スキャン機能によって使用されるスキャンデータ、ＦＡＸ機能によって使用されるＦＡＸデータなど）を使用頻度が相対的に高いデータとして特定する。
【００６１】
以下、上記制御について、図８のフローチャート図及び図９乃至図１１のテーブルを参照して説明する。画像形成装置は、ＣＰＵ１０３が、ＲＯＭ１０２やフラッシュメモリ１０４内に記憶された制御プログラムを実行することにより、図８のフローチャートに示す各ステップの処理を実現する。なお、画像形成装置の基本動作は第１の実施例の図３と同様であるため、説明を省略する。
【００６２】
まず、メインコントローラ１００（判定部１０６）は、ＲＡＭ１０１などに予め保存された使用履歴情報（機能使用履歴テーブル）を取得する（Ｓ３０１）。図９は、機能使用履歴テーブルの一例であり、機能種類欄には予め画像形成装置に搭載されている機能（ここでは機能１〜１０）が記録されており、データサイズ欄には各機能を動作させる際に使用されるデータのデータサイズ、実行回数欄には任意の期間に機能が実行された回数が記録されている。なお、データサイズはその機能を前回動作させたときに使用されたデータのサイズとしてもよいし、複数回のデータの平均値、最大値／最小値などとしてもよい。また、実行回数は全期間（装置搬入時や装置がリセットされた時から現在までの期間）の実行回数としてもよいし、所定期間（例えば、直近の１ヶ月や１年など）の実行回数としてもよく、所定期間の実行回数とする場合は、所定期間経過後に実行回数欄の値をリセットすればよい。
【００６３】
次に、メインコントローラ１００（判定部１０６）は、機能使用履歴テーブルを実行回数が多い順にソートする（Ｓ３０２）。図９の場合は、実行回数が多い順にソートすると、機能３、機能１…の順に配列される。
【００６４】
次に、メインコントローラ１００（判定部１０６）は、図１０に示す実行回数閾値テーブルから機能の実行回数の閾値を取得する（Ｓ３０３）。なお、この実行回数の閾値は、全機能に対して同一の値としてもよいが、よく使用される機能（例えば、プリントやコピー）とあまり使用されない機能（例えば、スキャンやＦＡＸ）とが混在する場合は、機能毎や機能のグループ毎に実行回数の閾値を変えてもよい。
【００６５】
次に、メインコントローラ１００（判定部１０６）は、変数ｊに”1”をセットし（Ｓ３０４）、ソート済みの機能使用履歴テーブルのｊ番目のカウント値（実行回数）を取得する（Ｓ３０５）。
【００６６】
次に、メインコントローラ１００（判定部１０６）は、Ｓ３０５で取得したカウント値とＳ３０３で取得した閾値とを比較する（Ｓ３０６）。ｊ番目のカウント値が閾値未満の場合は、その機能はそれほど頻繁に使用される機能ではないため、一連の処理を終了する。一方、ｊ番目のカウント値が閾値以上の場合は、その機能は頻繁に使用される機能であるため、メインコントローラ１００（判定部１０６）は、機能使用履歴テーブルのｊ番目の機能によって使用されるデータのデータサイズから合計データサイズを算出（ｊ番目のデータサイズを合計データサイズに加算）する（Ｓ３０７）。
【００６７】
次に、メインコントローラ１００（判定部１０６）は、図１１に示すフラッシュメモリ領域テーブルから機能に対して予め設定された領域サイズを取得する（Ｓ３０８）。なお、この領域サイズは、全機能に対して同一の値としてもよいが、データサイズが大きくなる機能（例えば、カラーのプリントやコピー、スキャン）とデータサイズが小さい機能（例えば、モノクロのプリントやコピー、スキャン）とが混在する場合は、機能毎や機能のグループ毎に領域サイズを変えてもよい。そして、メインコントローラ１００（判定部１０６）は、Ｓ３０７で算出した合計データサイズとＳ３０８で取得した領域サイズとを比較する（Ｓ３０９）。
【００６８】
算出した合計データサイズが領域サイズよりも大きい場合は、データの記録方式を切り替えることによって記録領域を圧迫し、他の機能によって使用されるデータの記録に支障が生じる可能性があることから、一連の処理を終了する。すなわち、多くの機能の使用頻度が高い場合、それらの機能によって使用されるデータを全てＳＬＣ領域に記録すると、他の機能によって使用されるデータを記録する領域が不足して画像形成装置としての機能を維持できなくなると判断した場合は、ＳＬＣ領域に変更せずに、ＭＬＣ領域のままにする。一方、算出した合計データサイズが領域サイズ以下の場合は、メインコントローラ１００（記録領域変更部１０７）は、機能使用情報テーブルのｊ番目の機能によって使用されるデータの記録領域をＳＬＣ領域に変更する（Ｓ３１０）。その際、記録領域変更部１０７は、ＳＬＣ領域に予め記録されていたデータがある場合は、そのデータをＭＬＣ領域や画像形成装置に内蔵又は外付けされる他の記憶手段に一時的に退避させ、領域変更後に書き戻すようにする。
【００６９】
そして、メインコントローラ１００（判定部１０６）は、機能使用履歴テーブルの合計欄のデータサイズを更新し（Ｓ３１１）、ｊに１を加算する（Ｓ３１２）。その後、Ｓ３０５に戻り、機能使用履歴テーブルのすべての機能に対してＳ３０６〜Ｓ３１１の処理を繰り返し実行する。
【００７０】
このような処理を繰り返し実行することにより、使用頻度が相対的に高い機能によって使用されるデータの記録領域のみがＳＬＣ領域に変更されるため、フラッシュメモリ１０４の記録領域を圧迫することなく、使用頻度が相対的に高い機能に使用されるデータの信頼性及びアクセス速度を向上させることができる。
【００７１】
なお、上記フローでは、合計データサイズが領域サイズ以下であればその機能によって使用されるデータの記録領域をＳＬＣ領域に変更したが、合計データサイズが領域サイズ以下であっても、そのデータの記録領域をＳＬＣ領域に変更しない場合もある。例えば、コピー、プリント、ＦＡＸなどの機能を利用して複数部数を出力する場合には、ある部の出力処理を実行しながら次の部の出力準備をするために、２部分のページのフレームデータを保持する必要がある。このフレームデータをフラッシュメモリ１０４に保持する場合において、その機能に対応する領域サイズの記録領域に記録できるページ数が最大で9999ページであるとする。この場合、出力するページ数が最大で300ページであれば、300ページ分のフレームデータの記憶領域をＳＬＣ領域に変更することにより、その機能の処理速度の向上を図ることができる。しかしながら、出力するページ数が最大で6000ページになるような場合、フレームデータの合計データサイズが領域サイズ以下であっても、フレームデータの記憶領域をＳＬＣ領域に変更してしまうと、最大で5000ページ分しかフレームデータを保持することができなくなり、複数部数を出力する機能が使用できなくなる。このような場合は、記録領域をＳＬＣ領域に変更しないように制御するか、若しくは、フラッシュメモリ領域テーブルに、この機能に対応する領域サイズを設定（すなわち、通常のプリント機能の領域サイズとは別に複数部数のプリント機能の領域サイズを設定）すればよい。
【実施例３】
【００７２】
次に、本発明の第３の実施例に係る画像形成装置及びフラッシュメモリの制御方法並びに制御プログラムについて、図１２乃至図１５を参照して説明する。図１２は、本実施例の画像形成装置の動作を示すフローチャート図であり、図１３乃至図１５は、各々、ユーザ使用履歴テーブル、アクセス回数閾値テーブル、フラッシュメモリ領域テーブルの一例である。
【００７３】
前記した第２の実施例では、相対的に高い頻度で使用される機能を特定し、特定した機能に使用されるデータをＳＬＣ領域に記録できるように記録領域を変更する場合の制御について記載したが、画像形成装置は通常、複数のユーザに使用され、ユーザによって画像形成装置の使用頻度は異なり、ユーザによって画像形成装置に求める処理能力が異なる。例えば、画像形成装置をあまり使用しないユーザはスキャン、コピー、プリント、ＦＡＸなどの機能の動作が多少遅くても作業に与える影響はそれほど大きくないが、画像形成装置を頻繁に使用するユーザは機能の動作が遅いと作業が遅れてしまい業務に支障が生じる。そこで、本実施例では、相対的に高い頻度で使用するユーザを特定し、特定したユーザに使用されるデータをＳＬＣ領域に記録できるように記録領域を変更する。その場合、画像形成装置及び制御部の基本構成は第１の実施例の図１及び図２と同様であるが、制御部の動作が異なる。
【００７４】
具体的には、履歴情報生成部１０５は、操作表示部１４０の操作を監視し、ログイン情報に基づいて画像形成装置を使用するユーザを特定し、そのユーザによって使用されるデータのデータサイズ及びユーザの操作回数を取得する。そして、ユーザの操作回数に基づいてそのユーザの使用頻度を取得し、ユーザ毎の使用履歴情報を作成して保存する。
【００７５】
また、判定部１０６は、ユーザ毎の使用履歴情報を参照して、各ユーザの使用頻度を判定し、使用頻度が相対的に高いユーザを特定することによって、そのユーザに使用されるデータを特定する。例えば、あるユーザの使用頻度が高い場合、そのユーザによって指示された機能を実行する際に使用されるデータ（プリント機能によって使用される印刷データ、スキャン機能によって使用されるスキャンデータ、ＦＡＸ機能によって使用されるＦＡＸデータなど）を使用頻度が相対的に高いデータとして特定する。
【００７６】
以下、上記制御について、図１２のフローチャート図及び図１３乃至図１５のテーブルを参照して説明する。画像形成装置は、ＣＰＵ１０３が、ＲＯＭ１０２やフラッシュメモリ１０４内に記憶された制御プログラムを実行することにより、図１２のフローチャートに示す各ステップの処理を実現する。なお、画像形成装置の基本動作は第１の実施例の図３と同様であるため、説明を省略する。
【００７７】
まず、メインコントローラ１００（判定部１０６）は、ＲＡＭ１０１などに予め保存された使用履歴情報（ユーザ使用履歴テーブル）を取得する（Ｓ４０１）。図１３は、ユーザ情報テーブルの一例であり、ユーザ種類欄には予め画像形成装置に登録されたユーザ（ここではユーザ１〜１０）が記録されており、データサイズ欄には各ユーザに使用されるデータのデータサイズ、使用回数欄には任意の期間にユーザが画像形成装置を使用した回数が記録されている。なお、データサイズはそのユーザが前回画像形成装置を使用したデータのサイズとしてもよいし、複数回のデータの平均値、最大値／最小値などとしてもよい。また、使用回数は全期間（装置搬入時や装置がリセットされた時から現在までの期間）の使用回数としてもよいし、所定期間（例えば、直近の１ヶ月や１年など）の使用回数としてもよく、所定期間の使用回数とする場合は、所定期間経過後に使用回数欄の値をリセットすればよい。
【００７８】
次に、メインコントローラ１００（判定部１０６）は、ユーザ使用履歴テーブルを使用回数が多い順にソートする（Ｓ４０２）。図１３の場合は、使用回数が多い順にソートすると、ユーザ２、ユーザ１…の順に配列される。
【００７９】
次に、メインコントローラ１００（判定部１０６）は、図１４に示す使用回数閾値テーブルからユーザの使用回数の閾値を取得する（Ｓ４０３）。なお、この使用回数の閾値は、全ユーザに対して同一の値としてもよいが、画像形成装置をよく使用するユーザとあまり使用しないユーザとが混在する場合は、ユーザ毎やユーザのグループ毎に使用回数の閾値を変えてもよい。
【００８０】
次に、メインコントローラ１００（判定部１０６）は、変数ｋに”1”をセットし（Ｓ４０４）、ソート済みのユーザ使用履歴テーブルのｋ番目のカウント値（使用回数）を取得する（Ｓ４０５）。
【００８１】
次に、メインコントローラ１００（判定部１０６）は、Ｓ４０５で取得したカウント値とＳ４０３で取得した閾値とを比較する（Ｓ４０６）。ｋ番目のカウント値が閾値未満の場合は、そのユーザはそれほど頻繁に画像形成装置を使用するユーザではないため、一連の処理を終了する。一方、ｋ番目のカウント値が閾値以上の場合は、そのユーザは頻繁に画像形成装置を使用するユーザであるため、メインコントローラ１００（判定部１０６）は、ユーザ使用履歴テーブルのｋ番目のユーザによって使用されるデータのデータサイズから合計データサイズを算出（ｋ番目のデータサイズを合計データサイズに加算）する（Ｓ４０７）。
【００８２】
次に、メインコントローラ１００（判定部１０６）は、図１５に示すフラッシュメモリ領域テーブルからユーザに対して予め設定された領域サイズを取得する（Ｓ４０８）。なお、この領域サイズは、全ユーザに対して同一の値としてもよいが、サイズが大きいデータを使用するユーザとサイズが小さいデータを使用するユーザとが混在する場合は、ユーザ毎やユーザのグループ毎に領域サイズを変えてもよい。そして、メインコントローラ１００（判定部１０６）は、Ｓ４０７で算出した合計データサイズとＳ４０８で取得した領域サイズとを比較する（Ｓ４０９）。
【００８３】
算出した合計データサイズが領域サイズよりも大きい場合は、データの記録方式を切り替えることによって記録領域を圧迫し、他のユーザによって使用されるデータの記録に支障が生じる可能性があることから、一連の処理を終了する。すなわち、多くのユーザの使用頻度が高い場合、それらのユーザによって使用されるデータを全てＳＬＣ領域に記録すると、他のユーザによって使用されるデータを記録する領域が不足して画像形成装置としての機能を維持できなくなると判断した場合は、ＳＬＣ領域に変更せずに、ＭＬＣ領域のままにする。一方、算出した合計データサイズが領域サイズ以下の場合は、メインコントローラ１００（記録領域変更部１０７）は、ユーザ使用履歴テーブルのｋ番目のユーザによって使用されるデータの記録領域をＳＬＣ領域に変更する（Ｓ４１０）。その際、記録領域変更部１０７は、ＳＬＣ領域に予め記録されていたデータがある場合は、そのデータをＭＬＣ領域や画像形成装置に内蔵又は外付けされる他の記憶手段に一時的に退避させ、領域変更後に書き戻すようにする。
【００８４】
そして、メインコントローラ１００（判定部１０６）は、ユーザ使用履歴テーブルの合計欄のデータサイズを更新し（Ｓ４１１）、ｋに１を加算する（Ｓ４１２）。その後、Ｓ４０５に戻り、ユーザ使用履歴テーブルのすべてのユーザに対してＳ４０６〜Ｓ４１１の処理を繰り返し実行する。
【００８５】
このような処理を繰り返し実行することにより、使用頻度が相対的に高いユーザによって使用されるデータの記録領域のみがＳＬＣ領域に変更されるため、フラッシュメモリ１０４の記録領域を圧迫することなく、使用頻度が相対的に高いユーザによって使用されるデータの信頼性及びアクセス速度を向上させることができる。
【００８６】
なお、本発明は上記実施例に限定されるものではなく、本発明の趣旨を逸脱しない限りにおいて、その構成や制御方法は適宜変更可能である。
【００８７】
例えば、第１の実施例ではデータの使用履歴情報に基づいてフラッシュメモリ１０４の記録領域を変更し、第２の実施例では機能の使用履歴情報に基づいてフラッシュメモリ１０４の記録領域を変更し、第３の実施例ではユーザの使用履歴情報に基づいてフラッシュメモリ１０４の記録領域を変更したが、これらを任意に組み合わせて、データ、機能及びユーザの使用履歴情報に基づいてフラッシュメモリ１０４の記録領域を変更することもできる。例えば、使用頻度が相対的に高い機能によって使用されるデータの内、使用頻度が相対的に高いデータをＳＬＣ領域に記録するように記録領域を変更したり、使用頻度が相対的に高い機能によって使用されるデータの内、その機能の使用頻度が相対的に高いユーザによって使用されるデータをＳＬＣ領域に記録するように記録領域を変更したり、使用頻度が相対的に高いユーザによって使用されるデータの内、そのユーザの使用頻度が相対的に高い機能によって使用されるデータをＳＬＣ領域に記録するように記録領域を変更したりすることができる。
【００８８】
また、上記各実施例では、情報処理装置として画像形成装置を例示したが、情報処理装置は画像形成装置に限らず、フラッシュメモリ１０４を備え、フラッシュメモリ１０４に格納したデータを用いて機能を動作させる任意の装置に対して、本発明の制御方法を同様に適用することができる。
【産業上の利用可能性】
【００８９】
本発明は、フラッシュメモリを搭載する情報処理装置及びフラッシュメモリの記録領域を変更する制御方法並びに制御プログラム並びに当該制御プログラムを記録した記録媒体に利用可能である。
【符号の説明】
【００９０】
１００  メインコントローラ
１０１  ＲＡＭ
１０２  ＲＯＭ
１０３  ＣＰＵ
１０４  フラッシュメモリ
１０５  履歴情報生成部
１０６  判定部
１０７  記録領域変更部
１１０  画像読取部
１２０  画像処理部
１３０  画像形成部
１４０  操作表示部
【図１】
2015228197.tif 000003
【図２】
2015228197.tif 000004
【図３】
2015228197.tif 000005
【図４】
2015228197.tif 000006
【図５】
2015228197.tif 000007
【図６】
2015228197.tif 000008
【図７】
2015228197.tif 000009
【図８】
2015228197.tif 000010
【図９】
2015228197.tif 000011
【図１０】
2015228197.tif 000012
【図１１】
2015228197.tif 000013
【図１２】
2015228197.tif 000014
【図１３】
2015228197.tif 000015
【図１４】
2015228197.tif 000016
【図１５】
2015228197.tif 000017