Providing support for Alveo boards
Created by: selwyn96
This PR provides backend support for Alveo boards (U50, U200, U250 and U280) by leveraging the VivadoAccelerator backend. Reference: https://github.com/fastmachinelearning/hls4ml/issues/496.
Changes:
In hls4ml/templates/vivado_accelerator/alveo
Added RTL files which act as AXI stream to AXI master adapter for the Alveo boards.
The axi-stream tcl scripts for all boards.
The python drivers.
In /hls4ml/backends/vivado_accelerator/vivado_accelerator_backend.py
Added a make_xclbin function that generates the xclbin container by linking the project and object files.
Tests
Modified the test/hls4ml-keras-test.sh
script to test the functionality of the branch.
A more comprehensive tutorial for training and deploying on the Alveo boards can be found at https://github.com/selwyn96/Alveo-tutorial
Slides
(https://docs.google.com/presentation/d/1D9tryRyFp6kSb2ytc8kBLJ-El4CB_giDGnOQ2lFuLzs/edit?usp=sharing)