(57)【要約】【課題】一つの実施形態は、各メモリセルから適切にデータをリードすることを目的とする。【解決手段】一つの実施形態によれば、メモリシステムにおいて、コントローラは、第１のリード処理と第２のリード処理と第３のリード処理とを行う。第１のリード処理は、第１のリード電圧でデータをリードする処理である。第２のリード処理は、第２のリード電圧でデータをリードする処理である。第２のリード電圧は、第１のシフト量で第１のリード電圧をシフトさせた電圧である。第１のシフト量は、ビットカウント値に応じて決められたシフト量である。ビットカウント値は、第１のリード処理でリードされたデータにおける所定のビット値の数がカウントされた値である。第３のリード処理は、リード電圧を第２のシフト量でシフトさせて設定することと複数のメモリセルから設定されたリード電圧でデータをリードすることとを交互に複数回行う処理である。【選択図】図１
2019053806.tif 000002
【特許請求の範囲】
【請求項１】
複数のメモリセルを有する不揮発性メモリと、
第１のリードリトライ要求に応じて前記複数のメモリセルから第１のリード電圧でデータをリードする第１のリード処理と、前記第１のリード処理でリードされたデータにおける所定のビット値の数がカウントされたビットカウント値に応じて決められた第１のシフト量で前記第１のリード電圧をシフトさせた第２のリード電圧でデータをリードする第２のリード処理と、前記第１のリード電圧よりも前記第２のリード電圧に近い現在のリード電圧を第２のシフト量でシフトさせて設定することと前記複数のメモリセルから前記設定されたリード電圧でデータをリードすることとを交互に複数回行う第３のリード処理とを行うコントローラと、
を備えたメモリシステム。
【請求項２】
前記コントローラは、前記ビットカウント値と前記第１のシフト量とが複数の前記ビットカウント値について対応付けられた第１情報を参照して、前記カウントしたビットカウント値に対応した前記第１のシフト量を特定する
請求項１に記載のメモリシステム。
【請求項３】
前記コントローラは、前記第３のリード処理における前記複数回のリード動作の間のビットカウント値の差分に応じてメモリセルの分布の極小値に対応するリード電圧を求める第１の計算処理と、前記複数回のリード動作の間のビットカウント値の差分のうち初回又は最終回の差分が最小である場合に前記複数回のリード動作で用いるリード電圧の範囲をずらす変更処理と、前記ずらしたリード電圧の範囲に基づきリード電圧を前記第２のシフト量でシフトさせて設定することと前記複数のメモリセルから前記設定されたリード電圧でデータをリードすることとを交互に複数回行う第４のリード処理とを行う
請求項１に記載のメモリシステム。
【請求項４】
前記コントローラは、前記複数回のリード動作の間のビットカウント値の差分のうち初回又は最終回の差分が最小でない場合にメモリセルの分布の極小値を取るリード電圧を推定する第２の計算処理を行う
請求項３に記載のメモリシステム。
【請求項５】
前記コントローラは、メモリセルの分布の境界を２次関数で近似して、メモリセルの分布の極小値を取るリード電圧を推定する
請求項４に記載のメモリシステム。
【請求項６】
前記コントローラは、複数種類の閾値分布のパターンについてリード電圧を含む第２情報を参照し、前記第２情報に含まれたリード電圧のうち前記推定されたリード電圧に最も近いリード電圧を選択してリード動作を行う第５のリード処理を行う
請求項５に記載のメモリシステム。
【請求項７】
前記コントローラは、前記第５のリード処理でリード動作に成功した場合に前記選択されたリード電圧を前記不揮発性メモリの管理情報格納領域に記憶させる記憶処理と、第２のリードリトライ要求に応じて前記管理情報格納領域に格納されたリード電圧を前記第１のリード電圧として前記第１のリード処理を行う
請求項６に記載のメモリシステム。
【請求項８】
前記コントローラは、前記第３のリード処理における前記複数回のリード動作を高電圧側から行う
請求項１に記載のメモリシステム。
【請求項９】
前記コントローラは、前記第４のリード処理における前記複数回のリード動作を高電圧側から行う
請求項３に記載のメモリシステム。
【請求項１０】
前記複数のメモリセルのそれぞれは、３ビットのデータを記憶可能である
請求項３に記載のメモリシステム。
【請求項１１】
複数のメモリセルを有する不揮発性メモリを有するメモリシステムの制御方法であって、
第１のリードリトライ要求に応じて前記複数のメモリセルから第１のリード電圧でデータをリードする第１のリード処理を行うことと、
前記第１のリード処理でリードされたデータにおける所定のビット値の数をカウントしたビットカウント値に応じて決められた第１のシフト量で前記第１のリード電圧をシフトさせた第２のリード電圧でデータをリードする第２のリード処理を行うことと、
前記第１のリード電圧よりも前記第２のリード電圧に近い現在のリード電圧を第２のシフト量でシフトさせて設定することと前記不揮発性メモリから前記設定されたリード電圧でデータをリードすることとを交互に複数回行う第３のリード処理を行うことと、
を備えたメモリシステムの制御方法。
【請求項１２】
前記第１の計算処理を行うことは、
前記ビットカウント値と前記第１のシフト量とが複数の前記ビットカウント値について対応付けられた第１情報を参照して、前記カウントしたビットカウント値に対応した前記第１のシフト量を特定することを含む
請求項１１に記載のメモリシステムの制御方法。
【請求項１３】
前記制御方法は、
前記第３のリード処理における前記複数回のリード動作の間のビットカウント値の差分に応じてメモリセルの分布の極小値に対応するリード電圧を求める第１の計算処理を行うことと、
前記複数回のリード動作の間のビットカウント値の差分のうち初回又は最終回の差分が最小である場合に前記複数回のリード動作で用いるリード電圧の範囲をずらす変更処理を行うことと、
前記ずらしたリード電圧の範囲に基づきリード電圧を前記第２のシフト量でシフトさせて設定することと前記複数のメモリセルから前記設定されたリード電圧でデータをリードすることとを交互に複数回行う第４のリード処理を行うことと、
をさらに備えた
請求項１１に記載のメモリシステムの制御方法。
【請求項１４】
前記複数回のリード動作の間のビットカウント値の差分のうち初回又は最終回の差分が最小でない場合にメモリセルの分布の極小値を取るリード電圧を推定する第２の計算処理を行うことをさらに備えた
請求項１３に記載のメモリシステムの制御方法。
【請求項１５】
前記第３の計算処理を行うことは、
メモリセルの分布の境界を２次関数で近似して、メモリセルの分布の極小値を取るリード電圧を推定することを含む
請求項１４に記載のメモリシステムの制御方法。
【請求項１６】
複数種類の閾値分布のパターンについてリード電圧を含む第２情報を参照し、前記第２情報に含まれたリード電圧のうち前記推定されたリード電圧に最も近いリード電圧を選択してリード動作を行う第５のリード処理を行うことをさらに備えた
請求項１５に記載のメモリシステムの制御方法。
【請求項１７】
前記第５のリード処理でリード動作に成功した場合に前記選択されたリード電圧を前記不揮発性メモリの管理情報格納領域に記憶させる記憶処理を行うことと、
第２のリードリトライ要求に応じて前記管理情報格納領域に格納されたリード電圧を前記第１のリード電圧として前記第１のリード処理を再び行うことと、
をさらに備えた
請求項１６に記載のメモリシステムの制御方法。
【請求項１８】
前記第３のリード処理を行うことは、
前記複数回のリード動作を高電圧側から行うことを含む
請求項１１に記載のメモリシステムの制御方法。
【請求項１９】
前記第４のリード処理を行うことは、
前記複数回のリード動作を高電圧側から行うことを含む
請求項１３に記載のメモリシステムの制御方法。
【請求項２０】
前記複数のメモリセルのそれぞれは、３ビットのデータを記憶可能である
請求項１３に記載のメモリシステムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本実施形態は、メモリシステム、及びメモリシステムの制御方法に関する。
【背景技術】
【０００２】
複数のメモリセルを有する不揮発性メモリを有するメモリシステムにおいて、各メモリセルからのデータのリード動作は、基板−制御ゲート間にリード電圧を印加することにより行われる。このとき、各メモリセルから適切にデータをリードすることが望まれる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−１２２８０４号公報
【特許文献２】米国特許出願公開第２０１３／０１４８４３６号明細書
【特許文献３】米国特許第９２３６０９９号明細書
【特許文献４】米国特許第９４３７３１５号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００４】
一つの実施形態は、各メモリセルから適切にデータをリードできるメモリシステム、及びメモリシステムの制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
一つの実施形態によれば、不揮発性メモリとコントローラとを有するメモリシステムが提供される。不揮発性メモリは、複数のメモリセルを有する。コントローラは、第１のリード処理と第２のリード処理と第３のリード処理とを行う。第１のリード処理は、第１のリードリトライ要求に応じて複数のメモリセルから第１のリード電圧でデータをリードする処理である。第２のリード処理は、第２のリード電圧でデータをリードする処理である。第２のリード電圧は、第１のシフト量で第１のリード電圧をシフトさせた電圧である。第１のシフト量は、ビットカウント値に応じて決められたシフト量である。ビットカウント値は、第１のリード処理でリードされたデータにおける所定のビット値の数がカウントされた値である。第３のリード処理は、第１のリード電圧よりも第２のリード電圧に近い現在のリード電圧を第２のシフト量でシフトさせて設定することと複数のメモリセルから設定されたリード電圧でデータをリードすることとを交互に複数回行う処理である。
【図面の簡単な説明】
【０００６】
【図１】図１は、実施形態に係るメモリシステムの構成を示す図である。
【図２】図２は、実施形態におけるメモリチップの構成を示す図である。
【図３】図３は、実施形態におけるブロックの構成を示す図である。
【図４】図４は、実施形態におけるメモリセルの閾値分布を示す図である。
【図５】図５は、実施形態におけるリード電圧を決定するためのテーブルを示す図である。
【図６】図６は、実施形態におけるメモリセルの閾値分布の全体的なずれ（グローバルシフト）を示す図である。
【図７】図７は、実施形態におけるグローバルシフト量を決定するためのテーブルを示す図である。
【図８】図８は、実施形態におけるＶｔｈトラッキング（ローカルシフト動作）を示す図である。
【図９】図９は、実施形態におけるローカルシフト動作を示す図である。
【図１０】図１０は、実施形態に係るメモリシステムの動作を示すフローチャートである。
【発明を実施するための形態】
【０００７】
以下に添付図面を参照して、実施形態にかかるメモリシステムを詳細に説明する。なお、この実施形態により本発明が限定されるものではない。
【０００８】
（実施形態）
実施形態に係るメモリシステムについて説明する。複数のメモリセルを有する不揮発性メモリを有するメモリシステムにおいて、各メモリセルからのデータのリード動作は、基板−制御ゲート間にリード電圧を印加することにより行われる。このとき、各メモリセルから適切にデータをリードすることが望まれる。リード電圧を、メモリセルの閾値分布におけるメモリセル数（ビット数）の山と山との間の谷の部分の電圧とすることで、リードされたビット値の誤りであるビットエラーの発生数を低減できる。メモリセルの閾値分布は、メモリセルアレイに含まれる複数のメモリセルについて、メモリセルがオンする閾値電圧毎にメモリセル数を示した分布である。
【０００９】
一方、メモリシステムの記憶容量を増加するには、各メモリセルに２ビットの情報を格納するマルチレベルセル（ＭＬＣ）から各メモリセルに３ビットの情報を格納するトリプルレベルセル（ＴＬＣ）に移行することが望まれる。トリプルレベルセル（ＴＬＣ）においては、メモリセルの閾値分布における山と山との間隔が近くなりやすいため、リード電圧の要求精度においてマルチレベルセル（ＭＬＣ）よりも高い精度が求められる。
【００１０】
リード電圧の精度を高めるために、メモリシステムでは、メモリセルの閾値分布における谷の位置を検索するＶｔｈトラッキングを行うことができる。Ｖｔｈトラッキングでは、リード電圧を所定のステップ幅でシフトしながらシフトリード動作が行われ、メモリセルの閾値分布における谷の位置が検索される。これにより、適切なリード電圧を特定できれば、その適切なリード電圧でメモリセルからデータをリードでき、リードされたデータのビットエラーの発生数を低減できる。
【００１１】
しかし、メモリセルの閾値分布は、その電圧位置（横軸をしきい値電圧とし縦軸をメモリセル数とした仮想平面上における横方向の基準（例えば、０Ｖ）に対する絶対位置）が経時的に変化することがある。例えば、各メモリセルがプログラミング／イレースのサイクル（Ｐ／Ｅサイクル）を繰り返すことにより物理的に疲弊すると、その影響でメモリセルの閾値分布の電圧位置がずれることがある。あるいは、例えば、各メモリセルがプログラミングされた時の環境温度とリードされるときの環境温度とが異なる場合に、環境温度の違いの影響でメモリセルの閾値分布の電圧位置がずれることがある。メモリセルの閾値分布の電圧位置のずれ方が大きい場合（例えば、山半分又は１つ分程度に大きくずれた場合）、Ｖｔｈトラッキングを行っても、谷の位置を追従できなくなったり、本来リードしようとしている谷と異なる谷（例えば、誤った隣の谷）の位置をトラッキングしてしまったりして、誤検知に至る可能性がある。
【００１２】
そこで、本実施形態では、メモリシステムにおいて、メモリセルの閾値分布が大きくずれているかどうかを検知し、検知結果に応じてＶｔｈトラッキングを行うことで、Ｖｔｈトラッキングの誤検知の低減を図る。
【００１３】
具体的には、メモリシステム１００は、図１に示すように構成される。図１は、メモリシステム１００の構成を示す図である。
【００１４】
メモリシステム１００は、ホスト装置２００と接続される。ホスト装置２００は、例えば、サーバ、パーソナルコンピュータ、またはモバイル型の情報処理装置などが該当する。メモリシステム１００は、ホスト装置２００の外部記憶装置として機能する。ホスト装置２００は、メモリシステム１００に対してアクセス要求（リード要求およびライト要求）を発行することができる。メモリシステム１００とホスト装置２００とを接続する通信インタフェースが準拠する規格は、特定の規格に限定されない。例えば、通信インタフェースは、ＡＴＡ（Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ）規格、ＳＡＳ（Ｓｅｒｉａｌ  Ａｔｔａｃｈｅｄ  ＳＣＳＩ）規格、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔｓ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）  Ｅｘｐｒｅｓｓ（登録商標）規格などに準拠する。
【００１５】
メモリシステム１００は、ＮＡＮＤ型のフラッシュメモリ（ＮＡＮＤメモリ）１と、ホスト装置２００とＮＡＮＤメモリ１との間のデータ転送を実行するメモリコントローラ２とを有する。なお、メモリシステム１００は、ＮＡＮＤメモリ１の代わりに他の種類のメモリを具備してもよい。例えば、メモリシステム１００は、ＮＡＮＤメモリ１の代わりにＮＯＲ型のフラッシュメモリを有してもよい。
【００１６】
ＮＡＮＤメモリ１は、複数（ここでは４つ）の、半導体メモリとしてのメモリチップ１１を有する。また、メモリコントローラ２は、２個のチャネル（ｃｈ．０、ｃｈ．１）を有する。メモリコントローラ２は、１個または３個以上のチャネルを有していてもよい。各チャネルには、それぞれ、２つのメモリチップ１１が接続されている。各チャネルは、制御信号線、Ｉ／Ｏ信号線、ＣＥ（チップイネーブル）信号線、ＲＹ（レディー）／ＢＹ（ビジー）信号線を含む。Ｉ／Ｏ信号線は、データ、アドレス、および各種指示を伝送するための信号線である。メモリコントローラ２は、Ｉ／Ｏ信号線を介して、リード指示、プログラム指示、およびイレース指示をメモリチップ１１に送信することができる。制御信号線は、ＷＥ（ライトイネーブル）信号線、ＲＥ（リードイネーブル）信号線、ＣＬＥ（コマンドラッチイネーブル）信号線、ＡＬＥ（アドレスラッチイネーブル）信号線、ＷＰ（ライトプロテクト）信号線等を含む。ＲＹ／ＢＹ信号線は、ＮＡＮＤメモリ１が動作中か否かをそのレベルで示し、例えば、Ｈレベルで非動作中に対応したレディー状態（ＲＹ）を示し、Ｌレベルで動作中に対応したビジー状態（ＢＹ）を示す。
【００１７】
各メモリチップ１１は、例えば、図２に示すように構成される。図２は、メモリチップ１１の構成を示す図である。
【００１８】
メモリチップ１１は、Ｉ／Ｏ信号処理回路１１０、制御信号処理回路１１１、チップ制御回路１１２、コマンドレジスタ１１３、アドレスレジスタ１１４、カラムデコーダ１１５、データレジスタ１１６、センスアンプ１１７、メモリセルアレイ１１８、ロウデコーダ１１９、およびＲＹ／ＢＹ生成回路１２０を有する。
【００１９】
チップ制御回路１１２は、制御信号処理回路１１１を介して受信する各種制御信号に基づいて状態遷移する回路である。チップ制御回路１１２は、メモリチップ１１全体の動作を制御する。ＲＹ／ＢＹ生成回路１２０は、チップ制御回路１１２による制御の下でＲＹ／ＢＹ信号線の状態をレディー状態（ＲＹ）とビジー状態（ＢＹ）との間で遷移させる。
【００２０】
Ｉ／Ｏ信号処理回路１１０は、メモリコントローラ２との間でＩ／Ｏ信号を送受信するためのバッファ回路である。Ｉ／Ｏ信号処理回路１１０がラッチしたコマンド、アクセス先を指定するアドレス、データは、それぞれ、アドレスレジスタ１１４、コマンドレジスタ１１３、データレジスタ１１６に振り分けられて格納される。
【００２１】
アドレスレジスタ１１４に格納されたアドレスは、チップ番号、ロウアドレス、およびカラムアドレスを含んでいる。チップ番号は、各メモリチップ１１を区別するための識別情報である。チップ番号はチップ制御回路１１２、ロウアドレスはロウデコーダ１１９、カラムアドレスはカラムデコーダ１１５にそれぞれ読み出される。
【００２２】
制御信号処理回路１１１は、制御信号の入力を受け付ける。制御信号処理回路１１１は、受け付けた制御信号に基づいて、Ｉ／Ｏ信号処理回路１１０が受け付けたＩ／Ｏ信号の格納先のレジスタの振り分けを実行する。また、制御信号処理回路１１１は、受け付けた制御信号をチップ制御回路１１２に転送する。
【００２３】
メモリセルアレイ１１８は、複数のブロックを有する。ブロックは、イレースの物理的な実行単位に対応する記憶領域である。すなわち、１つのブロックに格納されている全てのデータは、一括してイレースされる。
【００２４】
メモリセルアレイ１１８における各ブロックは、例えば、図３に示すように構成される。図３は、ブロックの構成を示す図である。
【００２５】
各ブロックは、Ｘ方向に沿って順に配列された（ｐ＋１）個のＮＡＮＤストリングを備えている（ｐ≧０）。（ｐ＋１）個のＮＡＮＤストリングにそれぞれ含まれる選択トランジスタＳＴ１は、ドレインがビット線ＢＬ０〜ＢＬｐに接続され、ゲートが選択ゲート線ＳＧＤに共通接続されている。また、選択トランジスタＳＴ２は、ソースがソース線ＳＬに共通接続され、ゲートが選択ゲート線ＳＧＳに共通接続されている。
【００２６】
各メモリセルトランジスタＭＴは、半導体基板上に形成された積層ゲート構造を備えたＭＯＳＦＥＴ（Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ  Ｆｉｅｌｄ  Ｅｆｆｅｃｔ  Ｔｒａｎｓｉｓｔｏｒ）から構成される。積層ゲート構造は、半導体基板上にトンネル酸化膜を介在して形成されたフローティングゲート、及びフローティングゲート上にゲート間絶縁膜を介在して形成された制御ゲート電極を含んでいる。フローティングゲートに蓄えられる電子の数に応じてしきい値電圧が変化する。メモリセルトランジスタＭＴは、しきい値電圧の違いに応じてデータを記憶する。すなわち、メモリセルトランジスタＭＴは、フローティングゲートに、データに応じた量の電荷を保持する。
【００２７】
各ＮＡＮＤストリングにおいて、（ｑ＋１）個のメモリセルトランジスタＭＴは、選択トランジスタＳＴ１のソースと選択トランジスタＳＴ２のドレインとの間に、それぞれの電流経路が直列接続されるように配置されている（ｑ≧０）。そして、最もドレイン側に位置するメモリセルトランジスタＭＴから順に、制御ゲート電極がワード線ＷＬ０〜ＷＬｑにそれぞれ接続されている。従って、ワード線ＷＬ０に接続されたメモリセルトランジスタＭＴのドレインは選択トランジスタＳＴ１のソースに接続され、ワード線ＷＬｑに接続されたメモリセルトランジスタＭＴのソースは選択トランジスタＳＴ２のドレインに接続されている。
【００２８】
ワード線ＷＬ０〜ＷＬｑは、ブロック内のＮＡＮＤストリング間で、メモリセルトランジスタＭＴの制御ゲート電極を共通に接続している。つまり、ブロック内において同一行にあるメモリセルトランジスタＭＴの制御ゲート電極は、同一のワード線ＷＬに接続される。すなわち、ブロックは複数のワード線ＷＬに対応した複数のメモリセルグループＭＧを含み、各メモリセルグループＭＧは同一のワード線ＷＬに接続される（ｐ＋１）個のメモリセルトランジスタＭＴを含む。各メモリセルトランジスタＭＴに１ビットの値を保持可能に構成される場合（シングルレベルセル（ＳＬＣ）モードで動作する場合）には、同一のワード線ＷＬに接続される（ｐ＋１）個のメモリセルトランジスタＭＴ（すなわち、メモリグループＭＧ）は１ページとして取り扱われ、このページごとにデータのプログラム及びデータのリードが行われる。
【００２９】
各メモリセルトランジスタＭＴに複数ビットの値を保持可能に構成される場合がある。例えば、各メモリセルトランジスタＭＴがｎ（ｎ≧２）ビットの値を格納可能な場合、ワード線ＷＬ当たりの記憶容量はｎページ分のサイズに等しくなる。すなわち、各メモリグループＭＧは、ｎページとして取り扱われる。ここでは一例として、各メモリセルトランジスタＭＴが３ビットの値の記憶を行うトリプルレベルセル（ＴＬＣ）モードで動作する場合について説明する。トリプルレベルセル（ＴＬＣ）モードでは、各ワード線ＷＬに３ページ分のデータが保持される。１つのワード線ＷＬによって構成される３つのページのうち、先に書き込みがなされるページをロアーページ、ロアーページの後から書き込みがなされるページをミドルページ、ミドルページの後から書き込みがなされるページをアッパーページと表記する。また、メモリセルトランジスタＭＴを、単にメモリセルと表記する。なお、１つのワード線ＷＬによって構成される複数または全てのページに対して一括にプログラムが実行されるモードがあってもよい。
【００３０】
各メモリセルがトリプルレベルセル（ＴＬＣ）モードで動作する場合、メモリセルの閾値分布は、例えば、図４に示すようになる。図４は、メモリセルの閾値分布を示す図である。図４において、横軸はしきい値電圧を表し、縦軸はメモリセル数（具体的には、所定のビット値（例えば、１の値）を示すメモリセル数）を表す。
【００３１】
トリプルレベルセル（ＴＬＣ）モードによれば、各メモリセルは、アッパーページに属するデータ“ｘ”とミドルページに属するデータ“ｙ”とロアーページに属するデータ“ｚ”とで定義される８値データ“ｘｙｚ”を保持可能である。データ“ｘ”、データ“ｙ”、データ“ｚ”の値は、符号“０”または符号“１”である。各メモリセルのしきい値電圧が、分布Ｅｒ、分布Ａ、分布Ｂ、分布Ｃ、分布Ｄ、分布Ｅ、分布Ｆ、分布Ｇの８つのグループの何れかに属するように制御される。各分布と８値データ“ｘｙｚ”のデータ値との対応は、予め設定される。例えば、分布Ｅｒにはデータ値“１１１”が割り当てられる。分布Ａにはデータ値“１１０”が割り当てられる。分布Ｂにはデータ値“１００”が割り当てられる。分布Ｃにはデータ値“０００”が割り当てられる。分布Ｄにはデータ値“０１０”が割り当てられる。分布Ｅにはデータ値“０１１”が割り当てられる。分布Ｆにはデータ値“００１”が割り当てられる。分布Ｇにはデータ値“１０１”が割り当てられる。なお、各分布とデータ値との対応は、上記に限定されない。
【００３２】
図２に戻り、ロウデコーダ１１９、カラムデコーダ１１５、データレジスタ１１６、およびセンスアンプ１１７は、メモリセルアレイ１１８に対する周辺回路を構成する。周辺回路は、チップ制御回路１１２による制御に基づいて、メモリセルアレイ１１８に対するアクセス（リード、プログラミング、およびイレース）を実行する。
【００３３】
例えばプログラミング時には、カラムデコーダ１１５は、カラムアドレスに対応したビット線を選択して活性化する。センスアンプ１１７は、カラムデコーダ１１５により選択されたビット線の電位を０ボルトとする。ロウデコーダ１１９は、ロウアドレスに対応したワード線ＷＬに、プログラミングパルスを印加する。すると、選択されたビット線および選択されたワード線ＷＬとの交点に位置するメモリセルのフローティングゲートに電子が注入され、その結果、フローティングゲートのしきい値電圧が上昇する。センスアンプ１１７は、プログラミングパルスが印加される毎に、しきい値電圧がデータレジスタ１１６に格納されているデータに応じた電圧に到達したか否かを確認する。センスアンプ１１７は、しきい値電圧がデータに応じた電圧に到達するまで、ロウデコーダ１１９にプログラムパルスの印加を継続させる。
【００３４】
リード時においては、センスアンプ１１７は、ビット線ＢＬに電源電位Ｖｃｃをプリチャージし、ロウデコーダ１１９は、選択されたワード線ＷＬにデータ値（“１１１”、“１１０”、“１００”、“０００”、“０１０”、“０１１”、“００１”、“１０１”）毎の分布を特定するための複数種類の判定電位（リード電圧）を順次印加する。なお、ロウデコーダ１１９は、非選択のワード線ＷＬには転送電位を印加し、非選択のワード線ＷＬに属するメモリセルを導通状態にしておく。センスアンプ１１７は、プリチャージにより蓄えられた電荷がどのリード電圧が印加されたときにソース線ＳＬに流出したかを検知することによって対象のメモリセルに記憶されているデータ値を判定する。
【００３５】
例えば、図４に示すように、分布Ｅｒと分布Ａとの間にリード電圧Ｖ７が設定される。分布Ａと分布Ｂとの間にリード電圧Ｖ６が設定される。分布Ｂと分布Ｃとの間にリード電圧Ｖ５が設定される。分布Ｃと分布Ｄとの間にリード電圧Ｖ４が設定される。分布Ｄと分布Ｅとの間にリード電圧Ｖ３が設定される。分布Ｅと分布Ｆとの間にリード電圧Ｖ２が設定される。分布Ｆと分布Ｇとの間にリード電圧Ｖ１が設定される。これらは、例えば図５に示すように、デフォルトのセット番号「０」のリード電圧のセットとすることができる。
【００３６】
その他、経時的に変化し得る分布のパターンごとに、リード電圧のセットを用意しておくことができる。リード電圧の各セットは、図５に示すようなリード電圧を決定するためのテーブル（電圧情報２２２）としてＮＡＮＤメモリ１の管理情報格納領域に予め記憶させておくことができる。図５は、電圧情報２２２の構成の一例を示す図である。なお、図５に示されたテーブルは、電圧情報２２２の実装形態の一例であり、他の実装形態（例えば、関数式など）でも構成され得る。メモリコントローラ２は、例えばメモリシステム１００の起動時に、電圧情報２２２をＮＡＮＤメモリ１の管理情報格納領域から読み出しＲＡＭ２２に格納しておくことができる。
【００３７】
センスアンプ１１７は、リードしたデータをデータレジスタ１１６に格納する。データレジスタ１１６に格納されたデータは、データ線を通してＩ／Ｏ信号処理回路１１０に送られ、Ｉ／Ｏ信号処理回路１１０からメモリコントローラ２へ転送される。
【００３８】
なお、デフォルトのセット番号「０」に対する各リード電圧Ｖ１〜Ｖ７の基準値（固定値）としては、複数のメモリチップ１１で共通の値が設定されてもよいし、メモリチップ１１毎に異なる基準値が設定されてもよい。また、各リード電圧Ｖ１〜Ｖ７の基準値としては、ブロック毎またはブロックとは異なる単位毎に共通の値が設定されてもよい。基準値の設定方法は特定の方法に限定されない。メモリコントローラ２は、対象のメモリチップ１１に所定のコマンドを送信することによって各リード電圧の基準値を設定してもよい。
【００３９】
図１に戻り、メモリコントローラ２は、ホストインタフェースコントローラ（ホストＩ／Ｆコントローラ）２１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２２、ＮＡＮＤコントローラ（ＮＡＮＤＣ）２３、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２４、およびＥＣＣ回路２５を備えている。ホストＩ／Ｆコントローラ２１、ＲＡＭ２２、ＮＡＮＤコントローラ２３、ＣＰＵ２４、およびＥＣＣ回路２５は、バスで互いに接続されている。なお、メモリコントローラ２は、ホストＩ／Ｆコントローラ２１、ＲＡＭ２２、ＮＡＮＤコントローラ２３、ＣＰＵ２４、およびＥＣＣ回路２５が集積された１つのＩＣ（回路）であってもよい。また、ホストＩ／Ｆコントローラ２１、ＲＡＭ２２、ＮＡＮＤコントローラ２３、ＣＰＵ２４、およびＥＣＣ回路２５の一部は、メモリコントローラ２の外部に配設されてもよい。
【００４０】
ＲＡＭ２２は、ホスト装置２００とＮＡＮＤメモリ１との間のデータ転送のためのバッファとして機能する。また、ＲＡＭ２２は、ＣＰＵ２４にワークエリアを提供する。また、ＲＡＭ２２には、例えば、グローバルシフト情報２２１及び電圧情報２２２を含む各種管理情報が格納される。
【００４１】
なお、ＲＡＭ２２の種類は特定の種類に限定されない。ＲＡＭ２２の種類として、例えば、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）またはＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）が採用可能である。
【００４２】
ホストＩ／Ｆコントローラ２１は、ＣＰＵ２４による制御の下で、ホスト装置２００とメモリシステム１００との間の通信インタフェースの制御およびホスト装置２００とＲＡＭ２２との間のデータ転送の制御を実行する。
【００４３】
ＮＡＮＤコントローラ２３は、各チャネル（ｃｈ．０、ｃｈ．１）を制御する。ＮＡＮＤコントローラ２３は、ＣＰＵ２４による制御の下で、ＮＡＮＤメモリ１とＲＡＭ２２との間のデータ転送の制御を実行する。
【００４４】
ＥＣＣ回路２５は、ＮＡＮＤメモリ１へのプログラム対象のデータに対してエラー訂正のための符号化を行ったり、ＮＡＮＤメモリ１からリードされたデータに対してエラー訂正を実行したりする。
【００４５】
メモリコントローラ２は、リード電圧の設定値を変更してデータをリードすることができる。リード電圧の設定値を変更することによって、データリード時のエラービットの数を少なくすることができる場合がある。リード電圧の設定値を変更してリードを行うことを、以降、シフトリードと表記する。
【００４６】
一つの例では、メモリコントローラ２は、リードしたデータのうち、プログラム時から変化したことによってエラービットとなった値をＥＣＣ回路２５によって訂正することによって、プログラム時のデータを復元する。メモリコントローラ２は、ＥＣＣ回路２５によるエラー訂正に失敗することがある。エラー訂正に失敗するとは、リードされたデータからプログラム時のデータを復元できないことをいう。具体的には、エラー訂正に失敗するとは、リードされたデータに含まれるエラービットが訂正できないことをいう。エラー訂正に成功するとは、リードされたデータに含まれる全てのエラービットが訂正されることをいう。
【００４７】
メモリコントローラ２は、ＥＣＣ回路２５によるエラー訂正が失敗した場合、自発的処理として、リードリトライ要求を発行する。あるいは、メモリコントローラ２は、エラー訂正に失敗した旨をホスト装置２００へ通知する。これに応じて、ホスト装置２００は、リードリトライ要求をメモリシステム１００へ送信する。メモリコントローラ２は、ホスト装置２００からリードリトライ要求を受信する。メモリコントローラ２は、自発的処理によるリードリトライ要求又はホスト装置２００からのリードリトライ要求に応じて、図６（ａ）、（ｂ）に示すようにＶｔｈトラッキングを行うことができる。図６（ａ）は、メモリセルの分布の一例を示している。
【００４８】
Ｖｔｈトラッキングによれば、対応するデータ値が異なる分布間でお互いの分布の裾野が重なる場合、分布の裾野が重なる範囲のリード電圧においては、重なっている複数の分布に属するメモリセルの数の合計が得られる。
【００４９】
Ｖｔｈトラッキングにおいては、リード電圧の設定値を変化させながら２値モード（ＳＬＣモード）でシフトリードが実行され、各シフトリードによって得られたデータに含まれる“１”または“０”の数がカウントされる。２値モードとは、しきい値電圧がリード電圧よりも小さいメモリセルは、第１のデータ値を記憶していると判定し、しきい値電圧がリード電圧よりも大きいメモリセルは、第１のデータ値と異なる第２のデータ値を記憶していると判定するモードである。ここでは一例として、“１”を第１のデータ値とし、“０”を第２のデータ値とし、“１”の数がカウントされることとする。カウントされた“１”の数をリード電圧に対してプロットすると、図６（ｂ）に示される曲線が得られる。本実施形態では、このカウントされた“１”の数をビットカウント値と呼ぶことにする。
【００５０】
続いて、ビットカウント値の変化率が演算される。ビットカウント値の変化率とは、リード電圧を所定単位量だけ変化させた場合の“１”の数の変化量である。この変化量を把握するために、メモリコントローラ２は、リード電圧を所定のステップ幅で変化させながら例えば４回リード動作を行って各４点のビットカウント値を取得し、４点のビットカウント値の差分を取る。このようにして得られた変化率をリード電圧に対してプロットすると、しきい値電圧に対するメモリセルの分布（即ち図６（ａ）に実線で示される曲線の一部（例えば、分布Ｂと分布Ｃとの谷の部分）の近似が得られる。
【００５１】
このとき、メモリセルの閾値分布は、図６（ａ）に示す分布から図６（ｃ）に示す分布へ経時的に変化することがある。図６の例では、各谷に対するリード電圧Ｖ１〜Ｖ７がそれぞれリード電圧Ｖ３〜Ｖ９へ全体的にずれている。例えば、図６（ａ）に示す分布を想定して、分布Ｂと分布Ｃとの間の谷についてリード電圧をＶ５付近でシフトさせて探索を行うと、実際には図６（ｃ）に示す分布となっている場合に、分布Ｄと分布Ｅとの間の谷を探索していることになる。
【００５２】
本実施形態では、メモリセルの閾値分布の全体的なずれを、メモリセルの閾値分布がグローバルにシフトしているという意味でグローバルシフトと呼ぶことにする。このグローバルシフトの影響を補正するためには、どの程度グローバルシフトしているかを表すグローバルシフト量を知る必要がある。
【００５３】
図６（ａ）及び図６（ｂ）のセットと図６（ｃ）及び図６（ｄ）のセットとを比較すると分かるように、メモリセルの閾値分布とビットカウント値の変化のグラフとは、１対１に対応している。そのため、図６（ｄ）に示すように、リード電圧に対するビットカウント値からグローバルシフト量を特定することができる。図６（ｄ）では、グローバルシフト量ΔＶｓ１（＜０）と特定され、リード電圧がＶ７０＝Ｖ５＋ΔＶｓ１にシフトされた場合を例示している。
【００５４】
このようなグローバルシフト量は、探索対象の谷ごとに予め実験的に取得され、図７に示すようなテーブルとして構成され、ＮＡＮＤメモリ１の管理情報格納領域に格納される。図７は、グローバルシフト量を決定するためのテーブル（グローバルシフト情報２２１）を示す図である。なお、図７に示すテーブル中の値は、例示であり、グローバルシフト量はこの値に限定されない。また、図７に示されたテーブルはグローバルシフト情報２２１の実装形態の一例であり、グローバルシフト情報２２１は、他の実装形態（例えば、関数式など）でも構成され得る。メモリコントローラ２は、例えばメモリシステム１００の起動時に、グローバルシフト情報２２１をＮＡＮＤメモリ１の管理情報格納領域から読み出しＲＡＭ２２に格納しておくことができる。
【００５５】
図７に示すグローバルシフト情報２２１を参照することで、探索対象の谷ごとにビットカウント値に応じたグローバルシフト量を特定できる。例えば、分布Ｂと分布Ｃとの谷を探索したいときに、現在のリード電圧Ｖ５のビットカウント値が８０００〜８４９９の間にある場合、グローバルシフト量ΔＶｓ１＝−０．５Ｖと特定される。この場合、リード電圧がＶ７０＝Ｖ５＋ΔＶｓ１＝Ｖ５−０．５Ｖにシフトされることになる。
【００５６】
メモリコントローラ２は、グローバルシフト量ΔＶｓ１でリード電圧をＶ７０にシフトさせてＶｔｈトラッキングを行う。メモリコントローラ２は、シフト後のリード電圧Ｖ７０に基づき、リード電圧を新たなシフト量ΔＶｓ２（＜０）でシフトさせて設定することと、複数のメモリセルからその設定されたリード電圧でデータをリードすることと、を交互に複数回行う。本実施形態では、グローバルシフト量ΔＶｓ１と区別するために、Ｖｔｈトラッキングに用いられるシフト量ΔＶｓ２をローカルシフト量と呼ぶことにする。また、Ｖｔｈトラッキングにおけるローカルシフト量ΔＶｓ２でリード電圧をシフトさせる動作をローカルシフト動作と呼ぶことにする。
【００５７】
例えば、メモリコントローラ２は、図８に示すようなＶｔｈトラッキング（ローカルシフト動作）を行う。図８は、ローカルシフト動作を示す図である。図８（ｂ）に示すように、メモリコントローラ２は、グローバルシフト量ΔＶｓ１でシフトさせて得られた電圧Ｖ７０でリード動作を行い、電圧Ｖ７０のビットカウント値Ｃ７０を取得する。メモリコントローラ２は、電圧Ｖ７０をローカルシフト量ΔＶｓ２でシフトさせた電圧Ｖ７１（＝Ｖ７０＋ΔＶｓ２）でリード動作を行い、電圧Ｖ７１のビットカウント値Ｃ７１を取得する。メモリコントローラ２は、電圧Ｖ７１をローカルシフト量ΔＶｓ２でシフトさせた電圧Ｖ７２（＝Ｖ７１＋ΔＶｓ２）でリード動作を行い、電圧Ｖ７２のビットカウント値Ｃ７２を取得する。メモリコントローラ２は、電圧Ｖ７２をローカルシフト量ΔＶｓ２でシフトさせた電圧Ｖ７３（＝Ｖ７２＋ΔＶｓ２）でリード動作を行い、電圧Ｖ７３のビットカウント値Ｃ７３を取得する。
【００５８】
メモリコントローラ２は、ビットカウント値Ｃ７０とビットカウント値Ｃ７１との差分を取り、しきい値電圧Ｖ７１に対するメモリセル数Ｒ７１（＝Ｃ７０−Ｃ７１）を求める。メモリコントローラ２は、ビットカウント値Ｃ７１とビットカウント値Ｃ７２との差分を取り、しきい値電圧Ｖ７２に対するメモリセル数Ｒ７２（＝Ｃ７１−Ｃ７２）を求める。メモリコントローラ２は、ビットカウント値Ｃ７２とビットカウント値Ｃ７３との差分を取り、しきい値電圧Ｖ７３に対するメモリセル数Ｒ７３（＝Ｃ７２−Ｃ７３）を求める。
【００５９】
図８（ａ）に示すように、メモリコントローラ２は、しきい値電圧を横軸としメモリセル数を縦軸とする仮想平面上に、点（Ｖ７１，Ｒ７１）、点（Ｖ７２，Ｒ７２）、点（Ｖ７３，Ｒ７３）をそれぞれプロットする。メモリコントローラ２は、３点のうちの中間点（Ｖ７２，Ｒ７２）のメモリセル数が最小であるか否かを確認する。例えば、メモリコントローラ２は、ΔＲ７ａｂ＝Ｒ７１−Ｒ７２とΔＲｂｃ＝Ｒ７２−Ｒ７３とを比較し、ΔＲｂｃ＜０＜ΔＲ７ａｂであれば、３点のうちの中間点（Ｖ７２，Ｒ７２）のメモリセル数が最小である（Ｒ７２＜Ｒ７１，Ｒ７２＜Ｒ７３）と確認できる。メモリコントローラ２は、３点のうちの中間点（Ｖ７２，Ｒ７２）のメモリセル数が最小であることを確認すると、図８（ａ）に一点鎖線で示すように、点（Ｖ７１，Ｒ７１）、点（Ｖ７２，Ｒ７２）、点（Ｖ７３，Ｒ７３）を近似的に通る２次曲線ＣＶを求める。そして、メモリコントローラ２は、２次曲線ＣＶにおける最小値（極小値）に対応するリード電圧を所望の谷のリード電圧Ｖ７として求める。
【００６０】
このとき、メモリコントローラ２は、２次曲線ＣＶにおける最小値（極小値）自体を所望の谷のリード電圧Ｖ７として求めてもよいし、電圧情報２２２を参照し電圧情報２２２に格納された複数のセットのうち所望の谷のリード電圧が２次曲線ＣＶにおける最小値（極小値）に最も近いセット（この場合、図５に示すセット番号「ｋ」のセット、ｋは１より大きい任意の整数）を選択し、所望の谷のリード電圧Ｖ７を求めてもよい。
【００６１】
なお、メモリコントローラ２は、３点のうちの中間点が最小でない場合、ローカルシフト動作を行うべき電圧範囲を全体的にΔＶｓ３でシフトさせる。３点のうちの低電圧側の点が最小である場合、ΔＶｓ３が負の値になり、ローカルシフト動作を行うべき電圧範囲が全体的に低電圧側にシフトされる。３点のうちの高電圧側の点が最小である場合、ΔＶｓ３が正の値になり、ローカルシフト動作を行うべき電圧範囲が全体的に高電圧側にシフトされる。
【００６２】
例えば、図９（ａ）に黒丸で示すように、点（Ｖ７５，Ｒ７５）、点（Ｖ７６，Ｒ７６）、点（Ｖ７７，Ｒ７７）のうちの高電圧側の点（Ｖ７５，Ｒ７５）のメモリセル数が最小である場合、メモリコントローラ２は、ローカルシフト動作を行うべき電圧範囲を全体的にΔＶｓ３（＞０）でシフトさせる。例えば、Ｖ７４’＝Ｖ７４＋ΔＶｓ３＝Ｖ７０であれば、メモリコントローラ２は、図８と同様に、ローカルシフト動作を行う。すなわち、各リード電圧Ｖ７４’（＝Ｖ７４＋ΔＶｓ３）＝Ｖ７０、Ｖ７５’（＝Ｖ７５＋ΔＶｓ３）＝Ｖ７１、Ｖ７６’（＝Ｖ７６＋ΔＶｓ３）＝Ｖ７２、Ｖ７７’（＝Ｖ７７＋ΔＶｓ３）＝Ｖ７３でリード動作が順次に行われる。これにより、図９に白丸で示すように、中間点が最小となる３つの点（Ｖ７５’，Ｒ７５’）、（Ｖ７６’，Ｒ７６’）、（Ｖ７７’，Ｒ７７’）を得ることができる。
【００６３】
次に、メモリシステム１００の動作（リトライ処理）について図１０を用いて説明する。図１０は、メモリシステム１００の動作を示すフローチャートである。
【００６４】
メモリシステム１００は、探索対象の谷に対するデフォルトのリード電圧で１点目のビットカウント値の測定を行う（Ｓ１）。メモリシステム１００は、テーブル（グローバルシフト情報２２１）を参照し、グローバルシフト量が０であるか否かを判断する（Ｓ２）。メモリシステム１００は、グローバルシフト量が０でない場合（Ｓ２でＮｏ）、テーブルから取得したグローバルシフト量ΔＶｓ１で１点目のリード電圧をシフトさせ（Ｓ３）、シフト後のリード電圧で１点目のビットカウント値の測定を行う（Ｓ１）。メモリシステム１００は、グローバルシフト量が０である場合（Ｓ２でＹｅｓ）、リード電圧が探索対象の谷の近傍になったとして、ローカルシフト量ΔＶｓ２でリード電圧をシフトさせながら２点目〜４点目のビットカウント値の測定を行う（Ｓ４）。メモリシステム１００は、４点のビットカウント値の間の差分（３つの差分）を計算し（Ｓ５）、しきい値電圧を横軸としメモリセル数を縦軸とする仮想平面上に３つの差分に対応した３点をプロットする。メモリシステム１００は、プロットされた３点のメモリセル数を比較し、中間点（しきい値電圧が中間値である点）のメモリセル数が最小値であるか否かを判断する（Ｓ６）。メモリシステム１００は、中間点のメモリセル数が最小値でない場合（Ｓ６でＮｏ）、ローカルシフト動作を行う電圧範囲を全体的にΔＶｓ３でシフトさせ（Ｓ７）、処理をＳ１に戻す。メモリシステム１００は、中間点のメモリセル数が最小値である場合（Ｓ６でＹｅｓ）、プロットされた３点を近似的に通る２次曲線を求め、２次曲線の最小値に対応したリード電圧を所望の谷のリード電圧として求める（Ｓ８）。
【００６５】
以上のように、実施形態では、メモリシステム１００において、リトライ処理として、メモリセルの閾値分布が大きくずれているかどうかを検知し、検知結果に応じてリード電圧をシフトさせ、シフト後の電圧に基づいてＶｔｈトラッキングを行う。例えば、探索対象の谷に対するデフォルトのリード電圧で１点目のビットカウント値の測定を行い、テーブル（グローバルシフト情報２２１）を参照してそのビットカウント値に応じたグローバルシフト量を求め、１点目の測定に用いるリード電圧をそのグローバルシフト量でシフトできる。これにより、メモリセルの閾値分布が大きくずれている場合に隣接の谷を誤検知することなく、短時間で谷の位置を検索することが可能となる。したがって、Ｖｔｈトラッキングの誤検知を低減できる。
【００６６】
また、実施形態では、メモリシステム１００において、Ｖｔｈトラッキングを行った際に中間点が最小値でない場合、リード電圧を一定量シフトさせてリトライ処理を実施する。これにより、Ｖｔｈトラッキングの検知精度を向上できる。
【００６７】
また、実施形態では、メモリシステム１００において、Ｖｔｈトラッキングにおけるビットカウント値の測定を高電圧側から行う。これにより、例えば分布Ｅｒの山が崩れやすいことに対応して、Ｖｔｈトラッキングを適切に行うことができる。
【００６８】
なお、リードできた場合は、そのテーブルの電圧値を記憶しておき、次回のリトライ要求に応じたリード動作時（次回リトライ処理のリード動作時）に記憶した電圧でリードするようにしてもよい。例えば、図８に示す例では、分布Ｂと分布Ｃとの間の谷のリード電圧がＶ７であると求められるので、リード電圧Ｖ７でのリード動作に成功した場合、次回リトライ処理のリード動作時に用いるリード電圧のセット番号を図５に示すセット番号「ｋ」であると記憶しておく。そして、メモリコントローラ２は、次回リトライ処理のリード動作時に電圧情報２２２のセット番号「ｋ」のリード電圧を用いるようにする。これにより、次回リトライ処理のリード動作時に、分布Ｂと分布Ｃとの間の谷をリードする場合に、リード電圧としてＶ７を用いることができる。したがって、グローバルシフトの頻度を低減でき、リトライ処理に要する時間を短縮することができる。
【００６９】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００７０】
１  ＮＡＮＤメモリ、２  メモリコントローラ、１００  メモリシステム。
【図１】
2019053806.tif 000003
【図２】
2019053806.tif 000004
【図３】
2019053806.tif 000005
【図４】
2019053806.tif 000006
【図５】
2019053806.tif 000007
【図６】
2019053806.tif 000008
【図７】
2019053806.tif 000009
【図８】
2019053806.tif 000010
【図９】
2019053806.tif 000011
【図１０】
2019053806.tif 000012