基于制造技术

技术编号:39675273 阅读:9 留言:0更新日期:2023-12-11 18:41
本发明专利技术公开了一种基于

【技术实现步骤摘要】
基于BMC的FPGA固件处理方法及装置


[0001]本专利技术涉及电子设备
,具体而言,涉及一种基于
BMC

FPGA
固件处理方法及装置


技术介绍

[0002]目前,在服务器安全领域,服务器的固件安全越来越引起使用者和开发者的重视

一旦服务器固件受损,带给使用者的是灾难性的后果

其中,负责服务器上电时序和逻辑控制的
FPGA
等重要固件的安全问题尤为重要

[0003]在实践中发现,现在市场上主要采用基于可信密码模块对
FPGA
进行完整性度量和恢复的机制,来提高固件安全性

然而,这种实现方式需要增加额外的可信密码模块花销,通信效率低,并且缺少运行时的监控逻辑和恢复功能,服务器安全可靠性较差

[0004]针对上述的问题,目前尚未提出有效的解决方案


技术实现思路

[0005]本专利技术实施例提供了一种基于
BMC

FPGA
固件处理方法及装置,能够使用
BMC

FPGA
进行完整性度量和恢复,可以提高效率,同时可以增强服务器安全可靠性

[0006]根据本专利技术实施例的一个方面,提供了一种基于
BMC

FPGA
固件处理方法,服务器上的
FPGA
芯片和
FPGA
固件芯片共享一条总线连接到
BMC
,并且,所述
BMC
通过外部电路切换连接到所述
FPGA
芯片或者所述
FPGA
固件芯片,所述方法包括:控制所述
BMC
通过外部电路切换连接到所述
FPGA
固件芯片,并对所述
FPGA
固件芯片进行完整性验证,得到完整性验证结果;如果所述完整性验证结果为验证成功,则控制所述
BMC
通过外部电路切换连接到所述
FPGA
芯片,并对所述
FPGA
芯片加载
FPGA
固件,以实现启动
FPGA
;如果所述完整性验证结果为验证失败,则从所述
BMC
的文件系统中读取
FPGA
固件镜像,并将所述
FPGA
固件镜像更新到所述
FPGA
固件芯片,以及控制所述
BMC
通过外部电路切换连接到所述
FPGA
芯片,并对所述
FPGA
芯片加载
FPGA
固件,以实现启动
FPGA。
[0007]作为一种可选的实施方式,基所述
BMC
在默认状态下通过外部电路连接至所述
FPGA
固件芯片

[0008]作为一种可选的实施方式,在将所述
FPGA
固件镜像更新到所述
FPGA
固件芯片之后,所述方法还包括:控制所述
BMC
通过硬件信号发送提示信息,其中,所述提示信息用于提示所述
FPGA
固件镜像已更新完成

[0009]作为一种可选的实施方式,在将所述
FPGA
固件镜像更新到所述
FPGA
固件芯片的过程中,所述方法还包括:控制所述
BMC
开启监控系统的线程,并关闭
FPGA
的监控线程,以通过所述
BMC
的监控系统的线程监控设备状态任务信息;
将所述设备状态任务信息与预先存储在
EEPROM
中的信息进行比较;如果比较结果指示所述设备状态任务信息不同于所述预先存储在
EEPROM
中的信息,则基于所述设备状态任务信息,同步更新
FPGA
的寄存器

[0010]作为一种可选的实施方式,所述设备状态任务信息包括以下至少一项:
CPU
的设备状态任务信息

内存的设备状态任务信息

外部
PCIe
设备的设备状态任务信息

电源的设备状态任务信息

[0011]作为一种可选的实施方式,在将所述
FPGA
固件镜像更新到所述
FPGA
固件芯片之后,所述方法还包括:控制所述
BMC
关闭监控系统的线程,并开启
FPGA
的监控线程,以通过所述
FPGA
的监控线程读取硬件标志位;如果所述硬件标志位不是初始值,则对硬件信号不执行初始化操作

[0012]根据本专利技术实施例的另一方面,还提供了一种基于
BMC

FPGA
固件处理装置应用于服务器,所述服务器上的
FPGA
芯片和
FPGA
固件芯片共享一条总线连接到
BMC
,并且,所述
BMC
通过外部电路切换连接到所述
FPGA
芯片或者所述
FPGA
固件芯片,所述装置包括:验证单元,用于控制所述
BMC
通过外部电路切换连接到所述
FPGA
固件芯片,并对所述
FPGA
固件芯片进行完整性验证,得到完整性验证结果;第一启动单元,用于如果所述完整性验证结果为验证成功,则控制所述
BMC
通过外部电路切换连接到所述
FPGA
芯片,并对所述
FPGA
芯片加载
FPGA
固件,以实现启动
FPGA
;第二启动单元,用于如果所述完整性验证结果为验证失败,则从所述
BMC
的文件系统中读取
FPGA
固件镜像,并将所述
FPGA
固件镜像更新到所述
FPGA
固件芯片,以及控制所述
BMC
通过外部电路切换连接到所述
FPGA
芯片,并对所述
FPGA
芯片加载
FPGA
固件,以实现启动
FPGA。
[0013]作为一种可选的实施方式,所述
BMC
在默认状态下通过外部电路连接至所述
FPGA
固件芯片

[0014]作为一种可选的实施方式,所述装置还包括:提示单元,用于在将所述
FPGA
固件镜像更新到所述
FPGA
固件芯片之后,控制所述
BMC
通过硬件信号发送提示信息,其中,所述提示信息用于提示所述
FPGA
固件镜像已更新完本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种基于
BMC

FPGA
固件处理方法,其特征在于,服务器上的
FPGA
芯片和
FPGA
固件芯片共享一条总线连接到
BMC
,并且,所述
BMC
通过外部电路切换连接到所述
FPGA
芯片或者所述
FPGA
固件芯片,所述方法包括:控制所述
BMC
通过外部电路切换连接到所述
FPGA
固件芯片,并对所述
FPGA
固件芯片进行完整性验证,得到完整性验证结果;如果所述完整性验证结果为验证成功,则控制所述
BMC
通过外部电路切换连接到所述
FPGA
芯片,并对所述
FPGA
芯片加载
FPGA
固件,以实现启动
FPGA
;如果所述完整性验证结果为验证失败,则从所述
BMC
的文件系统中读取
FPGA
固件镜像,并将所述
FPGA
固件镜像更新到所述
FPGA
固件芯片,以及控制所述
BMC
通过外部电路切换连接到所述
FPGA
芯片,并对所述
FPGA
芯片加载
FPGA
固件,以实现启动
FPGA。2.
根据权利要求1所述的基于
BMC

FPGA
固件处理方法,其特征在于,所述
BMC
在默认状态下通过外部电路连接至所述
FPGA
固件芯片
。3.
根据权利要求1所述的基于
BMC

FPGA
固件处理方法,其特征在于,在将所述
FPGA
固件镜像更新到所述
FPGA
固件芯片之后,所述方法还包括:控制所述
BMC
通过硬件信号发送提示信息,其中,所述提示信息用于提示所述
FPGA
固件镜像已更新完成
。4.
根据权利要求1所述的基于
BMC

FPGA
固件处理方法,其特征在于,在将所述
FPGA
固件镜像更新到所述
FPGA
固件芯片的过程中,所述方法还包括:控制所述
BMC
开启监控系统的线程,并关闭
FPGA
的监控线程,以通过所述
BMC
的监控系统的线程监控设备状态任务信息;将所述设备状态任务信息与预先存储在
EEPROM
中的信息进行比较;如果比较结果指示所述设备状态任务信息不同于所述预先存储在
EEPROM
中的信息,则基于所述设备状态任务信息,同步更新
FPGA
的寄存器
。5.
根据权利要求1所述的基于
BMC

FPGA
固件处理方法,其特征在于,所述设备状态任务信息包括以下至少一项:
CPU
的设备状态任务信息

内存的设备状态任务信息

外部
PCIe
设备的设备状态任务信息

电源的设备状态任务信息
。6.
根据权利要求1所述的基于
BMC

FPGA

【专利技术属性】
技术研发人员:刘雅娟
申请(专利权)人:同方计算机有限公司
类型:发明
国别省市:

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

1