(57)【要約】【課題】  パーティション単位で管理を行い、パーティションごとにデータ書込みが集中しないようにしてメモリ寿命を延ばす。【解決手段】  メモリ管理装置１は、書込み及び所定の記憶領域単位での一括電気的消去が可能であり、１つ以上の記憶領域単位を有する複数のパーティションに分割される不揮発性メモリを管理するものである。メモリ管理装置１は、物理パーティションなどに対応した記憶容量や書込み時間などを関連付けた更新可能なテーブル２と、テーブル２に基づいてデータの記憶先の物理パーティションを判断する判断手段３と、データを記憶する記憶手段５と、判断手段３の判断結果に基づいてデータを記憶手段５へ記憶させる制御手段４とによって構成されている。この構成により、物理パーティション単位で管理を行い、物理パーティションごとにデータ書込みが集中しないようにすることでメモリ寿命を延ばすことができる。【選択図】      図１１
2006146808.tif 000002
【特許請求の範囲】
【請求項１】
書込み及び所定の記憶領域単位での一括電気的消去が可能であり、１つ以上の前記記憶域単位を有する複数のパーティションに分割される不揮発性メモリに対するメモリ管理を行うメモリ管理装置であって、
前記パーティションに対応した記憶容量、書込み時間の少なくとも一方を関連付けたテーブルと、
前記テーブルに基づいてデータの記憶先のパーティションを判断する判断手段と、
前記データを記憶する記憶手段と、
前記判断手段の判断結果に基づいて前記データを前記記憶手段へ記憶させる制御手段と、
を備えることを特徴とするメモリ管理装置。
【請求項２】
前記テーブルは、
前記パーティションに対応して、記憶容量、記憶時間、記憶件数を記憶することを特徴とする請求項１に記載のメモリ管理装置。
【請求項３】
前記テーブルは、
前記パーティションと書込み最大遅延時間とを関連付けた第1のテーブルと、
ファイル名と前記パーティションとを関連付けた第２のテーブルと、
推奨書込みデータ容量と書込み時間とを関連付けた第３のテーブルと、
によって構成されていることを特徴とする請求項１または請求項２に記載のメモリ管理装置。
【請求項４】
前記パーティションは物理パーティションであることを特徴とする請求項１乃至請求項３のいずれかに記載のメモリ管理装置。
【請求項５】
前記テーブルは更新可能であることを特徴とする請求項１乃至請求項４のいずれかに記載のメモリ管理装置。
【請求項６】
前記書込み最大遅延時間との関連付けを前記パーティションの番号によって行うことを特徴とする請求項３乃至請求項５のいずれかに記載のメモリ管理装置。
【請求項７】
書込み及び所定の記憶領域単位での一括電気的消去が可能であり、１つ以上の前記記憶領域単位を有する複数のパーティションに分割される不揮発性メモリに対するメモリ管理を行うメモリ管理方法であって、
ファイルの保存時刻とファイルサイズとファイル数との関係を記録したファイル保存傾向予測テーブルをデータ管理情報の一つとして持たせる手順と、
前記ファイル保存傾向予測テーブルに従い、前記ファイルをどの物理パーティションに保存すればメモリを一番有効に効率よく使用できるかを判定する手順と、
前記ファイル保存傾向予測テーブルに従い、前記物理パーティションのサイズを自動的に調整する手順と、
を含むことを特徴とするメモリ管理方法。
【請求項８】
書込み及び所定の記憶領域単位での一括電気的消去が可能であり、１つ以上の前記記憶領域単位を有する複数のパーティションに分割される不揮発性メモリに対するメモリ管理を行うメモリ管理方法であって、
物理パーティション番号と書込み最大遅延時間との関係を記録した更新可能な第１の管理テーブルを持たせる手順と、
ファイル名と物理パーティション番号付ファイル名との関係を記録した更新可能な第２の管理テーブルを持たせる手順と、
推奨書込みデータサイズと書込み時間との関係を記録した更新可能なコンストテーブルを持たせる手順と、
前記第１の管理テーブル、前記第２の管理テーブル、及び前記コンストテーブルに従い、どの物理パーティションにデータを保存すればデータ書込み時間を最大限保証することができるかの判定を行う手順と、
データ書込み時において、前記第１の管理テーブル及び前記第２の管理テーブルのテーブルデータを更新する手順と、
を含むことを特徴とするメモリ管理方法。
【請求項９】
前記コンストテーブルには、データサイズよって異なる最大許容書込み時間を記憶させることを特徴とする請求項８に記載のメモリ管理方法。
【請求項１０】
前記コンストテーブルは、前記データサイズが大きい場合は許容時間を短くし、前記データサイズが小さい場合は前記許容時間を長くした最大許容書込み時間を記憶することを特徴とする請求項９に記載のメモリ管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイル保存傾向予測テーブルを保持したデータ管理システムとデータ書込み時間保証機能付きのデータ管理システムに適用されるメモリ管理装置、及びメモリ管理方法に関する。
【背景技術】
【０００２】
まず、フラッシュメモリを取り扱う上での必要事項について述べる。フラッシュメモリは、低消費電力である、データ書込み／読出しが高速である、及び安価であるなどの利点を持っているが、下記のような３つの問題点がる。すなわち、
（１）消去時間が非常に長い。
フラッシュメモリは、データ消去が６４Ｋバイト単位（あるいは８Ｋバイト単位）でのみ可能なメモリ構造となっているために消去時間が非常に長い。したがって、高速処理が求められるシステムではこのような長い消去時間がボトルネックとなる。
（２）書込み／消去回数に限度がある。
フラッシュメモリは、データの書込み／消去回数に限度がある。すなわち、一般的なデータの書込み／消去の保証回数は１０万回〜１００万回程度である。したがって、特定の物理ブロックに対してデータの書込み／消去が集中した場合はフラッシュメモリデバイスとしての寿命を短くしてしまう。
（３）書込み／消去回数が増えると遅延時間が大きくなる。
フラッシュメモリは、データの書込み／消去が繰り返されると、書込み／消去時間の遅延が大きくなる性質がある。例えば、初回の書込み／消去時間と比較すると、数万回の書込み／消去を繰り返した後は、書込みで約５倍ぐらい、消去で約２０倍ぐらい書込み／消去時間が遅くなる。そのため、処理時間に精度が求められるシステムでは、フラッシュメモリへのデータの書込み時間がボトルネックとなる。
したがって、フラッシュメモリを実用上問題なく取り扱うには、上記の３件の問題点をクリアする必要がある。
【０００３】
すなわち、フラッシュメモリは、携帯端末などにおいて実用的な不揮発性メモリとして利用されているが、実用上問題なく取り扱うためにはデータの消去時間が非常に長いというフラッシュメモリが持つ欠点をクリアする必要がある。このようなデータの消去時間が長いという問題は、一般的なフラッシュメモリにおいて、データ消去が６４Ｋバイト単位（あるいは８Ｋバイト単位）でのみ可能なメモリ構造となっていることに起因している。そこで、上記の問題を解決するために、以下に示すような技術が開発されている。
【０００４】
従来より、フラッシュメモリのデータ消去時間の長さを意識させない技術としてファイルシステムが知られている。したがって、まず、従来のデータ管理システムであるファイルシステムの技術的原理について述べる。この技術は、データを一つのまとまり（つまり、ファイル）として処理を行い、データ消去回数を極力減らすことによってメモリ自体のデータ消去スピードの遅さを意識せずフラッシュメモリを実用上問題なく扱うことができるものである。そのためには、このファイルシステムはデータを以下のようにして扱っている。
【０００５】
１．データを扱う際にフラッシュメモリの物理アドレスを指定したアクセス（書込み／読出／消去）を禁止し、ファイル名を指定することによってファイル単位でデータアクセスを可能にする。
２．ファイルをある一定サイズのデータ（セクタ）の集まりとして扱い、該当するファイルがどのようなセクタ群によって構成されているかという情報をファイル管理データとして保持する。セクタ群による構成の情報とは、例えば、どこの物理アドレスに配置されたセクタで構成され、かつ何個のセクタによって構成されているかといった情報である。また、保持するファイル管理データとは、例えば、ファイルアロケーションテーブル（ＦＡＴ）と称されているものなどである。
３．ファイルを構成しているセクタを次の３種類の状態で認識する。すなわち、（１）空きセクタ（データが書込まれていない領域）で認識する。（２）有効セクタ（データが書込まれている領域）で認識する。（３）無効セクタ（データを書込むことができない領域、つまり消去されたことになっているデータ領域）で認識する。
【０００６】
なお、ファイルの消去時には、一定の、例えば６４Ｋバイト単位（あるいは８Ｋバイト単位）のデータを消去するのではなく、消去するファイルを構成するセクタの管理情報に無効セクタ情報を書込むことでファイル消去の完了としている。このような方法によって、通常のファイル消去処理ではスピードが遅くならないようにしている。
【０００７】
ところが、上述のような方法では見かけ上の消去処理は早くなっているが、使用されているメモリは無効セクタとして残っていて解放されていない。したがって、ファイルの書込み／削除を繰り返していくとフラッシュメモリが膨大な無効セクタ領域（つまり、データを書込むことができない領域）で埋まってしまい、書込み可能なメモリ資源を保証することが困難になってしまう。そのため、どこかのタイミングで例えば６４Ｋバイト単位（あるいは８Ｋバイト単位）のデータ消去を実行し、無効セクタをデータの書込み可能な空きセクタ領域にする必要が生じる。そのための処理は、一般的には下記の２つの機能によって実現される。以下、その機能について述べる。
【０００８】
第１の機能：ガーベッジ機能
ガーベッジ機能は、フラッシュメモリがある条件（例えば、ある一定サイズ以上の無効セクタが生じた場合等）を満たした場合、６４Ｋバイト単位（あるいは８Ｋバイト単位）のデータ消去を行って無効セクタを空きセクタにするものである。これによって、書込み可能なメモリ資源を可能な限り保証している。但し、フラッシュメモリは消去時間が非常に長いためにガーベッジ処理に要する時間が長くかかるという問題は解決できない。
【０００９】
第２の機能：フラッシュメモリのパーティション分割管理機能、及び異なるセクタサイズによるデータ管理機能
ここで、ガーベッジ機能処理時間の短縮方法として次の２つの技術がある。
１．フラッシュメモリを複数のパーティションに区切り、パーティション毎にガーベッジ機能が実行されるようにする。この方法によって、ガーベッジの対象となる領域サイズを小さくすることができるため、一回のガーベッジ処理にかかる時間を短くすることができる。なお、パーティションはファイルの種類ごとに構成される。
２．フラッシュメモリを複数のパーティションに区切り、パーティション毎にファイルを構成するセクタサイズを異なるものとする。この方式によって、ファイルのサイズがセクタサイズに合ったパーティション（つまり、保存したいファイルにとって最適なパーティション）に保存することで、データアクセススピードを確保すると共に無効セクタの増加を抑え、ガーベッジの発生頻度を減らすことができる。
以上の技術によりフラッシュメモリの消去処理を早く行えるようにしている。
【００１０】
また、フラッシュメモリデバイスとしての寿命を延ばすための技術としてファイルシステムがある。このファイルシステムは、前述した機能の他にフラッシュメモリを構成している物理ブロックごとにデータ書込み回数をカウントし、これを管理することで特定のブロックにデータ書込みが集中しないようにする機能（つまり、ウェアレベリング機能）を有している。
【００１１】
つまり、フラッシュメモリと呼ばれる不揮発性メモリは、その形状の割に記憶容量が大きいことから、特に小型化が要求される携帯機器等のメモリとして広く使用されている。このようなフラッシュメモリは、データをひとまとまりのファイルとして処理しているが、データの消去回数を極力減らすことにより、メモリ自体のデータ消去スピードの遅さを意識させない。しかし、フラッシュメモリは使用されているメモリ無効セレクタとして解放されないために、ガーべッジ機能によって書込み可能なメモリ資源を可能な限り保証している。ところが、ガーベッジ機能の処理に有する時間自体が遅いために、ガーベッジ機能の頻度やアクセス速度を防止するために、連続する複数のデータを分散して書込むメモリ管理装置を設けている（例えば、特許文献１参照）。
【特許文献１】特開２００３−０１５９４４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
しかしながら、フラッシュメモリをパーティションに区切って管理するために保存しようとしたファイルのパーティションに空き領域がなければ、他のパーティションに十分な空き領域があったとしてもファイルを保存することができない。つまり、パーティションを区切らない場合とは異なり、メモリ資源をフルに使用することができないという問題が生じる。また、ファイルをどのパーティションに保存すればメモリを最も効率的に使うことができるのか（つまり、最も無効セクタの増加を抑えることができるのか）については、ユーザが認識しなければならないという問題も生じる。
【００１３】
さらに、従来のファイルシステムは、前述した理由からパーティションごとのデータ管理を前提としたシステムとなっている。ウェアレベリング機能においても例外ではなく各パーティション内で実行される。したがって、ファイルシステムのウェアレベリング機能は、フラッシュメモリ上に存在する複数のパーティションにうち、どのパーティションにデータの書込みが集中しているかについては感知しないのが一般的である。そのため、個々のパーティション間で、データ書込み可能回数（つまり寿命）やデータ書込みの遅延時間に大きな違いが生じるという問題がある。特に、データの書込みサイズが大きい場合にはその遅延時間が顕著に表れ、フラッシュメモリの取り扱いに支障を来たすおそれがある。
【００１４】
本発明は、以上のような問題点に鑑みてなされたものであり、ファイル保存傾向予測テーブルを保持し、かつデータ書込み時間保証機能を備えることによりパーティションを単位として管理を行い、パーティションごとにデータ書込みが集中しないようにすることでメモリの寿命を延ばすことができるメモリ管理装置及びメモリ管理方法を提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明のメモリ管理装置は、書込み及び所定の記憶領域単位での一括電気的消去が可能であり、１つ以上の記憶領域単位を有する複数のパーティションに分割される不揮発性メモリに対するメモリ管理を行うメモリ管理装置であって、パーティションに対応した記憶容量、書込み時間の少なくとも一方を関連付けたテーブルと、そのテーブルに基づいてデータの記憶先のパーティションを判断する判断手段と、データを記憶する記憶手段と、判断手段の判断結果に基づいてデータを記憶手段へ記憶させる制御手段とを備える構成を採っている。
【００１６】
また、本発明のメモリ管理装置は、前記発明の構成に加えて、前記テーブルは、パーティションに対応して、記憶容量、記憶時間、記憶件数を記憶する構成を採っている。
【００１７】
また、本発明のメモリ管理装置は、前記発明の構成に加えて、前記テーブルは、パーティションと書込み最大遅延時間とを関連付けた第1のテーブルと、ファイル名とパーティションとを関連付けた第２のテーブルと、推奨書込みデータ容量と書込み時間とを関連付けた第３のテーブルとによる構成を採っている。
【００１８】
また、本発明のメモリ管理装置は、前記発明の構成に加えて、パーティションは物理パーティションである構成を採っている。
【００１９】
また、本発明のメモリ管理装置は、前記発明の構成に加えて、前記テーブルは更新可能である構成を採っている。
【００２０】
また、本発明のメモリ管理装置は、書込み最大遅延時間との関連付けをパーティションの番号で行うような構成を採っている。
【００２１】
また、本発明のメモリ管理方法は、書込み及び所定の記憶領域単位での一括電気的消去が可能であり、１つ以上の記憶領域単位を有する複数のパーティションに分割される不揮発性メモリに対するメモリ管理を行うメモリ管理方法であって、ファイルの保存時刻とファイルサイズとファイル数との関係を記録したファイル保存傾向予測テーブルをデータ管理情報の一つとして持たせる手順と、ファイル保存傾向予測テーブルに従い、ファイルをどの物理パーティションに保存すればメモリを一番有効に効率よく使用できるかを判定する手順と、ファイル保存傾向予測テーブルに従い、物理パーティションのサイズを自動的に調整する手順とを含んでいる。
【００２２】
また、本発明のメモリ管理方法は、書込み及び所定の記憶領域単位での一括電気的消去が可能であり、１つ以上の前記記憶領域単位を有する複数のパーティションに分割される不揮発性メモリに対するメモリ管理を行うメモリ管理方法であって、物理パーティション番号と書込み最大遅延時間との関係を記録した更新可能な第１の管理テーブルを持たせる手順と、ファイル名と物理パーティション番号付ファイル名との関係を記録した更新可能な第２の管理テーブルを持たせる手順と、推奨書込みデータサイズと書込み時間との関係を記録した更新可能なコンストテーブルを持たせる手順と、第１の管理テーブル、第２の管理テーブル、及びコンストテーブルに従い、どの物理パーティションにデータを保存すればデータ書込み時間を最大限保証することができるかの判定を行う手順と、データ書込み時において、第１の管理テーブル及び第２の管理テーブルのテーブルデータを更新する手順とを含んでいる。
【００２３】
また、本発明のメモリ管理方法は、前記発明のメモリ管理方法に加えて、コンストテーブルには、データサイズよって異なる最大許容書込み時間を記憶させることを特徴としている。
【００２４】
また、本発明のメモリ管理方法は、前記発明のメモリ管理方法に加えて、コンストテーブルは、データサイズが大きい場合は許容時間を短くし、データサイズが小さい場合は許容時間を長くした最大許容書込み時間を記憶することを特徴としている。
【発明の効果】
【００２５】
ファイル保存傾向予測テーブルを保持したデータ管理システムに適用される本発明のメモリ管理装置は、ファイル保存傾向予測テーブルに記録されているファイル保存時刻に従ってメモリ制御を行うことにより、次のような幾つかの効果をもたらす。まず、一つ目の効果は、従来の技術ではユーザが物理メモリの構成について熟知していなければメモリを効率よく使用することは困難であったが、本発明では、ユーザが物理メモリの構成について知らなくても、メモリ管理装置がメモリを一番効率よく使用できる物理パーティションを自動選択し、事前にファイルを保存すべき物理パーティションの空きスペースを確保することができる。
【００２６】
また、ファイルを保存するときにメモリの空きスペースを調べて不足している場合は、従来技術では、ガーベッジ処理を行うときに空きスペースを確保しにいくためにファイルの保存にかなり時間がかかるケースがあった。しかし、本発明のメモリ管理装置では、ファイルの保存時刻をファイル保存傾向予測テーブルより予測し、あらかじめファイルを保存するために必要な物理パーティションの空きスペースを保証できるため、ファイルの保存時にメモリが不足する事態を回避することができると共に、ガーベッジ処理による空きスペースを確保する時間が長くなるおそれはなくなる。
【００２７】
また、携帯型電子端末装置においてメモリ容量不足に起因したメモリサイズの増大を抑止することが可能となり、携帯型電子端末装置のコスト上昇を抑えることができる。さらに、四つ目の効果は、実生活においてユーザが本当に必要としているデータが何であるか正確な統計をとることができるため、ユーザが使いやすい携帯型電子端末装置を供給することができるようになる。
【００２８】
また、データ書込み時間保証機能付のデータ管理システムに適用される本発明のメモリ管理装置は、次のような幾つかの効果がある。一つ目の効果は、従来技術では、データ管理システムのウェアレベリング機能によってパーティションごとの寿命を延ばすことができたが、特定のパーティションにデータ書込みが集中した場合は、フラッシュメモリデバイスとしての寿命を延ばすことが困難であった。しかし、本発明のメモリ管理装置では、データ管理システムの特定のパーティションにデータの書込みが集中しないようにする機能を搭載することによって、フラッシュメモリデバイスとしての寿命を延ばすことができる。
【００２９】
また、従来技術では、データ書込みの繰り返しによって生じる遅延時間を考慮しておらず、データサイズの大きいものを書込む際には、書込み時間の遅延が顕著に表れてシステムに支障を来たしていた。しかし、本発明のメモリ管理装置では、データ管理システムにフラッシュメモリの各パーティションにおけるデータ書込み遅延時間を事前に検査する機能を搭載することによって、検査値と書込みデータサイズから、書込み時間の遅延が支障を来たさない最適な物理パーティションを選択し、その領域にデータを書込むことができる。
【００３０】
また、フラッシュメモリの書込み時間は、その製造過程によってバラツキが大きいが、本発明のメモリ管理装置では、繰返し書込みに起因する書込み遅延の他に、製造過程に起因する書込み時間のバラツキも検出し、書込み遅延をリカバリすることができるので、デバイスの不良率を抑止することができる。四つ目の効果は、本発明のメモリ管理装置では、処理時間の精度が求められるシステムにもフラッシュメモリを搭載することが可能となり、フラッシュメモリがさらに普及し、その結果、フラッシュメモリのさらなる低コスト化を図ることができる。
【発明を実施するための最良の形態】
【００３１】
＜発明の概要＞
ファイル保存傾向予測テーブルを保持したデータ管理システムに適用される本発明のメモリ管理装置は、パーティションサイズを調整するために、パーティションごとに存在した管理領域をパーティションから分離して新たに設けたパーティション管理領域にまとめている。さらに、各パーティション管理領域を統括制御する統括管理領域を設けている。
【００３２】
また、ファイルシステムにおいては、ファイル保存時刻、ファイルサイズ、及びファイル数の関係を記録したファイル保存傾向予測テーブルをデータ管理情報の一つとしてメモリ管理装置に持たせている。さらに、ファイル保存傾向予測テーブルに従い、ファイルをどの物理パーティションに保存すればメモリを一番有効に効率よく使用できるかの判定手段をメモリ管理装置に持たせている。また、ファイル保存傾向予測テーブルに従い、物理パーティションのサイズを自動的に調整する機能をメモリ管理装置に持たせている。
【００３３】
また、データ書込み時間保証機能付のデータ管理システムに適用される本発明のメモリ管理装置は、フラッシュメモリ上に存在する各パーティションのデータ書込み遅延時間を管理するために、パーティションごとに存在した管理領域をパーティションから分離して新たに設けたパーティション管理領域にまとめている。さらに、各パーティション管理領域を統括制御する統括管理領域を設けている。
【００３４】
また、ファイルシステムにおいては、データ管理システムに適用される本発明のメモリ管理装置に、物理パーティション番号と書込み最大遅延時間との関係を記録した更新可能なテーブルを持たせている。さらに、データ管理システムに適用される本発明のメモリ管理装置に、ファイル名と物理パーティション番号付ファイル名の関係を記録した更新可能なテーブルを持たせている。また、推奨書込みデータサイズと書込み時間の関係を記録したコンストテーブルを持たせている。このテーブルにはデータサイズよって異なる最大許容書込み時間を記憶しておく。つまり、サイズが大きい場合は許容時間を短くし、サイズが小さい場合は許容時間を長くすることで、書込み処理時間が実用上支障ないようにする。また、上記の３つのテーブルに従い、どの物理パーティションにデータを保存すれば、データ書込み時間を最大限保証することができるかの判定手段を持たせている。さらに、データ書込み時において、物理パーティション番号と書込み最大遅延時間との関係を示すテーブル、及びファイル名と物理パーティション番号付ファイル名の関係を示すテーブルのテーブルデータを更新する機能を持たせている。
【００３５】
＜実施の形態１＞
まず、本発明の実施の形態１で、ファイル保存傾向予測テーブルを保持したデータ管理システムに適用されるメモリ管理装置の実施の形態について図面を参照しながら詳細に説明する。このメモリ管理装置は、フラッシュメモリを取り扱う際に、メモリ資源をより効率的にかつフル活用できるようにするために、ファイル保存傾向予測テーブルをデータ管理情報の一つとして保持し、このファイル保存傾向予測テーブルにしたがってメモリを制御する機能をメモリ管理装置自身に持たせたものである。
【００３６】
最初に、ファイル保存傾向予測テーブルに従い、ファイルをどの物理パーティションに保存すればメモリを一番有効に効率よく使用できるかを判定する機能を、本発明のメモリ管理装置に持たせる場合について説明する。図１および２は、本発明のメモリ管理装置に適用されるファイル保存傾向予測テーブル更新部の処理の流れを示すフローチャートである。ここで、入力データは、パーティションNo.、セクタNo.、データサイズ、及び時刻データである。なお、入力されるパーティションNo.セクタNo.は、ファイル名に対応付けられているNo.である。また、出力データは、パーティションNo.、セクタNo.、及びデータサイズである。なお、出力されるパーティションNo.とセクタNo.は、保存したいデータにとって最適なパーティションNo.セクタNo.である。
【００３７】
図１において、まず、データアクセス種別の検査を行う（ステップＳ１）。ここで、データ保存以外（例えば、読出／削除）の場合は、ファイル保存傾向予測テーブル更新部の処理に該当しないので処理を終了する。一方、ステップＳ１のデータアクセス種別の検査でデータ保存（書込み）操作の場合は、データサイズの判定を行う（ステップＳ２）。データサイズの判定でメモリのトータル空き容量がデータサイズ未満の場合は、ファイル保存傾向予測テーブル更新部の処理は行えないので処理を終了する。一方、ステップＳ２のデータサイズの判定でメモリのトータル空き容量がデータサイズ以上の場合は、パーティションNo.のカウントをリセットする（ステップＳ３）。
【００３８】
次に、最適セクタサイズの判定を行い（ステップＳ４）、現在の最適セクタサイズよりさらにデータサイズに近いセクタサイズを発見した場合は、最適パーティションNo.を記憶し（ステップＳ５）、パーティションNo.のカウンタを更新する（ステップＳ６）。一方、ステップＳ４で現在の最適セクタサイズよりさらにデータサイズに近いセクタサイズを発見しなかった場合は、ステップＳ５をスキップして、パーティションNo.のカウンタを更新する（ステップＳ６）。
【００３９】
このようにしてパーティションNo.のカウンタを更新したら、パーティションNo.の最大値の判定を行う（ステップＳ７）。ここで、カウント値がパーティションNo.の最大値未満であれば、ステップＳ４に戻って最適セクタサイズの判定を行い、以下、前述の各ステップによる処理を繰り返す。一方、ステップＳ７でパーティションNo.の最大値の判定を行った結果、カウント値がパーティションNo.の最大値以上であれば、図２に示すように、最適パーティションの空きサイズの検査を行う（ステップＳ８）。ここで、最適パーティションの空きサイズがデータサイズ未満であれば、他のパーティションの空きサイズの最小処理を行い（ステップＳ９）、さらに、最適パーティションの空きサイズの拡張処理を行う（ステップＳ１０）。そして、データの保存処理を行って（ステップＳ１１）、処理を終了する。一方、ステップＳ８で最適パーティションの空きサイズがデータサイズ以上であれば、ステップＳ９及びステップＳ１０をスキップし、データの保存処理を行って（ステップＳ１１）、処理を終了する。
【００４０】
以上のフローを要約すると、データアクセス種別の検査を行った後にデータサイズの判定を行い、さらに、最適パーティションNo.の判定を行う。なお、最適とは、データのサイズがセクタサイズに最も近いことを意味している。次に、パーティションサイズの調整を行い、さらに、パーティション管理領域の更新を行う。なお、パーティション管理領域の更新にはパーティションサイズの変更に伴う更新が行われる。そして、全パーティション統括管理領域の更新（つまり、ファイル保存傾向予測テーブルの更新）を行う。
【００４１】
図３は、本発明のメモリ管理装置に適用されるファイル保存傾向予測テーブルを示す図である。このファイル保存傾向予測テーブルは、ファイル保存時刻、ファイルサイズ、及びファイル数の３要素で構成されている。ここで、メモリ管理装置が保存するテーブル数はパーティションの個数であり、この図の例では、３個のテーブル数、つまり３個のパーティション数からなっている。
【００４２】
図３において、保存されるデータのサイズＸ（ｂｉｔｅ）に従い、
１≦Ｘ≦２５６のときは、パーティション３用のテーブル（テーブル３）が更新され、
２５７≦Ｘ≦５１２のときは、パーティション２用のテーブル（テーブル２）が更新され、
５１３≦Ｘのときは、パーティション１用のテーブル（テーブル１）が更新される。
すなわち、マトリクス一覧で図３のようなイメージとなる。なお、図３の表において、ファイルサイズとは累積値を意味している。例えば、※６０００は５つのファイル（６００，１２００，１３００，１４００，１５００）の合計サイズを表わしている。この５つのファイルが３時から５時５９分までの間に保存されることを意味している。
【００４３】
次に、ファイル保存傾向予測テーブルに従い物理パーティションのサイズを自動的に調整する機能を本発明のメモリ管理装置に持たせる場合について説明する。図４は、本発明のメモリ管理装置に適用されるパーティション事前調整機能の処理の流れを示すフローチャートである。なお、この処理はタイマーイベントによって起動される。
【００４４】
図４において、まず、ファイルを保存するための時刻の取得を行い（ステップＳ２１）、続いて、パーティションNo.のカウンタをリセットする（ステップＳ２２）。さらに、パーティション領域サイズの更新を行い（ステップＳ２３）、その後、パーティションNo.のカウンタの更新を行う（ステップＳ２４）。そして、パーティションNo.の最大値の判定を行い（ステップＳ２５）、カウンタ値がパーティションNo.の最大値未満であれば、ステップＳ２３に戻ってパーティション領域サイズの更新を行い、以下、前述の各ステップを繰り返す。一方、ステップＳ２５で、カウンタ値がパーティションNo.の最大値以上であれば、パーティションの事前調整の処理を終了する。
【００４５】
次に、３つのパーティションａ，ｂ，ｃによって構成されるフラッシュメモリを搭載した携帯端末について、物理パーティションをフラッシュメモリに保存する流れを説明する。図５および６は、本発明のメモリ管理装置が適用される携帯端末によるアンケート収集システムの処理の流れを示すフロー図である。この図では各パーティションは用途ごとに最適なセクタサイズで構成されている。
【００４６】
図５において、パーティションａは、アンケート回答メールの回収用ボックスなどのように普段メール受信ボックスとして使用しているパーティションである。受信メールは１Ｋバイトのデータであるため、パーティションａは１Ｋバイトのセクタで構成されている。パーティションｂは、アンケート結果レポートなどの文書を保存するためのパーティションである。文書は５Ｋバイトから１０Ｋバイトのデータであるため、パーティションｂは１０Ｋバイトのセクタで構成されている。また、パーティションｃは、アンケート募集メール送信用などのように普段メール送信用ボックスとして使用しているパーティションである。送信用メールは５００バイトのデータであるため、パーティションｃは５１２バイトのセクタで構成されている。
【００４７】
また、各パーティションに保存されているデータは時刻によって次のような保存傾向がある。すなわち、パーティションａは、例えば、送信元が主に海外であるため、送信元が昼間（つまり、受信元が夜間のｐｍ７：００から翌朝のａｍ６：５９）に大量のメールが受信される傾向がる。また、パーティションｂは、外出先などで、コア勤務時間（ａｍ１１：００からｐｍ６：５９）に１つの文書（つまり、レポートなど）を何回も編集しながら完成させる傾向がある。さらに、パーティションｃは、夜間に受信した大量のメールを勤務開始時に確認し、図６に示すような午前中（例えば、ａｍ７：００からａｍ１０：５９）に全返信を済ませる傾向がある。
【００４８】
次に、図５に示す携帯端末のアンケート収集システムの処理の流れを説明する。まず、携帯端末が初期設定されているデフォルトにおいては、パーティションａは、所定時刻になると受信メール保存領域をあらかじめ自動的に確保する。さらに、文書データを保存済みのパーティションｂは、デフォルトの時間帯では文書データが増加することはないため領域の縮小が可能な状態となっている（ステップＳ７１）。
【００４９】
次に、ａｍ７：００以降の時間帯において、パーティションａで大量の受信メールが漏れなく保存される（ステップＳ７２）。これによって、ｐｍ７：００から翌朝のａｍ６：５９まではパーティションａには受信メールが保存され、パーティションｂには前から引き続いて文書データが保存されている（ステップＳ７３）。そして、ａｍ７：００までにパーティションｃで送信メール保存領域をあらかじめ確保する。なお、この時間帯では文書データが増加することはないために領域の縮小が可能である（ステップＳ７４）。
【００５０】
そして、図６に示すように、ａｍ７：００を過ぎると、パーティションａで受信メールの集計が完了したら重要情報以外を削除する傾向にある。また、パーティションｃで送信メールが漏れなく保存される。このようにして、ａｍ７：００からａｍ１０：５９において、パーティションａで受信メールが保存され、パーティションｂで文書データが保存され、かつパーティションｃで送信メールが保存される。そして、パーティションｂにおいて、文書データの保存及び編集領域をあらかじめ確保しておく。なお、この時間帯では送受信メールが大量に保存されることはないので、領域の縮小は可能である（ステップＳ７５）。
【００５１】
そして、ａｍ１１：００においてパーティションｂで文書データの増加に対応し、パーティションａで受信メールが保存され、パーティションｂで文書データが保存され、かつパーティションｃで送信メールが保存された状態となる（ステップＳ７６）。
【００５２】
＜実施の形態２＞
次に、本発明の実施の形態２で、データ書込み時間保証機能付のデータ管理システムに適用されるメモリ管理装置の実施の形態について図面を参照しながら詳細に説明する。以下、理解を容易にするために、従来技術によるフラッシュメモリへの書込みシーケンスと本発明によるフラッシュメモリへの書込みシーケンスとを対比しながら、データ書込み時間保証機能付のデータ管理システムに適用される本発明のメモリ管理装置の実施の形態を詳細に説明する。
【００５３】
図７は、従来技術におけるフラッシュメモリへの書込みシーケンス１のフローチャートである。また、図８は、従来技術におけるフラッシュメモリへの書込みシーケンス２のフローチャートである。すなわち、図６は、図５のステップＳ３２における詳細なフローチャートである。まず、図７、図８を用いて、従来のフラッシュメモリへの書込みシーケンスの流れを説明する。
【００５４】
図７において、まず、書込みカウンタをリセットし（ステップＳ３１）、デバイスへの書込みを行う（ステップＳ３２）。なお、デバイスへの書込みの詳細な流れは図６を用いて後述する。次に、デバイスへの書込み結果の判定を行い（ステップＳ３３）、書込みに成功したならば、書込みカウンタの判定を行い（ステップＳ３４）、書込みのカウントアップが完了すれば処理を終了する。また、ステップＳ３３のデバイスへの書込み結果の判定で書込みに失敗したならば、そのまま処理を終了する。さらに、ステップＳ３４の書込みカウンタの判定で書込みのカウントアップ中であれば、書込みカウンタの更新を行い（ステップＳ３５）、ステップＳ３２のデバイスへの書込みを行い、前述の各ステップを繰り返す。
【００５５】
次に、図７のステップＳ３２におけるデバイスへの書込み処理の流れについて、図８を用いて詳細に説明する。図８において、デバイスへのデータの書込みを行うと（ステップＳ４１）、準備完了を示すＡＣＫ応答の判定が行われ（ステップＳ４２）、応答があれば処理を終了する。一方、ステップＳ４２のＡＣＫ応答の判定で応答がなければタイムアウトになったか否かの判定が行われ（ステップＳ４３）、タイムアウト前であればステップＳ４２に戻ってタイムアウトになるまでＡＣＫ応答の判定を繰り返す。また、ステップＳ４３でタイムアウトになればリトライ回数の判定を行う（ステップＳ４４）。ここで、リトライ実行中であればステップＳ４１に戻ってデバイスへのデータの書込みを行い、前述の各ステップを繰り返す。一方、ステップＳ４４のリトライ回数の判定においてリトライ終了であれば処理を終了する。
【００５６】
次に、本発明におけるフラッシュメモリへの書込みシーケンスの流れを説明する。図９は、本発明におけるフラッシュメモリへの書込みシーケンス１のフローチャートである。また、図１０は、本発明におけるフラッシュメモリへの書込みシーケンス２のフローチャートである。すなわち、図１０は、図９のステップＳ５４における詳細なフローチャートである。なお、図９において太枠で囲った部分が図７のフローチャートに対して追加された部分であり、図１０において太枠で囲った部分が図８のフローチャートに対して追加された部分である。
【００５７】
図９において、まず、物理パーティション番号選択の処理を行う。この処理では、入力ファイルサイズとコンストテーブル、管理テーブル１に基づいて書込みに最適な物理パーティションを選択する（ステップＳ５１）。次に、管理テーブル２の更新処理を行う。この処理では、入力ファイル名と管理テーブル１に記録されている書込みに最適な物理パーティション番号とに基づいて、ファイル名と物理パーティション名付きファイル名との関係を管理テーブル２に登録する（ステップＳ５２）。
【００５８】
その後は、書込みカウンタをリセットし（ステップＳ５３）、デバイスへの書込みを行う（ステップＳ５４）。なお、デバイスへの書込みの詳細な流れは図１０を用いて後述する。次に、デバイスへの書込み結果の判定を行い（ステップＳ５５）、書込みに成功したならば、書込みカウンタの判定を行う（ステップＳ５６）。そして、書込みのカウントアップが完了したら、管理テーブル１の更新処理を行う。この処理では、デバイスの書込みシーケンスにて読み出した書込み時間が以前の記録値より大きな値であるならば管理テーブル１に登録し（ステップＳ５７）、処理を終了する。
【００５９】
また、ステップＳ５５のデバイスへの書込み結果の判定で書込みに失敗したならばそのまま処理を終了する。さらに、ステップＳ５６の書込みカウンタの判定で書込みのカウントアップ中であれば、書込みカウンタの更新を行い（ステップＳ５８）、ステップＳ５４に戻ってデバイスへの書込みを行い、前述の各ステップを繰り返す。
【００６０】
次に、図９のステップＳ５４におけるデバイスへの書込み処理の流れについて、図１０を用いて詳細に説明する。図１０において、まず、書込み時間計測タイマを再びスタートさせる（ステップＳ６１）。その後、デバイスへのデータの書込みを行うと（ステップＳ６２）、準備完了を示すＡＣＫ応答の判定が行われ（ステップＳ６３）、応答があれば書込み時間計測タイマの読出しを行って（ステップＳ６４）、処理を終了する。
【００６１】
一方、ステップＳ６３のＡＣＫ応答の判定で応答がなければタイムアウトになったか否かの判定が行われ（ステップＳ６５）、タイムアウト前であればステップＳ６３に戻ってタイムアウトになるまでＡＣＫ応答の判定を繰り返す。また、ステップＳ６５のタイムアウト判定でタイムアウトになればリトライ回数の判定を行う（ステップＳ６６）。ここで、リトライ実行中であればステップＳ６１に戻って書込み時間計測タイマのリスタートを行い、前述の各ステップを繰り返す。一方、ステップＳ６６でリトライ終了であれば、書込み時間計測タイマの読出しを行って（ステップＳ６４）、処理を終了する。
【００６２】
＜まとめ＞
以上に述べた説明を要約して、ファイル保存傾向予測テーブルを保持したデータ管理システム、及びデータ書込み時間保証機能付きのデータ管理システムに適用される本発明のメモリ管理装置の構成について説明する。図１１は、ファイル保存傾向予測テーブルを保持したデータ管理システム、及びデータ書込み時間保証機能付きのデータ管理システムに適用される本発明のメモリ管理装置の構成を示すブロック図である。図１１において、メモリ管理装置１は、書込み及び所定の記憶領域単位での一括電気的消去が可能であり、１つ以上の記憶領域単位を有する複数のパーティションに分割される不揮発性メモリに対するメモリ管理を行うものであって、物理パーティションなどのパーティションに対応した記憶容量や書込み時間などを関連付けた更新可能なテーブル２と、テーブル２に基づいてデータの記憶先の物理パーティションを判断する判断手段３と、データを記憶する記憶手段５と、判断手段３の判断結果に基づいてデータを記憶手段５へ記憶させる制御手段４とを備えた構成となっている。なお、テーブル２は、物理パーティションに対応して、記憶容量や記憶時間や記憶件数を記憶することができる。
【００６３】
また、テーブル２は、物理パーティションと書込み最大遅延時間とを関連付けた第1のテーブル２ａと、ファイル名と物理パーティションとを関連付けた第２のテーブル２ｂと、推奨書込みデータ容量と書込み時間とを関連付けたコンストテーブルなどの第３のテーブル２ｃとによって構成されている。以上のようなメモリ管理装置１の構成によって、物理パーティションを単位として管理を行い、物理パーティションごとにデータ書込みが集中しないようにすることができ、結果的に、メモリの寿命を延ばすことができる。
【産業上の利用可能性】
【００６４】
本発明のファイル保存傾向予測テーブルを保持したデータ管理システムに適用されるメモリ管理装置によれば、メモリ容量不足に起因したメモリサイズの増大を抑止することができるので、携帯電話機などの携帯型電子端末装置に利用することができる。また、本発明のデータ書込み時間保証機能付のデータ管理システムに適用されるメモリ管理装置によれば、処理時間の精度が求められるシステムにもフラッシュメモリを搭載することが可能となり、その結果、フラッシュメモリのさらなる低コスト化を図ることができるので、汎用型の携帯電話機などの携帯型電子端末装置に利用することができる。
【図面の簡単な説明】
【００６５】
【図１】本発明のメモリ管理装置に適用されるファイル保存傾向予測テーブル更新部の処理の流れを示すフローチャートの前半部である。
【図２】本発明のメモリ管理装置に適用されるファイル保存傾向予測テーブル更新部の処理の流れを示すフローチャートの後半部である。
【図３】本発明のメモリ管理装置に適用されるファイル保存傾向予測テーブルを示す図である。
【図４】本発明のメモリ管理装置に適用されるパーティション事前調整機能の処理の流れを示すフローチャートである。
【図５】本発明のメモリ管理装置が適用される携帯端末によるアンケート収集システムの処理の前半の流れを示すフロー図である。
【図６】本発明のメモリ管理装置が適用される携帯端末によるアンケート収集システムの処理の後半の流れを示すフロー図である。
【図７】従来技術におけるフラッシュメモリへの書込みシーケンス１のフローチャートである。
【図８】従来技術におけるフラッシュメモリへの書込みシーケンス２のフローチャートである。
【図９】本発明におけるフラッシュメモリへの書込みシーケンス１のフローチャートである。
【図１０】本発明におけるフラッシュメモリへの書込みシーケンス２のフローチャートである。
【図１１】ファイル保存傾向予測テーブルを保持したデータ管理システム、及びデータ書込み時間保証機能付きのデータ管理システムに適用される本発明のメモリ管理装置の構成を示すブロック図である。
【符号の説明】
【００６６】
１      メモリ管理装置          ２      テーブル
２ａ    第１のテーブル          ２ｂ    第２のテーブル
２ｃ    第３のテーブル          ３      判断手段
４      制御手段                ５      記憶手段
【図１】
2006146808.tif 000003
【図２】
2006146808.tif 000004
【図３】
2006146808.tif 000005
【図４】
2006146808.tif 000006
【図５】
2006146808.tif 000007
【図６】
2006146808.tif 000008
【図７】
2006146808.tif 000009
【図８】
2006146808.tif 000010
【図９】
2006146808.tif 000011
【図１０】
2006146808.tif 000012
【図１１】
2006146808.tif 000013