OCP NVME SSD规范解读-14.Firmware固件升级要求

4.11节 Firmware Update Requirements 描述了数据中心NVMe SSD固件更新的具体要求,确保固件升级过程既安全又可靠,同时充分考虑了设备在升级过程中的可用性和功能性。

图片

  1. FWUP-1: 设备必须记录每一次固件激活过程。这意味着固件升级过程中,设备会记录固件何时被下载并激活,以便后续追踪和审计。

  2. FWUP-2: 除非是介质使用寿命耗尽,否则设备不得对支持下载的固件次数施加任何限制。这意味着设备应支持多次固件更新,无需担心更新次数受限的问题。

  3. FWUP-3: 设备需要支持四种不同的固件提交操作模式,分别是只下载(Download only)、下载后重置时激活(Download and activate upon reset)、立即激活无须重置(Activate immediately without reset)以及未在此处列出的其他可能的操作模式。

图片

  1. FWUP-4: 固件镜像下载命令执行时,应确保不会影响设备性能。这意味着固件下载过程中,SSD应继续保持对主机I/O请求的响应,不影响正常的读写操作。

  2. FWUP-6: 设备至少支持2个读写槽用于固件更新操作,并可扩展至最多7个。这意味着设备能够同时准备和处理多个固件版本,以备在主固件有问题时快速切换至备份固件。

  3. 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链路断开或重新协商,确保数据传输速率、链路宽度和带宽等连接特性不发生变化,以维持系统不间断运行的高性能要求。

  1. 自动故障转移机制:如果当前活跃固件镜像受损,设备将自动切换到另一个备份固件镜像,直至所有备份镜像用尽为止。

  2. 安全性方面,固件更新过程应遵守严格的验证和授权流程,例如确保固件来源可信,且只有经过认证的固件才能被激活。此外,固件更新过程中应保护用户数据不受损失,即使在更新失败的情况下,也要确保设备能够恢复到之前的稳定状态或工厂默认设置。

  3. 对于固件更新过程中可能出现的错误处理,设备应具备错误注入功能(Error Injection),以及端到端生命周期/永久损耗模式(EOL/PLP Failure Mode)的设置和获取功能,用于模拟和测试固件在各种极端条件下的表现。

  4. 在固件更新前后,设备应支持清除PCIe纠正错误计数器的功能,以及启用IEEE1667隔离功能(如适用),以确保固件更新前后系统的状态一致性。

  5. 固件更新后,设备应能够保存和恢复特定的DSSD特性设置,如功率状态、错误注入设置、以及延迟监控等特性,以保持设备在更新前后行为的一致性。

  6. 固件更新后,设备应当有能力恢复并继续执行延迟监控功能,即使在电源开关过程中,也应确保相关监控数据的连贯性,并在两分钟内重新开始采集延迟数据。

  7. 针对固件激活的通知事件,设备应支持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站账号

图片

如您有任何的建议与指正,敬请在文章底部留言,感谢您不吝指教!如有相关合作意向,请后台私信,小编会尽快给您取得联系,谢谢!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/481357.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SpringSecurity6.x

文章目录 一.什么是SpringSecurity二.SpringSecurity的特征三.SpringSecurity的第一个例子3.1 创建SpringBoot项目3.2 创建IndexController3.3 创建index.html3.4 启动项目3.5 Spring Security默认做了什么 四.SpringSecurity的整体架构4.1 Filter4.2 DelegatingFilterProxy4.3…

走进 Mybatis 内核世界:理解原理,释放更多生产力

目录 一、MyBatis 特点 二、 接口绑定实现原理 三、SpringBoot 加载 MyBatis 源码分析 四、MyBatis 执行性 五、MyBatis 分页原理 5.1 逻辑分页(内存分页) 5.2 物理分页 六、MyBatis 缓存 6.1 一级缓存 6.2 二级缓存 MyBatis 是一款优秀的持久层框架,它支持自…

网站引入 Prism,使得代码高亮显示,并一键复制代码块

曾几何时,苦恼如何将本地写好的博文,更好的展示读者屏幕前?若只是简简单单的文章,其实还是很好的解决它的!可是,像我们这样写技术文章(有点牵强)的,在文章内容嵌入部分代…

【文献分享】Quantum Self-Consistent Ab-Initio Lattice Dynamics

题目:Quantum Self-Consistent Ab-Initio Lattice Dynamics 链接:Redirecting 量子自洽从头算晶格动力学 量子自洽Ab-Initio晶格动力学软件包(QSCAILD)是一个python库,用于计算晶体中与温度相关的有效2级和3级原子间…

【Java多线程】多线程的三种实现方式和多线程常用方法

目录 1、多线程的三种实现方式 1.1、继承Thread类的方式进行实现 1.2、实现Runnable接口的方式进行实现 1.3、利用Callable接口和Future接口方式实现 1.4、三种实现方式的优缺点 2、多线程常用方法 1、多线程的三种实现方式 在main()方法中,你可以创建和启动…

STL —— string(2)

本篇文章主要讲解string的用法。 目录 1. 迭代器(Iterators) 1.1 begin() 和 end() 1.2 rbegin() 和 rend() 2. 容量操作(capacity) 2.1 size()、length()、maxsize() 2.2 capacity() 2.3 empty()、clear() 2.4 reserve…

罗德与施瓦茨联合广和通全面验证RedCap模组FG132系列先进性能

近日,罗德与施瓦茨联合广和通完成Redcap(Reduce Capability)功能和性能验证。本次测试使用R&SCMX500 OBT(One Box Tester)无线通信测试仪,主要验证广和通RedCap模组FG132系列射频性能以及IP层吞吐量,包括RedCap上下行吞吐量和射频指标如矢…

【技巧】ChatGPT Prompt 提示语大全

转载请注明出处:小锋学长生活大爆炸[xfxuezhang.cn] 主要来自:https://github.com/f/awesome-chatgpt-prompts ChatGPT SEO提示 Contributed by: StoryChief AI Reference: 7 Powerful ChatGPT Prompts to Create SEO Content Faster 供稿人:…

ruoyi-nbcio-plus基于vue3的flowable增加开始节点的表单绑定修改

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio 演示地址:RuoYi-Nbcio后台管理系统 http://122.227.135.243:9666/ 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码&#xff1a…

Python文件读写操作

文件操作注意点 注意点: 1. for line in file --> 会将偏移量移到末尾 2. buffering1 --> 缓冲区中遇到换行就刷新,即向磁盘中写入 3. 读操作结束后,文本偏移量就会移动到读操作结束位置 """编写一个程序,循环不停的写入…

快速区分清楚图形渲染中的AABB,KD树和BVH这些概念

快速区分清楚图形渲染中的AABB,KD树和BVH这些概念 主要想形象去区分好这些术语,目的是扫盲,先开好坑,内容持续填充。 0.先摆出这些词的全称 AABB: 原名:axis aligned bounding box;中文直译名…

Java语法学习八之认识String类

String类的重要性 在C语言中已经涉及到字符串了,但是在C语言中要表示字符串只能使用字符数组或者字符指针,可以使用标准库提供的字符串系列函数完成大部分操作,但是这种将数据和操作数据方法分离开的方式不符合面相对象的思想,而…

高效的Gitlab Flow最佳实践

文章目录 一、git flow二、github flow三、gitlab flow四、基于gitlab flow的最佳实践1.语义化版本号2.测试发布3.bug修复 参考 业界包含三种flow: Git flowGithub flowGitlab flow 三种工作流程,有一个共同点:都采用"功能驱动式开发&…

计算机二级Python基础操作题

题目来源:计算机二级Python半个月抱佛脚大法(内呈上真题版) - 知乎 第4,5,6,7,9,10,11套 1. 基础题1 sinput() print("{:\"^30x}".format(eval(s))) b …

xilinx linux AXI GPIO 驱动学习

vivado工程 vivado 配置一个 AXI GPIO&#xff0c; 全输出&#xff0c;宽度为1 设备树解读 生成的对应pl.dtsi设备树文件如下 axi_gpio: gpio40020000 {#gpio-cells <2>;clock-names "s_axi_aclk";clocks <&clkc 15>;compatible "xlnx,…

海外盲盒App开发:探索惊喜与乐趣的跨国新体验

在全球化日益加速的今天&#xff0c;人们对新鲜、有趣、充满惊喜的体验需求不断增长。盲盒作为一种充满神秘与乐趣的玩法&#xff0c;正迅速在全球范围内走红。为了满足广大海外用户的盲盒体验需求&#xff0c;我们致力于开发一款海外盲盒App&#xff0c;为用户带来跨国界的惊喜…

C#,图论与图算法,计算无向连通图中长度为n环的算法与源代码

1 无向连通图中长度为n环 给定一个无向连通图和一个数n,计算图中长度为n的环的总数。长度为n的循环仅表示该循环包含n个顶点和n条边。我们必须统计存在的所有这样的环。 为了解决这个问题,可以有效地使用DFS(深度优先搜索)。使用DFS,我们可以找到特定源(或起点)的长度…

高精度AI火灾烟雾检测算法,助力打造更加安全的楼宇环境

一、方案背景 近日&#xff0c;南京居民楼火灾事故导致15人死亡的新闻闹得沸沸扬扬&#xff0c;这一事件又激起了大家对楼宇火灾隐患的进一步担忧。事后我们除了思考政府、消防及物业部门应对此事的解决办法&#xff0c;我们还应该思考如何利用现有的技术帮助人们减少此类事情的…

手撕算法-无重复字符的最长子串

描述 分析 滑动窗口&#xff0c;记录窗口中的所有出现的字符&#xff0c;然后窗口左边界固定&#xff0c;右边界右滑&#xff0c;如果&#xff0c;窗口中不存在新的字符&#xff0c;则右滑成功&#xff0c;否则左边界右滑&#xff0c;直到窗口中不存在右边界的值。 描述感觉不…

Linux初学(八)磁盘管理

一、磁盘管理 1.1 简介 磁盘的工作原理&#xff1a; 添加磁盘对磁盘进行分区格式化磁盘挂载和使用磁盘 磁盘的类型&#xff1a; 固态机械 磁盘的接口类型&#xff1a; IDESTSTSCSI 磁盘工作的原理&#xff1a; 磁盘&#xff0c;特别是硬盘&#xff0c;和内存不同&#xff0c;…