FPGA 30 - Zynq SoC FPGA Direct Memory Access (DMA) between PS DDR memory and PL AXI4-Stream FIFO
ฝัง
- เผยแพร่เมื่อ 8 ส.ค. 2023
- In this episode, we're building a complete Zynq SoC FPGA application demonstrating direct memory access (DMA) in both directions between the processing system's DDR memory and another block of memory with an AXI4-stream interface residing in the programmable logic fabric.
The application is validated on the pynq-z1 board.
The DMA engine is configured by the C application through the AXI4-Lite interface to initiate DMA-read and DMA-write operations. In DMA-read operation, a block of 16 32-bit incrementing numbers is transferred from the DDR to the AXI4-Stream FIFO data buffer. That block of data from the AXI4-Stream FIFO is then moved back to the DDR at a different memory location through a DMA-write operation. The received data is then read and verified to validate the complete DMA application works as intended.
#fpga #zynq #vivado #vitis #embedded #verilog #xilinx
Related Zynq SoC FPGA episodes:
FPGA 29 - Zynq SoC FPGA XADC application to measure on-chip power supply voltages and die temperature
• FPGA 29 - Zynq SoC FPG...
FPGA 27 - Zynq SoC FPGA PL interrupts PS to trigger software execution
• FPGA 27 - Zynq SoC FPG...
FPGA 26 - Shared PS-PL AXI BRAM Application on Zynq SoC FPGA (VHDL)
• FPGA 26 - Shared PS-PL...
FPGA 25 - Shared PS-PL AXI BRAM Application on Zynq SoC FPGA (Verilog)
• FPGA 25 - Shared PS-PL...
FPGA 20 - Build complete Zynq SoC FPGA application for PYNQ-Z1 with software control of AXI GPIO LEDs
• FPGA 20 - Build comple...
Recommended prerequisites:
FPGA 1 - Set up AMD Xilinx Vivado/Vitis (free version)
• FPGA 1 - Set up AMD Xi...
FPGA 3 - First Verilog Vivado project for beginners
• FPGA 3 - First Verilog...
FPGA 4 - First VHDL Vivado project for beginners
• FPGA 4 - First VHDL Vi...
FPGA 15 - Xilinx Zynq SoC FPGA Build your first "hello world" program
• FPGA 15 - Xilinx Zynq ...
Thanks for nice tutorial as usual.
You're very welcome!
Nice video
thanks for this tutorial video
hi, i have a question, and I need your assistance. When does DMA stop reading? Many thanks.
Hi thanks for the video, dont you need to connect the fixed_io and DDR pins of the Zynq7 block in the PL via the auto connect?
Hi thanks for the tutorial. What changes i have to do if i want to send data from PL AXI SPI to PS DDR3 using DMA
Nice video. Do you have another showing how an FPGA on the PCIE bus of a PC can do DMA C2H via PCIE ?
could the design be shared? maybe tcl