(57)【要約】【課題】半導体記憶装置のデータの信頼性を向上すること。【解決手段】実施形態の半導体記憶装置１０は、第１乃至第４メモリセルと、第１及び第２ワード線と、コントローラと、を備える。第３メモリセルの一端は、第１メモリセルの一端に接続されている。第４メモリセルの一端は、第２メモリセルの一端に接続されている。第１ワード線は、第１及び第２メモリセルのそれぞれのゲートに接続されている。第２ワード線は、第３及び第４メモリセルのそれぞれのゲートに接続され、第１ワード線の隣に設けられている。コントローラは、第１書き込みと、第２書き込みとを実行する。コントローラは、書き込み動作の際に、第３メモリセルに対する第１書き込みと、第１メモリセルに対する第２書き込みと、第４メモリセルに対する第１書き込みとを順に実行する。【選択図】図３８
2018045757.tif 000002
【特許請求の範囲】
【請求項１】
第１及び第２メモリセルと、
一端が第１メモリセルの一端に接続された第３メモリセルと、
一端が第２メモリセルの一端に接続された第４メモリセルと、
前記第３メモリセルの他端に接続された第１選択トランジスタと、
前記第４メモリセルの他端に接続された第２選択トランジスタと、
前記第１及び第２メモリセルのそれぞれのゲートに接続された第１ワード線と、
前記第３及び第４メモリセルのそれぞれのゲートに接続され、前記第１ワード線の隣に設けられた第２ワード線と、
第１書き込みと、第２書き込みとを実行するコントローラと、
を備え、
前記コントローラは、書き込み動作の際に、
前記第３メモリセルに対する前記第１書き込みと、前記第１メモリセルに対する前記第２書き込みと、前記第４メモリセルに対する前記第１書き込みとを順に実行する、半導体記憶装置。
【請求項２】
前記第１書き込みにおいて、選択されたワード線には第１プログラムパルスが複数回印加され、前記第１プログラムパルスの電圧は、前記第１プログラムパルスの印加毎に第１電圧から第２電圧ずつ増加し、
前記第２書き込みにおいて、選択されたワード線には第２プログラムパルスが複数回印加され、前記第２プログラムパルスの電圧は、前記第２プログラムパルスの印加毎に第３電圧から第４電圧ずつ増加し、
前記第１電圧は前記第３電圧よりも高く、
前記第２電圧は前記第４電圧よりも高い、
請求項１に記載の半導体記憶装置。
【請求項３】
前記コントローラは、前記書き込み動作の際に、
前記第４メモリセルに対する前記第１書き込みの後に、前記第２メモリセルに対する前記第２書き込みを実行する、
請求項１に記載の半導体記憶装置。
【請求項４】
それぞれのゲートが前記第１ワード線に接続された第５及び第６メモリセルと、
ゲートが前記第２ワード線に接続され、一端が前記第５メモリセルの一端に接続された第７メモリセルと、
ゲートが前記第２ワード線に接続され、一端が前記第６メモリセルの一端に接続された第８メモリセルと、
前記第７メモリセルの他端に接続された第３選択トランジスタと、
前記第８メモリセルの他端に接続された第４選択トランジスタと、
をさらに備え、
前記コントローラは、前記書き込み動作の際に、
前記第１メモリセルに対する前記第１書き込みと、前記第２メモリセルに対する前記第１書き込みと、前記第５メモリセルに対する前記第１書き込みと、前記第６メモリセルに対する前記第１書き込みとを順に実行した後に、前記第３メモリセルに対する前記第１書き込みを実行する、
請求項１に記載の半導体記憶装置。
【請求項５】
前記第１書き込みにおいて、選択されたワード線には第１プログラムパルスが複数回印加され、前記第１プログラムパルスの電圧は前記第１プログラムパルスの印加毎に第１電圧から第２電圧ずつ増加し、
前記第２書き込みにおいて、選択されたワード線には第２プログラムパルスが複数回印加され、前記第２プログラムパルスの電圧は前記第２プログラムパルスの印加毎に第３電圧から第４電圧ずつ増加し、
前記第１電圧は前記第３電圧よりも高く、
前記第２電圧は前記第４電圧よりも高い、
請求項４に記載の半導体記憶装置。
【請求項６】
前記コントローラは、前記書き込み動作の際に、
前記第１書き込みを指示する第１コマンドと第１データとを含む第１コマンドセットを外部から受け取ると、前記第３メモリセルに対する前記第１書き込みを実行し、
前記第２書き込みを指示する第２コマンドと第２データとを含む第２コマンドセットを外部から受け取ると、前記第１メモリセルに対する前記第２書き込みを実行する、
請求項１に記載の半導体記憶装置。
【請求項７】
前記コントローラは、前記書き込み動作の際に、
前記第１コマンドセットを外部から受け取る前に、前記第１コマンドと前記第２データとを含む第３コマンドセットを外部から受け取ると、前記第１メモリセルに対する前記第１書き込みを実行する、
請求項６に記載の半導体記憶装置。
【請求項８】
前記第３メモリセルの他端と、前記第１選択トランジスタとの間に接続された第９メモリセルと、
前記第４メモリセルの他端と、前記第２選択トランジスタとの間に接続された第１０メモリセルと、
前記第７メモリセルの他端と、前記第３選択トランジスタとの間に接続された第１１メモリセルと、
前記第８メモリセルの他端と、前記第４選択トランジスタとの間に接続された第１２メモリセルと、
前記第９乃至第１２メモリセルのそれぞれのゲートに接続され、前記第２ワード線の隣に設けられた第３ワード線と、
をさらに備え、
前記コントローラは、前記書き込みの動作の際に、
前記第６メモリセルに対する前記第２書き込みを実行した後に、前記第９メモリセルに対する前記第１書き込みを実行する、
請求項４に記載の半導体記憶装置。
【請求項９】
第１乃至第４メモリセルと、
一端が前記第１メモリセルの一端に接続された第５メモリセルと、
一端が前記第２メモリセルの一端に接続された第６メモリセルと、
一端が前記第３メモリセルの一端に接続された第７メモリセルと、
一端が前記第４メモリセルの一端に接続された第８メモリセルと、
前記第５メモリセルの他端に接続された第１選択トランジスタと、
前記第６メモリセルの他端に接続された第２選択トランジスタと、
前記第７メモリセルの他端に接続された第３選択トランジスタと、
前記第８メモリセルの他端に接続された第４選択トランジスタと、
前記第１乃至第４メモリセルのそれぞれのゲートに接続された第１ワード線と、
前記第５乃至第８メモリセルのそれぞれのゲートに接続された第２ワード線と、
第１書き込みと、第２書き込みとを実行するコントローラと、
を備え、
前記コントローラは、書き込み動作の際に、
前記第１メモリセルに対する前記第１書き込みと、前記第２メモリセルに対する前記第１書き込みと、前記第３メモリセルに対する前記第１書き込みと、前記第４メモリセルに対する前記第１書き込みと、前記第５メモリセルに対する前記第１書き込みと、前記第１メモリセルに対する前記第２書き込みとを順に実行する、半導体記憶装置。
【請求項１０】
前記第１書き込みにおいて、選択されたワード線には第１プログラムパルスが複数回印加され、前記第１プログラムパルスの電圧は前記第１プログラムパルスの印加毎に第１電圧から第２電圧ずつ増加し、
前記第２書き込みにおいて、選択されたワード線には第２プログラムパルスが複数回印加され、前記第２プログラムパルスの電圧は前記第２プログラムパルスの印加毎に第３電圧から第４電圧ずつ増加し、
前記第１電圧は前記第３電圧よりも高く、
前記第２電圧は前記第４電圧よりも高い、
請求項９に記載の半導体記憶装置。
【請求項１１】
前記コントローラは、前記書き込み動作の際に、
前記第１メモリセルに対する前記第２書き込みの後に、前記第６メモリセルに対する前記第１書き込みを実行する、
請求項９に記載の半導体記憶装置。
【請求項１２】
前記コントローラは、前記書き込み動作の際に、
前記第６メモリセルに対する前記第１書き込みの後に、前記第２メモリセルに対する前記第２書き込みを実行する、
請求項１１に記載の半導体記憶装置。
【請求項１３】
前記コントローラは、前記書き込み動作の際に、
前記第１書き込みを指示する第１コマンドと第１データとを含むコマンドセットを外部から受け取ると、前記第１メモリセルに対する前記第１書き込みを実行し、
前記第２書き込みを指示する第２コマンドと前記第１データとを含むコマンドセットを外部から受け取ると、前記第１メモリセルに対する前記第２書き込みを実行する、
請求項９に記載の半導体記憶装置。
【請求項１４】
前記第５メモリセルの他端と前記第１選択トランジスタとの間に接続された第９メモリセルと、
前記第６メモリセルの他端と前記第２選択トランジスタとの間に接続された第１０メモリセルと、
前記第７メモリセルの他端と前記第３選択トランジスタとの間に接続された第１１メモリセルと、
前記第８メモリセルの他端と前記第４選択トランジスタとの間に接続された第１２メモリセルと、
前記第９乃至第１２メモリセルのそれぞれのゲートに接続され、前記第２ワード線の隣に設けられた第３ワード線と、
をさらに備え、
前記コントローラは、前記書き込みの動作の際に、
前記第４メモリセルに対する前記第２書き込みを実行した後に、前記第９メモリセルに対する前記第１書き込みを実行する、
請求項９に記載の半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
実施形態は、半導体記憶装置に関する。
【背景技術】
【０００２】
半導体記憶装置としてＮＡＮＤ型フラッシュメモリが知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−０４８７９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
データの信頼性を向上することが可能な半導体記憶装置を提供する。
【課題を解決するための手段】
【０００５】
実施形態の半導体記憶装置は、第１乃至第４メモリセルと、第１及び第２選択トランジスタと、第１及び第２ワード線と、コントローラと、を備える。第３メモリセルの一端は、第１メモリセルの一端に接続されている。第４メモリセルの一端は、第２メモリセルの一端に接続されている。第１選択トランジスタは、第３メモリセルの他端に接続されている。第２選択トランジスタは、第４メモリセルの他端に接続されている。第１ワード線は、第１及び第２メモリセルのそれぞれのゲートに接続されている。第２ワード線は、第３及び第４メモリセルのそれぞれのゲートに接続され、第１ワード線の隣に設けられている。コントローラは、第１書き込みと、第２書き込みとを実行する。コントローラは、書き込み動作の際に、第３メモリセルに対する第１書き込みと、第１メモリセルに対する第２書き込みと、第４メモリセルに対する第１書き込みとを順に実行する。
【図面の簡単な説明】
【０００６】
【図１】第１実施形態に従ったメモリシステムのブロック図。
【図２】第１実施形態に従った半導体記憶装置の備えるメモリセルアレイ及びセンスアンプモジュールの回路図。
【図３】第１実施形態に従ったメモリセルの取り得るデータ、閾値分布、及び読み出しレベルを示す図。
【図４】第１実施形態に従ったメモリセルの取り得るデータ、閾値分布、及び読み出しレベルを示す図。
【図５】第１実施形態に従ったメモリシステムにおける書き込み動作のフローチャート。
【図６】第１実施形態に従ったメモリシステムの書き込み動作時における各ステップでコントローラ及びセンスアンプが保持するデータを示す模式図。
【図７】第１実施形態に従ったコントローラの書き込み動作時における書き込みデータの処理方法を示すフローチャート。
【図８】第１実施形態に従ったコントローラの書き込み動作時における書き込みデータのコード変換を説明する表。
【図９】第１実施形態に従った半導体記憶装置の書き込み動作における閾値分布の変化を示す図。
【図１０】第１実施形態に従った半導体記憶装置の書き込み動作における閾値分布の変化を示す図。
【図１１】第１実施形態に従ったメモリシステムにおける書き込み動作のコマンドシーケンス。
【図１２】第１実施形態に従った半導体記憶装置における書き込み動作のコマンドシーケンス及び波形図。
【図１３】第１実施形態に従ったメモリシステムにおける読み出し動作のフローチャート。
【図１４】第１実施形態に従った半導体記憶装置の読み出し動作における波形とデータの出力タイミングとを示す図。
【図１５】第２実施形態に従ったメモリシステムのブロック図。
【図１６】第２実施形態に従ったメモリシステムにおける書き込み動作のフローチャート。
【図１７】第２実施形態に従ったメモリシステムの書き込み動作時における各ステップでコントローラ及びセンスアンプが保持するデータを示す模式図。
【図１８】第２実施形態に従ったコントローラの書き込み動作時における書き込みデータのコード変換を説明する表。
【図１９】第２実施形態に従った半導体記憶装置の書き込み動作における閾値分布の変化を示す図。
【図２０】第２実施形態に従った半導体記憶装置の書き込み動作における閾値分布の変化を示す図。
【図２１】第２実施形態に従ったメモリシステムにおける書き込み動作のコマンドシーケンス。
【図２２】第２実施形態に従った半導体記憶装置における書き込み動作の波形図。
【図２３】第３実施形態に従ったメモリシステムにおける書き込み動作のフローチャート。
【図２４】第３実施形態に従ったメモリシステムの書き込み動作時における各ステップでコントローラ及びセンスアンプが保持するデータを示す模式図。
【図２５】第３実施形態に従った半導体記憶装置の書き込み動作における閾値分布の変化を示す図。
【図２６】第３実施形態に従った半導体記憶装置の書き込み動作における閾値分布の変化を示す図。
【図２７】第３実施形態に従ったメモリシステムにおける書き込み動作のコマンドシーケンス。
【図２８】第４実施形態に従ったメモリシステムにおける書き込み動作のコマンドシーケンス。
【図２９】第４実施形態に従ったメモリシステムの書き込み動作時における各ステップでコントローラ及びセンスアンプが保持するデータを示す模式図。
【図３０】第４実施形態に従った半導体記憶装置の書き込み動作における閾値分布の変化を示す図。
【図３１】第４実施形態に従った半導体記憶装置の書き込み動作における閾値分布の変化を示す図。
【図３２】第４実施形態に従ったメモリシステムにおける書き込み動作のコマンドシーケンス。
【図３３】第５実施形態に従ったコントローラの備えるＲＡＭのブロック図。
【図３４】第５実施形態に従った半導体記憶装置の備えるメモリセルアレイの回路図。
【図３５】第５実施形態に従ったメモリシステムにおける書き込み動作のフローチャート。
【図３６】第５実施形態に従った半導体記憶装置の書き込み動作における閾値分布の変化を示す図。
【図３７】第５実施形態に従った半導体記憶装置の書き込み動作における閾値分布の変化を示す図。
【図３８】第５実施形態に従ったメモリシステムの書き込み動作における書き込み順番を示す図。
【図３９】第５実施形態に従ったメモリシステムにおける書き込み動作のコマンドシーケンス。
【図４０】第５実施形態に従ったメモリシステムにおける書き込み動作のコマンドシーケンス。
【図４１】第５実施形態に従った半導体記憶装置における書き込み動作のコマンドシーケンス及び波形図。
【図４２】第５実施形態に従ったメモリシステムにおける書き込み動作のコマンドシーケンス。
【図４３】第５実施形態の比較例に従ったメモリシステムの書き込み動作における書き込み順番を示す図。
【図４４】第５実施形態に従ったコントローラと比較例に従ったコントローラとのＲＡＭの記憶容量を比較する図。
【図４５】第５実施形態の変形例に従ったメモリシステムの書き込み動作における書き込み順番を示す図。
【図４６】第６実施形態に従ったメモリシステムの書き込み動作における書き込み順番を示す図。
【図４７】第６実施形態に従ったメモリシステムにおける書き込み動作のコマンドシーケンス。
【図４８】第６実施形態の比較例に従ったメモリシステムの書き込み動作における書き込み順番を示す図。
【図４９】第６実施形態に従ったコントローラと比較例に従ったコントローラとのＲＡＭの記憶容量を比較する図。
【図５０】第６実施形態の変形例に従ったメモリシステムの書き込み動作における書き込み順番を示す図。
【図５１】第７実施形態に従った半導体記憶装置の書き込み動作における閾値分布の変化を示す図。
【図５２】第７実施形態に従った半導体記憶装置の書き込み動作における閾値分布の変化を示す図。
【発明を実施するための形態】
【０００７】
以下に、実施形態について図面を参照して説明する。図面は模式的なものである。各実施形態は、実施形態の技術的思想を具体化するための装置や方法を例示するものである。
【０００８】
尚、以下の説明において、略同一の機能及び構成を有する構成要素については、同一符号を付す。参照符号を構成する文字の後の数字は、同じ文字を含んだ参照符号によって参照され、且つ同様の構成を有する要素同士を区別するために用いられている。同じ文字を含んだ参照符号で示される要素を相互に区別する必要がない場合、これらの要素は文字のみを含んだ参照符号により参照される。
【０００９】
［１］第１実施形態
第１実施形態に係る半導体記憶装置及びメモリシステムについて説明する。
【００１０】
［１−１］構成
［１−１−１］メモリシステム１の構成
まず、図１を用いてメモリシステム１の構成について説明する。図１は、メモリシステム１のブロック図である。図１に示すようにメモリシステム１は、半導体記憶装置１０及びコントローラ２０を備え、外部のホスト機器３０に接続される。
【００１１】
半導体記憶装置１０は、データを不揮発に記憶するＮＡＮＤ型フラッシュメモリである。半導体記憶装置１０の構成ついては後述する。
【００１２】
コントローラ２０は、ホスト機器３０からの命令に応答して、半導体記憶装置１０に対して読み出し、書き込み、及び消去等を命令する。図１に示すようにコントローラ２０は、ホストインターフェイス回路２１、内蔵メモリ（ＲＡＭ）２２、プロセッサ（ＣＰＵ）２３、バッファメモリ２４、ＥＣＣ回路２５、及びＮＡＮＤインターフェイス回路２６を備える。
【００１３】
ホストインターフェイス回路２１は、ホストバスによってホスト機器３０と接続され、ホスト機器３０との通信を司る。例えばホストインターフェイス回路２１は、ホスト機器３０から受信した命令及びデータをそれぞれ、プロセッサ２３及びバッファメモリ２４に転送する。またホストインターフェイス回路２１は、プロセッサ２３の命令に応答して、バッファメモリ２４内のデータをホスト機器３０に転送する。
【００１４】
ＲＡＭ２２は、例えばＤＲＡＭ等の半導体メモリであり、半導体記憶装置１０を管理するためのファームウェアや、各種の管理テーブル等を保持する。またＲＡＭ２２は、プロセッサ２３の作業領域として使用され、例えば書き込み動作時に使用される領域ＰＧ０〜ＰＧ５を含む。領域ＰＧは、各々が１ページのデータを保持することが可能である。この”ページ”の定義については後述する。
【００１５】
ＣＰＵ２３は、コントローラ２０全体の動作を制御する。例えばＣＰＵ２３は、ホスト機器３０から受信した書き込み命令に応答して、ＮＡＮＤインターフェイス回路２６に対して書き込みコマンドを発行する。この動作は、読み出し及び消去の場合についても同様である。またＣＰＵ２３は、ウェアレベリング等、半導体記憶装置１０のメモリ空間を管理するための様々な処理を実行する。
【００１６】
バッファメモリ２４は、コントローラ２０が半導体記憶装置１０から受信した読み出しデータや、ホスト機器３０から受信した書き込みデータ等を一時的に保持する。
【００１７】
ＥＣＣ回路２５は、データのエラー訂正（ＥＣＣ：Error Checking and Correcting）処理を行う。具体的には、ＥＣＣ回路２５は、データの書き込み時に書き込みデータに基づいてパリティを生成する。そしてＥＣＣ回路２５は、データの読み出し時にパリティからシンドロームを生成してエラーを検出し、検出したエラーを訂正する。
【００１８】
ＮＡＮＤインターフェイス回路２６は、ＮＡＮＤバスによって半導体記憶装置１０と接続され、半導体記憶装置１０との通信を司る。半導体記憶装置１０とコントローラ２０との間で送受信される信号は、ＮＡＮＤインターフェイスに従っている。例えばＮＡＮＤインターフェイス回路２６は、ＣＰＵ２３から受信した命令に基づいてコマンドラッチイネーブル信号ＣＬＥ、アドレスラッチイネーブル信号ＡＬＥ、ライトイネーブル信号ＷＥｎ、及びリードイネーブル信号ＲＥｎを半導体記憶装置１０に送信し、レディビジー信号ＲＢｎを半導体記憶装置１０から受信し、入出力信号Ｉ／Ｏを半導体記憶装置１０との間で送受信する。
【００１９】
信号ＣＬＥ及びＡＬＥは、半導体記憶装置１０への入力信号Ｉ／ＯがそれぞれコマンドＣＭＤ及びアドレス情報ＡＤＤであることを半導体記憶装置１０に通知する信号である。信号ＷＥｎは、“Ｌ”レベルでアサートされ、入力信号Ｉ／Ｏを半導体記憶装置１０に取り込ませるための信号である。信号ＲＥｎは、“Ｌ”レベルでアサートされ、半導体記憶装置１０から出力信号Ｉ／Ｏを読み出すための信号である。
【００２０】
レディビジー信号ＲＢｎは、半導体記憶装置１０がコントローラ２０からの命令を受信することが可能かどうかを通知する信号である。レディビジー信号ＲＢｎは、例えば半導体記憶装置１０がコントローラ２０からの命令を受信可能なレディ状態の場合に“Ｈ”レベルとされ、受信不可能なビジー状態の場合に“Ｌ”レベルとされる。
【００２１】
入出力信号Ｉ／Ｏは、例えば８ビットの信号であり、コマンドＣＭＤ、アドレス情報ＡＤＤ、及びデータＤＡＴ等に相当する。例えば書き込み動作時において、半導体記憶装置１０に転送される入出力信号Ｉ／Ｏは、ＣＰＵ２３が発行した書き込みコマンドＣＭＤ、及びバッファメモリ２４内の書き込みデータＤＡＴを含む。また、読み出し動作時において、半導体記憶装置１０に転送される入出力信号Ｉ／Ｏは読み出しコマンドを含み、コントローラ２０に転送される入出力信号Ｉ／Ｏは読み出しデータＤＡＴを含む。
【００２２】
以上で説明したメモリシステム１を使用するホスト機器３０としては、例えばデジタルカメラやパーソナルコンピュータ等が挙げられる。
【００２３】
尚、半導体記憶装置１０及びコントローラ２０は、例えばそれらの組み合わせにより一つの半導体装置を構成しても良い。このような半導体装置としては、例えばＳＤＴＭカードのようなメモリカードや、ＳＳＤ（solid state drive）等が挙げられる。
【００２４】
［１−１−２］半導体記憶装置１０の構成
次に、引き続き図１を用いて半導体記憶装置１０の構成について説明する。図１に示すように半導体記憶装置１０は、メモリセルアレイ１１、コマンドレジスタ１２、アドレスレジスタ１３、シーケンサ１４、ドライバ回路１５、ロウデコーダ１６、及びセンスアンプモジュール１７を備える。
【００２５】
メモリセルアレイ１１は、ブロックＢＬＫ０〜ＢＬＫｎ（ｎは１以上の整数）を含む。ブロックＢＬＫは、ビット線及びワード線に関連付けられた複数の不揮発性メモリセルの集合であり、例えばデータの消去単位となる。尚、本実施形態は、メモリセルが半導体基板上に二次元に配列している場合を例に説明する。
【００２６】
コマンドレジスタ１２は、コントローラ２０から受信したコマンドＣＭＤを保持する。アドレスレジスタ１３は、コントローラ２０から受信したアドレス情報ＡＤＤを保持する。このアドレス情報ＡＤＤは、ページアドレスＰＡ及びブロックアドレスＢＡを含む。
【００２７】
シーケンサ１４は、コマンドレジスタ１２に保持されたコマンドＣＭＤに基づいて、半導体記憶装置１０全体の動作を制御する。具体的には、シーケンサ１４は、コマンドＣＭＤに基づいてドライバ回路１５、ロウデコーダ１６、及びセンスアンプモジュール１７等を制御して、データの書き込み動作や読み出し動作等を実行する。
【００２８】
ドライバ回路１５は、シーケンサ１４の指示に基づいて所望の電圧を生成する。またドライバ回路１５は、アドレスレジスタ１３に保持されたページアドレスＰＡに基づいて、
生成した電圧をロウデコーダ１６に供給する。
【００２９】
ロウデコーダ１６は、アドレスレジスタ１３に保持されたブロックアドレスＢＡに基づいて、ブロックＢＬＫ０〜ＢＬＫｎのいずれかを選択する。さらにロウデコーダ１６は、選択したブロックＢＬＫにおけるロウ方向を選択し、ドライバ回路１５から供給された電圧を選択ワード線に印加する。
【００３０】
センスアンプモジュール１７は、メモリセルアレイ１１から読み出したデータＤＡＴを、コントローラ２０に出力する。またセンスアンプモジュール１７は、コントローラ２０から受け取った書き込みデータＤＡＴを、メモリセルアレイ１１に転送する。
【００３１】
［１−１−３］メモリセルアレイ１１の構成
次に、図２を用いてメモリセルアレイ１１の構成について説明する。図２は、メモリセルアレイ１１及びセンスアンプモジュール１７の回路図であり、メモリセルアレイ１１内の１つのブロックＢＬＫについて詳細な回路構成を示している。図２に示すようにブロックＢＬＫは、複数のＮＡＮＤストリング１８を備える。
【００３２】
各ＮＡＮＤストリング１８は、ビット線ＢＬ０〜ＢＬ（ｍ−１）（（ｍ−１）は１以上の自然数）に対応して設けられ、例えば８個のメモリセルトランジスタＭＴ（ＭＴ０〜ＭＴ７）、並びに選択トランジスタＳＴ１及びＳＴ２を含む。尚、１つのＮＡＮＤストリング１８が含むメモリセルトランジスタＭＴの数はこれに限定されず、任意の数にすることが出来る。
【００３３】
メモリセルトランジスタＭＴは、制御ゲート及び電荷蓄積層を備え、データを不揮発に保持する。また、メモリセルトランジスタＭＴ０〜ＭＴ７は、選択トランジスタＳＴ１のソースと選択トランジスタＳＴ２のドレインとの間に直列接続される。同一ブロックＢＬＫ内の選択トランジスタＳＴ１及びＳＴ２のゲートはそれぞれ、セレクトゲート線ＳＧＤ及びＳＧＳに共通接続される。同様に、同一ブロックＢＬＫ内のメモリセルトランジスタＭＴ０〜ＭＴ７の制御ゲートはそれぞれ、ワード線ＷＬ０〜ＷＬ７に共通接続される。
【００３４】
またメモリセルアレイ１１内において、同一列にあるＮＡＮＤストリングＮＳにおける選択トランジスタＳＴ１のドレインは、ビット線ＢＬに共通接続される。つまりビット線ＢＬは、複数のブロックＢＬＫ間で同一列にあるＮＡＮＤストリングＮＳを共通接続する。さらに、複数の選択トランジスタＳＴ２のソースは、ソース線ＳＬに共通接続される。
【００３５】
以上の構成において、共通のワード線ＷＬに接続された複数のメモリセルトランジスタＭＴの保持する１ビットデータの集合を“ページ”と呼ぶ。従って、１つのメモリセルトランジスタＭＴに４ビットデータを記憶させる場合、１本のワード線ＷＬに接続された複数のメモリセルの集合には、４ページ分のデータが記憶される。
【００３６】
本実施形態では、１つのメモリセルトランジスタＭＴが４ビットデータを保持することが出来る。この４ビットデータを、下位ビットから順にLowerビット、Middleビット、Upperビット、及びTopビットと呼ぶ。また、同一のワード線ＷＬに接続されたメモリセルトランジスタＭＴの保持するLowerビットの集合を“Lowerページ”と呼び、Middleビットの集合を“Middleページ”と呼び、Upperビットの集合を“Upperページ”と呼び、Topビットの集合を“Topページ”と呼ぶ。つまり本例の場合、１本のワード線ＷＬには４ページが割り当てられ、８本のワード線ＷＬを含むブロックＢＬＫは３２ページ分の記憶容量を有することになる。
【００３７】
［１−１−４］センスアンプモジュール１７の構成
次に、引き続き図２を用いてセンスアンプモジュール１７の構成について説明する。図３に示すようにセンスアンプモジュール１７は、ビット線ＢＬ毎に設けられたセンスアンプユニットＳＡＵ（ＳＡＵ０〜ＳＡＵ（ｍ−１））を備える。
【００３８】
各センスアンプユニットＳＡＵは、センスアンプ部ＳＡ、ラッチ回路ＡＤＬ、ＢＤＬ、ＣＤＬ、ＤＤＬ、及びＸＤＬ、並びに演算部ＯＰを備える。これらセンスアンプ部ＳＡ、ラッチ回路ＡＤＬ、ＢＤＬ、ＣＤＬ、ＤＤＬ、及びＸＤＬ、並びに演算部ＯＰは、互いにデータを送受信可能なように接続される。
【００３９】
センスアンプ部ＳＡは、読み出し動作時には対応するビット線ＢＬに読み出されたデータをセンスし、読み出しデータが“０”であるか“１”であるかを判定する。また書き込み動作時には、書き込みデータに基づいてビット線ＢＬに電圧を印加する。
【００４０】
ラッチ回路ＡＤＬ、ＢＤＬ、ＣＤＬ、及びＤＤＬは、読み出しデータ及び書き込みデータを一時的に保持する。読み出し動作時にセンスアンプ部ＳＡが確定させた読み出しデータ、及び書き込み動作時にラッチ回路ＸＤＬに転送された書き込みデータは、例えばラッチ回路ＡＤＬ、ＢＤＬ、ＣＤＬ、及びＤＤＬのいずれかに転送される。
【００４１】
演算部ＯＰは、ラッチ回路ＡＤＬ、ＢＤＬ、ＣＤＬ、及びＤＤＬに保持されているデータについて、論理和（ＯＲ）演算、論理積（ＡＮＤ）演算、排他的論理和（ＸＯＲ）演算等、種々の演算を行う。
【００４２】
ラッチ回路ＸＤＬは、センスアンプユニットＳＡＵとコントローラ２０との間のデータの入出力に用いられる。例えば、コントローラ２０から受信したデータは、ラッチ回路ＸＤＬを介してラッチ回路ＡＤＬ、ＢＤＬ、ＣＤＬ、若しくはＤＤＬ、又はセンスアンプ部ＳＡに転送される。同様に、ラッチ回路ＡＤＬ、ＢＤＬ、ＣＤＬ、若しくはＤＤＬ、又はセンスアンプ部ＳＡが保持するデータは、ラッチ回路ＸＤＬを介してコントローラ２０に転送される。
【００４３】
またラッチ回路ＸＤＬは、半導体記憶装置１０のキャッシュメモリとして機能する。例えば半導体記憶装置１０は、ラッチ回路ＡＤＬ、ＢＤＬ、ＣＤＬ、及びＤＤＬが使用中であったとしても、ラッチ回路ＸＤＬが空いていればレディ状態になることが出来る。
【００４４】
尚、センスアンプモジュール１７の構成はこれに限定されず、種々変更が可能である。例えばセンスアンプユニットＳＡＵは、６個以上のラッチ回路を備えていても良い。
［１−１−５］メモリセルトランジスタＭＴの閾値分布
次に、図３を用いてメモリセルトランジスタＭＴの閾値分布について説明する。図３は、各メモリセルトランジスタＭＴの取り得るデータ、閾値分布、及び読み出し動作時に用いる電圧を示している。
【００４５】
図３に示すように、メモリセルトランジスタＭＴが４ビットのデータを保持する場合、その閾値電圧の分布は１６個に分けられる。この１６個の閾値分布を、閾値電圧が低いものから順に“０”レベル、“１”レベル、“２”レベル、“３”レベル、“４”レベル、“５”レベル、“６”レベル、“７”レベル、“８”レベル、“９”レベル、“Ａ”レベル、“Ｂ”レベル、“Ｃ”レベル、“Ｄ”レベル、“Ｅ”レベル、“Ｆ”レベルと呼ぶ。
【００４６】
また、図３に示す電圧Ｖ１、Ｖ２、Ｖ３、Ｖ４、Ｖ５、Ｖ６、Ｖ７、Ｖ８、Ｖ９、ＶＡ、ＶＢ、ＶＣ、ＶＤ、ＶＥ、及びＶＦはそれぞれ、書き込み動作時における“０”レベル、“１”レベル、“２”レベル、“３”レベル、“４”レベル、“５”レベル、“６”レベル、“７”レベル、“８”レベル、“９”レベル、“Ａ”レベル、“Ｂ”レベル、“Ｃ”レベル、“Ｄ”レベル、“Ｅ”レベル、及び“Ｆ”レベルのベリファイに用いられる。また電圧ＶＲＥＡＤは、読み出し動作時において非選択ワード線に印加される電圧である。メモリセルトランジスタＭＴは、ゲートに電圧ＶＲＥＡＤが印加されると保持するデータに依らずにオン状態になる。これらの電圧値の関係は、Ｖ１＜Ｖ２＜Ｖ３＜Ｖ４＜Ｖ５＜Ｖ６＜Ｖ７＜Ｖ８＜Ｖ９＜ＶＡ＜ＶＢ＜ＶＣ＜ＶＤ＜ＶＥ＜ＶＦ＜ＶＲＥＡＤである。
【００４７】
上述した閾値分布のうち“０”レベルは、メモリセルトランジスタＭＴの消去状態に相当する。“０”レベルにおける閾値電圧は、電圧Ｖ１未満である。“１”レベルにおける閾値電圧は、電圧Ｖ１以上且つ電圧Ｖ２未満である。“２”レベルにおける閾値電圧は、電圧Ｖ２以上且つ電圧Ｖ３未満である。“３”レベルにおける閾値電圧は、電圧Ｖ３以上且つ電圧Ｖ４未満である。“４”レベルにおける閾値電圧は、電圧Ｖ４以上且つ電圧Ｖ５未満である。“５”レベルにおける閾値電圧は、電圧Ｖ５以上且つ電圧Ｖ６未満である。“６”レベルにおける閾値電圧は、電圧Ｖ６以上且つ電圧Ｖ７未満である。“７”レベルにおける閾値電圧は、電圧Ｖ７以上且つ電圧Ｖ８未満である。“８”レベルにおける閾値電圧は、電圧Ｖ８以上且つ電圧Ｖ９未満である。“９”レベルにおける閾値電圧は、電圧Ｖ９以上且つ電圧ＶＡ未満である。“Ａ”レベルにおける閾値電圧は、電圧ＶＡ以上且つ電圧ＶＢ未満である。“Ｂ”レベルにおける閾値電圧は、電圧ＶＢ以上且つ電圧ＶＣ未満である。“Ｃ”レベルにおける閾値電圧は、電圧ＶＣ以上且つ電圧ＶＤ未満である。“Ｄ”レベルにおける閾値電圧は、電圧ＶＤ以上且つＶＥ未満である。“Ｅ”レベルにおける閾値電圧は、電圧ＶＥ以上且つＶＦ未満である。“Ｆ”レベルにおける閾値電圧は、電圧ＶＥ以上且つ電圧ＶＲＥＡＤ未満である。
【００４８】
本例における読み出し動作では、説明を簡略化するため、ベリファイ電圧を読み出し電圧として使用した場合を一例として説明する。以下に、電圧Ｖ１、Ｖ２、Ｖ３、Ｖ４、Ｖ５、Ｖ６、Ｖ７、Ｖ８、Ｖ９、ＶＡ、ＶＢ、ＶＣ、ＶＤ、ＶＥ、及びＶＦを用いた読み出し動作のことをそれぞれ、読み出し動作１Ｒ、２Ｒ、３Ｒ、４Ｒ、５Ｒ、６Ｒ、７Ｒ、８Ｒ、９Ｒ、ＡＲ、ＢＲ、ＣＲ、ＤＲ、ＥＲ、及びＦＲと呼ぶ。読み出し動作１Ｒは、メモリセルトランジスタＭＴの閾値電圧が電圧Ｖ１未満か否かを判定する。読み出し動作２Ｒは、メモリセルトランジスタＭＴの閾値電圧が電圧Ｖ２未満か否かを判定する。読み出し動作３Ｒは、メモリセルトランジスタＭＴの閾値電圧が電圧Ｖ３未満か否かを判定する。以下、同様である。
【００４９】
また、上述した１６個の閾値分布は、Lowerビット、Middleビット、Upperビット、及びTopビットからなる４ビット（４ページ）データを書き込むことで形成される。そして１６個の閾値分布が、それぞれ異なる４ビットのデータに対応する。本実施形態では、各レベルに含まれるメモリセルトランジスタＭＴに対して、以下に示すようにデータを割り付ける。
【００５０】
“０”レベルに含まれるメモリセルトランジスタＭＴは、“１１１１”（“Lowerビット／Middleビット／Upperビット／Topビット”）データを保持する。“１”レベルに含まれるメモリセルトランジスタＭＴは、“１１１０”データを保持する。“２”レベルに含まれるメモリセルトランジスタＭＴは、“１１００”データを保持する。“３”レベルに含まれるメモリセルトランジスタＭＴは、“１１０１”データを保持する。“４”レベルに含まれるメモリセルトランジスタＭＴは、“１００１”データを保持する。“５”レベルに含まれるメモリセルトランジスタＭＴは、“１０００”データを保持する。“６”レベルに含まれるメモリセルトランジスタＭＴは、“１０１０”データを保持する。“７”レベルに含まれるメモリセルトランジスタＭＴは、“１０１１”データを保持する。“８”レベルに含まれるメモリセルトランジスタＭＴは、“００１１”データを保持する。“９”レベルに含まれるメモリセルトランジスタＭＴは、“００１０”データを保持する。“Ａ”レベルに含まれるメモリセルトランジスタＭＴは、“００００”データを保持する。“Ｂ”レベルに含まれるメモリセルトランジスタＭＴは、“０００１”データを保持する。“Ｃ”レベルに含まれるメモリセルトランジスタＭＴは、“０１０１”データを保持する。“Ｄ”レベルに含まれるメモリセルトランジスタＭＴは、“０１００”データを保持する。“Ｅ”レベルに含まれるメモリセルトランジスタＭＴは、“０１１０”データを保持する。“Ｆ”レベルに含まれるメモリセルトランジスタＭＴは、“０１１１”データを保持する。
【００５１】
読み出し動作において各ビットの値を確定させるためには、センスアンプモジュール１７は各ビットにおいて値が変化する境界の電圧を調べる必要がある。上述したデータの割り付けでは、Lowerビットは、読み出し動作８Ｒによって確定する。Middleビットは、読み出し動作４Ｒ及びＣＲによって確定する。Upperビットは、読み出し動作２Ｒ、６Ｒ、ＡＲ、及びＥＲによって確定する。Topビットは、読み出し動作１Ｒ、３Ｒ、５Ｒ、７Ｒ、９Ｒ、ＢＲ、ＤＲ、及びＦＲによって確定する。つまりLowerビット、Middleビット、Upperビット、及びTopビットの値はそれぞれ、１回、２回、４回、及び８回の読み出し動作によって確定する。以下では、このようなデータの割り付けのことを“１−２−４−８コード”と呼ぶ。
【００５２】
また本実施形態では、例えば図４に示すようなデータの割り付けも使用する。図４に示す例では、各レベルに含まれるメモリセルトランジスタＭＴに対して、以下に示すようにデータを割り付ける。
【００５３】
“０”レベルに含まれるメモリセルトランジスタＭＴは、“１１１１”データを保持する。“１”レベルに含まれるメモリセルトランジスタＭＴは、“０１１１”データを保持する。“２”レベルに含まれるメモリセルトランジスタＭＴは、“０１０１”データを保持する。“３”レベルに含まれるメモリセルトランジスタＭＴは、“０００１”データを保持する。“４”レベルに含まれるメモリセルトランジスタＭＴは、“１００１”データを保持する。“５”レベルに含まれるメモリセルトランジスタＭＴは、“１０００”データを保持する。“６”レベルに含まれるメモリセルトランジスタＭＴは、“００００”データを保持する。“７”レベルに含まれるメモリセルトランジスタＭＴは、“０１００”データを保持する。“８”レベルに含まれるメモリセルトランジスタＭＴは、“０１１０”データを保持する。“９”レベルに含まれるメモリセルトランジスタＭＴは、“００１０”データを保持する。“Ａ”レベルに含まれるメモリセルトランジスタＭＴは、“００１１”データを保持する。“Ｂ”レベルに含まれるメモリセルトランジスタＭＴは、“１０１１”データを保持する。“Ｃ”レベルに含まれるメモリセルトランジスタＭＴは、“１０１０”データを保持する。“Ｄ”レベルに含まれるメモリセルトランジスタＭＴは、“１１１０”データを保持する。“Ｅ”レベルに含まれるメモリセルトランジスタＭＴは、“１１００”データを保持する。“Ｆ”レベルに含まれるメモリセルトランジスタＭＴは、“１１０１”データを保持する。
【００５４】
このように割り付けられたデータを読み出す場合、Lowerビットは、読み出し動作１Ｒ、４Ｒ、６Ｒ、及びＢＲによって確定する。Middleビットは、読み出し動作３Ｒ、７Ｒ、９Ｒ、及びＤＲによって確定する。Upperビットは、読み出し動作２Ｒ、８Ｒ、及びＥＲによって確定する。Topビットは、読み出し動作５Ｒ、ＡＲ、ＣＲ、及びＦＲによって確定する。つまりLowerビット、Middleビット、Upperビット、及びTopビットの値はそれぞれ、４回、４回、３回、及び４回の読み出し動作によって確定する。以下では、このデータの割り付けのことを“４−４−３−４コード”と呼ぶ。
【００５５】
［１−２］動作
次に、メモリシステム１の書き込み動作及び読み出し動作について説明する。
【００５６】
［１−２−１］メモリシステム１の書き込み動作
＜書き込み動作の流れについて＞
まず、メモリシステム１の書き込み動作について説明する。本実施形態に従ったメモリシステム１の書き込み動作では、コントローラ２０がホスト機器３０から受け取った４ページのデータに対して各種データ処理を実行し、このデータを２回に分けて２ページずつ半導体記憶装置１０に転送する。そして半導体記憶装置１０がワード線ＷＬを共有するメモリセルトランジスタＭＴに対して、２回の書き込み動作によって２ビットずつデータを書き込む。
【００５７】
以下に、図５及び図６を用いてメモリシステム１における書き込み動作の詳細について説明する。図５は、メモリシステム１における書き込み動作のフローチャートを示し、図６は、図５に示す各ステップにおいてＲＡＭ２２及びセンスアンプユニットＳＡＵが保持するデータの一例を示している。
【００５８】
（ステップＳ１０）
まず、ホスト機器３０がコントローラ２０に書き込みデータを送信する。コントローラ２０は、受信した書き込みデータをバッファメモリ２４に格納する。そしてＣＰＵ２３は、バッファメモリ２４に格納された書き込みデータが４ページに達したら、この４ページの書き込みデータＤＡＴ０をページ単位でＲＡＭ２２の各領域ＰＧに格納する。例えば、図６に示すようにデータＤＡＴ０のLowerページデータが領域ＰＧ０に保持され、Middleページデータが領域ＰＧ１に保持され、Upperページデータが領域ＰＧ２に保持され、Topページデータが領域ＰＧ３に保持される。
【００５９】
（ステップＳ１１）
次にコントローラ２０は、ＲＡＭ２２に保持された４ページのデータＤＡＴ０に対して、データ処理を実行する。このデータ処理の詳細を図７に示す。図７は、書き込み動作においてコントローラ２０が実行するデータ処理のフローチャートを示している。
【００６０】
図７に示すようにまずＣＰＵ２３が、ＲＡＭ２２に保持された４ページのデータＤＡＴを、ページ毎にランダマイズする（ステップＳ４０）。このときランダマイズされたデータには、例えば４−４−３−４コードが適用される。次にＥＣＣ回路２５が、ＲＡＭ２２に保持された４ページのデータＤＡＴに対して、ページ毎にパリティを付与する（ステップＳ４１）。次にＣＰＵ２３が、ＲＡＭ２２が保持する４ページのデータＤＡＴに対して、コード変換を実行する（ステップＳ４２）。
【００６１】
ステップＳ４２におけるコード変換の詳細を図８に示す。図８に示すように本実施形態では、例えば４−４−３−４コードから１−２−４−８コードへのコード変換が実行される。本実施形態では、コード変換後のLowerページデータを第１LowerページデータＭＬ１と呼び、Middleページデータを第１UpperページデータＭＵ１と呼び、Upperページデータを第２LowerページデータＭＬ２と呼び、Topページデータを第２UpperページデータＭＵ２と呼ぶ。
【００６２】
そして図６に示すように、領域ＰＧ０にはデータＤＡＴ０の第１LowerページデータＭＬ１が保持され、領域ＰＧ１にはデータＤＡＴ０の第１UpperページデータＭＵ１が保持され、領域ＰＧ２にはデータＤＡＴ０の第２LowerページデータＭＬ２が保持され、領域ＰＧ３にはデータＤＡＴ０の第２UpperページデータＭＵ２が保持される。
【００６３】
（ステップＳ１２）
次にコントローラ２０は、第１コマンドセットを発行して、半導体記憶装置１０に送信する。この第１コマンドセットは、書き込みを命令するコマンドと、ワード線ＷＬ０を指定するアドレス情報ＡＤＤと、２ページのデータＤＡＴ０とを含む。半導体記憶装置１０が受信したコマンドセットのうち２ページのデータＤＡＴ０は、センスアンプユニットＳＡＵのラッチ回路に転送される。具体的には、図６に示すようにＲＡＭ２２の領域ＰＧ０及びＰＧ１に保持されたデータがそれぞれ、センスアンプユニットＳＡＵのラッチ回路ＡＤＬ及びＢＤＬに転送される。そしてＲＡＭ２２の領域ＰＧ０及びＰＧ１は、保持していたデータが転送されるとリリースされる。ここで“リリース”とは、ラッチ回路に保持したデータを破棄する動作に相当する。
【００６４】
（ステップＳ１３）
半導体記憶装置１０は、コントローラ２０から第１コマンドセットを受信すると、レディビジー信号ＲＢｎを“Ｌ”レベルにして、ワード線ＷＬ０を選択した第１書き込み動作を実行する。第１書き込み動作の概略を図９に示す。図９は、第１書き込み動作によるメモリセルの閾値分布の変化を示している。図９に示すように第１書き込み動作では半導体記憶装置１０が、コントローラ２０から入力された第１LowerページデータＭＬ１及び第１UpperページデータＭＵ１に基づいた、２ページの書き込み動作を実行する。
【００６５】
第１書き込み動作を実行する前のメモリセルトランジスタＭＴの閾値電圧は、“ＥＲ”レベルに分布する。“ＥＲ”レベルにおける閾値電圧は電圧Ｖ１未満であり、前述した“０”レベルと同様に、メモリセルトランジスタＭＴの消去状態に相当する。
【００６６】
第１書き込み動作においてシーケンサ１４は、電圧ＶＭ１、ＶＭ２、及びＶＭ３をベリファイ電圧として使用する。電圧ＶＭ１は、“１０”（“Lowerビット／Upperビット”）データを書き込む場合に使用され、電圧Ｖ１以上且つ電圧Ｖ５未満である。電圧ＶＭ２は、“００”データを書き込む場合に使用されるベリファイ電圧であり、電圧Ｖ５以上且つ電圧Ｖ９未満である。電圧ＶＭ３は、“０１”データを書き込む場合に使用されるベリファイ電圧であり、電圧Ｖ９以上且つ電圧ＶＤ未満である。
【００６７】
第１書き込み動作が実行されると、書き込むデータに基づいてメモリセルトランジスタＭＴの閾値電圧が上昇し、４つの閾値分布が形成される。図９に示す“Ｍ０”レベルは、“１１”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。“Ｍ１”レベルは、“１０”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。“Ｍ２”レベルは、“００”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。“Ｍ３”レベルは、“０１”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。
【００６８】
“Ｍ０”レベルにおける閾値電圧は電圧Ｖ１未満であり、前述した“０”レベル及び“ＥＲ”レベルと同様に、メモリセルトランジスタＭＴの消去状態に相当する。つまり、第１書き込み動作において“１１”データを書き込むメモリセルトランジスタＭＴでは、閾値電圧の上昇が抑制される。“Ｍ１”レベルにおける閾値電圧は、電圧ＶＭ１以上且つ電圧Ｖ５未満である。“Ｍ２”レベルにおける閾値電圧は、電圧ＶＭ２以上且つ電圧Ｖ９未満である。“Ｍ３”レベルにおける閾値電圧は、電圧ＶＭ３以上且つ電圧ＶＤ未満である。
【００６９】
このように、第１書き込み動作におけるベリファイに使用される電圧ＶＭ１、ＶＭ２、及びＶＭ３はそれぞれ、ベリファイをパスしたメモリセルトランジスタＭＴの閾値電圧が電圧Ｖ５、Ｖ９、及びＶＤを超えないように設定される。
【００７０】
（ステップＳ１４）
半導体記憶装置１０がステップＳ１３の第１書き込み動作を実行する一方で、ＲＡＭ２２の領域ＰＧ０及びＰＧ１がリリースされると、ＣＰＵ２３はホスト機器３０から受信した４ページのデータＤＡＴ１を、バッファメモリ２４からＲＡＭ２２に転送する。すると、例えば図６に示すようにデータＤＡＴ１のLowerページデータが領域ＰＧ０に保持され、Middleページデータが領域ＰＧ１に保持され、Upperページデータが領域ＰＧ４に保持され、Topページデータが領域ＰＧ５に保持される。
【００７１】
（ステップＳ１５）
次にコントローラ２０は、ＲＡＭ２２に保持された４ページのデータＤＡＴ１に対して、ステップＳ１１と同様のデータ処理を実行する。データ処理が実行されると、図６に示すように、領域ＰＧ０にはデータＤＡＴ１の第１LowerページデータＭＬ１が保持され、領域ＰＧ１にはデータＤＡＴ１の第１UpperページデータＭＵ１が保持され、領域ＰＧ４にはデータＤＡＴ１の第２LowerページデータＭＬ２が保持され、領域ＰＧ５にはデータＤＡＴ１の第２UpperページデータＭＵ２が保持される。
【００７２】
（ステップＳ１６）
半導体記憶装置１０は、ステップＳ１３の第１書き込み動作が終了すると、レディビジー信号ＲＢｎを“Ｈ”レベルにして、コントローラ２０に書き込み動作の終了を通知する。また、第１書き込み動作が終了すると、図６に示すようにセンスアンプユニットＳＡＵ内のラッチ回路がリリースされる。
【００７３】
（ステップＳ１７）
次にコントローラ２０は、第１コマンドセットを発行し、半導体記憶装置１０に送信する。この第１コマンドセットでは、ワード線ＷＬ１を指定するアドレス情報ＡＤＤと、２ページ分のデータＤＡＴ１とを含む。半導体記憶装置１０が受信したコマンドセットのうち２ページのデータＤＡＴ１は、センスアンプユニットＳＡＵのラッチ回路に転送される。具体的には、図６に示すように、ＲＡＭ２２の領域ＰＧ０及びＰＧ１に保持されたデータがそれぞれ、センスアンプユニットＳＡＵのラッチ回路ＡＤＬ及びＢＤＬに転送される。そしてＲＡＭ２２の領域ＰＧ０及びＰＧ１は、保持していたデータが転送されるとリリースされる。
【００７４】
（ステップＳ１８）
半導体記憶装置１０は、コントローラ２０から第１コマンドセットを受信すると、レディビジー信号ＲＢｎを“Ｌ”レベルにして、ワード線ＷＬ１を選択した第１書き込み動作を実行する。この第１書き込み動作はステップＳ１３と同様であり、これによりデータＤＡＴ１の第１LowerページデータＭＬ１と、第１UpperページデータＭＵ１とに基づいた２ページのデータがワード線ＷＬ１に接続されたメモリセルトランジスタＭＴに書き込まれる。
【００７５】
（ステップＳ１９）
半導体記憶装置１０は、ステップＳ１８の第１書き込み動作が終了すると、レディビジー信号ＲＢｎを“Ｈ”レベルにして、コントローラ２０に書き込み動作の終了を通知する。また、第１書き込み動作が終了すると、図６に示すようにセンスアンプユニットＳＡＵ内のラッチ回路がリリースされる。
【００７６】
（ステップＳ２０）
コントローラ２０は、ワード線ＷＬ０に対する第１書き込み動作とワード線ＷＬ１に対する第１書き込み動作とが終了すると、第２コマンドセットを発行して半導体記憶装置１０に送信する。この第２コマンドセットは、書き込みを命令するコマンドと、ワード線ＷＬ０を指定するアドレス情報ＡＤＤと、２ページのデータＤＡＴ０とを含む。半導体記憶装置１０が受信したコマンドセットのうち２ページのデータＤＡＴ０は、センスアンプユニットＳＡＵのラッチ回路に転送される。具体的には、図６に示すように、ＲＡＭ２２の領域ＰＧ２及びＰＧ３に保持されたデータがそれぞれ、センスアンプユニットＳＡＵのラッチ回路ＡＤＬ及びＢＤＬに転送される。ＲＡＭ２２の領域ＰＧ２及びＰＧ３は、保持していたデータが転送されるとリリースされる。
【００７７】
（ステップＳ２１）
半導体記憶装置１０は、コントローラ２０から第２コマンドセットを受信すると、レディビジー信号ＲＢｎを“Ｌ”レベルにして、ワード線ＷＬ０を選択した第２書き込み動作を実行する。第２書き込み動作の概略を図１０に示す。図１０は、第２書き込み動作によるメモリセルの閾値分布の変化を示している。図１０に示すように本実施形態における第２書き込み動作において半導体記憶装置１０は、まずInternal data load（ＩＤＬ）を実行する。
【００７８】
ＩＤＬは、書き込み電圧を印加する前に、選択ワード線ＷＬに対応するメモリセルトランジスタＭＴに記憶されているデータを読み出す動作である。本実施形態ではセンスアンプモジュール１７が、電圧Ｍ１Ｒ、Ｍ２Ｒ、及びＭ３Ｒを用いた読み出し動作を実行する。電圧Ｍ１Ｒは電圧Ｖ１以上且つ電圧ＶＭ１以下であり、センスアンプ部ＳＡは電圧Ｍ１Ｒを用いた読み出し動作によりメモリセルトランジスタＭＴの閾値電圧が電圧Ｍ１Ｒ未満か否かを判定する。電圧Ｍ２Ｒは電圧Ｖ５以上且つ電圧ＶＭ２以下であり、センスアンプ部ＳＡは電圧Ｍ２Ｒを用いた読み出し動作によりメモリセルトランジスタＭＴの閾値電圧が電圧Ｍ２Ｒ未満か否かを判定する。電圧Ｍ３Ｒは、電圧Ｖ９以上且つ電圧ＶＭ３以下であり、センスアンプ部ＳＡは電圧Ｍ３Ｒを用いた読み出し動作によりメモリセルトランジスタＭＴの閾値電圧が電圧Ｍ３Ｒ未満か否かを判定する。
【００７９】
これにより、第１書き込み動作によって書き込まれた“１１”データ、“１０”データ、“００”データ、及び“０１”データが、センスアンプユニットＳＡＵ内のラッチ回路に復元される。具体的には、図６に示すようにデータＤＡＴ０の第１LowerページデータＭＬ１及び第１UpperページデータＭＵ１がそれぞれ、ラッチ回路ＣＤＬ及びＤＤＬに転送される。
【００８０】
そして半導体記憶装置１０は、ＩＤＬにより読み出された第１LowerページデータＭＬ１及び第１UpperページデータＭＵ１と、コントローラ２０から入力された第２LowerページデータＭＬ２及び第２UpperページデータＭＵ２とに基づいた、４ページの書き込み動作を実行する。
【００８１】
第２書き込み動作においてシーケンサ１４は、ベリファイ電圧として電圧Ｖ１、Ｖ２、Ｖ３、Ｖ４、Ｖ５、Ｖ６、Ｖ７、Ｖ８、Ｖ９、ＶＡ、ＶＢ、ＶＣ、ＶＤ、ＶＥ、及びＶＦを使用する。第２書き込み動作が実行されると、書き込むデータに基づいてメモリセルトランジスタＭＴの閾値電圧が上昇し、４つのレベルから１６個の閾値分布が形成される。例えば、“Ｍ０”レベルの閾値分布から“０”レベル、“１”レベル、“２”レベル、及び“３”レベルの閾値分布が形成される。“Ｍ１”レベルの閾値分布から“４”レベル、“５”レベル、“６”レベル、及び“７”レベルの閾値分布が形成される。“Ｍ２”レベルの閾値分布から“８”レベル、“９”レベル、“Ａ”レベル、及び“Ｂ”レベルの閾値分布が形成される。“Ｍ３”レベルの閾値分布から“Ｃ”レベル、“Ｄ”レベル、“Ｅ”レベル、及び“Ｆ”レベルの閾値分布が形成される。
【００８２】
（ステップＳ２２）
半導体記憶装置１０がステップＳ２１の第２書き込み動作を実行する一方で、ＲＡＭ２２の領域ＰＧ２及びＰＧ３がリリースされると、ＣＰＵ２３はホスト機器３０から受信した４ページのデータＤＡＴ２を、バッファメモリ２４からＲＡＭ２２に転送する。すると、例えば図６に示すようにデータＤＡＴ２のLowerページデータが領域ＰＧ０に保持され、Middleページデータが領域ＰＧ１に保持され、Upperページデータが領域ＰＧ２に保持され、Topページデータが領域ＰＧ３に保持される。
【００８３】
（ステップＳ２３）
次にコントローラ２０は、ＲＡＭ２２に保持された４ページのデータＤＡＴ２に対して、ステップＳ１１と同様のデータ処理を実行する。データ処理が実行されると、図６に示すように領域ＰＧ０にはデータＤＡＴ２の第１LowerページデータＭＬ１が保持され、領域ＰＧ１にはデータＤＡＴ２の第１UpperページデータＭＵ１が保持され、領域ＰＧ２にはデータＤＡＴ２の第２LowerページデータＭＬ２が保持され、領域ＰＧ３にはデータＤＡＴ２の第２UpperページデータＭＵ２が保持される。
【００８４】
（ステップＳ２４）
半導体記憶装置１０は、ステップＳ２１の第２書き込み動作が終了すると、レディビジー信号ＲＢｎを“Ｈ”レベルにして、コントローラ２０に書き込み動作の終了を通知する。また、第２書き込み動作が終了すると、図６に示すようにセンスアンプユニットＳＡＵ内のラッチ回路がリリースされる。
【００８５】
（ステップＳ２５）
次にコントローラ２０は、第１コマンドセットを発行して、半導体記憶装置１０に送信する。この第１コマンドセットでは、ワード線ＷＬ２を指定するアドレス情報ＡＤＤと、２ページのデータＤＡＴ２とを含む。半導体記憶装置１０が受信したコマンドセットのうち２ページのデータＤＡＴ２は、センスアンプユニットＳＡＵのラッチ回路に転送される。具体的には、図６に示すようにＲＡＭ２２の領域ＰＧ０及びＰＧ１に保持されたデータがそれぞれ、センスアンプユニットＳＡＵのラッチ回路ＡＤＬ及びＢＤＬに転送される。そしてＲＡＭ２２の領域ＰＧ０及びＰＧ１は、保持していたデータが転送されるとリリースされる。
【００８６】
（ステップＳ２６）
半導体記憶装置１０は、コントローラ２０から第１コマンドセットを受信すると、レディビジー信号ＲＢｎを“Ｌ”レベルにして、ワード線ＷＬ２を選択した第１書き込み動作を実行する。この第１書き込み動作はステップＳ１３と同様であり、これによりデータＤＡＴ２の第１LowerページデータＭＬ１と、第１UpperページデータＭＵ１とに基づいた２ビットのデータがワード線ＷＬ２に接続されたメモリセルトランジスタＭＴに書き込まれる。
【００８７】
（ステップＳ２７）
半導体記憶装置１０は、ステップＳ２６の第１書き込み動作が終了すると、レディビジー信号ＲＢｎを“Ｈ”レベルにして、コントローラ２０に書き込み動作の終了を通知する。また、第１書き込み動作が終了すると、図６に示すようにセンスアンプユニットＳＡＵ内のラッチ回路がリリースされる。
【００８８】
（ステップＳ２８）
コントローラ２０は、ワード線ＷＬ１に対する第１書き込み動作とワード線ＷＬ２に対する第１書き込み動作とが終了すると、第２コマンドセットを発行して半導体記憶装置１０に送信する。この第２コマンドセットでは、ワード線ＷＬ１を指定するアドレス情報ＡＤＤと、２ページのデータＤＡＴ１とを含む。半導体記憶装置１０が受信したコマンドセットのうち２ページのデータＤＡＴ１は、センスアンプユニットＳＡＵのラッチ回路に転送される。具体的には、図６に示すように、ＲＡＭ２２の領域ＰＧ４及びＰＧ５に保持されたデータがそれぞれ、センスアンプユニットＳＡＵのラッチ回路ＡＤＬ及びＢＤＬに転送される。ＲＡＭ２２の領域ＰＧ４及びＰＧ５は、保持していたデータが転送されるとリリースされる。
【００８９】
（ステップＳ２９）
半導体記憶装置１０は、コントローラ２０から第２コマンドセットを受信すると、レディビジー信号ＲＢｎを“Ｌ”レベルにして、ワード線ＷＬ１を選択した第２書き込み動作を実行する。この第２書き込み動作はステップＳ２１と同様であり、まず始めに図６に示すようにＩＤＬによってワード線ＷＬ１に記憶された２ページのデータが復元される。そして半導体記憶装置１０は、ＩＤＬにより読み出された第１LowerページデータＭＬ１及び第１UpperページデータＭＵ１と、コントローラ２０から入力された第２LowerページデータＭＬ２及び第２UpperページデータＭＵ２とに基づいて４ページの書き込み動作を実行する。
【００９０】
（ステップＳ３０）
半導体記憶装置１０がステップＳ２９の第２書き込み動作を実行する一方で、ＲＡＭ２２の領域ＰＧ４及びＰＧ５がリリースされると、ＣＰＵ２３はホスト機器３０から受信した４ページのデータＤＡＴ３を、バッファメモリ２４からＲＡＭ２２に転送する。すると、例えば図６に示すようにデータＤＡＴ２のLowerページデータが領域ＰＧ０に保持され、Middleページデータが領域ＰＧ１に保持され、Upperページデータが領域ＰＧ４に保持され、Topページデータが領域ＰＧ５に保持される。
【００９１】
（ステップＳ３１）
次にコントローラ２０は、ＲＡＭ２２に保持された４ページのデータＤＡＴ３に対して、ステップＳ１１と同様のデータ処理を実行する。データ処理が実行されると、図６に示すように、領域ＰＧ０にはデータＤＡＴ３の第１LowerページデータＭＬ１が保持され、領域ＰＧ１にはデータＤＡＴ３の第１UpperページデータＭＵ１が保持され、領域ＰＧ４にはデータＤＡＴ３の第２LowerページデータＭＬ２が保持され、領域ＰＧ５にはデータＤＡＴ３の第２UpperページデータＭＵ２が保持される。
【００９２】
（ステップＳ３２）
半導体記憶装置１０は、ステップＳ３１の第２書き込み動作が終了すると、レディビジー信号ＲＢｎを“Ｈ”レベルにして、コントローラ２０に書き込み動作の終了を通知する。また、第２書き込み動作が終了すると、図６に示すようにセンスアンプユニットＳＡＵ内のラッチ回路がリリースされる。
【００９３】
以降の動作は、ステップＳ１７〜Ｓ３２と同様の動作が繰り返される。そして、最後の４ページのデータに対応する第２書き込み動作が終了すると、メモリシステム１は書き込み動作を終了する。
【００９４】
＜コマンドシーケンスについて＞
次に、図１１及び図１２を用いて、上述した書き込み動作におけるコマンドシーケンス及び波形の詳細について説明する。図１１は図５に対応するコマンドシーケンスを示し、半導体記憶装置１０に入力される入出力信号Ｉ／Ｏを示している。図１２は第１及び第２書き込み動作の波形を示し、選択ワード線ＷＬに印加される電圧を示している。尚、以下の説明において、半導体記憶装置１０に入力されたコマンドＣＭＤはコマンドレジスタ１２に格納され、アドレス情報ＡＤＤはアドレスレジスタ１３に格納され、データＤＡＴは図７で示したラッチ回路に格納されるものとする。
【００９５】
図１１に示すように、ステップＳ１２においてまずコントローラ２０は、コマンド“０１ｈ”を発行して半導体記憶装置１０に送信する。コマンド“０１ｈ”は、続いて受信するデータＤＡＴが１ページ目の書き込みデータであることを示すコマンドである。次にコントローラ２０は、コマンド“８０ｈ”を発行して半導体記憶装置１０に送信する。コマンド“８０ｈ”は、半導体記憶装置１０に対して書き込み動作を命令するコマンドである。次にコントローラ２０は、ワード線ＷＬ０を指定するアドレス情報ＡＤＤと、第１LowerページデータＭＬ１に対応するデータＤＡＴ０とを、続けて半導体記憶装置１０に送信する。半導体記憶装置１０は、受信したデータＤＡＴ０をセンスアンプモジュール１７のラッチ回路ＸＤＬに保持する。次にコントローラ２０は、コマンド“ｘｙｈ”を発行して半導体記憶装置１０に送信する。コマンド“ｘｙｈ”は、コントローラ２０がここまで送信した情報が、複数ページの書き込み動作における１ページ分の情報に相当することを示すコマンドである。
【００９６】
コマンド“ｘｙｈ”がコマンドレジスタ１２に格納されると、シーケンサ１４はレディビジー信号ＲＢｎを“Ｌ”レベルにして、ラッチ回路ＸＤＬに保持された書き込みデータを例えばラッチ回路ＡＤＬに転送させる。そしてシーケンサ１４は、レディビジー信号ＲＢｎを“Ｈ”レベルにする。この動作は、図１１に“Dummy busy”と表示されている。
【００９７】
レディビジー信号ＲＢｎが“Ｈ”レベルになると、コントローラ２０はコマンド“０２ｈ”を発行して半導体記憶装置１０に送信する。コマンド“０２ｈ”は、続いて受信するデータＤＡＴが２ページ目の書き込みデータであることを示すコマンドである。次にコントローラ２０は、コマンド“８０ｈ”と、ワード線ＷＬ０を指定するアドレス情報ＡＤＤと、第１UpperページデータＭＵ１に対応するデータＤＡＴ０とを、続けて半導体記憶装置１０に送信する。半導体記憶装置１０は、受信したデータＤＡＴ０をセンスアンプモジュール１７のラッチ回路ＸＤＬに保持する。次にコントローラ２０は、コマンド“１０ｈ”を発行して半導体記憶装置１０に送信する。コマンド“１０ｈ”は、半導体記憶装置１０に対して書き込み動作の実行を指示するコマンドである。
【００９８】
上述したコマンド“０１ｈ”からコマンド“１０ｈ”までのグループが、第１コマンドセットに相当する。コマンド“１０ｈ”がコマンドレジスタ１２に格納されると、シーケンサ１４はレディビジー信号ＲＢｎを“Ｌ”レベルにして、ラッチ回路ＸＤＬに保持された書き込みデータを例えばラッチ回路ＢＤＬに転送させ、第１書き込み動作を実行する（ステップＳ１３）。図示するｔProg(MLC)は、第１書き込み動作の処理期間に相当する。この第１書き込み動作における波形の一例が、図１２に示されている。
【００９９】
図１２に示すように、まずロウデコーダ１６は選択ワード線ＷＬに対して電圧Ｖpgm１を印加する。電圧Ｖpgmはプログラム電圧であり、メモリセルトランジスタＭＴの電荷蓄積層に電子を注入することが可能な高電圧である。選択ワード線ＷＬに電圧Ｖpgm１が印加されると、選択ワード線ＷＬに接続されたメモリセルトランジスタＭＴの閾値電圧が、ゲート−チャネル間の電位差により電荷蓄積層に電子が注入され、上昇する。尚、選択ワード線ＷＬに接続されたメモリセルトランジスタＭＴのうち書き込み禁止のメモリセルトランジスタＭＴでは、例えば対応するセンスアンプユニットＳＡＵがビット線ＢＬを充電してゲート−チャネル間の電位差を小さくすることによって、閾値電圧の上昇が抑制される。次にロウデコーダ１６は、電圧Ｖvfyを印加する。電圧Ｖvfyはベリファイ電圧であり、例えば図９に示す電圧ＶＭ１である。
【０１００】
上述したプログラム電圧とベリファイ電圧とを印加する動作が、１回のプログラムループに相当する。そして、このようなプログラムループが、プログラム電圧の値をΔＶpgm１ずつ増加させて繰り返される。各プログラムループで印加される電圧Ｖvfyの値は、第１書き込み動作の進行に伴って、例えば電圧ＶＭ２又はＶＭ３に変更される。尚、１回のプログラムループで複数種類のベリファイ電圧が使用されても良い。シーケンサ１４は、例えば電圧ＶＭ３によるベリファイにパスすると、第１書き込み動作を終了して、レディビジー信号ＲＢｎを“Ｈ”レベルにする（ステップＳ１６）。
【０１０１】
その後、ステップＳ１７においてコントローラ２０は、第１コマンドセットを発行して半導体記憶装置１０に送信する。図１１に示すようにステップＳ１７における第１コマンドセットは、ステップＳ１２における第１コマンドセットに対して、ワード線ＷＬ０を指定するアドレス情報ＡＤＤからワード線ＷＬ１を指定するアドレス情報ＡＤＤに置き換え、且つデータＤＡＴ０に対応するページからデータＤＡＴ１に対応するページに置き換えたものと同様である。尚、以下に登場する同様のコマンドセットは、アドレス情報ＡＤＤとデータＤＡＴが異なる以外は同様の構成となるため、詳細な説明を省略する。半導体記憶装置１０は、第１コマンドセットに含まれたコマンド“１０ｈ”がコマンドレジスタ１２に格納されると、ワード線ＷＬ１を選択した第１書き込み動作を実行する（ステップＳ１８）。
【０１０２】
その後、ステップＳ２０においてコントローラ２０は、コマンド“０３ｈ”を発行して半導体記憶装置１０に送信する。コマンド“０３ｈ”は、続いて受信するデータＤＡＴが３ページ目の書き込みデータであることを示すコマンドである。次にコントローラ２０は、コマンド“８０ｈ”と、ワード線ＷＬ０を指定するアドレス情報ＡＤＤと、第２LowerページデータＭＬ２に対応するデータＤＡＴ０とを、続けて半導体記憶装置１０に送信する。半導体記憶装置１０は、受信したデータＤＡＴ０をセンスアンプモジュール１７のラッチ回路ＸＤＬに保持する。次にコントローラ２０は、コマンド“ｘｙｈ”を発行して半導体記憶装置１０に送信する。コマンド“ｘｙｈ”がコマンドレジスタ１２に格納されると、シーケンサ１４はレディビジー信号ＲＢｎを“Ｌ”レベルにして、ラッチ回路ＸＤＬに保持された書き込みデータを例えばラッチ回路ＡＤＬに転送させる。そしてシーケンサ１４は、レディビジー信号ＲＢｎを“Ｈ”レベルにする。
【０１０３】
レディビジー信号ＲＢｎが“Ｈ”レベルになると、コントローラ２０はコマンド“０４ｈ”を発行して半導体記憶装置１０に送信する。コマンド“０４ｈ”は、続いて受信するデータＤＡＴが４ページ目の書き込みデータであることを示すコマンドである。次にコントローラ２０は、コマンド“８０ｈ”と、ワード線ＷＬ０を指定するアドレス情報ＡＤＤと、第２UpperページデータＭＵ２に対応するデータＤＡＴ０とを、続けて半導体記憶装置１０に送信する。半導体記憶装置１０は、受信したデータＤＡＴ０をセンスアンプモジュール１７のラッチ回路ＸＤＬに保持する。次にコントローラ２０は、コマンド“１０ｈ”を発行して半導体記憶装置１０に送信する。
【０１０４】
上述したコマンド“０３ｈ”からコマンド“１０ｈ”までのグループが、第２コマンドセットに相当する。コマンド“１０ｈ”がコマンドレジスタ１２に格納されると、シーケンサ１４はレディビジー信号ＲＢｎを“Ｌ”レベルにして、ラッチ回路ＸＤＬに保持された書き込みデータを例えばラッチ回路ＢＤＬに転送させ、第２書き込み動作を実行する（ステップＳ２１）。図示するｔProg(QLC)は、第２書き込み動作の処理期間に相当する。この第２書き込み動作における波形の一例が、図１２に示されている。
【０１０５】
図１２に示すように、まずロウデコーダ１６は選択ワード線ＷＬに対して電圧Ｍ１Ｒ、Ｍ２Ｒ、及びＭ３Ｒを順に印加する。この動作がＩＤＬに対応し、センスアンプモジュール１７は、選択ワード線ＷＬに接続されたメモリセルトランジスタＭＴに記憶された２ページのデータを読み出す。読み出された２ページのデータは、例えばラッチ回路ＣＤＬ及びＤＤＬに保持される。続けてシーケンサ１４は、ラッチ回路ＡＤＬ、ＢＤＬ、ＣＤＬ、及びＤＤＬに保持された４ページのデータに基づいて、プログラムループを繰り返す。第２書き込み動作におけるプログラムループは、第１書き込み動作におけるプログラムループに対して、最初に印加するプログラム電圧の値と、プログラムループ毎にインクリメントするプログラム電圧の値と、使用するベリファイ電圧が異なる。
【０１０６】
具体的には、最初に印加されるプログラム電圧の値がＶpgm２であり、インクリメントするプログラム電圧の値がΔＶpgm２である。また、ベリファイ電圧として電圧Ｖ１、Ｖ２、Ｖ３、Ｖ４、Ｖ５、Ｖ６、Ｖ７、Ｖ８、Ｖ９、ＶＡ、ＶＢ、ＶＣ、ＶＤ、ＶＥ、及びＶＦのうち、値の小さい方から順にいくつかを選択して使用する。Ｖpgm２はＶpgm１より小さく、ΔＶpgm２はΔＶpgm１より小さい。このように第２書き込み動作は、第１書き込み動作より小さいプログラム電圧とΔＶpgmとを使用して、メモリセルトランジスタＭＴの閾値電圧を細かく制御する。そしてシーケンサ１４は、例えば電圧ＶＦによるベリファイにパスすると、第２書き込み動作を終了して、レディビジー信号ＲＢｎを“Ｈ”レベルにする（ステップＳ２４）。尚、図１１に示すステップＳ２５以降の動作は、上述した動作と同様のため、説明を省略する。
【０１０７】
［１−２−２］メモリシステム１の読み出し動作
次に、メモリシステム１の読み出し動作について説明する。本実施形態に従ったメモリシステム１の読み出し動作は、４ページ単位で実行される。すなわちコントローラ２０は、半導体記憶装置１０に対して４ページずつデータの読み出しを指示する。そしてコントローラ２０は半導体記憶装置１０から転送された読み出しデータをデコードし、デコードしたデータをホスト機器３０に送信する。
【０１０８】
以下に、図１３を用いてメモリシステム１における読み出し動作の詳細について説明する。図１３は、メモリシステム１における読み出し動作のフローチャートを示している。
【０１０９】
図１３に示すように、まずホスト機器３０は、指定するデータの読み出し動作をコントローラ２０に指示する（ステップＳ５０）。コントローラ２０は、受信した指示に基づいてコマンドＣＭＤ及びアドレス情報ＡＤＤを発行し、半導体記憶装置１０に送信する（ステップＳ５１）。そして半導体記憶装置１０は、受信したコマンドＣＭＤ及びアドレス情報ＡＤＤに基づいて読み出し動作を実行する（ステップＳ５２）。
【０１１０】
ステップＳ５１及びＳ５２におけるコマンドシーケンス及び読み出し動作の詳細を、図１４に示す。図１４は、半導体記憶装置１０に入力される入出力信号Ｉ／Ｏ、選択ワード線ＷＬに印加される電圧、並びにラッチ回路ＡＤＬ、ＢＤＬ、ＣＤＬ、及びＸＤＬの様子を示している。
【０１１１】
図１４に示すように、まずコントローラ２０は、コマンド“ｘｘｈ”を発行して半導体記憶装置１０に送信する。コマンド“ｘｘｈ”は、共通のワード線ＷＬに接続されたメモリセルトランジスタＭＴに対する複数ページの読み出し動作を指示するプリフィックスコマンドである。次にコントローラ２０は、コマンド“００ｈ”及びアドレス情報ＡＤＤを発行して、順に半導体記憶装置１０に送信する。コマンド“００ｈ”は、半導体記憶装置１０に対して読み出し動作を命令するコマンドである。続けてコントローラ２０は、コマンド“ｙｙｈ”を発行して半導体記憶装置１０に送信する。コマンド“ｙｙｈ”は、半導体記憶装置１０に読み出し動作の実行を指示するコマンドである。コマンド“ｙｙｈ”がコマンドレジスタ１２に格納されると、シーケンサ１４はレディビジー信号ＲＢｎを“Ｌ”レベルにして、読み出し動作を実行する。
【０１１２】
読み出し動作が開始すると、ロウデコーダ１６は、選択ワード線ＷＬに印加する電圧をＶ１、Ｖ２、Ｖ３、Ｖ４、Ｖ５、Ｖ６、Ｖ７、Ｖ８、Ｖ９、ＶＡ、ＶＢ、ＶＣ、ＶＤ、ＶＥ、及びＶＦの順に増加させる。そしてセンスアンプモジュール１７は、各電圧が印加されたタイミングで読み出し動作１Ｒ、２Ｒ、３Ｒ、４Ｒ、５Ｒ、６Ｒ、７Ｒ、８Ｒ、９Ｒ、ＡＲ、ＢＲ、ＣＲ、ＤＲ、ＥＲ、及びＦＲを実行する。
【０１１３】
本実施形態では、４−４−３−４コードから１−２−４−８コードに変換されたデータを読み出すため、第１LowerページデータＭＬ１が読み出し動作８Ｒによって確定し、第１UpperページデータＭＵ１が読み出し動作４Ｒ及びＣＲによって確定し、第２LowerページデータＭＬ２が読み出し動作２Ｒ、６Ｒ、ＡＲ、及びＥＲによって確定し、第２UpperページデータＭＵ２が読み出し動作１Ｒ、３Ｒ、５Ｒ、７Ｒ、９Ｒ、ＢＲ、ＤＲ、及びＦＲによって確定する。以下に、一例として、第１LowerページデータＭＬ１、第１UpperページデータＭＵ１、第２LowerページデータＭＬ２、及び第２UpperページデータＭＵ２をそれぞれ、ラッチ回路ＤＤＬ、ＣＤＬ、ＢＤＬ、及びＡＤＬに割り当てた場合を例に説明する。
【０１１４】
読み出し動作１Ｒで読み出されるデータは第２UpperページデータＭＵ２に対応するため、このデータはラッチ回路ＡＤＬに格納される。読み出し動作２Ｒで読み出されるデータは第２LowerページデータＭＬ２に対応するため、このデータはラッチ回路ＢＤＬに格納される。読み出し動作３Ｒで読み出されるデータは第２UpperページデータＭＵ２に対応するため、このデータは既にラッチ回路ＡＤＬに保持されているデータと併せて演算部ＯＰによって演算処理され、その結果がラッチ回路ＡＤＬに格納される。読み出し動作４Ｒで読み出されるデータは第１UpperページデータＭＵ１に対応するため、このデータはラッチ回路ＣＤＬに格納される。以下、同様に読み出し動作が進行し、必要に応じて演算処理が実行される。
【０１１５】
読み出し動作８Ｒが完了した時点で、各ラッチ回路ＤＤＬに最終的な第１LowerページデータＭＬ１が格納され、このデータが各ラッチ回路ＸＤＬに転送される。するとシーケンサ１４はレディビジー信号ＲＢｎを“Ｈ”レベルにする。これに応答したコントローラ２０は信号ＲＥをトグルし、読み出したデータをラッチ回路ＸＤＬからコントローラ２０に出力させる。そしてコントローラ２０は、第１UpperページデータＭＵ１を読み出すために、コマンド“ｚｚｈ”を発行して半導体記憶装置１０に送信する。コマンド“ｚｚｈ”がコマンドレジスタ１２に格納されると、シーケンサ１４はレディビジー信号ＲＢｎを“Ｌ”レベルにする。
【０１１６】
同様に、読み出し動作ＣＲが完了した時点で各ラッチ回路ＣＤＬに最終的な第１UpperページデータＭＵ１が格納され、読み出し動作ＥＲが完了した時点でラッチ回路ＢＤＬに最終的な第２LowerページデータＭＬ２が格納され、読み出し動作ＦＲが完了した時点でラッチ回路ＡＤＬに最終的な第２UpperページデータＭＵ２が格納される。これらのデータも、順次ラッチ回路ＸＤＬに転送され、上述した第１LowerページデータＭＬ１のデータ転送と同様の方法でコントローラ２０に出力される。そしてシーケンサ１４は、最後に確定する第２UpperページデータＭＵ２が出力された後のレディビジー信号ＲＢｎを“Ｈ”レベルに維持する。
【０１１７】
以上のように４ページのデータが半導体記憶装置１０から読み出され、コントローラ２０はこの読み出された４ページのデータをＲＡＭ２２に保持する。そして、図１３に示すようにＣＰＵ２３が、ＲＡＭ２２が保持する４ページのデータＤＡＴに対してコード変換を実行する（ステップＳ５３）。このステップＳ５３におけるコード変換は、書き込み動作において実行されたコード変換と逆の処理である。具体的には、１−２−４−８コードから４−４−３−４コードへのコード変換が実行される。これにより、読み出されたデータは、書き込み動作におけるコード変換前と同様の状態にデコードされる。
【０１１８】
次にＥＣＣ回路２５が、ＲＡＭ２２に保持された４ページのデータＤＡＴに対して、エラー訂正処理を実行する。具体的には、ページ毎に付与されたパリティに基づいて、ページ毎にデータのエラーを訂正する（ステップＳ５４）。このエラー訂正にフェイルした場合（ステップＳ５５、Ｎｏ）、コントローラ２０はリトライシーケンスを実行する。このエラー訂正にパスした場合（ステップＳ５５、Ｙｅｓ）、コントローラ２０はページ毎にランダマイズされたデータをデコードする（ステップＳ５６）。そしてコントローラ２０は、このデータをホスト機器３０に送信し（ステップＳ５７）、メモリシステム１は読み出し動作を終了する。尚、読み出すデータが５ページ以上になる場合、コントローラ２０は上述したステップＳ５１〜Ｓ５７の動作を繰り返す。
【０１１９】
［１−３］第１実施形態の効果
本実施形態に係るメモリシステム１によれば、書き込んだデータの信頼性を向上することが出来る。以下に、本効果の詳細について説明する。
【０１２０】
半導体記憶装置は、例えばＭＯＮＯＳ膜でメモリセルが形成される場合がある。ＭＯＮＯＳ膜を用いたメモリセルは、次のような特性が知られている。例えば、書き込み動作によってメモリセルの電荷蓄積層に電子を注入すると、書き込み動作が終了した後に、注入した電子の量に基づいて一定量の電子が抜ける初期落ちという現象が生じる。これにより、メモリセルの閾値電圧が下降し、メモリセルの閾値分布の下裾が広がる。また、データが書き込まれたメモリセルに対して隣接するメモリセルの書き込み動作が実行されると、隣接メモリセルの閾値電圧の上昇に伴いメモリセル間の寄生容量が変化する。これにより、既にデータが書き込まれたメモリセルの閾値電圧が上昇し、メモリセルの閾値分布の上裾が広がる。このように、メモリセルの閾値分布は、データが書き込まれた後に受ける影響によって、所望の値からずれてしまうことがある。
【０１２１】
そこで本実施形態に従ったメモリシステム１は、４ビットデータを保持可能なメモリセルを備えるＮＡＮＤ型フラッシュメモリにおいて、書き込むデータのコーディングとして１−２−４−８コードを適用する。データの割り付けに１−２−４−８コードを用いた場合、半導体記憶装置１０は、１ビットデータの書き込みでLowerページを形成することが出来、２ビットデータの書き込みでLower及びMiddleページを形成することが出来、３ビットデータの書き込みでLower、Middle、及びUpperページを形成することが出来る。つまり半導体記憶装置１０は、４ビットデータをページ毎に書き込むことが出来る。
【０１２２】
そして本実施形態に従ったメモリシステム１では、４ページのデータを２回の書き込み動作に分けてメモリセルに書き込む。具体的には、半導体記憶装置１０は、１回目の書き込み動作においてLower及びMiddleビットを含む２ページを書き込み（第１書き込み動作）、その後２回目の書き込み動作においてUpper及びTopビットを含む２ページを書き込む（第２書き込み動作）。
【０１２３】
また、本実施形態に従ったメモリシステム１では、第１書き込み動作と第２書き込み動作との間に、隣接するワード線ＷＬに対する第１書き込み動作を実行する。具体的には、例えばワード線ＷＬ０に対する第１書き込み動作を実行した場合、次に隣接するワード線ＷＬ１に対する第１書き込み動作を実行し、その後にワード線ＷＬ０に対する第２書き込み動作を実行する。
【０１２４】
このように、ワード線ＷＬ０に対する第１書き込み動作を実行した後に、ワード線ＷＬ１に対する第１書き込み動作を実行すると、ワード線ＷＬ１に対する第１書き込み動作を実行している間に、ワード線ＷＬ０に対応するメモリセルで初期落ちが生じる。また、ワード線ＷＬ０に対応するメモリセルは、ワード線ＷＬ１に対する第１書き込み動作による隣接メモリセルの閾値電圧の上昇に伴い、メモリセル間の寄生容量の影響を受ける。つまり、ワード線ＷＬ０に対する第２書き込み動作は、ワード線ＷＬ０に対する第１書き込み動作により生じる初期落ちと、ワード線ＷＬ１に対する第１書き込み動作により生じるメモリセル間の寄生容量の影響とを受けた状態から実行されるため、最終的に得られる閾値分布においては、これらの影響を無視することが出来る。
【０１２５】
また、第２書き込み動作は、第１書き込み動作によってある程度閾値電圧が上昇したメモリセルトランジスタＭＴに対する書き込み動作となるため、第２書き込み動作による閾値電圧の変動量が小さくなる。つまり第２書き込み動作では、電荷蓄積層に注入される電子の量が４ビット一括でデータを書き込む場合と比べて少なくなるため、メモリセルトランジスタＭＴの閾値電圧の初期落ち量と、隣接メモリセル間の寄生容量の影響とを軽減することが出来る。
【０１２６】
以上のように本実施形態に従ったメモリシステム１では、４ページのデータを２回に分けた書き込み動作を実行することにより、閾値電圧の初期落ちの影響とメモリセル間の寄生容量の影響とを抑制することが出来る。従ってメモリシステム１は、データを書き込んだメモリセルにおける閾値分布の広がりを抑制することが出来るため、データの信頼性を向上することが出来る。
【０１２７】
また、本実施形態における半導体記憶装置１０の書き込み動作では、第２書き込み動作で使用するLower及びMiddleビットのデータを、ＩＤＬによって当該メモリセルから読み出すことによって復元する。つまりコントローラ２０は、上述した第１及び第２書き込み動作によって４ページのデータを書き込む場合において、第１書き込み動作に使用する２ページのデータを半導体記憶装置１０に送信した後に破棄することが出来る。
【０１２８】
これによりコントローラ２０は、ＲＡＭ２２の記憶容量が最低６ページあれば、上述した書き込み動作を実行することが可能となる。つまり本実施形態に従ったメモリシステム１では、ＲＡＭ２２の記憶容量を抑制することが出来るため、コントローラ２０の回路面積を抑制することが出来る。
【０１２９】
さらに、本実施形態におけるメモリシステム１の書き込み動作では、コントローラ２０がホスト機器３０から受信した書き込みデータに対して、各種データ処理を実行する。具体的には、ホスト機器３０から受信した書き込みデータに対して、ＣＰＵ２３が４−４−３−４コードに変換し、ＥＣＣ回路２５がこのデータに対してパリティを付与する。そしてＣＰＵ２３が、パリティが付与されたデータに対して４−４−３−４コードから１−２−４−８コードへのコード変換を実行し、１−２−４−８コードにコード変換されたデータが半導体記憶装置１０に書き込まれる。そして読み出し動作では、１−２−４−８コードから４−４−３−４コードに再変換して、４−４−３−４コードに変換されたデータがエラー訂正される。
【０１３０】
これによりＥＣＣ回路２５は、１−２−４−８コードにおいて読み出し時に最もエラービットが発生し易いTopページのデータを、４ページ内で分散させた状態でエラー訂正処理を実行することが出来る。言い換えると、ＥＣＣ回路２５は、エラービット数をページ間で平均化してからエラー訂正処理を実行するため、エラー訂正が成功する可能性を高めることが出来る。従って本実施形態に係るメモリシステム１は、１−２−４−８コードを用いてデータを書き込んだ際の、読み出しデータの信頼性を向上することが出来る。
【０１３１】
尚、以上の説明において、メモリセルにＮＯＭＯＳ膜を使用した場合を例に説明したが、これに限定されない。例えば、フローティングゲートを利用したメモリセルを使用した場合においても、本実施形態の書き込み動作を実行することで、同様の効果を得る事が出来る。
【０１３２】
また、本実施形態で説明した第２書き込み動作において、ＩＤＬで用いる電圧Ｍ１Ｒ、Ｍ２Ｒ、及びＭ３Ｒは、読み出し動作時に使用される読み出し電圧とは異なっていても良い。例えば、電圧Ｍ１Ｒ、Ｍ２Ｒ、及びＭ３Ｒは、電圧Ｖ１、Ｖ２、…、及びＶＦと異なっていても良い。これにより電圧Ｍ１Ｒ、Ｍ２Ｒ、及びＭ３Ｒは、第１書き込み動作により形成された閾値分布に最適化された値に設定することが出来、ＩＤＬで発生するエラービット数を抑制することが出来る。
【０１３３】
［２］第２実施形態
次に、第２実施形態に従ったメモリシステム１について説明する。本実施形態に従ったメモリシステム１は、第１書き込み動作で３ページの書き込みを実行し、第２書き込み動作で３ページのＩＤＬを実行するものである。以下に、第１実施形態と異なる点を説明する。
［２−１］メモリシステム１の構成
まず、図１５を用いてメモリシステム１の構成について説明する。本実施形態に従ったメモリシステム１は、第１実施形態に従ったメモリシステム１に対して、コントローラ２０の備えるＲＡＭ２２の記憶容量が異なる。具体的には、図１５に示すようにＲＡＭ２２は領域ＰＧ０〜ＰＧ４を含み、第１実施形態におけるＲＡＭ２２よりも１ページ分少ない。その他の構成は、第１実施形態で説明した図１と同様である。
【０１３４】
［２−２］メモリシステム１の書き込み動作
＜書き込み動作の流れについて＞
次に、メモリシステム１の書き込み動作について説明する。本実施形態に従ったメモリシステム１の書き込み動作では、コントローラ２０がホスト機器３０から受け取った４ページのデータに対して各種データ処理を実行し、このデータを３ページと１ページに分けて半導体記憶装置１０に転送する。そして半導体記憶装置１０がワード線ＷＬを共有するメモリセルトランジスタＭＴに対して、第１書き込み動作で３ビットのデータを書き込み、第２書き込み動作で１ビットのデータを書き込む。
【０１３５】
以下に、図１６及び図１７を用いてメモリシステム１における書き込み動作の詳細について説明する。図１６は、メモリシステム１における書き込み動作のフローチャートを示し、図１７は、図１６に示す各ステップにおいてＲＡＭ２２及びセンスアンプユニットＳＡＵが保持するデータの一例を示している。
【０１３６】
（ステップＳ５０）
まず、第１実施形態で説明したステップＳ１０と同様に、コントローラ２０は、ホスト機器３０から受信した４ページの書き込みデータＤＡＴ０を、ページ単位でＲＡＭ２２の各領域ＰＧに格納する。例えば、図１７に示すようにデータＤＡＴ０のLowerページデータが領域ＰＧ０に保持され、Middleページデータが領域ＰＧ１に保持され、Upperページデータが領域ＰＧ２に保持され、Topページデータが領域ＰＧ３に保持される。
【０１３７】
（ステップＳ５１）
次にコントローラ２０は、ＲＡＭ２２に保持された４ページのデータＤＡＴ０に対して、第１実施形態で説明したステップＳ１１と同様のデータ処理を実行する。本実施形態におけるデータ処理では、図１８に示すようなコード変換が実行される。図１８に示すコード変換では、第１実施形態で説明した図８に対して、コード変換後の各ページに対応するデータの呼び方が異なる。
【０１３８】
図１８に示すように本実施形態では、コード変換後のLowerページデータを第１LowerページデータＴＬ１と呼び、Middleページデータを第１MiddleページデータＴＭ１と呼び、Upperページデータを第１UpperページデータＴＵ１と呼び、Topページデータを第２SingleページデータＳＬ２と呼ぶ。
【０１３９】
そして図１７に示すように、領域ＰＧ０にはデータＤＡＴ０の第１LowerページデータＴＬ１が保持され、領域ＰＧ１にはデータＤＡＴ０の第１MiddleページデータＴＭ１が保持され、領域ＰＧ２にはデータＤＡＴ０の第１UpperページデータＴＵ１が保持され、領域ＰＧ３にはデータＤＡＴ０の第２SingleページデータＳＬ２が保持される。
【０１４０】
（ステップＳ５２）
次にコントローラ２０は、第３コマンドセットを発行して、半導体記憶装置１０に送信する。この第３コマンドセットは、書き込みを命令するコマンドと、ワード線ＷＬ０を指定するアドレス情報ＡＤＤと、３ページのデータＤＡＴ０とを含む。半導体記憶装置１０が受信したコマンドセットのうち３ページのデータＤＡＴ０は、センスアンプユニットＳＡＵのラッチ回路に転送される。具体的には、図１７に示すようにＲＡＭ２２の領域ＰＧ０、ＰＧ１、及びＰＧ２に保持されたデータがそれぞれ、センスアンプユニットＳＡＵのラッチ回路ＡＤＬ、ＢＤＬ、及びＣＤＬに転送される。そしてＲＡＭ２２の領域ＰＧ０、ＰＧ１、及びＰＧ２は、保持していたデータが転送されるとリリースされる。
【０１４１】
（ステップＳ５３）
半導体記憶装置１０は、コントローラ２０から第３コマンドセットを受信すると、レディビジー信号ＲＢｎを“Ｌ”レベルにして、ワード線ＷＬ０を選択した第１書き込み動作を実行する。本実施形態における第１書き込み動作の概略を図１９に示す。図１９は、第１書き込み動作によるメモリセルの閾値分布の変化を示している。図１９に示すように第１書き込み動作では半導体記憶装置１０が、コントローラ２０から入力された第１LowerページデータＴＬ１、第１MiddleページデータＴＭ１、及び第１UpperページデータＴＵ１に基づいた、３ページの書き込み動作を実行する。
【０１４２】
第１書き込み動作を実行する前のメモリセルトランジスタＭＴの閾値電圧は、“ＥＲ”レベルに分布する。第１書き込み動作においてシーケンサ１４は、電圧ＶＭ１、ＶＭ２、ＶＭ３、ＶＭ４、ＶＭ５、ＶＭ６、及びＶＭ７をベリファイ電圧として使用する。
【０１４３】
本実施形態において電圧ＶＭ１は、“１１０”（“コード変換後のLowerビット／Middleビット／Upperビット”）データを書き込む場合に使用され、電圧Ｖ１以上且つ電圧Ｖ３未満である。電圧ＶＭ２は、“１００”データを書き込む場合に使用されるベリファイ電圧であり、電圧Ｖ３以上且つ電圧Ｖ５未満である。電圧ＶＭ３は、“１０１”データを書き込む場合に使用されるベリファイ電圧であり、電圧Ｖ５以上且つ電圧Ｖ７未満である。電圧ＶＭ４は、“００１”データを書き込む場合に使用されるベリファイ電圧であり、電圧Ｖ７以上且つ電圧Ｖ９未満である。電圧ＶＭ５は、“０００”データを書き込む場合に使用されるベリファイ電圧であり、電圧Ｖ９以上且つ電圧ＶＢ未満である。電圧ＶＭ６は、“０１０”データを書き込む場合に使用されるベリファイ電圧であり、電圧ＶＢ以上且つ電圧ＶＤ未満である。電圧ＶＭ７は、“０１１”データを書き込む場合に使用されるベリファイ電圧であり、電圧ＶＤ以上且つ電圧ＶＦ未満である。
【０１４４】
第１書き込み動作が実行されると、書き込むデータに基づいてメモリセルトランジスタＭＴの閾値電圧が上昇し、８つの閾値分布が形成される。図１９に示す“Ｍ０”レベルは、“１１１”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。“Ｍ１”レベルは、“１１０”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。“Ｍ２”レベルは、“１００”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。“Ｍ３”レベルは、“１０１”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。“Ｍ４”レベルは、“００１”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。“Ｍ５”レベルは、“０００”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。“Ｍ６”レベルは、“０１０”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。“Ｍ７”レベルは、“０１１”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。
【０１４５】
“Ｍ０”レベルは電圧Ｖ１未満であり、第１実施形態と同様に、メモリセルトランジスタＭＴの消去状態に相当する。つまり、第１書き込み動作において“１１１”データを書き込むメモリセルトランジスタＭＴでは、閾値電圧の上昇が抑制される。“Ｍ１”レベルにおける閾値電圧は、電圧ＶＭ１以上且つ電圧Ｖ３未満である。“Ｍ２”レベルにおける閾値電圧は、電圧ＶＭ２以上且つ電圧Ｖ５未満である。“Ｍ３”レベルにおける閾値電圧は、電圧ＶＭ３以上且つ電圧Ｖ７未満である。以下、同様である。
【０１４６】
このように、第１書き込み動作におけるベリファイに用いる電圧ＶＭ１、ＶＭ２、ＶＭ３、ＶＭ４、ＶＭ５、ＶＭ６、及びＶＭ７はそれぞれ、ベリファイをパスしたメモリセルトランジスタＭＴの閾値電圧が電圧Ｖ３、Ｖ５、Ｖ７、Ｖ９、ＶＢ、ＶＤ、及びＶＦを超えないように設定される。
【０１４７】
（ステップＳ５４）
半導体記憶装置１０がステップＳ５３の第１書き込み動作を実行する一方で、ＲＡＭ２２の領域ＰＧ０、ＰＧ１、及びＰＧ２がリリースされると、ＣＰＵ２３はホスト機器３０から受信した４ページのデータＤＡＴ１を、バッファメモリ２４からＲＡＭ２２に転送する。すると、例えば図１７に示すようにデータＤＡＴ１のLowerページデータが領域ＰＧ０に保持され、Middleページデータが領域ＰＧ１に保持され、Upperページデータが領域ＰＧ２に保持され、Topページデータが領域ＰＧ４に保持される。
【０１４８】
（ステップＳ５５）
次にコントローラ２０は、ＲＡＭ２２に保持された４ページのデータＤＡＴ１に対して、ステップＳ５１と同様のデータ処理を実行する。データ処理が実行されると、図１７に示すように、領域ＰＧ０にはデータＤＡＴ１の第１LowerページデータＴＬ１が保持され、領域ＰＧ１にはデータＤＡＴ１の第１MiddleページデータＴＭ１が保持され、領域ＰＧ２にはデータＤＡＴ１の第１UpperページデータＴＵ１が保持され、領域ＰＧ４にはデータＤＡＴ１の第２SingleページデータＳＬ２が保持される。
【０１４９】
（ステップＳ５６）
半導体記憶装置１０は、ステップＳ５３の第１書き込み動作が終了すると、レディビジー信号ＲＢｎを“Ｈ”レベルにして、コントローラ２０に書き込み動作の終了を通知する。また、第１書き込み動作が終了すると、図１７に示すようにセンスアンプユニットＳＡＵ内のラッチ回路がリリースされる。
【０１５０】
（ステップＳ５７）
次にコントローラ２０は、第３コマンドセットを発行し、半導体記憶装置１０に送信する。この第３コマンドセットでは、ワード線ＷＬ１を指定するアドレス情報ＡＤＤと、３ページ分のデータＤＡＴ１とを含む。半導体記憶装置１０が受信したコマンドセットのうち３ページのデータＤＡＴ１は、センスアンプユニットＳＡＵのラッチ回路に転送される。具体的には、図１７に示すように、ＲＡＭ２２の領域ＰＧ０、ＰＧ１、及びＰＧ２に保持されたデータがそれぞれ、センスアンプユニットＳＡＵのラッチ回路ＡＤＬ、ＢＤＬ、及びＣＤＬに転送される。そしてＲＡＭ２２の領域ＰＧ０、ＰＧ１、及びＰＧ２は、保持していたデータが転送されるとリリースされる。
【０１５１】
（ステップＳ５８）
半導体記憶装置１０は、コントローラ２０から第３コマンドセットを受信すると、レディビジー信号ＲＢｎを“Ｌ”レベルにして、ワード線ＷＬ１を選択した第１書き込み動作を実行する。この第１書き込み動作はステップＳ５３と同様であり、これによりデータＤＡＴ１の第１LowerページデータＴＬ１と、第１MiddleページデータＴＭ１と、第１UpperページデータＴＵ１とに基づいた３ページのデータがワード線ＷＬ１に接続されたメモリセルトランジスタＭＴに書き込まれる。
【０１５２】
（ステップＳ５９）
半導体記憶装置１０は、ステップＳ５８の第１書き込み動作が終了すると、レディビジー信号ＲＢｎを“Ｈ”レベルにして、コントローラ２０に書き込み動作の終了を通知する。また、第１書き込み動作が終了すると、図１７に示すようにセンスアンプユニットＳＡＵ内のラッチ回路がリリースされる。
【０１５３】
（ステップＳ６０）
コントローラ２０は、ワード線ＷＬ０に対する第１書き込み動作とワード線ＷＬ１に対する第１書き込み動作とが終了すると、第４コマンドセットを発行して半導体記憶装置１０に送信する。この第４コマンドセットは、書き込みを命令するコマンドと、ワード線ＷＬ０を指定するアドレス情報ＡＤＤと、１ページのデータＤＡＴ０とを含む。半導体記憶装置１０が受信したコマンドセットのうち１ページのデータＤＡＴ０は、センスアンプユニットＳＡＵのラッチ回路に転送される。具体的には、図１７に示すように、ＲＡＭ２２の領域ＰＧ３に保持されたデータが、センスアンプユニットＳＡＵのラッチ回路ＡＤＬに転送される。ＲＡＭ２２の領域ＰＧ３は、保持していたデータが転送されるとリリースされる。
【０１５４】
（ステップＳ６１）
半導体記憶装置１０は、コントローラ２０から第２コマンドセットを受信すると、レディビジー信号ＲＢｎを“Ｌ”レベルにして、ワード線ＷＬ０を選択した第２書き込み動作を実行する。本実施形態における第２書き込み動作の概略を図２０に示す。図２０は、第２書き込み動作によるメモリセルの閾値分布の変化を示している。図２０に示すように本実施形態における第２書き込み動作において半導体記憶装置１０は、まずInternal data load（ＩＤＬ）を実行する。
【０１５５】
本実施形態におけるＩＤＬでは、シーケンサ１４が、電圧Ｍ１Ｒ、Ｍ２Ｒ、Ｍ３Ｒ、Ｍ４Ｒ、Ｍ５Ｒ、Ｍ６Ｒ、及びＭ７Ｒを用いた読み出し動作を実行する。電圧Ｍ１Ｒは電圧Ｖ１以上且つ電圧ＶＭ１以下であり、センスアンプ部ＳＡは電圧Ｍ１Ｒを用いた読み出し動作によりメモリセルトランジスタＭＴの閾値電圧が電圧Ｍ１Ｒ未満か否かを判定する。電圧Ｍ２Ｒは電圧Ｖ３以上且つ電圧ＶＭ２以下であり、センスアンプ部ＳＡは電圧Ｍ２Ｒを用いた読み出し動作によりメモリセルトランジスタＭＴの閾値電圧が電圧Ｍ２Ｒ未満か否かを判定する。電圧Ｍ３Ｒは、電圧Ｖ５以上且つ電圧ＶＭ３以下であり、センスアンプ部ＳＡは電圧Ｍ３Ｒを用いた読み出し動作によりメモリセルトランジスタＭＴの閾値電圧が電圧Ｍ３Ｒ未満か否かを判定する。以下、同様である。
【０１５６】
これにより、第１書き込み動作によって書き込まれた“１１１”データ、“１１０”データ、“１００”データ、“１０１”データ、“００１”データ、“０００”データ、“０１０”データ、及び“０１１”データが、センスアンプモジュールＳＡＵ内のラッチ回路に復元される。具体的には、図１７に示すようにデータＤＡＴ０の第１LowerページデータＴＬ１、第１MiddleページデータＴＭ１、及び第１UpperページデータＴＵ１がそれぞれ、ラッチ回路ＢＤＬ、ＣＤＬ、及びＤＤＬに転送される。
【０１５７】
そして半導体記憶装置１０は、ＩＤＬにより読み出された第１LowerページデータＴＬ１、第１MiddleページデータＴＭ１、及び第１UpperページデータＴＵ１と、コントローラ２０から入力された第２SingleページデータＳＬ２とに基づいた、４ページの書き込み動作を実行する。
【０１５８】
第２書き込み動作においてシーケンサ１４は、第１実施形態と同様に、ベリファイ電圧として電圧Ｖ１、Ｖ２、Ｖ３、Ｖ４、Ｖ５、Ｖ６、Ｖ７、Ｖ８、Ｖ９、ＶＡ、ＶＢ、ＶＣ、ＶＤ、ＶＥ、及びＶＦを使用する。第２書き込み動作が実行されると、書き込むデータに基づいてメモリセルトランジスタＭＴの閾値電圧が上昇し、８つのレベルから１６個の閾値分布が形成される。例えば、“Ｍ０”レベルの閾値分布から“０”レベル、及び“１”レベルの閾値分布が形成される。“Ｍ１”レベルの閾値分布から“２”レベル、及び“３”レベルの閾値分布が形成される。“Ｍ２”レベルの閾値分布から“４”レベル、及び“５”レベルの閾値分布が形成される。“Ｍ３”レベルの閾値分布から“６”レベル、及び“７”レベルの閾値分布が形成される。以下、同様である。
【０１５９】
（ステップＳ６２）
半導体記憶装置１０がステップＳ６１の第２書き込み動作を実行する一方で、ＲＡＭ２２の領域ＰＧ３がリリースされると、ＣＰＵ２３はホスト機器３０から受信した４ページのデータＤＡＴ２を、バッファメモリ２４からＲＡＭ２２に転送する。すると、例えば図１７に示すようにデータＤＡＴ２のLowerページデータが領域ＰＧ０に保持され、Middleページデータが領域ＰＧ１に保持され、Upperページデータが領域ＰＧ２に保持され、Topページデータが領域ＰＧ３に保持される。
【０１６０】
（ステップＳ６３）
次にコントローラ２０は、ＲＡＭ２２に保持された４ページのデータＤＡＴ２に対して、ステップＳ５１と同様のデータ処理を実行する。データ処理が実行されると、図１７に示すように領域ＰＧ０にはデータＤＡＴ２の第１LowerページデータＴＬ１が保持され、領域ＰＧ１にはデータＤＡＴ２の第１MiddleページデータＴＭ１が保持され、領域ＰＧ２にはデータＤＡＴ２の第１UpperページデータＴＵ１が保持され、領域ＰＧ３にはデータＤＡＴ２の第２SingleページデータＳＬ２が保持される。
【０１６１】
（ステップＳ６４）
半導体記憶装置１０は、ステップ２１の第２書き込み動作が終了すると、レディビジー信号ＲＢｎを“Ｈ”レベルにして、コントローラ２０に書き込み動作の終了を通知する。また、第２書き込み動作が終了すると、図１７に示すようにセンスアンプユニットＳＡＵ内のラッチ回路がリリースされる。
【０１６２】
（ステップＳ６５）
次にコントローラ２０は、第３コマンドセットを発行して、半導体記憶装置１０に送信する。この第３コマンドセットでは、ワード線ＷＬ２を指定するアドレス情報ＡＤＤと、３ページのデータＤＡＴ２とを含む。半導体記憶装置１０が受信したコマンドセットのうち３ページのデータＤＡＴ２は、センスアンプユニットＳＡＵのラッチ回路に転送される。具体的には、図１７に示すようにＲＡＭ２２の領域ＰＧ０、ＰＧ１、及びＰＧ２に保持されたデータがそれぞれ、センスアンプユニットＳＡＵのラッチ回路ＡＤＬ、ＢＤＬ、及びＣＤＬに転送される。そしてＲＡＭ２２の領域ＰＧ０、ＰＧ１、及びＰＧ２は、保持していたデータが転送されるとリリースされる。
【０１６３】
（ステップＳ６６）
半導体記憶装置１０は、コントローラ２０から第１コマンドセットを受信すると、レディビジー信号ＲＢｎを“Ｌ”レベルにして、ワード線ＷＬ２を選択した第１書き込み動作を実行する。この第１書き込み動作はステップＳ５３と同様であり、これによりデータＤＡＴ２第１LowerページデータＴＬ１、第１MiddleページデータＴＭ１、及び第１UpperページデータＴＵ１に基づいた３ビットのデータが、ワード線ＷＬ２に接続されたメモリセルトランジスタＭＴに書き込まれる。
【０１６４】
（ステップＳ６７）
半導体記憶装置１０は、ステップＳ６６の第１書き込み動作が終了すると、レディビジー信号ＲＢｎを“Ｈ”レベルにして、コントローラ２０に書き込み動作の終了を通知する。また、第１書き込み動作が終了すると、図１７に示すようにセンスアンプユニットＳＡＵ内のラッチ回路がリリースされる。
【０１６５】
（ステップＳ６８）
コントローラ２０は、ワード線ＷＬ１に対する第１書き込み動作とワード線ＷＬ２に対する第１書き込み動作とが終了すると、第４コマンドセットを発行して半導体記憶装置１０に送信する。この第４コマンドセットでは、ワード線ＷＬ１を指定するアドレス情報ＡＤＤと、１ページのデータＤＡＴ１とを含む。半導体記憶装置１０が受信したコマンドセットのうち１ページのデータＤＡＴ１は、センスアンプユニットＳＡＵのラッチ回路に転送される。具体的には、図１７に示すように、ＲＡＭ２２の領域ＰＧ４に保持されたデータが、センスアンプユニットＳＡＵのラッチ回路ＡＤＬに転送される。ＲＡＭ２２の領域ＰＧ４は、保持していたデータが転送されるとリリースされる。
【０１６６】
（ステップＳ６９）
半導体記憶装置１０は、コントローラ２０から第２コマンドセットを受信すると、レディビジー信号ＲＢｎを“Ｌ”レベルにして、ワード線ＷＬ１を選択した第２書き込み動作を実行する。この第２書き込み動作はステップＳ６１と同様であり、まず始めに図１７に示すようにＩＤＬによってワード線ＷＬ１に記憶された３ページのデータが復元される。そして半導体記憶装置１０は、ＩＤＬにより読み出された第１LowerページデータＴＬ１、第１MiddleページデータＴＭ１、及び第１UpperページデータＴＵ１と、コントローラ２０から入力された第２SingleページデータＳＬ２とに基づいて４ページの書き込み動作を実行する。
【０１６７】
（ステップＳ７０）
半導体記憶装置１０がステップＳ６９の第２書き込み動作を実行する一方で、ＲＡＭ２２の領域ＰＧ４がリリースされると、ＣＰＵ２３はホスト機器３０から受信した４ページのデータＤＡＴ３を、バッファメモリ２４からＲＡＭ２２に転送する。すると、例えば図１７に示すようにデータＤＡＴ２のLowerページデータが領域ＰＧ０に保持され、Middleページデータが領域ＰＧ１に保持され、Upperページデータが領域ＰＧ２に保持され、Topページデータが領域ＰＧ４に保持される。
【０１６８】
（ステップＳ７１）
次にコントローラ２０は、ＲＡＭ２２に保持された４ページのデータＤＡＴ３に対して、ステップＳ５１と同様のデータ処理を実行する。データ処理が実行されると、図１７に示すように、領域ＰＧ０にはデータＤＡＴ３の第１LowerページデータＴＬ１が保持され、領域ＰＧ１にはデータＤＡＴ３の第１MiddleページデータＴＭ１が保持され、領域ＰＧ２にはデータＤＡＴ３の第１UpperページデータＴＵ１が保持され、領域ＰＧ３にはデータＤＡＴ３の第２SingleページデータＳＬ２が保持される。
【０１６９】
（ステップＳ７２）
半導体記憶装置１０は、ステップ３１の第２書き込み動作が終了すると、レディビジー信号ＲＢｎを“Ｈ”レベルにして、コントローラ２０に書き込み動作の終了を通知する。また、第２書き込み動作が終了すると、図１７に示すようにセンスアンプユニットＳＡＵ内のラッチ回路がリリースされる。
【０１７０】
以降の動作は、ステップＳ５７〜Ｓ７２と同様の動作が繰り返される。そして、最後の４ページのデータに対応する第２書き込み動作が終了すると、メモリシステム１は書き込み動作を終了する。
＜コマンドシーケンスについて＞
次に、図２１及び図２２を用いて、上述した書き込み動作におけるコマンドシーケンス及び波形の詳細について説明する。図２１は図１６に対応するコマンドシーケンスを示し、半導体記憶装置１０に入力される入出力信号Ｉ／Ｏを示している。図２２は第１及び第２書き込み動作の波形を示し、選択ワード線ＷＬに印加される電圧を示している。
【０１７１】
図２１に示すように、ステップＳ５２においてまずコントローラ２０は、コマンド“０１ｈ”と、コマンド“８０ｈ”と、ワード線ＷＬ０を指定するアドレス情報ＡＤＤと、第１LowerページデータＴＬ１に対応するデータＤＡＴ０と、コマンド“ｘｙｈ”とを、順に半導体記憶装置１０に送信する。コマンド“ｘｙｈ”がコマンドレジスタ１２に格納されると、シーケンサ１４はレディビジー信号ＲＢｎを“Ｌ”レベルにして、ラッチ回路ＸＤＬに保持された書き込みデータを例えばラッチ回路ＡＤＬに転送させる。
【０１７２】
そして、レディビジー信号ＲＢｎが“Ｈ”レベルになると、コントローラ２０はコマンド“０２ｈ”と、コマンド“８０ｈ”と、ワード線ＷＬ０を指定するアドレス情報ＡＤＤと、第１MiddleページデータＴＭ１に対応するデータＤＡＴ０と、コマンド“ｘｙｈ”とを、順に半導体記憶装置１０に送信する。コマンド“ｘｙｈ”がコマンドレジスタ１２に格納されると、シーケンサ１４はレディビジー信号ＲＢｎを“Ｌ”レベルにして、ラッチ回路ＸＤＬに保持された書き込みデータを例えばラッチ回路ＢＤＬに転送させる。
【０１７３】
そして、レディビジー信号ＲＢｎが“Ｈ”レベルになると、コントローラ２０はコマンド“０３ｈ”と、コマンド“８０ｈ”と、ワード線ＷＬ０を指定するアドレス情報ＡＤＤと、第１UpperページデータＴＵ１に対応するデータＤＡＴ０と、コマンド“１０ｈ”とを、順に半導体記憶装置１０に送信する。
【０１７４】
上述したコマンド“０１ｈ”からコマンド“１０ｈ”までのグループが、第３コマンドセットに相当する。コマンド“１０ｈ”がコマンドレジスタ１２に格納されると、シーケンサ１４はレディビジー信号ＲＢｎを“Ｌ”レベルにして、ラッチ回路ＸＤＬに保持された書き込みデータを例えばラッチ回路ＣＤＬに転送させ、第１書き込み動作を実行する（ステップＳ５３）。図示するｔProg(TLC)は、第１書き込み動作の処理期間に相当する。この第１書き込み動作における波形の一例が、図２２に示されている。図２２に示すように、本実施形態における第１書き込み動作の波形は、第１実施形態で説明した図１２に示された第１書き込み動作の波形と同様である。
【０１７５】
その後、ステップＳ５７においてコントローラ２０は、ワード線ＷＬ１を選択するアドレス情報ＡＤＤとデータＤＡＴ１とを含む第３コマンドセットを発行して半導体記憶装置１０に送信する。半導体記憶装置１０は、第３コマンドセットに含まれたコマンド“１０ｈ”がコマンドレジスタ１２に格納されると、ワード線ＷＬ１を選択した第１書き込み動作を実行する（ステップＳ５８）。
【０１７６】
その後、ステップＳ６０においてコントローラ２０は、コマンド“０４ｈ”と、コマンド“８０ｈ”と、ワード線ＷＬ０を指定するアドレス情報ＡＤＤと、第２SingleページデータＳＬ２に対応するデータＤＡＴ０と、コマンド“１０ｈ”とを、順に半導体記憶装置１０に送信する。このコマンド“０４ｈ”からコマンド“１０ｈ”までのグループが、第４コマンドセットに相当する。コマンド“１０ｈ”がコマンドレジスタ１２に格納されると、シーケンサ１４はレディビジー信号ＲＢｎを“Ｌ”レベルにして、ラッチ回路ＸＤＬに保持された書き込みデータを例えばラッチ回路ＡＤＬに転送させ、第２書き込み動作を実行する（ステップＳ６１）。図示するｔProg(QLC)は、第２書き込み動作の処理期間に相当する。この第２書き込み動作における波形の一例が、図２２に示されている。
【０１７７】
図２２に示すように、まずロウデコーダ１６は選択ワード線ＷＬに対して電圧Ｍ１Ｒ、Ｍ２Ｒ、Ｍ３Ｒ、Ｍ４Ｒ、Ｍ５Ｒ、Ｍ６Ｒ、及びＭ７Ｒを順に印加する。この動作がＩＤＬに対応し、センスアンプモジュール１７は、選択ワード線ＷＬに接続されたメモリセルトランジスタＭＴに記憶された３ページのデータを読み出す。読み出された３ページのデータは、例えばラッチ回路ＢＤＬ、ＣＤＬ、及びＤＤＬに保持される。続けてシーケンサ１４は、ラッチ回路ＡＤＬ、ＢＤＬ、ＣＤＬ、及びＤＤＬに保持された４ページのデータに基づいて、プログラムループを繰り返す。第２書き込み動作におけるプログラムループは、第１実施形態で図１２を用いて説明した第２書き込み動作のプログラムループと同様である。また、第１及び第２書き込み動作におけるプログラム電圧及びΔＶpgmの大小関係も第１実施形態と同様のため、説明を省略する。
【０１７８】
そしてシーケンサ１４は、例えば電圧ＶＦによるベリファイにパスすると、第２書き込み動作を終了して、レディビジー信号ＲＢｎを“Ｈ”レベルにする（ステップＳ６４）。尚、図２１に示すステップＳ６５以降の動作は、上述した動作と同様のため、説明を省略する。
【０１７９】
［２−３］第２実施形態の効果
本実施形態に従ったメモリシステム１によれば、第１実施形態よりもデータの信頼性を向上することが出来る。以下に、本効果の詳細について説明する。
【０１８０】
本実施形態に従ったメモリシステム１では、第１実施形態と同様に、コントローラ２０がホスト機器３０から受信した書き込みデータに対して、コード変換を含むデータ処理を実行する。さらに本実施形態では、第１書き込み動作においてコントローラ２０が３ページデータを半導体記憶装置１０に送信し、半導体記憶装置１０がコード変換後のLower、Middle、及びUpperビットを含む３ページデータを書き込む。そして、第２書き込み動作においてコントローラ２０がコード変換後のTopビットを含む１ページデータを半導体記憶装置１０に送信し、半導体記憶装置１０がＩＤＬにより当該メモリセルから読み出したコード変換後のLower、Middle、及びUpperビットを含む３ページデータと、コントローラ２０から受信したコード変換後のTopビットを含む１ページデータとに基づいて、メモリセルに計４ページのデータを書き込む。
【０１８１】
これにより本実施形態に従ったメモリシステム１は、第１実施形態と同様に、４ページのデータを２回に分けた書き込み動作を実行することが出来る。また、本実施形態では第１書き込み動作において３ページのデータを書き込むため、その後の第２書き込み動作によって３ビット分のデータ書き込みにより発生する閾値電圧の初期落ちの影響とメモリセル間の寄生容量の影響とを、最終的に得られる閾値分布においては無視することが出来る。従って、本実施形態に従ったメモリシステム１は、第１実施形態よりもメモリセルにおける閾値分布の広がりを抑制することが出来るため、第１実施形態よりもデータの信頼性を向上することが出来る。
【０１８２】
また、本実施形態に従ったメモリシステム１では、第２書き込み動作において、第１書き込み動作によって書き込んだコード変換後のLower、Middle、及びUpperビットのデータを、ＩＤＬによって当該メモリセルから読み出すことによって復元する。つまりコントローラ２０は、第１書き込み動作に使用する３ページのデータを、半導体記憶装置１０に送信した後に破棄することが出来る。
【０１８３】
これによりコントローラ２０は、ＲＡＭ２２の記憶容量が最低５ページあれば、上述した書き込み動作を実行することが可能となる。つまり本実施形態に従ったメモリシステム１では、ＲＡＭ２２の記憶容量を抑制することが出来るため、第１実施形態よりもコントローラ２０の回路面積を抑制することが出来る。
【０１８４】
［３］第３実施形態
次に、第３実施形態に従ったメモリシステム１について説明する。本実施形態に従ったメモリシステム１は、第１実施形態で説明した第１書き込み動作において、半導体記憶装置１０が２ビットデータの書き込みと３ビットデータの書き込みとが混在するものである。以下に、第１及び第２実施形態と異なる点を説明する。
【０１８５】
［３−１］メモリシステム１の書き込み動作
＜書き込み動作の流れについて＞
まず、メモリシステム１の書き込み動作について説明する。本実施形態に従ったメモリシステム１の書き込み動作では、コントローラ２０がホスト機器３０から受け取った４ページのデータに対して各種データ処理を実行し、このデータのうち３ページをまず半導体記憶装置１０に転送する。このときコントローラ２０は、コード変換後の３ページデータのうち上位ページに対応するデータを、保持したままにする。そして半導体記憶装置１０は、２ページの書き込みと、さらに２ページのうち最上位のレベルに対応するデータのみ、３ビットのデータを用いた第１書き込み動作を実行する。その後コントローラ２０は、保持する２ページのデータを送信し、半導体記憶装置１０がＩＤＬによって読み出した２ページのデータと併せて第２書き込み動作を実行する。
【０１８６】
以下に、図２３及び図２４を用いてメモリシステム１における書き込み動作の詳細について説明する。図２３は、メモリシステム１における書き込み動作のフローチャートを示し、図２４は、図２３に示す各ステップにおいてＲＡＭ２２及びセンスアンプユニットＳＡＵが保持するデータの一例を示している。
【０１８７】
図２３に示すステップＳ８０〜Ｓ１０２は、第１実施形態で説明したステップＳ１０〜Ｓ３２と同様の動作である。以下に、第１実施形態で説明した図５と異なる点のみ詳細を説明する。
【０１８８】
（ステップＳ８０及びＳ８１）
第１実施形態で説明したステップＳ１０及びＳ１１と同様であり、コントローラ２０が受信した４ページのデータＤＡＴ０に対してコード変換を実行する。
【０１８９】
（ステップＳ８２）
コントローラ２０は、ワード線ＷＬ０を選択し、且つ３ページのデータＤＡＴ０を含む第３コマンドセットを半導体記憶装置１０に送信する。半導体記憶装置１０が受信したコマンドセットのうち３ページのデータＤＡＴ０は、センスアンプユニットＳＡＵのラッチ回路に転送される。具体的には、図２４に示すようにＲＡＭ２２の領域ＰＧ０、ＰＧ１、及びＰＧ２に保持されたデータがそれぞれ、センスアンプユニットＳＡＵのラッチ回路ＡＤＬ、ＢＤＬ、及びＣＤＬに転送される。そしてＲＡＭ２２は、３ページのデータＤＡＴ０が転送されると、領域ＰＧ０及びＰＧ１に保持されたデータをリリースし、領域ＰＧ２に保持されたデータを保持し続ける。
【０１９０】
（ステップＳ８３）
半導体記憶装置１０は、コントローラ２０から第３コマンドセットを受信すると、レディビジー信号ＲＢｎを“Ｌ”レベルにして、ワード線ＷＬ０を選択した第１書き込み動作を実行する。本実施形態における第１書き込み動作の概略を図２５に示す。図２５は、第１書き込み動作によるメモリセルの閾値分布の変化を示している。図２５に示すように第１書き込み動作では半導体記憶装置１０が、コントローラ２０から入力された第１LowerページデータＭＬ１、及び第１UpperページデータＭＵ１に基づいた２ページの書き込み動作と、さらに第２LowerページデータＭＬ２の一部を使用した書き込み動作とを実行する。
【０１９１】
第１書き込み動作を実行する前のメモリセルトランジスタＭＴの閾値電圧は、“ＥＲ”レベルに分布する。第１書き込み動作においてシーケンサ１４は、電圧ＶＭ１、ＶＭ２、ＶＭ３、ＶＭ４をベリファイ電圧として使用する。
【０１９２】
本実施形態において電圧ＶＭ１は、“１１”(コード変換後のLowerビット／Middleビット）データを書き込む場合に使用され、電圧Ｖ１以上且つ電圧Ｖ５未満である。電圧ＶＭ２は、“１０”データを書き込む場合に使用されるベリファイ電圧であり、電圧Ｖ５以上且つ電圧Ｖ９未満である。電圧ＶＭ３は、“０１０”(Lowerビット／Middleビット／Upperビット）データを書き込む場合に使用されるベリファイ電圧であり、電圧Ｖ９以上且つ電圧ＶＤ未満である。電圧ＶＭ４は、“０１１”データを書き込む場合に使用されるベリファイ電圧であり、電圧ＶＤ以上且つ電圧ＶＦ未満である。このように、低い閾値電圧に対応するデータは、２ビットのデータに基づいた書き込み動作を実行し、高い閾値電圧に対応するデータは、３ビットのデータに基づいた書き込み動作を実行する。
【０１９３】
第１書き込み動作が実行されると、書き込むデータに基づいてメモリセルトランジスタＭＴの閾値電圧が上昇し、５つの閾値分布が形成される。図２５に示す“Ｍ０”レベルは、“１１”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。“Ｍ１”レベルは、“１０”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。“Ｍ２”レベルは、“００”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。“Ｍ３”レベルは、“０１０”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。“Ｍ４”レベルは、“０１１”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。
【０１９４】
“Ｍ０”レベルは電圧Ｖ１未満であり、第１実施形態と同様に、メモリセルトランジスタＭＴの消去状態に相当する。つまり、第１書き込み動作において“１１”データを書き込むメモリセルトランジスタＭＴでは、閾値電圧の上昇が抑制される。“Ｍ１”レベルにおける閾値電圧は、電圧ＶＭ１以上且つ電圧Ｖ５未満である。“Ｍ２”レベルにおける閾値電圧は、電圧ＶＭ２以上且つ電圧Ｖ９未満である。“Ｍ３”レベルにおける閾値電圧は、電圧ＶＭ３以上且つ電圧ＶＤ未満である。“Ｍ４”レベルにおける閾値電圧は、電圧ＶＭ４以上且つ電圧ＶＦ未満である。
【０１９５】
このように、第１書き込み動作におけるベリファイに用いる電圧ＶＭ１、ＶＭ２、ＶＭ３、及びＶＭ４はそれぞれ、ベリファイをパスしたメモリセルトランジスタＭＴの閾値電圧が電圧Ｖ５、Ｖ９、ＶＤ、及びＶＦを超えないように設定される。
【０１９６】
尚、上記説明において、第１書き込み動作で電圧ＶＭ４によるベリファイを実行する場合を例に説明したが、これに限定されない。例えば、電圧ＶＭ４によるベリファイは実行しなくても良い。この場合に半導体記憶装置１０は、電圧ＶＭ３によるベリファイにパスした後に、任意の回数のプログラムパルスを印加して、第１書き込み動作を終了する。
【０１９７】
（ステップＳ８４〜Ｓ８６）
第１実施形態で説明したステップＳ１４〜Ｓ１６と同様であり、コントローラ２０が受信した４ページのデータＤＡＴ１に対してコード変換を実行する。
【０１９８】
（ステップＳ８７）
コントローラ２０は、ワード線ＷＬ１を選択し、且つ３ページのデータＤＡＴ１を含む第３コマンドセットを半導体記憶装置１０に送信する。半導体記憶装置１０が受信したコマンドセットのうち３ページのデータＤＡＴ０は、センスアンプユニットＳＡＵのラッチ回路に転送される。具体的には、図２４に示すようにＲＡＭ２２の領域ＰＧ０、ＰＧ１、及びＰＧ４に保持されたデータがそれぞれ、センスアンプユニットＳＡＵのラッチ回路ＡＤＬ、ＢＤＬ、及びＣＤＬに転送される。そしてＲＡＭ２２は、３ページのデータＤＡＴ１が転送されると、領域ＰＧ０及びＰＧ１に保持されたデータをリリースし、領域ＰＧ４に保持されたデータを保持し続ける。
【０１９９】
（ステップＳ８８及びＳ８９）
ステップＳ８３と同様に、ワード線ＷＬ１を選択し且つ３ページのデータＤＡＴ１を含む第３コマンドセットに基づいて、半導体記憶装置１０が第１書き込み動作を実行する。
【０２００】
（ステップＳ９０）
コントローラ２０は、ワード線ＷＬ０を選択し、且つ２ページのデータＤＡＴ０を含む第２コマンドセットを半導体記憶装置１０に送信する。半導体記憶装置１０が受信したコマンドセットのうち２ページのデータＤＡＴ０は、センスアンプユニットＳＡＵのラッチ回路に転送される。具体的には、図２４に示すようにＲＡＭ２２の領域ＰＧ２及びＰＧ３に保持されたデータがそれぞれ、センスアンプユニットＳＡＵのラッチ回路ＡＤＬ及びＢＤＬに転送される。そしてＲＡＭ２２は、２ページのデータＤＡＴ０が転送されると、領域ＰＧ２及びＰＧ３に保持されたデータをリリースする。
【０２０１】
（ステップＳ９１）
半導体記憶装置１０は、コントローラ２０から第２コマンドセットを受信すると、レディビジー信号ＲＢｎを“Ｌ”レベルにして、ワード線ＷＬ０を選択した第２書き込み動作を実行する。本実施形態における第２書き込み動作の概略を図２６に示す。図２６は、第２書き込み動作によるメモリセルの閾値分布の変化を示している。図２６に示すように本実施形態における第２書き込み動作において半導体記憶装置１０は、まずInternal data load（ＩＤＬ）を実行する。
【０２０２】
本実施形態におけるＩＤＬは、シーケンサ１４が、電圧Ｍ１Ｒ、Ｍ２Ｒ、及びＭ３Ｒを用いた読み出し動作を実行する。本実施形態における電圧Ｍ１Ｒ、Ｍ２Ｒ、及びＭ３Ｒは、第１実施形態で図１０を用いて説明した電圧Ｍ１Ｒ、Ｍ２Ｒ、及びＭ３Ｒと同様である。
【０２０３】
これにより、第１書き込み動作によって書き込まれた“１１”データ、“１０”データ、“００”データ、及び“０１”データが、センスアンプモジュールＳＡＵ内のラッチ回路に復元される。具体的には、図２４に示すようにデータＤＡＴ０の第１LowerページデータＭＬ１、及び第１UpperページデータＭＵ１がそれぞれ、ラッチ回路ＣＤＬ及びＤＤＬに転送される。
【０２０４】
そして半導体記憶装置１０は、ＩＤＬにより読み出された第１LowerページデータＭＬ１、及び第１UpperページデータＭＵ１と、コントローラ２０から入力された第２LowerページデータＭＬ２、及び第２UpperページデータＭＵ２とに基づいた、４ページの書き込み動作を実行する。
【０２０５】
第２書き込み動作においてシーケンサ１４は、第１実施形態と同様に、ベリファイ電圧として電圧Ｖ１、Ｖ２、Ｖ３、Ｖ４、Ｖ５、Ｖ６、Ｖ７、Ｖ８、Ｖ９、ＶＡ、ＶＢ、ＶＣ、ＶＤ、ＶＥ、及びＶＦを使用する。第２書き込み動作が実行されると、書き込むデータに基づいてメモリセルトランジスタＭＴの閾値電圧が上昇し、５つのレベルから１６個の閾値分布が形成される。例えば、“Ｍ０”レベルの閾値分布から“０”レベル、“１”レベル、“２”レベル、及び“３”レベルの閾値分布が形成される。“Ｍ１”レベルの閾値分布から“４”レベル、“５”レベル、“６”レベル、及び“７”レベルの閾値分布が形成される。“Ｍ２”レベルの閾値分布から“８”レベル、“９”レベル、“Ａ”レベル、及び“Ｂ”レベルの閾値分布が形成される。“Ｍ３”レベルの閾値分布から“Ｃ”レベル及び“Ｄ”レベルの閾値分布が形成される。“Ｍ４”レベルの閾値分布から“Ｅ”レベル及び“Ｆ”レベルの閾値分布が形成される。
【０２０６】
（ステップＳ９２〜Ｓ９４）
第１実施形態で説明したステップＳ２２〜Ｓ２４と同様に、ステップＳ９１における第１書き込み動作を実行している間に、コントローラ２０が受信した４ページのデータＤＡＴ２に対するコード変換を実行する。一方で半導体記憶装置１０は、ステップＳ９１の第１書き込み動作が終了すると、レディビジー信号ＲＢｎを“Ｈ”レベルにして、コントローラ２０に書き込み動作の終了を通知する。
【０２０７】
（ステップＳ９５〜Ｓ９７）
ステップＳ８２〜Ｓ８４と同様に、ワード線ＷＬ２を選択し且つ３ページのデータＤＡＴ２を含む第３コマンドセットに基づいて、半導体記憶装置１０が第１書き込み動作を実行する。
【０２０８】
（ステップＳ９８）
コントローラ２０は、ワード線ＷＬ１を選択し、且つ２ページのデータＤＡＴ１を含む第２コマンドセットを半導体記憶装置１０に送信する。半導体記憶装置１０が受信したコマンドセットのうち２ページのデータＤＡＴ１は、センスアンプユニットＳＡＵのラッチ回路に転送される。具体的には、図２４に示すようにＲＡＭ２２の領域ＰＧ４及びＰＧ５に保持されたデータがそれぞれ、センスアンプユニットＳＡＵのラッチ回路ＡＤＬ及びＢＤＬに転送される。そしてＲＡＭ２２は、２ページのデータＤＡＴ０が転送されると、領域ＰＧ４及びＰＧ５に保持されたデータをリリースする。
【０２０９】
（ステップＳ９９）
ステップＳ９１と同様に、ワード線ＷＬ１を選択し且つ２ページのデータＤＡＴ２を含む第３コマンドセットに基づいて、半導体記憶装置１０が第１書き込み動作を実行する。具体的には、半導体記憶装置１０は、ＩＤＬにより読み出された第１LowerページデータＭＬ１、及び第１UpperページデータＭＵ１と、コントローラ２０から入力された第２LowerページデータＭＬ２、及び第２UpperページデータＭＵ２とに基づいた、４ページの書き込み動作を実行する。
【０２１０】
（ステップＳ１００及びＳ１０１）
第１実施形態で説明したステップＳ３０及びＳ３１と同様であり、コントローラ２０が受信した４ページのデータＤＡＴ３に対してコード変換を実行する。
【０２１１】
（ステップＳ１０２）
半導体記憶装置１０は、ステップＳ９９の第２書き込み動作が終了すると、レディビジー信号ＲＢｎを“Ｈ”レベルにして、コントローラ２０に書き込み動作の終了を通知する。また、第２書き込み動作が終了すると、図２４に示すようにセンスアンプユニットＳＡＵ内のラッチ回路がリリースされる。
【０２１２】
以降の動作は、ステップＳ８７〜Ｓ１０２と同様の動作が繰り返される。そして、最後の４ページのデータに対応する第２書き込み動作が終了すると、メモリシステム１は書き込み動作を終了する。
【０２１３】
＜コマンドシーケンスについて＞
次に、図２７を用いて、上述した書き込み動作におけるコマンドシーケンスについて説明する。図２７は図２３に対応するコマンドシーケンスを示し、半導体記憶装置１０に入力される入出力信号Ｉ／Ｏを示している。
【０２１４】
図２７に示すように、本実施形態における第３コマンドセットは、第２実施形態で図２１を用いて説明した第３コマンドセットに対して、１ページ目のデータを第１LowerページデータＭＬ１、２ページ目のデータを第１UpperページデータＭＵ１、３ページ目のデータを第２LowerページデータＭＬ２に置き換えたものと同様である。また本実施形態における第２コマンドセットは、第１実施形態で図１１を用いて説明した第２コマンドセットと同様である。図示するｔProg(MLC+)は、本実施形態に係る第１書き込み動作の処理期間に相当し、第１実施形態におけるｔProg(MLC)よりも長く、ｔProg(QLC)よりも短い。これらの詳細なコマンドシーケンスは第１及び第２実施形態で説明したものと同様のため、説明を省略する。
【０２１５】
［３−２］第３実施形態の効果
本実施形態に従ったメモリシステム１によれば、第１実施形態よりもデータの信頼性を向上することが出来る。以下に、本効果の詳細について説明する。
【０２１６】
本実施形態に従ったメモリシステム１では、第１実施形態と同様に、コントローラ２０がホスト機器３０から受信した書き込みデータに対して、コード変換を含むデータ処理を実行する。さらに本実施形態では、第１書き込み動作においてコントローラ２０が３ページのデータを半導体記憶装置１０に送信する。そして半導体記憶装置１０は、閾値電圧が低いレベルに対応するデータでは２ビットデータを用いて書き込み、閾値電圧が高いレベルに対応するデータでは３ビットデータを用いて書き込む。
【０２１７】
具体的には、第１書き込み動作において半導体記憶装置１０が受信する３ページのデータのうち第１LowerページＭＬ１と第１UpperページＭＵ１で構成される２ページのデータにおいて、閾値電圧の低いデータ“１１”、“１０”、及び“００”と、閾値電圧の高いデータ“０１”とが分類される。さらに、閾値電圧の高いデータ“０１”は、第２LowerページＭＬ２のデータを用いて、データ“０１０”及び“０１１”の２つに分けられる。
【０２１８】
そして半導体記憶装置１０は、データ“１１”、“１０”、及び“００”を用いた２ビットデータの書き込みにより３つの閾値分布を形成し、閾値電圧の高いデータ“０１０”及び“０１１”を用いた３ビットデータの書き込みにより２つの閾値分布を形成する。このように本実施形態における第１書き込み動作では、２ビットデータの書き込みと、３ビットデータの書き込みとが混在して実行される。
【０２１９】
その後の第２書き込み動作において、コントローラ２０は２ページのデータを半導体記憶装置１０に送信し、半導体記憶装置１０がＩＤＬにより当該メモリセルから読み出したコード変換後のLower及びMiddleビットを含む２ページデータと、コントローラ２０から受信したコード変換後のUpper及びTopビットを含む２ページデータとに基づいて、メモリセルに計４ページのデータを書き込む。
【０２２０】
これにより本実施形態に従ったメモリシステム１は、第１実施形態と同様に、４ページのデータを２回に分けた書き込み動作を実行することが出来る。また、本実施形態では第１書き込み動作において、高いレベルの閾値分布に相当するデータを３ビットで書き込む。このような閾値電圧の変動量が最も大きいレベルは、閾値電圧の初期落ち量や、隣接メモリセルに対する寄生容量の影響も大きいため、第２書き込み動作によってこれらの影響を無視する効果が大きくなる。従って、本実施形態に従ったメモリシステム１は、第１実施形態よりもメモリセルにおける閾値分布の広がりを抑制することが出来るため、第１実施形態よりもデータの信頼性を向上することが出来る。
【０２２１】
［４］第４実施形態
次に、第４実施形態に従ったメモリシステム１について説明する。本実施形態に従ったメモリシステム１は、第１実施形態で説明した第１書き込み動作において半導体記憶装置１０が３ビットデータの書き込みを実行するものである。以下に、第１〜第３実施形態と異なる点を説明する。
【０２２２】
［４−１］メモリシステム１の書き込み動作
＜書き込み動作の流れについて＞
まず、メモリシステム１の書き込み動作について説明する。本実施形態に従ったメモリシステム１の書き込み動作では、コントローラ２０がホスト機器３０から受け取った４ページのデータに対して各種データ処理を実行し、このデータのうち３ページをまず半導体記憶装置１０に転送する。このときコントローラ２０は、３ページのうち上位ページに対応するデータを、保持したままにする。そして半導体記憶装置１０は、３ビットのデータを用いた第１書き込み動作を実行する。その後コントローラ２０は、保持する２ページのデータを送信し、半導体記憶装置１０がＩＤＬによって読み出した２ページのデータと併せて第２書き込み動作を実行する。
【０２２３】
以下に、図２８及び図２９を用いてメモリシステム１における書き込み動作の詳細について説明する。図２８は、メモリシステム１における書き込み動作のフローチャートを示し、図２９は、図２８に示す各ステップにおいてＲＡＭ２２及びセンスアンプユニットＳＡＵが保持するデータの一例を示している。
【０２２４】
図２８に示すステップＳ１１０〜Ｓ１３２は、第３実施形態で説明したステップＳ８０〜Ｓ１０２と同様であり、第１及び第２書き込み動作の詳細が異なる。また、図２９に示す図は、第３実施形態で説明した図２４に対して、コントローラ２０によるデータ処理後の４ビットのデータＤＡＴを、第１LowerページデータＴＬ１、第１MiddleページデータＴＭ１、第１UpperページデータＴＵ１、及び第２SingleページデータＳＬ２に置き換えたものと同様である。このため、以下に本実施形態における第１及び第２書き込み動作の詳細について説明する。
【０２２５】
（第１書き込み動作）
半導体記憶装置１０は、例えばステップＳ１１３において、コントローラ２０から第３コマンドセットを受信すると、レディビジー信号ＲＢｎを“Ｌ”レベルにして、ワード線ＷＬ０を選択した第１書き込み動作を実行する。本実施形態における第１書き込み動作の概略を図３０に示す。図３０は、第１書き込み動作によるメモリセルの閾値分布の変化を示している。図３０に示すように第１書き込み動作では半導体記憶装置１０が、コントローラ２０から入力された第１LowerページデータＴＬ１、第１MiddleページデータＴＭ１、及び第１UpperページデータＴＵ１に基づいた、３ページの書き込み動作を実行する。また、図３０は、第２実施形態で説明した図１９とベリファイ電圧の値が異なっている。
【０２２６】
電圧ＶＭ１は、ベリファイをパスしたメモリセルトランジスタＭＴの閾値電圧が電圧Ｖ３を超えないように設定される。電圧ＶＭ２は電圧ＶＭ３より小さく、電圧ＶＭ２及びＶＭ３はベリファイをパスしたメモリセルトランジスタＭＴの閾値電圧が電圧Ｖ７を超えないように設定される。電圧ＶＭ４は電圧ＶＭ５より小さく、電圧ＶＭ４及びＶＭ５はベリファイをパスしたメモリセルトランジスタＭＴの閾値電圧が電圧ＶＢを超えないように設定される。電圧ＶＭ６は電圧ＶＭ７より小さく、電圧ＶＭ６及びＶＭ７はベリファイをパスしたメモリセルトランジスタＭＴの閾値電圧が電圧ＶＦを超えないように設定される。その他は、第２実施形態で説明した図１９と同様のため、説明を省略する。
【０２２７】
（第２書き込み動作）
半導体記憶装置１０は、例えばステップＳ１２１において、コントローラ２０から第２コマンドセットを受信すると、レディビジー信号ＲＢｎを“Ｌ”レベルにして、ワード線ＷＬ０を選択した第２書き込み動作を実行する。本実施形態における第２書き込み動作の概略を図３１に示す。図３１は、第２書き込み動作によるメモリセルの閾値分布の変化を示している。図３１に示すように本実施形態における第２書き込み動作において半導体記憶装置１０は、まずInternal data load（ＩＤＬ）を実行する。
【０２２８】
本実施形態におけるＩＤＬは、シーケンサ１４が、電圧Ｍ２Ｒ、Ｍ４Ｒ、及びＭ６Ｒを用いた読み出し動作を実行する。本実施形態における電圧Ｍ２Ｒ、Ｍ４Ｒ、及びＭ６Ｒは、電圧Ｍ２Ｒは電圧Ｖ３以上且つ電圧ＶＭ２以下であり、センスアンプ部ＳＡは電圧Ｍ２Ｒを用いた読み出し動作によりメモリセルトランジスタＭＴの閾値電圧が電圧Ｍ１Ｒ未満か否かを判定する。電圧Ｍ４Ｒは電圧Ｖ７以上且つ電圧ＶＭ４以下であり、センスアンプ部ＳＡは電圧Ｍ４Ｒを用いた読み出し動作によりメモリセルトランジスタＭＴの閾値電圧が電圧Ｍ２Ｒ未満か否かを判定する。電圧Ｍ６Ｒは、電圧ＶＢ以上且つ電圧ＶＭ６以下であり、センスアンプ部ＳＡは電圧Ｍ６Ｒを用いた読み出し動作によりメモリセルトランジスタＭＴの閾値電圧が電圧Ｍ３Ｒ未満か否かを判定する。
【０２２９】
これにより、第１書き込み動作によって書き込まれた“１１”データ、“１０”データ、“００”データ、及び“０１”データが、センスアンプモジュールＳＡＵ内のラッチ回路に復元される。具体的には、図２９に示すようにデータＤＡＴ０の第１LowerページデータＴＬ１、及び第１MiddleページデータＴＭ１がそれぞれ、例えばラッチ回路ＣＤＬ及びＤＤＬに転送される。
【０２３０】
そして半導体記憶装置１０は、ＩＤＬにより読み出された第１LowerページデータＴＬ１、及び第１MiddleページデータＴＭ１と、コントローラ２０から入力された第１UpperページデータＴＬ１、及び第２SingleページデータＳＬ２とに基づいた、４ページの書き込み動作を実行する。
【０２３１】
第２書き込み動作においてシーケンサ１４は、第１実施形態と同様に、ベリファイ電圧として電圧Ｖ１、Ｖ２、Ｖ３、Ｖ４、Ｖ５、Ｖ６、Ｖ７、Ｖ８、Ｖ９、ＶＡ、ＶＢ、ＶＣ、ＶＤ、ＶＥ、及びＶＦを使用する。第２書き込み動作が実行されると、書き込むデータに基づいてメモリセルトランジスタＭＴの閾値電圧が上昇し、８つのレベルから１６個の閾値分布が形成される。例えば、“Ｍ０”レベルの閾値分布から“０”及び“１”レベルの閾値分布が形成される。“Ｍ１”レベルの閾値分布から“２”及び“３”レベルの閾値分布が形成される。“Ｍ２”レベルの閾値分布から“４”及び“５”レベルの閾値分布が形成される。“Ｍ３”レベルの閾値分布から“６”及び“７”レベルの閾値分布が形成される。以下、同様である。
【０２３２】
＜コマンドシーケンスについて＞
次に、図３２を用いて、上述した書き込み動作におけるコマンドシーケンスについて説明する。図３２は図２８に対応するコマンドシーケンスを示し、半導体記憶装置１０に入力される入出力信号Ｉ／Ｏを示している。
【０２３３】
図３２に示すように、本実施形態における第３コマンドセットは、第２実施形態で図２１を用いて説明した第３コマンドセットと同様である。また本実施形態における第２コマンドセットは、第１実施形態で図１１を用いて説明した第２コマンドセットに対して、１ページ目のデータＤＡＴを第１UpperページデータＴＵ１、２ページ目のデータＤＡＴを第２SingleページデータＳＬ２に置き換えたものと同様である。これらの詳細なコマンドシーケンスは第１及び第２実施形態で説明したものと同様のため、説明を省略する。
【０２３４】
［４−２］第４実施形態の効果
本実施形態に従ったメモリシステム１によれば、第１実施形態よりもデータの信頼性を向上することが出来る。以下に、本効果の詳細について説明する。
【０２３５】
本実施形態に従ったメモリシステム１では、第１実施形態と同様に、コントローラ２０がホスト機器３０から受信した書き込みデータに対して、コード変換を含むデータ処理を実行する。さらに本実施形態では、第１書き込み動作においてコントローラ２０が３ページのデータを半導体記憶装置１０に送信し、半導体記憶装置１０がコード変換後のLower、Middle、及びUpperビットを含む３ページデータを書き込む。そして第２書き込み動作では、コントローラ２０が２ページのデータを半導体記憶装置１０に送信し、半導体記憶装置１０がコントローラ２０から受信したコード変換後のUpper及びTopビットを含む２ページデータと、ＩＤＬによって読み出したコード変換後のLower及びMiddleビットを含む２ページデータとに基づいて、計４ビットのデータを書き込む。
【０２３６】
このようにして本実施形態に従ったメモリシステム１は、第１実施形態と同様に、４ページのデータを２回に分けた書き込み動作を実行する。また本実施形態では、第２実施形態と同様に第１書き込み動作において３ビットのデータを書き込むため、その後の第２書き込み動作によって３ビット分のデータ書き込みにより発生する閾値電圧の初期落ちの影響とメモリセル間の寄生容量の影響とを、最終的に得られる閾値分布においては無視することが出来る。従って本実施形態に従ったメモリシステム１は、第２実施形態と同様にデータの信頼性を向上することが出来る。
【０２３７】
また、本実施形態に従ったメモリシステム１では、第２書き込み動作において、第１書き込み動作によって書き込んだコード変換後のLower、Middle、及びUpperビットのデータのうち、Lower及びMiddleビットのデータのみＩＤＬによって復元し、Upperビットのデータはコントローラ２０からを受信することによって得る。ＩＤＬでメモリセルに記憶されたUpperビットのデータを読み出す時間よりも、コントローラ２０から１ページ分のデータを再受信する時間の方が短いため、本実施形態に係るメモリシステム１は、第２実施形態よりも書き込み速度を高速化することが出来る。
【０２３８】
尚、本実施形態におけるベリファイ電圧は、例えば“Ｍ１”及び“Ｍ２”レベル間と、“Ｍ３”及び“Ｍ４”レベル間と、“Ｍ５”及び“Ｍ６”レベル間とでそれぞれマージンが生まれるように設定しても良い。これにより、第２読み出し動作で２ビットデータのＩＤＬを実行する際に生じるエラービット数を抑制することが出来る。
【０２３９】
［５］第５実施形態
次に、第５実施形態に従ったメモリシステム１について説明する。本実施形態における半導体記憶装置１０は、メモリセルアレイ１１の各ブロックＢＬＫが、複数のストリングユニットを備える。そしてコントローラ２０が、各ストリングユニットに対する荒い書き込み動作と精密な書き込み動作とを、所定の順番で半導体記憶装置１０に命令するものである。以下に、第１〜第４実施形態と異なる点を説明する。
【０２４０】
［５−１］メモリシステム１の構成
まず、図３３を用いてメモリシステム１の構成について説明する。図３３は、コントローラ２０の備えるＲＡＭ２２のブロック図である。
【０２４１】
図３３に示すようにＲＡＭ２２は、ページクラスタＣＬ０〜ＣＬ４を備える。ページクラスタＣＬの各々は、領域ＰＧ０〜ＰＧ３を含む。つまりページクラスタＣＬ０〜ＣＬ４は、各々が４ページのデータを保持することが可能である。尚、ページクラスタＣＬの記憶容量は４ページに限定されず、２ページ、３ページ、又は５ページ以上にしても良い。
【０２４２】
次に、図３４を用いてメモリセルアレイ１１の構成について説明する。図３４は、メモリセルアレイ１１の回路図であり、メモリセルアレイ１１内の１つのブロックＢＬＫについて詳細な回路構成を示している。本実施形態におけるメモリセルアレイ１１の回路構成は、第１実施形態で図２を用いて説明したメモリセルアレイ１１の回路構成に対して、ブロックＢＬＫ毎に複数のストリングユニットＳＵを備える点が異なる。
【０２４３】
図３４に示すようにブロックＢＬＫは、例えばストリングユニットＳＵ０〜ＳＵ３を備える。ストリングユニットＳＵの各々は、ｍ個のＮＡＮＤストリング１８を含む。ＮＡＮＤストリング１８の構成は、第１実施形態で図２を用いて説明したものと同様である。
【０２４４】
ストリングユニットＳＵ０〜ＳＵ３内の選択トランジスタＳＴ１のゲートはそれぞれ、セレクトゲート線ＳＧＤ０〜ＳＧＤ３に共通接続される。同一ブロック内で同一列にある選択トランジスタＳＴ１のドレインは、対応するビット線ＢＬに共通接続される。つまり同一列にある選択トランジスタＳＴ１のドレインは、複数のブロックＢＬＫ間で共通接続される。同一ブロック内のメモリセルトランジスタＭＴ０〜ＭＴ７の制御ゲートはそれぞれ、ワード線ＷＬ０〜ＷＬ７に共通接続される。同一ブロック内の選択トランジスタＳＴ２のゲートは、セレクトゲート線ＳＧＳに共通接続される。同一ブロック内の選択トランジスタＳＴ２のソースは、ソース線ＳＬに共通接続される。つまり選択トランジスタＳＴ２のソースは、複数のブロックＢＬＫ間で共通接続される。その他の構成は第１実施形態と同様のため、説明を省略する。
【０２４５】
［５−２］メモリシステム１の書き込み動作
＜書き込み動作の流れについて＞
次に、メモリシステム１の書き込み動作について説明する。本実施形態に従ったメモリシステム１の書き込み動作では、４ページデータの書き込みを、荒い書き込み動作と精密な書き込み動作との２回に分けて実行する。荒い書き込み動作と精密な書き込み動作とは、各々が４ページの書き込みデータに基づいて実行される。これらの書き込み動作の詳細については後述する。
【０２４６】
以下に、図３５を用いてメモリシステム１における書き込み動作の詳細について説明する。図３５は、メモリシステム１における書き込み動作のフローチャートである。尚、以下に示す書き込み動作は、書き込みデータに対して４−４−３−４コードを適用した場合を例に説明する。また、以下の説明では、説明を簡便にするために変数ｉ及びｊを用いる。変数ｉ及びｊは、例えばコントローラ２０が備えるカウンタによって保持される変数であり、コントローラ２０の制御によってインクリメントされる。
【０２４７】
図３５に示すようにまず半導体記憶装置１０は、ワード線ＷＬｉ（ｉ＝０）を選択して且つストリングユニットＳＵ０〜ＳＵ３を順に選択した、荒い書き込み動作を実行する（ステップＳ２００）。この荒い書き込み動作の詳細が、図３６に示されている。図３６は、荒い書き込み動作によるメモリセルの閾値分布の変化を示している。
【０２４８】
図３６に示すように半導体記憶装置１０は、コントローラ２０から入力された４ページデータに基づいて荒い書き込み動作を実行する。
【０２４９】
荒い書き込み動作を実行する前のメモリセルトランジスタＭＴの閾値電圧は、“ＥＲ”レベルに分布する。“ＥＲ”レベルにおける閾値電圧は電圧Ｖ１未満であり、前述した“０”レベルと同様に、メモリセルトランジスタＭＴの消去状態に相当する。
【０２５０】
荒い書き込み動作においてシーケンサ１４は、電圧ＶＭ１、ＶＭ２、ＶＭ３、ＶＭ４、ＶＭ５、ＶＭ６、ＶＭ７、ＶＭ８、ＶＭ９、ＶＭＡ、ＶＭＢ、ＶＭＣ、ＶＭＤ、ＶＭＥ、及びＶＭＦをベリファイ電圧として使用する。電圧ＶＭ１、ＶＭ２、ＶＭ３、ＶＭ４、ＶＭ５、ＶＭ６、ＶＭ７、ＶＭ８、ＶＭ９、ＶＭＡ、ＶＭＢ、ＶＭＣ、ＶＭＤ、ＶＭＥ、及びＶＭＦはそれぞれ、“１１１１”（“Lowerビット／Middleビット／Upperビット／Topビット”）データ、“０１１１”データ、“０１０１”データ、“０００１”データ、“１００１”データ、“１０００”データ、“００００”データ、“０１００”データ、“０１１０”データ、“００１０”データ、“００１１”データ、“１０１１”データ、“１０１０”データ、“１１１０”データ、“１１００”データ、及び“１１０１”データを書き込む場合に使用される。電圧ＶＭ１は、電圧Ｖ１未満である。電圧ＶＭ２は、電圧Ｖ１以上且つ電圧Ｖ２未満である。電圧ＶＭ３は、電圧Ｖ２以上且つ電圧Ｖ３未満である。以下、同様である。
【０２５１】
荒い書き込み動作が実行されると、書き込むデータに基づいてメモリセルトランジスタＭＴの閾値電圧が上昇し、１６個の閾値分布が形成される。尚、図３６に示すように１６個の閾値分布は、隣り合う閾値分布と重なっていることがある。図３６に示す“Ｍ０”レベルは、“１１１１”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。“Ｍ１”レベルは、“０１１１”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。“Ｍ２”レベルは、“０１０１”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。以下、同様である。
【０２５２】
“Ｍ０”レベルにおける閾値電圧は電圧Ｖ１未満であり、前述した“０”レベル及び“ＥＲ”レベルと同様に、メモリセルトランジスタＭＴの消去状態に相当する。つまり、第１書き込み動作において“１”データを書き込むメモリセルトランジスタＭＴでは、閾値電圧の上昇が抑制される。“Ｍ１”レベルにおける閾値電圧は、電圧ＶＭ１以上且つ電圧Ｖ２未満である。“Ｍ２”レベルにおける閾値電圧は、電圧ＶＭ２以上且つ電圧Ｖ３未満である。以下、同様である。
【０２５３】
このように、荒い書き込み動作におけるベリファイに使用される電圧ＶＭ１、ＶＭ２、ＶＭ３、ＶＭ４、ＶＭ５、ＶＭ６、ＶＭ７、ＶＭ８、ＶＭ９、ＶＭＡ、ＶＭＢ、ＶＭＣ、ＶＭＤ、ＶＭＥ、及びＶＭＦはそれぞれ、ベリファイをパスしたメモリセルトランジスタＭＴの閾値電圧が電圧Ｖ２、Ｖ３、Ｖ４、Ｖ５、Ｖ６、Ｖ７、Ｖ８、Ｖ９、ＶＡ、ＶＢ、ＶＣ、ＶＤ、ＶＥ、ＶＦ、及びＶＲＥＡＤを超えないように設定される。
【０２５４】
図３５に戻り、ステップＳ２００における荒い書き込み動作が終了すると、変数ｉがインクリメントされ、変数ｊはリセット（ｊ＝０）される（ステップＳ２０１）。そして半導体記憶装置１０は、ワード線ＷＬｉを選択し且つストリングユニットＳＵｊを選択した荒い書き込み動作を実行する（ステップＳ２０２）。具体的には半導体記憶装置１０は、ワード線ＷＬ１を選択し且つストリングユニットＳＵ０を選択した荒い書き込み動作を実行する。
【０２５５】
次に半導体記憶装置１０は、ワード線ＷＬ（ｉ−１）を選択し且つストリングユニットＳＵｊを選択した精密な書き込み動作を実行する（ステップＳ２０３）。具体的には半導体記憶装置１０は、ワード線ＷＬ０を選択し且つストリングユニットＳＵ０を選択した精密な書き込み動作を実行する。この精密な書き込み動作の詳細が、図３７に示されている。図３７は、精密な書き込み動作によるメモリセルの閾値分布の変化を示している。
【０２５６】
図３７に示すように半導体記憶装置１０は、コントローラ２０から入力された４ページデータに基づいて精密な書き込み動作を実行する。
【０２５７】
精密な書き込み動作においてシーケンサ１４は、荒い書き込み動作と同様に、ベリファイ電圧として電圧Ｖ１、Ｖ２、Ｖ３、Ｖ４、Ｖ５、Ｖ６、Ｖ７、Ｖ８、Ｖ９、ＶＡ、ＶＢ、ＶＣ、ＶＤ、ＶＥ、及びＶＦを使用する。精密な書き込み動作が実行されると、書き込むデータに基づいてメモリセルトランジスタＭＴの閾値電圧が上昇し、１６個の広い閾値分布から１６個の細い閾値分布が形成される。例えば、“Ｍ０”レベルの閾値分布から“０”レベルの閾値分布が形成され、“Ｍ１”レベルの閾値分布から“１”レベルの閾値分布が形成され、“Ｍ２”レベルの閾値分布から“２”レベルの閾値分布が形成される。以下、同様である。
【０２５８】
図３５に戻り、ステップＳ２０３における精密な書き込み動作が終了した時点でｊ＝３ではない場合（ステップＳ２０４、Ｎｏ）、変数ｊがインクリメントされ（ステップＳ２０５）、ステップＳ２０２以降の動作が繰り返される。一方でｊ＝３である場合（ステップＳ２０４、Ｙｅｓ）、続けて変数ｉの値が確認される（ステップＳ２０６）。
【０２５９】
ｉ＝７ではない場合（ステップＳ２０６、Ｎｏ）、ステップＳ２０１に戻り、変数ｉがインクリメントされて且つ変数ｊがリセットされてから、ステップＳ２０２以降の動作が繰り返される。一方でｉ＝７である場合（ステップＳ２０６、Ｙｅｓ）、半導体記憶装置１０は、ワード線ＷＬｉ（ｉ＝７）を選択して且つストリングユニットＳＵ０〜ＳＵ３を順に選択した、精密な書き込み動作を実行する（ステップＳ２０７）。
【０２６０】
以上で説明した各書き込み動作の書き込み順番が、図３８に示されている。図３８は、あるブロックＢＬＫにおけるワード線ＷＬ及びストリングユニットＳＵの組み合わせを示している。また図３８は、各組み合わせにおいて、荒い書き込み動作に対応する枠（背景：白）と精密な書き込み動作に対応する枠（背景：斜線）とを示し、各枠内に動作が実行される順番を示す番号を表示している。尚、図３８に示す破線の矢印は、その矢印の起点における動作に応じて、いずれかのページクラスタＣＬに保持された４ページの書き込みデータがコントローラ２０内から破棄され、ＲＡＭ２２のメモリ領域がリリースされることを示している。
【０２６１】
図３８に示すように半導体記憶装置１０は、ワード線ＷＬ０を選択した各ストリングユニットＳＵに対する荒い書き込み動作を実行した後に、ワード線ＷＬ１を選択した荒い書き込み動作と、ワード線ＷＬ０を選択した精密な書き込み動作とを交互に実行する。この動作は、ストリングユニットＳＵ０からＳＵ３まで順に選択して実行される。そしてメモリシステム１は、ワード線ＷＬ０とストリングユニットＳＵ３とを選択した精密な書き込み動作を実行した後に、ワード線ＷＬ２を選択した荒い書き込み動作と、ワード線ＷＬ１を選択した精密な書き込み動作とを交互に実行する。以下、同様である。
【０２６２】
このような書き込み動作において、例えばワード線ＷＬ０及びストリングユニットＳＵ０に対応するメモリセルに書き込む４ページデータは、ページクラスタＣＬ０の領域ＰＧ０〜ＰＧ３に保持される。そしてこの４ページデータは、コントローラ２０がワード線ＷＬ０及びストリングユニットＳＵ０に対する精密な書き込み動作を指示した後にコントローラ２０内から破棄され、ＲＡＭ２２のメモリ領域がリリースされる。つまりＲＡＭ２２は、ワード線ＷＬ０及びストリングユニットＳＵ０に対応するメモリセルに書き込む４ページデータを、図３８に示す１番目の動作から、６番目の動作が実行されるまでページクラスタＣＬ０に保持している。尚、この期間においてＲＡＭ２２は、例えば２番目〜５番目の動作に使用される４ページデータをそれぞれ、ページクラスタＣＬ１〜ＣＬ４に保持している。
【０２６３】
＜コマンドシーケンスについて＞
次に、図３９〜図４１を用いて、上述した書き込み動作におけるコマンドシーケンス及び波形の詳細について説明する。図３９及び図４０はそれぞれ、荒い書き込み動作及び精密な書き込み動作におけるコマンドシーケンスを示し、半導体記憶装置１０に入力される入出力信号Ｉ／Ｏを示している。図４１は荒い書き込み動作と精密な書き込み動作の波形を示し、選択ワード線ＷＬに印加される電圧を示している。
【０２６４】
まず、荒い書き込み動作のコマンドシーケンスについて説明する。尚、以下の説明において、図３９に示されたコマンドの組み合わせのことを第５コマンドセットと呼ぶ。
【０２６５】
図３９に示すように、荒い書き込み動作においてまずコントローラ２０は、コマンド“ｘｚｈ”を半導体記憶装置１０に送信する。コマンド“ｘｚｈ”は、半導体記憶装置１０に対して荒い書き込み動作を指示するコマンドである。次にコントローラ２０は、コマンド“０１ｈ”と、コマンド“８０ｈ”と、アドレス情報ＡＤＤと、LowerページデータＤＡＴ１と、コマンド“ｘｙｈ”とを、順に半導体記憶装置１０に送信する。コマンド“ｘｙｈ”がコマンドレジスタ１２に格納されると、シーケンサ１４はレディビジー信号ＲＢｎを“Ｌ”レベルにして、ラッチ回路ＸＤＬに保持された書き込みデータを例えばラッチ回路ＡＤＬに転送させる。
【０２６６】
そしてレディビジー信号ＲＢｎが“Ｈ”レベルになると、コントローラ２０はコマンド“ｘｚｈ”と、コマンド“０２ｈ”と、コマンド“８０ｈ”と、アドレス情報ＡＤＤと、MiddleページデータＤＡＴ２と、コマンド“ｘｙｈ”とを、順に半導体記憶装置１０に送信する。コマンド“ｘｙｈ”がコマンドレジスタ１２に格納されると、シーケンサ１４はレディビジー信号ＲＢｎを“Ｌ”レベルにして、ラッチ回路ＸＤＬに保持された書き込みデータを例えばラッチ回路ＢＤＬに転送させる。
【０２６７】
そしてレディビジー信号ＲＢｎが“Ｈ”レベルになると、コントローラ２０はコマンド“ｘｚｈ”と、コマンド“０３ｈ”と、コマンド“８０ｈ”と、アドレス情報ＡＤＤと、UpperページデータＤＡＴ３と、コマンド“ｘｙｈ”とを、順に半導体記憶装置１０に送信する。コマンド“ｘｙｈ”がコマンドレジスタ１２に格納されると、シーケンサ１４はレディビジー信号ＲＢｎを“Ｌ”レベルにして、ラッチ回路ＸＤＬに保持された書き込みデータを例えばラッチ回路ＣＤＬに転送させる。
【０２６８】
そしてレディビジー信号ＲＢｎが“Ｈ”レベルになると、コントローラ２０はコマンド“ｘｚｈ”と、コマンド“０４ｈ”と、コマンド“８０ｈ”と、アドレス情報ＡＤＤと、TopページデータＤＡＴ４と、コマンド“１０ｈ”とを、順に半導体記憶装置１０に送信する。
【０２６９】
コマンド“１０ｈ”がコマンドレジスタ１２に格納されると、シーケンサ１４はレディビジー信号ＲＢｎを“Ｌ”レベルにして、ラッチ回路ＸＤＬに保持された書き込みデータを例えばラッチ回路ＤＤＬに転送させ、荒い書き込み動作を実行する。図示するｔProg(荒い)は、荒い書き込み動作の処理期間に相当する。この荒い書き込み動作における波形の一例が、図４１に示されている。図４１に示すように、荒い書き込み動作の波形は、第１実施形態で図１２を用いて説明した第１書き込み動作の波形と同様のため、説明を省略する。
【０２７０】
次に、精密な書き込み動作のコマンドシーケンスについて説明する。尚、以下の説明において、図４０に示されたコマンドの組み合わせのことを第６コマンドセットと呼ぶ。
【０２７１】
図４０に示すように、精密な書き込み動作におけるコマンドシーケンスは、図３９を用いて説明した荒い書き込み動作におけるコマンドシーケンスからコマンド“ｘｚｈ”を除いたものと同様である。
【０２７２】
図４０に示す最後のコマンドであるコマンド“１０ｈ”がコマンドレジスタ１２に格納されると、シーケンサ１４はレディビジー信号ＲＢｎを“Ｌ”レベルにして、精密な書き込み動作を実行する。図示するｔProg(精密)は、精密な書き込み動作の処理期間に相当する。tProg（精密）は、tProg（荒い）よりも長い。この精密な書き込み動作における波形の一例が、図４１に示されている。図４１に示すように、精密な書き込み動作の波形は、第１実施形態で図１２を用いて説明した第２書き込み動作の波形に対して、internal data load（ＩＤＬ）に相当する波形を除いたものと同様のため、説明を省略する。
【０２７３】
以上のように、荒い書き込み動作及び精密な書き込み動作ではそれぞれ、第５及び第６コマンドセットが使用される。従って、図３５を用いて説明した動作は、図４２に示すようなコマンドシーケンスにより実現される。図４２は、図３５を用いて説明した動作に対応するコマンドシーケンスを示し、半導体記憶装置１０に入力される入出力信号Ｉ／Ｏを示している。
【０２７４】
図４２に示すように、まずコントローラ２０は、ワード線ＷＬ０と各ストリングユニットＳＵを選択した第５コマンドセットを半導体記憶装置１０に送信して、半導体記憶装置１０にワード線ＷＬ０と各ストリングユニットＳＵを選択した荒い書き込み動作を順に実行させる（ステップＳ２０１）。
【０２７５】
ワード線ＷＬ０を選択した荒い書き込み動作が終了すると、コントローラ２０は、ワード線ＷＬ１とストリングユニットＳＵ０を選択した第５コマンドセットを半導体記憶装置１０に送信して、半導体記憶装置１０にワード線ＷＬ１とストリングユニットＳＵ０を選択した荒い書き込み動作を実行させる（ステップＳ２０２）。
【０２７６】
ワード線ＷＬ１とストリングユニットＳＵ０を選択した荒い書き込み動作が終了すると、コントローラ２０は、ワード線ＷＬ０とストリングユニットＳＵ０を選択した第６コマンドセットを半導体記憶装置１０に送信して、半導体記憶装置１０にワード線ＷＬ０とストリングユニットＳＵ０を選択した精密な書き込み動作を実行させる（ステップＳ２０３）。
【０２７７】
以降のコマンドシーケンスの説明は省略するが、図４２に示すようにコントローラ２０は、適宜適切なコマンドセットを選択して、半導体記憶装置１０に対して各種書き込み動作を指示する。
【０２７８】
［５−３］第５実施形態の効果
本実施形態に従ったメモリシステム１によれば、ＲＡＭ２２の記憶容量を抑制することが出来る。以下に、本効果の詳細について説明する。
【０２７９】
荒い書き込み動作と、精密な書き込み動作との２回の書き込み動作に分けて、メモリセルに複数ビットのデータを書き込む方法が知られている。荒い書き込み動作と精密な書き込み動作には、当該メモリセルに書き込む複数ビットのデータが共に使用される。このような書き込み方法を、各ブロックＢＬＫが複数のストリングユニットＳＵを備えるメモリシステムに対して適用する場合、荒い書き込み動作と精密な書き込み動作との書き込み順番としては、図４３に示す順番が考えられる。
【０２８０】
図４３に示す第５実施形態の比較例（第１比較例）では、ワード線ＷＬ０と各ストリングユニットＳＵとを選択した荒い書き込み動作の後に、ワード線ＷＬ１と各ストリングユニットＳＵとを選択した荒い書き込み動作が実行される。そして、ワード線ＷＬ１と各ストリングユニットＳＵとを選択した荒い書き込み動作が実行された後に、ワード線ＷＬ０と各ストリングユニットＳＵとを選択した精密な書き込み動作が実行される。つまり第１比較例におけるメモリシステムは、荒い書き込み動作と精密な書き込み動作とを実行する順番を、ワード線ＷＬ単位で管理している。
【０２８１】
一方で本実施形態では、図３８に示すようにワード線ＷＬ０と各ストリングユニットＳＵとを選択した荒い書き込み動作の後に、ワード線ＷＬ１とストリングユニットＳＵ０とを選択した荒い書き込み動作が実行される。そして、ワード線ＷＬ１とストリングユニットＳＵ０とを選択した荒い書き込み動作を実行した後に、ワード線ＷＬ０とストリングユニットＳＵ０とを選択した精密な書き込み動作が実行される。このように本実施形態においてメモリシステム１は、隣接するワード線ＷＬの荒い書き込み動作が終わったストリングユニットＳＵから、順次精密な書き込み動作を実行する。
【０２８２】
以上のことから、本実施形態及び第１比較例において最低限必要なＲＡＭ２２の記憶容量は、図４４に示すものとなる。図４４は、本実施形態及び第１比較例におけるＲＡＭ２２の構成の一例が示されている。
【０２８３】
図４３及び図４４に示すように、第１比較例おいてＲＡＭ２２は、ワード線ＷＬ０及びストリングユニットＳＵ０に対応するメモリセルに書き込む４ページの書き込みデータを、９番目の動作に応じて破棄して、メモリ領域（例えば、ページクラスタＣＬ０）をリリースする。このときＲＡＭ２２が２番目〜８番目の動作における４ページの書き込みデータも保持していることを考慮すると、第１比較例において最低限必要なＲＡＭ２２の記憶容量は、３２ページ（ページクラスタＣＬ８個分）である。
【０２８４】
一方で図３８及び図４４に示すように、本実施形態においてＲＡＭ２２は、ワード線ＷＬ０及びストリングユニットＳＵ０に対応するメモリセルに書き込む４ページの書き込みデータを、６番目の動作に応じて破棄して、メモリ領域（例えば、ページクラスタＣＬ０）をリリースする。このときＲＡＭ２２が２番目〜５番目の動作における４ページの書き込みデータも保持していることを考慮すると、本実施形態において最低限必要なＲＡＭ２２の記憶容量は、２０ページ（ページクラスタＣＬ５個分）である。
【０２８５】
このように本実施形態に従ったメモリシステム１の書き込み動作は、精密な書き込み動作が実行されるまでの期間を短縮することで、ＲＡＭ２２が書き込みデータを保持する期間が短縮されるため、ＲＡＭ２２の消費量を抑制することが出来る。これにより本実施形態に従ったメモリシステム１は、ＲＡＭ２２の記憶容量を抑制する事が出来る。
【０２８６】
尚、精密な書き込み動作が実行されるまでの期間を短縮した書き込み順番としては、図４５に示す順番も考えられる。図４５に示す第５実施形態の変形例（第１変形例）では、ワード線ＷＬ０とストリングユニットＳＵ０とを選択した荒い書き込み動作の後に、ワード線ＷＬ１とストリングユニットＳＵ０とを選択した荒い書き込み動作が実行される。そして、ワード線ＷＬ１とストリングユニットＳＵ０とを選択した荒い書き込み動作が実行された後に、ワード線ＷＬ０とストリングユニットＳＵ０とを選択した精密な書き込み動作が実行される。この書き込み順番はワード線ＷＬ０とストリングユニットＳＵ３とを選択した精密な書き込み動作が実行されるまで続き、以降の書き込み順番は本実施形態で説明した図３８と同様となる。メモリシステム１は、このような書き込み順番を適用した場合においても同様に、ＲＡＭ２２の記憶容量を抑制することが出来る。
【０２８７】
［６］第６実施形態
次に、第６実施形態に従ったメモリシステム１について説明する。本実施形態は、第１実施形態で説明した書き込み方法と、第５実施形態で説明した書き込み順番とを組み合わせたものである。以下に、第１〜第５実施形態と異なる点を説明する。
【０２８８】
［６−１］メモリシステム１の書き込み動作
＜書き込み動作の流れについて＞
まず、メモリシステム１の書き込み動作について説明する。本実施形態に従ったメモリシステム１の書き込み動作は、各ブロックＢＬＫが複数のストリングユニットを備える半導体記憶装置１０において、第１実施形態で説明した第１及び第２書き込み動作を、第５実施形態で説明した順番で実行するものである。尚、以下で説明する書き込み動作では、第１実施形態と同様に、例えば４−４−３−４コードから１−２−４−８コードへのコーディング変換が実行されているものとする。
【０２８９】
本実施形態における第１及び第２書き込み動作の書き込み順番は、図４６に示すものとなる。図４６は、あるブロックＢＬＫにおけるワード線ＷＬ及びストリングユニットＳＵの組み合わせを示している。また図４６は、各組み合わせにおいて、第１書き込み動作に対応する枠（背景：白）と第２書き込み動作に対応する枠（背景：斜線）とを示し、各枠内に動作が実行される順番を示す番号を表示している。尚、図４６に示す実線の矢印は、その矢印の起点における動作に応じて、ＲＡＭ２２に保持された２ページの書き込みデータ（Lower及びMiddleページデータ）がコントローラ２０内から破棄され、ＲＡＭ２２のメモリ領域がリリースされることを示している。同様に破線の矢印は、その矢印の起点における動作に応じて、ＲＡＭ２２に保持された２ページの書き込みデータ（Upper及びTopページデータ）がコントローラ２０内から破棄され、ＲＡＭ２２のメモリ領域がリリースされることを示している。
【０２９０】
図４６に示すように本実施形態における各種書き込み動作の書き込み順番は、第５実施形態で説明した荒い書き込み動作と精密な書き込み動作とをそれぞれ、第１実施形態で説明した第１書き込み動作と第２書き込み動作とに置き換えたものと同様である。このような書き込み動作においてＲＡＭ２２は、ワード線ＷＬ０及びストリングユニットＳＵ０に対応するメモリセルに書き込む４ページデータのうち、Lower及びMiddleページデータを図４６に示す１番目の動作まで保持し、Upper及びTopページデータを図４６に示す１番目の動作から、６番目の動作が実行されるまでに保持している。尚、６番目の動作の実行時においてＲＡＭ２２は、例えば２番目〜５番目の各動作で使用される４ページデータのうち、Upper及びTopページデータを保持している。
【０２９１】
＜コマンドシーケンスについて＞
次に、図４７を用いて、上述した書き込み動作におけるコマンドシーケンスについて説明する。図４７は、図４６を用いて説明した動作に対応するコマンドシーケンスを示し、半導体記憶装置１０に入力される入出力信号Ｉ／Ｏを示している。
【０２９２】
図４７に示すように、まずコントローラ２０は、ワード線ＷＬ０と各ストリングユニットＳＵを選択した第１コマンドセットを半導体記憶装置１０に送信して、半導体記憶装置１０にワード線ＷＬ０と各ストリングユニットＳＵを選択した第１書き込み動作を順に実行させる。
【０２９３】
ワード線ＷＬ０を選択した第１書き込み動作が終了すると、コントローラ２０は、ワード線ＷＬ１とストリングユニットＳＵ０を選択した第１コマンドセットを半導体記憶装置１０に送信して、半導体記憶装置１０にワード線ＷＬ１とストリングユニットＳＵ０を選択した第１書き込み動作を実行させる。
【０２９４】
ワード線ＷＬ１とストリングユニットＳＵ０を選択した第１書き込み動作が終了すると、コントローラ２０は、ワード線ＷＬ０とストリングユニットＳＵ０を選択した第２コマンドセットを半導体記憶装置１０に送信して、半導体記憶装置１０にワード線ＷＬ０とストリングユニットＳＵ０を選択した第２書き込み動作を実行させる。
【０２９５】
以降のコマンドシーケンスの説明は省略するが、図４７に示すようにコントローラ２０は、適宜適切なコマンドセットを選択して、半導体記憶装置１０に対して各種書き込み動作を指示する。
【０２９６】
［６−２］第６実施形態の効果
本実施形態に従ったメモリシステム１によれば、第５実施形態よりもＲＡＭ２２の記憶容量を抑制することが出来る。以下に、本効果の詳細について説明する。
【０２９７】
各ブロックＢＬＫが複数のストリングユニットＳＵを備えるメモリシステムにおいて、第１実施形態で説明した第１及び第２書き込み動作を適用する場合、第１及び第２書き込み動作の書き込み順番としては、図４８に示す順番が考えられる。
【０２９８】
図４８に示す第６実施形態の比較例（第２比較例）の書き込み順番は、図４３を用いて説明した第１比較例における荒い書き込み動作と精密な書き込み動作との書き込み順番をそれぞれ、第１実施形態で説明した第１書き込み動作と第２書き込み動作とに置き換えたものと同様である。
【０２９９】
一方で本実施形態の書き込み順番は、図３８を用いて説明した第５実施形態における荒い書き込み動作と精密な書き込み動作との書き込み順番をそれぞれ、第１書き込み動作と第２書き込み動作とに置き換えたものと同様である。
【０３００】
以上のことから、本実施形態及び第２比較例において最低限必要なＲＡＭ２２の記憶容量は、図４９に示すものとなる。図４９は、本実施形態及び第２比較例におけるＲＡＭ２２の構成の一例が示されている。
【０３０１】
図４８及び図４９に示すように、第２比較例においてＲＡＭ２２は、ワード線ＷＬ０及びストリングユニットＳＵ０に対応するメモリセルに書き込む４ページの書き込みデータのうち、２ページの書き込みデータ（Lower及びMiddleページデータ）を１番目の動作に応じて破棄して、メモリ領域をリリースする。そしてＲＡＭ２２は、残りの２ページの書き込みデータ（Upper及びTopページデータ）を９番目の動作に応じて破棄して、メモリ領域をリリースする。このときＲＡＭ２２が２番目〜８番目の動作における４ページの書き込みデータのうち２ページの書き込みデータ（Upper及びTopページデータ）も保持していることを考慮すると、比較例２において最低限必要なＲＡＭ２２の記憶容量は１８ページである。
【０３０２】
一方で図４６及び図４９に示すように、本実施形態においてＲＡＭ２２は、ワード線ＷＬ０及びストリングユニットＳＵ０に対応するメモリセルに書き込む４ページの書き込みデータのうち、２ページの書き込みデータ（Lower及びMiddleページデータ）を１番目の動作に応じて破棄して、メモリ領域をリリースする。そしてＲＡＭ２２は、残りの２ページ（Upper及びTopページデータ）を６番目の動作に応じて破棄して、メモリ領域をリリースする。このときＲＡＭ２２が２番目〜５番目の動作における２ページの書き込みデータ（Upper及びTopページデータ）も保持していることを考慮すると、本実施形態において最低限必要なＲＡＭ２２の記憶容量は１２ページである。
【０３０３】
このように本実施形態に従ったメモリシステム１の書き込み動作は、第２書き込み動作が実行されるまでの期間を短縮することで、ＲＡＭ２２が書き込みデータを保持する期間が短縮されるため、ＲＡＭ２２の消費量を抑制することが出来る。これにより本実施形態に従ったメモリシステム１は、ＲＡＭ２２の記憶容量を抑制する事が出来る。
【０３０４】
尚、精密な書き込み動作が実行されるまでの期間を短縮した書き込み順番としては、図５０に示す順番も考えられる。図５０に示す第６実施形態の変形例（第２変形例）の書き込み順番は、図４５を用いて説明した第１変形例における荒い書き込み動作及び精密な書き込み動作の書き込み順番をそれぞれ、第１書き込み動作及び第２書き込み動作に置き換えたものと同様である。メモリシステム１は、このような書き込み順番を適用した場合も同様に、ＲＡＭ２２の記憶容量を抑制することが出来る。
【０３０５】
［７］第７実施形態
次に、第７実施形態に従ったメモリシステム１について説明する。本実施形態に従ったメモリシステム１は、第１実施形態の変形例であり、第１書き込み動作で１ページの書き込みを実行し、第２書き込み動作で１ページのＩＤＬを実行するものである。以下に、第１〜第６実施形態と異なる点を説明する。
【０３０６】
［７−１］メモリシステム１の書き込み動作
まず、メモリシステム１の書き込み動作について説明する。本実施形態に従ったメモリシステム１の書き込み動作は、ホスト機器３０から受信した書き込みデータに対して、第１実施形態で図７を用いて説明したデータ処理を実行する。つまり本実施形態においてコントローラ２０は、ホスト機器３０から受信した書き込みデータに対して、例えば４−４−３−４コードから１−２−４−８コードへのコーディング変換を実行する。これによりメモリシステム１は、４ビットデータを２回の書き込み動作に分けて書き込む場合に、ＩＤＬを使用することが可能となる。そしてメモリシステム１は、第１書き込み動作で１ページの書き込みを実行し、第２書き込み動作で１ページのＩＤＬを実行する。
【０３０７】
具体的には、第１書き込み動作においてメモリシステム１は、半導体記憶装置１０がコントローラ２０から受信した１ページデータ（Lowerページデータ）に基づいて、１ページの書き込み動作を実行する。第２書き込み動作においてメモリシステム１は、半導体記憶装置１０がコントローラ２０から受信した３ページデータ（Middle、Upper、及びTopページデータ）と、ＩＤＬにより読み出した１ページデータ（Lowerページデータ）に基づいて、４ページの書き込み動作を実行する。
【０３０８】
以下に、本実施形態のメモリシステム１における第１及び第２書き込み動作の概略についてそれぞれ説明する。
【０３０９】
まず、第１書き込み動作の概略について図５１を用いて説明する。図５１は、第１書き込み動作によるメモリセルの閾値分布の変化を示している。図５１に示すように第１書き込み動作では半導体記憶装置１０が、コントローラ２０から入力されたLowerページデータに基づいた、１ページの書き込み動作を実行する。
【０３１０】
第１書き込み動作を実行する前のメモリセルトランジスタＭＴの閾値電圧は、“ＥＲ”レベルに分布する。“ＥＲ”レベルにおける閾値電圧は電圧Ｖ１未満であり、前述した“０”レベルと同様に、メモリセルトランジスタＭＴの消去状態に相当する。
【０３１１】
第１書き込み動作においてセンスアンプモジュール１７は、電圧ＶＭ１をベリファイ電圧として使用する。電圧ＶＭ１は、“０”（“Lowerビット”）データを書き込む場合に使用され、電圧Ｖ１以上且つ電圧Ｖ９未満である。
【０３１２】
第１書き込み動作が実行されると、書き込むデータに基づいてメモリセルトランジスタＭＴの閾値電圧が上昇し、２つの閾値分布が形成される。図５１に示す“Ｍ０”レベルは、“１”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。“Ｍ１”レベルは、“０”データが書き込まれる複数のメモリセルトランジスタＭＴによって形成される。
【０３１３】
“Ｍ０”レベルにおける閾値電圧は電圧Ｖ１未満であり、前述した“０”レベル及び“ＥＲ”レベルと同様に、メモリセルトランジスタＭＴの消去状態に相当する。つまり、第１書き込み動作において“１”データを書き込むメモリセルトランジスタＭＴでは、閾値電圧の上昇が抑制される。“Ｍ１”レベルにおける閾値電圧は、電圧ＶＭ１以上且つ電圧Ｖ９未満である。このように、第１書き込み動作におけるベリファイに使用される電圧ＶＭ１は、ベリファイをパスしたメモリセルトランジスタＭＴの閾値電圧が電圧Ｖ５を超えないように設定される。
【０３１４】
次に、第２書き込み動作の概略について図５２を用いて説明する。図５２は、第２書き込み動作によるメモリセルの閾値分布の変化を示している。図５２に示すように本実施形態における第２書き込み動作において半導体記憶装置１０は、まずInternal data load（ＩＤＬ）を実行する。
【０３１５】
本実施形態におけるＩＤＬでは、シーケンサ１４が、電圧Ｍ１Ｒを用いた読み出し動作を実行する。電圧Ｍ１Ｒは電圧Ｖ１以上且つ電圧ＶＭ１以下であり、センスアンプ部ＳＡは電圧Ｍ１Ｒを用いた読み出し動作によりメモリセルトランジスタＭＴの閾値電圧が電圧Ｍ１Ｒ未満か否かを判定する。
【０３１６】
これにより、第１書き込み動作によって書き込まれた“１”データ及び“０”が、センスアンプモジュールＳＡＵ内のラッチ回路に復元される。
【０３１７】
そして半導体記憶装置１０は、ＩＤＬにより読み出されたLowerページデータと、コントローラ２０から入力されたMiddleページデータ、Upperページデータ、及びTopページデータとに基づいた、４ページの書き込み動作を実行する。
【０３１８】
第２書き込み動作においてシーケンサ１４は、第１実施形態と同様に、ベリファイ電圧として電圧Ｖ１、Ｖ２、Ｖ３、Ｖ４、Ｖ５、Ｖ６、Ｖ７、Ｖ８、Ｖ９、ＶＡ、ＶＢ、ＶＣ、ＶＤ、ＶＥ、及びＶＦを使用する。第２書き込み動作が実行されると、書き込むデータに基づいてメモリセルトランジスタＭＴの閾値電圧が上昇し、２つのレベルから１６個の閾値分布が形成される。例えば、“Ｍ０”レベルの閾値分布から“０”レベル、“１”レベル、“２”レベル、“３”レベル、“４”レベル、“５”レベル、“６”レベル、及び“７”レベルの閾値分布が形成される。“Ｍ１”レベルの閾値分布から“８”レベル、“９”レベル、“Ａ”レベル、“Ｂ”レベル、“Ｃ”レベル、“Ｄ”レベル、“Ｅ”レベル、及び“Ｆ”レベルの閾値分布が形成される。
【０３１９】
［７−２］第７実施形態の効果
本実施形態に従ったメモリシステム１によれば、書き込んだデータの信頼性を向上することが出来る。以下に、本効果の詳細について説明する。
【０３２０】
本実施形態に従ったメモリシステム１では、第１実施形態と同様に、コントローラ２０がホスト機器３０から受信した書き込みデータに対して、コード変換を含むデータ処理を実行する。さらに本実施形態では、第１書き込み動作においてコントローラ２０が１ページデータを半導体記憶装置１０に送信し、半導体記憶装置１０がコード変換後のLowerビットを含む１ページデータを書き込む。そして、第２書き込み動作においてコントローラ２０がコード変換後のMiddle、Upper、及びTopビットを含む３ページデータを半導体記憶装置１０に送信し、半導体記憶装置１０がＩＤＬにより当該メモリセルから読み出したコード変換後のLowerビットを含む１ページデータと、コントローラ２０から受信したコード変換後のMiddle、Upper、及びTopビットを含む３ページデータとに基づいて、メモリセルに計４ページのデータを書き込む。
【０３２１】
これにより本実施形態に従ったメモリシステム１は、第１実施形態と同様に、４ページのデータを２回に分けた書き込み動作を実行することが出来る。また、本実施形態では第１書き込み動作において１ページのデータを書き込むため、その後の第２書き込み動作によって１ビット分のデータ書き込みにより発生する閾値電圧の初期落ちの影響とメモリセル間の寄生容量の影響とを、最終的に得られる閾値分布においては無視することが出来る。従って、本実施形態に従ったメモリシステム１は、閾値分布の広がりを抑制することが出来るため、データの信頼性を向上することが出来る。
【０３２２】
また、本実施形態に従ったメモリシステム１では、第２書き込み動作において、第１書き込み動作によって書き込んだコード変換後のLowerビットのデータを、ＩＤＬによって当該メモリセルから読み出すことによって復元する。つまりコントローラ２０は、第１書き込み動作に使用する１ページのデータを、半導体記憶装置１０に送信した後に破棄することが出来る。
【０３２３】
これによりコントローラ２０は、ＲＡＭ２２の記憶容量が最低７ページあれば、上述した書き込み動作を実行することが可能となる。つまり本実施形態に従ったメモリシステム１では、ＲＡＭ２２の記憶容量を抑制することが出来るため、コントローラ２０の回路面積を抑制することが出来る。
【０３２４】
［８］変形例等
上記実施形態に従った半導体記憶装置１０は、ｎビットデータ（ｎは４以上の自然数）を記憶可能な第１メモリセルを含む。半導体記憶装置１０は、コントローラ２０からｎビットデータのうち第１及び第２ビット<Lower/Middle>を含む第１データを受信すると、受信した第１データを前記第１メモリセルに書き込む。半導体記憶装置は、第１データを受信した後、ｎビットデータのうち第３及び第４ビット<Upper/Top>を含む第２データを受信すると、第１メモリセルから第１及び第２ビットを読み出して<IDL, FIG.10>、読み出した第１及び第２ビットと受信した第２データとに基づいて、第１メモリセルにｎビットデータを書き込む。
【０３２５】
これにより、読み出しデータの信頼性を向上することが出来る。
【０３２６】
尚、メモリシステム１の構成はこれに限定されず、様々な形態を取ることができる。例えば、上記実施形態に従ったメモリシステム１は、１つのコントローラ２０と１つの半導体記憶装置１０とを組み合わせたメモリシステム１を一例として説明したが、これに限定されない。例えば、１つのコントローラ２０に対して、複数の半導体記憶装置１０が設けられていても良い。この場合、コントローラ２０のＲＡＭ２２が備える記憶容量は、半導体記憶装置１０の個数に基づいて変化する。例えば、２つの半導体記憶装置１０を含むメモリシステム１の場合、第１実施形態における書き込み動作を実行するためには、コントローラ２０のＲＡＭ２２は１０ページのデータを保持可能なように構成される。
【０３２７】
また、上記実施形態で説明した書き込み動作において、ＲＡＭ２２や、センスアンプユニットＳＡＵのラッチ回路に保持されるデータは、所望の動作を終えた後に破棄しなくても良い。例えば、続く動作で当該領域ＰＧやラッチ回路を使用する場合に、データを上書きすることで使用する。このような場合においても、上記実施形態の動作を実現することが出来る。
【０３２８】
また、上記実施形態で説明した書き込み動作において、ホスト機器３０からコントローラ２０に転送されるデータが４ページ毎となっている場合を例に説明したが、これに限定されない。例えば、コントローラ２０が備えるバッファメモリ２４の容量に余裕がある場合には、より多くの書き込みデータを保持し、順次書き込み動作を実行するにしても良い。また、バッファメモリ２４に保持されたデータが４ページ一括でＲＡＭ２２の領域ＰＧに転送される場合を例に説明したが、これに限定されない。例えば、１ページのデータがバッファメモリ２４に溜まったら、順次ＲＡＭ２２の領域ＰＧにデータを転送するようにしても良い。
【０３２９】
尚、上記実施形態で説明した書き込み動作において、コントローラ２０が書き込みデータのコーディング変換を実行する場合に、１−２−４−８コードに変換する前のコーディングとして４−４−３−４コードを適用した場合を例に説明したが、これに限定されない。コーディング変換前に使用されるコーディングとしては、その他のあらゆるコーディングを使用することが可能である。
【０３３０】
また、第５実施形態において、書き込みデータに対して４−４−３−４コードを適用した場合を例に説明したが、これに限定されない。第５実施形態において使用されるコーディングとしては、その他のあらゆるコーディングを使用することが可能である。
【０３３１】
尚、第６実施形態において、第１実施形態で説明した書き込み方法と、第５実施形態で説明した書き込み順番とを組み合わせた場合を例に説明したが、これに限定されない。例えば、第２〜第４、又は第７実施形態で説明した書き込み方法と、第５実施形態で説明した書き込み順番とを組み合わせても良い。
【０３３２】
また、第５及び第６実施形態において、各ブロックＢＬＫが備えるストリングユニットＳＵの個数が４つである場合を例に説明したが、これに限定されない。例えば、ストリングユニットＳＵの個数は、２つ、３つ、又は５つ以上であっても良い。また、図３５のフローチャートで説明に用いた、ステップＳ２０４における変数ｊの判定値と、ステップＳ２０６における変数ｉの判定値とは、あくまで一例であり、これに限定されない。これらの判定値は、例えば１つのブロックＢＬＫに対応するストリングユニットＳＵの個数や、ワード線ＷＬの本数に基づいて設定される。
【０３３３】
例えば、ストリングユニットＳＵの個数を変更した場合の書き込み順番は、図３５のフローチャートに対して、ステップＳ２００及びＳ２０７における書き込み対象のストリングユニットＳＵの個数を変更し、ステップＳ２０４における変数ｊの判定値を（ストリングユニットＳＵの個数−１）に変更したものとなる。
【０３３４】
尚、上記実施形態で説明した書き込み動作において、１つのメモリセルに対して４ビットのデータを記憶させる場合を例に説明したが、これに限定されない。例えば、１つのメモリセルに対して３ビット又は５ビット以上のデータを記憶させても良い。このような場合においても、適切なコーディングを選択することによって、上記実施形態で説明した動作を実現する事が可能である。
【０３３５】
尚、本明細書において“接続”とは、電気的に接続されている事を示し、例えば間に別の素子を介することを除外しない。
【０３３６】
尚、上記実施形態においてメモリセルアレイ１１は、メモリセルトランジスタＭＴが半導体基板の上方に三次元に積層された構成であっても良い。このような構成については、例えば“三次元積層不揮発性半導体メモリ”という２００９年３月１９日に出願された米国特許出願１２／４０７,４０３号に記載されている。また、“三次元積層不揮発性半導体メモリ”という２００９年３月１８日に出願された米国特許出願１２／４０６,５２４号、“不揮発性半導体記憶装置及びその製造方法”という２０１０年３月２５日に出願された米国特許出願１２／６７９,９９１号“半導体メモリ及びその製造方法”という２００９年３月２３日に出願された米国特許出願１２／５３２,０３０号に記載されている。これらの特許出願は、その全体が本願明細書において参照により援用されている。
【０３３７】
また、上記実施形態において、ブロックＢＬＫがデータの消去単位にならなくても良い。例えば他の消去動作は、“不揮発性半導体記憶装置”という２０１１年９月１８日に出願された米国特許出願１３／２３５,３８９号、“不揮発性半導体記憶装置”という２０１０年１月２７日に出願された米国特許出願１２／６９４,６９０号に記載されている。これらの特許出願は、その全体が本願明細書において参照により援用されている。
【０３３８】
また、上記実施形態におけるトラッキングリードの詳細については、例えば“SEMICONDUCTOR MEMORY DEVICE WHICH STORES MULTIVALUED DATA”という２０１２年７月９日に出願された米国特許出願１３／５４４,１４７に記載された方法を適用することが出来る。この特許出願の内容は、その全体が本願明細書において参照により援用されている。
【０３３９】
尚、上記各実施形態において、  
（１）読み出し動作では、“Ａ”レベルの読み出し動作に選択されたワード線に印加される電圧は、例えば０〜０.５５Ｖの間である。これに限定されることなく、０.１〜０.２４Ｖ、０.２１〜０.３１Ｖ、０.３１〜０.４Ｖ、０.４〜０.５Ｖ、０.５〜０.５５Ｖのいずれかの間にしてもよい。
【０３４０】
“Ｂ”レベルの読み出し動作に選択されたワード線に印加される電圧は、例えば１.５〜２.３Ｖの間である。これに限定されることなく、１.６５〜１.８Ｖ、１.８〜１.９５Ｖ、１.９５〜２.１Ｖ、２.１〜２.３Ｖのいずれかの間にしてもよい。
【０３４１】
“Ｃ”レベルの読み出し動作に選択されたワード線に印加される電圧は、例えば３.０Ｖ〜４.０Ｖの間である。これに限定されることなく、３.０〜３.２Ｖ、３.２〜３.４Ｖ、３.４〜３.５Ｖ、３.５〜３.６Ｖ、３.６〜４.０Ｖのいずれかの間にしてもよい。
【０３４２】
読み出し動作の時間（ｔＲｅａｄ）としては、例えば２５〜３８μs、３８〜７０μs、７０〜８０μsの間にしてもよい。
（２）書き込み動作は、上述したとおりプログラム動作とベリファイ動作を含む。書き込み動作では、プログラム動作時に選択されたワード線に最初に印加される電圧は、例えば１３.７〜１４.３Ｖの間である。これに限定されることなく、例えば１３.７〜１４.０Ｖ、１４.０〜１４.６Ｖのいずれかの間としてもよい。
【０３４３】
奇数番目のワード線を書き込む際の、選択されたワード線に最初に印加される電圧と、偶数番目のワード線を書き込む際の、選択されたワード線に最初に印加される電圧を変えてもよい。
【０３４４】
プログラム動作をＩＳＰＰ方式（Incremental Step Pulse Program）としたとき、ステップアップの電圧として、例えば０.５Ｖ程度が挙げられる。
【０３４５】
非選択のワード線に印加される電圧としては、例えば６.０〜７.３Ｖの間としてもよい。この場合に限定されることなく、例えば７.３〜８.４Ｖの間としてもよく、６.０Ｖ以下としてもよい。
【０３４６】
非選択のワード線が奇数番目のワード線であるか、偶数番目のワード線であるかで、印加するパス電圧を変えてもよい。
【０３４７】
書き込み動作の時間（ｔＰｒｏｇ）としては、例えば１７００〜１８００μs、１８００〜１９００μs、１９００〜２０００μsの間にしてもよい。
（３）消去動作では、半導体基板上部に形成され、かつ、上記メモリセルが上方に配置されたウェルに最初に印加する電圧は、例えば１２.０〜１３.６Ｖの間である。この場合に限定されることなく、例えば１３.６〜１４.８Ｖ、１４.８〜１９.０Ｖ、１９.０〜１９.８Ｖ、１９.８〜２１.０Ｖの間であってもよい。
【０３４８】
消去動作の時間（ｔErase）としては、例えば３０００〜４０００μs、４０００〜５０００μs、４０００〜９０００μsの間にしてもよい。
（４）メモリセルの構造は、半導体基板（シリコン基板）上に膜厚が４〜１０ｎｍのトンネル絶縁膜を介して配置された電荷蓄積層を有している。この電荷蓄積層は膜厚が2〜3ｎｍのＳｉＮ、又はＳｉＯＮ等の絶縁膜と膜厚が３〜８ｎｍのポリシリコンとの積層構造にすることができる。また、ポリシリコンにはＲｕ等の金属が添加されていてもよい。電荷蓄積層の上には絶縁膜を有している。この絶縁膜は、例えば、膜厚が３〜１０ｎｍの下層Ｈｉｇｈ−ｋ膜と膜厚が３〜１０ｎｍの上層Ｈｉｇｈ−ｋ膜に挟まれた膜厚が４〜１０ｎｍのシリコン酸化膜を有している。Ｈｉｇｈ−ｋ膜はＨｆＯ等が挙げられる。また、シリコン酸化膜の膜厚はＨｉｇｈ−ｋ膜の膜厚よりも厚くすることができる。絶縁膜上には膜厚が３〜１０ｎｍの材料を介して膜厚が３０〜７０ｎｍの制御電極が形成されている。ここで材料はＴａＯ等の金属酸化膜、ＴａＮ等の金属窒化膜である。制御電極にはＷ等を用いることができる。
【０３４９】
また、メモリセル間にはエアギャップを形成することができる。  
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことが出来る。これら実施形態やその変形は、発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０３５０】
１…メモリシステム、１０…半導体記憶装置、１１…メモリセルアレイ、１２…コマンドレジスタ、１３…アドレスレジスタ、１４…シーケンサ、１５…ドライバ回路、１６…ロウデコーダ、１７…センスアンプモジュール、１８…ＮＡＮＤストリング、２０…コントローラ、２１…ホストインターフェイス回路、２２…内蔵メモリ、２３…プロセッサ、２４…バッファメモリ、２５…ＥＣＣ回路、２６…ＮＡＮＤインターフェイス回路、３０…ホスト機器、ＢＬ…ビット線、ＷＬ…ワード線、ＳＧＤ，ＳＧＳ…セレクトゲート線
ＭＴ０…メモリセルトランジスタ、ＳＴ…選択トランジスタ、ＳＵ…ストリングユニット、ＢＬＫ…ブロック
【図１】
2018045757.tif 000003
【図２】
2018045757.tif 000004
【図３】
2018045757.tif 000005
【図４】
2018045757.tif 000006
【図５】
2018045757.tif 000007
【図６】
2018045757.tif 000008
【図７】
2018045757.tif 000009
【図８】
2018045757.tif 000010
【図９】
2018045757.tif 000011
【図１０】
2018045757.tif 000012
【図１１】
2018045757.tif 000013
【図１２】
2018045757.tif 000014
【図１３】
2018045757.tif 000015
【図１４】
2018045757.tif 000016
【図１５】
2018045757.tif 000017
【図１６】
2018045757.tif 000018
【図１７】
2018045757.tif 000019
【図１８】
2018045757.tif 000020
【図１９】
2018045757.tif 000021
【図２０】
2018045757.tif 000022
【図２１】
2018045757.tif 000023
【図２２】
2018045757.tif 000024
【図２３】
2018045757.tif 000025
【図２４】
2018045757.tif 000026
【図２５】
2018045757.tif 000027
【図２６】
2018045757.tif 000028
【図２７】
2018045757.tif 000029
【図２８】
2018045757.tif 000030
【図２９】
2018045757.tif 000031
【図３０】
2018045757.tif 000032
【図３１】
2018045757.tif 000033
【図３２】
2018045757.tif 000034
【図３３】
2018045757.tif 000035
【図３４】
2018045757.tif 000036
【図３５】
2018045757.tif 000037
【図３６】
2018045757.tif 000038
【図３７】
2018045757.tif 000039
【図３８】
2018045757.tif 000040
【図３９】
2018045757.tif 000041
【図４０】
2018045757.tif 000042
【図４１】
2018045757.tif 000043
【図４２】
2018045757.tif 000044
【図４３】
2018045757.tif 000045
【図４４】
2018045757.tif 000046
【図４５】
2018045757.tif 000047
【図４６】
2018045757.tif 000048
【図４７】
2018045757.tif 000049
【図４８】
2018045757.tif 000050
【図４９】
2018045757.tif 000051
【図５０】
2018045757.tif 000052
【図５１】
2018045757.tif 000053
【図５２】
2018045757.tif 000054