- Ensure the conditions in the Card Information and Installation section have been met.
- Create a couple of text files for H2C and C2H with different content using
the following commands:
echo "PS DDR Test" > dma_test_input.txt
echo "XXXXXXXX" > dma_test_output.txt
- Run the test.sh in root,
with
init
as argument, to initialize the DMA related drivers. - Execute the test.sh script, with either
mdt
orrdt
as argument, to launch the QDMA test application for the Zynq UltraScale+ MPSoC or the Zynq UltraScale+ RFSoC. - When the
xilinx-app
prompt comes up, initialize the port with the commandport_init 0 1 0 1024 4096
within the test application. - Using DMA, transfer the data from H2C with the command
dma_to_device 0 1 <H2C text file> <PS/PL DDR address offset> <H2C text file size> 0
. - Confirm if the DMA transfer is successful. An example based on
the example files in step 2 is as follows:
The second test, again based on the files from step 2, is as follows:dma_to_device 0 1 dma_test_input.txt 1073741824 13 0
dma_to_device 0 1 dma_test_output.txt 1073741824 13 0
- Using DMA, transfer the data from C2H with the command
dma_from_device 0 1 <C2H text file> <PS/PL DDR address offset> <C2H text file size> 0
. - Confirm if the DMA transfer is successful. The figure below is a capture of all the steps described in this procedure.
- Close the port with the command
port_close 0
, and then exit the QDMA test application (press Ctrl + D).The DDR test flow and results are shown in the following figure.