JP2004062554A - フラッシュメモリの管理方法 - Google Patents
フラッシュメモリの管理方法 Download PDFInfo
- Publication number
- JP2004062554A JP2004062554A JP2002220556A JP2002220556A JP2004062554A JP 2004062554 A JP2004062554 A JP 2004062554A JP 2002220556 A JP2002220556 A JP 2002220556A JP 2002220556 A JP2002220556 A JP 2002220556A JP 2004062554 A JP2004062554 A JP 2004062554A
- Authority
- JP
- Japan
- Prior art keywords
- page
- data
- sector
- area
- valid
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System (AREA)
Abstract
【解決手段】データ記憶領域がセクタ単位に分割され、前記セクタ単位でデータ消去可能なフラッシュメモリの管理方法において、セクタが、セクタ管理領域と複数のページにより構成され、ページの管理領域104に当該ページの有効/無効フラグ情報105と当該ページのデータ記憶領域内のデータ記憶位置を示す使用/未使用マップ106とを含むように、1ページを構成した。
【選択図】 図1
Description
【発明の属する技術分野】
この発明は、フラッシュメモリの管理方法、特に、携帯電話などで用いる小規模データの書き換えに有用なフラッシュメモリの管理方法に関する。
【0002】
【従来の技術】
従来、フラッシュメモリでは、1回のフラッシュで消去する最小単位をセクタと称し、このセクタ単位で管理していた。しかしながら、取り扱うデータのサイズがIPアドレスやMAC(Machine Address Code)アドレスのように数バイト程度の小規模データである場合、このような小規模データで頻繁にアクセスするようなアプリケーションにおいては、メモリ管理効率の観点から1セクタのサイズが問題となっていた。
【0003】
図7(a)は、従来のセクタを単位とするフラッシュメモリの構成例を示す図であり、ファイルをセクタ701に分割し、各セクタの先頭にセクタ管理領域702を設け、この管理領域にセクタの消去回数、セクタのリンク先情報を書き込む構成となっている。このような管理方法として、例えば、特開2002−7221号広報には、セクタを更に細かなブロックに分割して各ブロックの先頭に当該ブロックが書き込み済みであるか否かを示す書き込み判別領域を設けることが記載されており、特開2001−312891号広報には、メモリをブロックに分割して各メモリブロックに管理ステータス書き込みエリアを設けることが記載され、また、特開平08−273390には、ブロックの先頭にブロック消去回数データ格納エリアを設けることが記載されている。
【0004】
図7(b)は、特開平2000−76117号広報に記載されているメモリの管理方法であり、各セクタを複数の小ブロック703で構成し、各小ブロックは256バイトで構成され、6バイトの管理領域704と250バイトのデータ記憶領域とから構成されている。この場合の管理領域704は、ファイル番号706、次の記憶部セクタ番号707、他の小ブロックへのリンクを示す小ブロックアドレス708、小ブロックのデータの有効/無効を示すデータ有効/無効コード709から構成されている。
【0005】
【発明が解決しようとする課題】
しかしながら、上述の従来の方法では、例えば、インターネットのIPアドレスのような小規模データ等を携帯電話内部のフラッシュメモリに格納するようなアプリケーションなどのように小規模データを頻繁に書き換える場合にメモリの使用効率が十分なものとはいえなかった。
【0006】
この発明は、前記従来の方法の問題点を解決して、小規模データを頻繁に書き換える場合のフラッシュメモリを効率よく管理できる方法を提供することを目的とする。
【0007】
【課題を解決するための手段】
上記課題を解決するために、請求項1記載のフラッシュメモリの管理方法においては、データ記憶領域をセクタ単位に分割し、セクタ単位でデータ消去可能なフラッシュメモリの管理方法において、セクタを、セクタ管理領域と複数のページにより構成し、ページの管理領域に当該ページの有効/無効フラグ情報と当該ページのデータ記憶領域内のデータ記憶位置を示す使用/未使用マップとを含むように構成している。このような構成としたことにより、参照するページの有効/無効が容易に判断でき、大量かつ小規模のページを頻繁に更新、追加する際に好適な構成となっている。
【0008】
また、請求項3記載のフラッシュメモリの管理方法においては、請求項1記載のページの管理領域に、更に、当該ページが前ページに従属するか否かを示すページ拡張フラグを追加している。これにより、前ページと同一属性を有する小規模データの追加を容易に行うことが出来る。
【0009】
更に、請求項5記載のフラッシュメモリの管理方法によれば、データ記憶領域をセクタ単位に分割し、セクタ単位でデータ消去可能なフラッシュメモリの管理方法において、セクタが、セクタ管理領域と複数のページにより構成され、ページの管理領域に当該ページの有効/無効フラグ情報と、当該ページが前ページに従属するか否かを示すページ拡張フラグと、データ領域の記録サイズ情報とを含み、前記データ領域の記録サイズを可変長とするようにしている。これにより、メモリ領域が少ない場合でもデータ領域を無駄なく使うことが出来る。
【0010】
以下、本発明の実施の形態について図面を用いて説明する。尚、図中、各構成成分の大きさ、形状及び配置関係などは、本発明が理解できる程度に概略的に示してあるにすぎず、また、以下に説明する数値的条件は、単なる例示にすぎない。
【0011】
[第1の実施の形態]
図1(a)は、本発明の第1の実施の形態におけるフラッシュメモリのセクタ構造を示しており、フラッシュメモリの消去単位である1セクタ101の内部は、セクタ管理領域102,と多数のページ103に分割された構造をしている。セクタ管理領域104には、セクタが使用済みであるか否かを示す有効/無効フラグの他、セクタの消去回数等の情報が含まれている。
【0012】
1ページは、ページ管理領域104とデータ領域107とに分割され、ページ管理領域104は、更に、有効/無効フラグ105と使用/未使用マップ106により構成される。この実施の形態においては、1セクタ(32Kbyte)を1024分割し、その一つの分割にセクタ管理領域を割り当て、残りの1023ページをデータ領域としている。また、各ページ103は、32バイトで構成され、ページ管理領域104が2バイト構成で、その内、有効/無効フラグに1ビットを使用し、残りの15ビットを使用/未使用マップに使用している。従って、各ページのデータ容量は30バイトである。
【0013】
有効/無効フラグ105の意味は次のとおりである。即ち、そのビット値が“1”であれば、初期化されたままの状態であることを示しており、“0”であれば、そのデータは無効であって廃棄したことを示している。
使用/未使用マップ106は、初期状態では全てのビットが“1”であり、各ビットは、そのビットが“1”であれば、データ領域の対応するワードが未使用であることを示し、“0”であれば、データ領域の対応数するワードが使用中であることをそれぞれ示している。従って、初期状態、即ち、当該セクタが消去された直後の状態では、セクタを構成する全てのページは有効かつ未使用である。
【0014】
図1(C)は、ページデータの例を示しており、有効/無効フラグが“1”であることは、このページが有効であり、有効なデータを含むことを示す。後続の使用/未使用マップは、この図の例では、先頭の6ビットが“0”で後ろの9ビットが“1”であるので、データ領域の先頭の6ワード(12バイト)が使用中であり、後ろの9ワード(18バイト)は未使用領域であることを示している。未使用領域のデータは全てのビットが“1”である。
【0015】
フラッシュメモリに書き込みを行う場合には、そのアドレスを指定することにより1バイトもしくは1ワード単位で書き込むことが出来る。この実施の形態に示したデータの構成例においては、管理データと本来のデータの双方にアクセスする時、1ワード毎にアクセスする方法が好適である。また、1ページが32バイト(16ワード)で構成されていることにより、セクタをページに分割する際に有利である。
【0016】
新たなデータを追加する必要が生じた場合、この実施の形態においては、ページの使い方に二通りの方法が考えられる。第一は、通常の書き込みであり、有効、かつ、未使用のページを当該セクタの先頭から検索し、使用/未使用マップの未使用箇所にデータを書き込む方法である。すでにそのページがフルで、データの追加が出来ない場合は、新たなページの先頭からデータを書き込むことになるが、その際使用した領域について、使用/未使用マップの該当するビットを“1”にセットして使用中であることを記録しておく。第二は、同一情報に関するデータがすでに書き込んであり、そのデータを更新する必要が有る場合、当該ページのデータを別の場所に読み出しておき、有効/無効フラグを“0”とすることにより、このページを無効とし、別の場所に読み出しておいたデータで更新した後、未使用のページに書き込むことによりデータを更新する方法である。但し、更新はデータに対するもので、同一場所における重ね書きを行うものではない。
【0017】
これらの動作の間、当該セクタは消去されていないので、データの更新を速やかに行うことができる。また、従来の小ブロックデータ構造と比較すると、データの廃棄(無効化)がページ単位で行われ、かつ、ページ内のデータがワード単位で管理されているので、メモリ領域を無駄なく使用することができる。
【0018】
図2〜4は、第1の実施の形態におけるメモリ管理プログラムの動作フローを示したものであり、図2は、管理プログラムが、ファイルを構成しているセクタをどのように管理しているかを示すセクタ管理フローである。
【0019】
変数K=0からスタートし(S201)、そのファイルのK番目のセクタが有効/無効を前述のフラグにより判定する(S202)。このとき、そのセクタが有効で無ければ、ステップS208で変数Kを歩進させ、次のセクタを調べるためにステップS202に戻り、ステップS203で、そのセクタが有効であれば、このセクタの全てのページが無効であるか否かを判定する(S204)。全てのページが無効であれば、ステップS205で消去回数が限度内であるか否かを判定し、限度内であれば、再使用のために当該セクタを消去し、かつ、セクタ管理領域104内のセクタ消去回数に1を加算し(S206)、限度を超えていれば、当該セクタを無効化して(S207)、次のセクタを検索するためにステップS208に戻る。
【0020】
ステップS204で、現在のセクタに有効なページが有れば、現在の処理内容が読み出しで有るか否かを調べ(S209)、読み出しであれば、読み出し処理を行い(S210)、そうでなければ、書き込み処理であるか否かを調べ(S211)、書き込みであれば、書き込み処理を行い(S212)、読み出しでも書き込みでもなければ、処理を終了する(S213)。
【0021】
図3は、管理プログラムが有効なページにデータを書き込む際の書き込みフローである。変数P=0としてスタートし(S221)、P番目のページの有効/無効フラグによる判定をおこなう(S222、S223)。そのページが無効であればステップS224でPの値を歩進させて、次のページを調べるためにステップS222に戻り、そのページが有効であれば、現在の書き込み処理がデータの更新か否かを調べ(S225)、データの更新であれば、更新データの有無を調べ(S226)、そのページに更新すべきデータが存在すれば、更新データを一時記憶しておき、当該ページを無効化した後(S227)、データの書き込みを行う(S228)。ここで、更新とは、未使用のページに書き込むことによりデータを更新することであり、同一場所における重ね書きを行うものではない。
【0022】
ステップS226で、そのページに更新すべき該当データが存在しなければ、次のページを検索するために、ステップS224に戻る。
【0023】
ステップS225で、現在の書き込み処理がデータの更新処理でなければ、そのページがデータフルであるか否かを調べる(S229)。データフルでなければ書き込み処理を行い(S228)、データフルであれば、次のページを検索するためにステップS224に戻る。書き込み処理(S228)が終了すれば、処理を終了する(S230)。
【0024】
図4は、管理プログラムが有効ななページからデータを読み込む際の読み込みフローである。
【0025】
変数P=0でスタートし(S241)、そのセクタのP番目のセクタの有効/無効フラグにより当該ページの有効/無効判定を行い(S242,S243)、無効と判定されると、次のページを検索するためにステップS244でPの値を歩進させてステップS242に戻る。ステップS243で、ページが有効であると判定されると、該当するデータが有るか否かを調べ(S245)、有れば、読み込み処理を行い(S246)、処理を終了する(S247)。ステップS245で該当するデータが無ければステップS244に戻る。
【0026】
図3,4のフローの中の、ステップS226,S245において、該当するデータの有無を検出しているが、この処理のためには予めデータと保存先のアドレスとを対応させておくことが必要になるが、この実施の形態においては、そのために使用/未使用マップ106を用いている。使用/未使用マップ106を用いない場合には、更新すべきデータか否かの判定を行う為に、別個にデータ管理領域を設けるか、データ自信が自己を特定する為の情報を有していなければならない。また、そのページが有効か無効かの判定はページの先頭の1ワードを読み取り、その1ワードの最上位ビットを調べることにより行うことができる。従って、無効ページを迅速に判断できる。また、有効なページに書き込み可能な領域が有るか否かの判断も、この先頭の1ワードを調べることにより判断できる。
【0027】
[第2の実施の形態]
図5は、本発明の第2の実施の形態を示す図であり、第1の実施の形態におけるデータ構造を拡張する構造となっている。
【0028】
図5(a)は、第2の実施の形態におけるフラッシュメモリのセクタ内に形成されたページの構造を示している。この場合、管理領域401に4バイト、データ領域402に60バイトを割り当て、1ページ400全体を64バイトで構成している。
【0029】
管理領域401は、有効/無効フラグ403、ページ拡張フラグ404及び使用/未使用マップ405から構成される。有効/無効フラグ403及び使用/未使用マップ405は、第1の実施の形態における有効/無効フラグ105及び使用/未使用マップ106にそれぞれ対応している。
【0030】
ページ拡張フラグ404は、その値が“0”であるとき当該ページが1ページ前のページに従属することを意味し、その値が“1”の場合には、当該ページがどのページにも従属せず独立したページであることを意味している。有効/無効フラグ403は、ページ拡張フラグ404よりも優先する。ただし、ページが無効になっても、ページ拡張フラグは有効であるため、無効となったページに従属するページが存在する可能性はある。
【0031】
この実施の形態における使用/未使用マップは30ビットで構成しており、これはデータ領域402を30ワードまで管理できることを意味している。
【0032】
図5(b)は、ページ拡張データ例を示したものであり、最初のページのページ拡張フラグが“1”であり、後続の2ページのページ拡張フラグが“0”であるため、後続の2ページは先頭の1ページに従属しており、合計3ページで一体のデータを形成していることを示している。最初の2ページは、使用/未使用マップの値が全て“0”であるので、データ領域の全てのワードを使用しているが、最後のページの使用/未使用マップは、先頭の3ビットのみが“0”であるので、データ領域の先頭の3ワード(6バイト)のみが使用されていることを示している。
【0033】
尚、この実施の形態におけるデータ構造においては、現在のページが最後のページであるか否かを判定するために、次のページのページ拡張フラグを参照する必要がある。
【0034】
[第3の実施の形態]
図6は、本発明の第3の実施の形態を示す図である。この実施の形態においては、第1、2の実施の形態と異なり、可変長データを扱える構造となっている。
【0035】
図6(a)は、可変長ページの構造を示している。この実施の形態では、可変長ページ500の管理領域501に1バイトを割り当て、データ領域502は可変長である。管理領域501は、有効/無効フラグ503、ページ拡張フラグ504,及びレコード長505とから構成される。このうち、有効/無効フラグ503とページ拡張フラグを504は、第2の実施の形態における有効/無効フラグ403とページ拡張フラグ404にそれぞれ対応する。新たにレコード長505を導入したので、第1及び第2の実施の形態における使用/未使用マップは必要としない。レコード長505は、6ビットで構成しているので、データ長は、最大64ワードまで指定できるが、本実施の形態においては、バイト単位で細かく設定できるようにするため、また、ページ全体の長さを考えて最大63バイトまでに設定している。これにより、1ページの最大長が64バイトとなる。
【0036】
データ長を可変長とすると、使用/未使用マップを利用しなくても使用領域が明らかであるのでメモリを無駄なく使用できるメリットがある。また、この構成によれば小規模データを頻繁に書き換える場合に便利な構成となっている。
【0037】
図6(b)は、第3の実施の形態における可変長ページデータの例である。管理領域1バイトの先頭ビットが“1”であることは、このページが有効であることを示し、ページ拡張フラグが“1”であることは、このページが独立ページであって拡張されたぺーじでは無いことを示している。レコード長は、“100000”であるので、32バイトであることを示している。
【0038】
次のページも先頭ビットが“1”であるので、このページが有効であることを示しているが、ページ拡張フラグが“0”であるので、このページが直前のページに従属する拡張ページであることを示している。また、ページのレコード長は“010000”であるので、16バイトであることを示している。属性が同一である小規模データをこのような拡張ページにより次々に元のページに追加できるので、利便性がよい。
【0039】
尚、本発明は、前述の実施の形態に限定されるものではなく、本発明の趣旨に基づいて種々変形させることが可能である。例えば、第1の実施の形態においては、ページ管理領域を、1ビットの有効/無効フラグと、15ビットの使用/未使用マップと、30バイトのデータ領域から構成し、1ページが32バイトとなる構成としているが、これを一般化して、有効/無効フラグは1ビットにより構成し、使用/未使用マップはmビットにより構成し、(m+1)ビットが8の整数倍となるように、mの値を選択し、データ領域は2mバイトにより構成し、更に、2m+(1+m)/8=2nバイトとなるようなmを選択することにより前記1ページを構成するようにしても良い。
【0040】
また、第2の実施の形態においては、ページ管理領域を1ビットの有効/無効フラグと、1ビットのページ拡張フラグと、30ビットの使用/未使用マップと、60バイトのデータ領域から構成し、1ページが64バイトとなる構成としているが、これを一般化して、有効/無効フラグ及びページ拡張フラグを1ビットにより構成し、使用/未使用マップはmビットにより構成し、(m+2)ビットが8の整数倍となるように、mの値を選択し、データ領域は2mバイトにより構成し、更に、2m+(2+m)/8=2nバイトとなるようなmを選択することにより前記1ページを構成するようにしても良い。
【0041】
更に、第3の実施の形態においては、ページ管理領域を1ビットの有効/無効フラグと、1ビットのページ拡張フラグと、6ビットのレコード長と、最大63バイトのデータ領域から構成し、1ページが64バイトとなる構成としているが、これを一般化して、有効/無効フラグ及びページ拡張フラグを1ビットにより構成し、レコード長をmビットにより構成し、(m+2)ビットが8の整数倍となるように、mの値を選択し、データ領域は2mバイトにより構成し、更に、2m+(2+m)/8=2nバイトとなるようなmを選択することにより前記1ページを構成するようにしても良い。
【0042】
【発明の効果】
以上詳細に説明したように、請求項1に係る発明によれば、フラッシュメモリの消去単位であるセクタをページに分割し、そのページの管理領域の先頭に有効/無効フラグを設けたことにより、ページの最初の1バイトもしくは1ワードを読み出すだけで、そのページの有効性を判断できる。従って、小規模かつ大量のページを頻繁に更新したり、追加するようなアプリケーションに適用する際に好都合な構成である。また、データ領域のどの部分が使用されているかを示す使用/未使用マップを導入したことにより、データ記憶領域を無駄なく使用することができる。
【0043】
また、請求項3に係る発明によれば、そのページの管理領域に、有効/無効フラグに加えてページ拡張フラグを備えているので、元のページに格納されたデータと同一属性の小規模データの追加などに便利である。
【0044】
更に、請求項5に係る発明によれば、そのページの管理領域に、有効/無効フラグに加えてレコード長を備えているので、データ長を可変長とすることができ、メモリ領域が少ない場合にもデータ記憶領域を無駄なく使用することが出来る。この場合も、小規模かつ大量のページを頻繁に更新したり、データを追加するのに好適な構成となっている。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態におけるデータ構成を示した図である。
【図2】第1の実施の形態における管理プログラムの動作フロー(セクタ管理フロー)図である。
【図3】第1の実施の形態における管理プログラムの動作フロー(データ書き込みフロー)図である。
【図4】第1の実施の形態における管理プログラムの動作フロー(データ読み込みフロー)図である。
【図5】本発明の第2の実施の形態におけるデータ構造を示した図である。
【図6】本発明の第3の実施の形態におけるデータ構造を示した図である。
【図7】従来技術の説明図である。
【符号の説明】
101 セクタ
102 セクタ管理領域
103、400、500 ページ
104、401、501 ページ管理領域
105、403、503 有効/無効フラグ
106、405 使用/未使用マップ
107、402、502 データ領域
404、504 ページ拡張フラグ
505 レコード長
Claims (6)
- データ記憶領域がセクタ単位に分割され、前記セクタ単位でデータ消去可能なフラッシュメモリの管理方法であって、
前記セクタが、セクタ管理領域と複数のページにより構成され、
前記ページの管理領域に当該ページの有効/無効フラグ情報と当該ページのデータ記憶領域内のデータ記憶位置を示す使用/未使用マップとを含むことを特徴とするフラッシュメモリの管理方法。 - 前記有効/無効フラグは1ビットにより構成され、前記使用/未使用マップはmビットにより構成され、(m+1)ビットが8の整数倍となるように、前記mの値を選択し、前記データ領域は2mバイトにより構成され、更に、2m+(1+m)/8=2nバイトとなるようなmを選択することにより前記1ページを構成することを特徴とする請求項1記載のフラッシュメモリの管理方法。
- 前記ページの管理領域に、更に、当該ページが前ページに従属するか否かを示すページ拡張フラグを追加したことを特徴とする請求項1記載のフラッシュメモリの管理方法。
- 前記有効/無効フラグは1ビットにより構成され、前記使用/未使用マップはmビットにより構成され、前記ページ拡張フラグは1ビットにより構成され、(m+2)ビットが8の整数倍となるように、前記mの値を選択し、前記データ領域は2mバイトにより構成され、更に、2m+(2+m)/8=2nバイトとなるようなmを選択することにより前記1ページを構成することを特徴とする請求項3記載のフラッシュメモリの管理方法。
- データ記憶領域がセクタ単位に分割され、前記セクタ単位でデータ消去可能なフラッシュメモリの管理方法であって、
前記セクタが、セクタ管理領域と複数のページにより構成され、
前記ページの管理領域に当該ページの有効/無効フラグ情報と、当該ページが前ページに従属するか否かを示すページ拡張フラグと、データ領域の記録サイズ情報とを含み、前記データ領域の記録サイズを可変長としたことを特徴とするフラッシュメモリの管理方法。 - 前記有効/無効フラグは1ビットにより構成され、前記ページ拡張フラグは1ビットにより構成され、前記記録サイズ情報は最大mビットにより構成され、(m+2)ビットが8の整数倍となるように、前記mの値を選択し、前記データ領域は2mバイトにより構成され、更に、2m+(2+m)/8=2nバイトとなるようなmを選択することにより前記1ページを構成することを特徴とする請求項5記載のフラッシュメモリの管理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002220556A JP2004062554A (ja) | 2002-07-30 | 2002-07-30 | フラッシュメモリの管理方法 |
US10/368,462 US7032094B2 (en) | 2002-07-30 | 2003-02-20 | Method of controlling flash memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002220556A JP2004062554A (ja) | 2002-07-30 | 2002-07-30 | フラッシュメモリの管理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004062554A true JP2004062554A (ja) | 2004-02-26 |
Family
ID=31184805
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002220556A Pending JP2004062554A (ja) | 2002-07-30 | 2002-07-30 | フラッシュメモリの管理方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7032094B2 (ja) |
JP (1) | JP2004062554A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7844772B2 (en) | 2006-10-02 | 2010-11-30 | Samsung Electronics Co., Ltd. | Device driver including a flash memory file system and method thereof and a flash memory device and method thereof |
KR101392174B1 (ko) | 2011-11-09 | 2014-05-09 | 한양대학교 산학협력단 | 소거 대상 블록의 매핑 테이블을 저장하는 플래시 메모리 제어장치 및 방법 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004062554A (ja) * | 2002-07-30 | 2004-02-26 | Oki Electric Ind Co Ltd | フラッシュメモリの管理方法 |
CN101657856B (zh) * | 2007-02-27 | 2013-01-30 | 三菱电机株式会社 | 信息发布方法、信息记录方法、信息再现方法 |
TWI425513B (zh) * | 2009-08-13 | 2014-02-01 | Silicon Motion Inc | 識別快閃記憶體中區塊之資料頁的方法以及相關之記憶裝置 |
US9823863B1 (en) * | 2014-06-30 | 2017-11-21 | Sk Hynix Memory Solutions Inc. | Sub-blocks and meta pages for mapping table rebuild |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08273390A (ja) | 1995-03-28 | 1996-10-18 | Kokusai Electric Co Ltd | フラッシュメモリの消去回数の管理方法 |
JP3197815B2 (ja) * | 1996-04-15 | 2001-08-13 | インターナショナル・ビジネス・マシーンズ・コーポレ−ション | 半導体メモリ装置及びその制御方法 |
JP4085478B2 (ja) * | 1998-07-28 | 2008-05-14 | ソニー株式会社 | 記憶媒体及び電子機器システム |
JP2000076117A (ja) | 1998-08-31 | 2000-03-14 | Kano Densan Hongkong Yugenkoshi | 電子機器及びその制御方法及び記憶媒体 |
JP2001312891A (ja) | 2000-04-27 | 2001-11-09 | Hitachi Ltd | 半導体メモリ装置 |
JP2002007221A (ja) | 2000-06-26 | 2002-01-11 | Matsushita Electric Ind Co Ltd | フラッシュメモリの書込み保証回数の増加方法 |
US7020739B2 (en) * | 2000-12-06 | 2006-03-28 | Tdk Corporation | Memory controller, flash memory system having memory controller and method for controlling flash memory device |
US6763424B2 (en) * | 2001-01-19 | 2004-07-13 | Sandisk Corporation | Partial block data programming and reading operations in a non-volatile memory |
US6711663B2 (en) * | 2001-11-15 | 2004-03-23 | Key Technology Corporation | Algorithm of flash memory capable of quickly building table and preventing improper operation and control system thereof |
JP2004062554A (ja) * | 2002-07-30 | 2004-02-26 | Oki Electric Ind Co Ltd | フラッシュメモリの管理方法 |
-
2002
- 2002-07-30 JP JP2002220556A patent/JP2004062554A/ja active Pending
-
2003
- 2003-02-20 US US10/368,462 patent/US7032094B2/en not_active Expired - Lifetime
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7844772B2 (en) | 2006-10-02 | 2010-11-30 | Samsung Electronics Co., Ltd. | Device driver including a flash memory file system and method thereof and a flash memory device and method thereof |
US8510500B2 (en) | 2006-10-02 | 2013-08-13 | Samsung Electronics Co., Ltd. | Device driver including a flash memory file system and method thereof and a flash memory device and method thereof |
KR101392174B1 (ko) | 2011-11-09 | 2014-05-09 | 한양대학교 산학협력단 | 소거 대상 블록의 매핑 테이블을 저장하는 플래시 메모리 제어장치 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
US20040024956A1 (en) | 2004-02-05 |
US7032094B2 (en) | 2006-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100453053B1 (ko) | 플래쉬 메모리용 파일 시스템 | |
US8312204B2 (en) | System and method for wear leveling in a data storage device | |
JP5336060B2 (ja) | 不揮発性メモリ装置およびそれを動作させる方法 | |
US7991942B2 (en) | Memory block compaction method, circuit, and system in storage devices based on flash memories | |
RU2243588C2 (ru) | Энергонезависимое устройство памяти, устройство записи и способ записи | |
US20040210706A1 (en) | Method for managing flash memory | |
JP2006235960A (ja) | ガーベッジコレクション高速化方法 | |
US20100131700A1 (en) | Memory indexing system and process | |
KR20010042905A (ko) | 비휘발성 메모리에서의 가변 크기 데이터의 효율적인관리를 위한 동적 할당 | |
JP2007241576A (ja) | 不揮発性記憶装置およびそのデータ書込み方法 | |
JP2005242897A (ja) | フラッシュディスク装置 | |
US20070005929A1 (en) | Method, system, and article of manufacture for sector mapping in a flash device | |
JP2004062554A (ja) | フラッシュメモリの管理方法 | |
JP2007148965A (ja) | フラッシュディスク装置のエラーブロック管理方法及び装置 | |
KR101020781B1 (ko) | 플래시 메모리를 기반으로 한 데이터베이스 시스템에 대한 로그 관리 방법 | |
JP4468342B2 (ja) | データ管理方法 | |
JP2004206615A (ja) | 記憶装置 | |
JP2001318824A (ja) | フラッシュメモリのデータ管理方式およびそのプログラムを記録した記録媒体 | |
KR100688463B1 (ko) | 물리 메모리의 데이터 기록 및 삭제 방법 | |
JP2003203007A (ja) | 携帯電話機のメモリの不揮発エリア管理方法 | |
JPH10289144A (ja) | メモリの制御方法 | |
JP2005339450A (ja) | フラッシュメモリのデータ管理方式 | |
JP4474928B2 (ja) | ファイル記録方法 | |
CN108073362B (zh) | 一种延长PairBlock使用寿命的方法及装置 | |
JP2004252746A (ja) | 記録媒体の記録制御方法、記録制御装置および電子機器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050714 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060923 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20060929 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20061013 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080916 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090127 |