技术特征:
1.一种用于智能网卡中FPGA的固件升级方法,其特征在于,所述方法包括:
响应于检测到FPGA上电,则从FPGA挂载的FLASH中依次加载运行基础固件和初始业务固件,其中,所述基础固件用于使FPGA分别与远程管理端和主机端进行通信;
响应于FPGA接收到远程管理端发送的固件升级请求,则对FPGA与远程管理端之间通信链路的安全性进行验证;
响应于确认FPGA与远程管理端之间的通信链路安全,则从远程管理端读取目标业务固件,并将所述目标业务固件写入FPGA挂载的FLASH。
2.根据权利要求1所述的用于智能网卡中FPGA的固件升级方法,其特征在于,所述方法还包括:
响应于完成将所述目标业务固件写入FPGA挂载的FLASH,则对FPGA进行下电;
响应于再次检测到FPGA上电,则FPGA挂载的FLASH中加载并运行基础固件和所述目标业务固件。
3.根据权利要求1所述的用于智能网卡中FPGA的固件升级方法,其特征在于,所述从FPGA挂载的FLASH中依次加载运行基础固件和初始业务固件的步骤包括:
首先从FPGA挂载的FLASH中加载运行PCIe接口固件以完成主机端对FPGA中PCIe接口的初始化;
然后从FPGA挂载的FLASH中加载运行FPGA网络接口固件、IPSec功能固件和微处理器固件以使FPGA具备微处理器模块、IPSec模块和FLASH控制模块;
最后从FPGA挂载的FLASH中加载运行初始业务固件。
4.根据权利要求3所述的用于智能网卡中FPGA的固件升级方法,其特征在于,所述对FPGA与远程管理端之间通信链路的安全性进行验证的步骤包括:
利用所述微处理器模块分别与所述远程管理端和所述IPSec模块建立通信并交换二者的IPSec密钥;
由所述远程管理端和所述IPSec模块分别对所接收到的IPSec密钥进行验证;
响应于所述远程管理端和所述IPSec模块对所接收到的IPSec密钥验证均通过,则确认FPGA与远程管理端之间的通信链路安全;
响应于所述远程管理端,和/或所述IPSec模块对所接收到的IPSec密钥验证未通过,则确认FPGA与远程管理端之间的通信链路不安全。
5.根据权利要求3所述的用于智能网卡中FPGA的固件升级方法,其特征在于,所述从远程管理端读取目标业务固件,并将所述目标业务固件写入FPGA挂载的FLASH的骤包括:
利用所述微处理器模块从所述远程管理端读取目标业务固件,并发送给所述FLASH控制模块;
利用所述FLASH控制模块将所接收的所述目标业务固件写入FPGA挂载的FLASH中所述初始业务固件所在的位置。
6.根据权利要求3所述的用于智能网卡中FPGA的固件升级方法,其特征在于,所述微处理器模块为MicroBlaze微处理器或者为Nios微处理器。
7.根据权利要求3所述的用于智能网卡中FPGA的固件升级方法,其特征在于,所述远程管理端和所述微处理器模块通过高速网络接口连接。
8.一种用于智能网卡中FPGA的固件升级装置,其特征在于,所述装置包括:
固件加载单元,所述固件加载单元配置用于响应于检测到FPGA上电,则从FPGA挂载的FLASH中依次加载运行基础固件和初始业务固件,其中,所述基础固件用于使FPGA分别与远程管理端和主机端进行通信;
验证单元,所述验证单元配置用于响应于FPGA接收到远程管理端发送的固件升级请求,则对FPGA与远程管理端之间通信链路的安全性进行验证;
固件写入单元,所述固件写入单元配置用于响应于确认FPGA与远程管理端之间的通信链路安全,则从远程管理端读取目标业务固件,并将所述目标业务固件写入FPGA挂载的FLASH。
9.一种计算机设备,其特征在于,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器中运行的计算机程序,所述处理器执行所述程序时执行权利要求1-7任意一项所述的用于智能网卡中FPGA的固件升级方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时执行权利要求1-7任意一项所述的用于智能网卡中FPGA的固件升级方法。
技术总结
本发明涉及一种用于智能网卡中FPGA的固件升级方法和装置。方法包括:响应于检测到FPGA上电,则从FPGA挂载的FLASH中依次加载运行基础固件和初始业务固件,基础固件用于使FPGA分别与远程管理端和主机端进行通信;响应于FPGA接收到远程管理端发送的固件升级请求,则对FPGA与远程管理端之间通信链路的安全性进行验证;响应于确认FPGA与远程管理端之间的通信链路安全,则从远程管理端读取目标业务固件,并将目标业务固件写入FPGA挂载的FLASH。本发明的方案实现了在不借助外部CPU或SoC芯片参与的情况下,从远程管理端安全地获取智能网卡FPGA业务固件进行升级,易于部署实现的同时也保证安全性。
技术研发人员:陈贝;
受保护的技术使用者:山东云海国创云计算装备产业创新中心有限公司;
技术研发日:2022.01.26
技术公布日:2022.05.31
本文用于企业家、创业者技术爱好者查询,结果仅供参考。