SSD可靠性分析前传之NAND闪存可靠性概览

简介: 按照剧情发展的规律,在进入正片之前都会有前传来交代事件的背景,所以在介绍SSD可靠性之前,咱们也先来个前传哈。



第一幕:NAND基础背景
NAND根据cell包含bit的数目分为SLC、MLC、TLC,
NAND里面所有cell的状态采用VT分布图展示,如下图,
SLC包含1 bit,有1,0两个状态,
MLC包含2 bit,有11,10,00,01四个状态,
TLC包含3 bit,有111,011,001,101,100,000,010,110八个状态。

注:横坐标:NAND cell的阈值电压Vt;  纵坐标:每一个Vt对应的bit数目。


介绍完NAND cell的状态,再来show一下NAND的基本操作(以最简单的SLC为例)。


读(Read):

如上图所示,这是对单一cell进行read的基本操作。 在控制栅极(CG, 也是WL)加上0V的电压,源极(Source)端加上0V以及漏极(Drain, 也是BL)加上1V,然后通过源极与漏极之间电流Icell的大小来判断cell的状态(0或者1)。


A点的状态代表存在Icell,所以Cell处于“开态”(ON),称为Erased;


B点的状态代表不存在Icell或者Icell很小且可忽略,所以Cell处于“关态”(OFF),称为Programmed。


如果对NAND cell阵列操作,原理图如下:


如果Cell C处于Erased, 对应BL的Sense电路会感应到有电流;

在需要read的target Page的WL上面加一个R1(一个较小的电压),其他WL的加VpassR, BL方向加1V,



如果Cell C处于Programmed, 对应BL的Sense电路不会感应到有电流。

写(Program):

在控制栅CG加上一个高压20V,基底接0V, 由于电场的存在以及隧穿效应,电子会被俘获在浮栅FG,也就完成了单个Cell的Program操作。


Program之后cell的状态为“0”。



擦除(Erase):
在控制栅CG接0V,基底加上一个高压20V, 由于电场的存在以及隧穿效应,电子逃离浮栅FG,也就完成了单个Cell的Erase操作。


Erase之后cell的状态为“1”。


需要注意的是,Read、Program都是以Page为最小基本操作单位,而Erase以Block为最小基本操作单位。


第二幕:NAND可靠性概览
对NAND可靠性影响很大的效应主要有:Read disturb,Program disturb,P/E Endurance以及Data Retention。


1. Read Disturb
我们在第一幕介绍Read操作的时候提到,Read过程中,需要在Non-Target WL上加一个VpassR, 如果对一个Block里面的Page连续Read很多次的话,就相当于在某一WL一直会有VpassR的Stress。


如下图,Cell D 由于VpassR长时间的Stress, 会引起浮栅FG弱的电子注入,因为Read disturb主要影响Erased状态的cell,进而表现在Vt图中L0向右飘移。


在SSD中,针对Read disturb有优化措施,就是尽量避免持续读同一Block的Page,如果在进行了长时间的读操作之后,会加入Erase/Program操作,减小Read stress。

提一下SILC效应:
SILC(Stress Induced Leakage Current)是压力诱导漏电流,由于Stress的影响,在Gate氧化层做成缺陷,缺陷会俘获电子。


2. Program Disturb
在Program时,需要在WL加一个高压20V左右,由于高压的存在会造成其他BL上电子隧穿进入浮栅,再加上由于缺陷引起漏电以及GIDL效应的存在,最后的结果就是Program cell周围的Cell的Vt会向右偏移。


这里简单说一下GIDL效应:
GIDL(gated-induce drain leakage) 是指栅诱导漏极泄漏电流,当栅漏交叠区处栅漏电压 VDG很大时,交叠区界面附近硅中电子在价带和导带之间发生带带隧穿形成电流,我们把这种电流称之为 GIDL 隧穿电流。随着栅氧化层越来越薄,GIDL 隧穿电流急剧增加。

3. P/E Endurance
评判一颗NAND的寿命,P/E cycle是一个关键参数。在不断写入与擦除的过程中,器件的氧化层会慢慢变薄,电子的隧穿效应会更容易,最后造成的现象就是VT向右偏移。


4. Data Retention
在NAND经历一段高温测试之后,电子会逃离浮栅,造成Vt向左偏移。在加上SILC的影响,Vt出现偏移。


【结论】

总结一下这几种效应的VT分布图,如下:



相关文章
|
编解码 算法 数据可视化
数字信号处理(DSP):原理、应用与代码实现
数字信号处理(DSP):原理、应用与代码实现
|
芯片 SoC
FinFET工作原理、结构和应用特性介绍
FinFET的全称是Fin Field-Effect Transistor。它是一种新型互补金属氧化物半导体晶体管。FinFET 的名称是基于晶体管和鳍片形状的相似性。
14688 0
FinFET工作原理、结构和应用特性介绍
|
JavaScript Java 应用服务中间件
使用 Docker 高效搭建本地开发环境(详细教程)
使用 Docker 高效搭建本地开发环境(详细教程)
16056 0
使用 Docker 高效搭建本地开发环境(详细教程)
|
监控 调度 开发工具
IO神器blktrace使用介绍
## 前言 1. blktrace的作者正是block io的maintainer,开发此工具,可以更好的追踪IO的过程。 2. blktrace 结合btt可以统计一个IO是在调度队列停留的时间长,还是在硬件上消耗的时间长,利用这个工具可以协助分析和优化问题。 ## blktrace的原理 一个I/O请求的处理过程,可以梳理为这样一张简单的图: ![](http://image
20197 0
|
资源调度 算法 Linux
Linux进程/线程的调度机制介绍:详细解析Linux系统中进程/线程的调度优先级规则
Linux进程/线程的调度机制介绍:详细解析Linux系统中进程/线程的调度优先级规则
3443 0
|
Python
Numpy学习笔记(五):np.concatenate函数和np.append函数用于数组拼接
NumPy库中的`np.concatenate`和`np.append`函数,它们分别用于沿指定轴拼接多个数组以及在指定轴上追加数组元素。
662 0
Numpy学习笔记(五):np.concatenate函数和np.append函数用于数组拼接
|
机器学习/深度学习 分布式计算 供应链
Hadoop在特定行业中的应用实例
【8月更文第28天】Hadoop是一个强大的分布式计算框架,能够处理大规模数据集。由于其高可扩展性和成本效益,Hadoop被广泛应用于多个行业中,如金融、医疗保健和零售等。本文将探讨Hadoop在这些行业的具体应用场景和一些成功案例。
518 0
|
编解码 算法 固态存储
SSD ECC纠错“天网”之LDPC码
在之前的文章中有提到过,SSD FTL层有一个很重要的功能就是ECC纠错(ECC, Error Correction Code)。
|
存储 缓存 固态存储
芯片级解密YMTC NAND Xtacking 3.0技术
YMTC NAND Xtacking 3.0被视为2022年最具颠覆性的技术之一。针对第一个使用NAND Xtacking 3.0的产品,TechInsights团队购买了512GB和1TB容量的TiPlus7100 SSD,并进行了详细的芯片分析,我们一起来看看,有没有惊喜的发现?
|
数据采集 存储 分布式计算
数据爆炸时代的挑战与机遇:大规模数据处理的技术突破
在当今数字化时代,数据量呈现爆炸式增长,给传统数据处理带来了巨大挑战。本文将探讨大规模数据处理所面临的问题,并介绍一些技术突破,如分布式计算、云计算和人工智能,以应对这一挑战。通过有效处理和分析海量数据,我们将迎来更多的机遇和创新。