I am working with a FMCOMMS5 with no-OS in a custom KC705 board design under Vivado 2015.2.1.
I have successfully worked with one FMCOMMS3 and two FMCOMMS3 in the KC705 board and I moved to this FMCOMMS5 due to project requirements (sync both AD9361).
I have done all hardware design following the reference design of ZC706 for the FMCOMMS5 with the modifications required for the Microblaze architecture and the correct KC705 pinouts.
I have also customized the No-OS code and the communication with both AD9361 has been successfully achieved (tested with SPI write and read). Both AD9361 Cores are initialized without errors, but I can only have 1 AD9361 transmitting correctly at a time.
I have fed sine waves to all DAC I inputs, looped-back all RF outputs to the corresponding RF inputs and observed all ADC outputs with ILAs. I have noticed that by changing the digital_interface_tune_skip_mode parameter, I can transmit properly with either AD9361_0 or AD9361_1. When this parameter is 0 (digital tune is performed), AD9361_0(Master) ADC outputs the transmitted sine wave (observed at the ILA). On the other hand, when the parameter is 2 (no tune is performed – default values are used) AD9361_1(Slave) ADC outputs the transmitted sine wave (observed at the ILA). Please look at the attached plots.
I have already tried changing this tune parameter to 0 before AD9361_0’s AD9361_init and to 2 before the AD9361_1’s AD9361_init, but the AD9361_0 ADC is still the only one outputting a sine wave.
Do you have any suggestions on how to tackle such issue?