(57)【特許請求の範囲】
【請求項１】
“１”状態は第１の閾値レベルを有し、“２”状態は第１の閾値レベルよりも高い第２の閾値レベルを有し、“３”状態は第２の閾値レベルよりも高い第３の閾値レベルを有し、“ｉ”状態（ｉはn以下の自然数であり、nは４以上の自然数）は第（ｉ−１）の閾値レベルよりも高い第ｉの閾値レベルを有するn値を記憶するメモリセルと、
前記メモリセルに書き込むデータを保持する複数のラッチ回路を含むデータ回路と、
前記データ回路の動作を制御する制御回路とを具備し、
前記制御回路は、
前記メモリセルが“１”状態を保持する場合に、前記メモリセルの外部から入力された書き込みデータに基づいて第１の書き込みを行い、前記メモリセルを“１”状態又は“５”状態にし、
前記メモリセルが“１”状態又は“５”状態を保持する場合に、前記メモリセルの外部から入力された書き込みデータと、前記メモリセルが保持するデータに基づいて第２の書き込みを行い、前記メモリセルを“１”状態又は“３”状態又は“５”状態又は“７”状態にし、
前記メモリセルが“１”状態又は“３”状態又は“５”状態又は“７”状態を保持する場合に、前記メモリセルの外部から入力された書き込みデータと、前記メモリセルが保持するデータに基づいて第３の書き込みを行い、前記メモリセルを“１”状態又は“２”状態又は“３”状態又は“４”状態又は“５”状態又は“６”状態又は“７”状態又は“８”状態にする
ことを特徴とする半導体記憶装置。
【請求項２】
“１”状態は第１の閾値レベルを有し、“２”状態は第１の閾値レベルよりも高い第２の閾値レベルを有し、“３”状態は第２の閾値レベルよりも高い第３の閾値レベルを有し、“ｉ”状態（ｉはn以下の自然数であり、nは４以上の自然数）は第（ｉ−１）の閾値レベルよりも高い第ｉの閾値レベルを有するn値を記憶するメモリセルと、
前記メモリセルに書き込むデータを保持する複数のラッチ回路を含むデータ回路と、
前記データ回路の動作を制御する制御回路とを具備し、
前記制御回路は、
前記メモリセルが“１”状態を保持する場合に、前記メモリセルの外部から入力された第１の書き込みデータに基づいて第１の書き込みを行い、
第１の書き込みデータが第１の論理の場合には前記メモリセルを“１”状態にし、
第１の書き込みデータが第２の論理の場合には前記メモリセルは“５”状態にし、
前記メモリセルが“１”状態又は“５”状態を保持する場合に、前記メモリセルの外部から入力された第２の書き込みデータと、前記メモリセルが保持するデータに基づいて第２の書き込みを行い、
第２の書き込みデータが第３の論理の場合には前記メモリセルを“１”状態又は“５”状態とし、第２の書き込みデータが第４の論理の場合には“１”状態の前記メモリセルを“３”状態にし、“５”状態の前記メモリセルを“７”状態にし、前記メモリセルが“１”状態又は“３”状態又は“５”状態又は“７”状態を保持する場合に、前記メモリセルの外部から入力された第３の書き込みデータと、前記メモリセルが保持するデータに基づいて第３の書き込みを行い、
第３の書き込みデータが第５の論理の場合には前記メモリセルを“１”状態又は“３”状態又は“５”状態又は“７”状態にし、第３の書き込みデータが第６の論理の場合には“１”状態の前記メモリセルを“２”状態にし、“３”状態の前記メモリセルを“４”状態にし、“５”状態の前記メモリセルを“６”状態にし、“７”状態の前記メモリセルを“８”状態にする
ことを特徴とする半導体記憶装置。
【請求項３】
“１”状態は第１の閾値レベルを有し、“２”状態は第１の閾値レベルよりも高い第２の閾値レベルを有し、“３”状態は第２の閾値レベルよりも高い第３の閾値レベルを有し、“ｉ”状態（ｉはn以下の自然数であり、nは４以上の自然数）は第（ｉ−１）の閾値レベルよりも高い第ｉの閾値レベルを有するn値を記憶するメモリセルと、
前記メモリセルに書き込むデータを保持する複数のラッチ回路を含むデータ回路と、
前記データ回路の動作を制御する制御回路とを具備し、
前記制御回路は、
前記メモリセルが“Ｂ”状態を保持する場合に、前記メモリセルの外部から入力された書き込みデータに基づいて第１の書き込みを行い、前記メモリセルを“Ｂ”状態又は“Ｃ”状態（ＣはＣ＞Ｂを満たす整数）にし、
前記メモリセルが“Ｂ”状態又は“Ｃ”状態を保持する場合に、前記メモリセルの外部から入力された書き込みデータと、前記メモリセルが保持するデータに基づいて第２の書き込みを行い、前記メモリセルを“Ｂ”状態又は“Ｃ”状態又は“Ｄ”状態又は“Ｅ”状態（Ｄ、ＥはＥ＞Ｃ＞Ｄ＞Ｂを満たす整数）にし、
前記メモリセルが“Ｂ”状態又は“Ｃ”状態又は“Ｄ”状態又は“Ｅ”状態を保持する場合に、前記メモリセルの外部から入力された書き込みデータと、前記メモリセルが保持するデータに基づいて第３の書き込みを行い、前記メモリセルを“Ｂ”状態又は“Ｃ”状態又は“Ｄ”状態又は“Ｅ”状態又は“Ｆ”状態又は“Ｇ”状態又は“Ｈ”状態又は“Ｉ”状態（Ｆ、Ｇ、Ｈ、ＩはＩ＞Ｅ＞Ｈ＞Ｃ＞Ｇ＞Ｄ＞Ｆ＞Ｂを満たす整数）にする
ことを特徴とする半導体記憶装置。
【請求項４】
“１”状態は第１の閾値レベルを有し、“２”状態は第１の閾値レベルよりも高い第２の閾値レベルを有し、“３”状態は第２の閾値レベルよりも高い第３の閾値レベルを有し、“ｉ”状態（ｉはn以下の自然数であり、nは４以上の自然数）は第（ｉ−１）の閾値レベルよりも高い第ｉの閾値レベルを有するn値を記憶するメモリセルと、
前記メモリセルに書き込むデータを保持する複数のラッチ回路を含むデータ回路と、
前記データ回路の動作を制御する制御回路とを具備し、
前記制御回路は、
前記メモリセルが“Ｂ”状態を保持する場合に、前記メモリセルの外部から入力された第１の書き込みデータに基づいて第１の書き込みを行い、
第１の書き込みデータが第１の論理の場合には前記メモリセルを“Ｂ”状態にし、
第１の書き込みデータが第２の論理の場合には前記メモリセルは“Ｃ”状態（ＣはＣ＞Ｂを満たす整数）にし、
前記メモリセルが“Ｂ”状態又は“Ｃ”状態を保持する場合に、前記メモリセルの外部から入力された第２の書き込みデータと、前記メモリセルが保持するデータに基づいて第２の書き込みを行い、
第２の書き込みデータが第３の論理の場合には前記メモリセルを“Ｂ”状態又は“Ｃ”状態にし、
第２の書き込みデータが第４の論理の場合には“Ｂ”状態の前記メモリセルを“Ｄ”状態にし、
“Ｃ”状態の前記メモリセルを“Ｅ”状態（Ｄ、ＥはＥ＞Ｃ＞Ｄ＞Ｂを満たす整数）にし、
前記メモリセルが“Ｂ”状態又は“Ｃ”状態又は“Ｄ”状態又は“Ｅ”状態を保持する場合に、前記メモリセルの外部から入力された第３の書き込みデータと、前記メモリセルが保持するデータに基づいて第３の書き込みを行い、
第３の書き込みデータが第５の論理の場合には前記メモリセルを“Ｂ”状態又は“Ｃ”状態又は“Ｄ”状態又は“Ｅ”状態にし、
第３の書き込みデータが第６の論理の場合には“Ｂ”状態の前記メモリセルを“Ｆ”状態にし、“Ｄ”状態のメモリセルを“Ｇ”状態にし、“Ｃ”状態の前記メモリセルを“Ｈ”状態にし、“Ｅ”状態の前記メモリセルを“Ｉ”状態（Ｆ，Ｇ，Ｈ，ＩはＩ＞Ｅ＞Ｈ＞Ｃ＞Ｇ＞Ｄ＞Ｆ＞Ｂを満たす整数）にする
ことを特徴とする半導体記憶装置。
【請求項５】
“１”状態は第１の閾値レベルを有し、“２”状態は第１の閾値レベルよりも高い第２の閾値レベルを有し、“３”状態は第２の閾値レベルよりも高い第３の閾値レベルを有し、“ｉ”状態（ｉはn以下の自然数であり、nは４以上の自然数）は第（ｉ−１）の閾値レベルよりも高い第ｉの閾値レベルを有するn値を記憶するメモリセルと、
前記メモリセルに書き込むデータを保持する複数のラッチ回路を含むデータ回路と、
前記データ回路の動作を制御する制御回路とを具備し、
前記制御回路は、
前記メモリセルが“１”状態を保持する場合に、前記メモリセルの外部から入力された第１の書き込みデータに基づいて第１の書き込みを行い、
第１の書き込みデータが第１の論理の場合には前記メモリセルを“１”状態にし、
第１の書き込みデータが第２の論理の場合には前記メモリセルは“２m-1 ＋１”状態（ｍは自然数で、“２m-1 ＋１”はｎ以下の自然数）にし、
前記メモリセルが“１”状態又は“２m-1 ＋１”状態を保持する場合に、前記メモリセルの外部から入力された第２の書き込みデータと、前記メモリセルが保持するデータに基づいて第２の書き込みを行い、
第２の書き込みデータが第３の論理の場合には前記メモリセルを“１”状態又は“２m-1 ＋１”状態にし、
第２の書き込みデータが第４の論理の場合には“１”状態の前記メモリセルを“２m-2 ＋１”状態にし、“２m-1 ＋１”状態の前記メモリセルを“２m-1 ＋２m-2 ＋１”状態にし、
前記メモリセルが“１”状態又は“２m-2 ＋１”状態又は“２m-1 ＋１”状態又は“２m-1 ＋２m-2 ＋１”状態を保持する場合に、前記メモリセルの外部から入力された第３の書き込みデータと、前記メモリセルが保持するデータに基づいて第３の書き込みを行い、
第３の書き込みデータが第５の論理の場合には前記メモリセルを“１”状態又は“２m-2 ＋１”状態又は“２m-1 ＋１”状態又は“２m-1 ＋２m-2 ＋１”にし、
第３の書き込みデータが第６の論理の場合には“１”状態の前記メモリセルを“２m-3 ＋１”状態にし、“２m-2 ＋１”状態の前記メモリセルを“２m-2 ＋２m-3 ＋１”状態にし、“２m-1 ＋１”状態の前記メモリセルを“２m-1 ＋２m-3 ＋１”状態にし、“２m-1 ＋２m-2 ＋１”状態の前記メモリセルを“２m-1 ＋２m-2 ＋２m-3 ＋１”状態（“２m-1 ＋２m-2 ＋２m-3 ＋１”はｎ以下の自然数）にする
ことを特徴とする半導体記憶装置。
【請求項６】
第１、第３、第５の論理は等しく、第２、第４、第６の論理は等しいことを特徴とする請求項２、４、５のいずれかに記載の半導体記憶装置。
【請求項７】
“１”状態は第１の閾値レベルを有し、“２”状態は第１の閾値レベルよりも高い第２の閾値レベルを有し、“３”状態は第２の閾値レベルよりも高い第３の閾値レベルを有し、“ｉ”状態（ｉはn以下の自然数であり、nは４以上の自然数）は第（ｉ−１）の閾値レベルよりも高い第ｉの閾値レベルを有するn値を記憶するメモリセルと、
前記メモリセルに書き込むデータを保持する複数のラッチ回路を含むデータ回路と、
前記データ回路の動作を制御する制御回路とを具備し、
前記制御回路は、
前記メモリセルが“Ｂ”状態又は“Ｃ”状態又は“Ｄ”状態又は“Ｅ”状態（Ｂ，Ｃ、Ｄ、ＥはＥ＞Ｃ＞Ｄ＞Ｂを満たす整数）を保持する場合に、前記メモリセルの外部から入力された書き込みデータと、前記メモリセルが保持するデータに基づいて書き込みを行い、前記メモリセルを“Ｂ”状態又は“Ｃ”状態又は“Ｄ”状態又は“Ｅ”状態又は“Ｆ”状態又は“Ｇ”状態又は“Ｈ”状態又は“Ｉ”状態（Ｆ，Ｇ，Ｈ，ＩはＩ＞Ｅ＞Ｈ＞Ｃ＞Ｇ＞Ｄ＞Ｆ＞Ｂを満たす整数）にする
ことを特徴とする半導体記憶装置。
【請求項８】
“１”状態は第１の閾値レベルを有し、“２”状態は第１の閾値レベルよりも高い第２の閾値レベルを有し、“３”状態は第２の閾値レベルよりも高い第３の閾値レベルを有し、“ｉ”状態（ｉはn以下の自然数であり、nは４以上の自然数）は第（ｉ−１）の閾値レベルよりも高い第ｉの閾値レベルを有するn値を記憶するメモリセルと、
前記メモリセルに書き込むデータを保持する複数のラッチ回路を含むデータ回路と、
前記データ回路の動作を制御する制御回路とを具備し、
前記制御回路は、
前記メモリセルが“Ｂ”状態又は“Ｃ”状態又は“Ｄ”状態又は“Ｅ”状態を保持する場合に、前記メモリセルの外部から入力された書き込みデータと、前記メモリセルが保持するデータに基づいて書き込みを行い、
書き込みデータが第１の論理の場合には前記メモリセルを“Ｂ”状態又は“Ｃ”状態又は“Ｄ”状態又は“Ｅ”状態にし、
書き込みデータが第２の論理の場合には“Ｂ”状態の前記メモリセルを“Ｆ”状態にし、“Ｄ”状態の前記メモリセルを“Ｇ”状態にし、“Ｃ”状態の前記メモリセルを“Ｈ”状態にし、“Ｅ”状態の前記メモリセルを“Ｆ”状態（Ｆ，Ｇ，Ｈ，ＩはＩ＞Ｅ＞Ｈ＞Ｃ＞Ｇ＞Ｄ＞Ｆ＞Ｂを満たす整数）にする
ことを特徴とする半導体記憶装置。
【請求項９】
“１”状態は第１の閾値レベルを有し、“２”状態は第１の閾値レベルよりも高い第２の閾値レベルを有し、“３”状態は第２の閾値レベルよりも高い第３の閾値レベルを有し、“ｉ”状態（ｉはｎ以下の自然数であり、ｎは４以上の自然数）は第（ｉ−１）の閾値レベルよりも高い第ｉの閾値レベルを有するn値を記憶するメモリセルにおいて、
前記メモリセルに書き込むデータを保持する複数のラッチ回路を含むデータ回路と、
前記データ回路の動作を制御する制御回路とを具備し、
前記制御回路は、
前記メモリセルが“１”状態又は“２k-3 ＋１”状態又は“２k-1 ＋１”状態又は“２k-3 ＋２k-2 ＋１”状態（ｋは自然数で、“２k-3 ＋２k-2 ＋１”はｎ以下の自然数）を保持する場合に、前記メモリセルの外部から入力された書き込みデータと、前記メモリセルが保持するデータに基づいて書き込みを行い、
書き込みデータが第１の論理の場合には前記メモリセルを“１”状態又は“２k-2 ＋１”状態又は“２k-1 ＋１”状態又は“２k-1 ＋２k-2 ＋１”にし、
書き込みデータが第２の論理の場合には“１”状態の前記メモリセルを“２k-3 ＋１”状態にし、“２k-2 ＋１”状態の前記メモリセルを“２k-2 ＋２k-3 ＋１”状態にし、“２k-1 ＋１”状態の前記メモリセルを“２k-1 ＋２k-3 ＋１”状態にし、“２k-1 ＋２k-2 ＋１”状態の前記メモリセルを“２k-1 ＋２k-2 ＋２k-3 ＋１”状態（“２k-1 ＋２k-2 ＋２k-3 ＋１”はｎ以下の自然数）にする
ことを特徴とする半導体記憶装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば電気的に書き換え可能な半導体記憶装置に係わり、特に、１つのメモリセルに多値を記憶することが可能な半導体記憶装置に関する。
【０００２】
【従来の技術】
近年、電気的に書き換え可能とした不揮発性半導体記憶装置の１つとしてＮＡＮＤセル型ＥＥＰＲＯＭが提案されている。このＮＡＮＤセル型ＥＥＰＲＯＭは、複数のメモリセルのソース、ドレインを隣接するもの同士で共有して直列接続し、これを１単位としてビット線に接続するものである。各メモリセルは、電荷蓄積層としての浮遊ゲートと、制御ゲートが積層されたｎチャネルＭＯＳＦＥＴ構造とされている。
【０００３】
図３１（ａ）（ｂ）はメモリセルアレイの１つのＮＡＮＤセル部分の平面図と等価回路図である。図３２（ａ）は図３１（ａ）に示す３２ａ−３２ａ線に沿った断面図であり、図３２（ｂ）は図３１（ａ）に示す３２ｂ−３２ｂ線に沿った断面図である。
【０００４】
Ｐ型基板７１内にはＮ型ウェル７１ａが形成され、このＮ型ウェル７１ａ内にＰ型ウェル７１ｂが形成されている。メモリセルはＰ型ウェル７１ｂに形成されている。素子分離酸化膜７２で囲まれたＰ型ウエル７１ｂ内には、複数のＮＡＮＤセルからなるメモリセルアレイが形成されている。この例において、１つのＮＡＮＤセルは、８個のメモリセルＭ１〜Ｍ８が直列接続されて構成されている。各メモリセルにおいて、浮遊ゲート７４（７４１  、７４２  …７４８  ）はＰ型ウエル７１ｂにゲート絶縁膜７３を介して形成されている。これらのメモリセルのソース、ドレインとしてのｎ型拡散層７９は、隣接するもの同士が直列接続されている。
【０００５】
ＮＡＮＤセルのドレイン側、ソース側には第１の選択ゲート７４９  、７６９  及び第２の選択ゲート７４１０、７６１０が設けられている。各第１の選択ゲート７４９  、７６９  及び第２の選択ゲート７４１０、７６１０はメモリセルの浮遊ゲート７４（７４１  …７４８  ）、制御ゲート７６（７６１  …７６８  ）と同時に形成される。なお、第１の選択ゲート７４９  、７６９  及び第２の選択ゲート７４１０、７６１０はともに、図示せぬ所望の部分で１層目と２層目が導通接続されている。素子が形成された基板はＣＶＤ酸化膜７７により覆われ、この上にビット線７８が配設される。ＮＡＮＤセルの制御ゲート７６１  、７６２  …７６８  （ＣＧ１  、ＣＧ２  …ＣＧ８  ）は、ワード線とされる。選択ゲート７４９  、７６９  及び７４１０、７６１０（ＳＧ１  、ＳＧ２  ）はそれぞれ行方向に配置され、選択ゲート線とされる。
【０００６】
図３３は、上記構成のＮＡＮＤセルをマトリクス状に配列したメモリセルアレイの等価回路を示している。この例において、ソース線は例えば６４本のビット線毎に１箇所、コンタクトを介してアルミニウムや、ポリシリコン等からなる基準電位配線に接続される。この基準電位配線は周辺回路に接続される。メモリセルの制御ゲート及び第１、第２の選択ゲートは、行方向に連続的に配設される。通常、制御ゲートが共通に接続されたメモリセルの集合を１ページと呼び、ドレイン側（第１の選択ゲート）とソース側（第２の選択ゲート）の１組の選択ゲートの間に配置されたページの集合を１ＮＡＮＤブロック、又は単に１ブロックと呼ぶ。１ページは例えば２５６バイト（２５６×８）個のメモリセルから構成される。１ページ分のメモリセルはほぼ同時に書き込みが行われる。１ブロックは例えば２０４８バイト（２０４８×８）個のメモリセルから構成される。１ブロック分のメモリセルはほぼ同時に消去される。
【０００７】
ＮＡＮＤセル型ＥＥＰＲＯＭの書き込み動作は次の通りである。ビット線には書き込みデータに応じて０Ｖ、又は電源電圧Ｖｃｃを印加する。データ“０”を書き込む場合を“０”書き込みと呼び、この場合、ビット線の電位は電源電圧０Ｖである。また、データ“１”を書き込む場合を“１”書き込みと呼び、この場合、ビット線の電位はＶｃｃである。ＮＡＮＤセルをビット線に接続する選択ゲートには電源電圧Ｖｃｃが供給され、ソース線に接続する選択ゲートには接地電位０Ｖが供給される。このとき、“０”書き込みのセルのチャネルにはビット線から０Ｖが伝送され、“１”書き込みのセルはビット線に接続された選択ゲートがオフとなるため、“１”書き込みをするメモリセルのチャネルの電位はＶｃｃ−Ｖｔｈｓｇ（Ｖｔｈｓｇは選択ゲートの閾値電圧）となり、フローティングになる。あるいは、書き込みを行うメモリセルよりもビット線側のメモリセルの閾値が正電圧Ｖｔｈｃｅｌｌを有する場合、メモリセルのチャネルはＶｃｃ−Ｖｔｈｃｅｌｌになる。
【０００８】
その後、選択されたメモリセルの制御ゲートには昇圧された書き込み電圧Ｖｐｇｍ（＝２０Ｖ程度）が印加され、他の非選択メモリセルの制御ゲートには中間電位Ｖｐａｓｓ（＝１０Ｖ程度）が印加される。その結果、“０”書き込みの時は、チャネルの電位が０Ｖであるため選択メモリセルの浮遊ゲートとチャネル間に高電圧が印加される。このため、チャネルから浮遊ゲートに電子がＦ−Ｎトンネリングにより注入され、選択メモリセルの閾値電圧が正方向に移動する。“１”書き込みの時は、フローティング状態のチャネルの電位は制御ゲートとの容量結合によって６Ｖ程度となるため、チャネルから浮遊ゲートに電子が注入されない。
【０００９】
従来のＮＡＮＤ型フラッシュメモリの書き込み動作では、書き込みパルスの印加後に書き込みが十分に行われたかどうかを調べるベリファイリードを行う。このベリファイリードで書き込みが不十分と検知されたメモリセルに対してのみ再書き込みが行われる。
【００１０】
データ消去は、ブロック単位でほぼ同時に行われる。すなわち、消去するブロックの全ての制御ゲートを０Ｖとし、セルが形成されるＰウエル及びＮウエルに昇圧された昇圧電位Ｖｅｒａ  （２０Ｖ程度）を印加する。消去を行わないブロックの制御ゲートはフローティング状態からＰウエルとの間の容量結合で昇圧電圧Ｖｅｒａ  に昇圧される。これにより消去するブロックのメモリセルにおいて浮遊ゲートの電子がウエルに放出され、閾値電圧が負方向に移動する。消去を行わないブロックでは制御ゲート、Ｐウエルとも昇圧電位Ｖｅｒａ  であるため消去は行われない。
【００１１】
データの読み出し動作は、先ず、ビット線を電源電圧Ｖｃｃにプリチャージした後、フローティングとする。この状態において、選択されたメモリセルの制御ゲートを０Ｖ、それ以外のメモリセルの制御ゲート、選択ゲートをそれぞれ例えば３．５Ｖ、ソース線を０Ｖとし、選択されたメモリセルに電流が流れるか否かをビット線の電位の変化として検出する。すなわち、メモリセルにデータ“０”（メモリセルの閾値Ｖｔｈ＞０）が書き込まれている場合、メモリセルはオフしているため、ビット線はプリチャージ電位を保つ。一方、データ“１”（メモリセルの閾値Ｖｔｈ＜０）が書き込まれている場合、メモリセルはオンするためビット線はプリチャージ電位からΔＶだけ下がる。これらビット線電位の変化をセンスアンプにより検出することによって、メモリセルのデータが読み出される。
【００１２】
ところで、ＥＥＰＲＯＭの大容量化が求められており、それを実現する手法の１つとして、１個のセルに３値以上の情報を記憶させる多値記憶セルが知られている（例えば特開平７−９３９７９、特願平５−３１１７３２）。
【００１３】
【発明が解決しようとする課題】
しかし、メモリセルを多値化するに従い、記憶容量が増える反面、複数のデータを識別可能とするために、各データの閾値電圧を高精度に制御する必要がある。このため、書き込みに要する時間が長くなるという問題がある。
【００１４】
本発明は、上記課題を解決するためになされたものであり、その目的とするところは書き込み時間を短縮することが可能な半導体記憶装置を提供しようとするものである。
【００１５】
【課題を解決するための手段】
本発明は、上記課題を解決するため、“１”状態は第１の閾値レベルを有し、“２”状態は第１の閾値レベルよりも高い第２の閾値レベルを有し、“３”状態は第２の閾値レベルよりも高い第３の閾値レベルを有し、“ｉ”状態（ｉはｎ以下の自然数であり、ｎは４以上の自然数）は第（ｉ−１）の閾値レベルよりも高い第ｉの閾値レベルを有するｎ値を記憶するメモリセルと、前記メモリセルに書き込むデータを保持する複数のラッチ回路を含むデータ回路と、前記データ回路の動作を制御する制御回路とを具備し、前記制御回路は、前記メモリセルが“１”状態を保持する場合に、前記メモリセルの外部から入力された書き込みデータに基づいて第１の書き込みを行い、前記メモリセルを“１”状態又は“５”状態にし、前記メモリセルが“１”状態又は“５”状態を保持する場合に、前記メモリセルの外部から入力された書き込みデータと、前記メモリセルが保持するデータに基づいて第２の書き込みを行い、前記メモリセルを“１”状態又は“３”状態又は“５”状態又は“７”状態にし、前記メモリセルが“１”状態又は“３”状態又は“５”状態又は“７”状態を保持する場合に、前記メモリセルの外部から入力された書き込みデータと、前記メモリセルが保持するデータに基づいて第３の書き込みを行い、前記メモリセルを“１”状態又は“２”状態又は“３”状態又は“４”状態又は“５”状態又は“６”状態又は“７”状態又は“８”状態にする。
【００１６】
また、本発明の半導体記憶装置は、“１”状態は第１の閾値レベルを有し、“２”状態は第１の閾値レベルよりも高い第２の閾値レベルを有し、“３”状態は第２の閾値レベルよりも高い第３の閾値レベルを有し、“ｉ”状態（ｉはn以下の自然数であり、nは４以上の自然数）は第（ｉ−１）の閾値レベルよりも高い第ｉの閾値レベルを有するn値を記憶するメモリセルと、前記メモリセルに書き込むデータを保持する複数のラッチ回路を含むデータ回路と、前記データ回路の動作を制御する制御回路とを具備し、前記制御回路は、前記メモリセルが“１”状態を保持する場合に、前記メモリセルの外部から入力された第１の書き込みデータに基づいて第１の書き込みを行い、第１の書き込みデータが第１の論理の場合には前記メモリセルを“１”状態にし、第１の書き込みデータが第２の論理の場合には前記メモリセルは“５”状態にし、前記メモリセルが“１”状態又は“５”状態を保持する場合に、前記メモリセルの外部から入力された第２の書き込みデータと、前記メモリセルが保持するデータに基づいて第２の書き込みを行い、第２の書き込みデータが第３の論理の場合には前記メモリセルを“１”状態又は“５”状態とし、第２の書き込みデータが第４の論理の場合には“１”状態の前記メモリセルを“３”状態にし、“５”状態の前記メモリセルを“７”状態にし、前記メモリセルが“１”状態又は“３”状態又は“５”状態又は“７”状態を保持する場合に、前記メモリセルの外部から入力された第３の書き込みデータと、前記メモリセルが保持するデータに基づいて第３の書き込みを行い、第３の書き込みデータが第５の論理の場合には前記メモリセルを“１”状態又は“３”状態又は“５”状態又は“７”状態にし、第３の書き込みデータが第６の論理の場合には“１”状態の前記メモリセルを“２”状態にし、“３”状態の前記メモリセルを“４”状態にし、“５”状態の前記メモリセルを“６”状態にし、“７”状態の前記メモリセルを“８”状態にする。
【００１７】
また、本発明の半導体記憶装置は、“１”状態は第１の閾値レベルを有し、“２”状態は第１の閾値レベルよりも高い第２の閾値レベルを有し、“３”状態は第２の閾値レベルよりも高い第３の閾値レベルを有し、“ｉ”状態（ｉはｎ以下の自然数であり、ｎは４以上の自然数）は第（ｉ−１）の閾値レベルよりも高い第ｉの閾値レベルを有するｎ値を記憶するメモリセルと、前記メモリセルに書き込むデータを保持する複数のラッチ回路を含むデータ回路と、前記データ回路の動作を制御する制御回路とを具備し、前記制御回路は、前記メモリセルが“Ｂ”状態を保持する場合に、前記メモリセルの外部から入力された書き込みデータに基づいて第１の書き込みを行い、前記メモリセルを“Ｂ”状態又は“Ｃ”状態（ＣはＣ＞Ｂを満たす整数）にし、前記メモリセルが“Ｂ”状態又は“Ｃ”状態を保持する場合に、前記メモリセルの外部から入力された書き込みデータと、前記メモリセルが保持するデータに基づいて第２の書き込みを行い、前記メモリセルを“Ｂ”状態又は“Ｃ”状態又は“Ｄ”状態又は“Ｅ”状態（Ｄ、ＥはＥ＞Ｃ＞Ｄ＞Ｂを満たす整数）にし、前記メモリセルが“Ｂ”状態又は“Ｃ”状態又は“Ｄ”状態又は“Ｅ”状態を保持する場合に、前記メモリセルの外部から入力された書き込みデータと、前記メモリセルが保持するデータに基づいて第３の書き込みを行い、前記メモリセルを“Ｂ”状態又は“Ｃ”状態又は“Ｄ”状態又は“Ｅ”状態又は“Ｆ”状態又は“Ｇ”状態又は“Ｈ”状態又は“Ｉ”状態（Ｆ、Ｇ、Ｈ、ＩはＩ＞Ｅ＞Ｈ＞Ｃ＞Ｇ＞Ｄ＞Ｆ＞Ｂを満たす整数）にする。
【００１８】
また、本発明の半導体記憶装置は、“１”状態は第１の閾値レベルを有し、“２”状態は第１の閾値レベルよりも高い第２の閾値レベルを有し、“３”状態は第２の閾値レベルよりも高い第３の閾値レベルを有し、“ｉ”状態（ｉはn以下の自然数であり、nは４以上の自然数）は第（ｉ−１）の閾値レベルよりも高い第ｉの閾値レベルを有するn値を記憶するメモリセルと、前記メモリセルに書き込むデータを保持する複数のラッチ回路を含むデータ回路と、前記データ回路の動作を制御する制御回路とを具備し、前記制御回路は、前記メモリセルが“Ｂ”状態を保持する場合に、前記メモリセルの外部から入力された第１の書き込みデータに基づいて第１の書き込みを行い、第１の書き込みデータが第１の論理の場合には前記メモリセルを“Ｂ”状態にし、第１の書き込みデータが第２の論理の場合には前記メモリセルは“Ｃ”状態（ＣはＣ＞Ｂを満たす整数）にし、前記メモリセルが“Ｂ”状態又は“Ｃ”状態を保持する場合に、前記メモリセルの外部から入力された第２の書き込みデータと、前記メモリセルが保持するデータに基づいて第２の書き込みを行い、第２の書き込みデータが第３の論理の場合には前記メモリセルを“Ｂ”状態又は“Ｃ”状態にし、第２の書き込みデータが第４の論理の場合には“Ｂ”状態の前記メモリセルを“Ｄ”状態にし、“Ｃ”状態の前記メモリセルを“Ｅ”状態（Ｄ、ＥはＥ＞Ｃ＞Ｄ＞Ｂを満たす整数）にし、前記メモリセルが“Ｂ”状態又は“Ｃ”状態又は“Ｄ”状態又は“Ｅ”状態を保持する場合に、前記メモリセルの外部から入力された第３の書き込みデータと、前記メモリセルが保持するデータに基づいて第３の書き込みを行い、第３の書き込みデータが第５の論理の場合には前記メモリセルを“Ｂ”状態又は“Ｃ”状態又は“Ｄ”状態又は“Ｅ”状態にし、第３の書き込みデータが第６の論理の場合には“Ｂ”状態の前記メモリセルを“Ｆ”状態にし、“Ｄ”状態のメモリセルを“Ｇ”状態にし、“Ｃ”状態の前記メモリセルを“Ｈ”状態にし、“Ｅ”状態の前記メモリセルを“Ｉ”状態（Ｆ，Ｇ，Ｈ，ＩはＩ＞Ｅ＞Ｈ＞Ｃ＞Ｇ＞Ｄ＞Ｆ＞Ｂを満たす整数）にする。
【００２０】
また、本発明の半導体記憶装置は、“１”状態は第１の閾値レベルを有し、“２”状態は第１の閾値レベルよりも高い第２の閾値レベルを有し、“３”状態は第２の閾値レベルよりも高い第３の閾値レベルを有し、“ｉ”状態（ｉはn以下の自然数であり、nは４以上の自然数）は第（ｉ−１）の閾値レベルよりも高い第ｉの閾値レベルを有するn値を記憶するメモリセルと、前記メモリセルに書き込むデータを保持する複数のラッチ回路を含むデータ回路と、前記データ回路の動作を制御する制御回路とを具備し、前記制御回路は、前記メモリセルが“１”状態を保持する場合に、前記メモリセルの外部から入力された第１の書き込みデータに基づいて第１の書き込みを行い、第１の書き込みデータが第１の論理の場合には前記メモリセルを“１”状態にし、第１の書き込みデータが第２の論理の場合には前記メモリセルは“２m-1 ＋１”状態（ｍは自然数で、“２m-1 ＋１”はｎ以下の自然数）にし、前記メモリセルが“１”状態又は“２m-1 ＋１”状態を保持する場合に、前記メモリセルの外部から入力された第２の書き込みデータと、前記メモリセルが保持するデータに基づいて第２の書き込みを行い、第２の書き込みデータが第３の論理の場合には前記メモリセルを“１”状態又は“２m-1 ＋１”状態にし、第２の書き込みデータが第４の論理の場合には“１”状態の前記メモリセルを“２m-2 ＋１”状態にし、“２m-1 ＋１”状態の前記メモリセルを“２m-1 ＋２m-2 ＋１”状態にし、前記メモリセルが“１”状態又は“２m-2 ＋１”状態又は“２m-1 ＋１”状態又は“２m-1 ＋２m-2 ＋１”状態を保持する場合に、前記メモリセルの外部から入力された第３の書き込みデータと、前記メモリセルが保持するデータに基づいて第３の書き込みを行い、第３の書き込みデータが第５の論理の場合には前記メモリセルを“１”状態又は“２m-2 ＋１”状態又は“２m-1 ＋１”状態又は“２m-1 ＋２m-2 ＋１”にし、第３の書き込みデータが第６の論理の場合には“１”状態の前記メモリセルを“２m-3 ＋１”状態にし、“２m-2 ＋１”状態の前記メモリセルを“２m-2 ＋２m-3 ＋１”状態にし、“２m-1 ＋１”状態の前記メモリセルを“２m-1 ＋２m-3 ＋１”状態にし、“２m-1 ＋２m-2 ＋１”状態の前記メモリセルを“２m-1 ＋２m-2 ＋２m-3 ＋１”状態（“２m-1 ＋２m-2 ＋２m-3 ＋１”はｎ以下の自然数）にする。
【００２１】
また、本発明の半導体記憶装置は、“１”状態は第１の閾値レベルを有し、“２”状態は第１の閾値レベルよりも高い第２の閾値レベルを有し、“３”状態は第２の閾値レベルよりも高い第３の閾値レベルを有し、“ｉ”状態（ｉはｎ以下の自然数であり、ｎは４以上の自然数）は第（ｉ−１）の閾値レベルよりも高い第ｉの閾値レベルを有するｎ値を記憶するメモリセルと、前記メモリセルに書き込むデータを保持する複数のラッチ回路を含むデータ回路と、前記データ回路の動作を制御する制御回路とを具備し、前記制御回路は、前記メモリセルが“Ｂ”状態又は“Ｃ”状態又は“Ｄ”状態又は“Ｅ”状態（Ｂ，Ｃ、Ｄ、ＥはＥ＞Ｃ＞Ｄ＞Ｂを満たす整数）を保持する場合に、前記メモリセルの外部から入力された書き込みデータと、前記メモリセルが保持するデータに基づいて書き込みを行い、前記メモリセルを“Ｂ”状態又は“Ｃ”状態又は“Ｄ”状態又は“Ｅ”状態又は“Ｆ”状態又は“Ｇ”状態又は“Ｈ”状態又は“Ｉ”状態（Ｆ，Ｇ，Ｈ，ＩはＩ＞Ｅ＞Ｈ＞Ｃ＞Ｇ＞Ｄ＞Ｆ＞Ｂを満たす整数）にする。
【００２２】
また、本発明の半導体記憶装置は、“１”状態は第１の閾値レベルを有し、“２”状態は第１の閾値レベルよりも高い第２の閾値レベルを有し、“３”状態は第２の閾値レベルよりも高い第３の閾値レベルを有し、“ｉ”状態（ｉはｎ以下の自然数であり、ｎは４以上の自然数）は第（ｉ−１）の閾値レベルよりも高い第ｉの閾値レベルを有するｎ値を記憶するメモリセルと、前記メモリセルに書き込むデータを保持する複数のラッチ回路を含むデータ回路と、前記データ回路の動作を制御する制御回路とを具備し、前記制御回路は、前記メモリセルが“Ｂ”状態又は“Ｃ”状態又は“Ｄ”状態又は“Ｅ”状態を保持する場合に、前記メモリセルの外部から入力された書き込みデータと、前記メモリセルが保持するデータに基づいて書き込みを行い、書き込みデータが第１の論理の場合には前記メモリセルを“Ｂ”状態又は“Ｃ”状態又は“Ｄ”状態又は“Ｅ”状態にし、書き込みデータが第２の論理の場合には“Ｂ”状態の前記メモリセルを“Ｆ”状態にし、“Ｄ”状態の前記メモリセルを“Ｇ”状態にし、“Ｃ”状態の前記メモリセルを“Ｈ”状態にし、“Ｅ”状態の前記メモリセルを“Ｆ”状態（Ｆ，Ｇ，Ｈ，ＩはＩ＞Ｅ＞Ｈ＞Ｃ＞Ｇ＞Ｄ＞Ｆ＞Ｂを満たす整数）にする。
【００２４】
また、本発明の半導体記憶装置は、“１”状態は第１の閾値レベルを有し、“２”状態は第１の閾値レベルよりも高い第２の閾値レベルを有し、“３”状態は第２の閾値レベルよりも高い第３の閾値レベルを有し、“ｉ”状態（ｉはｎ以下の自然数であり、ｎは４以上の自然数）は第（ｉ−１）の閾値レベルよりも高い第ｉの閾値レベルを有するn値を記憶するメモリセルにおいて、前記メモリセルに書き込むデータを保持する複数のラッチ回路を含むデータ回路と、前記データ回路の動作を制御する制御回路とを具備し、前記制御回路は、前記メモリセルが“１”状態又は“２k-3 ＋１”状態又は“２k-1 ＋１”状態又は“２k-3 ＋２k-2 ＋１”状態（ｋは自然数で、“２k-3 ＋２k-2 ＋１”はｎ以下の自然数）を保持する場合に、前記メモリセルの外部から入力された書き込みデータと、前記メモリセルが保持するデータに基づいて書き込みを行い、書き込みデータが第１の論理の場合には前記メモリセルを“１”状態又は“２k-2 ＋１”状態又は“２k-1 ＋１”状態又は“２k-1 ＋２k-2 ＋１”にし、書き込みデータが第２の論理の場合には“１”状態の前記メモリセルを“２k-3 ＋１”状態にし、“２k-2 ＋１”状態の前記メモリセルを“２k-2 ＋２k-3 ＋１”状態にし、“２k-1 ＋１”状態の前記メモリセルを“２k-1 ＋２k-3 ＋１”状態にし、“２k-1 ＋２k-2 ＋１”状態の前記メモリセルを“２k-1 ＋２k-2 ＋２k-3 ＋１”状態（“２k-1 ＋２k-2 ＋２k-3 ＋１”はｎ以下の自然数）にする。
【００２５】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態について説明する。
【００２６】
図１は、本発明に係わる半導体記憶装置のブロック図を示している。メモリセルアレイ１には図示せぬ複数のメモリセルがマトリクス状に配置されている。このメモリセルアレイ１には、制御ゲート・選択ゲート駆動回路２、データ回路群７が接続されている。前記制御ゲート・選択ゲート駆動回路２にはアドレスバッファ３、書き込み電圧発生回路４、ベリファイ電圧発生回路５、読み出し電圧発生回路６が接続されている。前記アドレスバッファ３はアドレス信号を受け、制御ゲート・選択ゲート駆動回路２及びデータ回路群７にアドレス信号を供給する。前記書き込み電圧発生回路４はデータの書き込み時に所定の書き込み電圧を発生する。前記ベリファイ電圧発生回路５はベリファイ時に所定のベリファイ電圧を発生する。前記読み出し電圧発生回路６はデータの読み出し時に所定の読み出し電圧を発生する。前記制御ゲート・選択ゲート駆動回路２はアドレスバッファ３からのアドレス信号を受け、メモリセルを選択する。さらに、制御ゲート・選択ゲート駆動回路２はデータの書き込み時に、前記書き込み電圧発回路４から供給される書き込み電圧を前記選択したメモリセルの制御ゲートに供給し、データの読み出し時に前記読み出し電圧発生回路６から供給される読み出し電圧を選択したメモリセルに供給する。さらに、ベリファイ時に前記ベリファイ電圧発生回路４から供給されるベリファイ電圧を選択したメモリセルに供給する。
【００２７】
前記データ回路群７には、データ入出力バッファ８が接続されている。データ入出力バッファ８は、チップ外部とのデータの入出力制御を行う。データ回路群７は後述するように複数のデータ回路を有している。このデータ回路群７はアドレスバッファ３からのアドレス信号を受けるとともに、データ入出力バッファ８から供給される書き込みデータを保持したり、メモリセルから読み出されたデータを保持する。制御回路９はこの半導体記憶装置全体の動作を制御する。この制御回路９は、書き込み時、読み出し時、ベリファイ時に前記制御ゲート・選択ゲート駆動回路２、書き込み電圧発生回路４、ベリファイ電圧発生回路５、読み出し電圧発生回路６、データ回路群７の動作を制御する。
【００２８】
本発明では、１つのメモリセルに複数ページのデータが記憶される。例えば８値メモリセルの場合には１つのメモリセルが３ページに分けられている。つまり、１つのメモリセルに記憶される３ページのデータは３つのロウアドレスに相当する。次に、これについて説明する。
【００２９】
図２は、１つのワード線ＷＬ１に接続されるメモリセルＭＣ１〜ＭＣ１２８と、これらメモリセルＭＣ１〜ＭＣ１２８に書き込まれるデータ群を表している。１２８ビットの書き込みデータ群、Ａ０乃至Ａ１２７はメモリセルＭＣ１からＭＣ１２８内の第１のページに書き込まれる。次の１２８ビットの書き込みデータ群、Ｂ０乃至Ｂ１２７はメモリセルＭＣ１からＭＣ１２８内の第２のページに書き込まれる。さらに、１２８ビットの書き込みデータ群、Ｃ０乃至Ｃ１２７はメモリセルＭＣｌ  からＭＣ１２８内の第３のページに書き込まれる。
【００３０】
図３、図４は、メモリセルの書き込み、読み出し動作を示している。図３、図４において、メモリセルＭＣ１、ＭＣ２、ＭＣ３…ＭＣ１２７、ＭＣ１２８は、ワード線ＷＬ１をゲート電極として共有する。各メモリセルＭＣ１、ＭＣ２、ＭＣ３…ＭＣ１２７、ＭＣ１２８は、第１乃至第１２８のビット線を介して第１乃至第１２８のデータ回路に接続されている。
【００３１】
＜書き込み＞
図３は、書き込み動作を説明する図である。まず、第１ページ目の書き込みについて説明する。第１ページ目の書き込みデータのうち、データＡ０が第１のデータ回路７−１にラッチされ、データＡ１が第２のデータ回路７−２にラッチされる。同様に、データＡ１２６  が第１２７のデータ回路７−１２７に、データＡ１２７  が第１２８のデータ回路７−１２８にラッチされる。各データ回路にラッチしたデータに従って、ワード線ＷＬ１を共有する、ＭＣ１，ＭＣ２，ＭＣ３，…，ＭＣ１２７，ＭＣ１２８に第１ページの書き込みが行われる。
【００３２】
次に、第２ページ目の書き込みについて説明する。データＢ０が第１のデータ回路７−１にラッチされ、データＢ１が第２のデータ回路７−２にラッチされる。同様に、データＢ１２６  が第１２７のデータ回路７−１２７に、データＢ１２７  が第１２８のデータ回路７−１２８にラッチされる。第２ページの書き込みデータＢ０乃至Ｂ１２７  を第１のデータ回路７−１から第１２８のデータ回路７−１２８にラッチしている間に、メモリセルに書き込まれた第１ページのデータＡ０乃至Ａ１２７  を第１のデータ回路７−１から第１２８のデータ回路７−１２８に読み出し、保持する。この後、各データ回路にラッチした第１ページのデータＡ０からＡ１２７  及び第２ページの書き込みデータＢ０乃至Ｂ１２７  に従って、ワード線ＷＬ１を共有する、ＭＣ１，ＭＣ２，ＭＣ３，…，ＭＣ１２７  ，ＭＣ１２８  に第２ページの書き込みが行われる。
【００３３】
次に、第３ページ目の書き込み動作について説明する。この場合、データＣ０が第１のデータ回路７−１にラッチされ、データＣ１が第２のデータ回路７−１にラッチされる。同様にデータＣ１２６  が第１２７のデータ回路７−１２７に、データＣ１２７  が第１２８のデータ回路７−１２８にラッチされる。第３ページの書き込みデータＣ０乃至Ｃ１２７  を第１のデータ回路７−１から第１２８のデータ回路７−１２８にラッチしている間に、メモリセルに書き込まれた第１ページのデータＡ０乃至Ａ１２７  、及び第２ページのデータＢ０乃至Ｂ１２７  を第１のデータ回路７−１乃至第１２８のデータ回路７−１２８に読み出し、保持する。この後、各データ回路にラッチした第１ページのデータＡ０乃至Ａ１２７  及び第２ページのデータＢ０乃至Ｂ１２７  、さらに、書き込みデータＣ０乃至Ｃ１２７  に従って、ワード線ＷＬ１を共有する、ＭＣ１，ＭＣ２，ＭＣ３，…，ＭＣ１２７  ，ＭＣ１２８  に第３ページの書き込みが行われる。すなわち、メモリセルＭＣ１〜ＭＣ１２８  に３ページ分のデータが書き込まれたこととなる。より詳細な書き込み動作については後述する。
【００３４】
＜読み出し＞
図４は、読み出し動作を示している。まず、第１ページ目の読み出し動作について説明する。メモリセルＭＣ１からデータＡ０が第１のデータ回路７−１に読み出され、メモリセルＭＣ２からデータＡ１が第２のデータ回路７−２に読み出される。同様に、メモリセルＭＣ１２７からデータＡ１２６  が第１２７のデータ回路７−１２７に、メモリセルＭＣ１２８からデータＡ１２７  が第１２８のデータ回路７−１２８にラッチされる。以上のように、ワード線ＷＬ１を共有する、ＭＣ１，ＭＣ２，ＭＣ３，…，ＭＣ１２７，ＭＣ１２８の第１ページのデータが各データ回路７−１〜７−１２８に読み出される。
【００３５】
次に、第２ページ目の読み出し動作について説明する。メモリセルＭＣ１からデータＢ０が第１のデータ回路７−１に読み出され、メモリセルＭＣ２からデータＢ１が第２のデータ回路７−２に読み出される。同様に、メモリセル１２７からデータＢ１２６  が第１２７のデータ回路７−１２７に、メモリセル１２８からデータＢ１２７  が第１２８のデータ回路７−１２８に読み出される。以上のように、ワード線ＷＬ１を共有する、ＭＣ１，ＭＣ２，ＭＣ３，…，ＭＣ１２７，ＭＣ１２８の第２ページのデータが各データ回路７−１〜７−１２８に読み出される。
【００３６】
次に、第３ページ目の読み出し動作について説明する。メモリセルＭＣ１からデータＣ０が第１のデータ回路７−１に読み出され、メモリセルＭＣ２からデータＣ１が第２のデータ回路７−２に読み出される。同様に、メモリセル１２７からデータＣ１２６  が第１２７のデータ回路７−１２７に、メモリセル１２８からデータＣ１２７  が第１２８のデータ回路７−１２８に読み出される。以上のように、ワード線ＷＬ１を共有する、ＭＣ１，ＭＣ２，ＭＣ３，…，ＭＣ１２７，ＭＣ１２８の第３ページのデータが各データ回路７−１〜７−１２８に読み出される。
【００３７】
図５は、図１、図３、図４に示すメモリセルアレイ１とデータ回路群７との関係の一例を示している。メモリセルＭＣ１１〜ＭＣ１８が直列に接続されＮＡＮＤ型セルを構成している。ＮＡＮＤ型セルの両端は、選択トランジスタＳ１，Ｓ２を介して、それぞれビット線ＢＬ１Ａ〜ＢＬ１２８Ａ、ソース線Ｖｓに接続されている。また、８本の制御ゲートＣＧ１〜ＣＧ８（ワード線ＷＬ１〜ＷＬ８）に接続されるメモリセル群でブロックを形成する。“ページ”及び“ブロック”は前記制御ゲート・選択ゲート駆動回路２によって選択される。各ビット線ＢＬ１Ａ〜ＢＬ１２８Ａは、第１乃至第１２８のデータ回路７−  １〜７−  １２８に接続され、これらデータ回路７−  １〜７−  １２８は対応するメモリセルへの書き込みデータを一時的に記憶する。この実施の形態はオープン・ビット線配置であるため、第１乃至第１２８のデータ回路７−  １〜７−  １２８にはビット線ＢＬ１Ｂ〜ＢＬ１２８Ｂも接続される。
【００３８】
図６は、データ回路群７を構成する一つのデータ回路を示している。第１乃至第１２８のデータ回路７−  １〜７−  １２８は全て同一構成であるため、第１のデータ回路７−１について説明する。この第１のデータ回路７−１は、第１乃至第３のラッチ回路７ａ、７ｂ、７ｃを有している。第１乃至第３のラッチ回路７ａ、７ｂ、７ｃはビット線ＢＬ１Ａ、ＢＬ１Ｂに接続されるとともに、Ｉ／Ｏ線を介して前記データ入出力バッファ８に接続される。尚、図６において、第１乃至第３のラッチ回路７ａ、７ｂ、７ｃは１本のＩ／Ｏ線を共有しているが、各ラッチ回路に別々のＩ／Ｏ線を接続してもよい。すなわち、例えば３つのＩ／Ｏ線を設け、各Ｉ／Ｏ線を第１乃至第３のラッチ回路７ａ、７ｂ、７ｃにそれぞれ接続してもよい。
【００３９】
次に、図７、図８を参照して１つのメモリセルに対する具体的な書き込み動作について説明する。メモリセルは図５に示すＮＡＮＤ型メモリセルと同様の構成とする。尚、図５以降において、ワード線ＷＬ１に接続されるメモリセルＭＣ１はＭＣ１１と記す。また、図７（ａ）（ｂ）（ｃ）において、“１”は消去状態を示している。
【００４０】
＜第１の書き込み動作＞
第１の書き込み動作について、図７（ａ）に示したメモリセルの閾値の変化を参照して説明する。
【００４１】
入力データは図６に示す第１のラッチ回路７ａに供給され、ビット線に所定の電圧が供給される。例えば入力データが“１”の場合、ビット線は電源電圧Ｖｃｃとなり、書き込み非選択状態に設定される。入力データが“０”の場合、ビット線は０Ｖとなり、選択されたメモリセルのチャネルは０Ｖに設定される。例えば図５に示すメモリセルＭ１３にデータを書き込む場合、選択されたワード線ＷＬ３はＶｐｇｍ  （例えば２０Ｖ）、選択ワード線の両隣のワード線ＷＬ２、ＷＬ４（図示せず）は０Ｖに設定される。その他のワード線ＷＬ１、ＷＬ５（図示せず）…８はＶｐａｓｓ（例えば１０Ｖ）に設定される。書き込み非選択の場合、Ｍ１２、Ｍ１４がオフするため、Ｍ１３のチャネルはＷＬ３との間の容量結合で８Ｖ程度まで上昇する。その結果、書き込み非選択の場合、フローティングゲートヘの電子の注入が防止される。このように選択ワード線の両隣のワード線を接地するローカル・セルフ・ブースト方式の書き込み方式は公知例Ｔ．Ｓ．Ｊｕｎｇ  ｅｔ  ａｌ．，  ＩＳＳＣＣ  Ｔｅｃｈ．  Ｄｉｇ．  Ｐ．３２−３３，  １９９６と同様である。
【００４２】
上記ローカル・セルフ・ブースト方式の書き込み方式により、誤書き込みを生じない高信頼性を有する書き込みを実現できる。ローカル・セルフ・ブースト方式を用いる場合、公知例Ｍ．  Ｏｈｋａｗａ，  ｅｔ  ａｌ．，  ＩＳＳＣＣ，  ｐｐ．  ３６−３７，  １９９６に記されているようなビット線に例えば１Ｖを印加して複数のセルを同時に書き込むことはできない。これは、例えば図５に示すメモリセルＭ１３を書き込む場合には、Ｍ１２のゲートＷＬ２を０Ｖにするため、ビット線を１Ｖにした場合にＭ１２がオフし、ビット線電位をＭ１３のチャネルに転送できないからである。
【００４３】
書き込み非選択のメモリセルは消去状態（“１”状態）を保持する。入力データが“０”の場合には図７に示すようにメモリセルは“５”状態に書き込まれる。すなわち、第１の書き込み動作終了後、メモリセルの閾値は“１”又は“５”の状態となっている。
【００４４】
＜第２の書き込み動作＞
次に、図７（ｂ）を参照して第２の書き込み動作について説明する。
【００４５】
入力データは図６に示す第１のラッチ回路７ａに供給される。このときメモリセルのデータが読み出され、第２のラッチ回路７ｂに供給される。入力データが“１”の場合、ビット線は電源電圧Ｖｃｃとなり、書き込み非選択状態に設定される。この時、図７に示すようにメモリセルは第１の書き込み動作後の状態、つまり、“１”状態又は“５”状態を保持する。入力データが“０”の場合、ビット線は０Ｖとなり、選択されたメモリセルのチャネルは０Ｖに設定され、書き込みが行われる。先ず最初に“１”状態のセルは“３”状態に書き込まれる。その後、第１の書き込み動作後に“５”状態のセルは“７”状態に書き込まれる。すなわち、第２の書き込み動作終了後、メモリセルの閾値は、“１”又は“３”又は“５”又は“７”の状態となっている。
【００４６】
＜第３の書き込み動作＞
次に、図７（ｃ）を参照して第３の書き込み動作について説明する。
【００４７】
入力データは図６の第１のラッチ回路７ａに供給される。このときメモリセルのデータが読み出され、第２および第３のラッチ回路７ｂ、７ｃにそれぞれ供給される。入力データが“１”の場合、ビット線はＶｃｃとなり、書き込み非選択状態に設定される。この時、図７に示すようにメモリセルは第２の書き込み動作後の状態、つまり、“１”又は“３”又は“５”又は“７”状態を保持する。入力データが“０”の場合、ビット線は０Ｖとなり、選択されたメモリセルのチャネルは０Ｖに設定され、書き込みが行われる。先ず最初に第２の書き込み動作後に“１”状態のセルは“２”状態に書き込まれる。次に、第２の書き込み動作後に“３”状態のセルは“４”状態に書き込まれる。最後に、第２の書き込み動作後に“５”状態のセルは“６”状態に書き込まれ、“７”状態のセルは“８”状態に書き込まれる。すなわち、第３の書き込み動作終了後、メモリセルの閾値は、“１”乃至“８”のいずれかの状態となっている。
【００４８】
図８に上記説明した本発明の書き込みデータと閾値分布の関係を示す。すなわち、例えば第１ページ、第２ページ、第３ページのデータが全て“０”である場合、このセルの閾値は“８”状態となり、第１ページ、第２ページ、第３ページのデータが全て“１”である場合、このセルの閾値は“１”状態となる。閾値が“１”状態のセルと“８”状態のセルの間に位置する各セルの書き込みデータと閾値の関係は、図８に示す通りである。
【００４９】
本発明では各書き込み動作終了後に、書き込みが十分に行われたかどうかを調べるべリファイリードを行い、書き込みが不十分のメモリセルにのみ再度書き込みを行う。書き込み電圧Ｖｐｇｍ  は書き込みサイクル毎にΔＶｐｐずつ上昇される。すなわち、この書き込み電圧Ｖｐｇｍ  はΔＶｐｐずつ上昇される階段状の電圧である。
【００５０】
以下において、本発明の書き込み時間を見積もる。“１”、“２”…“７”、“８”状態の間の閾値電圧の間隔をΔＶｔｈｗ  とする。
【００５１】
＜第１の書き込み動作における書き込み時間＞
“１”状態から“５”状態に書き込まれる場合の閾値電圧の変動は４×ΔＶｔｈｗ  であるため、書き込み時間Ｔ１は
Ｔ１＝４×ΔＶｔｈｗ  ／ΔＶｐｐ
となる。
【００５２】
＜第２の書き込み動作における書き込み時間＞
先ず、“１”状態から“３”状態に書き込まれる。この場合の閾値電圧の変動は２×ΔＶｔｈｗ  であるため、“１”から“３”への書き込みの時間は２×ΔＶｔｈｗ  ／ΔＶｐｐである。引き続き、“５”状態から“７”状態に書き込まれる。この場合の閾値電圧の変動は２×ΔＶｔｈｗ  であるため、“５”から“７”への書き込み時間は、２×ΔＶｔｈｗ  ／ΔＶｐｐである。したがって、第２の書き込みのトータルの書き込み時間Ｔ２は
Ｔ２＝４×ΔＶｔｈｗ  ／ΔＶｐｐ
となる。
【００５３】
＜第３の書き込み動作における書き込み時間＞
先ず、“１”状態から“２”状態に書き込まれる。この場合の閾値電圧の変動はΔＶｔｈｗ  であるため、“１”から“２”への書き込みの時間はΔＶｔｈｗ  ／ΔＶｐｐである。引き続き、“３”状態から“４”状態に書き込まれる。この場合の閾値電圧の変動はΔＶｔｈｗ  であるため、“３”から“４”への書き込みの時間はΔＶｔｈｗ  ／ΔＶｐｐである。次に、“５”状態から“６”状態に書き込まれる。この場合の閾値電圧の変動はΔＶｔｈｗ  であるため、“５”から“６”への書き込みの時間はΔＶｔｈｗ  ／ΔＶｐｐである。最後に“７”態から“８”状態に書き込まれる。この場合の閾値電圧の変動はΔＶｔｈｗ  であるため、“７”から“８”への書き込みの時間はΔＶｔｈｗ  ／ΔＶｐｐである。したがって、第３の書き込みのトータルの書き込み時間Ｔ３は
Ｔ３＝４×ΔＶｔｈｗ  ／ΔＶｐｐ
となる。
【００５４】
このように、第１、２、３の書き込み・べリファイサイクル数はほぼ同様に行うことができる。
【００５５】
一方、図９は、特願平８−９８６２７号に記載された多値半導体記憶装置の書き込み動作を示している。以下に、この装置の書き込み時間と本発明とを比較して説明する。
【００５６】
＜第１の書き込み動作における書き込み時間＞
図９（ａ）に示すように、第１、第２の論理レベルのデータ“１”、“０”が入力され、これらデータに応じてセルの閾値が設定される。このうち、第２の論理レベルのデータ“０”の場合、“１”状態から“２”状態に書き込まれる。“１”状態から“２”状態に書き込まれる場合の閾値電圧の変動はΔＶｔｈｗ  である。このため、書き込み時間Ｔ１は
Ｔ１＝ΔＶｔｈｗ  ／ΔＶｐｐ
となる。
【００５７】
＜第２の書き込み動作における書き込み時間＞
図９（ｂ）に示すように、第３の論理レベルのデータ“１”が入力された場合、セルの閾値の状態は第１の書き込み状態から変化しない。一方、第４の論理レベルのデータ“０”が入力された場合、第１の書き込み状態から閾値が変化される。すなわち、最初の書き込みにおいて、“１”状態のセルは“３”状態に書き込まれる。この場合の閾値電圧の変動は２×ΔＶｔｈｗ  であるため、“１”から“３”への書き込みの時間は２×ΔＶｔｈｗ  ／ΔＶｐｐである。引き続き、“２”状態のセルは“４”状態に書き込まれる。この場合の閾値電圧の変動は２×ΔＶｔｈｗ  であるため、“２”状態から“４”状態への書き込みの時間は２×ΔＶｔｈｗ  ／ΔＶｐｐである。したがって、第２の書き込みのトータルの書き込み時間Ｔ２は
Ｔ２＝４×ΔＶｔｈｗ  ／ΔＶｐｐ
となる。
【００５８】
＜第３の書き込みの書き込み時間＞
図９（ｃ）に示すように、第５の論理レベルのデータ“１”が入力された場合、セルの閾値の状態は第２の書き込み状態から変化しない。一方、第６の論理レベルのデータ“０”が入力された場合、第２の書き込み状態から閾値が変化される。すなわち、最初の書き込みでは“１”状態のセルは“５”状態に書き込まれる。この場合の閾値電圧の変動は４×ΔＶｔｈｗ  であるため、“１”状態から“５”状態への書き込みの時間は４×ΔＶｔｈｗ  ／ΔＶｐｐである。引き続き、“２”状態のセルは“６”状態に書き込まれる。この場合の閾値電圧の変動は４×ΔＶｔｈｗ  であるため、“２”状態から“６”状態への書き込みの時間は４×ΔＶｔｈｗ  ／ΔＶｐｐである。次に、“３”状態のセルは“７”状態に書き込まれる。この場合の閾値電圧の変動は４×ΔＶｔｈｗ  であるため、“３”状態から“７”状態への書き込みの時間は４×ΔＶｔｈｗ  ／ΔＶｐｐである。最後に“４”状態のセルは“８”状態に書き込まれる。この場合の閾値電圧の変動は４×ΔＶｔｈｗ  であるため、“４”状態から“８”状態への書き込みの時間は４×ΔＶｔｈｗ  ／ΔＶｐｐである。したがって、第３の書き込みのトータルの書き込み時間Ｔ３は
Ｔ２＝１６×ΔＶｔｈｗ  ／ΔＶｐｐ
となる。
【００５９】
このように、従来の半導体記憶装置の書き込み方法によれば、第１の書き込みは高速に行われるが、第３の書き込みでは多くの書き込み・べリファイサイクル数を必要とするので、書き込みが遅い。チップとしての書き込み時間は最も遅い第３の書き込み時間に設定される。このため、このチップが接続される例えばマイクロコンピュータは、第３の書き込み時間に相当する書き込み時間を設定しなければならない。したがって、マイクロコンピュータを含むシステムの処理速度を高速化することが困難であった。
【００６０】
これに対し、本発明の閾値分布によれば、第１、第２、第３の書き込みで書き込み・べリファイサイクル数をほぼ同じにすることができ、書き込みが高速化される。このため、このチップが接続されるマイクロコンピュータの動作速度も高速化できる。
【００６１】
本発明において、第１、第２、第３の書き込みで書き込みのステップアップ電圧ΔＶｐｐを変えてもよい。実際の書き込みでは第３の書き込み後に行われるベリファイリードの数が一番多く、次に第２の書き込み、第１の書き込みである。つまり、第３の書き込みでは、“８”、“６”、“４”のベリファイが必要であるのに対して、第２の書き込みでは“３”、“７”のベリファイのみでよい。その結果、ΔＶｐｐが同じ場合には第３の書き込みが一番長く、次に第２の書き込みが長く、第１の書き込みが一番短い。第１の書き込み時のステップアップ幅をΔＶｐｐ１、第２の書き込み時のステップアップ幅をΔＶｐｐ２、第３の書き込み時のステップアップ幅をΔＶｐｐ３とする。ΔＶｐｐ１＜ΔＶｐｐ２＜ΔＶｐｐ３とすることにより、第１、第２、第３の書き込み時間をほぼ同様とすることができ、書き込みを高速化できる。この時、（“５”状態の閾値分布幅）＜（“３”、“７”状態の閾値分布幅）＜（“２”、“４”、“６”、“８”状態の閾値分布幅）となる。
【００６２】
消去は従来技術において説明した２値メモリセルと同様である。
【００６３】
また、メモリセルユニットは１個又は複数個のメモリセル、及び０個又は１個又は複数個の選択トランジスタとしてのＭＯＳトランジスタにより構成されている。
【００６４】
図１０は、メモリセルユニットの例を示している。図１０（ａ）はいわゆるＮＡＮＤ型ＥＥＰＲＯＭ又はＮＡＮＤ型マスクＲＯＭである。図１０（ｂ）は図１０（ａ）の選択トランジスタとしての２個のＭＯＳトランジスタを、互いに閾値が異なるエンハンスメントタイプ（Ｅ−ｔｙｐｅ  ：閾値が正）とイントリンシックタイプ（Ｉ−ｔｙｐｅ  ：閾値がゼロ）のＭＯＳトランジスタで構成した場合である。図１０（ｃ）は選択トランジスタとしてのＭＯＳトランジスタを３個設けた場合のＮＡＮＤ型不揮発性メモリの一例を示している。図１０（ｄ）は選択トランジスタとして、エンハンスメントタイプと、デプレションタイプ（Ｄ−ｔｙｐｅ  ：閾値が負）のＭＯＳトランジスタを２個ずつ４個設けた場合のＮＡＮＤ型不揮発性メモリの一例である。
【００６５】
さらに、本発明はフラッシュメモリに限らず、図１１乃至図１３に示すマスクＲＯＭ、ＥＰＲＯＭ等などに適用することも可能である。
【００６６】
図１１（ａ）はＮＯＲ型ＥＥＰＲＯＭ又はＮＯＲ型マスクＲＯＭである。図１１（ｂ）（ｃ）はＮＯＲ型不揮発性メモリに選択トランジスタとしてのＭＯＳトランジスタを１個或いは２個設けた場合の一例である。
【００６７】
図１２（ａ）はソース及びドレインを複数個のメモリセルで共有して、メモリセルが並列接続されたものである。図１２（ｂ）は複数個のメモリセルを並列接続したものに、選択トランジスタとしてのＭＯＳトランジスタを１個接続したもの（公知例  Ｏｎｏｄａ，Ｈ．，ｅｔ  ａｌ．，ＩＥＤＭ  Ｔｅｃｈ．Ｄｉｇ，１９９２，ｐ．５９９  ）である。図１２（ｃ）は複数個のメモリセルを並列接続したものに、選択ＭＯＳトランジスタを２個接続したもの（公知例  Ｋｕｍｅ，Ｈ．，ｅｔ  ａｌ，．ＩＥＤＭ  Ｔｅｃｈ．Ｄｉｇ  、１９９２，ｐ９９１、Ｈｉｓａｍｕｎｅ，Ｙ．，ｅｔ  ａｌ．，ＩＥＤＭ  Ｔｅｃｈ．Ｄｉｇ，１９９２，ｐ１９  ）である。図１３は複数のメモリセルを並列に接続した別の例である（公知例  Ｂｅｒｇｅｍｏｎｔ，Ａ．，ｅｔ  ａｌ，．ＩＥＤＭ  Ｔｅｃｈ．Ｄｉｇ，１９９３，ｐ１５  ）。
【００６８】
（第２の実施の形態）
本発明は８値メモリセルに限定されるものではない。図１４は１６値メモリセルの書き込み動作を示している。図１４において、“１”は消去状態である。
【００６９】
この場合、各データ回路は、図１５に示すように例えば第１、第２、第３、第４のラッチ回路７ａ〜７ｄから構成されればよい。ここでは、第１のデータ回路７−１のみを示しているが、他のデータ回路の構成も、図１５と同様である。尚、図１５において、第１乃至第４のラッチ回路７ａ〜７ｄは、１本のＩ／Ｏ線を共有しているが、これに限定されるものではない。すなわち、例えば４本のＩ／Ｏ線を設け、これらＩ／Ｏ線を第１乃至第４のラッチ回路７ａ〜７ｄにそれぞれ接続してもよい。
【００７０】
図１４、図１５を参照して書き込み動作について説明する。先ず、第１の書き込み動作において、第１の書き込みデータはＩ／Ｏ線から第１のラッチ回路７ａに供給される。データ回路の各ラッチ回路に保持される第１の書き込みデータに応じてメモリセルの閾値の状態が変化する。書き込みデータが“０”の場合、メモリセルは“９”に書き込まれ、書き込みデータが“１”の場合、メモリセルは“１”状態を保持する。
【００７１】
第２の書き込み動作では、データ回路内の第１のラッチ回路７ａに第２の書き込みデータがＩ／Ｏ線を介して供給される。第２のラッチ回路７ｂは書き込みを行うメモリセルから読み出された第１の書き込みデータを保持する。この後、データ回路に保持された２ビットのデータに基づいて書き込みが行われる。第２の書き込みデータが“１”の場合、ビット線は書き込み非選択状態に設定され、メモリセルは“１”又は“９”状態を保持する。第２の書き込みデータが“０”の場合、“１”状態のメモリセルは“５”状態に書き込まれ、“９”状態のメモリセルは“１３”に書き込まれる。
【００７２】
第３の書き込み動作では、データ回路内の第１のラッチ回路７ａに第３の書き込みデータがＩ／Ｏ線を介して供給される。第２、第３のラッチ回路７ｂ、７ｃは書き込みを行うメモリセルから読み出された第１、第２の書き込みデータをそれぞれ保持する。この後、データ回路内の第１乃至第３のラッチ回路７ａ、７ｂ、７ｃに保持された３ビットのデータに基づいて書き込みが行われる。第３の書き込みデータが“１”の場合、ビット線は書き込み非選択状態に設定され、メモリセルは“１”又は“５”又は“９”又は“１３”状態を保つ。第３の書き込みデータが“０”の場合、“１”状態のメモリセルは“３”状態に書き込まれ、“５”状態のメモリセルは“７”に書き込まれ、“９”状態のメモリセルは“１１”に書き込まれ、“１３”状態のメモリセルは“１５”に書き込まれる。
【００７３】
第４の書き込み動作では、データ回路内の第１のラッチ回路７ａに第４の書き込みデータがＩ／Ｏ線を介して供給される。第２、第３、第４のラッチ回路７ｂ、７ｃ、７ｄは書き込みを行うメモリセルから読み出された第１、第２、第３の書き込みデータを保持する。この後、データ回路の第１乃至第４のラッチ回路７ａ〜７ｄに保持された４ビットのデータに基づいて書き込みが行われる。第４の書き込みデータが“１”の場合、ビット線は書き込み非選択状態に設定され、メモリセルは“１”又は“３”又は“５”又は“７”又は“９”又は“１１”又は“１３”又は“１５”状態を保つ。第４の書き込みデータが“０”の場合、“１”状態のメモリセルは“２”状態に書き込まれ、“３”状態のメモリセルは“４”に書き込まれ、“５”状態のメモリセルは“６”に書き込まれ、“７”状態のメモリセルは“８”に書き込まれ、“９”状態のメモリセルは“１０”に書き込まれ、“１１”状態のメモリセルは“１２”に書き込まれ、“１３”状態のメモリセルは“１４”に書き込まれ、“１５”状態のメモリセルは“１６”状態に書き込まれる。
【００７４】
図１６は第２の実施の形態におけるメモリセルの閾値とデータの関係を示している。図１６の見方は図８と同様である。
【００７５】
上記第２の実施の形態によれば、１６値のメモリセルに対して高速にデータを書き込むことができる。
【００７６】
（第３の実施の形態）
図１７は、一般の２ｍ  （ｍは２以上の整数）値メモリセルの書き込み動作を示している。図１７において、“１”は消去状態である。この場合、データ回路は図１８に示すように、例えば第１、第２、第３…第ｍのラッチ回路７１−  １、７１−  ２〜７１−  ｍにより構成される。図１８は第１のラッチ回路７−１のみを示しているが、その他のラッチ回路も同様の構成とされている。尚、図１８において、Ｉ／Ｏ線は第１、第２、第３…第ｍのラッチ回路７１−  １、７１−  ２〜７１−  ｍに共有したが、これに限定されるものではない。すなわち、例えばｍ本のＩ／Ｏ線を設け、これらＩ／Ｏ線を第１、第２、第３…第ｍのラッチ回路７１−  １、７１−  ２〜７１−  ｍにそれぞれ接続してもよい。
【００７７】
図１７、図１８を参照して書き込み動作について説明する。先ず、第１の書き込み動作において、第１の書き込みデータはＩ／Ｏ線を介して第１のラッチ回路７１−  １に供給される。データ回路に保持された第１の書き込みデータに応じて、書き込みデータが“０”の場合、メモリセルは“２ｍ−１  ＋１”状態に書き込まれ、書き込みデータが“１”場合、メモリセルは“１”状態を保持する。
【００７８】
第２の書き込み動作では、データ回路内の第１のラッチ回路７１−  １に第２の書き込みデータがＩ／Ｏ線を介して供給される。第２のラッチ回路７１−  ２は書き込みを行うメモリセルから読み出された第１の書き込みデータを保持する。この後、データ回路に保持された２ビットのデータに基づいて書き込みが行われる。第２の書き込みデータが“１”の場合、ビット線は書き込み非選択状態に設定され、メモリセルは“１”又は“２ｍ−１  ＋１”状態を保つ。第２の書き込みデータが“０”の場合、“１”状態のメモリセルは‘２ｍ−２  ＋１”状態に書き込まれ、“２ｍ−１  ＋１”状態のメモリセルは“２ｍ−１  ＋２ｍ−２  ＋１”状態に書き込まれる。
【００７９】
第３の書き込み動作では、データ回路内の第１のラッチ回路７１−  １に第３の書き込みデータがＩ／Ｏ線を介して供給される。第２、第３のラッチ回路７１−  ２、７１−  ３（図示せず）は書き込みを行うメモリセルから読み出された第１、第２の書き込みデータを保持する。この後、データ回路に保持された３ビットのデータに基づいて書き込みが行われる。第３の書き込みデータが“１”の場合、ビット線は書き込み非選択状態に設定され、メモリセルは“１”又は“２ｍ−２  ＋１”又は“２ｍ−１  ＋１”又は“２ｍ−１  ＋２ｍ−２  ＋１”状態を保つ。第３の書き込みデータが“０”の場合、“１”状態のメモリセルは“２ｍ−３  ＋１”状態に書き込まれ、“２ｍ−２  ＋１”状態のメモリセルは“２ｍ−２  ＋２ｍ−３  ＋１”に書き込まれ、“２ｍ−１  ＋１”状態のメモリセルは“２ｍ−１  ＋２ｍ−３  ＋１”に書き込まれ、“２ｍ−１  ＋２ｍ−２  ＋１”状態のメモリセルは“２ｍ−１  ＋２ｍ−２  ＋２ｍ−３  ＋１”に書き込まれる。
【００８０】
第４の書き込み動作では、データ回路内の第１のラッチ回路７１−  １に第４の書き込みデータがＩ／Ｏ線を介して供給される。第２、第３…第ｍのラッチ回路７１−  ２７１−  ３〜７１−  ｍは書き込みを行うメモリセルから読み出された第１、第２…第（ｍ−１）の書き込みデータを保持する。この後、データ回路に保持されたｍビットのデータに基づいて書き込みが行われる。第ｍの書き込みデータが“１”の場合、ビット線は書き込み非選択状態に設定され、メモリセルは“１”又は“３”又は“５”又は…“２ｍ  −３”又は“２ｍ  −１”状態を保つ。第ｍの書き込みデータが“０”の場合、“１”状態のメモリセルは“２”状態に書き込まれ、“３”状態のメモリセルは“４”に書き込まれ、“５”状態のメモリセルは“６”に書き込まれ、…“２ｍ  −３”状態のメモリセルは“２ｍ  −２”に書き込まれ、“２ｍ  −１”状態のメモリセルは““２ｍ  ”に書き込まれる。
【００８１】
図１９は第３の実施の形態における閾値分布とデータの関係を示している。図１９の見方は図８と同様である。
【００８２】
上記第３の実施の形態によれば、２ｍ  値メモリセルに対して高速にデータを書き込むことができる。
【００８３】
図２０は、データ回路の一例を示している。このデータ回路は、理解を容易化するため、２個のラッチ回路の場合を示している。４値以上のデータを記憶する場合は、この回路にさらにラッチ回路が付加される。この回路を用いて、２ページ、４値の書き込みと、書き込みベリファイ動作について説明する。以下の説明はセルフ・ブースト方式の書き込み方式である。
【００８４】
メモリセルの書き込み状態と閾値の関係は、図２１に示すようである。ここで、電圧ＶＣＧ１Ｒ  ，ＶＣＧ２Ｒ  ，ＶＣＧ３Ｒ  は読み出し電圧であり、例えばそれぞれ０Ｖ，１Ｖ，２Ｖとされる。電圧ＶＣＧ１Ｖ  ，ＶＣＧ２Ｖ  ，ＶＣＧ３Ｖ  はベリファイ電圧であり、データ書き込み時にはこれらベリファイ電圧を制御ゲートに印加してメモリセルの状態を検出し、十分書き込みが行われたか否かをチェックする。ベリファイ電圧ＶＣＧ１Ｖ  ，ＶＣＧ２Ｖ  ，ＶＣＧ３Ｖ  は例えばそれぞれ０．５Ｖ，１．５Ｖ，２．５Ｖとされる。
【００８５】
図２０において、２個のラッチ回路はフリップ・フロップＦＦ１、ＦＦ２により構成される。これらフリップ・フロップＦＦ１、ＦＦ２はセンスアンプとしても動作する。フリップ・フロップＦＦ１はｎチャネルＭＯＳトランジスタＱｎ２１  ，Ｑｎ２２  ，Ｑｎ２３  とｐチャネルＭＯＳトランジスタＱｐ９，Ｑｐ１０  ，Ｑｐ１１  により構成される。フリップ・フロップＦＦ２はｎチャネルＭＯＳトランジスタＱｎ２９  ，Ｑｎ３０  ，Ｑｎ３１  とｐチャネルＭＯＳトランジスタＱｐ１６  ，Ｑｐ１７  ，Ｑｐ１８  により構成される。
【００８６】
フリップ・フロップＦＦ１，ＦＦ２は、“０”書き込みをするか、“１”書き込みをするか、“２”書き込みをするか、“３”書き込みをするかを書き込みデータ情報としてラッチし、メモリセルが“０”の情報を保持しているか、“１”の情報を保持しているか、“２”の情報を保持しているか、“３”の情報を保持しているかを読み出しデータ情報としてセンスしラッチする。
【００８７】
データ入出力線ＩＯＡ，ＩＯＢとフリップ・フロップＦＦ１は、ｎチャネルＭＯＳトランジスタＱｎ２８  ，Ｑｎ２７  を介して接続される。データ入出力線ＩＯＡ，ＩＯＢとフリップ・フロップＦＦ２は、ｎチャネルＭＯＳトランジスタＱｎ３５  ，Ｑｎ３６  を介して接続される。データ入出力線ＩＯＡ，ＩＯＢは、図１中のデータ入出力バッファ８にも接続される。フリップ・フロップＦＦ１に保持された読み出しデータはＣＥＮＢ１が活性化されることにより、ＩＯＡ及びＩＯＢに出力される。フリップ・フロップＦＦ２に保持された読み出しデータはＣＥＮＢ２が活性化されることにより、ＩＯＡ及びＩＯＢに出力される。
【００８８】
ｎチャネルＭＯＳトランジスタＱｎ２６  ，Ｑｎ３４  は、信号ＥＣＨ１，ＥＣＨ２が“Ｈ”となると、フリップ・フロップＦＦ１，ＦＦ２をそれぞれイコライズする。ｎチャネルＭＯＳトランジスタＱｎ２４  ，Ｑｎ３２  は、フリップ・フロップＦＦ１，ＦＦ２とＭＯＳキャパシタＱｄ１とを接続するか、非接続とするかを制御する。ｎチャネルＭＯＳトランジスタＱｎ２５  ，Ｑｎ３３  は、フリップ・フロップＦＦ１，ＦＦ２とＭＯＳキャパシタＱｄ２とを接続するか、非接続とするかを制御する。
【００８９】
ｐチャネルＭＯＳトランジスタＱｐ１２Ｃ，Ｑｐ１３Ｃで構成される回路は、活性化信号ＶＲＦＹＢＡＣによって、フリップ・フロップＦＦ１のデータに応じて、ＭＯＳキャパシタＱｄ１のゲート電圧を変更する。ｐチャネルＭＯＳトランジスタＱｐ１４Ｃ，Ｑｐ１５Ｃで構成される回路は、活性化信号ＶＲＦＹＢＢＣによって、フリップ・フロップＦＦ１のデータに応じて、ＭＯＳキャパシタＱｄ２のゲート電圧を変更する。ｎチャネルＭＯＳトランジスタＱｎ１Ｃ  ，Ｑｎ２Ｃ  で構成される回路は、活性化信号ＶＲＦＹＢＡ１Ｃによって、フリップ・フロップＦＦ２のデータに応じて、ＭＯＳキャパシタＱｄ１のゲート電圧を変更する。ｎチャネルＭＯＳトランジスタＱｎ３Ｃ  ，Ｑｎ４Ｃ  で構成される回路は、活性化信号ＶＲＦＹＢＢ１Ｃによって、フリップ・フロップＦＦ２のデータに応じて、ＭＯＳキャパシタＱｄ２のゲート電圧を変更する。
【００９０】
ＭＯＳキャパシタＱｄ１，Ｑｄ２は、ディプリーション型ｎチャネルＭＯＳトランジスタで構成され、ビット線容量より十分小さくされる。ｎチャネルＭＯＳトランジスタＱｎ３７  は、信号ＰＲＥＡによってＭＯＳキャパシタＱｄ１を電圧ＶＡに充電する。ｎチャネルＭＯＳトランジスタＱｎ３８  は、信号ＰＲＥＢによってＭＯＳキャパシタＱｄ２を電圧ＶＢに充電する。ｎチャネルＭＯＳトランジスタＱｎ３９  ，Ｑｎ４０  は、信号ＢＬＣＡ，ＢＬＣＢによって、データ回路３とビット線ＢＬ１Ａ，ＢＬ１Ｂの接続をそれぞれ制御する。ｎチャネルＭＯＳトランジスタＱｎ３７  ，Ｑｎ３８  で構成される回路はビット線電圧制御回路を兼ねる。
【００９１】
次に、上記構成のＥＥＰＲＯＭの動作について説明する。以下では制御ゲートＣＧ２Ａが選択されている場合を示す。
【００９２】
＜第１ページの書き込み＞
（１）  第１ページのプログラム
書き込み動作前に、入力されたデータは、データ入出力バッファ８を経て、データ回路群７に入力される。１ページの大きさが１２８であり、データ回路は１２８個あるとすると、入力した第１ページ分のデータ、すなわち、２５６ビットの書き込みデータは、カラム活性化信号ＣＥＮＢ１がハイレベル（“Ｈｉｇｈ”）の場合、Ｉ／Ｏ線ＩＯＡ，ＩＯＢを介してフリップ・フロップＦＦ１に入力される。
【００９３】
図２２は、書き込みデータとＦＦ１のノードＮ３Ｃ，Ｎ４Ｃの関係を示している。ここで、ノードＮ４Ｃは入力データが“Ｈｉｇｈ”の場合、“０”（Ｌ）状態を保ち、入力データがローレベル（“Ｌｏｗ”）の場合、“２”（Ｈ）状態に書き込まれる。
【００９４】
図２３は、ノードＮ４Ｃ側のビット線ＢＬ１Ａに接続された所定のセルにデータを書き込む場合の動作を示している。時刻ｔ１ｓにＶＲＦＹＢＡＣが０Ｖになり、データ“Ｈｉｇｈ”が保持されているデータ回路からはビット線書き込み制御電圧Ｖｃｃがビット線に出力される。その後、時刻ｔ２ｓにＲＶ１ＡがＶｃｃになることにより、データ“Ｌｏｗ”が保持されているデータ回路からは０Ｖがビット線に出力される。その結果、“０”書き込みするビット線は０Ｖ、“２”書き込みするビット線はＶｃｃになる。
【００９５】
一方、時刻ｔ１ｓに制御ゲート・選択ゲート駆動回路２によって、選択されたブロックの選択ゲートＳＧ１Ａ、制御ゲートＣＧ１Ａ〜ＣＧ４ＡがＶｃｃになる。選択ゲートＳＧ２Ａは０Ｖである。次に、時刻ｔ３ｓに、選択された制御ゲートＣＧ２Ａが高電圧ＶＰＰ（例えば２０Ｖ）、非選択制御ゲートＣＧ１Ａ，ＣＧ３Ａ，ＣＧ４ＡがＶＭ（例えば１０Ｖ）となる。データ“Ｌｏｗ”が保持されているデータ回路に対応するメモリセルでは、０Ｖのチャネル電位と制御ゲートのＶＰＰの電位差によって、浮遊ゲートに電子が注入され閾値が上昇する。データ“Ｈｉｇｈ”が保持されているデータ回路に対応するメモリセルでは、選択ゲートＳＧ１Ａがオフになるのでメモリセルのチャネルはフローティングになる。
【００９６】
その結果、メモリセルのチャネルは制御ゲートとの間の容量結合により、８Ｖ程度になる。データ“Ｈｉｇｈ”を書き込むメモリセルではチャネルが８Ｖ、制御ゲートが２０Ｖなので、メモリセルへの電子の注入は行われず、消去状態（“０”）を保つ。書き込み動作中、信号ＳＡＮ１，ＳＡＮ２は“Ｈ”、信号ＳＡＰ１，ＳＡＰ２，ＶＲＦＹＢＡ１Ｃ，ＲＶ１Ｂ，ＲＶ２Ｂ，ＥＣＨ１，ＥＣＨ２は“Ｌ”、電圧ＶＢは０Ｖである。
【００９７】
（２）  第１ページのベリファイリード
書き込み動作後、書き込みが充分に行われたかを検出する（書き込みベリファイ）。もし、所望の閾値に達していれば、データ回路のデータを“Ｈｉｇｈ”に変更する。もし、所望の閾値に達していなければ、データ回路のデータを保持して再度書き込み動作を行う。書き込み動作と書き込みベリファイは全ての“２”書き込みするメモリセルが所望の閾値に達するまで繰り返される。
【００９８】
図２０及び図２４を用いて、この書き込みベリファイ動作を説明する。
【００９９】
まず、時刻ｔ１ｙｃ  に、電圧ＶＡ，ＶＢがそれぞれ１．８Ｖ，１．５Ｖとなって、ビット線ＢＬ１Ａ，ＢＬ１Ｂはそれぞれ１．８Ｖ，１．５Ｖになる。信号ＢＬＣＡ，ＢＬＣＢが“Ｌ”となって、ビット線ＢＬ１ＡとＭＯＳキャパシタＱｄ１、ビット線ＢＬ１ＢとＭＯＳキャパシタＱｄ２は切り離され、ビット線ＢＬ１Ａ，ＢＬ１Ｂはフローティングとなる。信号ＰＲＥＡ，ＰＲＥＢが“Ｌ”となって、ＭＯＳキャパシタＱｄ１，Ｑｄ２のゲート電極であるノードＮ１，Ｎ２はフローティング状態になる。
【０１００】
続いて、時刻ｔ２ｙｃ  に、制御ゲート・選択ゲート駆動回路２によって選択されたブロックの選択された制御ゲートＣＧ２Ａは１．５Ｖ、非選択制御ゲートＣＧ１Ａ，ＣＧ３Ａ，ＣＧ４Ａと選択ゲートＳＧ１Ａ，ＳＧ２ＡはＶｃｃにされる。選択されたメモリセルの閾値が１．５Ｖ以下なら、ビット線電圧は１．５Ｖより低くなる。選択されたメモリセルの閾値が１．５Ｖ以上なら、ビット線電圧は１．８Ｖのままとなる。時刻ｔ３ｙｃ  に、信号ＢＬＣＡ，ＢＬＣＢが“Ｈ”とされ、ビット線の電位がＮ１，Ｎ２に転送される。その後、信号ＢＬＣＡ，ＢＬＣＢが“Ｌ”となって、ビット線ＢＬ１ＡとＭＯＳキャパシタＱｄ１、ビット線ＢＬ１ＢとＭＯＳキャパシタＱｄ２は切り離される。
【０１０１】
この後、時刻ｔ４ｙｃ  にＶＲＦＹＢＡＣが“Ｌ”となると、“０”書き込みデータが保持されているデータ回路では、ｐチャネルＭＯＳトランジスタＱｐ１２Ｃがオンであり、ノードＮ１はＶｃｃとなる。その結果、ノードＮ１は“０”書き込みの場合にはＶｃｃになる。“２”書き込みの場合には、ｐチャネルＭＯＳトランジスタＱｐ１２Ｃがオフする。つまり、“２”書き込みが十分に行われた場合には、Ｎ１はＶｃｃになり、“２”書き込みが不十分の場合には、Ｎ１は０Ｖになる。その後、信号ＳＡＮ１，ＳＡＰ１がそれぞれ“Ｌ”，“Ｈ”となってフリップ・フロップＦＦ１が非活性化され、信号ＥＣＨ１が“Ｈ”となってイコライズされる。
【０１０２】
この後、信号ＲＶ１Ａ，ＲＶ１Ｂが“Ｈ”となる。再度、信号ＳＡＮ１，ＳＡＰ１がそれぞれ“Ｈ”、“Ｌ”となることで、時刻ｔ５ｙｃ  にノードＮ１の電圧がセンスされラッチされる。これで、“２”書き込みデータを保持しているデータ回路のみ、対応するメモリセルのデータが十分“２”書き込み状態となったか否かを検出する。メモリセルのデータが“２”であれば、フリップ・フロップＦＦ１でノードＮ１の電圧をセンスしラッチすることで書き込みデータは“０”に変更される。メモリセルのデータが“２”でなければ、フリップ・フロップＦＦ１でノードＮ１の電圧をセンスしラッチすることで書き込みデータは“２”に保持される。“０”書き込みデータを保持しているデータ回路の書き込みデータは変更されない。
【０１０３】
全ての選択されたメモリセルが所望の閾値に達していれば、データ回路のノードＮ４Ｃが“Ｌ”になる。これを検出することにより、全ての選択されたメモリセルが所望の閾値に達したか否かが分かる。書き込み終了の検出は、例えば図２０ように書き込み終了一括検知トランジスタＱｎ５Ｃ  を用いればよい。ベリファイリード後、まずＶＲＴＣを例えばＶｃｃにプリチャージする。書き込みが不十分なメモリセルが１つでもあると、そのデータ回路のノードＮ４Ｃは“Ｈ”なのでｎチャネルＭＯＳトランジスタＱｎ５Ｃ  はオンし、ＶＲＴＣはプリチャージ電位から低下する。全てのメモリセルが十分に書き込まれると、データ回路７−  １〜７−  １２８のノードＮ４Ｃが全て“Ｌ”になる。その結果、全てのデータ回路内のｎチャネルＭＯＳトランジスタＱｎ５Ｃ  がオフになるのでＶＲＴＣはプリチャージ電位を保ち、書き込み終了が検知される。
【０１０４】
＜第２ページの書き込み＞
（１）  第１データの読み出しとデータ反転、及びデータロード
第２ページを書き込むに先だって、メモリセルには第１ページのデータが書き込まれ、図２５（ａ）に示すように、“０”状態又は“２”状態になっている。第２ページのデータを外部からＩＯＡ，ＩＯＢを通じてフリップ・フロップＦＦ１に入力すると同時に、メモリセルに蓄えられた第１ページのデータを読み出してフリップ・フロップＦＦ２に保持する。
【０１０５】
図２５、図２６を用いてメモリセルに書き込まれた第１ページのデータの読み出しを説明する。
【０１０６】
まず時刻ｔ１ｙｄ  に、電圧ＶＡ，ＶＢがそれぞれ１．８Ｖ，１．５Ｖとなって、ビット線ＢＬ１Ａ，ＢＬ１Ｂはそれぞれ１．８Ｖ，１．５Ｖになる。信号ＢＬＣＡ、ＢＬＣＢが“Ｌ”となって、ビット線ＢＬ１ＡとＭＯＳキャパシタＱｄ１、ビット線ＢＬ１ＢとＭＯＳキャパシタＱｄ２は切り離され、ビット線ＢＬ１Ａ，ＢＬ１Ｂはフローティングとなる。信号ＰＲＥＡ，ＰＲＥＢが“Ｌ”となって、ＭＯＳキャパシタＱｄ１，Ｑｄ２のゲート電極であるノードＮ１，Ｎ２はフローティング状態になる。
【０１０７】
続いて時刻ｔ２ｙｄ  に、制御ゲート・選択ゲート駆動回路２によって選択されたブロックの選択された制御ゲートＣＧ２Ａは１Ｖ、非選択制御ゲートＣＧ１Ａ，ＣＧ３Ａ，ＣＧ４Ａと選択ゲートＳＧ１Ａ，ＳＧ２ＡはＶｃｃにされる。選択されたメモリセルの閾値が１Ｖ以下なら、ビット線電圧は１．５Ｖより低くなる。選択されたメモリセルの閾値が１Ｖ以上なら、ビット線電圧は１．８Ｖのままとなる。時刻ｔ３ｙｄ  に、信号ＢＬＣＡ，ＢＬＣＢが“Ｈ”とされ、ビット線の電位がＮ１，Ｎ２に転送される。その後、信号ＢＬＣＡ，ＢＬＣＢが“Ｌ”となって、ビット線ＢＬ１ＡとＭＯＳキャパシタＱｄ１、ビット線ＢＬ１ＢとＭＯＳキャパシタＱｄ２は切り離される。
【０１０８】
その後、信号ＳＡＮ２，ＳＡＰ２がそれぞれ“Ｌ”、“Ｈ”となってフリップ・フロップＦＦ２が非活性化され、信号ＥＣＨ２が“Ｈ”となってイコライズされる。この後、信号ＲＶ２Ａ，ＲＶ２Ｂが“Ｈ”となる。再度、信号ＳＡＮ２，ＳＡＰ２がそれぞれ“Ｈ”、“Ｌ”となることで、時刻ｔ４ｙｄ  にノードＮ１の電圧がセンスされラッチされる。この時のフリップ・フロップＦＦ２のノードＮ５Ｃ，Ｎ６Ｃは図２５（ｂ）になる。
【０１０９】
この後に読み出したデータを反転する。例えば“０”を読み出した場合、図２５（ｂ）のようにＮ５Ｃは“Ｌ”であるが、データ反転動作によって“Ｈ”にする。
【０１１０】
時刻ｔ５ｙｄ  に、信号ＰＲＥＡ，ＰＲＥＢが“Ｈ”となって、ＭＯＳキャパシタＱｄ１，Ｑｄ２のゲート電極であるノードＮ１，Ｎ２は１．８Ｖ，１．５Ｖにプリチャージされ、その後、フローティング状態になる。続いて時刻ｔ６ｙｄ  にＶＲＦＹＢＡ１Ｃが“Ｈ”となると、“２”書き込みデータが保持されているデータ回路では、ｎチャネルＭＯＳトランジスタＱｎ２Ｃ  がオンであり、ノードＮ１は０Ｖとなる。“０”書き込みの場合には、ｎチャネルＭＯＳトランジスタＱｎ２Ｃ  がオフし、ノードＮ１は１．８Ｖを保つ。
【０１１１】
その後、信号ＳＡＮ２，ＳＡＰ２がそれぞれ“Ｌ”，“Ｈ”となってフリップ・フロップＦＦ２が非活性化され、信号ＥＣＨ２が“Ｈ”となってイコライズされる。この後、信号ＲＶ２Ａ，ＲＶ２Ｂが“Ｈ”となる。再度、信号ＳＡＮ２，ＳＡＰ２がそれぞれ“Ｈ”，“Ｌ”となることで、時刻ｔ７ｙｄ  にノードＮ１の電圧がセンスされラッチされる。以上のデータ反転動作の結果、フリップ・フロップＦＦ２のノードは図２５（ｃ）のようになる。
【０１１２】
外部からフリップ・フロップＦＦ１に入力した第２ページの書き込みデータは図２７の通りである。第２ページの入力データが“Ｈ”ならば書き込みは行われず、メモリセルは“０”又は“２”状態を保つ。一方、第２ページの入力データが“Ｌ”ならば書き込みが行われ、“０”状態のメモリセルは“１”状態に、“２”状態のメモリセルは“３”状態に書き込まれる。
【０１１３】
以上をまとめると、第２ページ書き込み時のフリップ・フロップのノードＮ３Ｃ，Ｎ４Ｃ，Ｎ５Ｃ，Ｎ６Ｃのデータは図２８のようになる。
【０１１４】
（２）第２ページのプログラム
図２９は書き込み動作を示している。時刻ｔ１ｐに電圧ＶＡがビット線書き込み制御電圧２Ｖとなってビット線ＢＬ１Ａが２Ｖとされる。ｎチャネルＭＯＳトランジスタＱｎ３９  の閾値分の電圧降下分が問題になるときは、信号ＢＬＣＡを昇圧すればよい。続いて、信号ＰＲＥＡが“Ｌ”となってビット線がフローティングにされる。次に、時刻ｔ２ｐに信号ＲＶ２Ａが１．５Ｖとされる。これによって、データ“２”又は“３”が保持されているデータ回路からはビット線制御電圧０Ｖがビット線に印加される。
【０１１５】
ｎチャネルＭＯＳトランジスタＱｎ３２  の閾値を１Ｖとすると、“０”又は“１”書き込み時にはｎチャネルＭＯＳトランジスタＱｎ３２  はオフ，“２”，又は“３”書き込み時にはオンとなる。その後、時刻ｔ３ｐにＶＲＦＹＢＡＣが０Ｖになり、データ“０”又はデータ“２”が保持されているデータ回路からはビット線書き込み制御電圧Ｖｃｃがビット線に出力される。
【０１１６】
その結果、“０”書き込み又は“２”書き込みするビット線はＶｃｃ、“１”書き込みするビット線は２Ｖ，“３”書き込みするビット線は０Ｖになる。
【０１１７】
時刻ｔ１ｐに制御ゲート・選択ゲート駆動回路２によって、選択されたブロックの選択ゲートＳＧ１Ａ、制御ゲートＣＧ１Ａ〜ＣＧ４ＡがＶｃｃとなる。選択ゲートＳＧ２Ａは０Ｖである。時刻ｔ４ｐに選択された制御ゲートＣＧ２Ａが高電圧ＶＰＰ（例えば２０Ｖ）、非選択制御ゲートＣＧ１Ａ，ＣＧ３Ａ，ＣＧ４ＡがＶＭ（例えば１０Ｖ）となる。データ“３”が保持されているデータ回路に対応するメモリセルでは、０Ｖのチャネル電位と制御ゲートのＶＰＰの電位差によって、浮遊ゲートに電子が注入され閾値が上昇する。データ“１”が保持されているデータ回路に対応するメモリセルでは、２Ｖのチャネル電位と制御ゲートのＶＰＰの電位差によって、浮遊ゲートに電子が注入され閾値が上昇する。
【０１１８】
“１”書き込みの場合のチャネル電位を２Ｖにしているのは、電子の注入量を“３”データ書き込みの場合よりも、少なくするためである。データ“０”又は“２”が保持されているデータ回路に対応するメモリセルでは、チャネル電位と制御ゲートのＶＰＰの電位差が小さいため、実効的には浮遊ゲートに電子は注入されない。よって、メモリセルの閾値は変動しない。書き込み動作中、信号ＳＡＮ１，ＳＡＮ２は“Ｈ”、信号ＳＡＰ１，ＳＡＰ２，ＶＲＦＹＢＡ１Ｃ，ＲＶ１Ａ，ＲＶ１Ｂ，ＲＶ２Ｂ，ＥＣＨ１，ＥＣＨ２は“Ｌ”、電圧ＶＢは０Ｖである。
【０１１９】
（３）  第２ページのベリファイリード
書き込み動作後、書き込みが充分に行われたかを検出する（書き込みベリファイ）。もし、所望の閾値に達していれば、フリップ・フロップＦＦ１のノードＮ３Ｃを“Ｈ”に変更する。そして、所望の閾値に達していなければ、データ回路のデータを保持して再度書き込み動作を行う。書き込み動作と書き込みベリファイは全ての“１”書き込みするメモリセルおよび“３”書き込みするメモリセルが所望の閾値に達するまで繰り返される。
【０１２０】
図２０及び図３０を用いて、この書き込みベリファイ動作を説明する。
【０１２１】
まず、“１”書き込みするメモリセルが所定の閾値に達しているかを検出する。
【０１２２】
まず、時刻ｔ１ｙｘ  に、電圧ＶＡ，ＶＢがそれぞれ１．８Ｖ，１．５Ｖとなって、ビット線ＢＬ１Ａ，ＢＬ１Ｂはそれぞれ１．８Ｖ，１．５Ｖになる。信号ＢＬＣＡ、ＢＬＣＢが“Ｌ”となって、ビット線ＢＬ１ＡとＭＯＳキャパシタＱｄ１、ビット線ＢＬ１ＢとＭＯＳキャパシタＱｄ２は切り離され、ビット線ＢＬ１Ａ，ＢＬ１Ｂはフローティングとなる。信号ＰＲＥＡ，ＰＲＥＢが“Ｌ”となって、ＭＯＳキャパシタＱｄ１，Ｑｄ２のゲート電極であるノードＮ１，Ｎ２はフローティング状態になる。続いて制御ゲート・選択ゲート駆動回路２によって選択されたブロックの選択された制御ゲートＣＧ２Ａは０．５Ｖ、非選択制御ゲートＣＧ１Ａ，ＣＧ３Ａ，ＣＧ４Ａと選択ゲートＳＧ１Ａ，ＳＧ２ＡはＶｃｃにされる。選択されたメモリセルの閾値が０．５Ｖ以下なら、ビット線電圧は１．５Ｖより低くなる。選択されたメモリセルの閾値が０．５Ｖ以上なら、ビット線電圧は１．８Ｖのままとなる。
【０１２３】
時刻ｔ２ｙｘ  に、信号ＢＬＣＡ，ＢＬＣＢが“Ｈ”とされ、ビット線の電位がＮ１，Ｎ２に転送される。その後、信号ＢＬＣＡ，ＢＬＣＢが“Ｌ”となって、ビット線ＢＬ１ＡとＭＯＳキャパシタＱｄ１、ビット線ＢＬ１ＢとＭＯＳキャパシタＱｄ２は切り離される。この後時刻ｔ３ｙｘ  にＲＶ２Ａが１．５Ｖになり、“２”書き込みの場合及び“３”書き込みの場合には、ノードＮ１が０Ｖに放電される。時刻ｔ４ｙｘ  に信号ＶＲＦＹＢＡＣが“Ｌ”となると、“０”又は“２”書き込みデータが保持されているデータ回路では、ｐチャネルＭＯＳトランジスタＱｐ１２Ｃがオンであり、ノードＮ１はＶｃｃとなる。その結果、ノードＮ１は“０”書き込み又は“２”書き込みの場合にはＶｃｃ，“３”書き込みの場合には０Ｖになる。
【０１２４】
信号ＳＡＮ１，ＳＡＰ１がそれぞれ“Ｌ”，“Ｈ”となってフリップ・フロップＦＦ１が非活性化され、信号ＥＣＨ１が“Ｈ”となってイコライズされる。この後、信号ＲＶ１Ａ，ＲＶ１Ｂが“Ｈ”となる。再度、信号ＳＡＮ１，ＳＡＰ１がそれぞれ“Ｈ”，“Ｌ”となることで、時刻ｔ５ｙｘ  にノードＮ１の電圧がセンスされラッチされる。これで、“１”書き込みデータを保持しているデータ回路のみ、対応するメモリセルのデータが十分“１”書き込み状態となったか否かを検出する。メモリセルのデータが“１”であれば、フリップ・フロップＦＦ１でノードＮ１の電圧をセンスしラッチすることで書き込みデータは“０”に変更される。メモリセルのデータが“１”でなければ、フリップ・フロップＦＦ１でノードＮ２の電圧をセンスしラッチすることで書き込みデータは“１”に保持され以後、追加書き込みが行われる。“０”又は“２”又は“３”書き込みデータを保持しているデータ回路の書き込みデータは変更されない。
【０１２５】
次に、選択された制御ゲートが２．５Ｖにされる。選択されたメモリセルの閾値が２．５Ｖ以下なら、ビット線電圧は１．５Ｖより低くなる。選択されたメモリセルの閾値が２．５Ｖ以上なら、ビット線電圧は１．８Ｖのままとなる。時刻ｔ６ｙｘ  にＰＲＥＡ，ＰＲＥＢがＶｃｃになりノードＮ１，Ｎ２が１．８Ｖ，１．５Ｖになった後、フローティングになる。この後時刻ｔ７ｙｘ  に、信号ＢＬＣＡ，ＢＬＣＢがハイレベルとされ、ビット線の電位がＮ１，Ｎ２に転送される。その後、信号ＢＬＣＡ，ＢＬＣＢがローレベルとなって、ビット線ＢＬ１ＡとＭＯＳキャパシタＱｄ１，ビット線ＢＬ１ＢとＭＯＳキャパシタＱｄ２は切り離される。
【０１２６】
時刻ｔ８ｙｘ  に信号ＶＲＦＹＢＡＣがローレベルとなると、“０”又は“２”書き込みデータが保持されているデータ回路及び、“１”書き込みが十分に行われたために“０”書き込みデータが保持されているデータ回路では、ｐチャネルＭＯＳトランジスタＱｐ１２Ｃがオンであり、ノードＮ１はＶｃｃとなる。
【０１２７】
信号ＳＡＮ１，ＳＡＰ１がそれぞれローレベル、ハイレベルとなってフリップ・フロップＦＦ１が非活性化され、信号ＥＣＨ１がハイレベルとなってイコライズされる。この後、信号ＲＶ１Ａ，ＲＶ１Ｂがハイレベルとなる。再度、信号ＳＡＮ１，ＳＡＰ１がそれぞれハイレベル、ローレベルとなることで、時刻ｔ９ｙｘ  にノードＮ１の電圧がセンスされラッチされる。これで、“３”書き込みデータを保持しているデータ回路のみ、対応するメモリセルのデータが十分“３”書き込み状態となったか否かを検出する。メモリセルのデータが“３”であれば、フリップ・フロップＦＦ１でノードＮ１の電圧をセンスしラッチすることで書き込みデータは“２”に変更され、以後は書き込まれなくなる。メモリセルのデータが“３”でなければ、フリップ・フロップＦＦ１でノードＮ１の電圧をセンスしラッチすることで書き込みデータは“３”に保持され以後、追加書き込みが行われる。“０”又は“１”又は“２”書き込みデータを保持しているデータ回路の書き込みデータは変更されない。
【０１２８】
全ての選択されたメモリセルが所望の閾値に達していれば、データ回路のノードＮ４Ｃがローレベルになる。これを検出することにより、全ての選択されたメモリセルが所望の閾値に達したか否かが分かる。書き込み終了の検出は、例えば図２０のように書き込み終了一括検知トランジスタＱｎ５Ｃ  を用いればよい。ベリファイリード後、まずＶＲＴＣを例えばＶｃｃにプリチャージする。書き込みが不十分なメモリセルが１つでもあると、そのデータ回路のノードＮ４Ｃは“Ｈ”なのでｎチャネルＭＯＳトランジスタＱｎ５Ｃ  はオンし、ＶＲＴＣはプリチャージ電位から低下する。全てのメモリセルが十分に書き込まれると、第１乃至第１２８のデータ回路７−  １…７−  １２８のノードＮ４Ｃが全てローレベルになる。その結果、全てのデータ回路内のｎチャネルＭＯＳトランジスタＱｎ５Ｃ  がオフになるのでＶＲＴＣはプリチャージ電位を保ち、書き込み終了が検知される。
【０１２９】
上記書き込み動作、書き込みベリファイ動作は、図２１に示すデータと閾値の関係に基づいて、ベリファイ電圧を順次設定したが、第１乃至第３の実施の形態の場合、図７、図１４、図１７に示すデータと閾値の関係に基づいて、ベリファイ電圧を順次設定設定すればよい。また、３ページ目以上のデータについても同様の動作により、書き込むことができる。
【０１３０】
この発明は上記実施例に限定されるものではなく、発明の要旨を変えない範囲で種々変形実施可能なことは勿論である。
【０１３１】
【発明の効果】
以上、詳述したようにこの発明によれば、第１乃至第ｍの書き込みにおいて、書き込み・べリファイサイクル数をほぼ同じにすることができ、書き込み時間を短縮することが可能な半導体記憶装置を提供できる。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態を示すブロック図。
【図２】１つのワード線に接続されるメモリセルのアドレスを表した図。
【図３】本発明に係るメモリセルの書き込み動作を概略的に示す構成図。
【図４】本発明に係るメモリセルの読み出し動作を概略的に示す構成図。
【図５】図１に示すメモリセルアレイとデータ回路の関係の一例を示す回路図。
【図６】データ回路の一例を示す概略構成図。
【図７】本発明の第１の実施の形態に係る書き込み動作を説明するために示す図。
【図８】本発明の第１の実施の形態に係る書き込みデータと閾値分布の関係を示す。
【図９】従来例の書き込み時間を説明するために示す図。
【図１０】図１０（ａ）乃至（ｄ）はそれぞれメモリセルユニットの例を示す回路図。
【図１１】図１１（ａ）乃至（ｃ）はそれぞれメモリセルユニットの例を示す回路図。
【図１２】図１２（ａ）乃至（ｃ）はそれぞれメモリセルユニットの例を示す回路図。
【図１３】複数のメモリセルを並列に接続した例を示す回路図。
【図１４】本発明の第２の実施の形態に係る書き込み動作を説明するために示す図。
【図１５】本発明の第２の実施の形態に適用されるデータ回路の一例を示す概略構成図。
【図１６】本発明の第２の実施の形態に係る書き込みデータと閾値分布の関係を示す。
【図１７】本発明の第３の実施の形態に係る書き込み動作を説明するために示す図。
【図１８】本発明の第３の実施の形態に適用されるデータ回路の一例を示す概略構成図。
【図１９】本発明の第３の実施の形態に係る書き込みデータと閾値分布の関係を示す。
【図２０】データラッチ回路の一例を示す回路図。
【図２１】メモリセルの閾値分布を示す図。
【図２２】図２０に示す回路の動作を説明するために示す図。
【図２３】図２０に示す回路の第１ページ目の書き込み動作を説明するために示すタイミング図。
【図２４】図２０に示す回路の第１ページ目のベリファイ動作を説明するために示すタイミング図。
【図２５】図２５（ａ）（ｂ）（ｃ）は図２０に示す回路の第２ページ目の書き込み動作を説明するために示す図。
【図２６】図２０に示す回路の第１ページ目の読み出し動作を説明するために示すタイミング図。
【図２７】図２７（ａ）（ｂ）は図２０に示す回路の第２ページ目の書き込みデータを説明するために示す図。
【図２８】図２８（ａ）（ｂ）は図２０に示す回路の第２ページ目の書き込み動作を説明するために示す図。
【図２９】図２０に示す回路の第２ページ目の書き込み動作を説明するために示すタイミング図。
【図３０】図２０に示す回路の第２ページ目のベリファイ動作を説明するために示すタイミング図。
【図３１】図３１（ａ）はメモリセルアレイの１つのＮＡＮＤセル部分の平面図、図３１（ｂ）は図３１（ａ）の等価回路図。
【図３２】図３２（ａ）は図３１（ａ）に示す３２ａ−３２ａ線に沿った断面図、図３２（ｂ）は図３１（ａ）に示す３２ｂ−３２ｂ線に沿った断面図。
【図３３】ＮＡＮＤセルをマトリクス状に配列したメモリセルアレイの等価回路図。
【符号の説明】
１…メモリセルアレイ、
２…制御ゲート・選択ゲート駆動回路、
３…アドレスバッファ、
４…書き込み電圧発生回路、
５…ベリファイ電圧発生回路、
６…読み出し電圧発生回路、
７…データ回路群、
７ａ〜７ｍ…第１乃至第ｍのデータラッチ回路、
８…データ入出力バッファ、
９…制御回路。
【図１】
0003590270.tif 000002
【図２】
0003590270.tif 000003
【図３】
0003590270.tif 000004
【図４】
0003590270.tif 000005
【図５】
0003590270.tif 000006
【図６】
0003590270.tif 000007
【図７】
0003590270.tif 000008
【図８】
0003590270.tif 000009
【図９】
0003590270.tif 000010
【図１０】
0003590270.tif 000011
【図１１】
0003590270.tif 000012
【図１２】
0003590270.tif 000013
【図１３】
0003590270.tif 000014
【図１４】
0003590270.tif 000015
【図１５】
0003590270.tif 000016
【図１６】
0003590270.tif 000017
【図１７】
0003590270.tif 000018
【図１８】
0003590270.tif 000019
【図１９】
0003590270.tif 000020
【図２０】
0003590270.tif 000021
【図２１】
0003590270.tif 000022
【図２２】
0003590270.tif 000023
【図２３】
0003590270.tif 000024
【図２４】
0003590270.tif 000025
【図２５】
0003590270.tif 000026
【図２６】
0003590270.tif 000027
【図２７】
0003590270.tif 000028
【図２８】
0003590270.tif 000029
【図２９】
0003590270.tif 000030
【図３０】
0003590270.tif 000031
【図３１】
0003590270.tif 000032
【図３２】
0003590270.tif 000033
【図３３】
0003590270.tif 000034