读取与编程存储器的方法

文档序号:6773624阅读:150来源:国知局

专利名称::读取与编程存储器的方法
技术领域
:本发明是有关于一种读取与编程存储器的方法,且特别是一种通过考虑阵列效应(arrayeffect)、第二位效应(second-biteffect)以及相邻位效应(neighbor-biteffect)来校正每一存储单元的第一侧(first-side)及第二侧(second-side)的编程验证值(program-verify;PV)、擦除验证值(erase-verify;EV)或读取参考值的读取与编程存储器的方法。
背景技术
:传统闪存中,例如多级单元存储器(Multi-levelcell;MLC),每个存储单元具有两侧边,每一侧至少具有一个位,每一侧设置有编程操作所需的编程验证值以及于读取操作中用以读取、编程验证与擦除验证所需的参考值。例如,假设多级单元存储器于存储单元的每一侧具有一个位,这样对应每存储单元有四种阈值电压分布为"11"、"10"、"01"及"00"。在未考虑相邻存储单元的存储单元特性情况下,在整个编程或读取操作中,这些参考值通常保持一个定值。图1A绘示于源极感测时待编程或读取的特定存储单元的第一侧所对应的第二侧及相邻侧。如图1A所示,假定存储单元B的第一侧B2被编程或读取,存储单元B的另一侧Bl被定义为第一侧的第二侧B2。当存储器阵列变大时,每一存储单元的感测阈值电压(ThresholdVoltage;Vt)由于存储单元电流感测路径的寄生电阻效应(阵列效应)、第二位效应以及相邻位效应会偏离初始阈值电压一个偏移值,如图1B所示。当存储器的每存储单元尺寸愈小时,第二位效应与相邻位效应便越来越显著。因此,存储器的阈值电压分布"ll"、"10"、"Ol"及"OO"之间的感测窗口SW1便会小于无阈值电压偏移的感测窗口SW0(如图1B所示),进而使存储器的循环边界(cyclingmargin)大大降《氏。
发明内容有鉴于此,本发明的主要目的是提供一种读取与编程存储器的方法。在编程验证、擦除验证、读取操作时,通过考虑每个存储单元的阵列效应、第二位效应以及相邻位效应来校准感测值,进而使存储器边界可被有效率的改善。根据本发明的第一方面,提出一种编程存储器的方法。此存储器包括多个存储单元并具有对应目标存储单元的一预设编程验证值。此方法包括编程目标存储单元的第一侧使得其阈值电压不低于预设编程验证值;读取目标存储单元的第二侧的阈值电压值并据以取得值对应的第一侧的校准编程验证值;以及编程目标存储单元的第一侧使得其阈值电压不低于对应的校准编程验证值。根据本发明的第二方面,提出一种读取存储器的方法。此存储器包括多个存储单元并具有对应目标存储单元的第一侧的一预设参考值。该方法包括读取目标存储单元的第二侧的阈值电压值并据以取得对应第一侧的校准参考值;以及依据校准参考值读取目标存储单元的第一侧。根据的第三方面,提出一种编程存储器的方法。此存储器包括多个存储单元,每个存储单元具有第一侧与第二侧,且第一侧与第二侧均具有预设编程验证值。此方法包括编程第一侧使得其阈值电压不低于预设编程验证值;读取第一侧的阈值电压值并据以取得对应于第二侧的第一校准值;以及编程第二侧使得其阈值电压不低于对应第一侧的第一校准编程验证值。为让本发明的上述目的、特征、和优点能更明显易懂,下文特举一较佳实施例,并配合所附图式,作详细说明。图1A绘示现有技术中于源极感测时待编程或读取的特定存储单元的第一侧所对应的第二侧与相邻侧。图1B绘示于现有存储器中编程存储单元的阈值电压偏移示意图。图2绘示依据本发明的第一实施例编程存储单元的方法流程图。图3绘示图2的步骤200中编程存储单元的阈值电压分布图。图4A至图4C绘示图2的步骤210至步骤230中分别用来取得第一编程验证调整值、第二编程验证调整值以及第三编程验证调整值的查询表。图5绘示图2所述的方法中依据校准编程验证值编程存储单元的阈值电压分布图。图6绘示依据本发明第一实施例读取存储器的方法流程图。图7A至图7C绘示图6的步骤600至步骤620中分别用来取得第一编程验证调整值、第二编程验证调整值以及第三编程验证调整值的查询表。图8绘示依据本发明的第二实施例编程存储器的方法流程图。图9绘示图8的步骤810中用来取得第一编程验证调整值的查询表。具体实施例方式本发明是一种读取与编程存储器的方法。在编程或读取操作中,为了扩大存储器的感测窗(sensingwindow),通过考虑阵列效应、第二位效应及相邻位效应来校准目标存储单元的每一侧的编程验证、擦除验证以及读取参考值。下列的描述将提出两实施例用以说明本发明的方法如何考虑每一侧的阵列效应、第二位效应以及相邻位效应。第一实施例请参照图2,其绘示是依据本发明第一实施例编程存储器的方法流程图。此存储器例如是多级单元(Multilevelcell)闪存,其具有多个存储单元,且每个存储单元具有第一侧与第二侧。每一侧至少具有一个位。例如,每一侧具有一位。每一侧对应特定编程状态(例如状态10、01或OO)具有一个预设编程验证值PVO。首先,于步骤200中,编程目标存储单元的第一侧使得其阈值电压Vt值不低于对应的预设编程验证值PV0或经编程验证调整值APV0补偿的预设编程验证值PV0,亦即(PV0+APV0)。每个目标存储单元的第一侧所对应的APVO值可能不同。如图3所示,左侧阈值电压分布KO是具有阈值电压偏移的擦除状态存储单元的阈值电压分布,右侧阈值电压分布Kl是考虑每个被编程存储单元的阵列效应后产生的"10"状态阈值电压分布。阈值电压分布K1由许多阈值电压分布所组成,其中包括具有理想编程状态"10"的存储单元的阈值电压分布K10(例如,没有第二位效应、相邻位效应以及阵列效应),以及对应最大编程验证调整值(APVO)max的存储单元的阈值电压分布Klm。依据对应的阵列地址取得每一侧的APV0值。例如,可通过检视查询表(lookuptable;LUT)并依据阵列地址来取得APVO值,其中APV0值通常介于0伏特至0.4伏特之间。如图3所示,由于阵列效应、第二位效应以及相邻位效应使被编程存储单元的阈值电压分布具有一个阈值电压偏移值。因此,于下列步骤中,将依序考虑第二位效应、相邻位效应以及阵列效应来校准对应每一侧的预设编程验证值PVO。接下来,于步骤210中,读取目标存储单元的第一侧的第一阈值电压值Vtl及第二侧的第二阈值电压值Vt2,并据以取得对应第一侧的第一编程验证调整值APV1。例如,可检视如图4A所示的查询表(LUT)来取得对应每一组Vtl值及Vt2值的APV1值。APV1值通常介于0伏特至0.4伏特之间。本实施例中,目标存储单元的第二侧的第二阈值电压值Vt2也会受到第一侧的第一阈值电压值Vtl的影响,因此在计算第一编程验证调整值△PV1中是同时考虑目标存储单元的第一侧的第一阈值电压值Vtl与第二侧的第二阈值电压值Vt2。于另一实施例中,步骤210亦可以读取目标存储单元的第二侧的阈值电压值并据以取得第一侧的第一编程验证调整值APVU接下来,于步骤220中,读取目标存储单元的相邻侧的第三阈值电压值Vt3并据以取得对应第一侧的第二编程验证调整值APV2。例如,检视如图4B所示的第二查询表LUT2,并依据第三阈值电压值Vt3来取得第二编程验证调整值APV2。APV2值通常介于0伏特至0.1伏特之间。然后,于步骤230中,依据对应的阵列地址取得第一侧的第三编程验证调整值APV3。相似于步骤200,由于阵列效应依旧存在于接下来的编程操作中,因此于每一侧均被编程达到预设编程验证值PVO或(PVO+APVO)值之后,再次考虑阵列效应以校准第一侧的编程验证值。例如,检视如图4C所示的第三查询表LUT3并依据对应的阵列地址来取得第一侧的APV3值。正常地,该些侧于相同字线(WordLine)中具有相同的阵列效应,因此,第三查询表LUT3是依据每一侧字线的位置(WL1,WL2,…)来决定该侧的△PV3值。第三编程验证调整值APV3通常介于0伏特至0.2伏特之间。于步骤240中,通过将对应的第一编程验证调整值APV1、第二编程验证调整值APV2、第三编程验证调整值APV3加入预设编程验证值PVO,以取得第一侧的校准编程验证值PV',亦即PV,=(PV0+APV1+APV2+△PV3)。PV'值是大于PVO值。最后,于步骤250中,编程目标存储单元的第一侧使得其阈值电压值Vt不低于对应的校准编程验证值PV'。对应每目标存储单元第一侧的校准编程验证值PV'可能不同。图5绘示于步骤250中依据校准编程验证值PV'编程的存储单元"10"的阈值电压分布状态示意图。如图5所示,因第二位效应、相邻位效应以及阵列效应而产生阈值电压偏移的擦除态存储单元的总阈值电压分布KO是由许多分布组成,其中包括没有阈值电压偏移的擦除态存储单元的阈值电压分布值K01以及具有最大阈值电压偏移的擦除态存储单元的阈值电压分布KOm。另外,因第二位效应、相邻位效应以及阵列效应而产生阈值电压偏移的"10"状态存储单元的总阈值电压分布K1也由许多阈值电压分布所组成,其中包括理想编程状态存储单元(没有Vt偏移)的阈值电压分布Kll以及对应最大校准编程验证值(PV,)max的存储单元阈值电压分布Klm。该些阈值电压分布KllKlm分别对应于K01K0m。由于通过考虑第二位效应、相邻位效应以及阵列效应将待编程的该侧的编程验证值PV调整至校准编程验证值PV'(大于PVO),依据校准编程验证值PV'的编程操作可具有比现有的感测窗口SW1更大的操作窗口SW2,该操作窗口范围是从具有阈值电压偏移的擦除态阈值电压分布的最大值至对应最大校准编程验证值(PV,)max的阈值电压分布的最小值,因此加大存储器的循环边界。值得注意的是,本实施例的感测窗口SW2大于现有的感测窗口SW1,而且接近介于原始擦除态阈值电压分布与理想编程状态阈值电压分布的无阈值电压偏移的理想感测窗口SWO。虽然本实施例的编程存储器的方法是以根据目标存储单元的第二侧及相邻侧的阈值电压值与对应阵列地址透过查询表分别取得第二侧的第一编程验证调整值、第二编程验证调整值以及第三编程验证调整值并据以取得校准编程验证值PV'为例作说明,然由于第二位效应往往较相邻位效应与阵列效应更为显著,本发明的方法于步骤200中也可以仅读取目标存储单元的第二侧的阈值电压值并据以取得校准编程验证值PV'(PV'=PVO+△PV1)。此外,除了检视查询表之外,任何其它软件或程序设计也可以用来取得上述的编程验证调整值。只要最显著的第二位效应被考虑来校准程序验证值且编程操作是依据校准后的编程验证值来执行以达到增大操作窗口的目的,均不脱离本发明的技术范围。请参照图6,其绘示是依据本发明第一实施例读取存储器的方法流程图。存储器的读取操作是依据预设参考值RLO,例如是一个编程验证值PV、擦除验证值EV或一个读取参考值。首先,于步骤600中,读取目标存储单元的第一侧的第一阈值电压值Vtl与第二侧的第二阈值电压值Vt2,并据以取得第一调整值ARL1。例如,可检视如图7A所示的第四查询表LUT4来对应每一组Vtl值与Vt2值的第一调整值ARL1。第一调整值ARL1通常介于0伏特至0.4伏特之间。本实施例中,目标存储单元的第二侧的第二阈值电压值Vt2也会受到第一侧的第一阈值电压值Vtl的影响,因此,在计算第一调整值ARL1中需同时考虑目标存储单元的第一侧的第一阚值电压值Vtl与第二侧的第二阈值电压值Vt2。另一实施例中,步骤600亦可以仅读取目标存储单元的第二侧的第二阈值电压Vt2并据以取得第一侧的第一调整值ARL1。接着,于步骤610中,读取目标存储单元的相邻侧的第三阈值电压值Vt3,并据以取得对应第一侧的第二调整值ARL2。例如,可检视如图7B所示的查询表LUT5,并依据第三阈值电压值Vt3来取得第二调整值ARL2。又,第二调整值ARL2通常介于0伏特至0.1伏特之间。然后,于步骤620中,依据对应的阵列地址取得第一侧的第三调整值ARL3。例如,可检视如图7C所示的查询表LUT6,并依据对应的阵列地址来取得第一侧的第三调整值ARL3值。查询表LUT6是依据每一侧的字线(WL1,WL2,.........)位置决定该侧的第三调整值ARL3。第三调整值ARL3通常介于0伏特至0.2伏特之间。于步骤630中,通过将对应的第一调整值ARL1、对应的第二调整值△RL2以及对应的第三调整值ARL3加入至预设参考值RL0,以取得第一侧的校准参考值RL',亦即RL'=(RL0+ARL1+ARL2+ARL3)。RL'值大于RL0值。最后,于步骤640中,依据对应的校准参考值RL'读取目标存储单元的第一侧。由于通过考虑第二位效应、相邻位效应以及阵列效应将预设参考值RL0调整至校准化参考值RL'(大于RL0),依据校准参考值RL'的读取操作可具有一个大于现有的读取窗口,因此增大存储器循环边界。虽然本实施例的读取存储器方法是以依据存储单元的第二侧及相邻侧的阈值电压与对应的阵列地址并通过査询表来分别取得该第二侧的第一编程验证调整值、第二编程验证调整值以及第三编程验证调整值并据以取得校准编程验证值PV'为例作说明,然本发明的方法,于步骤600中也可以仅读取目标存储单元的第二侧的阈值电压值Vt并据以取得校准参考值RL'(RL'=RL0+ARL1)。此外,除了查询检视表之外,任何其它软件或程序设计亦可以用来取得上述的调整值。只要是考虑最显著的第二位效应来校准参考值并依据校准后的参考值执行读取操作以达到增大读取窗口的目的,均不脱离本发明的技术范围。第二实施例请参照图8,其绘示是依据本发明第二实施例的编程存储器的方法流程图。此存储器例如多级单元闪存,其包含多个存储单元,每个存储单元具有第一侧与第二侧,每一侧至少具有一个位。例如,存储单元A与存储单元B的第一侧是左侧的Al与Bl,其第二侧是右侧的A2与B2,如图1A所示。每一侧具有对应特定状态(例如10、01或00)的一个预设编程验证值PV0。首先,于步骤800中,编程目标存储单元的第一侧使得其阈值电压Vt值不低于对应的预设编程验证值PV0或经由编程验证调整值APV0补偿的预设编程验证值PV0,亦即(PV0+APV0)。依据对应的阵列地址取得第一侧的编程验证调整值APV0。例如,通过检视查询表并依据阵列地址来取得编程验证调整值APV0。编程验证调整值APV0通常介于0伏特至0.4伏特之间。接下来,于步骤810中,读取第一侧的第一阈值电压值Vtl并据以取得对应于第二侧的第一编程验证调整值APV1。例如,可检视如图9所示的第七查询表LUT7来取得对应每一Vtl值的APV1值,其中APV1值通常介于0伏特至0.4伏特之间。于步骤820中,依据对应的阵列地址取得对应第二侧的第二编程验证调整值APV2。相似于步骤800,编程第一侧达到预设编程验证值PVO或(PVO+APVO)后,阵列效应再度被考虑以校准对应第二侧的预设编程验证值PVO。例如,可检视如图4C所示的第三查询表LUT3并依据对应的阵列地址(位于左行中)来取得第二侧的第二编程验证调整值APV2(位于右行中)。第二编程验证调整值APV2通常介于0伏特至0.2伏特之间。步骤830中,通过将对应的第一编程验证调整值APV1与对应的第二编程验证调整值APV2加入至预设编程验证值PV0以取得第二侧的第一校准编程验证值PV,,亦即PV,=PV0+APV1+APV2。PV,值大于PVO值。步骤840中,编程目标存储单元的第二侧使得其阈值电压Vt不低于对应的第一校准编程验证值PV'。此步骤840是依据第一校准编程验证值PV'来编程第二侧。在编程存储器的目标存储单元的第二侧后,于第二实施例的方法中可以更包括读取第二侧的阈值电压Vt并据以取得对应第一侧的第二校准编程验证值PV"的步骤850;以及编程目标存储单元的第一侧使得其阈值电压Vt不低于对应的第二校准编程验证值PV"的步骤860。由于在编程对应的第二侧的后,第一侧的Vt值仍会被影响,因此步骤850与步骤860的目的是通过考虑第二位效应来校准目标存储单元的第一侧的编程验证值,并编程第一侧达到校准编程验证值PV"。由于通过考虑第二位效应与阵列效应,目标存储单元的第二侧的编程验证值PV被校正为PV'值且目标存储单元的第一侧的编程验证值PV被校正为PV",基于PV'值与PV"值所执行的编程操作可具有大于现有技术的操作窗口,因此增加存储器循环边界。虽然本实施例的编程存储器方法是以依据对应第一侧的阈值电压值与对应的阵列地址并通过检视查询表来分别取得第二侧的第一编程验证调整值与第二编程验证调整值并据以取得校准编程验证值PV'为例作说明,然本发明的方法也可以依据第一侧的阈值电压值Vt取得校准编程验证值PV'。除此之外,除了检视查询表之外,任何其它软件或程序设计同样地可用来取得上述的编程验证调整值。只要最显著的第二位效应被考虑以校准对应目标存储单元的第二侧的编程验证值并依据校准后编程验证值执行编程操作达成增大操作窗口的目的,均不脱离本发明的技术范围。揭露于本发明实施例中的读取与编程存储器的方法经由考虑第二位效应、相邻位效应以及阵列效应来校正目标存储单元的第一侧的编程验证值为一校准编程验证值。因此,真实存储单元阈值电压vt分布(无上述的效应)于编程与擦除化操作时将比先前技术更窄小化。存储器的操作窗口相对变大进而使存储器循环边界有效率被提升。此外,存储器的擦除一致性也可以相对地改善。综上所述,虽然本发明已以一较佳实施例揭露如上,然其并非用以限定本发明。本发明所属
技术领域
中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视权利要求所界定的范围为准。权利要求1、一种编程存储器的方法,该存储器包括多个存储单元并具有对应一目标存储单元的一预设编程验证值,其特征在于,该方法包括;a)编程该目标存储单元的一第一侧,使得该第一侧的一阈值电压值不低于对应的该预设编程验证值;b)读取该目标存储单元的一第二侧的一阈值电压值,并据以取得对应该第一侧的一校准编程验证值;以及c)编程该目标存储单元的该第一侧,使得该第一侧的一阈值电压值不低于对应的该校准编程验证值。2、根据权利要求1所述的方法,其特征在于,所述步骤a)更包括编程该目标存储单元的该第一侧使得该第一侧的一阈值电压不低于经一编程验证调整值补偿的对应该预设编程验证值,其中该目标存储单元的该编程验证调整值是依据对应的一阵列地址所取得;所述步骤b)更包括读取该目标存储单元的一相邻侧的一阈值电压值,并依据该相邻侧的该阈值电压值以取得该校准编程验证值;所述步骤c)更包括依据对应的一阵列地址取得对应于该第一侧的该校准编程验证值。3、根据权利要求2所述的方法,其特征在于,该步骤b)更包括依据对应的该第二侧、对应的该相邻侧的该多个阈值电压值以及对应的该阵列地址检视一查询表,以分别取得该目标存储单元的一第一编程验证调整值、一第二编程验证调整值与一第三编程验证调整值;以及通过将该第一编程验证调整值、该第二编程验证调整值以及该第三编程验证调整值加入该预设编程验证值,取得对应于该第一侧的该校准编程验证值。4、根据权利要求3所述的方法,其特征在于,该第一编程验证调整值是0伏特至0.4伏特,该第二编程验证调整值是O伏特至O.l伏特,该第三编程验证调整值是0伏特至0.2伏特。5、根据权利要求1所述的方法,其特征在于,该步骤b)更包括读取该目标存储单元的该第一侧的一第一阈值电压值及该第二侧的一第二阈值电压值;以及依据该第一阈值电压值与该第二阈值电压值取得该第一侧的该校准编程验证值。6、一种读取存储器的方法,该存储器包括多个存储单元并具有对应一目标存储单元的一第一侧的一预设参考值,其特征在于,该方法包括a)读取该目标存储单元的一第二侧的一阈值电压值,并据以取得对应该第一侧的一校准参考值;以及b)依据对应的该校准参考值,读取该目标存储单元的该第一侧。7、根据权利要求6所述的方法,其特征在于,该步骤a)更包括依据对应的该第二侧、对应的该相邻侧的该多个阈值电压以及对应的阵列地址检视一查询表,分别取得该目标存储单元的一第一编程验证调整值、一第二编程验证调整值以及一第三编程验证调整值;以及通过将对应的该第一调整值、对应的该第二调整值以及对应的第三调整值加入该预设参考值,取得对应该第一侧的该校准参考值。8、根据权利要求7所述的方法,其特征在于,该第一调整值是0伏特至0.4伏特,该第二调整值是0伏特至0.1伏特,该第三调整值是0伏特至0.2伏特。9、一种编程存储器的方法,该存储器包括多个存储单元,各该存储单元具有一第一侧与一第二侧,该第一侧与第二侧均具有一预设编程验证值,其特征在于,该方法包括a)编程该第一侧使得该第一侧的一阈值电压值不低于对应的该预设编程验证值;b)读取该第一侧的该阈值电压值并据以取得对应的该第二侧的一第一校准编程验证值;以及c)编程该第二侧使得该第二侧的一阈值电压值不低于对应的该第一校准编程验证值。10、根据权利要求9所述的方法,其特征在于,更包括d)读取该第二侧的该阈值电压值并据以取得对应的第一侧的一第二校准编程验证值;以及e)编程该第一侧使得该第一侧的该阈值电压值不低于对应的该第二校准编程验证值。全文摘要本发明公开了一种读取与编程存储器的方法,存储器包括多个存储单元并具有对应目标存储单元的预设编程验证值,该方法包括编程目标存储单元的第一侧使得其阈值电压值不低于预设编程验证值;读取目标存储单元的第二侧的阈值电压值并据以取得对应的第一侧的校准编程验证值;以及编程目标存储单元的第一侧使得其阈值电压不低于对应的校准编程验证值。文档编号G11C16/10GK101656107SQ200910139068公开日2010年2月24日申请日期2009年5月15日优先权日2008年8月21日发明者廖惇雨申请人:旺宏电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1