2. 航电实时计算平台架构与测试对象

航电实时计算平台是综合模块化航电(IMA)系统的“计算底座”,它把过去分散在多个外场可更换单元中的计算、通信与I/O功能,收敛到少数几个通用处理模块上,再通过分区操作系统把资源按需切分给不同功能。理解这一平台,关键不是记住某个型号的硬件清单,而是看清“硬件资源—操作系统—分区应用”三层之间的映射关系,以及时间隔离与空间隔离分别在哪一层生效。测试与验证的对象,正是这些映射关系和隔离边界是否真实成立。

典型平台组成

一个典型的航电实时计算平台通常由以下几类部件构成:通用处理模块(CPM)或核心处理模块,承担应用计算与分区调度;电源模块,提供多路受控直流供电与掉电保持;I/O模块,完成ARINC 429、离散量、模拟量、CAN、以太网等信号采集与输出;存储模块,用于程序加载、数据记录与配置存储;背板与机箱,提供模块间高速互连、供电分配与散热通道;以及网络交换单元,构成航电全双工交换以太网(AFDX)或时间触发以太网(TTE)的通信骨干。这些模块通过背板总线或高速串行链路互连,形成“计算—通信—I/O”三条并行的资源通道。

处理器与总线

处理器层面,航电平台常见的选择包括PowerPC系列(如MPC7448、T2080)、ARM Cortex-A/R系列以及部分x86架构。选型关注点并非峰值算力,而是确定性:中断延迟、缓存行为、内存访问时序是否可预测。例如某型平台采用双核PowerPC,主频1.2 GHz,L2缓存512 KB,通过关闭动态调频、锁定缓存分区来保证最坏执行时间(WCET)可分析。

总线层面需要区分“模块内”和“模块间”。模块内以本地总线连接处理器、内存与桥接芯片;模块间则依赖背板总线(如PCIe、SRIO、VPX)和外部通信总线(ARINC 429、AFDX、MIL-STD-1553B)。AFDX以虚拟链路(VL)为单位提供带宽与延迟保障,每条VL有独立的BAG(带宽分配间隔)和Lmax(最大帧长),这是测试中必须核对的参数。下表给出一个示例性的总线参数对照,用于说明测试关注点的差异。

总线类型典型速率确定性机制测试关注点
ARINC 42912.5/100 kbps固定帧格式、单向广播标签、SDI、SSM、奇偶校验
MIL-STD-1553B1 Mbps命令/响应、总线控制器调度响应时间、消息完整性、RT地址
AFDX100 Mbps虚拟链路、BAG、LmaxVL带宽、抖动、冗余网络切换
PCIe/SRIOGbps级链路层重传、流控吞吐、延迟、错误注入恢复

分区操作系统与隔离机制

分区操作系统(如ARINC 653规范定义的APEX接口)把每个应用封装为独立分区,分区之间不能直接访问彼此的内存,也不能随意占用CPU。空间隔离依靠MMU/MPU为每个分区建立独立的地址空间,分区内访问越界会触发内存保护异常;时间隔离依靠主时间框架(Major Time Frame)内的固定时间窗口调度,每个分区在属于自己的窗口内运行,窗口结束即被强制切换。这种“时间+空间”双重隔离,使得一个分区的故障不会直接扩散到其他分区。

下图给出一个典型的分区调度与资源映射关系,左侧是主时间框架内的分区窗口序列,右侧是分区到处理器、内存与总线的资源映射,以及隔离边界的生效位置。

分区操作系统时间/空间隔离与资源映射 主时间框架(Major Time Frame) 分区A 窗口 分区B 窗口 分区C 窗口 分区D 窗口 系统空闲 0 ms 20 ms 40 ms 60 ms 分区 → 资源映射 分区A CPU核0 / 内存0x1000_0000 分区B CPU核1 / 内存0x2000_0000 分区C CPU核0 / 内存0x3000_0000 分区D CPU核1 / 内存0x4000_0000 隔离边界生效位置 空间隔离 MMU/MPU 地址空间保护 时间隔离 主时间框架窗口调度 通信隔离 VL/端口 带宽与队列约束 测试关注点:窗口超时、地址越界、VL带宽超限、分区重启后资源回收是否完整 示例参数:主时间框架 60 ms,分区窗口 15 ms,分区周期 60 ms

测试关注点

针对上述架构,测试对象可以归纳为四类。第一类是分区调度正确性:验证每个分区是否在预定窗口内启动、窗口是否被超时抢占、分区周期是否与配置一致。例如配置主时间框架60 ms、分区A窗口15 ms,测试时用高精度计时器记录分区入口与出口时间戳,若某次分区A实际运行超过15 ms,应观察到调度器强制切换并记录超时事件。

第二类是空间隔离有效性:向分区A写入其地址空间之外的地址,检查是否触发内存保护异常且不影响分区B运行。测试中可故意在分区A内执行越界写,观察系统日志是否记录“memory protection fault”,并确认分区B的周期任务未出现丢帧。

第三类是通信隔离与带宽约束:核对每条VL的BAG与Lmax配置,注入超限流量,验证AFDX交换单元是否按配置丢弃或整形,以及冗余网络切换时间是否满足要求。例如某VL配置BAG为8 ms、Lmax为512字节,注入1.5倍流量后应观察到超限帧被丢弃,而正常帧的抖动仍保持在允许范围内。

第四类是故障隔离与恢复:模拟分区A崩溃或重启,检查分区B、C、D是否继续正常运行,以及分区A重启后其内存、端口、时间窗口是否被正确回收和重新分配。这一项往往最能暴露分区操作系统在资源管理上的缺陷。

测试前应先取得平台的分区配置表(分区名、周期、窗口长度、内存基址与长度、VL号与BAG),测试用例与判据都应直接引用这些配置值,而不是凭经验估计。配置表本身就是测试的“基准输入”。