(57)【要約】【課題】書き換え回数制限下での実効的な書き換え容量を増大したメモリシステムを提供する。【解決手段】実施形態のメモリシステム１は、２ビット以上の所定ビット数の記憶容量のメモリセルを複数個有する不揮発性メモリ２と、前記メモリセルの書き換え回数を管理する書き換え回数管理テーブル４０を備える。実施形態のメモリシステムは、ホスト７からの書き込み要求に応じたビット数で前記メモリセルに書き込みを行い、前記書き換え回数管理テーブル４０が管理する前記メモリセルの書き換え回数が所定の回数を超えた後は、前記メモリセルを前記記憶容量に依存したグループに分割し、ホストからの書き込み要求に応じたビット数の前記記憶容量に対応する前記グループの前記メモリセルに書き込みを行うコントローラ３を備える。【選択図】図１
2012203863.tif 000002
【特許請求の範囲】
【請求項１】
２ビット以上の所定ビット数の記憶容量のメモリセルを複数個有する不揮発性メモリと、
前記メモリセルの書き換え回数を管理する書き換え回数管理テーブルと、
ホストからの書き込み要求に応じたビット数で前記メモリセルに書き込みを行い、前記書き換え回数管理テーブルが管理する前記メモリセルの書き換え回数が所定の回数を超えた後は、前記メモリセルを前記記憶容量に依存したグループに分割し、ホストからの書き込み要求に応じたビット数の前記記憶容量に対応する前記グループの前記メモリセルに書き込みを行うコントローラと、
を備えることを特徴とするメモリシステム。
【請求項２】
前記所定の回数が、前記メモリセルを前記所定ビット数で書き換えを繰り返した場合の書き換え制限回数より少ない
ことを特徴とする請求項１に記載のメモリシステム。
【請求項３】
前記グループは、１ビットの記憶容量のメモリセルからなるグループと、２ビットの記憶容量のメモリセルからなるグループを含む
ことを特徴とする請求項１または２に記載のメモリシステム。
【請求項４】
前記グループは、１ビットの記憶容量のメモリセルからなるグループと、それぞれ２ビット以上の互いに異なる記憶容量のメモリセルからなる複数のグループを含む
ことを特徴とする請求項１または２に記載のメモリシステム。
【請求項５】
前記グループは、前記所定ビット数の記憶容量のメモリセルからなるグループと、前記所定ビット数未満のビット数の記憶容量のメモリセルからなるグループを含む
ことを特徴とする請求項１または２に記載のメモリシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、メモリシステムに関する。
【背景技術】
【０００２】
昨今のＮＡＮＤ型フラッシュメモリには、記憶素子に１ビット（bit）を記憶できるシングルレベルセル（ＳＬＣ）と記憶素子に２ビット以上を記憶できるマルチレベルセル(ＭＬＣ)とがある。ＮＡＮＤ型フラッシュメモリの記憶素子は、電源を落としても記憶されたデータは消去されないということが特徴となっているが、一般的に記憶素子に対しての書き換え回数に一定の制限があり、書き換え回数がある一定数を超えると、書き込みや消去動作において動作不良を起こす可能性が高まる。
【０００３】
ある特定の記憶素子を繰り返し書き換えて上記制限を超えた場合、対象の領域は動作不良を起こす可能性があるが、記憶素子領域全体を平均的に書き換えていった場合は、特定の記憶素子だけの書き換え回数を急激に増加させるのを防ぐことができ、結果としてＮＡＮＤ型フラッシュメモリ全体としての書き換え容量を増加させたことになる。ここで書き換え容量とは、書き込んだ容量と書き換え回数を掛け合わせたものである。
【０００４】
ＳＬＣはＭＬＣに対して各データに対応する閾値分布間のマージンを広く取ることが可能なため、比較的その書き換え回数の上限は大きいと言われており、書き換え回数が多いような使用用途ではＳＬＣの方が適している。ただし、ＭＬＣはＳＬＣに対して単一素子あたりに複数倍のメモリ容量を実現できるため、ビット単価が安くなり、コストメリットの点では非常に有利である。
【０００５】
ＳＬＣおよびＭＬＣの上記した互いのメリットとデメリットを活かす目的で、ＮＡＮＤ型フラッシュメモリの記憶素子領域の中で、ＳＬＣ領域とＭＬＣ領域とを分けて使用することがある。そのような製品では、ＳＬＣ領域とＭＬＣ領域とのそれぞれの領域において、書き換え回数が平均的になるように工夫されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−２５７７７３号公報
【特許文献２】特開２００９−４８６８０号公報
【特許文献３】特開２００５−２６７６７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明の一つの実施形態は、書き換え回数制限下での実効的な書き換え容量を増大したメモリシステムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一つの実施形態のメモリシステムは、２ビット以上の所定ビット数の記憶容量のメモリセルを複数個有する不揮発性メモリと、前記メモリセルの書き換え回数を管理する書き換え回数管理テーブルを備える。実施形態のメモリシステムは、ホストからの書き込み要求に応じたビット数で前記メモリセルに書き込みを行い、前記書き換え回数管理テーブルが管理する前記メモリセルの書き換え回数が所定の回数を超えた後は、前記メモリセルを前記記憶容量に依存したグループに分割し、ホストからの書き込み要求に応じたビット数の前記記憶容量に対応する前記グループの前記メモリセルに書き込みを行うコントローラを備える。
【図面の簡単な説明】
【０００９】
【図１】図１は、第１および第２の実施形態のメモリシステムの構成を示すブロック図である。
【図２】図２は、第１の実施形態のメモリシステムの動作を示すフローチャートを示す図である。
【図３】図３は、第１の実施形態の２ビット書き込みの様子を示す図である。
【図４】図４は、第１の実施形態の１ビット書き込みの様子を示す図である。
【図５】図５は、第１の実施形態のメモリシステムの構成を示すブロック図である。
【図６】図６は、第２の実施形態のメモリシステムの動作を示すフローチャートを示す図である。
【図７】図７は、第２の実施形態のメモリシステムの構成を示すブロック図である。
【図８】図８は、第２の実施形態のメモリシステムの構成を示すブロック図である。
【発明を実施するための形態】
【００１０】
たとえば、書き換え回数が多く、非常に小さなランダムデータなどを書き込むための領域を、小容量のＳＬＣ領域に割り当てて、書き換え回数が少ない比較的大きなデータを、大容量のＭＬＣ領域に割り当てるような場合がある。しかし、書き換え回数が多いデータはＳＬＣ領域に書き込む場合が多いので、ＳＬＣ領域を小さく設定していると、ＳＬＣ領域の書き換え回数が一定の制限に早々と達してしまうような問題があった。
【００１１】
また、コードデータなどのデータは信頼性を高める必要があり、そのようなデータは大容量のＳＬＣ領域に書き込んで、読み出し専用データとするような場合がある。一方、書き換えが発生するデータは比較的小容量のＭＬＣ領域に書き換えを行うのであるが、その場合もＭＬＣ領域の書き換え回数が一定の制限を早々と越えてしまうようなケースも考えられ、問題となっていた。
【００１２】
以下に添付図面を参照して、実施形態にかかるメモリシステムを詳細に説明する。なお、この実施形態により本発明が限定されるものではない。
【００１３】
（第１の実施形態）
図１は、第１の実施形態のメモリシステム１の構成を示すブロック図である。メモリシステム１は、図示するように、ホスト（Ｈｏｓｔ）７と接続され、ホスト７の外部記憶装置、例えばｅＭＭＣ(Embedded Multi Media Card)として機能する。ｅＭＭＣは、例えば、携帯型の音楽プレーヤーや、ゲーム機などに使用することができる。メモリシステム１がホスト７から受信する書き込み／読み出し要求は、ＬＢＡ（Logical  Block  Address）で定義されたアクセス対象の先頭アドレスとアクセス対象の領域の範囲を示すデータサイズとが含まれている。
【００１４】
メモリシステム１は、ユーザデータ及びアドレス変換テーブルを記憶する不揮発性半導体メモリとしてのＮＡＮＤフラッシュメモリ２と、ホスト７とＮＡＮＤフラッシュメモリ２との間でデータ転送制御を行うとともにメモリシステム１内の各構成要素を制御するコントローラ３と、上記アドレス変換テーブルの少なくとも一部を一時的に記憶する揮発性半導体メモリとしてのランダムアクセスメモリ（ＲＡＭ）４と、ホスト７との間の通信インタフェースの制御を実行するホストインタフェースコントローラであるホストコントローラ５とを備えて構成されている。複数のメモリセルを備えたＮＡＮＤフラッシュメモリ２にはホスト７から書き込まれたユーザデータを記憶するユーザデータ領域２０がある。ランダムアクセスメモリ４は、例えばＤＲＡＭ又はＳＲＡＭで構成される。ランダムアクセスメモリ４は、ユーザデータ領域２０のページ単位、またはブロック単位ごとの書き換え回数を管理する書き換え回数管理テーブル４０を備えている。
【００１５】
アドレス変換テーブルは、ホスト７が指定する論理アドレスとＮＡＮＤフラッシュメモリ２内のデータの位置を指定する物理アドレスとの対応を示すものである。アドレス変換テーブルはＮＡＮＤフラッシュメモリ２に記憶されており（図示せず）、メモリシステム１の起動時等の所定のタイミングでランダムアクセスメモリ４に展開される。コントローラ３は、データ書き込み等に伴い論理アドレスと物理アドレスとの対応関係が更新された場合、ランダムアクセスメモリ４に展開されたアドレス変換テーブルを更新する。
【００１６】
メモリシステム１が外部仕様としてＮＡＮＤフラッシュメモリ２にＭＬＣ領域を備えている場合、ユーザデータ領域２０のメモリセルは物理的にはＳＬＣとしてもＭＬＣとしても書き込むことができる。ＭＬＣとしては、４値、８値等が考えられるが、本実施形態においては、ユーザデータ領域２０のメモリセルは外部仕様として備えた最もレベル数が多いＭＬＣとして書き込みが可能であるとする。ｅＭＭＣなどのメモリシステム１においては、ホスト７が論理アドレス（ＬＢＡ）空間に最初にパーティションを設定するなどしてＳＬＣ領域に対応するアドレス領域かＭＬＣ領域に対応するアドレス領域かを論理アドレスに応じて決定する。従って、ホスト７からメモリシステム１への書き込み要求がされる場合、当該書き込み要求に含まれるＬＢＡに依存してＳＬＣ領域への書き込み要求であるか、ＭＬＣ領域への書き込み要求であるかが決定される。
【００１７】
本実施形態においては、図２に示したフローチャートに従ってコントローラ３が、ＮＡＮＤフラッシュメモリ２のユーザデータ領域２０への書き込みを実行する。
【００１８】
まず、ホスト７からの書き込み指示がくると（ステップＳ１０１）、その書き込みがＭＬＣ領域への書き込みか否かが判定される（ステップＳ１０２）。ＭＬＣ領域への書き込みである場合（ステップＳ１０２:Ｙｅｓ）は、ユーザデータ領域２０のいずれかのメモリセルへＭＬ（マルチレベル）、例えば図３に示すように２ビットでデータを書き込む（ステップＳ１０３）。ＭＬＣ領域への書き込みでない場合（ステップＳ１０２:Ｎｏ）、即ちＳＬＣ領域への書き込みである場合は、ユーザデータ領域２０のいずれかのメモリセルへＳＬ（シングルレベル）、例えば図４に示すように１ビットでデータを書き込む（ステップＳ１０４）。
【００１９】
本実施形態においては、書き込みがマルチレベルかシングルレベルかに依存してユーザデータ領域２０の固定領域を割り当てて書き分けることを当初は行わない。即ち、上記ステップＳ１０３、Ｓ１０４のいずれの書き込みの場合においても、当初は、ユーザデータ領域２０に対してウエアレベリング技術を用いるなどして同一セル、同一ページ、同一物理ブロックへの集中的な書き換えが発生しないように、出来るだけ均等に書き込むようにする。即ち、メモリシステム１は外部仕様としてＭＬＣ領域およびＳＬＣ領域を備えているが、当初は、ＭＬＣ領域およびＳＬＣ領域をユーザデータ領域２０に固定的に割り付けることはしない。
【００２０】
ステップＳ１０３、Ｓ１０４の後、書き換え回数管理テーブル４０の書き込みが行われたページあるいはブロックの書き換え回数を１増加させる（ステップＳ１０５）。その後、ステップＳ１０６にて、書き換え回数管理テーブル４０の書き換え回数が全て所定の書き換え回数を超えたか否かを判定する。所定の書き換え回数は、あるページまたはブロックをＭＬ（マルチレベル）で書き込みを繰り返したときの書き換え制限回数より小さい値とする。一般にＭＬ（マルチレベル）で書き込みを繰り返したときの書き換え制限回数は、ＳＬ（シングルレベル）で書き込みを繰り返したときの書き換え制限回数より少ない。例えば、ＳＬ（シングルレベル）で書き込みを繰り返したときの書き換え制限回数が１００００回で、ＭＬ（マルチレベル）で書き込みを繰り返したときの書き換え制限回数が１０００回だとすると、所定の書き換え回数は例えば８００回とする。
【００２１】
書き換え回数管理テーブル４０の書き換え回数で所定の書き換え回数を超えないものがある場合は（ステップＳ１０６:Ｎｏ）、そのまま書き込みを続ける（ステップＳ１０１）。書き換え回数管理テーブル４０の書き換え回数が全て所定の書き換え回数を超えた場合は（ステップＳ１０６:Ｙｅｓ）、図５に示すようにユーザデータ領域２０にＳＬＣ領域２１およびＭＬＣ領域２２を固定的に割り当てる（ステップＳ１０７）。ステップＳ１０７の後はステップＳ１０１へ進むが、以後のステップＳ１０３では固定的に割り当てられたＭＬＣ領域２２に書き込み、ステップＳ１０４ではＳＬＣ領域２１に書き込む。
【００２２】
以上説明したように、本実施形態においては、ユーザデータ領域２０の全てのページあるいはブロックが上記所定の書き換え回数を超えるまでは、ＳＬＣ領域およびＭＬＣ領域について図５に示すようなメモリセルの記憶容量のビット数に対応した固定的な領域区分は行わないで書き込みを行い、ユーザデータ領域２０の全てのページあるいはブロックが上記所定の書き換え回数を超えた後は、ユーザデータ領域２０にＳＬＣ領域２１およびＭＬＣ領域２２を固定的に割り付けて、それぞれの制限回数まで書き換えを継続する。
【００２３】
本実施形態による効果を、以下に簡易な数値例で説明する。本実施形態とは異なり、当初から図５に示すようにユーザデータ領域２０をＳＬＣ領域２１およびＭＬＣ領域２２に固定的に割り当てておいた場合、例えば、ＳＬＣ領域２１がユーザデータ領域２０のメモリセル全体の５％で、書き換え制限回数が１００回、ＭＬＣ領域２２が残りのユーザデータ領域２０で、書き換え制限回数が１５回であったとする。例えば、ＳＬＣ領域２１全てが、ラジオダウンロードデータを保持する用途などで毎日１回書き換えられるとすると、１００日で書き換え制限回数に達するので、ここでＳＬＣ領域２１は全て使用不能となる可能性がある。
【００２４】
それに対して、本実施形態の場合、当初は図１に示すようにＳＬＣ領域およびＭＬＣ領域を区別しないでユーザデータ領域２０を均等にシングルレベルで書き込む。そして、所定の書き換え回数をＭＬＣ領域の書き換え制限回数である１５回より小さい１０回とする。この場合、ＳＬＣ領域２１をユーザデータ領域２０のメモリセル全体の５％に固定的に割り付けて書き換えていた上記の場合に比べて、２０倍の記憶領域にシングルレベルで書き込みを実行するので、所定の書き換え回数１０回までシングルレベルで書き込むとしても、上記の場合に換算すると２００日分のシングルレベルでの書き込みが可能である。ユーザデータ領域２０全体の書き換え回数が１０回を越えた後、図５のようにユーザデータ領域２０をＳＬＣ領域２１およびＭＬＣ領域２２に固定的に割り当てるとしても、ＳＬＣ領域２１はまだ１００−１０＝９０回の書き換えが可能である。また、ＭＬＣ領域２２も書き換え制限回数の１５回までは未だ書き換え可能である。
【００２５】
以上の様に、本実施形態によれば、書き換え回数制限下での実効的な書き換え容量を増大したメモリシステムを提供することが可能となる。
【００２６】
（第２の実施形態）
第１の実施形態では、メモリシステム１が外部仕様としてＮＡＮＤフラッシュメモリ２に一種類のＭＬＣ領域を備えている場合について説明したが、本実施形態においては、ＭＬＣ領域が２ビットの記憶容量のメモリセルからなる第１ＭＬＣ領域と３ビットの記憶容量のメモリセルからなる第２ＭＬＣ領域を備えている。
【００２７】
本実施形態においては、図６に示したフローチャートに従ってコントローラ３が、ＮＡＮＤフラッシュメモリ２のユーザデータ領域２０への書き込みを実行する。
【００２８】
まず、ホスト７からの書き込み指示がくると（ステップＳ２０１）、その書き込みがＭＬＣ領域への書き込みか否かが判定される（ステップＳ２０２）。ＭＬＣ領域への書き込みである場合（ステップＳ２０２:Ｙｅｓ）は、さらに３ビットでの書き込みか否かが判定される（ステップＳ２０３）。３ビットでの書き込みである場合（ステップＳ２０３:Ｙｅｓ）は、ユーザデータ領域２０のいずれかのメモリセルへ３ビットでデータを書き込む（ステップＳ２０４）。３ビットでの書き込みでない場合（ステップＳ２０３:Ｎｏ）は、ユーザデータ領域２０のいずれかのメモリセルへ２ビットでデータを書き込む（ステップＳ２０５）。ＭＬＣ領域への書き込みでない場合（ステップＳ２０２:Ｎｏ）、即ちＳＬＣ領域への書き込みである場合は、ユーザデータ領域２０のいずれかのメモリセルへＳＬ（シングルレベル）、即ち１ビットでデータを書き込む（ステップＳ２０６)。
【００２９】
本実施形態においては、上記ステップＳ２０４、Ｓ２０５、Ｓ２０６のいずれの書き込みの場合においても、当初は、ユーザデータ領域２０に対してウエアレベリング技術を用いるなどして同一セル、同一ページ、同一物理ブロックへの集中的な書き換えが発生しないように、出来るだけ均等に書き込むようにする。即ち、メモリシステム１は外部仕様として第１ＭＬＣ領域、第２ＭＬＣ領域、およびＳＬＣ領域を備えているが、当初は、図１に示すように第１ＭＬＣ領域、第２ＭＬＣ領域、およびＳＬＣ領域をユーザデータ領域２０に固定的に割り付けることはしない。
【００３０】
ステップＳ２０４、Ｓ２０５、Ｓ２０６の後、書き換え回数管理テーブル４０の書き込みが行われたページあるいはブロックの書き換え回数を１増加させる（ステップＳ２０７）。その後、ステップＳ２０８にて、書き換え回数管理テーブル４０の書き換え回数が全て第１の所定の書き換え回数を超えたか否かを判定する。第１の所定の書き換え回数は、あるページまたはブロックを３ビットで書き込みを繰り返したときの書き換え制限回数より小さい値とする。例えば、１ビット（シングルレベル）で書き込みを繰り返したときの書き換え制限回数が１００００回で、２ビット（マルチレベル）で書き込みを繰り返したときの書き換え制限回数が１０００回で、３ビット（マルチレベル）で書き込みを繰り返したときの書き換え制限回数が５００回だとすると、第１の所定の書き換え回数は例えば４００回とする。
【００３１】
書き換え回数管理テーブル４０の書き換え回数で第１の所定の書き換え回数を超えないものがある場合は（ステップＳ２０８:Ｎｏ）、そのままユーザデータ領域２０を区分けせずに書き込みを続ける（ステップＳ２０１）。書き換え回数管理テーブル４０の書き換え回数が全て第１の所定の書き換え回数を超えた場合は（ステップＳ２０８:Ｙｅｓ）、図７に示すようにユーザデータ領域２０に３ビットで書き込むメモリセルのみからなる第２ＭＬＣ領域２４を固定的に割り当てる（ステップＳ２０９）。ユーザデータ領域２０の残りの領域はＳＬＣ及び第１ＭＬＣ混在領域２５とする。
【００３２】
ステップＳ２０９の後、ステップＳ２１０においてＳＬＣ及び第１ＭＬＣ混在領域２５の書き換え回数が全て第２の所定の書き換え回数を超えたか否かが判定される。２ビット（マルチレベル）で書き込みを繰り返したときの書き換え制限回数が１０００回だとした場合、第２の所定の書き換え回数は例えば８００回とする。ＳＬＣ及び第１ＭＬＣ混在領域２５の書き換え回数が全て第２の所定の書き換え回数を超えたのではない場合（ステップＳ２１０：Ｎｏ）はステップＳ２０１へ進むが、以後のステップＳ２０４では固定的に割り付けられた第２ＭＬＣ領域２４に３ビットの書き換え制限回数の５００回まで書き込み続け、ステップＳ２０５およびＳ２０６では書き込みビット数に応じた固定的な領域区分は行わないでＳＬＣ及び第１ＭＬＣ混在領域２５に均等に書き込み続ける。
【００３３】
ステップＳ２１０において、書き換え回数管理テーブル４０のＳＬＣ及び第１ＭＬＣ混在領域２５の書き換え回数が全て第２の所定の書き換え回数の８００回を超えた場合は（ステップＳ２１０:Ｙｅｓ）、図８に示すようにＳＬＣ及び第１ＭＬＣ混在領域２５にＳＬＣ領域２１および第１ＭＬＣ領域２３を固定的に割り当てる（ステップＳ２１１）。ステップＳ２１１の後はステップＳ２０１へ進むが、以後のステップＳ２０５では第１ＭＬＣ領域２３に書き込み、ステップＳ２０６ではＳＬＣ領域２１に書き込む。その後、２ビット書き込み（ステップＳ２０５）は、制限回数の１０００回まで書き換え可能である。また、１ビット書き込み（ステップＳ２０６）は、制限回数の１００００回まで書き換え可能である。
【００３４】
以上説明したように、本実施形態においては、ユーザデータ領域２０の全てのページあるいはブロックが第１の所定の書き換え回数の４００回を超えるまでは、図１のユーザデータ領域２０に示すようにメモリセルの記憶容量のビット数に対応した固定的な領域区分は行わないで書き込みを行い、ユーザデータ領域２０の全てのページあるいはブロックが第１の所定の書き換え回数を超えた後は、図７に示すようにユーザデータ領域２０に第２ＭＬＣ領域２４を固定的に割り付け、残りの領域はＳＬＣ及び第１ＭＬＣ混在領域２５とする。その後第２ＭＬＣ領域２４は、３ビットの記憶容量のメモリセル領域として、３ビット（マルチレベル）で書き込みを繰り返したときの書き換え制限回数である５００回まで書き換えを継続する。ＳＬＣ及び第１ＭＬＣ混在領域２５には、ステップＳ２０５およびＳ２０６の２ビットおよび１ビットの書き込みにおいて書き込みビット数に応じた固定的な領域区分は行わないで均等に書き込み続ける。
【００３５】
さらにその後、ＳＬＣ及び第１ＭＬＣ混在領域２５の書き換え回数が全て第２の所定の書き換え回数である８００回を超えた場合は（ステップＳ２１０:Ｙｅｓ）、図８に示すようにＳＬＣ及び第１ＭＬＣ混在領域２５にＳＬＣ領域２１および第１ＭＬＣ領域２３を固定的に割り付け、２ビット書き込み（ステップＳ２０５）は、２ビットの書き換え制限回数である１０００回まで書き換え可能である。また、１ビット書き込み（ステップＳ２０６）は、１ビットの書き換え制限回数である１００００回まで書き換え可能である。
【００３６】
なお、上記説明では、図６に示したように２つの所定の書き換え回数を設けて、図７に示したように、ユーザデータ領域２０に一旦第２ＭＬＣ領域２４を割り当ててから、最終的に図８に示すように、ＳＬＣ領域２１および第１ＭＬＣ領域２３も割り当てるとして説明した。しかし、書き換え回数が全て第１の所定の書き換え回数を超えた時点で、図８に示すように、ユーザデータ領域２０をＳＬＣ領域２１、第１ＭＬＣ領域２３、および第２ＭＬＣ領域２４に全て割り当てるようにしてもかまわない。
【００３７】
以上説明したように、ＮＡＮＤ型フラッシュメモリを備え、記憶素子（メモリセル）領域をＳＬＣ領域とＭＬＣ領域とに分けて書き込み、消去動作を行うシステムにおいて、ある所定の書き換え回数になるまで、ＳＬＣ領域とＭＬＣ領域の合わせた全体の領域にわたってＳＬＣ領域かＭＬＣ領域かの区別をせずに書き換えを行う。ある一定の書き換え回数とは、書き換え回数が一般的に少ないＭＬＣの書き換え回数制限よりも少ない値に設定する。書き換えを記憶素子領域全体に対して行うことで、ＳＬＣ領域とＭＬＣ領域とを物理的に固定した場合に比べて、特定領域で偏った頻度の書き換えが起こるのを防ぐことができる。
【００３８】
書き換え回数が設定回数を上回った場合は、ＳＬＣ領域とＭＬＣ領域に書き換え領域を分けて書き換え動作を行う。ＮＡＮＤ型フラッシュメモリの記憶素子に対する書き換えの範囲を、書き換え回数ごとに、またメモリセルあたりの記憶容量（ビット数）ごとに領域を変更することで、書き換え領域を当初からＳＬＣ領域、ＭＬＣ領域と分けて書き換えしていた場合に比べて、特定領域の書き換え回数が急増するのを防ぎ、実効的な書き換え容量を増加させることが出来る。
【００３９】
また、ＭＬＣ領域の書き換え制限回数より少ない書き換え回数を所定の書き換え回数とし、その回数に達した時点で、ＳＬＣ/ＭＬＣ個別に書き換え範囲を設定することで、ＭＬＣ領域の書き換え回数が制限回数を超えないようにすることができる。
【００４０】
このように、ＮＡＮＤ型フラッシュメモリの使用方法において、ＳＬＣ領域もしくはＭＬＣ領域のどちらかの書き換え回数が多い場合、ＳＬＣ領域およびＭＬＣ領域で書き換えを平均化することで、ハイブリッドなデータ保持管理を行ないながら実効的な書き換え容量を増加させることが可能となる。
【００４１】
なお、第２の実施形態でも説明したように、ＭＬＣ領域がさらに複数種類のビット数の記憶容量のメモリセルを備えていてもよく、上記した２種類に限らずそれ以上でも上記実施形態と同様な書き換え回数に応じた領域分割を実施できることは言うまでもない。
【００４２】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００４３】
１  メモリシステム、２  ＮＡＮＤフラッシュメモリ、３  コントローラ、４  ランダムアクセスメモリ（ＲＡＭ）、５  ホストコントローラ、７  ホスト、２０  ユーザデータ領域、２１  ＳＬＣ領域、２２  ＭＬＣ領域。
【図１】
2012203863.tif 000003
【図２】
2012203863.tif 000004
【図３】
2012203863.tif 000005
【図４】
2012203863.tif 000006
【図５】
2012203863.tif 000007
【図６】
2012203863.tif 000008
【図７】
2012203863.tif 000009
【図８】
2012203863.tif 000010