基于SOC芯片的用户程序更新方法、装置、设备及存储介质制造方法及图纸

技术编号:35867743 阅读:12 留言:0更新日期:2022-12-07 11:00
本申请公开了一种基于SOC芯片的用户程序更新方法、装置、设备及存储介质,属于计算机技术领域,该方法包括:将bootloader程序下载至存储区,通过所述bootloader程序设定若干个用户程序的地址和容量大小;在CPU每次复位重启后,优先执行bootloader程序,并通过所述bootloader程序读取所述若干个用户程序的标志信息;根据协议选择当前CPU的PC指针跳转至某个用户程序;通过SOC芯片执行当前用户程序,当所述用户程序需要更新时,根据当前FLASH内多个用户程序的标志信息,将本次更新的用户程序存储在非当前运行用户程序存储区;根据用户程序的个数对存储区进行动态分配,在更新完成后仍能保存原用户程序,可实现多用户程序共存,并根据用户需求自由切换,提高了用户体验。提高了用户体验。提高了用户体验。

【技术实现步骤摘要】
基于SOC芯片的用户程序更新方法、装置、设备及存储介质


[0001]本申请属于计算机
,尤其涉及一种基于SOC芯片的用户程序更新方法、装置、设备及存储介质。

技术介绍

[0002]在目前SOC芯片设计领域,对于程序存储区(用户程序区)的划分仅划分一块区间,但在实际嵌入式应用领域上,根据一些特殊应用场景的需要,需支持对程序进行在线升级,且为保证升级后的程序若无法正常运行工作后能还原至升级更新前程序。现有技术主要通过PC指针不断从Boot区与APP区进行跳转,在更新用户程序时需将PC指针切换至Boot程序来实现APP程序的更新,但此方式存在在升级时无法运行原本APP程序的缺陷,且在同一时刻仅能保存一个用户程序。

技术实现思路

[0003]本申请在于提供一种基于SOC芯片的用户程序更新方法、装置、设备及存储介质,根据用户程序的个数对存储区进行动态分配,当用户程序需要更新时,将本次更新的用户程序存储在非当前运行用户程序存储区,在更新完成后仍能保存原用户程序,可实现多用户程序共存,并根据用户需求自由切换,提高了用户体验。
[0004]本申请解决上述技术问题所采用的技术方案如下:
[0005]根据本申请的一个方面,提供的一种基于SOC芯片的用户程序更新方法,包括:
[0006]将bootloader程序下载至存储区,通过所述bootloader程序设定若干个用户程序的地址和容量大小;
[0007]在CPU每次复位重启后,优先执行bootloader程序,并通过所述bootloader程序读取所述若干个用户程序的标志信息;
[0008]根据协议选择当前CPU的PC指针跳转至某个用户程序;
[0009]通过SOC芯片执行当前用户程序,当所述用户程序需要更新时,根据当前FLASH内多个用户程序的标志信息,将本次更新的用户程序存储在非当前运行用户程序存储区。
[0010]可选地,所述用户程序根据所述容量大小进行开发,当所述用户程序占用资源增加时,修改bootloader程序。
[0011]可选地,当所述用户程序带有更新升级功能时,通过在线升级方式进行用户程序烧录,将用户程序烧录至bootloader程序分配映射地址的FLASH存储区内。
[0012]可选地,所述协议为多用户程序切换协议,根据所述若干个用户程序标志信息制定。
[0013]可选地,所述根据协议选择当前CPU的PC指针跳转至某个用户程序之后还包括:
[0014]将SOC芯片开放的重映射偏移量以及用户区容量写入,从而可指定CPU取值地址及取值地址范围检测。
[0015]可选地,所述通过SOC芯片执行当前用户程序,当所述用户程序需要更新时,根据
当前FLASH内多个用户程序的标志信息,将本次更新的用户程序存储在非当前运行用户程序存储区之后还包括:
[0016]按照制定的协议规则编辑当前用户程序存储区内的标志信息,完成标志信息写入后重启复位,重新运行bootloader程序。
[0017]可选地,所述按照制定的协议规则编辑当前用户程序存储区内的标志信息,完成标志信息写入后重启复位,重新运行bootloader程序之后还包括:
[0018]根据用户程序的标志信息完成bootloader程序至用户程序的跳转,从而实现程序的升级更新。
[0019]根据本专利技术的另一方面,提供的一种基于SOC芯片的用户程序更新装置,包括:
[0020]下载模块,用于将bootloader程序下载至存储区,通过所述bootloader程序设定若干个用户程序的地址和容量大小;
[0021]执行模块,用于在CPU每次复位重启后,优先执行bootloader程序,并通过所述bootloader程序读取所述若干个用户程序的标志信息;
[0022]选择模块,用于根据协议选择当前CPU的PC指针跳转至某个用户程序;
[0023]存储更新模块,用于通过SOC芯片执行当前用户程序,当所述用户程序需要更新时,根据当前FLASH内多个用户程序的标志信息,将本次更新的用户程序存储在非当前运行用户程序存储区。
[0024]根据本专利技术的再一个方面,提供的一种基于SOC芯片的用户程序更新设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的一种基于SOC芯片的用户程序更新方法的步骤。
[0025]根据本专利技术的再一个方面,提供的一种存储介质,所述存储介质上存储有一种基于SOC芯片的用户程序更新方法的程序,所述一种基于SOC芯片的用户程序更新方法的程序被处理器执行时实现如上所述的一种基于SOC芯片的用户程序更新方法的步骤。
[0026]本专利技术提出的一种基于SOC芯片的用户程序更新方法、装置、设备及存储介质,该方法包括:将bootloader程序下载至存储区,通过所述bootloader程序设定若干个用户程序的地址和容量大小;在CPU每次复位重启后,优先执行bootloader程序,并通过所述bootloader程序读取所述若干个用户程序的标志信息;根据协议选择当前CPU的PC指针跳转至某个用户程序;通过SOC芯片执行当前用户程序,当所述用户程序需要更新时,根据当前FLASH内多个用户程序的标志信息,将本次更新的用户程序存储在非当前运行用户程序存储区;根据用户程序的个数对存储区进行动态分配,当用户程序需要更新时,将本次更新的用户程序存储在非当前运行用户程序存储区,在更新完成后仍能保存原用户程序,可实现多用户程序共存,并根据用户需求自由切换,提高了用户体验。
附图说明
[0027]图1为本专利技术实施例一提供的一种基于SOC芯片的用户程序更新方法流程图;
[0028]图2为本专利技术实施例一提供的另一种基于SOC芯片的用户程序更新方法流程图;
[0029]图3为本专利技术实施例一提供的再一种基于SOC芯片的用户程序更新方法流程图;
[0030]图4为本专利技术实施例一提供的再一种基于SOC芯片的用户程序更新方法流程图;
[0031]图5为本专利技术实施例二提供的一种基于SOC芯片的用户程序更新装置示范性结构框图;
[0032]图6为本专利技术实施例三提供的一种基于SOC芯片的用户程序更新设备示范性结构框图。
[0033]本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
[0034]为了使本申请所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0035]在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本专利技术的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
[0036]实施例一
[0037]本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于SOC芯片的用户程序更新方法,其特征在于,包括:将bootloader程序下载至存储区,通过所述bootloader程序设定若干个用户程序的地址和容量大小;在CPU每次复位重启后,优先执行bootloader程序,并通过所述bootloader程序读取所述若干个用户程序的标志信息;根据协议选择当前CPU的PC指针跳转至某个用户程序;通过SOC芯片执行当前用户程序,当所述用户程序需要更新时,根据当前FLASH内多个用户程序的标志信息,将本次更新的用户程序存储在非当前运行用户程序存储区。2.根据权利要求1所述的一种基于SOC芯片的用户程序更新方法,其特征在于,所述用户程序根据所述容量大小进行开发,当所述用户程序占用资源增加时,修改bootloader程序。3.根据权利要求1所述的一种基于SOC芯片的用户程序更新方法,其特征在于,当所述用户程序带有更新升级功能时,通过在线升级方式进行用户程序烧录,将用户程序烧录至bootloader程序分配映射地址的FLASH存储区内。4.根据权利要求1所述的一种基于SOC芯片的用户程序更新方法,其特征在于,所述协议为多用户程序切换协议,根据所述若干个用户程序标志信息制定。5.根据权利要求1所述的一种基于SOC芯片的用户程序更新方法,其特征在于,所述根据协议选择当前CPU的PC指针跳转至某个用户程序之后还包括:将SOC芯片开放的重映射偏移量以及用户区容量写入,从而可指定CPU取值地址及取值地址范围检测。6.根据权利要求1所述的一种基于SOC芯片的用户程序更新方法,其特征在于,所述通过SOC芯片执行当前用户程序,当所述用户程序需要更新时,根据当前FLASH内多个用户程序的标志信息,将本次更新的用户程序存储在非当前运行用户程序...

【专利技术属性】
技术研发人员:毛秀强曾静孙奇
申请(专利权)人:深圳思凌科技术有限公司
类型:发明
国别省市:

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

1