Skip to main content
QUICK REVIEW

[论文解读] Preliminary Performance Estimations and Benchmark Results for a Software-based Fault-Tolerance Approach aboard Miniaturized Satellite Computers

Christian Fuchs, Todor Stefanov|arXiv (Cornell University)|Jun 7, 2017
Software Reliability and Analysis Research参考文献 1被引用 3
一句话总结

本文提出了一种基于软件的容错方法,用于微型卫星计算机,采用多阶段架构,结合线程级分布式自我验证、FPGA重配置以及现代多核SoC上的混合关键性,以实现高可靠性和可扩展性。在基于Linux的C语言实现中,该方法在最佳情况下性能下降中位数为9%,最坏情况下为26%,证明了其在无需专用硬件的前提下,适用于高性能、低成本空间任务的可行性。

ABSTRACT

Modern embedded technology is a driving factor in satellite miniaturization, contributing to a massive boom in satellite launches and a rapidly evolving new space industry. Miniaturized satellites however suffer from low reliability, as traditional hardware-based fault-tolerance (FT) concepts are ineffective for on-board computers (OBCs) utilizing modern systems-on-a-chip (SoC). Larger satellites therefore continue to rely on proven processors with large feature sizes. Software-based concepts have largely been ignored by the space industry as they were researched only in theory, and have not yet reached the level of maturity necessary for implementation. In related work, we presented the first integral, real-world solution to enable fault-tolerant general-purpose computing with modern multiprocessor-SoCs (MPSoCs) for spaceflight, thereby enabling their use in future high-priority space missions. The presented multi-stage approach consists of three FT stages, combining coarse-grained thread-level distributed self-validation, FPGA reconfiguration, and mixed criticality to assure long-term FT and excellent scalability for both resource constrained and critical high-priority space missions. As part of the ongoing implementation effort towards a hardware prototype, several software implementations were achieved and tested. This document contains an outline of the conducted tests, performance evaluation results, and supplementary information not included in the actual paper. It is being continuously expanded and updated.

研究动机与目标

  • 解决由于传统硬件容错技术与现代抗辐射敏感SoC不兼容,导致微型卫星可靠性不足的问题。
  • 为太空通用计算开发一种成熟且实用的纯软件容错解决方案,克服业界长期以来对纯软件方法的犹豫态度。
  • 通过提供可扩展、完全由软件控制的容错框架,使商用现成(COTS)MPSoC能够应用于高优先级空间任务。
  • 通过在基于Linux的原型系统上进行真实基准测试,在硬件部署前验证该方法的可行性与性能特性。

提出的方法

  • 采用三阶段容错架构,结合粗粒度线程级分布式自我验证、FPGA重配置和混合关键性,以实现长期可靠性与可扩展性。
  • 在用户空间C语言中实现第一阶段,使用POSIX线程和系统调用,在1kHz调度频率的Linux系统上模拟基于模块的执行。
  • 使用来自詹姆斯·韦伯太空望远镜MIRI仪器的真实科学应用程序进行基准测试,处理600帧100万像素数据,不同后处理运行次数。
  • 采用简单且未经优化的C语言实现,以在内核级或硬件部署前实现悲观性能估计和正确性验证。
  • 在VCU118 FPGA上设计并实现一个演示用MPSoC,采用Xilinx MicroBlaze内核、AXI互连以及片上BRAM作为程序存储器和验证存储器。
  • 通过GPIO引脚进行外部监督,并与ChipScope和MicroBlaze调试单元集成,以监控各模块间的一致性与一致性。

实验结果

研究问题

  • RQ1在卫星环境下,基于软件的容错方法在现代COTS MPSoC上实现时,是否能实现可接受的性能下降?
  • RQ2在真实嵌入式应用中,基于软件的容错栈在不同工作负载(计算密集型与数据密集型)下的性能表现如何?
  • RQ3在使用用户空间线程的Linux系统上进行的原型实现,能在多大程度上提供未来内核级或硬件级部署的可靠性能预测?
  • RQ4是否可以使用标准FPGA工具和COTS组件,实现完全由软件控制、非专有化的容错框架,而无需依赖定制的抗辐射处理器?

主要发现

  • 在Linux上使用简单C语言实现的测试显示,与未保护的参考运行相比,最佳情况下性能下降中位数为9%,最坏情况下为26%。
  • 平均而言,该方法在所有测试配置的最佳情况下达到参考性能的95%,最坏情况下达到80%。
  • 数据密集型工作负载的性能优于计算密集型工作负载,因为第一阶段的逻辑主要由函数调用、整数运算和比较构成。
  • 在内核级实现中,性能下降预期将显著改善,线程管理开销将大幅降低。
  • 即使性能下降高达50%,该方法仍能为最先进的抗辐射处理器提供5倍的性能优势。
  • 在VCU118上实现的原型MPSoC设计成功验证了核心架构,包括互连、验证内存和基于GPIO的监督机制,完整资源利用率已在补充材料中报告。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。