随着制程工艺的不断提升以及多电平单元编码技术的使用,NAND闪存的存储密度有了很大的提高。但是这也给闪存带来新的挑战——更加严重的干扰[1-6]。其中,持久性干扰是闪存信道主要干扰之一,并且成为3D-NAND闪存的最主要干扰[3, 5-6]。存储单元在使用过程中会有不同程度的磨损,导致电子容易从存储单元中泄露出去,从而造成读电压的减小,这就是持久性干扰的成因。这就说明持久性干扰在闪存的生命周期内一直存在,影响闪存的寿命以及数据的可靠性。为了减小持久性干扰所带来的影响,掉电的信道估计算法被提出。然而,该算法复杂度太高难以应用于实际系统中。鉴此,本文利用持久性干扰的特点对信道估计算进行简化,以减少计算复杂度和提高精度。
1 信道模型不失一般性,所提的算法在多电平(multi-level cell, MLC)型的NAND闪存模型中验证。但是,该算法也可以应用到三电平(trinary-level cell, TLC)型的NAND闪存中。闪存信道的干扰主要包括随机电子噪声(random telegraph noise,RTN),单元间干扰(cell-to-cell interference,CCI)和持久性干扰(retention)。所以,闪存的单元阈值电压可以表示为[1, 4, 7-11]:
${V_{{\rm{th}}}} = V + \Delta {V_{{\rm{RTN}}}} + \Delta {V_{{\rm{CCI}}}} - \Delta {V_{{\rm{retetion}}}}$ |
式中:
闪存存储单元内电子数的改变主要在编程和擦除操作中。在编程前,存储单元必须进行擦除操作,让存储单元内的电子移除出浮栅,从而使得阈值电压设置到最小值。所以擦除状态下的阈值电压服从高斯分布:
${p_e}(x) = \frac{1}{{{\sigma _e}\sqrt {2{\text{π}} } }}{{\rm{e}}^{ - \frac{{{{(x - {\mu _e})}^2}}}{{2{\sigma _e}^2}}}} = N({\mu _e},{\sigma _e}^2)$ |
式中
根据文献[7-9],编程状态的存储单元由于布朗电子运动以及介质的特性,其阈值电压分布也服从高斯分布:
${p_p}(x) = N({\mu _p},{\sigma _p}^2)$ |
在存储单元中,靠近浮栅氧化层的电子由于布朗运动而从浮栅中泄露,这就造成了随机电子噪声。该噪声与浮栅的氧化层磨损程度有关。而随着编程和擦除次数增加,干扰也会增加。因此,随机电子噪声的数学模型可以用类高斯分布模型来表示,即
${p_r}(x) = \frac{1}{{{\sigma _r}\sqrt {2{\text{π}} } }}{{\rm{e}}^{ - \frac{{{x^2}}}{{2{\sigma _r}^2}}}} = N(0,{\sigma _r}^2)$ |
式中:
由于相邻的存储单元之间存在寄生耦合电容,导致存储单元在编程时会对相邻的存储单元的阈值电压造成影响,如图1所示。
Download:
|
|
所以,单元间干扰通常用一个阈值电压变化的线性组合模型来表示,即
$\Delta {V_{{\rm{CCI}}}} = \sum\limits_n {(\Delta {V^{(n)}} \times {\gamma ^{(n)}})} $ |
式中:
在存储单元编程后,单元内的电子会随着时间的增加而逐渐泄露出去,整个过程可以用高斯模型来建模,即
${u_t} = \Delta V[{A_t}{({{P_{\rm E}}})^{{a_i}}} + {B_t}{({{P_{\rm E}}})^{{a_o}}}]\log (1 + T)$ |
${\sigma _t} = 0.3|{u_t}|$ |
式中
闪存信道参数有如下设置:
图2显示了阈值电压受到干扰前后的分布情况,干扰对阈值电压的分布产生了严重的影响。
Download:
|
|
而持久性干扰使得阈值电压向左偏移,具有以下2个特点:1)阈值电压越高,左偏移量越大;2)对于擦除状态的阈值电压几乎没影响。
由于持久性干扰的影响,最优读参考电压发生偏移,最终导致闪存存储的数据的可靠性降低。特别在断电的情况下,存储单元内的电子仍然受到持久性干扰的影响而泄露,导致无法得知闪存存储单元的分布情况。本文针对断电情况下的阈值电压分布不可控问题而利用参数估计的方法对闪存信道进行估计。
2.2 参数估计首先,讨论单电平(single-level cell, SLC)型闪存的信道。SLC型闪存中,每个存储单元只存储一个比特的数据,即只存在2种状态−擦除和编程状态,如图3所示。
Download:
|
|
由于闪存不能直接获取每个存储单元的电压值,这给信道估计带来了挑战。为了避免使用存储单元的具体电压值,对SLC型闪存的阈值电压进行量化,如图3所示。假设整个阈值电压被分n个区间,然后根据电压区间范围对闪存进行数据采样。假设采样的存储单元总数为
${p_{{Z_n}}} = \frac{{{N_{{Z_n}}}}}{N}$ |
由上文可知,闪存的阈值电压分布服从混合高斯分布。所以,可以利用高斯分布对信道进行估计。估计的概率为
$\begin{split} {\overline p _{{Z_n}}} = & \dfrac{1}{2}(\overline p _{{Z_n}}^{(0)} + \overline p _{{Z_n}}^{(1)}) = \dfrac{1}{2}\Bigg(\dfrac{1}{{\sqrt {2{\text{π}} } \sigma }}\int_{{R_k}}^{{R_{k + 1}}} {{{\rm{e}}^{ - \frac{{{{(x - {\mu _0})}^2}}}{{2{\sigma _0}^2}}}}} {\rm{d}}x + \\ & \quad \quad \dfrac{1}{{\sqrt {2{\text{π}} } \sigma }}\int_{{R_k}}^{{R_{k + 1}}} {{{\rm{e}}^{ - \frac{{{{(x - {\mu _1})}^2}}}{{2{\sigma _1}^2}}}}} {\rm{d}}x\Bigg)= \\ & \dfrac{1}{2}\Bigg(Q\Bigg(\dfrac{{{R_k} - {\mu _0}}}{{{\sigma _0}}}\Bigg) - Q\Bigg(\dfrac{{{R_{k + 1}} - {\mu _0}}}{{{\sigma _0}}}\Bigg)+ \\ & \quad \quad Q\Bigg(\dfrac{{{R_k} - {\mu _1}}}{{{\sigma _1}}}\Bigg) - Q\Bigg(\dfrac{{{R_{k + 1}} - {\mu _1}}}{{{\sigma _1}}}\Bigg)\Bigg) \end{split} $ |
$Q(x) = \frac{1}{{\sqrt {2{\text{π}} } }}\int_x^\infty {{{\rm{e}}^{ - \frac{{{t^2}}}{{2{\sigma ^2}}}}}} {\rm{d}}t$ |
式中:
为了获得最优的估算,定义损失函数为最小均方误差,即通过计算采样测量的概率和预测估计的概率之间的最小均方误差:
$C = \sum\limits_{k=0}^n {{{({{\overline p }_{{Z_k}}} - {p_{{Z_k}}})}^2}} $ |
根据持久性干扰的特点,擦除状态下的阈值电压分布不会因为持久性干扰的影响而造成严重偏移,所以擦除状态的概率分布近似固定。因此,损失函数可以改写为
$ \begin{array}{l} C = \displaystyle\sum\limits_{k = 0}^n {{{\Bigg(Q\Bigg(\frac{{{R_k} - {\mu _1}}}{{{\sigma _1}}}\Bigg) - Q\Bigg(\frac{{{R_{k + 1}} - {\mu _1}}}{{{\sigma _1}}}\Bigg) - 4{p_k}\Bigg)}^2}}\\ {p_k} = 4{p_{{Z_n}}} - Q\Bigg(\dfrac{{{R_k} - {\mu _0}}}{{{\sigma _0}}}\Bigg) - Q\Bigg(\dfrac{{{R_{k + 1}} - {\mu _0}}}{{{\sigma _0}}}\Bigg) \end{array} $ | (1) |
式中
对损失函数求
$\begin{split} \dfrac{{{\partial ^2}C}}{{\partial {\mu _1}^2}} = & \dfrac{1}{{{\text{π}} \sigma _1^2}}\displaystyle\sum\limits_{k = 0}^n {\Bigg(\exp \Bigg( - \dfrac{{{{({R_{k + 1}} - {\mu _1})}^2}}}{{2{\sigma _1}^2}}\Bigg)} - \\ & \exp \Bigg( - \dfrac{{{{({R_k} - {\mu _1})}^2}}}{{2{\sigma _1}^2}}\Bigg)\Bigg){^2} + \dfrac{2}{{\sqrt {2{\text{π}} } \sigma }}\displaystyle\sum\limits_{k = 0}^n {\Bigg(Q\Bigg(\dfrac{{{R_k} - {\mu _1}}}{{{\sigma _1}}}\Bigg)} - \\ & Q\Bigg(\dfrac{{{R_{k + 1}} - {\mu _1}}}{{{\sigma _1}}}\Bigg) - {p_k}\Bigg)\Bigg(\dfrac{{{R_{k + 1}} - {\mu _1}}}{{{\sigma _1}}}\exp \Bigg( - \dfrac{{{{({R_{k + 1}} - {\mu _1})}^2}}}{{2{\sigma _1}^2}}\Bigg)- \\ & \dfrac{{{R_k} - {\mu _1}}}{{{\sigma _1}}}\exp \Bigg( - \dfrac{{{{({R_k} - {\mu _1})}^2}}}{{2{\sigma _1}^2}}\Bigg)\Bigg) \end{split} \!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!$ |
接下来讨论该二阶偏导是否为非负。先讨论下面的函数的单调性:
$y = \frac{x}{a}\exp \Bigg( - \frac{{{x^2}}}{{2a}}\Bigg)$ |
式中
${\sigma ^2} \leqslant \mu - {R_k}$ | (2) |
${R_k} - \mu \notin ( - {\sigma ^2},{\sigma ^2})$ | (3) |
易得到:
$\begin{split} & \dfrac{{{R_{k + 1}} - {\mu _1}}}{{{\sigma _1}}}\exp \Bigg( - \dfrac{{{{({R_{k + 1}} - {\mu _1})}^2}}}{{2{\sigma _1}^2}}\Bigg) - \\ & \quad \quad \dfrac{{{R_k} - {\mu _1}}}{{{\sigma _1}}}\exp \Bigg( - \dfrac{{{{({R_k} - {\mu _1})}^2}}}{{2{\sigma _1}^2}}\Bigg) < 0 \end{split} $ |
而在闪存信道中,存储单元内存储的电子数只能通过编程过程来增加,其他状态下都是减少,则有
$Q\Bigg(\frac{{{R_k} - {\mu _1}}}{{{\sigma _1}}}\Bigg) - Q\Bigg(\frac{{{R_{k + 1}} - {\mu _1}}}{{{\sigma _1}}}\Bigg) - {p_k} < 0$ |
故当满足式(2)和(3)时,
同样地,对损失函数求
$\frac{{{\partial ^2}C}}{{\partial {\sigma _1}^2}} = A + B$ |
$\begin{split} A = & \dfrac{1}{{{\text{π}} {\sigma _1}^4}}\displaystyle\sum\limits_{k = 0}^{n - 1} {\Bigg(\exp \Bigg( - \dfrac{{{{({R_{k + 1}} - {\mu _1})}^2}}}{{2\sigma _1^2}}\Bigg)\Bigg({R_{k + 1}} - {\mu _1}\Bigg)} - \\ & \exp \Bigg( - \dfrac{{{{({R_k} - {\mu _1})}^2}}}{{2\sigma _1^2}}\Bigg)({R_k} - {\mu _1})\Bigg){^2} \end{split} $ |
$\begin{split} B = & \dfrac{2}{{\sqrt {2{\text{π}} } {\sigma _1}^2}}\displaystyle\sum\limits_{k = 0}^{n - 1} {\Bigg(Q\Bigg(\dfrac{{{R_k} - {\mu _1}}}{{{\sigma _1}}}\Bigg) - Q\Bigg(\dfrac{{{R_{k + 1}} - {\mu _1}}}{{{\sigma _1}}}\Bigg)}- \\ & {p_k}\Bigg)\Bigg(\dfrac{{{{({R_{k + 1}} - {\mu _1})}^3}}}{{2\sigma _1^3}}\exp \Bigg( - \dfrac{{{{({R_{k + 1}} - {\mu _1})}^2}}}{{2\sigma _1^2}}\Bigg) - \\ & \dfrac{{{{({R_k} - {\mu _1})}^3}}}{{2\sigma _1^3}}\exp \Bigg( - \dfrac{{{{({R_k} - {\mu _1})}^2}}}{{2\sigma _1^2}}\Bigg)\Bigg) \end{split} $ |
显然地,
$2{\sigma _2} < \mu - {R_k}$ |
所以,当在凸区间中进行数据采样时,可以求得最优的解,而该最优的参数解即为闪存信道的阈值电压分布的均值和标准差,如图4所示。对于该优化问题,利用梯度下降法进行求解。
Download:
|
|
算法 利用梯度下降法求解。
初始化。把信道参数的均值和标准差初始化为不受干扰时的理想值;
1)根据式(1)计算结果误差;
2)计算梯度
3)判断结果误差是否小于某个数或是否满足停止条件。成立,则进行步骤5);否则进行步骤4);
4)更新
$ {\mu _1} = {\mu _1} - a{g_{{u_{_1}}}} $ |
$ {\sigma _1} = {\sigma _1} - b{g_{{\sigma _{_1}}}} $ |
式中
5)输出均值和标准差。
其中,
$\begin{array}{l} {g_{{\mu _{_1}}}} = \dfrac{2}{{\sqrt {2{\text{π}} } {\sigma _1}}}\displaystyle\sum\limits_{k = 0}^{n - 1} {\Bigg(Q\Bigg(\dfrac{{{R_k} - {\mu _1}}}{{{\sigma _1}}}\Bigg) - Q\Bigg(\dfrac{{{R_{k + 1}} - {\mu _1}}}{{{\sigma _1}}}\Bigg)} - \\ \;\;\;\; 4{p_k}\Bigg)\Bigg(\exp \Bigg( - \dfrac{{{{({R_{k + 1}} - {\mu _1})}^2}}}{{2{\sigma _1}}}\Bigg) - \exp \Bigg( - \dfrac{{{{({R_k} - {\mu _1})}^2}}}{{2{\sigma _1}}}\Bigg)\Bigg) \\ \end{array} $ |
$\begin{array}{l} {g_{{\sigma _{_1}}}} = \dfrac{2}{{\sqrt {2{\text{π}} } {\sigma _1}}}\displaystyle\sum\limits_{k = 0}^{n - 1} {\Bigg(Q\Bigg(\dfrac{{{R_k} - {\mu _1}}}{{{\sigma _1}}}\Bigg) - Q\Bigg(\dfrac{{{R_{k + 1}} - {\mu _1}}}{{{\sigma _1}}}\Bigg)} - \\ \;\;\;\; 4{p_k}\Bigg)\Bigg(\exp \Bigg( - \dfrac{{{{({R_{k + 1}} - {\mu _1})}^2}}}{{2{\sigma _1}}}\Bigg)({R_{k + 1}} - {\mu _1}) - \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; \exp \Bigg( - \dfrac{{{{({R_k} - {\mu _1})}^2}}}{{2{\sigma _1}}}\Bigg)({R_k} - {\mu _1})\Bigg) \\ \end{array} $ |
在SLC型闪存中,信道估计可以按照上文所述的方法进行求解,但是对于MLC、TLC等类型的闪存不能直接利用上文所述的方法。因此,本节将SLC的估计方法扩展到MLC、TLC型的闪存。
如图4所示,数据采样区间是在2个状态之间的重叠区上。另外,根据图2,相邻状态的重叠区的概率分布主要是与这相邻状态的分布情况有关,而非相邻的状态分布对重叠区概率的影响非常小。所以,以MLC为例而提出算法,如图5所示。
Download:
|
|
首先,擦除状态的分布参数近似不变,通过SLC闪存的信道估计来估计“01”状态的分布参数。然后,由于“01”状态的分布已经被估计出来了,同样地可以估计出“00”状态的分布参数。最终,可以估计出全部状态的分布参数。
3 仿真结果本仿真实验在MATLAB平台实现,而闪存信道参数有如下设置:
Download:
|
|
Download:
|
|
在图6和图7中,虚线为Aslam所提的RABP-CU股计算法[20],实线为本文所提的估计算法。
不同状态分布的估计误差表达式为
${\varepsilon _u} = |{\mu _{01 \sim 10}} - \mu _{01 \sim 10}^*|$ |
${\varepsilon _\sigma } = |{\sigma _{01 \sim 10}} - \sigma _{01 \sim 10}^*|$ |
式中:
从图6、7中可以看出,均值的估计误差在0.02 V之内,而闪存芯片能够识别的最小电压分辨率为0.01 V。这说明在阈值电压分布的估算中,均值的估算达到较高的精度,接近了物理识别的最小分辨率。对于标准差的估计,其误差范围为0.01到0.04。而且标准差的估计误差随着持久性时间和PE的增加而减小,即当持久性干扰影响越严重时估计误差越小。实际上,在干扰小的情况下闪存的纠错编码或其他的纠错技术足以保证闪存的数据可靠性,不需要对信道进行精确的估计。但是,当干扰增加而超过纠错编码或其他的纠错技术的能力时,有必要对信道进行精确地估计来协助其他技术来保证数据的可靠性。所以标准差的估计在严重的干扰下,可以有较高的精度。通过与RABP-CU估计算法作比较,本文所提的估计算法在均值估计中的精度高于RABP-CU估计算法,而标准差估计近似或者稍优于RABP-CU估计算法。
根据仿真结果,本信道估计算法结合NAND闪存可以实现较高精度的信道参数估计。
4 结论根据NAND闪存的持久性干扰的特点,本文提出了一种新颖的NAND闪存阈值电压分布估计算法,主要利用参数估计算法来估计阈值电压分布的均值和标准差。通过上述理论分析及数据仿真,得出以下结论:
1)闪存信道的阈值电压分布可以利用高斯混合模型进行近似拟合并能够达到较高的拟合精度。
2)对比现有的信道参数估计算法,本文所提估计算法能达到较高的估计精度。
3)在实际应用方面,本文方案利用NAND闪存的固有回读机制来对信道参数进行估计,没有额外修改或添加闪存的结构和功能,具有一定的可行性。
[1] | CAI Y, GHOSE S, HARATSCH E F, et al. Error characterization, mitigation, and recovery in flash-memory-based solid-stat-e drives[J]. Proceedings of the IEEE, 2017, 105(9): 1666-1704. DOI:10.1109/JPROC.2017.2713127 (0) |
[2] | CAI Y, HARATSCH E F, MUTLU O, et al. Threshold voltage distribution in MLC NAND flash memory: characterization, analysis, and modeling[C]//Proc. Design, Autom., Test Eur. Conf. Exhibit. (DATE), IEEE, 2013. (0) |
[3] | FEI W, YUE Z, QIN X, et al. Characterizing 3D charge trap NAND flash: observations, analyses and Applications[C]//2018 IEEE 36th International Conference on Computer Design (ICCD). Orlando, Florida, USA, IEEE, 2018. (0) |
[4] | WEI D, DENG L, HAO M, et al. A joint-LDPC decoding scheme based on retention error characteristics for MLC NAND flash memory[J]. Microprocessors and microsystems, 2018: 60. (0) |
[5] | LEE J D, CHOI J H, PARK D, et al. Data retention characteristics of sub-100 nm NAND flash memory cells[J]. Electron device letters IEEE, 2003, 24(12): 748-750. DOI:10.1109/LED.2003.820645 (0) |
[6] | LUN Zhiyuan, LIU Shuhuan, HE Yuan, et al. Investigation of retention behavior for 3D charge trapping NAND flash memory by 2D self-consistent simulation[C]//(2014 International Conference on) Simulation of Semiconductor Processes and Devices (SISPAD). Yokohama, Japan, IEEE, 2014. (0) |
[7] | WU Jixuan, CHEN Jiezhi, JIANG Xiangwei. Atomistic study of lateral charge diffusion degradation during program/erase cycling in 3D NAND flash memory[J]. IEEE journal of the electron devices society, 2019(99): 1-1. (0) |
[8] | CAI Y, MUTLU O, HARATSCH E F, et al. Program interference in MLC NAND flash memory: characterization, modeling, and mitigation[C]//2013 IEEE 31st International Conference on Computer Design (ICCD). Asheville, North Carolina, USA, IEEE, 2013. (0) |
[9] | MICHELONI R, CRIPPA L, MARELLI A. Inside NAND flash memories[M]. Springer. 2010:55–128. (0) |
[10] | COMPAGNONI, C. M, GHIDOTTI, M, LACAITA, et al. Random telegraph noise effect on the programmed threshold-voltage distribution of flash memories[J]. IEEE electron device letters, 2009, 30(9): 984-986. DOI:10.1109/LED.2009.2026658 (0) |
[11] | DONG G, XIE N, ZHANG T. On the use of soft-decision error-correction codes in nand flash memory[J]. IEEE transactions on circuits and systems I: regular papers, 2011, 58(2): 429-439. DOI:10.1109/TCSI.2010.2071990 (0) |
[12] | LEE, Dong-hwan, SUNG, Wonyong. Estimation of NAND flash memory threshold voltage distribution for optimum soft-decision error correction[J]. IEEE transactions on signal processing, 2013, 61(2): 440-449. DOI:10.1109/TSP.2012.2222399 (0) |
[13] | ASLAM C A, GUAN Y L, CAI K. Decision-directed retention-failure recovery with channel update for MLC NAND flash memory[J]. IEEE transactions on circuits and systems I: regular papers, 2017: 1-13. (0) |
[14] | LEE J D, HUR S H, CHOI J D. Effects of floating-gate interference on NAND flash memory cell operation[J]. IEEE electron device letters, 2002, 23(5): 264-266. DOI:10.1109/55.998871 (0) |
[15] | DONG G, LI S, ZHANG T. Using data postcompensation and predistortion to tolerate cell-to-cell interference in MLC nand flash memory[J]. IEEE transactions on circuits and systems I: regular papers, 2010, 57(10): 0-2728. (0) |
[16] | ADNAN A C, GUAN Y L, CAI K. Detector for MLC NAND flash memory using neighbor-a-priori information[J]. IEEE transactions on very large scale integration (VLSI) systems, 2016, 24(9): 2827-2836. DOI:10.1109/TVLSI.2016.2523759 (0) |
[17] | LEE D, SUNG W. Soft-decision decoding with cell to cell interference removed signal in nand flash memory[C]//2013 IEEE International Conference on Acoustics, Speech and Signal Processing. IEEE, 2013. (0) |
[18] | PARK K T , KANG M , KIM D , et al. A zeroing cell-to-cell interference page architecture with temporary LSB storing and parallel MSB program scheme for MLC NAND flash memories[J]. IEEE journal of solid-state circuits, 2008, 43(4):919–928. (0) |
[19] | MIELKE N, MARQUART T, WU N, et al. Bit error rate in NAND flash memories[C]//Reliability Physics Symposium, IEEE International. Phoenix, Az, USA, IEEE, 2008. (0) |
[20] | ADNAN ASLAM C, GUAN Y L, KUI C. Read and write voltage signal optimization for multi-level-cell (MLC) NAND flash memory[J]. IEEE transactions on communications, 2016, 64(4): 1613-1623. DOI:10.1109/TCOMM.2016.2533498 (0) |