Lerninhalte |
Ein hochintegriertes digitales System wird von den Studenten in Projektteams vollständig vom Konzept bis zur Realisierung in einem Layout umgesetzt. Dabei werden algorithmische Optimierungen, Architektur- und Schaltungsvarianten untersucht und evaluiert. Mit erfolgreichem Abschluss des Moduls besitzen die Teilnehmer Kenntnisse über aktuelle Trends und Entwicklungen im Bereich integrierter Systeme.
Hochintegrierte Systeme werden bezüglich vieler und oft konkurrierender Zielgrößen optimiert und unterliegen Beschränkungen z.B. bezüglich Fläche, Kosten, Performance, Energieumsatz und Robustheit. In diesem Modul wird anhand eines praxisnahen Beispiels der gesamte Entwurfsfluss einer integrierten Schaltung von der Idee über den Algorithmus und die Systemarchitektur bis zum Prototyp und zum realen Chip vermittelt. Dafür stehen industrielle Entwicklungswerkzeuge zur Verfügung, mit denen die Studenten in kleinen Teams praxisgerecht ihre Lösung entwerfen und sukzessive verfeinern.
- Theoretische Aufarbeitung der Aufgabenstellung
- Exemplarische Konzeption
- Entwurf der Architektur
- Simulation
- Verifikation
- Test
- Realisierung
- Backannotation
- Präsentation und Diskussion der Zwischen- und Endergebnisse
- Einführung in grundlegende Speichertechnologien und Geräten für rekonfigurierbare Logik (FPGAs)
- Praxisnahe Einführung in Hardwarebeschreibungssprachen
- Grundkomponenten der Rechnerarchitektur sowie deren Optimierungen: z.B. Schieberegister, Multiplexer, Barrel-Shifter, Zähler Addierer, Addierer, Multiplizierer, Block RAM und Zustandsautomaten
- Ausnutzung der genannten Komponenten für den optimierten CPU-Entwurf
- Entwicklung einer vollständigen Single-Cycle-CPU aufbauend auf den genannten Komponenten
- Optimierungen der Single-Cycle-CPU wie Pipelining, Caches, Parallelität und Evaluierung der selbigen
- Schnittstelle zur Software: Einführung in Assembler, insbesondere im Hinblick auf die entwickelte CPU und das Zusammenspiel zwischen Programmcode, Befehlssatz und Ausführungskosten
- Erweiterung der CPU um spezielle Rechenwerke, Bus und Peripheriegeräte
Praktikum zur Optimierung der zuvor entwickelten CPU im Hinblick auf gewählte Evaluationsmetriken (z.B. Ausführungszeit, Fläche, Energie)
|