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

メモリシステム Download PDF

Info

Publication number
JP2012108627A
JP2012108627A JP2010255411A JP2010255411A JP2012108627A JP 2012108627 A JP2012108627 A JP 2012108627A JP 2010255411 A JP2010255411 A JP 2010255411A JP 2010255411 A JP2010255411 A JP 2010255411A JP 2012108627 A JP2012108627 A JP 2012108627A
Authority
JP
Japan
Prior art keywords
memory
management information
difference data
address
nonvolatile memory
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
Application number
JP2010255411A
Other languages
English (en)
Other versions
JP2012108627A5 (ja
Inventor
Daisuke Hashimoto
大輔 橋本
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 JP2010255411A priority Critical patent/JP2012108627A/ja
Priority to US13/069,963 priority patent/US20120124275A1/en
Publication of JP2012108627A publication Critical patent/JP2012108627A/ja
Publication of JP2012108627A5 publication Critical patent/JP2012108627A5/ja
Pending legal-status Critical Current

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/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0638Combination of memories, e.g. ROM and RAM such as to permit replacement or supplementing of words in one module by words in another module

Abstract

【課題】 小容量の不揮発性メモリを効率的に利用することで異常電源断からの復元が可能なメモリシステムを提供する。
【解決手段】 実施形態に係るメモリシステムは、揮発性メモリを持つ。前記揮発性半導体メモリには、第1の不揮発性メモリが接続される。前記揮発性半導体メモリには、第2の不揮発性メモリが接続される。前記揮発性メモリに最新管理情報を記憶し、前記第1の不揮発性メモリに旧管理情報を記憶し、および前記第2の不揮発性メモリに前記最新管理情報と前記旧管理情報の差分データを記憶するメモリコントローラが設けられる。
【選択図】 図1

Description

本発明の実施形態は、メモリシステムに関する。
近年、コンピュータシステムに搭載されるメモリドライブとしてSolid State Drive(SSD)の開発が種々行われている。SSDは不揮発性フラッシュメモリを搭載しており、ハードディスクと比較して高速であり、かつ軽量であるという特徴を持つ。
SSDに搭載される不揮発性フラッシュメモリ、特にNAND型フラッシュメモリは、信頼性上、書き換え回数が制限されるため、特定の領域に頻繁にデータがアクセスすることを避けるようにしなければならない。そのため、メモリドライブに、DRAM(Dynamic Random Access Memory)等の高速な揮発性ランダムアクセスメモリを搭載し、管理情報等の頻繁にアクセスが行われるデータをDRAM上に保存している。このように不揮発性フラッシュメモリへのアクセスを抑制することで、メモリドライブの信頼性を確保している。
特開2009−211216号公報
本発明は、小容量の不揮発性メモリを効率的に利用することで異常電源断からの復元が可能なメモリシステムを提供する。
実施形態に係るメモリシステムは、揮発性メモリを持つ。前記揮発性半導体メモリには、第1の不揮発性メモリが接続される。前記揮発性半導体メモリには、第2の不揮発性メモリが接続される。前記揮発性メモリに最新管理情報を記憶し、前記第1の不揮発性メモリに旧管理情報を記憶し、および前記第2の不揮発性メモリに前記最新管理情報と前記旧管理情報の差分データを記憶するメモリコントローラが設けられる。
第1の実施形態に係るメモリシステムの構成を示すブロック図。 第1の実施形態に係る管理情報についての管理テーブルを示す図。 第1の実施形態に係る管理情報についての管理情報差分テーブルを示す図。 第1の実施形態に係る第2の不揮発性メモリにおける保存される情報のデータ形式示す図。 第1の実施形態に係る第2の不揮発性メモリにおいて管理情報差分データの追記方法を示す図。 第1の実施形態に係る第2の不揮発性メモリにおいて管理情報差分データの消去方法を示す図。 第1の実施形態に係る第2の不揮発性メモリにおいて管理情報差分データの書き換え方法を示す図。 第1の実施形態に係る第2の不揮発性メモリにおいて管理情報差分データの読み出し方法を示すフローチャート。 第1の実施形態に係る第2の不揮発性メモリにおいて管理情報差分データの読み出し方法を示す図。 第2の実施形態に係るメモリシステムの構成を示すブロック図。
メモリドライブがDRAM等の揮発性メモリを搭載する場合、事前の通告なしに電源が切れる異常電源断がおこる発生すると、揮発性メモリに保持されていたデータを不揮発性メモリに退避することができず、最新の管理情報等が失われる可能性がある。その結果、揮発性メモリ上に保存されていた管理情報と主記憶領域としての不揮発性メモリ上のデータ又はその管理情報との整合性が取れず、データが修復不可能になる場合がある。
かかる問題を解決するために、比較的高速で小容量の不揮発性メモリに管理情報等を保存し、異常電源断に対応する方法が挙げられる。しかし、この方法では、管理情報本体を小容量の不揮発性メモリに保存することから、当該不揮発性メモリの容量が管理情報により逼迫する可能性があった。
以下、本発明の実施形態について図面を参照しながら説明する。
(第1の実施形態)
図1は、第1の実施形態に係るメモリシステム1の構成を示すブロック図である。第1の実施形態に係るメモリシステム1は、SATAインターフェース等のインターフェース2を介して、コンピュータ又はCPUコア等のホスト装置3と接続され、ホスト装置の外部メモリとして機能するSSDである。メモリシステム1は、インターフェース2、第1の不揮発性メモリ4としてNAND型フラッシュメモリ、揮発性メモリ5としてDRAM(Dynamic Random Access Memory)、第2の不揮発性メモリ6として比較的小容量であり、かつ高速の不揮発性メモリ、およびメモリコントローラ7を備えている。インターフェース2は、メモリシステム1とコンピュータ等のホスト装置3との通信時における信号の送受信のプロトコルを定めたものであり、例えばSATA(Serial Advanced Technology Attachment)、SAS(Serial Attached SCSI)等のシリアルインターフェースが挙げられる。
第1の不揮発性メモリ4は、コンピュータ等のホスト装置3の主記憶メモリであり、ホスト装置3のユーザデータ8や管理情報等が記録される。第1の不揮発性メモリ4には、例えばNAND型フラッシュメモリが用いられる。管理情報は、図2に示すようなNAND型フラッシュメモリ上の物理アドレスと、ホスト装置3が指定する論理アドレスとを対応づける管理テーブルを含むものである。管理テーブルは、例えば、NAND型フラッシュメモリのブロックサイズでアラインされている。
図2に、物理アドレスと論理アドレスの対応、およびそれぞれの物理アドレスに対する書き換え回数についてのテーブルを示す。NAND型フラッシュメモリ上の管理情報は、メモリシステム1の起動時に揮発性メモリ5上に展開される。メモリコントローラ7は、通常動作時において、揮発性メモリ5上に展開された管理情報に基づき、第1の不揮発性メモリ4へのデータ書き込み、及び第1の不揮発性メモリ4からのデータ読み出しを実行する。また、データ書き込みに伴い、揮発性メモリ5に記憶された管理情報は更新されるが、第1の不揮発性メモリ4に記憶された管理情報は必ずしもは最新状態のものに更新されない。その結果として、第1の不揮発性メモリ4に、最新状態でない管理情報(以下、旧管理情報という)が記憶されている状況が生じる。
揮発性メモリ5は、メモリコントローラ7によって第1の不揮発性メモリ4に書き込み又は読み出しをする際に、一時的にデータが格納されるキャッシュメモリであり、また最新状態の管理情報(以下、最新管理情報という)を記憶する役割を持つ。メモリコントローラ7は、第1の不揮発性メモリ4へのデータ書き込みに伴い、揮発性メモリ5に記憶された管理情報を更新する。なお、揮発性メモリ5は、ホスト装置3における最新のユーザデータ8を記憶するものでもよい。
第2の不揮発性メモリ6は、揮発性メモリ5上で管理情報が更新されるとき、その管理情報の更新データ、すなわち揮発性メモリ5に記憶する最新管理情報9と旧管理情報10との差分データ(以下、管理情報差分データという)を記憶するものである。メモリコントローラ7は、第1の不揮発性メモリ4へのデータ書き込みに伴い、揮発性メモリ5に記憶された管理情報を更新する際に、管理情報差分データ11を第2の不揮発性メモリ6に記憶する。図3における管理情報差分テーブルが示すように、管理情報差分データ11は、NAND型フラッシュメモリ上の物理アドレス、旧論理アドレスおよび新論理アドレス、物理アドレスに対する書き換え回数についてのテーブルを含むものである。旧論理アドレスとは、揮発性メモリ5に記憶される管理情報の更新前における論理アドレスをいい、新論理アドレスとは、管理情報の更新後における論理アドレスをいう。
ここで第2の不揮発性メモリ6の記憶容量は、例えば、第1の不揮発性メモリ4よりも小さい。あるいは、第2の不揮発性メモリ6の記憶容量は、揮発性メモリ5よりも小さい。また、第2の不揮発性メモリ6は、例えば、第1の不揮発性メモリ4よりもレイテンシが小さく、更に、ランダムアクセスが可能である。また、第2の不揮発性メモリ6は、例えば、第1の不揮発性メモリ4よりも書き換え可能回数が多い。また、第2の不揮発性メモリ6は、例えば、第1の不揮発性メモリ4よりも信頼性が高い。
かかるメモリを用いることにより、メモリシステム1の処理速度および信頼性を損なうことなく、異常な電源断に対応することができる。第2の不揮発性メモリ6には、例えばFeRAM(Ferroelectric Random Access Memory)又はMRAM(Magnetoresistive Random Access Memory)が用いられる。本実施形態に係るメモリシステム1では、第1の不揮発性メモリ4として用いられるNAND型フラッシュメモリに、更新回数の多い管理情報差分データ11を記憶しないことにより、メモリシステム1の信頼性を確保している。
メモリコントローラ7は、第1の不揮発性メモリ4、揮発性メモリ5および第2の不揮発性メモリ6と、インターフェース2を介して接続されたホスト装置3とのデータの送受信について制御するものである。また、メモリコントローラ7は、管理情報の更新、管理情報差分データの記憶、異常電源断からの復元など、後述するメモリシステム1の各動作を制御する。
以下、メモリシステム1の動作について図面を参照しながら説明する。
(管理情報差分データの保存形式)
図4は、第2の不揮発性メモリ6上における管理情報差分データ11の保存形式を示す図である。有効な管理情報差分データ11の領域を開始コード12および末端コード13によって識別可能にする。開始コード12および末端コード13は管理情報差分データ11および非書き込み領域のパターンと区別可能なように構成する。例えば、冗長ビットを1bit設けることによって開始コード12および末端コード13を識別することができる。
特定のアドレスに対して管理情報差分データ11の書き込みが集中することを防ぐため、本実施形態においては、特定の固定領域に管理情報差分データ11のアドレスを書き込まずに、第2の不揮発性メモリ6のアドレス空間全体を循環的に使用する方式を採る。かかる方式の場合、管理情報差分データ11を読み出すときはアドレス空間の先端から末端コード13までを順に読み出すため、サーチに時間がかかるが、管理情報差分データ11を読み出す場合は異常電源断後の再起動時のみであり、読み出しの遅さによってメモリシステム1の性能が劣化することはない。
(管理情報差分データの追記方法)
図5を用いて、管理情報差分データ11の追記方法について説明する。図5(a)に、第2の不揮発性メモリ6上に管理情報差分データ11が書き込まれているアドレス空間を示す。かかる状況において、追記される管理情報差分データ11を末端コード13から上書きする。その後、管理情報差分データ11が全て書き込まれた後、かかるデータの直後のアドレスに新たに末端コード13が書き込まれる。この場合、追加されるデータは管理情報差分データ11および新たな末端コード13のみであるため、第2の不揮発性メモリ6への追記を高速に行うことができる。なお、管理情報差分データ11が書き込まれていない状態においても同様の方法で追記することができる。
図5(b)のように、管理情報差分データ11を追記する際に、管理情報差分データ11の末端がアドレスの終端を超過する場合には、超過分のデータはアドレス空間の先端から順に書き込み、そのデータの直後のアドレスに末端コード13を書き込む。この場合、末端コード13は、開始コード12よりも前のアドレスに書き込まれていることになる。
(管理情報差分データの消去方法)
図6を用いて、管理情報差分データ11の消去方法について説明する。この消去方法は、例えば、メモリシステム1の正常電源断により第1の不揮発性メモリ4上の管理情報が最新のものに更新され、第2の不揮発性メモリ6上の管理情報差分データ11が不要になる場合に用いられる。図6に第2の不揮発性メモリ6上に管理情報差分データ11が書き込まれているアドレス空間を示す。この状態において、開始コード12に無効なデータ、例えば全て0からなるデータにより上書きし、末端コード13には、新たに開始コード12を上書きし、この新たな開始コード12の直後のアドレスに末端コード13を書き込む。この状態では、開始コード12と末端コード13の間には、管理情報差分データ11が書き込まれていない。これにより、第2の不揮発性メモリ6を読みだしたとき、管理情報差分データ11が存在しないものと認識される。この消去方法は、開始コード12および末端コード13への上書きと、新たな末端コード13の書き込みにより行われるため、差分管理情報データの消去を高速に行うことができる。
(管理情報差分データの書き換え方法)
図7を用いて、管理情報差分データ11の書き換え方法について説明する。この更新方法は、メモリシステム1の正常電源断により第1の不揮発性メモリ4上の管理情報が最新のものに更新され、第2の不揮発性メモリ6上の管理情報差分データ11が消去されていない状態で新たに差分データを書き込む場合に用いられる。図7に第2の不揮発性メモリ6上に管理情報差分データ11が書き込まれているアドレス空間を示す。この状態において、開始コード12には、無効なデータ、例えば全て0からなるデータにより上書きし、末端コード13には、新たに開始コード12を上書きし、開始コード12の直後のアドレスから管理情報差分データ11を書き込み、その後管理情報差分データ11の末端に、末端コード13を書き込む。この書き換え方法によれば、開始コード12および末端コード13への上書きと管理情報差分データ11の書き込みと、新たな末端コード13の書き込みにより行われるため、差分管理情報データ11の書き換えを高速に行うことができる。
(管理情報差分データの読み出し方法)
図8に第1の実施形態に係る第2の不揮発性メモリにおいて管理情報差分データ11の読み出し方法を示すフローチャートを示し、図9に開始コード12が末端コード13より前にある場合と後にある場合におけるアドレス空間を示す。以下、図8および図9を用いて、管理情報差分データ11の読み出し方法を説明する。
まず、メモリコントローラ7は、第2の不揮発性メモリ6のアドレス空間の先端からアドレスをインクリメントし、読み出し動作を行う(S101)。その後、メモリコントローラ7は、読み出したデータが開始コード12又は末端コード13か否かを判定する(S102)。
読み出したデータが開始コード12又は末端コード13ではない場合、メモリコントローラ7は、再びアドレスをインクリメントし、読み出し動作を行う(S101)。一方、読み出したデータが開始コード12又は末端コード13である場合、メモリコントローラ7は、読み出したコードが開始コード12であるか否かを判定する(S103)。
読み出したコードが開始コード12である場合、メモリコントローラ7は、アドレスをインクリメントし、読み出し動作を行う(S104)。その後、メモリコントローラ7は、末端コード13を読み出したか否かを判定する(S105)。末端コード13を読み出さない場合、メモリコントローラ7は、再びアドレスをインクリメントし、読み出し動作を行う(S104)。末端コード13を読み出した場合、メモリコントローラ7は、管理情報差分データ11を、開始コード12直後のアドレスから末端コード13直前のアドレスまでのデータとして読み込む(S106)。
読み出したコードが開始コード12ではない場合、即ち、末端コード13である場合、メモリコントローラ7は、アドレスをインクリメントし、読み出し動作を行う(S107)。その後、メモリコントローラ7は、アドレス空間の末端まで読み出したか否かを判定する(S108)。アドレス空間の末端まで読み出していない場合、メモリコントローラ7は、再びアドレスをインクリメントし、読み出し動作を行う(S107)。
アドレス空間の末端まで読みだした場合、メモリコントローラ7は、管理情報差分データ11を、開始コード12直後のアドレスからアドレス空間の末端までのデータ、およびアドレス空間の先端から末端コード13直前のアドレスまでのデータとして読み込む(S109)。
図9(a)のように、開始コード12が末端コード13より前にある場合は、アドレス空間の先端から読み出しを開始し、末端コード13において読み出しを終了する。このとき、管理情報差分データ11は、開始コード12直後のアドレスから末端コード13直前のアドレスまでのデータとして読み込まれる。
図9(b)のように、開始コード12が末端コード13より後にある場合は、アドレス空間の先端から読み出しを開始し、アドレス空間末端において読み出しを終了する。このとき、管理情報差分データ11は、開始コード12直後のアドレスからアドレス空間の末端までのデータ、およびアドレス空間の先端から末端コード13直前のアドレスまでのデータとして読み込まれる。
(第2の不揮発性メモリ6の記憶領域が全て埋まった場合)
第2の不揮発性メモリ6の記憶領域が管理情報差分データ11により全て埋まった場合には、以下の動作を行う。まず揮発性メモリ5上の最新管理情報9を第1の不揮発性メモリ4に書き込み、第1の不揮発性メモリ4上の管理情報を最新のものにする。その後、第2の不揮発性メモリ6上の管理情報差分データ11を消去する。これにより、管理情報差分データ11が、第2の不揮発性メモリ6の記憶領域を確保することができる。なお、第2の不揮発性メモリ6の記憶領域が全て埋まった場合において、第2の不揮発性メモリ6に記憶できない管理情報差分データ11を第1の不揮発性メモリ4に追記してもよい。
以下、正常な電源断が行われた場合および異常な電源断が発生した場合について説明する。
(正常な電源断が行われる場合)
正常な電源断が行われる場合のメモリシステム1の動作について説明する。正常に電源断を行う際に、揮発性メモリ5上の最新管理情報9を第1の不揮発性メモリ4に書き込み、第1の不揮発性メモリ4上の管理情報を最新のものにする。その後、第2の不揮発性メモリ6上の管理情報差分データ11を消去する。これにより、第2の不揮発性メモリ6の記憶領域に、管理情報差分データ11が全て埋まることを防止することができる。次回のメモリシステム1の起動時には、第1の不揮発性メモリ4に記憶された最新の管理情報を揮発性メモリ5に展開する。
なお、正常に電源断を行う際に、必ずしも揮発性メモリ5上の最新管理情報9を第1の不揮発性メモリ4に書き込まなくても良い場合も想定され得る。例えば、管理情報差分データ11のサイズが小さく、第2の不揮発性メモリ6の記憶領域の容量に余裕がある場合や、起動時に管理情報差分データ11によって最新の管理情報を復元するために十分な時間が仕様上規定されている場合等である。
(異常な電源断が発生した場合)
上述の正常な電源断が行われず、異常な電源断が発生した場合において、メモリシステム1におけるデータ復元の動作について説明する。異常な電源断が発生した場合、揮発性メモリ5上の最新管理情報9のデータが失われるため、次回のメモリシステム1の起動時に管理情報のデータ復元が行われる。
まず、第1の不揮発性メモリ4上の旧管理情報10を揮発性メモリ5に読み込む。その後、第2の不揮発性メモリ6上の管理情報差分データ11に基づいて、揮発性メモリ5上の旧管理情報10を最新管理情報9に復元する。
なお、上記動作後に、揮発性メモリ5上の更新された最新管理情報9を第1の不揮発性メモリ4に書き込みをしてもよい。異常な電源断後の再起動の際には、比較的長い起動時間が許容されるため、一度、最新管理情報9を第1の不揮発性メモリ4に書き込む事で、メモリシステム1の動作を安定させる事ができる。また、その後、第2の不揮発性メモリ6上の管理情報差分データ11を消去してもよい。これにより、第2の不揮発性メモリ6の記憶領域に、管理情報差分データ11が全て埋まることを防止することができる。
以上のように、本発明の第1の実施形態によれば、メモリシステム1において、管理情報差分データ11を記憶するために、第2の不揮発性メモリ6として小容量の高速不揮発性メモリを使用している。第2の不揮発性メモリ6にはデータ量が小さい差分データが記憶されるため、第2の不揮発性メモリ6には、コストが低い小容量の高速不揮発性メモリを用いることができ、高速に動作することができる。
さらに、第1の実施形態によれば、第2の不揮発性メモリ6に管理情報差分データ11を記憶している。したがって、異常電源断が発生しても、次回の電源起動時において、異常電源断前の最新の管理情報に復元することができる。
(第2の実施形態)
本発明の第2の実施形態によるメモリシステム1について図10を用いて説明する。この第2の実施形態の構成について第1の実施形態のメモリシステム1の構成と同一部分は同一符号で示し、その詳細な説明を省略する。この第2の実施形態が、第1の実施形態と異なる点は、図1の第2の不揮発性メモリ6がメモリコントローラ7とは独立して設けられていたものに代えて、メモリコントローラ7のチップ内部に第2の不揮発性メモリ6を組み込み型メモリとして実装する点である。例えば、メモリコントローラ7のチップにFeRAM又はMRAM等の高速の不揮発性メモリを組み込むことができる。
第2の実施形態に係るメモリシステム1においても、第2の不揮発性メモリ6に管理情報差分データ11を記憶することにより、第1の実施形態に係るメモリシステム1の同様の保存方式において、管理情報差分データ11の追記、消去、書き換え、読み出しを行うことができる。
以上のように、本発明の第2の実施形態によれば、メモリシステム1において、管理情報差分データ11を記憶するために、第2の不揮発性メモリ6として小容量の高速不揮発性メモリを使用している。データ負担が小さい差分のデータを記憶するため、コストが低い高速の不揮発性メモリを用いることができ、さらに高速に動作することができる。
さらに、第2の実施形態によれば、第2の不揮発性メモリ6に管理情報差分データ11を記憶している。したがって、異常電源断が発生しても、次回の電源起動時において、異常電源断前の最新の管理情報に復元することができる。
また、第2の実施形態においては、メモリコントローラ7内に管理情報差分データ11を記憶する第2の不揮発性メモリ6を組み込んでいる。これにより、第1の実施形態に係るメモリシステム1に比べて小面積のメモリシステム1を作成することができる。さらに、第2の不揮発性メモリ6とメモリコントローラ7を結ぶ配線が短くなることにより、ノイズなく、高速に動作するメモリシステム1を提供することができる。
なお、本発明は、上述の実施形態にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これらの実施形態は、その他のさまざまな形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これらの実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
1…メモリシステム
2…インターフェース
3…ホスト装置
4…第1の不揮発性メモリ
5…揮発性メモリ
6…第2の揮発性メモリ
7…メモリコントローラ
8…ユーザデータ
9…最新管理情報
10…旧管理情報
11…管理情報差分データ
12…開始コード
13…末端コード

Claims (13)

  1. 揮発性メモリと、
    前記揮発性半導体メモリに接続された第1の不揮発性メモリと、
    前記揮発性半導体メモリに接続された第2の不揮発性メモリと、
    前記揮発性メモリに最新管理情報を記憶し、前記第1の不揮発性メモリに旧管理情報を記憶し、および前記第2の不揮発性メモリに前記最新管理情報と前記旧管理情報の差分データを記憶するメモリコントローラと、
    を備えたメモリシステム。
  2. 前記第2の不揮発性メモリは、前記第1の不揮発性メモリよりレイテンシが小さく、かつ前記揮発性メモリより小容量のものであることを特徴とする請求項1に記載のメモリシステム。
  3. 前記第2の不揮発性メモリは、前記第1の不揮発性メモリより書き換え可能回数が多いものであることを特徴とする請求項1又は請求項2に記載のメモリシステム。
  4. 前記第2の不揮発性メモリが、前記メモリコントローラ内に組み込まれたことを特徴とする請求項1乃至請求項3の何れか1項に記載のメモリシステム。
  5. 前記メモリコントローラは、異常な電源断が発生した場合に、前記旧管理情報と、前記差分データに基づき、前記揮発性メモリ上に前記最新管理情報を復元することを特徴とする請求項1乃至請求項4の何れか1項に記載のメモリシステム。
  6. 前記メモリコントローラは、正常な電源断を行う場合に、前記最新管理情報を前記第1の不揮発性メモリに書き込み、前記差分データを消去することを特徴とする請求項1乃至請求項5の何れか1項に記載のメモリシステム。
  7. 前記メモリコントローラは、前記第2の不揮発性メモリにおいて、前記差分データの直前のアドレスに開始コードを記憶し、前記差分データの直後のアドレスに末端コードを記憶することを特徴とする請求項1乃至請求項6の何れか1項に記載のメモリシステム。
  8. 前記メモリコントローラは、前記差分データを追記する場合に、前記末端コードのアドレスから前記差分データを記憶し、前記差分データの直後のアドレスに新たな末端コードを記憶することを特徴とする請求項7に記載のメモリシステム。
  9. 前記メモリコントローラは、前記差分データを消去する場合に、前記末端コードのアドレスに新たな開始コードを記憶し、前記新たな開始コードの直後のアドレスに新たな末端コードを記憶することを特徴とする請求項7又は請求項8に記載のメモリシステム。
  10. 前記メモリコントローラは、前記差分データを書き換える場合に、前記末端コードのアドレスに新たな開始コードを記憶し、前記新たな開始コードの直後のアドレスから前記差分データを記憶し、かつ前記差分データの直後のアドレスに新たな末端コードを記憶することを特徴とする請求項7乃至請求項9の何れか1項に記載のメモリシステム。
  11. 前記メモリコントローラは、前記差分データを読み出す場合において、前記第2の不揮発性メモリの先端アドレスから順にアドレスをインクリメントして読み出しを実行し、前記末端コードよりも先に前記開始コードを読み出した場合に、前記開始コードの直後のアドレスから前記末端コードの直前のアドレスまでのデータを前記差分データとして読み込むことを特徴とする請求項7乃至請求項10の何れか1項に記載のメモリシステム。
  12. 前記メモリコントローラは、前記差分データを読み出す場合において、前記第2の不揮発性メモリの先端アドレスから順にアドレスをインクリメントして読み出しを実行し、前記開始コードよりも先に前記末端コードを読み出した場合に、前記先端アドレスから前記末端コードの直前のアドレスまで、および前記開始コードの直後のアドレスから前記第2の不揮発性メモリの末端アドレスまでのデータを管理情報差分データとして読み込むことを特徴とする請求項7乃至請求項11の何れか1項に記載のメモリシステム。
  13. 前記メモリコントローラは、前記第2の不揮発性メモリが前記差分データで埋まった場合に、前記最新管理情報を前記第1の不揮発性メモリに書き込み、かつ前記差分データを消去することを特徴とする請求項7乃至請求項12の何れか1項に記載のメモリシステム。
JP2010255411A 2010-11-15 2010-11-15 メモリシステム Pending JP2012108627A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010255411A JP2012108627A (ja) 2010-11-15 2010-11-15 メモリシステム
US13/069,963 US20120124275A1 (en) 2010-11-15 2011-03-23 Memory system and data storage method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010255411A JP2012108627A (ja) 2010-11-15 2010-11-15 メモリシステム

Publications (2)

Publication Number Publication Date
JP2012108627A true JP2012108627A (ja) 2012-06-07
JP2012108627A5 JP2012108627A5 (ja) 2013-08-01

Family

ID=46048858

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010255411A Pending JP2012108627A (ja) 2010-11-15 2010-11-15 メモリシステム

Country Status (2)

Country Link
US (1) US20120124275A1 (ja)
JP (1) JP2012108627A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9063845B2 (en) 2012-08-29 2015-06-23 Buffalo Memory Co., Ltd. Solid-state drive device

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9032264B2 (en) 2013-03-21 2015-05-12 Kabushiki Kaisha Toshiba Test method for nonvolatile memory
CN110325971A (zh) * 2017-06-20 2019-10-11 京瓷办公信息系统株式会社 存储器系统及电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08328821A (ja) * 1995-05-30 1996-12-13 Kokusai Electric Co Ltd データ読み出しポイントのサーチ方法
JP2000105694A (ja) * 1998-09-28 2000-04-11 Nec Ic Microcomput Syst Ltd フラッシュメモリ、フラッシュメモリを備えたマイクロコンピュータおよびフラッシュメモリへのプログラム格納方法
JP2007156846A (ja) * 2005-12-05 2007-06-21 Tdk Corp メモリコントローラ及びフラッシュメモリシステム
JP2009009213A (ja) * 2007-06-26 2009-01-15 Ricoh Co Ltd データ記憶装置、プログラムおよびデータ記憶方法
JP2009211223A (ja) * 2008-03-01 2009-09-17 Toshiba Corp メモリシステム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3603333B2 (ja) * 1994-06-22 2004-12-22 カシオ計算機株式会社 データ処理装置
US5568443A (en) * 1995-09-08 1996-10-22 Smithills Multimedia Systems, Inc. Combination dual-port random access memory and multiple first-in-first-out (FIFO) buffer memories
US6732223B1 (en) * 2000-04-03 2004-05-04 Micron Technology, Inc. Method and apparatus for address FIFO for high-bandwidth command/address busses in digital storage system
JP2005115857A (ja) * 2003-10-10 2005-04-28 Sony Corp ファイル記憶装置
US20050251617A1 (en) * 2004-05-07 2005-11-10 Sinclair Alan W Hybrid non-volatile memory system
US8028123B2 (en) * 2008-04-15 2011-09-27 SMART Modular Technologies (AZ) , Inc. Circular wear leveling
US8843691B2 (en) * 2008-06-25 2014-09-23 Stec, Inc. Prioritized erasure of data blocks in a flash storage device
JP5317690B2 (ja) * 2008-12-27 2013-10-16 株式会社東芝 メモリシステム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08328821A (ja) * 1995-05-30 1996-12-13 Kokusai Electric Co Ltd データ読み出しポイントのサーチ方法
JP2000105694A (ja) * 1998-09-28 2000-04-11 Nec Ic Microcomput Syst Ltd フラッシュメモリ、フラッシュメモリを備えたマイクロコンピュータおよびフラッシュメモリへのプログラム格納方法
JP2007156846A (ja) * 2005-12-05 2007-06-21 Tdk Corp メモリコントローラ及びフラッシュメモリシステム
JP2009009213A (ja) * 2007-06-26 2009-01-15 Ricoh Co Ltd データ記憶装置、プログラムおよびデータ記憶方法
JP2009211223A (ja) * 2008-03-01 2009-09-17 Toshiba Corp メモリシステム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9063845B2 (en) 2012-08-29 2015-06-23 Buffalo Memory Co., Ltd. Solid-state drive device
US9632714B2 (en) 2012-08-29 2017-04-25 Buffalo Memory Co., Ltd. Solid-state drive device

Also Published As

Publication number Publication date
US20120124275A1 (en) 2012-05-17

Similar Documents

Publication Publication Date Title
US8862808B2 (en) Control apparatus and control method
US9400744B2 (en) Magnetic random access memory journal for multi-level cell flash memory
JP5317690B2 (ja) メモリシステム
US9026764B2 (en) Memory system performing wear leveling based on deletion request
JP4871260B2 (ja) メモリモジュール、メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びメモリの読み書き方法
US20150331624A1 (en) Host-controlled flash translation layer snapshot
JP5990430B2 (ja) Ssd(ソリッドステートドライブ)装置
CN111752487B (zh) 一种数据恢复方法、装置及固态硬盘
JP5983019B2 (ja) 制御装置、記憶装置、記憶制御方法
US10838629B2 (en) Solid state device with fast boot after ungraceful shutdown
TWI662410B (zh) 資料儲存裝置與記憶體裝置之資料處理方法
US20190324859A1 (en) Method and Apparatus for Restoring Data after Power Failure for An Open-Channel Solid State Drive
JP5631938B2 (ja) 半導体記憶装置
US9208101B2 (en) Virtual NAND capacity extension in a hybrid drive
KR20120086239A (ko) 메모리 시스템 및 그 동작 방법
JPWO2007119267A1 (ja) フラッシュメモリ用のメモリコントローラ
US10152280B2 (en) Storage device and control method
US20180150390A1 (en) Data Storage Device and Operating Method Therefor
US20170147232A1 (en) Solid state drive and data programming method thereof
JP2013222435A (ja) 半導体記憶装置及びその制御方法
JP5874525B2 (ja) 制御装置、記憶装置、記憶制御方法
US8527733B2 (en) Memory system
US10942811B2 (en) Data processing method for solid state drive
JP2012108627A (ja) メモリシステム
JP2006099802A (ja) 記憶制御装置およびキャッシュメモリの制御方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130614

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130614

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140214

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140704