在最新發(fā)布的 PBlaze5 520 低功耗系列 NVMe SSD中,有一個(gè)全新功能——NVMe-MI接口的帶外管理,這是從PBlaze5 520系列最新增加的功能,那么這個(gè)帶外管理指的是什么,又怎么實(shí)現(xiàn)呢?
關(guān)于NVMe-MI接口的帶外管理,這段故事源于 PCIe 產(chǎn)品的兩個(gè)引腳 SMClk 和 SMDat,實(shí)現(xiàn)規(guī)范是 SMbus。
圖示1來(lái)源于《Enterprise SSD Form Factor Version1_a》里面SFF8639 的引腳說(shuō)明
圖中左下角標(biāo)注的顏色指示這對(duì)引腳是 optional 的,可以實(shí)現(xiàn)也可以不實(shí)現(xiàn),但是對(duì)于企業(yè)級(jí)的產(chǎn)品這是有必要實(shí)現(xiàn)的(The Enterprise PCIe SSD should support SM-Bus operation)。
依據(jù)《Enterprise SSD Form Factor Version1_a》 (SFF Spec),SMbus 提供了兩個(gè)層面的功能,一種初級(jí)功能是對(duì)盤(pán)內(nèi) vpd 的讀寫(xiě),這個(gè)功能在 3.3Vaux 或主電源存在的時(shí)都可用。對(duì)于企業(yè)倉(cāng)庫(kù)管理,如果主板帶電但是主機(jī)未開(kāi)機(jī),管理人員可以遠(yuǎn)程通過(guò)BMC檢查盤(pán)的靜態(tài)信息,如 SN、MN、電源需求等;另一種高級(jí)功能是基于 MCTP-over-SMbus 協(xié)議之上的管理功能,(此 spec 未做更多解釋?zhuān)斯δ茉谥麟娫创嬖跁r(shí)可用。
Server 的 BMC 系統(tǒng)可以通過(guò) SMBus/I2C 與 NVMe SSD 通信
依據(jù)另一份規(guī)范《NVM Express Management Interface 1_0a》(NVMe MI),利用 SMbus 可以來(lái)處理基礎(chǔ)的管理命令(主要的一項(xiàng)就是對(duì)于 Subsystem Management Data Structure 的監(jiān)控),還可以處理基于 MCTP 的相關(guān)請(qǐng)求。
可以看出兩套協(xié)議都對(duì) MCTP 有所涉及,那基于 MCTP到底能做什么呢?
按照 NVMe MI,它可以提供如下指令集合:
NVM Express Admin Command Set
Management Interface Command set
PCIe Command Set (optional)
NVM Express Management Enhancements
具體到每個(gè)命令集合里面又分為了 mandatory 和 optional 部分,舉個(gè)例子,對(duì)于 NVM Express Admin Command Set,mandatory 的命令包括 Get Feature、Get Log Page、Identify,optional 的命令包括 firmware activate、firmware image download、Format NVM、Namespace Management、Namespace Attachment、Security Send、Security Receive、Set Feature 還有 Vendor Specific 部分。
利用這些 admin 命令,管理者就可以遠(yuǎn)程獲取 NVMe 設(shè)備的信息、配置參數(shù)或者利用 Vendor Specific 部分實(shí)現(xiàn)特定功能的監(jiān)控。比如主機(jī)開(kāi)機(jī)的情況下,無(wú)需登錄主機(jī)就可以升級(jí)固件, 再配合 Activate firmware without reset 就可以支持遠(yuǎn)程升級(jí)了。實(shí)現(xiàn)了這部分接口,可以做的事情還有很多,不過(guò)需要注意到很多 optional 命令有一些潛在的安全風(fēng)險(xiǎn),實(shí)現(xiàn)起來(lái)可能需要配合一些措施保證數(shù)據(jù)的安全性,畢竟數(shù)據(jù)領(lǐng)域安全第一。
從企業(yè) IT 系統(tǒng)運(yùn)維的角度講,帶外管理提供了一套獨(dú)立于主機(jī)系統(tǒng)的管理方案,能夠配合服務(wù)器 BMC 系統(tǒng),高效實(shí)現(xiàn) NVMe 設(shè)備監(jiān)控、管理及升級(jí)等工作。
看起來(lái)實(shí)現(xiàn)這些功能是有必要的,那需要怎么實(shí)現(xiàn)呢?
圖示2來(lái)自《NVM Express Management Interface 1_0a》
上圖中可以看出 NVMe MI 協(xié)議是可以基于 SMBus/I2C 或者 PCIe VDM 來(lái)實(shí)現(xiàn)的。
從左側(cè)的 SMBus/I2C 這邊路徑來(lái)說(shuō),固件要實(shí)現(xiàn) DSP0237 MCTP over SMBus/I2C Binding、DSP0236 MCTP Base Specification 和前面說(shuō)到的 NVMe MI 1.0a(或者最新版NVMe MI 1.1)。基于 PCIe VDM 這部分的實(shí)現(xiàn)略微有點(diǎn)復(fù)雜,不在此介紹。
結(jié)合上面兩個(gè)原理圖,我們模擬了一個(gè) BMC 系統(tǒng)向一塊 Memblaze 某系列 NVMe SSD 發(fā)了一條獲取 NVMe-MI 數(shù)據(jù)結(jié)構(gòu)的命令。我們節(jié)選了部分結(jié)果,首先是 BMC 和 SSD 之間傳輸?shù)臄?shù)據(jù),如下圖。
整個(gè)過(guò)程有發(fā)數(shù)據(jù)和接收數(shù)據(jù)兩個(gè)階段,兩者都可以根據(jù)協(xié)議解析出來(lái)。下面就是命令返回?cái)?shù)據(jù)的解析:
上圖可以看到返回?cái)?shù)據(jù)又包含 NVMe-MI 的 Header 信息和 NVMe-MI Data Structure 信息(這部分是我們想要的返回結(jié)果)。
到這我們就從物理引腳、系統(tǒng)構(gòu)成、技術(shù)原理及命令結(jié)果幾個(gè)角度解讀了 NVMe-MI 相關(guān)知識(shí)。那如果開(kāi)發(fā)完相關(guān)功能怎么測(cè)試呢?
可以考慮三種方式:第一種是采購(gòu)業(yè)內(nèi)的 SSD 測(cè)試模組外包測(cè)試;第二種是跟 Server 廠商關(guān)系牢靠,Server 廠商提供 BMC 的接口或者設(shè)備聯(lián)合測(cè)試;第三種是自研相關(guān)的硬件設(shè)備并設(shè)計(jì)測(cè)試用例來(lái)驗(yàn)證。總體而言測(cè)試需要考慮上面的 DSP0237、DSP0236、NVMe MI 三種規(guī)范來(lái)驗(yàn)證,最后放一張 NVMe-MI 兼容性的測(cè)試大綱。
圖示3來(lái)自UNH-IOL_NVMe-MI_Conformance_Test_Suite_v12.0
(本文作者:Memblaze-測(cè)試開(kāi)發(fā)部經(jīng)理任玉峰)
責(zé)任編輯:PSY
原文標(biāo)題:SSD將被遠(yuǎn)程控制?NVMe-MI接口的帶外管理
文章出處:【微信公眾號(hào):ssdfans】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
-
接口
+關(guān)注
關(guān)注
33文章
8970瀏覽量
153435 -
IT
+關(guān)注
關(guān)注
2文章
892瀏覽量
64295 -
低功耗
+關(guān)注
關(guān)注
11文章
2766瀏覽量
104699
原文標(biāo)題:SSD將被遠(yuǎn)程控制?NVMe-MI接口的帶外管理
文章出處:【微信號(hào):SSDFans,微信公眾號(hào):SSDFans】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
Xilinx FPGA NVMe Host Controller IP,NVMe主機(jī)控制器
Xilinx FPGA NVMe主機(jī)控制器IP,高性能版本介紹應(yīng)用
Xilinx FPGA高性能NVMe SSD主機(jī)控制器,NVMe Host Controller IP
高性能NVMe主機(jī)控制器,Xilinx FPGA NVMe Host Accelerator IP
NVME控制器設(shè)計(jì)1
NVME控制器之隊(duì)列管理模塊
NVMe控制器IP設(shè)計(jì)之接口轉(zhuǎn)換
NVMe協(xié)議研究掃盲
在Xilinx ZCU102評(píng)估套件上啟用NVMe SSD接口
為什么安卓使用的是UFS,而蘋(píng)果則是NVME呢?
如何為工業(yè)應(yīng)用設(shè)計(jì)NVMe SSD呢
基于 NVMe 接口的帶 exFAT 文件系統(tǒng)的高速存儲(chǔ) FPGA IP 核演示
NVMe協(xié)議中對(duì)NVMe SSD進(jìn)行管理的Admin Command Set

在ZCU102評(píng)估套件上實(shí)現(xiàn)NVMe SSD接口的解決方案
DERA D7400系列NVMe SSD成為首款NVMe-MI 1.2認(rèn)證產(chǎn)品

評(píng)論