(57)【要約】【課題】温度較差による読み出し精度の低下を抑制すること。【解決手段】実施形態のメモリシステムは、複数のメモリセルが配列された複数のブロックを有する不揮発性メモリと、不揮発性メモリに接続され、不揮発性メモリの動作を制御するメモリコントローラと、を備え、メモリコントローラは、不揮発性メモリの温度が或る値未満である場合には、不揮発性メモリに対して昇温コマンドを発行し、不揮発性メモリは、昇温コマンドに応じて或るブロック内のメモリセルに接続されるビット線に電流を流す。【選択図】図１
2020035501.tif 000002
【特許請求の範囲】
【請求項１】
複数のメモリセルが配列された複数のブロックを有する不揮発性メモリと、
前記不揮発性メモリに接続され、前記不揮発性メモリの動作を制御するメモリコントローラと、を備え、
前記メモリコントローラは、
前記不揮発性メモリの温度が或る値未満である場合には、前記不揮発性メモリに対して昇温コマンドを発行し、
前記不揮発性メモリは、
前記昇温コマンドに応じて或るブロック内の前記メモリセルに接続されるビット線に電流を流す、
メモリシステム。
【請求項２】
前記不揮発性メモリは、
前記昇温コマンドに応じて前記ブロック内の前記メモリセルに接続されるワード線のうち少なくとも一部のワード線を非選択とする、
請求項１に記載のメモリシステム。
【請求項３】
前記不揮発性メモリは、
前記昇温コマンドに応じて前記ブロック内の前記メモリセルに接続される全てのワード線を非選択とする、
請求項１に記載のメモリシステム。
【請求項４】
前記不揮発性メモリは、
前記昇温コマンドに応じて、前記ブロック内の前記メモリセルに接続される全てのワード線に対し、前記メモリセルが保持するデータに関係なく前記メモリセルがオンする電圧を印加する、
請求項３に記載のメモリシステム。
【請求項５】
前記不揮発性メモリは、
前記昇温コマンドに応じて、前記ブロック内の前記メモリセルに接続される全てのワード線に対し、データの読み出し時に非選択のワード線に印加する電圧よりも高い電圧を印加する、
請求項３に記載のメモリシステム。
【請求項６】
前記不揮発性メモリは、
前記昇温コマンドに応じて、データの読み出し時に前記ビット線に印加する電圧よりも高い電圧を前記ビット線に印加する、
請求項１に記載のメモリシステム。
【請求項７】
前記不揮発性メモリは、
前記温度が前記値以上となるまで前記ビット線に電流を流し続ける、
請求項１に記載のメモリシステム。
【請求項８】
前記不揮発性メモリは、
一定期間、前記ビット線に電流を流し続ける、
請求項１に記載のメモリシステム。
【請求項９】
前記メモリコントローラは、
前記不揮発性メモリが前記ビット線に電流を流す間、前記不揮発性メモリの温度を示す温度情報を取得し、前記温度情報で示される前記温度が前記値以上となるまで前記不揮発性メモリに前記ビット線に電流を流し続けさせる、
請求項８に記載のメモリシステム。
【請求項１０】
前記ブロックはフリーブロックまたはバッドブロックの中から選択される、
請求項１に記載のメモリシステム。
【請求項１１】
前記メモリセルは、多値を記憶するメモリセルである、
請求項１に記載のメモリシステム。
【請求項１２】
複数のメモリセルが配列された複数のブロックと前記ブロックのそれぞれに帰属する回路を有する不揮発性メモリと、
前記不揮発性メモリに接続され、前記不揮発性メモリの動作を制御するメモリコントローラと、を備え、
前記メモリコントローラは、
前記不揮発性メモリの温度を示す温度情報を取得し、前記温度が或る値未満である場合には、前記不揮発性メモリに対して昇温コマンドを発行し、
前記不揮発性メモリは、
前記不揮発性メモリの或るブロックに帰属する前記回路を、前記昇温コマンドに応じて繰り返し動作させる、
メモリシステム。
【請求項１３】
前記回路は入出力部を含み、
前記不揮発性メモリは、
前記昇温コマンドに応じて前記入出力部にデータ転送を繰り返させる、
請求項１２に記載のメモリシステム。
【請求項１４】
前記回路は変換部を含み、
前記不揮発性メモリは、
前記昇温コマンドに応じて前記変換部にシリアル変換及びパラレル変換を繰り返し行わせる、
請求項１２に記載のメモリシステム。
【請求項１５】
前記回路はセンスアンプモジュールを含み、
前記不揮発性メモリは、
前記昇温コマンドに応じて前記センスアンプモジュール内の複数ラッチ間でデータの入れ替えを繰り返し行わせる、
請求項１２に記載のメモリシステム。
【請求項１６】
それぞれが不揮発性メモリ及び前記不揮発性メモリの動作を制御するメモリコントローラを有する複数のメモリシステムと、
前記複数のメモリシステムを制御するストレージ制御部と、を備え、
前記ストレージ制御部は、
ホストからの要求に基づく前記不揮発性メモリへのアクセスを要するコマンドを受理していない前記複数のメモリシステムのうちの少なくとも１つのメモリシステムを冷却し、前記ホストからの要求に基づく前記不揮発性メモリへのアクセスを要するコマンドを受理した前記複数のメモリシステムのうちの少なくとも１つのメモリシステムの前記メモリコントローラに、前記不揮発性メモリを昇温させるように要求する、
ストレージシステム。
【請求項１７】
前記メモリコントローラは、
前記コマンドを受理したときに、前記不揮発性メモリの温度が或る値未満である場合には、前記不揮発性メモリに対して昇温コマンドを発行し、
前記不揮発性メモリは、
複数のメモリセルが配列された複数のブロックを有し、前記昇温コマンドに応じて前記複数のブロックのうちの或るブロック内の前記メモリセルに接続されるビット線に電流を流す、
請求項１６に記載のストレージシステム。
【請求項１８】
前記不揮発性メモリは、
前記昇温コマンドに応じて前記ブロック内の前記メモリセルに接続される全てのワード線を非選択とする、
請求項１７に記載のストレージシステム。
【請求項１９】
前記不揮発性メモリは、
前記昇温コマンドに応じて、前記ブロック内の前記メモリセルに接続される全てのワード線に対し、前記メモリセルが保持するデータに関係なく前記メモリセルがオンする電圧を印加する、
請求項１８に記載のストレージシステム。
【請求項２０】
前記不揮発性メモリは、複数のメモリセルが配列された複数のブロックと前記複数のブロックのそれぞれに帰属する回路を有し、
前記メモリコントローラは、
前記コマンドを受理したときに、前記不揮発性メモリの温度が或る値未満である場合には、前記不揮発性メモリに対して昇温コマンドを発行し、
前記不揮発性メモリは、
前記複数のブロックのうちの或るブロックに帰属する前記回路を、前記昇温コマンドに応じて繰り返し動作させる、
請求項１６に記載のストレージシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、メモリシステム及びストレージシステムに関する。
【背景技術】
【０００２】
近年、不揮発性メモリであるＮＡＮＤ型フラッシュメモリの大容量化が進行し、このＮＡＮＤ型フラッシュメモリを搭載したメモリシステムとして、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）が注目されている。
【０００３】
従来から、ＮＡＮＤ型フラッシュメモリ等の不揮発性メモリは、信頼性が使用温度に依存する特性を有する。例えば、不揮発性メモリが低温状態の場合と常温状態の場合とでは、不揮発性メモリのセルの閾値電圧分布のシフト量が大きく異なることがある。このため、書き込み時と読み出し時との温度が異なる場合、温度較差が生じてデータが読み出せないことがある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許出願公開第２０１６／０２３９２３５号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００５】
一つの実施形態は、温度較差による読み出し精度の低下を抑制することができるメモリシステム及びストレージシステムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
実施形態のメモリシステムは、複数のメモリセルが配列された複数のブロックを有する不揮発性メモリと、前記不揮発性メモリに接続され、前記不揮発性メモリの動作を制御するメモリコントローラと、を備え、前記メモリコントローラは、前記不揮発性メモリの温度が或る値未満である場合には、前記不揮発性メモリに対して昇温コマンドを発行し、前記不揮発性メモリは、前記昇温コマンドに応じて或るブロック内の前記メモリセルに接続されるビット線に電流を流す。
【図面の簡単な説明】
【０００７】
【図１】図１は、実施形態１にかかるメモリシステムの概略構成例を示すブロック図である。
【図２】図２は、実施形態にかかるメモリコントローラ２の制御部２３の機能ブロックを示す図である。
【図３】図３は、実施形態１にかかるＮＡＮＤメモリが備えるメモリチップの構成例を示すブロック図である。
【図４】図４は、実施形態１にかかるＮＡＮＤメモリのメモリチップに含まれる１個のブロックの構成例を示す回路図である。
【図５】図５は、実施形態１にかかるメモリセルの閾値分布を示す図である。
【図６】図６は、温度交差を有するメモリセルの閾値分布を示す図である。
【図７】図７は、実施形態１にかかるＮＡＮＤメモリの昇温動作について説明する模式図である。
【図８】図８は、実施形態１にかかるメモリコントローラが昇温コマンドを発行した場合における各種信号線の波形の一例を示す図である。
【図９】図９は、実施形態１にかかるメモリシステムにおける昇温動作処理の手順の一例を示すフロー図である。
【図１０】図１０は、実施形態２にかかるＮＡＮＤメモリが備えるメモリチップの構成例を示すブロック図である。
【図１１】図１１は、実施形態２の変形例１にかかるＮＡＮＤメモリが備えるメモリチップの構成例を示すブロック図である。
【図１２】図１２は、実施形態２の変形例２にかかるＮＡＮＤメモリが備えるメモリチップの構成例を示すブロック図である。
【図１３】図１３は、実施形態３にかかるストレージシステムの概略構成を示すブロック図である。
【発明を実施するための形態】
【０００８】
以下に、本発明につき図面を参照しつつ詳細に説明する。なお、下記の実施形態により、本発明が限定されるものではない。また、下記実施形態における構成要素には、当業者が容易に想定できるものあるいは実質的に同一のものが含まれる。
【０００９】
［実施形態１］
図１〜図９を用いて、実施形態１のメモリシステム１について説明する。
【００１０】
（メモリシステムの構成例）
図１は、実施形態１にかかるメモリシステム１の概略構成例を示すブロック図である。図１に示すように、メモリシステム１は、メモリコントローラ２と不揮発性メモリとしてのＮＡＮＤ型フラッシュメモリ３（以下、単にＮＡＮＤメモリ３ともいう）とを備える。
【００１１】
メモリシステム１は、メモリコントローラ２とＮＡＮＤメモリ３とが１つのパッケージとして構成されるメモリカード等であってもよいし、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等であってもよい。メモリシステム１は、ホスト４と接続可能である。ホスト４は、例えば、パーソナルコンピュータ、サーバ、ストレージボックスなどの情報処理装置、携帯電話、撮像装置であってもよいし、タブレットコンピュータやスマートフォンなどの携帯端末であってもよいし、ゲーム機器であってもよいし、カーナビゲーションシステムなどの車載端末であってもよい。
【００１２】
ＮＡＮＤメモリ３は、データを不揮発に記憶する不揮発性メモリである。以下の説明では、不揮発性メモリとして２次元（平面）構造のＮＡＮＤメモリ３が用いられた場合について説明するが、不揮発性メモリの例はこれに限られない。不揮発性メモリは、例えば、ＮＯＲ型のフラッシュメモリ、３次元（立体）構造フラッシュメモリ等であってもよい。
【００１３】
ＮＡＮＤメモリ３は、１つ以上のＮＡＮＤパッケージ３０ａ〜３０ｄを含む。図１には４つのＮＡＮＤパッケージ３０ａ〜３０ｄを示すが、ＮＡＮＤパッケージ３０ａ〜３０ｄの数は４つに限られず、１つ以上であればよい。個々のＮＡＮＤパッケージ３０ａ〜３０ｄを区別しないときは、単にＮＡＮＤパッケージ３０とも記載する。
【００１４】
ＮＡＮＤパッケージ３０の各々は、１つ以上のメモリチップ３１ａ〜３１ｃを備える。図１には３つのメモリチップ３１ａ〜３１ｃを示すが、メモリチップ３１ａ〜３１ｃの数は３つに限られず、１つ以上であればよい。個々のメモリチップ３１ａ〜３１ｃを区別しないときは、単にメモリチップ３１とも記載する。
【００１５】
メモリチップ３１の各々は、メモリチップ３１の温度を検出する温度センサ３１ｓを備えている。温度センサ３１ｓは、例えばメモリコントローラ２からのコマンドに応じて、検出したメモリチップ３１の温度を温度情報としてメモリコントローラ２に送信する。
【００１６】
メモリコントローラ２は、例えばＳｏＣ（Ｓｙｓｔｅｍ−Ｏｎ−ａ−Ｃｈｉｐ）として構成される半導体集積回路である。メモリコントローラ２の各種機能のうちの一部または全部は、ファームウェアを実行するＣＰＵによって、または、ハードウェア回路によって実現されてよい。メモリコントローラ２は、ホスト４からの書き込みコマンドに従ってＮＡＮＤメモリ３への書き込みを制御する。また、ホスト４からの読み出しコマンドに従ってＮＡＮＤメモリ３からの読み出しを制御する。
【００１７】
メモリコントローラ２は、ホストインタフェース（ホストＩ／Ｆ）２１、メモリインタフェース（メモリＩ／Ｆ）２２、制御部２３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２４、およびデータバッファ２５を備える。ホストＩ／Ｆ２１、メモリＩ／Ｆ２２、制御部２３、およびデータバッファ２５は、内部バス２０で相互に接続されている。
【００１８】
ホストＩ／Ｆ２１は、ホスト４との間のインタフェース規格に従った処理を実施し、ホスト４から受信したアクセスコマンド（命令）、書き込み対象のデータ（ユーザデータ）などを内部バス２０に出力する。また、ホストＩ／Ｆ２１は、ＮＡＮＤメモリ３から読み出されたデータ（ユーザデータ）、制御部２３からの応答などをホスト４へ送信する。
【００１９】
メモリＩ／Ｆ２２は、制御部２３の指示に基づいて、ＮＡＮＤメモリ３への書き込み処理を行う。また、メモリＩ／Ｆ２２は、制御部２３の指示に基づいて、ＮＡＮＤメモリ３からの読み出し処理を行う。
【００２０】
データバッファ２５は、メモリコントローラ２がホスト４から受信したデータをＮＡＮＤメモリ３へ記憶するまでに一時格納する。また、データバッファ２５は、ＮＡＮＤメモリ３から読み出されたデータをホスト４へ送信するまでに一時格納する。データバッファ２５には、例えば、ＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）やＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などの汎用メモリを用いることができる。
【００２１】
制御部２３は、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）として構成される。制御部２３は、ファームウェアプログラムに基づいて動作する。例えば、ファームウェアプログラムはＮＡＮＤメモリ３に、メモリシステム１の製造時または出荷時において予め格納されている。制御部２３は、起動時に、メモリコントローラ２が備えるＲＡＭ２４にＮＡＮＤメモリ３からファームウェアプログラムをロードする。制御部２３は、ＲＡＭ２４にロードされたファームウェアプログラムを実行することによって、各種機能を実現する。
【００２２】
（制御部の機能構成例）
図２は、実施形態にかかるメモリコントローラ２の制御部２３の機能ブロックを示す図である。図２に示すように、制御部２３は、例えばＣＰＵによって実現される機能として、アクセス処理部２３ａ、アドレス管理部２３ｂ、温度情報取得部２３ｃ、および温度情報判定部２３ｄを備える。これらの機能部により、制御部２３は、メモリシステム１の各構成要素を統括的に制御する。
【００２３】
アクセス処理部２３ａは、ホスト４からホストＩ／Ｆ２１経由でアクセスコマンドを受けた場合に、そのアクセスコマンドに従った制御を行う。ホスト４からのアクセスコマンドは、例えば、書き込みコマンド、読み出しコマンド、消去コマンド等である。例えば、アクセス処理部２３ａは、ホスト４からのアクセスコマンドに従って、ＮＡＮＤメモリ３への書き込みをメモリＩ／Ｆ２２へ指示する。また、アクセス処理部２３ａは、ホスト４からのアクセスコマンドに従って、ＮＡＮＤメモリ３からの読み出しをメモリＩ／Ｆ２２へ指示する。
【００２４】
アドレス管理部２３ｂは、ホスト４から書き込みコマンドを受信した場合、データバッファ２５に蓄積されるデータに対して、ＮＡＮＤメモリ３上の格納領域（メモリ領域）を決定する。ホスト４から受信したデータの論理アドレスと該データが格納されたＮＡＮＤメモリ３上の格納領域を示す物理アドレスとの対応はアドレス変換テーブルとして格納される。アドレス管理部２３ｂは、アドレス変換テーブルにより、データの書き込み先を管理する。
【００２５】
また、アドレス管理部２３ｂは、ホスト４から読み出しコマンドを受信した場合、読み出しコマンドにより指定された論理アドレスを上述のアドレス変換テーブルを用いて物理アドレスに変換し、該物理アドレスからの読み出しをメモリＩ／Ｆ２２へ指示する。
【００２６】
ＮＡＮＤメモリ３では、一般に、ページと呼ばれるデータ単位で、書き込みおよび読み出しが行われ、ブロックと呼ばれるデータ単位で消去が行われる。本実施形態では、同一のワード線に接続される複数のメモリセルをメモリセルグループと呼ぶ。メモリセルが、１ビットを記憶するＳＬＣ（Ｓｉｎｇｌｅ  Ｌｅｖｅｌ  Ｃｅｌｌ）である場合は、１つのメモリセルグループが１ページに対応する。メモリセルが、多値（２ビット以上のデータ）を記憶するＭＬＣ（Ｍｕｌｔｉｐｌｅ  Ｌｅｖｅｌ  Ｃｅｌｌ）である場合は、１つのメモリセルグループが複数ページに対応する。なお、本説明におけるＭＬＣには、ＴＬＣ（Ｔｒｉｐｌｅ  Ｌｅｖｅｌ  Ｃｅｌｌ）やＱＬＣ（Ｑｕａｄ  Ｌｅｖｅｌ  Ｃｅｌｌ）等も含まれるものとする。また、各メモリセルはワード線に接続されるとともにビット線にも接続される。したがって、各メモリセルは、ワード線を識別するアドレスとビット線を識別するアドレスとで識別することが可能である。
【００２７】
温度情報取得部２３ｃは、メモリＩ／Ｆ２２を介して、ＮＡＮＤメモリ３から、メモリチップ３１ａ〜３１ｃ内の温度を示す温度情報を取得する。なお、本実施形態は、温度の取得手法を、ＮＡＮＤメモリ３から取得する手法に制限するものではなく、メモリコントローラ２に設けられた温度センサから取得しても良い。このように、温度センサは、メモリシステム１のいずれかの箇所に設けることができる。
【００２８】
温度情報判定部２３ｄは、取得した温度情報で示された温度が、所定温度以上であるか否かを判定する。所定温度は、ＮＡＮＤメモリ３の仕様など、実施態様に応じて設定される温度である。
【００２９】
制御部２３は、判定結果に応じて、ＮＡＮＤメモリ３に対する昇温制御を行う。つまり、取得した温度情報で示された温度が所定温度より低いと判定された場合に、アクセス処理部２３ａは、ＮＡＮＤメモリ３が備える所定のメモリチップ３１に対して昇温コマンドを発行する。昇温コマンドの対象となったメモリチップ３１は、昇温動作を行う。昇温動作の詳細については後述する。
【００３０】
（メモリチップの構成例）
図３は、実施形態１にかかるＮＡＮＤメモリ３が備えるメモリチップ３１の構成例を示すブロック図である。実施形態１の各々のメモリチップ３１ａ〜３１ｃは、いずれも同様の構成を備える。
【００３１】
図３に示すように、メモリチップ３１は、例えばプレーンＰＬ１，ＰＬ２、周辺回路ＰＥＲ、及び入出力パッドＩＯＰを備える。ただし、メモリチップ３１内のプレーンＰＬ１，ＰＬ２の数は２つに限られず、３つ以上であってもよい。個々のプレーンＰＬ１，ＰＬ２を区別しないときは、単にプレーンＰＬとも記載する。プレーンＰＬの各々は、セルアレイＣＡ、ロウデコーダＲＤ、センスアンプモジュールＳＡＭ、演算回路ＹＬＯＧ、及びデータレジスタＸＤＬを備えている。
【００３２】
セルアレイＣＡは、不揮発性のメモリセルの集合である複数のブロック（物理ブロック）ＢＬＫを備えている。ブロックＢＬＫはデータの消去単位となり、同一のブロックＢＬＫ内のデータは一括して消去される。ブロックＢＬＫの各々は、メモリセルが直列接続されたＮＡＮＤストリングＮＳ（ＮＳ０，ＮＳ１，ＮＳ２・・・）を備えている。
【００３３】
各メモリセルは、複数のビット線ＢＬと複数のワード線ＷＬとのそれぞれが交差する点に配置されている。各メモリセルは、ロウ方向に所定ピッチをもってカラム方向に延びる複数のビット線ＢＬのいずれかに接続されている。また、各メモリセルは、カラム方向に所定ピッチをもってロウ方向に延びる複数のワード線ＷＬのいずれかに接続されている。
【００３４】
ロウデコーダＲＤは、制御部２３のアドレス管理部２３ｂにより指示されたブロックアドレスをデコードして、対応するブロックＢＬＫを選択する。
【００３５】
センスアンプモジュールＳＡＭは、センスアンプＳＡ、及びデータレジスタＵＤＬ，ＬＤＬの複数の組を有している。センスアンプＳＡ、及びデータレジスタＵＤＬ，ＬＤＬは互いに、図示しないバスで接続されている。センスアンプＳＡはビット線ＢＬ毎に設けられ、対応するビット線ＢＬに読み出されたデータをセンスし増幅し、また対応するビット線ＢＬに書き込みデータを転送する。データレジスタＵＤＬ，ＬＤＬは、データを一時的に保持する。
【００３６】
演算回路ＹＬＯＧは、データレジスタＵＤＬ，ＬＤＬに保持されたデータの演算を行う。
【００３７】
データレジスタＸＤＬは、ビット線ＢＬ毎に設けられ、対応するビット線ＢＬに関連するデータを一時的に保持する。データレジスタＸＤＬは、ＮＡＮＤメモリ３のキャッシュ動作用に用いられる。すなわち、センスアンプモジュールＳＡＭの内部のデータレジスタＵＤＬ，ＬＤＬが使用中であったとしても、データレジスタＸＤＬが空いていれば、ＮＡＮＤメモリ３は外部からデータを受け付けることが出来る。
【００３８】
入出力パッドＩＯＰは、メモリコントローラ２との間で、種々のコマンドやデータの送受信を司る。
【００３９】
周辺回路ＰＥＲは、シリアライザ及びデシリアライザＳ／Ｄ、図示しないシーケンサ、チャージポンプ、レジスタ、及びドライバ等を備える。シリアライザ及びデシリアライザＳ／Ｄは、メモリコントローラ２等の外部からシリアル信号形式で送られてくるデータ等をパラレル信号に変換する。また、シリアライザ及びデシリアライザＳ／Ｄは、メモリチップ３１内においてパラレル信号形式で取り扱われるデータ等をシリアル信号に変換する。また、シリアライザ及びデシリアライザＳ／Ｄは、セルアレイＣＡのカラム方向（ビット線ＢＬ）を選択する。
【００４０】
ドライバは、メモリコントローラ２からの指令を受けたシーケンサに従って、データの書き込み、読み出し、及び消去に必要な電圧を、ロウデコーダＲＤ、センスアンプＳＡ、及び図示しないソース線ドライバに供給する。チャージポンプは、外部から与えられる電源電圧を昇圧して、必要な電圧をドライバに供給する。レジスタは、種々の信号を保持する。シーケンサは、ＮＡＮＤメモリ３全体の動作を制御する。
【００４１】
（ブロックの構成例）
図４は、実施形態１にかかるＮＡＮＤメモリ３のメモリチップ３１に含まれる１つのブロックＢＬＫの構成例を示す回路図である。
【００４２】
各ブロックＢＬＫは、ロウ方向に沿って順に配列された（ｐ＋１）個のＮＡＮＤストリングＮＳを備えている（ｐは０以上の整数）。
【００４３】
各ＮＡＮＤストリングＮＳには、選択トランジスタＳＴ１，ＳＴ２が含まれる。選択トランジスタＳＴ１は、ドレインがビット線ＢＬ０〜ＢＬｐに接続され、ゲートが選択ゲート線ＳＧＤに共通接続されている。また、選択トランジスタＳＴ２は、ソースがソース線ＳＬに共通接続され、ゲートが選択ゲート線ＳＧＳに共通接続されている。
【００４４】
各メモリセルＭＣは、半導体基板上に形成された積層ゲート構造を備えたＭＯＳＦＥＴ（Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ  Ｆｉｅｌｄ  Ｅｆｆｅｃｔ  Ｔｒａｎｓｉｓｔｏｒ）により構成されている。積層ゲート構造は、半導体基板上にゲート絶縁膜を介在して形成された電荷蓄積層（浮遊ゲート電極）、及び電荷蓄積層上にゲート間絶縁膜を介在して形成された制御ゲート電極を含んでいる。メモリセルＭＣは、浮遊ゲート電極に蓄えられる電子の数に応じて閾値電圧が変化し、この閾値電圧の違いに応じてデータを記憶する。ただし、メモリセルＭＣは、浮遊ゲート電極を有する構造に限らず、ＭＯＮＯＳ（Ｍｅｔａｌ−Ｏｘｉｄｅ−Ｎｉｔｒｉｄｅ−Ｏｘｉｄｅ−Ｓｉｌｉｃｏｎ）型など、電荷蓄積層としての窒化膜界面に電子をトラップさせることにより閾値電圧が調整可能な構造であってもよい。また、メモリセルＭＣは、ＳＬＣとして構成されていてもよいし、ＭＬＣとして構成されていてもよい。
【００４５】
各ＮＡＮＤストリングＮＳにおいて、選択トランジスタＳＴ１のソースと選択トランジスタＳＴ２のドレインとの間に、それぞれの電流経路が直列接続されるよう、（ｑ＋１）個のメモリセルＭＣが配置されている（ｑは０以上の整数）。すなわち、複数のメモリセルＭＣは、隣接するもの同士で拡散領域（ソース領域若しくはドレイン領域）を共有するような形でカラム方向に直列接続される。
【００４６】
各ＮＡＮＤストリングＮＳにおいて、最も選択ゲート線ＳＧＤ側に位置するメモリセルＭＣから順に、制御ゲート電極がワード線ＷＬ０〜ＷＬｑにそれぞれ接続されている。従って、ワード線ＷＬ０に接続されたメモリセルＭＣのドレインは選択トランジスタＳＴ１のソースに接続され、ワード線ＷＬｑに接続されたメモリセルトランジスタＭＣＴのソースは選択トランジスタＳＴ２のドレインに接続されている。
【００４７】
ワード線ＷＬ０〜ＷＬｑは、ブロックＢＬＫ内のＮＡＮＤストリングＮＳ間で、メモリセルＭＣの制御ゲート電極を共通に接続している。つまり、ブロックＢＬＫ内において同一行にあるメモリセルＭＣの制御ゲート電極は、同一のワード線ＷＬに接続される。この同一のワード線ＷＬに接続される（ｐ＋１）個のメモリセルＭＣは、１つまたは複数のページ（物理ページ）に対応するメモリセルグループとして取り扱われ、この物理ページごとにデータの書き込みおよびデータの読み出しが行われる。
【００４８】
ビット線ＢＬ０〜ＢＬｐは、ブロックＢＬＫ間で、選択トランジスタＳＴ１のドレインを共通に接続している。つまり、複数のブロックＢＬＫ内において同一列にあるＮＡＮＤストリングＮＳは、同一のビット線ＢＬに接続される。
【００４９】
（メモリセルの閾値分布例）
各メモリセルＭＣがトリプルレベルセルとしてＴＬＣモードで動作する場合、メモリセルＭＣの閾値分布は、例えば、図５に示すようになる。図５は、実施形態１にかかるメモリセルＭＣの閾値分布を示す図である。図５において、横軸は閾値電圧を表し、縦軸はメモリセルＭＣの数（具体的には、所定のビット値を示すメモリセルＭＣの数）を表す。
【００５０】
ＴＬＣモードによれば、各メモリセルＭＣは、アッパーページに属するデータ“ｘ”とミドルページに属するデータ“ｙ”とロアーページに属するデータ“ｚ”とで定義される８値データ“ｘｙｚ”を保持可能である。データ“ｘ”、データ“ｙ”、データ“ｚ”の値は、符号“０”または符号“１”である。各メモリセルＭＣの閾値電圧は、分布Ｅｒ、分布Ａ、分布Ｂ、分布Ｃ、分布Ｄ、分布Ｅ、分布Ｆ、分布Ｇの８つのグループの何れかに属するように制御される。各分布と８値データ“ｘｙｚ”のデータ値との対応は、予め設定される。例えば、分布Ｅｒにはデータ値“１１１”が割り当てられる。分布Ａにはデータ値“１１０”が割り当てられる。分布Ｂにはデータ値“１００”が割り当てられる。分布Ｃにはデータ値“０００”が割り当てられる。分布Ｄにはデータ値“０１０”が割り当てられる。分布Ｅにはデータ値“０１１”が割り当てられる。分布Ｆにはデータ値“００１”が割り当てられる。分布Ｇにはデータ値“１０１”が割り当てられる。なお、各分布とデータ値との対応は、上記に限定されない。
【００５１】
ホスト４からメモリコントローラ２を介して書き込みコマンドを受け取ると、シリアライザ及びデシリアライザＳ／Ｄは、ブロックアドレスが入力されたカラムアドレスに対応したビット線ＢＬを選択して活性化する。センスアンプＳＡは、シリアライザ及びデシリアライザＳ／Ｄにより選択されたビット線ＢＬの電位を０Ｖとする。ロウデコーダＲＤは、ブロックアドレスをデコードして得られるロウアドレスに対応したワード線ＷＬに、プログラミングパルスを印加する。すると、選択されたビット線ＢＬおよび選択されたワード線ＷＬとの交点に位置するメモリセルＭＣのフローティングゲートに電子が注入され、その結果、メモリセルＭＣの閾値電圧が上昇する。センスアンプモジュールＳＡＭは、プログラミングパルスが印加される毎に、閾値電圧がデータレジスタＸＤＬに格納されているデータに応じた電圧に到達したか否かを確認する。センスアンプＳＡは、閾値電圧がデータに応じた電圧に到達するまで、ロウデコーダＲＤにプログラムパルスの印加を継続させる。
【００５２】
ホスト４からメモリコントローラ２を介して読み出しコマンドを受け取ると、センスアンプモジュールＳＡＭは、ビット線ＢＬにビット線電圧Ｖｂ１（例えば１．５Ｖ）をプリチャージし、ロウデコーダＲＤは、選択されたワード線ＷＬにデータ値毎の分布を特定する複数種類の判定電位（リード電圧）を順次印加する。なお、ロウデコーダＲＤは、非選択のワード線ＷＬには転送電位を印加し、非選択のワード線ＷＬに属するメモリセルＭＣを導通状態にしておく。センスアンプＳＡは、プリチャージにより蓄えられた電荷が、どの読み出し電圧が印加されたときにソース線ＳＬに流出したかを検知することによって、対象のメモリセルＭＣに記憶されているデータ値を判定する。
【００５３】
図５の例では、各分布Ｅｒ，Ａ〜Ｇに属するメモリセルＭＣの閾値電圧の分布の裾野が重なり合っている。つまり、例えば分布Ａに属するメモリセルＭＣの閾値電圧の最大値が判定電圧Ｖ７を超えており、かつ、分布Ｂに属するメモリセルＭＣの閾値電圧の最小値が判定電圧Ｖ７を下回っている。分布Ａに属し、かつ、閾値電圧が判定電圧Ｖ７よりも高いメモリセルＭＣが読み出された場合、そのメモリセルＭＣは分布Ｂに属するとして認識される。即ち、“１１０”として書き込まれたデータが“１００”として読み出される。分布Ｂに属し、かつ、閾値電圧が判定電圧Ｖ７よりも低いメモリセルＭＣが読み出された場合、そのメモリセルＭＣは分布Ａに属するとして認識される。即ち、“１００”として書き込まれたデータが“１１０”として読み出される。
【００５４】
このような判定電圧の近傍に閾値電圧を持つメモリセルＭＣに起因するエラーは、メモリコントローラ２が有する誤り訂正（ＥＣＣ：Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｎｇ  Ｃｏｄｅ）回路等により訂正可能である。ただし、メモリコントローラ２がＥＣＣ回路により訂正できるエラービットの数には、限界がある。読み出しデータに含まれるエラービットの数が限界を超えないように、例えば、隣接する２つの分布間においてメモリセルＭＣの合計数が極小となる電圧値を判定電圧として使用する。これにより、読み出しデータに含まれるエラー数を少なくすることができる。
【００５５】
例えば、分布Ｅｒと分布Ａとの間に読み出し電圧Ｖ７が設定される。分布Ａと分布Ｂとの間に読み出し電圧Ｖ６が設定される。分布Ｂと分布Ｃとの間に読み出し電圧Ｖ５が設定される。分布Ｃと分布Ｄとの間に読み出し電圧Ｖ４が設定される。分布Ｄと分布Ｅとの間に読み出し電圧Ｖ３が設定される。分布Ｅと分布Ｆとの間に読み出し電圧Ｖ２が設定される。分布Ｆと分布Ｇとの間に読み出し電圧Ｖ１が設定される。
【００５６】
このような閾値電圧の重なりは、閾値電圧の分布の変化によって、書き込まれた時点での値から変化したことで生じる場合がある。例えば、常温で書き込まれたデータが低温状態で読み出されるような場合である。
【００５７】
ここで、図６を用い、メモリセルの温度較差について説明する。図６は、温度較差を有するメモリセルの閾値分布を示す図である。図６において、横軸は閾値電圧を表し、縦軸はメモリセルの数を表す。図６においては、メモリセルが有する閾値電圧分布のうち、任意の２つの分布に属するメモリセルの閾値分布のみを示している。また、図６の実線は、高温で書き込まれ、高温で読み出されたときのメモリセルの閾値分布である。図６の破線は、高温で書き込まれ、低温で読み出されたときのメモリセルの閾値分布である。
【００５８】
図６の破線で示すように、高温で書き込まれ低温で読み出されたときのメモリセルの閾値電圧は、高温で書き込まれ高温で読み出されたときのメモリセルの閾値電圧よりも高くなる。また、高温で書き込まれ低温で読み出されたときのメモリセルの閾値分布は、高温で書き込まれ高温で読み出されたときのメモリセルの閾値分布よりもばらつきが大きくなる。このように、書き込み及び読み出しの温度によるメモリセルの閾値分布の違いを温度較差という。
【００５９】
上記のように、低温で読み出されたときにメモリセルの閾値電圧がシフトすると、分布同士の重なりの極小点が横軸方向にずれ、最適な判定電圧がシフトしてしまう。このときのシフト量は、メモリセルごとにばらつきが大きいため、単に読み出し電圧を変えるだけでは、意図したデータを読み出すことができない。メモリセルごとにシフト量がばらつくと、分布同士の重なりの極小点が縦軸方向にずれ、分布同士の重なり部分が増えてしまうからである。分布同士の重なり部分が増えると、エラービットの数が増加し、誤り訂正回路のエラー訂正限界を超えてしまうことがある。
【００６０】
そこで、実施形態１のメモリシステム１においては、ホスト４からの読み出しコマンド等を受信すると、メモリコントローラ２が、動作対象のメモリチップ３１が所定温度以上であるか否かを判定する。メモリチップ３１が所定温度未満であるときは、メモリコントローラ２は昇温コマンドを発行する。ＮＡＮＤメモリ３は、受け取った昇温コマンドに基づいて、昇温動作を行う。なお、実施形態１の昇温動作は、ホスト４から読み出しコマンドを受信した場合だけでなく、書き込みコマンド及び消去コマンド等のアクセスコマンド全般に対して適用してもよい。以下に、ＮＡＮＤメモリ３の昇温動作の詳細について説明する。
【００６１】
（メモリチップの昇温動作例）
ＮＡＮＤメモリ３の昇温動作について、図７を用いて説明する。図７は、実施形態１にかかるＮＡＮＤメモリ３の昇温動作について説明する模式図である。
【００６２】
図７に示すＮＡＮＤメモリ３の昇温動作は、例えば通常の読み出し時の動作を変形させた動作として行うことができる。ただし、このとき、データの処理は行わない。つまり、センスアンプＳＡによるセンスは行わない。
【００６３】
メモリコントローラ２は、動作対象のメモリチップ３１が所定温度未満であるとき、かかるメモリチップ３１を昇温させる昇温コマンドを発行する。図７の例では、昇温コマンドは、所定時間、ＮＡＮＤメモリ３に昇温動作を継続させるコマンドである。
【００６４】
ＮＡＮＤメモリ３は、昇温コマンドを受け取ると、昇温対象のメモリチップ３１に含まれる複数のブロックＢＬＫのうち、昇温動作を行うブロックＢＬＫ内のワード線ＷＬ、選択ゲート線ＳＧＤ，ＳＧＳ、及びビット線ＢＬに、所定の電圧を印加する。
【００６５】
通常の読み出し動作の読み出し対象にあたるメモリセルＭＣに接続されるワード線ＷＬには、読み出し電圧である電圧ＶＣＧＲＶを印加する。かかるメモリセルＭＣは、ＮＡＮＤストリングＮＳ内の中央に位置するメモリセルＭＣ等、任意に選択することができる。これにより、メモリセルＭＣが保持するデータに応じて、少なくとも一部のメモリセルＭＣがオンする。
【００６６】
その他のワード線ＷＬには、それらのワード線ＷＬを非選択とする電圧である電圧ＶＲＥＡＤを印加する。電圧ＶＲＥＡＤは、メモリセルＭＣが保持するデータに関係なく、そのメモリセルＭＣがオンする電圧である。
【００６７】
ゲート線ＳＧＤ，ＳＧＳには、選択トランジスタＳＴ１，ＳＴ２がオンする電圧ＶＳＧをそれぞれ印加する。
【００６８】
ビット線ＢＬには、通常の読み出し動作でビット線ＢＬをプリチャージするときの電圧である電圧ＶＢＬＣを印加する。以上により、電圧ＶＣＧＲＶを印加されてオンしたメモリセルＭＣが含まれるＮＡＮＤストリングＮＳにおいては、ビット線ＢＬからソース線ＳＬに至る電流経路が形成され、ビット線ＢＬからソース線ＳＬへと電流が流れる。
【００６９】
このように、ブロックＢＬＫ内の少なくとも一部のビット線ＢＬに電流が流れることにより、ジュール熱が発生し、このブロックＢＬＫを含むメモリチップ３１が昇温される。ＮＡＮＤメモリ３は、所定時間、ワード線ＷＬ、選択ゲート線ＳＧＤ，ＳＧＳ、及びビット線ＢＬへの所定電圧の印加を継続する。メモリコントローラ２は、ＮＡＮＤメモリ３の昇温動作の所定期間ごとにＮＡＮＤメモリ３から温度情報を取得し、メモリチップ３１の温度が所定温度以上となるまでＮＡＮＤメモリ３に昇温動作を継続させる。このとき、所定温度はＮＡＮＤメモリ３の仕様などに応じて設定されてよい。
【００７０】
なお、このとき、非選択のワード線ＷＬに印加する電圧を、通常の読み出し電圧である電圧ＶＲＥＡＤより高めてもよい。また、ビット線ＢＬに印加する電圧を、通常のプリチャージ電圧である電圧ＶＢＬＣより高めてもよい。
【００７１】
ここで、より多くのビット線ＢＬに電流を流すために以下の手法を採ることもできる。
【００７２】
他の手法として、通常動作で読み出し対象にあたるメモリセルＭＣを指定せず、全てのワード線ＷＬを非選択としてもよい。つまり、全てのワード線ＷＬに電圧ＶＲＥＡＤを印加する。これにより、ブロックＢＬＫ内の全てのメモリセルＭＣが、自身が保持するデータに関係なくオンする。よって、ブロックＢＬＫ内の全てのビット線ＢＬに電流が流れる。
【００７３】
このとき、ワード線ＷＬに印加する電圧ＶＲＥＡＤより高めてもよく、ビット線ＢＬに印加する電圧を電圧ＶＢＬＣより高めてもよく、または、それらの両方を行ってもよい。
【００７４】
昇温動作の対象となるブロックＢＬＫは、動作対象のメモリチップ３１内の複数のブロックＢＬＫのうち、例えば、フリーブロック、または、バッドブロック等の中から任意のブロックＢＬＫを選択することができる。フリーブロックは、有効データの存在しないブロックＢＬＫである。バッドブロックは、例えばエラー率が高い等の理由から無効と判定されたブロックＢＬＫである。昇温動作に用いるブロックＢＬＫは、各メモリチップ３１において予め設定されている。昇温コマンドを発行する際、メモリコントローラ２がブロックＢＬＫを指定してもよい。
【００７５】
なお、上記説明では、昇温の目標となる所定温度はＮＡＮＤメモリ３の仕様などに応じて設定されるものとしたが、これに限られない。例えば、メモリコントローラ２がデータ書き込み時の温度を記憶しておき、読み出し時に書き込み時と同一温度となるよう所定温度が設定されてもよい。また例えば、所定温度が予めＲＯＭ値としてＮＡＮＤメモリ３に設定されていてもよい。この場合、メモリコントローラ２に昇温動作の時間を指定されることなく、ＮＡＮＤメモリ３は、このＲＯＭ値を参照して、メモリチップ３１を所定温度まで昇温する。
【００７６】
（昇温コマンドのシーケンス例）
次に、図８を用い、昇温コマンド発行時のメモリシステム１のシーケンス例について説明する。図８は、実施形態１にかかるメモリコントローラ２が昇温コマンドを発行した場合における各種信号線の波形の一例を示す図である。図８において、各種信号線のうち、オーバーバーの付いたものは、波形がローレベルのとき有効（ローアクティブ）であることを示す。
【００７７】
チップイネーブル信号ＣＥは、この信号を受け取ったＮＡＮＤメモリ３をイネーブル状態とする信号である。図８のシーケンス例において、チップイネーブル信号ＣＥはローレベル（有効）に保たれる。入力信号および出力信号Ｉ／Ｏは、ＮＡＮＤメモリ３とメモリコントローラ２との間で送受信されるデータの実体であり、コマンド、アドレス、書き込みデータ、読み出しデータ等を示す８ビット単位の信号である。
【００７８】
図８に示すように、メモリコントローラ２は、所定のアクセスコマンドを要求する際、動作対象のメモリチップ３１の温度が所定値未満であるとき、昇温コマンドを発行する。このとき、入力信号Ｉ／ＯがコマンドであることをＮＡＮＤメモリ３に通知するコマンドラッチイネーブル信号ＣＬＥがハイレベル（有効）とされる。またこのとき、入力信号Ｉ／ＯをＮＡＮＤメモリ３に取り込ませるためのライトイネーブル信号ＷＥがローレベル（有効）とされる。
【００７９】
ＮＡＮＤメモリ３は、昇温コマンドを受け取ると昇温動作を開始し、所定時間が経過するまで昇温動作を継続する。ＮＡＮＤメモリ３は、所定時間が経過するとフラグを立てる。図８におけるフラグは、レディビジー信号ＲＢと連動して、昇温動作が所定時間行われたことを示す信号である。図８においては、フラグの初期状態をハイレベルとしているが、初期状態がローレベルであっても構わない。フラグが立つことで、これと連動してＮＡＮＤメモリ３がメモリコントローラ２からのコマンドを受信できる状態（レディ状態）であるか否か（ビジー状態）を示すレディビジー信号ＲＢが、ハイレベル（レディ状態）となる。
【００８０】
メモリコントローラ２は、ＮＡＮＤメモリ３がレディ状態となると、動作対象のメモリチップ３１の温度情報を求める温度ステータス取得コマンドを発行する。このとき、コマンドラッチイネーブル信号ＣＬＥがハイレベル（有効）とされ、ライトイネーブル信号ＷＥがローレベル（有効）とされる。
【００８１】
ＮＡＮＤメモリ３は、温度ステータス取得コマンドを受け取ると、温度情報信号ＴＥＭＰＣＯＤＥをメモリコントローラ２に対して送信する。このとき、ＮＡＮＤメモリ３からの出力信号Ｉ／Ｏを読み出すためのリードイネーブル信号ＲＥがローレベル（有効）とされる。
【００８２】
メモリコントローラ２は、温度情報信号ＴＥＭＰＣＯＤＥを受信し、メモリチップ３１の温度が所定温度以上となっているか否かを判定する。メモリチップ３１の温度が所定温度以上であれば、所定コマンドをＮＡＮＤメモリ３に実行させる。図８の例では、読み出しコマンド及び読み出し先のアドレスをＮＡＮＤメモリ３に送信する。読み出しコマンドの送信時、コマンドラッチイネーブル信号ＣＬＥがハイレベル（有効）とされ、ライトイネーブル信号ＷＥがローレベル（有効）とされる。読み出し先アドレスの送信時、入力信号Ｉ／ＯがアドレスであることをＮＡＮＤメモリ３に通知するアドレスラッチイネーブル信号ＡＬＥがハイレベル（有効）とされる。またこのとき、ライトイネーブル信号ＷＥがローレベル（有効）とされる。
【００８３】
ＮＡＮＤメモリ３は、読み出し先アドレスに該当するメモリセルＭＣからの読み出しを開始し、読み出し動作の終了までレディビジー信号ＲＢをローレベル（ビジー状態）とする。
【００８４】
以上により、昇温コマンド発行時のメモリシステム１のシーケンスが終了する。
【００８５】
（メモリシステムにおける昇温動作処理の例）
次に、図９を用い、メモリシステム１における昇温動作処理の例について説明する。図９は、実施形態１にかかるメモリシステム１における昇温動作処理の手順の一例を示すフロー図である。
【００８６】
図９に示すように、メモリコントローラ２は、ホスト４から所定のアクセスコマンドの発行要求を受理する（ステップＳ１１）。アクセスコマンドは、例えば、ＮＡＮＤメモリ３への書き込み、読み出し、消去等を指示するコマンドである。メモリコントローラ２の温度情報取得部２３ｃは、アクセスコマンドに基づき、ＮＡＮＤメモリ３に対して温度ステータス取得コマンドを発行し、動作対象のメモリチップ３１の温度情報を求める（ステップＳ１２）。
【００８７】
ＮＡＮＤメモリ３は、温度ステータス取得コマンドを受信すると（ステップＳ２１）、動作対象のメモリチップ３１の温度センサ３１ｓにより、動作対象のメモリチップ３１の温度を検出する。ＮＡＮＤメモリ３は、検出した温度を温度情報としてメモリコントローラ２に送信する（ステップＳ２２）。
【００８８】
温度情報取得部２３ｃが動作対象のメモリチップ３１の温度情報を取得すると（ステップＳ１３）、温度情報判定部２３ｄは、そのメモリチップ３１の温度が所定温度以上か否かを判定する（ステップＳ１４）。メモリチップ３１の温度が所定温度以上である場合には（ステップＳ１４：Ｙｅｓ）、ステップＳ１６に進む。メモリチップ３１の温度が所定温度未満である場合には（ステップＳ１４：Ｎｏ）、アクセス処理部２３ａは、ＮＡＮＤメモリ３に対して昇温コマンドを発行する（ステップＳ１５）。
【００８９】
ＮＡＮＤメモリ３は、昇温コマンドを受信すると、動作対象のメモリチップ３１内にあるブロックＢＬＫのうち、昇温動作対象のブロックＢＬＫにおいて昇温動作を開始する（ステップＳ２３）。ＮＡＮＤメモリ３は、昇温動作の開始から所定時間経過したか否かを適宜判定する（ステップＳ２４）。昇温動作の開始から所定時間未満である間は（ステップＳ２４：Ｎｏ）、昇温動作を継続する（ステップＳ２３）。ＮＡＮＤメモリ３は、昇温動作の開始から所定時間以上となったら（ステップＳ２４：Ｙｅｓ）、自身をレディ状態とする（ステップＳ１２へ）。
【００９０】
温度情報取得部２３ｃは、ＮＡＮＤメモリ３がレディ状態となったら、再度、温度ステータス取得コマンドを発行し（ステップＳ１２）、取得した温度情報が所定温度以上か否かを判定する（ステップＳ１３，Ｓ１４）。メモリチップ３１の温度が所定温度未満である場合には（ステップＳ１４：Ｎｏ）、ステップＳ１５に進む。メモリチップ３１の温度が所定温度以上である場合には（ステップＳ１４：Ｙｅｓ）、アクセス処理部２３ａは、発行要求を受けたアクセスコマンドをＮＡＮＤメモリ３に対して発行する（ステップＳ１６）。
【００９１】
ＮＡＮＤメモリ３は、メモリコントローラ２からのアクセスコマンドにしたがい、書き込み、読み出し、消去等の所定の動作を実行する（ステップＳ２５）。
【００９２】
以上により、メモリシステム１における昇温動作処理が終了する。
【００９３】
なお、図９のフロー図のステップＳ２４の例によらず、所定温度となるまでＮＡＮＤメモリ３が昇温動作を継続するようにしてもよい。この場合、メモリコントローラ２による再度の温度判定（ステップＳ１２〜Ｓ１４）は行われなくともよい。
【００９４】
（比較例）
比較例のＮＡＮＤメモリは、昇温コマンドをサポートしていないＮＡＮＤメモリである。このようなＮＡＮＤメモリにおいては、温度較差による読み出し精度の低下が生じてしまう。温度較差が生じるのは、例えば、書き込み時と読み出し時とでＮＡＮＤメモリが置かれた環境温度が異なるような場合である。温度較差が生じる他の例としては、例えば、連続処理による発熱でＮＡＮＤメモリが高温となっているときに書き込まれたデータを、所定の不使用期間を経て低温状態となったＮＡＮＤメモリから読み出すような場合である。
【００９５】
実施形態１のメモリシステム１においては、ＮＡＮＤメモリ３が低温状態であるときは、メモリコントローラ２が昇温コマンドを発行し、ＮＡＮＤメモリ３に昇温動作をさせる。これにより、低温状態のまま、ＮＡＮＤメモリ３に対して読み出し等の処理が行われるのを抑制し、温度較差による読み出し精度の低下を抑制することができる。
【００９６】
実施形態１のメモリシステム１においては、昇温動作において、例えば、所定のブロックＢＬＫの所定のワード線ＷＬに電圧ＶＣＧＲＶを印加し、その他のワード線ＷＬには電圧ＶＲＥＡＤを印加する。これにより、少なくとも一部のビット線ＢＬに電流を流すことができ、ビット線ＢＬを流れる電流により、所定のメモリチップ３１を昇温することができる。
【００９７】
実施形態１のメモリシステム１においては、上記昇温動作において、例えば、その他のワード線ＷＬに電圧ＶＲＥＡＤより高い電圧を印加する。これにより、より迅速にメモリチップ３１を昇温することができる。
【００９８】
実施形態１のメモリシステム１においては、上記昇温動作において、例えば、ビット線ＢＬに電圧ＶＢＬＣより高い電圧を印加する。これにより、より迅速にメモリチップ３１を昇温することができる。
【００９９】
実施形態１のメモリシステム１においては、昇温動作において、例えば、所定のブロックＢＬＫの全てのワード線ＷＬに電圧ＶＲＥＡＤを印加する。これにより、ブロックＢＬＫ内の全てのビット線ＢＬに電流を流すことができ、より迅速にメモリチップ３１を昇温することができる。
【０１００】
実施形態１のメモリシステム１においては、昇温動作の対象となるブロックＢＬＫは、フリーブロック、または、バッドブロック等の中から選択される。昇温動作においては、各配線に電圧が印加されることで、閾値電圧が徐々に低下する読み出しディスターブが誘発され得る。しかしながら、フリーブロック、または、バッドブロックであれば、読み出しディスターブの影響を懸念することなく昇温動作を行うことができる。
【０１０１】
実施形態１のメモリシステム１においては、例えば、書き込み時の温度と読み出し時の温度とが等しくなるよう昇温動作を行う。これにより、温度較差が生じるのをいっそう抑制することができる。
【０１０２】
実施形態１のメモリシステム１においては、例えば、書き込み時および消去時にも昇温動作を適用する。これにより、書き込み動作及び消去動作を素早く行うことができ、メモリセルの疲弊を抑制することができる。
【０１０３】
［実施形態２］
図１０〜図１２を用いて、実施形態２のメモリシステムについて説明する。実施形態２のメモリシステムにおいては、メモリコントローラからの昇温コマンドに対するＮＡＮＤメモリの昇温動作が、上述の実施形態１とは異なる。実施形態２における昇温動作では、昇温対象のメモリチップに帰属する所定回路にデータ転送を繰り返させることで、メモリチップの昇温を図る。ただし、このとき、メモリセルＭＣへの読み書きは行わない。
【０１０４】
図１０は、実施形態２にかかるＮＡＮＤメモリが備えるメモリチップ３２の構成例を示すブロック図である。実施形態２にかかるＮＡＮＤメモリは、メモリコントローラ２ａからの昇温コマンドに応じて、メモリチップ３２に昇温動作を行わせる。
【０１０５】
図１０に示すように、実施形態２における昇温動作では、昇温対象のメモリチップ３２に帰属する、入出力部としての入出力パッドＩＯＰにデータ転送を繰り返させることで、メモリチップ３２の昇温を図る。
【０１０６】
具体的には、昇温対象のメモリチップ３２が有する入出力パッドＩＯＰが、メモリコントローラから送信されるデータを、セルアレイＣＡ側に受け渡すことなくメモリコントローラ２ａとの間で送受信する。つまり、入出力パッドＩＯＰとメモリコントローラ２ａとの間でデータ転送が繰り返される。転送されるデータは、どのようなデータでもよく、例えばダミーデータである。
【０１０７】
このようにデータ転送を繰り返すことで、入出力パッドＩＯＰが発熱し、入出力パッドＩＯＰを有するメモリチップ３２全体が所定温度まで昇温される。
【０１０８】
昇温動作の目標となる所定温度は、予めＲＯＭ値としてＮＡＮＤメモリに設定されていてもよい。または、昇温コマンド発行時、メモリコントローラ２ａが所定温度を設定してもよい。このとき、書き込み時と読み出し時とで同一温度となるよう所定温度が設定されてもよい。またこのとき、メモリコントローラ２ａが、ＮＡＮＤメモリの昇温動作の一定期間ごとにＮＡＮＤメモリから温度情報を取得し、メモリチップ３２の温度が所定温度以上となるまでＮＡＮＤメモリに昇温動作を継続させてもよい。
【０１０９】
このように、実施形態２のメモリシステムにおいては、昇温動作の具体的な内容が異なるのみで、その他の構成は、上述の実施形態１のメモリシステム１と同様である。図７に例示した各種信号線の波形図、及び図８に例示した昇温動作処理のフロー図は、実施形態２の構成にも適用され得る。
【０１１０】
（変形例１）
次に、図１１を用い、実施形態２の変形例１のメモリシステムについて説明する。実施形態２の変形例１のメモリシステムにおいては、昇温動作として、変換部としてのシリアライザ及びデシリアライザＳ／Ｄに、データのシリアル／パラレル変換をさせる点が、上述の実施形態２とは異なる。
【０１１１】
図１１は、実施形態２の変形例１にかかるＮＡＮＤメモリが備えるメモリチップ３３の構成例を示すブロック図である。実施形態２の変形例１にかかるＮＡＮＤメモリは、メモリコントローラ２ｂからの昇温コマンドに応じて、メモリチップ３３に昇温動作を行わせる。
【０１１２】
図１１に示すように、昇温対象のメモリチップ３３が有するシリアライザ及びデシリアライザＳ／Ｄは、メモリコントローラ２ｂから送信されるデータを、セルアレイＣＡ側に受け渡すことなくシリアル／パラレル変換する。つまり、シリアライザ及びデシリアライザＳ／Ｄは、メモリコントローラ２ｂから入出力パッドＩＯＰを介して受信したシリアル信号のデータをパラレル信号に変換し、セルアレイＣＡの所定のブロックＢＬＫに帰属するデータレジスタＸＤＬへと転送する。また、データレジスタＸＤＬへと転送したパラレル信号のデータをシリアル信号に変換し、入出力パッドＩＯＰを介してメモリコントローラ２ｂへと送信する。所定のブロックＢＬＫは、ホスト４からのアクセスコマンドの対象となるブロックＢＬＫであってよい。転送されるデータは、どのようなデータでもよく、例えば“１０１０１０１０”等のダミーデータである。
【０１１３】
このようにデータ転送交えつつシリアル／パラレル変換を繰り返すことで、シリアライザ及びデシリアライザＳ／Ｄが発熱し、シリアライザ及びデシリアライザＳ／Ｄを有するメモリチップ３３全体が所定温度まで昇温される。
【０１１４】
（変形例２）
次に、図１２を用い、実施形態２の変形例２のメモリシステムについて説明する。実施形態２の変形例２のメモリシステムにおいては、昇温動作として、ラッチとして例えばデータレジスタＵＤＬ，ＬＤＬ間でデータの入れ替えを行う点が、上述の実施形態２とは異なる。
【０１１５】
図１２は、実施形態２の変形例２にかかるＮＡＮＤメモリが備えるメモリチップ３４の構成例を示すブロック図である。実施形態２の変形例２にかかるＮＡＮＤメモリは、メモリコントローラ２ｃからの昇温コマンドに応じて、メモリチップ３４に昇温動作を行わせる。
【０１１６】
図１２に示すように、昇温対象のメモリチップ３４内の所定のブロックＢＬＫに帰属するデータレジスタＵＤＬ，ＬＤＬは、互いの間でデータの入れ替えを行う。所定のブロックＢＬＫは、ホスト４からのアクセスコマンドの対象となるブロックＢＬＫであってよい。データは、データレジスタＵＤＬ，ＬＤＬの少なくともいずれかが保持していたデータであってもよい。データは、メモリコントローラ２ｃから送信されたデータであってもよく、“１１１１１１１１”と“００００００００”とのダミーデータセットであってもよい。このようなデータの入れ替えは、データの反転等のような演算回路ＹＬＯＧによる演算を交えながら、演算回路ＹＬＯＧを介して行ってもよい。
【０１１７】
このようにデータ転送を繰り返すことで、データレジスタＵＤＬ，ＬＤＬが発熱し、データレジスタＵＤＬ，ＬＤＬを有するメモリチップ３４全体が所定温度まで昇温される。
【０１１８】
［実施形態３］
上述の実施形態１のメモリシステム１、実施形態２及び変形例１，２のメモリシステムは、例えば、ストレージシステム等に適用可能である。
【０１１９】
図１３を用いて、実施形態３のストレージシステムについて説明する。図１３は、実施形態３にかかるストレージシステム１００の概略構成を示すブロック図である。図１３に示すように、ストレージシステム１００は、ストレージ制御部５、冷却装置６、及び複数のメモリシステム１を備える。
【０１２０】
ストレージシステム１００は、例えば大容量のデータを取り扱うコールドストレージ等として構成されている。コールドストレージとは、アクセス頻度の低いデータを長期間に亘って保存する用途を有するストレージシステムである。ストレージシステム１００は、パーソナルコンピュータ等のホスト４と接続可能である。
【０１２１】
ストレージシステム１００は、例えば、上述の実施形態１のメモリシステム１を複数備える。ただし、ストレージシステム１００は、実施形態２、または変形例１，２のいずれかのメモリステムを備えていてもよい。
【０１２２】
冷却装置６は、ストレージシステム１００内のメモリシステム１を冷却することが可能に構成されている。
【０１２３】
ストレージ制御部５は、ストレージシステム１００全体を制御するとともに、複数のメモリシステム１を統括的に制御する。ストレージ制御部５は、ストレージシステム１００に対するホスト４からのアクセスが無いときは冷却装置６を作動させ、ストレージシステム１００内のメモリシステム１を低温状態に維持する。ストレージ制御部５は、ストレージシステム１００に対するホスト４からのアクセスがあったときは、ＮＡＮＤメモリ３へのアクセス内容に応じたコマンドを所定のメモリシステム１に発行し、または、ホスト４からのコマンドを、所定のメモリシステム１に宛てて転送する。また、冷却装置６を停止させ、ストレージ制御部５からコマンドを受理したメモリシステム１内の所定のメモリチップ３１を昇温させる。つまり、そのメモリシステム１内のメモリコントローラ２に昇温コマンドを発行させる。
【０１２４】
比較例のストレージシステムは、冷却装置、及び昇温動作可能なＮＡＮＤメモリを有しておらず、例えば常温にて管理、維持される。コールドストレージ用途においては待機時間が長く、常温における管理、維持では、データリテンションの影響を受けやすい。データリテンションとは、メモリセルのデータが徐々に揮発していく現象である。
【０１２５】
しかしながら、比較例のストレージシステムに、単に冷却装置を設けて常時、低温に維持することにも難点がある。低温状態では、メモリセルに対する消去や書き込みに時間が掛かり、メモリセルの疲弊が進んでしまうためである。また、書き込み動作によりメモリチップが次第に発熱していったような場合、かかるメモリチップを低温状態で読み出す際には温度較差が生じ得る。そして、温度較差による読み出し不良が起きる恐れがある。
【０１２６】
実施形態３のストレージシステム１００においては、ストレージシステム１００の待機時、冷却装置６によってストレージシステム１００内のＮＡＮＤメモリ３は低温に維持される。これにより、データリテンションの影響を低減することができる。
【０１２７】
実施形態３のストレージシステム１００においては、ＮＡＮＤメモリ３は昇温動作が可能に構成される。これにより、待機時にＮＡＮＤメモリ３が低温に維持されていても、メモリコントローラ２からのアクセス時には、所定温度まで昇温することができる。よって、低温での書き込みによるメモリセルＭＣの疲弊や、温度較差による読み出し精度の低下を抑制することができる。
【０１２８】
なお、上述の実施形態等では、不揮発性メモリがＮＡＮＤ型フラッシュメモリ３等であるとしたがこれに限られない。不揮発性メモリは、ＲｅＲＡＭ（Ｒｅｓｉｓｔａｎｃｅ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＦｅＲＡＭ（Ｆｅｒｒｏｅｌｅｃｔｒｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等の種々の記憶装置のいずれかであってよい。また、不揮発性メモリが半導体メモリであることは必須ではなく、半導体メモリ以外の種々の記憶媒体に対しても本実施形態を適用することが可能である。
【０１２９】
また、上述の実施形態等では、メモリコントローラ２の制御部２３がファームウェアを実行するＣＰＵであるとしたがこれに限られない、制御部２３の機能のうちの一部または全部は、ファームウェアを実行するＣＰＵではなく、ハードウェア回路によって実現されてもよい。例えばメモリコントローラ２は、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）またはＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）を備え、制御部２３の機能のうちの一部または全部は、ＦＰＧＡまたはＡＳＩＣによって実行されてもよい。
【０１３０】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１３１】
１…メモリシステム、２，２ａ，２ｂ，２ｃ…メモリコントローラ、３…ＮＡＮＤメモリ、４…ホスト、５…ストレージ制御部、６…冷却装置、２３…制御部、３０…ＮＡＮＤパッケージ、３１，３２，３３，３４…メモリチップ、ＢＬ…ビット線、ＢＬＫ…ブロック、ＣＡ…セルアレイ、ＩＯＰ…入出力パッド、ＬＤＬ，ＵＤＬ，ＸＤＬ…データレジスタ、ＳＤ…シリアライザ及びデシリアライザ、ＮＳ…ＮＡＮＤストリング、ＷＬ…ワード線。
【図１】
2020035501.tif 000003
【図２】
2020035501.tif 000004
【図３】
2020035501.tif 000005
【図４】
2020035501.tif 000006
【図５】
2020035501.tif 000007
【図６】
2020035501.tif 000008
【図７】
2020035501.tif 000009
【図８】
2020035501.tif 000010
【図９】
2020035501.tif 000011
【図１０】
2020035501.tif 000012
【図１１】
2020035501.tif 000013
【図１２】
2020035501.tif 000014
【図１３】
2020035501.tif 000015