Prof. Dr. Uwe Brinkschulte Lehrstuhl für Eingebettete Systeme [email protected] Robert-Mayer-Straße 11-15 Sekretariat: Linda Stapleton, Raum 211a [email protected] Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 1 Forschungsgebiete Hard- und Software für eingebettete Systeme Im Speziellen: • Mikrocontroller & Mikroprozessoren • Eingebettete Echtzeitsysteme • Verteilte eingebettete Systeme • Echtzeit-Middleware • Organic Computing • Selbst-Organisation und Echtzeit Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 2 Projekte Komodo CAR-SoC CARISMA DODOrg Legende: Anwendungsdienst … Anwendungsdienst Sensor SELINA Barke PC Middlewarekern OSA+ REMIS OSA+ Basisdienste Erweiterungsdienste Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte SIMON 3 Lehre Vorlesungen Hardware-Architektur & Rechnersysteme SS (Teil des Bachelor Basis-Modul B-HW) Eingebettete Systeme WS (Teil des Bachelor Vertiefungsgebiet TS, Modul B-ES / Teil des Mastergebiets Informatik der Systeme, Bereich Systems Engineering) Praktika Grundlagen Hardwaresysteme SS (Bachelor Basis Modul B-HWS-PR) Mikrocontroller & Eingebettete Systeme WS (Teil des Mastergebiets Informatik der Systeme, Bereich Systems Engineering) Seminare Robuste Systemarchitekturen – Organic Computing WS (Teil des Mastergebiets Informatik der Systeme, Bereich Systems Engineering) Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 4 Praktikum Mikrocontroller & Eingebettete Systeme Versuche zur Anwendung von Mikrocontrollern und deren Einsatz für eingebettete Systeme Programmierung von Mikrocontrollern Versuche: • Einführung in die Programmierung Schnittstellen zur Interaktion mit dem Umfeld • Einsatz der parallelen Schnittstellen Kombination Mikrocontroller und programmierbare Logik • Einsatz der seriellen Schnittstellen Praktische Anwendung der Vorlesung “Eingebettete Systeme” • Verwendung von Timern Ergänzt das Praktikum “Hardwaresysteme” (ist jedoch keine Voraussetzung) jährlich ab WS 2009/10 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte • Anschluss einer SD-Karte • Kombination mit einem FPGA für verschiedene Controllerfunktionen (z.B. VGA Controller) 5 Seminar Robuste Systemarchitekturen – Organic Computing Organic Computing Initiative neues Forschungsfeld der Informatik komplexe eingebettete Systeme “lebensähnlicher” gestalten Eigenschaften lebender Organismen auf eingebettete Systeme übertragen: Selbst-X Eigenschaften (Selbstorganisation, Selbstkonfiguration, Selbstoptimierung, Selbstheilung, ...) Emergentes Verhalten Seminarziele: • aktueller Stand der Forschung anhand ausgewählter Publikationen erarbeiten • Zwischenschritte auf dem Weg zur Realisierung von Organic Computing Systemen identifizieren zweijährig ab WS 2008/09 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 6 Vorlesung Eingebettete Systeme Inhalte: Hardware-Plattformen für eingebettete Systeme Busse zum Umfeld Echtzeitaspekte der Software Entwurf verteilter eingebettete Systeme Organic Computing Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 7 Vorlesung Eingebettete Systeme Vermittelt werden sollen: Verständnis für die Besonderheiten des Entwurfs und der Implementierung eingebetteter Systeme Zielarchitekturen in Hard- und Software grundlegend und in Vertiefung Wichtige Aspekte wie Echtzeitverhalten, Ressourcenschonung sowie Verteilung und deren Wechselwirkung Neuester Forschungstrends, aktuelle Probleme und deren künftige Lösungsmöglichkeiten Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 8 Vorlesung Eingebettete Systeme WS 2008/2009 Prof. Dr. U. Brinkschulte Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 9 Vorlesungsinhalte und -strukturierung 1. Grundlagen (1,5 Einh.) 2. Hardware-Plattformen (11,5 Einh.) 3. Busse zum Umfeld (3 Einh.) 4. Echtzeitaspekte der Software (4 Einh.) 5. Entwurf verteilter eingebetteter Systeme (4 Einh.) 6. Organic Computing (3 Einh.) Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 10 Literatur [1] Brinkschulte, Ungerer Mikrocontroller und Mikroprozessoren 2. Auflage, Springer Verlag, Heidelberg, 2007 [2] Wörn, Brinkschulte Echtzeitsysteme Springerverlag, Heidelberg, 2005 Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 11 Detaillierte Inhalte 1. Grundlagen 1.1 Eingebettete Systeme 1.2 Ubiquitäre Systeme 1.3 Mikroprozessoren, Mikrocontroller, Signalprozessoren und SoC 1.4 PC Systeme 1.5 Modellierung 2. Hardware-Plattformen 2.1 Mikrocontroller Literatur [1] Kap. 1 [2] Kap. 1.3 u. 1.4 [1] Kap. 3 2.1.1 Abgrenzung zu Mikroprozessoren 2.1.2 Anwendungsfelder 2.1.3 Leistungsklassen und Familien 2.1.4 Auswahlkriterien für den Einsatz von Mikrocontrollern 2.1.5 Softwareentwicklung 2.2 Systems on Chip (SoC) 2.3 Energiespartechniken 2.4 Java und Java-Prozessoren für eingebettete Systeme Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 12 Detaillierte Inhalte 2.5 Mikrocontroller-Komponenten [1] Kap. 4 2.6 Mikrocontroller-Beispiele [1] Kap. 5 2.5.1 Prozessorkerne 2.5.2 Ein-/Ausgabeeinheiten 2.5.3 Zeitgeberbasierte Einheiten 2.5.4 Speicher 2.5.5 Unterbrechungssteuerung 2.5.6 DMA 2.5.7 Erweiterungsbus 2.6.1 2.6.2 2.6.3 2.6.4 ATmega128 - ein kompakter Mikrocontroller PXA 255 – ein Hochleistungs-Mikrocontroller MCore - optimiert für niedrigen Energieverbrauch Komodo - ein Forschungs-Mikrocontroller 2.7 Signalprozessoren 2.7.1 Einiges zur Theorie der digitalen Signalverarbeitung 2.7.2 Abgrenzung zu Mikrocontrollern und Mikroprozessoren 2.8 Signalprozessor-Beispiele 2.8.1 Ein einfacher Signalprozessor 2.8.2 Ein Hochleistungs-Signalprozessor 2.9 Analoge Schnittstellen Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte [2] Kap. 3.3 13 Detaillierte Inhalte 3. Busse zum Umfeld 3.1 Peripheriebusse 3.1.1 USB 3.2 Feldbusse 3.2.1 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 Überblick und Anwendungen Der ProfiBus Der CanBus Der INTERBUS ASI EIB [2] Kap. 4.4 4. Echtzeitaspekte der Software 4.1 Grundlagen von Echtzeitsystemen 4.2 Echtzeitprogrammierung [2] Kap. 5 4.3 Aufbau von Echtzeitbetriebssystemen [2] Kap. 6 4.2.1 Synchrone Programmierung 4.2.2 Asynchrone Programmierung Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 14 Detaillierte Inhalte 4.4 Echtzeitscheduling 4.4.1 4.4.2 4.4.3 4.4.4 4.4.5 4.4.6 FIFO-Scheduling Fixed-Priority-Scheduling EDF-Scheduling LLF-Scheduling Time-Slice-Scheduling Guaranteed Percentage Scheduling [2] Kap. 6 4.5 Synchronisation und Kommunikation 4.5.1 Synchronisation gemeinsamer Betriebsmittel 4.5.2 Task-Kommunikation 4.6 Speicher- und IO-Verwaltung 4.6.1 Speicherverwaltung 4.6.2 IO-Verwaltung 4.7 Klassifizierung und Beispiele von Echtzeitbetriebssystemen 4.7.1 QNX 4.7.2 Posix 4.7.3 RTLinux Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 15 Detaillierte Inhalte 5. Entwurf verteilter eingebetteter Systeme 5.1 Anforderungen und Architekturen 5.2 Entwurfsmuster “Dienstorientierte Architektur” 5.3 Middleware als Systemplattform 5.3.1 Aufgaben der Systemplattform 5.3.2 Middleware [2] Kap. 7 5.4 OSA+ 5.5 CORBA und RT-CORBA 5.6 Verteilte Mess- und Stelldienste 5.6.1 Grundlagen 5.6.2 Ein verteilter Mess- und Stelldienst Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 16 Detaillierte Inhalte 6. Organic Computing 6.1 Grundlagen des Organic Computing 6.2 Organic Computing und Systems on Chip [1] Kap. 3.6.4 6.2.1 Autonomic Systems on Chip (ASoC) 6.2.2 Connective Autonomic Real-time Systems on Chip (CARSoC) 6.3 Organic Computing und Middleware 6.3.1 OSA+ als „organische Middleware“, neue Konzepte, Organic Manager [1] Kap. 3.6.4 6.3.2 DodOrg - Digital On Demand Computing Organism 6.4 Ein künstliche Hormonsystem zur Taskzuordnung in verteilten eingebetteten Systemen 6.4.1 6.4.2 6.4.3 6.4.4 6.4.5 6.4.6 Natürliches Hormonsystem Künstliches Hormonsystem Künstlichen Hormone Dynamik des Hormonsystems Datenaufkommen der Hormonausschüttung Güte der Taskzuordnung Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 17 Organisatorisches Folien und Übungsblätter verfügbar unter http:// Vorlesung: Dienstag 14:00 – 16:00, SR 9, RM 11-15 Mittwoch 14:00 – 16:00, SR 307, RM 11-15 Übung: ersetzt einen der obigen Termine im 2-WochenAbstand, Ankündigung in der Vorlesung Goethe-Universität Frankfurt am Main – Lehrstuhl für Eingebettete Systeme - Prof. Dr. U. Brinkschulte 18