CN102968311A - 机载嵌入式软件开发平台 - Google Patents
机载嵌入式软件开发平台 Download PDFInfo
- Publication number
- CN102968311A CN102968311A CN2012105403550A CN201210540355A CN102968311A CN 102968311 A CN102968311 A CN 102968311A CN 2012105403550 A CN2012105403550 A CN 2012105403550A CN 201210540355 A CN201210540355 A CN 201210540355A CN 102968311 A CN102968311 A CN 102968311A
- Authority
- CN
- China
- Prior art keywords
- module
- emulation
- interface
- embedded application
- development platform
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
本发明公开了一种机载嵌入式软件开发平台,其包括开发平台管理模块、嵌入式应用模块、数据仿真驱动模块、SRU驱动接口模拟模块、VxWorksAPI接口模拟模块、分系统管理仿真模块、LRU控制仿真模块和显示仿真模块;开发平台管理模块用于在开发平台内部管理嵌入式应用模块、数据仿真驱动模块、SRU驱动接口模拟模块和VxWorks API接口模拟模块,并以多进程的方式调度分系统管理仿真模块、LRU控制仿真模块和显示仿真模块以及维护相关窗口句柄;软件开发人员利用本发明能够使用虚拟系统开发这种全新的开发模式,在脱离物理硬件的虚拟平台进行系统定义、软件开发、集成和部署,从而提高软件开发效率。
Description
技术领域
本发明涉及一种开发平台,特别是涉及一种机载嵌入式软件开发平台。
背景技术
随着机载航空电子系统的不断发展,越来越多的航电功能改由机载软件来实现,机载软件规模呈数量级的增加,机载软件的复杂性呈指数倍增长,例如F-22机载软件源程序多达170万行,而F-35机载软件源程序更是多达500万行。
更多的软件代码意味着更多的开发和调试工作。然而由于嵌入式软件的特殊性,其开发调试与目标机的状态密切相关:没有可以运行的硬件,就无法进行调试工作。
待目标机开发调试完毕,才可以进行开发机-目标机联调。然而,传统的调试模式是:宿主机编译——加载至目标机——目标机运行——发现问题——宿主机修改代码——宿主机编译——加载至目标机——目标机运行——发现问题等。以上的开发过程,由于需要做大量的重复无用功,导致开发效率无法提高。更重要的是,无法摆脱硬件对软件开发的束缚,使得型号的研制呈明显的先硬后软的串行模式。
然而由于型号项目的日益紧迫,机载航空电子系统的开发周期不断被压缩。硬件的开发周期由于受元器件采购、印制板的调试生产等因素的影响,压缩空间有限。而软件的开发调试又必需建立在硬件的基础上,使得机载航空电子系统的开发周期不得不延长,从而影响型号项目的研制。
因此,迫切地需要改进传统的机载嵌入式软件开发模式,然而始终没有完善的解决方案,仅有美国风河公司的Simics软件具备在二进制层面上对软件目标代码的仿真运行能力,能够一定程度上缓解硬件对软件开发的束缚,但是对特定硬件的建模仿真工作又成了新的制约。
发明内容
本发明所要解决的技术问题是提供一种机载嵌入式软件开发平台,软件开发人员利用本发明机载嵌入式软件开发平台能够使用虚拟系统开发这种全新的开发模式,在脱离物理硬件的虚拟平台进行系统定义、软件开发、集成和部署,从而提高软件开发效率,确保能够及时提交高质量的机载嵌入式软件。
本发明是通过下述技术方案来解决上述技术问题的:一种机载嵌入式软件开发平台,其特征在于,所述机载嵌入式软件开发平台包括开发平台管理模块、嵌入式应用模块、数据仿真驱动模块、SRU驱动接口模拟模块、VxWorksAPI接口模拟模块、分系统管理仿真模块、LRU控制仿真模块和显示仿真模块;
开发平台管理模块用于在开发平台内部管理嵌入式应用模块、数据仿真驱动模块、SRU驱动接口模拟模块和VxWorks API接口模拟模块,并以多进程的方式调度分系统管理仿真模块、LRU控制仿真模块和显示仿真模块以及维护相关窗口句柄;
嵌入式应用模块用以实现嵌入式系统功能的核心软件,具有与硬件无关的高度可移植性,可以无需任何调整地在真实硬件环境或开发平台中运行;在真实硬件环境中,由VxWorks嵌入式操作系统和板级支持包提供运行支撑;而在开发平台中,则由VxWorks API接口模拟模块和SRU驱动接口模拟模块提供运行支撑;
数据仿真驱动模块根据指定的逻辑通过直接修改嵌入式应用模块内定义的全局变量的方式仿真分系统和LRU的各种状态,为嵌入式应用模块的实时运行提供期望的激励,是非常便捷的调试和排查软件故障的技术手段;
SRU驱动接口模拟模块通过在接口上与板级支持包保持一致,为嵌入式应用模块的运行提供与真实条件完全一致的运行环境;并通过创建共享缓冲区与分系统管理仿真模块、LRU控制仿真模块和显示仿真模块进行交联,实现数据的交互,以体现嵌入式应用模块的运行结果并为嵌入式应用模块引入外界激励;
VxWorks API接口模拟模块通过在API接口上与VxWorks嵌入式操作系统保持一致,为嵌入式应用模块的运行提供与真实条件完全一致的操作系统环境;
分系统管理仿真模块用于实现分系统的仿真功能,由开发平台管理模块调度,并通过共享缓冲区与SRU驱动接口模拟模块交联,基于分系统接口控制文件响应嵌入式应用模块的命令并向其发送状态信息;
LRU控制仿真模块用于实现LRU的仿真功能,由开发平台管理模块调度,并通过共享缓冲区与SRU驱动接口模拟模块交联,基于串行通信规约响应嵌入式应用模块的命令并向其发送状态信息;
显示仿真模块用于实现仿真显示功能,由开发平台管理模块调度,并通过共享缓冲区与SRU驱动接口模拟模块交联,解释嵌入式应用模块发送的显示文件并在虚拟显示终端上作图。
优选地,所述机载嵌入式软件开发平台初始化时,根据外部激励是由分系统管理仿真模块和LRU控制仿真模块产生还是由数据仿真驱动模块产生,选择是否调用数据仿真驱动模块;同时,以多进程的方式调度分系统管理仿真模块、LRU控制仿真模块和显示仿真模块以及维护相关窗口句柄;然后调度嵌入式应用模块进入实时运行。
优选地,所述嵌入式应用模块包括以下模块:
分系统处理模块,分系统处理模块基于分系统接口控制文件响应分系统管理仿真模块或真实分系统的状态变化并向其发送控制命令;
LRU处理模块,LRU处理模块基于串行通信规约响应LRU控制仿真模块或真实LRU的状态变化并向其发送控制命令;
显示处理模块,显示处理模块则根据飞行操作程序的要求,将绘图指令和图符/字符代码组织成显示文件送显示仿真模块或真实显示设备显示。
优选地,所述SRU驱动接口模拟模块包括以下模块:
多路总线接口模拟模块,多路总线接口模拟模块用于嵌入式应用模块与分系统管理仿真模块之间的交互;
输入输出接口控制模拟模块,输入输出接口控制模拟模块用于嵌入式应用模块和LRU控制仿真模块之间的交互;
字符发生逻辑模拟模块,字符发生逻辑模拟模块用于嵌入式应用模块和显示仿真模块之间的交互;
共享缓冲区管理模块,共享缓冲区管理模块用于在开发平台和分系统管理仿真模块、LRU控制仿真模块以及显示仿真模块之间实现进程间通讯。
优选地,所述VxWorks API接口模拟模块包括以下模块:
任务管理模块,任务管理模块以多线程的技术手段为嵌入式应用模块提供实时多任务的创建、运行、管理和延迟;
信号量管理模块,信号量管理模块实现信号量的创建、获取和释放功能,用于为嵌入式应用模块的运行提供多任务同步与互斥;
中断管理模块,中断管理模块实现中断的使能、禁用和中断服务程序挂接,用于为嵌入式应用模块和SRU驱动接口模拟模块提供中断交互的能力;
系统时钟管理模块,系统时钟管理模块用于为嵌入式应用模块提供系统时钟和辅助时钟相关设置以及中断响应;
消息队列管理模块,消息队列管理模块实现消息队列的创建、发送和接收功能,用于为嵌入式应用模块和SRU驱动接口模拟模块提供数据序列安全交互的能力;
软件看门狗计时器,软件看门狗计时器用于为嵌入式应用模块中的任意任务提供延时调用函数功能;
消息日志模块,消息日志模块用于为嵌入式应用模块的运行提供消息打印功能,以便于了解软件的运行情况。
优选地,所述分系统管理仿真模块包括以下模块:
状态设置模块,状态设置模块基于分系统接口控制文件提供界面供用户输入分系统状态,并将完成输入的新状态通过共享缓冲区发送到多路总线接口模拟模块;
命令显示与处理模块,命令显示与处理模块基于分系统接口控制文件通过共享缓冲区从多路总线接口模拟模块接收新的命令,根据指定逻辑进行处理,并提供界面供用户查看。
优选地,所述LRU控制仿真模块主要包括以下模块:
LRU控制操作仿真界面,LRU控制操作仿真界面通过鼠标或触屏的方式接收用户的输入,基于串行通信规约组织操作消息发送到输入输出接口控制模拟模块;
命令处理模块,命令处理模块基于串行通信规约通过共享缓冲区从输入输出接口控制模拟模块接收新的命令,根据指定逻辑进行处理。
优选地,所述显示仿真模块主要包括以下模块:
平显显示仿真模块,平显显示仿真模块根据图形指令集和平显符号库解析从字符发生逻辑模拟模块接收到的平显显示文件,并利用OpenGL指令将解析结果显示于窗口中供用户查看;
下显显示仿真模块,下显显示仿真模块根据图形指令集和下显符号库解析从字符发生逻辑模拟模块接收到的下显显示文件,并利用OpenGL指令将解析结果显示于窗口中供用户查看。
本发明的积极进步效果在于:本发明解决现有机载嵌入式软件开发无法摆脱硬件的束缚,从而造成软件开发周期过长的问题。软件开发人员利用本发明能够使用虚拟系统开发这种全新的开发模式,在脱离物理硬件的虚拟平台进行系统定义、软件开发、集成和部署,从而提高软件开发效率,确保能够及时提交高质量的机载嵌入式软件。本发明使所设计软件的开发与调试过程与具体硬件环境无关,提高了嵌入式软件的可移植性,解决了机载嵌入式软件开发受限于目标机硬件束缚的问题,取得了节省开发时间和成本以及丰富调试技术手段等有益效果。
附图说明
图1是机载嵌入式软件的真实运行环境框图;
图2是本发明机载嵌入式软件开发平台的功能框图;
图3是嵌入式应用模块的框图;
图4是SRU驱动接口模拟模块的框图;
图5是VxWorks API接口模拟模块的框图;
图6是分系统管理仿真模块的框图;
图7是LRU控制仿真模块的框图;
图8是显示仿真模块的框图。
具体实施方式
为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体图示,进一步阐述本发明。
图1是机载嵌入式软件的真实运行环境框图。如图1所示,机载嵌入式软件运行于LRU(外场可更换单元)的某一SRU(内场可更换单元)上,通过内部总线与其他SRU交互;该LRU则通过信号线缆与航电分系统、其他LRU以及显示设备交联。以上构成了机载嵌入式软件的真实运行环境。
图2是本发明机载嵌入式软件开发平台功能框图。本发明机载嵌入式软件开发平台包括一套独立的通用计算模块。如图2所示,上述的通用计算模块包括:开发平台管理模块[101],开发平台管理模块[101]用于在开发平台内部管理嵌入式应用模块[102]、数据仿真驱动模块[103]、SRU驱动接口模拟模块[104]和VxWorks API接口模拟模块[105],并以多进程的方式调度分系统管理仿真模块[106]、LRU控制仿真模块[107]和显示仿真模块[108]以及维护相关窗口句柄;开发平台管理模块[101]、数据仿真驱动模块[103]、SRU驱动接口模拟模块[104]、VxWorks API接口模拟模块[105]都与嵌入式应用模块[102]连接;
嵌入式应用模块[102]用以实现嵌入式系统功能的核心软件,具有与硬件无关的高度可移植性,可以无需任何调整地在真实硬件环境或开发平台中运行。在真实硬件环境中,由VxWorks嵌入式操作系统和板级支持包提供运行支撑;而在开发平台中,则由VxWorks API接口模拟模块[105]和SRU驱动接口模拟模块[104]提供运行支撑;
数据仿真驱动模块[103]根据指定的逻辑通过直接修改嵌入式应用模块[102]内定义的全局变量的方式仿真分系统和LRU的各种状态,为嵌入式应用模块[102]的实时运行提供期望的激励,是非常便捷的调试和排查软件故障的技术手段;
SRU驱动接口模拟模块[104]通过在接口上与板级支持包保持一致(包括全局变量接口和调用函数接口等),为嵌入式应用模块[102]的运行提供与真实条件完全一致的运行环境;并通过创建共享缓冲区与分系统管理仿真模块[106]、LRU控制仿真模块[107]和显示仿真模块[108]进行交联,实现数据的交互,以体现嵌入式应用模块[102]的运行结果并为嵌入式应用模块[102]引入外界激励;
VxWorks API接口模拟模块[105]通过在API接口上与VxWorks嵌入式操作系统保持一致,为嵌入式应用模块[102]的运行提供与真实条件完全一致的操作系统环境,并通过调用Windows API实现相关操作系统功能,为嵌入式应用模块[102]的运行提供完全透明的操作系统支持;
分系统管理仿真模块[106]用于实现分系统的仿真功能,由开发平台管理模块[101]调度,并通过共享缓冲区与SRU驱动接口模拟模块[104]交联,基于分系统接口控制文件响应嵌入式应用模块[102]的命令并向其发送状态信息;
LRU控制仿真模块[107]用于实现LRU的仿真功能,由开发平台管理模块[101]调度,并通过共享缓冲区与SRU驱动接口模拟模块[104]交联,基于串行通信规约响应嵌入式应用模块[102]的命令并向其发送状态信息;
显示仿真模块[108]用于实现仿真显示功能,由开发平台管理模块[101]调度,并通过共享缓冲区与SRU驱动接口模拟模块[104]交联,解释嵌入式应用模块[102]发送的显示文件并在虚拟显示终端上作图。
机载嵌入式软件开发平台初始化时,根据外部激励是由分系统管理仿真模块[106]和LRU控制仿真模块[107]产生还是由数据仿真驱动模块[103]产生,选择是否调用数据仿真驱动模块[103];同时,以多进程的方式调度分系统管理仿真模块[106]、LRU控制仿真模块[107]和显示仿真模块[107]以及维护相关窗口句柄;然后调度嵌入式应用模块[102]进入实时运行。
结合图1和图2可以看出,通过利用SRU驱动接口模拟模块[104]和VxWorks API接口模拟模块[105]、分系统管理仿真模块[106]、LRU控制仿真模块[107]和显示仿真模块[108]对真实硬件进行基于接口的对应替换,使得嵌入式软件可以无需任何调整地在真实硬件环境或开发平台中无差别地运行。
根据机载嵌入式软件开发平台,用户在开发平台中开发机载嵌入式软件并利用Visual Studio进行编译和调试;用户可以通过分系统管理仿真模块和LRU控制仿真模块进行输入操作,产生相应的分系统状态信息或LRU操作消息经过共享缓冲区管理模块传递到多路总线接口模拟模块或输入输出接口控制模拟模块,从而被嵌入式应用模块接收;嵌入式应用模块基于分系统接口控制文件和串行通信规约响应分系统状态信息或LRU操作消息的激励,并将新的命令通过多路总线接口模拟模块或输入输出接口控制模拟模块经共享缓冲区管理模块送往分系统管理仿真模块和LRU控制仿真模块,从而完成与用户的操作交互;用户也可以通过数据仿真驱动模块直接修改全局变量的方式直接为嵌入式应用模块[102]的实时运行提供期望的激励;嵌入式应用模块基于当前状态根据飞行操作程序的要求,调用字符发生逻辑模拟模块生成显示文件经共享缓冲区管理模块送往显示仿真模块,从而完成与用户的视觉交互。
图3是嵌入式应用模块的框图,如图3所示,其主要包括以下模块:
分系统处理模块[201],分系统处理模块[201]基于分系统接口控制文件响应分系统管理仿真模块[106]或真实分系统的状态变化并向其发送控制命令;
LRU处理模块[202],LRU处理模块[202]基于串行通信规约响应LRU控制仿真模块[107]或真实LRU的状态变化并向其发送控制命令;
显示处理模块[203],显示处理模块[203]则根据飞行操作程序的要求,将绘图指令和图符/字符代码组织成显示文件送显示仿真模块[108]或真实显示设备(平视显示器和/或下视显示器)显示。
通过在嵌入式应用模块[102]之外直接编程修改嵌入式应用模块[102]内定义的全局变量的方式仿真分系统和LRU的各种状态,为嵌入式应用模块[102]的实时运行提供期望的激励。可以避免仿真复杂的状态和时序,直接复现特定的嵌入式应用模块[102]运行状态,为软件调试和排查软件故障的提供有力的技术手段。
嵌入式应用模块[102]可以忽略运行平台的差异,在VxWorks API接口模拟模块[105]和SRU驱动接口模拟模块[104]支持下调试运行,其运行结果可以直观地在显示仿真模块[108]、LRU控制仿真模块[107]和分系统管理仿真模块[107]上进行观察。
图4是SRU驱动接口模拟模块的框图,如图4所示,其主要包括以下模块:
多路总线接口模拟模块[401],多路总线接口模拟模块[401]用于嵌入式应用模块[102]与分系统管理仿真模块[106]之间的交互;
输入输出接口控制模拟模块[402],输入输出接口控制模拟模块[402]用于嵌入式应用模块[102]和LRU控制仿真模块[107]之间的交互;
字符发生逻辑模拟模块[403],字符发生逻辑模拟模块[403]用于嵌入式应用模块[102]和显示仿真模块[108]之间的交互;
共享缓冲区管理模块[404],共享缓冲区管理模块[404]用于在开发平台和分系统管理仿真模块[106]、LRU控制仿真模块[107]以及显示仿真模块[108]之间实现进程间通讯。
SRU驱动接口模拟模块提供与板级支持包完全一致的全局变量接口和调用函数接口等,让嵌入式应用模块[102]在开发平台上的运行有着真实条件完全一致的环境;并通过创建共享缓冲区与分系统管理仿真模块[106]、LRU控制仿真模块[107]和显示仿真模块[108]进行交联;是嵌入式应用模块[102]和分系统管理仿真模块[106]、LRU控制仿真模块[107]、显示仿真模块[108]之间交互的桥梁。
图5是VxWorks API接口模拟模块的框图,如图5所示,其主要包括以下模块:
任务管理模块[501],任务管理模块[501]以多线程的技术手段为嵌入式应用模块[102]提供实时多任务的创建、运行、管理和延迟等功能;
信号量管理模块[502],信号量管理模块[502]实现信号量的创建、获取和释放功能,用于为嵌入式应用模块[102]的运行提供多任务同步与互斥;
中断管理模块[503],中断管理模块[503]实现中断的使能、禁用和中断服务程序挂接等功能,用于为嵌入式应用模块[102]和SRU驱动接口模拟模块[104]提供中断交互的能力;
系统时钟管理模块[504],系统时钟管理模块[504]用于为嵌入式应用模块[102]提供系统时钟和辅助时钟相关设置以及中断响应等功能;
消息队列管理模块[505],消息队列管理模块[505]实现消息队列的创建、发送和接收功能,用于为嵌入式应用模块[102]和SRU驱动接口模拟模块[104]提供数据序列安全交互的能力;
软件看门狗计时器[506],软件看门狗计时器[506]用于为嵌入式应用模块[102]中的任意任务提供延时调用函数功能;
消息日志模块[507],消息日志模块[507]用于为嵌入式应用模块[102]的运行提供消息打印功能,以便于了解软件的运行情况。
图6是分系统管理仿真模块的框图,如图6所示,其主要包括以下模块:
状态设置模块[601],状态设置模块[601]基于分系统接口控制文件提供界面供用户输入分系统状态,并将完成输入的新状态通过共享缓冲区发送到多路总线接口模拟模块[401];
命令显示与处理模块[602],命令显示与处理模块[602]基于分系统接口控制文件通过共享缓冲区从多路总线接口模拟模块[401]接收新的命令,根据指定逻辑进行处理,并提供界面供用户查看。
图7是LRU控制仿真模块的框图,如图7所示,其主要包括以下模块:
LRU控制操作仿真界面[701],LRU控制操作仿真界面[701]通过鼠标或触屏的方式接收用户的输入,基于串行通信规约组织操作消息发送到输入输出接口控制模拟模块[402];
命令处理模块[702],命令处理模块[702]基于串行通信规约通过共享缓冲区从输入输出接口控制模拟模块[402]接收新的命令,根据指定逻辑进行处理。
图8是显示仿真模块的框图,如图8所示,其主要包括以下模块:
平显显示仿真模块[801],平显显示仿真模块[801]根据图形指令集和平显符号库解析从字符发生逻辑模拟模块[403]接收到的平显显示文件,并利用OpenGL指令将解析结果显示于窗口中供用户查看;
下显显示仿真模块[802],下显显示仿真模块[802]根据图形指令集和下显符号库解析从字符发生逻辑模拟模块[403]接收到的下显显示文件,并利用OpenGL指令将解析结果显示于窗口中供用户查看。
如上所述,用本发明开发的机载嵌入式软件具备高可移植性,其开发与调试过程与具体硬件环境无关,解决了机载嵌入式软件开发受限于目标机硬件束缚的问题,取得了节省开发时间和成本以及丰富调试技术手段等有益效果。
由于利用本发明开发出来的嵌入式应用模块可以无差别地运行在真实硬件环境或机载嵌入式软件开发平台中,在真实硬件环境下与接口SRU板级驱动包、VxWorks操作系统、主处理板级驱动包进行交互;而在机载嵌入式软件开发平台中则与SRU驱动接口模拟模块、VxWorks API接口模拟模块进行交互。从而解决现有机载嵌入式软件开发无法摆脱硬件的束缚,造成软件开发周期过长的问题。
进一步,本发明开发出来的嵌入式应用既可以在真实硬件环境下通过信号电缆与航电分系统、其他LRU硬件、显示设备进行交互,也可以机载嵌入式软件开发平台中通过共享缓冲区与分系统管理仿真模块、LRU控制仿真模块、显示仿真模块进行交互,从而可以方便的引入外部激励并观察到其运行结果。从而取得了节省调试时间和成本以及丰富调试技术手段等有益效果。
进一步,本发明通过数据仿真驱动模块根据指定的逻辑利用直接修改嵌入式应用模块内定义的全局变量的方法来仿真分系统和LRU的各种状态,为嵌入式应用模块的实时运行提供期望的激励,从而为快速复现和解决真实运行环境中的复杂逻辑故障提供便捷的技术手段。
以上显示和描述了本发明的基本原理、主要特征和优点。本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
Claims (8)
1.一种机载嵌入式软件开发平台,其特征在于,所述机载嵌入式软件开发平台包括开发平台管理模块、嵌入式应用模块、数据仿真驱动模块、SRU驱动接口模拟模块、VxWorks API接口模拟模块、分系统管理仿真模块、LRU控制仿真模块和显示仿真模块;
开发平台管理模块用于在开发平台内部管理嵌入式应用模块、数据仿真驱动模块、SRU驱动接口模拟模块和VxWorks API接口模拟模块,并以多进程的方式调度分系统管理仿真模块、LRU控制仿真模块和显示仿真模块以及维护相关窗口句柄;
嵌入式应用模块用以实现嵌入式系统功能的核心软件,具有与硬件无关的高度可移植性,可以无需任何调整地在真实硬件环境或开发平台中运行;在真实硬件环境中,由VxWorks嵌入式操作系统和板级支持包提供运行支撑;而在开发平台中,则由VxWorks API接口模拟模块和SRU驱动接口模拟模块提供运行支撑;
数据仿真驱动模块根据指定的逻辑通过直接修改嵌入式应用模块内定义的全局变量的方式仿真分系统和LRU的各种状态,为嵌入式应用模块的实时运行提供期望的激励,是非常便捷的调试和排查软件故障的技术手段;
SRU驱动接口模拟模块通过在接口上与板级支持包保持一致,为嵌入式应用模块的运行提供与真实条件完全一致的运行环境;并通过创建共享缓冲区与分系统管理仿真模块、LRU控制仿真模块和显示仿真模块进行交联,实现数据的交互,以体现嵌入式应用模块的运行结果并为嵌入式应用模块引入外界激励;
VxWorks API接口模拟模块通过在API接口上与VxWorks嵌入式操作系统保持一致,为嵌入式应用模块的运行提供与真实条件完全一致的操作系统环境;
分系统管理仿真模块用于实现分系统的仿真功能,由开发平台管理模块调度,并通过共享缓冲区与SRU驱动接口模拟模块交联,基于分系统接口控制文件响应嵌入式应用模块的命令并向其发送状态信息;
LRU控制仿真模块用于实现LRU的仿真功能,由开发平台管理模块调度,并通过共享缓冲区与SRU驱动接口模拟模块交联,基于串行通信规约响应嵌入式应用模块的命令并向其发送状态信息;
显示仿真模块用于实现仿真显示功能,由开发平台管理模块调度,并通过共享缓冲区与SRU驱动接口模拟模块交联,解释嵌入式应用模块发送的显示文件并在虚拟显示终端上作图。
2.如权利要求1所述的机载嵌入式软件开发平台,其特征在于,所述机载嵌入式软件开发平台初始化时,根据外部激励是由分系统管理仿真模块和LRU控制仿真模块产生还是由数据仿真驱动模块产生,选择是否调用数据仿真驱动模块;同时,以多进程的方式调度分系统管理仿真模块、LRU控制仿真模块和显示仿真模块以及维护相关窗口句柄;然后调度嵌入式应用模块进入实时运行。
3.如权利要求2所述的机载嵌入式软件开发平台,其特征在于,所述嵌入式应用模块包括以下模块:
分系统处理模块,分系统处理模块基于分系统接口控制文件响应分系统管理仿真模块或真实分系统的状态变化并向其发送控制命令;
LRU处理模块,LRU处理模块基于串行通信规约响应LRU控制仿真模块或真实LRU的状态变化并向其发送控制命令;
显示处理模块,显示处理模块则根据飞行操作程序的要求,将绘图指令和图符/字符代码组织成显示文件送显示仿真模块或真实显示设备显示。
4.如权利要求3所述的机载嵌入式软件开发平台,其特征在于,所述SRU驱动接口模拟模块包括以下模块:
多路总线接口模拟模块,多路总线接口模拟模块用于嵌入式应用模块与分系统管理仿真模块之间的交互;
输入输出接口控制模拟模块,输入输出接口控制模拟模块用于嵌入式应用模块和LRU控制仿真模块之间的交互;
字符发生逻辑模拟模块,字符发生逻辑模拟模块用于嵌入式应用模块和显示仿真模块之间的交互;
共享缓冲区管理模块,共享缓冲区管理模块用于在开发平台和分系统管理仿真模块、LRU控制仿真模块以及显示仿真模块之间实现进程间通讯。
5.如权利要求4所述的机载嵌入式软件开发平台,其特征在于,所述VxWorks API接口模拟模块包括以下模块:
任务管理模块,任务管理模块以多线程的技术手段为嵌入式应用模块提供实时多任务的创建、运行、管理和延迟;
信号量管理模块,信号量管理模块实现信号量的创建、获取和释放功能,用于为嵌入式应用模块的运行提供多任务同步与互斥;
中断管理模块,中断管理模块实现中断的使能、禁用和中断服务程序挂接,用于为嵌入式应用模块和SRU驱动接口模拟模块提供中断交互的能力;
系统时钟管理模块,系统时钟管理模块用于为嵌入式应用模块提供系统时钟和辅助时钟相关设置以及中断响应;
消息队列管理模块,消息队列管理模块实现消息队列的创建、发送和接收功能,用于为嵌入式应用模块和SRU驱动接口模拟模块提供数据序列安全交互的能力;
软件看门狗计时器,软件看门狗计时器用于为嵌入式应用模块中的任意任务提供延时调用函数功能;
消息日志模块,消息日志模块用于为嵌入式应用模块的运行提供消息打印功能,以便于了解软件的运行情况。
6.如权利要求5所述的机载嵌入式软件开发平台,其特征在于,所述分系统管理仿真模块包括以下模块:
状态设置模块,状态设置模块基于分系统接口控制文件提供界面供用户输入分系统状态,并将完成输入的新状态通过共享缓冲区发送到多路总线接口模拟模块;
命令显示与处理模块,命令显示与处理模块基于分系统接口控制文件通过共享缓冲区从多路总线接口模拟模块接收新的命令,根据指定逻辑进行处理,并提供界面供用户查看。
7.如权利要求6所述的机载嵌入式软件开发平台,其特征在于,所述LRU控制仿真模块主要包括以下模块:
LRU控制操作仿真界面,LRU控制操作仿真界面通过鼠标或触屏的方式接收用户的输入,基于串行通信规约组织操作消息发送到输入输出接口控制模拟模块;
命令处理模块,命令处理模块基于串行通信规约通过共享缓冲区从输入输出接口控制模拟模块接收新的命令,根据指定逻辑进行处理。
8.如权利要求7所述的机载嵌入式软件开发平台,其特征在于,所述显示仿真模块主要包括以下模块:
平显显示仿真模块,平显显示仿真模块根据图形指令集和平显符号库解析从字符发生逻辑模拟模块接收到的平显显示文件,并利用OpenGL指令将解析结果显示于窗口中供用户查看;
下显显示仿真模块,下显显示仿真模块根据图形指令集和下显符号库解析从字符发生逻辑模拟模块接收到的下显显示文件,并利用OpenGL指令将解析结果显示于窗口中供用户查看。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210540355.0A CN102968311B (zh) | 2012-12-13 | 2012-12-13 | 机载嵌入式软件开发平台 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210540355.0A CN102968311B (zh) | 2012-12-13 | 2012-12-13 | 机载嵌入式软件开发平台 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102968311A true CN102968311A (zh) | 2013-03-13 |
CN102968311B CN102968311B (zh) | 2015-05-13 |
Family
ID=47798469
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210540355.0A Active CN102968311B (zh) | 2012-12-13 | 2012-12-13 | 机载嵌入式软件开发平台 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102968311B (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103699393A (zh) * | 2014-01-07 | 2014-04-02 | 北京经纬恒润科技有限公司 | 一种打解包程序生成方法及装置 |
CN105607904A (zh) * | 2015-12-18 | 2016-05-25 | 南京熊猫电子股份有限公司 | 基于Linux平台的通信软件的快速开发框架及使用方法 |
CN105630476A (zh) * | 2014-11-14 | 2016-06-01 | 中国航空工业第六一八研究所 | 一种gnc嵌入式系统的专用总线接口软件自动化开发方法 |
CN105653346A (zh) * | 2014-11-19 | 2016-06-08 | 中国航空工业集团公司西安飞机设计研究所 | 一种辅助航电软件开发的通用激励器框架设计方法 |
CN107247608A (zh) * | 2017-05-31 | 2017-10-13 | 河南思维轨道交通技术研究院有限公司 | 一种具有应用软件硬件地址无关性的操作系统实现方法 |
CN107479983A (zh) * | 2017-07-11 | 2017-12-15 | 核动力运行研究所 | 基于时域控制技术的变步长多程序同步计算系统及方法 |
CN107562635A (zh) * | 2017-09-15 | 2018-01-09 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 嵌入式软件测试辅助系统 |
CN107832042A (zh) * | 2017-11-16 | 2018-03-23 | 南京轩世琪源软件科技有限公司 | 一种基于嵌入式软件开发方法 |
CN107895075A (zh) * | 2017-11-10 | 2018-04-10 | 中国航空工业集团公司西安飞机设计研究所 | 一种开发机载总线通用仿真框架的方法 |
CN105278940B (zh) * | 2014-07-08 | 2018-09-25 | 北京航空航天大学 | 一种基于多核处理器架构的机器人混合系统应用框架 |
CN109063339A (zh) * | 2018-08-03 | 2018-12-21 | 北京航空航天大学 | 数字航天器部件级嵌入式仿真系统 |
CN111061460A (zh) * | 2019-12-13 | 2020-04-24 | 杭州中恒电气股份有限公司 | 基于嵌入式系统的通用软件开发平台 |
WO2020133691A1 (zh) * | 2018-12-29 | 2020-07-02 | 北京图森未来科技有限公司 | 一种嵌入式系统驱动层的实现方法和装置 |
CN111506395A (zh) * | 2020-06-17 | 2020-08-07 | 北京机电工程研究所 | 一种混合仿真的全数字虚拟运行环境的实现方法及装置 |
CN112765018A (zh) * | 2021-01-12 | 2021-05-07 | 武汉光庭信息技术股份有限公司 | 一种仪器仪表调试系统及方法 |
CN114347072A (zh) * | 2021-12-06 | 2022-04-15 | 埃夫特智能装备股份有限公司 | 一种机器人控制器模拟化平台及其虚拟方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6275785B1 (en) * | 1997-11-15 | 2001-08-14 | International Business Machines Corporation | Hardware simulator for a transaction processing system |
US6389383B1 (en) * | 1999-08-13 | 2002-05-14 | Texas Instruments Incorporated | System and method for interfacing software and hardware |
CN101158936A (zh) * | 2007-11-21 | 2008-04-09 | 中国科学院计算技术研究所 | 一种节点之间的数据传输系统和装置及方法 |
CN101727763A (zh) * | 2009-12-11 | 2010-06-09 | 中国人民解放军空军军训器材研究所 | 一种训练系统的集成与实时调度的方法 |
CN102520899A (zh) * | 2011-12-07 | 2012-06-27 | 中国航空无线电电子研究所 | 通用座舱显示管理系统及相应的显示控制系统的开发方法 |
CN102799719A (zh) * | 2012-06-30 | 2012-11-28 | 华为技术有限公司 | 一种仿真测试的方法和设备 |
-
2012
- 2012-12-13 CN CN201210540355.0A patent/CN102968311B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6275785B1 (en) * | 1997-11-15 | 2001-08-14 | International Business Machines Corporation | Hardware simulator for a transaction processing system |
US6389383B1 (en) * | 1999-08-13 | 2002-05-14 | Texas Instruments Incorporated | System and method for interfacing software and hardware |
CN101158936A (zh) * | 2007-11-21 | 2008-04-09 | 中国科学院计算技术研究所 | 一种节点之间的数据传输系统和装置及方法 |
CN101727763A (zh) * | 2009-12-11 | 2010-06-09 | 中国人民解放军空军军训器材研究所 | 一种训练系统的集成与实时调度的方法 |
CN102520899A (zh) * | 2011-12-07 | 2012-06-27 | 中国航空无线电电子研究所 | 通用座舱显示管理系统及相应的显示控制系统的开发方法 |
CN102799719A (zh) * | 2012-06-30 | 2012-11-28 | 华为技术有限公司 | 一种仿真测试的方法和设备 |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103699393A (zh) * | 2014-01-07 | 2014-04-02 | 北京经纬恒润科技有限公司 | 一种打解包程序生成方法及装置 |
CN103699393B (zh) * | 2014-01-07 | 2017-04-12 | 北京经纬恒润科技有限公司 | 一种打解包程序生成方法及装置 |
CN105278940B (zh) * | 2014-07-08 | 2018-09-25 | 北京航空航天大学 | 一种基于多核处理器架构的机器人混合系统应用框架 |
CN105630476A (zh) * | 2014-11-14 | 2016-06-01 | 中国航空工业第六一八研究所 | 一种gnc嵌入式系统的专用总线接口软件自动化开发方法 |
CN105630476B (zh) * | 2014-11-14 | 2019-05-21 | 中国航空工业第六一八研究所 | 一种gnc嵌入式系统的专用总线接口软件自动化开发方法 |
CN105653346A (zh) * | 2014-11-19 | 2016-06-08 | 中国航空工业集团公司西安飞机设计研究所 | 一种辅助航电软件开发的通用激励器框架设计方法 |
CN105653346B (zh) * | 2014-11-19 | 2019-01-01 | 中国航空工业集团公司西安飞机设计研究所 | 一种辅助航电软件开发的通用激励器框架设计方法 |
CN105607904A (zh) * | 2015-12-18 | 2016-05-25 | 南京熊猫电子股份有限公司 | 基于Linux平台的通信软件的快速开发框架及使用方法 |
CN105607904B (zh) * | 2015-12-18 | 2019-04-16 | 南京熊猫电子股份有限公司 | 基于Linux平台的通信软件的快速开发框架及其使用方法 |
CN107247608A (zh) * | 2017-05-31 | 2017-10-13 | 河南思维轨道交通技术研究院有限公司 | 一种具有应用软件硬件地址无关性的操作系统实现方法 |
CN107479983A (zh) * | 2017-07-11 | 2017-12-15 | 核动力运行研究所 | 基于时域控制技术的变步长多程序同步计算系统及方法 |
CN107562635A (zh) * | 2017-09-15 | 2018-01-09 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 嵌入式软件测试辅助系统 |
CN107895075B (zh) * | 2017-11-10 | 2023-07-25 | 中国航空工业集团公司西安飞机设计研究所 | 一种开发机载总线通用仿真框架的方法 |
CN107895075A (zh) * | 2017-11-10 | 2018-04-10 | 中国航空工业集团公司西安飞机设计研究所 | 一种开发机载总线通用仿真框架的方法 |
CN107832042B (zh) * | 2017-11-16 | 2018-10-12 | 南京轩世琪源软件科技有限公司 | 一种基于嵌入式软件开发方法 |
CN107832042A (zh) * | 2017-11-16 | 2018-03-23 | 南京轩世琪源软件科技有限公司 | 一种基于嵌入式软件开发方法 |
CN109063339A (zh) * | 2018-08-03 | 2018-12-21 | 北京航空航天大学 | 数字航天器部件级嵌入式仿真系统 |
CN109063339B (zh) * | 2018-08-03 | 2023-01-10 | 北京航空航天大学 | 数字航天器部件级嵌入式仿真系统 |
WO2020133691A1 (zh) * | 2018-12-29 | 2020-07-02 | 北京图森未来科技有限公司 | 一种嵌入式系统驱动层的实现方法和装置 |
CN111061460A (zh) * | 2019-12-13 | 2020-04-24 | 杭州中恒电气股份有限公司 | 基于嵌入式系统的通用软件开发平台 |
CN111061460B (zh) * | 2019-12-13 | 2023-09-29 | 杭州中恒电气股份有限公司 | 基于嵌入式系统的通用软件开发平台 |
CN111506395A (zh) * | 2020-06-17 | 2020-08-07 | 北京机电工程研究所 | 一种混合仿真的全数字虚拟运行环境的实现方法及装置 |
CN112765018A (zh) * | 2021-01-12 | 2021-05-07 | 武汉光庭信息技术股份有限公司 | 一种仪器仪表调试系统及方法 |
CN114347072A (zh) * | 2021-12-06 | 2022-04-15 | 埃夫特智能装备股份有限公司 | 一种机器人控制器模拟化平台及其虚拟方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102968311B (zh) | 2015-05-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102968311B (zh) | 机载嵌入式软件开发平台 | |
US10133597B2 (en) | Intelligent GPU scheduling in a virtualization environment | |
Barbierato et al. | Exploiting CloudSim in a multiformalism modeling approach for cloud based systems | |
US10970129B2 (en) | Intelligent GPU scheduling in a virtualization environment | |
CN101458812B (zh) | 用于检测图像信息的更新的装置和方法 | |
CN101231589B (zh) | 用于原位开发嵌入式软件的系统和方法 | |
JP2009265668A (ja) | 工学プロジェクトの訓練シミュレータ | |
CN105137807A (zh) | 通用全数字星务仿真平台 | |
CN102279766A (zh) | 并行模拟多个处理器的方法及系统、调度器 | |
CN105431824A (zh) | 多平台移动装置和其它计算装置以及方法 | |
CN102096725A (zh) | 一种基于fpga的仿真器 | |
Portero et al. | Simulating the future kilo-x86-64 core processors and their infrastructure | |
CN102331961B (zh) | 并行模拟多个处理器的方法及系统、调度器 | |
CN108304248A (zh) | 一种多系统虚拟化的移动设备 | |
CN112214416A (zh) | 调试小程序的方法、装置、电子设备和存储介质 | |
CN109800166B (zh) | 一种嵌入式实时操作系统的调试方法及装置 | |
CN204965047U (zh) | 基于arm的嵌入式综合显示仿真仪表 | |
KR20140060075A (ko) | 자바가상머신을 이용한 임무컴퓨터의 다기능 시현 비행운용장치 및 그 제어방법 | |
CN102541559A (zh) | 一种实时嵌入式3d数字仪表构造方法 | |
JP2803090B2 (ja) | Mpuシミュレーション方法及びmpuシミュレータ | |
CN101308648A (zh) | 自动化测试显示装置的方法及其系统 | |
CN104317632A (zh) | 在Windows系统中模拟虚拟硬件环境运行UCOS-II的方法和系统 | |
KR20240009757A (ko) | 오토사 스택 가상화를 통한 윈도우 기반의 차량용 소프트웨어 시뮬레이션 장치 및 방법 | |
Girbal et al. | BB-RTE: a Budget-Based RunTime Engine for Mixed & Time Critical Systems | |
Hou et al. | Research on embedded GUI Technology and its Application in Control System of Engineering Machinery |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |