|
CPU Entwurf mit VHDL (CPU)7.5 ECTS (englische Bezeichnung: CPU Design with VHDL)
Modulverantwortliche/r: Dietmar Fey Lehrende:
Marc Reichenbach
Start semester: |
SS 2020 | Duration: |
1 semester | Cycle: |
jährlich (SS) |
Präsenzzeit: |
90 Std. | Eigenstudium: |
135 Std. | Language: |
Deutsch |
Lectures:
-
-
CPU Entwurf mit VHDL
(Vorlesung, 4 SWS, Marc Reichenbach, Mon, Tue, 14:15 - 15:45, 00.152-113)
-
Übungen zu CPU Entwurf mit VHDL
(Übung, 2 SWS, Philipp Holzinger et al., Mon, 10:15 - 11:45, 02.153; Wed, 14:15 - 15:45, 02.153)
Empfohlene Voraussetzungen:
keine
Inhalt:
Die Vorlesung wird einen Einblick in die wichtigsten Strukturen eines Rechners und insbesondere die der CPU geben. Wie sind die Register, die ALU, die Caches usw. aufgebaut, wie sind sie miteinander verschaltet? Wie werden Pipelines gebildet?
Um die Vorlesung verstehen und die Übungsaufgaben lösen zu können, werden VHDL-Kenntnisse benötigt. Diese werden in der Vorlesung vermittelt.
Im ersten Teil der Vorlesung geht es darum, aus einfachen Und-, Oder- und Inverter-Gattern größere Strukturen aufzubauen. So werden bespielsweise die Register und die Komponenten der ALU (Addierer, Multiplizierer, Shifter usw.) nach und nach aufgebaut. Aus den Einzelteilen lassen sich dann wiederum die Registerbänke, die ALU, die Speichereinheit usw. zusammensetzen.
Mit guten Rechenwerken allein ist eine CPU noch nicht wirklich schnell. Es müssen schnell genug Instruktionen gelesen und dekodiert sowie die Operanden geholt werden können. Nach dem schnellen Verarbeiten in den Rechenwerken müssen die Ergebnisse dann wiederum schnell in die Zielregister bzw. Ziel-Speicherzellen kopiert werden. Das wichtigste Verfahren, um hierbei Performance zu gewinnen, ist das Pipelining.
Leider gibt es eine Reihe von Bedingungen, die erfüllt sein müssen, dass Pipelining wirklich gut funktioniert. So dürfen keine Daten-Abhängigkeiten im Code vorhanden sein, müssen Sprungziele rechtzeitig bekannt sein und dürfen bestimmte Ressourcen nicht mehrfach gleichzeitig genutzt werden. Mittels Forwarding, Sprungvorhersage und Caches können die Probleme gemildert werden.
Mit den so gewonnenen Fähigkeiten sind dann auch Multi-Core- und Multi-Threading-Architekturen verständlich.
Lernziele und Kompetenzen:
Die Studierenden verstehen den inneren Aufbau moderner CPUs (Pipeline, Registerbänke, ALU, Caches, Memory-Management-Unit, Segmentierungseinheit, ...) und können selbst performante CPUs aus einfachen Basis-Schaltungen aufbauen.
Verwendbarkeit des Moduls / Einpassung in den Musterstudienplan: Das Modul ist im Kontext der folgenden Studienfächer/Vertiefungsrichtungen verwendbar:
- Mechatronik (Master of Science)
(Po-Vers. 2020w | TechFak | Mechatronik (Master of Science) | Gesamtkonto | M3 Technische Wahlmodule | CPU Entwurf mit VHDL (CPU))
Studien-/Prüfungsleistungen:
CPU Entwurf mit VHDL (CPU) (Prüfungsnummer: 211243)
(englischer Titel: CPU Design with VHDL (CPU))
- Prüfungsleistung, mündliche Prüfung, Dauer (in Minuten): 30, benotet, 7.5 ECTS
- Anteil an der Berechnung der Modulnote: 100.0 %
- Erstablegung: SS 2020, 1. Wdh.: WS 2020/2021
1. Prüfer: | Marc Reichenbach |
|
|
|