CN105122372B - 用于在三维非易失性存储器中的冗余计算的数据的选择 - Google Patents

用于在三维非易失性存储器中的冗余计算的数据的选择 Download PDF

Info

Publication number
CN105122372B
CN105122372B CN201480021395.1A CN201480021395A CN105122372B CN 105122372 B CN105122372 B CN 105122372B CN 201480021395 A CN201480021395 A CN 201480021395A CN 105122372 B CN105122372 B CN 105122372B
Authority
CN
China
Prior art keywords
data
group
wordline
block
data portion
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201480021395.1A
Other languages
English (en)
Other versions
CN105122372A (zh
Inventor
C.N.Y.阿维拉
G.A.杜西杰
陈健
董颖达
梅文龙
李升弼
A.K-T.马克
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 Technologies LLC
Original Assignee
SanDisk Technologies LLC
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 SanDisk Technologies LLC filed Critical SanDisk Technologies LLC
Publication of CN105122372A publication Critical patent/CN105122372A/zh
Application granted granted Critical
Publication of CN105122372B publication Critical patent/CN105122372B/zh
Expired - Fee Related 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
    • 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
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/80Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
    • G11C29/816Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout
    • G11C29/82Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout for EEPROMs
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/71Three dimensional array

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Read Only Memory (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

在三维存储器阵列中存储的数据部分基于用于计算冗余数据的位置而被选择。位置被选择,使得在用于给定的计算的部分的组中没有两个部分有可能同时变成不可校正的。选择的部分可以由至少一个字线分开并且由块中的至少一个串隔开。

Description

用于在三维非易失性存储器中的冗余计算的数据的选择
背景技术
本申请涉及三维可重复编程的非易失性存储器系统的操作以及涉及用于处理在这样的存储器系统中的数据误差的系统和方法。
能够非易失性地存储电荷的固态存储器、特别是被封装为小型规格卡的EEPROM和快闪EEPROM形式的固态存储器最近成为各种移动和手持设备、特别是信息装置和消费电子产品中的存储装置的选择。不同于也是固态存储器的RAM(随机存取存储器),快闪存储器是非易失性的,并且即使在切断电源之后仍保持它所存储的数据。此外,不同于ROM(只读存储器),快闪存储器是可重写的,类似于磁盘存储设备。尽管成本更高,但是快闪存储器正被更多地用于大容量存储应用中。
快闪EEPROM与EEPROM(电可擦除和可编程只读存储器)的相似之处在于,它是一种可被擦除并且使新数据被写到或“编程”到其存储器单元中的非易失性存储器。在场效应晶体管结构中,快闪EEPROM与EEPROM都利用在源极和漏极区域之间的、位于半导体衬底中的沟道区之上的浮置(未连接的)导电栅极。然后在浮置栅极之上提供控制栅极。由被保留在浮置栅极上的电荷量来控制晶体管的阈值电压特性。也就是,对于浮置栅极上给定水平的电荷,存在必须在“导通”晶体管之前应用于控制栅极以允许在其源极和漏极区之间导电的相应电压(阈值)。诸如快闪EEPROM的快闪存储器允许整块的存储器单元同时被擦除。
浮置栅极可以保持一个范围的电荷,因此可以被编程到在阈值电压窗内的任何阈值电压电平。阈值电压窗的尺寸由器件的最小和最大阈值水平来界定,器件的最小和最大阈值水平而又相应于可以被编程到浮置栅极上的电荷的范围。阈值窗通常取决于存储器设备的特性、工作条件和历史。在该窗内的每个不同的、可分辨的阈值电压电平范围原则上用于指定单元的明确的存储器状态。
为了改进读取和编程性能,在阵列中的多个电荷存储元件或存储器晶体管被并行读取或编程。因此,一个“页”的存储器元件被一起读取或编程。在现有存储器架构中,一行典型地包含若干交错的页,或者其可以构成一个页。一页的所有存储器元件被同时读取或编程。
还由具有用于存储电荷的介电层的存储器单元制造非易失性存储器设备。取代先前描述的导电的浮置栅极元件,使用介电层。这样的存储器器件利用已经由Eitan等的电介质存储元件“NROM:一种新颖的局部俘获,2位非易失性存储器单元(NROM:A NovelLocalized Trapping,2-Bit Nonvolatile Memory Cell)、”IEEE电子器件快报、第21卷第11期、2000年11月、第543-545页描述。ONO介电层延伸跨过(across)在源极和漏极扩散之间的沟道。用于一个数据位的电荷被定位在与漏极相邻的介电层中,且用于另一个数据位的电荷被定位在与源极相邻的介电层中。例如,美国专利No.5,768,192和No.6,011,725公开了一种具有夹在两个二氧化硅层之间的俘获电介质(trapping dielectric)的非易失性存储器单元。通过分别读取该电介质内的空间上分开的电荷存储区域的二进制状态来实现多状态数据存储。
发明内容
为了当从三维非易失性存储器读取时恢复可能变成不可校正的数据,为了数据部分的组计算冗余数据。根据数据部分在所述三维存储器阵列中的物理位置,为给定的组选择数据部分。具体地,位置可能被选择,使得在组中没有两个部分可能同时变成不可校正的。在块中的选择的部分可能被至少一个字线分开并且被至少一个串分开。在不同的块中选择的部分可能被选择,使得没有两个部分在共享块选择电路的块中。
一种操作三维非易失性NAND存储器的方法的示例,其中单独的块包含连接到每个位线的多个NAND串,并且其中沿着位线的不同的串的字线被连接在一起,包含:接收要存储在所述三维非易失性NAND存储器阵列中的数据部分;将所述数据部分分配给在所述三维非易失性NAND存储器阵列中的用于存储的物理位置,分配给位置的单独部分被定位为:(1)块、(2)服务于所述块的多个位线,(3)从连接到在所述块中的所述多个位线的多组串中选择的一个串组,以及(4)耦合到所述串组的字线;选择用于计算冗余数据的两个或更多数据部分的组,所述两个或更多数据部分根据它们分配的物理位置来被选择,使得所述两个或更多数据部分都不被分配到单独的块的不同串组的连接的字线;以及为所述两个或更多数据部分的组计算冗余数据,所述冗余数据从所述两个或更多数据部分的组来计算,使得所述两个或更多部分中的任何单独部分能够从所述冗余数据和除了所述单独部分以外的数据组的部分来计算。
所述两个或更多数据部分的组根据它们的分配位置可能被选择,使得所述两个或更多数据部分都不被分配给相邻的串组。在沿着如下字线的物理位置处存储所述冗余数据,所述字线不连接到包含所述两个或更多数据部分中的任何一个部分的字线。计算所述冗余数据可能由应用于所述两个或更多数据部分的组的异或(XOR)操作来执行。选择所述两个或更多部分的组可能只选择被分配到所述单独的块的字线的部分,所述单独的块的字线由至少一个中间的字线垂直地分开。在沿着字线的物理位置处可能存储所述冗余数据,所述字线被至少一个中间的字线与任何字线垂直地分开,所述组的一部分沿着所述任何字线被存储。在所述三维非易失性NAND存储器阵列中存储所述数据部分之前根据误差校正编码(ECC)方案可能编码所述数据部分。所述方法可能还包含:在所述三维非易失性NAND存储器中存储所述数据的组和所述冗余数据;随后从所述三维非易失性NAND存储器读取所述数据的组的第一数据部分;尝试使用ECC解码来解码所述读取的第一数据部分;确定所述读取的第一数据部分不能由ECC校正;以及作为回应,从所述冗余数据和除了所述第一部分以外的数据部分的组计算所述第一数据部分。所述两个或更多数据部分可能由3或4个数据部分组成,所述3或4个数据部分经历异或操作以计算所述冗余数据。
一种三维非易失性NAND存储器系统的示例,包含:多个单独地可擦除块的存储器单元,单独的块包含沿着每个位线的多个垂直的NAND串,所述多个垂直的NAND串的每个由如下字线服务,所述字线被连接到所述多个垂直的NAND串中的其他垂直的NAND串的字线;冗余计算电路,其从数据部分的组计算冗余数据,使得在所述组中的任何数据部分能够从在所述组中的其他数据部分和所述冗余数据被再现;以及数据选择电路,其根据数据部分的物理位置选择数据部分以形成用于计算冗余数据的组,使得在组中没有两个部分被分配到连接在一起的字线。
所述数据选择电路还被配置成根据数据部分的物理位置选择数据部分以形成用于计算冗余数据的组,使得在组中没有两个部分被分配到在块中的相邻的串组。所述数据选择电路可能根据数据部分的物理位置选择用于计算冗余数据,使得选择的部分来自由至少一个中间的字线垂直地分开的未连接的字线。所述冗余计算电路可能是异或(XOR)电路。所述系统可能还包含ECC电路。所述系统可能还包含专用于存储冗余数据的附加的擦除块。单独擦除块包含冗余数据和其他数据的混合。
一种操作三维非易失性NAND存储器的方法的示例,其中单独的块包含连接到每个位线的多个NAND串,并且其中沿着在块中的位线的不同的串的字线被连接在一起,包含:配对相邻的NAND块,使得一对NAND块中的未选择的NAND块在访问所述一对NAND块中的选择的NAND块时经历一组升压电压;以及应用用于选择数据部分的组以用于计算冗余数据的选择方案,在从不同的块选择的组中的每个数据部分,所述不同的块不与包含在所述组中的数据的任何其他部分的任何块配对。
所述方法还包含,在所述三维非易失性NAND存储器阵列中存储所述数据部分之前根据ECC方案编码所述数据部分;为数据部分的每个组计算冗余数据;在所述三维非易失性NAND存储器中存储所述数据部分和所述冗余数据;随后从所述三维非易失性NAND存储器读取一数据部分;以及响应于确定所述读取的第一数据部分不能由ECC校正,从所述冗余数据的和除了所述部分以外的数据部分计算第一数据部分。在根据ECC方案编码所述数据部分之前可能执行所述冗余数据的计算。所述冗余数据的计算可能由应用于所述数据部分的组的异或(XOR)操作来执行。
一种三维非易失性NAND存储器系统的示例,包含:多个单独地可擦除块的存储器单元,单独的块包含沿着每个位线的多个垂直的NAND串,所述多个垂直的NAND串的每个由如下字线服务,所述字线被连接到所述多个垂直的NAND串中的其他垂直的NAND串的字线;块选择电路,其同时将成对的相邻的块连接到全局字线,连接到第一全局字线的选择的块和未选择的块,所述未选择的块与所述选择的块配对并且连接到第二全局字线;冗余计算电路,其从数据部分的组计算冗余数据,使得任何数据部分能够从在所述组中的其他数据部分和所述冗余数据被再现;以及数据选择电路,其根据数据部分的物理位置选择数据部分以形成用于计算冗余数据的组,使得在组中没有两个部分被分配到所述相同的块,或者被连接到形成一对的相邻的块。
所述冗余计算电路可能包含异或电路,所述异或电路从所述数据部分的组计算异或数据。所述系统可能还包含ECC电路。所述数据部分的每个可能表示相应的块的所有数据,并且选择为形成组的数据部分可能被选择,使得与所述数据部分相应的所述块中没有一个块共享块选择电路。
一种操作三维非易失性NAND存储器的方法的示例,其中单独的块包含连接到每个位线的多个NAND串,并且其中沿着位线的不同的串的字线被连接在一起,包含:接收要存储在所述三维非易失性NAND存储器阵列中的数据部分;将所述数据部分分配给在所述三维非易失性NAND存储器阵列中的用于存储的物理位置,分配给位置的单独部分被定位为:(1)块、(2)服务于所述块的多个位线,(3)从连接到在所述块中的所述多个位线的多组串中选择的一个串组,以及(4)耦合到所述串组的字线;选择用于计算冗余数据的一组两个或更多数据部分,所述两个或更多数据部分根据它们分配的物理位置来被选择,使得所述两个或更多数据部分都不被分配在块中的相邻的串组;以及为所述两个或更多数据部分的组计算冗余数据,所述冗余数据从所述两个或更多数据部分的组来计算,使得所述两个或更多部分中的任何单独部分能够从所述冗余数据和除了所述单独部分以外的数据组的部分来计算。
在一个串组中的物理位置处可能存储所述冗余数据,使得所述两个或更多数据部分都不被分配到相邻的串组。计算所述冗余数据可能由应用于所述两个或更多数据部分的组的异或(XOR)操作来执行。选择所述两个或更多部分的组可能只选择被分配到所述单独的块的字线的部分,所述单独的块的字线由至少一个中间的字线垂直地分开。在沿着字线的物理位置处可能存储所述冗余数据,所述字线被至少一个中间的字线与任何字线垂直地分开,所述组的一部分沿着所述任何字线被存储。在所述三维非易失性NAND存储器阵列中存储所述数据部分之前根据误差校正编码(ECC)方案可能编码所述数据部分。所述方法可能还包含:在所述三维非易失性NAND存储器中存储所述数据的组和所述冗余数据;
随后从所述三维非易失性NAND存储器读取所述数据的组的第一数据部分;尝试使用ECC解码来解码所述读取的第一数据部分;确定所述读取的第一数据部分不能由ECC校正;以及作为回应,从所述冗余数据和除了所述第一部分以外的数据部分的组计算所述第一数据部分。所述两个或更多数据部分可能由3或4个数据部分组成,所述3或4个数据部分经历异或操作以计算所述冗余数据。
一种三维非易失性NAND存储器系统的示例,可能包含:多个单独地可擦除块的存储器单元,单独的块包含沿着每个位线的多个垂直的NAND串,所述多个垂直的NAND串的每个由如下字线服务,所述字线被连接到所述多个垂直的NAND串中的其他垂直的NAND串的字线;冗余计算电路,其从数据部分的组计算冗余数据,使得在所述组中的任何数据部分能够从在所述组中的其他数据部分和所述冗余数据被再现;以及数据选择电路,其根据数据部分的物理位置选择数据部分以形成用于计算冗余数据的组,使得在组中没有两个部分被分配到在块中的相邻的串组。
所述数据选择电路可能根据数据部分的物理位置选择用于计算冗余数据,使得选择的部分来自由至少一个中间的字线垂直地分开的未连接的字线。所述冗余计算电路可能是异或(XOR)电路。所述系统可能还包含ECC电路。所述系统可能还包含专用于存储冗余数据的附加的擦除块。单独擦除块包含冗余数据和其他数据的混合。
本发明的各种方面、优点、特征和实施例被包含在其典范的示例的下面的描述中,该描述应结合附图来考虑。出于所有目的,所有专利、专利申请、文章、其它出版物、文件和这里提及的东西在此通过参考将其全部合并入本文中。在任何合并的出版物、文档或事物与本申请之间的定义或词语的使用的任何不一致或冲突的程度,那些以本申请为准。
附图说明
图1示意性地示出了适于实现本发明的存储器系统的主要硬件组件。
图2示意性地示出了非易失性存储器单元。
图3示出了对于四个不同的电荷Q1-Q4的源极-漏极电流ID和控制栅极电压VCG之间的关系,浮置栅极可以选择性地在固定的漏极电压下在任何一个时间存储该四个不同的电荷Q1-Q4。
图4A示意性地示出了组织成NAND串的存储器元件的串。
图4B示出了从诸如图4A所示的NAND串50构成的存储器单元的NAND阵列210的示例。
图5示出了在NAND配置中组织的存储器单元的页被并行被感测或编程。
图6A-6C示出了编程4状态的存储器单元的群体(population)的示例。
图7示出了在z方向上从衬底垂直延伸的NAND串的示例。
图8示出了在z方向上从衬底垂直延伸的NAND串的另一个示例。
图9A示出了沿着y-z平面的横截面中的三维NAND存储器阵列的示例。
图9B示出了沿着x-y平面的横截面中的三维NAND存储器阵列的示例。
图10示出了异或(Exclusive OR,XOR)电路。
图11示出了对于XOR操作的真值表。
图12示出了数据部分的异或以获得冗余数据。
图13示出了数据的多于两个部分的异或以获得冗余数据。
图14A示出了在三维存储器阵列中的故障模式的示例。
图14B示出了在三维存储器阵列中的故障模式的另一个示例。
图15示出了在三维存储器阵列中的故障模式的另一个示例。
图16示出了一对块可如何共享块选择电路。
图17示出了基于位置选择数据用于计算冗余数据的方法。
图18示出了基于位置选择数据用于在三维存储器的块中的冗余计算的方案。
图19示出了基于位置选择块用于冗余计算的方案。
图20示出了可用于实现本发明的各方面的硬件的示例。
具体实施方式
存储器系统
图1示意性地示出了适于实现本发明的存储器系统的主要硬件组件。存储器系统90典型地通过主机接口与主机80一起操作。存储器系统典型地以存储器卡或嵌入式存储器系统的形式。存储器系统90包含由控制器100控制操作的存储器102。存储器102包括分布在一个或多个集成电路芯片上的一个或多个非易失性存储器单元阵列。控制器100可以包含接口电路110、处理器120、ROM(只读存储器)122、RAM(随机存取存储器)130、可编程非易失性存储器124,以及其他组件。控制器典型地被形成为ASIC(专用集成电路),且在这种ASIC中包含的组件通常取决于具体应用。
物理存储器结构
图2示意性地图示非易失性存储器单元。存储器单元10可以由具有诸如浮置栅极或者介电层之类的电荷存储单元20的场效应晶体管实现。存储器单元10也包括源极14、漏极16和控制栅极30。
存在今天正在使用的许多商业上成功的非易失性固态存储器装置。这些存储器装置可以采用不同类型的存储器单元,每个类型具有一个或多个电荷存储元件。
典型的非易失性存储器单元包括EEPROM和闪存EEPROM。EEPROM单元及其制造方法的例子在美国专利No 5,595,924中给出。闪存EEPROM单元、它们在存储器系统中的使用及其制造方法的例子在美国专利No 5,070,032、5,095,344、5,315,541、5,343,063、5,661,053、5,313,421和6,222,762中给出。具体来说,具有NAND单元结构的存储器装置的例子在美国专利No5,570,315、5,903,495、6,046,935中描述。此外,由Eitan等,在“NROM:A NovelLocalized Trapping,2-Bit Nonvolatile Memory Cell”,IEEE Electron DeviceLetters,vol.21,No.11,2000年11月,pp.543-545中,而且在美国专利No 5,768,192和6,011,725中已经描述了利用介电存储元件的存储器装置的例子。
实际上,通常通过当参考电压施加到控制栅极时感测单元的源极和漏极电极两端的导电电流来读取单元的存储器状态。因此,对于单元的浮置栅极上的每个给定电荷,可以检测到相对于固定的参考控制栅极电压的相应的导电电流。类似地,可编程到浮置栅极上的电荷的范围限定了相应的阈值电压窗口或者相应的导电电流窗口。
替代地,代替检测分区的电流窗口当中的导电电流,可以设置在控制栅极处的测试中的用于给定存储器状态的阈值电压并检测导电电流低于或者高于阈值电流(单元-读取参考电流)。在一个实施方式中,通过检查通过位线的电容而放电导电电流的速率来实现关于阈值电流的导电电流的检测。
图3图示对于浮置栅极可以在任一时刻选择性地存储的四个不同电荷Q1-Q4的源极-漏极电流ID和控制栅极电压VCG之间的关系。通过固定的漏极偏压,可以在存储器单元的浮置栅极上编程表示四个电荷电平的四个实线ID对VCG曲线,其分别对应于八个可能的存储器状态中的四个。作为示例,单元全体的阈值电压窗口的范围可以从0.5V到3.5V。可以通过将阈值窗口分区为以每个0.5V的间隔的区域来分别划界七个编程的存储器状态“0”、“1”、“2”、“3”、“4”、“5”、“6”和一个擦除状态(未示出)。例如,如果如图所示使用2μA的参考电流IREF,则以Q1编程的单元可以被考虑为处于存储器状态“1”,因为其曲线与IREF在由VCG=0.5V和1.0V划界的阈值窗口的区域中相交。类似地,Q4处于存储器状态“5”。
如可以从以上描述看到的,使得存储器单元存储更多的状态,则其阈值窗口划分得越精细。例如,存储器装置可以具有拥有范围从-1.5V到5V的阈值窗口的存储器单元。这提供6.5V的最大宽度。如果存储器单元要存储16个状态,则每个状态可以在阈值窗口中占据从200mV到300mV。这将需要编程和读取操作的高精度以能够实现所需的分辨率。
NAND结构
图4A示意性地图示组织成NAND串的一串存储器单元。NAND串50包括由它们的源极和漏极链式(daisy-chained)连接的一系列存储器晶体管Ml、M2、...、Mn(例如,n=4、8、16或更高)。一对选择晶体管S1、S2分别经由NAND串的源极端子54和漏极端子56控制存储器晶体管链到外部世界的连接。在存储器阵列中,当源极选择晶体管S1导通时,源极端子耦合到源极线(参见图4B)。类似地,当漏极选择晶体管S2导通时,NAND串的漏极端子耦合到存储器阵列的位线。处于链中的每个存储器晶体管10用作存储器单元。其具有电荷存储元件20以存储给定量的电荷从而表示想要的存储器状态。每个存储器晶体管的控制栅极30允许读和写操作的控制。如将在图4B中看到的,一行NAND串的相应的存储器晶体管的控制栅极30全部连接到同一字线。类似地,选择晶体管S1、S2中的每一个的控制栅极32分别经由其源极端子54和漏极端子56提供对NAND串的控制存取。同样地,一行NAND串的相应的选择晶体管的控制栅极32全部被连接到同一选择线。
当在编程期间读取或者验证NAND串内的被寻址的存储器晶体管10时,向其控制栅极30提供适当的电压。同时,通过在NAND串50中的剩余未被寻址的存储器晶体管的控制栅极上施加足够的电压,将它们完全地导通。以该方式,从单独的存储器晶体管的源极到NAND串的源极端子54有效地创建导电路径,且同样地对于单独的存储器晶体管的漏极到单元的漏极端子56有效地创建导电路径。在美国专利No.5,570,315、5,903,495、6,046,935中描述了具有这种NAND串结构的存储器装置。
图4B图示由诸如图4A中示出的NAND串50构成的存储器单元的NAND阵列210的例子。沿着NAND串的每个列,诸如位线36的位线耦合到每个NAND串的漏极端子56。沿着NAND串的每个行,诸如源极线34之类的源极线耦合到每个NAND串的源极端子54。此外,沿着NAND串的条(bank)中存储器单元的行的控制栅极连接到诸如字线42之类的字线。沿着NAND串的条中选择晶体管的行的控制栅极连接到诸如选择线44之类的选择线。NAND串的条中存储器单元的整个行可以由NAND串的条的字线和选择线上的适当的电压寻址。
图5图示并行感测或者编程的以NAND配置组织的存储器单元的页。图5基本上示出了图4B的存储器阵列210中NAND串50的条,其中在图4A中明确地示出了每个NAND串的细节。诸如页60的物理页是使得能够被并行感测或者编程的一组存储器单元。这通过感测放大器212的相应的页来实现。该感测的结果被锁存在相应的锁存器214组中。每个感测放大器可以经由位线耦合到NAND串。由共同连接到字线42的页的单元和可由可经由位线36访问的感测放大器访问的每个蜂窝的控制栅极来使能该页。作为示例,当分别感测或者编程单元60的页时,感测电压或者编程电压分别与位线上的适当的电压一起施加到公共字线WL3。
存储器的物理组织
闪存存储器和其它类型的存储器之间的一个重要差别在于必须从擦除状态编程单元。也就是浮置栅极必须首先清空电荷。然后,编程添加要求量的电荷回到浮置栅极。其不支持从浮置栅极除去一部分电荷以从更多编程的状态到更少编程的状态。这意味着更新数据不能重写现有的数据,且必须被写入到先前未写入的位置。
此外,擦除是从浮置栅极清空全部电荷且通常占用可观的时间。为此原因,逐单元或者甚至逐页地擦除将是麻烦的和非常慢的。实际上,存储器单元的阵列被分为大量存储器单元的块。如对于闪存EEPROM系统普通的,块是擦除的单元。也就是,每个块包含一起擦除的最小数目的存储器单元。在要并行擦除的块中集合大量单元将改进擦除性能,较大尺寸的块也必然需要处理大量更新和陈旧的数据。
每个块典型地划分为多个物理页。逻辑页是包含等于物理页中单元的数目的多个位的编程或者读取的单元。在每个单元存储一位的存储器中,一个物理页存储数据的一个逻辑页。在每个单元存储两位的存储器中,物理页存储两个逻辑页。物理页中存储的逻辑页的数目由此反映每个单元存储的位的数目。在一个实施例中,单独的页可以划分为分段(segment),且分段可以包含作为基本编程操作而一次性地写入的最小数目的单元。数据的一个或多个逻辑页典型地被存储在存储器单元的一行中。一页可以存储一个或多个扇区。扇区包括用户数据和开销数据。
全部位、完全序列(All-bit,Full-Sequence)MLC编程
图6A-图6C图示编程总体4状态存储器单元的例子。图6A图示可编程为分别表示存储器状态“0”、“1”、“2”和“3”的四个不同的阈值电压分布的总体存储器单元。图6B图示用于擦除的存储器的“擦除”阈值电压的初始分布。图6C图示在已经编程许多存储器单元之后的存储器的例子。基本上,单元最初具有“擦除”阈值电压,且编程将该电压移动到较高值,到由验证电平vV1、vV2和vV3划界的三个区之一。以这种方式,每个存储器单元可以被编程到三个编程的状态“1”、“2”和“3”之一,或者保持未编程于“擦除”状态。随着存储器被更多地编程,如图6B所示的“擦除”状态的初始分布将变得更窄,且擦除状态由“0”状态表示。
具有较低位和较高位的2位码可用于表示四个存储器状态中的每一个。例如,“0”、“1”、“2”和“3”状态分别由“11”、“01”、“00”和“10”表示。可以通过以“完全序列”模式感测来从存储器读取2位数据,在"完全序列"模式中,通过分别关于三个子通过(pass)中的读取划界阈值rV1、rV2和rV3而感测来一起感测两个位。
三维NAND结构
现有的二维(2-D)NAND阵列的交替布置是三维(3-D)阵列。与沿着半导体晶片的平面表面形成的二维NAND阵列相比,三维阵列从晶片表面向上延伸,且通常包括向上延伸的存储器单元的堆或者列。各种三维布置是可能的。在一个布置中,垂直地形成NAND串,其一端(例如,源极)在晶片(wafer)表面且另一端(例如,漏极)在上面。在另一布置中,以U形形成NAND串,以使得NAND串的两端在顶上可访问,由此促进这种串之间的连接。这种NAND串和它们的形成的例子在美国专利公开No 2012/0220088和美国专利公开No.2013/0107628中描述,将它们的整体通过参考并入于此。
图7示出了在垂直方向上延伸、即在垂直于衬底的x-y平面的z方向上延伸的NAND串701的第一例子。形成存储器单元,其中垂直位线(局部位线(local bit line))703通过字线(例如,WL0、WL1等)。在局部位线和字线之间的电荷俘获层存储如下电荷,该电荷影响由耦合到字线环绕的垂直位线(通道)的字线(栅极)形成的晶体管的阈值电压。可以通过形成字线的堆叠且然后蚀刻其中要形成存储器单元的存储器孔来形成这种存储器单元。然后将存储器孔与电荷俘获层连线,且填充适当的局部位线/通道材料(具有用于隔离的适当的介电层)。
如同平面NAND串一样,选择栅极705、707位于串的任一端以允许NAND串选择性地连接到外部元件709、711或者与外部元件709、711隔离。这种外部元件通常是导电线路,诸如服务大量NAND串的公共源极线或者位线。垂直NAND串可以以与平面NAND串类似的方式操作,且SLC和MLC操作两者都是可能的。虽然图7示出了具有串联连接的32(0-31)个单元的NAND串的例子,但是NAND串中单元的数目可以是任何适当的数目。为了清楚没有示出全部单元。将理解形成另外的单元,其中字线3-29(未示出)与局部垂直位线相交。
图8示出了在垂直方向(z方向)上延伸的NAND串815的第二例子。在该情况下,NAND串815形成与位于该结构的顶部上的外部元件(源极线“SL”和位线“BL”)连接的U形。在NAND串815的底部处的是连接NAND串815的两侧的可控制栅极(背栅极“BG”)。形成总共64个单元,其中字线WL0-WL63与垂直局部位线817相交(虽然在其他例子中可以提供其他数目的单元)。选择栅极SGS、SGD位于NAND串815的任一端以控制NAND串815的连接/隔离。
垂直NAND串可以布置为以各种方式形成3-D NAND阵列。图9A示出了其中块中的多个U形NAND串连接到位线的例子。在该情况下,存在连接到位线(“BL”)的块中的n个串(串1-串n)。“n”的值可以是任何适当的数目,例如,8、12、16、32或更多。串在如下朝向中交替,该朝向具有其源极连接在左边的奇数编号的串、和其源极在右边的偶数编号的串。该布置是方便的但是不是基本的,且其它图案也是可能的。
图9A示出了两个块相遇(meet)之处。块A包含连接到位线BL的n个串。虽然仅示出了块A的串n和n-1,将理解,重复结构继续到串1到n-2位于的左边。块B包含连接到位线BL的n个串。虽然仅示出了块B的串1-3,将理解重复结构继续到串4到n位于的右边。也将理解示出的截面是沿着服务块的许多位线之一,且存在沿着y方向延伸、且沿着x方向彼此分开的许多类似的位线(例如,在所示的位线之后的其他位线)。字线垂直于图9A的平面在x方向延伸,以连接不同位线的串组。类似地,选择线在x方向上延伸以使得一个串组可以作为单元而选择性地被连接,或者被隔离。在示出的例子中,形成字线以使得单个导电条形成两个相邻串的字线。由此,例如,在块B中,串1和串2具有由普通(common)导电带形成的字线WL32-WL63。相反地,选择线不在相邻的串之间共享。这允许分开选择块内的单独的串组,即使所选的串组可能包括不与未选择的串的字线分开地可控制的字线。在块相遇之处可能存在各种伪元件,包括图9A所示的伪字线和伪选择线(标记为“NC”用于“未连接”,因为它们不连接到任何驱动器电路)。
另外在图9B中示出图9A的三维NAND存储器阵列,图9B示出了沿着图9A的A-A'的截面(即,沿着与WL0和WL63相交的x-y平面)。可以看出块的字线由连接在一起的导电材料带形成。由此,在块的不同串中的标记为WL0的全部字线被电连接在一起且从单个导电体921形成。类似地,在块的不同串中的标记WL63的全部字线电连接在一起且由单个导电体923形成。形成在给定电平上的块的字线的两个主体显得好像从块的相对侧延伸的交错的手指。这两个主体可以由浅槽隔离(STI)电介质、或者由任何适当的绝缘体分开。可以在字线的每个电平处找到类似图案(pattern)(例如,WL1和WL62类似地交错,WL2和WL61也是,等等)。不同块的字线彼此隔离(isolated)。由此,块A的WL0是分开的,且与块B的WL0电气地隔离。类似地,块A的WL63是分开的,且与块B的WL0电气地隔离。
存储器孔被示为圆形(存储器孔在形状上是圆柱形且垂直于示出的截面在z方向上延伸)。U形的NAND串925沿着两个存储器孔927、929延伸,其中一个存储器孔927穿过主体923且另一存储器孔929穿过主体921。一个串组由沿着x方向对准且共享选择线(也沿着x方向延伸)的所有这种串构成。例如,一个这种组由在块B中由“串3”指示的全部串(包括串925)构成。当选择一块内的给定的串组时,所选的字线(或者字线的部分,即与字线相交的位线的子集)可以通过将适当的字线电压施加到所选的字线和未选择的字线来读取。
连接字线驱动器以将适当的电压供应到块的连接的字线(例如,主体923和921),以使得可以访问(例如,编程或者读取)块的字线。连接选择线驱动器以将适当的电压供应到选择线,以使得选择一块中特定的串组。
因为存在沿着块内的位线的多个串,因此当访问(例如,读取或者编程)存储器时需要指定特定的串。虽然在二维NAND中,指定块和字线(或者字线的部分)通常足以在诸如以上示出的三维结构中指定唯一的数据,但是对于给定块和字线可能有存储的数据的n个不同部分(其中n是沿着块中的位线的串的数目)。块内的可一起选择的串组是在单个字线和块之间的中间大小的单元。这种单元从特定的三维存储器结构、诸如图9A和图9B中示出的三维存储器结构产生。
不可校正数据
在存储器系统中使用误差校正码(ECC)方案在存储之前编码数据是普遍的。当读取这种数据时,解码该数据且可以校正读取的数据直到某些限制。限制通常取决于使用的ECC方案且具体来说取决于添加的冗余的量。虽然少量的坏位可以由ECC校正,但是大量坏位可能不可由ECC校正(“UECC”)以使得需要某些其它方法。
UECC数据的一种方法是从当数据被存储时产生的一些冗余数据恢复原始数据。这样的冗余数据由与用于少量的坏的位的ECC方案分离的方案产生。如果存储的副本变成UECC,这样的冗余数据可能允许数据的比较大的部分被全部再现。这样的冗余方案在产生冗余数据和必要时再现原始数据(original)所需的空间的方面和所需要的时间的方面可能是花费很多的。
某些读取故障模式对二维(2-D)存储器和三维(3-D)存储器是公共的,而其他故障模式是三维存储器特定的。总的来说,三维的部件布置给出了在被设计为要隔离的部件之间短路或者泄露的另外的可能性(例如,由于电介质的缺陷)。虽然二维存储器中的特定的线、诸如字线可能具有将任一侧上的相邻字线短路的可能性,但是三维存储器中的线还可能与之上或之下的相邻的线短路。另外,三维存储器的复杂几何形状和困难的工艺要求可能使得在三维存储器中更可能存在缺陷。虽然ECC可能能够处理少量坏位,但诸如由短路或者泄露的部件引起的大量坏位可能不是可由ECC校正的。例如,如果字线与另一部件短路,则可能有沿着字线的大量坏位以使得沿着字线的数据可能是UECC。
异或“XOR”
用于当在存储器中的副本是UECC时再现原始数据的一种系统使用由在存储之前应用于数据的多个部分的异或(XOR)操作创建的冗余数据。如果部分之一当其从存储器阵列被读取时被发现是UECC,则整个部分可以从连同所产生的冗余数据一起异或的其它部分(即异或操作的输出)再现。
图10是示意性示出了一起异或(经历XOR操作)以提供输出C的两个输入A和B。图11示出了用于每个可能的输入组合的此操作的真值表。可以看出,每当输入中仅一个输入是1时,即当存在奇数输入时,该输出是1。每当输入是相同时,即每当存在偶数输入时,该输出是0。虽然输出位C是从输入位A和B计算的,但这可以颠倒使得得知了输出位C和输入位之一,则可以计算剩余的输入位。
图12示出了源数据A和B的多位部分可能如何一起异或以提供输出数据C。通过一起异或在图11中所示的源数据A和B中相应的位来计算在输出C中的每一位。输出数据C可能被认为是可与数据源A和B一起存储的冗余数据。即使数据A或B的部分之一变成损坏的或以其它方式不可校正时,也可以从源其它数据部分和从冗余数据C来计算原始数据。
虽然图12示出了用于计算冗余数据的源数据的两个部分的组,但可能以这种方式来处理任何数目的部分。图13示出了源数据X、Y和Z的三个部分的组,它们一起异或以提供冗余数据XOR(X、Y、Z)。异或操作可能被认为是一个加法模2操作(即,对位求和并且取最低有效位作为输出)。这也可以被认为是奇/偶确定,其中给定的输出位指示所有相应的输入位的总和是奇数还是偶数。可以从冗余数据XOR(X、Y、Z)和源其它数据部分来计算源数据的任何部分。这可以延伸到源数据的任何数目的部分。
如上所示的异或方案的一个限制是,为了计算任何给定的数据部分,在该组源数据中的其它数据部分必须是可得的。如果在一组这样的部分中的多于一个数据部分是不可得的(例如,UECC),那么可能无法使用冗余数据来计算原始数据。因此,重要的是,用于计算冗余数据的任意组的部分中的多于一个数据部分变成UECC。
可能在从存储器阵列读取的UECC数据中观察到某些图案。这些图案中的一些与其中存储了数据的特定存储器阵列的物理结构有关。在诸如上述的三维存储器阵列中,已经发现,数据在某些图案中变成UECC,该某些图案与所描述的物理结构相关联的特定的故障模式有关。
本发明的各方面涉及选择数据部分,以形成用于计算冗余数据的数据组,使得多于一个被选择的部分变成UECC的概率是低的。具体地,这样的部分可能被选择,使得没有两个这样的部分有可能被常见的故障模式所影响。
图14A示出了在三维存储器中可能出现的故障模式的示例。由于短路或泄漏,或由于一些其他原因,沿着字线WL29的数据是UECC。在这种情况下,所有这样的字线(在特定的块中的所有WL29字线)被连接在一起(参见图9B)。这意味着,如果沿着一个这样的字线的数据是UECC,很可能沿着其他连接的字线的数据是UECC。例如,如果数据是UECC,因为作为短路或泄漏的结果,WL29上的电压低,然后因为所有的WL29被连接,因此短路或泄漏将影响所有的WL29。因此,用于选择数据部分以形成用于计算冗余数据的一组的方案可以避免选择位于沿着被连接的字线的部分。因此,在该组的第一数据部分是来自在块中的特殊的字线、WLX的情况下,随后的部分可以从其他的字线、例如WLY选择,其中Y≠X。任何随后选择的部分来自除了WLX和WLY以外的字线。
图14B示出了可能会在三维存储器中发生的故障模式的另一个示例。在其中诸如WL29的字线具有泄漏或短路的一些情况下,它是到其上方或下方的相邻的字线,即到WL28或WL30。因此,如果在用于计算冗余数据的组中的两个数据部分曾被存储在相邻的字线中,该故障模式可能会导致两个字线中的数据都是UECC。因此,用于选择数据部分以形成用于计算冗余数据的组的方案可能避免选择位于沿着相邻字线的部分。因此,在该组的第一数据部分是来自在块中的特殊的字线、WLX的情况下,可以从通过至少一个中间的字线分开的其它字线、例如WLY中选择随后的部分,其中Y≤X-2,或Y≥X+2。任何随后选择的部分来自通过至少一个中间的字线与WLX和WLY两者分开的字线。
图15示出了可能会在三维存储器中发生的故障模式的另一个示例。在这种情况下,一个串组、串X被影响。因为一个串组可能被相同的故障模式影响,需要选择用于从不同组串计算冗余数据的数据部分。此外,一些故障模式可能影响相邻的串组。例如,邻近的串组的选择栅极之间的短路或泄漏可能会影响这两个串组。如果串X的SGD被短路到串X+1的SGD,那么串X和串X+1两者都可能会受到影响。类似地,如果串X的SGS被短路到串X-1的SGS,那么这串X和串X-1两者都可能受到影响。因此,选择用于计算冗余数据的数据部分的方案可以选择在由至少一个中间串分开的不同的串中存储的数据部分。例如,在图15中,如果从串X中选择了一个部分,那么将不从串X-1到串X+1中选择该组的随后的部分。
块选择
在一些情况下,两个或更多的块可以共享块选择电路。这样的共享块选择电路的示例在美国专利公开号2011/0267885中示出。这样成对的、或成组的(可能多于两个)的块可能具有影响作为单元的一对块或一组块的特定的故障模式。
图16示出了成对的块的示例,其中每对块共享块选择电路。例如,块X和块X+1共享块选择电路671。块X+2和块X+3共享块选择电路673,等等。当访问特定的数据时,特定的字线、包含字线的串的组、和包含串的组的块被选择。块选择电路将所选的块(例如,块X)的字线连接到以读取和读取-通过电压适当地偏压的第一全局字线475。共享的块选择电路471将未选择的成对块(例如,块X+1)的字线连接到偏压到某个低电压的分开的第二全局字线477。在某些情况下,在块之间的短路或泄漏可能影响在两个块中的读取。例如,从图9A中可以看出,如果块之间的绝缘不充分,在块X的WL0和块X+1的WL0之间的短路或泄漏可能发生。由于块内的连接的字线,因此这样的缺陷会影响两个块的所有串。例如,为了读取块X的串的字线,可能有必要将读通(read-pass)电压应用于WL0。如果选择的块X的WL0泄漏到未选择的块X+1的WL0(其典型地在比读通电压更低的某电压处),则块X的WL0上的有效电压可能不足以使沿着WL0的存储器单元导电,并且可能产生遍及块X和块X+1的UECC数据。对于未配对的块,未选择的块的字线通常会浮动(与全局字线隔离的),且泄漏到这样的字线将不会显著影响应用于该选择的块的电压。
虽然本示例指的是字线,但在块之间的其它元件的短路可能还产生遍及一对块的UECC数据,例如,如果两个块的背栅极短路,这可能会导致在两个块中的数据是UECC。在共享块选择电路的相邻的块中选择线之间的短路可以阻碍两个块的选择线的适当的偏置,从而使两个块中的数据是UECC。(不共享块选择电路的相邻的块的选择线之间的短路通常只影响每块上的两个串)。
选择用于计算冗余数据的数据部分的一些方案可以从不同的块来选择,使得如果完整的块是UECC,则任何一组中只有一个部分是存在于块中的,且该部分可从其它块中的数据再现。虽然,在块共享块选择电路的情况下,可能不足以简单地选择不同的块。因为某些故障模式可能导致两个或更多的块一起变成UECC,需要只选择不共享块选择电路的块。因此,选择数据部分以形成用于计算冗余数据的组的方案只选择被分配给不同的且不共享块选择电路的块,其中任何块包含该组的另一个部分。因此,如果在组中的一个部分从图16中的块n中被选择,随后的部分将不会从块n或块n+1被选择。
图17是示出了用于基于它们的位置选择数据部分751的一般方案的流程图。应该理解的是,通常在存储器阵列中存储数据之前执行冗余数据的计算,以便选择是基于数据被分配到的位置的,即使在该位置处它没有被物理编程。最初,可以识别特定的存储器阵列的可能的故障模式753。这可以取决于存储器阵列的设计。故障模式可以是从该设计来预测的,或可以通过实验来找到。可以识别故障模式的一个或多个危险区域755。例如,用于特定的字线的危险区域延伸以包含字线和其上方和下方的邻居。之后选择数据部分,使得它们不在与组的数据的另一部分相同的危险区域中757。这使得不太可能的是,这两个部分将变成UECC,从而提供计算数据的UECC部分的高概率。
图18是用于数据部分的块中选择(in-block selection)861的流程图。在该示例中,一组的所有数据部分从相同的块内选择。这是方便的,因为它允许源数据的随后的计算,而无需访问多个块。如果该组的数据部分被分配给字线X,那么随后的部分必须隔开至少两个字线、即至少X+2(或X-2)863。如果组的部分被分配到特定的串组、串Y,则随后的部分必须从隔开至少两个串的串组、即至少Y+2(或Y-2)中选择865。
图19是用于在从不同块中选择不同部分的情况下的块选择961的流程图。在有完整的块变成UECC的风险的情况、使用块中方案不可校正的情形下,可以使用这个。确定块是否共享块选择电路963。如果块选择电路被共享,则执行选择,使得只有来自未成对的块的数据部分被选择为用于计算冗余数据的给定的组965。如果块选择电路未成对,则可以使用任何不同的块967。
根据不同的故障模式的风险,诸如在块中(in-block)异或和块到块(block-to-block)的异或的方案可以被分开使用,或者可以被一起使用。这些可以与包含ECC以及任何附加的冗余方案的其他方案(例如,由主机操作的冗余方案)结合。
虽然上述方案指的是根据它们的位置选择源数据部分,其中存储冗余数据的位置也很重要,由于为了再现数据的UECC部分,冗余数据必须是可得的。在一些情况下,这样的冗余数据被存储在专用的位置,例如三维NAND存储器阵列的特定部分。一个或多个块可以被保留用于冗余数据的存储,或每个块的某些部分可以被保留用于冗余数据的存储。在其他情况下,冗余数据与所述存储器阵列中的源数据一起存储。将这样的冗余数据分配给存储器阵列中的位置的方案可以应用与应用于选择源数据部分相同的标准。这意味着冗余数据不是与用于计算它的源数据的任何部分相同的危险区域。这减少了源数据的部分和冗余数据两者都同时变成UECC的机会。例如,被选择用于存储冗余数据的位置可以与源数据的任何部分隔开至少两个串,并且与块中的源数据的任何部分隔开至少两个字线。在另一个示例中,本选择用于冗余数据的存储的位置可以是在如下块中,该块不具有源数据的任何部分并且不与具有源数据部分的任何块共享块选择电路。
图20示出了可以用于实现一些上述方法的硬件的示例。具体地,图20示出了包含存储器裸芯272和存储器控制器裸芯274的存储器系统270。存储器裸芯包含三维存储器阵列276和读取/写入电路278。存储器控制器裸芯274包含数据选择电路280,数据选择电路280根据它们的分配的位置选择数据部分,以形成用于计算冗余数据的组。冗余计算电路282从选择的组计算冗余数据。之后,数据部分和冗余数据被存储在三维存储器阵列276中。ECC电路284还在存储数据之前编码数据,并且当数据被读取时用于解码数据和校正误差。如果在特定的数据部分中发现UECC数据,则读取/写入电路278读取在包含UECC部分的组中的其它数据部分,并且读取用于该组的冗余数据。这些被冗余计算电路282使用来计算与UECC数据相应的源数据。之后,该源数据可以被发送到主机,并且存储器阵列中的UECC数据可以被替换为校正的数据。
虽然上面的描述指的是故障模式的特别的示例,应当理解的是,本发明的各方面可以被应用到除了所描述的那些的故障模式。虽然描述指的是作为故障模式的示例的短路或泄露,其它缺陷也可以提供故障模式,可以使用具有基于位置的数据部分的选择的合适的冗余方案来克服该故障模式。示例指的是作为计算冗余数据的操作的示例的异或(XOR)。然而,应当理解的是,其它操作也可以使用。
结论
为了说明和描述本发明的目的,前面的详细描述已经呈现。它不旨在穷尽或限制本发明为公开的精确形式。根据上述教导的许多变型和变化是可以的。选择所描述的实施例是为了最好的解释本发明的原理及其实际应用,从而使得本领域的技术人员能够最好地利用在各种实施例中的发明且各种变型适合于预期的特定用途。本发明的范围由所附的权利要求限定。

Claims (38)

1.一种操作三维非易失性NAND存储器的方法,其中单独的块包含连接到每个位线的多个NAND串,并且其中沿着位线的不同的串的字线被连接在一起,所述方法包括:
接收要存储在所述三维非易失性NAND存储器阵列中的数据部分;
将所述数据部分分配给在所述三维非易失性NAND存储器阵列中的用于存储的物理位置,分配给位置的单独部分被如下来定义:(1)块、(2)服务于所述块的多个位线、(3)从连接到在所述块中的所述多个位线的多组串中选择的一个串组、以及(4)耦合到所述串组的字线;
选择用于计算冗余数据的两个或更多数据部分的组,所述两个或更多数据部分根据它们的分配的物理位置而被选择,使得所述两个或更多数据部分都不被分配到单独的块的不同串组的连接的字线;以及
为所述两个或更多数据部分的组计算冗余数据,所述冗余数据从所述两个或更多数据部分的组来计算,使得所述两个或更多部分中的任何单独部分能够从所述冗余数据和所述两个或更多数据部分的组的除了所述单独部分的部分来计算。
2.如权利要求1所述的方法,其中所述两个或更多数据部分的组根据它们的分配的位置而被选择,使得所述两个或更多数据部分都不被分配给相邻的串组。
3.如权利要求1所述的方法,还包括在沿着如下字线的物理位置处存储所述冗余数据,所述字线不连接到包含所述两个或更多数据部分中的任何一个部分的字线。
4.如权利要求1所述的方法,其中由应用于所述两个或更多数据部分的组的异或(XOR)操作来执行所述计算所述冗余数据。
5.如权利要求1所述的方法,其中所述选择两个或更多数据部分的组只选择被分配到所述单独的块的字线的部分,所述单独的块的字线由至少一个中间的字线垂直地分开。
6.如权利要求1所述的方法,还包括在沿着如下字线的物理位置处存储所述冗余数据,所述字线被至少一个中间的字线与任何字线垂直地分开,所述组的部分沿着所述任何字线被存储。
7.如权利要求1所述的方法,还包括在所述三维非易失性NAND存储器阵列中存储所述数据部分之前根据误差校正编码(ECC)方案编码所述数据部分。
8.如权利要求7所述的方法,还包括:
在所述三维非易失性NAND存储器中存储所述两个或更多数据部分的组和所述冗余数据;
随后从所述三维非易失性NAND存储器读取所述两个或更多数据部分的组的第一数据部分;
尝试使用ECC解码来解码所述读取的第一数据部分;
确定所述读取的第一数据部分不能由ECC校正;以及
作为回应,从所述冗余数据和除了所述第一部分以外的所述两个或更多数据部分的组计算所述第一数据部分。
9.如权利要求1所述的方法,其中所述两个或更多数据部分由3或4个数据部分组成,所述3或4个数据部分经历异或操作以计算所述冗余数据。
10.一种三维非易失性NAND存储器系统,包括:
多个单独地可擦除块的存储器单元,单独的块包含沿着每个位线的多个垂直的NAND串,所述多个垂直的NAND串的每个由如下字线服务,所述字线被连接到所述多个垂直的NAND串中的其他垂直的NAND串的字线;
冗余计算电路,其从数据部分的组计算冗余数据,使得在所述组中的任何数据部分能够从在所述组中的其他数据部分和所述冗余数据被再现;以及
数据选择电路,其根据数据部分的物理位置选择数据部分以形成用于计算冗余数据的组,使得在组中没有两个部分被分配到连接在一起的字线。
11.如权利要求10所述的三维非易失性NAND存储器系统,其中所述数据选择电路还被配置成根据数据部分的物理位置选择数据部分以形成用于计算冗余数据的组,使得在组中没有两个部分被分配到在块中的相邻的串组。
12.如权利要求10所述的三维非易失性NAND存储器系统,其中所述数据选择电路根据数据部分的物理位置选择用于计算冗余数据的数据部分,使得选择的部分来自由至少一个中间的字线垂直地分开的未连接的字线。
13.如权利要求10所述的三维非易失性NAND存储器系统,其中所述冗余计算电路是异或(XOR)电路。
14.如权利要求10所述的三维非易失性NAND存储器系统,还包括ECC电路。
15.如权利要求10所述的三维非易失性NAND存储器系统,还包括专用于存储冗余数据的附加的擦除块。
16.如权利要求10所述的三维非易失性NAND存储器系统,其中单独的擦除块包含冗余数据和其他数据的混合。
17.一种操作三维非易失性NAND存储器的方法,其中单独的块包含连接到每个位线的多个NAND串,并且其中沿着在块中的位线的不同的串的字线被连接在一起,包括:
配对相邻的NAND块,使得一对NAND块中的未选择的NAND块在访问所述一对NAND块中的选择的NAND块时经历一组升压电压;以及
应用用于选择数据部分的组以用于计算冗余数据的选择方案,从不同的块中选择一组中的每个数据部分,所述不同的块不与包含在所述组中的数据的任何其他部分的任何块配对。
18.如权利要求17所述的方法,还包括:
在所述三维非易失性NAND存储器阵列中存储所述数据部分之前根据ECC方案编码所述数据部分;
为数据部分的每个组计算冗余数据;
在所述三维非易失性NAND存储器中存储所述数据部分和所述冗余数据;
随后从所述三维非易失性NAND存储器读取一数据部分;以及
响应于确定所述读取的第一数据部分不能由ECC校正,从所述冗余数据的和除了所述部分以外的数据部分计算第一数据部分。
19.如权利要求18所述的方法,其中在根据ECC方案编码所述数据部分之前执行所述冗余数据的计算。
20.如权利要求18所述的方法,其中所述冗余数据的计算由应用于所述数据部分的组的异或操作来执行。
21.一种三维非易失性NAND存储器系统,包括:
多个单独地可擦除块的存储器单元,单独的块包含沿着每个位线的多个垂直的NAND串,所述多个垂直的NAND串的每个由如下字线服务,所述字线被连接到所述多个垂直的NAND串中的其他垂直的NAND串的字线;
块选择电路,其同时将成对的相邻的块连接到全局字线,连接到第一全局字线的选择的块和未选择的块,所述未选择的块与所述选择的块配对并且连接到第二全局字线;
冗余计算电路,其从数据部分的组计算冗余数据,使得任何数据部分能够从在所述组中的其他数据部分和所述冗余数据被再现;以及
数据选择电路,其根据数据部分的物理位置选择数据部分以形成用于计算冗余数据的组,使得在组中没有两个部分被分配到相同的块、或者被连接到形成一对的相邻的块。
22.如权利要求21所述的三维非易失性NAND存储器系统,其中所述冗余计算电路包含异或电路,所述异或电路从所述数据部分的组计算异或数据。
23.如权利要求21所述的三维非易失性NAND存储器系统,还包括ECC电路。
24.如权利要求21所述的三维非易失性NAND存储器系统,其中所述数据部分的每个表示相应的块的所有数据,并且其中被选择为形成组的数据部分被选择,使得与所述数据部分相应的所述块中没有一个块共享块选择电路。
25.一种操作三维非易失性NAND存储器的方法,其中单独的块包含连接到每个位线的多个NAND串,并且其中沿着位线的不同的串的字线被连接在一起,所述方法包括:
接收要存储在所述三维非易失性NAND存储器阵列中的数据部分;
将所述数据部分分配给在所述三维非易失性NAND存储器阵列中的用于存储的物理位置,分配给位置的单独部分被如下来定义:(1)块、(2)服务于所述块的多个位线、(3)从连接到在所述块中的所述多个位线的多个串组中选择的一个串组、以及(4)耦合到所述串组的字线;
选择用于计算冗余数据的两个或更多数据部分的组,所述两个或更多数据部分根据它们分配的物理位置来被选择,使得所述两个或更多数据部分都不被分配给在块中的相邻的串组;以及
为所述两个或更多数据部分的组计算冗余数据,所述冗余数据从所述两个或更多数据部分的组来计算,使得所述两个或更多部分中的任何单独部分能够从所述冗余数据和除了所述单独部分以外的所述两个或更多数据部分的组的部分来计算。
26.如权利要求25所述的方法,还包括在一个串组中的物理位置处存储所述冗余数据,使得所述两个或更多数据部分都不被分配到相邻的串组。
27.如权利要求25所述的方法,其中所述计算所述冗余数据由应用于所述两个或更多数据部分的组的异或(XOR)操作来执行。
28.如权利要求25所述的方法,其中所述选择两个或更多数据部分的组只选择被分配到所述单独的块的字线的部分,所述单独的块的字线由至少一个中间的字线垂直地分开。
29.如权利要求25所述的方法,还包括在沿着如下字线的物理位置处存储所述冗余数据,所述字线被至少一个中间的字线与任何字线垂直地分开,所述组的部分沿着所述任何字线被存储。
30.如权利要求25所述的方法,还包括在所述三维非易失性NAND存储器阵列中存储所述数据部分之前根据误差校正编码(ECC)方案编码所述数据部分。
31.如权利要求30所述的方法,还包括:
在所述三维非易失性NAND存储器中存储所述两个或更多数据部分的组和所述冗余数据;
随后从所述三维非易失性NAND存储器读取所述数据的组的第一数据部分;
尝试使用ECC解码来解码所述读取的第一数据部分;
确定所述读取的第一数据部分不能由ECC校正;以及
作为回应,从所述冗余数据和除了所述第一部分以外的所述两个或更多数据部分的组计算所述第一数据部分。
32.如权利要求25所述的方法,其中所述两个或更多数据部分由3或4个数据部分组成,所述3或4个数据部分经历异或操作以计算所述冗余数据。
33.一种三维非易失性NAND存储器系统,包括:
多个单独地可擦除块的存储器单元,单独的块包含沿着每个位线的多个垂直的NAND串,所述多个垂直的NAND串的每个由如下字线服务,所述字线被连接到所述多个垂直的NAND串中的其他垂直的NAND串的字线;
冗余计算电路,其从数据部分的组计算冗余数据,使得在所述组中的任何数据部分能够从在所述组中的其他数据部分和所述冗余数据被再现;以及
数据选择电路,其根据数据部分的物理位置选择数据部分以形成用于计算冗余数据的组,使得在组中没有两个部分被分配到在块中的相邻的串组。
34.如权利要求33所述的三维非易失性NAND存储器系统,其中所述数据选择电路根据数据部分的物理位置选择用于计算冗余数据的数据部分,使得选择的部分来自由至少一个中间的字线垂直地分开的未连接的字线。
35.如权利要求33所述的三维非易失性NAND存储器系统,其中所述冗余计算电路是异或(XOR)电路。
36.如权利要求33所述的三维非易失性NAND存储器系统,还包括ECC电路。
37.如权利要求33所述的三维非易失性NAND存储器系统,还包括专用于存储冗余数据的附加的擦除块。
38.如权利要求33所述的三维非易失性NAND存储器系统,其中单独擦除块包含冗余数据和其他数据的混合。
CN201480021395.1A 2013-06-03 2014-05-02 用于在三维非易失性存储器中的冗余计算的数据的选择 Expired - Fee Related CN105122372B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/908,905 2013-06-03
US13/908,905 US9183086B2 (en) 2013-06-03 2013-06-03 Selection of data for redundancy calculation in three dimensional nonvolatile memory
PCT/US2014/036545 WO2014197144A1 (en) 2013-06-03 2014-05-02 Selection of data for redundancy calculation in three dimensional nonvolatile memory

Publications (2)

Publication Number Publication Date
CN105122372A CN105122372A (zh) 2015-12-02
CN105122372B true CN105122372B (zh) 2019-07-05

Family

ID=50896555

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480021395.1A Expired - Fee Related CN105122372B (zh) 2013-06-03 2014-05-02 用于在三维非易失性存储器中的冗余计算的数据的选择

Country Status (5)

Country Link
US (2) US9183086B2 (zh)
KR (1) KR102091902B1 (zh)
CN (1) CN105122372B (zh)
TW (1) TWI625728B (zh)
WO (1) WO2014197144A1 (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9171620B2 (en) 2012-11-29 2015-10-27 Sandisk Technologies Inc. Weighted read scrub for nonvolatile memory
KR20150037165A (ko) * 2013-09-30 2015-04-08 에스케이하이닉스 주식회사 반도체 메모리 소자
US9691473B2 (en) 2015-09-22 2017-06-27 Sandisk Technologies Llc Adaptive operation of 3D memory
US9401216B1 (en) 2015-09-22 2016-07-26 Sandisk Technologies Llc Adaptive operation of 3D NAND memory
US9996417B2 (en) * 2016-04-12 2018-06-12 Apple Inc. Data recovery in memory having multiple failure modes
US9911500B2 (en) * 2016-04-18 2018-03-06 Sandisk Technologies Llc Dummy voltage to reduce first read effect in memory
US10248515B2 (en) 2017-01-19 2019-04-02 Apple Inc. Identifying a failing group of memory cells in a multi-plane storage operation
US10762967B2 (en) 2018-06-28 2020-09-01 Apple Inc. Recovering from failure in programming a nonvolatile memory
US10755787B2 (en) 2018-06-28 2020-08-25 Apple Inc. Efficient post programming verification in a nonvolatile memory
US11132253B2 (en) 2018-12-06 2021-09-28 Micron Technology, Inc. Direct-input redundancy scheme with dedicated error correction code circuit
US10936455B2 (en) 2019-02-11 2021-03-02 Apple Inc. Recovery of data failing due to impairment whose severity depends on bit-significance value
US10915394B1 (en) 2019-09-22 2021-02-09 Apple Inc. Schemes for protecting data in NVM device using small storage footprint
US11036582B2 (en) 2019-09-27 2021-06-15 Western Digital Technologies, Inc. Uncorrectable error correction code (UECC) recovery time improvement
DE102020120488A1 (de) 2019-12-20 2021-06-24 Taiwan Semiconductor Manufacturing Co. Ltd. Verfahren zur nachschlagtabellenfreien speicherreperatur
US11367500B2 (en) 2019-12-20 2022-06-21 Taiwan Semiconductor Manufacturing Company, Ltd. Method for LUT-free memory repair
US11042432B1 (en) * 2019-12-20 2021-06-22 Western Digital Technologies, Inc. Data storage device with dynamic stripe length manager
US11422886B2 (en) * 2020-01-09 2022-08-23 Microsoft Technology Licensing, Llc Die level data redundancy in solid state storage devices
US11550657B1 (en) 2021-09-01 2023-01-10 Apple Inc. Efficient programming schemes in a nonvolatile memory

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5671239A (en) * 1993-09-20 1997-09-23 Fujitsu Limited Semiconductor memory of xN type having error correcting circuit by parity
CN102084426A (zh) * 2008-06-19 2011-06-01 欧洲航空防务及航天公司Eads法国 用于存储器的检测和纠正错误,存储器的位状态具有不同的错误抗力

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5095344A (en) 1988-06-08 1992-03-10 Eliyahou Harari Highly compact eprom and flash eeprom devices
US5200350A (en) 1988-11-10 1993-04-06 Texas Instruments Incorporated Floating-gate memory array with silicided buried bitlines
US5238855A (en) 1988-11-10 1993-08-24 Texas Instruments Incorporated Cross-point contact-free array with a high-density floating-gate structure
US5070032A (en) 1989-03-15 1991-12-03 Sundisk Corporation Method of making dense flash eeprom semiconductor memory structures
US5343063A (en) 1990-12-18 1994-08-30 Sundisk Corporation Dense vertical programmable read only memory cell structure and processes for making them
US5663901A (en) 1991-04-11 1997-09-02 Sandisk Corporation Computer memory cards using flash EEPROM integrated circuit chips and memory-controller systems
US5313421A (en) 1992-01-14 1994-05-17 Sundisk Corporation EEPROM with split gate source side injection
US6222762B1 (en) 1992-01-14 2001-04-24 Sandisk Corporation Multi-state memory
US5315541A (en) 1992-07-24 1994-05-24 Sundisk Corporation Segmented column memory array
KR0169267B1 (ko) 1993-09-21 1999-02-01 사토 후미오 불휘발성 반도체 기억장치
US5661053A (en) 1994-05-25 1997-08-26 Sandisk Corporation Method of making dense flash EEPROM cell array and peripheral supporting circuits formed in deposited field oxide with the use of spacers
US6475846B1 (en) 1995-05-18 2002-11-05 Texas Instruments Incorporated Method of making floating-gate memory-cell array with digital logic transistors
US5903495A (en) 1996-03-18 1999-05-11 Kabushiki Kaisha Toshiba Semiconductor device and memory system
US5768192A (en) 1996-07-23 1998-06-16 Saifun Semiconductors, Ltd. Non-volatile semiconductor memory cell utilizing asymmetrical charge trapping
US6768165B1 (en) 1997-08-01 2004-07-27 Saifun Semiconductors Ltd. Two bit non-volatile electrically erasable and programmable semiconductor memory cell utilizing asymmetrical charge trapping
US20050283566A1 (en) * 2003-09-29 2005-12-22 Rockwell Automation Technologies, Inc. Self testing and securing ram system and method
US7594135B2 (en) * 2003-12-31 2009-09-22 Sandisk Corporation Flash memory system startup operation
KR100687424B1 (ko) * 2005-08-29 2007-02-26 주식회사 하이닉스반도체 비휘발성 메모리 장치
KR100706816B1 (ko) * 2006-03-10 2007-04-12 삼성전자주식회사 프로그램 속도를 향상시킬 수 있는 불휘발성 메모리 장치및 그것의 프로그램 방법
US7733720B2 (en) * 2007-11-16 2010-06-08 International Business Machines Corporation Method and system for determining element voltage selection control values for a storage device
EP2239852A1 (en) * 2009-04-09 2010-10-13 Thomson Licensing Method and device for encoding an input bit sequence and corresponding decoding method and device
KR101635504B1 (ko) * 2009-06-19 2016-07-04 삼성전자주식회사 3차원 수직 채널 구조를 갖는 불 휘발성 메모리 장치의 프로그램 방법
US8427874B2 (en) * 2010-04-30 2013-04-23 SanDisk Technologies, Inc. Non-volatile memory and method with even/odd combined block decoding
US8198672B2 (en) 2010-06-30 2012-06-12 SanDisk Technologies, Inc. Ultrahigh density vertical NAND memory device
US8463991B2 (en) * 2010-09-28 2013-06-11 Pure Storage Inc. Intra-device data protection in a raid array
US8472257B2 (en) 2011-03-24 2013-06-25 Sandisk Technologies Inc. Nonvolatile memory and method for improved programming with reduced verify
KR101762828B1 (ko) * 2011-04-05 2017-07-31 삼성전자주식회사 불휘발성 메모리 장치 및 불휘발성 메모리 장치의 동작 방법
KR101814476B1 (ko) * 2011-07-15 2018-01-05 삼성전자주식회사 비휘발성 메모리 장치 및 그 구동 방법
KR101816642B1 (ko) * 2011-07-28 2018-01-10 삼성전자주식회사 에러 정정 회로, 이를 포함하는 비휘발성 메모리 장치 및 이의 구동 방법
US8897070B2 (en) 2011-11-02 2014-11-25 Sandisk Technologies Inc. Selective word line erase in 3D non-volatile memory
US8830717B2 (en) 2012-11-29 2014-09-09 Sandisk Technologies Inc. Optimized configurable NAND parameters
US8891303B1 (en) 2014-05-30 2014-11-18 Sandisk Technologies Inc. Method and system for dynamic word line based configuration of a three-dimensional memory device
US8868825B1 (en) * 2014-07-02 2014-10-21 Pure Storage, Inc. Nonrepeating identifiers in an address space of a non-volatile solid-state storage

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5671239A (en) * 1993-09-20 1997-09-23 Fujitsu Limited Semiconductor memory of xN type having error correcting circuit by parity
CN102084426A (zh) * 2008-06-19 2011-06-01 欧洲航空防务及航天公司Eads法国 用于存储器的检测和纠正错误,存储器的位状态具有不同的错误抗力

Also Published As

Publication number Publication date
US20140359398A1 (en) 2014-12-04
WO2014197144A1 (en) 2014-12-11
TWI625728B (zh) 2018-06-01
KR20160026842A (ko) 2016-03-09
KR102091902B1 (ko) 2020-03-20
US9183086B2 (en) 2015-11-10
US20140359400A1 (en) 2014-12-04
CN105122372A (zh) 2015-12-02
TW201503138A (zh) 2015-01-16
US9092363B2 (en) 2015-07-28

Similar Documents

Publication Publication Date Title
CN105122372B (zh) 用于在三维非易失性存储器中的冗余计算的数据的选择
CN108108272B (zh) 三维存储器的适应性操作
US9015561B1 (en) Adaptive redundancy in three dimensional memory
US9792175B2 (en) Bad column management in nonvolatile memory
US9136022B2 (en) Selection of data for redundancy calculation by likely error rate
US8972675B2 (en) Efficient post write read in three dimensional nonvolatile memory
CN107112044B (zh) 多芯片双写入
US8902647B1 (en) Write scheme for charge trapping memory
US9208023B2 (en) Systems and methods for scheduling post-write read in nonvolatile memory
WO2016069126A1 (en) Read scrub with adaptive read counter management
US8964467B1 (en) Systems and methods for partial page programming of multi level cells
WO2015034639A1 (en) Bad block reconfiguration in 3d nand nonvolatile memory

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: texas

Applicant after: DELPHI INT OPERATIONS LUX SRL

Address before: texas

Applicant before: Sandisk Corp.

COR Change of bibliographic data
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20190705

Termination date: 20200502