新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 智能全数字锁相环的设计

智能全数字锁相环的设计

——
作者:作者: 中国矿业大学 郑红党 时间:2007-01-26 来源:《中国电子网》 收藏

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的抽样送入单稳态振荡器。

在锁定状态如图3,fout与fin具有稳定的相位关系, fout对fin抽样应全部为0或1,这样不会激发振荡器振荡,从而lock将输出低电平;而失锁状态时如图4,fout与fin出现相位之间的滑动,抽样时就不会出现长时间的0或1,单稳态振荡器振荡,使lock输出高电平。锁相环的锁定状态保持时间的认定,可以通过设置振荡器的性能。在fpga设计中,要采用片外元件来进行单稳定时,是很麻烦的,而且也不利于集成和代码移植。单稳态振荡器的实现也可以在fpga内实现,利用计数器的方法可以设计全数字化的上升、下降沿双向触发的可重触发单稳态振荡器。


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可以缩短锁相环锁定时间,并逐渐改进其输出频率的抖动特性。解决了锁定时间与相位抖动之间的矛盾,对信息的传输质量都有很大的提高。此锁相环已用于我校研发的数字通信产品中。



关键词:

评论


相关推荐

技术专区

关闭