Kursbeschreibung
Themen sind unter anderem:
- Vorbereiten von Simulink-Modellen für die HDL-Codegenerierung
- Erzeugen von HDL Code und zugehöriger Testbench
- Optimieren des HDL Codes bezüglich Geschwindigkeit und Ressourcennutzung
- Modellieren von Streaming-Architekturen mittels expliziter Steuersignale
- Integrieren von vorhandenem HDL Code und IP-Cores
- Verifizieren von HDL Code mittels Testbench und Cosimulation
Tag 1 von 2
Vorbereiten von Simulink-Modellen für die Code-Erzeugung
Ziel: Simulink-Modelle für die HDL Code-Generierung vorbereiten. Generieren von HDL-Code mit zugehöriger Testumgebung für einfache Modelle, die keine Optimierung erfordern.
- Vorbereiten von Simulink-Modellen für die HDL-Codegenerierung
- Erzeugung von HDL Code
- Erzeugung einer Testbench
- Verifizieren von generiertem HDL-Code mit einem HDL-Simulationsprogramm
Einstellen der Festkomma-Rechengenauigkeit
Ziel: Manuelles Festlegen der Fixed-Point-Einstellungen und Verwenden von internen Regeln. Verwenden des Fixed-Point Tools zur Optimierung der Effizienz und Genauigkeit der Festkomma-Architektur des Modells.
- Festkommaskalierung und -vererbung
- Ablauf im Fixed-Point Designer
- Anwenden des Fixed-Point Tools
- Befehlszeilenschnittstelle
Generieren von HDL-Code für Multiraten-Modelle
Ziel: Generieren von HDL-Code für Multiraten-Designs. Verstehen verschiedener Modellierungsstrategien zur Implementierung von Multiraten-Designs.
- Vorbereiten eines Multiraten-Modells für die Generierung von HDL-Code
- Erzeugung von HDL Code für Single und Multiple Clock Pins
- Verifizieren von Multiraten-Designs mit Cosimulation
- Entwerfen einer vereinfachten Streaming-Schnittstelle für Multiraten-Anwendungen
Tag 2 von 2
Optimierung von generiertem HDL-Code
Ziel: Benutzen von Pipeline-Strukturen, um Timing Anforderungen zu erfüllen. Verwenden bestimmter Hardware-Implementierungen und von Resource-Sharing zur Flächenoptimierung.
- Generieren von HDL-Code mit HDL Workflow Advisor
- Einhaltung von Timing Anforderungen mittels Pipelining
- Auswahl bestimmter Hardware-Implementierungen für kompatible Simulink-Blöcke
- Teilen von FPGA/ASIC-Ressourcen in Subsystemen
- Überprüfung des optimierten HDL-Designs auf Bit- und Taktzyklusgenauigkeit
- Zuordnen von Simulink-Blöcken zu dedizierten Hardware-Ressourcen auf dem FPGA
Modellieren und Optimieren von Streaming-Architekturen
Ziel: Modellieren hardwarefreundlicher Streaming-Architekturen mittels expliziter Steuersignale. Manuelles Einstellen von Timing‑ und Flächenoptimierungen und sicherstellen einer korrekte Backpressure‑Weitergabe.
- Modellieren einer vollständig parallelen Streaming-Architektur
- Einfügen eines Pipeline-Registers in ein Taktratenmodell
- Verstehen der Modellierungsschritte von einer parallelen zu einer seriellen Architektur
- Sicherstellen eines korrekten Stall-Verhaltens mittels Valid/Ready-Handshaking
Verwendung von Native Floating Point
Ziel: Implementieren von Gleitkommawerten und -operationen in Ihrem HDL-Code.
- Warum und wann Native Floating Point verwendet werden sollte
- Zielunabhängige HDL-Codegenerierung mit HDL Coder
- Vergleich zwischen Festkomma und Gleitkomma
- Optimierung von Gleitkomma-Implementierungen
Einbinden von externem HDL-Code in generierten HDL-Code
Ziel: Integrieren von vorhandenem HDL-Code in Ihr Design über die Blackbox-Schnittstelle. Parametrisieren von HDL-Code zur Erhöhung der Wiederverwendbarkeit und Lesbarkeit.
- Schnittstellen zu externem HDL-Code
- Erhöhen der Wiederverwendbarkeit und Lesbarkeit des Codes
Stufe: Fortgeschrittenenkurse
Voraussetzungen:
Dauer: 2 Tage
Sprachen: English, 中文, 日本語, 한국어