Datenbestand vom 10. Dezember 2024

Impressum Warenkorb Datenschutzhinweis Dissertationsdruck Dissertationsverlag Institutsreihen     Preisrechner

aktualisiert am 10. Dezember 2024

ISBN 978-3-8439-4210-2

84,00 € inkl. MwSt, zzgl. Versand


978-3-8439-4210-2, Reihe Elektrotechnik

Petra Roswitha Kleeberger
Computer-Aided Development of Robust Embedded Software

173 Seiten, Dissertation Technische Universität München (2019), Hardcover, A5

Zusammenfassung / Abstract

Embedded systems increasingly control safety-critical applications. To avoid damage or injury, these systems must behave safe at all times - even if hardware malfunctions. This thesis contributes three novel methods for computer-aided development of embedded software that is robust against failures of peripheral devices. First, the presented high-speed fault injection technique analyzes the software's robustness. Experimental results show a speed-up of three orders of magnitude compared to state-of-the-art fault-injection techniques. As the approach reuses test cases and techniques from software unit development, it integrates well into this early development phase. Second, three static bit-level analyses of the software source code and the hardware description reduce the fault set significantly and, thus, achieve further fault injection speed-up of another order of magnitude. Third, an approach to automatically increase software's robustness is presented. For this, hardware abstraction layer (HAL) functions that include safety mechanisms are generated. These robust functions can handle up to 76% of the injected faults that lead to failures when using an unprotected HAL. The code generator can use fault injection results, i.e., criticality information on peripheral accesses, to select adequate safety mechanisms. This reduces overheads significantly while the most critical peripheral accesses are still protected. These methods support the evaluation and establishment of robustness against peripheral failures from the very beginning of safety-critical embedded software design.