Embedded Software Verifikation integrierter Software

Die Risiken eines Ausfalls integrierter Software sind je nach Anwendungsfall zu bewerten.
Die Risiken eines Ausfalls integrierter Software sind je nach Anwendungsfall zu bewerten.

Während die Sensorhardware auf Datenblättern spezifiziert wird, hängt die korrekte Funktion moderner Sensor-ICs auch von der integrierten Software ab. Der Artikel behandelt die ursächliche Quantifizierung des softwarebedingten Risikos eines Systemausfalls und schlägt Verifikationsverfahren vor.

Einfache Temperatursensoren nutzten ausschließlich den temperaturabhängigen Widerstand im Silizium: Der Applikationsprozessor berechnete den Temperaturwert unter Messung der Spannung am Sensorausgang mit anschließender A/D-Wandlung.

Heutzutage senden Temperatursensoren digitale Signale: Solche »intelligenten« Digitalsensoren bieten dem Nutzer mehrere Vorteile, wie eine verbesserte Genauigkeit und integrierte Kompensations-, Diagnose- und Fehlererkennungsfunktionen, konfigurierbare Filter und programmierbare Interrupts.

Weiterhin können mithilfe von Algorithmen weitere Werte - wie etwa die
Raumluftqualität - von den Observablen abgeleitet werden - zum Beispiel die Konzentration von flüchtigen organischen Verbindungen in der Luft. Das digitale Messsignal im Sensor reduziert mit dem Aufwand an den Applikationsprozessor auch Designkomplexität und Energieumsatz.

Allerdings muss auch die im Sensor-IC integrierte Software betrachtet werden: Sie birgt ein neues Risikoelement. Hardware kann auf dem Datenblatt hinreichend präzise dokumentiert werden: Standardisierte Verfahren, wie etwa PPAP, quantifizieren die Qualität von Produktionseinheiten falsifizierbar und stärken das Vertrauen der Systemdesigner in die Sensorhardware.

Bislang finden ähnliche Verfahren für die Softwareseite noch wenig Beachtung. Das Risiko einer Störung durch integrierte Software existiert: Die Ursache der Fehllandung des Schiaparelli-Moduls auf der Marsoberfläche lag nach vorläufigen Ergebnissen (ESA, November 2016) in der Steuerungssoftware, ausgelöst durch eine seltene, eine Sekunde andauernde Störung, am Sensorausgang. Trotz der in der Raumfahrt üblichen strengen Testverfahren blieb dieser Software-Bug verborgen.

Natürlich arbeiten nur wenige Entwickler mit in der Raumfahrtindustrie ähnlichen Anforderungen. Dennoch sind spezifiziertes Qualitätsniveau und erwartete Betriebsdauer einzuhalten. Eine Methode zur Überprüfung der Fehlerwahrscheinlichkeit integrierter Software ist gefordert; diese Methode muss im Rahmen des Budgets, der Entwicklungsressourcen und der vorgegebenen Entwicklungszeit liegen.

Der Artikel behandelt solche Verifikationsmethoden für die integrierte Software in einem Sensor-IC.