252-0028-00L  Digital Design and Computer Architecture

SemesterFrühjahrssemester 2021
DozierendeO. Mutlu, F. K. Gürkaynak
Periodizitätjährlich wiederkehrende Veranstaltung
LehrspracheEnglisch


KurzbeschreibungDiese Lehrveranstaltung ist eine erste Einführung in das Design digitaler Schaltungen und die Computerarchitektur. Sie deckt die technischen Grundlagen wie eine Computerplattform von Grund auf entworfen wird ab. Sie stellt verschiedene Ausführungsparadigmen, Hardwarebeschreibungssprachen und Prinzipien im digitalen Design und der Computerarchitektur vor.
LernzielDiese Lehrveranstaltung ist eine erste Annäherung an die Computerarchitektur. Die Studenten lernen das Design digitaler Schaltkreise, um:
- die Grundlagen,
- die (Design-)Prinzipien,
- und die Präzedenzfälle (in der Computerarchitektur) zu verstehen.
Auf der Grundlage dieses Verständnisses wird von den Studierenden erwartet, dass sie:
- lernen wie ein moderner Computer intern von Grund auf funktioniert,
- die Kompromisse verschiedener Designs und Ideen bewerten können,
- ein fundiertes Design (eines einfachen Mikroprozessors) implementieren können,
- immer komplexere Systeme systematisch austesten können,
- hoffentlich darauf vorbereitet sind, neuartige Out-of-the-Box-Designs zu entwickeln.
Der Fokus liegt auf Grundlagen, Prinzipien, Präzedenzfällen und deren Verwendung um gute Designs zu erstellen/umzusetzen.
InhaltDie Lehrveranstaltung besteht aus den folgenden Hauptblöcken:
- Aktuelle Hauptthemen der Computerarchitektur: Prinzipien, Mysterien, motivierende Fallstudien und Beispiele.
- Digital Logic Design: Kombinationslogik, sequentielle Logik, Hardwarebeschreibungssprachen, FPGAs, Timing und Verifikation.
- Grundlagen der Computerarchitektur: Von Neumann-Computermodell, Befehlssatzarchitektur, Assembly-Programmierung, Mikroarchitektur, Mikroprogrammierung.
- Grundlagen des Prozessordesigns: Pipelining, Out-of-Order-Ausführung, Verzweigungsvorhersage.
- Verarbeitungs-Paradigmen: Out-of-Order-Ausführung, Datenfluss, superskalare Ausführung, VLIW, SIMD-Prozessoren, GPUs, systolische Arrays, Multithreading.
- Speichersystem: Speicherorganisation, Speichertechnologien, Speicherhierarchie, Caches, virtueller Speicher.
SkriptAlle Unterlagen (inklusive Vorlesungsfolien) werden auf der Website der Lehrveranstaltung zur Verfügung gestellt: http://safari.ethz.ch/digitaltechnik/
Die Videoaufzeichnung der Vorlesung wird voraussichtlich bereitgestellt. Es kann dabei zu Verzögerungen kommen.
LiteraturDie offiziellen Lehrbücher dieser Lehrveranstaltung sind “Introduction to Computing Systems” von Patt und Patel, und “Digital Design and Computer Architecture” von Harris und Harris.
Da dieser Kurs auf dem neuesten Stand ist, gibt es kein Lehrbuch das alle Themen abdeckt. Deswegen werden wir die Pflichtlektüre und die empfohlene Literatur für jede Vorlesung bereitstellen. Diese besteht hauptsächlich aus zwei Lehrbüchern und wichtigen Artikeln, die für das Verständnis aktueller Computerarchitekturen essentiell sind.