I'm, using an iMX7D SoC with 30Mhz clock generated by the video PLL and attempt to activate the spread spectrum mechanism in the video PLL.
I rely on the 2 formulas presented in the iMX6 reference manual as well as in posts here. The 2 are:
1) Spectrum spread range = STOP/DENOM * Fref
2) Modulation frequency = Fref * STEP/2*STOP
I use the following registers:
and perform the following writes:
write 0x00000000 to Bit 15..15 of 0x30360140 //ENABLE=0x0
write 0x00001770 to Bit 0..29 of 0x30360160 //DENUM=0x1770
write 0x000061A8 to Bit 16..31 of 0x30360140 //STOP=0x61A8
write 0x00000006 to Bit 0..14 of 0x30360140 //STEP=0x6
write 0x00000000 to Bit 15..15 of 0x30360140 //ENABLE=0x1
From testing I've done I do not see a correlation between formula #1 and actual measured results.
Using above values I measure apx. 5MHz spectrum spectrum while using the formula I receive an unreasonable figure for a 30Mhz clock. (using Fref=24Mhz, Spectrum spread range = (25000/6000) * 24Mhz = 96Mhz)
I have played around with different values and clock frequencies and see that increasing STOP or decreasing DENUM does in fact increase the spread spectrum range but do not seem to find a correlation to the formula.
Any help on this issue or explanation of the relation between these values (DENUM/STOP/STEP) will be appreciated.