Transient Fault Detection and Recovery Mechanisms in μC/OS-II

  • Chengrui He
  • Li Zhang
  • Gang Wang
  • Ziqi Zhen
  • Lei WangEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11293)


In avionics, satellites are widely used in meteorology, navigation and investigation. Satellites in space, however, are subject to radiation that causes transient fault. This often leads to single event upset on the logic state of device, undermining the stability and the correctness of the system. For example, transient fault can cause errors in the program execution flow, changing the state of or even crashing the system. In order to solve these problems, this paper puts forward a coarse-grained error detection scheme based on function-call relationships. We instrument signature codes at function entry and exit points at compile time to perform dynamic detection at runtime. We apply this method in the μC/OS-II kernel on a DSP platform. The coarse-grained error detection technology can reduce storage overhead effectively compared with basic block-based detection technology. For the moment, this method could be used in imbedded operating systems μC/OS-II, and it can simulate a program flow error caused by transient fault with the method of fault injection. With this method, it can help to detect the occurrence of an error and guarantee the normal running of the system using recovery mechanism. Finally, the result shows that technology of transient fault detection which is based on function call relationship could detect errors effectively, which guarantees the reliability and security of the running system.


Transient fault Static instrumentation μC/OS-II 



This work was supported by National Natural Science Foundation of China (No. 61672073 and 61272167).


  1. 1.
    James, B.F., Norton, O.W., Alexander, M.B.: The natural space environment: effects on spacecraft. NASA STI/Recon, Technical report N 95 (1994)Google Scholar
  2. 2.
    Boudjemai, A., Hocine, R., Guerionne, S.: Space environment effect on earth observation satellite instruments. In: International Conference on Recent Advances in Space Technologies, pp. 627–634. IEEE (2015)Google Scholar
  3. 3.
    Amrbar, M., Irom, F., Guertin, S.M., et al.: Heavy ion single event effects measurements of Xilinx Zynq-7000 FPGA. In: Radiation Effects Data Workshop, pp. 1–4. IEEE (2015)Google Scholar
  4. 4.
    Mccollum, M., James, B., Herr, J.: Operating in the space environment - a spacecraft charging study of the advanced X-ray astrophysics facility-spectroscopy. AIAA SPACE Forum (1994).
  5. 5.
    Kimoto, Y., Yano, K., Ishizawa, J., et al.: Passive space-environment-effect measurement on the international space station. J. Spacecraft Rockets 46(1), 22–27 (2015)CrossRefGoogle Scholar
  6. 6.
    Ciani, L., Catelani, M.: A fault tolerant architecture to avoid the effects of Single Event Upset (SEU) in avionics applications. Measurement 54(6), 256–263 (2014)CrossRefGoogle Scholar
  7. 7.
    Hari, S.K.S., Adve, S.V., Naeimi, H., et al.: Relyzer: exploiting application-level fault equivalence to analyze application resiliency to transient faults. Comput. Archit. News 40(1), 123 (2015)CrossRefGoogle Scholar
  8. 8.
    Nazarian, G., Rodrigues, D.G., Moreira, A., et al.: Bit-flip aware control-flow error detection. In: Euromicro International Conference on Parallel, Distributed and Network-Based Processing, pp. 215–221. IEEE (2015)Google Scholar
  9. 9.
    Jimenez, R.: Effects of natural environment charged particle heating on the design and performance of spacecraft cryogenic components. In: AIAA, 24th Thermophysics Conference (2013)Google Scholar
  10. 10.
    Nazarian, G., Nane, R., Gaydadjiev, G.N.: Low-cost software control-flow error recovery. In: Digital System Design, pp. 510–517. IEEE (2015)Google Scholar
  11. 11.
    Rhisheekesan, A.: Quantitative evaluation of control flow based soft error protection mechanisms. Dissertations & theses - Gradworks (2013)Google Scholar
  12. 12.
    Wolf, J., Fechner, B., Uhrig, S., et al.: Fine-grained timing and control flow error checking for hard real-time task execution. In: IEEE ISIE, pp. 257–266. IEEE (2012)Google Scholar
  13. 13.
    Ge, X., Talele, N., Payer, M., et al.: Fine-grained control-flow integrity for kernel software. In: IEEE European Symposium on Security and Privacy, pp. 179–194. IEEE (2016)Google Scholar
  14. 14.
    Oh, N., Shirvani, P.P., Mccluskey, E.J.: Control-flow checking by software signatures. IEEE Trans. Reliab. 51(1), 111–122 (2002)CrossRefGoogle Scholar
  15. 15.
    Borin, E., Wang, C., Wu, Y., et al.: Software-based transparent and comprehensive control-flow error detection. In: International Symposium on Code Generation and Optimization, pp. 333–345. IEEE (2006)Google Scholar
  16. 16.
    Troiano, A., Corinto, F., Pasero, E.: A memristor circuit using basic elements with memory capability. In: Bassis, S., Esposito, A., Morabito, F.C. (eds.) Recent Advances of Neural Network Models and Applications. SIST, vol. 26, pp. 117–124. Springer, Cham (2014). Scholar
  17. 17.
    Lin, C.M., Dow, C.R.: Efficient checkpoint-based failure recovery techniques in mobile computing systems. J. Inf. Sci. Eng. 17(4), 549–573 (2011)Google Scholar
  18. 18.
    Wang, R., Li, Z.H.: A multiprocessor RTOS design of uC/OS. In: Advanced Materials Research, vol. 756, pp. 814–819. Trans Tech Publications (2013)Google Scholar
  19. 19.
    Mutuel, L.H.: Appreciating the effectiveness of single event effect mitigation techniques. In: Digital Avionics Systems Conference, pp. 5B1-1–5B1-11. IEEE (2014)Google Scholar
  20. 20.
    Beenamole, K.S.: Understanding single-event effects in FPGA for avionic system design. IETE Tech. Rev. 30(6), 497–505 (2013)CrossRefGoogle Scholar
  21. 21.
    Ferlet-Cavrois, V., et al.: Single event transients in digital CMOS—a review. IEEE Trans. Nuclear Sci. 60(3), 1767–1790 (2013)CrossRefGoogle Scholar
  22. 22.
    Hands, A., Fan, L., Ryden, K., et al.: New data and modelling for single event effects in the stratospheric radiation environment. IEEE Trans. Nucl. Sci. 64(1), 587–595 (2017)CrossRefGoogle Scholar
  23. 23.
    Hayes, J.P., Polian, I., Becker, B.: An analysis framework for transient-error tolerance. In: IEEE VLSI Test Symposium, pp. 249–255. IEEE Computer Society (2007)Google Scholar
  24. 24.
    Rohani, A., Kerkhoff, H.G., Costenaro, E., et al.: Pulse-length determination techniques in the rectangular single event transient fault model. In: ICEC: Architectures, Modeling, and Simulation, pp. 213–218 (2015)Google Scholar
  25. 25.
    Mahmood, A., Mccluskey, E.J.: Concurrent error detection using watchdog processors-a survey. IEEE Trans. Comput. 37(2), 160–174 (1988)CrossRefGoogle Scholar
  26. 26.
    Chitsaz, B., Kirovski, D.: Watchdog processors in multicore systems: US, US7958396 (2011)Google Scholar
  27. 27.
    Zarandi, H.R., Miremadi, S.G., Argyrides, C., et al.: Fast SEU detection and correction in LUT configuration bits of SRAM-based FPGAs. In: IEEE IPDPS, pp. 1–6 (2007)Google Scholar
  28. 28.
    Nidhin, T.S., Bhattacharyya, A., Behera, R.P., et al.: SEU mitigation by golay code in the configuration memory of SRAM based FPGAs. In: ICCICCT. IEEE (2017)Google Scholar
  29. 29.
    Yin, P.Y., Chen, Y.H., Lu, C.W., et al.: A multi-stage fault-tolerant multiplier with triple module redundancy (TMR) technique. J. Circuits Syst. Comput. 23(05), 725–735 (2013)Google Scholar
  30. 30.
    Almukhaizim, S., Sinanoglu, O.: A hazard-free majority voter for TMR-based fault tolerance in asynchronous circuits. In: International Design and Test Workshop, IDT 2007, pp. 93–98. IEEE (2008)Google Scholar
  31. 31.
    Mahatme, N.N., Chatterjee, I., Patki, A., et al.: An efficient technique to select logic nodes for single event transient pulse-width reduction. Microelectron. Reliab. 53(1), 114–117 (2013)CrossRefGoogle Scholar
  32. 32.
    Munk, P., et al.: A software fault-tolerance mechanism for real-time applications on many-core processors. In: The Workshop on Highly-Reliable Power-Efficient Embedded Designs (2016)Google Scholar
  33. 33.
    Zhu, X., Qin, X., Qiu, M.: QoS-aware fault-tolerant scheduling for real-time tasks on heterogeneous clusters. IEEE Trans. Comput. 60(6), 800–812 (2011)MathSciNetCrossRefGoogle Scholar
  34. 34.
    Alkhalifa, Z., Nair, V.S.S., et al.: Design and evaluation of system-level checks for on-line control flow error detection. IEEE Trans. Parallel Distrib. Syst. 10(6), 627–641 (1999)CrossRefGoogle Scholar
  35. 35.
    Jafari-Nodoushan, M., Miremadi, S.G., Ejlali, A.: Control-flow checking using branch instructions. In: IEEE/IFIP International Conference on Embedded and Ubiquitous Computing, pp. 66–72. IEEE (2009)Google Scholar
  36. 36.
    Ju, X., Zhang, H., Wang, A.: Error detection by software signatures based on control flow graph. In: International Conference on Future Computer and Information Technology, pp. 51–63 (2013)Google Scholar
  37. 37.
    Asghari, S.A., Taheri, H., et al.: Software-based control flow checking against transient faults in industrial environments. IEEE Trans. Industr. Inf. 10(1), 481–490 (2013)CrossRefGoogle Scholar

Copyright information

© Springer Nature Switzerland AG 2018

Authors and Affiliations

  • Chengrui He
    • 1
  • Li Zhang
    • 1
  • Gang Wang
    • 2
  • Ziqi Zhen
    • 2
  • Lei Wang
    • 2
    Email author
  1. 1.School of SoftwareBeihang UniversityBeijingChina
  2. 2.School of Computer Science and EngineeringBeihang UniversityBeijingChina

Personalised recommendations