Embedded System Design : : Embedded Systems Foundations of Cyber-Physical Systems, and the Internet of Things.
Saved in:
Superior document: | Embedded Systems Series |
---|---|
: | |
Place / Publishing House: | Cham : : Springer International Publishing AG,, 2021. ©2021. |
Year of Publication: | 2021 |
Edition: | 4th ed. |
Language: | English |
Series: | Embedded Systems Series
|
Online Access: | |
Physical Description: | 1 online resource (446 pages) |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
LEADER | 10693nam a22004453i 4500 | ||
---|---|---|---|
001 | 5006463481 | ||
003 | MiAaPQ | ||
005 | 20240229073839.0 | ||
006 | m o d | | ||
007 | cr cnu|||||||| | ||
008 | 240229s2021 xx o ||||0 eng d | ||
020 | |a 9783030609108 |q (electronic bk.) | ||
020 | |z 9783030609092 | ||
035 | |a (MiAaPQ)5006463481 | ||
035 | |a (Au-PeEL)EBL6463481 | ||
035 | |a (OCoLC)1235599050 | ||
040 | |a MiAaPQ |b eng |e rda |e pn |c MiAaPQ |d MiAaPQ | ||
050 | 4 | |a TK7867-7867.5 | |
100 | 1 | |a Marwedel, Peter. | |
245 | 1 | 0 | |a Embedded System Design : |b Embedded Systems Foundations of Cyber-Physical Systems, and the Internet of Things. |
250 | |a 4th ed. | ||
264 | 1 | |a Cham : |b Springer International Publishing AG, |c 2021. | |
264 | 4 | |c ©2021. | |
300 | |a 1 online resource (446 pages) | ||
336 | |a text |b txt |2 rdacontent | ||
337 | |a computer |b c |2 rdamedia | ||
338 | |a online resource |b cr |2 rdacarrier | ||
490 | 1 | |a Embedded Systems Series | |
505 | 0 | |a Intro -- Preface -- Why Should You Read This Book? -- Who Should Read the Book? -- How Is This Book Different from Earlier Editions? -- Acknowledgments -- Contents -- About the Author -- Frequently Used Mathematical Symbols -- 1 Introduction -- 1.1 History of Terms -- 1.2 Opportunities -- 1.3 Challenges -- 1.4 Common Characteristics -- 1.5 Curriculum Integration of Embedded Systems, CPS, and IoT -- 1.5.1 Prerequisites -- 1.5.2 Recommended Additional Courses -- 1.6 Design Flows -- 1.7 Structure of This Book -- 1.8 Problems -- 2 Specifications and Modeling -- 2.1 Requirements -- 2.2 Models of Computation -- 2.3 Early Design Phases -- 2.3.1 Use Cases -- 2.3.2 (Message) Sequence Charts and Time/Distance Diagrams -- 2.3.3 Differential Equations -- 2.4 Communicating Finite State Machines (CFSMs) -- 2.4.1 Timed Automata -- 2.4.2 StateCharts -- Modeling of Hierarchy -- Timers -- Edge Labels and StateMate Semantics -- Evaluation and Extensions -- 2.4.3 Synchronous Languages -- Motivation -- Examples of Synchronous Languages: Esterel, Lustre, and SCADE -- 2.4.4 Message Passing: SDL as an Example -- Features of the Language -- Evaluation of SDL -- 2.5 Data Flow -- 2.5.1 Scope -- 2.5.2 Kahn Process Networks -- 2.5.3 SDF -- 2.5.4 Simulink -- 2.6 Petri Nets -- 2.6.1 Introduction -- 2.6.2 Condition/Event Nets -- 2.6.3 Place/Transition Nets -- 2.6.4 Predicate/Transition Nets -- 2.6.5 Evaluation -- 2.7 Discrete Event-Based Languages -- 2.7.1 Basic Discrete Event Simulation Cycle -- 2.7.2 Multi-Valued Logic -- One Signal Strength (Two Logic Values) -- Two Signal Strengths (Three and Four Logic Values) -- Three Signal Strengths (Seven Signal Values) -- Four Signal Strengths (Ten Signal Values) -- Five Signal Strengths -- 2.7.3 Transaction-Level Modeling (TLM) -- 2.7.4 SpecC -- 2.7.5 SystemC -- 2.7.6 VHDL -- Introduction -- Entities and Architectures -- Assignments. | |
505 | 8 | |a VHDL Processes -- The VHDL Simulation Cycle -- IEEE 1164 -- 2.7.7 Verilog and SystemVerilog -- 2.8 von Neumann Languages -- 2.8.1 CSP -- 2.8.2 Ada -- 2.8.3 Communication Libraries -- MPI -- OpenMP -- 2.8.4 Additional Languages -- 2.9 Levels of Hardware Modeling -- 2.10 Comparison of Models of Computation -- 2.10.1 Criteria -- 2.10.2 Unified Modeling Language (UML) -- 2.10.3 Ptolemy II -- 2.11 Problems -- 3 Embedded System Hardware -- 3.1 Introduction -- 3.2 Input: Interface Between Physical and Cyber-World -- 3.2.1 Sensors -- 3.2.2 Discretization of Time: Sample-and-Hold Circuits -- 3.2.3 Fourier Approximation of Signals -- 3.2.4 Discretization of Values: Analog-to-Digital Converters -- Flash ADC -- Successive Approximation -- Pipelined Converters -- Other Converters -- Comparison of ADCs -- Quantization Noise -- 3.3 Processing Units -- 3.3.1 Application-Specific Integrated Circuits (ASICs) -- 3.3.2 Processors -- Energy Efficiency -- Code Size Efficiency -- Execution Time Efficiency Using Digital Signal Processing as an Example -- Multimedia and Short Vector Instruction Sets -- Very Long Instruction Word (VLIW) Processors -- VLIW Pipelines -- Multi-core Processors -- Graphics Processing Units (GPUs) -- Multiprocessor Systems on a Chip (MPSoCs) -- 3.3.3 Reconfigurable Logic -- 3.4 Memories -- 3.4.1 Conflicting Goals -- 3.4.2 Memory Hierarchies -- 3.4.3 Register Files -- 3.4.4 Caches -- 3.4.5 Scratchpad Memories -- 3.5 Communication -- 3.5.1 Requirements -- 3.5.2 Electrical Robustness -- 3.5.3 Guaranteeing Real-Time Behavior -- 3.5.4 Examples -- 3.6 Output: Interface Between Cyber and Physical World -- 3.6.1 Digital-to-Analog Converters -- 3.6.2 Sampling Theorem -- 3.6.3 Pulse-Width Modulation -- 3.6.4 Actuators -- 3.7 Electrical Energy -- 3.7.1 Energy Sources -- 3.7.2 Energy Storage -- 3.7.3 Energy Efficiency of Hardware Components. | |
505 | 8 | |a The Case of Mobile Phones -- Sensor Networks -- 3.8 Secure Hardware -- 3.9 Problems -- 4 System Software -- 4.1 Embedded Operating Systems -- 4.1.1 General Requirements -- 4.1.2 Real-Time Operating Systems -- 4.1.3 Virtual Machines -- 4.2 Resource Access Protocols -- 4.2.1 Priority Inversion -- 4.2.2 Priority Inheritance -- 4.2.3 Priority Ceiling Protocol -- 4.2.4 Stack Resource Policy -- 4.3 ERIKA -- 4.4 Embedded Linux -- 4.4.1 Embedded Linux Structure and Size -- 4.4.2 Real-Time Properties -- 4.4.3 Flash Memory File Systems -- 4.4.4 Reducing RAM Usage -- 4.4.5 uClinux: Linux for MMU-Less Systems -- 4.4.6 Evaluating the Use of Linux in Embedded Systems -- 4.5 Hardware Abstraction Layer -- 4.6 Middleware -- 4.6.1 OSEK/VDX COM -- 4.6.2 CORBA -- 4.6.3 POSIX Threads (Pthreads) -- 4.6.4 UPnP and DPWS -- 4.7 Real-Time Databases -- 4.8 Problems -- 5 Evaluation and Validation -- 5.1 Introduction -- 5.1.1 Scope -- 5.1.2 Multi-Objective Optimization -- 5.1.3 Relevant Objectives -- 5.2 Performance Evaluation -- 5.2.1 Early Phases -- 5.2.2 WCET Estimation -- 5.2.3 Real-Time Calculus -- 5.3 Quality Metrics -- 5.3.1 Approximate Computing -- 5.3.2 Simple Criteria of Quality -- 5.3.3 Criteria for Data Analysis -- 5.4 Energy and Power Models -- 5.4.1 General Properties -- 5.4.2 Energy Model for Memories -- 5.4.3 Energy Model for Instructions -- 5.4.4 Energy Model for Functional Processor Units -- 5.4.5 Energy Model for Processor and Memory -- 5.4.6 Energy Model for an Application -- 5.4.7 Energy Model for Multiple Applications with Hardware Multithreading -- 5.4.8 Energy Model for an Android Mobile Phone -- 5.4.9 Worst Case Energy Consumption -- 5.5 Thermal Models -- 5.5.1 Steady-State Behavior -- 5.5.2 Transient State Behavior -- 5.6 Dependability and Risk Analysis -- 5.6.1 Aspects of Dependability -- 5.6.2 Security Analysis -- 5.6.3 Safety Analysis. | |
505 | 8 | |a 5.6.4 Reliability Analysis -- 5.6.5 Fault Tree Analysis, Failure Mode, and Effect Analysis -- 5.7 Simulation -- 5.8 Rapid Prototyping and Emulation -- 5.9 Formal Verification -- 5.10 Problems -- 6 Application Mapping -- 6.1 Definition of Scheduling Problems -- 6.1.1 Elaboration on the Design Problem -- 6.1.2 Types of Scheduling Problems -- The α Field -- The β Field -- The γ Field -- 6.2 Scheduling for Uniprocessors -- 6.2.1 Scheduling for Independent Jobs -- Earliest Due Date (EDD) Algorithm -- Earliest Deadline First (EDF) Algorithm -- Least Laxity (LL) Algorithm -- Scheduling Without Preemption -- 6.2.2 Scheduling with Precedence Constraints -- Task Graphs -- Latest Deadline First (LDF) Algorithm -- 6.2.3 Periodic Scheduling Without Precedence Constraints -- Notation -- Rate Monotonic Scheduling -- Earliest Deadline First Scheduling -- Explicit-Deadline Tasks -- Deadline Monotonic Scheduling -- 6.2.4 Periodic Scheduling with Precedence Constraints -- 6.2.5 Sporadic Events -- 6.3 Scheduling for Independent Jobs on Identical Multiprocessors -- 6.3.1 Partitioned Scheduling -- 6.3.2 Global Dynamic-Priority Scheduling -- Proportional Fair (Pfair) Scheduling -- 6.3.3 Global Fixed-Job-Priority Scheduling -- G-EDF Scheduling -- EDZL Scheduling -- 6.3.4 Global Fixed-Task-Priority Scheduling -- Global Rate Monotonic Scheduling -- RMZL Scheduling -- Partitioned Scheduling for Explicit Deadlines -- 6.4 Dependent Jobs on Homogeneous Multiprocessors -- 6.4.1 As-Soon-as-Possible Scheduling -- 6.4.2 As-Late-as-Possible Scheduling -- 6.4.3 List Scheduling -- 6.4.4 Optimal Scheduling with Integer Linear Programming -- 6.5 Dependent Jobs on Heterogeneous Multiprocessors -- 6.5.1 Problem Description -- 6.5.2 Static Scheduling with Local Heuristics -- 6.5.3 Static Scheduling with Integer Linear Programming -- 6.5.4 Static Scheduling with Evolutionary Algorithms. | |
505 | 8 | |a 6.5.5 Dynamic and Hybrid Scheduling -- 6.6 Problems -- 7 Optimization -- 7.1 High-Level Optimizations -- 7.1.1 Simple Loop Transformations -- 7.1.2 Loop Tiling/Blocking -- 7.1.3 Loop Splitting -- 7.1.4 Array Folding -- 7.1.5 Floating-Point to Fixed-Point Conversion -- 7.2 Task-Level Concurrency Management -- 7.3 Compilers for Embedded Systems -- 7.3.1 Introduction -- 7.3.2 Energy-Aware Compilation -- 7.3.3 Memory-Architecture Aware Compilation -- Compilation Techniques for Scratchpads -- Non-overlaying Allocation -- Overlaying Allocation -- Multiple Threads/Processes -- Supporting Different Architectures and Objectives -- 7.3.4 Reconciling Compilers and Timing Analysis -- 7.4 Power and Thermal Management -- 7.4.1 Dynamic Voltage and Frequency Scaling (DVFS) -- 7.4.2 Dynamic Power Management (DPM) -- 7.4.3 Thermal Management -- 7.5 Problems -- 8 Test -- 8.1 Scope -- 8.2 Test Procedures -- 8.2.1 Test Pattern Generation for Gate-Level Models -- 8.2.2 Self-Test Programs -- 8.3 Evaluation of Test Pattern Sets and System Robustness -- 8.3.1 Fault Coverage -- 8.3.2 Fault Simulation -- 8.3.3 Fault Injection -- 8.4 Design for Testability -- 8.4.1 Motivation -- 8.4.2 Scan Design -- 8.4.3 Signature Analysis -- 8.4.4 Pseudo-random Test Pattern Generation -- 8.5 Problems -- Correction to: Evaluation and Validation -- A Integer Linear Programming -- B Kirchhoff's Laws and Operational Amplifiers -- B.1 Kirchhoff's Laws -- B.2 Operational Amplifiers -- C Paging and Memory Management Units -- References -- Index. | |
588 | |a Description based on publisher supplied metadata and other sources. | ||
590 | |a Electronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2024. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries. | ||
655 | 4 | |a Electronic books. | |
776 | 0 | 8 | |i Print version: |a Marwedel, Peter |t Embedded System Design |d Cham : Springer International Publishing AG,c2021 |z 9783030609092 |
797 | 2 | |a ProQuest (Firm) | |
830 | 0 | |a Embedded Systems Series | |
856 | 4 | 0 | |u https://ebookcentral.proquest.com/lib/oeawat/detail.action?docID=6463481 |z Click to View |