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

文档序号:14409123阅读:1204来源:国知局
基于FPGA的时钟恢复电路的制作方法

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



背景技术:

时钟恢复电路是一种从输入的数据流中提取出内嵌在其中的、与其同步的时钟信号的电路。现有的时钟恢复电路通常利用fpga实现时钟数据的恢复,如基于线性鉴相器的时钟恢复电路首先利用fpga内部的锁相环产生n*f的高频时钟(f为本地参考时钟,n为倍频倍数),然后再根据输入信号控制对高速时钟分频,从而产生与输入信号同步的时钟信号。其中,n决定了恢复时钟信号的相位精度,n越大,精度越高。

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

现有的基于线性鉴相器的时钟恢复电路中,要求fpga芯片的系统的工作频率必须达到n*f,然而系统工作频率受到特定fpga极限值的约束,所以基于线性鉴相器的时钟恢复电路不适用于高速数据的时钟恢复。



技术实现要素:

本发明提供的时钟恢复电路,能够实现高速数据传输速率下时钟信号与输入数据的同步。

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

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

相位判别模块,用于接收输入数据和时钟调整模块输出的反馈时钟信号,输出表征所述输入数据与所述反馈时钟信号的相位关系的相位判别信号x、y;

计数器模块,用于接收所述相位判别模块输出的相位判别信号x、y,对所述相位判别信号x、y的高电平分别进行计数,输出计数值c1、c2;

时钟调整模块,用于在所述计数器模块计数的同时,接收所述计数器模块输出的计数值c1、c2,在所述相位判别模块中d2触发器输出的信号a的上升沿处根据计数值c1或者c2是否达到设定的相位判决条件,判断所述输入数据与所述反馈时钟信号的相位关系,根据所述输入数据与所述反馈时钟信号的相位关系从所述时钟产生模块产生的所有参考时钟信号中选择输出一个时钟信号;

复位模块,用于在所述时钟调整模块完成一次调整后产生一个复位信号,所述复位信号输入所述计数器模块,对计数值c1、c2进行复位。

可选地,所述时钟产生模块包括锁相环电路。

可选地,所述时钟产生模块产生的所有参考时钟信号的相位均匀地覆盖所有可能出现的相位,即以任一参考时钟信号为参考基准,其他参考时钟信号在超前该参考时钟信号180°和滞后该参考时钟信号180°的范围内均匀分布,所有参考时钟信号中任意两个相邻的参考时钟信号的相位差相同。

可选地,所述相位判别模块为alexander非线性鉴相器电路。

可选地,当相位判别信号y=0,且x=0和x=1交替出现时,说明所述反馈时钟信号超前于所述输入数据;当相位判别信号x=0,且y=0和y=1交替出现时,说明所述反馈时钟信号滞后于所述输入数据。

可选地,所述计数值c1、c2的初始值设置为0,当所述相位判别信号x出现上升沿时,所述计数值c1加1;当所述相位判别信号y出现上升沿时,所述计数值c2加1。

可选地,在所述相位判别模块中d2触发器输出的信号a的上升沿处,当c1达到设定值n时,认为反馈时钟信号超前于输入数据;在所述相位判别模块中d2触发器输出的信号a的上升沿处,当c2达到设定值n时,如果c1小于3,认为反馈时钟信号滞后于输入数据;如果c1大于3,认为反馈时钟信号超前于输入数据;其中,n>3。

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

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

可选地,当c1或者c2达到设定值n且到达来自所述相位判别模块中d2触发器输出的信号a的上升沿之后所述复位模块产生一个复位信号,所述复位信号输入计数器模块,对计数值c1、c2进行复位。

本发明实施例提供的基于fpga的时钟恢复电路,利用fpga内部锁相环电路产生多个与输入数据频率相同、相位不同的参考时钟信号,对输入数据与所述锁相环产生的参考时钟信号的相位关系进行判别,根据相位关系判别结果是超前或者滞后的状态从而对时钟信号进行控制输出。与现有技术相比,本发明只需判别输入数据与参考时钟信号的超前或者滞后关系,然后经过切换不同相位的参考时钟信号,就可以恢复出高速数据中的时钟信号。

附图说明

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

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

图3为本发明一实施例三点采样原理示意图。

具体实施方式

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

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

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

相位判别模块12,用于接收输入数据和时钟调整模块输出的反馈时钟信号,输出表征所述输入数据与所述反馈时钟信号的相位关系的相位判别信号x、y;

计数器模块13,用于接收所述相位判别模块12输出的相位判别信号x、y,对所述相位判别信号x、y的高电平分别进行计数,输出计数值c1、c2;

时钟调整模块14,用于在所述计数器模块13计数的同时,接收所述计数器模块输出的计数值c1、c2,在所述相位判别模块12中d2触发器输出的信号a的上升沿处根据计数值c1或者c2是否达到设定的相位判决条件,判断所述输入数据与所述反馈时钟信号的相位关系,根据所述输入数据与所述反馈时钟信号的相位关系从所述时钟产生模块11产生的所有参考时钟信号中选择输出一个时钟信号;

复位模块15,用于在所述时钟调整模块14完成一次调整后产生一个复位信号,所述复位信号输入所述计数器模块13,对计数值c1、c2进行复位。

本发明实施例提供的基于fpga的时钟恢复电路,利用fpga内部锁相环电路产生多个与输入数据频率相同、相位不同的参考时钟信号,对输入数据与所述锁相环产生的参考时钟信号的相位关系进行判别,根据相位关系判别结果是超前或者滞后的状态从而对时钟信号进行控制输出。与现有技术相比,本发明只需判别输入数据与参考时钟信号的超前或者滞后关系,然后经过切换不同相位的参考时钟信号,就可以恢复出高速数据中的时钟信号。

具体地,所述时钟产生模块11包括锁相环电路。

具体地,所述时钟产生模块11产生的所有参考时钟信号的相位均匀地覆盖所有可能出现的相位,即以任一参考时钟信号为参考基准,其他参考时钟信号在超前该参考时钟信号180°和滞后该参考时钟信号180°的范围内均匀分布,所有参考时钟信号中任意两个相邻的参考时钟信号的相位差相同。

具体地,所述相位判别模块12为alexander非线性鉴相器电路,如图2所示,所述alexander非线性鉴相器电路包括四个d触发器,两个异或门;其中,d1触发器输出信号c;d2触发器输出信号a;d4触发器输出信号b;其中一个异或门接收信号a和信号b,输出相位判别信号x;另一个异或门接收信号b和信号c,输出相位判别信号y。

具体地,alexander非线性鉴相器的输出x、y表征所述输入数据与所述反馈时钟之间相位的超前、滞后关系。

具体地,所述alexander非线性鉴相器利用三点采样原理,判断反馈时钟信号是“超前”还是滞后”于输入数据。

具体地,如图3所示,通过连续的三个时钟沿对输入数据进行三点(m,n,q))采样,如果最后一个采样点与前两个采样点不相等(即m=n≠q),说明反馈时钟信号滞后于输入数据;如果后两个采样点与第一个采样点不相等(即n=q≠m),说明反馈时钟信号超前于输入数据。

具体地,对应到alexander非线性鉴相器的输出端,当相位判别信号y=0,且x=0和x=1交替出现时,说明所述反馈时钟信号超前于所述输入数据;当相位判别信号x=0,且y=0和y=1交替出现时,说明所述反馈时钟信号滞后于所述输入数据;经过一段时间的调整后,系统最终会处于动态平衡状态。

具体地,所述系统处于动态平衡状态指所述反馈时钟信号与所述输入数据相位一致或者动荡的幅度足够小。

具体地,所述计数值c1、c2的初始值设置为0,当所述相位判别信号x出现上升沿时,所述计数值c1加1;当所述相位判别信号y出现上升沿时,所述计数值c2加1。

具体地,理想情况下,当计数值c1达到设定值n,且计数值c2等于0时,说明反馈时钟信号超前于输入数据;当计数值c2达到设定值n,且计数值c1等于0时,说明反馈时钟信号滞后于输入数据。

具体地,当反馈时钟信号滞后于输入数据时,alexander非线性鉴相器的y输出端口有高电平出现,x输出端口保持低电平,对应c2有计数,c1无计数;当反馈时钟信号超前于输入数据时,alexander非线性鉴相器的x输出端口有高电平出现,且y端口会有很多的毛刺,对应的c1、c2都有计数。

具体地,在所述相位判别模块12中d2触发器输出的信号a的上升沿处,当c1达到设定值n时,认为反馈时钟信号超前于输入数据;在所述相位判别模块12中d2触发器输出的信号a的上升沿处,当c2达到设定值n时,如果c1小于3,认为反馈时钟信号滞后于输入数据;如果c1大于3,认为反馈时钟信号超前于输入数据;其中,n>3。

从而,当c2达到设定值n时,如果c1小于3,认为c1无计数,排除了初始时刻毛刺的影响,对应的alexander非线性鉴相器的x输出端口为低电平,所述反馈时钟信号滞后于输入数据;如果c1大于3,认为c2的计数是由于alexander非线性鉴相器的y输出端口输出的毛刺所致,所述反馈时钟信号超前于输入数据。

具体地,当所述反馈时钟信号超前于输入数据时,所述时钟调整模块14从所述时钟产生模块11产生的所有参考时钟信号中选择输出一个滞后于所述反馈时钟信号一个相位差的参考时钟信号,该参考时钟信号作为新的反馈时钟信号,并作为相位判别模块12的输入;

当所述反馈时钟信号滞后于输入数据时,所述时钟调整模块14从所述时钟产生模块11产生的所有参考时钟信号中选择输出一个超前于所述反馈时钟信号一个相位差的参考时钟信号,该参考时钟信号作为新的反馈时钟信号,并作为相位判别模块12的输入。

具体地,当c1或者c2达到设定值n且到达来自所述相位判别模块12中d2触发器输出的信号a的上升沿之后所述复位模块15产生一个复位信号rst,所述复位信号输入计数器模块13,对计数值c1、c2进行复位。

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

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