多核处理器在商业 ARINC 653 实现中的应用更新
多核处理器因其尺寸、重量和功耗(SWaP)特性,在航空电子系统中具有极高的吸引力。然而,在多核平台上实现解决方案面临着与单核或离散多处理器实现不同的实施和认证障碍。本文介绍了 Wind River 在为多核平台实现 COTS ARINC 653 解决方案方面的工作,并为开发人员提供了从硬件和软件角度必须解决的问题的指导,以了解多核解决方案的潜在优势和认证限制。
多核认证的挑战
多核处理器(MCP)架构的引入为企业通用应用提供了性能提升,但也为安全关键航空电子系统的使用带来了一些独特的挑战。这是因为航空电子应用具有特定的要求,包括(但不限于)应用隔离和确定性,而这些并不是半导体制造商在为商业市场设计 MCP 时的主要考虑因素。
航空电子行业、学术界和认证机构已经开展了研究项目,研究 MCP 架构在航空电子应用中的应用。一些研究人员发现,由于架构设计特性对应用隔离和确定性的影响,不同 MCP 设计在适用于航空电子应用方面存在差异。这些与设备上共享资源产生的因素有关,包括使用单个内存控制器或由多个核心使用的共享总线(提供资源争用的风险),以及每个核心使用单独或共享的二级缓存,如图 1 所示。
EASA 和 FAA 尚未发布关于多核认证的正式政策/指南,这对航空电子项目构成了挑战。然而,EASA 发布了 MULCORS 研究报告,并发布了 CAST-32 立场文件,以及更近期的 CAST-32A 文件,这些文件应在规划安全关键多核航空电子项目时予以考虑,以降低认证风险。
ARINC 653 在多核处理器架构上的认证
ARINC 653 是航空电子软件架构的领先行业标准,ARINC 653 基于系统已广泛部署在民用和军用飞机中。ARINC 653P1-3 在 2010 年发布时没有解决 ARINC 653 在多核处理器航空电子系统中的应用问题。然而,由于对支持多核的需求强烈,AEEC APEX 分委会着手更新 ARINC 653P1-3 以支持 MCP。这项行业工作涉及 Tier-1 供应商、系统集成商和 COTS 软件供应商,包括 Wind River 的积极参与和贡献。标准的演变导致了 2015 年发布 ARINC 653 Part 1 Supplement 4 (ARINC653P1-4),以支持 MCP,并包含一项重要规定,即(第 5 页)在单核处理器上开发的 ARINC 653 应用,应在 ARINC 653P1-4 的多核平台上以相同的行为在单核上运行。这保留了先前开发的 ARINC 653 应用的投资,当迁移到多核平台时。
VxWorks 653 多核版 RTOS 的高层次目标是为不同 DAL(开发保证级别)上的多个应用程序在多核架构上支持安全认证,包括 DAL A。这些目标通过使用敏捷开发过程与 DO-178C 流程相结合的产品要求、设计实现和认证策略来实现。这使产品定义能够演变,并跟踪 ARINC 653P1-4 标准的增强功能。
VxWorks 653 多核版 RTOS 的设计考虑因素包括:
- 虚拟机监控程序和硬件虚拟化支持:利用处理器上的完整硬件虚拟化功能来运行多个虚拟机,每个虚拟机包含未修改的 гост操作系统(GOS)和应用程序。
- 两级操作系统调度器:使用分区操作系统(POS)执行上下文(ARINC 653 进程、POSIX 线程或 VxWorks 653 任务)的调度,而无需执行进入 MOS 和相关处理器上下文切换的开销。
- 多核通信:维护 ARINC 653 端口的本地透明度,并将 APEX 端口映射到 MOS 中的安全 IPC 传输机制。
- 故障隔离和包含:利用 QorIQ T2080 处理器上的完整硬件虚拟化功能来验证 DMA 传输是否仅使用该分区有效的源和目标地址范围。
- 系统配置和 DO-297 基于角色的开发:使用 XML 配置和独立构建链接和加载(IBLL)过程来配置和初始化 IMA 平台。
- DO-178C DAL A 认证策略:在 QorIQ T2080 上为 VxWorks 653 多核版制定 DO-178C DAL A 认证策略,参考 FAA CAST-32 文件中关于 MCP 确定性、MCP 软件和 MCP 错误处理的目标。
未来挑战
ARINC 653P1-4 目前不支持多核分区,但它表明该标准在未来的更新中可能会支持多核分区。这将使计算密集型应用程序能够托管在 ARINC653 系统上,从而实现航空电子 LRU 进一步整合到 IMA 通用计算平台。ARINC 653 对多核分区的支持也可能增加使用许多核处理器(如 MPAA® 和 Tilera(现已成为 Mellanox 的一部分))在 IMA 应用中的可能性。
结论
航空电子市场目前正在从单核架构过渡到 MCP 架构,这是对系统功能需求的更大以及半导体产品生命周期主要针对更大的商业市场细分的需求推动的。半导体制造商的进步现在为航空电子应用提供了比过去更广泛的可行处理器选择。
虽然目前对单个航空航天应用用例的最佳处理器选择尚存在一些不确定性,但早期采用者在多核项目上获得的积极经验可能会导致一个良性循环,进一步促进采用和成功,类似于过去几十年产生的单核航空电子项目所形成的丰富的 COTS 航空电子认证解决方案供应商生态系统。ARINC 653 标准的演变以支持 MCP 架构,以及 COTS RTOS 供应商提供的 ARINC 653 多核软件支持,将能够将先前开发的 ARINC 653 应用重新托管在 MCP IMA 平台上,促进软件重用并保留投资。在多核项目上进行 DO-178C 认证的经验应该能够进一步促进和普及到其他 MCP 架构。