2. 航空嵌入式软件接口标准体系
航空电子系统从诞生起就面临一个根本矛盾:机载设备由不同厂商研制,却必须在同一架飞机上协同工作。接口标准正是解决这一矛盾的“共同语言”。本节聚焦 ARINC 429、ARINC 653、AFDX、CAN、MIL-STD-1553B 五类典型接口协议,说明它们在航电系统中的角色定位,以及一致性要求的来源——即“凭什么判定一个接口实现是合格的”。
一、五类接口协议的角色定位
这五类协议并非同一层面的竞争关系,而是分别处于不同的抽象层次和适用场景。
ARINC 429 是典型的点对点单向总线,采用双绞屏蔽线,差分信号传输,速率分为低速 12.5 kbps 和高速 100 kbps 两档。一个发送端口只能连接一个接收端口(一发多收需通过多路分配),32 位字格式固定:标签(Label,8 位)、源/目的标识(SDI,2 位)、数据(19 位)、符号/状态矩阵(SSM,2 位)、奇偶校验(P,1 位)。它广泛用于传输大气数据、惯导、无线电高度等周期性参数,角色是“低速、确定、可靠的单向数据管道”。
ARINC 653 不是总线协议,而是航空电子综合模块化(IMA)中的分区操作系统接口标准。它规定时间分区与空间分区的调度模型、APEX 应用接口、健康监控机制。其角色是“在共享硬件上隔离多个应用,保证时间与空间资源不被越界侵占”。一致性要求来自分区调度周期、窗口分配、端口通信语义等。
AFDX(ARINC 664 Part 7)是基于以太网的确定性网络,采用虚拟链路(VL)、带宽分配间隔(BAG)、最大帧长等参数实现确定性传输。它角色是“高带宽、可配置、支持多播的机载主干网络”,用于连接飞行管理、显示、飞控等较大数据量系统。
CAN 总线采用多主竞争、非破坏性仲裁、短帧结构,常见于发动机监控、起落架、舱门等机电系统。角色是“低成本、中等速率、事件与周期混合的分布式控制总线”。
MIL-STD-1553B 是军用航空广泛使用的命令/响应式多路复用总线,采用双冗余总线、曼彻斯特编码、1 Mbps 速率,由总线控制器(BC)统一调度。角色是“高可靠、强实时、集中控制的指令与状态总线”。
二、一致性要求的来源:从标准文本到可验证条款
“一致性”不是主观判断,而是有明确来源的。对上述协议,一致性要求主要来自四个层面。
第一层:协议标准文本本身。例如 ARINC 429 规定 32 位字的位序、标签编码、SSM 取值含义、奇偶校验规则;ARINC 653 规定分区调度表、APEX 服务调用语义、健康监控等级;AFDX 规定 VL 标识、BAG 取值集合、完整性检查与冗余管理规则;CAN 规定帧格式、仲裁场、CRC 多项式;1553B 规定命令字、状态字、数据字的位定义与响应时限。这些是“硬性条款”,测试用例必须逐条覆盖。
第二层:系统级接口控制文件(ICD)。标准只规定“怎么传”,ICD 规定“传什么”。例如某型大气数据计算机通过 ARINC 429 发送 12 个标签,每个标签的更新率、数据范围、SSM 编码、无效值处理方式,都写在 ICD 中。一致性测试必须同时对照标准与 ICD,缺一不可。
第三层:适航审定要求。DO-178C 对软件生命周期过程提出目标,DO-254 对复杂电子硬件提出要求,DO-297 针对 IMA 提出任务与模块级要求。这些文件不直接规定接口电气参数,但要求“接口行为必须被验证并留下证据”。因此一致性测试的过程本身也要符合适航对验证活动的要求。
第四层:系统集成与安全需求。例如 AFDX 网络中某条 VL 的 BAG 若配置为 8 ms,而实际发送间隔抖动超过允许范围,可能导致接收端缓冲区溢出;1553B 中 BC 对 RT 的响应超时若超过 14 μs,会被判定为无响应。这些来自系统设计约束的要求,往往比标准文本更严格,也是集成阶段最容易暴露问题的环节。
三、实际一致性测试中如何落地
以 ARINC 429 为例,一次典型的一致性测试需要覆盖以下可操作项:
- 电气层:用示波器测量差分电压幅值(A-B 应在 5~11 V 之间)、上升/下降时间、共模电压范围。
- 字格式层:用总线分析仪捕获 32 位字,检查标签位序、SDI 取值、数据位对齐、SSM 编码是否符合 ICD,奇偶校验是否为奇校验。
- 时序层:测量同一标签的更新周期,例如 ICD 要求 50 ms ± 10%,实测若为 62 ms 则判定不一致。
- 异常层:注入奇偶错误、标签错误、更新超时,观察接收端是否按 ICD 规定置无效或保持上一有效值。
对于 ARINC 653,一致性测试则转向分区调度:构造两个分区,周期分别为 20 ms 和 40 ms,检查调度表是否按配置执行、分区窗口是否被侵占、分区内 APEX 端口通信是否满足采样/队列模式语义。对于 AFDX,重点在 VL 配置一致性:BAG、最大帧长、冗余路径、完整性检查序列(ICS)是否正确,以及网络在一条链路故障时是否按冗余管理规则切换。对于 CAN,重点在仲裁优先级、错误帧处理、总线关闭恢复行为。对于 1553B,重点在命令字/状态字格式、响应时间、双冗余切换、模式代码响应。
四、五类协议一致性要求的对比视角
| 协议 | 核心一致性对象 | 典型判据示例 | 主要来源文件 |
|---|---|---|---|
| ARINC 429 | 32位字格式、更新率、SSM、奇偶校验 | 标签更新周期 50 ms ± 10%;差分幅值 5~11 V | ARINC 429 标准 + ICD |
| ARINC 653 | 分区调度窗口、APEX 服务语义、健康监控 | 分区窗口偏差 ≤ 1%;端口采样/队列模式行为正确 | ARINC 653 Part 1/2 + DO-297 |
| AFDX | VL 参数、BAG、冗余管理、ICS | BAG 抖动在允许范围;单链路故障后切换正确 | ARINC 664 Part 7 + 网络 ICD |
| CAN | 帧格式、仲裁、错误处理、总线关闭恢复 | 错误帧格式正确;总线关闭后恢复时间符合要求 | ISO 11898 + 系统 ICD |
| MIL-STD-1553B | 命令/状态字、响应时间、双冗余、模式代码 | RT 响应时间 ≤ 14 μs;冗余总线切换正确 | MIL-STD-1553B + 系统 ICD |
理解这张对比表的关键在于:不同协议的一致性“抓手”不同。ARINC 429 抓字格式和更新率,ARINC 653 抓分区调度和接口语义,AFDX 抓虚拟链路参数和冗余,CAN 抓仲裁和错误恢复,1553B 抓命令响应和冗余切换。测试方案必须针对各自抓手设计,不能套用同一套模板。
五、从标准体系到测试用例的映射方法
实际工程中,建议按以下路径建立映射:先从 ICD 中提取每一条接口数据定义,标注其协议类型、方向、更新率、数据范围、无效值策略;再对照对应协议标准,找出该数据涉及的格式条款、时序条款、异常处理条款;最后为每一条款设计至少一个正向用例和一个异常用例。例如某 ARINC 429 标签要求“数据无效时 SSM = 11”,则正向用例验证有效数据时 SSM 正确,异常用例注入无效数据并检查 SSM 是否置 11。这样形成的测试用例集,既覆盖标准条款,又覆盖系统实际使用场景,也满足适航对验证证据的要求。
本节的核心结论是:五类接口协议在航电系统中各司其职,一致性要求并非凭空产生,而是来自标准文本、ICD、适航要求和系统安全约束四个层面的叠加。测试人员必须清楚每个协议的“一致性抓手”在哪里,才能设计出有依据、可判定、可追溯的测试用例。