[发明专利]一种预防机载设备下电引发存储器数据异常改变的方法在审
申请号: | 202111336858.1 | 申请日: | 2021-11-12 |
公开(公告)号: | CN114064076A | 公开(公告)日: | 2022-02-18 |
发明(设计)人: | 刘久成;商建超;孙甲;刘龙;万慧智 | 申请(专利权)人: | 天津航空机电有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65;G06F9/445;G06F1/24 |
代理公司: | 中国航空专利中心 11008 | 代理人: | 高霖 |
地址: | 300308 天*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 预防 机载 设备 引发 存储器 数据 异常 改变 方法 | ||
本发明涉及一种预防机载设备下电引发存储器数据异常改变的方法,该方法基于对Flash加锁技术,通过锁定Flash写入状态,防止由其他意外情况导致Flash芯片中数据被误改写。该方法通过CPU芯片对CPLD下发加锁命令,利用CPLD对Flash芯片执行加锁操作。同时通过CPU的解锁逻辑,能够恢复Flash的写入状态,以便实现对Flash合法写入的操作。
技术领域
本发明涉及机载嵌入式软件领域,具体涉及一种预防机载设备下电引发存储器数据异常改变的方法。
背景技术
机载设备大多为嵌入式产品,通常嵌入式产品都会涉及多个芯片之间的交联,基本的嵌入式产品系统包括CPU、DDR、Flash、复位芯片等几个部分组成。设计嵌入式系统时,需要慎重考虑到每个芯片的上下电时序问题。
目前芯片的上下电时序没有固定的设计方案,当上下电时序设计有问题时,则可能会导致嵌入式软件跑飞,进一步导致嵌入式系统中的Flash芯片被误改写,引发嵌入式系统故障,严重的故障可能会导致机毁人亡的后果。即使出现故障的概率非常小,甚至千万分之一的概率发生故障,在航空领域也是非常严肃的问题。
下电异常分析:下电异常运行机理如下图所示,嵌入式系统板卡由CPU、DDR、FLASH、复位芯片等几部分组成。
①故障:CPU核电压最先下电至正常工作范围以外
②CPU指令出现执行错误,跑飞并跳转至Flash update Routine区块
③错误的数据被写回至Flash,这时Flash的文件系统被破坏掉了,也就是FlashCorruption
④由于对电压的监控精度不够或者响应时间太慢,在电压异常后,CPU Reset信号很晚才发出,此时FLASH文件系统已经被破坏。
⑤如果DDR内存供电电源先于其它电源异常,也有可能发生Flash Corruption。
板卡上的DDR内存供电为3.3V,最后才下电,此因素不会导致板卡发生FlashCorruption。
此下电时序引起嵌入式软件跑飞至更新FLASH的代码处,有概率出现FLASH内部数据被改写的情况,导致下次板卡启动后读取到被改写后错误的嵌入式软件代码,出现产品运行异常的现象。
因此需要制定一套软件方案,来防止在设计的错误上下电时序时,保证嵌入式系统的Flash不被异常改写,从而保证机载设备的嵌入式系统正常运行。
发明内容
本发明的目的在于,针对上述技术问题,提供一种预防机载设备下电引发存储器数据异常改变的方法,可以避免任意机载设备下电异常时引发的Flash被误改写故障的发生。
本发明技术方案:
一种预防机载设备下电引发存储器数据异常改变的方法,所述方法包括以下步骤:
1)机载设备板卡初始工作流程
板卡上电后,首先CPU运行至1级boot区,1级boot会引导CPU进入2级boot区,2级boot区会选择CPU执行应用程序还是执行在线升级程序;
2)应用程序流程
若CPU执行应用程序,CPLD将FLASH的复位引脚失效,FLASH进入复位无效状态,板卡正常启动程序,应用程序首先将Flash中存储的程序代码复制到FRAM中,复制完成后,应用程序读取Flash的状态,如果Flash未锁定,则执行Flash加锁程序,进入步骤4),给CPLD发送加锁指令,锁定Flash的读写权限,然后正常运行应用程序中的各项功能;如果Flash锁定,则正常运行应用程序中的各项功能;
3)在线升级程序流程
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津航空机电有限公司,未经天津航空机电有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111336858.1/2.html,转载请声明来源钻瓜专利网。