JP2021114039A - メモリシステム - Google Patents
メモリシステム Download PDFInfo
- Publication number
- JP2021114039A JP2021114039A JP2020005292A JP2020005292A JP2021114039A JP 2021114039 A JP2021114039 A JP 2021114039A JP 2020005292 A JP2020005292 A JP 2020005292A JP 2020005292 A JP2020005292 A JP 2020005292A JP 2021114039 A JP2021114039 A JP 2021114039A
- Authority
- JP
- Japan
- Prior art keywords
- write
- data
- block
- storage area
- buffer
- 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.)
- Granted
Links
- 238000003860 storage Methods 0.000 claims abstract description 211
- 238000000034 method Methods 0.000 claims description 38
- 230000004044 response Effects 0.000 claims description 31
- 230000007704 transition Effects 0.000 claims description 10
- 230000002950 deficient Effects 0.000 abstract description 9
- 238000007726 management method Methods 0.000 description 78
- 230000003068 static effect Effects 0.000 description 56
- 238000010586 diagram Methods 0.000 description 20
- 238000012546 transfer Methods 0.000 description 20
- 230000008569 process Effects 0.000 description 18
- 230000002779 inactivation Effects 0.000 description 15
- 230000006870 function Effects 0.000 description 9
- 230000000052 comparative effect Effects 0.000 description 5
- 238000013507 mapping Methods 0.000 description 5
- 238000013403 standard screening design Methods 0.000 description 5
- 238000013500 data storage Methods 0.000 description 4
- 230000010365 information processing Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 101100481703 Arabidopsis thaliana TMK2 gene Proteins 0.000 description 2
- 230000003321 amplification Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000013523 data management Methods 0.000 description 2
- 239000004744 fabric Substances 0.000 description 2
- 238000003199 nucleic acid amplification method Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 101100481704 Arabidopsis thaliana TMK3 gene Proteins 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7203—Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7204—Capacity control, e.g. partitioning, end-of-life degradation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7209—Validity control, e.g. using flags, time stamps or sequence numbers
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
- Read Only Memory (AREA)
Abstract
Description
図1は、実施形態に係るメモリシステムとホストとの関係を示すブロック図である。
SSD3は、コントローラ4と、不揮発性メモリ(例えば、NAND型フラッシュメモリ5)とを備える。SSD3は、ランダムアクセスメモリ、例えば、DRAM6も備えていてもよい。
コントローラ4は、NAND型フラッシュメモリ5のデータ管理およびブロック管理を実行するように構成されたフラッシュトランスレーション層(FTL)として機能し得る。このFTLによって実行されるデータ管理には、(1)論理アドレスそれぞれとNAND型フラッシュメモリ5の物理アドレスそれぞれとの間の対応関係を示すマッピング情報の管理、(2)NAND型フラッシュメモリ5の制約(例えば、ページ単位のリード/ライト動作とブロック単位の消去動作)を隠蔽するための処理、等が含まれる。論理アドレスは、SSD3の論理アドレス空間内の論理アドレスをアドレス指定するためにホスト2によって使用されるアドレスである。この論理アドレスとしては、LBA(logical block address(addressing))が使用され得る。
さらに、インアクティベートコマンド(例えばゾーンクローズコマンド)をホスト2から受信する度、フラッシュマネジメント部21は、以下の処理を実行する。
スタティックSLCバッファは、NAND型フラッシュメモリ5に含まれる複数のブロックから割り当てられた固定数のブロックそれぞれをSLCブロックとして使用する不揮発性バッファである。
図16では、共有フラッシュバッファ201としてQLCバッファ301が使用されている。QLCバッファ301は、基本的には、上述のダイナミックSLCバッファに対する制御方法と同様の制御方法によって制御される。
まず、コントローラ4は、NAND型フラッシュメモリ5内の複数のブロックのうちの複数の第1のブロックの集合をQLC領域202用に割り当て、さらに、NAND型フラッシュメモリ5内の複数のブロックのうちの複数の第2のブロックの集合をSLCバッファ401用に割り当てる(ステップS31)。SLCバッファ401用に割り当てられる第2のブロックの数は固定数であり、これら第2のブロックはスタティックSLCバッファ401Aとして使用される。SLCバッファ401用に割り当てられる第2のブロックの数は、QLC領域202用に割り当てられる第1のブロックの数よりも少ない。
C>0
B<A
QLC領域202に書き込まれるデータの総量がA(=B+C)[TB]である。
Claims (15)
- ホストに接続可能なメモリシステムであって、
不揮発性メモリと、
前記不揮発性メモリに電気的に接続されたコントローラであって、
前記不揮発性メモリに含まれる複数の第1の記憶領域から割り当てられた第1の書き込み先記憶領域にデータを書き込むための第1のライト要求それぞれを前記ホストから受信したことに応じて、前記受信した第1のライト要求の集合に関連付けられているライトデータを前記ホストのライトバッファから前記メモリシステム内の内部バッファに転送し、前記内部バッファに転送された前記ライトデータを、メモリセル当たりにmビットのデータを書き込むための第1の書き込みモードで前記第1の書き込み先記憶領域に書き込み、
前記複数の第1の記憶領域から割り当てられた第2の書き込み先記憶領域にデータを書き込むための第2のライト要求それぞれを前記ホストから受信したことに応じて、前記受信した第2のライト要求の集合に関連付けられているライトデータを前記ホストのライトバッファから前記内部バッファに転送し、前記内部バッファに転送された前記ライトデータを前記第1の書き込みモードで前記第2の書き込み先記憶領域に書き込み、
前記複数の第1の記憶領域のいずれか一つの状態を、データの書き込みが可能な書き込み先記憶領域として割り当てられている第1の状態から、書き込みが中断された第2の状態に遷移させるための第1の要求を前記ホストから受信する度、前記第1の要求によって指定された第1の記憶領域に対する受信済みのライト要求に関連付けられたライトデータのうち、前記内部バッファに未転送の残りのライトデータを前記ホストのライトバッファから取得し、前記残りのライトデータを、メモリセル当たりにnビットのデータを書き込むための第2の書き込みモードで、前記複数の第1の記憶領域によって共有される、前記不揮発性メモリ内に含まれる第2の記憶領域に書き込み、前記第1の要求によって指定された前記第1の記憶領域の状態を前記第1の状態から前記第2の状態に遷移させるように構成され、
前記mは2以上の整数、前記nは1以上且つ前記m以下の整数である、メモリシステム。 - 前記不揮発性メモリは各々が複数のページを含む複数のブロックを含み、
前記第1の書き込みモードは、各第1の記憶領域に割り当てられたブロックの複数のページの一つのページに書き込まれたデータの読み出しが前記一つのページに後続する1以上のページへのデータの書き込み後に可能となる書き込みモードであり、
前記コントローラは、
前記第1の要求によって指定された前記第1の記憶領域に割り当てられたブロックから読み出し可能になっていない第1のライトデータを前記内部バッファから取得し、前記残りのライトデータを、前記第1のライトデータと共に、前記第2の書き込みモードで、前記第2の記憶領域に書き込むように構成されている請求項1記載のメモリシステム。 - 前記nは前記mと等しく、
前記第2の書き込みモードは、前記第2の記憶領域に割り当てられたブロックの複数のページの一つのページに書き込まれたデータの読み出しが前記一つのページに後続する1以上のページへのデータの書き込み後に可能となる書き込みモードであり、
前記コントローラは、
前記残りのライトデータが前記第2の記憶領域に割り当てられたブロックから読み出し可能になった場合、前記残りのライトデータに対応する前記受信済みの一つ以上のライト要求の完了を示す応答を前記ホストに送信するように構成されている請求項2記載のメモリシステム。 - 前記nは前記m未満であり、
前記第2の書き込みモードは、前記第2の記憶領域に割り当てられたブロックの複数のページ内の一つのページに書き込まれたデータの読み出しが前記一つのページへの前記データの書き込みのみによって可能になる書き込みモードであり、
前記コントローラは、
前記残りのライトデータを前記第2の記憶領域に割り当てられたブロックに書き込んだことに応じて、前記残りのライトデータに対応する前記受信済みの一つ以上のライト要求の完了を示す応答を前記ホストに送信するように構成されている請求項2記載のメモリシステム。 - 前記nは前記m未満であり、
前記第2の書き込みモードは、前記第2の記憶領域に割り当てられたブロックの複数のページ内の一つのページに書き込まれたデータの読み出しが前記一つのページへの前記データの書き込みのみによって可能になる書き込みモードであり、
前記コントローラは、
前記複数のブロックのうちの複数の第1のブロックの集合を前記複数の第1の記憶領域用に割り当て、前記複数のブロックのうちの複数の第2のブロックの集合を前記第2の記憶領域用に割り当て、前記第2のブロックの数は前記第1のブロックの数よりも少なく、
前記第1の要求を前記ホストから受信する度、前記複数の第2のブロックから割り当てられた、前記第2の記憶領域の書き込み先ブロックに、前記残りのデータの書き込みを行い、
前記複数の第2のブロックのうち利用可能な残りの第2のブロックの数が閾値よりも減少した場合、前記複数の第1のブロックの集合に含まれる一つのブロックを前記第2の記憶領域の書き込み先ブロックとして割り当て、前記第2の記憶領域の前記書き込み先ブロックとして割り当てられた前記一つのブロックに、前記残りのデータを前記第2の書き込みモードで書き込むように構成されている請求項2記載のメモリシステム。 - 前記第2の記憶領域の前記書き込み先ブロックとして割り当てられた前記一つのブロック全体がデータで満たされた場合、前記コントローラは、前記複数の第1のブロックの集合に含まれる別の一つのブロックを前記第2の記憶領域の新たな書き込み先ブロックとして割り当てるように構成されている請求項5記載のメモリシステム。
- 前記コントローラは、
前記第2の状態に遷移された前記第1の記憶領域にデータを書き込むためのライト要求を前記ホストから受信した場合、
前記指定された第1の記憶領域の状態を前記第2の状態から前記第1の状態に遷移させ、
前記第2の状態に遷移された前記第1の記憶領域に対応する前記残りのライトデータを前記第2の記憶領域から読み出し、読み出した前記残りのライトデータを前記内部バッファに格納するように構成されている請求項1記載のメモリシステム。 - 前記コントローラは、
前記ホストから受信されるライト要求それぞれを、前記第1の書き込み先記憶領域にライトデータを書き込むための前記第1のライト要求の第1のグループと、前記第2の書き込み先記憶領域にライトデータを書き込むための前記第2のライト要求の第2のグループとに分類し、
前記第1のグループに属する前記第1のライト要求の集合に関連付けられたライトデータの総サイズが各第1の記憶領域の最小書き込みサイズに達した場合、前記最小書き込みサイズを有する、前記第1のライト要求の集合に関連付けられたライトデータを、前記ホストのライトバッファから前記内部バッファに転送し、
前記第2のグループに属する前記第2のライト要求の集合に関連付けられたライトデータの総サイズが前記最小書き込みサイズに達した場合、前記最小書き込みサイズを有する、前記第2のライト要求の集合に関連付けられたライトデータを、前記ホストのライトバッファから前記内部バッファに転送するように構成されている請求項1記載のメモリシステム。 - 前記ホストの前記ライトバッファは不揮発性ライトバッファである請求項1記載のメモリシステム。
- 不揮発性メモリを含むメモリシステムを制御する制御方法であって、
前記不揮発性メモリに含まれる複数の第1の記憶領域から割り当てられた第1の書き込み先記憶領域にデータを書き込むための第1のライト要求それぞれをホストから受信したことに応じて、前記受信した第1のライト要求の集合に関連付けられているライトデータを前記ホストのライトバッファから前記メモリシステム内の内部バッファに転送し、前記内部バッファに転送された前記ライトデータを、メモリセル当たりにmビットのデータを書き込むための第1の書き込みモードで前記第1の書き込み先記憶領域に書き込むことと、
前記複数の第1の記憶領域から割り当てられた第2の書き込み先記憶領域にデータを書き込むための第2のライト要求それぞれを前記ホストから受信したことに応じて、前記受信した第2のライト要求の集合に関連付けられているライトデータを前記ホストのライトバッファから前記内部バッファに転送し、前記内部バッファに転送された前記ライトデータを前記第1の書き込みモードで前記第2の書き込み先記憶領域に書き込むことと、
前記複数の第1の記憶領域のいずれか一つの状態を、データの書き込みが可能な書き込み先記憶領域として割り当てられている第1の状態から、書き込みが中断された第2の状態に遷移させるための第1の要求を前記ホストから受信する度、前記第1の要求によって指定された第1の記憶領域に対する受信済みの一つ以上のライト要求に関連付けられたライトデータのうち、前記内部バッファに未転送の残りのライトデータを前記ホストのライトバッファから取得し、前記残りのライトデータを、メモリセル当たりにnビットのデータを書き込むための第2の書き込みモードで、前記複数の第1の記憶領域によって共有される、前記不揮発性メモリ内に含まれる第2の記憶領域に書き込み、前記第1の要求によって指定された前記第1の記憶領域の状態を前記第1の状態から前記第2の状態に遷移させることとを具備し、
前記mは2以上の整数、前記nは1以上且つ前記m以下の整数である、制御方法。 - 前記不揮発性メモリは各々が複数のページを含む複数のブロックを含み、
前記第1の書き込みモードは、各第1の記憶領域に割り当てられたブロックの複数のページの一つのページに書き込まれたデータの読み出しが前記一つのページに後続する1以上のページへのデータの書き込み後に可能となる書き込みモードであり、
前記残りのライトデータを前記第2の記憶領域に書き込むことは、前記第1の要求によって指定された前記第1の記憶領域に割り当てられたブロックから読み出し可能になっていない第1のライトデータを前記内部バッファから取得し、前記残りのライトデータを、前記第1のライトデータと共に、前記第2の書き込みモードで、前記第2の記憶領域に書き込むことを含む請求項10記載の制御方法。 - 前記nは前記mと等しく、
前記第2の書き込みモードは、前記第2の記憶領域に割り当てられたブロックの複数のページの一つのページに書き込まれたデータの読み出しが前記一つのページに後続する1以上のページへのデータの書き込み後に可能となる書き込みモードであり、
前記残りのライトデータが前記第2の記憶領域に割り当てられたブロックから読み出し可能になった場合、前記残りのライトデータに対応する前記受信済みの一つ以上のライト要求の完了を示す応答を前記ホストに送信することをさらに具備する請求項11記載の制御方法。 - 前記nは前記m未満であり、
前記第2の書き込みモードは、前記第2の記憶領域に割り当てられたブロックの複数のページ内の一つのページに書き込まれたデータの読み出しが前記一つのページへの前記データの書き込みのみによって可能になる書き込みモードであり、
前記残りのライトデータを前記第2の記憶領域に割り当てられたブロックに書き込んだことに応じて、前記残りのライトデータに対応する前記受信済みの一つ以上のライト要求の完了を示す応答を前記ホストに送信することをさらに具備する請求項11記載の制御方法。 - 前記nは前記m未満であり、
前記第2の書き込みモードは、前記第2の記憶領域に割り当てられたブロックの複数のページ内の一つのページに書き込まれたデータの読み出しが前記一つのページへの前記データの書き込みのみによって可能になる書き込みモードであり、
前記複数のブロックのうちの複数の第1のブロックの集合を前記複数の第1の記憶領域用に割り当て、前記複数のブロックのうちの複数の第2のブロックの集合を前記第2の記憶領域用に割り当てることと、前記第2のブロックの数は前記第1のブロックの数よりも少なく、
前記第1の要求を前記ホストから受信する度、前記複数の第2のブロックから割り当てられた、前記第2の記憶領域の書き込み先ブロックに、前記残りのデータの書き込みを行うことと、
前記複数の第2のブロックのうち利用可能な残りの第2のブロックの数が閾値よりも減少した場合、前記複数の第1のブロックの集合に含まれる一つのブロックを前記第2の記憶領域の書き込み先ブロックとして割り当て、前記第2の記憶領域の前記書き込み先ブロックとして割り当てられた前記一つのブロックに、前記残りのデータを前記第2の書き込みモードで書き込むこととをさらに具備する請求項11記載の制御方法。 - 前記第2の記憶領域の前記書き込み先ブロックとして割り当てられた前記一つのブロック全体がデータで満たされた場合、前記複数の第1のブロックの集合に含まれる別の一つのブロックを前記第2の記憶領域の新たな書き込み先ブロックとして割り当てることをさらに具備する請求項14記載の制御方法。
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020005292A JP7346311B2 (ja) | 2020-01-16 | 2020-01-16 | メモリシステム |
TW109122976A TWI741671B (zh) | 2020-01-16 | 2020-07-08 | 記憶體系統 |
CN202010765428.0A CN113138713B (zh) | 2020-01-16 | 2020-08-03 | 存储器*** |
CN202311229162.8A CN117193653A (zh) | 2020-01-16 | 2020-08-03 | 存储器*** |
US17/019,955 US11216188B2 (en) | 2020-01-16 | 2020-09-14 | Memory system controlling nonvolatile memory |
US17/536,558 US11704021B2 (en) | 2020-01-16 | 2021-11-29 | Memory system controlling nonvolatile memory |
US18/327,108 US20230305704A1 (en) | 2020-01-16 | 2023-06-01 | Memory system controlling nonvolatile memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020005292A JP7346311B2 (ja) | 2020-01-16 | 2020-01-16 | メモリシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021114039A true JP2021114039A (ja) | 2021-08-05 |
JP7346311B2 JP7346311B2 (ja) | 2023-09-19 |
Family
ID=76809253
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020005292A Active JP7346311B2 (ja) | 2020-01-16 | 2020-01-16 | メモリシステム |
Country Status (4)
Country | Link |
---|---|
US (3) | US11216188B2 (ja) |
JP (1) | JP7346311B2 (ja) |
CN (2) | CN113138713B (ja) |
TW (1) | TWI741671B (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11861202B2 (en) | 2021-03-17 | 2024-01-02 | Kioxia Corporation | Memory system |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210108107A (ko) * | 2020-02-25 | 2021-09-02 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작방법 |
US11734093B2 (en) * | 2020-06-23 | 2023-08-22 | Samsung Electronics Co., Ltd. | Storage device block-level failure prediction-based data placement |
US20220019370A1 (en) * | 2020-07-16 | 2022-01-20 | Micron Technology, Inc. | Partial zone memory unit handling in a zoned namespace of a memory device |
JP2022094705A (ja) * | 2020-12-15 | 2022-06-27 | キオクシア株式会社 | メモリシステムおよび制御方法 |
US20220300198A1 (en) * | 2020-12-31 | 2022-09-22 | Pure Storage, Inc. | Dynamic buffer for storage system |
US11422734B2 (en) | 2021-01-06 | 2022-08-23 | Western Digital Technologies, Inc. | Managing overwrite data within solid state drives |
US11748011B2 (en) * | 2021-03-31 | 2023-09-05 | Silicon Motion, Inc. | Control method of flash memory controller and associated flash memory controller and storage device |
US11733895B2 (en) * | 2021-03-31 | 2023-08-22 | Silicon Motion, Inc. | Control method of flash memory controller and associated flash memory controller and storage device |
US11809328B2 (en) * | 2021-04-01 | 2023-11-07 | Silicon Motion, Inc. | Control method of flash memory controller and associated flash memory controller and storage device |
JP2022171208A (ja) | 2021-04-30 | 2022-11-11 | キオクシア株式会社 | メモリシステムおよび制御方法 |
US11809745B2 (en) * | 2021-05-13 | 2023-11-07 | Western Digital Technologies, Inc. | Multi-fetching data for multi-pass programming within storage devices |
KR20230019716A (ko) * | 2021-08-02 | 2023-02-09 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작 방법 |
JP2023038769A (ja) * | 2021-09-07 | 2023-03-17 | キオクシア株式会社 | 半導体記憶装置 |
JP2023044135A (ja) * | 2021-09-17 | 2023-03-30 | キオクシア株式会社 | メモリシステムおよび制御方法 |
KR20230060163A (ko) * | 2021-10-27 | 2023-05-04 | 에스케이하이닉스 주식회사 | 스토리지 장치 및 그 동작 방법 |
US12014772B2 (en) | 2021-11-17 | 2024-06-18 | Samsung Electronics Co., Ltd. | Storage controller and storage device including the same |
CN114489484A (zh) * | 2021-12-27 | 2022-05-13 | 得一微电子股份有限公司 | Ssd的数据存储方法、ssd、终端设备以及存储介质 |
CN114442955B (zh) * | 2022-01-29 | 2023-08-04 | 苏州浪潮智能科技有限公司 | 全闪存储阵列的数据存储空间管理方法及装置 |
CN114625321A (zh) * | 2022-03-25 | 2022-06-14 | 阿里巴巴(中国)有限公司 | 数据写入方法以及装置 |
WO2023235295A1 (en) * | 2022-06-03 | 2023-12-07 | Pure Storage, Inc. | Dynamic buffer for storage system |
US11853203B1 (en) * | 2022-06-23 | 2023-12-26 | Western Digital Technologies, Inc. | Systems and methods with variable size super blocks in zoned namespace devices |
US20240053924A1 (en) * | 2022-08-12 | 2024-02-15 | Micron Technology, Inc. | Memory sub-system transfer queue retention |
US20240069806A1 (en) * | 2022-08-30 | 2024-02-29 | Micron Technology, Inc. | Managing data compaction for zones in memory devices |
EP4332968A3 (en) * | 2022-08-31 | 2024-05-15 | Samsung Electronics Co., Ltd. | Storage device including nonvolatile memory device and operating method of storage device |
CN115758206B (zh) * | 2022-11-07 | 2023-05-16 | 武汉麓谷科技有限公司 | 一种快速查找ZNS固态硬盘中NorFlash上次写结束位置的方法 |
US20240168683A1 (en) * | 2022-11-22 | 2024-05-23 | Western Digital Technologies, Inc. | Folding Zone Management Optimization in Storage Device |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018120439A (ja) * | 2017-01-25 | 2018-08-02 | 東芝メモリ株式会社 | メモリシステムおよび制御方法 |
JP2019057193A (ja) * | 2017-09-22 | 2019-04-11 | 東芝メモリ株式会社 | メモリシステム |
JP2019191909A (ja) * | 2018-04-25 | 2019-10-31 | 東芝メモリ株式会社 | メモリシステムおよび制御方法 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5841709A (en) * | 1995-12-29 | 1998-11-24 | Stmicroelectronics, Inc. | Memory having and method for testing redundant memory cells |
US6278718B1 (en) * | 1996-08-29 | 2001-08-21 | Excel, Inc. | Distributed network synchronization system |
US6505229B1 (en) * | 1998-09-25 | 2003-01-07 | Intelect Communications, Inc. | Method for allowing multiple processing threads and tasks to execute on one or more processor units for embedded real-time processor systems |
US7237022B1 (en) * | 2000-06-29 | 2007-06-26 | Microsoft Corporation | Suspension and reinstatement of reference handles |
US7336536B2 (en) * | 2004-06-25 | 2008-02-26 | Micron Technology, Inc. | Handling defective memory blocks of NAND memory devices |
JP2010152778A (ja) * | 2008-12-26 | 2010-07-08 | Hitachi Ulsi Systems Co Ltd | 半導体記憶装置 |
JP6331773B2 (ja) * | 2014-06-30 | 2018-05-30 | 富士通株式会社 | ストレージ制御装置、およびストレージ制御プログラム |
JP2017027388A (ja) | 2015-07-23 | 2017-02-02 | 株式会社東芝 | メモリシステムおよび不揮発性メモリの制御方法 |
JP2017045288A (ja) * | 2015-08-27 | 2017-03-02 | 株式会社東芝 | メモリシステム |
JP2019008730A (ja) * | 2017-06-28 | 2019-01-17 | 東芝メモリ株式会社 | メモリシステム |
JP6779838B2 (ja) * | 2017-06-28 | 2020-11-04 | キオクシア株式会社 | メモリシステムおよび制御方法 |
JP7074453B2 (ja) * | 2017-10-30 | 2022-05-24 | キオクシア株式会社 | メモリシステムおよび制御方法 |
US10915440B2 (en) | 2017-11-16 | 2021-02-09 | Micron Technology, Inc. | Namespace mapping optimization in non-volatile memory devices |
JP7051546B2 (ja) * | 2018-04-16 | 2022-04-11 | キオクシア株式会社 | メモリシステムおよび制御方法 |
US20190042098A1 (en) | 2018-06-08 | 2019-02-07 | Intel Corporation | Reduction of write amplification of ssd with integrated memory buffer |
JP6649452B2 (ja) | 2018-10-22 | 2020-02-19 | キオクシア株式会社 | メモリシステムおよび不揮発性メモリの制御方法 |
JP7353934B2 (ja) | 2019-11-19 | 2023-10-02 | キオクシア株式会社 | メモリシステムおよび制御方法 |
-
2020
- 2020-01-16 JP JP2020005292A patent/JP7346311B2/ja active Active
- 2020-07-08 TW TW109122976A patent/TWI741671B/zh active
- 2020-08-03 CN CN202010765428.0A patent/CN113138713B/zh active Active
- 2020-08-03 CN CN202311229162.8A patent/CN117193653A/zh active Pending
- 2020-09-14 US US17/019,955 patent/US11216188B2/en active Active
-
2021
- 2021-11-29 US US17/536,558 patent/US11704021B2/en active Active
-
2023
- 2023-06-01 US US18/327,108 patent/US20230305704A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018120439A (ja) * | 2017-01-25 | 2018-08-02 | 東芝メモリ株式会社 | メモリシステムおよび制御方法 |
JP2019057193A (ja) * | 2017-09-22 | 2019-04-11 | 東芝メモリ株式会社 | メモリシステム |
JP2019191909A (ja) * | 2018-04-25 | 2019-10-31 | 東芝メモリ株式会社 | メモリシステムおよび制御方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11861202B2 (en) | 2021-03-17 | 2024-01-02 | Kioxia Corporation | Memory system |
Also Published As
Publication number | Publication date |
---|---|
CN113138713A (zh) | 2021-07-20 |
TWI741671B (zh) | 2021-10-01 |
US20230305704A1 (en) | 2023-09-28 |
JP7346311B2 (ja) | 2023-09-19 |
CN113138713B (zh) | 2023-09-19 |
US20220083234A1 (en) | 2022-03-17 |
US20210223962A1 (en) | 2021-07-22 |
CN117193653A (zh) | 2023-12-08 |
TW202129501A (zh) | 2021-08-01 |
US11704021B2 (en) | 2023-07-18 |
US11216188B2 (en) | 2022-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7346311B2 (ja) | メモリシステム | |
JP7366795B2 (ja) | メモリシステムおよび制御方法 | |
CN114115747B (zh) | 存储器***及控制方法 | |
JP2021114038A (ja) | メモリシステムおよび制御方法 | |
JP2020046963A (ja) | メモリシステムおよび制御方法 | |
JP7353934B2 (ja) | メモリシステムおよび制御方法 | |
JP7358594B2 (ja) | メモリシステム | |
JP2021033849A (ja) | メモリシステムおよび制御方法 | |
US11409467B2 (en) | Memory system and method of controlling nonvolatile memory and for reducing a buffer size | |
JP7381678B2 (ja) | メモリシステム | |
JP2021033848A (ja) | メモリシステムおよび制御方法 | |
US20230091792A1 (en) | Memory system and method of controlling nonvolatile memory | |
JP7392080B2 (ja) | メモリシステム | |
JP2023012773A (ja) | メモリシステムおよび制御方法 | |
JP2022171208A (ja) | メモリシステムおよび制御方法 | |
JP2021033845A (ja) | メモリシステムおよび制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200330 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220912 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230711 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230712 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230727 |
|
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: 20230808 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230906 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7346311 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |