ZYNQ Ultrascale+ FIR DMA

Hello all,

After the MNIST on ZYNQ example, it is time to move to a better and more powerful platform ZYNQ Ultrascale (ARM is more powerful).

This FIR example is based on the previous example here.
Although this is preformed on ZYNQ rather than ZYNQ-Ultrascale+, both platforms are so similar.

In this example we are going to compare both software Python signal filter and HW accelerated filter.

  1. Lets start with the overall block-diagram.
    fir_acc.pdf (385.5 KB)

  2. Take a closer look to the filter block

  3. Make sure both the AXI Master and Slave data width is 32 bit.

  4. The FIR filter block constants and setups:

-255,-260,312,-288,-144,153,616,1233,1963,2739,3474,4081,4481,4620,4481,4081,3474,2739,1963,1233,616,153,-144,-288,-312,-260,-255


  1. Synthesis and compile the design and copy the required files to the PYNQ folder.
    image
    The Jupyter notebook example is attached here as well
    fir_filter.ipynb (3.5 KB)

Conclusion
The acceleration rate is over x14 compared to software-based filter:

1 Like