(57)【要約】【課題】データの信頼性を担保し、且つレイテンシを改善すること。【解決手段】実施形態のメモリシステムは、半導体メモリとメモリコントローラとを含む。半導体メモリは、直列に接続された複数のメモリセルと複数のメモリセルにそれぞれ接続された複数のワード線とを含む。メモリコントローラは、第１のパトロール期間と、第１のパトロール期間に続く第２のパトロール期間とのそれぞれにおいてパトロール動作を実行する。複数のワード線は、ワード線のアドレスに基づいて第１及び第２グループのいずれかに分類される。メモリコントローラは、第１のパトロール期間において複数のワード線をそれぞれ選択した複数のパトロール動作を実行する。メモリコントローラは、第２のパトロール期間において第１グループに含まれたワード線を選択したパトロール動作を実行し第２グループに含まれたワード線を選択したパトロール動作を省略する。【選択図】図２５
2020047322.tif 000002
【特許請求の範囲】
【請求項１】
直列に接続された複数のメモリセルと、前記複数のメモリセルにそれぞれ接続された複数のワード線とを含む半導体メモリと、
第１のパトロール期間において前記半導体メモリの読み出し動作を含むパトロール動作を実行し、前記第１のパトロール期間に続く第２のパトロール期間において前記パトロール動作を実行するメモリコントローラと、
を備え、
前記複数のワード線のそれぞれは、ワード線のアドレスに基づいて第１グループ及び第２グループのいずれかに分類され、
前記メモリコントローラは、
前記第１のパトロール期間において、前記複数のワード線をそれぞれ選択した複数のパトロール動作を実行し、
前記第２のパトロール期間において、前記第１グループに含まれたワード線を選択したパトロール動作を実行し、前記第２グループに含まれたワード線を選択したパトロール動作を省略する、メモリシステム。
【請求項２】
前記半導体メモリは、絶縁層を介して積層され、前記複数のワード線としてそれぞれ使用される複数の第１導電体層と、前記複数の第１導電体層を貫通し、第１柱状部と、前記第１柱状部の上方の第２柱状部とを含むピラーとをさらに含む、
請求項１に記載のメモリシステム。
【請求項３】
前記第１柱状部が貫通する前記複数の第１導電体層のうち、前記第２柱状部に最も近い第１導電体層は第１ワード線として使用され、
前記第２柱状部が貫通する前記複数の第１導電体層のうち、前記第１柱状部に最も近い第１導電体層は第２ワード線として使用され、
前記第１ワード線と前記第２ワード線とは、前記第１グループに含まれる、
請求項２に記載のメモリシステム。
【請求項４】
前記第１柱状部が貫通する前記複数の第１導電体層のうち、前記第２柱状部から最も離れた第１導電体層は第３ワード線として使用され、
前記第２柱状部が貫通する前記複数の第１導電体層のうち、前記第１柱状部から最も離れた第１導電体層は第４ワード線として使用され、
前記第３ワード線と前記第４ワード線とは、前記第１グループに含まれる、
請求項３に記載のメモリシステム。
【請求項５】
前記第１柱状部が貫通する前記複数の第１導電体層のうち、前記第１ワード線として使用される第１導電体層と前記第３ワード線として使用される第１導電体層との間に配置された第１導電体層のうち１つの第１導電体層は、第５ワード線として使用され、
前記第２柱状部が貫通する前記複数の第１導電体層のうち、前記第２ワード線として使用される第１導電体層と前記第４ワード線として使用される第１導電体層との間に配置された第１導電体層のうち１つの第１導電体層は、第６ワード線として使用され、
前記第５ワード線と前記第６ワード線とは、前記第２グループに含まれる、
請求項４に記載のメモリシステム。
【請求項６】
前記ピラーは、前記第１柱状部及び前記第２柱状部間の接合部をさらに含み、
前記第１柱状部と前記接合部との境界を含む層において、前記接合部の外径は前記第１柱状部の外径よりも大きく、
前記第２柱状部と前記接合部との境界を含む層において、前記接合部の外径は前記第２柱状部の外径よりも大きい、
請求項２乃至請求項５のいずれか一項に記載のメモリシステム。
【請求項７】
メモリセルと、前記メモリセルに接続されたワード線とを含む半導体メモリと、
前記半導体メモリの読み出し動作を含むパトロール動作を実行するメモリコントローラと、
を備え、
前記メモリコントローラは、前記ワード線を選択したパトロール動作を実行する頻度を、前記メモリセルにデータを書き込んだ後の経過時間に基づいて変化させる、
メモリシステム。
【請求項８】
前記メモリコントローラは、前記メモリセルにデータを書き込まれた直後を含む第１期間と、前記第１期間と同じ長さ且つ前記第１期間の後の第２期間とのそれぞれにおいて、前記ワード線を選択した前記パトロール動作を実行し、
前記メモリコントローラが前記ワード線を選択した前記パトロール動作を実行する頻度は、前記第１期間よりも前記第２期間の方が高い、
請求項7に記載のメモリシステム。
【請求項９】
前記メモリコントローラは、外部のホスト機器の命令とは独立して前記パトロール動作を実行する、
請求項１乃至請求項８のいずれか一項に記載のメモリシステム。
【請求項１０】
前記パトロール動作において前記メモリコントローラは、読み出し結果に基づいて、前記読み出し結果に対応するワード線に不良が発生しているか否かを判別する、
請求項１乃至請求項９のいずれか一項に記載のメモリシステム。
【請求項１１】
前記パトロール動作において前記半導体メモリは、複数回の読み出し動作の結果に基づいて、最適な読み出し電圧を探索する、
請求項１乃至請求項１０のいずれか一項に記載のメモリシステム。
【請求項１２】
各々がメモリセルと前記メモリセルに接続されたワード線とを含み、共通のバスに接続された複数の半導体メモリと、
前記半導体メモリにおける読み出し電圧の補正値作成と前記ワード線の不良検知とを含むパトロール動作を、前記複数の半導体メモリに対して並列で実行することが可能なメモリコントローラと、
を備え、
前記補正値作成では、前記ワード線に複数種類の読み出し電圧が印加された後、前記複数種類の読み出し電圧による読み出し結果に基づいて読み出し電圧の補正値が見積もられ、
前記不良検知では、前記補正値が適用された読み出し動作の結果に基づいて、前記メモリコントローラが前記ワード線の不良の有無を判定し、
前記メモリコントローラは、前記不良検知を、前記補正値作成に続いて実行された読み出し動作の結果に基づいて実行する、或いは前記補正値作成と独立して実行された読み出し動作の結果に基づいて実行する、メモリシステム。
【請求項１３】
前記メモリコントローラは、前記補正値作成の後、前記半導体メモリから前記補正値を前記メモリコントローラに出力させ、前記出力された補正値を用いて、前記不良検知に対応する読み出し動作を前記半導体メモリに指示する、
請求項１２に記載のメモリシステム。
【請求項１４】
前記メモリコントローラは、前記補正値作成の後、前記半導体メモリから前記補正値を前記メモリコントローラに出力させ、続けて前記補正値作成と連続で実行された前記読み出し動作の結果を前記メモリコントローラに出力させ、前記出力された読み出し結果を用いて前記不良検知を実行する、
請求項１２に記載のメモリシステム。
【請求項１５】
前記メモリセルは、第１ビットを含む複数ビットのデータを記憶することが可能であり、前記第１ビットのデータは、第１読み出し電圧と前記第１読み出し電圧よりも高い第２読み出し電圧とを用いた読み出し動作により確定し、
前記メモリコントローラは、繰り返されるパトロール期間のそれぞれにおいて前記パトロール動作を実行し、
前記繰り返されるパトロール期間は、第１サイクル及び第２サイクルのいずれかに分類され、
前記メモリコントローラは、前記第１サイクル及び前記第２サイクルのパトロール期間のそれぞれにおいて、前記第１ビットを選択した前記補正値作成を前記半導体メモリに実行させ、
前記第１サイクルの前記補正値作成において前記ワード線には、前記第１読み出し電圧に対応する複数種類の読み出し電圧と、前記第２読み出し電圧に対応する複数種類の読み出し電圧とが順に印加され、
前記第２サイクルの前記補正値作成において前記ワード線には、前記第２読み出し電圧に対応する前記複数種類の読み出し電圧が印加され、前記第１読み出し電圧に対応する前記複数種類の読み出し電圧の印加が省略される、
請求項１２乃至請求項１４のいずれか一項に記載のメモリシステム。
【請求項１６】
前記メモリコントローラは、前記メモリセルにデータを書き込まれた直後を含む第１期間と、前記第１期間と同じ長さ且つ前記第１期間の後の第２期間とのそれぞれにおいて、前記ワード線を選択したパトロール動作を実行し、
前記第１期間において前記第２サイクルのパトロール期間が含まれる数は、前記第２期間において前記第２サイクルのパトロール期間が含まれる数よりも少ない、
請求項１５に記載のメモリシステム。
【請求項１７】
温度センサをさらに備え、
前記メモリコントローラが前記ワード線を選択したパトロール動作を実行する頻度は、前記温度センサの測定温度が第１温度である時よりも、前記第１温度よりも高い第２温度である時の方が高い、
請求項１２又は請求項１６のいずれか一項に記載のメモリシステム。
【請求項１８】
それぞれが複数の前記メモリセルを含む複数のブロックをさらに備え、
前記メモリコントローラは、システム管理領域から論物変換テーブルの読み出しを行い、有効なデータを保持するブロックに対して前記パトロール動作を実行し、上書きによって無効になったデータや消去済みのブロックに対するパトロール動作を省略する、
請求項１２乃至請求項１７のいずれか一項に記載のメモリシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
実施形態は、メモリシステムに関する。
【背景技術】
【０００２】
データを不揮発に記憶することが可能なＮＡＮＤ型フラッシュメモリが知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−２２４３７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
メモリシステムにおけるデータの信頼性を担保し、且つレイテンシを改善すること。
【課題を解決するための手段】
【０００５】
実施形態のメモリシステムは、半導体メモリとメモリコントローラとを含む。半導体メモリは、直列に接続された複数のメモリセルと、複数のメモリセルにそれぞれ接続された複数のワード線とを含む。メモリコントローラは、第１のパトロール期間と、第１のパトロール期間に続く第２のパトロール期間とのそれぞれにおいて、半導体メモリの読み出し動作を含むパトロール動作を実行する。複数のワード線は、ワード線のアドレスに基づいて第１グループ及び第２グループのいずれかに分類される。メモリコントローラは、第１サイクルのパトロール期間において、複数のワード線をそれぞれ選択した複数のパトロール動作を実行する。メモリコントローラは、第２サイクルのパトロール期間において、第１グループに含まれたワード線を選択したパトロール動作を実行し、第２グループに含まれたワード線を選択したパトロール動作を省略する。
【図面の簡単な説明】
【０００６】
【図１】第１実施形態に係るメモリシステムにおける構成例を示すブロック図。
【図２】第１実施形態に係るメモリシステムにおけるＮＡＮＤパッケージ及びＮＡＮＤインターフェイス回路の構成例を示すブロック図。
【図３】第１実施形態に係るメモリシステムの備えるＮＡＮＤパッケージに含まれたＮＡＮＤ型フラッシュメモリの構成例を示すブロック図。
【図４】第１実施形態におけるＮＡＮＤ型フラッシュメモリの備えるメモリセルアレイの回路構成の一例を示す回路図。
【図５】第１実施形態におけるＮＡＮＤ型フラッシュメモリの備えるメモリセルアレイの平面レイアウトの一例を示す平面図。
【図６】第１実施形態におけるＮＡＮＤ型フラッシュメモリの備えるメモリセルアレイの断面構造の一例を示す断面図。
【図７】第１実施形態におけるＮＡＮＤ型フラッシュメモリの備えるメモリセルアレイに含まれたメモリピラーの断面構造の一例を示す断面図。
【図８】第１実施形態におけるＮＡＮＤ型フラッシュメモリの備えるロウデコーダモジュールの回路構成の一例を示す回路図。
【図９】第１実施形態におけるＮＡＮＤ型フラッシュメモリの備えるセンスアンプモジュールの回路構成の一例を示す回路図。
【図１０】第１実施形態におけるＮＡＮＤ型フラッシュメモリの備えるセンスアンプモジュールに含まれたセンスアンプユニットの回路構成の一例を示す回路図。
【図１１】第１実施形態に係るメモリシステムにおけるメモリセルトランジスタの閾値分布、読み出し電圧、及びベリファイ電圧の一例を示す図。
【図１２】第１実施形態におけるＮＡＮＤ型フラッシュメモリのトラッキングリードにおいて使用される読み出し電圧の一例と、隣り合う２つの閾値分布とを示す閾値分布図。
【図１３】第１実施形態に係るメモリシステムにおけるトラッキングリードの一例を示すタイミングチャート。
【図１４】第１実施形態に係るメモリシステムにおけるシフトリードの一例を示すタイミングチャート。
【図１５】第１実施形態に係るメモリシステムのパトロール動作におけるコマンドシーケンスの一例を示す図。
【図１６】第１実施形態に係るメモリシステムにおけるパトロール動作の処理順番の一例を示すテーブル。
【図１７】第１実施形態に係るメモリシステムのパトロール動作におけるタイミングチャートの一例を示す図。
【図１８】第１実施形態に係るメモリシステムにおけるパトロール動作の処理順番の一例を示すテーブル。
【図１９】第１実施形態に係るメモリシステムにおけるパトロール動作の一例を示すタイミングチャート。
【図２０】第１実施形態の変形例に係るメモリシステムのパトロール動作におけるタイミングチャートの一例を示す図。
【図２１】第２実施形態に係るメモリシステムのパトロール動作におけるコマンドシーケンスの一例を示す図。
【図２２】第２実施形態に係るメモリシステムのパトロール動作におけるタイミングチャートの一例を示す図。
【図２３】第２実施形態に係るメモリシステムのパトロール動作におけるタイミングチャートの一例を示す図。
【図２４】第３実施形態の比較例に係るメモリシステムにおけるパトロール動作の実施サイクルの一例を示すタイミングチャート。
【図２５】第３実施形態に係るメモリシステムにおけるパトロール動作の実施サイクルの一例を示すタイミングチャート。
【図２６】第４実施形態に係るメモリシステムにおけるメモリセルトランジスタの書き込み後の読み出し電圧の変化の一例を示すグラフ。
【図２７】第４実施形態に係るメモリシステムにおけるパトロール動作の実施サイクルの一例を示すタイミングチャート。
【図２８】第５実施形態に係るメモリシステムの省略トラッキングリードにおけるトラッキング対象レベルの一例を示すテーブル。
【図２９】第５実施形態に係るメモリシステムにおける省略トラッキングリードの一例を示すタイミングチャート。
【図３０】第５実施形態に係るメモリシステムにおけるパトロール動作の実施サイクルの一例を示すタイミングチャート。
【図３１】第６実施形態に係るメモリシステムにおけるメモリセルトランジスタのデータ保持特性の温度依存性とパトロール基準の一例をグラフ。
【図３２】第６実施形態に係るメモリシステムのパトロール動作におけるパトロール管理パラメータの一例を示すテーブル。
【図３３】第７実施形態に係るメモリシステムのパトロール動作におけるパトロール管理パラメータの一例を示すテーブル。
【図３４】第７実施形態に係るメモリシステムにおけるパトロール動作の実施サイクルの一例を示すタイミングチャート。
【発明を実施するための形態】
【０００７】
以下に、実施形態について図面を参照して説明する。各実施形態は、発明の技術的思想を具体化するための装置や方法を例示している。図面は模式的又は概念的なものであり、各図面の寸法及び比率等は必ずしも現実のものと同一とは限らない。本発明の技術思想は、構成要素の形状、構造、配置等によって特定されるものではない。
【０００８】
以下の説明では、略同一の機能及び構成を有する構成要素に同一符号が付されている。参照符号を構成する文字の後の数字は、同じ文字を含んだ参照符号によって参照され且つ同様の構成を有する要素同士の区別に使用される。参照符号を構成する数字の後の文字は、同じ数字を含んだ参照符号によって参照され且つ同様の構成を有する要素同士の区別に使用される。同じ文字又は数字を含んだ参照符号で示される要素を相互に区別する必要がない場合、これらの要素は同じ文字又は数字のみを含んだ参照符号により参照される。
【０００９】
［１］第１実施形態
以下に、第１実施形態におけるメモリシステム１について説明する。
【００１０】
［１−１］構成
［１−１−１］メモリシステム１の全体構成について
第１実施形態に係るメモリシステム１は、例えばＳＳＤ（Solid State Drive）であり、
データを不揮発に保持することが出来る。メモリシステム１は、例えば外部のホスト機器２に接続され、ホスト機器２からの命令に応じて各種動作を実行し得る。
【００１１】
図１は、第１実施形態に係るメモリシステム１の構成例を示している。
【００１２】
図１に示すように、第１実施形態に係るメモリシステム１は、例えばＮＡＮＤパッケージＰＫＧ０及びＰＫＧ１、メモリコントローラ２０、並びにＤＲＡＭ（Dynamic Random Access Memory）３０を含んでいる。
【００１３】
ＮＡＮＤパッケージＰＫＧ０及びＰＫＧ１のそれぞれは、複数のＮＡＮＤ型フラッシュメモリを含んでいる。ＮＡＮＤパッケージＰＫＧの構成の詳細については後述する。
【００１４】
メモリコントローラ２０は、例えばＳｏＣ（System on Chip）である。メモリコントローラ２０は、例えばホスト機器２からの命令に応答して、ＮＡＮＤパッケージＰＫＧ０及びＰＫＧ１のそれぞれに対して読み出し、書き込み、及び消去等を命令する。
【００１５】
メモリコントローラ２０は、例えばＣＰＵ（Central Processing Unit）２１、ＲＡＭ（Random Access Memory）２２、ホストインターフェイス回路２３、ＥＣＣ（Error Correction Code）回路２４、温度センサ２５、ＮＡＮＤインターフェイス回路２６、及びＤＲＡＭインターフェイス回路２７を含んでいる。
【００１６】
ＣＰＵ２１は、メモリコントローラ２０全体の動作を制御する。例えば、ＣＰＵ２１は、ホスト機器２から受信した書き込み命令に応答して、書き込みコマンドを発行する。ＣＰＵ２１は、タイマ２８のカウントに基づいてパトロール動作を実行することが出来る。パトロール動作の詳細については後述する。また、ＣＰＵ２１は、例えばウェアレベリング等、ＮＡＮＤパッケージＰＫＧのメモリ空間を管理するための様々な処理を実行する。
【００１７】
ＲＡＭ２２は、例えばＳＲＡＭ（Static Random Access Memory)等の揮発性メモリである。ＲＡＭ２２は、ＣＰＵ２１の作業領域として使用され、例えばＮＡＮＤパッケージＰＫＧを管理するためのファームウェアや各種管理テーブル等を保持する。管理テーブルは、例えば読み出し電圧の補正値が記録されるＬＵＴ（Look Up Table）を含んでいる。
【００１８】
ホストインターフェイス回路２３は、ホストバスを介してホスト機器２と接続され、メモリコントローラ２０及びホスト機器２間のデータ、コマンド、及びアドレスの転送を制御する。例えば、ホストインターフェイス回路２３は、ＳＡＴＡ（Serial Advanced Technology Attachment）、ＳＡＳ（Serial Attached SCSI）、ＰＣＩｅ（PCI Express）（登録商標）等の通信インターフェイス規格をサポートし得る。
【００１９】
ＥＣＣ回路２４は、データのエラー訂正処理を実行する。書き込み動作時においてＥＣＣ回路２４は、ホスト機器２から受信した書き込みデータに基づいてパリティを生成し、生成したパリティを書き込みデータに付与する。読み出し動作時においてＥＣＣ回路２４は、ＮＡＮＤパッケージＰＫＧから受信した読み出しデータに基づいてシンドロームを生成し、生成したシンドロームに基づいて読み出しデータのエラーを検出及び訂正する。
【００２０】
温度センサ２５は、メモリシステム１のシステム温度を計測する。計測された温度は、例えばＣＰＵ２１によって参照され、後述するパトロール動作において使用される。尚、温度センサ２５は、メモリコントローラ２０に含まれていなくても良く、メモリシステム１内においてメモリコントローラ２０と外部接続されても良い。また、温度センサ２５は、後述するＮＡＮＤ型フラッシュメモリ１０に内蔵されていても良い。この場合にメモリコントローラ２０は、ＮＡＮＤ型フラッシュメモリ１０にコマンドを入力することによって、ＮＡＮＤ型フラッシュメモリ１０から温度情報を取得することが出来る。
【００２１】
ＮＡＮＤインターフェイス回路２６は、メモリコントローラ２０及びＮＡＮＤパッケージＰＫＧ間におけるデータ、コマンド、及びアドレスの転送を制御する。ＮＡＮＤインターフェイス回路２６は、ＮＡＮＤインターフェイス規格をサポートしている。
【００２２】
ＤＲＡＭインターフェイス回路２７は、ＤＲＡＭ３０に接続され、メモリコントローラ２０とＤＲＡＭ３０との間の通信を司る。ＤＲＡＭインターフェイス回路２７は、ＤＲＡＭインターフェイス規格をサポートしている。
【００２３】
タイマ２８は、メモリシステム１の各種動作に関連する時間や、メモリセルにデータが書き込まれてからの経過時間を計測することが出来る。尚、タイマ２８は、メモリコントローラ２０に含まれていなくても良く、メモリシステム１内においてメモリコントローラ２０と外部接続されても良い。
【００２４】
ＤＲＡＭ３０は、データを一時的に記憶することが可能な揮発性メモリであり、メモリコントローラ２０の外部記憶領域として使用される。例えば、ＤＲＡＭ３０は、ホスト機器２から受信した書き込みデータを一時的に記憶する。ＤＲＡＭ３０は、メモリコントローラ２０に内蔵されても良い。
【００２５】
図２は、第１実施形態に係るメモリシステム１におけるＮＡＮＤパッケージＰＫＧ０及びＰＫＧ１並びにＮＡＮＤインターフェイス回路２６の構成例を示している。
【００２６】
図２に示すように、ＮＡＮＤパッケージＰＫＧ０及びＰＫＧ１のそれぞれは、例えばＮＡＮＤ型フラッシュメモリ１０Ａ、１０Ｂ、１０Ｃ及び１０Ｄを含んでいる。ＮＡＮＤインターフェイス回路２６は、例えばチャネル制御回路ＣＣ０、ＣＣ１、ＣＣ２及びＣＣ３を含んでいる。
【００２７】
ＮＡＮＤ型フラッシュメモリ１０は、データを不揮発に記憶することが出来る。ＮＡＮＤ型フラッシュメモリ１０の構成ついては後述する。
【００２８】
チャネル制御回路ＣＣ０〜ＣＣ３のそれぞれは、ＮＡＮＤインターフェイス規格をサポートしている。チャネル制御回路ＣＣ０〜ＣＣ３は、それぞれバスラインＣｈ０〜Ｃｈ３に接続される。バスラインＣｈ０〜Ｃｈ３のそれぞれは、ＮＡＮＤインターフェイス規格に基づいた信号の送受信に使用される。
【００２９】
また、バスラインＣｈ０〜Ｃｈ３のそれぞれは、複数のＮＡＮＤ型フラッシュメモリ１０に接続される。つまり、チャネル制御回路ＣＣ０〜ＣＣ３のそれぞれは、対応するバスラインＣｈを介して、複数のＮＡＮＤ型フラッシュメモリ１０に接続される。
【００３０】
具体的には、チャネル制御回路ＣＣ０は、バスラインＣｈ０を介して、ＮＡＮＤパッケージＰＫＧ０内のＮＡＮＤ型フラッシュメモリ１０Ａ及び１０Ｂに接続される。チャネル制御回路ＣＣ１は、バスラインＣｈ１を介して、ＮＡＮＤパッケージＰＫＧ０内のＮＡＮＤ型フラッシュメモリ１０Ｃ及び１０Ｄに接続される。
【００３１】
チャネル制御回路ＣＣ２は、バスラインＣｈ２を介して、ＮＡＮＤパッケージＰＫＧ１内のＮＡＮＤ型フラッシュメモリ１０Ａ及び１０Ｂに接続される。チャネル制御回路ＣＣ３は、バスラインＣｈ３を介して、ＮＡＮＤパッケージＰＫＧ１内のＮＡＮＤ型フラッシュメモリ１０Ｃ及び１０Ｄに接続される。
【００３２】
以上のように、各ＮＡＮＤパッケージＰＫＧは、異なるチャネル制御回路ＣＣに接続された複数のＮＡＮＤ型フラッシュメモリ１０を含んでいる。例えば、共通のバスラインＣｈに接続された複数のＮＡＮＤ型フラッシュメモリ１０は、それぞれ異なるバンクＢＮＫに割り当てられる。
【００３３】
バンクＢＮＫは、例えば異なるバスラインＣｈに接続されたＮＡＮＤ型フラッシュメモリ１０の組で定義される。ＮＡＮＤパッケージＰＫＧ０及びＰＫＧ１の組は、例えばバンクＢＮＫ０及びＢＮＫ１を含んでいる。
【００３４】
例えば、バンクＢＮＫ０は、ＮＡＮＤパッケージＰＫＧ０内のＮＡＮＤ型フラッシュメモリ１０Ａ及び１０Ｃと、ＮＡＮＤパッケージＰＫＧ０内のＮＡＮＤ型フラッシュメモリ１０Ａ及び１０Ｃとを含んでいる。バンクＢＮＫ１は、ＮＡＮＤパッケージＰＫＧ０内のＮＡＮＤ型フラッシュメモリ１０Ｂ及び１０Ｄと、ＮＡＮＤパッケージＰＫＧ１内のＮＡＮＤ型フラッシュメモリ１０Ｂ及び１０Ｄとを含んでいる。
【００３５】
尚、以上で説明したメモリシステム１の構成はあくまで一例であり、これに限定されない。例えば、メモリシステム１が備えるＮＡＮＤパッケージＰＫＧの個数や揮発性メモリの個数は、それぞれ任意の個数に設計され得る。メモリシステム１は、ＤＲＡＭ３０の替わりにその他の揮発性メモリを備えても良い。メモリコントローラ２０の各機能は、専用のハードウェア回路によって実現されても良いし、ＣＰＵ２１がファームウェアを実行することによって実現されても良い。
【００３６】
また、ＮＡＮＤパッケージＰＫＧが含むＮＡＮＤ型フラッシュメモリ１０の個数は、任意の個数に設計され得る。各ＮＡＮＤパッケージＰＫＧに接続されるチャネル制御回路ＣＣの個数は、任意の個数に設計され得る。バンクＢＮＫの個数は、各ＮＡＮＤパッケージＰＫＧが含むＮＡＮＤ型フラッシュメモリ１０の個数と、ＮＡＮＤパッケージＰＫＧに接続されるチャネル制御回路ＣＣの個数とに基づいて、適宜変更され得る。
【００３７】
［１−１−２］ＮＡＮＤ型フラッシュメモリ１０の構成について
図３は、第１実施形態に係るＮＡＮＤ型フラッシュメモリ１０の構成例を示している。
【００３８】
図３に示すように、ＮＡＮＤ型フラッシュメモリ１０は、例えばメモリセルアレイ１１、入出力回路１２、レジスタ部１３、ロジックコントローラ１４、シーケンサ１５、レディ／ビジー制御回路１６、電圧生成回路１７、ロウデコーダモジュール１８、及びセンスアンプモジュール１９を含んでいる。
【００３９】
メモリセルアレイ１１は、ブロックＢＬＫ０〜ＢＬＫｎ（ｎは１以上の整数）を含んでいる。ブロックＢＬＫは、データを不揮発に保持することが可能なメモリセルの集合であり、例えばデータの使用単位として使用される。各メモリセルは、１本のビット線ＢＬと１本のワード線ＷＬとに関連付けられる。
【００４０】
入出力回路１２は、例えば８ビット幅の入出力信号Ｉ／Ｏ１〜Ｉ／Ｏ８をメモリコントローラ２０との間で送受信する。入出力信号Ｉ／Ｏは、例えばデータＤＡＴ、アドレス情報ＡＤＤ、コマンドＣＭＤ等を含み得る。
【００４１】
例えば、書き込み動作において入出力回路１２は、メモリコントローラ２０から受け取った書き込みデータＤＡＴをセンスアンプモジュール１９に転送する。また、読み出し動作において入出力回路１２は、センスアンプモジュール１９から転送された読み出しデータＤＡＴをメモリコントローラ２０に送信する。
【００４２】
レジスタ部１３は、ステータスレジスタ１３Ａ、アドレスレジスタ１３Ｂ、及びコマンドレジスタ１３Ｃを含んでいる。
【００４３】
ステータスレジスタ１３Ａは、ステータス情報ＳＴＳを保持する。ステータス情報ＳＴＳは、ＮＡＮＤ型フラッシュメモリ１０のステータスや、読み出し動作に関するパラメータを含み得る。ステータス情報ＳＴＳは、例えばシーケンサ１５の制御に基づいて入出力回路１２に転送され、その後メモリコントローラ２０に出力される。
【００４４】
アドレスレジスタ１３Ｂは、入出力回路１２から転送されたアドレス情報ＡＤＤを保持する。アドレス情報ＡＤＤは、例えばブロックアドレス、ページアドレス、及びカラムアドレス等を含み得る。アドレス情報ＡＤＤは、例えばシーケンサ１５の制御に基づいて電圧生成回路１７、ロウデコーダモジュール１８、及びセンスアンプモジュール１９に転送される。
【００４５】
コマンドレジスタ１３Ｃは、入出力回路１２から転送されたコマンドＣＭＤを保持する。コマンドＣＭＤは、シーケンサ１５によって参照される。
【００４６】
ロジックコントローラ１４は、メモリコントローラ２０から受信した制御信号に基づいて、入出力回路１２及びシーケンサ１５のそれぞれを制御する。このような制御信号としては、例えばチップイネーブル信号／ＣＥ、コマンドラッチイネーブル信号ＣＬＥ、アドレスラッチイネーブル信号ＡＬＥ、ライトイネーブル信号／ＷＥ、リードイネーブル信号／ＲＥ、及びライトプロテクト信号／ＷＰが使用される。
【００４７】
チップイネーブル信号／ＣＥは、ＮＡＮＤ型フラッシュメモリ１０をイネーブルにするための信号である。コマンドラッチイネーブル信号ＣＬＥは、受け取った入出力信号Ｉ／ＯがコマンドＣＭＤであることを入出力回路１２に通知するための信号である。アドレスラッチイネーブル信号ＡＬＥは、受け取った入出力信号Ｉ／Ｏがアドレス情報ＡＤＤであることを入出力回路１２に通知するための信号である。
【００４８】
ライトイネーブル信号／ＷＥは、入出力信号Ｉ／Ｏの入力を入出力回路１２に命令するための信号である。リードイネーブル／ＲＥは、入出力信号Ｉ／Ｏの出力を入出力回路１２に命令する信号である。ライトプロテクト信号/ＷＰは、電源のオンオフ時にＮＡＮＤ型フラッシュメモリ１０を保護状態にするための信号である。
【００４９】
シーケンサ１５は、ＮＡＮＤ型フラッシュメモリ１０全体の動作を制御する。例えば、シーケンサ１５は、レジスタ部１３に保持されたアドレス情報ＡＤＤ及びコマンドＣＭＤに基づいて電圧生成回路１７、ロウデコーダモジュール１８、センスアンプモジュール１９等を制御して、各種動作を実行する。
【００５０】
レディ／ビジー制御回路１６は、シーケンサ１５の動作状態に基づいてレディ／ビジー信号ＲＢｎを生成する。レディ／ビジー信号ＲＢｎは、ＮＡＮＤ型フラッシュメモリ１０がメモリコントローラ２０からの命令を受け付けるレディ状態であるか、命令を受け付けないビジー状態であるかを、メモリコントローラ２０に通知するための信号である。
【００５１】
電圧生成回路１７は、シーケンサ１５の制御に基づいて所望の電圧を生成する。そして、電圧生成回路１７は、生成した電圧をメモリセルアレイ１１、ロウデコーダモジュール１８、センスアンプモジュール１９等に供給する。
【００５２】
ロウデコーダモジュール１８は、メモリセルアレイ１１に設けられたワード線等に接続される。例えば、ロウデコーダモジュール１８は、ブロックアドレスに基づいて各種動作を実行するブロックＢＬＫを選択する。そして、ロウデコーダモジュール１８は、電圧生成回路１７から供給された電圧を、選択したブロックＢＬＫ内の各種配線に転送する。
【００５３】
センスアンプモジュール１９は、メモリセルアレイ１１に設けられたビット線に接続される。読み出し動作においてセンスアンプモジュール１９は、メモリセルアレイ１１からデータＤＡＴを読み出し、読み出したデータＤＡＴを入出力回路１２に転送する。書き込み動作時においてセンスアンプモジュール１９は、入出力回路１２から受け取ったデータＤＡＴに基づいて、ビット線に所望の電圧を印加する。
【００５４】
［１−１−３］メモリセルアレイ１１の構成について
（メモリセルアレイ１１の回路構成）
図４は、第１実施形態におけるＮＡＮＤ型フラッシュメモリの備えるメモリセルアレイ１１の回路構成の一例であり、１つのブロックＢＬＫを抽出して示している。
【００５５】
図４に示すように、ブロックＢＬＫは、例えば４つのストリングユニットＳＵ０〜ＳＵ３を含んでいる。各ストリングユニットＳＵは、複数のＮＡＮＤストリングＮＳを含んでいる。
【００５６】
複数のＮＡＮＤストリングＮＳは、ビット線ＢＬ０〜ＢＬｍ（ｍは１以上の整数）にそれぞれ関連付けられている。各ＮＡＮＤストリングＮＳは、例えばメモリセルトランジスタＭＴ０〜ＭＴ１５、ダミートランジスタＬＤＴ及びＵＤＴ、並びに選択トランジスタＳＴ１及びＳＴ２を含んでいる。
【００５７】
メモリセルトランジスタＭＴは、制御ゲート及び電荷蓄積層を含み、データを不揮発に記憶する。ダミートランジスタＬＤＴ及びＵＤＴのそれぞれは、例えばメモリセルトランジスタＭＴと同様の構成を有する。また、ダミートランジスタＬＤＴ及びＵＤＴのそれぞれは、データの記憶に使用されない。選択トランジスタＳＴ１及びＳＴ２のそれぞれは、各種動作時におけるストリングユニットＳＵの選択に使用される。
【００５８】
各ＮＡＮＤストリングＮＳにおいて、選択トランジスタＳＴ１のドレインは、関連付けられたビット線ＢＬに接続される。選択トランジスタＳＴ１のソースと、ダミートランジスタＵＤＴのドレインとの間には、メモリセルトランジスタＭＴ８〜ＭＴ１５が直列接続される。ダミートランジスタＵＤＴのソースは、ダミートランジスタＬＤＴのドレインに接続される。ダミートランジスタＬＤＴのソースと、選択トランジスタＳＴ２のドレインとの間には、メモリセルトランジスタＭＴ０〜ＭＴ７が直列接続される。
【００５９】
同一のブロックＢＬＫにおいて、ストリングユニットＳＵ０〜ＳＵ３のそれぞれに含まれた選択トランジスタＳＴ１のゲートは、それぞれ選択ゲート線ＳＧＤ０〜ＳＧＤ３に共通接続される。メモリセルトランジスタＭＴ０〜ＭＴ１５のそれぞれの制御ゲートは、それぞれワード線ＷＬ０〜ＷＬ１５に共通接続される。ダミートランジスタＵＤＴ及びＬＤＴのそれぞれの制御ゲートは、それぞれダミーワード線ＵＤＷＬ及びＬＤＷＬに共通接続される。選択トランジスタＳＴ２のゲートは、選択ゲート線ＳＧＳに共通接続される。
【００６０】
ビット線ＢＬ０〜ＢＬｍには、それぞれ異なるカラムアドレスが割り当てられる。各ビット線ＢＬは、複数のブロックＢＬＫ間で対応するＮＡＮＤストリングＮＳの選択トランジスタＳＴ１に共通接続される。ワード線ＷＬ０〜ＷＬ１５並びにダミーワード線ＵＤＷＬ及びＬＤＷＬのそれぞれは、ブロックＢＬＫ毎に設けられる。ソース線ＳＬは、例えば複数のブロックＢＬＫ間で共有される。
【００６１】
１つのストリングユニットＳＵ内で共通のワード線ＷＬに接続された複数のメモリセルトランジスタＭＴの集合は、例えばセルユニットＣＵと称される。例えば、それぞれが１ビットデータを記憶するメモリセルトランジスタＭＴを含むセルユニットＣＵの記憶容量が、「１ページデータ」として定義される。セルユニットＣＵは、メモリセルトランジスタＭＴが記憶するデータのビット数に応じて、２ページデータ以上の記憶容量を有し得る。
【００６２】
尚、以上で説明したＮＡＮＤ型フラッシュメモリ１０の構成はあくまで一例であり、これに限定されない。例えば、各ＮＡＮＤストリングＮＳが含むメモリセルトランジスタＭＴ並びに選択トランジスタＳＴ１及びＳＴ２の個数は、それぞれ任意の個数に設計され得る。各ブロックＢＬＫが含むストリングユニットＳＵの個数は、任意の個数に設計され得る。ダミートランジスタとして設定されるトランジスタの配置及び個数は、任意の配置及び個数に設計され得る。
【００６３】
（メモリセルアレイ１１の構造）
以下に、第１実施形態におけるＮＡＮＤ型フラッシュメモリ１０の備えるメモリセルアレイ１１の構造の一例について説明する。
【００６４】
尚、以下で参照される図面において、Ｘ方向はワード線ＷＬの延伸方向に対応し、Ｙ方向はビット線ＢＬの延伸方向に対応し、Ｚ方向はＮＡＮＤ型フラッシュメモリ１０が形成される半導体基板４０の表面に対する鉛直方向に対応している。
【００６５】
また、以下で参照される断面図では、図を見易くするために絶縁層（層間絶縁膜）、配線、コンタクト等の構成要素が適宜省略されている。また、平面図には、図を見易くするためにハッチングが適宜付加されている。平面図に付加されたハッチングは、ハッチングが付加された構成要素の素材や特性とは必ずしも関連していない。
【００６６】
図５は、第１実施形態におけるＮＡＮＤ型フラッシュメモリ１０の備えるメモリセルアレイ１１の平面レイアウトの一例であり、ストリングユニットＳＵ０及びＳＵ１のそれぞれに対応する構造体を抽出して示している。
【００６７】
図５に示すように、メモリセルアレイ１１が形成される領域には、例えば複数のスリットＳＬＴと、複数のストリングユニットＳＵと、複数のビット線ＢＬとが含まれている。
【００６８】
複数のスリットＳＬＴは、それぞれがＸ方向に延伸し、Ｙ方向に配列している。Ｙ方向に隣り合うスリットＳＬＴ間には、例えば１つのストリングユニットＳＵが配置される。
【００６９】
各ストリングユニットＳＵは、複数のメモリピラーＭＰを含んでいる。複数のメモリピラーＭＰは、例えばＸＹ平面に広がった千鳥状に配置される。メモリピラーＭＰの各々は、例えば１つのＮＡＮＤストリングＮＳとして機能する。
【００７０】
複数のビット線ＢＬは、それぞれがＹ方向に延伸し、Ｘ方向に配列している。例えば、各ビット線ＢＬは、ストリングユニットＳＵ毎に少なくとも１つのメモリピラーＭＰと重なるように配置される。本例において、各メモリピラーＭＰには、２本のビット線ＢＬが重なって配置されている。
【００７１】
メモリピラーＭＰに重なっている複数のビット線ＢＬのうち１本のビット線ＢＬと、当該メモリピラーＭＰとの間には、コンタクトＣＰが設けられる。そして、各メモリピラーＭＰは、コンタクトＣＰを介して対応するビット線ＢＬと電気的に接続される。
【００７２】
図６は、図５のＶＩ−ＶＩ線に沿った断面図であり、第１実施形態におけるＮＡＮＤ型フラッシュメモリ１０の備えるメモリセルアレイ１１の断面構造の一例を示している。
【００７３】
図６に示すように、メモリセルアレイ１１が形成される領域には、例えば半導体基板４０、導電体層４１〜４８、メモリピラーＭＰ、及びコンタクトＣＰが含まれている。
【００７４】
具体的には、半導体基板４０の上方に、絶縁層を介して導電体層４１が設けられる。例えば導電体層４１は、ＸＹ平面に沿って広がった板状に形成され、ソース線ＳＬとして使用される。図示が省略されているが、半導体基板４０と導電体層４１との間の領域には、例えばセンスアンプモジュール１９等の回路が設けられる。
【００７５】
導電体層４１上には、ＸＺ平面に沿って広がった複数のスリットＳＬＴが、Ｙ方向に配列している。スリットＳＬＴ内には、絶縁体が埋め込まれる。
【００７６】
導電体層４１上且つ隣り合うスリットＳＬＴ間には、下層から順に、導電体層４２、８個の導電体層４３、導電体層４４、導電体層４５、８個の導電体層４６、及び導電体層４７が設けられる。これらの導電体層のうちＺ方向に隣り合う導電体層は、層間絶縁膜を介して積層される。導電体層４２〜４７は、それぞれがＸＹ平面に沿った板状に形成される。
【００７７】
導電体層４２は、選択ゲート線ＳＧＳとして使用される。８個の導電体層４３は、下層から順に、それぞれワード線ＷＬ０〜ＷＬ７として使用される。導電体層４４及び４５は、それぞれダミーワード線ＬＤＷＬ及びＵＤＷＬとして使用される。８個の導電体層４６は、下層から順に、それぞれワード線ＷＬ８〜ＷＬ１５として使用される。導電体層４７は、選択ゲート線ＳＧＤとして使用される。
【００７８】
導電体層４７の上方に、絶縁層を介して導電体層４８が設けられる。例えば導電体層４８は、Ｙ方向に沿って延伸したライン状に形成され、ビット線ＢＬとして使用される。つまり、図示せぬ領域において複数の導電体層４８は、Ｘ方向に沿って配列している。
【００７９】
各メモリピラーＭＰは、Ｚ方向に沿って延伸した柱状に形成され、例えば導電体層４２〜４７を貫通している。例えば、メモリピラーＭＰの上端は、導電体層４７が設けられた層と導電体層４８が設けられた層との間の層に含まれている。メモリピラーＭＰの下端は、導電体層４１に接触している。
【００８０】
また、各メモリピラーＭＰは、Ｚ方向に連結された複数の柱状部を含んでいる。具体的には、メモリピラーＭＰの構造は、下部ピラーＬＭＰ、上部ピラーＵＭＰ、及び接合部ＪＴに分類され得る。
【００８１】
上部ピラーＵＭＰは、下部ピラーＬＭＰの上方に設けられる。下部ピラーＬＭＰと上部ピラーＵＭＰとの間は、例えば接合部ＪＴを介して接合される。例えば、接合部ＪＴの外径は、下部ピラーＬＭＰと接合部ＪＴとの接触部分の外径よりも大きく、上部ピラーＵＭＰと接合部ＪＴとの接触部分の外径よりも大きい。接合部ＪＴが設けられている接合層のＺ方向における間隔（導電体層４４及び４５間の間隔）は、隣り合う導電体層４３の間隔よりも広く、且つ隣り合う導電体層４６の間隔よりも広い。
【００８２】
以下に、メモリピラーＭＰ内の詳細な構造について説明する。
【００８３】
図７は、図６のＶＩＩ−ＶＩＩ線に沿った断面図であり、導電体層４３を含む層におけるメモリピラーＭＰ及びワード線ＷＬの断面構造の一例を示している。
【００８４】
図７に示すように、メモリピラーＭＰは、例えば半導体部材５０、トンネル酸化膜５１、絶縁膜５２、及びブロック絶縁膜５３を含んでいる。
【００８５】
導電体層４３を含む層において半導体部材５０は、メモリピラーＭＰの中央部に設けられる。トンネル酸化膜５１は、半導体部材５０の側面を囲っている。絶縁膜５２は、トンネル酸化膜５１の側面を囲っている。ブロック絶縁膜５３は、絶縁膜５２の側面を囲っている。導電体層４３は、ブロック絶縁膜５３の側面を囲っている。
【００８６】
言い換えると、ブロック絶縁膜５３は、メモリピラーＭＨを形成するメモリホールの内壁に設けられる。絶縁膜５２は、ブロック絶縁膜５３の内壁に設けられる。トンネル酸化膜５１は、絶縁膜５２の内壁に設けられる。半導体部材５０は、トンネル酸化膜５１の内壁に設けられる。
【００８７】
その他の部分におけるメモリピラーＭＰの断面構造は、例えば図７を用いて説明した断面構造と同様のため、説明を省略する。尚、メモリピラーＭＰにおいて、半導体部材５０の内壁には、半導体部材５０と異なる材料が含まれていても良い。
【００８８】
以上で説明したメモリピラーＭＰの構成では、例えばメモリピラーＭＰと導電体層４２とが交差する部分が、選択トランジスタＳＴ２として機能する。メモリピラーＭＰと導電体層４３とが交差する部分と、メモリピラーＭＰと導電体層４６とが交差する部分とのそれぞれが、メモリセルトランジスタＭＴとして機能する。
【００８９】
メモリピラーＭＰと導電体層４４とが交差する部分が、ダミートランジスタＬＤＴとして機能する。メモリピラーＭＰと導電体層４５とが交差する部分が、ダミートランジスタＬＤＴとして機能する。メモリピラーＭＰと導電体層４６とが交差する部分が、選択トランジスタＳＴ１として機能する。
【００９０】
つまり、半導体部材５０は、メモリセルトランジスタＭＴ、ダミートランジスタＬＤＴ及びＵＤＴ、並びに選択トランジスタＳＴ１及びＳＴ２のそれぞれのチャネルとして機能する。絶縁膜５２は、メモリセルトランジスタＭＴの電荷蓄積層として機能する。
【００９１】
選択トランジスタＳＴ２、メモリセルトランジスタＭＴ０〜ＭＴ７、及びダミートランジスタＬＤＴのそれぞれは、下部ピラーＬＭＰに対応して設けられる。選択トランジスタＳＴ１、メモリセルトランジスタＭＴ８〜ＭＴ１５、及びダミートランジスタＵＤＴのそれぞれは、上部ピラーＵＭＰに対応して設けられる。
【００９２】
図６に戻り、各メモリピラーＭＰ内の半導体部材５０上には、柱状のコンタクトＣＰが設けられる。コンタクトＣＰの上面には、１個の導電体層４８、すなわち１本のビット線ＢＬが接触している。尚、メモリピラーＭＰと導電体層４８との間は、２つ以上のコンタクトを介して電気的に接続されても良いし、その他の配線を介して電気的に接続されても良い。
【００９３】
以上で説明したメモリセルアレイ１１の構造の一例では、導電体層４１上且つ隣り合うスリットＳＬＴ間の構造体が、１つのストリングユニットＳＵに対応している。これに限定されず、メモリセルアレイ１１の構造は、その他の構造であっても良い。
【００９４】
例えば、隣り合うスリットＳＬＴ間に設けられるストリングユニットＳＵの個数は、任意の個数に設計され得る。図５に示されたメモリピラーＭＰの個数及び配置はあくまで一例であり、メモリピラーＭＰは任意の個数及び配置に設計され得る。各メモリピラーＭＰと重なるビット線ＢＬの本数は、任意の本数に設計され得る。
【００９５】
各ＮＡＮＤストリングＮＳに含まれるメモリセルトランジスタＭＴ、ダミートランジスタＵＤＴ及びＬＤＴ、並びに選択トランジスタＳＴ１及びＳＴ２のそれぞれは、任意の個数に設計され得る。
【００９６】
ワード線ＷＬ、ダミーワード線ＵＤＷＬ及びＬＤＷＬ、並びに選択ゲート線ＳＧＤ及びＳＧＳの本数は、それぞれメモリセルトランジスタＭＴ、ダミートランジスタＵＤＴ及びＬＤＴ、並びに選択トランジスタＳＴ１及びＳＴ２の個数に基づいて変更され得る。
【００９７】
選択ゲート線ＳＧＳには、複数層に設けられた導電体層４２が割り当てられても良い。選択ゲート線ＳＧＤには、複数層に設けられた導電体層４７が割り当てられても良い。メモリピラーＭＰは、導電体層４７を貫通するピラーと、その他の導電体層４２〜４６を貫通するピラーとがＺ方向に連結された構造であっても良い。
【００９８】
各メモリピラーＭＰは、接合部ＪＴを有していなくても良い。各メモリピラーＭＰに接合部ＪＴが形成されない場合、メモリピラーＭＰ内の上部ピラーＵＭＰと下部ピラーＬＭＰとの間は、接合部ＪＴを介さずに直接接続される。
【００９９】
最下層の導電体層４３と、導電体層４２との間には、ダミーワード線として使用される導電体層が含まれていても良い。同様に、最上層の導電体層４６と、導電体層４７との間には、ダミーワード線として使用される導電体層が含まれていても良い。
【０１００】
［１−１−４］ロウデコーダモジュール１８の回路構成について
図８は、第１実施形態におけるＮＡＮＤ型フラッシュメモリ１０の備えるロウデコーダモジュール１８の回路構成の一例を示し、電圧生成回路１７とメモリセルアレイ１１との間の配線も併せて示している。
【０１０１】
図８に示すように、ロウデコーダモジュール１８は、例えばロウデコーダＲＤ０〜ＲＤｎを含んでいる。ロウデコーダＲＤ０〜ＲＤｎは、それぞれブロックＢＬＫ０〜ＢＬＫｎに関連付けられている。
【０１０２】
以下に、ブロックＢＬＫ０に対応するロウデコーダＲＤ０に着目して、ロウデコーダＲＤの詳細な回路構成について説明する。尚、その他のロウデコーダＲＤの回路構成は、ロウデコーダＲＤ０と同様であるため、説明を省略する。
【０１０３】
ロウデコーダＲＤは、例えばブロックデコーダＢＤ並びにトランジスタＴＲ０〜ＴＲ２２を含んでいる。
【０１０４】
ブロックデコーダＢＤは、ブロックアドレスをデコードして、デコード結果に基づいて転送ゲート線ＴＧに所定の電圧を印加する。転送ゲート線ＴＧは、トランジスタＴＲ０〜ＴＲ２２のそれぞれのゲートに共通接続される。
【０１０５】
トランジスタＴＲ０〜ＴＲ２２のそれぞれは、高耐圧のｎチャネルＭＯＳトランジスタである。トランジスタＴＲは、電圧生成回路１７から配線された信号線と、ブロックＢＬＫ０に設けられた配線との間に接続される。
【０１０６】
具体的には、トランジスタＴＲ０のドレインは、信号線ＳＧＳＤに接続される。トランジスタＴＲ０のソースは、ブロックＢＬＫ０の選択ゲート線ＳＧＳに接続される。
【０１０７】
トランジスタＴＲ１〜ＴＲ８のそれぞれのドレインは、それぞれ信号線ＣＧ０〜ＣＧ７に接続される。トランジスタＴＲ１〜ＴＲ８のそれぞれのソースは、ブロックＢＬＫ０に対応するワード線ＷＬ０〜ＷＬ７のそれぞれの一端にそれぞれ接続される。
【０１０８】
トランジスタＴＲ９のドレインは、信号線ＬＣＧＤに接続される。トランジスタＴＲ９のソースは、ダミーワード線ＬＤＷＬに接続される。トランジスタＴＲ１０のドレインは、信号線ＵＣＧＤに接続される。トランジスタＴＲ１０のソースは、ダミーワード線ＵＤＷＬに接続される。
【０１０９】
トランジスタＴＲ１１〜ＴＲ１８のそれぞれのドレインは、それぞれ信号線ＣＧ８〜ＣＧ１５に接続される。トランジスタＴＲ１１〜ＴＲ１８のそれぞれのソースは、ブロックＢＬＫ０に対応するワード線ＷＬ８〜ＷＬ１５のそれぞれの一端にそれぞれ接続される。
【０１１０】
トランジスタＴＲ１９〜ＴＲ２２のそれぞれのドレインは、それぞれ信号線ＳＧＤＤ０〜ＳＧＤＤ３に接続される。トランジスタＴＲ１９〜ＴＲ２２のそれぞれのソースは、それぞれ選択ゲート線ＳＧＤ０〜ＳＧＤ３に接続される。
【０１１１】
以上の構成により、ロウデコーダモジュール１８は、各種動作を実行するブロックＢＬＫを選択することが出来る。
【０１１２】
具体的には、各種動作時において、選択されたブロックＢＬＫに対応するブロックデコーダＢＤは、“Ｈ”レベルの電圧を転送ゲート線ＴＧに印加し、非選択のブロックＢＬＫに対応するブロックデコーダＢＤは、“Ｌ”レベルの電圧を転送ゲート線ＴＧに印加する。
【０１１３】
本明細書において、“Ｈ”レベルは、ｎチャネルＭＯＳトランジスタがオン状態になり、ｐチャネルＭＯＳトランジスタがオフ状態になる電圧に対応している。“Ｌ”レベルは、ｎチャネルＭＯＳトランジスタがオフ状態になり、ｐチャネルＭＯＳトランジスタがオン状態になる電圧に対応している。
【０１１４】
例えば、ブロックＢＬＫ０が選択された場合、ロウデコーダＲＤ０に含まれたトランジスタＴＲ０〜ＴＲ２２がオン状態になり、その他のロウデコーダＲＤに含まれたトランジスタＴＲ０〜ＴＲ２２がオフ状態になる。この場合、ブロックＢＬＫ０に設けられた各種配線と、対応する信号線との間の電流経路が形成され、他のブロックＢＬＫに設けられた各種配線と、対応する信号線との間の電流経路が遮断される。
【０１１５】
その結果、電圧生成回路１７によって各信号線に印加された電圧が、ロウデコーダＲＤ０を介して、選択されたブロックＢＬＫ０に設けられた各種配線に印加される。ロウデコーダモジュール１８は、その他のブロックＢＬＫが選択された場合についても同様に動作することが可能である。
【０１１６】
尚、以上で説明したロウデコーダモジュール１８の構成はあくまで一例であり、これに限定されない。例えば、ロウデコーダモジュール１８が含むトランジスタＴＲの個数は、各ブロックＢＬＫに設けられる配線の本数に基づいた個数に設計され得る。
【０１１７】
［１−１−５］センスアンプモジュール１９の回路構成について
図９は、第１実施形態におけるＮＡＮＤ型フラッシュメモリ１０の備えるセンスアンプモジュール１９の回路構成の一例を示している。
【０１１８】
図９に示すように、センスアンプモジュール１９は、例えばセンスアンプユニットＳＡＵ０〜ＳＡＵｍを含んでいる。センスアンプユニットＳＡＵ０〜ＳＡＵｍは、それぞれビット線ＢＬ０〜ＢＬｍにそれぞれ関連付けられている。
【０１１９】
各センスアンプユニットＳＡＵは、例えばセンスアンプ部ＳＡ、並びにラッチ回路ＳＤＬ、ＡＤＬ、ＢＤＬ及びＸＤＬを含んでいる。センスアンプ部ＳＡ、並びにラッチ回路ＳＤＬ、ＡＤＬ、ＢＤＬ及びＸＤＬは、互いにデータを送受信可能なように接続される。
【０１２０】
センスアンプ部ＳＡは、例えば読み出し動作において、対応するビット線ＢＬの電圧に基づいて、読み出しデータが“０”であるか“１”であるかを判定する。言い換えると、センスアンプ部ＳＡは、対応するビット線ＢＬに読み出されたデータをセンスして、選択されたメモリセルの記憶するデータを判定する。
【０１２１】
ラッチ回路ＳＤＬ、ＡＤＬ、ＢＤＬ及びＸＤＬのそれぞれは、読み出しデータや書き込みデータ等を一時的に保持する。ラッチ回路ＸＤＬは、図示されない入出力回路に接続され、センスアンプユニットＳＡＵと入出力回路との間のデータの入出力に使用され得る。
【０１２２】
ラッチ回路ＸＤＬは、ＮＡＮＤ型フラッシュメモリ１０のキャッシュメモリとして使用され得る。例えば、ＮＡＮＤ型フラッシュメモリ１０は、ラッチ回路ＳＤＬ、ＡＤＬ及びＢＤＬが使用中であったとしても、ラッチ回路ＸＤＬが空いていればレディ状態になることが出来る。
【０１２３】
図１０は、第１実施形態におけるＮＡＮＤ型フラッシュメモリ１０の備えるセンスアンプモジュール１９に含まれたセンスアンプユニットＳＡＵの回路構成の一例を示している。
【０１２４】
図１０に示すように、センスアンプ部ＳＡは、例えばトランジスタ６０〜６８、並びにキャパシタ６９を含んでいる。ラッチ回路ＳＤＬは、例えばトランジスタ７０及び７１、並びにインバータ７２及び７３を含んでいる。
【０１２５】
例えば、トランジスタ６０は、ｐチャネルＭＯＳトランジスタである。トランジスタ６１〜６８、７０及び７１のそれぞれは、ｎチャネルＭＯＳトランジスタである。トランジスタ６３は、高耐圧のｎチャネルＭＯＳトランジスタである。
【０１２６】
トランジスタ６０の一端は、電源線に接続される。トランジスタ６０のゲートは、ラッチ回路ＳＤＬのノードＩＮＶ（ＳＤＬ）に接続される。トランジスタ６０の一端に接続された電源線には、例えば電源電圧Ｖｄｄが印加される。トランジスタ６１の一端は、トランジスタ６０の他端に接続される。トランジスタ６１の他端はノードＣＯＭに接続される。トランジスタ６１のゲートには、制御信号ＢＬＸが入力される。
【０１２７】
トランジスタ６２の一端は、ノードＣＯＭに接続される。トランジスタ６２のゲートには、制御信号ＢＬＣが入力される。トランジスタ６３の一端は、トランジスタ６２の他端に接続される。トランジスタ６３の他端は、対応するビット線ＢＬに接続される。トランジスタ６３のゲートには、制御信号ＢＬＳが入力される。
【０１２８】
トランジスタ６４の一端は、ノードＣＯＭに接続される。トランジスタ６４の他端は、ノードＳＲＣに接続される。トランジスタ６４のゲートは、ノードＩＮＶ（ＳＤＬ）に接続される。ノードＳＲＣには、例えば接地電圧Ｖｓｓが印加される。トランジスタ６５の一端は、トランジスタ６０の他端に接続される。トランジスタ６５の他端は、ノードＳＥＮに接続される。トランジスタ６５のゲートには、制御信号ＨＬＬが入力される。
【０１２９】
トランジスタ６６の一端は、ノードＳＥＮに接続される。トランジスタ６６の他端は、ノードＣＯＭに接続される。トランジスタ６６のゲートには、制御信号ＸＸＬが入力される。トランジスタ６７の一端は、接地される。トランジスタ６７のゲートは、ノードＳＥＮに接続される。
【０１３０】
トランジスタ６８の一端は、トランジスタ６７の他端に接続される。トランジスタ６８の他端は、バスＬＢＵＳに接続される。トランジスタ６８のゲートには、制御信号ＳＴＢが入力される。キャパシタ６９の一端は、ノードＳＥＮに接続される。キャパシタ６９の他端には、クロックＣＬＫが入力される。
【０１３１】
ラッチ回路ＳＤＬにおいて、トランジスタ７０及び７１のそれぞれの一端は、バスＬＢＵＳに接続される。トランジスタ７０及び７１の他端は、それぞれノードＩＮＶ及びＬＡＴに接続される。トランジスタ７０及び７１のゲートには、それぞれ制御信号ＳＴＩ及びＳＴＬが入力される。インバータ７２の入力ノードとインバータ７３の出力ノードとのそれぞれは、ノードＬＡＴに接続される。インバータ７２の出力ノードとインバータ７３の入力ノードとのそれぞれは、ノードＩＮＶに接続される。
【０１３２】
ラッチ回路ＡＤＬ、ＢＤＬ及びＸＤＬの回路構成は、例えばラッチ回路ＳＤＬの回路構成と同様である。一方で、ラッチ回路ＡＤＬでは、トランジスタ７０及び７１のゲートにそれぞれ制御信号ＡＴＩ及びＡＴＬが入力される。ラッチ回路ＢＤＬ及びＸＤＬのそれぞれにおいて、トランジスタ７０及び７１のそれぞれには、ラッチ回路ＳＤＬと異なる制御信号が入力される。また、ラッチ回路ＳＤＬ、ＡＤＬ、ＢＤＬ及びＸＤＬのそれぞれのノードＩＮＶ及びＬＡＴは、それぞれ独立に設けられる。
【０１３３】
以上で説明した制御信号ＢＬＸ、ＢＬＣ、ＢＬＳ、ＨＬＬ、ＸＸＬ、ＳＴＢ、ＳＴＩ、ＳＴＬ、ＡＴＩ及びＡＴＬのそれぞれは、例えばシーケンサ１５によって生成される。例えば、シーケンサ１５は、ラッチ回路ＳＤＬ、ＡＤＬ、ＢＤＬ及びＸＤＬを独立に制御することが出来る。
【０１３４】
センスアンプ部ＳＡがビット線ＢＬに読み出されたデータを判定するタイミングは、シーケンサ１５が制御信号ＳＴＢがアサートするタイミングに基づいている。以下の説明において、「制御信号ＳＴＢをアサートする」とは、シーケンサ１５が制御信号ＳＴＢを“Ｌ”レベルから“Ｈ”レベルに一時的に変化させることに対応している。
【０１３５】
尚、以上で説明したセンスアンプモジュール１９の構成はあくまで一例であり、これに限定されない。例えば、センスアンプモジュール１９が含むラッチ回路の個数は、メモリセルトランジスタＭＴに記憶させるデータのビット数に基づいて適宜変更され得る。
【０１３６】
センスアンプモジュール１９の回路構成に依っては、「制御信号ＳＴＢをアサートする」に対応する動作が、シーケンサ１５が制御信号ＳＴＢを“Ｈ”レベルから“Ｌ”レベルに一時的に変化させる動作に対応する場合もある。
【０１３７】
［１−１−６］データの割り付けについて
図１１は、第１実施形態係るメモリシステム１におけるメモリセルトランジスタＭＴの閾値分布、読み出し電圧、及びベリファイ電圧の一例を示している。図１１に示された閾値分布において、縦軸はメモリセルトランジスタＭＴの個数に対応し、横軸はメモリセルトランジスタＭＴの閾値電圧に対応している。
【０１３８】
図１１に示すように、第１実施形態に係るメモリシステム１では、例えば１個のセルユニットＣＵに含まれた複数のメモリセルトランジスタＭＴの閾値電圧によって、８種類の閾値分布が形成され得る。
【０１３９】
本明細書では、この８種類の閾値分布（書き込みレベル）を、閾値電圧の低い方から順に、“ＥＲ”レベル、“Ａ”レベル、“Ｂ”レベル、“Ｃ”レベル、“Ｄ”レベル、“Ｅ”レベル、“Ｆ”レベル、“Ｇ”レベルと称する。
【０１４０】
隣り合う閾値分布の間には、それぞれ読み出し動作で使用される読み出し電圧が設定される。例えば、“ＥＲ”レベルにおける最大の閾値電圧と、“Ａ”レベルにおける最小の閾値電圧との間に、読み出し電圧ＡＲが設定される。
【０１４１】
同様に、“Ａ”レベル及び“Ｂ”レベル間に、読み出し電圧ＢＲが設定される。“Ｂ”レベル及び“Ｃ”レベル間に、読み出し電圧ＣＲが設定される。“Ｃ”レベル及び“Ｄ”レベル間に、読み出し電圧ＤＲが設定される。“Ｄ”レベル及び“Ｅ”レベル間に、読み出し電圧ＥＲが設定される。“Ｅ”レベル及び“Ｆ”レベル間に、読み出し電圧ＦＲが設定される。“Ｆ”レベル及び“Ｇ”レベル間に、読み出し電圧ＧＲが設定される。
【０１４２】
例えば、メモリセルトランジスタＭＴは、ゲートに読み出し電圧ＡＲが印加されると、閾値電圧が“ＥＲ”レベルに分布している場合にオン状態になり、“Ａ”レベル以上に分布している場合にオフ状態になる。
【０１４３】
同様に、メモリセルトランジスタＭＴは、ゲートに読み出し電圧ＢＲが印加されると、閾値電圧が“Ａ”レベル以下に含まれる場合にオン状態になり、“Ｂ”レベル以上に含まれる場合にオフ状態になる。ゲートにその他の読み出し電圧が印加された場合においても、メモリセルトランジスタＭＴは、閾値電圧に応じて適宜オン状態又はオフ状態になる。
【０１４４】
最も高い閾値分布よりも高い電圧には、読み出しパス電圧Ｖreadが設定される。具体的には、読み出しパス電圧Ｖreadは、例えば“Ｇ”レベルにおける最大の閾値電圧よりも高い電圧に設定される。メモリセルトランジスタＭＴは、ゲートに読み出しパス電圧Ｖreadが印加されると、記憶するデータに依らずにオン状態になる。
【０１４５】
また、隣り合う閾値分布の間には、それぞれ書き込み動作で使用されるベリファイ電圧が設定される。具体的には、“Ａ”レベル、“Ｂ”レベル、“Ｃ”レベル、“Ｄ”レベル、“Ｅ”レベル、“Ｆ”レベル及び“Ｇ”レベルに対応して、それぞれベリファイ電圧ＡＶ、ＢＶ、ＣＶ、ＤＶ、ＥＶ、ＦＶ及びＧＶが設定される。
【０１４６】
例えば、ベリファイ電圧ＡＶは、“ＥＲ”レベルにおける最大の閾値電圧と“Ａ”レベルにおける最小の閾値電圧との間、且つ“Ａ”レベルの近傍に設定される。ベリファイ電圧ＢＶは、“Ａ”レベルにおける最大の閾値電圧と“Ｂ”レベルにおける最小の閾値電圧との間、且つ“Ｂ”レベルの近傍に設定される。その他のベリファイ電圧も同様に、対応する書き込みレベルの近傍に設定される。つまり、ベリファイ電圧ＡＶ、ＢＶ、ＣＶ、ＤＶ、ＥＶ、ＦＶ及びＧＶは、それぞれ読み出し電圧ＡＲ、ＢＲ、ＣＲ、ＤＲ、ＥＲ、ＦＲ及びＧＲよりも高い電圧に設定される。
【０１４７】
書き込み動作においてメモリシステム１は、あるデータを記憶させるメモリセルトランジスタＭＴの閾値電圧が当該データに対応するベリファイ電圧を超えたことを検知すると、当該メモリセルトランジスタＭＴのプログラムを完了する。
【０１４８】
以上で説明された８種類のメモリセルトランジスタＭＴの閾値分布には、それぞれ異なる３ビットデータが割り当てられる。以下に、閾値分布に対するデータの割り付けの一例を羅列する。
【０１４９】
“ＥＲ”レベル：“１１１（上位ビット／中位ビット／下位ビット）”データ
“Ａ”レベル：“１１０”データ
“Ｂ”レベル：“１００”データ
“Ｃ”レベル：“０００”データ
“Ｄ”レベル：“０１０”データ
“Ｅ”レベル：“０１１”データ
“Ｆ”レベル：“００１”データ
“Ｇ”レベル：“１０１”データ。
【０１５０】
このようなデータの割り付けが適用された場合、下位ビットで構成される１ページデータ（下位ページデータ）は、読み出し電圧ＡＲ及びＥＲを用いた読み出し処理によって確定する。中位ビットで構成される１ページデータ（中位ページデータ）は、読み出し電圧ＢＲ、ＤＲ及びＦＲを用いた読み出し処理によって確定する。上位ビットで構成される１ページデータ（上位ページデータ）は、読み出し電圧ＣＲ及びＧＲのそれぞれを用いた読み出し処理によって確定する。
【０１５１】
つまり、下位ページデータ、中位ページデータ、及び上位ページデータは、それぞれ２種類、３種類、及び２種類の読み出し電圧を用いた読み出し処理によって確定する。このようなデータの割り付けは、例えば“２−３−２コード”と称される。本明細書では、メモリセルトランジスタＭＴのデータの割り付けに“２−３−２コード”が適用された場合を例に説明する。
【０１５２】
［１−２］動作
次に、第１実施形態に係るメモリシステム１の動作について説明する。
【０１５３】
第１実施形態に係るメモリシステム１は、ホスト機器２の指示に基づいた動作が実行されていない期間において、自発的にパトロール動作を実行する。パトロール動作は、トラッキングリードやシフトリードを用いて最適読み出し電圧を探索し、ＬＵＴ上に補正値を記録する動作である。また、パトロール動作は、セルユニットＣＵに記憶されているデータが読み出せるかどうかを調べる不良検知という目的も有する。以下に、トラッキングリード、シフトリード、及びパトロール動作の詳細について順に説明する。
【０１５４】
［１−２−１］トラッキングリードについて
読み出し電圧の初期値は、例えばセルユニットＣＵに含まれた複数のメモリセルトランジスタＭＴが理想的な閾値分布を形成している場合に、エラービット数が少なくなるように設定される。しかしながら、メモリセルトランジスタＭＴの閾値電圧は、書き込み動作の後に変化する可能性がある。
【０１５５】
そこで、第１実施形態に係るメモリシステム１は、閾値分布の谷を検出するためにトラッキングリードを実行する。第１実施形態に係るメモリシステム１が実行するトラッキングリードは、ＮＡＮＤ型フラッシュメモリ１０内部で実行される。
【０１５６】
図１２は、第１実施形態におけるＮＡＮＤ型フラッシュメモリ１０のトラッキングリードにおいて使用される読み出し電圧と、隣り合う２つの閾値分布（“Ｂ”レベル及び“Ｃ”レベル）との一例を示している。図１２において、実線は書き込み直後の閾値分布に対応し、破線は閾値電圧が変動した後の閾値分布に対応している。
【０１５７】
図１２に示すように、メモリセルトランジスタＭＴの閾値分布は、書き込み動作の直後に理想的に分布していたとしても、書き込み動作後に、時間経過による下降やリードディスターブ等による上昇が起こり得る。
【０１５８】
また、書き込み及び消去のサイクルが繰り返されたメモリセルトランジスタＭＴでは、データの保持特性が劣化して閾値電圧の変動がより大きくなる場合がある。このような閾値電圧の変動が発生すると、予め設定された読み出し電圧を用いた読み出し動作ではエラービット数が多くなり、エラー訂正が困難になる可能性がある。
【０１５９】
これに対して、第１実施形態におけるＮＡＮＤ型フラッシュメモリ１０は、トラッキングリードを実行することによって最適な読み出し電圧を探索することが出来る。トラッキングリードでは、複数の読み出し電圧を用いた読み出し動作が実行され、エラービット数が最も少なくなる読み出し電圧が探索される。
【０１６０】
例えば、読み出し電圧ＣＲに対応するトラッキングリードでは、トラッキング電圧ＣＲｔ１、ＣＲｔ２、ＣＲｔ３、ＣＲｔ４及びＣＲｔ５をそれぞれ用いた読み出し動作が連続で実行される。このように、トラッキング電圧を用いて連続で実行される読み出し動作のことを、以下ではトラッキングと称する。
【０１６１】
トラッキング電圧はそれぞれ任意の値に設定され、隣り合うトラッキング電圧との間隔（ステップアップ電圧）は例えば略一定に設定される。これらの電圧値の関係は、ＣＲｔ１＜ＣＲｔ２＜ＣＲｔ３＜ＣＲｔ４＜ＣＲｔ５である。また、読み出し電圧の初期値との関係は、ＣＲｔ１＜ＣＲ＜ＣＲｔ５である。
【０１６２】
その他の読み出し電圧に対応するトラッキングリードでは、読み出し電圧ＣＲに対応するトラッキングリードと同様にトラッキング電圧が設定される。尚、トラッキングリードで使用されるトラッキング電圧の数は、読み出し電圧毎に異なっていても良く、任意の数に設定され得る。同様に、トラッキングリードにおけるステップアップ電圧は、読み出し電圧毎に異なっていても良く、任意の数値に設定され得る。
【０１６３】
読み出し電圧ＣＲに対応するトラッキングリードにおいて、トラッキング電圧ＣＲｔ１、ＣＲｔ２、ＣＲｔ３、ＣＲｔ４、及びＣＲｔ５をそれぞれ用いた読み出し動作が実行されると、シーケンサ１５は、例えばメモリセルトランジスタＭＴのオンセル数に基づいて、“Ｂ”レベルの閾値分布と“Ｃ”レベルの閾値分布との間の谷部分を検出する。
【０１６４】
そして、シーケンサ１５は、検出した閾値分布の谷部分に基づいて、最適読み出し電圧を確定する。その後、シーケンサ１５は、見積もった最適読み出し電圧を使用した読み出し動作を実行する。この読み出し動作では、例えばトラッキングリードに用いられたトラッキング電圧のうちの１つが最適読み出し電圧として使用される。
【０１６５】
以下に、トラッキングリードに対応するコマンドシーケンスと、選択されたワード線ＷＬに印加される電圧と、制御信号ＳＴＢの動作とを説明する。
【０１６６】
尚、以下の説明では、選択されたワード線ＷＬのことを、選択ワード線ＷＬselと称する。ＮＡＮＤ型フラッシュメモリ１０が動作を開始する前におけるレディビジー信号ＲＢｎは“Ｈ”レベル（レディ状態）であり、選択ワード線ＷＬselの電圧はＶｓｓであり、制御信号ＳＴＢは“Ｌ”レベルであるものと仮定する。
【０１６７】
また、以下で説明される動作において、選択ワード線ＷＬselには、電圧生成回路１７及びロウデコーダモジュール１８によって電圧が印加される。ＮＡＮＤ型フラッシュメモリ１０が受信したアドレス情報は、アドレスレジスタ１３Ｂに保持される。ＮＡＮＤ型フラッシュメモリ１０が受信したコマンドは、コマンドレジスタ１３Ｃに保持される。
【０１６８】
図１３は、第１実施形態に係るメモリシステム１におけるトラッキングリードの一例を示すタイミングチャートであり、上位ページの読み出し動作に対応するトラッキングリードの一例を示している。
【０１６９】
図１３に示すように、上位ページのトラッキングリードを実行する場合、メモリコントローラ２０は、例えばコマンド“ｘｘｈ”、コマンド“０３ｈ”、コマンド“００ｈ”、５サイクルのアドレス情報“ＡＤＤ”、及びコマンド“３０ｈ”を順にＮＡＮＤ型フラッシュメモリ１０に送信する。
【０１７０】
コマンド“ｘｘｈ”は、トラッキングリードの実行をＮＡＮＤ型フラッシュメモリ１０に指示するコマンドである。コマンド“０３ｈ”は、上位ページに対応する動作をＮＡＮＤ型フラッシュメモリ１０に指示するコマンドである。
【０１７１】
コマンド“００ｈ”は、読み出し動作の実行をＮＡＮＤ型フラッシュメモリ１０に指示するコマンドである。５サイクルのアドレス情報“ＡＤＤ”は、動作対象のセルユニットＣＵに対応するアドレス情報であり、ブロックアドレス、カラムアドレス、ページアドレス等を含み得る。
【０１７２】
コマンド“３０ｈ”は、直前に受信したコマンド及びアドレス等に基づいた読み出し動作の開始をＮＡＮＤ型フラッシュメモリ１０に指示するコマンドである。ＮＡＮＤ型フラッシュメモリ１０は、コマンド“３０ｈ”を受信するとレディ状態からビジー状態（ＲＢｎ＝“Ｌ”レベル）に遷移して、シーケンサ１５がトラッキングリードを開始する。
【０１７３】
上位ページのトラッキングリードが開始すると、選択ワード線ＷＬselには、例えば読み出し電圧ＣＲに対応するトラッキング電圧ＣＲｔ１、ＣＲｔ２、ＣＲｔ３、ＣＲｔ４及びＣＲｔ５と、読み出し電圧ＧＲに対応するトラッキング電圧ＧＲｔ１、ＧＲｔ２、ＧＲｔ３、ＧＲｔ４及びＧＲｔ５とが順に印加される。
【０１７４】
また、シーケンサ１５は、各トラッキング電圧が選択ワード線ＷＬselに印加されている間に、それぞれ制御信号ＳＴＢをアサートする。それから、シーケンサ１５は、トラッキング電圧ＣＲｔ１〜ＣＲｔ５のそれぞれの読み出し結果に基づいて、読み出し電圧ＣＲに対応する最適読み出し電圧ＣＲｃを見積もり、トラッキング電圧ＧＲｔ１〜ＧＲｔ５のそれぞれの読み出し結果に基づいて、読み出し電圧ＧＲに対応する最適読み出し電圧ＧＲｃを見積もる。トラッキングリードによって得られた最適読み出し電圧に対応する補正値は、例えばステータスレジスタ１３Ａに保持される。
【０１７５】
その後、選択ワード線ＷＬselには、最適読み出し電圧ＣＲｃ及びＧＲｃが順に印加される。また、シーケンサ１５は、最適読み出し電圧ＣＲｃ及びＧＲｃが選択ワード線ＷＬselに印加されている間に、それぞれ制御信号ＳＴＢをアサートする。
【０１７６】
最適読み出し電圧ＣＲｃによる読み出し結果は、例えば各センスアンプユニットＳＡＵ内のラッチ回路ＡＢＬに保持される。その後、最適読み出し電圧ＧＲｃによる読み出し結果と、ラッチ回路ＡＢＬに保持された最適読み出し電圧ＣＲｃによる読み出し結果とに基づいて、上位ページの読み出しデータが演算される。そして、この演算結果は、例えば各センスアンプユニットＳＡＵ内のラッチ回路ＸＤＬに保持される。
【０１７７】
このように、上位ページの読み出しデータが確定すると、シーケンサ１５は上位ページのトラッキングリードを終了し、ＮＡＮＤ型フラッシュメモリ１０をビジー状態からレディ状態に遷移させる。
【０１７８】
以上で説明したトラッキングリードにより得られた最適読み出し電圧を用いた読み出し結果は、メモリコントローラ２０の指示に基づいて、メモリコントローラ２０に出力され得る。また、トラッキングリードによって得られた最適読み出し電圧に対応する補正値は、メモリコントローラ２０の指示に基づいてメモリコントローラ２０に出力され、例えばＲＡＭ２２内のＬＵＴ内に記録され得る。
【０１７９】
尚、メモリシステム１は、中位及び下位ページのそれぞれのトラッキングリードについても、上位ページのトラッキングリードと同様に実行することが出来る。
【０１８０】
下位ページのトラッキングリードでは、例えばコマンド“０３ｈ”の替わりにコマンド“０１ｈ”が使用される。コマンド“０１ｈ”は、下位ページに対応する動作をＮＡＮＤ型フラッシュメモリ１０に指示するコマンドである。
【０１８１】
中位ページのトラッキングリードでは、例えばコマンド“０３ｈ”の替わりにコマンド“０２ｈ”が使用される。コマンド“０２ｈ”は、中位ページに対応する動作をＮＡＮＤ型フラッシュメモリ１０に指示するコマンドである。
【０１８２】
また、下位ページ及び中位ページのそれぞれのトラッキングリードでは、使用されるトラッキング電圧及び読み出し電圧が適宜変更される。下位ページ及び中位ページのそれぞれのトラッキングリードにおけるその他の動作は、上位ページのトラッキングリードと同様のため、説明を省略する。
【０１８３】
［１−２−２］シフトリードについて
第１実施形態に係るメモリシステム１では、トラッキングリードによって得られたトラッキング結果（最適読み出し電圧）を用いたシフトリードが実行される。
【０１８４】
シフトリードは、通常の読み出し動作に対して、使用する読み出し電圧を初期値からシフトさせた読み出し動作である。シフトリードにおける読み出し電圧のシフト量は、後述する設定変更動作によって事前に設定される。
【０１８５】
図１４は、第１実施形態に係るメモリシステム１におけるシフトリードの一例を示すタイミングチャートであり、上位ページの読み出し動作に対応するシフトリードの一例を示している。
【０１８６】
図１４に示すように、上位ページのシフトリードを実行する場合、メモリコントローラ２０は、例えばコマンド“ｙｙｈ”、コマンド“０３ｈ”、コマンド“００ｈ”、５サイクルのアドレス情報“ＡＤＤ”、及びコマンド“３０ｈ”を順にＮＡＮＤ型フラッシュメモリ１０に送信する。
【０１８７】
コマンド“ｙｙｈ”は、シフトリードの実行をＮＡＮＤ型フラッシュメモリ１０に指示するコマンドである。ＮＡＮＤ型フラッシュメモリ１０は、コマンド“３０ｈ”を受信するとレディ状態からビジー状態（ＲＢｎ＝“Ｌ”レベル）に遷移して、シーケンサ１５がシフトリードを開始する。
【０１８８】
上位ページのシフトリードが開始すると、最適読み出し電圧ＣＲｃ及びＧＲｃが順に印加される。また、シーケンサ１５は、最適読み出し電圧ＣＲｃ及びＧＲｃが選択ワード線ＷＬselに印加されている間に、それぞれ制御信号ＳＴＢをアサートする。
【０１８９】
例えば、最適読み出し電圧ＣＲｃによる読み出し結果は、例えば各センスアンプユニットＳＡＵ内のラッチ回路ＡＢＬに保持される。その後、最適読み出し電圧ＧＲｃによる読み出し結果と、ラッチ回路ＡＢＬに保持された最適読み出し電圧ＣＲｃによる読み出し結果とに基づいて上位ページの読み出しデータが演算される。そして、この演算結果は、例えば各センスアンプユニットＳＡＵ内のラッチ回路ＸＤＬに保持される。
【０１９０】
このように、上位ページの読み出しデータが確定すると、シーケンサ１５は上位ページのシフトリードを終了し、ＮＡＮＤ型フラッシュメモリ１０をビジー状態からレディ状態に遷移させる。
【０１９１】
そして、シフトリードにより得られた最適読み出し電圧を用いた読み出し結果は、メモリコントローラ２０の指示に基づいて、メモリコントローラ２０に出力される。
【０１９２】
尚、メモリシステム１は、中位及び下位ページにそれぞれ対応するシフトリードについても、上位ページのシフトリードと同様に実行することが出来る。
【０１９３】
下位ページのシフトリードでは、例えばコマンド“０３ｈ”の替わりにコマンド“０１ｈ”が使用される。中位ページのシフトリードでは、例えばコマンド“０３ｈ”の替わりにコマンド“０２ｈ”が使用される。また、下位ページ及び中位ページのそれぞれのシフトリードでは、使用される最適読み出し電圧が適宜変更される。下位ページ及び中位ページのそれぞれのシフトリードにおけるその他の動作は、上位ページのシフトリードと同様のため、説明を省略する。
【０１９４】
［１−２−３］パトロール動作について
第１実施形態に係るメモリシステム１は、ホスト機器２からの命令に基づいた動作を実行していない期間において、自発的にパトロール動作を実行する。つまり、第１実施形態に係るメモリシステム１は、バックグラウンド動作中に、ホスト機器２からの命令とは独立してパトロール動作を実行する。
【０１９５】
パトロール動作は、メモリシステム１における読み出しエラーの低減と、不良が発生したブロックＢＬＫの検出とに寄与し、例えば繰り返される所定の期間毎に、全てのブロックＢＬＫ内の全てのページを対象として実行される。言い換えると、各ＮＡＮＤ型フラッシュメモリ１０に含まれた全てのブロックＢＬＫ内の全てのページには、所定の期間毎に少なくとも１回のパトロール動作が実行される。
【０１９６】
以下の説明では、このようにパトロール動作が実行される所定の期間のことを、パトロール期間と称する。パトロール期間は、タイマ２８によって測定された時間に基づいて設定される。１サイクルのパトロール期間に対応する時間は、例えば１日である。これに限定されず、１サイクルに対応する時間は、任意の長さに設定され得る。
【０１９７】
また、第１実施形態に係るメモリシステム１は、パトロール動作において、例えば履歴学習及び不良検知を実行する。
【０１９８】
履歴学習は、パトロール動作の対象のページにおける最適読み出し電圧を確認する動作である。履歴学習では、例えばトラッキングリードが実行される。トラッキングリードによって得られた読み出し電圧の補正値（トラッキング結果）は、適宜メモリコントローラ２０に転送される。
【０１９９】
不良検知は、パトロール動作の対象のページに対応するデータを読み出すことが可能であるか否かを確認する動作である。不良検知では、例えばトラッキング結果を用いたシフトリードが実行される。シフトリードによって読み出されたデータは、メモリコントローラ２０に転送され、ＥＣＣ回路２４によるエラー訂正処理が実行される。
【０２００】
不良検知において、読み出しデータのエラー訂正が可能であった場合、当該ページはデータを読み出すことが可能であると判断される。一方で、読み出しデータのエラー訂正が不可能であった場合、当該ページは不良ページであると判断される。例えば、パトロール動作が実行されたブロックＢＬＫに不良ページが含まれていた場合、当該ブロックＢＬＫに書き込まれたデータは、その他のブロックＢＬＫに待避される。
【０２０１】
以上のように、パトロール動作の目的は、履歴学習によって読み出し電圧の補正値を作成することと、不良検知によって物理故障の有無を確認することである。
【０２０２】
履歴学習は、必ずしも全てのワード線ＷＬに対して実行される必要は無く、任意で設定した代表のワード線ＷＬに対して実行されていれば良い。一方で、不良検知は、例えば隣り合うワード線ＷＬ間のショート等の物理不良を検知することが目的であるため、全てのワード線ＷＬに対して実行する必要がある。
【０２０３】
（パトロール動作のコマンドシーケンス）
図１５は、第１実施形態に係るメモリシステム１のパトロール動作におけるコマンドシーケンスの一例を示している。
【０２０４】
図１５に示すように、例えばメモリシステム１は、パトロール動作を開始すると、まず履歴学習を実行する。履歴学習において、メモリシステム１は、まずトラッキングリードに関するパラメータの設定変更動作を実行する。この“パラメータ”は、各種動作時にシーケンサ１５によって参照されるデータであり、例えばレジスタ部１３に保持される。
【０２０５】
設定変更動作において、メモリコントローラ２０は、例えばコマンド“ＥＦｈ”、アドレス“ｚｚｈ”、並びにデータ“Ｄ１”、“Ｄ２”、“Ｄ３”及び“Ｄ４”を順にＮＡＮＤ型フラッシュメモリ１０に送信する。
【０２０６】
コマンド“ＥＦｈ”は、設定変更動作の実行をＮＡＮＤ型フラッシュメモリ１０に指示するコマンドである。アドレス“ｚｚｈ”は、設定変更動作の対象となるパラメータを指定するアドレスを含んでいる。データ“Ｄ１”〜“Ｄ４”は、設定変更動作によって変更するパラメータを含んでいる。
【０２０７】
ＮＡＮＤ型フラッシュメモリ１０は、データ“Ｄ４”を受信するとレディ状態からビジー状態に遷移する。すると、シーケンサ１５は、受信したアドレス“ｚｚｈ”及びデータ“Ｄ１”〜“Ｄ４”に基づいて、適宜パラメータを書き換える。パラメータの書き換えが終了すると、ＮＡＮＤ型フラッシュメモリ１０はビジー状態からレディ状態に遷移する。
【０２０８】
本例においてメモリシステム１は、トラッキングリードを実行する前に、トラッキングリードの開始電圧を設定する設定変更動作と、トラッキングリードにおけるステップアップ電圧を設定する設定変更動作とを実行している。これに限定されず、トラッキングリードに関する設定変更動作は、適宜省略されても良い。
【０２０９】
トラッキングリードに関するパラメータの設定変更動作が終了すると、メモリシステム１は、トラッキングリードを実行する。
【０２１０】
トラッキングリードにおいて、メモリコントローラ２０は、例えばコマンド“ｘｘｈ”、コマンド“０１ｈ”、５サイクルのアドレス情報“ＡＤＤ”、及びコマンド“３０ｈ”を順にＮＡＮＤ型フラッシュメモリ１０に送信する。
【０２１１】
ＮＡＮＤ型フラッシュメモリ１０は、コマンド“３０ｈ”を受信するとレディ状態からビジー状態に遷移し、図１３を用いて説明したようにトラッキングリードを実行する。トラッキングリードが終了すると、ＮＡＮＤ型フラッシュメモリ１０はビジー状態からレディ状態に遷移する。図示された時間ｔＴＲは、当該トラッキングリードの処理時間に対応している。
【０２１２】
トラッキングリードの実行が終了すると、メモリシステム１は、トラッキング結果の出力を実行する。
【０２１３】
トラッキング結果の出力において、メモリコントローラ２０は、例えばコマンド“Ｂ０ｈ”及び“００ｈ”をＮＡＮＤ型フラッシュメモリ１０に送信する。コマンド“Ｂ０ｈ”は、トラッキング結果の出力をＮＡＮＤ型フラッシュメモリ１０に指示するコマンドである。
【０２１４】
ＮＡＮＤ型フラッシュメモリ１０は、コマンド“００ｈ”を受信すると、例えばステータスレジスタ１３Ａに保持されたトラッキング結果をメモリコントローラ２０に出力する（“ＳＴＳout”）。
【０２１５】
メモリコントローラ２０が受信したトラッキング結果は、例えばＲＡＭ２２内のＬＵＴに記録される。尚、トラッキング結果は、ＤＲＡＭ３０に保持されても良く、メモリシステム１内のＮＡＮＤパッケージＰＫＧ以外の領域に保持されていれば良い。
【０２１６】
以上で説明した動作が、パトロール動作における履歴学習に対応している。トラッキング結果の出力が終了すると、メモリシステム１は、ホスト機器２の指示に基づいた動作を実行することが可能な状態になる（“割り込み可能”）。
【０２１７】
このとき、メモリシステム１がホスト機器２の指示を受信していない場合、メモリシステム１は続けて不良検知（シフトリード）を実行する。一方で、メモリシステム１がホスト機器２の指示を受信している場合、メモリシステム１はホスト機器２の指示に基づいた動作を実行した後に不良検知を実行する。
【０２１８】
尚、ホスト機器２の指示に基づいた動作が実行された場合、センスアンプユニットＳＡＵ内のラッチ回路ＸＤＬに保持された読み出し結果は破棄される。一方で、トラッキングリードによって得られた読み出し電圧の補正値は、例えばステータスレジスタ１３Ａ内に維持される。
【０２１９】
不良検知において、メモリシステム１は、まずシフトリードに関するパラメータの設定変更動作を実行する。設定変更動作におけるコマンドシーケンスは、トラッキングリードに関するパラメータの設定変更動作と同様のため、説明を省略する。
【０２２０】
この設定変更動作が実行されると、例えばメモリコントローラ２０内のＲＡＭ２２に保持されたトラッキング結果に基づいて、ＮＡＮＤ型フラッシュメモリ１０内のパラメータが適宜書き換えられる。これにより、ＮＡＮＤ型フラッシュメモリ１０において、シフトリード実行時の読み出し電圧が設定される。
【０２２１】
シフトリードに関するパラメータの設定変更動作が終了すると、メモリシステム１は、シフトリードを実行する。
【０２２２】
シフトリードにおいて、メモリコントローラ２０は、例えばコマンド“ｙｙｈ”、コマンド“０１ｈ”、５サイクルのアドレス情報“ＡＤＤ”、及びコマンド“３０ｈ”を順にＮＡＮＤ型フラッシュメモリ１０に送信する。
【０２２３】
ＮＡＮＤ型フラッシュメモリ１０は、コマンド“３０ｈ”を受信するとレディ状態からビジー状態に遷移し、図１４を用いて説明したようにシフトリードを実行する。シフトリードが終了すると、ＮＡＮＤ型フラッシュメモリ１０はビジー状態からレディ状態に遷移する。図示された時間ｔＳＲは、当該シフトリードの処理時間に対応している。時間ｔＳＲは、時間ｔＴＲよりも短い。
【０２２４】
シフトリードの実行が終了すると、メモリシステム１は、読み出しデータの出力を実行する。第１実施形態において、この“読み出しデータ”は、シフトリードによって得られた、最適読み出し電圧による読み出し結果のことを示している。
【０２２５】
読み出しデータの出力において、メモリコントローラ２０は、例えばコマンド“０５ｈ”、５サイクルのアドレス情報“ＡＤＤ”、及びコマンド“Ｅ０ｈ”を順にＮＡＮＤ型フラッシュメモリ１０に送信する。コマンド“０５ｈ”及び“Ｅ０ｈ”は、読み出しデータの出力をＮＡＮＤ型フラッシュメモリ１０に指示するコマンドである。
【０２２６】
ＮＡＮＤ型フラッシュメモリ１０は、コマンド“Ｅ０ｈ”を受信すると、例えばセンスアンプユニットＳＡＵ内のラッチ回路ＸＤＬに保持された読み出しデータを、メモリコントローラ２０に出力する（“Ｄout”）。
【０２２７】
メモリコントローラ２０が読み出しデータを受信すると、ＥＣＣ回路２４によってエラー訂正処理が実行される。そして、エラー訂正処理の結果に基づいて、パトロール動作が実行されたページが読み出し可能であるか否かが判断される。
【０２２８】
以上で説明した動作が、パトロール動作における不良検知に対応している。
【０２２９】
第１実施形態に係るメモリシステム１は、以上のように履歴学習及び不良検知を実行することによって、ページ単位でパトロール動作を進行する。
【０２３０】
尚、第１実施形態に係るメモリシステム１では、共通のバスラインＣｈを使用するＮＡＮＤ型フラッシュメモリ１０において、処理されるパトロール動作の処理単位（コマンドの処理単位）が設定され得る。以下に、第１実施形態に係るメモリシステム１において、パトロール動作の処理単位が異なる場合の動作の一例について例示する。
【０２３１】
（パトロール動作の処理単位が１ページ／１ＢＮＫである場合）
図１６は、第１実施形態に係るメモリシステム１におけるパトロール動作の処理順番の一例であり、各ＮＡＮＤ型フラッシュメモリ１０において処理されるパトロール動作の処理単位が１ページ／１ＢＮＫである場合について例示している。
【０２３２】
本明細書において、“パトロール動作の処理単位が１ページ／１ＢＮＫであること”は、例えば共通のバスラインＣｈを使用するＮＡＮＤ型フラッシュメモリ１０において、パトロール動作が並列で実行されないことを示している。
【０２３３】
図１６に示すように、本例において、ブロックＢＬＫｘ（ｘは０以上の整数）に対するパトロール動作は、例えば第１の期間、第２の期間、及び第３の期間に分類され得る。
【０２３４】
各期間において示された数字は、パトロール動作の実行順番に対応している。同じ期間において履歴学習と不良検知とで同じ数字が示されている場合、これらの動作は例えば連続で実行されることを示している。図１６に示された“Ｌ”、“Ｍ”、“Ｈ”は、それぞれ下位ページ、中位ページ、上位ページに対応している。
【０２３５】
第１の期間、第２の期間、及び第３の期間のそれぞれにおいて、選択されたストリングユニットＳＵ及びワード線ＷＬの組では、異なるページが選択された履歴学習及び不良検知が実行される。
【０２３６】
具体的には、第１の期間では、まずストリングユニットＳＵ０及びワード線ＷＬ０が選択され、下位ページの履歴学習及び不良検知が実行される（第１の期間、“１”）。次に、ストリングユニットＳＵ１及びワード線ＷＬ０が選択され、中位ページの履歴学習及び不良検知が実行される（第１の期間、“２”）。次に、ストリングユニットＳＵ２及びワード線ＷＬ０が選択され、上位ページの履歴学習及び不良検知が実行される（第１の期間、“３”）。次に、ストリングユニットＳＵ３及びワード線ＷＬ０が選択され、下位ページの履歴学習及び不良検知が実行される（第１の期間、“４”）。
【０２３７】
次に、ワード線ＷＬ１が選択された履歴学習及び不良検知が実行される。このとき、ストリングユニットＳＵ及びページは、ワード線ＷＬ０が選択された場合と同様の順番で選択される（第１の期間、“５”〜“８”）。
【０２３８】
第１の期間において、ワード線ＷＬ１が選択された履歴学習及び不良検知が実行されると、続くパトロール動作では例えば履歴学習を省略しても良い。つまり、ワード線ＷＬ２が選択されたパトロール動作では、例えば不良検知のみが実行される（第１の期間、“９”〜“１２”）。履歴学習が省略されたパトロール動作では、例えば同じブロックＢＬＫで実行された他のワード線ＷＬにおける履歴学習の結果を用いて不良検知が実行される。
【０２３９】
第１の期間において、その他のワード線ＷＬが選択されたパトロール動作が実行される順番は、例えばワード線ＷＬ２が選択されたパトロール動作と同様の順番で実行されるため、説明を省略する。
【０２４０】
第２の期間では、まずストリングユニットＳＵ０及びワード線ＷＬ０が選択され、中位ページの履歴学習及び不良検知が実行される（第２の期間、“１”）。次に、ストリングユニットＳＵ１及びワード線ＷＬ０が選択され、上位ページの履歴学習及び不良検知が実行される（第２の期間、“２”）。次に、ストリングユニットＳＵ２及びワード線ＷＬ０が選択され、下位ページの履歴学習及び不良検知が実行される（第２の期間、“３”）。次に、ストリングユニットＳＵ３及びワード線ＷＬ０が選択され、中位ページの履歴学習及び不良検知が実行される（第２の期間、“４”）。
【０２４１】
次に、ワード線ＷＬ１が選択された履歴学習及び不良検知が実行される。このとき、ストリングユニットＳＵ及びページは、ワード線ＷＬ０が選択された場合と同様の順番で選択される（第２の期間、“５”〜“８”）。
【０２４２】
第２の期間において、ワード線ＷＬ１が選択された履歴学習及び不良検知が実行されると、第１の期間と同様に、続くパトロール動作では例えば履歴学習を省略しても良い（第２の期間、“９”〜“１２”）。
【０２４３】
第２の期間において、その他のワード線ＷＬが選択されたパトロール動作が実行される順番は、例えばワード線ＷＬ２が選択されたパトロール動作と同様の順番で実行されるため、説明を省略する。
【０２４４】
第３の期間では、まずストリングユニットＳＵ０及びワード線ＷＬ０が選択され、上位ページの履歴学習及び不良検知が実行される（第３の期間、“１”）。次に、ストリングユニットＳＵ１及びワード線ＷＬ０が選択され、下位ページの履歴学習及び不良検知が実行される（第３の期間、“２”）。次に、ストリングユニットＳＵ２及びワード線ＷＬ０が選択され、中位ページの履歴学習及び不良検知が実行される（第３の期間、“３”）。次に、ストリングユニットＳＵ３及びワード線ＷＬ０が選択され、上位ページの履歴学習及び不良検知が実行される（第３の期間、“４”）。
【０２４５】
次に、ワード線ＷＬ１が選択された履歴学習及び不良検知が実行される。このとき、ストリングユニットＳＵ及びページは、ワード線ＷＬ０が選択された場合と同様の順番で選択される（第３の期間、“５”〜“８”）。
【０２４６】
第３の期間において、ワード線ＷＬ１が選択された履歴学習及び不良検知が実行されると、第１の期間と同様に、続くパトロール動作における履歴学習を省略しても良い（第３の期間、“９”〜“１２”）。第３の期間において、その他のワード線ＷＬが選択されたパトロール動作が実行される順番は、例えばワード線ＷＬ２が選択されたパトロール動作と同様の順番で実行されるため、説明を省略する。
【０２４７】
以上のように第１の期間〜第３の期間におけるパトロール動作が実行されることによって、第１実施形態に係るメモリシステム１では、ブロックＢＬＫｘ内の全てのワード線ＷＬにおける３ページ分のパトロール動作が実行され得る。
【０２４８】
第１の期間〜第３の期間では、各ワード線ＷＬが選択されたパトロール動作において、ページが選択される順番が異なっている。そして、本例では、第１の期間〜第３の期間のそれぞれにおいて、全領域（当該ブロックＢＬＫ内におけるワード線ＷＬとストリングユニットＳＵの全ての組み合わせ）で少なくとも１回のパトロール動作が実行される。
【０２４９】
以下に、共通のバスラインＣｈに接続されたＮＡＮＤ型フラッシュメモリ１０のそれぞれにおいて下位ページ、中位ページ、及び上位ページのそれぞれのパトロール動作が順に実行される場合における、パトロール動作の動作タイミングについて説明する。
【０２５０】
図１７は、第１実施形態において、パトロール動作の処理単位が１ページ／１ＢＮＫである場合における、パトロール動作の動作タイミングの一例を示している。
【０２５１】
以下の説明で参照されるタイミングチャートにおいて、“ＢＮＫ０”及び“ＢＮＫ１”は、それぞれバンクＢＮＫ０及びＢＮＫ１に対応するＮＡＮＤ型フラッシュメモリ１０における動作状態を示している。“Ｃｈ０”は、バスラインＣｈ０を介して送受信されている信号を示している。
【０２５２】
“ＴＲ（Ｌ）”、“ＴＲ（Ｍ）”、及び“ＴＲ（Ｕ）”は、それぞれ下位ページ、中位ページ、及び上位ページに対応するトラッキングリードの処理期間を示している。“ＳＲ（Ｌ）”、“ＳＲ（Ｍ）”、及び“ＳＲ（Ｕ）”は、それぞれ下位ページ、中位ページ、及び上位ページに対応するシフトリードの処理期間を示している。
【０２５３】
以下のタイミングチャートの説明では、説明を簡略化するために、バンクＢＮＫ０に対応するＮＡＮＤ型フラッシュメモリ１０のことを、“バンクＢＮＫ０”と称し、バンクＢＮＫ１に対応するＮＡＮＤ型フラッシュメモリ１０のことを、“バンクＢＮＫ１”と称する。
【０２５４】
また、メモリコントローラ２０が各バンクＢＮＫにコマンドを送信する動作と、各バンクＢＮＫがメモリコントローラ２０にデータ又はステータスを送信する動作とのそれぞれにおいて、バスラインＣｈ０が使用されているものとする。
【０２５５】
図１７に示すように、メモリシステム１は、バンクＢＮＫ０に対応する動作と、バンクＢＮＫ１に対応する動作とを交互に実行する。
【０２５６】
具体的には、まずメモリコントローラ２０は、下位ページのトラッキングリードに対応するコマンドＣＭＤをバンクＢＮＫ０に送信する。すると、バンクＢＮＫ０は、下位ページのトラッキングリードを実行し、続けてトラッキング結果ＳＴＳoutをメモリコントローラ２０に送信する（ＢＮＫ０における下位ページの履歴学習）。
【０２５７】
次に、メモリコントローラ２０は、下位ページのトラッキングリードに対応するコマンドＣＭＤをバンクＢＮＫ１に送信する。すると、バンクＢＮＫ１は、下位ページのトラッキングリードを実行し、続けてトラッキング結果ＳＴＳoutをメモリコントローラ２０に送信する（ＢＮＫ１における下位ページの履歴学習）。
【０２５８】
次に、メモリコントローラ２０は、下位ページのシフトリードに対応するコマンドＣＭＤをバンクＢＮＫ０に送信する。すると、バンクＢＮＫ０は、下位ページのシフトリードを実行し、続けて読み出しデータＤoutをメモリコントローラ２０に送信する（ＢＮＫ０における下位ページの不良検知）。
【０２５９】
次に、メモリコントローラ２０は、下位ページのシフトリードに対応するコマンドＣＭＤをバンクＢＮＫ１に送信する。すると、バンクＢＮＫ０は、下位ページのシフトリードを実行し、続けて読み出しデータＤoutをメモリコントローラ２０に送信する（ＢＮＫ１における下位ページの不良検知）。
【０２６０】
尚、第１実施形態においてパトロール動作の処理単位が１ページ／１ＢＮＫである場合、メモリコントローラ２０は、シフトリードの終了時と、トラッキングリードの終了時とのそれぞれにおいて、ホスト機器２の指示に基づいた読み出し動作（以下、ホストリードと称する）を割り込ませることが出来る。
【０２６１】
続けて、中位ページに対応するパトロール動作と、上位ページに対応するパトロール動作とが順に実行される。中位ページ及び上位ページに対応するパトロール動作のそれぞれの動作タイミングは、下位ページに対応するパトロール動作の動作タイミングと同様のため、説明を省略する。
【０２６２】
（パトロール動作の処理単位が１ＷＬ／２ＢＮＫである場合）
図１８は、第１実施形態に係るメモリシステム１におけるパトロール動作の処理順番の一例であり、各ＮＡＮＤ型フラッシュメモリ１０において処理されるパトロール動作の処理単位が１ＷＬ／２ＢＮＫである場合について例示している。
【０２６３】
本明細書において、“パトロール動作の処理単位が１ＷＬ／２ＢＮＫであること”は、共通のバスラインＣｈを使用するＮＡＮＤ型フラッシュメモリ１０において、パトロール動作が並列で実行されることを示している。
【０２６４】
図１８に示された数字は、連続で実行される下位ページ、中位ページ、上位ページのそれぞれのパトロール動作の組が実行される順番を示している。履歴学習と不良検知とで同じ数字が示されている場合、これらの動作は例えば連続で実行されることを示している。
【０２６５】
図１８に示すように、本例において、ブロックＢＬＫｘに対するパトロール動作は、例えば図１６を用いて説明した一例のように、期間が分類されない。
【０２６６】
そして、本例では、まずワード線ＷＬ０が選択され、ストリングユニットＳＵ０〜ＳＵ３が順に選択された履歴学習及び不良検知が実行される（“１”〜“４”）。次に、ワード線ＷＬ１が選択され、ストリングユニットＳＵ０〜ＳＵ３が順に選択された履歴学習及び不良検知が実行される（“５”〜“８”）。
【０２６７】
ワード線ＷＬ１が選択された履歴学習及び不良検知が実行されると、続くパトロール動作では例えば履歴学習を省略しても良い。つまり、ワード線ＷＬ２が選択されたパトロール動作では、例えば不良検知のみが実行される（“９”〜“１２”）。履歴学習が省略されたパトロール動作では、例えば同じブロックＢＬＫで実行された履歴学習の結果を用いて不良検知が実行される。
【０２６８】
本例において、その他のワード線ＷＬが選択されたパトロール動作が実行される順番は、例えばワード線ＷＬ２が選択されたパトロール動作と同様の順番で実行されるため、説明を省略する。
【０２６９】
以上のようにパトロール動作が実行されることによって、第１実施形態に係るメモリシステム１では、ブロックＢＬＫｘ内の全てのワード線ＷＬにおける３ページ分のパトロール動作が実行され得る。
【０２７０】
以下に、共通のバスラインＣｈに接続されたＮＡＮＤ型フラッシュメモリ１０のそれぞれにおいて下位ページ、中位ページ、及び上位ページのパトロール動作が順に実行される場合における、パトロール動作の動作タイミングについて説明する。
【０２７１】
図１９は、第１実施形態において、パトロール動作の処理単位が１ＷＬ／２ＢＮＫである場合における、パトロール動作の動作タイミングの一例を示している。
【０２７２】
図１９に示すように、メモリシステム１は、バンクＢＮＫ０に対応する動作と、バンクＢＮＫ１に対応する動作とを適宜並列で実行する。
【０２７３】
具体的には、まずメモリコントローラ２０は、下位ページのトラッキングリードに対応するコマンドＣＭＤを、バンクＢＮＫ０とバンクＢＮＫ１とに対して順に送信する。下位ページのトラッキングリードに対応するコマンドＣＭＤを受信すると、バンクＢＮＫ０とバンクＢＮＫ１とのそれぞれは、下位ページのトラッキングリードを開始する。
【０２７４】
このとき、バンクＢＮＫ０におけるトラッキングリードと、バンクＢＮＫ１におけるトラッキングリードとは、並列で実行され得る。そして、下位ページのトラッキングリードは、バンクＢＮＫ０、バンクＢＮＫ１の順に終了する。
【０２７５】
下位ページのトラッキングリードが終了すると、バンクＢＮＫ０とバンクＢＮＫ１とのそれぞれは、メモリコントローラ２０に対して順にトラッキング結果ＳＴＳoutを送信する（ＢＮＫ０及びＢＮＫ１のそれぞれにおける下位ページの履歴学習）。
【０２７６】
次に、メモリシステム１は、バンクＢＮＫ０及びＢＮＫ１のそれぞれに対して、中位ページの履歴学習と、上位ページの履歴学習とを順に実行する。これらの動作タイミングは、下位ページの履歴学習と同様のため説明を省略する。
【０２７７】
尚、第１実施形態においてパトロール動作の処理単位が１ＷＬ／２ＢＮＫである場合、履歴学習と不良検知は分離することが出来るため、メモリコントローラ２０は、このタイミングでホストリードを割り込ませることが出来る。
【０２７８】
下位ページ、中位ページ、及び上位ページのそれぞれの履歴学習が終了すると、メモリシステムは、下位ページのシフトリードに対応するコマンドＣＭＤを、バンクＢＮＫ０とバンクＢＮＫ１とに対して順に送信する。
【０２７９】
下位ページのシフトリードに対応するコマンドＣＭＤを受信すると、バンクＢＮＫ０とバンクＢＮＫ１とのそれぞれは、下位ページのシフトリードを開始する。このとき、バンクＢＮＫ０におけるシフトリードと、バンクＢＮＫ１におけるシフトリードとは、並列で実行され得る。
【０２８０】
バンクＢＮＫ０における下位ページのシフトリードが終了すると、メモリコントローラ２０は、バンクＢＮＫ０に対して下位ページの読み出しデータＤoutを出力させる（ＢＮＫ０における下位ページの不良検知）。例えば、バンクＢＮＫ０が読み出しデータＤoutを出力している間に、バンクＢＮＫ１における下位ページのシフトリードが終了する。
【０２８１】
メモリコントローラ２０は、バンクＢＮＫ０から下位ページの読み出しデータＤoutを受信すると、中位ページのシフトリードに対応するコマンドＣＭＤをバンクＢＮＫ０に送信し、バンクＢＮＫ０は中位ページのシフトリードを開始する。
【０２８２】
そして、バンクＢＮＫ０が中位ページのシフトリードを実行している間に、メモリコントローラは、バンクＢＮＫ１に対して下位ページの読み出しデータＤoutを出力させる（ＢＮＫ１における下位ページの不良検知）。
【０２８３】
例えば、バンクＢＮＫ１における下位ページの読み出しデータＤoutの出力は、バンクＢＮＫ０が中位ページのシフトリードを実行している間に終了する。言い換えると、バンクＢＮＫ０における中位ページのシフトリードと、バンクＢＮＫ１における下位ページの読み出しデータＤoutの出力とが、並列で実行され得る。
【０２８４】
メモリコントローラ２０は、バンクＢＮＫ１から下位ページの読み出しデータＤoutを受信すると、中位ページのシフトリードに対応するコマンドＣＭＤをバンクＢＮＫ１に送信し、バンクＢＮＫ１は中位ページのシフトリードを開始する。
【０２８５】
例えば、バンクＢＮＫ１が中位ページのシフトリードを実行している間に、バンクＢＮＫ０における中位ページのシフトリードが終了する。言い換えると、バンクＢＮＫ１における中位ページのシフトリードと、バンクＢＮＫ０における中位ページの読み出しデータＤoutの出力とが、並列で実行され得る。
【０２８６】
バンクＢＮＫ０における中位ページのシフトリードが終了すると、メモリコントローラ２０は、バンクＢＮＫ０に対して中位ページの読み出しデータＤoutを出力させる（ＢＮＫ０における中位ページの不良検知）。続けて、メモリコントローラ２０は、上位ページのシフトリードに対応するコマンドＣＭＤをバンクＢＮＫ０に送信し、バンクＢＮＫ０は上位ページのシフトリードを開始する。
【０２８７】
以降も同様に、バンクＢＮＫ０におけるシフトリードとバンクＢＮＫ１における読み出しデータの出力とが適宜並列で実行され、バンクＢＮＫ１におけるシフトリードとバンクＢＮＫ０における読み出しデータの出力とが適宜並列で実行され得る。
【０２８８】
尚、以上で説明したパトロール動作では、履歴学習と不良検知とが連続で実行される場合について例示されているが、これに限定されない。例えば、第１実施形態におけるパトロール動作において、履歴学習と不良検知とが分離して実行されても良い。この場合にメモリシステム１は、少なくともパトロール動作の対象のページに対して履歴学習を実行した後に、不良検知を実行していれば良い。
【０２８９】
また、以上で説明したパトロール動作では、ワード線ＷＬ２以降の履歴学習が省略される場合について例示されているが、これに限定されない。第１実施形態におけるパトロール動作では、履歴学習が全てのワード線ＷＬに対して実行されても良いし、履歴学習が省略されるワード線ＷＬは任意に選択され得る。
【０２９０】
［１−３］第１実施形態の効果
以上で説明した第１実施形態に係るメモリシステム１に依れば、記憶するデータの信頼性を担保することが出来、且つレイテンシを改善することが出来る。以下に、第１実施形態に係るメモリシステム１における効果の詳細について説明する。
【０２９１】
ＳＳＤ（Solid State Drive）は、ホスト機器２の指示による読み出し動作（以下、ホストリードと称する）でエラー訂正が不可になると、例えばリトライリードを実行する。リトライリードには、Ｖｔｈトラッキング等の復旧技術が適用され得る。
【０２９２】
Ｖｔｈトラッキングは、図１３を用いて説明したようなトラッキング電圧による読み出し結果をメモリコントローラ２０に送信し、精度の高い読み出し電圧の補正値を見積もる動作である。このため、リトライリードの処理時間は長くなる傾向があり、リトライリードが発生すると、顧客が求めるレイテンシ性能を満たすことが困難になる。
【０２９３】
これに対して、データセンタ等で使用されるＳＳＤでは、バックグラウンド動作中にパトロール動作が実行される。パトロール動作では、Ｖｔｈトラッキングやシフトリードによってメモリセルの最適読み出し電圧が探索され、ＬＵＴ上の補正値が更新される。
【０２９４】
そして、ＳＳＤは、その後の読み出し動作において、ＬＵＴ上で更新された補正値を用いた読み出し動作を実行する。つまり、パトロール動作によって作成された補正値の精度が高い程、ＳＳＤにおけるリトライリードの発生を抑制することが出来る。
【０２９５】
しかしながら、Ｖｔｈトラッキングは、補正値を高精度に作成することが出来る一方で、メモリコントローラ２０とＮＡＮＤ型フラッシュメモリ１０との間でのデータのやり取りが多くなり、バスを占有してしまうという懸念がある。その結果、バンクＢＮＫ間の並列処理数を多くすることが困難になり、レイテンシが増大してしまう。
【０２９６】
また、大容量のＳＳＤでは、１チャネルに割り当てられるチップ数が多くなる傾向があり、バックグラウンド動作におけるパトロール動作の制御方法が重要になっている。特に、ＳＳＤの信頼性を担保するためには、パトロール動作によるレイテンシの増加を抑制しつつ、高精度な読み出し電圧の補正値を作成する必要がある。
【０２９７】
そこで、第１実施形態に係るメモリシステム１では、パトロール動作において、ＮＡＮＤ型フラッシュメモリ１０内で読み出し電圧の補正値を作成するトラッキングリードを実行する。第１実施形態におけるトラッキングリードは、Ｖｔｈトラッキングのようなデータの出力が必要なく、バスを占有しないという利点がある。
【０２９８】
これにより、第１実施形態に係るメモリシステム１は、バンクＢＮＫ間におけるパトロール動作の並列処理を多くすることが出来、メモリシステム１全体におけるパトロール動作の処理速度を速くすることが出来る。そして、第１実施形態に係るメモリシステム１では、パトロール動作が実行される時間が短くなる。
【０２９９】
その結果、第１実施形態に係るメモリシステム１では、リトライリードの発生を抑制することが出来、且つホストリードとパトロール動作とが衝突する確率を下げることが出来る。つまり、第１実施形態に係るメモリシステム１は、データの信頼性を担保することが出来、且つレイテンシを改善することが出来る。
【０３００】
尚、以上の説明では、パトロール動作を並列で実行することの利点について述べたが、コマンドの処理単位に応じて最適なパトロール動作の処理単位は変化する。この点については、後述する第２実施形態の効果の項目において説明する。
【０３０１】
［１−４］第１実施形態の変形例
第１実施形態では、履歴学習（トラッキングリード）及び不良検知（シフトリード）とのそれぞれにおいて、処理単位が同じである場合について例示されたが、これに限定されない。例えば、履歴学習における処理単位と、不良検知における処理単位とは異なっていても良い。
【０３０２】
以下に、第１実施形態の変形例に係るメモリシステム１におけるパトロール動作の動作タイミングの一例について説明する。第１実施形態の変形例では、履歴学習が並列で実行され、不良検知がページ単位で実行される。
【０３０３】
図２０は、第１実施形態の変形例において、履歴学習の処理単位が１ページ／２ＢＮＫであり、不良検知の処理単位が１ページ／１ＢＮＫである場合における、パトロール動作のタイミングチャートの一例を示している。
【０３０４】
図２０に示すように、メモリシステム１は、履歴学習においてバンクＢＮＫ０及びＢＮＫ１のそれぞれに対応する動作を適宜並列に実行し、不良学習においてバンクＢＮＫ０及びＢＮＫ１のそれぞれに対応する動作を逐次実行する。
【０３０５】
具体的には、まずメモリコントローラ２０は、図１９を用いて説明した動作と同様に、下位ページのトラッキングリードを、バンクＢＮＫ０及びＢＮＫ１のそれぞれに対して実行させる。下位ページのトラッキングリードが終了すると、バンクＢＮＫ０とバンクＢＮＫ１とのそれぞれは、メモリコントローラ２０に対して順にトラッキング結果ＳＴＳoutを送信する（ＢＮＫ０及びＢＮＫ１のそれぞれにおける下位ページの履歴学習）。
【０３０６】
次に、メモリコントローラ２０は、図１７を用いて説明した動作と同様に、下位ページのシフトリードをバンクＢＮＫ０に対して実行させ、下位ページの読み出しデータＤoutをメモリコントローラ２０に出力させる（ＢＮＫ０における下位ページの不良検知）。
【０３０７】
次に、メモリコントローラ２０は、図１７を用いて説明した動作と同様に、下位ページのシフトリードをバンクＢＮＫ１に対して実行させ、下位ページの読み出しデータＤoutをメモリコントローラ２０に出力させる（ＢＮＫ１における下位ページの不良検知）。
【０３０８】
以降も同様に、メモリコントローラ２０は、中位ページのトラッキングリードをバンクＢＮＫ０及びＢＮＫ１のそれぞれに対して並列で実行させ、中位ページのシフトリードをバンクＢＮＫ０及びＢＮＫ１のそれぞれに対して逐次実行させ、上位ページのトラッキングリードをバンクＢＮＫ０及びＢＮＫ１のそれぞれに対して並列で実行させ、上位ページのシフトリードをバンクＢＮＫ０及びＢＮＫ１のそれぞれに対して逐次実行させる。
【０３０９】
尚、第１実施形態の変形例において、メモリコントローラ２０は、履歴学習の２ＢＮＫ動作終了時と、不良検知の１ＢＮＫ動作終了時とのそれぞれに、ホストリードを割り込ませることが出来る。
【０３１０】
第１実施形態の変形例に係るメモリシステム１は、以上のようにパトロール動作を実行することによって、パトロール動作における履歴学習の処理時間を短縮することが出来る。つまり、第１実施形態の変形例に係るメモリシステム１は、パトロール動作を高速化することが出来、レイテンシを改善することが出来る。
【０３１１】
［２］第２実施形態
第２実施形態に係るメモリシステム１は、例えば第１実施形態に係るメモリシステム１と同じ構成を有する。そして、第２実施形態に係るメモリシステム１は、パトロール動作において、トラッキングリードによって得られた読み出し結果を用いた不良検知を実行する。以下に、第２実施形態に係るメモリシステム１について、第１実施形態と異なる点を説明する。
【０３１２】
［２−１］パトロール動作について
（パトロール動作のコマンドシーケンス）
図２１は、第１実施形態に係るメモリシステム１のパトロール動作におけるコマンドシーケンスの一例を示している。
【０３１３】
図２１に示すように、例えばメモリシステム１は、パトロール動作を開始すると、まず第１実施形態と同様に履歴学習を実行する。
【０３１４】
具体的には、まずメモリシステム１は、トラッキングリードの開始電圧の設定に対応する設定変更動作と、トラッキングリードにおけるステップアップ電圧の設定に対応する設定変更動作とを適宜実行する。
【０３１５】
トラッキングリードに関するパラメータの設定変更動作が終了すると、メモリシステム１は、トラッキングリードを実行する。設定変更動作とトラッキングリードとのそれぞれにおけるコマンドシーケンスは、第１実施形態と同様のため説明を省略する。
【０３１６】
ＮＡＮＤ型フラッシュメモリ１０は、コマンド“３０ｈ”を受信するとレディ状態からビジー状態に遷移し、図１３を用いて説明したようにトラッキングリードを実行する。トラッキングリードが終了すると、ＮＡＮＤ型フラッシュメモリ１０はビジー状態からレディ状態に遷移する。
【０３１７】
トラッキングリードの実行が終了すると、メモリシステム１は、読み出しデータの出力を実行する。第１実施形態において、この“読み出しデータ”は、トラッキングリードによって得られた、最適読み出し電圧による読み出し結果のことを示している。
【０３１８】
読み出しデータの出力におけるコマンドシーケンスは、第１実施形態と同様である。ＮＡＮＤ型フラッシュメモリ１０は、コマンド“Ｅ０ｈ”を受信すると、例えばセンスアンプユニットＳＡＵ内のラッチ回路ＸＤＬに保持された読み出しデータを、メモリコントローラ２０に出力する（“Ｄout”）。
【０３１９】
メモリコントローラ２０が読み出しデータを受信すると、ＥＣＣ回路２４によってエラー訂正処理が実行される。そして、エラー訂正処理の結果に基づいて、パトロール動作が実行されたページが読み出し可能であるか否かが判断される。
【０３２０】
以上のように、第２実施形態に係るメモリシステム１は、パトロール動作において、トラッキングリードにおける読み出し結果を用いて不良検知を実行する。
【０３２１】
（パトロール動作の処理単位が１ページ／１ＢＮＫである場合）
パトロール動作の処理単位が１ページ／１ＢＮＫである場合におけるパトロール動作の処理順番は、例えば第２実施形態と第１実施形態とで同様である。
【０３２２】
以下に、第２実施形態に係るメモリシステム１において、パトロール動作の処理単位が１ページ／１ＢＮＫである場合におけるパトロール動作の動作タイミングの一例について説明する。
【０３２３】
図２２は、第２実施形態において、パトロール動作の処理単位が１ページ／１ＢＮＫである場合における、パトロール動作のタイミングチャートの一例を示している。
【０３２４】
図２２に示すように、メモリシステム１は、バンクＢＮＫ０に対応する動作と、バンクＢＮＫ１に対応する動作とを交互に実行する。
【０３２５】
具体的には、まずメモリコントローラ２０は、下位ページのトラッキングリードに対応するコマンドＣＭＤをバンクＢＮＫ０に送信する。すると、バンクＢＮＫ０は、下位ページのトラッキングリードを実行し、続けて下位ページの読み出しデータＤoutをメモリコントローラ２０に送信する（ＢＮＫ０における下位ページのパトロール動作）。
【０３２６】
次に、メモリコントローラ２０は、下位ページのトラッキングリードに対応するコマンドＣＭＤをバンクＢＮＫ１に送信する。すると、バンクＢＮＫ１は、下位ページのトラッキングリードを実行し、続けて下位ページの読み出しデータＤoutをメモリコントローラ２０に送信する（ＢＮＫ１における下位ページのパトロール動作）。
【０３２７】
尚、第２実施形態においてパトロール動作の処理単位が１ページ／１ＢＮＫである場合、メモリコントローラ２０は、１ＢＮＫ毎に実行されるトラッキングリードと読み出しデータの出力との組の終了後に、ホストリードを割り込ませることが出来る。
【０３２８】
続けて、中位ページに対応するパトロール動作と、上位ページに対応するパトロール動作とが順に実行される。中位ページ及び上位ページに対応するパトロール動作のそれぞれの動作タイミングは、下位ページに対応するパトロール動作の動作タイミングと同様のため、説明を省略する。
【０３２９】
（パトロール動作の処理単位が１ＷＬ／２ＢＮＫである場合）
パトロール動作の処理単位が１ＷＬ／２ＢＮＫである場合におけるパトロール動作の処理順番は、例えば第２実施形態と第１実施形態とで同様である。
【０３３０】
以下に、第２実施形態に係るメモリシステム１において、パトロール動作の処理単位が１ＷＬ／２ＢＮＫである場合におけるパトロール動作の動作タイミングの一例について説明する。
【０３３１】
図２３は、第２実施形態において、パトロール動作の処理単位が１ＷＬ／２ＢＮＫである場合における、パトロール動作のタイミングチャートの一例を示している。
【０３３２】
図２３に示すように、メモリシステム１は、バンクＢＮＫ０に対応する動作と、バンクＢＮＫ１に対応する動作とを適宜並列で実行する。
【０３３３】
具体的には、まずメモリコントローラ２０は、下位ページのトラッキングリードに対応するコマンドＣＭＤを、バンクＢＮＫ０とバンクＢＮＫ１とに対して順に送信する。下位ページのトラッキングリードに対応するコマンドＣＭＤを受信すると、バンクＢＮＫ０とバンクＢＮＫ１とのそれぞれは、下位ページのトラッキングリードを開始する。
【０３３４】
このとき、バンクＢＮＫ０におけるトラッキングリードと、バンクＢＮＫ１におけるトラッキングリードとは、並列で実行され得る。そして、下位ページのトラッキングリードは、バンクＢＮＫ０、バンクＢＮＫ１の順に終了する。
【０３３５】
バンクＢＮＫ０において下位ページのトラッキングリードが終了すると、メモリコントローラ２０は、バンクＢＮＫ０に対して下位ページの読み出しデータＤoutを出力させる（ＢＮＫ０における下位ページのパトロール動作）。
【０３３６】
メモリコントローラ２０は、バンクＢＮＫ０から下位ページの読み出しデータＤoutを受信すると、中位ページのトラッキングリードに対応するコマンドＣＭＤをバンクＢＮＫ０に送信し、バンクＢＮＫ０は中位ページのトラッキングリードを開始する。
【０３３７】
バンクＢＮＫ０が中位ページのトラッキングリードを実行している間に、メモリコントローラは、バンクＢＮＫ１に対して下位ページの読み出しデータＤoutを出力させる（ＢＮＫ１における下位ページのパトロール動作）。
【０３３８】
メモリコントローラ２０は、バンクＢＮＫ１から下位ページの読み出しデータＤoutを受信すると、中位ページのトラッキングリードに対応するコマンドＣＭＤをバンクＢＮＫ１に送信し、バンクＢＮＫ１は中位ページのトラッキングリードを開始する。
【０３３９】
以降も同様に、バンクＢＮＫ０におけるトラッキングリードとバンクＢＮＫ１における読み出しデータの出力とが適宜並列で実行され、バンクＢＮＫ１におけるトラッキングリードとバンクＢＮＫ０における読み出しデータの出力とが適宜並列で実行され得る。
【０３４０】
尚、第２実施形態においてパトロール動作の処理単位が１ＷＬ／２ＢＮＫである場合、メモリコントローラ２０は、１ＷＬ／２ＢＮＫの処理の全てが終了するまで、ホストリードを割り込ませることが出来ない。
【０３４１】
［２−２］第２実施形態の効果
以上で説明したように、第２実施形態に係るメモリシステム１におけるパトロール動作では、トラッキングリードの読み出し結果を用いて不良検知を実行する。つまり、第２実施形態に係るメモリシステム１におけるパトロール動作では、履歴学習と不良検知とをＮＡＮＤ型フラッシュメモリ１０の一回の動作で実行することが出来る。
【０３４２】
これにより、第２実施形態に係るメモリシステム１は、第１実施形態で説明したシフトリードを省略することが出来るため、パトロール動作全体の時間を短縮することが出来る。従って、第２実施形態に係るメモリシステム１は、第１実施形態よりもパトロール動作を高速化することが出来る。
【０３４３】
以上で説明した第１実施形態と第２実施形態とでは第２実施形態の方が優位に見えるが、どちらの方が優位であるかはメモリシステム１におけるコマンドの処理単位に応じて変化する。
【０３４４】
例えば、コマンドの処理単位が１ＷＬ／２ＢＮＫ単位のように大きい場合、ホストリードとパトロール動作とが衝突すると、１ＷＬ／２ＢＮＫ分のパトロール動作が終了するまでホストリードの命令が待たされる。
【０３４５】
この場合、第１及び第２実施形態の両方共にバンクＢＮＫ間の並列動作が可能であることから、パトロール動作の処理時間は、追加でシフトリードを実行する第１実施形態の方が長くなる。しかしながら、コマンドの処理単位が大きい場合、履歴学習と不良検知を分離できないため、第２実施形態の方がホストリードとパトロール動画が衝突した際の待ち時間が長くなる傾向がある。
【０３４６】
待ち時間を短くするためには、メモリシステム１におけるコマンドの処理単位を１ページ／１ＢＮＫ単位のように小さくすることが考えられる。コマンドの処理単位が小さくなると、履歴学習及び不良検知がそれぞれ短時間で終了するため、レイテンシが改善する。
【０３４７】
一方で、コマンドの処理単位が小さい場合に、第２実施形態に係るメモリシステム１では、ホストリードの割り込みによってトラッキングリードの読み出し結果が消えてしまう。つまり、第２実施形態に係るメモリシステム１では、バンクＢＮＫ間においてトラッキングリードを並列で実行することが出来ず、トラッキングリードの処理時間が長くなる。
【０３４８】
これに対して、第１実施形態に係るメモリシステム１では、変形例で説明したように、履歴学習がバンクＢＮＫ間で並列処理され、不良検知がバンクＢＮＫ単位で処理され得る。その結果、第１実施形態に係るメモリシステム１は、処理時間の長いトラッキングリードを並列で処理することが出来るため、第２実施形態よりもトラッキングリードの処理時間を短くすることが出来る。
【０３４９】
以上のように、メモリシステム１は、コマンドの処理単位を適宜変更し、且つ第１及び第２実施形態を適宜使い分けることによって、ＳＳＤの用途に応じた最適なパトロール動作を実行することが出来る。
【０３５０】
［３］第３実施形態
第３実施形態に係るメモリシステム１は、例えば第１実施形態に係るメモリシステム１と同じ構成を有する。そして、第３実施形態に係るメモリシステム１は、各パトロール期間において、ワード線ＷＬのアドレスに応じてパトロール動作が適宜間引かれる。以下に、第３実施形態に係るメモリシステム１について、第１及び第２実施形態と異なる点を説明する。
【０３５１】
［３−１］パトロール動作について
図２４は、第３実施形態の比較例に係るメモリシステム１におけるパトロール動作の実施サイクルの一例を示している。
【０３５２】
尚、以下の説明で参照されるタイミングチャートでは、所定の日から１週間分の期間が抽出されて示されている。パトロール動作の対象であるワード線ＷＬ及びブロックＢＬＫのそれぞれが適宜省略されている。各項目内に示された縦棒は、パトロール動作を実施していることを示している。
【０３５３】
また、パトロール動作の実施サイクルの説明において、メモリシステム１のパトロール期間は１日に設定されているものと仮定する。つまり、以下の説明では、例えば１日毎に、ＮＡＮＤ型フラッシュメモリ１０内の全てのブロックＢＬＫに含まれた全てのワード線ＷＬに対するパトロール動作が実行され得る。
【０３５４】
図２４に示すように、第３実施形態の比較例に係るメモリシステム１では、１サイクル目（“１ｄａｙ”）のパトロール期間において、まずブロックＢＬＫ０のワード線ＷＬ０〜ＷＬ１５に対するパトロール動作が順に実施され、続けてブロックＢＬＫ１のワード線ＷＬ０〜ＷＬ１５に対するパトロール動作が順に実施される。
【０３５５】
以降も同様に、パトロール動作が実施されていないブロックＢＬＫに対して順次パトロール動作が実施される。そして、第３実施形態の比較例に係るメモリシステム１では、２サイクル目（“２ｄａｙ”）以降のパトロール期間において、１サイクル目と同様にパトロール動作が実施される。
【０３５６】
図２５は、第３実施形態に係るメモリシステム１におけるパトロール動作の実施サイクルの一例を示している。
【０３５７】
図２５に示すように、第３実施形態に係るメモリシステム１では、１サイクル目（“１ｄａｙ”）のパトロール期間において、第３実施形態の比較例と同様に、まずブロックＢＬＫ０のワード線ＷＬ０〜ＷＬ１５に対するパトロール動作が順に実施され、続けてブロックＢＬＫ１のワード線ＷＬ０〜ＷＬ１５に対するパトロール動作が順に実施される。以降も同様に、パトロール動作が実施されていないブロックＢＬＫに対して順次パトロール動作が実施される。
【０３５８】
そして、第３実施形態に係るメモリシステム１では、例えば２サイクル目（“２ｄａｙ”）及び３サイクル目（“３ｄａｙ”）のパトロール期間のそれぞれにおいて、パトロール動作の対象である全てのワード線ＷＬのうち、特定のワード線ＷＬ以外のワード線ＷＬに対するパトロール動作が間引かれる。
【０３５９】
この特定のワード線ＷＬとしては、例えばＮＡＮＤストリングＮＳの端部に位置するメモリセルトランジスタＭＴに対応するワード線ＷＬ０及びＷＬ１５と、メモリピラーＭＰの接合部ＪＴに隣接するメモリセルトランジスタＭＴに対応するワード線ＷＬ７及びＷＬ８とのそれぞれが設定される。
【０３６０】
このような場合、２サイクル目及び３サイクル目のパトロール期間のそれぞれでは、ワード線ＷＬ１〜ＷＬ６、及びＷＬ９〜ＷＬ１４のそれぞれに対するパトロール動作が省略され、その他のワード線ＷＬに対するパトロール動作が実施される。
【０３６１】
そして、第３実施形態に係るメモリシステム１では、４サイクル目（“４ｄａｙ”）以降のパトロール期間において、１サイクル目〜３サイクル目と同様に、パトロール動作のサイクルが繰り返される。つまり、第３実施形態に係るメモリシステム１では、繰り返されるパトロール期間において、パトロール動作の間引きが行われるパトロール期間が適宜挿入される。
【０３６２】
［３−２］第３実施形態の効果
メモリピラーＭＰがＺ方向に連結された複数のピラーを有する場合、メモリセルトランジスタＭＴの記憶するデータの信頼性は、ワード線ＷＬのアドレスに応じて異なることが推測され得る。
【０３６３】
例えば、ＮＡＮＤストリングＮＳの端部に対応するメモリセルトランジスタＭＴや、接合部ＪＴに近接するメモリセルトランジスタＭＴは、その他の部分に配置されたメモリセルトランジスタＭＴよりも特性のばらつきが大きく、データの保持特性が劣っていることが推測され得る。
【０３６４】
このような場合、パトロール動作を実施する効果は、ＮＡＮＤストリングＮＳの端部に対応する又は接合部ＪＴに近接するメモリセルトランジスタＭＴの方が、その他の部分に配置されたメモリセルトランジスタＭＴよりも高くなると考えられる。
【０３６５】
また、メモリシステム１の記憶容量が大きくなると、パトロール動作を実施する対象が多くなり、メモリシステム１がパトロール動作を実施している時間が長くなる。このような場合、ホストリードとパトロール動作とが衝突する可能性が高くなり、メモリシステム１のレイテンシが悪化する懸念がある。
【０３６６】
そこで、第３実施形態に係るメモリシステム１では、繰り返されるパトロール期間に対して、パトロール動作が間引かれたパトロール期間が適宜挿入される。そして、パトロール動作が間引かれたパトロール期間では、パトロール動作を実施する効果の高いワード線ＷＬに対して選択的にパトロール動作が実施される。
【０３６７】
言い換えると、第３実施形態に係るメモリシステム１では、ワード線ＷＬの信頼性に応じてパトロール動作の周期が最適化される。信頼性に応じてパトロール動作の周期が最適化されることによって、パトロール動作の間引き対象であるワード線ＷＬにおいても、データの信頼性が維持される。
【０３６８】
これにより、第３実施形態に係るメモリシステム１は、第３実施形態の比較例のように全てのワード線ＷＬに対するパトロール動作が実行される場合と同様に、記憶するデータの信頼性を担保することが出来る。また、第３実施形態に係るメモリシステム１は、パトロール動作の処理量を低減することが出来るため、ホストリードとパトロール動作が衝突する確率を下げることが出来、レイテンシを改善することが出来る。
【０３６９】
以上の説明では、１本のメモリピラーＭＰがＺ方向に連結された複数のピラーを有する場合について例示したが、第３実施形態で説明した動作は、メモリピラーＭＰがその他の構造を有する場合においても適用することが可能である。第３実施形態におけるパトロール動作では、少なくともワード線ＷＬの信頼性に応じてパトロール動作の周期が最適化されていれば良い。
【０３７０】
［４］第４実施形態
第４実施形態に係るメモリシステム１は、例えば第１実施形態に係るメモリシステム１と同じ構成を有する。そして、第４実施形態に係るメモリシステム１は、ブロックＢＬＫにデータが書き込まれてからの時間経過に応じてパトロール動作の実施頻度を変化させる。以下に、第４実施形態に係るメモリシステム１について、第１〜第３実施形態と異なる点を説明する。
【０３７１】
［４−１］パトロール動作について
図２６は、第４実施形態に係るメモリシステム１におけるメモリセルトランジスタＭＴの書き込み後の読み出し電圧の変化の一例を示している。図２６に示されたグラフにおいて、縦軸は読み出し電圧の補正値（ＤＡＣ値）に対応し、横軸はメモリセルトランジスタＭＴにデータが書き込まれた後の経過時間を示す保持時間に対応している。
【０３７２】
図２６に示すように、各読み出し電圧は、メモリセルトランジスタＭＴにデータが書き込まれた後の経過時間（データの保持時間）に基づいて変化している。
【０３７３】
具体的には、例えば書き込み直後における各読み出し電圧の変化量は、書き込み後から所定の時間経過後における各読み出し電圧の変化量よりも小さい。言い換えると、書き込み直後から暫くは読み出し電圧の変化量が大きく、ある程度時間が経過すると読み出し電圧の変化量が小さくなる。
【０３７４】
そこで、第４実施形態に係るメモリシステム１は、データが書き込まれた後のパトロール動作の実施サイクルを、データが書き込まれてからの時間経過に応じて変更する。
【０３７５】
図２７は、第４実施形態に係るメモリシステム１におけるパトロール動作の実施サイクルの一例を示している。
【０３７６】
以下の説明で参照されるタイミングチャートにおいて、各項目内に示された縦棒は、例えばブロックＢＬＫ内の全てのワード線ＷＬに対してパトロール動作を実施していることを示している。また、図示されたブロックＢＬＫ０〜ＢＬＫ７のそれぞれに対する書き込み動作は、同日に実行されたものと仮定する。そして、図示された期間は、各ブロックＢＬＫにデータが書き込まれてからの経過日数にも対応している。
【０３７７】
図２７に示すように、第４実施形態に係るメモリシステム１では、１サイクル目（“１ｄａｙ”）のパトロール期間において、ブロックＢＬＫ０から順にパトロール動作が実施される。そして、１サイクル目と同様のパトロール動作が、２サイクル目（“２ｄａｙ”）、３サイクル目（“３ｄａｙ”）、５サイクル目（“５ｄａｙ”）、及び７サイクル目（“７ｄａｙ”）のそれぞれのパトロール期間においても実施される。
【０３７８】
一方で、第４実施形態に係るメモリシステム１では、例えば４サイクル目（“４ｄａｙ”）及び６サイクル目（“６ｄａｙ”）のそれぞれのパトロール期間において、パトロール動作が省略される。つまり、書き込み直後から２日間は毎日パトロール動作が実施され、３日目以降は２日に１回パトロール動作が省略されている（“間引き対象サイクル”）。
【０３７９】
尚、第４実施形態に係るメモリシステム１は、間引き対象サイクルを挿入する頻度を適宜変更することが可能である。間引き対象サイクルは、少なくとも書き込み直後から所定の回数のパトロール期間が繰り返された後に挿入される。また、間引き対象サイクルは、連続で挿入されても良い。
【０３８０】
また、以上の説明では、繰り返されるパトロール期間に間引き対象サイクルが挿入される場合について例示したが、これに限定されない。例えば、第４実施形態で説明した動作では、パトロール動作が実行される周期が書き込み後の時間経過に応じて変化していると見なされても良い。この場合に、パトロール動作が実行される周期は、時間経過と共に長くなるように設定される。
【０３８１】
［４−２］第４実施形態の効果
第４実施形態において図２６を用いて説明したように、読み出し電圧の変化量は、時間経過と共に変化する。そして、読み出し電圧の変化量は、書き込み後が最も大きく、時間経過に応じて小さくなる。このような現象は、書き込み直後におけるメモリセルトランジスタＭＴの閾値電圧の低下が特に大きいことが原因で生じ得る。
【０３８２】
そこで、第４実施形態に係るメモリシステム１は、書き込み後の時間経過に応じて、パトロール動作が実行する周期を変化させる。言い換えると、第４実施形態に係るメモリシステム１は、メモリセルトランジスタＭＴのデータ保持特性の変化に応じて、適切な頻度でパトロール動作を実行する。
【０３８３】
これにより、第４実施形態に係るメモリシステム１は、記憶するデータの信頼性を担保しつつ、パトロール動作の処理量を低減することが出来る。従って、第４実施形態に係るメモリシステム１は、ホストリードとパトロール動作が衝突する確率を下げることが出来、レイテンシを改善することが出来る。
【０３８４】
［５］第５実施形態
第５実施形態に係るメモリシステム１は、例えば第１実施形態に係るメモリシステム１と同じ構成を有する。そして、第５実施形態に係るメモリシステム１は、ブロックＢＬＫにデータが書き込まれてからの時間経過に応じて短縮パトロール動作を挿入する。以下に、第５実施形態に係るメモリシステム１について、第１〜第４実施形態と異なる点を説明する。
【０３８５】
［５−１］省略トラッキングリードについて
短縮パトロール動作においてメモリシステム１は、省略トラッキングリードを実行する。省略トラッキングリードでは、読み出し電圧の補正値を見積もるためのトラッキングが、例えば高い方の読み出し電圧に対してのみ実行される。そして、低い方の読み出し電圧に対応する読み出し電圧の補正値は、高い方の読み出し電圧における補正値から見積もられる。
【０３８６】
図２８は、第５実施形態に係るメモリシステム１の省略トラッキングリードにおけるトラッキング対象レベルの一例を示している。
【０３８７】
図２８に示すように、本例において、読み出し対象が中位ページである場合、読み出し電圧ＦＲに対応するトラッキングが実行され、読み出し電圧ＢＲ及びＤＲのそれぞれに対応するトラッキングが省略される。読み出し対象が上位ページである場合、読み出し電圧ＧＲに対応するトラッキングが実行され、読み出し電圧ＣＲに対応するトラッキングが省略される。
【０３８８】
一方で、読み出し対象が下位ページである場合、例えば読み出し電圧ＡＲ及びＥＲの両方に対してトラッキングが実行され得る。この理由は、最も低い書き込みレベルに対応する“Ａ”レベルの閾値分布と、“ＥＲ”レベルの閾値分布との間は、読み出しエラーが発生し易いからである。つまり、省略トラッキングリードでは、最も低い書き込みレベルに対応する読み出し電圧を含むページでは、複数の読み出し電圧が使用され得る。
【０３８９】
図２９は、第５実施形態に係るメモリシステム１における省略トラッキングリードの一例を示すタイミングチャートであり、上位ページの読み出し動作に対応する省略トラッキングリードの一例を示している。
【０３９０】
図２９に示すように、上位ページの省略トラッキングリードを実行する場合、メモリコントローラ２０は、例えばコマンド“ｘｚｈ”、コマンド“０３ｈ”、コマンド“００ｈ”、５サイクルのアドレス情報“ＡＤＤ”、及びコマンド“３０ｈ”を順にＮＡＮＤ型フラッシュメモリ１０に送信する。
【０３９１】
コマンド“ｘｚｈ”は、省略トラッキングリードの実行をＮＡＮＤ型フラッシュメモリ１０に指示するコマンドである。ＮＡＮＤ型フラッシュメモリ１０は、コマンド“３０ｈ”を受信するとレディ状態からビジー状態に遷移して、シーケンサ１５が省略トラッキングリードを開始する。
【０３９２】
上位ページの省略トラッキングリードが開始すると、選択ワード線ＷＬselには、例えば読み出し電圧ＧＲに対応するトラッキング電圧ＧＲｔ１、ＧＲｔ２、ＧＲｔ３、ＧＲｔ４及びＧＲｔ５のそれぞれが順に印加される。
【０３９３】
また、シーケンサ１５は、各トラッキング電圧が選択ワード線ＷＬselに印加されている間に、それぞれ制御信号ＳＴＢをアサートする。それから、シーケンサ１５は、トラッキング電圧ＧＲｔ１〜ＧＲｔ５のそれぞれの読み出し結果に基づいて最適読み出し電圧ＧＲｃを見積もる。さらに、シーケンサ１５は、最適読み出し電圧ＧＲｃに基づいて最適読み出し電圧ＣＲｃを見積もる。
【０３９４】
省略トラッキングリードによって得られた最適読み出し電圧に対応する補正値は、通常のトラッキングリードと同様に、例えばステータスレジスタ１３Ａに保持される。
【０３９５】
その後、選択ワード線ＷＬselには、最適読み出し電圧ＣＲｃ及びＧＲｃが順に印加される。これ以降の省略トラッキングリードの動作は、図１３を用いて説明したトラッキングリードの動作と同様のため、説明を省略する。
【０３９６】
尚、本例において、メモリシステム１は、その他のページの省略トラッキングリードについても、上位ページの省略トラッキングリードと同様に実行することが出来る。
【０３９７】
例えば、中位ページのトラッキングリードでは、コマンド“０３ｈ”の替わりにコマンド“０２ｈ”が使用される。また、中位ページの省略トラッキングリードでは、使用されるトラッキング電圧及び読み出し電圧が適宜変更される。中位ページの省略トラッキングリードにおけるその他の動作は、上位ページの省略トラッキングリードと同様のため、説明を省略する。
【０３９８】
［５−２］パトロール動作について
再び図２６を参照して、メモリセルトランジスタＭＴにデータが書き込まれた後の経過時間（データの保持時間）に基づく各読み出し電圧の変化について説明する。
【０３９９】
図２６に示すように、各読み出し電圧の変化量は、読み出し電圧が低いグループと、読み出し電圧が高いグループとの間で大きく異なっている。
【０４００】
具体的には、例えば読み出し電圧ＢＲ、ＣＲ及びＤＲのそれぞれにおける読み出し電圧の変化量は、読み出し電圧ＥＲ、ＦＲ及びＧＲのそれぞれにおける読み出し電圧の変化量よりも小さい。言い換えると、読み出し電圧が高いグループ（読み出し電圧ＥＲ、ＦＲ及びＧＲ）の方が、読み出し電圧が低いグループ（読み出し電圧ＢＲ、ＣＲ及びＤＲ）よりも読み出し電圧の変化量が大きくなる傾向がある。
【０４０１】
そこで、第５実施形態に係るメモリシステム１は、データが書き込まれてからの時間経過に応じて、省略トラッキングリードを用いた短縮パトロール動作を適宜挿入する。省略トラッキングリードでは、読み出し電圧の変化量の比較的大きい読み出し電圧に対するトラッキングが実行され、読み出し電圧の変化量の比較的小さい読み出し電圧に対するトラッキングが省略される。
【０４０２】
図３０は、第５実施形態に係るメモリシステム１におけるパトロール動作の実施サイクルの一例を示している。
【０４０３】
図３０に示すように、第５実施形態に係るメモリシステム１では、１サイクル目（“１ｄａｙ”）のパトロール期間において、ブロックＢＬＫ０から順にパトロール動作が実施される。そして、１サイクル目と同様のパトロール動作が、２サイクル目（“２ｄａｙ”）、４サイクル目（“４ｄａｙ”）、及び７サイクル目（“７ｄａｙ”）のそれぞれのパトロール期間においても実施される。
【０４０４】
一方で、第５実施形態に係るメモリシステム１では、例えば３サイクル目（“４ｄａｙ”）、５サイクル目（“５ｄａｙ”）、及び６サイクル目（“６ｄａｙ”）のそれぞれのパトロール期間において、ブロックＢＬＫ０から順に短縮パトロール動作が実行される（“短縮対象サイクル”）。つまり、書き込み直後から２日間は通常のパトロール動作が実施され、３日目以降に適宜短縮パトロール動作が挿入されている。
【０４０５】
尚、第５実施形態に係るメモリシステム１は、短縮対象サイクルを挿入する頻度を適宜変更することが可能である。短縮対象サイクルは、少なくとも書き込み直後から所定の回数のパトロール期間が繰り返された後に挿入される。また、短縮対象サイクルは、連続で挿入されても良い。
【０４０６】
［５−３］第５実施形態の効果
第５実施形態において図２６を用いて説明したように、読み出し電圧の変化量は、読み出し電圧毎に異なっている。そして、読み出し電圧の変化量は、読み出し電圧が高いほど大きくなる傾向がある。このような現象は、書き込み直後におけるメモリセルトランジスタＭＴの閾値電圧の低下が、閾値電圧が高いほど大きくなることが原因で生じ得る。
【０４０７】
そこで、第５実施形態に係るメモリシステム１は、書き込み後の時間経過に応じて、精度の高い通常のパトロール動作と、高速な短縮パトロール動作とを使い分ける。
【０４０８】
具体的には、読み出し電圧の変化量が大きい期間、すなわち書き込み直後を含む所定の期間において、第５実施形態に係るメモリシステム１は、精度の高い通常のパトロール動作を実行する。一方で、読み出し電圧の変化量が小さい期間、すなわち所定の時間が経過した後において、第５実施形態に係るメモリシステム１は、適宜短縮パトロール動作を実行する。
【０４０９】
短縮パトロール動作よって得られる読み出し電圧の補正値の精度は、通常のパトロール動作よりも劣っている。しかしながら、第５実施形態に係るメモリシステム１は、適宜通常のパトロール動作も実行するため、短縮パトロール動作においてトラッキングが省略された読み出し電圧に対応する補正値の精度も担保することが出来、読み出しデータの信頼性を維持することが出来る。
【０４１０】
その結果、第５実施形態に係るメモリシステム１は、記憶するデータの信頼性を担保しつつ、パトロール動作の処理量を低減することが出来る。従って、第５実施形態に係るメモリシステム１は、ホストリードとパトロール動作が衝突した際の待ち時間を短縮することが出来、レイテンシを改善することが出来る。
【０４１１】
［６］第６実施形態
第６実施形態に係るメモリシステム１は、例えば第１実施形態に係るメモリシステム１と同じ構成を有する。そして、第６実施形態に係るメモリシステム１は、ブロックＢＬＫにデータが書き込まれてからの実行データ保持時間に応じて、選択的にパトロール動作を実行する。以下に、第６実施形態に係るメモリシステム１について、第１〜第５実施形態と異なる点を説明する。
【０４１２】
［６−１］パトロール動作について
第６実施形態に係るメモリシステム１では、パトロール動作において、温度センサ２５が測定したメモリシステム１のシステム温度、或いはＮＡＮＤ型フラッシュメモリ１０から取得された温度情報が使用される。例えば、メモリコントローラ２０のＣＰＵ２１は、温度センサ２５によるメモリシステム１のシステム温度の測定結果に基づいて、パトロール管理パラメータを更新する。
【０４１３】
パトロール管理パラメータは、例えばＲＡＭ２２に保持される。第６実施形態において、パトロール管理パラメータには、ブロックＢＬＫ毎の実効データ保持時間に関する情報が記録される。
【０４１４】
実効データ保持時間とは、ブロックＢＬＫにデータが書き込まれてから様々な温度状況下においてメモリシステム１が加熱された時間が、特定の温度状況下においてメモリシステム１が加熱された時間に換算された時間のことを示している。
【０４１５】
実行データ保持時間は、例えばブロックＢＬＫにデータが書き込まれてからの経過時間がタイマ２８によって計測され、所定の周期毎の温度センサ２５の測定結果に基づいて算出される。
【０４１６】
特定の温度状況下における時間に換算する際の係数は、例えば各温度状況下においてメモリシステム１が加熱された場合に、読み出したデータのエラー訂正が不可能になる日数に基づいて設定される。以下では、この特定の温度が４０℃に設定されたものと仮定して説明する。尚、実効データ保持時間の基準として使用される温度は、４０℃に限定されず、適宜変更され得る。
【０４１７】
図３１は、第６実施形態に係るメモリシステム１におけるメモリセルトランジスタＭＴの書き込み後のデータ保持特性の温度依存性とパトロール基準との一例を示している。図３１に示されたグラフにおいて、縦軸はデータが保持されてからの実効時間＠４０℃（Ｄａｙ）、すなわち４０℃を基準とした実効データ保持時間に対応し、横軸はメモリセルトランジスタＭＴに対する加熱時間（Ｄａｙ）に対応している。
【０４１８】
図３１に示すように、実効データ保持時間は、メモリシステム１のシステム温度が高くなる程長くなる。
【０４１９】
具体的には、例えば４０℃のシステム温度でメモリシステム１が１日加熱された場合の実効時間が、１日として計算される。この場合、２５℃のシステム温度でメモリシステム１が１日加熱された場合の実効時間は１日よりも短くなり、７０℃のシステム温度でメモリシステム１が１日加熱された場合の実効時間は１日よりも長くなる。
【０４２０】
そして、ブロックＢＬＫに記憶されたデータの信頼性を維持することが可能な実効時間は、例えば１ヶ月に設定される。実効時間が１ヶ月を超えたブロックＢＬＫでは、エラー訂正が困難になる可能性が想定され、パトロール動作を実行することが好ましい。
【０４２１】
そこで、第６実施形態に係るメモリシステム１は、パトロール管理パラメータに記録された実効データ保持時間に基づいて、選択的にパトロール動作を実行する。
【０４２２】
図３２は、第６実施形態に係るメモリシステム１のパトロール動作におけるパトロール管理パラメータの一例を示している。
【０４２３】
図３２に示すように、第６実施形態におけるパトロール管理パラメータには、ブロックＢＬＫ毎の実効データ保持時間が記録される。パトロール管理パラメータに記録される実効データ保持時間は、逐次更新されても良いし、所定の間隔で更新されても良い。
【０４２４】
第６実施形態に係るメモリシステム１は、実効データ保持時間が所定の基準を超えたブロックＢＬＫを検知すると、当該ブロックＢＬＫに対するパトロール動作を実行する。
【０４２５】
パトロール動作の基準が“実効時間が１ヶ月を超えたこと”に設定された場合、本例ではブロックＢＬＫ５及びＢＬＫ６のそれぞれが当該基準を超えた状態になっている。つまり、メモリシステム１は、実効データ保持時間が１ヶ月を超えた時点で、ブロックＢＬＫ５及びＢＬＫ６のそれぞれに対してパトロール動作を実行する。
【０４２６】
本例では、パトロール動作が実行された後において、実効データ保持時間が引き続き更新されている。この場合には、パトロール動作が実行された後に、再びパトロール動作の基準として設定された時間が経過すると、再びパトロール動作が実行される。パトロール管理パラメータにはパトロール動作の実行回数が記録されても良く、この実行回数とパトロール動作の基準とに基づいて、パトロール動作が実行され得る。
【０４２７】
尚、パトロール動作が実行された後に、当該ブロックＢＬＫに対応する実効データ保持時間がリセットされても良い。このような場合においても、第６実施形態に係るメモリシステム１は、ブロックＢＬＫ毎の実効データ保持時間に基づいて、選択的にパトロール動作を実行することが出来る。
【０４２８】
［６−２］第６実施形態の効果
第６実施形態において図３１を用いて説明したように、メモリセルトランジスタＭＴのデータ保持特性は、システム温度が高くなる程悪化し、システム温度が低くなるほど改善する傾向がある。
【０４２９】
例えば、メモリシステム１のシステム温度が７０℃である場合にデータの信頼性を維持する限界が１日であるメモリシステム１においても、４０℃である場合には例えば１ヶ月データの信頼性を維持することが可能になる。
【０４３０】
このため、メモリシステム１のシステム温度が高い場合には、パトロール動作の頻度は高い方が好ましい。一方で、メモリシステム１のシステム温度が低い場合には、パトロール動作の頻度は低くても問題は生じにくい。
【０４３１】
そこで、第６実施形態に係るメモリシステム１は、システム温度に応じた実効データ保持時間に基づいて、パトロール動作が実行される頻度を変更する。
【０４３２】
具体的には、第６実施形態に係るメモリシステム１では、温度センサ２５の測定結果を適宜参照して、測定結果が例えば特定の温度状況下における実効データ保持時間に換算される。そして、第６実施形態に係るメモリシステムは、実効データ保持時間に対して所定の基準を設けて、当該基準に基づいて適切な頻度でパトロール動作を実行する。
【０４３３】
これにより、第６実施形態に係るメモリシステム１は、記憶するデータの信頼性を担保しつつ、パトロール動作の処理量を低減することが出来る。従って、第６実施形態に係るメモリシステム１は、ホストリードとパトロール動作が衝突する確率を下げることが出来、レイテンシを改善することが出来る。
【０４３４】
［７］第７実施形態
第７実施形態に係るメモリシステム１は、例えば第１実施形態に係るメモリシステム１と同じ構成を有する。そして、第７実施形態に係るメモリシステム１は、有効なデータを保持するブロックＢＬＫをパトロール対象に設定して、選択的にパトロール動作を実行する。以下に、第７実施形態に係るメモリシステム１について、第１〜第６実施形態と異なる点を説明する。
【０４３５】
［７−１］パトロール動作について
図３３は、第７実施形態に係るメモリシステム１のパトロール動作におけるパトロール管理パラメータの一例を示している。
【０４３６】
図３３に示すように、第７実施形態におけるパトロール管理パラメータには、例えばブロックＢＬＫ毎に有効データ領域フラグが記録される。有効データ領域フラグは、当該ブロックＢＬＫに対して有効なデータが書き込まれているか否かを示している。
【０４３７】
例えば、有効データ領域フラグが“ＴＲＵＥ”である場合、当該ブロックＢＬＫには有効なデータが書き込まれていることを示している。一方で、有効データ領域フラグが“ＦＡＬＳＥ”である場合、当該ブロックＢＬＫには無効なデータのみが書き込まれている、若しくは当該ブロックＢＬＫが消去状態であることを示している。
【０４３８】
そして、第７実施形態に係るメモリシステム１は、有効データ領域フラグに基づいてパトロール動作を実行する。
【０４３９】
図３４は、第７実施形態に係るメモリシステム１におけるパトロール動作の実施サイクルの一例を示している。本例では、ブロックＢＬＫ２、ＢＬＫ３及びＢＬＫ４に対応する有効データ領域フラグが“ＴＲＵＥ”であり、その他のブロックＢＬＫに対応する有効データ領域フラグが“ＦＡＬＳＥ”であるものと仮定する。
【０４４０】
図３４に示すように、第７実施形態に係るメモリシステム１では、各パトロール期間において、書き込み済みブロックＢＬＫであるブロックＢＬＫ２、ＢＬＫ３及びＢＬＫ４に対するパトロール動作が実行される。一方で、各パトロール期間において、有効データ領域フラグが“ＦＡＬＳＥ”であるその他のブロックＢＬＫに対しては、パトロール動作が実行されない。
【０４４１】
以上のように、第７実施形態に係るメモリシステム１は、有効データ領域フラグに基づいて、有効なデータが書き込まれているブロックＢＬＫに対して選択的にパトロール動作が実行することが出来る。
【０４４２】
尚、以上で説明した動作は、“メモリコントローラ２０が、システム管理領域（例えばＲＡＭ２２）から論物変換テーブルの読み出しを行い、有効なデータを保持するブロックに対して前記パトロール動作を実行し、上書きによって無効になったデータや消去済みのブロックに対するパトロール動作を省略する”とも言い換えることが可能である。
【０４４３】
［７−２］第７実施形態の効果
メモリシステム１は、有効なデータを含むブロックＢＬＫと、無効なデータのみを含むブロックＢＬＫとが混在している。無効なデータのみを含むブロックＢＬＫは、例えば書き込みが実行されていない消去状態のブロックＢＬＫや、ガベージコレクション等におけるコピー元のブロックＢＬＫ等に対応している。
【０４４４】
有効なデータを含むブロックＢＬＫには、読み出し動作が実行される。一方で、無効なデータのみを含むブロックＢＬＫには、読み出し動作が実行されない。このため、無効なデータのみを含むブロックＢＬＫに対するパトロール動作は、省略されても問題が生じ得ない。
【０４４５】
そこで、第７実施形態に係るメモリシステム１は、有効なデータを含むブロックＢＬＫに対して選択的にパトロール動作を実行し、無効なデータのみを含むブロックＢＬＫに対するパトロール動作を省略する。
【０４４６】
これにより、第７実施形態に係るメモリシステム１は、パトロール動作の処理量を低減することが出来る。従って、第７実施形態に係るメモリシステム１は、ホストリードとパトロール動作が衝突する確率を下げることが出来、レイテンシを改善することが出来る。
【０４４７】
［８］その他の変形例等
実施形態のメモリシステム＜例えば図１、１＞は、半導体メモリとメモリコントローラとを含む。半導体メモリ＜例えば図３、１０＞は、直列に接続された複数のメモリセルと、複数のメモリセルにそれぞれ接続された複数のワード線とを含む。メモリコントローラ＜例えば図１、２０＞は、第１のパトロール期間と、第１のパトロール期間に続く第２のパトロール期間とのそれぞれにおいて、半導体メモリの読み出し動作を含むパトロール動作を実行する。複数のワード線は、ワード線のアドレスに基づいて第１グループ及び第２グループのいずれかに分類される。メモリコントローラは、第１のパトロール期間において、複数のワード線をそれぞれ選択した複数のパトロール動作を実行する。メモリコントローラは、第２のパトロール期間＜例えば図２５、間引き対象サイクル＞において、第１グループに含まれたワード線を選択したパトロール動作を実行し、第２グループに含まれたワード線を選択したパトロール動作を省略する。これにより、実施形態のメモリシステムは、データの信頼性を担保し、且つレイテンシを改善することが出来る。
【０４４８】
上記実施形態は、適宜組み合わせることが可能である。例えば、第１又は第２実施形態に対して、第３〜第７実施形態のいずれかが適用されても良い。また、第３〜第７実施形態は、互いに組み合わせることが可能である。
【０４４９】
上記実施形態において、メモリセルトランジスタＭＴのデータ割り付けは適宜変更され得る。例えば、メモリセルトランジスタＭＴに３ビットデータが記憶される場合に、２−３−２コード以外のデータの割り付けが適用されても良い。
【０４５０】
上記実施形態では、１つのメモリセルトランジスタＭＴに３ビットデータが記憶される場合について例示したが、１つのメモリセルトランジスタＭＴには１ビット、２ビット、又は４ビット以上のデータが記憶されても良い。このような場合においても、メモリシステム１は、上記実施形態で説明した動作を実行することが出来る。
【０４５１】
上記実施形態で説明したトラッキングリード、シフトリード、省略トラッキングリードのそれぞれにおいて、選択ワード線ＷＬselに印加される電圧は、例えばロウデコーダモジュール１８に電圧を転送する信号線ＣＧの電圧と同様の電圧となる。
【０４５２】
つまり、各種配線に印加される電圧や電圧が印加されている期間は、対応する信号線ＣＧの電圧を調べることにより大まかに知ることが出来る。信号線ＣＧの電圧からワード線ＷＬの電圧を見積もる場合には、ロウデコーダＲＤに含まれたトランジスタＴＲによる電圧降下を考慮しても良い。この場合、ワード線ＷＬの電圧は、対応する信号線ＣＧに印加されている電圧よりもトランジスタＴＲの電圧降下の分だけ低くなる。
【０４５３】
上記実施形態において、説明に使用されたコマンド“ｘｘｈ”、“ｙｙｈ”、“ｚｚｈ”及び“ｚｘｈ”のそれぞれは、任意のコマンドに置き換えることが可能である。
【０４５４】
上記実施形態では、第１〜第３ページに対応する動作を指示するコマンドとして、それぞれコマンド“０１ｈ”〜“０３ｈ”を使用した場合を例に説明したが、これに限定されない。例えば、コマンド“０１ｈ”〜“０３ｈ”がその他のコマンドに置き換えられても良いし、アドレス情報ＡＤＤにページの情報を含ませることによって、これらのコマンドが省略されても良い。
【０４５５】
上記実施形態では、メモリセルアレイ１１に設けられたメモリセルトランジスタＭＴが三次元に積層された構造である場合を例に説明したが、これに限定されない。例えば、メモリセルアレイ１１の構成は、メモリセルトランジスタＭＴが二次元に配置された平面ＮＡＮＤ型フラッシュメモリであっても良い。このような場合においても、上記実施形態は実現することが可能であり、同様の効果を得ることが出来る。
【０４５６】
上記実施形態におけるメモリセルアレイ１１は、その他の構成であっても良い。その他のメモリセルアレイ１１の構成については、例えば“三次元積層不揮発性半導体メモリ”という２００９年３月１９日に出願された米国特許出願１２／４０７，４０３号、“三次元積層不揮発性半導体メモリ”という２００９年３月１８日に出願された米国特許出願１２／４０６，５２４号、“不揮発性半導体記憶装置及びその製造方法”という２０１０年３月２５日に出願された米国特許出願１２／６７９，９９１号、“半導体メモリ及びその製造方法”という２００９年３月２３日に出願された米国特許出願１２／５３２，０３０号にそれぞれ記載されている。これらの特許出願は、その全体が本願明細書において参照により援用されている。
【０４５７】
本明細書において“接続”とは、電気的に接続されている事を示し、例えば間に別の素子を介することを除外しない。また、本明細書において“オフ状態”とは、対応するトランジスタのゲートに当該トランジスタの閾値電圧未満の電圧が印加されていることを示し、例えばトランジスタのリーク電流のような微少な電流が流れることを除外しない。
【０４５８】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことが出来る。これら実施形態やその変形は、発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０４５９】
１…メモリシステム、２…ホスト機器、１０…ＮＡＮＤ型フラッシュメモリ、１１…メモリセルアレイ、１２…入出力回路、１３…レジスタ部、１３Ａ…ステータスレジスタ、１３Ｂ…アドレスレジスタ、１３Ｃ…コマンドレジスタ、１４…ロジックコントローラ、１５…シーケンサ、１６…レディ／ビジー制御回路、１７…電圧生成回路、１８…ロウデコーダモジュール、１９…センスアンプモジュール、２０…メモリコントローラ、２１…ＣＰＵ、２２…ＲＡＭ、２３…ホストインターフェイス回路、２４…ＥＣＣ回路、２５…温度センサ、２６…ＮＡＮＤインターフェイス回路、２７…ＤＲＡＭインターフェイス回路、２８…タイマ、ＰＫＧ…ＮＡＮＤパッケージ、ＢＮＫ…バンク、ＢＬＫ…ブロック、ＳＵ…ストリングユニット、ＣＣ…チャネル制御回路、ＲＤ…ロウデコーダ、ＳＡＵ…センスアンプユニット、ＭＴ…メモリセルトランジスタ、ＳＴ１，ＳＴ２…選択トランジスタ、ＴＲ…トランジスタ、ＢＬ０…ビット線、ＷＬ…ワード線、ＳＧＤ，ＳＧＳ…選択ゲート線
【図１】
2020047322.tif 000003
【図２】
2020047322.tif 000004
【図３】
2020047322.tif 000005
【図４】
2020047322.tif 000006
【図５】
2020047322.tif 000007
【図６】
2020047322.tif 000008
【図７】
2020047322.tif 000009
【図８】
2020047322.tif 000010
【図９】
2020047322.tif 000011
【図１０】
2020047322.tif 000012
【図１１】
2020047322.tif 000013
【図１２】
2020047322.tif 000014
【図１３】
2020047322.tif 000015
【図１４】
2020047322.tif 000016
【図１５】
2020047322.tif 000017
【図１６】
2020047322.tif 000018
【図１７】
2020047322.tif 000019
【図１８】
2020047322.tif 000020
【図１９】
2020047322.tif 000021
【図２０】
2020047322.tif 000022
【図２１】
2020047322.tif 000023
【図２２】
2020047322.tif 000024
【図２３】
2020047322.tif 000025
【図２４】
2020047322.tif 000026
【図２５】
2020047322.tif 000027
【図２６】
2020047322.tif 000028
【図２７】
2020047322.tif 000029
【図２８】
2020047322.tif 000030
【図２９】
2020047322.tif 000031
【図３０】
2020047322.tif 000032
【図３１】
2020047322.tif 000033
【図３２】
2020047322.tif 000034
【図３３】
2020047322.tif 000035
【図３４】
2020047322.tif 000036