(57)【要約】【課題】消去時間の短い半導体記憶装置を提供する。【解決手段】半導体記憶装置は、複数のメモリユニットを含む。各メモリユニットは、第１および第２端の間に直列接続された第１トランジスタ(SDTr)と複数のメモリセルトランジスタ(MTr)と第２トランジスタ(SSTr)とを含む。複数のメモリユニットの各々のうち、対応するメモリセルトランジスタの制御ゲート電極は共通に接続されている。ビット線(BL)は、複数のメモリユニットの第１端に共通に接続されている。ソース線(SL)は、複数のメモリユニットの第２端に共通に接続されている。センスアンプ(3)は、イネーブル信号(STBn)を受け取ると、ビット線上の電流または電圧をセンスおよび増幅する。複数のメモリセルユニットのデータの消去を指示する信号が無効論理に遷移した後の消去ベリファイの間の制御ゲート電極に消去ベリファイのための電圧が印加されている間にイネーブル信号が２回以上有効にされる。【選択図】図１
2014053056.tif 000002
【特許請求の範囲】
【請求項１】
第１および第２端の間に直列接続された第１トランジスタと複数のメモリセルトランジスタと第２トランジスタとを各々が具備する複数のメモリユニットであって、前記複数のメモリユニットの各々のうち、対応するメモリセルトランジスタの制御ゲート電極は共通に接続されている、複数のメモリユニットと、
前記複数のメモリユニットの前記第１端に共通に接続されたビット線と、
前記複数のメモリユニットの前記第２端に共通に接続されたソース線と、
イネーブル信号を受け取ると、前記ビット線上の電流または電圧をセンスおよび増幅するセンスアンプと、
を具備し、
前記複数のメモリセルユニットのデータの消去を指示する信号が無効論理に遷移した後の消去ベリファイの間の前記制御ゲート電極に消去ベリファイのための電圧が印加されている間に前記イネーブル信号が２回以上有効にされる、
ことを特徴とする半導体記憶装置。
【請求項２】
前記複数のメモリユニットの各々についての消去ベリファイの結果を保持する第１キャッシュをさらに具備する、
請求項１に記載の半導体記憶装置。
【請求項３】
前記複数のメモリユニットの第１メモリユニットについての消去ベリファイの結果と、前記複数のメモリユニットの第２メモリユニットについての消去ベリファイの結果との論理演算の結果を保持する第２キャッシュをさらに具備する、
請求項２に記載の半導体記憶装置。
【請求項４】
前記ベリファイが前記複数のメモリユニットの各々について消去ベリファイがパスしたかの判定を含み、その結果を示す第１値が第１レジスタに保持され、
前記ベリファイが前記複数のメモリユニットの全てについてのフェイルのメモリユニットの個数を閾値と比較することを含み、その結果を示す第２値が第２レジスタに保持される、
ことを特徴とする、請求項３に記載の半導体記憶装置。
【請求項５】
外部からの指示に応じて、前記第１値および第２値の少なくとも一方を出力する、
ことを特徴とする、請求項４に記載の半導体記憶装置。
【請求項６】
外部からの指示に応じて、前記複数のメモリユニットの全てについてのフェイルのメモリユニットの個数を閾値と比較し、
外部からの指示に応じて、前記複数のメモリユニットの１つについて消去ベリファイがパスしたかの判定を行う、
ことを特徴とする、請求項５に記載の半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、半導体記憶装置に関する。
【背景技術】
【０００２】
例えばブロックを単位としてデータを消去する不揮発性半導体記憶装置が知られている。半導体記憶装置は、大容量化に伴い、その構造によっては、消去、特に消去ベリファイに要する時間が増加している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−１５９３６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
消去時間の短い半導体記憶装置を提供しようとするものである。
【課題を解決するための手段】
【０００５】
一実施形態による半導体記憶装置は、複数のメモリユニットを含む。各メモリユニットは、第１および第２端の間に直列接続された第１トランジスタと複数のメモリセルトランジスタと第２トランジスタとを含む。複数のメモリユニットの各々うち、対応するメモリセルトランジスタの制御ゲート電極は共通に接続されている。ビット線は、複数のメモリユニットの第１端に共通に接続されている。ソース線は、複数のメモリユニットの第２端に共通に接続されている。センスアンプは、イネーブル信号を受け取ると、ビット線上の電流または電圧をセンスおよび増幅する。複数のメモリセルユニットのデータの消去を指示する信号が無効論理に遷移した後の消去ベリファイの間の制御ゲート電極に消去ベリファイのための電圧が印加されている間にイネーブル信号が２回以上有効にされる。
【図面の簡単な説明】
【０００６】
【図１】第１実施形態の半導体記憶装置のブロック図。
【図２】第１実施形態のメモリセルアレイの一部の斜視図。
【図３】第１実施形態のメモリセルアレイの一部の断面図。
【図４】第１実施形態のセルトランジスタの断面図。
【図５】第１実施形態のメモリセルアレイ、センスアンプおよびキャッシュの一部の回路図。
【図６】第１実施形態のキャッシュの例を示す回路図。
【図７】第１実施形態のセルの閾値電圧とセンスアンプ出力との対応を示す図。
【図８】第１実施形態のキャッシュデータとベリファイ判定結果との対応を示す図。
【図９】第１実施形態のセンスアンプ出力とキャッシュデータと、それらに基づいた消去ベリファイ結果を例示する図。
【図１０】第１実施形態のセンスアンプおよびキャッシュの一部の回路図。
【図１１】第１実施形態の半導体記憶装置の一部のノードの電位のタイミングチャート。
【図１２】第１実施形態の半導体記憶装置の消去のフローチャート。
【図１３】第２実施形態の半導体記憶装置のブロック図。
【図１４】第１実施形態の半導体記憶装置の一部のノードの電位のタイミングチャート。
【図１５】第２実施形態のセンスアンプ出力とキャッシュデータと、それらに基づいた消去ベリファイ結果を例示する図。
【図１６】第２実施形態の累積されたフェイルビット数と閾値との比較結果を示す図。
【図１７】第２実施形態の半導体記憶装置の消去のフローチャート。
【図１８】第２実施形態の半導体記憶装置の消去の第１変形例のフローチャート。
【図１９】第２実施形態の半導体記憶装置の消去の第２変形例のフローチャート。
【図２０】第３実施形態に係る半導体記憶システムを示す図。
【図２１】第３実施形態に係る半導体記憶システムの消去のタスクを示す図。
【図２２】第３実施形態の複数のベリファイの結果の組み合わせを示す図。
【図２３】第３実施形態に係る１ストリング消去ベリファイのフローチャート。
【発明を実施するための形態】
【０００７】
以下に実施形態について図面を参照して説明する。なお、以下の説明において、略同一の機能及び構成を有する構成要素については、同一符号を付し、重複説明は必要な場合にのみ行う。また、以下に示す各実施形態は、この実施形態の技術的思想を具体化するための装置や方法を例示するものであって、実施形態の技術的思想は、構成部品の材質、形状、構造、配置等を下記のものに特定するものでない。実施形態の技術的思想は、特許請求の範囲において、種々の変更を加えることができる。
【０００８】
（第１実施形態）
各機能ブロックは、ハードウェア、コンピュータソフトウェアのいずれかまたは両者を組み合わせたものとして実現することができる。このため、各ブロックがこれらのいずれでもあることが明確となるように、概してそれらの機能の観点から以下に説明する。このような機能が、ハードウェアとして実行されるか、またはソフトウェアとして実行されるかは、具体的な実施態様またはシステム全体に課される設計制約に依存する。当業者は、具体的な実施態様ごとに、種々の方法でこれらの機能を実現し得るが、いずれの実現の手法も実施形態の範疇に含まれる。また、各機能ブロックが、以下の具体例のように区別されていることは必須ではない。例えば、一部の機能が以下の説明において例示されている機能ブロックとは別の機能ブロックによって実行されてもよい。さらに、例示の機能ブロックがさらに細かい機能サブブロックに分割されていてもよい。どの機能ブロックによって特定されるかによって実施形態が限定されるものではない。
【０００９】
図１は、第１実施形態に係る半導体記憶装置のブロック図である。図１に示されるように、半導体記憶装置１００は、複数のメモリセルアレイ１を有する。メモリセルアレイ１は、複数のブロック（メモリブロック）を含んでいる。各ブロックは、複数のメモリセル（メモリセルトランジスタ）、ワード線、ビット線等を含んでいる。同じワード線と接続されている複数のメモリセルまたはその記憶空間はページを構成する。データはページ単位で読み出され、また書き込まれ、ブロック単位で消去される。メモリセルアレイ１は、複数のストリングを有する。ストリングは、直列接続された複数のメモリセルトランジスタ、およびその両端のドレイン側選択ゲートトランジスタならびにソース側選択ゲートトランジスタを含む。１つのビット線には、複数のストリングが接続されている。以下の説明では、１つのビット線に８つのストリングが接続されている例に関する。その他の数の接続も可能である。その場合は、適宜、関連する記載が読み替えられる。
【００１０】
ロウデコーダ２は、ロウアドレス信号ＲＯＷＡＤＤ、信号ＲＤＥＣ、ＳＧＤ［７：０］、ＳＧＳ［７：０］、ＣＧ［７：０］等を受け取る。また、ロウデコーダ２は、これらの受け取った信号に基づいて、１つのブロック、１つのストリング、１つのワード線を選択する。信号ＲＤＥＣはロウデコーダ２をイネーブルにするための信号である。信号ＳＧＤ、ＳＧＳは、それぞれ、１つのドレイン側選択ゲートトランジスタ、ソース側選択ゲートトランジスタを選択する。
【００１１】
センスアンプおよびキャッシュ３は、ビット線上の電流または電圧をセンスおよび増幅し、キャッシュ０、キャッシュ１を含んでいる。キャッシュ０、キャッシュ１は、メモリセルアレイ１から読み出されたデータおよびメモリセルアレイ１に書き込まれるデータや、その他のデータを一時的に保持する。センスアンプおよびキャッシュ３は、さらに後述の論理回路を含む。センスアンプおよびキャッシュ３は、信号ＬＴＲＳ、ＵＴＲＳ、ＳＴＢｎ、ＢＩＴＳＣＡＮを受け取る。信号名中の記号ｎは、この信号の有効論理が、ローレベルであることを示す。信号ＬＴＲＳ、ＵＴＲＳは、それぞれ、キャッシュ０、キャッシュ１のデータ取り込みや取り出しを制御する。信号ＳＴＢｎは、センスアンプのイネーブルを指示する。信号ＢＩＴＳＣＡＮは、ビットスキャン動作（後述）を指示する。センスアンプおよびキャッシュ３は、信号ＰＦＢＵＳを出力する。信号ＰＦＢＵＳは、後に詳述するように、１ページ内の不良ビット数を保持する。
【００１２】
チャージポンプ４は、半導体記憶装置１００の種々の動作に必要な電圧を生成し、ロウデコーダ２、ならびにセンスアンプおよびキャッシュ３に供給する。ベリファイ回路５は、書き込みまたは消去が正しく行われたかを判定する。具体的には、ベリファイ回路５は、信号ＰＦＢＵＳ（後述）およびフェイル許容数を示す信号Ｆ＿ＮＦを受け取り、信号ＰＦＢＵＳを信号Ｆ＿ＮＦ中により示される値と比較する。比較の結果は、ベリファイ回路５中のステータスレジスタ５ａに保持される。ステータスレジスタ５ａは、比較の結果以外にも、消去、書き込みの際にも使用される。
【００１３】
コントロールレジスタ６は、チャージポンプ４を制御する。コントロールレジスタ７は、ロウデコーダ２等のロウ系の制御を行い、そのための信号ＲＤＥＣ、ＳＧＤ、ＳＧＳを出力する。コントロールレジスタ８は、カラム系アドレス、キャッシュ、センスアンプおよびキャッシュ３等を制御し、そのための信号ＬＴＲＳ、ＵＴＲＳ、ＳＴＢｎ、ＢＩＴＳＣＡＮを出力する。
【００１４】
ＣＧドライバ９は、信号ＳＧＤ、ＳＧＳ、ストリングアドレス信号ＳＴＲＡＤＤ、ロウアドレス信号ＲＯＷＡＤＤを受け取り、信号ＳＧＤ［７：０］、ＳＧＳ［７：０］、ＣＧ［７：０］を生成する。ＣＧドライバ９は、信号ＳＴＲＡＤＤと信号ＳＧＤから１つのストリングのドレイン側選択ゲートトランジスタを選択するための信号ＳＧＤ［７：０］を生成する。また、ＣＧドライバ９は、信号ＳＴＲＡＤＤと信号ＳＧＳから１つのストリングの１つのソース側選択ゲートトランジスタを選択するための信号ＳＧＳ［７：０］を生成する。さらに、ＣＧドライバ９は、ロウアドレスＲＯＷＡＤＤから、１つのワード線を選択するための信号ＣＧ［７：０］を生成する。
【００１５】
ステートマシン１０は、コマンド、および信号ＲＯＷＡＤＤ、ＣＯＬＡＤＤ、ＳＴＲＡＤＤ、ＰＢを受け取る。ステートマシン１０は、コマンドを解釈し、解釈および受け取った信号に基づいてコントロールレジスタ６〜８を制御し、この制御を通じて読み出し、書き込み、消去等の制御を司る。
【００１６】
第１バッファ１１は、半導体記憶装置１００の外部から、制御信号、例えばチップラッチイネーブル信号ＣＥｎｘ、ライトイネーブル信号ＷＥｎｘ、リードイネーブル信号ＲＥｎｘ、コマンドラッチイネーブル信号ＣＬＥｘ、アドレスラッチイネーブル信号ＡＬＥｘ、ライトプロテクト信号ＷＰｎｘを受け取る。別の第１バッファ１２は、信号ＩＯｘ＜７：０＞を受け取る。信号ＩＯｘは、例えばアドレス、データ、コマンドコードなどである。
【００１７】
コマンドデコーダ１３は、バッファ１１、１２から受け取った信号をデコードし、デコードに基づいてコマンドを取得する。コマンドは、ステートマシン１０に供給される。また、コマンドデコーダ１３は、後述の信号（コマンド）ＣＭＤ＿ＳＴＡＴＵＳを出力する。
【００１８】
アドレスバッファ１４は、バッファ１２から受け取った信号をデコードし、デコードの結果およびステートマシン１０の制御に基づいてアドレス信号ＲＯＷＡＤＤ、ＣＯＬＡＤＤ、ＳＴＲＡＤＤ、ＰＢを生成する。レジスタ１５は、半導体記憶装置１００の動作の詳細を規定するための値を保持する。レジスタ１５は、後述の信号Ｆ＿ＮＦを出力する。信号Ｆ＿ＮＦは、ベリファイ回路５に供給される。
【００１９】
データバッファ１６は、バッファ１１、１２から受け取った信号をデコードし、デコードに基づいて書き込みデータＹＩＯを取得する。出力バッファ１７は、半導体記憶装置１００から出力されるべきデータを一時的に保持し、これを出力のためにバッファ１２に供給する。選択回路１８は、信号ＣＭＤ＿ＳＴＡＴＵＳに基づいてセンスアンプおよびキャッシュ３から受け取ったデータまたはステータスレジスタ５ａから受け取ったステータス信号ＳＴＡＴＵＳを出力バッファ１７に供給する。
【００２０】
メモリメモリセルアレイ１は、例えば図２、図３に示す構造を有する。図２は、第１実施形態に係るメモリセルアレイの一部の斜視図である。図３は、第１実施形態に係るメモリセルアレイの一部の断面図である。図２は、２つのストリングを示す。図３は、ＹＺ平面に沿っており、８つのストリングを示す。例として、１つのブロックは、８つのストリングを含んでいる。
【００２１】
図２、図３に示されるように、基板ｓｕｂの表面および上方には回路領域ＣＵが設けられる。回路領域ＣＵには、ロウデコーダ２、センスアンプおよびキャッシュ３、チャージポンプ４、ステートマシン１０などを形成することができる。回路領域ＣＵの上方には、導電材料からなるバックゲートＢＧが形成されている。バックゲートＢＧは、ｘｙ平面に沿って広がる。また、基板ｓｕｂの上方には、複数のストリングＳｔｒが形成されている。図２は、各ストリングＳｔｒが１６のメモリセルトランジスタＭＴｒ０〜ＭＴｒ１５を含んでいる例を示している。末尾に数字が付いている参照符号（例えばセルトランジスタＭＴｒ）が相互に区別される必要がない場合、参照符号の末尾の数字が省略された記載が用いられ、この記載は全ての添え字付きの参照符号を指すものとする。セルトランジスタＭＴｒ７とＭＴｒ８とは、バックゲートトランジスタＢＴｒを介して接続される。ソース側選択ゲートトランジスタＳＳＴｒおよびドレイン側選択ゲートトランジスタＳＤＴｒは、それぞれ、セルトランジスタＭＴｒ０、ＭＴｒ１５と接続されている。トランジスタＳＳＴｒ、ＳＤＴｒの上方において、それぞれソース線ＳＬ、ビット線ＢＬが延びている。トランジスタＳＳＴｒ、ＳＤＴｒは、それぞれソース線ＳＬ、ビット線ＢＬと接続されている。
【００２２】
セルトランジスタＭＴｒ０〜ＭＴｒ１５は、半導体柱ＳＰおよび半導体柱ＳＰの表面の絶縁膜ＩＮ２（図４に示す）を含み、さらにｘ軸に沿って延びるワード線（制御ゲート）ＷＬ０〜ＷＬ１５をそれぞれ含む。ワード線ＷＬ０〜ＷＬ１５は、ロウデコーダ２によって、対応するＣＧ線ＣＧ（ＣＧ線ＣＧ０〜ＣＧ１５）に接続される。半導体柱ＳＰの表面の絶縁膜は、図４に示されるように、ブロック絶縁膜ＩＮ２ａ、絶縁材料からなる電荷トラップ層ＩＮ２ｂ、トンネル絶縁膜ＩＮ２ｃを含む。セルトランジスタＭＴｒは、電荷トラップ層ＩＮ２ｂ中のキャリアの個数に基づいて定まるデータを不揮発に記憶する。
【００２３】
図２、図３に戻って、半導体柱ＳＰは、例えばバックゲートＢＧの上方のシリコンからなる。半導体柱ＳＰ中には、ソース／ドレイン領域（図示せず）が形成されており、隣接するセルトランジスタＭＴｒのソース／ドレイン領域は相互に接続されている。１つのストリングＳｔｒを構成する２本の半導体柱ＳＰは、バックゲートＢＧ中の導電材料からなるパイプ層により接続されており、パイプ層はバックゲートトランジスタＢＴｒを構成する。各ワード線ＷＬは、ｘ軸に沿って並ぶ複数のセルトランジスタＭＴｒによって共有されている。同じワード線ＷＬと接続されている複数のセルトランジスタＭＴｒの集まりはページを構成する。１ページは、例えば８Ｋバイトの大きさを有する。
【００２４】
選択ゲートトランジスタＳＳＴｒ、ＳＤＴｒは、半導体柱ＳＰ、半導体柱ＳＰの表面のゲート絶縁膜（図示せず）を含み、さらにゲート電極（選択ゲート線）ＳＧＳＬ、ＳＧＤＬをそれぞれ含んでいる。半導体柱ＳＰ中には、ソース／ドレイン領域（図示せず）が形成されている。各ゲート電極ＳＧＳＬは、ｘ軸に沿って並ぶ複数のトランジスタＳＳＴｒによって共有されている。各ゲート電極ＳＧＤＬは、ｘ軸に沿って並ぶ複数のトランジスタＳＤＴｒによって共有されている。選択ゲート線ＳＧＳＬ０〜ＳＧＳＬ７は、それぞれストリングＳｔｒ０〜Ｓｔｒ７に属する。選択ゲート線ＳＧＤＬ０〜ＳＧＤＬ７は、それぞれストリングＳｔｒ０〜Ｓｔｒ７に属する。各ソース線ＳＬは、複数のトランジスタＳＳＴｒと接続されている。１ブロック中のソース線ＳＬは、相互に接続されている。１つのビット線ＢＬは、複数の選択ゲートトランジスタＳＤＴｒとプラグを介して接続されている。隣接する２つのストリングＳｔｒはソース線ＳＬを共有する。
【００２５】
図２、図３に示す要素が設けられていない空間は、絶縁膜により埋め込まれている。ロウデコーダ２によって選択されたワード線ＷＬ、選択ゲート線ＳＧＳＬおよびＳＧＤＬは、ＣＧドライバ９によって駆動される。
【００２６】
図２、図３では示されていないが、１ブロック中の異なるストリングＳｔｒに属する同一番号のワード線（たとえばストリングＳｔｒ０のワード線ＷＬ０とストリングＳｔｒ７のワード線ＷＬ０）は電気的に接続されている。この構造に基づいて、ワード線ＷＬの充放電にかかる時間が、このように接続されていないワード線ＷＬでの時間よりも長い。
【００２７】
図５は、メモリメモリセルアレイ１、ならびにセンスアンプおよびキャッシュ３の一部の回路図である。図５に示されるように、１つのビット線ＢＬとソース線ＳＬとの間に複数（３つのみ示す）のストリングＳｔｒが接続されている。ワード線ＷＬ０は、１ブロック中の全てのストリングによって共有されている。ワード線ＷＬ１〜ＷＬ７も、同様に共有されている。
【００２８】
ビット線ＢＬは、センスアンプおよびキャッシュ３中のセンスアンプＳＡに接続されている。センスアンプＳＡは、上記のようにセンスアンプイネーブル信号ＳＴＢｎを受け取る。センスアンプＳＡの出力ＳＡＯＵＴは、論理回路Ｌに供給される。論理回路Ｌは、上記の信号ＬＴＲＳ、ＵＴＲＳ、ＢＩＴＳＣＡＮを受け取る。論理回路Ｌは、受け取った信号に対して後述の種々の論理演算を行う。論理回路Ｌの出力は、データバスＤＢＵＳと接続されている。論理回路Ｌは、また、信号線ＰＦＢＵＳと接続されている。信号線ＰＦＢＵＳに出力されるデータについては、後述する。
【００２９】
データバスＤＢＵＳは、キャッシュＬＤＬ、キャッシュＵＤＬと接続されている。キャッシュＬＤＬ、キャッシュＵＤＬは、それぞれ、信号ＬＴＲＳ、ＵＴＲＳを受け取る。有効論理の信号ＬＴＲＳ、ＵＴＲＳは、キャッシュＬＤＬ、ＵＤＬをそれぞれイネーブルにする。データバスＤＢＵＳは、図１のデータバッファ１６へ、およびデータバッファ１６からデータを運ぶ。
【００３０】
キャッシュＬＤＬ、ＵＤＬは、各々、例えば図６の構成を有する。図６は、第１実施形態に係るキャッシュの例を示す回路図である。図６に示されるように、ｐ型のＭＯＳＦＥＴ（metal oxide semiconductor field effect transistor）ＴＰ１、ｎ型のＭＯＳＦＥＴ  ＴＮ１が並列に接続されている。並列接続構造の一端は、データバスＤＢＵＳに接続され、その他端は、インバータＩＶ１の入力およびインバータＩＶ２の出力に接続されている。インバータＩＶ１の出力とインバータＩＶ２の入力は接続されており、記憶ノードＬＡＴとして機能する。トランジスタＴＮ１のゲートは、信号ＬＴＲＳ（またはＵＴＲＳ）を受け取る。トランジスタＴＰ１のゲートは、信号／ＬＴＲＳ（または／ＵＴＲＳ）を受け取る。記号「／」は、否定論理を意味する。キャッシュＬＤＬ、ＵＤＬは、同じ構成を有し、可換である。それらの一方が、第１実施形態で使用され、他方が第２実施形態で使用される。以下の説明では、便宜上、第１実施形態では、キャッシュＬＤＬが使用されるものとする。
【００３１】
図５に示す構造は、後に詳述するように、全ビット線の各々に対して設けられている。
【００３２】
図７は、第１実施形態に係るセル（メモリセルトランジスタ）の閾値電圧と対応するセンスアンプの出力ＳＡＯＵＴとの対応を例示する。一般に、消去は、セルに消去電圧（パルス）を印加して、セルの閾値電圧を書き込みレベル（消去レベル未達）から消去レベル（消去レベル以下）へと移行させることを含む。また、一般に、消去は消去対象のセルに対する消去ベリファイを含み、消去ベリファイは消去に伴うセルの閾値電圧の変化を検査する。セルの閾値電圧の変化は、消去パルス印加後に、出力ＳＡＯＵＴが１から０になることの検知を通じて検出される。センスアンプＳＡの構成は、どのようなものであってもよい。少なくとも、センスアンプＳＡのセンスの起動を指示する信号ＳＴＢｎが有効論理（例えばローレベル）の間に対応するビット線ＢＬ上の状態を検知できればよい。出力ＳＡＯＵＴの電位は、センスの終了後も、センスアンプＳＡによって保持される。消去ベリファイは、例えばストリングＳｔｒごとに行われる。すなわち、ストリングＳｔｒごとに、トランジスタＳＳＴｒ、ＳＤＴｒがオンされ、全ワード線ＷＬが所定の電位に駆動された状態で、ビット線ＢＬがセンスされる。
【００３３】
図８は、第１実施形態に係るキャッシュＬＤＬ（またはＵＤＬ）に保持されているデータと消去ベリファイの判定結果との対応を例示する。上記のように、キャッシュＬＤＬは、論理回路ＬからデータバスＤＢＵＳ上に出力されたデータを保持する。論理回路Ｌは、消去ベリファイの際、出力ＳＡＯＵＴに基づいた論理演算の結果に基づいて、バスＤＢＵＳ上にデータを出力する。図８に示されるように、例えばキャッシュＬＤＬが１または０を保持していることは、対応するビット線ＢＬについての消去ベリファイパスまたはベリファイフェイルをそれぞれ意味する。通常、消去ベリファイのパスおよびフェイルは、ページ単位で判定される。
【００３４】
消去には、消去パルスの印加と消去ベリファイの複数回の繰り返しが含まれている。消去ベリファイの結果は、各ストリングについて累積される。すなわち、ある消去ベリファイの結果を示すデータはキャッシュＬＤＬに保持され、保持されているデータと後続の消去ベリファイ中のセンスアンプ出力を用いて、当該後続の消去ベリファイの結果が得られる。この得られた結果を示すデータは、キャッシュに格納される。このステップが繰り返される。図９に、消去ベリファイの間のセンスアンプ出力ＳＡＯＵＴと、キャッシュＬＤＬに保持されているデータと、それらに基づいた消去ベリファイ結果を例示する。図９は、キャッシュＬＤＬが初期化により“１”データ（ベリファイパス）を保持し、センスアンプ出力ＳＡＯＵＴの論理状態に応じて格納されるキャッシュＬＤＬの最終状態を示す。今回の消去ベリファイ結果が消去レベル以下となっている、すなわち出力ＳＡＯＵＴが“０”の場合、キャッシュＬＤＬには“１”データ（パス）が保持される。一方、今回の消去ベリファイ結果が消去レベル未達、すなわち出力ＳＡＯＵＴが“１”の場合、キャッシュＬＤＬには“０”データが格納される。この出力ＳＡＯＵＴとキャッシュＬＤＬとの論理演算は、論理回路Ｌによって行われる。キャッシュＬＤＬは“１”に初期化された上で消去ベリファイが行われるため、キャッシュＬＤＬが“０”から始まる例は省略される。
【００３５】
図７〜図９の消去ベリファイの結果とデータとの関係はあくまで例である。例えば、初期状態にキャッシュＬＤＬに保持されるデータは、“０”であってもよい。その他、任意の消去ベリファイが第１実施形態に適用されることが可能である。消去ベリファイの詳細によって第１実施形態は限定されない。
【００３６】
図１０は、第１実施形態に係るセンスアンプおよびキャッシュ３の一部を示す回路図である。図１０は、図５のセンスアンプおよびキャッシュ３中の部分を１ページにわたって示している。図１０に示されるように、１ページに対応する全てのビット線ＢＬ０〜ＢＬｉ−１の各々に、図５に示すセンスアンプおよびキャッシュ３の一部が設けられている。ｉは自然数であり、１ページ中ビット線の数に相当する。ビット線ＢＬ０〜ＢＬｉ−１のセンスアンプ出力は各々の論理回路Ｌに供給され、それぞれその出力データＤＢＵＳ０〜ＤＢＵＳｉ−１として出力される。信号線ＰＦＢＵＳは、共通に接続されている。論理回路Ｌおよび信号線ＰＦＢＵＳは、各論理回路Ｌが接続されているビット線ＢＬについてのフェイルまたはパスの結果を出力し、信号ＰＦＢＵＳには１ページ分のフェイル判定のビット線（ビット）の個数が出力されるように構成されている。信号ＰＦＢＵＳは、上記のようにベリファイ回路５に供給される。
【００３７】
図１１は、第１実施形態に係る半導体記憶装置の一部のノードの電位のタイミングチャートである。特に、図１１は、第１実施形態における消去ベリファイの間のタイミングチャートを示しており、ある消去対象ブロックについて示している。図１１の動作は、例えばステートマシン１０がコントロールレジスタ６、７、８を制御することを通じて実行される。
【００３８】
図１１に示されるように、時刻ｔ０において、信号ｅｒａｓｅがハイレベルからローレベルに移行する。ハイレベルの信号ｅｒａｓｅは、半導体記憶装置１００が消去パルスの印加中であること、すなわち消去対象ブロックに消去に必要な電圧を印加している状態であることを示す。消去には、チャージポンプ４による昇圧や放電に必要な動作も含まれる。また、時刻ｔ０において、信号ｅｖｆｙがハイレベル（有効論理）とされる。ハイレベルの信号ｅｖｆｙは、半導体記憶装置１００が消去ベリファイ読み出し中であることを示す。消去ベリファイは、消去の一環であり、消去パルスの印加に後続する。消去ベリファイは、消去対象ブロック中の全ワード線ＷＬに消去ベリファイ電圧を印加すること、消去対象メモリセルが有する閾値電圧の状態を確定させること、センスアンプおよびキャッシュ３を動作状態にしてセンスアンプ出力信号ＳＡＯＵＴを確定させること、信号ＳＡＯＵＴをキャッシュＬＤＬに格納することを含む。このような動作が、消去対象ブロックについて、ストリングＳｔｒ０〜ストリングＳｔｒ７の各々に対して順に行われる。消去ベリファイを以下に詳述する。
【００３９】
時刻ｔ０〜ｔ４は、ストリングＳｔｒ０の消去ベリファイのための期間である。よって、時刻ｔ０〜ｔ４の間、ストリングアドレス信号ＳＴＲＡＤＤは、ストリングＳｔｒ０を選択する値に設定される。また、時刻ｔ０に先立って、全てのＣＧ線ＣＧが消去ベリファイ電圧Ｖｅｖｆｙまで充電される。時刻ｔ０の消去ベリファイ開始とともに、ロウデコーダイネーブル信号ＲＤＥＣがハイレベル（有効論理）にされる。この結果、ＣＧ線ＣＧの電位が、対応するワード線ＷＬに転送され、時刻ｔ０からワード線ＷＬは消去ベリファイ電圧Ｖｅｖｆｙまで充電される。また、時刻ｔ０においてＳＧ線ＳＧＤ、ＳＧＳがハイレベルに移行する。信号ＳＴＲＡＤＤがストリングＳｔｒ０を選択しているため、ハイレベルのＳＧ線ＳＧＤ、ＳＧＳの電位が、ストリングＳｔｒ０の選択ゲート線ＳＧＤＬ０、ＳＧＳＬ０に転送される。また、キャッシュＬＤＬは時刻ｔ０において初期化される。この結果、全てのキャッシュＬＤＬは、“１”データを保持している。
【００４０】
時刻ｔ０から、消去ベリファイ読み出し対象のセルトランジスタが、安定して読み出しが可能な状態になるまでの所定の時間、待機される。そのような状態になると、信号ＳＴＢｎがローレベル（有効論理）とされる。有効論理の信号ＳＴＢｎは、各センスアンプＳＡをイネーブルにする。各センスアンプＳＡの動作開始後、一定時間の経過後、信号ＳＴＢｎが時刻ｔ１においてハイレベルに戻される。この結果、時刻ｔ１において、各センスアンプ出力ＳＡＯＵＴが確定する。なお、キャッシュＵＤＬは、第１実施形態では使用されず、後述の第２実施形態で使用される。
【００４１】
続いて、信号ＬＴＲＳがハイレベル（有効論理）とされて、各キャッシュＬＤＬ中のデータが読み出される。この読み出された各データは、対応するセンスアンプ出力ＳＡＯＵＴとともに、対応する論理回路Ｌによって論理演算される。すなわち、ビット線ＢＬ０〜ＢＬｉ−１の各々について、出力ＳＡＯＵＴとキャッシュＬＤＬのデータに対して論理演算が行われる。論理演算は、図９を参照して説明した通りである。各論理回路Ｌによる演算結果は、対応するキャッシュＬＤＬに格納される。格納された結果は、時刻ｔ２において、信号ＬＴＲＳがローレベル（無効論理）になることにより確定する。
【００４２】
続いて、キャッシュＬＤＬ中のデータに対する検査、すなわちフェイルビット数がカウントされる。この検査には、消去ベリファイ読み出しの結果（すなわちキャッシュＬＤＬ中のデータ）が、全ビット線についてパスであるか、すなわち全キャッシュＬＤＬ中のデータがパスであるか、またはその個数が予め設定された個数未満であるかを判定することが含まれる。所定の個数は、例えば１ページあたりの許容されるフェイルビット数と等しい。検査のために、時刻ｔ３において、信号ｆａｉｌｓｃａｎがハイレベル（有効論理）とされる。信号ｆａｉｌｓｃａｎは、ステートマシン１０の内部信号であり、信号ＢＩＴＳＣＡＮと同じ信号であり、有効論理の信号ｆａｉｌｓｃａｎはビットスキャン動作を指示する。また、時刻ｔ３において、ＳＧ線ＳＧＤ、ＳＧＳ、および信号ｅｖｆｙはローレベル（無効論理）とされる。
【００４３】
一方、時刻ｔ３以降も信号ＲＤＥＣはハイレベルに維持される。この結果、ワード線ＷＬには、信号ＣＧ線ＣＧの電位が転送され続けており、すなわち、消去ベリファイ電圧Ｖｅｖｆｙに維持される。このことは、後続のストリングＳｔｒ１の消去ベリファイに向けて、ワード線ＷＬの放電および再充電が不要になることにつながる。上記のように、ワード線ＷＬが相違するストリングＳｔｒ間で共有されていることが利用されている。
【００４４】
また、時刻ｔ３において、信号ＬＴＲＳがハイレベルにされ、この結果、各キャッシュＬＤＬのデータが対応する論理回路Ｌによって受け取られる。さらに、時刻ｔ３で信号ＢＩＴＳＣＡＮがハイレベル（有効論理）とされる。この結果、各論理回路Ｌは、対応するビット線ＢＬについてのフェイルまたはパスを示すデータを信号線ＰＦＢＵＳに出力する。実際には、上記のように、信号ＰＦＢＵＳは、全ビット線ＢＬのうちのフェイル判定のビット線ＢＬの個数、すなわちフェイルビットの総数が出力される。このフェイルビット総数は、検査対象のストリングＳｔｒ０についてのフェイルビット総数である。
【００４５】
フェイルビット総数は、ベリファイ回路５に通知される。ベリファイ回路５は、フェイルビット総数を、レジスタから受け取った信号Ｆ＿ＮＦによって示される閾値と比較する。フェイルビット総数が閾値未満の場合、ベリファイ回路５は、パスの旨のステータスをステータスレジスタ５ａに設定する。一方、フェイルビット総数が閾値以上である場合、ベリファイ回路５は、フェイルの旨のステータスをステータスレジスタ５ａに設定する。以上により、ストリングＳｔｒ０についての消去ベリファイが終了する。これに伴い、時刻ｔ４において、信号ｆａｉｌｓｃａｎ、ＢＩＴＳＣＡＮ、ＬＴＲＳはローレベルとされる。なお、図１１は、ストリングＳｔｒ０は消去ベリファイをパスした例を示す。
【００４６】
ステートマシン１０は、ストリングＳｔｒ０についてのステータス信号を受け取って、ストリングＳｔｒ０が消去ベリファイをパスしたことを認識し、次いで、ストリングＳｔｒ１の消去ベリファイを実行する。ストリングＳｔｒ１の消去ベリファイは、ストリングＳｔｒ０の消去ベリファイと、アドレスの指定を除いて同じである。すなわち、時刻ｔ４〜時刻ｔ８の間、ストリングアドレス信号ＳＴＲＡＤＤは、ストリングＳｔｒ１を選択する値に設定される。時刻ｔ４において、信号ｅｖｆｙがハイレベルとされ、消去ベリファイが開始する。また、時刻ｔ４において、ＳＧＤ、ＳＧＳがハイレベルに移行する。この結果、ストリングＳｔｒ１の選択ゲート線ＳＧＤＬ１、ＳＧＳＬ１がハイレベルとなる。さらに、時刻ｔ４において、キャッシュＬＤＬが初期化される。
【００４７】
上記のように、ストリングＳｔｒ０の消去ベリファイから引き続き、信号ＲＤＥＣはハイレベルを維持しており、ワード線ＷＬは消去ベリファイ電圧Ｖｅｖｆｙを維持している。このため、改めて、ワード線ＷＬを充電する時間は不要である。
【００４８】
続いて、時刻ｔ５〜時刻ｔ８において、時刻ｔ１〜ｔ４での動作とそれぞれ同じ動作が行われる。この結果、信号ＰＦＢＵＳとして、ストリングＳｔｒ１についてのフェイルビット総数が表れる。図１１は、ストリングＳｔｒ１が消去ベリファイにフェイルした例を示す。ステートマシン１０は、ストリングＳｔｒ１が消去ベリファイフェイルであることを認識し、消去対象ブロックに消去パルスの再印加を準備する。そのために、時刻ｔ８において、ロウデコーダ信号ＲＤＥＣがローレベルとされ、ストリングアドレス信号ＳＴＲＡＤＤは、いずれのストリングＳｔｒも選択しない値とされる。この結果、ワード線ＷＬはＣＧ線ＣＧから分離され、ワード線ＷＬは放電を開始し、消去ベリファイ電圧Ｖｅｖｆｙから低下する。
【００４９】
次に、時刻ｔ９から消去パルスが印加される。そのために、信号ｅｒａｓｅがハイレベルとされる。消去パルスの印加後、時刻ｔ０からのステップと同様に、消去ベリファイが再度行われる。
【００５０】
このように、あるストリングＳｔｒの消去ベリファイがフェイルするまで、信号ＲＤＥＣはハイレベルを維持し、ひいてはワード線ＷＬは消去ベリファイ電圧Ｖｅｖｆｙを維持し、かつストリングの消去ベリファイのためにセンスアンプイネーブル信号ＳＴＢｎが順次有効論理になる。
【００５１】
図１２は、第１実施形態に係る半導体記憶装置の消去のフローチャートである。図１２のフローも図１１と同様に、例えばステートマシン１０がコントロールレジスタ６、７、８を制御することを通じて実行される。
【００５２】
図１２に示されるように、ステートマシン１０は、ベリファイ回路５中のステータスレジスタ５ａを初期化する（ステップＳ１）。ステップＳ２において、ステートマシン１０は、消去対象ブロックに消去パルスを印加する。ステップＳ２は、図１１の信号ｅｒａｓｅがハイレベルである期間に対応する。ステップＳ３において、ストリングアドレスを特定するための信号が初期化される。実際には、ストリングアドレス信号ＳＴＲＡＤＤが０にされる。図１２では、ストリングアドレスを特定するパラメータＮが０に設定されるものとして描かれている。Ｎは、０以上７（最大のストリングの番号）以下の自然数である。
【００５３】
ステップＳ４において、ステートマシン１０は、指定されるストリングＳｔｒＮについての消去ベリファイ読み出しを行う。ステップＳ４は、図１１の信号ｅｖｆｙがハイレベルである期間に相当し、上記のように、セルからのデータの読み出し、センス、各センスアンプ出力ＳＡＯＵＴと対応するキャッシュＬＤＬ中のデータとの論理演算、論理演算結果の各キャッシュＬＤＬへの格納を含んでいる。次に、ステップＳ５において、ステートマシン１０は、ストリングＳｔｒＮについてのフェイルビット数をカウントする。続いて、ステップＳ６において、ステートマシン１０は、フェイルビット数を閾値と比較する。ステップＳ５、Ｓ６は、図１１の信号ＢＩＴＳＣＡＮがハイレベルである期間に相当し、上記のように、信号ＰＦＢＵＳへのフェイルビット数の出力、フェイルビット数と閾値との比較、比較結果のステータス５ａへの格納を含んでいる。
【００５４】
ステップＳ６での判定がＹｅｓの場合、次のストリングＳｔｒについての消去ベリファイが行われる。具体的には、まずステップＳ７において、ステートマシン１０は、全てのストリングＳｔｒに対する消去ベリファイが完了したかを判定する。より具体的には、ステートマシン１０は、直前の消去ベリファイが行われたストリングＳｔｒが最後のストリングであるかを判定する。本例では、Ｎが７であるかが判定される。ステップＳ７での判定がＹｅｓであれば、これは、全てのストリングＳｔｒについて消去ベリファイが完了したことを意味し、フローは終了する。ステップＳ７での判定がＮｏであれば、フローはステップＳ８に移行する。ステップＳ８において、ステートマシン１０は、Ｎを１インクリメントする。すなわち、ステートマシン１０は、信号ＳＴＲＡＤＤを１インクリメントする。ステップＳ８の後、フローは、ステップＳ４に戻る。
【００５５】
ステップＳ６での判定がＮｏである場合、フローは、ステップＳ９に移行する。ステップＳ９において、ステートマシン１０は、消去および消去ベリファイの組の繰り返し数が閾値（上限）を超えたかを判定する。上記のように、あるストリングＳｔｒが消去ベリファイをフェイルすると、消去（消去パルス印加）が再度行われる。しかし、消去と消去ベリファイの組の繰り返し数には、通常、上限が設けられる。上限を超えたブロックは、ブロック消去フェイルとして取り扱うためである。そこで、ステートマシン１０は、消去対象のブロックに対する消去の回数をレジスタ等で保持し、保持されている回数をステップＳ９で閾値と比較する。ステップＳ９の判定がＮｏである場合、フローはステップＳ１０に移行する。ステップＳ１０において、ステートマシン１０は、消去対象ブロックへの消去パルスの再印加を準備する。この準備は、上記のように例えばワード線ＷＬの放電を含み、図１１の時刻ｔ８からの動作に相当する。ステップＳ１０の後、フローはステップＳ２に戻る。
【００５６】
ステップＳ９での判定がＹｅｓの場合、フローはステップＳ１１に移行する。ステップＳ１１において、消去対象のブロックの消去が失敗したことを示すために、ステートマシン１０は、ステータスレジスタ５ａにフェイルの旨のデータを設定する。次いで、消去を終了する。
【００５７】
以上説明したように、第１実施形態に係る半導体記憶装置によれば、あるストリングＳｔｒについての消去ベリファイ読み出し後、ワード線ＷＬは消去ベリファイ電圧Ｖｅｖｆｙを維持する。このため、後続のストリングＳｔｒについての消去ベリファイのためのワード線ＷＬの放電および消去ベリファイへの再度の充電は不要である。ワード線ＷＬの放電は、消去ベリファイがフェイルで再度消去が行われる際に実行される。これにより、特に、各ストリングが平均的に消去されるケースで複数ストリングから消去ベリファイパスを得られるような場合には、ワード線ＷＬのストリング毎の充放電の例と比べて、消去（および消去ベリファイ）に要する時間が短くなる。
【００５８】
（第２実施形態）
第１実施形態では、ストリングごとにフェイルビット数がカウントされる。他方、第２実施形態では、全てのストリングにわたって累積されたフェイルビット数がカウントされる。
【００５９】
図１３は、第２実施形態に係る半導体記憶装置のブロック図である。図１３は、第１実施形態（図１）に基づいており、図１にいくつかの要素が加えられている。図１３に示されるように、レジスタ１５は、さらに、２つの閾値Ｆ＿ＢＳＰＦ、Ｆ＿ＢＳＰＦ＿ＡＣＣＵを保持し、これらをそれぞれ示す信号Ｆ＿ＢＳＰＦ、Ｆ＿ＢＳＰＦ＿ＡＣＣＵを出力する。信号Ｆ＿ＢＳＰＦ、Ｆ＿ＢＳＰＦ＿ＡＣＣＵは、選択回路１９によって受け取られる。選択回路１９は、ステートマシン１０の制御によって、信号Ｆ＿ＢＳＰＦ、Ｆ＿ＢＳＰＦ＿ＡＣＣＵの一方を信号Ｆ＿ＮＦとして出力する。信号Ｆ＿ＮＦは、第１実施形態と同じく、ベリファイ回路５により受け取られる。閾値Ｆ＿ＢＳＰＦは、第１実施形態の信号Ｆ＿ＮＦにより示される閾値（閾値Ｆ＿ＮＦ）と同じである。すなわち、フェイルビット数カウントに用いられる閾値である。一方、閾値Ｆ＿ＢＳＰＦ＿ＡＣＣＵは、全ストリングにわたって累積されたフィルビット数カウントに用いられる閾値である。閾値Ｆ＿ＢＳＰＦと閾値Ｆ＿ＢＳＰＦ＿ＡＣＣＵは異なる。
【００６０】
ベリファイ回路５は、ステータスレジスタ５ｂをさらに有する。ステータスレジスタ５ｂは、全ストリングにわたって累積されたフィルビット数カウントに対する判定の結果を保持する。ステータスレジスタ５ｂ中の結果は、信号ＳＴＡＴＵＳ＿ＳＴＲとして、ステートマシン１０に供給される。信号ＳＴＡＴＵＳ＿ＳＴＲは、選択回路１８に供給される。選択回路１８は、コマンドデコーダ１３から、信号ＣＭＤ＿ＳＴＡＴＵＳ＿ＳＴＲを受け取ると、信号ＳＴＡＴＵＳ＿ＳＴＲを出力バッファ１７に供給する。出力バッファ１７は、受け取った信号ＳＴＡＴＵＳ＿ＳＴＲを半導体記憶装置１００から出力する。図１３は、信号ＳＴＡＴＵＳと信号ＳＴＡＴＵＳ＿ＳＴＲの一方が出力される例を描いている。しかしながら、第１バッファ１２と接続された入出力ＩＯに加えて別のＩＯポートが設けられ、それぞれのＩＯポートから信号ＳＴＡＴＵＳ、ＳＴＡＴＵＳ＿ＳＴＲが同時に出力される形態でもよい。第２実施形態で説明した要素（コンポーネント）以外の要素については、図２〜図６、図１０も含め、第１実施形態と同じである。
【００６１】
図１４は、第２実施形態に係る半導体記憶装置の一部のノードの電位のタイミングチャートである。特に、図１４は、第２実施形態における消去ベリファイの間のタイミングチャートを示しており、ある消去対象ブロックについて示している。図１４の動作は、例えばステートマシン１０がコントロールレジスタ６、７、８を制御することを通じて実行される。
【００６２】
まず、消去前または少なくとも消去ベリファイ前にキャッシュＵＤＬが初期化される。また、消去完了、すなわち時刻ｔ２０での信号ｅｒａｓｅのローレベルへの変化までの動作は、第１実施形態と同じである。時刻ｔ２０から、最初のストリングＳｔｒ０に対するベリファイ読み出しが行われる。時刻ｔ２０〜ｔ２２までの動作は、第１実施形態（図１１）の時刻ｔ０〜ｔ３までの動作と本質的には同じである。異なるのは、論理演算が図１５に示す通りであること、論理演算にキャッシュＵＤＬ中のデータが用いられること、論理演算の結果がキャッシュＵＤＬに保持されることである。キャッシュＵＤＬが用いられることに基づいて、時刻ｔ２２の直前では、信号ＵＴＲＳがハイレベル（有効論理）とされる。図１５は第２実施形態のセンスアンプ出力とキャッシュデータと、それらに基づいた消去ベリファイ結果を例示する。ストリングＳｔｒ０に対する消去ベリファイ読み出しでは、キャッシュＵＤＬは初期状態であり、“１”データを保持する。ストリングＳｔｒ（現在の例では、ストリングＳｔｒ０）に対する消去ベリファイ読み出しの結果、出力ＳＡＯＵＴが“０”であれば、図１５の第１行に示されるように、論理演算の結果は、“１”（パス）である。この結果は、対応するキャッシュＵＤＬに保持される。一方、出力ＳＡＯＵＴが“１”であれば、第２行に示されるように、論理演算の結果は“０”（フェイル）である。この結果は、対応するキャッシュＵＤＬに保持される。図１４に戻る。時刻ｔ２２において、信号ＵＴＲＳがローレベル（無効論理）になることにより、キャッシュＵＤＬのデータが確定する。
【００６３】
続いて、ストリングＳｔｒ１に対する消去ベリファイ読み出しが行われ、ストリングＳｔｒ０についての結果に累積される。ストリングＳｔｒ０に対するフェイルビット数カウントは行われない。この点は、第１実施形態と対照的である。ストリングＳｔｒ１に対する消去ベリファイ読み出しのために、まず、信号ｅｖｆｙは時刻ｔ２３においても引き続きハイレベルを維持する。時刻ｔ２３以降も信号ＲＤＥＣはハイレベルを維持し、このためワード線ＷＬは消去ベリファイ電圧Ｖｅｖｆｙを維持する。この点は、第１実施形態と同じである。一方、時刻ｔ２３において、ＳＧ線ＳＧＤ、ＳＧＳは、一度ローレベル（無効論理）にされる。ストリングＳｔｒ０が選択されている状態から、ストリングＳｔｒ１が選択された状態へ移行するためである。続いて、信号ＳＴＲＡＤＤがストリングＳｔｒ１を選択する状態に設定される。この状態は、時刻ｔ２８の前まで続く。
【００６４】
時刻ｔ２４において、ステートマシン１０は、ＳＧ線ＳＧＤ、ＳＧＳをハイレベルにする。続いて、ステートマシン１０は、ストリングＳｔｒ１についての消去ベリファイ読み出しを行う。ストリングＳｔｒ１、および後続の全てのストリングＳｔｒについての消去ベリファイ読み出しは、対象が異なるのみで、ストリングＳｔｒ０についてのものと本質的に同じである。
【００６５】
まず、時刻ｔ２５の直前でセンスアンプＳＡがイネーブルとされ、時刻ｔ２５においてセンスアンプＳＡのセンス結果が確定し、各出力ＳＡＯＵＴが表れる。続いて、信号ＵＴＲＳがハイレベルになることにより、各キャッシュＵＤＬ中のデータが読み出されるとともに、対応する出力ＳＡＯＵＴとともに論理回路Ｌにより論理演算の対象とされる。論理演算は、以下に示す通りである。上記のように、あるストリングＳｔｒについての消去ベリファイ読み出しの結果（出力ＳＡＯＵＴ）は、それまでのストリングＳｔｒについての結果に累積される。具体的には、図１５の通りである。図１５の第１行は、これまで検査されたストリングＳｔｒについての結果がいずれもパスであり、現在のストリングについての結果もパスである場合に対応する。結果、格納される値は“１”（パス）である。第２行は、これまで検査されたストリングＳｔｒについての結果がいずれもパスであり、現在のストリングについての結果がフェイルである場合に対応する。結果、格納される値は“０”（フェイル）である。第３行および第４行は、これまで検査されたストリングＳｔｒの少なくともいずれか１つについての結果がフェイルである場合に対応する。第３行および第４行のケースでは、現在のストリングについての結果に関わらず、格納される値は“０”（フェイル）である。
【００６６】
続いて、時刻ｔ２６において信号ＵＴＲＳがローレベルになることにより、キャッシュＵＤＬのデータが確定する。この後、ストリングＳｔｒ０、Ｓｔｒ１と同様に、ストリングＳｔｒ２〜Ｓｔｒ７についての消去ベリファイ読み出しが行われ、結果、時刻ｔ４０において、累積された結果がキャッシュＵＤＬに格納される。
【００６７】
ステートマシン１０は、時刻ｔ４１から、全ストリングＳｔｒ０〜Ｓｔｒ７の累積された結果についてのフェイルビット数カウントを行う。このフェイルビット数カウントは、第１実施形態の各ストリングについてのフェイルビット数カウントと本質的には同じである。すなわち、時刻ｔ４１において、信号ｅｖｆｙ、ＳＧ線ＳＧＤ、ＳＧＳ、ワード線ＷＬ、ＣＧ線ＣＧ、信号ＲＤＥＣがローレベルとされる。また、時刻ｔ４１において、信号ｆａｉｌｓｃａｎ、ＢＩＴＳＣＡＮ、ＵＴＲＳがハイレベル（有効論理）とされる。この結果、第１実施形態と同じく、信号ＰＦＢＵＳとして、フェイルビット数が出力される。
【００６８】
ベリファイ回路５は、累積されたフェイルビット数（信号ＰＦＢＵＳ）を、信号Ｆ＿ＮＦ中の閾値Ｆ＿ＢＳＰＦ＿ＡＣＣＵと比較する。上記のように、この閾値は、第１実施形態の１ストリング用の閾値Ｆ＿ＢＳＰＦとは異なる。ベリファイ回路５は、図１６に示されるように、ストリング累積フェイルビット数が閾値（許容数）未満であれば、パスの旨のステータスをステータスレジスタ５ｂに設定する。一方、ストリング累積フェイルビット数が閾値以上であれば、フェイルの旨のステータスをステータスレジスタ５ｂに設定する。
【００６９】
図１７は、第２実施形態に係る半導体記憶装置の消去のフローチャートである。図１７のフローも図１４と同様に、例えばステートマシン１０がコントロールレジスタ６、７、８を制御することを通じて実行される。
【００７０】
図１７のフローの例は、大まかに２つのステージを含む。第１ステージでは、図１４を参照して説明したように、全ストリングがまとめて検査され、ブロック平均のベリファイ結果が判定される。このような検査は、高速で完了する。第１ステージには、後述のステップＳ３１〜Ｓ３４が含まれる。第２ステージでは、ストリングごとの検査および再消去が行われる。このような検査は、詳細な結果に繋がる。第２ステージには、後述のステップＳ４１〜Ｓ４９が含まれる。
【００７１】
図１７に示されるように、ステップＳ３１において、ステートマシン１０は、ベリファイ回路５中のステータスレジスタ５ａ、５ｂを初期化する。ステップＳ３２において、ステートマシン１０は、消去対象ブロックに消去パルスを印加する。ステップＳ３２は、図１４の信号ｅｒａｓｅがハイレベルである期間に対応する。ステップＳ３３おいて、ステートマシン１０は、全ストリングに対して累積的に消去ベリファイ読み出しを行う。ステップＳ３３は、図１４の信号ｅｖｆｙがハイレベルである期間に相当し、上記のように、ストリングＳｔｒ０〜Ｓｔｒ７について、セルからのデータの読み出し、センス、各センスアンプ出力ＳＡＯＵＴと各キャッシュＵＤＬのデータとの論理演算、論理演算結果の各キャッシュＵＤＬへの格納を含んでいる。ステップＳ３３の結果、ストリングＳｔｒ０〜Ｓｔｒ７についての消去ベリファイ読み出しの累積された結果が、キャッシュＵＤＬに格納される。
【００７２】
ステップＳ３４において、ステートマシン１０は、キャッシュＵＤＬ中のストリング累積ベリファイ結果を検査する。すなわち、まず、全キャッシュＵＤＬからフェイルまたはパスの旨のデータが信号ＰＦＢＵＳとして出力される。信号ＰＦＢＵＳは、フェイルの旨のデータを保持するＵＤＬの個数（ストリング累積フェイルビット数）を保持する。ベリファイ回路５は、ストリング累積フェイルビット数を閾値Ｆ＿ＢＳＰＦ＿ＡＣＣＵと比較する。ステップＳ３４は、図１４の信号ｆａｉｌｓｃａｎ、ＢＩＴＳＣＡＮがハイレベルである期間に相当する。ストリング累積フェイルビット数が閾値未満であれば、ストリング累積消去ベリファイはパスであり、ベリファイ回路５はパスの旨をレジスタ５ｂに設定する。他方、ストリング累積フェイルビット数が閾値以上であれば、ストリング累積消去ベリファイはパスであり、ベリファイ回路５はパスの旨をレジスタ５ｂに設定する。
【００７３】
ステップＳ３４での判定がＮｏの場合、フローはステップＳ３６に移行する。ステップＳ３６は、図１２のステップＳ９と同じである。ステップＳ３６において、ステートマシン１０は、消去および消去ベリファイの組の繰り返し数が閾値（上限）を超えたかを判定する。ステップＳ３６の判定がＮｏであれば、フローはステップＳ３２に戻る。ステップＳ３６の判定がＹｅｓであれば、フローはステップＳ３７移行する。ステップＳ３７は、図１２のステップＳ１１と同様である。ステップＳ３７において、ステートマシン１０は、ステータスレジスタ５ｂにフェイルの旨のデータを設定する。次いで、消去を終了する。フェイルの旨のステータスレジスタ５ｂの値は、ストリング累積消去ベリファイが失敗したことを意味する。
【００７４】
一方、ステップＳ３４での判定がＹｅｓの場合、フローはステップＳ３９に移行する。ステップＳ３９において、ステートマシン１０は、消去シーケンスが、高速な消去ベリファイのみ、すなわちストリング累積消去ベリファイのみを指定しているかを判定する。この判定は、例えば、ステートマシン１０に予め設定されているモードの判定を通じて行われる。消去シーケンスが高速判定のみを含むモードの場合、フローは終了する。一方、消去シーケンスが詳細な判定を含むモードの場合、フローは、第２ステージに移行する。第２ステージは、ステップＳ４１から開始する。第２ステージは、第１実施形態と本質的に同じであり、ストリングごとに連続して消去ベリファイが行われる。すなわち、ステップＳ４１〜Ｓ５０は、図１２のＳ２〜Ｓ１１とそれぞれ同じである。
【００７５】
ステップＳ４１において、ステートマシン１０は、消去対象ブロックに消去パルスを印加する。ステップＳ４２において、ステートマシンは、パラメータＮを０に初期化する。ステップＳ４３において、ステートマシン１０は、指定されるストリングＳｔｒＮについての消去ベリファイ読み出しを行う。ステップＳ４３は、上記のように、セルからのデータの読み出し、センス、各センスアンプ出力ＳＡＯＵＴと対応するキャッシュＬＤＬ中のデータとの論理演算、論理演算結果の各キャッシュＬＤＬへの格納を含んでいる。
【００７６】
ステップＳ４４において、ステートマシン１０は、ストリングＳｔｒＮについてのフェイルビット数をカウントする。ステップＳ４５において、ステートマシン１０は、フェイルビット数を閾値Ｆ＿ＢＳＰＦと比較する。ステップＳ４４、Ｓ４５は、信号ＰＦＢＵＳへのフェイルビット数の出力、フェイルビット数と閾値との比較、比較結果のステータス５ａへの格納を含んでいる。
【００７７】
ステップＳ４５の結果がＹｅｓであれば、ステップＳ４６において、ステートマシン１０は、直前の消去ベリファイが行われたストリングＳｔｒが最後のストリングであるかを判定する。ステップＳ４６での判定がＹｅｓであればフローは終了し、ＮｏであればステップＳ４７においてステートマシン１０はＮを１インクリメントする。ステップＳ４７の後、フローはステップＳ４３に戻る。
【００７８】
ステップＳ４５での判定がＮｏである場合、ステップＳ４８において、ステートマシン１０は、消去および消去ベリファイの組の繰り返し数が閾値（上限）を超えたかを判定する。繰り返し数が上限を超えてない場合、ステートマシン１０は、ステップＳ４９において消去対象ブロックへの消去パルスの再印加を準備し、次いでフローはステップＳ４１に戻る。ステップＳ４８での判定がＹｅｓである場合、ステートマシン１０は、ステップＳ５０においてステータスレジスタ５ａにフェイルの旨のデータを設定する。
【００７９】
以上説明したように、第２実施形態によれば、各ストリングに対する消去ベリファイの結果が複数のストリングにわたって累積され、この累積の結果に対してフェイルまたはパスが判定される。先行技術のようなストリングごとの判定および再消去の場合、あるストリングがフェイルである度に再消去が行われ、フェイル判定および再消去が繰り返される。ストリング毎の消去ベリファイを省略してストリング累積消去ベリファイのみを行えば、消去ベリファイを高速で完了できる。
【００８０】
また、特定のストリングの例えば製造上の欠陥や長期使用劣化に起因して、消去命令の度にフェイル判定および再消去が多数繰り返されることになる。さらに、あるブロックがフェイル判定を繰り返す複数のストリングを含む場合、上記のフェイルおよび再消去の組が消去対象ブロックに対して繰り返される。これに対して、第２実施形態によれば、フェイル判定を繰り返す複数ストリングに対してストリング毎にベリファイを行う前に、そのようなストリングを含むブロックを発見できる。このことは、消去に要する時間の短縮に繋がる。
【００８１】
第２実施形態のフローは、図１７に代えて図１８のようであってもよい。図１８は、第２実施形態に係る半導体記憶装置の消去の第１変形例のフローチャートである。図１８に示されるように、ステップＳ３６での判断がＹｅｓの場合、フローは、ステップＳ３７を経てステップＳ３９に移行する。すなわち、ストリング累積の消去ベリファイがフェイルで且つ消去の繰り返し数が上限を超える場合、ストリング毎の消去ベリファイに移行する。第１変形例によれば、消去パルス印加と消去ベリファイの組が複数回行われる場合、初回の消去ベリファイなどでは全ストリングでフェイルとなる可能性が高い。ストリング累積消去ベリファイがパスしてから、ストリング毎消去ベリファイに移行すれば、消去ベリファイにかかる全体の時間を短縮することができる。
【００８２】
また第２実施形態は第１実施形態と組み合わせて図１９のようであってもよい。図１９は、第２実施形態の半導体記憶装置の消去の第２変形例のフローチャートである。ステップＳ１からステップＳ１１までは図１２と同様である。ただし、ステップＳ１において、図１２のステップＳ１を参照して説明したようにステータスレジスタ５ａに加えて、ステータスレジスタ５ｂも初期化される。
【００８３】
Ｓ６において、あるストリングＳｔｒＮの消去ベリファイがフェイルと判定され、かつ消去および消去ベリファイの組の繰り返し回数が閾値（上限）を超えた場合、フローは、ステップＳ１１に移行する。ステップＳ１１において、消去対象ブロックのストリング毎消去ベリファイがフェイルであったことを示すために、ステートマシン１０は、ステータスレジスタ５ａにフェイルの旨のデータを設定する。この後消去を終了しない点が第１実施形態と相違する。本例では、ストリング毎消去ベリファイからストリング累積消去ベリファイへ移行する。
【００８４】
より具体的には、フローは、ステップＳ１１からステップＳ３３に移行する。ステップＳ３３において、ステートマシン１０は、ストリング累積消去ベリファイ読み出しを行う。ステップＳ３３の結果、消去ベリファイ読み出しの結果がキャッシュＵＤＬに格納される。ステップＳ３３は、図１４の時刻ｔ２０からｔ４１までの動作を含む。
【００８５】
次に、ステップＳ３４において、ステートマシン１０は、キャッシュＵＤＬ中のストリング累積ベリファイ結果を検査する。ステップＳ３４での判定がＹｅｓの場合、消去は終了する。一方、ステップＳ３４での判定がＮｏの場合、フローはステップＳ３７に移行する。ステップＳ３７において、ステートマシン１０は、ステータスレジスタ５ｂにフェイルの旨のデータを設定する。
【００８６】
第２変形例では次のような利点を得られる。ブロックが複数のストリングを有する場合、既存技術では、特定のストリングで発生するたとえば製造上の欠陥や長期使用劣化に起因して当該ストリングでの消去ベリファイがパスせず、ストリング毎の消去ベリファイフェイルと再消去の組が繰り返されてしまう。さらに、このストリングを含んだブロックが一部のストリングの欠陥や劣化によりフェイルと判定され、欠陥や劣化のない領域も使用できない状況に陥る。第２例では、ストリング毎消去ベリファイで、あるストリングがフェイルであっても、消去は終了せずに、ストリング累積ベリファイが行われる。この結果、ストリング毎の検査ではなく消去対象ブロックの平均的なフェイルビットの情報が収集され、ブロックの概略的な消去結果を高速に知ることができる。このことは、半導体記憶装置１００の利便性の向上に寄与する。
【００８７】
（第３実施形態）
第３実施形態は、第２実施形態の半導体記憶装置と、そのコントローラを含んだ半導体記憶システムに関する。
【００８８】
図２０は、第３実施形態に係る半導体記憶システム３００を示す。図２０に示されるように、半導体記憶システム３００は、第２実施形態に係る半導体記憶装置１００とコントローラ２００を含んでいる。半導体記憶装置１００は、コントローラ２００と通信する。
【００８９】
コントローラ２００は、半導体記憶装置１００の制御に関するハードウェアおよびソフトウェアを含んでいる。コントローラ２００は、チップイネーブル信号ＣＥｎｘ、ライトイネーブル信号ＷＥｎｘ、リードイネーブル信号ＲＥｎｘ、コマンドラッチイネーブル信号ＣＬＥｘ、アドレスラッチイネーブル信号ＡＬＥｘ、ライトプロテクト信号ＷＰｎｘを生成し、これらを半導体記憶装置１００に与える。また、コントローラ２００は、アドレス、コマンド、データ等の信号を生成し、双方向バスＩＯｘ＜７：０＞を介して半導体記憶装置１００に与える。半導体記憶装置１００は、双方向バスＩＯｘ＜７：０＞を介してデータをコントローラ２００に与える。必要に応じて、半導体記憶装置１００が消去などの動作が完了した旨をコントローラ２００に通知する手段が設けられてもよい。コントローラ２００は、ホスト装置４００と通信する。
【００９０】
コマンドデコーダ１３は、信号ＣＭＤ＿ＳＴＡＴＵＳおよびＣＭＤ＿ＳＴＡＴＵＳ＿ＳＴＲを受け取ると、図１３に示され且つ図１３を参照して説明されるように、これらの信号を選択回路１８に供給する。選択回路１８は信号ＣＭＤ＿ＳＴＡＴＵＳを受け取るとステータスレジスタ５ａからの信号ＳＴＡＴＵＳを出力バッファに供給する。一方、選択回路１８は、信号ＣＭＤ＿ＳＴＡＴＵＳ＿ＳＴＲを受け取るとステータスレジスタ５ｂからの信号ＳＴＡＴＵＳ＿ＳＴＲを出力バッファ１７に供給する。出力バッファ１７は、受け取った信号ＳＴＡＴＵＳまたはＳＴＡＴＵＳ＿ＳＴＲを半導体記憶装置１００から、双方向バスＩＯｘ＜７：０＞上に出力する。この信号はコントローラ２００により受け取られ、コントローラ２００内の例えばコントローラの全体を司るモジュールにより受け取られる。モジュールは、受け取った信号を、後続の動作の判断に使用する。モジュールは、例えばソフトウェアまたはハードウェア、あるいはそれらの組み合わせからなる。
【００９１】
本実施形態では、ストリング累積消去ベリファイ後のストリング毎消去ベリファイに移行する／しないの決定がコントローラ２００の判断に委ねられる。この点は、第２実施形態と対立する。
【００９２】
図２１を参照して、第３実施形態の半導体記憶システムの動作について説明する。図２１は、第３実施形態に係る半導体記憶システムの消去のタスクを示す図である。図の上から下に向かって時間が経過する。図の左側にはコントローラ２００の処理や判断が記載され、右側には半導体記憶装置１００の処理や動作が記載されている。矢印は命令やデータの流れを示す。
【００９３】
図２１に示されるように、コントローラ２００は、消去の実行を半導体記憶装置１００に指示するコマンドを発行する（タスクＴ１）。消去命令は、ストリング累積消去ベリファイの実行の指示と、さらにストリング毎消去ベリファイを同時に行うか否かの指示を含んでいる。例えば消去にかかる時間の短縮が望まれる場合、コントローラ２００は、ストリング毎消去ベリファイは行わない命令を与える。ストリング累積消去ベリファイとともにストリング毎消去ベリファイの結果も必要な場合、コントローラ２００は、ストリング毎消去ベリファイも行う命令を与える。半導体記憶装置１００は、コマンドの内容に基づいて消去および消去ベリファイを行う（タスクＴ２）。消去ベリファイは、ストリング累積消去ベリファイ、および場合によってストリング毎消去ベリファイである。半導体記憶装置１００は、消去が完了すると消去完了の旨をコントローラ２００に通知する。
【００９４】
次に、コントローラ２００はストリング累積消去ベリファイのステータスの取得命令を発行する（タスクＴ３）。半導体記憶装置１００は、命令を受け取ると、信号ＣＭＤ＿ＳＴＡＴＵＳ＿ＳＴＲを活性化し、ステータスレジスタ５ｂからステータス信号ＳＴＡＴＵＳ＿ＳＴＲを双方向バスＩＯｘ＜７：０＞を通じてコントローラ２００へ出力する（タスクＴ４）。消去命令がストリング毎消去ベリファイの実行も指示していた場合、半導体記憶装置１００は、信号ＣＭＤ＿ＳＴＡＴＵＳを活性化し、ステータスレジスタ５ａからステータス信号ＳＴＡＴＵＳを双方向バスＩＯｘ＜７：０＞を通じてコントローラ２００へ出力する。
【００９５】
コントローラ２００は、スタータス信号を受け取ると、この信号を元に次に行うべき動作を判断する（タスクＴ５）。コントローラ２００が受け取った情報とベリファイの結果の組み合わせの例は図２２に示されている。ストリング累積消去ベリファイおよびストリング毎消去ベリファイを行った場合でかつステータスＳＴＡＴＵＳおよびステータスＳＴＡＴＵＳ＿ＳＴＲ両方がパスの場合、これはブロック消去がパスであることを意味する。このため、一般に、コントローラ２００は、消去に関してさらなる情報を取得したり、さらなる動作を行う必要を有しない。よって、コントローラ２００は、ホスト装置４００からの別のジョブを実行するなどの任意の動作に移行できる。
【００９６】
一方、ステータスＳＴＡＴＵＳがフェイルでステータスＳＴＡＴＵＳ＿ＳＴＲがパスの場合、これは、特定ストリングで許容数以上のフェイルがある可能性を示唆している。この場合、半導体記憶装置１００の記憶容量に余裕があれば、コントローラ２００は、消去対象のブロックをブロック消去フェイルと判断することができる。または、コントローラ２００は、追加で情報を取得して例えば特定ストリングを除いた利用可能な領域を探索するなどの方法を選択することができる。
【００９７】
また、スタータスＳＴＡＴＵＳ＿ＳＴＲがフェイルの場合、多くの場合、ブロック消去フェイルであると判断される。このような場合でかつ消去命令がストリング毎消去ベリファイも行う指示を含んでいなかった場合、コントローラ２００は、追加で情報を取得して、フェイルと判定されたブロック内で利用可能な領域（ストリング）を探索することを選択できる。このさらなる探索のために、コントローラ２００は、特定のストリングＳｔｒＮについての消去ベリファイを実行する命令を半導体記憶装置１００に発行する（タスクＴ６）。半導体記憶装置１００は、命令を受け取ると、１つのストリングＳｔｒＮに対して消去ベリファイを行う（タスクＴ７）。この消去ベリファイは、図２３に示すフローを有する。図２３のフローは、図１２のフローの一部に相当し、ストリングＳｔｒＮのみ消去ベリファイを行う点で図１２のフローと異なる。具体的には、ステップＳ１、Ｓ４、Ｓ５、Ｓ６が行われ、ステップＳ６での判断がＹｅｓであればフローは終了し、ＮｏであればステップＳ１１が行われる。次いで、半導体記憶装置１００は、ベリファイの結果をレジスタ５ａに格納するとともに、ストリングＳｔｒＮの消去ベリファイの完了をコントローラ２００に通知する。
【００９８】
図２１に戻る。コントローラ２００は、通知を受け取ると、ストリングＮの消去ベリファイのステータス情報を取得する命令を半導体記憶装置１００に発行する（タスクＴ８）。半導体記憶装置１００は、命令を受け取ると、信号ＣＭＤ＿ＳＴＡＴＵＳを活性化し、ステータスレジスタ５ａからステータス信号ＳＴＡＴＵＳを双方向バスＩＯｘ＜７：０＞を通じてコントローラ２００へ出力する（タスクＴ９）。
【００９９】
受け取ったステータス情報に従って、コントローラ２００は、コントローラ内に保持されているストリング不良情報テーブルを更新する。具体的には、ストリングＳｔｒＮの消去ベリファイがパスであれば、コントローラ２００は、このストリングを含んだブロックは、全体としては不良であるものの消去が完了した一部領域を有する旨を認識する。そして、そのような情報をストリング不良情報テーブルにおいて保持する。ストリング不良情報テーブルは、例えば、コントローラ２００中の揮発性または不揮発性メモリ上に保持される。コントローラ２００は、使用可能な領域を特段の区別なく通常領域として使う、または不良が発生しやすい領域として特別に扱う等を行う。どのように扱われるかは、半導体記憶システム３００の設計に依存する。一方、ストリングＳｔｒＮの消去ベリファイがフェイルであれば、コントローラ２００は、例えば、ストリングＳｔｒＮを含んだブロック全体も不要であることに基づいて、ストリングＳｔｒＮも含めて、ストリングＳｔｒＮを含んだブロックに今後アクセスしない。
【０１００】
以上説明したように、第３実施形態によれば、半導体記憶装置１００は、外部からの命令に応じて、ストリング累積消去ベリファイ、ストリング毎消去ベリファイ、１ストリング消去ベリファイを行い、ステータス信号ＳＴＡＴＵＳおよびＳＴＡＴＵＳ＿ＳＴＲを出力する。これらの種々のベリファイおよびステータス情報の取得に関する一連の動作は、半導体記憶装置１００の自律的な動作ではなく、コントローラ２００の制御と命令により行われる。このため、細かな制御および精細な状況の把握を行う可能性を提供でき、従来技術では消去フェイルにせざるを得なかった消去不良ブロックをも利用する可能性を用意し、記憶容量を有効活用するルートを維持できる。しかもそれを、短時間で実行できる。半導体記憶装置１００は種々の消去ベリファイの選択肢を用意するにとどまり、それらをどのように使用するかはコントローラ２００に委ねられる。このため、半導体記憶装置１００の使用形態に柔軟性を提供できる。
【符号の説明】
【０１０１】
１００…半導体記憶装置、１…メモリセルアレイ、２…ロウデコーダ、３…センスアンプおよびキャッシュ、４…チャージポンプ、５…ベリファイ回路、５ａ、５ｂ…ステータスレジスタ、６〜８…コントロールレジスタ、９…ＣＧドライバ、１０…ステートマシン、１１、１２…第１バッファ、１３…コマンドデコーダ、１４…アドレスバッファ、１５…レジスタ、１６…データバッファ、１７…出力バッファ、１８…選択回路。
【図１】
2014053056.tif 000003
【図２】
2014053056.tif 000004
【図３】
2014053056.tif 000005
【図４】
2014053056.tif 000006
【図５】
2014053056.tif 000007
【図６】
2014053056.tif 000008
【図７】
2014053056.tif 000009
【図８】
2014053056.tif 000010
【図９】
2014053056.tif 000011
【図１０】
2014053056.tif 000012
【図１１】
2014053056.tif 000013
【図１２】
2014053056.tif 000014
【図１３】
2014053056.tif 000015
【図１４】
2014053056.tif 000016
【図１５】
2014053056.tif 000017
【図１６】
2014053056.tif 000018
【図１７】
2014053056.tif 000019
【図１８】
2014053056.tif 000020
【図１９】
2014053056.tif 000021
【図２０】
2014053056.tif 000022
【図２１】
2014053056.tif 000023
【図２２】
2014053056.tif 000024
【図２３】
2014053056.tif 000025