CN106021025B - 一种过采样数据时钟恢复的fpga实现系统及方法 - Google Patents

一种过采样数据时钟恢复的fpga实现系统及方法 Download PDF

Info

Publication number
CN106021025B
CN106021025B CN201610349260.9A CN201610349260A CN106021025B CN 106021025 B CN106021025 B CN 106021025B CN 201610349260 A CN201610349260 A CN 201610349260A CN 106021025 B CN106021025 B CN 106021025B
Authority
CN
China
Prior art keywords
data
fpga
differential signal
input
4bit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610349260.9A
Other languages
English (en)
Other versions
CN106021025A (zh
Inventor
邱建刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
OPHYLINK COMMUNICATION TECHNOLOGY Ltd
Original Assignee
OPHYLINK COMMUNICATION TECHNOLOGY Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by OPHYLINK COMMUNICATION TECHNOLOGY Ltd filed Critical OPHYLINK COMMUNICATION TECHNOLOGY Ltd
Priority to CN201610349260.9A priority Critical patent/CN106021025B/zh
Publication of CN106021025A publication Critical patent/CN106021025A/zh
Application granted granted Critical
Publication of CN106021025B publication Critical patent/CN106021025B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data

Abstract

本发明公开了一种过采样数据时钟恢复的FPGA实现系统及方法,它包括设置在FPGA内的差分信号转换模块、可编程输入延时单元、输入串并转换模块及固定模式时钟管理模块,所述差分信号转换模块连接可编程输入延时单元,所述可编程输入延时单元连接输入串并转换模块,所述输入串并转换模块连接固定模式时钟管理模块;通过差分信号转换模块将外部送入FPGA的输入差分信号进行缓存处理分成差分的2个FPGA内部的差分信号;针对FPGA芯片上不能提供充足的GE口专用管脚问题,设计出一种通过普通IO也能实现数据时钟恢复的方法;利用普通IO做数据恢复,可以灵活满足各种需求,在实现数量上不再局限于芯片自带的专用管脚。

Description

一种过采样数据时钟恢复的FPGA实现系统及方法
技术领域
本发明涉及通信设备上FPGA芯片中GE口串行数据恢复的相关技术领域,具体的说,是一种过采样数据时钟恢复的FPGA实现系统及方法。
背景技术
目前FPGA芯片上GE接口数据恢复首先是要给处理模块内部送入一个参考时钟,然后借助参考时钟结合接收到的串行数据,将对端发送数据的时钟恢复出来,然后将恢复出来的时钟上全局时钟网络后,再去采集数据,并作串并转化。
该功能是通过硬核IP的方式放入FPGA芯片内部的,并对应有专用的管脚,由于芯片型号不同所支持专用管脚的个数也不同。对接口数量要求大时就要选一些高端芯片,由于功能上却不需要太高端的芯片,导致成本过高没有竞争力。
发明内容
本发明的目的在于提供一种过采样数据时钟恢复的FPGA实现系统及方法,针对FPGA芯片上不能提供充足的GE口专用管脚问题,设计出一种通过普通IO也能实现数据时钟恢复的方法;利用普通IO做数据恢复,可以灵活满足各种需求,在实现数量上不再局限于芯片自带的专用管脚。
本发明通过下述技术方案实现:一种过采样数据时钟恢复的FPGA实现系统,它包括设置在FPGA内的差分信号转换模块、可编程输入延时单元、输入串并转换模块及固定模式时钟管理模块,所述差分信号转换模块连接可编程输入延时单元,所述可编程输入延时单元连接输入串并转换模块,所述输入串并转换模块连接固定模式时钟管理模块。
进一步的为更好的实现本发明所述系统,特别采用下述设置方式:还包括数据恢复单元,所述数据恢复单元连接输入串并转换模块,所述固定模式时钟管理模块亦连接数据恢复单元。
进一步的为更好的实现本发明所述系统,特别采用下述设置方式:所述可编程输入延时单元为两个且两个可编程输入延时单元之间输出的信号存在45°相位差,两个所述可编程输入延时单元皆与差分信号转换模块和输入串并转换模块相连接。
进一步的为更好的实现本发明所述系统,特别采用下述设置方式:所述输入串并转换模块为两个且分别与两个可编程输入延时单元相连接;所述两个输入串并转换模块皆与固定模式时钟管理模块和数据恢复单元相连接。
进一步的为更好的实现本发明所述系统,特别采用下述设置方式:所述差分信号转换模块,接收外部送入FPGA的输入差分信号进行缓存并将通过缓存后的输入差分信号转换为FPGA内部的差分信号;
两个所述可编程输入延时单元,将所述FPGA内部的差分信号进行延时处理,使两个可编程输入延时单元输出的信号相位相差45°;
在对FPGA内部的差分信号进行延时处理时,对FPGA内部的差分信号内数据进行delay时设置为31个单位tap值的延时时间。
一种过采样数据时钟恢复的FPGA实现系统的实现方法,包括以下具体步骤:
1)通过差分信号转换模块将外部送入FPGA的输入差分信号进行缓存处理分成差分的2个FPGA内部的差分信号;
2)将2个FPGA内部的差分信号分别送入可编程输入延时单元,其中一个可编程输入延时单元对输入的FPGA内部的差分信号不做任何操作,另一个可编程输入延时单元对FPGA内部的差分信号进行45°的偏移;
3)经步骤2)后,将相位相差45°的两组FPGA内部的差分信号分别输入到两组输入串并转换模块,分别利用输入串并转换模块内部的2个采样时钟进行采样得到4个采集数据;
进一步的为更好的实现本发明所述方法,特别采用下述设置方式:还包括下述步骤:
4)经步骤3)后,将两个输入串并转换模块所得到的4个bit数据进行缓存,得到8组4bit缓存数据,共计32bit数据,然后将32bit数据进行1bit右移操作,右移1bit后与未缓存的4个bit数据按bit做异或,获得32bit异或值;
5)经步骤4)后,将异或后的32bit异或值分为8组,得8个4bit异或值,而后将8个4bit异或值再次按bit进行或操作,得8个4bit数据,而后提出其中一组4bit数据进行关注。
进一步的为更好的实现本发明所述方法,特别采用下述设置方式:所述步骤5)中,提出其中一个4bit数据进行关注的具体步骤包括:
5-1)如果4bit数据中只有1个bit为1,则从4bit数据里选择准确数据要远离跳变沿的方向,如果之前采集的数据在跳变沿附近,则要远离跳变沿获取准确数据;如果已经不在跳变沿附近,则保持原有采集位置不变获取准确数据;
5-2)如果4bit数据中有2个或3个bit为1,则根据4bit数据中值为1的位置来判断,并选择远离跳变沿的位置获取准确数据;
5-3)如果4bit数据中有4个bit为1,则保持原有采集位置不变获取准确数据;
5-4)如果4bit数据中没有bit为1,则保持原有采集位置不变获取准确数据。
进一步的为更好的实现本发明所述方法,特别采用下述设置方式:还包括下述步骤:
6)获取到准确数据后送入下级模块做解码工作。
进一步的为更好的实现本发明所述方法,特别采用下述设置方式:步骤3)中,所述2个采样时钟进行采样得到4个采集数据具体为:根据配置固定模式时钟管理模块产生时钟频率相同、相位相差90度的2个采样时钟,2个采样时钟为再次取反,又产生出2个时钟,得到共计4个时钟,且4个时钟频率相同、相位相差90度,并通过上下沿采集后得到4个采集数据,且每个采集数据为1bit,4个采集信号共计4bit数据;若FPGA内的ISERDES模块对输入差分信号设置模式为SDR时,一个信号每周期采样8次;若设置模式为DDR时,一个信号每周期采样4次”。
本发明与现有技术相比,具有以下优点及有益效果:
(1)本发明针对FPGA芯片上不能提供充足的GE口专用管脚问题,设计出一种通过普通IO也能实现数据时钟恢复的方法;利用普通IO做数据恢复,可以灵活满足各种需求,在实现数量上不再局限于芯片自带的专用管脚。
(2)本发明通过普通IO可以实现GE接口的数据恢复,在设备需求多个GE口时,完全不局限于芯片上的专用管脚的数量。
(3)由于传统的GE接口使用FPGA自带的IP核生成后接到对应的专用管脚上使用,对于接口数量大的设备FPGA芯片自带的专用管脚不能满足要求;而在FPGA(xilinx)芯片上每个普通的物理管脚都配有1对IDELAY/IOSERDES,再结合本发明的数据恢复功能,这样芯片上任何一个普通IO管脚都可以做GE接口使用。对于需要大量GE口的设备来说,用FPGA方案时在选芯片过程中不需要考虑芯片支持GE口的数量,可以达到降成本的效果。
(4)本发明通过高速时钟对串行的数据进行4倍采样,并对采样到的数据进行跳变沿判断和分析,获得最佳、最准确的数值从而将串行数据恢复出来。
(5)本发明在对采集到的数据进行分析和判断时,结合前次获取数据的位置和当前跳变沿的位置进行动态调整,从而准确的恢复出线路上的数据。
附图说明
图1为本发明所述过采样数据时钟恢复的FPGA实现系统图。
图2为本发明所述方法具体采样的波形原理示意图。
图3为使用本发明方法而得8组采集出来的数据共32bit的示意图。
图4为本发明所述方法的整体流程图。
图5为每隔4bit数据产生的跳变沿只有1次的操作流程。
图6为每4bit数据产生的跳变沿有2次的操作流程图。
图7为每4bit数据产生的跳变沿有3次的操作流程图。
具体实施方式
下面结合实施例对本发明作进一步地详细说明,但本发明的实施方式不限于此。
实施例1:
一种过采样数据时钟恢复的FPGA实现系统,如图1所示,它包括设置在FPGA内的差分信号转换模块、可编程输入延时单元、输入串并转换模块及固定模式时钟管理模块,所述差分信号转换模块连接可编程输入延时单元,所述可编程输入延时单元连接输入串并转换模块,所述输入串并转换模块连接固定模式时钟管理模块。
所述差分信号转换模块,将外部送入FPGA的输入差分信号进行缓存处理分成差分的2个FPGA内部的差分信号;
所述可编程输入延时单元,将所述FPGA内部的差分信号进行延时处理;
所述输入串并转换模块,将可编程输入延时单元内输出的信号利用输入串并转换模块内部的2个采样时钟进行采样得到4个采集数据;
所述固定模式时钟管理模块,为数据恢复提供恢复时钟。
实施例2:
本实施例是在上述实施例的基础上进一步优化,如图1所示,进一步的为更好的实现本发明所述系统,能够将将输入串并转换模块内所采集的数据进行恢复,特别采用下述设置方式:还包括数据恢复单元,所述数据恢复单元连接输入串并转换模块,所述固定模式时钟管理模块亦连接数据恢复单元。
实施例3:
本实施例是在上述实施例的基础上进一步优化,如图1所示,进一步的为更好的实现本发明所述系统,特别采用下述设置方式:所述可编程输入延时单元为两个且两个可编程输入延时单元之间输出的信号存在45°相位差,两个所述可编程输入延时单元皆与差分信号转换模块和输入串并转换模块相连接。
实施例4:
本实施例是在上述实施例的基础上进一步优化,如图1所示,进一步的为更好的实现本发明所述系统,特别采用下述设置方式:所述输入串并转换模块为两个且分别与两个可编程输入延时单元相连接;所述两个输入串并转换模块皆与固定模式时钟管理模块和数据恢复单元相连接。
实施例5:
本实施例是在上述任一实施例的基础上进一步优化,进一步的为更好的实现本发明所述系统,特别采用下述设置方式:所述差分信号转换模块,接收外部送入FPGA的输入差分信号进行缓存并将通过缓存后的输入差分信号转换为FPGA内部的差分信号;
两个所述可编程输入延时单元,将所述FPGA内部的差分信号进行延时处理,使两个可编程输入延时单元输出的信号相位相差45°;
在对FPGA内部的差分信号进行延时处理时,对FPGA内部的差分信号内数据进行delay时设置为31个单位tap值的延时时间。
实施例6:
本实施例是在上述任一实施例的基础上进一步优化,一种过采样数据时钟恢复的FPGA实现系统的实现方法,包括以下具体步骤:
1)通过差分信号转换模块将外部送入FPGA的输入差分信号进行缓存处理分成差分的2个FPGA内部的差分信号;
2)将2个FPGA内部的差分信号分别送入可编程输入延时单元,其中一个可编程输入延时单元对输入的FPGA内部的差分信号不做任何操作,另一个可编程输入延时单元对FPGA内部的差分信号进行45°的偏移;
3)经步骤2)后,将相位相差45°的两组FPGA内部的差分信号分别输入到两组输入串并转换模块,分别利用输入串并转换模块内部的2个采样时钟进行采样得到4个采集数据;
实施例7:
本实施例是在上述实施例的基础上进一步优化,进一步的为更好的实现本发明所述方法,特别采用下述设置方式:还包括下述步骤:
4)经步骤3)后,将两个输入串并转换模块所得到的4个bit数据进行缓存,得到8组4bit缓存数据,共计32bit数据,然后将32bit数据进行1bit右移操作,右移1bit后与未缓存的4个bit数据按bit做异或,获得32bit异或值;
5)经步骤4)后,将异或后的32bit异或值分为8组,得8个4bit异或值,而后将8个4bit异或值再次按bit进行或操作,得8个4bit数据,而后提出其中一组4bit数据进行关注。
实施例8:
本实施例是在上述实施例的基础上进一步优化,进一步的为更好的实现本发明所述方法,特别采用下述设置方式:所述步骤5)中,提出其中一个4bit数据进行关注的具体步骤包括:
5-1)如果4bit数据中只有1个bit为1,则从4bit数据里选择准确数据要远离跳变沿的方向,如果之前采集的数据在跳变沿附近,则要远离跳变沿获取准确数据;如果已经不在跳变沿附近,则保持原有采集位置不变获取准确数据;
5-2)如果4bit数据中有2个或3个bit为1,则根据4bit数据中值为1的位置来判断,并选择远离跳变沿的位置获取准确数据;
5-3)如果4bit数据中有4个bit为1,则保持原有采集位置不变获取准确数据;
5-4)如果4bit数据中没有bit为1,则保持原有采集位置不变获取准确数据。
实施例9:
本实施例是在上述任一实施例的基础上进一步优化,进一步的为更好的实现本发明所述方法,特别采用下述设置方式:还包括下述步骤:
6)获取到准确数据后送入下级模块做解码工作。
实施例10:
本实施例是在实施例6-9任一实施例的基础上进一步优化,进一步的为更好的实现本发明所述方法,特别采用下述设置方式:步骤3)中,所述2个采样时钟进行采样得到4个采集数据具体为:根据配置固定模式时钟管理模块产生时钟频率相同、相位相差90度的2个采样时钟,2个采样时钟为再次取反,又产生出2个时钟,得到共计4个时钟,且4个时钟频率相同、相位相差90度,并通过上下沿采集后得到4个采集数据,且每个采集数据为1bit,4个采集信号共计4bit数据;若FPGA内的ISERDES模块对输入差分信号设置模式为SDR时,一个信号每周期采样8次;若设置模式为DDR时,一个信号每周期采样4次”。
实施例11:
本实施例是在上述任一实施例的基础上进一步优化,结合图1-7所示,一种过采样数据时钟恢复的FPGA实现系统的实现方法,利用FPGA的可编程输入延时单元(IDELAY)和固定模式时钟管理模块(MMCM)输出同频多相位时钟相结合,对串行数据进行4倍的过采样。采用滑动窗口的方式来检测数据跳变沿的位置,精确的找到最佳采样点,从而采样出准确的数据。
IBUFDS_DIFF_OUT(differential signaling input buffer with differentialoutput/差分信号输入缓存器转差分输出,亦即图1中的差分信号转换模块)主要功能包括将外部送入FPGA的输入差分信号进行缓存,并将通过缓存后的输入差分信号转换为FPGA内部的差分信号。
IDELAY(input fixed or variable delay element/输入固定或变量延时模块,即图1中的可编程输入延时单元)主要功能是对数据进行delay时设置的单位tap(共31个档位)值的延时时间,亦可以理解为IDELAY对数据延时的最小粒度。同时可以减少PVT对数据延时的影响。
ISERDES(input SERial/DESerial with bitslip/输入串并转换,即图1中的输入串并转换模块)将经过可编程输入延时单元延时处理后的FPGA内部的差分信号做串并转换,由1bit串行输入转换后以4bit并行输出。两个ISERDES模块输出8bit送入到数据恢复单元处理。
DRU(data recovery unit/数据恢复单元)是实现串并转换的关键模块,2个IDELAY设置不同的偏移值后可得到2个内容相同但相位存在一定偏差(偏差值为45°)的数据,送给2个IDELAY的2个clk分别利用上下沿进行采样,即可以采样8个点的数据;对于外部送入FPGA的输入差分信号为SDR输出的信号时,则一个信号每周期采样8次,对于外部送入FPGA的输入差分信号为DDR输出的信号时,则一个信号每周期采样4次。将采样到的信号送入数据恢复单元中做数据恢复。
MMCM(mixed mode clock manager/固定模式时钟管理模块)主要负责整个恢复数据功能的时钟部分。
由于FPGA工作频率不能太高,所以对1.25G速率的串行数据做4倍过采样,需要本地时钟跑到625M。采样所需要的IDELAY和MMCM都是芯片自带的模块,利用IDELAY模块将接收到的数据延时45°的时间,再由MMCM产生相对本地625M时钟有90°偏移的时钟,通过偏移后数据有2份,时钟2份,时钟采用上下沿进行采样,具体采样的波形原理如图2所示。
利用时钟对数据0/45/90/135度离散的采集4个点,后续通过这4个点的值0或1来判断跳变沿的位置,从而判断哪个采样点的数值能够真正代表真实的数据。为了避免频繁的计算,本发明采样每隔32个bit进行一次判断,如图3所示,8组采集出来的数据共32bit。
通过各个bit错位来判断跳变沿的位置,异或为1则认为有跳变。总体思想是获取的采样点要远离跳变沿的位置,整体流程如图4所示。
1、如果采集数据后,经处理后,4bit数据中的4个bit值为全0或全1说明没有跳变,那么这时采集4bit数据中的任何一个bit都可以代表真实的数据,所以获取位置保持。
如之前采的数据是第1bit,当本次产生的4bit数据跳变沿为1111,那说明3~2~1~0~3都在变,那么我们不能判断到底是哪个采样点比较准确,所以获取采样点沿用上次计算结果,仍将第1个bit作为正确采样点。
2、最理想的状态就行,每隔4bit数据产生的跳变沿只有1次,共有4种可能即1000/0100/0010/0001,结合图5所示每隔4bit数据产生的跳变沿只有1次的操作流程。
如之前采的数据是第1个bit,当本次产生的4bit数据跳变沿为1000时,那么说明数据在2~3之间发生跳变,那么我们可以认为2~1~0~3这4个采样值对应是1bit。所以比较准确的采样点应该是在中间即 1或0,上一组32bit计算出来的是将采样的第1个值作为正确的值,那么本次可以不同动还继续认为第1个采样值是正确的值,当然也可以跳到第0个,认为是正确的采样值。如果上一组采样点为第2个时,则获取的采样点要调整到第1个点。
3、但实际情况由于电气特性或其他外界干扰,不一定只有1次跳变,每4bit数据产生的跳变沿有2次,即4个bit为1100/0110/0011/0101等等,如图6所示的每4bit数据产生的跳变沿有2次的操作流程。
这种情况不一定是4bit数据里跳变导致,应该是8个4bit数据里跳变不同导致,比如1100,第一组4bit数据是1000,第二组4bit数据也是1000,但第3组4bit数据是0100,其余组也为1000。这样整体8组来看就是1100了。对于这种情况,判断哪个采样点准确,要根据实际情况来处理。
如之前采的数据是第1bit,当本次产生的4bit数据跳变沿为1100,那说明3~2~1在变,而1~0~3不变,那么我们可以认为第0个采样点会比较准确,所以获取第0个bit作为正确采样点。
4、每4bit数据产生的跳变沿有3次,即4bit数据为0111/1011/1101/1110,如图7所示的每4bit数据产生的跳变沿有3次的操作流程。
如之前采的数据是第1bit,当本次产生的4bit数据跳变沿为1110,那说明3~2~1~0在变,而0~3不变,那么我们可以认为第0或3个采样点会相对比较准确,但每次获取采样点只能跳变1个bit,所以只能获取第0个bit作为正确采样点。
5、在查找跳变沿和判断最佳采样点时,有时会导致少获取1个bit,或多获取一个bit。
a)少获取:如之前将采样点0作为有效数据,当本次跳变沿的值为0010时,这时我们会认为采样点0~3~2~1作为一组,根据之前的原理要远离跳变沿,那就应该将采样点3作为准确数据,3~2~1~0~3~2~1~0~3~2~1~0前一组的0~3是要采集0的,但这次直接获取3作为准确数据,这样导致中间一组的4个bit都没有被作为准确数据进行获取,导致32个采样点只获取了7个bit。
b)多获取:如之前将采样点3作为有效数据,当本次跳变沿的值为1000时,这时我们会认为采样点2~1~0~3作为一组,那个根据之前的原理要远离跳变沿,那就应该将采样点0作为准确数据,3~2~1~0~3~2~1~0 前一组的0~3是要采集3的,已经将3作为准确值获取了,但这次要将第0bit作为采样点获取,在4个bit里又获取了0,这样导致前一组的4bit异或值获取了2个采样点,导致32个采样点获取了9个bit。
以上所述,仅是本发明的较佳实施例,并非对本发明做任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化,均落入本发明的保护范围之内。

Claims (3)

1.一种过采样数据时钟恢复的FPGA实现系统的实现方法,其特征在于:
所述FPGA实现系统,包括设置在FPGA内的差分信号转换模块、可编程输入延时单元、输入串并转换模块及固定模式时钟管理模块,所述差分信号转换模块连接可编程输入延时单元,所述可编程输入延时单元连接输入串并转换模块,所述输入串并转换模块连接固定模式时钟管理模块;
还包括数据恢复单元,所述数据恢复单元连接输入串并转换模块,所述固定模式时钟管理模块亦连接数据恢复单元;
所述可编程输入延时单元为两个且两个可编程输入延时单元之间输出的信号存在45°相位差,两个所述可编程输入延时单元皆与差分信号转换模块和输入串并转换模块相连接;
所述输入串并转换模块为两个且分别与两个可编程输入延时单元相连接;所述两个输入串并转换模块皆与固定模式时钟管理模块和数据恢复单元相连接;
所述差分信号转换模块,接收外部送入FPGA的输入差分信号进行缓存并将通过缓存后的输入差分信号转换为FPGA内部的差分信号;
两个所述可编程输入延时单元,将所述FPGA内部的差分信号进行延时处理,使两个可编程输入延时单元输出的信号相位相差45°;
在对FPGA内部的差分信号进行延时处理时,对FPGA内部的差分信号内数据进行delay时设置为31个单位tap值的延时时间;
所述实现方法包括以下具体步骤:
1)通过差分信号转换模块将外部送入FPGA的输入差分信号进行缓存处理分成差分的2个FPGA内部的差分信号;
2)将2个FPGA内部的差分信号分别送入可编程输入延时单元,其中一个可编程输入延时单元对输入的FPGA内部的差分信号不做任何操作,另一个可编程输入延时单元对FPGA内部的差分信号进行45°的偏移;
3)经步骤2)后,将相位相差45°的两组FPGA内部的差分信号分别输入到两组输入串并转换模块,分别利用输入串并转换模块内部的2个采样时钟进行采样得到4个采集数据;
4)经步骤3)后,将两个输入串并转换模块所得到的4个bit数据进行缓存,得到8组4bit缓存数据,共计32bit数据,然后将32bit数据进行1bit右移操作,右移1bit后与未缓存的32bit数据按bit做异或,获得32bit异或值;
5)经步骤4)后,将异或后的32bit异或值分为8组,得8个4bit异或值,而后将8个4bit异或值再次按bit进行或操作,得8个4bit数据,而后提出其中一组4bit数据进行关注;
所述步骤5)中,提出其中一个4bit数据进行关注的具体步骤包括:
5-1)如果4bit数据中只有1个bit为1,则从4bit数据里选择准确数据要远离跳变沿的方向,如果之前采集的数据在跳变沿附近,则要远离跳变沿获取准确数据;如果已经不在跳变沿附近,则保持原有采集位置不变获取准确数据;
5-2)如果4bit数据中有2个或3个bit为1,则根据4bit数据中值为1的位置来判断,并选择远离跳变沿的位置获取准确数据;
5-3)如果4bit数据中有4个bit为1,则保持原有采集位置不变获取准确数据;
5-4)如果4bit数据中没有bit为1,则保持原有采集位置不变获取准确数据。
2.根据权利要求1所述的一种过采样数据时钟恢复的FPGA实现方法,其特征在于:还包括下述步骤:
6)获取到准确数据后送入下级模块做解码工作。
3.根据权利要求1所述的一种过采样数据时钟恢复的FPGA实现方法,其特征在于:步骤3)中,所述2个采样时钟进行采样得到4个采集数据具体为:根据配置固定模式时钟管理模块产生时钟频率相同、相位相差90度的2个采样时钟,2个采样时钟为再次取反,又产生出2个时钟,得到共计4个时钟,且4个时钟频率相同、相位相差90度,并通过上下沿采集后得到4个采集数据,且每个采集数据为1bit,4个采集信号共计4bit数据。
CN201610349260.9A 2016-05-24 2016-05-24 一种过采样数据时钟恢复的fpga实现系统及方法 Active CN106021025B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610349260.9A CN106021025B (zh) 2016-05-24 2016-05-24 一种过采样数据时钟恢复的fpga实现系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610349260.9A CN106021025B (zh) 2016-05-24 2016-05-24 一种过采样数据时钟恢复的fpga实现系统及方法

Publications (2)

Publication Number Publication Date
CN106021025A CN106021025A (zh) 2016-10-12
CN106021025B true CN106021025B (zh) 2019-03-29

Family

ID=57093430

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610349260.9A Active CN106021025B (zh) 2016-05-24 2016-05-24 一种过采样数据时钟恢复的fpga实现系统及方法

Country Status (1)

Country Link
CN (1) CN106021025B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11003206B1 (en) 2020-01-03 2021-05-11 Rockwell Collins, Inc. Field-programmable gate array precision input timing
CN112073058B (zh) * 2020-08-24 2022-08-12 烽火通信科技股份有限公司 一种基于fpga的时钟数据恢复电路和方法
CN112306943B (zh) * 2020-11-08 2023-03-07 西安电子工程研究所 一种基于FPGA高速SerDes的Idelay实时调整方法
CN113900980B (zh) * 2021-08-31 2023-08-29 北京时代民芯科技有限公司 一种面向高速数据传输的可编程通用接口电路
CN113886315B (zh) * 2021-09-23 2024-05-03 珠海一微半导体股份有限公司 一种时钟数据恢复系统、芯片及时钟数据恢复方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101753288A (zh) * 2009-12-11 2010-06-23 西安邮电学院 基于过采样的时钟数据恢复和串并转换电路

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8243866B2 (en) * 2008-03-05 2012-08-14 Oracle America, Inc. Analog baud rate clock and data recovery

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101753288A (zh) * 2009-12-11 2010-06-23 西安邮电学院 基于过采样的时钟数据恢复和串并转换电路

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
LVDS 4x Asynchronous Oversampling Using 7 Series FPGAs;Marc Defossez;《XILINX XAPP523》;20120406;第4-12页
基于FPGA的异步LVDS过采样的研究和实现;母方欣,李大鹏;《电子技术》;20140731(第7期);第42-45页

Also Published As

Publication number Publication date
CN106021025A (zh) 2016-10-12

Similar Documents

Publication Publication Date Title
CN106021025B (zh) 一种过采样数据时钟恢复的fpga实现系统及方法
CN106844864A (zh) 一种基于相位自同步技术的多路时钟调节方法
CN103973324B (zh) 一种宽带数字接收机及其实时频谱处理方法
CN104063342B (zh) 基于jesd204协议的ip核
CN106406174B (zh) 一种多模块多通道采集同步系统及工作方法
CN102103195A (zh) 一种宽频带数字磁共振射频接收实现装置及方法
CN103049361A (zh) 具有嵌入式逻辑分析功能的fpga及逻辑分析系统
CN101576610B (zh) 一种在示波器中提高数据采样精度的装置和方法
CN108535631A (zh) 一种测试芯片内部信号眼图的测试方法及系统
CN101571555B (zh) 一种串行外设接口总线信号的触发方法
CN104992650B (zh) Mipi信号自动测试方法和装置
CN106294056A (zh) 芯片调试方法和装置
CN102510327B (zh) 提高远程双向时间比对调制解调器同步精度的方法及装置
CN206060731U (zh) 多通道数字信号处理平台
CN103595522A (zh) 一种双通道数模转换器同步方法
CN104535814B (zh) 一种用于修正高速取样示波器触发抖动的装置及方法
CN101184068B (zh) 一种测量接收机延时的方法
CN101873153B (zh) 一种差分跳频通信中信号的同步跟踪方法
CN104502835B (zh) 一种串行链路片内信号质量示波电路及方法
CN105471437B (zh) 数据再生电路
CN203224746U (zh) 一种实时并行多路信号采集系统
CN106526379A (zh) 一种基于无线采样实现电能质量测试分析的方法
CN203243335U (zh) 一种扩频通道下星地授时测试系统
CN107991553A (zh) 一种矢量网络分析仪时钟系统及其优化方法
CN204316488U (zh) 一种ad转换电路

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant