Embedded Systems sind Computer, die fester Bestandteil eines Geräts sind. Im Unterschied zu Universalrechner (z.B. PC) wird die Architektur von Eingebetteten Systemen ausschließlich für diesen einen Einsatzzweck hin optimiert. Eingebettete Systeme werden durch (ggf. mehrere) Mikroprozessoren, Software und Anwendungsspezifische Schaltungen realisiert. Die Optimierung der Architektur erfordert eine sorgfältige Abschätzung von Kosten, Performance und Leistungsaufnahme unterschiedlicher Varianten. Schwerpunkte sind die Aspekte der Synchronisation in "Multiprozessor-System-On Chip" und die Heterogenität in "Cyber-Physical Systems". Die Vorlesung vermittelt die nötigen Grundlagen, um aktuelle Probleme, Lösungen und Entwicklungen zu verstehen und eigenständig weiter zu entwickeln. Im Rahmen des Labors wird examplarisch SystemC als ein "Ecosystem" zur Entwicklung Eingebetteter Systeme vertieft.
Vorlesung:
Organisation, Termine, Literatur.
Embedded Systems: Definition, Abstraktionsebenen, Entwurfsraum, Eigenschaftsraum, Herausforderungen, Entwurfsmethodik.
Spezifikation: Model of Computation, Discrete Event, Kahn Prozess Netze, Synchroner Datenfluss, Zeitbehafteter Datenfluss, StateCharts.
Plattformen und Architekturen: Mapping auf Prozessoren, Kommunikation/Synchronisation, Koprocessor, Accellerator, (Multiprocessor-)SoC, NoC.
Architecture Exploration: Performance/Power/Cost Estimation, Systemsimulation, mixed-level Simulation, Transaction Level Modellierung, ereignisdiskrete Simulation.
Diskrete Schaltungsbeschreibungssprache SystemC sowie deren kontinuierliche Erweiterung SystemC AMS.
Labor: Im Labor wird SystemC und ggf. darum nötige Infrastruktur (Eclipse, VCD Viewer, TLM und AMS extensions) verwendet. Alle Werkzeuge sind "Open Source".
Introduction: SystemC Installation, Basics.
Lab 1: - Executable specification, simulation of KPN using SystemC.
- Modeling OS using SystemC: Channel/interface, semaphore, signal, FIFO.
- Modeling HW/SW interface
Lab 2: SystemC AMS mixed-signal Erweiterung
Die reguläre Abhaltung der Lehrveranstaltung ist im Sommersemester. Die Vorlesung wird in deutscher Sprache gehalten; Folien sind auf Englisch.
Die Vorlesung verlangt eine positive Absolvierung der Laborübung, wobei aus Betreuungsgründen die Anzahl der Laborplätze auf 24 (12 Gruppen zu 2 Studierende) begrenzt ist. Studierende des Masters "Computertechnik" werden bevorzugt behandelt.