HOMEPAGE DES KURSES "RECHNERGESTÜTZTER ENTWURF VON MIKROELEKTRONIK" IM SS 2008
Überblick
- Veranstalter: Prof. Dr.Peter Marwedel
- Vorlesung + Übung (4+2 SWS)
Termine
Zeit | Raum | Dozent | |
---|---|---|---|
Vorlesung | Mo. 08:30-10:00 | OH14, E21 | Prof. Dr. Peter Marwedel |
Do. 10:15-11:45 | HG1, HS3 | Prof. Dr. Peter Marwedel | |
Übung | Mi. 10:15-12:00 | OH16, E07 | |
Mi. 10:15-12:00 | OH16, U08 |
Lerninhalte und Ziele
Das Modul beginnt mit einer vertieften Behandlung von Modellen für gemischte Hardware/Software-Systeme. Dabei wird ein besonderes Schwergewicht auf SystemC- und VHDL-Modelle gelegt. Für beide Sprachen werden realistische Systeme modelliert.
Im ersten Viertel der Veranstaltung werden die Grundzüge von SystemC vermittelt. SystemC ist eine Erweiterung von C++ mittels einer Bibliothek, die alle die Sprachkonstrukte bereitstellt, die zur Modellierung von Hardware in C++ benötigt werden. Damit ist eine einheitliche Modellierung von Software in einer Sprache möglich und die Notwendigkeit der Kopplung unterschiedlicher Simulatoren entfällt.
Im zweiten Viertel der Veranstaltung wird die Konfiguration von field programmable gate arrays mit Hilfe von VHDL vorgestellt. In den Übungen dazu gibt es Zugang zu "echten" FPGA-Boards.
Anschließend werden Verfahren zur Synthese von gemischten Hardware/Software-Systemen vorgestellt. Die Theorie der Syntheseverfahren auf unterschiedlichen Ebenen (System-, Architektur-, Automaten- und Schaltkreissynthese) wird ausführlich vorgestellt. Dazu gehört die Synthese von Hardware aus algorithmischen Beschreibungen (High-Level synthesis einschl. Scheduling, Allokationsverfahren für Ressourcen, Ressourcenbindung). Zur praktischen Erprobung dieser Syntheseverfahren werden Systeme auf field programmable gate arrays (FPGAs) abgebildet.
Die Veranstaltung schließt mit einer Übersicht über Layoutsyntheseverfahren (Platzierung, globale Verdrahtung, lokale Verdrahtung, Nutzung von graphentheoretischen Modellen für die Layout-Optimierung). Dabei wird für dieses Anwendungsgebiet gezeigt, wie verschiedene Modellierungstechniken (z.B. der Graphentheorie) und Optimierungstechniken (wie ganzzahlige Programmierung und simulated annealing) eingesetzt werden.
Ziel der Veranstaltung ist es, Studierenden vertiefte Kenntnisse im Bereich des Entwurfs von mikroelektronischen Systemen zu vermitteln. Insbesondere sollen Studierende gemischte Hardware/Software-Systeme modellieren können und mögliche Wege von den Modellen zur Realisierung exemplarisch kennen lernen. Absolventen dieser Veranstaltung sollen mindestens in der Lage sein, im Team mit Entwicklern eingebetteter Hardware über Modelle zu kommunizieren und arbeiten zu können. Die Veranstaltung soll den Studierenden den Zugang zu Forschungsthemen erschließen.
Mit der Umstellung auf Bachelor-/Masterstudiengänge wird die zweite Hälfte der Veranstaltung unter dem Titel "Synthese Eingebetteter Systeme" angeboten.
Voraussetzungen
Ein vorheriger Besuch der Veranstaltung "Eingebettete Systeme" ist wünschenswert, aber nicht Voraussetzung.
Weitere Informationen
- Sie können sich jetzt in der mailingliste unter
https://postamt.cs.uni-dortmund.de/mailman/listinfo/eda08 eintragen.
- Zu der Veranstaltung gibt es ein Forum (zu erreichen über www.inpud.de/)
ÜBUNGEN RECHNERGESTÜTZER ENTWURF VON MIKROELEKTRONIK SS08
Allgemeine Informationen zu den Übungen
- Ausgabe der neuen Übungszettel: Mittwochs nach der Vorlesung und auf der Downloadseite
- Abgabe der bearbeiteten Übungszettel: Jeweils Mittwochs bis 16:00 Uhr; nach der Vorlesung oder in den Übungsgruppen oder per Email an den jeweiligen Übungsgruppenleiter
- Einige der Aufgaben sind Präsenzaufgaben und werden in den Übungsgruppen bearbeitet
- Gruppenabgaben mit max. 2 Teilnehmern erwünscht
Anforderungen für die Scheinvergabe
- Insgesamt 13 Übungszettel
- Min. 50% der Punkte müssen insgesamt erreicht werden
- Anwesenheitspflicht in den Übungen (Bei Krankheit bitte Nachricht an den Übungsgruppenleiter)
Weitere Informationen
Für das erste Viertel des Semesters ist es empfehlenswert, möglichst über einen C++-Compiler auf einem eigenen Rechner zu verfügen. Dieser muss zusammen mit der SystemC-Bibliothek (zu laden von www.systemc.org) benutzt werden können. Teilweise gibt es Namenskonflikte zwischen Compiler und Bibliothek. Getestet wurde kürzlich die SystemC-Version 2.2.0 in Kombination mit Visual Studio 6.0 Enterprise Edition (von der IRB erhältlich). Gute Erfahrungen gibt es auch mit gcc auf linux.
Für das zweite Viertel sind FPGAs zu konfigurieren. Mit der verfügbaren Software kann man sich anhand des so genannten Webpacks (zu laden von www.xilinx.com) der Fa. Xilinx vertraut machen. Allerdings unterstützt das kostenlose webpack nicht die von uns benutzten komplexen Bausteine. Gegen Unterschrift unten den Nutzungsbedingungen kann ggf. über den Lehrstuhl das vollständige Softwarepaket bezogen werden. Die FPGAs selbst sind allerdings nur am Lehrstuhl zu nutzen. Unsere boards sind Virtex II Pro boards.
Die letzte Hälfte der Veranstaltung benutzt keine spezielle Software.
Texte
- ZurSystemC-Modellierung:
H.Müller et al.: C++ für Java-Programmierer
Black, Donovan: SystemC from the ground up, Springer, 2004; (Quellen:Bereichsbibliothek, kostenpflichtige Kopie , Suche im Internet)
Texte auf www.systemc.org - Zur FPGA-Konfiguration
Texte auf www.xilinx.com
J. Reichard, Bernd Schwarz: VHDL-Synthese, Oldenbourg, 2003 - Zu Syntheseverfahren:
Skript zu diesem Teil der Kurses
Übungsgruppenbetreuer
- Synthese:
Daniel Cordes , E-Mail senden
OH 16, Raum E08, (0231) 755-6310 - System C:
Jürgen Mäter , E-Mail senden
GB4, Raum 402, (0231) 755-2411 - VHDL/FPGAs:
Sascha Plazar , E-Mail senden
OH 16, Raum E16, (0231) 755-6133
DOWNLOADS RECHNERGESTÜTZER ENTWURF VON MIKROELEKTRONIK SS08
Vorlesungsfolien
Folien: Die Powerpoint-Dateien sind jeweils die Originale. Formatierungen der sxi- und pdf-Versionen können geringfügig davon abweichen. Die Folien werden im Laufe des Semesters noch aktualisiert.
Vorlesung | ppt/ps | Titel | Version | Sprache | |
---|---|---|---|---|---|
1 | eda-marw-01.ppt | eda-marw-01.pdf | Motivation for EDA | 2008-04-08 | German |
2 | eda-marw-02.ppt | eda-marw-02.pdf | SystemC: intro & data types, time | 2008-04-08 | English |
3* | eda-marw-03.ppt.zip | eda-marw-03.pdf.zip | SystemC: modules, concurrency, events | 2008-04-14 | English |
4* | eda-marw-04.ppt.zip | eda-marw-04.pdf.zip | SystemC: gas station, channels, delta cycles | 2008-04-14 | English |
5* | eda-marw-05.ppt.zip | eda-marw-05.pdf.zip | SystemC: ports, interfaces | 2008-04 | English |
6* | eda-marw-06.ppt.zip | eda-marw-06.pdf.zip | SystemC: clocks, CTHREAD | 2008-04 | English |
7* | eda-marw-07.ppt.zip | eda-marw-07.pdf.zip | SystemC: Dynamic processes, testbenches, modeling styles | 2008-04 | English |
8 | eda-marw-fpga-01.ppt | eda-marw-fpga-01.pdf | FPGAs: Virtex II Pro board | 2008-05 | English |
9 | eda-marw-fpga-02-counter.ppt | eda-marw-fpga-02-counter.pdf | Xilinx quick start tutorial | 2008-05 | English |
10 | eda-marw-fpga-03-3specs.ppt | eda-marw-fpga-03-3specs.pdf | Specification techniques in ISE | 2008-05-14 | English |
11 | eda-marw-vhdl-01.ppt | eda-marw-vhdl-01.pdf | VHDL | 2008-05-15 | English |
12 | eda-marw-fpga-04-xst.ppt | eda-marw-fpga-04-xst.pdf Tutorial PPC Tutorial | Xilinx synthesis technology XST; Using PowerPC | 2007-05-12 | English |
13 | eda-marw-fpga-05-appl.ppt | eda-marw-fpga-05-appl.pdf | Simulation, XPS, Applications of FPGAs | 2007-05-20 | German/English |
14 | eda-marw-fpga-synthesis-bridge.ppt | eda-marw-fpga-synthesis-bridge.pdf | Synthesis from SystemC | 2007-05-20 | German/English |
15 | eda-marw-synth-01.ppt | eda-marw-synth-01.pdf | Synthesis of systolic arrays | 2007-05-20 | German |
16 | eda-marw-synth-02.ppt | eda-marw-synth-02.pdf | Intro to high-level synthesis, scheduling | 2007-05-26 | German |
17 | eda-marw-synth-03.ppt | eda-marw-synth-03.pdf | Allocation & assignment in high-level synthesis | 2007-05-26 | German/English |
18 | eda-marw-synth-04.ppt | eda-marw-synth-04.pdf | OSCAR, replacement of high-level elements | 2007-06-10 | German |
19 | eda-marw-controller-01.ppt | eda-marw-controller-01.pdf | controller synthesis | 2007-06-10 | German |
20 | eda-marw-logic-01.ppt eda-marw-logic-02.ppt | eda-marw-logic-01.pdf eda-marw-logic-02.pdf | Logic synthesis, ESPRESSO, PLA-folding brief section on multilevel logic synthesis; synthesis of ALUs dropped | 2006-06-20 | German |
21 | eda-marw-placement-01.ppt | eda-marw-placement-01.pdf | Layout synthesis: partitioning | 2006-06-25 | German |
22 | eda-marw-placement-02.ppt | eda-marw-placement-02.pdf | Layout synthesis: min-cut based placement | 2006-06-25 | German |
23 | eda-marw-glob-routing.ppt | eda-marw-glob-routing.pdf | Global routing | 2006-07-02 | German |
24 | eda-marw-channel-routing.ppt | eda-marw-channel-routing.pdf | Channel routing | 2006-07-10 | German |
25 | eda-marw-maze-running.ppt | eda-marw-maze-running.pdf | Maze running algorithms | 2006-07-10 | German |
26 | eda-electromigration.zip | Specific problems of modern IC technology | 2007-07-08 | German |
- Die mit * gekennzeichneten Dateien sind aus Urheberrechtsgründen nur für die Teilnehmer der Vorlesung gedacht und daher mit einem Passwort geschützt. Eine Weitergabe der Dateien an Dritte oder eine Bereitstellung im Internet sind nicht zulässig. Mit dem Laden der Dateien erkennt der Benutzer diese Bedingungen an. Das Passwort ist gleich dem Namen des Praktikums, das im Keller jenes Gebäudes stattfindet, in dem auch die FPGA-Übungen stattfinden (vollständig in Großbuchstaben).
Übungsaufgaben
Nr. | Übungsblatt | Abgabetermin | Besprechung | Präsenzübung | Beschreibung |
---|---|---|---|---|---|
1 | Übungsblatt 1 | 16.04.2008 | 23.04.2008 | - | Folien zur Übung am 09.04.: 01_Erste-Schritte.pdf |
2 | Übungsblatt 2 | 23.04.2008 | 30.04.2008 | - | Beispiel HelloWorld mit Makefile für Linux: helloworld.zip |
3 | Übungsblatt 3 | 30.04.2008 | 07.05.2008 | - | Quellcode zum Übungsblatt 2: Blatt02_gas_station.zip |
4 | Übungsblatt 4 | 07.05.2008 | 14.05.2008 | - | Datensätze zum Übungsblatt 4: Blatt04_data.zip |
5 | Übungsblatt 5 | 14.05.2008 | - | 21.05.2008 | XUP Virtex-II Pro Hardware Reference Manual (nur Uni-Netz): XUPV2P_RM.pdf |
6 | Übungsblatt 6 | - | - | 28.05.2008 | XUP Virtex-II Pro Schematics (nur Uni-Netz): XUPV2P_sch.pdf |
7 | Übungsblatt 7 | - | - | 04.06.2008 | |
8 | Übungsblatt 8 | - | - | 11.06.2008 | |
9 | Übungsblatt 9 | 11.06.2008 | 18.06.2008 | - | |
10 | Übungsblatt 10 | 18.06.2008 | 25.06.2008 | - | |
11 | Übungsblatt 11 | 25.06.2008 | 02.07.2008 | - | |
12 | Übungsblatt 12 | 02.07.2008 | 09.07.2008 | - | |
13 | Übungsblatt 13 | 09.07.2008 | 16.07.2008 | - |