Synthesis of Digital Systems

Vortragende/r (Mitwirkende/r)
Nummer0000004312
Art
Umfang3 SWS
SemesterWintersemester 2018/19
UnterrichtsspracheEnglisch
Stellung in StudienplänenSiehe TUMonline

Termine

Teilnahmekriterien & Anmeldung

Siehe TUMonlineAnmerkung: Die max. Anzahl Teilnehmer beträgt 40. Anmeldung zur gesamten Veranstaltung erfolgt ab dieses Semester über die Reihungsverfahren Masterpraktika. Man kann nur zusammen an Vorlesung und Praktikum teilnehmen. Teilnahme an den gemeinsamen Praktikumsterminen ist Pflicht. Nei Nichterscheinen wird der Platz anhand der Warteliste weiter vergeben.

Lernziele

Nach der Teilnahme kennen die Studierenden die grundlegenden Schritte des Entwurfsprozesses für digitale Systeme. Sie verstehen den Unterschied zwischen einer Software- und einer Hardware-Implementierung. Sie verstehen die Grundlagen der statischen Code-Analyse und Optimierung. Die Studierenden verstehen die Schritte der High-level Hardware Synthese. Sie können diese auf kleine C-Algorithmen anwenden und die zugehörige RTL Beschreibung synthetisieren. Zudem erlernen die Studierenden die HW Synthese mit einem industriellen High-level Synthese Tool praktisch umzusetzen. Die Teilnehmer kennen die Grundlagen der SW Kompilierung und können für kleine C-Funktionen das zugehörige ARM Assembler Programm erstellen. Auf Basis der ARM Prozessoren lernen sie HW-abhängige Optmierungsschritte kennen und können die Ausführungszeiten für SW Programme abschätzen. Zusätzlich lernen die Teilnehmer die Grundlagen des HW/SW Schnittstelle kennen und können dieses Wissen praktisch umsetzen, um ein SW/HW System auf einem FPGA Board zu synthetisieren.

Beschreibung

Die folgenden Inhalte werden in der Vorlesung behandelt und zudem in einem praktischem Teil bei der Entwicklung eines HW/SW Systems auf einem FPGA Board angewendet: Entwurfsprozess digitaler Systeme Grundlagen der statischen Code Analyse und Optimierung High-Level Hardware Synthese mit Scheduling, Binding und Allokation zur Synthese einer RTL Beschreibung eines Hardware Blocks ausgehend von einem C Algorithmus Grundlagen der SW Compilierung ARM Instruction Set und RISC Pipeline Abschätzung der SW Ausführungszeiten On-chip bus Systeme und das HW/SW Interface

Inhaltliche Voraussetzungen

Grundlagen des Entwurfs digitaler Schaltungen sollten bekannt sein. Es wird empfohlen ein VHDl Prakikum vor oder neben dem Kurs zu absolvieren. Grundlagen der Programmierung mit C werden vorausgesetzt.

Lehr- und Lernmethoden

Ein wöchentlicher Präsenztermin besteht aus Vorlesung und Übung. Vorlesung (rezeptive Methoden) und Übung (aktivierende Methoden) werden in mehreren Teileinheiten pro Lehreinheit im Wechsel gehalten. Die Vorlesung verwendet rezeptive Lehrmethoden. Theoretische Grundlagen werden in Form einer Powerpoint Präsentation eingeführt. Algorithmen werden an Beispielen erläutert, die Schritt für Schritt und unter Beteiligung der Lernenden an der Tafel durchgerechnet werden. Die Übungsaufgaben werden mittels aktivierender und kooperativer Lernmethoden, wie Partner- und Gruppenarbeiten, behandelt. Die Studierenden bereiten sich auf Vorlesung und Übung durch Studium der Unterlagen vor, und bereiten durch Selbststudium den durchgenommenen Stoff nach. Die praktischen Arbeiten finden in Gruppen statt. Der praktische Teil besteht aus mehreren Präsenzterminen und selbstständiger Arbeit mit freier Zeiteinteilung. An den Präsenzterminen wird die grundlegende Bedienung der Software und FPGA Boards erklärt.

Studien-, Prüfungsleistung

Die Prüfung besteht aus zwei Teilen: einer schriftlichen Prüfung mit Fragen und Problemstellungen zum gelehrten Stoff in Vorlesung, Übung und Praktikum. Drei Praktikumsaufgaben während des Semesters zum Abprüfen der praktischen Fähigkeiten, die in den Praktikumsübungen gelehrt werden, und zum Abprüfen der Fähigkeit Querverbindungen mit den in Vorlesung und Übung gelehrten Theorien und innerhalb des Praktikums herzustellen. Die Endnote setzt sich zusammen aus: - 75 % Note der schriftlichen Prüfung (90 min., mit Unterlagen) - 25 % Note für die drei Praktikumsaufgaben Die beiden Prüfungsteile erleichtern den Vorbereitungsaufwand der Studierenden am Semesterende und fokussieren auf die jeweiligen Fähigkeiten in Vorlesung/Übung und im Praktikum.

Empfohlene Literatur

* Philippe Coussy, Adam Morawiec: High-level synthesis from Algorithm to digital circuit, Springer 2008 * Alfred Aho, Monica Lam, Ravi Sethi, Jeffrey Ullman: Compilers Principles, Techniques & Tools, Pearson Education 2007

Links