(57)【要約】【課題】  データの信頼性がより高い半導体記憶装置を提供する。【解決手段】  半導体記憶装置１００は、メモリセルアレイ１１１と、複数のワード線と、制御回路１２０とを含む。メモリセルアレイ１１１は、複数のメモリストリング１１４を備え、複数のメモリストリング１１４の各々は直列接続された複数のメモリセルを有する。複数のワード線は、複数のメモリストリング１１４に共通接続される。制御回路１２０は、複数のワード線の各々に接続された複数のメモリセルからなるページに対して書き込み動作及び読み出し動作を制御する。制御回路１２０は、メモリストリング１１４に流れるセル電流を測定し、セル電流の測定結果に基づいて、ワード線に印加される書き込み電圧を補正する。【選択図】  図１３
2016054017.tif 000002
【特許請求の範囲】
【請求項１】
複数のメモリストリングを備え、前記複数のメモリストリングの各々は直列接続された複数のメモリセルを有する、メモリセルアレイと、
前記複数のメモリストリングに共通接続された複数のワード線と、
前記複数のワード線の各々に接続された複数のメモリセルからなるページに対して書き込み動作及び読み出し動作を制御する制御回路と、
を具備し、
前記制御回路は、
メモリストリングに流れるセル電流を測定し、
セル電流の測定結果に基づいて、ワード線に印加される書き込み電圧を補正する、
ことを特徴とする半導体記憶装置。
【請求項２】
前記制御回路は、
前記測定結果をフラグデータとして、前記ページの冗長領域に書き込み、
第１読み出しにおいて、前記冗長領域から前記フラグデータを読み出し、
第２読み出しにおいて、前記フラグデータに基づいて、ワード線に印加される読み出し電圧を補正する、
ことを特徴とする請求項１に記載の半導体記憶装置。
【請求項３】
前記制御回路は、
第１書き込みにおいて、前記測定結果をフラグデータとして、前記ページの冗長領域に書き込み、
第２書き込みにおいて、前記冗長領域から前記フラグデータを読み出し、
前記第２書き込みにおいて、前記フラグデータに基づいて、ワード線に印加される書き込み電圧を補正する、
ことを特徴とする請求項１又は２に記載の半導体記憶装置。
【請求項４】
書き込み電圧の情報を含む複数のパラメータを格納するレジスタをさらに具備し、
前記制御回路は、前記測定結果に基づいて、前記複数のパラメータの１つを選択し、前記選択されたパラメータを用いて、前記書き込み電圧を決定する、
ことを特徴とする請求項１乃至３のいずれかに記載の半導体記憶装置。
【請求項５】
複数のページを備え、前記複数のページの各々は複数のメモリセルを有する、メモリセルアレイと、
前記複数のページにそれぞれ接続された複数のワード線と、
ページに対して書き込み動作及び読み出し動作を制御する制御回路と、
を具備し、
前記制御回路は、
前記ページの一部であるサンプリング領域に書き込むべき第１レベルのビット数をカウントし、前記カウント値をフラグデータとして前記ページの冗長領域に書き込み、
第１読み出しにおいて、前記冗長領域から前記フラグデータを読み出すと共に、前記サンプリング領域から読み出された第１レベルのビット数をカウントし、
第２読み出しにおいて、前記フラグデータと前記第１読み出しによるカウント値との差に基づいて、ワード線に印加される読み出し電圧を補正する、
ことを特徴とする半導体記憶装置。
【請求項６】
前記第１読み出しによる読み出しデータを保持する第１データキャッシュと、
前記第２読み出しによる読み出しデータを保持する第２データキャッシュと、
をさらに具備し、
前記制御回路は、外部から受けるコマンドに応じて、前記第１データキャッシュのデータ及び前記第２データキャッシュのデータの一方を出力する、
ことを特徴とする請求項５に記載の半導体記憶装置。
【請求項７】
前記第１読み出しによる読み出しデータを保持する第１データキャッシュと、
前記第２読み出しによる読み出しデータを保持する第２データキャッシュと、
をさらに具備し、
前記制御回路は、
第１タイミングで前記第１データキャッシュのデータを出力し、
第２タイミングで外部からコマンドを受けた場合に、前記第２データキャッシュのデータを出力する、
ことを特徴とする請求項５に記載の半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本実施形態は、半導体記憶装置に関する。
【背景技術】
【０００２】
メモリセルが三次元に配列されたＮＡＮＤ型フラッシュメモリが知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−１０８７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
実施形態は、データの信頼性がより高い半導体記憶装置を提供する。
【課題を解決するための手段】
【０００５】
実施形態に係る半導体記憶装置は、複数のメモリストリングを備え、前記複数のメモリストリングの各々は直列接続された複数のメモリセルを有する、メモリセルアレイと、前記複数のメモリストリングに共通接続された複数のワード線と、前記複数のワード線の各々に接続された複数のメモリセルからなるページに対して書き込み動作及び読み出し動作を制御する制御回路とを具備する。前記制御回路は、メモリストリングに流れるセル電流を測定し、セル電流の測定結果に基づいて、ワード線に印加される書き込み電圧を補正する。
【０００６】
実施形態に係る半導体記憶装置は、複数のページを備え、前記複数のページの各々は複数のメモリセルを有する、メモリセルアレイと、前記複数のページにそれぞれ接続された複数のワード線と、ページに対して書き込み動作及び読み出し動作を制御する制御回路とを具備する。前記制御回路は、前記ページの一部であるサンプリング領域に書き込むべき第１レベルのビット数をカウントし、前記カウント値をフラグデータとして前記ページの冗長領域に書き込み、第１読み出しにおいて、前記冗長領域から前記フラグデータを読み出すと共に、前記サンプリング領域から読み出された第１レベルのビット数をカウントし、第２読み出しにおいて、前記フラグデータと前記第１読み出しによるカウント値との差に基づいて、ワード線に印加される読み出し電圧を補正する。
【図面の簡単な説明】
【０００７】
【図１】第１実施形態に係るメモリシステムのブロック図。
【図２】第１実施形態に係るＮＡＮＤ型フラッシュメモリのブロック図。
【図３】メモリセルアレイに含まれる１個のブロックの回路図。
【図４】メモリセルアレイの一部領域の断面図。
【図５】メモリセルトランジスタの閾値分布を説明する図。
【図６】センスアンプ部及びページバッファのブロック図。
【図７】センスアンプの主要部及びセル電流測定回路の回路図。
【図８】第１実施形態に係るセル電流測定動作を含む下位ページプログラム動作のタイミングチャート。
【図９】信号ＶＢＬＣとセル電流ｉＣＥＬＬとの関係の一例を説明するグラフ。
【図１０】信号ＶＢＬ_ＤＡＣと動作パラメータとの関係を示す図。
【図１１】信号ＶＢＬ_ＤＡＣと動作パラメータとの関係の他の一例を示す図。
【図１２】第１実施形態に係る消去動作のタイミングチャート。
【図１３】第１実施形態に係る下位ページプログラム動作のフローチャート。
【図１４】フラグデータを書き込むための冗長領域を説明する図。
【図１５】第１実施形態に係る選択ワード線に印加される電圧波形。
【図１６】第１乃至第４プログラムパラメータセットに含まれる初期プログラム電圧及びステップアップ電圧の一例を説明する図。
【図１７】第１実施形態に係る上位ページプログラム動作のフローチャート。
【図１８】第１実施形態に係る上位ページプログラム動作のタイミングチャート。
【図１９】第１実施形態に係る読み出し動作のタイミングチャート。
【図２０】ＮＡＮＤストリングの領域を説明する断面図。
【図２１】信号ＶＢＬ_ＤＡＣと消去パラメータセットとの関係を示す図。
【図２２】第２実施形態に係るメモリセルアレイを中心に示したブロック図。
【図２３】第２実施形態に係るデータ転送動作のタイミングチャート。
【図２４】第２実施形態に係る下位ページプログラム動作のフローチャート。
【図２５】第２実施形態に係る上位ページプログラム動作のフローチャート。
【図２６】第１実施例に係る下位ページ読み出し動作のフローチャート。
【図２７】第１実施例に係る下位ページ読み出し動作のタイミングチャート。
【図２８】第１実施例に係る読み出し動作の電圧波形。
【図２９】第１実施例に係る上位ページ読み出し動作のフローチャート。
【図３０】フラグデータとカウント値との差と読み出しレベルとの関係を示す図。
【図３１】第２実施例に係る読み出し動作のタイミングチャート。
【図３２】第３実施例に係る下位ページ読み出し動作のフローチャート。
【図３３】第３実施例に係る下位ページ読み出し動作の電圧波形。
【図３４】第３実施形態に係るメモリコントローラ及びＮＡＮＤ型フラッシュメモリの書き込み動作を示すタイミングチャート。
【図３５】第３実施形態に係るメモリコントローラ及びＮＡＮＤ型フラッシュメモリの書き込み動作を示すフローチャート。
【図３６】第３実施形態に係るメモリコントローラ及びＮＡＮＤ型フラッシュメモリの読み出し動作を示すフローチャート。
【図３７】図３６に続く読み出し動作を示すフローチャート。
【図３８】第４実施形態に係るメモリコントローラ及びＮＡＮＤ型フラッシュメモリの書き込み動作を示すタイミングチャート。
【図３９】第４実施形態に係るメモリコントローラ及びＮＡＮＤ型フラッシュメモリの書き込み動作を示すフローチャート。
【図４０】第４実施形態に係るメモリコントローラ及びＮＡＮＤ型フラッシュメモリの読み出し動作を示すフローチャート。
【発明を実施するための形態】
【０００８】
以下、実施形態について図面を参照して説明する。ただし、図面は模式的または概念的なものであり、各図面の寸法および比率などは必ずしも現実のものと同一とは限らない。以下に示す幾つかの実施形態は、本発明の技術思想を具体化するための装置および方法を例示したものであって、構成部品の形状、構造、配置などによって、本発明の技術思想が特定されるものではない。なお、以下の説明において、同一の機能及び構成を有する要素については、同一符号を付し、重複説明は必要な場合にのみ行う。
【０００９】
半導体記憶装置は、データを電気的に書き換え可能な不揮発性半導体メモリであり、以下の実施形態では、半導体記憶装置としてＮＡＮＤ型フラッシュメモリを例に挙げて説明する。また、ＮＡＮＤ型フラッシュメモリとして、メモリセルが半導体基板上に積層された三次元積層型ＮＡＮＤ型フラッシュメモリを例に挙げて説明する。
【００１０】
［第１実施形態］
［１−１］  メモリシステムの構成
まず、本実施形態に係る半導体記憶装置を含むメモリシステムの構成について説明する。図１は、本実施形態に係るメモリシステム３００のブロック図である。メモリシステム３００は、ＮＡＮＤ型フラッシュメモリ１００、及びメモリコントローラ２００を備える。メモリシステム３００の例としては、ＳＤＴＭカードのようなメモリカードや、ＳＳＤ（Solid State Drive）等が挙げられる。
【００１１】
ＮＡＮＤ型フラッシュメモリ１００は、複数のメモリセルを備え、データを不揮発に記憶する。ＮＡＮＤ型フラッシュメモリの構成の詳細は後述する。
【００１２】
メモリコントローラ２００は、ホスト機器４００からの命令に応答して、ＮＡＮＤ型フラッシュメモリ１００に対して書き込み、読み出し、及び消去等を命令する。また、メモリコントローラ２００は、ＮＡＮＤ型フラッシュメモリ１００のメモリ空間を管理する。メモリコントローラ２００は、ホストインターフェース回路（Host I/F）２１０、ＣＰＵ（Central Processing unit)２２０、ＲＯＭ（Read Only Memory）２３０、ＲＡＭ（Random Access Memory）２４０、ＥＣＣ（Error Checking and Correcting）回路２５０、及びＮＡＮＤインターフェース回路（NAND I/F）２６０を備える。
【００１３】
ホストインターフェース回路２１０は、コントローラバスを介してホスト機器４００と接続され、ホスト機器４００との間でインターフェース処理を行う。また、ホストインターフェース回路２１０は、ホスト機器４００との間で命令及びデータの送受信を行う。
【００１４】
ＣＰＵ２２０は、メモリコントローラ２００全体の動作を制御する。例えば、ＣＰＵ２２０は、ホスト機器４００から書き込み命令を受けた場合に、それに応答して、ＮＡＮＤインターフェースに基づく書き込み命令を発行する。読み出し及び消去の際も同様である。また、ＣＰＵ２２０は、ウェアレベリング等、ＮＡＮＤ型フラッシュメモリ１００を管理するための様々な処理を実行する。
【００１５】
ＲＯＭ２３０は、ＣＰＵ２２０によって使用されるファームウェア等を格納する。ＲＡＭ２４０は、ＣＰＵ２２０の作業エリアとして使用され、ＲＯＭ２３０からロードされたファームウェアや、ＣＰＵ２２０が作成した各種テーブルを格納する。また、ＲＡＭ２４０は、データバッファとしても使用され、ホスト機器４００から送られたデータ、及びＮＡＮＤ型フラッシュメモリ１００から送られたデータ等を一時的に保持する。
【００１６】
ＥＣＣ回路２５０は、データの書き込み時には、書き込みデータに対してエラー訂正符号を生成し、このエラー訂正符号を書き込みデータに付加してＮＡＮＤインターフェース回路２６０に送る。また、ＥＣＣ回路２５０は、データの読み出し時には、読み出しデータに対して読み出しデータに含まれるエラー訂正符号を用いてエラー検出及びエラー訂正を行う。なお、ＥＣＣ回路２５０は、ＮＡＮＤインターフェース回路２６０内に設けるようにしても良い。
【００１７】
ＮＡＮＤインターフェース回路２６０は、ＮＡＮＤバスを介してＮＡＮＤ型フラッシュメモリ１００と接続され、ＮＡＮＤ型フラッシュメモリ１００との間でインターフェース処理を行う。また、ＮＡＮＤインターフェース回路２６０は、ＮＡＮＤ型フラッシュメモリ１００との間で命令及びデータの送受信を行う。
【００１８】
［１−１−１］  ＮＡＮＤ型フラッシュメモリ１００の構成
次に、ＮＡＮＤ型フラッシュメモリ１００の構成について説明する。図２は、本実施形態に係るＮＡＮＤ型フラッシュメモリ１００のブロック図である。ＮＡＮＤ型フラッシュメモリ１００は、メモリセルアレイ１１１、ロウデコーダ（Ｒ／Ｄ）１１２、センスアンプ部１１３、ページバッファ１１５、カラムデコーダ１１６、ドライバ１１７、電圧発生回路（チャージポンプ）１１８、入出力回路１１９、制御回路１２０、アドレス・コマンドレジスタ１２１、及びレジスタ１２２を備える。
【００１９】
メモリセルアレイ１１１は、それぞれがワード線及びビット線に関連付けられた不揮発性メモリセルの集合である複数のブロックＢＬＫを備える。図２では、一例として、４個のブロックＢＬＫ０〜ＢＬＫ３を示している。ブロックＢＬＫは、データの消去単位となり、同一ブロックＢＬＫ内のデータは一括して消去される。ブロックＢＬＫの各々は、メモリセルが直列接続されたＮＡＮＤストリング１１４の集合である複数のストリングユニットＳＵを備える。図２では、一例として、４個のストリングユニットＳＵ０〜ＳＵ３を示している。もちろん、ブロックＢＬＫの数や、１ブロックＢＬＫ内のストリングユニットＳＵの数は任意に設定可能である。
【００２０】
ロウデコーダ１１２は、アドレス・コマンドレジスタ１２１からブロックアドレス信号及びロウアドレス信号を受け、これらの信号に基づいて、対応するブロック内のワード線を選択する。カラムデコーダ１１６は、アドレス・コマンドレジスタ１２１からカラムアドレス信号を受け、このカラムアドレス信号に基づいて、ビット線を選択する。
【００２１】
センスアンプ部１１３は、データの読み出し時には、メモリセルからビット線に読み出されたデータをセンス及び増幅する。また、センスアンプ部１１３は、データの書き込み時には、書き込みデータをメモリセルに転送する。メモリセルアレイ１１１へのデータの読み出し及び書き込みは、複数のメモリセルを単位として行われ、この単位がページとなる。
【００２２】
ページバッファ１１５は、ページ単位でデータを保持する。ページバッファ１１５は、データの読み出し時には、センスアンプ部１１３からページ単位で転送されたデータを一時的に保持し、これをシリアルに入出力回路１１９へ転送する。また、ページバッファ１１５は、データの書き込み時には、入出力回路１１９からシリアルに転送されたデータを一時的に保持し、これをページ単位でセンスアンプ部１１３へ転送する。
【００２３】
入出力回路１１９は、メモリコントローラ２００との間で、ＮＡＮＤバスを介した種々のコマンド及びデータの送受信を行う。アドレス・コマンドレジスタ１２１は、入出力回路１１９からコマンド及びアドレスを受け、これらを一時的に保持する。
【００２４】
ドライバ１１７は、データの書き込み、読み出し、及び消去に必要な電圧を、ロウデコーダ１１２、センスアンプ部１１３、及び図示せぬソース線制御回路等に供給する。ドライバ１１７によって生成された電圧は、ロウデコーダ１１２、センスアンプ部１１３、及びソース線制御回路を介してメモリセル（ワード線、セレクトゲート線、ビット線、及びソース線）に印加される。電圧発生回路１１８は、外部から与えられる電源電圧を昇圧して、各種電圧をドライバ１１７に供給する。
【００２５】
レジスタ１２２は、例えばパワーオン時に、メモリセルアレイ１１１のＲＯＭフューズから読み出された管理データを一時的に保持する。また、レジスタ１２２は、メモリセルアレイ１１１の動作に必要な各種データを一時的に保持する。レジスタ１２２は、例えばＳＲＡＭから構成される。
【００２６】
制御回路１２０は、ＮＡＮＤ型フラッシュメモリ１００全体の動作を制御する。
【００２７】
［１−１−２］  メモリセルアレイ１１１の構成
次に、メモリセルアレイ１１１の構成について説明する。図３は、メモリセルアレイ１１１に含まれる１個のブロックＢＬＫの回路図である。
【００２８】
ブロックＢＬＫは、例えば４個のストリングユニットＳＵ０〜ＳＵ３を備える。ストリングユニットＳＵの各々は、複数のＮＡＮＤストリング１１４を備える。
【００２９】
ＮＡＮＤストリング１１４の各々は、例えば８個のメモリセルトランジスタＭＴ（ＭＴ０〜ＭＴ７）、及び選択トランジスタＳＴ１、ＳＴ２を備える。なお、以下の説明において、メモリセルトランジスタとメモリセルとは同意である。メモリセルトランジスタＭＴの各々は、制御ゲートと電荷蓄積層とを含む積層ゲートを備え、データを不揮発に記憶する。なお、メモリセルトランジスタＭＴの個数は８個に限定されず、１６個、３２個、６４個、又は１２８個等であってもよく、その数は任意に設定可能である。メモリセルトランジスタＭＴは、選択トランジスタＳＴ１、ＳＴ２間にその電流経路が直列接続されるようにして配置される。この直列接続の一端側のメモリセルトランジスタＭＴ７の電流経路は選択トランジスタＳＴ１の電流経路の一端に接続され、他端側のメモリセルトランジスタＭＴ０の電流経路は選択トランジスタＳＴ２の電流経路の一端に接続される。
【００３０】
ストリングユニットＳＵ０に含まれる選択トランジスタＳＴ１のゲートは、セレクトゲート線ＳＧＤ０に共通接続され、上記と同様に、ストリングユニットＳＵ１〜ＳＵ３には、セレクトゲート線ＳＧＤ１〜ＳＧＤ３が接続される。同一のブロックＢＬＫ内にある複数の選択トランジスタＳＴ２のゲートは、同一のセレクトゲート線ＳＧＳに共通接続される。同一のブロックＢＬＫ内にあるメモリセルトランジスタＭＴ０〜ＭＴ７の制御ゲートはそれぞれ、ワード線ＷＬ０〜ＷＬ７に共通接続される。なお、各ストリングユニットＳＵに含まれる選択トランジスタＳＴ２は、選択トランジスタＳＴ１と同様に、別々のセレクトゲート線ＳＧＳ０〜ＳＧＳ３に接続されていても良い。
【００３１】
また、メモリセルアレイ１１１内でマトリクス状に配置されたＮＡＮＤストリング１１４のうち、同一行にあるＮＡＮＤストリング１１４の選択トランジスタＳＴ１の電流経路の他端は、ビット線ＢＬ０〜ＢＬ（Ｌ−１）のいずれかに共通接続される。（Ｌ−１）は１以上の自然数である。すなわち、ビット線ＢＬは、複数のブロックＢＬＫ間でＮＡＮＤストリング１１４を共通に接続する。また、選択トランジスタＳＴ２の電流経路の他端は、ソース線ＳＬに共通に接続される。ソース線ＳＬは、例えば複数のブロック間でＮＡＮＤストリング１１４を共通に接続する。
【００３２】
前述の通り、同一のブロックＢＬＫ内にあるメモリセルトランジスタＭＴのデータは、一括して消去される。これに対してデータの読み出し及び書き込みは、いずれかのブロックＢＬＫのいずれかのストリングユニットＳＵにおける、いずれかのワード線ＷＬに共通接続された複数のメモリセルトランジスタＭＴにつき、一括して行われる。この単位をページと呼ぶ。
【００３３】
次に、メモリセルアレイ１１１の断面構造の一例について説明する。図４は、メモリセルアレイ１１１の一部領域の断面図である。
【００３４】
図示しない半導体基板の上方に、ソース線ＳＬとして機能する配線層２０が形成される。ソース線ＳＬの上方には、選択ゲート線ＳＧＳとして機能する導電膜２１ａが形成される。導電膜２１ａの上方には、ワード線ＷＬとして機能する複数の導電膜２２が形成される。導電膜２２の上方には、選択ゲート線ＳＧＤとして機能する導電膜２１ｂが形成される。導電膜２１ａ、２１ｂ、２２の間には、これらを電気的に分離する電極間絶縁膜が形成される。
【００３５】
そして、導電膜２１ａ、２１ｂ、２２、及び電極間絶縁膜には、これらを貫通し、かつ半導体基板の表面に対して垂直方向（Ｄ３方向）に延在するメモリホールが形成される。例えば、製造工程に起因して、メモリホールの直径は、上方に向かうほど大きくなる。また、メモリホールの下部の直径と上部の直径との差は、メモリホールが長くなるほど大きくなる。
【００３６】
選択トランジスタＳＴ２となる領域に形成されたメモリホール内には、ゲート絶縁膜２３ａ、及び半導体層２４ａが順次形成され、これらを含む柱状構造が形成される。メモリセルトランジスタＭＴとなる領域に形成されたメモリホール内には、ブロック絶縁膜２５、電荷蓄積層（絶縁膜）２６、ゲート絶縁膜２７、及び半導体層２８が順次形成され、これらを含む柱状構造が形成される。選択トランジスタＳＴ１となる領域に形成されたメモリホール内には、ゲート絶縁膜２３ｂ、及び半導体層２４ｂが順次形成され、これらを含む柱状構造が形成される。半導体層２４ａ、２８、２４ｂは、ＮＡＮＤストリング１１４の電流経路として機能し、メモリセルトランジスタＭＴの動作時にチャネルが形成される領域である。
【００３７】
このようにして、各ＮＡＮＤストリング１１４において、選択トランジスタＳＴ２、複数のメモリセルトランジスタＭＴ、及び選択トランジスタＳＴ１が順次積層される。半導体層２４ｂ上には、ビット線ＢＬとして機能する配線層２９が形成される。ビット線ＢＬは、方向Ｄ１に延在するように形成される。
【００３８】
以上の構成が、図４の奥行き方向（方向Ｄ２）に複数配列されており、方向Ｄ２に並ぶ複数のＮＡＮＤストリング１１４の集合によってストリングユニットＳＵが形成される。また、同一のストリングユニットＳＵ内に含まれる複数のセレクトゲート線ＳＧＤ、複数のセレクトゲート線ＳＧＳ、及び複数のワード線ＷＬはそれぞれ、共通接続される。
【００３９】
なお、メモリセルアレイ１１１の構成についてはその他の構成であっても良い。すなわちメモリセルアレイ１１１の構成については、例えば、“三次元積層不揮発性半導体メモリ”という２００９年３月１９日に出願された米国特許出願１２／４０７，４０３号に記載されている。また、“三次元積層不揮発性半導体メモリ”という２００９年３月１８日に出願された米国特許出願１２／４０６，５２４号、“不揮発性半導体記憶装置及びその製造方法”という２０１０年３月２５日に出願された米国特許出願１２／６７９，９９１号“半導体メモリ及びその製造方法”という２００９年３月２３日に出願された米国特許出願１２／５３２，０３０号に記載されている。これらの特許出願は、その全体が本願明細書において参照により援用されている。
【００４０】
［１−１−３］  メモリセルトランジスタＭＴの閾値分布
次に、メモリセルトランジスタＭＴの閾値分布（閾値電圧分布）の一例について説明する。図５は、メモリセルトランジスタＭＴの閾値分布を説明する図である。
【００４１】
例えば、メモリセルトランジスタＭＴは、その閾値に応じて２ビットのデータを記憶可能である。メモリセルトランジスタＭＴに記憶される２ビットデータは、閾値の低いものから順番に、例えば、“１１”、“０１”、“００”、“１０”である。“１１”、“０１”、“００”、“１０”は、左側の数字が上位ビット、右側の数字が下位ビットを表している。下位ビットデータの書込み単位を「下位ページ」と呼び、上位ビットデータの書込み単位を「上位ページ」と呼ぶ。
【００４２】
下位ページプログラム（lower page program）が行われると、図５（ａ）に示す消去状態（“Ｅ”レベル）の閾値分布は、図５（ｂ）に示す消去状態（“Ｅ”レベル）の閾値分布と、中間レベル（“ＬＭ”レベル）の閾値分布との２つの閾値分布に変化する。“ＬＭ”レベルは、読み出しレベルＡＲＬより高い閾値を有する。“ＬＭ”レベルは、読み出しレベルＡＲＬより若干高いベリファイレベルＭＬ２Ｖを用いてプログラムされ、ベリファイレベルＭＬ２Ｖより高い閾値を有する。“Ｅ”レベルは、データ“１”に対応付けられ、“ＬＭ”レベルは、データ“０”に対応付けられる。
【００４３】
下位ページプログラムの後に上位ページプログラム（upper page program）が行われると、図５（ｂ）に示す２つの閾値分布は、図５（ｃ）に示すように、４つの閾値分布に変化する。メモリセルトランジスタＭＴは、“Ｅ”レベル、“Ａ”レベル、“Ｂ”レベル、及び“Ｃ”レベルのうちいずれかの閾値を取ることが可能である。“Ｅ”レベル、“Ａ”レベル、“Ｂ”レベル、及び“Ｃ”レベルはそれぞれ、データ“１１”、“０１”、“００”、“１０”に対応付けられる。
【００４４】
“Ｅ”レベルは、電荷蓄積層内の電荷が引き抜かれて、データが消去された状態における閾値であり、例えば負の値を有する。“Ｅ”レベルは、ベリファイ電圧ＥＶよりも低い。“Ａ”〜“Ｃ”レベルは、電荷蓄積層内に電荷が注入された状態の閾値であり、例えば正の値を有する。“Ａ”レベルは、読み出しレベルＡＲより高く、かつ読み出しレベルＢＲより低い閾値を有する。“Ｂ”レベルは、読み出しレベルＢＲより高く、かつ読み出しレベルＣＲより低い閾値を有する。“Ｃ”レベルは、読み出しレベルＣＲより高く、かつ電圧ＶＲＥＡＤより低い閾値を有する。
【００４５】
“Ａ”レベルは、読み出しレベルＡＲより若干高いベリファイレベルＡＶを用いてプログラムされ、ベリファイレベルＡＶより高い閾値を有する。“Ｂ”レベルは、読み出しレベルＢＲより若干高いベリファイレベルＢＶを用いてプログラムされ、ベリファイレベルＢＶより高い閾値を有する。“Ｃ”レベルは、読み出しレベルＣＲより若干高いベリファイレベルＣＶを用いてプログラムされ、ベリファイレベルＣＶより高い閾値を有する。
【００４６】
［１−１−４］  センスアンプ部１１３及びページバッファ１１５の構成
次に、センスアンプ部１１３及びページバッファ１１５の構成について説明する。図６は、センスアンプ部１１３及びページバッファ１１５のブロック図である。
【００４７】
センスアンプ部１１３は、ビット線ＢＬ０〜ＢＬ（Ｌ−１）にそれぞれ対応して設けられたセンスアンプＳＡ＜０＞〜ＳＡ＜Ｌ−１＞を備える。センスアンプＳＡの各々は、対応するビット線ＢＬに読み出されたデータをセンス及び増幅し、また対応するビット線ＢＬに書き込みデータを転送する。
【００４８】
ページバッファ１１５は、例えば３個のデータキャッシュＬＤＬ、ＵＤＬ、ＸＤＬを備える。例えば、データキャッシュＬＤＬは、下位ページを一時的に保持するために使用され、データキャッシュＵＤＬは、上位ページを一時的に保持するために使用され、データキャッシュＸＤＬは、入出力回路１１９に接続され、入出力回路１１９から送られたデータ、及び入出力回路１１９へ送るデータを一時的に保持する。すなわち、ページバッファ１１５は、データキャッシュＬＤＬ、ＵＤＬが使用中であっても、データキャッシュＸＤＬを用いて入出力回路１１９からのデータを受け付けることができる。センスアンプＳＡ＜０＞〜ＳＡ＜Ｌ−１＞と同様に、データキャッシュＬＤＬ、ＵＤＬ、ＸＤＬの各々は、ビット線ＢＬ０〜ＢＬ（Ｌ−１）にそれぞれ対応して設けられたＬ個のデータキャッシュ部分を備える。
【００４９】
［１−１−５］  センスアンプＳＡ及びセル電流測定回路４０の構成
次に、センスアンプＳＡ及びセル電流測定回路４０の構成について説明する。図７は、センスアンプＳＡの主要部及びセル電流測定回路４０の回路図である。
【００５０】
まず、センスアンプＳＡの構成について説明する。センスアンプＳＡは、ｐチャネルＭＯＳトランジスタ３１、及びｎチャネルＭＯＳトランジスタ３２〜３５を備える。
【００５１】
トランジスタ３５は、ゲートに信号ＶＢＬＣが入力され、電流経路の一端が、対応するビット線ＢＬに接続される。トランジスタ３５は、対応するビット線ＢＬを、信号ＶＢＬＣのレベルに応じた電圧にクランプする機能を有する。信号ＶＢＬＣは、ドライバ１１７に含まれるビット線ドライバ（ＢＬＤＲ）１１７ａから供給される。トランジスタ３４は、電流経路の一端がトランジスタ３５の電流経路の他端に接続され、電流経路の他端がノードＳＥＮに接続され、ゲートに信号ＸＸＬが入力される。
【００５２】
トランジスタ３３は、電流経路の一端がトランジスタ３５の電流経路の他端に接続され、ゲートに信号ＢＬＸが入力される。トランジスタ３２は、電流経路の一端がトランジスタ３３の電流経路の他端に接続され、電流経路の他端に電源電圧ＶＨＳＡが印加され、ゲートに信号ＢＬＹが入力される。トランジスタ３１は、電流経路の一端がトランジスタ３３の電流経路の他端に接続され、電流経路の他端に電源電圧ＶＨＳＡが印加され、ゲートに信号ＩＮＶが入力される。トランジスタ３１、３２は、トランスファーゲートを構成する。
【００５３】
データの読み出し時には、信号ＢＬＸ、ＢＬＹが“Ｈ”レベル、信号ＩＮＶが“Ｌ”レベルとされ、トランスファーゲート（トランジスタ３１、３２）、及びトランジスタ３３がオン状態とされる。これにより、トランジスタ３５、ビット線ＢＬ、及びＮＡＮＤストリングを介してセル電流ｉＣＥＬＬが流れる。この時、信号ＶＢＬＣのレベルに応じてトランジスタ３５のオン状態が制御され、セル電流ｉＣＥＬＬが制御される。
【００５４】
選択メモリセルのデータがビット線ＢＬに読み出されると、信号ＸＸＬが“Ｈ”レベルとされ、トランジスタ３４がオン状態とされる。これにより、ビット線ＢＬに読み出されたデータがノードＳＥＮに転送される。さらに、ノードＳＥＮに転送されたデータは、ページバッファ１１５内のいずれかのデータキャッシュに保持される。
【００５５】
次に、セル電流測定回路４０の構成について説明する。セル電流測定回路４０は、ソース線ＳＬをある電圧に維持する機能を有する。セル電流測定回路４０は、ソース線ＳＬごとに設けられる。セル電流測定回路４０は、定電流源４１、オペアンプ４２、及びｎチャネルＭＯＳトランジスタ４３を備える。セル電流測定回路４０は、制御回路１２０が備えていても良いし、図示せぬソース線制御回路が備えていても良い。
【００５６】
定電流源４１は、ソース線ＳＬに定電流ｉＣＯＮＳＴを供給する。定電流源４１は、電源電圧ＶＤＤＳＡとソース線ＳＬとの間に接続される。トランジスタ４３のドレインはソース線ＳＬに接続され、ソースには接地電圧ＧＮＤが印加される。オペアンプ４２の正極入力端子はソース線ＳＬに接続され、負極入力端子には参照電圧ＶＲＥＦが印加され、出力端子はトランジスタ４３のゲートに接続される。また、オペアンプ４２の出力端子から出力される信号ＧＳＬＤＲＶは、制御回路１２０に入力される。
【００５７】
なお、セル電流を測定する回路は、図７の構成に限定されず、例えば“半導体記憶装置”という２０１３年３月１５日に出願された米国特許出願１３／８３２，９８３号に記載されている。この特許出願は、その全体が本願明細書において参照により援用されている。
【００５８】
［１−２］  動作
次に、上記のように構成されたＮＡＮＤ型フラッシュメモリ１００の動作について説明する。
【００５９】
［１−２−１］  セル電流測定動作
まず、セル電流測定動作について説明する。セル電流測定動作は、下位ページプログラム動作に含まれる。図８は、セル電流測定動作を含む下位ページプログラム動作のタイミングチャートである。図８には、ビット線ＢＬ、ソース線ＳＬ、及びセル電流測定回路４０から出力される信号ＧＳＬＤＲＶの波形を示している。セル電流測定動作は、下位ページプログラム動作の最初のステップにおいて実行される。
【００６０】
下位ページプログラムを行う前は、メモリセルトランジスタは、消去状態（データが書かれていない状態）である。制御回路１２０は、下位ページプログラムの対象である選択ページに対して、消去状態のメモリセルトランジスタがオンするレベル、例えば読み出しレベルＣＲを用いて読み出し動作を行う。
【００６１】
図７に示すように、セル電流測定回路４０に含まれる定電流源４１は、ソース線ＳＬに対して定電流ｉＣＯＮＳＴを供給する。これにより、ソース線ＳＬには、ビット線ＢＬからセル電流ｉＣＥＬＬが流入すると共に、定電流源４１から定電流ｉＣＯＮＳＴが流入する。一方、ソース線ＳＬからは、トランジスタ４３を介して、放電電流ｉＳＬＤＩＳが接地端子ＧＮＤに向けて流出する。このため、ソース線ＳＬの電圧は、流入するセル電流ｉＣＥＬＬ及び定電流ｉＣＯＮＳＴと、流出する放電電流ｉＳＬＤＩＳとのバランスによって変動する。
【００６２】
放電電流ｉＳＬＤＩＳの大きさは、トランジスタ４３によって制御される。トランジスタ４３の導通の程度は、オペアンプ４２の出力信号ＧＳＬＤＲＶによって制御される。出力信号ＧＳＬＤＲＶは、オペアンプ４２によるソース線ＳＬの電圧と参照電圧ＶＲＥＦとの比較結果を表すアナログ信号である。従って、参照電圧ＶＲＥＦと比較してソース線ＳＬの電圧が高いほど、出力信号ＧＳＬＤＲＶの値が正に大となり、トランジスタ４３の導通の程度が高くなり、放電電流ｉＳＬＤＩＳが大きくなり、その結果、ソース線ＳＬの電圧が低下する。逆に、参照電圧ＶＲＥＦと比較してソース線ＳＬの電圧が低いほど、出力信号ＧＳＬＤＲＶの値が負に大となり、トランジスタ４３の導通の程度が低くなり、放電電流ｉＳＬＤＩＳが小さくなり、その結果、ソース線ＳＬの電圧が上昇する。このようにして、ソース線ＳＬの電圧は、常に参照電圧ＶＲＥＦに近づくようにフィードバック制御され続ける。
【００６３】
制御回路１２０は、オペアンプ４２の出力信号ＧＳＬＤＲＶを受け、出力信号ＧＳＬＤＲＶをアナログ／デジタル（Ａ／Ｄ）変換する。続いて、制御回路１２０は、信号ＧＳＬＤＲＶが目標となる基準信号Ｆ_ＶＣＬＡＭＰと同じになるまで、信号ＶＢＬ_ＤＡＣを変化させる。基準信号Ｆ_ＶＣＬＡＭＰは、例えばレジスタ１２２に格納される。信号ＶＢＬ_ＤＡＣは、ビット線ドライバ１１７ａに供給される。ビット線ドライバ１１７ａは、信号ＶＢＬ_ＤＡＣに基づいて信号ＶＢＬＣを生成し、この信号ＶＢＬＣをセンスアンプＳＡに含まれるトランジスタ３５のゲートに供給する。最終的には、信号ＶＢＬ_ＤＡＣによって調整された信号ＶＢＬＣに応じて、最適な（目標とする）セル電流ｉＣＥＬＬが実現される。ｉＣＥＬＬ測定フェーズで取得されかつ最適化されたＶＢＬ_ＤＡＣは、フラグデータとして、プログラムフェーズでページの冗長領域にセットされる。
【００６４】
図９は、信号ＶＢＬＣとセル電流ｉＣＥＬＬとの関係の一例を説明するグラフである。図９の横軸は、ライト／イレース回数（Ｗ／Ｅ回数）を表している。図９の“Fresh”は、ＮＡＮＤ型フラッシュメモリ１００のライト／イレース回数が概略ゼロの状態であり、例えば、製品出荷時の状態である。
【００６５】
図９の例では、セル電流ｉＣＥＬＬの目標値は、１０７ｎＡ程度である。一般的に、Ｗ／Ｅ回数が増えるにつれて、セル電流ｉＣＥＬＬが低下する。よって、信号ＶＢＬＣのレベルがＷ／Ｅ回数に関わらず一定であると、Ｗ／Ｅ回数が少ない場合、セル電流ｉＣＥＬＬが大きくなり、すなわち、消費電流が大きくなる。一方、本実施形態では、書き込み時にセル電流が測定され、また、セル電流ｉＣＥＬＬが目標値になるように、最適な信号ＶＢＬＣが生成される。これにより、特に、Ｗ／Ｅ回数が少ない時期のセル電流ｉＣＥＬＬが削減できる。
【００６６】
なお、プログラム動作では、入出力回路１１９からページバッファ１１５内のデータキャッシュに書き込みデータをロードする内部データロード動作が行われる。よって、本実施形態のセル電流測定動作を内部データロード動作と並列に行うようにしても良い。これにより、セル電流測定動作を行う時間を新たに設ける必要がない。
【００６７】
［１−２−２］  動作パラメータの設定
前述したように、Ｗ／Ｅ回数が増えるにつれて、セル電流ｉＣＥＬＬが低下する。そこで、本実施形態では、セル電流ｉＣＥＬＬを制御するために使用される信号ＶＢＬ_ＤＡＣを利用して、メモリセルアレイの劣化具合を判定する。そして、判定されたメモリセルアレイの劣化具合に応じて、メモリセルアレイ１１１の動作パラメータを変更するようにしている。具体的には、メモリセルアレイの劣化具合に基づいて、プログラム動作、読み出し動作、及び消去動作に使用する電圧のパラメータを補正する。
【００６８】
図１０は、信号ＶＢＬ_ＤＡＣと動作パラメータとの関係を示す図である。プログラムパラメータセットには、最初のプログラムループで使用する初期プログラム電圧ＩＶＰＧＭ、及びプログラムループ毎に増えるステップアップ電圧ＤＶＰＧＭが含まれる。また、プログラムパラメータセットは、ベリファイパラメータセットを含んでいても良い。ベリファイパラメータセットには、ベリファイレベル、及び電圧ＶＲＡＥＤが含まれる。リードパラメータセットには、読み出しレベル、及び電圧ＶＲＡＥＤが含まれる。各種パラメータセットは、レジスタ１２２に記憶される。
【００６９】
信号ＶＢＬ_ＤＡＣは、例えば４ビットである。製品出荷時において、読み出し及びベリファイの時の信号ＶＢＬ_ＤＡＣ＝０１００に相当する電圧設定（例えばＢＬ＝０．４Ｖ）であるものとする。Ｗ／Ｅ回数が増えるにつれてセル電流が減っていき、信号ＶＢＬ_ＤＡＣが増えていくが、信号ＶＢＬ_ＤＡＣ＝０１１１までは、フレッシュ状態と同じ扱いとし、第１プログラムパラメータセットを使用する。
【００７０】
信号ＶＢＬ_ＤＡＣ＝１０００になった時点で、Ｗ／Ｅ回数が１Ｋ（１０００回）に到達したと判定し、第２プログラムパラメータセットに変更する。また、信号ＶＢＬ_ＤＡＣ＝１０１１になった時点で、Ｗ／Ｅ回数が２Ｋに到達したと判定し、第３プログラムパラメータセットに変更する。さらに、信号ＶＢＬ_ＤＡＣ＝１１１０になった時点で、Ｗ／Ｅ回数が３Ｋに到達したと判定し、第４プログラムパラメータセットに変更する。
【００７１】
例えば、Ｗ／Ｅ回数が３Ｋくらいになると、書き込み時間が速くなる（すなわちループ回数が減る）と共に、閾値分布が広くなる。よって、第４プログラムパラメータセットでは、例えば、初期プログラム電圧ＩＶＰＧＭ及びステップアップ電圧ＤＶＰＧＭを低くする。これにより、フレッシュ状態の同等の閾値分布を実現できる。第２及び第３プログラムパラメータセットについても、メモリセルアレイの劣化具合に応じたパラメータ補正を行う。
【００７２】
図１１は、信号ＶＢＬ_ＤＡＣと動作パラメータとの関係の他の一例を示す図である。図１１の例では、製品出荷時に、セル電流ｉＣＥＬＬが目標値になるように、信号ＶＢＬ_ＤＡＣをトリミングしている。本来の設計ターゲットは、信号ＶＢＬ_ＤＡＣ＝０１００であるが、製造ばらつきにより、信号ＶＢＬ_ＤＡＣ＝０００１の場合にセル電流ｉＣＥＬＬが目標値になったとする。図１１に示すように、パラメータセットを、全体的に上に３つシフトさせる。このチップは、信号ＶＢＬ_ＤＡＣ＝０１０１になった場合に、設計ターゲット“１Ｋ  Ｗ／Ｅ”であると判定する。
【００７３】
なお、消去パラメータセットについても、プログラムパラメータセットと同様に、信号ＶＢＬ_ＤＡＣに基づいて変更される。図１２に示されるように、消去パラメータセットを切り替えるために、消去動作において、信号ＶＢＬ_ＤＡＣに対応するフラグデータの読み出しが行われる。そして、フラグデータに基づいて、消去パラメータセットが切り替えられる。消去パラメータセットには、消去時に仕様される消去電圧ＶＥＲＡ及びＷＬ電圧と、消去ベリファイ時に使用されるＢＬ電圧及びＷＬ電圧とが含まれる。
【００７４】
また、図１０及び図１１に示したプログラムパラメータセット、リードパラメータセット、及び消去パラメータセットは、同時に切り替えても良いし、個別に切り替えても良い。
【００７５】
［１−２−３］  下位ページプログラム動作
次に、下位ページプログラム動作について説明する。図１３は、下位ページプログラム動作のフローチャートである。
【００７６】
プログラム動作の最初のステップにおいて、制御回路１２０は、例えば読み出しレベルＣＲを用いて、セル電流測定動作を行う（ステップＳ１００）。セル電流測定動作は、前述した通りである。セル電流測定動作において、制御回路１２０は、信号ＶＢＬ_ＤＡＣを取得する（ステップＳ１０１）。また、制御回路１２０は、信号ＶＢＬ_ＤＡＣをフラグデータとしてページの冗長領域にセットする。
【００７７】
続いて、制御回路１２０は、信号ＶＢＬ_ＤＡＣに基づいて、プログラムパラメータセットを選択する（ステップＳ１０２）。このプログラムパラメータセットの選択は、図１０（又は図１１）の通りに行われる。選択されたプログラムパラメータセットは、複数のプログラムループを通して使用される。
【００７８】
続いて、制御回路１２０は、プログラムループ回数が最大値に到達しているか否かを判定する（ステップＳ１０３）。プログラムループ回数が最大値に到達していない場合、制御回路１２０は、選択ワード線にプログラム電圧を印加するプログラム動作を行う。（ステップＳ１０４）。このプログラム動作において、制御回路１２０は、ユーザーデータをページの通常領域に書き込むと共に、ステップＳ１０１で取得した信号ＶＢＬ_ＤＡＣをフラグデータとしてページの冗長領域にセットする。
【００７９】
図１４は、フラグデータを書き込むための冗長領域を説明する図である。１本のワード線ＷＬに接続された複数のメモリセルトランジスタからなるページは、通常データ（ユーザーデータ）を格納するための通常領域と、冗長領域とを備える。本実施形態では、この冗長領域に、フラグデータを格納する。通常領域には、フラグデータと共に書き込まれるユーザーデータが格納される。
【００８０】
続いて、制御回路１２０は、メモリセルトランジスタの閾値を確認するベリファイ動作を行う（ステップＳ１０５）。また、ベリファイ動作では、ステップＳ１０２で選択されたプログラムパラメータセットが使用される。さらに、ベリファイ動作において、制御回路１２０は、ステップＳ１０１で取得した信号ＶＢＬ_ＤＡＣを用いて、ビット線電圧の調整を行う。これにより、ベリファイ動作において、目標とするセル電流ｉＣＥＬＬが実現される。
【００８１】
続いて、制御回路１２０は、ベリファイがパスしたか否かを判定する（ステップＳ１０６）。ベリファイがパスしていない場合、制御回路１２０は、プログラム電圧をステップアップ電圧ＤＶＰＧＭだけステップアップして、再度、プログラムループを行う（ステップＳ１０７）。その後、ベリファイがパスするまで、プログラム電圧の印加と、ベリファイ動作とが繰り返される。
【００８２】
図１５は、選択ワード線に印加される電圧波形を示している。第１プログラムパラメータセットに含まれる初期プログラム電圧及びステップアップ電圧をそれぞれＩＶＰＧＭ１及びＤＶＰＧＭ１と表記する。下位ページプログラムでは、ベリファイレベルＭＬ２Ｖを用いてベリファイ動作が行われる。
【００８３】
図１６は、第１乃至第４プログラムパラメータセットに含まれる初期プログラム電圧及びステップアップ電圧の一例を説明する図である。図１６（ａ）乃至図１６（ｄ）はそれぞれ、第１乃至第４プログラムパラメータセットに対応する。
【００８４】
図１６の例では、第１乃至第４プログラムパラメータセットの初期プログラム電圧ＩＶＰＧＭ１乃至ＩＶＰＧＭ４は、この順にレベルが低くなる。また、第１乃至第４プログラムパラメータセットのステップアップ電圧ＤＶＰＧＭ１乃至ＤＶＰＧＭ４は、この順にレベルが低くなる。
【００８５】
［１−２−４］  上位ページプログラム動作
次に、上位ページプログラム動作について説明する。図１７は、上位ページプログラム動作のフローチャートである。図１８は、上位ページプログラム動作のタイミングチャートである。図１８には、ビット線ＢＬ、及びソース線ＳＬの波形を示している。
【００８６】
本実施形態では、フラグデータを読み出すための読み出し動作が上位ページプログラム動作に含まれる。フラグデータの読み出し動作は、上位ページプログラム動作の最初のステップにおいて実行される。
【００８７】
フラグデータは、下位ページに記憶されている。よって、制御回路１２０は、下位ページデータを判定するための読み出しレベルＡＲＬを用いて、フラグデータの読み出し動作を行う（ステップＳ２００）。続いて、制御回路１２０は、読み出されたフラグデータから信号ＶＢＬ_ＤＡＣを取得する（ステップＳ２０１）。また、制御回路１２０は、信号ＶＢＬ_ＤＡＣをフラグデータとしてページの冗長領域にセットする。
【００８８】
続いて、制御回路１２０は、信号ＶＢＬ_ＤＡＣに基づいて、プログラムパラメータセットを選択する（ステップＳ２０２）。このプログラムパラメータセットの選択は、図１０（又は図１１）の通りに行われる。
【００８９】
続いて、制御回路１２０は、プログラムループ回数が最大値に到達しているか否かを判定する（ステップＳ２０３）。プログラムループ回数が最大値に到達していない場合、制御回路１２０は、上位ページのプログラム動作を行う（ステップＳ２０４）。上位ページプログラムでは、“Ａ”レベル、“Ｂ”レベル、“Ｃ”レベルのプログラム動作が順次行われる。
【００９０】
このプログラム動作において、制御回路１２０は、ステップＳ２００で読み出したフラグデータをデータキャッシュＵＤＬにセットし、上位ページとして冗長領域に書き込む。すなわち、上位ページのフラグデータと、下位ページのフラグデータとは同じになる。これにより、上位ページをプログラムした後のフラグデータは、“１１”データ又は“００”データとなる。このように、２値のフラグデータは、それぞれの閾値分布が隣接していないので、メモリセルトランジスタＭＴの閾値変動によってデータが変化するのを抑制できる。その後の動作は、下位ページプログラムの場合と同様である。
【００９１】
［１−２−５］  読み出し動作
次に、読み出し動作について説明する。図１９は、読み出し動作のタイミングチャートである。本実施形態の読み出し動作は、フラグデータを読み出すための第１読み出しと、通常データを読み出すための第２読み出しとの２回の読み出し動作が行われる。
【００９２】
制御回路１２０は、例えば、読み出しコマンドを受けるとビジー信号を出力する。続いて、制御回路１２０は、フラグデータ用の第１読み出し動作を行う。このフラグデータの読み出し動作は、例えば図１７のフラグデータの読み出し動作（ステップＳ２００）と同じである。
【００９３】
続いて、制御回路１２０は、通常データを読み出すための第２読み出し動作を行う。この第２読み出し動作において、制御回路１２０は、ビット線電圧の調整動作を行う。これにより、第２読み出し動作において、目標とするセル電流ｉＣＥＬＬが実現される。さらに、制御回路１２０は、フラグデータに基づいてリードパラメータセットを選択し、このリードパラメータセットを使用して第２読み出し動作を行う。メモリセルアレイの劣化具合に応じた読み出し動作が実現できる。
【００９４】
なお、消去パラメータセットについても、プログラムパラメータセットと同様に、信号ＶＢＬ_ＤＡＣに基づいて選択される。消去動作の場合にも、図１９の読み出し動作と同様に、消去動作の前の最初のステップでフラグデータの読み出しが行われる。消去パラメータセットには、初期消去電圧ＩＶＥＲＡ、及びステップアップ電圧ＤＶＥＲＡが含まれる。また、消去時にワード線に印加する電圧を変えても良い。
【００９５】
［１−３］  積層型メモリセルアレイへの適用例
積層型メモリセルアレイでは、ＮＡＮＤストリングの下部と上部とでチャネルが形成される半導体層の直径が異なる。このため、ＮＡＮＤストリングの下部に含まれるメモリセルトランジスタと、ＮＡＮＤストリングの上部に含まれるメモリセルトランジスタとでは、動作特性が異なってくる可能性がある。そこで、ＮＡＮＤストリングをいくつかの領域に分けて管理し、領域ごとに動作パラメータを変えるようにする。
【００９６】
図２０は、ＮＡＮＤストリングの領域を説明する断面図である。ＮＡＮＤストリング１１４は、ボトム領域ＢＡ、ミドル領域ＭＡ、及びトップ領域ＴＡから構成される。なお、分割される領域の数は一例であり、任意に設定可能である。また、各領域に含まれるワード線の数（メモリセルトランジスタの数）も任意に設定可能である。
【００９７】
次に、消去動作時に使用される消去パラメータセットについて説明する。図２１は、信号ＶＢＬ_ＤＡＣと消去パラメータセットとの関係を示す図である。
【００９８】
図２１に示すように、ボトム領域ＢＡ、ミドル領域ＭＡ、及びトップ領域ＴＡごとに消去パラメータセットが用意される。
【００９９】
フレッシュ状態において、ボトム領域ＢＡ、ミドル領域ＭＡ、及びトップ領域ＴＡにはそれぞれ、第１乃至第３消去パラメータセットが使用される。第１消去パラメータセットにおいて、消去電圧ＶＥＲＡが２０Ｖ、消去時のワード線電圧が０．２Ｖである。第２乃至第１２の消去パラメータセットに含まれる電圧は、図２１の通りである。
【０１００】
このように、ボトム領域ＢＡ、ミドル領域ＭＡ、及びトップ領域ＴＡに応じて動作パラメータセットを変更することで、領域に応じたより最適な動作に実現できる。
【０１０１】
また、消去パラメータと同様に、プログラムパラメータ（ベリファイパラメータを含む）、及びリードパラメータについても、ボトム領域ＢＡ、ミドル領域ＭＡ、及びトップ領域ＴＡごとに設定することができる。
【０１０２】
なお、動作パラメータセット（プログラムパラメータセット、リードパラメータセット、及び消去パラメータセット）は、図２０よりさらに細分化して設定しても良く、例えば、ワード線単位で設定しても良い。
【０１０３】
［１−４］  効果
以上詳述したように第１実施形態では、下位ページプログラム動作において、セル電流測定動作を行う。また、セル電流測定動作において取得された信号ＶＢＬ_ＤＡＣに基づいて、最適なプログラムパラメータセットを選択する。これにより、メモリセルアレイの劣化具合に応じてより最適なログラム動作及びベリファイ動作が実現できる。具体的には、よりシャープな閾値分布の設定が可能となる。
【０１０４】
また、読み出し動作及び消去動作についても、プログラム動作と同様の効果が得られる。これにより、データ信頼性の高いＮＡＮＤ型フラッシュメモリ１００を実現できる。
【０１０５】
また、本実施形態では、メモリセルアレイの劣化具合に応じて信号ＶＢＬ_ＤＡＣを制御することで、ライト／イレース回数（Ｗ／Ｅ回数）に関わらず、ＮＡＮＤストリングに流れるセル電流ｉＣＥＬＬを概略一定に保持することができる。これにより、ＮＡＮＤ型フラッシュメモリ１００の消費電流を低減することができる。
【０１０６】
また、積層型メモリセルアレイの領域（例えば、ボトム領域ＢＡ、ミドル領域ＭＡ、及びトップ領域ＴＡ）に応じて、動作パラメータセットを変更するようにしている。これにより、積層型メモリセルアレイが適用されるＮＡＮＤ型フラッシュメモリ１００において、データ信頼性をより向上できる。
【０１０７】
［第２実施形態］
第２実施形態では、ページのサンプリング領域に書き込むべき特定のデータのビット数をカウントした後、このカウントされた第１カウント値をページの冗長領域に格納する。続いて、ページからデータを読み出した際に、サンプリング領域の特定のデータのビット数をカウントして、第２カウント値を取得する。そして、第１カウント値と第２カウント値との差に応じてメモリセルアレイの劣化具合を判定するようにしている。
【０１０８】
［２−１］  メモリセルアレイ１１１の構成
まず、メモリセルアレイ１１１の構成について説明する。図２２は、第２実施形態に係るメモリセルアレイ１１１を中心に示したブロック図である。
【０１０９】
１本のワード線ＷＬに接続された複数のメモリセルトランジスタからなるページは、通常データ（ユーザーデータ）を格納するための通常領域と、冗長領域とを備える。通常領域の任意の部分には、サンプリング領域が設けられる。サンプリング領域は、この領域に書き込むべきデータを種類毎にカウントするため、及びこの領域から読み出されたデータを種類毎にカウントするために使用される。冗長領域は、カウントされたデータのビット数をフラグデータとして格納するために使用される。
【０１１０】
［２−２］  読み出し動作におけるデータ転送の概要
次に、読み出し動作におけるデータ転送の概要について説明する。図２３は、読み出し動作におけるデータ転送のタイミングチャートである。図２３は、メモリコントローラ２００とＮＡＮＤ型フラッシュメモリ１００とがＮＡＮＤバスを介してやり取りする信号を表しており、メモリコントローラ２００とＮＡＮＤ型フラッシュメモリ１００とは、コマンドラッチイネーブル信号ＣＬＥ、アドレスラッチイネーブル信号ＡＬＥ、ライトイネーブル信号ＷＥｎ、リードイネーブル信号ＲＥｎ、及び入出力信号Ｉ／Ｏをやり取りする。
【０１１１】
メモリコントローラ２００は、信号ＣＬＥ及びＷＥｎをアサートすると共に、読み出しコマンド“００ｈ”をＮＡＮＤ型フラッシュメモリ１００に送る。続いて、メモリコントローラ２００は、信号ＡＬＥ及びＷＥｎをアサートすると共に、アドレス信号Ａ１〜Ａ５をＮＡＮＤ型フラッシュメモリ１００に送る。続いて、メモリコントローラ２００は、信号ＣＬＥ及びＷＥｎをアサートすると共に、読み出し実行コマンド“３０ｈ”をＮＡＮＤ型フラッシュメモリ１００に送る。これに対して、ＮＡＮＤ型フラッシュメモリ１００は、信号ＣＬＥ、ＡＬＥ、及びＷＥｎに応答して、コマンド及びアドレスを受ける。
【０１１２】
続いて、メモリコントローラ２００は、信号ＲＥｎをアサートし、ＮＡＮＤ型フラッシュメモリ１００は、信号ＲＥｎに応答して、データＤ０、Ｄ２、Ｄ３、・・・をメモリコントローラ２００に送る。これに対して、メモリコントローラ２００は、ＮＡＮＤ型フラッシュメモリ１００からデータを受ける。
【０１１３】
以上のようにして、メモリコントローラ２００及びＮＡＮＤ型フラッシュメモリ１００間でデータ転送が行われる。以下の説明では、信号ＣＬＥ、ＡＬＥ、ＷＥｎ、及びＲＥｎを省略するが、これらの信号のタイミングは、図２３が援用される。
【０１１４】
［２−３］  プログラム動作
次に、プログラム動作について説明する。
【０１１５】
［２−３−１］  下位ページプログラム動作
まず、下位ページプログラム動作について説明する。図２４は、下位ページプログラム動作のフローチャートである。
【０１１６】
制御回路１２０は、入出力回路１１９が受けたデータ（下位ページデータ）をページバッファ１１５にロードする（ステップＳ３００）。具体的には、制御回路１２０は、入出力回路１１９から送られたデータをデータキャッシュＸＤＬに保持させ、さらに、データキャッシュＸＤＬからデータキャッシュＬＤＬにデータを転送する。
【０１１７】
続いて、制御回路１２０は、データキャッシュに保持されたデータを用いて、サンプリング領域に書き込まれるデータのうち“ＬＭ”レベルのビット数をカウントする（ステップＳ３０１）。“ＬＭ”レベルの閾値分布は、データ“０”に対応する。これにより、“ＬＭ”レベル（データ“０”）にプログラムされるメモリセルの個数が算出される。また、制御回路１２０は、フラグデータとしてカウント値を選択ページの冗長領域にセットする。
【０１１８】
続いて、制御回路１２０は、プログラムループ回数が最大値に到達しているか否かを判定する（ステップＳ３０２）。プログラムループ回数が最大値に到達していない場合、制御回路１２０は、選択ページに対してプログラム動作を行う（ステップＳ３０３）。
【０１１９】
続いて、制御回路１２０は、ベリファイ動作を行う（ステップＳ３０４）。続いて、制御回路１２０は、ベリファイがパスしたか否かを判定する（ステップＳ３０５）。ベリファイがパスしていない場合、制御回路１２０は、ステップアップ電圧ＤＶＰＧＭだけステップして再度、プログラムループを行う（ステップＳ３０６）。
【０１２０】
このような動作により、サンプリング領域に含まれるメモリセルのうち“ＬＭ”レベルの閾値分布に設定されるべきメモリセルの個数が、フラグデータとして冗長領域に書き込まれる。なお、サンプリング領域に書き込まれるデータのうち“Ｅ”レベルのビット数をカウントするようにしても良い。この場合は、サンプリング領域に含まれるメモリセルのうち“Ｅ”レベルの閾値分布に設定されるべきメモリセルの個数が、フラグデータとして冗長領域に書き込まれる。そして、メモリセルアレイの劣化具合を判定するために“Ｅ”レベルのメモリセルのカウント値が用いられる。
【０１２１】
［２−３−２］  上位ページプログラム動作
次に、上位ページプログラム動作について説明する。図２５は、上位ページプログラム動作のフローチャートである。
【０１２２】
制御回路１２０は、入出力回路１１９が受けたデータ（上位ページデータ）をページバッファ１１５にロードする（ステップＳ４００）。具体的には、制御回路１２０は、入出力回路１１９から送られたデータをデータキャッシュＸＤＬに保持させ、さらに、データキャッシュＸＤＬからデータキャッシュＵＤＬにデータを転送する。上位ページプログラムに必要な下位ページデータは、予めメモリセルアレイから読み出され、データキャッシュＬＤＬに保持される。
【０１２３】
続いて、制御回路１２０は、データキャッシュに保持されたデータを用いて、サンプリング領域に書き込まれるデータのうち、“Ｅ”レベル、“Ａ”レベル、“Ｂ”レベル、及び“Ｃ”レベルのそれぞれのビット数をカウントする（ステップＳ４０１）。また、制御回路１２０は、フラグデータとしてカウント値を選択ページの冗長領域にセットする。
【０１２４】
続いて、制御回路１２０は、プログラムループ回数が最大値に到達しているか否かを判定する（ステップＳ４０２）。プログラムループ回数が最大値に到達していない場合、制御回路１２０は、選択ページに対してプログラム動作を行う（ステップＳ４０３）。
【０１２５】
続いて、制御回路１２０は、ベリファイ動作を行う（ステップＳ４０４）。続いて、制御回路１２０は、ベリファイがパスしたか否かを判定する（ステップＳ４０５）。ベリファイがパスしていない場合、制御回路１２０は、ステップアップ電圧ＤＶＰＧＭだけステップして再度、プログラムループを行う（ステップＳ４０６）。なお、ステップＳ４０３のプログラム動作及びステップＳ４０４のベリファイ動作には、“Ａ”レベル、“Ｂ”レベル、及び“Ｃ”レベルのプログラム動作及びベリファイ動作が含まれる。
【０１２６】
このような動作により、サンプリング領域に含まれるメモリセルのうち“Ｅ”レベル、“Ａ”レベル、“Ｂ”レベル、及び“Ｃ”レベルのそれぞれのビット数が、フラグデータとして冗長領域に書き込まれる。なお、全レベルのビット数をカウントしてカウント結果を冗長領域に書き込む必要はなく、“Ｅ”レベルのみカウントして、そこから、他のレベルの劣化具合を予測するような手法を用いても良い。
【０１２７】
［２−４］  読み出し動作
次に、読み出し動作について説明する。
【０１２８】
［２−４−１］  第１実施例
まず、下位ページ読み出し動作について説明する。図２６は、第１実施例に係る下位ページ読み出し動作のフローチャートである。図２７は、第１実施例に係る下位ページ読み出し動作のタイミングチャートである。
【０１２９】
制御回路１２０は、プリフィックスコマンドPrefix-CMD1、読み出しコマンド“００ｈ”、アドレス信号Ａ１〜Ａ５、読み出し実行コマンド“３０ｈ”を、メモリコントローラ２００から受ける（ステップＳ５００）。このプリフィックスコマンドPrefix-CMD1を最初に発行することで、通常の読み出しコマンドとモードが異なる特殊な読み出しモードを指定できる。これに応答して、制御回路１２０は、メモリコントローラ２００にビジー信号を送る。
【０１３０】
続いて、制御回路１２０は、通常の読み出し動作を行う（ステップＳ５０１）。図２８は、読み出し動作の電圧波形である。図２８において、ＳＧＤ_ＳＥＬ、ＳＧＳ_ＳＥＬは、選択ストリングユニットに含まれるセレクトゲート線であり、ＳＧＤ_ＵＳＥＬ、ＳＧＳ_ＵＳＥＬは、非選択ストリングユニットに含まれるセレクトゲート線である。ＷＬ_ＳＥＬは、選択ワード線であり、ＷＬ_ＵＳＥＬは、非選択ワード線である。
【０１３１】
通常の読み出し動作において、ロウデコーダ１１２は、選択ストリングユニットにおいて、セレクトゲート線ＳＧＤ_ＳＥＬ、ＳＧＳ_ＳＥＬに、電圧Ｖｓｇを印加し、選択トランジスタＳＴ１、ＳＴ２をオンさせる。また、ロウデコーダ１１２は、選択ワード線ＷＬ_ＳＥＬに読み出し電圧Ｖｃｇｒｖを印加し、非選択ワード線ＷＬ_ＵＳＥＬに電圧ＶＲＥＡＤを印加する。さらに、ロウデコーダ１１２は、非選択ストリングユニットにおいて、セレクトゲート線ＳＧＤ_ＵＳＥＬ、ＳＧＳ_ＵＳＥＬに、電圧Ｖｓｓ（０Ｖ）を印加し、選択トランジスタＳＴ１、ＳＴ２をオフさせる。なお、下位ページ読み出しの場合、読み出し電圧Ｖｃｇｒｖは、下位データの“１”及び“０”を判定可能な読み出しレベルＢＲに対応する。
【０１３２】
通常の読み出し動作において、冗長領域に記憶されたフラグデータが読み出され、制御回路１２０は、このフラグデータを取得する（ステップＳ５０２）。そして、制御回路１２０は、フラグデータを用いて、プログラム時における“ＬＭ”レベルのビット数を算出する。続いて、制御回路１２０は、通常の読み出し動作において読み出されたデータをセンスアンプＳＡからデータキャッシュＸＤＬに転送することで、通常読み出しのデータアウトが可能となり、レディ信号（cache ready）をメモリコントローラ２００に送る。（ステップＳ５０３）。
【０１３３】
続いて、制御回路１２０は、データキャッシュＵＤＬに保持されている読み出しデータを用いて、サンプリング領域のうち“ＬＭ”レベルのビット数をカウントする（ステップＳ５０４）。続いて、制御回路１２０は、ステップＳ５０２のフラグデータから算出された期待値と、ステップＳ５０４の読み出し結果とを比較する。そして、制御回路１２０は、比較結果に基づいて、読み出しレベルを算出する（ステップＳ５０５）。この読み出しレベルの補正方法は、例えば、第１実施形態で説明したように、複数のリードパラメータセットをレジスタ１２２に記憶しておき、比較結果の大きさに応じていずれかのリードパラメータセットを選択する。
【０１３４】
続いて、制御回路１２０は、補正された読み出しレベルを用いて、補正読み出し動作を行う（ステップＳ５０６）。具体的には、図２８に示すように、読み出し電圧Ｖｃｇｒｖを電圧Δだけ補正して、読み出し動作を行う。続いて、制御回路１２０は、補正読み出し動作において読み出されたデータをセンスアンプＳＡからデータキャッシュＬＤＬに転送する。その後、制御回路１２０は、レディ信号（true ready）をメモリコントローラ２００に送る。
【０１３５】
続いて、メモリコントローラ２００は、ステータスリードコマンド“７０ｈ”をＮＡＮＤ型フラッシュメモリ１００に送る。ＮＡＮＤ型フラッシュメモリ１００は、ステータスリードコマンド“７０ｈ”に応答して、ステータスをメモリコントローラ２００に送る。メモリコントローラ２００は、このステータスによって補正読み出しの情報を得ることができる。
【０１３６】
続いて、制御回路１２０は、メモリコントローラ２００から転送コマンド“３Ｆｈ”を受けたか否かを監視し（ステップＳ５０７）、転送コマンド“３Ｆｈ”を受けた場合に、データキャッシュＬＤＬからＸＤＬへデータを転送する（ステップＳ５０８）。その後、制御回路１２０は、補正読み出しのデータアウトが可能となり、制御回路１２０は、レディ信号（true ready）をメモリコントローラ２００に送る。（ステップＳ５０９）。
【０１３７】
なお、ステップＳ５０７においてメモリコントローラ２００から転送コマンド“３Ｆｈ”を受けない場合、すなわち、通常読み出しが正常に終了した場合、補正読み出しのデータアウトは行われない。
【０１３８】
＜上位ページ読み出し動作＞
次に、上位ページ読み出し動作について説明する。図２９は、上位ページ読み出し動作のフローチャートである。
【０１３９】
上位ページ読み出し動作では、制御回路１２０は、ステップＳ６０２で取得したフラグデータを用いて、“Ｅ”レベル、“Ａ”レベル、“Ｂ”レベル、及び“Ｃ”レベルのそれぞれのビット数を算出する。
【０１４０】
また、制御回路１２０は、データキャッシュＸＤＬに保持されている読み出しデータを用いて、サンプリング領域のうち“Ｅ”レベル、“Ａ”レベル、“Ｂ”レベル、及び“Ｃ”レベルのそれぞれのビット数をカウントする（ステップＳ６０４）。その後、制御回路１２０は、比較結果に基づいて、読み出しレベルを算出する（ステップＳ６０５）。
【０１４１】
上記以外の動作は、前述した上位ページ読み出し動作と同じである。これにより、上位ページに対してより正確な読み出し動作が実現できる。
【０１４２】
＜読み出しレベルの補正値の一例＞
次に、読み出しレベルの補正値の一例について説明する。図３０は、フラグデータとカウント値との差と読み出しレベルとの関係を示す図である。
【０１４３】
図５から理解できるように、読み出しレベルＡＲは、“Ｅ”レベルと、“Ａ”、“Ｂ”、“Ｃ”レベルとを判定するために使用される。読み出しレベルＢＲは、下位ページプログラムにおける“ＬＭ”レベルを判定するために使用される。読み出しレベルＣＲは、“Ｅ”、“Ａ”、“Ｂ”レベルと、“Ｃ”レベルとを判定するために使用される。すなわち、下位ページ読み出し動作では、読み出しレベルＢＲが使用され、上位ページ読み出し動作では、読み出しレベルＡＲ、ＣＲが使用さる。なお、上位ページ読み出し動作において、下位ページデータがデータキャッシュに保持されていない場合は、最初に下位ページ読み出し動作が行われる。
【０１４４】
図３０に示すように、読み出しレベルＡＲに関して、“Ｅ”セルの数の差が負（フラグデータの方が小さい）である場合、閾値が“Ａ”、“Ｂ”、“Ｃ”レベルから“Ｅ”レベルに低下したメモリセルが多くなっている。よって、読み出しレベルＡＲを下げる必要がある。
【０１４５】
読み出しレベルＢＲに関して、“ＬＭ”セルの数の差が負（フラグデータの方が小さい）である場合、閾値が“ＬＭ”レベルに上がったメモリセルが多くなっている。この場合、読み出しレベルＢＲを上げる必要がある。
【０１４６】
読み出しレベルＣＲに関して、“Ｃ”セルの数の差が負（フラグデータの方が小さい）である場合、閾値が“Ｅ”、“Ａ”、“Ｂ”レベルから“Ｃ”レベルに上がったメモリセルが多くなっている。この場合、読み出しレベルＡＲを上げる必要がある。
【０１４７】
図３０に示すように読み出しレベルを補正することで、メモリセルアレイの劣化具合に応じてより正確な読み出し動作が実現できる。
【０１４８】
なお、積層型メモリセルアレイを採用した場合は、第１実施形態と同様に、ボトム領域ＢＡ、ミドル領域ＭＡ、及びトップ領域ＴＡのそれぞれにおいて補正値を設定するようにしても良い。さらに、ワード線単位で補正値を設定するようにしても良い。
【０１４９】
［２−４−２  第２実施例
次に、第２実施例に係る読み出し動作について説明する。図３１は、第２実施例に係る読み出し動作のタイミングチャートである。図３１は、下位ページ読み出し動作及び上位ページ読み出し動作に共通である。
【０１５０】
制御回路１２０は、プリフィックスコマンドPrefix-CMD2、読み出しコマンド“００ｈ”、アドレス信号Ａ１〜Ａ５、読み出し実行コマンド“３０ｈ”を、メモリコントローラ２００から受ける。プリフィックスコマンドPrefix-CMD2により、第１実施例とは異なる読み出しモードを指定できる。
【０１５１】
続いて、制御回路１２０は、通常読み出し動作及び補正読み出し動作を連続して行う。通常読み出し動作及び補正読み出し動作は、第１実施例と同じである。続いて、制御回路１２０は、補正読み出し動作によって読み出されたデータをメモリコントローラ２００に出力する
第２実施例に係る読み出し動作は、例えば、連続してページデータを読み出す場合に特に有効である。すなわち、前回の読み出し動作でメモリセルアレイがある程度劣化していることが判断できる場合、最初から補正読み出しに基づく読み出しデータを要求する。これにより、第１実施例に比べて読み出し動作を簡略化できる。
【０１５２】
［２−４−３  第３実施例
次に、第３実施例に係る読み出し動作について説明する。図３２は、第３実施例に係る下位ページ読み出し動作のフローチャートである。図３３は、第３実施例に係る下位ページ読み出し動作の電圧波形である。読み出し動作のタイミングチャートは、図３１と同じである。
【０１５３】
制御回路１２０は、プリフィックスコマンドPrefix-CMD2、読み出しコマンド“００ｈ”、アドレス信号Ａ１〜Ａ５、読み出し実行コマンド“３０ｈ”を、メモリコントローラ２００から受ける（ステップＳ７００）。これに応答して、制御回路１２０は、メモリコントローラ２００にビジー信号を送る。
【０１５４】
続いて、制御回路１２０は、通常の読み出し動作を行う（ステップＳ７０１）。通常読み出し動作において、選択ページの冗長領域に記憶されたフラグデータが読み出され、制御回路１２０は、このフラグデータを取得する（ステップＳ７０２）。そして、制御回路１２０は、フラグデータを用いて、プログラム時における“ＬＭ”レベルのビット数を算出する。
【０１５５】
続いて、制御回路１２０は、データキャッシュＸＤＬに保持されている読み出しデータを用いて、サンプリング領域のうち“ＬＭ”レベルのビット数をカウントする（ステップＳ７０３）。続いて、制御回路１２０は、ステップＳ７０２のフラグデータから算出された期待値と、ステップＳ７０３の読み出し結果とを比較し、読み出し結果と期待値との差が許容値以内になった場合、読み出しがパスであると判定する（ステップＳ７０４）。その後、制御回路１２０は、通常読み出しのデータアウトを行う。
【０１５６】
一方、ステップＳ７０４において読み出しパスでない場合、制御回路１２０は、比較結果に基づいて、読み出しレベルを算出する（ステップＳ７０５）。図３３の例では、通常の読み出しレベルＶｃｇｒｖにステップアップ電圧Δ１が加算された読み出しレベル“Ｖｃｇｒｖ＋Δ１”が算出される。
【０１５７】
続いて、制御回路１２０は、読み出しループ回数が最大値に到達しているか否かを判定する（ステップＳ７０６）。読み出しループ回数が最大値に到達していない場合、制御回路１２０は、読み出しレベル“Ｖｃｇｒｖ＋Δ１”を用いて、補正読み出し動作を行う（ステップＳ７０７）。
【０１５８】
続いて、制御回路１２０は、補正読み出しによって読み出されたデータに含まれるサンプリング領域のうち“ＬＭ”レベルのビット数をカウントする（ステップＳ７０８）。続いて、制御回路１２０は、ステップＳ７０２のフラグデータから算出された期待値と、ステップＳ７０８の読み出し結果とを比較する。そして、制御回路１２０は、読み出し結果と期待値とが同じになるか、又は読み出し結果と期待値との差が許容値以内になった場合に、読み出しがパスであると判定する（ステップＳ７０９）。続いて、制御回路１２０は、補正読み出し動作によって読み出されたデータ（データキャッシュＸＤＬに保持されたデータ）をメモリコントローラ２００に出力する（ステップＳ７１１）。
【０１５９】
一方、ステップＳ７０９において読み出しがパスでない場合、制御回路１２０は、読み出しレベルを電圧Δ１だけステップアップし（ステップＳ７１０）、補正読み出し動作を繰り返す。また、制御回路１２０は、ステップＳ７０６において読み出しループ回数が最大値に到達した場合、最後に読み出されたデータをメモリコントローラ２００に出力する。
【０１６０】
なお、上位ページ読み出し動作は、下位ページ読み出し動作の“ＬＭ”レベルの演算を“Ｅ”レベル、“Ａ”レベル、“Ｂ”レベル、及び“Ｃ”レベルのそれぞれにおいて行う以外は、図３２のフローチャートを援用できる。
【０１６１】
［２−５］  効果
以上詳述したように第２実施形態によれば、ＮＡＮＤ型フラッシュメモリ１００は、より信頼性の高いデータをメモリコントローラ２００に出力することができる。従来は、メモリコントローラ２００は、ＮＡＮＤ型フラッシュメモリ１００からの読み出し結果をエラー訂正し、訂正ＮＧであれば、読み出しレベルを変えて再度読み出しを行う、というシーケンスを繰り返す。このようなシーケンスを用いたい場合、読み出し時間が長くなる。しかし、本実施形態では、より信頼性の高いデータをメモリコントローラ２００に出力できると共に、読み出し時間を低減できる。
【０１６２】
また、フラグデータと読み出し結果の差に応じて、読み出しレベルを補正するようにしている。これにより、メモリセルアレイの劣化具合に応じてより最適な読み出し動作が実現できる。この結果、データ信頼性の高いＮＡＮＤ型フラッシュメモリ１００を実現できる。上位ページについても、下位ページと同様の効果を得られる。
【０１６３】
さらに、メモリコントローラ２００の指示に応じて、１回目の通常読み出しによる読み出しデータと、２回目以降の補正読み出しによる読み出しデータとの一方を選択的にメモリコントローラ２００に送ることができる。これにより、メモリコントローラ２００の要求に適したデータを出力可能なＮＡＮＤ型フラッシュメモリ１００を実現できる。
【０１６４】
［第３実施形態］
第２実施形態では、ビットカウントをＮＡＮＤ型フラッシュメモリ１００内で行うようにしているが、ビットカウント動作の分だけ書き込み時間が長くなってしまう。そこで、第３実施形態は、ビットカウントをメモリコントローラ２００が行い、フラグデータの管理をＮＡＮＤ型フラッシュメモリ１００が行うようにしている。
【０１６５】
［３−１］  書き込み動作
第３実施形態に係る書き込み動作について説明する。図３４は、第３実施形態に係るメモリコントローラ２００及びＮＡＮＤ型フラッシュメモリ１００の書き込み動作を示すタイミングチャートである。図３５は、メモリコントローラ２００及びＮＡＮＤ型フラッシュメモリ１００の書き込み動作を示すフローチャートである。
【０１６６】
まず、メモリコントローラ２００は、ホスト機器４００から書き込み命令を受ける（ステップＳ８００）。続いて、メモリコントローラ２００は、ホスト機器４００からの書き込み命令に応答して、書き込みコマンド“８０”及びアドレスをＮＡＮＤ型フラッシュメモリ１００に発行する（ステップＳ８０１）。ＮＡＮＤ型フラッシュメモリ１００は、メモリコントローラ２００からの書き込みコマンドに応答して、書き込み準備を開始する（ステップＳ８０２）。
【０１６７】
続いて、メモリコントローラ２００は、サンプリング領域に書き込まれたデータのビット数と期待値とを比較するためのビットカウントモードを行うか否かを判定する（ステップＳ８０２）。ビットカウントモードを行わない場合、メモリコントローラ２００は、通常の書き込み処理を行う。すなわち、メモリコントローラ２００は、ＮＡＮＤ型フラッシュメモリ１００にデータを入力する（ステップＳ８０４）。これに応答して、ＮＡＮＤ型フラッシュメモリ１００は、データをデータキャッシュＸＤＬにセットする（ステップＳ８０５）。続いて、メモリコントローラ２００は、書き込み実行コマンド“１５／１０”をＮＡＮＤ型フラッシュメモリ１００に発行する（ステップＳ８０６）。これに応答して、ＮＡＮＤ型フラッシュメモリ１００は、書き込みを実行する（ステップＳ８０６）。
【０１６８】
ステップＳ８０３においてビットカウントモードを行う場合、メモリコントローラ２００は、サンプリング領域に書き込まれるデータのうち対応する書き込みレベルのビット数をカウントする（ステップＳ８０８）。具体的には、下位ページプログラムの場合は、“ＬＭ”レベル（或いは“Ｅ”レベル）のビット数をカウントし、上位ページプログラムの場合は、“Ｅ”レベル、“Ａ”レベル、“Ｂ”レベル、及び“Ｃ”レベルのそれぞれのビット数をカウントする。このビットカウント動作は、第２実施形態と同じである。続いて、メモリコントローラ２００は、ステップＳ８０８におけるカウント値をカウントレジスタにセットする（ステップＳ８０９）。カウントレジスタは、ＲＡＭ２４０の一部を用いて構成しても良いし、専用のレジスタを新たに用意しても良い。
【０１６９】
続いて、メモリコントローラ２００は、ＮＡＮＤ型フラッシュメモリ１００にデータを入力する（ステップＳ８１０）。これに応答して、ＮＡＮＤ型フラッシュメモリ１００は、データをデータキャッシュＸＤＬにセットする（ステップＳ８１１）。続いて、メモリコントローラ２００は、データ入力終了を通知するコマンド“１Ｘ”をＮＡＮＤ型フラッシュメモリ１００に発行する（ステップＳ８１２）。ＮＡＮＤ型フラッシュメモリ１００は、コマンド“１Ｘ”に応答して、カウント値をフラグにセットする準備を開始する（ステップＳ８１３）。すなわち、ＮＡＮＤ型フラッシュメモリ１００は、データキャッシュＸＤＬのデータをデータキャッシュＵＤＬに転送する（図３４の“Ｘ２Ｕ”）。
【０１７０】
続いて、メモリコントローラ２００は、カウントレジスタに格納されたカウント値（CNT result）をＮＡＮＤ型フラッシュメモリ１００に送る（ステップＳ８１４）。続いて、ＮＡＮＤ型フラッシュメモリ１００は、カウント値をフラグにセットする（ステップＳ８１５）。
【０１７１】
続いて、メモリコントローラ２００は、書き込み実行コマンド“１５／１０”をＮＡＮＤ型フラッシュメモリ１００に発行する（ステップＳ８１６）。これに応答して、ＮＡＮＤ型フラッシュメモリ１００は、書き込みを実行する（ステップＳ８１７）。すなわち、図３４に示すように、書き込み（プログラム）とベリファイ（ｐｖｆｙ）とが繰り返される。これにより、選択ページの冗長領域に、カウント値に対応するフラグデータが書き込まれる。
【０１７２】
［３−２］  読み出し動作
次に、第３実施形態に係る読み出し動作について説明する。図３６及び図３７は、メモリコントローラ２００及びＮＡＮＤ型フラッシュメモリ１００の読み出し動作を示すフローチャートである。
【０１７３】
まず、メモリコントローラ２００は、ホスト機器４００から読み出し命令を受ける（ステップＳ９００）。続いて、メモリコントローラ２００は、ホスト機器４００からの読み出し命令に応答して、読み出しコマンド及びアドレスをＮＡＮＤ型フラッシュメモリ１００に発行する（ステップＳ９０１）。ＮＡＮＤ型フラッシュメモリ１００は、メモリコントローラ２００からの読み出しコマンドに応答して、読み出し準備を開始する（ステップＳ９０２）。
【０１７４】
続いて、メモリコントローラ２００は、読み出し実行コマンドをＮＡＮＤ型フラッシュメモリ１００に発行する（ステップＳ９０３）。ＮＡＮＤ型フラッシュメモリ１００は、読み出し実行コマンドに応答して、読み出しを開始する（ステップＳ９０４）。
【０１７５】
続いて、メモリコントローラ２００は、ステータスリードコマンドをＮＡＮＤ型フラッシュメモリ１００に発行する（ステップＳ９０５）。ＮＡＮＤ型フラッシュメモリ１００は、ステータスリードコマンドに応答して、読み出しデータに関するステータスをメモリコントローラ２００に送るとともに、レディ信号をメモリコントローラ２００に送る（ステップＳ９０６）。
【０１７６】
続いて、メモリコントローラ２００は、データ出力を指示する（ステップＳ９０７）。この指示に応答して、ＮＡＮＤ型フラッシュメモリ１００は、メモリコントローラ２００にデータを出力する（ステップＳ９０８）。
【０１７７】
続いて、メモリコントローラ２００は、ビットカウントモードを行うか否かを判定する（ステップＳ９０９）。ビットカウントモードを行わない場合、読み出しデータのエラー訂正が行われた後、読み出し動作が終了する。
【０１７８】
ステップＳ９０９においてビットカウントモードを行う場合、メモリコントローラ２００は、読み出しデータを用いて、サンプリング領域のデータのうち着目レベルのビット数をカウントする（ステップＳ９１０）。このビットカウント動作は、第２実施形態と同じである。続いて、メモリコントローラ２００は、ステップＳ９１０におけるカウント値をカウントレジスタにセットする（ステップＳ９１１）。
【０１７９】
続いて、ＥＣＣ回路２５０は、読み出しデータのエラー訂正を行う（ステップＳ９１２）。エラー訂正が正常に行われた場合（ステップＳ９１３）、読み出し動作が終了する。一方、エラー訂正が正常に行われなかった場合、ステップＳ９１４を経由して、メモリコントローラ２００は、フラグデータの出力を指示するフラグ出力コマンドをＮＡＮＤ型フラッシュメモリ１００に発行する（ステップＳ９１５）。ＮＡＮＤ型フラッシュメモリ１００は、フラグ出力コマンドに応答して、フラグデータをメモリコントローラ２００に送る（ステップＳ９１６）。続いて、メモリコントローラ２００は、フラグデータとカウントレジスタに格納されたカウント値と比較し、この比較結果に基づいて読み出しレベルを算出する（ステップＳ９１７）。
【０１８０】
続いて、メモリコントローラ２００は、補正読み出しを指示する（外部から読み出しレベルを指示する）シフトリードコマンドをＮＡＮＤ型フラッシュメモリ１００に発行するとともに、ステップＳ９１７における読み出しレベルをＮＡＮＤ型フラッシュメモリ１００に送る（ステップＳ９１８）。ＮＡＮＤ型フラッシュメモリ１００は、メモリコントローラ２００からのシフトリードコマンドに応答して、読み出し準備を開始する（ステップＳ９１９）。
【０１８１】
続いて、メモリコントローラ２００は、読み出しコマンド及びアドレスをＮＡＮＤ型フラッシュメモリ１００に発行する（ステップＳ９２０）。続いて、メモリコントローラ２００は、読み出し実行コマンドをＮＡＮＤ型フラッシュメモリ１００に発行する（ステップＳ９２１）。その後、ＮＡＮＤ型フラッシュメモリ１００は、補正読み出しを実行する（ステップＳ９２２）。補正読み出し動作は、第２実施形態と同じである。
【０１８２】
［３−３］  効果
第３実施形態によれば、ビットカウント動作をメモリコントローラ２００で行うことができ、また、カウント結果をＮＡＮＤ型フラッシュメモリ１００で管理することができる。これにより、ＮＡＮＤ型フラッシュメモリ１００がビットカウント動作用のカウンタを備える必要がないため、ＮＡＮＤ型フラッシュメモリ１００の回路サイズを低減することができ、また、ＮＡＮＤ型フラッシュメモリ１００の処理負荷を低減することができる。さらに、ＮＡＮＤ型フラッシュメモリ１００の書き込み時間を低減することができる。その他の効果は、第２実施形態と同じである。
【０１８３】
［第４実施形態］
第４実施形態は、第３実施形態の変形例であり、ビットカウント及びフラグデータの管理をメモリコントローラ２００が行うようにしている。
【０１８４】
［４−１］  書き込み動作
第４実施形態に係る書き込み動作について説明する。図３８は、第４実施形態に係るメモリコントローラ２００及びＮＡＮＤ型フラッシュメモリ１００の書き込み動作を示すタイミングチャートである。図３９は、メモリコントローラ２００及びＮＡＮＤ型フラッシュメモリ１００の書き込み動作を示すフローチャートである。
【０１８５】
図３９のステップＳ１０００〜Ｓ１００２は、図３５のステップＳ８００〜Ｓ８０２と同じである。続いて、メモリコントローラ２００は、ビットカウントモードを行うか否かを判定する（ステップＳ１００３）。ビットカウントモードを行わない場合、メモリコントローラ２００は、通常の書き込み処理を行う。すなわち、メモリコントローラ２００は、ＮＡＮＤ型フラッシュメモリ１００にデータを入力する（ステップＳ１００７）。これに応答して、ＮＡＮＤ型フラッシュメモリ１００は、データをデータキャッシュＸＤＬにセットする（ステップＳ１００８）。続いて、メモリコントローラ２００は、書き込み実行コマンド“１５／１０”をＮＡＮＤ型フラッシュメモリ１００に発行する（ステップＳ１００９）。これに応答して、ＮＡＮＤ型フラッシュメモリ１００は、書き込みを実行する（ステップＳ１０１０）。
【０１８６】
ステップＳ１００３においてビットカウントモードを行う場合、メモリコントローラ２００は、サンプリング領域に書き込まれるデータのうち対応する書き込みレベルのビット数をカウントする（ステップＳ１００３）。続いて、メモリコントローラ２００は、ステップＳ１００４におけるカウント値をカウントレジスタにセットする（ステップＳ１００５）。
【０１８７】
続いて、メモリコントローラ２００は、書き込みレベルとカウント値とを関連付けてＲＡＭ２４０に記憶する（ステップＳ１００６）。その後、前述したステップＳ１００７〜Ｓ１０１０が行われる。
【０１８８】
［４−２］  読み出し動作
次に、第４実施形態に係る読み出し動作について説明する。図４０は、メモリコントローラ２００及びＮＡＮＤ型フラッシュメモリ１００の読み出し動作を示すフローチャートである。第４実施形態のステップＳ９００〜Ｓ９１４は、第３実施形態の読み出し動作で説明したステップＳ９００〜Ｓ９１４（図３６及び図３７）と同じである。図４０には、ステップＳ９１３以降のフローチャートを示している。
【０１８９】
ステップＳ９１４においてビットカウントモードを行う場合、メモリコントローラ２００は、ステップＳ９１１においてカウントレジスタに格納されたカウント値と、ステップＳ１００６においてＲＡＭ２４０に記憶されたカウント値とを比較する（ステップＳ１１００）。続いて、メモリコントローラ２００は、ステップＳ１１００の比較結果に基づいて読み出しレベルを算出する（ステップＳ１１０１）。
【０１９０】
続いて、メモリコントローラ２００は、シフトリードコマンドをＮＡＮＤ型フラッシュメモリ１００に発行するとともに、ステップＳ１１０１における読み出しレベルをＮＡＮＤ型フラッシュメモリ１００に送る（ステップＳ１１０２）。その後のステップＳ１１０３〜Ｓ１１０６は、第３実施形態のステップＳ９１９〜Ｓ９２２と同じである。
【０１９１】
［４−３］  効果
第４実施形態によれば、ビットカウント動作及びカウント結果の管理をメモリコントローラ２００で行うことができる。これにより、ＮＡＮＤ型フラッシュメモリ１００は、カウント値を記憶する必要がないため、ＮＡＮＤ型フラッシュメモリ１００の処理負荷を低減することができる。また、ＮＡＮＤ型フラッシュメモリ１００の書き込み時間を低減することができる。その他の効果は、第２実施形態と同じである。
【０１９２】
なお、本発明に関する各実施形態において、
（１）読み出し動作では、
Aレベルの読み出し動作に選択されたワード線に印加される電圧は、例えば０V〜0.55Vの間である。これに限定されることなく、0.1V〜0.24V, 0.21V〜0.31V, 0.31V〜0.4V, 0.4V〜0.5V, 0.5V〜0.55Vいずれかの間にしてもよい。
【０１９３】
Bレベルの読み出し動作に選択されたワード線に印加される電圧は、例えば1.5V〜2.3Vの間である。これに限定されることなく、1.65V〜1.8V, 1.8V〜1.95V, 1.95V〜2.1V, 2.1V〜2.3Vいずれかの間にしてもよい。
【０１９４】
Cレベルの読み出し動作に選択されたワード線に印加される電圧は、例えば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方式（Ｉｎｃｒｅｍｅｎｔａｌ Ｓｔｅｐ Ｐｕｌｓｅ Ｐｒｏｇｒａｍ）としたとき、ステップアップの電圧として、例えば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の間にしてもよい。
【０２０４】
（４）メモリセルの構造は、
半導体基板（シリコン基板）上に膜厚が４〜１０ｎｍのトンネル絶縁膜を介して配置された電荷蓄積層を有している。この電荷蓄積層は膜厚が２〜３ｎｍのＳｉＮ、またはＳｉＯＮなどの絶縁膜と膜厚が３〜８ｎｍのポリシリコンとの積層構造にすることができる。また、ポリシリコンにはＲｕなどの金属が添加されていても良い。電荷蓄積層の上には絶縁膜を有している。この絶縁膜は、例えば、膜厚が３〜１０ｎｍの下層Ｈｉｇｈ−ｋ膜と膜厚が３〜１０ｎｍの上層Ｈｉｇｈ−ｋ膜に挟まれた膜厚が４〜１０ｎｍのシリコン酸化膜を有している。Ｈｉｇｈ−ｋ膜はＨｆＯなどが挙げられる。また、シリコン酸化膜の膜厚はＨｉｇｈ−ｋ膜の膜厚よりも厚くすることができる。絶縁膜上には膜厚が３〜１０ｎｍの仕事関数調整用の材料を介して膜厚が３０ｎｍ〜７０ｎｍの制御電極が形成されている。ここで仕事関数調整用の材料はＴａＯなどの金属酸化膜、ＴａＮなどの金属窒化膜である。制御電極にはＷなどを用いることができる。
【０２０５】
また、メモリセル間にはエアギャップを形成することができる。
【０２０６】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０２０７】
４０…セル電流測定回路、１００…ＮＡＮＤ型フラッシュメモリ、１１１…メモリセルアレイ、１１２…ロウデコーダ、１１３…センスアンプ部、１１４…ＮＡＮＤストリング、１１５…ページバッファ、１１６…カラムデコーダ、１１７…ドライバ、１１８…電圧発生回路、１１９…入出力回路、１２０…制御回路、１２１…アドレス・コマンドレジスタ、１２２…レジスタ、２００…メモリコントローラ、２１０…ホストインターフェース回路、２２０…ＣＰＵ、２３０…ＲＯＭ、２４０…ＲＡＭ、２５０…ＥＣＣ回路、２６０…ＮＡＮＤインターフェース回路、３００…メモリシステム、４００…ホスト機器。
【図１】
2016054017.tif 000003
【図２】
2016054017.tif 000004
【図３】
2016054017.tif 000005
【図４】
2016054017.tif 000006
【図５】
2016054017.tif 000007
【図６】
2016054017.tif 000008
【図７】
2016054017.tif 000009
【図８】
2016054017.tif 000010
【図９】
2016054017.tif 000011
【図１０】
2016054017.tif 000012
【図１１】
2016054017.tif 000013
【図１２】
2016054017.tif 000014
【図１３】
2016054017.tif 000015
【図１４】
2016054017.tif 000016
【図１５】
2016054017.tif 000017
【図１６】
2016054017.tif 000018
【図１７】
2016054017.tif 000019
【図１８】
2016054017.tif 000020
【図１９】
2016054017.tif 000021
【図２０】
2016054017.tif 000022
【図２１】
2016054017.tif 000023
【図２２】
2016054017.tif 000024
【図２３】
2016054017.tif 000025
【図２４】
2016054017.tif 000026
【図２５】
2016054017.tif 000027
【図２６】
2016054017.tif 000028
【図２７】
2016054017.tif 000029
【図２８】
2016054017.tif 000030
【図２９】
2016054017.tif 000031
【図３０】
2016054017.tif 000032
【図３１】
2016054017.tif 000033
【図３２】
2016054017.tif 000034
【図３３】
2016054017.tif 000035
【図３４】
2016054017.tif 000036
【図３５】
2016054017.tif 000037
【図３６】
2016054017.tif 000038
【図３７】
2016054017.tif 000039
【図３８】
2016054017.tif 000040
【図３９】
2016054017.tif 000041
【図４０】
2016054017.tif 000042