Refine
Document Type
- Doctoral thesis (13)
- Habilitation thesis (1)
- Master thesis (1)
Has Fulltext
- yes (15)
Is part of the Bibliography
- no (15)
Keywords
- Fehlertoleranz (5)
- Eingebettetes System (3)
- Integrierte Schaltung (3)
- Zuverlässigkeit (3)
- Built-in self-repair (2)
- Fehleranalyse (2)
- Hardwareentwurf (2)
- Integrated circuits (2)
- Integrierte Schaltungen (2)
- Redundanz (2)
Institute
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.
Verification of software for Contiki-based low-power embedded systems using software model checking
(2017)
The main building blocks for the internet of things are connected embedded systems. Often these systems are also used in safety critical applications. Therefore, it is particularly important that these devices work according to their specification i.e. they behave as intended. Nowadays, even for simple devices embedded operating systems as Contiki are used to simplify application development and to increase portability between different hardware platforms.
The main objective of this thesis is to present a methodology for the verification of software applications written for the operation system Contiki, taking the system hardware into account. Therefore, software model checking and especially bounded model checking [BCC⁺03] is used as a technique, which allows to formally verify software for embedded systems.
For verifying the software against its specification, it is also necessary to build a model of the system hardware. Thereby, the difficulty is to create a model which is detailed enough to capture the hardware behavior so that the software performs correctly, while keeping the computation effort for the verification process manageable. In this work, the drivers which communicate with the hardware are therefore replaced with abstract models during the verification process. This enables the verification based on an abstract hardware platform independent of specific hardware.
A special role within embedded systems play interrupts. Interrupts are used to save power and can also be used to react on external events. Current methods for verification of interrupt driven software are based on the interleaving model and partial order reduction to reduce the size of the verification problem. This thesis argues that this method is not sufficient for software, whose behavior relies on periodically occurring interrupts. Therefore, in this thesis, a new approach called periodic interrupt modeling is introduced. This approach can be applied automatically and reduces the number of incorrect verification results due to inaccurate modeling. In addition, properties can be proven that depend on the number of occurring interrupts.
Using applications for the Contiki operating system, and based on a verification flow, the approaches toward interrupt modeling are compared.
Das Internet der Dinge (IoT) und drahtlose Sensor-Netzwerke (WSNs) sind grundlegende Konzepte für die Vernetzung der heutigen globalen Informationsgesellschaft, die auf kleinen drahtlosen Geräten basiert. Wenn die Funktionalitäten oder Daten dieser Geräte manipuliert werden, kann der potenzielle Schaden erheblich sein. Daher ist die Sicherung der Datenübertragung zwischen diesen Geräten mithilfe von Kryptografie entscheidend. Die Sicherheit kryptografischer Algorithmen hängt jedoch von der Geheimhaltung der kryptografischen Schlüssel ab, die aufgrund der physischen Zugänglichkeit anfällig sein können. Side-Channel-Angriffe können diese Anfälligkeit ausnutzen, indem sie physikalische Parameter nutzen, die mit dem Betrieb kryptografischer Chips verbunden sind, wie z. B. die elektromagnetische Strahlung während kryptografischer Operationen.Als Antwort auf diese Herausforderung wurde in dieser Arbeit das "Leakage Source Cartography Tool" (LSC-Tool) entwickelt, um die Analyse der elektromagnetischen Strahlung in den elliptischen Kurvenkryptografie-Designs des IHP zu beschleunigen. Das LSC-Tool ermöglicht die automatisierte Auswertung von Sätzen von elektromagnetischen Traces, die aus verschiedenen Messpositionen über einen kryptografischen Chip gewonnen wurden. Die Analyse führt zu einer "Leakage Source Map" (LS-Map), die den Erfolg von elektromagnetischen Analyseangriffen an jeder Messposition darstellt. Dieses Tool bietet eine kostengünstige und schnelle Möglichkeit, die Widerstandsfähigkeit kryptografischer Designs gegen Angriffe zu bewerten, und bietet Designern Einblicke in die anfälligsten Bereiche des Chips sowie Informationen über den Leakage pro Taktzyklus.Durch den Einsatz des LSC-Tools wurde der Widerstand von zwei IHP ECC-Designs gegen horizontale differentielle elektromagnetische Analyseangriffe an 25 Messpositionen getestet. Die statistische Analyse von Traces kann mit drei Methoden durchgeführt werden: der Methode der kleinsten Quadrate, dem Difference-of-means-Test oder der Difference-of-the-mean-Methode. Die generierten LS-Maps zeigen, dass die Verwendung unterschiedlicher Methoden unterschiedliche Anzeichen für Leakagestellen liefert. Die Kombination dieser Karten erhöht die Erfolgsrate des Angriffs. Beachtenswert ist, dass im Laufe dieser Forschung klar wurde, dass das LSC-Tool angepasst werden kann, um LS-Maps für die funktionellen Blöcke von ECC-Designs zu erstellen und so die Analyse simulierter Power-Traces für das IHP ECC-Designs zu ermöglichen.
Mixed signal integrated circuits (MSICs) contain both analog and digital circuitry, integrated together on the same die. While this integration brings many benefits, it also gives rise to the issue of substrate noise coupling between the noisy digital circuitry and noise-sensitive analog circuitry. In order to counteract this issue, various substrate noise reduction methodologies had been developed so far. This thesis explores a new approach in substrate noise reduction – using a GALS (globally-synchronous, locally-asynchronous) design strategy for the digital part of a MSIC, in order to reduce the noise generation at its source. GALS architectures consist of several locally synchronous modules (LSMs) which communicate asynchronously to each other. By converting an initially synchronous architecture of digital circuitry into a GALS architecture, simultaneous switching noise generated by this circuitry can be reduced. While GALS had already been used for reducing other types of simultaneous switching noise, this is, to the best of the author’s knowledge, the first attempt to develop a GALS-based methodology for substrate noise reduction. In order to be able to theoretically analyze GALS-based methodologies for substrate noise suppression, corresponding models at high abstraction level for substrate noise generation and substrate noise propagation in lightly doped substrates (which is a type of substrate mostly used for MSICs) have been developed. These models have further been used for developing two new GALS-based substrate noise reduction methodologies: harmonic-balanced plesiochronous GALS partitioning (HB) and harmonic-and-area-based plesiochronous GALS partitioning with power domain separation (HAB). A theoretical analysis has shown that HB can reach substrate noise attenuation of up to 20log(M), where M is the number of LSMs of the resulting GALS system. On the other hand, the attenuation achievable by HAB depends on the distribution of switching current harmonics and area among the partitions, as well as from the substrate itself. For each of the two methodologies, a suitable partitioning procedure for a practical application has been developed; these partitionig procedures have been numerically evaluated in MATLAB. HB has further been embedded within the EMIAS CAD tool, where it has been evaluated on a real design example – a wireless sensor node. A special case of HAB for low frequencies has been applied for developing a test chip called SGE (power domain Separation and Galsification Experiment). The measurements on silicon have proved the applicability of the methodology.
Wireless communication has become an indispensable part of our life and the demand for achieving higher throughput with lower energy consumption is ever growing. The ambitious throughput of 100 Gb/s and beyond is now becoming a modest goal thanks to comprehensive advances in transmission technologies and protocols. One important aspect of these advances is with regard to channel coding methods and the ability to detect and correct errors at the receiver. Computations needed by such methods become generally more complicated as they become more powerful in their performance. This imposes a great challenge for researchers attempting to devise practical methods for encoding and decoding Forward-error Correction (FEC) techniques tailored for high-throughput scenarios.
In this work we focus on high-throughput Quasi-Cyclic LDPC (QC-LDPC) codes, as they have been selected as one of the main FEC techniques for the two major next generation wireless technologies, namely Wi-Fi 6 (IEEE 802.11ax) and 5G. Our target is to develop complete encoding and decoding design for these codes in order to reach the throughput of 100 Gb/s with affordable power consumption. Toward this goal, we investigate first the appropriate encoder design for these codes which can be used at such high data-rate with reasonably low power consumption. Then we propose several novel ideas for improving the decoding performance and complexity of QC-LDPC codes. The proposed novel ideas collectively facilitate a decoder able to run at 50 Gb/s with less than 12 pJ/b energy consumption for a Latin squares QC-LDPC code. All the proposed methods are practical and implementable and their effectiveness are showcased by either Field Programmable Gate Array (FPGA) or Application-Specific Integrated Circuit (ASIC) synthesis.
Der Einsatz funkbasierter Steuerungs- und Überwachungssysteme wird sich in den nächsten Jahren in der Automatisierungsindustrie wesentlich erhöhen. Funkbasierte Systeme sind flexibel, das heißt skalierbar, leicht rekonfigurierbar und mobil. Außerdem sind Funksysteme kostengünstig, insbesondere bei der Wartung.
Dennoch müssen diese Systeme hohen Anforderungen genügen, wie Sicherheit, Zuverlässigkeit, Energieverbrauch, Geschwindigkeit und Wirtschaftlichkeit. Besonders wichtig für den Einsatz drahtloser Funktechnologien in Automatisierungssystemen ist die harte Echtzeitfähigkeit bei Zykluszeiten im Bereich von unter 1 ms bei Netzwerkgrößen von bis zu 127 Knoten bei einer bidirektionalen Kommunikation mit einer Nutzdatenmenge von bis zu 48 Byte je Sensorknoten. Eine weitere Herausforderung ist die Integration dieser Systeme in bestehende Infrastrukturen, wo Koexistenz mit bereits vorhandenen drahtlosen Systemen ein kritischer Faktor ist.
Ziel dieser Arbeit ist es, die IR-UWB Funktechnik basierend auf dem Standard IEEE 802.15.4a so zu verbessern, dass sie die hohen Anforderungen der Automatisierungsindustrie erfüllt. Dabei soll gewährleistet werden, dass die Abweichungen im Vergleich zum Standard möglichst gering ausfallen und dass die Vorgaben der Regulierungsbehörden nicht verletzt werden. Diese Anforderungen begrenzen die Möglichkeiten der Optimierungen stark, was die Aufgabe noch schwieriger macht, aber zugleich wird damit sichergestellt, dass die Lösungen auch in realen Systemen eingesetzt werden können.
In dieser Arbeit wurden sowohl komplexe theoretische Ansätze als auch Optimierungen der Implementierung ausgearbeitet, in Matlab simuliert und in einem FPGA implementiert. Anschließend wurde ein ASIC gefertigt.
Um die hohen zeitlichen Anforderungen zu erfüllen, wurden die einzelnen Teile des UWB-Frames optimiert. Um dies zu erreichen mussten neue Synchronisations- und Datenübertragungs-Verfahren entwickelt werden. Dieses Verfahren ermöglicht eine parallele bidirektionale Kommunikation mit einer variablen Anzahl an Sensorknoten (bis zu 127). Eine Kombination verschiedener Fehlerkorrekturverfahren (Reed-Solomon-Code und Hamming-Code) wurde untersucht, um die Zuverlässigkeit zu erhöhen. Zusätzlich wurde ein Fehlerkorrekturverfahren für ternäre Impulssequenzen mit geringem Overhead ausgearbeitet. Dieses Verfahren erlaubt eine ausreichend gute Fehlerkorrektur und erlaubt im Gegensatz zu der Fehlerkorrektur mit dem Reed-Solomon-Code das Einhalten der zeitlichen Anforderungen.
Das Hauptergebnis dieser Arbeit ist ein für IR-UWB optimiertes Übertragungskonzept, welches eine zuverlässige und energieeffiziente Datenübertragung von unter 1 ms für einen Master und 127 Slaves ermöglicht. Teile dieses Verfahrens wurden in Hardware gefertigt und experimentell evaluiert.
Wenn alle vorgeschlagenen Optimierungen verwendet werden, kann die Zykluszeit im Vergleich zum IEEE 802.15.4a Standard, um 95% reduziert werden. Der Energieverbrauch des gesamten Netzwerkes sinkt dabei um 65%.
Einige der vorgeschlagenen Verbesserungen wurden implementiert und für die übrigen wurde gezeigt, wie sie implementiert werden können. Der Einfluss weiterer Faktoren, wie die Umschaltzeit zwischen Sender und Empfänger, und deren Auswirkungen auf den Energieverbrauch wurden untersucht.
Im Rahmen dieser Doktorarbeit entstand eine standardkonforme IR-UWB Einzelchiplösung, die um Eigenschaften erweitert wurde, die vom Standard, abweichen, aber notwendig sind um die Anforderungen der Automatisierungsindustrie zu erfüllen.
Die gefertigte Variante der Einzelchiplösung enthält nicht alle in dieser Arbeit vorgeschlagenen Optimierungen, ist aber dennoch in der Lage die Zykluszeit um 57% zu verkürzen. Obwohl dieser Chip viele zusätzliche Features bietet, wurde die Komplexität und somit auch die benötigte Chipfläche um 43% reduziert.
Elektronische Systeme sind in vielen Bereichen des täglichen Lebens zur Selbstverständlichkeit geworden. Dabei werden diese zunehmend komplexer und leistungsfähiger. Für den Entwurf entstehen dadurch Herausforderungen, die z. B. zunehmend mit Hilfe von SystemC gelöst werden. SystemC, eine C++- Klassenbibliothek, erlaubt die Modellierung von Hardwarekomponenten in einer Programmiersprache, wie sie zuvor nur mittels spezieller Hardwarebeschreibungssprachen möglich war. Die Simulation des Systems im Zusammenhang mit Fehlererscheinungen ist ein wichtiger Schritt für den Zuverlässigkeitsnachweis. Für die Simulation von Fehlern ergeben sich dabei im wesentlichen zwei Einsatzbereiche. Zum einen ist es die Fehlersimulation, welche Testmuster hinsichtlich ihrer Effektivität für den Produktionstest beurteilt. Zum anderen dient sie, häufig als simulierte Fehlerinjektion bezeichnet, dem Nachweis der Fehlertoleranz oder des Systemverhaltens im Betrieb. In dieser Arbeit werden erstmals verschiedene Aspekte und Strategien zur Simulation von Fehlern in digitalen Schaltungen als SystemC-Beschreibungen methodisch untersucht. Vorteile mit der Verwendung von SystemC bestehen z. B. in der Verwendung eines einheitlichen Beschreibungsmittels in einem durchgängigen Ablauf und in der Möglichkeit einer schnellen Ausführung. Voraussetzung für die Simulation von Hardware ist eine entsprechende Modellierungsmöglichkeit. Neben der Betrachtung der Register-Transfer- und Gatterebene wird eine neue Modellierung auf der Schalterebene präsentiert. Der Vorteil liegt hierbei in einer höheren Auflösung bei einer akzeptablen Geschwindigkeitseinbuße, wie sie insbesondere bei der Simulation von Fehlern sinnvoll ist. Bei der Modellierung der Fehler wurden neben dem klassischen Haftfehlermodell weitere Modelle kreiert, die Defekte und Störungen realitätsnäher abbilden. Die Injektion der Fehler in die Hardware-Beschreibung erfolgt mit Hilfe verschiedener Strategien. Neben der Umsetzung von Methoden, wie sie aus anderen Hardwarebeschreibungssprachen bekannt sind, werden weitere Wege in SystemC gezeigt. Hierbei nutzt man spezielle Eigenschaften der Sprache C++ und des SystemC-Kernels. Ergebnis dieser Techniken ist eine Modifikation der SystemC-Bibliothek, die zu einer sehr effizienten Fehlerinjektion führt. Bei der Einführung neuer Entwurfswerkzeuge entsteht oft das Problem der Portierung des bestehenden Know-hows. Eine Alternative kann die Kopplung von bestehenden und neuen Simulationsprogrammen sein. Probleme solcher gekoppelten Simulationen liegen z. B. im zusätzlichen Kommunikationsaufwand und der Synchronisation, welche die Ausführungszeit oft deutlich erhöhen. Die hier präsentierte Mixed-Language-Co-Simulation in Form einer Thread-Implementierung und einer weiteren Modifikation der SystemC-Bibliothek erweist sich aber als sehr effizient im Vergleich zu anderen Co-Simulationen. Eine wesentliche Herausforderung für Simulationsaufgaben besteht in ihren Ausführungen in einer akzeptablen Zeit. Es werden verschiedene Implementierungen der beschleunigten Simulation präsentiert. Dabei kommen unterschiedliche Ebenen der Parallelisierung zur Verwendung und zur Untersuchung in Bezug auf ihre Performance. Eine Kombination verschiedener Methoden führt zu einer zusätzlichen Verbesserung. Mit dieser Arbeit wird gezeigt, dass die Simulation von Fehlern in Hardware mit SystemC praktikabel und sinnvoll ist. Anhand von Simulationen und Bewertungen an Beispielschaltungen wird dies unterstrichen.
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 design of 100 Gbps wireless networks is a challenging task. A serial Reed-Solomon decoder at the targeted data rate has to operate at ultra-fast clock frequency of 12.5 GHz to fulfill timing constraints of the transmission. Receiving a single Ethernet frame on the physical layer may be faster than accessing DDR3 memory. Moreover, data link layer of wireless systems has to cope with high bit error rate (BER). The BER in wireless communication can be several orders of magnitude higher than in wired systems. For example, the IEEE 802.3ba standard for 100 Gbps Ethernet limits the BER to 1e-12 at the data link layer. On the contrary, the BER of high-speed wireless RF-frontend working in the Terahertz band might be higher than 1e-3. Performing forward error correction on the state of the art FPGA (field programmable gate arrays) and ASICs requires a highly parallelized approach. Thus, new processing concepts have to be developed for fast wireless communication. Due to the mentioned factors, the data link layer for the wireless 100G communication has to be considered as new research, and cannot be adopted from other systems.
This work provides a detailed case study about 100 Gbps data link layer design with the main focus on communication reliability improvements for ultra-high-speed wireless communication. Firstly, constraints of available hardware platforms are identified (memory capacity, memory access time, and logic area). Later, simulation of popular techniques used for data link layer optimizations are presented (frame fragmentation, frames aggregation, forward error correction, acknowledge frame compression, hybrid automatic repeat request, link adaptation, selective fragment retransmission). After that, data link layer FPGA accelerator processing ~116 Gbps of user data is presented. At the end, ASIC synthesis is considered and detailed statistics of consumed energy per bit are introduced. The research includes link adaptation techniques, which optimize goodput and consumed energy according to the channel BER. To the author’s best knowledge, it is the first published data link layer implementation dedicated for 100 Gbps wireless communication shown anywhere in the world.
The design of embedded sensor node hardware systems is a challenging task driven by the increasing demands for low power, high efficiency, low cost and small size. These unique requirements make the usage of off-the-shelf general purpose microcontrollers fairly inefficient. For many wireless sensor network applications, the design of a dedicated low power sensor node microcontroller is the only way to answer specific application requirements. According to the trends in device, process and design technology, the development of sensor node devices is relying on a cheap planar bulk-CMOS technology, where power consumption is dominated by static power loss caused by high leakage currents. To keep the power at acceptable level, designers are compelled to apply the methodologies based on advanced low power techniques that target both static and dynamic power in the chip. The decisions made early in design phase are likely to determine the energy efficiency of the final design. Therefore, the choice of power saving strategy is the key challenge in designing energy-efficient sensor node hardware.
This work presents a methodology that assists designers meeting the critical design decisions regarding power, early in the design process. The presented methodology extracts the activity profiles of single system components and applies them in the developed models for energy estimation of particular low power implementation. The energy estimation models account for the energy overhead introduced by specific low power techniques, enabling comprehensive exploration of system’s energy efficiency in a given application scenario. Special attention is paid to the methodology utilization in typical wireless sensor network applications. Accordingly, the examples of activity profiling in wireless sensor node systems are presented. The proposed methodology is integrated within a power-driven design flow and applied to the design of an embedded sensor node microcontroller. This methodology is used to perform the cross comparison of alternative low power implementations for the target system architecture. The implementation relying on concurrent clock and power gating is selected as the most energy efficient and consequently realised. Power switching cells and power control logic have been designed and characterized. Also, the final system architecture, basic system components and applied design process are described. Finally, the developed power-gated sensor node microcontroller is implemented, fabricated and successfully tested. The chip measurements results are presented and analyzed.
The analysis of different low power approaches applied to the target system architecture has shown large impact of clock gating on the system energy. In a given application scenario, the clock gating implementation has reduced 72 times the dynamic energy and 12 times the total energy of the system. The implementation of power gating technique has gained 2.8 times reduction of the leakage energy and 2 times reduction of the total system energy compared to the clock gating only implementation. The analysis of two alternative power gating approaches has emphasized the significance of partitioning in power-gated design. A heuristic partitioning that combines two specific blocks having successive activity phases into a single power domain, thereby reducing design complexity and chip area, has been shown to have positive impact on the energy efficiency of the target design.
The reliability of interconnects on integrated circuits (IC) has become a major problem in recent years because of the rise of complexity, the low-k-insulating material with reduced stability, and wear-out-effects from high current densities. The total reliability of a system on a chip is increasingly influenced by the reliability of the interconnections, which is caused by increased communication from the elevated number of integrated functional units. In recent years, studies have predicted that static faults will occur more often decreasing the reliability and the mean time to failure. The most published solutions aim to prevent dynamic faults and to correct transient faults. However, built-in self-repair (BISR) as a solution for static faults has not previously been discussed along with the other possible solutions. Theoretically, BISR can lead to higher reliability and lifetime. This is my motivation to implement BISR for integrated interconnects. Because BISR cannot repair transient and dynamic faults, I combine BISR with other approved solutions in this thesis. The results show that the combination leads to higher reliability and lifetime with less area and static power overhead compared to the existing solutions.
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.
Cryptographic operations are more and more popular because unencrypted information is a security leakage in many application areas. Possible ways to get the secret key is the misuse of test and debug facilities. These interfaces allow a reading and writing access to all internals of the ASIC. Typically they are not protected against a misuse by a third party.
In this thesis a new countermeasure against side channel attacks on scan chain and debug interfaces is proposed. The countermeasure for the scan chain interface, as well as the one for the debug interface, use the same approach, but every interface has its own security component. The approach designed and investigated in this thesis is based on a key matching method, which is resistant against reverse engineering. It is necessary from the user side, to test and debug the device, to write the secret key in an OTP. The “golden” key is embedded in specially designed units, which are used to compare the golden key with one provided in the OTP. After testing or the debugging, the key in the OTP is deleted. Even if this key is known to an attacker, it is not possible to rewrite the value into the OTP. The unit which contains golden key and compare logic is made of digital standard cells. The cells are not modified, but the wiring has a novelty. Small isolation elements from the analog circuit design are used to implement a “0” or a “1” as value for the golden key. The security feature is the resistance against optical reverse engineering because both types of the golden key and compare unit have the same footprint. Finally 128 of these units compose the 128 bit golden key.
The scan chain solution is suitable for any IP core, independent of whether it is a standalone cryptographic component, a microcontroller or a very complex system on a chip. For the scan chain test the test pattern generated by the scan pattern generator can be used without any modification. The only requirement is that before the test, the secret key has to be written into the device, and after the test, the secret key has to be deleted.
For a debug interface the same problem exists as for the scan chain interface. An access to the device is an open door for an attacker. As the debug interface is used in different development stages the approach is to implement several OTP lines - one per development stage for example. Additionally a mechanism for different access levels is offered. Depending of the access level different address spaces are unlocked.
As shown in this thesis, the solutions for a secure scan and debug interface are easy to integrate into an existing design, while area, timing and power is not influenced significantly. The scan or debug process have to be changed only slightly and the test coverage is not affected and defect analysis is possible. To summarize in this thesis a novel and innovative approach to protect scan and debug interfaces against side channel attacks was designed and evaluated.
Das Thema siedelt sich im Bereich Smart-City an. Die Einsparung von Energie ist in der öffentlichen Straßenbeleuchtung von Interesse. Die Intention ist eine Automatisierung der Beleuchtungsanlage unter Nutzung einer drahtlosen Kommunikation. Ziel ist die Untersuchung des Einsparpotentials, der benötigten Datenraten und der Robustheit. Die physiologischen Bedürfnisse des Verkehrsteilnehmers zur Einhaltung der Verkehrssicherheit werden konsequent berücksichtigt. Die Umrüstung auf eine automatisierte Beleuchtung lohnt sich besonders in ländlichen Regionen oder Anliegerstraßen, wobei in Tempo-30-Zonen eine optimale Energieeffizienz existiert. Aufgrund eines beleuchteten Anhalteweges existieren maximale Einsparungen. Das Optimum wird durch eine Extremwertanalyse bewiesen und ausführlich untersucht. Die Einsparung hängt hauptsächlich von der Verkehrsstärke, der Verkehrsgeschwindigkeit und der Dimmstufe ab. Die lineare Abhängigkeit von der Dimmstufe wird bei einer geringen Verkehrsstärke durch eine Grenzwertanalyse gezeigt. 70 % Energie lässt sich im Gegensatz zu einer Dauerbeleuchtung mit typischen Parametern sparen. Im Gegensatz zu anderen Lösungskonzepten erreicht das entwickelte Moving-Light-System Mehreinsparungen von bis zu 23 %. Lichtplaner und Kommunen können örtliche Sparpotentiale mit dem neuen Modell berechnen, um zu prüfen ob sich eine Umrüstung überhaupt lohnen würde. Die benötigte Steuerung wird abstrakt beschrieben und mit Simulink verifiziert. Zur Verbesserung der Robustheit werden das schon vorhandene Licht und die ggf. schon vorhandenen Detektoren als redundantes Übertragungsmedium untersucht. Die Nutzung des sichtbaren Lichtes lohnt sich, wenn gleichzeitig solare Energiegewinne gewünscht sind, weil der notwendige Aperturdurchmesser des Detektors im Bereich mehrerer 10 cm liegt. Neben der optischen Kommunikation wird die Helligkeit benachbarter Leuchten automatisch mitgemessen. Dies ermöglicht die Detektion von Fehlerzuständen für eine verbesserte Wartung oder für die Aktivierung möglicher redundanter Fail-Safe-Funktionen. Eine hop-weise Lokalisierung wird in dem Multihopsystem ausgenutzt, damit die Steuerung ohne Kartenmaterial und Kompasssensor auskommt. Weitere Arbeit besteht bei der Quantifizierung der Eingangsparameter vom Menschen um den Lichtbedarf zu decken. Aufgrund der anwendungsorientierten Problemstellung liegt ein Querschnittsthema aus der Verkehrswissenschaft, Automatisierungstechnik, Kommunikationstechnik und Optik vor. Es wird eine Forschungshypothese vorangestellt. Sie dient als Leitfaden und stellt die wesentlichen Erkenntnisse vorweg.
Die stetige Verkleinerung der Strukturgrößen bei der Halbleiterfertigung ermöglicht die Herstellung von integrierten Schaltungen, die immer komplexere Aufgaben erfüllen können und dabei von Generation zu Generation kompakter, energieeffizienter und kostengünstiger werden. Ein Nachteil dieser Skalierung ist die zunehmende Anfälligkeit gegenüber verschiedenen physikalischen Effekten, die im Betrieb temporäre oder permanente Fehlern verursachen können. Dies erhöht die Notwendigkeit, Maßnahmen zu implementieren, die diese Fehler kompensieren und damit die Zuverlässigkeit der Schaltung steigern.
Diese Dissertation beschreibt die Entwicklung und Implementierung von Methoden für einen gezielten Einsatz von Hardware-Redundanz beim Entwurf fehlertoleranter digitaler Schaltungen. Die entwickelten Methoden bilden die Grundlage für eine rechnergestützte Entwurfsraumexploration, bei der auf der Basis eines gegebenen Schaltungsentwurfs eine Vielzahl fehlertoleranter Entwurfskandidaten automatisiert erzeugt und evaluiert werden kann.
Zur Bewertung der Kosten der verwendeten Hardware-Redundanz werden mehrere Verfahren vorgestellt, um die Veränderung von Schaltungsfläche, Verarbeitungsleistung und Verlustleistung zu bestimmen. Dazu gehört auch die Entwicklung und Evaluierung von Methoden, die Abschätzungen auf der Grundlage struktureller Eigenschaften und vorhandener Teilergebnisse liefern. Diese erreichen eine deutliche Beschleunigung gegenüber herkömmlichen Logiksynthesen und ermöglichen so in verschiedenen Phasen der Entwurfsraumexploration einen jeweils geeigneten Kompromiss zwischen Laufzeit und Genauigkeit.
Für die Berechnung der Zuverlässigkeit und der erwarteten Lebensdauer von Entwurfskandidaten wird ein Modellierungsansatz eingeführt, der es ermöglicht, temporäre und permanente Fehler gemeinsam zu berücksichtigen. Darüber hinaus beschreibt die Dissertation einen Algorithmus zur automatischen Generierung entsprechender Modelle. Dieser wird verwendet, um für eine exemplarische Menge von Hardware-Redundanzstrategien die jeweils erreichbare Steigerung der erwarteten Lebensdauer zu berechnen. Die Ergebnisse geben Aufschluss über den Einfluss verschiedener Entwurfsentscheidungen und Randbedingungen auf die Wirksamkeit der eingesetzten Fehlertoleranzmaßnahmen.