基于FPGA的快速时钟恢复电路的制作方法

文档序号:14359244阅读:474来源:国知局

本发明涉及时钟恢复技术领域,尤其涉及一种基于fpga的快速时钟恢复电路。



背景技术:

随着串行通信技术的不断发展,网络中的串行数据量不断增大,然而数据在传输过程中不可避免的会出现时钟的抖动,这些抖动给数据传输带来了偏差,因此必须进行时钟的恢复,继而用于数据的重定时。随着集成电路的不断发展,利用fpga(fieldprogrammablegatearray,现场可编程门阵列)实现时钟恢复可以避免使用额外的硬件电路,减小电路面积,提高集成度,同时还可以大大缩短设计周期,节省设计成本。

在实现本发明的过程中,发明人发现现有技术中至少存在如下技术问题:

现有的基于fpga的时钟恢复电路恢复时钟信号需要不停的切换时钟,使最终输出一路与输入数据相位最相近的时钟作为恢复时钟,故时钟恢复所需要的时间较长,且因需要多次切换输出的时钟信号,使时钟信号产生较多毛刺。



技术实现要素:

本发明提供的基于fpga的快速时钟恢复电路,能够快速完成时钟信号与输入数据的同步,且时钟恢复过程产生较少毛刺。

本发明提供一种基于fpga的快速时钟恢复电路,包括:

时钟产生模块,用于产生多个与输入数据频率相同、相位不同的参考时钟信号;

相位判别模块,用于接收输入数据和反馈时钟信号,输出两个反映所述输入数据和所述反馈时钟信号相位关系和相位差大小的高电平信号,将所述高电平信号的宽度量化后转换成窄脉冲,对所述窄脉冲进行计数,输出计数值c1、c2;

时钟调整模块,用于接收所述相位判别模块输出的计数值c1、c2,根据所述计数值c1、c2的大小关系,从所述时钟产生模块产生的参考时钟信号中选择输出一个时钟信号,并输出高电平复位信号;

复位模块,用于在所述时钟调整模块完成一次调整后接收所述时钟调整模块输出的复位高电平,将所述复位高电平转换成复位窄脉冲,对所述相位判别模块的计数值c1、c2进行复位。

可选地,所述时钟产生模块包括:

系统时钟电路,用于接收fpga晶振产生的时钟信号,输出一路时钟信号作为管理时钟电路的时钟输入,一路时钟信号作为所述复位模块的时钟输入;

管理时钟电路,用于接收所述系统时钟电路输出的时钟信号,输出一路时钟信号作为锁相环电路的输入,一路时钟信号作为所述相位判别模块输入的时钟信号;

锁相环电路,用于接收所述管理时钟电路输出的时钟信号,输出多个与输入数据频率相同、相位不同的参考时钟信号。

可选地,所有参考时钟信号中任意相邻的两个参考时钟信号的相位差相同,且所有参考时钟信号中相位相差最大为360°。

可选地,所述相位判别模块包括:

hogge线性鉴相器电路,用于接收所述输入数据和所述反馈时钟信号,输出两个反应所述输入数据和所述反馈时钟信号相位关系和相位差大小的高电平信号;

脉冲产生电路,用于接收所述两个高电平信号,将所述高电平信号的宽度分别进行量化,转换成窄脉冲;

脉冲计数电路,用于对所述脉冲产生电路产生的窄脉冲进行计数,输出计数值c1、c2。

可选地,所述相位判别模块还包括:选择器电路,用于在第一次向所述相位判别模块输入时钟信号时,选择所述管理时钟电路输出的时钟信号,之后选择所述时钟调整模块输出的反馈时钟信号。

可选地,当c1<c2时,所述参考时钟信号的相位超前于所述输入数据的相位;当c1>c2时,所述参考时钟信号的相位滞后于所述输入数据的相位;当c1=c2时,所述输入数据与所述参考时钟信号的相位相同。

可选地,当所述反馈时钟信号超前于所述输入数据时,根据c2-c1的值的大小,所述时钟调整模块从所述时钟产生模块产生的所有参考时钟信号中选择输出一个滞后于所述反馈时钟信号的参考时钟信号,该参考时钟信号作为新的反馈时钟信号,并作为相位判别模块的输入;

当所述反馈时钟信号滞后于所述输入数据时,根据c1-c2的值的大小,所述时钟调整模块从所述时钟产生模块产生的所有参考时钟信号中选择输出一个超前于所述反馈时钟信号的参考时钟信号,该参考时钟信号作为新的反馈时钟信号,并作为相位判别模块的输入,其中,c1和c2差值的大小反映所述输入数据与所述反馈时钟信号相位差的大小。

本发明实施例提供的基于fpga的快速时钟恢复电路,产生多个与输入数据频率相同、相位不同的参考时钟信号,判别出输入数据和所述反馈时钟信号的相位关系,并量化出输入数据和所述反馈时钟信号相位差大小,根据输入数据和反馈时钟信号的相位关系和相位差大小选择输出一路与输入数据相位最接近的参考时钟信号作为恢复时钟信号。与现有技术相比,本发明不仅能判别出输入数据和所述反馈时钟信号的相位关系,还可以得出输入数据和所述反馈时钟信号的相位差大小,从而实现时钟信号的快速恢复,并且时钟恢复过程产生较少的毛刺。

附图说明

图1为本发明一实施例基于fpga的快速时钟恢复电路的结构示意图;

图2为本发明一实施例hogge线性鉴相器电路的结构示意图;

图3为本发明一实施例脉冲产生电路的结构示意图;

图4为本发明一实施例复位模块的电路结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明提供一种基于fpga的快速时钟恢复电路,如图1所示,包括:

时钟产生模块101,用于产生多个与输入数据频率相同、相位不同的参考时钟信号;

相位判别模块102,用于接收输入数据和反馈时钟信号,输出两个反映所述输入数据和所述反馈时钟信号相位关系和相位差大小的高电平信号,将所述高电平信号的宽度量化后转换成窄脉冲,对所述窄脉冲进行计数,输出计数值c1、c2;

时钟调整模块103,用于接收所述相位判别模块102输出的计数值c1、c2,根据所述计数值c1、c2的大小关系,从所述时钟产生模块101产生的参考时钟信号中选择输出一个时钟信号,并输出高电平复位信号;

复位模块104,用于在所述时钟调整模块103完成一次调整后接收所述时钟调整模块103输出的复位高电平rst_0,将所述复位高电平转换成复位窄脉冲rst,对所述相位判别模块102的计数值c1、c2进行复位。

本发明实施例提供的基于fpga的快速时钟恢复电路,产生多个与输入数据频率相同、相位不同的参考时钟信号,判别出输入数据和所述反馈时钟信号的相位关系,并量化出输入数据和所述反馈时钟信号相位差大小,根据输入数据和反馈时钟信号的相位关系和相位差大小选择输出一路与输入数据相位最接近的参考时钟信号作为恢复时钟信号。与现有技术相比,本发明不仅能判别出输入数据和所述反馈时钟信号的相位关系,还可以得出输入数据和所述反馈时钟信号的相位差大小,从而实现时钟信号的快速恢复,并且时钟恢复过程产生较少的毛刺。

可选地,所述时钟产生模块101包括:

系统时钟电路用于接收fpga晶振产生的时钟信号,输出一路时钟信号作为管理时钟电路的时钟输入,一路时钟信号作为所述复位模块104的时钟输入;

管理时钟电路,用于接收所述系统时钟电路输出的时钟信号,输出一路时钟信号作为锁相环电路的输入,一路时钟信号作为所述相位判别模块102输入的时钟信号;

锁相环电路,用于接收所述管理时钟电路输出的时钟信号,输出多个与输入数据频率相同、相位不同的参考时钟信号。

可选地,所述锁相环电路包括第一锁相环电路和第二锁相环电路,用于分别产生6路与输入数据频率相同、相位不同的参考时钟信号。

可选地,所有参考时钟信号中任意相邻的两个参考时钟信号的相位差相同,且所有参考时钟信号中相位相差最大为360°。

可选地,所述相位判别模块102包括:

hogge线性鉴相器电路301,用于接收所述输入数据和所述反馈时钟信号,输出两个反应所述输入数据和所述反馈时钟信号相位关系和相位差大小的高电平信号;

脉冲产生电路302,用于接收所述两个高电平信号,将所述高电平信号的宽度分别进行量化,转换成窄脉冲;

脉冲计数电路303,用于对所述脉冲产生电路产生的窄脉冲进行计数,输出计数值c1、c2。

可选地,所述相位判别模块102还包括:

选择器电路304,用于在第一次向所述相位判别模块102输入时钟信号时,选择所述管理时钟电路输出的时钟信号,之后选择所述时钟调整模块103输出的反馈时钟信号。

可选地,所述hogge线性鉴相器电路301如图2所示,接收输入数据datain和所述时钟调整模块103输出的反馈时钟信号recclk,输出两个高电平datacq和clkcq。

可选地,所述高电平clkcq的宽度始终不变,且正好等于半个反馈时钟信号refclk时钟周期;当反馈时钟信号refclk相位超前于输入数据datain时,高电平datacq的宽度将小于高电平clkcq的宽度;当反馈时钟信号refclk相位滞后于输入数据时,datacq宽度将大于clkcq的宽度;当refclk时钟上升沿刚好对齐datain高电平的中间时,则达到锁定状态,此时高电平datacq的宽度将与高电平clkcq的宽度相等。

从而,通过比较两个高电平datacq和clkcq的宽度就可以判断出输入数据datain和反馈时钟信号refclk的相位关系,并且两个高电平datacq和clkcq的宽度相差越大,表明输入数据datain和反馈时钟信号refclk的相位相差越大。

可选地,所述脉冲产生电路302如图3所示,在输入时钟信号dclk一定的情况下,产生的窄脉冲个数与高电平shuru的长度成正比;高电平shuru长度一定的情况下,输入时钟信号dclk频率越高,同一高电平所产生的脉冲个数越多,此时恢复出的时钟信号相位精度越高。

可选地,所述输入时钟信号dclk的频率为fpga所能承受的极限频率。

可选地,当c1<c2时,所述参考时钟信号的相位超前于所述输入数据的相位;当c1>c2时,所述参考时钟信号的相位滞后于所述输入数据的相位;当c1=c2时,所述输入数据与所述参考时钟信号的相位相同。

可选地,当所述反馈时钟信号超前于所述输入数据时,根据c2-c1的值的大小,所述时钟调整模块103从所述时钟产生模块101产生的所有参考时钟信号中选择输出一个滞后于所述反馈时钟信号的参考时钟信号,该参考时钟信号作为新的反馈时钟信号,并作为相位判别模块102的输入;

当所述反馈时钟信号滞后于所述输入数据时,根据c1-c2的值的大小,所述时钟调整模块103从所述时钟产生模块101产生的所有参考时钟信号中选择输出一个超前于所述反馈时钟信号的参考时钟信号,该参考时钟信号作为新的反馈时钟信号,并作为相位判别模块102的输入,其中,c1和c2差值的大小反映所述输入数据与所述反馈时钟信号相位差的大小。

可选地,由于所述时钟调整模块103输出的复位高电平rst_0宽度较大,可能会影响下一轮的计数,故复位模块104将复位高电平rst_0转换成复位窄脉冲rst,对计数值进行复位。

可选地,所述复位模块104的电路结构如图4所示,将复位高电平rst_0转换成复位窄脉冲rst的的输入时钟信号为dclk;其中所述输入时钟信号dclk的频率为fpga所能承受的极限频率。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1