热修复技术使SSD可写入/擦除过亿次

NAND闪存存储有限的写入耐用性是该技术明显的缺陷,仅次于该技术高企的单位容量成本。认为SSD(固态驱动器)将在1万次写入/擦除循环后失效的想法让存储管理员们误入歧途。现在,根据IEEE’s Spectrum的一篇文章,台湾旺宏电子的工程师已经发现了一种方式让闪存写入/擦除循环次数延长到超过1亿次。

旺宏电子的小组披露了如何利用热量来修复闪存芯片的绝缘层——闪存芯片绝缘层会在每次擦除操作后逐步退化。研究人员已经知道这种方法是有效的;此前的尝试将整个芯片加热到250摄氏度(482华氏度)并持续几个小时。旺宏电子进一步利用他们原来给相变记忆体构建的材料构建了极微小的加热器,将闪存页面小组加热到500摄氏度。旺宏电子还发现加热后的温度加快的擦除,这原来是材料科学家们所没有预料到的。(在你试图在披萨烤箱内重新恢复旧的SSD或CF卡之前,记住你的销售商跟你说SSD组件会在大约185摄氏度的时候融化)

旺宏电子没有说什么产品使用该技术。

这项技术当然可以被有些人想用来在TLC(三层单元)或甚至QLC(四层单元,每个单元存储4比特的闪存)SSD上通过内置加热器在闪存芯片50次或100次写入/擦除循环后重设耐用性。不过,我不认为闪存优先的写入耐用性是很大的问题。实际上,我们的管理流程需要注意的是SSD的损耗。

许多人认为SSD就只是可以工作和不可以工作,1万次写入/擦除循环后就好像一个故障的硬盘驱动器。这不是真的。SSD有时候也会偶然无预警故障(就好像其他存储媒介),而这些故障的发生并不是因为写入耐用性达到极限。

每个SSD的闪存控制器会监视每个页面的擦写频率,并尽可能地将损耗平均分布在闪存内。阵列控制器和主机操作系统可以使用SMART(自监视、分析和汇报技术)来检查SSD剩余的生命周期,同时汇报SSD额定寿命的剩余率。如果客户接受,阵列厂商将停止使用昂贵的SLC(单层单元)SSD——虽然这种SSD的写入速度快——然后开始使用MLC闪存,这种闪存的寿命可以达到五年。MLC闪存将满足阵列厂商大约80%客户的需求,其他需要SLC的客户可以在旧SSD将达到额定生命周期终点60天之前将新的SSD插入系统。

当然,SSD内的闪存不会在达到1万零1次擦除次数后就自我摧毁,控制器厂商至少会允许让SSD厂商在达到擦除极限后将设备切换到只读模式。1万次循环只是闪存制造商不能保证闪存芯片还能正常工作的点。虽然闪存绝缘层的退化,受影响的闪存单元不再能够正确地承载数据。在1万次循环后——没人知道到底是1万零317次还是3万次——在给定页面中会有太多的受损单元以至于控制器无法纠正,而控制器将标志出这个页面是损坏的。如果太多的页面损坏,SSD将没有任何空间来写入新的数据。不过这个过程是渐进的,是可监控的,并不是伴随数据丢失的致命故障。

我们应该像对待汽车传动带一样对待SSD。每行驶6万英里我们要更换一次传动带。在快行驶到6万英里的时候,我们就应该计划更换它了。