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
- 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: Einrichten einer Korrespondenz zwischen generiertem HDL-Code und bestimmten Simulink-Blöcken im Modell. Verwenden des Fixed-Point-Tools zum 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.
- Vorbereiten eines Multiraten-Modells für die Generierung von HDL-Code
- Erzeugung von HDL Code für Single und Multiple Clock Pins
- Verstehen und Anwenden von Techniken im Umgang mit Clock Domain Crossing
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 für die Bereichsoptimierung.
- 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
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 manuell erstelltem HDL-Code und/oder von IP-Cores anderer Anbieter in Ihrem Design.
- Schnittstellen zu externem HDL-Code
Verifizieren von HDL-Code durch Co-Simulation
Ziel: Verifizieren Ihres HDL-Codes mithilfe eines HDL-Simulators im Simulink-Modell.
- Verifizieren von HDL-Code, der mit HDL Coder generiert wurde
- Vergleichen von manuell geschriebenen HDL Code mit einem "Goldenen Modell"
- Einbinden von HDL-Code in Simulink für die Simulation
Stufe: Fortgeschrittenenkurse
Voraussetzungen:
Dauer: 2 Tage
Sprachen: English, Français, 中文, 日本語, 한국어