CN107743617A - 存储器中的带区映射 - Google Patents

存储器中的带区映射 Download PDF

Info

Publication number
CN107743617A
CN107743617A CN201680033642.9A CN201680033642A CN107743617A CN 107743617 A CN107743617 A CN 107743617A CN 201680033642 A CN201680033642 A CN 201680033642A CN 107743617 A CN107743617 A CN 107743617A
Authority
CN
China
Prior art keywords
several
zone
mapping table
zones
page
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201680033642.9A
Other languages
English (en)
Other versions
CN107743617B (zh
Inventor
E·麦格劳克林
J·M·杰迪罗
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.)
Micron Technology Inc
Original Assignee
Micron Technology 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 Micron Technology Inc filed Critical Micron Technology Inc
Publication of CN107743617A publication Critical patent/CN107743617A/zh
Application granted granted Critical
Publication of CN107743617B publication Critical patent/CN107743617B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding 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/1012Adding 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • G06F11/108Parity data distribution in semiconductor storages, e.g. in SSD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

本发明的实例提供与存储器中的独立磁盘冗余阵列RAID带区映射有关的设备及方法。实例性方法包括:根据带区映射表跨越多个存储器装置的存储卷在若干个带区中写入数据;其中所述若干个带区中的每一者包含若干个元素;且其中所述带区映射表包含用以识别所述若干个带区的若干个带区索引及用以识别所述若干个带区中的每一者中所包含的元素的若干个元素识别符。

Description

存储器中的带区映射
技术领域
本发明一般来说涉及半导体存储器装置、方法及系统,且更明确地说,涉及存储器中的带区映射。
背景技术
存储器装置通常经提供作为计算机或其它电子装置中的内部集成电路、半导体集成电路。存在包含易失性及非易失性存储器的许多不同类型的存储器。易失性存储器可需要电力以维持其数据且包含随机存取存储器(RAM)、动态随机存取存储器(DRAM)及同步动态随机存取存储器(SDRAM)以及其它存储器。非易失性存储器可通过在不被供电时仍存留所存储信息而提供持久数据且可包含NAND快闪存储器、NOR快闪存储器、只读存储器(ROM)、电可擦除可编程ROM(EEPROM)、可擦除可编程ROM(EPROM)及相变随机存取存储器(PCRAM)以及其它存储器。
存储器装置可被组合在一起以形成固态驱动器(SSD)。固态驱动器可包含非易失性存储器(例如,NAND快闪存储器及NOR快闪存储器)及/或可包含易失性存储器(例如,DRAM及SRAM),以及各种其它类型的非易失性及易失性存储器。快闪存储器装置可作为非易失性存储器而用于宽广范围的电子应用,所述快闪存储器装置包含使用将信息存储于氮化物层中的电荷陷阱中的半导体-氧化物-氮化物-氧化物-半导体及金属-氧化物-氮化物-氧化物-半导体电容器结构的浮动栅极快闪装置及电荷陷阱快闪(CTF)装置。快闪存储器装置通常使用允许高存储器密度、高可靠性及低电力消耗的单晶体管存储器胞元。
SSD可用于替换硬盘驱动器而作为计算机的主要存储装置,这是因为固态驱动器可在性能、大小、重量、耐用性、操作温度范围及电力消耗方面具有优于硬盘驱动器的优势。举例来说,当与磁盘驱动器相比时,SSD由于其缺乏移动零件而可具有优越性能,此可避免与磁盘驱动器相关联的寻觅时间、延时及其它机电延迟。SSD制造商可使用非易失性快闪存储器来形成可不使用内部电池供应的快闪SSD,因此允许驱动器是更加多功能且更紧凑的。
SSD可包含若干个存储器装置,例如,若干个存储器芯片(如本文中所使用,“若干个”某物可是指这些事物中的一或多者,例如,若干个存储器装置可是指一或多个存储器装置)。如所属领域的技术人员将了解,存储器芯片可包含若干个裸片及/或逻辑单元(LUN)。每一裸片可包含若干个存储器阵列及存储器阵列上的外围电路。所述存储器阵列可包含组织成若干个物理页的若干个存储器胞元,且所述物理页可组织成若干个块。
独立磁盘冗余阵列(RAID)是在多个存储器装置当中划分及/或复制数据的计算机数据存储方案的涵盖性术语。对用户及计算机的操作系统来说,RAID阵列中的多个存储器装置可呈现为单个存储器装置,例如,磁盘。在历史上,RAID与多个硬盘驱动器(HDD)一起操作。
附图说明
图1是根据本发明的若干个实施例的呈包含至少一个存储器系统的计算系统形式的设备的功能框图。
图2图解说明根据本发明的若干个实施例的存储器装置的一部分的图式。
图3图解说明在带区基础上操作的存储卷的框图。
图4图解说明根据本发明的若干个实施例的带区映射表。
图5图解说明根据本发明的若干个实施例的带区映射表。
具体实施方式
本发明包含用于存储器中的独立磁盘冗余阵列(RAID)带区映射的方法及设备。一个方法实施例包含根据带区映射表跨越多个存储器装置的存储卷在若干个带区中写入数据;其中所述若干个带区中的每一者包含若干个元素;且其中所述带区映射表包含用以识别所述若干个带区的若干个带区索引及用以识别所述若干个带区中的每一者中所包含的元素的若干个元素识别符。
在若干个实施例中,可创建通过带区加索引的带区映射表。所述带区映射表可包含针对将在把数据写入到若干个存储器装置时使用的每一带区的带区索引。所述带区映射表还可识别将包含于带区中的若干个存储器装置上的每一元素(例如,页)。举例来说,带区化映射表可运用第一带区的带区索引来识别所述第一带区且还识别将包含于所述第一带区中的若干个元素(例如,页)。带区可包含若干个页且带区的所述若干个页中的每一者可耦合到存储器系统的不同通道。
在若干个实施例中,带区映射表可用于定义存储器系统中的带区,使得每一带区具有拥有变化的位错误率的许多元素。拥有具有变化的位错误率的元素的存储器系统可减少特定带区将具有在读取带区时返回错误的多个元素的可能性。
在本发明的以下详细说明中,参考形成本发明的一部分的附图且其中以图解方式展示可如何实践本发明的一或多个实施例。充分详细地描述这些实施例以使所属领域的技术人员能够实践本发明的实施例,且应理解,在不背离本发明的范围的情况下可利用其它实施例且可做出过程、电及/或结构改变。如本文中所使用,明确地说,关于图式中的元件符号的指定符“N”、“M”、“P”、“R”、“S”、“W”及“V”指示本发明的一或多个实施例可包含经如此指定的若干个特定特征。
本文中的各图遵循编号惯例,其中第一个数字或前几个数字对应于图式图号且剩余数字识别图式中的元件或组件。不同图之间的类似元件或组件可通过使用类似数字而识别。举例来说,108可在图1中指代元件“08”,且在图2中,类似元件可称为“208”。如将了解,在本文中的各种实施例中展示的元件可经添加、交换及/或消除以便提供本发明的若干个额外实施例。另外,如将了解,图中所提供的元件的比例及相对尺度打算图解说明本发明的实施例,且不应在限制意义上解读。
图1是根据本发明的若干个实施例的呈包含至少一个存储器系统的计算系统形式的设备的功能框图。如本文中所使用,主机110、存储器装置120、存储器阵列、控制器及/或感测电路还可单独视为“设备”。在图1中所图解说明的实施例中,存储器系统104(例如,固态驱动器(SSD))可包含主机接口106、存储器控制器108(其可实施于硬件(例如,控制电路)、固件及/或软件中)及若干个存储器装置110-1、…、110-N(例如,包含非易失性多电平存储器胞元的固态存储器装置)。存储器装置110-1、…、110-N可(例如)运用经格式化的文件系统而将用于存储器系统的存储卷提供到存储器装置。在若干个实施例中,存储器控制器108可为耦合到包含物理主机接口106及存储器装置110-1、…、110-N的印刷电路板的专用集成电路(ASIC)。
如图1中所图解说明,存储器控制器108可通过多个通道耦合到主机接口106及存储器装置110-1、…、110-N。除如所属领域的技术人员将了解的其它存储器操作之外,存储器控制器108还可经配置以执行本文中所描述的操作。主机接口106可用于在存储器系统104与另一装置(例如主机102)之间传递信息。主机102可包含存储器存取装置,例如,处理器。所属领域的技术人员将了解,“一处理器”可意指若干个处理器(例如,并行处理系统)、若干个协处理器等。主机的实例包含膝上型计算机、个人计算机、数码相机、数字记录及回放装置、移动电话、PDA、存储器读卡机、接口集线器等等。针对若干个实施例,主机接口106可呈标准化接口形式。举例来说,当存储器系统104在计算系统100中用于信息存储时,物理主机接口106可为串行高级技术附件(SATA)、外围组件互连高速(PCIe)或通用串行总线(USB)以及其它连接器及接口。然而,一般来说,主机接口106可提供用于在存储器系统104与具有用于主机接口106的兼容接收器的主机系统102之间传递控制、地址、信息及其它信号的接口。
存储器控制器108可包含可耦合到主机接口106及/或并入有主机接口106的主机接口电路。主机接口电路可通过若干个层(例如,物理层、链路层及/或传输层)与主机系统102介接。所属领域的技术人员将了解,用于特定主机接口的所述若干个层可由接口标准(例如,串行高级技术附件(SATA)、外围组件互连高速(PCIe)、通用串行总线(USB)等)定义。如本文中所使用,传输层可指示至少一传输层(作为SATA标准的部分)及/或事务层(作为PCIe标准的部分)。所属领域的技术人员将了解,根据SATA标准的传输层可类似于根据PCIe标准的事务层。实施例并不限于特定标准。
一般来说,主机接口电路可将从主机系统(例如,从PCIe总线)接收的命令包转换成命令指令以用于将主机-存储器转译响应转换成主机系统命令以供发射到请求的主机。举例来说,主机接口电路可从基于PCIe的事务层包建构SATA命令包。主机接口电路可经配置以从主机系统102接收与多个地址相关联的信息。
存储器控制器108可包含主机-存储器转译电路,所述主机-存储器转译电路经配置以将主机地址转译成存储器地址(例如,与例如读取及/或写入命令的所接收命令相关联的地址)。主机-存储器转译电路可(举例来说)将主机扇区读取及写入操作转换成针对于存储器装置110-1、…、110-N的特定部分的命令。每一主机操作可经转译成单扇区或多扇区存储器装置110-1、…、110-N操作。举例来说,主机读取及写入命令可经转译成存储器装置110-1、…、110-N读取及写入命令。
根据本发明的若干个实施例,可跨越到(例如)与RAID操作相关联的若干个固态存储器装置的多个通道而将写入信息带区化。如所属领域的技术人员将了解,带区化包含分划信息,使得所述信息跨越多个通道而存储(举例来说)于一个以上装置上。存储经分划信息的一个以上装置的部分统称为带区。相比之下,镜射(mirroring)可包含将信息的复制副本存储于一个以上装置上。
存储器控制器108可维持LBA表及/或块表(未展示)。LBA表可存储所述若干个存储器装置110-1、…、110-N中的页的物理页地址且包含对应逻辑地址。LBA表可通过含于相关联命令(例如,相关联SATA命令)中的LBA而加索引。LBA表可用于查找对应于可存储对应信息的逻辑块地址的物理页地址。块表可存储用于所述若干个存储器装置110-1、…、110-N中的可擦除块的信息。存储于块表中的信息可包含有效页信息、擦除计数及其它状态信息。从块表存取的信息可通过物理块地址而加索引。
存储器控制器108可与存储器装置110-1、…、110-N通信以读取、写入及擦除信息以及进行其它操作。尽管存储器装置110-1、…、110-N经图解说明为耦合到共同存储器控制器108,但本发明的若干个实施例可包含用于每一存储器通道的离散非易失性存储器控制器。存储器装置110-1、…、110-N可包含若干个存储器胞元(例如,非易失性存储器胞元)阵列。举例来说,所述阵列可为具有NAND架构的快闪阵列。在NAND架构中,“行”的存储器胞元的控制栅极可与存取线(例如,字线)耦合,同时存储器胞元可源极到漏极地串联耦合成选择栅极源极晶体管与选择栅极漏极晶体管之间的“串”。所述串可通过选择栅极漏极晶体管连接到数据线(例如,位线)。术语“行”及“串”的使用既不暗示存储器胞元的线性布置又不暗示存储器胞元的正交布置。如所属领域的技术人员将了解,存储器胞元到位线及源极线的连接的方式取决于阵列是NAND架构、NOR架构还是某一其它存储器阵列架构。
存储器装置110-1、…、110-N可包含可经分组的若干个存储器胞元。如本文中所使用,群组可包含若干个存储器胞元,例如,页、块、平面、裸片、整个阵列或其它存储器胞元群组。举例来说,一些存储器阵列可包含组成存储器胞元块的若干个存储器胞元页。若干个块可包含于存储器胞元平面中。若干个存储器胞元平面可包含于裸片上。作为实例,128GB存储器装置可包含每页4314个字节的信息(例如,4096个字节的写入信息加上218个字节的附加信息)、每块128个页、每平面2048个块及每装置16个平面。
在若干个实施例中,存储器控制器108可包含第一带区映射表120及第二带区映射表122。在若干个实施例中,第一带区映射表120的至少一部分及/或第二带区映射表122的至少一部分还可存储于存储器装置110-1、…、110-N中、主机系统102中及/或单独存储位置(未展示)中。第二带区映射表122可为第一带区映射表102的逆映射表,其中第一带区映射表120及第二带区映射表122两者均包含相同信息,但第一带区映射表120是通过带区索引来加索引且第二带区映射表122是通过页识别符而加索引。因此,第一带区映射表120可用于使若干个页与特定带区相关联且第二带区映射表122可用于使若干个带区与特定页相关联。第一带区映射表120可为将存储器装置110-1、…、110-N中的特定页关联到特定带区的数据结构。第一带区映射表120可包含若干个带区索引,其中所述若干个带区索引中的每一者识别存储器装置110-1、…、110-N中的带区。第一带区映射表120可使存储器装置110-1、…、110-N的特定页与通过第一带区映射表120的带区索引识别的带区相关联。
在若干个实施例中,存储器控制器108可基于存储器装置110-1、…、110-N内的特定页的位错误率及/或特定页的物理位置来选择与带区映射表中的特定带区相关联的特定页。举例来说,存储器控制器108可选择在带区中包含具有较低位错误率的一些页及具有较高位错误率的一些页,使得带区中的每一者将包含具有变化的位错误率的页。包含具有变化的位错误率的页的带区不太可能具有不可校正ECC错误,因此可在读取带区时使用ECC操作来校正错误。
此外,存储器控制器108可基于存储器装置110-1、…、110-N上的页的物理位置来选择页。举例来说,存储器控制器108可选择接近阵列的边缘定位的一些页(例如,“边缘页”)及朝向阵列的中心定位的一些页,使得带区中的每一者将包含在存储器装置110-1、…、110-N上具有变化的物理位置的页。存储器控制器108可在带区映射表中包含具有变化数目个页的带区。举例来说,一个带区可包含6个页且另一带区可包含5个页。此外,特定页可包含于存储器装置110-1、…、110-N上的一个以上带区中。
页识别符可包含通道、装置、块及/或页信息以识别存储器装置110-1、…、110-N中的特定页的位置。页识别符可包含所述页的物理地址。页识别符可供通道控制器108使用以在执行读取及/或写入操作时定位所述页。
主机-存储器转译电路可包含第一级及/或第二级错误检测电路(图1中未展示)。尽管称为错误检测电路,但错误检测电路还可执行错误校正。如所属领域的技术人员将理解,第一级错误检测电路可经配置以施加错误校正(例如BCH错误校正)以检测及/或校正与存储于存储器装置110-1、…、110-N中的信息相关联的错误。举例来说,第一级错误检测电路可提供对1080位码字的29个位的错误校正。第二级错误检测电路可(例如)通过确定存在超过阈值量的可校正错误来检测不可通过第一级错误检测校正的错误,例如,不可校正错误校正码(UECC)错误。第二级错误检测电路可包含RAID“互斥或”(XOR)电路。所述RAID XOR电路可基于从主机接口电路接收的信息而计算奇偶检验信息。针对写入到若干个存储器装置110-1、…、110-N的每一位,奇偶检验位可通过RAID XOR电路而计算且被写入到存储器装置110-1、…、110-N中的特定一者。
第二带区映射表122可为将存储器装置110-1、…、110-N中的特定带区关联到存储器装置110-1、…、110-N中的特定页的数据结构。第二带区映射表122可通过页而加索引且包含若干个页识别符,其中所述若干个页识别符中的每一者识别存储器装置110-1、…、110-N中的一页。第二带区映射表122可指示哪些带区与在第二带区映射表122中加索引的页相关联。通过页而加索引的第二带区映射表122可为通过带区而加索引的第一带区映射表120的逆映射表。
在若干个实施例中,第二带区映射表122可由第二级错误检测电路使用以执行RAID读取错误恢复操作。可在出现UECC错误时执行RAID读取错误恢复操作且可将来自为存储器装置110-1、…、110-N中的一或多个带区的一部分的坏页的数据移动到不同页。坏页可为其中在执行读取操作时出现UECC错误的页。RAID读取错误恢复操作可通过定位第二带区映射表122中的坏页的页识别符而使用第二带区映射表122且确定包含所述坏页的存储器装置110-1、…、110-N中的带区。通过第二带区映射表122识别为包含坏页的带区可经更新,使得来自坏页的数据使用奇偶检验数据来恢复且所述数据被移动到存储器装置110-1、…、110-N中的不同页。第一带区映射表120接着可经更新以使不同页的页识别符与存储器装置110-1、…、110-N中的经更新带区相关联。
图1的实施例可包含额外电路,所述额外电路并未图解说明以免使本发明的实施例模糊。举例来说,存储器系统104可包含用以锁存通过I/O电路经由I/O连接提供的地址信号的地址电路。地址信号可经接收且由行解码器及列解码器解码以存取存储器装置110-1、…、110-N。所属领域的技术人员将了解,地址输入连接的数目可取决于存储器装置110-1、…、110-N的密度及架构。
图2图解说明根据本发明的若干个实施例的存储器装置210的一部分的图式。存储器装置210可为例如图1中所展示的存储器装置110-1到110-N的装置。
如图2中所展示,存储器装置210可包含存储器胞元的若干个物理块260-0(块0)、260-1(块1)、…、260-M(块M)。在图2中所展示的实例中,指示符“M”用于指示存储器装置210可包含若干个物理块。作为实例,存储器装置210中的物理块的数目可为128个块、4,096个块或32,768个块,然而,实施例并不限于存储器装置中的物理块的特定数目或特定倍数。在图2中所图解说明的实施例中,存储器装置210可为(举例来说)NAND快闪存储器装置210,使得(举例来说)每一物理块260-0、260-1、…、260-M中的存储器胞元可作为一单元一起被擦除,例如,每一物理块中的胞元可以大体上同时方式被擦除。举例来说,每一物理块中的胞元可在单个擦除操作中一起被擦除。
指示符“R”用于指示物理块(例如,260-0、260-1、…、260-M)可包含若干个行。在一些实施例中,每一物理块中的行(例如,字线)的数目可为32,但实施例并不限于每物理块特定数目个行270-0、270-1、…、270-R。如所属领域的技术人员将了解,每一行270-0、270-1、…、270-R可包含一或多个物理页,例如,偶数页及奇数页。物理页是指写入及/或读取单元,例如,一起经写入及/或读取或作为存储器胞元的功能群组的若干个胞元。因此,可运用单独写入及/或读取操作来写入及/或读取偶数页及奇数页。
在本发明的若干个实施例中,且如图2中所展示,页可将信息存储于若干个扇区280-0、280-1、…、280-S中。指示符“S”用于指示页可包含若干个扇区。信息可包含系统数据及/或用户数据。每一扇区280-0、280-1、…、280-S可存储系统数据及/或用户数据且可包含附加信息,例如,错误校正码(ECC)信息及逻辑块地址(LBA)信息。如所属领域的技术人员将了解,逻辑块寻址是可由主机用于识别信息扇区的方案,例如,每一扇区可对应于唯一LBA。在若干个实施例中,扇区是存储卷的最小可寻址部分。作为实例,信息扇区可为若干个信息字节,例如256个字节、512个字节或1,024个字节。举例来说,一SSD可在一页中具有4个、8个或16个扇区,其中一扇区可为512个字节,且一SSD可具有每物理块128个、256个或512个页,因此物理块大小为131072个字节、262144个字节及524288个字节。实施例并不限于这些实例。
应注意,针对物理块260-0、260-1、…、260-M,行270-0、270-1、…、270-R,扇区280-0、280-1、…、280-S及页的其它配置是可能的。举例来说,物理块260-0、260-1、…、260-M的行270-0、270-1、…、270-R可各自存储对应于单个扇区的信息,所述扇区可包含(举例来说)多于或少于512个字节的信息。
图3图解说明在带区基础上操作的存储卷340的框图。存储卷340可由经格式化的文件系统提供到存储器系统(例如,图1中的存储器系统104)中的若干个固态存储器装置(例如,图1中的固态存储器装置110-1、…、110-N)。如本文中所描述,每一固态存储器装置可与存储器通道342-1、…、342-(N-1)、342-N相关联。然而,实施例并不限于每存储器装置(例如,存储器芯片)一个通道,如一些实施例可包含每装置多个通道。一个存储器芯片可通过一个以上通道耦合到存储器控制器,例如,在存储器芯片包含存储器胞元的一个以上物理平面的情形中。可跨越由所述若干个固态存储器装置提供的存储卷340在若干个带区344-1、344-2、…、344-P中写入信息。
存储器系统可从主机系统(例如,图1中所展示的主机102)接收写入信息。存储器系统(例如,与图1中的存储器控制器108相关联的RAID XOR电路)可计算针对写入信息的奇偶检验信息。在若干个实施例中,写入信息及奇偶检验信息可跨越存储卷340经带区化,使得写入信息可跨越所述若干个可用通道的子集(例如,通道342-1、…、342-(N-1))经写入且奇偶检验信息可跨越所述若干个可用通道的第二子集(例如,通道342-N)经写入。举例来说,存储器系统可包含八个通道,其中七个通道用于写入写入信息且一个通道用于写入奇偶检验信息。如本文中所描述,可针对不同带区跨越不同通道写入奇偶检验信息。然而,实施例并不限于将N个通道中的N-1个用于写入信息且将单个通道用于奇偶检验信息。根据本发明的若干个实施例,RAID结构及/或带区大小可为可编程选项。
RAID结构可表示经设计以跨越多个存储器装置划分及/或复制信息的RAID存储方案的实施方案。举例来说,可跨越两个或多于两个装置而使信息带区化及/或镜射信息。带区化可包含将写入信息划分成若干元素且在若干个存储器装置中的每一者中存储至少一个元素。镜射可包含将写入信息的副本冗余地存储于至少两个存储器装置中。带区化及镜射两者均可包含使用错误检测。奇偶检验信息可存储于与写入信息相同的存储器装置中及/或存储于与存储写入信息的装置分离的装置中。根据本发明的若干个实施例,待由存储器系统实施的特定RAID结构可为可编程选项。
如本文中所使用,带区大小可是指跨越其使信息带区化的通道的数目。根据本发明的若干个实施例,用于存储器系统的带区大小可为可编程选项,使得可用于存储器系统的任何数目个通道均可用于带区。举例来说,包含32个通道及若干个对应存储器装置的存储器系统可具有从2个到32个通道的任何带区大小。一些实施例可包含将非易失性存储器逻辑地隔离成至少两个部分,每一部分包含与所述非易失性存储器相关联的所述若干个通道的子集。这些实施例可包含在带区基础上针对至少两个部分中的每一者单独地操作所述非易失性存储器系统。举例来说,可在每一带区中写入若干个页的写入信息及奇偶检验信息,其中第一带区是跨越存储器系统的所述若干个通道的仅一个子集而写入且第二带区是跨越所述存储器系统的所述若干个通道的仅一不同子集而写入。此外,带区大小可在存储器系统的操作期间改变。块表可用于跟踪存储器系统的哪些部分对应于哪些带区。
与图1中的存储器控制器108相关联的ECC电路可计算写入信息的元素的第一级错误校正信息及/或存储于存储器装置中的第二级校正信息(例如,奇偶检验信息)。图3包含以下内容的图解:与通道342-1、…、342-(N-1)相关联地存储的写入信息346及第一级错误校正信息348以及与通道342-N相关联地存储的奇偶检验信息350及第一级错误校正信息348。当写入带区时,写入信息及错误校正信息可一起被写入。如果在信息(无论是写入信息还是奇偶检验信息)中检测到错误,那么可使用第一级错误校正信息以试图在实施第二级错误校正(例如,与上文所描述的奇偶检验信息相关联的校正)之前或在不实施所述第二级错误校正的情况下校正所述错误。存储器系统可存储足够的第一级错误校正信息以使阈值数目个错误位能够被校正。如果在写入操作期间检测到包含比可运用第一级错误校正信息校正的位错误多的位错误的错误(例如,UECC错误),那么可实施(例如)使用上文所描述的第二带区映射表及奇偶检验信息进行的第二级错误校正,例如,可使用奇偶检验信息及写入信息的剩余部分重新创建与所述错误相关联的信息。
图4图解说明根据本发明的若干个实施例的带区映射表420。尽管在此实例中提及“页”,但带区还可包括除页之外的元素。
在图4中所展示的实例中,带区映射表420是包含带区索引列430及若干个页识别符列434的表。在图4中,通过带区索引432-1、432-2、432-3、…、432-V指示若干个带区。带区索引432-1、432-2、432-3、…、432-V中的每一者与若干个页相关联。举例来说,带区索引432-1与页识别符436-1、436-2、436-3及436-4相关联;带区索引432-2与页识别符436-5、436-3、436-6及436-4相关联;带区索引432-3与页识别符436-2、436-7、436-4及436-1相关联;且带区索引432-V与页识别符436-8、436-7、436-4及436-W相关联。两个或多于两个带区可包含共同页。举例来说,带区索引432-1、432-2及432-3全部与页识别符436-4相关联。此外,带区可与不同数目个页相关联。举例来说,带区索引432-1与四个页相关联且带区索引432-V与三个页相关联。
可根据带区映射表将数据写入到存储器装置,使得当数据被写入到通过带区索引识别的带区时,数据还将被写入到如带区映射表中所指示的相关联页。举例来说,当写入通过带区索引432-1指示的带区时,数据将被写入到通过页识别符436-1、436-2、436-3及436-4识别的页。页识别符可包含通道、装置、块及/或页信息。此外,每一带区可包含奇偶检验页且每一带区的奇偶检验页可通过带区映射表的列中的一者中的页识别符指示。举例来说,每一带区的奇偶检验页可通过带区映射表的第二列中的页识别符识别。
图5图解说明根据本发明的若干个实施例的带区映射表522。尽管在此实例中提及“页”,但带区还可包括除页之外的元素。带区映射表522可为上文关于图4所描述的带区映射表420的逆映射表。在图5中所展示的实例中,带区映射表522是包含若干个带区索引列430及一页识别符列534的表。在图5中,通过页识别符536-1、536-2、536-3、536-4、536-5、536-6、536-7、536-8、…、532-V指示若干个页。页识别符536-1、536-2、536-3、536-4、536-5、536-6、536-7、536-8、…、532-V中的每一者与通过带区化索引532-1、532-2、532-3、…、532-V指示的若干个带区相关联。举例来说,页识别符536-3与由带区索引532-1及532-2指代的带区相关联。因此,响应于UECC错误,带区映射表表531可用于执行RAID读取错误恢复操作。RAID读取错误恢复操作可包含将数据从为一或多个带区的一部分的坏页移动到不同页。RAID读取错误恢复操作可使用带区映射表522来定位带区映射表522中的坏页的页识别符且确定包含所述坏页的带区。通过带区映射表522识别为包含坏页的带区可经更新使得来自坏页的数据使用奇偶检验数据来恢复且所述数据被移动到不同页。来自图4的带区映射表420接着可经更新以使不同页的页识别符与经更新带区相关联。
本发明包含用于存储器中的RAID带区映射的方法及装置。一个方法实施例包含根据带区映射表跨越多个存储器装置的存储卷在若干个带区中写入数据;其中所述若干个带区中的每一者包含若干个元素;且其中所述带区映射表包含用以识别所述若干个带区的若干个带区索引及用以识别所述若干个带区中的每一者中所包含的元素的若干个元素识别符。
尽管本文中已图解说明且描述了特定实施例,但所属领域的技术人员将了解,经计算以实现相同结果的布置可替代所展示的特定实施例。本发明打算涵盖本发明的若干个实施例的更改或变化。应理解,已以说明性方式而非限制性方式做出以上说明。所属领域的技术人员在审阅以上说明后即刻将明了上述实施例的组合及本文中未具体描述的其它实施例。本发明的若干个实施例的范围包含其中使用上述结构及方法的其它应用。因此,应参考所附权利要求书以及授权此权利要求书的等效内容的全部范围来确定本发明的若干个实施例的范围。
在前述具体实施方式中,出于简化本发明的目的而将一些特征共同分组于单个实施例中。本发明的此方法不应解释为反映以下意图:本发明的所揭示实施例必须使用比在每一权利要求中明确陈述的特征多的特征。而是,如以下权利要求书反映,发明性标的物在于少于单个所揭示实施例的所有特征。因此,特此将所附权利要求书并入到具体实施方式中,其中每一权利要求独立地作为单独实施例。

Claims (29)

1.一种用于带区映射的方法,其包括:
根据带区映射表跨越多个存储器装置的存储卷在若干个带区中写入数据;
其中所述若干个带区中的每一者包含若干个元素;且
其中所述带区映射表包含用以识别所述若干个带区的若干个带区索引及用以识别所述若干个带区中的每一者中所包含的元素的若干个元素识别符。
2.根据权利要求1所述的方法,其中所述方法包含通过使所述若干个带区索引中的每一者与所述多个存储器装置中的所述元素的一部分相关联而创建所述带区映射表。
3.根据权利要求1所述的方法,其中所述方法包含通过使所述若干个带区中的每一者与奇偶检验元素识别符相关联而创建所述带区映射表。
4.根据权利要求1所述的方法,其中所述方法包含通过基于与所述元素相关联的位错误率来选择要包含于所述若干个带区中的所述元素而创建所述带区映射表。
5.根据权利要求1所述的方法,其中所述方法包含通过基于所述多个存储器装置内的页的位置来选择要包含于所述若干个带区中的所述页而创建所述带区映射表。
6.根据权利要求1到5中任一权利要求所述的方法,其中在所述若干个带区中写入数据包含将所述数据分划成所述若干个元素且将所述若干个元素写入到所述多个存储器装置。
7.根据权利要求6所述的方法,其中将所述若干个元素写入到所述多个存储器装置包含将至少一个元素写入到所述多个存储器装置中的每一者。
8.根据权利要求6所述的方法,其中将所述若干个元素写入到所述多个存储器装置包含将至少一个元素写入到所述多个存储器装置的子集中的每一者。
9.根据权利要求8所述的方法,其中将至少一个元素写入到所述多个存储器装置的子集中的每一者包含将写入数据的相应页写入到所述多个存储器装置的子集中的每一者。
10.一种用于带区映射的方法,其包括:
存储包含与存储器中的若干个带区相关联的每一元素的元素识别符信息的带区映射表,其中与所述若干个带区相关联的每一元素是基于在特定元素中出现读取错误的可能性而被包含于特定带区中;及
将数据写入到所述存储器中的所述若干个带区,其中所述数据基于所述带区映射表的所述元素识别符信息而跨越所述存储器被带区化。
11.根据权利要求10所述的方法,其中存储所述带区映射表包含提供用于所述若干个带区中的每一者的特定带区索引。
12.根据权利要求10所述的方法,其中存储所述带区映射表包含提供用于与所述若干个带区相关联的每一元素的物理地址。
13.根据权利要求12所述的方法,其中用于与所述若干个带区相关联的每一元素的所述物理地址包含通道、装置、块及页信息。
14.根据权利要求10到12中任一权利要求所述的方法,其中所述方法包含存储逆带区映射表,其中所述逆带区映射表是通过元素而加索引且识别与每一特定元素相关联的每一带区。
15.根据权利要求10到12中任一权利要求所述的方法,其中所述方法包含通过用不同元素的元素识别符替换坏元素的元素识别符来更新所述带区映射表。
16.根据权利要求10到12中任一权利要求所述的方法,其中所述带区映射表包含与特定带区相关联的特定数目个元素,其中元素的所述特定数目是可变的。
17.根据权利要求10到12中任一权利要求所述的方法,其中所述带区映射表包含在所述若干个带区中的每一者中包含的奇偶检验元素识别符。
18.一种用于带区映射的方法,其包括:
存储带区映射表,其中所述带区映射表是通过元素而加索引且识别与多个存储器装置中的若干个元素中的每一特定元素相关联的每一带区;及
通过定位所述带区映射表中的坏元素及更新与如通过所述带区映射表指示的所述坏元素相关联的若干个带区中的每一者来执行读取错误恢复操作。
19.根据权利要求18所述的方法,其中更新所述若干个带区中的每一者包含用新元素替换元素页。
20.根据权利要求18到19中任一权利要求所述的方法,其中所述方法包含响应于错误校正码ECC操作失败而执行所述读取错误恢复操作。
21.根据权利要求18到19中任一权利要求所述的方法,其中所述方法包含通过从所述带区映射表移除坏元素的元素识别符而更新所述带区映射表。
22.一种设备,其包括:
若干个存储器装置;
控制器,其耦合到所述若干个存储器装置且经配置以:
在所述若干个存储器装置中存储包括用于若干个带区的每一元素的元素识别符的带区映射表,其中所述带区映射表定义特定带区的特定元素;及
将数据写入到所述若干个存储器装置,其中所述数据被写入到通过所述带区映射表定义的所述若干个带区的元素。
23.根据权利要求22所述的设备,其中用于每一元素的所述元素识别符包含通道、装置、块及页信息。
24.根据权利要求22所述的设备,其中若干个元素中的任一元素可包含于特定带区中。
25.根据权利要求22到24中任一权利要求所述的设备,其中特定带区的所述特定元素包含所述若干个存储器装置中的变化的物理位置。
26.根据权利要求25所述的设备,其中所述变化的物理位置是基于与所述物理位置相关联的位错误率而选择。
27.一种设备,其包括:
若干个存储器装置;
控制器,其耦合到所述若干个存储器装置且经配置以:
存储识别特定页及与每一特定页相关联的若干个带区的带区映射表;及
通过定位所述带区映射表中的坏页及更新与如通过所述带区映射表指示的所述坏页相关联的所述若干个带区中的每一者来执行RAID读取错误恢复操作。
28.根据权利要求27所述的设备,其中所述带区映射表运用页识别符来识别所述特定页中的每一者。
29.根据权利要求27到28中任一权利要求所述的设备,其中与所述坏页相关联的所述若干个带区中的每一者是通过在所述若干个带区中的每一者中包含一新页而更新。
CN201680033642.9A 2015-06-10 2016-06-07 存储器中的带区映射 Active CN107743617B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/735,838 US9766837B2 (en) 2015-06-10 2015-06-10 Stripe mapping in memory
US14/735,838 2015-06-10
PCT/US2016/036138 WO2016200764A1 (en) 2015-06-10 2016-06-07 Stripe mapping in memory

Publications (2)

Publication Number Publication Date
CN107743617A true CN107743617A (zh) 2018-02-27
CN107743617B CN107743617B (zh) 2019-06-04

Family

ID=57504083

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680033642.9A Active CN107743617B (zh) 2015-06-10 2016-06-07 存储器中的带区映射

Country Status (7)

Country Link
US (3) US9766837B2 (zh)
EP (1) EP3289441B1 (zh)
JP (1) JP6422600B2 (zh)
KR (1) KR101874290B1 (zh)
CN (1) CN107743617B (zh)
TW (1) TWI599946B (zh)
WO (1) WO2016200764A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112445648A (zh) * 2019-08-29 2021-03-05 美光科技公司 用于共享奇偶校验保护的系统和方法
US11307931B1 (en) * 2021-03-19 2022-04-19 Micron Technology, Inc. Using zones to manage capacity reduction due to storage device failure

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9529672B2 (en) * 2014-09-25 2016-12-27 Everspin Technologies Inc. ECC word configuration for system-level ECC compatibility
US10073621B1 (en) * 2016-03-31 2018-09-11 EMC IP Holding Company LLC Managing storage device mappings in storage systems
US10545825B2 (en) * 2016-04-29 2020-01-28 Synamedia Limited Fault-tolerant enterprise object storage system for small objects
CN107870730B (zh) * 2016-09-23 2020-11-20 伊姆西Ip控股有限责任公司 用于管理存储系统的方法和系统
US10365983B1 (en) * 2017-04-27 2019-07-30 EMC IP Holding Company LLC Repairing raid systems at per-stripe granularity
US10719399B2 (en) 2018-01-08 2020-07-21 International Business Machines Corporation System combining efficient reliable storage and deduplication
US10901840B2 (en) * 2018-06-28 2021-01-26 Western Digital Technologies, Inc. Error correction decoding with redundancy data
US11017112B2 (en) * 2018-07-03 2021-05-25 Tyson York Winarski Distributed network for storing a redundant array of independent blockchain blocks
US10747614B2 (en) * 2018-07-23 2020-08-18 Micron Technology, Inc. Hybrid iterative error correcting and redundancy decoding operations for memory sub-systems
CN111124269B (zh) 2018-10-31 2023-10-27 伊姆西Ip控股有限责任公司 用于存储管理的方法、电子设备和计算机可读存储介质
CN111124262B (zh) * 2018-10-31 2023-08-22 伊姆西Ip控股有限责任公司 独立盘冗余阵列(raid)的管理方法、设备和计算机可读介质
US11204716B2 (en) 2019-01-31 2021-12-21 EMC IP Holding Company LLC Compression offloading to RAID array storage enclosure
US11055188B2 (en) * 2019-04-12 2021-07-06 EMC IP Holding Company LLC Offloading error processing to raid array storage enclosure
TWI708260B (zh) * 2019-08-15 2020-10-21 華邦電子股份有限公司 儲存裝置及存取方法
KR20220023476A (ko) * 2020-08-21 2022-03-02 에스케이하이닉스 주식회사 레이드 데이터 저장 장치 및 이를 포함하는 데이터 저장 시스템
KR20220072242A (ko) * 2020-11-25 2022-06-02 삼성전자주식회사 비휘발성 메모리 장치의 데이터 기입 방법 및 이를 수행하는 비휘발성 메모리 장치
KR20220077573A (ko) * 2020-12-02 2022-06-09 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
US11650881B2 (en) 2021-03-19 2023-05-16 Micron Technology, Inc. Managing storage reduction and reuse in the presence of storage device failures
US11892909B2 (en) 2021-03-19 2024-02-06 Micron Technology, Inc. Managing capacity reduction due to storage device failure
US11733884B2 (en) 2021-03-19 2023-08-22 Micron Technology, Inc. Managing storage reduction and reuse with failing multi-level memory cells
US11520656B2 (en) 2021-03-19 2022-12-06 Micron Technology, Inc. Managing capacity reduction and recovery due to storage device failure
US11520500B2 (en) 2021-03-19 2022-12-06 Micron Technology, Inc. Managing capacity reduction when downshifting multi-level memory cells
US11605439B2 (en) * 2021-03-31 2023-03-14 Micron Technology, Inc. Remapping bad blocks in a memory sub-system
US11822814B2 (en) * 2022-02-28 2023-11-21 Western Digital Technologies, Inc. Dynamic XOR bin mapping in memory devices

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090240873A1 (en) * 2003-12-02 2009-09-24 Super Talent Electronics Inc. Multi-Level Striping and Truncation Channel-Equalization for Flash-Memory System
US20110078496A1 (en) * 2009-09-29 2011-03-31 Micron Technology, Inc. Stripe based memory operation
US20120072680A1 (en) * 2010-09-22 2012-03-22 Kabushiki Kaisha Toshiba Semiconductor memory controlling device
CN103942114A (zh) * 2013-01-22 2014-07-23 Lsi公司 Nvm地址、跨度及长度映射/转换的存储地址空间
US20140317447A1 (en) * 2010-09-28 2014-10-23 Pure Storage, Inc. Adaptive raid for an ssd environment
US20150052393A1 (en) * 2013-08-19 2015-02-19 International Business Machines Corporation Fast data back-up and restore between volatile and flash memory

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5570376A (en) * 1994-10-05 1996-10-29 Sun Microsystems, Inc. Method and apparatus for identifying faults within a system
US6513093B1 (en) * 1999-08-11 2003-01-28 International Business Machines Corporation High reliability, high performance disk array storage system
US6902882B2 (en) * 2000-05-23 2005-06-07 Kerong Gu Methods of monitoring production of gene products and uses thereof
US6996742B2 (en) * 2000-11-28 2006-02-07 Sedna Patent Services, Llc Method for regenerating and streaming content from a video server using RAID 5 data striping
JP3682256B2 (ja) * 2001-11-30 2005-08-10 株式会社東芝 ディスクアレイ装置及び同装置におけるパリティ処理方法
JP3702231B2 (ja) * 2002-01-31 2005-10-05 株式会社東芝 ディスクアレイ装置及び同装置における動的記憶容量拡張方法
JP4238514B2 (ja) 2002-04-15 2009-03-18 ソニー株式会社 データ記憶装置
US7386663B2 (en) * 2004-05-13 2008-06-10 Cousins Robert E Transaction-based storage system and method that uses variable sized objects to store data
US7380157B2 (en) * 2004-10-27 2008-05-27 Pillar Data Systems, Inc. Staggered writing for data storage systems
US7386758B2 (en) * 2005-01-13 2008-06-10 Hitachi, Ltd. Method and apparatus for reconstructing data in object-based storage arrays
TWI350526B (en) 2005-11-21 2011-10-11 Infortrend Technology Inc Data access methods and storage subsystems thereof
JP5242264B2 (ja) * 2008-07-07 2013-07-24 株式会社東芝 データ制御装置、ストレージシステムおよびプログラム
TWI497293B (zh) 2009-12-17 2015-08-21 Ibm 固態儲存裝置內之資料管理
IT1399634B1 (it) * 2010-04-26 2013-04-26 G S G Srl Macchina per il trattamento di miscele alimentari ad attivazione centralizzata
US8898206B1 (en) * 2010-04-28 2014-11-25 Netapp, Inc. Mechanism for distributed inode to path traversal in a striped volume system
US8417877B2 (en) * 2010-08-31 2013-04-09 Micron Technology, Inc Stripe-based non-volatile multilevel memory operation
KR101636785B1 (ko) 2010-12-01 2016-07-06 엘에스아이 코포레이션 독립 실리콘 소자들을 갖는 동적 상위 레벨 리던던시 모드 관리
KR101732030B1 (ko) 2010-12-22 2017-05-04 삼성전자주식회사 데이터 저장 장치 및 그것의 동작 방법
US9251059B2 (en) * 2011-09-23 2016-02-02 Avalanche Technology, Inc. Storage system employing MRAM and redundant array of solid state disk
US8694849B1 (en) * 2011-12-19 2014-04-08 Pmc-Sierra Us, Inc. Shuffler error correction code system and method
WO2013119074A1 (ko) 2012-02-09 2013-08-15 Noh Sam Hyuk 신뢰성 있는 ssd를 위한 효율적인 raid 기법
US8327185B1 (en) 2012-03-23 2012-12-04 DSSD, Inc. Method and system for multi-dimensional raid
US9047220B2 (en) * 2012-07-23 2015-06-02 Hitachi, Ltd. Storage system and data management method
US9348758B2 (en) 2012-09-24 2016-05-24 Sk Hynix Memory Solutions Inc. Virtual addressing with multiple lookup tables and RAID stripes
US8862818B1 (en) 2012-09-27 2014-10-14 Emc Corporation Handling partial stripe writes in log-structured storage
US8977594B2 (en) 2012-12-21 2015-03-10 Zetta Inc. Systems and methods for state consistent replication
US9405783B2 (en) 2013-10-02 2016-08-02 Netapp, Inc. Extent hashing technique for distributed storage architecture
US9274888B2 (en) * 2013-11-15 2016-03-01 Qualcomm Incorporated Method and apparatus for multiple-bit DRAM error recovery
US20150363118A1 (en) * 2014-06-17 2015-12-17 Netapp, Inc. Techniques for harmonic-resistant file striping
US9021297B1 (en) 2014-07-02 2015-04-28 Pure Storage, Inc. Redundant, fault-tolerant, distributed remote procedure call cache in a storage system
US9639268B2 (en) * 2014-08-21 2017-05-02 Datrium, Inc. Distributed data storage system with key-based addressing
KR20160083762A (ko) * 2015-01-02 2016-07-12 삼성전자주식회사 스토리지 시스템에서의 매핑 테이블 관리 방법 및 이를 적용한 스토리지 시스템

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090240873A1 (en) * 2003-12-02 2009-09-24 Super Talent Electronics Inc. Multi-Level Striping and Truncation Channel-Equalization for Flash-Memory System
US20110078496A1 (en) * 2009-09-29 2011-03-31 Micron Technology, Inc. Stripe based memory operation
US20120072680A1 (en) * 2010-09-22 2012-03-22 Kabushiki Kaisha Toshiba Semiconductor memory controlling device
US20140317447A1 (en) * 2010-09-28 2014-10-23 Pure Storage, Inc. Adaptive raid for an ssd environment
CN103942114A (zh) * 2013-01-22 2014-07-23 Lsi公司 Nvm地址、跨度及长度映射/转换的存储地址空间
US20150052393A1 (en) * 2013-08-19 2015-02-19 International Business Machines Corporation Fast data back-up and restore between volatile and flash memory

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112445648A (zh) * 2019-08-29 2021-03-05 美光科技公司 用于共享奇偶校验保护的系统和方法
CN112445648B (zh) * 2019-08-29 2022-04-05 美光科技公司 用于共享奇偶校验保护的系统和方法
US11397642B2 (en) 2019-08-29 2022-07-26 Micron Technology, Inc. Shared parity protection
US11307931B1 (en) * 2021-03-19 2022-04-19 Micron Technology, Inc. Using zones to manage capacity reduction due to storage device failure

Also Published As

Publication number Publication date
EP3289441A1 (en) 2018-03-07
US20170357467A1 (en) 2017-12-14
KR101874290B1 (ko) 2018-07-03
EP3289441B1 (en) 2020-04-29
CN107743617B (zh) 2019-06-04
US20160364181A1 (en) 2016-12-15
US20190324847A1 (en) 2019-10-24
US10339005B2 (en) 2019-07-02
KR20180005284A (ko) 2018-01-15
JP6422600B2 (ja) 2018-11-14
US11042441B2 (en) 2021-06-22
US9766837B2 (en) 2017-09-19
EP3289441A4 (en) 2018-09-05
WO2016200764A1 (en) 2016-12-15
TWI599946B (zh) 2017-09-21
JP2018517213A (ja) 2018-06-28
TW201709044A (zh) 2017-03-01

Similar Documents

Publication Publication Date Title
CN107743617B (zh) 存储器中的带区映射
JP5853040B2 (ja) ストライプに基づく不揮発性多値メモリ操作
CN108062258B (zh) 用于错误恢复的循环交错的xor阵列
CN107403640B (zh) 存取闪存模块的方法及相关的闪存控制器与记忆装置
US9298545B2 (en) Data protection across multiple memory blocks
CN107391296B (zh) 存取闪存模块的方法及相关的闪存控制器与记忆装置
US8266501B2 (en) Stripe based memory operation
CN107423158B (zh) 存取闪存模块的方法及相关的闪存控制器与记忆装置
CN112463433A (zh) 存取闪存模块的方法及相关的闪存控制器与记忆装置
CN111951855B (zh) 存取闪存模块的方法及相关的闪存控制器与记忆装置
KR101645829B1 (ko) 장치들 및 유효 마스크들을 저장하고 장치들을 동작시키는 방법들
CN112214348A (zh) 存取闪存模块的方法及相关的闪存控制器与记忆装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant