一种芯片软件升级方法技术

技术编号:35100018 阅读:18 留言:0更新日期:2022-10-01 17:06
本发明专利技术涉及软件升级技术领域,具体涉及一种芯片软件升级方法,包括步骤主控芯片在接收到服务终端传输的新版软件数据时,基于所述新版软件数据中携带的配置信息,进行数据完整性以及数据准确性校验;主控芯片在确定数据校验成功时,根据数据所属类型以及待写入的数据量,选择相应的写入方式将所述新版软件数据写入到备份程序区的目标位置处,并在确定写入完成时,进入重启模式;主控芯片在确定重启完成时,采用所述备份程序区中的目标位置处写入的新版软件数据,替换原先的旧版本软件数据,以实现旧版本的软件升级。本发明专利技术解决了由于缺乏数据完整性防护机制,导致升级过程中存在数据不完整的问题,从而提高升级效率。从而提高升级效率。从而提高升级效率。

【技术实现步骤摘要】
一种芯片软件升级方法


[0001]本专利技术涉及软件升级
,具体涉及一种芯片软件升级方法。

技术介绍

[0002]随着技术的进步,芯片逐渐支持软件的自升级功能,通过某些途径,包括但不限于使用串口通信、TCP/IP、USB接口、SD卡等方式,将烧录代码传给芯片,芯片自己将烧录代码的数据写入到芯片的flash中,以完成软件的升级。虽然,该方式能够将软件升级变得极为便利,但是,传输过程中往往存在着传输对象被破坏或篡改的情况,这一情况的发生将导致软件升级失败甚至影响系统的正常运行,存在可靠性差的问题。

技术实现思路

[0003]为了解决上述问题,本专利技术提供了一种芯片软件升级方法,具体技术方案如下:一种芯片软件升级方法,包括以下步骤:S1、主控芯片在接收到服务终端传输的新版软件数据时,基于所述新版软件数据中携带的配置信息,进行数据完整性以及数据准确性校验;S2、主控芯片在确定数据校验成功时,根据数据所属类型以及待写入的数据量,选择相应的写入方式将所述新版软件数据写入到备份程序区的目标位置处,并在确定写入完成时,进入重启模式;S3、主控芯片在确定重启完成时,采用所述备份程序区中的目标位置处写入的新版软件数据,替换原先的旧版本软件数据,以实现旧版本的软件升级。
[0004]优选地,所述步骤S1中的所述配置信息包括关键数据字段、各关键数据字段之间的关联信息以及签名认证信息。
[0005]优选地,所述步骤S1具体包括以下步骤:S11、主控芯片对各个关键数据字段进行完整性检验,得到相应的检验结果;S12、主控芯片基于所述检验结果,在确定通过完整性检验的关键数据字段的数量大于预设的数量阈值时,匹配各关键数据字段之间的关联性;S13、主控芯片在确定关联性匹配成功的情况下,基于所述签名认证信息进行签名认证,以进行数据准确性校验。
[0006]优选地,所述步骤S2中所述备份程序区中划分有若干个存储区域,且各存储区域分别用于存储不同类型的写入数据。
[0007]优选地,所述步骤S2具体包括以下步骤:S21、主控芯片根据数据所属类型从所述备份程序区中的多个存储区域中,筛选出相应的目标存储区域;S22、针对待写入的目标数据,确定所述目标数据的目标数据量,并在确定所述目标数据量小于目标存储区域的可读存储容量时,将所述目标数据写入到备份程序区的目标存储区域中,以及,在确定所述目标数据量大于或等于目标存储区域的可读存储容量时,通
过释放目标存储区域的存储空间和/或进行无损耗数据压缩,以保证目标数据的顺利写入。
[0008]优选地,所述步骤S22还包括:主控芯片根据目标存储区域的可读存储容量、内部运行性能数据调整目标数据的写入速度,以及按照调整后的写入速度,将所述目标数据写入到备份程序区的目标存储区域中。
[0009]优选地,所述步骤S3具体包括以下步骤: S31、主控芯片在确定新版软件数据写入完成时,进行有效升级标志位的设定,并将所述有效升级标志位绑定缓存到与对应新版软件数据相关联的存储区域中; S32、在重启的过程中,主控芯片基于预设的检测规则,进行有效升级标志位的检测; S33、主控芯片在确定成功检测到对应有效升级标志位的时候,进行对应新版软件数据的关联,并基于关联到的新版软件数据,替换应用程序区的旧版本软件数据,以实现旧版本的软件升级;S34、主控芯片在完成旧版本软件升级之后,进行无效升级标志位的设定和/或进行对应有效升级标志位的清除,以避免下次重启时产生误升级的情况。
[0010]优选地,还包括:S4、针对待确认升级状态的目标软件,主控芯片将读取所述目标软件的升级信息,并将所述升级信息与预设的升级规则进行匹配,以及基于得到的匹配结果,判断是否实现旧版本的软件升级,其中,所述升级信息包括升级后的软件版本号、软件运行状态、软件历史运行参数与软件实时运行参数之间的对比情况、以及升级后软件发生异常事件的频率中的至少一种。
[0011]优选地,还包括:S5、主控芯片在确定旧版本软件升级失败时,将软件重新恢复到升级之前的版本,以及向服务终端发送升级异常指令,以触发所述服务终端重新发送新版本软件数据或在确定存在数据异常篡改的情况时,停止发送新版本软件数据。
[0012]优选地,还包括:步骤S1中,服务终端将在预设的检测周期内,检查软件数据是否存在更新,和/或基于版本更新信息,判断软件数据更新情况,若是,则进行最新软件数据的获取,并将获取到的最新软件数据发送给主控芯片,以由主控芯片基于接收到的最新软件数据进行旧版本软件的升级。
[0013]本专利技术的有益效果为: 本专利技术提供了一种芯片软件升级方法,主控芯片根据配置信息对新版软件数据,进行数据完整性以及数据准确性校验,解决了由于缺乏数据完整性防护机制,导致升级过程中存在数据不完整的问题,从而提高升级效率。另外,在将新版软件数据写入到备份程序区时,根据数据所属类型以及待写入的数据量进行写入速度的调整,以此来缓解存储压力以及保证设备的正常运行,提高了设备运行的稳定性。最后,在升级过程中,将需要升级的新版软件下载到主芯片内的程序备份区内,使得在下载过程中如果出错或丢包的情况下,仍然能够同步运行旧版本软件数据,保障设备的稳定运行,其中,主控芯片在接收到新版软件数据的所有数据之后,再利用写入的新版软件数据替换应用程序区的旧版本软件数据,从而进一步保证了升级过程的稳定可靠性。
附图说明
[0014]为了更清楚地说明本专利技术具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。在所有附图中,类似的元件或部分一般由类似的附图标记标识。附图中,各元件或部分并不一定按照实际的比例绘制。
[0015]图1为本专利技术的流程示意图。
具体实施方式
[0016]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0017]应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和
ꢀ“
包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
[0018]还应当理解,在本专利技术说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本专利技术。如在本专利技术说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
[0019]还应当进一步理解,在本专利技术说明书和所附权利要求书中使用的术语“和/ 或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
[0020]如图1所示,本专利技术的具体实施方式提供了一种芯片软件升级方法,包括以下步骤:S1、主控芯片在接收到服本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种芯片软件升级方法,其特征在于,包括以下步骤:S1、主控芯片在接收到服务终端传输的新版软件数据时,基于所述新版软件数据中携带的配置信息,进行数据完整性以及数据准确性校验;S2、主控芯片在确定数据校验成功时,根据数据所属类型以及待写入的数据量,选择相应的写入方式将所述新版软件数据写入到备份程序区的目标位置处,并在确定写入完成时,进入重启模式;S3、主控芯片在确定重启完成时,采用所述备份程序区中的目标位置处写入的新版软件数据,替换原先的旧版本软件数据,以实现旧版本的软件升级。2.根据权利要求1所述的一种芯片软件升级方法,其特征在于,所述步骤S1中的所述配置信息包括关键数据字段、各关键数据字段之间的关联信息以及签名认证信息。3.根据权利要求2所述的一种芯片软件升级方法,其特征在于,所述步骤S1具体包括以下步骤:S11、主控芯片对各个关键数据字段进行完整性检验,得到相应的检验结果;S12、主控芯片基于所述检验结果,在确定通过完整性检验的关键数据字段的数量大于预设的数量阈值时,匹配各关键数据字段之间的关联性;S13、主控芯片在确定关联性匹配成功的情况下,基于所述签名认证信息进行签名认证,以进行数据准确性校验。4.根据权利要求1所述的一种芯片软件升级方法,其特征在于,所述步骤S2中所述备份程序区中划分有若干个存储区域,且各存储区域分别用于存储不同类型的写入数据。5.根据权利要求4所述的一种芯片软件升级方法,其特征在于,所述步骤S2具体包括以下步骤:S21、主控芯片根据数据所属类型从所述备份程序区中的多个存储区域中,筛选出相应的目标存储区域;S22、针对待写入的目标数据,确定所述目标数据的目标数据量,并在确定所述目标数据量小于目标存储区域的可读存储容量时,将所述目标数据写入到备份程序区的目标存储区域中,以及,在确定所述目标数据量大于或等于目标存储区域的可读存储容量时,通过释放目标存储区域的存储空间和/或进行无损耗数据压缩,以保证目标数据的顺利写入。6.根据权利要求5所述的一种芯片软件升级方法,其特征在于,所述步骤S22还包括:主控芯片根据...

【专利技术属性】
技术研发人员:周柯金庆忍王晓明莫枝阅吴丽芳
申请(专利权)人:广西电网有限责任公司电力科学研究院
类型:发明
国别省市:

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

1