异构仿真:打造更可靠的综合化航空电子软件
综合化航空电子系统是一类典型的安全关键系统,具有分布式、异构、计算资源和物理资源强耦合等特征。随着 IMA(Integrated Modular Avionics,综合模块化航空电子)系统趋于复杂化和智能化,系统的功能越来越多地采用软件来实现,如何打造更为可靠的综合化航空电子软件成为一个重要挑战。
1.IMA
航空电子系统先后经历了分立式、联合式、综合化等阶段,综合化阶段的航空电子系统即为 IMA 系统。IMA 系统作为一类典型的安全关键系统,对安全性、可靠性、实时性有极高的要求。当下 IMA 系统正向开放式、模块化、综合化的方向高速发展,复杂程度也越来越高,需要多个具备不同功能特性的组件来协作完成复杂任务。
分区(Partition)是 IMA 系统的核心概念,即每个分区包含独立的地址空间、上下文数据以及实时任务,一个分区的错误行为不会影响到其他分区,是 IMA 多个组件协同工作的保障。为此,美国机动工程师协会 SAE(Society of Automotive Engineers)于 1997 年推出了综合化航空电子操作系统标准 ARINC653,根据软件安全级别定义了分区管理、调度、通信等接口,其目的是在航电实时操作系统与应用软件之间定义一套通用的应用执行接口标准,以保证 IMA 系统的可靠性和安全性。航空航天领域知名的国产操作系统翼辉操作系统和天脉操作系统都符合 ARINC653 标准。
2.异构仿真
随着系统复杂性急剧增加,IMA 系统的功能越来越多地采用软件实现。如何在有限的开发时间和成本下设计与实现高质量的综合化航空电子软件,成为国内外学术界与工业界面临的重要挑战。在此背景下,异构仿真技术作为一种有效的解决方案脱颖而出,尤其适配需要多个组件协作的 IMA 系统。
异构仿真指在一个统一的仿真环境中,集成多种不同类型的仿真模型或工具,以支持跨平台、跨系统的协同工作。在航空电子领域,异构仿真主要用于验证和测试由多个不同供应商提供的软件组件能否在 IMA 架构下协同工作,可以帮助用户在早期发现并解决集成过程中可能出现的问题,从而提高系统的整体性能和可靠性。
3.异构仿真的关键技术
3.1 模型驱动工程(MDE)
近年来,模型驱动(Model-Driven)尤其是采用形式化模型驱动的综合化航空电子软件设计与开发方法逐渐受到重视,并被工业界认为是切实可行的重要手段。2012 年发布的,国际民航领域使用的机载系统适航审定中的软件开发标准 DO-178C,就将模型驱动和形式化方法(即 DO-331 和 DO-333)作为其核心标准的重要技术补充。可点击此处了解更多关于 DO-178C 的相关信息。
模型驱动的安全关键系统设计与开发方法中,常用的建模工具有 SCADE Suite、Simulink 等;常用的建模语言有 SysML、AADL(Architecture Analysis & Design Language,AADL)等:
SCADE Suite 和 Simulink 主要用于功能模块设计和验证;
SysML 是基于 UML(Unified Modeling Language,统一建模语言)的通用系统建模语言,针对系统工程进行了扩展,适用于跨学科的系统设计;
AADL 作为一种能对嵌入式系统的软件以及硬件体系结构进行建模与分析的模型驱动语言,在 IMA 系统的模型驱动开发方法方面的应用得到了学术界与工业界的认可。
3.2 虚拟原型技术
虚拟原型(Virtual Prototyping),又称虚拟样机技术,指在真实硬件实现之前,通过高级建模语言与工具在计算机上构建系统的完整虚拟环境与模型,不仅可以用来单独测试单个组件,还可以用来评估整个系统的集成效果。
虚拟原型技术对早期验证软件组件的功能正确性和性能指标非常有用,被广泛应用于各大工业领域,包括但不限于航空航天、汽车与半导体行业。
4.基于 IMA 系统的异构仿真技术应用案例
IMA 系统通常是由几十甚至上百个不同种类的处理器(如 ARM、DSP 等)组成的大规模异构系统,如果采用全物理仿真,单单是这些目标板就需要占据好几个试验台,不仅资源配置存在限制,连线太多也容易混乱;但若使用 SkyEye 全数字仿真,就可以完美解决这一问题。
SkyEye,中文全称天目全数字实时仿真软件,是一款国产自主可控的基于可视化建模的硬件行为级仿真平台,针对大规模的复杂系统也可以轻松构建仿真环境,将被测程序直接加载到仿真系统中,从而解决 IMA 系统硬件测试环境搭建费时费力且不易维护的问题。
SkyEye 为 IMA 系统提供多机多功能目标系统的仿真环境,采用分布式部署方式,通过多路传输数据总线把多种机载电子分系统完成交联,实现信息的测量、采集、传输、处理、监控和显示功能,并完成飞行控制、发动机控制、导航、性能管理等任务。
▲SkyEye 大规模航电系统仿真案例
大规模的异构系统的测试,难度在于环境构建,一是数量众多,二是关系复杂,构建物理环境时难免出错。SkyEye 提供的全数字实时仿真环境,在几个甚至 1 个 PC 机上就可以把庞大的 IMA 系统环境构建起来,对复杂系统测试验证来说无疑是更好的解决方案。
原文链接:https://mp.weixin.qq.com/s/LFsrqJKHH50K9_aZBz6KfQ
版权声明: 本文为 InfoQ 作者【DevOps和数字孪生】的原创文章。
原文链接:【http://xie.infoq.cn/article/e56b4a9a33899480055678357】。文章转载请联系作者。
评论