一种实现ARM服务器BIOS主备切换的系统及方法技术方案

技术编号:26375397 阅读:17 留言:0更新日期:2020-11-19 23:44
本发明专利技术提供一种实现ARM服务器BIOS主备切换的系统及方法,所述系统包括主BIOS、备BIOS、CPU0、BMC以及CPLD;主BIOS包括ATF固件,ATF固件包括BL1模块、BL2模块、BL31模块、BL32模块、BL33模块;CPU0用于主BIOS的ATF固件从BL1模块到BL2模块,到BL31模块,到BL32模块,到BL33模块启动过程中任一过程出现校验失败时,通知BMC及CPLD;BMC用于接收到CPU0发送的主BIOS启动过程校验失败信号时,控制备BIOS启动;CPLD用于接收到CPU0发送主BIOS启动过程校验失败信号时,判断BMC是否挂死,并在BMC挂死时,控制备BIOS启动。

【技术实现步骤摘要】
一种实现ARM服务器BIOS主备切换的系统及方法
本专利技术属于ARM服务
,具体涉及一种实现ARM服务器BIOS主备切换的系统及方法。
技术介绍
ARM,全称为AdvancedRISCMachine。ARM处理器本身是32位设计,但也配备16位指令集,一般来讲比等价32位代码节省达35%,却能保留32位系统的所有优势。ATF,ARMTrustedfirmware,ARM受信任固,ATF的BL1、BL2、BL31、BL32、BL33为依次启动的各个阶段的启动引导模块。UEFI,是UnifiedExtensibleFirmwareInterface的简称,即“统一的可扩展固件接口”,是一种详细描述全新类型接口的标准,是适用于电脑的标准固件接口。ARM服务器芯片已从早期的16核心依次更新到32核心、64核心、96核心、128核心等且与传统X86服务器芯片对比,在功耗、性能等方面对比ARM服务器芯片已领先于X86服务器芯片,同时ARM服务器的应用软件也日趋成熟,这些都为ARM服务器的研发及批量部署提供了有利条件。ARM处理器专门为云计算、边缘计算、大数据孕育而生,其关键的引导固件BIOS是由ATF和UEFI镜像两部分组成的,这与传统的X86服务器BIOS镜像存在较大差异,因为X86的BIOS包含了除部分CPU寄存器外的所有外设的初始化功能,而ARM处理器的引导镜像BIOS的ATF部分负责了内存初始化、处理器核和PCIE的RAS功能、安全世界和Normal世界的看门狗、运行时ARM的SMC功能、提供ATF版本信息、提供UEFI变量设置、CPU核数设置、CPU0和CPU1间的通信链路初始化等功能。SMpro是微控制器的管理程序,提供了整个系统的管理,尤其在安全启动处理机制方面起到举足轻重的作用。ARM处理器安全启动方案涉及SMpro加载校验ATF的BL1,BL1加载校验BL2,BL2加载校验BL31,BL31加载校验BL32,BL32加载校验BL33,BL33加载校验UEFI,同时SMpro、ATF引导程序遵循ARM平台的TBBR规范协议,当SMpro和ATFBL1\BL2\BL31\BL32\BL33固件安全启动校验完毕后方可进行UEFI镜像加载,SMpro先加载校验ATFBL1镜像,如果失败则触发CPU0的GPIO7信号告知校验失败且通知到BMC,BMC获取GPIO7的状态信息后将切换为备BIOS镜像启动。同理,ATFBL1校验成功后将加载校验ATFBL2,如此依次加载校验ATFBL31\BL32\BL33,若任何一个阶段出现校验失败则触发BMC切换备BIOS启动,若无错误则正常引导UEFI镜像进入OS或者Shell系统。依次检验ATF镜像的BL1\BL2\BL31\BL32\BL33阶段镜像对ARM服务器的固件起到了安全可靠且不容易被外部篡改而导致服务器数据泄露的问题,提高了数据中心的安全可靠性。但是该设计方案依赖于BMC去切换,若BMC挂死则无法执行BIOS主备切换功能。此为现有技术的不足,因此,针对现有技术中的上述缺陷,提供一种实现ARM服务器BIOS主备切换的系统及方法,是非常有必要的。
技术实现思路
针对现有技术的上述ARM服务器的主BIOS启动过程中各阶段故障依赖BMC去切换,而BMC挂死无法执行BIOS主备切换的缺陷,本专利技术提供一种实现ARM服务器BIOS主备切换的系统及方法,以解决上述技术问题。第一方面,本专利技术提供一种实现ARM服务器BIOS主备切换的系统,包括主BIOS、备BIOS、CPU0、BMC以及CPLD;主BIOS包括ATF固件,ATF固件包括BL1模块、BL2模块、BL31模块、BL32模块以及BL33模块;CPU0,用于主BIOS的ATF固件从BL1模块到BL2模块,到BL31模块,到BL32模块,到BL33模块启动过程中任一过程出现校验失败时,通知BMC及CPLD;BMC,用于接收到CPU0发送的主BIOS启动过程校验失败信号时,控制备BIOS启动;CPLD,用于接收到CPU0发送的主BIOS启动过程校验失败信号时,判断BMC是否挂死,并在BMC挂死时,控制备BIOS启动。ATF固件各模块启动过程依次校验保证主BIOS安全,防止服务器的BIOS进行数据被破坏或篡改导致服务器数据的丢失。进一步地,还包括报警灯,报警灯与CPU0的GPIO7管脚连接;报警灯,用于主BIOS的ATF固件从BL1模块到BL2模块,到BL31模块,到BL32模块,到BL33模块启动过程中任一过程出现校验失败时,指示主备BIOS切换。报警灯起到指示作用,用于通知工作人员检查是否主备BIOS切换成功。进一步地,CPLD在接收到CPU0发送的主BIOS启动过程校验失败信号,且BMC未挂死时,不对备BIOS进行控制。CPLD只在BMC挂死时启动,一定程度上解耦了备BIOS启动对BMC的依赖。进一步地,接收到CPU0发送的主BIOS启动过程校验失败信号时,BMC或CPLD先将主BIOS的片选信号拉低,再控制备BIOS启动。BMC或CPLD把主BIOS的片选信号SPI0_CS0_L拉低。进一步地,CPU0在主BIOS的ATF固件从BL1模块到BL2模块,到BL31模块,到BL32模块,到BL33模块启动过程中任一过程出现校验失败时,通过GPIO7管脚通知BMC及CPLD。第二方面,本专利技术提供一种实现ARM服务器BIOS主备切换的方法,包括如下步骤:S1.系统上电开机,CPU0监控主BIOS的ATF固件各模块启动过程,并在任一启动过程出现校验失败时,通知BMC及CPLD;S2.CPLD接收到主BIOS启动过程校验失败信号后,判断BMC是否挂死;若BMC挂死,进入步骤S3;若BMC未挂死,进入步骤S4;S3.CPLD控制系统关机,并控制主BIOS启动切换到备BIOS启动,再控制系统重新上电开机,结束;S4.BMC控制系统关机,并控制主BIOS启动切换到备BIOS启动,再控制系统重新上电开机。CPLD只在BMC挂死时启动,一定程度上解耦了备BIOS启动对BMC的依赖。进一步地,步骤S3中CPLD控制主BIOS启动切换到备BIOS启动之前,先将主BIOS的片选信号拉低;步骤S4中BMC控制主BIOS启动切换到备BIOS启动之前,先将主BIOS的片选信号拉低。进一步地,步骤S1具体步骤如下:S11.系统上电开机,CPU0监控主BIOS的ATF固件BL1模块到BL2模块启动过程;若启动过程出现校验失败,通知BMC及CPLD,进入步骤S2;若启动过程校验成功,进入步骤S12;S12.CPU0监控主BIOS的ATF固件BL2模块到BL31模块启动过程;若启动过程出现校验失败,通知BMC及CPLD,进入步骤S2;若启动过程校验成功,进入步骤S13;S13.CPU0监控主BIOS的ATF固件BL31模块到BL本文档来自技高网
...

【技术保护点】
1.一种实现ARM服务器BIOS主备切换的系统,其特征在于,包括主BIOS、备BIOS、CPU0、BMC以及CPLD;/n主BIOS包括ATF固件,ATF固件包括BL1模块、BL2模块、BL31模块、BL32模块以及BL33模块;/nCPU0,用于主BIOS的ATF固件从BL1模块到BL2模块,到BL31模块,到BL32模块,到BL33模块启动过程中任一过程出现校验失败时,通知BMC及CPLD;/nBMC,用于接收到CPU0发送的主BIOS启动过程校验失败信号时,控制备BIOS启动;/nCPLD,用于接收到CPU0发送的主BIOS启动过程校验失败信号时,判断BMC是否挂死,并在BMC挂死时,控制备BIOS启动。/n

【技术特征摘要】
1.一种实现ARM服务器BIOS主备切换的系统,其特征在于,包括主BIOS、备BIOS、CPU0、BMC以及CPLD;
主BIOS包括ATF固件,ATF固件包括BL1模块、BL2模块、BL31模块、BL32模块以及BL33模块;
CPU0,用于主BIOS的ATF固件从BL1模块到BL2模块,到BL31模块,到BL32模块,到BL33模块启动过程中任一过程出现校验失败时,通知BMC及CPLD;
BMC,用于接收到CPU0发送的主BIOS启动过程校验失败信号时,控制备BIOS启动;
CPLD,用于接收到CPU0发送的主BIOS启动过程校验失败信号时,判断BMC是否挂死,并在BMC挂死时,控制备BIOS启动。


2.如权利要求1所述的实现ARM服务器BIOS主备切换的系统,其特征在于,还包括报警灯,报警灯与CPU0的GPIO7管脚连接;
报警灯,用于主BIOS的ATF固件从BL1模块到BL2模块,到BL31模块,到BL32模块,到BL33模块启动过程中任一过程出现校验失败时,指示主备BIOS切换。


3.如权利要求1所述的实现ARM服务器BIOS主备切换的系统,其特征在于,CPLD在接收到CPU0发送的主BIOS启动过程校验失败信号,且BMC未挂死时,不对备BIOS进行控制。


4.如权利要求1或3所述的实现ARM服务器BIOS主备切换的系统,其特征在于,接收到CPU0发送的主BIOS启动过程校验失败信号时,BMC或CPLD先将主BIOS的片选信号拉低,再控制备BIOS启动。


5.如权利要求1所述的实现ARM服务器BIOS主备切换的系统,其特征在于,CPU0在主BIOS的ATF固件从BL1模块到BL2模块,到BL31模块,到BL32模块,到BL33模块启动过程中任一过程出现校验失败时,通过GPIO7管脚通知BMC及CPLD。


6.一种实现ARM服务器BIOS主备切换的方法,其特征在于,包括如下步骤:
S1.系统上电开机,CPU0监控主BIOS的ATF固件各模块启动过程,并在任一启动过程出现校验失败时,通知BMC及CPLD;
S2.CPLD接收到主BIOS启动过程校验失败信号后,判...

【专利技术属性】
技术研发人员:孙秀强乔英良李道童王兵张炳会艾山彬李勋堂
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:江苏;32

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

1