NVMe 固件更新的协议由 NVM Express 标准指定,NVMe 设备通常都会支持。只要设备支持带外的NVMe-MI,带外固件更新应该可以正常工作。通常带外的 NVMe-MI 协议是通过 MCTP 协议实现, 物理链路根据不同的设备可能是 SMBus, PCIe,此文档基于 SMBus 和 PCIe 的实现进行说明, 也就是常说的 NVMe-MI over MCPT over ...
上图中可以看出 NVMe MI 协议是可以基于 SMBus/I2C 或者 PCIe VDM 来实现的。从左侧的 SMBus/I2C 这边路径来说,固件要实现 DSP0237 MCTP over SMBus/I2C Binding、DSP0236 MCTP Base Specification 和前面说到的 NVMe MI 1.0a(或者最新版NVMe MI 1.1)。基于 PCIe VDM 这部分的实现略微有点复杂,...
Server 的 BMC 系统可以通过 SMBus/I2C 与 NVMe SSD 通信 依据另一份规范《NVM Express Management Interface 1_0a》(NVMe MI),利用 SMbus 可以来处理基础的管理命令(主要的一项就是对于 Subsystem Management Data Structure 的监控),还可以处理基于 MCTP 的相关请求。 可以看出两套协议都对 MCTP 有所涉及,那...
关于NVMe-MI接口的带外管理,这段故事源于 PCIe 产品的两个引脚 SMClk 和 SMDat,实现规范是 SMbus。 图示1来源于《Enterprise SSD Form Factor Version1_a》里面SFF8639 的引脚说明 图中左下角标注的颜色指示这对引脚是 optional 的,可以实现也可以不实现,但是对于企业级的产品这是有必要实现的(The Enterprise P...
NVMe-MI Over SMBus Multi-Master Controller with other SMBus and I2C Masters in a Single FPGA ChipA method for conducting bus arbitration in a hardware tester system comprising a single master controller and a multi-master controller comprises configuring the single master controller with arbitration...
SMD是NVMe-MI协议中的一个特殊情况,它允许BMC通过原生的SMBUS byte read和block read命令下发给SSD,获取设备状态、温度等信息。之所以说它特殊,是因为NVMe-MI中的其它command都是通过MCTP的包下发。 Management Endpoint是MCTP中的概念,在MCTP协议中,Management Controller通常指BMC,是发命令的一方,Management Endpoint则...
NVMe-MI Out-of-Band Protocol Layering(NVMe-MI 1.2b) 上图展示了NVMe-MI协议规定的带外命令处理机制,Management Controller(通常是服务器的BMC)将NVMe-MI的命令以MCTP包的形式经过SMBUS或者PCIe VDM发给Management Endpoint(如NVMe SSD)。而这里的SMBUS和PCIe VDM就是前面提到的多样化的管理通道和接口。
NVM Express(NVMe)是一个寄存器级接口,允许带内主机软件与NVM子系统通信。NVMe管理界面(NVMe-MI)允许管理控制器通过一个或多个外部接口与NVMe NVM子系统进行带外通信。 NVMe是一种Host与SSD之间通讯的协议 图1:NVMe管理接口协议分层 NVMe-MI利用管理组件传输协议(MCTP)作为命令传输和利用现有的MCTP SMBus / I2C和...
NVM Express(NVMe)是一个寄存器级接口,允许带内主机软件与NVM子系统通信。NVMe管理界面(NVMe-MI)允许管理控制器通过一个或多个外部接口与NVMe NVM子系统进行带外通信。 NVMe是一种Host与SSD之间通讯的协议 图1:NVMe管理接口协议分层 NVMe-MI利用管理组件传输协议(MCTP)作为命令传输和利用现有的MCTP SMBus / I2C和...
Nvme-MI(Management Interface),定义了一套完整的NVMe SSD管理方式,独立于NVMe协议且为NVMe SSD服务。与NVMe协议不同,NVMe-MI协议是通过MCTP协议进行传输,同时底层物理层支持PCIe或者SMBus/I2C,本文后续默认物理层都是SMBus/I2C。 2021-05-24 - 新技术 【技术】NVMe协议提供管理类命令Device self-test,保障...