用于错误校正码(ecc)错误处理的方法和装置的制造方法

文档序号:9553224阅读:933来源:国知局
用于错误校正码(ecc)错误处理的方法和装置的制造方法
【技术领域】
[0001] 本公开一般地涉及数据贮存装置,并且更具体地涉及用于数据贮存装置的错误校 正码(ECC)错误处理。
【背景技术】
[0002] 非易失性数据贮存装置一一诸如嵌入的存储器装置和可拆卸的存储器装置一一 已经使能数据和软件应用的改善的便携性。例如,闪速存储器装置可以在每个闪速存储器 单元中贮存多个位,增强了数据贮存密度。可以使用错误校正码(ECC)技术来编码贮存在 这样的装置中的数据,所述错误校正码(ECC)技术保护数据免于与电源噪声、温度变化和 数据损坏的其它因素相关联的错误。ECC技术随着在每个单元中贮存的位的数量增加而特 别有用。尽管如此贮存的数据可能损坏,使得传统的ECC技术不能够恢复原始数据,可能导 致丢失或不可恢复用户数据。

【发明内容】

[0003] 公开了当错误校正码(ECC)码字不能被译码时能够恢复信息的技术。为了例示, 数据贮存装置的控制器可以将数据从源压缩块移动到目的地压缩块(例如,在压缩过程期 间将与特定文件相关联的数据整合到单个块)。当移动数据时,控制器通常访问与数据相关 联的逻辑地址以在管理表中更新数据的物理地址,所述管理表诸如组地址表(GAT)。管理表 可以指示与数据相关联的逻辑地址对应于与源压缩块相关联的第一物理地址。响应于移动 该数据,控制器可以更新管理表以指示数据已经被移动到目的地压缩块(即,逻辑地址与 第二物理地址相关联)。
[0004] 如果源压缩块贮存不可校正的信息、如与不可校正的错误校正码(UECC)错误相 关联的标头,则确定与数据相关联的逻辑地址可能是困难的。如果逻辑地址不能被恢复,控 制器可能无法用第二物理地址更新管理表(因为管理表可能由逻辑地址而不是物理地址 来索引)。当管理表较大时(例如,包含成千上万的条目),通过管理表"抓取"以定位第一 物理地址可能是费力并且耗时的。此外,在至少一些配置中,控制器无法将数据从源压缩块 移动到目的地压缩块而不更新管理表,因为这样的技术可能导致逻辑地址映射到管理表中 的不正确的物理地址(例如,第一物理地址)。相应地,响应于UECC错误,压缩过程可能暂 停直到逻辑地址能够被恢复。
[0005] 根据本公开的至少一个实施例,控制器使用一个或多个补救技术确定一个或多个 试验逻辑地址。例如,如果源压缩块的第一页贮存与UECC错误相关联的信息,控制器可以 访问与第一页相邻(例如,邻近第一页)的第二页以查找逻辑地址,因为第一页和第二页可 能贮存与有关(例如,邻近的)的逻辑地址相关联的普通文件中包含的数据。作为另一示 例,控制器可以尽管UECC错误也试图"照原样"使用标头,因为标头的一部分可能是不可校 正的,但是包含逻辑地址的另一部分可能没有错误。作为另一示例,控制器可以在单个位错 误阻止标头被译码的情况下试图切换(toggle)标头的位。可以使用管理表肯定或否定一 个或多个试验逻辑地址。例如,在确定一个或多个试验逻辑地址之后,控制器可以使用一个 或多个试验逻辑地址来访问管理表以确定所述管理表是否将一个或多个试验逻辑地址中 的任一个映射到第一物理地址。
[0006] 在至少一个实施例中,如果控制器确定逻辑地址不能被补救地恢复,控制器将源 压缩块的第一页的指示增加到与译码错误(例如,UECC错误)相关联的页的列表。如果主 机装置试图从第一页读取数据,控制器可以访问页的列表并且(例如,通过返回预定的数 据序列到主机装置)指示主机装置数据不能被读取。如果主机装置随后重写数据,则第一 页可以被擦除(或被覆盖)并且可以从页的列表中移除该指示。
【附图说明】
[0007] 图1是包括用于在第一次操作时的错误校正码(ECC)错误处理的数据贮存装置的 系统的具体示意性实施例的框图;
[0008] 图2是示出在第二次操作时图1的系统的特定配置的框图;
[0009] 图3是图1的数据贮存装置的操作的示例方法的具体示意性实施例的流程图;以 及
[0010] 图4是图1的数据贮存装置的操作的另一示例方法的具体示意性实施例的流程 图。
【具体实施方式】
[0011] 参照图1,系统100的特定实施例包括数据贮存装置102和主机装置150。在图1 的特定示例中,数据贮存装置102耦接到主机装置150。例如,数据贮存装置102可以诸如 结合可拆卸的通用串行总线(USB)配置而可拆卸地耦接到主机装置150。在至少一个可替 换实施例中,数据贮存装置102诸如根据嵌入的多媒体卡(eMMC)配置被嵌入在主机装置 150 中。
[0012] 为了进一步说明,数据贮存装置102可以对应于存储器卡,所述存储器卡诸如 安全数字SD?:卡、microSD?卡、miniSD?卡(特拉华州威明顿市的SD-3C LLC的商 标)、多媒体卡(弗吉尼亚州阿灵顿市的JEDEC固态技术协会的商标)或者 CompactFlash? (CF)卡(加利福尼亚州苗比达市的SanDisk公司的商标)。作为另一 示例,数据贮存装置102可以被配置为诸如结合作为示意性示例的eMMC? (弗吉尼亚州 阿灵顿市的JEDEC固态技术协会的商标)以及eSD配置而耦接到主机装置150作为嵌入式 存储器。为了例示,数据贮存装置102可以对应于eMMC装置。数据贮存装置102可以依照 JEDEC行业规范而操作。例如,数据贮存装置102可以依照JEDEC eMMC规范、JEDEC通用闪 速存储(UFS)规范、一个或多个其它规范或其组合而操作。
[0013] 数据贮存装置102包括非易失性存储器104和控制器124。非易失性存储器104 和控制器124可以通过总线、接口或者其它结构耦接。非易失性存储器104可以包括多个 贮存元件的块。在图1的示例中,非易失性存储器104包括块106和块122。块106和块 122可以分别对应于从其移动数据以及将数据移动到其的块。例如,块106可以结合压缩 过程而对应于要从其移动数据的源压缩块,并且块122可以对应于数据要移动到其的目的 地压缩块。非易失存储器104的每个块可以包括多个页。在图1的示例中,块106包括页 108和页118。页108、118可以对应于贮存了由一个或多个错误校正码(ECC)技术(例如, ECC页)保护的数据的页。
[0014] 控制器124被配置为从主机装置150接收数据和指令并且发送数据到主机装置 150。控制器124还被配置为将数据和命令发送到非易失性存储器104并且从非易失性存 储器104接收数据。例如,控制器124被配置为发送数据和写入命令以使非易失性存储器 104将数据贮存到非易失性存储器104的指定的地址。作为另一示例,控制器124被配置为 发送读取命令以从非易失性存储器104的指定的地址读取数据。
[0015] 控制器124可以包括错误校正码(ECC)引擎126、随机存取存储器(RAM) 128、试验 逻辑地址产生器140和主机接口 144。随机存取存储器128可以包括贮存逻辑到物理地址 映射132的管理表130。在具体实施例中,管理表130对应于组地址表(GAT),并且逻辑到 物理地址映射132将数据的逻辑组映射到非易失存储器104的物理地址。作为具体示例, GAT可以将逻辑地址116 (在块106中的有效数据112的)和一个或多个其它逻辑地址映射 到与块106相关联的物理地址。
[0016] ECC引擎126可以被配置为从主机装置150接收将被贮存到存储器104的数 据,并且基于所述数据产生码字。例如,ECC引擎126可以包括编码器124,所述编码器 被配置为使用ECC编码技术编码数据。ECC引擎126可以包括Reed Solomon编码器、 Bose-Chaudhuri-Hocquenghem(BCH)编码器、低密度奇偶校验(LDPC)编码器、Turbo码编码 器、被配置为根据一个或多个其它ECC编码技术编码数据的编码器或其组合。ECC引擎126 可以包括译码器,该译码器被配置为译码从存储器104读取的数据以检测和校正达ECC技 术的错误校正极限的、可能出现在数据中的位错误。由于ECC技术的错误校正极限,如下所 述,ECC引擎126可能不能够校正在读取数据中的某些位错误。
[0017] 主机装置150可以对应于移动电话、音乐播放器、视频播放器、游戏操纵台、电子 书阅读器、个人数字助理(PDA)、诸如膝上型计算机或者笔记本计算机的计算机、其它电子 装置或者其组合。主机装置150通过主机控制器144通信,其中所述主机控制器144可以 使能主机装置150从非易失性存储器104读取数据并且将数据写入到非易失性存储器104。 主机装置150可以依照联合电子装置工程协会(JEDEC)行业规范来操作,所述行业规范诸 如通用闪速存储(UFS)主机控制器接口规范或者嵌入的多媒体卡(eMMC)规范。主机装置 150可以依照一个或多个其它规范,诸如作为示意性示例的安全数字(SD)主机控制器规范 来操作。主机装置150可以根据其它合适的通信协议与非易失性存储器104通信。
[0018] 在操作期间,控制器124可以尝试从页108读取有效数据112。在具体示意性实施 例中,控制器124在开始与非易失存储器104相关联的压缩过程时尝试读取有效数据112。 例如,如果控制器124确定块106的页108贮存了有效数据112和废弃的数据110,控制器 124可以确定有效数据112应被移动到块122 (例如,和与特定的文件相关联
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1