[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP5002629B2 - メモリシステム - Google Patents

メモリシステム Download PDF

Info

Publication number
JP5002629B2
JP5002629B2 JP2009198367A JP2009198367A JP5002629B2 JP 5002629 B2 JP5002629 B2 JP 5002629B2 JP 2009198367 A JP2009198367 A JP 2009198367A JP 2009198367 A JP2009198367 A JP 2009198367A JP 5002629 B2 JP5002629 B2 JP 5002629B2
Authority
JP
Japan
Prior art keywords
data
memory
user data
page
backup
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.)
Active
Application number
JP2009198367A
Other languages
English (en)
Other versions
JP2011048755A (ja
Inventor
幸輔 初田
大三郎 高島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2009198367A priority Critical patent/JP5002629B2/ja
Priority to US12/860,160 priority patent/US8650373B2/en
Publication of JP2011048755A publication Critical patent/JP2011048755A/ja
Application granted granted Critical
Publication of JP5002629B2 publication Critical patent/JP5002629B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

本発明は、メモリシステムに関する。
不揮発性メモリであるNAND型フラッシュメモリ(以下、単にNANDメモリ)は、ハードディスクに比べ、高速、軽量などの利点を有している。また、NANDメモリは、NOR型フラッシュメモリを含む他のフラッシュメモリに比べて大容量化・高集積化を行いやすい。これらの特徴を有するNANDメモリを搭載したSSD(Solid State Drive)は、磁気ディスク装置に替わる大容量の外部記憶装置として注目されている。
磁気ディスク装置をNANDメモリを搭載したSSDに置き換える際の問題点の一つとして、NANDメモリが読み書き(特に書き込み)アクセスに耐えられる回数(アクセス制限回数)が少ないことが挙げられる。この問題に対応できる1つの解として、NANDメモリへ書き込む前にDRAMなどの高速読み出し/書き込みが可能なメモリ(RAM)を経由させることが挙げられる。具体的には、ホスト装置から送信されてきた小容量データをRAMに貯めておき、大容量データをして扱えるようになった際に、RAMに貯めてあったデータをブロック単位などの大きな単位でNANDメモリへ書き込む(例えば特許文献1参照)。小容量データのままNANDメモリへ書き込む必要があるデータについては、ページ単位でブロック内追記をすることでNANDメモリの疲労を軽減する方式も多く用いられる。
ところで、近年、NANDメモリには、1つのセルに多ビットを格納する多値技術が適用されたものが増えてきている。例えば、1つのセル2ビットを格納できるNANDメモリにおいては、1つのセルに格納されるビットは、書き込まれる順にロアー(Lower)ビット、アッパー(Upper)ビットと呼ばれる。また、ロアービットからなるページはロアーページ、アッパービットからなるページはアッパーページと呼ばれる。
前記したようなRAMを介してNANDメモリへの書き込みを行うSSDには、NANDメモリに多値NANDメモリを適用したものが多くなってきている。このSSDにおいてページ単位でブロック内追記を行う際には注意が必要となる。なぜならば、アッパーページを書き込んでいる途中に書き込みエラー(プログラムエラーや瞬停など)が起こるとロアーページに格納されているデータの保障ができなくなってしまうからである。したがって、アッパーページの書き込みを無事終了するまでは書き込み先のアッパーページに対するロアーページのバックアップが必要となる。従来は、NANDメモリへの書き込みを行う際に保障できないデータがある場合は、このデータをNANDメモリ中の別のブロックへバックアップする動作が行われていた。この動作はSSDの書き込み速度を落としてしまう原因となっていた。
特開2008−33788号公報
本発明は、書き込みエラーが発生すると失われる可能性のあるデータを効率的にバックアップするメモリシステムを提供することを目的とする。
本願発明の一態様によれば、ワードライン当たりのメモリセル群がn(n≧2)ページ分の記憶容量を有する不揮発性の第1メモリと、ホスト装置から書き込み要求されたユーザデータを一時記憶する不揮発性の第2メモリと、前記第2メモリが記憶しているユーザデータをページ単位で読み出して該読み出したページ単位のユーザデータを逐次前記第1メモリに書き込むデータコピー処理を所定のタイミングで実行するデータコピー処理部と、データコピー処理実行後、前記第2メモリ上の前記データコピー処理済みのユーザデータのうち、前記第1メモリの空きページを有するワードラインに格納された第1のユーザデータを前記第2メモリに有効のまま残し、前記第1メモリの空きページを有さないワードラインに格納された第2のユーザデータを無効化するデータ無効化処理部と、を備えることを特徴とするメモリシステムが提供される。
本発明によれば、書き込みエラーが発生すると失われる可能性のあるデータを効率的にバックアップするメモリシステムを提供することができるという効果を奏する。
図1は、ホスト装置および本実施の形態のメモリシステム(SSD)の構成を説明する図。 図2は、NANDメモリチップの物理ブロックについて説明するための図。 図3は、NANDメモリへの書き込み順序の一例を説明するための図。 図4は、FeRAMからNANDメモリに2回の退避処理が行われた様子を説明する図。 図5は、本実施の形態のSSDの機能構成を説明する図。 図6は、本実施の形態のSSDの退避処理の動作を説明するフローチャート。 図7は、データコピー処理をさらに詳しく説明するフローチャート。 図8は、データ無効化処理をさらに詳しく説明するフローチャート。 図9は、バックアップがなされる様子を具体的に説明する図。 図10は、バックアップがなされる様子を具体的に説明する図。 図11は、バックアップがなされる様子を具体的に説明する図。 図12は、バックアップがなされる様子を具体的に説明する図。 図13は、バックアップがなされる様子を具体的に説明する図。 図14は、バックアップがなされる様子を具体的に説明する図。
以下に添付図面を参照して、本発明の実施の形態にかかるメモリシステムを詳細に説明する。なお、この実施の形態により本発明が限定されるものではない。
(実施の形態)
図1は、ホスト装置およびメモリシステムの構成を説明する図である。本実施の形態においては、メモリシステムの一例として、ハードディスクドライブ(HDD)と同じ接続インタフェース規格(ATA規格)を持つ、不揮発性半導体メモリであるNAND型フラッシュメモリ(以下、NANDメモリ)を備えるSSDを取り上げて説明する。
SSD100は、ATAインタフェースなどのメモリ接続インタフェースを介してパーソナルコンピュータあるいはCPUコアなどのホスト装置200と接続され、ホスト装置200の外部記憶装置として機能する。SSD100は、ホスト装置200から書き込み/読み出しされるユーザデータ(以下、データ)が格納される第1メモリとしてのNANDメモリ1と、ホスト装置200とNANDメモリ1との間のデータ転送を制御するコントローラ2と、ホスト装置200から書き込み要求されたデータが一時蓄積される第2メモリとしてのFeRAM(Ferroelectric Random Access Memory)3と、を備えている。ホスト装置200から書き込み要求されたデータ(ユーザデータ)は、FeRAM3を介してNANDメモリ1に書き込まれる。
コントローラ2は、NANDメモリ1とFERAM3を制御してホスト装置200とNANDメモリ1との間のデータ転送制御を行う。このデータ転送制御を行うための構成として、コントローラ2は以下の構成要素をさらに有する。すなわち、コントローラ2は、ROM(Read Only Memory)4と、MPU5と、インタフェース(I/F)制御回路6と、FeRAM制御回路7と、NAND制御回路8と、を備えている。
I/F制御回路6は、ATAインタフェースを介してホスト装置200との間でユーザデータを送受信する。FeRAM制御回路7は、FeRAM3との間でユーザデータを送受信する。NAND制御回路8は、NANDメモリ1との間でユーザデータを送受信する。
ROM4には、NANDメモリ1に記憶されている管理プログラム(ファームウェア)をブートするブート用プログラムが格納されている。MPU5は前記ファームウェアをブートしてFeRAM3上に展開し、FeRAM3上に展開したファームウェアに基づいてコントローラ2全体を制御する。
NANDメモリ1は、一つ以上のNANDメモリチップを備えている。さらに、各NANDメモリチップは、データ消去の単位である物理ブロックを複数配列して構成されている。図2(a)は、NANDメモリチップに含まれる1個の物理ブロックの構成例を示す等価回路図である。各物理ブロックは、X方向に沿って順に配列された(p+1)個のNANDストリングを備えている(pは、0以上の整数)。(p+1)個のNANDストリングにそれぞれ含まれる選択トランジスタST1は、ドレインがビット線BL0〜BLpに接続され、ゲートが選択ゲート線SGDに共通接続されている。また、選択トランジスタST2は、ソースがソース線SLに共通接続され、ゲートが選択ゲート線SGSに共通接続されている。
各メモリセルトランジスタMTは、半導体基板上に形成された積層ゲート構造を備えたMOSFET(Metal Oxide Semiconductor Field Effect Transistor)から構成される。積層ゲート構造は、半導体基板上にゲート絶縁膜を介在して形成された電荷蓄積層(浮遊ゲート電極)、および電荷蓄積層上にゲート間絶縁膜を介在して形成された制御ゲート電極を含んでいる。メモリセルトランジスタMTは、浮遊ゲート電極に蓄えられる電子の数に応じてしきい値電圧が変化し、このしきい値電圧の違いに応じてデータを記憶する。ここでは、メモリセルトランジスタMTは、多値(2ビット以上のデータ)を記憶するように構成されている。
また、メモリセルトランジスタMTは、浮遊ゲート電極を有する構造に限らず、MONOS(Metal-Oxide-Nitride-Oxide-Silicon)型など、電荷蓄積層としての窒化膜界面に電子をトラップさせることでしきい値調整可能な構造であってもよい。
各NANDストリングにおいて、(q+1)個のメモリセルトランジスタMTは、選択トランジスタST1のソースと選択トランジスタST2のドレインとの間に、それぞれの電流経路が直列接続されるように配置されている。すなわち、複数のメモリセルトランジスタMTは、隣接するもの同士で拡散領域(ソース領域若しくはドレイン領域)を共有するような形でY方向に直列接続される。
そして、最もドレイン側に位置するメモリセルトランジスタMTから順に、制御ゲート電極がワード線(ワードライン)WL0〜WLqにそれぞれ接続されている。従って、ワード線WL0に接続されたメモリセルトランジスタMTのドレインは選択トランジスタST1のソースに接続され、ワード線WLqに接続されたメモリセルトランジスタMTのソースは選択トランジスタST2のドレインに接続されている。
ワード線WL0〜WLqは、物理ブロック内のNANDストリング間で、メモリセルトランジスタMTの制御ゲート電極を共通に接続している。つまり、ブロック内において同一行にあるメモリセルトランジスタMTの制御ゲート電極は、同一のワード線WLに接続される。この同一のワード線WLに接続される(p+1)個のメモリセルトランジスタMTは1ページ(物理ページ)として取り扱われ、この物理ページごとにデータの書き込みおよびデータの読み出しが行われる。
また、ビット線BL0〜BLpは、ブロック間で、選択トランジスタST1のドレインを共通に接続している。つまり、複数のブロック内において同一列にあるNANDストリングは、同一のビット線BLに接続される。
メモリトランジスタMT当たり複数ビット格納可能に構成されているものがある。例えば、メモリトランジスタMT当たりn(n≧2)ビット格納可能な場合、ワード線当たりの記憶容量はnページ分のサイズに等しくなる。図2(b)は、例えば、1個のメモリセルトランジスタMTに2ビットの記憶を行う4値データ記憶方式でのしきい値分布を示す模式図である。4値データ記憶方式では、メモリトランジスタMT当たり、2ページ分のデータを記憶することができる。先に書き込みがなされるページをロアーページ、ロアーページの後から書き込みがなされるページをアッパーページという。
メモリセルトランジスタMTは、アッパーページデータ“x”とロアーページデータ“y”とで定義される4値データ“xy”の何れか1つを保持可能である。この4値データ“xy”は、メモリセルトランジスタMTのしきい値電圧の順に、例えば、データ“11”、“01”、“00”、“10”が割り当てられる。データ“11”は、メモリセルトランジスタMTのしきい値電圧が負の消去状態である。なお、データの割り当て規則はこれに限らない。また、本実施の形態では、以降、1個のメモリトランジスタMTに2ビットの値を記憶することができるものを取り上げて説明するが、1個のメモリセルトランジスタMTに3ビット以上の記憶を行う構成であってもよい。なお、以降、メモリセルトランジスタMTを単にメモリセルと表現することもある。
ロアーページ書き込み動作においては、データ“11”(消去状態)のメモリセルに対して選択的に、ロアービットデータ“y”の書き込みによって、データ“10”が書き込まれる。アッパーページ書き込み動作においては、データ“11”のメモリセルと、データ“10”のメモリセルに対して、それぞれ選択的にアッパービットデータ“x”の書き込みが行われて、データ“01”およびデータ“00”が書き込まれる。アッパーページ書き込み前のデータ“10”のしきい値分布は、アッパーページ書き込み後のデータ“01”とデータ“00”のしきい値分布の中間程度に位置しており、一般的に、アッパーページ書き込み後のしきい値分布よりブロードとなっている。
ユーザデータの書き込み時においては、隣接メモリセル間のカップリング容量の影響により、メモリセルのしきい値電圧が変動する。そこで、隣接メモリセルのカップリング容量の影響を軽減するため、書き込み先のロアーページとアッパーページとが離れるように書き込み順序が工夫されている。図3は、NANDメモリ1への書き込み順序の一例を説明するための図である。図3(a)に示すように、まず、iをゼロ値以上の整数とし、ワード線WLiに接続されているメモリセル群のロアーページをロアーページi(Lower Page i)、アッパーページをアッパーページi(Upper Page i)と表現することとする。すると、図3(b)に示すように、バンクの先頭の2ページのロアーページ(ロアーページ0、ロアーページ1)の書き込みが行われた後、(1)ロアーページ2i+2、(2)ロアーページ2i+3、(3)アッパーページ2i、(4)アッパーページ2i+1の順番の書き込みが実行される。(4)の書き込みが終了すると、iは1インクリメントされ、(1)が示す書き込み先への書き込みが実行される。このように、ロアーページへの書き込み(1)、(2)と、その次に実行されるアッパーページへの書き込み(3)、(4)とが数WL分(この場合は2WL分)だけ離されている。
図1に戻る。FeRAM3は、前記したように、コントローラ2の制御の下、ホスト装置200から書き込み要求されたデータが一時蓄積される。そして、FeRAM3に記憶されているデータをNANDメモリ1に退避させるべき事象が起こったとき、該データはNANDメモリ1にコピーされ、FeRAM3に記憶されていたユーザデータは無効化される。NANDメモリ1へのデータコピーからユーザデータの無効化までの一連の処理を退避処理ということとする。なお、退避処理が実行されるタイミングについては特に限定しないが、ここでは、FeRAM3に蓄積されたユーザデータが所定ページ数分のサイズに達したときに退避処理が実行されるとして説明する。また、以降、1ページのサイズとは一つのアッパーページ(あるいはロアーページ)のサイズを指すこととする。SSD100の第2メモリとしては、不揮発性でかつNANDメモリ1よりも高速なアクセスを行うことができるメモリであればFeRAM3以外のメモリを使用することも可能である。例えば、FeRAM3の代わりにMRAM(Magnetoresistive Random Access Memory)を使用することができる。
すでに図2(b)のしきい値分布例の説明にて述べたように、アッパーページ書き込み前のデータ“10”のしきい値分布は、アッパーページ書き込み後のデータ“01”とデータ“00”のしきい値分布の中間程度に位置している。そのため、ロアービットデータ“y”=“0”が書き込まれているメモリセルにアッパービットデータを書き込む際にエラーが生じると、ロアービットデータが“1”であったのか“0”であったのかが分からなくなってしまう。つまり、アッパーページ書き込み中にエラーが起こると、ロアーページのデータが破壊されてしまう可能性がある。図4は、FeRAM3からNANDメモリ1に2回の退避処理が行われた様子を説明する図である。1回目の退避処理によりロアーページ0、1、2、3とアッパーページ0、1とにユーザデータが書き込まれ、2回目の退避処理によりロアーページ4、5、6、7とアッパーページ2、3とにユーザデータが書き込まれている。2回目の退避処理におけるアッパーページ2、3に対する書き込みに失敗したとき、1回目の退避処理によりロアーページ2、3に書き込まれたデータが破壊される可能性がある。
そこで、従来は、書き込みエラー発生時のデータ破壊に備え、破壊される可能性があるユーザデータを、退避処理を実行する前にNANDメモリ1にバックアップしていた。しかしながら、このバックアップ処理の追加は書き込み速度の低下を招いていた。これに対し、本実施の形態によれば、ホスト装置200から書き込み要求されたユーザデータを一時蓄積するメモリに不揮発性メモリであるFeRAM3を使用し、次回以降の退避処理により破壊される可能性のあるユーザデータをFeRAM3中に残し、残したユーザデータをバックアップデータとする。これにより、書き込み速度の低下を抑えた効率的なバックアップが可能となる。
図5は、上記説明した効率的なバックアップを行うための機能構成を説明する図である。図示するように、FeRAM3には、ユーザデータを蓄積記憶する領域であるユーザデータ記憶領域31が確保されている。また、FeRAM3は、ユーザデータ記憶領域31に記憶されているユーザデータが有効であるか無効であるかをページ単位で管理する有効/無効フラグ32を記憶している。ユーザデータが無効な状態とは、該ユーザデータが消去された状態であることを指している。
FeRAM3は、さらに、ユーザデータ記憶領域31が記憶している有効なユーザデータがバックアップデータであるか否かをページ単位で管理するバックアップ情報33と、を記憶している。書き込み先(コピー先)のワードライン当たりのメモリセル群が2ページ分のユーザデータを記憶していない場合、言い換えると書き込み先がロアーページであってかつこのロアーページと同一のメモリセル群のアッパーページへの書き込みがなされていない場合、このユーザデータはバックアップデータとされる。バックアップ情報33には、バックアップデータと該バックアップデータのNANDメモリ1におけるコピー先アドレスとの対応関係が記述されている。
MPU5は、有効/無効フラグ32およびバックアップ情報33に基づいてユーザデータ記憶領域31に蓄積記憶されているバックアップデータではない有効なユーザデータをNANDメモリ1にコピーするデータコピー処理部51と、データコピー処理部51がユーザデータをコピーした後にコピー動作の内容に応じて有効/無効フラグ32を更新管理する有効/無効フラグ更新処理部52と、バックアップ情報33を更新管理するバックアップ情報更新処理部53とを備えている。
続いて、本実施の形態のSSD100の動作を図6〜図8を用いて説明する。図6は、SSD100の退避処理の動作を説明するフローチャートである。
図6に示すように、まず、データコピー処理部51は、FeRAM3のユーザデータ記憶領域31に所定ページ数のユーザデータが貯まったか否かを判定し(ステップS1)、貯まっていた場合(ステップS1、Yes)、データコピー処理を実行する(ステップS2)。所定ページ数のユーザデータが貯まっていなかった場合(ステップS1、No)、ステップS1の判定処理を続行する。
図7は、データコピー処理をさらに詳しく説明するフローチャートである。図示するように、データコピー処理が開始されると、データコピー処理部51は、有効/無効フラグ32およびバックアップ情報33を参照し、ユーザデータ記憶領域31に記憶されているユーザデータのうちからバックアップデータではない有効なユーザデータ(以下、有効なユーザデータを単に有効データという)を選択する(ステップS21)。そして、データコピー処理部51は、ステップS21にて選択した有効データを逐次NANDメモリ1にコピーする(ステップS22)。コピーが完了すると、データコピー処理はリターンされる。このように、データコピー処理部51は、バックアップ情報33に基づいてユーザデータをデータコピー処理済みのユーザデータであるバックアップデータとデータコピー処理が行われていないユーザデータとに弁別し、データコピー処理が行われていないユーザデータをNANDメモリ1にコピーする。
図6に戻り、FeRAM3が記憶しているデータコピー処理済みのユーザデータからバックアップを必要とするユーザデータをバックアップデータとしてFeRAM3上に残し、バックアップデータを除くデータコピー処理済みのユーザデータをFeRAM3から消去(無効化)する処理であるデータ無効化処理が実行される(ステップS3)。データ無効化処理は、有効/無効フラグ更新処理部52、バックアップ情報更新処理部53、有効/無効フラグ32およびバックアップ情報33の協働により実行される。データ無効化処理後、ステップS1に移行する。
図8は、データ無効化処理をさらに詳しく説明するフローチャートである。図示するように、データ無効化処理が開始されると、有効/無効フラグ更新処理部52は、有効/無効フラグ32を編集し、直前に実行されたデータコピー処理によってコピーされた有効データのうち、コピー先がアッパーページであったユーザデータを無効化する(ステップS31)。ステップS31の処理により、バックアップデータであったユーザデータおよび直前に実行されたデータコピー処理によりコピーされた有効データのうちのコピー先がロアーページであったユーザデータが依然として「有効」となっている。ステップS31に引き続き、有効/無効フラグ更新処理部52は、さらに有効/無効フラグ32を編集して、この「有効」となっているユーザデータのうちの、アッパーページにデータを記憶しているメモリセル群のロアーページがコピー先であるユーザデータを無効とする(ステップS32)。これにより、アッパーページにデータを記憶していないメモリセル群のロアーページがコピー先であるユーザデータ、すなわちバックアップを必要とするユーザデータが有効データとしてユーザデータ記憶領域31に残る。バックアップ情報更新処理部53は、ステップS32の処理を経てなお有効データとして残存しているユーザデータを選択し、この選択したユーザデータと該ユーザデータのコピー先のアドレスとの対応付けをバックアップ情報33として保存し(ステップS33)、データ無効化処理がリターンされる。
図9〜図14は、以上の動作によりバックアップがなされる様子を具体的に説明する図である。なお、ここでは、データコピー処理部51は、ステップS1において、6ページ以上のユーザデータが貯まったとき、データコピー処理(ステップS2)に移行する、として説明する。
図9は、ユーザデータ記憶領域31に6ページ分のユーザデータ(データ(1a)〜データ(1f))が書き込まれた様子を示している。なお、データ(1a)〜データ(1f)が書き込まれた段階においてはバックアップデータがなかったものとしている。
図10は、データコピー処理部51により、データ(1a)〜データ(1f)がNANDメモリ1にコピーされる様子を説明する図である。図示するように、データ(1a)〜データ(1f)は、夫々、ロアーページ0(L0)、ロアーページ1(L1)、ロアーページ2(L2)、ロアーページ3(L3)、アッパーページ0(U0)、アッパーページ1(U1)に書き込まれている。ここで、L2、L3のメモリセルのアッパーページに対応するU2、U3は今回のデータコピー処理で書き込みが行われておらず、次回以降のデータコピー処理により書き込みが行われる。したがって、データ(1c)、データ(1d)はバックアップデータとして残されることとなる。
図11は、バックアップデータが残されている状態を説明する図である。図示するように、データ(1c)、データ(1d)は有効のままユーザデータ記憶領域31に残されている。
図12は、さらにユーザデータ記憶領域31に新たなユーザデータ(データ(2a)、データ(2b)、データ(2c)、データ(2d)、データ(2e))が書き込まれた様子を示している。
図13は、データコピー処理部51により、データ(2a)〜データ(2e)がNANDメモリ1にコピーされる様子を説明する図である。図示するように、データ(2a)、データ(2b)、データ(3c)、データ(2d)、データ(2e)が夫々ロアーページ4(L4)、ロアーページ5(L5)、アッパーページ2(U2)、アッパーページ3(U3)、ロアーページ6(L6)に夫々コピーされる。すると、L2およびL3のメモリセル群のアッパーページであるU2およびU3への書き込みが行われたため、L2、L3をコピー先としたユーザデータはバックアップされる必要がなくなる。また、今回のデータコピー処理によりアッパーページ4(U4)、アッパーページ5(U5)、アッパーページ6(U6)への書き込みが行われないので、新たにL4、L5、L6に書き込まれたユーザデータはバックアップが必要なユーザデータとなる。
図14は、バックアップデータが残されている状態を説明する図である。図示するように、L4、L5、L6を夫々コピー先とするデータ(2a)、データ(2b)、データ(2c)がバックアップデータとしてユーザデータ記憶領域31に消去されることなく残される。
なお、以上の説明においては、メモリセル当たり2ビットの記憶容量を有するNANDメモリ1を例に挙げて説明したが、3ビット以上の記憶容量を有するNANDメモリを備えるメモリシステムに対しても本実施の形態を適用することができる。nビットの記憶容量を有するNANDメモリを備えるメモリシステムにおいては、ワードライン当たりのメモリセル群がnページ分のユーザデータを記憶していない場合、該メモリセル群を書き込み先とするユーザデータをバックアップデータとしてFeRAM3に残すようにするとよい。
また、有効/無効フラグ32およびバックアップ情報33は、FeRAM3に記憶されている、として説明したが、有効/無効フラグ32およびバックアップ情報33の記憶先はFeRAM3でなくてもかまわない。例えば、有効/無効フラグ32およびバックアップ情報33をNANDメモリ1に記憶させるようにしても構わないし、SSD100は小規模にメモリまたはレジスタを別途設け、該メモリまたはレジスタに記憶させるようにしても構わない。
以上述べたように、本発明の実施の形態によれば、ワードライン当たりのメモリセル群がn(n≧2)ページ分の記憶容量を有するNANDメモリ1と、ホスト装置200から書き込み要求されたユーザデータを一時記憶するFeRAM3と、FeRAM3が記憶しているユーザデータをページ単位で読み出して該読み出したページ単位のユーザデータを逐次NANDメモリ1に書き込むデータコピー処理を所定のタイミングで実行するデータコピー処理部51と、データコピー処理実行後、書き込み先のワードライン当たりのメモリセル群がnページ分のユーザデータを記憶しているか否かに基づいてFeRAM3が記憶しているデータコピー処理済みのユーザデータからバックアップを必要とするユーザデータを選択し、選択したユーザデータをバックアップデータとしてFeRAM3に残し、バックアップデータを除くFeRAM3上のデータコピー処理済みのユーザデータを無効化するデータ無効化処理を実行するデータ無効化処理部(データ無効化処理は、有効/無効フラグ更新処理部52、バックアップ情報更新処理部53、有効/無効フラグ32およびバックアップ情報33)と、を備えるように構成したので、バックアップ専用の記憶領域を設ける必要がなくなる。また、バックアップ専用の領域にバックアップデータを移動させる処理を行わなくて済むため、データの書き込み速度の低下を抑えることができる。すなわち、本発明の実施の形態によれば、書き込みエラーが発生すると失われる可能性のあるデータを効率的にバックアップすることができる。
また、FeRAM3に記憶されているユーザデータがバックアップデータであるかデータコピー処理がなされていないユーザデータであるかを判定するための情報として、バックアップデータと該バックアップデータのNANDメモリ1における書き込み先アドレスとをページ毎に対応付けるバックアップ情報33を備えるように構成した。
データコピー処理部51は、バックアップ情報33に基づいてFeRAM3が記憶しているユーザデータをバックアップデータとデータコピー処理が行われていないユーザデータとに弁別し、データコピー処理が行われていないユーザデータに対してデータコピー処理を実行する、ように構成したので、バックアップデータ、すなわち一度退避処理が実行されたユーザデータを何度も退避処理する無駄を省略することができるようになる。
1 NANDメモリ、2 コントローラ、3 FeRAM、4 ROM、5 MPU、6 I/F制御回路、7 FeRAM制御回路、8 NAND制御回路、31 ユーザデータ記憶領域、32 有効/無効フラグ、33 バックアップ情報、51 データコピー処理部、52 有効/無効フラグ更新処理部、53 バックアップ情報更新処理部、100 SSD、200 ホスト装置。

Claims (6)

  1. ワードライン当たりのメモリセル群がn(n≧2)ページ分の記憶容量を有する不揮発性の第1メモリと、
    ホスト装置から書き込み要求されたユーザデータを一時記憶する不揮発性の第2メモリと、
    前記第2メモリが記憶しているユーザデータをページ単位で読み出して該読み出したページ単位のユーザデータを逐次前記第1メモリに書き込むデータコピー処理を所定のタイミングで実行するデータコピー処理部と、
    データコピー処理実行後、前記第2メモリ上の前記データコピー処理済みのユーザデータのうち、前記第1メモリの空きページを有するワードラインに格納された第1のユーザデータを前記第2メモリに有効のまま残し、前記第1メモリの空きページを有さないワードラインに格納された第2のユーザデータを無効化するデータ無効化処理部と、
    を備えることを特徴とするメモリシステム。
  2. 前記第2メモリに残された第1のユーザデータは、前記第1メモリの空きページを有するワードラインに格納された前記第1のユーザデータの破壊に備えたバックアップデータとして使用される、
    ことを特徴とする請求項1に記載のメモリシステム。
  3. 前記データ無効化処理部は、第1のユーザデータと該第1のユーザデータの前記第1メモリにおける書き込み先アドレスとをページ毎に対応付けるバックアップ情報を備え、前記バックアップ情報を更新管理する、
    ことを特徴とする請求項1または請求項2に記載のメモリシステム。
  4. 前記データコピー処理部は、前記バックアップ情報に基づいて前記第2メモリが記憶しているユーザデータをデータコピー処理済みである第1のユーザデータとデータコピー処理が行われていない第3のユーザデータとに弁別し、前記第3のユーザデータに対してデータコピー処理を実行する、
    ことを特徴とする請求項に記載のメモリシステム。
  5. 前記所定のタイミングは、前記第2メモリに所定ページ数のユーザデータが蓄積されたタイミングである、ことを特徴とする請求項1に記載のメモリシステム。
  6. 前記第1メモリはNAND型フラッシュメモリである、ことを特徴とする請求項1に記載のメモリシステム。
JP2009198367A 2009-08-28 2009-08-28 メモリシステム Active JP5002629B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009198367A JP5002629B2 (ja) 2009-08-28 2009-08-28 メモリシステム
US12/860,160 US8650373B2 (en) 2009-08-28 2010-08-20 Memory system, controller, and data transfer method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009198367A JP5002629B2 (ja) 2009-08-28 2009-08-28 メモリシステム

Publications (2)

Publication Number Publication Date
JP2011048755A JP2011048755A (ja) 2011-03-10
JP5002629B2 true JP5002629B2 (ja) 2012-08-15

Family

ID=43626527

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009198367A Active JP5002629B2 (ja) 2009-08-28 2009-08-28 メモリシステム

Country Status (2)

Country Link
US (1) US8650373B2 (ja)
JP (1) JP5002629B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130128685A (ko) * 2012-05-17 2013-11-27 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 프로그램 방법
US9817766B1 (en) * 2012-12-28 2017-11-14 EMC IP Holding Company LLC Managing relocation of slices in storage systems
JP6460940B2 (ja) 2015-08-06 2019-01-30 東芝メモリ株式会社 記憶装置およびデータ退避方法
CN112667446B (zh) * 2021-01-13 2022-11-08 珠海妙存科技有限公司 Mlc nand的数据备份方法、装置及闪存系统

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5437022A (en) * 1992-12-17 1995-07-25 International Business Machines Corporation Storage controller having additional cache memory and a means for recovering from failure and reconfiguring a control unit thereof in response thereto
JP4146006B2 (ja) 1998-09-28 2008-09-03 富士通株式会社 フラッシュメモリを有する電子機器
JP2002342173A (ja) * 2001-05-18 2002-11-29 Pfu Ltd 電子機器装置および装置制御情報設定方法
JP2005301591A (ja) * 2004-04-09 2005-10-27 Toshiba Corp 不揮発性メモリを備えた装置及びメモリコントロ−ラ
WO2006067923A1 (ja) 2004-12-22 2006-06-29 Matsushita Electric Industrial Co., Ltd. メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム及びメモリ制御方法
JP4661369B2 (ja) 2005-05-31 2011-03-30 Tdk株式会社 メモリコントローラ
JP2007094921A (ja) * 2005-09-30 2007-04-12 Toshiba Corp メモリカードとその制御方法
JP2008033788A (ja) 2006-07-31 2008-02-14 Matsushita Electric Ind Co Ltd 不揮発性記憶装置、データ記憶システム、およびデータ記憶方法
JP2008134685A (ja) * 2006-11-27 2008-06-12 Konica Minolta Business Technologies Inc 不揮発メモリシステム及び不揮発メモリ制御方法
JP4675985B2 (ja) 2008-03-01 2011-04-27 株式会社東芝 メモリシステム
US8843691B2 (en) * 2008-06-25 2014-09-23 Stec, Inc. Prioritized erasure of data blocks in a flash storage device

Also Published As

Publication number Publication date
US8650373B2 (en) 2014-02-11
US20110055462A1 (en) 2011-03-03
JP2011048755A (ja) 2011-03-10

Similar Documents

Publication Publication Date Title
US11972115B2 (en) Memory system storing management information and method of controlling same
US10732855B2 (en) Storage system having a host that manages physical data locations of a storage device
US8285954B2 (en) Memory system managing a plurality of logs
JP5060574B2 (ja) メモリシステム
TWI533307B (zh) Nonvolatile semiconductor memory devices, memory controllers and memory systems
TWI419159B (zh) 記憶體系統
JP4439569B2 (ja) メモリシステム
US20100017562A1 (en) Memory system
JP2010152514A (ja) メモリシステム
JP2012128816A (ja) メモリシステム
JP5002629B2 (ja) メモリシステム
US9792068B2 (en) Memory system and method of controlling nonvolatile memory
JP4703764B2 (ja) メモリシステムの制御方法
US11210209B2 (en) Method for managing flash memory module and associated flash memory controller and electronic device
JP4558052B2 (ja) メモリシステム
JP4551938B2 (ja) メモリシステム
JP2011243116A (ja) メモリシステム及びそのデータ転送方法
JP2009211196A (ja) メモリシステム
CN114296631A (zh) 存储器系统及其操作方法
TW202205087A (zh) 管理快閃記憶體模組的方法及相關的快閃記憶體控制器與電子裝置
JP2009211188A (ja) メモリシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110818

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111011

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111212

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120424

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120521

R151 Written notification of patent or utility model registration

Ref document number: 5002629

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150525

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350