锁相环在通信、无线电电子学和自动控制等领域得到了极为广泛的应用,它已成为各类电子系统中一个十分重要的部件。由于全数字锁相环(ADPLL)消除了模拟锁相环中压控振荡器(VCO)的非线性,鉴相器不精确,部件易饱和以及高阶环不稳定等特点,而其本身又具有参数稳定、可靠性高、易于集成的特点,因此,ADPLL得到了越来越多的应用。传统的数字锁相环系统是希望通过采用具有低通特性的环路滤波器,获得稳定的振荡控制数据。对于数字滤波器采用基于DSP的运算电路的全数字锁相环,当环路带宽很窄时,环路滤波器的实现将需要很大的电路量,这给专用集成电路的应用和片上系统SoC(System on Chip)的设计带来一定困难。另一种类型的全数字锁相环是采用脉冲序列低通滤波计数电路作为环路滤波器,如随机徘徊序列滤波器、先N后M序列滤波器等。这些电路通过对鉴相器模块产生的相位误差脉冲进行计数运算,获得可控振荡器模块的振荡控制参数。由于脉冲序列低通滤波计数方法是一个比较复杂的非线性处理过程,难以进行线性近似。因此,无法采用系统传递函数的分析方法确定锁相环的设计参数,不能实现对全数字锁相环性能指标的解耦控制和分析,无法满足较高的应用要求。
针对上述全数字锁相环存在的问题,本文提出了采用具有比例积分特性的数字控制方法来实现环路滤波的全数字锁相环。整个系统采用VHDL语言编程设计,使用QuartusⅡ软件对系统设计进行编译和仿真验证,给出了计算机的仿真结果。
1 全数字锁相环的结构及工作原理
基于比例积分控制算法的二阶全数字锁相环的系统结构,如图1所示。该系统由数字鉴相器(Phase Frequency Detector,PFD)、数字环路滤波器(Digital LoopFilter,DLF)和数控振荡器(Digitally Controlled Oseillator,DCO)三个部分组成。数字鉴相器由双D触发器、RS锁存器和与非门构成,电路原理图如图2所示。此数字鉴相器具有鉴频功能和鉴相功能,其线性鉴相范围是±2π。当两个输入信号的频率相等时,其输出为两输入信号之间的相位差;当两个输入信号的频率不等时,其输出为两输入信号之间的频率差。因此,在数字锁相环路中使用这种鉴相器,对频率捕捉是非常有利的。在环路锁定之前,鉴相器起鉴频器的作用,使DCO的频率向输入信号频率靠近。环路锁定之后,鉴相器的输出正比于两输入信号之间的相位差,保持环路锁定。
数字环路滤波器的主要作用是抑制噪声及高频分量,并且控制环路相位校正的速度与精度。其工作原理是对鉴相器输出的相位误差经一阶积分环节和比列环节调节后,分别产生积分控制参数NP和比例控制参数NI,然后取出这两个控制参数之和作为数控振荡器的控制参数。为了使DLP输出的控制码组在同一瞬间并行送入DCO,在这两个环路部件之间接入一缓冲寄存器。数字鉴相器送来的频率/相位误差序列分别作为周期性归零可逆计数器和不归零可逆计数器的时钟输入端。周期性归零可逆计数器是每周期计数值输出的同时被清零一次,不归零可逆计数器是一直计数而不被清零。两个可逆计器的计数方向控制信号是由数字鉴相器送来本地估算信号导前或滞后于输入信号的标志信号。不归零可逆计数器相当于一个理想积分环节,而周期性归零的可逆计数器相当于比例环节。数控振荡器由全加器和寄存器构成的累加器组成。若累加器位长为N,则低位输入端NL接DLF的控制码组G,高位NH接DCO自由振荡频率f0的控制码组C(该参数可由设计者设定)。当控制码组G均为‘0’时,DCO输出端最高位AN的输出信号的频率便是DCO的自由振荡频率f0。在环路锁定过程中,控制码组G不是全为零,此时累加器的累加结果将进位而改变累加器的分频系数,从而改变DCO输出信号的频率,实现比例积分控制参数对本地估算信号的控制作用,最终达到锁定的目的。
2 全数字锁相环的设计和软件仿真
依据图1锁相环系统的结构,利用Altera公司的QuartusⅡ设计软件,采用自顶向下的模块化设计方法,用VHDL对全数字锁相环的各个部件分别进行编程设计,然后对该系统做综合设计和仿真。最后,采用Altera公司的Cyclone系列的FPGA器件实现了锁相环系统的硬件功能。图3为QuartusⅡ软件设计的基于PI控制的二阶全数字锁相环的电路原理图。此锁相环电路原理图由D触发器、双D触发器鉴相器(FPD)、数字环路滤波器(DLF)、数控振荡器(DCO)和锁定检测模块组成。D触发器起到延时作用,使得输入信号与DCO的输出信号同步。FPD的作用是比较输入与输出矩形信号的前沿,并产生超前/滞后的标志信号和频率/相位误差序列。DLF中的周期性归零可逆计数器和不归零可逆计数器根据频率/相位误差序列生成比例积分控制信号,即DCO的低位控制字。DCO可根据高位控制字和低位控制字的变化自动调节其输出信号的频率。锁定检测模块根据频率/相位误差来判定系统是否已经锁定,并发出相应的锁定标志信号。本锁相环系统的设计参数如下:DLF内周期性归零可逆计数器和不归零可逆计数器的位长为14位;DCO中累加器的位长为28位,系统高速时钟频率clkin为1.25 MHz,比例积分控制码组G的字长为14位,自由振荡频率f0控制码组C的字长为14位。图4为输入信号F_ref=1.28 kHz的时序仿真图,锁频时间T=10.62 ms。图5为输入信号F_ref= 2.5 kHz的时序仿真图,锁频时间T=5.43 ms。
图6为输入信号F_ref=10 kHz的时序仿真图,锁频时间T=874.86 μs;图7为输入信号F_ref由10 kHz跳变到2.5 kHz时的时序仿真图;图中clkin为系统时钟,RST为系统复位信号,F_ref为输入信号,F_out为输出信号,EN为使能计数控制信号,LOAD为置数控制信号,BH为数控振荡器高位控制字,G为数控振荡器低位控制字,K1,K2为数字环路滤波器的预置数。通过对所设计的全数字锁相环的时序仿真图可以看出:适当地调节参数BH,K1和K2,锁相环能够锁定不同频率的输入信号。而且,该系统具有一定的自适应的特性,对频率发生跳变的输入信号也能够实现快速跟踪。
3 结语
实验表明:该锁相环在一定的频率范围内能较快的锁定输入信号,在15个输入信号周期内环路就进入锁定状态,相位抖动小于输出信号周期的5%。该全数字锁相环具有电路结构简单,锁定速度快,易于集成等特点。可采用VHDL语言完成系统设计,使用EDA软件进行综合仿真,并可制成片内锁相环。 |