专利名称:用以使由于纠错而引起的老化相关的性能退化最小化的nand存储器控制器中的动态缓冲管理的制作方法
技术领域:
本发明涉及ー种供NAND存储器控制器使用的缓冲机制,并且更具体地,其中,缓冲电路的使用用于使随着NAND存储器老化而由纠错开销(overhead)引起的NAND存储器的性能退化最小化。
背景技术:
NAND存储器集成电路芯片在本领域中是众所周知的。在NAND存储器芯片中,该存储器的特征在于许多存储块,其中每个块包含许多页面。每个块中的存储总量是最小可擦除单元。此外,姆个页面包含许多存储器存储单元(memory cells)。过去,存储器存储单元已存储一位(single bit),即所谓的SLC (单层存储单元)。然而,最近,NAND存储器集成电路芯片的制造商已在每个存储器存储单元中存储多位,即所谓的MLC(多层存储単元)。无论存储器存储单元是SLC还是MLC,存储在每个存储单元中的电荷都可能退化。为了恢复“被损坏”或退化数据,数据位伴随有ECC (检错和纠错)位。这些ECC位还被存储在NAND芯片的伴随的存储器存储单元中,并用来检查数据存储単元中的错误且使用众所周知的算法来对其进行纠正,诸如里德-所罗门和BCH算法。ECC位存在的问题是随着NAND存储器芯片老化,错误位的数目将增加。然而,此增加非线性地影响性能。因此,如果IKB的数据位被读取,并且NAND存储器芯片是“新的”且相对无错误,则检查和纠正输出数据位所需的时间可能仅为大约0.5微秒(usee)。然而,随着NAND存储器芯片老化,并且发生更多的错误位,则同样的IKB的数据位可能要求10微秒以进行检查、纠正并从NAND存储器芯片输出。从系统设计师的观点出发,性能的不可预测性是关注的领域。因此,期望的是甚至随着NAND存储器芯片老化且错误位的数目増加,读取相同量的数据(包括所需的任何检查和纠正)的性能或所需的时间总量也不退化。參考图1,示出了现有技术的输出缓冲电路10。NAND存储器12提供数据输出。数据位和伴随的ECC位被供应给第一多路复用器14。从那里,数据被供应给第一缓冲器16或第二缓冲器18。从第一缓冲器16或第二缓冲器18,数据被作为缓冲电路10的输出供应给第二 MUX 20。缓冲电路10称为乒乓电路。在操作中,电路10如下运行。在第一时钟周期Tl中,使来自NAND存储器12的数据通过MUX 14并存储在缓冲器16中。如果需要的话,由ECC检查和纠正电路(未示出)来检查和纠正缓冲器16中的数据。在第二时钟周期T2中,使来自NAND存储器12的数据通过MUX 14并存储在缓冲器18中,并且如果需要的话由ECC检查和纠正电路(未示出)来检查和纠正缓冲器18中的数据,同时使来自缓冲器16的数据作为缓冲电路10的输出而通过MUX 20。在第三时钟周期T3中,使来自NAND存储器12的数据通过MUX 14并存储在缓冲器16中,并且如果需要的话由ECC检查和纠正电路(未示出)来检查和纠正缓冲器16中的数据,同时使来自缓冲器18的数据作为缓冲电路10的输出而通过MUX 20。根据前述内容,可以看到现有技术的缓冲电路10甚至随着ECC随时间推移而退化也保持性能的一致性,只要能够在ー个时钟周期内执行检错和纠错即可。然而,随着更多的NAND存储器芯片使用MLC存储器存储单元,并且随着关联纠错位的数目増加,此假设并不是真实的。因此,需要甚至随着ECC随时间推移而退化也保持用于NAND存储器芯片的性能
一致性。
发明内容
用于非易失性存储器的输出缓冲电路存储多个数据位和与所述多个数据位相关联的多个纠错检错(“ECC”)位。输出缓冲电路包括用于接收所述多个数据位和所述多个ECC位以确定是否需要对所述多个数据位进行纠正的检错电路。所述检错电路将所述多个数据位供应为其输出,并且生成纠正信号。纠错电路接收所述多个数据位和所述多个ECC位,并响应于该纠正信号而生成多个已纠正数据位。输出缓冲电路还具有三个或更多存储电路,其中每个存储电路具有输入/输出端ロ。总线连接到每个存储电路并相互连接,并在每个存储电路之间和非易失性存储器与存储电路之间供应数据位,并且供应数据位作为输出缓冲电路的输出。开关电路与每个存储电路相关联以便接收所述多个数据位;或者多个已修正数据位并将其供应给关联存储电路的输入/输出端ロ,并且将其作为存储位存储在存储电路中,并且将存储位供应为存储电路的输出。
图1是现有技术的输出缓冲电路的方框图。图2是本发明的输出缓冲电路的第一实施例的方框图。图3是存储器系统的第一实施例的方框图,其示出了使用本发明的多个输出缓冲电路的多个NAND存储器芯片。图4是存储器系统的第二实施例的方框图,其示出了使用本发明的多个输出缓冲电路的多个NAND存储器芯片。
具体实施例方式
參考图2,示出了供NAND存储器12使用的本发明的输出缓冲电路100的第一实施例的方框图。来自NAND存储器12的包括多个数据位以及关联的多个ECC位的数据输出被供应给检错电路22,在那里,由ECC检查电路22来检查数据位和ECC位以确定是否需要对数据位应用纠错算法。在需要纠正未纠正数据位的情况下,ECC检查电路作为其输出而生成纠正控制信号。最后,沿着数据总线60供应来自ECC检查电路22的未纠正数据位。ECC纠正电路24沿着未纠正总线60接收未纠正数据位和关联ECC位,并对未纠正数据位执行纠正且响应于纠正控制信号而生成多个已纠正数据位。沿着已纠正数据总线62供应所述多个已纠正数据位。提供了三个存储缓冲器30、32和34。每个存储缓冲器分别具有关联的输入/输出端ロ 31、33和35。输入/输出端ロ 31、33和35分别被连接到MUX 40、42和44。每个MUX40,42和44具有三个输入端I)第一输入端,其被连接到未纠正数据总线60以便从ECC检查电路22或从NAND存储器12的输出端接收未纠正数据位;2)第二输入端,其被连接到已纠正数据总线62,其从ECC纠正电路24接收已纠正数据位;以及3)第三输入端,其被连接至IJ输入/输出总线64,输入/输出总线64被连接到所有的其他MUX并提供为输出缓冲电路100的输出端。来自ECC检查电路22的纠正控制信号针对MUX 40,42和44中的每ー个控制其开关和时序。在输出缓冲电路100的操作中,在读操作开始之后的第一时钟周期Tl中,从NAND存储器12读取数据位和关联ECC位并供应给ECC检查电路22。ECC检查电路22执行操作以确定数据位是否需要任何纠正。还发送数据位并将其存储在第一缓冲器30中,无论由ECC检查电路22进行的操作的结果如何。在第二时钟周期T2中,如果ECC检查电路22的结果显示数据位不需要任何纠正,则从第一缓冲器30输出并沿着总线64供应来自第一缓冲器30的未纠正数据,并且将其存储在第三缓冲器34中。在前述时钟周期T2中,如果存在另ー读周期,则读取来自NAND芯片22的数据并将其存储在第一缓冲器30中,如上所述。替换地,可以在未从ー个缓冲器输出数据并读入到另ー缓冲器中的情况下简单地对与缓冲器30、32和34相关联的Mux 40,42和44的指定进行开关。因此,替换地,然后可以将缓冲器30指定为“输出缓冲器34”,并且可以将缓冲器34指定为“输入缓冲器” 30。现在假设NAND存储器12已经老化且遭遇错误位,并且需要纠正未纠正数据位。在来自NAND存储器12的读操作之后的第一时钟周期中,将未纠正数据位存储在第一缓冲器30中并将其发送到ECC纠正电路24,如上所述。如果ECC检查电路22确定需要纠正,则生成纠正控制信号,这促使ECC纠正电路24基于未纠正数据位和关联ECC位而开始未纠正数据位的纠正。另外,ECC检查22促使“输入缓冲器”30将作为“ECC缓冲器”32,并且ECC缓冲器32将作为输入缓冲器30。
`
在第二时钟周期T2中,由ECC纠正电路24来纠正未纠正数据位,并将其存储在第ニ缓冲器32中,或者直接在缓冲器32中纠正。同时,如果再次读取NAND存储器12,则然后将来自该读周期的未纠正数据位被存储在第一缓冲器30中。在第三时钟周期T3中,然后从第二存储缓冲器32读取存储在第二存储缓冲器32中的已纠正数据并将其存储在第三存储缓冲器34中。同时,如果存储在第一存储缓冲器中的未纠正数据位要求纠正,则由ECC纠正电路24来纠正那些未纠正数据位,并将其存储在第二存储缓冲器32中。最后,在此时钟周期期间,如果从NAND存储器12读取未纠正数据位,则将其存储在第一存储缓冲器30中。如从前述内容可以看到的,除未纠正数据以及已纠正数据的初始设置和存储中的轻微延迟之外,其后可以在每个时钟周期输出来自输出缓冲电路100的数据。參考图3,示出了使用本发明的多个输出缓冲电路100的存储器系统200的第一实施例的方框图。存储器系统200包括多个NAND存储器12 (a_d)(出于图示的目的仅示出了 4个)。每个NAND存储器12具有在图2中示出和描述的关联输出缓冲电路100。为了简单起见,在图3中仅示出了输出缓冲电路100的一部分。每个输出缓冲电路100被示为具有ECC纠正电路24。因此,如图3所示,存储器系统200包括多个NAND存储器24,每个具有关联输出缓冲电路100,每个输出缓冲电路100具有专用ECC纠正电路24。參考图4,示出了使用本发明的多个输出缓冲电路100的存储器系统210的第二实施例的方框图。存储器系统210包括多个NAND存储器12 (a-d)(出于图示的目的仅示出了 4个)。每个NAND存储器12具有在图2中示出和描述的关联输出缓冲电路100。为了简单起见,在图4中仅示出了输出缓冲电路100的一部分。然而,所述多个输出缓冲电路100全部共享单个ECC纠正电路24。因此,在本实施例中,如果ECC纠正电路24可以执行足够快速的纠正,则其可以充当用于全部四个输出缓冲器100 (a-d)的纠正电路。替换地,如果NAND存储器12具有足够的可靠性和质量,则在那里纠错的频率是低的,则单个ECC纠正电路24可以服务于如所示的多个输出缓冲电路100。在所有其他方面,图4所示的存储器系统210类似于图3所示的存储器系统。根据前述内容,可以看到的是公开了一种用于NAND芯片的输出缓冲电路,其可以克服NAND芯片随时间推移而退化时的ECC影响性能的问题。
权利要求
1.一种用于非易失性存储器的输出缓冲电路,所述非易失性存储器用于存储多个数据位和与所述多个数据位相关联的多个纠错检错(“ECC”)位;所述输出缓冲电路包括 检错电路,其用于接收所述多个数据位和所述多个ECC位,以确定是否需要纠正所述多个数据位;所述检错电路用于将所述多个数据位供应为其输出,并用于生成纠正信号; 纠错电路,其用于接收所述多个数据位和所述多个ECC位并用于响应于所述纠正信号而生成多个已纠正数据位; 三个或更多个存储电路,每个存储电路具有输入/输出端口 ; 总线,其用于连接到每个存储电路并用于在每个存储电路之间和非易失性存储器与所述存储电路之间供应数据位,并且用于将数据位供应为所述输出缓冲电路的输出;以及开关电路,其与每个存储电路相关联以便接收所述多个数据位;或者所述多个已纠正数据位,并将其供应给关联存储电路的所述输入/输出端口并用于将其作为存储位存储在所述存储电路中,并且用于将所述存储位供应为所述存储电路的输出; 其中,所述检错电路用于控制每个开关电路的操作。
2.根据权利要求1所述的输出缓冲电路,其中,所述非易失性存储器是NAND存储器。
3.根据权利要求1所述的输出缓冲电路,其中,所述纠正信号被供应给每个所述开关电路。
4.根据权利要求3所述的输出缓冲电路,其中,所述非易失性存储器是NAND存储器。
5.一种存储设备,其包括 多个非易失性存储器电路,每个具有多个存储器存储单元以便存储多个数据位和与所述多个数据位相关联的多个纠错检错(“ECC”)位; 多个检错电路,每个检错电路与所述多个非易失性存储器电路中的一个相关联,用于从关联非易失性存储器电路接收所述多个数据位和所述多个ECC位以确定是否需要纠正所述多个数据位;所述检错电路用于将所述多个数据位供应为其输出,并用于生成纠正信号; 多个纠错电路,每个纠错电路与具有其关联非易失性存储器电路的所述多个检错电路中的一个相关联,以便从关联非易失性存储器电路接收所述多个数据位和所述多个ECC位,并用于响应于来自所述关联检错电路的纠正信号而生成多个已纠正数据位; 三个或更多个存储电路,其与每个纠错电路、以及其关联检错电路及其关联非易失性存储器电路相关联,其中每个存储电路具有输入/输出端口 ; 总线,其用于连接到每个存储电路并用于在每个存储电路之间和非易失性存储器电路与存储电路之间供应数据位,并且用于将数据位供应为所述输出缓冲电路的输出;以及开关电路,其与每个存储电路相关联以便接收所述多个数据位;或者所述多个已纠正数据位,并将其供应给关联存储电路的所述输入/输出端口并用于将其作为存储位存储在所述存储电路中,并且用于将所述存储位供应为所述存储电路的输出; 其中,所述多个检错电路中的一个用于控制与关联的三个或更多个存储电路相关联的关联开关电路的操作。
6.根据权利要求5所述的存储设备,其中,与每个存储电路相关联的所述开关电路沿着总线从其他存储电路接收所述存储位。
7.根据权利要求5所述的存储设备,其中,所述非易失性存储器电路是NAND存储器。
8.一种存储设备,其包括 多个非易失性存储器电路,每个具有多个存储器存储单元以便存储多个数据位和与所述多个数据位相关联的多个纠错检错(“ECC”)位; 检错电路,其与所述多个非易失性存储器电路相关联,用于从所述多个非易失性存储器电路中的每一个接收所述多个数据位和所述多个ECC位以确定是否需要纠正所述多个数据位;所述检错电路用于生成用于每个非易失性存储器电路的纠正信号; 纠错电路,其与所述检错电路相关联以便从所述多个非易失性存储器电路中的每一个接收所述多个数据位和所述多个ECC位并用于响应于与每个非易失性存储器电路相关联的纠正信号而生成多个已纠正数据位; 三个或更多个存储电路,与每个非易失性存储器电路相关联,每个存储电路具有输入/输出端口 ; 总线,其用于连接到每个存储电路并用于在每个存储电路之间和非易失性存储器与存储电路之间供应数据位,并且用于将数据位供应为所述输出缓冲电路的输出;以及 开关电路,其与每个存储电路相关联以便从关联非易失性存储器电路接收所述多个数据位,并将其供应给关联存储电路的所述输入/输出端口并用于将其作为存储位存储在所述存储电路中,并且用于将所述存储位供应为所述存储电路的输出;以及其中,所述检错电路用于控制每个开关电路的操作。
9.根据权利要求8所述的存储设备,其中,所述非易失性存储器电路是NAND存储器。
10.根据权利要求8所述的存储设备,其中,与每个存储电路相关联的所述开关电路沿着总线从其他存储电路接收存储位。
全文摘要
一种用于非易失性存储器存储数据位和纠错检错(“ECC”)位的输出缓冲电路。该输出缓冲电路包括用于接收所述数据位和所述ECC位以确定是否需要对所述数据位进行纠正的ECC电路。所述ECC电路将所述数据位供应为其输出,并且生成纠正信号。ECC电路接收所述数据位和所述ECC位,并生成已纠正数据位。输出缓冲电路还具有三个或更多个存储电路,其具有输入/输出端口。总线连接到存储电路,并在每个存储电路之间,非易失性存储器与存储电路之间供应数据位,并且供应数据位作为输出缓冲电路的输出。开关电路与用于接收所述数据位的每个存储电路相关联;并且所述存储位被输出到所述存储电路。
文档编号G11C7/10GK103038829SQ201180027124
公开日2013年4月10日 申请日期2011年5月16日 优先权日2010年6月1日
发明者S.阿亚 申请人:格林莱恩特有限责任公司