AXI FULL transfer time

The Python code is running on the CPU, on an OS. There will be some overhead with any Python call, and there will be some variability.

If you are using the AXI GP port, these are not AXI full, so bursts are not being used and these are individual transactions. the Python calls will be dominating the AXI transfers.

You can use the AXI HP ports for “AXI FULL” interfaces. The PL can “pull” the data from PS in this case, rather than the PS “pushing” data opver AXI GP. DMA is one way to do this, but it needs some Python calls to setup, and again this overhead will likley dominate transfer of 24 values. You could build an IP with an AXI full interface that can initiate its own transactions. This would give highest performance.

If you search forums, there has been some discussion on this by others. One thread:

Cathal

2 Likes