Neighbor-cell assisted error correction for MLC NAND flash memories

Neighbor-cell assisted error correction for MLC NAND flash memories
复制标题

DOI:
10.1145/2591971.2591994
复制
发表时间:
2014-06
期刊:
--
影响因子:
--
通讯作者:
Yu Cai;Gulay Yalcin;O. Mutlu;E. Haratsch;O. Unsal;A. Cristal;K. Mai
Yu Cai;Gulay Yalcin;O. Mutlu;E. Haratsch;O. Unsal;A. Cristal;K. Mai
中科院分区:
其他
文献类型:
--
作者:
Yu Cai;Gulay Yalcin;O. Mutlu;E. Haratsch;O. Unsal;A. Cristal;K. Mai

文献摘要

被引文献

相似文献

NAND闪速存储器向更小的工艺技术节点的持续缩放降低了其可靠性,需要更复杂的机制来正确地读取存储的数据值。为了区分不同的潜在存储值,从闪存读取数据的常规技术采用基于闪存单元的总体阈值电压分布来确定的单组参考电压值。不幸的是,编程干扰的现象(其中当相邻单元被编程时单元的阈值电压无意地改变)使得这种常规方法在确定单元的值时越来越不准确。本文提出了新的经验观察,即识别存储在紧邻单元中的值可以更容易地确定存储在正在读取的单元中的数据值。我们提供了一个详细的统计和实验表征的阈值电压分布的闪存单元的条件下,直接相邻的单元值,并表明,这样的条件分布可以用来确定一组读取参考电压,导致错误率远低于当一个单一的参考电压值的基础上使用的整体分布。基于我们的分析,我们提出了一种新的方法来纠正错误的闪存页,邻居单元辅助校正(NAC)。关键思想是用对应于假设相邻单元值的条件阈值电压分布的读取参考电压值的集合来重新读取错误校正码(ECC)失败的闪存页,并且使用重新读取的值来校正具有具有该值的相邻单元的单元。我们的模拟表明,NAC有效地提高了闪存寿命的33%,而没有(在标称寿命)或非常温和(在延长寿命小于5%)的性能开销。
Continued scaling of NAND flash memory to smaller process technology nodes decreases its reliability, necessitating more sophisticated mechanisms to correctly read stored data values. To distinguish between different potential stored values, conventional techniques to read data from flash memory employ a single set of reference voltage values, which are determined based on the overall threshold voltage distribution of flash cells. Unfortunately, the phenomenon of program interference, in which a cell's threshold voltage unintentionally changes when a neighboring cell is programmed, makes this conventional approach increasingly inaccurate in determining the values of cells. This paper makes the new empirical observation that identifying the value stored in the immediate-neighbor cell makes it easier to determine the data value stored in the cell that is being read. We provide a detailed statistical and experimental characterization of threshold voltage distribution of flash memory cells conditional upon the immediate-neighbor cell values, and show that such conditional distributions can be used to determine a set of read reference voltages that lead to error rates much lower than when a single set of reference voltage values based on the overall distribution are used. Based on our analyses, we propose a new method for correcting errors in a flash memory page, neighbor-cell assisted correction (NAC). The key idea is to re-read a flash memory page that fails error correction codes (ECC) with the set of read reference voltage values corresponding to the conditional threshold voltage distribution assuming a neighbor cell value and use the re-read values to correct the cells that have neighbors with that value. Our simulations show that NAC effectively improves flash memory lifetime by 33% while having no (at nominal lifetime) or very modest (less than 5% at extended lifetime) performance overhead.