智能全数字锁相环的设计
1 引言
本文引用地址:https://www.eepw.com.cn/article/21148.htm数字锁相环路已在数字通信、无线电电子学及电力系统自动化等领域中得到了极为广泛的应用。随着集成电路技术的发展,不仅能够制成频率较高的单片集成锁相环路,而且可以把整个系统集成到一个芯片上去。在基于fpga的通信电路中,可以把全数字锁相环路作为一个功能模块嵌入fpga中,构成片内锁相环。
锁相环是一个相位误差控制系统。它比较输入信号和振荡器输出信号之间的相位差,从而产生误差控制信号来调整振荡器的频率,以达到与输入信号同频同相。所谓全数字锁相环路(dpll)就是环路部件全部数字化,采用数字鉴相器(dpd)、数字环路滤波器(dlf)、数控振荡器(dco)构成的锁相环路,其组成框图见图1示。

2 k计数器的参数设置
74297中的环路滤波器采用了k计数器。其功能就是对相位误差序列计数即滤波,并输出相应的进位脉冲或是借位脉冲,来调整i/d数控振荡器输出信号的相位(或频率),从而实现相位控制和锁定。
k计数器中k值的选取需要由四根控制线来进行控制,模值是2的n次幂。在锁相环路同步的状态下,鉴相器既没有超前脉冲也没有滞后脉冲输出,所以k计数器通常是没有输出的;这就大大减少了由噪声引起的对锁相环路的误控作用。也就是说,k计数器作为滤波器,有效地滤除了噪声对环路的干扰作用。
显然,设计中适当选取k值是很重要的。k值取得大,对抑止噪声有利(因为k值大,计数器对少量的噪声干扰不可能计满,所以不会有进位或借位脉冲输出),但这样捕捉带变小,而且加大了环路进入锁定状态的时间。反之,k值取得小,可以加速环路的入锁,但k计数器会频繁地产生进位或借位脉冲,从而导致了相位抖动,相应地对噪声的抑制能力也随之降低。
为了平衡锁定时间与相位抖动之间的矛盾,理想的情况是当数字锁相环处于失步状态时,降低k计数器的设置,反之加大其设置。实现的前提是检测锁相环的工作状态。
3 工作状态检测电路
图2为锁相环状态检测电路,由触发器与单稳态振荡器构成,fin为输入的参考时钟,fout为锁相环振荡器输出的时钟移相900。fout对fin的抽样送入单稳态振荡器。


4 智能锁相环的设计
智能全数字锁相环的设计如图5所示。锁相环与cpu接口电路,由寄存器来完成。对于cpu寄存器内容分为两部分:锁相环的工作状态(只读),k计数器的参数值(读/写)。cpu可以通过外部总线读写寄存器的内容。

cpu根据锁相环状态就可以对锁相环k计数器进行最优设置。实际测试时设置k初始值为23,此时锁相环的捕捉带较大,在很短时间内就可以达到锁定状态,lock变为低电平。cpu检测到此信号后自动将k值加1,如lock仍然为低电平,cpu会继续增加k 值;直到锁相环失锁,记住其最佳设置值。设置k为初始值,锁定后,设置到最佳值,这样锁相会快速进入最佳的锁定状态。
关于cpu的选择有三种方案:①fpga片内实现cpu。片上系统的发展使其成为可能。②与片外系统共用cpu。dpll大多用于通信系统中,而大部分通信系统都有嵌入式cpu。③单独采用一个廉价单片机(如89c51),不仅可用于智能锁相环的控制,还可控制外部ram实现fpga的初始装载,一机多用,经济实惠。可以视具体情况而定。
5 结论
智能全数字锁相环,在单片fpga中就可以实现,借助锁相环状态监测电路,通过cpu可以缩短锁相环锁定时间,并逐渐改进其输出频率的抖动特性。解决了锁定时间与相位抖动之间的矛盾,对信息的传输质量都有很大的提高。此锁相环已用于我校研发的数字通信产品中。
评论