WO2018051387A1 - 情報処理システムおよびデータ格納方法 - Google Patents

情報処理システムおよびデータ格納方法 Download PDF

Info

Publication number
WO2018051387A1
WO2018051387A1 PCT/JP2016/076890 JP2016076890W WO2018051387A1 WO 2018051387 A1 WO2018051387 A1 WO 2018051387A1 JP 2016076890 W JP2016076890 W JP 2016076890W WO 2018051387 A1 WO2018051387 A1 WO 2018051387A1
Authority
WO
WIPO (PCT)
Prior art keywords
capacity
data
blocks
snapshot
storage device
Prior art date
Application number
PCT/JP2016/076890
Other languages
English (en)
French (fr)
Inventor
慎太郎 澤谷
繁雄 本間
純司 小川
Original Assignee
株式会社日立製作所
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 株式会社日立製作所 filed Critical 株式会社日立製作所
Priority to PCT/JP2016/076890 priority Critical patent/WO2018051387A1/ja
Publication of WO2018051387A1 publication Critical patent/WO2018051387A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/16Protection against loss of memory contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/08Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers from or to individual record carriers, e.g. punched card, memory card, integrated circuit [IC] card or smart card

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

デバイスコントローラは、スナップショット取得要求を受信する前に、第1論理領域へ第1データを書き込むことを要求する第1ライト要求をプロセッサから受信した場合、複数の小容量ブロックの中の第1小容量ブロックへ第1データを書き込み、デバイスコントローラは、スナップショット取得要求を受信した後に、第1論理領域へ第2データを書きこむことを要求する第2ライト要求を受信した場合、複数の小容量ブロックの中の第2小容量ブロックへ第2データを書き込み、デバイスコントローラは、不揮発性半導体メモリの状態が、予め設定された移動条件を満たす場合、第1ブロック内の第1データを、複数の大容量ブロックの中の第1大容量ブロックへ移動させる。

Description

情報処理システムおよびデータ格納方法
 本発明は、情報処理システムに関する。
 不揮発性半導体メモリは、磁気記憶デバイスに比べて省電力・高性能であり、高価格である。このような不揮発性半導体メモリは、例えばNAND型のフラッシュメモリである。近年は半導体技術の進歩に伴って低価格化が進み、HDDに替わるメインストリームの記憶デバイスとして注目されてきている。
 フラッシュメモリは、データを記憶するための複数のメモリセル(以下、「セル」と略記する)を有する。セルには、1ビットの情報を記憶可能なセル(Single-Level Cell:SLCという)の他に、2ビットの情報を記憶可能なセル(Multi-Level Cell:MLC、MLC-2とも呼ばれる)や、3ビットの情報を記憶可能なセル(Triple-Level Cell:TLC)や、4ビットの情報を記憶可能なセル(Quadruple-Level Cell:QLC)等がある。フラッシュメモリにMLC型セルを用いると、SLC型セルを用いる場合よりも、ビットコストを低減させることができる。さらにTLCやQLCを用いれば、2ビット情報を記憶可能なMLCを用いるよりも、ビットコストを低減させることができる。
 また近年、セルに格納可能な情報量(ビット数)を変更可能にする技術も現れてきている。たとえば特許文献1には、ある領域は1つのメモリセルトランジスタに1ビットのデータを書き込むことができるモードで運用し、別の領域は多ビットのデータを書き込むことができるモードで運用するように設定することができるメモリが開示されている。
 特許文献2には、フラッシュモジュールドライブ内の旧データをスナップショットに利用する技術が記載されている。
米国特許出願公開第2008/0250220号明細書 米国特許出願公開第2014/0101107号明細書
 しかしながら、セルの記憶容量が大きくなるほど、書き換え回数に対する耐久能力が低くなるため、不揮発性半導体メモリの寿命が短くなる。
 上記課題を解決するために、本発明の一態様である情報処理システムは、第1記憶デバイスと、前記第1記憶デバイスに接続されるプロセッサと、を備える。前記第1記憶デバイスは、不揮発性半導体メモリと、前記不揮発性半導体メモリに接続されるデバイスコントローラと、を含み、不揮発性半導体メモリは、複数のブロックを含み、各ブロックは、所定のセル数のセルを含み、前記複数のブロックは、複数の小容量ブロックと、複数の大容量ブロックとを含むように構成されており、各小容量ブロックは、nビットのデータを格納できるセルの集合であり、nは1以上の整数であり、各大容量ブロックは、mビットのデータを格納できるセルの集合であり、mはnよりも大きい整数である。前記プロセッサは、スナップショットを取得することを要求するスナップショット取得要求を前記デバイスコントローラへ送信するように構成されており、前記デバイスコントローラは、前記スナップショット取得要求を受信する前に、第1論理領域へ第1データを書き込むことを要求する第1ライト要求を前記プロセッサから受信した場合、前記複数の小容量ブロックの中の第1小容量ブロックへ第1データを書き込み、前記デバイスコントローラは、前記スナップショット取得要求を受信した後に、前記第1論理領域へ第2データを書きこむことを要求する第2ライト要求を受信した場合、前記複数の小容量ブロックの中の第2小容量ブロックへ第2データを書き込み、前記デバイスコントローラは、前記不揮発性半導体メモリの状態が、予め設定された移動条件を満たす場合、前記第1ブロック内の前記第1データを、前記複数の大容量ブロックの中の第1大容量ブロックへ移動させる。
 記憶デバイスのビットコストを低減すると共に、記憶デバイスの劣化を抑える。
情報処理システムの構成を示す。 FMドライブ200の構成を示す。 スナップショットの概要を示す。 スナップショットのリード処理を示す。 論物変換テーブル410の変化を示す。 スナップショット世代管理テーブル420を示す。 スナップショット取得処理を示す。 更新ライト処理を示す。 第1移動処理を示す。 第2移動処理を示す。 バックアップ処理における旧ドライブの動作を示す。 バックアップ処理を示す。
 以下、図面を参照して本発明の実施形態を説明する。
 以下の説明では、「×××テーブル」の表現にて情報を説明することがあるが、情報は、どのようなデータ構造で表現されていてもよい。すなわち、情報がデータ構造に依存しないことを示すために、「×××テーブル」を「×××情報」と呼ぶことができる。また、以下の説明において、各テーブルの構成は一例であり、1つのテーブルは、2以上のテーブルに分割されてもよいし、2以上のテーブルの全部又は一部が1つのテーブルであってもよい。
 また、以下の説明では、要素の識別情報として、IDが使用されるが、それに代えて又は加えて他種の識別情報が使用されてもよい。
 また、以下の説明では、同種の要素を区別しないで説明する場合には、参照符号又は参照符号における共通番号を使用し、同種の要素を区別して説明する場合は、その要素の参照符号を使用又は参照符号に代えてその要素に割り振られたIDを使用することがある。
 また、以下の説明では、I/O(Input/Output)要求は、ライト要求又はリード要求であり、アクセス要求と呼ばれてもよい。
 また、以下の説明では、「プログラム」を主語として処理を説明する場合があるが、プログラムは、プロセッサ(例えばCPU(Central Processing Unit))によって実行されることで、定められた処理を、適宜に記憶資源(例えばメモリ)及び/又はインターフェースデバイス(例えば通信ポート)等を用いながら行うため、処理の主語がプロセッサとされてもよい。プログラムを主語として説明された処理は、プロセッサあるいはそのプロセッサを有する装置が行う処理又はシステムとしてもよい。また、プロセッサは、処理の一部または全部を行うハードウェア回路を含んでもよい。プログラムは、プログラムソースから計算機のような装置にインストールされてもよい。プログラムソースは、例えば、プログラム配布サーバまたは計算機が読み取り可能な記憶メディアであってもよい。プログラムソースがプログラム配布サーバの場合、プログラム配布サーバはプロセッサ(例えばCPU)と記憶資源を含み、記憶資源はさらに配布プログラムと配布対象であるプログラムとを記憶してよい。そして、プログラム配布サーバのプロセッサが配布プログラムを実行することで、プログラム配布サーバのプロセッサは配布対象のプログラムを他の計算機に配布してよい。また、以下の説明において、2以上のプログラムが1つのプログラムとして実現されてもよいし、1つのプログラムが2以上のプログラムとして実現されてもよい。
 図1は、情報処理システムの構成を示す。
 情報処理システムは、ストレージシステム10と、少なくとも1つのホスト20とを含む。ストレージシステム10は、SAN(Storage Area Network)を介して、ホスト20に接続されている。
 ストレージシステム10は、ストレージコントローラ100(Disk Controller、DKCとも呼ばれる)と、複数のFM(Flash Memory)ドライブ200とを含む。ストレージシステム10は、複数のストレージコントローラ100を含んでいてもよい。FMドライブ200は、SSD(Solid State Drive)と呼ばれることがある。
 ストレージコントローラ100は、メモリ110と、CPU120と、ホストI/F(Interface)130と、ドライブI/F140と、スイッチ150とを含む。
 メモリ110は、プログラムおよびデータを格納する。CPU120は、メモリ110内のプログラムおよびデータに従って、処理を実行する。ホストI/F130は、SANを介してホスト20に接続され、ホスト20との通信を制御する。ドライブI/F140は、FMドライブ200に接続され、FMドライブ200との通信を制御する。スイッチ150は、メモリ110と、CPU120と、ホストI/F130と、ドライブI/F140に接続され、それらの間の通信を制御する。
 なお、情報処理システムは、ストレージシステム10とホスト20の機能を持つサーバ装置であってもよい。この場合、ストレージコントローラ100の機能とホスト20の機能の夫々は、プログラムにより実現されてもよい。
 図2は、FMドライブ200の構成を示す。
 FMドライブ200は、ドライブコントローラ300と、複数のFMチップ210とを含む。ドライブコントローラ300は、メモリ310と、CPU320と、ストレージI/F330と、FM I/F340と、スイッチ350とを含む。
 メモリ310は、プログラムおよびデータを格納する。CPU320は、メモリ310内のプログラムおよびデータに従って、処理を実行する。ストレージI/F330は、ドライブI/F140に接続され、ストレージコントローラ100との通信を制御する。FM I/F140は、FMチップ210に接続され、FMチップ210との通信を制御する。スイッチ350は、メモリ310と、CPU320と、ストレージI/F330と、FM I/F340に接続され、それらの間の通信を制御する。
 FMチップ210は、複数の物理領域で構成されている。例えば、FMチップは、NANDフラッシュメモリであり、所定のブロック数の物理ブロックを含む。各物理ブロックは、所定のページ数の物理ページを含む。物理ページ単位でデータがアクセス(リード及びライト)され、物理ブロック単位でデータが消去される。各物理ページは、所定のセル数のセルを含む。各ページは、所定のCW(code word)数のCWを含む。各CWは、所定のデータ長のデータと、所定のECC長のECCを含む。
 FMは、追記型、具体的には、物理ページ(以下、ページ)が割り当てられている論理領域が、ライト要求によりライト先論理領域として指定された場合、ライト先論理領域に、割当て済のページに代えて新たに空きページが割り当てられ、新たに割り当てられたページにデータが書き込まれる。
 また、FMに代えて、他の不揮発性半導体メモリ、例えばPRAM(Phase Change Random Access Memory)、MRAM(Magnetoresistive Random Access Memory)、ReRAM(Resistance Random Access Memory)又はFeRAM(Ferroelectric Random Access Memory)が採用されてもよい。
 物理ブロック内のセルは、MLCとTLCの何れか一つに設定することができる。MLCで構成される物理ブロックをMLCブロックと呼ぶ。TLCで構成される物理ブロックをTLCブロックと呼ぶ。FMドライブ200は、ストレージコントローラ100と協働して、MLCブロックをTLCブロックへ変換するセル変換処理を行うことができる。FMチップ210のうち、MLCブロックで構成される物理領域をMLC領域と呼び、TLCブロックで構成される物理領域をTLC領域と呼ぶ。また、MLC領域のうち空き領域(有効データと無効データの何れも格納されていない)の容量を、MLC領域空き容量と呼び、TLC領域のうち空き領域の容量を、TLC領域空き容量と呼ぶ。
 なお、MLCの代わりに小容量セルが用いられ、TLCの代わりに大容量セルが用いられてもよい。ここで、小容量セルは、SLCやTLC等、nビットを格納できるセルである(nは1以上の整数)。大容量セルは、MLC、TLC、QLC等、mビットを格納できるセルである(mはnより大きい整数)。各セルが小容量セルであるブロックを小容量ブロックと呼ぶ。各セルが大容量セルであるブロックを大容量ブロックと呼ぶ。
 ストレージコントローラ100は、FMドライブ200から空き容量、ブロック数、ブロック毎のPE(Program Erase、書き換え)回数、残消去可能回数等を取得する。また、ストレージコントローラ100は、FMドライブ200の稼働時間を計測する。また、ストレージコントローラ100は、セル変換処理において、FMドライブ200から取得された情報に基づいて、MLCブロック数およびTLCブロック数を決定する。これにより、ストレージコントローラ100は、各FMドライブ200に対し、総ブロック数、MLCブロック数とTLCブロック数の割合、MLC領域空き容量、TLC領域空き容量、PE回数、残消去可能回数、稼働時間等を、ドライブ管理情報としてメモリ110に格納する。
 図3は、スナップショットの概要を示す。
 FMドライブ200は、MLC領域に旧データを格納し、ストレージコントローラ100からスナップショット取得要求を受け、旧データを新データで更新することを要求するライト要求(更新ライト要求)を受信すると(S10)、MLC領域のうち、旧データを格納している物理領域と異なる空き領域へ新データを書き込み、論物変換テーブルにおいて、旧データを格納している物理領域に関連付けられている論理領域に、新データを格納している物理領域を関連付ける(S20)。以後、スナップショット取得要求を受けた後の状態を、スナップショット取得状態と呼ぶ。
 その後、FMドライブ200は、所定の移動条件下で、旧データをTLC領域へ移動する(S30)。旧データは、スナップショットデータであるため、更新されない。これにより、TLC領域の寿命を長くすることができると共に、スナップショットの容量を増大させることができる。これにより、ビットコストを低減することができる。
 移動条件は、リフレッシュ(以下、RFと呼ぶことがある)処理や、リクラメーション(以下、RCMと呼ぶことがある)処理を含む。
 FMチップ210は、データ記録後の時間の経過に伴って、データが反転する障害ビットが増加することにより、データを損失する性質がある。リフレッシュ処理は、MLCブロック内の有効データを別のMLCブロックへコピーすることで、電荷を再注入し、その有効データの信頼性を高めることを目的とする。リフレッシュ処理は、ECCで訂正できる間にデータを移動する必要があるため、障害ビット数が閾値を超えると行われる。例えば、FMドライブ200は、24時間周期でスケジューリングして各ブロックの検査リードを行い、RF閾値を超えた障害ビット数を検出したら、検出から1日以内にリフレッシュ処理を行う。なお、リフレッシュ処理は、TLCブロック内の有効データを別のTLCブロックへコピーしてもよい。
 リクラメーション処理は、MLC領域空き容量がなくなってFMドライブ200のライトが停止しないように、MLCブロック内の有効データを別のMLCブロックへコピーし、コピー元のMLCブロックを消去することで、空き領域を確保する。FMドライブ200は、ストレージコントローラ100からのコマンドとは非同期に、リクラメーション処理を行う。なお、リクラメーション処理は、TLCブロック内の有効データを別のTLCブロックへコピーしてもよい。
 図4は、スナップショットのリード処理を示す。
 FMドライブ200は、ストレージコントローラ100に対して論理ボリュームを提供する。FMドライブ200は、スナップショット取得状態でない場合に、論理ボリューム内の論理領域へデータを書き込むことを要求するライト要求をストレージコントローラ100から受信すると、ライトデータをMLC領域である有効データ格納領域220へ書き込み、その有効データ格納領域220を当該論理領域に関連付ける。
 FMドライブ200は、スナップショット取得状態において、有効データ格納領域220と、MLC領域およびTLC領域を含むスナップショットデータ格納領域230を用いて、スナップショットを示す仮想ボリュームを作成する。仮想ボリュームは、仮想デバイスや論理デバイスと呼ばれてもよい。その後、或る論理領域のデータを更新するライト要求(更新ライト要求)をストレージコントローラ100から受信すると、更新前のデータをMLC領域のスナップショットデータ格納領域230へ書き込み、更新後のデータを有効データ格納領域220へ書き込む。その後、FMドライブ200は、MLC領域のスナップショットデータ格納領域230のデータを、TLC領域のスナップショットデータ格納領域230へ移動する。
 FMドライブ200は、ストレージコントローラ100から仮想ボリューム240内の論理領域へのリード要求を受信した場合、当該論理領域がスナップショットデータ格納領域230に関連付けられていれば、当該論理領域に対応するスナップショットデータ格納領域230からデータを読み出し、当該論理領域がスナップショットデータ格納領域230に関連付けられていなければ、当該論理領域に対応する有効データ格納領域220からデータを読み出す。その後、FMドライブ200は、読み出されたデータをストレージコントローラ100へ送信する。
 これにより、FMドライブ200は、更新前のデータを保持し、更新後のデータと更新前のデータを管理することで、スナップショットを取得することができる。
 この図の例は、論理領域D0、D1、D2、D3のデータD00、D10、D20、D30が有効データ格納領域に格納された後、FMドライブ200が、ストレージコントローラ100からスナップショット取得要求を受信し、その後、データD30をデータD31に書き換える更新ライト要求を受信した場合を示す。この更新ライト要求に応じて、FMドライブ200は、有効データ格納領域に格納されているデータD30をスナップショットデータ格納領域へ退避させ、データD31を有効データ格納領域へ書き込み、データD3の論理領域にデータD31の有効データ格納領域を関連付ける。
 これにより、FMドライブ200は、要求された時点のスナップショットを作成することができる。
 メモリ310は、論物変換テーブル410を格納する。CPU320は、ストレージコントローラ100からのスナップショット取得要求に応じてスナップショット世代管理テーブル420を作成する。
 図5は、論物変換テーブル410の変化を示す。
 論物変換テーブル410は、論理領域毎のエントリを有する。一つの論理領域のエントリは、当該論理領域を示す論理アドレス411と、当該論理領域に関連付けられた物理領域を示す物理アドレス412とを含む。FMドライブ200は、ある論理領域へのライト要求を受信する度に、新たな物理領域へデータを書き込み、その物理領域を当該論理領域に関連付ける。
 論理アドレス411は、LBA(Logical Block Address)や論理領域ID(例えば論理ブロック番号又は論理ページ番号)であってもよい。物理アドレス412は、PBA(Physical Block Address)や物理領域ID(例えば物理ブロック番号又は物理ページ番号)であってもよい。
 FMドライブ200は、特定の論理アドレスの更新ライト要求を受信した場合、空き領域の新物理アドレスへライトデータを書き込む。論物変換テーブル410において当該論理アドレスに対応する物理アドレス412を、新物理アドレスに書き換えることで、論物変換テーブル410を論物変換テーブル410aに変化させる。更に、FMドライブ200は、当該論理アドレスの更新ライト要求を受信した場合、論物変換テーブル410aを論物変換テーブル410bに変化させる。
 なお、CPU220は、論物変換テーブル410の各エントリに、当該エントリに対応するスナップショットデータの有無を示すスナップショット情報を含んでもよい。
 メモリ310は更に、各物理領域が、有効データを格納している有効領域、無効データを格納している無効領域、データを格納していない空き領域との何れであるかを示す物理領域管理情報を格納する。CPU320は、ライト処理、リフレッシュ処理、リクラメーション処理等によりページの状態が変化する場合に、物理領域管理情報を更新する。
 図6は、スナップショット世代管理テーブル420を示す。
 スナップショット世代管理テーブル420は、世代毎のエントリを有する。世代は、スナップショット取得要求の受信後の、更新ライト要求に対応する。一つの世代のエントリは、世代番号421と、論理アドレス422と、物理アドレス423と、データサイズ424と、TLCフラグ425とを含む。世代番号421は、当該世代の番号を示す。世代番号421が小さいほど、世代が新しいことを示す。論理アドレス422は、当該世代のデータの論理アドレスを示す。物理アドレス423は、当該世代のデータを格納している物理アドレスを示す。データサイズ424は、当該世代のデータのサイズを示す。TLCフラグ425は、当該世代のデータがTLC領域に格納されている(1)かMLC領域に格納されている(0)かを示す。
 図7は、スナップショット取得処理を示す。
 S110においてCPU320は、ストレージコントローラ100からスナップショット取得要求を受信すると、スナップショット取得処理を開始する。
 S120においてCPU320は、スナップショット世代管理テーブル420を作成し、メモリ310へ格納する。
 S130においてCPU320は、ストレージコントローラ100からTLC領域空き容量を取得し、TLC領域空き容量をメモリ310へ格納し、このフローを終了する。
 図8は、更新ライト処理を示す。
 S210においてCPU320は、ストレージコントローラ100から対象論理領域への更新ライト要求を受信すると、この更新ライト処理を開始する。
 S220においてCPU320は、空き物理領域の中からライト先物理領域を選択し、ライト先物理領域へ新データを書き込み、論物変換テーブル410において、ライト先物理領域を対象論理領域に関連付ける。
 S230においてCPU320は、スナップショット世代管理テーブル420がある(スナップショット取得要求を受信済であり、スナップショットを取得する状態である)か否かを判定する。
 S230の結果、スナップショット世代管理テーブル420がないと判定された場合(No)、CPU320は、このフローを終了する。この場合、CPU320は、対象論理領域の旧データを格納している物理領域を、無効領域として管理し、物理領域管理情報、ドライブ管理情報等を更新する。
 S230の結果、スナップショット世代管理テーブル420があると判定された場合(Yes)、S240においてCPU320は、スナップショット世代管理テーブル420を更新し、このフローを終了する。CPU320は、対象論理領域の旧データを格納している物理領域を、有効領域として維持し、対象論理領域と当該物理領域を、最新の世代のエントリとしてスナップショット世代管理テーブル420へ追加する。また、CPU320は、スナップショット世代管理テーブル420において、当該エントリの世代番号421を0x00に設定し、当該エントリのTLCフラグ425を0に設定し、当該エントリより古い各エントリの世代番号421をインクリメントする。これにより、世代番号421は、新しい世代からの順序を示す。
 CPU320は、検査リードを契機に第1移動処理を行う。
 図9は、第1移動処理を示す。
 S310においてCPU320は、予め設定された検査周期で、自FMドライブに搭載された全FMチップ内の全ブロックから順に対象ブロックを選択し、対象ブロックをリードする検査リードを行う。ここでCPU320は、例えば、対象ブロック内でアンコレクタブルエラーが発生したビット数を障害ビット数として検出する。S320においてCPU320は、障害ビット数が、予め設定されたRF閾値を超えるか否かを判定する。
 S320の結果、障害ビット数がRF閾値を超えていない場合(No)、CPU320は、このフローを終了する。この場合、リフレッシュ処理は行われない。
 S320の結果、障害ビット数がRF閾値を超えている場合(Yes)、S330においてCPU320は、スナップショット世代管理テーブル420内の古い世代から順に(世代番号421の降順に)スナップショットデータを選択し、そのスナップショットデータのデータサイズ424をスナップショットデータ量として選択する。
 S340においてCPU320は、スナップショットデータ量がTLC領域空き容量より小さいか否かを判定する。
 S340の結果、スナップショットデータ量がTLC領域空き容量より以上であると判定された場合(No)、S350においてCPU320は、セル変換処理の可否の判定を要求するセル変換可否確認要求をストレージコントローラ100へ送信する。セル変換可否確認要求を受信したストレージコントローラ100は、送信元のFMドライブ200のドライブ管理情報に基づいてセル変換処理の可否を判定するセル変換可否確認処理を行う。セル変換可否確認処理によりセル変換可能と判定された場合、ストレージコントローラ100は、セル変換情報を含む応答をFMドライブ200へ送信する。セル変換情報は例えば、セル変換処理後のMLCブロック数に対するTLCブロック数の割合である。なお、セル変換情報は、セル変換処理後のTLCブロック数またはMLCブロック数を示していてもよいし、セル変換処理によって増加するTLCブロック数を示していてもよい。
 S360においてCPU320は、ストレージコントローラ100からの応答がセル変換可能を示すか否かを判定する。
 S360の結果、応答がセル変換不可能を示す場合(No)、S370においてCPU320は、リフレッシュ処理を行い、S380においてCPU320は、このリフレッシュ処理による物理アドレスの変更に従って、論物変換テーブル410の物理アドレス412を更新し、このフローを終了する。
 S360の結果、応答がセル変換可能を示す場合(Yes)、S390においてCPU320は、応答に含まれるセル変換情報に従ってセル変換処理を行う。セル変換処理においてCPU320は、セル変換情報に示された数のMLCブロックをTLCブロックに変換する。S400においてCPU320は、セル変換可否確認処理により更新されたTLC領域空き容量を、ストレージコントローラ100から取得し、処理をS330へ移行させる。
 S340の結果、スナップショットデータ量がTLC領域空き容量より小さいと判定された場合(Yes)、S410においてCPU320は、リフレッシュ処理を行う。
 S420においてCPU320は、スナップショットデータ量がTLC領域空き容量より小さい間、スナップショット世代管理テーブル420内の古い世代から順にスナップショットデータを選択し、選択されたスナップショットデータを同一のFMドライブ200内のTLC領域へ移動する。
 S430においてCPU320は、リフレッシュ処理による物理アドレスの変更に従って、論物変換テーブル410内の物理アドレス412を、リフレッシュ処理による移動先の物理アドレスに変更する。S440においてCPU320は、スナップショットデータの移動に従って、スナップショット世代管理テーブル420内の物理アドレス423を、スナップショットデータの移動先の物理アドレスに変更し、スナップショット世代管理テーブル420内のTLCフラグ425を1に変更し、このフローを終了する。
 以上の第1移動処理によれば、リフレッシュ処理を契機としてスナップショットデータをMLC領域からTLC領域へ移動させることができる。
 前述のセル変換可否確認処理の一例について説明する。
 ストレージコントローラ100は、FMドライブ200からセル変換可否確認要求を受信すると、当該FMドライブを対象FMドライブとし、対象FMドライブのMLCブロックをTLCブロックへ変換したと仮定して残消去可能回数の予測値を算出し、残消去可能回数の予測値に基づいてセル変換処理の可否を判定する。例えば、ストレージコントローラ100は、対象FMドライブの予め設定された目標寿命と稼働時間に基づいて、対象FMドライブ内の全ブロックの残消去可能回数の合計の目標値である合計目標値を算出する。その後、ストレージコントローラ100は、残消去可能回数の降順に対象FMドライブ内のMLCブロックを選択ブロックとして選択し、選択ブロックがTLCブロックに変換された場合の全ブロックの残消去可能回数の合計の予測値である合計予測値を算出する。例えば、ストレージコントローラ100は、選択ブロックの残消去可能回数に、予め設定された係数を乗ずることで、選択の残消去可能回数の予測値を算出し、選択ブロックの残消去可能回数を予測値に置き換えることで合計予測値を算出する。係数は例えば、1/10である。その後、ストレージコントローラ100は、合計予測値が合計目標値以下であるか否かを判定する。合計予測値が合計目標値以下である場合、選択ブロックの残消去可能回数に係数を乗ずることで、新たな残消去可能回数を算出し、選択ブロックを変換ブロックとして選択する。その後、ストレージコントローラ100は、次の選択ブロックの選択と、合計予測値の算出と、合計予測値の判定とを繰り返す。
 合計予測値が合計目標値を超えた場合、ストレージコントローラ100は、全ての変換ブロックの容量を1.5倍にすることで、対象FMドライブの容量を変更する。
 変換ブロックが1つも選択されていない場合、ストレージコントローラ100は、セル変換不可を示す応答を対象FMドライブへ送信する。少なくとも1つの変換ブロックが選択された場合、ストレージコントローラ100は、変換ブロック数に基づいてMLCブロック数とTLCブロック数の割合を更新し、その割合をセル変換情報に含め、変換ブロック数に基づいて、ドライブ管理情報におけるTLC領域空き容量を更新する。その後、ストレージコントローラ100は、セル変換情報を含む応答を、対象FMドライブへ送信する。
 なお、ストレージコントローラ100は、予め設定された残消去可能回数閾値以上の残消去可能回数を持つMLCブロックを、変換ブロックとして選択してもよい。この場合、スナップショットデータを書き込まれたTLCブロックに対する書き換えが発生しないことから、残消去可能回数閾値を十分小さくすることができる。
 また、前述のS350において、対象FMドライブのCPU320は、セル変換可否確認要求を送信する代わりに、ストレージコントローラ100から合計目標値を取得し、セル変換可否確認処理を行ってもよい。
 また、CPU320は、ストレージコントローラ100からのリード要求に応じて、読み出されたデータに対して、S320の判定を行ってもよい。
 以上のセル変換可否確認処理によれば、TLC領域空き容量が不足する場合に、予め設定された変換条件を満たすMLCブロックをTLCブロックに変換することができる。
 CPU320は、空き容量の判定を契機に第2移動処理を行う。
 図10は、第2移動処理を示す。
 S510においてCPU320は、自FMドライブのMLC領域空き容量が、予め設定されたMLC領域空き容量閾値以下であるか否かを判定する。
 S510の結果、MLC領域空き容量がMLC領域空き容量閾値以下でないと判定された場合(No)、CPU320は、このフローを終了する。
 S510の結果、MLC領域空き容量がMLC領域空き容量閾値以下であると判定された場合(Yes)、S520においてCPU320は、前述のS340と同様にして、スナップショットデータ量を算出する。
 S530においてCPU320は、スナップショットデータ量がTLC領域空き容量よりも小さいか否かを判定する。
 S530の結果、スナップショットデータ量がTLC領域空き容量以上であると判定された場合(No)、S540においてCPU320は、リクラメーション処理を行う。リクラメーション処理は、有効データをMLCブロックからMLCブロックへ移動させる。S550においてCPU320は、リクラメーション処理により変更された物理アドレスに従って、論物変換テーブル410の物理アドレス412を更新し、このフローを終了する。
 S530の結果、スナップショットデータ量がTLC領域空き容量よりも小さいと判定された場合(Yes)、S560においてCPU320は、リクラメーション処理を行う。S570においてCPU320は、スナップショットデータ量がTLC領域空き容量より小さい間、スナップショット世代管理テーブル420内の古い世代から順にスナップショットデータを選択し、選択されたスナップショットデータを同一のFMドライブ200内のTLC領域へ移動する。
 S580においてCPU320は、リクラメーション処理による物理アドレスの変更に従って、論物変換テーブル410の物理アドレス412を、リクラメーション処理による移動先の物理アドレスに変更する。S580においてCPU320は、スナップショットデータの移動に従って、スナップショット世代管理テーブル420内の物理アドレス423を、スナップショットデータの移動先の物理アドレスに変更し、スナップショット世代管理テーブル420内のTLCフラグ425を1に変更し、このフローを終了する。
 以上の第2移動処理によれば、リクラメーション処理を契機としてスナップショットデータをMLC領域からTLC領域へ移動させることができる。
 ストレージシステム10は、FMドライブ200のバックアップを別のFMドライブ200に作成するバックアップ処理を行ってもよい。バックアップ処理の開始時、FMドライブ200である旧ドライブと、別のFMドライブ200であるアーカイブドライブとが、ストレージコントローラ100に接続されている。旧ドライブのバックアップがアーカイブドライブに作成されると、FMドライブ200である新ドライブが、旧ドライブの代わりにストレージコントローラ100に接続され、アーカイブドライブのバックアップが新ドライブに作成される。
 図11は、バックアップ処理における旧ドライブの動作を示す。
 S610においてCPU320は、旧ドライブの劣化を示す劣化度が予め設定された劣化度閾値以上であるか否かを判定する。劣化度は例えば、旧ドライブ内の全ブロックのPE回数の平均値(平均PE回数)である。
 S610の結果、劣化度が劣化度閾値以上でないと判定された場合(No)、CPU320は、このフローを終了する。
 S610の結果、劣化度が劣化度閾値以上であると判定された場合(Yes)、S620においてCPU320は、ストレージコントローラ100へバックアップ要求を送信し、S630において旧ドライブは、メモリ310内のスナップショット世代管理テーブル420をスナップショット情報として、ストレージコントローラ100へ送信する。
 S750においてCPU320は、ストレージコントローラ100からリード要求を受信すると、FMチップ210内の全データを読み出し、読み出されたデータをストレージコントローラ100へ送信する。
 以上の旧ドライブの動作によれば、旧ドライブは、寿命に到達したことを検出し、交換を要求することができる。
 図12は、バックアップ処理を示す。
 この図において、図11と共通の符号が付された処理は、同様の処理である。
 S710においてストレージコントローラ100は、旧ドライブのMLCブロック数とTLCブロック数の関係を示すセル変換情報をアーカイブドライブへ送信する。S720においてセル変換情報を受信したアーカイブドライブは、セル変換処理を行うことでMLCブロック数とTLCブロック数を調整する。S730においてアーカイブドライブは、セル変換処理の完了通知をストレージコントローラ100へ送信する。
 S740においてストレージコントローラ100は、完了通知を受信すると、全データのリード要求を旧ドライブへ送信する。S750において旧ドライブは、リード要求を受信すると、FMチップ210内の全データを読み出し、読み出されたデータをストレージコントローラ100へ送信する。S760においてストレージコントローラ100は、受信した全データのライト要求と、スナップショット情報のライト要求とを、アーカイブドライブへ送信する。これにより、アーカイブドライブは、受信したデータをFMチップ210へ書き込み、受信したスナップショット情報をメモリ310へ書き込む。S770においてストレージコントローラ100は、アーカイブドライブの状態に従って、ドライブ管理情報、物理領域管理情報等を更新する。
 S800においてストレージシステム10の管理者により、旧ドライブが新ドライブに交換される。
 S810においてストレージコントローラ100は、旧ドライブのMLCブロック数とTLCブロック数を示すセル変換情報を、新ドライブへ送信する。S820においてセル変換情報を受信した新ドライブは、セル変換処理を行うことで、MLCブロック数とTLCブロック数を調整する。S830において新ドライブは、セル変換処理の完了通知をストレージコントローラ100へ送信する。
 S840においてストレージコントローラ100は、完了通知を受信すると、アーカイブドライブへ全データのリード要求を送信する。S850においてアーカイブドライブは、FMチップ210内の全データをストレージコントローラ100へ送信する。S860においてストレージコントローラ100は、受信した全データのライト要求と、スナップショット情報のライト要求とを、新ドライブへ送信する。これにより、新ドライブは、受信したデータをFMチップ210へ書き込み、受信したスナップショット情報をメモリ310へ書き込む。これにより、新ドライブのFMチップ210とメモリ310内の情報は、旧ドライブのFMチップ210とメモリ310内の情報に一致する。S870においてストレージコントローラ100は、新ドライブの状態に合わせて、ドライブ管理情報、物理領域管理情報等を更新する。
 以上のバックアップ処理によれば、FMドライブに障害がある場合、そのFMドライブを交換し、交換前のFMドライブのデータとスナップショットを交換後のFMドライブに再現することができる。
 プロセッサは、CPU120等に対応する。記憶デバイスは、FMドライブ200等に対応する。不揮発性半導体メモリは、FMチップ210等に対応する。デバイスコントローラは、ドライブコントローラ300等に対応する。不揮発性半導体メモリの状態は、ドライブ管理情報、物理領域管理情報等に対応する。論物変換情報は、論物変換テーブル410等に対応する。スナップショット情報は、スナップショット世代管理テーブル420等に対応する。リフレッシュ条件は、検査リードによる障害ビット数が、予め設定された閾値を超えること、等に対応する。リクラメーション条件は、MLC領域空き容量が、予め設定された閾値以下になること、等に対応する。劣化条件は、平均PE回数が、予め設定された閾値を超えること、等に対応する。関係情報は、セル変換情報等に対応する。
 以上、本発明の実施形態を説明したが、これは本発明の説明のための例示であって、本発明の範囲を上記構成に限定する趣旨ではない。本発明は、他の種々の形態でも実施する事が可能である。
 10…ストレージシステム、 20…ホスト、 100…ストレージコントローラ、 110…メモリ、 120…CPU、 130…ホストI/F、 140…ドライブI/F、 150…スイッチ、 200…FMドライブ、 210…FMチップ、 220…有効データ格納領域、 230…スナップショットデータ格納領域、 240…仮想ボリューム、 300…ドライブコントローラ、 310…メモリ、 320…CPU、 330…ストレージI/F、 340…FM I/F、 350…スイッチ

Claims (11)

  1.  第1記憶デバイスと、
     前記第1記憶デバイスに接続されるプロセッサと、
    を備え、
     前記第1記憶デバイスは、
      不揮発性半導体メモリと、
      前記不揮発性半導体メモリに接続されるデバイスコントローラと、
    を含み、
     不揮発性半導体メモリは、複数のブロックを含み、
     各ブロックは、所定のセル数のセルを含み、
     前記複数のブロックは、複数の小容量ブロックと、複数の大容量ブロックとを含むように構成されており、
     各小容量ブロックは、nビットのデータを格納できるセルの集合であり、nは1以上の整数であり、
     各大容量ブロックは、mビットのデータを格納できるセルの集合であり、mはnよりも大きい整数であり、
     前記プロセッサは、スナップショットを取得することを要求するスナップショット取得要求を前記デバイスコントローラへ送信するように構成されており、
     前記デバイスコントローラは、前記スナップショット取得要求を受信する前に、第1論理領域へ第1データを書き込むことを要求する第1ライト要求を前記プロセッサから受信した場合、前記複数の小容量ブロックの中の第1小容量ブロックへ第1データを書き込み、
     前記デバイスコントローラは、前記スナップショット取得要求を受信した後に、前記第1論理領域へ第2データを書きこむことを要求する第2ライト要求を受信した場合、前記複数の小容量ブロックの中の第2小容量ブロックへ第2データを書き込み、
     前記デバイスコントローラは、前記不揮発性半導体メモリの状態が、予め設定された移動条件を満たす場合、前記第1小容量ブロック内の前記第1データを、前記複数の大容量ブロックの中の第1大容量ブロックへ移動させる、
    情報処理システム。
  2.  前記デバイスコントローラは、前記第2データの書き込みに応じて、前記第1論理領域と前記第1小容量ブロックの関連付けを示すスナップショット情報を格納し、前記第1論理領域と前記第2小容量ブロックの関連付けを示す論物変換情報を格納する、
    請求項1に記載の情報処理システム。
  3.  前記デバイスコントローラは、前記不揮発性半導体メモリの状態が、予め設定されたリフレッシュ条件を満たす場合、リフレッシュ処理を行い、
     前記デバイスコントローラは、前記不揮発性半導体メモリの状態が前記リフレッシュ条件を満たし、且つ前記複数の大容量ブロックの空き容量が前記第1データのサイズ以上である場合、前記不揮発性半導体メモリの状態が前記移動条件を満たすと判定する、
    請求項12に記載の情報処理システム。
  4.  前記デバイスコントローラは、前記不揮発性半導体メモリの状態が、予め設定されたリクラメーション条件を満たす場合、リクラメーション処理を行い、
     前記デバイスコントローラは、前記不揮発性半導体メモリの状態が前記リクラメーション条件を満たし、且つ前記複数の大容量ブロックの空き容量が前記第1データのサイズ以上である場合、前記不揮発性半導体メモリの状態が前記移動条件を満たすと判定する、
    請求項13に記載の情報処理システム。
  5.  前記スナップショット情報は、前記スナップショット情報に示されたデータの更新の世代を示すように構成されており、
     前記デバイスコントローラは、前記不揮発性半導体メモリの状態が前記移動条件を満たすと判定された場合、前記スナップショット情報から世代が古い順に、前記複数の大容量ブロックの空き容量以下のデータを選択し、前記選択されたデータを、前記複数の大容量ブロックへ移動させる、
    請求項24に記載の情報処理システム。
  6.  前記デバイスコントローラは、各ブロックを、小容量ブロックと大容量ブロックの何れか一つに設定することができ、
     前記プロセッサは、小容量ブロックの数と大容量ブロックの数の関係を示す関係情報を、前記第1記憶デバイスへ送信するように構成されており、
     前記デバイスコントローラは、前記関係情報に基づいて、前記不揮発性半導体メモリ内の特定ブロックの設定を変更することで、小容量ブロックの数と大容量ブロックの数を変更する、
    請求項15に記載の情報処理システム。
  7.  前記デバイスコントローラは、前記不揮発性半導体メモリの状態が前記リフレッシュ条件を満たし、且つ前記複数の大容量ブロックの空き容量が前記第1データのサイズよりも小さく、且つ大容量ブロックの数の増加が可能であると判定された場合、前記不揮発性半導体メモリにおける大容量ブロックの数を増加させる、
    請求項36に記載の情報処理システム。
  8.  前記デバイスコントローラは、前記不揮発性半導体メモリの状態が前記リフレッシュ条件を満たし、且つ前記複数の大容量ブロックの空き容量が前記第1データのサイズよりも小さい場合、大容量ブロックの数の増加が可能であるか否かの問い合わせを前記プロセッサへ送信し、
     前記プロセッサは、前記関係情報に基づいて、大容量ブロックの数の増加が可能であるか否かを判定し、大容量ブロックの数の増加が可能であると判定された場合、大容量ブロックの数を増加させることで関係情報を変更し、前記変更された関係情報を前記記憶デバイスへ送信し、
     前記デバイスコントローラは、前記変更された関係情報に基づいて、前記不揮発性半導体メモリにおける大容量ブロックの数を増加させる、
    請求項37に記載の情報処理システム。
  9.  第2記憶デバイスを更に備え、
     前記第1記憶デバイスのデバイスコントローラは、前記第1記憶デバイスの不揮発性半導体メモリの劣化が、予め設定された劣化条件を満たす場合、前記プロセッサへ通知を送信し、
     前記プロセッサは、前記通知に応じて、前記関係情報を前記第2記憶デバイスへ送信し、
     前記第2記憶デバイスのデバイスコントローラは、前記関係情報に基づいて、前記第2記憶デバイスの不揮発性半導体メモリにおける小容量ブロックの数と大容量ブロックの数を、前記第1記憶デバイスの不揮発性半導体メモリにおける小容量ブロックの数と大容量ブロックの数に夫々一致させ、
     前記プロセッサは、前記通知の後、前記第1記憶デバイス内のスナップショット情報を、前記第1記憶デバイスから取得し、
     前記プロセッサは、前記一致の後、前記第1記憶デバイス内のデータを、前記第1記憶デバイスから取得し、
     前記プロセッサは、前記取得されたスナップショット情報を、前記第2記憶デバイスへ送信し、
     前記プロセッサは、前記取得されたデータを、前記第2記憶デバイスへ送信し、
     前記第2記憶デバイスのデバイスコントローラは、前記送信されたスナップショット情報を格納し、
     前記第2記憶デバイスのデバイスコントローラは、前記送信されたデータを前記第2記憶デバイスの不揮発性半導体メモリへ書き込む、
    請求項28に記載の情報処理システム。
  10.  前記デバイスコントローラは、
      前記スナップショット取得要求の後、前記スナップショットを示す仮想ボリュームを作成し、
      前記仮想ボリュームから第2論理領域を読み出すリード要求を受信した場合、前記第2論理領域がスナップショット情報に示されているか否かを判定し、前記第2論理領域がスナップショット情報に示されている場合、前記スナップショット情報により前記第2論理領域に関連付けられた物理領域からデータを読み出し、前記第2論理領域がスナップショット情報に示されていない場合、前記論物変換情報により前記第2論理領域に関連付けられた物理領域からデータを読み出す、
    請求項29に記載の情報処理システム。
  11.  不揮発性半導体メモリを含む第1記憶デバイスへデータを格納するためのデータ格納方法であって、不揮発性半導体メモリは、複数のブロックを含み、各ブロックは、所定のセル数のセルを含み、
     前記第1記憶デバイスを用いて、スナップショットを取得することを要求するスナップショット取得要求を受信する前に、第1論理領域へ第1データを書き込むことを要求する第1ライト要求を受信した場合、複数の小容量ブロックの中の第1小容量ブロックへ第1データを書き込み、前記複数のブロックは、前記複数の小容量ブロックと、複数の大容量ブロックとを含むように構成されており、各小容量ブロックは、nビットのデータを格納できるセルの集合であり、nは1以上の整数であり、各大容量ブロックは、mビットのデータを格納できるセルの集合であり、mはnよりも大きい整数であり、
      前記第1記憶デバイスを用いて、前記スナップショット取得要求を受信した後に、前記第1論理領域へ第2データを書きこむことを要求する第2ライト要求を受信した場合、前記複数の小容量ブロックの中の第2小容量ブロックへ第2データを書き込み、
      前記第1記憶デバイスを用いて、前記不揮発性半導体メモリの状態が、予め設定された移動条件を満たす場合、前記第1小容量ブロック内の前記第1データを、前記複数の大容量ブロックの中の第1大容量ブロックへ移動させる、
    ことを備える、
    データ格納方法。
PCT/JP2016/076890 2016-09-13 2016-09-13 情報処理システムおよびデータ格納方法 WO2018051387A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/076890 WO2018051387A1 (ja) 2016-09-13 2016-09-13 情報処理システムおよびデータ格納方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/076890 WO2018051387A1 (ja) 2016-09-13 2016-09-13 情報処理システムおよびデータ格納方法

Publications (1)

Publication Number Publication Date
WO2018051387A1 true WO2018051387A1 (ja) 2018-03-22

Family

ID=61619395

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/076890 WO2018051387A1 (ja) 2016-09-13 2016-09-13 情報処理システムおよびデータ格納方法

Country Status (1)

Country Link
WO (1) WO2018051387A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111949202A (zh) * 2019-05-17 2020-11-17 北京兆易创新科技股份有限公司 一种存储器及其控制方法和控制装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012068986A (ja) * 2010-09-24 2012-04-05 Toshiba Corp メモリシステム
JP2013541743A (ja) * 2011-02-02 2013-11-14 株式会社日立製作所 ストレージシステムおよびそのデータ制御方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012068986A (ja) * 2010-09-24 2012-04-05 Toshiba Corp メモリシステム
JP2013541743A (ja) * 2011-02-02 2013-11-14 株式会社日立製作所 ストレージシステムおよびそのデータ制御方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111949202A (zh) * 2019-05-17 2020-11-17 北京兆易创新科技股份有限公司 一种存储器及其控制方法和控制装置

Similar Documents

Publication Publication Date Title
US11429307B2 (en) Apparatus and method for performing garbage collection in a memory system
US9946483B2 (en) Efficiently managing unmapped blocks to extend life of solid state drive with low over-provisioning
US10817418B2 (en) Apparatus and method for checking valid data in memory system
US9946473B2 (en) Efficiently managing unmapped blocks to extend life of solid state drive
US11138080B2 (en) Apparatus and method for reducing cell disturb in an open block of a memory system during a recovery procedure
US10963160B2 (en) Apparatus and method for checking valid data in block capable of storing large volume data in memory system
US11645213B2 (en) Data processing system allocating memory area in host as extension of memory and operating method thereof
US20210279180A1 (en) Apparatus and method for controlling map data in a memory system
US20200034081A1 (en) Apparatus and method for processing data in memory system
KR20210000877A (ko) 메모리 시스템의 입출력 성능을 향상시키는 장치 및 방법
US11681633B2 (en) Apparatus and method for managing meta data in memory system
US20210157514A1 (en) Apparatus and method for improving write throughput of memory system
CN109727630B (zh) 存储系统及其操作方法
KR20210030599A (ko) 데이터를 분산 리드할 수 있는 메모리 시스템 및 메모리 시스템의 동작방법
US20200401341A1 (en) Storage System and Method for Memory Backlog Hinting for Variable Capacity
US11822426B2 (en) Memory system, data processing system and operation method of the same
US10846022B2 (en) Memory system and operation method for the same
KR20210124705A (ko) 메모리 시스템 내 맵 정보를 제어하는 장치 및 방법
US11200960B2 (en) Memory system, data processing system and operation method of the same
KR20220090020A (ko) 비휘발성 메모리 시스템이 생성한 메타데이터를 전송하는 장치 및 방법
KR20220077041A (ko) 메모리 시스템 내 저장된 데이터를 유지하는 장치 및 방법
US20230333750A1 (en) Apparatus and method for power-loss data protection in a system
WO2018051387A1 (ja) 情報処理システムおよびデータ格納方法
US20210365183A1 (en) Apparatus and method for increasing operation efficiency in data processing system
US11348646B2 (en) Apparatus and method for managing program operation time and write latency in memory system

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16916173

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16916173

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP