迅维网

标题: 手机闪存和固态硬盘为什么擦除多了会损坏? [打印本页]

作者: Jefflq    时间: 2018-9-4 13:44
标题: 手机闪存和固态硬盘为什么擦除多了会损坏?
  在我们闪存系列文章中多次提到,构成手机存储和固态硬盘SSD的基本存储单元的NAND闪存,它的寿命是由擦除次数来决定的。准确的来说,是由Program/Erase(P/E)次数来决定的。有很多朋友留言问其中的具体原因,今天我就专门撰文来详细讨论一下其中的原理。本文专注于NAND Flash,有些原理有可能同样适用于NOR Flash,但本文并不关心。如果不做特殊说明,下文闪存(Flash)指代NAND Flash。


闪存的工作原理

  闪存价格节节攀升,让三星大赚特赚。其实它的基本原理在1980年代之后基本就没有变化过。它的构成和场效应管(MOSFET)十分类似:


  它由:源极(Source)、漏极(Drain)、浮动栅(Float Gate)和控制栅(Control Gate)组成。相对场效应管的单栅极结构,闪存是双栅极结构。浮动栅是由氮化物夹在二氧化硅材料(Insulator)之间构成。我们的写操作(Program)是这样:



  在控制栅加正电压,将电子(带负电)吸入浮动栅。在此后,由于浮动栅上下的二氧化硅材料并不导电,这些电子被囚禁(Trap)在浮动栅之中,出不去了。这样无论今后控制栅电压有否,这个状态都会保持下去,所以闪存可以掉电保存数据。注意写操作完毕后,该闪存单元存储的是0,后面我们将会介绍为什么。
我们的擦除操作(Erase)刚好相反:



  在源极加正电压利用浮空栅与漏极之间的隧道效应,将注入到浮空栅的负电荷吸引到源极,排空浮动栅的电子。这时读取的状态是1。那为什么有电子是0,没电子是1呢?以为读取的时候,需要给控制栅加一个低的读取电压,对于被Program过的闪存单元来说,被囚禁的电子可以抵消该读取电压,造成源极和漏极之间是处于被关闭的状态:



  如果是被擦除过的就刚好相反,源极和漏极在控制栅的低电压作用下,处于导通状态:



  也就是说通过向控制栅加读取电压,判断漏极-源极之间是否处于导通状态来读取闪存单元的状态,如果被Program过的,就是处于关闭OFF状态,为0;而被Erase过的,就是处于导通状态ON,为1。


  理论上来说,闪存可以每个单元来单独擦除和编程。但是为了节省成本,实际上作用在控制栅上的擦除电压是整个块(Block)连接在一起的,这就是为什么擦除要以块为单位了。

为什么闪存会损坏

  每次电子在包围浮动栅的二氧化硅上进进出出,都会造成它的老化:



  长此以往,浮动栅就不能很好的锁住电子,电子会流失造成漏极-源极之间是否处于导通状态错误,进而数据读取错误。闪存控制器通过校验发现错误后会将其标为不可用,而在OP空间找一块来替代,并在FTL表里改变对应关系。




  而 SLC(Single-Level Cell)的省钱版:MLC(Multi-Level Cell) 和 TLC(Triple-Level Cell) 的引入让这个问题更加严重。原来SLC只有ON/OFF两种状态,现在的TLC要有8种状态:



  主要靠精确控制浮动栅里面的电子来实现,老化会让这种控制很容易出错。这样就是为什么MLC和TLC相比SLC,生命周期更短的原因:



  注意图中的P/E Cycle。

结论

  闪存单元的损坏是个不可逆的过程,坏了就是坏了,人死不能复生,节哀顺变吧。几个坏块不会产生多大问题,OP空间完全可以罩得住,问题是只要产生坏块,慢慢坏块会越来越多,写放大也会越来越严重,慢慢的就会产生读写错误,或者速度严重下降。这时我们一定要考虑换块SSD了。


  也许仅仅依靠抽象的判断速度对普通用户并不是很好掌握。就像买西瓜都要拍一下,实际上估计很多人都是做个样子而已。真正科学判断SSD的状态要靠SMART(Self-Monitoring Analysis and Reporting Technology)等工具,我们可以借助SSD厂家提供的工具来查看SSD的健康情况。



作者: BIGBON    时间: 2018-9-4 13:44
看着好艰难
作者: akmpswv    时间: 2018-9-4 13:44
现在mlc都是珍惜了,tlc是主流,qlc都马上登场了。
作者: rt45rti    时间: 2018-9-4 13:44
所以我就看了结论
作者: ZmAXxoJF    时间: 2018-9-4 13:44
64层tlc和原来的mlc比呢?三丧出的tlc传说寿命增加N倍呢
作者: aquila00    时间: 2018-9-4 13:44
(:з っ )っ MLC都快没了
作者: jansie1314    时间: 2018-9-4 13:44

作者: shichg123    时间: 2018-9-4 13:44
结论“闪存单元的损坏是个不可逆的过程,坏了就是坏了,人死不能复生,节哀顺变吧。”这句出现的太早了……


应该是坏一两个单元还有ECC来挽救,然后坏的多了,快超出ECC纠错限制的时候才标坏块+数据转移。
作者: qinger0912    时间: 2018-9-4 13:44
还有……Cache的坑啥时候填啊?
作者: darny    时间: 2018-9-4 13:44
哇,你又来催稿了。
作者: yPfiXGyC    时间: 2018-9-4 13:44
啊,我是代表广大用户,例行催一下……??
作者: spiegesq    时间: 2018-9-4 13:44
照理来说3D TLC成本应该大幅下降才对,可售价并没有降低,反而是直接替代了同价位的MLC。论起来还是两三年前的MLC固态硬盘性价比最高,我有一句mmp我一定要讲。
作者: 给我闪    时间: 2018-9-4 13:44
因为三星的(其他厂商不知道)3D TLC闪存,中间的隔层不是二氧化硅了,而是改进材料,因此物理寿命增加很多
作者: dsadsadsasd    时间: 2018-9-4 13:44
把TLC卖两三年前MLC的价格就说不过去了,固态硬盘一个遵守摩尔定律的东西比机械硬盘降价还慢
作者: 快乐.每一天    时间: 2018-9-4 13:44
2D转3D 良率不好 所以flash很紧张 缺货 自然涨价 现在良率提升了 价格在往下走
作者: YiHYcCgb    时间: 2018-9-4 13:44
提示: 作者被禁止或删除 内容自动屏蔽
作者: wang34796882    时间: 2018-9-4 16:35
涨见识了
作者: lihangu    时间: 2018-9-4 16:44
虽然没看懂,但是感觉很厉害的样子,还是感谢楼主
作者: yangzheqq    时间: 2018-9-4 17:49
真的涨知识了                多些这种文章
作者: yghlgh    时间: 2018-9-4 18:58
还是两三年前的MLC固态硬盘性价比最高




欢迎光临 迅维网 (https://www.chinafix.com/) Powered by Discuz! X3.4