高速外围组件设备的固件程序升级方法及服务器与流程

文档序号:35248541发布日期:2023-08-25 20:46阅读:29来源:国知局
高速外围组件设备的固件程序升级方法及服务器与流程

本技术实施例涉及计算机,具体而言,涉及一种高速外围组件设备的固件程序升级方法及服务器。


背景技术:

1、随着服务器技术的不断发展,服务器的配置也越来越复杂,其中,pcie(peripheral component interconnect-express,高速外围组件)插槽是服务器设备扩展的一种重要方式,通过pcie插槽,用户可自由搭配不同的外插卡,如网卡、raid(redundantarrays of independent disks,磁盘阵列)卡、gpu(graphics processing unit,图形处理器)卡等。这些pcie设备的固件程序option rom有的被存在板卡的扩展rom(option read-only memory只读存储器)中,有的则存在bios(basic input output system,基本输入输出系统)的二进制文件binary里面,主要完成pcie设备的初始化和系统引导功能。bios在post(power-on self test,上电自检)阶段,会扫描pcie设备是否有option rom,有的话则将其拷贝到内存中执行。

2、option rom通常有不同的版本。针对传统bios和uefi(unified extensiblefirmware interface,统一可扩展固件接口)bios,有传统的option rom和uefi optionrom两种;为了兼容arm、x86等不同的cpu(central processing unit,核心处理器)体系架构,option rom又分为不同版本。pcie设备的扩展rom中不会包含所有版本的option rom,当用户对服务器中的pcie设备进行升级时,如果option rom版本与当前架构不兼容,就会涉及给pcie设备升级option rom的问题。

3、当pcie设备有扩展rom时,可通过厂商提供的工具在os(operating system,操作系统)下升级option rom,但对用户来说,操作难度较大,而且有时候用户会因害怕带来新的问题而不愿意采取这种方式升级;当pcie设备没有扩展rom时,则只能由开发人员修改bios中的option rom,然后刷新bios,人工成本较高。如何方便地升级pcie设备的optionrom是一个亟待解决的问题。

4、针对上述的问题,目前尚未提出有效的解决方案。


技术实现思路

1、本技术实施例提供了一种高速外围组件设备的固件程序升级方法及服务器,以至少解决相关技术中针对高速外围组件设备的固件程序升级过程相对复杂的技术问题。

2、根据本技术的一个实施例,提供了一种高速外围组件设备的固件程序升级方法,应用于服务器的核心处理器,该方法包括:在服务器开机时,执行基本输入输出系统程序进行自检;自检过程中,若识别到有高速外围组件设备接入服务器,获取高速外围组件设备的目标标识信息;从基板管理控制器中获取与目标标识信息和核心处理器的类型对应的目标固件程序升级文件,其中,基板管理控制器中包括转换闪存卡,转换闪存卡中存储有目标对象传输的固件程序升级文件;将目标固件程序升级文件复制至内存中执行,以对高速外围组件设备进行初始化。

3、在一个示例性实施例中,若识别到有高速外围组件设备接入服务器,获取高速外围组件设备的目标标识信息,包括:在识别到有高速外围组件设备通过服务器的高速外围组件接口接入服务器时,从高速外围组件设备的设备配置空间获取高速外围组件设备的目标标识信息,其中,目标标识信息中至少包括:高速外围组件设备对应的第一厂商标识和第一设备标识。

4、在一个示例性实施例中,在从基板管理控制器中获取与目标标识信息和核心处理器的类型对应的目标固件程序升级文件之前,基板管理控制器获取目标对象传输的固件程序升级文件,并将固件程序升级文件存储至转换闪存卡中;基板管理控制器调用管理模块依据转换闪存卡中的固件程序升级文件生成虚拟通用串行总线设备。

5、在一个示例性实施例中,基板管理控制器获取目标对象传输的固件程序升级文件,并将固件程序升级文件存储至转换闪存卡中,包括:基板管理控制器调用管理模块获取目标对象在基板管理控制器对应的交互界面中上传的固件程序升级文件,并将固件程序升级文件存储至转换闪存卡中;或,基板管理控制器接收目标对象通过终端设备复制的固件程序升级文件,并将固件程序升级文件存储至转换闪存卡中;或,基板管理控制器调用管理模块从服务器所在机房的管理节点服务器中下载固件程序升级文件,并将固件程序升级文件存储至转换闪存卡中,其中,管理节点服务器中存储有目标对象上传的固件程序升级文件。

6、在一个示例性实施例中,从基板管理控制器中获取与目标标识信息和核心处理器的类型对应的目标固件程序升级文件,包括:通过平台控制集线器的通用串行总线接口从基板管理控制器的虚拟通用串行总线设备中获取与目标标识信息和核心处理器的类型对应的目标固件程序升级文件。

7、在一个示例性实施例中,从基板管理控制器中获取与目标标识信息和核心处理器的类型对应的目标固件程序升级文件,包括:对于基板管理控制器中的任一固件程序升级文件,依据固件程序升级文件的数据结构信息确定固件程序升级文件对应的第二厂商标识、第二设备标识和节点类型,其中,节点类型用于表示固件程序升级文件支持的核心处理器类型;在第一厂商标识和第二厂商标识匹配、第一设备标识和第二设备标识匹配、核心处理器的类型与节点类型匹配时,确定固件程序升级文件为目标固件程序升级文件;从基板管理控制器中获取目标固件程序升级文件。

8、在一个示例性实施例中,在依据固件程序升级文件的数据结构信息确定固件程序升级文件对应的第二厂商标识、第二设备标识和节点类型之前,检测固件程序升级文件的扩展只读存储器头部信息中是否存在目标标识符;若扩展只读存储器头部信息中存在目标标识符,确定固件程序升级文件合法,依据固件程序升级文件的数据结构信息确定固件程序升级文件对应的第二厂商标识、第二设备标识和节点类型;若扩展只读存储器头部信息中不存在目标标识符,确定固件程序升级文件不合法,固件程序升级文件不是目标固件程序升级文件。

9、在一个示例性实施例中,在基板管理控制器中不存在与目标标识信息和核心处理器的类型对应的目标固件程序升级文件时,从与高速外围组件设备对应的扩展只读存储器中获取与目标标识信息和核心处理器的类型对应的目标固件程序升级文件。

10、根据本技术的另一个实施例,提供了一种服务器,包括:主板和核心处理器,主板中包括:基板管理控制器,基本输入输出系统芯片和高速外围组件接口,其中,基板管理控制器中包括转换闪存卡,转换闪存卡中存储有目标对象传输的固件程序升级文件;基本输入输出系统芯片中存储有基本输入输出系统程序;高速外围组件接口用于外接高速外围组件设备;核心处理器用于在服务器开机时,执行基本输入输出系统程序进行自检;自检过程中,若识别到有高速外围组件设备接入服务器,获取高速外围组件设备的目标标识信息;从基板管理控制器中获取与目标标识信息和核心处理器的类型对应的目标固件程序升级文件;将目标固件程序升级文件复制至内存中执行,以对高速外围组件设备进行初始化。

11、在一个示例性实施例中,核心处理器用于在识别到有高速外围组件设备通过高速外围组件接口接入服务器时,从高速外围组件设备的设备配置空间获取高速外围组件设备的目标标识信息,其中,目标标识信息中至少包括:高速外围组件设备对应的第一厂商标识和第一设备标识。

12、在一个示例性实施例中,基板管理控制器中还包括管理模块,其中,基板管理控制器用于获取目标对象传输的固件程序升级文件,并将固件程序升级文件存储至转换闪存卡中;调用管理模块依据转换闪存卡中的固件程序升级文件生成虚拟通用串行总线设备。

13、在一个示例性实施例中,基板管理控制器用于调用管理模块获取目标对象在基板管理控制器对应的交互界面中上传的固件程序升级文件,并将固件程序升级文件存储至转换闪存卡中;或,基板管理控制器用于接收目标对象通过终端设备复制的固件程序升级文件,并将固件程序升级文件存储至转换闪存卡中;或,基板管理控制器用于调用管理模块从服务器所在机房的管理节点服务器中下载固件程序升级文件,并将固件程序升级文件存储至转换闪存卡中,其中,管理节点服务器中存储有目标对象上传的固件程序升级文件。

14、在一个示例性实施例中,主板中还包括平台控制集线器,其中,核心处理器用于通过平台控制集线器的通用串行总线接口从基板管理控制器的虚拟通用串行总线设备中获取与目标标识信息和核心处理器的类型对应的目标固件程序升级文件。

15、在一个示例性实施例中,对于基板管理控制器中的任一固件程序升级文件,核心处理器用于依据固件程序升级文件的数据结构信息确定固件程序升级文件对应的第二厂商标识、第二设备标识和节点类型,其中,节点类型用于表示固件程序升级文件支持的核心处理器类型;在第一厂商标识和第二厂商标识匹配、第一设备标识和第二设备标识匹配、核心处理器的类型与节点类型匹配时,确定固件程序升级文件为目标固件程序升级文件;从基板管理控制器中获取目标固件程序升级文件。

16、在一个示例性实施例中,核心处理器还用于在依据固件程序升级文件的数据结构信息确定固件程序升级文件对应的第二厂商标识、第二设备标识和节点类型之前,检测固件程序升级文件的扩展只读存储器头部信息中是否存在目标标识符;若扩展只读存储器头部信息中存在目标标识符,确定固件程序升级文件合法,依据固件程序升级文件的数据结构信息确定固件程序升级文件对应的第二厂商标识、第二设备标识和节点类型;若扩展只读存储器头部信息中不存在目标标识符,确定固件程序升级文件不合法,固件程序升级文件不是目标固件程序升级文件。

17、在一个示例性实施例中,核心处理器还用于在基板管理控制器中不存在与目标标识信息和核心处理器的类型对应的目标固件程序升级文件时,从与高速外围组件设备对应的扩展只读存储器中获取与目标标识信息和核心处理器的类型对应的目标固件程序升级文件。

18、根据本技术的又一个实施例,还提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,其中,计算机程序被设置为运行时执行上述高速外围组件设备的固件程序升级方法中的步骤。

19、在本技术实施例中,当服务器开机时,执行基本输入输出系统程序进行自检;自检过程中,若识别到有高速外围组件设备接入服务器,获取该高速外围组件设备的目标标识信息;然后从基板管理控制器中获取与目标标识信息和核心处理器的类型对应的目标固件程序升级文件,其中,基板管理控制器中包括转换闪存卡,转换闪存卡中存储有目标对象传输的固件程序升级文件;再将目标固件程序升级文件复制至内存中执行,以对高速外围组件设备进行初始化。其中,通过预先将固件程序升级文件存储至基板管理控制器中的转换闪存卡中,服务器上电自检时,可以直接依据接入的高速外围组件设备的标识信息和核心处理器的类型从中加载对应版本的目标固件程序升级文件对高速外围组件设备进行初始化,该固件程序升级方式简单高效,无需复杂的人工操作,有效解决了相关技术中针对高速外围组件设备的固件程序升级过程相对复杂的技术问题。

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