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

news2024/12/25 1:38:01

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站账号

图片

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

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

一文搞懂 YOLOv9 训练推理全流程 | YOLOv9你绝对不知道的细节!

文章地址:https://arxiv.org/pdf/2402.13616.pdf 代码地址:https://github.com/WongKinYiu/yolov9 前言 在这篇博客中,我们来聊聊 YOLOv9。首先,值得注意的一点是,YOLOv9的变化相对较小,它仍然基于YOLOv5的…

在线影院项目话术(0.7w精选)

项目介绍 这个电影院项目不同于常见的基于会员限制用户观看范围的在线影院项目,主要就是按需购买片源来进行观看,用户就不会因高额的会员费而劝退。 项目的主要实现就是:微服务的五大主键,数据库使用mysql,redis,中间…

2024年湖北荆门市工程系列职称评审开始啦

(一)中级测试对象:拟参加近两年度相关系列(专业)中级技术职务评审,且未取得中级水平能力测试合格证书的专业技术人员。 (二)初级测试对象:拟参加近两年度档案专业、工程系列助理级职称评审,且未取得初级水平能力测试合格证书的专业…

白酒:陈酿过程中的老熟度评价与品质提升方法

在豪迈白酒的酿造过程中,陈酿是一个至关重要的环节。陈酿不仅能使白酒老熟,提品质,还能发展出与众不同的风味和口感。云仓酒庄深知陈酿的重要性,并进行了深入的研究和实践。本文将探讨陈酿过程中的老熟度评价与品质提升方法。 首先…

蓝桥杯day7刷题日记

P8697 [蓝桥杯 2019 国 C] 最长子序列 思路&#xff1a;直接遍历&#xff0c;和子序列相同就记录&#xff0c;不然就下一位 #include <iostream> #include <string> using namespace std; int res;int main() {string s,t;cin>>s>>t;int i0,j0;while…

IDEA 远程调试

1.什么是远程调试 Java提供了一个远程调试功能&#xff0c;支持设置断点及线程级的调试同时&#xff0c;不同的JVM通过接口的协议联系&#xff0c;本地的Java文件在远程JVM建立联系和通信。 2.服务端开启远程调试 开启远程调试功能&#xff0c;需要修改tomcat 的catalina.sh…

目录框架【欢迎订阅收藏】

前端篇 第一章vue.js 1.Vue.js入门及环境搭建 2.vue.js基础知识 3.Vue.js自定义组件 Vue.js路由 5.Vue.js状态管理 6.网络通信axios 第二章Tailwindcss 1.tailwindcss介绍及引入 2.基础样式 3.组件样式 4.工具样式 第三章Nuxt 1.nuxt介绍及环境搭建 2.nuxt 目录结构 3.nuxt …

ElasticSearch文档批量操作[ES系列] - 第503篇

历史文章&#xff08;文章累计500&#xff09; 《国内最全的Spring Boot系列之一》 《国内最全的Spring Boot系列之二》 《国内最全的Spring Boot系列之三》 《国内最全的Spring Boot系列之四》 《国内最全的Spring Boot系列之五》 《国内最全的Spring Boot系列之六》 《…

超声波清洗机怎么选?过来人推荐四大表现突出的宝藏眼镜清洗机!

如果你清洁眼镜的时候总是习惯用纸巾或者是衣服擦的话&#xff0c;我劝你要赶紧把这个坏习惯给改掉&#xff01;很多不知道原因的朋友会问&#xff0c;为什么不能用纸巾擦眼镜&#xff1f;其实是因为纸巾还有衣服布料上&#xff0c;存在一些比较粗糙的微粒&#xff0c;人体手部…

车载测试 HIL测试详解

HIL测试&#xff1a;即硬件在环测试&#xff0c;是一种广泛应用于汽车电子控制系统领域的测试方法。它将实际的硬件&#xff08;如ECU、传感器、执行器等&#xff09;与模拟器件&#xff08;如模型、仿真器等&#xff09;通过接口连接起来&#xff0c;模拟实际的操作环境&#…

动态规划-----最长公共子序列(及其衍生问题)

目录 一.最长公共子序列的基本概念&#xff1a; 解决动态规划问题的一般思路&#xff08;三大步骤&#xff09;&#xff1a; 二.最长公共子序列题目&#xff1a; 三.字符串的删除操作&#xff1a; 四.最小 ASCII 删除和&#xff1a; 一.最长公共子序列的基本概念&#xff…

微前端——qiankun

一、微前端 微前端是指存在于浏览器中的微服务&#xff0c;其借鉴了后端微服务的架构理念&#xff0c;将微服务的概念扩展到前端。即将一个大型的前端应用拆分为成多个模块&#xff0c;每个微前端模块可以有不同的团队开发并进行管理&#xff0c;且可以自主选择框架&#xff0…

seata测试demo(订单)

seata工作流程: seata对分布式事务的协调和控制就是31 1>XID&#xff1a;XID是全局事务的唯一标识&#xff0c;它可以在服务的调用链路中传递&#xff0c;绑定到服务的事务上下文中。 3>TC->TM->RM TC:事务协调器>就是seata 负责维护全局事务和分支事务的状…

选项式API和组合式API的区别

选项式(options) API 和组合式(composition) API两种不同的风格书写&#xff0c;Vue3 的组件可以使用这两种api来编写。 选项式API和组合式API的区别 选项式API 选项式 API&#xff0c;具有相同功能的放在一起&#xff0c;可以用包含多个选项的对象来描述组件的逻辑&…

【周总结】

周总结 完成项目混合版时区改造 完成相关jira问题的修改 完成老版本APP数据保存接口的兼容&#xff0c;手动赋值时区 2024/03/24 天气阴 一点不冷 1.Its time to go、Spring is coming&#xff01; 2. Its a nice day that staying with friends in a peaceful …

初探Ruby编程语言

文章目录 引言一、Ruby简史二、Ruby特性三、安装Ruby四、命令行执行Ruby五、Ruby的编程模型六、案例演示结语 引言 大家好&#xff0c;今天我们将一起探索一门历史悠久、充满魅力的编程语言——Ruby。Ruby是由松本行弘&#xff08;Yukihiro Matsumoto&#xff09;于1993年发明…

LangChain核心模块 Retrieval——文档加载器

Retrieval ​ 许多LLM申请需要用户的特定数据&#xff0c;这些数据不属于模型训练集的一部分&#xff0c;实现这一目标的主要方法是RAG(检索增强生成)&#xff0c;在这个过程中&#xff0c;将检索外部数据&#xff0c;然后在执行生成步骤时将其传递给LLM。 ​ LangChain 提供…

Linux系统安装openGauss结合内网穿透实现公网访问本地数据库管理系统——“cpolar内网穿透”

文章目录 前言1. Linux 安装 openGauss2. Linux 安装cpolar3. 创建openGauss主节点端口号公网地址4. 远程连接openGauss5. 固定连接TCP公网地址6. 固定地址连接测试 前言 openGauss是一款开源关系型数据库管理系统&#xff0c;采用木兰宽松许可证v2发行。openGauss内核深度融合…

力扣:205. 同构字符串

前言&#xff1a;剑指offer刷题系列 问题&#xff1a; 给定两个字符串 s 和 t &#xff0c;判断它们是否是同构的。 如果 s 中的字符可以按某种映射关系替换得到 t &#xff0c;那么这两个字符串是同构的。 每个出现的字符都应当映射到另一个字符&#xff0c;同时不改变字符…

Linux快速入门,上手开发 02.VMware的安装部署

倘若穷途末路&#xff0c;那便势如破竹 —— 24.3.21 一、VMware的作用 在Windows或IOS系统下&#xff0c;给本地电脑安装VMware虚拟机&#xff0c;用来在虚拟机上安装Linux系统&#xff0c;避免重复资源的浪费&#xff0c;可以在虚拟机上搭建Linux系统进行学习 二、VMware的安…