QLC,全盘模拟SLC与公版固件的“罪恶三角贸易”

QLC SSD能用吗?在第一代产品已经进入市场并且评测已经不少的今天,很多人应该都已经有了自己的看法
的确,HDD级别的缓外写入速度与只能说够用的寿命令人担忧,但是从大部分评测的结论中来看,似乎也还算能用,再加上一些对SSD某些技术的误解,有些人或许已经做好了投入QLC怀抱的准备
但是事实上,由于一些技术特性的存在,QLC远没有评测结论中那么好
要知道QLC到底能不能用,首先要了解QLC技术
QLC,全称quadra-level-cell,又可以称为4-bit MLC,这里要纠正一个错误,我们常说的MLC实际代表2-bit MLC,因为MLC的全称为Multi-level-cell,多层单元闪存,包含2-bit MLC,3-bit MLC(TLC),4-bit MLC(QLC)...
4-bit MLC意为在一个浮栅晶体管中可以存储4bit数据(注意单位bit,字符,一般用于计算容量的单位是字节也就是byte,例如GB就是吉字节,1byte是8bit)

4bit就是四位二进制数,而四位二进制数也就是0000-1111代表的是十进制中的0-15共16个数,所以在QLC固态中的一个浮栅晶体管需要有16个电位来存储数据,使得QLC相比TLC的8电位又复杂了一个层次,这也是QLC速度慢,寿命短的根源
速度慢这一点比较好理解,越是复杂,越难以搞明白晶体管内到底有多少电子。而寿命短的原因在于每一次擦写,都会有一部分电子再也无法回到晶体管内,而QLC由于控制电压多,对电位的偏移更为敏感。(具体可以看看回形针的BV1n4411G7s5这个视频的1min10s到3min30s)
解决QLC SSD速度问题的方法是SLC cache技术即模拟SLC缓存
SLC cache就是再大文件顺序写入时把QLC模拟为SLC,只让每一个晶体管存下1bit的数据,等空闲时再释放缓存,把这一部分转化为QLC存储。
这样能大大提高顺序写入的速度,也是为什么使用NVME协议的M.2 TLC甚至QLC SSD的顺序写入速度都可以达到2000MB/s甚至3000MB/s的
一般的TLC和QLC固态硬盘都会拥有一定大小的固定SLC cache,例如我自己的西部数据SN750 500G的SLC缓存大小是6GB,缓存内顺序写入速度为2600MB/s。
部分硬盘还有随着可用容量的变化而浮动的动态SLC cache,例如intel P660 2T的缓存大小为24-280GB,也就是说空盘状态下的SLC缓存为280GB,随着硬盘被各种学习资料与娱乐工具填充,SLC缓存会逐渐减小,接近满盘时只剩下24GB
标题中所说的全盘模拟SLC的意思就是把硬盘中的所有可用空间全部作为SLC缓存
QLC硬盘使用SLC缓存时的顺序写入速度的确够看(intel 660P 2T的缓内顺序读写速度为1800MB/s),但是缓外大多不超过100MB/s(被机械硬盘吊打的水平),但是在一般使用场景下,数十GB级别的大文件拷贝并不常见,所以要想体验到这令人发狂的速度的确不太容易
而关于寿命,一直有一部分人这样算帐:QLC 颗粒的PE有1000次之多,虽然较TLC的3000次少了一个级别,但是一个1T的盘都有1000T的TBW(总写入量),这块盘可以用10000天。
这种说法有一个致命的问题,那就是没有考虑到大容量SLC缓存带来的大量额外PE
回顾上文中介绍的SLC缓存技术,我们会发现,当浮栅晶体管运行在模拟SLC状态时,同一大小的文件会占用QLC模式下四倍数量的晶体管,而当我们释放缓存时,这些被用作缓存的晶体管全部被擦除了一遍,同时还要再把这些数据写进QLC模式下的另一部分晶体管
也就是说在使用SLC cache时造成的PE是QLC直写时的5倍,如果所有的数据在写入时都经过SLC cache,那么一块1T QLC SSD的寿命会骤减至200TBW
这个结论正好对应了SLC cache较大的intel 660P 2T,它的保修正好是400TBW

但是这里有一个例外,三星860QVO,一款SATA QLC SSD,它的1T版保修360TBW
貌似这已经超出了QLC的理论寿命,但是注意这是SATA,极速低于600MB/s,也就是它的主控完全有能力同时向SLC cache中写入和完成QLC直写,有可能部分数据不经过SLC cache直接写入QLC中
同时三星还有自己的RAPID技术,该技术类似AMD的StoreMI,即动态地拿出部分内存作为SSD的缓存,这极大地减少了不大不小(1G左右)文件的写入对于SLC cache的使用,进一步提升了寿命
三星本身作为唯一一家从闪存颗粒到主控到固件算法全部自研的厂商,其主控的调度能力和固件对于写入放大的控制也较为优秀,但这并不是所有SSD厂商都能做到的
QLC SSD的真正问题并不在于这些为大家所品质在TLC时代也为大家公认的原厂固态硬盘,而是那些在TLC时代就经常出幺蛾子的使用自封装颗粒的白片固态
即使在TLC时代,这些厂商也有过用比原厂固态低不了多少的价格卖出缓外200-300MB/s甚至100MB/s速度的硬盘,在QLC时代,谁又能保证不会大量出现缓外20MB/s全靠着SLC cache续命
而本身这些标准放低的白片固态颗粒的寿命又要大打折扣,又有全盘模拟SLC五倍的磨损速度,同时这些硬盘必然会采用低端主控加公版固件这样既没有内存做缓存的,减少SLC cache使用的技术,也没有识别是否启用SLC cache减少磨损的算法,1T版本的写入量能不能撑到50TBW都是个问题
再加上某些厂商甚至会把QLC硬盘的容量下放到256GB这个级别,例如intel 的660P就有256GB版本,保修50TBW,而如果是白片固态,或许是10TBW,也可能更低
VMOD说过一句话“所有的白片固态都是垃圾”,在TLC时代我并不完全认同。的确,一些入门级产品的质量令人堪忧,但是大部分主流消费级产品都能满足绝大部分人的日常使用
但是在QLC时代,这真的不一定。虽然不知道128/144层堆栈的下一代NAND颗粒会带来多大的提升,但是就目前的96层颗粒的能力来说,想要做出一款“能用”级别的产品,真的不再像TLC时代一样,用着正规自封装厂的白片颗粒,低端主控,公版固件就够了
最终结论,对于非原厂的QLC SSD,最多可以作为仓储盘,一定不要购买低容量版本作为系统/游戏盘,因为如果经常删除旧游戏,安装新游戏,寿命很可能在一两年内就耗尽。而作为仓储盘,也尽量减少写入量,否则大概率会成为数据毁灭者,资料粉碎机,一朝戒*不是梦
即使是原厂颗粒的QLC SSD,也尽量不要作为系统盘,因为本身QLC的4K读写性能就更弱,在使用体验上不如TLC
总之,QLC技术的确给SSD带来了更大的容量,但是它既没有办法给我们比HDD更低的单位容量价格,同时也因寿命问题没法真正作为主力硬盘使用。或许高品质的QLC SSD最大的用途还是取代一部分低端TLC,让原厂固态在低端市场也具有一定的竞争力