(57)【要約】【課題】メモリセルトランジスタの劣化を抑制できる半導体記憶装置及びメモリシステムを提供すること。【解決手段】実施形態に係る半導体記憶装置は、第１及び第２動作モードを有し、メモリセルトランジスタとワード線とを備える。メモリセルトランジスタには、データを消去する場合、消去パルスが印加され、データを書き込む場合、プログラムパルスが印加される。第１動作モードにある際には、第１期間、消去パルスまたはプログラムパルスが印加されることにより、バックゲートとワード線との電位差が第１電位差とされる。第２動作モードにある際には、第１期間より長い第２期間、消去パルスまたはプログラムパルスが印加されることにより、バックゲートとワード線との電位差が、第１電位差より小さい第２電位差とされる。【選択図】図５
2017054561.tif 000002
【特許請求の範囲】
【請求項１】
第１動作モード及び第２動作モードを有する半導体記憶装置であって、前記半導体記憶装置は、
メモリセルトランジスタと、
前記メモリセルトランジスタに接続されたワード線と
を備え、前記メモリセルトランジスタのデータを消去する場合、当該メモリセルトランジスタには消去パルスが印加され、
前記メモリセルトランジスタへ前記データを書き込む場合、当該メモリセルトランジスタにはプログラムパルスが印加され、
前記第１動作モードにある際には、第１期間、前記消去パルスまたは前記プログラムパルスが印加されることにより、前記メモリセルトランジスタのバックゲートと前記ワード線との電位差が第１電位差とされ、
前記第２動作モードにある際には、前記第１期間より長い第２期間、前記消去パルスまたは前記プログラムパルスが印加されることにより、前記バックゲートと前記ワード線との前記電位差が、前記第１電位差より小さい第２電位差とされる
ことを特徴とする半導体記憶装置。
【請求項２】
前記第２動作モードにおける前記消去パルスの電位は、前記第１動作モードにおける前記消去パルスの電位よりも小さく、前記消去パルスが印加されている期間、前記ワード線の電位は前記バックゲートの電位よりも小さくされることを特徴とする請求項１記載の半導体記憶装置。
【請求項３】
前記第２動作モードにおけるプログラムパルスの電位は、前記第１動作モードにおける前記プログラムパルスの電位よりも小さく、前記プログラムパルスが印加されている期間、前記バックゲートの電位は前記ワード線の電位よりも小さくされることを特徴とする請求項１記載の半導体記憶装置。
【請求項４】
前記データの消去時において、前記消去パルスはステップアップされ、
前記第２動作モードにおける前記消去パルスのステップアップ幅は、前記第１動作モードにおける前記消去パルスのステップアップ幅より大きい
ことを特徴とする請求項１または２記載の半導体記憶装置。
【請求項５】
前記データの書き込み時において、前記プログラムパルスはステップアップされ、
前記第２動作モードにおける前記プログラムパルスのステップアップ幅は、前記第１動作モードにおける前記プログラムパルスのステップアップ幅より大きい
ことを特徴とする請求項１または３記載の半導体記憶装置。
【請求項６】
前記メモリセルトランジスタは、前記消去パルスの印加により、当該メモリセルトランジスタの閾値が負電圧方向にシフトされ、
前記メモリセルトランジスタは、前記プログラムパルスの印加により、当該メモリセルトランジスタの前記閾値が正電圧方向にシフトされる
ことを特徴とする請求項１記載の半導体記憶装置。
【請求項７】
第１コマンド及び第２コマンドを出力可能なコントローラと、
メモリセルトランジスタと、当該メモリセルトランジスタに接続されたワード線とを含み、第１動作モード及び第２動作モードを有する半導体記憶装置とを備え、
前記半導体記憶装置は、前記第１コマンドを受信した場合には、前記第１動作モードで前記メモリセルトランジスタへの消去動作または書き込み動作を行い、前記第２コマンドを受信した場合には前記第２動作モードで前記消去動作または前記書き込み動作を行い、
前記第１動作モードと前記第２動作モードとでは、前記消去動作または前記書き込み動作において前記メモリセルトランジスタに印加される電圧の大きさ、及び印加期間が異なる
ことを特徴とするメモリシステム。
【請求項８】
前記半導体記憶装置は、前記消去動作を行う場合、前記メモリセルトランジスタに消去パルスを印加し、前記書き込み動作を行う場合、前記メモリセルトランジスタにプログラムパルスを印加し、
前記第１動作モードにある際には、第１期間、前記消去パルスまたは前記プログラムパルスが印加されることにより、前記メモリセルトランジスタのバックゲートと前記ワード線との電位差が第１電位差とされ、
前記第２動作モードにある際には、前記第１期間より長い第２期間、前記消去パルスまたは前記プログラムパルスの前記１つが印加されることにより、前記バックゲートと前記ワード線との前記電位差が、前記第１電位差より小さい第２電位差とされる
ことを特徴とする請求項７記載のメモリシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
実施形態は、半導体記憶装置及びメモリシステムに関する。
【背景技術】
【０００２】
半導体記憶装置としてＮＡＮＤ型フラッシュメモリが知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２６６１４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
メモリセルトランジスタの劣化を抑制できる半導体記憶装置及びメモリシステムを提供する。
【課題を解決するための手段】
【０００５】
実施形態に係る半導体記憶装置は、第１動作モード及び第２動作モードを有し、メモリセルトランジスタと、メモリセルトランジスタに接続されたワード線とを備える。メモリセルトランジスタのデータを消去する場合、メモリセルトランジスタには消去パルスが印加される。メモリセルトランジスタへデータを書き込む場合、メモリセルトランジスタにはプログラムパルスが印加される。第１動作モードにある際には、第１期間、消去パルスまたはプログラムパルスが印加されることにより、メモリセルトランジスタのバックゲートとワード線との電位差が第１電位差とされる。第２動作モードにある際には、第１期間より長い第２期間、消去パルスまたはプログラムパルスが印加されることにより、バックゲートとワード線との電位差が、第１電位差より小さい第２電位差とされる。
【図面の簡単な説明】
【０００６】
【図１】図１は、第１実施形態に係るメモリシステムのブロック図である。
【図２】図２は、第１実施形態に係る半導体記憶装置のブロック図である。
【図３】図３は、第１実施形態に係るメモリシステムにおけるノーマルイレースモード時の各種信号のタイミングチャートである。
【図４】図４は、第１実施形態に係るメモリシステムにおけるスローイレースモード時の各種信号のタイミングチャートである。
【図５】図５は、第１実施形態に係る半導体記憶装置における消去動作を示すフローチャートである。
【図６】図６は、第１実施形態に係る半導体記憶装置における消去パルス印加時の各配線の電圧を示すタイミングチャートである。
【図７】図７は、第２実施形態に係る半導体記憶装置における消去動作時の消去ループ回数と消去パルスの関係を示すグラフである。
【図８】図８は、第３実施形態に係るメモリシステムにおけるノーマルプログラムモード時の各種信号のタイミングチャートである。
【図９】図９は、第３実施形態に係るメモリシステムにおけるスロープログラムモード時の各種信号のタイミングチャートである。
【図１０】図１０は、第３実施形態に係る半導体記憶装置における書き込み動作を示すフローチャートである。
【図１１】図１１は、第３実施形態に係る半導体記憶装置におけるノーマルプログラムモード時の各配線の電圧を示すタイミングチャートである。
【図１２】図１２は、第３実施形態に係る半導体記憶装置におけるスロープログラムモード時の各配線の電圧を示すタイミングチャートである。
【図１３】図１３は、第４実施形態に係る半導体記憶装置における書き込み動作時のプログラムループ回数とプログラムパルスの関係を示すグラフである。
【図１４】図１４は、第５実施形態の第１例に係るメモリシステムにおけるサスペンドイレース時のメモリシステムの動作を示すフローチャートである。
【図１５】図１５は、第５実施形態の第１例に係るメモリシステムにおけるサスペンドイレース時の信号の送受信と消去動作の関係を示すタイミングチャートである。
【図１６】図１６は、第５実施形態の第２例に係るメモリシステムにおけるサスペンドイレース時の信号の送受信と消去動作の関係を示すタイミングチャートである。
【図１７】図１７は、第６実施形態に係る半導体記憶装置におけるダミーデータ書き込み動作時のページ状態を示す図である。
【図１８】図１８は、第６実施形態に係るメモリシステムにおけるダミーデータ書き込み動作時の信号の送受信と書き込み動作の関係を示すタイミングチャートである。
【図１９】図１９は、第７実施形態の第１例に係るメモリシステムにおける消去動作時のコントローラの動作を示すフローチャートである。
【図２０】図２０は、第７実施形態の第２例に係るメモリシステムにおける書き込み動作時のコントローラの動作を示すフローチャートである。
【発明を実施するための形態】
【０００７】
以下、実施形態につき図面を参照して説明する。この説明に際し、全図にわたり、共通する部分には共通する参照符号を付す。
【０００８】
１．第１実施形態
第１実施形態に係る半導体記憶装置及びメモリシステムについて説明する。以下では半導体記憶装置として、メモリセルトランジスタが半導体基板上に二次元に配置された平面型ＮＡＮＤ型フラッシュメモリを例に挙げて説明する。
【０００９】
１．１  構成について
１．１．１  メモリシステムの全体構成について  
まず、本実施形態に係るメモリシステムの全体構成について、図１を用いて説明する。
【００１０】
図示するようにメモリシステム１は、ＮＡＮＤ型フラッシュメモリ１００及びコントローラ２００を備えている。コントローラ２００とＮＡＮＤ型フラッシュメモリ１００は、例えばそれらの組み合わせにより一つの半導体記憶装置を構成しても良く、その例としてはＳＤＴＭカードのようなメモリカードや、ＳＳＤ（solid state drive）等が挙げられる。
【００１１】
ＮＡＮＤ型フラッシュメモリ１００は、複数のメモリセルトランジスタを備え、データを不揮発に記憶する。ＮＡＮＤ型フラッシュメモリ１００は、ＮＡＮＤバスによってコントローラ２００と接続され、コントローラ２００からの命令に基づいて動作する。すなわち、ＮＡＮＤ型フラッシュメモリ１００は、データ線ＤＱ０〜ＤＱ７を介してコントローラ２００と、例えば８ビットの入出力信号Ｉ／Ｏの送受信を行う。入出力信号Ｉ／Ｏは、例えばデータ、アドレス信号、及びコマンド信号である。また、ＮＡＮＤ型フラッシュメモリ１００は、コントローラ２００から、例えばチップイネーブル信号ＣＥｎ、コマンドラッチイネーブル信号ＣＬＥ、アドレスラッチイネーブル信号ＡＬＥ、ライトイネーブル信号ＷＥｎ、及びリードイネーブル信号ＲＥｎを受信する。そして、ＮＡＮＤ型フラッシュメモリ１００はコントローラ２００に、レディ／ビジー信号Ｒ／Ｂｎを送信する。
【００１２】
チップイネーブル信号ＣＥｎは、ＮＡＮＤ型フラッシュメモリ１００をイネーブルにするための信号であり、ｌｏｗレベルでアサートされる。コマンドラッチイネーブル信号ＣＬＥは、入出力信号Ｉ／Ｏがコマンドであることを示す信号であり、ｈｉｇｈレベルでアサートされる。アドレスラッチイネーブル信号ＡＬＥは、入出力信号Ｉ／Ｏがアドレスであることを示す信号であり、ｈｉｇｈレベルでアサートされる。ライトイネーブル信号ＷＥｎは、受信した信号をＮＡＮＤ型フラッシュメモリ１００内へ取り込むための信号であり、コントローラ２００よりコマンド、アドレス、及びデータ等を受信する度に、ｌｏｗレベルでアサートされる。よって、ＷＥｎがトグルされる度に、信号がＮＡＮＤ型フラッシュメモリ１００に取り込まれる。リードイネーブル信号ＲＥｎは、コントローラ２００が、ＮＡＮＤ型フラッシュメモリ１００から各データを読み出すための信号である。例えばリードイネーブル信号ＲＥｎは、ｌｏｗレベルでアサートされる。レディ／ビジー信号Ｒ／Ｂｎは、ＮＡＮＤ型フラッシュメモリ１００がビジー状態であるか否か（コントローラ２００からコマンドを受信不可能な状態か可能な状態か）を示す信号であり、ビジー状態の際にｌｏｗレベルとなる。
【００１３】
コントローラ２００は、ホスト機器からの命令に応答して、ＮＡＮＤ型フラッシュメモリ１００に対してデータの読み出し、書き込み、消去等を命令する。また、ＮＡＮＤ型フラッシュメモリ１００のメモリ空間を管理する。
【００１４】
コントローラ２００は、ホストインターフェイス回路２１０、内蔵メモリ（ＲＡＭ）２２０、プロセッサ（ＣＰＵ）２３０、バッファメモリ２４０、ＮＡＮＤインターフェイス回路２５０、及びＥＣＣ回路２６０を備えている。
【００１５】
ホストインターフェイス回路２１０は、コントローラバスを介してホスト機器と接続され、ホスト機器との通信を司る。そして、ホスト機器から受信した命令及びデータを、それぞれプロセッサ２３０及びバッファメモリ２４０に転送する。またプロセッサ２３０の命令に応答して、バッファメモリ２４０内のデータをホスト機器へ転送する。
【００１６】
ＮＡＮＤインターフェイス回路２５０は、ＮＡＮＤバスを介してＮＡＮＤ型フラッシュメモリ１００と接続され、ＮＡＮＤ型フラッシュメモリ１００との通信を司る。そして、プロセッサ２３０から受信した命令をＮＡＮＤ型フラッシュメモリ１００に転送し、また書き込み時にはバッファメモリ２４０内の書き込みデータをＮＡＮＤ型フラッシュメモリ１００へ転送する。更に読み出し時には、ＮＡＮＤ型フラッシュメモリ１００から読み出されたデータをバッファメモリ２４０へ転送する。
【００１７】
プロセッサ２３０は、コントローラ２００全体の動作を制御する。例えば、ホスト機器から書き込み命令を受信した際には、それに応答して、ＮＡＮＤ型フラッシュメモリ１００に書き込み命令を出力する。読み出し及び消去の際も同様である。またプロセッサ２３０は、ウェアレベリング等、ＮＡＮＤ型フラッシュメモリ１００を管理するための様々な処理を実行する。更にプロセッサ２３０は、各種の演算を実行する。例えば、データの暗号化処理やランダマイズ処理等を実行する。
【００１８】
ＥＣＣ回路２６０は、データの誤り訂正（ＥＣＣ：Error Checking and Correcting）処理を実行する。
【００１９】
内蔵メモリ２２０は、例えばＤＲＡＭ等の半導体メモリであり、プロセッサ２３０の作業領域として使用される。そして内蔵メモリ２２０は、ＮＡＮＤ型フラッシュメモリ１００を管理するためのファームウェアや、各種の管理テーブル等を保持する。
【００２０】
１．１．２  半導体記憶装置の全体構成について
次に、半導体記憶装置の全体構成について、図２を用いて説明する。図示するようにＮＡＮＤ型フラッシュメモリ１００は、大まかにはコア部１１０及び周辺回路部１２０を備えている。
【００２１】
コア部１１０は、メモリセルアレイ１１１、ロウデコーダ１１２、センスアンプ１１３、ソース線ドライバ１１４、及びウェルドライバ１１５を備えている。
【００２２】
メモリセルアレイ１１１は、複数の不揮発性メモリセルトランジスタの集合である複数のブロックＢＬＫ（ＢＬＫ０、ＢＬＫ１、…）を備えている。同一ブロックＢＬＫ内のデータは、例えば一括して消去される。
【００２３】
ブロックＢＬＫの各々は、メモリセルトランジスタが直列接続された複数のＮＡＮＤストリング１１６を備えている。ＮＡＮＤストリング１１６の各々は、例えば１６個のメモリセルトランジスタＭＴ（ＭＴ０〜ＭＴ１５）、並びに選択トランジスタＳＴ１及びＳＴ２を含んでいる。メモリセルトランジスタＭＴは、制御ゲートと電荷蓄積層とを備え、データを不揮発に保持する。なお、メモリセルトランジスタＭＴは、電荷蓄積層に絶縁膜を用いたＭＯＮＯＳ型であっても良いし、電荷蓄積層に導電膜を用いたＦＧ型であっても良い。更に、メモリセルトランジスタＭＴの個数は１６個に限られず、８個や３２個、６４個、１２８個等であってもよく、その数は限定されるものではない。
【００２４】
メモリセルトランジスタＭＴ０〜ＭＴ１５は、その電流経路が直列に接続される。この直列接続の一端側のメモリセルトランジスタＭＴ０のドレインは、選択トランジスタＳＴ１のソースに接続され、他端側のメモリセルトランジスタＭＴ１５のソースは、選択トランジスタＳＴ２のドレインに接続されている。
【００２５】
同一のブロックＢＬＫ内にある選択トランジスタＳＴ１のゲートは、同一のセレクトゲート線ＳＧＤに共通に接続される。図２の例では、ブロックＢＬＫ０にある選択トランジスタＳＴ１のゲートは、セレクトゲート線ＳＧＤ０に共通に接続され、ブロックＢＬＫ１にある図示せぬ選択トランジスタＳＴ１のゲートは、セレクトゲート線ＳＧＤ１に共通に接続される。同様に、同一のブロックＢＬＫ内にある選択トランジスタＳＴ２のゲートは、同一のセレクトゲート線ＳＧＳに共通に接続される。
【００２６】
また、ブロックＢＬＫ内の各ＮＡＮＤストリング１１６のメモリセルトランジスタＭＴの制御ゲートは、それぞれ異なるワード線ＷＬ０〜ＷＬ１５に共通に接続される。
【００２７】
また、メモリセルアレイ１１１内でマトリクス状に配置されたＮＡＮＤストリング１１６のうち、同一列にあるＮＡＮＤストリング１１６の選択トランジスタＳＴ１のドレインは、いずれかのビット線ＢＬ（ＢＬ０〜ＢＬ（Ｎ−１）、（Ｎ−１）は１以上の自然数）に共通接続される。すなわちビット線ＢＬは、複数のブロックＢＬＫ間でＮＡＮＤストリング１１６を共通に接続する。また、各ブロックＢＬＫ内にある選択トランジスタＳＴ２のソースは、ソース線ＳＬに共通に接続されている。すなわちソース線ＳＬは、例えば複数のブロックＢＬＫ間でＮＡＮＤストリング１１６を共通に接続する。
【００２８】
ロウデコーダ１１２は、例えばデータの書き込み、及び読み出しの際、ブロックＢＬＫのアドレスやページのアドレスをデコードして、対象となるページに対応するワード線を選択する。そしてロウデコーダ１１２は、選択ブロックＢＬＫの選択ワード線ＷＬ、非選択ワード線ＷＬ、並びにセレクトゲート線ＳＧＤ及びＳＧＳに適切な電圧を印加する。
【００２９】
センスアンプ１１３は、データの読み出し時には、メモリセルトランジスタからビット線に読み出されたデータをセンスする。またデータの書き込み時には、書き込みデータをメモリセルトランジスタＭＴに転送する。
【００３０】
ソース線ドライバ１１４は、ソース線ＳＬに電圧を印加する。
【００３１】
ウェルドライバ１１５は、ＮＡＮＤストリング１１６が形成されるｐ型ウェル領域（すなわちメモリセルトランジスタＭＴのバックゲート）に電圧を印加する。
【００３２】
周辺回路部１２０は、シーケンサ１２１、電圧発生回路１２２、及びレジスタ１２３を備える。
【００３３】
シーケンサ１２１は、ＮＡＮＤ型フラッシュメモリ１００全体の動作を制御する。
【００３４】
電圧発生回路１２２は、データの書き込み、読み出し、及び消去に必要な電圧を発生させ、ロウデコーダ１１２、センスアンプ１１３、ソース線ドライバ１１４、ウェルドライバ１１５等に供給する。
【００３５】
レジスタ１２３は、種々の信号を保持する。例えば、データの書き込みや消去動作のステータスを保持し、これによってコントローラ２００に動作が正常に完了したか否かを通知する。または、レジスタ１２３は、種々のテーブルを保持することも可能である。
【００３６】
なお、本例ではメモリセルトランジスタＭＴが半導体基板上に二次元に配置されている場合を例に説明するが、半導体基板上方に三次元に積層される場合であっても良い。
【００３７】
三次元積層型ＮＡＮＤ型フラッシュメモリにおけるメモリセルアレイ１１１の構成については、例えば、“三次元積層不揮発性半導体メモリ”という２００９年３月１９日に出願された米国特許出願１２／４０７，４０３号に記載されている。また、“三次元積層不揮発性半導体メモリ”という２００９年３月１８日に出願された米国特許出願１２／４０６，５２４号、“不揮発性半導体記憶装置及びその製造方法”という２０１０年３月２５日に出願された米国特許出願１２／６７９，９９１号“半導体メモリ及びその製造方法”という２００９年３月２３日に出願された米国特許出願１２／５３２，０３０号に記載されている。これらの特許出願は、その全体が本願明細書において参照により援用されている。
【００３８】
更に、データの消去範囲は、１つのブロックＢＬＫに限定されず、複数のブロックＢＬＫが一括して消去されても良く、１つのブロックＢＬＫ内の一部の領域が一括して消去されても良い。
【００３９】
データの消去については、例えば、“不揮発性半導体記憶装置”という２０１０年１月２７日に出願された米国特許出願１２／６９４，６９０号に記載されている。また、“不揮発性半導体記憶装置”という２０１１年９月１８日に出願された米国特許出願１３／２３５，３８９号に記載されている。これらの特許出願は、その全体が本願明細書において参照により援用されている。
【００４０】
１．２  データの消去動作について  
次に本実施形態に係るデータの消去動作について説明する。消去動作は、メモリセルトランジスタＭＴの閾値を低下させる（負電圧方向にシフトさせる）ために消去パルスを印加する動作と、消去パルスを印加した結果、メモリセルトランジスタＭＴの閾値が目標とする値より低くなったか否かを判定するイレースベリファイとを含む。そして消去動作には「ノーマルイレースモード」と「スローイレースモード」と呼ばれる２つのイレースモードがあり、ＮＡＮＤ型フラッシュメモリ１００は、コントローラ２００から受信するコマンドに基づいて、いずれかのイレースモードで消去動作を行う。ノーマルイレースモードとスローイレースモードとでは、消去パルスの条件が異なる。具体的には、メモリセルトランジスタＭＴのバックゲートへの印加電圧及び印加時間が異なる。スローイレースモード時の消去パルスの電位はノーマルイレースモード時よりも低く、印加期間はノーマルイレースモード時よりも長い。以下、消去動作の詳細について説明する。
【００４１】
１．２．１  コントローラ２００の動作について
まず、消去動作時におけるコントローラ２００の動作について説明する。
【００４２】
１．２．１．１  ノーマルイレースモード時について
まず、ノーマルイレースモード時におけるコントローラ２００の動作について、図３を用いて説明する。
【００４３】
図示するように、プロセッサ２３０は、まず、消去動作を実行することを通知するコマンド“６０ｈ”をＮＡＮＤ型フラッシュメモリ１００に出力するとともに、ＣＬＥをアサート（“Ｈ”レベル）する。
【００４４】
次にプロセッサ２３０は、アドレスデータ“ＡＤＤ”を出力すると共に、ＡＬＥをアサート（“Ｈ”レベル）する。なお図３の例では、アドレスデータを１サイクルのデータとしたが、カラムアドレス及びロウアドレス等を送信するため、複数のサイクルであっても良い。なお、ロウアドレスは、ブロックアドレス、ページアドレスを含んでいても良い。更には、ページアドレスは、例えばワード線ＷＬ、奇数／偶数ビット線（Ｅ／Ｏ）、ストリングアドレス、あるいは下位ページ／中間ページ／上位ページ（Ｌ／Ｍ／Ｕ）等に関する情報を含んでいても良い。
【００４５】
ページアドレスの構成については、例えば、“不揮発性半導体記憶装置及びその制御方法(NONVOLATILE SEMICONDUCTOR MEMORY DEVICE AND CONTROL METHOD THEREOF)”という２０１３年３月４日に出願された米国特許出願１３／７８４，７５３号に記載されている。本特許出願は、その全体が本願明細書において参照により援用されている。
【００４６】
更にプロセッサ２３０は、ノーマルイレースコマンド“Ｄ０ｈ”を出力すると共に、ＣＬＥをアサートする。
【００４７】
これらのコマンド及びアドレスは、ＷＥｎがトグルされる毎にＮＡＮＤ型フラッシュメモリ１００の例えばレジスタ１２３に格納される。
【００４８】
コマンド“Ｄ０ｈ”に応答して、ＮＡＮＤ型フラッシュメモリ１００は、ノーマルイレースモードで消去動作を開始し、ビジー状態となる（Ｒ／Ｂｎ＝“Ｌ”）。以下、ビジー状態の期間、すなわちノーマルイレースモードによる消去動作期間を、ｔＥＲＡＳＥ_nrとする。
【００４９】
消去動作が完了すると、ＮＡＮＤ型フラッシュメモリ１００はレディ状態となり、Ｒ／Ｂｎは“Ｈ”レベルに復帰する。
【００５０】
１．２．１．２  スローイレースモード時について
次にスローイレースモード時におけるコントローラ２００の動作について、図４を用いて説明する。以下、ノーマルイレースモードと異なる点についてのみ説明する。
【００５１】
図示するように、プロセッサ２３０は、アドレス出力後、スローイレースコマンド“ｙｙｈ”を出力すると共に、ＣＬＥをアサートする。そして、コマンド“ｙｙｈ”に応答して、ＮＡＮＤ型フラッシュメモリ１００は、スローイレースモードで消去動作を開始し、ビジー状態となる（Ｒ／Ｂｎ＝“Ｌ”）。この時のビジー状態の期間をｔＥＲＡＳＥ_slとすると、消去ループ回数が同じ場合、ｔＥＲＡＳＥ_sl＞ｔＥＲＡＳＥ_nrの関係となる。
【００５２】
１．２．２  ＮＡＮＤ型フラッシュメモリ１００の動作について
次に、消去動作時におけるＮＡＮＤ型フラッシュメモリ１００の動作について説明する。
【００５３】
１．２．２．１  消去動作の全体的な流れについて
まず、消去動作の全体的な流れについて、図５を用いて説明する。
【００５４】
図示するように、まずシーケンサ１２１は、コントローラ２００から消去命令（消去コマンド及びアドレス）を受信する（ステップＳ１０１）。
【００５５】
シーケンサ１２１がコントローラ２００からノーマルイレースコマンド“Ｄ０ｈ”を受信した場合（ステップＳ１０２＿Ｙｅｓ）、シーケンサ１２１は、ノーマルイレースモードを選択する（ステップＳ１０３）。
【００５６】
そしてシーケンサ１２１は、受信したコマンド“Ｄ０ｈ”に応答して消去動作を開始し、まず消去パルスを印加する。より具体的には、シーケンサ１２１の命令に従って、ウェルドライバ１１５がメモリセルトランジスタの形成されたｐ型ウェル領域に消去パルスを印加する（ステップＳ１０４）。
【００５７】
次にシーケンサ１２１は、イレースベリファイを実行する（ステップＳ１０５）。以下、メモリセルトランジスタＭＴのデータが消去されていると判定された状態を「イレースベリファイにパスした」と呼び、未だデータの消去が完了していないと判定された状態を「イレースベリファイにフェイルした」と呼ぶ。
【００５８】
イレースベリファイにパスした場合、消去動作は終了する（ステップＳ１０６＿Ｙｅｓ）。他方で、イレースベリファイにフェイルした場合（ステップＳ１０６＿Ｎｏ）、シーケンサ１２１は、消去ループ回数が予め設定された上限回数であるか否かを判定する（ステップＳ１０７）。以下では、消去パルスの印加とイレースベリファイとを繰り返すこと「消去ループ」と呼ぶ。シーケンサ１２１は、イレースベリファイにパスするか、消去ループの回数が上限回数に達するまで、消去パルスの印加とイレースベリファイを繰り返す。
【００５９】
消去ループが上限回数に達していた場合（ステップＳ１０７＿Ｙｅｓ）、シーケンサ１２１は、消去動作を終了し、コントローラ２００に消去動作が正常に終了しなかったことを報告する。
【００６０】
消去ループが上限回数に達していなかった場合（ステップＳ１０７＿Ｎｏ）、シーケンサ１２１は、ステップＳ１０４に戻り、再び消去パルスを印加する。すなわち、ウェルドライバ１１５は、ｐ型ウェル領域に消去パルスを印加する。
【００６１】
また、シーケンサ１２１がコントローラ２００からスローイレースコマンド“ｙｙｈ”を受信した場合（ステップＳ１０２＿Ｎｏ）、シーケンサ１２１は、スローイレースモードを選択する（ステップＳ１０８）。
【００６２】
そしてシーケンサ１２１は、受信したコマンド“ｙｙｈ”に応答して、消去パルスを印加する（ステップＳ１０９）。
【００６３】
次にシーケンサ１２１は、ノーマルイレースモードの場合と同様に、イレースベリファイを行い（ステップＳ１１０）、イレースベリファイにパスする（ステップＳ１１１＿Ｙｅｓ）まで、あるいは、消去ループが予め設定された上限回数に達する（ステップＳ１１２＿Ｙｅｓ）まで消去ループを繰り返す。
【００６４】
１．２．２．２  消去パルス印加時の電圧について
次に、消去パルス印加時における各配線の電位関係について、図６を用いて説明する。図６の上段のグラフは、ノーマルイレースモード選択時を示しており、図６の下段のグラフはスローイレースモード選択時を示している。
【００６５】
まず、ノーマルイレースモード時について説明する。図６の上段に示すように、時刻ｔ１において、ウェルドライバ１１５は、選択ブロックＢＬＫのｐ型ウェル領域に、消去パルスとして電圧ＶＥＲＡ_nrを印加する。
【００６６】
またロウデコーダ１１２は、消去対象ブロックＢＬＫのワード線ＷＬに電圧ＶＥＲＡ＿ＷＬを印加する。電圧ＶＥＲＡ＿ＷＬは、電荷蓄積層から電子を引く抜くために、電圧ＶＥＲＡ_nrよりも十分に低い電圧である。電圧ＶＥＲＡ_nrと電圧ＶＥＲＡ＿ＷＬとの電位差に応じて、選択ワード線ＷＬに接続されたメモリセルトランジスタＭＴの電荷蓄積層から電子が引き抜かれ、データが消去される。なお、図６ではビット線ＢＬ、ソース線ＳＬ、並びにセレクトゲート線ＳＧＤ及びＳＧＳはフローティング状態とされる場合を例に説明したが、セレクトゲート線ＳＧＤ及びＳＧＳには、ロウデコーダ１１２により電圧ＶＥＲＡ_nrが印加されても良い。
【００６７】
次に時刻ｔ２以降において、リカバリ処理が行われ、消去パルスの印加が終了する。以下、ノーマルイレースモードにおいて、１回の消去パルスの印加期間（時刻ｔ１〜ｔ２）を、「期間ｔ＿ＥＲＡ_nr」と呼ぶ。
【００６８】
次に、スローイレースモード時について説明する。以下では、ノーマルイレースモードと異なる点についてのみ説明する。
【００６９】
図６の下段に示すように、時刻ｔ１において、ウェルドライバ１１５は、ｐ型ウェル領域に、消去パルスとして電圧ＶＥＲＡ_slを印加する。電圧ＶＥＲＡ_slは、電圧ＶＥＲＡ_nrよりも低い電圧である。またロウデコーダ１１２は、ワード線ＷＬに電圧ＶＥＲＡ＿ＷＬを印加する。よって、スローイレースモードにおけるワード線ＷＬとｐ型ウェル領域（バックゲート）との間の電位差は、ノーマルイレースモードの場合よりも小さい。なお、以下、電圧ＶＥＲＡ_nrと電圧ＶＥＲＡ_slとを特に区別しない場合は、単に電圧ＶＥＲＡと呼ぶ。
【００７０】
また、スローイレースモードにおける、１回の消去パルス印加期間（時刻ｔ１〜ｔ３）を「期間ｔ＿ＥＲＡ_sl」とすれば、ｔ＿ＥＲＡ_sl＞ｔ＿ＥＲＡ_nrの関係がある。つまり、スローイレースモードでは、ノーマルイレースモードに比べて、消去パルスの電位は小さいが、その印加期間がより長く設定される。
【００７１】
次に時刻ｔ３以降において、リカバリ処理が行われ、消去パルスの印加が終了する。
【００７２】
１．３  本実施形態に係る効果について
ＮＡＮＤ型フラッシュメモリ等の不揮発性半導体メモリ装置に用いられているメモリセルトランジスタＭＴには、ＦＧ構造やＭＯＮＯＳ構造などがある。しかし、いずれの構造においてもデータの書き換え（書き込み及び消去）を繰り返していくうちに、メモリセルトランジスタＭＴのゲート絶縁膜の劣化等により書き込み及び消去の特性が変化（劣化）してくる。特性の変化が大きくなると、正常な書き込み及び消去動作ができなくなる可能性がある。そのため、メモリセルトランジスタＭＴにおけるデータの書き換え回数を制限する必要がある。
【００７３】
この点、例えば、消去動作時に消去パルスの電圧（電圧ＶＥＲＡ）を下げることで、メモリセルトランジスタＭＴの劣化を抑え、書き換えによる劣化に対する耐性（以下「書き込み／消去耐性(W/E Endurance)」と呼ぶ）を改善させることができる。しかしながら、閾値を十分に低下させるためには、電圧を下げた分だけ、消去パルス印加期間を長くする必要がある。消去パルス印加期間を長くすると、消去時間（消去動作開始から完了までの処理時間）が長くなる傾向にあり、その結果、次の動作に遅延が生じる可能性がある。また、例えば消去時間にユーザの使用用途に基づく制約がある場合などは、一定の時間内に消去動作を完了させる必要がある。このため、消去パルス印加期間を延ばすことは難しい。
【００７４】
従って、一般的に製品では、両者のトレードオフの関係を前提として、消去時間がユーザにとっての許容範囲内となるように、消去パルスの電圧及び消去パルス印加期間が設定され、出荷されている。
【００７５】
これに対し、本実施形態に係る構成では、半導体記憶装置がノーマルイレースモードとスローイレースモードの２つのイレースモードを備える。そしてコントローラ２００は、例えば消去時間の制約の有無に応じて、ノーマルイレースモードまたはスローイレースモードを選択することができる。これにより半導体記憶装置は、処理能力をほとんど落とすことなく、書き込み／消去耐性を改善することができる。以下、本効果につき具体的に説明する
消去時間に制限が無い場合、例えばホスト機器から次の命令を受信していない場合等には、コントローラ２００は、スローイレースモードを選択する。これにより、半導体記憶装置は、メモリセルトランジスタＭＴに印加する消去パルスの電圧を低減し、メモリセルトランジスタＭＴの劣化を抑えることができる。すなわち半導体記憶装置は、書き込み／消去耐性の改善を優先して消去動作を行うことができる。この場合、消去時間はノーマルイレースモードと比較して長くなる傾向にあるが、ホスト機器から次の命令を受信していないため、ホスト機器に対する処理能力、すなわち処理速度の低下にはならない。
【００７６】
他方で、消去時間に制限が有る場合、コントローラ２００は、ノーマルイレースモードを選択する。これにより半導体記憶装置は、消去時間（処理能力）優先で消去動作を行うことができる。
【００７７】
よって、本実施形態に係る構成では、状況に応じてイレースモードを選択することにより、ホスト機器からの要求に対して処理能力をほとんど落とすことなく、メモリセルトランジスタＭＴの劣化を抑制し、書き込み／消去耐性を改善することができる。また、書き込み／消去耐性が改善されることにより、データ書き換えの上限回数を増加できる。
【００７８】
更には、メモリセルトランジスタＭＴの劣化が抑制できるため、誤書き込み／誤消去を抑制でき、信頼性を向上することができる。
【００７９】
また、本実施形態に係る構成では、スローイレースモード時の消去パルスの電位が小さいため、ノーマルイレースモードに比べて、ビット線ＢＬ、ソース線ＳＬ、並びにセレクトゲート線ＳＧＤ及びＳＧＳの充電容量が低減される。よって、消費電力を低減できる。
【００８０】
なお、三次元積層型ＮＡＮＤ型フラッシュメモリは、二次元ＮＡＮＤ型フラッシュメモリに比べてブロックＢＬＫのメモリサイズが大きく、消去時間が長くなりやすい傾向にある。従って、三次元積層型ＮＡＮＤ型フラッシュメモリでは、二次元ＮＡＮＤ型フラッシュメモリに比べて、ＶＥＲＡの電位を高く設定しつつ、その印加期間は短く設定される傾向がある。従って、三次元ＮＡＮＤ型フラッシュメモリは、二次元ＮＡＮＤ型フラッシュメモリに比べて、消去動作によりメモリセルトランジスタが劣化しやすい構成と言うことができる。よって、本実施形態は、三次元ＮＡＮＤ型フラッシュメモリに適用することで、より顕著な効果が得られる。
【００８１】
２．第２実施形態
次に、第２実施形態に係る半導体記憶装置及びメモリシステムについて説明する。本実施形態は、第１実施形態における消去動作において、消去パルスが消去ループ回数に応じてステップアップされる際のステップアップ幅に関するものである。以下、第１実施形態と異なる点についてのみ説明する。
【００８２】
２．１  消去ループ回数と消去パルスの関係について
消去ループ回数と、消去パルス（電圧ＶＥＲＡ）の関係について、図７を用いて説明する。図７の上段は、ノーマルイレースモード時の消去ループ回数と電圧ＶＥＲＡ_nrの関係を示しており、図７の下段は、スローイレースモード時の消去ループ回数と電圧ＶＥＲＡ_slの関係を示している。
【００８３】
図７の上段に示すように、ノーマルイレースモードでは、消去パルスの電位は、消去ループを繰り返す度に、ΔＶＥＲＡ_nrだけステップアップされる。これに対して図７の下段に示すように、スローイレースモードにおける消去パルスの電位は、ノーマルイレースモードにおけるΔＶＥＲＡ_nrより大きいΔＶＥＲＡ_slだけステップアップされる。
【００８４】
２．２  本実施形態における効果について
本実施形態に係る構成では、スローイレースモード時における消去パルスのステップアップ幅をノーマルイレースモード時より大きくしている。これにより、スローイレースモード選択時に、１回の消去パルス印加による閾値の変動量を大きくし、消去ループ回数（消去パルスの印加回数）を低減することができる。よって、消去パルスの印加期間が長くなることによる消去時間の遅延を抑制することができる。更には、消去パルスの印加回数の低減により、メモリセルトランジスタＭＴの劣化を抑制し、書き込み／消去耐性を改善することができる。
【００８５】
更に本実施形態に係る構成では、消去動作及び次に行う書き込み動作の処理能力をほとんど落とすことなく、書き込み／消去耐性を改善させることができる。以下、本効果につき具体的に説明する。
【００８６】
一般的に消去パルスのステップアップ幅を大きくすると、消去ループ回数を少なくすることができる。そして消去パルスの印加回数が少なくなると、メモリセルトランジスタＭＴの劣化が抑制されるため、書き込み／消去耐性を改善させることができる。
【００８７】
しかしながら、ステップアップ幅を大きくすると、消去動作後のメモリセルトランジスタＭＴの閾値分布が広がりやすくなる。このため、次に書き込み動作を行う際、書き込み回数（３．１．２．１で説明するプログラムループ回数）のばらつきが大きくなり、書き込み回数が増加する傾向にある。更に、書き込み回数が増加すると、メモリセルトランジスタＭＴが劣化しやすくなる傾向にある。よって消去パルスのステップアップ幅を大きくすると、消去動作においては、消去時間が短くなり、メモリセルトランジスタＭＴの劣化が抑制されるが、次に行う書き込み動作においては、書き込み時間が長くなり、メモリセルトランジスタＭＴが劣化しやすくなる傾向にある。このため、一般的に製品では、消去パルスのステップアップ幅は、これらの問題が生じない範囲で設定されている。
【００８８】
これに対し、本実施形態に係る構成では、コントローラ２００は、例えば消去動作後の閾値分布のばらつきが次の書き込み動作で問題にならない場合、あるいは消去動作におけるメモリセルトランジスタＭＴの劣化抑制を優先する場合に、スローイレースモードを選択することができる。他方で、コントローラ２００は、例えば消去動作後の閾値分布のばらつき抑制を優先する場合、あるいは消去時間及び次に行う書き込み動作の書き込み時間、すなわち処理能力を優先する場合に、ノーマルイレースモードを選択することができる。従って、本実施形態に係る構成であると、消去動作及び次に行う書き込み動作の処理能力をほとんど落とすことなく、書き込み／消去耐性を改善させることができる。
【００８９】
３．第３実施形態
次に、第３実施形態に係る半導体記憶装置及びメモリシステムについて説明する。本実施形態は、上記第１実施形態で説明した２つのイレースモードの原理を、書き込み動作に適用したものである。以下では、第１及び第２実施形態と異なる点についてのみ説明する。
【００９０】
３．１  書き込み動作について  
まず、本実施形態に係る書き込み動作について説明する。書き込み動作は、メモリセルトランジスタの閾値を上昇させる（正電圧方向にシフトさせる）ためにプログラムパルスを印加する動作と、プログラムパルスを印加した結果、メモリセルトランジスタＭＴの閾値が目標とする値に達したか否かを判定するプログラムベリファイとを含む。そして書き込み動作には、「ノーマルプログラムモード」と「スロープログラムモード」と呼ばれる２つのプログラムモードがあり、ＮＡＮＤ型フラッシュメモリ１００は、コントローラ２００から受信するコマンドに基づいて、いずれかのプログラムモードで書き込み動作を行う。ノーマルプログラムモードとスロープログラムモードとでは、プログラムパルスの条件が異なる。具体的には、選択ワード線ＷＬへの印加電圧及び印加時間が異なる。スロープログラムモード時のプログラムパルスの電位はノーマルプログラムモード時よりも低く、印加期間はノーマルプログラムモード時よりも長い。以下、書き込み動作の詳細について説明する。
【００９１】
３．１．１  コントローラ２００の動作について
まず、書き込み動作時におけるコントローラ２００の動作について説明する。
【００９２】
３．１．１．１  ノーマルプログラムモード時について
まず、ノーマルプログラムモード時におけるコントローラ２００の動作について、図８を用いて説明する。
【００９３】
図示するように、プロセッサ２３０は、まず、書き込み動作を実行することを通知するコマンド“８０ｈ”をＮＡＮＤ型フラッシュメモリ１００に出力するとともに、ＣＬＥをアサートする。
【００９４】
次にプロセッサ２３０は、アドレスデータ“ＡＤＤ”を出力すると共に、ＡＬＥをアサートする。なお図８の例では、アドレスデータを１サイクルのデータとしたが、カラムアドレス及びロウアドレス等を送信するため、複数のサイクルであっても良い。
【００９５】
次にプロセッサ２３０は、書き込みデータ“ＤＡＴ”を必要なサイクル数出力する。
【００９６】
更にプロセッサ２３０は、ノーマルプログラムコマンド“１０ｈ”を出力すると共に、ＣＬＥをアサートする。
【００９７】
これらのコマンド、アドレス、及びデータは、ＮＡＮＤ型フラッシュメモリ１００の例えばレジスタ１２３に格納される。
【００９８】
コマンド“１０ｈ”に応答して、ＮＡＮＤ型フラッシュメモリ１００は、ノーマルプログラムモードで書き込み動作を開始し、ビジー状態となる（Ｒ／Ｂｎ＝“Ｌ”）。以下、ＮＡＮＤ型フラッシュメモリ１００におけるノーマルプログラムモードによる書き込み動作期間、すなわちビジー状態の期間をｔＰＲＯＧ_nrとする。
【００９９】
書き込み動作が完了すると、ＮＡＮＤ型フラッシュメモリ１００はレディ状態となり、Ｒ／Ｂｎは“Ｈ”レベルに復帰する。
【０１００】
３．１．１．２  スロープログラムモード時について
次に、スロープログラムモード時におけるコントローラ２００の動作について、図９を用いて説明する。以下、ノーマルプログラムモードと異なる点についてのみ説明する。
【０１０１】
図示するように、プロセッサ２３０は、書き込みデータ出力後、スロープログラムコマンド“ｘｘｈ”を出力すると共に、ＣＬＥをアサートする。そして、コマンド“ｘｘｈ”に応答して、ＮＡＮＤ型フラッシュメモリ１００は、スロープログラムモードで書き込み動作を開始し、ビジー状態となる（Ｒ／Ｂｎ＝“Ｌ”）。この時のビジー状態の期間をｔＰＲＯＧ_slとすると、プログラムループ回数が同じ場合、ｔＰＲＯＧ_sl＞ｔＰＲＯＧ_nrの関係となる。
【０１０２】
３．１．２  ＮＡＮＤ型フラッシュメモリ１００の動作について
次に、書き込み動作時におけるＮＡＮＤ型フラッシュメモリ１００の動作について説明する。
【０１０３】
３．１．２．１  書き込み動作の全体的な流れについて
まず、書き込み動作の全体的な流れについて、図１０を用いて説明する。
【０１０４】
図示するように、まずシーケンサ１２１は、コントローラ２００から書き込み命令（コマンド、アドレス、及びデータ）を受信する（ステップＳ１２１）。
【０１０５】
シーケンサ１２１がコントローラ２００からノーマルプログラムコマンド“１０ｈ”を受信した場合（ステップＳ１２２＿Ｙｅｓ）、シーケンサ１２１は、ノーマルプログラムモードを選択する（ステップＳ１２３）。
【０１０６】
そしてシーケンサ１２１は、受信したコマンド“１０ｈ”に応答して書き込み動作を開始し、まずプログラムパルスを印加する。より具体的には、シーケンサ１２１の命令に従って、ロウデコーダ１１２がワード線ＷＬにプログラムパルスを印加する（ステップＳ１２４）。
【０１０７】
次にシーケンサ１２１は、プログラムベリファイを実行する（ステップＳ１２５）。
【０１０８】
プログラムベリファイにパスした場合（ステップＳ１２６＿Ｙｅｓ）、書き込み動作は終了する。他方で、プログラムベリファイにフェイルした場合（ステップＳ１２６＿Ｎｏ）、シーケンサ１２１は、プログラムループ回数が予め設定された上限回数であるか否かを判定する（ステップＳ１２７）。以下では、プログラムパルスの印加とプログラムベリファイとを繰り返すことを「プログラムループ」と呼ぶ。シーケンサ１２１は、プログラムベリファイにパスするか、プログラムループの回数が上限回数に達するまで、プログラムパルスの印加とプログラムベリファイを繰り返す。
【０１０９】
プログラムループが上限回数に達していた場合（ステップＳ１２７＿Ｙｅｓ）、シーケンサ１２１は、書き込み動作を終了し、コントローラ２００に書き込み動作が正常に終了しなかったことを報告する。
【０１１０】
プログラムループが上限回数に達していなかった場合（ステップＳ１２７＿Ｎｏ）、シーケンサ１２１は、ステップＳ１２４に戻り、再びプログラムパルスを印加する。
【０１１１】
また、シーケンサ１２１がコントローラ２００からスロープログラムコマンド“ｘｘｈ”を受信した場合（ステップＳ１２２＿Ｎｏ）、シーケンサ１２１は、スロープログラムモードを選択する（ステップＳ１２８）。
【０１１２】
そしてシーケンサ１２１は、コマンド“１０ｈ”に応答して、プログラムパルスを印加する（ステップＳ１２９）。
【０１１３】
次にシーケンサ１２１は、ノーマルプログラムモードの場合と同様に、プログラムベリファイを行い（ステップＳ１３０）、プログラムベリファイにパスする（ステップＳ１３１＿Ｙｅｓ）まで、あるいは、プログラムループが予め設定された上限回数に達する（ステップＳ１３２＿Ｙｅｓ）まで繰り返しプログラムループを繰り返す。
【０１１４】
３．１．２．２  プログラム時の電圧について
次にプログラム時における各配線の電位関係について説明する。
【０１１５】
まず、ノーマルプログラムモード時について、図１１を用いて説明する。図示するように、時刻ｔ１で、センスアンプ１１３は、書き込み対象（対象となるメモリセルトランジスタＭＴの閾値レベルを変動させる）のビット線ＢＬ（図１１の参照符号“program”）に例えば電圧ＶＳＳを印加し、非書き込み対象（対象となるメモリセルトランジスタＭＴの閾値レベルをほとんど変動させない）のビット線ＢＬ（図１１の参照符号“inhibit”）に電圧ＶＢＬ（＞ＶＳＳ）を印加する。ソース線ドライバ１１４は、ソース線ＳＬに電圧ＶＳＲＣ（＞ＶＳＳ）を印加する。この状態において、ロウデコーダ１１２は、セレクトゲート線ＳＧＤに電圧ＶＳＧ１を印加し、選択トランジスタＳＴ１をオン状態にする。電圧ＶＳＧ１は、書き込み対象のビット線ＢＬに接続された選択トランジスタＳＴ１と、非書き込み対象のビット線ＢＬに接続された選択トランジスタＳＴ１とをともにオン状態とする電圧である。選択トランジスタＳＴ１の閾値をＶｔとすると、電圧ＶＳＧ１は、ＶＳＧ１−Ｖｔ＞ＶＢＬの関係となる。また、ロウデコーダ１１２は、セレクトゲート線ＳＧＳにＶＳＳを印加し、全ての選択トランジスタＳＴ２をカットオフ状態にする。
【０１１６】
次に時刻ｔ２で、ロウデコーダ１１２は、選択ブロックＢＬＫのセレクトゲート線ＳＧＤに電圧ＶＳＧ２を印加する。電圧ＶＳＧ２は、書き込み対象のビット線ＢＬに接続された選択トランジスタＳＴ１をオン状態とし、非書き込み対象のビット線ＢＬに接続された選択トランジスタＳＴ１をカットオフ状態とする電圧である。よって、電圧ＶＳＧ２は、ＶＳＳ＜ＶＳＧ２−Ｖｔ＜ＶＢＬの関係となる。この結果、書き込み対象のメモリセルトランジスタＭＴのチャネルは、ビット線ＢＬより電圧ＶＳＳが印加され、非書き込み対象のメモリセルトランジスタＭＴのチャネルは、フローティング状態となる。
【０１１７】
次に時刻ｔ３で、ロウデコーダ１１２は、選択ワード線ＷＬ及び非選択ワード線ＷＬに電圧ＶＰＡＳＳを印加する。電圧ＶＰＡＳＳは、書き込みの際、メモリセルトランジスタＭＴの閾値に関わらず、メモリセルトランジスタＭＴをオン状態にしつつ、非選択メモリセルトランジスタＭＴへの誤書き込みを防止する電圧である。
【０１１８】
次に時刻ｔ４で、ロウデコーダ１１２は、選択ワード線ＷＬにプログラムパルスとして電圧ＶＰＧＭ_nrを印加する。電圧ＶＰＧＭ_nrと電圧ＶＰＡＳＳとは、ＶＰＧＭ_nr＞ＶＰＡＳＳの関係がある。これにより、選択ワード線ＷＬに接続された書き込み対象のメモリセルトランジスタＭＴでは、電圧ＶＰＧＭ_nrと電圧ＶＳＳ（チャネル電位）との電位差に応じて電荷蓄積層に電荷が注入される。他方で、選択ワード線ＷＬに接続された非書き込み対象のメモリセルトランジスタＭＴでは、電圧ＶＰＧＭ_nrとの容量カップリングによりチャネル電位が上昇するため、電荷蓄積層に電荷が注入されない。
【０１１９】
その後、時刻ｔ５〜ｔ６で、リカバリ処理が行われ、各配線がリセットされる。以下、ノーマルプログラムモードにおいて、１回のプログラムパルスの印加期間（時刻ｔ４〜ｔ５）を、「期間ｔ＿ＰＧＭ_nr」と呼ぶ。
【０１２０】
次にスロープログラムモード時について、図１２を用いて説明する。以下、ノーマルプログラムモード時と異なる点についてのみ説明する。
【０１２１】
図示するように、時刻ｔ４〜ｔ５において、ロウデコーダ１１２は、選択ワード線ＷＬに電圧ＶＰＧＭ_slを印加する。電圧ＶＰＧＭ_sl、電圧ＶＰＧＭ_nr、及び電圧ＶＰＡＳＳは、ＶＰＧＭ_nr＞ＶＰＧＭ_sl＞ＶＰＡＳＳ（＞ＶＳＳ）の関係がある。よってプログラムパルス印加時のワード線ＷＬとバックゲート（ｐ型ウェル領域）との電位差は、ノーマルプログラムモード時よりとスロープログラムモード時の方が小さい。これにより、選択ワード線ＷＬに接続された書き込み対象のメモリセルトランジスタＭＴでは、電圧ＶＰＧＭ_slと電圧ＶＳＳ（チャネル電位）との電位差に応じて電荷蓄積層に電荷が注入される。以下、スロープログラムモードにおいて、１回のプログラムパルスの印加期間（時刻ｔ４〜ｔ５）を「期間ｔ＿ＰＧＭ_nr」とすれば、ｔ＿ＰＧＭ_sl＞ｔ＿ＰＧＭ_nrの関係にある。つまり、スロープログラムモードでは、ノーマルプログラムモードと比べて、プログラムパルスの電位は小さいが、その印加期間がより長く設定される。
【０１２２】
３．３  本実施形態に係る効果について
本実施形態に係る構成であると、第１及び第２実施形態と同様に書き込み／消去耐性を改善できる。以下、具体的に説明する。
【０１２３】
例えば、書き込み／消去耐性は、消去動作時に消去パルスの電圧（ＶＥＲＡ）を下げるのと同様に、書き込み動作時にプログラムパルスの電圧（ＶＰＧＭ）を下げることで改善させることができる。しかしながら、閾値を十分に上昇させるためには、プログラムパルスを下げた分だけプログラムパルス印加期間を長くする必要がある。プログラムパルス印加期間を長くすると、書き込み時間（書き込み動作開始から完了までの処理時間）が長くなる傾向にあり、その結果、半導体記憶装置の処理能力の低下を招く可能性がある。このため、一般的に製品ではプログラムパルス印加期間を延ばすことは難しい。
【０１２４】
これに対し、本実施形態に係る構成では、半導体記憶装置がノーマルプログラムモードとスロープログラムモードの２つのプログラムモードを備える。そして、コントローラ２００は、例えば書き込み時間の制約の有無に応じて、ノーマルプログラムモードまたはスロープログラムモードを選択することができる。より具体的には、書き込み時間に制限が無い場合、例えばホスト機器から次の命令を受信していない場合等には、コントローラ２００は、スロープログラムモードを選択する。これにより、半導体記憶装置は、メモリセルトランジスタＭＴに印加するプログラムパルスの電圧を低減し、メモリセルトランジスタＭＴの劣化を抑えることができる。すなわち半導体記憶装置は書き込み／消去耐性の改善を優先して書き込み動作を行うことができる。
【０１２５】
他方で、書き込み時間に制限が有る場合、コントローラ２００は、ノーマルプログラムモードを選択する。これにより、半導体記憶装置は、書き込み時間（処理能力）優先で書き込み動作を行うことができる。
【０１２６】
よって、本実施形態に係る構成では、状況に応じてプログラムモードを選択することにより、処理能力をほとんど落とすことなく、メモリセルトランジスタＭＴの劣化を抑制し、書き込み／消去耐性を改善することができる。また書き込み／消去耐性が改善することにより、データ書き換えの上限回数を増加できる。
【０１２７】
更には、メモリセルトランジスタＭＴの劣化が抑制できるため、誤書き込み／誤消去を抑制でき、信頼性を向上することができる。
【０１２８】
また、本実施形態に係る構成では、スロープログラムモード時のプログラムパルスの電位が小さいため、ノーマルプログラムモードに比べてワード線ＷＬの充電容量が低減される。よって、消費電力を低減できる。
【０１２９】
４．第４実施形態
次に、第４実施形態に係る半導体記憶装置及びメモリシステムについて説明する。本実施形態は、第３実施形態における書き込み動作において、プログラムパルスがプログラムループ回数に応じてステップアップされる際のステップアップ幅に関するものである。以下、第３実施形態と異なる点についてのみ説明する。
【０１３０】
４．１  プログラムループ回数とプログラムパルスの関係について
プログラムループ回数と、プログラムパルス（電圧ＶＰＧＭ）の関係について、図１３を用いて説明する。図１３の上段は、ノーマルプログラムモード時のプログラムループ回数と電圧ＶＰＧＭ_nrの関係を示しており、図１３の下段は、スロープログラムモード時のプログラムループ回数と電圧ＶＰＧＭ_slの関係を示している。
【０１３１】
図１３の上段に示すように、ノーマルプログラムモードでは、プログラムパルスの電位は、プログラムループを繰り返す度に、ΔＶＰＧＭ_nrだけステップアップされる。これに対して図１３の下段に示すように、スロープログラムモードにおけるプログラムパルスの電位は、ノーマルプログラムモードにおけるΔＶＰＧＭ_nrより大きいΔＶＰＧＭ_slだけステップアップされる。
【０１３２】
４．２  本実施形態における効果について
本実施形態に係る構成では、スロープログラムモード時におけるプログラムパルスのステップアップ幅をノーマルプログラムモード時より大きくしている。これにより、スロープログラムモード選択時に、１回のプログラムパルスによる閾値の変動量を大きくし、プログラムループ回数（プログラムパルスの印加回数）を低減することができる。よって、プログラムパルスの印加期間が長くなることによる書き込み時間の遅延を抑制することができる。更には、プログラムパルスの印加回数の低減により、書き込み／消去耐性を改善することができる。
【０１３３】
更に本実施形態に係る構成では、書き込みデータの信頼性をほとんど低下させることなく、より効果的に書き込み／消去耐性を改善させることができる。以下、本効果につき説明する。
【０１３４】
一般的にプログラムパルスのステップアップ幅を大きくすると、プログラムループ回数を少なくすることができる。そしてプログラムパルスの印加回数が少なくなると、メモリセルトランジスタＭＴの劣化が抑制されるため、書き込み／消去耐性を改善させることができる。しかしながら、ステップアップ幅を大きくすると、メモリセルトランジスタＭＴの閾値分布が広がりやすくなるため、誤書き込みあるいは誤読み出しが生じる可能性が高くなるため、データの信頼性が低下する。
【０１３５】
これに対し、本実施形態に係る構成では、コントローラ２００は、例えば閾値分布のばらつきに対する制約が少ない場合、すなわちデータ信頼性への影響が少ない場合に、スロープログラムモードを選択し、例えば閾値分布のばらつき抑制を優先する場合、すなわち書き込みデータの信頼性を優先する場合には、ノーマルプログラムモードを選択することができる。従って、本実施形態に係る構成であると、書き込みデータの信頼性をほとんど低下させることなく、書き込み／消去耐性を改善させることができる。
【０１３６】
５．第５実施形態
次に第５実施形態に係る半導体記憶装置及びメモリシステムについて説明する。本実施形態は、上記第１及び第２実施形態においてスローイレースモードが選択される場合の具体例に関するものである。
【０１３７】
すなわち本例では、コントローラ２００が消去動作を一旦中断させ（以下、「サスペンドイレース」と呼ぶ）、例えば読み出し動作といった他の動作を優先的に実行させた後に、消去動作を再開させる場合に、スローイレースモードが適用される。なお、本実施形態では、サスペンドイレース後、読み出し動作を優先的に実行させる場合について説明するが、例えば書き込み動作であっても良く、他の動作であっても良い。以下では、第１及び第２実施形態と異なる点についてのみ説明する。
【０１３８】
また、サスペンドイレースについては、例えば、“改良された消去動作を実行する不揮発性半導体記憶装置”という２０１１年３月２１日に出願された米国特許出願１３／０５２，１５８号に記載されている。本特許出願は、その全体が本願明細書において参照により援用されている。
【０１３９】
５．１  第１例
まず本実施形態の第１例について説明する。本例は、ノーマルイレースモードで消去動作を開始し、消去動作中断後には、スローイレースモードで消去動作を再開するものである。
【０１４０】
５．１．１  サスペンドイレースの全体の流れについて
まずサスペンドイレースの全体の流れについて、図１４を用いて説明する。
【０１４１】
図示するように、まずコントローラ２００のホストインターフェイス回路２１０は、ホスト機器より消去命令を受信する（ステップＳ２００）。
【０１４２】
この消去命令に応答してコントローラ２００のプロセッサ２３０は、ノーマルイレースコマンド及びアドレスデータを、ＮＡＮＤインターフェイス回路２５０を介してＮＡＮＤ型フラッシュメモリ１００に送信する（ステップＳ２０１）。
【０１４３】
すると、ＮＡＮＤ型フラッシュメモリ１００のシーケンサ１２１は、コントローラ２００から受信したノーマルイレースコマンドに基づき、ノーマルイレースモードで消去動作を実行する（ステップＳ２０２）。
【０１４４】
そして、ＮＡＮＤ型フラッシュメモリ１００が消去動作実行中に、コントローラ２００は、ホスト機器より例えば読み出し命令を受信したとする（ステップＳ２０３）。するとプロセッサ２３０は、実行中の消去動作よりも、受信した読み出し動作を優先させると判断した場合、サスペンドコマンドをＮＡＮＤ型フラッシュメモリ１００に送信する（ステップＳ２０４）。
【０１４５】
するとシーケンサ１２１は、受信したサスペンドコマンドに基づいて、消去動作を一旦中断する（ステップＳ２０５）。より具体的には、シーケンサ１２１は、サスペンドコマンドを受信した際に行っていた消去パルスの印加あるいはイレースベリファイが終了した段階で、消去動作を中断し、中断時のステータス情報を例えばレジスタ１２３に保存する。なお、シーケンサ１２１は、ステータス情報をコントローラ２００に送信しても良い。
【０１４６】
次にプロセッサ２３０は、消去動作が中断され、Ｒ／Ｂｎが“Ｈ”レベルに復帰したのを確認すると、読み出しコマンド及びアドレスデータをＮＡＮＤ型フラッシュメモリ１００に送信する（ステップＳ２０６）。
【０１４７】
するとシーケンサ１２１は、受信した読み出しコマンドに基づき、メモリセルアレイからデータを読み出し（ステップＳ２０７）、その結果をコントローラ２００に送信する。
【０１４８】
次にプロセッサ２３０は、読み出しデータのＥＣＣ処理等を行った後、データをホスト機器に送信する（ステップＳ２０８）。このようにして読み出し動作が完了した後、プロセッサ２３０は、レジュームコマンド及びスローイレースコマンドをアドレスデータと共に、ＮＡＮＤ型フラッシュメモリ１００に送信する（ステップＳ２０９）。
【０１４９】
するとシーケンサ１２１は、受信したレジュームコマンド及びスローイレースコマンドに基づき、スローイレースモードで消去動作を再開する（ステップＳ２１０）。より具体的には、シーケンサ１２１は、レジスタ１２３内のステータス情報を確認し、消去パルス印加直後に動作を中断していた場合はイレースベリファイから動作を再開する。他方で、イレースベリファイ終了直後に動作を中断していた場合は、消去パルスの印加から消去動作を再開する。
【０１５０】
５．１．２  サスペンドイレース時の消去動作について
次に、上記サスペンドイレースにつき、図１５を用いて詳細に説明する。
【０１５１】
図示するように、まずプロセッサ２３０は、図３で説明した通り、ノーマルイレースモードで消去動作を実行するため、コマンド“６０ｈ”、アドレスデータ“ＡＤＤ１”、及びノーマルイレースコマンド“Ｄ０ｈ”を出力する。すると、シーケンサ１２１は、コマンド“Ｄ０ｈ”に応じてノーマルイレースモードで消去動作を開始し、ビジー状態（Ｒ／Ｂｎ＝“Ｌ”）となる。
【０１５２】
ビジー状態において、プロセッサ２３０は、ホスト機器より読み出し命令を受信すると、サスペンドコマンド“ＦＦ”とアドレスデータ“ＡＤＤ２”とを出力する。シーケンサ１２１は、ビジー状態においてもコマンド“ＦＦ”を受信すると、アドレスデータ“ＡＤＤ２”を無視して消去動作を中断させる。なお、コマンド“ＦＦ”は、消去動作を中断させるためのコマンドでも良く、ＮＡＮＤ型フラッシュメモリ１００における書き込み、読み出し、及び消去を含めた全ての動作を中断させるためのコマンドでも良い。また、コントローラ２００は、サスペンドコマンド“ＦＦ”を先に出力しても良く、アドレスデータ“ＡＤＤ２”を先に出力しても良く、出力の順序は特に限定しない。更には、アドレスデータ“ＡＤＤ２”は省略されても良い。また、シーケンサ１２１は、アドレスデータ受信後、次の消去動作（消去パルスの印加あるいはイレースベリファイ）を中断したが、サスペンドコマンド“ＦＦ”を受信後、アドレスデータの受信完了を待たずに、次の消去動作の中断を実行しても良い。
【０１５３】
図１５の例では、シーケンサ１２１は、３回目の消去パルス印加終了前に、コマンド“ＦＦ”とアドレスデータ“ＡＤＤ２”とを受信している。そしてシーケンサ１２１は、３回目の消去パルス印加終了後に消去動作を中断させ、Ｒ／Ｂｎを“Ｈ”レベルに復帰させる。
【０１５４】
次にプロセッサ２３０は、Ｒ／Ｂｎが“Ｈ”レベルに復帰したのを確認した後、読み出しを実行することを通知するコマンド“００ｈ”、アドレスデータ“ＡＤＤ３”、及び読み出しコマンド“３０ｈ”を出力する。なお、図１５の例では１サイクルでアドレスデータが転送される例を示しているが、複数サイクルで転送されても良い。
【０１５５】
次にシーケンサ１２１は、コマンド“３０ｈ”に応答して、読み出し動作を開始し、ビジー状態となる。そして、メモリセルアレイ１１１からデータ“Ｒ−ＤＡＴ”の読み出しが完了すると、Ｒ／Ｂｎが“Ｈ”レベルに復帰する（レディ状態となる）。Ｒ／Ｂｎ信号が“Ｈ”レベルになると、コントローラ２００は、ＮＡＮＤ型フラッシュメモリ１００にリードイネーブル信号ＲＥｎを送信して、データ“Ｒ−ＤＡＴ”を読み出す。
【０１５６】
次にプロセッサ２３０は、読み出し動作が完了すると、レジュームコマンド“２７ｈ”、コマンド“６０ｈ”、アドレスデータ“ＡＤＤ４”、及びスローイレースコマンド“ｙｙｈ”を出力する。すると、シーケンサ１２１は、コマンド“２７ｈ”及び“ｙｙｈ”に応答して、消去中断時のステータスを確認した後、スローイレースモードで消去動作を再開し、ビジー状態となる。図１５の例では、消去パルス印加直後に動作を中断していたため、イレースベリファイからの消去動作再開となる。
【０１５７】
ＮＡＮＤ型フラッシュメモリ１００において消去動作が完了すると、Ｒ／Ｂｎは“Ｈ”レベルに復帰する。
【０１５８】
５．２  第２例
次に、本実施形態の第２例について説明する。本例は、第１例において、スローイレースモードで消去動作を開始するものである。以下では、第１例と異なる点についてのみ説明する。
【０１５９】
５．２．１  サスペンドイレースの全体の流れについて
まず、サスペンドイレースの全体の流れについて説明する。
【０１６０】
第１例で説明した図１４と異なる点は、ステップＳ２０１において、プロセッサ２３０が、スローイレースコマンドを出力する点と、ステップＳ２０２において、シーケンサ１２１が、スローイレースモードで消去動作を実行する点である。
【０１６１】
５．２．２  サスペンドイレース時の消去動作について
次に、上記サスペンドイレースにつき、図１６を用いて詳細に説明する。
【０１６２】
図示するように、プロセッサ２３０は、まずスローイレースモードで消去動作を実行するため、コマンド“６０ｈ”、アドレスデータ“ＡＤＤ１”、及びスローイレースコマンド“ｙｙｈ”を出力する。すると、シーケンサ１２１は、コマンド“ｙｙｈ”に応じてスローイレースモードで消去動作を開始し、ビジー状態（Ｒ／Ｂｎ＝“Ｌ”）となる。
【０１６３】
コントローラ２００は、ＮＡＮＤ型フラッシュメモリ１００がビジー状態である期間にホスト機器より読み出し命令を受信すると、プロセッサ２３０が、サスペンドコマンド“ＦＦ”とアドレスデータ“ＡＤＤ２”とを出力する。コマンド“ＦＦ”に応答して、ＮＡＮＤ型フラッシュメモリ１００のシーケンサ１２１は消去動作を中断する。図１６の例では、シーケンサ１２１は、２回目の消去パルス印加終了前にコマンド“ＦＦ”とアドレスデータ“ＡＤＤ２”とを受信しているため、２回目の消去パルス印加終了後に消去動作を中断させる。
【０１６４】
そしてコントローラ２００の命令に応答して、シーケンサ１２１は読み出し動作を実行する。この読み出し動作が完了すると、コントローラ２００はレジュームコマンド“２７ｈ”、コマンド“６０ｈ”、アドレスデータ“ＡＤＤ４”、及びスローイレースコマンド“ｙｙｈ”をＮＡＮＤ型フラッシュメモリ１００に送信する。これらの信号に応答してシーケンサ１２１は、レジスタ１２３内に保持されている消去中断時のステータス情報を確認した後、スローイレースモードで消去動作を再開する。図１６の例では、２回目の消去パルス印加後に消去動作を中断したため、シーケンサ１２１は、イレースベリファイから動作を再開させる。そして、本例ではサスペンドイレース前後でイレースモードの変更が無いため、シーケンサ１２１は、次の消去パルス（通算３回目の消去パルス）を印加する際、消去パルスをステップアップさせて、３回目の消去ループと同じ条件（ＶＥＲＡ_sl＋ΔＶＥＲＡ_sl×２回）にする。
【０１６５】
なお、第１例に示したようにイレースモードが変更される場合には、再開時の最初の消去パルスの電位は初期値とされる。
【０１６６】
５．３  本実施形態における効果について
本実施形態に係る構成では、サスペンドイレースを実行することにより、消去動作中に他の動作を割り込ませることができる。例えば、コントローラ２００は、ホスト機器より消去動作実行中のブロックＢＬＫと異なるブロックＢＬＫの読み出し命令を受信した場合、消去動作が完了していなくても、読み出し動作を割り込ませることができる。よって、ホスト機器からの命令を優先的に処理し、消去時間の制約が無い状況になってから、スローイレースモードを選択することができる。
【０１６７】
更に本実施形態に係る構成では、消去動作をサスペンドイレースにより中断させながら継続させることができる。つまり、次の別の動作、例えば消去対象ブロックＢＬＫと異なるブロックＢＬＫの読み出し動作等、を行うため消去時間の制約がある場合においても、この制約時間の間に消去動作が完了しなくても問題は生じない。よって、このような場合においてもスローイレースモードを適用することができる。従って、スローイレースモードの適用範囲を広げることができ、書き込み／消去耐性をより改善させることができる。
【０１６８】
なお、本実施形態では、サスペンドイレースにより消去動作が１度だけ中断される場合について説明したが、複数回中断されても良い。
【０１６９】
更には、消去動作開始時にスローイレースモードを選択し、サスペンドイレース後に、ノーマルイレースモードを選択しても良い。
【０１７０】
６．第６実施形態
次に第６実施形態に係る半導体記憶装置及びメモリシステムについて説明する。本実施形態は、上記第３及び第４実施形態においてスロープログラムモードが選択される場合の具体例に関するものである。
【０１７１】
すなわち本例では、あるページにページサイズ未満のデータが書き込まれた場合、当該ページの空き領域にダミーデータが書き込まれ、このダミーデータを書き込む場合に、スロープログラムモードが適用される。以下では、第３及び第４実施形態と異なる点についてのみ説明する。
【０１７２】
６．１  ダミーデータ書き込みの全体の流れについて
まず、ダミーデータ書き込みの全体の流れについて、特にページの空き領域との関係に着目して、図１７を用いて説明する。
【０１７３】
図示するように、まずシーケンサ１２１は、コントローラ２００のプロセッサ２３０よりノーマルプログラムコマンドを受信すると、書き込み動作開始時に、データが書き込まれていないページを選択する。
【０１７４】
次にシーケンサ１２１は、プロセッサ２３０から受信したノーマルプログラムコマンドに応じて、ノーマルプログラムモードで選択ページにデータを書き込む。この時、プロセッサ２３０から受信したデータサイズがページサイズよりも小さい場合、選択ページにデータが書き込まれていない領域（以下、「空き領域」と呼ぶ）ができる（図１７の（ａ））。他方で、データサイズとページサイズが同じ場合、選択ページに空き領域は生じない（図１７の（ｂ））。
【０１７５】
次に、書き込み動作が終了すると、プロセッサ２３０は書き込んだデータをＮＡＮＤ型フラッシュメモリ１００から読み出す。そしてプロセッサ２３０は、書き込みデータと読み出されたページのデータとを比較して、空き領域の有無を確認する。
【０１７６】
空き領域が有る場合、プロセッサ２３０は、空き領域へのダミーデータの書き込みをスロープログラムモードで実行するようにシーケンサ１２１に命令する。より具体的には、プロセッサ２３０は、空き領域を指定するカラムアドレスと、ダミーデータとをＮＡＮＤ型フラッシュメモリ１００に送信する。また、プロセッサ２３０は、空き領域にダミーデータを書き込んだ情報を保持し、次回以降にデータを書き込む際、ダミーデータを書き込んだ空き領域を選択しないようにする。
【０１７７】
するとシーケンサ１２１は、受信したコマンド及びアドレスに基づき、空き領域にスロープログラムモードでダミーデータを書き込む。ダミーデータは、消去レベル（Ｅレベル）のデータで無ければ良い。より具体的には、例えばメモリセルトランジスタＭＴが２ビット（４値）のデータを保持可能であり、４値に対応する閾値レベルを低い方からＥレベル、Ａレベル、Ｂレベル、及びＣレベルとした場合、ダミーデータは、Ｅレベルでなければ良く、Ａレベル、Ｂレベル、及びＣレベルのいずれでも良く、あるいはこれらの中間のレベルでも良い。
【０１７８】
なお、データの書き込みはページサイズで行われる。従って、ダミーデータを書き込む際には、既に書き込み済みの正味のデータが書き込まれているメモリセルトランジスタＭＴには、ダミーデータが書き込まれないようにする必要がある。このため、書き込み対象を示すデータを“０”データ、非書き込み対象を示すデータを“１”データとすると、正味のデータが書き込まれているメモリセルトランジスタＭＴに対応するビット線ＢＬには、“１”データが与えられる。そして、ダミーデータを書き込むべきメモリセルトランジスタに対応するビット線には、上記Ａレベル乃至Ｃレベルに対応して“１”データはまたは“０”データが与えられる。
【０１７９】
他方で、空き領域が無い場合、プロセッサ２３０は、ダミーデータの書き込みは行わない。
【０１８０】
なお、本実施形態では、１つのページにデータが書き込まれた場合について説明したが、データサイズにより２ページ以上にデータが書き込まれる場合がある。この場合には、最終ページデータのみを読み出せば十分である。但し、もちろん全てのページのデータを読み出しても良い。更に、本実施形態では、書き込み動作完了後に、ページの読み出し動作及びダミーデータの書き込み動作を続けて実行したが、それぞれの処理は連続していなくても良い。例えばコントローラ２００は、ホスト機器より他の処理命令を受信した場合には、そちらの処理を優先的に実行した後にページの読み出し動作及びダミーデータの書き込み動作を行っても良い。
【０１８１】
６．２  ダミーデータの書き込み動作について
次に、上記ダミーデータの書き込み動作について、図１８を用いて説明する。なお、図１７におけるノーマルプログラムモードによる書き込み動作は、図１３と同じであるため、図１８の例では、読み出し動作及びダミーデータ書き込み動作について示す。
【０１８２】
図示するように、プロセッサ２３０は、書き込んだデータを読み出すため、読み出しを実行することを通知するコマンド“００ｈ”、アドレスデータ“ＡＤＤ１”、及び読み出しコマンド“３０ｈ”を出力する。シーケンサ１２１は、コマンド“３０ｈ”に応じて読み出し動作を開始し、ビジー状態（Ｒ／Ｂｎ＝“Ｌ”）となる。そして、メモリセルアレイ１１１からデータ“Ｒ−ＤＡＴ”の読み出し動作が完了すると、Ｒ／Ｂｎが“Ｈ”レベルに復帰する。Ｒ／Ｂｎが“Ｈ”レベルになると、プロセッサ２３０は、リードイネーブル信号ＲＥｎをＮＡＮＤ型フラッシュメモリ１００に送信して、データ“Ｒ−ＤＡＴ”を読み出す。
【０１８３】
次にプロセッサ２３０は、読み出したデータから空き領域の有無を確認する。そして、ダミーデータの書き込みが必要と判断した場合、プロセッサ２３０は、ダミーデータの書き込みを実行することを通知するコマンド“８０ｈ”、空き領域を指定するアドレスデータ“ＡＤＤ２”、ダミーデータ“ＤＭ”、及びスロープログラムコマンド“ｘｘｈ”を出力する。シーケンサ１２１は、コマンド“ｘｘｈ”に応じて、スロープログラムモードでダミーデータの書き込み動作を実行する。
【０１８４】
６．３  本実施形態における効果について
本実施形態に係る構成では、ページの空き領域にスロープログラムモードでダミーデータを書き込むことにより、過消去によるメモリセルトランジスタＭＴの劣化を抑制して、書き込み／消去耐性を改善することができる。以下、本効果について説明する。
【０１８５】
データの消去動作においては、ページの空き領域に対応するビット、すなわちＥレベルのデータを保持しているメモリセルトランジスタＭＴにも、他のレベルのデータを保持しているメモリセルトランジスタＭＴと一緒に消去パルスが印加される。このため、空き領域に対応するメモリセルトランジスタＭＴの閾値は、マイナス側（負電圧側）に大きくシフトする（以下、「過消去」と呼ぶ）。そしてメモリセルトランジスタＭＴは、過消去により劣化しやすくなる。また、過消去状態のメモリセルトランジスタＭＴにデータを書き込む場合、閾値電圧が０Ｖ付近のメモリセルトランジスタＭＴに書き込む場合と比較してプログラムループ回数が多くなるため、メモリセルトランジスタＭＴがより劣化しやすい可能性がある。
【０１８６】
これに対し、本実施形態に係る構成では、ページの空き領域にダミーデータを書き込む。これにより、消去動作の際、空き領域のメモリセルトランジスタＭＴが過消去状態になることを抑制できる。よって、空き領域のメモリセルトランジスタＭＴの劣化を抑制することができる。更には、ダミーデータをスロープログラムモードで書き込むことにより、ダミーデータ書き込みによるメモリセルトランジスタＭＴの劣化も抑制することができる。従って、書き込み／消去耐性を改善することができる。
【０１８７】
更に、ダミーデータは、過消去を防ぐためＥレベル以外（Ｅレベルより正電圧側の閾値）のデータであれば良く、ダミーデータが書き込まれたメモリセルトランジスタＭＴの閾値分布は、通常のデータ書き込みの場合よりも広くなっても良い。このため、第４実施形態を適用し、ΔＶＰＧＭ_slのステップアップ幅を大きくして、プログラムループ回数を少なくすることができる。
【０１８８】
なおダミーデータが書き込まれたメモリセルトランジスタＭＴの閾値は、中性閾値である方が好ましい。中性閾値とは、電荷蓄積層の電荷が、電荷蓄積層の周辺の絶縁膜によるリークの影響をあまり受けずに、閾値がほとんど変動しない安定した状態にある閾値である。
【０１８９】
７．第７実施形態
次に、第７実施形態に係る半導体記憶装置及びメモリシステムについて説明する。本実施形態は、第１乃至第４実施形態で説明したイレースモードまたはプログラムモードを、メモリセルトランジスタＭＴのデータの消去回数に応じて決定するものである。以下、第１乃至第４実施形態と異なる点についてのみ説明する。
【０１９０】
７．１  消去回数の管理テーブルについて
まず、本実施形態における消去回数テーブルについて説明する。コントローラ２００は、例えば内蔵メモリ２２０に消去回数テーブルを備える。消去回数テーブルは、ブロックＢＬＫ毎（あるいは消去単位毎）の消去回数ｍと、イレースモードを決定するための判定値Ｍ（任意の整数）とを保持するテーブルである。消去回数ｍは、対象のブロックＢＬＫにて消去が実行される毎に、その値が更新される。
【０１９１】
なお、消去回数テーブルはＮＡＮＤ型フラッシュメモリ１００の図示せぬＲＯＭフューズ内に設けられても良い。そして、例えば電源投入時にコントローラ２００がＮＡＮＤ型フラッシュメモリ１００からＲＯＭフューズのデータを読み出しても良い。
【０１９２】
７．２  第１例  イレースモードの選択について
次にコントローラ２００が、対象ブロックＢＬＫの消去回数ｍに応じてイレースモードを選択する場合について、図１９を用いて説明する。本例ではイレースモードを決定する際の判定値をＭ１（任意の整数）とする。
【０１９３】
図示するように、まず、コントローラ２００は、ホスト機器から消去命令を受信する（ステップＳ２４０）。
【０１９４】
次にコントローラ２００のプロセッサ２３０は、消去回数テーブルを参照し、消去対象ブロックＢＬＫの消去回数ｍとイレースモード判定値Ｍ１を比較する（ステップＳ２４１）。
【０１９５】
消去回数ｍが０≦ｍ＜Ｍ１の場合（ステップＳ２４２＿Ｙｅｓ）、プロセッサ２３０は、ノーマルイレースコマンドを出力する。ＮＡＮＤ型フラッシュメモリ１００はノーマルイレースコマンドに応じて、ノーマルイレースモードで消去動作を実行する（ステップＳ２４３）。
【０１９６】
他方で消去回数ｍがｍ≧Ｍ１の場合（ステップＳ２４２＿Ｎｏ）、プロセッサ２３０は、スローイレースコマンドを出力する。ＮＡＮＤ型フラッシュメモリ１００は、スローイレースコマンドに応じて、スローイレースモードで消去動作を実行する（ステップＳ２４４）。
【０１９７】
そして、消去動作が完了すると消去回数ｍが更新される（例えば、ｍ＝ｍ＋１）。
【０１９８】
７．３  第２例  プログラムモードの選択について
次にコントローラ２００が、対象ブロックＢＬＫの消去回数ｍに応じてプログラムモードを選択する場合について、図２０を用いて説明する。本例ではプログラムモードを決定する際の判定値をＭ２（任意の整数）とする。
【０１９９】
図示するように、まず、コントローラ２００は、ホスト機器から書き込み命令を受信する（ステップＳ２５０）。
【０２００】
次にコントローラ２００のプロセッサ２３０は、消去回数テーブルを参照し、消去対象ブロックＢＬＫの消去回数ｍとプログラムモード判定値Ｍ２を比較する（ステップＳ２５１）。
【０２０１】
消去回数ｍが０≦ｍ＜Ｍ２の場合（ステップＳ２５２＿Ｙｅｓ）、プロセッサ２３０は、ノーマルプログラムコマンドを出力する。ＮＡＮＤ型フラッシュメモリ１００はノーマルプログラムコマンドに応じて、ノーマルプログラムモードで書き込み動作を実行する（ステップＳ２５３）。
【０２０２】
他方で消去回数ｍがｍ≧Ｍ２の場合（ステップＳ２５２＿Ｎｏ）、プロセッサ２３０は、スロープログラムコマンドを出力する。ＮＡＮＤ型フラッシュメモリ１００は、スロープログラムコマンドに応じて、スロープログラムモードで書き込み動作を実行する（ステップＳ２５４）。
【０２０３】
なお、本例では、ブロック毎に消去回数テーブルに応じて、プログラムモードを選択したが、ページ毎の書き込み回数に応じて、プログラムモードを選択しても良い。この場合、コントローラ２００は、書き込み回数テーブルを備え、ページ毎の書き込み回数と判定値の管理を行っても良い。そして、書き込み動作が実行される毎に書き込み回数が更新される。
【０２０４】
７．４  本実施形態に係る効果について
本実施形態によれば、ブロックＢＬＫ毎のデータ信頼性のばらつきを抑制できる。以下、具体的に説明する。
【０２０５】
メモリセルトランジスタＭＴの劣化は、データの書き換え回数の増加に伴い大きくなる。このため、書き換え回数の多い（利用頻度の高い）ブロックＢＬＫほど、メモリセルトランジスタＭＴの劣化が進み、消去及び書き込み特性が変化するため、データの信頼性が低くなる可能性がある。従って、書き換え回数の違いにより、ブロックＢＬＫ毎にデータ信頼性にばらつきが生じる可能性がある。
【０２０６】
これに対し、本実施形態に係る構成では、ブロックＢＬＫ毎に消去回数を管理する。そして、消去回数が判定値を超えたブロックＢＬＫでは、スローイレースモード、あるいはスロープログラムモードを選択する。これにより、書き換え回数の多いブロックＢＬＫでは、劣化の抑制を優先させて書き込みあるいは消去動作を実施することができる。よって、書き換え回数の違いによるデータ信頼性のばらつきを抑制できる。
【０２０７】
８．変形例等
上記実施形態に係る半導体記憶装置(100 in FIG.1)は、第１動作モード(ノーマルイレースモード or ノーマルプログラムモード)及び第２動作モード(スローイレースモード or スロープログラムモード)を有し、メモリセルトランジスタ(MT in FIG.2)と、メモリセルトランジスタに接続されたワード線(WL in FIG.2)とを備える。メモリセルトランジスタのデータを消去する場合、メモリセルトランジスタには消去パルス(VERA_nr or VERA_sl in FIG.6)が印加される。メモリセルトランジスタへデータを書き込む場合、メモリセルトランジスタにはプログラムパルス(VPGM_nr in FIG.11 or VPGM_sl in FIG.12)が印加される。第１動作モードにある際には、第１期間(t_ERA_nr in FIG.6 or t_PGM_nr in FIG.11)、消去パルスまたはプログラムパルスが印加されることにより、メモリセルトランジスタのバックゲートとワード線との電位差が第１電位差(VERA_nr-VERA_WL or VPGM_nr-VSS)とされる。第２動作モードにある際には、第１期間より長い第２期間(t_ERA_sl in FIG.6 or t_PGM_sl in FIG.12)、消去パルスまたはプログラムパルスが印加されることにより、バックゲートとワード線との電位差が、第１電位差より小さい第２電位差(VERA_sl-VERA_WL or VPGM_sl-VSS)とされる。
【０２０８】
上記実施形態を適用することにより、メモリセルトランジスタの劣化を抑制できる半導体記憶装置及びメモリシステムを提供できる
なお、実施形態は上記説明した形態に限定されるものではなく、種々の変形が可能である。
【０２０９】
例えば上記実施形態において、コントローラ２００は、消去回数のサイクルに応じてスローイレースモード（あるいはスロープログラムモード）を選択しても良い。具体的には、例えばコントローラ２００は、消去動作３回に１回のタイミングでスローイレースモード(あるいはスロープログラムモード)を選択するように設定されていても良く、更にはその設定回数も任意に変更可能であっても良い。
【０２１０】
更に製品出荷前にデータの書き込みを行う場合において、上記実施形態を適用し、スロープログラムモードでデータの書き込みを行っても良い。
【０２１１】
更に上記実施形態において、コントローラ２００は、メモリセルアレイ１１１内のブロックＢＬＫ間でデータを移動させる場合に、スロープログラムモードを適用させても良い。具体的には、例えばあるブロックＢＬＫのデータを消去する際、ブロックＢＬＫ内の有効データは、他のブロックＢＬＫに移動させる必要がある。この時の書き込み動作に、スロープログラムモードを適用しても良い。
【０２１２】
更に上記実施形態は、上記実施形態に係るイレースモードあるいはプログラムモードのみが適用されても良く、両方が適用されても良い。更に、複数の実施形態が組み合わされても良い。例えば第５実施形態と第６実施形態の両方が適用されても良く、第７実施形態の第１例と第２例の両方が適用されても良い。
【０２１３】
更に上記第６実施形態は、コントローラ２００が書き込みデータのサイズから予めページの空き領域の有無を判断しておくことにより、データの読み出し動作を省略しても良い。この場合、コントローラ２００は、読み出し動作無しでダミーデータの書き込みを指示しても良い。また第６実施形態では、コントローラ２００の命令によりＮＡＮＤ型フラッシュメモリ１００がダミーデータを書き込む場合を例に説明した。しかし、コントローラ２００から受信したデータがページサイズ未満であることをＮＡＮＤ型フラッシュメモリ１００が認識できる場合には、ＮＡＮＤ型フラッシュメモリ１００はコントローラ２００からの命令を待つこと無く、内部でダミーデータを生成して、これを空き領域に書き込んでも良い。そして、この書き込み動作の際にスロープログラムモードを適用できる。この場合、コントローラ２００は、空き領域にダミーデータが書き込まれた旨の情報をＮＡＮＤ型フラッシュメモリ１００から通知されても良いし、またはページサイズ未満のデータをＮＡＮＤ型フラッシュメモリ１００に送信した時点で、空き領域にはダミーデータが書き込まれるものと判断しても良い。
【０２１４】
更に上記実施形態は、メモリセルトランジスタＭＴが半導体基板上方に積層された三次元積層型ＮＡＮＤ型フラッシュメモリにも適用できる。
【０２１５】
更に、上記実施形態における「接続」とは、間に例えばトランジスタあるいは抵抗等、他の何かを介在させて間接的に接続されている状態も含む。
【０２１６】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【０２１７】
なお、本発明に関する各実施形態において、以下の通りであっても良い。例えばメモリセルトランジスタＭＴが２ビット（４値）のデータを保持可能であり、４値のいずれかを保持している際の閾値レベルを低い方からＥレベル（消去レベル）、Ａレベル、Ｂレベル、及びＣレベルとしたとき、
（１）読み出し動作では、
Ａレベルの読み出し動作に選択されたワード線に印加される電圧は、例えば0V〜0.55Vの間である。これに限定されることなく、0.1V〜0.24V、0.21V〜0.31V、0.31V〜0.4V、0.4V〜0.5V、及び0.5V〜0.55Vのいずれかの間にしても良い。
【０２１８】
Ｂレベルの読み出し動作に選択されたワード線に印加される電圧は、例えば1.5V〜2.3Vの間である。これに限定されることなく、1.65V〜1.8V、1.8V〜1.95V、1.95V〜2.1V、及び2.1V〜2.3Vのいずれかの間にしても良い。
【０２１９】
Ｃレベルの読み出し動作に選択されたワード線に印加される電圧は、例えば3.0V〜4.0Vの間である。これに限定されることなく、3.0V〜3.2V、3.2V〜3.4V、3.4V〜3.5V、3.5V〜3.6V、及び3.6V〜4.0Vのいずれかの間にしても良い。
【０２２０】
読み出し動作の時間（tR）としては、例えば25μs〜38μs、38μs〜70μs、または70μs〜80μsの間にしても良い。
【０２２１】
（２）書き込み動作は、上述した通りプログラム動作とベリファイ動作を含む。書き込み動作では、
プログラム動作時に選択されたワード線に最初に印加される電圧は、例えば13.7V〜14.3Vの間である。これに限定されることなく、例えば13.7V〜14.0V及び14.0V〜14.6Vのいずれかの間としても良い。
【０２２２】
奇数番目のワード線を書き込む際の、選択されたワード線に最初に印加される電圧と、偶数番目のワード線を書き込む際の、選択されたワード線に最初に印加される電圧を変えても良い。
【０２２３】
プログラム動作をISPP方式(Incremental Step Pulse Program)としたとき、ステップアップの電圧として、例えば0.5V程度が挙げられる。
【０２２４】
非選択のワード線に印加される電圧としては、例えば6.0V〜7.3Vの間としてもよい。この場合に限定されることなく、例えば7.3V〜8.4Vの間としてもよく、6.0V以下としても良い。
【０２２５】
非選択のワード線が奇数番目のワード線であるか、偶数番目のワード線であるかで、印加するパス電圧を変えても良い。
【０２２６】
書き込み動作の時間（tProg）としては、例えば1700μs〜1800μs、1800μs〜1900μs、または1900μs〜2000μsの間にしても良い。
【０２２７】
（３）消去動作では、
半導体基板上部に形成され、且つ、上記メモリセルが上方に配置されたウェルに最初に印加する電圧は、例えば12V〜13.6Vの間である。この場合に限定されることなく、例えば13.6V〜14.8V、14.8V〜19.0V、19.0〜19.8V、または19.8V〜21Vの間であっても良い。
【０２２８】
消去動作の時間（tErase）としては、例えば3000μs〜4000μs、4000μs〜5000μs、または4000μs〜9000μsの間にしても良い。
【０２２９】
（４）メモリセルの構造は、
半導体基板（シリコン基板）上に膜厚が4〜10nmのトンネル絶縁膜を介して配置された電荷蓄積層を有している。この電荷蓄積層は膜厚が2〜3nmのＳｉＮ、またはＳｉＯＮなどの絶縁膜と膜厚が3〜8nmのポリシリコンとの積層構造にすることができる。また、ポリシリコンにはＲｕなどの金属が添加されていても良い。電荷蓄積層の上には絶縁膜を有している。この絶縁膜は、例えば、膜厚が3〜10nmの下層Ｈｉｇｈ−ｋ膜と膜厚が3〜10nmの上層Ｈｉｇｈ−ｋ膜に挟まれた膜厚が4〜10nmのシリコン酸化膜を有している。Ｈｉｇｈ−ｋ膜はＨｆＯなどが挙げられる。また、シリコン酸化膜の膜厚はＨｉｇｈ−ｋ膜の膜厚よりも厚くすることが出来る。絶縁膜上には膜厚が3〜10nmの仕事関数調整用の材料を介して膜厚が30nm〜70nmの制御電極が形成されている。ここで仕事関数調整用の材料はＴａＯなどの金属酸化膜、ＴａＮなどの金属窒化膜である。制御電極にはＷなどを用いることが出来る。
【０２３０】
また、メモリセル間にはエアギャップを形成することが出来る。
【符号の説明】
【０２３１】
１…メモリシステム、１００…ＮＡＮＤ型フラッシュメモリ、１１０…コア部、１１１…メモリセルアレイ、１１２…ロウデコーダ、１１３…センスアンプ、１１４…ソース線ドライバ、１１５…ウェルドライバ、１１６…ＮＡＮＤストリング、１２０…周辺回路部、１２１…シーケンサ、１２２…電圧発生回路、１２３…レジスタ、２００…コントローラ、２１０…ホストインターフェイス回路、２２０…内蔵メモリ、２３０…プロセッサ、２４０…バッファメモリ、２５０…ＮＡＮＤインターフェイス回路、２６０…ＥＣＣ回路
【図１】
2017054561.tif 000003
【図２】
2017054561.tif 000004
【図３】
2017054561.tif 000005
【図４】
2017054561.tif 000006
【図５】
2017054561.tif 000007
【図６】
2017054561.tif 000008
【図７】
2017054561.tif 000009
【図８】
2017054561.tif 000010
【図９】
2017054561.tif 000011
【図１０】
2017054561.tif 000012
【図１１】
2017054561.tif 000013
【図１２】
2017054561.tif 000014
【図１３】
2017054561.tif 000015
【図１４】
2017054561.tif 000016
【図１５】
2017054561.tif 000017
【図１６】
2017054561.tif 000018
【図１７】
2017054561.tif 000019
【図１８】
2017054561.tif 000020
【図１９】
2017054561.tif 000021
【図２０】
2017054561.tif 000022