Xilinx / finn

Dataflow compiler for QNN inference on FPGAs
https://xilinx.github.io/finn
BSD 3-Clause "New" or "Revised" License
681 stars 218 forks source link

Support for multi-packed DSP58s for VVUs #975

Closed mmrahorovic closed 4 months ago

mmrahorovic commented 5 months ago

This PR is a clean-up of PR #907 where the Thresholding related changes have been excluded. Note: this PR depends on

  1. Adds support for utilizing multi-packed DSP58s for the HLS-based VVAU layer. For weights and activations that are between 4- and 8-bits wide (with the exception of 9-bits for activations for DSP58), the custom layer packs 2, 3 or 4 elements on the input datapath of the DSP to achieve multiple MACs per cycle per DSP58, which depends on the targeted board and quantization.

Functionalities to be added for the VVU

Tests

Outstanding bugs & features