JP2018055759A - Memory system - Google Patents
Memory system Download PDFInfo
- Publication number
- JP2018055759A JP2018055759A JP2017065622A JP2017065622A JP2018055759A JP 2018055759 A JP2018055759 A JP 2018055759A JP 2017065622 A JP2017065622 A JP 2017065622A JP 2017065622 A JP2017065622 A JP 2017065622A JP 2018055759 A JP2018055759 A JP 2018055759A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- temperature
- controller
- memory chip
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Detection And Correction Of Errors (AREA)
Abstract
Description
本発明の実施形態は、メモリシステムに関する。 Embodiments described herein relate generally to a memory system.
NAND型フラッシュメモリのような不揮発性メモリと、メモリコントローラと、を備
えるメモリシステムが提供されている。
There is provided a memory system including a nonvolatile memory such as a NAND flash memory and a memory controller.
本発明が解決しようとする課題は、読み出しエラーの発生頻度を低減させたメモリシス
テムを提供することである。
The problem to be solved by the present invention is to provide a memory system in which the frequency of occurrence of read errors is reduced.
上記課題を達成するために、実施形態のメモリシステムは、複数のメモリチップを有す
る不揮発性メモリと、前記不揮発性メモリを制御するコントローラと、を備える。前記コ
ントローラは、前記コントローラの温度が第1の温度より高い場合または前記複数のメモ
リチップのうち第1のメモリチップの温度が第2の温度より高い場合に、前記第1のメモ
リチップへアクセスする。
In order to achieve the above object, a memory system according to an embodiment includes a nonvolatile memory having a plurality of memory chips, and a controller that controls the nonvolatile memory. The controller accesses the first memory chip when the temperature of the controller is higher than the first temperature or when the temperature of the first memory chip among the plurality of memory chips is higher than the second temperature. .
以下、発明を実施するための実施形態について図面を参照して説明する。 Embodiments for carrying out the invention will be described below with reference to the drawings.
(第1の実施形態)
図1は、第1の実施形態に係るメモリシステムの構成例を示すブロック図である。メモ
リシステム1は、ホスト装置2と通信線で接続され、ホスト装置2の外部記憶装置として
機能する。ホスト装置2は、例えば、パーソナルコンピュータなどの情報処理装置、携帯
電話、撮像装置であってもよいし、タブレットコンピュータやスマートフォンなどの携帯
端末であってもよいし、ゲーム機器であってもよいし、カーナビゲーションシステムなど
の車載端末であってもよい。
(First embodiment)
FIG. 1 is a block diagram illustrating a configuration example of the memory system according to the first embodiment. The
不揮発性メモリ100は、データを不揮発に記憶するメモリである。不揮発性メモリ1
00は、例えば、複数個のメモリチップであるメモリチップ#1 110−1、・・・、
メモリチップ#N 110−Nを備える不揮発性半導体メモリである。なお、Nは任意の
自然数である。
The
00 is, for example,
A non-volatile semiconductor memory including a memory chip #N 110-N. N is an arbitrary natural number.
以下の説明において、複数のメモリチップ110−1、・・・、110−Nのうち1つ
を特定する必要がある場合は符号110−1、・・・、110−Nを使用するが、任意の
メモリチップを指す場合や、あるメモリチップを他のメモリチップと区別しない場合は、
符号110を使用する。
In the following description, reference numerals 110-1,..., 110-N are used when one of the plurality of memory chips 110-1,. When referring to a memory chip or when not distinguishing a memory chip from other memory chips,
メモリチップ110の各々は、例えば互いに独立して動作可能であり、その一例として
はNAND型フラッシュメモリチップである。NAND型フラッシュメモリでは、一般に
、ページと呼ばれるデータ単位で、書き込みおよび読み出しが行われ、ブロックと呼ばれ
るデータ単位で消去が行われる。
Each of the
なお、不揮発性メモリ100としてNAND型フラッシュメモリを用いる例を説明する
が、不揮発性メモリ100として3次元構造フラッシュメモリ、ReRAM(Resistance
Random Access Memory)、FeRAM(Ferroelectric Random Access Memory)等のN
AND型フラッシュメモリ以外の記憶手段を用いてもよい。また、ここでは、記憶手段と
して半導体メモリを用いる例を説明するが、半導体メモリ以外の記憶手段を用いてもよい
。
Although an example in which a NAND flash memory is used as the
Random Access Memory), FeRAM (Ferroelectric Random Access Memory), etc.
Storage means other than the AND flash memory may be used. Although an example in which a semiconductor memory is used as the storage unit will be described here, a storage unit other than the semiconductor memory may be used.
メモリシステム1は、メモリコントローラ200と不揮発性メモリ100が1つのパッ
ケージとして構成されるメモリカードであってもよいし、SSD(Solid State Drive)
であってもよい。
The
It may be.
メモリコントローラ200は、ホスト装置2からの書き込み要求に従って不揮発性メモ
リ100への書き込みを制御する。本実施形態において、要求とは、例えば、命令、コマ
ンドである。また、ホスト装置2からの読み出し要求に従って不揮発性メモリ100から
の読み出しを制御する。メモリコントローラはコントローラとも称される。
The
メモリコントローラ200は、ホストインターフェース(ホストI/F)210、制御
部220、データバッファ230、符号化部/復号部(Encoder/Decoder)240、メモ
リインタフェース(メモリI/F)250および温度センサインターフェース(温度セン
サI/F)260を備える。ホストI/F210、制御部220、データバッファ230
、符号化部/復号部240、メモリI/F250および温度センサI/F260は、内部
バス270で接続されている。
The
The encoder /
ホストI/F210は、ホスト装置2との間のインターフェース規格に従った処理を実
施し、ホスト装置2から受信した要求、ユーザデータなどを内部バス270に出力する。
また、ホストI/F210は、不揮発性メモリ100から読み出されたユーザデータ、制
御部220からの応答などをホスト装置2へ送信する。なお、本実施の形態では、ホスト
装置2からの書き込み要求により不揮発性メモリ100へ書き込むデータをユーザデータ
と呼ぶ。
The host I / F 210 performs processing according to the interface standard with the host device 2, and outputs a request, user data, and the like received from the host device 2 to the
The host I /
制御部220は、メモリシステム1の各構成要素を統括的に制御する。制御部220は
、ハードウェアにより実現されてもよいし、CPU(Central Processing Unit)等のプ
ロセッサがファームウェアを実行することにより実現されてもよい。後者の場合、例えば
、プロセッサが、メモリシステム1が電源供給を受けたときに、図示しないROMに格納
されているファームウェア(制御プログラム)をバッファ230または制御部220内の
図示しないRAM上に読み出して所定の処理を実行することにより、制御部220の処理
が実現される。ここで、プロセッサは、コアまたはプロセッサコアとも称される。
The
制御部220は、ホスト装置2からホストI/F210経由で要求を受けた場合に、そ
の命令に従った制御を行う。例えば、制御部220は、ホスト装置2からの要求に従って
、不揮発性メモリ100へのユーザデータおよびパリティの書き込みをメモリI/F25
0へ指示する。また、制御部220は、ホスト装置2からの要求に従って、不揮発性メモ
リ100に対する命令をメモリI/F250へ指示する。
When receiving a request from the host device 2 via the host I /
Specify 0. Further, the
また、制御部220は、ホスト装置2から書き込み要求を受信した場合、データバッフ
ァ230に蓄積されるユーザデータに対して、不揮発性メモリ100上の格納領域(メモ
リ領域)を決定する。すなわち、制御部220は、ユーザデータの書込み先を管理する。
ホスト装置2から受信したユーザデータの論理アドレスと当該ユーザデータが格納される
不揮発性メモリ100上の格納領域を示す物理アドレスとの対応はアドレス変換テーブル
として格納される。
Further, when receiving a write request from the host device 2, the
The correspondence between the logical address of the user data received from the host device 2 and the physical address indicating the storage area on the
また、制御部220は、ホスト装置2から読み出し要求を受信した場合、読み出し要求
により指定された論理アドレスを上述のアドレス変換テーブルを用いて物理アドレスに変
換し、該物理アドレスからの読み出しをメモリI/F250へ指示する。
In addition, when receiving a read request from the host device 2, the
データバッファ230は、メモリコントローラ200がホスト装置2から受信したユー
ザデータを、不揮発性メモリ100へ記憶するまでの間、一時格納する。また、データバ
ッファ230は、不揮発性メモリ100から読み出したユーザデータをホスト装置2へ送
信するまでに一時格納する。データバッファ230は、例えば、SRAM(Static Rand
om Access Memory)やDRAM(Dynamic Random Access Memory)などの汎用メモ
リで構成される。また、データバッファ230は、メモリコントローラ200内部に搭載
されてもよく、メモリコントローラ200の外にメモリコントローラ200とは独立して
搭載されてもよい。
The
om Access Memory) and DRAM (Dynamic Random Access Memory). The
符号化部/復号部240は、符号化回路241と復号回路242とを備える。符号化部
/復号部はECC(Error Correcting Code)回路とも称される。符号化回路241は、
データバッファ230に保持されたデータを符号化して、データと冗長部(パリティ)と
を有する符号語を生成する。符号化回路241は、第1のデータ長のユーザデータを符号
化(誤り訂正符号化)して第2のデータ長の符号語を生成する。符号化回路241が行う
符号化では、例えば、BCH(Bose-Chaudhuri-Hocquenghem)符号、RS(Reed-Solomon
)符号、LDPC(Low Density Parity Check)符号等を用いることができる。なお、符
号化回路241が用いる誤り訂正符号はこれらに限定されない。復号回路242は、不揮
発性メモリ100から読み出されたデータである符号語をメモリI/F250経由で取得
し、取得した符号語を復号する。復号回路242は、復号時に誤り訂正に失敗した場合は
、制御部220に誤り訂正失敗を通知する。
The encoding unit /
The data held in the
) Code, LDPC (Low Density Parity Check) code, or the like. Note that the error correction code used by the
メモリI/F250は、不揮発性メモリ110を制御する。メモリI/F250は、制
御部220等の制御に従って符号化回路241から出力された符号語を不揮発性メモリ1
10に書き込む。また、メモリI/F250は、制御部220等の制御に従って不揮発性
メモリ110からデータを読み出し、バッファ230経由で復号回路242に転送する。
更にメモリI/F250は、制御部220等の制御に従って、不揮発性メモリ110に保
存されているデータを消去する。
The memory I /
Write to 10. Further, the memory I /
Further, the memory I /
メモリI/F250と各メモリチップ110との間は、NANDインターフェースに従
ったバスによって接続される。このバス上で送受信される信号は、例えばチップイネーブ
ル信号/CE、アドレスラッチイネーブル信号ALE、コマンドラッチイネーブル信号C
LE、ライトイネーブル信号/WE、リードイネーブル信号/RE、及び入出力信号I/
O等である。信号/CEはメモリチップ110をイネーブルにするための信号である。信
号ALEは、入力信号がアドレスであることをメモリチップ110に通知する信号である
。信号CLEは、入力信号がコマンドであることをメモリチップ110に通知する信号で
ある。信号/WEは、入力信号をメモリチップ110に取り込ませるための信号である。
信号/REは、出力信号をメモリI/F250に取り込ませるための信号である。入出力
信号I/Oは、正味のコマンド、アドレス、及びデータ等の信号である。
The memory I /
LE, write enable signal / WE, read enable signal / RE, and input / output signal I /
O and the like. The signal / CE is a signal for enabling the
The signal / RE is a signal for causing the memory I /
温度センサ300は、メモリコントローラ200の温度を測定するためのセンサで、メ
モリコントローラ200の近傍に配置される。なお、以降の説明において「メモリコント
ローラ200の温度」とは、温度センサ300が搭載された位置で計測された温度であり
、温度センサ300で測定された温度情報を含む。温度センサI/F260は、メモリコ
ントローラ200と温度センサ300との間の通信インターフェースの機能を有し、制御
部220は、温度センサ300で測定された温度情報を、温度センサI/F260を介し
て取得する。
The
温度センサ300は、温度情報を温度センサI/F260経由で制御部220へ自発的
に出力してもよいし、温度センサI/F260が制御部220からの要求に応じて温度セ
ンサ300から取得した測定情報を制御部220へ送信してもよい。後者の場合は、制御
部220から温度センサI/F260へ温度情報を取得するためのコマンドが送信され、
温度センサI/F260が当該コマンドに対する応答として温度センサ300から取得し
た温度情報を制御部220へ送信する。
The
The temperature sensor I /
メモリシステム1は、温度センサ300を複数搭載してもよい。複数の温度センサ30
0の各々に対して各々の温度センサI/F260が設けられて制御部220が各々の温度
センサI/F260を介して温度情報を取得してもよいし、複数の温度センサ300に対
して1つの温度センサI/F260が設けられて制御部220が温度センサI/F260
を介して複数の温度センサ300各々が測定した温度情報を取得してもよい。制御部22
0は、温度センサI/F260を介して取得した複数の温度センサ300で測定された温
度情報に基づいて、メモリコントローラ200の温度を確定させる。メモリコントローラ
200の温度を確定させる方法としては、例えば、複数の温度センサ300で測定された
各々の温度情報の平均値を使用する場合や、各々の温度情報の中央値を使用する場合や、
複数の温度センサ300の特定の温度センサ300で測定された温度情報を使用する場合
等がある。
The
Each temperature sensor I /
The temperature information measured by each of the plurality of
0 determines the temperature of the
In some cases, temperature information measured by a
なお、温度センサ300がメモリコントローラ200内に搭載されてもよい。また、温
度センサ300がメモリコントローラ200内に搭載され、温度センサ300と制御部2
20がバス270経由で接続され、温度センサ300が制御部220の要求に応じて温度
情報を制御部220へ送信してもよい。また、温度センサ300がメモリコントローラ2
00内に複数搭載されてもよい。温度センサ300がメモリコントローラ200内に複数
搭載される場合、制御部220は、複数の温度センサ300から得られた温度情報に基づ
いて、メモリコントローラ200の温度を確定させる。メモリコントローラ200の温度
を確定させる方法としては、例えば、複数の温度センサ300から得られた各々の温度情
報の平均値を使用する場合や、各々の温度情報の中央値を使用する場合や、複数の温度セ
ンサ300の特定の温度センサ300から得られた温度情報を使用する場合等がある。
Note that the
20 may be connected via the
A plurality may be mounted in 00. When a plurality of
図2及び図3は、メモリシステム1とホスト装置2が組み込まれたシステム3の例を示
す。システム3は、電子機器の一例である。
2 and 3 show an example of the
図2に示すように、メモリシステム1は、例えばサーバ等のシステム3内に記憶装置と
して組み込まれる。システム3は、メモリシステム1とメモリシステム1が装着されたホ
スト装置2とを含む。ホスト装置2は、例えば上方に開口した複数のコネクタ4を有する
。コネクタ4は、例えば、スロットである。図2に示す例では、メモリシステム1は、基
板400を含み、基板400に、不揮発性メモリ100とメモリコントローラ200が搭
載される。複数のメモリシステム1は、ホスト装置2のコネクタ4に其々装着され、略鉛
直方向に起立した姿勢で互いに並べて支持される。このような構成によれば、複数のメモ
リシステム1をコンパクトに纏めて実装可能であり、ホスト装置2の小型化を図ることが
できる。
As shown in FIG. 2, the
また、メモリシステム1は、例えばノートブック型ポータブルコンピュータやタブレッ
ト端末、その他デタッチャブルノートPC(personal computer)のような電子機器のス
トレージデバイスとして使用されるものでもよい。図3に示すように、メモリシステム1
は、例えば、ホスト装置2に対応するポータブルコンピュータに実装される。ここでは、
メモリシステム1を含むポータブルコンピュータ全体がシステム3となる。
The
Is mounted on a portable computer corresponding to the host device 2, for example. here,
The entire portable computer including the
ポータブルコンピュータは、本体301と、表示ユニット302と、を備える。表示ユ
ニット302は、ディスプレイハウジング303と、このディスプレイハウジング303
に収容された表示装置304と、を備える。
The portable computer includes a
And a
本体301は、筐体305と、キーボード306と、ポインティングデバイスであるタ
ッチパッド307と、を備える。筐体305は、メイン回路基板、ODD(Optical Disk
Device)ユニット、カードスロット308など、を含む。
The
Device) unit,
カードスロット308は、筐体305の側面に設けられる。ユーザは、筐体305の外
部から追加デバイス309をカードスロット308に挿入することが可能である。
The
メモリシステム1は、HDD(Hard disk drive)の置き換えとして、ポータブルコン
ピュータ内部に実装された状態で使用してもよいし、追加デバイス309として使用して
もよい。
The
図4は、第1実施形態に係るメモリシステムの外観の一例を示す斜視図である。この例
では、メモリシステム1は、基板400を含む。基板400には、メモリチップ110−
1、110−2、110−3、110−4、110−5、110−6、110−7、11
0−8、ホストI/F210に含まれる接続部211、メモリコントローラ200、バッ
ファ230としてのDRAM、および温度センサ300が搭載されてよいが、これに限定
されない。
FIG. 4 is a perspective view showing an example of the appearance of the memory system according to the first embodiment. In this example, the
1, 110-2, 110-3, 110-4, 110-5, 110-6, 110-7, 11
0-8, the
なお、ホストI/F210は、接続部211(端子部)を有し、図4に示すメモリシス
テム1では、接続部211はメモリコントローラ200の外にメモリコントローラ200
と独立して搭載される。接続部211は、例えば複数の接続端子(金属端子)を有する。
接続部211は、例えば、ホスト装置2のコネクタ4に差し込まれ、コネクタ4に電気的
に接続される。ホストI/F210は、接続部211を介してホスト装置2との間で信号
をやり取りする。
Note that the host I /
And mounted independently. The
The
また、図4に示すメモリシステム1では、メモリチップ110は、他のメモリチップ1
10、メモリコントローラ200、バッファ230としてのDRAM、または温度センサ
300と側面が任意の長さの間隙を介して向き合うように配置され、温度センサ300は
、メモリコントローラ200、NANDメモリ110−1、・・・、110−8、バッフ
ァ230としてのDRAMに囲まれた位置に配置されているが、NANDメモリ110−
1、110−2、110−3、110−4、110−5、110−6、110−7、11
0−8、ホストインターフェース210、メモリコントローラ200、バッファ230と
してのDRAM、および温度センサ300の配置は一例であり、これに限定されない。
In the
10, the
1, 110-2, 110-3, 110-4, 110-5, 110-6, 110-7, 11
The arrangement of 0-8, the
次に、上記メモリチップ110の構成について説明する。図5は、本実施形態に係るメ
モリチップ110のブロック図である。前述の通り、メモリチップ110は例えばNAN
D型フラッシュメモリチップであり、本実施態様では、メモリセルが半導体基板上方に三
次元に積層された三次元積層型NAND型フラッシュメモリである。
Next, the configuration of the
A D-type flash memory chip, which is a three-dimensional stacked NAND flash memory in which memory cells are three-dimensionally stacked above a semiconductor substrate in this embodiment.
メモリチップ110は、I/O(Input/Output)コントローラ111と、コマンド/信号
バッファ112と、アドレスバッファ113と、電圧コントローラ114と、電圧発生器
115と、ドライバ116と、センスアンプ117と、ロウデコーダ118と、メモリセ
ルアレイ119と、ページバッファ120と、チップ温度センサ121と、を備える。
The
メモリセルアレイ119は、それぞれがワード線及びビット線に関連付けられた複数の
不揮発性メモリセルの集合である複数のブロックBLK(BLK0、BLK1、BLK2
、…)を備えている。ブロックBLKはデータの消去単位となり、同一ブロックBLK内
のデータは一括して消去される。ブロックBLKの各々は、メモリセルが直列接続された
NANDストリング131の集合である複数のストリングユニットSU(SU0、SU1
、SU2、…)を備えている。もちろん、メモリセルアレイ119内のブロック数や、1
ブロックBLK内のストリングユニット数は任意である。
The
, ...). The block BLK serves as a data erasing unit, and data in the same block BLK is erased collectively. Each of the blocks BLK includes a plurality of string units SU (SU0, SU1) that are sets of NAND strings 131 in which memory cells are connected in series.
, SU2, ...). Of course, the number of blocks in the
The number of string units in the block BLK is arbitrary.
I/Oコントローラ111は、入力信号に基づき、メモリI/F250からのコマンド
をコマンド/信号バッファ112に出力し、アドレスをアドレスバッファ113に出力す
る。また、I/Oコントローラ111は、メモリチップ110に対する書き込みコマンド
を受信する場合にデータをページバッファ120に送り、メモリチップ110に対する読
み出しコマンドを受信する場合にデータをページバッファ120から受ける。
Based on the input signal, the I /
コマンド/信号バッファ112は、I/Oコントローラ111から出力されたコマンド
をデコードし、そのコマンドが示す動作(例えば、読み出し、書き込み、消去など)を実
現させるための指示を電圧コントローラ114に出力する。アドレスバッファ113は、
I/Oコントローラ111から出力されたアドレスをデコードし、そのアドレスをドライ
バ116に出力する。
The command /
The address output from the I /
電圧コントローラ114は、コマンド/信号バッファ112から出力されたコマンドの
指示に従って、メモリセルアレイ119に対するアクセス動作を制御する。
The
電圧発生器115は、電圧コントローラ114からの制御信号CGPVDACに基づき、例え
ば、書き込み動作を実現するためのプログラム電圧CGPVを発生する。電圧発生器115は
、電圧コントローラ114からの制御信号CGRVDACに基づき、例えば、読み出し動作を実
現するための読み出し電圧CGRVを発生する。
The
チップ温度センサ121は、メモリチップ110の温度を計測し、計測した温度の情報
をメモリチップ温度情報として電圧コントローラ114に出力する。チップ温度センサ1
21はメモリチップ110内に搭載されてもよいし、メモリチップ110の近傍に配置さ
れてもよい。
The
21 may be mounted in the
電圧コントローラ114は、チップ温度センサ121から出力されたメモリチップ温度
情報を、コマンド/信号バッファ112、I/Oコントローラ111を介して、メモリコ
ントローラ200へ出力する。電圧コントローラ114は、チップ温度センサ121から
出力されたメモリチップ温度情報を取得し、取得したメモリチップ温度情報を用いてプロ
グラム電圧を発生させるための制御信号CGPVDACを補正してもよい。
The
ドライバ116は、アドレスバッファ113からのアドレスと電圧コントローラ114
からの指示と、に基づき、センスアンプ117、ロウデコーダ118、及び、メモリセル
アレイ119の動作を制御する。
The
The operation of the
ロウデコーダ118は、ブロックアドレスやページアドレスをデコードして、対応する
ブロックBLKのいずれかのワード線を選択する。そしてロウデコーダ118は、選択ワ
ード線及び非選択ワード線等に、適切な電圧を印加する。
The
センスアンプ117は、データの読み出し時には、メモリセルからビット線に読み出さ
れたデータをセンスする。またデータの書き込み時には、書き込みデータをメモリセルに
転送する。
The
次に、上記メモリセルアレイ119の備えるブロックBLKの構成について、図6を用
いて説明する。図6は、ブロックBLKの回路図である。
Next, the configuration of the block BLK included in the
図示するように、ブロックBLKは例えば4つのストリングユニットSU(SU0〜S
U3)を含む。また各々のストリングユニットSUは、複数のNANDストリング131
を含む。
As illustrated, the block BLK includes, for example, four string units SU (SU0 to S0).
U3). Each string unit SU includes a plurality of NAND strings 131.
including.
NANDストリング131の各々は、例えば8個のメモリセルトランジスタMT(MT
0〜MT7)と、選択トランジスタST1、ST2とを含んでいる。メモリセルトランジ
スタMTは、制御ゲートと電荷蓄積層とを含む積層ゲートを備え、データを不揮発に保持
する。なお、メモリセルトランジスタMTの個数は8個に限られず、16個や32個、6
4個、128個等であってもよく、その数は限定されるものではない。メモリセルトラン
ジスタMTは、選択トランジスタST1、ST2間に、その電流経路が直列接続されるよ
うにして配置されている。この直列接続の一端側のメモリセルトランジスタMT7の電流
経路は選択トランジスタST1の電流経路の一端に接続され、他端側のメモリセルトラン
ジスタMT0の電流経路は選択トランジスタST2の電流経路の一端に接続されている。
Each of the NAND strings 131 includes, for example, eight memory cell transistors MT (MT
0 to MT7) and select transistors ST1 and ST2. The memory cell transistor MT includes a stacked gate including a control gate and a charge storage layer, and holds data in a nonvolatile manner. Note that the number of memory cell transistors MT is not limited to eight, but 16 or 32, 6
There may be four, 128, etc., and the number is not limited. The memory cell transistor MT is arranged between the select transistors ST1 and ST2 such that the current path is connected in series. The current path of the memory cell transistor MT7 on one end side of the series connection is connected to one end of the current path of the selection transistor ST1, and the current path of the memory cell transistor MT0 on the other end side is connected to one end of the current path of the selection transistor ST2. ing.
ストリングユニットSU0〜SU3の各々の選択トランジスタST1のゲートは、それ
ぞれセレクトゲート線SGD0〜SGD3に共通接続される。他方で、選択トランジスタ
ST2のゲートは、複数のストリングユニット間で同一のセレクトゲート線SGSに共通
接続される。また、同一のブロックBLK0内にあるメモリセルトランジスタMT0〜M
T7の制御ゲートはそれぞれワード線WL0〜WL7に共通接続される。
The gates of the select transistors ST1 of the string units SU0 to SU3 are commonly connected to select gate lines SGD0 to SGD3, respectively. On the other hand, the gates of the select transistors ST2 are commonly connected to the same select gate line SGS among a plurality of string units. Further, the memory cell transistors MT0 to MT0 in the same block BLK0.
The control gates of T7 are commonly connected to word lines WL0 to WL7, respectively.
すなわち、ワード線WL0〜WL7及びセレクトゲート線SGSは同一ブロックBLK
内の複数のストリングユニットSU0〜SU3間で共通に接続されているのに対し、セレ
クトゲート線SGDは、同一ブロックBLK内であってもストリングユニットSU0〜S
U3毎に独立している。
That is, the word lines WL0 to WL7 and the select gate line SGS are in the same block BLK.
The plurality of string units SU0 to SU3 are commonly connected, while the select gate line SGD is connected to the string units SU0 to S even in the same block BLK.
Each U3 is independent.
また、メモリセルアレイ119内でマトリクス状に配置されたNANDストリング13
1のうち、同一行にあるNANDストリング131の選択トランジスタST1の電流経路
の他端は、いずれかのビット線BL(BL0〜BL(L−1)、(L−1)は1以上の自
然数)に共通接続される。すなわちビット線BLは、複数のブロックBLK間でNAND
ストリング131を共通に接続する。また、選択トランジスタST2の電流経路の他端は
ソース線SLに共通に接続されている。ソース線SLは、例えば複数のブロック間でNA
NDストリング131を共通に接続する。
The NAND strings 13 arranged in a matrix in the
1, the other end of the current path of the selection transistor ST1 of the
The
The ND strings 131 are connected in common.
前述の通り、同一のブロックBLK内にあるメモリセルトランジスタMTのデータは、
一括して消去される。これに対してデータの読み出し及び書き込みは、いずれかのブロッ
クBLKのいずれかのストリングユニットSUにおける、いずれかのワード線WLに共通
に接続された複数のメモリセルトランジスタMTにつき、一括して行われる。メモリセル
がシングルレベルセル(SLC)である場合は、この一括して行われる単位が1ページに
対応する。
As described above, the data of the memory cell transistors MT in the same block BLK are
Erased all at once. On the other hand, data reading and writing are performed collectively for a plurality of memory cell transistors MT connected in common to any word line WL in any string unit SU in any block BLK. . When the memory cell is a single level cell (SLC), the unit that is collectively performed corresponds to one page.
図7は、本実施形態に係るメモリセルアレイ119の一部領域の断面図である。図示す
るように、p型ウェル領域20上に複数のNANDストリング131が形成されている。
すなわち、ウェル領域20上には、セレクトゲート線SGSとして機能する複数の配線層
27、ワード線WLとして機能する複数の配線層23、及びセレクトゲート線SGDとし
て機能する複数の配線層25が形成されている。
FIG. 7 is a cross-sectional view of a partial region of the
That is, a plurality of wiring layers 27 functioning as select gate lines SGS, a plurality of wiring layers 23 functioning as word lines WL, and a plurality of wiring layers 25 functioning as select gate lines SGD are formed on the
そして、これらの配線層25、23、及び27を貫通してウェル領域20に達するメモ
リホール26が形成されている。メモリホール26の側面には、ブロック絶縁膜28、電
荷蓄積層29(絶縁膜)、及びゲート絶縁膜30が順次形成され、更にメモリホール26
内を導電膜31が埋め込んでいる。導電膜31は、NANDストリング131の電流経路
として機能し、メモリセルトランジスタMT並びに選択トランジスタST1及びST2の
動作時にチャネルが形成される領域である。
A
A
各NANDストリング131において、複数(本例では4層)設けられた配線層27は
、電気的に共通に接続されて、同一のセレクトゲート線SGSに接続される。すなわち、
この4層の配線層27は、実質的に1つの選択トランジスタST2のゲート電極として機
能する。これは選択トランジスタST1(4層のセレクトゲート線SGD)についても同
様である。
In each
The four
以上の構成により、各NANDストリング131において、ウェル領域20上に選択ト
ランジスタST2、複数のメモリセルトランジスタMT、及び選択トランジスタST1が
順次積層されている。
With the above configuration, in each
なお、図7の例では選択トランジスタST1及びST2は、メモリセルトランジスタM
Tと同様に電荷蓄積層29を備えている。しかし選択トランジスタST1及びST2は、
実質的にデータを保持するメモリセルとして機能するものでは無く、スイッチとして機能
する。この際、選択トランジスタST1及びST2がオン/オフする閾値は、電荷蓄積層
29に電荷を注入することによって制御されても良い。
In the example of FIG. 7, the selection transistors ST1 and ST2 are the memory cell transistors M.
Similar to T, a
It does not function as a memory cell that substantially holds data, but functions as a switch. At this time, the threshold value at which the select transistors ST1 and ST2 are turned on / off may be controlled by injecting charges into the
導電膜31の上端には、ビット線BLとして機能する配線層32が形成される。ビット
線BLは、センスアンプ117に接続される。
A
更に、ウェル領域20の表面内には、n+型不純物拡散層33及びp+型不純物拡散層
34が形成されている。拡散層33上にはコンタクトプラグ35が形成され、コンタクト
プラグ35上には、ソース線SLとして機能する配線層36が形成される。ソース線SL
は、図示しないソース線ドライバに接続される。また拡散層34上にはコンタクトプラグ
37が形成され、コンタクトプラグ37上には、ウェル配線CPWELLとして機能する
配線層38が形成される。ウェル配線CPWELLは、図示しないウェルドライバに接続
される。配線層36及び38は、セレクトゲート線SGDよりも上層であり、且つ配線層
32よりも下層のレイヤに形成されるが、この構造は一例であり、これに限定されない。
Further, an n + -type
Are connected to a source line driver (not shown). A
以上の構成が、図7を記載した紙面の奥行き方向に複数配列されており、奥行き方向に
並ぶ複数のNANDストリング131の集合によってストリングユニットSUが形成され
る。また、同一のストリングユニットSU内に含まれる複数のセレクトゲート線SGSと
して機能する配線層27は、互いに共通に接続されている。つまり、隣接するNANDス
トリング131間のウェル領域20上にもゲート絶縁膜30が形成され、拡散層33に隣
接する半導体層27及びゲート絶縁膜30は、拡散層33近傍まで形成される。
A plurality of the above configurations are arranged in the depth direction of the paper surface illustrated in FIG. 7, and a string unit SU is formed by a set of a plurality of NAND strings 131 arranged in the depth direction. Further, the wiring layers 27 functioning as a plurality of select gate lines SGS included in the same string unit SU are connected in common to each other. That is, the
従って、選択トランジスタST2がオン状態とされる際には、そのチャネルはメモリセ
ルトランジスタMT0と拡散層33とを電気的に接続する。また、ウェル配線CPWEL
Lに電圧を印加することで、導電膜31に電位を与えることが出来る。
Therefore, when the selection transistor ST2 is turned on, the channel electrically connects the memory cell transistor MT0 and the
By applying a voltage to L, a potential can be applied to the
なお、メモリセルアレイ119の構成についてはその他の構成であっても良い。すなわ
ちメモリセルアレイ119の構成については、例えば、“三次元積層不揮発性半導体メモ
リ”という2009年3月19日に出願された米国特許出願12/407,403号に記
載されている。また、“三次元積層不揮発性半導体メモリ”という2009年3月18日
に出願された米国特許出願12/406,524号、“不揮発性半導体記憶装置及びその
製造方法”という2010年3月25日に出願された米国特許出願12/679,991
号“半導体メモリ及びその製造方法”という2009年3月23日に出願された米国特許
出願12/532,030号に記載されている。これらの特許出願は、その全体が本願明
細書において参照により援用されている。
Note that the
No. 12 / 532,030, filed Mar. 23, 2009, entitled “Semiconductor Memory and Manufacturing Method”. These patent applications are hereby incorporated by reference in their entirety.
次に、第1の実施形態に係るメモリシステムの不揮発性メモリ100に格納されたデー
タに対するアクセス処理について説明する。
Next, access processing for data stored in the
第1の実施形態に係るメモリシステムでは、メモリシステム1がホスト装置2から読み
出し要求、書き込み要求、データ消去要求、トリムコマンドのようなデータ削除要求等を
受信した場合や、バックグラウンドでメモリコントローラ200が、ガベージコレクショ
ンや、リフレッシュや、ウェアレベリングや、パトロールリード等を実行する場合に、メ
モリコントローラ200は不揮発性メモリ100にアクセスする。
In the memory system according to the first embodiment, when the
ガベージコレクションは、コンパクションとも称される。不揮発性メモリ100は、デ
ータの消去単位とデータの読み書き単位が異なるため、不揮発性メモリ100の書き換え
が進むと、無効データによって、ブロックが断片化され、このような断片化されたブロッ
クが増えると、使用可能なブロックが少なくなる。ガベージコレクションは、使用可能な
ブロックを増加させるための処理で、例えば、有効データおよび無効データが含まれてい
る複数のアクティブブロックから有効データを集めて、別のブロックに書き直し、フリー
ブロックを確保する処理を意味する。
Garbage collection is also called compaction. In the
アクティブブロックは、有効データが記録されているブロックを示す。フリーブロック
は、有効データが記録されていないブロックを示す。フリーブロックは、消去した後、消
去済みブロックとして再利用可能である。フリーブロックは、本実施形態では、有効デー
タが記録されていない消去前のブロックと、消去済みブロックとの両方を含んでいる。有
効データとは、論理アドレスと対応付けられているデータであり、無効データとは論理ア
ドレスが対応付けられていないデータである。消去済みブロックは、データが書き込まれ
ると、アクティブブロックとなる。
The active block indicates a block in which valid data is recorded. The free block indicates a block in which valid data is not recorded. After erasing, the free block can be reused as an erased block. In this embodiment, the free block includes both a block before erasure in which valid data is not recorded and an erased block. Valid data is data associated with a logical address, and invalid data is data that is not associated with a logical address. When data is written, the erased block becomes an active block.
リフレッシュは、例えば、誤り訂正処理における訂正ビット数が増加する等のようにあ
るブロック内のデータの劣化が検出された場合に、当該ブロック内のデータを別のブロッ
クに書き直す処理である。
The refresh is a process of rewriting data in a block to another block when deterioration of data in the block is detected, for example, the number of correction bits in the error correction process is increased.
ウェアレベリングは、例えば、書き換え回数や消去回数が多いブロックに記憶されてい
るデータと、書き換え回数や消去回数の少ないブロックに記憶されているデータとを入れ
替えることで、不揮発性メモリ100のブロックの書き換え回数を平準化する処理である
。
In wear leveling, for example, data stored in a block with a large number of rewrites or erasures is replaced with data stored in a block with a small number of rewrites or erasures, thereby rewriting the block of the
パトロールリードは、エラーの増加したブロックを検出するために、例えば、不揮発性
メモリ100に記憶されているデータを所定単位ずつ読み出し、当該読み出されたデータ
を復号回路242での誤り訂正結果に基づいてテストする処理である。このテスト処理で
は、例えば、読み出されたデータの誤りビット数を閾値と比較し、誤りビット数が閾値を
越えたデータをリフレッシュの対象とする。
In the patrol read, in order to detect a block with increased errors, for example, data stored in the
なお、以下の説明では、ホスト装置2から読み出し要求を受け取った場合のメモリシス
テム1の処理、及び、ホスト装置2からデータ書き込み要求を受け取った場合のメモリシ
ステム1の処理、及び、メモリコントローラ200が不揮発性メモリ100の所定のブロ
ックを消去することに決定した場合のメモリシステム1の処理を、メモリコントローラ2
00が不揮発性メモリ100に格納されたデータに対するアクセス処理の例として説明す
る。
In the following description, the processing of the
An example of access processing for data stored in the
図8は、第1の実施形態に係るメモリシステムのホスト装置2からの読み出し要求に対
する不揮発性メモリ100からのデータの読み出し処理のフローチャートである。このフ
ローチャートは、ホスト装置2から読み出し要求を受け、要求のあったデータを不揮発性
メモリ100から読み出し、読み出し結果をホスト装置2へ送信する処理を示している。
FIG. 8 is a flowchart of data read processing from the
前述した読み出し要求では、ホスト装置2がメモリシステム1に対して読み出したいデ
ータの量やデータの読み出し位置を示したアドレス情報等が指定されている。メモリシス
テム1は、読み出し要求の受信が可能か否かを判断し、読み出し要求の受信が可能である
場合に、ホスト装置2から読み出し要求を受信してもよい。図8のフローチャートではこ
の過程を省略し、読み出し要求の受信が可能であるとして、メモリシステム1のメモリコ
ントローラ200がホスト装置2からホストI/F210経由で読み出し要求を受信した
段階から説明を行う。
In the read request described above, the amount of data that the host apparatus 2 wants to read from the
ホスト装置2から読み出し要求を受ける(ステップ801)と、メモリコントローラ2
00の制御部220は、読み出し要求の対象となるデータの格納場所を特定するためにア
ドレス変換テーブルを使用して読み出し要求で指定されたアドレスである論理アドレスを
物理アドレスに変換し、ホスト装置2からの読み出し要求を処理するためにどのメモリチ
ップ110のどの物理アドレスへアクセスすればよいかを解決する(ステップ802)。
When a read request is received from the host device 2 (step 801), the memory controller 2
The 00
本実施形態では、ホスト装置2からの読み出し要求で指定された論理アドレスに対する
アクセス先のメモリチップ110がメモリチップ110−1であるとして説明する。
In the present embodiment, description will be made assuming that the
次に、メモリコントローラ200の制御部220は、メモリコントローラ200の温度
を、温度センサI/F260を介して取得する(ステップ803)。
Next, the
その後、メモリコントローラ200の制御部220は、メモリコントローラ200の温
度が所定の第1の温度より高いかどうかを判定する(ステップ804)。
Thereafter, the
メモリコントローラ200の温度が所定の第1の温度より高くない場合(ステップ80
4:No)、メモリコントローラ200の制御部220は、アクセス先のメモリチップ1
10−1からのメモリチップ温度情報読み出しをメモリI/F250へ指示し、メモリI
/F250経由で当該メモリチップ110−1からメモリチップ温度情報を取得する(ス
テップ805)。
When the temperature of the
4: No), the
The memory I /
Memory chip temperature information is acquired from the memory chip 110-1 via / F250 (step 805).
メモリコントローラ200の制御部220は、メモリチップ110−1からメモリチッ
プ温度情報を取得するために、メモリI/F250経由で、メモリチップ110−1へコ
マンドを送信する。
The
図9は、メモリチップ110のメモリチップ温度情報を取得するために、メモリI/F
250を経由してメモリコントローラ200からメモリチップ110へ送信される信号を
示すコマンドシーケンスの例を示す。図9では、入出力信号I/Oとして送信される信号
と、メモリチップ110−1のレディ/ビジー状態を示すR/B信号のみを示しており、
その他の信号/CE、ALE、CLE、/WE、及び/REの図示を省略している。
FIG. 9 shows a memory I / F for acquiring memory chip temperature information of the
An example of a command sequence indicating a signal transmitted from the
The other signals / CE, ALE, CLE, / WE, and / RE are not shown.
図9に示すように、メモリコントローラ200が入出力信号I/Oとしてメモリチップ
温度情報取得コマンド(XXh)を送信すると、メモリチップ110はビジー状態となり
、R/B信号は“L”レベルとなる。そして、メモリチップ110にてメモリチップ温度
情報の取得動作が開始される。メモリチップ110のメモリチップ温度情報がメモリコン
トローラ200に出力され、メモリチップ110がレディ状態に復帰すると、R/B信号
は“H”レベルとなる。この結果、メモリチップの温度情報が、メモリコントローラ20
0に読み出される。
As shown in FIG. 9, when the
Read to zero.
図9で説明した動作は、1つのメモリチップ110に対してのみ行われる。すなわち、
例えば、メモリコントローラ200は、メモリチップ110−1、・・・、メモリチップ
110−Nに対してそれぞれメモリチップ温度情報取得コマンドを発行することにより、
メモリコントローラ200はメモリチップ110−1、・・・、メモリチップ110−N
それぞれの温度情報を取得でき、メモリチップ110−1、・・・、メモリチップ110
−Nそれぞれの温度を認識できる。
The operation described with reference to FIG. 9 is performed only on one
For example, the
The
Each temperature information can be acquired, and the memory chip 110-1,.
-N Recognizes each temperature.
メモリコントローラ200の制御部220は、メモリチップ110−1から取得したメ
モリチップ温度情報からメモリチップ110−1の温度を特定し、メモリチップ110−
1の温度が所定の第2の温度より高いかどうかを判定する(ステップ806)。所定の第
2の温度は所定の第1の温度と同じであってもよいし、異なる温度であってもよい。
The
It is determined whether the temperature of 1 is higher than a predetermined second temperature (step 806). The predetermined second temperature may be the same as the predetermined first temperature, or may be a different temperature.
メモリチップ110−1の温度が所定の第2の温度より高くない場合(ステップ806
:No)、メモリコントローラ200の制御部220は、昇温処理を実行する(ステップ
807)。
When the temperature of the memory chip 110-1 is not higher than the predetermined second temperature (step 806)
: No), the
この昇温処理の実行は、メモリコントローラ200の温度およびメモリチップ110の
温度を上げるために実行する処理である。昇温処理の実行は、例えば、メモリコントロー
ラ200の制御部220が、図示しないヒータ等の昇温部を駆動させることでもよいし、
メモリコントローラ200の制御部220が符号化部/復号部240を駆動させることで
あってもよい。また、メモリシステム1のメモリコントローラ200の温度およびメモリ
チップ110の温度を上げられるのであれば、メモリコントローラ200の制御部220
は、昇温部の駆動、符号化部/復号部240の駆動とは別の処理を実行してもよい。なお
、メモリシステム1が昇温部を実装する場合、昇温部は基板400に実装され得る。また
、昇温部は、昇温回路、昇温器、昇温モジュールとも称される。
The execution of the temperature raising process is a process executed to raise the temperature of the
The
May execute a process different from the driving of the temperature raising unit and the driving of the encoding unit /
ここで、符号化部/復号部240を駆動させるとは、復号回路242を駆動させず符号
化回路241を駆動させること、または、符号化回路241と復号回路242をともに駆
動させること、または、符号化回路241を駆動させず復号回路242を駆動させること
を含む。
Here, driving the encoding unit /
符号化回路241を駆動させるとは、例えば、ダミーデータを符号化回路241へ出力
し、符号化回路241により符号化されたダミーデータを破棄(無視)することである。
ここで、ダミーデータとは、メモリチップ110へユーザデータとして書き込まれないデ
ータであればよく、オールゼロ、オール1等の任意の値でよい。
Driving the
Here, the dummy data may be any data that is not written as user data to the
復号回路242を駆動させるとは、例えば、ダミーデータを復号回路242へ出力し、
復号回路242による復号結果を破棄(無視)することである。ここでもダミーデータと
は、メモリチップ110へユーザデータとして書き込まれないデータであればよく、オー
ルゼロ、オール1等の任意の値でよい。ここで、復号回路242がダミーデータを復号で
きた場合はダミーデータの復号後のデータが、復号回路242が復号できなかった場合、
つまり復号回路242が誤り訂正に失敗した場合は誤り訂正失敗が、復号結果となる。
Driving the
The decoding result by the
That is, when the
メモリコントローラ200の制御部220は、昇温処理を実行した(ステップ807)
後、ステップ803に戻り、再度、メモリコントローラ200の温度を、温度センサI/
F260経由で取得する(ステップ803)。
The
Thereafter, the process returns to step 803, and the temperature of the
Obtained via F260 (step 803).
メモリコントローラ200の温度が所定の第1の温度より高い場合(ステップ804:
Yes)、または、メモリチップ110−1の温度が所定の第2の温度より高い場合(ス
テップ806:Yes)、メモリコントローラ200の制御部220は、メモリチップ1
10−1からのデータ読み出しをメモリI/F250へ指示し、メモリI/F250経由
でメモリチップ110−1からデータを読み出す(ステップ808)。
When the temperature of the
Yes), or when the temperature of the memory chip 110-1 is higher than the predetermined second temperature (step 806: Yes), the
Data read from 10-1 is instructed to the memory I /
次に、メモリコントローラ200は、メモリチップ110−1から読み出したデータを
復号する(ステップ809)。メモリコントローラ200の制御部220は、メモリチッ
プ110−1からデータを読み出したデータの復号を復号回路242に対して指示し、復
号回路242は制御部220から指示されたデータを復号する。復号回路242は、復号
結果を制御部220に対して出力する。すなわち、復号時に誤り訂正に成功した場合は復
号されたデータを、復号時に誤り訂正に失敗した場合は誤り訂正失敗を制御部220に通
知する。
Next, the
その後、制御部220は、誤り訂正に成功の場合は復号されたデータであるユーザデー
タを、誤り訂正失敗が通知された場合は読み出しエラーをホストI/F210経由でホス
ト装置2へ送信する(ステップ810)。
Thereafter, the
図8に示すフローチャートでは、メモリコントローラ200の温度が所定の第1の温度
より高くなく、かつ、メモリチップ110−1の温度が所定の第2の温度より高くない限
り、メモリコントローラ200の制御部220がメモリチップ110−1からデータを読
み出さないようになっているが、メモリコントローラ200の制御部220は、タイムア
ウトを検出したら、つまり、所定の時間を経過したら、メモリコントローラ200の制御
部220がメモリチップ110−1からデータを読み出して復号されたデータをホスト装
置2へ送信するようにしてもよい。または、メモリコントローラ200は、タイムアウト
を検出したら、つまり、所定の時間を経過したらメモリコントローラ200がホスト装置
2へ読み出しエラーを送信するようにしてもよい。
In the flowchart shown in FIG. 8, unless the temperature of the
タイムアウトを検出する際の所定の時間の開始タイミングは、任意のタイミングでよく
、例えば、メモリシステム1がホスト装置2から読み出し要求を受信したタイミングや、
昇温処理の実行を開始するタイミング等でよい。
The start timing of the predetermined time when detecting the timeout may be any timing, for example, the timing when the
The timing of starting execution of the temperature raising process may be used.
図10は、第1の実施形態に係るメモリシステムのホスト装置2からの書き込み要求に
対して不揮発性メモリ100へのデータの書き込み処理のフローチャートである。このフ
ローチャートは、ホスト装置2からデータ書き込み要求を受け、書き込み要求で指定され
たデータを不揮発性メモリ100へ書き込み、書き込み結果をホスト装置2へ送信する処
理を示している。図10において、図8の構成と同一部分は同一符号で示す。
FIG. 10 is a flowchart of a data write process to the
前述した書き込み要求では、ユーザデータやユーザデータのアドレス情報等が指定され
ている。メモリシステム1は、書き込み要求の受信が可能か否かを判断し、書き込み要求
の受信が可能である場合に、ホスト装置2から書き込み要求を受信してもよい。図10の
フローチャートではこの過程を省略し、書き込み要求の受信が可能であるとして、メモリ
システム1のメモリコントローラ200がホスト装置2からホストI/F210経由で書
き込み要求を受信した段階から説明を行う。
In the write request described above, user data, user data address information, and the like are specified. The
ホスト装置2から書き込み要求を受けると(ステップ1001)、メモリコントローラ
200の制御部220は、書き込み要求で指定された論理アドレスに対応する物理アドレ
スを決定し、決定された物理アドレスをアドレス変換テーブルへ反映させる(ステップ1
002)。そして、メモリコントローラ200の制御部220は、書き込み要求で指定さ
れた書き込み対象のユーザデータの符号化を符号化回路241へ指示し、符号化回路24
1は書き込み対象のユーザデータを符号化する(ステップ1003)。
When receiving a write request from the host device 2 (step 1001), the
002). Then, the
1 encodes user data to be written (step 1003).
本実施形態では、ホスト2からの書き込み要求で指定された論理アドレスに対して決定
された物理アドレスに対応するメモリチップ110がメモリチップ110−1であるとし
て説明する。
In the present embodiment, the
次に、メモリコントローラ200の制御部220は、メモリコントローラ200の温度
を、温度センサI/F260経由で取得する(ステップ803)。
Next, the
その後、メモリコントローラ200の制御部220は、メモリコントローラ200の温
度が所定の第3の温度より高いかどうかを判定する(ステップ1004)。所定の第3の
温度は所定の第1の温度と同じであってもよいし、異なる温度であってもよい。
Thereafter, the
メモリコントローラ200の温度が所定の第3の温度より高くない場合(ステップ10
04:No)、メモリコントローラ200の制御部220は、アクセス先のメモリチップ
110−1のメモリチップ温度情報を取得するためにメモリチップ温度情報の読み出しを
メモリI/F250へ指示し、メモリI/F250経由で当該メモリチップ110−1か
らメモリチップ温度情報を取得する(ステップ805)。メモリコントローラ200の制
御部220によるメモリチップ110−1からのメモリチップ温度情報取得処理は、ホス
ト装置2から読み出し要求を受けた場合における処理と同様である。
When the temperature of the
04: No), the
メモリコントローラ200の制御部220は、メモリチップ110−1から取得したメ
モリチップ温度情報によりメモリチップ110−1の温度を特定し、メモリチップ110
−1の温度が所定の第4の温度より高いかどうかを判定する(ステップ1005)。
The
It is determined whether the temperature of −1 is higher than a predetermined fourth temperature (step 1005).
所定の第4の温度は所定の第2の温度と同じであってもよいし、異なる温度であっても
よい。また、所定の第4の温度は所定の第3の温度と同じであってもよいし、異なる温度
であってもよい。
The predetermined fourth temperature may be the same as the predetermined second temperature, or may be a different temperature. The predetermined fourth temperature may be the same as the predetermined third temperature or may be a different temperature.
メモリチップ110−1の温度が所定の第4の温度より高くない場合(ステップ100
5:No)、メモリコントローラ200の制御部220は、昇温処理を実行する(ステッ
プ807)。
When the temperature of the memory chip 110-1 is not higher than the predetermined fourth temperature (step 100)
5: No), the
メモリコントローラ200の制御部220は、昇温処理を実行した(ステップ807)
後、ステップ803に戻り、再度、メモリコントローラ200の温度を、温度センサI/
F260経由で取得する(ステップ803)。
The
Thereafter, the process returns to step 803, and the temperature of the
Obtained via F260 (step 803).
昇温処理の実行として符号化部/復号部240を駆動させる場合、メモリシステム1が
ホスト装置2からの読み出し要求に対して不揮発性メモリ100からデータを読み出す場
合と同様に、メモリコントローラ200の制御部220が符号化回路241だけを駆動さ
せるのではなく符号化回路241と復号回路242をともに駆動させることでもよいし、
符号化回路241を駆動させず復号回路242を駆動させることでもよい。
When the encoding unit /
The
メモリコントローラ200の温度が所定の第3の温度より高い場合(ステップ1004
:Yes)、または、メモリチップ110−1の温度が所定の第4の温度より高い場合(
ステップ1005:Yes)、メモリコントローラ200の制御部220は、メモリチッ
プ110−1への符号化されたデータの書き込みをメモリI/F250へ指示し、メモリ
I/F250経由でメモリチップ110−1へデータを書き込む(ステップ1006)。
When the temperature of the
: Yes) or when the temperature of the memory chip 110-1 is higher than a predetermined fourth temperature (
Step 1005: Yes), the
次に、メモリコントローラ200は、メモリチップ110−1へのデータ書き込み結果
をホストI/F210経由でホスト装置2へ送信する(ステップ1007)。
Next, the
図10に示すフローチャートでは、メモリコントローラ200の温度が所定の第3の温
度より高くなく、かつ、メモリチップ110−1の温度が所定の第4の温度より高くない
と、メモリコントローラ200の制御部220がメモリチップ110−1へデータを書き
込まないようになっているが、メモリコントローラ200は、タイムアウトを検出したら
、つまり、所定の時間を経過したら、メモリコントローラ200の制御部220がメモリ
チップ110−1へ符号化されたデータを書き込むようにしてもよい。または、メモリコ
ントローラ200は、タイムアウトを検出したら、つまり、所定の時間を経過したらメモ
リコントローラ200がホスト装置2へ書き込みエラーを送信するようにしてもよい。
In the flowchart shown in FIG. 10, if the temperature of the
タイムアウトを検出する際の所定の時間の開始タイミングは、任意のタイミングでよく
、例えば、メモリシステム1がホスト装置2から書き込み要求を受信したタイミング、昇
温処理の実行を開始するタイミング等でよい。
The start timing of the predetermined time when detecting the timeout may be any timing, for example, the timing when the
図11は、第1の実施形態に係るメモリシステムのホスト装置2からの書き込み要求に
対する不揮発性メモリ100へのデータの書き込み処理の変形例のフローチャートである
。このフローチャートは、ホスト装置2からデータ書き込み要求を受け、書き込み要求で
指定されたユーザデータを不揮発性メモリ100へ書き込み、書き込み結果をホスト装置
2へ送信する処理を示している。図11において、図8、図10の構成と同一部分は同一
符号で示す。
FIG. 11 is a flowchart of a modification of the data writing process to the
本変形例に係るメモリシステムでは、メモリチップ110の温度が所定の第4の温度よ
り高くない場合(ステップ1005:No)、メモリコントローラ200の制御部220
が昇温処理を実行するのではなく、メモリチップ110−1とは別のメモリチップ110
であるメモリチップ110−2、・・・、メモリチップ110−Nの温度を取得する(ス
テップ1101)。
In the memory system according to the present modification, when the temperature of the
Does not execute the temperature raising process, but instead of the memory chip 110-1.
.., And the temperature of the memory chip 110-N are acquired (step 1101).
そして、メモリコントローラ200の制御部220が、メモリチップ110−2、・・
・、メモリチップ110−Nのうち温度が第4の基準値よりも高いメモリチップが存在す
るか判定する(ステップ1102)。
And the
It is determined whether there is a memory chip whose temperature is higher than the fourth reference value among the memory chips 110-N (step 1102).
温度が第4の基準値よりも高いメモリチップが存在しない場合(ステップ1102:N
o)、メモリコントローラ200の制御部220は、昇温処理を実行し(ステップ807
)、ステップ803に戻り、再度、メモリコントローラ200の温度を、温度センサI/
F260経由で取得する(ステップ803)。
When there is no memory chip whose temperature is higher than the fourth reference value (step 1102: N
o) The
), Returning to step 803, the temperature of the
Obtained via F260 (step 803).
温度が第4の基準値よりも高いメモリチップが存在する場合(ステップ1102:Ye
s)、メモリコントローラ200の制御部220が、書き込み要求で指定された論理アド
レスに対応する物理アドレスを変更し、変更後の物理アドレスをアドレス変換テーブルへ
反映させる(ステップ1103)。
When there is a memory chip whose temperature is higher than the fourth reference value (step 1102: Ye)
s) The
本変形例では、変更後の物理アドレスに対応するメモリチップ110がメモリチップ1
10−2であると仮定して、すなわち、メモリチップ110−2、・・・、メモリチップ
110−Nのうち温度が第4の温度よりも高いメモリチップ110がメモリチップ110
−2であると仮定して説明する。
In this modification, the
10-2, that is, among the memory chips 110-2,..., The memory chip 110-N has a
Explanation will be made assuming that −2.
メモリコントローラ200の制御部220は、変更後の物理アドレスをアドレス変換テ
ーブルへ反映させる際(ステップ1103)、変更後の物理アドレスがメモリチップ11
0−2に対応する物理アドレスとなるようにアドレス変換テーブルを変更する。
When the
The address conversion table is changed so that the physical address corresponds to 0-2.
メモリコントローラ200の制御部220は、変更後の物理アドレスをアドレス変換テ
ーブルへ反映させた(ステップ1103)後、メモリチップ110−2への符号化された
データの書き込みをメモリI/F250へ指示し、メモリI/F250経由でメモリチッ
プ110−2へデータを書き込む(ステップ1006)。
The
次に、メモリコントローラ200は、メモリチップ110−2へのデータ書き込み結果
をホストI/F210経由でホスト装置2へ送信する(ステップ1007)。
Next, the
一方で、メモリコントローラ200の温度が所定の第3の温度より高い場合(ステップ
1004:Yes)、または、メモリチップ110−1の温度が所定の第4の温度より高
い場合(ステップ1005:Yes)、メモリコントローラ200の制御部220は、メ
モリチップ110−1への符号化されたデータの書き込みをメモリI/F250へ指示し
、メモリI/F250経由でメモリチップ110−1へデータを書き込み(ステップ10
06)、メモリコントローラ200は、メモリチップ110−1へのデータ書き込み結果
をホストI/F210経由でホスト装置2へ送信する(ステップ1007)。
On the other hand, when the temperature of the
06) The
本変形例では、メモリチップ温度情報を取得する前に、ホスト装置2の書き込み要求で
指定された論理アドレスに対応する物理アドレスを決定しているが(ステップ1002)
、メモリチップ温度情報を取得する前に書き込み要求で指定された論理アドレスに対応す
る物理アドレスを決定するのではなく、メモリチップ温度情報を取得して、取得したメモ
リチップ温度情報に基づいて書き込み要求で指定された論理アドレスに対応する物理アド
レスを決定してもよい。
In this modification, the physical address corresponding to the logical address designated by the write request of the host device 2 is determined before acquiring the memory chip temperature information (step 1002).
Instead of determining the physical address corresponding to the logical address specified in the write request before acquiring the memory chip temperature information, acquire the memory chip temperature information and write request based on the acquired memory chip temperature information The physical address corresponding to the logical address specified in (1) may be determined.
すなわち、本変形例では、メモリチップ110−1、・・・、メモリチップ110−N
のメモリチップ温度情報を取得して、メモリチップ110−1の温度が所定の第4の温度
より高くないが、メモリチップ110−2の温度が所定の第4の温度より高い場合に、メ
モリチップ110−2をデータ書き込み先のメモリチップ110に決定して、メモリチッ
プ110−2に対応する物理アドレスをアドレス変換テーブルへ反映させてもよい。
That is, in this modification, the memory chips 110-1,.
Memory chip temperature information is obtained, and when the temperature of the memory chip 110-1 is not higher than the predetermined fourth temperature, but the temperature of the memory chip 110-2 is higher than the predetermined fourth temperature, the memory chip 110-2 may be determined as the data write
図12は、第1の実施形態に係るメモリシステムの不揮発性メモリ100の所定のブロ
ックの消去処理のフローチャートである。図12のフローチャートでは、メモリコントロ
ーラ200が不揮発性メモリ100の所定のブロックを消去することに決定した段階から
説明を行う。図12において、図8の構成と同一部分は同一符号で示す。
FIG. 12 is a flowchart of the erasing process of a predetermined block in the
本実施形態では、消去対象となる所定のブロックを含むメモリチップ110がメモリチ
ップ110−1であるとして説明する。
In the present embodiment, description will be made assuming that the
メモリコントローラ200の制御部220は、メモリコントローラ200の温度を、温
度センサI/F260経由で取得する(ステップ803)。
The
その後、メモリコントローラ200の制御部220は、メモリコントローラ200の温
度が所定の第5の温度より高いかどうかを判定する(ステップ1201)。所定の第5の
温度は、所定の第1の温度または所定の第3の温度と同じであってもよいし、異なる温度
であってもよい。
Thereafter, the
メモリコントローラ200の温度が所定の第5の温度より高くない場合(ステップ12
01:No)、メモリコントローラ200の制御部220は、アクセス先のメモリチップ
110−1のメモリチップ温度情報を取得するためにメモリチップ温度情報の読み出しを
メモリI/F250へ指示し、メモリI/F250経由で当該メモリチップ110−1か
らメモリチップ温度情報を取得する(ステップ805)。メモリコントローラ200の制
御部220によるメモリチップ110−1からのメモリチップ温度情報取得処理は、ホス
ト装置2から読み出し要求を受けた場合における処理と同様である。
When the temperature of the
01: No), the
メモリコントローラ200の制御部220は、メモリチップ110−1から取得したメ
モリチップ温度情報によりメモリチップ110−1の温度を特定し、メモリチップ110
−1の温度が所定の第6の温度より高いかどうかを判定する(ステップ1202)。
The
It is determined whether the temperature of −1 is higher than a predetermined sixth temperature (step 1202).
所定の第6の温度は、所定の第2の温度または所定の第4の温度と同じであってもよい
し、異なる温度であってもよい。また、所定の第6の温度は所定の第5の温度と同じであ
ってもよいし、異なる温度であってもよい。
The predetermined sixth temperature may be the same as the predetermined second temperature or the predetermined fourth temperature, or may be a different temperature. The predetermined sixth temperature may be the same as the predetermined fifth temperature or may be a different temperature.
メモリチップ110−1の温度が所定の第6の温度より高くない場合(ステップ120
2:No)、メモリコントローラ200の制御部220は、昇温処理を実行する(ステッ
プ807)。
When the temperature of the memory chip 110-1 is not higher than the predetermined sixth temperature (step 120)
2: No), the
メモリコントローラ200の制御部220は、昇温処理を実行した(ステップ807)
後、ステップ803に戻り、再度、メモリコントローラ200の温度を、温度センサI/
F260経由で取得する(ステップ803)。
The
Thereafter, the process returns to step 803, and the temperature of the
Obtained via F260 (step 803).
昇温処理の実行として符号化部/復号部240を駆動させる場合、メモリシステム1が
ホスト装置2からの読み出し要求に対して不揮発性メモリ100からデータを読み出す場
合と同様に、メモリコントローラ200の制御部220が符号化回路241だけを駆動さ
せるのではなく符号化回路241と復号回路242をともに駆動させることでもよいし、
符号化回路241を駆動させず復号回路242を駆動させることでもよい。
When the encoding unit /
The
メモリコントローラ200の温度が所定の第5の温度より高い場合(ステップ1201
:Yes)、または、メモリチップ110−1の温度が所定の第6の温度より高い場合(
ステップ1202:Yes)、メモリコントローラ200の制御部220は、所定のブロ
ックの消去をメモリI/F250へ指示する(ステップ1203)。
When the temperature of the
: Yes) or when the temperature of the memory chip 110-1 is higher than a predetermined sixth temperature (
Step 1202: Yes), the
次に、メモリコントローラ200は、メモリチップ110−1に対するブロック消去結
果を、消去ブロックを管理する管理テーブルへ反映してもよい。
Next, the
図12に示すフローチャートでは、メモリコントローラ200の温度が所定の第5の温
度より高くなく、かつ、メモリチップ110−1の温度が所定の第6の温度より高くない
と、メモリコントローラ200の制御部220がメモリチップ110−1のブロックを消
去しないようになっているが、メモリコントローラ200は、タイムアウトを検出したら
、つまり、所定の時間を経過したら、メモリコントローラ200の制御部220がメモリ
チップ110−1の所定のブロックを消去してもよい。または、メモリコントローラ20
0は、タイムアウトを検出したら、つまり、所定の時間を経過したらメモリコントローラ
200がメモリチップ110−1の所定のブロックの消去を断念してもよい。
In the flowchart shown in FIG. 12, if the temperature of the
When 0 is detected, that is, when a predetermined time elapses, the
タイムアウトを検出する際の所定の時間の開始タイミングは、任意のタイミングでよく
、例えば、メモリコントローラ200が不揮発性メモリ100の所定のブロックを消去す
ることを決定したタイミング、昇温処理の実行を開始するタイミング等でよい。
The start timing of the predetermined time when detecting the timeout may be any timing, for example, the timing when the
以上のように、第1の実施形態によれば、メモリシステム1において、メモリコントロ
ーラ200の温度が所定の温度より高くなく、アクセス先のメモリチップ110の温度が
所定の温度より高くない場合、メモリコントローラ200は、メモリコントローラ200
の温度やメモリチップ110の温度を上げるために昇温処理を実行する。昇温処理を実行
した後、メモリコントローラ200の温度が所定の温度より高くなるか、アクセス先のメ
モリチップ110の温度が所定の温度より高くなった場合に、メモリコントローラ200
は、メモリチップ110へアクセスする。
As described above, according to the first embodiment, in the
In order to increase the temperature of the
Accesses the
本実施形態に係るメモリシステムでは、メモリコントローラ200の温度またはメモリ
チップ110の温度がそれぞれに対応する所定の温度よりも高くない場合、メモリコント
ローラ200の温度またはメモリチップ110の温度がそれぞれに対応する所定の温度に
達するのを待ってから不揮発性メモリ110へのアクセスが行われるため、不揮発性メモ
リ110が低温動作に弱い場合であっても、不揮発性メモリ110のメモリセルのストレ
スを減らすことが出来、不揮発性メモリ110に保存されるデータ、不揮発性メモリ11
0から読み出すデータの信頼性を向上させることが出来、不揮発性メモリ110からの読
み出しエラー、不揮発性メモリ110に対する書き込みエラーの発生頻度を減らすことが
出来る。
In the memory system according to the present embodiment, when the temperature of the
The reliability of data read from 0 can be improved, and the occurrence frequency of read errors from the
(第2の実施形態)
図13は、第2の実施形態に係るメモリシステムのホスト装置2からの読み出し要求に
対する不揮発性メモリ100からのデータの読み出し処理のフローチャートである。図1
3において、図8の構成と同一部分は同一符号で示す。尚、本実施形態の説明において、
第1実施形態と同様の構成および動作については、重複する説明を省略する。また、本実
施形態におけるメモリシステム1の外観及び構成等は、図1乃至図7と同様とする。
(Second Embodiment)
FIG. 13 is a flowchart of a process of reading data from the
3, the same parts as those in FIG. In the description of this embodiment,
For the same configuration and operation as in the first embodiment, a duplicate description is omitted. The external appearance and configuration of the
本実施形態では、第1の実施形態と同様に、ホスト装置2からの読み出し要求で指定さ
れた論理アドレスに対するアクセス先のメモリチップ110がメモリチップ110−1で
あるとして説明する。
In the present embodiment, as in the first embodiment, the
第2の実施形態に係るメモリシステムが、第1の実施形態に係るメモリシステムと異な
る点は、メモリコントローラ200の制御部220が、読み出し要求で指定されたアドレ
スである論理アドレスを物理アドレスに変換し、ホスト装置2からの読み出し要求を処理
するためにどのメモリチップ110のどの物理アドレスへアクセスすればよいかを解決す
る処理(ステップ802)の後、メモリチップ110−1からデータを読み出し、読み出
しが成功した場合、つまり読み出したデータを復号できた場合は、メモリコントローラ2
00の温度やメモリチップ110の温度を取得すること無く、復号されたデータをホスト
装置2へ送信することにある。
The memory system according to the second embodiment is different from the memory system according to the first embodiment in that the
It is to transmit the decoded data to the host device 2 without acquiring the temperature of 00 or the temperature of the
メモリコントローラ200の制御部220は、読み出し要求で指定されたアドレスであ
る論理アドレスを物理アドレスに変換し、ホスト装置2からの読み出し要求を処理するた
めにどのメモリチップ110のどの物理アドレスへアクセスすればよいかを解決すると(
ステップ802)、メモリチップ110−1からのデータ読み出しをメモリI/F250
へ指示し、メモリI/F250経由でメモリチップ110−1からデータを読み出す(ス
テップ1301)。
The
Step 802), reading data from the memory chip 110-1 to the memory I /
To read data from the memory chip 110-1 via the memory I / F 250 (step 1301).
そして、メモリコントローラ200は、メモリチップ110−1から読み出したデータ
を復号する(ステップ1302)。メモリコントローラ200の制御部220は、メモリ
チップ110−1から読み出したデータの復号を復号回路242に対して指示し、復号回
路242は制御部220から指示されたデータを復号する。復号回路242は、復号結果
を制御部220に対して出力する。すなわち、復号時に誤り訂正に成功した場合は復号さ
れたデータを、復号時に誤り訂正に失敗した場合は誤り訂正失敗を制御部220に通知す
る。
Then, the
メモリコントローラ200の制御部220は、復号回路242による復号が成功した場
合(ステップ1303:Yes)、つまり、復号時に誤り訂正に成功した場合、復号され
たデータであるユーザデータをホストI/F210経由でホスト装置2へ送信する(ステ
ップ810)。
When the decoding by the
メモリコントローラ200の制御部220は、復号回路242による復号が成功しなか
った場合(ステップ1303:No)、つまり、復号回路242から誤り訂正失敗が通知
された場合、メモリコントローラ200の温度を、温度センサI/F260経由で取得し
(ステップ803)、以降は、第1の実施形態に係るメモリシステムと同様の処理を実行
する。
When the decoding by the
上述した第2の実施形態によれば、メモリシステム1において、第1の実施形態と同様
に、不揮発性メモリ110が低温動作に弱い場合であっても、不揮発性メモリ110から
読み出すデータの信頼性を向上させることが出来る。
According to the second embodiment described above, in the
また、第2の実施形態によれば、ホスト装置2からの読み出し要求に対して、メモリチ
ップ110からの読み出しが成功した場合は、メモリコントローラ200の温度、メモリ
チップ110の温度を取得する処理を実行しないため、メモリコントローラ200の温度
、メモリチップ110の温度を取得する場合に比べてレイテンシが短くなる。
Further, according to the second embodiment, in response to a read request from the host device 2, when reading from the
(第3の実施形態)
図14は、第3の実施形態に係るメモリシステムのホスト装置2からのデータ書き込み
要求に対して不揮発性メモリ100へのデータの書き込み処理のフローチャートである。
図14において、図10の構成と同一部分は同一符号で示す。尚、本実施形態の説明にお
いて、第1実施形態と同様の構成および動作については、重複する説明を省略する。また
、本実施形態におけるメモリシステム1の外観及び構成等は、図1乃至図7と同様とする
。
(Third embodiment)
FIG. 14 is a flowchart of a data write process to the
14, the same parts as those in FIG. 10 are denoted by the same reference numerals. In the description of the present embodiment, the description of the same configuration and operation as in the first embodiment will be omitted. The external appearance and configuration of the
本実施形態では、第1の実施形態と同様に、ホスト装置2からの書き込み要求で指定さ
れた論理アドレスに対して決定された物理アドレスに対応するメモリチップ110がメモ
リチップ110−1であるとして説明する。
In the present embodiment, as in the first embodiment, the
第3の実施形態に係るメモリシステムが、第1の実施形態に係るメモリシステムと異な
る点は、メモリコントローラ200の制御部220が、書き込み要求で指定された書き込
み対象のユーザデータを符号化した(ステップ1003)後、メモリチップ110−1に
対して符号化されたデータを書き込み、書き込みが成功した場合にホスト装置2へ書き込
みが成功したこと示す応答を送信することにある。
The difference between the memory system according to the third embodiment and the memory system according to the first embodiment is that the
メモリコントローラ200の制御部220は、書き込み要求で指定された書き込み対象
のユーザデータの符号化を符号化回路241へ指示し、符号化回路241が書き込み対象
のユーザデータを符号化する処理を実行した(ステップ1003)後、メモリコントロー
ラ200の制御部220は、メモリチップ110−1に対する符号化されたデータの書き
込みをメモリI/F250へ指示し、メモリI/F250経由でメモリチップ110−1
へデータを書き込む(ステップ1401)。
The
The data is written to (step 1401).
メモリコントローラ200の制御部220は、メモリチップ110−1への書き込みが
成功した場合(ステップ1402:Yes)、ホスト装置2へ書き込みが成功したこと示
す応答を送信する(ステップ1007)。メモリコントローラ200の制御部220は、
メモリチップ110−1への書き込みが成功したか否かを、例えば、メモリチップ110
−1に対するデータの書き込み指示に対してメモリチップ110−1からメモリI/F2
50経由で出力された応答により判定する。
When the writing to the memory chip 110-1 is successful (step 1402: Yes), the
Whether or not the writing to the memory chip 110-1 is successful, for example, the
-1 to memory I / F2 from the memory chip 110-1
Judgment is made based on the response output via 50.
メモリコントローラ200の制御部220は、メモリチップ110−1への書き込みが
成功しなかった場合(ステップ1402:No)、メモリコントローラ200の温度を、
温度センサI/F260経由で取得し(ステップ803)、以降は、ステップ1401で
のデータの書き込み先の物理アドレスとは別の物理アドレスへデータを書き込むことを除
いて、第1の実施形態に係るメモリシステムと同様の処理を実行する。
When the writing to the memory chip 110-1 is not successful (step 1402: No), the
Obtained via the temperature sensor I / F 260 (step 803), and thereafter, according to the first embodiment, except that data is written to a physical address different from the physical address of the data write destination in
メモリコントローラ200の制御部220は、メモリチップ110−1への書き込みが
成功しなかった場合(ステップ1402:No)、メモリコントローラ200の温度を、
温度センサI/F260経由で取得した(ステップ803)後、メモリコントローラ20
0の温度が所定の第3の温度より高いかどうかを判定する(ステップ1004)。
When the writing to the memory chip 110-1 is not successful (step 1402: No), the
After being acquired via the temperature sensor I / F 260 (step 803), the
It is determined whether the temperature of 0 is higher than a predetermined third temperature (step 1004).
メモリコントローラ200の温度が所定の第3の温度より高くない場合(ステップ10
04:No)、メモリコントローラ200の制御部220は、メモリI/F250経由で
メモリチップ110−1からメモリチップ温度情報を取得する(ステップ805)。
When the temperature of the
04: No), the
メモリコントローラ200の制御部220は、メモリチップ110−1から取得したメ
モリチップ温度情報によりメモリチップ110−1の温度を特定し、メモリチップ110
−1の温度が所定の第4の温度より高いかどうかを判定する(ステップ1005)。
The
It is determined whether the temperature of −1 is higher than a predetermined fourth temperature (step 1005).
メモリチップ110−1の温度が所定の第4の温度より高くない場合(ステップ100
5:No)、メモリコントローラ200の制御部220は、昇温処理を実行して(ステッ
プ807)、ステップ803に戻り、再度、メモリコントローラ200の温度を、温度セ
ンサI/F260経由で取得する(ステップ803)。
When the temperature of the memory chip 110-1 is not higher than the predetermined fourth temperature (step 100)
5: No), the
メモリコントローラ200の温度が所定の第3の温度より高い場合(ステップ1004
:Yes)、または、メモリチップ110−1の温度が所定の第4の温度より高い場合(
ステップ1005:Yes)、メモリコントローラ200の制御部220は、書き込み要
求で指定された論理アドレスに対応する物理アドレスを変更し、変更後の物理アドレスを
アドレス変換テーブルへ反映させる(ステップ1403)。
When the temperature of the
: Yes) or when the temperature of the memory chip 110-1 is higher than a predetermined fourth temperature (
(Step 1005: Yes), the
メモリコントローラ200の制御部220は、変更後の物理アドレスをアドレス変換テ
ーブルへ反映させる際(ステップ1403)、変更後の物理アドレスが、ステップ140
1にてデータ書き込みを実行した物理アドレスとは別の物理アドレスとなるようにする。
When the
1 so that the physical address is different from the physical address where the data was written.
その後、メモリコントローラ200の制御部220は、ステップ1403で変更された
物理アドレスに対するデータ書き込みをメモリI/F250へ指示し、メモリI/F25
0経由でメモリチップ110−1へデータを書き込む(ステップ1404)。
Thereafter, the
Data is written to the memory chip 110-1 via 0 (step 1404).
上述した第3の実施形態によれば、メモリシステム1において、第1の実施形態と同様
に、不揮発性メモリ110が低温動作に弱い場合であっても、不揮発性メモリ110に保
存されるデータの信頼性を向上させることが出来る。
According to the third embodiment described above, in the
また、第3の実施形態によれば、ホスト装置2からの書き込み要求に対して、メモリチ
ップ110への書き込みが成功した場合は、メモリコントローラ200の温度、メモリチ
ップ110の温度を取得する処理を実行しないため、メモリコントローラ200の温度、
メモリチップ110の温度を取得する場合に比べてレイテンシが短くなる。
Further, according to the third embodiment, in response to a write request from the host device 2, when the write to the
The latency is shorter than when the temperature of the
(第4の実施形態)
図15は、第4の実施形態に係るメモリシステムの不揮発性メモリ100の所定のブロ
ックの消去処理のフローチャートである。図15のフローチャートでは、メモリコントロ
ーラ200が不揮発性メモリ100の所定のブロックを消去することに決定した段階から
説明を行う。図15において、図12の構成と同一部分は同一符号で示す。尚、本実施形
態の説明において、第1実施形態と同様の構成および動作については、重複する説明を省
略する。また、本実施形態におけるメモリシステム1の外観及び構成等は、図1乃至図7
と同様とする。
(Fourth embodiment)
FIG. 15 is a flowchart of the erasing process of a predetermined block in the
The same shall apply.
本実施形態では、消去対象となる所定のブロックを含むメモリチップ110がメモリチ
ップ110−1であるとして説明する。
In the present embodiment, description will be made assuming that the
第4の実施形態に係るメモリシステムが、第1の実施形態に係るメモリシステムと異な
る点は、メモリコントローラ200の制御部220が、メモリコントローラ200が不揮
発性メモリ100の所定のブロックを消去することに決定した後、メモリコントローラ2
00の温度等を取得せずに所定のブロックを消去し、消去が成功しなかった場合にメモリ
コントローラ200の温度等を取得することにある。
The memory system according to the fourth embodiment is different from the memory system according to the first embodiment in that the
The predetermined block is erased without acquiring the temperature of 00 or the like, and the temperature or the like of the
メモリコントローラ200の制御部220は、所定のブロックの消去をメモリI/F2
50へ指示する(ステップ1501)。
The
50 (step 1501).
メモリコントローラ200の制御部220は、メモリチップ110−1に対するブロッ
ク消去が成功したか否かを、例えば、メモリチップ110−1に対するブロック消去指示
に対してメモリチップ110−1からメモリI/F250経由で出力された応答により判
定する(ステップ1502)。
The
メモリコントローラ200の制御部220は、メモリチップ110−1に対するブロッ
ク消去が成功した場合(ステップ1502:Yes)、図15に示すフローチャートは終
了する。メモリコントローラ200の制御部220は、メモリチップ110−1に対する
ブロック消去が成功した場合、ブロック消去結果を、消去ブロックを管理する管理テーブ
ルへ反映してもよい。
When the block erase for the memory chip 110-1 is successful (step 1502: Yes), the
メモリコントローラ200の制御部220は、メモリチップ110−1に対するブロッ
ク消去が成功しなかった場合(ステップ1502:No)、メモリコントローラ200の
温度を、温度センサI/F260経由で取得し(ステップ803)、以降は、第1の実施
形態に係るメモリシステムと同様の処理を実行する。
When the block erase for the memory chip 110-1 is not successful (step 1502: No), the
上述した第4の実施形態によれば、メモリシステム1において、第1の実施形態と同様
に、不揮発性メモリ110が低温動作に弱い場合であっても、不揮発性メモリ110のメ
モリセルのストレスを減らすことが出来る。
According to the fourth embodiment described above, in the
また、第4の実施形態によれば、所定のブロックの消去が成功した場合は、メモリコン
トローラ200の温度、メモリチップ110の温度を取得する処理を実行しないため、メ
モリコントローラ200の温度、メモリチップ110の温度を取得する場合に比べてブロ
ック消去にかかる時間が短くなる。
Further, according to the fourth embodiment, when the erasure of the predetermined block is successful, the process of acquiring the temperature of the
(第5の実施形態)
図16は、第5の実施形態に係るメモリシステムのメモリコントローラの処理のフロー
チャートである。図16において、図8の構成と同一部分は同一符号で示す。尚、本実施
形態の説明において、第1実施形態と同様の構成および動作については、重複する説明を
省略する。また、本実施形態におけるメモリシステム1の外観及び構成等は、図1乃至図
7と同様とする。
(Fifth embodiment)
FIG. 16 is a flowchart of processing of the memory controller of the memory system according to the fifth embodiment. In FIG. 16, the same parts as those in FIG. In the description of the present embodiment, the description of the same configuration and operation as in the first embodiment will be omitted. The external appearance and configuration of the
第5の実施形態に係るメモリシステムが、第1の実施形態に係るメモリシステムと異な
る点は、メモリコントローラ200の制御部220が、ホスト装置2から不揮発性メモリ
100へのアクセスが必要な要求を受信すること等とは関係なく、メモリコントローラ2
00の温度やメモリチップ110の温度を取得して、昇温処理を実行することにある。
The memory system according to the fifth embodiment is different from the memory system according to the first embodiment in that the
It is to acquire the temperature of 00 and the temperature of the
図16に示すフローチャートは、メモリコントローラ200の制御部220が、所定の
タイミングで、メモリコントローラ200の温度やメモリチップ110のメモリチップ温
度情報を取得し、取得した温度に応じて、昇温処理を実行する処理を示している。ここで
、所定のタイミングとは、例えば、メモリシステム1がホスト装置2からの要求を受信し
ていない場合、メモリコントローラ200が、ガベージコレクションや、リフレッシュや
、ウェアレベリングや、パトロールリード等を実行していない場合をいう。
In the flowchart illustrated in FIG. 16, the
メモリコントローラ200の制御部220は、所定のタイミングで、メモリコントロー
ラ200の温度を温度センサI/F260を介して取得し(ステップ803)、取得した
メモリコントローラ200の温度が所定の第7の温度より高いかどうかを判定する(ステ
ップ1601)。所定の第7の温度は、第1の実施形態のメモリコントローラ200の処
理における所定の第1の温度または所定の第3の温度または所定の第5の温度と同じであ
ってもよいし、異なる温度であってもよい。
The
メモリコントローラ200の温度が所定の第7の温度より高くない場合(ステップ16
01:No)、メモリコントローラ200の制御部220は、メモリチップ110−1、
・・・、メモリチップ110−Nそれぞれに対してメモリチップ温度情報読み出しをメモ
リI/F250へ指示し、メモリI/F250経由で各々のメモリチップ温度情報を取得
する(ステップ1602)。
When the temperature of the
01: No), the
..., the memory I /
メモリコントローラ200の制御部220は、メモリチップ110−1、・・・、メモ
リチップ110−Nの中に、温度が所定の第8の温度より高いメモリチップ110が存在
するかどうかを判定する(ステップ1603)。所定の第8の温度は、第1の実施形態の
メモリコントローラ200の処理における所定の第2の温度または所定の第4の温度また
は所定の第6の温度と同じであってもよいし、異なる温度であってもよい。また、所定の
第8の温度は、所定の第7の温度と同じであってもよいし、異なる温度であってもよい。
The
メモリチップ110−1、・・・、メモリチップ110−Nの中に、温度が所定の第8
の温度より高いメモリチップ110が存在しない場合(ステップ1603:No)、メモ
リコントローラ200の制御部220は、昇温処理を実行する(ステップ807)。
The memory chip 110-1,..., The memory chip 110-N has a predetermined eighth temperature.
When there is no
メモリコントローラ200の制御部220は、昇温処理を実行した(ステップ807)
後、ステップ803に戻り、再度、メモリコントローラ200の温度を、温度センサI/
F260経由で取得する(ステップ803)。
The
Thereafter, the process returns to step 803, and the temperature of the
Obtained via F260 (step 803).
メモリコントローラ200の温度が所定の第7の温度より高い場合(ステップ1601
:Yes)、または、メモリチップ110−1、・・・、メモリチップ110−Nの中に
温度が所定の第8の温度より高いメモリチップ110が存在する場合(ステップ1603
:Yes)、図16に示すフローチャートは終了する。
When the temperature of the
: Yes), or when there is a
: Yes), the flowchart shown in FIG. 16 ends.
図16に示すフローチャートでは、メモリコントローラ200の温度が所定の第7の温
度より高くなく、かつ、メモリチップ110−1、・・・、メモリチップ110−Nの中
に温度が所定の第8の温度より高いメモリチップ110が存在しない限り、メモリコント
ローラ200の制御部220が昇温処理を実行し続けることになっているが、メモリコン
トローラ200の制御部220は、タイムアウトを検出したら、昇温処理の実行を止める
ようにしてもよい。
In the flowchart shown in FIG. 16, the temperature of the
メモリコントローラ200の制御部220は、例えば、メモリシステム1がホスト装置
2から要求を受信した場合や、メモリコントローラ200がガベージコレクションやリフ
レッシュやウェアレベリングやパトロールリード等を実行する場合に、タイムアウトを検
出してもよい。また、任意のタイミングから任意の時間が経過したら、メモリコントロー
ラ200がタイムアウトを検出するようにしてもよい。
For example, the
また、図16に示すフローチャートでは、メモリコントローラ200の制御部220は
、メモリチップ110−1、・・・、メモリチップ110−Nの中に温度が所定の第8の
温度より高いメモリチップ110が存在する場合に昇温処理を実行しないようにしている
が、昇温処理を実行しない条件を適宜変更してもよい。
In the flowchart shown in FIG. 16, the
例えば、メモリコントローラ200の制御部220は、メモリチップ110−1、・・
・、メモリチップ110−Nの中に温度が所定の第8の温度より高いメモリチップ110
が所定の個数以上存在する場合に昇温処理を実行しないようにしてもよい。
For example, the
The memory chip 110-N has a temperature higher than a predetermined eighth temperature.
The temperature raising process may not be executed when there are a predetermined number or more.
また、例えば、メモリコントローラ200の制御部220は、メモリチップ110−1
、・・・、メモリチップ110−Nの中に温度が所定の第8の温度より高いメモリチップ
110が所定の第1の個数以上存在し、メモリチップ110−1、・・・、メモリチップ
110−Nの中に温度が所定の第9の温度より高いメモリチップ110が所定の第2の個
数以上存在する場合に昇温処理を実行しないようにしてもよい。ここで、所定の第9の温
度は所定の第8の温度とは異なり、第2の個数は第1の個数と同じであってもよいし異な
ってもよい。
In addition, for example, the
,..., The memory chip 110-N includes a predetermined first number or more of
上述した第5の実施形態によれば、メモリシステム1において、第1の実施形態と同様
に、不揮発性メモリ110が低温動作に弱い場合であっても、不揮発性メモリ110に保
存されるデータの信頼性を向上させることが出来る。
According to the fifth embodiment described above, in the
また、第5の実施形態によれば、メモリコントローラ200は、ホスト装置2から要求
を受信していない場合や、ガベージコレクションやリフレッシュやウェアレベリングやパ
トロールリード等を実行していない場合に、メモリコントローラ200の温度、メモリチ
ップ110の温度を上げるための処理を実行し、ホスト装置2から要求を受信する場合に
、メモリコントローラ200の温度、メモリチップ110の温度を上げるための処理を実
行しない。そのため、ホスト装置2から要求を受信した場合におけるホスト装置2の要求
に対するレイテンシが短くなる。
In addition, according to the fifth embodiment, the
(第6の実施形態)
図17は、第6の実施形態に係るメモリシステムのホスト装置2からの読み出し要求に
対する不揮発性メモリ100からのデータの読み出し処理のフローチャートである。図1
7において、図8の構成と同一部分は同一符号で示す。尚、本実施形態の説明において、
第1実施形態と同様の構成および動作については、重複する説明を省略する。また、本実
施形態におけるメモリシステム1の外観及び構成等は、図1乃至図7と同様とする。
(Sixth embodiment)
FIG. 17 is a flowchart of data read processing from the
7, the same parts as those in FIG. In the description of this embodiment,
For the same configuration and operation as in the first embodiment, a duplicate description is omitted. The external appearance and configuration of the
本実施形態では、第1の実施形態と同様に、ホスト装置2からの読み出し要求で指定さ
れた論理アドレスに対するアクセス先のメモリチップ110がメモリチップ110−1で
あるとして説明する。
In the present embodiment, as in the first embodiment, the
本実施形態に係るメモリシステムでは、第1の実施形態に係るメモリシステムと異なり
、メモリコントローラ200の制御部220は、ホスト装置2からの読み出し要求を処理
するためにどのメモリチップ110のどの物理アドレスへアクセスすればよいかを解決す
る処理(ステップ802)の後、メモリチップ110の温度を取得すること無く、メモリ
コントローラ200の温度に基づいて、メモリチップ110からのデータ読み出し処理ま
たは昇温処理を実行する。
In the memory system according to the present embodiment, unlike the memory system according to the first embodiment, the
メモリコントローラ200の制御部220は、読み出し要求で指定されたアドレスであ
る論理アドレスを物理アドレスに変換し、ホスト装置2からの読み出し要求を処理するた
めにどのメモリチップ110のどの物理アドレスへアクセスすればよいかを解決すると(
ステップ802)、メモリコントローラ200の温度を、温度センサI/F260を介し
て取得する(ステップ803)。
The
Step 802) The temperature of the
その後、メモリコントローラ200の制御部220は、メモリコントローラ200の温
度が所定の第9の温度より高いかどうかを判定する(ステップ1701)。所定の第9の
温度は所定の第1の温度と同じであってもよいし、異なる温度であってもよい。
Thereafter, the
メモリコントローラ200の温度が所定の第9の温度より高くない場合(ステップ80
4:No)、メモリコントローラ200の制御部220は、昇温処理を実行する(ステッ
プ807)。
When the temperature of the
4: No), the
メモリコントローラ200の制御部220は、昇温処理を実行した(ステップ807)
後、ステップ803に戻り、再度、メモリコントローラ200の温度を、温度センサI/
F260経由で取得する(ステップ803)。
The
Thereafter, the process returns to step 803, and the temperature of the
Obtained via F260 (step 803).
メモリコントローラ200の温度が所定の第9の温度より高い場合(ステップ1701
:Yes)、メモリコントローラ200は、メモリチップ110−1からデータを読み出
し(ステップ808)、以降は第1の実施形態に係るメモリシステムと同様の処理を実行
する。
When the temperature of the
: Yes), the
図18は、第6の実施形態に係るメモリシステムのホスト装置2からの書き込み要求に
対する不揮発性メモリ100へのデータの書き込み処理のフローチャートである。このフ
ローチャートは、ホスト装置2からデータ書き込み要求を受け、書き込み要求で指定され
たデータを不揮発性メモリ100へ書き込み、書き込み結果をホスト装置2へ送信する処
理を示している。図18において、図10の構成と同一部分は同一符号で示す。
FIG. 18 is a flowchart of a data write process to the
本実施形態に係るメモリシステムでは、第1の実施形態に係るメモリシステムと異なり
、メモリコントローラ200の制御部220は、書き込み要求で指定された書き込み対象
のユーザデータを符号化した(ステップ802)後、メモリチップ110の温度を取得す
ること無く、メモリコントローラ200の温度に基づいて、メモリチップ110へのデー
タ書き込み処理または昇温処理を実行する。
In the memory system according to the present embodiment, unlike the memory system according to the first embodiment, the
メモリコントローラ200の制御部220は、書き込み要求で指定された論理アドレス
に対応する物理アドレスを決定し、決定された物理アドレスをアドレス変換テーブルへ反
映させる(ステップ1002)。そして、メモリコントローラ200の制御部220は、
書き込み要求で指定された書き込み対象のユーザデータの符号化を符号化回路241へ指
示し、符号化回路241は書き込み対象のユーザデータを符号化する(ステップ1003
)。
The
The
).
本実施形態では、ホスト2からの書き込み要求で指定された論理アドレスに対して決定
された物理アドレスに対応するメモリチップ110がメモリチップ110−1であるとし
て説明する。
In the present embodiment, the
次に、メモリコントローラ200の制御部220は、メモリコントローラ200の温度
を、温度センサI/F260経由で取得する(ステップ803)。
Next, the
その後、メモリコントローラ200の制御部220は、メモリコントローラ200の温
度が所定の第10の温度より高いかどうかを判定する(ステップ1801)。所定の第1
0の温度は所定の第3の温度と同じであってもよいし、異なる温度であってもよい。
Thereafter, the
The temperature of 0 may be the same as the predetermined third temperature or may be a different temperature.
メモリコントローラ200の温度が所定の第10の温度より高くない場合(ステップ1
801:No)、メモリコントローラ200の制御部220は、昇温処理を実行する(ス
テップ807)。
When the temperature of the
801: No), the
メモリコントローラ200の制御部220は、昇温処理を実行した(ステップ807)
後、ステップ803に戻り、再度、メモリコントローラ200の温度を、温度センサI/
F260経由で取得する(ステップ803)。
The
Thereafter, the process returns to step 803, and the temperature of the
Obtained via F260 (step 803).
メモリコントローラ200の温度が所定の第10の温度より高い場合(ステップ180
1:Yes)、メモリコントローラ200の制御部220がメモリI/F250経由でメ
モリチップ110−1へ符号化されたデータを書き込み(ステップ1006)、以降は第
1の実施形態に係るメモリシステムと同様の処理を実行する。
When the temperature of the
1: Yes), the
図19は、第6の実施形態に係るメモリシステムの不揮発性メモリ100の所定のブロ
ックの消去処理のフローチャートである。図19のフローチャートでは、メモリコントロ
ーラ200が不揮発性メモリ100の所定のブロックを消去することに決定した段階から
説明を行う。図19において、図12の構成と同一部分は同一符号で示す。
FIG. 19 is a flowchart of an erasing process of a predetermined block in the
本実施形態では、消去対象となる所定のブロックを含むメモリチップ110がメモリチ
ップ110−1であるとして説明する。
In the present embodiment, description will be made assuming that the
本実施形態に係るメモリシステムでは、第1の実施形態に係るメモリシステムと異なり
、メモリコントローラ200の制御部220は、メモリチップ110の温度を取得するこ
と無く、メモリコントローラ200の温度に基づいて、メモリチップ110の所定のブロ
ックの消去処理または昇温処理を実行する。
In the memory system according to the present embodiment, unlike the memory system according to the first embodiment, the
メモリコントローラ200の制御部220は、メモリコントローラ200の温度を、温
度センサI/F260経由で取得する(ステップ803)。
The
その後、メモリコントローラ200の制御部220は、メモリコントローラ200の温
度が所定の第11の温度より高いかどうかを判定する(ステップ1901)。所定の第1
1の温度は、所定の第5の温度と同じであってもよいし、異なる温度であってもよい。
Thereafter, the
The temperature of 1 may be the same as the predetermined fifth temperature or may be a different temperature.
メモリコントローラ200の温度が所定の第11の温度より高くない場合(ステップ1
901:No)、メモリコントローラ200の制御部220は、昇温処理を実行する(ス
テップ807)。
When the temperature of the
901: No), the
メモリコントローラ200の制御部220は、昇温処理を実行した(ステップ807)
後、ステップ803に戻り、再度、メモリコントローラ200の温度を、温度センサI/
F260経由で取得する(ステップ803)。
The
Thereafter, the process returns to step 803, and the temperature of the
Obtained via F260 (step 803).
メモリコントローラ200の温度が所定の第11の温度より高い場合(ステップ190
1:Yes)、メモリコントローラ200の制御部220は、所定のブロックの消去をメ
モリI/F250へ指示する(ステップ1203)。
When the temperature of the
1: Yes), the
上述した第6の実施形態によれば、メモリシステム1において、第1の実施形態と同様
に、不揮発性メモリ110が低温動作に弱い場合であっても、不揮発性メモリ110のメ
モリセルのストレスを減らすことが出来、不揮発性メモリ110に保存されるデータ、不
揮発性メモリ110から読み出すデータの信頼性を向上させることが出来、不揮発性メモ
リ110からの読み出しエラー、不揮発性メモリ110に対する書き込みエラーの発生頻
度を減らすことが出来る。
According to the sixth embodiment described above, in the
(第7の実施形態)
図20は、第7の実施形態に係るメモリシステムのホスト装置2からの読み出し要求に
対する不揮発性メモリ100からのデータの読み出し処理のフローチャートである。図2
0において、図8の構成と同一部分は同一符号で示す。尚、本実施形態の説明において、
第1実施形態と同様の構成および動作については、重複する説明を省略する。また、本実
施形態におけるメモリシステム1の外観及び構成等は、図1乃至図7と同様とする。
(Seventh embodiment)
FIG. 20 is a flowchart of data read processing from the
In FIG. 0, the same parts as those in FIG. In the description of this embodiment,
For the same configuration and operation as in the first embodiment, a duplicate description is omitted. The external appearance and configuration of the
本実施形態に係るメモリシステムでは、第1の実施形態に係るメモリシステムと異なり
、メモリコントローラ200の制御部220は、ホスト装置2からの読み出し要求を処理
するためにどのメモリチップ110のどの物理アドレスへアクセスすればよいかを解決す
る処理(ステップ802)の後、メモリコントローラ200の温度を取得すること無く、
メモリチップ110の温度に基づいて、メモリチップ110からのデータ読み出し処理ま
たは昇温処理を実行する。
In the memory system according to the present embodiment, unlike the memory system according to the first embodiment, the
Based on the temperature of the
メモリコントローラ200の制御部220は、読み出し要求で指定されたアドレスであ
る論理アドレスを物理アドレスに変換し、ホスト装置2からの読み出し要求を処理するた
めにどのメモリチップ110のどの物理アドレスへアクセスすればよいかを解決する(ス
テップ802)。
The
本実施形態では、第1の実施形態と同様に、ホスト装置2からの読み出し要求で指定さ
れた論理アドレスに対するアクセス先のメモリチップ110がメモリチップ110−1で
あるとして説明する。
In the present embodiment, as in the first embodiment, the
アクセス先のメモリチップ110−1からのメモリチップ温度情報読み出しをメモリI
/F250へ指示し、メモリI/F250経由で当該メモリチップ110−1からメモリ
チップ温度情報を取得する(ステップ805)。
Read memory chip temperature information from the memory chip 110-1 to be accessed
/ F250 is instructed, and the memory chip temperature information is acquired from the memory chip 110-1 via the memory I / F250 (step 805).
その後、メモリコントローラ200の制御部220は、メモリチップ110−1の温度
が所定の第12の温度より高いかどうかを判定する(ステップ2001)。所定の第12
の温度は所定の第2の温度と同じであってもよいし、異なる温度であってもよい。
Thereafter, the
The temperature may be the same as the predetermined second temperature or a different temperature.
メモリチップ110−1の温度が所定の第12の温度より高くない場合(ステップ80
4:No)、メモリコントローラ200の制御部220は、昇温処理を実行する(ステッ
プ807)。
When the temperature of the memory chip 110-1 is not higher than the predetermined twelfth temperature (step 80)
4: No), the
メモリコントローラ200の制御部220は、昇温処理を実行した(ステップ807)
後、ステップ803に戻り、再度、メモリチップ110−1の温度を、温度センサI/F
260経由で取得する(ステップ805)。
The
Thereafter, the process returns to step 803, and the temperature of the memory chip 110-1 is again measured by the temperature sensor I / F.
It is acquired via 260 (step 805).
メモリチップ110−1の温度が所定の第12の温度より高い場合(ステップ2001
:Yes)、メモリコントローラ200は、メモリI/F250経由でメモリチップ11
0−1からデータを読み出し(ステップ808)、以降は第1の実施形態に係るメモリシ
ステムと同様の処理を実行する。
When the temperature of the memory chip 110-1 is higher than the predetermined twelfth temperature (step 2001)
: Yes), the
Data is read from 0-1 (step 808), and thereafter the same processing as that of the memory system according to the first embodiment is executed.
図21は、第7の実施形態に係るメモリシステムのホスト装置2からの書き込み要求に
対する不揮発性メモリ100へのデータの書き込み処理のフローチャートである。このフ
ローチャートは、ホスト装置2からデータ書き込み要求を受け、書き込み要求で指定され
たデータを不揮発性メモリ100へ書き込み、書き込み結果をホスト装置2へ送信する処
理を示している。図21において、図10の構成と同一部分は同一符号で示す。
FIG. 21 is a flowchart of a process of writing data to the
本実施形態に係るメモリシステムでは、第1の実施形態に係るメモリシステムと異なり
、メモリコントローラ200の制御部220は、書き込み要求で指定された書き込み対象
のユーザデータを符号化した(ステップ802)後、メモリコントローラ200の温度を
取得すること無く、メモリチップ110の温度に基づいて、メモリチップ110へのデー
タ書き込み処理または昇温処理を実行する。
In the memory system according to the present embodiment, unlike the memory system according to the first embodiment, the
ホスト装置2から書き込み要求を受けると(ステップ1001)、メモリコントローラ
200の制御部220は、書き込み要求で指定された論理アドレスに対応する物理アドレ
スを決定し、決定された物理アドレスをアドレス変換テーブルへ反映させる(ステップ1
002)。そして、メモリコントローラ200の制御部220は、書き込み要求で指定さ
れた書き込み対象のユーザデータの符号化を符号化回路241へ指示し、符号化回路24
1は書き込み対象のユーザデータを符号化する(ステップ1003)。
When receiving a write request from the host device 2 (step 1001), the
002). Then, the
1 encodes user data to be written (step 1003).
本実施形態では、ホスト2からの書き込み要求で指定された論理アドレスに対して決定
された物理アドレスに対応するメモリチップ110がメモリチップ110−1であるとし
て説明する。
In the present embodiment, the
次に、メモリコントローラ200の制御部220は、アクセス先のメモリチップ110
−1からのメモリチップ温度情報読み出しをメモリI/F250へ指示し、メモリI/F
250経由で当該メモリチップ110−1からメモリチップ温度情報を取得する(ステッ
プ805)。
Next, the
-1 is instructed to the memory I /
Memory chip temperature information is acquired from the memory chip 110-1 via 250 (step 805).
その後、メモリコントローラ200の制御部220は、メモリチップ110−1の温度
が所定の第13の温度より高いかどうかを判定する(ステップ1801)。所定の第13
の温度は所定の第4の温度と同じであってもよいし、異なる温度であってもよい。
Thereafter, the
The temperature may be the same as the predetermined fourth temperature or a different temperature.
メモリチップ110−1の温度が所定の第13の温度より高くない場合(ステップ18
01:No)、メモリコントローラ200の制御部220は、昇温処理を実行する(ステ
ップ807)。
When the temperature of the memory chip 110-1 is not higher than the predetermined thirteenth temperature (step 18)
01: No), the
メモリコントローラ200の制御部220は、昇温処理を実行した(ステップ807)
後、ステップ805に戻り、再度、メモリチップ110−1の温度を、メモリI/F25
0経由で取得する(ステップ805)。
The
Thereafter, the process returns to step 805, and the temperature of the memory chip 110-1 is set again to the memory I /
Obtained via 0 (step 805).
メモリチップ110−1の温度が所定の第13の温度より高い場合(ステップ2101
:Yes)、メモリコントローラ200は、メモリチップ110−1へ符号化されたデー
タを書き込み(ステップ1006)、以降は第1の実施形態に係るメモリシステムと同様
の処理を実行する。
When the temperature of the memory chip 110-1 is higher than a predetermined thirteenth temperature (step 2101)
: Yes), the
図22は、第7の実施形態に係るメモリシステムのホスト装置2からの書き込み要求に
対する不揮発性メモリ100へのデータの書き込み処理の変形例のフローチャートである
。このフローチャートは、ホスト装置2からデータ書き込み要求を受け、書き込み要求で
指定されたユーザデータを不揮発性メモリ100へ書き込み、書き込み結果をホスト装置
2へ送信する処理を示している。図22において、図10、図11、図21の構成と同一
部分は同一符号で示す。
FIG. 22 is a flowchart of a modification example of a process of writing data to the
本変形例に係るメモリシステムでは、メモリチップ110−1の温度が所定の第13の
温度より高くない場合(ステップ2101:No)、メモリコントローラ200の制御部
220が昇温処理を実行するのではなく、メモリチップ110−1とは別のメモリチップ
110であるメモリチップ110−2、・・・、メモリチップ110−Nの温度を取得す
る(ステップ1101)。
In the memory system according to this modification, when the temperature of the memory chip 110-1 is not higher than the predetermined thirteenth temperature (step 2101: No), the
そして、メモリコントローラ200の制御部220が、メモリチップ110−2、・・
・、メモリチップ110−Nのうち温度が所定の第13の温度よりも高いメモリチップが
存在するか判定する(ステップ2201)。
And the
It is determined whether there is a memory chip whose temperature is higher than a predetermined thirteenth temperature among the memory chips 110-N (step 2201).
温度が所定の第13の温度よりも高いメモリチップが存在しない場合(ステップ220
1:No)、メモリコントローラ200の制御部220は、昇温処理を実行し(ステップ
807)、ステップ805に戻り、再度、メモリチップ110−1の温度を、メモリI/
F250経由で取得する(ステップ805)。
When there is no memory chip whose temperature is higher than the predetermined thirteenth temperature (step 220)
1: No), the
Obtained via F250 (step 805).
温度が所定の第13の温度よりも高いメモリチップが存在する場合(ステップ2201
:Yes)、メモリコントローラ200の制御部220が、書き込み要求で指定された論
理アドレスに対応する物理アドレスを変更し、変更後の物理アドレスをアドレス変換テー
ブルへ反映させる(ステップ1103)。
When there is a memory chip whose temperature is higher than a predetermined thirteenth temperature (step 2201)
: Yes), the
本変形例では、変更後の物理アドレスに対応するメモリチップ110がメモリチップ1
10−2であると仮定して、すなわち、メモリチップ110−2、・・・、メモリチップ
110−Nのうち温度が所定の第13の温度よりも高いメモリチップ110がメモリチッ
プ110−2であると仮定して説明する。
In this modification, the
10-2, that is, among the memory chips 110-2,..., The memory chip 110-2 is a
メモリコントローラ200の制御部220は、変更後の物理アドレスをアドレス変換テ
ーブルへ反映させる際(ステップ1103)、変更後の物理アドレスがメモリチップ11
0−2に対応する物理アドレスとなるようにアドレス変換テーブルを変更する。
When the
The address conversion table is changed so that the physical address corresponds to 0-2.
メモリコントローラ200の制御部220は、変更後の物理アドレスをアドレス変換テ
ーブルへ反映させた(ステップ1103)後、メモリチップ110−2への符号化された
データの書き込みをメモリI/F250へ指示し、メモリI/F250経由でメモリチッ
プ110−2へデータを書き込む(ステップ1006)。
The
次に、メモリコントローラ200は、メモリチップ110−2へのデータ書き込み結果
をホストI/F210経由でホスト装置2へ送信する(ステップ1007)。
Next, the
一方で、メモリチップ110−1の温度が所定の第13の温度より高い場合(ステップ
2101:Yes)、メモリコントローラ200は、メモリI/F250経由でメモリチ
ップ110−1へ符号化されたデータを書き込み(ステップ1006)、以降は第1の実
施形態に係るメモリシステムと同様の処理を実行する。
On the other hand, when the temperature of the memory chip 110-1 is higher than the predetermined thirteenth temperature (step 2101: Yes), the
本変形例では、メモリチップ温度情報を取得する前に、ホスト装置2の書き込み要求で
指定された論理アドレスに対応する物理アドレスを決定しているが(ステップ1002)
、メモリチップ温度情報を取得する前に書き込み要求で指定された論理アドレスに対応す
る物理アドレスを決定するのではなく、メモリチップ温度情報を取得して、取得したメモ
リチップ温度情報に基づいて書き込み要求で指定された論理アドレスに対応する物理アド
レスを決定してもよい。
In this modification, the physical address corresponding to the logical address designated by the write request of the host device 2 is determined before acquiring the memory chip temperature information (step 1002).
Instead of determining the physical address corresponding to the logical address specified in the write request before acquiring the memory chip temperature information, acquire the memory chip temperature information and write request based on the acquired memory chip temperature information The physical address corresponding to the logical address specified in (1) may be determined.
すなわち、本変形例では、メモリチップ110−1、・・・、メモリチップ110−N
のメモリチップ温度情報を取得して、メモリチップ110−1の温度が所定の第13の温
度より高くないが、メモリチップ110−2の温度が所定の第13の温度より高い場合に
、メモリチップ110−2をデータ書き込み先のメモリチップ110に決定して、メモリ
チップ110−2に対応する物理アドレスをアドレス変換テーブルへ反映させてもよい。
That is, in this modification, the memory chips 110-1,.
Memory chip temperature information is obtained, and when the temperature of the memory chip 110-1 is not higher than the predetermined thirteenth temperature, but the temperature of the memory chip 110-2 is higher than the predetermined thirteenth temperature, the memory chip 110-2 may be determined as the data write
図23は、第7の実施形態に係るメモリシステムの不揮発性メモリ100の所定のブロ
ックの消去処理のフローチャートである。図23のフローチャートでは、メモリコントロ
ーラ200が不揮発性メモリ100の所定のブロックを消去することに決定した段階から
説明を行う。図23において、図12の構成と同一部分は同一符号で示す。
FIG. 23 is a flowchart of the erasing process of a predetermined block in the
本実施形態では、消去対象となる所定のブロックを含むメモリチップ110がメモリチ
ップ110−1であるとして説明する。
In the present embodiment, description will be made assuming that the
本実施形態に係るメモリシステムでは、第1の実施形態に係るメモリシステムと異なり
、メモリコントローラ200は、メモリコントローラ200の温度を取得すること無く、
メモリチップ110の温度に基づいて、メモリチップ110の所定のブロックの消去処理
または昇温処理を実行する。
In the memory system according to the present embodiment, unlike the memory system according to the first embodiment, the
Based on the temperature of the
メモリコントローラ200の制御部220は、メモリチップ110−1の温度を、メモ
リI/F250経由で取得する(ステップ805)。
The
その後、メモリコントローラ200の制御部220は、メモリコントローラ200の温
度が所定の第14の温度より高いかどうかを判定する(ステップ2301)。所定の第1
4の温度は、所定の第6の温度と同じであってもよいし、異なる温度であってもよい。
Thereafter, the
The temperature of 4 may be the same as the predetermined sixth temperature or may be a different temperature.
メモリチップ110−1の温度が所定の第14の温度より高くない場合(ステップ23
01:No)、メモリコントローラ200の制御部220は、昇温処理を実行する(ステ
ップ807)。
When the temperature of the memory chip 110-1 is not higher than the predetermined 14th temperature (step 23)
01: No), the
メモリコントローラ200の制御部220は、昇温処理を実行した(ステップ807)
後、ステップ805に戻り、再度、メモリチップ110−1の温度を、メモリI/F25
0経由で取得する(ステップ805)。
The
Thereafter, the process returns to step 805, and the temperature of the memory chip 110-1 is set again to the memory I /
Obtained via 0 (step 805).
メモリコントローラ200の温度が所定の第14の温度より高い場合(ステップ230
1:Yes)、メモリコントローラ200の制御部220は、所定のブロックの消去をメ
モリI/F250へ指示する(ステップ1203)。
When the temperature of the
1: Yes), the
上述した第7の実施形態によれば、メモリシステム1において、第1の実施形態と同様
に、不揮発性メモリ110が低温動作に弱い場合であっても、不揮発性メモリ110のメ
モリセルのストレスを減らすことが出来、不揮発性メモリ110に保存されるデータ、不
揮発性メモリ110から読み出すデータの信頼性を向上させることが出来、不揮発性メモ
リ110からの読み出しエラー、不揮発性メモリ110に対する書き込みエラーの発生頻
度を減らすことが出来る。
According to the seventh embodiment described above, in the
なお、本発明は、上述の実施形態にのみ限定されるものではなく、本発明の要旨を逸脱
しない範囲内において種々変更を加え得ることは勿論である。
It should be noted that the present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the scope of the present invention.
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したも
のであり、発明の範囲を限定することは意図していない。これらの実施形態は、その他の
さまざまな形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の
省略、置き換え、変更を行うことができる。これらの実施形態やその変形は、発明の範囲
や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれ
るものである。
Although several embodiments of the present invention have been described, these embodiments are presented by way of example and are not intended to limit the scope of the invention. These embodiments can be implemented in various other forms, and various omissions, replacements, and changes can be made without departing from the spirit of the invention. These embodiments and modifications thereof are included in the invention described in the claims and equivalents thereof as well as included in the scope and gist of the invention.
1・・・メモリシステム
2・・・ホスト装置
3・・・システム
4・・・コネクタ
100・・・不揮発性メモリ
110・・・メモリチップ
200・・・メモリコントローラ
210・・・ホストI/F
220・・・制御部
230・・・データバッファ
240・・・符号化部/復号部
250・・・メモリI/F
260・・・温度センサI/F
270・・・内部バス
300・・・温度センサ
400・・・基板
DESCRIPTION OF
220 ...
260 ... Temperature sensor I / F
270 ...
Claims (10)
前記不揮発性メモリを制御するコントローラと、
を備え、
前記コントローラは、
前記コントローラの温度が第1の温度より高い場合または前記複数のメモリチップのう
ち第1のメモリチップの温度が第2の温度より高い場合に、前記第1のメモリチップへア
クセスするメモリシステム。 A non-volatile memory having a plurality of memory chips;
A controller for controlling the nonvolatile memory;
With
The controller is
A memory system that accesses the first memory chip when a temperature of the controller is higher than a first temperature or when a temperature of a first memory chip is higher than a second temperature among the plurality of memory chips.
前記第1のメモリチップの温度が前記第2の温度より高くない場合に、昇温処理を実行す
る請求項1に記載のメモリシステム。 The controller has a temperature of the controller not higher than the first temperature; and
The memory system according to claim 1, wherein when the temperature of the first memory chip is not higher than the second temperature, a temperature raising process is executed.
の温度より高くなった場合または前記第1のメモリチップの温度が前記第2の温度より高
くなった場合に、前記第1のメモリチップへアクセスする請求項1または請求項2に記載
のメモリシステム。 After the controller performs the temperature raising process, the controller temperature is the first temperature.
3. The memory system according to claim 1, wherein the first memory chip is accessed when the temperature of the first memory chip becomes higher than the second temperature or when the temperature of the first memory chip becomes higher than the second temperature. .
プからのデータ読み出し処理である請求項1乃至請求項3の何れか1項に記載のメモリシ
ステム。 4. The memory system according to claim 1, wherein the access is a data read process from the first memory chip based on a read request received from a host device. 5.
前記昇温処理は前記ECC回路を駆動させることである請求項2または請求項3に記載
のメモリシステム。 The controller includes an ECC circuit for encoding or decoding data,
The memory system according to claim 2, wherein the temperature raising process is to drive the ECC circuit.
前記コントローラは、ダミーデータを前記符号化回路に符号化させることにより、前記
ECC回路を駆動させる請求項5に記載のメモリシステム。 The ECC circuit includes an encoding circuit for encoding data;
The memory system according to claim 5, wherein the controller drives the ECC circuit by causing the encoding circuit to encode dummy data.
前記コントローラは、ダミーデータを前記復号回路に復号させることにより、前記EC
C回路を駆動させる請求項5に記載のメモリシステム。 The ECC circuit includes a decoding circuit for decoding the encoded data,
The controller causes the decoding circuit to decode the dummy data, thereby causing the EC to
The memory system according to claim 5, wherein the C circuit is driven.
符号化回路により符号化し、
前記アクセスは、前記符号化されたデータを書き込む処理である請求項6に記載のメモ
リシステム。 The controller encodes the data specified by the write request received from the host device by the encoding circuit,
The memory system according to claim 6, wherein the access is a process of writing the encoded data.
前記第1のメモリチップの温度が前記第2の温度より高くない場合に、前記第1のメモリ
チップと異なる第2のメモリチップを前記書き込み要求で指定されたデータが保存される
メモリチップとして決定し、前記第2のメモリチップの温度が第2の温度より高い場合に
、前記第2のメモリチップへ前記符号化されたデータを書き込む請求項8に記載のメモリ
システム。 The controller has a temperature of the controller not higher than the first temperature; and
When the temperature of the first memory chip is not higher than the second temperature, a second memory chip different from the first memory chip is determined as a memory chip that stores data specified by the write request. The memory system according to claim 8, wherein the encoded data is written to the second memory chip when the temperature of the second memory chip is higher than the second temperature.
1乃至請求項3の何れか1項に記載のメモリシステム。 4. The memory system according to claim 1, wherein the access is an erasing process of a block included in the first memory chip. 5.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/694,601 US10373656B2 (en) | 2016-09-26 | 2017-09-01 | Memory system that carries out temperature-based access to a memory chip |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016187376 | 2016-09-26 | ||
JP2016187376 | 2016-09-26 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018055759A true JP2018055759A (en) | 2018-04-05 |
Family
ID=61835932
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017065622A Pending JP2018055759A (en) | 2016-09-26 | 2017-03-29 | Memory system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018055759A (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019200831A (en) * | 2018-05-14 | 2019-11-21 | 慧榮科技股▲分▼有限公司 | Data storage system and operating method of nonvolatile memory |
CN111724827A (en) * | 2019-03-20 | 2020-09-29 | 东芝存储器株式会社 | Memory system and nonvolatile memory |
CN113168213A (en) * | 2018-10-23 | 2021-07-23 | 美光科技公司 | Controlled heating of memory devices |
JP2021522638A (en) * | 2018-05-03 | 2021-08-30 | マイクロソフト テクノロジー ライセンシング,エルエルシー | Increased flash memory retention time using waste heat |
US11853599B2 (en) | 2020-03-31 | 2023-12-26 | Kioxia Corporation | Memory system and information processing system |
JP7467088B2 (en) | 2019-12-03 | 2024-04-15 | キヤノン株式会社 | Information processing device, processing method and program for information processing device |
-
2017
- 2017-03-29 JP JP2017065622A patent/JP2018055759A/en active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021522638A (en) * | 2018-05-03 | 2021-08-30 | マイクロソフト テクノロジー ライセンシング,エルエルシー | Increased flash memory retention time using waste heat |
JP2019200831A (en) * | 2018-05-14 | 2019-11-21 | 慧榮科技股▲分▼有限公司 | Data storage system and operating method of nonvolatile memory |
US10789995B2 (en) | 2018-05-14 | 2020-09-29 | Silicon Motion, Inc. | Data storage system and operating method for non-volatile memory |
CN113168213A (en) * | 2018-10-23 | 2021-07-23 | 美光科技公司 | Controlled heating of memory devices |
CN111724827A (en) * | 2019-03-20 | 2020-09-29 | 东芝存储器株式会社 | Memory system and nonvolatile memory |
JP7467088B2 (en) | 2019-12-03 | 2024-04-15 | キヤノン株式会社 | Information processing device, processing method and program for information processing device |
US11853599B2 (en) | 2020-03-31 | 2023-12-26 | Kioxia Corporation | Memory system and information processing system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10373656B2 (en) | Memory system that carries out temperature-based access to a memory chip | |
US10157007B2 (en) | Memory system and operating method thereof | |
JP2018055759A (en) | Memory system | |
US10770147B2 (en) | Memory system including a memory device that can determine optimum read voltage applied to a word line | |
US11294814B2 (en) | Memory system having a memory controller and a memory device having a page buffer | |
CN110032471B (en) | Memory system and method of operating the same | |
US10424352B2 (en) | Memory system and method for operating the same | |
US10248560B2 (en) | Storage device that restores data lost during a subsequent data write | |
US10777285B2 (en) | Memory system capable of preventing read fail, including reading a second memory block through a dummy read operation, when an erase operation is performed to a first memory block, and operating method thereof | |
CN110489271B (en) | Memory system and method of operating the same | |
KR20190117117A (en) | Data storage device and operating method thereof | |
KR20200100167A (en) | Uncorrectable ECC | |
KR102479483B1 (en) | Memory system and operation method thereof | |
TW201911025A (en) | Memory system and operating method thereof | |
CN111208936B (en) | Memory device and method of operating the same | |
US11288202B2 (en) | Memory controller and method of operating the same | |
US10748638B2 (en) | Memory controller and memory system having the same | |
US10803960B2 (en) | Memory device and operation method thereof | |
US10678471B2 (en) | Memory controller, memory system having the memory controller, and operating method of the memory controller | |
US10754571B2 (en) | Storage device and method of operating the same | |
KR20200113387A (en) | Memory system and operating method thereof | |
JP7087013B2 (en) | Memory system and non-volatile memory control method | |
US11961559B2 (en) | Storage device and operating method of storage device | |
US11334505B2 (en) | System and method for operating system | |
KR102664674B1 (en) | Memory system and operation method for the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20170531 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20170821 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20180907 |
|
RD07 | Notification of extinguishment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7427 Effective date: 20180907 |