CN116868270A - 用于改进存储器的ecc操作的方法及系统 - Google Patents
用于改进存储器的ecc操作的方法及系统 Download PDFInfo
- Publication number
- CN116868270A CN116868270A CN202180094780.9A CN202180094780A CN116868270A CN 116868270 A CN116868270 A CN 116868270A CN 202180094780 A CN202180094780 A CN 202180094780A CN 116868270 A CN116868270 A CN 116868270A
- Authority
- CN
- China
- Prior art keywords
- memory
- cells
- parity
- ecc
- array
- 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.)
- Pending
Links
- 230000015654 memory Effects 0.000 title claims abstract description 237
- 238000000034 method Methods 0.000 title claims abstract description 75
- 238000012937 correction Methods 0.000 claims abstract description 106
- 238000012360 testing method Methods 0.000 claims description 9
- 238000004378 air conditioning Methods 0.000 claims description 8
- 238000005259 measurement Methods 0.000 claims description 8
- 230000008859 change Effects 0.000 claims description 6
- 230000007547 defect Effects 0.000 description 22
- 238000005516 engineering process Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 12
- 230000032683 aging Effects 0.000 description 7
- 230000007423 decrease Effects 0.000 description 7
- 230000008878 coupling Effects 0.000 description 6
- 238000010168 coupling process Methods 0.000 description 6
- 238000005859 coupling reaction Methods 0.000 description 6
- 208000011580 syndromic disease Diseases 0.000 description 6
- 238000001514 detection method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000036541 health Effects 0.000 description 4
- 230000009467 reduction Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 3
- 206010011906 Death Diseases 0.000 description 2
- 230000001427 coherent effect Effects 0.000 description 2
- 230000001351 cycling effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001364 causal effect Effects 0.000 description 1
- 150000004770 chalcogenides Chemical class 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/52—Protection of memory contents; Detection of errors in memory contents
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/56—External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
- G11C29/56008—Error analysis, representation of errors
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本公开涉及一种用于操作存储器胞元阵列的方法,所述方法包括以下步骤:将用户数据存储于所述存储器阵列的多个存储器胞元中;将与所述用户数据相关联的奇偶校验数据存储于所述存储器阵列的奇偶校验胞元中,其中所使用奇偶校验胞元的数目基于所述存储器胞元的状态来选择且与选定错误校正码(ECC)校正能力有关;及对所述多个存储器胞元执行ECC操作,所述ECC校正能力是基于所使用奇偶校验胞元的所述选定数目。本文中还公开相关存储器装置及系统。
Description
技术领域
本公开大体上涉及存储器胞元阵列的管理及操作,且更特定来说,涉及用于改进具有ECC保护的存储器的性能的方法及系统。
背景技术
存储器装置用于许多电子系统中,例如移动电话、个人数字助理、膝上型计算机、数字相机及类似者。各种类型的存储器用于存储器装置中,包含随机存取存储器(RAM)、只读存储器(ROM)、动态RAM(DRAM)、同步动态RAM(SDRAM)、铁电RAM(FeRAM)、磁性RAM(MRAM)、电阻式RAM(RRAM)、快闪存储器、相变存储器(PCM)等等。存储器装置可为易失性的或非易失性的。非易失性存储器在电力关断时留存其内容,使其成为存储器装置中用于存储将在系统断电重启之后检索的信息的良好选择。特定来说,非易失性存储器胞元可甚至在不存在外部电源的情况下维持其存储逻辑状态达延长时段。
通过编程存储器装置的不同状态而存储信息。举例来说,二进制装置具有两个状态,其通常通过逻辑“1”或逻辑“0”表示。在其它系统中,可存储多于两个状态。为存取所存储的信息,存储器装置的组件可读取或感测存储状态。为存储信息,存储器装置的组件可写入或编程逻辑状态。
改进存储器装置可包含增加存储器胞元密度、增加读取/写入速度、增加可靠性、增加数据保留、减少制造成本、缩放到小于传统装置以及减少功率消耗。
归因于例如存取次数、制造过程质量、环境因素及类似者的各种因素,存储器胞元在其寿命周期期间具有不同物理及电特性。错误校正码(ECC)通常根据存储器装置的胞元的定义状态(例如,胞元的寿命终止可靠性)进行校准,且因此通常以其最高校正功率使用。因此,通常存在过度功率消耗。因此,可期望在存储器装置的整个寿命期间改进功率消耗性能。
附图说明
图1是包括可根据本公开操作的存储器装置的系统的示意性框图;
图2是根据本公开的实施例编码的用户数据型式的实例;
图3展示根据本公开的实施例的选择码字中的数个奇偶校验胞元的实例;
图4A及4B是展示作为根据本公开的技术的结果的功率消耗相对于时间的曲线图;
图5是根据本公开的实施例的方法的步骤的流程图;
图6A及6B是表示根据不同存储器技术的基于使用寿命计数器选择ECC保护等级的技术的流程图;
图7是表示基于经计数错误频率选择ECC保护等级的技术的流程图;
图8示意性地展示经受测试操作的存储器阵列的单独部分;及
图9A及9B是表示经实施ECC保护等级选择技术的成本相对于阵列的胞元的老化的示意性示范性曲线图。
具体实施方式
参考图式,本文中将公开存储器胞元的改进操作的方法及系统。
在以下详细描述中,陈述许多具体细节来提供对所主张标的物的透彻理解。然而,所属领域的技术人员将了解,可在无这些具体细节的情况下实践所主张标的物。在其它例子中,尚未详细描述所属领域的一般技术人员将已知的方法、设备及/或系统以免混淆所主张标的物。
非易失性存储器在电力关断时留存其内容,使其成为用于存储在系统断电重启之后检索的信息的良好选择。快闪存储器是一种类型的非易失性存储器,其留存所存储信息且其特征在于极快存取时间。此外,其可以块而非一次一个字节进行擦除。存储器的每一可擦除块包括布置成行及列的矩阵的多个非易失性存储器胞元。每一胞元耦合到存取线及/或数据线。通过操纵存取线及数据线上的电压而编程及擦除胞元。存取电路系统可区分存储器胞元的不同逻辑状态。举例来说,就存储器读取来说,存取电路系统将具有特定量值及极性的电压脉冲施加到存取线,此导致专用感测电路系统可检测的电响应。检测电响应可包含(例如)检测以下一或多者:跨阵列的给定存储器胞元的端子的电压降(例如,阈值电压)、通过给定存储器胞元的电流及给定存储器胞元的阈值事件。
在本公开中,术语“耦合”可涉及直接或间接地物理、电及/或通信连接的元件,且在本文中可与术语“连接”互换使用。物理耦合可包含直接接触。电耦合包含允许组件之间的电流动及/或信令的接口或互连。通信耦合包含使组件能够交换数据的连接,包含有线及无线连接。
图1是根据本公开的示范性实施例的包括存储器装置100的系统1000的示意性高级框图,此存储器装置100经编程以执行下文公开的ECC技术。
存储器装置100可为(例如)固态硬盘(SSD)且可包含存储器区段101、控制器102及主机接口103。存储器区段101不限于特定架构且可包含不同类型的存储器。
控制器102可经由多个通道耦合到主机接口103及存储器区段101且可用于在存储器区段101与主机110之间传送数据。主机接口103可呈标准化接口的形式。举例来说,当存储器装置100用于计算系统中的数据存储时,主机接口103可为串行高级附接技术(SATA)、外围组件互连高速(PCIe)或通用串行总线(USB)以及其它连接器及接口。一般来说,主机接口103可提供用于在存储器装置100与主机110之间传递控制、地址、数据及其它信号的接口。
控制器102可包含嵌入式固件且经调适以在内部管理及控制存储器区段101的操作。控制器102可与存储器区段101通信以控制数据读取、写入及擦除操作以及其它操作。举例来说,控制器102可包含用于控制对存储器区段101的存取及/或用于促进主机110与所述存储器区段101之间的数据传送的呈硬件及/或固件(例如,一或多个集成电路)及/或软件形式的数个组件。
因此,存储器控制器102表示例如响应于主机110(其通常可为非易失性存储器的外部管理系统)的命令而起作用的装置的控制逻辑。如下文中将公开,在一个实施例中,即使本公开不受限于特定架构,存储器控制器102也可实施于主机110中,特定来说,实施为主机处理器110'的部分。
如关于图1公开,存储器控制器102可通过输入/输出IO接收用户数据。多条信号线耦合存储器控制器102与存储器区段101。举例来说,此类信号线可包含时钟、命令/地址及写入数据(DQ)、读取DQ及零或更多条其它信号线。因此,存储器控制器102可经由适合总线可操作地耦合到存储器区段101。
存储器装置100还可包括其它组件(未展示),例如耦合到控制器102的处理器单元、天线、与主机装置110的另外连接构件及类似者。在任何情况中,本公开不受限于存储器装置100的特定配置。
此外,控制器102还可包含与其其它单元可操作地耦合的其自身的存储器区段(未展示)。在任何情况中,本公开不受限于控制器102的特定配置。
存储器装置100可为经配置以耦合到主机装置110的便携式装置。然而,在图式中未展示的其它实施例中,存储器装置100还可嵌入一或多个主机装置内。主机110可为例如个人计算机、平板计算机、智能电话、服务器或类似者。主机110可包含系统主板及/或背板且可包含数个存储器存取装置(例如,数个处理器)。
在实施例中,控制器102包含错误校正码(ECC)单元104(还被称为ECC引擎),其经配置以根据下文中描述的技术操作。
根据本公开的实施例,ECC单元104可包含检测及校正数个位错误的错误校正电路系统。ECC单元104不限于电路系统(例如,硬件)实施方案。例如,可在硬件、固件及/或软件中实施ECC单元104。
可通过例如专用集成电路(ASIC)的离散组件或通过反映由控制器102内的电路系统提供的功能性的组件具体实施ECC单元104,所述电路系统不一定具有与控制器102的其它部分分离的离散物理形式。尽管说明为控制器102内的组件,但ECC单元104可在控制器102外部或可具有定位于控制器102内的数个组件及定位于控制器102外部的数个组件,其中本公开不受限于特定硬件架构。在数个实施例中,ECC单元104可包含单独编码及解码组件。一般来说,存储器装置100因此包括操作单元,其是耦合到控制器102的ECC引擎。
换句话说,可如下文公开般编程的ECC单元104的错误检测/校正电路系统可包含硬件逻辑以实施ECC以检测发生于从存储器区段101读取的数据中的错误。在一个实施例中,错误检测/校正电路系统还校正错误(直到基于所实施ECC码的特定错误率)。
存储器装置100的存储器区段101可为包含存储器胞元阵列的快闪存储器,举例来说,NAND存储器、NOR存储器、AND存储器及类似者。额外地或替代地,存储器区段101可包括位可变存储器胞元;举例来说,相变存储器(PCM)、铁电存储器(FeRAM)、磁性存储器(MRAM)、基于硫属化物的自选择存储器(SSM)等。在本公开的实施例中可采用任何种类的存储器。举例来说,本公开适用于非易失性及易失性存储器中的任一者或两者。
一般来说,存储器区段101可包括存储器胞元阵列101'。非易失性存储器可包括多个块,每一块在本文中用元件符号101”指示且包括定义数目个页面。为了简单起见,图1的实例中仅展示四个块101”。
存储器区段101表示存储器装置100的存储器资源。在一个实施例中,存储器胞元阵列101'经管理为经由字线(行)及位线(行内的个别位)控制来存取的数据列。存储器胞元阵列101'可经组织为单独通道、面及存储体,一般来说,组织成多个部分,如先前公开。通道是到存储器区段内的存储位置的独立控制路径。面是指跨多个存储器装置的共奇偶校验置(例如,不同装置内的相同行地址)。存储体是指存储器装置内的存储器位置的阵列。在一个实施例中,将存储体分成子存储体及用于子存储体的共享电路系统(例如,驱动器、信号线、控制逻辑)的至少一部分。将理解,存储器位置的通道、面、存储体、或其它组织、及组织的组合可与物理资源重叠。举例来说,相同物理存储器位置可作为特定存储体(其还可属于面)经由特定通道存取。因此,将以包含性而非排他性方式理解存储器资源的组织。
换句话说,根据本公开的实施例,存储器胞元阵列100'可被细分成多个部分,例如页面、单个块、块群组或甚至全部块(即,全部胞元),本发明不限于此。因此,存储器胞元可被分组(例如)成包含数个物理页面的数个块。数个块可包含于存储器胞元的平面中且阵列可包含数个平面。
实施例不限于特定类型的存储器阵列或阵列架构且本公开的技术可应用于若干存储器技术(例如,平面、交叉点、3D等)。
存储器区段101还可包括可操作地耦合到存储器胞元阵列101'的电路部分105。
在一个实施例中,电路部分105包含存取电路系统及感测电路系统以检测一或多个存储器胞元对施加读取电压的电响应。在一个实施例中,感测电路系统包含感测放大器。图1说明嵌入于存储器区段101中的电路部分105;然而,其它实施例可包含与存储器区段101分离的存取电路系统及/或感测电路系统。举例来说,存取电路系统及感测电路系统可包含于例如存储器控制器102的存储器控制器中。
此外,存储器装置100可包括经配置以考虑存储器胞元阵列101'的存储器胞元的状态且用于确定触发事件以激活ECC单元104的计数单元106。
更特定来说,计数单元106可包括第一计数器106'及第二计数器106”。第一计数器106'可经配置以考虑存储器胞元阵列101'(或其部分)的使用寿命,如下文中将公开。举例来说,根据下文公开的实施例,第一计数器106'可易于对存取次数,或刷新事件的数目,或通电事件的数目,或其组合进行计数。根据下文公开的实施例,第二计数器106”可经配置以对通过ECC单元104检测的错误数目进行计数。
在图1的实例中,即使其它架构是可能的且计数单元106还可在控制器102外部并连接到控制器102,计数单元106被描绘为集成到控制器102中。
此外,存储器装置100(特定来说,存储器区段101的存储器胞元阵列101')可包括易于存储操作信息以例如用于管理根据下文中公开的实施例的存储器阵列的非易失性区107。
在实施例中,存储器装置100还可包括感测单元108,所述感测单元包括可操作地耦合到存储器区段101且任选地耦合到控制器102的一或多个传感器。感测单元108可经配置以检测存储器胞元阵列101'或其部分的状态(例如,温度)。
通常,存储器装置100的特定架构可根据需求及/或环境变化而不限制本公开的范围。
主机110及存储器装置100可形成系统1000。如之前提及,主机装置110是根据本文中描述的任何实施例的计算装置,且可为膝上型计算机、桌面计算机、服务器、游戏或娱乐控制系统、扫描仪、复印机、打印机、路由或交换装置、嵌入式计算装置、或其它电子装置(例如智能电话)。主机110通常可为管理存储器区段101的系统,所述存储器区段可嵌入所述系统中或通常通过所述系统管理。因此,可通过外部控制器(即,嵌入主机110的处理器110'中的控制器,如先前公开)管理存储器装置100,使得ECC单元还可包含于所述外部控制器中。在此情况中,可能不存在存储器装置的控制器且存储器装置100(其可嵌入主机110中)将所需信息传达到外部控制器。
在一个实施例中,系统1000包含耦合到处理器110'的接口1010,其可表示需要较高带宽连接的系统组件及/或图形接口组件的较高速度接口或高吞吐量接口。图形接口介接到图形组件以向系统1000的用户提供视觉显示。在一个实施例中,图形接口基于存储于存储器装置中的数据或基于由处理器执行的操作或两者来产生显示。
系统还可包括通信耦合到主机或存储器装置(例如)以与其它系统连接的网络接口1020及/或经耦合以将电力提供到所述系统的电池。
根据本公开,ECC单元104可经配置以对存储于存储器区段101中的码字执行具有特定错误校正能力的ECC操作(错误的检测及/或校正),其中码字包含特定数目个奇偶校验位,如下文中将公开。
图2说明示范性用户数据型式图201。用户数据型式图201包含用户数据210a及经编码用户数据215a。在存储器胞元阵列的编程阶段中执行的编码过程220a可将用户数据210a(U1、…、Um)转换成经编码用户数据215a(E1、…、En)。经编码用户数据215a可存储于一组存储器胞元中,其可为例如图1的存储器区段101的存储器胞元。经编码用户数据215a的每一方框可对应于可展现逻辑状态1或逻辑状态0的存储器胞元。在本公开的实施例中,在编码过程220a期间,可将数个奇偶校验位添加到用户数据210a。经编码用户数据215a中的位计数可大于用户数据210a中的位计数(例如,如果添加一些位(例如,奇偶校验位),那么n大于m)。在已准确读取经编码用户数据215a之后,过程225可将经编码用户数据215a转换回成用户数据210a。
在实施例中,待读取的多个经编码位表示码字(CW)。码字可经编程以包含在读取阶段期间使用的各种信息。为保持流畅及简单描述,在下文中,将仅参考ECC相关信息。应理解,额外位可不包含严格的ECC相关信息。实例可包含加密位、加扰位、平衡或准平衡码的位(例如,以实现给定逻辑状态中的位的预定义百分比,或在其百分比范围内,例如50%的1或0)及/或其它用途额外位。
如先前提及,在将数字数据存储于非易失性存储器(例如图1的存储器胞元阵列101')中时,以解码器可识别并校正错误的方式对数据进行编码,即,通过添加数个奇偶校验位而对数据串进行编码。在将重建原始数据时,解码器检验经编码消息以针对任何错误进行检查。在某些实施例中,用户数据位的块经编码成为n个位的块(即,码字CW),如图2中展示。然而,各种编码方案是可能的。
在存储器阵列的使用寿命期间,与存储于存储器胞元中的数据相关联的位错误率(BER)基于例如(举例来说)对存储器胞元的存取次数、过程质量、环境(空间、电力供应电压、操作及存储温度等)及类似者的数个因素而演变。对于一些技术,BER通常在裸片寿命开始时较佳且在寿命结束前最差,而对于一些其它技术,与在裸片的寿命开始及结束前相比,BER可在一些循环之后较佳。
本公开提供定制BER的演变且在BER为低时启用较低ECC保护且在BER较高时增加所述保护的系统及方法。换句话说,本公开提供根据存储器阵列的胞元的状态精确地定义待应用于所述胞元的ECC校正能力(或ECC保护等级)的技术。在本公开的上下文中,胞元的“状态”意味着其操作条件或通常其健康状况。如上文提及,一存储器胞元或多个存储器胞元的状态通常可取决于数个当前及过去参数。本公开的原理可应用于若干种类型的易失性或非易失性存储器,其展示其存储器胞元的时变状态。
在编码方案的基础上,产生码字(过程220a),从而操纵用户数据位且添加数个奇偶校验位,所添加奇偶校验位的数目取决于ECC校正能力(待检测及校正的潜在错误越多,必需的奇偶校验位越多)。ECC单元104可根据选定ECC保护等级产生码字。根据本公开,ECC保护等级及额外奇偶校验位(其本质上是关联的)的数目可在操作中变化。基于解码方案,(例如)凭借图1的ECC单元104从用户及奇偶校验数据的经编码集合产生ECC校验子。ECC校验子取决于错误的存在及位置而改变。当检测到错误时,ECC单元104能够取决于且根据实施的校正能力校正所述错误。在一些情况中,可报告不可校正错误的存在(例如,其位置未知)。
因此,所使用奇偶校验位的数目及ECC校正能力本质上相互关联。在将数据编程到存储器中时,可选择所要ECC保护等级(校正能力)且分配对应数目个奇偶校验位用于存储奇偶校验信息。在回读时,根据ECC方案存取且解码码字(包含在编码阶段期间使用的用户数据及奇偶校验位)。具有给定最大校正能力的ECC引擎(例如,在硬件中实施)可以各自需要对应数目个奇偶校验位的不同校正能力操作。举例来说,在编码或解码中可分别针对更低或更高ECC保护等级而考虑更少或更多奇偶校验位;对应地,消耗更小或更高功率。
现参考图3,根据本公开的实施例,可根据存储器阵列的胞元的状态选择ECC保护等级。换句话说,ECC保护适用于存储器胞元健康状况且仅在必要时(即,在胞元的状态需要其时)增加。
如先前展示,在将用户数据(即,码字的有效负载内容)存储于存储器阵列的多个存储器胞元中时,奇偶校验数据也存储于与用户数据相关联的存储器阵列的奇偶校验胞元中。基于多个存储器胞元的状态选择所使用奇偶校验胞元的数目,此选定数目与ECC保护等级(例如,所要或选定ECC校正能力)有关。接着,基于选定数目个奇偶校验胞元(即,基于所存储奇偶校验位,其可根据胞元健康状况而变化)执行ECC操作。
更特定来说,在经定义最大数目与最小数目之间选择所使用奇偶校验胞元且未使用奇偶校验胞元的数目是最大经定义数目与奇偶校验胞元的使用数目之间的差,其中根据实施例,未写入也未感测未使用奇偶校验胞元(其适于存储对应于较高ECC校正能力的奇偶校验数据)。
如图3中展示,码字可包括对应于有效负载(因此,包含编码用户数据)的第一码字部分301及对应于奇偶校验数据的第二码字部分302。应注意,此区分可为任意的;事实上,编码过程(例如图2中的过程220a)可将用户数据及奇偶校验数据组合及混合,使得应将码字作为一个整体来考虑。
当需要最小保护时,可仅使用减少数目个奇偶校验胞元,如在码字300a中,其中仅使用指示为P1的胞元来存储奇偶校验位(例如,仅存储计算对应于ECC1的校验子S1的数个位,其中在一些实例中,ECC1可为具有1位的校正能力的错误校正码)。
当ECC保护已增加时,可使用增加数目个胞元,如在码字300b中,其中存储增加数目个奇偶校验位(P1及P3)以计算校验子S1及S3(例如,对应于ECC2,其中在一些实例中,ECC2可为具有2个位的校正能力的错误校正码)。
当保护已处于最大等级时,所使用奇偶校验胞元的数目已进一步增加,如在码字300c中,其中存储增加数目个奇偶校验位(P1、P3及P5)以计算校验子S1、S3及S5(例如,对应于ECC3,其中在一些实例中,ECC3可为具有3个位的校正能力的错误校正码)。观察到,码字部分302的单个块不必对应于单个胞元且还可对应于胞元群组,例如,其通常表示针对对应ECC保护等级计算校验子的位计数。应理解,虽然图3中描绘三个保护等级(例如,ECC1、ECC2及ECC3),但可设想任何数目。举例来说,具有较高(例如,N>3)错误校正能力的实施例及/或以根本无ECC保护为特征的实施例(例如,并未出于错误校正其的目的而将奇偶校验位添加到码字)是可能的。
因此,将ECC保护等级降低到所需最小值对应于减少所使用奇偶校验胞元的数目。
本公开提供定制BER的演变且在BER为低时启用较低ECC保护且在BER较高时增加所述保护的系统及方法。根据方法的实施例,用户数据经存储于存储器阵列的多个存储器胞元中,与用户数据相关联的奇偶校验数据经存储于存储器阵列的奇偶校验胞元中,且所使用奇偶校验胞元的数目基于存储器胞元的状态而选择且与选定错误校正码(ECC)校正能力有关。具有经定义最大错误校正能力(硬件或软件受限)的ECC引擎可操作到对应于奇偶校验胞元的所使用数目的不佳错误校正能力。换句话说,每当需要较低(或较高)ECC保护等级时,选择对应数目个奇偶校验胞元且将其用于存储奇偶校验信息,及/或反之亦然。在装置的使用寿命期间可动态地改变ECC校正能力;对应地,自适应地改变所使用奇偶校验胞元的数目以便允许ECC引擎以所要电平工作。方法还包括基于选定数目个所使用奇偶校验胞元,对多个存储器胞元执行ECC操作(具有对应错误保护等级)。
作为实例,在一些情况中,在阵列的寿命开始时,可使用ECC1,且在寿命结束时,可使用ECC3(且因此可使用增加数目个奇偶校验胞元)。然而,不同情况也是可能的,包含在寿命开始时需要最大ECC保护等级且在一些周期之后(例如,在老化之后或一般来说在使用存储器胞元之后)可降低ECC保护等级的情况。
未感测也未写入未使用奇偶校验胞元(例如,图3的码字部分302的交叉方框),从而导致降低功率消耗。换句话说,仅写入及/或感测经选择以存储奇偶校验数据的胞元,而未写入也未感测适于存储奇偶校验数据且对应于较高ECC校正能力(且当前未使用)的另外存储器胞元。
在ECC保护等级降低的情况下,因此使用较少胞元。因此,所得错误概率较低,这是因为未使用胞元未参与码字错误率(CWER)。此外,未使用胞元在较长时间内保持新鲜,且在一段时间后使用时将不太符合CWER。
因此,本公开的ECC技术规定,在使用较低ECC保护等级时,仅写入或感测必要胞元。作为非限制性实例,对于128个用户数据位,ECC1需要8个奇偶校验位(提供检测并校正128+8个位中的1个错误的能力),ECC2需要16个奇偶校验位(提供检测并校正128+16个位中的2个错误的能力),ECC3需要24个奇偶校验位(提供检测并校正128+24个位中的3个错误的能力)。使用ECC1而非ECC3避免管理10.5%的胞元。所使用胞元数目的减少对应于降低功率消耗,这是因为仅启用必要ECC电路系统,当需要较低ECC保护时,所述电路系统需要较少功率。
如参考图1观察,ECC电路系统可集成于存储器装置的控制器中,所述控制器经适当地编程以执行本公开的ECC技术。
此外,存储器胞元阵列的不同部分可具有不同状态及/或可展现不同缺陷密度。根据本公开的实施例,阵列的存储器胞元可被分组成多个部分,每一部分基于其存储器胞元的状态而被指派特定ECC保护等级。因此,取决于特定境况,不同部分可具有不同ECC保护等级以及相同保护等级。因此,阵列的“部分”是具有相同ECC保护等级的存储器胞元群组。以此方式,阵列可被分成其中ECC校正能力同调但可不同于另一部分的ECC校正能力的部分。
根据实施例,存储器部分可对应于内部细分,如同一存储体群组、存储体、区段或存储器的任何其它适合内部细分。此外,存储器部分还可对应于规范/主机细分,如同一缓冲器、页面,即,高级细分。在实施例中,整个存储器阵列在ECC校正能力方面可为同调的。
换句话说,一部分可对应于码字、存储体、存储体群组、阵列的区段、整个阵列、或甚至缓冲器、页面中的一者,且本公开不受胞元分组方式限制。
将阵列细分成可能具有不同ECC保护等级的若干部分更适合真实存储器装置。
图4A及4B是展示根据本公开的实施例的功率消耗(在Y轴上)相对于时间(在X轴上)的曲线图。应注意,尽管在X轴上表示时间,但本文中公开的概念不限于功率消耗随时间的演变,且实情是,其适用于可潜在地影响存储器胞元的位错误率的任何因素(例如,循环、耐久性、老化、暴露于高/低温、硬/软故障机制、电压漂移等;因此,时间仅为许多可能实例且应对应地广义解释图)。特定来说,在实例中,功率消耗的时间增加可对应于缺陷密度的增加。图4A展示ECC保护等级可在存储器阵列的寿命期间变化;明确来说,图4A是其中起始保护等级为低(例如,ECC1,对应于低功率消耗)的阵列的部分的实例,此保护等级基于缺陷密度(例如,位错误率)的增加而随时间增加。取决于所采用的存储器的特定技术,保护等级随时间降低的情境(图式中未展示)也是可能的。图4A的线401'表示以所使用奇偶校验胞元(例如,在ECC3的情况下的P1、P3及P5,如图3中描绘)及因此消耗功率计的现有技术平均成本,其始终处于最大电平,而根据本公开,平均功率成本可显著降低,这是因为在很长一段时间内,ECC保护等级并不处于最大电平(例如,当使用ECC1及/或ECC2时,分别仅需要P1或仅需要P1及P3奇偶校验胞元)。图4B表示将阵列划分成多个独立部分的情况。与图4A中一样,图4B的线401”表示以所使用奇偶校验胞元(例如,在ECC3的情况下的P1、P3及P5,如图3中描绘)及因此消耗功率计的现有技术平均成本,其始终处于最大电平。在图4B的情况中,每一阶状部402”对应于增加其ECC保护等级的单个部分,且平线区403”表示示范性初始条件,其中所有部分在持续时间内具有最小保护等级(例如,ECC1,仅需要P1奇偶校验胞元,即使最初未实施ECC的情境是可能的,其中根本不需要奇偶校验胞元)。在此实施例中,与现有技术线401”相比,高粒度确保较佳性能,如通过线404”表示,其是平均功率成本。因此,当增加粒度时,较小阶状部(对应于较小部分)是可能的,从而导致益处增加。
图4A及4B是展示起始ECC保护等级为低且接着随着缺陷密度增加而随时间增加的情况的实例。应注意,为改进图形表示,缺陷密度或BER在图4A及4B中被描绘为随时间线性增加的函数(例如,具有正斜率的线)。此并非典型情况且应理解,可考虑任何BER变动轮廓,无论线性或非线性。根据本公开,基于BER的变动(例如,在有必要这样做的任何时间)改变或调整ECC保护等级或校正能力,因此确保ECC引擎在任何情境下的最佳使用。替代地或额外地,取决于技术,起始ECC保护等级可在给定时刻(例如在寿命开始时)较高(例如,ECC3),且其可随时间降低(例如,到ECC2及/或ECC1),使得所述曲线图还可具有降低趋势。
在任何情况中,根据本公开,存储器经配置使得ECC校正能力基于其时变状态随着存储器胞元阵列的寿命而变化(根据特定技术提高或降低),其在功率消耗方面具有许多益处。
根据实施例,将与选定ECC校正能力有关的数据信息存储于存储器阵列的一或多个专用非易失性区中。换句话说,阵列包括经调适以存储与选定ECC校正能力(特定来说,阵列的每一部分的选定ECC保护等级)有关的数据信息的非易失性区。举例来说,参考图1,专用于存储所述信息的非易失性区可为存储器区段101的非易失性区107。
更特定来说,在将阵列细分成多个部分时,将与每一部分的选定ECC校正能力有关的相应数据信息存储于非易失性区(其可为单个区或还可细分成阵列的多个区)中。
在实施例中,接着,将此数据信息存储于查找表中,其中阵列的每一部分与其相应选定ECC校正能力相关联。因此,关于每一部分的ECC保护等级的信息可在含有所有存储器部分及其当前ECC保护等级的信息的查找表中传送,其简化此信息的读取。
在实施例中,码字本身可包括指示其当前ECC保护等级的信息,从而导致极端粒度。以此方式,任何特定码字可用与其相关联且与所述码字的选定ECC校正能力有关的额外信息位进行编码。在此实施例中,需要阵列的更多空间来存储关于每一码字的ECC保护等级的信息,但增加功率效益。
因此,管理各个部分中的码字的不同编码的若干方式是可能的,接着,将与每一部分的ECC保护等级有关的信息存储于阵列中。
图5是根据本公开的表示用于操作存储器胞元阵列的方法500的步骤的流程图。可通过硬件逻辑及电路系统执行所描述过程。举例来说,以下过程被描述为由存取电路系统、感测电路系统及ECC电路系统执行,如本文中公开。然而,其它实施例可包含适于执行过程的不同电路系统布置。
本公开的方法是一种用于改进具有ECC保护的存储器胞元的操作的方法。存取电路系统将数据写入到多个存储器胞元。举例来说,存取电路系统将逻辑0及逻辑1写入到多个存储器胞元,例如图1的存储器区段101中的存储器胞元。在一个实施例中,存取电路系统可通过施加具有负极性的编程脉冲而写入逻辑0且通过施加具有正极性的编程脉冲而写入逻辑1。还可采用相反惯例。取决于技术,可将不同编程脉冲施加到存储器胞元。在将数据写入到多个存储器胞元之后,存取电路系统可读取多个存储器胞元且ECC电路系统可验证错误的存在并校正所述错误。
更特定来说,在步骤510,将用户数据存储于存储器阵列的多个存储器胞元中,例如,存储于码字中。
在步骤520,基于多个存储器胞元的状态选择待使用奇偶校验胞元的数目,此数目与选定ECC校正能力有关。ECC引擎可以不同校正能力(例如,不同错误保护等级)操作,且保护等级中的每一者需要对应数目个奇偶校验位,例如,如上文参考图3说明。
在步骤530,将奇偶校验数据存储于选定数目个奇偶校验胞元中。奇偶校验数据可与用户数据相关联且可基于相关选定ECC校正能力进行计算。
最后,在步骤540,基于所使用奇偶校验胞元的选定数目,对多个存储器胞元执行ECC操作(验证/校正)。可使用选定ECC校正能力来执行ECC操作,例如,在程序操作期间对对应数目个奇偶校验数据进行编码,或存取适当数目个奇偶校验位且将其馈送到ECC引擎以在读取操作期间运用选定ECC校正能力对码字进行解码。
为确定阵列(或其部分)的状态,且因此为确定应何时(及如何)改变ECC保护等级,可实施若干技术或准则。
根据实施例,可由计数单元(例如图1的示范性存储器装置100的计数单元106)提供触发事件。更特定来说,如参考图1的实例公开,存储器装置100包括第一计数器106',其可经配置以考虑存储器胞元的使用寿命。第一计数器106'在本文中还被称为循环计数器且经配置以对阵列的部分的特定事件的发生进行计数。
在实施例中,第一计数器106'经配置以计数对存储器胞元的存取次数。然而,本公开不限于计数对存储器胞元的存取,且第一计数器106'还可经配置以对其它事件(例如刷新事件的数目或通电事件的数目或其组合)进行计数。在任何情况中,在此实施例中,基于第一计数器106'的值选择待用于定义适当ECC校正能力的奇偶校验胞元的数目(及因此所存储奇偶校验位的适当数目)。
第一计数器106'可为考虑存储器胞元的经过使用寿命的非易失性计数器,此信息即使在其关断事件之后还被维持在存储器中。
图6A及6B是用于基于第一计数器106'的值(即,基于此使用寿命计数器)选择ECC保护等级的流程图600a及600b。如先前提及,使用寿命事件可为对一部分的胞元的存取,以及许多其它事件。更特定来说,图6A表示其中ECC保护等级在阵列的寿命期间增加的情况600a,而图6B表示其中ECC保护等级在阵列的寿命期间减少的情况600b(例如,在一些周期之后展示较佳性能的存储器技术的情况下)。换句话说,ECC保护等级可取决于对特定技术的预期(其可映射于存储于存储器阵列中的专用查找表中)增加或减少。在一些情况(未展示)中,混合解决方案也是可能的。
更特定来说,方法600a可包括:初始化计数器(步骤610);在每一使用寿命事件使计数器递增(步骤620);比较第一计数器的值与预设阈值(步骤630a);及在其不等于也不大于此阈值时,从步骤620继续,而在其于或大于此阈值时,检查保护等级是否是最大值(步骤640a),且如果保护等级并非最大值,那么升高保护等级(步骤650a),而如果保护等级已处于其最大等级,那么停止(步骤660)。
类似地,方法600b可包括:初始化计数器(步骤610);在每一使用寿命事件使计数器递增(步骤620);比较第一计数器的值与预设阈值(步骤630b);及在其不等于也不大于此阈值时,从步骤620继续,而在其于或大于此阈值时,检查保护等级是否是最小值(步骤640b),且如果保护等级并非最小值,那么降低保护等级(步骤650a),而如果保护等级已处于其最小等级,那么停止(步骤660)。
换句话说,当表示使用或流逝使用寿命的计数器满足阈值时,ECC保护等级改变(例如,增加或减少),如图6A及6B中展示。因此,在此实施例中,第一计数器易于指示存储器胞元的状态(更特定来说,各个部分的存储器胞元的状态,使得可针对对应不同部分实施不同计数器)。举例来说,特定计数器与特定部分相关联以基于相应存储器胞元的特定使用来触发应用于相应部分的特定ECC校正能力的变动。用以选择ECC保护等级的此技术在本文中还被称为基于使用寿命的技术。
根据本公开的另一实施例,存储器装置还包括第二计数器,例如(举例来说)图1的第二计数器106”,其经配置以对通过ECC检测的错误数目进行计数,使得EEC保护等级决策基于此错误位频率计数器。
如在第一计数器106'(即,例如用于对存取次数进行计数的非易失性计数器)的情况中,在一些实例中,第二计数器106”还可为非易失性计数器。
更特定来说,在此实施例中,基于经计数错误频率(其作为第一计数器106'及第二计数器160”值的比率获取)来选择用于定义适当ECC校正能力的奇偶校验位的数目。
图7是表示基于经计数错误频率选择ECC保护等级的流程图700。
特定来说,每当通过当前实施ECC检测到错误时,使第二计数器106”的值递增。此外,每当使用寿命事件(例如,存取)通过第一计数器106'计数时(即,每当第一计数器106'递增时),计算第一计数器的值与第二计数器的值之间的比率,从而产生错误频率。接着,比较此比率与预设阈值。
举例来说,取决于具体采用的存储器技术,当错误频率大于阈值时,ECC等级保护增加,而当错误频率小于阈值时,ECC等级保护降低,或反之亦然。
换句话说,可基于计数错误频率(其作为第一计数器及第二计数器的内容的比率获取)来选择用于定义ECC保护等级的奇偶校验胞元的数目,第二计数器用于对通过当前ECC检测的错误数目进行计数。因此,在此实施例中,错误频率指示存储器胞元的状态。用以选择ECC保护等级的此技术在本文中还被称为基于缺陷率的技术,且其不仅受错误频率检测的限制,且可如下文展示般使用缺陷率的其它测量。
在实施例中,取决于在相同码字中检测到的错误数目(例如,1个、2个或3个),计数错误频率可被指派不同权重。
如先前提及,根据本公开,不同部分基于其状态而被独立地指派适当ECC保护等级。因此,根据实施例,每一部分可包括用于定义其状态的一或多个计数器(例如,第一计数器及第二计数器)。以此方式,不同计数器与阵列的不同相应部分相关联,每一计数器表示相应部分的相应累积值(例如存取次数、错误数目等),如上文公开。因此,在相应累积值等于或超过(或在其它实施例中,低于)阈值的情况下,对一或多个部分执行ECC保护等级变动,如参考图6A到6B及7所见。
还可通过主机或通过内部传感器更新计数器以便对阵列时间寿命进行计数,如下文将公开。
在任何情况中,本公开不受用以确定可何时改变ECC保护等级的特定准则的限制,且许多其它技术是可能的。
在一些实施例中,可基于存取操作期间的错误计数来选择较高保护等级。举例来说,检测到一个额外错误(例如,关于先前检测到的错误数目)可触发待应用的ECC保护等级的增加。在实际实例中,如果在存取码字时尚未检测到错误,那么ECC1保护等级是适当的(例如,一个错误的ECC校正能力);当第一次检测到错误时,可增加ECC保护等级以在后续存取操作中提供ECC2校正能力(对应地激活额外奇偶校验胞元,如上文参考图3到7说明)。类似地,当检测到第二错误时,ECC保护等级进一步增加(例如)到ECC3校正能力。
根据实施例,可在排序期间(例如)经由用于评估过程质量的测试机定义阵列的存储器胞元的初始状态。在此情况中,首先凭借测试机测试存储器阵列的至少一个部分的质量;在测试操作之后,基于所执行的质量测试将待用于定义所需ECC校正能力的适当数目个奇偶校验位指派给阵列的每一部分。换句话说,可使用测试评估以为每一部分指派适当起始保护等级。
图8示意性地展示经受测试操作的存储器阵列的单独部分(描绘四个单独部分)。四个单独部分可独立地经测试且在测试之后被指派不同起始ECC保护等级。以此方式,在测试(排序)期间,可取决于裸片的物理特性(例如,硅质量)分配复位ECC等级保护。举例来说,部分(0,0)可被指派起始ECC保护等级Lv1 0(其可对应于最小ECC校正能力,例如,ECC1);部分(0,y)可被指派起始ECC保护等级Lv1 1(其可对应于中间ECC校正能力,例如,ECC2);部分(x,0)可被指派起始ECC保护等级Lv1 0(例如,ECC1);且部分(x,y)可被指派起始ECC保护等级Lv1 3(其可对应于最大ECC校正能力,例如,ECC4)。其它部分(未展示)可被指派相应起始ECC保护等级。接着,在裸片寿命期间,可指派并改变ECC校正能力,例如如上文参考图6A到6B及7展示。
替代地或额外地,根据本公开的其它实施例,通过用户选择待用于定义ECC校正能力的奇偶校验胞元的数目。
还可基于耦合到存储器阵列的传感器(例如包含于感测单元108中的传感器)的信号选择ECC保护等级。换句话说,仍参考图1,存储器装置包括感测单元108中的一或多个传感器,其耦合到存储器区段101及控制器102。因此,控制器102可经配置以基于来自感测单元108的信号来选择待用于定义ECC校正能力的奇偶校验胞元的数目。
此外,根据另一实施例,基于感测放大器裕度测量来选择适合用于定义ECC校正能力的奇偶校验胞元的数目。换句话说,控制器可经配置以通过使用感测放大器(例如图1的电路部分105的感测放大器)来选择保护等级。
在此实施例中,基于多参考感测的保护等级决策确保在裕度变得过小时精确建立。可采用此方法来代替错误频率检测。在此情况中,图7的流程图基本上相同,但ECC保护等级的复位值可为无ECC而非ECC1。事实上,由于感测放大器可预测裕度损失,因此可降低平均ECC保护等级。
如先前提及,存储器装置可集成专用硬件(例如,集成于图1的ECC单元104中)以将ECC保护等级适当地指派给阵列的每一部分。
综上所述,取决于特定境况,改变ECC保护等级是基于若干触发事件,例如内部传感器、条件、检测器、特殊市场、过程质量、计数器。例如,特殊市场(例如汽车、航天等)可能需要较高ECC保护。
因此,ECC单元经编程以确保在简单性与缺陷率匹配之间进行权衡。图9A及9B展示经实施ECC选择算法的成本相对于阵列的胞元的老化的示意性示范性曲线图。应注意,尽管在X轴上表示老化,但此处公开的概念不限于成本演变相对于老化,且实情是,其适用于可潜在地影响存储器胞元的位错误率的任何因素(例如,流逝时间、循环、耐久性、暴露于高/低温、硬/软故障机制、电压漂移等;因此,老化仅为许多可能实例中的一者且应对应地广义解释图)。如图4A及4B所见,假设即使可能发生不同情境,缺陷密度(及因此所需ECC校正功率)也随着老化而增加。
更特定来说,参考图9A,线901'表示胞元的估计缺陷率趋势(基于随着老化增加的线性缺陷率或其它参数),而阶状部902'表示以通过使用基于使用寿命的技术来选择ECC保护等级(例如,通过对存取次数进行计数,如图6A及6B中通常描绘)所获取的占用面积计的成本趋势。因此,此算法基于估计缺陷率趋势(例如,可通过定义用于切换ECC保护等级的数目存取或通常使用寿命事件的阈值来获取估计缺陷率趋势)。另一方面,线903'表示存储器的实际缺陷率趋势且线904'表示ECC技术的成本,其基于实际测量而不仅基于其估计(例如,基于错误频率及/或感测放大器裕度测量或类似者)。因此,如果用于选择ECC保护等级的技术是基于缺陷率,那么优化操作,其较佳地适应实际趋势。
参考图9B,线901”、902”、903”及904”分别对应于图9A的线901'、902'、903'及904'。然而,在此情况中,在曲线图部分905”,实际缺陷率趋势甚至比估计线性案例预期的更差,使得基于使用寿命的技术将产生存储器的错误操作,而基于缺陷率的技术能够依以成本计的较佳平均性能遵循实际缺陷率趋势。
换句话说,因此,如果用于编程控制器且决定适当等级的算法是基于缺陷率且缺陷率趋势比预期更佳,那么优化ECC保护等级。事实上,减少以面积/功率/时间计的平均成本,如图9A中展示。此外,如果缺陷率比预期更差,那么ECC保护等级可过低,如图9B中展示,使得适应性算法(例如,基于错误频率、感测放大器裕度测量等的技术)将ECC保护等级优化到实际缺陷率且改进可靠性。因此,适当保护等级算法减少平均成本且改进可靠性。
取决于特定应用,可选取用以选择待使用奇偶校验胞元的数目的一些或甚至全部所公开准则的混合物。举例来说,运用裕度测量的感测还可与错误频率测量相关联。
总之,本公开通过考虑阵列的特性的演变,而非强制使用最大保护(即,而非使ECC基于寿命终止可靠性,其始终使用最高ECC保护等级且使用专用于奇偶校验的全部存储器胞元)来提供多个存储器胞元的可选择ECC校正能力。有利地,降低ECC保护等级(例如,在BER对应较低时)允许减少与奇偶校验相关联的所使用存储器胞元的数目且因此降低功率消耗。
因此,ECC校正能力基于其时变状态在阵列的使用寿命内可变,使得ECC保护适应存储器胞元健康状况。根据本公开的实施例,ECC保护等级适应独立管理的阵列的特定部分的保护需求。部分尺寸可从ECC码字到裸片有所不同。事实上,一部分可对应于如同一存储体群组、存储体、区段或任何其它内部细分的内部细分,或可对应于如同缓冲器、页面的规范/主机细分,或可对应于其它有益尺寸。在任何情况中,部分越小,以功率消耗计的益处越高。
可感测/写入或未感测/写入未使用胞元。更特定来说,根据本公开,未感测也未写入未使用胞元,因此降低功率消耗。所得错误概率自动降低,这是因为所述未使用胞元未参与码字错误率(CWER)。未使用胞元在较长时间内保持新鲜,比其它胞元降级更少且在使用时符合CWER的程度降低。当接着使用所述先前未使用胞元时,其维持较高可靠性及较低BER。
因此,ECC保护等级仅在必要时增加,且可关断对应ECC硬件。
用于切换ECC保护等级的触发事件可为若干个且不限于特定技术,其可随着存储器技术改变。
根据示范性实施例,一种用于操作存储器胞元阵列的方法包括以下步骤:将用户数据存储于存储器阵列的多个存储器胞元中;将与用户数据相关联的奇偶校验数据存储于存储器阵列的奇偶校验胞元中,其中所使用奇偶校验胞元的数目基于多个存储器胞元的状态来选择且与对应选定ECC校正能力有关;及对多个存储器胞元执行ECC操作。在一些实例中,在经定义最小数目与经定义最大数目之间选择所使用奇偶校验胞元的数目。此ECC操作的ECC校正能力可基于所使用奇偶校验胞元的选定数目或反之亦然,例如,所使用奇偶校验胞元的选定数目可基于ECC校正能力。
根据实施例,本公开还涉及一种用于选择存储于存储器胞元阵列中的码字的ECC保护等级的方法,所述方法包括:将经编码用户数据存储于存储器阵列的多个存储器胞元中;每当发生一事件时使与存储器阵列的至少一个部分相关联的计数器的值递增;基于计数器的值,选择与(例如,存储于存储器阵列的部分中的)码字相关联的数个奇偶校验胞元,选定奇偶校验胞元的数目与对应ECC校正能力有关;及将奇偶校验数据存储于选定奇偶校验胞元中。本公开的全部特征还可应用于此示范性方法。
如果未明确指示,那么方法步骤不一定按照所公开序列。
本公开还涉及一种存储器装置,其包括包含多个存储器胞元的阵列及控制器,所述控制器经配置以:将用户数据存储于存储器阵列的多个存储器胞元中;定义用于存储奇偶校验数据的奇偶校验胞元的最大数目,奇偶校验胞元的最大数目对应于ECC校正能力(或校正功率或保护等级);例如基于存储用户数据的存储器胞元(例如,存储码字的有效负载的胞元)的当前状态在最大数目个奇偶校验胞元中选择实际上用于存储奇偶校验数据的奇偶校验胞元的数目;及根据阵列的存储器胞元的状态的变动改变所使用奇偶校验胞元的数目。所选择及使用奇偶校验胞元的数目可对应于选定ECC校正能力,且反之亦然。所使用奇偶校验胞元的数目包括在对应于最小ECC校正能力的最小数目与最大数目之间。通过可使用对应数目个选定奇偶校验胞元在若干保护等级模式中的一者中操作的ECC引擎提供可变ECC校正能力。
本公开还公开一种存储器装置,其包括包含多个存储器胞元的阵列及所述阵列的操作单元,其中所述操作单元经配置以:将用户数据存储于存储器阵列的多个存储器胞元中;将与用户数据相关联的奇偶校验数据存储于存储器阵列的奇偶校验胞元中,其中所使用奇偶校验胞元的数目例如基于多个存储器胞元的状态来选择且与对应ECC校正能力(或校正功率或保护等级)有关;及对多个存储器胞元执行ECC操作,ECC校正能力是基于所使用奇偶校验胞元的选定数目。
上文公开的全部特征还可应用于这些示范性存储器装置。
还公开一种包括主机装置及如上文的存储器装置的相关系统,所述系统包括(例如)通信耦合到所述存储器装置或主机的显示器、通信耦合到所述存储器装置或主机的网络接口及经耦合以向所述系统提供电力的电池中的任何者。
在先前详细描述中,参考形成其部分的随附图式,且其中通过说明展示特定实例。在图式中,相同元件符号贯穿若干视图描述基本上类似组件。可利用其它实例,且可在不脱离本公开的范围的情况下作出结构、逻辑及/或电变化。另外,应了解,图中提供的元件的比例及相对尺度希望说明本公开的实施例且不应被视为限制意义。
如本文中使用,“一(a/an)”或“数个”某物可是指此类事物中的一或多者。“多个”某物意指两个或更多个。如本文中使用,术语“耦合”可包含无中介元件的电耦合、直接耦合及/或直接连接(例如,通过直接物理接触)或具有中介元件的间接耦合及/或连接。术语耦合可进一步包含彼此协作或相互作用(例如,如呈因果关系)的两个或更多个元件。
尽管本文中已说明且描述特定实例,但所属领域的一般技术人员将了解,经计算以实现相同结果的布置可取代所展示的特定实施例。本公开希望涵盖本公开的一或多个实施例的调适或变动。应理解,已依说明性方式而非限制性方式进行上文描述。应参考随附权利要求书及此权利要求书所授权的等效物的全范围来确定本公开的一或多个实例的范围。
Claims (27)
1.一种用于操作存储器胞元阵列的方法,所述方法包括:
-将用户数据存储于所述存储器阵列的多个存储器胞元中;
-将与所述用户数据相关联的奇偶校验数据存储于所述存储器阵列的奇偶校验胞元中,其中所使用奇偶校验胞元的数目基于所述存储器胞元的状态来选择且与选定错误校正码(ECC)校正能力有关;及
-基于所使用奇偶校验胞元的所述选定数目,对所述多个存储器胞元执行ECC操作。
2.根据权利要求1所述的方法,其包括将与所述选定ECC校正能力有关的数据信息存储于所述存储器阵列的至少一个专用非易失性区中的步骤。
3.根据权利要求1所述的方法,其包括将所述阵列的所述存储器胞元分组成多个部分的步骤,所述多个部分中的每一部分基于其所述存储器胞元的所述状态而被指派特定ECC校正能力。
4.根据权利要求3所述的方法,其中所述多个部分中的部分对应于码字、存储体、存储体群组、所述阵列的区段、整个阵列、缓冲器、页面中的一者。
5.根据权利要求3所述的方法,其包括存储与所述多个部分中的每一部分的所述选定ECC校正能力有关的相应数据信息的步骤,所述方法进一步包括将所述数据信息存储于查找表中的步骤,其中在所述查找表中,所述阵列的每一部分与其相应选定ECC校正能力相关联。
6.根据权利要求1所述的方法,其中码字用与其相关联且与所述码字的所述选定ECC校正能力有关的额外信息位进行编码。
7.根据权利要求1所述的方法,其包括基于所述存储器胞元的所述状态的变动来改变所述选定ECC校正能力。
8.根据权利要求1所述的方法,其中基于用于计数对所述存储器胞元的存取次数或刷新事件的数目或通电事件的数目或其组合中的至少一者的第一计数器的值来选择待用于定义所述选定ECC校正能力的奇偶校验胞元的所述数目,所述第一计数器的所述值指示所述存储器胞元的所述状态。
9.根据权利要求1所述的方法,其中基于计数错误频率来选择待用于定义所述选定ECC校正能力的奇偶校验胞元的所述数目。
10.根据权利要求1所述的方法,其包括以下步骤:
-凭借测试机测试所述存储器阵列的至少一个部分的质量;及
-基于所执行质量测试将待用于定义所述选定ECC校正能力的适当数目个奇偶校验胞元指派给所述至少一个部分。
11.根据权利要求1所述的方法,其中待用于定义所述ECC校正能力的奇偶校验胞元的所述数目由用户选择或基于耦合到所述存储器阵列的传感器的信号。
12.根据权利要求1所述的方法,其中基于感测放大器裕度测量来选择待用于定义所述选定ECC校正能力的奇偶校验胞元的所述数目。
13.根据权利要求1所述的方法,其包括仅写入及/或感测用于存储所述用户数据的所述存储器胞元及用于存储所述奇偶校验数据的所述选定奇偶校验胞元的步骤,其中在最大数目与最小数目之间选择所述所使用奇偶校验胞元且未使用奇偶校验胞元的数目是所述最大数目与所使用奇偶校验胞元的所述数目之间的差,且其中未写入也未感测所述未使用奇偶校验胞元。
14.一种存储器装置,其包括:
-阵列,其包含多个存储器胞元;及
-控制器,其经配置以:
-将用户数据存储于所述多个存储器胞元中;
-定义用于存储奇偶校验数据的奇偶校验胞元的最大数目,奇偶校验胞元的所述最大数目对应于最大错误校正码(ECC)校正能力;
-基于所述存储器胞元的状态,选择对应于选定ECC校正能力的待用于存储所述奇偶校验数据的奇偶校验胞元的数目,所使用奇偶校验胞元的数目包括在对应于最小ECC校正能力的最小数目与所述最大数目之间;及
-基于所述存储器胞元的所述状态的变动来改变所使用奇偶校验胞元的所述数目。
15.根据权利要求14所述的存储器装置,其中将所述阵列划分成多个部分,所述多个部分中的每一部分基于所述部分的所述存储器胞元的特定状态而被指派特定选定ECC校正能力。
16.根据权利要求15所述的存储器装置,其中所述多个部分中的部分对应于码字、存储体、存储体群组、所述阵列的区段、整个阵列、缓冲器、页面中的一者。
17.根据权利要求14所述的存储器装置,其中所述阵列包括经调适以存储与所述选定ECC校正能力有关的数据信息的至少一个区。
18.根据权利要求14所述的存储器装置,其中所述控制器包括耦合到所述控制器的ECC引擎。
19.根据权利要求15所述的存储器装置,其中所述控制器经配置以针对所述多个部分中的每一部分将与所述相应特定选定ECC校正能力有关的相应数据信息存储于所述阵列中,所述控制器进一步经配置以将所述数据信息存储于查找表中,其中在所述查找表中,所述阵列的每一部分与其相应特定选定ECC校正能力相关联。
20.根据权利要求14所述的存储器装置,其包括经配置以计数对所述存储器胞元的存取次数或刷新事件的数目或通电事件的数目或其组合中的至少一者的第一计数器,其中待用于定义ECC校正能力的奇偶校验胞元的数目基于所述第一计数器的值来选择。
21.根据权利要求14所述的存储器装置,其包括经配置以对所检测错误的数目进行计数的第二计数器,所使用奇偶校验胞元的所述数目基于计数错误频率来选择。
22.根据权利要求14所述的存储器装置,其包括:
-感测单元,其耦合到所述存储器阵列,其中所述控制器经配置以基于所述感测单元的信号来选择所使用奇偶校验胞元的所述数目;及/或
-感测放大器,其中所述控制器经配置以基于感测放大器裕度测量来选择所使用奇偶校验胞元的所述数目。
23.根据权利要求14所述的存储器装置,其中所述控制器经配置以仅写入及/或感测用于存储所述用户数据的所述存储器胞元及所述所使用奇偶校验胞元,其中未写入也未感测未使用奇偶校验胞元。
24.根据权利要求14所述的存储器装置,其中码字包括与其相关联且与所述码字的所述选定ECC校正能力有关的相应额外信息位。
25.根据权利要求15所述的存储器装置,其中不同计数器与所述阵列的不同相应部分相关联,每一计数器表示所述相应部分的相应累积值,所述控制器经配置以基于比较所述相应部分的所述相应累积值与阈值而对一或多个部分选择性地执行所述ECC校正能力变动。
26.一种存储器装置,其包括:
-阵列,其包含多个存储器胞元;及
-所述阵列的操作单元,
其中所述操作单元经配置以:
-将用户数据存储于所述存储器阵列的多个存储器胞元中;
-将与所述用户数据相关联的奇偶校验数据存储于所述存储器阵列的奇偶校验胞元中,其中所使用奇偶校验胞元的数目基于所述多个存储器胞元的状态来选择且与对应错误校正码(ECC)校正能力有关;及
-基于所使用奇偶校验胞元的所述选定数目,对所述多个存储器胞元执行ECC操作。
27.一种用于选择存储于存储器胞元阵列中的码字的错误校正码(ECC)保护等级的方法,所述方法包括:
-将经编码用户数据存储于多个存储器胞元中;
-每当发生一事件时,使与所述存储器阵列的至少一个部分相关联的计数器的值递增;
-基于所述计数器的所述值,选择与码字相关联的数个奇偶校验胞元,选定奇偶校验胞元的数目与对应ECC校正能力有关;及
-将奇偶校验数据存储于所述选定奇偶校验胞元中。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/IB2021/020008 WO2022185088A1 (en) | 2021-03-02 | 2021-03-02 | Methods and systems for improving ecc operation of memories |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116868270A true CN116868270A (zh) | 2023-10-10 |
Family
ID=83154781
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180094780.9A Pending CN116868270A (zh) | 2021-03-02 | 2021-03-02 | 用于改进存储器的ecc操作的方法及系统 |
Country Status (3)
Country | Link |
---|---|
CN (1) | CN116868270A (zh) |
TW (1) | TW202236291A (zh) |
WO (1) | WO2022185088A1 (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010076835A1 (en) * | 2008-12-31 | 2010-07-08 | Christophe Laurent | Error correction code for unidirectional memory |
KR20130027138A (ko) * | 2011-09-07 | 2013-03-15 | 삼성전자주식회사 | 에러 정정 방법 및 이를 이용하는 메모리 장치 |
US10067823B2 (en) * | 2014-12-04 | 2018-09-04 | Western Digital Technologies, Inc. | Systems and methods for adaptive error corrective code mechanisms |
US9984771B2 (en) * | 2016-01-11 | 2018-05-29 | Sandisk Technologies Llc | Multi-level raid-type encoding with random correction capability |
DE102017212767B4 (de) * | 2017-07-25 | 2019-05-09 | Hyperstone Gmbh | Verfahren und Vorrichtung zur Steigerung der Zuverlässigkeit eines nicht-flüchtigen Speichers |
-
2021
- 2021-03-02 WO PCT/IB2021/020008 patent/WO2022185088A1/en active Application Filing
- 2021-03-02 CN CN202180094780.9A patent/CN116868270A/zh active Pending
-
2022
- 2022-03-02 TW TW111107518A patent/TW202236291A/zh unknown
Also Published As
Publication number | Publication date |
---|---|
TW202236291A (zh) | 2022-09-16 |
WO2022185088A1 (en) | 2022-09-09 |
WO2022185088A8 (en) | 2023-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11334413B2 (en) | Estimating an error rate associated with memory | |
US10929474B2 (en) | Proactive corrective actions in memory based on a probabilistic data structure | |
US20100269000A1 (en) | Methods and apparatuses for managing bad memory cell | |
US20180350441A1 (en) | Semiconductor memory system and operating method thereof | |
US20130176785A1 (en) | Method for accessing a flash memory, and associated flash memory system | |
US20210132867A1 (en) | Adjusting read voltage levels based on a temperature-dependent slope of the threshold voltage drift of a memory sub-system | |
WO2022103562A1 (en) | Media management on power-up | |
CN115938458A (zh) | 存储装置、控制器以及存储装置的操作方法 | |
WO2023028347A1 (en) | Monitoring memory device health according to data storage metrics | |
US11763914B2 (en) | Adapting an error recovery process in a memory sub-system | |
CN117980994A (zh) | 存储器中经改进的ecc配置 | |
TW202240389A (zh) | 具有改良的錯誤更正碼(ecc)架構之記憶體裝置 | |
US20240194284A1 (en) | Methods and systems for improving ecc operation of memories | |
CN116868270A (zh) | 用于改进存储器的ecc操作的方法及系统 | |
CN114446379A (zh) | 基于各种定时容限参数设定的性能度量来对存储器装置进行评级 | |
US20170018315A1 (en) | Test system and test method | |
US20240103741A1 (en) | Providing multiple error correction code protection levels in memory | |
WO2022185089A1 (en) | Methods and systems for managing memory with dynamic ecc protection | |
TWI842137B (zh) | 記憶體中之錯誤更正碼功率消耗優化 | |
US11742053B2 (en) | Managing execution of a scrub operation in view of an operating characteristic of a memory subsystem | |
CN116940986A (zh) | 用于减少ecc功率消耗的方法及系统 | |
US20240111431A1 (en) | Adaptive super block wear leveling | |
US20240062834A1 (en) | Adaptive integrity scan in a memory sub-system | |
US20240038311A1 (en) | Reliability based data verification | |
WO2023067367A1 (en) | Ecc power consumption optimization in memories |
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 |