3. 异常与故障的基本概念

在航电计算平台的诊断与恢复体系中,最先需要厘清的不是“怎么修”,而是“到底发生了什么”。工程现场经常出现这样的对话:某任务计算机“报异常了”,但排查后发现只是单次总线校验错误;另一次“只是有点卡”,最终却定位为电源模块永久性失效。若把异常、故障、失效、错误混为一谈,诊断就会失去方向,恢复策略也无从选择。本节围绕四个基本概念及其关系、瞬态与永久故障的区分、故障传播模型,以及航电计算平台的异常分类展开。

一、异常、错误、故障、失效:四个概念的关系

这四个词描述的是同一事件链上不同阶段、不同视角的状态,而不是同义词。

  • 异常(Anomaly):系统行为偏离预期的最早可观测迹象。它强调“被观察到的不正常”,例如某周期任务执行时间从 8 ms 突增到 22 ms、某通道 CRC 校验失败、某传感器读数跳变。异常是诊断的入口,但异常本身不一定意味着硬件损坏。
  • 错误(Error):系统内部状态与正确状态之间的偏差,是异常的成因或内在表现。例如寄存器某位因单粒子翻转由 0 变为 1、内存中某数据字被写错、任务控制块中的优先级字段被破坏。错误是“状态层面的不正确”。
  • 故障(Fault):导致错误产生的物理或逻辑缺陷。它可能是硬件缺陷(焊点开裂、电容老化)、软件缺陷(数组越界、竞态条件)、环境干扰(电磁脉冲、温度超限)或设计缺陷。故障是“原因层面的缺陷”。
  • 失效(Failure):系统或部件无法继续提供规定功能,是错误未被及时处理而累积、扩散后的最终结果。例如任务计算机停止输出导航解算结果、显示控制单元黑屏、总线通信完全中断。

它们的关系可以概括为一条因果链:故障 → 错误 → 异常(可观测)→ 若未处理则演化为失效。需要特别强调的是,这条链并非必然单向推进:一个故障可能产生多个错误,一个错误可能被多种异常观测到,而有效的容错机制可以在“错误”阶段就将其屏蔽,使系统不出现异常,更不走向失效。这正是航电计算平台强调“故障遮蔽”和“错误恢复”的原因。

故障—错误—异常—失效 因果链与容错介入点 故障 Fault 物理/逻辑缺陷 焊点开裂·位翻转·越界 错误 Error 内部状态偏差 寄存器位错·数据字损坏 异常 Anomaly 可观测偏离 CRC失败·周期超时 失效 Failure 功能丧失 输出中断·黑屏 容错介入区:错误检测与恢复 ECC纠错 · 看门狗复位 · 双机比较 · 重传 成功恢复 → 阻断失效 未处理则累积扩散 关键认识:故障是原因,错误是状态,异常是观测,失效是结果;容错的目标是在错误阶段完成检测与恢复。 一个故障可产生多个错误,一个错误可被多种异常观测到,恢复成功即可切断因果链。

二、瞬态故障与永久故障

按持续时间与可重复性,故障首先分为瞬态故障与永久故障,二者的诊断与恢复策略截然不同。

瞬态故障(Transient Fault)持续时间短、可自行消失,通常由环境干扰引起,如宇宙射线导致的单粒子翻转(SEU)、电源纹波引起的瞬时逻辑误判、电磁干扰造成的总线误码。其典型特征是:复位或重读后现象消失,同一位置难以复现。航电平台对瞬态故障的主要手段是检测加恢复,例如 ECC 纠正单比特错误、CRC 校验失败后重传、看门狗超时后任务重启。

永久故障(Permanent Fault)持续存在且可稳定复现,源于硬件损坏或软件缺陷,如存储器单元击穿、总线驱动器失效、软件数组越界。其典型特征是:每次运行到同一条件必然出现,重启无法消除。对永久故障,恢复策略必须转向重构与降级,例如切换到备份通道、隔离故障模块、启用简化功能模式。

介于两者之间还有间歇故障(Intermittent Fault),它由接触不良、温度漂移、焊点微裂等引起,表现为时好时坏、难以稳定复现,是航电维护中最棘手的一类。工程上常通过“故障计数器 + 时间窗”来区分:若同一位置在 10 分钟内累计 3 次以上错误,即使每次都能恢复,也应升级为疑似永久故障并安排检查。

特征维度瞬态故障间歇故障永久故障
持续时间极短,微秒至毫秒级断续出现持续存在
可复现性难以复现条件相关,偶发稳定复现
典型成因辐射、干扰、纹波接触不良、温漂器件损坏、软件缺陷
恢复手段纠错、重传、重启监测计数、预防更换切换、隔离、降级
示例参数单比特SEU,1次/千小时10分钟内3次错误每次上电必现

三、故障传播模型

故障不会静止在原点,它会沿系统的结构关系与数据关系向外扩散。理解传播路径,才能在正确的位置设置检测点和隔离点。航电计算平台中常见的传播模型包含三种基本形态。

1. 层级传播。故障从底层元件向上层功能逐级放大。例如某存储单元出现永久故障,导致该地址数据错误,进而使使用该数据的任务计算出错,最终使整个导航功能失效。层级传播的特点是“下层小故障、上层大后果”,因此检测点应尽量靠近底层。

2. 横向传播。故障通过共享资源扩散到并行模块。例如一条 ARINC 429 总线上的发送端故障,会污染总线上所有接收该消息的节点;一个共享电源模块的过压,会同时影响挂接其上的多块板卡。横向传播的隔离手段是资源分区与通道冗余。

3. 反馈传播。闭环控制系统中,故障经反馈回路反复放大。例如传感器零点漂移使控制输出偏移,偏移又通过执行机构影响被控对象,被控对象状态再反馈回传感器,形成持续偏差甚至振荡。此类传播需要结合模型残差检测来识别。

工程上常用“故障—错误—异常”传播图来标注每个节点的检测覆盖率与恢复时间。一个实用的判断依据是:若某故障从发生到演化为失效的时间(FTTI,故障容忍时间间隔)小于系统检测加恢复所需时间,则该路径不可接受,必须增加检测点或缩短恢复时间。

四、航电计算平台的异常分类

结合航电计算平台的实际组成,可将异常按来源与表现分为以下类别,便于诊断时快速定位。

  • 计算类异常:任务超时、CPU 占用率持续超限、除零、栈溢出、指令异常。典型观测是周期任务执行时间超出预算,例如预算 10 ms 而实测 18 ms。
  • 存储类异常:单比特/多比特错误、地址越界、存储器读写失败。可通过 ECC 状态寄存器和内存自检记录观测。
  • 总线通信类异常:CRC 错误、超时无响应、消息丢失、总线负载异常升高。例如某 429 通道 1 秒内出现 5 次校验失败。
  • 电源与时钟类异常:电压跌落、纹波超限、时钟失锁、频率漂移。此类异常常是其他异常的根因,应优先排查。
  • 软件类异常:死锁、优先级反转、内存泄漏、状态机卡死。表现为功能间歇性无响应但硬件自检正常。
  • 环境与接口类异常:温度超限、振动导致的接触不良、离散量输入抖动。
诊断顺序建议:先看电源与时钟是否正常,再看总线通信是否稳定,然后检查存储 ECC 记录,最后分析任务调度与软件状态。因为电源和时钟异常会伪装成计算类或通信类异常,若顺序颠倒容易误判。