掌桥专利:专业的专利平台
掌桥专利
首页

嵌入式平台可执行文件数据在线加载控制系统

文献发布时间:2023-06-19 11:42:32


嵌入式平台可执行文件数据在线加载控制系统

技术领域

本发明属于航空电子系统中的机载计算机领域,特别涉及一种嵌入式平台可执行文件数据在线加载控制系统,用于无操作系统(即裸机)的综合性嵌入式航空电子设备可执行文件加载固化。

背景技术

目前,随着综合性嵌入式航空电子系统技术迅猛发展,嵌入式航空电子设备逐渐朝向综合化、多样化和复杂化方向发展,业内对于无操作系统(即裸机)的综合性嵌入式航空电子设备可执行文件加载固化方法的关注度也愈来愈高,因此,在避免拆卸嵌入式航空电子设备的操作繁琐,保证可执行文件加载固化的可靠性和安全性的前提下,如何高可靠性高安全性地实现可执行文件在线加载,已然成为业内研究的热点。

对于早期无操作系统的嵌入式航空电子设备而言,由于其缺乏操作系统,嵌入式平台应用软件对应的可执行文件的加载固化只能通过离位加载固化的方式实现:1)使用特定下载器;2)需要拆装嵌入式航空电子设备。离位加载固化可执行文件的上述特点,不适用于目前日益综合化、多样化和复杂化的嵌入式航空技术的发展趋势。可执行文件的原位在线加载功能的缺乏,导致了以下问题:

a)加载固化可执行文件时,需要频繁拆卸嵌入式航空设备;

b)依赖于特定下载器加载固化可执行文件,不同嵌入式平台需要不同的下载器,缺乏统一性;

c)使用特定下载器加载固化,操作过程繁琐,不利于批量操作;

d)可执行文件检验方式比较复杂,不利于推广;

e)可执行文件加载固化容错纠错能力较差,跟加载固化可执行文件的操作者操作水平息息相关;

(备注:本文所指的嵌入式平台是指基于嵌入式处理器搭建起来的嵌入式系统平台,嵌入式处理器包括但不限于嵌入式微处理器(MPU)、嵌入式微控制器(MCU)、嵌入式DSP处理器(DSP)、嵌入式片上系统(SOC)。其中,最典型的MPU有ARM/Strong ARM系列、PowerPC;最典型的MCU有AVR单片机、51系列单片机;最典型的DSP有TI的DSP、Intel的MCS-296;最典型的SOC有Philips的Smart XA。)

发明内容

针对上述问题,本发明的发明目的在于提供了一种嵌入式平台可执行文件数据在线加载控制系统,该系统作为加载端与被加载端的嵌入式平台配合实现了原位在线加载可执行文件功能,还实现了高性能、便利、可视化的操作交互界面和可执行文件数据存储、数据传输、容错纠错、数据检验功能。

本发明的发明目的通过以下技术方案实现:

一种嵌入式平台可执行文件数据在线加载控制系统,运行在加载端上,用于控制作为被加载端的嵌入式平台加载可执行文件,包含人机交互界面软件和在线加载策略执行;

人机交互界面软件用于实现用户与加载端之间的人机交互,向加载端下发可执行文件的参数信息和控制命令;其中,控制命令包含但不限于进入加载模式命令、退出加载模式命令、执行在线加载控制命令;

当在线加载策略执行软件响应人机交互界面软件发来的进入加载模式命令后,先根据参数信息调取对应的可执行文件,再利用加载端和被加载端之间的通讯机制,向被加载端下发加载命令和可执行文件;与此同时,在线加载策略执行软件接收被加载端反馈回来的当前加载情况数据,并通过人机交互界面软件进行显示。

优选地,人机交互界面软件包含有参数设定区域、显示区域和操作按钮;参数设定区域提供给用户需要设置的参数包括可执行文件链接选定设置、可执行文件对应标识位置设置、控制命令选定设置、数据监控界面选定设置;显示区域包含加载端发给被加端数据内容显示区域和加载端接收被加载端发来的数据内容显示区域;操作按钮包含开始/结束按钮和通信数据记录安钮。

优选地,在线加载策略执行软件接收人机交互界面软件下发的进入加载模式命令后,执行以下步骤:

1)根据接收的参数信息和加载端相关的加载连锁条件综合判断,若加载连锁条件满足,则在线加载策略执行软件向被加载端发送相关的加载控制命令和可执行文件数据,等待被加载端反馈当前加载情况数据;否则,在线加载策略执行软件不响应进入加载模式命令,回归初始化状态,并主动向人机交互界面上报加载连锁条件不满足情况;其中,加载连锁条件包括但不限于加载指令连锁条件是否满足、外部离散量/模拟量采集值是否满足、非易失存储器相关标志量值是否满足;

2)在线加载策略执行软件及时接收被加载端发来的加载相关状态信息,并将该信息上发给人机交互界面软件,用于人机交互界面软件的显示、分析;与此同时,在线加载策略执行软件及时解析人机交互界面软件发来的执行在线加载控制命令,向被加载端发送相关的可执行文件固化命令;

3)若加载尚未完成,在线加载策略执行软件继续向被加载端发送相关的加载命令和有效的可执行文件数据,否则,在线加载策略执行软件回归到初始化状态。

优选地,在线加载策略执行软件对需要发送的可执行文件数据进行数据检验,当数据检验失败时,主动上报错误,进行相应的异常容错处理,并将加载端恢复到初始化状态;其中,数据检验包括但不限于单个数据包检验、整个可执行文件检验、可执行文件内部特定数据检验;数据检验算法包括但不限于CRC循环冗余码检验、异或检验、奇偶检验。

优选地,当在线加载策略执行软件超过一定时间未及时收到被加载端更新反馈的加载进度,则在线加载策略执行软件主动上报错误,进行相应的异常容错处理,并将加载端恢复到初始化状态。

优选地,当被加载端的加载状态变为失败状态时,在线加载策略执行软件上报相应的失败状态,进行相应的异常容错处理,并对加载端恢复到初始化状态;被加载端加载状态为失败状态的情况包括但不限于加载端和被加载端之间数据通信故障失败、被加载端接收到错误的可执行文件失败、被加载端加载固化可执行文件数据故障失败、被加载端对可执行文件数据检验失败。

优选地,若被加载端内存空间较大的,在线加载策略执行软件采用整包传输方式或采用拆包传输方式传输可执行文件;若被加载端内存空间较小的,在线加载策略执行软件采用拆包传输方式传输可执行文件。

优选地,在线加载策略执行软件和被加载端之间的通讯采用周期性通讯或问询性通讯,通讯媒介包括但不限于机载总线、232/422/485串行总线、其他总线。。

优选地,在线加载策略执行软件和被加载端之间的通讯协议该至少包含了以下内容:

a)在线加载策略执行软件发送给被加载端的数据包内至少包括加载请求命令字、加载目标唯一标示软件的信息、当前包有效目标码字节数、当前包序号、可执行文件总包数、有效目标码数据、数据检验码值、心跳字;

b)在线加载策略执行软件接收被加载端发来的数据包内至少包括加载模式状态字、当前被加载端唯一标示软件的信息、当前加载的包序号、当前包接收/固化状态、整个可执行文件接收/固化状态、整个可执行文件加载完成进度、心跳字。

本发明的有益效果在于:

a)由于采用便捷、可视化的嵌入式平台可执行文件在线加载控制策略,本发明相比较传统的只能借助特定下载器进行嵌入式平台可执行文件离位加载固化的加载实现方式,在嵌入式平台的智能化程度方面有了较大的提升。该高性能、便捷、可视化的嵌入式平台可执行文件数据在线加载控制系统实现嵌入式平台原位在线加载功能,还实现了高性能、便捷、可视化的人机交互操作界面设计,可执行文件数据存储、数据传输、容错纠错、数据检验功能,在提高可执行文件加载效率的同时,降低了可执行文件加载的难度,提升了嵌入式平台产品的智能化水平和技术成熟度。

b)由于采用原位在线加载方式加载嵌入式平台可执行文件,一方面避免了拆卸嵌入式平台产品的操作繁琐,另一方面可执行文件的加载固化也脱离了外接特定下载器、外接特定电源、拆卸嵌入式平台产品等约束和影响,降低外界工具可能带来的未知风险。

c)利用人机交互界面和内部在线加载策略执行软件的整合协作,保障加载端和用户之间便利、可视化的人机交互,与此同时,也保证加载端与被加载端的数据交互的安全性、稳定性,保证可执行文件在整个传输、加载流程内安全可靠。

d)对嵌入式平台可执行文件的加载固化过程进行容错纠错判断和处理,在保证可执行文件正常加载固化的同时,提高嵌入式平台可执行文件加载固化的安全性和可靠性。

附图说明

图1为加载端和被加载端的架构关系。

图2为嵌入式平台在线加载控制系统的架构示意图。

图3简化版加载端的人机交互界面框架图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。

整个嵌入式平台在线加载系统包含嵌入式平台(被加载端)和可执行文件存储主机(加载端)。加载端和被加载端的架构关系如图1所示,加载端内存储各个需要加载的被加载端可执行文件,被加载端进入加载状态以后,用户向加载端下发执行可执行文件在线加载的控制命令后,加载端完成被加载端可执行文件的数据拆包、数据发送,并解析被加载端反馈回来的加载相关状态信息,实现加载端和被加载端的交互机制。加载端(可执行文件存储主机)和被加载端通过机载总线、RS422/485/232串口总线或者其他总线建立通讯机制。加载端和被加载端之间的通讯可以是周期性通讯,也可以是问询性通讯,包括但不限于上述两种通讯方式。

这里需要注意的是,加载端硬件平台驻留嵌入式平台在线加载控制策略系统,被加载端硬件平台驻留嵌入式平台在线加载软件,加载端硬件平台包括但不限于PC平台、带操作系统的嵌入式硬件平台。

本实施例所示的一种嵌入式平台在线加载控制系统包含人机交互界面软件和在线加载控制策略软件,人机交互界面软件和在线加载控制策略软件的架构关系如图2所示,人机交互界面软件提供用户和加载端之间的人机交互机制,在线加载策略执行软件提供加载端和被加载端之间的数据交互机制。

人机交互界面软件实现用户与加载端的人机交互,向加载端下发可执行文件的参数信息和控制命令。

人机交互界面软件提供的人机交互界面包括但不限于图形界面、图形+拓扑综合界面。简化版人机交互界面的框架图如图3所示,包含有参数设定区域、显示区域和操作按钮。参数设定区域提供给用户需要设置的参数包括但不限于可执行文件链接选定设置、可执行文件对应标识位置设置(即绑定可执行文件和需要执行在线加载的被加载端配对关系)、控制命令选定设置(包括但不限于进入加载模式命令、退出加载模式命令、执行在线加载控制命令)、数据监控界面选定设置。显示区域包含加载端发给被加端数据内容显示区域和加载端接收被加载端发来的数据内容显示区域。操作按钮包含开始/结束按钮和通信数据记录安钮。

人机交互界面软件在用户通过开始/结束按钮选择开始本次在线加载后,首先等待用户设置相关信息,用户可以通过键盘、鼠标等方式输入需要加载的目标,加载目标需要加载的可执行文件等参数信息以及控制命令设定。在用户完成所有需要进行的参数设定后,向在线加载策略执行软件下发用户设定好的参数信息以及控制命令。

与此同时,人机交互界面软件还需要和在线加载策略执行软件互相配合,完成加载端发送给被加载端数据内容显示、被加载端反馈给加载端数据内容解析和显示等相关工作。

此外,当用户通过通信数据记录按键选择对通信数据记录时,记录所有的通信数据。

当在线加载策略执行软件响应人机交互界面软件发来的进入加载模式命令后,先根据参数信息调取对应的可执行文件,再利用加载端和被加载端之间的通讯机制,向被加载端下发加载命令和可执行文件,与此同时,在线加载策略执行软件接收被加载端反馈回来的当前加载情况数据,并通过人机交互界面软件进行显示。

在线加载策略执行软件包括下述相关流程:

1)在线加载策略执行软件接收人机交互界面软件下发的进入加载模式命令(包括但不限于需要被加载的目标、加载方式),根据接收的参数信息和加载端相关的加载连锁条件综合判断,确认是否响应用户的进入加载模式命令。若加载连锁条件满足,则在线加载策略执行软件向被加载端发送相关的加载控制命令和可执行文件数据,等待被加载端反馈当前加载情况数据;否则,在线加载策略执行软件不响应进入加载模式命令,回归初始化状态,并主动向人机交互界面上报加载连锁条件不满足情况。其中,加载连锁条件包括但不限于加载指令连锁条件是否满足、外部离散量/模拟量采集值是否满足、非易失存储器相关标志量值是否满足。

为了保证可执行文件在线加载的安全性和可靠性,在线加载策略执行软件对需要发送的可执行文件数据进行相应的数据检验,当数据检验失败时,主动上报错误,进行相应的异常容错处理,并将加载端恢复到初始化状态。加载端采用特定的数据检验算法对需要发送的可执行文件进行数据检验。其中,数据检验包括但不限于单个数据包检验、整个可执行文件检验、可执行文件内部特定数据检验;数据检验算法包括但不限于CRC循环冗余码检验(主要有CRC32检验、CRC16检验、CRC12检验)、异或检验、奇偶检验。

2)当被加载端和加载端之间通信正常且未触发异常容错处理措施时,在线加载策略执行软件及时接收被加载端发来的加载相关状态信息,并将该信息上发给人机交互界面软件,用于人机交互界面软件的显示、分析。与此同时,在线加载策略执行软件及时解析人机交互界面软件发来的执行在线加载控制命令,并利用机载总线、RS422/485/232串口总线或者其他总线向被加载端发送相关的可执行文件固化命令。

为了保证可执行文件在线加载的安全性和可靠性,在线加载策略执行软件还具有加载端主动超时容错处理、被加载端错误标志容错处理。其中,加载端主动超时容错处理措施为:当在线加载策略执行软件超过一定时间未及时收到被加载端更新反馈的加载进度,则在线加载策略执行软件主动上报错误,进行相应的异常容错处理,并将加载端恢复到初始化状态。被加载端错误标志容错处理措施为:当被加载端的加载状态变为失败状态时,在线加载策略执行软件上报相应的失败状态,进行相应的异常容错处理,并对加载端恢复到初始化状态。被加载端加载状态为失败状态的情况包括但不限于加载端和被加载端之间数据通信故障失败、被加载端接收到错误的可执行文件失败、被加载端加载固化可执行文件数据故障失败、被加载端对可执行文件数据检验失败。

3)若加载尚未完成,在线加载策略执行软件继续向被加载端发送相关的加载命令和有效的可执行文件数据,否则,在线加载策略执行软件回归到初始化状态。

在线加载策略执行软件发送可执行文件的数据传输可以采用可执行文件整包传输方式,也可以采用拆包传输方式,根据被加载端(嵌入式平台)内存空间区分,内存空间较大的,可以采用整包传输方式,也可以采用拆包传输方式;内存空间较小的,可以采用拆包传输方式。

在线加载策略执行软件和被加载端之间的通讯可以是周期性通讯,也可以是问询性通讯,包括但不限于上述两种通讯方式。在线加载策略执行软件和被加载端之间的通讯协议该至少包含了以下内容:

a)在线加载策略执行软件发送给被加载端的数据包内至少包括加载请求命令字、加载目标唯一标示软件的信息、当前包有效目标码字节数、当前包序号、可执行文件总包数、有效目标码数据、数据检验码值、心跳字。

b)在线加载策略执行软件接收被加载端发来的数据包内至少包括加载模式状态字、当前被加载端唯一标示软件的信息、当前加载的包序号、当前包接收/固化状态、整个可执行文件接收/固化状态、整个可执行文件加载完成进度、心跳字。

本发明所示的嵌入式平台在线加载控制系统可在一定程度上增加嵌入式平台的智能化程度;同时,该嵌入式平台在线加载控制系统能实现嵌入式平台原位在线加载功能,还实现了高性能、便捷、可视化的人机交互操作界面设计,可执行文件数据存储、数据传输、容错纠错、数据检验功能,保障了嵌入式平台可执行文件加载固化的安全性和可靠性,提升了嵌入式平台产品的智能化水平和技术成熟度。该发明可尽可能地满足当前对于嵌入式平台可执行文件在线加载的设计要求,极大地丰富了嵌入式平台的可执行文件在线加载的实现方式,同时可被借鉴应用到非嵌入式平台(如PC平台)的可执行文件在线加载的开发。该专利的应用独立性强,适用范围广,具有显著的市场前景和经济效益。

综上所述,仅为本发明的较佳实施例而已,并非用来限定本发明实施的范围,凡依本发明权利要求范围所述的形状、构造、特征及精神所为的均等变化与修饰,均应包括与本发明的权利要求范围内。

相关技术
  • 嵌入式平台可执行文件数据在线加载控制系统
  • 嵌入式平台可执行文件在线加载软件
技术分类

06120113023330