Bienvenido al repositorio de ejemplos de SDAccel. Este repositorio contiene los ejemplos más recientes para ayudarlo a comenzar con la optimización de aplicaciones dirigidas a placas de aceleración Xilinx PCIe FPGA. Todos los ejemplos están listos para ser compilados y ejecutados en placas compatibles con SDAccel y socios de servicios acelerados en la nube. El repositorio está organizado de la siguiente manera:
Ejemplos de SDAccel Git Se supone que el usuario está familiarizado con el entorno, la configuración, la programación y el flujo de depuración básicos de SDAccel. De lo contrario, se recomienda cubrir estos temas en las Guías del usuario de SDAccel:
Junta | Versión de software |
---|---|
Xilinx Alveo U200 | SDx 2019.1 |
Xilinx Alveo U250 | SDx 2019.1 |
Xilinx Alveo U280 | SDx 2019.1 |
Se recomienda principalmente comenzar con el ejemplo Hello World, que informa a los nuevos usuarios sobre la estructura básica de una aplicación basada en SDAccel.
Como parte de las capacidades disponibles para un desarrollador de aplicaciones, SDAccel incluye entornos para probar la corrección de una aplicación tanto a nivel funcional de software como a nivel de emulación de hardware.
Estos modos, denominados sw_emu y hw_emu, permiten al desarrollador perfilar y evaluar el rendimiento de un diseño antes de compilarlo para su ejecución en la placa. Se recomienda que todas las aplicaciones se ejecuten al menos en modo sw_emu antes de compilarlas y ejecutarlas en una placa FPGA.
cd <PATH TO SAMPLE APPLICATION>
make all TARGET=<sw_emu|hw_emu> DEVICE=<FPGA Platform>
dónde
sw_emu = software emulation
hw_emu = hardware emulation
NOTA: El flujo de emulación de software es únicamente una verificación de la corrección funcional. No estima el rendimiento de la aplicación en hardware.
El flujo de emulación de hardware es una simulación cíclica precisa del hardware generado para la aplicación. Por lo tanto, se espera que esta simulación lleve mucho tiempo. Se recomienda que para este ejemplo el usuario omita la ejecución de la emulación de hardware o modifique el ejemplo para trabajar con un conjunto de datos reducido.
Flujo de ejecución recomendado para aplicaciones de ejemplo en emulación
El archivo MAKE de la aplicación puede ejecutarse directamente con el siguiente comando:
cd <PATH TO SAMPLE APPLICATION>
make check TARGET=<sw_emu|hw_emu> DEVICE=<FPGA Platform>
dónde
sw_emu = software emulation
hw_emu = hardware emulation
Si la aplicación no se ha compilado previamente, la regla de verificación del archivo MAKE compilará y ejecutará la aplicación en el modo de emulación seleccionado por el usuario.
El comando para compilar la aplicación para su ejecución en la placa de aceleración FPGA es
cd <PATH TO SAMPLE APPLICATION>
make all DEVICE=<FPGA Platform>
El objetivo predeterminado del archivo MAKE es compilarlo para hardware. Por lo tanto, no es necesario configurar la opción OBJETIVOS. NOTA: La compilación para la ejecución de aplicaciones en hardware genera una lógica personalizada para implementar la funcionalidad de los núcleos en una aplicación. Es típico que los tiempos de compilación del hardware oscilen entre 30 minutos y un par de horas.
Colección de ejemplos orientados a enseñar al usuario las mejores prácticas sobre cómo utilizar diferentes funciones de SDAccel y comenzar con su propia aplicación.
Colección de ejemplos de descarga de procesadores a unidades informáticas basadas en FPGA.
Colección de ejemplos en procesamiento de imágenes y videos.
Colección de bibliotecas comunes utilizadas en todos los ejemplos para ayudar en el desarrollo rápido del código host de la aplicación.
Colección de funciones de utilidad utilizadas como parte de los Makefiles en todos los ejemplos. Este conjunto incluye reglas y scripts de Makefile para iniciar aplicaciones compiladas de SDAccel en placas alojadas por Nimbix directamente desde el terminal del desarrollador.
Se han implementado placas de aceleración FPGA en la nube. Para obtener información sobre cómo ejecutar el ejemplo dentro de una nube específica, consulte las siguientes guías.
Si tiene preguntas y obtiene ayuda sobre cualquier proyecto en este repositorio o sus propios proyectos, visite los foros de SDAccel.
Para ejecutar estos ejemplos utilizando la GUI de SDAccel, siga las instrucciones de configuración en README de la GUI de SDAccel.