(57)【要約】【課題】ローカル不良カラムに対する救済効率を向上させる。【解決手段】メモリセルがマトリックス状に配置され、カラム方向にｐ（ｐは２以上の整数）個のエリアに分割されたメモリセルアレイ１０３と、メモリセルアレイ１０３の一部に配置され、不良カラムを置換可能なリダンダンシィカラムが設けられたカラムリダンダンシィエリアと、選択エリアの不良カラムをリダンダンシィカラムと置換させるカラム置換情報を保持するカラム置換レジスタ１０６とを備える。【選択図】      図１
2013254538.tif 000002
【特許請求の範囲】
【請求項１】
メモリセルがマトリックス状に配置され、カラム方向にｐ（ｐは２以上の整数）個のエリアに分割されたメモリセルアレイと、
前記メモリセルアレイの一部に配置され、不良カラムを置換可能なリダンダンシィカラムが設けられたカラムリダンダンシィエリアと、
選択エリアの不良カラムをリダンダンシィカラムと置換させるカラム置換情報を保持するカラム置換レジスタとを備えることを特徴とする不揮発性半導体記憶装置。
【請求項２】
前記エリアには、複数のブロックが設けられていることを特徴とする請求項１に記載の不揮発性半導体記憶装置。
【請求項３】
前記選択エリアのいずれかのブロックに不良カラムがある場合、前記不良カラムと同一のカラム方向において、前記選択エリアの全てのブロックのカラムを前記リダンダンシィカラムと置換させることを特徴とする請求項２に記載の不揮発性半導体記憶装置。
【請求項４】
前記選択エリアの全ての不良カラムをカラムごとに前記リダンダンシィカラムと置換させることを特徴とする請求項３に記載の不揮発性半導体記憶装置。
【請求項５】
前記選択エリアの不良カラムのカラム数が、使用可能なリダンダンシィカラムのカラム数より多い場合、前記不良カラムを構成する不良ブロックをバッドブロック化することを特徴とする請求項４に記載の不揮発性半導体記憶装置。
【請求項６】
指定アドレスに基づいて選択エリアが切り替えられる場合、切替後の選択エリアの不良カラムが前記リダンダンシィカラムと置換されるように前記カラム置換情報を更新することを特徴とする請求項１から５のいずれか１項に記載の不揮発性半導体記憶装置。
【請求項７】
メモリセルアレイの一部に配置され、前記ｐ個の各エリアのカラム置換情報を登録するＲＯＭヒューズを備えることを特徴とする請求項１から６のいずれか１項に記載の不揮発性半導体記憶装置。
【請求項８】
前記メモリセルのカラムごとの書き込み完了を検知するカラム書き込み検知部と、
前記不良カラムに対して書き込み完了済になるように前記カラム書き込み検知部を制御するカラム書き込み検知制御部とを備えることを特徴とする請求項７に記載の不揮発性半導体記憶装置。
【請求項９】
前記カラム置換情報は、
前記ｐ個の全てのエリアに共通なグローバルカラム置換情報と、
前記エリアごとに別個のローカルカラム置換情報とを備えることを特徴とする請求項８に記載の不揮発性半導体記憶装置。
【請求項１０】
前記エリアが切り替えられるごとに選択エリアのローカルカラム置換情報が前記ＲＯＭヒューズから読み出され、前記カラム置換レジスタに保持されることを特徴とする請求項９に記載の不揮発性半導体記憶装置。
【請求項１１】
前記ｐ個の各エリアのローカルカラム置換情報はコントローラに読み出され、前記エリアが切り替えられるごとに選択エリアのローカルカラム置換情報が前記コントローラから前記カラム置換レジスタに設定されることを特徴とする請求項９に記載の不揮発性半導体記憶装置。
【請求項１２】
前記メモリセルアレイは、複数のメモリセルが３次元的に配置され、
前記メモリセルに含まれるセルトランジスタが高さ方向に直列に接続されることでＮＡＮＤストリングが構成され、同一ロウに属する２ロウ分のＮＡＮＤストリングにてストリングユニットが構成され、カラム方向に配列された複数のストリングユニットにてブロックが構成され、前記カラム方向に配列された複数のブロックにて前記メモリセルアレイが構成されていることを特徴とする請求項１から１１のいずれか１項に記載の不揮発性半導体記憶装置。
【請求項１３】
前記ＮＡＮＤストリングをカラム方向に選択するビット線と、
同一のビット線を共有する互いに異なるロウのＮＡＮＤストリングにてセルレイヤごとに共有されるワード線と、
前記ＮＡＮＤストリングごとに設けられ、前記ＮＡＮＤストリングをロウ方向に選択するセレクトトランジスタを備えることを特徴とする請求項１２に記載の不揮発性半導体記憶装置。
【請求項１４】
前記ビット線は前記ブロック間で共有され、前記ワード線は前記ブロック間で分離されていることを特徴とする請求項１３に記載の不揮発性半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は不揮発性半導体記憶装置に関する。
【背景技術】
【０００２】
近年、メモリ機能を搭載した積層型の半導体メモリ（Ｂｉｔ  Ｃｏｓｔ  Ｓｃａｌａｂｌｅ  Ｍｅｍｏｒｙ）が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−２６７３１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本実施形態は、不良に対する救済効率を向上させることが可能な不揮発性半導体記憶装置を提供する。
【課題を解決するための手段】
【０００５】
実施形態の不揮発性半導体記憶装置によれば、メモリセルアレイと、カラムリダンダンシィエリアと、カラム置換レジスタとが設けられている。メモリセルアレイは、メモリセルがマトリックス状に配置され、カラム方向にｐ（ｐは２以上の整数）個のエリアに分割されている。カラムリダンダンシィエリアは、前記メモリセルアレイの一部に配置され、不良カラムを置換可能なリダンダンシィカラムが設けられている。カラム置換レジスタは、選択エリアの不良カラムをリダンダンシィカラムと置換させるカラム置換情報を保持する。
【図面の簡単な説明】
【０００６】
【図１】図１は、第１実施形態に係る不揮発性半導体記憶装置の概略構成を示すブロックである。
【図２】図２は、図１の不揮発性半導体記憶装置のメモリセルアレイの概略構成を示すブロック図である。
【図３】図３は、図２のメモリセルアレイのブロックの概略構成を示す回路図である。
【図４】図４は、図１の不揮発性半導体記憶装置の１ＮＡＮＤストリング分の概略構成を示す断面図である。
【図５】図５は、図１のＲＯＭヒューズ１０５に登録されるエリアごとのカラム置換情報の登録方法の一例を示す図である。
【図６】図６（ａ）は、図２のメモリセルアレイのエリア切替前のカラム置換方法の一例を示すブロック図、図６（ｂ）は、図２のメモリセルアレイのエリア切替後のカラム置換方法の一例を示すブロック図である。
【図７】図７は、第２実施形態に係る不揮発性半導体記憶装置の概略構成を示すブロック図である。
【図８】図８は、図７のメモリアレイの概略構成を示すブロック図である。
【図９】図９は、図８のブロックの概略構成を示す回路図である。
【図１０】図１０は、図９のストリングユニットの概略構成を拡大して示す回路図である。
【図１１】図１１は、図７の不揮発性半導体記憶装置のメモリセルアレイの概略構成例を示す斜視図である。
【図１２】図１２は、図１１のＥ部分を拡大して示す断面図である。
【図１３】図１３（ａ）は、図８のメモリセルアレイのエリア切替前のカラム置換方法の一例を示すブロック図、図１３（ｂ）は、図８のメモリセルアレイのエリア切替後のカラム置換方法の一例を示すブロック図である。
【図１４】図１４は、図７の書き込みカラム検知回路１５の概略構成を示す回路図である。
【図１５】図１５は、図７の不揮発性半導体記憶装置におけるカラム置換レジスタへのカラム置換情報の設定方法を示すフローチャートである。
【図１６】図１６（ａ）〜図１６（ｄ）は、図７の不揮発性半導体記憶装置におけるカラム置換レジスタに設定されたカラム置換情報の一例を示す図である。
【図１７】図１７は、図７の不揮発性半導体記憶装置のブート処理を示すフローチャートである。
【図１８】図１８は、図７の不揮発性半導体記憶装置のカラム構成の一例を示す図である。
【図１９】図１９（ａ）は、第３実施形態に係る選択エリアにおけるカラム置換情報の一例を示す図、図１５（ｂ）は、リダンダンシィカラムが不良の時のリダンダンシィカラムの置換例を示す図である。
【図２０】図２０は、第４実施形態に係る不揮発性半導体記憶装置の概略構成を示すブロック図である。
【図２１】図２１は、図２０の第２ＲＯＭヒューズの構成例を示すブロック図である。
【図２２】図２２は、図２０の不揮発性半導体記憶装置の読み出し動作を示すフローチャートである。
【図２３】図２３は、第５実施形態に係る不揮発性半導体記憶装置の概略構成を示すブロック図である。
【図２４】図２４は、図２３の不揮発性半導体記憶装置のパワーオン後の動作を示すフローチャートである。
【図２５】図２５は、図２３の不揮発性半導体記憶装置の読み出し動作を示すフローチャートである。
【図２６】図２６は、第６実施形態に係る不揮発性半導体記憶装置の概略構成を示すブロック図である。
【図２７】図２７は、図２６の不揮発性半導体記憶装置のパワーオン後の動作を示すフローチャートである。
【図２８】図２８は、図２６の不揮発性半導体記憶装置の読み出し動作を示すフローチャートである。
【発明を実施するための形態】
【０００７】
以下、実施形態に係る不揮発性半導体記憶装置について図面を参照しながら説明する。なお、これらの実施形態により本発明が限定されるものではない。
【０００８】
（第１実施形態）
１．全体構成
図１は、第１実施形態に係る不揮発性半導体記憶装置の概略構成を示すブロックである。なお、この不揮発性半導体記憶装置は、２次元のいわゆる平面ＮＡＮＤフラッシュメモリであってもよいし、ＢｉＣＳメモリなどの３次元のＮＡＮＤフラッシュメモリであってもよい。説明の便宜上、平面ＮＡＮＤフラッシュメモリを例として説明する。図２は、図１の不揮発性半導体記憶装置のメモリセルアレイの概略構成を示すブロック図である。図３は、図２のメモリセルアレイのブロックの概略構成を示す回路図である。
図１において、不揮発性半導体記憶装置は、ＮＡＮＤフラッシュメモリ１０１、ＮＡＮＤフラッシュメモリ１０１のドライブ制御を行うコントローラ１０２を有する。ＮＡＮＤ型フラッシュメモリ１０１はコントローラ１０２と電気的に接続される。
【０００９】
ＮＡＮＤフラッシュメモリ１０１は、メモリセルアレイ１０３、ロウ選択制御部１０４ａ、カラム選択制御部１０４ｂ、カラム置換レジスタ１０６および制御回路１０７を有する。図３に示すように、メモリセルアレイ１０３は、メモリセルがｘ方向及びｙ方向にマトリックス状に配置される。また、図２に示すように、メモリセルアレイ１０３には、通常データを保持可能な通常データ領域ＲＡと、通常データ領域ＲＡの不良カラムを置換可能なリダンダンシィカラムＲＢが設けられたカラムリダンダンシィ領域を有する。ここで、通常データ領域、リダンダンシィ領域それぞれは、カラム方向にｐ（ｐは２以上の整数）個のエリアＥ１〜Ｅｐに分割される。なお、通常データ領域ＲＡにｒａ個のカラムがあり、カラムリダンダンシィ領域ＲＢにｒｂ個のカラムがある。
【００１０】
また、メモリセルアレイ１０３は、ＲＯＭヒューズ１０５を有する。ＲＯＭヒューズ１０５には、ｐ個の各エリアＥ１〜Ｅｐのカラム置換情報を登録することができる。なお、ＲＯＭヒューズ１０５には、例えばカラム置換情報の他に、電圧値のトリミング情報やバッドブロック情報などを登録してもよい。
【００１１】
カラム置換情報は、選択エリアが不良カラムを有する場合に、例えば不良カラムをいずれのリダンダンシィカラムと置換させるか、不良カラムと置換先のリダンダンシィカラムを対応付けした情報である。カラム置換情報は、グローバル不良カラムだけでなくローカル不良カラムのカラム置換情報を含む。ここで、グローバル不良カラムは、ｐ個の全てのエリアに共通なグローバル不良カラムであり、ローカル不良カラムは、エリアごとに別個のローカル不良カラムを示す。このカラム置換情報により、グローバルまたはローカル不良カラムを置換することができる。
【００１２】
グローバル不良カラムとしては、ビット線のオープン／ショートなどの不良がある。他にも、センスアンプの不良や、データラッチの不良などもある。ローカル不良カラムとしては、電荷蓄積層の膜の不具合などに代表されるセルの不良や、メモリセルレイヤを貫通する貫通孔（メモリホール）の加工不良や、メモリホールの埋め込み不良などのメモリホールのオープンがある。例えばメモリホールやコンタクトの加工不良は、そのメモリホールやコンタクトにより接続される範囲、例えば平面ＮＡＮＤフラッシュメモリであれば、コンタクトを共有する２ブロック、３次元のＮＡＮＤフラッシュメモリであれば１ストリングユニット（詳細は後述）で不良となる。
【００１３】
ロウ選択制御部１０４ａは、データの読み出しおよび書き込みにおいて、メモリセルアレイ１０３のロウ選択および印加電圧の制御を行う。カラム選択制御部１０４ｂは、データの読み出しおよび書き込みにおいて、メモリセルアレイ１０３のカラム選択および印加電圧の制御を行う。カラム置換レジスタ１０６は、選択エリアのカラム置換情報を保持することができる。この選択エリアのカラム置換情報はＲＯＭヒューズ１０５から読み出される。
【００１４】
図２において、メモリセルアレイ１０３は、ユーザアクセス可能な通常データ領域ＲＡおよびユーザアクセス不可能なカラムリダンダンシィ領域ＲＢを有する。なお、カラムリダンダンシィ領域ＲＢには、不良カラムを置換可能なリダンダンシィカラムが設けられている。
【００１５】
また、メモリセルアレイ１０３はｎ（ｎは２以上の整数）個のブロックＢ１〜Ｂｎに分割されている。また、メモリセルアレイ１０３はｐ（ｐは２以上ｎ以下の整数；ｐ≦ｎ）個のエリアＥ１〜Ｅｐに分割されている。なお、エリアＥ１〜Ｅｐそれぞれは、少なくとも１個以上のブロックＢ１〜Ｂｎを有する。この時、各エリアＥ１〜Ｅｐに含まれるブロックＢ１〜Ｂｎの個数は、エリアＥ１〜Ｅｐ間で互いに同一である必要はなく、エリアＥ１〜Ｅｐ間で互いに異なっていてもよい。また、同一エリアＥ１〜Ｅｐに含まれるブロックＢ１〜Ｂｎは、互いに連続して配置されている必要はなく、飛び飛びのブロックＢ１〜Ｂｎが同一エリアＥ１〜Ｅｐに含まれていてもよい。
【００１６】
図３において、ブロックＢｉ（１≦ｉ≦ｎの整数）は、ｘ方向にｍ個のＮＡＮＤストリングＮＳ１〜ＮＳｍを有する。ＮＡＮＤストリングＮＳ１〜ＮＳｍそれぞれは、ビット線ＢＬ１〜ＢＬｍに接続される。ブロックＢｉには、ｈ（ｈは正の整数）本のワード線ＷＬ１〜ＷＬｈ、セレクトゲート線ＳＧＤ、ＳＧＳおよびソース線ＳＣＥが設けられている。また、ブロックＢ１〜Ｂｎには、ｍ（ｍは８の倍数）本のビット線ＢＬ１〜ＢＬｍが共通に設けられている。８本のビット線ＢＬで、１カラムを構成する。例えば、通常データ領域ＲＡにｒａ個のカラムがあり、カラムリダンダンシィ領域ＲＢにｒｂ個のカラムがある場合には、ｍは下記の式を満たす。
ｍ＝（ｒａ＋ｒｂ）*８
【００１７】
ここで、ＮＡＮＤストリングＮＳ１〜ＮＳｍには、セルトランジスタＭＴ１〜ＭＴｈおよびセレクトトランジスタＤＴ、ＳＴがそれぞれ設けられている。なお、メモリセルアレイ１０３の１個のメモリセルは、１個のセルトランジスタＭＴｋ（１≦ｋ≦ｈの整数）にて構成することができる。また、各セルトランジスタＭＴ１〜ＭＴｈには、電荷を蓄積する電荷蓄積領域および電荷の蓄積を制御する制御ゲートを設ける。そして、セルトランジスタＭＴ１〜ＭＴｈが直列に接続されている。そして、初段のセルトランジスタＭＴ１にセレクトトランジスタＤＴが直列に接続され、最終段のセルトランジスタＭＴｈにセレクトトランジスタＳＴが直列に接続される。
【００１８】
そして、ＮＡＮＤストリングＮＳ１〜ＮＳｍにおいて、セルトランジスタＭＴ１〜ＭＴｈの制御ゲートには、ワード線ＷＬ１〜ＷＬｈがそれぞれ接続されている。また、ＮＡＮＤストリングＮＳｊの一端は、セレクトトランジスタＤＴを介してビット線ＢＬｊに接続され、ＮＡＮＤストリングＮＳｊの他端は、セレクトトランジスタＳＴを介してソース線ＳＣＥに接続されている。
【００１９】
また、ＮＡＮＤストリングＮＳ１〜ＮＳｍにおいて、シングルレベルセル（いわゆるＳＬＣ）の場合は、ワード線ＷＬｋに接続されたセルトランジスタＭＴｋからなるｍ個のメモリセルでページＰＧＥを構成する。このとき、１ページは、（ｒａ＋ｒｂ）バイトで構成される。このページは、メモリセルにデータを書き込む単位、メモリセルからデータを読み出す単位である。なお、ユーザーが１ページのうち使用可能なデータ量はｒａバイトである。
【００２０】
図４は、図１の不揮発性半導体記憶装置の１ＮＡＮＤストリング分の概略構成を示す断面図である。
図４において、ウェル１１１上に層間絶縁膜（図示略）を介して電荷蓄積層１１５およびセレクトゲート電極１１９、１２０が配置され、電荷蓄積層１１５上には層間絶縁膜（図示略）を介して制御ゲート１１６が配置されている。平面ＮＡＮＤフラッシュメモリでは、電荷蓄積層１１５としてフローティングゲートを用いることができる。
【００２１】
そして、ウェル１１１には、電荷蓄積層１１５間または電荷蓄積層１１５とセレクトゲート電極１１９、１２０との間に配置された不純物拡散層１１２、１１３、１１４が形成されている。なお、例えば、ウェル１１１はＰ型、不純物拡散層１１２、１１３、１１４はＮ型に形成することができる。
【００２２】
そして、不純物拡散層１１３は接続導体１１８を介してビット線ＢＬｊに接続され、不純物拡散層１１４は接続導体１１７を介してソース線ＳＣＥに接続されている。なお、各メモリセルの制御ゲート１１６はワード線ＷＬ１〜ＷＬｈに接続され、セレクトゲート電極１１９、１２０はセレクトゲート線ＳＧＤ、ＳＧＳにそれぞれ接続されている。
【００２３】
そして、書き込み動作では、ブロックＢｉの選択ワード線ＷＬｋにプログラム電圧Ｖｐｐ（例えば２０Ｖ）が印加される。また、非選択ワード線ＷＬ１〜ＷＬｋ−１、ＷＬｋ＋１〜ＷＬｈには例えばセルトランジスタＭＴ１〜ＭＴｋ−１をオンさせるのに十分な中間電圧Ｖｐａｓｓ（例えば、１０Ｖ）が印加される。
また、ブロックＢｉのビット線ＢＬｊには、書き込むデータに応じて書き込み電圧（例えば０Ｖ）、または、書き込み禁止電圧（例えば２．５Ｖ）が印加される。例えば、データの書き込み時に、ページのうち、書き込むデータがデータ“０”であるビット線ＢＬｊには０Ｖを、データ“１”であるビット線ＢＬｊには例えば２．５Ｖを印加する。
【００２４】
読み出し動作では、ブロックＢｉの選択ワード線ＷＬｋに読み出し電圧（例えば、０Ｖ）が印加され、非選択ワード線ＷＬ１〜ＷＬｋ−１、ＷＬｋ＋１〜ＷＬｈには、セルトランジスタＭＴ１〜ＭＴｋ−１、ＭＴｋ＋１〜ＭＴｈをオンさせるのに十分な中間電圧（例えば、４．５Ｖ）が印加される。また、セレクトゲート線ＳＧＤ、ＳＧＳには、セレクトトランジスタＤＴ、ＳＴをオンさせるのに十分な中間電圧（例えば、４．５Ｖ）が印加される。また、ビット線ＢＬｊにプリチャージ電圧が印加され、ソース線ＳＣＥに０Ｖが印加される。
【００２５】
この時、セルトランジスタのしきい値が読み出しレベルに達していない場合は、ビット線ＢＬｊに充電された電荷がＮＡＮＤストリングＮＳｊを介して放電され、ビット線ＢＬｊの電位がロウレベルになる。一方、セルトランジスタのしきい値が読み出しレベルに達している場合は、ビット線ＢＬｊに充電された電荷がＮＡＮＤストリングＮＳｊを介して放電されず、ビット線ＢＬｊの電位がハイレベルを保持する。
【００２６】
そして、ビット線ＢＬｊの電位がロウレベルかハイレベルかを判定することでセルトランジスタのしきい値が読み出しレベルに達しているかどうかが判定され、セルトランジスタに記憶されているデータが読み出される。
【００２７】
消去動作では、ブロックＢｉのワード線ＷＬ１〜ＷＬｈに０Ｖが印加され、ブロックＢｉのウェル電位が消去電圧Ｖｅ（例えば、１７Ｖ）に設定される。また、ブロックＢｉのソース線ＳＣＥおよびセレクトゲート線ＳＧＤ、ＳＧＳはフローティングに設定することができる。
【００２８】
図５は、図１のＲＯＭヒューズ１０５に登録されるエリアごとのカラム置換情報の登録方法の一例を示す図である。
【００２９】
図５において、図１のＲＯＭヒューズ１０５には、図２のエリアＥ１〜Ｅｐそれぞれに対応するカラム置換情報Ｄ１〜Ｄｐが登録される。カラム置換情報Ｄ１〜Ｄｐによりｐ個の全てのエリアに共通なグローバル不良カラムを置換したり、エリアごとに別個のローカル不良カラムを置換したりすることができる。このカラム置換情報Ｄ１〜Ｄｐは、各エリアのどのカラムに不良があるかと示す情報だけでなく、不良カラムと置換先のリダンダンシィカラムを対応付けされた情報も含む。
図５に示すように、リダンダンシィカラムがｒｂバイトある場合、リダンダンシィカラムごとに、フラグＦｌａｇ０，Ｆｌａｇ１と置き換え元アドレスを設ける。カラム置換情報Ｄ１〜Ｄｐそれぞれは、例えばｒｂ個のフラグＦｌａｇ０，Ｆｌａｇ１と置き換え元アドレスが保持される。ここで、フラグＦｌａｇ０は、リダンダンシィカラムが不良カラムであるか否かを示す指標である。また、フラグＦｌａｇ１は、リダンダンシィカラムがカラムの置換に使用されているか否かを示す指標である。フラグＦｌａｇ０，Ｆｌａｇ１の詳細は後述する。
【００３０】
カラム置換情報Ｄｊ（１≦ｊ≦ｐのうち、１つの整数）として、エリアＥｊのあるカラムにカラム不良があり、このカラムの置換先が同一エリアＥｊのリダンダンシィカラムである旨の情報がＲＯＭヒューズ１０５に保持されている場合を例として説明する。
【００３１】
例えば、図５に示すように、ダイソートテスト工程後に、全てエリアＥ１〜Ｅｐについてカラム置換情報Ｄ１〜ＤｐがＲＯＭヒューズ１０５に登録される。
パワーオン時に、ＮＡＮＤ型フラッシュメモリ１０１内の制御回路１０７、ＲＯＭヒューズ１０５からＮＡＮＤ型フラッシュメモリ１０１で最初にアクセスするエリアＥｘ（管理ブロックを含むエリア）に対応するカラム置換情報Ｄｘを読み出し、カラム置換レジスタ１０６にセットする。
そして、メモリセルアレイ１０３にアクセス（読み出し動作、書き込み動作等）するときに、制御回路１０７は、カラム置換レジスタ１０６のカラム置換情報Ｄｘを参照する。
制御回路１０７は、この対応するカラム置換情報Ｄｘのうち選択されたカラムアドレスに該当する部分を参照して、カラム不良としてカラム置換情報Ｄｘに登録されている否かを判断する。
そして、制御回路１０７は、選択されたカラムアドレスがカラム不良として登録されている場合には、カラム置換情報Ｄｘに基づいて、置換先のリダンダンシィカラムにアクセスする。
【００３２】
次に、ロウアドレスによってエリアＥｘとは異なるエリアＥ１〜Ｅｐが指定された場合を検討する。なお、指定されたロウアドレスによって選択されるエリアはエリアＥｘ＋１とする。
このとき、制御回路１０７は、ＲＯＭヒューズ１０５から対応するカラム置換情報Ｄｘ＋１を読み出し、カラム置換レジスタ１０６にセットする。制御回路１０７は、カラム置換レジスタ１０６のカラム置換情報Ｄｘ＋１を参照する。
同様に、制御回路１０７は、カラム置換情報Ｄｘ＋１のうち選択されたカラムアドレスに該当する部分を参照して、不良カラム（グローバル不良カラム、ローカル不良カラム）があるか否かを判断する。
そして、制御回路１０７は、選択されたカラムアドレスに不良カラムがある場合には、カラム置換情報Ｄｘ＋１に基づいて、置換先のリダンダンシィカラムにアクセスする。
【００３３】
図６（ａ）は、エリア切替前のカラム置換方法の一例を示すブロック図、図６（ｂ）は、エリア切替後のカラム置換方法の一例を示すブロック図である。説明の便宜上、エリアＥｘ、Ｅｘ＋１が選択された際のカラム置換方法を例として説明する。なお、図６（ａ）および図６（ｂ）では、３個のブロックが１個のエリアに含まれている場合を例にとった。
説明の便宜上、各エリアのグローバル不良カラムとローカル不良カラムは以下のような場合を例として説明する。図６（ａ）及び図６（ｂ）において、エリアＥｘのうちカラムＣＡ、ＣＢにローカル不良カラムがあり、エリアＥｘ＋１のうちカラムＣＣにローカル不良カラムがあるものとする。カラムＣＤにはグローバル不良カラムがあるものとする。
カラム置換情報Ｄｘは、カラムＣＡ、ＣＢ、ＣＤが不良カラムである旨、カラムＣＡの置換先であるリダンダンシィカラムはＤＡであり、カラムＣＢの置換先であるリダンダンシィカラムはＤＢであり、カラムＣＤの置換先であるリダンダンシィカラムはＤＣである旨の情報である。
同様に、カラム置換情報Ｄｘ＋１は、カラムＣＣ、ＣＤに不良カラムがある旨、カラムＣＣの置換先であるリダンダンシィカラムはＤＡであり、カラムＣＤの置換先であるリダンダンシィカラムはＤＣである旨の情報である。
【００３４】
なお、例えば、エリアＥｘのカラムＣＡの不良が３つのブロックのうちの１つのブロックのローカル不良カラム（例えば、図３のビット線ＢＬ１がカラムＣＡに属するものとすると、ＮＡＮＤストリングＮＳ１における図４の接続導体１１８を通すための開口不良）であるとき、カラムＣＡの残りの２つブロックにローカル不良カラムがないとしても、エリアＥｘの３つのブロックのカラムＣＡが一括してリダンダンシィカラムＤＡに置換される。
【００３５】
パワーオン時に、制御回路１０７は所望のカラム置換情報（初期）をカラム置換レジスタ１０６に読み出し、セットする。  
そして、選択されたロウアドレスがエリアＥｘに属するとき、図６（ａ）に示すように、制御回路１０７は、カラム置換情報Ｄｘをカラム置換レジスタ１０６に読み出し、セットする。そして、制御回路１０７は、選択エリアＥｘのカラムＣＡをリダンダンシィカラムＤＡに置換し、選択エリアＥｘのカラムＣＢをリダンダンシィカラムＤＢに置換し、選択エリアＥｘのカラムＣＤをリダンダンシィカラムＤＣに置換してメモリセルアレイ１０３にアクセスする。
【００３６】
同様に、選択されたロウアドレスがエリアＥｘ＋１に属するとき、制御回路は、ＲＯＭヒューズ１０５からカラム置換情報Ｄｘ＋１を読み出し、カラム置換レジスタ１０６にセットする。図６（ｂ）に示すように、制御回路は、選択エリアＥｘ＋１のカラムＣＣをリダンダンシィカラムＤＡに置換し、カラムＣＤをリダンダンシィカラムＤＣに置換してメモリセルアレイ１０３にアクセスする。
【００３７】
ここで、グローバル不良カラムだけでなく、ローカル不良カラムをエリアＥ１〜Ｅｐごとに置換させることにより、リダンダンシィカラムを効率よく使用することが可能となり、ローカル不良カラムを効率よく救済することができる。
このため、不良ブロックの発生頻度を削減することができ、必要な余剰ブロック数を削減することができる。また、カラムの救済効率を向上させることができ、歩留まりを向上させることができる。
ローカル不良カラムに対して、リダンダンシィ処理を行わずに、ＥＣＣ処理を施すことも検討できるが、特定箇所にローカル不良カラムカラムが集中した場合には、ＥＣＣ処理が不可能になり、バッドブロック化処理をする必要がある。
しかし、本実施形態を適用すれば、ローカル不良カラムであるカラムをエリアＥ１〜Ｅｐごとに置換させることができ、ＥＣＣによる訂正頻度を低減させることができる。その結果、パフォーマンスの向上も期待できる。例えば、エリア切替を行うことにより、エリアＥｘのカラムＣＡのローカル不良カラムと、エリアＥｘ＋１のカラムＣＣのローカル不良カラムに対して同一のリダンダンシィカラムＤＡを用いることができ、カラムＣＡ、ＣＣごとに別個にリダンダンシィカラムを割り当てる必要がなくなることから、救済効率を上げることができる。
【００３８】
なお、各エリアＥ１〜Ｅｐに含まれるブロックの個数が少なくなると、各エリアＥ１〜Ｅｐごとに使用されるリダンダンシィカラムの個数が少なくなるため、救済効率を上げることができる。ただし、各エリアＥ１〜Ｅｐに含まれるブロックの個数が少なくなると、エリアＥ１〜Ｅｐの個数が増大するため、エリア切替の頻度が増大し、パフォーマンスが低下する。このため、各エリアＥ１〜Ｅｐに含まれるブロックの個数は、救済効率とパフォーマンスとが両立するように設定することが好ましい。
【００３９】
例えば、リダンダンシィカラムの個数に余裕がある場合には、その余裕分が使い切れるように各エリアＥ１〜Ｅｐに含まれるブロックの個数を増大させるようにしてもよい。あるいは、各エリアＥ１〜Ｅｐに含まれる不良カラムの個数が多く、各エリアＥ１〜Ｅｐの全ての不良カラムを置き換えるだけのリダンダンシィカラムがない場合、そのリダンダンシィカラムの不足分に応じて各エリアＥ１〜Ｅｐに含まれるブロックの個数を減少させるようにしてもよい。
【００４０】
（第２実施形態）
図７は、第２実施形態に係る不揮発性半導体記憶装置の概略構成を示すブロック図である。なお、この不揮発性半導体記憶装置は、いわゆる平面ＮＡＮＤフラッシュメモリであってもよいし、ＢｉＣＳメモリなどの３次元のＮＡＮＤフラッシュメモリであってもよい。
図７において、不揮発性半導体記憶装置には、図１と同様に、ＮＡＮＤフラッシュメモリ１と、コントローラ２を有する。なお、ＮＡＮＤフラッシュメモリ１のドライブ制御としては、例えば、ＮＡＮＤフラッシュメモリ１の読み書き制御、ブロック選択、誤り訂正およびウェアレベリングなどを挙げることができる。
【００４１】
ＮＡＮＤフラッシュメモリ１には、メモリセルアレイ１１、ロウデコーダ１２、センスアンプ回路１３、データキャッシュ１４、書き込みカラム検知回路１５、チャージポンプ制御回路１６、ロウ制御回路１７ａ、カラム制御回路１７ｂ、シーケンス制御回路１８、チャージポンプ回路１９、電源検知回路２０、バッファ２１、２２、コマンドデコーダ２３、アドレスバッファ２４、データバッファ２５、出力バッファ２６、マルチプレクサ２７およびカラム置換レジスタ２８が設けられている。
【００４２】
また、カラム置換レジスタ２８は、カラム置換情報を保持することができる。ここで、カラム置換レジスタ２８は、選択エリアのリダンダンシィカラムの状態を示す２つのフラグを保持するフラグレジスタＦ０、Ｆ１および置き換え元カラムアドレスを保持するアドレスレジスタＡＤが設けられている。
フラグレジスタＦ０は、フラグＦｌａｇ０を保持できる。ここで、フラグＦｌａｇ０は、リダンダンシィカラムが不良カラムであるか否かを示す指標である。リダンダンシィカラムが不良カラムであるとき、フラグＦｌａｇ０は“１”にセットされる。リダンダンシィカラムが不良カラムでなければ、フラグＦｌａｇ０は“０”にセットされる。
フラグレジスタＦ１は、フラグＦｌａｇ１を保持できる。ここで、フラグＦｌａｇ１は、リダンダンシィカラムがカラムの置換に使用されているか否かを示す指標である。リダンダンシィカラムがカラムの置換に使用されているとき、フラグＦｌａｇ１は“１”にセットされる。リダンダンシィカラムがカラムの置換に使用されていないとき、フラグＦｌａｇ１は“０”にセットされる。
【００４３】
また、ＲＯＭヒューズ３０には、全てのエリアのカラム置換情報、トリミング情報およびバッドブロック情報を登録することができる。
【００４４】
コントローラ２は、チップイネーブル信号ＣＥｎｘ、ライトイネーブル信号ＷＥｎｘ、リードイネーブル信号ＲＥｎｘ、コマンドラッチイネーブル信号ＣＬＥｘ、アドレスラッチイネーブル信号ＡＬＥｘ、ライトプロテクト信号ＷＰｎｘをバッファ２１に入力する。また、コントローラ２は、入出力ポートＩＯｘ＜７：０＞を介して、コマンド、アドレスおよび書き込みデータをバッファ２２に入力するとともに、バッファ２２は、入出力ポートＩＯｘ＜８：１＞を介して、読み出しデータをコントローラ２に出力する。
【００４５】
そして、コマンドラッチイネーブル信号ＣＬＥｘが活性化されると、バッファ２２は、バッファ２１の出力の制御を受けながら、コマンドをコマンドデコーダ２３に転送する。
また、アドレスラッチイネーブル信号ＡＬＥｘが活性化されると、バッファ２２は、バッファ２１の出力の制御を受けながら、アドレスをアドレスバッファ２４に転送する。また、ライトイネーブル信号ＷＥｎｘが活性化されると、バッファ２２は、バッファ２１の出力の制御を受けながら、書き込みデータをデータバッファ２５に転送する。また、リードイネーブル信号ＲＥｎｘが活性化されると、バッファ２２は、バッファ２１の出力の制御を受けながら、出力バッファ２６から読み出しデータを取り込み、入出力ポートＩＯｘ＜８：１＞に転送する。
【００４６】
そして、コマンドデコーダ２３はコマンドを解釈し、必要に応じて書き込み、読み出しまたは消去その他の必要な動作の開始や内部の動作状態を決定する。そして、これらの動作開始を指示する指示信号をシーケンス制御回路１８に通知する。
【００４７】
また、アドレスバッファ２４は、バッファ２２を介して入力された書き込み、消去または読み出しのアドレスを保持し、シーケンス制御回路１８からの制御に従って、ロウアドレスをロウデコーダ１２に出力するとともに、カラムアドレスをセンスアンプ回路１３に出力する。なお、アドレスバッファ２４は、必要に応じてカウンタ回路を構成したり、アドレス比較回路を内蔵したりすることができる。
【００４８】
データバッファ２５は、バッファ２２を介して入力された書き込みデータを一時保持し、マルチプレクサ２７を介してセンスアンプ回路１３に転送する。
【００４９】
出力バッファ２６は、センスアンプ回路１３を介して読み出された読み出しデータを一時保持し、バッファ２２に転送する。
【００５０】
ロウ制御回路１７ａは、シーケンス制御回路１８からの指示に従ってロウデコーダ１２の動作タイミングを制御する。カラム制御回路１７ｂは、シーケンス制御回路１８からの指示に従ってセンスアンプ回路１３、データキャッシュ１４および書き込みカラム検知回路１５の動作タイミングを制御する。
【００５１】
チャージポンプ制御回路１６は、シーケンス制御回路１８からの指示に従って書き込み、読み出しおよび消去に必要な電圧を指定し、チャージポンプ回路１９に出力する。
【００５２】
チャージポンプ回路１９は、チャージポンプ制御回路１６にて指定された信号に基づいて書き込み、読み出しおよび消去に必要な電圧を生成し、ロウデコーダ１２およびセンスアンプ回路１３に出力する。
【００５３】
センスアンプ回路１３は、選択セルに接続されるビット線の電位を検知することで、読み出しデータを判別し、データキャッシュ１４に出力する。
【００５４】
データキャッシュ１４は、読み出しデータや書き込みデータを一時保持するための複数のレジスタ（キャッシュ）を少なくとも１ページ分以上を持つ。
【００５５】
書き込みカラム検知回路１５は、書き込みベリファイの実行結果に基づいて、メモリセルのカラムごとの書き込み完了を検知することができる。
【００５６】
ロウデコーダ１２は、ブロック毎に設けられ、ブロックの選択を行う。ロウデコーダ１２は、選択ブロックの選択ワード線に書き込み、読み出しまたは消去に必要な電圧を転送し、メモリセルアレイ１１の書き込み、読み出しまたは消去を実行させる。ここで、ロウデコーダ１２にはバッドブロックフラグをセットするバッドブロックフラグレジスタ１２ａが設けられている。
【００５７】
シーケンス制御回路１８は、コマンドデコーダ２３からの指示、カラム置換レジスタ２８の内容および書き込みカラム検知回路１５の出力などに従ってメモリセルの読み出し動作、書き込み動作、消去動作その他内蔵テスト動作を制御する。メモリセルの読み出し動作、書き込み動作、消去動作の制御は、チャージポンプ制御回路１６、ロウ制御回路１７ａおよびカラム制御回路１７ｂを介してロウデコーダ１２、センスアンプ回路１３、書き込みカラム検知回路１５およびチャージポンプ回路１９を制御することで実行される。ここで、シーケンス制御回路１８には、トリミング情報を保持するトリミングレジスタ２９が設けられている。また、シーケンス制御回路１８には、選択エリア判定部１８ａおよびエリア切替指示部１８ｂが設けられている。選択エリア判定部１８ａは、指定アドレスに基づいてメモリセルアレイ１１のどの選択エリアにアクセスされるかを判定することができる。エリア切替指示部１８ｂは、エリア切替時に、ＲＯＭリードを実施し、選択エリアに応じたカラム置換情報をカラム置換レジスタ２８にセットすることができる。
【００５８】
図８は、図７のメモリセルアレイの概略構成を示す回路図、図９は、図８のブロックの概略構成を示す回路図、図１０は、図９のストリングユニットの概略構成を拡大して示す斜視図である。なお、図８〜図１０の例では、メモリセルがｘ方向、ｙ方向およびｚ方向に３次元的に配置された３次元的ＮＡＮＤフラッシュメモリについて説明する。また、図８〜図１０の例では、ワード線ＷＬ１〜ＷＬｈおよび（ドレイン側）セレクトゲート線ＳＧＤ１〜ＳＧＤｎと、ワード線ＷＬｈ＋１〜ＷＬ２ｈおよび（ソース側）セレクトゲート線ＳＧＳ１〜ＳＧＳｎとを互いに反対方向に引き出す方法を示した。
【００５９】
図８〜図１０において、このメモリセルアレイでは、ブロック→ストリングユニット→ＮＡＮＤストリングという階層構造をとっている。
【００６０】
メモリセルアレイには、ｎ（ｎは２以上の整数）個のブロックＢ１〜Ｂｎがｙ方向に配置されている。各ブロックＢ１〜Ｂｎは、ｈ（ｈは正の整数）層のセルレイヤＭＬ１〜ＭＬｈが層間絶縁膜（図示略）を介して積層されている。また、各ブロックＢ１〜Ｂｎには、ｑ（ｑは正の整数）個のストリングユニットＵ１〜Ｕｑがｙ方向に並列に配置されている。各ストリングユニットＵ１〜Ｕｑには、ｍ（ｍは正の整数）個のＮＡＮＤストリングＮＳ１〜ＮＳｍがロウ方向に並列に配置されている。各ＮＡＮＤストリングＮＳ１〜ＮＳｍは、２ｈ（ｈは正の整数）個のセルトランジスタＭＴ１〜ＭＴ２ｈ、２ｈ個のセルトランジスタの両端に配置されたセレクトトランジスタＳＴ，ＤＴ、ｈ個のセルトランジスタＭＴ１〜ＭＴｈとｈ個のセルトランジスタＭＴｈ＋１〜ＭＴ２ｈとの間に設けられたバックゲートトランジスタを有する。
また、各セルトランジスタＭＴ１〜ＭＴ２ｈは、順次直列に接続されている。そして、セルトランジスタＭＴ１〜ＭＴ２ｈは、ビット線ＢＬ側からソース線ＳＣＥ側に向かって、昇降順に配置される。セルトランジスタＭＴｈ、ＭＴｈ＋１間でカラム方向にバックゲートトランジスタを介して折り返される（メモリセルアレイの構成について、詳細は後述する）。
【００６１】
また、各ブロックＢ１〜Ｂｎには、ワード線ＷＬ１〜ＷＬ２ｈ、ドレイン側セレクトゲート線ＳＧＤ１〜ＳＧＤｑおよびソース側セレクトゲート線ＳＧＳ１〜ＳＧＳｑがｙ方向に並列に設けられるとともに、ビット線ＢＬ１〜ＢＬｍがｘ方向に並列に設けられている。
【００６２】
ここで、ワード線ＷＬ１〜ＷＬ２ｈ、ドレイン側セレクトゲート線ＳＧＤ１〜ＳＧＤｑおよびソース側セレクトゲート線ＳＧＳ１〜ＳＧＳｑは、ブロックＢ１〜Ｂｎごとに別個に設けられている。ビット線ＢＬ１〜ＢＬｍはブロックＢ１〜Ｂｎ間で共有されている。
【００６３】
そして、ブロックＢ１〜ＢｎごとにロウデコーダＲＤ１〜ＲＤｎ、ＲＳ１〜ＲＳｎがそれぞれ設けられている。そして、例えば、ブロックＢｎにおいて、ワード線ＷＬ１〜ＷＬｈおよびドレイン側セレクトゲート線ＳＧＤ１〜ＳＧＤｑは、ワード線ＷＬｈ＋１〜ＷＬ２ｈおよびソース側セレクトゲート線ＳＧＳ１〜ＳＧＳｑと反対方向に引き出されている。そして、ワード線ＷＬ１〜ＷＬｈおよびドレイン側セレクトゲート線ＳＧＤ１〜ＳＧＤｑの引き出し方向にはロウデコーダＲＤｎが配置されている。ワード線ＷＬｈ＋１〜ＷＬ２ｈおよびソース側セレクトゲート線ＳＧＳ１〜ＳＧＳｑの引き出し方向にはロウデコーダＲＳｎが配置されている。
【００６４】
また、センスアンプ回路ＳＡはブロックＢ１〜Ｂｎにて共有されている。そして、ビット線ＢＬ１〜ＢＬｍはセンスアンプ回路ＳＡに接続されている。
【００６５】
また、各ブロックＢ１〜Ｂｎにおいて、ドレイン側セレクトゲート線ＳＧＤ１〜ＳＧＤｑおよびソース側セレクトゲート線ＳＧＳ１〜ＳＧＳｑはストリングユニットＵ１〜Ｕｑごとに個別に設けられている。
ワード線ＷＬ１〜ＷＬｈは、各ブロックＢ１〜Ｂｎにおいて、異なるストリングユニットＵ１〜Ｕｑのうち、対応するセルトランジスタＭＴ１〜ＭＴｈのゲートに共通接続される。すなわち、ワード線ＷＬ１は、例えばブロックＢ１内において、ストリングユニットＵ１〜ＵｑのセルトランジスタＭＴ１全てのゲートに共通接続される。ワード線ＷＬ２は、例えばブロックＢ１内において、ストリングユニットＵ１〜ＵｑのセルトランジスタＭＴ２全てのゲートに共通接続される。ワード線ＷＬ３〜ＷＬｈは、ワード線ＷＬ１、ＷＬ２と同様に対応するセルトランジスタＭＴ３〜ＭＴｈのゲートに共通接続される。
ワード線ＷＬｈ＋１〜ＷＬ２ｈは、各ブロックＢ１〜Ｂｎにおいて、異なるストリングユニットＵ１〜Ｕｑのうち、対応するセルトランジスタＭＴｈ＋１〜ＭＴ２ｈのゲートに共通接続される。
【００６６】
各ブロックＢ１〜Ｂｎにおいて、ストリングユニットＵ１〜Ｕｑごとにワード線ＷＬの引き出しを行う場合（比較例）と比較して、本実施形態では、異なるストリングユニットＵ１〜Ｕｑの対応するセルトランジスタＭＴ１〜ＭＴｈのゲートに共通接続している。したがって、本実施形態は、比較例と比べてワード線ＷＬ１〜ＷＬ２ｈからの引き出し線を１／ｑ本に減らすことができる。その結果、比較例と比べて、本実施形態は、ロウデコーダ７１、７２の大規模化を抑制することができる。
また、ワード線ＷＬ１〜ＷＬ２ｈをブロックＢ１〜Ｂｎごとに分離することにより、同一ブロックＢ１〜Ｂｎ内でワード線ＷＬ１〜ＷＬ２ｈを互いに異なる複数の複数のストリングユニット間で共有した場合においても、ワード線ＷＬ１〜ＷＬ２ｈの駆動時にかかる負荷の増大を抑制することができる。
バックゲート線ＢＧは、バックゲートトランジスタのゲートに接続される。
【００６７】
また、各ストリングユニットＵ１〜Ｕｑにおいて、ストリングユニットＵ１〜Ｕｑを選択するセレクトトランジスタＤＴ１〜ＤＴｑ、ＳＴ１〜ＳＴｑが設けられている。そして、各ＮＡＮＤストリングＮＳ１〜ＮＳｑのセルトランジスタＭＴ１はセレクトトランジスタＤＴ１〜ＤＴｑをそれぞれ介してビット線ＢＬ１〜ＢＬｍに接続されている。また、各ＮＡＮＤストリングＮＳ１〜ＮＳｑのセルトランジスタＭＴ２ｈはセレクトトランジスタＤＴ１〜ＤＴｑをそれぞれ介してソース線ＳＣＥに接続されている。
【００６８】
また、ドレイン側セレクトゲート線ＳＧＤ１〜ＳＧＤｑはセレクトトランジスタＤＴ１〜ＤＴｑのゲートにそれぞれ接続され、ソース側セレクトゲート線ＳＧＳ１〜ＳＧＳｑはセレクトトランジスタＳＴ１〜ＳＴｑのゲートにそれぞれ接続されている。
【００６９】
また、ワード線ＷＬを共有するセルトランジスタのうち、共通のストリングユニットＵ１〜Ｕｑにある複数のセルトランジスタでページが構成される。このページは、メモリセルにデータを書き込む単位、メモリセルからデータを読み出す単位である。
【００７０】
図１１は、図７の不揮発性半導体記憶装置のメモリセルアレイの概略構成例を示す斜視図、図１２は、図１１のＥ部分を拡大して示す断面図である。
図示するようにメモリセルアレイは、回路領域Ｒ１とメモリ領域Ｒ２を有する。回路領域Ｒ１は、半導体基板ＳＢに形成される。メモリ領域Ｒ２は回路領域Ｒ１上に形成される。
そしてメモリセルアレイは、半導体基板ＳＢ上に順次形成された回路層ＣＵ、バックゲートトランジスタ層Ｌ１、セルトランジスタ層Ｌ２、選択トランジスタ層Ｌ３、及び配線層Ｌ４を有する。
【００７１】
バックゲートトランジスタ層Ｌ１は、バックゲートトランジスタＢＴとして機能する。メモリセルトランジスタ層Ｌ２は、メモリセルトランジスタＭＴ１〜ＭＴ８として機能する。選択トランジスタ層Ｌ３は、選択トランジスタＳＧＤ、ＳＧＳとして機能する。配線層Ｌ４は、ソース線ＳＬ及びビット線ＢＬとして機能する。
バックゲートトランジスタ層Ｌ１は、バックゲート導電層４０を有する。バックゲート導電層４０は、半導体基板ＳＢと平行なｘ方向及びｙ方向に２次元的に広がるように形成されている。バックゲート導電層４０は、ブロックＢ１〜Ｂｎ毎に分断されている。バックゲート導電層４０は、例えば多結晶シリコンによって形成される。バックゲート導電層は、バックゲート線ＢＧとして機能する。
またバックゲート導電層４０は、図１１に示すようにバックゲートホールを有する。バックゲートホールは、バックゲート導電層４０を掘り込むように形成されている。バックゲートホールは、上面からみてカラム方向を長手方向とする略矩形状に形成されている。
【００７２】
メモリセルトランジスタ層Ｌ２は、バックゲート導電層Ｌ１の上層に形成されている。メモリセルトランジスタ層Ｌ２は、ワード線導電層（ワード線ともいう）ＷＬ１〜ＷＬ８を有する。ワード線導電層ＷＬ１〜ＷＬ８は、層間絶縁層（図示せず）を挟んで積層されている。ワード線導電層ＷＬ１〜ＷＬ８は、カラム方向に所定ピッチをもってｙ方向に延びるストライプ状に形成されている。ワード線導電層ＷＬ１〜ＷＬ８は、例えば多結晶シリコンで形成される。
また、メモリセルトランジスタ層Ｌ２は、図１１に示すように、メモリホールＫＡ１，ＫＡ２を有する。メモリホールＫＡ１，ＫＡ２は、ワード線導電層ＷＬ１〜ＷＬ８を貫通するように形成されている。メモリホールＫＡ１，ＫＡ２は、バックゲートホールのカラム方向の端部近傍に整合するように形成されている。
【００７３】
更にバックゲートトランジスタ層Ｌ１及びメモリセルトランジスタ層Ｌ２は、図１２に示すように、ブロック絶縁層４４、電荷蓄積層４３、トンネル絶縁層４２、及び半導体層４１を有する。半導体層４１は、ＮＡＮＤストリングのボディ（各トランジスタのバックゲート）として機能する。
ブロック絶縁層４４は、図１２に示すように、バックゲートホール及びメモリホールＫＡ１，ＫＡ２に面する側壁に、所定の厚みをもって形成されている。電荷蓄積層４３は、ブロック絶縁層４４の側面に、所定の厚みをもって形成されている。トンネル絶縁層４２は、電荷蓄積層４３の側面に、所定の厚みをもって形成されている。半導体層４１は、トンネル絶縁層４２の側面に接するように形成されている。半導体層４１は、バックゲートホール及びメモリホールＫＡ１，ＫＡ２を埋めるように形成されている。
【００７４】
半導体層４１は、ｙ方向からみてＵ字状に形成されている。すなわち半導体層４１は、半導体基板ＳＢの表面に対して垂直方向に延びる一対の柱状部ＭＰ１，ＭＰ２と、一対の柱状部ＭＰ１，ＭＰ２の下端を連結する連結部を有する。
ブロック絶縁層４４及びトンネル絶縁層４２は、例えば酸化シリコン（ＳｉＯ２）で形成される。電荷蓄積層４３は、例えば窒化シリコン（ＳｉＮ）で形成される。半導体層４１は、多結晶シリコンで形成される。これらのブロック絶縁層４４、電荷蓄積層４３、トンネル絶縁層４２、及び半導体層４１は、メモリトランジスタＭＴとして機能するＭＯＮＯＳ型トランジスタを形成する。
【００７５】
上記バックゲートトランジスタ層Ｌ１の構成を換言すると、トンネル絶縁層４２は、連結部を取り囲むように形成されている。バックゲート導電層４０は、連結部を取り囲むように形成されている。
また上記メモリトランジスタ層Ｌ２の構成を換言すると、トンネル絶縁層４２は、柱状部ＭＰ１，ＭＰ２を取り囲むように形成されている。電荷蓄積層４３は、トンネル絶縁層４２を取り囲むように形成されている。ブロック絶縁層４４は、電荷蓄積層４３を取り囲むように形成されている。ワード線導電層ＷＬ１〜ＷＬ８は、ブロック絶縁層４４を取り囲むように形成されている。
【００７６】
選択トランジスタ層Ｌ３は、図１１に示すように、導電層（セレクトゲート線ともいう）ＳＧＳ及びＳＧＤを有する。導電層ＳＧＳ及びＳＧＤは、カラム方向に所定のピッチを有するように、ｙ方向に延びるストライプ状に形成されている。一対の導電層ＳＧＳと、一対の導電層ＳＧＤは、ｘ方向に交互に配置されている。導電層ＳＧＳは一方の柱状部ＭＰ２の上層に形成され、導電層ＳＧＤは他方の柱状部ＭＰ１の上層に形成されている。導電層ＳＧＳ及びＳＧＤは、多結晶シリコンで形成される。
選択トランジスタ層Ｌ３は、図１２に示すように、ホールＳＰ１及びＳＰ２を有する。ホールＳＰ１及びＳＰ２は、それぞれ導電層ＳＧＳ及びＳＧＤを貫通する。またホールＳＰ１及びＳＰ２は、それぞれメモリホールＭＰ１，ＭＰ２と整合する。
選択トランジスタ層Ｌ３は、ゲート絶縁層、並びに半導体層を備えている。ゲート絶縁層は、それぞれホールに面する側壁に形成されている。半導体層は、それぞれゲート絶縁層に接するように、半導体基板ＳＢの表面に対して垂直方向に延びる柱状に形成されている。
ゲート絶縁層は、例えば酸化シリコン（ＳｉＯ２）で形成される。半導体層は、例えば多結晶シリコンで形成される。
【００７７】
配線層Ｌ４は、図１１に示すように、選択トランジスタ層Ｌ３の上層に形成されている。配線層Ｌ４は、ソース線層（ソース線ともいう）ＳＣＥ、プラグ層ＰＧ、及びビット線層（ビット線ともいう）ＢＬ１〜ＢＬ６を有する。
ソース線層ＳＣＥは、ロウ方向に延びる板状に形成されている。ソース線層ＳＣＥは、カラム方向に隣接する一対の半導体層ＳＧＳの上面に接するように形成されている。プラグ層ＰＧは、半導体層ＳＧＤの上面に接し、半導体基板ＳＢの表面に対して垂直方向に延びるように形成されている。ビット線層ＢＬ１〜ＢＬ６は、ｙ方向に所定ピッチをもって、ｘ方向に延びるストライプ状に形成されている。ビット線層ＢＬ１〜ＢＬは、プラグ層ＰＧの上面に接するように形成されている。ソース線層ＳＣＥ、プラグ層ＰＧ、及びビット線層ＢＬ１〜ＢＬ６は、例えばタングステン（Ｗ）等の金属で形成される。
【００７８】
次に、本実施形態の不揮発性半導体記憶装置について、書き込み動作、読み出し動作、消去動作について図９を用いて説明する。
（１）書き込み動作
説明の便宜上、例えば図９におけるワード線ＷＬ１に接続された複数のセルトランジスタＭＴにデータをページ単位に書き込み動作を行う。ストリングユニットＵ１のうち、ＮＡＮＤストリングＮＳ１〜ＮＳｑの複数のセルトランジスタＭＴ１にデータを書き込む例を用いて説明する。具体的には、ＮＡＮＤストリングＮＳ１のセルトランジスタＭＴ１に“０”データを書き込み、ＮＡＮＤストリングＮＳ２〜ＮＳｍのセルトランジスタＭＴ１に“１”データを書き込む場合（２値データの書き込む場合）を例として説明する。
【００７９】
書き込み動作では、制御回路は、選択ワード線ＷＬ１にプログラム電圧Ｖｐｐを印加し、非選択ワード線ＷＬ２〜ＷＬｈ＋１に例えば中間電圧Ｖｐａｓｓ（例えば、１０Ｖ）を印加する。
また、ビット線ＢＬ１には、書き込み電圧（例えば０Ｖ）が印加され、残りのビット線ＢＬ２〜ＢＬｍには、書き込み禁止電圧（例えば２．５Ｖ）が印加される。ストリングユニットＵ１のセレクトゲート線ＳＧＤ，ＳＧＤに所望の電位を印加して、セレクトトランジスタＤＴをオン状態にし、他のストリングユニットＵ２〜Ｕｑのセレクトゲート線ＳＧＤ，ＳＧＳに低電圧（例えば、０Ｖ）を印加して、セレクトトランジスタＤＴをオフ状態にする。
その結果、ＮＡＮＤストリングＮＳ１のセルトランジスタＭＴ１に“０”データを書き込み、ＮＡＮＤストリングＮＳ２〜ＮＳｍのセルトランジスタＭＴ１に“１”データを書き込むことができる。
【００８０】
（２）読み出し動作
（１）と同様に、説明の便宜上、ストリングユニットＵ１の複数のセルトランジスタＭＴ１からデータを読み出す場合を例として説明する。
読み出し動作では、制御回路は、上記（１）と同様に、セレクトトランジスタＤＴを制御することでストリングユニットＵ１を選択する。
ビット線ＢＬ１〜ＢＬｍにプリチャージ電圧が印加され、ソース線ＳＣＥに０Ｖが印加される。
【００８１】
読み出し対象のセルトランジスタＭＴ１に接続されたワード線ＷＬ１に、読み出し電圧（例えば、０Ｖ）を印加し、残りのワード線ＷＬ２〜ＷＬｈ＋１に例えば中間電圧ＶＲＥＡＤ（例えば、１０Ｖ）を印加する。
“０”データを保持するセルトランジスタＭＴの場合、ビット線ＢＬの電位が保持され、“１”データを保持するセルトランジスタＭＴの場合、ビット線ＢＬの電位が放電される。ビット線ＢＬの電位を判定することでセルトランジスタＭＴ１のしきい値が読み出しレベルに達しているかどうかが判定され、選択されたページのデータが読み出される。
【００８２】
（３）消去動作
消去動作では、ブロックＢｎの全てのセルトランジスタのデータが一括消去されるものを例として説明する。このとき、ワード線ＷＬ１〜ＷＬ２ｈに０Ｖが印加される。また、ビット線ＢＬ１〜ＢＬｍおよびソース線ＳＣＥは消去電圧Ｖｅ（例えば、２０Ｖ）に設定される。また、ブロックＢｎのセレクトゲート線ＳＧＤ１〜ＳＧＤｑ、ＳＧＳ１〜ＳＧＳｎは消去電圧Ｖｅよりも低い電圧（例えば、１２Ｖ）に設定される。
【００８３】
この時、セレクトトランジスタＤＴ１〜ＤＴｑ、ＳＴ１〜ＳＴｑのドレイン近傍の空乏層が曲げられ強電界がかかる。このため、この空乏層にバンド間トンネル電流が流れ、ホールと電子のペアが発生する。この結果、セレクトトランジスタＤＴ１〜ＤＴｑ、ＳＴ１〜ＳＴｑのゲート端付近にＧＩＤＬ（Ｇａｔｅ  Ｉｎｄｕｃｅｄ  Ｄｒａｉｎ  Ｌｅａｋ）電流が流れ、その時発生したホールがブロックＢｎのＮＡＮＤストリングＮＳ１〜ＮＳｍの柱状半導体４１に流れる。このため、ブロックＢｎのセルトランジスタＭＴ１〜ＭＴ２ｈのチャネル領域に消去電圧Ｖｅに近い電位が伝達される。この結果、ブロックＢｎのセルトランジスタＭＴ１〜ＭＴ２ｈのチャージトラップ層４３に蓄積されていた電子が柱状半導体４１側に引き抜かれ、ブロックＢｎのメモリセルの消去動作が実行される。
【００８４】
次に、本実施形態の不良カラムの救済動作について、説明する。
例えば、図５に示すように、ダイソートテスト時に、全てエリアＥ１〜Ｅｐについてカラム置換情報Ｄ１〜ＤｐがＲＯＭヒューズ３０に登録される。
パワーオン時に、シーケンス制御回路１６は、ＲＯＭヒューズ３０からデータキャッシュ１４を介してカラム置換レジスタ２８に初期のカラム置換情報（例えばＤ１）を読み出し、セットする。
メモリセルアレイ１１にアクセス（読み出し動作、書き込み動作等）する場合、選択エリア判定部１８ａは、ブロックアドレスが指定されたときに、そのブロックアドレスがどのエリアＥ１〜Ｅｐに属するかを判断する。そして、選択エリア判定部１８ａがそのブロックアドレスがエリアＥｘに属すると場合と判断したとき、シーケンス制御回路１６は、ＲＯＭヒューズ３０からエリアＥｘのカラム置換情報Ｄｘを読み出し、カラム置換レジスタ２８にカラム置換情報Ｄｘをセットし、このカラム置換情報Ｄｘを参照することにより、不良カラムとして登録されたカラムをリダンダンシィカラムに置き換えることができる。
すなわち、シーケンス制御回路１６は、例えば読み出し動作のときページ単位でメモリセルアレイ１１にアクセスするため、ページの各カラムアドレスに対して、カラム置換情報Ｄｘを参照することで、置き換えをする。
不良カラムとして登録されたカラムアドレスにアクセスした場合には、シーケンス制御回路１６は、カラム置換情報Ｄｘに基づいて、置換先のリダンダンシィカラムにアクセスする。
【００８５】
次に入力されたブロックアドレスによってエリアＥｘとは異なる例えばエリアＥｘ＋１が指定された場合にも、同様に、シーケンス制御回路１６は、カラム置換情報Ｅｘ＋１をＲＯＭヒューズ３０からデータキャッシュ１４を介して読み出して、このカラム置換情報Ｅｘ＋１を参照して、メモリセルアレイ１１へのアクセスを制御する。
【００８６】
図１３（ａ）は、図８のメモリセルアレイのエリア切替前のカラム置換方法の一例を示すブロック図、図１３（ｂ）は、図８のメモリセルアレイのエリア切替後のカラム置換方法の一例を示すブロック図である。説明の便宜上、エリアＥｘ、Ｅｘ＋１が選択された際のカラム置換方法を例として説明する。なお、図１３（ａ）および図１３（ｂ）では、３個のストリングユニットＵ１〜Ｕ３が各ブロックＢ１〜Ｂｎに含まれ、２個のブロックが各エリアＥ１〜Ｅｑに含まれている場合を例にとった。
図１３（ａ）において、カラムＣＡ、ＣＣ、ＣＤにはエリアＥｘに不良カラムがあり、カラムＣＢ、ＣＤにはエリアＥｘ＋１に不良カラムがあるものとする。この場合、カラム置換情報Ｄｘには、カラムＣＡ，ＣＣ，ＣＤが不良カラムであり、カラムＣＡがリダンダンシィカラムＤＡに置換され、エリアＥｘのカラムＣＣがリダンダンシィカラムＤＢに置換され、エリアＥｘのカラムＣＤがリダンダンシィカラムＤＣに置換されるという情報が登録される。また、カラム置換情報Ｄｘ＋１には、カラムＣＢ、ＣＤが不良カラムであり、エリアＥｘ＋１のカラムＣＢがリダンダンシィカラムＤＡに置換され、エリアＥｘ＋１のカラムＣＤがリダンダンシィカラムＤＣに置換されるという情報が登録される。
【００８７】
この時、エリアＥｘのカラムＣＡの不良がブロックＢｙ＋１の１つのＮＡＮＤストリングＮＳＡのオープン不良にて構成され、エリアＥｘのブロックＢｙのカラムＣＡに不良がない場合においても、エリアＥｘの２つのブロックＢｙ、Ｂｙ＋１のカラムＣＡが一括してリダンダンシィカラムＤＡに置換される。
【００８８】
また、エリアＥｘのカラムＣＣの不良がブロックＢｙのＮＡＮＤストリングＮＳＣのオープン不良にて構成され、エリアＥｘのブロックＢｙ＋１のカラムＣＣに不良がない場合においても、エリアＥｘの２つのブロックＢｙ、Ｂｙ＋１のカラムＣＣが一括してリダンダンシィカラムＤＣに置換される。
【００８９】
また、エリアＥｘ＋１のカラムＣＢの不良がブロックＢｙ＋２のＮＡＮＤストリングＮＳＢのオープン不良にて構成され、エリアＥｘ＋１のブロックＢｙ＋３のカラムＣＢに不良がない場合においても、エリアＥｘ＋１の２つのブロックＢｙ＋２、Ｂｙ＋３のカラムＣＢが一括してリダンダンシィカラムＤＡに置換される。
【００９０】
そして、入力されたブロックアドレスがエリアＥｘに属する場合、選択エリアＥｘのカラム置換情報ＤｘがＲＯＭヒューズ３０から読み出され、カラム置換レジスタ２８にセットされる。そして、図１３（ａ）に示すように、選択エリアＥｘのカラムＣＡがリダンダンシィカラムＤＡに置換され、選択エリアＥｘのカラムＣＣがリダンダンシィカラムＤＢに置換され、選択エリアＥｘのカラムＣＤがリダンダンシィカラムＤＣに置換される。
【００９１】
一方、ブロックアドレスがエリアＥｘ＋１に属する場合、選択エリアＥｘ＋１のカラム置換情報Ｄｘ＋１がＲＯＭヒューズ３０から読み出され、カラム置換レジスタ２８にセットされる。そして、図１３（ｂ）に示すように、選択エリアＥｘ＋１のカラムＣＢがリダンダンシィカラムＤＡに置換され、選択エリアＥｘ＋１のカラムＣＤがリダンダンシィカラムＤＣに置換される。
図１１のメモリセルＭＣの積層構造では、メモリホール（貫通孔ＫＡ１、ＫＡ２）の抜け性を確保するのが難しく、メモリホールの不良が発生すると、該当ストリングに接続されるメモリセルが全て不良とする必要がある。
しかしながら、本実施形態によれば、このようなローカル不良カラムカラムをエリアＥ１〜Ｅｐごとに救済することにより、全てのローカル不良カラムカラムをバッドブロック化する必要がなくなり、メモリ容量を有効に利用することが可能となる。
また、本実施形態では、エリア切替を行うことにより、エリアＥｘのカラムＣＡのローカル不良カラムと、エリアＥｘ＋１のカラムＣＢのローカル不良カラムに対して同一のリダンダンシィカラムＤＡを用いることができる。したがって、カラムＣＡ、ＣＢごとに別個にリダンダンシィカラムを割り当てる必要がなくなり、カラムリダンダンシィのエリアごとに有効に活用することができる。その結果、救済効率を上げることができる。
【００９２】
なお、各エリアＥ１〜Ｅｐに含まれるブロックＢ１〜Ｂｎの個数が少なくなると、各エリアＥ１〜Ｅｐごとに使用されるリダンダンシィカラムの個数が少なくなると、各エリアＥ１〜Ｅｐにおいて、１ブロックあたり利用できるカラムリダンダンシィ数が増加するため、救済効率を上げることができる。
ただし、各エリアＥ１〜Ｅｐに含まれるブロックＢ１〜Ｂｎの個数が少なくなると、エリアＥ１〜Ｅｐの個数が増大するため、エリア切替の頻度が増大し、パフォーマンスが低下する。このため、各エリアＥ１〜Ｅｐに含まれるブロックＢ１〜Ｂｎの個数は、救済効率とパフォーマンスとが両立するように設定することが好ましい。
【００９３】
例えば、リダンダンシィカラムの個数に余裕がある場合には、その余裕分が使い切れるように各エリアＥ１〜Ｅｐに含まれるブロックＢ１〜Ｂｎの個数を増大させるようにしてもよい。あるいは、各エリアＥ１〜Ｅｐに含まれる不良カラムの個数が多く、各エリアＥ１〜Ｅｐの全ての不良カラムを置き換えるだけのリダンダンシィカラムがない場合、そのリダンダンシィカラムの不足分に応じて各エリアＥ１〜Ｅｐに含まれるブロックＢ１〜Ｂｎの個数を減少させるようにしてもよい。例えば、各エリアＥ１〜Ｅｐが１個のブロックＢによって構成される場合、各エリアＥ１〜Ｅｐごとにカラムリダンダンシィの個数分のカラム不良を救済することが可能になる。
【００９４】
また、ある１つのエリアに異なるカラムのカラム不良が集中すると、そのエリアに切り替えられた時に、そのカラム不良を救済するリダンダンシィカラムが不足する場合がある。このため、異なるカラムのカラム不良が各エリアに均等に分配されるように、各エリアに属するブロックＢ１〜Ｂｎを設定し、ある１つのエリアに異なるカラムのカラム不良が集中しないようにしてもよい。
【００９５】
また、ある１つのエリアに異なるカラムのカラム不良が集中し、そのカラム不良を救済するリダンダンシィカラムが不足した場合、そのエリア内でカラム不良のある一部のブロックＢ１〜Ｂｎを、カラムリダンダンシィの不足がなくなるまでバッドグロック化してから、そのエリアの不良カラムをリダンダンシィカラムに置換するようにしてもよい。
【００９６】
図１４は、図７の書き込みカラム検知回路１５の概略構成を示す回路図である。
図１４に示すように、書き込みカラム検知回路１５は、複数のカラム書き込み検知部３１と、複数の書き込み検知制御部３２を有する。カラム書き込み検地部３１と、書き込み検地制御部３２は、それぞれ各カラムに設けられる。すなわち、例えば図１３の場合、  カラム書き込み検地部３１と書き込み検地制御部３２それぞれは、カラムｃｏｌ１〜ｃｏｌａ（ａは正の整数）、リダンダンシィカラムＣＲＤ１〜ＣＲＤｂ（ｂは正の整数）に用いるために、（ａ＋ｂ）個有する。
カラム書き込み検知部３１それぞれは、対応するカラム（例えば１バイト）ごとにメモリセルトランジスタＭＴのカラムごとの書き込み完了を検知する機能を有する。
書き込み検知制御部３２は、グローバルアイソレーションラッチ（詳細は後述）ＩＳＯＬＡＴ＿Ｇ及びローカルアイソレーションラッチ（詳細は後述）ＩＳＯＬＡＴ＿Ｌに登録された不良カラムに対して、ベリファイ動作の結果にかかわらず、書き込み完了したものとしてカラム書き込み検知部３１を制御する。
【００９７】
カラム書き込み検知部３１には、トランジスタＴＲ１、ＴＲ２、ＴＡ１〜ＴＡ８、ＴＢ１〜ＴＢ８、ＴＣ１、ＴＣ２およびキャパシタＣ１、Ｃ２が設けられている。書き込み検知制御部３２には、トランジスタＴＬ１、ＴＬ３、ＴＬ４、ＴＧ１、ＴＧ３、ＴＧ４、インバータＮＧ１〜ＮＧ３、ＮＬ１〜ＮＬ４、ＡＮＤ回路ＡＧ１、ＡＧ２、ＡＬ１、ＡＬ２が設けられている。
【００９８】
なお、インバータＮＬ１、ＮＬ２にてローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌを構成することができる。インバータＮＧ１、ＮＧ２にてグローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇを構成することができる。
【００９９】
なお、トランジスタＴＲ１、ＴＲ２はＰチャンネル電界効果トランジスタ、トランジスタＴＡ１〜ＴＡ８、ＴＢ１〜ＴＢ８、ＴＣ１、ＴＣ２、ＴＬ１、ＴＬ３、ＴＬ４、ＴＧ１、ＴＧ３、ＴＧ４はＮチャンネル電界効果トランジスタを用いることができる。
【０１００】
そして、トランジスタＴＡ１〜ＴＡ８とトランジスタＴＢ１〜ＴＢ８とはそれぞれ直列に接続され、これらの直列回路はキャパシタＣ１に並列に接続されている。また、この並列回路はトランジスタＴＲ２に直列に接続され、この接続点はトランジスタＴＲ１のゲートに接続されている。
【０１０１】
トランジスタＴＡ１〜ＴＡ８のゲートには、データラッチＤＬ２［８：１］の出力を反転させたデータラッチ反転信号／ＤＬ２［８：１］がそれぞれ入力され、トランジスタＴＢ１〜ＴＢ８のゲートには、ベリファイ検知信号Ｄｅｔが入力される。なお、データラッチＤＬ２［８：１］はベリファイ動作の際に、ベリファイ結果を格納するレジスタとして使用することができる。データラッチＤＬ２［８：１］はベリファイ結果がパスである場合には、“Ｈ”レベルを出力し、フェイルである場合には“Ｌ”レベルを出力する。
【０１０２】
トランジスタＴＣ１、ＴＣ２は互いに直列に接続され、トランジスタＴＣ１のゲートは、トランジスタＴＲ１のドレインおよびキャパシタＣ２に接続されている。トランジスタＴＣ２のゲートには、カラムｃｏｌ１〜ｃｏｌａおよびリダンダンシィカラムＣＲＤ１〜ＣＲＤｂごとにベリファイ判定信号ＣＨＫ［１：ａ］、ＣＨＫ［ＣＲＤ１：ＣＲＤｂ］が入力される。ベリファイ判定信号ＣＨＫによって、書き込みカラム検知回路１５はバイトごとに制御できる
【０１０３】
インバータＮＬ１、ＮＬ２は、互いに一方の入力が他方の入力に接続されるとともに、インバータＮＬ２の出力はトランジスタＴＬ３を介してトランジスタＴＣ１のゲートに接続され、インバータＮＬ２の出力はトランジスタＴＬ４を介して接地されている。
【０１０４】
トランジスタＴＬ３のゲートには、ＡＮＤ回路ＡＬ２の出力が接続されている。ＡＮＤ回路ＡＬ２は３入力で構成されている。そして、ＡＮＤ回路ＡＬ２には、ローカルアイソレーションセット信号ＩＳＯＳＥＴ＿Ｌ、ローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌの値およびグローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇの値が入力される。
【０１０５】
インバータＮＧ１、ＮＧ２は、互いに一方の入力が他方の入力に接続されるとともに、インバータＮＧ２の出力はトランジスタＴＧ３を介してトランジスタＴＣ１のゲートに接続され、インバータＮＧ２の出力はトランジスタＴＧ４を介して接地されている。
【０１０６】
トランジスタＴＧ３のゲートには、ＡＮＤ回路ＡＧ２の出力が接続されている。ＡＮＤ回路ＡＧ２は２入力で構成されている。そして、ＡＮＤ回路ＡＧ２には、グローバルアイソレーションセット信号ＩＳＯＳＥＴ＿ＧおよびグローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇの値が入力される。
【０１０７】
トランジスタＴＬ１のドレインはトランジスタＴＣ２のソースに接続されている。トランジスタＴＬ１のゲートには、ＡＮＤ回路ＡＬ１の出力が接続されている。ＡＮＤ回路ＡＬ１は２入力で構成されている。そして、ＡＮＤ回路ＡＬ１には、ローカルアイソレート判定信号ＩＳＯＣＨＫ＿ＬおよびローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌの値が入力される。
【０１０８】
トランジスタＴＧ１のドレインはトランジスタＴＣ２のソースに接続されている。トランジスタＴＧ１のゲートには、ＡＮＤ回路ＡＧ１の出力が接続されている。ＡＮＤ回路ＡＧ１は２入力で構成されている。そして、ＡＮＤ回路ＡＧ１には、グローバルアイソレート判定信号ＩＳＯＣＨＫ＿ＧおよびグローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇの値が入力される。
【０１０９】
次に、本実施形態の不揮発性半導体記憶装置について、カラム置換レジスタにカラム置換情報を設定する方法について、図１４の回路図と図１５のフローチャート図、図１６（ａ）〜図１６（ｄ）を用いて説明する。
説明の便宜上、書き込み絡む検知回路１５の初期状態は、下記のとおりである。
ローカルアイソレーションセット信号ＩＳＯＳＥＴ＿Ｌ、グローバルアイソレーションセット信号ＩＳＯＳＥＴ＿Ｇ、ローカルアイソレーションリセット信号ＩＳＯＲＳＥＴ＿Ｌ、グローバルアイソレーションリセット信号ＩＳＯＲＳＥＴ＿Ｇ、グローバルアイソレート判定信号ＩＳＯＣＨＫ＿Ｇ、ローカルアイソレート判定信号ＩＳＯＣＨＫ＿Ｌ、ベリファイ判定信号ＣＨＫ［（ａ＋ｂ）：１］は、“Ｌ”レベルであるとする。
（Ｓ３１）グローバル不良テストを行う。
例えば、ビット線ＢＬオープン、ビット線ショート、センスアンプ不良等のグローバル不良カラムを検出するテストを行う。（Ｓ３２）不良カラムに対してグローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇをセットする。
【０１１０】
以下、具体的に説明する。
カラム書き込み検知部３１のノードＣＯＭを充電し、シーケンス制御回路１６がベリファイ検知信号Ｄｅｔを“Ｈ”レベルにしたのち、カラム書き込み検知部３１のトランジスタＴＡ１〜ＴＡ８のゲートは、対応するカラムのグローバル不良テストの結果を受け取る。すなわち、全てのカラムのカラム書き込み検知部３１にそれぞれのグローバル不良テストの結果が入力される。例えば、ビット線ＢＬ１がオープン不良であるとき、このビット線ＢＬ１に対応するトランジスタＴＡ１のゲートに“Ｈ”レベルが入力され、他のトランジスタＴＡ２〜ＴＡ８のゲートには“Ｌ”レベルが入力される。
【０１１１】
その結果、カラムのうち少なくとも１つのビット線に例えばオープン不良があると、対応するトランジスタＴＡがオンし、ノードＣＯＭの電位が放電される。
ノードＣＯＭが放電されると、トランジスタＴＲ１がオンし、ノードＮＣＯＭが充電される。
ここで、グローバルアイソレーションリセット信号ＩＳＯＲＳＥＴ＿Ｇを“Ｈ”レベルにし、グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇを“Ｌ”レベルにする。そののち、グローバルアイソレーションセット信号ＩＳＯＳＥＴ＿Ｇを“Ｈ”とすることで、ノードＮＣＯＭの“Ｈ”レベルをグローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇに転送し、セットする。すなわち、カラムのうち少なくとも１つのビット線に例えばオープン不良があるとき、グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇは“Ｈ”レベルを保持し、不良がないとき、グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇはリセット後も“Ｌ”レベルを保持したままである。
【０１１２】
カラム書き込み検知部３１と書き込み検知制御部３２は、カラムごとに同一の動作を行うことで、Ｓ３２ののちに、全カラムのグローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇにグローバル不良テストの結果が登録される。
なお、グローバル不良テストが複数の種類のテスト（第１テスト、第２テスト、…）がある場合について、簡単に説明する。まず、第１テストの結果をグローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇに転送する。カラムのいずれかのビット線に不良がある場合には、グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇは“Ｈ”を保持する。このとき、トランジスタＴＧ３はオフする。一方で、カラムのいずれかのビット線に不良がない場合には、グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇは“Ｌ”を保持する。このとき、トランジスタＴＧ３はオンする。したがって、第１テストでカラムのいずれかのビット線に不良がない場合にのみ、第２テストの結果を転送する。
すなわち、複数のテストがある場合には、複数のテストの結果を重畳的に保持し、グローバル不良テストの終了後、いずれのテストにおいてもカラムに不良がない場合のみ、グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇは“Ｌ”を保持し、いずれかのテストでカラムに不良がある場合には、グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇは“Ｈ”に保持される。
（Ｓ３３）カラムリダンダンシィエリアＲＢのグローバル不良カラム情報をカラム置換レジスタにセットする。
カラムリダンダンシィエリアＲＢに対応するカラムＣＲＤ１〜ＣＲＤｂを順次選択して、カラム置換レジスタにセットする。説明の便宜上、カラムＣＲＤ１、ＣＲＤ２を順次選択してカラム置換レジスタにグローバル不良カラム情報をセットする方法を例に説明する。カラムＣＲＤ３〜ＣＲＤｂまでは、カラムＣＲＤ１を選択してグローバル不良カラム情報をセットする方法と同様の方法で行う。
ＬＳＥＮを充電したのち、Ｓ３２と同様の方法（いずれかのトランジスタＴＡをオンすること）でノードＮＣＯＭを充電する。なお、全てのトランジスタＴＡをオンしてもよい。
【０１１３】
コントローラは、カラムＣＲＤ１を選択しグローバル不良カラム情報をセットするコマンドをＮＡＮＤフラッシュ１に発行する。アドレスバッファ２４を介してカラムＣＲＤ１が選択され、対応するカラム書き込み検知部３１のトランジスタＴＣ２がオンする。シーケンス制御回路１８は、全カラムのグローバルアイソレート判定信号ＩＳＯＣＨＫ＿Ｇを“Ｈ”レベルになるよう制御する。
その結果、カラムＣＲＤ１がグローバル不良カラムであるとき、（グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇが“Ｈ”を保持するとき）、ノードＬＳＥＮの電位は放電され、シーケンス制御回路１８に“Ｌ”レベルのＲＳＴ信号が入力される。カラムＣＲＤ１がグローバル不良カラムであるとき、シーケンス制御回路１８は、カラム置換レジスタ２８にアクセスし、カラムＣＲＤ１に対応するＦｌａｇ０に“１”データを登録する。
【０１１４】
次に、シーケンス制御回路１８は、カラム選択をインクリメントして、カラムＣＲＤ２を選択する信号を書き込みカラム検知回路１５に出力する。このとき、ノードＬＳＥＮは再度充電される。カラムがインクリメントされるたびに充電される。
この信号により、カラムＣＲＤ１に対応するトランジスタＴＣ２がオンする。その結果、カラムＣＲＤ２がグローバル不良カラムであるとき、ノードＬＳＥＮの電位は放電され、シーケンス制御回路１８に“Ｌ”レベルのＲＳＴ信号が入力される。カラムＣＲＤ２がグローバル不良カラムであるとき、シーケンス制御回路１８は、カラム置換レジスタ２８にアクセスし、カラムＣＲＤ２に対応するＦｌａｇ０に“１”データを登録する。
この一連の動作を繰り返すことで、カラムリダンダンシィエリアＲＢのグローバル不良カラム情報をカラム置換レジスタにセットする。
（Ｓ３４）ノーマルエリアＲＡのグローバル不良カラム情報をカラム置換レジスタにセットする。
【０１１５】
このステップは、Ｓ３３と同様の動作であり、詳細な説明は省略する。コントローラ１２は、カラムＣｏｌ１を選択しグローバル不良カラム情報をセットするコマンドをＮＡＮＤフラッシュ１に発行する。アドレスバッファ２４を介してカラムＣｏｌ１が選択され、対応するカラム書き込み検知部３１のトランジスタＴＣ２がオンする。シーケンス制御回路１８は、全カラムのグローバルアイソレート判定信号ＩＳＯＣＨＫ＿Ｇを“Ｈ”レベルになるよう制御する。その結果、カラムＣｏｌ１がグローバル不良カラムであるとき、ノードＬＳＥＮの電位は放電され、シーケンス制御回路１８に“Ｌ”レベルのＲＳＴ信号が入力される。カラムＣｏｌ１がグローバル不良カラムであるとき、シーケンス制御回路１８は、カラム置換レジスタ２８にアクセスし、Ｆｌａｇ０が“０”データを有し、且つＦｌａｇ１も“０”データを有するリダンダンシィカラムを抽出する。シーケンス制御回路１８は、Ｆｌａｇ１が“０”データを有するリダンダンシィカラムに対して、Ｆｌａｇ１を“１”データに上書きし、カラムＣｏｌ１の置換元カラムアドレスを登録する。
【０１１６】
次に、シーケンス制御回路１８は、カラム選択をインクリメントして、カラムＣｏｌ１〜Ｃｏｌａを順次選択する信号を書き込みカラム検知回路１５に出力する。シーケンス制御回路１８はカラムＣｏｌ１〜Ｃｏｌａごとにグローバル不良カラムであるか判断する。グローバル不良カラムである場合（“Ｌ”レベルのＲＳＴ信号が入力される場合）には、
シーケンス制御回路１８は、カラム置換レジスタ２８にアクセスし、Ｆｌａｇ０が“０”データを有し、且つＦｌａｇ１も“０”データを有するリダンダンシィカラムを抽出する。シーケンス制御回路１８は、Ｆｌａｇ０が“０”データを有し、且つＦｌａｇ１も“０”データを有するリダンダンシィカラムに対して、Ｆｌａｇ１を“１”データに上書きし、グローバル不良カラムであるカラムＣｏｌ１〜Ｃｏｌａの置換元カラムアドレスを登録する。
なお、シーケンス制御回路１８は、置換を繰り返し、Ｆｌａｇ０が“０”データを有し、且つＦｌａｇ１も“０”データを有するリダンダンシィカラムが存在しなくなった場合には、図示せぬステータスレジスタにフェイル情報を保持する。ここで、ステータスレジスタは、チップ不良であるか否かを示す指標である。
（Ｓ３１）〜（Ｓ３４）の一連の動作により、例えばリダンダンシィカラムＣＲＤ２がグローバル不良カラムである場合、リダンダンシィカラムＣＲＤ２に対応するフラグＦｌａｇ１が‘１’にセットされる。また、カラムＣｏｌ１００がグローバル不良カラムであり、そのカラムＣｏｌ１００がリダンダンシィカラムＣＲＤ１に置き換えられるとすると、リダンダンシィカラムＣＲＤ１に対応するフラグＦｌａｇ０が‘１’にセットされ、さらに、置換元カラムアドレスを保持するアドレスレジスタＡＤに１００が登録される。
（Ｓ３５）そして、シーケンス制御回路１８は、カラム置換レジスタにセットされたグローバル不良カラムの個数がリダンダンシィカラムの個数を超えたか否かを判断する（Ｓ３５）。これは、上記ステータスレジスタを参照することで判断できる。
オーバーフローした場合には、シーケンス制御回路１８は、半導体チップの不良とする
（Ｓ３６）。オーバーフローしなかった場合には、以下のＳ３７〜Ｓ４５までシーケンス制御回路１８は実行する。
バッドブロック化するか否かを判定する指標である判定値をセットする（Ｓ３７）。ここで、この判定値はブロックあたりのローカル不良カラムの許容数を示す。
【０１１７】
例えば、エリアが複数ブロックで構成される場合であって、エリア内のグローバル不良カラムの個数とローカル不良カラムの個数の和がリダンダンシィカラムの数を超えているとき、リダンダンシィカラムで救済することができない。そこで、判定値以上の不良カラムを含むブロックを不良ブロックとすることで、エリア内の不良カラムの個数を減らして、グローバル不良カラムの個数とローカル不良カラムの個数の和がリダンダンシィカラムの数を超えないようにすることで、エリア内の全ブロックを不良ブロックとすることを防ぐことができる。
判定値をセットしたのち、エリアＥ１〜ＥｐのうちあるエリアＥｘを選択し（Ｓ３８）、カラム置換レジスタをリセットする（Ｓ３９）。
選択されたエリアＥｘについて、ローカル不良カラムテストを行う（Ｓ４０）。
（Ｓ４１）ローカル不良を含むカラムに対してローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌをセットする。
【０１１８】
以下、具体的に説明する。
全てのカラム書き込み検知部３１のノードＣＯＭを充電し、シーケンス制御回路１６がベリファイ検知信号Ｄｅｔを“Ｈ”レベルにしたのち、カラム書き込み検知部３１のトランジスタＴＡ１〜ＴＡ８のゲートは、対応するカラムのローカル不良テストの結果を受け取る。すなわち、全てのカラムのカラム書き込み検知部３１にそれぞれのローカル不良テストの結果が入力される。例えば、ビット線ＢＬ１のエリアＥｘに配置されたセルに不良があるとき、このビット線ＢＬ１に対応するトランジスタＴＡ１のゲートに“Ｈ”レベルが入力され、他のトランジスタＴＡ２〜ＴＡ８のゲートには“Ｌ”レベルが入力される。
その結果、カラムのうち少なくとも１つのビット線に例えセルの不良があると、対応するトランジスタＴＡがオンし、ノードＣＯＭの電位が放電される。
ノードＣＯＭが放電されると、トランジスタＴＲ１がオンし、ノードＮＣＯＭが充電される。
ここで、ローカルアイソレーションリセット信号ＩＳＯＲＳＥＴ＿Ｌを“Ｈ”レベルにし、全てのカラムのローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌを“Ｌ”レベルにリセットする。そののち、ローカルアイソレーションセット信号ＩＳＯＳＥＴ＿Ｌを“Ｈ”とすることで、ローカル不良を含むカラムのノードＮＣＯＭの“Ｈ”レベルをローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌに転送し、セットする。すなわち、カラムのうち少なくとも１つのビット線に例えばメモリホールのオープン不良があるとき、ローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌは“Ｈ”レベルにセットされ、不良がないとき、ローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌは“Ｌ”レベルを保持したままである。
カラム書き込み検知部３１と書き込み検知制御部３２は、カラムごとに同一の動作を行うことで、Ｓ４１ののちに、全カラムのローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌにローカル不良テストの結果が登録される。
【０１１９】
なお、Ｓ３２で不良カラムに対してセットされたグローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇはセットされたままなので、グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇがセットされているカラムについて、ＡＮＤ回路ＡＬ２が“Ｌ”レベルを出力しており、トランジスタＴＬ３がオフのままであるので、ローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌがセットされることはない。
（Ｓ４２）カラムリダンダンシィエリアＲＢのグローバル不良カラム情報をカラム置換レジスタにセットする。セットする動作は、Ｓ３３と同様である。
（Ｓ４３）カラムリダンダンシィエリアＲＢのローカル不良カラム情報をカラム置換レジスタにセットする。セットする動作は、Ｓ３３でグローバルアイソレート判定信号ＩＳＯＣＨＫ＿Ｇを“Ｈ”レベルになるよう制御した代わりに、ローカルアイソレート判定信号ＩＳＯＣＨＫ＿Ｌを“Ｈ”レベルになるように制御する。その他の動作はＳ３３と同様である。Ｓ４２とＳ４３の結果、不良カラムであるリダンダンシィカラムに対応するフラグＦｌａｇ０が“１”データにセットされる（図１５（ｂ）参照；リダンダンシィカラムＣＲＤ２にグローバル不良カラム、リダンダンシィカラムＣＲＤ３にローカル不良カラムがある場合）。
（Ｓ４４）ノーマルエリアＲＡのグローバル不良カラム情報をカラム置換レジスタにセットする。セットする動作は、Ｓ３４と同様である。Ｓ４３の結果、カラム不良でないリダンダンシィカラムが、グローバル不良カラムであるノーマルエリアＲＡのカラムと置換される。
置換に使用したリダンダンシィカラムに対応するフラグＦｌａｇ１が“１”データにセットされ、置換元のカラムアドレスが登録される（図１６（ｃ）参照；カラムＣｏｌ１００にグローバル不良カラムがあるとすると、そのカラム１００がリダンダンシィカラムＣＲＤ１に置き換えられる場合）。なお、図１６では、図示の便宜上、未使用（Ｆｌａｇ０，Ｆｌａｇ１いずれも０）のリダンダンシィカラム、使用できないリダンダンシィカラム（Ｆｌａｇ０が“１”）について、置き換え元アドレスが“１ＦＦＦ”と図示した。この置き換え元アドレスとして、例えばリセット値が保持される。
（Ｓ４５）
【０１２０】
そして、シーケンス制御回路１８は、カラム置換レジスタにセットされた不良カラムの個数がリダンダンシィカラムの個数を超えたか否かを判断する（Ｓ４５）。ステータスレジスタを参照してオーバーフローした場合には、シーケンス制御回路１８は、以下のＳ５１〜Ｓ５５までシーケンス制御回路１８は実行する。一方で、オーバーフローしなかった場合には、以下のＳ４６をシーケンス制御回路１８は実行する。
説明の便宜上、以下Ｓ４６について説明する。
ノーマルエリアＲＡのローカル不良カラム情報をカラム置換レジスタにセットする（Ｓ４６）。セットする動作は、Ｓ３４でグローバルアイソレート判定信号ＩＳＯＣＨＫ＿Ｇを“Ｈ”レベルになるよう制御した代わりに、ローカルアイソレート判定信号ＩＳＯＣＨＫ＿Ｌを“Ｈ”レベルになるように制御する。その他の動作はＳ３３と同様である。Ｓ４６の結果、カラム不良でないリダンダンシィカラムであって、Ｓ４４で置き換えられていないリダンダンシィカラムが、ローカル不良カラムであるノーマルエリアＲＡのカラムと置換される。
このＳ４６で置換に使用したリダンダンシィカラムに対応するフラグＦｌａｇ１が“１”データにセットされ、置換元のカラムアドレスが登録される（図１６（ｄ）参照；カラム２００にローカル不良カラムがある場合）。
【０１２１】
そして、カラム置換レジスタにセットされた不良カラムの数がリダンダンシィカラムの個数をオーバーフローしたかどうかを判断する（Ｓ４７）。そして、オーバーフローしてないとき、そのカラム置換レジスタの内容（Ｓ３８で選択したエリアＥｘについて、カラムリダンダンシィＣＲＤのカラム不良の有無、置換による使用の有無、置換する場合には置換元のカラムアドレス）をＲＯＭヒューズに書き込む（Ｓ４８）。
【０１２２】
次に、ローカルアイソレーションリセット信号ＩＳＯＲＳＥＴ＿Ｌを“Ｈ”にして、ローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌをリセットする。また、判定値を初期値にリセットする（Ｓ４９）。
そして、Ｓ３８で選択されたエリアＥｘ以外のエリアが最終エリアでない場合（Ｓ５０）、次のエリアＥｘ＋１を指定してからＳ３８に戻り（Ｓ５６）、全てのエリアＥ１〜Ｅｐのカラム置換レジスタの内容をＲＯＭヒューズに書き込むまで、繰り返す。
一方、Ｓ４５またはＳ４７でオーバーフローした場合、シーケンス制御回路１８は、Ｓ３８で選択されたエリアＥｘが１ブロックで構成されているか否かを判断する（Ｓ５１）。そして、選択されたエリアＥｘが１ブロックで構成される場合、選択されたエリアＥｘのブロックをバッドブロック化する（Ｓ５２）。
【０１２３】
一方、選択されたエリアＥｘが複数のブロックで構成される場合、選択されたエリアＥｘ内に属するブロックのち、判定値を超えるカラム不良を含むブロックをバットブロックとし、残りのブロックでエリアＥｘが構成されるように再構築する。全てのブロックをバッドブロック化すると、バッド化率が上昇し、必要となる余剰ブロック数が増加し面積が増加し、チップコストが増加するためである。
【０１２４】
すなわち、ローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌをリセットした後（Ｓ５３）、ローカル不良テストを、エリアＥｘを構成するブロックごとに行う（Ｓ５４）。そして、ローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌがセットされたカラムの個数（ローカル不良カラムの個数）をカウントし、判定値以上の不良を含むブロックをバッドブロック化する。エリアＥｘの全てのブロックに対して、ローカル不良テストを行い、判定値をデクリメントしてから（Ｓ５５）、Ｓ３９に戻る。
【０１２５】
例えば、エリアが４つのブロックＡ〜Ｄで構成されているとする。グローバルなカラム不良は存在せず、ブロックＡは、カラムアドレス１、３、５にローカル不良カラムがあり、ブロックＢは、カラムアドレス７にローカル不良カラムがあり、ブロックＣ、Ｄはローカル不良カラムが一つもなかったとする。この場合、Ｓ４８の段階では、このエリアは、カラムアドレス１、３、５、７に不良があるとしか判別できない。
【０１２６】
この時、リダンダンシィカラムに３つしか空きがなければ、カラムアドレス１、３、５、７に対応した４個のカラムを救済できない。そこで、ブロックごとにローカル不良テストを行う。そして、ローカル不良カラムのあるブロックＡのみをバッドブロック化し、ローカル不良カラムテストの対象外にしてから、エリア単位のローカル不良カラムテストを再度実施する。
【０１２７】
この時、このエリアでの不良カラムは、カラムアドレス７だけになり、カラムリダンダンシィで救済可能となることからブロックＢ〜Ｄは使用可となる。この場合、判定値を例えば、２に設定すれば、ブロックＡのみをバッドブロック化させることができる。判定値が２に設定されている場合、エリア単位のローカル不良テストを再度実施した結果、再度フェイルした場合、判定値をさらに下げる必要がある。
【０１２８】
例えば、デフォルトの判定値が４であるとすると、ブロックＡ、Ｂ、Ｃ、Ｄはいずれもバッドブロック化の処理は行われない（Ｓ５４）。判定値がデクリメントされ（Ｓ５５）例えば、判定値が１だけ減算されると、判定値が３になる。そして、Ｓ３９に戻って再度テストを行う。この場合、ブロックＡ、Ｂ、Ｃ、Ｄはバッドブロック化されていないので、先ほどと同様にオーバーフローする。しかし、Ｓ５４では、判定値が３になっているため、ブロックＡがバッドブロック化処理される。Ｓ５５で再度デクリメント処理されると、判定値は２になる。そして、Ｓ３９に再度遷移しテストを行っても、今度はオーバーフローしない。
【０１２９】
なお、オーバーフロー処理を何度も行うと、ダイソートの時間が見積もりにくくなるため、判定値をあらかじめ、”１”にしておけば（ローカル不良カラムが一つでもあればバッドブロック化する）、Ｓ５１に遷移するのは、一つのエリアにつき、最大で一回までとなる。すなわち、判定値を大きくして、何回もＳ５１に遷移するようにすると、バッドブロック化するブロックを最小にすることができる一方、ダイソートの時間が見積もりにくくなる。一方、判定値を１にすると、上記の例では、ブロックＡ、Ｂがバッドブロック化し、ある程度健全なブロックに対してもオーバーキルしてしまうが、１つのエリアあたり最大でもＳ５１に入る回数は１回で、ダイソートの最大時間を見積もることができる。
なお、図１６では、リダンダンシィカラムごとにフラグＦｌａｇ０、Ｆｌａｇ１、置き換え元アドレスを保持するが、これに限定されることなく、例えばリダンダンシィカラムごとにフラグＦｌａｇ０、Ｆｌａｇ１、置き換え元アドレスが対応付けられた表と、置き換え先を設定せずに所望のカラムアドレスをカラム不良として登録された表を併用してもよい。置き換え先を設定せずに所望のアドレスをカラム不良として登録された表は、フラグＦｌａｇ０、Ｆｌａｇ１が置き換え元アドレスと対応づけされており、置換先のアドレスとの対応はない。この所望のカラムにはＦＦデータ保持させて、不揮発性半導体装置は、この所望のカラムをベリファイの検知対象外とする。
【０１３０】
図１７は、図７の不揮発性半導体記憶装置のブート処理を示すフローチャートである。
図１７において、図７の電源検知回路２０が電源の立ち上がりを検知する（Ｓ１）すなわち、パワーオンすることを電源検知回路２０が検知する。
シーケンス制御回路１８は、ＲＯＭヒューズ３０からヒューズデータを読み出す（Ｓ２）。そして、読み出したヒューズデータをデータキャッシュ１４に転送する（Ｓ３）。転送されたヒューズデータはデータキャッシュ１４に保持される。
【０１３１】
次に、読み出したヒューズデータをチェックする（Ｓ４）。ヒューズデータのチェックは、例えば、ヒューズデータの一部の領域に数バイトのデータ判別用パターンに基づいて行う。このデータ判別パターンを読み出し、読み出したデータ判別用パターンが所望のパターンであるか否かを例えばシーケンス制御回路１８は判断する。
【０１３２】
そして、読み出したデータ判別パターンが所望のパターンでないとき、別のヒューズデータに切り替えて（Ｓ５）、ステップＳ２に戻る。なお、別のヒューズデータとして、予備のヒューズデータを用いることができる。この予備のヒューズデータは、本来のヒューズデータと格納先を変えて記憶させることができる。
【０１３３】
一方、読み出したデータ判別パターンが所望のパターンであれば、データキャッシュ１４に保持されたヒューズデータのうちの選択エリアＥｘのカラム置換情報Ｄｘをカラム置換レジスタ２８に転送する（Ｓ６）。
【０１３４】
次に、データキャッシュ１４に保持されたヒューズデータのうちのトリミング情報をトリミングレジスタ２９に転送する（Ｓ７）。
【０１３５】
次に、データキャッシュ１４に保持されたヒューズデータのうちのバッドブロック情報をシーケンス制御回路１８に転送する（Ｓ８）。そして、シーケンス制御回路１８は、バッドブロック情報に基づいて、バッドブロックフラグをバッドブロックフラグレジスタ１２ａに設定することにより、バッドブロック情報にて特定されるブロックを使用禁止にする。
【０１３６】
この後、他の処理があれば、他の処理を行なうことで（Ｓ９）、ブートシーケンスは終了する。
【０１３７】
（第３実施形態）
図１８は、図７の不揮発性半導体記憶装置のカラム構成の一例を示す図である。なお、図１８では、ページサイズ（１ページ当たりで、ユーザがアクセスすることのできるノーマルエリアのバイト数）は、２Ｋバイトで、ユーザーアクセスエリアの不良カラムの置き換えを行うリダンダンシィカラムが１６バイトを例にとった。また、２ビット／セルの記憶容量を持つ場合に、それぞれのカラムに対して３つのデータラッチＤＬ０［８：１］、ＤＬ１［８：１］、ＤＬ２［８：１］が設けられる場合を例にとった。
【０１３８】
図１８において、この不揮発性半導体記憶装置では、８本のビット線ＢＬ［８：１］がカラムごとに設けられ、各ビット線ＢＬ［８：１］に対応して８個のセンスアンプＳＡ［８：１］がカラムごとに設けられている。そして、図２のノーマルエリアＲＡには、カラムＣｏｌ１〜Ｃｏｌ２０４８が設けられ、カラムリダンダンシィエリアＲＢには、リダンダンシィカラムＣＲＤ１〜ＣＲＤ１６が設けられる。また、カラムごとに、ローカル不良カラムを書き込みベリファイにおける検知対象外とするローカルアイソレーションラッチＩＳＯＬＡＴ_Ｌおよびグローバル不良カラムを書き込みベリファイにおける検知対象外とするグローバルアイソレーションラッチＩＳＯＬＡＴ_Ｇが設けられている。なお、このカラム構成では、書き込みカラム検知回路１５は、カラムＣｏ１１〜Ｃｏｌ２０４８およびリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６ごとに設けることができる。
【０１３９】
図１９（ａ）は、第３実施形態に係る選択エリアにおけるカラム置換情報の一例を示す図、図１９（ｂ）は、リダンダンシィカラムが不良の時のリダンダンシィカラムの置換例を示す図である。なお、この第３実施形態では、図１５の２つのフラグＦｌａｇ１、Ｆｌａｇ０の代わりに、各リダンダンシィカラムＣＲＤ１〜ＣＲＤ１６の状態を示す４つのフラグＦｌａｇ３〜Ｆｌａｇ０を設けた場合を例にとる。
図１９（ａ）において、図５のカラム置換情報Ｄ１〜Ｄｐとして、各リダンダンシィカラムＣＲＤ１〜ＣＲＤ１６の状態を示す４つのフラグＦｌａｇ３〜Ｆｌａｇ０が設けられる。なお、フラグレジスタＦ０、Ｆ１はローカルカラム置換情報をセットするために用いることができる。フラグレジスタＦ２、Ｆ３はグローバルカラム置換情報をセットするために用いることができる。また、リダンダンシィカラムＣＲＤ１〜ＣＲＤ１６ごとに置き換え元カラムアドレスが登録される。なお、置き換え元のカラムは、ノーマルエリアＲＡが２Ｋバイト、カラムリダンダンシィエリアＲＢが１６バイトであるとすると、置き換え元カラムアドレスは１２ビット必要となる。
【０１４０】
フラグＦｌａｇ３は、リダンダンシィカラムＣＲＤ１〜ＣＲＤ１６そのものがグローバル不良カラムである場合に‘１’にセットされる。フラグＦｌａｇ２は、リダンダンシィカラムＣＲＤ１〜ＣＲＤ１６がグローバル不良カラムの置換を行っている場合に‘１’にセットされる。フラグＦｌａｇ１は、リダンダンシィカラムＣＲＤ１〜ＣＲＤ１６そのものが、ローカル不良カラムである場合に‘１’にセットされる。フラグＦｌａｇ０は、リダンダンシィカラムＣＲＤ１〜ＣＲＤ１６がローカル不良カラムの置換を行っている場合に‘１’にセットされる。なお、フラグＦｌａｇ３、２、１、０の順に解釈が優先され、例えば、フラグＦｌａｇ３が‘１’の時には、その他のフラグＦｌａｇ２〜Ｆｌａｇ０の状態によらず、そのリダンダンシィカラムそのものがグローバル不良カラムであることを示す。
【０１４１】
なお、フラグレジスタＦ３〜Ｆ０には、リダンダンシィカラムＣＲＤ１〜ＣＲＤ１６について選択エリアＥｉの４つのフラグＦｌａｇ３〜Ｆｌａｇ０をそれぞれ保持することができる。アドレスレジスタＡＤには、リダンダンシィカラムＣＲＤ１〜ＣＲＤ１６について選択エリアＥｉの置き換え元カラムアドレスを保持することができる。
【０１４２】
以下、製品出荷前のダイソート工程において、図５のＲＯＭヒューズ３０に対するカラム置換情報Ｄ１〜Ｄｐの登録方法について、図１８のカラム構成を例にとって説明する。
【０１４３】
ビット線ＢＬ１〜ＢＬｍのオープン／ショートや、センスアンプ回路１３またはデータキャッシュ１４などの不良が検出された場合、そのようなビットを含むバイト単位で不良となるグローバル不良カラムの検出テストを行う。ここで、グローバル不良カラムについては、グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇに‘Ｈ’がセットされる。グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇに‘Ｈ’がセットされると、以降のベリファイ動作において、ベリファイパスとして検知され、検知対象外として扱われる。
【０１４４】
グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇのセットの方法は、例えば、ビット線オープンテストの場合、オープンとなっているカラムのデータラッチＤＬ２［８：１］が‘Ｌ’になるような操作を行う。そして、トランジスタＴＲ２を介してノードＣＯＭをプリチャージした後、ベリファイ検知信号Ｄｅｔを‘Ｈ’にする。この時、グローバル不良カラムにおいては、ノードＮＣＯＭが‘Ｈ’に充電される。この状態でグローバルアイソレーションセット信号ＩＳＯＳＥＴ＿Ｇを‘Ｈ’にすることによって、グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇがセットされる。
【０１４５】
グローバル不良カラムの検出テストが終了したら、ローカル不良カラムの検出テストを行う。以下の説明では、ローカル不良カラムとしてメモリホールのオープン不良（ストリングオープン）を例にとった場合のリダンダンシィ置換方法について説明する。
【０１４６】
メモリホールのオープン不良テストの際には、エリアＥｘ（ｘは２以上ｐ以下の整数）の全てのブロックに対して消去を行う。
【０１４７】
次に、エリアＥｘの全ストリングに対して、読み出し動作を行う。例えば、全てのメモリセルのしきい値が０Ｖ以下になっていることを確認するなら、選択ストリングの全てのワード線に対して０Ｖを印加して読み出し動作を行えばよい。選択ストリングが不良でない場合、読み出しデータは‘１’となる。
【０１４８】
ここで、読み出しデータが‘０’となったカラムは、ストリングオープンである可能性が高い。このようなローカル不良カラムについては、それが検出されるたびにローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌが‘Ｈ’をセットされる。ローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌに‘Ｈ’がセットされると、以降のベリファイ動作において、ベリファイパスとして検知され、検知対象外として扱われる。
【０１４９】
ローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌのセットの方法は、ローカル不良カラムのデータラッチＤＬ２［８：１］のうち、不良ビットに対応するデータラッチＤＬ２が‘Ｌ’になるような操作を行う。メモリホールのオープン不良テストの場合なら、読み出し結果をＤＬ２に転送すればよい。そして、トランジスタＴＲ２を介してノードＣＯＭをプリチャージした後に、ベリファイ検知信号Ｄｅｔを‘Ｈ’にする。この時、ローカル不良カラムにおいては、ノードＮＣＯＭが‘Ｈ’に充電される。この状態で、ローカルアイソレーションラッチ信号ＩＳＯＳＥＴ＿Ｌを’Ｈ’にすることによって、ローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌがセットされる。
【０１５０】
なお、選択エリアＥｘの全ページに対して、書き込みテストなどを行えば、より多くのローカル不良カラムを検出することが可能である。
【０１５１】
エリアＥｘについてローカル不良カラムのテストが終了したら、図５のカラム置換情報Ｄ１〜ＤｐをＲＯＭヒューズ３０に登録するため、不良カラム情報の収集処理を行う。この処理では、グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇが‘Ｈ’になっているリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６についてチェックを行う。このチェックの方法は、全カラムについて、データラッチＤＬ２［８：１］を‘００’にセットするとともにグローバルアイソレート判定信号ＩＳＯＣＨＫ＿Ｇを‘Ｈ’セットする。そして、ベリファイ判定信号ＣＨＫ［ＣＲＤ１］〜ＣＨＫ［ＣＲＤ１６］をＣＲＤ１からＣＲＤ１６にインクリメントしながら順次‘Ｈ’とすることによって行う。
【０１５２】
この時、グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇが‘Ｈ’にセットされているなら、ノードＬＳＥＮが放電されないため、判定結果ＲＳＴが‘Ｈ’となる。すなわち、ベリファイ判定信号ＣＨＫ［ＣＲＤ１］〜ＣＨＫ［ＣＲＤ１６］をＣＲＤ１からＣＲＤ１６にインクリメントしながら順次‘Ｈ’とした時に、判定結果ＲＳＴが‘Ｈ’となったリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６がグローバル不良カラムであることになる。つまり、グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇが‘Ｈ’になっている場合には、該当するリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６そのものがグローバル不良カラムであることを示す。このような場合、該当するリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６において、図１９（ａ）のフラグレジスタＦ３に‘１’をセットする。リダンダンシィエリアＲＢの全てのリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６について、このチェックを行う。
【０１５３】
次に、グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇが‘Ｈ’になっているノーマルエリアＲＡのカラムＣｏｌ１〜Ｃｏｌ２０４８についてチェックを行う。グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇが‘Ｈ’になっているカラムＣｏｌ１〜Ｃｏｌ２０４８を検出すると、このカラムＣｏｌ１〜Ｃｏｌ２０４８を正常かつ未使用のリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６に置換させるための情報を登録する。すなわち、フラグレジスタＦ３が‘０’かつフラグレジスタＦ２が‘０’のリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６に対して、グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇが‘Ｈ’になっているカラムＣｏｌ１〜Ｃｏｌ２０４８のアドレスをアドレスレジスタＡＤに登録する。また、フラグレジスタＦ２に‘１’をセットする。ノーマルエリアＲＡの全てのカラムＣｏｌ１〜Ｃｏｌ２０４８について、このチェックを行う。
【０１５４】
次に、ローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌが‘Ｈ’になっているリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６について、エリアＥ１〜Ｅｐごとにチェックを行う。ここで、ローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌが‘Ｈ’になっている場合には、該当するリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６そのものが選択エリアＥｘにおいて、ローカル不良カラムであることを示す。このような場合には、該当するリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６において、フラグレジスタＦ１に‘１’をセットする。リダンダンシィエリアＲＢの全てのリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６について、このチェックを行う。
【０１５５】
次に、ローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌが‘Ｈ’になっているノーマルエリアＲＡのカラムＣｏｌ１〜Ｃｏｌ２０４８についてチェックを行う。ローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌが‘Ｈ’になっているカラムＣｏｌ１〜Ｃｏｌ２０４８を検出すると、このカラムＣｏｌ１〜Ｃｏｌ２０４８を正常かつ未使用のリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６に置換させるための情報を登録する。すなわち、フラグレジスタＦ０〜Ｆ３が‘０’のリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６に対して、ローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌが‘Ｈ’になっているカラムＣｏｌ１〜Ｃｏｌ２０４８のアドレスをアドレスレジスタＡＤにセットする。また、フラグレジスタＦ０に‘１’をセットする。選択エリアＥｘにおいてノーマルエリアＲＡの全てのカラムＣｏｌ１〜Ｃｏｌ２０４８について、このチェックを行う。
【０１５６】
ここで、フラグレジスタＦ３が‘０’かつフラグレジスタＦ２が‘１’かつフラグレジスタＦ１が‘１’のリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６については、グローバル不良カラムを既に置換しているリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６が、ローカル不良カラムであることを示している。また、フラグレジスタＦ３が‘１’かつフラグレジスタＦ２が‘１’のリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６については、グローバル不良カラムを既に置換しているリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６が、グローバル不良カラムであることを示している。
【０１５７】
例えば、選択エリアＥｘについてチェックが終了した時に図１９（ａ）のカラム置換情報ＤｘがフラグレジスタＦ３〜Ｆ０およびアドレスレジスタＡＤにセットされたものとする。
【０１５８】
リダンダンシィカラムＣＲＤ３は、フラグレジスタＦ３が‘０’かつフラグレジスタＦ２が‘１’かつフラグレジスタＦ１が‘１’であり、アドレスレジスタにＣｏｌ４００のアドレスが登録されているとする。つまり、リダンダンシィカラムＣＲＤ３は、グローバル不良カラムでないため、グローバル不良カラムであるカラムＣｏｌ４００を置換した後、ローカル不良カラムであると判定されている。この場合、カラムＣｏｌ４００のデータは正しく置換されない。
【０１５９】
そこで、このような状況が発生した場合には、グローバル不良カラムの置換先を変更する手続きが必要となる。具体的には、図１９（ｂ）に示すように、フラグレジスタＦ３が‘０’かつフラグレジスタＦ２、Ｆ１が‘１’というリダンダンシィカラムＣＲＤ３が存在する場合には、グローバル不良カラムでもローカル不良カラムでもなく、未使用なリダンダンシィカラムＣＲＤ１２に置換先を変更する。この時、図１９（ａ）に示すように、リダンダンシィカラムＣＲＤ１２では、フラグレジスタＦ０〜Ｆ３が‘０’に設定されている。そして、リダンダンシィカラムＣＲＤ１２についてフラグレジスタＦ０を‘１’に設定するとともに、アドレスレジスタＡＤにＣｏｌ４００のアドレスを登録する。
【０１６０】
フラグレジスタＦ３が‘０’かつフラグレジスタＦ２、Ｆ１が‘１’のリダンダンシィカラムに対してこの操作を行う。
【０１６１】
また、リダンダンシィカラムＣＲＤ１、ＣＲＤ３は、フラグレジスタＦ３、Ｆ２が‘１’であり、置き換え元カラムアドレスにＣｏｌ１００、Ｃｏｌ３００のアドレスがそれぞれ登録されているとする。つまり、リダンダンシィカラムＣＲＤ１、ＣＲＤ３は、グローバル不良カラムでなるにもかかわらず、グローバル不良カラムカラムであるカラムＣｏｌ１００、Ｃｏｌ３００を置換している。この場合、カラムＣｏｌ１００、Ｃｏｌ３００のデータは正しく置換されない。
【０１６２】
このため、図１９（ｂ）に示すように、フラグレジスタＦ３、Ｆ２が‘１’というリダンダンシィカラムＣＲＤ１、ＣＲＤ３が存在する場合には、グローバル不良カラムでもローカル不良カラムでもなく、未使用なリダンダンシィカラムＣＲＤ１３、ＣＲＤ１４に置換先を変更する。この時、図１９（ａ）に示すように、リダンダンシィカラムＣＲＤ１３、ＣＲＤ１４では、フラグレジスタＦ３〜Ｆ０が‘０’に設定されている。そして、リダンダンシィカラムＣＲＤ１３、ＣＲＤ１４についてフラグレジスタＦ２を‘１’に設定するとともに、アドレスレジスタＡＤにＣｏｌ３００、Ｃｏｌ１００のアドレスを登録する。
【０１６３】
そして、全てのリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６についてフラグレジスタＦ０〜Ｆ３およびアドレスレジスタＡＤに選択エリアＥｘのフラグＦｌａｇ０〜Ｆｌａｇ３および置き換え元カラムアドレスがセットされると、シーケンス制御回路１８を介して書き込みデータがセンスアンプ回路１３に転送され、ＲＯＭヒューズ３０にカラム置換情報Ｄｘが登録される。
【０１６４】
次に、以上の処理を全てエリアＥ１〜Ｅｐについて順次行うことで、ＲＯＭヒューズ３０にカラム置換情報Ｄ１〜Ｄｐが登録される。ここで、グローバル不良カラムは全てのエリアＥ１〜Ｅｐに共通である。このため、リダンダンシィカラムＣＲＤ１〜ＣＲＤ１６の全てのレジスタ情報とローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌのみリセットし、グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇはリセットしないようにすることができる。
【０１６５】
以下、製品出荷後のカラムリダンダンシィに関連する部分の動作について、図１８のカラム構成を例にとって説明する。
【０１６６】
電源投入時（パワーオン時）にヒューズデータを読み出す。この時、カラム置換情報が図５の構成の場合には、選択エリアＥｘのカラム置換情報Ｄｘを参照することで、選択エリアＥｘのリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６についてフラグ情報とアドレス情報をカラム置換レジスタ２８にセットする。なお、ユーザによっては、パワーオンの読み出しののち、最初にアクセスするエリアが決まっている場合があるため、ユーザによって最初にセットされるエリアを選択できるようにすることが好ましい。
【０１６７】
次に、リダンダンシィカラムＣＲＤ１〜ＣＲＤ１６についてフラグ情報とアドレス情報がカラム置換レジスタ２８にセットされると、これらのフラグ情報とアドレス情報に基づいて、ローカルアイソレーションラッチＩＳＯＬＡＴ＿ＬおよびグローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇをセットする。
【０１６８】
グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇがセットされるのは、フラグレジスタＦ３が‘１’のリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６と、フラグレジスタＦ２が‘１’になっているリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６のアドレスレジスタＡＤにセットされているアドレスで指定されるカラムＣｏｌ１〜Ｃｏｌ２０４８である。
【０１６９】
ローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌがセットされるのは、フラグレジスタＦ１が‘１’のリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６と、フラグレジスタＦ０が‘１’になっているリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６のアドレスレジスタＡＤにセットされているカラムＣｏｌ１〜Ｃｏｌ２０４８である。
【０１７０】
カラムアドレスＮで指定されるカラムＣｏｌＮがグローバル不良カラムで、このカラムＣｏｌＮにグローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇをセットするとする。この場合、例えば全てのカラムＣｏｌ１〜Ｃｏｌ２０４８のデータラッチＤＬ２［８：１］を予め全て‘Ｈ’にしておき、該当カラムＣｏｌＮのベリファイ判定信号ＣＨＫ［Ｎ］のみ‘Ｈ’とする。この状態でベリファイ検知信号Ｄｅｔを‘Ｈ’にすると、カラムアドレスＮのノードＣＯＭが放電され、‘Ｌ’となる。トランジスタＴＲ１がオンして、ノードＮＣＯＭが充電される。グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇを‘Ｌ’にリセットしたのち、グローバルアイソレーションセット信号ＩＳＯＳＥＴ＿Ｇを‘Ｈ’にし、グローバルアイソレーションラッチＩＳＯＬＡＴ＿Ｇにデータを転送する。これ以降、このカラムＣｏｌＮはベリファイ動作において、パス判定を常に返すことになる。
【０１７１】
ローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌのセットの場合は、グローバルアイソレーションセット信号ＩＳＯＳＥＴ＿Ｇの代わりに、ローカルアイソレーションセット信号ＩＳＯＳＥＴ＿Ｌを‘Ｈ’にすればよい。このようにカラム置換レジスタ２８にセットされたフラグ情報を元に、グローバルアイソレーションラッチＩＳＯＬＡＴ＿ＧまたはローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌを‘Ｌ’にセットすることができる。
【０１７２】
パワーオンリード中にデフォルトで選択エリアＥｘのフラグ情報とアドレス情報がカラム置換レジスタ２８にセットされ、これらのフラグ情報とアドレス情報に基づいて、グローバルアイソレーションラッチＩＳＯＬＡＴ＿ＧおよびローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌがセットされた場合でも、選択エリアＥｘが選択エリアＥｘ＋１に切り替わったら、選択エリアＥｘ＋１のフラグ情報とアドレス情報がカラム置換レジスタ２８にセットされ、これらのフラグ情報とアドレス情報に基づいて、グローバルアイソレーションラッチＩＳＯＬＡＴ＿ＧおよびローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌがセットされる。
【０１７３】
すなわち、エリア切り替えが起こった場合には、フラグレジスタＦ１またはフラグレジスタＦ０が‘１’のリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６に関しては、ローカル不良カラム情報がセットされているためリセットされる。ローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌも同様にリセットされる。ローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌのリセットは、ローカルアイソレーションリセット信号ＩＳＯＲＳＥＴ＿Ｌを‘Ｈ’にすればよい。
【０１７４】
エリア切り替え前のローカル不良カラム情報のリセットが完了したら、新たな選択エリアＥｘ＋１のフラグ情報およびアドレス情報がカラム置換レジスタ２８にセットされる。選択エリアＥｘ＋１のフラグ情報およびアドレス情報を取得するために、ＲＯＭヒューズ３０からにカラム置換情報Ｄｘ＋１が読み出される。
【０１７５】
ここで、フラグレジスタＦ３が‘１’にセットされているリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６に関しては、フラグレジスタＦ３〜Ｆ０およびアドレスレジスタＡＤは更新されない。フラグレジスタＦ２が‘１’にセットされているリダンダンシィカラムＣＲＤ１〜ＣＲＤ１６に関しては、フラグレジスタＦ１のみエリア切り替えで更新され、それ以外は更新されない。これは、グローバル不良カラムでない場合においても、ローカル不良カラムである可能性があるためである。カラム置換レジスタ２８の更新が終わったら、ローカルアイソレーションラッチＩＳＯＬＡＴ＿Ｌがセットされる。
【０１７６】
（第４実施形態）
図２０は、第４実施形態に係る不揮発性半導体記憶装置１、コントローラ２の概略構成を示すブロック図である。なお、この不揮発性半導体記憶装置は、いわゆる平面ＮＡＮＤフラッシュメモリであってもよいし、３次元のＮＡＮＤフラッシュメモリであってもよい。
本実施形態に係る不揮発性半導体記憶装置１は、第２実施形態の不揮発性半導体記憶装置（図７）に対して、メモリセルアレイ１１と、シーケンス制御回路１８、コントローラ２が相違し、その他の構成は同一であり詳細な説明は省略する。
メモリセルアレイ１１は、ＲＯＭヒューズ（第１ＲＯＭヒューズ）３０ａだけでなく、ＲＯＭヒューズ（第２ＲＯＭヒューズ）３０ｂも有する。
【０１７７】
本実施形態の不揮発性半導体装置は、第２実施形態のシーケンス制御回路１８にある選択エリア判定部１８ａと、エリア切替指示部１９ｂを有さないが、トリミングレジスタ２９を有する。
本実施形態のコントローラ２は、選択エリア判定部７０と、エリア切替指示部７１、選択エリアレジスタ７２を有する。この選択エリア判定部７０は、外部から入力されたアドレスに基づいて、メモリセルアレイ１１のどの選択エリアにアクセスされるかを判定することができる。エリア切替指示部７１は、選択エリア判定部７０に基づいてエリア切替が行われるとき、不揮発性半導体記憶装置がＲＯＭリードを実施するよう、不揮発性半導体記憶装置１を制御する。選択エリアレジスタ７２は、カラム置換レジスタ２８に保持されたカラム置換情報Ｄｘに対応するエリアＥｘの情報を保持する。
第２ＲＯＭヒューズ３０ｂは、各エリアのカラム置換情報Ｄ１〜Ｄｐを保持する。図２１に示すように、第２ＲＯＭヒューズ３０ｂは、例えば複数のページ（図２１では、ページ１、ページ２、ページ３）を有する。例えばエリア番号の昇降順にデータが保持されており、エリア１からエリア５までのカラム置換情報Ｄ１〜Ｄ５はページ１に保持され、エリア６のカラム置換情報Ｄ６はページ２に保持されている。なお、第１ＲＯＭヒューズ３０ａは、例えばカラム置換情報の他に、電圧値のトリミング情報やバッドブロック情報が登録されている。
【０１７８】
次に、パワーオンの際、本実施形態の不揮発性半導体記憶装置の動作について説明をする。
不揮発性半導体記憶装置１がパワーオンを検知すると、シーケンス制御回路１８は、第１ＲＯＭヒューズ３０ａにアクセスし、トリミング情報をトリミングレジスタ２９に、バッドブロック情報をバッドブロックフラグレジスタ１２ａに、例えばエリア１のカラム置換情報Ｄ１をカラム置換レジスタ２８に転送する。トリミングレジスタ２９はトリミング情報を、バッドブロックフラグレジスタ１２ａはバッドブロック情報を、カラム置換レジスタ２８はカラム置換情報Ｄ１を保持する。ここで、エリア１は、管理ブロック（後天性のバッドブロック情報を保持するブロック）、第２ＲＯＭヒューズ３０ｂを含むエリアである。
また、カラム置換レジスタ２８に保持されたカラム置換情報Ｄ１に対応するエリアＥ１を示すデータは、不揮発性半導体記憶装置１からコントローラ２に転送される。コントローラ２の選択エリアレジスタ７２は、選択されたエリアＥ１を示すデータを保持する。
【０１７９】
次に、不揮発性半導体記憶装置の読み出し動作について、図２２のフローチャート図を用いて説明する。
コントローラ２が外部のホスト機器から読み出しコマンドＣＭＤ１とアドレスＡＤＤ１を受け取ると、コントローラ２の選択エリア判定部７０は、アドレスＡＤＤ１に対応するエリアＥｉを算出する。選択エリア判定部７０は、算出されたエリアＥｉが選択エリアレジスタ７２に保持されたエリアＥｊ（初期状態では、ｊ＝１）であるか判定する（Ｓ３１）。
エリアＥｉがエリアＥｊと異なり、エリア切替があると選択エリア判定部７０が判断したとき（Ｓ３１，Ｙ）、エリア切替指示部７１は、第２ＲＯＭヒューズのカラム置換情報Ｄｉについて読み出すコマンドＣＭＤ２と、第２ＲＯＭヒューズのうちカラム置換情報Ｄｉを保持する位置を指定するアドレスＡＤＤ２ｉ（エリアＥｉに対応する）を不揮発性半導体記憶装置１に発行する（Ｓ３２）。
【０１８０】
不揮発性半導体記憶装置１がコマンドＣＭＤ２、アドレスＡＤＤ２を受け取ると、シーケンス制御回路１８は、第２ＲＯＭヒューズのうちカラム置換情報Ｄｉにアクセスする（Ｓ３３）。シーケンス制御回路１８は、カラム置換レジスタ２８に保持されたカラム置換情報Ｄｊをリセットしたのち、カラム置換情報Ｄｉをカラム置換レジスタ２８にセットする（Ｓ３４）。
カラム置換レジスタ２８にカラム置換情報がセットされると、不揮発性半導体記憶装置１は、コントローラ２にレディ情報を出力する。このレディ情報に基づいて、コントローラ２は、読み出しコマンドＣＭＤ１とアドレスＡＤＤ１を不揮発性半導体記憶装置１に発行する（Ｓ３５）。
不揮発性半導体記憶装置１は、カラム置換情報Ｄｉに基づいて、エリアＥｉのうち所望のページのデータを読み出す。
以上より、本実施形態は、不良に対する救済効率を向上させることが可能な不揮発性半導体記憶装置を提供できる。
【０１８１】
（第５実施形態）
次に、第５実施形態に係る不揮発性半導体記憶装置１、コントローラ２について図２３のブロック図を用いて説明する。
本実施形態の不揮発性半導体記憶装置の構成は、第４実施形態と同様であり、詳細な説明は省略する。図２３に示すように、本実施形態のコントローラ２は、第４実施形態のコントローラ２に対してキャッシュ７３が追加された構成である。
本実施形態の不揮発性半導体記憶装置１、コントローラ２のシーケンスについて、図２４と図２５のフローチャート図を用いて説明する。  
【０１８２】
まず、パワーオンの際、本実施形態の不揮発性半導体記憶装置の動作について図２４を用いて説明する。
図２４に示すように、不揮発性半導体記憶装置１がパワーオンを検知すると、シーケンス制御回路１８は、第１ＲＯＭヒューズ３０ａにアクセスし、トリミング情報をトリミングレジスタ２９に、バッドブロック情報をバッドブロックフラグレジスタ１２ａに、エリア１のカラム置換情報Ｄ１をカラム置換レジスタ２８に転送する。トリミングレジスタ２９はトリミング情報を、バッドブロックフラグレジスタ１２ａはバッドブロック情報を、カラム置換レジスタ２８はカラム置換情報Ｄ１をセットする（Ｓ４１）。ここで、エリア１は、管理ブロック（後天性のバッドブロック情報を保持するブロック）、第２ＲＯＭヒューズ３０ｂを含むエリアである。
また、カラム置換レジスタ２８に保持されたカラム置換情報Ｄ１に対応するエリアＥ１を示すデータは、不揮発性半導体記憶装置１からコントローラ２に転送される（Ｓ４１）。コントローラ２の選択エリアレジスタ７２は、選択されたエリアＥ１を示すデータを保持する。
Ｓ４１のセット動作が完了すると、不揮発性半導体記憶装置１はレディ情報をコントローラ２に出力する。
【０１８３】
そして、レディ情報に基づいて（Ｓ４２）、コントローラ２は、コマンドＣＭＤ３を生成する（Ｓ４３）。このコマンドＣＭＤ３は、不揮発性半導体記憶装置１が第２ＲＯＭヒューズ３０ｂに保持された全エリアのカラム置換情報Ｄ１〜Ｄｐをコントローラ２に出力するよう、不揮発性半導体記憶装置１を制御するコマンドである。
不揮発性半導体記憶装置１は、コマンドＣＭＤ３に基づいて（Ｓ４４）、第２ＲＯＭヒューズ３０ｂに保持された全エリアのカラム置換情報Ｄ１〜Ｄｐをコントローラ２に出力する（Ｓ４５）。第２ＲＯＭヒューズ３０ｂを含むエリア１にグローバル不良カラム又はローカル不良カラムがある場合には、シーケンス制御回路１８は、カラム置換レジスタＤ１のデータに基づいて置換して、カラム置換情報Ｄ１〜Ｄｐをコントローラ２に出力する（Ｓ４５）。
【０１８４】
コントローラ２は、置換されたカラム置換情報Ｄ１〜Ｄｐをキャッシュ７３に保持する（Ｓ４６）。
コントローラ２は、コマンドＣＭＤ４を生成する（Ｓ４７）。このコマンドＣＭＤ４は、エリア１の管理ブロックのデータ（後発性のバッドブロック情報）をコントローラ２に出力するよう、不揮発性半導体記憶装置１を制御するコマンドである。
不揮発性半導体記憶装置１は、コマンドＣＭＤ４に基づいて（Ｓ４８）、管理ブロックのデータ（後発性のバッドブロック情報）をコントローラ２に出力する（Ｓ４９）。Ｓ４５と同様に、第２ＲＯＭヒューズ３０ｂを含むエリア１にグローバル不良カラム又はローカル不良カラムがある場合には、シーケンス制御回路１８は、カラム置換レジスタＤ１のデータに基づいて置換して、管理ブロックのデータ（後発性のバッドブロック情報）をコントローラ２に出力する（Ｓ４９）。
コントローラ２は、置換された管理ブロックのデータをキャッシュ７３に保持する（Ｓ５０）。
【０１８５】
次に、不揮発性半導体記憶装置の読み出し動作について、図２５を用いて説明する。
図２５に示すように、コントローラ２が外部のホスト機器から読み出しコマンドＣＭＤ１とアドレスＡＤＤ１を受け取ると、コントローラ２の選択エリア判定部７０は、アドレスＡＤＤ１に対応するエリアＥｉを算出する。選択エリア判定部７０は、算出されたエリアＥｉが選択エリアレジスタ７２に保持されたエリアＥｊ（初期状態では、ｊ＝１）であるか判定する（Ｓ６１）。
エリアＥｉがエリアＥｊと異なり、エリア切替があると選択エリア判定部７０が判断したとき（Ｓ６１，Ｙ）、エリア切替指示部７１は、キャッシュ７３に保持されたエリア置換情報Ｄｊをカラム置換レジスタ２８にセットするためのコマンドＣＭＤ５と、エリア置換情報Ｄｊのデータを不揮発性半導体記憶装置１に出力する（Ｓ６２）。
【０１８６】
不揮発性半導体記憶装置１がコマンドＣＭＤ５、データを受け取ると、シーケンス制御回路１８は、カラム置換レジスタ２８に保持されたカラム置換情報Ｄｊをリセットしたのち、カラム置換情報Ｄｉをカラム置換レジスタ２８にセットする（Ｓ６３）。
カラム置換レジスタ２８にカラム置換情報がセットされると、不揮発性半導体記憶装置１は、コントローラ２にレディ情報を出力する。このレディ情報に基づいて、コントローラ２は、読み出しコマンドＣＭＤ１とアドレスＡＤＤ１を不揮発性半導体記憶装置１に発行する（Ｓ６４）。
不揮発性半導体記憶装置１は、カラム置換情報Ｄｉに基づいて、エリアＥｉのうち所望のページのデータを読み出す。
以上より、本実施形態は、不良に対する救済効率を向上させることが可能な不揮発性半導体記憶装置を提供できる。
【０１８７】
本実施形態では、第１ＲＯＭヒューズ３０ａのデータ（例えばエリア１のデータ）は、パワーオンの際にトリミングレジスタ２９，バッドブロックフラグレジスタ１２ａ，カラム置換レジスタ２９にセットされる。このため、第１ＲＯＭヒューズ３０ａのデータはリダンダンシィカラムによる救済ができない。そこで、信頼性を保障すべく、第１ＲＯＭヒューズには、例えばカラム置換情報Ｄ１のデータに対して、相補データやコピーデータも保持する必要がある。これらのデータに対して諸所の演算を行うことにより、例えばカラム置換情報Ｄ１のデータの信頼性を保障する。
第２ＲＯＭヒューズ３０ｂのデータや管理ブロックのデータは、リダンダンシィカラムによる救済ができる。このため、第２ＲＯＭヒューズや管理ブロックには、相補データやコピーデータも保持する必要がなく、これらのデータに対する諸所の演算も必要ない。したがって、第２ＲＯＭヒューズ及び管理ブロックの容量を低減できる。また、本実施形態は、第２ＲＯＭヒューズ及び管理ブロックのデータにも相補データやコピーデータを持つ場合と比較して、パワーオンの時間を短くできる。
【０１８８】
（第６実施形態）
次に、第６実施形態に係る不揮発性半導体記憶装置１、コントローラ２について説明する。
図２６のブロック図に示すように、本実施形態の不揮発性半導体記憶装置の構成は、第５実施形態に対して、カラム置換レジスタ２８を削除した構成である。
本実施形態の不揮発性半導体記憶装置１、コントローラ２のシーケンスについて、図２７のフローチャート図を用いて説明する。
まず、パワーオンの際、本実施形態の不揮発性半導体記憶装置の動作について説明する。図２７に示すように、不揮発性半導体記憶装置１がパワーオンを検知すると、シーケンス制御回路１８は、第１ＲＯＭヒューズ３０ａにアクセスし、トリミング情報をトリミングレジスタ２９に、バッドブロック情報をバッドブロックフラグレジスタ１２ａに転送する。トリミングレジスタ２９はトリミング情報を、バッドブロックフラグレジスタ１２ａはバッドブロック情報をセットする（Ｓ７１）。不揮発性半導体記憶装置１はカラム置換情報Ｄ１をコントローラ２に出力する（Ｓ７１）。
【０１８９】
コントローラ２は、カラム置換情報Ｄ１をキャッシュ７３にセットする（Ｓ７２）。ここで、エリア１は、管理ブロック（後天性のバッドブロック情報を保持するブロック）、第２ＲＯＭヒューズ３０ｂを含むエリアである。
Ｓ７１のセット動作が完了すると、不揮発性半導体記憶装置１はレディ情報をコントローラ２に出力する。
そして、レディ情報に基づいて（Ｓ７２）、コントローラ２は、コマンドＣＭＤ６を生成する（Ｓ７３）。このコマンドＣＭＤ６は、不揮発性半導体記憶装置１が第２ＲＯＭヒューズ３０ｂに保持された全エリアのカラム置換情報Ｄ１〜Ｄｐをコントローラ２に出力するよう、不揮発性半導体記憶装置１を制御するコマンドである。
不揮発性半導体記憶装置１は、コマンドＣＭＤ６に基づいて（Ｓ７４）、第２ＲＯＭヒューズ３０ｂに保持された全エリアのカラム置換情報Ｄ１〜Ｄｐをコントローラ２に出力する（Ｓ７５）。第２ＲＯＭヒューズ３０ｂを含むエリア１にグローバル不良カラム又はローカル不良カラムがある場合には、コントローラ２は、キャッシュ７３に保持されたカラム置換情報Ｄ１に基づいて置換し、キャッシュ７３に保持する（Ｓ７６）。
【０１９０】
コントローラ２は、コマンドＣＭＤ７を生成する（Ｓ７７）。このコマンドＣＭＤ７は、エリア１の管理ブロックのデータ（後発性のバッドブロック情報）をコントローラ２に出力するよう、不揮発性半導体記憶装置１を制御するコマンドである。
不揮発性半導体記憶装置１は、コマンドＣＭＤ７に基づいて（Ｓ７８）、管理ブロックのデータ（後発性のバッドブロック情報）をコントローラ２に出力する（Ｓ７９）。コントローラ２は、管理ブロックのデータをキャッシュ７３に保持する（Ｓ８０）。第２ＲＯＭヒューズ３０ｂを含むエリア１にグローバル不良カラム又はローカル不良カラムがある場合には、コントローラ２は、Ｓ７５と同様に、キャッシュ７３に保持されたカラム置換情報Ｄ１に基づいて置換し、キャッシュ７３に保持する（Ｓ８０）。
【０１９１】
次に、不揮発性半導体記憶装置の書き込み動作について説明する。
本実施形態の書き込み動作もページ単位で行う。本実施形態のページは、ワード線ＷＬを共有するセルトランジスタのうち、共通のストリングユニットＵ１〜Ｕｑにある複数のセルトランジスタで構成される。本実施形態のページには、ワード線ＷＬを共通するセルトランジスタのうち、カラムリダンダンシィ領域のセルトランジスタも含まれる。
カラムリダンダンシィ領域もユーザがアクセスできる領域とし、グローバル不良カラム又はローカル不良カラムがあるカラムに対応するセルトランジスタには、データを書き込まず、非書き込みとする。
【０１９２】
すなわち、本実施形態の書き込み動作では、制御回路は、選択ワード線ＷＬにプログラム電圧Ｖｐｐを印加し、非選択ワード線ＷＬ２〜ＷＬｈ＋１に例えば中間電圧Ｖｐａｓｓ（例えば、１０Ｖ）を印加する。
また、ビット線ＢＬ１には、書き込み電圧（例えば０Ｖ）が印加され、残りのビット線ＢＬ２〜ＢＬｍには、書き込み禁止電圧（例えば２．５Ｖ）が印加される。ストリングユニットＵ１のセレクトゲート線ＳＧＤ，ＳＧＤに所望の電位を印加して、セレクトトランジスタＤＴをオン状態にし、他のストリングユニットＵ２〜Ｕｑのセレクトゲート線ＳＧＤ，ＳＧＳに低電圧（例えば、０Ｖ）を印加して、セレクトトランジスタＤＴをオフ状態にする。
書き込みコマンドをコントローラ２が不揮発性半導体記憶装置１に出力するとき、コントローラ２は、キャッシュ７３のカラム置換情報Ｄ１〜Ｄｐに基づいて、アドレスを入力する。
【０１９３】
以下、具体的に説明する。
データを不揮発性半導体記憶装置１に書き込む際、コントローラ２は、書き込む対象のページがどのエリアＥｘに属するかを判定する。コントローラ２は、判定されたエリアＥｘに対応するカラム置換情報Ｄｘをキャッシュ７３から読み出し、グローバル不良カラム又はローカル不良カラムに対応するセルトランジスタを飛ばして（スキップして）、データを書き込むように、不揮発性半導体記憶装置１を制御する。つまり、ページの全セルトランジスタからスキップされたセルトランジスタを除いた複数のセルトランジスタに対してデータを順に書き込む。グローバル不良カラム又はローカル不良カラムに対応するセルトランジスタをスキップする方法について、例えば２００７年３月２日出願の日本特許出願第２００７−５３３５８号の「不揮発性半導体記憶装置、及び不揮発性半導体記憶システム」に開示されており、その全体は本願明細書に組み込まれる。
【０１９４】
次に、不揮発性半導体記憶装置の読み出し動作について、図２８を用いて説明する。
図２８に示すように、コントローラ２が外部のホスト機器から読み出しコマンドＣＭＤ７とアドレスＡＤＤ３を受け取ると、コントローラ２は読み出し動作を行うコマンドＣＭＤ８と、メモリセルアレイ１１から対応するアドレスＡＤＤ４を生成する（Ｓ９１）。
コントローラ２は、コマンドＣＭＤ８及びアドレスＡＤＤ４を不揮発性半導体記憶装置１に出力する。
不揮発性半導体記憶装置１は、コマンドＣＭＤ８、アドレスＡＤＤ４に基づいて（Ｓ９２）、読み出し動作を行う。１ページ分のデータを読み出す（Ｓ９３）。ここで、書き込み動作でスキップしたセルトランジスタから読み出したデータはＦＦである。
Ｓ９３で読み出したデータを、不揮発性半導体記憶装置１はコントローラに出力する。そして、コントローラ２は、キャッシュ７３のカラム置換情報Ｄ１〜Ｄｐに基づいて、Ｓ９３で受け取ったデータ（Ｓ９４）から、スキップしたセルトランジスタから読み出したデータ（ＦＦ）を取り除き、正常なデータを生成する（Ｓ９５）。
コントローラ２は、この正常なデータを外部のホスト機器に出力する（Ｓ９６）。
以上より、本実施形態は、不良に対する救済効率を向上させることが可能な不揮発性半導体記憶装置を提供できる。
【０１９５】
本実施形態では、コントローラ２は、判定されたエリアＥｘに対応するカラム置換情報Ｄｘをキャッシュ７３から読み出し、グローバル不良カラム又はローカル不良カラムに対応するセルトランジスタを飛ばして（スキップして）、データを書き込むように、不揮発性半導体記憶装置１を制御する。また、コントローラ２は、キャッシュ７３のカラム置換情報Ｄ１〜Ｄｐに基づいて、Ｓ９３で受け取ったデータ（Ｓ９４）から、スキップしたセルトランジスタから読み出したデータ（ＦＦ）を取り除き、正常なデータを生成する（Ｓ９５）。リダンダンシィカラムを用いてデータの転送を行う必要がなく、データの転送を行う場合に比べて、読み出し動作にかかる時間を大幅に削減できる。
【０１９６】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１９７】
１、５１、６１、１０１  ＮＡＮＤフラッシュメモリ、２、５２、６２、１０２  コントローラ、１１、５３、６３、１０３  メモリセルアレイ、１２、ＲＤ１〜ＲＤｎ、ＲＳ１〜ＲＳｎ  ロウデコーダ、１２ａ  バッドフラグレジスタ、１３、ＳＡ  センスアンプ回路、１４  データキャッシュ、１５  書き込みカラム検知回路、１６  チャージポンプ制御回路、１７ａ  ロウ制御回路、１７ｂ  カラム制御回路、１８  シーケンス制御回路、１８ａ  選択エリア判定部、１８ｂ  エリア切替指示部、１９  チャージポンプ回路、２０  電源検知回路、２１、２２  バッファ、２３  コマンドデコーダ、２４  アドレスバッファ、２５  データバッファ、２６  出力バッファ、２７  マルチプレクサ、２８、５６、１０６  カラム置換レジスタ、２９  トリミングレジスタ、３０、５５、６５、１０５  ＲＯＭヒューズ、Ｆ０〜Ｆ３  フラグレジスタ、ＡＤ  アドレスレジスタ、ＲＡ  ノーマルエリア、ＲＢ  カラムリダンダンシィエリア、Ｂ１〜Ｂｎ  ブロック、Ｅ１〜Ｅｐ  エリア、ＤＴ、ＳＴ、ＤＴ１〜ＤＴｎ、ＳＴ１〜ＳＴｎ  セレクトトランジスタ、ＭＴ１〜ＭＴｈ、ＭＴ１〜ＭＴ２ｈ  セルトランジスタ、ＷＬ１〜ＷＬ２ｈ  ワード線、ＳＧＤ、ＳＧＳ、ＳＧＤ１〜ＳＧＤｎ、ＳＧＳ１〜ＳＧＳｎ  セレクトゲート線、ＳＣＥ  ソース線、ＢＬ１〜ＢＬｍ  ビット線、ＮＳ１〜ＮＳｍ、ＮＳ１〜ＮＳｑ  ＮＡＮＤストリング、Ｕ１〜Ｕｑ  ストリングユニット、ＰＧＥ  ページ、２０  半導体基板、ＣＵ  回路層、ＢＧ  バックゲート層、ＫＡ１、ＫＡ２  貫通孔、ＭＰ１、ＭＰ２、ＳＰ１、ＳＰ２  柱状体、ＷＬ１〜ＷＬ８  ワード線、ＢＬ１〜ＢＬ６  ビット線、ＳＧＤ、ＳＧＳ、１１９、１２０  セレクトゲート電極、ＮＳ  ＮＡＮＤストリング、ＭＣ  メモリセル、ＣＰ  接続層、ＰＧ  プラグ、４１  柱状半導体、４２  トンネル絶縁膜、４３  チャージトラップ層、４４  ブロック絶縁膜、ＩＬ  絶縁体、４５  層間絶縁膜、３１  カラム書き込み検知部、３２  書き込み検知制御部、ＩＳＯＬＡＴ_Ｌ  ローカルアイソレーションラッチ、ＩＳＯＬＡＴ_Ｇ  グローバルアイソレーションラッチ、Ｃ１、Ｃ２  キャパシタ、ＴＲ１、ＴＲ２、ＴＡ０〜ＴＡ７、ＴＢ０〜ＴＢ７、ＴＣ１、ＴＣ２、ＴＬ１、ＴＬ３、ＴＬ４、ＴＧ１、ＴＧ３、ＴＧ４  トランジスタ、Ｎ１、Ｎ２、ＮＬ１〜ＮＬ４、ＮＧ１〜ＮＧ３  インバータ、ＡＧ１、ＡＧ２、ＡＬ１、ＡＬ２  ＡＮＤ回路、５４ａ、６４ａ、１０４ａ  ロウ選択制御部、５４ｂ、６４ｂ、１０４ｂ  カラム選択制御部、５２ａ  カラム置換情報読み出し部、５２ｂ  選択エリア判定部、５２ｃ  エリア別カラム置換情報設定部、６２ａ  不良カラム認識部、６２ｂ  リダンダンシィカラムアクセス部、６６  リダンダンシィカラムアクセス許容部、ＭＬ１〜ＭＬｈ  セルレイヤ、１１１  ウェル、１１２〜１１４  不純物拡散層、１１５  電荷蓄積層、１１６  制御ゲート、１１７、１１８  接続導体
【図１】
2013254538.tif 000003
【図２】
2013254538.tif 000004
【図３】
2013254538.tif 000005
【図４】
2013254538.tif 000006
【図５】
2013254538.tif 000007
【図６】
2013254538.tif 000008
【図７】
2013254538.tif 000009
【図８】
2013254538.tif 000010
【図９】
2013254538.tif 000011
【図１０】
2013254538.tif 000012
【図１１】
2013254538.tif 000013
【図１２】
2013254538.tif 000014
【図１３】
2013254538.tif 000015
【図１４】
2013254538.tif 000016
【図１５】
2013254538.tif 000017
【図１６】
2013254538.tif 000018
【図１７】
2013254538.tif 000019
【図１８】
2013254538.tif 000020
【図１９】
2013254538.tif 000021
【図２０】
2013254538.tif 000022
【図２１】
2013254538.tif 000023
【図２２】
2013254538.tif 000024
【図２３】
2013254538.tif 000025
【図２４】
2013254538.tif 000026
【図２５】
2013254538.tif 000027
【図２６】
2013254538.tif 000028
【図２７】
2013254538.tif 000029
【図２８】
2013254538.tif 000030