CN105051703B - 用于避免数据存储设备中较低页讹误的方法和设备 - Google Patents

用于避免数据存储设备中较低页讹误的方法和设备 Download PDF

Info

Publication number
CN105051703B
CN105051703B CN201380065610.3A CN201380065610A CN105051703B CN 105051703 B CN105051703 B CN 105051703B CN 201380065610 A CN201380065610 A CN 201380065610A CN 105051703 B CN105051703 B CN 105051703B
Authority
CN
China
Prior art keywords
data
buffer
storage device
volatile memory
data storage
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.)
Active
Application number
CN201380065610.3A
Other languages
English (en)
Other versions
CN105051703A (zh
Inventor
R·丹尼尔克
R·N·马伦多尔
A·J·汤姆林
J·琼斯
J-Y·杨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sandisk Technology Co
Original Assignee
Western Digital Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Western Digital Technologies Inc filed Critical Western Digital Technologies Inc
Publication of CN105051703A publication Critical patent/CN105051703A/zh
Application granted granted Critical
Publication of CN105051703B publication Critical patent/CN105051703B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital 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/5621Digital 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/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/005Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor comprising combined but independently operative RAM-ROM, RAM-PROM, RAM-EPROM cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/005Circuit means for protection against loss of information of semiconductor storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7203Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

数据存储设备可以包括多个多层单元(MLC)非易失性存储器设备,所述多层单元(MLC)非易失性存储器设备包括多个较低页以及相对应的多个较高序页。控制器可以被配置为将数据写到多个较低页和相对应的多个较高序页以及从多个较低页和相对应的多个较高序页读取数据。缓冲器可以与控制器耦合,缓冲器可以被配置为对要写到MLC非易失性存储器设备的数据进行累积,分配缓冲器中的空间,以及将累积的数据写到分配的空间。累积的数据的至少一部分可以被写到MLC非易失性存储器设备的较低页中,并且当在MLC非易失性存储器设备中与较低页相对应的所有较高序页已经被写入时,可以将存储要被写到较低页的数据的缓冲器中的空间解除分配。

Description

用于避免数据存储设备中较低页讹误的方法和设备
背景技术
闪速存储器是一种能够进行电擦除以及重编程的非易失性计算机存储技术。闪速存储器通常按块写,以及按较大的超级块或S-块进行分配、垃圾收集和擦除。
闪速存储器包括多个单元,其中每一个单元被配置为每单元存储一位、两位或更多位。SLC是“单层单元(Single-Level Cell)”的缩写,其表示每一个单元存储一位的配置。SLC的特征不仅在于快速的传送速度、低功率消耗以及高的单元持久性,而且还在于相对高的成本。MLC是“多层单元(Multi-level Cell)”的简称,其表示每一个单元每单元存储两位或更多位的配置。首字母缩略词MLC通常用来表示具有每单元存储两位的单元的闪速存储器。但是,该相同的首字母缩略词MLC还用于指定的闪速存储器,所述指定的闪速存储器具有被配置为每单元存储三位(也称为“TLC”或三元组或三层单元)或者每单元甚至更多位数的单元。当MLC用来指定在每一个单元中存储两位的存储器时,这样的MLC闪速存储器的特征可以在于与单层单元存储器相比较慢的传输速度、较高的功耗以及较低的单元持久性。但是,与SLC存储器相比,这样的MLC存储器享有每比特相对较低的制造成本。
在MLC NAND闪速存储器中,存储器单元的相同的物理页可以用来存储数据的两个或更多个逻辑页,每一个单元被配置为存储2位或更多位。当每单元存储两位时,首先存储较低页(lower page)的第一位,以及然后存储一个或多个较高序页(higher-order page)的下一位或多位。首先对较低页进行编程,然后对较高序的一页或多页进行编程。当对上页进行编程时,编程电压被施加到已经在较低页中存储有效数据的相同的单元。如果在对较高序的一页或多页进行编程期间发生电力故障,则较低页中存储的数据可能不可恢复地讹误,想要存储在较高序的一页或多页中的数据可能也是如此。该问题由于主机可能已经接收到来自数据存储设备的、指示存储在较低页中的数据已经保存到闪速存储器的确认的事实而复杂化。
图1是常规闪速数据存储设备的各方面的框图。如其中所示,闪速数据存储设备100包括控制器104。控制器104与统一以数字102指代的非易失性存储器(例如,闪速存储器设备)的阵列相耦合。常规地,为了提供电力故障保护,常规的闪速数据存储设备包括备用电源,如图1中的106所示。如106所指示的,超级电容器或离散电容器的阵列常规地用于在掉电期间保持控制器104和非易失性存储器102加电,通常仅足够长以结束将数据编程到闪速存储器设备102中。事实上,这些超级电容器或离散电容器阵列被配置为存储充分大量的能量来使控制器104能够在掉电时完成任何固件操作(例如写操作)。但是,这不是最优的,因为超级电容器很大、不可靠、易出现问题,而且昂贵。
附图说明
图1是常规闪速数据存储设备的方面的框图。
图2是根据一个实施例的示出了数据存储设备的物理的和逻辑的数据组织的方面的图。
图3是根据一个实施例的S-块的框图。
图4是根据一个实施例的S-页的框图。
图5是根据一个实施例的数据存储设备的框图。
图6是根据一个实施例的控制数据存储设备的方法的流程图。
具体实施方式
在本公开的范围内,首字母缩略词“MLC”明确地表示包括每单元存储两位或更多位的单元的闪速存储器。在其中这样的MLC闪速存储器被配置为每单元存储两位的情况下,数据被存储在较低页和相对应的上页中。在其中这样的MLC闪速存储器被配置为每单元存储三位或更多位的情况下,数据被存储在较低页以及一个或多个相对应的较高序页中。术语“较高序页”是要明确地涵盖上页和/或上页以及较高序的一个或多个页。
图2是根据一个实施例的示出了数据存储设备200的物理和逻辑数据组织方面的图。在一个实施例中,数据存储设备是SSD。在另一实施例中,数据存储设备是包括闪速存储器和旋转磁性存储介质的混合驱动器。本公开能够应用于SSD和混合实现二者,但是为了简单起见,将参考基于SSD的实现来描述各个实施例。根据一个实施例的数据存储设备控制器202可以被配置为与主机耦合,主机如附图标记218所示。主机218可以利用逻辑块寻址(LBA)方案。虽然LBA尺寸通常是固定的,但是主机能够动态地改变LBA的尺寸。例如,可以对物理数据存储设备进行逻辑划分,以支持被配置用于不同尺寸的LBA的分区。但是,物理设备不需要这样的分区来同时支持不同尺寸的LBA。例如,LBA尺寸可以根据接口和接口模式而不同。事实上,虽然512字节是最常见的,但是4KB也变得更加普遍,512+(520,528,等)以及4KB+(4KB+8,4K+16,等)格式也是如此。如其中所示,数据存储设备控制器202可以包括或者耦合到页寄存器204。页寄存器204可被配置以使控制器202能够从数据存储设备200读取数据以及将数据存储到数据存储设备200中。控制器202可以被配置为响应于来自主机218的数据存取指令来对数据进行编程并且从闪速存储器设备的阵列读取数据。虽然此处的说明一般性地指闪速存储器,但是应当理解存储器设备的阵列可以包括一个或多个各种类型的非易失性存储器设备,例如,闪速集成电路、硫属化物RAM(C-RAM)、相变存储器(PC-RAM或PRAM)、可编程金属化单元RAM(PMC-RAM或PMCm)、双向统一存储器(OUM)、电阻式RAM(RRAM)、NAND存储器(例如,单层单元(SLC)存储器、多层单元(MLC)存储器、或其任意组合)、NOR存储器、EEPROM、铁电存储器(FeRAM)、磁阻式RAM(MRAM)、其他离散的NVM(非易失性存储器)芯片、或其任意组合。
页寄存器204可以被配置为使控制器202能够从阵列读取数据以及将数据存储到阵列中。根据一个实施例,闪速存储器设备的阵列可以在管芯(例如,128个管芯)上包括多个非易失性存储器设备,其中的每一个都包括多个块,例如图2中的206所示。其他的页寄存器204(未示出)可以与其它管芯上的块耦合。成组在一起的闪速块的组合可以被称为超级块或S-块(S-Block)。在一些实施例中,形成S-块的单独的块可以从一个或多个管芯、平面或其他粒度级选出。因此,S-块可以包括分散在一个或多个管芯上的、被组合在一起的多个闪速块。以这种方式,S-块可以形成闪速管理系统(FMS)在其上进行操作的单元。在一些实施例中,形成S-块的单独的块可以根据与管芯级不同的粒度级来选出,例如,当存储器设备包括被细分成例如平面的结构的管芯时的情况(即,可以从单独的平面取得块)。根据一个实施例,可以在S-块级上实施分配、擦除和垃圾收集。在其他实施例中,FMS可以根据其他逻辑分组(例如,页、块、平面、管芯等)来执行数据操作。
根据一个实施例,MLC非易失性存储器设备的阵列可以包括多个较低页和相对应的多个较高序页。也即,每一个较低页可以与相对应的单个上页或者与相对应的多个(即,两个或更多个)的较高序页相关联。MLC非易失性存储器设备可以组织在闪速块206中,每一个闪速块包括多个闪速页(F-页)207,如图2所示。可替代地,可以采用不同的物理组织。根据一个实施例,F-页可以是非易失性存储器设备的最小程序单元的尺寸。控制器202可以与多个非易失性存储器设备耦合并且可以被配置为将数据写到多个较低页和一个或多个相对应的较高序页以及从多个较低页和一个或多个相对应的较高序页读取数据。为了解决困扰常规数据存储设备的较低页讹误问题,数据存储设备200的一个实施例包括缓冲器208。在一个实施例中,缓冲器包括非易失性存储器。在写命令从主机218接收并且由控制器202执行时,可以对要写到MLC非易失性存储器设备(即,闪速块206)的数据进行累积。根据一个实施例,要写入的数据可以累积在写存储装置203中。写存储装置203可以与控制器202耦合。在一个实施例中,写存储装置203是控制器202内部的存储装置。与在写存储装置203中累积数据同时进行(或者至少紧接在这样的累积之前或之后),控制器202可以分配缓冲器208中的存储器空间并且可以将所累积的数据写到缓冲器208中所分配的空间中。根据一个实施例,要写到MLC非易失性存储器设备的数据可以存储在写存储装置203和缓冲器208中,使得缓冲器208和写存储装置203彼此镜像或者彼此基本镜像。事实上,根据一个实施例,控制器202可以被配置为对要写到写存储装置203和缓冲器208中的数据进行累积,直到构造出完整的F-页。根据一个实施例,部分F-页可以与预定的编码值封装在一起并且被视为完整的。完整的F-页可以写到MLC非易失性存储器设备。也即,所累积的数据的至少一部分可以写到MLC非易失性存储器设备的较低页。根据一个实施例,当与较低页相对应的所有较高序页已写MLC非易失性存储器设备时,可以将缓冲器208中先前分配的空间解除分配。也即,控制器202可以被配置为将较低页数据保存在缓冲器208中,直到已经对与较低页相对应的上页或高序页进行编程。这确保了写数据的电力安全副本被维持在缓冲器208中,直到较低页和较高序页或多个页二者已被编程,此后数据可以被视为防电力故障或讹误。
根据一个实施例,在数据存储设备200的正常操作过程中,随着构造出完整的F-页(并且在写存储装置203中累积以及写出到缓冲器208),它们可以写出到MLC非易失性存储器设备。根据一个实施例,写出到MLC非易失性存储器设备的是存储在写存储装置203中的完整的F-页。事实上,由于写存储装置203能够支持比缓冲器208更大的带宽,所以优选的是将完整的F-页从写存储装置203中而不是从缓冲器208中写出。
根据一个实施例,缓冲器208可以包括非易失性存储器。例如,缓冲器208可以包括这样的存储器:其为非易失性的,以及特征为具有高的存取速度、读速度和写速度。根据一个实施例,缓冲器208可以包括磁性随机存取存储器(MRAM)。还可以使用其他存储器类型。MRAM可以展现出与SRAM类似的性能,相当于DRAM的密度以及低功耗。而且,MRAM不随时间而降级。虽然成本相对高,但是MRAM非常适合于缓冲器208的任务;也即,适合于存储较低页数据的电力安全副本,至少直到相对应的较高序页已经安全地存储在闪速块206中。但是,值得注意的是,由于该写入,在MRAM中实现缓冲器208的成本仍比常规的超级电容器的使用或者离散电容器阵列的使用更廉价。在缓冲器208包括例如MRAM的非易失性存储器的实现中,尚未安全地存储在闪速块206中的写到非易失性存储器中的数据(例如,在电力故障事件之前其相对应的较高序页未存储到闪速存储器中的较低页数据)可以在对数据存储设备200恢复供电时,由控制器202从缓冲器208读出并且存储在闪速块206中。也即,控制器202可以进一步被配置为,在对掉电之后的数据存储设备200恢复供电之后,从缓冲器208中读取数据以及将读取的数据的至少一部分写到闪速块206的非易失性存储器设备。
根据一个实施例,缓冲器208可以被配置为至少足够大以使得在数据存储设备掉电之后能够从较低页讹误恢复。因此,缓冲器208的尺寸可以随着例如较低页与较高序页之间的页数、F-页的尺寸、平面的数量以及数据存储设备的管芯数而不同。例如,缓冲器208的尺寸可以从几MB到几百MB不同,但是其他实现可以利用其他尺寸而达到良好效果。根据一个实施例,缓冲器208可以包括用于每一个管芯的多个缓冲器,因为每一个管芯在不同的时间完成其编程。这使得能够独立地管理每管芯的多个页,产生高效的缓冲器208的配置。缓冲器208可以例如被实现为多个缓冲器,当相对应的较低页的较高序页存储在闪速块206中时,控制器202从所述多个缓冲器分配空间,存储数据,以及对空间解除分配。这样的缓冲器配置非常适合于缓存来自主机写命令的写数据流,直到在电力故障时较低页讹误的概率可接受地小或者为零。根据一个实施例,控制器202可以被配置为在累积的数据被写缓冲器中的分配空间之后(例如,一旦累积的数据被写缓冲器中的分配空间)就生成写确认,并且将该写确认发送到主机218。也即,从主机的视角看,当数据存储在缓冲器208中时,数据就可以被视为已经安全地存储在闪速存储器中。根据一个实施例,MLC非易失性设备可以在仅较低页模式或者“SLC”模式下运行。在该情况下,由于没有要处理的较高序页,所以一旦对仅MLC较低页模式下的页或者SLC模式中的页进行编程,就可以实施对缓冲器208中的空间进行解除分配,并且在等待要被编程的任何较高序页的同时无需被延迟。
图3是根据一个实施例的S-块的框图。如其中所示,S-块302可以每管芯包括一个闪速块(F-块)206。因此,S-块可以被视为F-块的集合,每个管芯上一个F-块,这些F-块组合在一起而形成数据存储设备的闪速管理系统(FMS)的单元。根据一个实施例,可以在S-块级上管理分配、擦除和GC。如图3所示,每一个F-块206可以包括多个闪速页(F-页),例如,256或512个F-页。根据一个实施例,F-页可以为用于给定的非易失性存储器设备的最小程序单元的尺寸。图4示出了根据一个实施例的超级页(S-页)。如其中所示,S-页402可以每S-块的F-块包括一个F-页,意味着S-页跨越整个S-块。根据图2所示的一个实施例,数据可以S-页402为单位进行累积、写和存储。缓冲器208可以被配置为取决于具体的实现来存储以与S-页402不同的方式组织的写数据。
图5是根据一个实施例的另一数据存储设备500的框图。参考图2,类似的附图标记表示类似的元件,并且为简要起见省略了对这样的类似元件的说明。在该实施例中,控制器502无需(但是可以)包括写存储装置,例如图2中的写存储装置203。易失性存储器缓冲器504(或者多个这样的易失性存储器缓冲器)可以与控制器502耦合。例如,易失性存储器缓冲器504可以包括动态随机存取存储器(DRAM)或者被配置在动态随机存取存储器(DRAM)中。易失性存储器缓冲器504在图5中示出为位于控制器502的外部。但是,易失性存储器缓冲器504还可以位于控制器502的内部,其可以通过控制器502来变换为更快的存取时间。但是,尺寸和/或其他考量可以推荐的是,将易失性存储器缓冲器504配置为与控制器502耦合的外部存储器缓冲器。图5的数据存储设备500还可以包括例如506所示的备用电源以及如508所示的非易失性存储器。备用电源506可以与易失性存储器缓冲器504、控制器504和非易失性存储器508耦合。备用电源506可以被配置为在电力故障事件发生时至少保持易失性存储器缓冲器504、控制器502和/或非易失性存储器508在一段时间内加电,而不会丢失易失性存储器504中的数据(至少直到其内容能够被保存到非易失性存储器508中)。根据一个实施例,备用电源506可以被配置为对图5的数据存储设备的至少部分加电,至少长达控制器502将数据从易失性缓冲器504写到非易失性存储器508所需的时间。备用电源506可以包括电容器、超级电容器和/或任何能量存储元件。在一个实施例中,其中数据存储设备是与硬盘驱动器耦合的混合磁盘驱动器或者固态驱动器,电源506可以由根据硬盘驱动器的主轴电动机生成的BEMF(反向电动势)来提供。
事实上,在正常操作期间,由于写命令是从主机218接收并且由控制器502执行的,所以要写到MLC非易失性存储器设备(即,闪速块206)的数据可以写到易失性存储器缓冲器504和MLC非易失性存储器设备二者。根据一个实施例,控制器502可以被配置为累积待在内部(例如,在写存储装置203中)写(如例如由主机218发出的写命令所引导)的数据,直到构造了完整的F-页。可替代地以及根据一个实施例,部分F-页可以与预定的编码值封装在一起并且被视为完整的。然后,完整的F-页可以写到易失性存储器缓冲器504和MLC非易失性存储器设备二者。根据一个实施例,数据还可以以S-页402为单位或者以任何其他数据组织单元为单位来进行累积、写以及存储。实际上,易失性存储器缓冲器504可以被配置为取决于具体的实现来存储以与S-页402不同的方式组织的写数据。因此,根据一个实施例,除了将累积的数据(或其部分)写到易失性存储器缓冲器504中之外,所累积的数据(或其部分)可以写到MLC非易失性存储器设备(闪速块206)的一个或多个较低页和/或上页。根据一个实施例,当与之前编程的较低页相对应的所有较高序页已经写到MLC非易失性存储器设备中,并且因此可以被视为有效地防讹误时,可以将易失性存储器缓冲器504中的先前分配的空间解除分配,其中解除分配的空间重新用于新的写数据。也即,控制器202可以被配置为将较低页数据保存在易失性存储器缓冲器504中至少直到与较低页相对应的上页或较高序页已被编程在MLC非易失性存储器设备中。
在发生掉电的事件中,备用电源506可以至少向控制器502、易失性存储器缓冲器504和/或非易失性存储器508供电。在控制器502、易失性存储器缓冲器504和/或非易失性存储器508由备用电源506供电期间,控制器502可以使存储在易失性存储器缓冲器504中的数据被复制到非易失性存储器508,从而以防讹误方式将尚未保存到MLC非易失性存储器设备中的数据进行保存,从而使控制器能够确认写到主机218。当恢复对MLC非易失性存储器设备供电时,保存在非易失性存储器508中的数据可以被编程到MLC非易失性存储器设备中。
值得注意的是,根据一个实施例,可以仅在发生电力故障的事件中,写非易失性存储器508。而且,通过仅在发生电力故障的事件中对控制器502、易失性存储器缓冲器504和非易失性存储器508供电,与还对MLC非易失性存储器设备(例如,闪速块206)的管芯进行供电所需的电力相比,需要相对较少的电力。值得注意的是,非易失性存储器508可以从由备用电源506供电的控制器502汲取其电力。根据一个实施例,非易失性存储器508可以包括MRAM。根据一个实施例,备用电源506仅需要与控制器502和易失性存储器缓冲器504耦合。另外,通过在发生电力故障的事件中,使用易失性存储器缓冲器504作为数据路径和非易失性存储器508中的主写位置,降低了非易失性存储器508的磨损。
图6是根据一个实施例的控制数据存储设备的方法的流程图。数据存储设备可以包括缓冲器以及多个多层单元(MLC)非易失性存储器设备(包括例如闪速块206)。如本文所描述的,MLC非易失性存储器设备可以包括多个较低页以及相对应的多个较高序页。例如502所示的控制器可以被配置为将数据写到多个较低页和相对应的多个较高序页以及从多个较低页和相对应的多个较高序页读取数据。根据一个实施例,以及如图6所示,该方法可以包括:对要写到MLC非易失性存储器设备的数据进行累积,如块B61所示。块B62要求分配缓冲器208、504中的空间以及将累积的数据写到缓冲器208、504中分配的空间。如在B63所示,累积的数据的至少一部分可以写到MLC非易失性存储器设备的一个或多个较低页。应当理解的是,所累积的数据的一部分还可以写到MLC非易失性存储器设备的一个或多个上页。当与较低页相对应的所有较高序页已经写到MLC非易失性存储器设备中时,正如在块B64中所要求的,可以安全地对存储要被写到较低页的数据的缓冲器中的空间解除分配。
根据一个实施例并且如图2所示,缓冲器可以包括或被配置为非易失性存储器,例如,磁性随机存取存储器(MRAM)。如关于图2所描述的,以及如图5中的B65所示,该方法还可以包括:在对掉电之后的数据存储设备恢复供电之后,从缓冲器208读取数据以及将所读取的数据的至少一部分写到MLC非易失性存储器设备。如关于图5所描述的,该方法还可以包括:在对掉电之后的数据存储设备恢复供电(由备用电源506)之后,从易失性存储器缓冲器504读取数据,以及将所读取的数据的至少一部分写到非易失性存储器508,如图6中的B65所示。根据一个实施例,缓冲器208、504可以至少足够大以使得能够在数据存储设备掉电之后从可能的较低页讹误中恢复。根据一个实施例,缓冲器208、504可以被配置为一个或多个缓冲器。在累积的数据写到缓冲器208、504中的分配的空间之后,可以生成写确认并将所述写确认发送到主机218,因为从该时间点向前,数据可以被视为是防讹误的。根据一个实施例,MLC非易失性存储器设备可以被配置为包括多个块,多个块中的每一个包括多个物理页。这些块的集合可以限定超级块(S-块)。S-块中的每块一个物理页的物理页的集合可以限定超级页(S-页),所述S-页可以是控制器202累积、写和存储主机和/或其他数据的单位。可以在当前的上下文中实现其他的数据组织和单位。
如关于图5所示出和描述的,该方法还可以包括:提供备用电源506和非易失性存储器,例如,如508所示的非易失性存储器。在该实施例中,缓冲器504可以包括易失性存储器。根据一个实施例,该方法还可以包括:对数据存储设备500的至少一部分供电至少长达控制器502将数据从缓冲器504写到非易失性存储器508所需的时间。根据一个实施例,在对掉电之后的数据存储设备恢复供电之后,非易失性存储器508中的数据的至少一部分可以写到MLC非易失性存储器设备。可以提供写存储装置(图2和图5中的203),并且控制器202、502可以被配置为在所累积的数据写到缓冲器208、504中所分配的空间时将所累积的数据写到写存储装置203中。根据一个实施例,控制器202、502还可以配置为:当与较低页相对应的所有较高序页已经写到MLC非易失性存储器设备中时,对存储要被写到较高序页的数据的缓冲器208、504中的空间解除分配,因为这样的数据可以被视为防讹误的。
虽然已经描述了一些实施例,但是这些实施例仅通过示例的方式提供,并且并不是要限制本发明的范围。事实上,本文所描述的新颖的方法、设备和系统可以通过各种的其他形式来具体实现。此外,可以在不偏离本公开精神的情况下做出对本文所描述的方法和系统的形式的各种省略、替代和变化。随附的权利要求书及其等效物是要涵盖落在本公开的范围和精神内的这样的形式或改进。例如,本领域的技术人员将意识到,在各个实施例中,实际的结构可能与图中所示的那些不同。根据实施例,在上述示例中描述的一些步骤可以去除,可以添加其他步骤。而且,上文公开的具体实施例的特征和属性可以通过不同方式组合而形成额外的实施例,所有这些落在本公开范围内。虽然本公开提供了一些优选的实施例和应用,但是对于本领域普通技术人员而言显而易见的是,其他实施例,包括不提供本文阐述的全部特征和优点的实施例,也在本公开的范围内。因此,本公开的范围是要仅由随附的权利要求书来限定。

Claims (36)

1.一种数据存储设备,包括:
多个多层单元MLC非易失性存储器设备,其包括多个较低页以及相对应的多个较高序页;
控制器,其与所述多个MLC非易失性存储器设备耦合并且被配置为将数据写到所述多个较低页和所述相对应的多个较高序页以及从所述多个较低页和所述相对应的多个较高序页读取数据;以及
包括非易失性存储器的缓冲器,所述缓冲器与所述多个MLC非易失性存储器设备分离并且耦合到所述控制器;
其中,所述控制器被配置为:
对要被写到所述MLC非易失性存储器设备的数据进行累积;
分配所述缓冲器中的空间并且将所累积的数据写到所述缓冲器中所分配的空间;
将所累积的数据的至少一部分写到所述MLC非易失性存储器设备的较低页中;
检测掉电;
在检测到掉电后对所述数据存储设备恢复供电之后,从所述缓冲器读取数据并且将读取的数据的至少一部分写入到所述MLC非易失性存储器设备;以及
当所述MLC非易失性存储器设备中与所述较低页相对应的所有较高序页已经被写入时,对存储被写到所述较低页的数据的所述缓冲器中的空间解除分配,
其中所述数据存储设备还包括备用电源,并且所述备用电源耦合到所述控制器并耦合到易失性存储器缓冲器,并且在发生电力故障的事件中,所述易失性存储器缓冲器被用作数据路径和所述非易失性存储器中的主写位置。
2.如权利要求1所述的数据存储设备,其中,所述缓冲器的所述非易失性存储器包括磁性随机存取存储器(MRAM)。
3.如权利要求1所述的数据存储设备,其中,所述控制器进一步被配置为:在对掉电后的所述数据存储设备恢复供电之后,从所述缓冲器读取数据并且将所读取的数据的至少一部分写到所述MLC非易失性存储器设备。
4.如权利要求1所述的数据存储设备,其中,所述缓冲器至少足够大以在所述数据存储设备掉电之后能够从较低页讹误中恢复。
5.如权利要求1所述的数据存储设备,其中,所述MLC非易失性设备被配置为在仅较低页模式中或者在单层单元(SLC)模式中进行操作。
6.如权利要求1所述的数据存储设备,其中,所述控制器进一步被配置为:在所累积的数据被写到所述缓冲器中所分配的空间之后,生成写确认并且将所述写确认发送到主机。
7.如权利要求1所述的数据存储设备,其中,所述MLC非易失性存储器设备包括多个块,所述多个块中的每一个都包括多个物理页,块的集合限定超级块S-块,S-块中每块一个物理页的物理页的集合限定超级页S-页,并且其中,所述数据以S-页为单位被累积、写和存储。
8.如权利要求1所述的数据存储设备,还包括非易失性存储器,其中,所述缓冲器包括易失性存储器,并且其中,所述备用电源被配置为对所述数据存储设备的至少一部分供电至少长达所述控制器将所述数据从所述缓冲器写到所述非易失性存储器所需的时间。
9.如权利要求8所述的数据存储设备,其中,所述非易失性存储器包括磁性随机存取存储器(MRAM)。
10.如权利要求8所述的数据存储设备,其中,所述控制器被进一步配置为:在对掉电之后的所述数据存储设备恢复供电之后,将所述非易失性存储器中的数据的至少一部分写到所述MLC非易失性存储器设备。
11.如权利要求1所述的数据存储设备,还包括写存储装置,并且其中,所述控制器被进一步配置为在所累积的数据被写到所述缓冲器中所分配的空间时将所累积的数据写到所述写存储装置。
12.如权利要求1所述的数据存储设备,其中,控制器被进一步配置为:当所述MLC非易失性存储器设备中与所述较低页相对应的所有较高序页已经被写入时,还对存储被写到所述较高序页的数据的所述缓冲器中的空间解除分配。
13.一种数据存储设备控制器,包括:
处理器,其被配置为与包括非易失性存储器的缓冲器和多个多层单元MLC非易失性存储器设备耦合,所述多个多层单元MLC非易失性存储器设备包括多个较低页以及相对应的多个较高序页,所述缓冲器与所述多个MLC非易失性存储器设备分离,所述处理器被进一步配置为:
从所述多个较低页和所述相对应的多个较高序页读取数据;以及
至少通过如下处理将数据写到所述多个较低页以及所述相对应的多个较高序页:
对要写到所述MLC非易失性存储器设备的数据进行累积;
分配所述缓冲器中的空间并且将所累积的数据写到所述缓冲器中所分配的空间;
将所累积的数据的至少一部分写到所述MLC非易失性存储器设备的较低页中;
检测掉电;
在检测到掉电后对所述数据存储设备恢复供电之后,从所述缓冲器读取数据并且将读取的数据的至少一部分写入到所述MLC非易失性存储器设备;以及
当所述MLC非易失性存储器设备中与所述较低页相对应的所有较高序页已经被写入时,对存储被写到所述较低页的数据的所述缓冲器中的空间解除分配,
其中所述数据存储设备控制器还包括备用电源,并且所述备用电源耦合到所述处理器并耦合到易失性存储器缓冲器,并且在发生电力故障的事件中,所述易失性存储器缓冲器被用作数据路径和所述非易失性存储器中的主写位置。
14.如权利要求13所述的数据存储设备控制器,其中,所述缓冲器的所述非易失性存储器包括磁性随机存取存储器(MRAM)。
15.如权利要求13所述的数据存储设备控制器,其中,所述处理器被进一步配置为:在对掉电之后的所述数据存储设备恢复供电之后,从所述缓冲器中读取数据并且将所读取的数据的至少一部分写到所述MLC非易失性存储器设备。
16.如权利要求13所述的数据存储设备控制器,其中,所述缓冲器至少足够大以使得在所述数据存储设备掉电之后能够从较低页讹误中恢复。
17.如权利要求13所述的数据存储设备控制器,其中,所述MLC非易失性设备被配置为在仅较低页模式中或者在单层单元(SLC)模式中进行操作。
18.如权利要求13所述的数据存储设备控制器,其中,所述处理器被进一步配置为在所累积的数据被写到所述缓冲器中所分配的空间之后,生成写确认并且将所述写确认发送到主机。
19.如权利要求13所述的数据存储设备控制器,其中,所述MLC非易失性存储器设备包括多个块,所述多个块中的每一个包括多个物理页,块的集合限定超级块S-块,S-块中的每块一个物理页的物理页的集合限定超级页S-页,并且其中,所述数据以S-页为单位被累积、写和存储。
20.如权利要求13所述的数据存储设备控制器,还包括非易失性存储器,其中,所述缓冲器包括易失性存储器,并且其中,所述备用电源被配置为对所述数据存储设备的至少一部分供电至少长达所述控制器将所述数据从所述缓冲器写到所述非易失性存储器所需的时间。
21.如权利要求20所述的数据存储设备控制器,其中,所述非易失性存储器包括磁性随机存取存储器(MRAM)。
22.如权利要求20所述的数据存储设备控制器,其中,所述处理器被进一步配置为:在对掉电后的所述数据存储设备恢复供电之后,将所述非易失性存储器中的数据的至少一部分写到所述MLC非易失性存储器设备。
23.如权利要求13所述的数据存储设备控制器,还包括写存储装置,并且其中,所述处理器被进一步配置为在所累积的数据被写到所述缓冲器中所分配的空间时将所累积的数据写到所述写存储装置。
24.如权利要求13所述的数据存储设备控制器,其中,处理器被进一步配置为:当所述MLC非易失性存储器设备中与所述较低页相对应的所有较高序页已经被写入时,还对存储被写到所述较高序页的数据的所述缓冲器中的空间解除分配。
25.一种控制数据存储设备的方法,所述数据存储设备包括缓冲器以及多个多层单元MLC非易失性存储器设备,所述缓冲器包括非易失性存储器,所述多个多层单元MLC非易失性存储器设备包括多个较低页以及相对应的多个较高序页,其中所述数据存储设备还包括备用电源,所述缓冲器与所述多个MLC非易失性存储器设备分离,所述方法包括:
从所述多个较低页和所述相对应的多个较高序页中读取数据;以及
至少通过如下处理将数据写到所述多个较低页和所述相对应的多个较高序页:
对要写入到所述MLC非易失性存储器设备的数据进行累积;
分配所述缓冲器中的空间并且将所累积的数据写到所述缓冲器中所分配的空间;
将所累积的数据的至少一部分写到所述MLC非易失性存储器设备的较低页中;
检测掉电;
在检测到所述掉电后对所述数据存储设备恢复供电之后,从所述缓冲器读取数据并且将读取的数据的至少一部分写入到所述MLC非易失性存储器设备;
当所述MLC非易失性存储器设备中与所述较低页相对应的所有较高序页已经被写入时,对存储被写到所述较低页的数据的所述缓冲器中的空间解除分配;以及
在发生电力故障的事件中,使用易失性存储器缓冲器作为数据路径和非易失性存储器中的主写位置。
26.如权利要求25所述的方法,其中,所述缓冲器的所述非易失性存储器包括磁性随机存取存储器(MRAM)。
27.如权利要求25所述的方法,还包括:在对掉电后的所述数据存储设备恢复供电之后,从所述缓冲器读取数据以及将所读取的数据的至少一部分写到所述MLC非易失性存储器设备。
28.如权利要求25所述的方法,其中,所述缓冲器至少足够大以使得在所述数据存储设备掉电之后能够从较低页讹误中恢复。
29.如权利要求25所述的方法,其中,所述MLC非易失性设备被配置为在仅较低页模式中或在单层单元(SLC)模式中进行操作。
30.如权利要求25所述的方法,还包括:在所累积的数据被写到所述缓冲器中所分配的空间之后,生成写确认并且将所述写确认发送到主机。
31.如权利要求25所述的方法,其中,所述MLC非易失性存储器设备包括多个块,所述多个块中的每一个都包括多个物理页,块的集合限定超级块S-块,S-块中每块一个物理页的物理页的集合限定超级页S-页,并且以S-页为单位实施累积、写和存储。
32.如权利要求25所述的方法,其中所述数据存储设备包括非易失性存储器和控制器,其中,所述缓冲器包括易失性存储器,并且其中,所述方法还包括:所述备用电源对所述数据存储设备的至少一部分供电至少长达所述控制器将所述数据从所述缓冲器写到所述非易失性存储器所需的时间。
33.如权利要求32所述的方法,其中,所述非易失性存储器包括磁性随机存取存储器(MRAM)。
34.如权利要求32所述的方法,还包括:在对掉电后的所述数据存储设备恢复供电之后,将所述非易失性存储器中的数据的至少一部分写到所述MLC非易失性存储器设备。
35.如权利要求25所述的方法,其中,所述数据存储设备还包括写存储装置,并且其中,写数据还包括在所累积的数据被写到所述缓冲器中所分配的空间时将所累积的数据写到所述写存储装置。
36.如权利要求25所述的方法,还包括:当所述MLC非易失性存储器设备中与所述较低页相对应的所有较高序页已经被写入时,将存储被写到所述较高序页的数据的所述缓冲器中的空间解除分配。
CN201380065610.3A 2012-11-13 2013-09-30 用于避免数据存储设备中较低页讹误的方法和设备 Active CN105051703B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/675,913 US9177638B2 (en) 2012-11-13 2012-11-13 Methods and devices for avoiding lower page corruption in data storage devices
US13/675,913 2012-11-13
PCT/US2013/062725 WO2014077962A1 (en) 2012-11-13 2013-09-30 Methods and devices for avoiding lower page corruption in data storage devices

Publications (2)

Publication Number Publication Date
CN105051703A CN105051703A (zh) 2015-11-11
CN105051703B true CN105051703B (zh) 2019-05-21

Family

ID=50681565

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380065610.3A Active CN105051703B (zh) 2012-11-13 2013-09-30 用于避免数据存储设备中较低页讹误的方法和设备

Country Status (8)

Country Link
US (1) US9177638B2 (zh)
EP (1) EP2920698B1 (zh)
JP (1) JP2015535118A (zh)
KR (1) KR101919653B1 (zh)
CN (1) CN105051703B (zh)
AU (1) AU2013345301B2 (zh)
HK (1) HK1216444A1 (zh)
WO (1) WO2014077962A1 (zh)

Families Citing this family (132)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9176859B2 (en) 2009-01-07 2015-11-03 Siliconsystems, Inc. Systems and methods for improving the performance of non-volatile memory operations
US10079048B2 (en) 2009-03-24 2018-09-18 Western Digital Technologies, Inc. Adjusting access of non-volatile semiconductor memory based on access time
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
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
US8959284B1 (en) 2010-06-28 2015-02-17 Western Digital Technologies, Inc. Disk drive steering write data to write cache based on workload
US9058280B1 (en) 2010-08-13 2015-06-16 Western Digital Technologies, Inc. Hybrid drive migrating data from disk to non-volatile semiconductor memory based on accumulated access time
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
US9021192B1 (en) 2010-09-21 2015-04-28 Western Digital Technologies, Inc. System and method for enhancing processing of memory access requests
US9164886B1 (en) 2010-09-21 2015-10-20 Western Digital Technologies, Inc. System and method for multistage processing in a memory storage subsystem
US9069475B1 (en) 2010-10-26 2015-06-30 Western Digital Technologies, Inc. Hybrid drive selectively spinning up disk when powered on
US8700950B1 (en) 2011-02-11 2014-04-15 Western Digital Technologies, Inc. System and method for data error recovery in a solid state subsystem
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
US9361044B2 (en) 2011-03-28 2016-06-07 Western Digital Technologies, Inc. Power-safe data management system
US8898373B1 (en) 2011-06-29 2014-11-25 Western Digital Technologies, Inc. System and method for improving wear-leveling performance in solid-state memory
US9195530B1 (en) 2011-09-06 2015-11-24 Western Digital Technologies, Inc. Systems and methods for improved data management 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
US8700834B2 (en) 2011-09-06 2014-04-15 Western Digital Technologies, Inc. Systems and methods for an enhanced controller architecture 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
US9268701B1 (en) 2011-11-21 2016-02-23 Western Digital Technologies, Inc. Caching of data in data storage systems by managing the size of read and write cache based on a measurement of cache reliability
US8977804B1 (en) 2011-11-21 2015-03-10 Western Digital Technologies, Inc. Varying data redundancy in storage systems
US8959416B1 (en) 2011-12-16 2015-02-17 Western Digital Technologies, Inc. Memory defect management using signature identification
US9348741B1 (en) 2011-12-19 2016-05-24 Western Digital Technologies, Inc. Systems and methods for handling write data access requests in data storage devices
US9053008B1 (en) 2012-03-26 2015-06-09 Western Digital Technologies, Inc. Systems and methods for providing inline parameter service in data storage devices
US9372694B2 (en) * 2012-03-29 2016-06-21 Semiconductor Energy Laboratory Co., Ltd. Reducing data backup and recovery periods in processors
US8966205B1 (en) 2012-05-10 2015-02-24 Western Digital Technologies, Inc. System data management using garbage collection and hybrid self mapping
US8984247B1 (en) 2012-05-10 2015-03-17 Western Digital Technologies, Inc. Storing and reconstructing mapping table data in a data storage system
US9977612B1 (en) 2012-05-11 2018-05-22 Western Digital Technologies, Inc. System data management using garbage collection and logs
US9170932B1 (en) 2012-05-22 2015-10-27 Western Digital Technologies, Inc. System data storage mechanism providing coherency and segmented data loading
US8954653B1 (en) 2012-06-26 2015-02-10 Western Digital Technologies, Inc. Mechanisms for efficient management of system data in data storage systems
US8924832B1 (en) 2012-06-26 2014-12-30 Western Digital Technologies, Inc. Efficient error handling mechanisms in data storage systems
US8966343B2 (en) 2012-08-21 2015-02-24 Western Digital Technologies, Inc. Solid-state drive retention monitor using reference blocks
US9507523B1 (en) 2012-10-12 2016-11-29 Western Digital Technologies, Inc. Methods, devices and systems for variable size logical page management in a solid state drive
US9489296B1 (en) 2012-10-17 2016-11-08 Western Digital Technologies, Inc. Methods, devices and systems for hardware-based garbage collection 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
US9214963B1 (en) 2012-12-21 2015-12-15 Western Digital Technologies, Inc. Method and system for monitoring data channel to enable use of dynamically adjustable LDPC coding parameters in a data storage system
US8954655B2 (en) 2013-01-14 2015-02-10 Western Digital Technologies, Inc. Systems and methods of configuring a mode of operation in a solid-state memory
US8972655B2 (en) 2013-01-21 2015-03-03 Western Digital Technolgies, Inc. Initialization of a storage device
US9274966B1 (en) 2013-02-20 2016-03-01 Western Digital Technologies, Inc. Dynamically throttling host commands to disk drives
US9454474B2 (en) 2013-03-05 2016-09-27 Western Digital Technologies, Inc. Methods, devices and systems for two stage power-on map rebuild with free space accounting in a solid state drive
US9641378B1 (en) 2013-03-12 2017-05-02 Western Digital Technologies, Inc. Adjustment of compression ratios for data storage
US8924824B1 (en) 2013-03-12 2014-12-30 Western Digital Technologies, Inc. Soft-decision input generation for data storage systems
US9280472B1 (en) 2013-03-13 2016-03-08 Western Digital Technologies, Inc. Caching data in a high performance zone of a data storage system
US8990668B2 (en) 2013-03-14 2015-03-24 Western Digital Technologies, Inc. Decoding data stored in solid-state memory
US9218279B2 (en) 2013-03-15 2015-12-22 Western Digital Technologies, Inc. Atomic write command support in a solid state drive
US9059742B1 (en) 2013-03-15 2015-06-16 Western Digital Technologies, Inc. System and method for dynamic scaling of LDPC decoder in a solid state drive
US9335950B2 (en) 2013-03-15 2016-05-10 Western Digital Technologies, Inc. Multiple stream compression and formatting of data for data storage systems
US9448738B2 (en) 2013-03-15 2016-09-20 Western Digital Technologies, Inc. Compression and formatting of data for data storage systems
US9013920B2 (en) 2013-04-03 2015-04-21 Western Digital Technologies, Inc. Systems and methods of write precompensation to extend life of a solid-state memory
US9123686B2 (en) 2013-04-12 2015-09-01 Western Digital Technologies, Inc. Thermal management for solid-state drive
US9338927B2 (en) 2013-05-02 2016-05-10 Western Digital Technologies, Inc. Thermal interface material pad and method of forming the same
US9195293B1 (en) 2013-05-03 2015-11-24 Western Digital Technologies, Inc. User controlled data storage device power and performance settings
US9081700B2 (en) 2013-05-16 2015-07-14 Western Digital Technologies, Inc. High performance read-modify-write system providing line-rate merging of dataframe segments in hardware
US9632926B1 (en) 2013-05-16 2017-04-25 Western Digital Technologies, Inc. Memory unit assignment and selection for internal memory operations in data storage systems
US9170938B1 (en) 2013-05-17 2015-10-27 Western Digital Technologies, Inc. Method and system for atomically writing scattered information in a solid state storage device
US9280200B1 (en) 2013-05-20 2016-03-08 Western Digital Technologies, Inc. Automatic peak current throttle of tiered storage elements
US9740248B2 (en) 2013-06-07 2017-08-22 Western Digital Technologies, Inc. Component placement within a solid state drive
US9274978B2 (en) 2013-06-10 2016-03-01 Western Digital Technologies, Inc. Migration of encrypted data for data storage systems
US9436630B2 (en) 2013-06-11 2016-09-06 Western Digital Technologies, Inc. Using dual phys to support multiple PCIe link widths
US9830257B1 (en) 2013-06-12 2017-11-28 Western Digital Technologies, Inc. Fast saving of data during power interruption in data storage systems
US9665501B1 (en) 2013-06-18 2017-05-30 Western Digital Technologies, Inc. Self-encrypting data storage device supporting object-level encryption
US9304560B2 (en) 2013-06-19 2016-04-05 Western Digital Technologies, Inc. Backup power for reducing host current transients
US9208101B2 (en) 2013-06-26 2015-12-08 Western Digital Technologies, Inc. Virtual NAND capacity extension in a hybrid drive
US9583153B1 (en) 2013-06-28 2017-02-28 Western Digital Technologies, Inc. Memory card placement within a solid state drive
US9042197B2 (en) 2013-07-23 2015-05-26 Western Digital Technologies, Inc. Power fail protection and recovery using low power states in a data storage device/system
US9141176B1 (en) 2013-07-29 2015-09-22 Western Digital Technologies, Inc. Power management for data storage device
US9274865B2 (en) * 2013-08-01 2016-03-01 HGST Netherlands B.V. Implementing enhanced buffer management for data storage devices
US9070379B2 (en) 2013-08-28 2015-06-30 Western Digital Technologies, Inc. Data migration for data storage device
US9442668B1 (en) 2013-08-29 2016-09-13 Western Digital Technologies, Inc. Adaptive power management control with performance feedback
US9263136B1 (en) 2013-09-04 2016-02-16 Western Digital Technologies, Inc. Data retention flags in solid-state drives
US9304709B2 (en) 2013-09-06 2016-04-05 Western Digital Technologies, Inc. High performance system providing selective merging of dataframe segments in hardware
US9170939B1 (en) * 2013-09-26 2015-10-27 Western Digital Technologies, Inc. Early de-allocation of write buffer in an SSD
US9330143B2 (en) 2013-10-24 2016-05-03 Western Digital Technologies, Inc. Data storage device supporting accelerated database operations
US9007841B1 (en) 2013-10-24 2015-04-14 Western Digital Technologies, Inc. Programming scheme for improved voltage distribution in solid-state memory
US10444998B1 (en) 2013-10-24 2019-10-15 Western Digital Technologies, Inc. Data storage device providing data maintenance services
US9323467B2 (en) 2013-10-29 2016-04-26 Western Digital Technologies, Inc. Data storage device startup
US8917471B1 (en) 2013-10-29 2014-12-23 Western Digital Technologies, Inc. Power management for data storage device
US9286176B1 (en) 2013-11-08 2016-03-15 Western Digital Technologies, Inc. Selective skipping of blocks in an SSD
US9270296B1 (en) 2013-11-13 2016-02-23 Western Digital Technologies, Inc. Method and system for soft decoding through single read
US9529710B1 (en) 2013-12-06 2016-12-27 Western Digital Technologies, Inc. Interleaved channels in a solid-state drive
US9007854B1 (en) 2013-12-09 2015-04-14 Western Digital Technologies, Inc. Method and system for optimized soft decoding in a data storage device
US10140067B1 (en) 2013-12-19 2018-11-27 Western Digital Technologies, Inc. Data management for data storage device with multiple types of non-volatile memory media
US9036283B1 (en) 2014-01-22 2015-05-19 Western Digital Technologies, Inc. Data storage device with selective write to a first storage media or a second storage media
US9337864B1 (en) 2014-01-29 2016-05-10 Western Digital Technologies, Inc. Non-binary LDPC decoder using binary subgroup processing
US9250994B1 (en) 2014-02-05 2016-02-02 Western Digital Technologies, Inc. Non-binary low-density parity check (LDPC) decoding using trellis maximization
US9384088B1 (en) 2014-02-24 2016-07-05 Western Digital Technologies, Inc. Double writing map table entries in a data storage system to guard against silent corruption
US9354955B1 (en) 2014-03-19 2016-05-31 Western Digital Technologies, Inc. Partial garbage collection for fast error handling and optimized garbage collection for the invisible band
US9348520B2 (en) 2014-03-24 2016-05-24 Western Digital Technologies, Inc. Lifetime extension of non-volatile semiconductor memory for data storage device
US9268487B2 (en) 2014-03-24 2016-02-23 Western Digital Technologies, Inc. Method and apparatus for restricting writes to solid state memory when an end-of life condition is reached
US9448742B2 (en) 2014-03-27 2016-09-20 Western Digital Technologies, Inc. Communication between a host and a secondary storage device
US9564212B2 (en) 2014-05-06 2017-02-07 Western Digital Technologies, Inc. Solid-state memory corruption mitigation
US9690696B1 (en) 2014-05-14 2017-06-27 Western Digital Technologies, Inc. Lifetime extension of memory for data storage system
US8886877B1 (en) * 2014-05-15 2014-11-11 Sandisk Technologies Inc. In-situ block folding for nonvolatile memory
US9472222B2 (en) 2014-05-16 2016-10-18 Western Digital Technologies, Inc. Vibration mitigation for a data storage device
US9275741B1 (en) 2014-09-10 2016-03-01 Western Digital Technologies, Inc. Temperature compensation management in solid-state memory
US9418699B1 (en) 2014-10-09 2016-08-16 Western Digital Technologies, Inc. Management of sequentially written data
US9405356B1 (en) 2014-10-21 2016-08-02 Western Digital Technologies, Inc. Temperature compensation in data storage device
US9823859B2 (en) 2014-11-06 2017-11-21 Western Digital Technologies, Inc. Mechanical shock mitigation for data storage
TWI578320B (zh) * 2014-11-25 2017-04-11 旺宏電子股份有限公司 記憶體的操作方法及應用其之記憶體裝置
US9933955B1 (en) * 2015-03-05 2018-04-03 Western Digital Technologies, Inc. Power safe write buffer for data storage device
US9857995B1 (en) 2015-03-09 2018-01-02 Western Digital Technologies, Inc. Data storage device and method providing non-volatile memory buffer for real-time primary non-volatile memory protection
JP6541998B2 (ja) * 2015-03-24 2019-07-10 東芝メモリ株式会社 メモリデバイス、半導体装置および情報処理装置
US10008250B2 (en) * 2015-03-27 2018-06-26 Intel Corporation Single level cell write buffering for multiple level cell non-volatile memory
US9785563B1 (en) 2015-08-13 2017-10-10 Western Digital Technologies, Inc. Read command processing for data storage system based on previous writes
US9668337B2 (en) 2015-09-08 2017-05-30 Western Digital Technologies, Inc. Temperature management in data storage devices
US9727261B2 (en) 2015-09-24 2017-08-08 Western Digital Technologies, Inc. Weighted programming patterns in solid-state data storage systems
US9836232B1 (en) 2015-09-30 2017-12-05 Western Digital Technologies, Inc. Data storage device and method for using secondary non-volatile memory for temporary metadata storage
US10013174B2 (en) 2015-09-30 2018-07-03 Western Digital Technologies, Inc. Mapping system selection for data storage device
US9620226B1 (en) 2015-10-30 2017-04-11 Western Digital Technologies, Inc. Data retention charge loss and read disturb compensation in solid-state data storage systems
US9530491B1 (en) * 2015-11-16 2016-12-27 Sandisk Technologies Llc System and method for direct write to MLC memory
KR20170059658A (ko) * 2015-11-23 2017-05-31 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
US10126981B1 (en) 2015-12-14 2018-11-13 Western Digital Technologies, Inc. Tiered storage using storage class memory
US10229000B2 (en) 2016-08-09 2019-03-12 Seagate Llc Erasure codes to prevent lower page corruption in flash memory
US10387303B2 (en) 2016-08-16 2019-08-20 Western Digital Technologies, Inc. Non-volatile storage system with compute engine to accelerate big data applications
US10048887B2 (en) * 2016-10-27 2018-08-14 Micron Technology, Inc. Apparatuses and methods for single level cell caching
US10459644B2 (en) 2016-10-28 2019-10-29 Western Digital Techologies, Inc. Non-volatile storage system with integrated compute engine and optimized use of local fast memory
US10565123B2 (en) 2017-04-10 2020-02-18 Western Digital Technologies, Inc. Hybrid logical to physical address translation for non-volatile storage devices with integrated compute module
US10141050B1 (en) * 2017-04-27 2018-11-27 Pure Storage, Inc. Page writes for triple level cell flash memory
US20190035445A1 (en) * 2017-07-31 2019-01-31 CNEX Labs, Inc. a Delaware Corporation Method and Apparatus for Providing Low Latency Solid State Memory Access
US10956071B2 (en) 2018-10-01 2021-03-23 Western Digital Technologies, Inc. Container key value store for data storage devices
US10769062B2 (en) 2018-10-01 2020-09-08 Western Digital Technologies, Inc. Fine granularity translation layer for data storage devices
US10740231B2 (en) 2018-11-20 2020-08-11 Western Digital Technologies, Inc. Data access in data storage device including storage class memory
KR102243923B1 (ko) 2018-12-31 2021-04-22 강원대학교산학협력단 캐쉬를 동반한 효율적인 페이지 컬렉션 매핑을 이용하는 비휘발성 메모리 장치 및 그 동작 방법
US11016905B1 (en) 2019-11-13 2021-05-25 Western Digital Technologies, Inc. Storage class memory access
US11249921B2 (en) 2020-05-06 2022-02-15 Western Digital Technologies, Inc. Page modification encoding and caching
US12079517B2 (en) * 2022-07-21 2024-09-03 Micron Technology, Inc. Buffer allocation for reducing block transit penalty

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101246738A (zh) * 2007-01-03 2008-08-20 三星电子株式会社 具有备份电路的存储系统及编程方法
CN101641679A (zh) * 2007-02-07 2010-02-03 美光科技公司 用于系统管理的多级单元选择的多程序

Family Cites Families (100)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8027194B2 (en) * 1988-06-13 2011-09-27 Samsung Electronics Co., Ltd. Memory system and method of accessing a semiconductor memory device
US20080195798A1 (en) 2000-01-06 2008-08-14 Super Talent Electronics, Inc. Non-Volatile Memory Based Computer Systems and Methods Thereof
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
JP2006338370A (ja) * 2005-06-02 2006-12-14 Toshiba Corp メモリシステム
US7366013B2 (en) * 2005-12-09 2008-04-29 Micron Technology, Inc. Single level cell programming in a multiple level cell non-volatile memory device
US7653778B2 (en) 2006-05-08 2010-01-26 Siliconsystems, Inc. Systems and methods for measuring the useful life of solid-state storage devices
US7424587B2 (en) 2006-05-23 2008-09-09 Dataram, Inc. Methods for managing data writes and reads to a hybrid solid-state disk drive
US7586784B2 (en) 2006-06-09 2009-09-08 Micron Technology, Inc. Apparatus and methods for programming multilevel-cell NAND memory devices
US7765373B1 (en) 2006-06-27 2010-07-27 Siliconsystems, Inc. System for controlling use of a solid-state storage subsystem
US8108692B1 (en) 2006-06-27 2012-01-31 Siliconsystems, Inc. Solid-state storage subsystem security solution
US7509441B1 (en) 2006-06-30 2009-03-24 Siliconsystems, Inc. Systems and methods for segmenting and protecting a storage subsystem
US7447807B1 (en) 2006-06-30 2008-11-04 Siliconsystems, Inc. Systems and methods for storing data in segments of a storage subsystem
US8019929B2 (en) * 2006-09-13 2011-09-13 Rohm Co., Ltd. Data processing apparatus and data control circuit for use therein
US8161227B1 (en) 2006-10-30 2012-04-17 Siliconsystems, Inc. Storage subsystem capable of programming field-programmable devices of a target computer system
JP2008134685A (ja) * 2006-11-27 2008-06-12 Konica Minolta Business Technologies Inc 不揮発メモリシステム及び不揮発メモリ制御方法
US8549236B2 (en) 2006-12-15 2013-10-01 Siliconsystems, Inc. Storage subsystem with multiple non-volatile memory arrays to protect against data losses
US7564722B2 (en) 2007-01-22 2009-07-21 Micron Technology, Inc. Memory system and method having volatile and non-volatile memory devices at same hierarchical level
US7596643B2 (en) 2007-02-07 2009-09-29 Siliconsystems, Inc. Storage subsystem with configurable buffer
US7685338B2 (en) 2007-05-24 2010-03-23 Siliconsystems, Inc. Solid state storage subsystem for embedded applications
US7685337B2 (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
US8095851B2 (en) 2007-09-06 2012-01-10 Siliconsystems, Inc. Storage subsystem capable of adjusting ECC settings based on monitored conditions
TWI373045B (en) * 2008-01-07 2012-09-21 Phison Electronics Corp Flash memory storage apparatus, flash memory controller and switching method 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
US7733712B1 (en) 2008-05-20 2010-06-08 Siliconsystems, Inc. Storage subsystem with embedded circuit for protecting against anomalies in power signal from host
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
US9176859B2 (en) 2009-01-07 2015-11-03 Siliconsystems, Inc. Systems and methods for improving the performance of non-volatile memory operations
JP2010198149A (ja) * 2009-02-24 2010-09-09 Toshiba Storage Device Corp 記憶装置、その制御方法及びその記憶装置を備える電子装置
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
US8307241B2 (en) 2009-06-16 2012-11-06 Sandisk Technologies Inc. Data recovery in multi-level cell nonvolatile memory
US8607076B2 (en) * 2009-06-26 2013-12-10 Seagate Technology Llc Circuit apparatus with memory and power control responsive to circuit-based deterioration characteristics
US8243525B1 (en) 2009-09-30 2012-08-14 Western Digital Technologies, Inc. Refreshing non-volatile semiconductor memory by reading without rewriting
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
KR101602939B1 (ko) 2009-10-16 2016-03-15 삼성전자주식회사 불휘발성 메모리 시스템 및 그것의 데이터 관리 방법
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
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
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
US8549214B2 (en) 2010-02-17 2013-10-01 Marvell World Trade Ltd. Protection against data corruption for multi-level memory cell (MLC) flash memory
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
KR101702392B1 (ko) * 2010-08-20 2017-02-06 삼성전자주식회사 반도체 저장 장치 및 상기 반도체 저장 장치의 성능 조절 방법
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
JP2012063884A (ja) 2010-09-14 2012-03-29 Toshiba Corp 記憶装置、電子機器、および記憶装置の制御方法
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
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
JP2012128816A (ja) * 2010-12-17 2012-07-05 Toshiba Corp メモリシステム
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
US8700950B1 (en) 2011-02-11 2014-04-15 Western Digital Technologies, Inc. System and method for data error recovery in a solid state subsystem
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
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
JP2011258229A (ja) * 2011-08-22 2011-12-22 Toshiba Corp メモリシステム
US8423722B1 (en) 2011-08-26 2013-04-16 Western Digital Technologies, Inc. System and method for high performance command processing in solid state drives
US8713357B1 (en) 2011-09-06 2014-04-29 Western Digital Technologies, Inc. Systems and methods for detailed error reporting in data storage systems
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
US8977803B2 (en) 2011-11-21 2015-03-10 Western Digital Technologies, Inc. Disk drive data caching using a multi-tiered memory
US9141308B2 (en) * 2011-12-30 2015-09-22 Sandisk Technologies Inc. Controller and method for using a transaction flag for page protection
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
US8732555B2 (en) * 2012-10-19 2014-05-20 Seagate Technology Llc Addressing variations in bit error rates amongst data storage segments
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
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101246738A (zh) * 2007-01-03 2008-08-20 三星电子株式会社 具有备份电路的存储系统及编程方法
CN101641679A (zh) * 2007-02-07 2010-02-03 美光科技公司 用于系统管理的多级单元选择的多程序

Also Published As

Publication number Publication date
JP2015535118A (ja) 2015-12-07
US20140133220A1 (en) 2014-05-15
KR20150087291A (ko) 2015-07-29
KR101919653B1 (ko) 2018-11-16
HK1216444A1 (zh) 2016-11-11
EP2920698A1 (en) 2015-09-23
AU2013345301B2 (en) 2019-06-13
AU2013345301A1 (en) 2015-07-02
US9177638B2 (en) 2015-11-03
EP2920698B1 (en) 2018-12-12
CN105051703A (zh) 2015-11-11
WO2014077962A1 (en) 2014-05-22
EP2920698A4 (en) 2016-07-13

Similar Documents

Publication Publication Date Title
CN105051703B (zh) 用于避免数据存储设备中较低页讹误的方法和设备
US9921956B2 (en) System and method for tracking block level mapping overhead in a non-volatile memory
US8909986B2 (en) Data storing method for solid state drive to preserve data integrity after power failure
US8606987B2 (en) Data writing method for flash memory and controller using the same
US8745319B2 (en) Flash memory based storage devices utilizing magnetoresistive random access memory (MRAM) to store control information facilitating wear leveling
KR101624007B1 (ko) 비휘발성 메모리를 갖는 시스템에 대한 효율적인 버퍼링
TWI399644B (zh) 非揮發記憶體區塊管理方法
CN107111456B (zh) 用于生成与主机命令相关联的提示信息的系统和方法
US9830257B1 (en) Fast saving of data during power interruption in data storage systems
CN104699413B (zh) 数据管理方法、存储器存储装置及存储器控制电路单元
CN106462493B (zh) 固态存储器损坏的减轻
CN107077427A (zh) 跨电源周期来跟踪对写入命令和解除映射命令的混合
CN103377152A (zh) 固态硬盘的写操作控制方法及写操作装置
CN108628771A (zh) 信息处理装置、存储设备以及信息处理系统
US10776268B2 (en) Priority addresses for storage cache management
US20160210241A1 (en) Reducing a size of a logical to physical data address translation table
CN111158579B (zh) 固态硬盘及其数据存取的方法
CN102099866A (zh) 专用闪存参考单元
US20140328127A1 (en) Method of Managing Non-Volatile Memory and Non-Volatile Storage Device Using the Same
CN108932107A (zh) 数据存储装置及其操作方法
CN109992202A (zh) 数据存储设备、其操作方法以及包括其的数据处理系统
CN111352854A (zh) 存储装置、控制器及操作存储装置的方法
US8972650B2 (en) Methods and systems for performing efficient page reads in a non-volatile memory
CN105468998A (zh) 数据保护方法、数据保护装置以及固态硬盘存储系统
Feng et al. Mapping granularity adaptive ftl based on flash page re-programming

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20180614

Address after: American California

Applicant after: Western Digital Technologies, Inc.

Address before: American California

Applicant before: Western Digital Technologies, Inc.

Applicant before: SKYERA Inc.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1216444

Country of ref document: HK

TR01 Transfer of patent right

Effective date of registration: 20240828

Address after: California, USA

Patentee after: SanDisk Technology Co.

Country or region after: U.S.A.

Address before: California, USA

Patentee before: Western Digital Technologies, Inc.

Country or region before: U.S.A.

TR01 Transfer of patent right