Refine
Document Type
- Doctoral thesis (9)
- Conference proceeding (1)
- Habilitation thesis (1)
Has Fulltext
- yes (11)
Is part of the Bibliography
- no (11)
Keywords
- Fehlertoleranz (11) (remove)
Institute
This dissertation proposes a cross-layer framework able to synergistically optimize resilience and power consumption of processor-based systems. It is composed of three building blocks: SWIELD multimodal flip-flop (FF), System Operation Management Unit (SOMU) and Framework Function Library (FFL). Implementation of the building blocks is performed at circuit, architecture and software layer of the system stack respectively. The SWIELD FF can be configured to operate as a regular flip-flop or as an enhanced flip-flop for protection against timing/radiation-induced faults. It is necessary to perform replacement of selected timing-critical flip-flops in a system with SWIELD FFs during design time. When the system is active, the SWIELD FFs operation mode is dynamically managed by the SOMU controller according to the current requirements. Finally, the FFL contains a set of software procedures that greatly simplify framework utilization. By relying on the framework, a system can intelligently interchange techniques such as Adaptive Voltage/Frequency Scaling, selective Triple Modular Redundancy and clock gating during operation. Additionally, a simple and convenient strategy for integration of the framework in processor-based systems is also presented. A key feature of the proposed strategy is to determine the number of SWIELD FFs to be inserted in a system. Using this strategy, the framework was successfully embedded in instances of both single- and multicore systems. Various experiments were conducted to evaluate the framework influence on the target systems with respect to resilience and power consumption. At expense of about 1% area overhead, the framework is able to preserve performance and to reduce power consumption up to 15%, depending on the number of SWIELD FFs in the system. Furthermore, it was also shown that under certain conditions, the framework can provide failure-free system operation.
Since electronics started to scale down, a growing concern about the reliability of these electronic devices has emerged. At the same time, the increased demand for high performance within the safety- and mixed-critical domains, such as the aerospace and automotive industry, motivated a shift from previous consolidated and mature technology to the new cutting edge devices with smaller feature sizes. Therefore, there is a need to improve the fault tolerance of these high-end devices so that minimum failure rates can be obeyed. Although redundancy has been a great solution for these problems, their drawbacks such as power and area overheads must be watched carefully, so that per-unit price does not extrapolate affordable limits, and the redundancy does not add more sources of error than it improves the fault tolerance. This thesis proposes an approach for run-time management of redundancy among the processor internal Functional Units (FUs) within mixed-critical scenarios, tackling the compensation of the trade-offs between fault-tolerance, power consumption, hardware usage (ageing), and hardware area (cost).
With these objectives in mind, this thesis presents a concept for a dynamic processor architecture capable to enable and disable redundancy of FUs on-demand, and a software mechanism for criticality-aware management of these units for mixed-critical processes within an Operating System (OS). For this purpose, a processor design was extended with a few additional instructions that enabled different replication schemes in the processor at run-time. Furthermore, a compatible Real-Time Operating System (RTOS) is also extended to enable the desired criticality-aware management of units.
Evaluating the implemented test platform when the extended processor was running bare-metal code, the latency to shift between different replication schemes was of only one instructions cycle. Furthermore, when the processor was running the adapted RTOS, the run-time overhead over the latency to switch between processes remained below 2.5%. Meanwhile, resulting from the processor extensions, the hardware overhead remained smaller than standard full core replication schemes such as core lock-step approaches. Regarding fault tolerance, the expected failure rate of the FUs module decreased by approximately 80% when its FUs were configured with Triple Modular Redundancy (TMR). Furthermore, when considering the whole area of the processor core, its respective failure rate decreased by about 15% when configured these units with the same triplication scheme. Finally, it is also presented that the run-time management of FUs was likewise able to decrease the power consumption and hardware ageing for the proposed mixed-critical scenario. After all, we can say that the concept can increase fault tolerance on-demand of a processor design with moderately low hardware overhead, while it also minimises the power consumption and hardware usage (ageing) for its intended mixed-critical scenario.
Scaling minimum features of ICs down to the 10nm- area and below has allowed high integration rates in electronics. Scaling at supply voltages of 1V and below also implies a rising level of stress which drives aging effects that reduce switching speed and the expected life time. Additionally, vulnerability from particle radiation is increased. Hence, fault detection and on-line correction become a must for many applications. However, not only fault tolerance but self-awareness becomes also an advantage. Provided that by being aware of its own healthy state allow optimized configurations regarding system operation modes and configurable hardware mechanism. This paper shows a preliminary work in a configurable circuit and explores its configuration possibilities when integrated into a complete system.
Im Rahmen dieser Untersuchung wurden insbesondere die Wechselbeziehungen zwischen dem Konzept des Universellen Designs im Wohnungsbau und der Gebäudeflexibilität analysiert, mit der Absicht festzustellen, was ein Gebäude grundsätzlich ausmachen muss, das einerseits auf die Veränderungen in den Lebens- und Wohngewohnheiten der Menschen reagieren sollte und andererseits die Prinzipien des Universellen Designs berücksichtigen muss. Darüber hinaus wurde mit der vorliegenden Forschungsarbeit versucht, die Informationslücken zum Thema des Universellen Designs im Wohnungsbau zu schließen und kritisch zu hinterfragen. Die gewonnenen Erkenntnisse dieser Arbeit sowie die Auswertung der Ergebnisse bei der Auswahl der untersuchten Fallbeispiele erlauben Rückschlüsse auf die Bedürfnisse der Menschen im Zusammenhang mit ihrer Wohnung bzw. ihrem Haus und werden dazu beitragen, Wohnungen zu schaffen, die den Wünschen ihrer Bewohner immer mehr entsprechen. Das vornehmliche Ziel dieser Untersuchung ist die Erarbeitung eines methodischen Standards zur Optimierung des Konzeptes des Universellen Designs. Ein wesentlicher Bestandteil stellt dabei die Entwicklung einer Evaluierungsmethode dar, die bisher als einzige Methode dieser Art die Prinzipien des Universellen Designs als Richtlinien zur Bewertung erhebt und somit das Konzept des Universellen Designs und seine Umsetzung im Wohnungsbau wesentlich bereichern kann. Die Forschungsarbeit ist in zwei Teile gegliedert: einen ersten theoretischen Teil, in dem der Fokus auf das vielschichtige Konzept des Universellen Designs und auf die damit verbundenen Begriffe gerichtet ist. Dort wird auch der gesellschaftliche Struktur- und architektonische Wohnwandel einer Analyse unterzogen. Und einen zweiten Teil, in dem Projektbeispiele untersucht wurden, die beispielhafte Lösungen im Bereich der Gebäudeflexibilität aufzeigen, die in der Lage sind, das Konzept des Universellen Designs im Wohnungsbau zu unterstützen.
In zukünftigen eingebetteten Systemen ist bei zunehmender Integrationsdichte mit einer abnehmenden Zuverlässigkeit zu rechnen. Insbesondere lang laufende Systeme werden mit fortschreitender Zeit Alterungserscheinungen aufweisen, die sich durch den permanenten Ausfall einzelner Komponenten bemerkbar machen. Um die Funktionstüchtigkeit solcher Systeme auch für einen langen Zeitraum zu gewährleisten, sind Funktionen erforderlich, die die Erkennung, Lokalisierung und Behandlung solcher permanenter Fehler erlauben. Diese Funktionen sind dabei in das System zu integrieren. Es existieren dafür bereits verschiedene Ansätze auf unterschiedlichen Systemebenen. Das Spektrum solcher Ansätze reicht von einer Reparatur auf Transistorebene über die Reparatur einzelner Komponenten, die aus einigen dutzend bis einigen tausend Transistoren bestehen, bis hin zu Reparaturansätzen, die komplette Prozessorkerne in einem System ersetzen. Jeder Ansatz hat dabei seine spezifischen Vor- und Nachteile. Das betrifft insbesondere den Aufwand zur Administration der Reparatur sowie die Anwendbarkeit auf beliebige Hardwarestrukturen. Bisher wurden die Reparaturmethoden isoliert entwickelt. In Systemen mit zunehmender Komplexität wird jedoch ein hierarchischer Ansatz benötigt, der die existierenden Techniken ebenenübergreifend verbindet. Dadurch kann eine Zerlegung des Systems in verschiedene Gruppen vorgenommen werden, wobei für jede Gruppe eine spezifische Reparaturmethodik besonders geeignet ist. Es entsteht dadurch ein teils hierarchisch organisierter Reparaturansatz, der unterschiedliche Reparaturtechniken miteinander kombiniert.
Es werden für das hierarchische Verfahren insbesondere software-basierte Reparaturansätze betrachtet, da diese nur einen geringen Administrationsaufwand in Hardware erfordern. Die Nutzung fehlerhafter Komponenten im Prozessor wird dabei durch die Anpassung des ausgeführten Programms an die aktuelle Fehlersituation vermieden. Diese Anpassung kann beispielsweise auf Systemebene, durch Verlagerung eines Programms von einem Prozessorkern auf einen anderen Kern oder auf der Ebene von Prozessorkernen, wobei die Benutzung einzelner Komponenten eines Kerns vermieden wird, erfolgen. Diese Anpassungen lassen sich durch Techniken, wie sie im Backend eines Compilers eingesetzt werden, bewerkstelligen. Die Reparatur auf den verschiedenen Ebenen erfordert dabei unterschiedlich mächtige Backends. Das reicht von einem Backend, das nur eine Ablaufplanung ändert, über ein Backend, das darüber hinaus noch die Registervergabe anpasst, bis hin zu einem Backend, das den Programmcode zweier Prozessorkerne vertauscht und an den jeweiligen Kern anpasst. Die Ausführung der software-basierten Reparatur soll dabei möglichst durch den fehlerhaften Kern selbst ausgeführt werden. In schwerwiegenden Fällen erfolgt eine administrierte Reparatur auf der Systemebene durch einen zur Reparaturzeit bestimmten Prozessorkern des Systems. Der Aufwand für entsprechende Backends sowie deren Möglichkeit zur Fehlerbehandlung werden in dieser Arbeit untersucht.
Despite the numerous benefits that Integrated Circuit (IC) technology downscaling brings, it also introduces many challenges. First of all, IC dependability is lowering: both lifetime reliability and resilience to single event effects is decreasing. Another major problem is the increased power consumption. On the other hand, the vast available space enables integrating hundreds of processor cores in a single chip! Multiprocessing is for over a decade the main architectural trend because of two reasons. Firstly, the performance of single processors gained by architectural innovations reached the upper limit i.e., the point of diminishing returns. Secondly, the operating frequency could not be increased due to the excessive power consumption, as pointed out. This work proposes a multiprocessor architectural framework that addresses many challenges related to dependability, power consumption and performance. The key idea is dynamical adaptation to the application requirements of fault tolerance and performance, which is possibly done at the lowest rates of aging and power dissipation. The application may select one of the three basic operating modes: de-stress, fault-tolerant and high-performance. De-stress mode prolongs multiprocessor lifetime and reduces power consumption by using core gating patterns that systematically power- or clock-off entire cores in the multiprocessor. These patterns use the information supplied by novel IC aging monitors. Fault-tolerant mode, on the other hand, increases error resilience by forming core-level NMR (N-modular redundant) systems using the multiprocessor cores. That is, entire cores are tightly synchronized to execute the same task simultaneously. Voting is done on each clock cycle using special, programmable NMR voters. Core-level NMR enables masking faults without invoking recovery procedures which is appreciated by timing-critical, or, real-time applications. Finally, high-performance mode is used for boosting multiprocessor performance. The framework is evaluated using a novel environment for automated fault injection, as well as a novel multiprocessor verification platform. A vast number of experiments were made which led to closed-form expressions that determine the number of cores N required to survive the projected mission time, given the fault rate. Moreover, a newly-developed method for lifetime evaluation based on the Weibul distribution shows the benefits of using core gating patterns. E.g., the new Youngest-First Round-Robin (YFRR) pattern enables up to 31% increase in system's lifetime compared to a simple Round-Robin.
This thesis introduces a comprehensive approach for making a particular class of embedded processors self-testing and self-repairing, such that a limited amount of permanent hardware faults that occur during the lifetime of these processors in the field will not prohibit the functional behavior of the user application running on the processor. The presented concepts all use redundant hardware, but the techniques used for administrating the hardware-redundancy range from hardware-based methods over hybrid methods to pure software-based methods, whereby the focus is on the latter ones. The proposed methods will be demonstrated by using a processor that is well designed for diagnostic self-test and self-repair purposes. This will also highlight some architectural properties of such a processor, which are beneficial for performing a software-based self-test and self-repair process.
Chapter 1 is an introduction to the field of dependable systems and fault tolerance. Fundamental terms and notations, which are used throughout this thesis for classification and evaluation, are provided. The used processor model – the VARP processor – is introduced in chapter 2 together with a hardware-based self-repair scheme for that processor. The results are used as reference values for evaluating the software-based methods. Chapter 3 introduces the fundamental concept of the software-based self-repair. In chapter 4 hybrid methods are derived by combining software-based and hardware-based methods, highlighting the synergy effects of the combination. Finally, in chapter 5, a diagnostic and adaptive software-based self-test scheme is introduced. This self-test scheme provides the diagnostic capability that is needed in the field for identifying defect components in the VARP processor and completes the comprehensive software-based self-test and self-repair approach.
Effiziente Auswahl redundanter Komponenten für Prozessoren zur Kompensation permanenter Fehler
(2014)
Die stetige Skalierung von Fertigungstechnologien sorgte für einen rasanten Anstieg der Komplexität und damit auch der Verarbeitungsleistung von integrierten Schaltungen. Dies führte auch zu höheren Anforderungen an die Entwurfs- und Produktionsprozesse für diese Systeme. Zusätzlich dazu steigern Strukturen im Nanometerbereich die Anfälligkeit gegenüber physikalischen Effekten, welche sich in temporären und zunehmend auch dauerhaften Störungen der Funktionalität äußern können. Der Einsatz von Fehlertoleranz ist für diese komplexen Systeme nicht wegzudenken und wird für zukünftige anfälligere Fertigungstechnologien noch relevanter.
In dieser Arbeit wird eine skalierbare Architektur zur Kompensation dauerhafter Störungen für beliebige Prozessorkomponenten vorgestellt. Der Einsatz dieser Architektur ist unabhängig von der Fehlerursache und kann sowohl direkt nach der Produktion als auch während des Einsatzes im Zielsystem genutzt werden. Durch die Verwendung dieser Architektur, auf aktiver Hardware-Redundanz basierend, ist eine Steigerung der Zuverlässigkeit, der Lebensdauer aber auch der Produktionsausbeute bei gleichbleibender Funktionalität möglich. Mit der Modellierung in dieser Arbeit wird die Effizienz der vorgestellten Architektur, unter Berücksichtigung der zusätzlichen Hardware für Redundanz und der notwendigen administrativen Komponenten, ermittelt und ermöglicht damit einen zielgerichteten Auswahlprozess für Prozessorkomponenten und die Menge ihrer Redundanz. Somit wird die optimale Redundanz für ein gegebenes System und ein zu erreichendes Ziel bereits im Entwurfsprozess bestimmtund kann damit frühzeitig bei der Umsetzung berücksichtigt werden.
Neben der Beschreibung des Aufbaus der Architektur und ihrer Funktionsweise zeigt diese Arbeit wie sich eine Integration in bestehende Entwurfsprozesse mit gängigen Methoden und Werkzeugen realisieren lässt. Zusätzlich dazu wird die Systemmodellierung zur Realisierung des zielgerichteten Auswahlprozesses beschrieben. Anhand eines Anwendungsbeispiels wird die Möglichkeit der Umsetzung aufgezeigt und die daraus resultierenden Ergebnisse diskutiert.
The sensitivity of application-specific integrated circuits (ASICs) to single event effects (SEE) can lead to failures of subsystems which are exposed to increased radiation levels in space and on the ground. The work described in this thesis presents a design methodology for a fully fault-tolerant ASIC that is immune to single event upset effects (SEU) in sequential logic, single event transient effects (SET) in combinatorial logic, and single event latchup effects (SEL). Redundant circuits combined with SEL power switches (SPS) are the basis for a design methodology which achieves this goal. Within the standard ASIC design flow enhancements were made in order to incorporate redundancy and SPS cells and, consequently, enable protection against SEU, SET, and SEL. In order to validate the resulting fault-tolerant circuits a fault-injection environment with carefully designed fault models was developed. The moments of fault occurrence and their durations are modeled according to the real effects in actual hardware. The proposed design methodology was applied to an innovative space craft area network (SCAN) central processor unit, known as middleware switch processor. The measurement results presented in this thesis prove the correct functionality of DMR and SPS circuits, as well as the high fault-tolerance of the implemented ASICs along with moderate overhead with respect to power consumption and occupied silicon area. Irradiation measurements demonstrated the correct design and successful implementation of the SPS cell.
In dieser Arbeit wird ein neues Konzept für den Entwurf fehlertoleranter digitaler Schaltungen vorgestellt. Die als spezifische Fehlertoleranz bezeichnete Entwurfsmethode erweitert den Stand der Technik um die Möglichkeit, Fehlertoleranz gezielt für gewünschte Ein- und Ausgabezuweisungen einer Schaltung bereitzustellen. Die generell sehr aufwändigen Maßnahmen zur Realisierung von Fehlertoleranz lassen sich so an die tatsächlich vorhandenen Zuverlässigkeitsanforderungen einer gegebenen Anwendung anpassen, was im Vergleich zu herkömmlichen Verfahren zu erheblichen Kosteneinsparungen im Hinblick auf Hardware und Stromverbrauch führt. Die Eingaben einer Schaltung werden dazu mit ihren zugehörigen Ausgaben in kritische und unkritische Signale unterteilt. Für kritische Signale wird das gleiche Maß an Fehlertoleranz bereitgestellt, wie es auch durch das Verfahren der dreifach modularen Redundanz garantiert wird. Unkritische Signale werden nicht fehlertolerant ausgelegt, da das für solche Signale nicht gefordert werden muss. Im Bezug auf kombinatorische Schaltungen wird dieses Grundprinzip auf eine beliebig wählbare Teilmenge aller möglichen Eingaben mit ihren zugehörigen Ausgaben angewendet. Die nicht zu schützenden, unkritischen Signale werden zu Optimierungszwecken genutzt. Genau diese Freiheit im Entwurfsprozess ermöglicht beim Entwurf fehlertoleranter Schaltungen signifikante Kosteneinsparungen, die bislang durch andere Verfahren nicht berücksichtigt wurden. Bei sequentiellen Schaltungen wird das Konzept auf Eingabefolgen und ihre entsprechend zugehörigen Ausgabefolgen abgebildet. Ab einem bestimmten Zustand werden in Schaltungen, die nach diesem Prinzip entworfen wurden, alle als kritisch eingestuften Eingabefolgen fehlertolerant verarbeitet, woraufhin die sequentielle Schaltung entsprechend fehlertolerante Ausgabefolgen liefert. Die Länge der kritischen Eingabefolgen und die Anzahl der Zustände, von denen aus eine fehlertolerante Verarbeitung der Eingaben gefordert wird, ist beliebig wählbar. Neben der Beschreibung des Grundkonzeptes der spezifischen Fehlertoleranz für kombinatorische und sequentielle Schaltungen beinhaltet die Arbeit Erweiterungen, mit denen sich die durch das Verfahren bereitgestellte Fehlertoleranz erhöhen lässt. Es wird zudem erläutert, wie die spezifische Fehlertoleranz ohne besonderen Aufwand mit Hilfe gängiger Werkzeuge im Schaltungsentwurf umgesetzt werden kann. Vom Entwerfer werden dazu keine speziellen Kenntnisse über das eigentliche Verfahren vorausgesetzt. Anhand experimenteller Ergebnisse wird auch gezeigt, welche Einsparungen sich durch die spezifische Fehlertoleranz im Vergleich zu herkömmlichen Verfahren aus diesem Bereich ergeben. Dazu wurden verschiedene Benchmark-Schaltungen mit der spezifischen Fehlertoleranz implementiert und ihre Gesamtflächen den Flächen entsprechender Schaltungen, die nach dem Prinzip der dreifach modularen Redundanz entworfen wurden, gegenübergestellt.