Willkommen im SDAccel-Beispiel-Repository. Dieses Repository enthält die neuesten Beispiele, die Ihnen den Einstieg in die Anwendungsoptimierung für Xilinx PCIe FPGA-Beschleunigungskarten erleichtern. Alle Beispiele können auf von SDAccel unterstützten Boards und beschleunigten Cloud-Service-Partnern kompiliert und ausgeführt werden. Das Repository ist wie folgt organisiert:
SDAccel Git-Beispiele Setzt voraus, dass der Benutzer mit der grundlegenden SDAccel-Umgebung, dem Setup, der Programmierung und dem Debugging-Ablauf vertraut ist. Wenn nicht, wird empfohlen, diese Themen in den SDAccel-Benutzerhandbüchern zu behandeln:
Planke | Softwareversion |
---|---|
Xilinx Alveo U200 | SDx 2019.1 |
Xilinx Alveo U250 | SDx 2019.1 |
Xilinx Alveo U280 | SDx 2019.1 |
Es wird in erster Linie empfohlen, mit dem „Hello World“-Beispiel zu beginnen, das neue Benutzer mit der Grundstruktur einer SDAccel-basierten Anwendung vertraut macht.
Als Teil der einem Anwendungsentwickler zur Verfügung stehenden Funktionen umfasst SDAccel Umgebungen zum Testen der Korrektheit einer Anwendung sowohl auf Software-Funktionsebene als auch auf Hardware-emulierter Ebene.
Diese Modi mit den Namen sw_emu und hw_emu ermöglichen es dem Entwickler, die Leistung eines Designs zu profilieren und zu bewerten, bevor es für die Board-Ausführung kompiliert wird. Es wird empfohlen, dass alle Anwendungen mindestens im sw_emu-Modus ausgeführt werden, bevor sie kompiliert und auf einem FPGA-Board ausgeführt werden.
cd <PATH TO SAMPLE APPLICATION>
make all TARGET=<sw_emu|hw_emu> DEVICE=<FPGA Platform>
Wo
sw_emu = software emulation
hw_emu = hardware emulation
HINWEIS: Der Software-Emulationsablauf dient lediglich einer funktionalen Korrektheitsprüfung. Die Leistung der Anwendung in Hardware wird nicht geschätzt.
Der Hardware-Emulationsfluss ist eine zyklusgenaue Simulation der für die Anwendung generierten Hardware. Daher ist davon auszugehen, dass diese Simulation viel Zeit in Anspruch nehmen wird. Es wird empfohlen, dass der Benutzer für dieses Beispiel die Ausführung der Hardware-Emulation überspringt oder das Beispiel ändert, um mit einem reduzierten Datensatz zu arbeiten.
Empfohlener Ausführungsablauf für Beispielanwendungen in der Emulation
Das Makefile für die Anwendung kann mit dem folgenden Befehl direkt von der Anwendung ausgeführt werden:
cd <PATH TO SAMPLE APPLICATION>
make check TARGET=<sw_emu|hw_emu> DEVICE=<FPGA Platform>
Wo
sw_emu = software emulation
hw_emu = hardware emulation
Wenn die Anwendung noch nicht kompiliert wurde, kompiliert die Check-Makefile-Regel die Anwendung und führt sie im vom Benutzer ausgewählten Emulationsmodus aus.
Der Befehl zum Kompilieren der Anwendung zur Ausführung auf dem FPGA-Beschleunigungsboard lautet
cd <PATH TO SAMPLE APPLICATION>
make all DEVICE=<FPGA Platform>
Das Standardziel für das Makefile ist die Kompilierung für Hardware. Daher ist das Festlegen der TARGETS-Option nicht erforderlich. HINWEIS: Die Kompilierung für die Anwendungsausführung in Hardware generiert benutzerdefinierte Logik, um die Funktionalität der Kernel in einer Anwendung zu implementieren. Typischerweise liegen die Hardware-Kompilierungszeiten zwischen 30 Minuten und einigen Stunden.
Sammlung von Beispielen, die darauf abzielen, dem Benutzer Best Practices beizubringen, wie er verschiedene Funktionen von SDAccel nutzen und mit seiner eigenen Anwendung beginnen kann.
Sammlung von Beispielen zum Prozessor-Offloading auf FPGA-basierte Recheneinheiten.
Sammlung von Beispielen zur Bild- und Videoverarbeitung.
Sammlung allgemeiner Bibliotheken, die in allen Beispielen verwendet werden, um die schnelle Entwicklung von Anwendungshostcode zu unterstützen.
Sammlung von Hilfsfunktionen, die in allen Beispielen als Teil der Makefiles verwendet werden. Dieses Set enthält Makefile-Regeln und Skripte zum Starten von SDAccel-kompilierten Anwendungen auf von Nimbix gehosteten Boards direkt über die Terminal-Shell des Entwicklers.
FPGA-Beschleunigungskarten wurden in der Cloud bereitgestellt. Informationen zur Ausführung des Beispiels in einer bestimmten Cloud finden Sie in den folgenden Anleitungen.
Bei Fragen und um Hilfe zu einem Projekt in diesem Repository oder Ihren eigenen Projekten zu erhalten, besuchen Sie die SDAccel-Foren.
Um diese Beispiele mit der SDAccel-GUI auszuführen, befolgen Sie die Setup-Anweisungen in der SDACcel-GUI-README-Datei