Eingebettete Systeme: Grundlagen Eingebetteter Systeme in Cyber-Physikalischen Systemen (German Edition)
✍ Scribed by Peter Marwedel
- Publisher
- Springer Vieweg
- Year
- 2021
- Tongue
- English
- Leaves
- 486
- Category
- Library
No coin nor oath required. For personal study only.
✦ Synopsis
Ein Alleinstellungsmerkmal dieses Open-Access-Lehrbuchs ist die umfassende Einführung in das Grundlagenwissen über eingebettete Systeme mit Anwendungen in cyber-physischen Systemen und dem Internet der Dinge. Es beginnt mit einer Einführung in das Gebiet und eine Übersicht über Spezifikationsmodelle und -sprachen für eingebettete und cyber-physikalische Systeme. Es gibt einen kurzen Überblick über die für solche Systeme verwendeten Hardware-Geräte und stellt die Grundlagen der Systemsoftware für eingebettete Systeme vor, einschließlich Echtzeit-Betriebssystemen.
Der Autor erörtert auch Evaluierungs- und Validierungstechniken für eingebettete Systeme und gibt einen Überblick über Techniken zur Abbildung von Anwendungen auf Ausführungsplattformen, inklusive Multi-Core-Plattformen. Eingebettete Systeme müssen unter engen Randbedingungen arbeiten, daher enthält das Buch auch einen ausgewählten Satz von Optimierungstechniken, mit einem Schwerpunkt bei Software-Optimierungstechniken. Das Buch schließt mit einer kurzen Übersicht über das Testen. Die vierte Auflage wurde aktualisiert und überarbeitet, um neue Trends und Technologien zu berücksichtigen, wie z. B. die Bedeutung von cyber-physischen Systemen (CPS) und dem Internet der Dinge (IoT), die Entwicklung von Single-Core-Prozessoren hin zu Multi-Core-Prozessoren und die zunehmende Bedeutung von Energieeffizienz und thermischen Fragen.
✦ Table of Contents
Vorwort
Warum sollte man dieses Buch lesen?
Wer sollte dieses Buch lesen?
Wie unterscheidet sich dieses Buch von früheren Auflagen?
Danksagungen
Inhaltsverzeichnis
Über den Autor
Häufig benutzte mathematische Symbole
Kapitel 1 Einleitung
1.1 Geschichte der Begriffe
1.2 Potential
1.3 Herausforderungen
1.4 Gemeinsame Eigenschaften
1.5 Lehrplan-Integration von Eingebetteten Systemen, CPS und IoT
1.6 Entwurfsflüsse
1.7 Struktur dieses Buches
1.8 Aufgaben
Kapitel 2 Spezifikation und Modellierung
2.1 Anforderungen
2.2 Berechnungsmodelle
2.3 Frühe Entwurfsphasen
2.3.1 Anwendungsfälle
2.3.2 (Message) Sequence Charts
2.3.3 Differentialgleichungen
2.4 Kommunizierende endliche Automaten
2.4.1 Zeitgesteuerte Automaten
2.4.2 StateCharts: implizite Kommunikation über gemeinsamen
2.4.3 Synchrone Sprachen
2.4.4 Nachrichtenaustausch am Beispiel von SDL
2.5 Datenfluss
2.5.1 Überblick
2.5.2 Kahn-Prozessnetzwerke
2.5.3 SDF
2.5.4 Simulink
2.6 Petrinetze
2.6.1 Einführung
2.6.2 Bedingungs/Ereignis-Netze
2.6.3 Stellen/Transitions-Netze
2.6.4 Prädikat/Transitions-Netze
2.6.5 Bewertung
2.7 Diskrete, ereignisbasierte Sprachen
2.7.1 Simulationszyklus diskreter Ereignissysteme
2.7.2 Mehrwertige Logik
2.7.3 Transaktionsbasierte Modellierung
2.7.4 SpecC
2.7.5 SystemC
2.7.6 VHDL
2.7.7 Verilog and SystemVerilog
2.8 Von-Neumann-Sprachen
2.8.1 CSP
2.8.2 Ada
2.8.3 Kommunikationsbibliotheken
2.8.4 Weitere Sprachen
2.9 Ebenen der Hardware-Modellierung
2.10 Vergleich der Berechnungsmodelle
2.10.1 Kriterien
2.10.2 Unified Modeling Language (UML)
2.10.3 Ptolemy II
2.11 Aufgaben
Kapitel 3 Hardware eingebetteter Systeme
3.1 Einleitung
3.2 Eingabe – Schnittstelle zwischen physischer und Cyber-Welt
3.2.1 Sensoren
3.2.2 Zeitdiskretisierung: Sample-and-hold-Schaltungen
3.2.3 Fourier-Approximation von Signalen
3.2.4 Wertediskretisierung: A/D-Wandler
3.3 Verarbeitungseinheiten
3.3.1 Anwendungsspezifische integrierte Schaltkreise
3.3.2 Prozessoren
3.3.3 Rekonfigurierbare Logik
3.4 Speicher
3.4.1 Zielkonflikte
3.4.2 Speicherhierarchien
3.4.3 Registersätze
3.4.4 Caches
3.4.5 Scratchpad-Speicher
3.5 Kommunikation
3.5.1 Anforderungen
3.5.2 Elektrische Robustheit
3.5.3 Echtzeitgarantien
3.5.4 Beispiele
3.6 Ausgabe – Schnittstelle zwischen Cyber- und physischer Welt
3.6.1 D/A-Wandler
3.6.2 Abtasttheorem
3.6.3 Pulsbreitenmodulation
3.6.4 Aktuatoren
3.7 Elektrische Energie
3.7.1 Energieerzeugung
3.7.2 Energiespeicherung
3.7.3 Effiziente Nutzung elektrischer Energie
3.8 Sichere Hardware
3.9 Aufgaben
Kapitel 4 Systemsoftware
4.1 Eingebettete Betriebssysteme
4.1.1 Allgemeine Anforderungen
4.1.2 Echtzeitbetriebssysteme
4.1.3 Virtuelle Maschinen
4.2 Protokolle für Ressourcen-Zugriffe
4.2.1 Prioritätsumkehr
4.2.2 Prioritätsvererbung
4.2.3 Priority Ceiling-Protokoll
4.2.4 Stack Resource Policy-Protokoll
4.3 ERIKA
4.4 Linux für eingebettete Systeme
4.4.1 Struktur und Größe von Linux für eingebettete Systeme
4.4.2 Echtzeiteigenschaften
4.4.3 Dateisysteme für Flash-Speicher
4.4.4 Verringerung des Hauptspeicherbedarfs
4.4.5 uClinux – Linux für Systeme ohne MMU
4.4.6 Evaluation der Nutzung von Linux in eingebetteten Systemen
4.5 Hardware-Abstraktionsschicht
4.6 Middleware
4.6.1 OSEK/VDX COM
4.6.2 CORBA
4.6.3 POSIX Threads (Pthreads)
4.6.4 UPnP und DPWS
4.7 Echtzeitdatenbanken
4.8 Aufgaben
Kapitel 5 Bewertung und Validierung
5.1 Einleitung
5.1.1 Begriffe
5.1.2 Multikriterielle Optimierung
5.1.3 Relevante Kriterien
5.2 Performanzbewertung
5.2.1 Frühe Phasen
5.2.2 Größtmögliche Ausführungszeiten
5.2.3 Realzeitkalkül
5.3 Qualitätsmetriken
5.3.1 Näherungsweises Rechnen
5.3.2 Einfache Qualitätskriterien
5.3.3 Kriterien für die Datenanalyse
5.4 Modelle des Energieverbrauchs und der Leistungsaufnahme
5.4.1 Allgemeine Eigenschaften
5.4.2 Energiemodell für Speicher
5.4.3 Energiemodell für Maschinenbefehle
5.4.4 Energiemodell für Prozessoreinheiten
5.4.5 Energiemodell für Prozessor und Speicher
5.4.6 Energiemodell für eine Anwendung
5.4.5 Energiemodell für mehrere Anwendungen und Hardware-Multithreading
5.4.6 Energiemodell für Android-Mobiltelefone
5.4.7 Größtmöglicher Energieverbrauch
5.5 Thermische Modelle
5.5.1 Stationäres Verhalten
5.5.2 Transientes Verhalten
5.6 Verlässlichkeits- und Risikoanalyse
5.6.1 Aspekte der Verlässlichkeit
5.6.2 Informationssicherheit
5.6.3 Betriebssicherheit
5.6.4 Zuverlässigkeit
5.6.5 Fehlerbaumanalyse, Fehlermöglichkeits- und Einflussanalyse
5.7 Simulation
5.8 Rapid Prototyping und Emulation
5.9 Formale Verifikation
5.10 Aufgaben
Kapitel 6 Abbildung von Anwendungen
6.1 Problemdefinition
6.1.1 Präzisierung des Entwurfsproblems
6.1.2 Typen von Scheduling-Problemen
6.2 Scheduling für Einzelprozessoren
6.2.1 Scheduling ohne Reihenfolgebeschränkungen
6.2.2 Scheduling mit Reihenfolgebeschränkungen
6.2.3 Periodisches Scheduling ohne Reihenfolgebeschränkungen
6.2.4 Periodisches Scheduling mit Reihenfolgebeschränkungen
6.2.5 Sporadische Ereignisse
6.3 Scheduling für unabhängige Jobs auf identischen Multiprozessoren
6.3.1 Partitioniertes Scheduling
6.3.2 Globales Scheduling mit dynamischen Prioritäten
6.3.3 Globales Scheduling für feste Job-Prioritäten
6.3.4 Globales Scheduling für feste Task-Prioritäten
6.4 Abhängige Jobs auf homogenen Multiprozessor-Systemen
6.4.1 As-Soon-As-Possible-Scheduling
6.4.2 As-Late-As-Possible-Scheduling
6.4.3 List-Scheduling
6.4.4 Optimales Scheduling mit Ganzzahliger Programmierung
6.5 Abhängige Jobs auf heterogenen Multiprozessoren
6.5.1 Problem-Beschreibung
6.5.2 Statisches Scheduling mit lokalen Heuristiken
6.5.3 Statisches Scheduling mit Ganzzahliger Programmierung
6.5.4 Statisches Scheduling mit Evolutionären Algorithmen
6.5.5 Dynamisches und Hybrides Scheduling
6.6 Aufgaben
Kapitel 7 Optimierung
7.1 High-Level-Optimierungen
7.1.1 Einfache Schleifentransformationen
7.1.2 Kachel-/Blockweise Verarbeitung von Schleifen
7.1.3 Aufteilen von Schleifen
7.1.4 Falten von Feldern
7.1.5 Wandlung von Gleitkomma- in Festkommadarstellung
7.2 Nebenläufigkeit von Tasks
7.3 Compiler für eingebettete Systeme
7.3.1 Einleitung
7.3.2 Energiegewahre Übersetzung
7.3.3 Speicherarchitektur-gewahre Übersetzung
7.3.4 Zusammenführung von Compilern und Zeitanalyse
7.4 Energieverwaltung und thermisches Management
7.4.1 Dynamische Spannungsskalierung (DVS)
7.4.2 Dynamische Leistungsverwaltung (DPM)
7.4.3 Verwaltung des thermischen Verhaltens
7.5 Aufgaben
Kapitel 8 Test
8.1 Anwendungsbereich
8.2 Testverfahren
8.2.1 Testmustererzeugung für Modelle auf Gatterebene
8.2.2 Selbsttestprogramme
8.3 Auswertung von Testmustermengen und Systemrobustheit
8.3.1 Fehlerüberdeckung
8.3.2 Fehlersimulation
8.3.3 Fehlerinjektion
8.4 Entwurf für Testbarkeit
8.4.1 Motivation
8.4.2 Scanpfad-Entwurf
8.4.3 Signaturanalyse
8.4.4 Erzeugung von Pseudozufalls-Testmustern
8.5 Aufgaben
Anhang A Ganzzahlige Lineare Programmierung
Anhang B Kirchhoffsche Gesetze und Operationsverstärker
Anhang C Seitenadressierung und Speicherverwaltungseinheiten
Literaturverzeichnis
Sachverzeichnis
📜 SIMILAR VOLUMES
<p>Ein Lehrbuch, das die Brücke zwischen der Mechatronik und der Entwicklung eingebetteter Software schlägt. Zunächst werden die Grundlagen eingebetteter Systeme, die die Gebiete Systemtheorie, Steuerung und Regelung sowie Sensorik und Aktuatorik umfassen, für Informatiker verständlich umrissen. Im
<p>Ein Lehrbuch, das die Brücke zwischen der Mechatronik und der Entwicklung eingebetteter Software schlägt. Zunächst werden die Grundlagen eingebetteter Systeme, die die Gebiete Systemtheorie, Steuerung und Regelung sowie Sensorik und Aktuatorik umfassen, für Informatiker verständlich umrissen. Im
<p><span>Eingebettete Systeme übernehmen komplexe Steuerungs- und Regelungsaufgaben für technische Systeme. Ihre Funktionalität wird durch das Zusammenspiel von Spezialhardware, Standardprozessoren, Peripherie und Software realisiert. Oft liegt der Schwerpunkt auf Hardware-Aspekten. Tatsächlich spie
Cyber-Physical Systems adressieren das Zusammenwachsen softwareintensiver eingebetteter Systeme mit den globalen digitalen Netzen. Sie ermöglichen neuartige industrielle Anwendungen mit hohem wirtschaftlichem Potential. Beispiele sind etwa selbststeuernde Logistiksysteme, integrierte Systeme zur Ver