PLL是Phase Locked Loop的缩写,指的是锁相环,在电子和集成电路方面的使用略有不同;
第一次听说PLL是在大学的时候参加TI举办的电子设计大赛,当时的设计主要是利用了一个面包板,记得设计了简单的低通滤波器和带通滤波器,然后采用了两个精密电阻(听说一个电阻都要好几块),然后稍微编了点程序,主要实现的功能是可以生成几种波形,可以选定的生成波形,可以改变幅度,频率,相位,并将波形和具体的参数显示到开发板的显示器上。
PLL主要有三部分组成,鉴相器PD(Phase Detector),环路滤波器LP(Loop Filter),压控振荡器VCO(Voltage Controlled Oscillator),锁相环中的鉴相器又称为相位比较器,他的主要作用是检测输入信号和输出信号的相位差,并将检测出的相位差信号转换成uD(t)电压信号输出,该信号经低通滤波器滤波后形成压控振荡器的控制电压uC(t),对振荡器输出信号的频率实施控制。
PLL主要是用在比较精密的对时钟要求比较严格的地方,PLL大概包括全数字电路PLL:ADPLL,部分数字电路的DPLL,模拟电路组成的linear PLL和软件实现的software PLL,相应的性能总体来说模拟电路的PLL各方面性能最好,而软件实现的则最差。这几种PLL的区别,除却软件PLL是采用编写代码的之外,前三种主要是电路构成方面的不同,就是上述的PLL的组成的三部分略有不同或者完全不同。
PLL的性能指标主要包括:锁定时间(Locked time),也被称为平均捕获时间,是指从上电到相位锁定所需时间的平均值;锁定精度,是指相位锁定情况下的相差的平均值,指的是允许的最小差值;相位抖动(jitter),是指行为锁定情况下的输出的相位的变化的相位差的平均值。
PLL是芯片中很重要的一部分,可以实现数字系统的位同步,载频回复,调频解调,相干接收等,通常每个芯片中都会有很多PLL构成,因为一个芯片中可能有很多不同频率的电路组成,这些电路的频率之间也可能没有太大的关联,因此一个芯片中往往会有很多PLL部分。
另外,PLL的时钟抖动jitter,是后端设计中一个很关键的部分,因为后端设计的时候会有生成时钟树的部分,然后每一个寄存器都是有相应的clk接入点的,相应的在分析时序的时候就会把时钟抖动jitter考虑在内,因为时钟抖动无法确定抖动具体方向,因为它是随机的,所以只能采用最悲观的方式来分析时序路径,在最慢的路径上加上最大的jitter,最快的路径上去掉jitter,在这种情况下满足时序收敛的问题才能保证芯片的时序是收敛的。
所以设计一个好的PLL对一个芯片来说至关重要,因为如果产生频率的时钟出现了问题,不要指望通过后续的步骤来修复它,最终的结果必然是失败。