PCEVA定制版SSD是如何来的?
前段时间建兴给我送测了S920 512GB,实话说我刚开始还真没把这块盘当回事,但是当我按照常规流程拆盘的时候一看PCB后立马傻眼了,我对于他们提到的逆天价格心中耿耿于怀,所以测试结束并发布在论坛时我故意红字标粗只对我手里测试的盘负责,同时又让石头和建兴再次确认,终于得知他们把送测的产品搞错了(他们竟然自己都一直不知道),原本这个价格定位的是智速系列。(不带掉电保护,普通MLC颗粒,相当于建兴OEM的L9S系列或者浦科特M6S系列)后来我发现智速系列产品背后的标签也是S920,再加上之前坛友提到的各种奇怪的S920标贴,相信绝大部分消费者是分不清状况的,因此我花了整晚的时间,根据自己的经验并整理写了建兴SSD型号分析贴。这个帖子让建兴方面重视并认识到内部型号混乱的问题,并答应配合我们单独出一款定制版的SSD,保证用料和发给我测试的这款一样。做为PCEVA首款官方定制版SSD,实话说我自己也感觉责任重大,不过做为摸过无数SSD的用户之一,我要求很直白,企业级的品质,消费级的价格,推荐给懂行的和真正需要品质的用户。(我会告诉你我手里好多SSD连我自己都不敢用么,容量不小但是卖也不好卖,送友人也不敢送,数据定时炸弹。)
完整掉电保护
很多用户会发现,随着闪存工艺的提高,越来越多的SSD厂商对自己的SSD加上了掉电保护。例如Intel 320系列,美光M500系列等,但是这类保护都只是为了保证盘不变砖,不保缓存内实际用户数据,所以说他们均不是完整的掉电保护。我说个真相,因为新工艺颗粒写入速度慢,大容量型号SSD的缓存又大,而且厂商为了突出峰值IOPS做宣传更是压榨数据缓存效率,所以才需要加入这部分电容保护,原本的低用户和缓存容量的SLC颗粒SSD大部分情况下是不需要加这类电容即可保证不变砖的。
消费级SSD原本就是个对成本异常敏感的市场,厂商们不惜增加成本来加入这部分固件掉电保护逻辑和电容,重新设计PCB布局和加入电压监控电路,可想而知问题的严重性了。你们有仔细思考过这些问题么?Intel的8MB门是什么时候大爆发的,X25-E和X25-M时代没有多少8MB吧,怎么加了电容反而爆发了呢?美光m4/C400 30分钟大法是不是听的老茧都出来了,大容量的m4为什么更容易出问题,C300的时候怎么不见这个问题呢?
为什么需要掉电保护?
一般来说当SSD在闲置状态或读取操作时突发掉电并不会丢失用户数据。但当SSD在做写入操作时供电遇到浪涌、尖峰、掉压又或者不当心被人误操作从系统中移除时,都可能导致数据出错甚至损坏。突发掉电会导致2种数据出错的情况,第一种是文件系统出错,另一种是设备内部数据损坏。文件系统出错会导致操作系统无法完成文件系统记录的更新,不同的文件系统健壮性也不同,日志式文件系统EXT3或者EXT4就比FAT文件系统更健壮,FAT文件系统出错主要会导致丢失文件分配表或者掉簇。文件系统出错是无法依靠存储设备固件或者硬件设计来避免的,这是因为存储设备本身并不了解你会使用何种文件系统记录和位置,因此没有办法来保证文件系统不出错。幸运的是,文件系统损坏一般不会致命。大多数操作系统都会在下次主机上电时执行文件系统扫描和修复,当然用户也可以自己运行命令来执行修复操作。设备内部数据损坏可能会导致整个存储设备无法使用。这类错误主要是因为在突发掉电时,设备内部的元数据(例如逻辑-物理映射表)损坏,可能导致现有数据出错或者整个SSD无法使用,除非重新低级格式化(工厂量产),间接导致所有用户数据丢失。正因为内部数据出错是致命性的,所以这部分也成为了存储设备固件和硬件设计中最关键的一环,必须要保证在任何情况下都不能发生这个问题,因此就有了掉电保护这个功能。
无掉电保护的SSD安全么?普通掉电保护和完整掉电保护的区别又是什么?
就像上面我提到的,消费级市场对价格异常敏感,无掉电保护成本最低自然也是大多数方案采用的。实话说,要保证无掉电保护的SSD数据安全,就必须完全放弃数据写入缓存,这样会明显增加写入放大,大幅度降低读写性能,如今的消费者都养叼了,没性能的SSD谁会买?所以没有厂商这样做,自然答案就是不安全(某些工控SSD无性能要求,完全不用缓存和搭配高品质闪存颗粒,确实可能在无掉电保护的情况下保证数据安全)。那么不但要没掉电保护,还要尽可能多使用到写入数据缓存的话如何做呢?那就是必须要随时更新存储状态,也就是类似系统还原点,当突发掉电时,主控复位,闪存写保护,下次上电时快速加载最后一次的还原点并扫描和恢复内部文件记录错误,这种情况除非掉电时数据正在写入或者SSD内部正在纠错外,都不会丢失用户数据,不过碰巧那时候正在做写入操作或者别的关键操作的话,恭喜你,丢数据事小,变砖事大了,如果还把这种盘用在企业级阵列里,数据匹配错误掉阵列哭吧。
上图是普通掉电保护的SSD,美光M500。普通掉电保护指的是突发掉电时尽可能保证盘不变砖(闪存内部数据不出错)
上图是完整掉电保护的SSD,美光P400m。完整掉电保护指的是突发掉电时保证缓存中的所有数据都完整写入到闪存里。
普通掉电保护这个概念味远大于实际用途,当初SLC颗粒的时候并不需要这个功能,MLC颗粒的物理限制(TLC的更严重)导致了需要此功能来避免SSD内部数据出错。没看懂?下面我来解释下:
MLC分为Lower Page和Upper Page来存储2个bit,如上面的图例1显示,当进行编程操作的时候,Lower Page是先进行编程的,Lower Page的编程比较简单和迅速,L0状态表示数据1,L1状态表示数据0. (SLC Cache模式就是只编程Lower Page,放弃了Upper Page,因此速度快性能和耐久度接近SLC,容量则少一半)
图例2中就比较复杂了,当要编程MLC的第2个bit的时候,我们就需要进行对Upper Page的编程,如果我们之前已经把Lower Page编程到L0的状态,那么在编程Upper Page的时候要想表示数据11,就需要在Upper Page编程的时候编程到状态L0,如果要表示数据10,则需要编程到状态L1。如果我们之前把Lower Page编程到L1的状态,那么要表示数据00则是状态L2,表示数据01则是状态L3。假设在编程第2个bit的时候突发掉电,就是在对Upper Page编程时候电压不稳定,则会导致编程不到我们要的状态,甚至会导致前面编程的第一个bit也就是Lower Page数据出错,例如把状态L3(01)搞错成了状态L1(10),把状态L4(11)搞错成了状态L2(00)。(Lower Page之前已经写入到盘内闪存,出错意味着盘内旧数据出错) 如果这个数据是用户文件,则文件损坏,并且无法依靠文件系统扫描修复,因为这个不是文件系统错误,是设备内部文件错误,如果这个数据是SSD内部的映射表或者关键数据,那么很可能就会让SSD变砖了。
如果你是拿SSD做为临时数据盘,例如做为高带宽下载盘、放大型游戏和软件之类的作用,那么不带掉电保护的SSD自然就足够满足要求了,反正掉数据重装,变砖返修就是了。如果你是拿SSD用来做为主力盘,例如系统、重要数据、工作甚至生产用盘,我个人建议你搞个完整掉电保护的SSD,别拿自己的数据和时间开玩笑。至于普通掉电保护的SSD,我感觉这个功能是厂商用来自保的,降低变砖率等于降低返修率,间接的降低了维护成本。对用户来说缓存里的数据依然是会掉的,真要说和无掉电保护的SSD有什么实质区别,可能比较适合做为移动硬盘吧,至少在热插拔的时候不会轻易把自己弄成砖头。
成熟主控方案的企业级端对端数据路径保护固件,成熟量产后期步进的eMLC企业级颗粒品质,官方提供保修,关键是他还有Bug价
市面上同类产品有不少,但是价格都很贵,可以自行去查下相关价格。类似产品有:Intel DC S3700、Micron P400m、Toshiba HK3E2、OCZ Intrepid 3800、SanDisk CloudSpeed Ultra/CloudSpeed Extreme、Samsung SM863,一般这些都是随OEM服务器和工作站出售,工包、拆机、洋垃圾价格可能会低,但保修就会是问题。
企业级的品质,消费级的价格,做为首款PCEVA官方定制版SSD我亲手测过了,后续也会尽可能提供使用中的技术支持。
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|