闪存装置纠错码控制器以及相关方法和存储系统的制作方法

文档序号:6783011阅读:94来源:国知局
专利名称:闪存装置纠错码控制器以及相关方法和存储系统的制作方法
技术领域
本发明涉及闪存装置以及,尤其涉及用于检测和纠正存储在闪存装置中的多 位数据中的错误的方法和系统。
背景技术
非易失性存储装置是即使不供电给装置也能保留数据的存储装置。闪存装置是一种非易失性存储装置。虽然闪存往往要比通常用作个人计算机(PC)的主存 的动态随4踏取存储装置(DRAM)慢,但是闪存装置要比硬盘存储器存储装置更 快和对抗冲击更稳健。由于这些特点,因此闪存装置广泛用作电池操作的存储装 置中的^f诸单元。闪存装置是电可擦除且可编程的。因而,和电可擦除可编程的只读存储装置 (EEPR0M)不同,可以以逐块方式一察P斜口编程闪存装置。由于闪存装置比EEPR0M 装置便宜,因此例如闪存装置广泛用于诸如数字音乐播放器、数字相机和蜂窝式 电话之类的产品中的高容量固态非易失性存储。闪存装置还用于通用串行总线 (USB )驱动中,这些通用串行总线驱动广泛用于肩—诸数据以及在计算机之间传输 数据。闪存装置将数据存储在一个或多个单元阵列中。阵列中的每个单元包括存储 一位数据的浮置栅晶体管。在现有技术中已公知多级单元(MLC)闪存装置,该闪 存装置可以在每个单元存储不止1位数据。通过控制累积在每个单元的浮置栅上 的电荷数量,MLC闪存装置在每个单元中存储不止1位数据。这里,每个存储单元 存储了 l位数据的闪存装置称作单级单元或"SLC"闪存装置,每个^#单元## 了 M (M是大于或等于2的正整数)位数据的闪存装置称作MLC闪存装置。对于SLC闪存装置,利用位于数据'T'的阈值电压分布和数据"0"的阈值 电压分布之间的参考电压(参见图1A),可以确定##单元中存储的数据。例如, 基于当参考电压施加到存储单元的控制栅时电流是否流经存储单元,可以确定数 据'T,或"0"。类似地,这种方案可以应用于MLC闪存装置。如图1A所示,使 用两个阈值电压分布来将1位数据^^到^(诸单元中。相反,如图1B和1C所示,使用2M阈值电压分布来将M位数据存储到MLC闪存装置的存储单元中。例如,使 用4个阔值电压分布来将2位数据##到^#单元中(图1B ),使用8个阈值电压 分布来将3位数据存储到存储单元中(图1C ),以及使用16个阈值电压分布来将 4位数据^f诸到存储单元中(图中未示出)。这样,随着##在#^诸单元中的数据 的位数增大,使用的阈值电压分布的数目也随之增大。然而,存储单元的阈值电压必须分布在一预定的电压范围内,而不考虑存储 在存储单元中的数据的位数。因此,随着使用的阈值电压分布的数目的增大,邻 近的阈值电压分布可能如图1B和1C所示彼此重叠。重叠量一般随着存储在^^诸 单元中的数据的位数的增大而增大。重叠量也可能受许多因素影响,诸如电荷损 失、耗去的时间、温度增高、对邻近单元编程时产生的耦合、邻近单元的读操作 和/或单元故障。当邻近阈值电压分布重叠时,读数据可能包^i午多错误。发明内容本发明的一些实施例可以提供用于增强从闪存装置读取多位数据的可靠性的 纠错方案。依照本发明的一些实施例,1是供用于##了 M位lt据的闪存装置的ECC控制 器,M是等于或大于2的正整数。这些ECC控制器可以包括编码器,该编码器配置 成利用第一纠错方案,响应存储在闪存装置中的输入数据来产生第一 ECC数据, 利用第二纠错方案,响应输入数据来产生第二 ECC数据。输入数据、第一ECC数 据和第二ECC数据^f诸在闪存装置中。ECC控制器可以进一步包括解码器,该解码 器配置成计算从闪存装置读取的错误的数目,并根据错误的数目,选择利用第一 ECC数据或第二 ECC数据中的一个来纠正读取数据中的错i吴。在一些实施例中,编码器包括第一编码器和第二编码器,第一编码器配置成 利用第一纠错方案来产生第一 ECC数据,第二编码器配置成利用第二纠错方案来 产生第二ECC数据。在一些实施例中,解码器包括第一解码器配置成利用包含 在读取数据中的第一 ECC数据来纠正读取数据中的4晉i吴;第二解码器配置成利用 包含在读取数据中的第二 ECC数据来纠正读取数据中的错i吴;以&醉码控制器, 其配置成计算在读取数据中的错"i吴数目,并进一步配置成基于错误数目,选择性 地控制第一解码器和第二解码器中的一个来纠正读取数据中的错误。在其它实施例中,如果读取数据中的错误数目是3或小于3,则解码控制器控 制第一解码器来纠正读取数据中的^i吴;以及如果读取数据中的4射吴数目是4或大于4,则解码控制器控制第二解码器来纠正读取数据中的错误。在另外的实施例 中,第一纠错方案以比第二纠错方案更决的速度操作,以及第二纠错方案可以纠 正比第一纠错方案更多的《^i吴。在一些实施例中,第一纠错方案可以是利用BCH编码的纠错方案,并且第二纠错方案可以是利用RS编码的纠错方案。在其它实施例中,闪存装置包括数据区和备用区,输入数据^f渚在数据区中,而第一ECC数据和第二ECC数据^^诸在备用区中。在这些实施例中,数据区中的 每个^^诸单元都可以存储M位数据,而备用区中的每个##单元都可以存储1位 数据。例如,闪存装置可以包括NAND闪存装置、N0R闪存装置、PRAM装置或MRAM 装置。在本发明的其它实施例中,存储系统包括用于存储M位数据的闪存装置,M是 等于或大于2的正整数,以及配置成控制闪存装置的存储控制器。#^诸控制器包 括编码器,其配置成利用第一纠错方案来产生用于存储在闪存装置中的输入数据 的第一 ECC数据,以及利用第二纠错方案来产生用于输入数据的第二 ECC数据, 输入数据、第一ECC数据和第二ECC数据^^诸在闪存装置中。可以提供解码器, 其配置成计算从闪存装置中读取的数据中的4ti吴的数目,并根据4^i吴的数目,选 棒性地利用第一 ECC数据和第二 ECC数据中的一个来纠正读取数据中的4射吴。在一些实施例中,编码器包括第一编码器和第二编码器,第一编码器配置成 利用第一纠错方案来产生第一 ECC数据,第二编码器配置成利用第二纠错方案来 产生第二ECC数据。在其它实施例中,解码器包括第一解码器、第二解码器和解码控制器,第一 解码器配置成利用包含在读取数据中的第一 ECC数据来纠正读取数据中的错误, 第二解码器配置成利用包含在读取数据中的第二 ECC数据来纠正读取数据中的错 误,解码控制器配置成计算读取数据中的4fi吴的数目,并根据4fi吴的数目,选择 性地控制第一解码器和第二解码器中的一个来纠正读取数据中的错误。在本发明的其它实施例中,提供了用于纠正M位数据中的错i吴的方法,M是等 于或大于2的正整数。这些方法可以包括通过利用第一纠错方案来产生用于存—诸 在闪存装置中的输入数据的第一 ECC数据;通过利用第二纠错方案来产生用于输 入数据的第二ECC数据;将输入数据、第一ECC数据和第二ECC数据^f诸到闪存 装置中;计算从闪存装置中读取的数据中的4射吴的数目;以及根据^i吴的数目, 选择性地利用第一 ECC数据和第二 ECC数据中的一个来纠正读取数据中的错误。在一些实施例中,纠正读取数据中的4fi吴包括如果读取数据中的4fi吴的数目是3或小于3,则通过利用第一ECC数据来纠正读取数据中的错i吴;以及如果读 取数据中的4fi吴的数目是4或大于4,则通过利用第二ECC数据来纠正读取数据中 的銜吴。在本发明的其它实施例中,提供了用于纠正数据错i吴的方法,其中接收要存 储在闪存装置中的第一数据。利用第一纠错方案为第一数据产生第一纠错码(ECC ) 数据,以及利用第二纠错方案为第一数据产生第二纠错码(ECC)数据。第一数据、 第一 ECC数据和第二 ECC ^f诸在闪存装置中,以及其后从闪存装置中读取第一数 据。然后确定读取的第一数据中的错误的数目,以及基于确定的^"i吴数目,选择 性地利用第一 ECC数据或第二 ECC数据中的一个来纠正第一数据中的错误。


包含附图以更好地理解本发明,引用并构成本说明书的一部分。

本 发明的实施例并,结^i兌明书""^释本发明的原理。在图中 图1A是说明^^诸了 l位数据的闪存装置的阀值电压分布的图; 图1B是说明务賭了 2位数据的闪存装置的阔值电压分布的图; 图1C是说明存储了 3位数据的闪存装置的阈值电压分布的图; 图2是根据本发明的实施例的^f诸系统的方框图; 图3是图2中描述的ECC控制器的实施例的方框图;图4是说明根据本发明的实施例写入闪存装置和/或从闪存装置读取的数据 的才各式的图;图5是说明根据本发明的实施例的图3中所描述的ECC编码器的编码操作的 it^呈图;以及图6是说明根据本发明的实施例的图3中所描述的ECC解码器的解码操作的 錄图。l沐实施方式后面将参考附图更完整地描述本发明的实施例,其中附图中示出了本发明的 实施例。然而,可以不同形式实施本发明,但不应解释为局限于本文提出的实施 例。此外,提供这些实施例,从而使本公开完全且完整,并使本领域技术人员完 全理解本发明的范围。全文中相同的编号指示相同的元件。应理解,虽然这里术语第一、第二等可以用于描述不同的元件,但是这些元9件不应受限于这些术语。这些术语仅用于区分元件。例如,在不脱离本发明的范 围,第一元件可以叫第二元件,以及类似地,第二元件可以叫第一元件。如本文 所使用,术语"和/或"包括一个或多个相关联的列出术语的任意和4^卩组合。这里使用的术语仅是出于描述特定实施例的目的,并不限制本发明。如这里 所使用,单数形式"一"、"一个"和"该"也包括复数形式,除非上下文清楚指 示其它形式。更应理解,本文佳J ]时术语"包括"、"包括了"、"包含"和/或"包 含了"详细说明出现了设定特征、整数、步骤、操作、元件和/或组件,但不排 除其中出现或增加了一个或多个其它特征、整数、步骤、操作、元件、组件和/ 或组。应理解,当元件称作"连接"或"耦合"到另一个元件时,其可以直接连接 或耦合到其它元件,或者可以出现介/viL件。相比而言,当元件称作"直接连接" 或"直接耦合"到另一个元件时,不会出现介入元件。可以类似方式来解释用于描i^iL件之间关系的其它词语(即,"之间"对"直接之间","邻近"对"直4B卩近"等等)。除非以不同方式定义,否则这里使用的所有术语(包括技术和科技术语)具 有和本发明所属领域技术人员通常理解的意义相同的意义。更应理解,这里使用 的术语应解释成具有和本发明及相关领域中意义一致的意义,不应以理想化或极 度正式的意义来解释,除非iix这样清楚地定义。图2是根据本发明的实施例的^^诸系统的方框图。如图2所示,##系统包 括^(渚控制器200和闪存装置300。闪存装置300在存储控制器200的控制下操作。 闪存装置300配置成将M位数据(例如,2位数据,3位数据,4位数据,等)存 储在^H诸单元阵列中的每个单元中。闪存装置300可以实施成例如NAND闪存装置、 NOR闪存装置、相变随才踏耳踏储装置(PR細)、磁随才踏耳傳储装置(MRAM)或 另一种非易失性##装置。^^诸控制器200在主机100的控制下控制闪存装置300。存储控制器200包括 主机接口 210、 ##器接口 220、控制器230和纠错码(ECC)控制器240。主才;U妾 口 210提供具有主机100的接口 ,以及^j诸器接口 220提供具有闪存装置300的 接口。控制器230可以实施成例如控制^孩控制器200的^卩操作的处理器。主 机100和^j诸控制器200可以通过诸如夕卜围部件互连(PCI)总线和/或通用串行 总线(USB)之类的多种通信接口彼》bii信。^f渚控制器200和闪存装置300可以通过乂2^口的NAND/NOR接口方案彼此通信。包括存储控制器200和闪存装置300的存储系统可以例如是诸如闪存卡或智能卡之类的存储卡。ECC控制器240配置成产生用于要^f诸在闪存装置300中的数据的ECC数据。 ECC数据用于镅误检测和/或纠错。ECC控制器240对从闪存装置300读取的数据 才W亍4射吴检测/纠错操作。根据本发明的实施例,ECC控制器240利用第一纠错方 案来产生第一ECC数据,并利用第二纠错方案来产生第二ECC数据。此外,ECC控 制器240检测从闪存装置300中读取的数据中的4fi吴,并根据检测到的4封吴的数 目,选择性地利用第一ECC数据和第二ECC数据中的一个来纠iE4全测到的错误。在本发明的特定实施例中,ECC控制器240可以包括ECC编码器242和ECC解 码器244。 ECC编码器242利用第一纠错方案来产生第一ECC数据,利用第二纠错 方案来产生第二 ECC数据。ECC解码器244检测从闪存装置300中读取的数据中的 4射吴,并基于检测到的4射吴的数目,选择性地利用第一ECC数据和第二ECC数据 中的 一 个来纠正检测到的错误。第 一 纠错方案可以例如是能支持飞击式 (on-the-fly)功能的高速纠错方案。第二纠错方案可以例如是能纠正所读取数 据中的大量4射吴的高性能纠错方案。例如,在一些实施例中,如果检测到的4射吴的数目是3或小于3,则ECC控制 器240利用第一 ECC数据来决速纠正检测到的错误,以及如果检测到的错误的数 目是4或大于4,则ECC控制器240利用第二ECC数据^f青确纠正检测到的错误。 也就是说,如果检测到的4晉误的数目小,则ECC控制器240进行快速纠错,并且 如果检测到的错误的数目大,则ECC控制器240进行精确纠错,虽然相当慢。如上所述,ECC控制器240配置^艮据检测到的错误的数目,利用高速纠错或 高性能纠错来纠正所读取数据中的4射吴。这就能更精确地读取多位数据。图3另i艮据本发明的实施例的图2中所描述的ECC控制器240的方框图。如 图3所示,ECC控制器240可以包括ECC编码器242和ECC解码器244。 ECC编码 器242可以包括第一编码器410和第二编码器412,第一编码器冲Wtit合于高速纠错方案的编码操作,第二编码器执^it合于高性能纠错方案的编码操作。第一编 码器410从主机100接收程序数据IIDATA (即,写入闪存装置的数据),并产生 符合Bose-Chaudhuri-Hocquenghem (BCH )码的第一 ECC数据ECC1,该BCH码适 合于高速纠错方案。第二编码器412接收程序数据IN-DATA,并产生符合 Reed-Solomon (RS)码的第二 ECC数据ECC2,该RS码适合于高性能纠错方案。BCH 码和RS码仅是说明性的,其它诸如例如汉明码和/或巻积码之类的适宜的码,也第一 ECC数据ECC1和第二 ECC数据ECC2和程序数据IN—DATA相关联,接着 通过^f渚器接口 220^f渚在闪存装置300中。图4是说明根据本发明的实施例的写/读数据W-DATA/R—DATA的格式的图, 该数据是^f诸在图3所描述的闪存装置300中的数据/从图3所描述的闪存装置 300中读取的数据。虽然未在附图中描述,但是闪存装置300包括可以具有至少两个存储区的存 储单元阵列。参照图4,自主机100接收的数据(DATA) 4—诸在^#单元阵列的第 一^#区中,其称作主44诸区。涉及^^诸在主务賭区中的数据的ECC数据(ECC1 和ECC2) ^^诸在主务賭阵列的第4賭区中。该第4賭区称作备用区。在本发 明的一些实施例中,主存储区中的每个存储单元都存储多位数据,而备用区中的 每个存储单元都存储单个位数据。在其它实施例中,主存储区可以多位状态既存 储数据又刷诸ECC数据。一般而言,多位数据中的错i吴可以逐位方式出现。也就是说,由于邻近阔值 电压分布之间的重叠,出现数据错误。这意味着所读取数据中的错i吴是不蔓延的。图5是说明图3中所描述的ECC编码器242的编码操作的流程图。参照图3和5,在操作510中,将程序数据IN—DATA输入到ECC编码器242的 第一编码器410和第二编码器412中。在操作520中,第一编码器410和第二编 码器412分别产生第一 ECC数据ECC1和第二 ECC数据ECC2。在操作530中,ECC 编码器242输出包^^呈序数据IN—DATA的写数据W-DATA、第一 ECC数据ECC1和第 二ECC数据ECC2。再参照图3, ECC解码器244包括第一解码器420、解码控制器422和第二解 码器424。将从闪存装置300读取的读取数据R-DATA提供给ECC解码器244。 ECC 角竿码器244检测读取数据R—DATA中的4對吴,并根据检测到的4fi吴的数目,选择性 地利用第一解码器420和第二解码器"4中的一个来进行纠错。例如,在一些实 施例中,如果检测到的错误的数目是3或小于3,则解码控制器422控制第一解码 器420来利用包含在读取数据R-DATA中的第一 ECC数据ECC1进行纠错。如果检 测到的4晉i吴的数目是4或大于4,则解码控制器422控制第二解码器424来利用包 含在读取数据R—DATA中的第二 ECC数据ECC2进行纠错。第一解码器420可以利用包含在读取数据R—DATA中的第一 ECC数据ECC1进 行高速纠错。如果读取数据R-DATA中的错误的数目是3或小于3,则由于4射吴位置多项式(ELP)的简化可以快速进行纠错。第一解码器420支持"飞击式"功能, 用于在将从闪存装置300读取的下一数据输入到其中之前,纠正当前读取ILDATA 中的4^i吴。于是,即使当将多个读取数据R-DATA成功输入到ECC解码器244中时, 也不需要额外的时间来进行纠错。在本发明的一些实施例中,对于高速操作,用 于第一解码器420的纠错方案可以通过硬件实施。第二解码器424可以利用包含在读取数据R—DATA中的第二 ECC数据ECC1进 行高性能纠错。如果读取数据R-DATA中的4射吴的数目是4或大于4,则由于ELP 的复杂性,纠错方案更难于在硬件中实施。于是,第二解码器424可以采用更强 大的纠错方案,即使要花费更多的时间来进行纠错。采用RS码的高性能纠错方案 足以克服最大纠正长度内的区间错i吴,并以逐符号(symbolby symbol)的方式在操作 中纠正4射吴。于是,这种高性能纠错方案可以适用于当4封吴的数目较大时的纠错。 在另一种实施例中,第二解码器424可以利用##在图2中所描述的##控制器 200中的緩冲##器(未示出)中的纠错软件来^^亍解码操作。当花在第二解码器424的纠错操作上的时间大于读取数据R-DATA的输入周期 时,解码控制器424可以扭軒控制操作,从而使在第二解码器424的解码操作期 间,不从闪存装置300中接收额外的读取数据R-DATA。图6是描述根据本发明的特定实施例的图3中所描述的ECC解码器244的解 码操作的^^呈图。如图6所示,在操作610中,解码控制器422从闪存装置300 中接收读取R—DATA。在操作620中,通过例如校正子(syndrome)计算,解码控制 器422计算读取数据R-DATA中的4l"i吴的数目。如果没有检测出4封吴(操作630 ), 则解码控制器422通iii才;U妄口 210将相应的数据传输到主机100 (操作670 )中。如果检测到的错〖吴的数目例如是3或小于3 (在操作640中),则解码控制器 422利用第一ECC数据ECC1来控制第一解码器420进行纠错(在操作650中)。如 果检测到的错艮的数目是例如4或大于4,则解码控制器422利用第二 ECC数据 ECC2来控制第二解码器424进行纠错(在操作660中)。将从第一解码器420和第 二解码器424中的一个输出的被纠正了^"i吴的数据通过主才;U妾口 210传递到主机 100中(操作670 )。如上所述,包括例如高速纠错方案和高性能纠错方案的双重纠错方案可以用 于^f诸和读取多位数据,从而可以精确读取初始多位数据。上面公开的主题被视为是说明性的,而不是限制性的,所附权利要求将涵盖 其落在本发明的真实精神和范围内的所有这样的修改、增强以及其它实施例。因而,在法律允许的最大程度内,由下列权利要求及其等价物的最宽许可解释来确 定本发明的范围,不应局限或受限于前面的详细描述。本美国非临时性专利申请按照35 U. S. C § 119要求在2007年1月8日提交 的编号为10-2007-0002090的韩国专利申请的优先权,因此本申请全文引用该优 先权申请。
权利要求
1、一种用于闪存装置的纠错码控制器,闪存装置在每个存储单元中存储M位数据,M是等于或大于2的正整数,该纠错码控制器包括编码器,其配置成利用第一纠错方案,响应存储在闪存装置中的输入数据来产生第一纠错码数据,以及配置成利用第二纠错方案,响应该输入数据来产生第二纠错码数据;以及解码器,其配置成计算从闪存装置中读取的数据中的错误的数目,并根据错误的数目,选择性地利用第一纠错码数据或第二纠错码数据中的一个来纠正读取数据中的错误。
2、 如权利要求1的纠错码控制器,其中编码器包括第一编码器,其配置成利用第一纠错方案来产生第一纠错码数据;以及 第二编码器,其配置成利用第二纠错方案来产生第二纠错码数据。
3、 如权利要求l的纠错码控制器,其中从闪存装置读取的数据包括所读取的 输入数据,所读取的第一纠错码数据和所读取的第二纠错码数据,以及其中解码 器包括第一解码器,其配置成利用包含在读取数据中的第一纠错码数据来纠正读取 凄t据中的4ti吴;第二解码器,其配置成利用包含在读取数据中的第二纠错码数据来纠正读取 数据中的4射吴;以及解码控制器,其配置成计算读取数据中的错i吴的数目,并进一步配置成基于 4脊误的数目,选择性地控制第一解码器或第二解码器中的一个来纠正读取数据中 的銜吴。
4 、如权利要求3的纠错码控制器,其中如果读取数据中的4fi吴的数目是3或 小于3,则解码控制器控制第一解码器来纠正读取数据中的错i吴;以及如果读取数 据中的4fi吴的数目是4或大于4,则解码控制器控制第二解码器来纠正读取数据中 的銜吴。
5、 如权利要求l的纠错码控制器,其中第一纠错方案以比第二纠错方案更高 的iiyl操作,以及其中第二纠错方案可以纠正比第一纠错方案更多的4射吴。
6、 如权利要求1的纠错码控制器,其中第一纠错方案是采用了 Bose-Chaudhuri-Hocquenghem (BCH)码的纠错方案,以及第二纠错方案是釆用了Reed Solomon (RS)码的纠错方案。
7、 如权利要求l的纠错码控制器,其中闪存装置的^f诸单元阵列包括数据区 和备用区,和其中输入数据存储在数据区中,以及其中第一纠错码数据和第二纠 错码数据^^诸在备用区中。
8、 如权利要求7的纠错码控制器,其中数据区中的每个存储单it^储M位数 据,以及其中备用区中的每个^f诸单元^(诸1位数据。
9、 如权利要求l的纠错码控制器,其中闪存装置是NAND闪存装置、N0R闪存 装置、相变随才踏耳)1##装置(PR掘)或磁随才踏耳^^诸装置(MRAM)中的一种。
10、 如权利要求1的纠错码控制器,组合闪存装置来形成^#系统。
11、 一种用于纠正数据4晉误的方法,该方法包括 接收要^#在闪存装置中的第 一数据; 利用第一纠错方案,产生第一数据的第一纠错码数据; 利用第二纠错方案,产生第一数据的第二纠错码数据;将第一数据、第一纠错码数据和第二纠错码数据^f渚到闪存装置中; 从闪存装置读取第一数据; 确定在读取的第一数据中的4射吴数目;以及基于确定的4^i吴数目,选择性地利用第一纠错码数据或第二纠错码数据来纠 正第一数据中的错误。
12、 如权利要求ll的方法,其中将第一数据^f诸到闪存装置中包括将第一数 据存储到闪存装置的多个存储单元中,其中将第一数据的多个位存储到多个存储 单元中的至少 一些存储单元中。
13、 如权利要求12的方法,其中纠正第一数据中的4射吴包括 如果读取的第一数据中的错i吴的数目是3或小于3,则利用第一纠错码数据来纠正第一数据中的4對吴;以及如果读取的第一数据中的4fi吴的数目是4或大于4,则利用第二纠错码数据来 纠正第一数据中的错误。
14、 如权利要求12的方法,其中第一纠错方案以比第二纠错方案更高的i4^ 操作,以及其中第二纠错方案可以纠正比第一纠错方案更多的4封吴。
15 、如权利要求12的方法,其中第 一 纠错方案是采用了 Bose-Chaudhuri-Hocquenghem (BCH)码的纠错方案,以及其中第二纠错方案M 用了 Reed Solomon (RS )码的纠错方案。
16、 如权利要求12的方法,其中闪存装置的^f诸单元阵列包括数据区和备用 区,其中第一数据存储在数据区中,以及其中第一纠错码数据和第二纠错码数据 ^f渚在备用区中。
17、 如权利要求16的方法,其中数据区中的每个^f诸单元存储M位数据,以 及其中备用.区中的每个^H诸单元存储1位数据。
18、 如权利要求12的方法,其中闪存装置是NAND闪存装置、N0R闪存装置、 相变随才踏耳^4J诸装置(PRAM)或磁随才踏耳5WH诸装置(MRAM)中的一种。
19、 一种用于纠正^f渚在闪存装置中的数据中的错i吴的方法,该方法包括 从闪存装置读取数据以及第 一纠错码数据和第二纠错码数据; 确定读取数据中的多个4射吴;以及基于所确定的借i吴的数目,选择第一纠错码数据或第二纠错码数据中的一个 用于纠正读取数据中的4射吴。
20、 如权利要求19的方法,其中利用第一纠错方案来产生第一纠错码数据, 以及其中利用第二纠错方案来产生第二纠错码数据。
21、 如权利要求19的方法,其中如果读取数据中的错误的数目是3或小于3, 则选择第 一纠错码数据来用于纠正读取数据中的错误。
22、 一种存^诸系统,其包括闪存装置,其配置成^^诸M位数据,M是等于或大于2的正整数;以及 #^诸控制器,其配置成控制闪存装置,该存储控制器包括 编码器,其配置成通过利用第一纠错方案,响应存储在闪存装置中的输入数 据来产生第一纠错码数据,以及配置成通过利用第二纠错方案,响应该输入数据 来产生第二纠错码数据,第 一纠错码数据和第二纠错码数据存储在闪存装置中; 以及解码器,其配置成计算从闪存装置中读取的数据中的错误的数目,并根据错 误的数目,选择性地利用第一纠错码数据或第二纠错码数据中的一个来纠正读取 数据中的4射吴。
23、 如权利要求22的##系统,其中编码器包括第一编码器,其配置成通过利用第一纠错方案,响应输入数据来产生第一纠 错码数据;以及第二编码器,其配置成通过利用第二纠4昔方案,响应输入lt据来产生第二纠 错码数据。
24、 如权利要求22的^(诸系统,其中解码器包括第一解码器,其配置成利用包含在读取数据中的第一纠错码数据来纠正读取 数据中的4射吴;第二解码器,其配置成利用包含在读取数据中的第二纠错码数据来纠正读取 数据中的4射吴;以及解码控制器,其配置成计算读取数据中的错误的数目,并进一步配置成根据 4封吴的数目,选择性地控制第一解码器或第二解码器中的一个来纠正读取数据中 的銜吴。
25、 如权利要求22的存储系统,其中第一纠错方案是支持飞击式功能的高速 纠错方案,以及第二纠错方案是不支持飞击式功能的高性能纠错方案。
26、 如权利要求22的存储系统,其中第一纠错方案是采用了 Bose-Chaudhuri-Hocquenghem (BCH)码的纠错方案,以及第二纠错方案是采用了 Reed Solomon (RS)码的纠错方案。
27、 如权利要求22的存储系统,其中闪存装置的^—诸单元阵列包括数据区和 备用区,以及其中输入数据存储在数据区中,以及其中第一纠错码数据和第二纠 4晉码数据^f诸在备用区中。
28、 如权利要求27的存储系统,其中数据区中的每个存储单元存储M位数据,以及其中备用区中的每个##单元## 1位数据。
全文摘要
闪存装置纠错代码控制器以及相关方法和存储系统。用于存储了M位(M等于或大于2的正整数)数据的闪存装置的纠错码控制器包括编码器和解码器。编码器利用第一纠错方案产生用于存储到闪存装置中的输入数据的第一纠错码数据,利用第二纠错方案产生用于输入数据的第二纠错码数据。将输入数据、第一纠错码数据和第二纠错码数据存储在闪存装置中。解码器计算在从闪存装置读取的数据中的错误的数目,基于错误的数目,选择性地利用第一纠错码数据和第二纠错码数据中的一个来纠正读取数据中的错误。
文档编号G11C29/42GK101329916SQ200810144628
公开日2008年12月24日 申请日期2008年1月8日 优先权日2007年1月8日
发明者朴时莹, 李东栗, 李昶德, 许硕原 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1