当前位置: 首页 > 专利查询>英特尔公司专利>正文

用于使用多单元存储单元组对非易失性存储器进行编程以提供保持差错的差错位置信息的方法和设备技术

技术编号:21282658 阅读:37 留言:0更新日期:2019-06-06 12:34
提供了一种用于使用多单元存储单元组对非易失性存储器进行编程以提供保持差错的差错位置信息的方法和设备。非易失性存储器中的每个存储单元利用阈值电压电平被编程,并且根据来自多个页的位来编程每个存储单元。存储器控制器将存储单元组织为存储单元组,其各自存储利用阈值电压电平所编程的信息的m个位。确定要用于存储单元组中的每个存储单元以利用定义多个有效状态之一的阈值电压电平在存储单元组中对所选择的k个位进行编程的一个阈值电压电平。对于任何2个有效状态中的存储单元组的存储单元的至少一个的阈值电压电平相差至少2个阈值电压电平。

A method and device for programming non-volatile memory using a multi-cell storage unit group to provide error location information to preserve errors

A method and device for programming non-volatile memory using a multi-cell storage unit group to provide error location information for maintaining errors is provided. Each storage unit in non-volatile memory is programmed using threshold voltage levels, and each storage unit is programmed according to bits from multiple pages. The memory controller organizes the storage unit into a storage unit group, each of which stores m bits of information programmed by threshold voltage level. Determines a threshold voltage level to be used for each storage unit in the storage unit group to program the selected k bits in the storage unit group using a threshold voltage level that defines one of the multiple effective states. For at least one threshold voltage level of the storage unit of the memory cell group in any two active states, there is a difference of at least two threshold voltage levels.

【技术实现步骤摘要】
【国外来华专利技术】用于使用多单元存储单元组对非易失性存储器进行编程以提供保持差错的差错位置信息的方法和设备
本文所述的实施例一般涉及用于使用多单元存储单元组对非易失性存储器进行编程以提供保持差错的差错收集信息的方法和设备。
技术介绍
固态存储装置(例如固态驱动器)可由非易失性存储器管芯的一个或多个封装来组成,其中每个管芯由存储单元来组成,其中存储单元被组织为页,并且页被组织为块。每个存储单元能够存储信息的一个或多个位。多级单元非易失性存储器单元(例如表示信息的2个位的MLCNAND)用4个阈值电压电平E、P1、P2和P3被编程。保持差错在单元的所存储电压电平遭遇泄漏并且转变或迁移到更低阈值电平(例如从P3到P2、P2到P1或P1到E)时发生。保持差错也可由于引入电压移动(更高或更低)(例如读或写入扰动)的操作而发生。纠错码技术通过计算检验子并且将检验子连同奇偶校验信息一起用来校正被确定为具有差错的位中的差错来识别差错的位置。本领域存在对于用于确定遭遇差错的数据的位置以计算检验子并且与奇偶校验信息配合用来校正保持差错的改进技术的需要。附图说明参照附图作为示例来描述实施例,附图不是按比例绘制,其中类似参考标号指的是类似元件。图1示出非易失性存储器存储装置的实施例。图2示出存储管芯控制器的实施例。图3示出装置页的装置页信息的实施例。图4示出提供变换所接收的位的转化函数的状态映射的实施例。图5A、图5B和图5C示出包括2个存储单元的存储单元组的不同可能数量的有效状态的实施例,其中每个单元用4个阈值电压电平之一被编程。图6A示出当一半状态为有效且一半为无效时的存储单元对的阈值电压电平到信息的3个位的单元到位映射的实施例。图6B示出将存储单元阈值电压电平映射到从存储装置所读取的4个位并且映射到3个位以返回的真值表。图7A示出当状态的四分之一为有效而四分之三为无效时存储单元对的阈值电压电平到信息的2个位的单元到位映射的实施例。图7B示出将存储单元阈值电压电平映射到从存储装置所读取的4个位并且映射到2个位以返回的真值表。图8示出将数据的多个页写入到组织为(一个或多个)存储单元组的装置页的操作的实施例。图9A和图9B示出最低有效位并且然后最高有效位到存储单元对的二步编程。图10示出按照图9A和图9B对存储单元对进行编程的编程步骤的编程表。图11A和图11B示出最高有效位并且然后最低有效位到存储单元对的二步编程。图12示出按照图11A和图11B对存储单元对进行编程的编程步骤的编程表。图13A、图13B、图13C、图13D和图13E提供用于在要写入的位和关于所存储的位的信息之间进行转化的操作。图14示出读取存储单元对的操作的实施例。图15示出进行压缩、加密、纠错码、并且加扰数据页的操作的实施例。图16示出对存储装置中的数据进行解扰、纠错、解密和解压缩的操作的实施例。图17示出其中可部署图1的存储器装置的系统。具体实施方式所述实施例提供将存储单元编组在多个存储单元的存储单元组中以针对可使用阈值电压电平对存储单元组中的存储单元被编程的状态提供无效状态的技术。通过将存储单元编组为存储单元组以存储来自所接收的页的位,可存在用来表示所接收的位的多个有效状态,其少于全部可能的状态,因为随着被编组在存储单元组中,更多存储单元被用来存储所接收的位。无效状态被定义使得对于任何2个有效状态中的存储单元组中的至少一个存储单元的阈值电压电平相差至少2个阈值电压电平。这样,遭遇保持差错(例如一个阈值电压电平的泄漏)的编程在任何有效状态中的存储单元组的存储单元转变成无效状态。当读取具有无效状态的存储单元组时,那些所读取的位能够标记为无效,以向纠错单元提供关于无效位的位置的准确信息,以供计算纠错信息中使用。通过仅使用存储单元状态的一部分而将其余部分标记为无效,有效和无效状态交错,使得‘Hamming距离’(其等于从一个有效状态到另一个有效状态的迁移的数量)变大。有效状态的这个交错指配允许在对位进行解码并且确定它们表示无效状态时对差错的直接检测。遭遇差错的位和单元的位置的这种检测称作“擦除”。按照编码理论,给定相同纠错码(ECC)代码,能够被校正的擦除的数量是差错数量的两倍。所述实施例的原位检错能力改进纠错的效能,而无需增加ECC位。所述原位检错编程方法论可通过压缩待存储的位以便允许可标记为无效的状态用来检测泄漏来提供。在以下描述中,阐述了诸如逻辑实现、操作码、指定操作数的部件、资源划分/共享/重复实现、系统组件的类型和相互关系以及逻辑划分/集成选择之类的许多特定细节,以便提供对本专利技术的更透彻理解。然而,将由本领域的技术人员认识到,本专利技术可以在没有此类特定细节的情况下被实践。在其他实例中,没有详细示出控制结构、门级电路和完全软件指令序列,以免使本专利技术模糊不清。本领域的技术人员利用所包括描述将能够实现适当功能性而无需过度实验。本说明书中对“一个实施例”、“实施例”、“示例实施例”等的参考表示所述的实施例可包括具体特征、结构或特性,但每一个实施例可能不一定都包括该具体特征、结构或特性。此外,这类词语不一定指同一实施例。某些实施例涉及存储装置电子组件。实施例包括用于形成电子组件的装置和方法两者。图1示出非易失性存储器存储装置100的实施例,非易失性存储器存储装置100具有控制器通道102、主接口104,以便在所连接主系统与实现存储单元(其可组织为存储单元页)的存储管芯1061、1062...106n的多个组之间传递数据块。非易失性存储器存储装置100可用作计算系统中的存储器装置和/或存储装置两者,并且可用来执行计算系统中的易失性存储器装置和磁盘驱动器的作用。在实施例中,非易失性存储器存储装置100可包括NAND存储管芯1061、1062...106n的固态驱动器(SSD)。控制器通道102包括中央处理单元(CPU)108,其执行某些控制功能,例如逻辑到物理映射110提供I/O请求所针对的逻辑地址和存储管芯1061、1062...106n中的物理地址的映射。控制器通道102包括多个存储管芯控制器2001,2002...200n,其管理对存储管芯1061、1062...106n组的对存储单元页中的数据块的读和写入请求。存储管芯控制器2001、2002...200n的每个的变换层1141,1142.....114n变换来自主机的数据页中的所接收数量的位(例如k个位)以写入到存储管芯1061、1062...106n中的多个存储单元(各自存储m个位,其中m>=k)的存储单元组,并且将块中的所读取m个位变换成数据块的更少数量的k个位以按照页返回给主机。主机操作系统可对存储器控制器的数据页进行编码,其中多个页为多级存储单元的每个提供数据,例如,如果每个存储单元存储n个位,则主机操作系统提供n个页,以提供n个位的每个以便在存储单元中进行编码。变换层1141、1142.....114n使用状态映射3001、3002...300n来确定转化函数,以便用来将更少的k个位变换成m个位,并且反之亦然。在某些实施例中,所接收页中的k个位到存储单元组中存储的m个位并且反之亦然的映射操作由变换层114i来执行。在备选实施例中,映射操作可由I/O逻辑202来执行,其中变换层114i在I/本文档来自技高网...

【技术保护点】
1.一种用于对存储单元的状态进行编程以提供保持差错的差错位置信息的设备,包括:具有存储单元的非易失性存储器,其中每个存储单元使用多个阈值电压电平被编程具有信息,并且其中根据来自多个页的位来编程每个存储单元;以及存储器控制器,所述存储器控制器配置成对所述存储单元进行编程,并且配置成:将所述非易失性存储器中的所述存储单元组织为存储单元组,其中每个存储单元组存储信息的m个位,其中每个所述存储单元组中的每个所述存储单元利用所述多个阈值电压电平被编程;从所述页中选择要对一个存储单元组进行写入的k个位,其中k<m,并且其中k和m为大于零的整数值;以及确定要用于该存储单元组中的每个所述存储单元以在该存储单元组中对所选择的k个位进行编程的一个阈值电压电平,其中各k个位利用定义多个有效状态之一的阈值电压电平被编程,其中对于任何2个有效状态中的该存储单元组的所述存储单元的至少一个的所述阈值电压电平相差至少2个阈值电压电平。

【技术特征摘要】
【国外来华专利技术】2016.09.26 US 15/2765881.一种用于对存储单元的状态进行编程以提供保持差错的差错位置信息的设备,包括:具有存储单元的非易失性存储器,其中每个存储单元使用多个阈值电压电平被编程具有信息,并且其中根据来自多个页的位来编程每个存储单元;以及存储器控制器,所述存储器控制器配置成对所述存储单元进行编程,并且配置成:将所述非易失性存储器中的所述存储单元组织为存储单元组,其中每个存储单元组存储信息的m个位,其中每个所述存储单元组中的每个所述存储单元利用所述多个阈值电压电平被编程;从所述页中选择要对一个存储单元组进行写入的k个位,其中k<m,并且其中k和m为大于零的整数值;以及确定要用于该存储单元组中的每个所述存储单元以在该存储单元组中对所选择的k个位进行编程的一个阈值电压电平,其中各k个位利用定义多个有效状态之一的阈值电压电平被编程,其中对于任何2个有效状态中的该存储单元组的所述存储单元的至少一个的所述阈值电压电平相差至少2个阈值电压电平。2.如权利要求1所述的设备,其中对于存储单元组中的所述存储单元的所述阈值电压电平能够对存储单元组的总数的状态进行编程,所述状态包括所选择的k个位被编程所处的有效状态以及所选择的k个位未被编程所处的无效状态。3.如权利要求2所述的设备,其中对于所述存储单元组中的所述存储单元的所述阈值电压电平定义所述有效状态和所述无效状态,使得遭遇一个阈值电压电平的泄漏的编程在任何有效状态中的该存储单元组的所述存储单元将转变成无效状态。4.如权利要求2和3中的任一项所述的设备,其中所述有效状态为状态的所述总数的一半,并且配置使得如果编程到处于所述有效状态之一的所述存储单元组之一的所述存储单元中的所述k个位遭遇一个阈值电压电平的泄漏,则所述泄漏将导致表示所述k个位的所述存储单元转变成所述无效状态之一。5.如权利要求2和3中的任一项所述的设备,其中所述有效状态为状态的所述总数的四分之一,并且配置使得任何2个有效状态之间的平均电压距离包括至少2个阈值电压电平。6.如权利要求2和3中的任一项所述的设备,其中所述存储器控制器还:读取对于所述存储单元组之一中的所述存储单元的阈值电压电平;对所读取阈值电压电平进行解码,以得到解码的m个位;确定所述解码的m个位是否包括所述有效状态之一;将所述解码的m个位转化成要返回的k个位;以及响应于确定所述解码的m个位没有包括所述有效状态之一而将所述k个位标记为错误。7.如权利要求6所述的设备,其中所述确定所述解码的m个位是否包括所述有效状态之一包括:对所述解码的m个位执行逻辑函数,其中如果对所述解码的m个位的所述逻辑函数的结果具有第一值则确定有效状态,并且其中如果对所述解码的m个位的所述逻辑函数的结果具有第二值则确定无效状态。8.如权利要求6和7中的任一项所述的设备,还包括:纠错单元,所述纠错单元用于生成所述k个位的纠错信息,其中响应于确定所述解码的m个位包括所述无效状态之一,所述存储器控制器还:将所述k个位设置成缺省差错值;以及向所述纠错单元提供关于具有所述无效状态之一的所述k个位的信息,以提供对所述k个位的纠错。9.如权利要求2、3、6和7中的任一项所述的设备,其中所述存储器控制器还:基于将各可能k个位与所述有效状态关联的真值表来提供转化函数;以及使用所述转化函数将信息的所选择的k个位转化成要在所述存储单元组之一中进行编程的所述m个位,并且将来自所述存储单元组之一的信息的所读取的m个位转化成信息的所述k个位。10.如权利要求2、3、6和7中的任一项所述的设备,其中存在信息的所述k个位的至少2个有效位段,其中从当前存储单元组的所述页中选择所述k个位包括从不同页中选择有效位段,所述有效位段对于前一存储单元组是从所述不同页被选择的。11.如权利要求10所述的设备,其中所述存储器控制器还:从所述存储单元组之一中读取信息的所述m个位;将信息的所读取的m个位转化成信息的转化的k个位;以及对于每个存储单元组,将信息的所述转化的k个位的所述有效位段交替写入到不同页,所述有效位段对于前一存储单元组是被写入到所述不同页的。12.一种用于对存储单元的状态进行编程以提供保持差错的差错位置信息的系统,包括:处理器;总线,其中所述处理器耦合到所述总线;以及非易失性存储器,所述非易失性存储器具有:存储单元,其中每个存储单元使用多个阈值电压电平被编程具有信息,并且其中根据来自多个页的位来编程每个存储单元;以及存储器控制器,所述存储器控制器配置成对所述存储单元进行编程,并且配置成:将所述非易失性存储器中的所述存储单元组织为存储单元组,其中每个存储单元组存储信息的m个位,其中每个所述存储单元组中的每个所述存储单元利用所述多个阈值电压电平被编程;从所述页中选择要对一个存储单元组进行写入的k个位,其中k<m,并且其中k和m为大于零的整数值;以及确定要用于该存储单元组中的每个所述存储单元以在该存储单元组中对所选择的k个位进行编程的一个阈值电压电平,其中各k个位利用定义多个有效状态之一的阈值电压电平被编程,其中对于任何2个有效状态的该存储单元组的所述存储单元的至少一个的所述阈值电压电平相差至少2个阈值电压电平。13.如权利要求12所述的系统,其中对于存储单元组中的所述存储单元的...

【专利技术属性】
技术研发人员:W吴JB卡恩SN特里卡Y邹
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1