mirror of
https://github.com/2martens/uni.git
synced 2026-05-07 03:46:25 +02:00
[ES] Zusammenfassung hinzugefügt (WIP)
Signed-off-by: Jim Martens <github@2martens.de>
This commit is contained in:
224
es/Klausurvorbereitung/Zusammenfassung.md
Normal file
224
es/Klausurvorbereitung/Zusammenfassung.md
Normal file
@ -0,0 +1,224 @@
|
||||
# Einführung
|
||||
|
||||
## Anwendungsgebiete
|
||||
|
||||
* ES werden in unterschiedlichen Bereichen verwendet:
|
||||
** Autos
|
||||
** Flugzeuge
|
||||
** Züge
|
||||
** Mobiltelefone
|
||||
** Gesundheitssektor
|
||||
** Sicherheit
|
||||
** TVs
|
||||
** Fabriken
|
||||
** Intelligente Gebäude
|
||||
** Logistik (RFID) - Tracking von Objekten
|
||||
** Robotik
|
||||
|
||||
## Wichtige Eigenschaften
|
||||
* dependable
|
||||
** Reliability - Probability that system will not fail
|
||||
** Maintainability - Probability that failing system can be repaired within certain timeframe
|
||||
** Availability - Probability that system is available
|
||||
** Safety - System will not cause any harm
|
||||
** Security - confidential data remains confidential and authentic communication is guaranteed
|
||||
* efficient
|
||||
** Energie
|
||||
** Laufzeiteffizienz
|
||||
** Codegröße
|
||||
** Gewicht/Masse der Hardware
|
||||
** Kosten
|
||||
|
||||
ES müssen oftmals Echtzeitbedingungen umsetzen.
|
||||
Zwei Arten:
|
||||
* harte Bedingungen - Nicht-Einhalten führt zu Katastrophe
|
||||
* weiche Bedingungen - alle anderen Zeitbedingungen
|
||||
|
||||
weitere Eigenschaften
|
||||
* reaktiv
|
||||
* hybrid - analoge und digitale Bestandteile
|
||||
* DUI - dedicated user interface
|
||||
|
||||
## Herausforderungen im Design von ES
|
||||
* Software muss auf Hardware abgestimmt werden
|
||||
* ¬funktionale Bedingungen müssen eingehalten werden
|
||||
** Echtzeitbedingungen
|
||||
** Energieeffizienz
|
||||
** Dependability - Verlässlichkeit
|
||||
* Zeitmanagement ist eine der größten Herausforderungen
|
||||
* Concurrency (Nebenläufigkeit) ist essentiell
|
||||
* Kombinieren von Komponenten ist wichtig für Design
|
||||
* traditionelle sequentielle Prog.Sprachen sind nicht ideal
|
||||
|
||||
## Designflow
|
||||
|
||||
* rounded boxes - stored info
|
||||
* rectangles - transformations on data
|
||||
* application knowledge
|
||||
-> specification
|
||||
-> HW components
|
||||
-> system software
|
||||
=> design repository -> design -> [test]
|
||||
| |
|
||||
[application mapping]
|
||||
* [optimization]
|
||||
* [evaluation & validation]
|
||||
* [test]
|
||||
|
||||
* Figure 1.6 page 13
|
||||
|
||||
# Spezifikationen und Modellierung
|
||||
|
||||
## Bedingungen
|
||||
|
||||
* Model: Simplification of another entity, which can be a
|
||||
physical thing or another model. The model contains exactly those
|
||||
characteristics and properties of the modeled entity that are
|
||||
relevant for a given task. A model is minimal with respect to a
|
||||
task if it does not contain any other characteristics than those
|
||||
relevant for the task.
|
||||
|
||||
Modelle werden in Sprachen beschrieben. Sprachen sollten
|
||||
folgende Eigenschaften aufweisen (Wunschliste):
|
||||
|
||||
* Hierarchie
|
||||
** Verhaltshierarchien - enthalten für Beschreibung des Systemverhaltens notwendige Objekte, z.B. Zustände, Events
|
||||
** Strukturhierarchien - beschreiben physische Komponenten des Systems
|
||||
* Komponenten-basiertes Design - Verhalten des Systems muss von Verhalten der Komponenten ableitbar sein
|
||||
* Nebenläufigkeit
|
||||
* Synchronisation und Kommunikation
|
||||
* Zeitverhalten (timing behavior)
|
||||
** elapsed time (vergangene Zeit) seit X
|
||||
** Verzögern von Prozessen für spezifizierte Zeit
|
||||
** being able to specify timeouts
|
||||
** Fähigkeit Deadlines und Schedules zu spezifizieren
|
||||
* Zustandorientiertes Verhalten
|
||||
* Eventhandling
|
||||
* Ausnahmeorientiertes Verhalten
|
||||
* Vorhandensein von Programmierelementen
|
||||
* Ausführbarkeit
|
||||
* Support für Design großer Systeme
|
||||
* Support für Anwendungsdomain
|
||||
* Lesbarkeit
|
||||
* Portabilität und Flexibilität
|
||||
* Termination - feasible to identify processed which will terminate from the specification
|
||||
* Support für ¬Standard I/O-Devices
|
||||
* ¬funktionale Eigenschaften
|
||||
* Support für Design von verlässlichen (dependable) Systemen
|
||||
* keine Hindernisse für Generierung effizienter Implementierungen
|
||||
* angemessenes MoC (Model of Computation)
|
||||
|
||||
## Models of computation (Berechnungsmodelle)
|
||||
|
||||
* MoCs definieren:
|
||||
** Komponenten
|
||||
** Kommunikationsprotokolle
|
||||
|
||||
Beziehungen zwischen diesen Punkten können in Graphen
|
||||
festgehalten werden.
|
||||
|
||||
Models of Communication:
|
||||
* shared memory
|
||||
* message passing
|
||||
** async message passing - non-blocking communication
|
||||
** sync message passing - blocking communication, rendez-vous based communication
|
||||
** extended rendez-vous, remote invocation
|
||||
|
||||
Organisation von Berechnungen innerhalb der Komponenten
|
||||
* Von-Neumann Modell
|
||||
* discrete event model
|
||||
* endliche Automaten
|
||||
* Differentialgleichungen
|
||||
|
||||
Kombinierte Modelle: Tatsächliche Sprachen kombinieren normalerweise ein Kommunikationsmodell mit einer Organisation von Berechnungen innerhalb der Komponenten.
|
||||
|
||||
Beispiele:
|
||||
* StateChart - kombiniert endliche Automaten mit shared memory
|
||||
* SDL - kombiniert asynchrones message passing with endlichen Automaten
|
||||
* ADA, CSP - kombinieren von-Neumann mit synchronem message passing
|
||||
|
||||
Figure 2.7 page 34
|
||||
|
||||
# Hardware
|
||||
|
||||
## Input
|
||||
|
||||
Sensoren:
|
||||
* Beschleunigungssensoren
|
||||
* Regensensoren
|
||||
* Bildsensoren (charge-coupled devices und CMOS)
|
||||
* biometrische Sensoren
|
||||
* künstliche Augen
|
||||
* RFID
|
||||
* andere Sensoren
|
||||
|
||||
Sensoren erzeugen Signale.
|
||||
|
||||
Diskretisierung von Zeit: Sample-and-hold circuits
|
||||
* messen eines Wertes aus dem kontinuierlichen Zeitspektrum
|
||||
* gemessener Wert wird für bestimmte Zeitdauer weitergeleitet
|
||||
* danach zurück zur Messung des Wertes
|
||||
* Output gleicht damit diskreten Werten (gleicher Wert für bestimmte Zeitdauer)
|
||||
|
||||
Diskretisierung von Werten: A/D Konverter
|
||||
* Flash A/D converter
|
||||
** large number of comparators
|
||||
** each comparator has two inputs (+ and -)
|
||||
** if voltage at + larger than at - -> logical 1, otherwise logical 0
|
||||
|
||||
## Processing Units
|
||||
|
||||
* Energie"verbrauch" ist wichtigste Beschränkung in ES
|
||||
|
||||
### ASICs (Application-specific circuits)
|
||||
* hohe Kosten
|
||||
* sehr gute Performance für sehr kleinen Anwendungsbereich
|
||||
* keine Flexibilität
|
||||
|
||||
### Prozessoren
|
||||
* Flexibilität
|
||||
* Energieeffizienz ist wichtig - Compiler müssen so effizient sein wie möglich
|
||||
* müssen nicht kompatibel mit PC-Prozessoren sein
|
||||
* Dynamic power management
|
||||
** power saving states (idle and sleep)
|
||||
** changes between states
|
||||
* Dynamic voltage scaling
|
||||
** reduced voltage means significantly less power consumption
|
||||
** only linear increase of runtime of algorithms
|
||||
* Code-size efficiency
|
||||
** CISC machines (Complex Instruction Set Processors)
|
||||
** Kompressionstechniken
|
||||
* Laufzeiteffizienz
|
||||
|
||||
### Reconfigurable Logic
|
||||
application areas:
|
||||
* fast prototyping
|
||||
* low volume applications
|
||||
* realtime systems
|
||||
|
||||
## Memories
|
||||
* großer Geschwindigkeitsunterschied zw. Prozessoren und Memories
|
||||
* kleinere Memories wichtig, da sie schnellere Zugriffszeiten bieten
|
||||
* mehrere kleine Speicher für häufig genutzte Instruktionen und Daten plus ein größerer Speicher für restliche Daten und Instruktionen bieten i.A. höhere Energieeffizienz
|
||||
* Scratch Pad memories (SPMs) als Alternative zu Caches
|
||||
|
||||
## Communication
|
||||
* Informationen können durch Kanäle transportiert werden
|
||||
* physische Entitäten, die Kommunikation ermöglichen heißen Kommunikationsmedien
|
||||
* wichtige solche Medien:
|
||||
** drahtlose Medien (Infrarot, RFID)
|
||||
** optische Medien (Glasfaser)
|
||||
** Kabel
|
||||
|
||||
### Requirements
|
||||
* Echtzeitverhalten
|
||||
* Effizienz
|
||||
* angemessende Bandbreite und Kommunikationsverzögerung
|
||||
* Support für eventbasierte Kommunikation
|
||||
* Robustheit
|
||||
* Fehlertoleranz
|
||||
* Wartbarkeit, Diagnosefähigkeit
|
||||
* Datenschutz
|
||||
|
||||
### Elektrische Robustheit
|
||||
|
||||
Reference in New Issue
Block a user