本帖最后由 neeyuese 于 2010-10-21 10:43 编辑
由于SSD的特殊性,每家厂都有自己对SMART的定义,不能以偏概全。今天没事稍微看了看,说说自己的发现。
先拿SandForce主控的来说说事,最近这家主控公司太疯,哈哈。
官方给出的Smart定义表。
12块采用SF 1200主控的芝奇凤凰Pro 60G ,实际颗粒64G 8通道。
新盘的SMART信息,健康度各不相同。
接下来开始看:
05数值 - Retired Block Count: 其实就是坏块数。
由于这些SSD里面采用的是Intel的34nm NAND,型号为JS29F32G08AAMDB, JS29F64G08CAMDB等。
页: 4KB , 块: 256页 , Plane : 2048块, LUN : 4GB。
Intel Datasheet 里说这个型号的NAND每个LUN最大允许160个坏块。
每个LUN有4096个块,出厂时保证有效块至少有3936个。(第一个块在ECC下保证有效)
JS29F64G08CAMDB是2个JS29F32G08AAMDB封装成的,也就是2个LUN,自然可以最大允许320个坏块了。
上面图里的60G 芝奇 05数值都不一样,那么到底有多少坏块哪?用这个公式:
100 - (100X坏块数量/最大允许坏块数量) = 这个SMART数值。(非RAW)
以第一张图为例:05数值97, 后面的RAW为100(16进制),换为10进制后等于256,但是这不代表有256个坏块。实际坏块数量为:
100- (100X坏块数量 / 2560 (最大允许坏块数量- 60G内部64G颗粒,16个LUN = 2560 , 120G就为5120) ) =97
得到当前坏块数量约为 :76.
这个坏块数量包含出厂坏块和使用中被标记的坏块。也就是说买回来的SSD实际多少出厂坏块看RP了,不过也不用太担心,因为NAND厂商保证在规定P/E数下(这里是5000),坏块不会超过NvB(最大允许坏块,这里就是160每个LUN)
如果说新买来SSD 05各不相同,那么只能说自己运气好不好,哈哈。那么接下来的用户使用中出现的坏块更能说明RP了。
新盘买回来896
用了4小时,全盘装满数据,格式化后变928
之后正常操作30小时,无任何变化。
上面这个数值增加就是应用中的坏块增加。(HDtune不能识别SandForce的SMART 05定义,所以显示和普通HDD一样为重映射扇区)
---------------------------------------------------------------------------------
NAND FLASH产生坏块的原因:
由于NAND Flash的工艺不能保证NAND的Memory Array在其生命周期中保持性能的可靠,因此,在NAND的生产中及使用过程中会产生坏块。坏块的特性是:当编程/擦除这个块时,不能将某些bit变1,这就会造成页编程和块擦除操作时的错误,相应地反映到状态寄存器的相应位。总体上,坏块可以分为两大类:
1.出厂坏块
这是生产过程中产生的坏块,一般芯片原厂都会在出厂时将坏块第一个page的spare area第6个byte标记为不等于0xff的值。
2.使用坏块
这是在NAND Flash使用过程中,如果Block Erase或者Page Program错误,就可以简单地将这个块作为坏块来处理,这个时候需要把坏块标记起来。为了和固有坏块信息保持一致,将新发现的坏块的第一个page的spare area的第6个Byte标记为非0xff的值。
我们了解了NAND Flash出厂时在spare area中已经反映出了坏块信息,如果在擦除一个块之前,一定要先检查一下spare area的第6个byte是否是0xff,如果是就证明这是一个好块,可以擦除;如果非0xff,那么就不能擦除。当然,这样处理可能会犯一个错误―"错杀",因为在芯片操作过程中可能由于电压不稳定等偶然因素会造成NAND操作的错误。但是,为了数据的可靠性及软件设计的简单化,“宁可错杀一千,也决不放过一个”。
另:需要对前面由于Page Program错误发现的坏块进行一下特别说明。如果在对一个块的某个page进行编程的时候发生了错误就要把这个块标记为坏块,首先就要把其他好的page里面的内容备份到另外一个空的好块里面并把这个块标记为坏块。当然,这可能会犯“错杀”之误,一个补救的办法,就是在进行完页备份之后,再将这个块擦除一遍,如果Block Erase发生错误,那就证明这个块是个真正的坏块。
---------------------------------------------
再说说NAND FLASH里“黑片",”白片“,Downgrade :
一般闪存行业有黑片,白片,中性卡之说。所谓黑片,主要是指表面没有打上雷刻的Flash芯片,如K9K8G08U0A-PCB0的SLC芯片,没有这个型号打上,就是黑片。白片主要是指表面什么都没有打的闪存卡,连是什么卡都没有标明。中性卡是指表面有打上有Micro SD, SD等字样的闪存卡,但没有打上某指定品牌的LOGO。
Downgrade Flash:
1,闪存颗粒采用白片,也就是一些工厂不合格的闪存颗粒,通过非正规渠道进入市场,将颗粒打磨好编号后使用,一般很难查询到上面的颗粒编号出处,而采用了这样颗粒的U盘,使用起来极为不稳定,在同一台电脑上拷贝东西可能不会出现问题,但是在另外一台电脑上可能会出现打不开的情况。
2,采用黑片,当一些闪存颗粒损坏后,只有部分容量可以使用,奸商们便打起这些理应销毁颗粒的主意,采用屏蔽损坏区域,或者焊上数颗损坏的颗粒的手段,来达到一定的容量,采用了这种黑片的U盘不但传输速度会非常慢,而且出问题的几率相当之大。
3,用硬件方式来改变。硬件就是利用电路将小容量的U盘人为地让电脑识别成大容量的U盘,因为U盘是必须要用到存储芯片,也就是通常说的闪存,闪存有几个脚是专门用来检测容量的,通过更改这几个脚的电路是可以造成电脑识别故障。
目前市场上流行黑片、白片的说法,都算是Downgrade Flash的类型,由于Flash制程和容量的提升,内部的构成越来越复杂。而新的制程推出时,产品良率并不一定理想,那些不良的Flash有些是容量不足,有些是寿命不能达到要求,有些是测试不能通过,这些不能达到出厂要求的Flash都被称为Downgrade Flash。Downgrade Flash有些由厂家推向市场,比如Spectech等就是镁光(Micron)的Downgrade Flash。而另外一部分作为废品淘汰掉,但是利润驱使,这些废品也会低价被收购流入市场。一些厂家以各种方案的扫描工具(Die Sorting System)来检验出来哪些能够使用。这些厂家收购Flash按斤回收,通过少则数十台Sorting System,多则上千台一同扫描,每天有上百K的产能。大部分Downgrade Flash被做成SD卡,少数用于U盘,极少数厂家用于生产MP3。Downgrade Flash的处理方式多数是降低容量出售。不论怎样处理,都还是存在问题隐患。但由于价格低廉,Downgrade Flash的市场正在进一步成长。
目前看来,Downgrade Flash用到 SSD上还不太可能,因为毕竟不是移动存储,作为系统盘对NAND的质量有一定要求,厂商也怕RMA成本。 |