Programmierung von Xilinx Zynq SoCs mit MATLAB und Simulink
Programm ansehen und anmeldenKursbeschreibung
Themen sind unter anderem:
- Überblick über die Zynq Plattform und Einrichten der Entwicklungswerkzeuge
- Einführung zu Embedded Coder und HDL Coder
- Erzeugen und Verwenden eines IP-Cores
- Verwenden der AXI4-Schnittstelle
- Processor-in-the-Loop-Verifikation
- Datenschnittstelle zu Echtzeitanwendungen
- Entwickeln von Gerätetreibern
- Benutzerdefiniertes Referenzdesign
Tag 1 von 2
Überblick über die Zynq-Plattform und Einrichten der Entwicklungsumgebung
Ziel: Konfigurieren der Zynq-7000-Plattform und der MATLAB-Umgebung.
- Überblick über Zynq-7000
- Einrichten der Zynq-Plattform und -Software
- Konfigurieren der MATLAB-Umgebung
- Testen der Verbindung zur Zynq-Hardware
Einführung zu Embedded Coder und HDL Coder
Ziel: Konfigurieren von Simulink-Modellen zum Generieren von Embedded Code und Verstehen des erzeugten Codes.
- Architektur einer eingebetteten Anwendung
- Generierung von ERT-Code
- Codemodule
- Datenstrukturen im generierten Code
- Konfigurieren eines Simulink-Modells für die HDL-Codegenerierung
- Einsetzen des HDL Workflow Advisors
Erzeugen und Verwenden eines IP Cores
Ziel: Mit Hilfe des HDL Workflow Advisors ein Simulink Modell konfigurieren, HDL und C Code erzeugen und auf der Zynq Plattform implementieren.
- Konfigurieren eines Subsystems für die Programmierbare Logik (PL)
- Einstellen des Target Interfaces und der Peripherie
- Erzeugen des IP-Cores und dessen Integration mittels SDK
- Erstellen und Implementieren des FPGA-Bitstreams
- Erstellen und Implementieren eines Software-Interface-Modells
- Einstellen von Parametern während einer External Mode Simulation
Verwenden der AXI4-Schnittstelle
Ziel: Einsetzen verschiedener AXI Schnittstellenkonfigurationen, um Daten zwischen dem Prozessor System und der Programmierbaren Logik auszutauschen.
- Überblick über die AXI-Schnittstelle
- AXI4-Lite-Anwendungen
- Benutzen von AXI4-Stream
- Überlegungen zur AXI4-Performance
Processor-in-the-Loop-Verifikation
Ziel: Processor-in-the-Loop benutzen, um Algorithmen auf der Zynq-Plattform während ihrer Ausführung zu verifizieren und Laufzeiten zu messen.
- Arbeiten mit Processor-in-the-loop (PIL) auf der Zynq-Plattform
- PIL-Verifikation bei Modellreferenzen
- Laufzeitmessung mit PIL
- Überlegungen zu PIL
Tag 2 von 2
Datenschnittstelle zu Echtzeitanwendungen
Ziel: Gewährleisten des Datenaustauschs zwischen Simulink und der Echtzeitanwendung auf der Zynq Plattform mit Hilfe der User-Datagram-Protocol Schnittstelle.
- Überblick über die Datenschnittstelle UDP
- Konfigurieren des UDP-Blocks für Datenaustausch
- Synchronisieren der Daten zwischen Simulink und Zynq
- Benutzen von AXI4-Stream als Datenschnittstelle
- Partitionierung des Designs
- Überlegungen zur Datenschnittstelle
Entwickeln von Gerätetreibern
Ziel: Entwickeln von Gerätetreibern zur Integration von Peripherie auf dem Zynq Processing System.
- Ablauf bei der Entwicklung von Gerätetreibern
- Einsatz des Legacy Code Tools
- GPIO-Schnittstelle
- Cross-Compiling von Gerätetreibern
Benutzerdefiniertes Referenzdesign
Ziel: Erzeugen wiederverwendbarer IP-Cores für Vivado und Registrieren eines benutzerdefinierten Referenzdesigns.
- Gründe für ein benutzerdefiniertes Referenzdesign
- Erstellen wiederverwendbarer IP-Cores für Vivado
- Überblick über Referenzdesigns
- Anpassen eines Referenzdesigns
- Registrieren des Board-Designs und des Referenzdesigns
Stufe: Fortgeschrittenenkurse
Voraussetzungen:
- Simulink Grundlagen (oder Simulink Grundlagen für Anwendungen im Automobilbau)
- Kenntnisse zu C und HDL Programmiersprachen sind vorteilhaft
Dauer: 4 Halbtage
Sprachen: English