(57)【要約】【課題】  所定メモリセルに印加される電圧によって所定ブロックに含まれた複数のページにデータを格納するメモリセルを含む不揮発性メモリ、その不揮発性メモリで書き込み／削除動作中に電源供給の中断により発生しうる不完全なデータの有効性を正確に判断できる装置及び方法を提供する。【解決手段】  所定メモリセルに印加される電圧によって所定ブロックに含まれた複数のページにデータを格納する不揮発性メモリにおいて、ブロックは、ユーザが記録するデータが格納される第１データ領域を含む第１ページと、ユーザが記録するデータが格納される第２データ領域を含む第２ページと、を含み、第２ページは、第１データ領域及び第２データ領域で同じ位置のビット対が表す状態がカウントされたカウント情報が記録される。【選択図】  図４
2008010140.tif 000002
【特許請求の範囲】
【請求項１】
所定メモリセルに印加される電圧によって所定ブロックに含まれた複数のページにデータを格納する不揮発性メモリにおいて、
前記ブロックは、ユーザが記録するデータが格納される第１データ領域を含む第１ページと、
前記ユーザが記録するデータが格納される第２データ領域を含む第２ページと、を含み、
前記第２ページは、前記第１データ領域及び前記第２データ領域で同じ位置のビット対が表す状態がカウントされたカウント情報が記録される不揮発性メモリ。
【請求項２】
前記第２ページは、データ記録時に前記第２ページに含まれたビットが１から０にのみ変わり、データ削除時に前記第２ページに含まれたビットが０から１にのみ変わる請求項１に記載の不揮発性メモリ。
【請求項３】
前記ビット対は、前記メモリセルに印加される電圧によって１１、０１、００、１０順に順次に変更される請求項１に記載の不揮発性メモリ。
【請求項４】
所定メモリセルに印加される電圧によって所定ブロックに含まれた第１ページ及び第２ページにデータを格納する不揮発性メモリと、
前記第１ページ及び前記第２ページで同じ位置のビット対が表す状態をカウントして第１カウント情報を生成するカウント部と、
前記生成された第１カウント情報を前記第２ページに格納する制御部と、
前記格納された第１カウント情報と、前記第１ページ及び前記第２ページのデータから抽出された第２カウント情報とを比較して、前記データの有効性を判断する有効性判断部と、を備える不揮発性メモリのデータ有効性を判断する装置。
【請求項５】
前記第２ページは、データ記録時にビットが１から０にのみ変わり、データ削除時に前記ビットが０から１にのみ変わる請求項４に記載の不揮発性メモリのデータ有効性を判断する装置。
【請求項６】
前記第１ページは、第１カウント情報領域とユーザが記録するデータが格納される第１データ領域とを備え、前記第２ページは、前記第１カウント情報が記録される第２カウント情報領域と前記ユーザが記録するデータが格納される第２データ領域とを備える請求項４に記載の不揮発性メモリのデータ有効性を判断する装置。
【請求項７】
前記カウント部は、前記第１データ領域及び前記第２データ領域で同じ位置のビット対が表す状態をカウントして前記第２カウント情報を生成する請求項６に記載の不揮発性メモリのデータ有効性を判断する装置。
【請求項８】
前記有効性判断部は、前記第１カウント情報と前記第２カウント情報とが一致する場合、前記第１データ領域及び前記第２データ領域に格納されているデータを有効なものと判断する請求項７に記載の不揮発性メモリのデータ有効性を判断する装置。
【請求項９】
前記ビット対は、前記メモリセルに印加される電圧によって１１、０１、００、１０順に順次に変更される請求項４に記載の不揮発性メモリのデータ有効性を判断する装置。
【請求項１０】
所定メモリセルに印加される電圧によって所定ブロックに含まれた第１ページ及び第２ページにデータを格納する不揮発性メモリで、前記第１ページ及び前記第２ページの同じ位置のビット対が表す状態をカウントして第１カウント情報を生成するステップと、
前記生成された第１カウント情報を前記第２ページに格納するステップと、
前記格納された第１カウント情報と、前記第１ページ及び前記第２ページのデータから抽出された第２カウント情報とを比較して、前記データの有効性を判断するステップと、を含む不揮発性メモリのデータ有効性を判断する方法。
【請求項１１】
前記第２ページは、データ記録時にビットが１から０にのみ変わり、データ削除時に前記ビットが０から１にのみ変わる請求項１０に記載の不揮発性メモリのデータ有効性を判断する方法。
【請求項１２】
前記第１ページは、第１カウント情報領域とユーザが記録するデータが格納される第１データ領域とを備え、前記第２ページは、前記第１カウント情報が記録される第２カウント情報領域と前記ユーザが記録するデータが格納される第２データ領域とを備える請求項１０に記載の不揮発性メモリのデータ有効性を判断する方法。
【請求項１３】
前記有効性を判断するステップは、
前記第１データ領域及び前記第２データ領域で同じ位置のビット対が表す状態をカウントして前記第２カウント情報を生成するステップと、
前記第１カウント情報と前記第２カウント情報とが一致する場合、前記第１データ領域及び前記第２データ領域に格納されているデータを有効なものと判断するステップと、を含む請求項１２に記載の不揮発性メモリのデータ有効性を判断する方法。
【請求項１４】
前記ビット対は、前記メモリセルに印加される電圧によって１１、０１、００、１０順に順次に変更される請求項１０に記載の不揮発性メモリのデータ有効性を判断する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は不揮発性メモリに係り、より詳細には、不揮発性メモリに格納されたデータの有効性を安全に判断できる装置及び方法に関する。
【背景技術】
【０００２】
一般的に、家電機器、通信機器、セットトップボックスなどの内蔵型システム（Ｅｍｂｅｄｄｅｄ  Ｓｙｓｔｅｍ）では、データを格納して処理するための記録媒体として不揮発性メモリが多く使われている。
【０００３】
不揮発性メモリのうち主に使われるフラッシュメモリは、電気的にデータを削除したり、再記録することができる不揮発性記憶素子であり、マグネチックディスクメモリを基盤とする記録媒体に比べて電力消耗が少ないつつもハードディスクのような速いアクセスタイムを持ち、サイズが小さいために携帯機器などに適している。
【０００４】
このような不揮発性メモリにデータビットが格納される基本的なメカニズムは、メモリセルである。このようなメモリセルは、制御ゲート、フローティングゲート、ソース、及びドレインを含む単一電界効果トランジスターで構成される。この時、データビットは、メモリセルの閾値電圧が変化されるようにフローティングゲート上の電荷量を変更することによって格納される。また、メモリセルは、制御ゲートのワードラインを介して選択電圧を印加して判読される。
【０００５】
一般的なメモリセルは、１ビットに２種の状態を格納する格納能力を提供する。換言すれば、メモリセルは、印加される電圧によってデータが削除された状態であるビット１またはデータが格納された状態であるビット０を格納する格納能力を提供する。
【０００６】
この時、大容量の格納装置であるほど必須に要求される条件は低いビット当たりコストを具現せねばならないために、一つのメモリセルに複数のビットのデータを格納する技術についての研究が活発に行われつつある。
【０００７】
不揮発性メモリでビット当たりコストを画期的に低減できる技術が掲載された非特許文献１があるが、この非特許文献１には、メモリセル当たり２ビットに４種の状態の格納能力を提供する技術が含まれている。
【０００８】
このように、メモリセル当たり２ビットに４種の状態の格納能力を持つ不揮発性メモリは、一般的に多重レベルセル（Ｍｕｌｔｉ  Ｌｅｖｅｌ  Ｃｅｌｌ、以下、ＭＬＣと略す）不揮発性メモリといい、一つのメモリセルによって２個のページに対するデータビットを格納する。また、一つのメモリセルに対応する２個のページはそれぞれＬＳＢページ及びＭＳＢページと呼ばれ、データビットはＬＳＢページから格納される。
【０００９】
具体的に、ＭＬＣ不揮発性メモリは、図１のように２ビットで具現される４種の状態Ｓ１、Ｓ２、Ｓ３、Ｓ４を持ち、各状態は、ＬＳＢページのデータビットとＭＳＢページのデータビットとの対からなる。不揮発性メモリのブロックが削除されれば、ブロック内のあらゆるメモリセルはＳ１を持つ。この時、ＬＳＢページにデータビットを記録すればＳ２の状態に変更され、またＭＳＢページにデータビットを記録してＳ２からＳ３に変更される。一方、Ｓ１からＳ４に変更するためには、Ｓ１、Ｓ２、Ｓ３状態を経ねばならない。
【００１０】
一方、不揮発性メモリを基盤とするシステムは、その応用分野の特性上予測できない電源供給の中断が頻繁に発生する。したがって、不揮発性メモリの動作途中に電源供給が中断された場合に対する備えが必須である。
【００１１】
図２は、一般的な不揮発性メモリの構造が示された図面である。
一般的な不揮発性メモリ１００は、複数のページ１１１を含む複数のブロック１１０から形成され、各ブロック１１０のサイズは、１６ＫＢ、６４ＫＢ、１２８ＫＢ、２５６ＫＢなどでブロックに含まれたページの数とページサイズにより決定される。この時、ブロックは不揮発性メモリでの削除単位であり、ページは書き込み単位である。
【００１２】
このような不揮発性メモリ１００でデータを記録する途中に電源供給が中断されれば、記録しようとしたデータが完全に記録されていない状態になりうる（Ｉｎｃｏｍｐｌｅｔｅ  Ｐｒｏｇｒａｍ状態）。また、不揮発性メモリ１００に記録されているデータを削除する途中に電源供給が中断されれば、削除しようとしたデータが完全に削除されていない状態になりうる（Ｉｎｃｏｍｐｌｅｔｅ  Ｅｒａｓｅ状態）。したがって、今後不揮発性メモリ１００に記録されているデータを参照しようとする時、優先的に記録されているデータが有効であるかどうかを判断せねばならない。
【００１３】
従来には、データ記録中に突然に電源供給が中断される場合、データの有効性を判断するために、書き込み動作が完了したことを表す値が記録されるフィールドをスペア領域に別途に置く。そして、データ領域にデータがいずれも記録されれば、前記フィールドに“書き込み完了”を表す値を表示する。そして、データ有効性の検査時、前記フィールドに記録されている値によってデータの有効性を判断する。
【００１４】
また、データ削除中に突然に電源供給が中断される場合、データの有効性を判断するために、削除動作の完了を表す値が記録されるフィールドを各ブロックごとに置く。そして、データ領域のデータがいずれも削除されれば、前記フィールドに“削除完了”を表す値を表示する。そしてデータ有効性の検査時、前記フィールドに記録されている値によってデータの有効性を判断する。
【００１５】
しかし、前述した方法によって各フィールドに“削除完了”に対応する表示を記録するとしても、有効でないデータを完壁に検出できない。例えば、データの削除がデータ領域に対してのみ行われて前記各フィールドの値がそのまま残っている場合には、データが有効でなくなってもこれを見つけられない。また、前述した方法の場合、１ページに対して２回の書き込み作業（データ記録及び“書き込み完了”表示記録）が行われねばならないので、ＮＯＰ（Ｎｕｍｂｅｒ  Ｏｆ  Ｐａｒｔｉａｌ  ｐｒｏｇｒａｍ）が１回である不揮発性メモリには適していないという問題がある。
【００１６】
前述した方法以外にも、インバースチェックサム（Ｉｎｖｅｒｓｅ  Ｃｈｅｃｋｓｕｍ）を使用してデータの有効性を判断してもよい。しかし、インバースチェックサム方法は、不揮発性メモリが含むセルの電圧が低いほど高い数字を表すという仮定下に適用されるものであり、前記仮定が適用されないＭＬＣ（Ｍｕｌｔｉ  Ｌｅｖｅｌ  Ｃｅｌｌ）メモリでインバースチェックサムを使用する場合、有効でないデータが有効なデータと見なされる可能性があるという問題がある。
【００１７】
これにより、いろいろな発明（例えば、特許文献１）が提示されたが、前述した問題点は解決されていない。
【特許文献１】韓国公開特許第２００５−０７０６７２号公報
【非特許文献１】Ａ  Ｍｕｌｔｉｌｅｖｅｌ−Ｃｅｌｌ  ３２Ｍｂ  Ｆｌａｓｈ  Ｍｅｍｏｒｙ（１９９５年２月、ＩＥＥＥ、ＩＳＳＣＣ  Ｄｉｇｅｓｔ  ｏｆ  Ｔｅｃｈｎｉｃａｌ  Ｐａｐｅｒｓ、ｐｐ．１３２〜１３３、Ｍ．Ｂａｕｅｒら）
【発明の開示】
【発明が解決しようとする課題】
【００１８】
本発明は、少なくとも２ビットで具現される複数の状態によって複数のページに対するデータビットを格納するメモリセルを含む不揮発性メモリで、突然の電源供給の中断により発生した不完全なデータの有効性を正確に判断できる装置及び方法を提供するところにその目的がある。
【００１９】
本発明の目的は、以上で言及した目的に制限されず、言及されていない他の目的は下の記載から当業者に明確に理解されうる。
【課題を解決するための手段】
【００２０】
前記目的を達成するために、本発明の実施形態による不揮発性メモリは、所定メモリセルに印加される電圧によって所定ブロックに含まれた複数のページにデータを格納する不揮発性メモリにおいて、前記ブロックは、ユーザが記録するデータが格納される第１データ領域を含む第１ページと、前記ユーザが記録するデータが格納される第２データ領域を含む第２ページと、を含み、前記第２ページは、前記第１データ領域及び前記第２データ領域で同じ位置のビット対が表す状態がカウントされたカウント情報が記録される。
【００２１】
また、前記目的を達成するために、本発明の実施形態による不揮発性メモリのデータ有効性を判断する装置は、所定メモリセルに印加される電圧によって所定ブロックに含まれた第１ページ及び第２ページにデータを格納する不揮発性メモリと、前記第１ページ及び前記第２ページで同じ位置のビット対が表す状態をカウントして第１カウント情報を生成するカウント部と、前記生成された第１カウント情報を前記第２ページに格納する制御部と、前記格納された第１カウント情報と、前記第１ページ及び前記第２ページのデータから抽出された第２カウント情報とを比較して、前記データの有効性を判断する有効性判断部を備える。
【００２２】
また、前記目的を達成するために、本発明の実施形態による  不揮発性メモリのデータ有効性を判断する方法は、所定メモリセルに印加される電圧によって所定ブロックに含まれた第１ページ及び第２ページにデータを格納する不揮発性メモリで、前記第１ページ及び前記第２ページの同じ位置のビット対が表す状態をカウントして第１カウント情報を生成するステップと、前記生成された第１カウント情報を前記第２ページに格納するステップと、前記格納された第１カウント情報と、前記第１ページ及び前記第２ページのデータから抽出された第２カウント情報とを比較して、前記データの有効性を判断するステップを含む。
【発明の効果】
【００２３】
本発明による不揮発性メモリ、前記不揮発性メモリのデータ有効性を判断する装置及び方法によれば、次のような効果が一つあるいはそれ以上ある。
【００２４】
不揮発性メモリにデータビットを記録する途中に突然に電源供給が中断されても記録されたデータビットの有効性を容易に判断できる。
【００２５】
また、ＮＯＰの制限なしにデータの有効性を判断できる。
また、同じ状態を持つスロットの数情報のみを記録するので、メタデータを記録する場合に比べて不揮発性メモリの空間を効率的に使用できる。
【発明を実施するための最良の形態】
【００２６】
その他の実施例の具体的な事項は詳細な説明及び図面に含まれている。
【００２７】
本発明の利点及び特徴、そしてこれを達成する方法は添付された図面に基づいて詳細に後述されている実施例を参照すれば明確になる。しかし、本発明は以下で開示される実施例に限定されるものではなく、この実施例から外れて多様な形に具現でき、本明細書で説明する実施例は本発明の開示を完全にし、本発明が属する技術分野で当業者に発明の範ちゅうを完全に報せるために提供されるものであり、本発明は請求項及び発明の詳細な説明により定義されるだけである。一方、明細書全体に亙って同一な参照符号は同一な構成要素を示す。
【００２８】
以下、添付した図面を参照して本発明の好ましい実施形態について詳細に説明する。まず、本発明の実施形態による不揮発性メモリについて説明する。この時、フローチャートの各ブロックとフロ−チャートの組合わせはコンピュータプログラムインストラクションにより実行可能なのが理解できるであろう。
【００２９】
これらコンピュータプログラムインストラクションは、汎用コンピュータ、特殊用コンピュータまたはその他のプログラマブルデータプロセッシング装備のプロセッサーに搭載されうるので、コンピュータまたはその他のプログラマブルデータプロセッシング装備のプロセッサーによって実行されるそのインストラクションがフローチャートのブロックで説明された機能を行う手段を生成するように機構を作れる。
【００３０】
これらコンピュータプログラムインストラクションは特定方式で機能を具現するためにコンピュータまたはその他のプログラマブルデータプロセッシング装備に備えられるコンピュータ利用可能またはコンピュータ判読可能メモリに格納されることも可能なので、そのコンピュータ利用可能またはコンピュータ判読可能メモリに格納されたインストラクションはフローチャートのブロックで説明された機能を行うインストラクション手段を内包する製造品目を生産することも可能である。コンピュータプログラムインストラクションはコンピュータまたはその他のプログラム可能なデータプロセッシング装備上に搭載することも可能なので、コンピュータまたはその他のプログラマブルデータプロセッシング装備上で一連の動作段階が実行されてコンピュータで実行されるプロセスを生成し、コンピュータまたはその他のプログラマブルデータプロセッシング装備を行うインストラクションはフローチャートのブロックで説明された機能を実行するための段階を提供することも可能である。
【００３１】
また、各ブロックは特定の論理的機能を行うための一つ以上の実行可能なインストラクションを含むモジュール、セグメントまたはコードの一部を示すことができる。また、いくつの代替実行例では、ブロックで言及された機能が順序から外れて発生することも可能であるということに注目せねばならない。例えば、連続して図示されている２つのブロックは、実質的に同時に行われてもよく、またはそのブロックが時々該当する機能によって逆順に行われてもよい。
【００３２】
図３は、本発明の実施形態による不揮発性メモリの構造が示された図面である。
図示されたように、本発明の実施形態による不揮発性メモリ４００は、複数のページ４１０、４２０を備える複数のブロック４０１から形成されている。本発明の実施形態でページは、データの読み取り／書き込み単位と理解し、ブロックはデータの削除単位と理解しうる。
【００３３】
本発明の実施形態による不揮発性メモリ４００は、ＭＬＣ不揮発性メモリであることが好ましい。ＭＬＣ不揮発性メモリは、少なくとも２ビットで具現される複数の状態によって複数のページにデータを格納するメモリセルを備える。以下の実施形態では、ＭＬＣ不揮発性メモリであって、２−レベルＭＬＣ不揮発性メモリを例として本発明の実施形態を説明する。
【００３４】
２−レベルＭＬＣ不揮発性メモリは、２ビットで具現される４種の状態によって二つのページ、すなわち、ＬＳＢページ及びＭＳＢページにデータを格納するメモリセルを備える。ここで、同じメモリセルによりデータビットが格納されるＬＳＢページ及びＭＳＢページを互いにバインディングされたと表現するが、バインディングされるページは互いに連続的に位置してもよく、位置しなくてもよい。例えば、図３のように、ページ４ｎ＋０とページ４ｎ＋２とがバインディングされ、ページ４ｎ＋１とページ４ｎ＋３とがバインディングされうる。この場合、４ｎ＋０ページと４ｎ＋１ページはＬＳＢページに該当し、４ｎ＋２ページと４ｎ＋３ページはＭＳＢページに該当しうる。以下の説明では、バインディングされたページのうちＬＳＢページを第１ページ４１０と表示し、ＭＳＢページを第２ページ４２０と表示する。
【００３５】
第１ページ４１０及び第２ページ４２０についてのさらに具体的な説明のために、図４を参照する。図４は、バインディングされた第１ページ４１０及び第２ページ４２０の構造が示された図面である。
【００３６】
図示されたように、第１ページ４１０は、第１データ領域４１１及び第１カウント情報領域４１２を含み、第２ページ４２０は、第２データ領域４２１及び第２カウント情報領域４２２を含む。この時、第１データ領域４１１及び第２データ領域４２１にはユーザが記録するデータビットが格納される。ここで、図５を参照して、バインディングされた第１ページ４１０及び第２ページ４２０にデータビットを記録する過程について説明する。
【００３７】
図５は、２−レベルＭＬＣ不揮発性メモリへのデータの記録時、メモリセルに印加される電圧によって第１ページ４１０のデータビット及び第２ページ４２０のデータビット対の状態変化を表したものである。
【００３８】
２−レベルＭＬＣ不揮発性メモリの場合、メモリセルにより具現される状態は、第１ページ４１０に格納されたデータビット及び第２ページ４２０に格納されたデータビット対からなるが、このようなデータビット対は、ブロックが削除された状態で１１になる。ＭＬＣ不揮発性メモリの場合、第１ページ４１０からデータビットが格納されるために、第１ページ４１０にデータが格納された場合のデータビット対は０１になる。次いで、第２ページ４２０にもデータビットが格納されれば、データビット対は００になる。以下の説明では、バインディングされた第１ページ４１０及び第２ページ４２０のデータ領域４１１、４２１で位置が同じデータビット対をスロットと称する。
【００３９】
一方、第２ページ４２０の第２カウント情報領域４２２には、第１データ領域４１１及び第２データ領域４２１に記録されるデータの有効性を判断するためのカウント情報が格納される。ここで、カウント情報は、同じ状態を持つスロットの数情報を含む。
【００４０】
図５で前述したように、２−レベルＭＬＣ不揮発性メモリでスロットは、第１ページ４１０のデータビット値及び第２ページ４２０のデータビット値により４種の状態を持つことができる。すなわち、第１ページ４１０のデータビットが１であり、第２ページ４２０のデータビットが１である第１状態（Ｓ１）、第１ページ４１０のデータビットが０であり、第２ページ４２０のデータビットが１である第２状態（Ｓ２）、第１ページ４１０のデータビットが０であり、第２ページ４２０のデータビットが０である第３状態（Ｓ３）及び第１ページ４１０のデータビットが１であり、第２ページ４２０のデータビットが０である第４状態（Ｓ４）を持つことができる。
【００４１】
したがって、第２カウント情報領域４２２に記録されるカウント情報は、第１状態であるスロットの数情報、第２状態であるスロットの数情報、第３状態であるスロットの数情報及び第４状態であるスロットの数情報を含むことができる。このようなカウント情報は、第２カウント情報領域４２２に各状態別に区分されて格納される。このために、第２カウント情報領域４２２は、各状態に対応する複数のフィールドに区分できる。例えば、第２カウント情報領域４２２は、図４に示したように、第１状態であるスロットの数が格納される第１フィールド４５０、第２状態であるスロットの数が格納される第２フィールド４６０、第３状態であるスロットの数が格納される第３フィールド４７０及び第４状態であるスロットの数が格納される第４フィールド４８０を含むことができる。
【００４２】
前述したように、カウント情報は第２カウント情報領域４２２に記録されることが好ましい。なぜなら、第２カウント情報領域４２２に含まれたデータビットの状態変化は、データ記録過程やデータ削除過程で一定の方向性を表すためである。これについてのさらに具体的な説明のために図６及び図７を参照する。
【００４３】
図６は、不揮発性メモリ４００にデータを記録する場合、メモリセルに印加される電圧によって第１ページ４１０及び第２ページ４２０に含まれたデータビットの状態変化を図示したものである。そして、図７は、不揮発性メモリ４００でデータを削除する場合、第１ページ４１０及び第２ページ４２０に含まれたデータビットの状態変化を図示したものである。
【００４４】
図６及び図７を参照すれば、データが記録されていない状態でスロットは、１１、すなわち、第１状態Ｓ１であることが分かる。このような状態で、メモリセルに電圧を印加すれば、印加された電圧の大きさによってスロットの各ビットに０が記録される。
【００４５】
第１ページ４１０の場合、データを削除する動作中に電源供給が中断される場合、次のような状況が発生しうる。削除前に第に１ページ４１０に含まれたビットの状態が第４状態であり、削除動作によりセル状態が第４状態から第１状態に進行する間に電源供給が中断される場合、第１ページ４１０に含まれたビットの状態は１から０に変わることもあり、１の状態のまま残っていることもある。もし、削除する前に第１ページ４１０に含まれたビットの状態が第３状態であり、削除動作によりセル状態が第３状態から第１状態に進行する間に電源供給が中断される場合、第１ページに含まれたビットの状態は０から１になることもあり、０の状態のまま残っていることもある。
【００４６】
結論的に、第１ページ４１０に含まれたデータビットの状態は、削除動作により１→０に変わるか、０→１に変わる。したがって、第１ページ４１０の場合、削除動作中に電源供給が中断される場合にビットの状態変化が特定の方向性を持つとは言えない。したがって、カウント情報を第１カウント情報領域４１２に記録すれば、データ削除動作中に電源供給の中断によりデータ領域及び／またはカウント情報領域に記録されているデータビットにエラーが発生しても、データ領域４１１、４２１から抽出されたカウント情報と第１カウント情報領域４１２のカウント情報とが一致する場合が発生しうる。この場合、データ領域４１１、４２１に記録されているデータビットが有効でないが、カウント情報が同一なために有効なデータと判別できる。
【００４７】
しかし、第２ページ４２０に含まれたデータビットの状態は、書き込み動作中に電源供給が中断される場合、１の状態をそのまま維持するか、あるいは１から０にのみ変化し、削除動作中に電源供給が中断される場合には０をそのまま維持するか、あるいは０から１にのみ変化する。
【００４８】
結論的に、第２ページ４２０に含まれたデータビットの状態は、書き込み動作中には１→０にのみ変わり、削除動作中には０→１にのみ変わりうる。したがって、第２ページ４２０の場合、ビットの状態変化が一定の方向性を持つと見られる。したがって、カウント情報を第２カウント情報領域４２２に記録すれば、データ記録中に電源供給の中断によりデータ領域及び／または第２カウント情報領域４２２に記録されているデータビットにエラーが発生しても、データ領域から抽出されたカウント情報と第２カウント情報領域４２２のカウント情報とが一致する場合は発生しない。
【００４９】
さらに具体的に、データを記録する過程で第２ページ４２０に含まれたデータビットの状態は１→０にのみ変わるので、データ記録過程中にエラーが発生すれば、０が記録されねばならないビットに０が記録されずに１が記録された状態に残る。換言すれば、カウント情報にエラーが発生しても各フィールドが表すスロットの数は本来記録しようとしたスロットの数に比べて増加するだけで、本来記録しようとしたスロットの数に比べて減少しない。したがって、データ領域から抽出されたカウント情報と第２カウント情報領域４２２のカウント情報とが一致する場合が発生しない。その結果、データ領域４１１、４２１のデータビットから抽出されたカウント情報と第２カウント情報領域４２２のカウント情報とを比較してデータ有効性を判別できる。
【００５０】
これと類似して、カウント情報を第２カウント情報領域４２２に記録する場合、不揮発性メモリ４００のデータが不完全に削除されても残っているデータビットの有効性を判別できる。さらに具体的に、図７を参照すれば、データ削除過程中に第２ページ４２０に含まれたデータビットの状態は０→１にのみ変わる。したがって、データ削除過程中にエラーが発生すれば、ビットが１になれずに０の状態に残っている。換言すれば、不完全に削除される場合、各フィールドが表すスロットの数は本来記録されていたスロットの数に比べて増加する。したがって、データ領域４１１、４２１から抽出されたカウント情報と第２カウント情報領域４２２のカウント情報とを比較してデータ有効性を判別できる。
【００５１】
次いで、図８は、本発明の実施形態による不揮発性メモリに格納されたデータの有効性を判断する装置（以下、‘データ有効性判断装置’という）８００の構成を図示したものである。
【００５２】
図８を参照すれば、本発明の実施形態によるデータ有効性判断装置８００は、不揮発性メモリ４００、カウント部８３０、制御部８２０及び有効性判断部８４０を備えて構成される。
【００５３】
不揮発性メモリ４００は、前述した図４の不揮発性メモリ４００と理解される。したがって、図８に示された不揮発性メモリ４００は、前述した図４の不揮発性メモリ４００と同じ構造から形成されており、その構成要素も図４の不揮発性メモリ４００と同じものと理解されうる。
【００５４】
カウント部８３０は、不揮発性メモリ４００のバインディングされた第１ページ及び第２ページに記録するデータをスロットに分けて同じ状態を持つスロットの数をカウントする。すなわち、カウント部８３０は、第１状態であるスロットの数、第２状態であるスロットの数、第３状態であるスロットの数及び第４状態であるスロットの数をそれぞれカウントしてカウント情報を生成する。カウント部８３０により生成されたカウント情報は、後述する制御部８２０に提供される。
【００５５】
また、カウント部８３０は、不揮発性メモリ４００のデータ領域４１１、４２１に記録されているデータを参照する場合、参照するデータからカウント情報を抽出する。すなわち、カウント部８３０は、参照するデータから同じ状態を持つスロットの数をカウントしてカウント情報を抽出する。カウント部８３０により抽出されたカウント情報は後述する有効性判断部８４０に提供される。
【００５６】
制御部８２０は、不揮発性メモリ４００のメモリセルに印加される電圧の大きさを調整してメモリセルの状態を変更することによって、バインディングされた第１ページ４１０及び第２ページ４２０にデータビットを格納する。この時、制御部８２０は、第１ページ４１０からデータビットを格納した後、第２ページ４２０にデータビットを格納する。第２ページ４２０にデータビットを格納する時、制御部８２０は、第２データ領域４２１には今後参照されるデータを記録し、第２カウント情報領域４２２にはカウント部８３０により生成されたカウント情報を記録する。
【００５７】
有効性判断部８４０は、不揮発性メモリ４００に記録されているデータを参照する時、データの有効性を判断する。この時、有効性判断部８４０は、データ領域のデータから抽出されたカウント情報及び第２カウント情報領域４２２に記録されているカウント情報を比較して有効性を判断する。
【００５８】
さらに具体的に前述したカウント部８３０により、データ領域４１１、４２１のデータからカウント情報、すなわち、第１状態であるスロットの数、第２状態であるスロットの数、第３状態であるスロットの数及び第４状態であるスロットの数が抽出されれば、有効性判断部８４０は、抽出されたカウント情報と第２カウント情報領域４２２のカウント情報とで各状態別スロットの数を順に比較する。
【００５９】
比較結果、各状態別にスロットの数がいずれも一致する場合、有効性判断部８４０は、参照するデータが有効であると判断する。例えば、抽出されたカウント情報で第１状態であるスロットは２つ、第２状態であるスロットは１つ、第３状態であるスロットは１つ、第４状態であるスロットは２つであると仮定する。そして、第２カウント情報領域４２２のカウント情報で第１状態であるスロットは２つ、第２状態であるスロットは１つ、第３状態であるスロットは１つ、第４状態であるスロットは２つであると仮定する。このような場合、二つのカウント情報で各状態別にスロットの数がいずれも一致する。したがって、有効性判断部８４０は、データ領域４１１、４２１のデータが有効であると判断できる。
【００６０】
比較結果、各状態別にスロットの数がいずれも一致しない場合、すなわち、いかなる状態でもスロットの数が一致しない場合、有効性判断部８４０は、参照するデータが有効でないと判断する。例えば、二つのカウント情報で同じ状態であるスロットの数を各状態別に比較した結果、第１状態であるスロットの数は互いに一致し、第２状態であるスロットの数は互いに一致しない場合、有効性判断部８４０は参照するデータが有効でないと判断する。
【００６１】
ここで、図９及び図１０を参照してデータを記録するか、または削除する中に電源供給の中断によりエラーが発生したデータの有効性を判別する方法について説明する。
【００６２】
図９は、不揮発性メモリ４００にデータを記録する途中に電源供給の中断によりエラーが発生したデータの有効性を判別する方法を説明するための図面である。
【００６３】
図９でユーザが不揮発性メモリ４００に記録しようとするデータを説明すれば、第１状態であるスロットの数、第２状態であるスロットの数、第３状態であるスロットの数及び第４状態であるスロットの数はそれぞれ２つであることが分かる。
【００６４】
このようなデータを不揮発性メモリ４００に記録する過程で電源供給が中断された場合、第１データ領域４１１及び第２データ領域４２１に記録されるデータビットまたは第２カウント情報領域４２２に記録されるカウント情報にエラーが発生しうる。Ｃａｓｅ１は、第１データ領域４１１及び第２データ領域４２１に記録されるデータビットにエラーが発生した場合を例示している。
【００６５】
Ｃａｓｅ１で第１データ領域４１１及び第２データ領域４２１を説明すれば、第２状態で記録されねばならない第２のスロットが第１状態に残っていることが確認できる。したがって、現在データ領域に記録されているデータビットから得られたカウント情報は、第２カウント情報領域４２２に記録されているカウント情報と一致しないということが分かる。さらに具体的に、現在データ領域に記録されているデータビットから得られたカウント情報のうち第１状態であるスロットの数は３つである一方、第２カウント情報領域４２２に記録されているカウント情報のうち第１状態であるスロットの数は２つで互いに一致しない。また、現在データ領域に記録されているデータビットから得られたカウント情報のうち第２状態であるスロットの数は１つである一方、第２カウント情報領域４２２に記録されているカウント情報のうち第２状態であるスロットの数は２つで互いに一致しない。このような場合、データ領域に記録されているデータビットは有効でないと判断されうる。
【００６６】
一方、データ記録過程で電源供給が中断される場合、第１データ領域４１１及び第２データ領域４２１に記録されるデータビット及び第２カウント情報領域４２２に記録されるカウント情報にいずれもエラーが発生しうる。Ｃａｓｅ２は、このような場合のデータを例示している。
【００６７】
Ｃａｓｅ２でデータ領域を説明すれば、第２状態になるべき第２のスロットが第１状態に残ってあることが確認できる。そして、第２カウント情報領域４２２を説明すれば、第１状態であるスロットの数情報が記録されるフィールドのうち一つのビットが、０が記録されずに１である状態に残っていることが確認できる。
【００６８】
このような場合、現在データ領域に記録されているデータビットから得られたカウント情報と第２カウント情報領域４２２に記録されているカウント情報のうち第１状態であるスロットの数は互いに一致する。しかし、二つのカウント情報のうち第２状態であるスロットの数を比較すると、その結果が互いに一致しない。したがって、データ領域に記録されているデータビットは有効でないと判断されうる。
【００６９】
図１０は、不揮発性メモリ４００のデータを削除する途中に電源供給の中断によりエラーが発生したデータの有効性を判別する方法を説明するための図面である。
【００７０】
図１０で不揮発性メモリ４００に記録されていたデータを説明すれば、第１状態であるスロットの数、第２状態であるスロットの数、第３状態であるスロットの数及び第４状態であるスロットの数はそれぞれ２つであることが分かる。このようなデータが記録されている不揮発性メモリ４００でデータを削除する途中に電源供給が中断されれば、データ領域及び／またはカウント情報領域のデータビットが完全に削除されていない。
【００７１】
Ｃａｓｅ１は、データ削除過程で電源供給が中断される場合、データ領域のデータビットが不完全に削除された場合を例示している。
【００７２】
Ｃａｓｅ１で第２カウント情報領域４２２を説明すれば、カウント情報は削除されずにそのまま残っている一方、データ領域では第２状態であった第２のスロットのみ第１状態に変わったことが分かる。したがって、現在データ領域に記録されているデータビットから得られたカウント情報は、第２カウント情報領域４２２に記録されているカウント情報と一致しないことが分かる。さらに具体的に、現在データ領域に記録されているデータビットから得られたカウント情報のうち第１状態であるスロットの数は３つである一方、第２カウント情報領域４２２に記録されているカウント情報のうち第１状態であるスロットの数は２つで互いに一致しない。このような場合、データ領域に記録されているデータビットは有効でないと判断されうる。
【００７３】
Ｃａｓｅ２は、データ削除過程で電源供給が中断される場合、データ領域のデータビット及び第２カウント情報領域４２２のデータビットがいずれも不完全に削除された場合を例示している。
【００７４】
Ｃａｓｅ２でデータ領域を説明すれば、第３のスロットの状態のみ１１に変更されたことが確認できる。そして、第２カウント情報領域４２２を説明すれば、第１フィールド４５０のみ１１になったことが確認できる。このような場合、データ領域がデータビットから得られたカウント情報と第２カウント情報領域４２２に記録されているカウント情報のうち第１状態であるスロットの数及び第２状態であるスロットの数は互いに一致する。しかし第３状態であるスロットの数及び第４状態であるスロットの数は互いに一致しない。したがって、データ領域に記録されているデータビットは有効でないと判断されうる。
【００７５】
次いで、図１１は、本発明の実施形態による不揮発性メモリ４００にデータを格納する方法を示したフローチャートである。
【００７６】
まず、カウント部８３０は、不揮発性メモリ４００に記録するデータをスロット単位に分けて同じ状態を持つスロットの数をカウントする（Ｓ８１０）。すなわち、カウント部８３０は、不揮発性メモリ４００に記録するデータから第１状態であるスロットの数、第２状態であるスロットの数、第３状態であるスロットの数及び第４状態であるスロットの数をカウントする。
【００７７】
カウント部８３０によりカウント情報が生成されれば、制御部８２０は、第１ページ４１０からデータを記録する（Ｓ８２０）。すなわち、記録するデータのうち第１ページ４１０に記録されるデータを第１データ領域４１１に記録する。
次いで、制御部８２０は、第１ページ４１０とバインディングされた第２ページ４２０にデータを記録する（Ｓ８３０）。すなわち、制御部８２０は記録するデータの中で第２ページ４２０に記録されるデータを第２データ領域４２１に記録する時に共に、カウント部８３０により生成されたカウント情報を第２カウント情報領域４２２に状態別に記録する。例えば、第１フィールド４５０には第１状態であるスロットの数を、第２フィールド４６０には第２状態であるスロットの数を、第３フィールド４７０には第３状態であるスロットの数を、第４フィールド４８０には第４状態であるスロットの数を記録する。
【００７８】
図１２は、本発明の実施形態による不揮発性メモリ４００のデータ有効性を判断する方法を示したフローチャートである。
【００７９】
まず、不揮発性メモリ４００に記録されているデータを参照する場合、カウント部８３０は、データ領域のデータからカウント情報を抽出する（Ｓ９１０）。すなわち、カウント部８３０は、データ領域のデータから第１状態であるスロットの数、第２状態であるスロットの数、第３状態であるスロットの数及び第４状態であるスロットの数をカウントする。
【００８０】
次いで、有効性判断部８４０は、カウント部８３０により抽出されたカウント情報と第２カウント情報領域４２２に記録されているカウント情報とで各状態別にスロットの数を順に比較する。
【００８１】
比較結果、各状態別にスロットの数がいずれも一致する場合、有効性判断部８４０は、参照するデータが有効であると判断する。さらに具体的に、有効性判断部８４０は、二つのカウント情報のうち第１状態であるスロットの数が互いに一致するかどうかを判断する（Ｓ９２０）。判断結果、第１状態であるスロットの数が互いに一致する場合（Ｓ９２０、はい）、有効性判断部８４０は、二つのカウント情報のうち第２状態であるスロットの数が互いに一致するかを判断する（Ｓ９３０）。判断結果、第２状態であるスロットの数が互いに一致する場合（Ｓ９３０、はい）、有効性判断部８４０は、二つのカウント情報のうち第３状態であるスロットの数が互いに一致するかを判断する（Ｓ９４０）。判断結果、第３状態であるスロットの数が互いに一致する場合（Ｓ９４０、はい）、有効性判断部８４０は、第４状態であるスロットの数が互いに一致するかを判断する（Ｓ９５０）。判断結果、第４状態であるスロットの数が互いに一致する場合（Ｓ９５０、はい）、有効性判断部８４０は、参照するデータが有効であると判断する（Ｓ９６０）。例えば、カウント部８３０により抽出されたカウント情報で第１状態、第２状態、第３状態及び第４状態であるスロットの数がそれぞれ２つであると仮定する。そして、第２カウント情報領域４２２に記録されているカウント情報を参照した結果、第１状態、第２状態、第３状態及び第４状態であるスロットの数がそれぞれ２つであると仮定する。この場合、二つのカウント情報で第１状態であるスロットの数は互いに同一である。そして、第２状態であるスロットの数も同一である。第３状態であるスロットの数も互いに同一であり、第４状態であるスロットの数もやはり同一である。したがって、有効性判断部８４０は、参照するデータが有効であると判断する。
【００８２】
一方、二つのカウント情報で各状態別にスロットの数を順に比較した結果、各状態別スロットの数がいずれか一つでも一致しない場合（Ｓ９２０、いいえ）（Ｓ９３０、いいえ）（Ｓ９４０、いいえ）（Ｓ９５０、いいえ）、有効性判断部８４０は、参照するデータが有効でないと判断する（Ｓ９７０）。例えば、カウント部８３０により抽出されたカウント情報で第１状態であるスロットが２つ、第２状態であるスロットが２つ、第３状態であるスロットが３つ、第４状態であるスロットが１つであると仮定する。そして、第２カウント情報領域４２２に記録されているカウント情報を参照した結果、第１状態、第２状態、第３状態及び第４状態であるスロットの数がそれぞれ２つであると仮定する。この時、二つのカウント情報で第１状態であるスロットの数は互いに一致し、第２状態であるスロットの数も一致する。しかし、第３状態であるスロットの数と、第４状態であるスロットの数とは互いに一致しない。したがって、有効性判断部８４０は、参照するデータが有効でないと判断する。
【００８３】
前述した実施形態では、２−レベルＭＬＣ不揮発性メモリの場合を例として説明したが、本発明はこれに限定されるものではなく、２−レベル以上のＭＬＣ不揮発性メモリにも適用できる。
【００８４】
図１３は、本発明の実施形態によって、ｎ−レベルＭＬＣ不揮発性メモリの構造を図示したものである。ｎ−レベルＭＬＣ不揮発性メモリの場合、メモリセルに印加される電圧によってｎ個のページにデータビットを記録する。この場合、スロットはｎ個のビットを含み、２ｎ個の状態を持つことができる。同じ状態を持つスロットの数情報を含むカウント情報は、ＭＳＢページのカウント情報領域に記録されることが好ましいが、ＭＳＢページはデータ記録時、ビットの状態が１→０にのみ変わるページと定義できる。このようなＭＳＢページのカウント情報領域は２ｎ個のフィールドに区分されて、カウント情報が状態別に格納されうる。例えば、最初のフィールドには第１状態であるスロットの数情報が記録され、２ｎ番目のフィールドには第（２ｎ）状態であるスロットの数情報が記録されうる。
【００８５】
以上のように本発明による不揮発性メモリ、前記不揮発性メモリのデータの有効性を判断する装置及び方法を例示された図面を参照して説明したが、本明細書に開示された実施形態と図面によって本発明は限定されず、その発明の技術思想範囲内で当業者により多様な変形がなされうるということは言うまでもない。
【産業上の利用可能性】
【００８６】
本発明は、ＭＬＣ不揮発性メモリに好適に用いられる。
【図面の簡単な説明】
【００８７】
【図１】一般的なＭＬＣ不揮発性メモリのメモリセルにより具現される状態を示した図である。
【図２】一般的な不揮発性メモリの構造を示した図である。
【図３】本発明の実施形態による不揮発性メモリの構造を示した図である。
【図４】本発明の実施形態による第１ページ及び第２ページを示した図である。
【図５】本発明の実施形態による不揮発性メモリでメモリセルに印加される電圧によるスロットの状態変化を示した図である。
【図６】本発明の実施形態による不揮発性メモリにデータを記録する場合、スロットの状態変化を示した図である。
【図７】本発明の実施形態による不揮発性メモリでデータを削除する場合、スロットの状態変化を示した図である。
【図８】本発明の実施形態による不揮発性メモリのデータ有効性を判断する装置の構造を示した図である。
【図９】不揮発性メモリにデータを記録する途中、電源供給の中断によりエラーが発生したデータに対して有効性を判別する方法を説明するための図である。
【図１０】不揮発性メモリのデータを削除する途中、電源供給の中断によりエラーが発生したデータに対して有効性を判別する方法を説明するための図である。
【図１１】本発明の実施形態による不揮発性メモリにデータビットを格納する方法を示したフローチャートである。
【図１２】本発明の実施形態による不揮発性メモリのデータ有効性を判断する方法を示したフローチャートである。
【図１３】本発明が適用されるＭＬＣ不揮発性メモリの構造のうち一部を例示した図面である。
【符号の説明】
【００８８】
４００      不揮発性メモリ
４１０      第１ページ
４２０      第２ページ
８２０      制御部
８３０      カウント部
８４０      有効性判断部
【図１】
2008010140.tif 000003
【図２】
2008010140.tif 000004
【図３】
2008010140.tif 000005
【図４】
2008010140.tif 000006
【図５】
2008010140.tif 000007
【図６】
2008010140.tif 000008
【図７】
2008010140.tif 000009
【図８】
2008010140.tif 000010
【図９】
2008010140.tif 000011
【図１０】
2008010140.tif 000012
【図１１】
2008010140.tif 000013
【図１２】
2008010140.tif 000014
【図１３】
2008010140.tif 000015