nandflash你不知道的那些事(一):存在的损耗

谈谈闪存的一些特点,或者说它作为存储介质面临的挑战。

闪存块(Block)具有一定的寿命,不是长生不老的。前面提到,当一个闪存块接近或者超出其最大擦写次数时,可能导致存储单元的永久性损伤,不能再使用。随着闪存工艺不断向前,这个擦写次数也变得越来越小。

图1-1 闪存损坏状态

在闪存当中的存储单元中,先天就有一些是坏掉的,或者说不稳定的。并且随着闪存的不断使用,坏的存储单元越来越多。所以,用户写入到闪存的数据,必须有ECC纠错码保护,这样即使其中的一些比特发生反转,读取的时候也能通过ECC纠正过来。一旦出错的比特超过纠错能力范围,数据就丢失,对这样的闪存块,我们应该废弃不再使用。

第一个问题是闪存先天有坏块,也就是说有出厂坏块。并且,用户在使用的时候,也会新添坏块,所以用户在使用闪存的时候,必须有坏块管理机制。

第二个问题是读干扰(Read Disturb)。什么意思?从闪存读取原理来看,当你读取一个闪存页(Page)的时候,闪存块当中未被选取的闪存页控制极都会加一个正电压,以保证未被选中的MOS管是导通的。这样问题就来了,频繁的在一个MOS管控制极加正电压,就可能导致电子被吸进浮栅极形成轻微的写,从而最终导致比特翻转。但是,这个不是永久性损伤,重新擦除闪存块还能正常使用。注意的是,读干扰影响的是同一个闪存块中的其它闪存页,而非读取的闪存页本身。

图1-2 读干扰原理

第三个问题是写干扰(Program Disturb)。除了读干扰会导致比特翻转,写干扰也会导致比特翻转。还是要回到闪存内部的写原理上来。

图1-3 写干扰原理

我们写一个闪存页的时候,数据是0和1混合的。由于对擦除过的闪存块,其所有的存储单元初始值就是1,所以写的时候,只有写0的时候才真正需要写。如图3-48所示,方框里的单元是写0,需要写的,圆圈里的单元的代表写1,并不需要写操作。我们这里把方框里的单元称之为Programmed Cells,圆圈里的单元叫Stressed Cells。写某个闪存页的时候,我们是在其 WordLine的控制极加一个正电压(图3-48是20V)。对于Programmed Cells所在的String,它是接地的;不需要写的单元所在的String,它是接一正电压(图3-48为10V)。这样最终产生的后果是,Stressed Cell也会被轻微写。与读干扰不同的是,写干扰影响的不仅是同一个闪存块当中的其它闪存页,自身闪存页也受影响。相同的是,都是不期望的轻微写导致比特翻转,都非永久性损伤,经擦除后,闪存块还能再次使用。

第四个问题是存储单元之间的耦合影响(Cell-to-Cell interference)。前面提到,浮栅极闪存存储电荷的是导体,因此存储单元之间存在耦合电容,导致存储单元内的电荷发生意外变化,最终导致数据读取错误;

第五个问题是电荷泄漏。存储在闪存存储单元的电荷,如果长期不使用,会发生电荷泄漏。同样是非永久性损伤,擦除后闪存块还能使用。

第六个问题是EC(erase count),后面会提到,擦写次数多了会使浮栅极下面的绝缘层(Tunnel氧化物)变薄,最终永久性损伤

上面说的这些,是所有闪存面临的问题,包括SLC,MLC和TLC,这些问题的处理方法,在后面的FTL章节会进行介绍。不同商家的闪存,不同制成的闪存,以及2D/3D闪存,还有其特有的问题,用户在使用时需要用固件克服或者缓解这些问题。

寿命

我们大家生活在人间,祖祖辈辈和周围观察到的生灵告诉我们一个道理:所有的人和生物都不能像神仙一样长生不老。其实不只是生物,所有的存储器件都是有寿命的。

图1-4 SLC电压分布(来源:Inside NAND Flash Memory)

我们再来看图3-49这张0和1的分布图,横轴是电压,纵轴是存储单元的数量。0的区域表示被写过的那些单元电压分布区间,1的区域是被擦过的那些单元电压分布区间。所以说,如果要正确地读到数据,0和1这两个区间要尽量分割清楚,保证它们的主峰有足够远的距离。

除了0和1靠近之外,阈值电压也不能太偏。回忆一下读数据的原理。

图1-5 读操作电压示例

要读的单元栅极加 0V电压,这时擦过的晶体管阈值电压是-Vt,导通,沟道有电流,Bitline端的传感器能够检测到,读到“1”。而经过写的晶体管阈值电压是 Vt,不导通,沟道电流很小,读为“0”。随着擦写次数的增加,会发生三种故障:

l 擦过的晶体管阈值电压变大,从-Vt向0V靠近,这样读的时候沟道电流变小,传感器检测不到,读出错。

l 写过的晶体管阈值电压变小,从 Vt向0V靠近,有可能会被误检测为擦过的状态。

l 写过的晶体管阈值电压变大(如图3-50,>5V,即使控制极加5V电压,它也是截止的),有可能在其他的单元读的时候,把整个Bitline都给关了,一个死苍蝇害了一锅粥。

浮栅晶体管对浮栅极下面的绝缘层(Tunnel氧化物)很敏感,该氧化物厚度变薄(制程不断减小导致的)或者老化(Degradation,擦写次数多了)对浮栅极里面的电荷影响大。我们之前介绍了Charge Trap晶体管,其实随着擦写次数增多,浮栅晶体管的氧化层渐渐老化,产生不少Charge Trap,这些陷阱会吃掉电子。导致写之后,进入浮栅的电子数量会减少,最终的结局就是0和1两个区间不断靠近。

如图,上面是写后的阈值电压,下面是擦除后的阈值电压,很明显,擦除后的阈值电压在擦很多次之后显著变高。所以,一般擦除之后会做校验,方法是把所有的Wordline设为0V,再去检测每个Bitline的电流。如果某个Bitline电流是0,就意味着有个单元的擦除阈值电压接近0V,导致晶体管关断。所以这个闪存块应该标为坏块。

图1-6 阈值电压变化图(来源:Inside NAND Flash Memory)

了解了闪存存在的问题之后,我们再来看看固态硬盘设计实践中怎么解决这个问题。

(0)

相关推荐

  • 王中林院士团队《Nano Energy》:一种新型非易失性存储器!

    编辑推荐:本文报道了一种新颖的二硫化钼非易失性存储器,它结合纳米石墨烯作为浮栅,在不施加额外栅电压的情况下,通过机械和光学激励实现多级存储状态触发.该器件为未来集传感和存储于一体的人机交互系统的发展开 ...

  • MOSFET的寄生电容是如何影响其开关速度的?

    我们应该都清楚,MOSFET 的栅极和漏源之间都是介质层,因此栅源和栅漏之间必然存在一个寄生电容CGS 和CGD,沟道未形成时,漏源之间也有一个寄生电容CDS,所以考虑寄生电容时,MOSFET 的等效 ...

  • 组织人才盘点,你不知道的那些事?

    随着今年市场环境的不景气和萎缩,很多企业都在勒紧裤腰子过日子,企业都在对自己组织的人才数量和质量拿出来晒晒顺便清理,同时很多HR同行也在做人才盘点,但对人才盘点的目的意义.过程方法.结果分析和优化建议 ...

  • 你不知道的屁事:有的动物一屁定生死,有的动物永远憋不出一个屁

    ​ 周末的一天,小明和他的女友坐在沙发上逗猫.忽然之间,抱着猫咪的女友闻到了有一股浓烈的臭味.她下意识跟猫咪对视了一眼,发现它也一脸嫌弃的表情.她转过头用眼神指责了一下小明. 秒懂的小明,无辜地解释道 ...

  • Asp.Net Core 中间件应用实践中你不知道的那些事

    一.概述 这篇文章主要分享Endpoint 终结点路由的中间件的应用场景及实践案例,不讲述其工作原理,如果需要了解工作原理的同学, 可以点击查看以下两篇解读文章: Asp.Net Core EndPo ...

  • 茶马古道,你不知道的那些事

    -侠客君语- 茶马古道 因茶马互市.以茶易马的 古老交易而得名 茶马古道,源于中国历史上的"茶马互市". 居住于西北部高寒地区的人民有"宁可三日无食,不可一日无茶&quo ...

  • 北迁野象你不知道的那些事:进村后“行侠仗义”,脾气火爆狂扁小猪

    6月10日,央视新闻聚焦北迁野象"短鼻家族",梳理了它们北迁的全部行程,并介绍了它们的最新动态. 448天走过500多公里 "北漂"只是北迁野象的代名词,它们真 ...

  • [千古帝王]《秦始皇--你不知道的那些事...

    [原创]文/詹义清 秦始皇(前259年1月27日-前210年),中国历史上著名的政治家.战略家.改革家.思想家:在中华民族悠久的历史长河中,首位完成华夏大一统的伟大人物.下面就从三个方面来阐述我个人对 ...

  • 关于微波炉,你不知道的那些事

    这让许多人心生疑问,微波炉不就是热个饭菜吗,而且口感还一般,据说还有辐射--为何在海外市场如此受青睐?据业内人士介绍,西方人的使用习惯与我们有很大不同,微波炉的用途也非常广泛,本文就来扒一扒关于微波炉 ...

  • 潮州最牛的牛——鉎牛,你不知道的那些事!

    广济桥上的鉎牛是什么时候有的? 两只鉎牛一只溜,溜去哪里了? 现在的鉎牛还是原来的那只吗? 为什么淡浮院里也有一只鉎牛? 你肯定还不知道,它头顶上还有四个字! 今天,为你解密! 01.  诞  生  ...

  • 关于offer你不知道的一些事(下)

    关于offer你不知道的一些事(下) 作者:杨小鱼/大胶布 Q3.offer没约定违约金,怎么办? 谁说offer必须约定违约金? 约定违约金并不是offer 的常态.公司用人火急火燎,生怕一个不留神 ...