(57)【要約】【課題】データリテンションが長いメモリシステムを提供すること。【解決手段】ホストに接続可能である。メモリシステムは、メモリコントローラと、メモリチップとを備える。メモリチップは、複数のワード線を備える第１記憶領域と処理回路とを備える。メモリコントローラは、第１記憶領域に対する第１のアクセスを処理回路に実行させる。メモリコントローラは、第１のアクセスが完了した後に、メモリチップに第１コマンドを送信する。また、メモリコントローラは、処理回路に第１のアクセスの次の第２のアクセスを実行させる前に、メモリチップに第２コマンドを送信する。処理回路は、第１コマンドに応じて複数のワード線への第１電圧の印加を開始し、第２コマンドに応じて複数のワード線への第１電圧の印加を終了する。【選択図】図１１
2020144668.tif 000002
【特許請求の範囲】
【請求項１】
ホストに接続可能なメモリシステムであって、
メモリコントローラと、
複数のワード線を備える第１記憶領域と処理回路とを備えるメモリチップと、
を備え、
前記メモリコントローラは、前記第１記憶領域に対する第１のアクセスを前記処理回路に実行させ、前記第１のアクセスが完了した後に、前記メモリチップに第１コマンドを送信し、前記処理回路に前記第１のアクセスの次の第２のアクセスを実行させる前に、前記メモリチップに第２コマンドを送信し、
前記処理回路は、前記第１コマンドに応じて前記複数のワード線への第１電圧の印加を開始し、前記第２コマンドに応じて前記複数のワード線への前記第１電圧の印加を終了する、
メモリシステム。
【請求項２】
前記処理回路は、
リードのアクセスを実行可能に構成され、
前記リードのアクセスでは、リード対象の第１のメモリセルが接続された第１のワード線に第２電圧を印加し、リード対象でない第２のメモリセルが接続された第２のワード線に第３電圧を印加し、
前記第１電圧は、前記第３電圧よりも低い、
請求項１に記載のメモリシステム。
【請求項３】
前記処理回路は、
前記第２電圧を生成するように構成された第１レギュレータと、
前記第１電圧と前記第３電圧とを生成するように構成された第２レギュレータと、
を備える請求項２に記載のメモリシステム。
【請求項４】
前記第１記憶領域は、前記メモリコントローラによってそれぞれ異なるアドレス値によって特定される複数の第２記憶領域を備え、
前記第１コマンドは、アドレス値を含み、
前記処理回路は、前記複数の第２記憶領域のうち前記第１コマンドに含まれる前記アドレス値に対応する前記第２記憶領域のワード線への前記第１電圧の印加を開始する、
請求項１に記載のメモリシステム。
【請求項５】
温度センサをさらに備え、
前記メモリコントローラは、前記第１コマンドを送信するか否かを、前記温度センサによる検出値に基づいて決定する、
請求項１に記載のメモリシステム。
【請求項６】
前記メモリシステムは、第１モードと、前記第１モードよりも消費される電力が低いモードである第２モードと、の何れのモードでも動作可能であり、
前記メモリコントローラは、前記第１コマンドを送信するか否かを、前記第２モードに遷移する要求をホストから受信したか否かに基づいて決定する、
請求項１に記載のメモリシステム。
【請求項７】
前記メモリコントローラは、
Ｐ／Ｅサイクルの実行回数をカウントし、
前記第１コマンドを送信するか否かを、前記Ｐ／Ｅサイクルの実行回数のカウント値に基づいて決定する、
請求項１に記載のメモリシステム。
【請求項８】
前記メモリコントローラは、前記第１電圧の値を設定する第３コマンドを前記メモリチップに送信し、
前記処理回路は、前記第３コマンドによって設定された値の電圧を前記第１電圧として印加する、
請求項１に記載のメモリシステム。
【請求項９】
温度センサをさらに備え、
前記メモリコントローラは、前記温度センサによる検出値に応じた値を前記第３コマンドによって設定する、
請求項８に記載のメモリシステム。
【請求項１０】
前記メモリシステムは、第１モードと、前記第１モードよりも消費される電力が低くかつそれぞれ異なる優先度が関連付けられた複数の第２モードと、のうちの何れのモードでも動作可能であり、
前記メモリコントローラは、前記複数の第２モードの一である第３モードで動作する場合、前記第３モードに関連付けられた優先度に応じた値を前記第３コマンドによって設定する、
請求項８に記載のメモリシステム。
【請求項１１】
前記メモリコントローラは、
Ｐ／Ｅサイクルの実行回数を管理し、
前記Ｐ／Ｅサイクルの実行回数のカウント値に応じた値を前記第３コマンドによって設定する、
請求項８に記載のメモリシステム。
【請求項１２】
前記処理回路は、
リードのアクセスを実行可能に構成され、
前記リードのアクセスにおいてリード対象の第１のメモリセルが接続された第１のワード線に前記第１のメモリセルのしきい値電圧を判定するための第２電圧を生成する第１レギュレータと、
前記リードのアクセスにおいてリード対象でない第２のメモリセルが接続された第２のワード線に前記第２のメモリセルをオンするための第３電圧を生成したり、前記第１コマンドに応じて前記第１電圧を生成したりする第２レギュレータと、
を備える請求項１に記載のメモリシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本実施形態は、メモリシステムに関する。
【背景技術】
【０００２】
メモリセルトランジスタを有するメモリシステムが知られている。メモリセルトランジスタのしきい値電圧は、データに対応したステートに設定され、これによってメモリセルトランジスタはデータを不揮発的に保持することができる。
【０００３】
しかしながら、現実的には、しきい値電圧は、時間の経過とともに低下する。よって、何も対策が講じられなければ、しきい値電圧の低下によって、データが変化する。データがメモリセルトランジスタに格納されてから変化するまでの期間は、データリテンションと称される。データリテンションを長くすることが要望される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第５９２９３９８号公報
【特許文献２】特許第６２９３６９２号公報
【特許文献３】米国特許第８９０２６６９号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００５】
一つの実施形態は、データリテンションが長いメモリシステムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
一つの実施形態にかかるメモリシステムは、ホストに接続可能である。メモリシステムは、メモリコントローラと、メモリチップとを備える。メモリチップは、複数のワード線を備える第１記憶領域と処理回路とを備える。メモリコントローラは、第１記憶領域に対する第１のアクセスを処理回路に実行させる。メモリコントローラは、第１のアクセスが完了した後に、メモリチップに第１コマンドを送信する。また、メモリコントローラは、処理回路に第１のアクセスの次の第２のアクセスを実行させる前に、メモリチップに第２コマンドを送信する。処理回路は、第１コマンドに応じて複数のワード線への第１電圧の印加を開始し、第２コマンドに応じて複数のワード線への第１電圧の印加を終了する。
【図面の簡単な説明】
【０００７】
【図１】図１は、第１の実施形態のメモリシステム１の構成例を示す図である。
【図２】図２は、第１の実施形態のメモリチップ１００の構成例を示す図である。
【図３】図３は、第１の実施形態のメモリセルアレイ１２１の構成を示す模式的な図である。
【図４】図４は、第１の実施形態のブロックＢＬＫの回路構成を示す図である。
【図５】図５は、第１の実施形態のブロックＢＬＫの一部領域の断面図である。
【図６】図６は、第１の実施形態のメモリセルの取り得るしきい値電圧の一例を示す図である。
【図７】図７は、第１の実施形態の電圧発生回路１１６の構成の一例を示す模式図である。
【図８】図８は、第１の実施形態のメモリコントローラ２００による電圧Ｖｒｓを設定する動作を示すフローチャートである。
【図９】図９は、第１の実施形態の、温度センサによる検出値と電圧Ｖｒｓの設定値との関係の一例を示す図である。
【図１０】図１０は、第１の実施形態の、Ｐ／Ｅサイクルの実行回数と電圧Ｖｒｓの設定値との関係の一例を示す図である。
【図１１】図１１は、第１の実施形態のメモリコントローラ２００によるメモリチップ１００を制御する方法の一例を示すフローチャートである。
【図１２】図１２は、第１の実施形態のメモリコントローラ２００による、遷移可能条件が成立しているか否かの判定の動作の一例を示すフローチャートである。
【図１３】図１３は、第１の実施形態の、ＲＳ状態において各部位に印加される電圧の波形の一例を説明するための図である。
【図１４】図１４は、第１の実施形態のメモリコントローラ２００が各メモリチップ１００との情報の送受信のタイミングと、メモリセルアレイ１２１の状態遷移のタイミングと、の一例を説明するための図である。
【図１５】図１５は、第１の実施形態にかかるＲＳ開始コマンドおよびＲＳ終了コマンドが送信される際の、各種の信号線の状態の遷移の例を示す図である。
【図１６】図１６は、第１の実施形態にかかる、電圧Ｖｒｓを設定するためのセットフィーチャーコマンドが送信される際の、各種の信号線の状態の遷移の例を示す図である。
【図１７】図１７は、第２の実施形態のメモリコントローラ２００が各メモリチップ１００との情報の送受信のタイミングと、メモリセルアレイ１２１の状態遷移のタイミングと、の一例を説明するための図である。
【図１８】図１８は、第２の実施形態にかかるＲＳ開始コマンドおよびＲＳ終了コマンドが送信される際の、各種の信号線の状態の遷移の例を示す図である。
【発明を実施するための形態】
【０００８】
以下に添付図面を参照して、実施形態にかかるメモリシステムを詳細に説明する。なお、これらの実施形態により本発明が限定されるものではない。
【０００９】
（第１の実施形態）
図１は、第１の実施形態のメモリシステムの構成例を示す図である。図１に示されるように、メモリシステム１は、ホスト２と接続可能である。ホスト２は、例えば、サーバ、パーソナルコンピュータ、またはモバイル型の情報処理装置などが該当する。メモリシステム１は、ホスト２の外部記憶装置として機能する。ホスト２は、メモリシステム１に対して要求を発行することができる。要求は、リード要求およびライト要求を含む。
【００１０】
メモリシステム１は、１以上のメモリチップ１００、およびモリコントローラ２００を備える。ここでは、メモリシステム１は、１以上のメモリチップ１００として、メモリチップ１００−０、１００−１を備える。
【００１１】
各メモリチップ１００は、例えばＮＡＮＤ型のフラッシュメモリである。なお、各メモリチップ１００は、ＮＯＲ型のフラッシュメモリであってもよい。
【００１２】
２個のメモリチップ１００は、それぞれ異なるチャネルを介してメモリコントローラ２００に接続されている。図１の例では、メモリチップ１００−０は、チャネル０（ｃｈ．０）を介してメモリコントローラ２００に接続され、メモリチップ１００−１は、チャネル１（ｃｈ．１）を介してメモリコントローラ２００に接続されている。
【００１３】
各チャネルは、ＩＯ信号線および制御信号線を含む、配線群である。ＩＯ信号線は、例えば、データ、アドレス、およびコマンドを送受信するための信号線である。制御信号線は、例えば、ＷＥ（ライトイネーブル）信号、ＲＥ（リードイネーブル）信号、ＣＬＥ（コマンドラッチイネーブル）信号、ＡＬＥ（アドレスラッチイネーブル）信号、Ｒｙ／Ｂｙ（レディ／ビジー）信号、等を送受信するための信号線である。
【００１４】
メモリコントローラ２００は、各チャネルを個別に制御することができる。メモリコントローラ２００は、２つのチャネルを個別に制御することによって、２つのメモリチップ１００を非同期に動作させることができる。
【００１５】
なお、メモリシステム１に具備されるメモリチップ１００の数は、２つに限定されない。メモリシステム１に具備されるチャネルの数は、２つに限定されない。各チャネルに接続されているメモリチップ１００の数は、複数であってもよい。
【００１６】
図２は、第１の実施形態のメモリチップ１００の構成例を示す図である。
【００１７】
メモリチップ１００は、処理回路１１０および複数のプレーン１２０を備える。ここでは一例として、メモリチップ１００は、プレーン１２０−０と、プレーン１２０−１とを備える。
【００１８】
各プレーン１２０は、メモリセルアレイ１２１、センスアンプ１２２、ページバッファ１２３、およびロウデコーダ１２４を備える。センスアンプ１２２、ページバッファ１２３、およびロウデコーダ１２４は、メモリセルアレイ１２１に対するアクセスを実行するための周辺回路を構成する。これによって、プレーン１２０単位でメモリセルアレイ１２１にアクセスすることが可能となっている。
【００１９】
なお、メモリセルアレイ１２１へのアクセスは、メモリセルアレイ１２１にデータを書き込むプログラム動作と、メモリセルアレイ１２１からデータを読み出すリード動作と、メモリセルアレイ１２１に格納されたデータをイレースするイレース動作を含む。処理回路１１０は、メモリコントローラ２００からのコマンドに応じて、プログラム動作、リード動作、およびイレース動作を含む各種の処理を実行する。本明細書では、メモリチップ１００にプログラム動作を実行させるコマンドを、プログラムコマンドと表記する。メモリチップ１００にリード動作を実行させるコマンドを、リードコマンドと表記する。メモリチップ１００にイレース動作を実行させるコマンドを、イレースコマンドと表記する。
【００２０】
なお、メモリコントローラ２００が、メモリチップ１００にプログラムコマンド、リードコマンド、またはイレースコマンドを送信してデータの書き込み、読み出し、またはイレースを実行することを、メモリチップ１００にアクセスする、と表記することがある。
【００２１】
また、処理回路１１０がプログラム動作、リード動作、またはイレース動作を実行することを、メモリセルアレイ１２１にアクセスする、と表記することがある。
【００２２】
処理回路１１０は、ＩＯインタフェース１１１、コマンドユーザインタフェース１１２、シリアルアクセスコントローラ１１３、シーケンサ１１４、オシレータ１１５、電圧発生回路１１６、電圧発生回路１１７、および制御ゲート（Control  Gate  :  ＣＧ）ドライバ１１８を備える。
【００２３】
ＩＯインタフェース１１１は、メモリコントローラ２００との間でＩＯ信号および制御信号を送受信するための回路である。
【００２４】
コマンドユーザインタフェース１１２は、メモリコントローラ２００からＩＯ信号線を介して受信したコマンド、アドレス、およびデータのうちの、コマンドおよびアドレスを、制御信号に基づいて取得する。コマンドユーザインタフェース１１２は、取得したコマンドおよびアドレスをシーケンサ１１４に渡す。
【００２５】
オシレータ１１５は、クロックを生成する回路である。オシレータ１１５によって生成されたクロックは、シーケンサ１１４を含む各構成要素に供給される。
【００２６】
シーケンサ１１４は、オシレータ１１５から供給されるクロックによって駆動されるステートマシンである。シーケンサ１１４は、メモリセルアレイ１２１へのアクセスなどの制御を実行する。
【００２７】
例えば、シーケンサ１１４は、コマンドユーザインタフェース１１２から受信したコマンドに応じて、各種の内部電圧や動作タイミング等を制御するための指令を出す。さらに、シーケンサ１１４は、コマンドユーザインタフェース１１２から受信したアドレスに含まれるブロックアドレスおよびページアドレスを対応するプレーン１２０のロウデコーダ１２４に供給する。また、シーケンサ１１４は、コマンドユーザインタフェース１１２から受信したアドレスに含まれるカラムアドレスを対応するプレーン１２０のセンスアンプ１２２に供給する。
【００２８】
電圧発生回路１１６は、ワード線に供給される各種の内部電圧を生成する。電圧発生回路１１７は、ビット線に供給される各種の内部電圧を生成する。
【００２９】
ＣＧドライバ１１８は、電圧発生回路１１６が生成した各種の内部電圧を、２つのロウデコーダ１２４のうちのアクセス先のプレーン１２０に含まれるロウデコーダ１２４に供給する。
【００３０】
シリアルアクセスコントローラ１１３は、プログラム動作の際には、ＩＯ信号線のビット幅毎にシリアルに受信したデータを、２つのページバッファ１２３のうちの書き込み先のメモリセルアレイ１２１に対応したページバッファ１２３に格納する。また、シリアルアクセスコントローラ１１３は、リード動作の際には、２つのページバッファ１２３のうちの読み出し先のメモリセルアレイ１２１に対応したページバッファ１２３に格納されたデータをＩＯ信号線のビット幅毎に分割して、分割されたデータを順次、ＩＯインタフェース１１１に送る。
【００３１】
各ロウデコーダ１２４は、プログラム動作およびリード動作の際、ブロックアドレスおよびページアドレスをデコードして、アクセス先のブロックＢＬＫに含まれるアクセス対象となるページに対応するワード線を選択する。そして各ロウデコーダ１２４は、選択（selected）ワード線および非選択（unselected）ワード線に適切な電圧を印加する。
【００３２】
各センスアンプ１２２は、プログラム動作の際には、ページバッファ１２３に格納された対応するデータをメモリセルトランジスタに転送する。
【００３３】
また、各センスアンプ１２２は、リード動作の際には、選択ワード線からビット線に読み出されたデータをセンスして、得られたデータを、対応するページバッファ１２３に格納する。ページバッファ１２３に格納されたデータは、シリアルアクセスコントローラ１１３およびＩＯインタフェース１１１を介してメモリコントローラ２００に送られる。
【００３４】
次に、第１の実施形態のメモリセルアレイ１２１の構成を説明する。
【００３５】
図３は、第１の実施形態のメモリセルアレイ１２１の構成を示す模式的な図である。各メモリセルアレイ１２１は、それぞれが複数の不揮発性メモリセルトランジスタの集合である複数のブロックＢＬＫ（ＢＬＫ０、ＢＬＫ１、…）を備える。ブロックＢＬＫの各々は、それぞれがワード線およびビット線に関連付けられたメモリセルトランジスタの集合である複数のストリングユニットＳＵ（ＳＵ０、ＳＵ１、…）を備える。ストリングユニットＳＵの各々は、メモリセルトランジスタが直列接続された複数のＮＡＮＤストリング１２５を備える。なお、ストリングユニットＳＵ内のＮＡＮＤストリング１２５の数は任意である。
【００３６】
図４は、第１の実施形態のブロックＢＬＫの回路構成を示す図である。なお、各ブロックＢＬＫは、同一の構成を有している。ブロックＢＬＫは、例えば４つのストリングユニットＳＵ０〜ＳＵ３を有する。各ストリングユニットＳＵは、複数のＮＡＮＤストリング１２５を含む。
【００３７】
ＮＡＮＤストリング１２５の各々は、例えば１４個のメモリセルトランジスタＭＴ（ＭＴ０〜ＭＴ１３）および選択トランジスタＳＴ１、ＳＴ２を含んでいる。メモリセルトランジスタＭＴは、制御ゲートと電荷蓄積層とを備え、データを不揮発に保持する。そして１４個のメモリセルトランジスタＭＴ（ＭＴ０〜ＭＴ１３）は、選択トランジスタＳＴ１のソースと選択トランジスタＳＴ２のドレインとの間に直列接続されている。なお、メモリセルトランジスタＭＴは、電荷蓄積層に絶縁膜を用いたＭＯＮＯＳ型であってもよいし、電荷蓄積層に導電膜を用いたＦＧ型であってもよい。さらに、ＮＡＮＤストリング１２５内のメモリセルトランジスタＭＴの個数は１４個に限定されない。
【００３８】
ストリングユニットＳＵ０〜ＳＵ３の各々における選択トランジスタＳＴ１のゲートは、それぞれ選択ゲート線ＳＧＤ０〜ＳＧＤ３に接続される。これに対してストリングユニットＳＵ０〜ＳＵ３の各々における選択トランジスタＳＴ２のゲートは、例えば選択ゲート線ＳＧＳに共通接続される。ストリングユニットＳＵ０〜ＳＵ３の各々における選択トランジスタＳＴ２のゲートは、ストリングユニットＳＵ毎に異なる選択ゲート線ＳＧＳ０〜ＳＧＳ３に接続されてもよい。同一のブロックＢＬＫ内にあるメモリセルトランジスタＭＴ０〜ＭＴ１３の制御ゲートは、それぞれワード線ＷＬ０〜ＷＬ１３に共通接続される。
【００３９】
ストリングユニットＳＵ内にある各ＮＡＮＤストリング１２５の選択トランジスタＳＴ１のドレインは、それぞれ異なるビット線ＢＬ（ＢＬ０〜ＢＬ（Ｌ−１）、但しＬは２以上の自然数）に接続される。また、ビット線ＢＬは、複数のブロックＢＬＫ間で各ストリングユニットＳＵ内にある１つのＮＡＮＤストリング１２５を共通に接続する。更に、各選択トランジスタＳＴ２のソースは、ソース線ＳＬに共通に接続されている。
【００４０】
つまりストリングユニットＳＵは、異なるビット線ＢＬに接続され、かつ同一の選択ゲート線ＳＧＤに接続されたＮＡＮＤストリング１２５の集合である。またブロックＢＬＫは、ワード線ＷＬを共通にする複数のストリングユニットＳＵの集合である。そして各メモリセルアレイ１２１は、ビット線ＢＬを共通にする複数のブロックＢＬＫの集合である。
【００４１】
データのプログラムおよびリードは、１つのストリングユニットＳＵにおける１つのワード線ＷＬに接続されたメモリセルトランジスタＭＴに対して、一括して行われる。以下、データのプログラムおよびリードの際、一括して選択されるメモリセルトランジスタＭＴの群を「メモリセルグループＭＣＧ」と呼ぶ。そして、１つのメモリセルグループＭＣＧにプログラムされる、あるいはリードされる１ビットのデータの集まりを「ページ」と呼ぶ。データのイレースは、ブロックＢＬＫ単位で行うことができる。
【００４２】
図５は、第１の実施形態のブロックＢＬＫの一部領域の断面図である。図示されるように、ｐ型ウェル領域（半導体基板）１０上に、複数のＮＡＮＤストリング１２５が形成されている。すなわち、ウェル領域１０上には、選択ゲート線ＳＧＳとして機能する例えば４層の配線層１１、ワード線ＷＬ０〜ＷＬ１３として機能する１４層の配線層１２、および選択ゲート線ＳＧＤとして機能する例えば４層の配線層１３が、順次積層されている。積層された配線層間には、図示せぬ絶縁膜が形成されている。
【００４３】
そして、これらの配線層１３、１２、１１を貫通してウェル領域１０に達するピラー状の導電体１４が形成されている。導電体１４の側面には、ゲート絶縁膜１５、電荷蓄積層（絶縁膜または導電膜）１６、およびブロック絶縁膜１７が順次形成され、これらによってメモリセルトランジスタＭＴ、並びに選択トランジスタＳＴ１およびＳＴ２が形成されている。導電体１４は、ＮＡＮＤストリング１２５の電流経路として機能し、各トランジスタのチャネルが形成される領域となる。そして導電体１４の上端は、ビット線ＢＬとして機能する金属配線層１８に接続される。
【００４４】
ウェル領域１０の表面領域内には、ｎ＋型不純物拡散層１９が形成されている。拡散層１９上にはコンタクトプラグ２０が形成され、コンタクトプラグ２０は、ソース線ＳＬとして機能する金属配線層２１に接続される。更に、ウェル領域１０の表面領域内には、ｐ＋型不純物拡散層２２が形成されている。拡散層２２上にはコンタクトプラグ２３が形成され、コンタクトプラグ２３は、ウェル配線ＣＰＷＥＬＬとして機能する金属配線層２４に接続される。ウェル配線ＣＰＷＥＬＬは、ウェル領域１０を介して導電体１４に電位を印加するための配線である。
【００４５】
以上の構成が、半導体基板に平行な第２方向Ｄ２に複数配列されており、第２方向Ｄ２に並ぶ複数のＮＡＮＤストリング１２５の集合によってストリングユニットＳＵが形成される。
【００４６】
以降、メモリセルトランジスタＭＴを、メモリセルと表記する。
【００４７】
図６は、第１の実施形態のメモリセルの取り得るしきい値電圧の一例を示す図である。縦軸は、メモリセルの数を示しており、横軸は、しきい値電圧を示している。以下、本実施形態では、メモリセルが８値のデータを保持可能な場合について説明するが、保持可能なデータは８値に限定されない。本実施形態においては、メモリセルが２値以上のデータ（１ビット以上のデータ）を保持可能であればよい。
【００４８】
図６に示されるように、しきい値電圧の取り得る範囲は、８つの範囲に区分される。この８つの区分を、しきい値電圧が低いほうから順に、“Ｅｒ”ステート、“Ａ”ステート、“Ｂ”ステート、“Ｃ”ステート、“Ｄ”ステート、“Ｅ”ステート、“Ｆ”ステート、および“Ｇ”ステートと呼ぶことにする。各メモリセルのしきい値電圧は、処理回路１１０によって、“Ｅｒ”ステート、“Ａ”ステート、“Ｂ”ステート、“Ｃ”ステート、“Ｄ”ステート、“Ｅ”ステート、“Ｆ”ステート、および“Ｇ”ステート、の何れかに属するように、制御される。その結果、しきい値電圧を横軸としてメモリセルの数をプロットした場合、メモリセルは、本図に示されるように、それぞれ異なるステートに属する８つの分布を形成する。
【００４９】
８つのステートは、３ビットのデータに対応する。本図の例によれば、“Ｅｒ”ステートは“１１１”のデータに対応し、“Ａ”ステートは“１１０”のデータに対応し、“Ｂ”ステートは“１００”のデータに対応し、“Ｃ”ステートは“０００”のデータに対応し、“Ｄ”ステートは“０１０”のデータに対応し、“Ｅ”ステートは“０１１”のデータに対応し、“Ｆ”ステートは“００１”のデータに対応し、“Ｇ”ステートは“１０１”のデータに対応する。なお、本図では、ＭＳＢ（Ｍｏｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ）を左端に配置し、ＬＳＢ（Ｌｅａｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ）を右端に配置した表記方法を採用している。
【００５０】
このように、各メモリセルは、そのしきい値電圧が属するステートに応じたデータを保持することができる。なお、図６に示される対応関係は、データコーディングの一例である。データコーディングは本図の例に限定されない。
【００５１】
なお、１つのメモリセルに保持される３ビットのデータのうち、ＬＳＢをロアービット、ＭＳＢをアッパービット、ＬＳＢとＭＳＢとの間のビットをミドルビット、と表記する。同一のメモリセルグループＭＣＧに属する全てのメモリセルトランジスタＭＴのロアービットの集合を、ロアーページと表記する。同一のメモリセルグループＭＣＧに属する全てのメモリセルトランジスタＭＴのミドルビットの集合を、ミドルページと表記する。同一のメモリセルグループＭＣＧに属する全てのメモリセルトランジスタＭＴのアッパービットの集合を、アッパーページと表記する。
【００５２】
しきい値電圧は、イレース動作によって“Ｅｒ”ステートに低下せしめられる。また、しきい値電圧は、プログラム動作によって、“Ｅｒ”ステートに維持されるか、または“Ａ”ステート、“Ｂ”ステート、“Ｃ”ステート、“Ｄ”ステート、“Ｅ”ステート、“Ｆ”ステート、および“Ｇ”ステート、の何れかに至るまで、上昇せしめられる。
【００５３】
具体的には、プログラム動作においては、センスアンプ１２２は、カラムアドレスに対応したビット線ＢＬを選択する。ロウデコーダ１２４は、ロウアドレスに対応したワード線ＷＬを選択し、選択ワード線ＷＬに、プログラム電圧とベリファイ電圧とを印加する動作をプログラム電圧の値をΔＶｐｒｏｇずつ増加させて繰り返す。すると、選択ビット線ＢＬおよび選択ワード線ＷＬとの交点に位置するメモリセルの電荷蓄積層１６に電荷が注入され、その結果、メモリセルのしきい値電圧が上昇する。センスアンプ１２２は、所定のタイミングでリードを行うことで、メモリセルのしきい値電圧がデータに対応した目標のステートに到達したか否かを確認する（ベリファイリード）。シーケンサ１１４は、メモリセルのしきい値電圧が目標のステートに到達するまで、電圧Ｖｐｒｏｇの印加を繰り返す。
【００５４】
以降、プログラム動作によってあるステートにしきい値電圧が設定されたメモリセルを、そのステートに属するメモリセル、と表記することがある。
【００５５】
隣接する２つのステート間には、判定電圧が設定される。例えば、図６に例示されるように、“Ｅｒ”ステートと“Ａ”ステートとの間に判定電圧Ｖｒａが設定され、“Ａ”ステートと“Ｂ”ステートとの間に判定電圧Ｖｒｂが設定され、“Ｂ”ステートと“Ｃ”ステートとの間に判定電圧Ｖｒｃが設定され、“Ｃ”ステートと“Ｄ”ステートとの間に判定電圧Ｖｒｄが設定され、“Ｄ”ステートと“Ｅ”ステートとの間に判定電圧Ｖｒｅが設定され、“Ｅ”ステートと“Ｆ”ステートとの間に判定電圧Ｖｒｆが設定され、“Ｆ”ステートと“Ｇ”ステートとの間に判定電圧Ｖｒｇが設定される。リード動作においては、複数種類の判定電圧によって、メモリセルが属するステートに対応付けられたデータが判定される。
【００５６】
例えば図６に示されたデータコーディングが適用される場合を考える。メモリセルが“Ｅｒ”ステート、“Ｅ”ステート、“Ｆ”ステート、および“Ｇ”ステート、の何れかに属する場合、そのメモリセルが保持するロアービットの値は“１”である。メモリセルが“Ａ”ステート、“Ｂ”ステート、“Ｃ”ステート、および“Ｄ”ステートの何れかに属する場合、そのメモリセルが保持するロアービットの値は“０”である。よって、ＶｒａおよびＶｒｅの２種類の判定電圧を使用することによって、ロアーページのデータが判定できる。
【００５７】
メモリセルが“Ｅｒ”ステート、“Ａ”ステート、“Ｄ”ステート、および“Ｅ”ステートの何れかに属する場合、そのメモリセルが保持するミドルビットの値は“１”である。メモリセルが“Ｂ”ステート、“Ｃ”ステート、“Ｆ”ステート、および“Ｇ”ステートの何れかに属する場合、そのメモリセルが保持するミドルビットの値は“０”である。よって、Ｖｒｂ、Ｖｒｄ、およびＶｒｆの３種類の判定電圧を使用することによって、ミドルページのデータが判定できる。
【００５８】
メモリセルが“Ｅｒ”ステート、“Ａ”ステート、“Ｂ”ステート、および“Ｇ”ステートの何れかに属する場合、そのメモリセルが保持するアッパービットの値は“１”である。メモリセルが“Ｃ”ステート、“Ｄ”ステート、“Ｅ”ステート、および“Ｆ”ステートの何れかに属する場合、そのメモリセルが保持するアッパービットの値は“０”である。よって、ＶｒｃおよびＶｒｇの２種類の判定電圧を使用することによって、アッパーページのデータが判定できる。
【００５９】
このように、データの判定に使用される判定電圧の種類は、リード対象のページの種類に応じて異なる。ロウデコーダ１２４は、リード動作では、リード対象のページの種類に応じた複数種類の判定電圧を使用する。
【００６０】
さらに具体的に説明すると、リード動作においては、センスアンプ１２２は、ビット線ＢＬに電源電圧ＶＤＤをプリチャージする。ロウデコーダ１２４は、ロウアドレスに対応したワード線ＷＬ、つまりリード対象のメモリセルが接続されたワード線ＷＬを選択する。ロウデコーダ１２４は、非選択ワード線ＷＬ、つまりリード対象でないメモリセルが接続されたワード線ＷＬに、電圧Ｖｒｅａｄを印加する。電圧Ｖｒｅａｄは、図６に示されるように、“Ｇ”ステートよりも高い値が設定された電圧である。非選択ワード線ＷＬに電圧Ｖｒｅａｄが印加されることで、非選択ワード線ＷＬに接続された各メモリセルは、しきい値電圧が属するステートに関係なく、導通状態となる。そして、ロウデコーダ１２４は、選択ワード線ＷＬに、リード対象のページの種類に対応する複数種類の判定電圧を順次印加する。センスアンプ１２２は、プリチャージにより蓄えられた電荷のソース線ＳＬへの流出を引き起こした判定電圧を特定することによって、対象のメモリセルが属するステートに対応するデータを判定する。
【００６１】
ところで、電荷蓄積層１６に蓄積された電荷は、経過時間とともにリークする。リークのパスとしては、ゲート絶縁膜１５を介して導電体１４に至るパス、ブロック絶縁膜１７を介して配線層１２に至るパス、または隣接するメモリセルに向かって電荷蓄積層１６内を流れるパス、などがある。電荷蓄積層１６からの電荷のリークによって、メモリセルのしきい値電圧が低下する。しきい値電圧の低下によって当該しきい値電圧がステートの境界を越えた場合、プログラム動作時のデータと異なるデータがリード動作によって読み出される現象が起こる。データが変化したデータビットを、ビットエラーと表記することがある。
【００６２】
前述されたように、データが格納されてから変化するまでの期間は、データリテンションと称される。データリテンションを出来るだけ長くすることが要望される。
【００６３】
例えば、変化したデータ（ビットエラー）は、通常、メモリコントローラ２００などに具備される誤り訂正機能によって正しいデータに訂正される。しかしながら、誤り訂正機能の能力には上限が存在する。ビットエラーの数が誤り訂正機能によって訂正可能な数を超える前に、各ブロックＢＬＫに格納されたデータは、誤り訂正機能によって正しいデータに訂正されたうえで、別のブロックＢＬＫにリロケートされる。この処理は、リフレッシュと称される。
【００６４】
データリテンションが短い場合、リフレッシュの実行頻度が増加し、リフレッシュの実行頻度の増加によって、メモリシステム１の性能が低下する。データリテンションを長くすることができれば、リフレッシュの実行頻度を抑制でき、リフレッシュの実行に伴うメモリシステム１の性能の低下を抑制することができる。
【００６５】
また、あるケースでは、リフレッシュが必要であるか否かを確認するために、メモリコントローラ２００が各ブロックＢＬＫに格納されたデータを定期的にリードする。この処理は、パトロールリードと称される。データリテンションを長くすることができれば、パトロールリードの実行頻度を抑制することができ、パトロールリードの実行に伴うメモリシステム１の性能の低下を抑制することができる。
【００６６】
第１の実施形態では、メモリセルアレイ１２１は、アクセス（即ちプログラム動作、リード動作、およびイレース動作）が実行されていない期間に、リテンションスタンバイ（Retention-Stand-by  :  ＲＳ）状態に制御され得る。ＲＳ状態では、ワード線群に所定の電圧が継続的に印加される。これによって、電荷蓄積層１６からの電荷のリークが抑制され、データリテンションを長くすることができる。
【００６７】
ＲＳ状態においてワード線群に印加される電圧を電圧Ｖｒｓと表記する。電圧Ｖｒｓの値は、任意に設定され得る。しかしながら、電圧Ｖｒｓが高すぎると、電荷のリークを抑制するどころか、逆に電荷蓄積層１６に電荷が注入され、これによってデータの変化が起こる。
【００６８】
例えば、あるブロックＢＬＫの特定のワード線ＷＬに対するリードが多数回実行されることで、他のワード線ＷＬに電圧Ｖｒｅａｄが多数回、印加される場合がある。その場合、電圧Ｖｒｅａｄが多数回印加されたワード線ＷＬに接続された各メモリセルでは、電圧Ｖｒｅａｄの印加によって電荷蓄積層１６に電荷が少しずつ注入されることで、データが変化することがある。この現象は、リードディスターブとして知られている。
【００６９】
よって、電圧Ｖｒｓとしては、０Ｖより高くかつ電圧Ｖｒｅａｄより低い値を設定することが考えられる。これによって、電荷蓄積層１６への電荷の注入をできるだけ抑制しながら、データリテンションを長くすることができる。
【００７０】
なお、図６では、一例として、電圧Ｖｒｅａｄの約半分の電圧値が電圧Ｖｒｓとして設定されている。
【００７１】
以降、ワード線ＷＬ群に電圧Ｖｒｓが印加されていない、通常のスタンバイ状態を、通常スタンバイ（Normal-Standby  :  ＮＳ）状態と表記する。
【００７２】
電圧Ｖｒｓは、電圧発生回路１１６によって生成される。
図７は、第１の実施形態の電圧発生回路１１６の構成の一例を示す模式図である。本図に示されるように、電圧発生回路１１６は、第１レギュレータ１１６１、第２レギュレータ１１６２、および第３レギュレータ１１６３を備える。
【００７３】
第１レギュレータ１１６１は、選択ワード線ＷＬ用の電圧を生成する。つまり、第１レギュレータ１１６１は、判定電圧Ｖｒａ〜Ｖｒｇを生成する。
【００７４】
なお、判定電圧Ｖｒａ〜Ｖｒｇのそれぞれは、例えばメモリコントローラ２００により動的に調整され得る。例えば、リード動作によって得られたデータに含まれるビットエラー数が所定以上であった場合、判定電圧Ｖｒａ〜Ｖｒｇの一部または全部が調整され、その後、リード動作が再び実施される。判定電圧Ｖｒａ〜Ｖｒｇの一部または全部を調整してリード動作を実行する処理は、シフトリードと称される。
【００７５】
第１レギュレータ１１６１は、シフトリードに対応するために、他のレギュレータ（例えば第２レギュレータ１１６２）よりも、出力電圧をより細かい粒度で調整可能に構成されている。
【００７６】
第２レギュレータ１１６２は、非選択ワード線ＷＬ用の電圧を生成する。つまり、第２レギュレータ１１６２は、電圧Ｖｒｅａｄを生成する。
【００７７】
リード動作およびプログラム動作においては、対象のブロックＢＬＫ内の１つのワード線ＷＬが選択され、対象のブロックＢＬＫ内の他の全てのワード線ＷＬが非選択とされる。よって、非選択ワード線ＷＬを昇圧する場合、選択ワード線ＷＬを昇圧する場合に比べて、大きな電流を供給する必要がある。
【００７８】
そこで、第２レギュレータ１１６２は、第１レギュレータ１１６１よりも電流を供給する能力が高い構成を有している。これによって、第２レギュレータ１１６２は、広範囲に配置された多数のワード線ＷＬを電圧Ｖｒｅａｄまで高速に昇圧することが可能である。
【００７９】
第２レギュレータ１１６２は、さらに、電圧Ｖｒｓを生成することができる。これによって、第２レギュレータ１１６２は、広範囲に配置された多数のワード線ＷＬに電圧Ｖｒｓを印加することが可能である。
【００８０】
第３レギュレータ１１６３は、電圧Ｖｐｒｏｇを生成することができる。電圧Ｖｐｒｏｇは、電圧Ｖｒｅａｄよりも高い。これによって、電荷蓄積層１６に速やかに電荷を注入することが可能である。
【００８１】
第１レギュレータ１１６１、第２レギュレータ１１６２、および第３レギュレータ１１６３によって生成された各種の内部電圧は、ＣＧドライバ１１８によって、対応する１以上のワード線ＷＬに印加される。
【００８２】
図１に説明を戻す。
メモリコントローラ２００は、内部に備える各構成要素の協働によって、メモリシステム１全体の制御を実行する。
【００８３】
例えば、メモリコントローラ２００は、ホスト２と各メモリチップ１００との間のデータ転送を実行する。メモリコントローラ２００は、ホスト２からリード要求を受信した場合、当該リード要求によって指定されたデータを保持するメモリチップ１００から当該データを読み出す。そして、メモリコントローラ２００は、当該読み出されたデータをホスト２に送信する。また、メモリコントローラ２００は、ホスト２からライト要求を受信した場合、ライト要求とともに受信したデータの書き込み先のメモリチップ１００を決定して、決定されたメモリチップ１００に当該データを書き込む。
【００８４】
つまり、メモリコントローラ２００は、ホスト２からの要求に応じて、各メモリチップ１００へのアクセスを実行する。
【００８５】
また、メモリコントローラ２００は、ホスト２からの要求の処理とは別に、ガベージコレクション、ウェアレベリング、または前述したリフレッシュなど、内部的な処理を実行する。
【００８６】
前述したように、メモリセルアレイ１２１に格納されたデータは、ブロックＢＬＫ単位でイレースされる。これに対し、データの書き込みや読み出しは、ブロックＢＬＫよりも小さいページの単位で実行される。ブロックＢＬＫより小さい単位でデータが消去できないので、古いデータを更新する新しいデータがホスト２から送られてきた場合、当該新しいデータは、古いデータに上書きされるのではなく、空き領域に書き込まれる。新しいデータの書き込みの後、メモリセルアレイ１２１内の古いデータは、無効データとして扱われる。また、メモリセルアレイ１２１内の新しいデータは、有効データとして扱われる。
【００８７】
空き領域が枯渇すると、メモリコントローラ２００は、空き領域を有するブロックＢＬＫを生成するために、ブロックＢＬＫ内の無効データをイレースする。しかし、１つのブロックＢＬＫに記憶される全てのデータが無効であることは稀である。よって、メモリコントローラ２００は、あるブロックＢＬＫ内に残っている有効データを別のブロックＢＬＫにリロケートする。有効データのリロケートによって、リロケート元のブロックＢＬＫは、有効データを全く含まない状態になる。リロケートによって有効データを全く含まなくなったブロックＢＬＫは、フリーブロックと呼ばれる。フリーブロックに格納されているデータは、一括にイレースされ、そのフリーブロック内の全てのページは空き領域になる。フリーブロックの数を増やすために有効データをブロックＢＬＫ間でリロケートする処理は、ガベージコレクションと称される。
【００８８】
また、空の状態のブロックＢＬＫに対する初回の書き込みから当該ブロックＢＬＫ内のデータのイレースまでのプロセスは、Ｐ（プログラム）／Ｅ（イレース）サイクルと称される。メモリセルトランジスタの特性、例えばデータリテンションは、Ｐ／Ｅサイクルの実行回数の増加に従って悪化する。メモリコントローラ２００は、Ｐ／Ｅサイクルの実行回数を均一化するために、データのリロケートを実行する。Ｐ／Ｅサイクルの実行回数を均一化するためのリロケートは、ウェアレベリングと称される。
【００８９】
メモリコントローラ２００は、例えばブロックＢＬＫ毎にＰ／Ｅサイクルの実行回数をカウントする。メモリコントローラ２００は、Ｐ／Ｅサイクルの実行回数のカウント値を管理情報のうちの一つとして記憶する。そして、メモリコントローラ２００は、ブロックＢＬＫ毎のＰ／Ｅサイクルの実行回数のカウント値に基づき、移動元のブロックＢＬＫと移動先のブロックＢＬＫとを決定し、移動元のブロックＢＬＫに格納されているデータを移動先のブロックＢＬＫにリロケートする。
【００９０】
メモリコントローラ２００は、ガベージコレクション、ウェアレベリング、またはリフレッシュのような、内部的な処理の際にも、各メモリチップ１００に対するアクセスを実行する。
【００９１】
さらに、メモリコントローラ２００は、メモリチップ１００単位でメモリセルアレイ１２１をＲＳ状態に遷移させることができる。
【００９２】
具体的には、メモリコントローラ２００は、所定の条件（以降、遷移可能条件と表記する）が成立している場合に、処理回路１１０がアクセス（プログラム動作、リード動作、およびイレース動作）を非実行中のメモリチップ１００に、ＲＳ開始（RS  entry）コマンドを送信する。
【００９３】
また、メモリセルアレイ１２１がＲＳ状態に維持されているメモリチップ１００に対してアクセスを再開する場合には、メモリコントローラ２００は、そのメモリチップ１００にＲＳ終了（RS  exit）コマンドを送信する。
【００９４】
遷移可能条件は、任意に構成される。以下に、遷移可能条件の３つの例を挙げる。
【００９５】
例えば、温度に基づいてＲＳ状態への遷移が可能であるか否かが判定される。
【００９６】
データリテンションは、メモリセルの温度が高いほど短くなる。しかしながら、ＲＳ状態では、ワード線群に継続的に電圧が印加されることから、消費電力が増大する。よって、例えば、メモリセルの温度が所定値より低い場合にＲＳ状態への遷移を可能とし、メモリセルの温度が所定値より高い場合にＲＳ状態への遷移を禁止すれば、メモリセルアレイ１２１のＲＳ状態への遷移を制御することにより、データリテンションの短期化を抑制することができる。よって、消費電力の増大をできるだけ抑制しながらデータリテンションを長くすることが可能となる。
【００９７】
別の例では、ホスト２から低消費電力モードでの動作を要求する低消費電力モード要求を受信しているか否かに基づいて、ＲＳ状態への遷移が可能であるか否かが判定される。
【００９８】
低消費電力モードは、通常の動作モード（以降、通常モードと表記する）よりもメモリシステム１で消費される電力が小さいモードである。換言すると、低消費電力モードでは、メモリチップ１００内の各素子やメモリコントローラ２００内の各素子の少なくとも一部の電源をオフにすること等により、通常の動作モードよりも消費電力を抑制することが求められる。しかしながら、メモリセルアレイ１２１をＲＳ状態にすると、消費電力が増大するため、低消費電力を実現することが困難である。
【００９９】
そこで、通常モードでは、ＲＳ状態への遷移を可能とし、低消費電力モードでは、ＲＳ状態への遷移を禁止する。これによって、低消費電力モード要求に応じて消費電力を低減することが可能となる。
【０１００】
さらに別の例では、Ｐ／Ｅサイクルの実行回数に基づいて、ＲＳ状態への遷移が可能であるか否かが判定される。
【０１０１】
データリテンションは、Ｐ／Ｅサイクルの実行回数の増加に従って短くなりやすくなる。よって、例えば、Ｐ／Ｅサイクルの実行回数が所定値より大きい場合にＲＳ状態への遷移を可能とし、Ｐ／Ｅサイクルの実行回数が所定値より小さい場合にＲＳ状態への遷移を禁止すれば、データリテンションが短くなりやすい期間に限定してメモリセルアレイ１２１をＲＳ状態に制御することができる。よって、消費電力の増大をできるだけ抑制しながらデータリテンションを長くすることが可能となる。
【０１０２】
第１の実施形態では、一例として、温度に基づく判定条件と、動作モードに基づく判定条件と、Ｐ／Ｅサイクルの実行回数に基づく判定条件と、の組み合わせが遷移可能条件として使用される。
【０１０３】
なお、遷移可能条件は、温度に基づく判定条件と、動作モードに基づく判定条件と、Ｐ／Ｅサイクルの実行回数に基づく判定条件と、のうちの一部によって構成されてもよい。また、遷移可能条件は、これらの判定条件と異なる判定条件によって構成されてもよい。また、遷移可能条件を廃し、メモリコントローラ２００は、メモリチップ１００がアクセスを実行中であるか否かのみに基づいてＲＳ開始コマンドを送信するように構成されてもよい。
【０１０４】
メモリコントローラ２００は、さらに、電圧Ｖｒｓの値を設定することができる。電圧Ｖｒｓの設定には、一例として、セットフィーチャーコマンドが使用される。電圧Ｖｒｓの値の設定方法の例は後述される。
【０１０５】
なお、電圧Ｖｒｓの値は、各メモリチップ１００に出荷前などにおいて設定され、メモリシステム１の動作中は当初設定された値に固定されてもよい。つまり、メモリコントローラ２００は、電圧Ｖｒｓの値を設定する機能を有さなくてもよい。
【０１０６】
メモリコントローラ２００は、ソフトウェア、ハードウェア、またはそれらの組み合わせによって構成される。メモリコントローラ２００は、１個のＳｏＣ（System-on-a-Chip）として構成されてもよいし、複数のチップによって構成されてもよい。図１に示される例によれば、メモリコントローラ２００は、ハードウェア構成として、ホストインタフェース２１０、メモリインタフェース２２０、ＲＡＭ２３０、プロセッサ２４０、および温度センサ２５０を備える。
【０１０７】
ホストインタフェース２１０は、メモリコントローラ２００とホスト２との通信を司る。
【０１０８】
メモリインタフェース２２０は、チャネルを介して各メモリチップ１００と接続され、メモリコントローラ２００とメモリチップ１００との通信を司る。
【０１０９】
プロセッサ２４０は、メモリコントローラ２００の動作を制御する。例えば、プロセッサ２４０は、ホスト２からの要求の解析、ホスト２からの要求に応じた各メモリチップ１００へのアクセスの制御、内部的な処理の制御、などを実行する。
【０１１０】
プロセッサ２４０は、例えばＣＰＵ（Central  Processing  Unit）などの、ファームウェアプログラムに基づいて動作する回路であってもよい。また、プロセッサ２４０は、ＦＰＧＡ（field-programmable  gate  array）やＡＳＩＣ（application  specific  integrated  circuit）などの、動作にプログラムを要さない回路であってもよい。また、プロセッサ２４０は、ファームウェアプログラムに基づいて動作する回路と、動作にプログラムを要さない回路と、の組み合わせによって構成されてもよい。
【０１１１】
ＲＡＭ２３０は、ホスト２と各メモリチップ１００との間のデータ転送のバッファとして使用され得る。また、ＲＡＭ２３０は、データや各種管理情報がキャッシュされるメモリとして使用され得る。
【０１１２】
温度センサ２５０は、メモリシステム１内の温度を検出する。温度センサ２５０による検出値は、遷移可能条件の判定に使用される。
【０１１３】
なお、メモリシステム１は、メモリチップ１００など、動作中に熱を発する部品を有している。これらの部品の発熱の程度や、メモリシステム１の周囲の温度によって、メモリシステム１内の温度が増減する。メモリシステム１内の温度が所定値を越えると、メモリシステム１が正常に動作しなくなったり、メモリシステム１が故障したりする。そこで、メモリコントローラ２００は、メモリシステム１の温度が上がり過ぎると、発熱量を低下させるために、メモリシステム１の性能を意図的に抑制する。メモリシステム１の性能をメモリシステム１の温度に応じて意図的に抑制する制御は、サーマルスロットリングと称される。
【０１１４】
メモリシステム１は、サーマルスロットリングに使用される温度センサを有している。実施形態の温度センサ２５０は、サーマルスロットリングに使用される温度センサと兼用されてもよいし、サーマルスロットリングに使用される温度センサとは兼用されなくてもよい。また、温度センサ２５０は、メモリコントローラ２００の外に設けられ得る。温度センサ２５０は、２つのメモリチップ１００のうちの一または両方に内蔵されてもよい。メモリシステム１が備える温度センサ２５０の数は、１つに限定されない。
【０１１５】
続いて、第１の実施形態のメモリシステム１の動作を説明する。なお、メモリコントローラ２００は、メモリチップ１００−０およびメモリチップ１００−１に対し、同様の制御を個別に実施する。以下の説明では、メモリチップ１００−０およびメモリチップ１００−１のうちの一を対象のメモリチップ１００と表記し、当該対象のメモリチップ１００を制御対象とした動作について説明する。
【０１１６】
図８は、第１の実施形態のメモリコントローラ２００による電圧Ｖｒｓを設定する動作を示すフローチャートである。
【０１１７】
まず、メモリコントローラ２００は、電圧Ｖｒｓとして設定される値（設定値）を算出する（Ｓ１０１）。
【０１１８】
設定値の算出方法は任意である。例えば図９に示されるように、メモリコントローラ２００は、温度センサ２５０による検出値が高いほど、電圧Ｖｒｓの値を高くしてもよい。別の例では、図１０に示されるように、Ｐ／Ｅサイクルの実行回数が増加するに応じて電圧Ｖｒｓの値を高くしてもよい。
【０１１９】
Ｓ１０１に続いて、メモリコントローラ２００は、設定値を含むセットフィーチャーコマンドを対象のメモリコントローラ２００に送信する（Ｓ１０２）。対象のメモリチップ１００では、シーケンサ１１４は、セットフィーチャーコマンドによって送信されてきた設定値を、自身が有するレジスタ（不図示）に格納する。
【０１２０】
Ｓ１０２によって、電圧Ｖｒｓを設定する動作が完了する。
【０１２１】
例えば、メモリコントローラ２００は、メモリチップ１００にＲＳ開始コマンドを送信する前に、上記の動作を一度だけ実施する。または、メモリコントローラ２００は、所定の時間間隔で上記の動作を実施する。または、メモリコントローラ２００は、温度センサ２５０による検出値、Ｐ／Ｅサイクルの実行回数、など、任意の量が所定の条件を満たしたタイミングで上記の動作を実施する。つまり、メモリコントローラ２００は、電圧Ｖｒｓを設定する動作を、任意のタイミングで実施し得る。
【０１２２】
図１１は、第１の実施形態のメモリコントローラ２００によるメモリチップ１００を制御する方法の一例を示すフローチャートである。
【０１２３】
まず、メモリコントローラ２００は、対象のメモリチップ１００へのアクセスを実行中であるか否かを判定する（Ｓ２０１）。Ｓ２０１において、アクセスとは、対象のメモリチップ１００にプログラムコマンド、リードコマンド、またはイレースコマンドを送信することによって、対象のメモリチップ１００にデータを書き込んだり、対象のメモリチップ１００からデータを読み出したり、対象のメモリチップ１００に格納されたデータをイレースしたりすることである。
【０１２４】
対象のメモリチップ１００へのアクセスを実行中である場合（Ｓ２０１：Ｙｅｓ）、メモリコントローラ２００は、Ｓ２０１の判定処理を再び実行する。対象のメモリチップ１００へのアクセスを実行中ではない場合（Ｓ２０１：Ｎｏ）、メモリコントローラ２００は、遷移可能条件が成立しているか否かを判定する（Ｓ２０２）。
【０１２５】
図１２は、Ｓ２０２の処理、つまり遷移可能条件が成立しているか否かの判定の動作の一例を示すフローチャートである。図１２に示される動作は、後述するＳ２０４においても実行される。
【０１２６】
まず、メモリコントローラ２００は、温度センサ２５０による検出値が所定のしきい値Ｔｈ１を越えているか否かを判定する（Ｓ３０１）。
【０１２７】
例えば、プロセッサ２４０は、所定の短い時間間隔で温度センサ２５０から検出値を取得する。プロセッサ２４０は、最新の検出値とＴｈ１とを比較する。なお、温度センサ２５０から検出値を取得するタイミングはこれに限定されない。プロセッサ２４０は、Ｓ２０１を実施するタイミングで温度センサ２５０から検出値を取得してもよい。
【０１２８】
温度センサ２５０による検出値がＴｈ１を越えている場合（Ｓ３０１：Ｙｅｓ）、メモリコントローラ２００は、ホスト２から低消費電力モード要求を受信したか否かを判定する（Ｓ３０２）。
【０１２９】
メモリコントローラ２００は、ホスト２から低消費電力モード要求を受信し、当該低消費電力モード要求に基づいて、通常モードから低消費電力モードに遷移しようとしている場合、ホスト２から低消費電力モード要求を受信したと判定する。また、メモリコントローラ２００は、メモリシステム１が低消費電力モードの場合、ホスト２から低消費電力モード要求を受信したと判定する。また、メモリコントローラ２００は、通常モードになって以降、低消費電力モード要求を受信していない場合、ホスト２から低消費電力モード要求を受信していないと判定する。
【０１３０】
ホスト２から低消費電力モード要求を受信していない場合（Ｓ３０２：Ｎｏ）、メモリコントローラ２００は、Ｐ／Ｅサイクルの実行回数が所定のしきい値Ｔｈ２を越えているか否かを判定する（Ｓ３０３）。
【０１３１】
前述したように、メモリコントローラ２００は、ブロックＢＬＫ毎にＰ／Ｅサイクルの実行回数をカウントし、カウント値を管理情報のうちの一つとして記憶している。メモリコントローラ２００は、管理情報として記憶しているブロックＢＬＫ毎のＰ／Ｅサイクルの実行回数のカウント値に基づいてＳ２０３の処理を実行する。
【０１３２】
例えば、メモリコントローラ２００は、対象のメモリチップ１００に含まれる全ブロックＢＬＫにかかるカウント値の代表値をしきい値Ｔｈ２と比較する。代表値は、例えば、平均値、中央値、または積算値などであってもよい。
【０１３３】
メモリコントローラ２００は、ウェアレベリングによって、全ブロックＢＬＫでＰ／Ｅサイクルの実行回数ができるだけ均一になるように制御している。よって、メモリチップ１００−０またはメモリチップ１００−１に含まれるブロックＢＬＫから何らかの方法で１つのブロックＢＬＫを選択し、選択されたブロックＢＬＫのカウント値をしきい値Ｔｈ２と比較してもよい。
【０１３４】
Ｐ／Ｅサイクルの実行回数が所定のしきい値Ｔｈ２を越えている場合（Ｓ３０３：Ｙｅｓ）、メモリコントローラ２００は、遷移可能条件が成立していると判定し（Ｓ３０４）、遷移可能条件が成立しているか否かの判定が終了する。
【０１３５】
温度センサ２５０による検出値が所定値を越えていない場合（Ｓ３０１：Ｎｏ）、ホスト２から低消費電力モード要求を受信した場合（Ｓ３０２：Ｙｅｓ）、またはＰ／Ｅサイクルの実行回数が所定のしきい値Ｔｈ２を越えていない場合（Ｓ３０３：Ｎｏ）、メモリコントローラ２００は、遷移可能条件が成立していないと判定し（Ｓ３０５）、遷移可能条件が成立しているか否かの判定が終了する。
【０１３６】
なお、上記した動作は、遷移可能条件が成立しているか否かを判定する動作の一例である。遷移可能条件が成立しているか否かは、任意の方法で判定され得る。
【０１３７】
図１１に説明を戻す。
メモリコントローラ２００は、遷移可能条件が成立している場合（Ｓ２０２：Ｙｅｓ）、メモリコントローラ２００は、対象のメモリチップ１００にＲＳ開始コマンドを送信する（Ｓ２０３）。
【０１３８】
対象のメモリチップ１００がＲＳ開始コマンドを受信すると、対象のメモリチップ１００に具備されるシーケンサ１１４は、第２レギュレータ１１６２に、レジスタに格納された設定値の電圧を電圧Ｖｒｓとして生成させる。各ロウデコーダ１２４は、第２レギュレータ１１６２によって生成された電圧Ｖｒｓを、各プレーン１２０の全てのワード線に印加する。これによって、各メモリセルアレイ１２１は、ＮＳ状態からＲＳ状態に遷移する。
【０１３９】
Ｓ２０３の後、メモリコントローラ２００は、遷移可能条件が成立しているか否かの判定（Ｓ２０４）と、対象のメモリチップ１００へのアクセスを実行するか否かの判定（Ｓ２０５）と、を繰り返し実施する。つまり、遷移可能条件が成立しており（Ｓ２０４：Ｙｅｓ）、かつ対象のメモリチップ１００への最後に実行されたアクセスに続くアクセスが予定されていない場合（Ｓ２０５：Ｎｏ）、Ｓ２０４およびＳ２０５を再び実行する。
【０１４０】
遷移可能条件が成立していない場合（Ｓ２０４：Ｎｏ）、または対象のメモリチップ１００へのアクセスを実行する場合（Ｓ２０５：Ｙｅｓ）、メモリコントローラ２００は、対象のメモリチップにＲＳ終了コマンドを送信する（Ｓ２０６）。対象のメモリチップ１００がＲＳ終了コマンドを受信すると、シーケンサ１１４は、第２レギュレータ１１６２に、電圧Ｖｒｓの生成を停止させる。これによって、各メモリセルアレイ１２１は、ＲＳ状態からＮＳ状態に遷移する。
【０１４１】
Ｓ２０６の後、メモリコントローラ２００は、Ｓ２０１の処理を実行する。
【０１４２】
図１３は、第１の実施形態の、ＲＳ状態において各部位に印加される電圧の波形の一例を説明するための図である。
【０１４３】
メモリチップ１００がＲＳ開始コマンドを受信すると、そのメモリチップ１００に具備されるシーケンサ１１４は、まず、選択ゲート線ＳＧＤへの電圧Ｖｓｇの印加を開始する（時刻ｔ０）。続いて、シーケンサ１１４は、全てのワード線ＷＬへの電圧Ｖｒｓの印加を開始する（時刻ｔ１）。そして、シーケンサ１１４は、選択ゲート線ＳＧＳへの電圧Ｖｓｇの印加を開始する（時刻ｔ３）。これによって、メモリセルアレイ１２１がＲＳ状態となる。
【０１４４】
なお、電圧Ｖｓｇの電圧値は、例えば４Ｖである。電圧Ｖｓｇの電圧値は、これに限定されない。
【０１４５】
メモリチップ１００がＲＳ終了コマンドを受信すると、シーケンサ１１４は、まず、全てのワード線ＷＬへの電圧Ｖｒｓの印加を終了する（時刻ｔ４）。これによって、メモリセルアレイ１２１がＲＳ状態からＮＳ状態に遷移する。続いて、シーケンサ１１４は、選択ゲート線ＳＧＤ、ＳＧＳへの電圧Ｖｓｇの印加を終了する（時刻ｔ５）。
【０１４６】
なお、図１３に示される波形は、あくまでも一例である。各種電圧の印加の開始のタイミングおよび終了のタイミングは、図１３に示される例に限定されない。
【０１４７】
図１４は、第１の実施形態のメモリコントローラ２００が各メモリチップ１００との情報の送受信のタイミングと、メモリセルアレイ１２１の状態遷移のタイミングと、の一例を説明するための図である。本図には、メモリコントローラ２００とメモリチップ１００−０との情報の送受信のタイミングを示すタイミングチャートと、メモリコントローラ２００とメモリチップ１００−１との情報の送受信のタイミングを示すタイミングチャートと、メモリチップ１００−０のメモリセルアレイ１２１の状態を示す図と、メモリチップ１００−１のメモリセルアレイ１２１の状態を示す図と、が本図の上方から下方に向かってこの順番で配列されている。
【０１４８】
また、各タイミングチャートでは、ＩＯ信号線の状態とＲｙ／Ｂｙ信号線の状態とが重ねて図示されている。
【０１４９】
また、各メモリセルアレイ１２１の状態を示す図では、メモリセルアレイ１２１がＲＳ状態にある期間は、斜線のハッチングが施されたバーによって示されている。メモリセルアレイ１２１がＮＳ状態にある期間は、白抜きのバーによって示されている。
【０１５０】
本図の例によれば、メモリチップ１００−０に対し、メモリコントローラ２００は、最初に、電圧Ｖｒｓを設定するセットフィーチャーコマンドを送信する（Ｓ４０１）。続いて、メモリコントローラ２００は、リードコマンドを送信し（Ｓ４０２）、メモリチップ１００−０の処理回路１１０は、リードコマンドに応じてリード動作を実行する。リード動作の実行中、Ｒｙ／Ｂｙ信号線の状態は、ビジー状態に維持される。リード動作が終了すると、メモリコントローラ２００は、メモリチップ１００−０からデータを取得する（Ｓ４０３）。なお、図１４では、メモリチップ１００からデータを取得する処理は、Doutと表記されている。
【０１５１】
データの取得が完了すると、メモリコントローラ２００は、ＲＳ開始コマンドを送信する（Ｓ４０４）。メモリチップ１００−０の処理回路１１０は、ＲＳ開始コマンドに応じて、メモリチップ１００−０の２つのメモリセルアレイ１２１を、ＮＳ状態からＲＳ状態に遷移させる。
【０１５２】
続いて、メモリコントローラ２００は、ＲＳ終了コマンドを送信する（Ｓ４０５）。メモリチップ１００−０の処理回路１１０は、ＲＳ終了コマンドに応じて、メモリチップ１００−０の２つのメモリセルアレイ１２１を、ＲＳ状態からＮＳ状態に遷移させる。
【０１５３】
ＲＳ終了コマンドの送信後、メモリコントローラ２００は、プログラムコマンドを送信する（Ｓ４０６）。メモリチップ１００−０の処理回路１１０は、プログラムコマンドに応じてプログラム動作を実行する。プログラム動作の実行中、Ｒｙ／Ｂｙ信号線の状態は、ビジー状態に維持される。
【０１５４】
プログラム動作が完了すると、メモリコントローラ２００は、ＲＳ開始コマンドを送信する（Ｓ４０７）。メモリチップ１００−０の処理回路１１０は、ＲＳ開始コマンドに応じて、メモリチップ１００−０の２つのメモリセルアレイ１２１を、ＮＳ状態からＲＳ状態に遷移させる。
【０１５５】
続いて、メモリコントローラ２００は、ＲＳ終了コマンドを送信する（Ｓ４０８）。メモリチップ１００−０の処理回路１１０は、ＲＳ終了コマンドに応じて、メモリチップ１００−０の２つのメモリセルアレイ１２１をＲＳ状態からＮＳ状態に遷移させる。
【０１５６】
ＲＳ終了コマンドの送信後、メモリコントローラ２００は、イレースコマンドを送信する（Ｓ４０９）。メモリチップ１００−０の処理回路１１０は、イレースコマンドに応じてイレース動作を実行する。イレース動作の実行中、Ｒｙ／Ｂｙ信号線の状態は、ビジー状態に維持される。
【０１５７】
イレース動作が完了すると、メモリコントローラ２００は、ＲＳ開始コマンドを送信する（Ｓ４１０）。メモリチップ１００−０の処理回路１１０は、ＲＳ開始コマンドに応じて、メモリチップ１００−０の２つのメモリセルアレイ１２１をＮＳ状態からＲＳ状態に遷移させる。
【０１５８】
メモリチップ１００−１に対しても、メモリコントローラ２００は、最初に、電圧Ｖｒｓを設定するセットフィーチャーコマンドを送信する（Ｓ４２１）。続いて、メモリコントローラ２００は、リードコマンドを送信し（Ｓ４２２）、メモリチップ１００−１の処理回路１１０は、リードコマンドに応じてリード動作を実行する。リード動作の実行中、Ｒｙ／Ｂｙ信号線の状態は、ビジー状態に維持される。リード動作が終了すると、メモリコントローラ２００は、メモリチップ１００−１からデータを取得する（Ｓ４２３）。
【０１５９】
データの取得が完了すると、メモリコントローラ２００は、ＲＳ開始コマンドを送信する（Ｓ４２４）。メモリチップ１００−１の処理回路１１０は、ＲＳ開始コマンドに応じて、メモリチップ１００−１の２つのメモリセルアレイ１２１をＮＳ状態からＲＳ状態に遷移させる。
【０１６０】
続いて、メモリコントローラ２００は、ＲＳ終了コマンドを送信する（Ｓ４２５）。メモリチップ１００−１では、処理回路１１０は、ＲＳ終了コマンドに応じて、メモリチップ１００−１の２つのメモリセルアレイ１２１を、ＲＳ状態からＮＳ状態に遷移させる。
【０１６１】
ＲＳ終了コマンドの送信後、メモリコントローラ２００は、イレースコマンドを送信する（Ｓ４２６）。メモリチップ１００−１の処理回路１１０は、イレースコマンドに応じてイレース動作を実行する。イレース動作の実行中、Ｒｙ／Ｂｙ信号線の状態は、ビジー状態に維持される。
【０１６２】
イレース動作が完了すると、メモリコントローラ２００は、ＲＳ開始コマンドを送信する（Ｓ４２７）。メモリチップ１００−１の処理回路１１０は、ＲＳ開始コマンドに応じて、メモリチップ１００−１の２つのメモリセルアレイ１２１を、ＮＳ状態からＲＳ状態に遷移させる。
【０１６３】
続いて、メモリコントローラ２００は、ＲＳ終了コマンドを送信する（Ｓ４２８）。メモリチップ１００−１の処理回路１１０は、ＲＳ終了コマンドに応じて、メモリチップ１００−１の２つのメモリセルアレイ１２１を、ＲＳ状態からＮＳ状態に遷移させる。
【０１６４】
ＲＳ終了コマンドの送信後、メモリコントローラ２００は、プログラムコマンドを送信する（Ｓ４２９）。メモリチップ１００−１の処理回路１１０は、プログラムコマンドに応じてイレース動作を実行する。プログラム動作の実行中、Ｒｙ／Ｂｙ信号線の状態は、ビジー状態に維持される。
【０１６５】
プログラム動作が完了すると、メモリコントローラ２００は、ＲＳ開始コマンドを送信する（Ｓ４３０）。メモリチップ１００−１の処理回路１１０は、ＲＳ開始コマンドに応じて、メモリチップ１００−１の２つのメモリセルアレイ１２１をＮＳ状態からＲＳ状態に遷移させる。
【０１６６】
このように、メモリコントローラ２００は、各メモリチップ１００に対し、ＲＳ開始コマンドおよびＲＳ終了コマンドを含む各種のコマンドを非同期に送信することができる。これによって、メモリコントローラ２００は、メモリセルアレイ１２１の状態の遷移をメモリチップ１００単位で制御することが可能である。
【０１６７】
図１５は、第１の実施形態にかかるＲＳ開始コマンドおよびＲＳ終了コマンドが送信される際の、各種の信号線の状態の遷移の例を示す図である。また、図１６は、第１の実施形態にかかる、電圧Ｖｒｓを設定するためのセットフィーチャーコマンドが送信される際の、各種の信号線の状態の遷移の例を示す図である。
【０１６８】
図１５および図１６に示される例では、ＣＬＥ信号およびＡＬＥ信号は、正論理で遷移し、ＷＥ信号およびＲＥ信号は、負論理で遷移する。また、ＩＯ信号は、一例として、８ビットのビット幅を有する。なお、各信号の遷移の論理は上記に限定されない。また、ＩＯ信号のビット幅は上記に限定されない。
【０１６９】
図１５に示されるように、ＲＳ開始コマンドおよびＲＳ終了コマンドの送信の際には、ＩＯ信号線にはＲＳ開始コマンドまたはＲＳ終了コマンドを示すコマンドコードが転送される。当該コマンドコードが転送されている期間には、ＣＬＥ信号は、Ｈｉｇｈステートに維持され、ＷＥ信号は、Ｌｏｗステートに維持される。コマンドが転送されていない期間において、ＣＬＥ信号およびＡＬＥ信号は、Ｌｏｗステートに維持され、ＷＥ信号およびＲＥ信号はＨｉｇｈステートに維持される。ＡＬＥ信号およびＲＥ信号のステートは、ＩＯ信号線にコマンドコードが送信されているか否かにかかわらず変化しない。
【０１７０】
コマンドユーザインタフェース１１２は、ＣＬＥ信号がＨｉｇｈステートに維持されている期間に、ＩＯ信号線に転送されてくる情報をコマンドとして取得する。
【０１７１】
図１６に示されるように、電圧Ｖｒｓを設定するためのセットフィーチャーコマンドの際には、ＩＯ信号線にはセットフィーチャーコマンドを示すコマンドコードと、電圧Ｖｒｓの設定値（Vol.  Value）と、が転送される。コマンドコードが転送されている期間には、ＣＬＥ信号は、Ｈｉｇｈステートに維持され、ＷＥ信号は、Ｌｏｗステートに維持される。電圧Ｖｒｓの設定値が転送されている期間には、ＣＬＥ信号およびＷＥ信号は、Ｌｏｗステートに維持される。コマンドコードや電圧Ｖｒｓの設定値が転送されていない期間において、ＣＬＥ信号およびＡＬＥ信号は、Ｌｏｗステートに維持され、ＷＥ信号およびＲＥ信号はＨｉｇｈステートに維持される。ＡＬＥ信号およびＲＥ信号のステートは、ＩＯ信号線にコマンドコードや電圧Ｖｒｓの設定値が送信されているか否かにかかわらず変化しない。
【０１７２】
コマンドユーザインタフェース１１２は、ＣＬＥ信号がＨｉｇｈステートに維持され、かつＷＥ信号がＬｏｗステートに維持されている期間に、ＩＯ信号線に転送されてくるコマンドコードを取得する。また、コマンドユーザインタフェース１１２は、ＣＬＥ信号およびＡＬＥ信号がともにＬｏｗステートに維持され、かつＷＥ信号がＬｏｗステートに維持されている期間に、ＩＯ信号線に転送されてくる電圧Ｖｒｓの設定値を取得する。
【０１７３】
以上述べたように、第１の実施形態によれば、メモリコントローラ２００は、メモリチップ１００の処理回路１１０にメモリセルアレイ１２１に対するアクセス（第１のアクセス）を実行させる。メモリコントローラ２００は、メモリセルアレイ１２１への第１のアクセスが完了した後に、メモリチップ１００にＲＳ開始コマンドを送信し、処理回路１１０に第１のアクセスの次の第２のアクセスを実行させる前に、メモリチップ１００にＲＳ終了コマンドを送信する。処理回路１１０は、ＲＳ開始コマンドに応じてメモリセルアレイ１２１が備える複数のワード線ＷＬへの電圧Ｖｒｓの印加を開始し、ＲＳ終了コマンドに応じてメモリセルアレイ１２１が備える複数のワード線ＷＬへの電圧Ｖｒｓの印加を終了する。
【０１７４】
複数のワード線ＷＬへの電圧Ｖｒｓの印加によって、複数のワード線ＷＬに接続された各メモリセルの電荷蓄積層１６からの電荷のリークが抑制されるので、データリテンションを長くすることが可能となる。
【０１７５】
また、処理回路１１０は、リード動作を実行可能に構成されている。処理回路１１０は、リード動作では、選択ワード線ＷＬ、つまりリード対象のメモリセルが接続されたワード線ＷＬに判定電圧（Ｖｒａ〜Ｖｒｇ）を印加するとともに、非選択ワード線ＷＬ、つまりリード対象でないメモリセルが接続されたワード線ＷＬにメモリセルをオンするための電圧Ｖｒｅａｄを印加する。そして、電圧Ｖｒｓは、電圧Ｖｒｅａｄよりも低い。
【０１７６】
これによって、電荷蓄積層１６への電荷の注入をできるだけ抑制しながら、データリテンションを長くすることができる。
【０１７７】
なお、処理回路１１０は、判定電圧を生成するように構成された第１レギュレータ１１６１と、電圧Ｖｒｅａｄおよび電圧Ｖｒｓを生成するように構成された第２レギュレータ１１６２と、を備える。
【０１７８】
また、メモリシステム１は、温度センサ２５０をさらに備える。メモリコントローラ２００は、ＲＳ開始コマンドを送信するか否かを、温度センサ２５０による検出値に基づいて決定する。
【０１７９】
これによって、メモリコントローラ２００がメモリセルアレイ１２１へのアクセスの完了後に例外なくＲＳ開始コマンドを送信するように構成された場合に比べて、消費電力の増大を抑制することが可能となる。
【０１８０】
また、メモリコントローラ２００は、ＲＳ開始コマンドを送信するか否かを、低消費電力モード要求をホスト２から受信したか否かに基づいて決定する。
【０１８１】
これによって、低消費電力モード要求に応じて消費電力を低減することが可能となる。
【０１８２】
また、メモリコントローラ２００は、Ｐ／Ｅサイクルの実行回数をカウントし、ＲＳ開始コマンドを送信するか否かを、Ｐ／Ｅサイクルの実行回数のカウント値に基づいて決定する。
【０１８３】
これによって、メモリコントローラ２００がメモリセルアレイ１２１へのアクセスの完了後に例外なくＲＳ開始コマンドを送信するように構成された場合に比べて、消費電力の増大を抑制することが可能となる。
【０１８４】
また、メモリコントローラ２００は、電圧Ｖｒｓを設定するためのセットフィーチャーコマンドを送信し、処理回路１１０は、当該セットフィーチャーコマンドによって設定された値の電圧を電圧Ｖｒｓとして印加する。
【０１８５】
これによって、メモリコントローラ２００は、電圧Ｖｒｓの値を状況に応じて変更することが可能である。
【０１８６】
なお、以上では、電圧Ｖｒｓの値の設定にセットフィーチャーコマンドが使用される例について、説明した。電圧Ｖｒｓの値の設定に使用されるコマンドはこれに限定されない。電圧Ｖｒｓの値の設定のための専用のコマンドが用意されてもよい。電圧Ｖｒｓの設定値は、ＲＳ開始コマンドの引数として転送されてもよい。
【０１８７】
また、図９を用いて説明したように、メモリコントローラ２００は、温度センサ２５０による検出値に基づいて電圧Ｖｒｓの設定値を算出してもよい。
【０１８８】
また、図１０を用いて説明したように、メモリコントローラ２００は、Ｐ／Ｅサイクルの実行回数のカウント値に基づいて電圧Ｖｒｓの設定値を算出してもよい。
【０１８９】
なお、それぞれ異なる優先度が関連付けられた複数の低消費電力モードが定義されている場合がある。メモリコントローラ２００は、低消費電力モード要求を受信した場合であってもＲＳ開始コマンドを送信でき、優先度に基づいて電圧Ｖｒｓの設定値を算出するように構成されてもよい。
【０１９０】
例えば、優先度が高いほど、消費電力を低くすることが要求される。メモリコントローラ２００は、優先度が高いほど電圧Ｖｒｓが低くなるように、電圧Ｖｒｓの設定値を算出すれば、要求された低消費電力を実現しつつデータリテンションを長くすることが可能となる。
【０１９１】
（第２の実施形態）
第１の実施形態では、メモリセルアレイ１２１の状態の遷移がメモリチップ１００単位で制御される例について説明した。メモリセルアレイ１２１の状態の遷移の単位は、上記に限定されない。本実施形態では、メモリセルアレイ１２１の状態の遷移がプレーン１２０単位で制御される例について説明する。
【０１９２】
図１７は、第２の実施形態のメモリコントローラ２００が各メモリチップ１００との情報の送受信のタイミングと、メモリセルアレイ１２１の状態遷移のタイミングと、の一例を説明するための図である。本図には、メモリコントローラ２００とメモリチップ１００−０との情報の送受信のタイミングを示すタイミングチャートと、メモリコントローラ２００とメモリチップ１００−１との情報の送受信のタイミングを示すタイミングチャートと、メモリチップ１００−０のプレーン１２０−０に属するメモリセルアレイ１２１の状態を示す図と、メモリチップ１００−０のプレーン１２０−１に属するメモリセルアレイ１２１の状態を示す図と、メモリチップ１００−１のプレーン１２０−０に属するメモリセルアレイ１２１の状態を示す図と、メモリチップ１００−１のプレーン１２０−１に属するメモリセルアレイ１２１の状態を示す図と、が本図の上方から下方に向かってこの順番で配列されている。
【０１９３】
また、各タイミングチャートでは、ＩＯ信号線の状態とＲｙ／Ｂｙ信号線の状態とが重ねて図示されている。
【０１９４】
また、各メモリセルアレイ１２１の状態を示す図では、メモリセルアレイ１２１がＲＳ状態にある期間は、斜線のハッチングが施されたバーによって示されている。メモリセルアレイ１２１がＮＳ状態にある期間は、白抜きのバーによって示されている。
【０１９５】
また、図１７される各タイミングチャートでは、プレーン１２０−０を、Ｐ０と表記する。また、プレーン１２０−１を、Ｐ１と表記する。
【０１９６】
メモリチップ１００−０に対しては、メモリコントローラ２００は、最初に、電圧Ｖｒｓを設定するセットフィーチャーコマンドを送信する（Ｓ５０１）。続いて、メモリコントローラ２００は、プレーン１２０−１を対象としたＲＳ開始コマンドを送信する（Ｓ５０２）。メモリチップ１００−０の処理回路１１０は、プレーン１２０−１を対象としたＲＳ開始コマンドに応じて、プレーン１２０−１に属するメモリセルアレイ１２１をＮＳ状態からＲＳ状態に遷移させる。
【０１９７】
続いて、メモリコントローラ２００は、プレーン１２０−０をリードの対象としたリードコマンドを送信し（Ｓ５０３）、メモリチップ１００−０の処理回路１１０は、当該リードコマンドに応じて、プレーン１２０−０に属するメモリセルアレイ１２１に対してリード動作を実行する。リード動作の実行中、Ｒｙ／Ｂｙ信号線の状態は、ビジー状態に維持される。リード動作が終了すると、メモリコントローラ２００は、メモリチップ１００−０からデータを取得する（Ｓ５０４）。
【０１９８】
データの取得が完了すると、メモリコントローラ２００は、プレーン１２０−０を対象としたＲＳ開始コマンドを送信する（Ｓ５０５）。メモリチップ１００−０の処理回路１１０は、プレーン１２０−０を対象としたＲＳ開始コマンドに応じて、プレーン１２０−０に属するメモリセルアレイ１２１をＮＳ状態からＲＳ状態に遷移させる。
【０１９９】
続いて、メモリコントローラ２００は、プレーン１２０−１を対象としたＲＳ終了コマンドを送信する（Ｓ５０６）。メモリチップ１００−０の処理回路１１０は、プレーン１２０−１を対象としたＲＳ終了コマンドに応じて、プレーン１２０−１に属するメモリセルアレイ１２１をＲＳ状態からＮＳ状態に遷移させる。
【０２００】
メモリコントローラ２００は、Ｓ５０６に続いて、プレーン１２０−１を対象としたプログラムコマンドを送信する（Ｓ５０７）。メモリチップ１００−０の処理回路１１０は、当該プログラムコマンドに応じて、プレーン１２０−１に属するメモリセルアレイ１２１に対してプログラム動作を実行する。プログラム動作の実行中、Ｒｙ／Ｂｙ信号線の状態は、ビジー状態に維持される。
【０２０１】
プログラム動作が完了すると、メモリコントローラ２００は、プレーン１２０−１を対象としたＲＳ開始コマンドを再び送信する（Ｓ５０８）。メモリチップ１００−０の処理回路１１０は、プレーン１２０−１を対象としたＲＳ開始コマンドに応じて、プレーン１２０−１に属するメモリセルアレイ１２１を、ＮＳ状態からＲＳ状態に遷移させる。
【０２０２】
続いて、メモリコントローラ２００は、プレーン１２０−０を対象としたＲＳ終了コマンドを送信する（Ｓ５０９）。メモリチップ１００−０の処理回路１１０は、プレーン１２０−０を対象としたＲＳ終了コマンドに応じて、プレーン１２０−１に属するメモリセルアレイ１２１を、ＲＳ状態からＮＳ状態に遷移させる。
【０２０３】
メモリコントローラ２００は、Ｓ５０９に続いて、プレーン１２０−０を対象としたイレースコマンドを送信する（Ｓ５１０）。メモリチップ１００−０の処理回路１１０は、当該イレースコマンドに応じて、プレーン１２０−０に属するメモリセルアレイ１２１に対してイレース動作を実行する。プログラム動作の実行中、Ｒｙ／Ｂｙ信号線の状態は、ビジー状態に維持される。
【０２０４】
メモリチップ１００−１に対しても、メモリコントローラ２００は、最初に、電圧Ｖｒｓを設定するセットフィーチャーコマンドを送信する（Ｓ５２１）。続いて、メモリコントローラ２００は、プレーン１２０−０を対象としたＲＳ開始コマンドを送信する（Ｓ５２２）。メモリチップ１００−１では、処理回路１１０は、プレーン１２０−０を対象としたＲＳ開始コマンドに応じて、プレーン１２０−０に属するメモリセルアレイ１２１を、ＮＳ状態からＲＳ状態に遷移させる。
【０２０５】
続いて、メモリコントローラ２００は、プレーン１２０−１を対象としたイレースコマンドを送信する（Ｓ５２３）。メモリチップ１００−１の処理回路１１０は、当該イレースコマンドに応じて、プレーン１２０−１に属するメモリセルアレイ１２１に対してイレース動作を実行する。イレース動作の実行中、Ｒｙ／Ｂｙ信号線の状態は、ビジー状態に維持される。
【０２０６】
イレース動作が終了すると、メモリコントローラ２００は、プレーン１２０−１を対象としたプログラムコマンドを送信する（Ｓ５２４）。メモリチップ１００−１の処理回路１１０は、当該プログラムコマンドに応じて、プレーン１２０−１に属するメモリセルアレイ１２１に対してプログラム動作を実行する。プログラム動作の実行中、Ｒｙ／Ｂｙ信号線の状態は、ビジー状態に維持される。
【０２０７】
プログラム動作が終了すると、メモリコントローラ２００は、プレーン１２０−１を対象としたＲＳ開始コマンドを送信する（Ｓ５２５）。メモリチップ１００−１の処理回路１１０は、プレーン１２０−１を対象としたＲＳ開始コマンドに応じて、プレーン１２０−１に属するメモリセルアレイ１２１を、ＮＳ状態からＲＳ状態に遷移させる。
【０２０８】
その後、メモリコントローラ２００は、プレーン１２０−０を対象としたＲＳ終了コマンドを送信する（Ｓ５２６）。メモリチップ１００−１の処理回路１１０は、プレーン１２０−０を対象としたＲＳ終了コマンドに応じて、プレーン１２０−０に属するメモリセルアレイ１２１を、ＲＳ状態からＮＳ状態に遷移させる。
【０２０９】
続いて、メモリコントローラ２００は、プレーン１２０−０を対象としたリードコマンドを送信する（Ｓ５２７）。メモリチップ１００−１の処理回路１１０は、当該リードコマンドに応じて、プレーン１２０−０に属するメモリセルアレイ１２１に対してリード動作を実行する。リード動作の実行中、Ｒｙ／Ｂｙ信号線の状態は、ビジー状態に維持される。リード動作が終了すると、メモリコントローラ２００は、メモリチップ１００−１からデータを取得する（Ｓ５２８）。
【０２１０】
データの取得が完了すると、メモリコントローラ２００は、プレーン１２０−０を対象としたＲＳ開始コマンドを送信する（Ｓ５２９）。メモリチップ１００−１の処理回路１１０は、プレーン１２０−０を対象としたＲＳ開始コマンドに応じて、プレーン１２０−０に属するメモリセルアレイ１２１を、ＮＳ状態からＲＳ状態に遷移させる。
【０２１１】
このように、メモリコントローラ２００は、第１の実施形態と同様に、各メモリチップ１００に対し、ＲＳ開始コマンドおよびＲＳ終了コマンドを含む各種のコマンドを非同期に送信することができる。これによって、メモリコントローラ２００は、メモリセルアレイ１２１の状態の遷移をメモリチップ１００単位で制御することが可能である。
【０２１２】
さらに、メモリコントローラ２００は、ＲＳ状態に遷移させるメモリセル１２１を、ＲＳ開始コマンドによってプレーン１２０単位で指定することができる。つまり、メモリコントローラ２００は、メモリセルアレイ１２１の状態の遷移をプレーン１２０単位で制御することが可能である。
【０２１３】
図１８は、第２の実施形態にかかるＲＳ開始コマンドおよびＲＳ終了コマンドが送信される際の、各種の信号線の状態の遷移の例を示す図である。
【０２１４】
図１８に示される例では、ＣＬＥ信号およびＡＬＥ信号は、正論理で遷移し、ＷＥ信号およびＲＥ信号は、負論理で遷移する。また、ＩＯ信号は、一例として、８ビットのビット幅を有する。なお、各信号の遷移の論理は上記に限定されない。また、ＩＯ信号のビット幅は上記に限定されない。
【０２１５】
プレーン１２０単位でメモリセルアレイ１２１の状態の遷移を制御する場合、ＲＳ開始コマンドおよびＲＳ終了コマンドは、プレーン１２０を特定するためのアドレス値を伴う。このアドレス値を、プレーンアドレスと表記する。
【０２１６】
つまり、図１８に示されるように、ＩＯ信号線には、ＲＳ開始コマンドまたはＲＳ終了コマンドを示すコマンドコードと、プレーンアドレスと、が転送される。コマンドコードが転送されている期間には、ＣＬＥ信号は、Ｈｉｇｈステートに維持され、ＷＥ信号は、Ｌｏｗステートに維持される。コマンドユーザインタフェース１１２は、ＣＬＥ信号がＨｉｇｈステートに維持されている期間に、ＩＯ信号線から転送されてくる情報をコマンドとして取得する。
【０２１７】
また、プレーンアドレスが転送されている期間には、ＡＬＥ信号は、Ｈｉｇｈステートに維持され、ＷＥ信号は、Ｌｏｗステートに維持される。コマンドユーザインタフェース１１２は、ＡＬＥ信号がＨｉｇｈステートに維持されている期間に、ＩＯ信号線から転送されてくる情報をアドレスとして取得する。
【０２１８】
このように、第２の実施形態では、メモリチップ１００は、それぞれアドレス値によって特定される複数のプレーン１２０を備える。各プレーン１２０は、メモリセルアレイ１２１を備える。ＲＳ開始コマンドは、１つのプレーン１２０を指定するアドレス値を含む。処理回路１１０は、複数のプレーン１２０のうちのＲＳ開始コマンドに含まれるアドレス値が示すプレーン１２０に属するメモリセルアレイ１２１をＲＳ状態に遷移させる。
【０２１９】
つまり、第２の実施形態のメモリコントローラ２００は、プレーン１２０単位でメモリセルアレイ１２１の状態を制御することができる。
【０２２０】
なお、メモリコントローラ２００は、ブロックＢＬＫ単位でメモリセルアレイ１２１の状態を制御するように構成されてもよい。その場合には、ＲＳ開始コマンドは、ブロックアドレスを含む。
【０２２１】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０２２２】
１  メモリシステム、２  ホスト、１４  導電体、１５  ゲート絶縁膜、１６  電荷蓄積層、１７  ブロック絶縁膜、１００  メモリチップ、１１０  処理回路、１１１  ＩＯインタフェース、１１２  コマンドユーザインタフェース、１１３  シリアルアクセスコントローラ、１１４  シーケンサ、１１５  オシレータ、１１６，１１７  電圧発生回路、１１８  ＣＧドライバ、１２０，１２０−０，１２０−１  プレーン、１２１  メモリセルアレイ、１２２  センスアンプ、１２３  ページバッファ、１２４  ロウデコーダ、２００  メモリコントローラ、２５０  温度センサ、１１６１  第１レギュレータ、１１６２  第２レギュレータ、１１６３  第３レギュレータ。
【図１】
2020144668.tif 000003
【図２】
2020144668.tif 000004
【図３】
2020144668.tif 000005
【図４】
2020144668.tif 000006
【図５】
2020144668.tif 000007
【図６】
2020144668.tif 000008
【図７】
2020144668.tif 000009
【図８】
2020144668.tif 000010
【図９】
2020144668.tif 000011
【図１０】
2020144668.tif 000012
【図１１】
2020144668.tif 000013
【図１２】
2020144668.tif 000014
【図１３】
2020144668.tif 000015
【図１４】
2020144668.tif 000016
【図１５】
2020144668.tif 000017
【図１６】
2020144668.tif 000018
【図１７】
2020144668.tif 000019
【図１８】
2020144668.tif 000020