在存储器设备处的控制数据的错误校正的系统和方法

文档序号:8339478阅读:398来源:国知局
在存储器设备处的控制数据的错误校正的系统和方法
【专利说明】
[0001] 本发明是以下发明专利申请的分案申请:【申请号】201080058296. 2,申请日:2010 年12月1日,发明名称:在存储器设备处的控制数据的错误校正的系统和方法。
技术领域
[0002] 本公开一般涉及在存储器设备处的控制数据的错误校正。
【背景技术】
[0003] 在向存储器中写入数据的过程期间,通常用额外的位来编码数据以形成码字。在 存在噪声时,表示该码字的位中的一些位可能改变,用错误来破坏原始码字。当从存储器读 取该码字时,可以使用解码器使用错误校正编码(ECC)来标识和校正这些错误。例如,在其 中位错误趋向于不相关的应用中一般使用Bose-Chaudhuri-Hocquenghem(BCH)、低密度奇 偶校验(LDPC)、里德所罗门(Reed Solomon)和Turbo编码方案。
[0004] ECC算法的硬件和软件实现方式通常被定义为能够对给定长度的数据校正给定量 的错误。如果存储介质返回具有比ECC引擎被设计为能够校正的更多的错误的数据,则解 码的数据将不匹配原始存储的数据。因此,改进存储器设备的ECC引擎的错误校正能力可 以改进存储器设备的可靠性。

【发明内容】

[0005] 公开了错误校正编码(ECC)增强压缩模块,其可以改进存储器设备的ECC引擎的 错误校正能力。该ECC增强压缩模块通过在编码控制数据之前压缩该控制数据来增强该控 制数据的错误校正,由此减少需要由ECC引擎编码和解码的控制数据位的数量。减少表示 控制数据的位的数量使得ECC引擎能够将其校正能力集中在更少的位上,因此可比控制数 据未压缩的情况校正更多错误。因此,增强了 ECC引擎的有效错误校正能力。
[0006] 根据本发明的一个方面,提供一种方法,包括:在包括错误校正编码(ECC)引擎和 多个存储元件的存储器器件中进行,其中所述多个存储元件包括一组存储元件,其中所述 存储器器件被配置为根据页格式向所述存储元件存储信息,所述页格式包括数据部分和奇 偶校验部分:启动操作以压缩要被存储在所述组存储元件中的数据;选择所述ECC引擎的 生成第一数量的奇偶校验位的第一模式和ECC引擎的生成第二数量的奇偶校验位的第二 模式之一,所选模式基于所压缩的数据的压缩的程度;编码所压缩的数据以生成对应于所 压缩的数据的奇偶校验位;向所压缩的数据添加附加数据以增加格式化的字的存储尺寸; 以及根据所述页格式存储包括所压缩的数据和奇偶校验位的格式化的字到所述组存储元 件,其中,所压缩的数据被存储在所述数据部分中,且至少一些奇偶校验位被存储在所述奇 偶校验部分中。
[0007] 根据本发明的另一个方面,提供一种方法,包括:在包括错误校正编码(ECC)引擎 和多个存储元件的存储器器件中进行,其中所述存储器器件被配置为根据页格式在所述存 储元件处存储信息,所述页格式包括数据部分和奇偶校验部分:根据所述页格式从所述存 储元件读取包括所压缩的数据和奇偶校验位的一页数据,其中该页数据包括被添加到所压 缩的数据以增加格式化的字的存储尺寸的附加数据,其中,所压缩的数据被包括在所述页 的数据部分中,且至少一些奇偶校验位被包括在所述页的奇偶校验部分中;使用所述奇偶 校验位在所述ECC引擎处解码所压缩的数据;以及解压缩所压缩的数据以生成解压缩的数 据,其中,所述ECC引擎可配置为当所有奇偶校验位被包括在所述页的奇偶校验部分中时 根据第一模式操作或当所述奇偶校验位的第一部分被包括在所述页的奇偶校验部分中且 所述奇偶校验位的第二部分被包括在所述页的数据部分中时根据第二模式操作。
[0008] 根据本发明的另一个方面,提供一种数据存储器件,包括:存储器,包括多个存储 元件;以及控制器,耦合于所述存储器,且被配置为根据页格式向所述存储元件存储信息, 所述页格式包括数据部分和奇偶校验部分,其中,所述控制器包括:错误校正编码(ECC)引 擎;以及压缩模块,耦合于所述ECC引擎,且被配置为接收和压缩被提供给ECC引擎用于编 码的数据,其中,所述ECC引擎可配置为基于数据的压缩的程度、在第一模式中操作以生成 第一数量的奇偶校验位、或在第二模式中操作以生成第二数量的奇偶校验位,以及其中,所 述控制器被配置为根据所述页格式向所述存储元件存储包括所压缩的数据和奇偶校验位 的数据,其中,所压缩的数据被存储在所述页的数据部分中,且至少一些奇偶校验位被存储 在所述页的奇偶校验部分中,且其中,所述控制器被配置为向所压缩的数据添加附加数据 来增加格式化的字的存储尺寸。
[0009] 根据本发明的另一个方面,提供一种数据存储器件,包括:存储器,包括多个存储 元件;以及控制器,耦合于所述存储器,且被配置为根据页格式从所述存储元件读取信息, 所述页格式包括数据部分和奇偶校验部分,其中,所述控制器包括:错误校正编码(ECC)引 擎;以及解压缩模块,耦合于所述ECC引擎,且被配置为接收和解压缩由ECC引擎提供的解 码的数据,其中,所述ECC引擎可操作以根据所述页格式解码从所述存储器读取的所压缩 的数据和奇偶校验位,其中,所压缩的数据被包括在所述页的数据部分中,且至少一些奇偶 校验位被包括在所述页的奇偶校验部分中,且其中,所述控制器被配置为向所压缩的数据 添加附加数据来增加格式化的字的存储尺寸,以及其中,所述ECC引擎被配置为当所有奇 偶校验位被包括在所述页的奇偶校验部分中时根据第一模式操作或当所述奇偶校验位的 第一部分被包括在所述页的奇偶校验部分中且所述奇偶校验位的第二部分被包括在所述 页的数据部分中时根据第二模式操作。
【附图说明】
[0010] 图1是包括具有错误校正编码(ECC)增强压缩模块的存储器设备的系统的具体例 示实施例的框图;
[0011] 图2是包括具有ECC增强压缩模块的存储器设备的系统的第二例示实施例的框 图;
[0012] 图3是控制数据以及包括压缩和编码的控制数据的格式化的数据字的例示实施 例的框图;
[0013] 图4是包括压缩和编码的控制数据的格式化的数据字的第二例示实施例的框图;
[0014] 图5是增强在存储器设备处的控制数据的错误校正的方法的例示实施例的流程 图;
[0015] 图6是增强在存储器设备处的控制数据的错误校正的方法的第二例示实施例的 流程图。
【具体实施方式】
[0016] 参考图1,绘出了包括ECC增强压缩模块110的系统的具体实施例并且一般将其指 定为100。系统100包括耦接到存储器设备104的主机设备102。存储器设备104包括耦 接到存储器阵列108的控制器106。控制器106包括耦接到ECC引擎112的ECC增强压缩 模块110。ECC增强压缩模块110被配置为压缩控制数据144并将压缩的控制数据140提 供给ECC引擎112用于编码为要存储在存储器阵列108处的码字160。通过在编码之前压 缩控制数据144,与控制数据144的非压缩编码相比,增强了由于在ECC引擎112处的编码 引起的压缩的控制数据140的有效错误校正率。
[0017] ECC增强压缩模块110可以被配置为接收并压缩要被提供给ECC引擎112用于编 码的控制数据144。例如,ECC增强压缩模块110可以包括执行压缩软件、诸如执行"zlib" 压缩算法或者一个或多个其他算法以进行控制数据144的压缩的处理器。可以通过专用硬 件压缩电路来加速该压缩模块110。ECC增强压缩模块110可以被配置为将压缩的控制数 据140提供给ECC引擎112。另外。ECC增强压缩模块110可以被配置为从主机设备102 接收用户数据145。ECC增强压缩模块110可以被配置为进行用户数据145的压缩并将压 缩的用户数据141提供给ECC引擎112以被编码来存储在存储器阵列108处。
[0018] ECC引擎112可以包括接收用户数据(例如压缩的控制数据140)并产生表示输入 数据的编码的一个或多个码字(例如码字160)的电路。例如,ECC引擎112可以被配置为 利用里德-所罗门(Reed-Solomon)编码、BCH码、低密度奇偶校验(LDPC)码、一个或多个 错误检测和校正码或其任意组合。尽管ECC引擎112被描述为由专用硬件电路来进行,但 是在其他实施例中,ECC引擎112可以包括执行可执行的指令来进行编码或解码功能的至 少一部分的一个或多个处理器。
[0019] 响应于来自控制器106的指令,存储器阵列108可以响应于控制器106而存储并 取回数据。例如,存储器阵列108可以响应于控制器106而在存储器阵列108处进行数据写 入操作。例如,从ECC引擎112接收的码字160可以被提供给存储器阵列108作为来自控 制器106的数据写入操作。码字160可以存储在存储器阵列108处用于稍后由控制器106 取回。存储器阵列108可以是诸如闪存的非易失性存储器。
[0020] 主机设备102可以是在存储器设备104外部的设备。例如,主机设备102可以是 诸如移动手持机的便携式电子设备,并且存储器设备104可以是耦接到主机设备102或者 安装在主机设备102内的闪存卡。
[0021] 在操作期间,主机设备102可以将用户数据145提供给存储器设备104用于存储 在存储器阵列108处。用户数据145可以在控制器106处被接收并且可以被提供给ECC增 强压缩模块110。另外,控制器106还可以产生对存储器设备104
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1