Hello ADI Community,
I'm using the AD9467-FMC-250EBZ ADC with a Zynq-7000 SoC (ZedBoard, XC7Z020) for high-speed signal acquisition.
So far, I have successfully captured data from the AD9467 into DDR memory via DMA in bare-metal (Vitis standalone), and I validate the ADC signal using IIO Oscilloscope. This data is later exported to .csv
files for offline ML-based processing in Python.
Now, I want to move to an embedded Linux environment (e.g., PYNQ or Petalinux) on the ZedBoard so I can run Python scripts directly on the board for real-time acquisition, preprocessing, and lightweight ML inference.
My Questions:
-
How can I enable ADC data acquisition via DMA in a Linux environment for the AD9467-FMC on ZedBoard?
-
Are there existing device tree overlays, IIO drivers, or reference designs from Analog Devices that support this setup?
-
-
Can I use IIO in Linux to continuously stream samples from AD9467 into DDR and log them to a file (e.g.,
.csv
) using Python?-
If yes, are there recommended Python bindings (e.g.,
pyadi-iio
) that support this?
-
-
Does Analog Devices provide a Petalinux BSP or prebuilt IIO support for the AD9467 on Zynq platforms like the ZedBoard or ZCU102?
-
Is it better to use PYNQ (for quick Python prototyping) or Petalinux (for full-featured embedded development) for this type of work?
My end goal is to:
-
Stream ADC samples via DMA
-
Store them to DDR
-
Use Python to extract features and run a small ML inference model (ideally in real-time)
Any guidance, references, or links to example designs would be hugely appreciated!
Thank you,
Abbas Ali