当我们谈企业级SSD时,是在谈什么?一些简单的文字,希望帮助读者了解什么是企业级SSD,以及和消费级SSD的区别。
当拿到一块企业级SSD时,我们通常可以看到如下特性:
1、接口类型:如2.5"SATA,AIC,U.2,U.3,EDSFF(E3.S,E3.L,E1.S....)
2.5"SATA,最高速率6Gbps
AIC接口,支持PCIe
最常见的U.2接口,当前服务器中大量使用的
EDSFF接口,包括E1.S/L,E3.S/L,有多种不同厚度
不同EDSFF接口类型尺寸,所能支持的最大功率以及PCIe lanes数量
图片来源:Forward Insights,不同接口SSD市场份额发展趋势
2、读写性能:128K顺序读和写,4K随机读和写IOPS,QoS,IOPS性能一致性,latency
和消费级SSD不同的是,企业级SSD追求的不是瞬间可以达到的最高性能,因为企业级SSD的应用场景需要满足7*24小时长时间工作,所以它对长时间稳定状态下的性能有所要求。
主要性能参数包括:
a)128K顺序读、写throughput;
b)4K随机读、写IOPS;
c)4K随机读、写IOPS一致性;
d)4K随机读、写latency;
e)4K随机读、写QoS;
3、NAND类型:TLC,QLC,XL-Flash等等
NAND类型,目前最常见的是TLC,每个cell可以表达3bits 0/1数据,即2的3次方,8种组合。QLC介质每个cell可以表达4bits 0/1数据,即16种组合,相比TLC翻倍。为了降低成本,目前QLC也已经开始在企业级市场中看到,Solidigm目前布局较早。
另外,在NAND介质材料方面,目前有两种不同的技术路线,分别是floating gate和charge trap,翻译为中文即多晶硅导体浮栅、电荷陷阱。floating gate技术以Intel和Micron为代表,该技术在读写干扰、数据保持方面理论上更好,但是Micron在2020年宣布放弃floating gate,全线产品转移到charge trap,所以该技术路线仅剩Intel一家。
charge trap技术应用较为广泛,除了2020年后的Micron,还有大厂三星、铠侠、SK海力士,以及国内的长江存储等。charge trap的特点是,cell间距可以更小,支持更高密度的产品,同时P/E磨损程度更低带来更高的寿命,另外写电压更低降低了program写入功耗,节能符合新时代发展需要。
4、耐用性:企业级一般用DWPD作为单位,比如1 DWPD,表示质保期内每天可写入等同于单盘容量的数据量
耐用性和SSD和NAND、固件的写入放大系数等息息相关,对企业级SSD根据耐用性可分为读密集型、混合型、写密集型,对应的DWPD分别为1、3、>3。
除了可以用DWPD作为单位,TBW也可以用来表达,尤其在消费级SSD更为常见。TBW和DWPD之间有一个换算的公式:
DWPD x 盘容量 x 365天 x 质保期 = TBW
关于耐用性的定义,感兴趣的读者可以参考一下JESD218B和JESD219A,分别定义了耐用性的测试方法和测试用的负载。
5、MTBF:一般是200万小时,或更高的250万小时,产品的可靠性指标,值越大代表产品越可靠
直接上图,最经典的浴盆曲线,在生产领域可谓无人不知。产品生命早期和后期都是故障率比较高的阶段,因此在实际操作中,产品出厂前会进行老化测试,让产品度过早期故障较高阶段,同时筛选掉不良产品,以保证送到客户手中的产品已经处于浴盆底部阶段。
MTBF,中文为平均故障间隔时间,用来表达处于浴盆底部阶段产品的可靠性,那如果按照字面意思理解,200万小时的MTBF,是否意味着平均200万小时才会出现一次故障?200万小时等于228年,228年才出现故障的话,估计地球上的企业要倒闭一半。
列一下MTBF的计算公式,或许可以帮助读者理解:
1000pcs x 1000 hours x 2 failures =200万小时
我相信聪明的读者已经可以理解,公式中1000pcs为测试样品数量,1000 hours为测试耗时,2 failures表示测试过程中发现了2次功能缺陷。所以MTBF是一个针对大样本量的测试,而不是个体产品的可靠性指标。
另外,MTBF和年失效率λ之间还有个换算的公式,感兴趣的读者可以研究一下:首先将MTBF的单位换算为年,即228年,然后取MTBF的倒数,即1/228年可得到年失效率,为0.44%。
从公式也可以看出,200万小时MTBF也不可能真的花200万小时去测试,正常来说会提高测试样品数量来缩短测试时间,同时根据阿伦纽斯加速方程来施加高温环境来进一步缩短测试时间。
对任何一家企业级SSD厂商而言,MTBF的测试都是相当重要且成本高昂的。
6、数据保护能力:LDPC纠错算法,Die间RAID,端到端数据路径保护等,企业级SSD不可或缺的数据保护措施
对于SSD数据保护能力的要求,对于企业级用户来说,要高于对性能的追求。如果说SSD高性能是0,那么数据保护就是它前面的1,在没有数据保护的基础上再高的性能也是徒劳。
因为SSD基于NAND设计,而NAND介质本身受限于生产工艺和硅材料纯度,本身会存在固有的错误率,一般用RBER(Raw bit error rate)表示,这是NAND介质在未经过固件的ECC或者LDPC纠错算法下的原始位错误率。另外,我们用UBER(Uncorrectable bit error rate)来表示经过ECC或LDPC纠错算法处理后仍然无法正确读取的位错误率。
上图是新的NAND介质经过大量写入擦除后,它的读电压阈值已经开始偏移,出现了很多的重叠,而这些重叠部分,如果没有纠错算法加持,固件是没办法判断它所表达的信息的。
上图可以看出,根据JESD218A(现在最新的是218B)规范要求,在企业级和消费级SSD之间,数据保持和UBER的要求都是存在区别的。
Die间RAID是一种冗余保护技术,这部分内容较多,不在这里单独展开了,有兴趣后面再写一篇单独介绍RAID。
端到端数据路径保护,这在企业级SSD的产品介绍中几乎常常看到,但消费级的产品却鲜有提及,原因在于不同用户对于数据保护能力的要求不同。
端到端指的是Host到NAND整个路径,而端到端数据路径保护强调的是,在整个数据路径传输过程中,都可以做到数据保护和纠错。比如Host到SSD主控之间,PCIe本身有CRC循环冗余校验算法,NAND和NAND之间有RAID冗余保护,以及LDPC纠错算法。这部分内容也非常之多,如果读者有兴趣,后续再单独展开讨论。
最后提一下,企业级SSD刚需--PLP(掉电保护),该技术主要为了保护在SSD掉电时,防止那些保存在DRAM中还未来得及写入NAND介质的内容丢失。主要原理是在供电电源芯片前端加入一颗掉电保护芯片,当然也有电源芯片本身已经集成了掉电保护功能,掉电保护芯片会有一个GPIO连接到供电端,一旦发现供电端电压跌落到一个阈值,启动掉电保护流程,通知主控芯片,同时从挂载的电容上抽取电荷供系统继续工作一小段时间,一般是10ms到30ms。
因为篇幅有限,本文只是简单介绍了一下企业级SSD的基本特性,关于企业级SSD和消费级SSD的区别,其实在生产和测试环节也有很多明显的不同,有时间再展开去讨论。