(57)【特許請求の範囲】
【請求項１】
フローティングゲートトランジスタを含むメモリセルからデータを取り出す方法であって、
前記フローティングゲートトランジスタを通過する電流を検出することまたは前記フローティングゲートトランジスタの閾電圧値を検出することによって、メモリセルのアレイ中の選択されたメモリセルによって記憶されたデータディジットを示す電荷に関連する値を検出し、
エラー訂正が、少なくとも１つの隣接するメモリセルから、選択されたメモリセルの電荷蓄積ノード中にトラップされた電子によってもたらされた前記検出された値中の誤りを、前記データディジットの状態を決定するために、前記検出された値と閾値とを比較する前に訂正するように、ビタビアルゴリズムに従って前記検出された値を処理すること、
を含む方法。
【請求項２】
前記検出された値を処理することは、
選択されたメモリセルの各可能性のある状態に繋がる経路に関連する誤りを、前記検出された値と前記少なくとも１つの隣接するメモリセルから前記選択されたメモリセルの前記電荷蓄積ノード中にトラップされた前記電荷の表れとに少なくとも部分的に基づいて決定し、
前記決定された誤りの累積に少なくとも部分的に基づいて、累積された誤りが最小となるように各可能性のある状態に繋がる前記経路の１つを選択すること、
を含む、請求項１に記載の方法。
【請求項３】
前記メモリセルは列および行に配置され、前記決定された値を処理することは、誤りを検出して、メモリセルの選択された行の各々に対して前記経路の１つを選択することを連続的に繰り返すことを含む、請求項２に記載の方法。
【請求項４】
前記検出された値を処理することは、さらに、
前記メモリセルの選択された行の中の最後のメモリセルの状態を、前記最後のメモリセルの可能性のある状態に繋がる経路に関連する誤りに少なくとも部分的に基づいて選択し、
累積された誤りが最小である前記選択された経路を用いて、前記最後のメモリセルの前記選択された状態から遡って、前記メモリセルの選択された行の中の前記他のメモリセルの各々の状態を検出し、それによって前記メモリセルの選択された行の中に記憶された前記データを決定すること、
を含む、請求項３に記載の方法。
【請求項５】
前記選択されたメモリセルの前記電荷蓄積ノード中にトラップされた前記電子は、前記選択されたメモリセルに隣接する少なくとも２つのメモリセルからのものである、請求項１に記載の方法。
【請求項６】
前記メモリセルのアレイ中のメモリセルは、列および行に配列され、前記少なくとも１つの隣接するメモリセルは、対応する選択されたメモリセルと同一の前記メモリセルのアレイ中の行に配置されているメモリセルを含む、請求項１に記載の方法。
【請求項７】
前記メモリセルのアレイ中のメモリセルは、列および行に配列され、前記少なくとも１つの隣接するメモリセルは、対応する選択されたメモリセルと同一の前記メモリセルのアレイ中の列に配列されているメモリセルを含む、請求項１に記載の方法。
【請求項８】
前記処理は、少なくとも1つのエラーを有していると疑われるデータの選択されたブロックについてのみ実行される、請求項１に記載の方法。
【請求項９】
フローティングゲートトランジスタを各々含むメモリセルのアレイのメモリセルからデータを取り出す方法であって、
第１のメモリセルの前記フローティングゲートトランジスタに読み出し電圧を印加し、前記フローティングゲートトランジスタを通過する電流または前記フローティングゲートトランジスタの閾電圧値を検出することによって、メモリセルのアレイ内の前記第１のメモリセルの電気状態を検出し、
前記第１のメモリセルに隣接する前記メモリセルのアレイの少なくとも１つのメモリセルから前記第１のメモリセルの電荷蓄積ノード中にトラップされた電子によってもたらされた前記検出された電気状態の誤りが、論理状態を決定するために、前記検出された値と閾値とを比較する前に訂正されるように、前記第１のメモリセルの前記電気状態と、前記第１のメモリセルに隣接する前記メモリセルのアレイの前記少なくとも１つのメモリセルに関連する電気状態または論理状態の少なくとも１つとにビタビアルゴリズムを実行することによって、前記検出された電気状態と、前記第１のメモリセルに隣接する前記メモリセルのアレイの前記少なくとも１つのメモリセルに関連する前記電気状態または前記論理状態の少なくとも１つとに少なくとも一部が基づいて、前記第１のメモリセルに対する前記論理状態を決定すること、
を含む方法。
【請求項１０】
装置であって、
メモリセルのアレイであって、前記メモリセルの各々が、フローティングゲートを含むフローティングゲートトランジスタを含み且つデータディジットを示す電荷を蓄積するように構成されているメモリセルのアレイと、
前記フローティングゲートトランジスタを通過する電流または前記フローティングゲートトランジスタの閾電圧値を検出することによって、前記メモリセルの選択されたメモリセル中に蓄積された電荷に関連する値を検出するように構成された検出回路と、
エラー訂正が、少なくとも１つの隣接するメモリセルからの信号間干渉によってもたらされた前記検出回路により検出された前記値中の誤りを、前記データディジットの状態を決定するために、前記検出された値と閾値とを比較する前に、訂正するように、ビタビアルゴリズムに従って前記検出回路により検出された前記値を処理するように構成された回路と、
を含み、
前記信号間干渉は、隣接するメモリセルに接するあるメモリセルの電荷蓄積ノード中にトラップされた電子を表す、
装置。
【請求項１１】
前記メモリセルは、列および行に配列され、前記検出回路は、メモリセルの選択された行の中に蓄積された前記電荷の値を検知するように構成される、請求項１０に記載の装置。
【請求項１２】
前記検出回路は、前記メモリセルの選択された行の前記フローティングゲートの各々の中に蓄積された電子の数を検出するように構成される、請求項１１に記載の装置。
【請求項１３】
前記回路はさらに、前記検出された電荷の値および前記選択されたメモリセル上の信号間干渉に少なくとも部分的に基づいて、前記選択されたメモリセルの内の１つの各可能性のある状態に繋がる経路に関連する誤りを決定するように構成され、
前記回路はさらに、前記決定された誤りの累積に少なくとも部分的に基づいて、累積された誤りが最小となるように各可能性のある状態に繋がる前記経路の１つを選択するように構成される、請求項１１に記載の装置。
【請求項１４】
前記回路は、前記誤りを決定して、前記選択されたメモリセル中の各メモリセルに対して前記経路の一つを選択することを連続的に繰り返すように構成される、請求項１０に記載の装置。
【請求項１５】
前記回路はさらに、前記選択されたメモリセルの行の中の最後のメモリセルの状態を、前記最後のメモリセルの可能性のある状態に繋がる経路に関連する誤りに少なくとも部分的に基づいて選択するように構成され、
前記回路はさらに、累積された誤りが最小である前記選択された経路を用いて、前記最後のメモリセルの前記選択された状態から遡って前記メモリセルの選択された行の中の前記他のメモリセルの各々の状態を選択し、メモリセルの前記選択された行に記憶された前記データを決定するように構成される、請求項１４に記載の装置。
【請求項１６】
前記装置は、フラッシュメモリデバイスを含む、請求項１０に記載の装置。
【請求項１７】
前記回路は、少なくとも1つのエラーを有していると疑われるデータの選択されたブロックについてのみ、前記検出回路によって検出された値を処理するように構成される、請求項１０に記載の装置。
【請求項１８】
前記処理は、エラー訂正符号によるエラー訂正を補足することを特徴とする請求項１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態はメモリデバイスに関し、特に、１つ以上の実施形態で、フラッシュメモリに関する。
【背景技術】
【０００２】
フラッシュメモリデバイスは不揮発性メモリデバイスであり、情報を半導体上に、そこに記憶された情報を保持するためには電力を必要としない方法で記憶する。フラッシュメモリデバイスは、典型的には、行および列を有する行列状のメモリセルのアレイを含む。各メモリセルは、半導体基板上に形成されたフローティングゲートトランジスタのような、電荷蓄積ノードを含む。セルはストリングを形成するように配列され、各セルのトランジスタのソースが、各ストリング中で隣接するセルのトランジスタのドレインに接続される。メモリセルアレイは（しばしばビット線として参照される）検出線を含み、検出線の各々は、メモリセルアレイ中のセルの列に接続される。メモリセルアレイはまた、ビット線に垂直で、互いに平行に伸びる、（しばしばワード線として参照される）選択線を含む。ワード線の各々は、メモリセルアレイ中のセルの行の中のトランジスタのコントロールゲートに接続される。
【０００３】
フラッシュメモリの構造（ジオメトリ）が小さくなるにつれ、メモリセルアレイ中のセルの間の距離もまた減少する。これら減少した距離は、隣接するメモリセル間の信号間干渉を招くことがある。“信号間干渉”なる用語は、隣接するメモリセル上のあるメモリセルの電荷蓄積ノード中にトラップされている電子の電磁気的効果のことを指す。信号間干渉はフラッシュメモリデバイスの動作に影響を及ぼし得る。したがって、減少したサイズを有するフラッシュメモリデバイスのための誤り訂正論理またはアルゴリズムに対する要望が存在する。
【０００４】
実施形態は、“発明を実施するための形態”から、および添付の図面からよく理解できるだろうが、それらは例示であり、実施形態を限定することを意味していない。
【図面の簡単な説明】
【０００５】
【図１】一実施形態に従うＮＡＮＤフラッシュメモリデバイスのメモリセルアレイの概略図である。
【図２】一実施形態に従う図１のＮＡＮＤフラッシュメモリデバイスの概略的断面図である。
【図３Ａ】信号間干渉のない理想的なＮＡＮＤフラッシュメモリ中の書き込まれたデータビットおよび対応するトラップされた電子数を示す図である。
【図３Ｂ】信号間干渉のあるＮＡＮＤフラッシュメモリアレイから読み出されたデータビットを示す図である。
【図４】信号間干渉を有するＮＡＮＤフラッシュメモリアレイを示す概略的ブロック図である。
【図５Ａ】ＮＡＮＤフラッシュメモリ上での書き込み動作の例を示す図である。
【図５Ｂ】ＮＡＮＤフラッシュメモリ上での読み出し動作の例を示す図である。
【図６Ａ】一実施形態に従うビタビアルゴリズムを用いてＮＡＮＤフラッシュメモリアレイから読み出されたデータを訂正する方法を示している。
【図６Ｂ】一実施形態に従うビタビアルゴリズムを用いてＮＡＮＤフラッシュメモリアレイから読み出されたデータを訂正する方法を示している。
【図６Ｃ】一実施形態に従うビタビアルゴリズムを用いてＮＡＮＤフラッシュメモリアレイから読み出されたデータを訂正する方法を示している。
【図６Ｄ】一実施形態に従うビタビアルゴリズムを用いてＮＡＮＤフラッシュメモリアレイから読み出されたデータを訂正する方法を示している。
【図６Ｅ】一実施形態に従うビタビアルゴリズムを用いてＮＡＮＤフラッシュメモリアレイから読み出されたデータを訂正する方法を示している。
【図６Ｆ】一実施形態に従うビタビアルゴリズムを用いてＮＡＮＤフラッシュメモリアレイから読み出されたデータを訂正する方法を示している。
【図６Ｇ】一実施形態に従うビタビアルゴリズムを用いてＮＡＮＤフラッシュメモリアレイから読み出されたデータを訂正する方法を示している。
【図６Ｈ】一実施形態に従うビタビアルゴリズムを用いてＮＡＮＤフラッシュメモリアレイから読み出されたデータを訂正する方法を示している。
【図６Ｉ】一実施形態に従うビタビアルゴリズムを用いてＮＡＮＤフラッシュメモリアレイから読み出されたデータを訂正する方法を示している。
【図６Ｊ】一実施形態に従うビタビアルゴリズムを用いてＮＡＮＤフラッシュメモリアレイから読み出されたデータを訂正する方法を示している。
【図７】別の実施形態に従うビタビアルゴリズムを用いてＮＡＮＤフラッシュメモリアレイから読み出されたデータを訂正する方法を示している。
【発明を実施するための形態】
【０００６】
上で述べたように、フラッシュメモリデバイスの構造（ジオメトリ）が小さくなるにつれ、メモリデバイス中のセル間の距離もまた減少する。そのようなフラッシュメモリデバイスでは、信号間干渉はフラッシュメモリデバイスの動作（特に、データ読み出し動作）に影響を与え得る。したがって、フラッシュメモリデバイスに対する誤り訂正論理またはアルゴリズムへの要望が存在する。
【０００７】
一実施形態では、フラッシュメモリデバイスには、ビタビアルゴリズムまたはその変形に基づく、データ読み出し動作に対する誤り訂正論理またはアルゴリズムが備えられている。フラッシュメモリデバイスから読み出された生データは、ビタビアルゴリズムを用いて処理される。フラッシュメモリ中のセルの行に記憶され得るデータ状態のすべての可能な組み合わせを含むように、トレリス（ｔｒｅｌｌｉｓ）と呼ばれるグラフが構築され得る。最小の誤りを有するデータ経路が、ビタビアルゴリズムを用いて決定され、それによって正しいデータが提供される。
【０００８】
図１は、一実施形態に従うＮＡＮＤフラッシュメモリアレイ１００を示している。図示されているフラッシュメモリアレイ１００は、第１から第Ｍのビット線ＢＬ０〜ＢＬＭおよび第１から第Ｎのワード線ＷＬ０〜ＷＬＮを含む。ビット線ＢＬ０〜ＢＬＭは、列方向に互いに平行に伸びている。ワード線ＷＬ０〜ＷＬＮは、行方向に互いに平行に伸びている。ＮＡＮＤフラッシュメモリアレイ１００はまた、ビット線の選択のために用いられる選択トランジスタ１２０ａ、１２０ｂを含む。
【０００９】
各ビット線は、直列にソースからドレインに結合されるフローティングゲートトランジスタのストリングを含む。たとえば、第２のビット線ＢＬ１は、直列に接続されるフローティングゲートトランジスタ１１０を含む。同一の行の中のセルのフローティングゲートトランジスタ１１０のコントロールゲートは、同一のワード線に結合される。フローティングゲートトランジスタ１１０の各々は、電荷（または電荷の欠乏）を蓄積するメモリセルを形成し、蓄積される電荷量は、たとえば１以上の状態を表すために用いられ得て、１以上の状態は、データの１以上のディジット（たとえば、ビット）を表し得る。メモリセルは、単一レベルセル（ＳＬＣ）またはマルチレベルセル（ＭＬＣ）のいずれかであっても構わない。一実施形態では、フローティングゲートトランジスタ１１０中に蓄積される電荷の量は、フローティングゲートトランジスタ１１０中を流れる電流を検出することによって検知し得る。別の実施形態では、フローティングゲートトランジスタ１１０中に蓄積される電荷の量は、フローティングゲートトランジスタ１１０の閾電圧の値を検出することによって検知しても良い。
【００１０】
図２は、第２のビット線ＢＬ１中のフローティングゲートトランジスタ１１０の断面を示している。フローティングゲートトランジスタ１１０は基板２０１上に形成される。フローティングゲートトランジスタ１１０の各々は、（隣接するトランジスタに対してはドレイン領域である）ソース領域２１０、（隣接するトランジスタに対してはソース領域である）ドレイン領域２１２、ドープされたチャンネル領域２１４、第１の誘電体（たとえばトンネル酸化物）２１６、フローティングゲート２１８、（たとえばゲート酸化物であって、トンネル酸化物及びゲート酸化物は同一のまたは異なる物質上に形成され得る）第２の誘電体２２０、およびコントロールゲート２２２を含む。トンネル酸化物２１６は、フローティングゲート２１８をチャンネル領域２１４から絶縁するために、チャンネル領域２１４上に形成される。ゲート誘電体２２０は、フローティングゲート２１８をコントロールゲート２２２から物理的および電気的に分離する。コントロールゲート２２２は適当なワード線、たとえば、ワード線ＷＬ１に結合される。電子はフローティングゲート２１８上にトラップされ得て、データを記憶するために用いられ得る。
【００１１】
図３Ａを参照すると、メモリセルはその中に、記憶されたデータに依存する（０を含む）ある数のトラップされた電子を含んでいる。例示の目的のために、“１”を記憶するためにフローティングゲート中にトラップされた電子を持たない（またはその逆も可能である）フローティングゲートトランジスタを考える。また、メモリセルを形成するフローティングゲートトランジスタが、“０”を記憶するためにフローティングゲート中に８個の電子をトラップすることが可能であることを考える。本明細書中では、電子の数は説明の目的のための任意の数であり、当業者は電子の数は、メモリセルアレイの設計に依存して広く変化することを認識するであろう。
【００１２】
理想的には、記憶されたデータビットが“１”であるとき、メモリセルの状態を検知するために検出される電流は、セルはトラップされた電子を持たない（即ち、電流フローが存在する）ことを示すであろう。一方、記憶されたデータビットが“０”であるとき、メモリセルの状態を検知するために検出される電流は、セルには８個のトラップされた電子がある（即ち、電流フローがない）ことを示すであろう。
【００１３】
メモリセルの状態を検知するために検出される電流は、トラップされている電子の数が、０または８のいずれかというよりむしろ連続領域にあることを示すかも知れない。したがって、検出された電流に対する閾値が、メモリセルは“１”または“０”（またはマルチレベルセルに対してはより多くの状態）のいずれのデータを有するのかを決定するために設定される。図示されている例では、閾値は４であっても良く、即ち、もし４個以上のトラップされた電子が存在するならば、記憶されたデータは“０”、もし４個未満のトラップされた電子が存在するならば、記憶されたデータは“１”である。たとえば、図３Ｂ中では、トラップされた電子は、メモリセルのある行の中で０、１１、５、および０である。トラップされた電子は、記憶されたデータｂ０、ｂ１、ｂ２、ｂ３が１、０、０、１であることを示している。
【００１４】
ＮＡＮＤフラッシュメモリの構造が小さくなるにつれ、メモリセルアレイ中のセルの間の距離もまた減少する。これら減少した距離は、隣接するメモリセルの間の信号間干渉（ＩＳＩ）を招くことがある。図４を参照すると、ＮＡＮＤフラッシュメモリは、メモリセルアレイ４００を含んでいる。図示されている実施形態では、メモリセル４１０は、同一の行の中および／または同一の列の中で隣接するメモリセル４２１〜４２４から信号間干渉を受けることがある。
【００１５】
この信号間干渉は、ＮＡＮＤフラッシュメモリの読み出し動作に影響を及ぼし得る。たとえば、もし近接メモリセル４２１〜４２４の１つ以上がその中にトラップされた８個の電子を有するならば、メモリセル４１０は、検出時に、実際に有するより２個多い電子を有するかのように見えることがある。たとえば、メモリセル４１０は、検出時に、たとえ実際には電子は有しないにもかかわらず、２個の電子を有するかのように見えることもあるし、たとえ実際には８個の電子を有するにもかかわらず、１０個の電子を有するかのように見えることもある。
【００１６】
信号間干渉のために、電子の数が閾値に近づいときには、データは不正確に読み出される可能性がある。たとえば、実際にトラップされている電子の数は３であるとき、検出される数は、信号間干渉があるときには、５に対応することがある。たとえば、図３Ｂに戻って参照すると、読み出された電子の数（“５”）は信号間干渉の結果であり得るので、第３のビットｂ２は、実際には０であるかも知れない。図示された例では、閾値は“４”である。第３のビットｂ２を記憶しているセルは、実際には３個の電子を有しているにもかかわらず、５個の電子を有しているかのように見えることがある。
【００１７】
図５Ａ〜５Ｂおよび６Ａ〜６Ｊを参照しながら、ここで、一実施形態に従うＮＡＮＤフラッシュメモリアレイから読み出されたデータを確認する／訂正する方法を詳細に記述する。図示されている実施形態では、ＮＡＮＤフラッシュメモリアレイから読み出されたデータを確認する／訂正するために、ビタビアルゴリズムが用いられる。ビタビアルゴリズムは、ビタビ経路と呼ばれる、隠れた状態の最尤のシーケンスを見付けるためのアルゴリズムである。メモリセルの行の中のトラップされた電子の観測されたパターンが与えられると、信号間干渉を考慮しつつ、その行の中のメモリセルの最尤の状態を決定するために用いられる。
【００１８】
図示されている実施形態では、ある行の中のセルは、（たとえば、左から右への方向に）同一の行のそのセルのすぐ隣のセルにしか、信号間干渉を及ぼさないと仮定されている。しかしながら、当業者は、ビタビアルゴリズムは、任意の所与のセルの周りの他の隣接するセルに拡張され得ることは認識されるだろう。
【００１９】
論理“１”を記憶するセルはそのフローティングゲート中に０個の電子を有し、論理“０”を記憶するセルはそのフローティングゲート中に８個の電子を有することを考える。特定のセルは、もし隣接セルが“１”（たとえば、トラップされた電子はない）を記憶するならば、その同一の行のすぐ左側にある、特定のセルのすぐ隣の隣接セルによる影響は受けない。しかしながら、もし隣接セルが“０”（たとえば、８個のトラップされた電子）を記憶するならば、特定のセルは、それ自身にトラップされた電子に加えてさらに２個の電子を有するかのように、隣接セルから信号間干渉を受けることがある。
【００２０】
例示の目的のために、図５Ａを参照して、行１の４個のセルｂ１〜ｂ４中に書き込まれたデータが、１、０、０、１であることを考える。図５Ｂを参照して、ここで、セルｂ１〜ｂ４から検出された情報が、セルｂ１〜ｂ４はそれぞれ、０、１１、５および０個の電子を蓄積していることを示していることを考える。セルｂ１〜ｂ４に対する電子のこれらの数は、図６Ａ〜６Ｊの例において、読み出された数として再び用いられるだろう。もし、閾値が４個の電子ならば（もし４個以上の電子が存在するならば、記憶されたデータは“０”、もし４個未満の電子が存在するならば、記憶されたデータは“１”である）、読み出されたデータは、書き込まれたデータ１、０、１、１とは一致しない、１、０、０、１に変換され得る。
【００２１】
図６Ａ〜６Ｊを参照すると、ビタビアルゴリズムは、セルｂ１〜ｂ４の行から読み出されたデータを確認する／訂正するために用いられる。ビタビアルゴリズムでは、トレリスに沿った最小誤りの経路が、正しいデータを示すために決定される。トレリスに沿ったデータ状態に関する誤りは、式１で表される偏差Ｄによって決定される。
【００２２】
【数１】
0005660899.tif 000002
【００２３】
式１中で、ＲＥは読み出された電子の数、およびＰＥはトレリスに沿った次の状態の中の可能な電子の数である。用いられるＲＥデータは、０、１１、５、および０であろう。トレリスに沿って経路を取ると、誤りが蓄積される。累積された誤りＥｉは、式２によって表される。
【００２４】
【数２】
0005660899.tif 000003
【００２５】
式２中で、Ｅｉは各宛先状態において累積された誤りであり、Ｄｉは宛先状態における偏差である。各状態（１または０）に繋がる（０または１からの）代替の経路は、互いに比較される。各宛先状態において、最小誤りを有する経路だけが選択される。この処理は、所与の状態の全てへの経路が決定されるまで繰り返される。選択された経路は、メモリセルに記憶された正しいデータを示すための役に立つ。
【００２６】
図６Ａ〜６Ｊ中で、上側の行はメモリセル中に記憶されたデータビットが“１”である状態を表し、一方、下側の行はメモリセル中に記憶されたデータビットが“０”である状態を表す。図６Ａ〜６Ｊ中の矢印の横の各数字は、隣のセルに中で検出されると期待され得る電子の数である。本明細書中では、電子の数は説明の目的のための任意の数であり、当業者は電子の数は、メモリセルアレイの設計ならびにセルおよび／または検出回路の感受率に依存して広く変化することを認識するであろう。
【００２７】
数は、全て事前の状態である“１”を有する、即ち、初期条件は、累積された誤りが０であることである。図６Ａ中で、最初のセルｂ０の状態は１または０のいずれでも良い。最初のセルｂ０が１であり、第１のセルｂ１が１である経路に対して、第１のセルｂ１への最初のセルｂ０による信号間干渉は存在しないので、第１のセルｂ１中に蓄積される可能性のある電子の数（ＰＥ）は０である。たとえば、読み出された電子の数（ＲＥ）はｂ１に対しては０であり、この経路（１から１）に関連する累積された誤りＥ１ａは（ＲＥ−ＰＥ）２＝（０−０）２＝０である。
【００２８】
最初のセルｂ０が１であり、第１のセルが０である経路（経路１から０）に対して、最初のセルｂ０による信号間干渉はなく、最初のセルｂ１は８個の電子を有するであろうから、第１のセルｂ１中の可能性のある電子の数は８である。よって、この経路（１から０）に関連する累積された誤りＥ１ｃは、（０−８）２＝６４である。
【００２９】
一方、最初のセルｂ０が０であり、第１のセルｂ１が１である経路に対しては、第１のセルｂ１はその中に電子を蓄積していないだろうが、最初のセルｂ０から信号間干渉（２個の電子）を受けるので、検出される可能性のある電子の数は２である。よって、この経路（０から１）に関連する累積された誤りＥ１ｂは、（０−２）２＝４である。
【００３０】
最初のセルｂ０が１で、第１のセルｂ１が０であるような経路に対しては、第１のセルｂ１は最初のセルｂ０からの信号間干渉（２個の電子）がありながら８個の電子を蓄積し、よって１０個の電子を有するかのように動作する。よって、この経路（０から０）に関連する累積された誤りＥ１ｄは、（０−１０）２＝１００である。
【００３１】
累積された誤りの量に基づいて、バツ印を施して示されているように、宛先状態（０または１）のそれぞれに繋がる経路の一つが消去される。図６Ｂ中では、宛先状態１に対して、０から１への矢印は、０から１へのこの経路に関連する累積された誤りＥ１ｂが、１から１への他の経路に関連する累積された誤りＥ１ａより大きいので、バツ印が施されている。同様に、０から０への矢印は、累積された誤りＥ１ｄが累積された誤りＥ１ｃより大きいので、バツ印が施されている。累積された誤りは、宛先状態を示す円の内部に書かれている。
【００３２】
図６Ｃ中では、図示されている例での第２のセルｂ２に対する読み出された電子の数（ＲＥ）は１１である。第１のセルｂ１は、１または０であり得る。累積された誤りを計算すると、第１のセルｂ０は状態１に対して０を、状態０に対して６４を有する。第１のセルｂ１が１であり、第２のセルが１であるような経路に対して、第２のセルｂ２に関して検出される可能性のある電子の数は、第２のセルｂ２はその中に蓄積される電子がなく、第１のセルｂ１から信号間干渉がないので、０個の電子であろう。よって、偏差Ｄは（１１−０）２＝１２１である。第１のセルｂ１が１であり第２のセルは０であるような経路に対して、偏差Ｄは、（１１−８）２＝９である。累積された誤りＥ２ａ、Ｅ２ｃはそれぞれ１２１、および９である。
【００３３】
一方、第１のセルｂ１は０である経路に対しては、累積された誤りは６４から始まる。第２のセルｂ２の宛先状態１への経路に対して、偏差Ｄは（１１−２）２＝８１であり、先行する経路の累積された誤りが現在の経路の偏差に追加されるので、累積された誤りＥ２ｂは１４５である。第１のセルｂ１が０であり、第２のセルｂ２が０である経路に対して、偏差Ｄは（１１−１０）２＝１であり、累積された誤りＥ２ｄは６５である。
【００３４】
再び、累積された誤りの量に基づいて、バツ印を施して示されているように、宛先状態（０または１）の各々に繋がる経路の一つが消去される。図６Ｄ中では、０から１への矢印は、０から１への経路に関連する１４５という累積された誤りＥ２ｂが、１から１への他の経路に関連する累積された誤りＥ２ａより大きいので、バツ印が施されている。同様に、０から０への矢印は、０から０への経路に関連する累積された誤りＥ２ｄは、１から０への他の経路に関連する累積された誤りＥ２ｃより大きいので、バツ印が施されている。
【００３５】
図６Ｅ中では、第３のセルｂ３に対する読み出された電子の数（ＲＥ）は、図示された例では５である。第２のセルｂ２の状態は１または０のいずれかであり得る。第２のセルｂ２が１であり、第３のセルｂ３が１であるような経路に対して、偏差Ｄは（５−０）２＝２５であり、累積された誤りＥ３ａは１４６である。第２のセルｂ２は１であり、第３のセルｂ３は０であるような経路に対して、偏差Ｄは（５−８）２＝９であり、累積された誤りＥ３ｃは１３０である。
【００３６】
一方、第２のセルｂ２が０であり、第３のセルが１であるような経路に対して、偏差Ｄは（５−２）２＝９であり、累積された誤りＥ３ｂは１８である。第２のセルｂ２は０であり、第３のセルｂ３が０であるような経路に対して、偏差Ｄは（５−１０）２＝２５であり、累積された誤りＥ３ｄは３４である。
【００３７】
再び、累積された誤りの量に基づいて、各状態（０または１）に繋がる経路の一つが消去、たとえばバツ印が施される。図６Ｆ中では、１から１への矢印は、累積された誤りＥ３ａは０から１への経路に対する累積された誤りＥ３ｂより大きいので、バツ印が施されている。同様に、１から０への矢印は、１から０への経路に対する累積された誤りＥ３ｃは０から０への経路の対する累積された誤りＥ３ｄより大きいので、消去されている。
【００３８】
図６Ｇ中では、第４のセルｂ４に対する読み出された電子の数（ＲＥ）は、図示された例では０である。第３のセルｂ３の状態は１または０のいずれかであり得る。第３のセルｂ３が１であり、第４のセルｂ４が１であるような経路に対して、偏差Ｄは（０−０）２＝０であり、累積された誤りＥ４ａは１８である。第３のセルｂ３は１であり、第４のセルｂ４は０であるような経路に対して、偏差Ｄは（０−８）２＝６４であり、累積された誤りＥ４ｃは８２である。
【００３９】
一方、第３のセルｂ３が０であり、第４のセルが１であるような経路に対して、偏差Ｄは（０−２）２＝４であり、累積された誤りＥ４ｂは３８である。第３のセルｂ３は０であり、第４のセルｂ４が０であるような経路に対して、偏差Ｄは（０−１０）２＝１００であり、累積された誤りＥ４ｄは１３４である。
【００４０】
再び、累積された誤りの量に基づいて、状態（０または１）の各々に繋がる経路の一つを消去する。図６Ｈ中では、０から１への矢印は、０から１への経路に対する累積された誤りＥ４ｂは、１から１への経路に対する累積された誤りＥ４ａより大きいので、バツ印が施されている。同様に、０から０への矢印は、０から０への経路に対する累積された誤りＥ４ｄは１から０への経路の対する累積された誤りＥ４ｃより大きいので、バツ印が施されている。
【００４１】
図６Ｉは、上で述べた処理が完了した後で残っている矢印を含む結果としての経路を示している。ここで、第４のセルｂ４に対する可能性のある状態における誤りが互いに比較される。図示されている例では、宛先状態“１”に対して、累積された誤りは１８である。宛先状態“０”に対して、累積された誤りは８２である。誤りが小さくなればなるほど、セルはその状態である可能性が高くなる。よって、第４のセルｂ４は、“１”を記憶している可能性が高い。次に、第４のセルｂ４の状態“１”から逆方向に経路を辿る。よって、第３のセルｂ３は１を記憶していると思われる。第２のセルｂ２は０を記憶していると思われる。加えて、第１のセルｂ１は１を記憶していると思われる。したがって、正しいデータは１、０、１、１であり、図６Ｊに示されているように、書き込まれたデータと一致する。
【００４２】
別の実施形態では、２つ以上の隣接セルによる特定のセルへの信号間干渉を、ビタビアルゴリズムを用いて正しいデータを決定する際に考慮しても構わない。たとえば、特定のセルのすぐ上の行にある隣接するセルによる特定のセルへの信号間干渉が、ビタビアルゴリズムを用いて生データを処理する際に考慮されても構わない。図７を参照すると、デルタ（Δ）が各状態中の可能性のある電子の数に加えられる。デルタ（Δ）は、特定のセルのすぐ上の行にある隣接するセルからの信号間干渉を表す。同一の行のセル間の信号間干渉が２個の電子にのぼるある実施形態では、デルタは約０から約２の間の領域中であり得る。ビタビアルゴリズムの詳細な処理は、デルタが各状態中の可能性のある電子の数に加えられることを除いて、図６Ａ〜６Ｊを参照して以前に記述したようなものであり得る。
【００４３】
上で記述した実施形態では、セルは２つの状態の１つを記憶する、即ち単一レベルセルであるように構成されている。別の実施形態では、マルチレベル、たとえば２つより多い状態を記憶するためにマルチレベルセルが用いられても良い。そのような実施形態では、ビタビアルゴリズムはまた、セルから読み出されたデータを確認するまたは訂正するために適合されていても構わない。
【００４４】
上で記述したように、ビタビアルゴリズムは、読み出し動作中に、各データビットの行の上で実行され得る。ある実施形態では、ビタビアルゴリズムは少なくとも１つの誤りを有すると思われる選択されたデータのブロック上でのみ実行されても構わない。別の実施形態では、ビタビアルゴリズムは、閾値に近い値（たとえば、閾値は４個の電子の場合、５個の電子）を含む選択されたデータのブロック上でのみ、または誤り訂正符号（ＥＣＣ）を補うために訂正不能な誤りに応じて実行されても構わない。当業者は、ＮＡＮＤフラッシュ読み出し動作に対するビタビアルゴリズムの応用の様々な異なる方法もまた、可能であることを認識するであろう。加えて、当業者は、いかなる修正ビタビアルゴリズムまたは類似のアルゴリズムがまた、フラッシュ読み出し動作に適合され得ることを認識するであろう。
【００４５】
上述の実施形態では、ビタビアルゴリズムは、ＮＡＮＤフラッシュメモリデバイス内のどの適切なプロセッサまたは回路によって実行されても良い。別の実施形態では、外部のプロセッサまたは回路がビタビアルゴリズムを実行するために備えられていても良い。当業者は、上述のようにプロセッサまたは回路のあらゆる適切な構成が、ビタビアルゴリズムを実行するために用いられ得ることを認識するであろう。
【００４６】
上述の実施形態に従うフラッシュメモリデバイスは、様々な電子機器に組み込まれ得る。電子機器の例は、限定されないが、消費者向け電子製品、電子回路、電子回路コンポーネント、消費者向け電子製品の部品、電子検査器具等を含み得る。消費者向け電子製品の例は、限定されないが、携帯電話、電話、テレビ、コンピュータモニタ、コンピュータ、ハンドヘルドコンピュータ、パーソナルデジタルアシスタント（ＰＤＡ）、電子レンジ、冷蔵庫、ステレオシステム、カセットレコーダまたはプレーヤ、ＤＶＤプレーヤ、ＣＤプレーヤ、ＶＣＲ、ＭＰ３プレーヤ、ラジオ、カムコーダー、光学カメラ、デジタルカメラ、洗濯機、ドライヤー、洗濯／乾燥機、コピー機、ファクシミリ機、スキャナ、多機能周辺機器、腕時計、時計等を含む。さらに、電子機器は、未完成製品を含み得る。
【００４７】
一実施形態は、メモリセルからデータを取り出す方法である。その方法は、メモリセルのアレイ中の選択されたメモリセルによって記憶されたデータに関連する値を決定すること、およびビタビアルゴリズムに従って、選択されたメモリセル中に記憶されたデータを決定するように、決定された値を処理すること、を含む。
【００４８】
別の実施形態は、メモリセルからデータを取り出す方法である。その方法は、メモリセルのアレイ内の第１のメモリセルの電気的状態を検出すること、ならびに電気的状態および第１のメモリセルに近接する少なくとも１つのアレイのメモリセルに関連する電気的状態および／または論理状態の少なくとも一部に基づいて、第１のメモリセルに対する論理状態を決定すること、を含む。
【００４９】
さらに別の実施形態は、メモリセルのアレイを含む装置である。メモリセルの各々は、データディジットを示す電荷を蓄積するように構成されている。その装置はまた、メモリセルの選択されたセル中に蓄積されている電荷の値を検知するように構成されている検出回路を含む。その装置は、ビタビアルゴリズムに従って検知された値を処理するように構成されている。
【００５０】
本発明をある実施形態に関して記述してきたが、本明細書中で記述した特徴および利点の全てを備えない実施形態を含む、当業者には明らかな他の実施形態はまた、本発明の範囲内にある。さらに、上述の様々な実施形態はさらなる実施形態を提供すべく組み合わされても良い。加えて、ある実施形態の文脈で示されたある特徴は、同様に、別の実施形態に組み込まれても良い。したがって、本発明の範囲は、添付された請求項を参照することによってのみ規定される。
【図１】
0005660899.tif 000004
【図２】
0005660899.tif 000005
【図３Ａ】
0005660899.tif 000006
【図３Ｂ】
0005660899.tif 000007
【図４】
0005660899.tif 000008
【図５Ａ】
0005660899.tif 000009
【図５Ｂ】
0005660899.tif 000010
【図６Ａ】
0005660899.tif 000011
【図６Ｂ】
0005660899.tif 000012
【図６Ｃ】
0005660899.tif 000013
【図６Ｄ】
0005660899.tif 000014
【図６Ｅ】
0005660899.tif 000015
【図６Ｆ】
0005660899.tif 000016
【図６Ｇ】
0005660899.tif 000017
【図６Ｈ】
0005660899.tif 000018
【図６Ｉ】
0005660899.tif 000019
【図６Ｊ】
0005660899.tif 000020
【図７】
0005660899.tif 000021