数码之家

 找回密码
 立即注册
搜索
查看: 4249|回复: 8

[SandForce] 请教sf2281方案的ssd如何有效隔离坏块?

[复制链接]
发表于 2019-5-15 19:23:02 | 显示全部楼层 |阅读模式

爱科技、爱创意、爱折腾、爱极致,我们都是技术控

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

x
之前在各位大神指点下,把手头的金士顿kc300 120G(sf2281 vb4)给救了回来,但是用了一段时间,
发现卡顿的厉害,smart里的重映射值直线上升,跑urwtest也不通过,估计是坏块的问题比较严重,
所以想请教各位以下几个问题:

1、是否会因为开卡固件使用错误而导致出现大量坏块? 因为我这个盘是原厂,单位批量买的,而且
使用的并不多,按理说不应该坏的这么厉害。 而且开卡的时候,曾经试过多个id的固件,15nm、19nm
的都有,也都能成功,这让我感觉有点奇怪,总怀疑是不是固件有问题;

2、我在用不同ID固件开卡时发现,每次pass后,显示的出厂坏块列表都是不同的,有些300多、有些700多,
按理说,出厂坏块应该只和flash片子有关,没理由换个固件就会有这么大差异,感觉开卡时似乎没有真正
进行出厂坏块扫描;而且同一版本的固件,多次开卡后这个数值也是完全不变的,这也不合理吧;

3、sf 2281这个方案,有没有重建工厂坏块或者增长坏块的工具? 在开卡时把能发现的坏块都放进去,应该
多少能改善卡顿的问题吧;

感谢指点!

以下是开卡工具SF_Genesis的log文件中的出厂坏块列表:
<TEXT_MANUFACTURING_DEFECT_LIST>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Manufacturing Defect List For Device: /dev/sg2                                                                        
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
    Index    Bus      Chip Enable    Die      Plane    Block    Lane   Defects                                          
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
     0        0        1              0        0        1025     4        1        
     1        0        0              0        0        1028     4        1        
     2        0        0              0        1        1049     2        1        
     3        0        0              0        0        1051     2        1        
     4        1        0              0        1        1056     4        1        
     5        0        0              0        1        1061     3        2        

............................................................................
    318      1        1              0        0        1015     1        1        
     319      1        1              0        0        1016     1        1        
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
   Total Number of Manufacturing Defects: 371                                          
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


发表于 2019-5-16 00:50:10 | 显示全部楼层
记开卡工具好像有个TEST FLASH的
回复 支持 反对

使用道具 举报

发表于 2019-5-16 22:12:14 | 显示全部楼层
降下容试一下,看看有好转不,我的降了好多了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-16 23:36:53 | 显示全部楼层
zanezhang 发表于 2019-5-16 00:50
记开卡工具好像有个TEST FLASH的

我试过,不知道是不是操作错误,竟然每次只能测试一个块,我再看看说明去
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-16 23:38:04 | 显示全部楼层
zb300111 发表于 2019-5-16 22:12
降下容试一下,看看有好转不,我的降了好多了。

实在没办法就只能这样了,我降了15G后,似乎坏块增长的稍微好些了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-16 23:39:47 | 显示全部楼层
zanezhang 发表于 2019-5-16 00:50
记开卡工具好像有个TEST FLASH的

不过,就算能test,也应该不能把坏块加到出厂记录里吧,那不是和普通测试工具一样了?
回复 支持 反对

使用道具 举报

发表于 2019-5-17 00:27:28 | 显示全部楼层
本帖最后由 fangyinghh 于 2019-5-17 00:29 编辑

不同的id,固件ecc位数不同,比如老制程L85的,固件有24bit ecc和29bit ecc之分,同样的盘开出来,ecc位数高的,出厂坏块肯定少点,但是后期不稳定因素多点,L95制程的ecc有33bit和49bit的。
开卡完成,跑第一圈测试,判断坏块在哪一块闪存,然后以3、4、6片组合降容开卡,避开坏片,这是一个方案;
开卡时,手动指定lba数值为少一些的,降低容量,跑圈多几次,也可以屏蔽坏块
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2019-5-19 15:55:05 | 显示全部楼层
fangyinghh 发表于 2019-5-17 00:27
不同的id,固件ecc位数不同,比如老制程L85的,固件有24bit ecc和29bit ecc之分,同样的盘开出来,ecc位数 ...

谢谢!老兄一提醒我才突然想起不同固件的确有个ECC校验强度的区别,不过对于工厂坏块来说,不是只要在oob的某个字节标致为非FF值的就是坏块吗,难道开卡的时候,固件还会实际去扫描一遍,看看能否用算法恢复,之后才决定最后的坏块列表?
回复 支持 反对

使用道具 举报

发表于 2021-5-29 06:51:27 | 显示全部楼层
SF2281实际上有一个跟2246en的RDT功能类似的MST(manufacturing self test),但是目前还不知道该怎么跑,问了一堆人都不知道
回复 支持 反对

使用道具 举报

发表于 2024-2-4 23:27:54 | 显示全部楼层
这个不知道在,怎么跑坏道
回复 支持 反对

使用道具 举报

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

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-6-8 04:22 , Processed in 0.124800 second(s), 11 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表