天天看点

Nand Flash学习笔记3-Read Disturb

Read Disturb,读干扰,主要是读页操作,会对同一个块内其它页造成干扰,随着Flash制程的提高、一个物理块页数更多、和单个Cell存储的信息更多(TLC、QLC),此问题会变得更加突出。严重的情况下会导致读回来的数据出错,导致数据丢失。 在SLC Flash上,对一个块读1KK次才会出现读干扰问题。到了MLC Flash上,100K次读甚至20K读就可以会出现读干扰问题。比如说,在手机上单曲循环一首歌,放十几天发现歌曲数据损坏,都比较难以接受。 读干扰原理: Flash的基本架构和基本操作原理,可以参考之前的文章。 Nand Flash相关文章

Nand Flash学习笔记3-Read Disturb
Nand Flash学习笔记3-Read Disturb

图0 Flash内部架构 当读某个页时,整个块上WL和BL增加的电压如图0(a)。可以看到,在块内其它页上,栅极也需要增加电压Vpass使得cell处于导通。Vpass(6V左右)小于编程电压Vprog(10V),但是也会产生轻微的FN隧穿效应,称为弱编程(Weak Programmimg)。

Nand Flash学习笔记3-Read Disturb
Nand Flash学习笔记3-Read Disturb

公式0 隧穿效应和电场强度的关系 Eox:添加在隧穿氧化层的电场强度,取决于栅极的电压和浮栅里的电荷数 Jfn:FN隧穿效应的电流密度。 由公式0可以看到,隧穿效应的大小和Eox为 超线性 相关。由于Vpass较于Vprog小很多,所以造成的影响是很细微的,但是对块内的页都会影响。

Nand Flash学习笔记3-Read Disturb
Nand Flash学习笔记3-Read Disturb

图1 Flash Cell内部结构 图1,tono和tox分别为两个氧化层的厚度,Vthi是衬底的电势,Eox计算公式和Eox、JFN关系如下,可以看到Eox和(Vg-Vth)近似线性关系。

Nand Flash学习笔记3-Read Disturb
Nand Flash学习笔记3-Read Disturb

公式1 Eox电场强度的关系

Nand Flash学习笔记3-Read Disturb
Nand Flash学习笔记3-Read Disturb

图2 Eox和隧穿效应电流密度JFN的关系 。

读干扰特性: 下面是以2Y-nm MLC Flash作为实验对象。

Nand Flash学习笔记3-Read Disturb
Nand Flash学习笔记3-Read Disturb

图 3 MLC Flash块编程后,块内Vth分布情况

Nand Flash学习笔记3-Read Disturb
Nand Flash学习笔记3-Read Disturb

图 4 多次读操作后,块内Vth分布情况 图4表示重复对块一个页重复读0、250K、500K和1KK次,整个块内的电压阈值分布情况。图3-B表示上述实验,处于ER状态的Cell电压阈值分布情况。可以看到,读干扰对低阈值电压影响更大,那是因为,Vth越低,Eox越大,隧穿效应会更加明显。

Nand Flash学习笔记3-Read Disturb
Nand Flash学习笔记3-Read Disturb

图 5 不同读次数后,块内不同状态Vth的平均值 图5可以看到随着读次数的增加,由于读干扰的影响,ER状态的Cell平均阈值电压增加最快,P1和P2状态其次。P3状态由于阈值电压较高,读干扰的影响低于Data Retention(数据保持)影响,所以平均阈值电压降低。

Nand Flash学习笔记3-Read Disturb
Nand Flash学习笔记3-Read Disturb

      图 6 不同读次数后,块内不同状态Vth的标准差 图6,可以看到P1、P2、P3状态的阈值分布离散程度更高,这是因为读干扰和Data Retention共同影响。P0的离散程度更小,是因为实验无法检测到大部分的ER状态的电压阈值,所以结果不准确。

读干扰对RBER影响

Nand Flash学习笔记3-Read Disturb
Nand Flash学习笔记3-Read Disturb

图7 RBER、读干扰和PECS的关系 由于PECS越大,会有电子滞留在隧穿氧化层中,导致绝缘性下降,导致在同样电场强度下,隧穿效应更强。因此,PECS越大,读干扰影响越明显。

Nand Flash学习笔记3-Read Disturb
Nand Flash学习笔记3-Read Disturb

图8 读干扰前、后阈值电压分布 由图8可以看到,即使使用最优读电压Va,也会把ER状态部分Cell识别为P1状态的,或把部分P1状态Cell识别为ER状态,从而产生错误。如果出错的数超过ECC纠错阈值,那么数据就无法正常读回。

解决方案:

主要是需要Nand Flash主控采取方法来避免读干扰的影响。

1. 记录块的读次数,超过阈值的时候,把数据转移。

2. 周期性检测块的某些页,检测到有异常,把数据转移。

3. 动态调整Vpass来减少读干扰造成的影响(如果Vpass可调的话)

4. 使用更强的纠错算法,如LDPC

5. 把重复读到的数据重映射到SLC块或者其它地方 6. 你们来补充..