0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

企业级SSD系统中如何用Device self-test命令?

VIBT_dputech 来源:大普微 作者:大普微 2021-03-28 11:14 次阅读

写在DST之前

企业级SSD系统在日益变得复杂,有增强掉电保护的备电电容,有使用频率越来越高的DRAM,有堆叠层数越来越高的NAND, NAND结构的复杂对固件的要求也相应的变高,如存储单元里的数据一段时间不读会导致之后可能读不出来或者出现很多的bit翻转等等。而备电电容有老化的风险以及在不同的温度环境下会影响电容的可靠性;DRAM使用不当易出现ECC,甚至是UNC,影响盘的可靠性;NAND的上的冷数据如果不经常性的去读取就可能存在数据丢失的风险。

像服务器上电自检一样,SSD在上电过程中也会做电容,DRAM等自检操作。但是一般盘上电使用之后就极少会下电,所以为了能让HOST能实时的获取盘内部部件的情况,NVMe协议提供了一个标准的命令Device self-test来主动触发盘的部件检测,可以快速的发现盘是哪个部件出现了问题,可以相应的做出反应,保障用户数据的安全。

Device self-test

NVMe命令device self-test是一个管理类命令,定义了一个操作序列。具体内容如下:

11bf29ee-8eb9-11eb-8b86-12bb97331649.png

如上图所示:每个序列都规定了相应的操作,有些操作是针对controller层级,有些操作是NVM层级。Controller层级的主要是用于测试SSD的功能是否还正常,比如电容容值检查,如果容值变低,则会影响SSD的掉电时间。

1、Device self-test命令在Command DW 10字段中定义了诊断的操作类型,而所有其他命令指定的字段都要保留。

121e3fa6-8eb9-11eb-8b86-12bb97331649.png

如上图所示,目前支持的操作类型有4种,

开始一个短诊断操作;

1、短诊断的完成时间不能大于2min。

2、开始一个长诊断操作;

长诊断的完成时间由Identify Controller的字段EDSTT定义,单位是分钟。

E、开始一个厂商自定义操作;

F、中断一个诊断操作;

2、中断一个自检命令的操作有:

1、Controller reset

2、NVMe Format Command

3、一个STC为F的Device self-test命令

4、一个删除对应的ns的操作

5、Sanitize命令

3、触发自检命令之后,FW会按照相应的序列顺序执行,命令运行的情况在device self-test log中显示,这个log可通过get log page命令的LID=6来获取。

1、Current Device Self-Test Operation 表示当前的诊断操作类型

2、Current Device Self-Test Completion 表示当前的诊断操作进度

3、Self-test Result Data Structure 总共有20条记录,记录了历史的自检结果,主要关注两个点:

* Device Self-test Status:这里显示了自检的结果,成功或者失败。

* Segment Number:这里显示了失败在哪个序列操作.

DRAM Check

*由于DRAM用作用户数据的缓存,以及存放了部分代码和重要的数据,所以如果对这部分DRAM区域做读写校验的话,会直接导致数据的丢失或者固件exception。

*由于DRAM在打开ECC校验的情况下,如果出现未写先读的情况,会使得DRAM出现UNC.

基于以上两点,对于DRAM Check,固件主要要做的事情有两个:

1、对于无法做读写校验(即只读)的区域,FW需要保证该区域已经写过数据,所以可以直接去读该区域。如果出现UNC,则固件存在bug,会危及盘的正常使用。

2、对于用作堆区域的DRAM空间,可以申请出来做读写校验。除了校验数据的正确性,还需要关注DRAM是否出现ECC,如若出现ECC,则可能会危及盘的正常使用。

Volatile Memory Backup

我们常用的数据缓存介质DRAM是易失性存储介质,在设备掉电之后DRAM中的数据都会丢失。但是DRAM的数据传输速率高,为了性能考虑,其存在又是必须的。

1、缓存用户数据,加速命令的执行,减少QOS.

2、缓存了设备的元数据,加速了元数据的修改。

所以为了解决设备掉电之后缓存数据丢失的问题,设备需要增加备电电容以供在掉电时保证缓存数据存入flash。但是电容存在一定的失效率,失效的原因可能如下:

1、电容出厂时个体的差异导致能承受的电压阈值偏低;

2、随着时间的推移,电容会存在漏液现象导致容值降低。

软件需要在设备上电或者运行过程中对电容进行定时检测,以防止电容失效或者电容容值下降不足以保证设备刷新缓存数据所需时间导致数据丢失,但是电容的检测又不能太频繁。否则一是会影响电容的使用寿命,二是如果在电容放电的过程中盘掉电了,会影响盘的掉电时间。

所以Host使用device self-test命令来检查电容的容值是必需的,尤其是在接近盘的生命末期的时候,但是又不能太频繁。

Metadata validation

在SSD的所有写入数据中,存在一些频繁更新的数据和一些很久都不会更新的数据,如果那些很久都不会更新的数据量大的话,那么也会导致对应的元数据很久得不到更新。所以为了解决这个问题,在device self-test命令的元数据检查序列里,FW会去对元数据做读校验,确认元数据的完整性。

1、确保元数据还能从NAND读出来,不会出现UNC;

2、对读出来的数据做check,保证数据的正确性。

结尾

限于篇幅以及对协议的理解不同,各个厂商对其他的device self-test序列所做的事情存在区别,所以这里不再赘述。只介绍了对以上3个序列的个人理解。

原文标题:日益复杂的企业级SSD系统,如何做Device self-test?

文章出处:【微信公众号:大普微】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 电容
    +关注

    关注

    100

    文章

    6045

    浏览量

    150319
  • SSD
    SSD
    +关注

    关注

    21

    文章

    2862

    浏览量

    117417

原文标题:日益复杂的企业级SSD系统,如何做Device self-test?

文章出处:【微信号:dputech,微信公众号:DapuStor】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    AI驱动存储需求激增,企业级SSD市场迎来国内厂商崛起

    随着人工智能(AI)应用的迅速普及,市场对高性能、高可靠性的存储产品的需求日益增长,企业级固态硬盘(SSD)因此受到了前所未有的关注。当前,全球SSD市场主要由五大原厂主导,但在中国,随着AI浪潮的推动,
    的头像 发表于 10-28 14:18 466次阅读

    探索KPM71RUG7T68 SSD企业级存储的可靠选择

    KPM71RUG7T68 SSD是一款高性能企业级固态硬盘,专为满足数据中心及企业级应用的需求而设计。它采用了先进的NAND闪存技术,提供卓越的读写速度和可靠性,确保在各种工作负载下都能稳定运行
    的头像 发表于 10-22 10:55 240次阅读
    探索KPM71RUG7T68 <b class='flag-5'>SSD</b>:<b class='flag-5'>企业级</b>存储的可靠选择

    芯盛智能与芯国际发布SATA企业级SSD主控芯片XT6160

    国内领先的固态存储主控芯片及解决方案提供商芯盛智能,携手中国大陆集成电路制造业领军企业芯国际,推出业界首款支持端侧AI推理应用的SATA III(6Gb/s)企业级SSD主控芯片——
    的头像 发表于 10-22 09:30 410次阅读

    KCD81RUG7T68 SSD企业级存储解决方案的卓越选择

    在当今数据驱动的商业环境,选择一款可靠且高效的企业级SSD至关重要。KCD81RUG7T68 SSD凭借其出色的性能和高可靠性,成为众多企业
    的头像 发表于 10-16 10:32 231次阅读

    得瑞领新亮相2024云栖大会,展现企业级NVMe SSD创新实力

    在2024云栖大会上,得瑞领新展示了企业级NVMe SSD解决方案在云计算、大数据和金融等领域的优势,提升数据处理效率的同时优化了能耗管理,为企业数字化转型提供了强有力支持,吸引了众多参会者关注。
    的头像 发表于 09-24 15:23 341次阅读
    得瑞领新亮相2024云栖大会,展现<b class='flag-5'>企业级</b>NVMe <b class='flag-5'>SSD</b>创新实力

    忆恒创源发布国产PCIe 5.0企业级NVMe SSD PBlaze7 7A40系列

    9月3日,在备受瞩目的ODCC大会上,国内领先的企业级PCIe SSD产品与服务提供商忆恒创源,荣耀发布了其自主研发的PCIe 5.0企业级NVMe SSD新品——PBlaze7 7A
    的头像 发表于 09-04 14:44 585次阅读

    忆联推出企业级SATA SSD UM311b,提供稳定可靠的存储服务

    在当今数字化快速发展的时代,企业级高可靠业务场景对于数据存储的需求日益增强。为了满足这一需求,忆联科技近日正式推出了一款高性能、高可靠、高性价比的企业级SATA SSD——UM311b。这款新品不仅为互联网、运营商等行业客户提供
    的头像 发表于 06-29 11:09 963次阅读

    忆联推出高性能企业级SATA SSD UM311b

    近日,面向企业级高可靠业务场景,忆联推出高性能、高可靠、高性价比的企业级SATA SSD UM311b,该产品可为互联网、运营商等行业客户提供稳定可靠的存储服务。
    的头像 发表于 06-29 10:22 670次阅读
    忆联推出高性能<b class='flag-5'>企业级</b>SATA <b class='flag-5'>SSD</b> UM311b

    聊聊下一代企业级SSD外形EDSFF #EDSFF #SSD #硬盘抽取盒

    硬盘SSD
    ICY DOCK硬盘盒
    发布于 :2024年06月13日 17:15:19

    算力引领,智能启航:得瑞领新企业级SSD产品荣耀登场2024国移动算力网络大会

    2024国移动算力网络大会于4月28-29日在苏州成功举办。作为数据存储领域的领军企业,得瑞领新携旗下全系列企业级SSD及解决方案出席,为助力企业
    的头像 发表于 04-30 12:28 413次阅读
    算力引领,智能启航:得瑞领新<b class='flag-5'>企业级</b><b class='flag-5'>SSD</b>产品荣耀登场2024<b class='flag-5'>中</b>国移动算力网络大会

    江波龙企业级存储产品取得显著市场突破

    自2023年1月江波龙推出企业级存储产品FORESEE ORCA 4836系列NVMe SSD与FORESEE UNCIA 3836系列SATA 3.2 SSD以来,这两款产品已经在技术研发和市场
    的头像 发表于 02-27 10:40 909次阅读

    江波龙企业级存储正式量产一周年,交出亮眼“成绩单”

    自2023年1月江波龙首次发布企业级存储产品FORESEEORCA4836系列NVMeSSD与FORESEEUNCIA3836系列SATA3.2SSD以来,企业级存储产品于过去的一年
    的头像 发表于 02-19 12:56 475次阅读
    江波龙<b class='flag-5'>企业级</b>存储正式量产一周年,交出亮眼“成绩单”

    江波龙企业级存储正式量产一周年,交出亮眼“成绩单”

    自2023年1月江波龙首次发布企业级存储产品FORESEE ORCA 4836系列NVMe SSD与FORESEE UNCIA 3836系列SATA 3.2 SSD以来,企业级存储产品
    发表于 02-06 10:35 289次阅读
    江波龙<b class='flag-5'>企业级</b>存储正式量产一周年,交出亮眼“成绩单”

    企业级SSD-高性能系列固态硬盘推荐

    除了传统的机械盘HDD,固态硬盘SSD也开始慢慢地在企业级硬盘领域发挥重要的作用。由于企业级固态硬盘的价格远远高于机械硬盘,因此固态硬盘在企业级领域应用还不是很广泛,但是就发展趋势而言
    的头像 发表于 01-23 16:48 1267次阅读
    <b class='flag-5'>企业级</b><b class='flag-5'>SSD</b>-高性能系列固态硬盘推荐

    ADXL355的self test作用是什么?

    各位大神: 目前在使用贵ADI的MEMS传感器,在ADXL355的规格书里面,有关于self test的说明和响应参数,我不是很明白怎么做。 我的问题是: 1、self test的作用
    发表于 12-28 07:44