首先,得说一下,简单的LC自由振荡的振荡器的频率很脆弱。哪哪都会影响到它。供电大小变化,它会变;环境温度变化,它会变;工艺角变化,它也会变。
所以,如果用MCU提供时钟的话,假设环境温度缓慢变化,则振荡器的输出频率也会缓慢变化,这样就会引起随机相位累积。单独看,可能看不太出来,如果把它和标准时钟输出放在一起,就能感受到变化。你会发现,CKosc的上升沿离标准时钟的上升沿越来越远。

为了避免这个事情发生,就需要对振荡器的相位进行控制。控制的目的,是希望VCO的相位与参考时钟的相位对齐。
如下图所示,这边VCO的上升沿相对于VCK有Δt 秒的偏移,那怎么消除这个Δt的偏移呢。

具体过程如下:假设在t=t1时,VCO的频率突然变大,然后电路开始累积相位差,相位误差逐渐减小。在t=t2时,VCK和VVCO之间的相位差变为0,两信号的相位对齐。


将VCO的输出相位与参考相位对齐的过程,称为“锁相”。那怎么实时控制振荡器的输出相位呢,答案就是采用负反馈,如下图所示。





参考文献:
Razavi, Design of CMOS Phase-Locked Loops
本文由编辑推荐,原出处:https://www.eet-china.com/mp/a170652.html