Nuevas técnicas de inyección de fallos en sistemas embebidos mediante el uso de modelos virtuales descritos en el nivel de transacción

  1. Silva Fariña, Antonio da
Supervised by:
  1. Sebastián Sánchez Prieto Director

Defence university: Universidad de Alcalá

Fecha de defensa: 26 March 2015

Committee:
  1. Daniel Meziat Luna Chair
  2. Óscar Rodríguez Polo Secretary
  3. Juan Antonio Maestro Committee member
  4. Ana Belén García Hernando Committee member
  5. Antonio Óscar Garnica Alcazar Committee member

Type: Thesis

Abstract

Better software, faster. This is the challenge that stems from the need to build increasingly smarter systems. In any current embedded design, the software is a key component that provides the system with a high configuration capacity, large number of features and resilience of the system behavior in exceptional situations. If addition, if the hardware/software suite under development is part of a critical system integrated in a System on Chip (SoC), where fault tolerant requirements must be taken into account, a comprehensive verification of those requirements consumes an increasingly large percentage of resources. In this context, the use of traditional codesign and coverification methods are completely inefficient, requiring the use of new technologies and tools for the early development and verification of embedded software. These include the proposal made in this thesis that proposes the use of executable models of the hardware defined at transaction level. Because of the tough robustness requirements that prevail in space software development, it is imperative to carry out verification tasks in very early development stages to ensure that the implemented exception mechanisms, identified in the specification of the system, work properly. In general, these tasks should be are carried out in parallel with the hardware development, anticipating problems or mistakes in the existing system specification. In addition, complete verification mechanisms implemented in the software exception may not be possible in real hardware real since the faulty scenarios must be artificial and systematically generated using fault injection techniques that allow controllable, observable and reproducible fault injection campaigns. This thesis describes the research, development and use of a virtual platform called “Leon2ViP”, with fault injection capabilities and based on SystemC/TLM2 interfaces for the early development and testing of embedded software within the Solar Orbiter project. This way it is posible to run the exact same target binary software as runs on the physical system in a more controlled and deterministic environment. This enables unmanned and tightly focused fault injection campaigns, not possible otherwise. The use of “Leon2ViP” has meant a signicant improvement, in both time and cost, in the development and verification processes of the Instrument Control Unit boot software on board Solar Orbiter’s Energetic Particle Detector.