This book introduces the concept of approximate computing for software and hardware designs and its impact on the reliability of embedded systems. It presents approximate computing methods and proposes approximate fault tolerance techniques applied to programmable hardware and embedded software to provide reliability at low computational costs. The book also presents fault tolerance techniques based on approximate computing, thus presenting how approximate computing can be applied to safety-critical systems.
Author(s): Gennaro S. Rodrigues, Fernanda L. Kastensmidt, Alberto Bosio
Series: Synthesis Lectures on Engineering, Science, and Technology
Publisher: Springer
Year: 2022
Language: English
Pages: 136
City: Cham
Preface
Contents
Acronyms
Part I Motivation and Introduction
1 Introduction
1.1 Embedded Systems and Approximation
1.2 Safety-critical Systems
1.3 Fault Tolerance
1.4 This Book
2 An Introduction to the Approximate Computing Paradigm
2.1 Summary
2.2 Quality Metrics
2.3 Approximation Methods
2.3.1 Types of Approximation
2.3.2 Technological Implementations
2.4 Conclusion
Part II Radiation Effects and Evaluation Methodologies
3 Radiation Effects on Digital Devices
3.1 Summary
3.2 Radiation Environment
3.3 Radiation Effects
3.3.1 Single Event Effects (SEE)
3.3.2 Total Ionizing Dose (TID)
3.3.3 Displacement Damage (DD)
3.4 Radiation-Induced Soft Errors in Zynq-7000 FPGA
3.5 Conclusion
4 Methodologies for Testing and Assessing Electronic and Computing Systems
4.1 Summary
4.2 Fault Tolerance Metrics
4.3 Onboard Fault Injection Emulation on FPGA
4.4 Onboard Fault Injection Emulation on Embedded Processor
4.5 Fault Injection Simulation
4.6 Laser Fault Injection
4.7 Conclusion
Part III Fault Tolerance and Approximation in Practice
5 Embedded Systems Fault Tolerance
5.1 Summary
5.2 Fault Tolerance
5.3 Reliability of Parallel Embedded Software on Multicore Processors
5.4 Parallel Fault Tolerance
5.5 Conclusion
6 Approximate Computing and Fault Tolerance
6.1 Summary
6.2 Approximation Methods
6.2.1 Data Precision Reduction
6.2.2 Successive Approximation
6.2.3 Taylor Series Approximation
6.3 Approximate Fault Tolerance: Discussion and Motivations
6.4 Approximate Triple Modular Redundancy (ATMR)
6.4.1 Hardware ATMR Based on Data Precision Approximation
6.4.2 Software ATMR Based on Successive Approximation and Loop-Perforation
6.4.3 Parallel Software ATMR Based on Function Skipping
6.5 Parallel Approximate Error Detection (PAED)
6.6 Conclusion
7 Experimental Analysis and Discussion
7.1 Summary
7.2 Approximation Methods
7.2.1 Taylor Series Approximation
7.2.2 Successive Approximation and Loop-Perforation
7.2.3 Behavior and Application Evaluation on Operating Systems
7.3 Hardware ATMR
7.3.1 Random Accumulated Fault Injection
7.3.2 Exhaustive Fault Injection
7.4 Software ATMR
7.5 PAED
8 Final Conclusions and Remarks
8.1 Summary
8.2 Approximate Computing
8.3 Safety-Critical Systems, Reliability, and Approximate Fault Tolerance
8.4 Experimental Results