I want to minimize reference spur level in the output signal of the ADF5355. I've designed the loop filter according to ADIsim PLL - I think this was pretty much successful. However, I noticed that reference spur level depends somehow on the programming process. It means that when I program exactly the same binary sequence to ADF5355 (all 13 registers, from "12" down to "0") several times, in a result I get different spectrums of the output signal after each iteration. Example screenshots I present below.
Each of pictures above I've got by programming exactly the same sequence to ADF5355. After each programming sequence the spectrum is similar to one of those 3 pictures, but selection seems to be random.
The measurement was performed on a custom PCB, but you can notice this effect also on the EVAL-ADF5355 board. Spur level depends on the selected output frequency, however this random effect can be observed at almost any frequency.
Main settings used to configure the PLL:
f_ref = 100 MHz
f_pfd = 10 MHz
f_out = 4 GHz
1. Why the ADF5355 behaves in a non-deterministic way?
2. Is there any way to chose the setup, which gives lowest spur level?
3. After several attempts, I've found a workaround: to change frequency I perform the sequence: change frequency to 6 GHz, wait few miliseconds, finally change frequency to desired one. It is not a big issue for my application, because I change frequency rarely. However this procedure seems a bit strange to me. Can it be simplified to just a single frequency change?