法律状态公告日
法律状态信息
法律状态
2013-05-01
授权
授权
2009-06-17
实质审查的生效
实质审查的生效
2009-04-22
公开
公开
技术领域
本发明涉及数据存储和处理算法。
背景技术
技术发展允许大量语音、视频、图像、数据信息的数字化和压缩,可将其存储在存储器中,然后在膝上型电脑、相机和许多其它数字电子设备之间以无线方式发送。对于装置存储的数据量,需要对存储器装置的增强,以便促进处理较大数据量的更强存储能力。随数据存储能力扩大以及存储器技术提高而需要解决的一个显著问题是多级闪存单元中存储电荷的设置。
发明内容
本发明的第一方面在于一种存储器装置,包括:引擎,执行表决算法,以便随时间对存储器单元数据读出结果求平均,从而提供存储器单元中的电荷设置。
本发明的第二方面在于一种存储器装置,包括:引擎,执行检验算法,所述检验算法产生编程脉冲、之后跟随第一、第二和第三读出周期,以便提供存储器单元的所述程序状态的第一、第二和第三数据输出;第一锁存器,存储在所述第一读出周期来自读出放大器的所述第一数据输出;以及第二锁存器,存储在所述第二读出周期所提供的、来自读出放大器的所述第二数据输出。
本发明的第三方面在于一种闪速存储器装置,包括:引擎,执行检验算法;第一锁存器,存储在第一周期由读出放大器对于存储器单元所读出的第一数据;以及第二锁存器,存储在第二周期由所述读出放大器对于所述存储器单元所读出的第二数据,其中,当所述第一数据与所述第二数据匹配时,所述检验算法使用所述第二数据作为存储器单元的电荷设置。
本发明的第四方面在于一种无线装置,包括:第一和第二天线;收发器,与所述第一和第二天线耦合;多核处理器,接收来自所述收发器的解调信号;以及非易失性存储器,与所述多核处理器耦合,以便存储数据,所述非易失性存储器包括执行检验算法的引擎,以便通过在第一锁存器中存储编程脉冲之后的读出第一数据的结果以及在第二锁存器中存储编程脉冲之后的读出第二数据的结果,来确定存储器单元中的电荷设置。
本发明的第五方面在于一种由非易失性存储器装置动态调适设置电荷的方法,包括:向存储器单元提供编程脉冲,之后跟随提供第一锁存结果的第一读出周期;提供第二读出周期,所述第二读出周期提供第二锁存结果;以及将所述第一结果与所述第二结果进行比较,在匹配的情况下,提供所述第二锁存结果以便对所述存储器单元中的电荷设置进行编程。
附图说明
在申请文件中特别指出作为本发明的主题并清楚地要求其权益。但是,通过结合附图参照以下详细描述,可透彻地了解关于本发明的操作的组织和方法及其目的、特征、优点,附图包括:
图1是示出与利用执行三重检验表决方案的引擎的非易失性存储器装置接口的处理器的简图;以及
图2是示出根据表决方案使用多个检验周期来检查已编程单元的Vt的简图。
大家会理解,为了说明的简洁和清楚起见,图中所示的元件不一定按比例绘制。例如,为了清楚起见,部分元件的尺寸可能相对于其它元件经过放大。另外,在认为适当的情况下,在附图中重复参考标号,以便指示对应或相似的元件。
具体实施方式
在以下详细描述中,阐明大量具体细节,以便提供对本发明的透彻了解。但是,本领域的技术人员会理解,即使没有这些具体细节,也可实施本发明。在其它情况下,没有详细描述众所周知的方法、过程、组件和电路,以免影响对本发明的理解。
图1是执行算法、然后将数据存储在系统存储器的非易失性存储器装置中的多核处理器的简单化实施例。图中给出的实施例示出无线装置10具有与收发器12进行耦合以便调适调制/解调的天线。该实施例允许通信装置10的相同平台中并存的多个无线电子系统以便提供在RF/位置空间中与其它装置进行通信的能力。模拟前端收发器12与多核处理器20连接。嵌入式处理器核16、18可执行基带和进程应用功能,并且允许处理要在嵌入式处理器核之间共享的工作负荷
本发明可用于与多核处理器配合工作的非易失性存储器装置26,备选地,存储器装置26也可存储单核处理器所使用的信息。捆绑在系统存储器中的非易失性存储器装置的缩放增强了在非易失性单元I-V特性中所测量的随机电报信号(RTS)噪声的影响。RTS是归因于存储器单元中存在的晶体管的栅氧化层中的非理想性的内在单元特征。由于非理想性和缩放,甚至在将恒定电压施加到栅极并且将恒定漏-源电压提供给存储器单元时,也可在存储器单元电流中看到随机变化。换句话说,闪存单元电流呈现可能导致多级单元(MLC)中的读出(sensing)失败的显著时变随机噪声。
但是,根据本发明的特征,在通过使用表决方案进行编程之后,在用于验证栅极上的存储电荷的设置的读操作中,可容许RTS的影响。在一个实施例中,引擎24可执行三重检验表决方案。即使读窗口累积(Read Window Budget)(RWB)的相当大的部分被RTS噪声占用,并且该噪声分量可产生针对存储数据所读出的非预期值,检验算法仍可用来实现正确提供经过检验的已存储单元数据的较高概率。
然而现有技术的闪速存储器技术在对数据进行编程时使用一个检验周期来设置单元的门限电压(Vt),图2所示的实施例示出根据本发明的检验算法。注意,检验周期涉及编程脉冲(program pulse),之后跟随读出周期,以便检查已编程单元的Vt是否处于预期编程电平(program level)。由于RTS的影响,单个检验周期可在指定电压条件下读出较高或较低的电流,并且算法可解决关于单元编程按预计来设置、而实际存储器单元Vt可能不处于预期编程电平的问题。为了解决RTS所引起的这个问题,本发明的检验算法包括对同一个存储器单元依顺序执行的三个独立连续读出周期。
图2示出由非易失性存储器26中的引擎24(参见图1)所执行的检验算法的特征的框图。程序周期之后是三个检验周期。框202指示,在读出操作(读出后电路(post-sense circuit))之后解析(resolve)从第一检验周期中产生的数据,并且计数器跟踪检验读出操作的数量。框204指示,把在第一检验周期来自读出放大器的数据输出存储在锁存器(latch)1中。根据检验算法,第二检验周期检查同一个已编程单元的Vt是否处于预期编程电平。框206指示,把在第二检验周期来自读出放大器的数据输出存储在锁存器2中。
通过将锁存器1中存储的数据与锁存器2中存储的数据进行比较,比较器208确定第一和第二检验的存储结果对于存储器单元的编程状态是否一致。如果比较器208指示第一和第二检验如锁存器1和锁存器2中存储的相同输出数据所示是一致的,则将那个存储数据传递给下一级,如框210所示。对于第一和第二检验提供锁存器1和锁存器2中存储的相互一致的结果的情况,则不运行第三检验周期,并传递第二检验周期的结果以便提供最终检验结果(参见框214)。
但是,如果比较器208指示第一和第二检验如锁存器1和锁存器2中所存储数据的不同输出所示是不一致的,则不将锁存器1或锁存器2中的存储数据传递给下一级(参见框212)。而是第三检验检查已编程单元的Vt是否处于预期编程电平。第三检验周期的结果经过,以便提供最终检验结果(参见框214)。
所述检验算法实现表决标准,以便采用“三个之中最好的一个”作为最终结果,但是可使用多于三个检验。三个之中最好的一个包括由与单元设置有关的读出输出的大多数所表决的结果。换言之,如果第一检验坚持单元Vt是以适当电平来编程的,而三个检验的其余几个与第一检验不一致,则三个检验方案中最好的一个使用表决机制来解析存储器单元数据,并断定该单元需要其它编程脉冲。这确保即使RTS噪声导致不正确的读出,另外两个检验也可正确地得出正确编程以及正确结果。显然,这个表决标准引起两个额外读出周期的附加开销,但是要注意,读出周期是整个程序算法的小部分。注意,对存储器单元进行脉冲调制以产生编程来占用程序算法的大部分。这种表决方案减小任何RTS噪声对单元设置的影响,并且对编程速度具有最小影响。
为了简洁起见,针对一个读出位描述了检验算法,但是,使用该检验算法来解析MLC单元的所有读出输出。作为示例,在45nm技术的一个实施例中,MLC产品从闪存阵列产生272位数据。因此,包括两个锁存器(锁存器1和锁存器2)和各单元的比较器的272个单元用来检验芯片中的数据处理。如果所有该272个单元中的比较器一致认为锁存器1中存储的来自第一检验周期的数据匹配锁存器2中存储的来自第二检验周期的数据,则通用VALID信号被断言(asserted),以便通知主PROGRAM算法关于不需要第三检验周期以及当前数据是有效的。另一方面,如果对于同一个闪存单元的锁存器1和锁存器2中存储的检验结果如272个比较器中的任一个所示是不同的,则VALID信号保持为低电平,并执行第三检验。一旦第三检验周期开始,检验算法则将第三周期的结果当作有效数据,而不管前两个检验数据输出,并处理那个数据。
现在应当清楚地知道,本发明的实施例通过使用所述检验算法,允许提高的程序可靠性,所述检验算法使用表决方案来对存储器数据进行编程和检验。缩放的闪速存储器装置变成对基于RTS影响的主要噪声分量敏感,而使用三重检验方案的本发明通过随时间对存储器单元数据读出结果求平均,来消除RTS影响,以便促进健壮的Vt设置方案。
虽然本文说明和描述了本发明的某些特征,但是本领域的技术人员现在会想到多种修改、替换、变更以及等效方案。因此要理解,所附权利要求书意在涵盖落入本发明的真实精神之内的所有这类修改和变更。
机译: 多级闪存单元(MLC)VT的数据存储和处理算法。
机译: 多级闪存单元(MLC)VT的数据存储和处理算法。
机译: 多级单元(MLC)闪存的部分写入收集器算法