基于SMBUS的SSDMCTP控制消息验证方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:35915535 阅读:21 留言:0更新日期:2022-12-10 10:57
本发明专利技术涉及基于SMBUS的SSD MCTP控制消息验证方法、装置、计算机设备及存储介质,该方法,包括:启动SMBUS;分配新地址3Ah;向地址3Ah发送命令;获取目的地E I D的值;发送命令;判断该命令是否丢弃;发送命令;判断该命令是否丢弃;发送命令;判断该命令是否丢弃;发送命令;判断该命令是否丢弃;发送命令,设定E I D;再次发送命令;获取目的地设定E I D的值;判断目的地设定E I D的值是否等于设定值;验证成功。本发明专利技术可快速验证MCTP控制消息命令是否正常通过SMBUS链路到达固态硬盘,并将要回复的数据通过MCTP传输协议回传给BMC,通过E I D的验证可以设定不同的E I D避免相同地址通信冲突。突。突。

【技术实现步骤摘要】
基于SMBUS的SSD MCTP控制消息验证方法、装置、计算机设备及存储介质


[0001]本专利技术涉及固态硬盘MCTP通信存储
,尤其是指基于SMBUS的SSDMCTP控制消息验证方法、装置、计算机设备及存储介质

技术介绍

[0002]MCTP(Management Component Transport Protocol,管理组件传输协议,以下简称MCTP),它定义了一个通信模型,用于计算机系统中平台管理子系统元素之间的相互通信,可促进管理控件和其它管理控件或被管理设备之间的通信;它可以在多种总线类型上使用,如SMBUS(System Management Bus,系统管理总线,以下简称SMBUS)和PCIe Bus(Peripheral Component InterconnectExpress Bus,外围元件互连标准总线,以下简称PCIe Bus)。在没有主机操作系统或操作系统有故障的计算机中,可以通过计算机主板上的BMC(BaseboardManagement Controller,基板管理控件,以下简称BMC)以带外管理的方式使用MCTP协议访问计算机内的被管理设备,如固态硬盘。在NVME

MI (Non

Volatile Memory Express

Management Interface,非易失性存储协议
‑ꢀ
管理接口,以下简称NVME

MI)规范中,MCTP处于传输层,支持MCTP的固态硬盘,做带外管理访问时BMC把想要发送的命令按照NVME

MI协议规范组成 MI报文,经过MCTP传输层封装成MCTP报文,MCTP报文通过SMBUS链路发给固态硬盘;固态硬盘收到MCTP报文后将其解封得到MI报文,解析MI报文后获取发送消息,然后将要回复的数据按照MI协议规范组成MI报文;再将回复的MI报文经MCTP传输层封装成MCTP报文;再将MCTP报文通过SMBUS链路发送给BMC,BMC解析MCTP报文后再解析MI报文获取回复的消息。
[0003]因此对支持MCTP传输协议的固态硬盘测试其MCTP控制消息命令是非常重要的。若主机不能通过MCTP控制命令Get EID(Endpoint ID,终端识别号,以下简称EID)获取终端ID或不能通过MCTP控制命令Set EID分配正确的MCTP 终端ID,其将导致从BMC发送的命令无法通过SMBUS到达固态硬盘以获取固态硬盘上的信息或命令的执行,这将影响后续的整个NVME

MI功能。
[0004]目前市场上带固态硬盘接口的笔记本或台式机电脑大都不支持MCTP overSMBUS的测试,ULINK公司的Driver Master软件及配套的PSPA(PCIe固态硬盘Power Adaptor,PCIe固态硬盘电源适配器,以下简称PSPA)硬件无SMBUS 物理走线且MCTP测试相关接口尚未开发。因此,亟需开发一种基于SMBUS的 SSD MCTP控制消息验证方式。

技术实现思路

[0005]本专利技术的目的在于克服现有技术的不足,提供基于SMBUS的SSD MCTP控制消息验证方法、装置、计算机设备及存储介质。
[0006]为了解决上述技术问题,本专利技术采用如下技术方案:
[0007]第一方面,本实施例提供了一种基于SMBUS的SSD MCTP控制消息验证方法,包括以
下步骤:
[0008]启动SSD上的SMBUS;
[0009]通过SMBUSARP分配新地址,即地址3Ah;
[0010]向地址3Ah发送MCTPoverSMBUSGetEID命令,即SOM=1,EOM=1,TO=1;
[0011]获取MCTPoverSMBUSGetEID命令中的目的地EID的值;
[0012]判断目的地EID的值是否等于默认值;
[0013]若目的地EID的值等于默认值,则向地址3Ah发送MCTPoverSMBUSGetEID命令,即SOM=0,EOM=1,TO=1;
[0014]判断该命令是否丢弃;
[0015]若该命令丢弃,则向地址3Ah发送MCTPoverSMBUSGetEID命令,即SOM=1,EOM=1,TO=0;
[0016]判断该命令是否丢弃;
[0017]若该命令丢弃,则向地址3Ah的目的地EID发送MCTPoverSMBUSGetEID命令,即SOM=1,EOM=1,TO=1;
[0018]判断该命令是否丢弃;
[0019]若该命令丢弃,则向地址3Ah发送MCTPoverSMBUSGetEID命令,即SOM=1,EOM=1,TO=1,标头=2;
[0020]判断该命令是否丢弃;
[0021]若该命令丢弃,则向地址3Ah发送MCTPoverSMBUSGetEID命令,即SOM=1,EOM=1,TO=1,将目的地EID设定为非特殊定义的EID,即目的地设定EID;
[0022]向地址3Ah的目的地设定EID再次发送MCTPoverSMBUSGetEID命令,即SOM=1,EOM=1,TO=1;
[0023]获取目的地设定EID的值;
[0024]判断目的地设定EID的值是否等于设定值;
[0025]若目的地设定EID的值等于设定值,则验证成功。
[0026]其进一步技术方案为:所述通过SMBUSARP分配新地址,即地址3Ah步骤中,通过SMBUSARP地址分配命令将设备的默认地址D4改为非D4h或C2h的新地址,即3Ah。
[0027]其进一步技术方案为:所述判断目的地EID的值是否等于默认值步骤之后,还包括:若目的地EID的值不等于默认值,则目的地的EID已被配置成功。
[0028]其进一步技术方案为:所述判断目的地设定EID的值是否等于设定值步骤之后,还包括:若目的地设定EID的值不等于设定值,则目的地EID设定失败。
[0029]第二方面,本实施例提供了一种基于SMBUS的SSDMCTP控制消息验证装置,包括:启动单元,分配单元,第一发送单元,第一获取单元,第一判断单元,第二发送单元,第二判断单元,第三发送单元,第三判断单元,第四发送单元,第四判断单元,第五发送单元,第五判断单元,发送设定单元,第六发送单元,第二获取单元,第六判断单元及验证单元;
[0030]所述启动单元,用于启动SSD上的SMBUS;
[0031]所述分配单元,用于通过SMBUSARP分配新地址,即地址3Ah;
[0032]所述第一发送单元,用于向地址3Ah发送MCTPoverSMBUSGetEID命令,即SOM=1,EOM=1,TO=1;
[0033]所述第一获取单元,用于获取MCTPoverSMBUSGetEID命令中的目的地EID的值;
[0034]所述第一判断单元,用于判断目的地EID的值是否等于默认值;
...

【技术保护点】

【技术特征摘要】
1.基于SMBUS的SSD MCTP控制消息验证方法,其特征在于,包括以下步骤:启动SSD上的SMBUS;通过SMBUS ARP分配新地址,即地址3Ah;向地址3Ah发送MCTP over SMBUS Get EID命令,即SOM=1,EOM=1,TO=1;获取MCTP over SMBUS Get EID命令中的目的地EID的值;判断目的地EID的值是否等于默认值;若目的地EID的值等于默认值,则向地址3Ah发送MCTP over SMBUS Get EID命令,即SOM=0,EOM=1,TO=1;判断该命令是否丢弃;若该命令丢弃,则向地址3Ah发送MCTP over SMBUS Get EID命令,即SOM=1,EOM=1,TO=0;判断该命令是否丢弃;若该命令丢弃,则向地址3Ah的目的地EID发送MCTP over SMBUS Get EID命令,即SOM=1,EOM=1,TO=1;判断该命令是否丢弃;若该命令丢弃,则向地址3Ah发送MCTP over SMBUS Get EID命令,即SOM=1,EOM=1,TO=1,标头=2;判断该命令是否丢弃;若该命令丢弃,则向地址3Ah发送MCTP over SMBUS Get EID命令,即SOM=1,EOM=1,TO=1,将目的地EID设定为非特殊定义的EID,即目的地设定EID;向地址3Ah的目的地设定EID再次发送MCTP over SMBUS Get EID命令,即SOM=1,EOM=1,TO=1;获取目的地设定EID的值;判断目的地设定EID的值是否等于设定值;若目的地设定EID的值等于设定值,则验证成功。2.根据权利要求1所述的基于SMBUS的SSD MCTP控制消息验证方法,其特征在于,所述通过SMBUS ARP分配新地址,即地址3Ah步骤中,通过SMBUS ARP地址分配命令将设备的默认地址D4改为非D4h或C2h的新地址,即3Ah。3.根据权利要求1所述的基于SMBUS的SSD MCTP控制消息验证方法,其特征在于,所述判断目的地EID的值是否等于默认值步骤之后,还包括:若目的地EID的值不等于默认值,则目的地的EID已被配置成功。4.根据权利要求1所述的基于SMBUS的SSD MCTP控制消息验证方法,其特征在于,所述判断目的地设定EID的值是否等于设定值步骤之后,还包括:若目的地设定EID的值不等于设定值,则目的地EID设定失败。5.基于SMBUS的SSD MCTP控制消息验证装置,其特征在于,包括:启动单元,分配单元,第一发送单元,第一获取单元,第一判断单元,第二发送单元,第二判断单元,第三发送单元,第三判断单元,第四发送单元,第四判断单元,第五发送单元,第五判断单元,发送设定单元,第六发送单元,第二获取单元,第六判断单元及验证单元;所述启动单元,用于启动SSD上的SMBUS;
所述分配单元,用于通过SMBUS ARP分配新地址,即地址3Ah;所述第一发送单元,用于向地址3Ah发送MCTP over SMB...

【专利技术属性】
技术研发人员:杨汉力钱海明石骁
申请(专利权)人:苏州忆联信息系统有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1