本发明涉及航空电子系统领域设计技术,特别涉及航电设备应用系统升级固化的设计方法。
背景技术:
在国内航空电子系统领域,航电设备的计算机模块通常配有唯一的启动存储模块(flash),计算机模块的应用软件固化于该模块上,设备启动也从该模块的唯一地址启动,系统升级固化时,设备首先擦除该唯一存储模块(flash)上的文件数据,然后重新写入待升级的数据文件。在遇到突发断电事故时,如果正在升级的擦写数据过程中,该计算机模块由于存储模块的数据被破坏,失去启动能力,该计算机模块不能正常启动工作,模块损坏,极大影响任务需求。
本发明通过将航电设备计算机模块的唯一启动存储模块(flash)设计为多个存储模块(flash),保证设备应用程序升级过程不破坏当前运行区(flash)数据;再通过在固化完成后设置启动标识,保证升级固化成功后,设备能从最新的数据区进行启动运行,同时保证升级固化失败时,能够从原有数据区进行启动,解决因突发断电或者设备升级失败而损坏设备的问题。
技术实现要素:
发明目的
本发明旨在解决在升级固化过程中,遇到突发断电等事故时,导致模块失效需要返厂维修的问题;致力于极大保护航电设备的计算机模块在升级固化过程不因数据损坏而导致计算机模块功能失效,影响航电设备的正常工作。
技术方案:
提供了一种航电设备应用程序固化方法,所述航电设备具有flash;所述flash的划分为:启动引导存储区、应用程序存储a区和应用程序存储b区;启动存储区用于驻留航电设备计算机模块的最小启动引导程序,应用程序存储a区和应用程序存储b区均用于存储应用程序;
在启动引导存储区的末尾字节地址、应用程序存储a区起始地址和应用程序存储b区起始地址设置启动标识,所述的标识用于表示航电系统的计算机模块是从应用程序存储a区启动,或是从应用程序存储b区启动;当航电系统从应用程序存储a区启动时,应用程序存储a区作为启动存储区,应用程序存储b区作为待烧写存储区,当航电系统从应用程序存储b区启动时,应用程序存储b区作为启动存储区,应用程序存储a区作为待烧写存储区;
在执行航电设备应用程序的固化时,首先根据启动标识决定航电设备从应用程序存储a区或应用程序存储b区启动应用程序,之后在烧写存储区完成应用程序固化,在固化成功后,修改启动标识使得启动存储区与烧写存储区互换;如果固化失败,则不修改启动标识。
本固化方法实现启动文件异位替换,烧写过程不破坏当前启动位置的数据,即使固化失败,也不影响设备从原有位置启动,建立安全固化环境。
有益效果
本发明解决了航电设备功能升级过程中,因不可预见的情况升级失败而导致模块失效需要返厂维修的问题;在应用上述方法的基础上,可衍生出更多安全升级方法,改变当前单一的升级模式,丰富机载航电设备的维护手段,降低维护成本。
具体实施方式
为了更好地理解本发明,下面通过实施例对本发明作进一步详细说明。
提供了一种航电设备应用程序固化方法,所述航电设备具有flash;所述flash的划分为:启动引导存储区、应用程序存储a区和应用程序存储b区;启动存储区用于驻留航电设备计算机模块的最小启动引导程序,应用程序存储a区和应用程序存储b区均用于存储应用程序;
在启动引导存储区的末尾字节地址、应用程序存储a区起始地址和应用程序存储b区起始地址设置启动标识,所述的标识用于表示航电系统的计算机模块是从应用程序存储a区启动,或是从应用程序存储b区启动;当航电系统从应用程序存储a区启动时,应用程序存储a区作为启动存储区,应用程序存储b区作为待烧写存储区,当航电系统从应用程序存储b区启动时,应用程序存储b区作为启动存储区,应用程序存储a区作为待烧写存储区;
在执行航电设备应用程序的固化时,首先根据启动标识决定航电设备从应用程序存储a区或应用程序存储b区启动应用程序,之后在烧写存储区完成应用程序固化,在固化成功后,修改启动标识使得启动存储区与烧写存储区互换;如果固化失败,则不修改启动标识。