(57)【特許請求の範囲】
【請求項１】
不揮発性メモリと、コントローラとを有し、外部から与えられる論理アドレスに基づいて前記不揮発性メモリに、データの書込み、消去および読み出しを行う不揮発性記憶装置であって、
前記不揮発性メモリは、複数の独立して消去可能な物理ブロックから成り、前記物理ブロックは独立して書込み可能な複数の物理ページから成り、前記物理ページは所定数単位で部分物理ブロックから成り、
前記コントローラは、外部から与えられる論理アドレスに対するデータの消去を行う際に、消去を行うデータを消去対象データとし、前記消去対象データが書込まれている前記不揮発性メモリの前記物理ブロックを決定し旧データブロックとし、前記旧データブロックのデータの中から前記消去対象データを除いた残りのデータのみを新たな消去済み物理ブロックの部分物理ブロックに先頭から順に書き写し、前記新たな消去済み物理ブロックに前記消去対象データと同じ容量の未書込み領域を残すことを特徴とする不揮発性記憶装置。
【請求項２】
前記コントローラは、外部から与えられる論理アドレスを前記物理ブロックと同じ容量である論理グループと、前記論理グループに含まれる複数の論理ブロックに分割して管理し、外部から与えられる論理アドレスに対するデータの書込みを行う際に、書込みを行うデータを書込み対象データとし、前記書込み対象データの論理アドレスから、書込み対象データが含まれる論理グループを書込み対象論理グループとし、前記書込み対象論理グループのデータが書込まれている物理ブロックを書込み対象物理ブロックとし、前記書込み対象物理ブロックのうち未書込みである物理ページに対して、前記書込み対象データを書込むことを特徴とする請求項１記載の不揮発性記憶装置。
【請求項３】
複数の独立して消去可能な物理ブロックから成り、前記各物理ブロックは独立して書込み可能な複数の物理ページから成り、前記物理ページは所定数単位で部分物理ブロックから成り、外部から与えられる論理アドレスに基づいて、データの書込み、消去および読み出し、が行われる不揮発性メモリの書込み・消去方法であって、
外部から与えられる論理アドレスに対するデータの消去を行う際に、消去を行うデータを消去対象データとし、前記消去対象データが書込まれている前記不揮発性メモリの前記物理ブロックを決定し旧データブロックとし、前記旧データブロックのデータの中から前記消去対象データを除いた残りのデータのみを新たな消去済み物理ブロックの部分物理ブロックに先頭から順に書き写し、前記新たな消去済み物理ブロックに前記消去対象データと同じ容量の未書込み領域を残すことを特徴とする不揮発性メモリの書込み・消去方法。
【請求項４】
外部から与えられる論理アドレスを前記物理ブロックと同じ容量である論理グループと、前記論理グループに含まれる複数の論理ブロックに分割して管理し、外部から与えられる論理アドレスに対するデータの書込みを行う際に、書込みを行うデータを書込み対象データとし、前記書込み対象データの論理アドレスから、書込み対象データが含まれる論理グループを書込み対象論理グループとし、前記書込み対象論理グループのデータが書込まれている物理ブロックを書込み対象物理ブロックとし、前記書込み対象物理ブロックのうち未書込みである物理ページに対して、前記書込み対象データを書込むことを特徴とする請求項３記載の不揮発性メモリの書込み・消去方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フラッシュメモリ等の不揮発性メモリを使用した不揮発性記憶装置と、不揮発性メモリの消去方法と書込み方法に関する。
【背景技術】
【０００２】
近年、不揮発性メモリを搭載したメモリーカードは、デジタルカメラや携帯電話の記録媒体として、その市場を拡大している。そしてメモリーカード容量の増加に伴い、データファイルや静止画等の小容量の記録から、より大容量が必要となる動画記録へとその用途は広がっている。
【０００３】
しかし、メモリーカードの不揮発性メモリとして主に使用されているＮＡＮＤタイプのフラッシュメモリは、その容量の増加に伴いデータの消去単位となる物理ブロックの容量が、１６ｋＢのもの（主に１２８ＭＢ以下のフラッシュメモリ）から１２８ｋＢのもの（主に１２８ＭＢ以上のフラッシュメモリ）になっている。にもかかわらず、メモリーカードにデータを書込む際のファイルシステムでは、データの書込み単位となるクラスタは１６ｋＢのままで変化していない。
【０００４】
従って、以前の小容量のメモリーカード（主に１２８ＭＢまでの容量）においては、メモリーカードにデータを書込む際のクラスタの容量と、メモリーカード内部に搭載されているＮＡＮＤタイプのフラッシュメモリの消去単位となる物理ブロックは等しかった。しかし、大容量化が進むと、具体的には１２８ＭＢを越える容量値の不揮発性メモリからは、メモリーカードにデータを書込む単位であるクラスタ容量の１６ｋＢと、メモリーカード内部に搭載されているＮＡＮＤタイプのフラッシュメモリの消去単位である物理ブロックの容量の１２８ｋＢとが異なることになり、そのことがメモリーカードに書込まれたファイルがフラグメンテーション（断片化）を発生していた場合の書込み性能の低下を招いていた。
【０００５】
従来のメモリーカードにおいて、フラグメンテーションが発生した状態でのデータの書込みがどのようにメモリーカード内部の不揮発性メモリに対して行われていたかを図１〜４、図９〜１３、図１７〜２３を用いて説明する。
【０００６】
図１は、不揮発性記憶装置とそれを制御するホストとを示したブロック図である。図１において、１０１は不揮発性記憶装置であるメモリーカード、１０２はメモリーカード１０１を制御してメモリーカード１０１に対してデータの書込みと読出しを実行するホスト、１０３はメモリーカード内部にある不揮発性メモリであるフラッシュメモリである。ここでフラッシュメモリ１０３は、１２８ＭＢのフラッシュメモリを用いて説明する。１０４はメモリーカード１０１の内部にあり、ホスト１０２からの書込みと読み出し命令を受けてフラッシュメモリ１０３にデータを格納する、またはフラッシュメモリ１０３からデータを読み出すコントローラである。１０５はフラッシュメモリ１０３の内部にある物理ブロックがそれぞれ消去済であるか、書込み済みであるかの情報を示す消去済テーブルである。１０６はホスト１０２が指定するアドレス（以降論理アドレスと表記）とフラッシュメモリ１０３のアドレス（以降物理アドレスと表記）の変換を行うための論物変換テーブルである。
【０００７】
図２は、フラッシュメモリ１０３の内部のブロック図である。フラッシュメモリ１０３は複数の物理ブロック２０１（ＰＢ０〜ＰＢ１０２３）から構成される。物理ブロック２０１はデータを一括に消去できる消去単位であり、各々１２８ｋＢの容量を持つ。
【０００８】
図３は、物理ブロック２０１の内部のブロック図である。物理ブロック２０１は複数の物理ページ３０１（ＰＰ０〜ＰＰ６３）から構成される。物理ページ３０１はデータを書込みする書込み単位であり、各々２ｋＢの容量を持つ。ホスト１０２が論理的にデータの書込みを行う単位であるクラスタは１６ｋＢであるが、この値は物理ブロック２０１の容量１２８ｋＢとも物理ページ３０１の容量２ｋＢとも一致しない。そのため連続する物理ページ８ページ単位で容量１６ｋＢの部分物理ブロック３０２を構成する。部分物理ブロック３０２はホストからのデータの書込みを想定してコントローラ１０３が論理的に扱うデータの単位であり、物理ブロック２０１はその内部を論理的に８つの部分物理ブロック３０２に分割してホスト１０２からのデータを書込む。
【０００９】
図４は、メモリーカード１０１の内部における論理的なデータの管理を示した図である。メモリーカード１０１に搭載されているフラッシュメモリ１０３の記憶容量は１２８ＭＢであるが一般的にフラッシュメモリ１０３には初期不良ブロックや、書き換えを繰り返すことにより不良ブロックが発生することがあるため、予めやや少な目の容量をメモリーカード１０１の容量としている。ここでは１２５ＭＢというのがホスト１０２に見える容量である。
【００１０】
その１２５ＭＢをホスト１０２から書込みを行う１６ｋＢ単位で論理ブロック４０２を０から順に７９９９まで割り当てている。この論理ブロックはクラスタフラッシュメモリ１０３の消去単位である物理ブロックと等しい１２８ｋＢ単位で論理グループを構成する。
【００１１】
次に、ホスト１０２からの論理ブロックのデータの消去について説明する。
【００１２】
図１７、１８は、ホスト１０２がメモリーカード１０１のひとつの論理ブロック４０２のデータを論理的に消去する際における、メモリーカード１０１内部の動作を表した図とそのフローチャートである。「論理的に消去する」とはメモリーカード１０１からホスト１０２がデータを読み出したときに全て０ｘＦＦデータが読み出せるようにすることであり、メモリーカード１０１のフラッシュメモリ１０３、具体的にはホスト１０２は論理グループ０の論理ブロック２のデータを消去する場合を表している。
【００１３】
まず、フローチャートの書込み開始時点はメモリーカード１０１内のフラッシュメモリ１０３の物理ブロックＡに論理グループ０に所属する論理ブロック０〜７のデータが書込み済み、また、書換えのためのブロックとして消去済みの物理ブロックＢがあり、図１７（ａ）の状態に相当する。
【００１４】
次にステート１２０１で読出し元物理ブロックＡから論理ブロック０を読み出して書込み先物理ブロックＢへ書込む、ステート１２０２で読出し元物理ブロックＡから論理ブロック１を読み出して書込み先物理ブロックＢへ書込む。
【００１５】
ステート１２０３ではホスト１０２が消去しようとしている論理ブロック２を全データ０ｘＦＦで書込み先物理ブロックＢへ書込む。
【００１６】
以降、ステート１２０４〜１２０８まで読出し元物理ブロックＡから論理ブロック３〜７を読み出して、書込み先物理ブロックＢへと書込む処理を順次行う。ステート１２０８を終了したときの状態が図１７（ｂ）である。
【００１７】
最後にステート１２０９で読出し元物理ブロックＡを物理消去して処理を終了する。このときの状態が図１７（ｃ）である。
【００１８】
このように従来のホスト１０２からの消去処理では、書込み先の物理ブロックの全物理ページに対して書込みを行う必要がある。
【００１９】
このデータの消去処理に要する時間は、１ページの読み出しにかかる時間が２６５μｓ（読出し可能になるまでのビジー時間２５μｓ＋読み出しのためのデータ転送時間２４０μｓ）、１ページの書込みにかかる時間が３６０μｓ（書込みのためのデータ転送時間１６０μｓ＋書込みに要する時間２００μｓ）、１ブロックを消去する時間２ｍｓとの条件から、２６５μｓ×８×７＋３６０μｓ×８×８＋２ｍｓ＝３９８８０μｓ、となり、３９８８０μｓかかる。
【００２０】
次にホスト１０２から、先ほど消去した論理ブロックに対するデータの書込みについて説明する。
【００２１】
図１９、２０は、ホスト１０２がメモリーカード１０１の先ほど消去した論理ブロック４０２に対してデータを書込む際における、メモリーカード１０１内部の動作を表した図とそのフローチャートである。
【００２２】
まずフローチャートの書込み開始時点はメモリーカード１０１内のフラッシュメモリ１０３の物理ブロックＢに論理グループ０に所属する論理ブロック０〜７のデータが書込み済みであり、そのうち論理ブロック２のデータは論理的消去によって全て０ｘＦＦデータで埋められている。書換えのためのブロックとして消去済みの物理ブロックＣがあり、図１９（ａ）の状態に相当する。
【００２３】
次にステート１４０１で読出し元物理ブロックＢから論理ブロック０を読み出して書込み先物理ブロックＣへ書込む。
【００２４】
以降、ステート１４０２〜１４０８まで読出し元物理ブロックＢから論理ブロック１〜７を読み出して、書込み先物理ブロックＣへと書込む処理を順次行う。ステート１４０８を終了したときの状態が図１９（ｂ）である。
【００２５】
最後にステート１３０９で読出し元物理ブロックＢを物理消去して処理を終了する。このときの状態が図１９（ｃ）である。
【００２６】
このように従来のホスト１０２からの論理消去済みの論理ブロックへの書込み処理では、データが０ｘＦＦで既書込みであるために、新たな書込み先の物理ブロック（ここでは物理ブロックＣ）が必要で、その物理ブロックの全ての物理ページに対して書込みを行う必要がある。
【００２７】
この書込み処理に要する時間も、消去時間と同様で、２６５μｓ×８×７＋３６０μｓ×８×８＋２ｍｓ＝３９８８０μｓ、となり３９８８０μｓかかる。つまり１６ｋＢ書込むために３９８８０μｓかかるので約０．４ＭＢ／ｓｅｃの書込み速度となる。
【００２８】
以上の消去・書込み処理を基に、実際の使用例としてホスト１０２から複数のファイルの書込みがあり、その後一部のファイルを消去して、さらに新しいファイルの書込みを行う場合の処理について説明する。
【００２９】
図９〜１３は、ホスト１０２からメモリーカード１０１への書込み、消去処理の過程を示した図である。まず図９では論理グループ９の最後の論理ブロックにはファイル１が書込まれているが、論理グループ１０〜１２までは消去済みの状態を示している。
【００３０】
この状態からまず論理グループ１０の論理ブロック８０〜８２に容量４８ｋＢのファイル１を書込みした状態が図１０である。
【００３１】
以降、論理ブロックの番号順に容量１６ｋＢのファイル２、容量６４ｋＢのファイル３、容量９６ｋＢのファイル４、容量１６ｋＢのファイル５、容量６４ｋＢのファイル６、容量６４ｋＢのファイル７、容量１６ｋＢのファイル８と書込んだ後の状態が図１１である。
【００３２】
この状態からファイル２，５，８を消去すると論理ブロック８３，９４，１０３が論理消去される。
【００３３】
次に容量４８ｋＢのファイル９を書込むと一般的に空いている論理ブロックを前から埋めていくので論理ブロック８３，９４，１０３に対してファイル９のデータを書込む。
【００３４】
この図９〜１３に示した実際の使用例において、従来の書込み消去処理ではフラッシュメモリ１０３内部で物理的にどのように処理されているかを、図２１〜２３を用いて説明する。
【００３５】
図１１の状態に相当するのが図２１である。論理グループ１０のデータが物理ブロックＡ１に書込まれ、論理グループ１１のデータが物理ブロックＡ２に書込まれ、論理グループ１２のデータが物理ブロックＡ３に書込まれている。また物理ブロックＢ１，Ｂ２，Ｂ３，Ｃ１，Ｃ２，Ｃ３が消去済みブロックとして存在している。
【００３６】
この後、ファイル２，５，８を消去して図１２の状態になった時のフラッシュメモリ１０３内部での物理状態を示したのが図２２である。図１７で説明した処理と同様の処理を行うことにより物理ブロックＡ１，Ａ２，Ａ３のデータはファイル２，５，８のみ論理消去されたデータ０ｘＦＦに置き換えられて物理ブロックＢ１，Ｂ２，Ｂ３に移動する。
【００３７】
さらにファイル９を書込んだ後の図１３の状態になった時のフラッシュメモリ１０３内部の物理状態を示したのが図２３である。物理ブロックＢ１，Ｂ２，Ｂ３で論理消去されていた位置にファイル９が入り物理ブロックＣ１，Ｃ２，Ｃ３に移動している。
【００３８】
以上のように、図９〜１３に示した実際の使用例において、従来の消去書込み方法では６つの物理ブロック（物理ブロックＢ１，Ｂ２，Ｂ３，Ｃ１，Ｃ２，Ｃ３）にデータを書込み、６つの物理ブロック（物理ブロックＡ１，Ａ２，Ａ３，Ｂ１，Ｂ２，Ｂ３）を物理消去する必要がある。
【００３９】
同様の概念を開示するものとして、特許文献１がある。これには、データ書換えに関するブロック内データの整理方法についての記載がある。
【特許文献１】特開２００１−１５４９０９号公報
【発明の開示】
【発明が解決しようとする課題】
【００４０】
上記の様に従来の不揮発性メモリの消去・書込み方法においては、消去又は書込みを行う論理ブロックの容量以上に消去・書込みが必要であり、処理時間が長く、また必要となる物理ブロックの数も多いという課題が存在していた。
【課題を解決するための手段】
【００４１】
上記課題を解決するために、本発明の不揮発性記憶装置の消去方法は、不揮発性メモリとコントローラとを備え、不揮発性メモリは独立して消去可能な物理ブロックの複数からなり、外部からの消去に対して消去対象のデータが含まれる物理ブロックのデータのうち消去対象のデータを除く残りのデータを新たな消去済みの物理ブロックに書き移すことを特徴とする。
【００４２】
また本発明の不揮発性記憶装置の書込み方法は、不揮発性メモリとコントローラとを備え、不揮発性メモリは独立して消去可能な物理ブロックの複数からなり、物理ブロックは独立して書込み可能な複数のページからなり、コントローラは不揮発性メモリのデータを物理ブロックと同容量単位の論理グループと、論理グループに複数が含まれる論理ブロックに分割して管理し、外部からの書込みに対して書込み対象のデータが含まれる論理ブロックのデータが書込まれた物理ブロックの未書込みである物理ページに対して書込みを行うことを特徴とする。
【発明の効果】
【００４３】
ホストからのデータを消去するの処理時間を短くすることができる、またホストからデータを書込む処理時間を短くすることができるとともに書込み処理の際に必要となるフラッシュメモリの物理ブロックの数が少なくてすむので書き回数の向上も見込まれるという効果が得られる。
【発明を実施するための最良の形態】
【００４４】
本発明は、不揮発性メモリと、コントローラとを有し、外部から与えられる論理アドレスに基づいて前記不揮発性メモリに、データの書込み、消去および読み出しを行う不揮発性記憶装置であって、前記不揮発性メモリは、複数の独立して消去可能な物理ブロックから成り、前記各物理ブロックは独立して書込み可能な複数のページから成り、前記コントローラは、外部から与えられる論理アドレスに対するデータの消去を行う際に、消去を行うデータを消去対象データとし、前記消去対象データが書込まれている前記不揮発性メモリの前記物理ブロックを決定し旧データブロックとし、前記旧データブロックのデータの中から前記消去対象データを除いた残りのデータのみを新たな消去済み物理ブロックに書き写し、前記新たな消去済み物理ブロックに前記消去対象データを同じ容量の未書込み領域に残すことを特徴とした不揮発性記憶装置である。
【００４５】
また、本発明は、不揮発性メモリと、コントローラとを有し、外部から与えられる論理アドレスに基づいて前記不揮発性メモリに、データの書込み、消去および読み出しを行う不揮発性記憶装置であって、前記不揮発性メモリは、複数の独立して消去可能な物理ブロックから成り、前記各物理ブロックは独立して書込み可能な複数のページから成り、前記コントローラは、外部から与えられる論理アドレスを前記物理ブロックと同じ容量である論理グループと、前記論理グループに含まれる複数の論理ブロックに分割して管理し、外部から与えられる論理アドレスに対するデータの書込みを行う際に、書込みを行うデータを書込み対象データとし、前記書込み対象データの論理アドレスから、書込み対象データが含まれる論理グループを書込み対象論理グループとし、前記書込み対象論理グループのデータが書込まれている物理ブロックを書込み対象物理ブロックとし、前記書込み対象物理ブロックのうち未書込みである物理ページに対して、前記書込み対象データを書込むことを特徴とした不揮発性記憶装置である。
【００４６】
また、本発明は、複数の独立して消去可能な物理ブロックから成り、前記各物理ブロックは独立して書込み可能な複数のページから成り、外部から与えられる論理アドレスに基づいて、データの書込み、消去および読み出しが行われる不揮発性メモリの消去方法であって、外部から与えられる論理アドレスに対するデータの消去を行う際に、消去を行うデータを消去対象データとし、前記消去対象データが書込まれている前記不揮発性メモリの前記物理ブロックを決定し旧データブロックとし、前記旧データブロックのデータの中から前記消去対象データを除いた残りのデータのみを新たな消去済み物理ブロックに書き写し、前記新たな消去済み物理ブロックに前記消去対象データを同じ容量の未書込み領域に残すことを特徴とした不揮発性メモリの消去方法である。
【００４７】
また、本発明は、複数の独立して消去可能な物理ブロックから成り、前記各物理ブロックは独立して書込み可能な複数のページから成り、外部から与えられる論理アドレスに基づいて、データの書込み、消去および読み出しが行われる不揮発性メモリの書込み方法であって、外部から与えられる論理アドレスを前記物理ブロックと同じ容量である論理グループと、前記論理グループに含まれる複数の論理ブロックに分割して管理し、外部から与えられる論理アドレスに対するデータの書込みを行う際に、書込みを行うデータを書込み対象データとし、前記書込み対象データの論理アドレスから、書込み対象データが含まれる論理グループを書込み対象論理グループとし、前記書込み対象論理グループのデータが書込まれている物理ブロックを書込み対象物理ブロックとし、前記書込み対象物理ブロックのうち未書込みである物理ページに対して、前記書込み対象データを書込むことを特徴とした不揮発性メモリの書込み方法である。
【００４８】
以下、本発明の実施の形態による不揮発性記憶装置および不揮発性メモリの消去方法、書込み方法について、図面を用いて説明する。
【００４９】
（実施の形態１）
図１〜図４は本実施の形態における不揮発性記憶装置、フラッシュメモリの構成を示すブロック図と概念図であるが、従来例で説明したものと同様であるので、その説明を割愛する。
【００５０】
まず、ホスト１０２からの論理ブロックのデータの消去について説明する。
【００５１】
図５、６は、ホスト１０２がメモリーカード１０１のある論理ブロック４０２のデータを論理的に消去する際における、メモリーカード１０１内部の動作を表した説明図とそのフローチャートである。「論理的に消去する」とはメモリーカード１０１からホスト１０２がデータを読み出したときに全て０ｘＦＦデータが読み出せるようにすることであり、メモリーカード１０１のフラッシュメモリ１０３具体的にはホスト１０２は論理グループ０の論理ブロック２のデータを消去する場合を表している。
【００５２】
まずフローチャートの書込み開始時点はメモリーカード１０１内のフラッシュメモリ１０３の物理ブロックＡに論理グループ０に所属する論理ブロック０〜７のデータが書込み済み、また、書換えのためのブロックとして消去済みの物理ブロックＢがあり、図５（ａ）の状態に相当する。
【００５３】
次にステート６０１で読出し元物理ブロックＡから論理ブロック０を読み出して書込み先物理ブロックＢへ書込む、ステート６０２で読出し元物理ブロックＡから論理ブロック１を読み出して書込み先物理ブロックＢへ書込む。
【００５４】
ホスト１０２が消去しようとしている論理ブロック２に関しては書込み先物理ブロックＢへは書込まない。
【００５５】
以降、ステート６０３〜６０７まで読出し元物理ブロックＡから論理ブロック３〜７を読み出して、書込み先物理ブロックＢへと書込む処理を順次行う。ステート６０７を終了したときの状態が図５（ｂ）である。
【００５６】
最後にステート６０８で読出し元物理ブロックＡを物理消去して処理を終了する。このときの状態が図５（ｃ）である。
【００５７】
このようにホスト１０２からの消去処理では書込み先の物理ブロックのうち消去を行うページを除いた全ての物理ページにのみ書込みを行うだけでよい。
【００５８】
このデータの消去処理に要する時間は、１ページの読み出しにかかる時間が２６５μｓ（読出し可能になるまでのビジー時間２５μｓ＋読み出しのためのデータ転送時間２４０μｓ）、１ページの書込みにかかる時間が３６０μｓ（書込みのためのデータ転送時間１６０μｓ＋書込みに要する時間２００μｓ）、１ブロックを消去する時間２ｍｓから、２６５μｓ×８×７＋３６０μｓ×８×７＋２ｍｓ＝３７０００μｓ、となり３７０００μｓかかる。
【００５９】
次にホスト１０２から、先ほど消去した論理ブロックに対するデータの書込みについて説明する。
【００６０】
図７、８はホスト１０２がメモリーカード１０１の先ほど消去した論理ブロック４０２に対してデータを書込む際における、メモリーカード１０１内部の動作を表した図とそのフローチャートである。
【００６１】
まずフローチャートの書込み開始時点はメモリーカード１０１内のフラッシュメモリ１０３の物理ブロックＢに論理グループ０に所属する論理ブロック０〜７のうち論理消去を行った０，１，３〜７データが書込み済みであり、そのうち論理ブロック２と同じ容量の消去済み領域が残されている。図７（ａ）の状態に相当する。
【００６２】
最初のステート８０１でホストから送られてくる論理ブロック２に該当する書込みデータを書込み先論理ブロックＢの未書込みである領域に書込み処理を終える。このときの状態が図７（ｂ）である。
【００６３】
この書込み処理に要する時間も、消去時間と同様で、３６０μｓ×８＝２８８０μｓ、となり３６０μｓですむ。つまり１６ＫＢ書込むために２８８０μｓかかるので約５．４ＭＢ／ｓｅｃの書込み速度となる。
【００６４】
以上の消去・書込み処理を基に、図９〜１３に示すような実際の使用例としてホスト１０２から複数のファイルの書込みがあり、その後一部のファイルを消去して、さらに新しいファイルの書込みを行う場合の処理について説明する。
【００６５】
図９〜１３の詳細は従来例で説明したものと同様であるので、説明を割愛する。
【００６６】
この図９に示した実際の使用例において、従来の書込み消去処理ではフラッシュメモリ１０３内部で物理的にどのように処理されているかを、図１４〜１６を用いて説明する。
【００６７】
図１１の状態に相当するのが図１４である。論理グループ１０のデータが物理ブロックＡ１に書込まれ、論理グループ１１のデータが物理ブロックＡ２に書込まれ、論理グループ１２のデータが物理ブロックＡ３に書込まれている。また物理ブロックＢ１，Ｂ２，Ｂ３が消去済みブロックとして存在している。
【００６８】
この後、ファイル２，５，８を消去して図１２の状態になった時のフラッシュメモリ１０３内部での物理状態を示したのが図１５である。図５で説明した処理と同様の処理を行うことにより物理ブロックＡ１，Ａ２，Ａ３のデータはファイル２，５，８と同じ容量の領域がそれぞれ物理ブロックＢ１，Ｂ２，Ｂ３に残されている。
【００６９】
さらにファイル９を書込んだ後の図１３の状態になった時のフラッシュメモリ１０３内部の物理状態を示したのが図１６である。物理ブロックＢ１，Ｂ２，Ｂ３で未書込みであった物理位置にファイル９が書込まれている。
【００７０】
以上のように、図９〜１３に示した実際の使用例において、従来の消去書込み方法では３つの物理ブロック（物理ブロックＢ１，Ｂ２，Ｂ３）にデータを書込み、３つの物理ブロック（物理ブロックＡ１，Ａ２，Ａ３）を物理消去する必要がある。
【００７１】
以上、本発明の不揮発性記憶装置の消去方法によれば、内部に搭載したフラッシュメモリの消去サイズよりも小さなサイズのホストからの論理消去のコマンドに対して、ホストからの論理消去対象のデータが書込まれている物理ブロック内の論理消去対象以外のデータを別の物理ブロックに移して、論理消去対象のデータ部分に関しては未書込みの消去状態のままにして置き、０ｘＦＦデータの書込み処理を行わないことにより、論理消去に要する時間を従来に比べて高速に行うことができる。
【００７２】
また本発明の不揮発性記憶装置の書込み方法によれば、ホストからのデータ書込み時に、従来のように新たな消去済みの物理ブロックに対して書込みを行うのではなく、論理消去後の未書込み領域に対して新たな書込みデータを書込むことにより、書込み処理を従来に比べて格段に高速に、またその書込み処理の際に必要となるフラッシュメモリの物理ブロックの数をより少なく処理することができる。
【産業上の利用可能性】
【００７３】
本発明にかかる不揮発性記憶装置および不揮発性メモリの消去方法および書込み方法は、ホストからのデータを消去するの処理時間を短くすることができ、またホストからデータを書込む処理時間を短くすることができるとともに書込み処理の際に必要となるフラッシュメモリの物理ブロックの数が少なくてすむので書換え寿命の向上も見込まれるという効果を有し、フラッシュメモリ等の不揮発性メモリを使用した不揮発性記憶装置と、不揮発性メモリの消去および書込み方法、この方法を用いたメモリーカード、電子機器などとして有用である。
【図面の簡単な説明】
【００７４】
【図１】本発明の実施の形態によるメモリーカードとホストとの構成を示すブロック図
【図２】同実施の形態で使用されるフラッシュメモリ内部の構成を示すブロック図
【図３】同実施の形態で使用されるフラッシュメモリの物理ブロックの構成を示すブロック図
【図４】同実施の形態によるメモリーカードの論理マップの構成を示すブロック図
【図５】同実施の形態によるメモリーカードの論理消去の処理を示す概念図
【図６】同実施の形態によるメモリーカードの論理消去の処理を示すフローチャート
【図７】同実施の形態によるメモリーカードの書込みの処理を示す概念図
【図８】同実施の形態によるメモリーカードの書込みの処理を示すフローチャート
【図９】本発明におけるホストからメモリーカードへのデータ消去・書込みの一例を示す概念図
【図１０】本発明におけるホストからメモリーカードへのデータ消去・書込みの一例を示す概念図
【図１１】同ホストからメモリーカードへのデータ消去・書込みの一例を示す概念図
【図１２】同ホストからメモリーカードへのデータ消去・書込みの一例を示す概念図
【図１３】同ホストからメモリーカードへのデータ消去・書込みの一例を示す概念図
【図１４】本発明によるホストからメモリーカードへのデータ消去・書込みの処理を示す概念図
【図１５】同ホストからメモリーカードへのデータ消去・書込みの処理を示す概念図
【図１６】同ホストからメモリーカードへのデータ消去・書込みの処理を示す概念図
【図１７】従来のメモリーカードの論理消去の処理を示す概念図
【図１８】従来のメモリーカードの論理消去の処理を示すフローチャート
【図１９】従来のメモリーカードの書込みの処理を示す概念図
【図２０】従来のメモリーカードの書込みの処理を示すフローチャート
【図２１】従来によるホストからメモリーカードへのデータ消去・書込みの処理を示す概念図
【図２２】同ホストからメモリーカードへのデータ消去・書込みの処理を示す概念図
【図２３】同ホストからメモリーカードへのデータ消去・書込みの処理を示す概念図
【符号の説明】
【００７５】
１０１    メモリーカード
１０２    ホスト
１０３    フラッシュメモリ
１０４    コントローラ
１０５    消去済テーブル
１０６    論物変換テーブル
２０１    物理ブロック
３０１    物理ページ
３０２    部分物理ブロック
４０１    論理グループ
４０２    論理ブロック
【図１】
0004661086.tif 000002
【図２】
0004661086.tif 000003
【図３】
0004661086.tif 000004
【図４】
0004661086.tif 000005
【図５】
0004661086.tif 000006
【図６】
0004661086.tif 000007
【図７】
0004661086.tif 000008
【図８】
0004661086.tif 000009
【図９】
0004661086.tif 000010
【図１０】
0004661086.tif 000011
【図１１】
0004661086.tif 000012
【図１２】
0004661086.tif 000013
【図１３】
0004661086.tif 000014
【図１４】
0004661086.tif 000015
【図１５】
0004661086.tif 000016
【図１６】
0004661086.tif 000017
【図１７】
0004661086.tif 000018
【図１８】
0004661086.tif 000019
【図１９】
0004661086.tif 000020
【図２０】
0004661086.tif 000021
【図２１】
0004661086.tif 000022
【図２２】
0004661086.tif 000023
【図２３】
0004661086.tif 000024