System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及嵌入式,具体涉及一种嵌入式软件在线升级方法及相关设备。
技术介绍
1、大量嵌入式的电子产品交付后面临拆卸困难、工作量大的问题,在线升级功能必不可缺。现有的在先升级大部分是针对dsp、arm或同构soc架构,对于arm+dsp异构多核soc架构的嵌入式软件如何在线升级很少涉及。
技术实现思路
1、为解决上述技术问题,本申请提供一种嵌入式软件在线升级方法及相关设备。
2、第一方面,本申请实施例提供一种嵌入式软件在线升级方法,所述嵌入式软件在线升级方法应用于包括arm芯片和dsp芯片的异构多核处理器,arm芯片包括cpu0~cpun,所述嵌入式软件在线升级方法包括:
3、cpu0接收上位机发送的升级命令并解析,得到升级配置信息,升级配置信息包括待升级应用程序名称、升级数据源地址;
4、cpu0根据待升级应用程序名称确定待升级应用程序为arm应用程序还是dsp应用程序;
5、若待升级应用程序为arm应用程序,则cpu0基于所述升级数据源地址获取升级数据并对待升级应用程序进行升级;
6、若待升级应用程序为dsp应用程序,则cpu0将升级命令转发至dsp芯片,以供dsp芯片基于升级命令对待升级应用程序进行升级。
7、结合第一方面,在一种实施方式中,所述若待升级应用程序为arm应用程序,则cpu0基于所述升级数据源地址获取升级数据并对待升级应用程序进行升级的步骤包括:
8、若待升级应用程序为arm应用程
9、结合第一方面,在一种实施方式中,所述若待升级应用程序为arm应用程序,则cpu0基于所述升级数据源地址获取升级数据并对待升级应用程序进行升级的步骤还包括:
10、若待升级应用程序为arm应用程序且为cpu0的应用程序,则cpu0从备份分区中读取上电启动位置,并基于上电启动位置确定目标分区,其中,上电启动位置对应另一分区;
11、cpu0将目标分区中的数据擦除后将基于所述升级数据源地址获取的升级数据写入所述目标分区;
12、升级数据写入所述目标分区后,cpu0将备份分区中记录的上电启动位置修改为目标分区对应的位置,将另一分区中的数据擦除后将基于所述升级数据源地址获取的升级数据写入另一分区。
13、结合第一方面,在一种实施方式中,所述嵌入式软件在线升级方法还包括:
14、若将升级数据写入所述目标分区失败或若将升级数据写入所述另一分区失败,则cpu0从备份分区中读取上电启动位置,并基于上电启动位置对应的分区中的数据重启。
15、结合第一方面,在一种实施方式中,在所述cpu0接收上位机发送的升级命令并解析,得到升级配置信息的步骤之后,还包括:
16、cpu0基于待升级应用程序名称检测升级命令是否有效;
17、若升级命令有效,则cpu0屏蔽优先级低于在线升级的消息。
18、第二方面,本申请实施例提供了一种异构多核处理器,包括arm芯片和dsp芯片,arm芯片包括cpu0~cpun,cpu0,用于:
19、接收上位机发送的升级命令并解析,得到升级配置信息,升级配置信息包括待升级应用程序名称、升级数据源地址;
20、根据待升级应用程序名称确定待升级应用程序为arm应用程序还是dsp应用程序;
21、若待升级应用程序为arm应用程序,则基于所述升级数据源地址获取升级数据并对待升级应用程序进行升级;
22、若待升级应用程序为dsp应用程序,则将升级命令转发至dsp芯片,以供dsp芯片基于升级命令对待升级应用程序进行升级。
23、结合第二方面,在一种实施方式中,cpu0,用于:
24、若待升级应用程序为arm应用程序且为cpu0的应用程序,则从备份分区中读取上电启动位置,并基于上电启动位置确定目标分区,其中,上电启动位置对应另一分区;
25、将目标分区中的数据擦除后将基于所述升级数据源地址获取的升级数据写入所述目标分区;
26、升级数据写入所述目标分区后,将备份分区中记录的上电启动位置修改为目标分区对应的位置,将另一分区中的数据擦除后将基于所述升级数据源地址获取的升级数据写入另一分区。
27、结合第二方面,在一种实施方式中,cpu0,还用于:
28、若将升级数据写入所述目标分区失败或若将升级数据写入所述另一分区失败,则从备份分区中读取上电启动位置,并基于上电启动位置对应的分区中的数据重启。
29、第三方面,本申请实施例提供了一种嵌入式设备,所述嵌入式设备包括异构多核处理器、存储器、以及存储在所述存储器上并可被所述异构多核处理器执行的嵌入式软件在线升级程序,其中,异构多核处理器包括arm芯片和dsp芯片,arm芯片包括cpu0~cpun,所述嵌入式软件在线升级程序被所述异构多核处理器执行时,实现如第一方面所述的嵌入式软件在线升级方法的步骤。
30、第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有嵌入式软件在线升级程序,其中所述嵌入式软件在线升级程序被异构多核处理器执行时,实现如第一方面所述的嵌入式软件在线升级方法的步骤。
31、本申请实施例提供的技术方案带来的有益效果包括:
32、本申请实施例中,cpu0接收上位机发送的升级命令并解析,得到升级配置信息,升级配置信息包括待升级应用程序名称、升级数据源地址;cpu0根据待升级应用程序名称确定待升级应用程序为arm应用程序还是dsp应用程序;若待升级应用程序为arm应用程序,则cpu0基于所述升级数据源地址获取升级数据并对待升级应用程序进行升级;若待升级应用程序为dsp应用程序,则cpu0将升级命令转发至dsp芯片,以供dsp芯片基于升级命令对待升级应用程序进行升级。通过本申请实施例,实现了对包括arm芯片和dsp芯片的异构多核处理器中嵌入式软件进行在线升级。
本文档来自技高网...【技术保护点】
1.一种嵌入式软件在线升级方法,其特征在于,所述嵌入式软件在线升级方法应用于包括ARM芯片和DSP芯片的异构多核处理器,ARM芯片包括CPU0~CPUN,所述嵌入式软件在线升级方法包括:
2.如权利要求1所述的嵌入式软件在线升级方法,其特征在于,所述若待升级应用程序为ARM应用程序,则CPU0基于所述升级数据源地址获取升级数据并对待升级应用程序进行升级的步骤包括:
3.如权利要求1所述的嵌入式软件在线升级方法,其特征在于,所述若待升级应用程序为ARM应用程序,则CPU0基于所述升级数据源地址获取升级数据并对待升级应用程序进行升级的步骤还包括:
4.如权利要求3所述的嵌入式软件在线升级方法,其特征在于,所述嵌入式软件在线升级方法还包括:
5.如权利要求1所述的嵌入式软件在线升级方法,其特征在于,在所述CPU0接收上位机发送的升级命令并解析,得到升级配置信息的步骤之后,还包括:
6.一种异构多核处理器,包括ARM芯片和DSP芯片,ARM芯片包括CPU0~CPUN,其特征在于,CPU0,用于:
7.如权利要求6所述
8.如权利要求7所述的异构多核处理器,其特征在于,CPU0,还用于:
9.一种嵌入式设备,其特征在于,所述嵌入式设备包括异构多核处理器、存储器、以及存储在所述存储器上并可被所述异构多核处理器执行的嵌入式软件在线升级程序,其中,异构多核处理器包括ARM芯片和DSP芯片,ARM芯片包括CPU0~CPUN,所述嵌入式软件在线升级程序被所述异构多核处理器执行时,实现如权利要求1至5中任一项所述的嵌入式软件在线升级方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有嵌入式软件在线升级程序,其中所述嵌入式软件在线升级程序被异构多核处理器执行时,实现如权利要求1至5中任一项所述的嵌入式软件在线升级方法的步骤。
...【技术特征摘要】
1.一种嵌入式软件在线升级方法,其特征在于,所述嵌入式软件在线升级方法应用于包括arm芯片和dsp芯片的异构多核处理器,arm芯片包括cpu0~cpun,所述嵌入式软件在线升级方法包括:
2.如权利要求1所述的嵌入式软件在线升级方法,其特征在于,所述若待升级应用程序为arm应用程序,则cpu0基于所述升级数据源地址获取升级数据并对待升级应用程序进行升级的步骤包括:
3.如权利要求1所述的嵌入式软件在线升级方法,其特征在于,所述若待升级应用程序为arm应用程序,则cpu0基于所述升级数据源地址获取升级数据并对待升级应用程序进行升级的步骤还包括:
4.如权利要求3所述的嵌入式软件在线升级方法,其特征在于,所述嵌入式软件在线升级方法还包括:
5.如权利要求1所述的嵌入式软件在线升级方法,其特征在于,在所述cpu0接收上位机发送的升级命令并解析,得到升级配置信息的步骤之后,还包括:
6.一种异构...
【专利技术属性】
技术研发人员:梁小凤,傅艺绮,张哲山,李悍,陆智平,胡健凯,
申请(专利权)人:湖北航天技术研究院总体设计所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。