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

メモリシステム Download PDF

Info

Publication number
JP4675984B2
JP4675984B2 JP2008051385A JP2008051385A JP4675984B2 JP 4675984 B2 JP4675984 B2 JP 4675984B2 JP 2008051385 A JP2008051385 A JP 2008051385A JP 2008051385 A JP2008051385 A JP 2008051385A JP 4675984 B2 JP4675984 B2 JP 4675984B2
Authority
JP
Japan
Prior art keywords
management information
area
information
semiconductor memory
memory element
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.)
Expired - Fee Related
Application number
JP2008051385A
Other languages
English (en)
Other versions
JP2009211204A (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 JP2008051385A priority Critical patent/JP4675984B2/ja
Priority to US12/394,870 priority patent/US20090222636A1/en
Publication of JP2009211204A publication Critical patent/JP2009211204A/ja
Application granted granted Critical
Publication of JP4675984B2 publication Critical patent/JP4675984B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7202Allocation control and policies

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、不揮発性半導体記憶装置を用いて構成されるメモリシステムに関する。
ハードディスク装置を2次記憶装置として用いたパーソナルコンピュータにおいては、ハードディスク装置に格納されるデータが何らかの障害によって無効なデータとなってしまうことを防ぐためにバックアップをとる技術が知られている。たとえば、ハードディスク装置中のデータの変更を検出すると、そのデータの変更前のバックアップコピーであるスナップショットをとり、そのデータに対する更新を記録したログをとる。その後、所定の時間ごとにスナップショットをとるとともに、スナップショットをとる前の過去のログを無効にし、新しいログを生成するという処理が繰り返し行われる(たとえば、特許文献1参照)。そして、データが無効になってしまった場合には、スナップショットとログを基にそのデータを復元することができる。
ところで、近年では、不揮発性半導体記憶装置であるNAND型フラッシュメモリの大容量化が進行し、このNAND型フラッシュメモリを有するメモリシステムを2次記憶装置とするパーソナルコンピュータが製品化されている。このような、パーソナルコンピュータでは、NAND型フラッシュメモリが、ホスト装置からのコマンド(Readコマンド/Writeコマンドなど)によってアクセス可能な領域と、ホスト装置から発出される通常のコマンドではアクセスすることができない特殊領域(メモリシステムの内部に展開されるファームウェアを構成するモジュールが発出するコマンドによってアクセスできる領域)とを有している。
NAND型フラッシュメモリ内の領域のうち、特殊領域には、例えば警告イベントの履歴などの重要な情報が格納される。そして、メモリシステムが電源ONした際などには、メモリシステムの初期化処理として、特殊領域内の情報が読み出されて、電源OFFされた際のメモリシステムの状態に関する情報(管理情報)をメモリシステム上で復元する。
しかしながら、メモリシステムの初期化処理を行なう際、特殊領域に保存しておいたデータが何らかのエラーなどによって読み出せなかった場合には、メモリシステムが電源OFFされた際の管理情報をメモリシステム上で復元することはできず、管理情報の復元処理の信頼性が低いという問題があった。
米国特許出願公開第2006/0224636号明細書
本発明は、メモリシステムの初期化処理を行なう際の管理情報の復元の信頼性を向上させることができるメモリシステムを提供することを目的とする。
本発明の一態様によれば、揮発性半導体記憶素子と、不揮発性半導体記憶素子と、前記揮発性半導体記憶素子と前記不揮発性半導体記憶素子との間のデータ転送を制御するコントローラと、を備え、前記コントローラは、前記不揮発性半導体記憶素子に当該メモリシステム内部の動作状態に関する統計情報を含む第1の内部情報を書き込み、前記揮発性半導体記憶素子内の管理情報保存領域に含まれる内部情報領域に前記第1の内部情報と同一内容である第2の内部情報を書き込み、所定の条件が成立した場合に、前記管理情報保存領域に含まれるデータをスナップショットとして前記不揮発性半導体記憶素子に保存し、起動時に前記不揮発性半導体記憶素子から前記スナップショットを読み出して前記管理情報保存領域に復元し、前記不揮発性半導体記憶素子から前記第1の内部情報の読み出しが失敗した場合に、前記スナップショットから取得した前記第2の内部情報によって前記内部情報領域を初期化し、前記不揮発性半導体記憶素子から前記第1の内部情報の読み出しが成功した場合に、前記不揮発性半導体記憶素子から取得した前記第1の内部情報によって前記内部情報領域を初期化する、ことを特徴とするメモリシステム、が提供される。
本発明によれば、メモリシステムの初期化処理を行なう際の管理情報の復元の信頼性を向上させることができるという効果を奏する。
以下、本発明の実施形態について添付図面を参照して説明する。以下の説明において、同一の機能及び構成を有する要素については、同一符号を付し、重複説明は必要な場合にのみ行う。なお、以下の実施形態により本発明が限定されるものではない。
(実施の形態)
このメモリシステムは、不揮発性半導体記憶装置を含み、たとえば、パーソナルコンピュータなどのホスト装置の2次記憶装置(SSD:Solid State Drive)として使用され、ホスト装置から書込要求を出されたデータを記憶し、またホスト装置から読出要求のあったデータを読み出してホスト装置に出力する機能を有する。図1は、本発明の実施の形態にかかるメモリシステムの構成の一例を示すブロック図である。このメモリシステム10は、第1の記憶部としてのDRAM(Dynamic Random Access Memory)11と、第2の記憶部としてのNAND型フラッシュメモリ(以下、NANDメモリという)12と、電源回路13と、コントローラとしてのドライブ制御部14と、を備える。
DRAM11は、データ転送用、管理情報記録用または作業領域用の記憶部として使用される。具体的には、データ転送用の記憶部としては、ホスト装置から書込要求があったデータをNANDメモリ12に書き込む前に一時的に保存したり、ホスト装置から読出要求があったデータをNANDメモリ12から読み出して一時的に保存したりするために使用される。また、管理情報記録用の記憶部としては、DRAM11およびNANDメモリ12に記憶されるデータの格納位置を管理するための管理情報を格納するために使用される。さらに、作業領域用の記憶部としては、管理情報を復元する際に用いるログの展開時などに使用される。
NANDメモリ12は、データ保存用の記憶部として使用される。具体的には、ホスト装置側によって指定されたデータを記憶したり、DRAM11で管理される管理情報をバックアップ用に記憶したりする。この図1では、NANDメモリ12が4つのチャネル120A〜120Dによって構成されている場合が示されている。1つのチャネル120A〜120Dは、所定のサイズの記憶容量を有する8個のチップ122が1つにまとめられたパッケージ121を2つ含んでいる。また、各チャネル120A〜120Dは、ドライブ制御部14とバス15を介して接続されている。
電源回路13は、外部電源を受け、この外部電源を用いてメモリシステム10の各部に供給するための複数の内部電源を生成する。また、電源回路13は、外部電源の立ち上がりまたは立ち下りを検知して、パワーオンリセット信号を生成する。このパワーオンリセット信号は、ドライブ制御部14に送られる。
ドライブ制御部14は、DRAM11とNANDメモリ12を制御する。詳細は後述するが、たとえば、電源回路13からのパワーオンリセット信号に応じて、管理情報の復元処理や管理情報の保存処理を行う。また、ドライブ制御部14は、ATAインタフェース(図中では、ATA I/Fと表記)を介して、ホスト装置との間でデータを送受信し、RS232Cインタフェース(図中では、RS232C I/Fと表記)を介して、デバッグ用機器との間でデータを送受信する。さらに、ドライブ制御部14は、メモリシステム10の外部に設けられる状態表示用LEDを制御するための制御信号を出力する。
ここで、NANDメモリ12の構成について説明する。NANDメモリ12は、データ消去の単位であるブロックを基板上に複数配列して構成される。図2は、NANDメモリに含まれる1個のブロックの構成の一例を示す回路図である。なお、この図2において、紙面上の左右方向をX方向とし、紙面上のX方向に垂直な方向をY方向としている。
NANDメモリ12の各ブロックBLKは、X方向に沿って順に配列された(m+1)個(mは0以上の整数)のNANDストリングNSを備えている。各NANDストリングNSは、Y方向に隣接するメモリセルトランジスタMT間で拡散領域(ソース領域またはドレイン領域)を共有してY方向に直列に接続された(n+1)個(nは0以上の整数)のメモリセルトランジスタMT0〜MTnと、この(n+1)個のメモリセルトランジスタMT0〜MTnの列の両端に配置される選択トランジスタST1,ST2と、を有する。
各メモリセルトランジスタMT0〜MTnは、半導体基板上に形成された積層ゲート構造を有するMOSFET(Metal Oxide Semiconductor Field Effect Transistor)から構成される。ここで、積層ゲート構造には、半導体基板上にゲート絶縁膜を介在して形成された電荷蓄積層(浮遊ゲート電極)と、この電荷蓄積層上にゲート間絶縁膜を介在して形成された制御ゲート電極と、が含まれる。メモリセルトランジスタMT0〜MTnは、浮遊ゲート電極に蓄えられる電子の数に応じて閾値電圧が変化し、この閾値電圧の違いに応じて2ビット以上のデータを記憶することができる多値メモリである。なお、以下に示す実施の形態では、メモリセルトランジスタMTはこの多値メモリである場合を例に挙げて説明するが、1ビット(2値)を記憶するように構成した構造であってもよい。
NANDストリングNSを構成するメモリセルトランジスタMT0〜MTnの制御ゲート電極には、それぞれワード線WL0〜WLnが接続されており、また各NANDストリングNS中のメモリセルトランジスタMTi(i=0〜n)間は、同一のワード線WLi(i=0〜n)によって共通接続されている。つまり、ブロックBLK内において同一行にあるメモリセルトランジスタMTiの制御ゲート電極は、同一のワード線WLiに接続される。この同一のワード線WLiに接続される(m+1)個のメモリセルトランジスタMTiの列は1ページとして取り扱われ、NANDメモリ12では、このページ単位でデータの書き込みと読み出しが行われる。
1つのブロックBLK内の(m+1)個の選択トランジスタST1のドレインにはそれぞれビット線BL0〜BLmが接続され、ゲートには選択ゲート線SGDが共通接続されている。また、選択トランジスタST1のソースはメモリセルトランジスタMT0のドレインと接続されている。同様に、1つのブロックBLK内の(m+1)個の選択トランジスタST2のソースにはソース線SLが共通接続され、ゲートには選択ゲート線SGSが共通接続されている。また、選択トランジスタST2のドレインはメモリセルトランジスタMTnのソースと接続されている。
なお、図示されていないが、1つのブロックBLK内のビット線BLj(j=0〜m)は、他のブロックBLKのビット線BLjとの間で、選択トランジスタST1のドレインを共通に接続している。つまり、複数のブロックBLK内において同一列にあるNANDストリングNS間は、同一のビット線BLjによって接続される。また、本実施形態では、NANDメモリ12へのデータの書き込みは追記方式(シーケンシャル方式)で行われる。
NANDメモリ12では、上記したように、書込/読出の最小単位が同一のワード線WLiに接続されたメモリセルトランジスタMTi群内の1つのページであり、消去の最小単位が所定の数のページからなる1つのブロック(以下、物理ブロックともいう)である。また、このブロックが複数集まってプレーンを構成し、プレーンが複数集まって1つのチャネル対応記憶領域120A〜120Dを構成する。そして、このチャネル対応記憶領域120A〜120Dが複数集まって、1つのNANDメモリ12が構成される。以下の例では、チャネル数が4であり、プレーン数が2であるものとする。
このメモリシステムにおいては、チャネル対応記憶領域120A〜120Dが複数並列してドライブ制御部14に接続される構成となっているため、複数チャネルを並行して動作させたり、1チャネルのみを動作させたりすることが可能である。
なお、ドライブ制御部14の設定によって、所定の数の物理ブロックを単位として書込/読出処理を行ったり、消去を行ったりする場合があるが、この場合の所定の数の物理ブロックの集まりを論理ブロックというものとする。
つぎに、DRAM11とNANDメモリ12の機能構成について説明する。図3は、DRAMとNANDメモリの機能構成を模式的に示す図であり、(a)はDRAM11の機能構成を示し、(b)はNANDメモリ12の機能構成を示している。
図3(a)に示されるように、DRAM11は、ホスト装置から書込要求のあったデータを記憶するライトキャッシュ領域WCと、ホスト装置から読出要求のあったデータを記憶するリードキャッシュ領域RCと、DRAM11およびNANDメモリ12に記憶されるデータの格納位置を管理するための管理情報を記憶する管理情報格納領域(一時記憶領域)111と、管理情報を復元する際に使用される作業領域112と、を有する。
図3(b)に示されるように、NANDメモリ12は、ホスト装置から書込要求のあったデータを格納するデータ格納領域125と、DRAM11の管理情報格納領域111で管理される管理情報を保存する管理情報保存領域126と、を有する。この例では、NANDメモリ12でのデータの書込/読出単位をページサイズ単位とし、消去の単位をブロックサイズ単位(たとえば512KB単位)とするものとする。そのため、ブロックサイズ単位で管理されるNANDメモリ12の各ブロックを記憶するための領域を、さらにページサイズ単位の領域に分割する。このとき、ページサイズを4KBとし、ブロックサイズを512KBとすると、1ブロック内には128個のページが形成される。
ここで、DRAM11の管理情報格納領域111で管理される管理情報について説明する。図4は、メモリシステムで記憶されるデータを管理する層構造の一例を示す図である。なお、ここで、データとは、ホスト装置から書込要求/読出要求のあったデータのことをいうものとする。このメモリシステム10では、キャッシュの役割をするDRAM11でのデータ管理を行うDRAM管理層31と、NANDメモリ12での論理的なデータ管理を行う論理NAND管理層32と、NANDメモリ12での物理的なデータ管理やNANDメモリ12の延命処理などを行う物理NAND管理層33の3層構造でデータ管理が行われる。
DRAM11のライトキャッシュ領域WCとリードキャッシュ領域RCでは、ホスト装置のアドレス管理方法によって管理される論理アドレス(以下、LBA(Logical Block Address)という)で指定されたデータを、DRAM11上の所定の範囲の物理アドレス(以下、DRAM内物理アドレスという)に記憶する。また、DRAM管理層31内でのデータは、格納されるデータのLBAとDRAM内物理アドレスとの対応関係と、ページ中のセクタサイズ単位のデータの有無を示すセクタフラグと、を含むキャッシュ管理情報41によって管理される。
図5は、キャッシュ管理情報テーブルの一例を示す図である。ここでは、キャッシュ管理情報41は、DRAM11の1ページサイズの領域1つに対して1エントリとし、エントリ数はライトキャッシュ領域WCとリードキャッシュ領域RCに収まるページ数以下とする。各エントリには、ページサイズのデータのLBAと、DRAM内物理アドレスと、このページをセクタサイズで分割した各領域における有効データの位置を示すセクタフラグと、が関連付けられている。
NANDメモリ12では、DRAM11から受け取ったデータをNANDメモリ12上の所定の範囲の物理アドレス(以下、NAND内物理アドレスという)に格納するが、上記したように、NANDメモリ12では、データの書込/読出はページ単位で行われ、データの消去はブロック単位で行われる。また、多値メモリからなるNANDメモリ12では、書換可能回数に制約があるため、NANDメモリ12を構成する各ブロック間での書換回数が均等化するようにドライブ制御部14で制御されている。つまり、ドライブ制御部14は、NANDメモリ12内のあるNAND内物理アドレスに書き込まれたデータの更新を行う場合に、そのデータが含まれるブロックのうち更新が必要な部分を反映させたデータを、元のブロックとは異なるブロックに書き込み、元のブロックは無効化するようにして、NANDメモリ12を構成するブロック間での書換回数が均等化するように制御している。
このように、NANDメモリ12では、データの書込/読出処理と消去処理とでは処理単位が異なるとともに、データの更新処理においては、更新前のデータの位置(ブロック)と更新後のデータの位置(ブロック)とが異なるため、この実施の形態では、NAND内物理アドレスのほかにNANDメモリ12内で独自に使用されるNAND内論理アドレス(以下、NAND内論理アドレスという)を設けることにする。
そこで、論理NAND管理層32内でのデータは、DRAM11から受け取ったページサイズ単位のデータのLBAと、受け取ったデータを格納するNANDメモリ12の論理的なページ位置を示すNAND内論理アドレスとの間の関係と、NANDメモリ12における消去単位のブロックとサイズが一致する論理的なブロック(以下、論理ブロックという)のアドレス範囲を示す関係と、を示す論理NAND管理情報42によって管理される。なお、この論理ブロックを複数まとめたものを論理ブロックとしてもよい。また、物理NAND管理層33でのデータは、NANDメモリ12におけるNAND内論理アドレスとNAND内物理アドレスとの対応関係を含むNAND内論物変換情報43によって管理される。
図6は、論理NAND管理情報テーブルの一例を示す図であり、図7は、NAND内論理アドレス−物理アドレス変換情報(以下、論物変換情報という)テーブルの一例を示す図である。図6に示されるように、論理NAND管理情報42は、論理ページ管理情報42aと論理ブロック管理情報42bとを含む。論理ページ管理情報42aは、1ページサイズの論理的な領域1つに対して1エントリとし、各エントリには、1ページサイズのデータのLBAと、NAND内論理アドレスと、このページが有効か否かを示すページフラグと、を含む。また、論理ブロック管理情報42bは、NANDメモリ12の1ブロックサイズの論理的な領域に対して設定されるNAND内論理アドレスを含む。また、図7に示されるように、NAND内論物変換情報43は、NANDメモリ12のNAND内物理アドレスとNAND内論理アドレスとが対応付けられている。
これらの管理情報によって、ホスト装置で使用されるLBAと、NANDメモリ12で使用されるNAND内論理アドレスと、NANDメモリ12で使用されるNAND内物理アドレスとの間を対応付けることができ、ホスト装置と当該メモリシステム10との間のデータのやり取りを行うことが可能となる。
なお、以下では、DRAM管理層31で管理される管理情報は、電源オフなどによって消失するので、揮発性テーブルともいい、論理NAND管理層32および物理NAND管理層33で管理される管理情報は、電源オフなどによって消失した際にメモリシステム10の次回起動時に支障を与え、保存しておくことが必要なので、不揮発性テーブルともいう。
この不揮発性テーブルは、NANDメモリ12に格納されているデータを管理するものであり、この不揮発性テーブルがなければNANDメモリ12に格納されている情報にアクセスできなかったり、既に記憶した領域内のデータを消してしまったりするので、不意の電源オフなどに備えて最新の情報に保存しておく必要がある。そのため、この実施の形態では、NANDメモリ12の管理情報保存領域126には、少なくとも不揮発性テーブルを含む管理情報を最新の状態で保存している。そこでつぎに、NANDメモリ12の管理情報保存領域126に保存される管理情報保存情報について説明する。なお、以下では、不揮発性テーブルのみを管理情報保存領域126に保存する場合を例に挙げる。
図8は、管理情報保存領域126に記憶される管理情報保存情報の内容の一例を模式的に示す図である。この管理情報保存情報200には、ある時点における不揮発性テーブルの内容であるスナップショット210と、不揮発性テーブルの内容に変化があった場合に内容を変更した後の不揮発性テーブルとスナップショット210(またはスナップショット210と既に取られたログ)との差分情報であるログ220と、スナップショット210とこのスナップショット210に関する一番目に取得されたログ220の位置を示す管理情報位置指示情報(以下ポインタと呼ぶ)230と、が格納される。ここで、スナップショット210とは、DRAM11の管理情報格納領域111に記憶される管理情報のうち、少なくとも不揮発性テーブルを含む管理情報を所定の時点で保存した情報のことをいう。
この図8において、スナップショット210、ログ220およびポインタ230は、それぞれ異なるブロックに格納される。スナップショット210は、スナップショット格納用ブロックに格納される。スナップショット210には、NANDメモリ12の管理情報保存領域126内の不揮発性テーブルである論理NAND管理情報42とNAND内論物変換情報43とが含まれる。新しいスナップショット210が保存されると、以前に保存されていたスナップショット210とは別のブロックに保存される。
ログ220は、ログ格納用ブロックに格納される。このログ220は、スナップショットの世代が変わっても、同じログ格納用ブロックに連続して書き込まれる。図9は、ログの一例を示す図である。ログ220は、変更対象の管理情報となる対象情報と、その対象情報中の変更対象となるエントリである対象エントリと、その対象エントリ中の変更対象となる項目である対象項目と、その対象項目の変更の内容である変更内容と、を含む。
ポインタ230は、指示情報格納用ブロックに格納される。ポインタ230は、スナップショット210とログ220の格納位置を示すブロックの先頭アドレスを示すものであればよい。ただし、ポインタ230のうちスナップショット210の格納位置を示す部分は、スナップショット210に含まれる各管理情報の先頭アドレスを示すものであってもよい。また、ポインタ230は、スナップショット210が新たに保存された場合や、スナップショット格納用ブロックとログ格納用ブロックが変更された場合に更新される。なお、ログ220のポインタは、指示情報格納用ブロック内ではなく、スナップショット210の中に格納されていてもよい。
つぎに、ドライブ制御部14の機能について説明する。図10は、ドライブ制御回路の機能構成の一例を示すブロック図である。ドライブ制御部14は、DRAM11−NANDメモリ12間のデータ転送やNANDメモリ12に関する各種機能の制御を行うデータ管理部141と、ATAインタフェースから受けた指示に基づいてデータ管理部141と協働してデータ転送処理を行うATAコマンド処理部142と、データ管理部141およびATAコマンド処理部142と協動して各種のセキュリティ情報を管理するセキュリティ管理部143と、電源オン時に、各管理プログラム(FW)をNANDメモリ12から図示しないメモリ(たとえば、SRAM(Static RAM))にロードするブートローダ144と、ドライブ制御部14内の各コントローラや回路の初期化を行う初期化管理部145と、外部からRS232Cインタフェースを介して供給されたデバッグ用データを処理するデバッグサポート部146と、を備える。
図11は、データ管理部の機能構成の一例を示すブロック図である。データ管理部141は、DRAM11とNANDメモリ12との間でデータ転送を行うデータ転送処理部151と、DRAM11およびNANDメモリ12に記憶されるデータの変更に伴って管理情報の変更や保存を行う管理情報管理部152と、電源オン時などに保存された管理情報に基づいて最新の管理情報を復元する管理情報復元部155と、をさらに備える。
また、管理情報管理部152は、管理情報書込部153と、管理情報保存部154と、を備える。管理情報書込部153は、データ転送処理部151によるDRAM11またはNANDメモリ12で記憶されるデータの変更処理によって管理情報の更新が必要な場合に、DRAM11に記憶されている管理情報の更新を行う。
管理情報保存部154は、メモリシステム10が所定の条件を満たしたとき、管理情報をスナップショット210として、または管理情報中の更新された分の情報をログ220として、NANDメモリ12の管理情報保存領域126に保存する。また、このスナップショット210またはログ220の保存に伴ってポインタ230が書き込まれる位置が変更される場合には、このポインタ230に対する更新処理も行う。
管理情報保存部154によるスナップショット210の保存は、NANDメモリ12の管理情報保存領域126中のログ220を記憶するために設けられたログ記憶領域が埋まってしまった(領域がデータで満杯)になった場合など、本メモリシステムの所定の状況に応じて実行される。
また、管理情報管理部152によるログ220の保存は、DRAM11に記憶されている管理情報(不揮発性テーブル)の更新を伴うNANDメモリ12上のデータ更新時(NANDメモリ12へのデータ書込みが必要な場合)に行われる。
管理情報復元部155は、メモリシステム10が起動されると、NANDメモリ12の管理情報保存領域126に保存されている管理情報保存情報に基づいた管理情報の復元処理を行う。具体的には、ポインタ230、スナップショット210、ログ220へと順にたどっていき、最新のスナップショット210に対するログ220が存在するか否かを判定する。ログ220が存在しない場合には、スナップショット格納用ブロックのスナップショット210を管理情報としてDRAM11に復元する。また、ログ220が存在する場合には、プログラムエラーや瞬断などの異常終了であった場合であるので、スナップショット格納用ブロックからスナップショット210を取得し、ログ格納用ブロックからログ220を取得して、DRAM11上でスナップショット210にログ220を反映させて管理情報(不揮発性テーブル)の復元を行う。
ここで、管理情報管理部152によるメモリシステム10の管理情報の保存の処理について説明する。図12は、メモリシステムの管理情報の保存処理手順の一例を示すフローチャートである。なお、ここでは、メモリシステム10がホスト装置と接続され、ホスト装置の2次記憶装置として動作しているとともに、ホスト装置が起動状態にあり、また、この起動状態の前のメモリシステム10の停止前にスナップショット210が保存されているものとする。
まず、ホスト装置の前回終了時に保存されたスナップショット210を基に、ホスト装置が起動された状態にある(ステップS11)。ついで、管理情報管理部152は、スナップショット保存条件を満たすか否かを判定する(ステップS12)。スナップショット保存条件を満たさない場合(ステップS12でNoの場合)には、管理情報の更新を伴う指示を受けたか否かを判定する(ステップS13)。管理情報の更新を伴う指示を受けなかった場合(ステップS13でNoの場合)には、再びステップS12へと戻る。
また、管理情報の更新を伴う指示を受けた場合(ステップS13でYesの場合)には、その指示を実行することによって管理情報がどのように更新されるか更新計画を決定し(ステップS14)、その更新計画をNANDメモリ12の管理情報保存領域126のログ格納用ブロックにログ220として保存する(ステップS15)。この更新計画(ログ)は、ログ格納用ブロックにログ220が格納されていない場合には、現時点の不揮発性テーブルとスナップショット格納用ブロックに保存されているスナップショット210との間の差分情報であり、ログ格納用ブロックにログ220(以下、過去ログという)が既に格納されている場合には、現時点の不揮発性テーブルと、スナップショット210と過去ログとを合わせたものとの間の差分情報である。なお、このログ220は、たとえば、ログ220(更新計画)をDRAM11上に記録した後、NANDメモリ12の管理情報保存領域126に保存される。
ついで、論理NAND管理層は、ステップS13で受けた指示を実行する(ステップS16)。このような指示として、たとえばユーザデータのNANDメモリ12のデータ保存領域の所定のブロックへの書込処理が挙げられる。その後、ステップS12へと戻る。
また、ステップS12でスナップショット保存条件を満たす場合(ステップS12でYesの場合)には、DRAM11の管理情報格納領域111内の少なくとも不揮発性テーブルを含む管理情報をスナップショット210としてNANDメモリ12の管理情報保存領域126に保存する(ステップS17)。そして、メモリシステム10の終了指示があるか否かを判定し(ステップS18)、終了指示がない場合には再びステップS12へと戻り、終了指示がある場合には、そのまま処理が終了する。
つぎに、管理情報復元部155によるメモリシステム10の管理情報の復元処理について説明する。図13は、メモリシステムの管理情報の復元処理手順の一例を示すフローチャートである。なお、ここでも、メモリシステム10がホスト装置と接続され、ホスト装置の2次記憶装置として動作しているものとする。
まず、ホスト装置の電源がオンされ、メモリシステム10に対して起動指示が出されると(ステップS31)、管理情報復元部155は、NANDメモリ12の管理情報保存領域126中のポインタを読込み(ステップS32)スナップショット210が格納されているブロックのアドレスと、ログ220が格納されているブロックのアドレスを取得する(ステップS33)。
ついで、管理情報復元部155は、ステップS33で取得したNANDメモリ12中のアドレスからスナップショット210を読込み、DRAM11の一時記憶領域111に復元する(ステップS34)。
その後、管理情報復元部155は、NANDメモリ12中のログ220を参照して、瞬断が発生したか否かを判定する(ステップS35)。瞬断が発生していない場合(ステップS35でNoの場合)には、管理情報復元部155は、ステップS34でDRAM11の一時記憶領域111に復元したスナップショット210から管理情報を復元し(ステップS36)、復元処理が終了する。
一方、瞬断が発生した場合(ステップS35でYesの場合)には、管理情報復元部155は、ステップS33で取得した格納位置にあるログ220をDRAM11の作業領域112に展開し(ステップS37)、スナップショット210に古いログ220から順に反映させて管理情報を復元し(ステップS38)、復元処理が終了する。
つぎに、本実施の形態の要部について説明する。本実施の形態では、DRAM11上の記憶領域のうちスナップショット210として保存される領域の一部を、AMがバックアップしたいデータ(テーブルや変数など)を保存するための領域として確保しておく。なお、以下の説明では、図10で説明したデータ管理部141、ブートローダ144、デバッグサポート部146をDM(データマネージャ)といい、ATAコマンド処理部142をAM(ATAマネージャ)といい、初期化管理部145をIM(イニシャライズマネージャ)という。
図14は、ドライブ制御部14のハードウェア的な内部構成例を示すブロック図である。ドライブ制御部14は、データアクセス用バス301、第1の回路制御用バス302、および第2の回路制御用バス303を備えている。第1の回路制御用バス302には、ドライブ制御部14全体を制御するプロセッサ304が接続されている。第1の回路制御用バス302には、NANDメモリ12に記憶された各管理プログラム(FW:ファームウエア)をブートするブート用プログラムが格納されたブートROM305がROMコントローラ306を介して接続されている。また、第1の回路制御用バス302には、図1に示した電源回路13からのパワーオンリセット信号を受けて、リセット信号およびクロック信号を各部に供給するクロックコントローラ307が接続されている。
第2の回路制御用バス303は、第1の回路制御用バス302に接続されている。第2の回路制御用バス303には、温度センサからのデータを受けるためのIC回路308、状態表示用のLEDにステータス表示用信号を供給するパラレルIO(PIO)回路309、RS232C I/Fを制御するシリアルIO(SIO)回路310が接続されている。
ATAインタフェースコントローラ(ATAコントローラ)311、第1のECC(Error Checking and Correction)回路312、NANDコントローラ313、およびDRAMコントローラ314は、データアクセス用バス301と第1の回路制御用バス302との両方に接続されている。ATAコントローラ311は、ATAインタフェースを介してホスト装置との間でデータを送受信する。データアクセス用バス301には、データ作業領域作業領域およびファームウェア展開領域として使用されるSRAM315がSRAMコントローラ316を介して接続されている。NANDメモリ12に記憶されているファームウェアは起動時、ブートROM305に記憶されたブート用プログラムによってSRAM315に転送される。
NANDコントローラ313は、NANDメモリ12とのインタフェース処理を行うNAND I/F317、第2のECC回路318、およびNANDメモリ12−DRAM11間のアクセス制御を行うDMA転送制御用DMAコントローラ319を備えている。第2のECC回路318は第2の訂正符号のエンコードを行い、また、第1の誤り訂正符合のエンコードおよびデコードを行う。第1のECC回路312は、第2の誤り訂正符号のデコードを行う。第1の誤り訂正符号、第2の誤り訂正符号は、例えば、ハミング符号、BCH(Bose Chaudhuri Hocqenghen)符号、RS(Reed Solomon)符号、或いはLDPC(Low Density Parity Check)符号等であり、第2の誤り訂正符号の訂正能力は、第1の誤り訂正符号の訂正能力よりも高いとする。
図10に示したドライブ制御部14によってDRAM11−NANDメモリ12間のデータ転送が行なわれる際には、NANDコントローラ313、第1のECC回路312を介してデータ転送が行なわれる。また、ATAコマンド処理部142によってDRAM11−ホスト装置間のデータ転送処理が行なわれる際には、ATAコントローラ311、DRAMコントローラ314を介してデータ転送が行なわれる。
つぎに、NANDメモリ12の記憶領域について説明する。
図15は、ホスト装置から見たNANDメモリ12の記憶領域の区分を模式的に示す図である。NANDメモリ12の記憶領域は、図15に示すように、通常LBA領域160と、特殊LBA領域162と、に区分される。ここで、通常LBA領域160は、ホスト装置1からのコマンド(Readコマンド/Writeコマンドなど)によってアクセス可能な領域であるのに対し、特殊LBA領域162は、ホスト装置1から発出される通常のコマンドではアクセスすることができないLBA領域(ホストアクセス禁止領域)である。図3(b)に示したデータ格納領域125および管理情報保存領域126は、通常LBA領域160内の領域である。なお、特殊LBA領域162は、メモリシステム10の内部に展開されるファームウェア(FW)を構成するモジュールが発出するコマンドによってアクセスすることが可能である。
これらの通常LBA領域160および特殊LBA領域162について、具体例を用いて説明する。いま、メモリシステム10の領域のサイズ(いわゆるディスク容量)を、例えば128GBとすると、この128GBの領域はユーザ領域である。一方、メモリシステム10には、ホスト装置1からアクセスできる当該128GBの領域(ユーザ領域)以外に、SSD100の内部情報を保存するための領域として、所定サイズ(例えば、1論理ブロック分程度)の領域(非ユーザ領域)がLBA上にマップされる。この128GBの領域が通常LBA領域であり、所定サイズの領域が特殊LBA領域である。
特殊LBA領域162は、メモリシステム10を管理する管理データを保存するとともに、起動時には管理データがDRAM11に展開される。なお、この特殊LBA領域162は、ホスト装置1からのコマンドによって誤ってアクセスできないように、通常、ユーザデータ領域の後ろ側に追加される形で実装される。ただし、この特殊LBA領域162は、通常LBA領域160に格納されるユーザデータと同じ管理方式でハンドリングされ、通常LBA領域160がマップされ得る全てのNANDブロックに割り当てが可能である。すなわち、論理NAND管理層32から見れば、論理アドレスの違いを除いて、処理の違いはない。また、当然のことながら、特殊LBA領域162は、ウェアレベリングの対象にもなる。
ここで、上記のような特殊LBA領域162を設けた趣旨について説明する。前述したように、ハードディスクを用いた二次記憶装置では、物理フォーマットおよび論理フォーマットを用いて、ユーザ領域の初期化処理が行われる。本実施の形態にかかるメモリシステム10においても、これらの物理フォーマットおよび論理フォーマットの機能を実現すべく、上記特殊LBA領域162という概念を導入し、当該概念に基づく領域をNANDメモリ12に設けるようにしたものである。
つぎに、DRAM11からスナップショット210としてNANDメモリ12に保存される領域(スナップショット領域)について説明する。図16は、スナップショット領域の区分を模式的に示す図である。
DRAM11上において、スナップショット領域170は、例えば8MBの領域で構成されている。本実施の形態では、このスナップショット領域170が、管理情報領域171とAM管理情報領域172とを有している。
管理情報領域171は、図4に示したキャッシュ管理情報41、論理NAND管理情報42、NAND内論物変換情報43などの種々の管理情報を格納する領域である。AM管理情報領域172は、AM(ATAマネージャ)がバックアップしたいテーブルや変数などをAM管理情報(メモリシステム10の動作状態に関する内部情報)として格納する領域である。AMがバックアップしたいAM管理情報は、NANDメモリ12の特殊LBA領域162に格納されるデータ(AM管理情報)である。
AMが管理する特殊LBA領域162は、メモリシステム10上で重要なデータを記憶する領域である。したがって、本実施の形態では、特殊LBA領域162内のデータを誤り訂正(後述のL2−ECCエラーの誤り訂正)できなかった場合であっても、バックアップとして保存しておいたスナップショット210を用いてAM管理情報を復元する。
つぎに、AM管理情報の保存処理と初期化処理の処理手順について説明する。図17は、AM管理情報の保存処理を示すフローチャートである。AMは、DM(データマネージャ)から提供されるWriteコマンド等を利用してDRAM11上にあるAM管理情報を特殊LBA領域162に保存する。具体的には、AMは、メモリシステム10の内部的な統計情報(温度情報等)、警告イベント履歴、時刻情報などが更新された場合や、更新された情報の量が所定量を超えた場合に、これらの統計情報、警告イベント履歴、時刻情報などを、AM管理情報として特殊LBA領域162に保存する(ステップS51)。例えば、警告イベント履歴などの重要な情報は、逐次、特殊LBA領域162に保存され、統計情報などの重要度の低い情報は、更新差分が所定量を超えた際に特殊LBA領域162に保存される。さらに、AMは、特殊LBA領域162に保存したAM管理情報をコピーしてDRAM11のAM管理情報領域172に保存する(ステップS52)。
このように、本実施の形態では、DMが所定のタイミングで保存することになっているスナップショット210の対象となっているDRAM領域の一部がAMに開放されており、この領域にAM管理情報がコピーされる。
この後、スナップショット210を保存する条件が成立すると、DMはDRAM11(AM管理情報領域172)内のAM管理情報を、スナップショット210の一部としてNANDメモリ12に保存する(ステップS53)。換言すると、DMはスナップショット210として、管理情報領域171に格納されるキャッシュ管理情報41などの管理情報と、AM管理情報領域172に格納されるAM管理情報と、をNANDメモリ12に保存する。
図18は、初期化処理の処理手順を示すフローチャートである。メモリシステム10の初期化処理としては、まずIMの起動処理が行なわれる(ステップS71)。IMは、起動処理として、ドライブ制御部14内の各コントローラや回路へ初期化の指示を送る。
次に、DMの起動処理が行なわれる(ステップS72)。DMは、起動処理として、NANDメモリ12に格納されているスナップショット210をDRAM11に復元する。これにより、スナップショット210内のAM管理情報領域172に保存されていたAM管理情報がDRMA11上に復元される(ステップS73)。
次に、AMの起動処理が行なわれる(ステップS74)。AMは、起動処理として、DMから提供されるReadコマンドを利用して特殊LBA領域162からAM管理情報を読み出す(ステップS75)。このとき、AMは、AM管理情報の特殊LBA領域162からの読み出しに成功したか否かを判断する(ステップS76)。
L2−ECCエラー(第2のECC回路317および第1のECC回路311によって誤り訂正を行なえないエラー)(読み出せないエラー)の発生によってAM管理情報の特殊LBA領域162からの読み出しに失敗した場合(ステップS76でNoの場合)、AMはDRAM11上へ復元したAM管理情報を、AM管理情報領域172から読み出す(ステップS77)。換言すると、L2−ECCエラーなどが発生して特殊LBA領域162からAM管理情報を読み出せなかった場合には、特殊LBA領域162から読み出すAM管理情報によってAM管理情報領域172を初期化する代わりに、DMがスナップショット210から取得したAM管理情報によってAM管理情報領域172を初期化する。
一方、AM管理情報の特殊LBA領域162からの読み出しに成功した場合(ステップS76でYesの場合)、AMはDRAM11へのアクセスは行なわない。このように、AMは、NANDメモリ12の特殊LBA領域162またはDRAM11のAM管理情報領域172の何れかからAM管理情報を読み出す。
このように、DMは電源ON時にスナップショット領域170に関しては、NANDメモリ12からのデータをそのままDRAM11上に展開して初期化するので、AM起動時にはAM管理情報もバックアップデータによって初期化されていることが保証される。
なお、本実施の形態では、特殊LBA領域162に保存したAM管理情報をコピーしてDRAM11のAM管理情報領域172に保存する場合について説明したが、AM管理情報の保存方法はこの方法に限られない。例えば、DRAM11のAM管理情報領域172を、AM管理情報を特殊LBA領域162へ保存する際のライトキャッシュとして用い、このAM管理情報領域172にAM管理情報をマップしてもよい。換言すると、AM管理情報は、一旦AM管理情報領域172に保存し、その後、特殊LBA領域162に保存してもよい。
また、本実施の形態では、スナップショット210に管理情報領域171を設け、キャッシュ管理情報41などの管理情報もスナップショット210として保存する場合について説明したが、スナップショット210として保存する情報はAM管理情報のみであってもよい。
また、スナップショット210として保存する情報は、キャッシュ管理情報41などの管理情報やAM管理情報などに限らず、他の情報をスナップショット210として保存してもよい。
このように本実施の形態によれば、AM管理情報を特殊LBA領域162に保存するとともに、スナップショット210としてNANDメモリ12の通常LBA領域160にも保存しておくので、メモリシステム10の初期化処理を行なう際のAM管理情報の復元の信頼性を向上させることが可能となる。
なお、電荷蓄積層は浮遊ゲート型に限らず、MONOS(Metal-Oxide-Nitride-Oxide-Semiconductor)構造のようなシリコン窒化膜を用いた電荷トラップ型やその他の方式であってもよい。
本発明の実施の形態にかかるメモリシステムの構成の一例を示すブロック図である。 NANDメモリに含まれる1個のブロックの構成の一例を示す回路図である。 DRAMとNANDメモリの機能構成を模式的に示す図である。 メモリシステムで記憶されるデータを管理する層構造の一例を示す図である。 キャッシュ管理情報の一例を示す図である。 論理NAND管理情報の一例を示す図である。 NAND内論物変換情報の一例を示す図である。 管理情報保存領域に記憶される管理情報保存情報の内容の一例を模式的に示す図である。 ログの一例を示す図である。 ドライブ制御回路の機能構成の一例を示すブロック図である。 実施の形態に係るデータ管理部の機能構成の一例を示すブロック図である。 メモリシステムの管理情報の保存処理手順の一例を示すフローチャートである。 メモリシステムの管理情報の復元処理手順の一例を示すフローチャートである。 ドライブ制御回路のハードウェア的な内部構成例を示すブロック図である。 NANDメモリの記憶領域の区分を模式的に示す図である。 スナップショット領域の区分を模式的に示す図である。 AM管理情報の保存処理を示すフローチャートである。 初期化処理の処理手順を示すフローチャートである。
符号の説明
10…メモリシステム、11…DRAM、12…NANDメモリ、13…電源回路、14…ドライブ制御部、15…バス、31…DRAM管理層、32…論理NAND管理層、33…物理NAND管理層、41…キャッシュ管理情報、42…管理情報、42a…論理ページ管理情報、42b…論理ブロック管理情報、43…NAND内論物変換情報、111…一時記憶領域、112…作業領域、125…データ格納領域、126…管理情報保存領域、141…データ管理部、142…ATAコマンド処理部、143…セキュリティ管理部、144…ブートローダ、145…初期化管理部、146…デバッグサポート部、151…データ転送処理部、152…管理情報管理部、153…管理情報書込部、154…管理情報保存部、155…管理情報復元部、160…通常LBA領域、162…特殊LBA領域、171…管理情報領域、172…AM管理情報領域、210…スナップショット、220…ログ、230…ポインタ、304…プロセッサ。

Claims (7)

  1. 揮発性半導体記憶素子と、
    不揮発性半導体記憶素子と、
    前記揮発性半導体記憶素子と前記不揮発性半導体記憶素子との間のデータ転送を制御するコントローラと、を備え、
    前記コントローラは、
    前記不揮発性半導体記憶素子に当該メモリシステム内部の動作状態に関する統計情報を含む第1の内部情報を書き込み、
    前記揮発性半導体記憶素子内の管理情報保存領域に含まれる内部情報領域に前記第1の内部情報と同一内容である第2の内部情報を書き込み、
    所定の条件が成立した場合に、前記管理情報保存領域に含まれるデータをスナップショットとして前記不揮発性半導体記憶素子に保存し、
    起動時に前記不揮発性半導体記憶素子から前記スナップショットを読み出して前記管理情報保存領域に復元し、
    前記不揮発性半導体記憶素子から前記第1の内部情報の読み出しが失敗した場合に、前記スナップショットから取得した前記第2の内部情報によって前記内部情報領域を初期化し、
    前記不揮発性半導体記憶素子から前記第1の内部情報の読み出しが成功した場合に、前記不揮発性半導体記憶素子から取得した前記第1の内部情報によって前記内部情報領域を初期化する、
    ことを特徴とするメモリシステム。
  2. 前記コントローラは、
    前記揮発性半導体記憶素子および前記不揮発性半導体記憶素子の少なくとも一方に書き込まれたデータの格納位置を含む管理情報を前記管理情報保存領域に含まれる管理情報領域に書き込み、
    前記所定の条件が成立した場合に、前記管理情報保存領域に含まれる前記管理情報および前記第2の内部情報を、前記スナップショットとして前記不揮発性半導体記憶素子に保存する、
    ことを特徴とする請求項1に記載のメモリシステム。
  3. 前記コントローラは、前記統計情報として、更に、当該メモリシステム内での警告イベント履歴および時刻情報の少なくとも一方を管理することを特徴とする請求項1に記載のメモリシステム。
  4. 前記コントローラは、前記統計情報が更新される場合に、前記第1の内部情報を前記不揮発性半導体記憶素子に書き込み、前記第2の内部情報を前記管理情報保存領域に書き込むことを特徴とする請求項1に記載のメモリシステム。
  5. 前記コントローラは、前記統計情報の更新量が所定量を超えた場合に、前記第1の内部情報を前記不揮発性半導体記憶素子に書き込み、前記第2の内部情報を前記管理情報保存領域に書き込むことを特徴とする請求項1に記載のメモリシステム。
  6. 前記コントローラは、前記統計情報の重要度に応じたタイミングで、前記第1の内部情報を前記不揮発性半導体記憶素子に書き込み、前記第2の内部情報を前記管理情報保存領域に書き込むことを特徴とする請求項1に記載のメモリシステム。
  7. 前記コントローラは、前記管理情報の更新差分であるログの記憶量が所定量を超えた場合に、前記管理情報保存領域に含まれる前記管理情報および前記第2の内部情報を前記スナップショットとして前記不揮発性半導体記憶素子に保存することを特徴とする請求項2に記載のメモリシステム。
JP2008051385A 2008-02-29 2008-02-29 メモリシステム Expired - Fee Related JP4675984B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008051385A JP4675984B2 (ja) 2008-02-29 2008-02-29 メモリシステム
US12/394,870 US20090222636A1 (en) 2008-02-29 2009-02-27 Memory system and memory initializing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008051385A JP4675984B2 (ja) 2008-02-29 2008-02-29 メモリシステム

Publications (2)

Publication Number Publication Date
JP2009211204A JP2009211204A (ja) 2009-09-17
JP4675984B2 true JP4675984B2 (ja) 2011-04-27

Family

ID=41014074

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008051385A Expired - Fee Related JP4675984B2 (ja) 2008-02-29 2008-02-29 メモリシステム

Country Status (2)

Country Link
US (1) US20090222636A1 (ja)
JP (1) JP4675984B2 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5198245B2 (ja) 2008-12-27 2013-05-15 株式会社東芝 メモリシステム
JP5317689B2 (ja) * 2008-12-27 2013-10-16 株式会社東芝 メモリシステム
JP5221332B2 (ja) * 2008-12-27 2013-06-26 株式会社東芝 メモリシステム
JP5317690B2 (ja) * 2008-12-27 2013-10-16 株式会社東芝 メモリシステム
JP5376983B2 (ja) * 2009-02-12 2013-12-25 株式会社東芝 メモリシステム
JP2010186341A (ja) 2009-02-12 2010-08-26 Toshiba Corp メモリシステム
JP5066209B2 (ja) 2010-03-18 2012-11-07 株式会社東芝 コントローラ、データ記憶装置、及びプログラム
US8312258B2 (en) 2010-07-22 2012-11-13 Intel Corporation Providing platform independent memory logic
US8879640B2 (en) 2011-02-15 2014-11-04 Hong Kong Applied Science and Technology Research Institute Company Limited Memory efficient implementation of LDPC decoder
JP5330428B2 (ja) 2011-02-21 2013-10-30 株式会社東芝 データ記憶装置及び誤り検出訂正方法
US9256562B1 (en) * 2012-10-04 2016-02-09 Qlogic, Corporation Method and system for communication between a computing system and a device
US8954694B2 (en) * 2012-11-15 2015-02-10 Western Digital Technologies, Inc. Methods, data storage devices and systems for fragmented firmware table rebuild in a solid state drive
KR20150002301A (ko) * 2013-06-28 2015-01-07 삼성전자주식회사 부팅 시 정보 표시 방법, 이를 이용한 전자장치 및 휴대 단말기
US10013352B2 (en) * 2014-09-26 2018-07-03 Intel Corporation Partner-aware virtual microsectoring for sectored cache architectures
KR101766790B1 (ko) * 2016-03-10 2017-08-10 주식회사 티맥스데이터 메인 메모리 데이터 베이스를 관리 하기 위한 방법 및 컴퓨팅 장치
CN107169375B (zh) * 2017-05-16 2020-07-28 北京梦天门科技股份有限公司 系统数据安全增强方法
SG11202003601WA (en) * 2017-10-31 2020-05-28 Mitsubishi Heavy Industries Machinery Systems Ltd Information processing device, method for controlling information processing device, and program
CN110737397B (zh) * 2018-07-20 2023-08-11 伊姆西Ip控股有限责任公司 用于管理存储系统的方法、设备和计算机程序产品
CN109871355B (zh) * 2019-01-23 2021-04-27 杭州宏杉科技股份有限公司 一种快照元数据存储方法、装置及设备、介质
US11640371B2 (en) * 2020-03-12 2023-05-02 Western Digital Technologies, Inc. Snapshot management in partitioned storage
CN111949220B (zh) * 2020-09-03 2023-12-08 合肥沛睿微电子股份有限公司 存储设备异常断电恢复方法及存储设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000054133A1 (fr) * 1999-03-08 2000-09-14 Seiko Epson Corporation Dispositif de traitement de donnees, procede de sauvegarde/chargement de donnees et support de memorisation de donnees
JP2006338083A (ja) * 2005-05-31 2006-12-14 Tdk Corp メモリコントローラ
JP2009151386A (ja) * 2007-12-18 2009-07-09 Ricoh Co Ltd 画像処理装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7392428B2 (en) * 2004-11-19 2008-06-24 International Business Machines Corporation Method and system for recovering from abnormal interruption of a parity update operation in a disk array system
US7814057B2 (en) * 2005-04-05 2010-10-12 Microsoft Corporation Page recovery using volume snapshots and logs
US7831565B2 (en) * 2007-01-18 2010-11-09 Dot Hill Systems Corporation Deletion of rollback snapshot partition
US7577803B2 (en) * 2007-02-16 2009-08-18 Seagate Technology Llc Near instantaneous backup and restore of disc partitions
KR101102136B1 (ko) * 2008-03-01 2012-01-02 가부시끼가이샤 도시바 메모리 시스템
JP2010186341A (ja) * 2009-02-12 2010-08-26 Toshiba Corp メモリシステム
JP5376983B2 (ja) * 2009-02-12 2013-12-25 株式会社東芝 メモリシステム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000054133A1 (fr) * 1999-03-08 2000-09-14 Seiko Epson Corporation Dispositif de traitement de donnees, procede de sauvegarde/chargement de donnees et support de memorisation de donnees
JP2006338083A (ja) * 2005-05-31 2006-12-14 Tdk Corp メモリコントローラ
JP2009151386A (ja) * 2007-12-18 2009-07-09 Ricoh Co Ltd 画像処理装置

Also Published As

Publication number Publication date
JP2009211204A (ja) 2009-09-17
US20090222636A1 (en) 2009-09-03

Similar Documents

Publication Publication Date Title
JP4675984B2 (ja) メモリシステム
TWI437431B (zh) 記憶體系統及控制記憶體系統的方法
TWI419161B (zh) 儲存管理資訊之記憶體系統及控制其之方法
KR101095765B1 (ko) 메모리 시스템 및 그 제어 방법
US8706988B2 (en) Memory system
TWI419159B (zh) 記憶體系統
TWI418983B (zh) 記憶體系統及控制記憶體系統之方法
US20130254463A1 (en) Memory system
US8108594B2 (en) Memory system
CN114691420A (zh) 包括存储器控制器的存储设备及存储器控制器的操作方法
JP4551938B2 (ja) メモリシステム
JP4558052B2 (ja) メモリシステム
JP2009211202A (ja) メモリシステム
JP2012037971A (ja) メモリコントローラ及びメモリコントローラを備える不揮発性メモリシステム、並びに不揮発性メモリの制御方法
JP4551939B2 (ja) メモリシステム
JP2009211196A (ja) メモリシステム
CN114764394A (zh) 存储器系统及其操作方法
JP2009211188A (ja) メモリシステム
JP2009211213A (ja) メモリシステム
JP2009211218A (ja) メモリシステムおよび瞬断判定方法
JP2013196674A (ja) メモリシステムおよび多重化方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100323

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100524

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: 20110104

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: 20110126

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

Free format text: PAYMENT UNTIL: 20140204

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140204

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees