为什么固态硬盘会有写入量的限制?是谁决定了闪存的寿命?在查阅了东芝在SNIA上题为《NAND Controller Reliability Challenges》的演讲资料后,我发现了其中的秘密。
数据有着保质期:Data Retention
闪存使用Floating Gate浮栅结构存储电子来表达数据,位于浮栅下方的隧道氧化层会阻止浮栅中的电子从中逃逸,从而实现断电后数据的长期存储。
不过随着时间的增长,浮栅中的电子还是会有一小部分从中逃出来,导致阈值电压出现漂移。这个过程通常十分缓慢,对于新的闪存单元来说需要持续十几年才会导致出错。但如果闪存在高温的环境下储存,会加速电子流失的速度。
闪存老了也会健忘:
人老了容易健忘,闪存在严重磨损之后不仅变得健忘,还可能记错事情。电子在高电压的作用下穿透氧化隧道层,并在这个过程中给氧化隧道层产生磨损,使其保持电子的能力变低。
当电子不能被浮栅结构良好保持时闪存就会出错,数据出错率不断增高,直至超过主控纠错引擎所能处理的上限,固态硬盘也就寿终正寝了。
写入费耐久,读取也干扰:Read Disturb
过去很多朋友认为闪存只有写入限制,读取则是无限量的。实际上反复读取也会产生干扰。
闪存单元在刷新重写之前大约可以反复读取数千次,而不会产生不可纠正的错误。
忽冷忽热也不行:Cross temperature
温度同样会对阈值电压产生影响。如果在温度T1写入的数据在与之相差较大的T2温度时读取,可能会产生读取错误。
2D平面TLC闪存的允许读写温差在40度左右,而3D TLC闪存可以做到70度左右,允许更宽广的使用温度范围。
为了应对诸多技术挑战,东芝BiCS闪存使用Charge Trap电荷陷阱结构取代了过去在平面闪存时代常用的浮动栅极结构,保持电子的能力更强,使用寿命更久。
最早于2007年提出的BiCS三维闪存堆叠技术不仅提供了更高的存储密度和存储容量,还降低了存储单元之间的耦合性,提高闪存可靠度。
BiCS闪存还能支持被成为Full Sequence的一次编程模式,提高3D TLC闪存的写入速度。
除了入门SATA型号TR200之外,东芝RC100以及新近推出的RD500/RC500 NVMe固态硬盘均采用了BiCS闪存,提供更可靠更耐用的存储体验。