【仙人掌科技工业级闪存卡-小知识】SMART特征~! 点击:158 | 回复:0



Cactus-Danile

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 0回
  • 年度积分:0
  • 历史总积分:113
  • 注册:2017年4月20日
发表于:2017-06-20 15:17:33
楼主

覆盖产品:工业级 203,303,503 CF卡,806/808 SD卡,300UFD与900S SATA产品。


1.简介

自我监测、分析与报告的技术(又名SMART),是美国国家技术标准ATA规范定义的一个特征集,这个特征集包含一套允许主机检索存储设备健康状况信息的命令。它可以让用户提前知道设备即将变坏,并在变坏前采取行动。SMART最早应用于硬盘驱动器,但是现在被基于ATA接口的存储设备的闪存采用。SMART对ATA规范来说是一个可选择的特征,但是对仙人掌科技的303,503,900S系列产品来说是标配。

(ATA:高级技术附件,一种基于行业标准的硬件驱动器接口。)


2. SMART的用法

SMART是一个使用B0h的ATA命令,在这个命令里面,有再定義子命令,而這些子命令都不是必要的。通过程序选择到的子命令会写入特征寄存器,仙人掌科技303系列产品支持如下的子命令:

命令

D0h

SMART Read Data

D2h

SMART Enable/Disable Attribute Autosave

D8h

SMART Enable Operations

D9h

SMART Disable Operations

DAh

SMART Return Status

仙人掌科技503系列产品支持如下子命令:

命令

D0h

SMART read data

D1h

SMART read attribute thresholds

D2h

SMART enable/disable attribute autosave

D5h

SMART read log

D6h

SMART write log

D8h

SMART enable operations

D9h

SMART disable operations

DAh

SMART return status

仙人掌科技900S系列产品支持如下子命令:

命令

D0

SMART Read Data

D1

SMART Read Attribute Thresholds

D2

SMART Enable/Disable Attribute Autosave

D5

SMART Read Log

D6

SMART Write Log

D8

SMART Enable Operations

D9

SMART Disable Operations

DA

SMART Return Status

E0

Read Remap Data

E1

Read Wear Level Data

SMART最常用的用法是用子命令DAh检查设备的状况,会返回"通过/失败"状况给主机,尽管如此,这个信息也不是特别有用,因为當回報失败状态时,设备已经坏了。


SMART更多的用法是用读取命令(D0h)来读取设备的属性,将返回设备属性的清单,这些信息可用来预测设备剩余的寿命。


3. SMART属性

SMART的读命令会检索设备的属性,ANSI ATA规范定义了SMART的命令与子命令与数据格式,但是它没有規範设备必需回報哪些属性。因此供应商之间的属性是多种多样的。自从90年代中期引进了SMART技术,硬盘驱动器厂商在他们的产品中或多或少会采用一些通用的属性。这些属性也被闪存供应商采用。然而这是一个业界制定标准而不是ANSI ATA标准。不保证相同ID的设备返回相同的属性。而且供应商在他们独有的产品中经常有额外的属性。


互聯網上有一些公用的SMART軟體读取和解讀属性信息。但是这些解讀方只法只是依靠業界标准或者逆向工程而获得。在我们的产品中,仙人掌科技不建议使用这些軟體来解析SMART属性,因为这些軟體不保證能正確返回数据。


仙人掌科技的SMART属性在产品之间会略有不同,在各产品手册中有详细的SMART属性文档。如果用户必须依靠第三方SMART軟體,最好的方法是先清空原始属性数据,然后用仙人掌的产品手册解析。


4. 仙人掌科技的SMART功能

由于没有标准的SMART軟體,有2种方法可以从仙人掌科技产品中精确的检索与解析SMART属性。第一种是用户基于产品手册编写他们自己的SAMRT軟體,这个方法应用于非Windows或者Linux的操作系统,并应用于现场监测的情况。第二种方法是使用仙人掌科技提供的SMART軟體,目前,这个功能仅仅适用于Win32应用,并运行Windows命令。对于Linux操作系统,我们提供了C的源代码,以便用户能编译一个专用的功能。可以联系仙人掌科技销售获得这些文件。仙人掌科技Windows SMART功能是独立的脱机的程序,因此,不适合那些SMART属性现场监测的应用。


4.1 Windows SMART功能

当用户运行我们的Windows SMART功能时,它将会自动检测到被加载到系统的任何支持的仙人掌科技产品。如下图显示:

这个截图显示了2个仙人掌科技产品被加载. 一般用户的系统只會使用一个人仙人掌產品,用户能从机型信息中很容易的识别,用户可以选择适当的设备与功能,并开始检索SMART属性,具体如下图:

用户可以通过按X退出

4.2 Linux SMART功能

由于Linux有很多不同的版本与很多内核版本,難以提供预编译的執行檔,仙人掌科技将提供C的源码,以便终端用户编译他们自己符合Linux实际需求的SMART。Linux代码使用SCSI ATA 轉換 (SAT) 给设备发布必要的ATA命令。Windows与标准Linux内核驱动与支持SAT特征的USB转SATA芯片均支持SAT。


下面的例子显示了Fedora Linux 900S SATA SSD SAMRT的编译情况,用户需要有 root 权限才能运行这个功能。首先识别SCSI设备分配给驱动器,在这个例子中是dev/sdc. 输入如下命令后启动这个功能:

>cactus-900S-smart-util /dev/sdc


下图显示了相关命令菜单:

选择c读取SMART属性,具体如下截图:

最后选择h退出


最有用的属性是备用块计数与擦除计数,這兩個属性皆可以用于预测存储设备的剩余寿命。另外一个有用的属性是ECC计数,如果用户已经启动了无法纠正的ECC计数(通过从全部ECC错误数量减去可纠正的ECC错误数量来获得),通常根据无法纠正的ECC错误数量,得知是否在产品寿命的末期而需要更换设备。


5. 203系列产品的 SMART

仙人掌科技的-203系列产品率先于2005年引进并一直使用至今,这个产品系列不支持ATA SMART特征设置。即使如此,我们也一直提供支持给用户预测他们的产品寿命,这个信息通过专用的命令从驱动程序里面检索,仙人掌科技为这个功能已经专门编写好程序,这仅仅在舊式DOS环境下运行而不是Windows DOS。如果我们任何客户需要植入这个功能,可以联系仙人掌科技销售团队来获取更多的信息。


6. SD卡产品的SMART

SD卡产品本来是针对消费类市场,它的长产品寿命与早期的失效预测不准确,因此,SD卡产品开始广泛的应用于工业级应用,俱備SMART功能亦變得重要。不幸的是,SD协会並沒有為SD命令集里面定加入SMART命令。


針對SD卡产品的缺乏 SMART,仙人掌科技在-806/808系列SD卡产品上与我们的供应商实现了一套SMART特征。这个特征通过在状态寄存器返回类似"Reserved for Vendor"SMART信息来工作,用ACMD13检索。基本上这些返回信息类似ATA SMART特征里的备用块数量属性。备用块数量信息允许用户计算产品剩余寿命的百分比。-806/808 SD卡产品手册里面有通过命令返回的详细数据。


下图针对ARM Cotex M3单片机,运行-808 SD SMART功能后输出信息的举例:

重申一次,备用块数量与ECC数量属性都能预测卡的剩余寿命。


7. USB产品的SMART

仙人掌科技的300系列USB产品支持SMART属性报告,这个过程通过使用USB标准的ATA特征实现,通过使用这个特征,标准ATA SMART命令(B0h)被发送给设备,支持300系列USB产品的子命令如下:

命令

D0h

SMART Read Data

D1h

SMART Read Attribute Thresholds

D8h

SMART Enable Operations

D9h

SMART Disable Operations

DAh

SMART Return Status

属性报告请参考300系列USB产品手册。


目前,仙人掌科技正致力于300系列USB产品的SMART报告功能,感兴趣的用户,可以联系我们的销售团队咨询进一步的可利用性。暂时用户可以使用第三方软件,例如smartmontools;这个软件能清空原始属性数据,用户可以了解产品手册里面的信息。


下图说明了300系列USB驱动的smartctl输出:

用户可以忽略属性名,并根据-300 USB产品手册参照属性ID,以便正确理解原始数值报告里面的属性值。


注意使用了-d开关命令后,会通知USB控制器使用SCSI ATA直通特征,也需要注意不是所有的USB控制器支持ATA直通特征,這情況下便不能检索SMART属性。


8. 摘要

总結而言,SMART属性包含存储设备健康状况的有用信息。仙人掌科技的-303,503与900S系列产品完全支持ATA SMART 技术。即使如此,由于SMART属性並沒有一個標準規格,,精确检测SMART属性的方法要么自己编写软件,要么使用仙人掌科技提供的软件。另外仙人掌科技在-806/808系列SD卡产品与300系列USB产品实现了类似的SMART的性能。


9. 版本历史

版本

日期

变更

1.0

2014-3-24

初始版本

2.0

2017-6-14

增加基于Linux的功能描述与USB SMART信息


我们希望本白皮书能帮助我们的客户能更好的理解,读者有更深入的问题,随时欢迎联系我们的销售部门.

邮箱:daniel.zhao@cactus-tech.cn


文章原创:工业级闪存专家仙人掌科技


1分不嫌少!


楼主最近还看过


热门招聘
相关主题

官方公众号

智造工程师