(57)【要約】【課題】メモリセルの閾値電圧の分布幅の拡大を抑制することが可能なＮＡＮＤ型フラッシュメモリを提供する。【解決手段】ＮＡＮＤ型フラッシュメモリは、半導体基板表面のウェル上に第１の絶縁膜を介して形成され周囲から絶縁された電荷保持層と、前記電荷保持層との間に第２の絶縁膜を介して設けられた制御ゲートと、を有し、且つ前記電荷保持層に保持された電荷量に応じた閾値電圧に対応して情報が記憶されるメモリセルトランジスタと、前記制御ゲートに印加する電圧、および前記ウェルに印加する電圧を制御することにより、前記メモリセルトランジスタの動作を制御する制御回路と、を備える。【選択図】図５
2011070712.tif 000002
【特許請求の範囲】
【請求項１】
半導体基板表面のウェル上に第１の絶縁膜を介して形成され周囲から絶縁された電荷保持層と、前記電荷保持層との間に第２の絶縁膜を介して設けられた制御ゲートと、を有し、且つ前記電荷保持層に保持された電荷量に応じた閾値電圧に対応して情報が記憶されるメモリセルトランジスタと、
前記制御ゲートに印加する電圧、および前記ウェルに印加する電圧を制御することにより、前記メモリセルトランジスタの動作を制御する制御回路と、を備え、
前記制御回路は、
第１のプログラム動作により、前記制御ゲートと前記ウェルとの間に、第１のプログラム電圧を印加することにより、前記電荷保持層に電荷を注入し、
前記第１のプログラム動作後の第１のベリファイ動作により、前記メモリセルトランジスタの前記閾値電圧が第１のベリファイレベルを超えているか否かを判断し、
前記第１のベリファイ動作において前記メモリセルトランジスタの前記閾値電圧が前記第１のベリファイレベルを超えていると判断した場合には、前記第１のベリファイ動作後の第２のベリファイ動作により、前記メモリセルトランジスタの前記閾値電圧が前記第１のベリファイレベルよりも低い第２のベリファイレベルを超えているか否かを判断し、
前記第２のベリファイ動作において前記メモリセルトランジスタの前記閾値電圧が前記第２のベリファイレベルを超えていないと判断した場合には、前記第２のベリファイ動作後の第２のプログラム動作により、前記制御ゲートと前記ウェルとの間に、前記第１のプログラム電圧よりも低い第２のプログラム電圧を印加することにより、前記電荷保持層に電荷を注入する
ことを特徴とするＮＡＮＤ型フラッシュメモリ。
【請求項２】
前記制御回路は、
前記第２のプログラム動作において、前記第１のプログラム電圧よりも前記第２のプログラム電圧の方が低くなるように、前記制御ゲートに印加する電圧を制御する
ことを特徴とする請求項１記載のＮＡＮＤ型フラッシュメモリ。
【請求項３】
前記制御回路は、
前記第２のプログラム動作において、前記第１のプログラム電圧よりも前記第２のプログラム電圧の方が低くなるように、前記ウェルの電圧を制御する
ことを特徴とする請求項１記載のＮＡＮＤ型フラッシュメモリ。
【請求項４】
前記メモリセルトランジスタの拡散層に電気的に接続されたビット線の電位を上昇させることにより、前記ウェルの電圧を制御する
ことを特徴とする請求項３に記載のＮＡＮＤ型フラッシュメモリ。
【請求項５】
前記第１のベリファイ動作において前記メモリセルトランジスタの前記閾値電圧が前記第１のベリファイレベルを超えていないと判断した場合には、前記第１のプログラム電圧を上昇させた上で、再度前記第１のプログラム動作をする
ことを特徴とする請求項１ないし４の何れかに記載のＮＡＮＤ型フラッシュメモリ。
【請求項６】
前記第２のベリファイ動作において前記メモリセルトランジスタの前記閾値電圧が前記第２のベリファイレベルを超えていると判断した場合には、前記第２のプログラム動作をしない
ことを特徴とする請求項１ないし５の何れかに記載のＮＡＮＤ型フラッシュメモリ。
【請求項７】
前記メモリセルトランジスタの最小線幅が３０ｎｍ以下であることを特徴とする請求項１ないし６の何れかに記載のＮＡＮＤ型フラッシュメモリ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、高電界を印加して、浮遊ゲートまたは電荷保持層に電荷を注入または除去を行うことにより、情報の書き込み/消去を行うＮＡＮＤ型フラッシュメモリに関する。
【背景技術】
【０００２】
従来の不揮発性半導体メモリには、例えば、浮遊ゲート（ｆｌｏａｔｉｎｇ−ｇａｔｅ）型や、ＳＯＮＯＳ（Ｓｉｌｉｃｏｎ−Ｏｘｉｄｅ−Ｎｉｔｒｉｄｅ−Ｏｘｉｄｅ−Ｓｉｌｉｃｏｎ）型（又はＭＯＮＯＳ（Ｍｅｔａｌ−Ｏｘｉｄｅ−Ｎｉｔｒｉｄｅ−Ｏｘｉｄｅ−Ｓｉｌｉｃｏｎ）型）等がある。
【０００３】
これらの不揮発性半導体メモリは、ＳｉＯ２等の絶縁膜によって周囲から隔離された浮遊ゲートまたは電荷保持層に電荷（電子またはホール）を保持することで情報（データ）を記憶する。保持電荷の量により、メモリセルトランジスタの閾値電圧Ｖｔが変動するので、それをセンスすることにより情報（データ）を判別する。
【０００４】
情報の書き込み/消去、すなわち、電荷の注入および除去は、Ｓｉ基板または制御ゲート（ｃｏｎｔｒｏｌ−ｇａｔｅ）から高電界によるトンネル電流によって、またはＳｉ基板からのＨｏｔ−ｃａｒｒｉｅｒによって行われる（例えば、特許文献１参照。）。
【０００５】
この情報の書き込み/消去を繰り返すと、注入方法がいずれの場合も、ＳｉＯ２等の絶縁膜中を電荷が繰り返し通過することになる。この電荷は、絶縁膜を通過する際に、この絶縁膜にダメージを与え、電子トラップおよび正孔トラップを多数生成することになる。
【０００６】
そして、生成された上記トラップは、様々な問題をもたらす。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００３−１７３６９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明は、メモリセルの閾値電圧の分布幅の拡大を抑制することが可能なＮＡＮＤ型フラッシュメモリを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一態様に係る実施例に従ったＮＡＮＤ型フラッシュメモリは、
半導体基板表面のウェル上に第１の絶縁膜を介して形成され周囲から絶縁された電荷保持層と、前記電荷保持層との間に第２の絶縁膜を介して設けられた制御ゲートと、を有し、且つ前記電荷保持層に保持された電荷量に応じた閾値電圧に対応して情報が記憶されるメモリセルトランジスタと、
前記制御ゲートに印加する電圧、および前記ウェルに印加する電圧を制御することにより、前記メモリセルトランジスタの動作を制御する制御回路と、を備え、
前記制御回路は、
第１のプログラム動作により、前記制御ゲートと前記ウェルとの間に、第１のプログラム電圧を印加することにより、前記電荷保持層に電荷を注入し、
前記第１のプログラム動作後の第１のベリファイ動作により、前記メモリセルトランジスタの前記閾値電圧が第１のベリファイレベルを超えているか否かを判断し、
前記第１のベリファイ動作において前記メモリセルトランジスタの前記閾値電圧が前記第１のベリファイレベルを超えていると判断した場合には、前記第１のベリファイ動作後の第２のベリファイ動作により、前記メモリセルトランジスタの前記閾値電圧が前記第１のベリファイレベルよりも低い第２のベリファイレベルを超えているか否かを判断し、
前記第２のベリファイ動作において前記メモリセルトランジスタの前記閾値電圧が前記第２のベリファイレベルを超えていないと判断した場合には、前記第２のベリファイ動作後の第２のプログラム動作により、前記制御ゲートと前記ウェルとの間に、前記第１のプログラム電圧よりも低い第２のプログラム電圧を印加することにより、前記電荷保持層に電荷を注入する
ことを特徴とする。
【発明の効果】
【００１０】
本発明のＮＡＮＤ型フラッシュメモリによれば、メモリセルの閾値電圧の分布幅の拡大を抑制することができる。
【図面の簡単な説明】
【００１１】
【図１】書き込みパルスを制御ゲートに印加した状態における、トンネル酸化膜近傍のバンド構造を示す模式図である。
【図２】ベリファイリード時における、トンネル酸化膜近傍のバンド構造を示す模式図である。
【図３】通常のリード時における、トンネル酸化膜近傍のバンド構造を示す模式図である。
【図４】ベリファイノイズ等を含む閾値電圧の分布を示す図である。
【図５】本発明の一態様である実施例１に係るＮＡＮＤ型フラッシュメモリ１００の要部構成を示すブロック図である。
【図６】図５に示すメモリセルアレイ１の回路構成の一例を示す回路図である。
【図７】図６のメモリセルアレイ１のカラム方向のＮＡＮＤセルユニットの素子構造を示す断面図である。
【図８】２値（１ビット）のデータを記憶する場合のメモリセルトランジスタＭの閾値電圧の分布を示す図である。
【図９】図５に示すセンスアンプ回路３とデータレジスタ回路１２の構成の一例を示す図である。
【図１０】実施例１に係るＮＡＮＤ型フラッシュメモリ１００の書き込み動作の一例を示すフローチャートである。
【図１１】実施例１に係るＮＡＮＤ型フラッシュメモリのメモリセルトランジスタＭの閾値電圧、ベリファイレベル、およびセル数との関係の一例を示す図である。
【図１２】図５に示すセンスアンプ回路３とデータレジスタ回路１２の構成の他の例を示す図である。
【図１３】実施例２に係るＮＡＮＤ型フラッシュメモリ１００の下側（１ビット目）の書き込み動作の一例を示すフローチャートである。
【図１４】実施例２に係るＮＡＮＤ型フラッシュメモリ１００の上側（２ビット目）の書き込み動作の一例を示すフローチャートである。
【図１５】実施例２に係るＮＡＮＤ型フラッシュメモリのメモリセルトランジスタＭの閾値電圧、ベリファイレベル、およびセル数との関係の一例を示す図である。
【図１６】実施例３に係るＮＡＮＤ型フラッシュメモリ１００の上側（２ビット目）の書き込み動作の一例を示すフローチャートである。
【発明を実施するための形態】
【００１２】
ここで、既述のメモリセルトランジスタの微細化が進むと、単位電荷(素電荷ｅ) による閾値電圧の変動が大きくなる。例えば、２０ｎｍ世代の浮遊ゲート型のフラッシュメモリでは、浮遊ゲート中の電子の数が１個変化すると閾値電圧が５〜２０ｍＶ程度変化する。
【００１３】
単位電荷による閾値電圧変化が大きくなると、プログラムノイズとリードノイズの２つのランダムテレグラフノイズの影響が無視できなくなる。
【００１４】
上記プログラム・ノイズは、１回のプログラム（書き込み）パルスで浮遊ゲート又は電荷保持層に注入される電子の数の統計的揺らぎによるノイズである。
【００１５】
例えば、１回の書き込みパルスで閾値電圧を０.２Ｖ増加させる場合、２０〜３０ｎｍ世代においては、電子を平均１０〜数十個の電子を１回の書き込みパルスで注入する。１回の書き込みパルスで注入される電子の数はポアソン分布に従うため、平均注入個数が小さくなると分散が大きくなる。すなわち、注入個数が平均注入個数を中心に広く分布することになり、１回の書き込みパルスでの閾値電圧の変化も０.２Ｖを中心に広く分布することになる。
【００１６】
ベリファイ動作を行うステップアップ書き込みを用いて、書き込み動作を行う場合には、上記プログラムノイズの影響は、閾値電圧分布の上裾が広がりとして現れる。そして、メモリセルトランジスタの微細化が進むと、同じ閾値電圧変化を生じさせるのに必要な注入電子数が減るため、プログラムノイズは大きくなる(参考文献：C. Monzio et al “First evidence for injection Statistics accuracy limitations in NAND Flash Constant-current Fowler-Nordheim Programming”, IEDM Tech. Dig., pp. 165-168，  2007)。
【００１７】
上記リードノイズは、メモリセルトランジスタのトンネル酸化膜中のシリコン基板界面近くに存在する電子トラップ又は正孔トラップに、電子または正孔がランダムに出入りすることで生じる。
【００１８】
一つの電子トラップまたは正孔トラップに電子または正孔がトラップされているか否かかで生じる閾値電圧の変化は、トラップが存在する場所(チャネル領域内の位置、トンネル酸化膜の深さ) で変化する。一般には、式（１）のように表される。なお、式（１）において、ｑ：素電荷、Ｃｏｘ: 単位面積あたりのゲート容量、Ｗ:チャネル幅、Ｌ:チャネル長である。
ΔＶｔｈ≒ｑ／（Ｃｏｘ＊Ｗ＊Ｌ）・・・（１）
【００１９】
ＮＡＮＤ型フラッシュメモリは、データ保持特性を確保するために厚いトンネル酸化膜を用いているためにＣｏｘが小さく閾値電圧の変化が大きい。
【００２０】
また、最近の研究では、シリコン基板ヘドープされた不純物原子による電流パスのパーコレーションを考慮すると式(１) で予想されるよりもはるかに大きな閾値電圧変化が生じることが分かっている。さらに、スケーリングの依存性は、式(１) のＷ＊Ｌに反比例でなく、√(Ｗ＊Ｌ) に反比例であることも分かっている。実際、５０ｎｍ世代のＮＡＮＤ型フラッシュメモリにおいて１００ｍＶを超える閾値電圧変化が観測されている。
【００２１】
リード動作を行ったときにトラップが電荷を捕獲しているかに応じて閾値電圧が変化するため、このリードノイズの影響は閾値電圧分布の両裾(上裾と下裾) の広がりとして現れる。閾値電圧の変化は√(Ｗ＊Ｌ)に反比例または(Ｗ＊Ｌ) に反比例して大きくなるので、メモリセルトランジスタの微細化が進むとノイズは大きくなる。３０ｎｍ世代以降、特に２０ｎｍ世代では３００ｍＶを越えた大きなノイズが発生することが予想されている（参考文献：K. Fukuda et al,“ Random Telegraph Noise in Flash Memories‐Model and Technology Scaling”, IEDM Tech. Dig., PP. 169-172, 2007) 。
【００２２】
リードノイズと同じく、メモリセルトランジスタのトンネル酸化膜中に存在する電子トラップ又は正孔トラップに起因するものにベリファイノイズがある。ベリファイノイズは、書き込みパルスを印加した直後にベリファイリードを行う時と、その後時間が経過してからリード動作を行う時で、電子トラップまたは正孔トラップに捕獲されている電荷の数が変わるために生じる。
【００２３】
ここで、浮遊ゲート型のＮＡＮＤ型フラッシュメモリを例にベリファイノイズについてより詳細に説明する。
【００２４】
図１は、書き込みパルスを制御ゲートに印加した状態における、トンネル酸化膜近傍のバンド構造を示す模式図である。また、図２は、ベリファイリード時における、トンネル酸化膜近傍のバンド構造を示す模式図である。また、図３は、通常のリード時における、トンネル酸化膜近傍のバンド構造を示す模式図である。また、図４は、ベリファイノイズ等を含む閾値電圧の分布を示す図である。
【００２５】
例えば、書き込み動作時に制御ゲートに高電圧(１０〜２０Ｖ) を印加すると、浮遊ゲートとシリコン基板間のトンネル酸化膜中に高電界が生じる。これにより、ＦＮ（Ｆｏｗｌｅｒ−Ｎｏｒｄｈｅｉｍ）電流が流れて、浮遊ゲートへの電子が注入される。その時、トンネル酸化膜中の多くの電子トラップはシリコン基板のフェルミレベルＥＦより下に位置し、その大部分が電子を捕獲する（図１）。
【００２６】
書き込みパルス印加後、ゲート電圧が０Ｖ〜電源電圧程度に戻されると、シリコン基板のフェルミレベルＥＦは下がり、電子を捕獲していた電子トラップは一斉に電子を放出しはじめる。
【００２７】
ところが、ベリファイリードが行われるまでの数ｕｓ〜数十ｕｓの間に、シリコン基板のフェルミレベルＥＦ以上にある電子トラップが全て電子を放出することはできない。したがって、一部の電子は放出されないままにベリファイリード動作は行われることになる（図２）。
【００２８】
そして、トンネル酸化膜中の電子トラップが電子を捕獲したままの状態では、リードノイズと同じ原因でメモリセルトランジスタの閾値電圧は高くなる。その閾値電圧が高い状態で、設定レベル(ベリファイレベル)に閾値電圧が達したと判定されて書き込みが終了し得る。この場合、時間が経過して電子トラップが電子を放出した後には、そのメモリセルトランジスタの閾値電圧は設定レベルよりも低くなってしまう（図３）。
【００２９】
これにより、実際のリード動作時には、この低い閾値電圧の状態が読み出されることになる。したがって、書き込み終了後に、設定レベルより閾値電圧が低いメモリセルトランジスタが生じることになる。言い換えると閾値分布の下裾側に閾値電圧分布が広がることになる（図４）。
【００３０】
トラップに捕獲されている一個の電子または正孔による閾値電圧の変化は、リードノイズのところで説明した通りであり、メモリセルトランジスタを微細化すると大きくなる。したがって、ベリファイノイズも、メモリセルトランジスタを微細化するに伴い大きくなる。特に、３０ｎｍ世代以降（メモリセルトランジスタＭの最小線幅が３０ｎｍ以下）では、大きなノイズが発生することが予想される。
【００３１】
そこで、本発明は、メモリセルトランジスタの閾値電圧の分布幅の拡大を抑制することが可能なＮＡＮＤ型フラッシュメモリを提案する。
【００３２】
以下、本発明に係る各実施例について図面に基づいて説明する。なお、以下の各実施例においては、浮遊ゲート（ｆｌｏａｔｉｎｇ−ｇａｔｅ）型のＮＡＮＤ型フラッシュメモリについて一例として説明する。しかし、ＳＯＮＯＳ型（又はＭＯＮＯＳ型）等のＮＡＮＤ型フラッシュメモリについても同様に適用される。
【実施例１】
【００３３】
図５は、本発明の一態様である実施例１に係るＮＡＮＤ型フラッシュメモリ１００の要部構成を示すブロック図である。
【００３４】
図５に示すように、ＮＡＮＤ型フラッシュメモリ１００は、メモリセルアレイ１と、ロウデコーダ２と、センスアンプ回路３と、カラムデコーダ４と、データ入出力バッファ５と、内部電位発生回路６と、動作制御回路７と、アドレスバッファ８と、制御ゲート電位制御回路９と、ウェル電位制御回路１０と、ソース電位制御回路１１と、データレジスタ回路１２と、を備える。
【００３５】
メモリセルアレイ１は、後述のように、ロウ方向のワード線ＷＬとカラム方向のビット線ＢＬとにそれぞれ接続され、マトリックス状に配置された複数のＮＡＮＤストリングを有する。
【００３６】
ロウデコーダ２は、ワード線駆動回路（図示せず）を含み、メモリセルアレイ１のワード線選択及び駆動を行う。
【００３７】
センスアンプ回路３は、ビット線ＢＬの電位を制御する回路（図示せず）と、ベリファイリードおよび読み出し動作時にビット線の電圧をセンスするセンスアンプ（図示せず）と、を有している。このセンスアンプ回路３は、ビット線ＢＬの電位を制御することにより、書き込み制御や、ベリファイリード、読み出し動作を行う。ＮＡＮＤ型フラッシュメモリは、例えば、５１２バイトから８Ｋバイトのページ単位で、書き込み動作および読み出し動作を行う。すなわち、センスアンプ回路３は、ページ内の５１２バイトから８Ｋバイトに対応するビット線ＢＬの制御を同時に行うことができる。
【００３８】
カラムデコーダ４は、メモリセルアレイ１のビット線に接続されたセンスアンプ回路３の選択を行う。
【００３９】
データ読み出し時、センスアンプ回路３に読み出されたデータは、データ入出力バッファ５を介し、入出力制御回路（図示せず）に出力される。
【００４０】
内部電位発生回路６は、電源電圧を昇圧または降圧して、センスアンプ回路３、制御ゲート電位制御回路９、ウェル電位制御回路１０、およびソース電位制御回路１１に供給する電圧を発生させる。
【００４１】
制御ゲート電位制御回路９は、メモリセルトランジスタＭの制御制御ゲートＣＧに印加する電圧を制御し、その電圧をロウデコーダ２に供給する。
【００４２】
該入出力制御回路（図示せず）から供給されたメモリセルトランジスタＭのアドレスは、アドレスバッファ８介してロウデコーダ２及びカラムデコーダ４に転送される。
【００４３】
ウェル電位制御回路１０は、半導体基板１０１のセルウェル１０２の電位を制御する。
【００４４】
ソース電位制御回路１１は、ソース線ＳＲＣの電位を制御する。
【００４５】
チップ外部から入力ピン（図示せず）に対して、チップイネーブル信号ＣＥ、書き込みイネーブル信号ＷＥ、読み出しイネーブル信号ＲＥ、アドレスラッチイネーブル信号ＡＬＥ、コマンドラッチイネーブル信号ＣＬＥ等の外部制御信号が、また入出力データピン（図示せず）に対してコマンドコードが入力されると、該入出力制御回路（図示せず）を介してコマンドコードがコマンドバッファ（図示せず）に供給される。該コマンドバッファは、このコマンドコードをデコードし、動作制御回路７にコマンド信号として供給する。
【００４６】
動作制御回路７は、動作モードに応じて供給されるコマンド信号に基づいて、データ書き込み及び消去のシーケンス制御、及びデータ読み出しの制御を行う。
【００４７】
動作制御回路７が読み出し、書き込み、消去などの各種動作を制御する信号を出力することにより、センスアンプ回路３、内部電位発生回路６、制御ゲート電位制御回路９、ウェル電位制御回路１０、およびソース線電位制御回路１１は、各種動作のための電位を生成する。また、動作制御回路７はベリファイ動作を行うようになっている。
【００４８】
データレジスタ１２は、読み出したデータまたは書き込みデータ等を記憶するようになっている。
【００４９】
動作制御回路７は、ベリファイリード時にセンスアンプ回路３でセンスされた結果（データレジスタ１２に記憶されたデータ）に基づいて、所定のメモリセルトランジスタＭに対して書き込み対象のページ内または消去対象のブロック内の全てのメモリセルトランジスタＭの閾値電圧がベリファイレベルまで達しているか（書き込まれているか、又は消去されているか）を判別する。
【００５０】
例えば、選択ワード線ＷＬが接続されたメモリセルトランジスタＭの閾値電圧とベリファイ電圧Ｖｖｆｙとの大小関係が、センスアンプ回路３によりセンスされ、このセンス結果に応じたデータが、データレジスタ回路１２に記憶される。その後、動作制御回路７は、該記憶されたデータに基づいて、ページ内において書き込み対象である全てのメモリセル、もしくは予め設定された許容ビット数または許容バイト数を残して全てのメモリセルの閾値電圧がベリファイレベルまで達しているか（書き込まれているか）、すなわち書き込みベリファイがパスかどうかを判断する。
【００５１】
そして、動作制御回路７は、このベリファイした結果に基づいて、センスアンプ回路３、制御ゲート電位制御回路９、ウェル電位制御回路１０、およびソース線電位制御回路１１を制御し、書き込み対象ページ内全てまたは消去対象ブロック内全てのメモリセルトランジスタＭの閾値電圧がベリファイレベルに達する(パスする)まで、書き込み動作または消去動作を継続する。
【００５２】
動作制御回路７は、ベリファイレベルに達していないメモリセルトランジスタＭの数(ビット数)、またはベリファイレベルに達していないメモリセルトランジスタＭが繋がるビット線乃至カラムの数を数える機能を持つものもある。その場合、書き込み対象ページ内または消去対象ブロック内の、ベリファイレベルに達していないメモリセルトランジスタＭの数、またはベリファイレベルに達していないメモリセルトランジスタＭが繋がるビット線乃至カラムの数が、予め設定された許容ビット数もしくは許容バイト数以内であれば、書き込みまたは消去動作をその時点で打ち切ることが可能である。
【００５３】
ベリファイレベルに達していないビット数またはカラム数が、許容ビット数内または許容バイト数内である状態を、全てのビットまたはカラムがベリファイレベルに達した状態をパスと呼ぶのに対して、擬似パスと呼ぶ。
【００５４】
ＮＡＮＤフラッシュメモリにおいては、ＥＣＣ技術を用いて、各種ディスターブまたはデータ保持特性不良などによって発生した数〜数十ビットの不良ビットを補正することが行われるが、補正可能なビット数が十分ある場合には、擬似パスで書き込み動作または消去動作を打ち切ってしまい、一部のメモリセルトランジスタＭがベリファイレベルに達していない状態に放置しても問題にならない。そうすることで、書き込み又は消去が遅いメモリセルトランジスタＭの為に、書き込み又は消去動作を繰り返すことが避けられ、結果として書き込み性能または消去性能を向上することができる。
【００５５】
以上のように、図５に示す制御回路３、７、９、１０、１１は、制御ゲートＣＧ（ワード線）、セルウェル、ソース線、およびビット線に印加する電圧を制御して、メモリセルトランジスタＭの動作を制御するようになっている。
【００５６】
ここで、メモリセルＭが直列に接続されて構成されるＮＡＮＤストリングの構成についてより詳細に説明する。
【００５７】
図６は、図５に示すメモリセルアレイ１の回路構成の一例を示す回路図である。また、図７は、図６のメモリセルアレイ１のカラム方向のＮＡＮＤセルユニットの素子構造を示す断面図である。
【００５８】
図６に示すように、メモリセルアレイ１は、既述のように、複数のＮＡＮＤセルユニット１ａ１が接続されて構成されるブロック１ａを有する。
【００５９】
１つのＮＡＮＤセルユニット１ａ１は、直列接続された例えば６４個のメモリセルトランジスタＭと、選択ゲートトランジスタＳＧＤＴｒと、選択ゲートトランジスタＳＧＳＴｒとにより、構成されている。
【００６０】
第１の選択ゲートトランジスタＳＧＤＴｒは、ビット線ＢＬに接続されている。また、第２の選択ゲートトランジスタＳＧＳＴｒは、ソース線ＳＲＣに接続されている。
【００６１】
各行に配置されたメモリセルトランジスタＭの制御ゲートは、各ワード線ＷＬにそれぞれ接続されている。
【００６２】
また、第１の選択ゲートトランジスタＳＧＤＴｒのゲートは、セレクト線ＳＧＤに接続されている。第２の選択ゲートトランジスタＳＧＳＴｒのゲートは、セレクト線ＳＧＳに接続されている。
【００６３】
また、図７に示すように、ｐ型半導体基板１０１上に、ｎ型半導体であるウェル１０２に囲まれた、ｐ型半導体であるセルウェル１０３が形成されている。このセルウェル１０３には、ｎ型半導体である拡散層１０４が形成されている。
【００６４】
各メモリセルトランジスタＭは、拡散層１０４で構成されたソース、ドレインと、ソース・ドレイン間のチャネル領域上にトンネル酸化膜１０５を介して設けられた電荷保持層である浮遊ゲートＦＧと、この浮遊ゲートＦＧ上に絶縁膜１０６を介して設けられワード線ＷＬとなる制御ゲートＣＧとから構成されている。絶縁膜１０６は誘電率が高い膜が好ましく、通常、Ｓｉ酸化膜とＳｉ窒化膜の積層構造の膜が用いられることが多い。
【００６５】
浮遊ゲートＦＧは、トンネル酸化膜１０４、絶縁膜１０６、及び層間膜１０７により周囲から隔離されている。なお、ＮＡＮＤ型フラッシュメモリがＳＯＮＯＳ型（又はＭＯＮＯＳ型）である場合には、電荷保持層は浮遊ゲートＦＧでなく、Ｓｉ窒化膜等からなる電荷保持層が用いられる。
【００６６】
メモリセルトランジスタＭは、浮遊ゲートＦＧに保持される電荷量に応じた閾値電圧に対応して、異なるビット情報を記憶することができる。
【００６７】
この閾値電圧は、浮遊ゲートＦＧに蓄えられる電荷量により決まる。浮遊ゲートＦＧ中の電荷量は、トンネル絶縁膜１０５を通るトンネル電流で変化させることができる。
【００６８】
すなわち、セルウェル１０３と拡散層（ソース・ドレイン領域）１０４とに対して、制御ゲートＣＧ（ワード線ＷＬ）を十分高い電圧にすると、トンネル絶縁膜１０５を通して電子が浮遊ゲートＦＧに注入される。これにより、メモリセルトランジスタＭの閾値電圧が高くなる。
【００６９】
一方、制御ゲートＣＧ（ワード線ＷＬ）に対して、セルウェル１０３と拡散層（ソース・ドレイン領域）１０４とを十分高い電圧にすると、トンネル絶縁膜１０５を通して電子が浮遊ゲートＦＧから放出される。これにより、メモリセルトランジスタＭの閾値電圧が低くなる。
【００７０】
このように、メモリセルトランジスタＭは、浮遊ゲートＦＧに蓄積する電荷量を制御することにより、記憶するデータを書き換え可能である。
【００７１】
また、図７に示すように、セルウェル１０３には、選択ゲートトランジスタＳＧＤＴｒと選択ゲートトランジスタＳＧＳＴｒも形成されている。
【００７２】
選択ゲートトランジスタＳＧＤＴｒは、拡散層１０４で構成されたソース、ドレインと、電気的に接続された二層構造の選択ゲート線ＳＧＤから構成されている。この選択ゲートトランジスタＳＧＤＴｒのドレインは、コンタクト電極１０８、メタル配線層１０９、配線間電極１１０を介してビット線ＢＬに接続されている。選択ゲートトランジスタＳＧＤＴｒは、選択ゲート線ＳＧＤにロウデコーダ２から電圧が印加されることにより制御される。
【００７３】
選択ゲートトランジスタＳＧＳＴｒは、拡散層１０４で構成されたソース、ドレインと、電気的に接続された二層構造の選択ゲート線ＳＧＳから構成されている。この選択ゲートトランジスタＳＧＳＴｒのソースは、コンタクト電極１１１を介してソース線ＳＲＣに接続されている。選択ゲートトランジスタＳＧＳＴｒは、選択ゲート線ＳＧＳにロウデコーダ２から電圧が印加されることにより制御される。
【００７４】
ここで、図８は、２値（１ビット）のデータを記憶する場合のメモリセルトランジスタＭの閾値電圧の分布を示す図である。例えば、図８に示すように、閾値電圧を８つの状態に制御すれば、一つもメモリセルトランジスタＭに３ビットの情報を記憶することができる。メモリセルトランジスタＭに記憶したビット情報は、選択読み出し電圧を選択ワード線ＷＬ（制御ゲートＣＧ）に、非選択読み出し電圧を非選択ワード線（制御ゲートＣＧ）に印加することにより読み出し可能である。
【００７５】
また、図９は、図５に示すセンスアンプ回路３とデータレジスタ回路１２の構成の一例を示す図である。
【００７６】
図９に示すように、センスアンプ回路３は、メモリセルアレイ１の複数のビット線ＢＬにそれぞれ接続されたセンスアンプ３ａを有する。
【００７７】
また、データレジスタ回路１２は、複数のレジスタ１２ａ、１２ｂを有する。レジスタ１２ａ、１２ｂは、１つのセンスアンプ３ａ（すなわち１のビット線Ｂｌ）に対して接続されるように配置されている。
【００７８】
レジスタ１２ａ、１２ｂは、センスアンプ３ａでビット線ＢＬの電位をセンスした結果（すなわち、メモリセルトランジスタＭの閾値電圧に対応した結果）に応じたデータをそれぞれ記憶するようになっている。
【００７９】
次に、以上のような構成を有するＮＡＮＤ型フラッシュメモリ１００の書き込み動作について説明する。
【００８０】
本実施例１のＮＡＮＤ型フラッシュメモリ１００においては、書き込み対象のメモリセルトランジスタが所望のベリファイレベル以上に書き込まれるまで、プログラム電圧Ｖｐｇｍを少しずつ増加させながら、書き込みパルス印加とベリファイリードを繰り返す、ステップアップ書き込み方式が用いられる。
【００８１】
図１０は、実施例１に係るＮＡＮＤ型フラッシュメモリ１００の書き込み動作の一例を示すフローチャートである。また、図１１は、実施例１に係るＮＡＮＤ型フラッシュメモリのメモリセルトランジスタＭの閾値電圧、ベリファイレベル、およびセル数との関係の一例を示す図である。
【００８２】
図１０に示すように、先ず、動作制御回路７は、データロードする、すなわち、データレジスタ１２のレジスタ１２ａ、１２ｂに同じ書き込みデータを記憶させる（ステップＳ１）。なお、レジスタ１２にロードされた書き込みデータが消去状態（書き込み不要）に対応するデータである場合には、該当するメモリセルトランジスタＭには書き込みされない。
【００８３】
次に、動作制御回路７は、第１のプログラム動作により、書き込み対象のページの選択されたメモリセルトランジスタＭの制御ゲートとウェルとの間に、第１のプログラム電圧Ｖｐｇｍ１を印加する。これにより、メモリセルトランジスタＭの電荷保持層に電荷を注入する（ステップＳ２）。なお、すでに後述のベリファイをパスしているメモリセルトランジスタＭに対しては電荷が注入されないように電位が制御される。
【００８４】
次に、動作制御回路７は、第１のプログラム動作後の第１のベリファイ動作（通常のベリファイ動作）により、メモリセルトランジスタＭに記憶されたデータを読み出す（ステップＳ３）。これにより、センスアンプ回路３によりセンスされたベリファイデータがレジスタ１２ａに上書きされる。例えば、メモリセルトランジスタＭの閾値電圧がベリファイレベルＭＬ２Ｖ（図１１）を超えている場合（書き込みが完了している場合）には、レジスタ１２ａに記憶されているデータが例えば“０”から“１”に変化する。
【００８５】
そして、動作制御回路７は、該第１のベリファイ動作によりデータレジスタ回路１２に記憶されたデータに基づいて、メモリセルトランジスタＭの閾値電圧が第１のベリファイレベルＭＬ２Ｖ（図１１）を超えているか否かを判断する（ステップＳ４）。
【００８６】
このステップＳ４において、動作制御回路７が、該第１のベリファイ動作においてメモリセルトランジスタＭの閾値電圧が第１のベリファイレベルＭＬ２Ｖを超えていないと判断した場合には、ステップＳ５に進む。このステップＳ５において、第１のプログラム電圧Ｖｐｇｍ１を上昇させた上で、ステップＳ２に戻り、再度第１のプログラム動作をする。以降は、既述の動作が実施される。
【００８７】
一方、ステップＳ４において、動作制御回路７が、該第１のベリファイ動作においてメモリセルトランジスタＭの閾値電圧が第１のベリファイレベルＭＬ２Ｖを超えていると判断した場合には、第１のベリファイをパスしたものとし、該第１のベリファイ動作後の第２のベリファイ動作（補助ベリファイ）をする（ステップＳ６）。
【００８８】
そして、動作制御回路７は、メモリセルトランジスタＭの閾値電圧が第１のベリファイレベルＭＬ２Ｖよりも低い（例えば０．１Ｖ低い）第２のベリファイレベルＭＬ２ＶＮ（図１１）を超えているか否かを判断する（ステップＳ７）。
【００８９】
このステップＳ７において、動作制御回路７が、第２のベリファイ動作（補助ベリファイ動作）においてメモリセルトランジスタＭの閾値電圧が第２のベリファイレベルＭＬ２ＶＮを超えていないと判断した場合には、ステップＳ８に進む。このステップＳ８において、該第２のベリファイ動作後の第２のプログラム動作（補助プログラム動作）により、メモリセルトランジスタＭの制御ゲートとウェルとの間に、第１のプログラム電圧Ｖｐｇｍ１よりも低い（例えば２Ｖ低い）第２のプログラム電圧Ｖｐｇｍ２を印加する。これにより、メモリセルトランジスタＭの電荷保持層に電荷を注入する。
【００９０】
これにより、当該ページのメモリセルトランジスタＭに対する書き込み動作を終了する。
【００９１】
なお、動作制御回路７は、該第２のプログラム動作において、第１のプログラム電圧Ｖｐｇｍ１よりも第２のプログラム電圧Ｖｐｇｍ２の方が低くなるように、例えば、メモリセルトランジスタＭの制御ゲートに印加する電圧を制御する。
【００９２】
または、動作制御回路７は、該第２のプログラム動作において、第１のプログラム電圧Ｖｐｇｍ１よりも第２のプログラム電圧Ｖｐｇｍ２の方が低くなるように、ウェル（メモリセルトランジスタＭの拡散層間のチャネル）の電圧を制御するようにしてもよい。この場合、例えば、動作制御回路７は、メモリセルトランジスタＭの拡散層に電気的に接続されたビット線の電位を上昇させることにより、ウェルの電圧を制御する。
【００９３】
一方、ステップＳ７において、動作制御回路７が、第２のベリファイ動作（補助ベリファイ動作）においてメモリセルトランジスタＭの閾値電圧が第２のベリファイレベルＭＬ２ＶＮを超えていると判断した場合には、第２ベリファイ（補助ベリファイ）をパスしたものとして、第２のプログラム動作をしない。
【００９４】
これにより、当該ページのメモリセルトランジスタＭに対する書き込み動作を終了する。
【００９５】
既述のように、従来は、ランダムテレグラフノイズによりメモリセルトランジスタＭの閾値電圧が高く読めてしまい、本来の書き込み完了前に書き込み終了していた。
【００９６】
しかし、実施例１では、既述のように、補助ベリファイを行い、さらに、補助プログラム動作をする。これにより、ランダムテレグラフノイズの影響を受けたメモリセルトランジスタＭに対して、所望のデータを書き込む（所望のベリファイレベルＭＬ２Ｖを超えるレベルまで閾値電圧を高くする）ことができる（図１１）。
【００９７】
結果として、実施例１に係るＮＡＮＤ型フラッシュメモリ１００は、書き込み後の閾値電圧の分布幅の広がりを抑えることが可能になる。特に、大きなノイズが発生することが予想される３０ｎｍ世代以降（メモリセルトランジスタＭの最小線幅が３０ｎｍ以下）では、書き込み後の閾値電圧の分布幅の広がりをより有効に抑えることができる。
【００９８】
なお、既述のように、第２のベリファイ（補助ベリファイ）のベリファイレベルＭＬ２ＶＮを第１のベリファイのベリファイレベルＭＬ２Ｖより低く設定されている。これにより、補助ベリファイに応じた補助プログラムによりメモリセルトランジスタＭの閾値電圧が必要以上に高くなる（すなわち、閾値電圧の分布幅が拡大する）のを防ぐことができる。
【００９９】
以上のように、本実施例に係るＮＡＮＤ型フラッシュメモリによれば、ベリファイノイズによるメモリセルの閾値電圧の分布幅の拡大を抑制することができる。
【実施例２】
【０１００】
実施例１では、メモリセルトランジスタに記憶されるデータが２値（１ビット）の場合について述べた。
【０１０１】
本発明は、データが多値の場合も適用が可能である。
【０１０２】
そこで、本実施例２では、メモリセルトランジスタに記憶されるデータが多値（特にここで４値（２ビット））の場合について述べる。
【０１０３】
本実施例２で示す方法は、実施例１と同様に、例えば、図５に示すＮＡＮＤ型フラッシュメモリ１００により実施される。また、ＮＡＮＤ型フラッシュメモリ１００の読み出し動作は、実施例１の読み出し動作と同様である。
【０１０４】
なお、この実施例２においては、データレジスタ回路１２の構成が実施例１とは異なる。ここで、図１２は、図５に示すセンスアンプ回路３とデータレジスタ回路１２の構成の他の例を示す図である。
【０１０５】
図１２に示すように、センスアンプ回路３は、メモリセルアレイ１の複数のビット線ＢＬにそれぞれ接続されたセンスアンプ３ａを有する。
【０１０６】
また、データレジスタ回路１２は、複数のレジスタ１２ａ、１２ｂ、１２ｃを有する。レジスタ１２ａ、１２ｂ、１２ｃは、１つのセンスアンプ３ａ（すなわち１つのビット線ＢＬ）に対して接続されるように配置されている。
【０１０７】
レジスタ１２ａ、１２ｂ、１２ｃは、センスアンプ３ａでビット線ＢＬの電位をセンスした結果（すなわち、メモリセルトランジスタＭの閾値電圧に対応した結果）に応じたデータをそれぞれ記憶するようになっている。
【０１０８】
この実施例２においては、その他の構成は、実施例１と同様である。
【０１０９】
次に、以上のような構成を有するＮＡＮＤ型フラッシュメモリ１００の実施例２に係る書き込み動作について説明する。
【０１１０】
本実施例２おいても既述のステップアップ書き込み方式が用いられる。
【０１１１】
図１３は、実施例２に係るＮＡＮＤ型フラッシュメモリ１００の下側（１ビット目）のデータの書き込み動作の一例を示すフローチャートである。図１４は、実施例２に係るＮＡＮＤ型フラッシュメモリ１００の上側（２ビット目）のデータの書き込み動作の一例を示すフローチャートである。また、図１５は、実施例２に係るＮＡＮＤ型フラッシュメモリのメモリセルトランジスタＭの閾値電圧、ベリファイレベル、およびセル数との関係の一例を示す図である。
【０１１２】
なお、下側（１ビット目）のデータの書き込み動作では、既述の補助ベリファイを行わず、最終的な閾値電圧が確定する上側（２ビット目）のデータの書き込み動作では、既述の補助ベリファイを行う。
【０１１３】
図１３に示すように、先ず、動作制御回路７は、データロードする、すなわち、データレジスタ１２のレジスタ１２ａに書き込みデータを記憶させる（ステップＳ２０１）。なお、レジスタ１２にロードされた書き込みデータが消去状態（書き込み不要）に対応するデータである場合には、書き込み動作は実施されない。
【０１１４】
次に、動作制御回路７は、プログラム動作により、書き込み対象のページの選択されたメモリセルトランジスタＭの制御ゲートとウェルとの間に、プログラム電圧Ｖｐｇｍを印加する。これにより、メモリセルトランジスタＭの電荷保持層に電荷を注入する（ステップＳ２０２）。なお、すでに後述のベリファイをパスしているメモリセルトランジスタＭに対しては電荷が注入されないように電位が制御される。
【０１１５】
次に、動作制御回路７は、該プログラム動作後のベリファイ動作（通常のベリファイ動作）により、メモリセルトランジスタＭに記憶されたデータを読み出す（ステップＳ２０３）。これにより、センスアンプ回路３によりセンスされたベリファイデータがレジスタ１２ａに上書きされる。例えば、メモリセルトランジスタＭの閾値電圧がベリファイレベルを超えている場合（書き込みが完了している場合）には、レジスタ１２ａに記憶されているデータが変化する。
【０１１６】
そして、動作制御回路７は、該ベリファイ動作によりデータレジスタ回路１２に記憶されたデータに基づいて、メモリセルトランジスタＭの閾値電圧が該ベリファイレベルを超えているか否かを判断する（ステップＳ２０４）。
【０１１７】
このステップＳ２０４において、動作制御回路７が、該ベリファイ動作においてメモリセルトランジスタＭの閾値電圧が該ベリファイレベルを超えていないと判断した場合には、ステップＳ２０５に進む。このステップＳ２０５において、該プログラム電圧Ｖｐｇｍを上昇させた上で、ステップＳ２０２に戻り、再度該プログラム動作をする。以降は、既述の動作が実施される。
【０１１８】
一方、ステップＳ２０４において、動作制御回路７が、該ベリファイ動作においてメモリセルトランジスタＭの閾値電圧が該ベリファイレベルを超えていると判断した場合には、該ベリファイをパスしたものとし、図１４に示す上側（２ビット目）のデータの書き込み動作に進む。
【０１１９】
次に、図１４に示すように、動作制御回路７は、データロードする、すなわち、データレジスタ１２のレジスタ１２ｂ、１２ｃに同じ書き込みデータを記憶させる（ステップＳ２１０）。なお、レジスタ１２にロードされた書き込みデータが消去状態（書き込み不要）に対応するデータである場合には、該当するメモリセルトランジスタＭには書き込みされない。また、このステップＳ２１０は、既述のステップＳ２０１と同じタイミングでもよい。
【０１２０】
次に、動作制御回路７は、第１のプログラム動作により、書き込み対象のページの選択されたそれぞれのメモリセルトランジスタＭの制御ゲートとウェルとの間に、データレジスタに記憶された書き込みデータに応じて、第１のプログラム電圧Ｖｐｇｍ１を印加する。これにより、該書き込みデータに応じて、それぞれのメモリセルトランジスタＭの電荷保持層に電荷を注入する（ステップＳ２１１）。なお、すでに後述のベリファイをパスしているメモリセルトランジスタＭに対しては電荷が注入されないように電位が制御される。
【０１２１】
次に、動作制御回路７は、第１の書き込み状態にすべきメモリセルトランジスタＭに対して、第１のプログラム動作後の第１のベリファイ動作をするか否かを判断する（ステップＳ２１２）。
【０１２２】
第１の書き込み状態にすべきメモリセルトランジスタＭが第１のベリファイをパスしていない場合には、動作制御回路７は、ステップＳ２１３に進み第１のベリファイをする。
【０１２３】
そして、動作制御回路７は、第１のプログラム動作後の第１のベリファイ動作により、第１の書き込み状態にすべきメモリセルトランジスタＭに記憶されたデータを読み出す（ステップＳ２１３）。これにより、センスアンプ回路３によりセンスされたベリファイデータがレジスタ１２ｂに上書きされる。例えば、メモリセルトランジスタＭの閾値電圧がベリファイレベルＡＶ１（図１５）を超えている場合（書き込みが完了している場合）には、レジスタ１２ｂに記憶されているデータが変化する。
【０１２４】
一方、第１の書き込み状態にするべきメモリセルトランジスタＭが、すでに第１のベリファイをパスしている場合には、第１のベリファイをせずにステップＳ２１４に進む。
【０１２５】
次に、動作制御回路７は、第２の書き込み状態にすべきメモリセルトランジスタＭに対して、第１のプログラム動作後の第２のベリファイ動作をするか否かを判断する（ステップＳ２１２）。
【０１２６】
第２の書き込み状態にすべきメモリセルトランジスタＭが第２のベリファイをパスしていない場合には、動作制御回路７は、ステップＳ２１５に進み第２のベリファイをする。
【０１２７】
そして、動作制御回路７は、第１のプログラム動作後の第２のベリファイ動作により、第２の書き込み状態にすべきメモリセルトランジスタＭに記憶されたデータを読み出す（ステップＳ２１５）。これにより、センスアンプ回路３によりセンスされたベリファイデータがレジスタ１２ｂに上書きされる。例えば、メモリセルトランジスタＭの閾値電圧がベリファイレベルＢＶ１（図１５）を超えている場合（書き込みが完了している場合）には、レジスタ１２ｂに記憶されているデータが変化する。
【０１２８】
一方、第２の書き込み状態にするべきメモリセルトランジスタＭが、すでに第２のベリファイをパスしている場合には、第２のベリファイをせずにステップＳ２１６に進む。
【０１２９】
次に、動作制御回路７は、第３の書き込み状態にすべきメモリセルトランジスタＭに対して、第１のプログラム動作後の第３のベリファイ動作をするか否かを判断する（ステップＳ２１６）。
【０１３０】
第３の書き込み状態にすべきメモリセルトランジスタＭが第３のベリファイをパスしていない場合には、動作制御回路７は、ステップＳ２１７に進み第３のベリファイをする。
そして、動作制御回路７は、第１のプログラム動作後の第３のベリファイ動作により、第３の書き込み状態にすべきメモリセルトランジスタＭに記憶されたデータを読み出す（ステップＳ２１７）。これにより、センスアンプ回路３によりセンスされたベリファイデータがレジスタ１２ｂに上書きされる。例えば、メモリセルトランジスタＭの閾値電圧がベリファイレベルＣＶ１（図１５）を超えている場合（書き込みが完了している場合）には、レジスタ１２ｂに記憶されているデータが変化する。
【０１３１】
一方、第３の書き込み状態にするべきメモリセルトランジスタＭが、すでに第３のベリファイをパスしている場合には、第３のベリファイをせずにステップＳ２１６に進む。
【０１３２】
そして、動作制御回路７は、該第１ないし第３のベリファイ動作によりデータレジスタ回路１２に記憶されたデータに基づいて、それぞれのメモリセルトランジスタＭの閾値電圧が対応する第１ないし第３のベリファイレベルＡＶ１〜ＣＶ１（図１５）を超えているか否か（第１〜第３のベリファイをパスしたか否か）を判断する（ステップＳ２１８）。
【０１３３】
このステップＳ２１８において、動作制御回路７が、該第１ないし第３のベリファイ動作において何れかのメモリセルトランジスタＭの閾値電圧が対応する第１ないし第３のベリファイレベルＡＶ１〜ＣＶ１を超えていないと判断した場合には、ステップＳ２１９に進む。このステップＳ２１９において、第１のプログラム電圧Ｖｐｇｍ１を上昇させた上で、ステップＳ２１１に戻り、再度第１のプログラム動作をする。以降は、既述の動作が実施される。
【０１３４】
一方、ステップＳ２１８において、動作制御回路７が、該第１ないし第３のベリファイ動作においてそれぞれのメモリセルトランジスタＭの閾値電圧が第１ないし第３のベリファイレベルＡＶ１〜ＣＶ１を超えていると判断した場合には、第１ないし第３のベリファイをパスしたものとし、第１ないし第３の補助ベリファイ（ベリファイレベルＡＶ２〜ＣＶ２（図１５））をする（ステップＳ２２０〜Ｓ２２２）。
【０１３５】
そして、動作制御回路７は、それぞれのメモリセルトランジスタＭの閾値電圧が、対応する第１ないし第３のベリファイレベルＡＶ１〜ＣＶ１よりもそれぞれ低い（例えば０．１Ｖ低い）ベリファイレベルＡＶ２〜ＣＶ２（図１５）を超えているか否かを判断する（ステップＳ２２３）。
【０１３６】
このステップＳ２２３において、動作制御回路７が、第１ないし第３の補助ベリファイ動作においてそれぞれのメモリセルトランジスタＭの閾値電圧がそれぞれベリファイレベルＡＶ２〜ＣＶ２（図１５）を超えていないと判断した場合には、ステップＳ２２４に進む。
【０１３７】
このステップＳ２２４において、該第１ないし第３の補助ベリファイ動作後の第２のプログラム動作（補助プログラム動作）により、ワード線（制御ゲート）が共通に接続されたそれぞれのメモリセルトランジスタＭの制御ゲートとウェルとの間に、第１のプログラム電圧Ｖｐｇｍ１よりも低い（例えば２Ｖ低い）第２のプログラム電圧Ｖｐｇｍ２を印加する。これにより、それぞれのメモリセルトランジスタＭの電荷保持層に電荷を注入する。
【０１３８】
これにより、当該ページのそれぞれのメモリセルトランジスタＭに対する書き込み動作を終了する。
【０１３９】
なお、実施例１と同様に、動作制御回路７は、該第２のプログラム動作において、第１のプログラム電圧Ｖｐｇｍ１よりも第２のプログラム電圧Ｖｐｇｍ２の方が低くなるように、例えば、メモリセルトランジスタＭの制御ゲートに印加する電圧を制御する。
【０１４０】
または、実施例１と同様に、動作制御回路７は、該第２のプログラム動作において、第１のプログラム電圧Ｖｐｇｍ１よりも第２のプログラム電圧Ｖｐｇｍ２の方が低くなるように、ウェル（メモリセルトランジスタＭの拡散層間のチャネル）の電圧を制御するようにしてもよい。この場合、例えば、動作制御回路７は、メモリセルトランジスタＭの拡散層に電気的に接続されたビット線の電位を上昇させることにより、ウェルの電圧を制御する。
【０１４１】
一方、ステップＳ２２３において、動作制御回路７が、第１ないし第３の補助ベリファイ動作においてそれぞれのメモリセルトランジスタＭの閾値電圧がベリファイレベルベリファイレベルＡＶ２〜ＣＶ２（図１５）を超えていると判断した場合には、第１ないし第３の補助ベリファイを全てパスしたものとして、第２のプログラム動作をしない。
【０１４２】
これにより、当該ページのメモリセルトランジスタＭに対する書き込み動作を終了する。
【０１４３】
この実施例２では、実施例１と同様に、補助ベリファイを行い、さらに、補助プログラム動作をする。これにより、ランダムテレグラフノイズの影響を受けたメモリセルトランジスタＭに対して、所望のデータを書き込むことができる（図１５）。
【０１４４】
結果として、実施例２に係るＮＡＮＤ型フラッシュメモリ１００は、書き込み後の閾値電圧の分布幅の広がりを抑えることが可能になる。特に、大きなノイズが発生することが予想される３０ｎｍ世代以降（メモリセルトランジスタＭの最小線幅が３０ｎｍ以下）では、書き込み後の閾値電圧の分布幅の広がりをより有効に抑えることができる。
【０１４５】
また、実施例１と同様に、補助ベリファイに応じた補助プログラムによりメモリセルトランジスタＭの閾値電圧が必要以上に高くなる（すなわち、閾値電圧の分布幅が拡大する）のを防ぐことができる。
【０１４６】
以上のように、本実施例に係るＮＡＮＤ型フラッシュメモリによれば、メモリセルの閾値電圧の分布幅の拡大を抑制することができる。
【実施例３】
【０１４７】
実施例２では、メモリセルトランジスタに記憶されるデータが多値の場合の一例について述べる。
【０１４８】
本実施例３では、メモリセルトランジスタに記憶されるデータが多値（特にここで４値（２ビット））の場合の他の例について述べる。
【０１４９】
本実施例３で示す方法は、実施例２と同様に、例えば、図５に示すＮＡＮＤ型フラッシュメモリ１００により実施される。また、ＮＡＮＤ型フラッシュメモリ１００の読み出し動作は、実施例１の読み出し動作と同様である。
【０１５０】
なお、この実施例３においては、データレジスタ回路１２の構成が実施例２と同様である。
【０１５１】
次に、以上のような構成を有するＮＡＮＤ型フラッシュメモリ１００の実施例２に係る書き込み動作について説明する。
【０１５２】
本実施例２おいても既述のステップアップ書き込み方式が用いられる。なお、実施例３に係るＮＡＮＤ型フラッシュメモリ１００の下側（１ビット目）のデータの書き込み動作は、実施例２（図１３）と同様である。また、実施例３係るＮＡＮＤ型フラッシュメモリのメモリセルトランジスタＭの閾値電圧、ベリファイレベル、およびセル数との関係は、実施例２（図１４）と同様である。
【０１５３】
ここで、図１６は、実施例２に係るＮＡＮＤ型フラッシュメモリ１００の上側（２ビット目）のデータの書き込み動作の他の例を示すフローチャートである。
【０１５４】
図１６に示すように、動作制御回路７は、データロードする、すなわち、データレジスタ１２のレジスタ１２ｂ、１２ｃに同じ書き込みデータを記憶させる（ステップＳ３０１）。なお、レジスタ１２にロードされた書き込みデータが消去状態（書き込み不要）に対応するデータである場合には、該当するメモリセルトランジスタＭには書き込みされない。また、このステップＳ３０１は、既述のステップＳ２０１と同じタイミングでもよい。
【０１５５】
次に、動作制御回路７は、第１のプログラム動作により、書き込み対象のページの選択されたそれぞれのメモリセルトランジスタＭの制御ゲートとウェルとの間に、データレジスタに記憶された書き込みデータに応じて、第１のプログラム電圧Ｖｐｇｍ１を印加する。これにより、該書き込みデータに応じて、それぞれのメモリセルトランジスタＭの電荷保持層に電荷を注入する（ステップＳ３０２）。なお、すでに後述のベリファイをパスしているメモリセルトランジスタＭに対しては電荷が注入されないように電位が制御される。
【０１５６】
次に、動作制御回路７は、第１の書き込み状態にすべきメモリセルトランジスタＭに対して、第１のプログラム動作後の第１のベリファイ動作をするか否かを判断する（ステップＳ３０３）。
【０１５７】
第１の書き込み状態にすべきメモリセルトランジスタＭが第１のベリファイをパスしていない場合には、動作制御回路７は、ステップＳ３０４に進み第１のベリファイをする。
【０１５８】
そして、動作制御回路７は、第１のプログラム動作後の第１のベリファイ動作により、第１の書き込み状態にすべきメモリセルトランジスタＭに記憶されたデータを読み出す（ステップＳ３０４）。これにより、センスアンプ回路３によりセンスされたベリファイデータがレジスタ１２ｂに上書きされる。例えば、メモリセルトランジスタＭの閾値電圧がベリファイレベルＡＶ１（図１５）を超えている場合（書き込みが完了している場合）には、レジスタ１２ｂに記憶されているデータが変化する。
【０１５９】
一方、第１の書き込み状態にするべきメモリセルトランジスタＭが、すでに第１のベリファイをパスしている場合には、第１のベリファイをせずにステップＳ３０５に進む。
【０１６０】
そして、動作制御回路７は、該第１のベリファイ動作によりデータレジスタ回路１２に記憶されたデータに基づいて、メモリセルトランジスタＭの閾値電圧が対応する第１のベリファイレベルＡＶ１（図１５）を超えているか否か（第１のベリファイをパスしたか否か）を判断する（ステップＳ３０５）。
【０１６１】
このステップＳ３０５において、動作制御回路７が、該第１のベリファイ動作においてメモリセルトランジスタＭの閾値電圧が対応する第１のベリファイレベルＡＶ１を超えていないと判断した場合には、ステップＳ３０９に進む。
【０１６２】
一方、ステップＳ３０５において、動作制御回路７が、該第１のベリファイ動作においてメモリセルトランジスタＭの閾値電圧が第１のベリファイレベルＡＶ１を超えていると判断した場合には、第１のベリファイをパスしたものとし、第１の補助ベリファイ（ベリファイレベルＡＶ２（図１５））をする（ステップＳ３０６）。
【０１６３】
そして、動作制御回路７は、メモリセルトランジスタＭの閾値電圧が、対応する第１のベリファイレベルＡＶ１よりも低い（例えば０．１Ｖ低い）ベリファイレベルＡＶ２（図１５）を超えているか否かを判断する（ステップＳ３０７）。
【０１６４】
このステップＳ３０７において、動作制御回路７が、第１の補助ベリファイ動作においてメモリセルトランジスタＭの閾値電圧がベリファイレベルＡＶ２（図１５）を超えていないと判断した場合には、ステップＳ３０８に進む。
【０１６５】
このステップＳ３０８において、該第１の補助ベリファイ動作後の第２のプログラム動作（第１の補助プログラム動作）により、メモリセルトランジスタＭの制御ゲートとウェルとの間に、第１のプログラム電圧Ｖｐｇｍ１よりも低い（例えば２Ｖ低い）第２のプログラム電圧Ｖｐｇｍ２を印加する。これにより、メモリセルトランジスタＭの電荷保持層に電荷を注入する。
【０１６６】
一方、ステップＳ３０７において、動作制御回路７が、第１の補助ベリファイ動作においてメモリセルトランジスタＭの閾値電圧がベリファイレベルＡＶ２（図１５）を超えていると判断した場合には、ステップＳ３０９に進む。
【０１６７】
次に、動作制御回路７は、第２の書き込み状態にすべきメモリセルトランジスタＭに対して、第１のプログラム動作後の第２のベリファイ動作をするか否かを判断する（ステップＳ３０９）。
【０１６８】
第２の書き込み状態にすべきメモリセルトランジスタＭが第２のベリファイをパスしていない場合には、動作制御回路７は、ステップＳ３１０に進み第２のベリファイをする。
【０１６９】
そして、動作制御回路７は、第１のプログラム動作後の第２のベリファイ動作により、第２の書き込み状態にすべきメモリセルトランジスタＭに記憶されたデータを読み出す（ステップＳ３１０）。これにより、センスアンプ回路３によりセンスされたベリファイデータがレジスタ１２ｂに上書きされる。例えば、メモリセルトランジスタＭの閾値電圧がベリファイレベルＢＶ１（図１５）を超えている場合（書き込みが完了している場合）には、レジスタ１２ｂに記憶されているデータが変化する。
【０１７０】
一方、第２の書き込み状態にするべきメモリセルトランジスタＭが、すでに第２のベリファイをパスしている場合には、第２のベリファイをせずにステップＳ３１１に進む。
【０１７１】
そして、動作制御回路７は、該第２のベリファイ動作によりデータレジスタ回路１２に記憶されたデータに基づいて、メモリセルトランジスタＭの閾値電圧が対応する第２のベリファイレベルＢＶ１（図１５）を超えているか否か（第２のベリファイをパスしたか否か）を判断する（ステップＳ３１１）。
【０１７２】
このステップＳ３１１において、動作制御回路７が、該第２のベリファイ動作においてメモリセルトランジスタＭの閾値電圧が対応する第２のベリファイレベルＢＶ１を超えていないと判断した場合には、ステップＳ３１５に進む。
【０１７３】
一方、ステップＳ３１１において、動作制御回路７が、該第２のベリファイ動作においてメモリセルトランジスタＭの閾値電圧が第２のベリファイレベルＢＶ１を超えていると判断した場合には、第２のベリファイをパスしたものとし、第２の補助ベリファイ（ベリファイレベルＢＶ２（図１５））をする（ステップＳ３１２）。
【０１７４】
そして、動作制御回路７は、メモリセルトランジスタＭの閾値電圧が、対応する第２のベリファイレベルＢＶ１よりも低い（例えば０．１Ｖ低い）ベリファイレベルＢＶ２（図１５）を超えているか否かを判断する（ステップＳ３１３）。
【０１７５】
このステップＳ３１３において、動作制御回路７が、第２の補助ベリファイ動作においてメモリセルトランジスタＭの閾値電圧がベリファイレベルＢＶ２（図１５）を超えていないと判断した場合には、ステップＳ３１４に進む。
【０１７６】
このステップＳ３１４において、該第２の補助ベリファイ動作後の第２のプログラム動作（第２の補助プログラム動作）により、メモリセルトランジスタＭの制御ゲートとウェルとの間に、第１のプログラム電圧Ｖｐｇｍ１よりも低い（例えば２Ｖ低い）第２のプログラム電圧Ｖｐｇｍ２を印加する。これにより、メモリセルトランジスタＭの電荷保持層に電荷を注入する。
【０１７７】
一方、ステップＳ３１３において、動作制御回路７が、第２の補助ベリファイ動作においてメモリセルトランジスタＭの閾値電圧がベリファイレベルＢＶ２（図１５）を超えていると判断した場合には、ステップＳ３１５に進む。
【０１７８】
次に、動作制御回路７は、第３の書き込み状態にすべきメモリセルトランジスタＭに対して、第１のプログラム動作後の第３のベリファイ動作をするか否かを判断する（ステップＳ３１５）。
【０１７９】
第３の書き込み状態にすべきメモリセルトランジスタＭが第３のベリファイをパスしていない場合には、動作制御回路７は、ステップＳ３１６に進み第３のベリファイをする。
【０１８０】
そして、動作制御回路７は、第１のプログラム動作後の第３のベリファイ動作により、第３の書き込み状態にすべきメモリセルトランジスタＭに記憶されたデータを読み出す（ステップＳ３１６）。これにより、センスアンプ回路３によりセンスされたベリファイデータがレジスタ１２ｂに上書きされる。例えば、メモリセルトランジスタＭの閾値電圧がベリファイレベルＣＶ１（図１５）を超えている場合（書き込みが完了している場合）には、レジスタ１２ｂに記憶されているデータが変化する。
【０１８１】
一方、第３の書き込み状態にするべきメモリセルトランジスタＭが、すでに第３のベリファイをパスしている場合には、第３のベリファイをせずにステップＳ３１７に進む。
【０１８２】
そして、動作制御回路７は、該第３のベリファイ動作によりデータレジスタ回路１２に記憶されたデータに基づいて、メモリセルトランジスタＭの閾値電圧が対応する第３のベリファイレベルＣＶ１（図１５）を超えているか否か（第３のベリファイをパスしたか否か）を判断する（ステップＳ３１７）。
【０１８３】
このステップＳ３１７において、動作制御回路７が、該第３のベリファイ動作においてメモリセルトランジスタＭの閾値電圧が対応する第３のベリファイレベルＣＶ１を超えていないと判断した場合には、ステップＳ３２１に進む。
【０１８４】
一方、ステップＳ３１７において、動作制御回路７が、該第３のベリファイ動作においてメモリセルトランジスタＭの閾値電圧が第３ベリファイレベルＣＶ１を超えていると判断した場合には、第３のベリファイをパスしたものとし、第３の補助ベリファイ（ベリファイレベルＣＶ２（図１５））をする（ステップＳ３１８）。
【０１８５】
そして、動作制御回路７は、メモリセルトランジスタＭの閾値電圧が、対応する第３のベリファイレベルＣＶ１よりも低い（例えば０．１Ｖ低い）ベリファイレベルＣＶ２（図１５）を超えているか否かを判断する（ステップＳ３１９）。
【０１８６】
このステップＳ３１９において、動作制御回路７が、第３の補助ベリファイ動作においてメモリセルトランジスタＭの閾値電圧がベリファイレベルＣＶ２（図１５）を超えていないと判断した場合には、ステップＳ３２０に進む。
【０１８７】
このステップＳ３２０において、該第３の補助ベリファイ動作後の第２のプログラム動作（第３の補助プログラム動作）により、メモリセルトランジスタＭの制御ゲートとウェルとの間に、第１のプログラム電圧Ｖｐｇｍ１よりも低い（例えば２Ｖ低い）第２のプログラム電圧Ｖｐｇｍ２を印加する。これにより、メモリセルトランジスタＭの電荷保持層に電荷を注入する。
【０１８８】
一方、ステップＳ３１９において、動作制御回路７が、第３の補助ベリファイ動作においてメモリセルトランジスタＭの閾値電圧がベリファイレベルＣＶ２（図１５）を超えていると判断した場合には、ステップＳ３２１に進む。
【０１８９】
そして、動作制御回路７は、該第１ないし第３のベリファイ動作によりデータレジスタ回路１２に記憶されたデータに基づいて、それぞれのメモリセルトランジスタＭの閾値電圧が対応する第１ないし第３のベリファイレベルＡＶ１〜ＣＶ１（図１５）を超えているか否か（第１〜第３のベリファイをパスしたか否か）を判断する（ステップＳ３２１）。
【０１９０】
このステップＳ３２１において、動作制御回路７が、該第１ないし第３のベリファイ動作において何れかのメモリセルトランジスタＭの閾値電圧が対応する第１ないし第３のベリファイレベルＡＶ１〜ＣＶ１を超えていないと判断した場合には、ステップＳ３２２に進む。このステップＳ３２２において、第１のプログラム電圧Ｖｐｇｍ１を上昇させた上で、ステップＳ２１１に戻り、再度第１のプログラム動作をする。以降は、既述の動作が実施される。
【０１９１】
一方、ステップＳ３２１において、動作制御回路７が、第１ないし第３の補助ベリファイ動作においてそれぞれのメモリセルトランジスタＭの閾値電圧がベリファイレベルベリファイレベルＡＶ２〜ＣＶ２（図１５）を超えていると判断した場合には、当該ページのメモリセルトランジスタＭに対する書き込み動作を終了する。
【０１９２】
この実施例３では、実施例１と同様に、補助ベリファイを行い、さらに、補助プログラム動作をする。これにより、ランダムテレグラフノイズの影響を受けたメモリセルトランジスタＭに対して、所望のデータを書き込むことができる（図１５）。
【０１９３】
結果として、実施例３に係るＮＡＮＤ型フラッシュメモリ１００は、書き込み後の閾値電圧の分布幅の広がりを抑えることが可能になる。特に、大きなノイズが発生することが予想される３０ｎｍ世代以降（メモリセルトランジスタＭの最小線幅が３０ｎｍ以下）では、書き込み後の閾値電圧の分布幅の広がりをより有効に抑えることができる。
【０１９４】
また、実施例１と同様に、補助ベリファイに応じた補助プログラムによりメモリセルトランジスタＭの閾値電圧が必要以上に高くなる（すなわち、閾値電圧の分布幅が拡大する）のを防ぐことができる。
【０１９５】
以上のように、本実施例に係るＮＡＮＤ型フラッシュメモリによれば、メモリセルの閾値電圧の分布幅の拡大を抑制することができる。
【０１９６】
なお、浮遊ゲート型のＮＡＮＤ型フラッシュメモリにおいては、通常、ノイズはトンネル酸化膜中の電子トラップに起因する。そのため、既述の各実施例では電子トラップを用いて説明したが、トラップの種類は電子トラップに限らない。
【符号の説明】
【０１９７】
１  メモリセルアレイ
２  ロウデコーダ
３  センスアンプ回路
４  カラムデコーダ
５  データ入出力バッファ
６  内部電位発生回路
７  動作制御回路
８  アドレスバッファ  
９  制御ゲート電位制御回路
１０  ウェル電位制御回路
１１  ソース電位制御回路
１２  データレジスタ回路
１００  ＮＡＮＤ型フラッシュメモリ
１０１  半導体基板１０１
１０２  セルウェル
１０３  セルＮウェル
１０４  拡散層
１０５  トンネル酸化膜
１０６  絶縁膜
１０７  層間膜
１０８  コンタクト電極
１０９  メタル配線層
１１０  コンタクト電極
１１１  コンタクト電極
ビット線  ＢＬ
ＳＧＤ  ドレイン側選択ゲート
ＳＧＳ  ソース側選択ゲート
ＳＲＣ  ソース線
ＷＬ  ワード線
【図１】
2011070712.tif 000003
【図２】
2011070712.tif 000004
【図３】
2011070712.tif 000005
【図４】
2011070712.tif 000006
【図５】
2011070712.tif 000007
【図６】
2011070712.tif 000008
【図７】
2011070712.tif 000009
【図８】
2011070712.tif 000010
【図９】
2011070712.tif 000011
【図１０】
2011070712.tif 000012
【図１１】
2011070712.tif 000013
【図１２】
2011070712.tif 000014
【図１３】
2011070712.tif 000015
【図１４】
2011070712.tif 000016
【図１５】
2011070712.tif 000017
【図１６】
2011070712.tif 000018