CN111045852B - 移动nand奇偶校验信息技术 - Google Patents

移动nand奇偶校验信息技术 Download PDF

Info

Publication number
CN111045852B
CN111045852B CN201910955412.3A CN201910955412A CN111045852B CN 111045852 B CN111045852 B CN 111045852B CN 201910955412 A CN201910955412 A CN 201910955412A CN 111045852 B CN111045852 B CN 111045852B
Authority
CN
China
Prior art keywords
data
parity information
memory
nand memory
stripes
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
CN201910955412.3A
Other languages
English (en)
Other versions
CN111045852A (zh
Inventor
H·R·桑吉迪
罗贤钢
J·黄
K·K·姆奇尔拉
A·马尔谢
V·P·拉亚普鲁
S·瑞特南
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 CN111045852A publication Critical patent/CN111045852A/zh
Application granted granted Critical
Publication of CN111045852B publication Critical patent/CN111045852B/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/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • 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/1064Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in cache or content addressable memories
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • 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
    • 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
    • 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/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/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
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/41Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
    • G11C11/413Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction
    • G11C11/417Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction for memory cells of the field-effect type
    • G11C11/419Read-write [R-W] circuits
    • 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
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1057Data output buffers, e.g. comprising level conversion circuits, circuits for adapting load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1041Resource optimization
    • G06F2212/1044Space efficiency improvement
    • 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
    • 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/7208Multiple device management, e.g. distributing data over multiple flash devices
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series

Abstract

本发明涉及移动NAND奇偶校验信息技术。在一些实例中揭示用于处理具有有限高速缓冲存储器的非易失性存储器装置的奇偶校验数据的技术。在某些实例中,用户数据可以数据条带被编程到所述非易失性存储器装置的所述非易失性存储器中,且可计算所述非易失性存储器装置的有限容量高速缓冲存储器内的每一个别数据条带的奇偶校验信息。当编程额外数据条带时,所述个别奇偶校验信息可在所述非易失性存储器的交换块与所述有限容量高速缓冲存储器之间交换。

Description

移动NAND奇偶校验信息技术
技术领域
本发明涉及移动NAND奇偶校验信息技术。
背景技术
存储器装置通常提供为计算机或其它电子装置中的内部半导体集成电路。存在许多不同类型的存储器,包含易失性及非易失性存储器。
易失性存储器需要电力来维持其数据,且包含随机存取存储器(RAM)、动态随机存取存储器(DRAM)或同步动态随机存取存储器(SDRAM)以及其它存储器。
非易失性存储器可在未通电时保持经存储数据,且包含快闪存储器、只读存储器(ROM)、电可擦除可编程ROM(EEPROM)、静态RAM(SRAM)、可擦除可编程ROM(EPROM)、电阻可变存储器,例如相变随机存取存储器(PCRAM)、电阻随机存取存储器(RRAM)、磁阻随机存取存储器(MRAM)或3D XpointTM存储器以及其它存储器。
对于广泛范围的电子应用,快闪存储器用作非易失性存储器。快闪存储器装置通常包含一晶体管、浮动栅极或电荷俘获存储器单元的一或多个群组,其允许高存储器密度、高可靠性及低功耗。
两种常见类型的快闪存储器阵列架构包含NAND及NOR架构,以每一者的基本存储器单元配置以其布置的逻辑形式命名。存储器阵列的存储器单元通常布置于矩阵中。在实例中,阵列的行中的每一浮动栅极存储器单元的栅极耦合到存取线(例如,字线)。在NOR架构中,阵列的列中的每一存储器单元的漏极耦合到数据线(例如,位线)。在NAND架构中,阵列的串中的每一存储器单元的漏极一起串联(源极到漏极)耦合于源极线与位线之间。
NOR及NAND架构半导体存储器阵列通过解码器存取,所述解码器通过选择耦合到特定存储器单元的栅极的字线激活特定存储器单元。在NOR架构半导体存储器阵列中,一旦激活,所选择的存储器单元就将其数据值置放在位线上,从而取决于以其编程特定单元的状态导致不同电流流动。在NAND架构半导体存储器阵列中,高偏置电压施加于漏极侧选择栅极(SGD)线。耦合到每一群组的未经选择存储器单元的栅极的字线以指定通过电压(例如,Vpass)驱动以将每一群组的未经选择存储器单元作为传递晶体管进行操作(例如,以未受其经存储数据值约束的方式传递电流)。接着,电流通过每一串联耦合的群组从源极线流到位线,仅受每一群组的所选择的存储器单元约束,从而将所选择的存储器单元的当前经编码数据值置放在位线上。
NOR或NAND架构半导体存储器阵列中的每一快闪存储器单元可经个别地或共同地编程到一或数个经编程状态。举例来说,单电平单元(SLC)可表示两种经编程状态(例如,1或0)中的一者,从而表示一个数据位。
然而,快闪存储器单元还可表示两种以上经编程状态中的一者,从而允许制造更高密度的存储器而不增加存储器单元的数目,这是因为每一单元可表示一个以上二进制数字(例如,一个以上位)。此类单元可称为多状态存储器单元、多数字单元或多电平单元(MLC)。在某些实例中,MLC可指代每单元可存储两个数据位(例如,四种经编程状态的一者)的存储器单元,三电平单元(TLC)可指代每单元可存储三个数据位(例如,八种经编程状态中的一者)的存储器单元,且四电平单元(QLC)每单元可存储四个数据位。MLC在本文在其更广泛上下文中用于可指代每单元可存储一个以上数据位的任何存储器单元(即,其可表示两种以上经编程状态)。
传统存储器阵列是布置在半导体衬底的表面上的二维(2D)结构。为了增加给定区的存储器容量且为了降低成本,减小个别存储器单元的大小。然而,减小个别存储器单元的大小且因此2D存储器阵列的存储器密度存在技术限制。作为响应,三维(3D)存储器结构(例如3D NAND架构半导体存储器装置)经开发以进一步提高存储器密度且降低存储器成本。
此类3D NAND装置通常包含串联(例如,漏极到源极)耦合于接近源极的一或多个源极侧选择栅极(SGS)与接近位线的一或多个漏极线选择栅极(SGD)之间的存储单元串。在实例中,SGS或SGD可包含一或多个场效晶体管(FET)或金属氧化物半导体(MOS)结构装置等。在一些实例中,所述串将垂直延伸穿过含有相应字线的多个垂直间隔的层。半导体结构(例如,多晶硅结构)可邻近存储单元串延伸以形成所述串的存储单元的通道。在垂直串的实例中,多晶硅结构可呈垂直延伸柱的形式。在一些实例中,所述串可为“折叠式”,且因此相对于U形柱布置。在其它实例中,多个垂直结构可彼此上下堆叠以形成堆叠式存储单元串阵列。
存储器阵列或装置可组合在一起以形成存储器系统的存储容量,例如固态驱动器(SSD)、通用快闪存储(UFSTM)装置、多媒体卡(MMC)固态存储装置、嵌入式MMC装置(eMMCTM)等。SSD可尤其用作计算机的主存储装置,其关于例如性能、大小、重量、强度、操作温度范围及功耗具有优于具有移动部件的传统硬盘驱动器的优点。举例来说,SSD可具有与磁盘驱动(例如,电机械等)相关联的减小的搜寻时间、延时或其它延迟。SSD使用非易失性存储器单元,例如快闪存储器单元以避免内部电池供应要求,从而允许驱动器更通用且紧凑。
发明内容
一方面,本发明提供一种NAND存储器装置,其包括:随机存取存储器(RAM)缓冲器;NAND存储器单元阵列,其经组织成页、用户数据的数据条带及奇偶校验信息区中,其中所述奇偶校验信息区包含与用户信息的所述数据条带相关联的奇偶校验信息;及控制器,其经配置以:将第一用户数据编程到所述NAND存储器单元阵列的第一多个数据条带的第一部分;将与第二多个数据条带相关联的当前奇偶校验信息从所述RAM缓冲器复制到所述奇偶校验信息区;将所述第一多个数据条带的经存储奇偶校验信息从所述奇偶校验信息区复制到所述RAM缓冲器以替换与所述第二多个数据条带相关联的所述当前奇偶校验信息;及使用所述经存储奇偶校验信息及所述第一用户数据确定所述第一多个数据条带的新奇偶校验信息。
另一方面,本发明提供一种方法,其包括:用第一数据编程NAND存储器装置的第一数目个数据条带;将与所述第一数目个数据条带相关联的第一数目个奇偶校验信息从所述NAND存储器装置的NAND存储器加载到所述NAND存储器装置的随机存取存储器(RAM)缓冲器;使用所述第一数据刷新所述第一数目个奇偶校验信息;用第二数据编程所述NAND存储器的第二数目个数据条带;将所述第一数目个奇偶校验信息复制到所述NAND存储器的奇偶校验信息区;将与所述第二数目个数据条带相关联的第二数目个奇偶校验信息从所述奇偶校验信息区加载到所述RAM缓冲器以替换所述第一数目个奇偶校验信息;及使用所述第二数据刷新所述第二数目个奇偶校验信息。
在又另一方面中,本发明提供一种方法,其包括:将用户数据编程到跨移动电子装置的NAND存储器装置的NAND存储器的多个页的多个数据条带中;使用所述存储器装置的随机存取存储器(RAM)缓冲器更新与所述多个数据条带的第一多个数据条带相关联的第一奇偶校验信息;及在所述NAND存储器的交换块位置与所述RAM缓冲器之间交换与所述第一多个数据条带相关联的所述第一奇偶校验信息。
在又另一方面中,本发明提供一种包括机器可读媒体,其包括指令,所述指令当由机器执行时致使所述机器执行包括以下的操作:将用户数据编程到跨移动电子装置的NAND存储器装置的NAND存储器的多个页的多个数据条带中;使用所述存储器装置的随机存取存储器(RAM)缓冲器更新与所述多个数据条带的第一多个数据条带相关联的第一奇偶校验信息;及在所述NAND存储器的交换块位置与所述RAM缓冲器之间交换与所述第一多个数据条带相关联的所述第一奇偶校验信息。
附图说明
在不一定是按比例绘制的图式中,相似元件符号可描述不同图中的类似组件。具有不同字母后缀的相似元件符号可表示类似组件的不同例子。所述图式大体上通过实例而非通过限制说明本档案中论述的各种实施例。
图1说明包含存储器装置的环境的实例。
图2到3说明3D NAND架构半导体存储器阵列的实例的示意图。
图4说明存储器模块的实例框图。
图5大体上说明根据本标的物的实例的实例数据及奇偶校验信息置放方案。
图6A大体上说明实例交换块。
图6B说明根据本发明的一些实例的NAND的存储器控制器或其它组件中的易失性存储器中的奇偶校验页的逻辑置放。
图7展示当开放数据条带的聚合奇偶校验信息大小存储器装置上可用的高速缓冲存储器或RAM时使用非易失性交换块帮助维持多个数据条带的奇偶校验信息的实例方法700的流程图。
图8说明可在其之上执行本文论述的技术(例如,方法)中的任何一或多者的实例机器800的框图。
具体实施方式
在一些实例中揭示组织写入到移动装置的存储器装置(例如NAND存储器装置)的数据以便防止某些类型的故障的技术。举例来说,移动装置通常不包含在编程存储器装置时可专用于维持奇偶校验信息的大量RAM。因此,本发明通过与较小RAM缓冲器合作使用NAND存储器的交换区来解决维持数据条带奇偶校验信息的实例技术。此类技术平衡移动装置性能与最小RAM利用以提供稳健技术来在NAND存储器装置的数据编程期间发生错误的情况下允许数据恢复。
例如移动电子装置(例如,智能电话、平板计算机等)的电子装置、用于汽车应用中的电子装置(例如,汽车传感器、控制单元、驾驶员辅助系统、乘客安全或舒适系统等)及因特网连接的家用电器或装置(例如,物联网(IoT)装置等)尤其取决于电子装置类型、使用环境、性能期望等具有不同存储要求。
电子装置可分解成若干主组件:处理器(例如,中央处理单元(CPU)或其它主处理器);存储器(例如,一或多个易失性或非易失性随机存取存储器(RAM)存储器装置,例如动态RAM(DRAM)、静态RAM(SRAM)、移动或低电力双倍数据速率同步DRAM(DDR SDRAM)等);及存储装置(例如,非易失性存储器(NVM)装置,例如快闪存储器、只读存储器(ROM)、SSD、MMC或其它存储器卡结构或组合件等)。在某些实例中,电子装置可包含用户接口(例如,显示器、触摸屏、键盘、一或多个按钮等)、图形处理单元(GPU)、电力管理电路、基带处理器或一或多个收发器电路等。
图1说明包含经配置以经过通信接口111通信的主机105及存储器装置110的环境100的实例。主机装置105或存储器装置110可包含于多个产品150中,例如物联网(IoT)装置(例如,冰箱或其它家用电器、传感器、发动机或致动器、移动通信装置、汽车、无人机等),以支持产品150的处理、通信或控制。
存储器装置110包含存储器控制器115及存储器阵列120,其包含例如数个个别存储器裸片(例如,三维(3D)NAND裸片堆叠)。在3D架构半导体存储器技术中,垂直结构经堆叠,从而增加层、物理页的数目,且因此增加存储器装置(例如,存储装置)的密度。在实例中,存储器装置110可为离散存储器或主机装置105的存储装置组件。在其它实例中,存储器装置110可为集成电路的一部分(例如,芯片上系统(SOC)等),堆叠或以其它方式包含于主机装置105的一或多个其它组件内。
一或多个通信接口111可用于在存储器装置110与主机装置105的一或多个其它组件之间传送数据,例如串行高级技术附件(SATA)接口、外围组件互连高速(PCIe)接口、通用串行总线(USB)接口、通用快闪存储(UFS)接口、eMMCTM接口或一或多个其它连接器或接口。主机装置105可包含主机系统、电子装置、处理器、存储器卡阅读器或存储器装置110外部的一或多个其它电子装置。在一些实例中,主机105可为具有参考图8的机器800论述的组件的某一部分或全部的机器。
存储器控制器115可从主机105接收指令且可与存储器阵列通信,例如以将数据传送到(例如,写入或擦除)存储器阵列的存储器单元、平面、子块、块或页中的一或多者或从所述一或多者传送数据。存储器控制器115可尤其包含电路或固件,其包含一或多个组件或集成电路。举例来说,存储器控制器115可包含一或多个存储器控制单元、电路或经配置以控制跨存储器阵列120的存取及在主机105与存储器装置110之间提供转译层的组件。存储器控制器115可包含一或多个输入/输出(I/O)电路、线或接口以将数据传送到存储器阵列120或从存储器阵列120传送数据。存储器控制器115可包含存储器管理器125及阵列控制器135。
存储器管理器125可尤其包含电路或固件,例如数个组件或与各种存储器管理功能相关联的集成电路。出于本描述的目的,实例存储器操作及管理功能将在NAND存储器的上下文中描述。所属领域的技术人员应认识到,其它形式的非易失性存储器可具有类似存储器操作或管理功能。此类NAND管理功能包含耗损均衡(例如,垃圾收集或回收)、错误检测或校正、块退隐或一或多个其它存储器管理功能。存储器管理器125可将主机命令(例如,从主机接收到的命令)解析或格式化成装置命令(例如,与存储器阵列的操作相关联的命令等),或生成用于阵列控制器135或存储器装置110的一或多个其它组件的装置命令(例如,以实现各种存储器管理功能)。
存储器管理器125可包含一组管理表130,其经配置以维持与存储器装置110的一或多个组件相关联的各种信息(例如,与存储器阵列或耦合到存储器控制器115的一或多个存储器单元相关联的各种信息)。举例来说,管理表130可包含关于耦合到存储器控制器115的存储器单元的一或多个块的块寿命、块擦除计数、错误历史或一或多个错误计数(例如,写入操作错误计数、读取位错误计数、读取操作错误计数、擦除错误计数等)的信息。在某些实例中,如果错误计数中的一或多者的检测到的错误的数目高于阈值,那么位错误可称为不可校正位错误。管理表130可尤其维持可校正或不可校正位错误的计数。
阵列控制器135可尤其包含经配置以控制与将数据写入到耦合到存储器控制器115的存储器装置110的一或多个存储器单元、从所述一或多个存储器单元读取数据或擦除所述一或多个存储器单元相关联的存储器操作的电路或组件。存储器操作可为基于例如从主机105接收或由存储器管理器125内部生成的主机命令(例如,与耗损均衡、错误检测或校正等相关联)。
阵列控制器135可包含错误校正码(ECC)组件140,其可尤其包含ECC引擎或经配置以检测或校正将数据写入到耦合到存储器控制器115的存储器装置110的一或多个存储器单元或从所述一或多个存储器单元读取数据相关联的错误的其它电路。存储器控制器115可经配置以有源地检测与数据的各种操作或存储相关联的错误发生(例如,位错误、操作错误等)及从所述错误发生恢复同时维持在主机105与存储器装置110之间传送的数据的完整性或维持经存储数据的完整性(例如,使用冗余RAID存储装置等),且可移除(例如,退隐)失效的存储器资源(例如,存储器单元、存储器阵列、页、块等)以防止未来错误。
在一些实例中,存储器阵列可包括数个NAND裸片且,特定NAND裸片的存储器控制器115的一或多个功能可经实施于那个特定裸片上的裸片上控制器上。也可利用控制功能性的其它组织及描画,例如每一裸片、平面、超级块、块、页及类似物的控制器。
存储器阵列120可包含布置于例如数个装置、半导体裸片、平面、子块、块或页中的若干存储器单元。作为一个实例,48GB TLC NAND存储器装置可包含每页18,592个数据字节(16,384+2208个字节)、每块1536个页、每平面548个块及每装置4个或4个以上平面。作为另一实例,32GB MLC存储器装置(每单元存储两个数据位(即,4种可编程状态))可包含每页18,592个数据字节(16,384+2208个字节)、每块1024个页、每平面548个块及每装置4个平面,但使用对应TLC存储器装置的一半所需写入时间及两倍编程/擦除(P/E)循环。其它实例可包含其它数字或布置。在一些实例中,存储器装置或其一部分可选择地操作于SLC模式中或所期望MLC模式(例如TLC、QLC等)中。
在操作中,数据通常以页写入NAND存储器装置110或从所述NAND存储器装置110读取且以块擦除。然而,可根据需要对更大或更小群组的存储器单元执行一或多个存储器操作(例如,读取、写入、擦除等)。NAND存储器装置110的数据传送大小通常称为页,而主机的数据传送大小通常称为扇区。
尽管一页数据可包含若干用户数据字节(例如,包含数据的数个扇区的数据有效负载)及其对应元数据,但所述页的大小通常仅指代用于存储用户数据的字节的数目。作为实例,具有4KB的页大小的一页数据可包含4KB的用户数据(例如,假设512B的扇区大小,8个扇区)以及对应于用户数据(例如完整性数据(例如,错误检测或校正代码数据))、地址数据(例如,逻辑地址数据等)的元数据或与用户数据相关联的其它元数据的字节的数目(例如,32B、54B、224B等)。
不同类型的存储器单元或存储器阵列120可提供不同页大小,或可能需要与其相关联的不同元数据量。举例来说,不同存储器装置类型可具有不同位错误率,这可导致确保所述页的数据的完整性必要的不同元数据量(例如,具有更高位错误率的存储器装置可能需要比具有较低位错误率的存储器装置更多的错误校正代码数据字节)。作为实例,多电平单元(MLC)NAND快闪装置可具有比对应单电平单元(SLC)NAND快闪装置更高的位错误率。因而,MLC装置可能需要比对应SLC装置更多的用于错误数据的元数据字节。
在某些实例中,存储器阵列120可包含用于存储用户数据的非易失性存储器。非易失性存储器可包含交换块160,其用于在非易失性存储器被编程时处置与用户数据相关联的奇偶校验信息。奇偶校验数据可与存储器控制器的较小易失性缓冲器或NAND存储器装置的其它组件相关联地帮助恢复在非易失性存储器的编程期间丢失或损坏的用户数据。
图2说明3D NAND架构半导体存储器阵列200的实例示意图,3D NAND架构半导体存储器阵列200包含数个存储器单元串(例如,第一到第三A0存储器串205A0到207A0、第一到第三An存储器串205An到207An、第一到第三B0存储器串205B0到207B0、第一到第三Bn存储器串205Bn到207Bn等),其组织成块(例如,块A 201A、块B 201B等)及子块(例如,子块A0 201A0、子块An 201An、子块B0 201B0、子块Bn 201Bn等)。存储器阵列200表示可通常发现于存储器装置的块、装置或其它单元中的更大数目个类似结构的一部分。
每一存储器单元串包含在Z方向上(源极到漏极)堆叠于源极线(SRC)235或源极侧选择栅极(SGS)(例如,第一到第三A0 SGS 231A0到233A0、第一到第三An SGS 231An到233An、第一到第三B0 SGS 231B0到233B0、第一到第三Bn SGS 231Bn到233Bn等)与漏极侧选择栅极(SGD)(例如,第一到第三A0 SGD 226A0到228A0、第一到第三An SGD 226An到228An、第一到第三B0 SGD 226B0到228B0、第一到第三Bn SGD 226Bn到228Bn等)之间的电荷存储晶体管(例如,浮动栅极晶体管、电荷俘获结构等)的数个层。3D存储器阵列中的每一存储器单元串可沿X方向布置为数据线(例如,位线(BL)BL0到BL2 220到222)且沿Y方向布置为物理页。
在物理页内,每一层表示一行存储器单元,且每一存储器单元串表示一列。子块可包含一或多个物理页。块可包含数个子块(或物理页)(例如,128、256、384个等)。尽管本文说明为具有两个块,每一块具有两个子块,每一子块具有单个物理页,每一物理页具有三个存储器单元串且每一串具有8层存储器单元,但在其它实例中,存储器阵列200可包含更多或更少块、子块、物理页、存储器单元串、存储器单元或层。举例来说,每一存储器单元串可根据需要包含更多或更少层(例如,16、32、64、128等)以及电荷存储晶体管上方或下方的一或多个额外半导体材料层(例如,选择栅极、数据线等)。作为实例,48GB TLC NAND存储器装置每页可包含18,592个数据字节(16,384+2208个字节)、每块1536个页、每平面548个块及每装置4个或4个以上平面。
存储器阵列200中的每一存储器单元包含耦合到(例如,电或以其它方式操作地连接到)存取线(例如,字线(WL)WL00到WL70 210A到217A、WL01到WL71 210B到217B等)的控制栅极(CG),所述存取线根据需要共同地耦合跨特定层或层的一部分的控制栅极(CG)。3D存储器阵列中的特定层,且因此,串中的特定存储器单元可使用相应存取线存取或控制。选择栅极的群组可使用各种选择线存取。举例来说,第一到第三A0 SGD 226A0到228A0可使用A0SGD线SGDA0 225A0存取,第一到第三An SGD 226An到228An可使用An SGD线SGDAn 225An存取,第一到第三B0 SGD 226B0到228B0可使用B0 SGD线SGDB0 225B0存取,且第一到第三Bn SGD226Bn到228Bn可使用Bn SGD线SGDBn 225Bn存取。第一到第三A0 SGS231A0到233A0及第一到第三An SGS 231An到233An可使用栅极选择线SGS0 230A存取,且第一到第三B0 SGS 231B0到233B0及第一到第三Bn SGS 231Bn到233Bn可使用栅极选择线SGS1 230B存取。
在实例中,存储器阵列200可包含数个半导体材料(例如,多晶硅等)层,其经配置以耦合每一存储器单元的控制栅极(CG)或阵列的相应层的选择栅极(或CG或选择栅极的一部分)。阵列中的特定存储器单元串可使用位线(BL)与选择栅极的组合等存取、选择或控制,且特定串中的一或多个层处的特定存储器单元可使用一或多个存取线(例如,字线)存取、选择或控制。
图3说明的NAND架构半导体存储器阵列300的一部分的实例示意图,NAND架构半导体存储器阵列300包含布置于串(例如,第一到第三串305到307)及层(例如,说明为相应字线(WL)WL0到WL7 310到317、漏极侧选择栅极(SGD)线325、源极侧选择栅极(SGS)线330等)的二维阵列中的多个存储器单元302及感测放大器或装置360。举例来说,存储器阵列300可说明3D NAND架构半导体存储器装置的存储器单元的一个物理页的一部分的实例示意图,例如图2中说明。
每一存储器单元串使用相应源极侧选择栅极(SGS)(例如,第一到第三SGS 331到333)耦合到源极线(SRC),且使用相应漏极侧选择栅极(SGD)(例如,第一到第三SGD 326到328)耦合到相应数据线(例如,第一到第三位线(BL)BL0到BL2 320到322)。尽管在图3的实例中说明为具有8个层(例如,使用字线(WL)WL0到WL7 310到317)及三个数据线(BL0到BL2326到328),但其它实例可根据需要包含具有更多或更少层或数据线的存储器单元串。
在NAND架构半导体存储器阵列中,例如实例存储器阵列300,所选择的存储器单元302的状态可通过感测与含有所选择的存储器单元的特定数据线相关联的电流或电压变化来存取。存储器阵列300可使用一或多个驱动器存取(例如,通过控制电路、一或多个处理器、数字逻辑等)。在实例中,一或多个驱动器可通过取决于期望对特定存储器单元或一组存储器单元执行的操作类型将特定电势驱动到一或多个数据线(例如,位线BL0到BL2)、存取线(例如,字线WL0到WL7)或选择栅极激活所述特定存储器单元或所述组存储器单元。
为了将数据编程或写入到存储器单元,编程电压(Vpgm)(例如,一或多个编程脉冲等)可施加于所选择的字线(例如,WL4),且因此,施加于耦合到所选择的字线的每一存储器单元的控制栅极(例如,耦合到WL4的存储器单元的第一到第三控制栅极(CG)341到343)。编程脉冲可例如以15V或接近15V开始,且在某些实例中,可在每一编程脉冲应用期间增加量级。在编程电压施加于所选择的字线时,电势(例如接地电势(例如,Vss))可施加于数据线(例如,位线)及作为编程目标的存储器单元的衬底(且因此,施加于源极与漏极之间的通道),从而导致电荷从通道传送(例如,直接注入或福勒-诺得海姆(Fowler-Nordheim)(FN)穿隧等)到目标存储器单元的浮动栅极。
相比之下,通过电压(Vpass)可施加于具有不作为编程目标的存储器单元的一或多个字线,或抑制电压(例如,Vcc)可施加于具有不作为编程目标的存储器单元的数据线(例如,位线)例如以抑制电荷从通道传送到此类非目标存储器单元的浮动栅极。通过电压可取决于例如经施加通过电压到作为编程目标的字线的接近性变化。抑制电压可包含相对于接地电势(例如,Vss)的供应电压(Vcc),例如来自外部源或供应器(例如,电池、AC到DC转换器等)的电压。
作为实例,如果编程电压(例如,15V或更多)施加于特定字线,例如WL4,那么10V的通过电压可施加于一或多个其它字线,例如WL3、WL5等,以抑制非目标存储器单元的编程或保持存储于不作为编程目标的此类存储器单元上的值。随着经施加编程电压与非目标存储器单元之间的距离增加,抑制编程非目标存储器单元所需的通过电压可减小。举例来说,在15V的编程电压施加于WL4的情况下,10V的通过电压可施加于WL3及WL5,8V的通过电压可施加于WL2及WL6,7V的通过电压可施加于WL1及WL7等。在其它实例中,通过电压或字线的数目等可更高或更低或更多或更少。
耦合到数据线(例如,第一、第二或第三位线(BL0到BL2)320到322)中的一或多者的感测放大器360可通过感测特定数据线上的电压或电流检测相应数据线中的每一存储器单元的状态。
在施加一或多个编程脉冲(例如,Vpgm)之间,可执行验证操作以确定所选择的存储器单元是否已达到其预期经编程状态。如果所选择的存储器单元已达到其预期经编程状态,那么可抑制其进一步编程。如果所选择的存储器单元尚未达到其预期经编程状态,那么可施加额外编程脉冲。如果所选择的存储器单元在特定数目个编程脉冲(例如,最大数目)之后尚未达到其预期经编程状态,那么所选择的存储器单元或与此所选择的存储器单元相关联的串、块或页可标记为有缺陷的。
为了擦除存储器单元或一群组存储器单元(例如,通常以块或子块执行擦除),擦除电压(Vers)(例如,通常是Vpgm)可施加于作为擦除目标的存储器单元的衬底(且因此施加于源极与漏极之间的通道)(例如,使用一或多个位线、选择栅极等),同时目标存储器单元的字线保持在一电势下,例如接地电势(例如,Vss),从而导致电荷从目标存储器单元的浮动栅极传送(例如,直接注入或福勒-诺得海姆(Fowler-Nordheim)(FN)穿隧等)到通道。
图4说明存储器装置400的实例框图,存储器装置400包含具有多个存储器单元404的存储器阵列402及提供与存储器阵列402的通信或对存储器阵列402执行一或多个存储器操作的一或多个电路或组件。存储器装置400可包含行解码器412、列解码器414、感测放大器420、页缓冲器422、选择器424、输入/输出(I/O)电路426及存储器控制单元430。
存储器阵列402的存储器单元404可布置于块(例如第一块402A及第二块402B)中。每一块可包含子块。举例来说,第一块402A可包含第一子块402A0及第二子块402An,且第二块402B可包含第一子块402B0及第二子块402Bn。每一子块可包含数个物理页,每一页包含数个存储器单元404。尽管本文说明为具有两个块,每一块具有两个子块且每一子块具有数个存储器单元404,但在其它实例中,存储器阵列402可包含更多或更少块、子块、存储器单元等。在其它实例中,存储器单元404可布置于数个行、列、页、子块、块等中,且使用例如存取线406、第一数据线410或一或多个选择栅极、源极线等存取。
存储器控制单元430可根据在控制线432上接收的一或多个信号或指令(包含例如指示所期望操作(例如,写入、读取、擦除等)的一或多个时钟信号或控制信号)或在一或多个地址线416上接收的地址信号(A0到AX)控制存储器装置400的存储器操作。存储器装置400外部的一或多个装置可控制控制线432上的控制信号的值或地址线416上的地址信号。存储器装置400外部的装置的实例可包含(但不限于)主机、存储器控制器、处理器或图4中未说明的一或多个电路或组件。
存储器装置400可使用存取线406及第一数据线410将数据传送(例如,写入或擦除)到存储器单元404中的一或多者或从所述一或多者传送(例如,读取)数据。行解码器412及列解码器414可接收及解码来自地址线416的地址信号(A0到AX),可确定将存取存储器单元404中的哪些者,且可将信号提供到存取线406中的一或多者(例如,多个字线(WL0到WLm)中的一或多者)或第一数据线410(例如,多个位线(BL0到BLn)的一或多者),例如上文描述。
存储器装置400可包含感测电路,例如感测放大器420,其经配置以使用第一数据线410确定存储器单元404上的数据值(例如,读取)或确定将写入到存储器单元404的数据值。举例来说,在所选择的存储器单元串404中,感测放大器420中的一或多者可响应于读取电流在存储器阵列402中流动通过所选择的串流到数据线410读取所选择的存储器单元404中的逻辑电平。
存储器装置400外部的一或多个装置可使用I/O线(DQ0到DQN)408、地址线416(A0到AX)或控制线432与存储器装置400通信。输入/输出(I/O)电路426可使用I/O线408根据例如控制线432及地址线416将数据值传入或传出存储器装置400,例如传入或传出页缓冲器422或存储器阵列402。页缓冲器422可在从存储器装置400外部的一或多个装置接收的数据被编程到存储器阵列402的相关部分中之前存储所述数据,或可在从存储器阵列402读取的数据被传输到存储器装置400外部的一或多个装置之前存储所述数据。
列解码器414可接收地址信号(A0到AX)及将所述地址信号解码成一或多个列选择信号(CSEL1到CSELn)。选择器424(例如,选择电路)可接收列选择信号(CSEL1到CSELn)及选择页缓冲器422中表示将从存储器单元404读取或将编程到存储器单元404中的数据值的数据。所选择的数据可使用第二数据线418在页缓冲器422与I/O电路426之间传送。
存储器控制单元430可从外部源或供应器(例如,内部或外部电池、AC到DC转换器等)接收正及负供应信号,例如供应电压(Vcc)434及负供应(Vss)436(例如,接地电势)。在某些实例中,存储器控制单元430可包含内部提供正或负供应信号的调节器428。
如本文使用,页线是识别在一群组平面中的每一平面中的相同位置处包括页的一群组页的逻辑构造。因此,例如,平面0到3中的第一页通过页线0识别。页由属于相同字线(WL)的存储器单元组成。块是一群组页-即,共享相同群组的字线的所有NAND串(NAND串是串联连接的一群组NAND单元)。在一些NAND配置中,块是最小可擦除单元。页是用于读取及写入的最小可寻址单元。平面是单个NAND裸片上的一群组物理块,其经配置用于操作使得可并行擦除来自多个平面中的每一者的物理块(即,在给定时间间隔期间,可基本上同时或彼此重叠地擦除物理块),但在任何一个时间仅可擦除任何个别平面中的单个物理块。每NAND裸片可存在多个平面。
ECC及其它技术已大幅提高NAND装置的可靠性。然而,存在其中期望防止数据丢失的额外保护的某些情况。数据条带可包含用户数据及奇偶校验数据(例如,为用户数据与奇偶校验数据的组合)。数据条带的奇偶校验数据可包含错误保护数据,其可用于使存储于存储器中的用户数据免受可在存储器的操作期间发生的缺陷及/或错误。举例来说,数据条带的奇偶校验信息可使存储于存储器中的用户数据免受可在存储器的操作期间发生的缺陷及/或错误,且可因此提供防止存储器故障的保护。奇偶校验信息可防止的缺陷及/或错误包含可发生于存储器的不同组件之间的电短路及/或可发生在存储器群组与相关联于其的相应驱动器之间的接口处的短路。
在一些实例中揭示允许十分有限量的随机存取存储器(RAM)中的奇偶校验信息存储及操纵的技术,如可发现例如于移动装置中。在一些实例中,可计算及存储奇偶校验信息直到编程完成。在一些实例中,由于缺乏RAM,奇偶校验信息在存储器装置的RAM与存储器装置的非易失性存储器之间交换直到编程完成。此奇偶校验信息可用于从数据条带的一部分的损坏恢复,如上文论述。
图5大体上说明根据本标的物的实例的存储器的数据块内的实例数据及奇偶校验信息置放方案。置放方案展示提供每字线(WL)12个页及每逻辑单元(LUN)4个平面的非易失性存储器装置500。实例是基于在共同数据条带的数据之间具有3个WL分离。WL分离准则以及每WL布局12个页陈述数据存储于至少36个数据条带上。假设至少128个页可用于每一数据条带,(127个页用于用户数据,且1个页用于条带的奇偶校验),如果使用2个LUN,那么16个不同WL可指派到每一数据条带。在某些实例中,一旦关闭了所有数据条带的编程,那么奇偶校验信息可存储于数据块的位置550内。
如果不允许不按顺序编程页,那么数据条带1(D1)不能封闭直到与WL46相关联的第540个页被编程。因此,在编程期间,可在与数据块分离的存储器块中存储及更新36个数据条带中的每一者的数据奇偶校验信息。在编程数据块时,常规方案使用RAM空间存储及更新数据条带奇偶校验。在某些实例中,例如对于移动电子装置,仅有限数目个RAM空间的页在编程时经分配用于奇偶校验信息操纵,且可不经设定大小以保持所有编程中奇偶校验信息。
在本标的物的某些实例中,非易失性存储器的专用交换块可用作奇偶校验信息区或占位符直到数据条带可封闭。交换块可分配与数据块分离的存储器的单独块。
图6A大体上说明实例交换块660。图6B说明根据本发明的一些实例的NAND的存储器控制器或其它组件的易失性存储器或RAM缓冲器651的奇偶校验页的逻辑按时间置放。如果不允许不按顺序编程存储器的数据块内的用户数据页且数据置放方案不允许将用户数据页存储于紧接的连续页中,那么数据条带奇偶校验信息可在RAM缓冲器651与交换块660之间重复交换。
在某些实例中,无论何时存储器控制器将数据写入到属于开放数据条带的新页,至少那个数据条带的奇偶校验信息都可从奇偶校验交换块660读取到RAM缓冲器651,且可确定或计算新奇偶校验信息。在一些实例中,逻辑函数(例如XOR)可用于生成用于开放数据条带的新奇偶校验信息。如果新数据写入到与RAM缓冲器651中的奇偶校验信息不相关联的第二数据条带,那么RAM缓冲器中的奇偶校验信息可复制到奇偶校验交换块660,且与至少第二数据条带相关联的奇偶校验信息可从奇偶校验交换块660读取到RAM缓冲器651,以此类推,直到所有数据条带都封闭。在某些实例中,随着数据条带封闭,可丢弃与封闭的数据条带相关联的奇偶校验交换块660中的奇偶校验信息。在一些实例中,当所有数据条带都封闭时丢弃交换块信息。
图5中所说明的存储器装置的非易失性存储器中的实例数据置放仅是数据置放的一个实例,且应理解,其它数据置放方案是可能的而不背离本标的物的范围。在某些实例中,非易失性存储器装置500可从主机装置接收第一数据项。此第一数据项可分成数个部分。出于本描述的目的,将利用其中接收到的数据项被分成127个部分的实例。应理解,接收到的数据项可分成更少数目个部分或更大数目个部分而不背离本标的物的范围。第一数据项的第一部分(其也可称为第一数据条带的第一部分(D11))可在NAND中的第一数据条带(D1)内的第一位置处编程,第二部分(D12)在第二位置处编程,第三部分(D13)在第二位置处编程,以此类推。用户数据的每一部分被注释为DNM,其中N是标示NAND存储器内的数据项或数据条带的正整数值,且M是标示数据项或数据条带部分的正整数值。每一数据条带部分的位置可基于特定数据置放方案来选择。
图5的实例置放方案置放第一数据项或数据条带(D1)的部分以及其它数据项的部分,使得第一条带的每一循序部分存储于处于关于彼此不同的平面上但可处于相同WL上的存储器单元中。如果第一数据条带的部分在WLi上,其中i是整数值,WLi的WL分离内的字线都与第一数据条带的任何其它部分不相关联。关于图5的实例,第一数据条带(D1)的多个部分在WL4上。第一数据条带(D1)的其它部分都不定位在紧邻WL4的两个WL(WL2、WL3、WL5、WL6)上。因此,数据置放方案具有3个WL分离,其可对一些数据丢失场景(例如WL短路)是有帮助的。在某些实例中,非易失性存储器装置500可包含奇偶校验位置550,其用于一旦编程完成就存储每一数据条带的奇偶校验信息。在本实例中,奇偶校验位置550可占据对应于经分配以保存用户数据的36个数据条带的36个页。取决于每一数据条带的部分的数目、WL分离及非易失性存储器系统的配置,数据条带的数目可更大或更小,且交换块660可使用更多或更少页以在非易失性存储器系统被编程时存储数据条带奇偶校验信息。
奇偶校验页可从每一数据条带的数据条带部分计算。举例来说,对于仅具有四个部分的数据条带,奇偶校验页可为第一部分、第二部分、第三部分及第四部分中的数据的XOR。举例来说:
其中是XOR运算子。
可计算奇偶校验信息,且其可临时存储于易失性存储器(例如,RAM)中且接着周期性地交换到分离NAND存储器块、奇偶校验交换块660中的非易失性存储装置中,如图6A中展示。在某些实例中,交换块660位置可为SLC、MLC、TLC或QLC块。在某些实例中,SLC块可提供更快读取及写入操作且也可有益的,这是因为SLC块的耐受能力可显著高于其它形式的块(例如,MLC、TLC、QLC)。在某些实例中,交换块660不会导致垃圾收集,这是因为一旦数据条带封闭,交换块660中的奇偶校验信息就是无效的。
图6B说明根据本发明的一些实例的NAND的存储器控制器或其它组件中的易失性存储器的奇偶校验页的逻辑置放。图5中展示的奇偶校验页是一旦所有数据条带封闭就计算图5中的数据条带(DN)的奇偶校验页。随着数据条带编程到图5中的NAND,可计算奇偶校验信息且其可存储于易失性存储器(例如,随机存取存储器(RAM)651)中。在第一时间T0,数据条带D1到D8的部分可写入到LUN1的WL1及平面0到3。同时,可计算这些数据条带的奇偶校验信息:602到620,且其存储于易失性存储装置(例如RAM缓冲器661)中,如图6B中展示。
在时间T1,数据条带D9到D16的部分可写入到WL1,且可在RAM 651中计算对应奇偶校验(P9到P16),如图6B中展示。在一些实例中,奇偶校验信息602到620可用奇偶校验信息626到644覆写。在一些实例中,奇偶校验信息602到620可在其被覆写之前写入到NAND交换块660,例如写入到可靠SLC块。类似地,在时间T2,可计算数据条带D17到D25的奇偶校验信息,且用奇偶校验交换块660中的现存值交换所述奇偶校验信息。存储于存储器装置的RAM661或交换块660中的奇偶校验信息可用于覆盖在存储器装置的非易失性存储器的编程操作期间丢失或损坏的用户数据。
图7展示当开放数据条带的聚合奇偶校验信息大于存储器装置上可用的高速缓冲存储器或RAM时使用非易失性交换块帮助维持多个数据条带的奇偶校验信息的实例方法700的流程图。在702,非易失性存储器装置的存储器控制器可将用户数据存储或编程到非易失性存储器装置的NAND存储器中。在704,随着用户数据被存储于NAND存储器内的数据条带中,存储器装置或存储器装置的存储器控制器的高速缓冲存储器或RAM存储器可用于更新或计算用户数据的第一奇偶校验信息。当准备好将新用户数据存储或编程到不同数据条带中时,存储器装置的高速缓冲存储器中的第一奇偶校验信息可与NAND存储器的交换块中的第二奇偶校验信息交换。随着新用户数据被编程到与第一用户数据不同的数据条带中,交换奇偶校验信息允许将第一奇偶校验信息保存于NAND存储器中且第二奇偶校验信息可用于更新。使用奇偶校验交换块可允许具有有限RAM的存储器装置独立于存储器装置的数据置放方案的字线分离且独立于开放数据条带的数目提供多个数据条带的奇偶校验信息。
图8说明可在其之上执行本文论述的技术(例如,方法)中的任何一或多者的实例机器800的框图。在替代实施例中,机器800可操作作为独立装置或可连接(例如,联网)到其它机器。在联网部署中,机器800可在服务器-客户端网络环境中以服务器机器、客户端机器或两者的身份操作。在实例中,机器800可用作对等(P2P)(或其它分布式)网络环境中的对等机器。机器800可为个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、移动电话、网络设备、IoT装置、汽车系统或能够执行指定由那个机器将采取的动作的指令(循序或以其它方式)的任何机器。此外,虽然仅说明单个机器,但还应将术语“机器”认为是包含个别地或共同地执行一组(或多组)指令以执行本文论述的方法中的任何一或多者(例如云计算、软件即服务(SaaS)、其它计算机集群配置)的机器的任何集合。
如本文描述,实例可包含逻辑、组件、装置、封装或机构或可通过逻辑、组件、装置、封装或机构操作。电路是实施于包含硬件(例如,简单电路、门、逻辑等)的有形实体中的电路的集合(例如,一组电路)。电路成员资格随着时间推移及潜在硬件可变性可为灵活的。电路包含可在操作时单独或以组合执行特定任务的成员。在实例中,电路的硬件可不变地经设计以实施特定操作(例如,硬接线)。在实例中,电路的硬件可包含可变地连接的物理组件(例如,执行单元、晶体管、简单电路等),其包含物理地经修改(例如,以磁方式、以电方式、不变质量颗粒的可移动置放等)以编码特定操作的指令的计算机可读媒体。在连接物理组件时,硬件组成的基本电性质例如从绝缘体变为导体,或反之亦然。指令使参与硬件(例如,执行单元或加载机构)能够经由可变连接在硬件中创建电路的成员以在处于操作中时实施特定任务的部分。因此,计算机可读媒体在装置操作时通信地耦合到电路的其它组件。在实例中,物理组件中的任何者可用于一个以上电路的一个以上成员中。举例来说,在操作下,执行单元在一个时间点可用于第一电路系统的第一电路中且在不同时间由第一电路系统中的第二电路再次使用或由第二电路系统中的第三电路再次使用。
机器(例如,计算机系统)800(例如,主机装置105、存储器装置110等)可包含硬件处理器802(例如,中央处理单元(CPU)、图形处理单元(GPU)、硬件处理核心或其任何组合,例如存储器控制器115等)、主存储器804及静态存储器806,其一些或全部者可经由互链(例如,总线)808与彼此通信。机器800可进一步包含显示器单元810、字母数字输入装置812(例如,键盘)及用户接口(UI)导航装置814(例如,鼠标)。在实例中,显示器单元810、输入装置812及UI导航装置814可为触摸屏显示器。机器800可另外包含存储装置(例如,驱动单元)、信号生成装置818(例如,扬声器)、网络接口装置820及一或多个传感器816,例如全球定位系统(GPS)传感器、指南针、加速度计或其它传感器。机器800可包含输出控制器828,例如与一或多个外围装置(例如,打印机、读卡器等)通信或控制所述一或多个外围装置的串行(例如,通用串行总线(USB))、并联、或其它有线或无线(例如,红外(IR)、近场通信(NFC)等)连接。
存储装置可包含机器可读媒体822,其上存储体现本文描述的技术或功能中的任何一或多者或由所述任何一或多者利用的一或多组数据结构或指令824(例如,软件)。指令824在其由机器800执行期间也可完全或至少部分驻存在主存储器804内、静态存储器806内或硬件处理器802内。在实例中,硬件处理器802、主存储器804、静态存储器806或存储装置中的一者或任何组合可构成机器可读媒体822。
虽然机器可读媒体822被说明为单个媒体,但术语“机器可读媒体”可包含经配置以存储一或多个指令824的单个媒体或多个媒体(例如,集中式或分布式数据库或相关联的高速缓冲存储器及服务器)。
术语“机器可读媒体”可包含能够存储、编码或载送用于由机器800执行且致使机器800执行本发明的技术中的任何一或多者的指令或能够存储、编码或载送由此类指令使用或与此类指令相关联的数据结构的任何媒体。非限制性机器可读媒体实例可包含固态存储器及光学及磁性媒体。在实例中,大规模机器可读媒体包括具有含不变(例如,静止)质量的多个颗粒的机器可读媒体。因此,大规模机器可读媒体不是暂时传播信号。大规模机器可读媒体的特定实例可包含:非易失性存储器,例如半导体存储器装置(例如,电可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM))及快闪存储器装置;磁盘,例如内部硬盘及可卸除硬盘;磁光盘;及CD-ROM及DVD-ROM盘。
指令824(例如,软件、程序、操作系统(OS)等)或其它数据存储在存储装置821上,可由存储器804存取以由处理器802使用。存储器804(例如,DRAM)通常较快,但是易失性的,且因此是与适于长期存储(包含在“关闭”状况中)的存储装置821(例如,SDD)不同类型的存储装置。由用户或机器800使用的指令824或数据通常加载于存储器804中以由处理器802使用。当存储器804满时,来自存储装置821的虚拟空间可经分配以增补存储器804;然而,因为存储装置821通常比存储器804慢,且写入速度通常比读取速度慢至少两倍,所以虚拟存储器的使用可由于存储装置延时极大降低用户体验(与存储器804(例如DRAM)相比)。此外,将存储装置821用于虚拟存储器可极大降低存储装置821的可用寿命。
与虚拟存储器相比,虚拟存储器压缩(例如,内核特征“ZRAM”)使用存储器的部分作为经压缩块存储装置以避免分页到存储装置821。分页发生于经压缩块中直到将此类数据写入到存储装置821是必要的。虚拟存储器压缩增加存储器804的可用大小,同时降低存储装置821上的耗损。
经优化用于移动电子装置的存储装置或移动存储装置在传统上包含MMC固态存储装置(例如,微型安全数字(microSDTM)卡等)。MMC装置包含与主机装置的数个并行接口(例如,8位并行接口),且通常可从主机装置移除且与主机装置分离的组件。相比之下,eMMCTM装置附接到电路板且认为是主机装置的组件,具有与基于串行ATATM(串行AT(高级技术)附件或SATA)的SSD装置匹敌的读取速度。然而,对移动装置性能的要求继续增加,例如以完全实现虚拟或增强现实装置、利用提高的网络速度等。响应于此要求,存储装置已从并行通信接口转向串行通信接口。通用快闪存储(UFS)装置(包含控制器及固件)使用低电压差分信令(LVDS)串行接口用专用读取/写入路径与主机装置通信,从而进一步推进提高读取/写入速度。
指令824可进一步经过通信网络826使用传输媒体经由网络接口装置820利用数个传送协议(例如,帧中继、因特网协议(IP)、传输控制协议(TCP)、用户数据报协议(UDP)、超文本传送协议(HTTP)等)中的任一者发射或接收。实例通信网络可包含局域网(LAN)、广域网(WAN)、包数据网络(例如,因特网)、移动电话网络(例如,蜂窝网络)、普通老式电话(POTS)网络及无线数据网络(例如,被称为的电气及电子工程师协会(IEEE)802.11系列标准、被称为/>的IEEE 802.16系列标准)、IEEE 802.15.4系列标准、对等(P2P)网络以及其它网络。在实例中,网络接口装置820可包含连接到通信网络826的一或多个物理插座(例如,以太网、同轴或电话插座)或一或多个天线。在实例中,网络接口装置820可包含使用单输入多输出(SIMO)、多输入多输出(MIMO)或多输入单输出(MISO)技术无线地通信的多个天线。术语“通信媒体”应被认为包含能够存储、编码或载送用于由机器800执行的指令的任何无形媒体,且包含数字或模拟通信信号或促进此软件的通信的其它无形媒体。
上文详细描述包含对形成详细描述的一部分的附图的参考。图式通过说明展示其中可实践本发明的特定实施例。这些实施例在本文还称为“实例”。此类实例可包含除了展示或描述的元件之外的元件。然而,本发明者还预期其中仅提供展示或描述的那些元件的实例。此外,本发明者还预期使用关于特定实例(或其一或多个方面)或关于本文展示或描述的其它实例(或其一或多个方面)展示或描述的那些元件的任何组合或排列的实例(或其一或多个方面)。
在此档案中,使用术语“一(a/an)”,如在专利档案中常见,独立于“至少一者”或“一或多者”的任何其它例子或用法而包含一个或一个以上。在此档案中,术语“或”用于指代非排他或使得“A或B”可包含“A而非B”、“B而非A”及“A及B”,除非另外指示。在所附权利要求书中,术语“包含”及“其中(in which)”用作相应术语“包括”及“其中(wherein)”的纯英语等效物。而且,在所附权利要求书中,术语“包含”及“包括”是开放式的,即,包含除了权利要求中的此术语之后所列的元件之外的元件的系统、装置、物品或过程仍被认为落在那个权利要求的范围内。此外,在所附权利要求书中,术语“第一”、“第二”及“第三”等仅用作标记,且不希望将数值要求强加于其对象上。
在各种实例中,本文描述的组件、控制器、处理器、单元、引擎或表可尤其包含物理电路或存储于物理装置上的固件。如本文使用,“处理器”意指任何类型的计算电路,例如(但不限于)微处理器、微控制器、图形处理器、数字信号处理器(DSP)或任何其它类型的处理器或处理电路,包含处理器或多核心装置群组。
术语“晶片”及“衬底”在本文用于大体上指代集成电路形成于其上的任何结构,且还指代集成电路制造的各个阶段期间的此类结构。因此不应以限制意义理解以下详细描述,且各种实施例的范围仅由所附权利要求以及此类权利要求所授予的等效物的完整范围定义。
根据本发明的及本文描述的各种实施例包含利用垂直结构的存储器单元(例如,NAND存储器单元串)的存储器。如本文使用,将相对于存储器单元形成于其上的衬底的表面采用方向形容词(即,垂直结构将认为是远离衬底表面延伸,垂直结构的底部端将认为是最靠近衬底表面的端,且垂直结构的顶部端将认为是距衬底表面最远的端)。
如本文使用,操作存储器单元包含从存储器单元读取、写入到存储器单元或擦除存储器单元。将存储器单元置于预期状态中的操作在本文称为“编程”且可包含写入到存储器单元或从存储器单元擦除两者(例如,存储器单元可编程到经擦除状态)。
根据本发明的一或多个实施例,定位在存储器装置内部或外部的存储器控制器(例如,处理器、控制器、固件等)能够确定(例如,选择、设置、调整、计算、改变、清除、传递、调适、导出、定义、利用、修改、应用等)一定量的耗损循环或耗损状态(例如,记录耗损循环、当存储器装置的操作发生时对存储器装置的操作计数、跟踪其起始的存储器装置的操作、评估对应于耗损状态的存储器装置特性等)。
根据本发明的一或多个实施例,存储器存取装置可经配置以随着每一存储器操作将耗损循环信息提供到存储器装置。存储器装置控制电路(例如,控制逻辑)可经编程以补偿对应于耗损循环信息的存储器装置性能变化。存储器装置可接收耗损循环信息及响应于所述耗损循环信息确定一或多个操作参数(例如,值、特性)。
本文描述的方法实例可为至少部分机器或计算机实施的。一些实例可包含计算机可读媒体或机器可读媒体,其经编码有可操作以配置电子装置以执行上文实例中所描述的方法的指令。此类方法的实施方案可包含代码,例如微代码、汇编语言代码、高级语言代码或类似物。此代码可包含用于执行各种方法的计算机可读指令。代码可形成计算机程序产品的部分。此外,代码可有形地存储在一或多个易失性或非易失性有形计算机可读媒体上,例如在执行期间或其它时间。这些有形计算机可读媒体的实例可包含(但不限于)硬盘、可卸除磁盘、可卸除光盘(例如,光盘及数字视频盘)、磁带、存储器卡或棒、随机存取存储器(RAM)、只读存储器(ROM)、固态驱动器(SSD)、通用快闪存储(UFS)装置、嵌入式MMC(eMMC)装置及类似物。
上文描述希望是说明性的而非限制性的。举例来说,上述实例(或其一或多个方面)可与彼此组合使用。其它实施例可例如由所属领域的一般技术人员在审阅上文描述之后使用。所述描述是在理解其将不用于解译或限制权利要求书的范围或意义的情况下提交的。而且,在上文详细描述中,各种特征可被分组在一起以简化本发明。此不应被解译为希望未主张的所揭示特征对任何权利要求是必要的。确切来说,发明标的物可在于小于所揭示的特定实施例的所有特征中。因此,所附权利要求书特此并入到详细描述中,其中每一权利要求独立作为单独实施例,且预期此类实施例可与彼此以各种组合或排列组合。本发明的范围应参考所附权利要求书以及此类权利要求所授予的等效物的完整范围确定。
实例
实例1是一种NAND存储器装置,其包括:随机存取存储器(RAM)缓冲器;NAND存储器单元阵列,其经组织成页、用户数据的数据条带及奇偶校验信息区,其中所述奇偶校验信息区包含与用户信息的所述数据条带相关联的奇偶校验信息;及控制器,其经配置以:将第一用户数据编程到所述NAND存储器单元阵列的第一多个数据条带的第一部分;将与第二多个数据条带相关联的当前奇偶校验信息从所述RAM缓冲器复制到所述奇偶校验信息区;将所述第一多个数据条带的经存储奇偶校验信息从所述奇偶校验信息区复制到所述RAM缓冲器以替换与所述第二多个数据条带相关联的所述当前奇偶校验信息;及使用所述经存储奇偶校验信息及所述第一用户数据确定所述第一多个数据条带的新奇偶校验信息。
在实例2中,根据实例1所述的标的物,其中所述多个第一数据条带中的每一数据条带横跨所述NAND存储器单元阵列的多个页。
在实例3中,根据实例2所述的标的物,其中每一数据条带的所述NAND存储器的所述多个页中的每一页与所述NAND存储器装置的字线相关联;且其中在所述NAND存储器阵列的平面内,第一数据条带的页由所述第一数据条带中的每一其它页通过至少多个字线分离。
在实例4中,根据实例1到3中任一实例所述的标的物,其中所述奇偶校验信息区的大小大于所述RAM缓冲器。
在实例5中,根据实例1到4中任一实例所述的标的物,其中所述RAM缓冲器包含静态RAM(SRAM)。
实例6是一种方法,其包括:用第一数据编程NAND存储器装置的第一数目个数据条带;将与所述第一数目个数据条带相关联的第一数目个奇偶校验信息从所述NAND存储器装置的NAND存储器加载到所述NAND存储器装置的随机存取存储器(RAM)缓冲器;使用所述第一数据刷新所述第一数目个奇偶校验信息;用第二数据编程所述NAND存储器的第二数目个数据条带;将所述第一数目个奇偶校验信息复制到所述NAND存储器的奇偶校验信息区;将与所述第二数目个数据条带相关联的第二数目个奇偶校验信息从所述奇偶校验信息区加载到所述RAM缓冲器以替换所述第一数目个奇偶校验信息;及使用所述第二数据刷新所述第二数目个奇偶校验信息。
在实例7中,根据实例6所述的标的物,所述第一数目个数据条带中的每一数据条带横跨所述NAND存储器装置的NAND存储器单元阵列的多个页。
在实例8中,根据实例7所述的标的物,其中每一数据条带的所述多个页中的每一页与所述NAND存储器装置的字线相关联;且其中在所述NAND存储器阵列的平面内,第一数据条带的页由所述第一数据条带中的每一其它页通过多个字线分离。
在实例9中,根据实例7到8中任一实例所述的标的物,所述第二数目个数据条带中的每一数据条带横跨所述NAND存储器单元阵列的所述多个页。
在实例10中,根据实例6到9中任一实例所述的标的物,其中所述RAM缓冲器的大小小于所述第一数目个奇偶校验信息与所述第二数目个奇偶校验信息的经组合大小。
在实例11中,根据实例10所述的标的物,其中所述RAM缓冲器的所述大小小于所述NAND存储器的奇偶校验信息区。
在实例12中,根据实例6到11中任一实例所述的标的物,其中所述将与所述第一数目个数据条带相关联的第一数目个奇偶校验信息从所述NAND存储器装置的NAND存储器加载到所述NAND存储器装置的随机存取存储器(RAM)缓冲器包含将与所述第一数目个数据条带相关联的第一数目个奇偶校验信息从所述NAND存储器装置的NAND存储器加载到所述NAND存储器装置的静态RAM(SRAM)缓冲器。
实例13是一种方法,其包括:将用户数据编程到跨移动电子装置的NAND存储器装置的NAND存储器的多个页的多个数据条带中;使用所述存储器装置的随机存取存储器(RAM)缓冲器更新与所述多个数据条带的第一多个数据条带相关联的第一奇偶校验信息;及在所述NAND存储器的交换块位置与所述RAM缓冲器之间交换与所述第一多个数据条带相关联的所述第一奇偶校验信息。
在实例14中,根据实例13所述的标的物,其包含用所述多个数据条带的奇偶校验信息填充所述交换块位置。
在实例15中,根据实例14所述的标的物,其中所述RAM缓冲器经设定大小以保持由所述交换块位置保持的一小部分所述奇偶校验信息。
在实例16中,根据实例13到15中任一实例所述的标的物,其包含:将第二用户数据编程到跨所述移动电子装置的所述NAND存储器装置的所述NAND存储器的所述多个页的所述多个数据条带的第二多个数据条带中;及使用所述RAM缓冲器更新与所述第二多个数据条带相关联的第二奇偶校验信息。
在实例17中,根据实例16所述的标的物,其中更新第二奇偶校验信息包含:从所述NAND存储器的所述交换块位置检索第二奇偶校验信息;将所述第二奇偶校验信息存储于所述RAM缓冲器中;及使用所述第二奇偶校验信息及所述第二用户数据执行逻辑运算以提供经更新第二奇偶校验信息。
实例18是一种机器可读媒体,其包括指令,所述指令当由机器执行时致使所述机器执行包括以下的操作:将用户数据编程到跨移动电子装置的NAND存储器装置的NAND存储器的多个页的多个数据条带中;使用所述存储器装置的随机存取存储器(RAM)缓冲器更新与所述多个数据条带的第一多个数据条带相关联的第一奇偶校验信息;及在所述NAND存储器的交换块位置与所述RAM缓冲器之间交换与所述第一多个数据条带相关联的所述第一奇偶校验信息。
在实例19中,根据实例18所述的标的物,其中所述操作进一步包括:将第二用户数据编程到跨所述移动电子装置的所述NAND存储器装置的所述NAND存储器的所述多个页的所述多个数据条带的第二多个数据条带中;及使用所述RAM缓冲器更新与所述第二多个数据条带相关联的第二奇偶校验信息。
在实例20中,根据实例19所述的标的物,其中更新第二奇偶校验信息包含:从所述NAND存储器的所述交换块位置检索第二奇偶校验信息;将所述第二奇偶校验信息存储于所述RAM缓冲器中;及使用所述第二奇偶校验信息及所述第二用户数据执行逻辑运算以提供经更新第二奇偶校验信息。
实例21是至少一种机器可读媒体,其包含指令,所述指令当由处理器电路执行时导致所述处理电路执行操作以实施实例1到20中的任何者。
实例22是一种包括实施实例1到20中的任何者的构件的设备。
实例23是一种实施实例1到20中的任何者的系统。
实例24是一种实施实例1到20中的任何者的方法。

Claims (20)

1.一种NAND存储器装置,其包括:
随机存取存储器RAM缓冲器;
NAND存储器单元阵列,其被组织成页、数据条带及奇偶校验信息区,其中所述数据条带包括用户数据和所述用户数据的奇偶校验数据,以及其中所述奇偶校验信息区包含所述数据条带的奇偶校验信息;及
控制器,其经配置以:
将第一用户数据编程到所述NAND存储器单元阵列的第一多个数据条带的第一部分;
将第二多个数据条带的当前奇偶校验信息从所述RAM缓冲器复制到所述奇偶校验信息区;
将所述第一多个数据条带的经存储的奇偶校验信息从所述奇偶校验信息区复制到所述RAM缓冲器以替换所述第二多个数据条带的所述当前奇偶校验;及
使用所述经存储的奇偶校验信息及所述第一用户数据确定所述第一多个数据条带的新奇偶校验信息。
2.根据权利要求1所述的NAND存储器装置,其中所述第一多个数据条带中的每一数据条带横跨所述NAND存储器单元阵列的多个页。
3.根据权利要求2所述的NAND存储器装置,其中每一数据条带的所述NAND存储器的所述多个页中的每一页与所述NAND存储器装置的字线相关联;且
其中在所述NAND存储器阵列的平面内,第一数据条带的页由所述第一数据条带中的每一其它页通过至少多个字线分离。
4.根据权利要求1所述的NAND存储器装置,其中所述奇偶校验信息区的大小大于所述RAM缓冲器。
5.根据权利要求1所述的NAND存储器装置,其中所述RAM缓冲器包含静态RAM SRAM。
6.一种用于处置奇偶校验数据的方法,其包括:
用第一数据对NAND存储器装置的第一数目个数据条带进行编程;
将所述第一数目个数据条带的第一数目个奇偶校验信息从所述NAND存储器装置的NAND存储器加载到所述NAND存储器装置的随机存取存储器RAM缓冲器;
使用所述第一数据刷新所述第一数目个奇偶校验信息;
用第二数据对所述NAND存储器的第二数目个数据条带进行编程;
将所述第一数目个奇偶校验信息复制到所述NAND存储器的奇偶校验信息区;
将所述第二数目个数据条带的第二数目个奇偶校验信息从所述奇偶校验信息区加载到所述RAM缓冲器以替换所述第一数目个奇偶校验信息;
使用所述第二数据刷新所述第二数目个奇偶校验信息;及
其中所述第一数目个数据条带和所述第二数目个数据条带中的每一数据条带包括用户数据和所述用户数据的奇偶校验数据。
7.根据权利要求6所述的方法,所述第一数目个数据条带中的每一数据条带横跨所述NAND存储器装置的NAND存储器单元阵列的多个页。
8.根据权利要求7所述的方法,其中每一数据条带的所述多个页中的每一页与所述NAND存储器装置的字线相关联;且
其中在所述NAND存储器阵列的平面内,第一数据条带的页由所述第一数据条带中的每一其它页通过多个字线分离。
9.根据权利要求7所述的方法,所述第二数目个数据条带中的每一数据条带横跨所述NAND存储器单元阵列的所述多个页。
10.根据权利要求6所述的方法,其中所述RAM缓冲器的大小小于所述第一数目个奇偶校验信息与所述第二数目个奇偶校验信息的经组合大小。
11.根据权利要求10所述的方法,其中所述RAM缓冲器的所述大小小于所述NAND存储器的奇偶校验信息区。
12.根据权利要求6所述的方法,其中所述将所述第一数目个数据条带的第一数目个奇偶校验信息从所述NAND存储器装置的NAND存储器加载到所述NAND存储器装置的随机存取存储器RAM缓冲器包含将所述第一数目个数据条带的第一数目个奇偶校验信息从所述NAND存储器装置的NAND存储器加载到所述NAND存储器装置的静态RAM SRAM缓冲器。
13.一种用于处置奇偶校验数据的方法,其包括:
将用户数据编程到跨移动电子装置的NAND存储器装置的NAND存储器的多个页的多个数据条带中,其中所述多个数据条带中的每一数据条带包括所述用户数据的一部分和所述用户数据的所述部分的奇偶校验数据;
使用所述存储器装置的随机存取存储器RAM缓冲器更新所述多个数据条带的第一多个数据条带的第一奇偶校验信息;及
在作为交换块的NAND存储器块与所述RAM缓冲器之间交换所述第一多个数据条带的所述第一奇偶校验信息。
14.根据权利要求13所述的方法,其包含用所述多个数据条带的奇偶校验信息填充所述交换块位置。
15.根据权利要求14所述的方法,其中所述RAM缓冲器经设定大小以保持由所述交换块位置保持的一小部分所述奇偶校验信息。
16.根据权利要求13所述的方法,其包含:
将第二用户数据编程到跨所述移动电子装置的所述NAND存储器装置的所述NAND存储器的所述多个页的所述多个数据条带的第二多个数据条带中,其中所述第二多个数据条带中的每一数据条带包括所述第二用户数据的一部分和所述第二用户数据的所述部分的第二奇偶校验数据;及
使用所述RAM缓冲器更新所述第二多个数据条带的第二奇偶校验信息。
17.根据权利要求16所述的方法,其中更新第二奇偶校验信息包含:
从所述NAND存储器的所述交换块位置检索第二奇偶校验信息;
将所述第二奇偶校验信息存储于所述RAM缓冲器中;及
使用所述第二奇偶校验信息及所述第二用户数据执行逻辑运算以提供经更新的第二奇偶校验信息。
18.一种机器可读介质,其包括指令,所述指令当由机器执行时致使所述机器执行包括以下的操作:
将用户数据编程到跨移动电子装置的NAND存储器装置的NAND存储器的多个页的多个数据条带中,其中所述多个数据条带中的每一数据条带包括所述用户数据的一部分和所述用户数据的所述部分的奇偶校验数据;
使用所述存储器装置的随机存取存储器RAM缓冲器更新所述多个数据条带的第一多个数据条带的第一奇偶校验信息;及
在作为交换块的NAND存储器块与所述RAM缓冲器之间交换所述第一多个数据条带的所述第一奇偶校验信息。
19.根据权利要求18所述的机器可读介质,其中所述操作进一步包括:
将第二用户数据编程到跨所述移动电子装置的所述NAND存储器装置的所述NAND存储器的所述多个页的所述多个数据条带的第二多个数据条带中;及
使用所述RAM缓冲器更新所述第二多个数据条带的第二奇偶校验信息。
20.根据权利要求19所述的机器可读介质,其中更新第二奇偶校验信息包含:
从所述NAND存储器的所述交换块位置检索第二奇偶校验信息;
将所述第二奇偶校验信息存储于所述RAM缓冲器中;及
使用所述第二奇偶校验信息及所述第二用户数据执行逻辑运算以提供经更新的第二奇偶校验信息。
CN201910955412.3A 2018-10-12 2019-10-09 移动nand奇偶校验信息技术 Active CN111045852B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/159,027 2018-10-12
US16/159,027 US10977115B2 (en) 2018-10-12 2018-10-12 NAND parity information techniques for systems with limited RAM

Publications (2)

Publication Number Publication Date
CN111045852A CN111045852A (zh) 2020-04-21
CN111045852B true CN111045852B (zh) 2023-11-21

Family

ID=70159626

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910955412.3A Active CN111045852B (zh) 2018-10-12 2019-10-09 移动nand奇偶校验信息技术

Country Status (2)

Country Link
US (2) US10977115B2 (zh)
CN (1) CN111045852B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10977115B2 (en) 2018-10-12 2021-04-13 Micron Technology, Inc. NAND parity information techniques for systems with limited RAM
US11934270B2 (en) * 2022-06-02 2024-03-19 Micron Technology, Inc. Write command execution for data protection and recovery schemes

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8601346B1 (en) * 2010-08-16 2013-12-03 Pmc-Sierra Us, Inc. System and method for generating parity data in a nonvolatile memory controller by using a distributed processing technique
CN109426583A (zh) * 2017-08-23 2019-03-05 东芝存储器株式会社 运行中的独立磁盘冗余阵列奇偶校验计算

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090204846A1 (en) * 2008-02-12 2009-08-13 Doug Baloun Automated Full Stripe Operations in a Redundant Array of Disk Drives
KR101678868B1 (ko) * 2010-02-11 2016-11-23 삼성전자주식회사 플래시 주소 변환 장치 및 그 방법
JP2011197819A (ja) * 2010-03-17 2011-10-06 Toshiba Corp 半導体装置
KR101732030B1 (ko) 2010-12-22 2017-05-04 삼성전자주식회사 데이터 저장 장치 및 그것의 동작 방법
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
US8839074B2 (en) * 2012-09-13 2014-09-16 Sandisk Technologies Inc. On chip data recovery for non-volatile storage
KR102108386B1 (ko) * 2013-12-23 2020-05-08 삼성전자주식회사 저장 장치 및 그것의 데이터 엔코딩 및 디코딩 방법들
US10977115B2 (en) 2018-10-12 2021-04-13 Micron Technology, Inc. NAND parity information techniques for systems with limited RAM

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8601346B1 (en) * 2010-08-16 2013-12-03 Pmc-Sierra Us, Inc. System and method for generating parity data in a nonvolatile memory controller by using a distributed processing technique
CN109426583A (zh) * 2017-08-23 2019-03-05 东芝存储器株式会社 运行中的独立磁盘冗余阵列奇偶校验计算

Also Published As

Publication number Publication date
US20200117538A1 (en) 2020-04-16
US11436078B2 (en) 2022-09-06
US10977115B2 (en) 2021-04-13
CN111045852A (zh) 2020-04-21
US20210303394A1 (en) 2021-09-30

Similar Documents

Publication Publication Date Title
CN111108499B (zh) Nand存储器装置、相关方法及机器可读媒体
US10824527B2 (en) Flash memory block retirement policy
US10529434B2 (en) Detecting power loss in NAND memory devices
US11720489B2 (en) Scheme to improve efficiency of device garbage collection in memory devices
CN111183481B (zh) 数据损坏的安全擦除
CN113168358B (zh) 具有奇偶校验保护的多个存储器装置
US10685731B2 (en) Erase page check
KR102420955B1 (ko) 정정 불가능 ecc
US10579307B2 (en) Correcting power loss in NAND memory devices
CN113129978B (zh) 使用奇偶校验增加存储器存取并行性
US10366763B2 (en) Block read count voltage adjustment
CN112074908A (zh) Nand数据放置模式
CN112074816A (zh) Nand数据放置模式的集群奇偶校验
US11436078B2 (en) NAND parity information techniques for systems with limited RAM
CN111381778A (zh) 从异步功率损耗中恢复存储器
CN111684529B (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