[发明专利]一种适用于水下惯导设备的软件升级方法在审
申请号: | 201710796866.1 | 申请日: | 2017-09-06 |
公开(公告)号: | CN107748665A | 公开(公告)日: | 2018-03-02 |
发明(设计)人: | 回永利;刘武;曹新强;杨佳君;侯国超;何昊 | 申请(专利权)人: | 中国航空工业集团公司西安飞行自动控制研究所 |
主分类号: | G06F8/65 | 分类号: | G06F8/65;G06F11/10 |
代理公司: | 中国航空专利中心11008 | 代理人: | 杜永保 |
地址: | 710065 陕*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 适用于 水下 设备 软件 升级 方法 | ||
技术领域
本发明属于嵌入式应用领域,涉及一种适用于水下惯导设备的软件升级方法。
背景技术
在水下导航领域,惯性导航设备与甲板控制单元通过声波进行通讯。水声通信通常会受到水中的波浪、鱼类、舰船等产生的噪声干扰,同时也会受到多径效应、多变效应造成的信号模糊或信号干扰。水声通信的难点在于声波信号经过远距离传播后衰减严重,信噪比很低,如果处理不当,就会造成传输过程中误码率高,甚至无法正常通信。
通常情况下,惯导设备通过有线连接方式(例如UART、以太网等)同维护系统(例如主控设备)连接,而Bootloader(嵌入式系统在加电后执行的第一段代码,在它完成对CPU和相关硬件的初始化后,再将操作系统或固化的嵌入式应用程序加载到内存中然后跳转到操作系统所在的空间,启动操作系统运行)常采用流式传输进行软件升级。有线连接方式的优点是传输可靠,误码率极低,待数据全部传输完毕后,做一次整体校验。而水下导航设备在软件升级过程中,因采用声波通信的方式,会存在较高的误码率,而任何一个字节的传输错误,都会造成最后的校验错误,进而导致升级失败。
鉴于此,为了应对水下苛刻的通信环境,提高严酷通信环境下升级应用程序的成功率,本发明实现了一种适用于水下惯导设备的软件升级方法。该方法支持“启动时升级”、“运行时升级”两种IAP(In Application Programming,程序运行中编程)逻辑,升级结束后,系统会自动重启,解决了常规惯导设备升级软件后需对全系统下电的要求。引入“数据重传”、“备份升级”等安全机制,使得在水下声波通信环境下软件一次升级成功率达到100%,同时克服了软件升级失败后系统无法运行的难题。
发明内容
本发明的目的是提供一种能够提升严酷通讯环境下升级惯性导航设备软件成功率的方法。
本发明的技术方案是:一种适用于水下惯导设备的软件升级方法,包括以下步骤:
步骤1:进入升级模式;
步骤2:传输软件升级包数据;
步骤3:固化备份APP分区;
步骤4:迁移APP分区数据;
步骤5:退出升级模式。
所述的一种适用于水下惯导设备的软件升级方法,步骤1中所述进入升级模式包括启动时升级和运行时升级;
所述启动时升级具体步骤包括:
步骤1.1a惯导设备上电时,向维护系统发送系统启动信号,如需软件升级,维护系统向惯导设备发送软件升级信号;
步骤1.2a惯导设备收到软件升级信号后向维护系统发送确认升级信号,维护系统下发软件升级信息;
步骤1.3a惯导设备将维护系统下发的升级密钥同密钥区存储的数据比对,如一致,则立即进入升级模式,执行步骤2;否则执行正常引导启动;
所述运行时升级具体步骤包括:
1.1b惯导设备在正常运行模式下,如需软件升级,维护系统向惯导设备发送软件升级信号;
1.2b惯导设备收到软件升级信号后向维护系统发送确认升级信号,维护系统下发软件升级信息;
1.3b惯导设备将维护系统下发的升级密钥同密钥区存储的数据比对,如一致,则立即进入升级模式,并关闭系统外部中断,禁用除升级软件所用的接口以外的其余全部外部接口,执行步骤2;否则继续正常运行模式。
2.根据权利要求1所述的一种适用于水下惯导设备的软件升级方法,其特征在于,所述步骤2具体包括以下步骤:
步骤2.1惯导设备进入升级模式后,惯导设备等待接收维护系统下发的软件升级数据包,若接收到,则执行步骤2.2,否则查询等待;
步骤2.2惯导设备收到软件升级数据包后,进行CRC校验,若校验一致,向维护系统发送ACK确认信息,并执行步骤2.3;否则向维护系统发起数据重传请求,后执行步骤2.1;
步骤2.3惯导设备判断帧标志字:若帧标志字内容为软件升级包,则执行步骤3;若帧标志字内容为停止帧,则执行步骤3。
所述的一种适用于水下惯导设备的软件升级方法,所述步骤3具体包括:惯导设备将CRC校验一致的软件升级数据包固化至备份APP分区。
所述的一种适用于水下惯导设备的软件升级方法,全部数据传输完毕并完成整包校验后,若校验成功,则自动将备份APP分区中的数据复制到APP分区,并报告升级成功,执行步骤5;若校验不成功,不会执行复制操作,并报告升级失败。
所述的一种适用于水下惯导设备的软件升级方法,步骤1中所述的软件升级信息包括软件升级数据包的整包长度及升级密钥。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国航空工业集团公司西安飞行自动控制研究所,未经中国航空工业集团公司西安飞行自动控制研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710796866.1/2.html,转载请声明来源钻瓜专利网。