X光安检机控制信号时钟提取的设计与实现
从图4可以发现,对于error信号,若前一位数据存在跳变,则输出高电平,否则输出低电平。对于sign信号,当估算时钟超前时,输出高电平,滞后时,输出低电平。该模块输出的两路信号将作为环路滤波器的输入信号,对下级结构进行控制。
2.2 数字环路滤波器
数字环路滤波器在锁相环路系统中主要起两种作用:其一,输出超前调整信号及滞后调整信号,以控制数控振荡器模块,对估计时钟进行相位调整;其二,有数字滤波作用,对噪声信号及高频干扰信号起到较好的抑制作用。数字环路滤波器内部拥有容量为2N的计数器,能够有效消除随机出现的具有正态分布特性的噪声信号。容量2N值越大,对噪声抑制效果越好,但同时2N值越大,跟踪速度越慢,实时捕捉能力下降。所以设计时,2N值的选取要综合考虑安检系统的实际参数要求。出于减少占用FPGA系统资源的考虑,该系统采用随即徘徊滤波器作为实现方案。该滤波器原理框图如图5所示。
在实现方案中,环路滤波器通过加减计数逻辑单元实现。通过读取鉴相单元输出的两路使能信号对计数器进行代数累加或累减操作,当达到记数的边界值0或2N时在输出端送出insert(插入时钟周期)或deduct(扣除时钟周期),与此同时,计数器内部寄存器值从2N自动恢复到N,重新开始。
该模块如图6所示,其中clkl是记数时钟,由数控振荡器模块内部分频得到;clr是启动清零控制端;en接前端模块的error信号,该引脚是对记数功能的使能,即在输入数据(Data_in)有跳变时,才能判断相位误差;up_down是加减记数输入,与上级模块的sign使能信号相连,当sign=1时,做累加操作,当sign=0时,做累减操作,直到代数累加/累减运算到0或2N时,再对累加/累减计数器进行恢复。
评论