• No results found

Analyse und Optimierung von fehlertoleranten Eingebetteten Systemen mit gehärteten Prozessoren

N/A
N/A
Protected

Academic year: 2021

Share "Analyse und Optimierung von fehlertoleranten Eingebetteten Systemen mit gehärteten Prozessoren"

Copied!
2
0
0

Loading.... (view fulltext now)

Full text

(1)

Analyse und Optimierung von fehlertoleranten Eingebetteten

Systemen mit gehärteten Prozessoren

Viacheslav Izosimov, Universität Linköping, Schweden Ilia Polian, Universität Freiburg, Deutschland

Paul Pop, Technische Universität Lyngby, Dänemark Petru Eles, Universität Linköping, Schweden Zebo Peng, Universität Linköping, Schweden

Kurzfassung

Wir stellen einen Ansatz zur Entwurfsoptimierung von fehlertoleranten harten Echtzeitsystemen vor, der Hard-ware- und SoftHard-ware-Fehlertoleranztechniken kombiniert. Es wird zwischen selektiver Härtung in Hardware und Prozessneuausführungen in Software abgewogen, um benötigte Fehlertoleranz zu geringst möglichen Kosten zu erreichen. Die vorgestellten Entwurfsoptimierungsheuristiken legen die fehlertolerante Architektur und Prozess-zuordnung fest, so dass die Systemkosten minimiert, die Deadlines eingehalten und die Zuverlässigkeitsanforde-rungen erfüllt werden..

1 Einleitung

Sicherheitskritische Eingebettete Systeme müssen selbst unter Fehlern kosteneffizient und schnell arbei-ten. In dieser Arbeit wird die Toleranz gegen transien-te und intransien-termittransien-tentransien-te Fehler, genannt Soft Errors, be-handelt. Wir kombinieren selektive Härtung mit Soft-ware-Fehlertoleranz, um die geringst möglichen Systemkosten zu erreichen, ohne die harten Deadlines und Zuverlässigkeitsanforderungen zu verletzen. Wir setzen Prozessneuausführungen ein, um Fehler soft-warebasiert zu behandeln. Um die Zuverlässigkeitsei-genschaften des Systems zu bewerten, wird auf ein Verfahren zur Berechnung der Systemausfallwahr-scheinlichkeit zurückgegriffen, welches. die Redun-danzniveaus in Software (maximale Anzahl von Neu-ausführungen) und in Hardware (Umfang der selekti-ven Härtung) miteinander verbindet [1].

2 Systemmodell

Eine Anwendung wird auf Systemebene als eine Menge von gerichteten, azyklischen Graphen model-liert. Die Knoten entsprechen einzelnen (nicht-präemptiven) Prozessen, während die Kanten Abhän-gigkeitsbeziehungen modellieren. Die Anwendung wird auf eine Menge von Berechnungsknoten abge-bildet, die an einen Bus angeschlossen sind und mit Hilfe von Nachrichten über den Bus kommunizieren.

3 Fehlertoleranztechniken

Zur Fehlerbehandlung werden zwei Techniken einge-setzt: Prozessneuausführung und selektive Härtung von Berechnungsknoten. Wir nehmen an, dass Fehler während der Prozessausführung auftreten und stets

entdeckt werden. In diesem Fall wird der Prozess neu ausgeführt, wobei eine zusätzliche Fehlerbehand-lungszeit (Overhead) µ verbraucht wird. Die Fehler-erkennungs- und Fehlerbehandlungsmechanismen werden als fehlertolerant angenommen; für die Kom-munikation zwischen den Prozessen wird ein fehlerto-lerantes Protokoll, z.B. TTP [3], unterstellt.

Die Berechnungsknoten stehen in mehreren Versionen mit unterschiedlichen Härtungsgraden (h-Versionen) zur Verfügung. Ein größeres h steht für mehr Härtung und folglich höhere Kosten, eine niedrigere Berech-nungsgeschwindigkeit und eine geringere Fehlerrate. Formal bezeichnen wir die h-Version des Knotens Nj

als Njh, ihre Kosten als Cjh, die Ausführungszeit

(WCET) von Prozess Pi auf Knoten Njh als tijh, und die

Ausfallwahrscheinlichkeit von Pi auf Njh als pijh.

Abb.1 zeigt eine Beispielanwendung mit vier Prozes-sen und zwei Berechnungsknoten in drei h-Versionen.

P2 P1 P4 ρ = 1 − 10-6 µ = 15 ms N1 N2 N1 N2 D = 360 ms P3 m1 m4 m3 m2 60 75 60 P1 P2 P3 1.2·10-3 1.3·10-3 1.4·10-3 N1 h = 1 16 75 P4 1.6·10-3 h = 2 32 Kosten h = 3 64 t p t p t p 75 90 75 90 1.2·10-5 1.3·10-5 1.4·10-5 1.6·10-5 90 105 90 105 1.2·10-10 1.3·10-10 1.4·10-10 1.6·10-10 P1 P2 P3 N2 h = 1 20 P4 h = 2 40 Kosten h = 3 80 t p t p t p 65 50 50 1·10-3 1.2·10-3 1.2·10-3 65 1.3·10-3 75 60 60 1·10-5 1.2·10-5 1.2·10-5 75 1.3·10-5 90 75 75 1·10-10 1.2·10-10 1.2·10-10 90 1.3·10-10 Abb. 1 Anwendungsbeispiel

(2)

4 Entwurfsstrategie

Für eine Anwendung werden neben Daten aus Abb. 1 die Deadline sowie die Zuverlässigkeitsvorgabe ρ an-gegeben. ρ entspricht der Wahrscheinlichkeit, dass kein weder auf Hardware- noch auf Softwareebene behandelter Fehler auftritt. Gesucht sind: (1) eine Ar-chitektur, also eine Auswahl von Berechnungsknoten; (2) die Festlegung des Härtungsgrades für jeden Kno-ten; (3) eine Allokation von Prozessen auf die Knoten der gewählten Architektur; (4) die maximal erforderli-che Anzahl von Neuausführungen auf jedem Berech-nungsknoten; und (5) ein quasistatischer Ablaufplan (Schedule) der Prozesse und der Kommunikation. Die Berechnung der Systemausfallwahrscheinlichkeit ist in [1] beschrieben. Für jeden Prozess wird die An-zahl von Prozessneuausführungen bestimmt, die not-wendig ist, um die Zuverlässigkeitsvorgabe ρ zu er-reichen. Diese Größe ist von den Härtungsgraden der Knoten in der Architektur abhängig. Die Optimie-rungsstrategie besteht aus einer Reihe von Heuristi-ken. Sie legt iterativ die Härtungsgrade der Knoten fest und bildet einzelne Prozesse auf Knoten ab. Dann wird der Ablaufplanplan berechnet, welcher keine Deadlines verletzt, die Zuverlässigkeitsvorgabe ein-hält und die Gesamtkosten der Architektur (Summe der Kosten aller Knoten) minimiert.

Abb. 2 zeigt fünf unterschiedliche Architekturen für das Anwendungsbeispiel aus Abb. 1. In Architektur a) sind Prozesse P1 und P2 auf Berechnungsknoten N1

und Prozesse P3 und P4 auf Knoten N2, jeweils mit

Härtungsgrad h = 2, abgebildet. Nachrichten m2 und

m3 werden über den Bus verschickt, während

Nach-richten m1 und m4 innerhalb der Knoten übertragen

werden. Die Ausfallwahrscheinlichkeitsanalyse ergibt, dass im ungünstigsten Fall eine Neuausführung von Prozessen P2 und P3 notwendig ist; die

unterschiedli-chen Ausführungen sind in der Abbildung als P2/1 und

P2/2 bzw. P3/1 und P3/2 dargestellt. Die zusätzliche

Fehlerbehandlungszeit µ ist in dunkelgrauer Farbe zwischen den Ausführungen zu sehen. Der Ablaufplan hält die Deadline ein, welche durch die vertikale Linie angedeutet ist. Die Gesamtkosten betragen 72.

3 2 P4 N2 N1 P2/1 P1 P3 P2/1 P4/1 P1 P3 P2 P4 N2 N1 Cd= 64 bus Ca= 72 Cc= 40 a) c) d) m3 m2 P3/1 P2/2 P4/2 P2/2 P3/2 P1 3 2 2 2 N1 b) P1 P3 P2/1 P2/2 P4/1 P4/2 Cb= 32 N2 e) P1 P3 P2 P4 Ce= 80

Abb. 2 Alternative Architekturen: Fehlerbehandlung

Architekturen b) bis e) bestehen aus einem Einzelpro-zessor. Für Alternativen b) und e) hat die Systemaus-fallwahrscheinlichkeitsanalyse zwei benötigte Neu-ausführungen ergeben. Die ungünstigsten Szenarien, in welchen Neuausführungen für die langsamsten Pro-zesse benötigt werden, verletzen die Deadline. In Ar-chitekturen d) und e) werden Knoten mit dem höchs-ten Härtungsgrad (h = 3) eingesetzt; für sie werden keine Neuausführungen benötigt. Obwohl für Archi-tektur e) ein Ablaufplan existiert, übersteigen ihre Kosten die Kosten der Architektur a). Deswegen wird Architektur a) vom Algorithmus gewählt. Die Details der Optimierungsstrategie können aus Platzgründen nicht dargestellt werden.

5 Experimentelle

Ergebnisse

Wir haben 150 synthetische Anwendungen mit 20 und 40 Prozessen generiert. Durch die Zulassung von fünf unterschiedlichen Härtungsgraden konnte der Anteil der zulässigen Anwendungen um 55% gesteigert wer-den (als zulässig werwer-den Anwendungen bezeichnet, für welche unsere Optimierungsstrategie einen Ab-laufplan generieren kann, der Deadline, Zuverlässig-keitsvorgabe und Kostengrenze nicht überschreitet). Wir haben unsere Entwurfsstrategie ferner auf ein Ve-hicle Cruise Controller (CC) angewendet, der aus 32 Prozessen besteht [2]. Die Architektur von CC besteht aus drei Knoten: Electronic Throttle Module (ETM), Anti-lock Braking System (ABS) und Transmission Control Module (TCM). Die Abwägung zwischen Redundanz in Hardware und Software führt zu einer Kostenersparnis von 66%.

Danksagung

Teile dieser Arbeit wurden von der Swedish Graduate School in Computer Science (CUGS), der ARTES++ Swedish Graduate School in Real-Time Systems und der DFG im Rahmen des Projekts RealTest (Be 1176/15-2) unterstützt.

Literatur

[1] V. Izosimov. I. Polian, P. Pop, P. Eles, and Z. Peng . “Analysis and optimization of fault-tolerant embedded systems with hardened proc-essors”, Design Automation and Test in Europe Conf. (DATE), pp. 682–687, 2009.

[2] V. Izosimov, “Scheduling and Optimization of Fault-Tolerant Embedded Systems”, Licenti-ate Thesis No. 1277, Dept. of Computer and In-formation Science, Linköping University, 2006. [3] H. Kopetz, G. Bauer, “The Time-Triggered

Ar-chitecture”, Proc. of the IEEE, 91(1), 112–126, 2003.

References

Related documents

wurde diese Mauer nach und nach abgetragen, und jetzt steht hier nur noch ein bescheidener Rest beim Turm

Dieser Arbeit liegt eine Übersetzung eines deutschen Ausgangstextes (AT) in einen schwedischen Zieltext (ZT) zugrunde. Das von mir übersetzte Material entstammt dem zweiten

Die Arbeit gliedert sich in einen Teil, der einen Überblick über den Begriff der Intermedialität und damit für die Arbeit relevante Begriffe gibt, einer Präsentation des Gemäldes

Wenn sie aber für bessere Qualität mehr zu bezahlen sollen, dann wollen sie diese höhere Qualität nicht nur mit allen ihren Sinnen empfinden, sondern auch mit ihrem

Jason erzählt von der ersten Vorstellung Medeas und der Leser erfährt, dass Medea Prinzessin und Priesterin ist: Zusätzlich wird es deutlich, dass Medea, obwohl sie

Die im Rahmen dieser Studie gewonnen Erkenntnisse verstehen sich als direkter Beitrag zum Forschungsdiskurs der Neuen Wirtschaftssoziologie (NWS). Dabei ist es gelungen, die

Wie an den Textbeispielen gezeigt wurde, gehen authentisches- und unzuverlässiges Erzählen beinahe reibungslos ineinander über. Der Ich-Erzähler kann innerhalb

In dieser Arbeit wird angenommen, dass sich die Websites an alle diejenigen richten, die sich für die beworbenen Produkte schon interessieren und die Website gezielt aufsuchen, um