NAND Flash的底层结构文档格式.docx

上传人:b****6 文档编号:18981128 上传时间:2023-01-02 格式:DOCX 页数:10 大小:662.90KB
下载 相关 举报
NAND Flash的底层结构文档格式.docx_第1页
第1页 / 共10页
NAND Flash的底层结构文档格式.docx_第2页
第2页 / 共10页
NAND Flash的底层结构文档格式.docx_第3页
第3页 / 共10页
NAND Flash的底层结构文档格式.docx_第4页
第4页 / 共10页
NAND Flash的底层结构文档格式.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

NAND Flash的底层结构文档格式.docx

《NAND Flash的底层结构文档格式.docx》由会员分享,可在线阅读,更多相关《NAND Flash的底层结构文档格式.docx(10页珍藏版)》请在冰豆网上搜索。

NAND Flash的底层结构文档格式.docx

2.平衡磨损算法

3.透过坏块管理技术确保数据的完整性。

4.使用错误检测和校正技术

5.写入放大

只有满足了这些条件,才能得到一款理想中的完美的固态硬盘。

-----------------------------------------------------------------------

Flash全名叫做FlashMemory,属于非易失性存储设备(Non-volatileMemoryDevice),与此相对应的是易失性存储设备(VolatileMemoryDevice)。

关于什么是非易失性/易失性,从名字中就可以看出,非易失性就是不容易丢失,数据存储在这类设备中,即使断电了,也不会丢失,这类设备,除了Flash,还有其他比较常见的如硬盘,ROM等,与此相对的,易失性就是断电了,数据就丢失了,比如大家常用的内存,不论是以前的SDRAM,DDRSDRAM,还是现在的DDR2,DDR3等,都是断电后,数据就没了。

Flash的内部存储是金属-氧化层-半导体-场效晶体管(MOSFET),里面有个悬浮门(FloatingGate),是真正存储数据的单元。

下载(38.65KB)

2010-12-1305:

32

数据在Flash内存单元中是以电荷(electricalcharge)形式存储的。

存储电荷的多少,取决于图中的控制门(Controlgate)所被施加的电压,其控制了是向存储单元中冲入电荷还是使其释放电荷。

而数据的表示,以所存储的电荷的电压是否超过一个特定的阈值Vth来表示。

1.对于NANDFlash的写入(编程),就是控制ControlGate去充电(对ControlGate加压),使得悬浮门存储的电荷够多,超过阈值Vth,就表示0。

2.对于NANDFlash的擦除(Erase),就是对悬浮门放电,低于阀值Vth,就表示1。

NANDFlash的架构:

下载(52.08KB)

50

如上图所示,这是一个8Gb50nm的SLC颗粒内部架构。

每个page有33,792个单元,每个单元代表1bit(SLC),所以每个page就是4096Byte+128Byte(SA)。

每个Block有64个page组成,所以每个Block容量为262,114Byte+8192Byte(SA)

page是NANDFlash上最小的读/写单位(一个page上的单元共享一根字符线Wordline),块是最小的擦除单位(。

不同厂牌不同型号颗粒有不同的page和block大小。

下图是个8Gb50nm的SLC颗粒。

下载(42.61KB)

2010-12-1307:

12

4KB的页尺寸,256KB的块尺寸。

图中4096字节用于存储数据,另外128字节用来做管理和ECC用。

SLC和MLC区别:

SLC主要针对军工,企业级应用,有着高速写入,低出错率,长耐久度特性。

MLC主要针对消费级应用,有着2倍容量于SLC,低成本,适合USB闪盘,手机,数码相机等储存卡。

如今也被用于消费级固态硬盘上。

下载(12.64KB)

24

由上图可以看到,MLC和SLC虽然使用相同的电压值,但是电压之间的阀值被分成了4份,直接影响了性能和稳定性。

主要有下面几点:

1.相邻的存储电荷的悬浮门间会互相干扰,造成悬浮门里的电荷不稳定出现bit错误,MLC由于阀值相比SLC更接近,造成出错几率更大。

2.MLC读写性能降低,写入更是降低50%以上,因为需要确认充入电荷的量,这需要更精确的处理。

SLC只有0和1,也就是有和没有,而MLC会有00,01,10,114个状态,在充入电荷后还要去判断是哪个状态,自然就慢了。

3.因为上面说的,造成额外的读写压力,所以功耗明显增大。

4.因为额外的读写压力,造成闪存的写入耐久度和数据保存期受到影响。

eMLC和eSLC的耐久度提升是用牺牲了数据保存期和增加读写时间换来的。

(也就是性能会更差点)

-------------------------------------------------------------------

挑战1:

需要先擦除才能写入。

下载(17.48KB)

2010-12-1308:

14

当今的NANDFlash可以读/写一个page,但是必须以block大小擦除。

擦除操作就是让块中所有的bit变为1,从一个干净的“已擦除”状态的block重新开始。

当里面的页变为0后,只有擦除整个块才能让这个页变为1。

为了尽量减少擦除的次数,成熟的块管理技术必不可少。

挑战2:

读/写干扰。

NANDFlash的电荷非常不稳定,在读/写中很容易对邻近的单元造成干扰,干扰后会让附近单元的电荷脱离实际的逻辑数值,造成bit出错,因为阀值接近的关系,MLC相对SLC来说更容易受到干扰。

下载(40.18KB)

26

读取干扰

下载(40.17KB)

写入干扰

读取干扰指的是在读取某个page时,邻近的bit会受到升高电压的干扰,造成bit出错。

写入干扰指的是,某个page在写入时,邻近bit的电压也被升高了,造成bit出错。

相对写入干扰来说,读取干扰明显小的多。

在读/写干扰中,可能造成某些bit被改变,结果造成数据出错。

所以需要在返回数据给主机前,用ECC/EDC算法来纠正这些bit的错误。

随着闪存工艺的提升,同样大小的晶片上被封装入更多的单元,造成干扰越来越厉害,所以需要更强大的ECC/EDC来纠正bit。

挑战3:

数据保存期限

数据保存期指的是当完全断电后,数据能在NANDFlash里保存多久。

NAND单元必须保证一个稳定的电压水平,来保证数据是有效的。

典型的SLC一般为10年。

电荷从悬浮门里漏出,我们叫做电子迁移,当随着时间的流逝,电荷泄漏到一定程度,改变了NAND单元里悬浮门的电压对应的逻辑值,这样就造成bit出错。

下载(29.04KB)

53

数据保存期会随着擦写次数的增加而明显降低,而且从上面的原理中看出,MLC的数据保存期明显会比SLC少。

(更容易被干扰)

挑战4:

坏块

NANDFlash里有2种坏块类型:

1,出厂坏块:

由于为了保证产量和控制成本,出厂的NANDFlash某些就会有坏块。

厂商保证SLC出厂坏块低于2%,MLC出厂坏块低于5%。

2,积累坏块:

在多次的写入/擦除循环中,某些NAND单元的电荷电压被永久性的改变了,那就意味着包含这个NAND单元不可用了。

所以固态硬盘需要有坏块管理才能使用,主控制器用坏块表来映射出厂坏块和积累坏块到坏块区内,出厂时,颗粒的第一个块Block0厂商会保证是可用的(至少ECC后可用)。

挑战5:

擦写次数限制

造成NANDFlash有擦写次数限制的主要有2个因素:

1,电荷被困在氧化层,不能进入悬浮门。

2,氧化层结构被破坏。

下载(18.33KB)

2010-12-1309:

22

如图,一旦氧化层损坏到达一定程度,造成电荷越来越难在P-substrate和悬浮门之间交流。

电荷被困在氧化层造成悬浮门中的电压到不了阀值,所以说这个NAND单元就要被放入坏块区了。

当前主流SLC的P/E为10万次,50nmMLC为1万次,3xnm的MLC为5000次。

到了这个数字并不意味着就不能用了,这个只是代表平均寿命,也就是说到了这个次数后,坏块就会开始大量增加了。

随着工艺提升,ECC的要求越来越高,50nm的SLC颗粒,三星规定1bitECC的就够了,而50nmMLC要4bitECC,到了3xnm要求达到24bitECC。

-----------------------------------------

附;

ECC

影响NANDFlash稳定性和耐久度的一个主要因素就是ECC能力,目前最常用的三种算法是:

1.Reed-Solomon。

2.Hamming。

3.BCH(Bose,Ray-Chaudhuri,Hocquenghem)

不管何种ECC算法,何种主控,检测错误的方式是相同的:

下载(30.22KB)

59

1.每当一个page写入NANDFlash,数据会通过ECC引擎,创造独特的ECC签名。

2.数据和对应的ECC签名存都存放在NANDFlash里,数据放在数据区,ECC签名放在SA区。

3.当需要读取数据时,数据和ECC签名一起被送往主控制器,此时新的ECC签名被生成。

4.此时主控把2个签名对照,如果签名相同,说明数据没有错误,数据就会被送往主机。

如果签名不同,数据就会先放在主控里,而不是直接送往主机。

某些主控会把改正后的数据再次写回闪存,另一些则不会,因为谁也不知道下次读取会不会再出错。

ECC的能力直接关系到NANDFlash的耐久度,数据保存期。

当NANDFlash的P/E数到了之后,错误数会越来越多,ECC弱的直接就报坏块并标记退休,如果ECC能力足够强,就能挖掘出Flash所有潜力

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1