如果说“TLC”和“NVMe”是今年固态硬盘的热门话题,如果回到三年以前提,当时的固态硬盘热门话题可能会是“掉速”。

掉速就是硬盘在工作时实际速度低于预期的一种现象,引发掉速的原因有很多。最早的硬盘掉速或许源于西部数据绿盘,由于盘片质量差在读取过程中会有一些突发的卡顿出现,读取速度突然降低。

ssd掉盘了但是BIOS还能看到 ssd掉盘元凶_ssd掉盘了但是BIOS还能看到

当然今天要讨论的是固态硬盘的掉速问题。最为古老的固态硬盘掉速始于2009年以前,当时Trim指令尚未出现,而闪存在写入之前又必须先进行擦除,擦除需要的额外时间导致写入变慢:

ssd掉盘了但是BIOS还能看到 ssd掉盘元凶_固态硬盘用软件测试掉速严重_02

幸运的是2009年之后Windows 7面市,首次增加了对Trim指令的支持,苹果的MacOS系统也在10.10.4之后对所有SSD开放Trim指令支持。Trim指令的作用是在删除文件的时候通知SSD哪些位置的数据已经无效,请在垃圾回收时进行回收。有了Trim指令之后SSD就不必等到覆盖写入指令下达才匆忙进行标记,而是能提前对闪存上存储的数据进行整理。

ssd掉盘了但是BIOS还能看到 ssd掉盘元凶_闪存_03

幸运的是,当前市售的所有固态硬盘都已经支持Trim指令。可以通过在命令行提示符中输入fsutil behavior QUERY DisableDeleteNotify来查看Trim功能是否开启,正常情况下应返回0。

ssd掉盘了但是BIOS还能看到 ssd掉盘元凶_数据_04

不过操作系统支持是一方面,要看SSD实际是否执行了Trim指令还需要用到一个名为Trimchecker的小工具:运行一次之后间隔30秒再度运行,正常应出现一串0,表示Trim已经成功执行,被删除的数据已经被固态硬盘从闪存当中清空。

ssd掉盘了但是BIOS还能看到 ssd掉盘元凶_ssd掉盘了但是BIOS还能看到_05

虽然固态硬盘们都已经支持Trim了,不过依然会有一些特例型号会发生掉速现象,比如SandForce主控、JMF667H主控,他们由于垃圾回收算法比较懒惰,倾向于保守,在收到Trim指令后垃圾回收工作进行的不彻底,长期使用后依然会出现速度下跌的掉速现象。不过好消息是这两个主控也都已经退出历史舞台,除了金士顿V300依然在使用SandForce 2281主控之外,其他市售固态硬盘都已经不再应用SandForce或JMF667H主控,大家遇到掉速踩雷的机会小了一些……

ssd掉盘了但是BIOS还能看到 ssd掉盘元凶_ssd掉盘了但是BIOS还能看到_06

Trim指令普及了、个别懒惰的主控也退役了,按理说大家应该不会遇到掉速了。不过在这个时候TLC闪存走上了历史舞台,三星840等TLC闪存固态硬盘在2014年开始连续爆出读取掉速问题。与之前的写入掉速相比,TLC闪存的读取掉速更为隐蔽,因为掉速的是盘上的旧文件,通过AS SSD Benchmark等测速软件测出的新文件速度是正常的。

ssd掉盘了但是BIOS还能看到 ssd掉盘元凶_固态硬盘_07

为何在MLC时代很少见的读取掉速会出现在TLC闪存身上呢?为了在每个单元中保存额外的一个bit数据,TLC需要有8个电荷位来区分其中存储的数据,而原来的MLC仅需4个电荷等级划分。

ssd掉盘了但是BIOS还能看到 ssd掉盘元凶_闪存_08

同样空间内划分出更多的数据位,意味着发生偏移出错的概率大大提高。闪存通过保存电荷来存储数据,而随着断电时间的延长,闪存当中的电荷位就可能发生改变,严重的情况下即可导致数据出错。

ssd掉盘了但是BIOS还能看到 ssd掉盘元凶_数据_09

三星为了避免数据出错采取的是加强纠错的方式,一次读不出就依靠多次读取尝试,这样在读取盘内旧数据的时候读取速度就可能发生严重下滑,TLC掉速因此而生。而较晚将TLC使用在SSD当中的东芝等厂商汲取了三星的教训,通过主控随时监测闪存单元中电荷位的变化,在必要的时候进行数据搬运来化解掉速危机。

国内的PCEVA论坛曾对东芝Q300的马甲款——东芝饥饿鲨TR150进行过长时间的耐久度及读取掉速测试,在1900PE磨损的情况下,通过连续24小时高温烘烤模拟SSD长期断电保存的情形,在重新开机后盘上数据读取是这个样子的:因为长期断电,已经有一些文件读取掉速了

但只要闲置几分钟之后,再次测试会发现读取速度得到了自动的恢复:说明这款固态硬盘具备预防掉速的特性,如果是正常使用,在有掉速预兆的情况下SSD会后台搬运数据保持读取速度不掉落。

由此可见读取掉速并非TLC固态硬盘的通病,虽然内部搬运数据会损耗一些闪存耐久度,但这对在耐久度测试中达到3000PE的东芝15nm TLC闪存来说应当不是问题。

除了上面提到的这些可能引发掉速的原因,另一个未来不可忽视的固态硬盘掉速问题将是PCIe NVMe SSD的过热限速,很多三星SM951及950Pro用户已经深受此中困扰,除了加强散热之外尚无有效解决方案。