CN111712803A - 在存储器系统处存储关键数据 - Google Patents
在存储器系统处存储关键数据 Download PDFInfo
- Publication number
- CN111712803A CN111712803A CN201980012739.5A CN201980012739A CN111712803A CN 111712803 A CN111712803 A CN 111712803A CN 201980012739 A CN201980012739 A CN 201980012739A CN 111712803 A CN111712803 A CN 111712803A
- Authority
- CN
- China
- Prior art keywords
- data
- error control
- control operation
- user data
- 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.)
- Granted
Links
- 230000015654 memory Effects 0.000 title claims abstract description 177
- 238000012545 processing Methods 0.000 claims description 38
- 238000000034 method Methods 0.000 claims description 25
- 238000012937 correction Methods 0.000 claims description 14
- 230000009897 systematic effect Effects 0.000 claims description 5
- 125000004122 cyclic group Chemical group 0.000 claims description 4
- 230000004044 response Effects 0.000 claims description 3
- 238000003860 storage Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 230000006735 deficit Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000011065 in-situ storage Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000014616 translation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1012—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
-
- 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/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- 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/065—Replication mechanisms
-
- 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
可接收将存储在存储器系统处的用户数据。可识别与所述存储器系统相关联的系统数据,且可基于错误控制操作将所述用户数据及所述系统数据存储在所述存储器系统处。可识别所述系统数据的子集,且可基于另一错误控制操作将所述系统数据的所述子集存储在所述存储器系统处。
Description
技术领域
本发明大体上涉及存储器系统,且更明确来说,涉及在存储器系统处存储关键数据。
背景技术
存储器系统可为例如固态驱动器(SSD)的存储器系统,且可包含存储数据的一或多个存储器装置。存储器系统可包含存储器装置,例如非易失性存储器装置及易失性存储器装置。一般来说,主机系统可利用存储器系统在存储器系统的存储器装置处存储数据及从存储器系统的存储器装置检索数据。
附图说明
从下文给出的详细描述及从本发明的各种实施方案的附图将更加完全地理解本发明。
图1说明根据本发明的一些实施例的包含存储器系统的实例计算环境。
图2是根据一些实施例的基于错误控制操作存储数据的框图。
图3是根据本发明的一些实施例的用以基于错误控制操作存储用户数据及基于另一错误控制操作存储关键数据的实例方法的流程图。
图4是根据一些实施例的用以基于关键数据执行对用户数据的读取操作的实例方法的流程图。
图5是本发明的实施方案可操作于其中的实例计算机系统的框图。
具体实施方式
本发明的方面涉及将关键数据存储在存储器系统处。一般来说,主机系统可利用包含一或多个存储器装置的存储器系统。存储器系统的实例是固态驱动器(SSD)或混合存储器/存储系统。主机系统可提供将数据存储在存储器系统处的写入请求及检索当前存储在存储器系统处的数据的读取请求。在用户数据是从主机系统接收且被存储在存储器系统处时,存储器系统可存储额外数据与接收到的用户数据。此类额外数据可为识别存储器系统的特性的系统数据。系统数据可在用户数据被存储在存储器系统处时识别存储器系统的特性。
存储器系统可对被存储在存储器系统且在存储器系统处检索的用户数据及系统数据实施错误检测及校正(即,错误控制)操作。错误控制操作可编码用户数据且将经编码用户数据存储在存储器系统处。随后,当用户数据将由存储器系统读取且传回到主机系统时,可通过解码经编码用户数据及检测已由噪声或其它此类损害(其在用户数据被存储在存储器系统处或从存储器系统读取时致使用户数据的值或位切换(例如,从‘0’值到‘1’值,或反之亦然))引起的任何错误来对经检索用户数据执行错误控制操作。检测到的错误可随后通过使用错误控制操作来校正。
用以检索用户数据的读取操作可基于系统数据的一部分。举例来说,包含于系统数据中的关键数据可由存储器系统用来确定如何读取被存储在存储器系统的存储器装置处的对应用户数据。作为实例,关键数据可指定在特定用户数据被写入到存储器系统的存储器装置时的存储器系统的温度值。温度值稍后可用于确定将在检索存储器装置处的对应用户数据时使用的特定读取电压电平。举例来说,在接收对用户数据的请求之后,可检索经编码系统数据且可对系统数据执行错误控制操作以检索关键数据。随后,存储器系统可基于关键数据从存储器装置检索用户数据。使用关键数据确定如何执行对用户数据的读取操作可在经检索用户数据中导致较少错误,这是因为由于对用户数据的读取操作是通过使用关键数据促进而可存在较少错误。因此,错误控制操作可更容易地检测及校正用户数据中的潜在错误,这是因为可检测及校正经检索用户数据处的较少错误。
常规存储器系统可基于相同类型的错误控制操作编码用户数据及系统数据。然而,如果错误控制操作由于经检索系统数据中存在的错误的数目超过了错误控制操作的错误校正能力而无法恢复系统数据,那么被检索的系统数据可能还包含更多错误。因为系统数据中的错误在此情况中不能被校正,所以对用户数据的读取操作可能还会导致错误的数目增加,这是因为读取操作不能由包含于系统数据中的关键数据协助。
本发明的方面通过基于额外错误控制操作将关键数据存储在存储器系统处解决了以上缺点及其它缺点。举例来说,可通过使用初始错误控制操作将存储器系统的用户数据及系统数据存储在存储器系统处。系统数据可包含在用户数据被存储在存储器系统处时的关键数据,例如存储器系统的温度值。另一错误控制操作可用于存储关键数据。另一错误控制操作可不同于用于存储用户数据及系统数据的初始错误控制操作。举例来说,另一错误控制操作可能够校正比初始错误控制操作更多的错误。因此,初始错误控制操作可用于存储系统数据,且另一错误控制操作可用于存储用于确定如何执行用户数据的读取操作的系统数据的子集(例如,关键数据)。
响应于来自主机系统的对用户数据的后续请求,存储器系统可检索基于初始错误控制操作被存储的系统数据。如果初始错误控制操作成功,那么可识别来自系统数据的关键数据且其可用于对对应用户数据执行读取操作。接着,可关于经检索用户数据使用初始错误控制操作。否则,如果初始错误控制操作不成功(即,失败),那么可通过使用另一错误控制操作检索基于另一错误控制操作存储的关键数据。接着,关键数据可用于对基于初始错误控制操作存储的对应用户数据执行读取操作。举例来说,存储器系统可基于关键系统数据施加特定读取电压电平以检索用户数据且接着第一错误控制操作可用于经检索用户数据。
本发明的优点包含(但不限于)增加被存储在存储器系统处的用户数据的可靠性。举例来说,额外错误控制操作可提供比第一错误控制操作的错误校正能力有所改进的错误校正能力。因此,基于额外错误控制操作存储关键数据可提供可用于提供对用户数据的经改进读取操作的额外错误校正能力。经改进读取操作可导致较少错误使得可以不太频繁地使用初始错误控制操作来校正经检索用户数据中的错误。此外,额外错误控制操作可利用比初始错误控制操作更多的时间来执行。然而,因为额外错误控制操作是在初始错误控制操作在检索系统数据时失败的情况下利用,那么当无法可靠地恢复系统数据时也可选择性地执行额外控制操作的使用。
另外,因为可在读取用户数据之前读取关键数据,所以关键数据可用于识别用户数据是否有效。如果用户数据并非有效数据(例如,不再由主机系统使用),那么存储器系统可确定不执行额外错误控制操作,从而导致改进存储器系统的性能,这是因为可执行其它读取或写入操作来代替额外错误控制操作。此外,用户数据可用于促进对用户数据执行的读取操作以减少用户数据中的错误。错误的减少还可导致存储器系统的性能改进,这是因为额外错误控制操作将用于校正较少错误。
图1说明根据本发明的一些实施方案的包含存储器系统110的实例计算环境100。存储器系统110可包含媒体,例如存储器装置112A到112N。存储器装置112A到112N可为易失性存储器装置、非易失性存储器装置或此类装置的组合。在一些实施例中,存储器系统是存储系统。存储系统的实例是SSD。一般来说,计算环境100可包含使用存储器系统110的主机系统120。在一些实施方案中,主机系统120可将数据写入到存储器系统110及从存储器系统110读取数据。在一些实施例中,存储器系统110是混合存储器/存储系统。
主机系统120可为计算装置,例如桌面计算机、膝上型计算机、网络服务器、移动装置或包含存储器及处理装置的此计算装置。主机系统120可包含存储器系统110或可耦合到存储器系统110使得主机系统120可从存储器系统110读取数据或将数据写入到存储器系统110。主机系统120可经由物理主机接口耦合到存储器系统110。如本文中使用,“耦合到”通常是指组件之间的连接,其可为间接通信连接或直接通信连接(例如,无中介组件),无论是有线还是无线的,包含例如电、光、磁等的连接。物理主机接口的实例包含(但不限于)串行高级技术附接(SATA)接口、外围组件互连高速(PCIe)接口、通用串行总线(USB)接口、光纤通道、串行附接SCSI(SAS)等。物理主机接口可用于在主机系统120与存储器系统110之间传输数据。当存储器系统110通过PCIe接口与主机系统120耦合时,主机系统120可进一步利用NVM Express(NVMe)接口存取存储器装置112A到112N。物理主机接口可提供用于在存储器系统110与主机系统120之间传递控制、地址、数据及其它信号的接口。
存储器装置112A到112N可包含不同类型的非易失性存储器装置及/或易失性存储器装置的任何组合。非易失性存储器装置的实例包含“与非”(NAND)型快闪存储器。存储器装置112A到112N中的每一者可包含一或多个存储器单元阵列,例如单电平单元(SLC)或多电平单元(MLC)(例如,三电平单元(TLC)或四电平单元(QLC))。在一些实施方案中,特定存储器装置可包含存储器单元的SLC部分及MLC部分两者。存储器单元中的每一者可存储由主机系统120使用的数据位(例如,数据块)。尽管描述了非易失性存储器装置(例如NAND类型快闪存储器),但存储器装置112A到112N可基于任何其它类型的存储器,例如易失性存储器。在一些实施方案中,存储器装置112A到112N可为(但不限于)随机存取存储器(RAM)、只读存储器(ROM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(SDRAM)、相变存储器(PCM)、磁电机随机存取存储器(MRAM)、“或非”(NOR)快闪存储器、电可擦除可编程只读存储器(EEPROM)及非易失性存储器单元的交叉点阵列。非易失性存储器的交叉点阵列可基于体电阻变化连同堆叠式交叉栅格式数据存取阵列执行位存储。另外,与许多基于快闪的存储器形成对照,交叉点非易失性存储器可执行原位写入操作,其中非易失性存储器单元可在无需先前擦除非易失性存储器单元的情况下被编程。此外,存储器装置112A到112N的存储器单元可经分组为存储器页面或数据块,其可指代用于存储数据的存储器装置的单位。
控制器115可与存储器装置112A到112N通信以执行操作,例如在存储器装置112A到112N处读取数据、写入数据或擦除数据及其它此类操作。控制器115可包含硬件,例如一或多个集成电路及/或离散组件、缓冲器存储器或其组合。控制器115可为微控制器、专用逻辑电路系统(例如,场可编程门阵列(FPGA)、专用集成电路(ASIC)等)或其它合适的处理器。控制器115可包含经配置以执行存储于局部存储器119中的指令的处理器(处理装置)117。在说明的实例中,控制器115的局部存储器119包含经配置以存储用于执行控制存储器系统110的操作的各种过程、操作、逻辑流及例程的指令的嵌入式存储器,所述操作包含处置存储器系统110与主机系统120之间的通信。在一些实施例中,局部存储器119可包含存储存储器指针、经提取数据等的存储器寄存器。局部存储器119还可包含用于存储微代码的只读存储器(ROM)。虽然已将图1中的实例存储器系统110说明为包含控制器115,但在本发明的另一实施例中,存储器系统110可不包含控制器115,且可代替地依赖于外部控制(例如,由外部主机提供、或由与存储器系统分离的处理器或控制器提供)。
一般来说,控制器115可从主机系统120接收命令或操作且可将所述命令或操作转换成指令或适当命令以实现对存储器装置112A到112N的所期望存取。控制器115可负责其它操作,例如磨损均衡操作、废料收集操作、错误检测及错误校正代码(ECC)操作、加密操作、高速缓存操作及与存储器组件112A到112N相关联的逻辑块地址与物理块地址之间的地址转译。控制器115可进一步包含用以经由物理主机接口与主机系统120通信的主机接口电路系统。所述主机接口电路系统可将从主机系统接收的命令转换成命令指令以存取存储器装置112A到112N,且还将与存储器装置112A到112N相关联的响应转换成用于主机系统120的信息。
存储器系统110可包含关键数据组件113,其可用于将关键数据存储在存储器装置112A到112N处。举例来说,关键数据组件113可从主机系统120接收用户数据且可基于初始错误控制操作存储用户数据。关键数据组件113可进一步在用户数据被存储在存储器系统处的时间识别系统数据。举例来说,当用户数据被写入到存储器装置时的存储器系统或存储器系统的存储器装置的温度可包含于系统数据中。接着,可识别系统数据的一部分,例如关键数据。接着,关键数据组件113可基于额外错误控制操作存储关键数据。随后,关键数据组件113可在从主机系统120接收对用户数据的读取请求时对系统数据执行错误控制操作及/或对关键数据执行额外错误控制操作。下文描述关于关键数据组件113的操作的另外细节。
存储器系统110还可包含未说明的额外电路系统或组件。在一些实施方案中,存储器系统110可包含高速缓存或缓冲器(例如DRAM)及地址电路系统(例如行解码器及列解码器),其可从控制器115接收地址且解码所述地址以存取存储器装置112A到112N。
图2是根据一些实施例的基于错误控制操作存储的数据的框图。可由图1的关键数据组件113存储或读取数据。
如图2中展示,可基于初始或第一错误控制操作将用户数据210、系统数据220及奇偶校验数据230存储在存储器系统处。第一错误控制操作的实例包含(但不限于)错误校正代码(ECC)操作,例如低密度奇偶校验校验(LDPC)错误控制操作。用户数据210可为从主机系统接收的将被存储在存储器系统的存储器装置处的数据。此外,系统数据220可识别当用户数据210已经存储在存储器系统处时的存储器系统的特性或条件。举例来说,系统数据220可包含(但不限于)识别存储器系统的状态或操作条件的信息。在一些实施例中,系统数据包含其它此类信息,例如何时已执行存储器系统的特定操作的指示或主机系统或存储器系统产生数据(例如,结合用户数据使用的密钥)。系统数据220的一部分或子集可为关键数据。关键数据的实例包含(但不限于)当用户数据210被存储在存储器系统处时的存储器系统的温度、当用户数据210被存储在存储器系统处时的时间的指示、用户数据210的逻辑块地址及被映射到所述逻辑块地址的存储器系统的对应物理块地址,或与存储器系统的状态(status/state)有关的其它此类特性或信息。在一些实施例中,关键数据包含环境度量,例如当用户数据210被存储在存储器系统处时存储器系统的压力或高度、指示用户数据210何时被写入或另一操作何时已由存储器系统或主机系统执行的时间戳记信息、主机系统产生关键数据、及结合用户数据210使用的额外数据,例如密钥。可通过使用第一错误控制操作存储系统数据220。举例来说,可基于相同第一错误控制操作编码用户数据210及系统数据220两者。此外,用于编码用户数据210及系统数据220的第一错误控制操作可用于产生奇偶校验数据230,其随后在从存储器系统读取用户数据210及系统数据220时由第一错误控制操作使用。举例来说,奇偶校验数据230可用于检测及校正用户数据210及系统数据220处的错误。
此外,当用户数据210被存储在存储器系统处时,关键数据240及对应奇偶校验数据250也可基于额外或第二错误控制操作被存储在存储器系统处。举例来说,与初始错误控制的类型不同类型的错误控制操作可用于存储关键数据240及其对应奇偶校验数据250。可从系统数据220的子集或一部分识别关键数据240。在一些实施例中,关键数据240是由存储器系统用以对用户数据210执行读取操作的信息。举例来说,关键数据240可识别与用户数据210相关联的写入温度。接着,写入温度可用于确定待施加于存储用户数据210的一或多个存储器单元以执行用户数据210的读取操作的读取电压电平或特定阈值电压。因此,关键数据240可为来自系统数据220的用于协助对用户数据210的读取操作的信息。可基于第二错误控制操作编码关键数据240。第二错误控制操作的实例包含(但不限于)循环冗余校验(CRC)代码控制操作。此外,对应奇偶校验数据250可基于用于编码关键数据240的第二错误控制操作产生。
因而,可基于第一错误控制操作存储用户数据210及系统数据220。可基于不同于第一错误控制操作的第二错误控制操作存储关键数据240。在一些实施例中,第一错误控制操作花费比用于执行相同大小的数据的错误检测及校正的第二错误控制操作更少的时间来完成。此外,第二错误控制操作可能够检测及校正比第一错误控制操作更多的数据错误。在一些实施例中,第一错误控制操作由硬件执行,且第二错误控制操作由软件或固件执行。另外,第一错误控制操作可利用比第二错误控制操作更少的奇偶校验数据来校正比第二错误控制操作更多的错误。关于图3更详细地描述在存储器系统处写入用户数据210、系统数据220、奇偶校验数据230、关键数据240及对应额外奇偶校验数据250。此外,关于图4更详细地描述从存储器系统读取用户数据210。
图3是根据本发明的一些实施例的用以基于错误控制操作存储用户数据及基于另一错误控制操作存储关键数据的实例方法300的流程图。方法300可由处理逻辑执行,处理逻辑包含硬件(例如,处理装置、电路系统、专用逻辑、可编程逻辑、微代码、装置的硬件、集成电路等)、软件(例如,运行或执行于处理装置上的指令)或其组合。在一些实施例中,方法300由图1的关键数据组件113执行。
在框310,处理逻辑接收用户数据。举例来说,可在由主机系统提供的写入请求中识别用户数据。处理逻辑可进一步识别与用户数据相关联的系统数据(框220)。举例来说,系统数据可在用户数据将被写入到存储器系统时识别存储器系统的一或多个特性。举例来说,可识别当用户数据被存储在存储器系统处时的存储器系统的温度。可识别环境条件、逻辑块地址及物理块地址信息及先前所描述的其它此类信息。处理逻辑可随后基于错误控制操作存储用户数据及系统数据(框330)。举例来说,可通过使用错误控制操作编码用户数据及系统数据。此外,可产生系统数据及用户数据及经编码用户数据、经编码系统数据的奇偶校验数据,且可将奇偶校验数据写入在存储器系统处。
处理逻辑可从系统数据识别关键数据(框340)。举例来说,可从系统数据的一部分识别关键数据。关键数据可对应于用于促进用户数据的读取操作的执行的信息(例如,写入温度)。处理逻辑可基于不同于用于存储用户数据及系统数据的错误控制操作的另一错误控制操作存储关键数据(框350)。另一错误控制操作可另外产生关键数据的对应奇偶校验数据(例如,额外奇偶校验数据)。可将对应奇偶校验数据与基于另一错误控制操作编码的关键数据一起存储在存储器系统处。在一些实施例中,另一错误控制操作是CRC错误控制操作,其中关键数据与对应奇偶校验数据之间的大小比率用于确定另一错误控制操作的可靠性或错误校正能力。举例来说,关键数据的大小与对应奇偶校验数据的大小之间的比率越低(例如,对应奇偶校验数据的大小更接近关键数据的大小),则另一错误控制操作的可靠性及错误校正能力比所述比率较高时改进得越多。关键数据的对应奇偶校验数据的大小可能较大以提供关键数据的经改进错误校正。在一些实施例中,关键数据的大小与其对应奇偶校验数据的大小的比率低于用户数据或系统数据的大小与相关联奇偶校验数据的大小的比率。
因而,可基于第一错误控制操作存储用户数据及系统数据。可基于第二错误控制操作存储系统数据的子集(例如,关键数据),所述第二错误控制操作是与第一错误控制操作不同类型的错误控制操作。
图4是根据一些实施例的用以基于关键数据执行对用户数据的读取操作的实例方法400的流程图。方法400可由处理逻辑执行,所述处理逻辑可包含硬件(例如,处理装置、电路系统、专用逻辑、可编程逻辑、微代码、装置的硬件、集成电路等)、软件(例如,运行或执行于处理装置上的指令)或其组合。在一些实施例中,方法400由图1的关键数据组件113执行。
方法400可对应于在如关于图3的方法300所描述那样存储用户数据及关键数据之后读取用户数据及关键数据。如图4中展示,在框410,处理逻辑可接收对用户数据的读取请求。举例来说,主机系统可提供对先前在来自主机系统的写入请求中识别且随后存储被存储在存储器系统处的用户数据的读取请求。处理逻辑可通过使用初始错误控制操作检索与用户数据相关联的系统数据(框420)。举例来说,可从存储器系统读取经编码系统数据,且接着,可将初始错误控制操作用于解码经编码系统数据。处理逻辑可确定初始错误控制操作是否成功(框430)。举例来说,如果经检索及经解码系统数据中的每一检测到的错误都已经通过错误控制操作校正,那么初始错误控制操作可被认为是成功的。如果错误控制操作成功,那么处理逻辑可从系统数据识别关键数据(框460)。举例来说,可识别系统数据中对应于关键数据的一部分。处理逻辑可基于关键数据执行对用户数据的读取操作(框470)。读取操作可使用关键数据确定如何检索被存储在存储器系统处的经编码用户数据。在一些实施例中,可基于关键数据改变或调整读取操作参数。读取操作参数可为在读取操作中用于检索经编码用户数据的特定读取电压电平。经调整读取操作参数可导致更少的错误在经检索用户数据处被检测到。随后,初始错误控制操作可用于解码基于从系统数据识别的关键数据读取的经编码用户数据。
否则,如果错误控制操作不成功,那么处理逻辑可基于额外错误控制操作检索关键数据(框440)。举例来说,可编码关键数据且可将其与经编码用户数据分开存储。接着,额外错误控制操作可用于解码经编码关键数据。在一些实施例中,可关于第一错误控制操作的结果来使用额外错误控制操作。举例来说,当可校正检测到的错误的子集而非全部检测到的错误时,第一错误控制操作可为不成功的。接着,额外错误控制操作可使用第一错误控制操作的输出与经校正错误的子集来校正剩余的错误。随后,处理逻辑可基于通过使用额外错误控制操作检索的关键数据执行对用户数据的读取操作(框450)。
在对用户数据执行读取操作之后,接着,用于编码用户数据的初始错误控制操作可用于检测及校正用户数据的错误。因而,初始错误控制操作可用于检索系统数据。如果初始错误控制操作成功,那么来自经检索系统数据的关键数据可用于校准对用户数据的读取操作且接着可结合用户数据使用初始错误控制操作。否则,如果初始错误控制操作不成功,那么不同错误控制操作可用于检索关键数据,且接着,关键数据可用以校准对用户数据的读取操作,且接着,用于存储用户数据的初始错误控制操作也将执行用户数据的错误校正及检测。
在一些实施例中,关键数据用于选择另一错误控制操作或是用于在执行对用户数据的读取操作时促进初始错误控制操作的数据。举例来说,自从用户数据被存储在存储器系统以来经过的时间量可用于选择特定错误控制操作。在一些实施例中,可基于关键数据(例如,经过的时间量)选择来自一组可用错误控制操作中的特定错误控制操作。在相同或替代实施例中,经过的时间量可为在检索用户数据时由初始错误控制操作使用的额外数据。因此,关键数据可用作错误控制操作的部分或将在执行对用户数据的读取操作时用于选择错误控制操作。
如先前描述,关键数据可识别用户数据的逻辑块地址及对应物理块地址。在此实例中,逻辑块地址或物理块地址可用于确定是否执行对用户数据的读取操作。举例来说,如果主机系统先前已指示指派到逻辑块地址或经映射物理块地址的数据不再有效(例如,主机系统已提供擦除数据的请求),那么可作出不执行对用户数据的读取操作的确定。否则,如果不存在指派到逻辑块地址或经映射物理块地址的数据不是有效的指示,那么可作出执行对用户数据的读取操作的确定。
图5说明计算机系统500的实例机器,可在计算机系统500内执行用于致使所述机器执行本文论述的方法论中的任一或多者的一组指令。在一些实施方案中,计算机系统500可对应于主机系统(例如,图1的主机系统120),所述主机系统包含存储器系统(例如,图1的存储器系统110)或利用所述存储器系统或可用于执行控制器的操作(例如,执行操作系统以执行对应于图1的关键数据组件113的操作)。在替代实施方案中,机器可连接(例如,联网)到LAN、内部网、外部网及/或因特网中的其它机器。机器可作为主从式网络环境中的服务器或客户端机器而操作、充当对等(或分布式)网络环境中的对等机器或充当云计算基础设施或环境中的服务器或客户端机器。
机器可为个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、蜂窝电话、网络设备、服务器、网络路由器、交换机或网桥或能够(循序或以其它方式)执行指定待由所述机器所采取的动作的一组指令的任何机器。此外,虽然说明了单个机器,但术语“机器”还应被视为包含个别或联合执行一(或多组)指令以执行本文中论述的方法论中的任一或多者的机器的任何集合。
实例计算机系统500包含处理装置502、主存储器504(例如,只读存储器(ROM)、快闪存储器、动态随机存取存储器(DRAM)(例如同步DRAM(SDRAM)或Rambus DRAM(RDRAM))、静态存储器506(例如,快闪存储器、静态随机存取存储器(SRAM))等)及数据存储系统518,其经由总线530彼此通信。
处理装置502表示一或多个通用处理装置,例如微处理器、中央处理单元或类似物。更特定来说,处理装置可为复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器、超长指令字(VLIW)微处理器或实施其它指令集的一处理器或实施指令集组合的多个处理器。处理装置502也可为一或多个专用处理装置,例如专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)、网络处理器或类似物。处理装置502经配置以执行用于执行本文中论述的操作及步骤的指令526。计算机系统500可进一步包含网络接口装置508以通过网络520通信。
数据存储系统518可包含其上存储体现本文中描述的方法论或功能中的任一或多者的一或多组指令或软件526的机器可读存储媒体524(也称为计算机可读媒体)。指令526在由计算机系统500执行其期间也可完全或至少部分驻存于主存储器504内及/或处理装置502内,主存储器504及处理装置502也构成机器可读存储媒体。机器可读存储媒体524、数据存储系统518及/或主存储器504可对应于图1的存储器系统110。
在一个实施方案中,指令526包含实施对应于关键数据组件(例如,图1的关键数据组件113)的功能性的指令。虽然在实例实施例方案中将机器可读存储媒体524展示为单个媒体,但术语“机器可读存储媒体”应理解为包含存储一或多个指令集的单个媒体或多个媒体。术语“机器可读存储媒体”也应理解为包含能够存储或编码由机器执行的一组指令且致使机器执行本发明的方法论中的任一或多者的任何媒体。术语“机器可读存储媒体”应相应地理解为包含(但不限于)固态存储器、光学媒体及磁性媒体。
已依据对计算机存储器内的数据位的操作的算法及符号表示呈现前述详细描述的一些部分。这些算法描述及表示是由数据处理领域中的技术人员用于最有效地将其工作实质传达给所属领域的其它技术人员的方式。算法在此处被设想为且通常被设想为导致所期望结果的自洽操作序列。操作是需要物理量的物理操纵的操作。通过,尽管不一定,但这些量采用能够被存储、组合、比较及以其它方式操纵的电或磁信号的形式。已被证明是方便的是,有时出于习惯用法的原因,原则上将这些信号指代为位、值、元素、符号、字符、项、数字或类似物。
然而,应记住,所有这些及类似术语都应与适当物理量相关联,且仅仅是应用于这些量的方便标签。本发明可指代计算机系统或类似电子计算装置的动作及过程,所述计算机系统或类似电子计算装置操纵表示为计算机系统的寄存器及存储器内的物理(电子)量的数据并将所述数据转换成类似地表示为计算机系统存储器或寄存器或其它此类信息存储系统内的物理量的其它数据。
本发明还涉及用于执行本文中的操作的设备。此设备可出于预期目的特殊地被构造,或其可包含由存储于计算机中的计算机程序选择性地激活或重新配置的通用计算机。此计算机程序可经存储于计算机可读存储媒体中,例如(但不限于)任何类型的磁盘(包含软盘、光盘、CD-ROM及磁光盘)、只读存储器(ROM)、随机存取存储器(RAM)、EPROM、EEPROM、磁或光卡或适于存储电子指令的各自耦合到计算机系统总线的任何类型的媒体。
本文中呈现的算法及显示器并不固有地涉及任何特定计算机或其它设备。各种通用系统可结合根据本文中的教示的程序使用,或可证明构造更专门的设备来执行方法是方便的。用于各种这些系统的结构将如下文描述中陈述那样出现。另外,本发明不参考任何特定编程语言描述。应了解,多种编程语言可用于实施本文中所描述的本发明的教示。
本发明可经提供作为计算机程序产品或软件,其可包含具有其上存储有指令的机器可读媒体,所述指令可用于编程计算机系统(或其它电子装置)以执行根据本发明的过程。机器可读媒体包含用于存储呈可由机器(例如计算机)读取的形式的信息的任何机构。在一些实施方案中,机器可读(例如计算机可读)媒体包含机器(例如计算机)可读存储媒体,例如只读存储器(“ROM”)、随机存取存储器(“RAM”)、磁盘存储媒体、光学存储媒体、快闪存储器装置等。
在前述说明书中,已参考本发明的特定实例实施方案描述了其实施方案。将明显的是,在不背离以下权利要求书中所陈述的本发明的实施方案的更宽精神及范围的情况下,可对其做出各种修改。因此,说明书及图式应以说明性意义而非限制性意义来看待。
Claims (20)
1.一种方法,其包括:
接收将存储在存储器系统处的用户数据;
识别与所述存储器系统相关联的系统数据;
基于错误控制操作将所述用户数据及所述系统数据存储在所述存储器系统处;
识别所述系统数据的子集;及
由处理装置基于另一错误控制操作将所述系统数据的所述子集存储在所述存储器系统处。
2.根据权利要求1所述的方法,其中基于所述错误控制操作将所述用户数据及所述系统数据存储在所述存储器系统处包括:
基于所述错误控制操作编码所述用户数据及所述系统数据;
基于所述错误控制操作产生所述用户数据及所述系统数据的奇偶校验数据;及
将所述奇偶校验数据、所述经编码用户数据及所述经编码系统数据存储在所述存储器系统处。
3.根据权利要求2所述的方法,其中基于所述另一错误控制操作将所述系统数据的所述子集存储在所述存储器系统处包括:
基于所述另一错误控制操作编码所述系统数据的所述子集;
产生与所述另一错误控制操作相关联的额外奇偶校验数据;及
将所述额外奇偶校验数据及所述系统数据的所述经编码子集存储在所述存储器系统处,其中所述另一错误控制操作不同于所述错误控制操作。
4.根据权利要求1所述的方法,其中识别所述系统数据的所述子集包括:
识别所述系统数据中用于执行所述用户数据的读取操作的信息,所述系统数据的所述子集是所述经识别信息。
5.根据权利要求1所述的方法,其中所述系统数据的所述子集对应于当所述用户数据被存储在所述存储器系统处时的写入温度,所述写入温度将用于执行所述用户数据的读取操作。
6.根据权利要求1所述的方法,其中所述错误控制操作是基于错误校正代码ECC,且所述另一错误控制操作是基于循环冗余校验CRC。
7.根据权利要求1所述的方法,其中基于所述另一错误控制操作存储在所述存储器系统的所述系统数据的所述子集用于在所述错误控制操作关于存储在所述存储器系统处的所述系统数据失败时与存储在所述存储器系统处的所述用户数据一起执行读取操作。
8.一种包括指令的非暂时性计算机可读媒体,所述指令在由处理装置执行时致使所述处理装置执行包括以下各者的操作:
接收将存储在存储器系统处的用户数据;
识别与所述存储器系统相关联的系统数据;
基于错误控制操作将所述用户数据及所述系统数据存储在所述存储器系统处;
识别所述系统数据的子集;及
基于另一错误控制操作将所述系统数据的所述子集存储在所述存储器系统处。
9.根据权利要求8所述的非暂时性计算机可读媒体,其中为了基于所述错误控制操作将所述用户数据及所述系统数据存储在所述存储器系统处,所述操作进一步包括:
基于所述错误控制操作编码所述用户数据及所述系统数据;
基于所述错误控制操作产生所述用户数据及所述系统数据的奇偶校验数据;及
将所述奇偶校验数据、所述经编码用户数据及所述经编码系统数据存储在所述存储器系统处。
10.根据权利要求9所述的非暂时性计算机可读媒体,其中为了基于所述另一错误控制操作将所述系统数据的所述子集存储在所述存储器系统处,所述操作进一步包括:
基于所述另一错误控制操作编码所述系统数据的所述子集;
产生与所述另一错误控制操作相关联的额外奇偶校验数据;及
将所述额外奇偶校验数据及所述系统数据的所述经编码子集存储在所述存储器系统处,其中所述另一错误控制操作不同于所述错误控制操作。
11.根据权利要求8所述的非暂时性计算机可读媒体,其中为了识别所述系统数据的所述子集,所述操作进一步包括:
识别所述系统数据中用于执行所述用户数据的读取操作的信息,所述系统数据的所述子集是所述经识别信息。
12.根据权利要求8所述的非暂时性计算机可读媒体,其中所述系统数据的所述子集对应于当所述用户数据被存储在所述存储器系统处时的写入温度,所述写入温度将用于执行所述用户数据的读取操作。
13.根据权利要求8所述的非暂时性计算机可读媒体,其中所述错误控制操作是基于错误校正代码ECC,且所述另一错误控制操作是基于循环冗余校验CRC。
14.根据权利要求8所述的非暂时性计算机可读媒体,基于所述另一错误控制操作存储在所述存储器系统的所述系统数据的所述子集用于在所述错误控制操作关于存储在所述存储器系统处的所述系统数据失败时与存储在所述存储器系统处的所述用户数据一起执行读取操作。
15.一种系统,其包括:
存储器装置;及
处理装置,其可操作地与所述存储器装置耦合,以:
接收检索存储在所述存储器装置处的用户数据的请求;
执行与所述用户数据相关联的错误控制操作;
接收所述错误控制操作失败的指示;
响应于接收所述错误控制操作的失败的所述指示,识别存储在所述存储器装置处的关键数据;
对所述关键数据执行另一错误控制操作以检索存储在所述存储器装置处的所述关键数据;及
通过使用基于所述另一错误控制操作的所述执行检索的所述关键数据读取所述用户数据。
16.根据权利要求15所述的系统,其中所述处理装置将进一步:
基于所述关键数据调整读取操作参数,所述关键数据基于所述另一错误控制操作的所述执行而检索;
基于所述经调整读取操作参数检索所述用户数据;及
对基于所述经调整读取操作参数检索的所述经检索用户数据执行所述第一错误控制操作。
17.根据权利要求15所述的系统,其中为了通过使用基于所述另一错误控制操作的所述执行检索的所述关键数据读取所述用户数据,所述处理装置将进一步:
识别与所述用户数据相关联的逻辑块地址;及
确定指派到所述逻辑块地址的数据是否有效,其中当指派到所述逻辑块地址的所述数据有效时读取所述用户数据。
18.根据权利要求15所述的系统,其中所述错误控制操作是基于错误校正代码ECC,且所述另一错误控制操作是基于循环冗余校验CRC。
19.根据权利要求15所述的系统,其中所述关键数据识别所述用户数据被存储时的写入温度。
20.根据权利要求15所述的系统,其中为了执行与所述用户数据相关联的所述错误控制操作,所述处理装置将进一步:
识别对应于所述用户数据的系统数据,所述错误控制操作是对对应于所述用户数据的所述系统数据执行。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862621502P | 2018-01-24 | 2018-01-24 | |
US62/621,502 | 2018-01-24 | ||
US16/029,331 US10963340B2 (en) | 2018-01-24 | 2018-07-06 | Storing critical data at a memory system |
US16/029,331 | 2018-07-06 | ||
PCT/US2019/014051 WO2019147473A1 (en) | 2018-01-24 | 2019-01-17 | Storing critical data at a memory system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111712803A true CN111712803A (zh) | 2020-09-25 |
CN111712803B CN111712803B (zh) | 2024-05-17 |
Family
ID=67300019
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980012739.5A Active CN111712803B (zh) | 2018-01-24 | 2019-01-17 | 在存储器系统处存储关键数据 |
Country Status (5)
Country | Link |
---|---|
US (2) | US10963340B2 (zh) |
EP (1) | EP3743814A4 (zh) |
KR (1) | KR102403173B1 (zh) |
CN (1) | CN111712803B (zh) |
WO (1) | WO2019147473A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11769076B2 (en) * | 2019-10-14 | 2023-09-26 | Micron Technology, Inc. | Memory sub-system with a virtualized bus and internal logic to perform a machine learning operation |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103051664A (zh) * | 2012-08-14 | 2013-04-17 | 深圳市朗科科技股份有限公司 | 一种云存储系统的文件管理方法、装置及该云存储系统 |
US20140129901A1 (en) * | 2012-11-05 | 2014-05-08 | Kabushiki Kaisha Toshiba | Memory system |
US20170024277A1 (en) * | 2008-04-11 | 2017-01-26 | Micron Technology, Inc. | Method and apparatus for a volume management system in a non-volatile memory device |
CN107153793A (zh) * | 2017-05-17 | 2017-09-12 | 成都麟成科技有限公司 | 一种重要数据存储的防破译方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8095851B2 (en) | 2007-09-06 | 2012-01-10 | Siliconsystems, Inc. | Storage subsystem capable of adjusting ECC settings based on monitored conditions |
US8472274B2 (en) * | 2011-03-02 | 2013-06-25 | Apple Inc. | Using temperature sensors with a memory device |
KR101678919B1 (ko) | 2011-05-02 | 2016-11-24 | 삼성전자주식회사 | 메모리 시스템 및 에러 정정 방법 |
US9189329B1 (en) * | 2011-10-13 | 2015-11-17 | Marvell International Ltd. | Generating error correcting code (ECC) data using an ECC corresponding to an identified ECC protection level |
US10146482B2 (en) | 2014-08-01 | 2018-12-04 | Toshiba Memory Corporation | Global error recovery system |
US9530512B2 (en) * | 2014-09-19 | 2016-12-27 | Sandisk Technologies Llc | Temperature dependent sensing scheme to counteract cross-temperature threshold voltage distribution widening |
US10298259B1 (en) * | 2015-06-16 | 2019-05-21 | Amazon Technologies, Inc. | Multi-layered data redundancy coding techniques |
US9996281B2 (en) * | 2016-03-04 | 2018-06-12 | Western Digital Technologies, Inc. | Temperature variation compensation |
US9910606B2 (en) | 2016-03-23 | 2018-03-06 | Seagate Technology Llc | End of life extension of solid state memory |
US10372625B2 (en) * | 2016-12-27 | 2019-08-06 | Intel Corporation | Secure memory |
-
2018
- 2018-07-06 US US16/029,331 patent/US10963340B2/en active Active
-
2019
- 2019-01-17 WO PCT/US2019/014051 patent/WO2019147473A1/en unknown
- 2019-01-17 KR KR1020207023893A patent/KR102403173B1/ko active IP Right Grant
- 2019-01-17 CN CN201980012739.5A patent/CN111712803B/zh active Active
- 2019-01-17 EP EP19743613.2A patent/EP3743814A4/en not_active Withdrawn
-
2021
- 2021-03-01 US US17/249,399 patent/US11726874B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170024277A1 (en) * | 2008-04-11 | 2017-01-26 | Micron Technology, Inc. | Method and apparatus for a volume management system in a non-volatile memory device |
CN103051664A (zh) * | 2012-08-14 | 2013-04-17 | 深圳市朗科科技股份有限公司 | 一种云存储系统的文件管理方法、装置及该云存储系统 |
US20140129901A1 (en) * | 2012-11-05 | 2014-05-08 | Kabushiki Kaisha Toshiba | Memory system |
CN107153793A (zh) * | 2017-05-17 | 2017-09-12 | 成都麟成科技有限公司 | 一种重要数据存储的防破译方法 |
Also Published As
Publication number | Publication date |
---|---|
US20210191816A1 (en) | 2021-06-24 |
EP3743814A1 (en) | 2020-12-02 |
KR102403173B1 (ko) | 2022-05-30 |
WO2019147473A1 (en) | 2019-08-01 |
KR20200102528A (ko) | 2020-08-31 |
CN111712803B (zh) | 2024-05-17 |
US20190227870A1 (en) | 2019-07-25 |
US11726874B2 (en) | 2023-08-15 |
US10963340B2 (en) | 2021-03-30 |
EP3743814A4 (en) | 2021-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11749373B2 (en) | Bad block management for memory sub-systems | |
CN112543908B (zh) | 写入缓冲器管理 | |
US11550663B2 (en) | Changing of error correction codes based on the wear of a memory sub-system | |
US11023177B2 (en) | Temperature correction in memory sub-systems | |
US20210389910A1 (en) | Managing a memory system including memory devices with different characteristics | |
US11868202B2 (en) | Granular error reporting on multi-pass programming of non-volatile memory | |
CN114341791B (zh) | 编程操作失败后的数据重定向 | |
US11726874B2 (en) | Storing critical data at a memory system | |
US11221912B2 (en) | Mitigating an undetectable error when retrieving critical data during error handling | |
US11437119B2 (en) | Error read flow component | |
US11632137B2 (en) | Early decoding termination for a memory sub-system | |
WO2021003190A1 (en) | Changing of memory components to be used for a stripe based on an endurance condition |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |