[ main page ] [ back ]

2004 : Implementierung eines FPGA-basierten Hardware-Fehlerinjektors

Author(s)
Thomas Handl
Abstract
Durch die immer weiter zunehmende Leistung moderner Computersysteme vergrößert sich auch deren Einsatzgebiet rapide. Dieses gesteigerte Potential geht natürlicherweise einher mit immer weiter wachsender Komplexität, Größe und Fehleranfälligkeit jener Systeme. In gleichem Maße verkompliziert sich der Vorgang der Abschätzung von Parametern, welche für die Bewertung ihrer Zuverlässigkeit herangezogen werden. Andererseits halten Computersysteme seit geraumer Zeit Einzug in sicherheitskritische Anwendungsgebiete, welche aber wiederum fehlertoleranter Hardware bedürfen. Bedingt durch diese Komplexitätszunahme können Zuverlässigkeit, Verfügbarkeit und Sicherheit nicht mehr alleine durch sorgfältiges Design, Techniken zur Fehlervermeidung (fault avoidance) oder andere Methoden der Qualitätssicherung im notwendigen Ausmaß gewährleistet werden. Auch die alleinige Einführung von Redundanz bei sicherheitskritischen Anwendungen kann diese Problematik nicht lösen, da jede einzelne replizierte Hardwarekomponente eine potentielle Fehlerquelle darstellt. Benötigt werden Methoden und Verfahren zur Validierung der Sicherheitskriterien, welche eine spezielle Anwendung erfüllen muß. Grundsätzlich bieten sich zwei Verfahren an: die theoretische Analyse und die experimentelle Auswertung. Gerade Computersysteme scheinen auf Grund der Kausalität ihrer Operation ideal für den theoretischen Ansatz geeignet. In der Praxis scheitert dies jedoch meist an der Komplexität der Systeme und dem damit verbundenen Zeitaufwand. Der einzige gangbare Weg besteht darin, das System auf eine wesentlich simplifiziertere Abstraktionsebene zu transformieren, wodurch man sich aber wieder weiter von der Hardware-Ebene entfernt. Der Vorteil des experimentellen Zugangs besteht aber gerade darin, daß auf die zu testende Hardware direkt zugegriffen werden kann. Der Nachteil dieser Methode liegt jedoch darin, daß mit dem Einsatzzweck implizit verknüpfte Randbedingungen sowie nicht vollständig oder überhaupt nicht bekannte interne Abhängigkeiten des Systems die Allgemeingültigkeit der erzielten Resultate wesentlich einschränken. Eine Möglichkeit zur Systemvalidierung auf experimenteller Ebene stellt die Fehlerinjektion dar. Um jedoch aussagekräftige Resultate zu erhalten, muß ein System zur Fehlerinjektion selbst gewisse Anforderungen erfüllen. So sollten speziell ausgewählte Fehler auf eine reproduzierbare Art und Weise gezielt injiziert werden können. Diese Arbeit zielt auf die Entwicklung einer derartigen Fehlerinjektionsumgebung ab, welche zusätzlich zur präzisen Steuerung des Injektionsexperimentes mittels einer vom Benutzer frei definierbaren, da anwendungsabhängigen, Kommandosprache weitgehende Flexibilität bezüglich der zu testenden Komponenten aufweisen soll.
Bibtex
@mastersthesis{ handl:2004,
  author =      "Thomas Handl",
  title =       "Implementierung eines FPGA-basierten Hardware-Fehlerinjektors",
  address =     "Treitlstr. 3/3/182-1, 1040 Vienna, Austria",
  school =      "Technische Universit{\"a}t Wien, Institut f{\"u}r Technische Informatik",
  year =        "2004"
}
Download
Get da.pdf - Adobe PDF-format, (6227.2148 KB; posted at July 09 2013)


[ main page ] [ back ]