一种BMC硬件读值准确性测试方法、装置、设备及介质与流程

文档序号:36076067发布日期:2023-11-18 00:09阅读:49来源:国知局
一种的制作方法

本发明属于bmc监控温度准确性测试,具体涉及一种bmc硬件读值准确性测试方法、装置、设备及介质。


背景技术:

1、bmc,是baseboard management controller,基板管理控制器。作为服务器特有的管理控制器,bmc自动监控服务器运行状态,并及时根据当前状态对服务器进行调控。bmc可以监控服务器获取物理健康特征,例如温度、电压、风扇工作状态以及电压状态,其中最主要的健康特征为温度,服务器正常运行时,由于环境温度升高,或者由于硬盘、处理器等部件跟随负载压力升温,则需要风扇转速增加进行散热调控,以维持服务器的正常工作的温度范围,此散热调控工作由bmc完成。

2、bmc一方面可以及时获取当前服务器各个部件的实时温度,另一面基于获取的实时温度对风扇进行操作,控制方式的转速模式,因此bmc监控读取的温度值的准确性至关重要,而测试bmc温度值准确性也成为bmc测试内容中相当关键的环节。

3、当前的bmc监控温度准确性测试针对的器件类型主要包括两类,一类是cpu及硬盘等具有独立管理固件的器件,一类是主板及各类板卡上关键部件温度的测量。对于cpu及硬盘类型器件通过系统下的驱动直接读取器件核心温度,与bmc管理的温度进行比较来测试准确性;对于主板及各类板卡上关键部件一般是通过连接热电偶来直接测量部件表面温度,再与bmc获取的温度进行比较来进行测试。

4、对于主板及各类型板卡上关键部件的bmc读取温度准确性的测试方式存在很多问题,首先热电偶需要接到板卡上的传感器芯片,这就需要对服务器进行拆装,操作难度大,温度读取还需要使用单独软件来进行,操作门槛高。其次是由于导线长度及服务器本身风扇导致的连接稳定性等客观因素对直接测试部件表面温度的准确性造成一定误差。最后最重要是此种测试方式无法进行自动化测试,并且使用手动测试的工作量还相当大,因此往往只会在硬件改版或者固定的开发节点中进行测试,而在bmc固件版本迭代更新过程中,则可能无法及时发现问题,从而对产品的稳定性造成影响。

5、因此,针对上述缺陷,提供一种bmc硬件读值准确性测试方法、装置、设备及介质,是非常有必要的。


技术实现思路

1、针对上述当前bmc对板卡上关健部件温度监控准确性测试方式使用热电偶需要拆装服务器及使用单独软件,受导线长度和服务器本身连接稳定性影响以及无法进行自动化测试,工作量大,仅在传感器硬件改变时进行测试,并不在bmc软件更新时进行测试,测试不全面影响产品稳定性的缺陷,本发明提供一种bmc硬件读值准确性测试方法、装置、设备及介质,以解决上述技术问题。

2、第一方面,本发明提供一种bmc硬件读值准确性测试方法,包括如下步骤:

3、s1.判断服务器bmc硬件读值准确性测试的应用场景,并根据应用场景选择测试类型;

4、s2.在温度传感器芯片变更应用场景,选择热电偶方式对服务器板卡的关键部件进行温度读取,与bmc管理的温度进行比较验证服务器bmc硬件读值准确性;

5、s3.在bmc固件版本变更应用场景时,选择带外向bmc发送ipmi命令方式对关键部件进行温度读取,与bmc管理的温度进行比较验证服务器bmc硬件读值准确性。

6、进一步地,步骤s1具体步骤如下:

7、s11.判断服务器板卡的关键部件处的温度传感器芯片是否存在固件变更;

8、若是,进入步骤s12;

9、若否,进入步骤s13;

10、s12.判定为温度传感器芯片变更应用场景,进入步骤s2;

11、s13.判断是否存在bmc固件版本变更;

12、若是,进入步骤s14;

13、若否,返回步骤s11;

14、s14.判定为bmc固件版本变更应用场景,进入步骤s3。

15、进一步地,s2具体步骤如下:

16、s21.获取服务器板卡的测试部件,在测试部件的温度传感器芯片处设置热电偶;

17、s22.建立热电偶与测试机的连线;

18、s23.在测试机的用户端读取热电偶测量的温度值;

19、s24.获取bmc管理的温度值,筛选出服务器板卡的测试部件的温度值,作为待测试温度值;

20、s25.将热电偶测量的温度值与待测试温度值进行比较,判断误差是否小于设定阈值;

21、若是,判定bmc硬件温度读取准确性测试通过,结束;

22、若否,判定bmc硬件温度读取准确性测试失败,提示测试部件处的温度传感器芯片存在固件问题。

23、进一步地,s3具体步骤如下:

24、s31.测试机的用户端获取服务器板卡的测试部件,通过带外向bmc发送预先定义的ipmi命令的方式控制bmc通过i2c总线获取测试部件的温度值;

25、s32.获取bmc管理的温度值,筛选出服务器板卡的测试部件的温度值,作为待测试温度值;

26、s33.将带外命令获取的测试部件温度值与测试部件温度值进行比较,判断误差是否小于设定阈值;

27、若是,判定bmc硬件温度读取准确性测试通过,结束;

28、若否,判定bmc硬件温度读取准确性测试失败,提示bmc存在固件问题。

29、进一步地,步骤s31具体步骤如下:

30、s311.预先在bmc定义与用户端通信的ipmi命令的数据格式和数据长度;

31、s312.获取服务器板卡的测试部件处温度传感器芯片的地址信息;

32、s313.在测试机用户端将测试部件处温度传感器芯片的地址信息封装到ipmi命令中,并将ipmi命令发送到bmc;

33、s314.bmc接收到ipmi命令后暂停原有的温度监控轮询,从ipmi命令中解析出地址信息,通过i2c总线并根据解析地址信息读取测试部件处温度传感器芯片的温度值。

34、进一步地,步骤s311中,预先在bmc定义与用户端通信的数据格式按照i2c总线序号、设备地址、读写标志、读写数据长度以及写入的数据的数位格式依次排列,其中各数位长度的和小于等于ipmi命令支持的最大数据长度,并将定义ipmi数据格式通知测试机用户端;

35、步骤s313中,在测试机用户端将测试部件处温度传感器芯片的地址信息填写到ipmi命令的设备地址数位,将读标志数位置位,将温度值长度填写到读写数据长度数位,令写入的数据数位无效,完成ipmi命令封装。

36、进一步地,步骤s314具体步骤如下:

37、s3141.bmc接收到测试机用户端发送的ipmi命令后,停止原有的bmc内部的传感器温度循环读取进程,暂停温度轮询;

38、s3142.bmc解析接收的ipmi命令,解析出设备地址数位的地址信息;

39、s3143.bmc使用i2c总线根据解析的地址信息性测试部件处的温度传感器进行温度值读取;

40、s3144.bmc在读取到温度值后,恢复原有的bmc内部的传感器温度循环读取进程,恢复温度轮询,同时向读取的温度值封装到ipmi命令中向测试机用户端返回。

41、第二方面,本发明提供一种bmc硬件读值准确性测试装置,包括:

42、测试应用场景判断模块,用于判断服务器bmc硬件读值准确性测试的应用场景,并根据应用场景选择测试类型;

43、热电偶方式准确性测试模块,用于在温度传感器芯片变更应用场景,选择热电偶方式对服务器板卡的关键部件进行温度读取,与bmc管理的温度进行比较验证服务器bmc硬件读值准确性;

44、带外ipmi命令方式准确性测试模块,用于在bmc固件版本变更应用场景时,选择带外向bmc发送ipmi命令方式对关键部件进行温度读取,与bmc管理的温度进行比较验证服务器bmc硬件读值准确性。

45、进一步地,测试应用场景判断模块包括:

46、传感器芯片固件变更判断单元,用于判断服务器板卡的关键部件处的温度传感器芯片是否存在固件变更;

47、传感器变更应用场景判定单元,用于温度传感器芯片存在固件变更时,判定为温度传感器芯片变更应用场景;

48、bmc固件变更判断单元,用于温度传感器芯片不存在固件变更时,判断是否存在bmc固件版本变更;

49、bmc变更应用场景判定单元,用于存在bmc固件版本变更时,判定为bmc固件版本变更应用场景。

50、进一步地,热电偶方式准确性测试模块包括:

51、热电偶设置单元,用于获取服务器板卡的测试部件,在测试部件的温度传感器芯片处设置热电偶;

52、热电偶连线建立单元,用于建立热电偶与测试机的连线;

53、热电偶测量温度值读取单元,用于在测试机的用户端读取热电偶测量的温度值;

54、bmc管理温度值第一获取单元,用于获取bmc管理的温度值,筛选出服务器板卡的测试部件的温度值,作为待测试温度值;

55、bmc硬件读值准确性第一测试单元,用于将热电偶测量的温度值与待测试温度值进行比较,判断误差是否小于设定阈值;

56、bmc读值准确性测试通过第一判定单元,用于当误差小于设定阈值时,判定bmc硬件温度读取准确性测试通过;

57、温度传感器芯片固件问题提示单元,用于误差大于等于设定阈值时,判定bmc硬件温度读取准确性测试失败,提示测试部件处的温度传感器芯片存在固件问题。

58、进一步地,带外ipmi命令方式准确性测试模块包括:

59、带外ipmi命令获取温度值单元,用于使测试机的用户端获取服务器板卡的测试部件,通过带外向bmc发送预先定义的ipmi命令的方式控制bmc通过i2c总线获取测试部件的温度值;

60、bmc管理温度值第二获取单元,用于获取bmc管理的温度值,筛选出服务器板卡的测试部件的温度值,作为待测试温度值;

61、bmc硬件读值准确性第二测试单元,用于将带外命令获取的测试部件温度值与测试部件温度值进行比较,判断误差是否小于设定阈值;

62、bmc读值准确性测试通过第二判定单元,用于误差小于设定阈值时,判定bmc硬件温度读取准确性测试通过;

63、bmc固件问题提示单元,用于误差大于等于设定阈值时,判定bmc硬件温度读取准确性测试失败,提示bmc存在固件问题。

64、第三方面,本发明提供一种设备,包括处理器和存储器;

65、其中,该存储器用于存储计算机程序,该处理器用于从存储器中调用并运行该计算机程序,使得设备执行上述第一方面所述的方法。

66、第四方面,本发明提供一种存储介质,

67、所述存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面所述的方法。

68、本发明的有益效果在于:

69、本发明提供的bmc硬件读值准确性测试方法、装置、设备及介质,在bmc固件变更时通过带外ipmi命令获取服务器板卡上的温感芯片温度读值,与bmc监控的温度读值进行比较来测试bmc监控温度的准确性,而在温度传感器芯片固件变更时,辅助使用热电偶获取温度传感器芯片的温度值,验证bmc监控温度值的准确性。本发明有效提高测试质量,而且确保bmc及温度传感器芯片每个固件迭代版本都能进行测试,确保不会遗漏问题,同时可实现自动化测试,有效提高效率,缩减人力成本。

70、此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。

71、由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1