一种多核SoC的固件启动方法及相关装置制造方法及图纸

技术编号:36166908 阅读:19 留言:0更新日期:2022-12-31 20:16
本申请公开了一种多核SoC的固件启动方法,涉及服务器技术领域,包括:将FLASH存储区的第一主分区中的新版固件加载到RAM区,并启动加载到所述RAM区的所述新版固件;若所述新版固件启动失败,则将所述FLASH存储区的第二主分区中的原版固件加载到所述RAM区,并启动加载至所述RAM区的所述原版固件;若所述原版固件启动失败,则将所述FLASH存储区的备份区中的只读固件加载到所述RAM区,并启动所述只读固件。该方法能够确保固件启动,不会影响系统正常运行。本申请还公开了一种多核SoC的固件启动装置、设备以及计算机可读存储介质,均具有上述技术效果。具有上述技术效果。具有上述技术效果。

【技术实现步骤摘要】
一种多核SoC的固件启动方法及相关装置


[0001]本申请涉及服务器
,特别涉及一种多核SoC的固件启动方法;还涉及一种多核SoC的固件启动装置、设备以及计算机可读存储介质。

技术介绍

[0002]随着集成电路IP(intellectual property core,知识产权核)的发展,SoC(System

on

Chip,片上系统)作为嵌入式计算系统沟通核心部件已广泛应用于通信、高性能计算机、工业控制等诸多领域。目前的SoC基本上都是在单芯片中集成多个CPU(Central Processing Unit,中央处理器)核心,形成通常所说的4核、8核或更多核的SoC芯片。
[0003]支持多核处理器平台的实时操作系统体系结构SMP(Symmetric Multi

processing,有对称多处理)架构和AMP(Asymmetric Multi

processing,不对称多处理)架构两种。AMP架构中,每个CPU上运行一个操作系统,每个操作系统拥有自己专用的内存,相互之间通过访问受限的共享内存进行通信。因此,AMP架构下的SoC的各个核有各自独立的系统和固件。
[0004]多核SoC的固件安全启动对于固件开发以及固件升级起到关键的作用,然而传统的多核SoC固件的启动方法存在如下技术缺陷:1)存在固件安全隐患;2)如果启动中遇到固件损坏、校验失败等无法正常启动;3)多核SoC固件任何一个固件出现校验失败、启动失败均使系统无法正常启动;4)固件启动失败后无法回退版本,影响系统正常运行。
[0005]因此,如何解决上述技术缺陷已成为本领域技术人员亟待解决的技术问题。

技术实现思路

[0006]本申请的目的是提供一种多核SoC的固件启动方法,能够确保固件启动,不会影响系统正常运行。本申请的另一个目的是提供一种多核SoC的固件启动装置、设备以及计算机可读存储介质,均具有上述技术效果。
[0007]为解决上述技术问题,本申请提供了一种多核SoC的固件启动方法,包括:将FLASH存储区的第一主分区中的新版固件加载到RAM区,并启动加载到所述RAM区的所述新版固件;若所述新版固件启动失败,则将所述FLASH存储区的第二主分区中的原版固件加载到所述RAM区,并启动加载至所述RAM区的所述原版固件;若所述原版固件启动失败,则将所述FLASH存储区的备份区中的只读固件加载到所述RAM区,并启动所述只读固件。
[0008]可选的,所述新版固件为经过签名加密的固件;签名加密的方式包括:分别对各个核固件进行签名加密;将签名加密后的各个核固件整合为新版固件整体,并对所述新版固件整体进行签名加密。
[0009]可选的,所述启动加载至所述RAM区的所述新版固件前还包括:对所述新版固件整体进行签名校验;若所述新版固件整体签名校验成功,则对所述新版固件中的各个所述核固件进行签名校验;若所述新版固件中各个所述核固件均签名校验成功,则启动加载至所述RAM区的所述新版固件;若所述新版固件整体签名校验失败或至少一个所述核固件签名校验失败,则将所述第二主分区中的所述原版固件加载到所述RAM区,并启动加载至所述RAM区的所述原版固件。
[0010]可选的,所述启动加载至所述RAM区的所述原版固件前还包括:对所述原版固件整体进行签名校验;若所述原版固件整体签名校验成功,则对所述原版固件中的各个所述核固件进行签名校验;若所述原版固件中各个所述核固件均签名校验成功,则启动加载至所述RAM区的所述原版固件;若所述原版固件整体签名校验失败或至少一个所述核固件签名校验失败,则将所述FLASH存储区的备份区中的只读固件加载到所述RAM区,并启动所述只读固件。
[0011]可选的,所述新版固件整体的签名加密算法与所述核固件的签名加密算法不同。
[0012]可选的,所述新版固件整体的签名加密算法为非对称加密算法,所述核固件的签名加密算法为对称加密算法。
[0013]可选的,所述将FLASH存储区的第一主分区中的新版固件加载到RAM区前还包括:读取所述FLASH存储区的FLASH固件升级信息;若所述FLASH存储区固件升级成功,则将所述第一主分区中的所述新版固件加载到所述RAM区;若所述FLASH存储区固件升级失败,则将所述第二主分区中的所述原版固件加载到所述RAM区,并启动加载至所述RAM区的所述原版固件。
[0014]可选的,还包括:当签名校验失败时,记录校验失败信息。
[0015]可选的,还包括:当固件启动失败时,记录启动失败信息。
[0016]可选的,还包括:当固件启动成功时,读取固件启动信息;若根据所述固件启动信息确定所述新版固件启动成功,则将所述第一主分区中的所述新版固件更新至所述第二主分区;若根据所述固件启动信息确定所述原版固件启动成功,则将所述第二主分区中的所述原版固件更新至所述第一主分区;若根据所述固件启动信息确定所述只读固件启动成功,则重新进行固件升级与启动。
[0017]可选的,还包括:
在所述FLASH存储区的固件升级信息存储区存储所述FLASH固件升级信息。
[0018]可选的,所述FLASH固件升级信息包括固件名称、固件版本、固件升级状态以及异常信息。
[0019]为解决上述技术问题,本申请还提供了一种多核SoC的固件启动装置,包括:第一启动模块,用于将FLASH存储区的第一主分区中的新版固件加载到RAM区,并启动加载到所述RAM区的所述新版固件;第二启动模块,用于若所述新版固件启动失败,则将所述FLASH存储区的第二主分区中的原版固件加载到所述RAM区,并启动加载至所述RAM区的所述原版固件;第三启动模块,用于若所述原版固件启动失败,则将所述FLASH存储区的备份区中的只读固件加载到所述RAM区,并启动所述只读固件。
[0020]为解决上述技术问题,本申请还提供了一种多核SoC的固件启动设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如上任一项所述的多核SoC的固件启动方法的步骤。
[0021]为解决上述技术问题,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上任一项所述的多核SoC的固件启动方法的步骤。
[0022]本申请所提供的多核SoC的固件启动方法,包括:将FLASH存储区的第一主分区中的新版固件加载到RAM区,并启动加载到所述RAM区的所述新版固件;若所述新版固件启动失败,则将所述FLASH存储区的第二主分区中的原版固件加载到所述RAM区,并启动加载至所述RAM区的所述原版固件;若所述原版固件启动失败,则将所述FLASH存储区的备份区中的只读固件加载到所述RAM区,并启动所述只读固件。
[0023]可见,本申请所提供的多核SoC的固件启动方法,在FLASH存储区设置了用于写入新版固件的第一主分区、用于存储原版固件的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种多核SoC的固件启动方法,其特征在于,包括:将FLASH存储区的第一主分区中的新版固件加载到RAM区,并启动加载到所述RAM区的所述新版固件;若所述新版固件启动失败,则将所述FLASH存储区的第二主分区中的原版固件加载到所述RAM区,并启动加载至所述RAM区的所述原版固件;若所述原版固件启动失败,则将所述FLASH存储区的备份区中的只读固件加载到所述RAM区,并启动所述只读固件。2.根据权利要求1所述的固件启动方法,其特征在于,所述新版固件为经过签名加密的固件;签名加密的方式包括:分别对各个核固件进行签名加密;将签名加密后的各个核固件整合为新版固件整体,并对所述新版固件整体进行签名加密。3.根据权利要求2所述的固件启动方法,其特征在于,所述启动加载至所述RAM区的所述新版固件前还包括:对所述新版固件整体进行签名校验;若所述新版固件整体签名校验成功,则对所述新版固件中的各个所述核固件进行签名校验;若所述新版固件中各个所述核固件均签名校验成功,则启动加载至所述RAM区的所述新版固件;若所述新版固件整体签名校验失败或至少一个所述核固件签名校验失败,则将所述第二主分区中的所述原版固件加载到所述RAM区,并启动加载至所述RAM区的所述原版固件。4.根据权利要求1所述的固件启动方法,其特征在于,所述启动加载至所述RAM区的所述原版固件前还包括:对所述原版固件整体进行签名校验;若所述原版固件整体签名校验成功,则对所述原版固件中的各个核固件进行签名校验;若所述原版固件中各个所述核固件均签名校验成功,则启动加载至所述RAM区的所述原版固件;若所述原版固件整体签名校验失败或至少一个所述核固件签名校验失败,则将所述FLASH存储区的备份区中的只读固件加载到所述RAM区,并启动所述只读固件。5.根据权利要求2所述的固件启动方法,其特征在于,所述新版固件整体的签名加密算法与所述核固件的签名加密算法不同。6.根据权利要求5所述的固件启动方法,其特征在于,所述新版固件整体的签名加密算法为非对称加密算法,所述核固件的签名加密算法为对称加密算法。7.根据权利要求1所述的固件启动方法,其特征在于,所述将FLASH存储区的第一主分区中的新版固件加载到RAM区前还包括:读取所述FLASH存储区的FLASH...

【专利技术属性】
技术研发人员:李维校王磊孙明刚
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

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

1