Synthese und Optimierung mikroelektronischer Systeme

Die Veranstaltung findet im Wintersemester statt.

Termine: immer Mittwochs zwischen 10:00 und 13:00 Uhr in WA -1606 

Zuschnitt: 6 CP, 2V+1Ü, 3 SWS

Inhalte und Ziele

Ziel der Veranstaltung ist eine Einführung in die grundlegenden Algorithmen und Datenstrukturen, die im High-Level-Entwurfsablauf digitaler Systeme Verwendung finden sowie eine Übersicht über das allgemeine Themengebiet. Die Vorlesung beschäftigt sich dazu mit den Algorithmen und Verfahren im HW/SW Codesign, in der High-Level Synthese, der Register-Transfer-Synthese und bei der Register-Transfer-Optimierung sowie den dazu verwendeten Datenstrukturen.

Besprochen werden dabei generelle Optimierungsansätze und konkrete Optimierungsalgorithmen, wie sie allen derzeitigen Softwaresystemen im industriellen Einsatz beim Digitalentwurf zugrunde liegen.

Damit wird in der Vorlesung der erste Teil des Systementwurfs (High-Level-Entwurf) von Seiten der eingesetzten Methoden und Algorithmen abgedeckt. Die resultierende strukturelle Beschreibung der zu implementierenden Schaltung (optimierte Gatternetzliste) kann jetzt auf verschiedene Weise implementiert werden. Die Methoden bei der Realisierung in Form eines ASIC-Entwurfs (application-specific integrated circuit), dem sogenannten physikalischen Entwurf, werden in der Vorlesung "Rechnergestützter Entwurf..." ausführlich behandelt. Über die Zieltechnologie FPGA (field-programmable gate array) können  Sie mehr in der Vorlesung "Rekonfigurierbare Strukturen" erfahren!

Die Veranstaltung (2V+1Ü, 6 CP) richtet sich an Master-Studentinnen und Studenten der Informatik, Elektrotechnik und Mechatronik mit Interesse an Technischer Informatik oder Informations- und Kommunikationstechnik (IKT).

Lernziele: Die/der Lernende kann

  • den Ablauf und die Ziele der High-Level Synthese skizzieren,
  • vorgegebene bzw. bekannte Algorithmen erklären,
  • Implementierungen gegebener Algorithmen vergleichen,
  • Erweiterungen für vorhandene Algorithmen entwickeln,
  • Syntheseergebnisse qualitativ beurteilen.

In der Vorlesung werden zudem Pseudocode-Formulierungen von Algorithmen verwendet. Sie sollen Pseudocode verstehen und auch schrittweise nachvollziehen lernen. Auch die Nachimplementierung von Algorithmen in einer Programmiersprache soll geübt werden.

Materialien

Alle Materialien sowie ein Forum finden Sie in Moodle der Universität Kassel. Bitte in jedem Fall bei Moodle anmelden, da aktuelle Informationen über Moodle verbreitet werden.

Alle Kursmaterialien sowie ein Diskussionsforum finden Sie im Moodlekurs der Vorlesung. Melden Sie sich bitte unbedingt in diesem Kurs an, wenn Sie die Vorlesung besuchen wollen.

Literatur: In der Vorlesung werden folgende Lehrbücher verwendet

  • Patrick R. Schaumont. 2010. A Practical Introduction to Hardware/Software Codesign (1st ed.). Springer Publishing Company, Incorporated.
  • Giovanni DeMicheli: Synthesis and Optimization of Digital Circuits (McGraw-Hill Series in Electrical & Computer Engineering), Mcgraw-Hill Publ.Comp. (März 1994), ISBN: 0070163332 
  • Petra Michel, Peter Duzy , Ulrich Lauther (Herausgeber): The Synthesis Approach to Digital System Design (Kluwer International Series in Engineering & Computer Science), Springer, Berlin; Auflage: 2 (März 1992), ISBN: 0792391993 

Weitere Quellen: Ein online-Kurs zum Thema Komplexitätstheorie:

www.udacity.com/course/cs313 (bitte den Link in die Browser-Adresszeile kopieren)

Udacity ist eine Organisation, die sich für die Demokratisierung von höherer Bildung engagiert, indem sie auf ihrer Webplattform Kurse auf dem Niveau eines wissenschaftlichen Studiengangs anbietet. Die Teilnahme an dem Kurs ist kostenlos.

Leistungsnachweis

Der Leistungsnachweis wird über eine Hausarbeit mit Vortrag und Disskussion erbracht. Die genauen Modalitäten werden in der Veranstaltung bekannt gegeben.