Hello @marioruiz ,
Kindly help me in solving the below issue
Title
PYNQ 3.1 (ZU48DR / ZCU208): Board hangs when accessing AXI DMA from Python during RF loopback bring-up
Environment
-
Board/SoC: ZU48DR RFSoC (ZCU208 class platform)
-
BSP/Image: PYNQ 3.1
-
Overlay: custom base.bit + base.hwh (contains RFDC + AXI DMA(s) + RX/TX chains)
-
Python: PYNQ notebooks (Jupyter)
What I’m trying to do
Validate an RF loopback test: DAC → (loopback) → ADC, with capture via AXI DMA to DDR and analysis in Python.
Symptoms
-
As soon as I access a DMA channel from Python (e.g., create DMA object / call
sendchannel.transfer()orrecvchannel.transfer()), the board hangs: Jupyter becomes unresponsive, and I must power-cycle/reboot. -
When I simulate ADC data without DMA, all plotting/processing works fine (so user-space flow is OK).
-
RFDC control via
xrfdcworks (I can program mixers etc.), but DMA access causes the hang.
IP naming (from ol.ip_dict.keys() for context)
Examples:
radio/receiver/channel_00/axi_dma_0, radio/receiver/channel_00/axi_dma_1,
radio/transmitter/channel_30/axi_dma_2, … (plus RFDC tiles/blocks, decimators, spectrum analyzers, etc.)
Repro steps (high level)
-
ol = Overlay('/run/media/base.bit')(matchingbase.hwhpresent). -
Create DMA handles and/or call transfers, e.g.
-
from pynq.lib.dma import DMA -
rx = DMA(ol.ip_dict['radio/receiver/channel_00/axi_dma_0']) -
rx.recvchannel.transfer(buf)→ system becomes unresponsive.
-
-
Requires board restart.
Regards,
Ashritha S