4.11节 Firmware Update Requirements 描述了数据中心NVMe SSD固件更新的具体要求,确保固件升级过程既安全又可靠,同时充分考虑了设备在升级过程中的可用性和功能性。
-
FWUP-1: 设备必须记录每一次固件激活过程。这意味着固件升级过程中,设备会记录固件何时被下载并激活,以便后续追踪和审计。
-
FWUP-2: 除非是介质使用寿命耗尽,否则设备不得对支持下载的固件次数施加任何限制。这意味着设备应支持多次固件更新,无需担心更新次数受限的问题。
-
FWUP-3: 设备需要支持四种不同的固件提交操作模式,分别是只下载(Download only)、下载后重置时激活(Download and activate upon reset)、立即激活无须重置(Activate immediately without reset)以及未在此处列出的其他可能的操作模式。
-
FWUP-4: 固件镜像下载命令执行时,应确保不会影响设备性能。这意味着固件下载过程中,SSD应继续保持对主机I/O请求的响应,不影响正常的读写操作。
-
FWUP-6: 设备至少支持2个读写槽用于固件更新操作,并可扩展至最多7个。这意味着设备能够同时准备和处理多个固件版本,以备在主固件有问题时快速切换至备份固件。
-
FWUP-7: 当固件激活不需要重置设备(即FWUP-3中提到的激活方式之一)时,设备必须在接收到固件提交命令后1秒内完成固件激活过程,并准备好接收主机I/O和NVMe管理命令。同时,最大固件激活时间(Max Time for Firmware Activation, MTFA)不得超过Ah(即特定时间值,具体数值取决于文档中的定义)。
在运行中的系统上进行无重启固件激活时,要求设备能够无缝过渡,确保以下几点:
-
设备当前状态保持不变:在固件激活过程中,不论设备目前处于何种状态,如Opal锁定状态(一种加密锁定机制),每个特性(Features)的当前值,时间戳,I/O提交/完成队列设置等核心运行状态都应该得到保留,不受固件升级过程的影响。这意味着,例如,如果有任何数据加密锁定设置,这些设置在固件更新后应保持原样;已配置的各项特性参数应保持不变;正在进行的I/O操作提交和完成队列的设置不应中断或丢失。
-
NVMe-MI状态保持一致:与NVMe管理接口(NVMe-MI)相关的状态也必须得到妥善维护,如MCTP(Management Component Transport Protocol)传输单元大小、SMBus/I2C通信频率等微控制器间通信参数应保持原有设置。此外,MCTP状态,如MCTP端点ID、逻辑区块地址(LBA)格式等底层硬件和通信协议相关的状态也需要在固件激活过程中保持不变。
-
PCIe链路状态不受影响:固件激活过程中,PCIe(Peripheral Component Interconnect Express)链路状态应保持稳定,即固件更新不会导致PCIe链路断开或重新协商,确保数据传输速率、链路宽度和带宽等连接特性不发生变化,以维持系统不间断运行的高性能要求。
-
自动故障转移机制:如果当前活跃固件镜像受损,设备将自动切换到另一个备份固件镜像,直至所有备份镜像用尽为止。
-
安全性方面,固件更新过程应遵守严格的验证和授权流程,例如确保固件来源可信,且只有经过认证的固件才能被激活。此外,固件更新过程中应保护用户数据不受损失,即使在更新失败的情况下,也要确保设备能够恢复到之前的稳定状态或工厂默认设置。
-
对于固件更新过程中可能出现的错误处理,设备应具备错误注入功能(Error Injection),以及端到端生命周期/永久损耗模式(EOL/PLP Failure Mode)的设置和获取功能,用于模拟和测试固件在各种极端条件下的表现。
-
在固件更新前后,设备应支持清除PCIe纠正错误计数器的功能,以及启用IEEE1667隔离功能(如适用),以确保固件更新前后系统的状态一致性。
-
固件更新后,设备应能够保存和恢复特定的DSSD特性设置,如功率状态、错误注入设置、以及延迟监控等特性,以保持设备在更新前后行为的一致性。
-
固件更新后,设备应当有能力恢复并继续执行延迟监控功能,即使在电源开关过程中,也应确保相关监控数据的连贯性,并在两分钟内重新开始采集延迟数据。
-
针对固件激活的通知事件,设备应支持Namespace Attribute Notices事件和Fiirmware Activation Notices事件,确保主机可以及时了解和响应固件更新状态的变化。
综上所述,4.11节着重规定了固件更新的各个环节,从固件下载、激活、错误处理、安全性保障,到与其它功能如延迟监控的协同配合,以及与主机通信的事件通知机制等方面,均制定了详细而严谨的要求,确保数据中心NVMe SSD固件更新过程的安全、高效和可控。
小编每日撰文不易,如果您看完有所受益,欢迎点击文章底部左下角“关注”并点击“分享”、“在看”,非常感谢!
精彩推荐:
-
解读“CFMS中国闪存市场峰会”存储技术看点
-
首个业内DNA存储技术规范发布
-
如何突破SSD容量提升的瓶颈?
-
固态存储是未来|浅析SSD架构的演进与创新技术
-
论文解读:NAND闪存中读电压和LDPC纠错码的高效设计
-
华为新发布磁电存储“王炸”,到底是什么?
-
关于SSD LDPC纠错能力的基础探究
-
存储系统如何规避数据静默错误?
-
PCIe P2P DMA全景解读
-
深度解读NVMe计算存储协议
-
对于超低延迟SSD,IO调度器已经过时了吗?
-
浅析CXL P2P DMA加速数据传输的原理
-
HDD回暖于2024,与SSD决战于2028
-
SSD固态硬盘的黄金原则:抱最高的希望,做最坏的打算
-
PCIe 6.0生态业内进展分析总结
-
详细解读QLC SSD无效编程问题
-
NVMe SSD IO压力导致宕机案例解读
-
浅析PCIe 6.0功能更新与实现的挑战
-
过度加大SSD内部并发何尝不是一种伤害
-
FIO测试参数与linux内核IO栈的关联分析
-
PCIe surprise down异常与DPC功能分析
-
过度加大SSD内部并发何尝不是一种伤害
-
NVMe over CXL技术如何加速Host与SSD数据传输?
-
为什么QLC NAND才是ZNS SSD最大的赢家?
-
SSD在AI发展中的关键作用:从高速缓存到数据湖
-
NVMe SSD:ZNS与FDP对决,你选谁?
-
如何通过优化Read-Retry机制降低SSD读延迟?
-
关于硬盘质量大数据分析的思考
-
存储系统性能优化中IOMMU的作用是什么?
-
全景解析SSD IO QoS性能优化
-
存储随笔《NVMe专题》大合集及PDF版正式发布!
如果您也想针对存储行业分享自己的想法和经验,诚挚欢迎您的大作。
投稿邮箱:Memory_logger@163.com (投稿就有惊喜哦~)
《存储随笔》自媒体矩阵
更多存储随笔科普视频讲解,请移步B站账号:
如您有任何的建议与指正,敬请在文章底部留言,感谢您不吝指教!如有相关合作意向,请后台私信,小编会尽快给您取得联系,谢谢!