检测由于读干扰而造成的位错误的存储系统及其方法

文档序号:6469759阅读:161来源:国知局
专利名称:检测由于读干扰而造成的位错误的存储系统及其方法
技术领域
本发明涉及一种存储系统,特别涉及一种能够检测并更正读错误的存储系统。
背景技术
由于多种原因而造成的数据损坏可以利用错误检测和更正技术进行有效 地恢复。例如,当数据驻留在存储器中时和/或当通过数据传送通道从源传送到 目的地时,该数据可能被损坏。
多种方法已经提出来用于检测并更正被损坏的数据。熟知的错误检测技术 包括读-所罗门 (Read-Solomon ,RS ) 编码、汉明码、 Bose-Chaudhuri-Hocquenghem( BCH )编码、循环冗余;马(Cyclic Redundancy Code: CRC)编码等等。利用这些编码能够检测并更正损坏的数据。
在利用非易失存储器件的电子设备中,数据可以和称之为错误更正代码 (Error Correcting Code, ECC )的值(此后,指代ECC数据) 一起存储在所述 非易失存储器件(如,闪存器件)中。如本领域所熟知的,ECC数据可以被用 于更正在闪存器件读操作期间的错误。然而,更正这种错误的能力受到使用 ECC数据的特定类型所能同时更正的错误位数量的限制。在读操作期间检测到 的位错误可以通过错误检测和更正代码被更正,而不是必须使用单独的数据修 补处理,如块替换处理。
图1是说明传统闪存器件的模块图,以及图2是说明图1中闪存器件的读 操作的时序图。
传统的闪存器件可以包括存储单元阵列,该存储单元阵列具有多个存储
块。图1仅仅说明一个存储块BLK0。所述存储器块BLKO可以包括分别与位 线连接的多个行(或者,指一NAND行)。每行具有行选择晶体管SST、接地 选择晶体管GST,以及串行连接在选择晶体管SST和GST之间的存储单元(或 存储单元晶体管)MCO MCn-l。
选择晶体管SST和GST的栅极分别连接到行和接地选择线SSL和GSL。 存储单元晶体管MCO-MCn-1的控制栅极分别连接到对应的字线WLO WLn-l。 位线BLO和BL1分别连接到对应的页面緩存PB。
如图2所示,对于读操作,用OV电压驱动被选择的字线(例如,WLO), 并且用读取电压Vread驱动各个未被选择的字线(例如,WLl WLn-l )。这时, 分别向行和接地选择线提供所述读取电压Vread。页面緩存PB把感测电流施加 到对应的位线BLO和BL1 。
位线BLO和BL1上的电压可以根据连接到所述被选择的字线上的存储单 元的单元状态来确定。例如,如果连接到所述被选择的字线的存储器是ON单 元,则在位线上的电压可以降低到接地电压。另一方面,如果连接到所述被选 择的字线的存储器是OFF单元,则在位线上的电压可以增加到电源电压。然后, 与单元数据一样,位线上的电压可以被相应的页面缓存检测到。
为了描述的方便,连接到未被选择的字线的存储单元被称为未被选择的存 储单元,以及连接到被选择的字线的存储单元被称为被选择的存储单元。

发明内容
在一些实施例中,读取存储器系统中闪存的方法包括读取来自闪存主页面 的数据。检测并更正从主页面中读取的数据中的位错误。并行于从主页面读取 数据,从闪存的虚拟(dummy)页面读取数据。检测从闪存的虚拟页面读取的 数据中的位错误。
在 一 些另外的实施例中,虚拟页面是从闪存的多个页面中随机地选择的。 在 一 些另外的实施例中,虚拟页面是根据闪存中的页面定义的顺序来选择的。
在一些另外的实施例中,ECC算法用来检测从虚拟页面读取的数据中的位 错误的数量,并且响应于当检测到的位错误的数量超过ECC算法的更正范围 时,把与包含所述虚拟页面的存储块相关联的地址映射到另 一存储块。
在一些另外的实施例中,ECC算法用来检测从虚拟页面读取的数据中的位
错误的数量,并且响应于当检测到的位错误的数量超过所述ECC算法的更正范
围时,把检测结果存储在存储器件中。
在一些另外的实施例中,检测结果存储在存储器件的闪存中。
在一些另外的实施例中,检测结果存储在控制闪存的存储控制器中的存储
器件中。
在一些另外的实施例中,存储器件包括存储控制器的緩冲存储器。 在一些另外的实施例中,取决于存储在存储器件中的检测结果的值,包括
所述虚拟页面的闪存的存储块被另 一存储块选择性地替换。
在一些另外的实施例中,响应于所述存储系统的上电,取决于存储在所述
存储器件中的检测结果的值,包括所述虚拟页面的闪存的存储块被另一存储块
选择性地替换。
在一些其它的实施例中,读取存储系统中闪存的方法包括确定何时所述闪
存的主页面被重复读取了至少N次。响应于确定所述主页面被重复读取了至少 N次,并行地从所述主页面和所述闪存的虚拟页面读取数据。
在一些另外的实施例中,当所述主页面被确定已经重复读取少于N次时, 不与所述主页面并行读取虚拟页面。
在一些另外的实施例中,从所述闪存中的多个页面中以随机的方式选择虛 拟、页面。
在一些另外的实施例中,根据所述闪存中的页面的定义顺序来选择虛拟页面。
在一些另外的实施例中,ECC算法用来检测从所述虚拟页面读取的数据中 的位错误的数量,并且响应于当检测到的位错误的数量超过所述ECC算法的更 正范围时,把与包含所述虛拟页面的存储块相关联的地址映射到另一存储块。
在一些另外的实施例中,ECC算法用来检测从所述虛拟页面读取的数据中 的位错误的数量,并且响应于当检测到的位错误的数量超过所述ECC算法的更 正范围时,把检测结果存储在存储器件中。
在 一 些另外的实施例中,检测结果存储在所述存储器件的闪存中。
在一些另外的实施例中,检测结果存储在控制闪存的存储控制器的存储器 件中。
在一些另外的实施例中,存储器件包括所述存储控制器的緩冲存储器。 在一些另外的实施例中,取决于存储在所述存储器件中的检测结果的值,
包括所述虚拟页面的闪存的存储块被另 一存储块选择性地替换。
在一些另外的实施例中,进一步响应于所述存储系统的上电,执行所述选
择性地替换存储块。
在一些其它的实施例中,存储系统包括具有多个页面的闪存和被配置成用
于控制所述闪存的存储控制器。所述存储器控制器被配置成用于确定何时所述
闪存的主页面^皮重复读取了至少N次,以及用于响应确定所述主页面#:重复读 取了至少N次时,并行地从所述主页面和所述闪存的虚拟页面中读取数据。 在一些另外的实施例中,所述存储控制器被配置成响应于确定所述主页面
净皮重复读取少于N次时,读取主页面而不并4亍读取虚拟页面。
在 一些另外的实施例中,从所述闪存的多个页面中以随机的方式选择虛拟 页面。
在一些另外的实施例中,从所述闪存的多个页面中以顺序的方式选^f虚拟 页面。
在一些另外的实施例中,所述存储控制器被配置成利用ECC算法来检测从 所述虚拟页面读取的数据中的位错误的数量,并且响应于当检测到的位错误的 数量超过所述ECC算法的更正范围时,把与包括所述虚拟页面的存储块相关联 的地址映射到另一存储块。
在一些另外的实施例中,所述存储器控制器被配置成利用ECC算法来检测 从所述虚拟页面读取的数据中的位错误的数量,并且响应于当检测到的位错误 的数量超过所述ECC算法的更正范围时,将检测结果存储在存储器件中。 在一些另外的实施例中,所述存储器件位于所述闪存中。 在一些另外的实施例中,所述存储器件位于所述存储控制器中。 在一些另外的实施例中,所述存储控制器被配置成取决于存储在所述存储 器件中的检测结果的值,用另 一存储块来选择性的替换包括所述虚拟页面的闪 存的存储块。
在一些另外的实施例中,所述存储控制器被配置成通过取决于存储在所述 存储器件中的^f企测结果的值,用其他的存储块来选择性地替换包括所述虚拟页 面的闪存的存储块,来响应于所述存储系统的上电。
在一些另外的实施例中,所述闪存和所述存储控制器包括存储卡。 在一些其它的实施例中,读取包括闪存的存储系统的方法包括读取所述 闪存的主页面;以及检测并更正在所述主页面产生的位错误,其中与读取主页
面并行地读取除所述主页面之外的虚拟页面,并且检测在所述虚拟页面产生的 位错误。
在一些其它的实施例中,读取包括闪存的存储系统的方法包括确定是否 所述闪存的主页面被重复读取了 N次;以及如果判定所述主页面被重复读取了 N次,在所述主页面的第N次读取操作后,并行读取所述主页面和虚拟页面。
在一些其它的实施例中,存储系统包括具有多个页面的闪存;以及用于 控制所述闪存的存储控制器,其中所述存储控制器被配置为判断是否所述闪存 的主页面被重复读取了N次,以及如果所述主页面被判定重复读取了N次,则 在所述主页面的第N次读操作后并行地读取所述主页面和虚拟页面。


本发明的非限制性和非穷尽的实施例将通过参照下面的附图来描述。在附 图中
图l是说明传统闪存器件的模块图2是说明图1中所示的闪存器件读操作的时序图3是存储晶体管的横截面视图,说明可能导致软件编程现象的读干扰的
发生;
图4是说明对应于导通单元和截止单元的阈值电压分布的曲线图; 图5是说明读周期数量和故障位数量之间相互关系的曲线图; 图6是说明根据本发明 一 些实施例的存储系统的模块图; 图7是说明根据本发明一些实施例在图6所示的存储系统的读操作的流程 图;以及
图8是说明根据本发明一些实施例,当同时读取主页面和虚拟页面时施加 到字线上的读电压的数量的表格。
具体实施例方式
本发明的实施例将通过参照本发明实施例所在的附图,更充分地进行描 述。然而,本发明可以用多种不同的形式来实现并且不能解释为限于此处提出 的实施例。事实上,提供这些实施例是为使公开的更加彻底和完整,并且充分 地将本发明的范围传达给本领域的技术人员。整篇中相同的数字指代相同的元件。
可以理解,虽然术语第一、第二等等可以在此用于描述不同的元件,但是 这些元件不受这些术语的限制。这些术语仅仅用于将一元件与另一元件区分开。 例如,第一元件可以被称为第二元件,以及,相似地,第二元件可以被称为第 一元件,而不背离本发明的范围。如同此处使用的,术语"和/或"包括一个或 多个相关的所列出的项目的任意和所有组合。
此处使用的术语仅仅是为了描述特定的实施例的目的而不是意在限制本 发明。如同此处使用的,单数形式"一"、"一个"和"所述"同时也意在包括 复数的形式,除非上下文清楚地指明其它方式。此外应理解,当在此使用术语 "构成"、"构成...的"、"包括"和/或"包括..,的"时,指定了所述的特征、整 数、步骤、操作、元件和/或组件的存在,但不排除具有或附加有一个或多个其 它的特征、整数、步骤、操作、元件、组件和/或其组合。
除非另外定义了,否则此处使用的所有术语(包括技术和科学术语)都具 有本发明所属技术领域的普通技术人员通常理解的同样含义。此外应理解,此
的含义相一致的含义,并且不能解释为理想化或过于形式化的意义,除非此处 寻皮这样清楚地定义。
应理解,当一元件,例如薄膜、层、区域或衬底,被指定位于另一元件"之 上,,或者扩展到"在…之上"时,可以是直接位于或扩展地直接在其它元件之 上,或者还可以存在中间的元件。相反地,当一元件被指定"直接之上,,或扩 展到"直接在…之上"另一元件时,就不存在中间元件。还应理解的是,当一 元件被指定"连接到"或"耦合到,,另一元件,它可以直接连接到或者耦合到 另一元件,或者可以存在中间元件。相反地,当一元件被指定为"直接连接到 "或"直接耦合到"另一元件,则不存在中间元件。
相关术语,如"在…之下"、或"在…之上"、或"上面"、或"下面',、或 "水平地"、或"垂直地",可以在此处用于描述如附图中所示的一元件、层或 区域相对于另一元件、层或区域的关系。应理解,这些词语意在包括除附图中 描述的方位之外的设备的不同方位。
本发明的实施例此处将参照本发明的理想化的实施例(和中间结构)的示 例性附图来进行描述。为了清楚起见,附图中的薄膜、层和区域的厚度被夸大 了。此外,作为例如制造技术和/或容许误差的结果的所述示例的形状变化是可 以预期的。这样,本发明的实施例不应该被解释为限制于此处所示的区域的特
定形状,而是包含例如由于制造而导致的形状偏差。例如,所示为矩形的^^皮蚀 刻/离子注入的区域,典型地将具有圓形或曲线特征,和/或在其边缘具有离子
注入(implant)浓度的梯度而不是从被离子注入到未被离子注入的区域的离散 变化。同样的,由离子注入形成的被掩埋(buried)区域将导致在所述被掩埋 区域和发生所述离子注入的表面之间的区域中的一些离子注入。这样,附图中 所示的所述区域在本质上作了示意,而且它们的形状并不是意在表示设备的区 域的实际形状并且不是意在限制本发明的范围。
如上面提出的,从被选择的存储单元读取单元数据,把读电压Vread施加 到未被选择的存储单元的字线上。所述读电压Vread是用以导通具有OFF状态 的存储单元晶体管的足够高的电压。
在读操作期间,所述读电压Vread提供给未被选择的存储单元晶体管的控 制栅极,并且接地电压提供给所述未被选择的存储单元晶体管的衬底(或,整 体(bulk))。此时,给定电压提供给所述未被选择的存储单元晶体管的漏极。 此偏压条件可以类似于编程操作的偏压条件,除了偏压电平以外。
利用此偏压条件,如图3所示的,在读操作期间,电子能够从衬底被注入 到未被选择的存储单元晶体管的浮动栅极。即,在读操作的偏压条件下ON状 态(或,擦除状态)的未被选择的存储单元晶体管可以被软件编程。这被称为 "读干扰"。
此读干扰可以造成ON状态(或,擦除状态)的存储单元的阈值电压一点 点地增加。如图4中虚线所示对应于读操作的重复,此阈值电压进一步增加。 这可能使具有ON状态的存储单元被错误地识别为具有OFF状态。即,由于读 干扰而造成的阈值电压的增加可以造成由于错误检测的状态而导致的读取失 败。
如上所述的,在读操作期间出现的位错误可以通过错误检测和更正技术进 行更正,而不必使用单独的修补处理,诸如熟知的块替换处理。当读操作重复 进行,如图5所示,可能读故障会增加。这样,虽然一些数据错误能够被更正, 但是在后续的读操作期间发生进一步的错误的可能性会很高,并且可能超出所 述错误检测和更正技术的错误更正能力。
当位错误的数量超出可更正的极限时,包含所述位错误的存储器中的相应 块被标识为坏块。利用修补处理将闪存器件中的所述坏块替换为预留的存储块, 该修补处理例如块替换处理,是将替换存储块映射到之前被映射到所述坏块的
地址上。注意到,由于读干扰而被标识为损坏的这样的块,不会由于编程和擦 除操作的重复而损坏。相应地,通过对这些块执行擦除操作能够重新使用闪存 器件中的这些坏块。
当存储块中的 一些页面被重复读取时,很难检测关于剩余页面的位错误。 相应地,很难防止页面数据被损坏。例如,当存储在特定存储页面中的音乐文
件被MP3播放器重复读取时,读电压持续地施加在其他未被选择的页面上。以 至于最终导致那些未被选择的页面出现上述的读干扰现象。因为被选择的页面 没有典型地遭受所述读干扰现象,不可能检测并更正在那些未被选择的页面中 产生的位错误。
图6是说明根据本发明的存储系统的模块图。参照图6,根据本发明的存 储系统100可以包括主机110、存储控制器120和闪存130。
图6中,存储器控制器120和闪存130可以合并于例如USB存储器、存储 卡(例如,MMC、 SD卡、xD卡、SIM卡等)或类似这样的存储器中。此外, 这样的存储器可以被配置成与主机110相连的诸如桌面电脑和膝上型电脑、数 码相机、手机、MP3播放器、PMP、游戏机和类似的东西。
用本发明的存储系统100,当主机110重复读取闪存130的仅仅一个或多 个页面(此后,称为主页面)时,可能检测并更正发生在其它未被选择的页面 (此后,称为虚拟页面)中读干扰问题。可能导致这种读干扰的应用实例可以 包括当存储在主存储页面中的音乐文件被MP3播放器重复重读时,以及当存储 在主存储页面中的游戏程序被游戏设备重复执行时的情况。
存储控制器120可以被配置成响应于一个或多个来自主机110的请求来重 复读取闪存130的主页面PAGE—K。存储控制器120可以^皮配置成在执行关于 所述主页面PAGE—K的读取操作的同时(并行)读取虛拟页面PAGE—I。此处, 所述主页面PAGE_K的读取操作被称为"主读取操作,,,以及所述虚拟页面 PAGE—I的读取操作被称为"虚拟读取操作"。虽然图6仅仅示出一个主页面 PAGE—K和一个虚拟页面PAGE一I,但是本发明并不限于此,因为所述主页面和 虚拟页面中的一个或两者均可以包括两个或更多的页面。
进一步参照图6,存储控制器120可以包括主机接口 121、闪存接口 122、 中央处理单元(CPU) 123、 ECC电路124、 ROM 125以及RAM (或,被称为 緩存RAM) 126。当主机110请求关于主页面PAGE—K的读取操作时,存储控 制器120选择所述主页面PAGE—K并且进一步选冲奪所述虚拟页面PAGE—I,以
并行地(同时)执行所述主读取操作和所述虛拟读取操作。存储控制器120可 以以随机的方式或者根据闪存130中页面间的预定的顺序来选择所述虚拟页面 PAGE一I。
主机接口 121被配置成与主机110的接口,并且闪存接口 122被配置成与 闪存130的接口。 CPU 123被配置成响应来自主机110的请求来控制闪存130 的读和写操作。
ECC电路124利用被传输到闪存130的数据(主数据)来产生ECC数据。 所述产生的ECC数据被存储在闪存130的空闲区域中。ECC电路124可以检 测从闪存130中读取的数据中的一个或多个错误。如果检测到的错误是可更正 的(或,检测到的错误是在ECC电路124的更正范围内),ECC电路124更正 该检测到的错误。虽然ECC电路124被示为是在控制器120中的功能模块,但 可以改作被合并到存储控制器120外部的另一功能模块中,如在闪存130中。 ROM 125可存储例如启动代码这样的数据,以及RAM 126可用作緩存。 RAM126可以临时存储从闪存130读取的数据,或者是将要写入闪存130中的 来自主机110的数据。此外,RAM126可以存储由CPU123操作的闪存转换层
(Flash Translation Layer, FTL )。 RAM 126可以包括DRAM 、 SRAM和/或其它 的随机存取存储器件。
RAM 126可以存储用于管理读错误信息的表格信息。所述表格信息包括元
(meta)数据,并且在CPU 123的控制下被存储在闪存130的元区域。当存储 器系统100上电时,所述表格信息可以从闪存130的元区域拷贝到RAM 125 中。
继续参照图6,闪存器件130可以包括单元阵列131和控制单元132。控 制单元132可以包括行解码器、列解码器、页面缓存、位线选择电路、数据缓 存以及多种其它传统电路。
单元阵列131可以包括多个存储模块BLKO BLKn-l,其中每个存储模块 都具有多个页面,例如,32或64个页面。每个页面都具有连接起来以共享一 个字线的多个存储单元(例如,512B或2KB的存储单元)。对于NAND闪存, 在存储单元上执行擦除操作,并且在页面单元上执行读和写操作。闪存130可 以在每个单元存储一位数据或多位数据。
根据一些实施例,存储系统100被配置成并行地同时读取主页面PAGE—K 和虚拟页面PAGE一I。由于主读取操作与虚拟读取操作同时执行,闪存130的主页面PAGE—K可能像所述虚拟页面PAGEJ—样遭受读干扰现象。此外,根 据一些实施例,利用ECC算法来检测在所述虚拟页面PAGE—I上的由于读干扰 而引起的位错误是可能的。
图7是说明根据本发明一些实施例的读取图6中所示存储系统100的多种 方法的流程图。这些方法将参照图6和图7进4亍描述。在图7中,对虚拟页面 PAGE—I的读操作可以与对主页面PAGE—K的读操作并行(同时)执行。开始, 主机110请求关于闪存130的主页面PAGE—K的读操作。存储控制器120响应 来自主机110的读请求执行所述主页面PAGE—K的读操作。
步骤S110说明了关于所述主页面PAGE—K的主读取才喿作。存储控制器120 响应来自主机110的读请求读取所述主页面PAGE—K。存储控制器120并行地 执行所述虚拟页面PAGE一I的读操作和所述主页面PAGE一K的读操作。对所述 虚拟页面PAGE—I的读操作将在步骤S200中描述。
在步骤S120中,存储控制器120利用ECC电路124可以确定是否在所述 主页面PAGE—K上发生了位错误。如果没有,则在步骤S160,存储控制器120 将从所述主页面PAGE—K读取的数据发送给主机110。然而,如果检测到位错 误,则所述过程转到步骤S130,在那里确定所述位错误是否超出第一更正范围 Limit—1。例如,假设ECC电路124的第一更正范围Limit—1能够同时更正四个 错误位,在步骤S130中确定所述位错误是否包括五个或更多的错误位。当所 述位错误没有超出第一更正范围Limit—1时,在步骤S140中所述位错误能够被 更正。然而,当所述位错误超出了第一更正范围Limit—1时,所述过程转到步 骤S150,在那里执行读取恢复操作。
此处,所述读取恢复操作被配置成恢复由于一读干扰现象而损坏的页面数 据。在所述读恢复操作期间,包括所述损坏页面的存储块的数据被拷贝回另一 存储块。例如,假设图6中存储块BLKO的主页面PAGE—K被损坏,所述存储 块BLKO中的数据拷贝回另一存储块(例如,BLK1)。所述读取恢复操作包括 将页面数据移动到RAM 126并且将RAM 126中的所述数据拷贝到新数据块。 此外,所述读取恢复操作可以包括通常用于NAND闪存中的拷贝-回(copy-back) 编程操作。
如所描述的,所述读取恢复操作可以在步骤S150期间执行并且然后转到 步骤S140。或者,需要读取恢复的页面可以在步骤S150被标识并且然后转到 步骤S140,而所述读取恢复操作可以在晚一点的时间被执行。例如,响应存储
器系统100的上电和/或响应闪存130的空闲时间的出现来执行所述读取恢复操 作。
根据本发明的一些实施例的存储系统100在步骤S200中与读取所述主页 面PAGE一K并行地(同时)读取所述虛拟页面PAGEJ。可以以随才几的方式或 者根据预定顺序在闪存130中选择所述虚拟页面PAGE—I。
在步骤S210,执行关于所述虚拟页面PAGE一I的虚拟读取操作,其中所述 虚拟页面PAGEj与所述主页面PAGE—K位于所述闪存的不同的位置。在步骤 S220, ECC电路124确定是否在从所述虚拟页面PAGE—I中读取的数据中出现 了位错误。如杲没有出现错误,则在步骤S160中所述存储控制器120把从所述 虚拟页面PAGE—I中读取的数据发送给主机110。相反地,当发生位错误时,所 述过程转到步骤S230。
在步骤S230,对于所述位错误的数量是否超过第二更正范围Limit—2做出 判定。例如,假设ECC电路124的第二更正范围Limit—2是三个错误位(能够 同时更正3位),则在步骤S230中确定所述位错误的数量是否包括四个或更多 的错误位。当所述位错误没有超出所述第二更正范围Limit_2时,则在步骤S160 中从所述虚拟页面PAGE—I中读取并且被ECC电路124更正的数据被发送给主 机IIO。相反地,当所述位错误的数量超出第二更正范围Limit—2时,所述过程 转到步骤S240,在那里以上面所描述的方式执行读取恢复操作。此后,所述过 程转到步骤S160。
根据一些实施例,响应于所述主页面PAGE一K^皮重复读取了所定义的次数 的判定,执行关于所述虚拟页面PAGEJ的读操作。例如,响应于所述主页面 PAGE—K被重复读取了阈值N次(N是一整数),在所述第N次读操作之后, 所述主页面PAGE—K和虚拟页面PAGE—I在每个后续的时间以并行方式同时被 读取。所述主和虚拟读取操作以图7中描述的相同方式被执行。
通过并行于主页面的读取操作执行虛拟页面的读取操作,本发明的多个实 施例因此能够;险测由于重复读取主页面的"t喿作而产生的位错误。相应地,所述 主页面可能像不同页面一样遭受相同/相似的读干扰。并且,因为虚拟读"t喿作是 在不同于所述主页面的虚拟页面执行的,因此多种实施例都能够检测发生在所 述虚拟页面中的位错误。
图8是说明施加到字线上的用以触发同时读取主页面和虚拟页面的读电压 的数量的图表。当只有主页面PAGE—K被重复读取时,在三次读操作之后没有
读电压Vread施加到所述主页面PAGE—K。相反地,所述读电压Vread三次施 加到除了所述主页面PAGEJC之外的剩余页面。这将可能导致所述剩余页面遭 受读干扰并且可能导致发生在所述剩余页面中的位错误。
为了检测由于读干扰而导致的剩余页面中的位错误,如图8所示,本发明 的多种实施例与读取所述虚拟页面PAGE—0、 PAGE—62以及PAGE—3并行地读 取所述主页面PAGE—K。
在第一周期,执行关于所述主页面PAGE—K和第一随机页面PAGE—0的读 操作。如果执行主读取操作,读电压Vread被施加到所述剩余页面而不施加到 所述主页面PAGE一K。相应地,参照图8,在主页面PAGE—K上标识"0"而在 剩余页面上标识T。
当执行关于第一随机页面PAGE—0的虛拟读操作时,读电压Vread被施加 到所述剩余页面而不施加到所述第一随机页面PAGE—0。相应地,参照图8,在 主页面PAGE—K和在所述第一随机页面PAGE—0上标识"1",以及在所述剩余 页面上标识"2"。
在第二周期,执行关于所述主页面PAGE_K和第二随机页面PAGE—62的 读操作。如果^丸行主读取操作,读电压Vread被施加到所述剩余页面而不施加 到所述主页面PAGE—K。相应地,参照图8,在主页面PAGE—K上标识"1"并 且在所述第一随机页面PAGE—0上标识"2",以及在剩余页面上标识"3"。
当执行关于所述第二随机页面PAGE—62的虚拟读才喿作时,读电压Vread 被施加到所述剩余页面而不施加到所述第二随机页面PAGE__62。相应地,参照 图8,在主页面PAGE—K上标识"2"并在所述第一和第二随机页面PAGE一O和 PAGE—62上标识"3",以及在剩余页面上标识"4"。
在第三周期,如上面描述的方式一样,^L行关于所述主页面PAGE—K和第 三随机页面PAGE—3的读操作。当执行关于所述第三随机页面PAGE—3的虚拟 读才乘作时,对所述主页面PAGE—K施加所述读电压Vread三次,对所述第一、 第二以及第三随机页面PAGE—0 、 PAGE—62以及PAGE—3施加所述读电压Vread 五次,并且对所述剩余页面施加所述读电压Vread六次。
这样,根据本发明的一些实施例,当主页面被重复读取时,虚拟页面也被 供给读电压Vread。因为所述读电压Vread被施加到所述虚拟页面,很可能会促 使读干扰在那里的发生。相应地,能够检测并更正由于读干扰而造成的位错误。 此外,由于虚拟页面的读操作与所述主页面并行执行,因此能够检测发生在所
述虚拟页面中的位错误。
上面公开的主题应被认为是示例性的,而不是限制性的,并且所附的权利 要求意在覆盖落在本发明的精神和范围之内的所有如修改、改善和其它的实施 例。因此,在法律允许的最大程度下,本发明的保护范围由权利要求及其等效 物的可允许的最宽的解释来确定,并且不应该限制或局限于前面的具体描述。
权利要求
1.一种读取存储系统中的闪存的方法,所述方法包括从所述闪存的主页面读取数据;检测并更正从所述主页面读取的数据中的位错误;并行于从所述主页面读取数据,从所述闪存的虚拟页面读取数据;检测从所述闪存的虚拟页面中读取的数据中的位错误。
2. 如权利要求1所述的方法,其中,所述的虚拟页面是从所述闪存的多 个页面中随机地选择的。
3. 如权利要求1所述的方法,其中,所述虚拟页面是根据所述闪存的页 面所定义的顺序来选4奪的。
4. 如权利要求l所述的方法,还包括使用ECC算法来检测从所述虚拟页面读取的数据中的位错误的数量;以及 响应于当所述检测到的位错误的数量超出所述ECC算法的更正范围时,把 与包括所述虚拟页面的存储块相关联的地址映射到另 一存储块。
5. 如权利要求l所述的方法,还包括利用ECC算法来检测从所述虚拟页面读取的数据中的位错误的数量;以及 响应于当所述的检测到的位错误的数量超出所述ECC算法的更正范围时, 把检测结果存储在存储器件中。
6. 如权利要求1所述的方法 ,其中,所述检测结果被存储在所述存储器件的闪存中。
7. 如权利要求5所述的方法 ,其中,所述检测结果被存储在控制所述闪存的存储控制器的所述存储器件中
8. 如权利要求7所述的方法 ,其中,所述存储器件包括所述存储控制器的緩存。
9. 如权利要求5所述的方法,还包括取决于存储在所述存储器件中的所述检测结果的值,用另 一存储块来选择 性的替换包含所述虛拟页面的所述闪存的存储块。
10. 如权利要求9所述的方法,还包括响应于所述存储系统的上电,取 决于存储在所述存储器件中的所述检测结果的值,用其他的存储块来选择性地替换包含所述虚拟页面的所述闪存的存储块。
11. 一种读取存储系统中的闪存的方法,所述方法包括 确定何时所述闪存的主页面被重复读取了至少N次;以及响应于确定所述主页面^皮重复读取了至少N次,并行地从所述主页面和/人 所述闪存的虚拟页面读取^:据。
12. 如权利要求11所述的方法,其中,当所述主页面被确定为重复读取 少于N次时,不与所述主页面并行读取所述虚拟页面。
13. 如权利要求11所述的方法,其中所述虚拟页面从所述闪存的多个页 面中以随机的方式选择。
14. 如权利要求11所述的方法,其中所述闪存的虚拟页面根据所述闪存 中的页面所定义顺序来选#^。
15. 如权利要求11所迷的方法,还包括使用ECC算法来检测从所述虚拟页面读取的数据中的位错误的数量;以及 响应于当所述检测到的位错误的数量超出所述ECC算法的更正范围时,把 与包括所述虛拟页面的存储块相关联的地址映射到另 一存储块。
16. 如权利要求11所述的方法,还包括使用ECC算法来检测从所述虚拟页面读取的数据中的位错误的数量;以及 响应于当所述^全测到的位错误的数量超出所述ECC算法的更正范围时,把 检测结果存储在存储器件中。
17. 如权利要求16所述的方法,其中,所述检测结果被存储在所述存储 器件的闪存中。
18. 如权利要求16所述的方法,其中,所述4企测结果被存储在控制所述 闪存的存储控制器的存储器件中。
19. 如权利要求18所述的方法,其中,所述存储器件包括所述存储控制 器的緩存。
20. 如权利要求16所述的方法,还包括取决于存储在所述存储器件中的所述检测结果的值,用另 一存储块来选择 性地替换包含所述虛拟页面的所述闪存的存储块。
21. 如权利要求20所述的方法,其中,进一步响应于所述存储系统的上 电执行所述选择性地替换所述存储块。
22. —种存储器系统,包括具有多个页面的闪存;以及配置为控制所述闪存的存储控制器,其中,所述存储控制器被配置成确定何时所述闪存的主页面被重复读取了至少N次,以及响应于确定所述主页面被重复读取了至少N次,并行地从所述 主页面读取数据和从所述闪存的虚拟页面读取数据。
23. 如权利要求22所述的存储系统,其中,所述存储控制器被配置成 响应于确定所述主页面^t重复读取少于N次,读取所述主页面而不并^f亍读取所 述虚拟页面。
24. 如权利要求22所述的存储系统,其中,在所述闪存的多个页面中以 随机的方式选"f奪所述虚拟页面。
25. 如权利要求22所述的存储系统,其中,在所述闪存的多个页面中以 顺序的方式选择所述虚拟页面。
26. 如权利要求22所述的存储系统,其中,所述存储控制器被配置成使 用ECC算法来检测从所述虚拟页面读取的数据中的位错误的数量,并且响应于 当所述检测到的位错误的数量超过所述ECC算法的更正范围时,把与包括所述 虚拟页面的存储块相关联的地址映射到另 一存储块。
27. 如权利要求22所述的存储系统,其中,所述存储控制器被配置成使 用ECC算法来检测从所述虚拟页面读取的数据中的位错误的数量,并且响应于 当所述检测到的位错误的数量超过所述ECC算法的更正范围时,把检测结果存 储在存储器件中。
28. 如权利要求27所述的存储系统,其中所述存储器件位于所述闪存中。
29. 如权利要求27所述的存储系统,其中,所述存储器件位于所述存储 控制器中。
30. 如权利要求27所述的存储系统,其中,所述存储控制器被配置成取 决于存储在所述存储器件中的所述检测结果的值,用另 一存储块来选择性地替 换包括所述虚拟页面的闪存的存储块。
31. 如权利要求30所述的存储系统,其中,所述存储控制器被配置成响 应于所述存储系统的上电,取决于存储在所述存储器件中的所述检测结果的值, 用其他的存储块来选择性地替换包括所述虚拟页面的闪存的存储块。
32. 如权利要求22所述的存储系统,其中,所述闪存和所述存储控制器 包括存储卡。
全文摘要
本发明提供了能够检测由于读干扰而造成的位错误的方法和存储系统。读取存储系统中闪存的主页面;检测并更正从所述主页面读取的数据中的位错误;与读取所述主页面并行地,检测从所述闪存的虚拟页面中读取的数据中的位错误。
文档编号G06F11/10GK101339526SQ20081021033
公开日2009年1月7日 申请日期2008年6月19日 优先权日2007年6月19日
发明者安世镇, 崔成业, 金容铉, 金龙经 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1