PCEVA,PC绝对领域,探寻真正的电脑知识
开启左侧

建兴的定制版SSD固件分析

[复制链接]
neeyuese 发表于 2016-2-2 15:06 | 显示全部楼层 |阅读模式
点击数:30651|回复数:51
本次PCEVA定制版的硬件部分为建兴企业级NAS系列的用料,闪存颗粒最多出现同一块盘两种批次(PCB正反面不同)而已,完整掉电保护所需硬件电路也都在。大家也都看了前天石头写的事件说明了,很明显硬件没问题,造成本次事件的关键是固件因素,既然石头已经先发帖了,那本帖我也来稍微深入的分析下这次初版固件的问题。

建兴企业级的SATA产品分为NAS系列和N9S系列,其中NAS系列采用的是东芝19nm TYPE C eMLC,默认预留OP为28%,带完整掉电保护,而N9S系列采用的是东芝A19nm MLC,默认预留13% OP,并且掉电保护为可选功能。主要区别是由于前者预留OP更多,颗粒耐久度更好,所以稳定态写入性能和寿命为后者的N倍,在企业级应用中NAS被称作混合型SSD,而N9S则称作读取型SSD。

既然如此,NAS系列的固件容量就应该是100GB/200GB/400GB/800GB,而N9S的容量则为240GB/480GB/960GB甚至1920GB。但是本次定制版的初始固件容量为无2层OP的256GB/512GB/1TB,问题是这并不是建兴重新开发了完整容量的固件,而是简单的取消了2层OP的容量给用户操作,达到了提高用户可用容量的目的,并以此和企业级固件做出区分,理由在上面石头的链接里也有给出。应该说,大部分消费者们对容量还是很敏感的,如果这个大容量的固件能够稳定使用的话,当然是皆大欢喜,可惜事实并非如此,而且从1TB的问题上可以看出,这个固件还没有经过验证就拿出来了。

建兴OEM的最大客户是DELL,几年前我就提过当初DELL带了一批工程师去建兴开发固件,几年下来发展到3位数的工程师团队,因此DELL的固件可以说是建兴固件的正统,再由DELL固件演变后就最终变成了公版固件,前者针对DELL服务器做优化,后者则可作为其它客户的基板固件,然后再按照客户大小和实际需求调整,近2年建兴加大了企业级部门的投入,因此在消费端出现了断层,经验丰富的工程师调派去做企业级客户,而消费级端年轻工程师总会在经验上有各种欠缺,初版消费级产品的固件问题会较多,实在解决不了则再让老工程师调回来帮助改进来解决。

发现1:对之前发我测试的S920样品和本次的PCEVA订制SSD是否为DELL货的怀疑



在产品的型号后缀中我发现了(DELL)tm字样,我是否该怀疑给我送测的S920的样品其实是DELL的NAS系列备品,然后量产时改变型号为S920和简单的扩容到512GB的操作呢?我相信建兴给DELL的货不可能1块SSD颗粒均混搭吧。一般来说,一块SSD上单面的颗粒需要保证尽可能周期一样,而1块盘上甚至出现了8种完全不同批号的颗粒,况且还是14年和13年,台湾和大陆封混搭,那么是否市面上的T9标准版均为库存甚至退单颗粒呢?

发现2:经过我之前在发现定制版1TB固件出现问题后的跟进测试,本次带掉电保护的PCEVA定制版SSD不同容量下的固件垃圾回收设置略有不同,不过均是基于建兴NAS固件的框架扩容而来,初版固件性能表现会非常的不稳定。



如图所示,256GB的PCEVA定制版SSD固件当写入数据量超过60%容量后(大约150-160GB)就会进入被动垃圾回收模式,这说明此时固件认为SSD已经填满,再写入数据需要先擦除内部数据,对性能的影响很大。


如图所示,512GB的PCEVA定制版SSD固件当写入数据量超过80%后会进行被动垃圾回收。这说明此时固件认为SSD已经填满,再写入数据需要先擦除内部数据,对性能的影响很大。

1TB的PCEVA定制版固件表现相信会和上面2个型号的一样,在数据量达到一定程度后就会进入主动垃圾回收模式影响性能表现。因此怀疑256GB/512GB/1TB的固件分别是由原NAS系列200GB/400GB/800GB的固件简单扩容而来。为何1TB的我没贴图,因为1TB的版本并没完成整个验证过程就已经完蛋了

扩容固件恢复到默认情况下又是如何的呢?



新的200GB固件在开放2层OP到28%后,在150-160GB区域依然出现性能下降,和原本256GB容量的60%范围150-160GB吻合。



新的400GB固件再开放2层OP到28%后,在填满400GB范围后出现性能下降1个坡度,这是因为垃圾回收消耗了主控资源。



新的800GB固件再开放2层OP到28%后,在填满800GB范围后出现性能下降1个坡度,这是因为垃圾回收消耗了主控资源。

发现3:只是对量产工具做简单的扩容设置,导致了1TB的PCEVA定制版SSD缓存溢出。

Marvell 88SS9187 Monet 2.0主控最大支持1GB外置缓存,外置缓存里一般存放有映射表和关键信息。PCEVA定制版的容量和外置缓存对应分别为256GB配512MB,512GB配768MB,1TB配1GB缓存。建兴NAS系列的容量为200GB/400GB/800GB,在固件全局设计时,一般会预留出一部分缓存地址专门做为映射表范围,并针对这个范围作出后期优化,最后还要经过稳定性验证。本次的问题出在简单通过扩容后的SSD虽然释放了用户可用容量,但是硬件上缓存容量却并没提高,由于256GB和512GB的闪存/缓存容量比为1GB:2MB和1GB:1.5MB,所以没出现这个问题。但是1TB的闪存/缓存容量比为1GB:1MB,这显然超出了原本设计的NAS 800GB固件内缓存的规格和范围(如果1GB:1MB够得话256GB何必要搭配512MB),可能造成了缓存溢出的bug,当用户写入的数据超出缓存内映射表范围后,表现如下:随机认不出SSD,显示需要初始化,初始化时会失败,丢失分区和数据不稳定,每次正常关机或者休眠再次开机或者唤醒也需要重建映射表,硬盘灯常亮并卡住,主控莫名其妙死循环,后台资源占用100%等等。

相关人员应该只是简单的通过类似下图中量产工具里拉高容量量产。



上图中为台湾某厂的量产工具设置图,以此举例,左边红框改下产品型号,中间红框改下容量和垃圾回收策略就以为完事儿了。我相信目前市面上在卖的T9 128GB和256GB不带掉电保护的,和带掉电保护的型号区别只是量产时候像上图那样在中间区域把掉电保护逻辑的框给去掉。会玩量产工具并不代表你是个负责任的工程师。

从本次1TB型号事故可以看出,建兴在改动量产设置后并没有再次验证产品扩容后的健壮性,这是很严重的态度问题。所以鉴于已经发生的事情,重新开发并完整验证扩容固件肯定不现实,消费者需要尽快的使用上安全的固件,所以我们最终要求建兴方面针对PCEVA定制版产品做到请保证使用完整的最新版公版NAS系列的固件,完整保留设计时的28% 2层OP容量,确保一定要带完整的掉电保护功能,容量依次变为200GB/400GB/800GB,这样就省去了重新开发和验证固件的时间。

从上面一系列的测试可以发现,PCEVA定制版SSD的固件确实基于建兴NAS家族,只是初版固件被不负责任的人员简单扩容导致了问题,新版固件只是还原了2层 OP的容量并更新到了最新的公版固件版本。



这里拿刷新成800GB的定制版新固件举例,新固件多出了个E5的值,这个值的定义为掉电保护电容的状态,如果原始值 = 0则说明掉电保护工作正常,如果原始值 = 1则说明掉电保护工作异常,不带掉电保护电容的T9系列是没这个定义的。另外增加2层OP后,备用快的数量也被释放出来,这一部分也可以参与到稳定态性能优化。为了方便各位PCEVA定制版用户看SMART值,我提供个工具箱。(请使用微软的默认AHCI驱动,右键管理员权限运行。)

另:截止目前,网上已经有卖新版的T9标准版了,128GB和256GB容量型号的颗粒均是4颗闪存的黑色壳子,美名其曰散热增强,出厂固件从原本的0306变成了03G3,最新固件为03G5,解决了原B1定义3000 P/E和温度的显示问题。不过我这里也提醒一下,据说新版的4颗装性能并不稳定,因为NAS系列没有4颗装的固件,这个固件也是通过量产工具简单的魔改出来的,不信的自己去连着跑2次ASSSD就明白了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
无心飘落 发表于 2016-2-2 15:26 | 显示全部楼层
沙发,广告位长期招租

阅读完毕后的出来的结论就是建兴卖了企业级的NAS盘给PCEVA做订制版
顺便去几大购物网站清了下尾货
alphaboy 发表于 2016-2-2 15:30 | 显示全部楼层
细细看了一遍,最后一段话简直大亮!
easesong 发表于 2016-2-2 15:32 | 显示全部楼层
意思是 一分价钱一分货吗?想占便宜来论坛
这名字真棒 发表于 2016-2-2 15:34 | 显示全部楼层
这么说我们就放心了嘛~~

顺便广告位招租~~~
kofko 发表于 2016-2-2 15:35 | 显示全部楼层
这跟头栽的  唉 ,改正吧
vicdoo 发表于 2016-2-2 15:43 | 显示全部楼层
看完了 谢谢浴大大
七月流火 发表于 2016-2-2 15:44 | 显示全部楼层
什么时候来个Intel的团购吧
baymax 发表于 2016-2-2 15:54 | 显示全部楼层
在外地出差偶尔上上网,看到事情能解决的这么漂亮,还是信任PCEVA没错,明天就回家可以发开箱了。让建兴去吃屎吧
寂寞修行 发表于 2016-2-2 16:10 | 显示全部楼层
看了,不怎么明白,结论是建兴PCEVA定制版T9到底能不能稳定?还会不会出新固件来。
McLaren 发表于 2016-2-2 16:23 | 显示全部楼层
不信的自己去连着跑2次ASSSD就明白了


你太坏了,还让建兴怎么卖新版T9,4颗不一样的颗粒无法召唤神龙了

感谢师太和浴室为此次定制版事件的努力。
cswithme 发表于 2016-2-2 16:47 | 显示全部楼层
本帖最后由 cswithme 于 2016-2-2 16:48 编辑

感谢师太和浴室吧,这事太折腾了。
以后要买建兴消费级的SSD产品是该考虑一下了。让我想起了到手的那个40周年纪念版,号称小浦科特

alphaboy 发表于 2016-2-2 17:09 | 显示全部楼层
寂寞修行 发表于 2016-2-2 16:10
看了,不怎么明白,结论是建兴PCEVA定制版T9到底能不能稳定?还会不会出新固件来。 ...

结论是定制版稳定,更新的固件在没有发生群体性故障的情况下不会再有。
sfdm 发表于 2016-2-2 18:58 | 显示全部楼层
有个问题 为什么刷了新固件以后  温度上升那么多?
gxh5720 发表于 2016-2-2 19:21 | 显示全部楼层
学习了。工具好评。
贰佰塊 发表于 2016-2-2 20:22 | 显示全部楼层
如果这是真的话,建兴在消费领域的态度实在是不上心啊~~~~~
看来建兴真不靠谱啊
linqy 发表于 2016-2-2 20:40 | 显示全部楼层
看完了,也对手上的定制版放心一些了。
我是强烈向别人推荐,并代购定制版的。用户对数据安全是非常看重的。直到新固件出来一个星期,我才敢给别人装上。

不过对楼主用词有点意见:“台湾和中国封混搭”,这里应该是“台湾和大陆封混搭”才对。

评分

参与人数 1绝对值 +1 收起 理由
Y6-0785 + 1 很给力!

查看全部评分

neeyuese  楼主| 发表于 2016-2-2 21:06 | 显示全部楼层
linqy 发表于 2016-2-2 22:40
看完了,也对手上的定制版放心一些了。
我是强烈向别人推荐,并代购定制版的。用户对数据安全是非常看重的 ...

感谢提醒,因为颗粒上标CHINA和 TAIWAN,一时没意识到。

cell-v 发表于 2016-2-2 21:36 | 显示全部楼层
neeyuese 发表于 2016-2-2 21:06
感谢提醒,因为颗粒上标CHINA和 TAIWAN,一时没意识到。

“新的200GB固件在开放2层OP到28%后,在150-160GB区域依然出现性能下降,和原本256GB容量的60%范围150-160GB吻合。”意思是新固件 依然存在 容量在150-160GB后,性能下降的问题了?

neeyuese  楼主| 发表于 2016-2-2 21:45 | 显示全部楼层
cell-v 发表于 2016-2-2 23:36
“新的200GB固件在开放2层OP到28%后,在150-160GB区域依然出现性能下降,和原本256GB容量的60%范围150-16 ...

不明显,只在这个区域有少量下降点。

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部