一种程序升级方法与流程

文档序号:29501147发布日期:2022-04-06 17:03阅读:95来源:国知局

1.本发明涉及cpu技术领域,更具体地,涉及一种程序升级方法。


背景技术:

2.cpu(central processing unit,中央处理单元),它可以被简称为微处理器(microprocessor),也经常被直接成为处理器(processor)。cpu是处理、运算数据的核心,控制着数据的交换。cpu包括升级区(boot)和应用区(app),cpu进入升级区,升级区读取应用区中的flash数据,并判断校验应用区的程序是否正确,若正确则跳到应用区进行运行应用,若不正确则在升级区等待程序升级。但是,在刚上电或者断电重启时,电源不太稳定,容易误触发;或者在升级区(boot)读取app中的flash数据时,由于flash数据很大,通常为64k或128k,容易校验出错,一旦校验出错就会误触发,导致在升级区等待程序升级。我们需要进行运行应用,只有当真正需要程序升级的时候才在升级区等待升级,而现有技术的实际情况是经常因为误触发等各种原因使得在升级区等待升级。
3.有鉴于此,本申请提供一种程序升级方法,颠覆cpu程序升级的现有逻辑,使得只有数据正确时才在升级区进行升级,而其他情况均在应用区进行运行应用。


技术实现要素:

4.本发明的目的在于,提供一种程序升级方法,颠覆cpu程序升级的现有逻辑,使得只有数据正确时才在升级区进行升级,而其他情况均在应用区进行运行应用。
5.在现有技术中,cpu程序升级的逻辑是只有数据正确时才在应用区(app)进行运行应用,而其他情况均在升级区(boot)等待程序升级。而本申请先在应用区中写入e2升级数据,然后升级区读取应用区中的e2升级数据并进行判断校验,若有升级数据,则擦除应用区的应用程序并在升级区等待程序升级,若没有升级数据,则进入应用区进行运行应用。cpu程序升级的逻辑颠覆,实现了只有数据正确时才在升级区进行升级,而其他情况均在应用区进行运行应用。本申请人在此基础上完成了本申请。
6.一种程序升级方法,所述方法包括步骤:
7.s1,先向cpu的应用区(app)中写入e2升级数据;
8.s2,cpu进入升级区(boot),升级区读取应用区中的e2升级数据并进行判断校验,若有升级数据,则擦除应用区的应用程序并在升级区等待程序升级,若没有升级数据,则进入应用区进行运行应用。
9.在一些实施方式中,所述方法还包括步骤s3:程序升级成功后,清除应用区中的e2升级数据,并进行cpu的自动复位。
10.在一些实施方式中,cpu的应用区(app)是应用执行运用环境,程序应用在此区域执行运行命令,完成相应工作指令。
11.在一些实施方式中,cpu的升级区(boot)是应用升级环境,在应用程序需要升级时,推送或拉取升级数据到该区域,应用在升级时将从应用区(app)暂时停用,在升级区
(boot)完成升级动作后,应用区(app)再次启用应用。
12.进一步的,boot(bootloader)负责将串行或并行的flash数据或e2数据搬运至sdram,再将pc指针切换至sdram的映射地址。
13.在一些实施方式中,由于某些应用升级会需要重置运行环境参数,在此类应用程序升级时,为了保证cpu及相关应用程序正常运行工作,在应用程序完成升级后,同时擦除升级区(boot)的e2升级数据和执行cpu重启自动复位命令,从何完成执行环境初始化,应用区(app)应用正常运行,升级区(boot)无e2升级数据。
14.在一些实施方式中,e2升级数据是特指升级命令发送时,带有e2特征的数据会被验证判定为升级数据,运行区间为升级区(boot),遇到该特征数据时,cpu会开始执行应用程序升级动作。
15.在一些实施方式中,cpu利用xmodem协议或ymodem协议进行传输,其中,xmodem是一种在串口通信中广泛使用的异步文件传输协议,分为xmodem和1k-xmodem协议两种,前者使用128字节的数据块,后者使用1024字节即1k字节的数据块;ymodem每包数据能够达到1024字节,是一个非常高效的文件传输协议。
具体实施方式
16.描述以下实施例以辅助对本申请的理解,实施例不是也不应当以任何方式解释为限制本申请的保护范围。
17.在以下描述中,本领域的技术人员将认识到,在本论述的全文中,组件可描述为单独的功能单元(可包括子单元),但是本领域的技术人员将认识到,各种组件或其部分可划分成单独组件,或者可整合在一起(包括整合在单个的系统或组件内)。
18.同时,组件或系统之间的连接并不旨在限于直接连接。相反,在这些组件之间的数据可由中间组件修改、重格式化、或以其它方式改变。另外,可使用另外或更少的连接。还应注意,术语“联接”、“连接”、或“输入”“固定”应理解为包括直接连接、通过一个或多个中间媒介来进行的间接的连接或固定。
19.实施例1:
20.一种程序升级方法,所述方法包括步骤:s1,先向cpu的应用区(app)中写入e2升级数据;s2,cpu进入升级区(boot),升级区读取应用区中的e2升级数据并进行判断校验,若有升级数据,则擦除应用区的应用程序并在升级区等待程序升级,若没有升级数据,则进入应用区进行运行应用。所述方法还包括步骤s3:程序升级成功后,清除应用区中的e2升级数据,并进行cpu的自动复位。
21.cpu的应用区(app)是应用执行运用环境,程序应用在此区域执行运行命令,完成相应工作指令。cpu的升级区(boot)是应用升级环境,在应用程序需要升级时,推送或拉取升级数据到该区域,应用在升级时将从应用区(app)暂时停用,在升级区(boot)完成升级动作后,应用区(app)再次启用应用。boot(bootloader)负责将串行或并行的flash数据或e2数据搬运至sdram,再将pc指针切换至sdram的映射地址。
22.由于某些应用升级会需要重置运行环境参数,在此类应用程序升级时,为了保证cpu及相关应用程序正常运行工作,在应用程序完成升级后,同时擦除升级区(boot)的e2升级数据和执行cpu重启自动复位命令,从何完成执行环境初始化,应用区(app)应用正常运
行,升级区(boot)无e2升级数据。e2升级数据是特指升级命令发送时,带有e2特征的数据会被验证判定为升级数据,运行区间为升级区(boot),遇到该特征数据时,cpu会开始执行应用程序升级动作。cpu利用xmodem协议进行传输,其中,xmodem是一种在串口通信中广泛使用的异步文件传输协议,分为xmodem和1k-xmodem协议两种,前者使用128字节的数据块,后者使用1024字节即1k字节的数据块。
23.尽管本申请已公开了多个方面和实施方式,但是其它方面和实施方式对本领域技术人员而言将是显而易见的,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。本申请公开的多个方面和实施方式仅用于举例说明,其并非旨在限制本申请,本申请的实际保护范围以权利要求为准。


技术特征:
1.一种程序升级方法,其特征在于,所述方法包括步骤:s1,先向cpu的应用区中写入e2升级数据;s2,cpu进入升级区,升级区读取应用区中的e2升级数据并进行判断校验,若有升级数据,则擦除应用区的应用程序并在升级区等待程序升级,若没有升级数据,则进入应用区进行运行应用。2.如权利要求1所述的程序升级方法,其特征在于,所述方法还包括步骤s3:程序升级成功后,清除应用区中的e2升级数据,并进行cpu的自动复位。3.如权利要求1所述的程序升级方法,其特征在于,cpu的应用区是应用执行运用环境,程序应用在此区域执行运行命令,完成相应工作指令。4.如权利要求1所述的程序升级方法,其特征在于,cpu的升级区是应用升级环境,在应用程序需要升级时,推送或拉取升级数据到该区域,应用在升级时将从应用区暂时停用,在升级区完成升级动作后,应用区再次启用应用。5.如权利要求1所述的程序升级方法,其特征在于,由于某些应用升级会需要重置运行环境参数,在此类应用程序升级时,为了保证cpu及相关应用程序正常运行工作,在应用程序完成升级后,同时擦除升级区的e2升级数据和执行cpu重启自动复位命令,从何完成执行环境初始化,应用区应用正常运行,升级区无e2升级数据。6.如权利要求1所述的程序升级方法,其特征在于,e2升级数据是指升级命令发送时,带有e2特征的数据会被验证判定为升级数据,运行区间为升级区,遇到该特征数据时,cpu会开始执行应用程序升级动作。7.如权利要求1所述的程序升级方法,其特征在于,cpu利用xmodem协议或ymodem协议进行传输,其中,xmodem是一种在串口通信中广泛使用的异步文件传输协议,分为xmodem和1k-xmodem协议两种,前者使用128字节的数据块,后者使用1024字节即1k字节的数据块;ymodem每包数据能够达到1024字节,是一个非常高效的文件传输协议。

技术总结
本申请提供一种程序升级方法,颠覆CPU程序升级的现有逻辑,使得只有数据正确时才在升级区进行升级,而其他情况均在应用区进行运行应用。主要包括步骤:S1,先向CPU的应用区(APP)中写入E2升级数据;S2,CPU进入升级区(BOOT),升级区读取应用区中的E2升级数据并进行判断校验,若有升级数据,则擦除应用区的应用程序并在升级区等待程序升级,若没有升级数据,则进入应用区进行运行应用。进入应用区进行运行应用。


技术研发人员:高鹏宇 徐晨喆 高凯 陈静
受保护的技术使用者:苏州高鹏光电科技有限公司
技术研发日:2021.12.27
技术公布日:2022/4/5
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1