(57)【要約】【課題】  データの書き込み時間が長くなることを抑制しながら閾値分布の幅を狭くすることができる半導体記憶装置を提供する。【解決手段】  実施形態の半導体記憶装置は、各々が複数レベルの閾値電圧のいずれかに設定可能な複数のメモリセルを備えたメモリセルアレイと、ワード線ドライバと、センスアンプ回路と、前記ワード線ドライバと前記センスアンプ回路を制御して、プログラム動作及びベリファイ動作を含む複数のループを繰り返し行う書き込みシーケンスを実行する制御回路と、を有し、前記制御回路は、書き込みシーケンスにおいて、前記ループ毎に前記プログラム電圧を増加させると共に、前記ベリファイ動作の判定結果に従って前記ビット線電圧を高くするように制御すると共に、前記書き込みシーケンス中において前記ビット線電圧を変化させ、少なくとも１回は前記ビット線電圧が前記プログラム電圧の増加分よりも大きい電圧となるように制御する。【選択図】図１８
2020102287.tif 000002
【特許請求の範囲】
【請求項１】
各々が複数レベルの閾値電圧のいずれかに設定可能な複数のメモリセルを備えたメモリセルアレイと、
前記複数のメモリセルのゲートに接続されたワード線と、
前記複数のメモリセルにデータを書き込むために、前記ワード線にプログラム電圧を印加するワード線ドライバと、
前記複数のメモリセルの一端にそれぞれ接続された複数のビット線と、
前記複数のビット線を介して前記複数のメモリセルのデータを検出すると共に、前記複数のビット線にビット線電圧を印加するセンスアンプ回路と、
前記複数のメモリセルにデータを書き込むために、前記ワード線ドライバと前記センスアンプ回路を制御して、前記メモリセルにデータを書き込むプログラム動作と、前記プログラム動作及び前記メモリセルに書き込まれた前記データを検証するベリファイ動作とのセットから成るループを複数回繰り返し行う書き込みシーケンスを実行する制御回路と、
を有し、
前記制御回路は、前記書き込みシーケンスにおいて、前記ループ毎に前記プログラム電圧を増加させると共に、前記ベリファイ動作の判定結果に従って前記ビット線電圧を高くするように制御すると共に、前記書き込みシーケンス中において前記ビット線電圧を変化させ、少なくとも１回は前記ビット線電圧が前記プログラム電圧の増加分よりも大きい電圧となるように制御する、半導体記憶装置。
【請求項２】
前記制御回路は、前記書き込みシーケンスにおいて最初に前記ベリファイ動作を行ったループの次のループにおいて前記プログラム動作を完了させるように前記プログラム電圧及び前記ビット線電圧を設定した場合における総ループ数を超過しないように、前記ビット線電圧を変化させる、請求項１に記載の半導体記憶装置。
【請求項３】
前記制御回路は、前記閾値電圧の複数のレベルに応じて、前記ビット線電圧を変化させる、請求項１に記載の半導体記憶装置。
【請求項４】
前記制御回路は、前記書き込みシーケンス中のループに応じて、前記ビット線電圧を変化させる、請求項１に記載の半導体記憶装置。
【請求項５】
前記制御回路は、前記プログラム電圧の電圧値に応じて、前記ビット線電圧を変化させる、請求項１に記載の半導体記憶装置。
【請求項６】
前記制御回路は、前記閾値電圧の複数のレベル及び前記書き込みシーケンス中のループに応じて、前記ビット線電圧を変化させる、請求項１に記載の半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、半導体記憶装置に関する。
【背景技術】
【０００２】
ＮＡＮＤ型ＦＬＡＳＨメモリでは、メモリセルを、１ビット（２値）のデータを保持可能なＳＬＣ（Ｓｉｎｇｌｅ  Ｌｅｖｅｌ  Ｃｅｌｌ）とする場合だけでなく、２ビット（４値）のデータを保持可能なＭＬＣ（Ｍｕｌｔｉ  Ｌｅｖｅｌ  Ｃｅｌｌ）、３ビット（８値）のデータを保持可能なＴＬＣ（Ｔｒｉｐｌｅ  Ｌｅｖｅｌ  Ｃｅｌｌ）または４ビット（１６値）のデータを保持可能なＱＬＣ（Ｑｕａｄ  Ｌｅｖｅｌ  Ｃｅｌｌ）として構成する場合がある。
【０００３】
このようにメモリセルを多値化した場合、メモリセルの閾値分布の幅を狭くすることが要求される。メモリセルの閾値分布の幅を狭くする手法として、ＱＰＷ(Quick Pass Write)という書き込み手法が採用されることがある。ＱＰＷは、メモリセルに接続されたビット線にＱＰＷ電圧を印加することで、閾値分布を狭くする。このＱＰＷ電圧をより大きくすることで、閾値分布の幅をより狭くすることが可能である。
【０００４】
しかし、ＱＰＷ電圧を大きくし過ぎると、メモリセルトランジスタの閾値電圧が所望のレベルに到達するまでの書き込み回数が増大する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−１３４９８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本実施形態は、データの書き込み時間が長くなることを抑制しながら閾値分布の幅を狭くすることができる半導体記憶装置を提供する。
【課題を解決するための手段】
【０００７】
実施形態の半導体記憶装置は、各々が複数レベルの閾値電圧のいずれかに設定可能な複数のメモリセルを備えたメモリセルアレイと、前記複数のメモリセルのゲートに接続されたワード線と、前記複数のメモリセルにデータを書き込むために、前記ワード線にプログラム電圧を印加するワード線ドライバと、前記複数のメモリセルの一端にそれぞれ接続された複数のビット線と、前記複数のビット線を介して前記複数のメモリセルのデータを検出すると共に、前記複数のビット線にビット線電圧を印加するセンスアンプ回路と、前記複数のメモリセルにデータを書き込むために、前記ワード線ドライバと前記センスアンプ回路を制御して、前記メモリセルにデータを書き込むプログラム動作と、前記プログラム動作及び前記メモリセルに書き込まれた前記データを検証するベリファイ動作とのセットから成るループを複数回繰り返し行う書き込みシーケンスを実行する制御回路と、を有し、前記制御回路は、前記書き込みシーケンスにおいて、前記ループ毎に前記プログラム電圧を増加させると共に、前記ベリファイ動作の判定結果に従って前記ビット線電圧を高くするように制御すると共に、前記書き込みシーケンス中において前記ビット線電圧を変化させ、少なくとも１回は前記ビット線電圧が前記プログラム電圧の増加分よりも大きい電圧となるように制御する、半導体記憶装置。
【図面の簡単な説明】
【０００８】
【図１】実施形態に関わるメモリシステムの構成例を示すブロック図である。
【図２】実施形態の不揮発性メモリの構成例を示すブロック図である。
【図３】実施形態に関わる、３次元構造のＮＡＮＤメモリセルアレイのブロックの構成例を示す図である。
【図４】実施形態に関わる、３次元構造のＮＡＮＤメモリセルアレイの一部領域の断面図である。
【図５】メモリセルアレイの閾値分布を示す図である。
【図６】書き込み動作時における各配線の電位変化を示す図である。
【図７】書き込み動作時のストリングの様子を示す回路図である。
【図８】標準書き込みシーケンスを説明するための図である。
【図９】ＱＰＷ動作時における各配線の電位変化を示す図である。
【図１０】横軸に閾値電圧をとり縦軸にセル数をとって、ＱＰＷ動作により閾値電圧の変化を説明するための図である。
【図１１】横軸に閾値電圧をとり縦軸にセル数をとって、ＱＰＷ動作により閾値電圧の変化を説明するための図である。
【図１２】パスライト効果による閾値電圧の変化を説明する図である。
【図１３】パスライト効果による閾値電圧の変化を説明する図である。
【図１４】パスライト効果による閾値電圧の変化を説明する図である。
【図１５】本実施の形態におけるパスライト効果の効果量の制御とループ数との関係を説明する図である。
【図１６】図１中のセンスアンプ回路２４の具体的な構成の一例を示す回路図である。
【図１７】図１６のセンスアンプ回路２４の動作波形を示す図である。
【図１８】制御部２２の制御を説明するためのフローチャートである。
【図１９】制御部２２の制御を説明するためのフローチャートである。
【図２０】プログラム電圧Ｖｐｇｍ、ビット線電圧、実効プログラム電圧及び閾値電圧の関係を示す図である。
【図２１】本実施の形態における書き込みシーケンスを示す図である。
【図２２】本発明の第２の実施の形態を示す図である。
【図２３】本発明の第２の実施の形態を示す図である。
【図２４】本発明の第２の実施の形態を示す図である。
【図２５】本発明の第３の実施の形態を示す図である。
【図２６】本発明の第３の実施の形態を示す図である。
【図２７】本発明の第３の実施の形態を示す図である。
【図２８】本発明の第４の実施の形態を示す図である。
【図２９】本発明の第４の実施の形態を示す図である。
【図３０】本発明の第５の実施の形態を示す図である。
【図３１】本発明の第６の実施の形態を示す図である。
【発明を実施するための形態】
【０００９】
以下、図面を参照して本発明の実施の形態について詳細に説明する。
【００１０】
本実施の形態は、後述するパスライト（Ｐａｓｓ  Ｗｒｉｔｅ）効果の効果量を変更しながらパスライト効果を利用することで、書き込み時間が長くなることを抑制しながらメモリセルの閾値分布の幅を十分に狭くすることを可能にするものである。
【００１１】
（メモリシステムの構成）
図１は、実施形態に関わるメモリシステムの構成例を示すブロック図である。本実施形態のメモリシステムは、メモリコントローラ１と不揮発性メモリ２とを備える。メモリシステムは、ホストと接続可能である。ホストは、例えば、パーソナルコンピュータ、携帯端末などの電子機器である。
【００１２】
不揮発性メモリ２は、データを不揮発に記憶する半導体記憶装置であり、例えば、ＮＡＮＤフラッシュメモリを備えている。本実施形態では、不揮発性メモリ２は、メモリセルあたり４ｂｉｔを記憶可能なメモリセルを有するＮＡＮＤメモリ、すなわち４ｂｉｔ／Ｃｅｌｌ（ＱＬＣ：Ｑｕａｄ  Ｌｅｖｅｌ  Ｃｅｌｌ）のＮＡＮＤメモリであるとして説明する。不揮発性メモリ２は、３次元化されている。
【００１３】
メモリコントローラ１は、ホストからの書き込みリクエストに従って不揮発性メモリ２へのデータの書き込みを制御する。また、メモリコントローラ１は、ホストからの読み出しリクエストに従って不揮発性メモリ２からのデータの読み出しを制御する。メモリコントローラ１は、ＲＡＭ（Ｒａｎｄｏｍ Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１１、プロセッサ１２、ホストインターフェイス１３、ＥＣＣ（Ｅｒｒｏｒ  Ｃｈｅｃｋ  ａｎｄ  Ｃｏｒｒｅｃｔ）回路１４およびメモリインターフェイス１５を備える。ＲＡＭ１１、プロセッサ１２、ホストインターフェイス１３、ＥＣＣ回路１４およびメモリインターフェイス１５は、互いに内部バス１６で接続される。
【００１４】
ホストインターフェイス１３は、ホストから受信したリクエスト、ユーザデータである書き込みデータなどを内部バス１６に出力する。また、ホストインターフェイス１３は、不揮発性メモリ２から読み出されたユーザデータ、プロセッサ１２からの応答などをホストへ送信する。
【００１５】
メモリインターフェイス１５は、プロセッサ１２の指示に基づいてユーザデータ等を不揮発性メモリ２へ書き込む処理および不揮発性メモリ２から読み出す処理を制御する。
【００１６】
プロセッサ１２は、メモリコントローラ１を統括的に制御する。プロセッサ１２は、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＭＰＵ（Ｍｉｃｒｏ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等である。プロセッサ１２は、ホストからホストインターフェイス１３経由でリクエストを受けた場合に、そのリクエストに従った制御を行う。例えば、プロセッサ１２は、ホストからのリクエストに従って、不揮発性メモリ２へのユーザデータおよびパリティの書き込みをメモリインターフェイス１５へ指示する。また、プロセッサ１２は、ホストからのリクエストに従って、不揮発性メモリ２からのユーザデータおよびパリティの読み出しを、メモリインターフェイス１５へ指示する。
【００１７】
プロセッサ１２は、ＲＡＭ１１に蓄積されるユーザデータに対して、不揮発性メモリ２上の格納領域（以下、メモリ領域という）を決定する。ユーザデータは、内部バス１６経由でＲＡＭ１１に格納される。プロセッサ１２は、メモリ領域の決定を、書き込み単位であるページ単位のデータ、すなわちページデータ、に対して実施する。本明細書では、不揮発性メモリ２の１ページに格納されるユーザデータをユニットデータと定義する。ユニットデータは、例えば、符号化されて符号語として不揮発性メモリ２に格納される。
【００１８】
なお、符号化は必須ではない。メモリコントローラ１は、符号化せずにユニットデータを不揮発性メモリ２に格納してもよいが、図１では、一構成例として符号化を行う構成を示している。メモリコントローラ１が符号化を行わない場合には、ページデータはユニットデータと一致する。また、１つのユニットデータに基づいて１つの符号語が生成されてもよいし、ユニットデータが分割された分割データに基づいて１つの符号語が生成されてもよい。また、複数のユニットデータを用いて１つの符号語が生成されてもよい。
【００１９】
プロセッサ１２は、ユニットデータごとに書き込み先の不揮発性メモリ２のメモリ領域を決定する。不揮発性メモリ２のメモリ領域には物理アドレスが割当てられている。プロセッサ１２は、ユニットデータの書き込み先のメモリ領域を、物理アドレスを用いて管理する。プロセッサ１２は、決定したメモリ領域の物理アドレスを指定してユーザデータを不揮発性メモリ２へ書き込むようメモリインターフェイス１５へ指示する。プロセッサ１２は、ユーザデータの論理アドレス（ホストが管理する論理アドレス）と物理アドレスとの対応を管理する。プロセッサ１２は、ホストからの論理アドレスを含む読み出しリクエストを受信した場合は、論理アドレスに対応する物理アドレスを特定し、物理アドレスを指定してユーザデータの読み出しをメモリインターフェイス１５へ指示する。
【００２０】
ＥＣＣ回路１４は、ＲＡＭ１１に格納されたユーザデータを符号化して符号語を生成する。また、ＥＣＣ回路１４は、不揮発性メモリ２から読み出された符号語を復号する。  
ＲＡＭ１１は、ホストから受信したユーザデータを不揮発性メモリ２へ記憶するまでに一時格納したり、不揮発性メモリ２から読み出したデータをホストへ送信するまでに一時格納する。ＲＡＭ１１は、例えば、ＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）やＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などの汎用メモリである。
【００２１】
図１では、メモリコントローラ１が、ＥＣＣ回路１４とメモリインターフェイス１５をそれぞれ備える構成例を示した。しかしながら、ＥＣＣ回路１４がメモリインターフェイス１５に内蔵されていてもよい。また、ＥＣＣ回路１４が、不揮発性メモリ２に内蔵されていてもよい。
【００２２】
ホストから書き込みリクエストを受信した場合、メモリコントローラ１は次のように動作する。プロセッサ１２は、書き込みデータをＲＡＭ１１に一時記憶させる。プロセッサ１２は、ＲＡＭ１１にストアされたデータを読み出し、ＥＣＣ回路１４に入力する。ＥＣＣ回路１４は、入力されたデータを符号化し、符号語をメモリインターフェイス１５に入力する。メモリインターフェイス１５は、入力された符号語を不揮発性メモリ２に書き込む。
【００２３】
ホストから読み出しリクエストを受信した場合、メモリコントローラ１は次のように動作する。メモリインターフェイス１５は、不揮発性メモリ２から読み出した符号語をＥＣＣ回路１４に入力する。ＥＣＣ回路１４は、入力された符号語を復号し、復号されたデータをＲＡＭ１１にストアする。プロセッサ１２は、ＲＡＭ１１にストアされたデータを、ホストインターフェイス１３を介してホストに送信する。
【００２４】
図２は、本実施形態の不揮発性メモリの構成例を示すブロック図である。不揮発性メモリ２は、ＮＡＮＤ  Ｉ／Ｏインターフェイス２１、制御部２２、ＮＡＮＤメモリセルアレイ２３、センスアンプ回路２４及びワード線ドライバ２５を備える。不揮発性メモリ２は、例えば１チップの半導体基板（例えば、シリコン基板）からなる。
【００２５】
ＮＡＮＤ  Ｉ／Ｏインターフェイス２１は、メモリコントローラ１から出力された、書き込みイネーブル信号ＷＥｎ、読み出しイネーブル信号ＲＥｎ、アドレスラッチイネーブル信号ＡＬＥ、コマンドラッチイネーブル信号ＣＬＥなどの制御信号を受け取る。また、ＮＡＮＤ  Ｉ／Ｏインターフェイス２１は、メモリコントローラ１から出力された、コマンド、アドレス、データを受け取る。
【００２６】
制御部（制御回路）２２は、ＮＡＮＤ  Ｉ／Ｏインターフェイス２１から制御信号、コマンド、アドレス、データを受け取り、それらに基づいて、不揮発性メモリ２の動作を制御する。制御部２２は、例えば、制御信号、コマンド、アドレス、データに基づいてワード線ドライバ２５やセンスアンプ回路２４を制御し、書き込み動作、読み出し動作、消去動作等を実行する。
【００２７】
制御部２２は、書き込みコマンドが入力された場合、書き込みコマンドに伴って入力されたデータをＮＡＮＤメモリセルアレイ２３上の指定されたアドレスへ書き込むようセンスアンプ回路２４とワード線ドライバ２５を制御する。また、制御部２２は、読み出しコマンドが入力された場合、ＮＡＮＤメモリセルアレイ２３上の指定されたアドレスからデータを読み出すようセンスアンプ回路２４とワード線ドライバ２５を制御する。
【００２８】
例えば、制御部２２は、ＮＡＮＤメモリセルアレイ２３に含まれるメモリセル（メモリセルトランジスタ）ＭＴへデータを書き込むために、ワード線ドライバ２５によって複数のワード線ＷＬへ印加される電圧や、センスアンプ回路２４によって複数のビット線ＢＬに印加される電圧（ビット線電圧）を制御する。
【００２９】
センスアンプ回路２４は、複数のビット線ＢＬに独立して電圧（または電流）を印加し、また、複数のビット線ＢＬの電圧（または電流）を独立して検出することができるように構成されている。
【００３０】
ワード線ドライバ２５は、複数のワード線および選択ゲート線に独立して電圧を印加することができるように構成されている。
【００３１】
（ＮＡＮＤメモリセルアレイの構成）
図３は、３次元構造のＮＡＮＤメモリセルアレイ２３のブロックの構成例を示す図である。図３は、３次元構造のＮＡＮＤメモリセルアレイ（以下、メモリセルアレイという）２３を構成する複数のブロックのうちの１つのブロックＢＬＫを示している。メモリセルアレイの他のブロックも図３と同様の構成を有する。なお、本実施形態は、２次元構造のメモリセルアレイにも適用可能である。
【００３２】
図示するように、ブロックＢＬＫは、例えば４つのストリングユニット（ＳＵ０〜ＳＵ３）を含む。また各々のストリングユニットＳＵは、複数のＮＡＮＤストリングＮＳを含む。ＮＡＮＤストリングＮＳの各々は、ここでは８個のメモリセルＭＴ（ＭＴ０〜ＭＴ７）と、選択トランジスタＳＴ１，ＳＴ２とを含む。なお、ＮＡＮＤストリングＮＳに含まれるメモリセルＭＴの個数は、ここでは８個であるが、８個に限られず、例えば、３２個、４８個、６４個、９６個等でもよい。選択トランジスタＳＴ１，ＳＴ２は、電気回路上は１つのトランジスタとして示しているが、構造上はメモリセルトランジスタと同じでもよい。また、例えばカットオフ特性を高めるために、選択トランジスタＳＴ１，ＳＴ２として、それぞれ複数の選択トランジスタを用いてもよい。 さらに、メモリセルＭＴと選択トランジスタＳＴ１，ＳＴ２との間には、ダミーセルトランジスタが設けられていてもよい。
【００３３】
メモリセルＭＴは、選択トランジスタＳＴ１，ＳＴ２間において、直列接続されるようにして配置されている。一端側のメモリセルＭＴ７が、選択トランジスタＳＴ１に接続され、他端側のメモリセルＭＴ０が、選択トランジスタＳＴ２に接続されている。
【００３４】
ストリングユニットＳＵ０〜ＳＵ３の各々の選択トランジスタＳＴ１のゲートは、それぞれセレクトゲート線ＳＧＤ０〜ＳＧＤ３に接続される。他方で、選択トランジスタＳＴ２のゲートは、同一のブロックＢＬＫ内にある複数のストリングユニットＳＵ間で同一のセレクトゲート線ＳＧＳに共通接続される。また、同一のブロックＢＬＫ内にあるメモリセルＭＴ０〜ＭＴ７のゲートは、それぞれワード線ＷＬ０〜ＷＬ７に共通接続される。すなわち、ワード線ＷＬ０〜ＷＬ７及びセレクトゲート線ＳＧＳは、同一ブロックＢＬＫ内の複数のストリングユニットＳＵ０〜ＳＵ３間で共通に接続されているのに対し、セレクトゲート線ＳＧＤは、同一ブロックＢＬＫ内であってもストリングユニットＳＵ０〜ＳＵ３毎に独立している。
【００３５】
ＮＡＮＤストリングＮＳを構成するメモリセルＭＴ０〜ＭＴ７のゲートには、それぞれワード線ＷＬ０〜ＷＬ７が接続されている。ブロックＢＬＫ内において同一行にあるメモリセルＭＴｉのゲートは、同一のワード線ＷＬｉに接続される。なお、以下の説明では、ＮＡＮＤストリングＮＳを単に「ストリング」という場合がある。
【００３６】
各ＮＡＮＤストリングＮＳは、対応するビット線に接続されている。従って、各メモリセルＭＴは、ＮＡＮＤストリングＮＳに含まれる選択トランジスタＳＴや他のメモリセルＭＴを介して、ビット線に接続されている。上述した通り、同一のブロックＢＬＫ内にあるメモリセルＭＴのデータは、一括して消去される。一方、データの読み出し及び書き込みは、メモリセルグループＭＧ単位（またはページ単位）で行われる。本明細書では、１つのワード線ＷＬｉに接続され、かつ１つのストリングユニットＳＵに属する複数のメモリセルＭＴをメモリセルグループＭＧと定義する。本実施形態では、不揮発性メモリ２は４ビット（１６値）のデータを保持可能なＱＬＣ（Ｑｕａｄ  Ｌｅｖｅｌ  Ｃｅｌｌ）のＮＡＮＤメモリである。従って、１つのメモリセルグループＭＧが、４ページ分のデータを保持することができる。各メモリセルＭＴが保持することができる４ビットは、それぞれこの４ページに対応する。
【００３７】
図４は、３次元構造のＮＡＮＤメモリセルアレイの一部領域の断面図である。図４に示すように、ｐ型ウェル領域（Ｐ−ｗｅｌｌ）上に複数のＮＡＮＤストリングＮＳが形成されている。すなわち、ｐ型ウェル領域上には、セレクトゲート線ＳＧＳとして機能する複数の配線層３３３、ワード線ＷＬｉとして機能する複数の配線層３３２、およびセレクトゲート線ＳＧＤとして機能する複数の配線層３３１が積層されている。
【００３８】
そして、これらの配線層３３３，３３２，３３１を貫通してｐ型ウェル領域に達するメモリホール３３４が形成されている。メモリホール３３４の側面には、ブロック絶縁膜３３５、電荷蓄積膜（電荷保持領域）３３６、およびゲート絶縁膜３３７が順次形成され、更にメモリホール３３４内に導電体柱３３８が埋め込まれている。導電体柱３３８は、例えばポリシリコンからなり、ＮＡＮＤストリングＮＳに含まれるメモリセルＭＴ並びに選択トランジスタＳＴ１及びＳＴ２の動作時にチャネルが形成される領域として機能する。すなわち、配線層３３１と導電体柱３３８とそれらの間の膜３３５〜３３７がそれぞれ選択トランジスタＳＴ１として機能し、配線層３３２と導電体柱３３８とそれらの間の膜３３５〜３３７がそれぞれメモリセルＭＴとして機能し、配線層３３３と各導電体柱３３８とそれらの間の膜３３５〜３３７が選択トランジスタＳＴ２として機能する。
【００３９】
各ＮＡＮＤストリングＮＳにおいて、ｐ型ウェル領域上に選択トランジスタＳＴ２、複数のメモリセルＭＴ、及び選択トランジスタＳＴ１が順に形成されている。導電体柱３３８よりも上側には、ビット線ＢＬとして機能する配線層が形成される。導電体柱３３８の上端には、導電体柱３３８とビット線ＢＬとを接続するコンタクトプラグ３３９が形成されている。
【００４０】
さらに、ｐ型ウェル領域の表面内には、ｎ＋型不純物拡散層およびｐ＋型不純物拡散層が形成されている。ｎ＋型不純物拡散層上にはコンタクトプラグ３４０が形成され、コンタクトプラグ３４０上には、ソース線ＳＬとして機能する配線層が形成される。
【００４１】
以上の図４に示した構成が、図４の紙面の奥行き方向に複数配列されており、奥行き方向に一列に並ぶ複数のＮＡＮＤストリングの集合によって、１つのストリングユニットＳＵが形成される。
【００４２】
（閾値分布）
メモリセルＭＴへのデータの書き込み動作は、大まかにはプログラム動作とベリファイ動作とを含む。プログラム動作は、電子を電荷蓄積膜３３６に注入することによりメモリセルＭＴの閾値電圧を上昇させる（または注入を禁止することで閾値電圧を維持させる）動作のことである。プログラム動作時には、制御部２２は、ワード線ドライバ２５を制御して対象のメモリセルＭＴに接続されたワード線ＷＬにプログラム電圧Ｖｐｇｍを印加し、センスアンプ回路２４を制御して対象のメモリセルＭＴに接続されたビット線ＢＬに、書き込むデータに対応したビット線電圧を印加する。
【００４３】
以下では、閾値電圧を上昇させる動作を「“０”プログラム」または「“０”書き込み」と呼び、閾値電圧を維持させる動作を「“１”プログラム」、「“１”書き込み」、または「書き込み禁止」と呼ぶ。“０”プログラム対象とされたビット線ＢＬには“０”データに対応したビット線電圧Ｖｂｌ＿Ｌが印加される。“１”プログラム対象とされたビット線ＢＬには“１”データに対応したビット線電圧Ｖｂｌ＿Ｈが印加される。例えば、ビット線電圧Ｖｂｌ＿Ｌは０Ｖであり、ビット線電圧Ｖｂｌ＿Ｌは２．５Ｖである。
【００４４】
多値のデータをメモリセルＭＴに書き込む場合には、メモリセルＭＴの閾値電圧をデータの値に応じた値にする。メモリセルＭＴにプログラム電圧Ｖｐｇｍ及びビット線電圧Ｖｂｌ＿Ｌを印加すると、電子が電荷蓄積膜３３６に注入されて閾値電圧が上昇する。プログラム電圧Ｖｐｇｍを大きくすることで電子の注入量を増加させて、メモリセルＭＴの閾値電圧を高くすることができる。しかし、メモリセルＭＴのばらつきにより同一のプログラム電圧Ｖｐｇｍを印加したとしても電子の注入量はメモリセルＭＴ毎に異なる。一旦注入された電子は、消去動作が行われるまで保持される。そこで、各メモリセルＭＴに設定すべき閾値電圧として許容できる閾値電圧の範囲（以下、ターゲット領域という）を超えないように、書き込み動作を複数回に分けプログラム電圧Ｖｐｇｍを徐々に上昇させるようになっている。
【００４５】
そして、プログラム動作の後、データを読み出すことで、メモリセルの閾値電圧がターゲット領域まで達したか否かを判定するベリファイ動作が行われる。以上のプログラム動作とベリファイ動作の組み合わせを繰り返すことで、メモリセルの閾値電圧がターゲット領域まで上昇される。ベリファイ動作により閾値電圧がターゲット領域まで達した、即ち、ターゲット領域の最低値であるターゲットレベルを超えたと判定されたメモリセルは、その後、書き込み禁止とされる。
【００４６】
図５はメモリセルアレイの閾値分布を示す図である。図５では、４ｂｉｔ／Ｃｅｌｌの不揮発性メモリ２の閾値分布例を示している。不揮発性メモリ２において、メモリセルＭＴに記憶する多値データの各データ値に応じて、メモリセルＭＴの閾値電圧が設定される。電荷蓄積膜（電荷保持領域）への電荷量の注入は、確率的であるため、図５に示すように、各メモリセルＭＴの閾値電圧も統計的に分布する。
【００４７】
図５は横軸に閾値電圧をとり縦軸にメモリセル数（セル数）をとって、閾値分布をＤＥｒ，ＤＳ１，ＤＳ２，ＤＳ３，・・・，ＤＳ１３，ＤＳ１４，ＤＳ１５の１６個の山型の領域にて示しており、これらの各領域の閾値電圧の幅が各ターゲット領域に対応する。図５の例では、１６個のターゲット領域内のいずれかにメモリセルＭＴの閾値電圧を設定することで、メモリセルＭＴに１６値のデータ（４ビットデータ）を記憶させることが可能である。
【００４８】
本実施形態では、閾値電圧Ｖｔｈが図５の電圧Ｖｒ１以下となるターゲット領域をステートＥｒとよび、閾値電圧が電圧Ｖｒ１より大きく電圧Ｖｒ２以下となるターゲット領域をステートＳ１とよび、閾値電圧が電圧Ｖｒ２より大きく電圧Ｖｒ３以下となるターゲット領域をステートＳ２とよび、閾値電圧が電圧Ｖｒ３より大きく電圧Ｖｒ４以下となるターゲット領域をステートＳ３とよぶ。以下同様に、図５に示すように、ステートＳ４からＳ１５が、それぞれの電圧に応じて設定される。
【００４９】
すなわち、ステートは、各メモリセルＭＴに記憶させるデータ値に対応したいずれのターゲット領域であるかを示すものであり、４ビット１６値の場合にはターゲット領域は、ステートＥｒ，Ｓ１〜Ｓ１５の１６個のステートに分けられる。なお、各ステートＥｒ，Ｓ１，Ｓ２，Ｓ３，・・・，Ｓ１３，Ｓ１４，Ｓ１５にそれぞれ対応する閾値分布をそれぞれ分布ＤＥｒ，ＤＳ１，ＤＳ２，ＤＳ３，・・・，ＤＳ１３，ＤＳ１４，ＤＳ１５と呼ぶ。電圧Ｖｒ１〜Ｖｒ１５は、各ターゲット領域の境界となる基準電圧である。なお、ベリファイ動作においては、ワード線ＷＬに電圧Ｖｒ１〜Ｖｒ１５をベリファイ電圧として印加して読み出し行い、対象のメモリセルＭＴがオフになることによりステートに対応した閾値電圧に到達したことを判定する。
【００５０】
（書き込み動作）
図６は、書き込み動作時における各配線の電位変化を示す図である。図６は、プログラム動作時における各配線の電位変化を示している。プログラム動作は、ワード線及びビット線に印加するプログラム電圧及びビット線電圧に従って行われる。ワード線（図６の選択ＷＬ，非選択ＷＬ）に電圧が印加されないブロックＢＬＫは、書き込み対象でない非選択ＢＬＫ（図６下段）である。また、ビット線電圧は、ビット線ＢＬに接続された選択トランジスタＳＴ１が導通することによりメモリセルＭＴに印加されるので、書き込み対象のブロックＢＬＫ（選択ＢＬＫ）のうち、セレクトゲート線ＳＧＤが印加されないストリングユニットＳＵは書き込み対象でない非選択ＳＵ（図６中段）である。なお、選択ＢＬＫの非選択ＳＵ（図６中段）についても、プログラム電圧Ｖｐｇｍの印加の前に、セレクトゲート線ＳＧＤを例えば５Ｖにして選択トランジスタＳＴ１を導通させておくようにしてもよい。 
書き込み対象のブロックＢＬＫ（選択ＢＬＫ）の書き込み対象のストリングユニットＳＵ（選択ＳＵ）（図６上段）については、プログラム電圧Ｖｐｇｍの印加の前に、図６上段の左側に示すように、選択ＳＵについてはセレクトゲート線ＳＧＤを例えば５Ｖにして、選択トランジスタＳＴ１を導通させておく。また、書き込み動作時には、セレクトゲート線ＳＧＳは例えば０Ｖである。従って、選択トランジスタＳＴ２はオフ状態となる。一方、図６上段の右側に示すプログラム電圧Ｖｐｇｍ印加時には、セレクトゲート線ＳＧＤを例えば２．５Ｖとする。これにより、選択トランジスタＳＴ１の導通、非導通の状態は、選択トランジスタＳＴ１に接続されるビット線ＢＬのビット線電圧によって決まる。
【００５１】
上述したように、センスアンプ回路２４は、各ビット線ＢＬにデータを転送する。“０”データが与えられたビット線ＢＬにはビット線電圧Ｖｂｌ＿Ｌとして例えば０Ｖの接地電圧Ｖｓｓが印加される。“１”データが与えられたビット線ＢＬにはビット線電圧Ｖｂｌ＿Ｈとして書き込み禁止電圧Ｖｉｎｈｉｂｉｔ（例えば２．５Ｖ）が印加される。従って、プログラム電圧Ｖｐｇｍ印加時には、“０”データが与えられたビット線ＢＬに接続された選択トランジスタＳＴ１は導通し、“１”データが与えられたビット線ＢＬに接続された選択トランジスタＳＴ１はカットオフする。カットオフした選択トランジスタＳＴ１に接続されているメモリセルＭＴは書き込み禁止となる。
【００５２】
導通状態となった選択トランジスタＳＴ１に接続されているメモリセルＭＴは、ワード線ＷＬに印加される電圧に従って電荷蓄積膜への電子の注入が行われる。ワード線電圧として、電圧Ｖｐａｓｓが与えられたワード線ＷＬに接続されたメモリセルＭＴは、閾値電圧に拘わらず導通状態となるが、電荷蓄積膜への電子の注入は行われない。一方、ワード線電圧として、プログラム電圧Ｖｐｇｍが与えられたワード線ＷＬに接続されたメモリセルＭＴは、プログラム電圧Ｖｐｇｍに応じて電荷蓄積膜への電子の注入が行われる。
【００５３】
即ち、ワード線ドライバ２５は、選択ブロックＢＬＫにおいていずれかのワード線ＷＬを選択し、選択ワード線に電圧Ｖｐｇｍを印加し、その他の非選択ワード線ＷＬに電圧Ｖｐａｓｓを印加する。電圧Ｖｐｇｍは、トンネル現象により電子を電荷蓄積膜に注入するための高電圧であり、Ｖｐｇｍ＞Ｖｐａｓｓである。ワード線ドライバ２５によってワード線ＷＬの電圧を制御しながら、センスアンプ回路２４によって各ビット線ＢＬにデータを供給することで、メモリセルアレイ２３の各メモリセルＭＴへの書き込み動作が行われる。
【００５４】
図７は書き込み動作時のストリングの様子を示す回路図である。
【００５５】
図７では、“０”書き込み対象のビット線ＢＬ、及び、“１”書き込み対象のビット線ＢＬに対応する２つのＮＡＮＤストリングを図示している。また、ワード線ＷＬ３が選択された際の様子を示している。
【００５６】
図示するように、選択ワード線ＷＬ３には電圧Ｖｐｇｍが印加され、非選択ワード線ＷＬ０〜ＷＬ２及びＷＬ４〜ＷＬ７には電圧Ｖｐａｓｓが印加される。
【００５７】
そして、“０”書き込み対象のビット線ＢＬに対応するＮＡＮＤストリングでは、選択トランジスタＳＴ１がオン状態となる。そのため、選択ワード線ＷＬ３に接続されたメモリセルＭＴ３のチャネル電位Ｖchは０Ｖとなる。すなわち、ゲートとチャネルとの間の電位差が大きくなり、その結果、電子が電荷蓄積膜に注入されて、メモリセルＭＴ３の閾値電圧が上昇される。
【００５８】
“１”書き込み対象のビット線ＢＬに対応するＮＡＮＤストリングでは、選択トランジスタＳＴ１がカットオフ状態となる。そのため、選択ワード線ＷＬ３に接続されたメモリセルＭＴ３のチャネルは電気的にフローティングとなり、ワード線ＷＬ等との容量カップリングによりチャネル電位Ｖchは電圧Ｖｐｇｍ近くまで上昇される。すなわち、ゲートとチャネルとの間の電位差が小さくなり、その結果、電子は電荷蓄積膜に注入されず、メモリセルＭＴ３の閾値電圧は維持される（閾値分布レベルがより高い分布に遷移するほどには閾値電圧は変動しない）。
【００５９】
（標準書き込みシーケンス）
図８は標準書き込みシーケンスを説明するための図である。図８ではプログラム動作とベリファイ動作との組み合わせが４３回繰り返されることによって、データが書き込まれる場合を例に示している。この繰り返し動作を「ループ」と呼ぶ。１回目のループにおけるプログラム電圧Ｖｐｇｍは最も低い電圧値に設定され、２回目、３回目・・・とループが進むにつれて、次第にプログラム電圧Ｖｐｇｍを大きな電圧値に設定するようになっている。また、図８中の丸印はベリファイ動作を行うことが可能なループを示している。また、各ステートＳ１〜Ｓ１５において、プログラム動作は、１回目のループから最大でそれぞれ丸印が含まれるループまで行われる。
【００６０】
例えば、ステートＳ２に設定するメモリセルＭＴについては、１回目のループから最大で１５回目のループまでプログラム電圧Ｖｐｇｍを次第に増加させながらプログラム動作が行われる可能性がある。ベリファイ動作は丸印のループのみ行われ、ベリファイ動作によって、設定されているターゲット領域に閾値電圧が到達したと判定されたメモリセルＭＴについては、その後、書き込み禁止とされる。
【００６１】
（ＱＰＷ）
図９は、ＱＰＷ動作時における各配線の電位変化を示す図である。書き込み動作時には、上述した（通常の）プログラム動作だけでなく、プログラム動作として、ＱＰＷ動作がなされる場合もある。
【００６２】
図７の例では、閾値電圧を上昇させたいメモリセル（メモリセルトランジスタ）ＭＴに対応する（“０”データが与えられた）ビット線ＢＬにはビット線電圧Ｖｂｌ＿Ｌ（例えば接地電圧Ｖｓｓ、０Ｖ）を印加し、閾値電圧を上昇させたくないメモリセル（メモリセルトランジスタ）ＭＴに対応する（“１”データが与えられた）ビット線ＢＬにはビット線電圧Ｖｂｌ＿Ｈ（例えば２．５Ｖ）を印加した。この場合、メモリセルグループＭＧに含まれる複数のメモリセルＭＴに対して、閾値電圧を上昇させるか維持させるという２通りの制御しか行えない。
【００６３】
そこで、ＱＰＷ動作では、図９に示すように、閾値電圧を小さい変化幅で上昇させたいメモリセルＭＴに対応するビット線ＢＬには、例えば、ビット線電圧Ｖｂｌ＿Ｌ（接地電圧Ｖｓｓ、例えば０Ｖ）より高くビット線電圧Ｖｂｌ＿Ｈ（書き込み禁止電圧Ｖｉｎｈｉｂｉｔ、例えば２．５Ｖ）より低い電圧を印加する。すなわち、閾値電圧を上昇させたいメモリセルＭＴに対応する（“０”データが与えられた）ビット線ＢＬよりも、ビット線ＢＬの充電レベルを上げる。これにより、対象となるメモリセルＭＴにおいては、チャネル電位Ｖchが電圧Ｖｂｌ＿Ｌ（接地電圧Ｖｓｓ、例えば０Ｖ）よりも上昇する。従って、このチャネル電圧Ｖchの上昇分だけ、メモリセルＭＴに印加される実効的なプログラム電圧（以下、実効プログラム電圧という）が低下し、選択ワード線ＷＬに印加される電圧Ｖｐｇｍによる電荷蓄積膜への電子の注入が緩和される。従って、通常のプログラム動作とＱＰＷ動作とを組み合わせると、メモリセルＭＴに対して、閾値電圧を上昇させる、閾値電圧を維持させる、あるいは、閾値電圧を小さい変化幅で上昇させる、という３通りの制御を行うことができる。以下では、このＱＰＷ動作のためにビット線ＢＬに印加する電圧を、ＱＰＷ電圧Ｖｂｌ＿ｑｐｗと呼ぶ。
【００６４】
図１０及び図１１は横軸に閾値電圧をとり縦軸にセル数をとって、ＱＰＷ動作による閾値電圧の変化を説明するための図である。図１０は通常のプログラム動作を示し、図１１はＱＰＷ動作を示している。
【００６５】
図１０及び図１１において、分布ＤＥｒは、ステートＥｒの閾値分布を示しており、分布ＤＳ１ａは、目標ステートＳ１の各メモリセルＭＴについて、例えば１回目のループにおける書き込みによって得られる閾値分布の一例を示している。図１０の例では、目標ステートＳ１の各メモリセルＭＴに対してベリファイ電圧Ｖｖを用いたベリファイ動作が行われることを示している。なお、通常のプログラム動作では、ビット線電圧は例えば０Ｖで固定であり、プログラム電圧＝実効プログラム電圧である。
【００６６】
分布ＤＳ１ａは、ベリファイ電圧Ｖｖに到達していないので、これらの各メモリセルＭＴに対してプログラム電圧をΔＶｐｇｍだけ増加させて２回目のループが実施される。
【００６７】
プログラム電圧がΔＶｐｇｍだけ増加する結果、各メモリセルＭＴは、ΔＶｐｇｍに相当する分（矢印）だけ閾値電圧が上昇し、分布ＤＳ１ｂが得られる。ベリファイ電圧Ｖｖよりも高い閾値電圧を有する分布ＤＳ１ｂ中のメモリセルＭＴについては書き込み禁止とされ、ベリファイ電圧Ｖｖに到達していない分布ＤＳ１ｂ中のメモリセルＭＴについては、次の３回目のループにおいて更に、プログラム電圧をΔＶｐｇｍだけ増加させて書き込みが行われる。
【００６８】
この結果、ベリファイ電圧Ｖｖに到達していない分布ＤＳ１ｂ中のメモリセルＭＴは、ΔＶｐｇｍに相当する分だけ閾値電圧が上昇し（矢印）、分布ＤＳ１ｃが得られる。ベリファイ電圧Ｖｖよりも高い閾値電圧を有する分布ＤＳ１ｃ中のメモリセルＭＴについては書き込み禁止とされ、ベリファイ電圧Ｖｖに到達していない分布ＤＳ１ｃ中のメモリセルＭＴについては、次の４回目のループにおいて更に、プログラム電圧をΔＶｐｇｍだけ増加させて書き込みが行われる。この結果、ベリファイ電圧Ｖｖに到達していない分布ＤＳ１ｃ中のメモリセルＭＴは、ΔＶｐｇｍに相当する分だけ閾値電圧が上昇し（矢印）、分布ＤＳ１が得られる。分布ＤＳ１はメモリセルＭＴの全てがベリファイ電圧Ｖｖよりも高い閾値電圧を有することを示しており、目標ステートＳ１に設定された全てのメモリセルＭＴは書き込み禁止とされる。
【００６９】
ＱＰＷ動作時には、図１１に示すように、ベリファイ電圧としてベリファイ電圧Ｖｖに相当するベリファイ電圧ＶｖＨの他に、ベリファイ電圧ＶｖＨよりも低い電圧のベリファイ電圧ＶｖＬを用いたベリファイ動作を行う。以下、ベリファイ電圧ＶｖＨをベリファイハイレベルともいい、ベリファイ電圧ＶｖＬをベリファイローレベルともいう。ベリファイ動作によって、対象となるメモリセルＭＴの閾値電圧がベリファイローレベルよりも低い値か、ベリファイローレベルとベリファイハイレベルとの間の値か、ベリファイハイレベルよりも高い値かが判定される。
【００７０】
そして、メモリセルＭＴの閾値電圧がベリファイローレベルよりも低い場合には、プログラム電圧を通常と同様にΔＶｐｇｍだけ増加させ、閾値電圧がベリファイハイレベルよりも高い値の場合には書き込み禁止とし、閾値電圧がベリファイローレベルとベリファイハイレベルの間の値の場合には、実効プログラム電圧の増加分をΔＶｐｇｍよりも小さい電圧に設定する。
【００７１】
ＱＰＷでは、実効プログラム電圧の増加分をΔＶｐｇｍよりも小さい電圧に設定するために、プログラム電圧ＶｐｇｍをΔｐｇｍだけ増加させると同時に、ビット線電圧をＶｂｌ＿ＬからＱＰＷ電圧Ｖｂｌ＿ｑｐｗ（Ｖｂｌ＿Ｌ＜Ｖｂｌ＿ｑｐｗ）に増加させるようになっている。従って、実効プログラム電圧の増加分は、（ΔＶｐｇｍ−Ｖｂｌ＿ｑｐｗ）となる。
【００７２】
図１１の例では、目標ステートＳ１の各メモリセルＭＴに対してベリファイローレベル及びベリファイハイレベルを用いたベリファイ動作が行われる。このベリファイ動作が書き込みシーケンス中のｎ（ｎは自然数）回目のループで行われたものとすると、分布ＤＳ１ａ中のベリファイローレベルに到達していないメモリセルＭＴに対しては、実効プログラム電圧をΔＶｐｇｍだけ増加させて（ｎ＋１）回目のループが実施される。これにより、この対象となったメモリセルＭＴについては、閾値電圧がΔＶｐｇｍに相当する分だけ上昇する（白抜き矢印）。
【００７３】
一方、分布ＤＳ１ａ中のベリファイローレベルとベリファイハイレベルとの間のメモリセルＭＴに対しては、プログラム電圧をΔＶｐｇｍだけ増加させると同時にビット線電圧をＱＰＷ電圧Ｖｂｌ＿ｑｐｗに増加させて、（ｎ＋１）回目のループが実施される。これにより、この対象となったメモリセルＭＴについては、実効プログラム電圧は（ΔＶｐｇｍ−Ｖｂｌ＿ｑｐｗ）だけ増加し、実効プログラム電圧の増加分に相当する分だけ閾値電圧が上昇する（塗り潰し矢印）。この結果、この対象となったメモリセルＭＴについては、（ｎ＋１）回目のループによってベリファイハイレベルを超えるものと期待される。こうして、（ｎ＋１）回目のループにより閾値分布ＤＳ１ｂ＿ｑｐｗが得られる。
【００７４】
ベリファイハイレベルよりも高い閾値電圧を有する分布ＤＳ１ｂ＿ｑｐｗ中のメモリセルＭＴについては書き込み禁止とされ、ベリファイローレベルに到達していない分布ＤＳ１ｂ＿ｑｐｗ中のメモリセルＭＴについては、次の（ｎ＋２）回目のループにおいて更に、実効プログラム電圧をΔＶｐｇｍだけ増加させて書き込みが行われる。また、分布ＤＳ１ｂ＿ｑｐｗ中のベリファイローレベルとベリファイハイレベルとの間のメモリセルＭＴ（接続されたビット線ＢＬにはビット線電圧Ｖｂｌ＿Ｌが印加されている）に対しては、プログラム電圧をΔＶｐｇｍだけ増加させると同時にビット線電圧をＱＰＷ電圧Ｖｂｌ＿ｑｐｗに増加させて、（ｎ＋２）回目のループが実施される。これにより、この対象となったメモリセルＭＴについては、実効プログラム電圧は（ΔＶｐｇｍ−Ｖｂｌ＿ｑｐｗ）だけ増加し、実効プログラム電圧の増加分に相当する分だけ閾値電圧が上昇する（塗り潰し矢印）。この結果、この対象となったメモリセルＭＴについては、（ｎ＋２）回目のループによってベリファイハイレベルを超えるものと期待される。こうして、（ｎ＋２）回目のループにより閾値分布ＤＳ１ｃ＿ｑｐｗが得られる。
【００７５】
ベリファイハイレベルよりも高い閾値電圧を有する分布ＤＳ１ｃ＿ｑｐｗ中のメモリセルＭＴについては書き込み禁止とされ、分布ＤＳ１ｃ＿ｑｐｗ中のベリファイローレベルとベリファイハイレベルとの間のメモリセルＭＴについては、次の（ｎ＋３）回目のループにおいて、プログラム電圧をΔＶｐｇｍだけ増加させると同時にビット線電圧をＱＰＷ電圧Ｖｂｌ＿ｑｐｗに増加させて、（ｎ＋３）回目のループが実施される。これにより、この対象となったメモリセルＭＴについては、実効プログラム電圧は（ΔＶｐｇｍ−Ｖｂｌ＿ｑｐｗ）だけ増加し、実効プログラム電圧の増加分に相当する分だけ閾値電圧が上昇する（塗り潰し矢印）。この結果、この対象となったメモリセルＭＴについては、（ｎ＋３）回目のループによってベリファイハイレベルを超えるものと期待される。こうして、（ｎ＋３）回目のループにより閾値分布ＤＳ１＿ｑｐｗが得られる。
【００７６】
図１０に示すように、通常のプログラム動作では、目標ステートＳ１の各メモリセルＭＴは、閾値分布ＤＳ１に示す分布を有し、ターゲット領域の幅はΔＶｐｇｍとなる。これに対し、ＱＰＷ動作では、図１１に示すように、目標ステートＳ１の各メモリセルＭＴは、閾値分布ＤＳ１＿ｑｐｗに示す分布を有し、ターゲット領域の幅はΔＶｐｇｍ−Ｖｂｌ＿ｑｐｗとなり、閾値分布の幅を狭くすることができる。
【００７７】
図１１に示すように、ＱＰＷ動作時の閾値分布の幅は、閾値電圧の変化の大きさ、即ち、実効プログラム電圧の増加分の大きさに対応する。従って、ビット線電圧をより大きくして実効プログラム電圧の増加分を小さくすることで、閾値電圧の変化の大きさを小さくして、閾値分布の幅をより小さくすることができる。
【００７８】
（パスライト効果）
ＱＰＷ動作においては、通常ΔＶｐｇｍ＞Ｖｂｌ＿ｑｐｗであり、実効プログラム電圧の増加分（ΔＶｐｇｍ−Ｖｂｌ＿ｑｐｗ）は正の値である。この実効プログラム電圧の１回の増加によって、閾値電圧は目標ステートのターゲット領域内の値となることが期待される。これに対し、ビット線電圧を増大させて実効プログラム電圧の増加分を負の値にすると、電荷蓄積膜に対する電子の注入は行われない。更に、次のループにおいて、実効プログラム電圧の増加分を正の値に戻しても、増加分に応じて閾値電圧が上昇するとは限らず、閾値電圧の上昇が緩やかになる。この現象は、パスライト効果と呼ばれており、このパスライト効果を利用することで、閾値電圧の変化を小さくして閾値分布の幅を一層狭くすることができる。
【００７９】
図１２から図１４はパスライト効果による閾値電圧の変化を説明する図である。図１２は横軸にループ毎に増加するプログラム電圧Ｖｐｇｍをとり縦軸に閾値電圧をとって、ビット線電圧に印加する電圧に応じた閾値電圧の変化の様子を示している。また、図１３及び図１４はプログラム電圧Ｖｐｇｍ、ビット線電圧、実効プログラム電圧及び閾値電圧の関係を示しており、図１３は通常のＱＰＷ動作時の例を示し、図１４はパスライト効果を利用した場合の例を示している。なお、図１３及び図１４は概略の関係を説明するためのものであり、尺度は厳密ではなく、また、グラフ毎に電圧目盛りも異なる。
【００８０】
図１２に示すように、ループの開始からループ毎にプログラム電圧Ｖｐｇｍは次第に上昇する。いま、ビット線電圧は０Ｖであるものとする。閾値電圧はプログラム電圧Ｖｐｇｍの上昇に対応して上昇する。プログラム電圧が電圧Ｖ１に到達したループにおいて、プログラム電圧Ｖｐｇｍの増加分よりも高いビット線電圧Ｖｐｗ１をビット線ＢＬに印加する。そうすると、実効プログラム電圧は減少することになり、図１２の破線部分に示すように、閾値電圧は上昇しない。ループが進むにつれてプログラム電圧Ｖｐｇｍは増加し、実効プログラム電圧が電圧Ｖ１に到達したループの時点における実効プログラム電圧よりも増加すると、閾値電圧は実線波形に示すように、上昇し始める。
【００８１】
また、プログラム電圧が電圧Ｖ１に到達したループにおいて、ビット線電圧Ｖｐｗ１よりも大きなビット線電圧Ｖｐｗ２をビット線ＢＬに印加するものとする。そうすると、実効プログラム電圧は減少し、閾値電圧はビット線電圧Ｖｐｗ１を印加した場合よりも長い期間上昇しない。更に、ループが進むにつれてプログラム電圧Ｖｐｇｍは増加したとしても、図１２の破線の特性に示すように、実効プログラム電圧の増加に比べて閾値電圧の増加はしばらくのループ数だけ緩やかとなる。即ち、図１２のパスライト効果期間に示すように、ビット線電圧Ｖｐｗ２印加後における所定のループ数の期間は、パスライト効果により閾値電圧の変化が小さいことを示している。このパスライト効果期間において、目標ステートの閾値電圧に到達させるように書き込み動作を制御することで、閾値分布の幅を狭くすることが可能である。
【００８２】
なお、本実施の形態においても、閾値電圧が目標ステートのターゲット領域に到達したか否かの閾値電圧の判定レベルをベリファイハイレベルとし、このベリファイハイレベルよりも低いレベルをベリファイローレベルとする。そして、ベリファイ動作の結果、閾値電圧がベリファイローレベルに達していないと判定されたメモリセルを書き込み不足セルといい、閾値電圧がベリファイハイレベルを超えたと判定されたメモリセルを書き込み完了セルといい、閾値電圧がベリファイローレベルとベリファイハイレベルとの間の値と判定されたメモリセルをパスライトセルというものとする。
【００８３】
また、書き込み対象のメモリセルＭＴについて、閾値電圧がベリファイ動作によってベリファイローレベルに到達したと判定されるまでのプログラム動作を通常プログラム動作といい、通常プログラム動作が行われるループを通常ループという。また、閾値電圧がベリファイ動作によってベリファイローレベルとベリファイハイレベルの間に到達したと判定された後に行うプログラム動作をパスライトプログラム動作といい、パスライトプログラム動作が行われるループをパスライトループという。また、閾値電圧がベリファイハイレベルを超えた後に行われるループを書き込み禁止ループという。また、本実施の形態においては、パスライト効果を利用するものであるので、パスライトプログラム動作時にビット線ＢＬに印加する電圧をパスライト電圧というものとする。
【００８４】
図１３及び図１４はＱＰＷを利用した場合の書き込みとパスライト効果を利用した書き込みとを説明するものである。図１３及び図１４に示すように、ワード線ＷＬに印加されるプログラム電圧Ｖｐｇｍは、ループ毎にΔＶｐｇｍだけ順次増加する。ＱＰＷ動作時には、通常ループの最後のループにおけるベリファイ動作において、閾値電圧がベリファイローレベルとベリファイハイレベルとの間にあると判定された場合には、次のＱＰＷループにおいて、ビット線にはＱＰＷ電圧が印加される。
【００８５】
従って、ＱＰＷループ時における実効プログラム電圧は、プログラム電圧Ｖｐｇｍ−ＱＰＷ電圧となり、最後の通常ループからＱＰＷループへの移行による実効プログラム電圧の増加分は、（ΔＶｐｇｍ−Ｖｂｌ＿ｑｐｗ）となる。ＱＰＷループにおいては、閾値電圧の増加が抑制される。
【００８６】
なお、ＱＰＷ動作時には、ＱＰＷループの１回（１ループ）のプログラム動作によって、閾値電圧が目標ステートのターゲット領域に到達することが期待されている。図１３の例では、ＱＰＷループの次のループではビット線電圧を選択トランジスタＳＴ１をカットオフさせる書き込み禁止電圧Ｖｉｎｈｉｂｉｔに設定して、以後のループは書き込み禁止ループとする。
【００８７】
これに対し、本実施の形態においては、図１４に示すように、通常ループの最後のループにおけるベリファイ動作において、閾値電圧がベリファイローレベルとベリファイハイレベルとの間にあると判定された場合には、次にパスライトループが実行される。即ち、制御部２２によってセンスアンプ回路２４が制御されて、ビット線にはパスライト電圧Ｖｐｗが印加される。パスライト電圧Ｖｐｗはプログラム電圧Ｖｐｇｍの増加分ΔＶｐｇｍよりも大きな電圧値である。従って、最後の通常ループからパスライトループへの移行による実効プログラム電圧は、（Ｖｐｗ−ΔＶｐｇｍ）だけ減少する。なお、図１４では一例として、ΔＶｐｇｍ＝０．２Ｖ、Ｖｐｗ＝０．３８Ｖを示しているが、ΔＶｐｇｍ及びＶｐｗの値は適宜設定可能である。
【００８８】
実効プログラム電圧が低下する結果、パスライトループ移行後の最初のループでは、閾値電圧は変化しない。また、プログラム電圧Ｖｐｇｍはループ毎に増加するので、パスライトループ移行後の最初のループの次のループにおける実効プログラム電圧は、通常ループの最後のループにおける実効プログラム電圧よりも上昇する。しかしながら、パスライト効果期間における閾値電圧は、実効プログラム電圧の上昇に比べて緩やかに上昇する。なお、パスライト効果期間のうち、特に初期の期間における閾値電圧の上昇は不規則であり、このため、図１４ではこの期間における閾値電圧の変化を破線にて示している。
【００８９】
図１４の例では、４ループ期間パスライトループによるプログラム動作が行われることで、閾値電圧は、目標ステートのターゲット領域に到達する。これにより、ビット線電圧を書き込み禁止電圧Ｖｉｎｈｉｂｉｔに設定して、以後のループを書き込み禁止ループとする。このように、パスライト効果を利用することで、閾値電圧の変化を十分に小さくして、目標ステートのターゲット領域に到達する閾値電圧の分布を狭くすることができる。
【００９０】
しかしながら、パスライト効果を利用した書き込みでは、パスライトループのループ数が多くなり、書き込みに必要なループが増大して、書き込み時間が長くなる。
【００９１】
そこで、本実施の形態においては、ビット線ＢＬに印加する電圧としてパスライト効果を利用するために必要な電圧を設定すると共に、パスライト効果の効果量を制御するためにビット線ＢＬに印加する電圧を変化させるようになっている。これにより、書き込みに必要なループ数が増大することを抑制しながら閾値分布の幅を狭くする。
【００９２】
（パスライト効果の効果量の制御）
図１５は本実施の形態におけるパスライト効果の効果量の制御とループ数との関係を説明する図である。図１５は図１２と同様に横軸にループ（プログラム電圧Ｖｐｇｍ）をとり縦軸に閾値電圧をとって、ビット線ＢＬに印加するパスライト電圧に応じた閾値電圧の変化の様子を示している。
【００９３】
図１５の左側は目標ステートの閾値電圧が比較的低い（Ｌｏｗ  Ｓｔａｔｅ）のグループに属するメモリセルＭＴに対するプログラム動作を示し、中央は目標ステートの閾値電圧が中くらい（Ｍｉｄ  Ｓｔａｔｅ）のグループに属するメモリセルＭＴに対するプログラム動作を示し、右側は目標ステートの閾値電圧が比較的高い（Ｈｉｇｈ  Ｓｔａｔｅ）のグループに属するメモリセルＭＴに対するプログラム動作を示している。
【００９４】
図１５の例では、Ｌｏｗ  Ｓｔａｔｅに属するメモリセルＭＴについては、パスライトループにおいて、比較的大きいパスライト電圧ＶｐｗＨをビット線ＢＬに印加する。この結果、閾値電圧の変化は小さくなり閾値分布の幅を極めて狭くすることができる反面、パスライトループの回数が比較的多くなる。また、Ｍｉｄ  Ｓｔａｔｅに属するメモリセルＭＴについては、パスライトループにおいて、中くらいのパスライト電圧ＶｐｗＭをビット線ＢＬに印加する。この結果、閾値電圧の変化は中くらいとなり閾値分布の幅を多少狭くすることができる。また、パスライトループは中くらいの回数となる。
【００９５】
これに対し、Ｈｉｇｈ  Ｓｔａｔｅに属するメモリセルＭＴについては、パスライトループにおいて、比較的小さいパスライト電圧ＶｐｗＬをビット線ＢＬに印加する。なお、パスライト電圧ＶｐｗＬとしては、プログラム電圧Ｖｐｇｍの増加分ΔＶｐｇｍよりも小さい値を設定してもよい。この結果、閾値電圧の変化は多少大きくなるが、通常プログラム動作時よりも閾値分布の幅を狭くすることができる。また、パスライトループの回数は比較的少なくなる。なお、パスライト電圧ＶｐｗＬをΔＶｐｇｍよりも小さい値にした場合には、１回のパスライトループによって、閾値電圧が目標ステートのターゲット領域に達するものと期待することができる。
【００９６】
なお、図１５の例では、メモリセルＭＴがいずれのステートに属するかに応じてパスライト電圧を変化させる例を示したが、パスライト電圧を変化させる判定基準はステートに限定されるものではない。例えば、書き込みシーケンス中の何回目のループであるかに応じてパスライト電圧を変更してパスライト効果の効果量を変化させるようになっていてもよい。また、パスライト電圧を３種類変化させる例を説明したが、判定基準の設定の仕方によってパスライト電圧をどのようにも変化させることが可能である。本実施の形態では、少なくとも１回（１ループ）、ΔＶｐｇｍよりも大きい電圧値のパスライト電圧によるパスライトループを実行することにより、少なくとも１つのメモリセルＭＴについては比較的狭い閾値分布内に閾値電圧を有するというパスライト効果を得ることができる。
【００９７】
このように本実施の形態においては、パスライト効果の効果量を変化させることで、書き込み動作に必要なループ数を変化させることが可能である。このようなパスライト効果の効果量の制御を行うために、制御部２２は、例えばステートやループ等に応じてセンスアンプ回路２４を制御することで、ビット線ＢＬに印加するパスライト電圧を変化させる。
【００９８】
（センスアンプ回路）
次に、各ビット線ＢＬにパスライト電圧を含むビット線電圧を供給すると共に、メモリセルＭＴに記憶されたデータの読み出し及びベリファイ動作を行うセンスアンプ回路２４について説明する。
【００９９】
図１６は図１中のセンスアンプ回路２４の具体的な構成の一例を示す回路図である。
【０１００】
センスアンプ回路２４は、ビット線ＢＬ０〜ＢＬ（ｍ−１）にそれぞれ関連付けられた複数のセンスアンプユニットＳＡＵを含み、図１６には、１つのセンスアンプユニットＳＡＵの詳細な回路構成を示している。
【０１０１】
センスアンプユニットＳＡＵは、図１６に示すように、センスアンプ部ＳＡ、並びにラッチ回路ＳＤＬ、ＡＤＬ、ＢＤＬ、ＣＤＬ、ＤＤＬ及びＸＤＬを含んでいる。センスアンプ部ＳＡ並びにラッチ回路ＳＤＬ、ＡＤＬ、ＢＤＬ、ＣＤＬ及びＸＤＬは、互いにデータを受信可能なようにバスＬＢＵＳによって接続される。ラッチ回路ＳＤＬ、ＡＤＬ、ＢＤＬ、ＣＤＬ、ＤＤＬ及びＸＤＬは、読み出し及び書き込みデータを一時的に保持する。ラッチ回路ＸＤＬは、制御部２２に接続され、センスアンプユニットＳＡＵと制御部２２との間でデータの入出力に使用される。
【０１０２】
ラッチ回路ＳＤＬは、例えばインバータ５０，５１及びｎチャネルＭＯＳトランジスタ５２，５３を含んでいる。インバータ５０の入力ノード及びインバータ５１の出力ノードはノードＬＡＴに接続される。インバータ５１の入力ノード及びインバータ５０の出力ノードはノードＩＮＶに接続される。インバータ５０，５１によって、ノードＩＮＶ，ＬＡＴのデータが保持される。制御部２２からの書き込みデータは、ノードＬＡＴに供給される。ノードＩＮＶにおいて保持されるデータはノードＬＡＴに保持されるデータの反転データである。
【０１０３】
トランジスタ５２のドレイン・ソース路の一端はノードＩＮＶに接続され、他端はバスＬＢＵＳに接続される。また、トランジスタ５３のドレイン・ソース路の一端はノードＩＮＶに接続され、他端はバスＬＢＵＳに接続される。トランジスタ５３のゲートには制御信号ＳＴＬが入力され、トランジスタ５２のゲートには制御信号ＳＴＩが入力される。
【０１０４】
なお、ラッチ回路ＡＤＬ、ＢＤＬ、ＣＤＬ、ＤＤＬ、及びＸＤＬの回路構成はラッチ回路ＳＤＬと同様のため、説明を省略する。なお、センスアンプユニットＳＡＵに供給される各種制御信号は、制御部２２から与えられるものである。
【０１０５】
センスアンプ部ＳＡは、例えば、ｐチャネルＭＯＳトランジスタ４０、ｎチャネルＭＯＳトランジスタ４１〜４８、及びキャパシタ４９を含んでいる。
【０１０６】
センスアンプ部ＳＡは、読み出し動作において、対応するビット線ＢＬに読み出されたデータをセンスして、読み出したデータが“０”であるか“１”であるかを判定する。また、センスアンプ部ＳＡは、プログラム動作において、対応するビット線ＢＬを書き込むデータ“０”，“１”に応じた電圧値に設定する。
【０１０７】
センスアンプ部ＳＡにおいて、プログラム動作には、トランジスタ４０〜４４が関係する。内部電源電圧である電圧ＶＤＤを供給する電源線とノードＣＯＭとの間には、トランジスタ４０のソース・ドレイン路及びトランジスタ４１のドレイン・ソース路が直列接続される。また、ノードＣＯＭと接地電圧である電圧ＶＳＳを供給するノードＳＲＣとの間には、トランジスタ４４のドレイン・ソース路が接続される。また、ノードＣＯＭとビット線ＢＬとの間にはトランジスタ４２のドレイン・ソース路及びトランジスタ４３のドレイン・ソース路が直列接続される。
【０１０８】
トランジスタ４０，４４のゲートはノードＩＮＶに接続される。従って、“０”データに対応してノードＬＡＴがローレベル（以下、“Ｌ”という）の場合には、ＩＮＶはハイレベル（以下、“Ｈ”という）に維持されており、トランジスタ４０がオフでありトランジスタ４４がオンである。逆に、“１”データに対応してノードＬＡＴが“Ｈ”の場合には、ノードＩＮＶは“Ｌ”に維持されており、トランジスタ４０がオンでありトランジスタ４４がオフである。
【０１０９】
プログラム動作時には、トランジスタ４５，４６のゲートにそれぞれ供給される制御信号ＨＬＬ，ＸＸＬは“Ｌ”であり、トランジスタ４５，４６はオフである。トランジスタ４１に供給される制御信号は“Ｈ”であり、トランジスタ４１はオンである。また、通常プログラム動作時には、制御信号ＢＬＣ，ＢＬＳによって、トランジスタ４２，４３は導通する。
【０１１０】
従って、“０”データがノードＬＡＴに保持されると、トランジスタ４０はオフでトランジスタ４４がオンとなって、ノードＳＲＣからの電圧ＶＳＳ（例えば０Ｖ）等のビット線電圧Ｖｂｌ＿Ｌがビット線ＢＬに供給される。また、“１”データがノードＬＡＴに保持されると、トランジスタ４０はオンでトランジスタ４４がオフとなって、トランジスタ４２，４３に与える制御信号ＢＬＣ，ＢＬＳに応じて、例えば、２．５Ｖ等のビット線電圧Ｖｂｌ＿Ｈがビット線ＢＬに供給される。
【０１１１】
また、本実施の形態においては、パスライトプログラム動作時には、パスライトセルに対応するビット線ＢＬに接続されたセンスアンプユニットＳＡＵについては、ラッチ回路ＳＤＬのノードＩＮＶは“Ｈ”に設定される。これにより、トランジスタ４０はオンとなる。また、制御信号ＢＬＸによってトランジスタ４１もオンである。この状態で、制御信号ＢＬＣ及び制御信号ＢＬＳを適宜設定することで、トランジスタ４２及び４３によって、ビット線ＢＬにパスライト電圧を供給する。
【０１１２】
本実施の形態においては、制御部２２は、制御信号ＢＬＣ及びＢＬＳの設定を制御することで、パスライト電圧を変更するようになっている。
【０１１３】
ベリファイ動作には、センスアンプ部ＳＡの全てのトランジスタ４０〜４８及びキャパシタ４９が関係する。トランジスタ４０のドレインとノードＣＯＭとの間にはトランジスタ４５のドレイン・ソース路及び４６のドレイン・ソース路が直列接続される。また、バスＬＢＵＳと基準電位点との間には、トランジスタ４８のドレイン・ソース路及び４７のドレイン・ソース路が直列接続される。トランジスタ４５のソースとトランジスタ４６のドレインとはセンスノードＳＥＮに接続され、センスノードＳＥＮはトランジスタ４７のゲートに接続される。トランジスタ４５〜４８のゲートには、それぞれ制御信号ＨＬＬ、ＸＸＬ、センスノードＳＥＮの電圧又は制御信号ＳＴＢが印加される。センスノードＳＥＮはキャパシタ４９を介してクロックＣＬＫが印加される。
【０１１４】
次に、ベリファイ動作について、図１７を参照して説明する。図１７は図１６のセンスアンプ回路２４の動作波形を示す図である。
【０１１５】
まず、ワード線ドライバ２５は、選択ワード線に、ベリファイ電圧として目標ステートに対応したＶｖを印加し、非選択ワード線に、ベリファイ電圧Ｖｖよりも高い非選択読み出し電圧Ｖｐａｓｓ（例えば、５〜７Ｖ）を印加する。
【０１１６】
ベリファイ動作時には、制御部２２は、先ずノードＩＮＶを“Ｌ”にして、トランジスタ４０をオンにする。また、制御信号ＢＬＸによってトランジスタ４１をオンにすると共に、制御信号ＢＬＣ及び制御信号ＢＬＳを所定の電圧に設定することで、ビット線ＢＬを一定の電圧（例えば、０．５Ｖ）に固定する。また、制御信号ＨＬＬを所定電圧に設定することで、センスノードＳＥＮをビット線ＢＬの電圧よりも高い所定のプリチャージ電圧Ｖｐｒｅに充電する。この状態で、制御信号ＸＸＬを“Ｈ”にすると（ｔ３）、センスノードＳＥＮからトランジスタ４６、４２及び４３を介してビット線ＢＬに電流が流れ、センスノードＳＥＮの電圧は次第に低下する。
【０１１７】
センスノードＳＥＮの電圧は、ベリファイ対象のメモリセル（選択メモリセル）の閾値電圧の状態に応じて変化する。即ち、選択メモリセルの閾値電圧がベリファイ電圧Ｖｖよりも低いときは、選択メモリセルはオン状態であり、選択メモリセルに大きなセル電流が流れ、センスノードＳＥＮの電圧が低下する速度は速くなる。また、選択メモリセルの閾値電圧がベリファイ電圧Ｖｖよりも高いときは、選択メモリセルはオフ状態であり、選択メモリセルに流れるセル電流は、小さいか、又は、選択メモリセルにセル電流が流れず、センスノードＳＥＮの電圧が低下する速度は遅くなる。
【０１１８】
そこで、センスノードＳＥＮの電荷を放電し始める放電開始時ｔ３から第１期間が経過した第１時点ｔ４、即ち、制御信号ＸＸＬを"Ｈ"にしてから第１期間が経過した時点で、制御信号ＸＸＬを"Ｌ"にするとともに、制御信号ＳＴＢを"Ｈ"にしてトランジスタ４８をオンにすると、センスノードＳＥＮの電圧が"Ｌ"であるか"Ｈ"であるかに応じてトランジスタ４７がオン，オフする。
【０１１９】
例えば、選択メモリセルが書き込み不足セルであるときは、その閾値電圧がベリファイ電圧Ｖｖよりも低く、かつ、両者の差が大きいため、選択メモリセルは完全オン状態であり、選択メモリセルに大きなセル電流が流れる。このため、センスノードＳＥＮの電圧は、急速に低下し、電圧降下量は、時刻ｔ４に達する前にｄＶに達し、時刻ｔ４において、センスノードＳＥＮが“Ｌ”になり、トランジスタ４７はオフであってバスＬＢＵＳから基準電圧点には電流は流れない。
【０１２０】
また、選択メモリセルがパスライトセルであるときは、その閾値電圧がベリファイ電圧Ｖｖよりも低く、かつ、両者の差が小さいため、選択メモリセルに小さなセル電流が流れる。このため、センスノードＳＥＮの電圧は、緩やかに低下し、電圧降下量は時刻ｔ４に達する前にｄＶに達せず、時刻ｔ４において、センスノードＳＥＮは、“Ｈ”に対応する電圧のままとなる。従って、トランジスタ４７はオンであってバスＬＢＵＳから基準電圧点に電流が流れる。
【０１２１】
また、選択メモリセルが書き込み完了セルであるときは、その閾値電圧がベリファイ電圧Ｖｖよりも高いため、選択メモリセルはオフ状態であり、選択メモリセルに流れるセル電流は、非常に小さいか、又は、選択メモリセルにセル電流が流れない。このため、センスノードＳＥＮの電圧は、非常に緩やかに低下し、電圧降下量は時刻ｔ４に達する前にｄＶに達せず、時刻ｔ４において、センスノードＳＥＮは、“Ｈ”のままとなる。従って、トランジスタ４７はオンであってバスＬＢＵＳから基準電圧点に電流が流れる。
【０１２２】
このようにして、まず、書き込み不足セルの選別を行うことができる。図１７のＤＥＴ １は、第１時点ｔ４においてバスＬＢＵＳに電流が流れるか流れないかに応じて得られるセンスノードＳＥＮのレベルの検出結果、即ち、閾値電圧がベリファイローレベルを超えているか否かの検出結果を示すものである。 
この後、図１７のｔ５において制御信号ＳＴＢをローレベルにして、トランジスタ４８をオフにする。続いて、ｔ６において再び制御信号ＸＸＬを"Ｈ"にする。次に、先の工程でセンスノードＳＥＮの電荷を放電した第１期間（ｔ３からｔ４）に加えて第２期間（ｔ６からｔ７）が経過した第２時点ｔ７で、制御信号ＸＸＬを"Ｌ"にするとともに、制御信号ＳＴＢを"Ｈ"にしてトランジスタ４８をオンにする。これにより、第２時点ｔ７においてセンスノードＳＥＮの電圧が"Ｌ"であるか"Ｈ"であるかに応じてトランジスタ４７がオン，オフする。
【０１２３】
例えば、選択メモリセルが書き込み不足セルであるときは、センスノードＳＥＮの電圧は、急速に低下し、既に、電圧降下量は、時刻ｔ４に達する前にｄＶに達しているため、時刻ｔ７においても、センスノードＳＥＮは“Ｌ”である。従って、従って、トランジスタ４７はオフであってバスＬＢＵＳから基準電圧点に電流が流れない。
【０１２４】
また、選択メモリセルがパスライトセルであるときは、その閾値電圧がベリファイ電圧Ｖｖよりも低く、かつ、両者の差が小さいため、選択メモリセルに小さなセル電流が流れる。このため、センスノードＳＥＮの電圧は、緩やかに低下し、電圧降下量は、時刻ｔ７に達する前にｄＶに達し、時刻ｔ７においてセンスノードＳＥＮは、“Ｌ”になる。従って、トランジスタ４７はオフであってバスＬＢＵＳから基準電圧点に電流が流れない。
【０１２５】
また、選択メモリセルが書き込み完了セルであるときは、その閾値電圧がベリファイ電圧Ｖｖよりも高いため、選択メモリセルに流れるセル電流は、非常に小さいか、又は、選択メモリセルにセル電流が流れない。このため、センスノードＳＥＮの電圧は、非常に緩やかに低下し、電圧降下量は、時刻ｔ７に達する前にｄＶに達せず、時刻ｔ７においてもセンスノードＳＥＮは、“Ｈ”のままとなる。従って、トランジスタ４７はオンであってバスＬＢＵＳから基準電圧点に電流が流れる。
【０１２６】
このようにして、パスライトセル及び書き込み完了セルの選別を行うことができる。図１７のＤＥＴ２は、第２時点ｔ７においてバスＬＢＵＳに電流が流れるか流れないかに応じて得られるセンスノードＳＥＮのレベルの検出結果、即ち、閾値電圧がベリファイローレベルとベリファイハイレベルの間の値であるか、ベリファイハイレベルを超えているかの検出結果を示している。
【０１２７】
図１７に示すように、例えば、ＤＥＴ１及びＤＥＴ２が共に"Ｌ"のときは、選択メモリセルは書き込み不足セルと認識され、ＤＥＴ１が"Ｈ"、ＤＥＴ２が"Ｌ"のときは、選択メモリセルはパスライトセルと認識され、ＤＥＴ１及びＤＥＴ２が共に"Ｈ"のときは、選択メモリセルは、書き込み完了セルと認識される。
【０１２８】
なお、上記のセンスアンプ部ＳＡの動作はあくまでも一例である。例えば、選択メモリセルの閾値電圧がベリファイハイレベルおよびベリファイローレベルを超えているかを検出するために、例えば、ワード線ドライバ２５によって選択ワード線にベリファイ電圧として目標ステートに対応した電圧Ｖｖおよびそれよりも少し低い電圧Ｖｖｌｏｗを連続して印加し、各ベリファイ電圧印加期間において選択メモリセルに流れる電流をセンスアンプ部ＳＡで検出してもよい。
【０１２９】
制御部２２は、書き込み不足セル、パスライトセル又は書き込み完了セルのいずれであるかの判定を行い、判定結果に基づいてセンスアンプ回路２４を制御してビット線電圧を設定する。この場合において、制御部２２は、パスライトプログラム動作時には、書き込み対象のメモリセルＭＴのステート、ループ等に応じて、パスライト電圧を変化させるようになっている。
【０１３０】
次に、このように構成された実施の形態の動作について図１８から図２１を参照して説明する。図１８及び図１９は制御部２２の制御を説明するためのフローチャートである。図２０はプログラム電圧Ｖｐｇｍ、ビット線電圧、実効プログラム電圧及び閾値電圧の関係を示す図であり、図２１は本実施の形態における書き込みシーケンスを示す図である。なお、図２０は概略の関係を説明するためのものであり、尺度は厳密ではない。
【０１３１】
図２１は図８の標準書き込みシーケンスに対応した書き込みシーケンスを示している。即ち、図２１においても、パスライトループを採用しなければ、プログラム動作とベリファイ動作との組み合わせの４３回のループによって書き込みが行われる。図２１中の丸印はパスライトプログラム動作を採用しない場合、即ち図８と同様のベリファイ動作可能なループを示し、斜線部はパスライトプログラム動作を採用した結果、増加する書き込み動作のループを示している。
【０１３２】
即ち、本実施の形態においては、各ステートＳ１〜Ｓ１５の斜線部の最後のループまで書き込み動作が行われる可能性がある。なお、この最後のループにおいては、プログラム動作及びベリファイ動作は行われるが、ベリファイ動作の判定結果に拘わらず次のループでのプログラム動作は行われない。
【０１３３】
なお、図２１の例においても図８の例と同様に、シーケンスの最後から２番目の丸印にて示すループにおいて各メモリセルＭＴの閾値電圧がベリファイローレベルを超えるか、又はシーケンスの最後の丸印にて示すループまで通常プログラム動作を続けることによって各メモリセルＭＴの閾値電圧が目標ステートのターゲット領域に入ることが期待されるように、各種設定が行われている。
【０１３４】
制御部２２は、ワード線ドライバ２５を制御して、ループ毎にプログラム電圧Ｖｐｇｍを増大させる。プログラム電圧Ｖｐｇｍの増加分はΔＶｐｇｍ（例えば、０．２Ｖ）である。各ステートの丸印及び斜線部のループにおいて、プログラム動作の後、各メモリセルＭＴの目標ステートに応じたベリファイ電圧を用いて、ベリファイローレベル及びベリファイハイレベルを判定基準としたベリファイ動作が行われる。なお、図２１の丸印に示すように、各ループでは、１回のプログラム動作が行われた後、丸印を付した異なる複数のステートに対応したベリファイ電圧による複数回のベリファイ動作が行われる。
【０１３５】
ベリファイ動作により、書き込み不足セルと判定されたメモリセルＭＴについては、次のループにおいて通常プログラム動作が行われ、書き込み完了セルと判定されたメモリセルＭＴについては、次のループは書き込み禁止となる。本実施の形態においては、ベリファイ動作により、パスライトセルと判定されたメモリセルＭＴについては、次のループにおいてパスライトプログラム動作が行われる。
【０１３６】
図８の標準書き込みシーケンスでは、各ステートにおいて丸印が付された最後のベリファイ動作は、閾値電圧が目標ステートに到達したか否かの確認のみを行うものであり、その次のループでは書き込み動作は行われない。しかし、パスライトプログラム動作においては、１回のパスライトループだけでは閾値電圧が目標ステートに到達すると期待することはできない。このため、図２１の斜線部に示すように、標準書き込みシーケンスに対して余分に書き込み動作のループが実施される。
【０１３７】
書き込み動作は図１８のフローに従って実施される。なお、図１８は書き込み対象の所定のメモリセルＭＴに対する制御を示したものである。制御部２２は、先ず当該メモリセルＭＴに設定された書き込み動作の最後のループが終了したか否かを判定する（Ａ１）。書き込み動作の最後のループが終了していない場合には、制御部２２は次のループに移行し、プログラム電圧Ｖｐｇｍを増加させてプログラム動作を行う（Ａ２）。このプログラム動作によって、メモリセルＭＴの閾値電圧は実効プログラム電圧の増加分だけ上昇する。
【０１３８】
次に、制御部２２は、プログラム動作を行ったループ内において、対象のメモリセルＭＴの目標ステートに応じたベリファイ電圧を設定し、このベリファイ電圧に対応するベリファイローレベル及びベリファイハイレベルを判定基準としてベリファイ動作を実行する（Ａ３）。制御部２２は、センスアンプ回路２４の出力からベリファイの判定を行う（Ａ４，Ａ５）。ベリファイ動作の結果、対象のメモリセルＭＴの閾値電圧がベリファイローレベルに到達している場合をベリファイローパスとし、閾値電圧がベリファイハイレベルに到達している場合をベリファイハイパスとする。
【０１３９】
制御部２２は、ベリファイローパス及びベリファイハイパスを判定する（Ａ４，Ａ５）。制御部２２は、ベリファイローパスでない場合、即ち、対象のメモリセルＭＴの閾値電圧がベリファイローレベルに到達していない場合にはメモリセルＭＴは書き込み不足セルであるものと判定して、処理をＡ１に戻す。これにより、書き込み動作の最後のループが終了していなければ、次のループにおいて書き込み動作が行われる。
【０１４０】
制御部２２は、ベリファイ動作により、ベリファイハイパスである場合、即ち、対象のメモリセルＭＴの閾値電圧がベリファイハイレベルに到達している場合にはメモリセルＭＴは書き込み完了セルであるものと判定して、処理をＡ６に移行して以後のループを書き込み禁止に設定する。
【０１４１】
制御部２２は、ベリファイ動作により、ベリファイローパスであり、ベリファイハイパスでないと判定した場合、即ち、対象のメモリセルＭＴの閾値電圧がベリファイローレベルとベリファイハイレベルの間にある場合にはメモリセルＭＴはパスライトセルであるものと判定して、処理をＡ７に移行する。制御部２２は現在のループ等を判定し、判定結果に応じてパスライト電圧の設定を行う。
【０１４２】
図１９は図１８のＡ７の具体的なフローを示している。制御部２２は、先ず、ベリファイ動作がステートＳ１５のメモリセルＭＴに対するものか否かを判定する（Ａ１１）。ベリファイ動作がステートＳ１５のメモリセルＭＴに対するものでない場合には、制御部２２は、比較的高いパスライト電圧を設定する（Ａ１３）。例えば、図２１の例では、５ループのパスライトプログラム動作によって目標ステートに到達できると期待されるパスライト電圧を設定する。制御部２２は、センスアンプ回路２４を制御して、設定したパスライト電圧をビット線ＢＬに印加させる（図１８のＡ８）。
【０１４３】
図２０の上段はこの場合の例を示している。即ち、図２０の上段は、図２１のステートＳ１５以外のステートのメモリセルＭＴであって、シーケンスの最後から２番目のループ以前のループにおけるベリファイ動作によってパスライトセルと判定されたメモリセルＭＴの書き込みを示すものである。
【０１４４】
制御部２２は、図２０の上段の通常ループの最後のループにおけるベリファイ動作によってパスライトセルと判定されると、次のループにおいて、パスライト電圧として比較的高い電圧ＶｐｗＨ（例えば０．５Ｖ）を設定する。この結果、図１４にて示したように、閾値電圧の上昇は抑制され、結果的に５ループのパスライトプログラム動作によって、閾値電圧は目標ステートのターゲット領域に到達する。そうすると、制御部２２は、ビット線電圧を書き込み禁止電圧Ｖｉｎｈｉｂｉｔにして、書き込みを禁止する（Ａ６）。この制御により、ステートＳ１〜Ｓ１３については、４３回のループ内に書き込みが完了し、ステートＳ１４については、４５回のループ内に書き込みが完了する。またこの場合には、閾値分布の幅を極めて狭くすることができる。
【０１４５】
なお、閾値電圧が目標ステートのターゲット領域に到達するまでのパスライトループのループ数は、パスライト電圧に対応した期待値であり、実際には例えば期待されるループ数よりも少ないループ数で閾値電圧が目標ステートのターゲット領域に到達することもあり得る。
【０１４６】
一方、ベリファイ動作がステートＳ１５のメモリセルＭＴに対するものである場合には、制御部２２は、ベリファイ動作が４１回目のループ以降のループで行われたものであるか否かを判定する（Ａ１２）。制御部２２は、ベリファイ動作が４１回目のループ以降のループでない場合には、比較的高いパスライト電圧を設定する（Ａ１３）。即ち、この場合には、図２０の上段に示すパスライトプログラム動作が行われる。この結果、閾値電圧は、５ループ以内、即ち、最も遅い場合でも４５回目のループまでに目標ステートのターゲット領域に到達することが期待される。
【０１４７】
これに対し、ベリファイ動作が４１回目のループ以降のループで行われたものである場合には、制御部２２は、比較的低いパスライト電圧を設定する（Ａ１４）。例えば、図２１の例では、３ループのパスライトプログラム動作によって目標ステートに到達できると期待されるパスライト電圧を設定する。
【０１４８】
図２０の下段はこの場合の例を示している。即ち、図２０の下段は、図２１の４１又は４２回目のループにおけるベリファイ動作によって、パスライトセルと判定されたメモリセルＭＴの書き込みを示すものである。制御部２２は、図２０の下段の通常ループの最後のループにおけるベリファイ動作によってパスライトセルと判定されると、次のループにおいて、パスライト電圧として比較的低い電圧ＶｐｗＬ（例えば０．２Ｖ）を設定する。この結果、図１４にて示したように、閾値電圧の上昇は抑制され、結果的に３ループのパスライトプログラム動作によって、閾値電圧が目標ステートのターゲット領域に到達する。そうすると、制御部２２は、ビット線電圧を書き込み禁止電圧Ｖｉｎｈｉｂｉｔにして、書き込みを禁止する（Ａ６）。この制御により、ステートＳ１５のメモリセルＭＴについては、最も遅い場合でも４５回目のループまでに書き込みが完了する。またこの場合でも、閾値分布の幅を比較的狭くすることができる。なお、図２１に示すパスライトループの期間は、４２回目のループにおけるベリファイによってパスライトセルと判定されたステートＳ１５のメモリセルＭＴのパスライトプログラム期間を示している。
【０１４９】
図８に示す４３回のループによる標準書き込みシーケンスに、単純にパスライト効果を利用して、閾値電圧が５回のパスライトプログラム動作により目標ループのターゲット領域に到達する書き込み動作を行った場合には、シーケンス全体で４７回のループが必要となる。これに対し、本実施の形態では、ループに応じてパスライト効果の効果量を制御しており、シーケンス全体で４５回のループに抑制することができる。
【０１５０】
このように本実施の形態においては、パスライト効果を利用した書き込み動作を行うことで、閾値分布の幅を狭くすることができる。また、パスライト電圧をステート及びループに応じて変更することでパスライト効果の効果量を制御しており、シーケンス全体で必要なループ数を抑制し、書き込み時間が長くなることを抑制することができる。
【０１５１】
なお、上記実施の形態においては、パラライト電圧を２段階に切換える例を示したが、３段階以上に切換えるようにしてもよい。
【０１５２】
（第２の実施の形態）
図２２から図２４は本発明の第２の実施の形態を示す図である。本実施の形態のハードウェア構成は第１の実施の形態と同様である。本実施の形態は制御部２２による書き込み動作の制御が第１の実施の形態と異なる。
【０１５３】
図２２は制御部２２の制御を説明するためのフローチャートである。図２３はプログラム電圧Ｖｐｇｍ、ビット線電圧、実効プログラム電圧及び閾値電圧の関係を示す図であり、図２４は本実施の形態における書き込みシーケンスを示す図である。図２３は図２０と同様の表記方法によって記載したものである。また、図２４は図２１と同様の表記方法によって記載されたものであり、図中の丸印や斜線部は図２１と同一の意味を有する。
【０１５４】
即ち、本実施の形態においても、パスライトプログラム動作を採用しない場合には、図８と同様のシーケンスにて書き込み動作が行われる。図２４に示すように、本実施の形態は書き込み動作に必要なループ数を図８と同様の４３回に制限するものである。
【０１５５】
本実施の形態においても、書き込み動作時には図１８の動作フローが採用される。図２２は図１８のＡ７の具体的なフローを示している。
【０１５６】
制御部２２は、先ず、ベリファイ動作がステートＳ１４，Ｓ１５のメモリセルＭＴに対するものか否かを判定する（Ａ２１）。ベリファイ動作がステートＳ１４，Ｓ１５のメモリセルＭＴに対するものである場合には、制御部２２は、ベリファイ動作が３９回目のループ以降のループで行われたものであるか否かを判定する（Ａ２２）。ベリファイ動作がステートＳ１４，Ｓ１５のメモリセルＭＴに対するものでない場合、又はベリファイ動作がステートＳ１４，Ｓ１５のメモリセルＭＴに対するものであっても、３９回目のループ以降のループで行われたものでない場合には、制御部２２は処理をＡ２３に移行して、比較的高いパスライト電圧を設定する（Ａ２３）。例えば、図２４の例では、５ループのパスライトプログラム動作によって目標ステートに到達できると期待されるパスライト電圧を設定する。
【０１５７】
図２３の上段はこの場合の例を示している。即ち、図２３の上段は、ステートＳ１〜Ｓ１３までのメモリセルＭＴ、又はステートＳ１４，Ｓ１５のメモリセルＭＴであって、図２４のシーケンスの３８回目のループ以前のループにおけるベリファイ動作によってパスライトセルと判定されたメモリセルＭＴの書き込みを示すものである。
【０１５８】
制御部２２は、図２３の上段の通常ループの最後のループにおけるベリファイ動作によってパスライトセルと判定されると、次のループにおいて、パスライト電圧として比較的高い電圧ＶｐｗＨ（例えば０．５Ｖ）を設定する。この結果、図１４にて示したように、閾値電圧の上昇は抑制され、結果的に５ループのパスライトプログラム動作によって、閾値電圧が目標ステートのターゲット領域に到達する。そうすると、制御部２２は、ビット線電圧を書き込み禁止電圧Ｖｉｎｈｉｂｉｔにして、書き込みを禁止する（Ａ６）。この制御により、ステートＳ１〜Ｓ１３のメモリセルＭＴ及びステートＳ１４，Ｓ１５の３８回目のループ以前のループのベリファイ動作によってパスライトセルと判定されたメモリセルＭＴについては、４３回のループ内に書き込みが完了する。またこの場合には、閾値分布の幅を極めて狭くすることができる。
【０１５９】
ベリファイ動作がステートＳ１４，Ｓ１５のメモリセルＭＴに対するものであって、且つ、３９回目のループ以降のループで行われたものである場合には、制御部２２は、ベリファイ動作がステートＳ１４のメモリセルＭＴに対するものであるか否かを判定する（Ａ２４）。制御部２２は、ベリファイ動作がステートＳ１４のメモリセルＭＴに対するものである場合には、中くらいのパスライト電圧を設定する（Ａ２５）。例えば、図２４の例では、３ループのパスライトプログラム動作によって目標ステートに到達できると期待されるパスライト電圧を設定する。
【０１６０】
図２３の中段はこの場合の例を示している。即ち、図２３の中段は、ステートＳ１４のメモリセルＭＴであって、図２４のシーケンスの３９回目以降のループにおけるベリファイ動作によってパスライトセルと判定されたメモリセルＭＴの書き込みを示すものである。
【０１６１】
制御部２２は、図２３の中段の通常ループの最後のループにおけるベリファイ動作によってパスライトセルと判定されると、次のループにおいて、パスライト電圧として中くらいの電圧ＶｐｗＭ（例えば０．２Ｖ）を設定する。この結果、図１４にて示したように、閾値電圧の上昇は抑制され、結果的に３ループのパスライトプログラム動作によって、閾値電圧が目標ステートのターゲット領域に到達する。そうすると、制御部２２は、ビット線電圧を書き込み禁止電圧Ｖｉｎｈｉｂｉｔにして、書き込みを禁止する（Ａ６）。この制御により、ステートＳ１４のメモリセルＭＴであって、３９回目以降のループのベリファイ動作によってパスライトセルと判定されたメモリセルＭＴについては、４３回のループ内に書き込みが完了する。またこの場合には、閾値分布の幅を比較的狭くすることができる。
【０１６２】
また、ベリファイ動作がステートＳ１５のメモリセルＭＴであって、３９回目のループ以降のループで行われたものである場合には、制御部２２は、比較的低いパスライト電圧を設定する（Ａ２６）。例えば、図２４の例では、１ループのパスライトプログラム動作によって目標ステートに到達できると期待されるパスライト電圧を設定する。
【０１６３】
図２３の下段はこの場合の例を示している。即ち、図２３の下段は、ステートＳ１５のメモリセルＭＴであって、図２４のシーケンスの３９回目以降のループにおけるベリファイ動作によってパスライトセルと判定されたメモリセルＭＴの書き込みを示すものである。
【０１６４】
制御部２２は、図２３の下段の通常ループの最後のループにおけるベリファイ動作によってパスライトセルと判定されると、次のループにおいて、パスライト電圧として比較的低い電圧ＶｐｗＬを設定する。例えば、電圧ＶｐｗＬは、ΔＶｐｇｍよりも小さい値（例えば０．１Ｖ）に設定する。この結果、閾値電圧の上昇はＱＰＷ動作時と同様になるが、１ループのパスライトプログラム動作によって、閾値電圧が目標ステートのターゲット領域に到達する。この制御により、ステートＳ１５のメモリセルＭＴであって、３９回目以降のループのベリファイ動作によってパスライトセルと判定されたメモリセルＭＴについても、４３回のループ内に書き込みが完了する。なお、図２４に示すパスライトループの期間は、４２回目のループにおけるベリファイによってパスライトセルと判定されたステートＳ１５のメモリセルＭＴのパスライトプログラム期間を示している。
【０１６５】
このように本実施の形態においても、第１の実施の形態と同様の効果を得ることができる。更に、本実施の形態においては、パスライト効果を利用した書き込みを行わない場合と同様のループ数で書き込みを完了させることができ、書き込み時間が長くなることを防止しながら閾値分布の幅を狭くすることができる。
【０１６６】
（第３の実施の形態）
図２５から図２７は本発明の第３の実施の形態を示す図である。本実施の形態のハードウェア構成は第１の実施の形態と同様である。本実施の形態は制御部２２による書き込み動作の制御が第２の実施の形態と異なる。
【０１６７】
図２５は制御部２２の制御を説明するためのフローチャートである。図２６はプログラム電圧Ｖｐｇｍ、ビット線電圧、実効プログラム電圧及び閾値電圧の関係を示す図であり、図２７は本実施の形態における書き込みシーケンスを示す図である。図２６は図２０と同様の表記方法によって記載したものである。また、図２７は図２１と同様の表記方法によって記載されたものであり、図中の丸印や斜線（破線斜線を含む）部は図２１と同一の意味を有する。
【０１６８】
即ち、本実施の形態においても、パスライトプログラム動作を採用しない場合には、図８と同様のシーケンスにて書き込み動作が行われる。図２７に示すように、本実施の形態はステートに応じてパスライト効果の効果量を変化させるものである。
【０１６９】
本実施の形態においても、書き込み動作時には図１８の動作フローが採用される。図２５は図１８のＡ７の具体的なフローを示している。
【０１７０】
制御部２２は、ベリファイ動作がステートＳ１〜Ｓ４のメモリセルＭＴに対するものか否か、ステートＳ５〜Ｓ９のメモリセルＭＴに対するものか否か、ステートＳ１０〜Ｓ１４のメモリセルＭＴに対するものか否かを判定する（Ａ３１〜Ａ３３）。
【０１７１】
制御部２２は、ベリファイ動作がステートＳ１〜Ｓ４のメモリセルＭＴに対するものである場合には、比較的高い第１パスライト電圧を設定する（Ａ３４）。また、制御部２２は、ベリファイ動作がステートＳ５〜Ｓ９のメモリセルＭＴに対するものである場合には、比較的高い第２パスライト電圧を設定する（Ａ３５）。また、制御部２２は、ベリファイ動作がステートＳ１０〜Ｓ１４のメモリセルＭＴに対するものである場合には、中くらいのパスライト電圧を設定する（Ａ３６）。また、制御部２２は、ベリファイ動作がステートＳ１５のメモリセルＭＴに対するものである場合には、比較的低いパスライト電圧を設定する（Ａ３７）。
【０１７２】
例えば、制御部２２は、図２７の例では、第１パスライト電圧として、５ループのパスライトプログラム動作によって目標ステートに到達できると期待されるパスライト電圧ＶｐｗＨ１を設定する。また、例えば、制御部２２は、図２７の例では、第２パスライト電圧として、４ループのパスライトプログラム動作によって目標ステートに到達できると期待されるパスライト電圧ＶｐｗＨ２を設定する。また、例えば、制御部２２は、図２７の例では、中くらいのパスライト電圧として、３ループのパスライトプログラム動作によって目標ステートに到達できると期待されるパスライト電圧ＶｐｗＭを設定する。また、例えば、制御部２２は、図２７の例では、比較的低いパスライト電圧として、１ループのパスライトプログラム動作によって目標ステートに到達できると期待されるパスライト電圧ＶｐｗＬを設定する。なお、電圧ＶｐｗＬは、ΔＶｐｇｍよりも小さい値に設定する。
【０１７３】
図２６の上段は、実線によって第１パスライト電圧ＶｐｗＨ１によるパスライトプログラム動作を示し、破線によって第２パスライト電圧ＶｐｗＨ２によるパスライトプログラム動作を示している。制御部２２は、ステートＳ１〜Ｓ４のメモリセルＭＴについては、図２６の上段の通常ループの最後のループにおけるベリファイ動作によってパスライトセルと判定されると、次のループにおいて、パスライト電圧として比較的高い電圧ＶｐｗＨ１（例えば０．５Ｖ）を設定する。この結果、図１４にて示したように、閾値電圧の上昇は抑制され、結果的に５ループのパスライトプログラム動作によって、閾値電圧が目標ステートのターゲット領域に到達する。この場合には、閾値分布の幅を極めて狭くすることができる。
【０１７４】
また、制御部２２は、ステートＳ５〜Ｓ９のメモリセルＭＴについては、図２６の上段の通常ループの最後のループにおけるベリファイ動作によってパスライトセルと判定されると、次のループにおいて、パスライト電圧として比較的高い電圧ＶｐｗＨ２（例えば０．３Ｖ）を設定する。この結果、図１４にて示したように、閾値電圧の上昇は抑制され、結果的に４ループのパスライトプログラム動作によって、閾値電圧が目標ステートのターゲット領域に到達する。この場合にも、閾値分布の幅を極めて狭くすることができる。
【０１７５】
また、図２６の中段は、パスライト電圧ＶｐｗＭによるパスライトプログラム動作を示している。制御部２２は、ステートＳ１０〜Ｓ１４のメモリセルＭＴについては、図２６の中段の通常ループの最後のループにおけるベリファイ動作によってパスライトセルと判定されると、次のループにおいて、パスライト電圧として中くらいの電圧ＶｐｗＭ（例えば０．２Ｖ）を設定する。この結果、図１４にて示したように、閾値電圧の上昇は抑制され、結果的に３ループのパスライトプログラム動作によって、閾値電圧が目標ステートのターゲット領域に到達する。この場合には、閾値分布の幅を十分に狭くすることができる。
【０１７６】
また、図２６の下段は、パスライト電圧ＶｐｗＬによるパスライトプログラム動作を示している。制御部２２は、ステートＳ１５のメモリセルＭＴについては、図２６の下段の通常ループの最後のループにおけるベリファイ動作によってパスライトセルと判定されると、次のループにおいて、パスライト電圧として比較的低い電圧ＶｐｗＬ（例えば０．１Ｖ）を設定する。この結果、１ループのパスライトプログラム動作によって、閾値電圧が目標ステートのターゲット領域に到達する。この場合には、閾値分布の幅の抑制効果は小さいが、書き込み動作を短いループで行うことができ、結果的に、図８と同様の４３回のループで書き込みを完了させることができる。
【０１７７】
このように本実施の形態においても、第１及び第２の実施の形態と同様の効果を得ることができる。更に、本実施の形態においては、ループ毎にパスライト効果の効果量を変更することで、閾値電圧が目標ステートのターゲット領域に到達するのに要するループ数を少なくすることができる。これにより、ベリファイ動作を減らす効果がある。
【０１７８】
（第４の実施の形態）
図２８及び図２９は本発明の第４の実施の形態を示す図である。本実施の形態のハードウェア構成は第１の実施の形態と同様である。本実施の形態は制御部２２による書き込み動作の制御が第３の実施の形態と異なる。
【０１７９】
図２８は制御部２２の制御を説明するためのフローチャートである。図２９は本実施の形態における書き込みシーケンスを示す図である。図２９は図２１と同様の表記方法によって記載されたものであり、図中の丸印や斜線（破線斜線を含む）部は図２１と同一の意味を有する。
【０１８０】
即ち、本実施の形態においても、パスライトプログラム動作を採用しない場合には、図８と同様のシーケンスにて書き込み動作が行われる。図２９に示すように、本実施の形態はステートに応じてパスライト効果の効果量を変化させるものである。
【０１８１】
本実施の形態においても、書き込み動作時には図１８の動作フローが採用される。図２８は図１８のＡ７の具体的なフローを示している。図２８において図２５と同一の手順には同一符号を付して説明を省略する。
【０１８２】
制御部２２は、ベリファイ動作がステートＳ１〜Ｓ４のメモリセルＭＴに対するものである場合には、比較的高い第２パスライト電圧を設定する（Ａ４１）。また、制御部２２は、ベリファイ動作がステートＳ５〜Ｓ９のメモリセルＭＴに対するものである場合には、比較的高い第１パスライト電圧を設定する（Ａ４２）。
【０１８３】
例えば、制御部２２は、図２９の例では、第１パスライト電圧として、５ループのパスライトプログラム動作によって目標ステートに到達できると期待されるパスライト電圧ＶｐｗＨ１を設定する。また、例えば、制御部２２は、図２９の例では、第２パスライト電圧として、４ループのパスライトプログラム動作によって目標ステートに到達できると期待されるパスライト電圧ＶｐｗＨ２を設定する。
【０１８４】
即ち、本実施の形態によれば、ステートＳ１〜Ｓ４のメモリセルＭＴについては、４ループのパスライトプログラム動作によって、閾値電圧が目標ステートのターゲット領域に到達し、ステートＳ５〜Ｓ９のメモリセルＭＴについては、５ループのパスライトプログラム動作によって、閾値電圧が目標ステートのターゲット領域に到達する点が、第３の実施の形態と異なる。他の作用は第３の実施の形態と同様である。
【０１８５】
このように本実施の形態においても、第１から第３の実施の形態と同様の効果を得ることができる。
【０１８６】
（第５の実施の形態）
図３０は本発明の第５の実施の形態を示す図である。本実施の形態のハードウェア構成は第１の実施の形態と同様である。本実施の形態は制御部２２による書き込み動作の制御が第２の実施の形態と異なる。
【０１８７】
図３０は制御部２２の制御を説明するためのフローチャートである。なお、本実施の形態における書き込みシーケンスは第２の実施の形態における図２４と同一である。即ち、本実施の形態においても、パスライトプログラム動作を採用しない場合には、図８と同様のシーケンスにて書き込み動作が行われる。
【０１８８】
第１及び第２の実施の形態においては、ステート及びループに応じてパスライト電圧を制御する例を示し、第３及び第４の実施の形態においては、ステートに応じてパスライト電圧を制御する例を示した。本実施の形態はループに応じてパスライト電圧を制御する例である。
【０１８９】
本実施の形態においても、書き込み動作時には図１８の動作フローが採用される。図３０は図１８のＡ７の具体的なフローを示している。
【０１９０】
制御部２２は、ベリファイ動作が３９回目のループ以降のループで行われたものであるか否かを判定する（Ａ５１）。ベリファイ動作が３９回目のループよりも前のループで行われたものである場合には、比較的高いパスライト電圧を設定する（Ａ５２）。また、制御部２２は、ベリファイ動作が３９回目のループ以降のループで行われたものである場合には、比較的低いパスライト電圧を設定する（Ａ５３）。
【０１９１】
例えば、制御部２２は、図２４の例では、比較的高いパスライト電圧として、５ループのパスライトプログラム動作によって目標ステートに到達できると期待されるパスライト電圧を設定する。また、例えば、制御部２２は、図２４の例では、比較的低いパスライト電圧として、１ループのパスライトプログラム動作によって目標ステートに到達できると期待されるパスライト電圧を設定する。例えばこの比較的低いパスライト電圧は、ΔＶｐｇｍよりも小さい値に設定する。
【０１９２】
即ち、本実施の形態によれば、ベリファイ動作が３９回目のループよりも前のループで行われた場合には、５ループのパスライトプログラム動作によって、閾値電圧が目標ステートのターゲット領域に到達する。この結果、閾値分布の幅を十分に狭くすることができると共に、最も遅い場合でも４３回目のループまでに書き込みを完了させることができる。
【０１９３】
また、ベリファイ動作が３９回目以降のループで行われた場合には、１ループのパスライトプログラム動作によって、閾値電圧が目標ステートのターゲット領域に到達する。この結果、閾値分布の幅を十分に狭くすることはできないが、最も遅い場合でも４３回目のループまでに書き込みを完了させることができる。
【０１９４】
このように本実施の形態においても、第２の実施の形態と同様の効果を得ることができる。
【０１９５】
（第６の実施の形態）
図３１は本発明の第６の実施の形態を示す図である。本実施の形態のハードウェア構成は第１の実施の形態と同様である。本実施の形態は制御部２２による書き込み動作の制御が第５の実施の形態と異なる。
【０１９６】
図３１は制御部２２の制御を説明するためのフローチャートである。図３１において図３０と同一の手順には同一符号を付して説明を省略する。なお、本実施の形態における書き込みシーケンスは第２の実施の形態における図２４と同一である。即ち、本実施の形態においても、パスライトプログラム動作を採用しない場合には、図８と同様のシーケンスにて書き込み動作が行われる。
【０１９７】
第５の実施の形態においては、ループに応じてパスライト電圧を制御する例を示した。各ループにおけるプログラム電圧Ｖｐｇｍは、予め規定されている。従って、ループの判定に変えてプログラム電圧Ｖｐｇｍを判定してもよい。
【０１９８】
図３１はループ判定に変えてプログラム電圧Ｖｐｇｍの判定を行う（Ａ６１）点が図３０と異なるのみである。即ち、制御部２２は、ベリファイ動作が３９回目のループよりも前のループで行われたものであるか否かをプログラム電圧Ｖｐｇｍにより判定する。制御部２２は、この判定結果に従って、ベリファイ動作が３８回目以前のループで行われている場合には、比較的高いパスライト電圧を設定し（Ａ５２）、３９回目以降のループで行われている場合には、比較的低いパスライト電圧を設定する（Ａ５３）。
【０１９９】
他の作用及び効果は第５の実施の形態と同様である。
【０２００】
このように本実施の形態においても、第５の実施の形態と同様の効果を得ることができる。
【０２０１】
なお、本発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適当な組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【符号の説明】
【０２０２】
１  メモリコントローラ、２  不揮発性メモリ、１１  ＲＡＭ、１２  プロセッサ、１３  ホストインターフェイス、１４  ＥＣＣ回路、１５  メモリインターフェイス、２１  ＮＡＮＤ  Ｉ／Ｏインターフェイス、２２  制御部、２３  メモリセルアレイ、２４  センスアンプ回路、２５  ワード線ドライバ。
【図１】
2020102287.tif 000003
【図２】
2020102287.tif 000004
【図３】
2020102287.tif 000005
【図４】
2020102287.tif 000006
【図５】
2020102287.tif 000007
【図６】
2020102287.tif 000008
【図７】
2020102287.tif 000009
【図８】
2020102287.tif 000010
【図９】
2020102287.tif 000011
【図１０】
2020102287.tif 000012
【図１１】
2020102287.tif 000013
【図１２】
2020102287.tif 000014
【図１３】
2020102287.tif 000015
【図１４】
2020102287.tif 000016
【図１５】
2020102287.tif 000017
【図１６】
2020102287.tif 000018
【図１７】
2020102287.tif 000019
【図１８】
2020102287.tif 000020
【図１９】
2020102287.tif 000021
【図２０】
2020102287.tif 000022
【図２１】
2020102287.tif 000023
【図２２】
2020102287.tif 000024
【図２３】
2020102287.tif 000025
【図２４】
2020102287.tif 000026
【図２５】
2020102287.tif 000027
【図２６】
2020102287.tif 000028
【図２７】
2020102287.tif 000029
【図２８】
2020102287.tif 000030
【図２９】
2020102287.tif 000031
【図３０】
2020102287.tif 000032
【図３１】
2020102287.tif 000033