PCEVA,PC绝对领域,探寻真正的电脑知识
  • 内容展现
  • 最新评论
为什么闪存品质很关键?它影响的不仅是SSD写入寿命
2018-10-31 16:54| 发布者: Essence| 查看: 1684| 评论: 23|原作者: Essence
摘要: 今天我们来谈谈闪存品质如何影响固态硬盘,今天的讨论将不再局限于写入寿命或可以擦写多少次这样简单的层面。过去我们经常谈原片和白片。这种非此即彼的二分法比较容易被大家理解,原片的高品质被所有 ... ...
今天我们来谈谈闪存品质如何影响固态硬盘,今天的讨论将不再局限于写入寿命或可以擦写多少次这样简单的层面。

闪存的品质

过去我们经常谈原片和白片。这种非此即彼的二分法比较容易被大家理解,原片的高品质被所有人认同,而对于白片的争论就比较多。其实白片和原片一样,都有等级之分。


并不是所有白片都是原厂筛剩下的次品,有些情况下原厂可能会直接出售晶圆。这些晶圆在出厂时就包含了一张map,将晶圆上每个晶粒的情况做出了标记。


第三方的封测厂根据Map摘取芯片进行封装,闪存芯片的分级筛选还需要结合主控一起进行,最终制造出符合特定使用条件的合格闪存颗粒。


跟晶圆制造阶段是相比,芯片封装相对简单的工艺流程,相关技术已经被很多第三方企业掌握,还能根据需要实现MCP多芯片封装。下图是江波龙将Marvell 88NV1160主控与美光3D TLC闪存融合封装的单颗粒NVMe固态硬盘——FORESEE P900。


闪存原厂数量毕竟有限,采购晶圆后摘取合格晶粒(Good Die)自行封装,可以发挥封装阶段的成本优势,起到了丰富市场选择的作用,同时也促使固态硬盘价格能够覆盖到各种人群的偏好范围。


针尖上跳舞:一步都不允许出错

虽然公版方案使得制造固态硬盘的入门门槛降低了需多,但固态硬盘对闪存品质的要求并没有降低。由于闪存自身的工作特点,固态硬盘主控对闪存的使用受到种种制约。从最简单的来说,闪存必须先擦除才能进行写入,所以固态硬盘中没有真正的覆盖写入,所有针对原有数据的修改都将被重定向到新的闪存位置上。由FTL管理逻辑地址与闪存物理地址的对应关系。


这就像酒店房间管理,下午2点之前就到达酒店办理入住,这时给你预留的房间还没有打扫,所以前台给你安排新的房间,并在系统中做了记录。


原有数据因为发生变化而成为无效的“垃圾”内容,但主控却不能命令闪存直接将这个存储单元擦除掉——闪存的最小擦除单位Block块要比最小写入单位Page页大数千倍。随着已使用和已变成垃圾的位置越来越多,主控所能辗转腾挪的空间变得越来越小,所以必须要有垃圾回收来整理出足够数量的、可用于直接写入的空白块。


在读取原来block中有效块、写入新位置、擦除原来Block的垃圾回收过程中,不能有一丝一毫的错误发生。


机械盘异常断电丢失的可能仅仅是未保存的文件,而固态硬盘遇到异常断电或运行异常,丢失的还可能包括到恰好跟正写入的数据处于同个page或block的老数据——即便那些老数据早就正常写入进去,依然有可能在这次异常中被破坏。

通过筛选的闪存颗粒在制成SSD之后,对于成品还需要进行高温老化测试。下图是浦科特介绍的老化测试。使用Flexstar专用设备能够对SSD进行温度、电源循环、数据读写、极限电压等方面的测试,验证SSD在磨损均衡、数据错误率、组件失效率、写入耐久与数据保持时间等方面的表现。


并非万能的LDPC纠错

固态硬盘对可靠性的要求极高,闪存写入和读出数据的过程,都有纠错引擎的参与来确保数据无误。LDPC纠错近几年才应用都固态硬盘当中,被称为拯救TLC闪存的功臣。借此机会简单聊聊大家眼中神秘的LDPC。

LDPC是一种迭代算法。如果你不明白迭代的含义,推荐看一部名为“明日边缘”的电影,它讲述的是男主有机会一次次回到前一天,通过反复尝试各种可能,试图救下必将死在明天的女主。小编觉得这部2014年的电影很有意思,即便不是为了理解迭代的含义,如果有没看过的朋友也可以回去看一看。


好了扯远了,言归正传,LDPC是通过迭代的方式反复尝试解码,在这个过程中通过软数据(Soft Data,SD)的帮助一步步接近正确的读取结果。


这里又出现一个叫“软数据“的名词。所谓软数据,可以理解成瞎子摸象——手感。得到的信息量很大,但并不直观,需要经过进一步综合判断才能分析出结果。


闪存单元内存储的是电子,根据电子的多寡来表达不同的数据。现在还做不到直接数闪存单元中电子的数目,只能通过位线上的电流来感知和判断,并将它们转换为0和1的二进制数据。下图是最简单的SLC闪存模型:


SLC闪存的一个单元只需要表达0或1两种状态,到了MLC之后要表达的状态数量就增加到了4个(00,01,10,11),TLC时代更是增加到8个状态。后边还要16种状态的QLC闪存。没有LDPC这种强大的纠错算法是万万不行的。


LDPC纠错在软纠错阶段可以通过不同的读取参数去获得关于闪存的更多数据,根据自己的经验去尝试判读,如果ECC验证不通过,就换个“姿势”进行更多的尝试。这里判读所依据的经验是“Log-likelihood ratio(LLR)”,中文名叫对数似然比。


对数似然比是一个经验丰富的老司机,能够仅凭一个模糊的画面就能把车牌号猜个八九不离十。当然经验再丰富也有翻车的时候,不要紧,LDPC纠错可以继续迭代,接着尝试,直到得出正确答案,或者因迭代次数达到限制而纠错失败。


SSD的闪存品质不好会容易翻车:坏就坏在对数似然比这个老司机身上。对数似然比与闪存的特性有关,可以想象只开美系车的老司机,让他猜日本的车牌号是很难猜对的。

对数似然比这些经验性的信息,是在主控及固件的设计阶段就预设好的,需要根据闪存的不同进行适配。这是一个经验活儿。天下闪存制造商虽然只有寥寥数家,但即便是同一家闪存厂的产品,不同品质等级的脾气秉性也很难料。这里边的问题就复杂了,我就放张龙生九子的图片吧。


现在我们知道,闪存的品质不是简单的PE次数,它会影响到LDPC纠错的效果,反过来影响到闪存能够用多久。即便神如LDPC,如果闪存品质不佳,也可能因偏离固件的设计而失控。

闪存出错的累加效应

通常的情况下,每一笔写入和读取的数据都会经过纠错引擎的检查。

但某些时候为了更好的性能也会有无主控纠错引擎参与的数据迁移发生,譬如说使用到Copy Back(闪迪称为On Chip Copy)的磨损均衡或者SLC缓存释放过程。

因为Copy Back的数据迁移过程只局限在芯片内部,不需要主控的过多参与,所以释放了主控压力,提升了SSD的效能表现,但也因此失去了检查错误的机会,有可能导致闪存错误的逐渐累加,直到下次主控要求读取时才发现已经超出了纠错能力范围。

为了兼顾性能与数据安全,一些固态硬盘会采用适时切换的方式,在闪存较新的时候采用Copy Back模式提升性能表现,当闪存磨损达到一定程度后改回传统模式保护数据安全。PCEVA之前在饥饿鲨TR150固态硬盘的耐久度测试中就发现,该固态硬盘在主机写入量超过标定TBW之后,就会关闭Copy Back模式。


如果闪存品质不确定,没有办法找到一个合理的均衡点,就有可能无法发挥出闪存的全部寿命潜力。

总结:

因为NAND块擦除的特性,必须要有很多复杂的算法与纠错辅助来保证运行时的效能与稳定性。NAND闪存虽然是非易失性存储器,但在记录数据的过程中依然充满风险,除了用户直接请求的写入之外,SSD内部的磨损均衡、垃圾回收以及基于数据保持目的的刷新都会产生背景写入。SSD作为一个精密的整体,主控的先进纠错技术只是一个辅助,关键还是要看闪存品质以及固件的成熟度。

打个比方,师太亲身经历的事情:朋友开了个烤串店,大家都去捧场,但越吃越咸,老板解释说:肉不新鲜,多放点盐遮遮味……大家以为就是个玩笑没当真,但回家全都拉了肚子……劣质的NAND就像这个不新鲜的肉串,虽然有各种算法与纠错辅助能一定程度遮盖不新鲜的味道,但你吃下去还是要拉肚子的。

以上是小编多年测试SSD后的心得。水平有限,文中若有错误欢迎大牛指正。那么结尾部分再说些大白话吧,目的是让没有专业知识的人也都能看懂:

我们还能得到几个延伸的结论:
1、SSD跑分其实很扯淡,跑的不过是缓存在极短时间内的爆发力,无法真实体现SSD在实际工作中的状态。这也是AS SSD的测试结果不靠谱的原因之一。

2、家用固态硬盘没事别瞎折腾,一边删除一边写入的事尽量少干,如果写入时候有卡顿,千万不要着急的按重启,多等会,因为块擦除延迟是比较高的。想骗保的同学看到这里会有所领悟吧,不过这仅针对使用劣质NAND的SSD,优质NAND+健壮度高的固件,这么做也很难搞坏。

3、如果非要买低端的SSD,也尽量选有芯片sorting能力的工厂出的产品。已知大陆工厂有这个能力的包括江波龙,台湾的华泰电子、群联等也给很多品牌提供封测服务。我们把这个能力当做一个最基本的及格线,凡是及格线之下的都是不推荐的,比如那些使用拆板、降级颗粒不做sorting却成天自称一线原厂颗粒的品牌……


收藏 邀请
0
本文版权归 PCEVA,PC绝对领域,探寻真正的电脑知识 原作者所有 转载请注明出处
发表评论

最新评论

引用 一梦 2018-10-31 17:15
比如七彩虹
引用 fjzjk1 2018-10-31 19:07
原来ldpc是迭代啊
引用 Vayne 2018-10-31 19:19
所以说群联的自封片还不如江波龙是么
引用 sss668800 2018-10-31 20:08
本帖最后由 sss668800 于 2018-10-31 20:12 编辑

tb上面那些个定制slc的ssd或者u盘的,总是吹自己slc多牛,几万PE不拉不拉的。。。。

我总觉得不靠谱,他们刷的固件都是公版吧?
引用 哆啦A梦 2018-10-31 20:33
还是原厂的靠谱,白片看厂家了
引用 Vayne 2018-10-31 20:35
sss668800 发表于 2018-10-31 20:08
tb上面那些个定制slc的ssd或者u盘的,总是吹自己slc多牛,几万PE不拉不拉的。。。。

我总觉得不靠谱,他们 ...

没啥东西,都是慧荣公版
引用 SF2281 2018-10-31 21:53
金士顿自封的不错
引用 l8427608 2018-10-31 22:19
白片我觉得就金士顿靠谱
引用 Cogae 2018-10-31 22:23
第三方运气成分比较大了
引用 石头 2018-10-31 22:35
Vayne 发表于 2018-10-31 19:19
所以说群联的自封片还不如江波龙是么

江波龙是大陆的,群联在台湾,它给金士顿供货的敢不筛么?……没写太多,你想太多……

引用 redyan9985 2018-11-1 08:59
sss668800 发表于 2018-10-31 20:08
tb上面那些个定制slc的ssd或者u盘的,总是吹自己slc多牛,几万PE不拉不拉的。。。。

我总觉得不靠谱,他们 ...

这个要看来源了,比如英特尔三星原厂的固态拆下来的颗粒,应该还是比较可靠的。
引用 石头 2018-11-1 09:23
redyan9985 发表于 2018-11-1 08:59
这个要看来源了,比如英特尔三星原厂的固态拆下来的颗粒,应该还是比较可靠的。
...

拆板之前是挺可靠的,拆下来就先损耗一部分,然后再贴到SMI公版上,固件也一点没有做匹配,能可靠?

引用 Apprentice-Mark 2018-11-1 09:33
redyan9985 发表于 2018-11-1 08:59
这个要看来源了,比如英特尔三星原厂的固态拆下来的颗粒,应该还是比较可靠的。
...

拆下来的颗粒,你知道他的寿命如何么?
拆机的东西 风险太大
引用 yhhuada66 2018-11-1 10:50
看了文章感觉想稳定还是得相信原片,自己和帮别人买过的固态硬盘也确实基本都是颗粒厂的(intel,镁光,闪迪,没买过三星),除了我的第一块浦科特m3 64g,一次帮亲戚买的金士顿uv400,还有目前用的联想512g(marvell1093+东芝15nm 2d tlc),不过这三块也是经过了实践检验,很不错的
引用 随风飘落 2018-11-1 16:13
redyan9985 发表于 2018-11-1 08:59
这个要看来源了,比如英特尔三星原厂的固态拆下来的颗粒,应该还是比较可靠的。
...

也是拼人品的, 万一拆机前已经被折磨的不成人样了呢?
引用 McLaren 2018-11-1 16:19
看了第二条, 嗯学会了

那些垃圾颗粒的几次就挂了吧
引用 jeffrey913 2018-11-1 21:29
技术贴必须顶一顶啊
引用 440BX 2018-11-1 22:09
学到了,写的很好用的
引用 七月流火 2018-11-1 22:59
yhhuada66 发表于 2018-11-1 10:50
看了文章感觉想稳定还是得相信原片,自己和帮别人买过的固态硬盘也确实基本都是颗粒厂的(intel,镁光,闪 ...

原片什么的其实不重要,只要是一线牌子的ssd,品质都还是可以保证的。作为消费者来说,各种打磨假标横行,三线牌子就算标称原片, 其实一样不靠谱

查看全部评论(23)

热门评论
    热门评论
      返回顶部