JP2006146808A - メモリ管理装置、及びメモリ管理方法 - Google Patents

メモリ管理装置、及びメモリ管理方法 Download PDF

Info

Publication number
JP2006146808A
JP2006146808A JP2004339387A JP2004339387A JP2006146808A JP 2006146808 A JP2006146808 A JP 2006146808A JP 2004339387 A JP2004339387 A JP 2004339387A JP 2004339387 A JP2004339387 A JP 2004339387A JP 2006146808 A JP2006146808 A JP 2006146808A
Authority
JP
Japan
Prior art keywords
data
partition
memory
memory management
write
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.)
Withdrawn
Application number
JP2004339387A
Other languages
English (en)
Inventor
Masaaki Shimizu
政明 清水
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.)
Kyocera Corp
Original Assignee
Kyocera Corp
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 Kyocera Corp filed Critical Kyocera Corp
Priority to JP2004339387A priority Critical patent/JP2006146808A/ja
Publication of JP2006146808A publication Critical patent/JP2006146808A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】 パーティション単位で管理を行い、パーティションごとにデータ書込みが集中しないようにしてメモリ寿命を延ばす。
【解決手段】 メモリ管理装置1は、書込み及び所定の記憶領域単位での一括電気的消去が可能であり、1つ以上の記憶領域単位を有する複数のパーティションに分割される不揮発性メモリを管理するものである。メモリ管理装置1は、物理パーティションなどに対応した記憶容量や書込み時間などを関連付けた更新可能なテーブル2と、テーブル2に基づいてデータの記憶先の物理パーティションを判断する判断手段3と、データを記憶する記憶手段5と、判断手段3の判断結果に基づいてデータを記憶手段5へ記憶させる制御手段4とによって構成されている。この構成により、物理パーティション単位で管理を行い、物理パーティションごとにデータ書込みが集中しないようにすることでメモリ寿命を延ばすことができる。
【選択図】 図11

Description

本発明は、ファイル保存傾向予測テーブルを保持したデータ管理システムとデータ書込み時間保証機能付きのデータ管理システムに適用されるメモリ管理装置、及びメモリ管理方法に関する。
まず、フラッシュメモリを取り扱う上での必要事項について述べる。フラッシュメモリは、低消費電力である、データ書込み/読出しが高速である、及び安価であるなどの利点を持っているが、下記のような3つの問題点がる。すなわち、
(1)消去時間が非常に長い。
フラッシュメモリは、データ消去が64Kバイト単位(あるいは8Kバイト単位)でのみ可能なメモリ構造となっているために消去時間が非常に長い。したがって、高速処理が求められるシステムではこのような長い消去時間がボトルネックとなる。
(2)書込み/消去回数に限度がある。
フラッシュメモリは、データの書込み/消去回数に限度がある。すなわち、一般的なデータの書込み/消去の保証回数は10万回〜100万回程度である。したがって、特定の物理ブロックに対してデータの書込み/消去が集中した場合はフラッシュメモリデバイスとしての寿命を短くしてしまう。
(3)書込み/消去回数が増えると遅延時間が大きくなる。
フラッシュメモリは、データの書込み/消去が繰り返されると、書込み/消去時間の遅延が大きくなる性質がある。例えば、初回の書込み/消去時間と比較すると、数万回の書込み/消去を繰り返した後は、書込みで約5倍ぐらい、消去で約20倍ぐらい書込み/消去時間が遅くなる。そのため、処理時間に精度が求められるシステムでは、フラッシュメモリへのデータの書込み時間がボトルネックとなる。
したがって、フラッシュメモリを実用上問題なく取り扱うには、上記の3件の問題点をクリアする必要がある。
すなわち、フラッシュメモリは、携帯端末などにおいて実用的な不揮発性メモリとして利用されているが、実用上問題なく取り扱うためにはデータの消去時間が非常に長いというフラッシュメモリが持つ欠点をクリアする必要がある。このようなデータの消去時間が長いという問題は、一般的なフラッシュメモリにおいて、データ消去が64Kバイト単位(あるいは8Kバイト単位)でのみ可能なメモリ構造となっていることに起因している。そこで、上記の問題を解決するために、以下に示すような技術が開発されている。
従来より、フラッシュメモリのデータ消去時間の長さを意識させない技術としてファイルシステムが知られている。したがって、まず、従来のデータ管理システムであるファイルシステムの技術的原理について述べる。この技術は、データを一つのまとまり(つまり、ファイル)として処理を行い、データ消去回数を極力減らすことによってメモリ自体のデータ消去スピードの遅さを意識せずフラッシュメモリを実用上問題なく扱うことができるものである。そのためには、このファイルシステムはデータを以下のようにして扱っている。
1.データを扱う際にフラッシュメモリの物理アドレスを指定したアクセス(書込み/読出/消去)を禁止し、ファイル名を指定することによってファイル単位でデータアクセスを可能にする。
2.ファイルをある一定サイズのデータ(セクタ)の集まりとして扱い、該当するファイルがどのようなセクタ群によって構成されているかという情報をファイル管理データとして保持する。セクタ群による構成の情報とは、例えば、どこの物理アドレスに配置されたセクタで構成され、かつ何個のセクタによって構成されているかといった情報である。また、保持するファイル管理データとは、例えば、ファイルアロケーションテーブル(FAT)と称されているものなどである。
3.ファイルを構成しているセクタを次の3種類の状態で認識する。すなわち、(1)空きセクタ(データが書込まれていない領域)で認識する。(2)有効セクタ(データが書込まれている領域)で認識する。(3)無効セクタ(データを書込むことができない領域、つまり消去されたことになっているデータ領域)で認識する。
なお、ファイルの消去時には、一定の、例えば64Kバイト単位(あるいは8Kバイト単位)のデータを消去するのではなく、消去するファイルを構成するセクタの管理情報に無効セクタ情報を書込むことでファイル消去の完了としている。このような方法によって、通常のファイル消去処理ではスピードが遅くならないようにしている。
ところが、上述のような方法では見かけ上の消去処理は早くなっているが、使用されているメモリは無効セクタとして残っていて解放されていない。したがって、ファイルの書込み/削除を繰り返していくとフラッシュメモリが膨大な無効セクタ領域(つまり、データを書込むことができない領域)で埋まってしまい、書込み可能なメモリ資源を保証することが困難になってしまう。そのため、どこかのタイミングで例えば64Kバイト単位(あるいは8Kバイト単位)のデータ消去を実行し、無効セクタをデータの書込み可能な空きセクタ領域にする必要が生じる。そのための処理は、一般的には下記の2つの機能によって実現される。以下、その機能について述べる。
第1の機能:ガーベッジ機能
ガーベッジ機能は、フラッシュメモリがある条件(例えば、ある一定サイズ以上の無効セクタが生じた場合等)を満たした場合、64Kバイト単位(あるいは8Kバイト単位)のデータ消去を行って無効セクタを空きセクタにするものである。これによって、書込み可能なメモリ資源を可能な限り保証している。但し、フラッシュメモリは消去時間が非常に長いためにガーベッジ処理に要する時間が長くかかるという問題は解決できない。
第2の機能:フラッシュメモリのパーティション分割管理機能、及び異なるセクタサイズによるデータ管理機能
ここで、ガーベッジ機能処理時間の短縮方法として次の2つの技術がある。
1.フラッシュメモリを複数のパーティションに区切り、パーティション毎にガーベッジ機能が実行されるようにする。この方法によって、ガーベッジの対象となる領域サイズを小さくすることができるため、一回のガーベッジ処理にかかる時間を短くすることができる。なお、パーティションはファイルの種類ごとに構成される。
2.フラッシュメモリを複数のパーティションに区切り、パーティション毎にファイルを構成するセクタサイズを異なるものとする。この方式によって、ファイルのサイズがセクタサイズに合ったパーティション(つまり、保存したいファイルにとって最適なパーティション)に保存することで、データアクセススピードを確保すると共に無効セクタの増加を抑え、ガーベッジの発生頻度を減らすことができる。
以上の技術によりフラッシュメモリの消去処理を早く行えるようにしている。
また、フラッシュメモリデバイスとしての寿命を延ばすための技術としてファイルシステムがある。このファイルシステムは、前述した機能の他にフラッシュメモリを構成している物理ブロックごとにデータ書込み回数をカウントし、これを管理することで特定のブロックにデータ書込みが集中しないようにする機能(つまり、ウェアレベリング機能)を有している。
つまり、フラッシュメモリと呼ばれる不揮発性メモリは、その形状の割に記憶容量が大きいことから、特に小型化が要求される携帯機器等のメモリとして広く使用されている。このようなフラッシュメモリは、データをひとまとまりのファイルとして処理しているが、データの消去回数を極力減らすことにより、メモリ自体のデータ消去スピードの遅さを意識させない。しかし、フラッシュメモリは使用されているメモリ無効セレクタとして解放されないために、ガーべッジ機能によって書込み可能なメモリ資源を可能な限り保証している。ところが、ガーベッジ機能の処理に有する時間自体が遅いために、ガーベッジ機能の頻度やアクセス速度を防止するために、連続する複数のデータを分散して書込むメモリ管理装置を設けている(例えば、特許文献1参照)。
特開2003−015944号公報
しかしながら、フラッシュメモリをパーティションに区切って管理するために保存しようとしたファイルのパーティションに空き領域がなければ、他のパーティションに十分な空き領域があったとしてもファイルを保存することができない。つまり、パーティションを区切らない場合とは異なり、メモリ資源をフルに使用することができないという問題が生じる。また、ファイルをどのパーティションに保存すればメモリを最も効率的に使うことができるのか(つまり、最も無効セクタの増加を抑えることができるのか)については、ユーザが認識しなければならないという問題も生じる。
さらに、従来のファイルシステムは、前述した理由からパーティションごとのデータ管理を前提としたシステムとなっている。ウェアレベリング機能においても例外ではなく各パーティション内で実行される。したがって、ファイルシステムのウェアレベリング機能は、フラッシュメモリ上に存在する複数のパーティションにうち、どのパーティションにデータの書込みが集中しているかについては感知しないのが一般的である。そのため、個々のパーティション間で、データ書込み可能回数(つまり寿命)やデータ書込みの遅延時間に大きな違いが生じるという問題がある。特に、データの書込みサイズが大きい場合にはその遅延時間が顕著に表れ、フラッシュメモリの取り扱いに支障を来たすおそれがある。
本発明は、以上のような問題点に鑑みてなされたものであり、ファイル保存傾向予測テーブルを保持し、かつデータ書込み時間保証機能を備えることによりパーティションを単位として管理を行い、パーティションごとにデータ書込みが集中しないようにすることでメモリの寿命を延ばすことができるメモリ管理装置及びメモリ管理方法を提供することを目的とする。
本発明のメモリ管理装置は、書込み及び所定の記憶領域単位での一括電気的消去が可能であり、1つ以上の記憶領域単位を有する複数のパーティションに分割される不揮発性メモリに対するメモリ管理を行うメモリ管理装置であって、パーティションに対応した記憶容量、書込み時間の少なくとも一方を関連付けたテーブルと、そのテーブルに基づいてデータの記憶先のパーティションを判断する判断手段と、データを記憶する記憶手段と、判断手段の判断結果に基づいてデータを記憶手段へ記憶させる制御手段とを備える構成を採っている。
また、本発明のメモリ管理装置は、前記発明の構成に加えて、前記テーブルは、パーティションに対応して、記憶容量、記憶時間、記憶件数を記憶する構成を採っている。
また、本発明のメモリ管理装置は、前記発明の構成に加えて、前記テーブルは、パーティションと書込み最大遅延時間とを関連付けた第1のテーブルと、ファイル名とパーティションとを関連付けた第2のテーブルと、推奨書込みデータ容量と書込み時間とを関連付けた第3のテーブルとによる構成を採っている。
また、本発明のメモリ管理装置は、前記発明の構成に加えて、パーティションは物理パーティションである構成を採っている。
また、本発明のメモリ管理装置は、前記発明の構成に加えて、前記テーブルは更新可能である構成を採っている。
また、本発明のメモリ管理装置は、書込み最大遅延時間との関連付けをパーティションの番号で行うような構成を採っている。
また、本発明のメモリ管理方法は、書込み及び所定の記憶領域単位での一括電気的消去が可能であり、1つ以上の記憶領域単位を有する複数のパーティションに分割される不揮発性メモリに対するメモリ管理を行うメモリ管理方法であって、ファイルの保存時刻とファイルサイズとファイル数との関係を記録したファイル保存傾向予測テーブルをデータ管理情報の一つとして持たせる手順と、ファイル保存傾向予測テーブルに従い、ファイルをどの物理パーティションに保存すればメモリを一番有効に効率よく使用できるかを判定する手順と、ファイル保存傾向予測テーブルに従い、物理パーティションのサイズを自動的に調整する手順とを含んでいる。
また、本発明のメモリ管理方法は、書込み及び所定の記憶領域単位での一括電気的消去が可能であり、1つ以上の前記記憶領域単位を有する複数のパーティションに分割される不揮発性メモリに対するメモリ管理を行うメモリ管理方法であって、物理パーティション番号と書込み最大遅延時間との関係を記録した更新可能な第1の管理テーブルを持たせる手順と、ファイル名と物理パーティション番号付ファイル名との関係を記録した更新可能な第2の管理テーブルを持たせる手順と、推奨書込みデータサイズと書込み時間との関係を記録した更新可能なコンストテーブルを持たせる手順と、第1の管理テーブル、第2の管理テーブル、及びコンストテーブルに従い、どの物理パーティションにデータを保存すればデータ書込み時間を最大限保証することができるかの判定を行う手順と、データ書込み時において、第1の管理テーブル及び第2の管理テーブルのテーブルデータを更新する手順とを含んでいる。
また、本発明のメモリ管理方法は、前記発明のメモリ管理方法に加えて、コンストテーブルには、データサイズよって異なる最大許容書込み時間を記憶させることを特徴としている。
また、本発明のメモリ管理方法は、前記発明のメモリ管理方法に加えて、コンストテーブルは、データサイズが大きい場合は許容時間を短くし、データサイズが小さい場合は許容時間を長くした最大許容書込み時間を記憶することを特徴としている。
ファイル保存傾向予測テーブルを保持したデータ管理システムに適用される本発明のメモリ管理装置は、ファイル保存傾向予測テーブルに記録されているファイル保存時刻に従ってメモリ制御を行うことにより、次のような幾つかの効果をもたらす。まず、一つ目の効果は、従来の技術ではユーザが物理メモリの構成について熟知していなければメモリを効率よく使用することは困難であったが、本発明では、ユーザが物理メモリの構成について知らなくても、メモリ管理装置がメモリを一番効率よく使用できる物理パーティションを自動選択し、事前にファイルを保存すべき物理パーティションの空きスペースを確保することができる。
また、ファイルを保存するときにメモリの空きスペースを調べて不足している場合は、従来技術では、ガーベッジ処理を行うときに空きスペースを確保しにいくためにファイルの保存にかなり時間がかかるケースがあった。しかし、本発明のメモリ管理装置では、ファイルの保存時刻をファイル保存傾向予測テーブルより予測し、あらかじめファイルを保存するために必要な物理パーティションの空きスペースを保証できるため、ファイルの保存時にメモリが不足する事態を回避することができると共に、ガーベッジ処理による空きスペースを確保する時間が長くなるおそれはなくなる。
また、携帯型電子端末装置においてメモリ容量不足に起因したメモリサイズの増大を抑止することが可能となり、携帯型電子端末装置のコスト上昇を抑えることができる。さらに、四つ目の効果は、実生活においてユーザが本当に必要としているデータが何であるか正確な統計をとることができるため、ユーザが使いやすい携帯型電子端末装置を供給することができるようになる。
また、データ書込み時間保証機能付のデータ管理システムに適用される本発明のメモリ管理装置は、次のような幾つかの効果がある。一つ目の効果は、従来技術では、データ管理システムのウェアレベリング機能によってパーティションごとの寿命を延ばすことができたが、特定のパーティションにデータ書込みが集中した場合は、フラッシュメモリデバイスとしての寿命を延ばすことが困難であった。しかし、本発明のメモリ管理装置では、データ管理システムの特定のパーティションにデータの書込みが集中しないようにする機能を搭載することによって、フラッシュメモリデバイスとしての寿命を延ばすことができる。
また、従来技術では、データ書込みの繰り返しによって生じる遅延時間を考慮しておらず、データサイズの大きいものを書込む際には、書込み時間の遅延が顕著に表れてシステムに支障を来たしていた。しかし、本発明のメモリ管理装置では、データ管理システムにフラッシュメモリの各パーティションにおけるデータ書込み遅延時間を事前に検査する機能を搭載することによって、検査値と書込みデータサイズから、書込み時間の遅延が支障を来たさない最適な物理パーティションを選択し、その領域にデータを書込むことができる。
また、フラッシュメモリの書込み時間は、その製造過程によってバラツキが大きいが、本発明のメモリ管理装置では、繰返し書込みに起因する書込み遅延の他に、製造過程に起因する書込み時間のバラツキも検出し、書込み遅延をリカバリすることができるので、デバイスの不良率を抑止することができる。四つ目の効果は、本発明のメモリ管理装置では、処理時間の精度が求められるシステムにもフラッシュメモリを搭載することが可能となり、フラッシュメモリがさらに普及し、その結果、フラッシュメモリのさらなる低コスト化を図ることができる。
<発明の概要>
ファイル保存傾向予測テーブルを保持したデータ管理システムに適用される本発明のメモリ管理装置は、パーティションサイズを調整するために、パーティションごとに存在した管理領域をパーティションから分離して新たに設けたパーティション管理領域にまとめている。さらに、各パーティション管理領域を統括制御する統括管理領域を設けている。
また、ファイルシステムにおいては、ファイル保存時刻、ファイルサイズ、及びファイル数の関係を記録したファイル保存傾向予測テーブルをデータ管理情報の一つとしてメモリ管理装置に持たせている。さらに、ファイル保存傾向予測テーブルに従い、ファイルをどの物理パーティションに保存すればメモリを一番有効に効率よく使用できるかの判定手段をメモリ管理装置に持たせている。また、ファイル保存傾向予測テーブルに従い、物理パーティションのサイズを自動的に調整する機能をメモリ管理装置に持たせている。
また、データ書込み時間保証機能付のデータ管理システムに適用される本発明のメモリ管理装置は、フラッシュメモリ上に存在する各パーティションのデータ書込み遅延時間を管理するために、パーティションごとに存在した管理領域をパーティションから分離して新たに設けたパーティション管理領域にまとめている。さらに、各パーティション管理領域を統括制御する統括管理領域を設けている。
また、ファイルシステムにおいては、データ管理システムに適用される本発明のメモリ管理装置に、物理パーティション番号と書込み最大遅延時間との関係を記録した更新可能なテーブルを持たせている。さらに、データ管理システムに適用される本発明のメモリ管理装置に、ファイル名と物理パーティション番号付ファイル名の関係を記録した更新可能なテーブルを持たせている。また、推奨書込みデータサイズと書込み時間の関係を記録したコンストテーブルを持たせている。このテーブルにはデータサイズよって異なる最大許容書込み時間を記憶しておく。つまり、サイズが大きい場合は許容時間を短くし、サイズが小さい場合は許容時間を長くすることで、書込み処理時間が実用上支障ないようにする。また、上記の3つのテーブルに従い、どの物理パーティションにデータを保存すれば、データ書込み時間を最大限保証することができるかの判定手段を持たせている。さらに、データ書込み時において、物理パーティション番号と書込み最大遅延時間との関係を示すテーブル、及びファイル名と物理パーティション番号付ファイル名の関係を示すテーブルのテーブルデータを更新する機能を持たせている。
<実施の形態1>
まず、本発明の実施の形態1で、ファイル保存傾向予測テーブルを保持したデータ管理システムに適用されるメモリ管理装置の実施の形態について図面を参照しながら詳細に説明する。このメモリ管理装置は、フラッシュメモリを取り扱う際に、メモリ資源をより効率的にかつフル活用できるようにするために、ファイル保存傾向予測テーブルをデータ管理情報の一つとして保持し、このファイル保存傾向予測テーブルにしたがってメモリを制御する機能をメモリ管理装置自身に持たせたものである。
最初に、ファイル保存傾向予測テーブルに従い、ファイルをどの物理パーティションに保存すればメモリを一番有効に効率よく使用できるかを判定する機能を、本発明のメモリ管理装置に持たせる場合について説明する。図1および2は、本発明のメモリ管理装置に適用されるファイル保存傾向予測テーブル更新部の処理の流れを示すフローチャートである。ここで、入力データは、パーティションNo.、セクタNo.、データサイズ、及び時刻データである。なお、入力されるパーティションNo.セクタNo.は、ファイル名に対応付けられているNo.である。また、出力データは、パーティションNo.、セクタNo.、及びデータサイズである。なお、出力されるパーティションNo.とセクタNo.は、保存したいデータにとって最適なパーティションNo.セクタNo.である。
図1において、まず、データアクセス種別の検査を行う(ステップS1)。ここで、データ保存以外(例えば、読出/削除)の場合は、ファイル保存傾向予測テーブル更新部の処理に該当しないので処理を終了する。一方、ステップS1のデータアクセス種別の検査でデータ保存(書込み)操作の場合は、データサイズの判定を行う(ステップS2)。データサイズの判定でメモリのトータル空き容量がデータサイズ未満の場合は、ファイル保存傾向予測テーブル更新部の処理は行えないので処理を終了する。一方、ステップS2のデータサイズの判定でメモリのトータル空き容量がデータサイズ以上の場合は、パーティションNo.のカウントをリセットする(ステップS3)。
次に、最適セクタサイズの判定を行い(ステップS4)、現在の最適セクタサイズよりさらにデータサイズに近いセクタサイズを発見した場合は、最適パーティションNo.を記憶し(ステップS5)、パーティションNo.のカウンタを更新する(ステップS6)。一方、ステップS4で現在の最適セクタサイズよりさらにデータサイズに近いセクタサイズを発見しなかった場合は、ステップS5をスキップして、パーティションNo.のカウンタを更新する(ステップS6)。
このようにしてパーティションNo.のカウンタを更新したら、パーティションNo.の最大値の判定を行う(ステップS7)。ここで、カウント値がパーティションNo.の最大値未満であれば、ステップS4に戻って最適セクタサイズの判定を行い、以下、前述の各ステップによる処理を繰り返す。一方、ステップS7でパーティションNo.の最大値の判定を行った結果、カウント値がパーティションNo.の最大値以上であれば、図2に示すように、最適パーティションの空きサイズの検査を行う(ステップS8)。ここで、最適パーティションの空きサイズがデータサイズ未満であれば、他のパーティションの空きサイズの最小処理を行い(ステップS9)、さらに、最適パーティションの空きサイズの拡張処理を行う(ステップS10)。そして、データの保存処理を行って(ステップS11)、処理を終了する。一方、ステップS8で最適パーティションの空きサイズがデータサイズ以上であれば、ステップS9及びステップS10をスキップし、データの保存処理を行って(ステップS11)、処理を終了する。
以上のフローを要約すると、データアクセス種別の検査を行った後にデータサイズの判定を行い、さらに、最適パーティションNo.の判定を行う。なお、最適とは、データのサイズがセクタサイズに最も近いことを意味している。次に、パーティションサイズの調整を行い、さらに、パーティション管理領域の更新を行う。なお、パーティション管理領域の更新にはパーティションサイズの変更に伴う更新が行われる。そして、全パーティション統括管理領域の更新(つまり、ファイル保存傾向予測テーブルの更新)を行う。
図3は、本発明のメモリ管理装置に適用されるファイル保存傾向予測テーブルを示す図である。このファイル保存傾向予測テーブルは、ファイル保存時刻、ファイルサイズ、及びファイル数の3要素で構成されている。ここで、メモリ管理装置が保存するテーブル数はパーティションの個数であり、この図の例では、3個のテーブル数、つまり3個のパーティション数からなっている。
図3において、保存されるデータのサイズX(bite)に従い、
1≦X≦256のときは、パーティション3用のテーブル(テーブル3)が更新され、
257≦X≦512のときは、パーティション2用のテーブル(テーブル2)が更新され、
513≦Xのときは、パーティション1用のテーブル(テーブル1)が更新される。
すなわち、マトリクス一覧で図3のようなイメージとなる。なお、図3の表において、ファイルサイズとは累積値を意味している。例えば、※6000は5つのファイル(600,1200,1300,1400,1500)の合計サイズを表わしている。この5つのファイルが3時から5時59分までの間に保存されることを意味している。
次に、ファイル保存傾向予測テーブルに従い物理パーティションのサイズを自動的に調整する機能を本発明のメモリ管理装置に持たせる場合について説明する。図4は、本発明のメモリ管理装置に適用されるパーティション事前調整機能の処理の流れを示すフローチャートである。なお、この処理はタイマーイベントによって起動される。
図4において、まず、ファイルを保存するための時刻の取得を行い(ステップS21)、続いて、パーティションNo.のカウンタをリセットする(ステップS22)。さらに、パーティション領域サイズの更新を行い(ステップS23)、その後、パーティションNo.のカウンタの更新を行う(ステップS24)。そして、パーティションNo.の最大値の判定を行い(ステップS25)、カウンタ値がパーティションNo.の最大値未満であれば、ステップS23に戻ってパーティション領域サイズの更新を行い、以下、前述の各ステップを繰り返す。一方、ステップS25で、カウンタ値がパーティションNo.の最大値以上であれば、パーティションの事前調整の処理を終了する。
次に、3つのパーティションa,b,cによって構成されるフラッシュメモリを搭載した携帯端末について、物理パーティションをフラッシュメモリに保存する流れを説明する。図5および6は、本発明のメモリ管理装置が適用される携帯端末によるアンケート収集システムの処理の流れを示すフロー図である。この図では各パーティションは用途ごとに最適なセクタサイズで構成されている。
図5において、パーティションaは、アンケート回答メールの回収用ボックスなどのように普段メール受信ボックスとして使用しているパーティションである。受信メールは1Kバイトのデータであるため、パーティションaは1Kバイトのセクタで構成されている。パーティションbは、アンケート結果レポートなどの文書を保存するためのパーティションである。文書は5Kバイトから10Kバイトのデータであるため、パーティションbは10Kバイトのセクタで構成されている。また、パーティションcは、アンケート募集メール送信用などのように普段メール送信用ボックスとして使用しているパーティションである。送信用メールは500バイトのデータであるため、パーティションcは512バイトのセクタで構成されている。
また、各パーティションに保存されているデータは時刻によって次のような保存傾向がある。すなわち、パーティションaは、例えば、送信元が主に海外であるため、送信元が昼間(つまり、受信元が夜間のpm7:00から翌朝のam6:59)に大量のメールが受信される傾向がる。また、パーティションbは、外出先などで、コア勤務時間(am11:00からpm6:59)に1つの文書(つまり、レポートなど)を何回も編集しながら完成させる傾向がある。さらに、パーティションcは、夜間に受信した大量のメールを勤務開始時に確認し、図6に示すような午前中(例えば、am7:00からam10:59)に全返信を済ませる傾向がある。
次に、図5に示す携帯端末のアンケート収集システムの処理の流れを説明する。まず、携帯端末が初期設定されているデフォルトにおいては、パーティションaは、所定時刻になると受信メール保存領域をあらかじめ自動的に確保する。さらに、文書データを保存済みのパーティションbは、デフォルトの時間帯では文書データが増加することはないため領域の縮小が可能な状態となっている(ステップS71)。
次に、am7:00以降の時間帯において、パーティションaで大量の受信メールが漏れなく保存される(ステップS72)。これによって、pm7:00から翌朝のam6:59まではパーティションaには受信メールが保存され、パーティションbには前から引き続いて文書データが保存されている(ステップS73)。そして、am7:00までにパーティションcで送信メール保存領域をあらかじめ確保する。なお、この時間帯では文書データが増加することはないために領域の縮小が可能である(ステップS74)。
そして、図6に示すように、am7:00を過ぎると、パーティションaで受信メールの集計が完了したら重要情報以外を削除する傾向にある。また、パーティションcで送信メールが漏れなく保存される。このようにして、am7:00からam10:59において、パーティションaで受信メールが保存され、パーティションbで文書データが保存され、かつパーティションcで送信メールが保存される。そして、パーティションbにおいて、文書データの保存及び編集領域をあらかじめ確保しておく。なお、この時間帯では送受信メールが大量に保存されることはないので、領域の縮小は可能である(ステップS75)。
そして、am11:00においてパーティションbで文書データの増加に対応し、パーティションaで受信メールが保存され、パーティションbで文書データが保存され、かつパーティションcで送信メールが保存された状態となる(ステップS76)。
<実施の形態2>
次に、本発明の実施の形態2で、データ書込み時間保証機能付のデータ管理システムに適用されるメモリ管理装置の実施の形態について図面を参照しながら詳細に説明する。以下、理解を容易にするために、従来技術によるフラッシュメモリへの書込みシーケンスと本発明によるフラッシュメモリへの書込みシーケンスとを対比しながら、データ書込み時間保証機能付のデータ管理システムに適用される本発明のメモリ管理装置の実施の形態を詳細に説明する。
図7は、従来技術におけるフラッシュメモリへの書込みシーケンス1のフローチャートである。また、図8は、従来技術におけるフラッシュメモリへの書込みシーケンス2のフローチャートである。すなわち、図6は、図5のステップS32における詳細なフローチャートである。まず、図7、図8を用いて、従来のフラッシュメモリへの書込みシーケンスの流れを説明する。
図7において、まず、書込みカウンタをリセットし(ステップS31)、デバイスへの書込みを行う(ステップS32)。なお、デバイスへの書込みの詳細な流れは図6を用いて後述する。次に、デバイスへの書込み結果の判定を行い(ステップS33)、書込みに成功したならば、書込みカウンタの判定を行い(ステップS34)、書込みのカウントアップが完了すれば処理を終了する。また、ステップS33のデバイスへの書込み結果の判定で書込みに失敗したならば、そのまま処理を終了する。さらに、ステップS34の書込みカウンタの判定で書込みのカウントアップ中であれば、書込みカウンタの更新を行い(ステップS35)、ステップS32のデバイスへの書込みを行い、前述の各ステップを繰り返す。
次に、図7のステップS32におけるデバイスへの書込み処理の流れについて、図8を用いて詳細に説明する。図8において、デバイスへのデータの書込みを行うと(ステップS41)、準備完了を示すACK応答の判定が行われ(ステップS42)、応答があれば処理を終了する。一方、ステップS42のACK応答の判定で応答がなければタイムアウトになったか否かの判定が行われ(ステップS43)、タイムアウト前であればステップS42に戻ってタイムアウトになるまでACK応答の判定を繰り返す。また、ステップS43でタイムアウトになればリトライ回数の判定を行う(ステップS44)。ここで、リトライ実行中であればステップS41に戻ってデバイスへのデータの書込みを行い、前述の各ステップを繰り返す。一方、ステップS44のリトライ回数の判定においてリトライ終了であれば処理を終了する。
次に、本発明におけるフラッシュメモリへの書込みシーケンスの流れを説明する。図9は、本発明におけるフラッシュメモリへの書込みシーケンス1のフローチャートである。また、図10は、本発明におけるフラッシュメモリへの書込みシーケンス2のフローチャートである。すなわち、図10は、図9のステップS54における詳細なフローチャートである。なお、図9において太枠で囲った部分が図7のフローチャートに対して追加された部分であり、図10において太枠で囲った部分が図8のフローチャートに対して追加された部分である。
図9において、まず、物理パーティション番号選択の処理を行う。この処理では、入力ファイルサイズとコンストテーブル、管理テーブル1に基づいて書込みに最適な物理パーティションを選択する(ステップS51)。次に、管理テーブル2の更新処理を行う。この処理では、入力ファイル名と管理テーブル1に記録されている書込みに最適な物理パーティション番号とに基づいて、ファイル名と物理パーティション名付きファイル名との関係を管理テーブル2に登録する(ステップS52)。
その後は、書込みカウンタをリセットし(ステップS53)、デバイスへの書込みを行う(ステップS54)。なお、デバイスへの書込みの詳細な流れは図10を用いて後述する。次に、デバイスへの書込み結果の判定を行い(ステップS55)、書込みに成功したならば、書込みカウンタの判定を行う(ステップS56)。そして、書込みのカウントアップが完了したら、管理テーブル1の更新処理を行う。この処理では、デバイスの書込みシーケンスにて読み出した書込み時間が以前の記録値より大きな値であるならば管理テーブル1に登録し(ステップS57)、処理を終了する。
また、ステップS55のデバイスへの書込み結果の判定で書込みに失敗したならばそのまま処理を終了する。さらに、ステップS56の書込みカウンタの判定で書込みのカウントアップ中であれば、書込みカウンタの更新を行い(ステップS58)、ステップS54に戻ってデバイスへの書込みを行い、前述の各ステップを繰り返す。
次に、図9のステップS54におけるデバイスへの書込み処理の流れについて、図10を用いて詳細に説明する。図10において、まず、書込み時間計測タイマを再びスタートさせる(ステップS61)。その後、デバイスへのデータの書込みを行うと(ステップS62)、準備完了を示すACK応答の判定が行われ(ステップS63)、応答があれば書込み時間計測タイマの読出しを行って(ステップS64)、処理を終了する。
一方、ステップS63のACK応答の判定で応答がなければタイムアウトになったか否かの判定が行われ(ステップS65)、タイムアウト前であればステップS63に戻ってタイムアウトになるまでACK応答の判定を繰り返す。また、ステップS65のタイムアウト判定でタイムアウトになればリトライ回数の判定を行う(ステップS66)。ここで、リトライ実行中であればステップS61に戻って書込み時間計測タイマのリスタートを行い、前述の各ステップを繰り返す。一方、ステップS66でリトライ終了であれば、書込み時間計測タイマの読出しを行って(ステップS64)、処理を終了する。
<まとめ>
以上に述べた説明を要約して、ファイル保存傾向予測テーブルを保持したデータ管理システム、及びデータ書込み時間保証機能付きのデータ管理システムに適用される本発明のメモリ管理装置の構成について説明する。図11は、ファイル保存傾向予測テーブルを保持したデータ管理システム、及びデータ書込み時間保証機能付きのデータ管理システムに適用される本発明のメモリ管理装置の構成を示すブロック図である。図11において、メモリ管理装置1は、書込み及び所定の記憶領域単位での一括電気的消去が可能であり、1つ以上の記憶領域単位を有する複数のパーティションに分割される不揮発性メモリに対するメモリ管理を行うものであって、物理パーティションなどのパーティションに対応した記憶容量や書込み時間などを関連付けた更新可能なテーブル2と、テーブル2に基づいてデータの記憶先の物理パーティションを判断する判断手段3と、データを記憶する記憶手段5と、判断手段3の判断結果に基づいてデータを記憶手段5へ記憶させる制御手段4とを備えた構成となっている。なお、テーブル2は、物理パーティションに対応して、記憶容量や記憶時間や記憶件数を記憶することができる。
また、テーブル2は、物理パーティションと書込み最大遅延時間とを関連付けた第1のテーブル2aと、ファイル名と物理パーティションとを関連付けた第2のテーブル2bと、推奨書込みデータ容量と書込み時間とを関連付けたコンストテーブルなどの第3のテーブル2cとによって構成されている。以上のようなメモリ管理装置1の構成によって、物理パーティションを単位として管理を行い、物理パーティションごとにデータ書込みが集中しないようにすることができ、結果的に、メモリの寿命を延ばすことができる。
本発明のファイル保存傾向予測テーブルを保持したデータ管理システムに適用されるメモリ管理装置によれば、メモリ容量不足に起因したメモリサイズの増大を抑止することができるので、携帯電話機などの携帯型電子端末装置に利用することができる。また、本発明のデータ書込み時間保証機能付のデータ管理システムに適用されるメモリ管理装置によれば、処理時間の精度が求められるシステムにもフラッシュメモリを搭載することが可能となり、その結果、フラッシュメモリのさらなる低コスト化を図ることができるので、汎用型の携帯電話機などの携帯型電子端末装置に利用することができる。
本発明のメモリ管理装置に適用されるファイル保存傾向予測テーブル更新部の処理の流れを示すフローチャートの前半部である。 本発明のメモリ管理装置に適用されるファイル保存傾向予測テーブル更新部の処理の流れを示すフローチャートの後半部である。 本発明のメモリ管理装置に適用されるファイル保存傾向予測テーブルを示す図である。 本発明のメモリ管理装置に適用されるパーティション事前調整機能の処理の流れを示すフローチャートである。 本発明のメモリ管理装置が適用される携帯端末によるアンケート収集システムの処理の前半の流れを示すフロー図である。 本発明のメモリ管理装置が適用される携帯端末によるアンケート収集システムの処理の後半の流れを示すフロー図である。 従来技術におけるフラッシュメモリへの書込みシーケンス1のフローチャートである。 従来技術におけるフラッシュメモリへの書込みシーケンス2のフローチャートである。 本発明におけるフラッシュメモリへの書込みシーケンス1のフローチャートである。 本発明におけるフラッシュメモリへの書込みシーケンス2のフローチャートである。 ファイル保存傾向予測テーブルを保持したデータ管理システム、及びデータ書込み時間保証機能付きのデータ管理システムに適用される本発明のメモリ管理装置の構成を示すブロック図である。
符号の説明
1 メモリ管理装置 2 テーブル
2a 第1のテーブル 2b 第2のテーブル
2c 第3のテーブル 3 判断手段
4 制御手段 5 記憶手段

Claims (10)

  1. 書込み及び所定の記憶領域単位での一括電気的消去が可能であり、1つ以上の前記記憶域単位を有する複数のパーティションに分割される不揮発性メモリに対するメモリ管理を行うメモリ管理装置であって、
    前記パーティションに対応した記憶容量、書込み時間の少なくとも一方を関連付けたテーブルと、
    前記テーブルに基づいてデータの記憶先のパーティションを判断する判断手段と、
    前記データを記憶する記憶手段と、
    前記判断手段の判断結果に基づいて前記データを前記記憶手段へ記憶させる制御手段と、
    を備えることを特徴とするメモリ管理装置。
  2. 前記テーブルは、
    前記パーティションに対応して、記憶容量、記憶時間、記憶件数を記憶することを特徴とする請求項1に記載のメモリ管理装置。
  3. 前記テーブルは、
    前記パーティションと書込み最大遅延時間とを関連付けた第1のテーブルと、
    ファイル名と前記パーティションとを関連付けた第2のテーブルと、
    推奨書込みデータ容量と書込み時間とを関連付けた第3のテーブルと、
    によって構成されていることを特徴とする請求項1または請求項2に記載のメモリ管理装置。
  4. 前記パーティションは物理パーティションであることを特徴とする請求項1乃至請求項3のいずれかに記載のメモリ管理装置。
  5. 前記テーブルは更新可能であることを特徴とする請求項1乃至請求項4のいずれかに記載のメモリ管理装置。
  6. 前記書込み最大遅延時間との関連付けを前記パーティションの番号によって行うことを特徴とする請求項3乃至請求項5のいずれかに記載のメモリ管理装置。
  7. 書込み及び所定の記憶領域単位での一括電気的消去が可能であり、1つ以上の前記記憶領域単位を有する複数のパーティションに分割される不揮発性メモリに対するメモリ管理を行うメモリ管理方法であって、
    ファイルの保存時刻とファイルサイズとファイル数との関係を記録したファイル保存傾向予測テーブルをデータ管理情報の一つとして持たせる手順と、
    前記ファイル保存傾向予測テーブルに従い、前記ファイルをどの物理パーティションに保存すればメモリを一番有効に効率よく使用できるかを判定する手順と、
    前記ファイル保存傾向予測テーブルに従い、前記物理パーティションのサイズを自動的に調整する手順と、
    を含むことを特徴とするメモリ管理方法。
  8. 書込み及び所定の記憶領域単位での一括電気的消去が可能であり、1つ以上の前記記憶領域単位を有する複数のパーティションに分割される不揮発性メモリに対するメモリ管理を行うメモリ管理方法であって、
    物理パーティション番号と書込み最大遅延時間との関係を記録した更新可能な第1の管理テーブルを持たせる手順と、
    ファイル名と物理パーティション番号付ファイル名との関係を記録した更新可能な第2の管理テーブルを持たせる手順と、
    推奨書込みデータサイズと書込み時間との関係を記録した更新可能なコンストテーブルを持たせる手順と、
    前記第1の管理テーブル、前記第2の管理テーブル、及び前記コンストテーブルに従い、どの物理パーティションにデータを保存すればデータ書込み時間を最大限保証することができるかの判定を行う手順と、
    データ書込み時において、前記第1の管理テーブル及び前記第2の管理テーブルのテーブルデータを更新する手順と、
    を含むことを特徴とするメモリ管理方法。
  9. 前記コンストテーブルには、データサイズよって異なる最大許容書込み時間を記憶させることを特徴とする請求項8に記載のメモリ管理方法。
  10. 前記コンストテーブルは、前記データサイズが大きい場合は許容時間を短くし、前記データサイズが小さい場合は前記許容時間を長くした最大許容書込み時間を記憶することを特徴とする請求項9に記載のメモリ管理方法。

JP2004339387A 2004-11-24 2004-11-24 メモリ管理装置、及びメモリ管理方法 Withdrawn JP2006146808A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004339387A JP2006146808A (ja) 2004-11-24 2004-11-24 メモリ管理装置、及びメモリ管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004339387A JP2006146808A (ja) 2004-11-24 2004-11-24 メモリ管理装置、及びメモリ管理方法

Publications (1)

Publication Number Publication Date
JP2006146808A true JP2006146808A (ja) 2006-06-08

Family

ID=36626388

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004339387A Withdrawn JP2006146808A (ja) 2004-11-24 2004-11-24 メモリ管理装置、及びメモリ管理方法

Country Status (1)

Country Link
JP (1) JP2006146808A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009093242A (ja) * 2007-10-04 2009-04-30 Nec Infrontia Corp 情報処理装置、フラッシュメモリ管理方法、フラッシュメモリ管理プログラムおよびプログラム記録媒体
JP2009176155A (ja) * 2008-01-25 2009-08-06 Kyocera Corp 携帯通信端末
JP2014155979A (ja) * 2013-02-15 2014-08-28 Makita Corp 電動工具用装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009093242A (ja) * 2007-10-04 2009-04-30 Nec Infrontia Corp 情報処理装置、フラッシュメモリ管理方法、フラッシュメモリ管理プログラムおよびプログラム記録媒体
JP4710056B2 (ja) * 2007-10-04 2011-06-29 Necインフロンティア株式会社 情報処理装置、フラッシュメモリ管理方法およびフラッシュメモリ管理プログラム
JP2009176155A (ja) * 2008-01-25 2009-08-06 Kyocera Corp 携帯通信端末
JP2014155979A (ja) * 2013-02-15 2014-08-28 Makita Corp 電動工具用装置

Similar Documents

Publication Publication Date Title
US7882300B2 (en) Apparatus and method for managing nonvolatile memory
US8843691B2 (en) Prioritized erasure of data blocks in a flash storage device
US20030229753A1 (en) Flash memory file system
US20110264842A1 (en) Memory controller, nonvolatile memory device, access device, and nonvolatile memory system
US20010054129A1 (en) Method, system and computer program
MX2007001185A (es) Sistemas, metodos, medio legible por computadora y aparato para el manejo de memoria utilizando una memoria de acceso aleatorio no volatil.
JP2011503768A (ja) 書込み頻度に基づく相異なる記憶装置へのデータの書込み
JPWO2006067923A1 (ja) メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム及びメモリ制御方法
CN112068772B (zh) 数据存储方法、数据存储装置及存储装置
JP5180957B2 (ja) メモリコントローラ、半導体記録装置及び書き換え回数通知方法
JPWO2011118114A1 (ja) 不揮発性記憶装置及びメモリコントローラ
JPWO2007105688A1 (ja) メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム
JP2008123314A (ja) 半導体記憶装置への情報記録方法及び情報記録システム
US20100199060A1 (en) Memory controller, nonvolatile memory module, access module, and nonvolatile memory system
JP2011059907A (ja) 端末装置及びそれに用いる不揮発メモリ管理方法並びにそのプログラム
JP2006146808A (ja) メモリ管理装置、及びメモリ管理方法
CN106021124B (zh) 一种数据的存储方法及存储系统
JPH0869697A (ja) 半導体ファイル記憶装置
KR100319254B1 (ko) 플레쉬 메모리를 이용한 비휘발성 데이터 영역 복구 방법
JP2010256944A (ja) Nand型フラッシュメモリ保守装置及びnand型フラッシュメモリ保守プログラム及びnand型フラッシュメモリ保守方法
CN113010105A (zh) 一种数据备份的方法、装置、设备和计算机可读存储介质
JP4239754B2 (ja) 不揮発メモリシステム
KR100908637B1 (ko) 플래시 메모리의 데이터 관리방법
KR100521155B1 (ko) 플래시 메모리의 정보기록장치 및 그 방법
JP2006059287A (ja) メモリ管理方法および装置

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20080205