Model-Based Deployment of Mission-Critical Spacecraft Applications on Multicore Processors

  • J. Reinier van Kampenhout
  • Robert Hilbrich
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7896)


A variety of complex spacecraft applications, such as autonomous maneuvers based on image recognition, can benefit from the increased performance of multicore processors. On the other hand the redundant cores can also be used for fault-tolerance. Spacecraft missions more and more require a balanced trade-off between power, performance and reliability. Finding an optimal trade-off for each mission phase leads to new engineering challenges, especially regarding the efficient and safe deployment of software applications to hardware resources. We propose a model-based approach for the construction of software deployment schemes, and apply it to a spacecraft use case with two different mission phases to illustrate the benefits of such model-based software deployment.


avionics deployment multicore model-based engineering 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    ARINC. ARINC Specification 653P1-2: Avionics Application Software Standard Interface Part 1 - Required Services. Technical report, Aeronautical Radio Inc., Maryland, USA (December 2005)Google Scholar
  2. 2.
    AUTOSAR. Layered Software Architecture (November 2010),
  3. 3.
    Baro, J., Boniol, F., Cordovilla, M., Noulard, E., Pagetti, C.: Off-line (Optimal) multiprocessor scheduling of dependent periodic tasks. In: Proceedings of the 27th Annual ACM Symposium on Applied Computing, SAC 2012, pp. 1815–1820. ACM, New York (2012)CrossRefGoogle Scholar
  4. 4.
    Baruah, S., Bonifaci, V., D’Angelo, G., Li, H., Marchetti-Spaccamela, A., Megow, N., Stougie, L.: Scheduling Real-Time Mixed-Criticality Jobs. IEEE Transactions on Computers 61(8), 1140–1152 (2012)MathSciNetCrossRefGoogle Scholar
  5. 5.
    Behr, P.M., Haulsen, I., van Kampenhout, J.R., Pletner, S.: Multi-Core Technology for Fault Tolerant High-Performance Spacecraft Computer Systems. In: DASIA (2012)Google Scholar
  6. 6.
    Borkar, S.: Designing reliable systems from unreliable components: the challenges of transistor variability and degradation. IEEE Micro 25(6), 10–16 (2005)CrossRefGoogle Scholar
  7. 7.
    Brocaly, V., Masmanoy, M., Ripolly, I., Crespoy, A., Balbastrey, P., Metge, J.-J.: Xoncrete: a scheduling tool for partitioned real-time systems. In: Proceedings of the Embedded Real Time Software and Systems Conference, ERTS2 2010 (May 2010)Google Scholar
  8. 8.
    Chapman, R.: Correctness by construction: a manifesto for high integrity software. In: Proceedings of the 10th Australian Workshop on Safety Critical Systems and Software, SCS 2005, vol. 55, pp. 43–46. Australian Computer Society, Inc., Darlinghurst (2006)Google Scholar
  9. 9.
    Chou, C.-L., Marculescu, R.: User-Aware Dynamic Task Allocation in Networks-on-Chip. In: 2008 Design, Automation and Test in Europe, pp. 1232–1237. IEEE (März 2008)Google Scholar
  10. 10.
    Deng, G., Schmidt, D.C., Gokhale, A.: Addressing crosscutting deployment and configuration concerns of distributed real-time and embedded systems via aspect-oriented & model-driven software development. In: Proceedings of the 28th International Conference on Software Engineering, ICSE 2006, pp. 811–814. ACM, New York (2006)Google Scholar
  11. 11.
    Fuchsen, R.: How to address certification for multi-core based IMA platforms: Current status and potential solutions. In: 2010 IEEE/AIAA 29th Digital Avionics Systems Conference, DASC, pp. 5.E.3-1–5.E.3-11 (October 2010)Google Scholar
  12. 12.
    Gaska, T., Werner, B., Flagg, D.: Applying virtualization to avionics systems – The integration challenges. In: 2010 IEEE/AIAA 29th Digital Avionics Systems Conference, DASC, pp. 5.E.1-1–5.E.1-19 (2010)Google Scholar
  13. 13.
    Heiser, G.: The role of virtualization in embedded systems. In: Proceedings of the 1st Workshop on Isolation and Integration in Embedded Systems, IIES 2008, pp. 11–16. ACM Press, New York (2008)CrossRefGoogle Scholar
  14. 14.
    Hilbrich, R.: How to Safely Integrate Multiple Applications on Embedded Many-Core Systems by Applying the “Correctness by Construction” Principle. Advances in Software Engineering 2012(354274), 14 (2012)Google Scholar
  15. 15.
    Hilbrich, R., Goltz, H.-J.: Model-based generation of static schedules for safety critical multi-core systems in the avionics domain. In: Proceeding of the 4th International Workshop on Multicore Software Engineering, IWMSE 2011, pp. 9–16. ACM, New York (2011)Google Scholar
  16. 16.
    Hilbrich, R., van Kampenhout, J.R.: Partitioning and Task Transfer on NoC-based Many-Core Processors in the Avionics Domain. In: 4. Workshop: Entwicklung zuverlässiger Software-Systeme (Stuttgart, Deutschland) and Journal “Softwaretechniktrends” (2011)Google Scholar
  17. 17.
    Jacobs, A., Cieslewski, G., George, A.: Adaptive Software-based Fault Tolerance for Space Multicore Processing. In: Workshop for Multicore Processors For Space - Opportunities and Challenges, IEEE International Conference on Space Mission Challenges for Information Technology, SMC-IT (2009)Google Scholar
  18. 18.
    Jamshidi, M.: System of systems engineering: innovations for the 21st century. Wiley series in systems engineering and management. Wiley (2009)Google Scholar
  19. 19.
    Kaiser, R.: Alternatives for scheduling virtual machines in real-time embedded systems. In: Proceedings of the 1st Workshop on Isolation and Integration in Embedded Systems, IIES 2008, pp. 5–10. ACM, New York (2008)CrossRefGoogle Scholar
  20. 20.
    Kaiser, R.: Virtualisierung von Mehrprozessorsystemen mit Echtzeitanwendungen. Dissertation, Universität Koblenz-Landau (June 2009)Google Scholar
  21. 21.
    Kossiakoff, A., Sweet, W., Seymour, S., Biemer, S.: Systems Engineering Principles and Practice. Wiley Series in Systems Engineering and Management. Wiley (2011)Google Scholar
  22. 22.
    Leroux, P.N., Johnson, K.: Using Resource Partitioning to Build Secure, Survivable Embedded Systems. Technical report, QNX Software Systems (2009)Google Scholar
  23. 23.
    Nowotsch, J., Paulitsch, M.: Leveraging Multi-Core Computing Architectures in Avionics. In: 2012 European Dependable Computing Conference (2012)Google Scholar
  24. 24.
    Pinello, C., Carloni, L., Sangiovanni-Vincentelli, A.: Fault-Tolerant Distributed Deployment of Embedded Control Software. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 27(5), 906–919 (2008)CrossRefGoogle Scholar
  25. 25.
    Prisaznuk, P.J.: ARINC 653 role in Integrated Modular Avionics (IMA). In: 2008 IEEE/AIAA 27th Digital Avionics Systems Conference, pp. 1.E.5-1–1.E.5-10. IEEE (2008)Google Scholar
  26. 26.
    RTCA. Integrated Modular Architecture – Development Guidance and Certification Considerations (2005)Google Scholar
  27. 27.
    Rushby, J.: Partitioning for Safety and Security: Requirements, Mechanisms, and Assurance. NASA Contractor Report CR-1999-209347, NASA Langley Research Center (June 1999)Google Scholar
  28. 28.
    Wilhelm, R., Grund, D., Reineke, J., Schlickling, M., Pister, M., Ferdinand, C.: Memory Hierarchies, Pipelines, and Buses for Future Architectures in Time-Critical Embedded Systems. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 28(7), 966–978 (2009)CrossRefGoogle Scholar
  29. 29.
    Windsor, J., Hjortnaes, K.: Time and Space Partitioning in Spacecraft Avionics. In: Third IEEE International Conference on Space Mission Challenges for Information Technology, SMC-IT 2009, pp. 13–20 (July 2009)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • J. Reinier van Kampenhout
    • 1
  • Robert Hilbrich
    • 1
  1. 1.Fraunhofer FOKUSBerlinGermany

Personalised recommendations