用于存储器器件的软数据生成的方法和装置的制作方法

文档序号:6768336阅读:225来源:国知局
专利名称:用于存储器器件的软数据生成的方法和装置的制作方法
技术领域
本发明通常涉及闪速存储器器件,更具体地,涉及改进的软解映射和软数据生成技术,用于减轻这些闪速存储器器件中的单元间干扰、后模式依赖性(back pattern dependency)、噪声和其他失真的影响。
背景技术
诸如闪速存储器器件的许多存储器器件使用模拟存储器单元来存储数据。每个存储器单元存储诸如电荷或电压的模拟值,其也被称为存储值。存储值表示单元中存储的信息。在闪速存储器器件中,例如,每个模拟存储器单元典型地存储特定的电压。关于每个单元的可能的模拟值的范围典型地被分为多个阈值区,每个区对应于一个或更多个数据位值。通过写入对应于期望的一个或更多个位的额定模拟值来将数据写入模拟存储器单元。单级单元(SLC)闪速存储器器件例如,每个存储器单元存储一个位(或者两个可能的存储器状态)。另一方面,多级单元(MLC)闪速存储器器件在每个存储器单元存储两个或更多个位(即,每个单元具有四个或更多个可编程状态)。对于MLC闪速存储器器件的更详细的讨论,参见例如,在2009年3月11日提交的题为“Methods andApparatus for Storing Data in a Multi-Level Cell Flash Memory Devicewith Cross-Page Sectors, Multi-Page Coding And Per-Page Coding”的国际专利申请PCT/US09/36810号,其通过引用合并于此。在多级NAND闪速存储器器件中,例如,使用浮栅器件,其可编程阈值电压范围被分为多个区间,每个区间对应于不同的多位值。为了将给定多位值编程到存储器单元中,存储器单元中的浮栅器件的阈值电压被编程到对应于该值的阈值电压区间。存储器单元中存储的模拟值常常失真。这些失真典型地归因于例如,后模式依赖性(BPD)、噪声和单元间干扰(ICI)。对于闪速存储器器件中的失真的更详细的讨论, 参见例如,J. D. Lee 等人的"Effects ofFloating-Gate Interference on NAND FlashMemory Cell Operation, “ IEEE Electron Device Letters, 264-266 (2002 ^5^) ■ 者 Ki-Tae Park 等人的"A Zeroing Cell-to-Cell Interference Page Architecture WithTemporary LSB Storing and Parallel MSB Program Scheme for MLCNAND Flash Memories, “ IEEE J. of Solid State Circuits,Vol. 43,No. 4,919-928,(2008 年 4 月), 它们均通过引用合并于此。已提出或建议了许多用于减轻ICI和其他干扰的影响的技术。例如,Ki-Tae Park等人描述了现有的减轻ICI的编程技术,诸如偶/奇编程、由下而上编程和多级编程。在 2009 年 6 月 30 日提交的题为"Methods and Apparatus for Soft Demapping and Intercell InterferenceMitigation in Flash Memories” 的国际专禾Ij 申请 PCT/ US09/49333公开了闪速存储器中的用于软解映射和干扰减轻的方法和装置。尽管这些现有方法有助于提高闪速存储器的解码性能,但是它们受到许多限制, 如果克服了这些限制,则可以进一步提高闪速存储器的可靠性。例如,当前的闪速存储器典型地仅向闪速控制系统提供用于解码的硬数据。然而,公知的是,软数据可以提高解码处理中的错误率性能。因此,需要使用来自闪速存储器的硬数据来估计或增强软数据并且从而提高解码性能的软数据生成技术。

发明内容
通常,提供了用于存储器器件的软数据生成的方法和装置。根据本发明的一个方面,通过获得至少一个硬读取值;并且基于关于读取硬读取值的统计生成与至少一个硬读取值关联的软数据值,生成了关于存储器器件的至少一个软数据值。硬读取值可以包括软数据或硬数据(或者它们的组合),诸如一个或更多个数据位、电压电平、电流水平和电阻水平。所生成的软数据值可以包括(i)用于生成一个或更多个对数似然比的软读取值;或者(ii) 一个或更多个对数似然比。统计可以包括基于位的统计、基于单元的统计和取决于模式的统计中的一个或更多个。关于一个或更多个可能电平LVLwite的基于单元的统计可以基于当写入电平
写入或解码时读取电平LVLread的概率。可替选地,关于一个或更多个可能电平LVL_d的基于单元的统计可以基于当读取电平LVLrad被读取时写入或解码电平LVLwite的概率。统计还可以包括至少一个侵略者单元对目标单元的取决于模式的干扰。关于一个或更多个识别模式以及关于一个或更多个可能的参考电平LVLMf的取决于模式的统计可以基于当参考电平LVLref被解码或写入时读取电平LVL_d的概率。可替选地,关于一个或更多个识别模式和关于一个或更多个可能的读取电平LVLread的取决于模式的统计可以基于当读取电平LVL_d被读取时解码或写入参考电平LVLref的概率。根据另一方面,统计可以包括位置特定的统计并且随后生成关于存储器器件的所期望的位置的软数据值。关于至少一个所期望的位置以及关于一个或更多个可能的参考电平LVLMf的位置特定的统计可以基于当参考电平LVLMf被解码或写入时在所期望的位置读取电平LVLread的概率。可替选地,关于至少一个所期望的位置和关于一个或更多个可能的读取电平LVLread的位置特定的统计可以基于当读取电平LVL_d在所期望的位置被读取时解码或写入参考电平LVLMf的概率。根据本发明的另一方面,通过获得软读取值;并且基于关于读取软读取值的统计生成与软读取值关联的软数据值,生成了关于存储器器件的至少一个软数据值,其中统计包括位置特定的统计和取决于模式的统计中的一个或更多个。通过参考下面的详细描述和附图,将获得本发明的更完整的理解以及本发明的另外的特征和优点。


图1是传统的闪速存储器系统的示意性框图;图2图示了关于图1的示例性闪速存储器的示例性阈值电压分布;图3图示了多级单元(MLC)闪速存储器器件中的示例性闪速单元阵列的架构;图4图示了关于图2的电压分配方案的示例性两级MLC编程方案;图5A和5B共同地图示了减少强加在相邻单元上的ICI的可替选的MLC编程方案;图6更详细地图示了多级单元(MLC)闪速存储器器件中的示例性闪速单元阵列;图7图示了由于许多示例性侵略者单元而对目标单元呈现的干扰,诸如单元间干扰、后模式依赖性、噪声和其他失真;图8是根据本发明的并入了基于控制器的软解映射/软数据生成技术的示例性闪速存储器系统的示意性框图;图9是根据本发明的可替选的实施例的并入了基于控制器的软解映射/软数据生成技术的示例性闪速存储器系统的示意性框图;图10图示了具有迭代的解映射和解码以及可选的交织的示例性闪速读取通道架构;图11图示了根据本发明的具有软数据生成的示例性闪速存储器系统;图12A和12B分别是描述示例性软解映射处理和软数据生成处理的流程图;图13是低密度奇偶校验(LDPC)码的示例性二部图表示;图14是示例性LDPC解码器架构的框图;图15图示了根据本发明的一个实施例的具有软数据生成的示例性闪速存储器系统;图16是图示关于示例性二进制通道的错误概率ρ和q的网格图;图17A至17C是记录关于从闪速存储器读出数据的统计数据的示例性的基于单元的统计数据表格;图18是记录关于从闪速存储器读出数据的取决于模式的统计数据的示例性的取决于模式的基于单元的统计数据表格;图19更详细地图示了关于本发明的参考单元实施例的图3的示例性闪速单元阵列;图20是描述关于本发明的参考单元实施例的基于位的统计数据生成处理的示例性实现的流程图;图21是描述关于本发明的参考单元实施例的基于单元的统计数据生成处理的示例性实现的流程图;图22是描述关于本发明的解码码字实施例的基于位的统计数据生成处理的示例
8性实现的流程图;图23是描述关于本发明的解码码字实施例的基于单元的统计数据生成处理的示例性实现的流程图;图M是描述计算关于存储器阵列中的许多不同位置的错误概率统计数据的示例性的基于位的位置特定的统计数据生成处理的流程图;图25是描述计算关于存储器阵列中的许多不同位置的统计数据的示例性的基于单元的位置特定的统计数据生成处理的流程图;图沈图示了基于每个侵略者单元的所有可能值的指示针对给定目标单元的取决于模式的干扰影响的概率密度函数的集合;图27是描述估计取决于与至少一个目标单元关联的一个或更多个侵略者单元中的给定数据模式的错误概率统计数据的示例性的基于位的取决于模式的统计数据生成处理的流程图;图观是描述估计取决于与至少一个目标单元关联的一个或更多个侵略者单元中的给定数据模式的统计数据的示例性的基于单元的取决于模式的统计数据生成处理的流程图;图四是描述关于本发明的参考单元实施例的估计关于两个可能的二进制值的错误概率统计数据的示例性的非对称统计数据生成处理的流程图;图30是描述关于本发明的解码码字实施例的估计关于两个可能的二进制值的错误概率统计数据的示例性的非对称统计数据生成处理的流程图;图31是描述使用未满足的奇偶校验的统计数据生成处理的示例性实现的流程图;图32是描述使用未满足的奇偶校验估计关于存储器阵列中的许多不同位置的错误概率统计数据的示例性的位置特定的统计数据生成处理的流程图;以及图33是描述使用未满足的奇偶校验估计关于两个可能的二进制值的错误概率统计数据的示例性的非对称统计数据生成处理的流程图。
具体实施例方式本发明的各种方面涉及用于改进诸如单级单元或多级单元(MLC)NAND闪速存储器器件的存储器器件中的解码的软数据生成技术。如这里使用的,多级单元闪速存储器包括其中每个存储器单元存储两个或更多个位的存储器。典型地,一个闪速单元中存储的多个位属于不同的页。如对于本领域的普通技术人员明显的,尽管这里说明的本发明使用将模拟值存储为电压的存储器单元,但是本发明可以使用关于存储器器件的任何存储机制, 诸如使用电压或电流来表示所存储的数据。图1是传统的闪速存储器系统100的示意性框图。如图1中所示,示例性闪速存储器系统100包括闪速控制系统110和闪速存储器模块160。示例性闪速控制系统110包括闪速控制器120、编码器/解码器模块140和一个或更多个缓冲器145。在可替选的实施例中,编码器/解码器模块140和一些缓冲器145可以在闪速控制器120内部实现。编码器/解码器模块140和缓冲器145可以例如,使用公知的商用技术和/或产品来实现。示例性闪速存储器模块160包括存储器阵列170和一个或更多个缓冲器180,它们均可以使用公知的商用技术和/或产品来实现。存储器阵列170可以被实施为单级或多级单元闪速存储器,诸如NAND闪速存储器、相变存储器(PCM)、MRAM存储器、NOR闪速存储器或者另外的非易失性闪速存储器。如对于本领域的普通技术人员明显的,尽管主要在多级单元NAND闪速存储器的背景下说明了本发明,但是本发明也可以应用于单级单元闪速存储器和其他非易失性存储器。多级单元闪谏存储器在多级单元NAND闪速存储器中,典型地使用阈值检测器将与特定单元关联的电压值翻译为预先定义的存储器状态。图2基于美国专利第6,522,580号(其通过引用合并于此)的教导图示了关于图1的示例性多级单元闪速存储器170的示例性阈值电压分布。 通常,单元的阈值电压是需要施加到单元的电压,从而使得单元传导特定量的电流。阈值电压是关于存储在单元中的数据的度量。在图2中示出的示例性实施例中,每个存储元件使用四个可能的数据状态来在每个存储器单元中存储两位的数据。图2图示了四个峰值210-213,每个峰值对应于一个状态。在多级单元闪速存储器中,阈值电压分布曲线200的不同的峰值210-213被用于将两个位存储在单元中。阈值电压分布曲线200的峰值210-213标记有相应的二进制值。因此,当单元处于第一状态210时,其表示低位(还被称为最低有效位LSB)的“1”和高位(还被称为最高有效位MSB)的“1”。状态210通常是单元的初始未编程或者擦除状态。同样地,当单元处于第二状态211时,其表示低位的“0”和高位的“1”。当单元处于第三状态212时,其表示低位的“0”和高位的“0”。最后,当单元处于第四状态213时,其表示低位的“1”和高位的 “0”。阈值电压分布210表示处于擦除状态(“11”数据状态)的阵列中的单元的阈值电压Vt的分布,具有0伏以下的负阈值电压电平。存储“10”和“00”用户数据的存储器单元的阈值电压分布211和212分别被示出为分别在0和1伏之间和1和2伏之间。阈值电压分布213示出了已被编程到“01”数据状态的单元的分布,具有设定在2和4. 5伏读通电压之间的阈值电压电平。因此,在图2的示例性实施例中,0伏、1伏和2伏可以用作每个电平或状态之间的电压电平阈值。闪速存储器160(例如,闪速存储器160中的感测电路)使用电压电平阈值来确定给定单元的电压电平或状态。闪速存储器160将基于测量的电压与电压电平阈值的比较将一个或更多个位分配给每个单元,它们随后作为硬判决被传送到闪速控制系统110。 此外或者可替选地,在使用软信息的实现中,闪速存储器160可以将测量的电压或者测量的电压的量化形式作为软信息传送到闪速控制系统110,其中与存储器单元中存储的位数目相比,使用数目更大的位来表示测量的电压。进一步注意到,典型地使用公知的编程/验证技术来对单元编程。通常,在编程/ 验证周期期间,闪速存储器160逐渐施加增加的电压以将电荷存储在单元晶体管中,直至超过最小目标阈值电压。例如,在图2的示例中编程“10”数据状态时,闪速存储器160可以逐渐施加增加的电压以将电荷存储在单元晶体管中,直至超过了 0. 4V的最小目标阈值电压。如下文进一步讨论的,存储在单个存储器单元中的两个位中的每一个来自不同的页。换言之,存储在每个存储器单元中的两个位中的每个位承载了不同的页地址。当输入较低页地址时访问图2中示出的右侧位。当输入较高页地址时访问图2中示出的左侧位。图3图示了多级单元(MLC)闪速存储器器件160中的示例性闪速单元阵列300的架构,其中每个示例性单元典型地对应于存储两个位的浮栅晶体管。在图3中,每个单元与两个位所属的两个页的两个编号关联。示例性单元阵列部分300示出了字线η至η+2和四个位线。示例性闪速单元阵列300被分为偶数和奇数页,其中例如具有偶数编号(诸如具有编号0和2的单元)的单元对应于偶数页,并且具有奇数编号(诸如具有编号1和3的单元)的单元对应于奇数页。字线η存储例如偶数位线中的偶数页0和2以及奇数位线中的奇数页1和3。此外,图3指示了示例性编程顺序,其中按所指示的顺序连续地(自下而上) 选择并编程偶数或奇数位线单元。编号指示其中对页编程的顺序。例如,页0在页1之前被编程。对于偶数和奇数页的编程的进一步的讨论,参见例如K.-τ. Park等人的“Α Zeroing Ce11-to-Ce11Interference Page Architecture With Temporary LSB Storing andParallel MSB Program Scheme for MLC NAND Flash Memories, “ IEEEJ. of Solid State Circuits, Vol. 43,No. 4,919-928, (2008 年 4 月),其通过引用合并于此。图4图示了关于图2的电压分配方案的示例性两级MLC编程方案400。如图4中所示,在LSB编程阶段期间,如果LSB是零,则处于擦除状态410的所选择的单元的状态移动到最低编程状态411。因此,在LSB编程阶段中,将存储器单元从擦除状态“11”编程到“10”。 接下来,在MSB编程阶段期间,根据前一 LSB数据,连续形成两个状态,即状态“00^412)和状态“01 ” (413)。通常,在MSB编程阶段期间,“ 10”状态被编程到“00”,并且状态"11"被编程到“01”。注意,图4的编程方案400图示了与从状态410到状态413的状态改变关联的最大电压漂移。已提出或建议了许多编程方案来减少与状态改变关联的最大电压漂移,从而减少由电压漂移引起的ICI。图5A和5B共同地图示了减少强加在相邻单元上的ICI的可替选的MLC编程方案 500。如图5A中所示,在LSB编程阶段期间,按与SLC编程相似的方式将存储器单元从状态“11”编程到作为临时(或中间)状态的状态“x0”。在同一字线中的相邻单元也被LSB 编程之后,由于ICI,分布可能被扩宽,如图5A中的峰值510所示。随后,在图5B中所示的 MSB编程阶段中,“x0”状态被编程到作为对应于输入数据的最终状态的“00”和“ 10”,或者 “11”状态被编程到最终的“01”状态。通常,在MSB编程阶段中除“11”单元以外的所有存储器单元从关于LSB数据的临时编程状态重新编程到其最终状态,从而可以极大地减少由相邻单元引起的ICI。处于最终状态的单元将不会受到当其处于中间状态时经历的ICI,这是因为其已被重新编程到最终状态。处于最终状态的单元将仅受到由于其处于最终状态而经历的ICI。如上文提到的,图5A和5B的多步骤编程顺序使用中间编程状态,从而减少了最大电压改变并且因此减少由这些电压改变引起的ICI。在图5B中可以看到,例如MSB编程阶段期间的最大电压漂移分别与从状态“11”到“01”和从状态“ x0,,到状态“ 10 ”的变换关联。这些电压漂移明显小于图4中的从状态“11”到“01”的最大电压漂移。图6更详细地图示了多级单元(MLC)闪速存储器器件130中的示例性闪速单元阵列600。如图6中所示,闪速单元阵列600的每个闪速单元Ci存储三个位。图6图示了关于一个模块的闪速单元阵列架构,其中每个示例性单元典型地对应于存储三个位的浮栅晶体管。示例性单元阵列600由m个字线和η个位线组成。典型地,在当前的多页单元闪速存储器中,单个单元中的位属于不同的页。在图6的示例中,每个单元的三个位对应于三个不同的页,并且每个字线存储三个页。在下面的讨论中,页0、1和2被称为字线中的较低、 中间和较高页级。如上文指示的,闪速单元阵列可以被进一步分为偶数和奇数页,其中例如具有偶数编号的单元(诸如图6中的单元2和4)对应于偶数页,并且具有奇数编号的单元(诸如图6中的单元1和3)对应于奇数页。在该情况中,页(诸如页0)将包含偶数单元中的偶数页(偶数页0)和奇数单元中的奇数页(奇数页0)。单元间干扰和其他干扰图7图示了由于许多示例性侵略者单元720而对目标单元710呈现的干扰,诸如单元间干扰、后模式依赖性、噪声和其他失真。在图7中使用如下记号WL 字线;BL:位线;BLo 奇数位线BLe 偶数位线C:电容。例如,ICI由在目标单元710已被编程之后编程的侵略者单元720引起。ICI改变目标单元710的电压Vt。在示例性实施例中,采取“自下而上”的编程方案并且位线i和 i+1中的相邻的侵略者单元引起了目标单元710的ICI。对于块的这种自下而上的编程,如图7中所示,来自较低位线i_l的ICI被移除,并且高达五个相邻单元作为侵略者单元720 对ICI有贡献。然而,注意,如对于本领域的普通技术人员明显的,这里讨论的技术可以归纳为如下情况,其中来自诸如字线i_l的其他字线的侵略者单元也对ICI有贡献。如果来自字线i-1、i和i+Ι的侵略者单元对ICI有贡献,则需要考虑高达八个最近的相邻单元。远离目标单元的其他单元可被忽略,条件是它们对ICI的贡献是可忽略的。通常,通过分析编程顺序方案(诸如自下而上或偶/奇技术)来识别侵略者单元720,从而识别在给定目标单元710之后编程的侵略者单元720。通常,Vt是表示存储在单元上并且在读取操作期间获得的数据的电压。Vt可以通过读取操作获得,例如,作为具有比每个单元存储的位数目更高的精度的软电压值,或者作为按与每个单元存储的位数目相同的分辨率(对于3位/单元闪速存储器,其是3位)量化到硬电压电平的值。对于ICI减轻技术的更详细的讨论,参见例如,题为“Methodsand Apparatus for Read-Side Intercell Interference Mitigation in FlashMemories,,的国际专利申请 PCT/US09/493^ 或者题为 “Methods andApparatus for Write-Side Intercell Interference Mitigation in FlashMemories” 的国际专利申请 PCT/US09/49327,它们均通过引用合并于此。软数据生成本发明提供了用于闪速存储器的软解映射和软数据生成技术。在下文结合图12A 进一步讨论的一个示例性实施例中,使用概率统计数据(诸如概率密度函数、其近似、基于位的概率或者基于单元的概率),根据闪速存储器分配的软数据生成增强的软数据。在下文结合图12B进一步讨论的另一示例性实施例中,使用概率统计数据(诸如概率密度函数、其近似、基于位的概率或者基于单元的概率),根据闪速存储器分配的硬数据生成软数据。通常,在最初时获得由闪速存储器分配的数据。本发明随后基于来自闪速存储器的数据生成或增强诸如概率或可靠性信息的软信息。所生成的软信息可以可选地用于软判决解码。如这里使用的,术语“概率密度函数”应包括概率密度函数及其近似,诸如直方图和高斯近似。
图8是根据本发明的并入了基于控制器的软数据生成技术的示例性闪速存储器系统800的示意性框图。如图8中所示,示例性闪速存储器系统800包括由接口 850连接的闪速控制系统810和闪速存储器模块860。示例性闪速控制系统810包括闪速控制器820 和读取通道825,其典型地位于一个或更多个集成电路上。 示例性读取通道825包括信号处理单元830、编码器/解码器模块840和一个或更多个缓冲器845。注意,术语“读取通道”也可以涵盖写入通道。在可替选的实施例中,编码器/解码器模块840和一些缓冲器845可以在闪速控制器820内部实现。编码器/解码器模块840和缓冲器845可以例如使用公知的商用技术和/或产品来实现,进行如这里的修改以提供本发明的特征和功能。示例性信号处理单元830包括一个或更多个处理器,其实现一个或更多个软解映射器和/或软数据生成处理835,如下文例如分别结合图12A和12B进一步讨论的。示例性闪速存储器模块860包括存储器阵列870和一个或更多个缓冲器880,它们均可以使用公知的商用技术和/或产品来实现。在所公开的软数据生成技术的各种实施例中,示例性接口 850可能需要传送与传统的闪速存储器系统相关的额外信息,诸如表示与侵略者单元关联的信息的值。因此, 接口 850可能需要具有比传统的闪速存储器系统中的接口更高的容量或更快的速率。接口 850可以可选地例如,根据在2009年6月30日提交的并且通过引用合并于此的题为 "Methods and Apparatus for Interfacing Between a Flash MemoryControIler and a Flash Memory Array”(代理人编号08-0769)的国际PCT专利申请PCT/US09/493^的教导来实现,其使用例如双数据速率(DDR)技术来增加接口 850的信息承载容量。在写入操作期间,接口 850典型地使用页或字线级访问技术来传输将被存储在目标单元中的编程值。 对于示例性的页或字线级访问技术的更详细的讨论,参见例如,在2009年3月11日提交的题为“Methods and Apparatus for StoringData in a Multi-Level Cell Flash Memory Device with Cross-Page Sectors,Multi-Page Coding And Per-Page Coding,,的国际专利申请PCT/US09/36810,其通过引用合并于此。在读取操作期间,接口 850传输已从存储器阵列870获得的关于目标和侵略者单元的硬和/或软读取值。例如,除了关于具有目标单元的页的读取值之外,在接口总线上传输关于较高/较低字线或者相邻偶数或奇数位线中的一个或更多个相邻页的读取值。在图 8的实施例中,所公开的软数据生成技术是在闪速存储器外部实现的,典型地以为逻辑电路优化以实现最低面积的处理技术实现。然而,这是以可能在接口 850上传输额外的侵略者单元数据为代价的。图9是根据本发明的可替选的实施例的并入了基于存储器的软数据生成技术的示例性闪速存储器系统900的示意性框图。如图9中所示,示例性闪速存储器系统900包括由接口 950连接的闪速控制系统910和闪速存储器模块960。示例性闪速控制系统910包括闪速控制器920和可选的读取通道925,其典型地位于一个或更多个集成电路上。在可替选的实施例中,编码器/解码器模块940和一些缓冲器945可以在闪速控制器920内部实现。示例性闪速控制器920可以例如使用公知的商用技术和/或产品来实现,进行如这里的修改以支持本发明的特征和功能。示例性读取通道 925包括编码器/解码器模块940和一个或更多个缓冲器945。编码器/解码器模块940 和缓冲器945可以使用公知的商用技术和/或产品来实现。示例性闪速存储器模块960包括存储器阵列970和一个或更多个缓冲器980,它们均可以使用公知的商用技术和/或产品来实现。此外,示例性闪速存储器模块960包括示例性的信号处理单元985,其包括实现一个或更多个软解映射和/或软数据生成处理990 的一个或更多个处理器,如下文例如分别结合图12A和12B进一步讨论的。在所公开的软数据生成技术的各种实施例中,示例性接口 950可能需要传送与传统的闪速存储器系统相关的额外信息,诸如表示与侵略者单元关联的信息的值。因此,接口 950可能需要具有比传统的闪速存储器系统中的接口更高的容量或更快的速率。接口 950 可以可选地例如,根据在2009年6月30日提交的并且通过引用合并于此的题为“Methods and Apparatus for Interfacing Between a Flash MemoryControIler and a Flash Memory Array” (代理人编号08-0769)的国际PCT专利申请PCT/US09/493^的教导来实现,其使用例如双数据速率(DDR)技术来增加接口 950的信息承载容量。在写入操作期间,接口 950传输将被存储到目标和侵略者单元中的编程数据。在读取操作期间,接口 950传输关于目标单元和可选地侵略者单元的新的硬或软读取值或数据。典型地,对于单次读取访问所传送的信息是数据的页或字线。注意,以使用用于制造闪速存储器的存储器加工技术在存储器内部实现软数据生成处理为代价(典型地针对存储器和非逻辑电路进行优化),仅发送关于目标单元的数据减少了接口 950的带宽要求。图10图示了具有根据在2009年6月30日提交的题为“Methodsand Apparatus for Soft Demapping and Intercell Interference Mitigationin Flash Memories,,的国际专利申请PCT/US09/49333(其通过引用合并于此)的教导的迭代的解映射和解码以及可选的交织的示例性闪速读取通道架构1000。如图10中所示,示例性写入路径包括编码器 1010、可选的交织器1020、串并转换器1030和映射器1040。数据以已知的方式被写入存储器1050并从其中读取。示例性读取路径包括软解映射器或软数据生成器1060、并串转换器 1070、解交织器1080、解码器1090和交织器1095。通常,如下文进一步讨论的,软解映射器或者软数据生成器1060生成如下文进一步描述的软信息,该软信息由解码器1090处理以生成新的软信息并且以迭代的方式反馈到软解映射器,直至迭代处理收敛到最终判决。在下文的题为“使用读取统计数据计算软数据(LLR) ”的部分中讨论了根据本发明的由软解映射器1060使用的用于生成软信息(LLR)的等式。如图10中所示,由解映射器 1060生成的软信息可以用于反馈路径中的软解映射器1060、解交织器1080、解码器1090和交织器1095之间的迭代的解映射和解码。基于来自闪速存储器的书籍的软数据生成本发明认识到,当前的闪速存储器860、960典型地仅向闪速控制系统810、910提
供硬数据。然而,公知的是,软数据可以提高解码处理中的错误率性能。因此,根据本发明的一个方面,使用来自闪速存储器860、960的硬数据来估计软数据并且从而提高闪速控制系统810、910中的解码性能。例如,如下文讨论的,硬数据的统计性质可以用于估计或增强软数据。随后可以使用所生成的软数据用于解码,诸如LDPC码的置信传播解码,以提高错误率性能。根据本发明的另一方面,闪速存储器860、960向闪速控制系统810、910提供软数据或软信息。根据由闪速存储器860、960提供的软数据生成增强的软数据,从而提高闪速控制系统810、910中的解码性能。在使用软信息的实现中,闪速存储器系统860、960将测量的电压或者测量的电压的量化形式作为软信息传送到闪速控制系统810、910,其中与存储器单元中存储的位数目相比,使用数目更大的位来表示测量的电压。图11图示了根据本发明的一个实施例的具有基于控制器的软数据生成的示例性闪速存储器系统1100。如图11中所示,示例性闪速存储器系统1100包括由接口 1115连接的闪速存储器模块Ilio和闪速控制系统1120。如后面讨论的,软或硬数据值(或此两者) 可以由闪速存储器模块1110分配并且在接口 1115上被传输到闪速控制系统1120用于进一步解码和处理。示例性闪速控制系统1120包括下文结合图12A和12B进一步讨论的软解映射器/软数据生成器1200以及下文结合图13-14进一步讨论的解码器1400。解码器 1400可以例如,使用LDPC解码算法来实施,诸如Belief Propagation, Message Passing、 Sum-Product 或者 Min-Sum 算法。如图11中所示,软解映射器/软数据生成器1200生成的软信息可以可选地用于软解映射器/软数据生成器1200和解码器1400之间的迭代的解映射和解码。通常,如图 11中所示,软解映射器/软数据生成器1200生成如下文的题为“使用读取统计数据计算软数据(LLR),,的部分中讨论的具有LLR,Le的形式的软信息。在最初时,由软解映射器/软数据生成器1200计算的LLR,Le基于来自闪速存储器1110的软或硬读出数据(或此两者) 以及相应的统计数据。LLR,Le由解码器1400处理以生成新的软信息La,其以迭代的方式反馈回到软解映射器/软数据生成器1200,直至迭代处理收敛到最终判决。软解映射器/软数据生成器1200图12A是描述并入本发明的用于根据闪速存储器810、910提供的软数据生成增强的软数据的特征的示例性软解映射处理1200的流程图。如图12A中所示,示例性软解映射处理1200在最初时在步骤1210期间从闪速存储器810、910获得关于目标单元的软数据r, 并且可选地获得表示存储在与目标单元关联的侵略者单元(一个或更多个)中的数据的一个或更多个值h。软解映射处理1200随后在步骤1220期间基于r和可选地h获得统计数据(或概率),诸如一个或更多个概率密度函数。下文在题为“统计数据的收集”的部分中进一步地讨论了统计数据。随后在步骤1230期间,使用所获得的统计数据计算LLR(—个或更多个)。在下文的题为“使用读取统计数据计算软数据(LLR),,的部分中讨论了 LLR。随后在步骤1240期间,将计算的LLR提供给解码器1400,或者可选地提供给解交织器。计算的LLR可以可选地被用于例如基于LLR的符号进行关于读取数据的最终判决。图12B是描述并入本发明的用于根据闪速存储器810、910提供的硬数据生成软数据的特征的示例性软数据生成处理1250的流程图。如图12B中所示,示例性软数据生成处理1250在最初时在步骤1260期间从闪速存储器810、910获得关于目标单元的硬数据§,并且可选地获得表示存储在与目标单元关联的侵略者单元(一个或更多个)中的数据的一个或更多个值G。硬数据§可以是例如,由闪速存储器810、910分配给每个单元的二进制位或者电平。为了计算关于单元中的一个位的LLR并且其他位不可用,使用例如页和字线访问技术来读取单元中的其他位。对于示例性的页或字线级访问技术的更详细的讨论,参见例如,在 2009 年 3 月 11 曰提交的题为"Methods and Apparatus for Storing Data in a Multi-Level Cell FlashMemory Device with C ross-Page Sectors,Multi-Page Coding And Per-Page Coding”的国际专利申请PCT/US09/36810,其通过引用合并于此。对于页访问技术,读取LLR正被计算的页,并且可选地,也可以读取同一字线中的其他页,从而可以将硬数据映射到关于单元的级别§。通过字线访问技术,可以读取整个字线以获得单元中的所有位,从这些位获得硬数据级§。例如,通过从侵略者单元720 (或者其中存储侵略者单元720的页或字线)读出多个位来获得模式G。对于用于读出侵略者单元的技术的更详细的讨论,参见例如,题为 "Methods and Apparatus for Read-Side Intercell Interference Mitigation in Flash Memories”的国际专利申请PCT/US09/493^,其通过引用合并于此。软数据生成处理1250随后在步骤1270期间基于§和可选地^获得统计数据(或概率),诸如一个或更多个概率密度函数。如下文在题为“统计数据的收集”的部分中进一步地讨论的,统计数据也可以是基于位的或基于单元的概率。如下文的题为“使用读取统计数据计算软数据(LLR) ”的部分中关于各种高斯近似等式的讨论,当使用关于软读取值的分布的高斯近似时,统计数据包括分布的平均值或方差。可以例如在闪速存储器芯片针对不同性能因数的特征化期间(诸如编程/擦除周期、读取周期和温度)预先计算平均值和方差并且将其存储在表格中。可以基于性能因数,并且可选地还基于侵略者单元720中存储的模式 从表格获得平均值和方差。随后在步骤1280期间使用所获得的统计数据来计算LLR。在下文的题为“使用读取统计数据计算软数据(LLR) ”的部分中讨论了 LLR。注意,如题为“使用读取统计数据计算软数据(LLR),,的部分中解释的,除了统计数据或者替代统计数据,可以可选地使用由解码器提供的先验LLR La来计算LLR。当计算了关于单元中的位的LLR时,使用关于单元中的至少一个位(可选地所有其他位)的先验LLRLa。这需要单元中的这些其他位已被读取并且已由解码器计算关于它们的先验LLR La0随后在步骤1290期间将计算的LLR提供给解码器1400,或者可选地提供给解交织器。计算的LLR可以可选地用于例如基于LLR的符号进行关于读取数据的最终判决。注意,如在 2009 年 3 月 11 曰提交的题为"Methods and Apparatus for Storing Data in a Multi-Level CellFlash Memory Device with Cross-Page Sectors, Multi-Page Coding AndPer-Page Coding”的国际专利申请PCT/US09/36810 (其通过弓丨用合并于此)中描述的, 单元中的所有位(或者字线中的所有页)可以被共同地编码和解码。在另一实施例中,再次如国际专利申请PCT/US09/36810中描述的,单元中的位(或者字线中的所有页)可以被分立地编码和解码。
解码器1400-LDPC实现下面的LDPC码和LDPC解码的背景讨论基于A. J. Blanksby和C. J. Howland 的"A 690-mff 1-Gb/s 1024-b, Rate-l/2Low-Density Parity-Check Decoder, “ IEEE J. Solid-State Circuits, Vol. 37,404-412 (Mar. 2002)中的讨论,其通过引用合并于此。对于更详细的讨论,请读者参考Blanksby和Howland的完整论文。LDPC码的图表示还可以使用二部图来表示LDPC码,其中一个节点集合表示奇偶校验约束而另一集合表示数据位。图13是LDPC码的示例性二部图表示1300。奇偶校验矩阵是图的关联矩阵,其中如果设定了 H中的元l·^,即非零,则对应于H中的列i的位节点i连接到对应于H 中的行j的校验节点j。一种用于对LDPC码解码的算法被称为和-积算法。为了该算法的良好解码性能, 重要的是,LDPC码的图表示中的周期长度是尽可能长的。在图13的示例性表示中,图示了长度为四的示例性短周期。诸如图13中图示的长度为4的周期的短周期使和-积算法的性能劣化。另一用于对LDPC码解码的公知算法是最小和算法。和-积算法和-积算法是用于对LDPC码解码的迭代算法。和-积算法还被称为消息传递算法或置信传播。对于和-积算法的更详细的讨论,参见例如,A. J. Blanksby和C. J. Howland 的"A 690-mff 1-Gb/s 1024-b, Rate-1/2 Low-Density Parity-Check Decoder, “ IEEE J.Solid-State Circuits, Vol.37,404-412(Mar. 2002) , D.E. Hocevar ^ “ LDPC CodeConstruction With Flexible Hardware Implementation, " IEEE Int' 1 Conf. on Comm. (ICC),Anchorage, AK, 2708-2712 (May, 2003)以及 R. N. S. Ratnayake> Ε. F. Haratsch 禾口 Gu-Yeon Wei 的"A Bit-node centricarchitecture for low-density parity check decoders, " ' IEEE GlobalTelecommunications Conference (Globecom), Washington, D. C. , 265-270 (November 2007),它们均通过引用合并于此。Le, i是关于位i的由软解映射器/软数据生成器提供的外在LLR。从校验节点j到位节点i的消息I^i由下式给出从位节点i到校验节点j的消息(^j由下式给出
权利要求
1.一种用于生成关于存储器器件的至少一个软数据值的方法,所述方法包括获得至少一个硬读取值;以及基于关于读取所述硬读取值的统计数据数据生成与所述至少一个硬读取值关联的所述软数据值。
2.如权利要求1所述的方法,其中所述硬读取值包括数据位、电压电平、电流水平和电阻水平中的一个或更多个。
3.如权利要求1所述的方法,其中所述硬读取值包括软数据和硬数据中的一个或更多个。
4.如权利要求1所述的方法,其中所述软数据值包括用于生成一个或更多个对数似然比的软读取值。
5.如权利要求1所述的方法,其中所述软数据值包括一个或更多个对数似然比。
6.如权利要求1所述的方法,其中所述一个或更多个所述步骤是由控制器、读取通道、 信号处理单元和解码器中的一个或更多个实现的。
7.如权利要求1所述的方法,其中所述统计数据数据包括至少一个概率密度函数。
8.如权利要求1所述的方法,其中所述统计数据数据在多个字线上取平均,并且其中所平均的统计数据数据用于生成所述软数据值。
9.如权利要求1所述的方法,其中所述统计数据数据包括基于位的统计数据数据、基于单元的统计数据数据和取决于模式的统计数据数据中的一个或更多个。
10.如权利要求9所述的方法,其中针对所述存储器器件中的多个字线维持分立的基于单元的统计数据数据。
11.如权利要求9所述的方法,其中关于一个或更多个可能电平LVLw&的所述基于单元的统计数据数据基于当所述写入电平LVLwitJ皮写入或解码时电平口1^3(1被读取的概率。
12.如权利要求9所述的方法,其中关于一个或更多个可能电平LVLrad的所述基于单元的统计数据数据基于当所述读取电平LVLrad被读取时电平LVwite被写入或解码的概率。
13.如权利要求1所述的方法,进一步包括如下步骤获得表示针对闪速存储器中的至少一个侵略者单元存储的数据的值h。
14.如权利要求13所述的方法,其中所述值h包括硬数据和软数据中的一个或更多个。
15.如权利要求13所述的方法,其中所述获得步骤进一步包括读取所述至少一个侵略者单元的步骤。
16.如权利要求13所述的方法,其中所述获得步骤进一步包括读取所述至少一个侵略者单元所处的一个或更多个页或字线的步骤。
17.如权利要求1所述的方法,其中所述统计数据数据包括所述目标单元上的干扰的指示。
18.如权利要求17所述的方法,其中所述干扰包括后模式依赖性、单元间干扰、编程干扰、读取干扰和额外噪声中的一个或更多个。
19.如权利要求1所述的方法,其中所述统计数据数据包括至少一个侵略者单元对所述目标单元的取决于模式的干扰。
20.如权利要求19所述的方法,其中关于一个或更多个识别模式以及关于一个或更多个可能的参考电平LVLMf的所述取决于模式的统计数据数据基于当所述参考电平LVLMf被解码或写入时电平LVLrad被读取的概率。
21.如权利要求19所述的方法,其中关于一个或更多个识别模式和关于一个或更多个可能的读取电平LVLread的所述取决于模式的统计数据数据基于当所述读取电平口、3(1被读取时参考电平LVLMf被解码或写入的概率。
22.如权利要求1所述的方法,其中所述统计数据数据包括位置特定的统计数据数据, 并且其中为所述存储器器件的所期望的位置生成所述软数据值。
23.如权利要求22所述的方法,其中关于至少一个所期望的位置以及关于一个或更多个可能的参考电平LVLMf的所述位置特定的统计数据数据基于当所述参考电平LVLMf被解码或写入时在所述所期望的位置读取电平LVLread的概率。
24.如权利要求22所述的方法,其中关于至少一个所期望的位置和关于一个或更多个可能的读取电平LVLread的所述位置特定的统计数据数据基于当所述读取电平LVLread在所述所期望的位置被读取时参考电平LVLMf被解码或写入的概率。
25.如权利要求1所述的方法,其中所述统计数据数据被表示为存储的表格和表达式中的一个或更多个。
26.如权利要求1所述的方法,其中使用高斯近似来表达所述统计数据数据。
27.如权利要求1所述的方法,进一步包括向解码器提供所述软数据值的步骤。
28.如权利要求27所述的方法,其中所述软数据值被迭代地提供给所述解码器。
29.如权利要求观所述的方法,其中所述软数据值被提供给所述解码器,并且其中所述解码器计算新的软数据值,并且其中以迭代的方式处理所述新的软数据值,直至所述迭代处理收敛。
30.如权利要求1所述的方法,其中所述存储器器件是闪速存储器器件。
31.如权利要求1所述的方法,其中所述存储器器件在每个单元能够存储至少两个数据电平S。
32.如权利要求1所述的方法,其中所述获得步骤进一步包括读取单元中的多个位的步骤。
33.如权利要求1所述的方法,其中所述获得步骤进一步包括读取字线中的一个或更多个页的步骤。
34.如权利要求1所述的方法,其中所述统计数据数据包括概率和概率分布的平均值或方差中的一个或更多个。
35.如权利要求1所述的方法,其中所述软数据值包括如下计算的一个或更多个对数似然比
36.如权利要求1所述的方法,其中所述软数据值包括如下计算的一个或更多个对数似然比
37.如权利要求1所述的方法,其中所述软数据值包括如下计算的一个或更多个对数似然比
38.如权利要求1所述的方法,其中所述软数据值包括如下计算的一个或更多个对数似然比
39.如权利要求1所述的方法,其中所述软数据值包括如下计算的一个或更多个对数似然比
40.权利要求1所述的方法,其中所述软数据包括如下计算的一个或更多个对数似然比
41.如权利要求1所述的方法,其中所述软数据值包括如下计算的一个或更多个对数似然比其中关于多个状态的电压分布具有基本上相似的标准偏差σ (s) = σ。
42.如权利要求1所述的方法,其中所述软数据值包括如下计算的一个或更多个对数似然比
43.一种用于生成关于存储器器件的至少一个软数据值的方法,所述方法包括 获得软读取值;以及基于关于读取所述软读取值的统计数据数据生成与所述软读取值关联的所述软数据值,其中所述统计数据数据包括位置特定的统计数据数据和取决于模式的统计数据数据中的一个或更多个。
44.如权利要求43所述的方法,其中从解码器获得所述软读取值。
45.一种用于生成关于存储器器件的至少一个软数据值的系统,所述方法包括 存储器;以及至少一个处理器,耦合到所述存储器,用于 获得至少一个硬读取值;以及基于关于读取所述硬读取值的统计数据数据生成与所述至少一个硬读取值关联的所述软数据值。
46.一种用于生成关于存储器器件的至少一个软数据值的系统,所述方法包括 存储器;以及至少一个处理器,耦合到所述存储器,用于 获得软读取值;以及基于关于读取所述软读取值的统计数据数据生成与所述软读取值关联的所述软数据值,其中所述统计数据数据包括位置特定的统计数据数据和取决于模式的统计数据数据中的一个或更多个。
全文摘要
提供了用于存储器器件的软数据生成的方法和装置。通过获得至少一个硬读取值;并且基于关于读取硬读取值的统计数据数据生成与至少一个硬读取值关联的软数据值,生成了关于存储器器件的至少一个软数据值。硬读取值可以是数据位、电压电平、电流水平和电阻水平中的一个或更多个。所生成的软数据值可以是如下中的一个或更多个(i)用于生成一个或更多个对数似然比的软读取值;或者(ii)一个或更多个对数似然比。统计数据数据包括基于位的统计数据数据和基于单元的统计数据数据中的一个或更多个。统计数据数据还可以包括至少一个侵略者单元对目标单元的取决于模式的干扰以及位置特定的统计数据数据。通过获得软读取值;并且基于关于读取软读取值的统计数据数据生成与软读取值关联的软数据值,生成了关于存储器器件的至少一个软数据值,其中统计数据数据包括位置特定的统计数据数据和取决于模式的统计数据数据中的一个或更多个。
文档编号G11C16/34GK102203876SQ200980143076
公开日2011年9月28日 申请日期2009年9月30日 优先权日2008年9月30日
发明者A·维缇亚埃夫, C·威廉姆森, E·F·哈拉特什, J·延, M·伊威科维克, N·米拉德诺维奇, V·克拉琦科夫斯基 申请人:Lsi公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1