RFSoC 4X2 PYNQ board ADC readout

Hello, I am using the RFSoC 4X2 PYNQ board, and I have connected the DAC to the ADC. I am trying to send a signal at 4430 MHz from the DAC and read it through the ADC to plot the information in frequency-amplitude format. However, for some reason, I am having trouble plotting it correctly. Is there anything that the hardware automatically processes, such as up/down conversion or mixing, when reading the information? What methods should I use to read signals in the high-frequency range?

Thank you for your attention. Have a great day!


Let me know if you need anything else!

1 Like

Hi,
How did you send your signal? Did you use a method similar of that notebook?
(RFSoC-PYNQ/boards/RFSoC4x2/base/notebooks/rfdc/02_rf_spectrum_analysis.ipynb at master · Xilinx/RFSoC-PYNQ · GitHub)

Which plotting error do you have?

You might want to take a look at this introduction notebook:

It has a good writeup on what it seems you want to do. Note however that it uses a 1228.8MHz mixing frequency for the ADC, which might be ok for the 4430MHz tone the DAC is putting out. In that case when you digitize and plot you will see a 4430-1228.8=3201.2MHz signal.

If you want to change the mixing frequency, you can do so by doing something like this, setting ADC_A to 1000MHz and ADC_B to 1200MHz as examples.

base.radio.receiver.channel[2].adc_block.MixerSettings[‘Freq’] = -1000.0
base.radio.receiver.channel[2].adc_block.UpdateEvent(1)
base.radio.receiver.channel[3].adc_block.MixerSettings[‘Freq’] = -1200.0
base.radio.receiver.channel[3].adc_block.UpdateEvent(1)

Drew

1 Like