固件升级方法、上位机监控终端及计算机可读存储介质与流程

摘要: 本技术涉及固件升级,具体涉及一种固件升级方法、上位机监控终端及计算机可读存储介质。背景技术:1、在光伏逆变器的实际运行与维护过程中,主控芯片与运算芯片作为核心控...
固件升级方法、上位机监控终端及计算机可读存储介质与流程

本技术涉及固件升级,具体涉及一种固件升级方法、上位机监控终端及计算机可读存储介质。

背景技术:

1、在光伏逆变器的实际运行与维护过程中,主控芯片与运算芯片作为核心控制单元,其固件升级的稳定性与高效性直接影响整机运行性能。当前行业内普遍采用的升级方案中,两大芯片对应的固件多采用分开独立下发的模式,即上位机监控终端先单独下发主控芯片固件,待其完成下载、烧录与更新后,再启动运算芯片固件的传输与升级流程,或反之依次执行。这种串行下发方式存在显著弊端:一方面,两次独立传输需分别建立通信连接、验证传输链路、处理数据校验,大幅增加了整体升级耗时,尤其在大规模光伏电站中,多台设备同时升级时,累计耗时会急剧增加,严重影响电站运维效率;另一方面,由于缺乏明确的升级顺序协同机制,容易带来升级耗时长的问题。因此,如何提高光伏设备固件升级过程中的效率是本领域技术人员亟需解决的技术问题。

技术实现思路

1、本技术公开一种固件升级方法、上位机监控终端及计算机可读存储介质,可以提高双固件的升级效率。

2、第一方面,本技术公开了一种固件升级方法,所述方法应用于固件升级系统,所述固件升级系统包括上位机监控终端和光伏逆变器;所述光伏逆变器包括主控芯片、运算芯片;所述方法包括:

3、所述上位机监控终端接收所述光伏逆变器发起的固件升级请求;

4、所述上位机监控终端响应于所述固件升级请求,下发待升级的第一固件文件和第二固件文件至所述光伏逆变器,以使所述光伏逆变器执行以下动作:

5、控制所述运算芯片先完成针对所述第二固件文件的下载与烧录,在所述运算芯片烧录完成后,向所述主控芯片发送升级完成标志;所述主控芯片接收所述升级完成标志后,复位进入bootloader,完成针对所述第一固件文件的下载与更新。

6、实施本实施例,针对升级流程,设计了一种主动协同反馈机制,运算芯片完成固件下载与烧录固化后,主动向主控芯片上报升级完成标志,以便主控芯片完成自身固件下载与烧录固化。相较于现有技术中的被动延时等待方案(现有技术中上位机盲目等待延时)来说,可以提高双芯片固件升级的效率。

7、在一种可能的实现方式中,所述光伏逆变器还包括内部 flash;所述内部flash预留有安全存储分区,用于存储根公钥;所述方法还包括:

8、所述上位机监控终端对所述主控芯片对应的第一原始固件、所述运算芯片对应的第二原始固件分别进行数据处理,生成标准格式的第一固件文件、第二固件文件;

9、所述上位机监控终端对所述第一固件文件、第二固件文件分别执行哈希运算得到对应数据摘要,并采用加密算法的私钥加密所述数据摘要生成数字签名,将各数字签名分别拼接至对应固件文件尾部,形成第一带签名固件文件和第二带签名固件文件;

10、所述上位机监控终端响应于所述固件升级请求,下发待升级的第一固件文件和第二固件文件至所述光伏逆变器,包括:

11、所述上位机监控终端下发所述第一带签名固件文件和第二带签名固件文件至光伏逆变器,以使所述光伏逆变器执行以下动作:

12、基于所述内部flash存储的所述根公钥对所述第一签名固件文件和所述第二签名固件文件分别进行校验,在校验通过的情况下,控制所述运算芯片先完成针对所述第二固件文件的下载与烧录,在所述运算芯片烧录完成后,向所述主控芯片发送升级完成标志;所述主控芯片接收所述升级完成标志后,复位进入bootloader,完成针对所述第一固件文件的下载与更新。

13、实施本技术实施例,通过对主控芯片对应第一原始固件进行数据处理,生成标准格式的第一固件文件,以及通过对运算芯片对应的第二原始固件进行数据处理,生成标准格式的第二固件文件,之后,对第一固件文件和第二固件文件分别执行哈希运算得到对应数据摘要,并采用加密算法的私钥加密数据摘要生成数字签名,将各数字签名分别拼接至对应固件文件尾部,形成第一带签名固件文件和第二签名固件文件,对光伏逆变器来说,可以基于内部flash存储的所述根公钥对所述第一签名固件文件和所述第二签名固件文件分别进行校验,在校验通过的情况下,控制运算芯片先完成固件下载与烧录固化,之后,运算芯片主动向主控芯片上报升级完成标志,以便主控芯片完成自身固件下载与烧录固化。以这种方式,一方面,提高了升级过程的安全性;另一方面,提高了生芯片固件升级的效率。

14、在一种可能的实现方式中,所述第一原始固件为 m3 hex 固件,所述上位机监控终端对所述主控芯片对应的第一原始固件进行数据处理,包括:剔除冗余地址校验数据并填充空白段,生成标准 bin 格式的第一固件文件。

15、在一种可能的实现方式中,所述第二原始固件为 dsp hex 固件,所述上位机监控终端对所述运算芯片对应的第二原始固件进行数据处理,包括:剔除冗余数据并增加专属功能码,转换为 bin 格式的第二固件文件。

16、实施本技术实施例,对两种hex固件差异化规整为bin文件,可以解决固件格式不兼容问题,保障烧录顺利执行。

17、在一种可能的实现方式中,所述光伏逆变器还包括外部 flash;所述外部 flash划分为独立的第一压缩固件存储区、第二压缩固件存储区,分别用于存储所述主控芯片、所述运算芯片的压缩固件;在所述将各数字签名分别拼接至对应固件文件尾部,形成第一带签名固件文件和第二带签名固件文件之后,还包括:

18、所述上位机监控终端采用压缩算法对所述第一带签名固件文件和所述第二带签名固件文件进行分块压缩,得到第一压缩固件包和第二压缩固件包;

19、所述上位机监控终端在所述第一压缩固件包和所述第二压缩固件包末尾追加文件标识信息,所述文件标识信息用于区分纯加密文件和加密压缩混合文件;

20、所述上位机监控终端下发所述第一带签名固件文件和所述第二带签名固件文件至所述光伏逆变器,包括:

21、所述上位机监控终端下发所述第一压缩固件包和所述第二压缩固件包至所述光伏逆变器,所述光伏逆变器将所述第一压缩固件包和所述第二压缩固件包分别存储至所述第一压缩固件存储区和所述第二压缩固件存储区,以使所述光伏逆变器对所述第一压缩固件和所述第二压缩固件执行与所述压缩算法适配的分块解压操作,并基于所述内部flash存储的所述根公钥对解压后的所述第一签名固件文件和所述第二签名固件文件分别进行校验,在校验通过的情况下,控制所述运算芯片先完成针对所述第二固件文件的下载与烧录,在所述运算芯片烧录完成后,向所述主控芯片发送升级完成标志;所述主控芯片接收所述升级完成标志后,复位进入bootloader,完成针对所述第一固件文件的下载与更新。

22、实施本技术实施例,在得到第一带签名固件和第二带签名固件之后,可以采用压缩算法对第一带签名固件和第二带签名固件进行分块压缩,得到第一压缩固件包和第二压缩固件包,之后,将其下发给到光伏逆变器,光伏逆变器对第一压缩固件包和第二压缩固件包执行与压缩算法适配的分块解压操作,并基于内部flash存储的所述根公钥对解压后的所述第一签名固件文件和所述第二签名固件文件分别进行校验,在校验通过的情况下,所述光伏逆变器控制所述运算芯片和所述主控芯片先后完成自身固件的下载与更新。一方面,固件分块压缩可以缩小传输体量,可以提高双芯片固件升级的效率;另一方面,通过对固件进行加密,可以提高固件升级过程的安全性。

23、在一种可能的实现方式中,所述压缩算法为fastlz算法;分块压缩的固定分块长度为4k;每一分块头部封装明文长度、压缩后数据长度。

24、实施本技术实施例,fastlz固定4k分块压缩并封装明文长度,压缩后数据长度信息,降低数据包损坏导致的解压失败概率。

25、在一种可能的实现方式中,所述方法还包括:

26、通过整机lcd 同步输出全局升级进度信息,以全局升级进度条形式呈现。

27、实施本技术实施例,lcd 全局进度条可视化展示,便于用户直观获取全局升级进度,提高了升级过程的容错性。

28、在一种可能的实现方式中,所述主控芯片为 m3 主控芯片,其固件烧录时以 bin格式写入对应 flash 存储区;

29、所述运算芯片为 dsp 运算芯片,其固件烧录时转换为 hex 格式写入对应 flash存储区。

30、实施本技术实施例,可以实现双芯片的差异化bin/hex格式烧录。

31、第二方面,本技术公开了一种上位机监控终端,所述上位机监控终端应用于固件升级系统,所述固件升级系统包括上位机监控终端和光伏逆变器;所述光伏逆变器包括主控芯片、运算芯片;所述上位机监控终端包括通信模块;其中,

32、所述通信模块,用于:接收所述光伏逆变器发起的固件升级请求;响应于所述固件升级请求,下发待升级的第一固件文件和第二固件文件至所述光伏逆变器,以使所述光伏逆变器执行以下动作:

33、控制所述运算芯片先完成针对所述第二固件文件的下载与烧录,在所述运算芯片烧录完成后,向所述主控芯片发送升级完成标志;所述主控芯片接收所述升级完成标志后,复位进入bootloader,完成针对所述第一固件文件的下载与更新。

34、实施本实施例,针对升级流程,设计了一种主动协同反馈机制,运算芯片完成固件下载与烧录固化后,主动向主控芯片上报升级完成标志,以便主控芯片完成自身固件下载与烧录固化。相较于现有技术中的被动延时等待方案(现有技术中上位机盲目等待延时)来说,可以提高双芯片固件升级的效率。

35、第三方面,本技术公开了一种上位机监控终端,包括处理器和存储器,所述处理器和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如上述第一方面任一项所述的方法。

36、第四方面,本技术公开了一种计算机可读存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如上述第一方面任一项所述的方法。

37、第五方面,本技术公开了一种计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如上述第一方面任一项所述的方法。