[发明专利]一种在单芯片上实现主备版本备份的方法无效
| 申请号: | 200910229015.4 | 申请日: | 2009-12-08 |
| 公开(公告)号: | CN102087603A | 公开(公告)日: | 2011-06-08 |
| 发明(设计)人: | 王钟颖 | 申请(专利权)人: | 国家纳米技术与工程研究院 |
| 主分类号: | G06F9/445 | 分类号: | G06F9/445 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 300457 天津*** | 国省代码: | 天津;12 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 芯片 实现 版本 备份 方法 | ||
(一)技术领域:
本发明涉及嵌入式产品设计,尤其是一种在单芯片上实现主备版本备份的方法。
(二)背景技术:
嵌入式产品中,经常会因为功能变化、故障修复等原因,需要从远程对产品中的软件(版本)进行升级。传统嵌入式产品实现方式,是在产品中使用两块或以上的芯片,其中启动BOOT位于一块独立芯片上,并由BOOT与远程进行交互,完成版本升级,并将新下载的版本写入另一块芯片,之后启动新版本。该方式由于要使用多于一块芯片,成本难以降低,所以一般只运用在高端嵌入式设备上,导致低端嵌入式设备无法实现远程升级。
(三)发明内容:
本发明的目的在于提供一种在单芯片上实现主备版本备份的方法,它能够解决现有技术的不足,可在终端设备上降低产品成本。
本发明的技术方案:一种在单芯片上实现主备版本备份的方法,其特征在于它由以下步骤构成:
(1)在单一芯片上,将存储空间划分为至少三部分,分别用于存储启动BOOT、存储主用版本和备用版本;其中用于存储启动BOOT的部分称作V0;所说的存储主用版本和备用版本的部分称作V1和V2;如果V1是主用版本,则V2为备用版本,如果V2是主用版本,则V1为备用版本,这种关系通过参数配置区进行区分;
(2)芯片上电后,启动BOOT率先运行,它检测参数配置,判断当前的主用版本是V1还是V2;启动BOOT将控制权切换到主用版本;
(3)主用版本运行期间,如果接收到远程升级指令,则从远程服务端下载新的版本文件,覆盖当前备用版本存储空间;如果V1为主用版本,则覆盖V2,反之则覆盖V1;
(4)主用版本更新参数配置区,将新下载的版本设为主用版本,当前运行的版本设为备用版本,然后重启系统;
(5)系统重启后,启动BOOT检测到参数变化,将自动启动新的主用版本,完成远程版本升级。
上述所说的步骤(1)中的参数存储在独立的存储空间,例如E2PROM上;或与版本驻留在同一芯片上,即在芯片上再划分一块区域,用于存储参数。
上述所说的步骤(2)中启动BOOT在将控制权切换到主用版本时,如果在编译主用版本和备用版本可执行文件时,设置了位置无关选项,能使版本在存储空间的任意位置都可以启动运行,则通过调整CPU的程序计数器,启动主用版本;在调整程序计数器时,如果V0运行在用户模式下,那么需要通过软中断方式,强迫CPU进入管理模式,然后才能修改CPU程序计数器,实现版本跳转;
如果编译器无法产生位置无关代码,则启动BOOT将主用版本拷贝到内存空间,然后从内存启动主用版本;或者是在芯片上划分出一块运行区域,该区域用Vm标识,启动BOOT找出主用版本后,将该版本拷贝到Vm区,然后从Vm区启动主用版本。
上述所说的编译器无法产生位置无关代码,则在编译主备版本时,将内存或Vm的起始地址设置为版本启动地址。
上述所说的启动BOOT是一个小型可执行文件,通常存储在芯片的物理地址0x0;芯片上电后,将自动执行启动BOOT。
上述所说的主用版本和备用版本,是两个不同版本的可执行文件。
本发明的优越性:本方法在单一芯片上,同时存储启动BOOT、主用版本、备用版本三个文件,并实现主备互换、远程升级功能,有效降低产品开发和维护成本。
(四)附图说明:
图1为本发明所涉一种在单芯片上实现主备版本备份的方法第一种实施例的芯片存储空间划分的示意图。
图2为本发明所涉一种在单芯片上实现主备版本备份的方法第二种实施例的芯片存储空间划分的示意图。
(五)具体实施方式:
实施例1:一种在单芯片上实现主备版本备份的方法,其特征在于它由以下步骤构成:
(1)在单一芯片上,将存储空间划分为三部分(见图1),其中用于存储启动BOOT的部分称作V0;所说的存储主用版本和备用版本的部分称作V1和V2;
(2)芯片上电后,启动BOOT率先运行,它检测参数配置,判断当前的主用版本是V1还是V2;启动BOOT将控制权切换到主用版本;
(3)主用版本运行期间,如果接收到远程升级指令,则从远程服务端下载新的版本文件,覆盖当前备用版本存储空间;如果V1为主用版本,则覆盖V2,反之则覆盖V1;
(4)主用版本更新参数配置区,将新下载的版本设为主用版本,当前运行的版本设为备用版本,然后重启系统;
(5)系统重启后,启动BOOT检测到参数变化,将自动启动新的主用版本,完成远程版本升级。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国家纳米技术与工程研究院,未经国家纳米技术与工程研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910229015.4/2.html,转载请声明来源钻瓜专利网。





