> FPGA side is consecutive address range
ok, so you need a memcpy() style transfer from your FPGA's RAM (connected via EMI), to the CPU's internal OCRAM. This transfer shall be triggered by the SDMA event input.
As I already wrote, the exiting ap_2_ap script does memcpy() style transfers, but cannot be triggered by (S)DMA events (only by one of the ARM CPUs). In contrast, the mcu_2_app script uses (S)DMA events, but copies to a single address (FIFO).
In my opinion, you have the following options:
- Change your FPGA design, so that you can access your FPGA's RAM via a single FIFO address.
- Use a processor which a different DMA technologie
- Write your own SDMA script (based on ap_2_ap and mcu_2_app)
- Do this yourself.
- Ask NXPs professional service
- Ask me.
regarding 1)
Even if you can change the FPGA design, you probably would need a customized version of the mcu_2_app script.
regarding 2)
You should know that many processors have also limits accessing external devices via DMA. Some SOC series don't have external event lines at all.
regarding 3)
I have already successfully written a number scripts for the SDMA. In theory, you could do this yourself, but this would add additional efforts and risks to your project.
Christian