CN104919434B - 用于在固态驱动器中进行较低页数据恢复的系统和方法 - Google Patents
用于在固态驱动器中进行较低页数据恢复的系统和方法 Download PDFInfo
- Publication number
- CN104919434B CN104919434B CN201380064141.3A CN201380064141A CN104919434B CN 104919434 B CN104919434 B CN 104919434B CN 201380064141 A CN201380064141 A CN 201380064141A CN 104919434 B CN104919434 B CN 104919434B
- Authority
- CN
- China
- Prior art keywords
- relatively low
- page
- data
- memory
- programmed
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
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/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
-
- 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/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
- G06F11/1016—Error in accessing a memory location, i.e. addressing 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/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
-
- 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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3418—Disturbance prevention or evaluation; Refreshing of disturbed memory data
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
- G11C11/5642—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0411—Online error correction
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Probability & Statistics with Applications (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
在本发明的某些实施例中,数据存储系统包括控制器和具有多个存储页的非易失性存储器阵列。该控制器执行有效地解决较低页讹误问题的方法。在一个实施例中,该方法选择所配对的较高页未被编程的已编程的较低页,从那些所选择的较低页中读取数据,校正所读取的数据,并且将所读取的数据重编程到那些较低页。由于这种条件下的较低页的数量典型地低(例如,在具有成百上千页的块中的若干页),所以这是比对整个块进行重编程更有效的方法,在另一个实施例中,类似的重编程方法在仅较低页已编程的情况下(例如,SLC存储器、SLC模式下的MLC存储器等等)被应用作为一种数据恢复方案。
Description
技术领域
本公开涉及数据存储系统,例如,用于计算机系统的固态驱动器。更具体地,该公开涉及较低页数据恢复。
背景技术
具有多层单元(MLC)NAND媒体的存储器阵列现在在固态驱动器(SSD)中是常见的。MLC允许多个可能的状态存在于单个存储单元中,因此能够每单元存储多于1个比特的信息(例如,2、3、4或更多)。例如,在每单元2个比特的MLC闪存中,4个可能的状态(4伏特(Vt)水平)是可能的,其能够存储2个比特。基于数据的存储单元将对不同状态进行存储以及编码,该单元被编程为4个可能和明显不同的Vt区域。典型地,存储在较低页和较高页的数据被逻辑地配对在一起,较低页首先被编程。
附图说明
体现本发明的各种特征的系统和方法现在将参考附图进行详细示出,其中:
图1示出了根据本发明的一个实施例的对数据进行重编程的存储系统。
图2A和2B示出了根据本发明的一个实施例的用于说明有助于较低页讹误和解决方法的因素的存储单元的电压分布。
图3是示出了根据本发明一个实施例的重编程的方法的流程图。
图4A-图4B和图5示出了根据本发明的实施例的在其中开放较低页可以被选择用于重编程的不同的存储单元配置。
图6是示出了根据本发明的一个实施例的对仅较低页被编程的单元进行重编程的过程的流程图。
具体实施方式
尽管示出了某些实施例,但是这些实施例仅通过示例进行呈现,并不是要限制保护的范围。事实上,在本文中描述的新方法和系统可以以各种其他形式体现。此外,可以对本文描述的系统和方法的形式做出各种省略、替代和改变而不偏离保护的范围。
概述
在MLC闪存中,尽管较低页和较高页被物理地配对,但是它们通常在编程中被解耦。存储在较低页和较高页的数据可以在不同的时间以及从不同的源被编程。经常会出现较高页被编程得更晚并且处于不同温度的情况。大部分时间,这种编程方案是没问题的。但是,当该存储系统尝试对较高页进行编程时,包括存储单元的温度和老化效应的各种因素会降低单元中数据的保持力并且可能会导致较低页讹误的问题。
一种克服较低页讹误问题的方法是当需要对较高页进行编程时将整个开放块的旧数据移动到另一个新地址。以这种方式,在类似的情况下较低页和较高页被同时编程。但是,此方法是低效的。
在本发明的某些实施例中,数据存储系统包括控制器和具有多个存储页的非易失性存储器阵列。尽管仍然阻止上述讨论的较低页讹误问题,但是该控制器执行可能需要较少量系统负载的方法。在一个实施例中,该方法选择配对的较高页未被编程的已编程的较低页,从那些所选择的较低页中读取数据,校正所读取的数据,并且将所读取的数据重编程到那些较低页。由于这种条件下的较低页的数量典型地很低(例如,在具有成百上千页的块中的若干页),这是比对整个块进行重编程更有效的方法。在另一个实施例中,类似的重编程方法被应用为在仅较低页被编程的情况下(例如,SLC(单级单元)存储器、SLC模式下的MLC存储器等等)的数据恢复方案。
系统概述
图1示出了根据本发明的一个实施例的针对数据恢复执行重编程的存储系统120。如所示,存储系统120(例如,固态驱动器、混合硬盘等)包括控制器130和包括被标识为块“A”142到块“N”的存储器存储的一个或多个存储块在内的非易失性存储器阵列140。每一个块包括闪存页(F-页)。例如,图1的块A 142包括被标识为F-页A 143、B到N的F-页。在某些实施例中,每一个“F-页”是能够在单个操作中进行编程或被编程为单元的非易失性存储器阵列140中存储单元的最小分组。此外,每一个F-页包括误差校正代码页(E-页)。在所示出的实施例中,每一个F-页包括被示出为四个框的四个E-页,其包括E-页144。其他实施例可以使用被不同地定义的F-页或E-页,或每一个F-页可以包括多于或少于四个E-页。
控制器130可以从主机系统110中的存储接口模块112(例如,设备驱动器)中接收数据和/或存储访问命令。由存储接口112传送的存储访问命令可以包括由主机系统110发出的写和读命令。该命令可以指定存储系统120中的逻辑块地址,并且控制器130可以执行在非易失性存储器阵列140中所接收的命令。在混合硬盘中,数据可以存储在除非易失性存储器阵列140外的磁媒介存储部件中(图1中未示出)。
在一个实施例中,控制器130包括ECC模块158。在一个实施例中,该ECC模块158处理从存储阵列140读取的数据进行误差校正。在一个实施例中,其对要被写入非易失性存储器阵列140的存储页面(例如,E-页)的数据进行编码,并且当数据被读出时对它们进行解码。在一个实施例中,控制器130还包括根据本发明的一个或多个实施例执行重编程方法的数据恢复模块162,如下被进一步所描述的。
电压分布图
图2A和图2B示出了根据本发明的一个实施例的用于示出有助于较低页讹误和解决方法的因素的存储单元的电压分布。图2A示出了其中仅较低页被编程的MLC存储单元的电压分布。线200示出了在初始编程点的电压分布。线202示出了一段时间流逝后的电压分布。在图2A中,那些单元已经经历了一个测试过程,在其中它们被加热以模拟40℃大约12.6个月的时间流逝。可以看出分布已经漂移到电压范围左侧,使得某些单元现在位于误差区域208中。这些单元,如果被读取,将可能导致与初始编程值不同的比特值,这是因为它们的电压值现在低于阈值206。因此这数百个比特现在是有误差的。线204示出了根据本发明的一个或多个实施例的在这些单元已经被重新编程后的分布。该分布现在几乎与初始编程时的分布相同,并且失效比特数(FBC)是零。
图2B示出了较高页和较低页二者都已经被编程的MLC存储单元的电压分布。所述图没有示出电压漂移的影响。而是示出了两个场景。首先,线210示出了较高页和较低页二者同时或几乎同时被编程的单元Vt状态的电压分布。这可能被认为是理想状态,因为只有几乎没有时间流逝,并且在两次编程之间几乎没有温度差别。但是,这不是通常单元被编程的方式。如果较高页在与较低页不同的时间和/或温度进行编程,则较低页讹误问题可能发生。但是,较低页的重新编程减少了这个问题的风险。线212示出了根据本发明的一个或多个实施例的单元被重编程后的电压分布。如所示,在对所有三个状态进行重新编程后,三个状态被排列为与在线210中示出的分布非常接近,如上所述,其反映了较高页和较低页二者同时或几乎同时被编程的单元的分布。
重编程
图3是示出了根据本发明的一个实施例的重编程方法250的流程图。方法250可以在定期的基础上或按需的基础上被执行作为启动序列的部分。在一个实施例中,方法250由图1中示出的控制器130执行。在块255,该方法选择具有未被编程的配对的较高页的已编程的较低页。这些较低页可以被称为“开放”较低页。例如,该方法可以从在其中数据目前正被编程的一个或多个“开放”块中选择这样的页。为了进一步示出,如果方法250被执行作为启动序列的部分,则这样的开放块可以是当存储系统最后被关闭时正被编程的块,并且它们没有被关闭因为它们的容量未被填满。由于系统在这些开放块中很有可能重新开始编程,所以较低页讹误问题可能在这些开放较低页中发生。因此,在一个实施例中,该方法选择这样的开放较低页以用于重新编程。
在块260,来自所选较低页的数据被读取,并且接着在块265所读取的数据被校正(例如,通过误差校正码(ECC)的应用)。然后,在块270,被校正的数据被重新编程回所选的较低页。如之前在图2A中示出的,现在在这些较低页中的单元的电压分布非常类似于当它们初始被编程时的分布。因此,当它们的配对的较高页被编程时,较低页讹误问题可以被避免。
选择较低页
图4A-图4B和图5示出了在其中可以选择开放较低页的不同的存储单元配置。在图4A中,呈现了MLC配置并且示出了0-7页。“U”表示较高页并且“L”表示较低页。从顶到底,水平线表示字线,并且它们被标记(在图4A和4B之间)为WL(字线)0、WL1、WL2等等。
页码表示页面被编程的顺序。在此,0-7页已经被编程。页0,WL0中的较低页首先被编程,并且接着是页1,在相同WL0中的较低页被编程等等。注意,页0与较高页4配对,而页1与较高页5配对等等。在这个编程序列里,页2、3、6和7是它们配对的较高页没有被编程的开放较低页。在一个实施例中,如果控制器发现存储器的状态如图4A中所示,则这些页面会被选择用于重新编程,例如,根据图3中所示的方法。在这个典型的配置中,在给定的时间里最多有4个这样的开放页面。因此,对这些开放页面进行重编程比对来自整个存储块的数据进行重编程更高效。在一个实施例中,这些开放页面可以由控制器标记(例如,通过元数据)作为关闭序列的部分,使得在开放块中的任何这样的开放较低页能在启动时被快速地识别。如果用于这样的开放较低页的指示是不可用的(例如,之前非正常/意外关闭已发生或系统不支持标记这样的页),则控制器可以通过存储块执行扫描以定位这样的开放较低页。
图4B示出了在对页8和9进行编程之后相同的存储单元。在当前的示例中,只是在页8和9被编程之前,发生重编程以从页2和3中读出数据,校正的数据被重编程回页2和3。因此,当页8和9被编程时,页2和3的较低页讹误能够被避免。随着页8和9被编程,页2和3不再开放。如果在这一点系统关闭,则在下次启动时控制器可以选择页6和7以用于重编程。
图5示出了在其中每一个单元被配置用于对3个比特进行编码的另一个MLC配置。这个配置通常被称为TLC(三级单元)存储器。在文中与图4A-4B一样应用相同的符号。已编程的页面用具有U和L的符号页0-11进行标记,并且字线被相应地标记。在此,每一个较低页与两个较高页配对。例如,页0与较高页4和10配对。页2、3、6和7是开放较低页。根据一个实施例,如果控制器发现存储器处于这个所示出的状态,则这些页面将被选择用于重编程。注意即使页2和3已经与编程的较高页8和9配对,页2和3也被认为是开放页面。这是因为页2和3中的每一个具有多于一个的要被编程的较高页。再次,对这些少量开放页进行重编程比对存储器的整个存储块进行重编程更高效。
仅对较低页进行重编程
图6是示出了根据本发明的一个实施例的对仅较低页被编程的单元进行重编程的过程的流程图。较低页恢复程序可能有用的另一个情况是仅仅较低页被编程用于数据存储。典型地这些页在已经被指定为仅在较低页或SLC模式下操作的存储块中。可替换地,同样的场景可以发生在SLC存储器中。由于较高页未被编程,所以较低页讹误问题不会发生。但是,尽管如此存在重编程对保持数据完整性有用的实例。例如,在一个实施例中,当存储系统发现数据接近于某些预定义标准时,恢复程序随后可能被应用以促使所编程的电压水平回到其被假定所到的水平。
在图6中,方法300可以由控制器130执行。方法在块310处开始,其中检查一个或多个数据完整性条件。来自最近读取的误差率(例如,被应用的比特失败率和/或误差校正工作)(例如,在LDPC解码和/或RAID恢复中)可能是数据完整性条件的指示。该比率/条件可以从读取中获得被执行作为扫描过程的部分。此外,完整性条件的其他可用的指示可以包括程序擦除循环计数器值和由在参考页/块中测量的电压参考漂移进行估计(approximate)的流逝时间。在块315,这些条件可能与阈值度量做比较,并且当用于触发恢复的特定预定义的条件满足时,方法转到块320以从这些仅较低页被编程的页中读取数据。所读取的数据在块325被校正(例如,通过ECC的应用)。接着在块330,被校正的数据被重编程回这些页。如之前在图2A中所示,现在这些页中单元的电压分布非常类似于它们被初始编程时的分布。
其他变型
本领域的技术人员将意识到在某些实施例中,可以使用其他的方式和方法。例如,如果多遍编程在NAND闪存芯片上由有限状态机允许较高页,则将各种实施例中的方法应用于较高页数据恢复也是可能的。例如,某些较高页可能导致接近ECC的校正限制的大量的误差,并且可能从重编程中获益以将电压水平移动到接近原始编程水平。此外,非易失性存储器阵列140可以使用存储器设备而不是NAND闪存设备来实现。其他类型的固态存储器设备能够可替换地使用,所述其他类型的固态存储器设备例如,闪存集成电路阵列、硫属化物RAM(C-RAM)、相变存储器(PC-RAM或PRAM)、可编程金属单元RAM(PMC-RAM或PMCm)、双向统一存储器(OUM)、电阻RAM(RRAM)、NOR存储器、EEPROM、铁电存储器(FeRAM)、磁阻RAM(MRAM)、其他分立的NVM(非易失性存储器)芯片、或其任意组合。在一个实施例中,非易失性存储器阵列140优选地包括具有能够存储多于单个比特信息的多级单元的多级单元(MLC)设备,但是可以使用单级单元(SLC)存储器设备或SLC和MLC设备的组合。在一个实施例中,存储系统120可以包括其他存储器模块,例如,一个或多个磁存储器模块。存储系统120可以进一步包括其他类型的存储介质,例如,磁存储装置。相应地,本公开的范围是要仅通过参考所附的权利要求来进行限定。
尽管已经描述了特定实施例,但是这些实施例仅通过示例的方式进行呈现,并不是要限制保护的范围。事实上,本文描述的新方法和系统可以以各种其他形式体现。此外,可以对本文描述的方法和系统形式做出各种省略、代替和改变,而不偏离所保护的精神。所附的权利要求和它们的等同物是要覆盖这些形式或修改,其将都落在保护的范围和精神内。例如,本文所公开的系统和方法可以被应用于混合硬盘以及类似物。此外,可以额外或可替换地使用其他形式的存储装置(例如,DRAM或SRAM、电池备份的易失性DRAM或SRAM设备、EPROM、EEPROM存储器等等)。作为另一个示例,在附图中示出的各种部件可以被实现为处理器上的软件和/或固件、ASIC/FPGA、或专用硬件。同样,以上公开的具体实施例的特征和属性能够以不同的方式组合以形成额外的实施例,所有的这些都落在本公开的范围内。尽管本公开提供了某些优选的实施例和应用,但是其他的实施例对本领域的普通技术人员而言是显而易见的,包括不提供本文所述的所有特征和优点的实施例,也落在本公开的范围内。相应地,本公开的范围是要仅通过参考所附的权利要求来进行限定。
Claims (18)
1.一种固态存储系统,包括:
包括多个存储块的非易失性存储器阵列,每一个存储块包括与较高存储页配对的较低存储页;以及
控制器,其被配置为:
从所述多个存储块中选择具有未被编程的配对的较高存储页的已编程的较低存储页;
从所选择的较低存储页中读取第一数据,其中读取的第一数据中的至少一部分是讹误的;
将误差校正应用到所述读取的第一数据以生成校正的第一数据;以及
将所述校正的第一数据编程到选择的较低存储页。
2.如权利要求1所述的固态存储系统,其中,所述非易失性存储器阵列包括多级存储(MLC)单元。
3.如权利要求1所述的固态存储系统,其中,所述控制器被配置为从所述多个存储块的开放存储块中选择所述已编程的较低存储页。
4.如权利要求3所述的固态存储系统,其中所述开放存储块包括在其上开始编程但是在所述存储系统被最后关闭时未完成该编程的块。
5.如权利要求1所述的固态存储系统,其中所述控制器进一步被配置为:
从与所述选择的较低存储页关联的存储块中选择具有未被编程的配对的较高存储页的至少一个其它较低存储页;
从选择的至少一个其它较低存储页中读取第二数据;
将误差校正应用到读取的第二数据以生成校正的第二数据;以及
将所述校正的第二数据编程到所述选择的至少一个其它较低存储页。
6.如权利要求5所述的固态存储系统,其中所述控制器进一步被配置为:从所述存储块中选择具有未被编程的配对的较高存储页的每个较低存储页;以及将数据重编程到每个所述选择的较低存储页。
7.如权利要求1所述的固态存储系统,其中所述控制器被配置为将所述校正的第一数据编程到所述选择的较低存储页以作为启动序列的一部分。
8.如权利要求1所述的固态存储系统,其中所述误差校正包括低密度奇偶校验即LDPC和RAID恢复中的至少一个。
9.如权利要求1所述的固态存储系统,其中所述控制器被配置为使用元数据和扫描中的至少一种来选择所述已编程的较低存储页。
10.一种在包括非易失性存储器阵列的固态存储系统中保持数据完整性的方法,所述非易失性存储器阵列包括多个存储块,所述多个存储块的每一个包括多个存储页,所述方法包括:
从所述多个存储块中选择具有未被编程的配对的较高存储页的已编程的较低存储页;
从选择的较低存储页中读取第一数据,其中读取的第一数据中的至少一部分是讹误的;
将误差校正应用到所述读取的第一数据以生成校正的第一数据;以及
将所校正的第一数据编程到选择的较低存储页。
11.如权利要求10所述的方法,其中,所述非易失性存储器阵列包括多级存储(MLC)单元。
12.如权利要求10所述的方法,其中,选择包括从所述多个存储块的开放存储块中选择已编程的较低存储页。
13.如权利要求12所述的方法,其中所述开放存储块包括在其上开始编程但是在所述存储系统被最后关闭时未完成该编程的块。
14.如权利要求10所述的方法,进一步包括:从与所述选择的较低存储页关联的存储块中选择具有未被编程的配对的较高存储页的至少一个其它较低存储页;从选择的至少一个其它较低存储页中读取第二数据;将误差校正应用到读取的第二数据以生成校正的第二数据;以及将所述校正的第二数据编程到所述选择的至少一个其它较低存储页。
15.如权利要求14所述的方法,进一步包括:从所述存储块中选择具有未被编程的配对的较高存储页的每个较低存储页;以及将数据重编程到每个所选择的存较低储页。
16.如权利要求10所述的方法,其中将所述校正的第一数据编程到所述选择的较低存储页作为启动序列的一部分被执行。
17.如权利要求10所述的方法,其中所述误差校正包括低密度奇偶校验即LDPC和RAID恢复中的至少一个。
18.如权利要求10所述的方法,其中选择所述已编程的较低存储页包括使用元数据和扫描中的至少一个。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/708,873 US9032271B2 (en) | 2012-12-07 | 2012-12-07 | System and method for lower page data recovery in a solid state drive |
US13/708,873 | 2012-12-07 | ||
PCT/US2013/061608 WO2014088682A1 (en) | 2012-12-07 | 2013-09-25 | System and method for lower page data recovery in a solid state drive |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104919434A CN104919434A (zh) | 2015-09-16 |
CN104919434B true CN104919434B (zh) | 2018-11-06 |
Family
ID=50882401
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380064141.3A Expired - Fee Related CN104919434B (zh) | 2012-12-07 | 2013-09-25 | 用于在固态驱动器中进行较低页数据恢复的系统和方法 |
Country Status (7)
Country | Link |
---|---|
US (2) | US9032271B2 (zh) |
EP (1) | EP2929441A4 (zh) |
JP (2) | JP6312698B2 (zh) |
KR (2) | KR101882065B1 (zh) |
CN (1) | CN104919434B (zh) |
HK (1) | HK1215083A1 (zh) |
WO (1) | WO2014088682A1 (zh) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9043679B2 (en) * | 2012-07-02 | 2015-05-26 | Kabushiki Kaisha Toshiba | Memory device |
US9032271B2 (en) | 2012-12-07 | 2015-05-12 | Western Digital Technologies, Inc. | System and method for lower page data recovery in a solid state drive |
US9543019B2 (en) * | 2012-12-11 | 2017-01-10 | Intel Corporation | Error corrected pre-read for upper page write in a multi-level cell memory |
US9478271B2 (en) * | 2013-03-14 | 2016-10-25 | Seagate Technology Llc | Nonvolatile memory data recovery after power failure |
US20150143027A1 (en) * | 2013-11-20 | 2015-05-21 | Sage Microelectronics Corp. | Solid state drive with raid functions |
KR102245822B1 (ko) * | 2014-11-26 | 2021-04-30 | 삼성전자주식회사 | 불휘발성 메모리 장치를 포함하는 저장 장치 및 그것의 프로그램 방법 |
US9916434B2 (en) | 2015-02-27 | 2018-03-13 | Renato M. de Luna | Office infrastructure device with extended integrated biometric login system |
US10187248B2 (en) | 2015-02-27 | 2019-01-22 | Renato M. de Luna | Instant office infrastructure device |
US9858002B1 (en) | 2016-05-13 | 2018-01-02 | Seagate Technology Llc | Open block stability scanning |
US10048863B1 (en) | 2016-06-01 | 2018-08-14 | Seagate Technology Llc | Open block refresh management |
US10089170B1 (en) | 2016-06-15 | 2018-10-02 | Seagate Technology Llc | Open block management |
US10229000B2 (en) | 2016-08-09 | 2019-03-12 | Seagate Llc | Erasure codes to prevent lower page corruption in flash memory |
CN108572887A (zh) * | 2017-03-14 | 2018-09-25 | 上海骐宏电驱动科技有限公司 | 数据检验校正方法 |
KR102299186B1 (ko) | 2017-03-21 | 2021-09-08 | 마이크론 테크놀로지, 인크. | 자동화된 동적 워드 라인 시작 전압을 위한 장치 및 방법 |
US10936205B2 (en) | 2017-10-05 | 2021-03-02 | International Business Machines Corporation | Techniques for retention and read-disturb aware health binning |
US11316918B2 (en) | 2017-11-24 | 2022-04-26 | Renato M. de Luna | Collaborative electronic work group with index-based file management |
US10824352B2 (en) | 2017-12-06 | 2020-11-03 | International Business Machines Corporation | Reducing unnecessary calibration of a memory unit for which the error count margin has been exceeded |
US10540228B2 (en) | 2018-03-07 | 2020-01-21 | Micron Technology, Inc. | Providing data of a memory system based on an adjustable error rate |
US10897273B2 (en) | 2018-06-27 | 2021-01-19 | Western Digital Technologies, Inc. | System-level error correction coding allocation based on device population data integrity sharing |
US10802908B2 (en) | 2018-07-31 | 2020-10-13 | Western Digital Technologies, Inc. | Data dependent allocation of error correction resources |
US10699791B2 (en) | 2018-08-24 | 2020-06-30 | International Business Machines Corporation | Adaptive read voltage threshold calibration in non-volatile memory |
KR20200085519A (ko) * | 2019-01-07 | 2020-07-15 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
US11288011B2 (en) * | 2020-03-26 | 2022-03-29 | Western Digital Technologies, Inc. | Non-volatile memory array with write failure protection for multi-level cell (MLC) storage elements using coupled writes |
CN112463656B (zh) * | 2020-11-25 | 2022-09-23 | 至誉科技(武汉)有限公司 | 固态硬盘异常掉电恢复方法、系统及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101246738A (zh) * | 2007-01-03 | 2008-08-20 | 三星电子株式会社 | 具有备份电路的存储系统及编程方法 |
CN101630279A (zh) * | 2003-10-03 | 2010-01-20 | 桑迪士克股份有限公司 | 快闪存储器数据校正及擦除技术 |
CN101809541A (zh) * | 2007-08-22 | 2010-08-18 | 美光科技公司 | 快闪存储器中的错误扫描 |
Family Cites Families (114)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2790134B1 (ja) * | 1997-03-11 | 1998-08-27 | 日本電気株式会社 | ディスクアレイシステム |
JP4059472B2 (ja) * | 2001-08-09 | 2008-03-12 | 株式会社ルネサステクノロジ | メモリカード及びメモリコントローラ |
US6856556B1 (en) | 2003-04-03 | 2005-02-15 | Siliconsystems, Inc. | Storage subsystem with embedded circuit for protecting against anomalies in power signal from host |
US7502256B2 (en) | 2004-11-30 | 2009-03-10 | Siliconsystems, Inc. | Systems and methods for reducing unauthorized data recovery from solid-state storage devices |
KR100666174B1 (ko) * | 2005-04-27 | 2007-01-09 | 삼성전자주식회사 | 3-레벨 불휘발성 반도체 메모리 장치 및 이에 대한구동방법 |
US7954037B2 (en) * | 2005-10-25 | 2011-05-31 | Sandisk Il Ltd | Method for recovering from errors in flash memory |
JP2009536423A (ja) * | 2006-05-05 | 2009-10-08 | ハネウェル・インターナショナル・インコーポレーテッド | 不揮発性メモリをリフレッシュする方法 |
US7653778B2 (en) | 2006-05-08 | 2010-01-26 | Siliconsystems, Inc. | Systems and methods for measuring the useful life of solid-state storage devices |
US7489549B2 (en) | 2006-06-22 | 2009-02-10 | Sandisk Corporation | System for non-real time reprogramming of non-volatile memory to achieve tighter distribution of threshold voltages |
US7486561B2 (en) | 2006-06-22 | 2009-02-03 | Sandisk Corporation | Method for non-real time reprogramming of non-volatile memory to achieve tighter distribution of threshold voltages |
US8108692B1 (en) | 2006-06-27 | 2012-01-31 | Siliconsystems, Inc. | Solid-state storage subsystem security solution |
US7765373B1 (en) | 2006-06-27 | 2010-07-27 | Siliconsystems, Inc. | System for controlling use of a solid-state storage subsystem |
US7447807B1 (en) | 2006-06-30 | 2008-11-04 | Siliconsystems, Inc. | Systems and methods for storing data in segments of a storage subsystem |
US7509441B1 (en) | 2006-06-30 | 2009-03-24 | Siliconsystems, Inc. | Systems and methods for segmenting and protecting a storage subsystem |
US8161227B1 (en) | 2006-10-30 | 2012-04-17 | Siliconsystems, Inc. | Storage subsystem capable of programming field-programmable devices of a target computer system |
US8549236B2 (en) | 2006-12-15 | 2013-10-01 | Siliconsystems, Inc. | Storage subsystem with multiple non-volatile memory arrays to protect against data losses |
KR100850515B1 (ko) | 2007-01-24 | 2008-08-05 | 삼성전자주식회사 | 멀티레벨 셀 플래시 메모리를 갖는 메모리 시스템 및그것의 프로그램 방법 |
US7596643B2 (en) | 2007-02-07 | 2009-09-29 | Siliconsystems, Inc. | Storage subsystem with configurable buffer |
US7685337B2 (en) | 2007-05-24 | 2010-03-23 | Siliconsystems, Inc. | Solid state storage subsystem for embedded applications |
US7685338B2 (en) | 2007-05-24 | 2010-03-23 | Siliconsystems, Inc. | Solid state storage subsystem for embedded applications |
US7685374B2 (en) | 2007-07-26 | 2010-03-23 | Siliconsystems, Inc. | Multi-interface and multi-bus structured solid-state storage subsystem |
JP5259138B2 (ja) * | 2007-08-15 | 2013-08-07 | 株式会社日立超エル・エス・アイ・システムズ | 記憶装置 |
JP2009048750A (ja) * | 2007-08-23 | 2009-03-05 | Toshiba Corp | 不揮発性半導体記憶装置 |
US8095851B2 (en) | 2007-09-06 | 2012-01-10 | Siliconsystems, Inc. | Storage subsystem capable of adjusting ECC settings based on monitored conditions |
US8174905B2 (en) | 2007-09-19 | 2012-05-08 | Anobit Technologies Ltd. | Programming orders for reducing distortion in arrays of multi-level analog memory cells |
TWI362667B (en) | 2007-12-31 | 2012-04-21 | Phison Electronics Corp | Data writing method for flash memory and controller thereof |
US8078918B2 (en) | 2008-02-07 | 2011-12-13 | Siliconsystems, Inc. | Solid state storage subsystem that maintains and provides access to data reflective of a failure risk |
US7962792B2 (en) | 2008-02-11 | 2011-06-14 | Siliconsystems, Inc. | Interface for enabling a host computer to retrieve device monitor data from a solid state storage subsystem |
JP2009205555A (ja) * | 2008-02-28 | 2009-09-10 | Toshiba Corp | メモリシステム |
JP4762261B2 (ja) * | 2008-03-12 | 2011-08-31 | 株式会社東芝 | メモリシステム |
US7733712B1 (en) | 2008-05-20 | 2010-06-08 | Siliconsystems, Inc. | Storage subsystem with embedded circuit for protecting against anomalies in power signal from host |
TWI375962B (en) | 2008-06-09 | 2012-11-01 | Phison Electronics Corp | Data writing method for flash memory and storage system and controller using the same |
US8959280B2 (en) * | 2008-06-18 | 2015-02-17 | Super Talent Technology, Corp. | Super-endurance solid-state drive with endurance translation layer (ETL) and diversion of temp files for reduced flash wear |
US8375151B1 (en) | 2009-02-12 | 2013-02-12 | Siliconsystems, Inc. | Command portal for securely communicating and executing non-standard storage subsystem commands |
US8583835B1 (en) | 2008-08-06 | 2013-11-12 | Siliconsystems, Inc. | Command portal for executing non-standard storage subsystem commands |
JP2010067098A (ja) * | 2008-09-11 | 2010-03-25 | Sony Corp | 情報処理装置、情報処理方法および情報処理プログラム |
US8248831B2 (en) | 2008-12-31 | 2012-08-21 | Apple Inc. | Rejuvenation of analog memory cells |
US9176859B2 (en) | 2009-01-07 | 2015-11-03 | Siliconsystems, Inc. | Systems and methods for improving the performance of non-volatile memory operations |
US8090899B1 (en) | 2009-03-04 | 2012-01-03 | Western Digital Technologies, Inc. | Solid state drive power safe wear-leveling |
US10079048B2 (en) | 2009-03-24 | 2018-09-18 | Western Digital Technologies, Inc. | Adjusting access of non-volatile semiconductor memory based on access time |
KR20100107294A (ko) | 2009-03-25 | 2010-10-05 | 삼성전자주식회사 | 불휘발성 메모리 장치를 포함하는 메모리 시스템 및 불휘발성 메모리 장치의 프로그램 방법 |
US8238157B1 (en) | 2009-04-12 | 2012-08-07 | Apple Inc. | Selective re-programming of analog memory cells |
US8307241B2 (en) | 2009-06-16 | 2012-11-06 | Sandisk Technologies Inc. | Data recovery in multi-level cell nonvolatile memory |
US8254172B1 (en) | 2009-09-30 | 2012-08-28 | Western Digital Technologies, Inc. | Wear leveling non-volatile semiconductor memory based on erase times and program times |
US8243525B1 (en) | 2009-09-30 | 2012-08-14 | Western Digital Technologies, Inc. | Refreshing non-volatile semiconductor memory by reading without rewriting |
KR101603099B1 (ko) * | 2009-10-01 | 2016-03-28 | 삼성전자주식회사 | 불안정 메모리 셀 산포를 검출하는 메모리 시스템 및 상기 불안정 메모리 셀 산포 검출방법 |
US9753847B2 (en) | 2009-10-27 | 2017-09-05 | Western Digital Technologies, Inc. | Non-volatile semiconductor memory segregating sequential, random, and system data to reduce garbage collection for page based mapping |
US8634240B2 (en) | 2009-10-28 | 2014-01-21 | SanDisk Technologies, Inc. | Non-volatile memory and method with accelerated post-write read to manage errors |
US8135903B1 (en) | 2009-10-30 | 2012-03-13 | Western Digital Technologies, Inc. | Non-volatile semiconductor memory compressing data to improve performance |
US8261012B2 (en) | 2009-10-30 | 2012-09-04 | Western Digital Technologies, Inc. | Non-volatile semiconductor memory comprising power fail circuitry for flushing write data in response to a power fail signal |
US8397107B1 (en) | 2009-12-11 | 2013-03-12 | Western Digital Technologies, Inc. | Data storage device employing data path protection using both LBA and PBA |
US8443167B1 (en) | 2009-12-16 | 2013-05-14 | Western Digital Technologies, Inc. | Data storage device employing a run-length mapping table and a single address mapping table |
JP2011128751A (ja) * | 2009-12-16 | 2011-06-30 | Clarion Co Ltd | データ記録装置およびデータ記録装置の制御方法 |
US8595411B2 (en) * | 2009-12-30 | 2013-11-26 | Sandisk Technologies Inc. | Method and controller for performing a sequence of commands |
US8549214B2 (en) | 2010-02-17 | 2013-10-01 | Marvell World Trade Ltd. | Protection against data corruption for multi-level memory cell (MLC) flash memory |
US8316176B1 (en) | 2010-02-17 | 2012-11-20 | Western Digital Technologies, Inc. | Non-volatile semiconductor memory segregating sequential data during garbage collection to reduce write amplification |
US8407449B1 (en) | 2010-02-26 | 2013-03-26 | Western Digital Technologies, Inc. | Non-volatile semiconductor memory storing an inverse map for rebuilding a translation table |
US8725931B1 (en) | 2010-03-26 | 2014-05-13 | Western Digital Technologies, Inc. | System and method for managing the execution of memory commands in a solid-state memory |
US8713066B1 (en) | 2010-03-29 | 2014-04-29 | Western Digital Technologies, Inc. | Managing wear leveling and garbage collection operations in a solid-state memory using linked lists |
US8782327B1 (en) | 2010-05-11 | 2014-07-15 | Western Digital Technologies, Inc. | System and method for managing execution of internal commands and host commands in a solid-state memory |
US9026716B2 (en) | 2010-05-12 | 2015-05-05 | Western Digital Technologies, Inc. | System and method for managing garbage collection in solid-state memory |
US8341339B1 (en) | 2010-06-14 | 2012-12-25 | Western Digital Technologies, Inc. | Hybrid drive garbage collecting a non-volatile semiconductor memory by migrating valid data to a disk |
US8612669B1 (en) | 2010-06-28 | 2013-12-17 | Western Digital Technologies, Inc. | System and method for performing data retention in solid-state memory using copy commands and validity and usage data |
US8447920B1 (en) | 2010-06-29 | 2013-05-21 | Western Digital Technologies, Inc. | System and method for managing data access in non-volatile memory |
US8521972B1 (en) | 2010-06-30 | 2013-08-27 | Western Digital Technologies, Inc. | System and method for optimizing garbage collection in data storage |
US8639872B1 (en) | 2010-08-13 | 2014-01-28 | Western Digital Technologies, Inc. | Hybrid drive comprising write cache spanning non-volatile semiconductor memory and disk |
US8341500B2 (en) | 2010-08-31 | 2012-12-25 | Apple Inc. | Detecting corrupted data for a system having non-volatile memory |
US8775720B1 (en) | 2010-08-31 | 2014-07-08 | Western Digital Technologies, Inc. | Hybrid drive balancing execution times for non-volatile semiconductor memory and disk |
US8638602B1 (en) | 2010-09-10 | 2014-01-28 | Western Digital Technologies, Inc. | Background selection of voltage reference values for performing memory read operations |
US8769190B1 (en) | 2010-09-15 | 2014-07-01 | Western Digital Technologies, Inc. | System and method for reducing contentions in solid-state memory access |
US8788779B1 (en) | 2010-09-17 | 2014-07-22 | Western Digital Technologies, Inc. | Non-volatile storage subsystem with energy-based performance throttling |
US8612804B1 (en) | 2010-09-30 | 2013-12-17 | Western Digital Technologies, Inc. | System and method for improving wear-leveling performance in solid-state memory |
JP2012123856A (ja) * | 2010-12-06 | 2012-06-28 | Toshiba Corp | 不揮発性半導体記憶装置 |
US8601313B1 (en) | 2010-12-13 | 2013-12-03 | Western Digital Technologies, Inc. | System and method for a data reliability scheme in a solid state memory |
US8615681B2 (en) | 2010-12-14 | 2013-12-24 | Western Digital Technologies, Inc. | System and method for maintaining a data redundancy scheme in a solid state memory in the event of a power loss |
US8601311B2 (en) | 2010-12-14 | 2013-12-03 | Western Digital Technologies, Inc. | System and method for using over-provisioned data capacity to maintain a data redundancy scheme in a solid state memory |
US8458435B1 (en) | 2010-12-20 | 2013-06-04 | Western Digital Technologies, Inc. | Sequential write thread detection |
US8392635B2 (en) | 2010-12-22 | 2013-03-05 | Western Digital Technologies, Inc. | Selectively enabling a host transfer interrupt |
US8683113B2 (en) | 2011-02-04 | 2014-03-25 | Western Digital Technologies, Inc. | Concurrently searching multiple devices of a non-volatile semiconductor memory |
JP2012164072A (ja) * | 2011-02-04 | 2012-08-30 | Toshiba Corp | メモリコントローラ |
US8700950B1 (en) | 2011-02-11 | 2014-04-15 | Western Digital Technologies, Inc. | System and method for data error recovery in a solid state subsystem |
US8595597B2 (en) * | 2011-03-03 | 2013-11-26 | Intel Corporation | Adjustable programming speed for NAND memory devices |
US8700951B1 (en) | 2011-03-09 | 2014-04-15 | Western Digital Technologies, Inc. | System and method for improving a data redundancy scheme in a solid state subsystem with additional metadata |
US8769232B2 (en) | 2011-04-06 | 2014-07-01 | Western Digital Technologies, Inc. | Non-volatile semiconductor memory module enabling out of order host command chunk media access |
US8862804B2 (en) | 2011-04-29 | 2014-10-14 | Western Digital Technologies, Inc. | System and method for improved parity determination within a data redundancy scheme in a solid state memory |
US8751728B1 (en) | 2011-04-29 | 2014-06-10 | Western Digital Technologies, Inc. | Storage system bus transfer optimization |
US9021178B2 (en) | 2011-05-02 | 2015-04-28 | Western Digital Technologies, Inc. | High performance path for command processing |
US8639992B2 (en) * | 2011-05-16 | 2014-01-28 | GlobalFoundries, Inc. | Soft error rate detector |
US8503237B1 (en) | 2011-05-18 | 2013-08-06 | Western Digital Technologies, Inc. | System and method for data recovery in a solid state storage device |
US8793429B1 (en) | 2011-06-03 | 2014-07-29 | Western Digital Technologies, Inc. | Solid-state drive with reduced power up time |
US8719531B2 (en) | 2011-06-14 | 2014-05-06 | Western Digital Technologies, Inc. | System and method for performing data retention that incorporates environmental conditions |
US8423722B1 (en) | 2011-08-26 | 2013-04-16 | Western Digital Technologies, Inc. | System and method for high performance command processing in solid state drives |
US8700834B2 (en) | 2011-09-06 | 2014-04-15 | Western Digital Technologies, Inc. | Systems and methods for an enhanced controller architecture in data storage systems |
US8707104B1 (en) | 2011-09-06 | 2014-04-22 | Western Digital Technologies, Inc. | Systems and methods for error injection in data storage systems |
US8713357B1 (en) | 2011-09-06 | 2014-04-29 | Western Digital Technologies, Inc. | Systems and methods for detailed error reporting in data storage systems |
JP2013089082A (ja) * | 2011-10-19 | 2013-05-13 | Toshiba Corp | メモリコントローラ、半導体記憶システムおよびメモリ制御方法 |
US8977803B2 (en) | 2011-11-21 | 2015-03-10 | Western Digital Technologies, Inc. | Disk drive data caching using a multi-tiered memory |
US8724422B1 (en) | 2012-02-29 | 2014-05-13 | Western Digital Technologies, Inc. | System and method for charging back-up charge storage element for data storage device using spindle phase switching elements |
US9003224B2 (en) | 2012-04-25 | 2015-04-07 | Western Digital Technologies, Inc. | Managing unreliable memory in data storage systems |
US8788778B1 (en) | 2012-06-04 | 2014-07-22 | Western Digital Technologies, Inc. | Garbage collection based on the inactivity level of stored data |
US8966343B2 (en) | 2012-08-21 | 2015-02-24 | Western Digital Technologies, Inc. | Solid-state drive retention monitor using reference blocks |
US8788880B1 (en) | 2012-08-22 | 2014-07-22 | Western Digital Technologies, Inc. | Efficient retry mechanism for solid-state memory failures |
US9268682B2 (en) | 2012-10-05 | 2016-02-23 | Skyera, Llc | Methods, devices and systems for physical-to-logical mapping in solid state drives |
US8972826B2 (en) | 2012-10-24 | 2015-03-03 | Western Digital Technologies, Inc. | Adaptive error correction codes for data storage systems |
US9177638B2 (en) | 2012-11-13 | 2015-11-03 | Western Digital Technologies, Inc. | Methods and devices for avoiding lower page corruption in data storage devices |
US8954694B2 (en) | 2012-11-15 | 2015-02-10 | Western Digital Technologies, Inc. | Methods, data storage devices and systems for fragmented firmware table rebuild in a solid state drive |
US9021339B2 (en) | 2012-11-29 | 2015-04-28 | Western Digital Technologies, Inc. | Data reliability schemes for data storage systems |
US9059736B2 (en) | 2012-12-03 | 2015-06-16 | Western Digital Technologies, Inc. | Methods, solid state drive controllers and data storage devices having a runtime variable raid protection scheme |
US9032271B2 (en) | 2012-12-07 | 2015-05-12 | Western Digital Technologies, Inc. | System and method for lower page data recovery in a solid state drive |
US20140223255A1 (en) | 2012-12-18 | 2014-08-07 | Western Digital Technologies, Inc. | Decoder having early decoding termination detection |
US9430376B2 (en) | 2012-12-26 | 2016-08-30 | Western Digital Technologies, Inc. | Priority-based garbage collection for data storage systems |
TWI508082B (zh) * | 2013-09-30 | 2015-11-11 | Phison Electronics Corp | 解碼方法、記憶體儲存裝置與記憶體控制電路單元 |
KR102149668B1 (ko) * | 2014-04-22 | 2020-08-31 | 삼성전자주식회사 | 비휘발성 메모리 장치의 데이터 디코딩 방법 |
US9329935B2 (en) * | 2014-05-19 | 2016-05-03 | Seagate Technology Llc | Method to dynamically update LLRs in an SSD drive and/or controller |
-
2012
- 2012-12-07 US US13/708,873 patent/US9032271B2/en active Active
-
2013
- 2013-09-25 JP JP2015546458A patent/JP6312698B2/ja active Active
- 2013-09-25 EP EP13860448.3A patent/EP2929441A4/en not_active Withdrawn
- 2013-09-25 CN CN201380064141.3A patent/CN104919434B/zh not_active Expired - Fee Related
- 2013-09-25 WO PCT/US2013/061608 patent/WO2014088682A1/en active Application Filing
- 2013-09-25 KR KR1020157017933A patent/KR101882065B1/ko active IP Right Grant
- 2013-09-25 KR KR1020187020507A patent/KR101970450B1/ko active IP Right Grant
-
2015
- 2015-04-30 US US14/700,760 patent/US9952939B1/en active Active
-
2016
- 2016-03-14 HK HK16102904.3A patent/HK1215083A1/zh unknown
- 2016-11-17 JP JP2016224035A patent/JP2017073151A/ja active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101630279A (zh) * | 2003-10-03 | 2010-01-20 | 桑迪士克股份有限公司 | 快闪存储器数据校正及擦除技术 |
CN101246738A (zh) * | 2007-01-03 | 2008-08-20 | 三星电子株式会社 | 具有备份电路的存储系统及编程方法 |
CN101809541A (zh) * | 2007-08-22 | 2010-08-18 | 美光科技公司 | 快闪存储器中的错误扫描 |
Also Published As
Publication number | Publication date |
---|---|
EP2929441A4 (en) | 2016-08-31 |
US9032271B2 (en) | 2015-05-12 |
JP2017073151A (ja) | 2017-04-13 |
JP2016501413A (ja) | 2016-01-18 |
HK1215083A1 (zh) | 2016-08-12 |
KR20150095741A (ko) | 2015-08-21 |
CN104919434A (zh) | 2015-09-16 |
KR101882065B1 (ko) | 2018-07-25 |
KR101970450B1 (ko) | 2019-04-18 |
JP6312698B2 (ja) | 2018-04-18 |
WO2014088682A1 (en) | 2014-06-12 |
US20140164870A1 (en) | 2014-06-12 |
US9952939B1 (en) | 2018-04-24 |
KR20180085065A (ko) | 2018-07-25 |
EP2929441A1 (en) | 2015-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104919434B (zh) | 用于在固态驱动器中进行较低页数据恢复的系统和方法 | |
US9542344B2 (en) | Datapath management in a memory controller | |
US9015561B1 (en) | Adaptive redundancy in three dimensional memory | |
US9355713B2 (en) | Systems and methods for lower page writes | |
US9159441B2 (en) | Method of operating memory device assuring reliability and memory system | |
US20130279249A1 (en) | Operating method of memory system including nand flash memory, variable resistance memory and controller | |
WO2016057228A1 (en) | System and method for refreshing data in a memory device | |
US9542258B1 (en) | System and method for error-minimizing voltage threshold selection | |
CN103971724B (zh) | 存储器、存储控制器、存储系统、及其操作方法 | |
US9484098B1 (en) | Smart reread in nonvolatile memory | |
US9691485B1 (en) | Storage system and method for marginal write-abort detection using a memory parameter change | |
JP2016506590A (ja) | データストレージシステムのための対数尤度比及び一括対数尤度比生成 | |
US9239757B2 (en) | Method and apparatus for relocating data in non-volatile memory | |
US10839914B2 (en) | Physical secure erase of solid state drives | |
US9583207B2 (en) | Adaptive data shaping in nonvolatile memory | |
US9355732B2 (en) | Latch initialization for a data storage device | |
CN108228093B (zh) | 使用后台介质扫描来监控存储器的方法和装置 | |
US20150325290A1 (en) | Data operations in non-volatile memory | |
US9684552B2 (en) | Method for driving nonvolatile memory device | |
US20140301132A1 (en) | Storage control device, storage device, information processing system, and processing method thereof | |
US11656990B2 (en) | Memory system and operating method thereof | |
KR20140104829A (ko) | 멀티 레벨 셀 비휘발성 메모리 시스템 | |
US11474726B2 (en) | Memory system, memory controller, and operation method thereof | |
US9548105B1 (en) | Enhanced post-write read for 3-D memory | |
KR101529652B1 (ko) | 선택적 리프레시를 이용한 메모리 장치, 제어 방법 및 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1215083 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20181106 Termination date: 20190925 |
|
REG | Reference to a national code |
Ref country code: HK Ref legal event code: WD Ref document number: 1215083 Country of ref document: HK |