4. 故障检测与容错设计指标

在星载处理器的故障检测与容错设计中,可靠性、可用性、可维护性和安全性并不是四个并列的口号,而是四类彼此约束、需要被量化验证的工程指标。它们共同回答一个核心问题:在辐射、单粒子翻转、温度循环和器件老化等空间环境应力下,处理器能否在任务周期内持续提供正确服务,并在出现故障时以可接受的时间与代价恢复。理解这些指标的定义、量化方法和相互制约关系,是后续容错架构选型、冗余粒度确定和验证方案设计的前提。

一、四个指标的定义与工程含义

可靠性(Reliability)指系统在规定条件和规定时间内完成规定功能的概率,通常记为 R(t)。对星载处理器而言,“规定条件”包括轨道辐射环境、工作温度范围和供电条件;“规定功能”则要明确到指令执行正确率、数据通路完整性或特定任务的成功率。可靠性强调“在时间 t 之前不出故障”,是一个随时间单调下降的概率量。

可用性(Availability)指系统在任意时刻处于可工作状态的概率,记为 A。它与可靠性的区别在于:可靠性不允许中途修复,而可用性允许故障后修复并重新投入。星载处理器常采用双机或三机冗余,单机故障后由备份接管,此时系统可用性可能远高于单机可靠性。可用性的稳态表达式为 A = MTBF / (MTBF + MTTR),其中 MTBF 为平均无故障时间,MTTR 为平均修复时间。

可维护性(Maintainability)指系统在给定条件下、在规定时间内通过规定程序完成修复的概率,常用平均修复时间 MTTR 或其分布来量化。星载场景下,MTTR 不仅包含地面维修时间,还包括故障检测时间、故障隔离时间、切换时间和恢复时间。对不可维修卫星,可维护性更多体现为“可测性”和“可重构性”,即能否快速定位故障并切换到备份通道。

安全性(Safety)指系统不发生导致人员伤亡、任务失败或不可接受损失的事故的概率。在星载处理器中,安全性关注的是故障是否会导致危险输出,例如错误控制指令、姿态失控或关键数据损坏。安全性常用安全完整性等级或危险失效率来量化,强调故障必须被检测并导向安全状态,而不是简单地“继续运行”。

二、量化方法与典型参数

可靠性量化通常采用失效率 λ 和可靠度函数。若器件失效率恒定,则 R(t) = e^(−λt)。星载处理器常以 FIT(1 FIT = 10⁻⁹ 次/小时)为单位给出单粒子翻转率。例如某处理器 SRAM 单元在特定轨道下的翻转率约为 1×10⁻⁵ 次/器件/天,若采用三模冗余加表决,则单点翻转被屏蔽,系统级翻转率可降低约两个数量级。需要说明的是,以下数值均为教学示例,用于说明计算方法,并非某型号实测结果。

可用性量化需要同时统计 MTBF 和 MTTR。假设某星载处理器单机 MTBF 为 20000 小时,故障检测与切换时间为 2 小时,则单机可用性约为 20000/(20000+2) ≈ 0.9999。若采用双机热备且切换时间缩短到 0.1 小时,系统可用性可提升到约 0.999995。可见,缩短 MTTR 对可用性的贡献与提高 MTBF 同等重要。

可维护性量化常用 MTTR 及其分解。一次完整修复可拆分为:故障检测时间 T_d、故障隔离时间 T_i、切换时间 T_s、恢复时间 T_r。即 MTTR = T_d + T_i + T_s + T_r。若 T_d=0.5 h、T_i=0.3 h、T_s=0.1 h、T_r=0.1 h,则 MTTR=1.0 h。通过内置自测试和边界扫描可将 T_d 压缩到分钟级,从而显著改善可维护性。

安全性量化常用危险失效率 λ_D 和安全完整性等级。对于星载处理器,可将故障分为安全故障、危险检测故障和危险未检测故障。安全性设计的目标是使危险未检测故障率低于任务允许阈值。例如要求危险未检测故障率小于 1×10⁻⁷ 次/小时,则必须通过双核锁步、看门狗和输出表决等手段,将未检测故障概率压低到该量级以下。

三、指标之间的权衡关系

四个指标并非独立,而是存在明显权衡。提高冗余度可提升可靠性和安全性,但会增加功耗、面积和重量,并可能延长故障检测与切换时间,从而影响可用性和可维护性。例如三模冗余表决器本身若发生故障,可能成为新的单点。因此,设计时需要在任务剖面、资源约束和风险容忍度之间寻找平衡点。下图给出四类指标在星载处理器容错设计中的量化关系与相互影响。

星载处理器容错设计四类指标量化关系 可靠性 R(t) R(t) = e^(−λt) λ:失效率(FIT) 关注:任务周期内不出故障 示例:λ=1×10⁻⁵/天 可用性 A A = MTBF/(MTBF+MTTR) MTBF:平均无故障时间 关注:任意时刻可工作概率 示例:MTBF=20000h 可维护性 MTTR MTTR = T_d+T_i+T_s+T_r 检测/隔离/切换/恢复 关注:故障后快速恢复 示例:MTTR=1.0h 安全性 λ_D 危险未检测故障率 目标:λ_D < 1×10⁻⁷/h 关注:故障导向安全状态 手段:锁步+看门狗+表决 容错设计权衡 冗余度 / 功耗 / 面积 检测时间 / 切换时间 任务剖面 / 风险容忍度 提高冗余可提升 R 与安全性,但会增加功耗并可能延长 MTTR,需综合权衡

四、面向任务的指标分配示例

假设某低轨遥感卫星处理器任务周期为 5 年,要求任务可用性不低于 0.9999,危险未检测故障率低于 1×10⁻⁷ 次/小时。设计时可先分配指标:单机可靠性 R(5年) 不低于 0.95,双机热备系统可用性不低于 0.9999,MTTR 不超过 2 小时,安全性通过双核锁步加输出表决实现。然后逐项验证:若单机 MTBF 为 20000 小时,则 5 年(43800 小时)内单机可靠度约为 e^(−43800/20000) ≈ 0.112,显然不满足 0.95,必须采用冗余或降额设计。若采用双机热备,系统可靠度可提升到约 0.99 以上,再配合定期在轨自检和故障切换,可用性可达到 0.9999 量级。

安全性验证则需要计算危险未检测故障率。假设单核危险未检测故障率为 1×10⁻⁶ 次/小时,双核锁步后若比较器能覆盖 99% 的故障,则剩余危险未检测故障率约为 1×10⁻⁸ 次/小时,满足 1×10⁻⁷ 次/小时的要求。若比较器覆盖率只有 90%,则剩余率为 1×10⁻⁷ 次/小时,处于临界状态,需要增加看门狗或输出回读来进一步提高覆盖率。

指标分配不是一次完成的,而是“分配—验证—再分配”的迭代过程。每一轮迭代都要明确当前假设、计算依据和验证手段,避免把示例参数当作实测结论。

五、量化过程中的常见误区

第一,把可靠性等同于可用性。可靠性不允许修复,可用性允许修复,二者在冗余系统中的数值可能相差很大。第二,只关注 MTBF 而忽略 MTTR。对于可维修或可重构系统,MTTR 的缩短往往比 MTBF 的提升更容易实现,对可用性贡献也更直接。第三,把安全性简单理解为“不出故障”。安全性要求故障必须被检测并导向安全状态,未检测故障才是安全性的主要威胁。第四,忽略共因故障。冗余设计若未考虑共因失效,实际可靠性和安全性会远低于理论计算值。第五,用单一数值代替分布。失效率、修复时间通常服从一定分布,仅用平均值可能掩盖长尾风险,必要时需给出置信区间或分布参数。

综上,可靠性、可用性、可维护性和安全性分别从“不出故障”“随时可用”“快速恢复”“故障安全”四个角度刻画星载处理器的容错能力。量化时需明确任务剖面、环境应力和修复策略,选择合适的数学模型,并在冗余度、功耗、面积和响应时间之间进行权衡。只有把指标定义、计算方法和验证手段统一起来,后续的故障检测机制和容错架构设计才有明确的判断依据。