Lehrstuhl für Informatik 12(Hardware-Software-Co-Design)
Friedrich Alexander Universität Erlangen NürnbergFriedrich-Alexander-Universität Erlangen-NürnbergProf. Dr.-Ing. J. Teich
Rückblick - GroßrechnerRückblick - Großrechner
2
Keine Computer im Haushalt?Keine Computer im Haushalt?
Ken Olsen, US-amerikanischer Computer-Ingenieur und Manager im Jahr 1977 in einem Vortrag auf demManager im Jahr 1977 in einem Vortrag auf dem
World Future Society Meeting in Boston
„Es gibt keinen Grund, warum„Es gibt keinen Grund, warumirgendjemand einen Computer in seinem Haus bräuchte “Haus bräuchte.
(in Bezug auf die damals verbreiteten Großrechner)
3
Damals versus HeuteDamals versus Heute
1989: SupercomputerCRAY Y MPCRAY Y-MP275 Millionen Gleitkommaoperationen(Befehle) pro Sekunde
Smartphone mitQualcomm Snapdragon MPSoC
4
Ein Blick auf die Straße heuteEin Blick auf die Straße heute
EingebetteteSysteme:
Rechner, die in einen technischen Kontext eingebunden sind.g
5
Entwicklung der TechnologieEntwicklung der Technologie
Moore‘s Law:Die Anzahl der Transistoren die in einem Chip integriert werden können„Die Anzahl der Transistoren die in einem Chip integriert werden können
verdoppelt sich alle zwei Jahre“
0 2 4 6 8 10 12 t [in Jahren]
Alles wird kleiner, schneller, flexibler
6
Potential und HerausforderungPotential und Herausforderung
Produktivität22
Technologie
Produktivitäts-KriseIP-
Blocks32 nm
22 nm
Blocks
HW/SW-Co-Design65 nm
HLS90 nm
Validierungs-0,8 m
0,35 m
ValidierungsTechniken
1988 1996 2002 2006Zeit
2012 2014 20161988 1996 2002 2006 2012 2014 2016
7
Moderne Fahrzeuge – Vernetzte Eingebettete SystemeModerne Fahrzeuge – Vernetzte Eingebettete Systeme
Fahrerassistenz-systeme
BremseBremse
RadsensorSteuergeräteSensoren/Aktuatoren Bussysteme (CAN, FlexRay, …)Gateways
y ( , y, )Punkt-zu-Punkt-Verbindungen (LIN)
8
Smart Camera – Eingebettetes System zur BildverarbeitungSmart Camera – Eingebettetes System zur Bildverarbeitung
Gestenerkennung
CMOS
Objekterkennung
CMOS
ProzessorenMemory
Sensor, Memory, Peripherie, …
FPGA Bussysteme (AMBA CoreConnect )
und Digitale Signalprozessoren
9
Bridge
FPGA Bussysteme (AMBA, CoreConnect, …)
Welche Eigenschaften benötigen eingebettete Systeme?Welche Eigenschaften benötigen eingebettete Systeme?
Niedrige Kosten/Preis
NiedrigerKraftstoff-/Energieverbrauch
Hohe Zuverlässigkeit
Echtzeitfähigkeit
Hohe “Performance”
wenig zusätzlicher Platz
CMOS
Design, Handhabbarkeit
wenig zusätzlicher Platz,Gewicht Memory
g ,
10
…
Wie baue ich ein eingebettetes System?Wie baue ich ein eingebettetes System?
Software-Entwicklung:
SpezifikationSoftware entwerfen,
programmieren,verifizieren, optimieren, Zielarchitektur
Anwendung
.exe
Ei b tt t S t
verifizieren, optimieren,parallelisieren, …
Hardware
Eingebettetes System:Anwendung
Software entwerfen,programmieren,ifi i ti i
Spezifikation
verifizieren, optimieren,parallelisieren, …
Hardware-Software-Co-Design(HSCD)(HSCD)
Zielarchitekturentwerfen, verifizieren, simulieren, optimieren,
Hardware
11
synthetisieren, …
Lehre HSCD - Bachelor-StudiengangLehre HSCD - Bachelor-Studiengang
1. Semester: (4V+2Ü), 7,5 ECTS Grundlagen der Technischen InformatikGrundlagen der Technischen Informatik
Ab dem 5. Semester: WahlpflichtmoduleAuswahl von 2 bis 3 Modulen (mindestens 15 ECTS) aus mindestens 2 von 15 Vertiefungsrichtungen (z.B. HSCD)
5. Semester: PraktikumEntwurf interaktiver eingebetteter Systeme (WS)Praktikum: Lego Mindstorms (SS)
6. Semester: 12 ECTS6. Semester: 12 ECTSBachelor-Arbeit + Begleitseminar mit Referat
12
Lehre HSCD - Master-StudiengangLehre HSCD - Master-Studiengang
8 Wahlpflichtmodule, wobei Teilgebiete aus mindestens drei der vier Vertiefungsrichtungen zu wählen sindVertiefungsrichtungen zu wählen sind
TheorieSystemSoftwareSoftware,Anwendung
S iSeminar
Projekt
Nebenfach
Master-Arbeit
13
Überblick Vorlesungen Hardware-Software-Co-DesignÜberblick Vorlesungen Hardware-Software-Co-Design
Hardware-Software-Co-Design
Grundlagenderder
TechnischenInformatikSystem
ArchitekturModul
Eingebettete Systeme LogikBlock
Software Hardware
14
VorlesungenVorlesungen
Eingebettete Systeme (2V+2Ü): 5,0 ECTSmit optionalen erweiterten Übungen (2EÜ): 7 5 ECTSmit optionalen erweiterten Übungen (2EÜ): 7,5 ECTSLernziel und Kompetenzen:
Modellierung und Spezifikation eingebetteter Systeme
Architektursynthese
Ablaufplanungsverfahren für zeitkritische Systeme
Hardware-Software-Co-Design (2V+2Ü) (Engl.): 5,0 ECTS mit optionalen erweiterten Übungen (2EÜ): 7 5 ECTSmit optionalen erweiterten Übungen (2EÜ): 7,5 ECTSLernziel und Kompetenzen:
Komponenten und Prozessoren in eingebetteten Systemenp g y
Hardware/Software-Partitionierung
Compiler und Codeoptimierung für eingebettete Prozessoren
15
VorlesungenVorlesungen
Parallele Systeme (2V+2Ü): 5,0 ECTSmit optionalen erweiterten Übungen (2EÜ): 7 5 ECTSmit optionalen erweiterten Übungen (2EÜ): 7,5 ECTSLernziel und Kompetenzen:
Theorie der Parallelität und Klassifikation paralleler Rechnerarchitekturen
Programmierbare System-on-Chip (SoC) Architekturen
Massive Parallelität: Vom Algorithmus zur Schaltung
Domain-Specific and Resource-Aware Computing on MulticoreArchitectures (2V+2Ü): 5 0 ECTSArchitectures (2V+2Ü): 5,0 ECTSLernziel und Kompetenzen:
Grundlagen moderner Multi- und Many-Core-Architektureng y
Abbildungstechniken Multi- und Many-Core-Architekturen und ressourcengewahre Programmierung
Domänenspezifisches Rechnen, Entwurf domänenspezifischer Sprachen
16
VorlesungenVorlesungen
Organic Computing (2V+2Ü): 5,0 ECTSL i l d K tLernziel und Kompetenzen:
Entwurf und Einsatz selbst-organisierender Systeme
Grundlagen und Anwendung der Kontextadaption und weiterer Self-*-Grundlagen und Anwendung der Kontextadaption und weiterer SelfEigenschaften
Verifikation digitaler Systeme (2V+2Ü): 5,0 ECTSLernziel und Kompetenzen:
Anwendung Prinzipien und Grenzen funktionaler Verifikation digitalerAnwendung, Prinzipien und Grenzen funktionaler Verifikation digitalerSysteme
Formale und simulationsbasierte Verifikationsverfahren
17
VorlesungenVorlesungen
Cyber-Physical Systems (2V+2Ü): 5,0 ECTSL i l d K tLernziel und Kompetenzen:
Technische Grundlagen Cyber-Physical Systems (CPS)
Anwendungsgebiete von CPSAnwendungsgebiete von CPS
Modellierung und Programmierung von CPS
18
Hardware-Software-Co-DesignHardware-Software-Co-Design
Seminare:Multi Core Architectures and ProgrammingMulti-Core Architectures and ProgrammingSystems- and Networks-on-a-ChipCyber-Physical SystemsElectronic System Level Design
Ein besonderes Angebot: Approximationsalgorithmen (2V+2Ü): 7,5 ECTS (Prof. Wanka) und
Hardware-Software-Co-Design (2V+2Ü): 7,5 ECTS (Prof. Teich)
können zusammen sowohl als Vertiefung in Theoretischer Informatikals auch Hardware-Software-Co-Design im Bachelor- oder Master-Studium gewählt werden.g
19
Was habe ich davon?Was habe ich davon?
Verständnis für den Entwurf i b tt t S teingebetteter Systeme
Wissen sowohl im Hard- als auch SoftwareentwurfSpaß an der Entwicklung technischer SystemeE ll t B f h d hExzellente Berufschancen durchVielseitigkeitInteressante Bachelor- und Masterarbeiten im Bereich Hardware, Software und TheorieTheorie
20
Hardware-Software-Co-DesignHardware-Software-Co-Design
21
Lehrstuhl für Informatik 12 - Hardware-Software-Co-DesignfProf. Dr.-Ing. Jürgen Teich,
Email: [email protected]: http://www12.informatik.uni-erlangen.de