CN112073169A - 一种串行通讯动态位恢复装置及方法 - Google Patents
一种串行通讯动态位恢复装置及方法 Download PDFInfo
- Publication number
- CN112073169A CN112073169A CN201910500697.1A CN201910500697A CN112073169A CN 112073169 A CN112073169 A CN 112073169A CN 201910500697 A CN201910500697 A CN 201910500697A CN 112073169 A CN112073169 A CN 112073169A
- Authority
- CN
- China
- Prior art keywords
- data
- oversampling
- edge
- clock
- window
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/02—Speed or phase control by the received code signals, the signals containing no special synchronisation information
- H04L7/033—Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Dc Digital Transmission (AREA)
Abstract
本发明公开了一种串行通讯动态位恢复装置及方法,锁相环电路基于本地时钟生成与串行码流波特率相同的四重以上错相时钟簇,在该错相时钟簇的控制下,过采锁存与同步电路对串行码流的进行过采样并将过采样数据同步至错相时钟簇的0°过采样数据时钟后得到过采样数据组,该过采样数据组存储在缓存寄存器组中。边沿跟踪电路根据缓存寄存器组中的过采样数据组监测串行码流的跳变边沿,当发现新的跳变边沿后则以该新的跳变边沿位置为边界通知数据恢复窗口电路调整数据恢复窗口以实现跳变边沿闭环跟踪。通过跳变边沿闭环跟踪从串行码流中恢复出有效串行数据位。本发明能解决现有方式无法利用低成本简单器件实现高速串行通讯的动态位恢复功能的技术问题。
Description
技术领域
本发明涉及数据通讯技术领域,尤其是涉及一种应用于数据传输的串行通讯动态位恢复装置及方法。
背景技术
在应用对数据带宽不断增长的需求下,传统并行通讯接口受接口数量、接口频率、多引脚一致性等因素影响,越来越难以满足芯片间高速数据互联的需求。而高速异步串行通讯以其高带宽、低引脚开销越来越受到应用人员的欢迎。高速异步串行通讯技术中,没有专用的信道用于传输数据的同步时钟信息。因此,为了从数据流中正确地恢复数据位,需要从码流中恢复出与数据位同步的时钟信息,从而实现对数据的准确恢复。为实现这一目的,通常的做法为通过采用自同步编码(曼彻斯特编码)或跳变丰富的编码类型实现在发送端的数据流中注入与数据同步的时钟信息,在接收端则通过专用锁相环电路实现对编码所包含时钟信息频率和相位的跟踪,并直接恢复出与数据同步的锁定同步时钟,用于实现数据的有效恢复。这便是该领域常用的高速串行通讯接收端的CDR(ClockDataRecovery)技术,其本质是从码流中恢复出一路独立的锁存同步信号,用于实现在准确位置对数据位的采样恢复。
通常情况下,CDR采用的锁相环电路结构与传统锁相环相比,除鉴相鉴频器、电荷泵、环路滤波器,以及压腔振荡器等基本结构外,还需要专用的相位锁相闭环电路,用于实现对同步时钟的相位跟踪,以保证采样时刻的正确性。但是,这种锁相环电路结构复杂,一般不具备SerDes(高速串行收发器)功能的PLD器件内部无法直接提供。而FPGA和CPLD等逻辑芯片以其灵活的可编程特性,成为越来越多专业设计人员用于实现非标准接口高速接口高带宽互联的选择。基于专用CDR锁相环的多路高速串行ASIC芯片从功能上可实现高速异步串行通讯数据流的同步恢复,但其对硬件资源的要求很高,无法在普通FPGA/CPLD器件上实现。同时,在具备专用CDR锁相环跟踪电路的FPGA/CPLD器件中,受成本、功耗、面积限制芯片往往仅提供个位数级别的锁相环资源。当需要在单一器件内实现的高速串行通讯通道数大于芯片能提供的专用锁相环数量时,无法通过单芯片设计得到满足而须改为多芯片结构,这也在一定程度上限制了应用的灵活性并增加了设计的复杂度,从而提高了产品的成本。
在现有技术中,主要有以下技术方案与本发明申请相关:
该现有技术为本申请人中车株洲电力机车研究所有限公司于2017年07月25日申请,并于2019年02月01日公开,公开号为CN109298969A的中国发明申请《一种串行通讯数据恢复方法及系统》。该发明申请公开了一种通讯数据恢复方法,包括:接收通讯数据,在通讯数据一个数据位的发送周期内进行多次数据采样获取多个采样数据;根据同一发送周期的多个采样数据确定相应数据位的数据。根据该发明的方法,可以大大降低数据恢复的错误率,提高了串行通讯的稳定性和安全性,同时方法流程简单,具有较高的实用价值和推广价值。但是,该发明申请技术方案主要涉及串行通讯中一种基于过采样数据的投票判决型位恢复方法,而无法实现高速串行通讯动态位的准确恢复。
发明内容
有鉴于此,本发明的目的在于提供一种串行通讯动态位恢复装置及方法,以解决现有方式无法利用低成本简单器件实现高速串行通讯的动态位恢复功能的技术问题。
为了实现上述发明目的,本发明具体提供了一种串行通讯动态位恢复装置的技术实现方案,串行通讯动态位恢复装置,包括:锁相环电路、过采锁存与同步电路、缓存寄存器组、边沿跟踪电路及数据恢复窗口电路。所述锁相环电路基于本地时钟生成与串行码流波特率相同的四重以上错相时钟簇,在该错相时钟簇的控制下,所述过采锁存与同步电路对串行码流的进行过采样并将过采样数据同步至所述错相时钟簇的0°过采样数据时钟后得到过采样数据组,该过采样数据组存储在所述缓存寄存器组中。所述边沿跟踪电路根据缓存寄存器组中的过采样数据组监测串行码流的跳变边沿,当发现新的跳变边沿后则以该新的跳变边沿位置为边界通知数据恢复窗口电路调整数据恢复窗口以实现跳变边沿闭环跟踪。通过跳变边沿闭环跟踪从串行码流中恢复出有效串行数据位,该有效串行数据位与错相时钟簇的0°过采样时钟保持同相位关系。
优选的,所述锁相环电路基于PLD器件内部具有时钟相移功能的多输出锁相环电路,所述锁相环电路的多路串行输出通道复用同一个相移时钟。
优选的,所述锁相环电路输出四路相移过采样时钟信号,分别为0°过采样时钟、90°过采样时钟、180°过采样时钟及270°过采样时钟。
进一步的,所述缓存寄存器组包括边沿检测寄存器组和过采样寄存器组,串行码流在错相时钟簇驱动下得到的过采样数据组被锁存进过采样寄存器组中,所述边沿检测寄存器组和过采样寄存器组组成一个移位寄存器链。在每个过采样周期,所述边沿检测寄存器组中移入上一个过采样周期内过采样寄存器组的过采样数据组。所述边沿跟踪电路根据边沿检测寄存器组中的过采样数据组检测过采样数据的边沿位置状态并将该状态信息传输至数据恢复窗口电路。所述数据恢复窗口电路将从边沿位置后的第一个寄存器开始的一组寄存器内容视为一个有效串行位数据并生成新的数据恢复窗口,在下一个时钟周期该数据恢复窗口内的寄存器内容被推入有效数据窗口。在每个过采样周期,所述有效采样窗中固定采样窗口的数值被作为本过采样周期的有效串行数据位输出,该固定采样窗口的位置尽可能远离串行码流的跳变边沿位置。
进一步的,在后一个过采样周期中,串行码流变化为后一个过采样周期的数据,此时所述过采样寄存器组移入新的过采样周期的过采样数据,所述边沿检测寄存器组则从过采样寄存器组中移入前一个过采样周期的数据。当所述边沿跟踪电路根据过采样数据的边沿位置状态判断有效数据窗口的边沿位置发生变化,则从边沿位置状态发生变化的过采样数据位开始为有效数据窗口的起始位置,控制移位寄存器链的数据恢复窗口向过采样数据读入方向调整,并将该数据恢复窗口内的过采样数据复制至所述有效数据窗口中,最后从固定采样窗口恢复得到本过采样周期的有效串行数据位。
进一步的,所述过采样数据的边沿位置状态由边沿检测寄存器组中过采样数据组的两位彼此相邻的过采样数据进行异或运算得到。
优选的,所述边沿检测寄存器组和过采样寄存器组均为四位的寄存器组,所述边沿检测寄存器组和过采样寄存器组组成一个八位的移位寄存器链。
本发明还另外具体提供了一种串行通讯动态位恢复方法的技术实现方案,串行通讯动态位恢复方法,包括以下步骤:
S101)锁相环电路基于本地时钟生成与串行码流波特率相同的四重以上错相时钟簇;
S102)在所述错相时钟簇的控制下,过采锁存与同步电路对串行码流的进行过采样并将过采样数据同步至所述错相时钟簇的0°过采样数据时钟后得到过采样数据组;
S103)将所述过采样数据组存储在缓存寄存器组中;
S104)边沿跟踪电路根据所述缓存寄存器组中的过采样数据组监测串行码流的跳变边沿,当发现新的跳变边沿后则以该新的跳变边沿位置为边界通知数据恢复窗口电路调整数据恢复窗口以实现跳变边沿闭环跟踪;
S105)通过跳变边沿闭环跟踪从串行码流中恢复出有效串行数据位,该有效串行数据位与错相时钟簇的0°过采样时钟保持同相位关系。
进一步的,所述缓存寄存器组包括边沿检测寄存器组和过采样寄存器组,所述边沿检测寄存器组和过采样寄存器组组成一个移位寄存器链。所述方法进一步包括以下步骤:
串行码流在错相时钟簇驱动下得到的过采样数据组被锁存进过采样寄存器组中;
在每个过采样周期,所述边沿检测寄存器组中移入上一个过采样周期内过采样寄存器组的过采样数据组;
所述边沿跟踪电路根据边沿检测寄存器组中的过采样数据组检测过采样数据的边沿位置状态并将该状态信息传输至数据恢复窗口电路;
所述数据恢复窗口电路将从边沿位置后的第一个寄存器开始的一组寄存器内容视为一个有效串行位数据并生成新的数据恢复窗口,在下一个时钟周期该数据恢复窗口内的寄存器内容被推入有效数据窗口;
在每个过采样周期,所述有效采样窗中固定采样窗口的数值被作为本过采样周期的有效串行数据位输出,该固定采样窗口的位置尽可能远离串行码流的跳变边沿位置。
进一步的,在后一个过采样周期中,串行码流变化为后一个过采样周期的数据,此时所述过采样寄存器组移入新的过采样周期的过采样数据,所述边沿检测寄存器组则从过采样寄存器组中移入前一个过采样周期的数据。当所述边沿跟踪电路根据过采样数据的边沿位置状态判断有效数据窗口的边沿位置发生变化,则从边沿位置状态发生变化的过采样数据位开始为有效数据窗口的起始位置,控制移位寄存器链的数据恢复窗口向过采样数据读入方向调整,并将该数据恢复窗口内的过采样数据复制至所述有效数据窗口中,最后从固定采样窗口恢复得到本过采样周期的有效串行数据位。
进一步的,所述过采样数据的边沿位置状态由边沿检测寄存器组中过采样数据组的两位彼此相邻的过采样数据进行异或运算得到。
优选的,所述锁相环电路输出四路相移过采样时钟信号,分别为0°过采样时钟、90°过采样时钟、180°过采样时钟及270°过采样时钟,四路相移过采样时钟信号复用同一个相移时钟。所述边沿检测寄存器组和过采样寄存器组均为四位的寄存器组,所述边沿检测寄存器组和过采样寄存器组组成一个八位的移位寄存器链。
通过实施上述本发明提供的串行通讯动态位恢复装置及方法的技术方案,具有如下有益效果:
(1)本发明串行通讯动态位恢复装置及方法,能够实现低成本PLD器件内无需专用CDR锁相环电路的多路高速异步串行通讯,无需单独的专用锁相环电路从高速串行数据流中恢复出同步采样时钟用于数据的正确恢复,就能够实现高速串行通讯动态位的准确恢复;
(2)本发明串行通讯动态位恢复装置及方法,通过单个锁相环的多路相移时钟可支持多个高速串行通讯信道的多倍过采样,从而可以轻易在单个FPGA或CPLD内实现多通道高速串行通讯,在资源节约和接口数量上相对于采用专用锁相环电路的高速串行CDR技术更加优越。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的实施例。
图1是本发明串行通讯动态位恢复装置一种具体实施例的结构组成框图;
图2是本发明串行通讯动态位恢复装置一种具体实施例在第一采样周期的有效数据窗口动态调整原理示意图;
图3是本发明串行通讯动态位恢复装置一种具体实施例在第二采样周期的有效数据窗口动态调整原理示意图;
图4是本发明串行通讯动态位恢复装置一种具体实施例的数据采样波形示意图;
图5是本发明串行通讯动态位恢复方法一种具体实施例的程序流程图;
图中:1-锁相环电路,2-过采锁存与同步电路,3-缓存寄存器组,4-边沿跟踪电路,5-数据恢复窗口电路,6-有效数据窗口,30-移位寄存器链,31-边沿检测寄存器组,32-过采样寄存器组。
具体实施方式
为了引用和清楚起见,将下文中使用的技术名词、简写或缩写记载如下:
ASIC:Application Specific Integrated Circuits,专用集成电路的简称;
均衡编码:为防止串行通讯中码元长时间不翻转对寄生电容充电而影响信号的边沿抖动而引入的一种可保证0-1编码数整体相等的一种编码方式;
CDR:Clock Data Recovery,串行通讯信道内的时钟和数据恢复;
PLD:Programmable Logic Device,可编程逻辑器件的简称;
FPGA:Field-Programmable Gate Array,现场可编程门阵列的简称;
CPLD:Complex Programmable Logic Device,复杂可编程逻辑器件的简称。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
如附图1至附图5所示,给出了本发明串行通讯动态位恢复装置及方法的具体实施例,下面结合附图和具体实施例对本发明作进一步说明。
实施例1
本实施例通过以下几种手段利用低成本PLD器件实现无需专用锁相环电路的高速异步串行通讯数据的准确恢复:
1)在发送端基于8B/10B等均衡编码注入丰富的采样跳变调整基准位置;
2)利用PLD器件内部时钟功能单元提供的相移时钟电路实现对串行输入数据的多路错相过采样;
3)基于过采样数据(过采样是指以远远高于信号带宽两倍或其最高频率对其进行采样的过程),检测数据中的边沿跳变,以边沿跳变为基准实时调整串行数据采样窗口时刻;
4)根据实时调整的采样窗口时刻实现数据位的准确恢复。
如附图1所示,一种本发明串行通讯动态位恢复装置的实施例,具体包括:锁相环电路1、过采锁存与同步电路2、缓存寄存器组3、边沿跟踪电路4及数据恢复窗口电路5。接收端芯片内部的锁相环电路1基于本地时钟生成与串行码流波特率相同的四重以上错相时钟簇(采用五重,或五重以上的错相时钟簇进行数据过采样虽然能够大幅提高数据采样精度,但对锁相环电路1产生的输出时钟资源要求更高),在该错相时钟簇的控制下,过采锁存与同步电路2对串行码流的进行过采样并将过采样数据同步至错相时钟簇的0°过采样数据时钟后得到过采样数据组,该过采样数据组存储在缓存寄存器组3中。边沿跟踪电路4根据缓存寄存器组3中的过采样数据组监测串行码流的跳变边沿,当发现新的跳变边沿后则以该新的跳变边沿位置为边界通知数据恢复窗口电路5调整数据恢复窗口以实现跳变边沿闭环跟踪。通过跳变边沿闭环跟踪从串行码流中恢复出有效串行数据位,该有效串行数据位与错相时钟簇的0°过采样时钟保持同相位关系。
实施例1描述的串行通讯动态位恢复装置仅需要PLD器件内部具备有时钟相移功能的多输出锁相环电路(该锁相环电路必须同时提供至少4路时钟输出),多个串行通道均可复用同一个锁相环的相移时钟,因而可以轻易在单个芯片内不受锁相环时钟资源限制而实现多路高速串行通讯功能。锁相环电路1基于PLD器件内部具有时钟相移功能的多输出锁相环电路,锁相环电路1的多路串行输出通道复用同一个相移时钟。如附图4所示,锁相环电路1输出四路相移过采样时钟信号对串行码流进行过采样,分别为0°过采样时钟(即Clk0)、90°过采样时钟(即Clk1)、180°过采样时钟(即Clk2)及270°过采样时钟(即Clk3)。
缓存寄存器组3进一步包括边沿检测寄存器组31和过采样寄存器组32,串行码流在错相时钟簇驱动下得到的过采样数据组被锁存进过采样寄存器组32中,边沿检测寄存器组31和过采样寄存器组32组成一个移位寄存器链30。在每个过采样周期,边沿检测寄存器组31中移入上一个过采样周期内过采样寄存器组32的过采样数据组。边沿跟踪电路4根据边沿检测寄存器组31中的过采样数据组检测过采样数据的边沿位置状态并将该状态信息传输至数据恢复窗口电路5。过采样数据的边沿位置状态由边沿检测寄存器组31中过采样数据组的两位彼此相邻的过采样数据进行异或运算得到。数据恢复窗口电路5将从边沿位置后的第一个寄存器开始的一组寄存器内容视为一个有效串行位数据并生成新的数据恢复窗口,在下一个时钟周期该数据恢复窗口内的寄存器内容被推入有效数据窗口6。在每个过采样周期,有效采样窗6中固定采样窗口的数值被作为本过采样周期的有效串行数据位输出,该固定采样窗口的位置尽可能远离串行码流的跳变边沿位置。
在后一个过采样周期中,串行码流变化为后一个过采样周期的数据,此时过采样寄存器组32移入新的过采样周期的过采样数据,边沿检测寄存器组31则从过采样寄存器组32中移入前一个过采样周期的数据。当边沿跟踪电路4根据过采样数据的边沿位置状态判断有效数据窗口6的边沿位置发生变化,则从边沿位置状态发生变化的过采样数据位开始为有效数据窗口6的起始位置,控制移位寄存器链30的数据恢复窗口向过采样数据读入方向调整,并将该数据恢复窗口内的过采样数据复制至有效数据窗口6中,最后从固定采样窗口恢复得到本过采样周期的有效串行数据位。
边沿检测寄存器组31和过采样寄存器组32均为四位的寄存器组,边沿检测寄存器组31和过采样寄存器组32组成一个八位的移位寄存器链30。以实现低成本PLD器件内无需专用CDR锁相环电路的多路高速异步串行通讯。
实施例1描述的串行通讯动态位恢复装置基于动态边沿跟踪的有效数据窗口调整技术,通过相移时钟的码流过采样,实现对码流中边沿位置的动态跟踪并根据边沿位置变换调整有效数据窗口,在有效数据窗口的固定位置完成采样并输出响应周期的位恢复数据。下面通过两个具体示例对本实施例技术方案进行详细介绍。
如附图2所示,为串行通讯动态位恢复装置初始的第一个过采样周期(即过采样周期0)示意图,附图2中,串行码流(即Bit0)在四重错相过采样时钟驱动下得到的采样结果被锁存进过采样寄存器组32中,边沿检测寄存器组31与过采样寄存器组32构成一个移位寄存器链30。每个采样周期边沿检测寄存器组31移入上一个过采样周期内过采样寄存器组32的采样值(如:在本示例中,边沿检测寄存器组31中的内容为0、0、0、0,而过采样寄存器组32的内容为S00、S01、S02、S03),边沿跟踪电路4根据边沿检测寄存器31的内容检测过采样值的边沿位置状态E0、E1、E2(如:在本示例中,E0=0,E1=0,E2=0),并将该边沿位置状态信息传输至数据恢复窗口电路5。数据恢复窗口电路5将从边沿位置后的第一个寄存器开始的四个寄存器位内容视为一个有效位数据,而在下一个时钟周期该四个寄存器的内容被推入有效数据窗口6中,每个采样周期有效数据窗口6中的固定采样窗口(如:在本示例中,选取有效数据窗口6中的第三个数据窗口为固定采样窗口)的数值被作为本过采样周期的有效数据位(如:在本示例中,本过采样周期的有效数据位为0)输出。
如附图3所示,为附图2中下一个过采样周期的窗口调整示意图,在过采样周期1中,串行码流已经变化为下一个波特周期数据(即Bit1),此时过采样寄存器组32中移入新的过采样周期的过采样数据,边沿检测寄存器组31则从过采样寄存器组32中移入上一个过采样周期的数据,边沿跟踪电路4根据边沿位置状态确定此时E0=0,E2=1,E2=0,并将该边沿位置状态信息传输至数据恢复窗口电路5。数据恢复窗口电路5从边沿位置状态信息中判断出有效数据窗口6的边沿位置发生了变化,从E2开始的位置为有效数据窗口6的位置,从而控制移位寄存器链30的窗口向右移动调整,并将该窗口内的数据复制至有效数据窗口6中,最后从固定采样窗口中恢复得到本过采样周期的有效串行数据位为S01。
实施例1描述的串行通讯动态位恢复装置利用多倍过采样技术实现对串行码流的多倍过采样,在线跟踪码流的偏移抖动并实时调整数据采样窗口位置,从而实现无时钟恢复状态下对均衡型串行码流数据位的准确恢复。
实施例2
如附图5所示,一种本发明串行通讯动态位恢复方法的实施例,具体包括以下步骤:
S101)锁相环电路1基于本地时钟生成与串行码流波特率相同的四重以上错相时钟簇;
S102)在错相时钟簇的控制下,过采锁存与同步电路2对串行码流的进行过采样并将过采样数据同步至错相时钟簇的0°过采样数据时钟后得到过采样数据组;
S103)将过采样数据组存储在缓存寄存器组3中;
S104)边沿跟踪电路4根据缓存寄存器组3中的过采样数据组监测串行码流的跳变边沿,当发现新的跳变边沿后则以该新的跳变边沿位置为边界通知数据恢复窗口电路5调整数据恢复窗口以实现跳变边沿闭环跟踪;
S105)通过跳变边沿闭环跟踪从串行码流中恢复出有效串行数据位,该有效串行数据位与错相时钟簇的0°过采样时钟保持同相位关系。
缓存寄存器组3进一步包括边沿检测寄存器组31和过采样寄存器组32,边沿检测寄存器组31和过采样寄存器组32组成一个移位寄存器链30。串行通讯动态位恢复方法进一步包括以下步骤:
串行码流在错相时钟簇驱动下得到的过采样数据组被锁存进过采样寄存器组32中;
在每个过采样周期,边沿检测寄存器组31中移入上一个过采样周期内过采样寄存器组32的过采样数据组;
边沿跟踪电路4根据边沿检测寄存器组31中的过采样数据组检测过采样数据的边沿位置状态并将该状态信息传输至数据恢复窗口电路5;过采样数据的边沿位置状态由边沿检测寄存器组31中过采样数据组的两位彼此相邻的过采样数据进行异或运算得到;
数据恢复窗口电路5将从边沿位置后的第一个寄存器开始的一组寄存器内容视为一个有效串行位数据并生成新的数据恢复窗口,在下一个时钟周期该数据恢复窗口内的寄存器内容被推入有效数据窗口6;
在每个过采样周期,有效采样窗6中固定采样窗口的数值被作为本过采样周期的有效串行数据位输出,该固定采样窗口的位置尽可能远离串行码流的跳变边沿位置。
在后一个过采样周期中,串行码流变化为后一个过采样周期的数据,此时过采样寄存器组32移入新的过采样周期的过采样数据,边沿检测寄存器组31则从过采样寄存器组32中移入前一个过采样周期的数据。当边沿跟踪电路4根据过采样数据的边沿位置状态判断有效数据窗口6的边沿位置发生变化,则从边沿位置状态发生变化的过采样数据位开始为有效数据窗口6的起始位置,控制移位寄存器链30的数据恢复窗口向过采样数据读入方向调整,并将该数据恢复窗口内的过采样数据复制至有效数据窗口6中,最后从固定采样窗口恢复得到本过采样周期的有效串行数据位。
锁相环电路1输出四路相移过采样时钟信号,分别为0°过采样时钟、90°过采样时钟、180°过采样时钟及270°过采样时钟,四路相移过采样时钟信号复用同一个相移时钟。边沿检测寄存器组31和过采样寄存器组32均为四位的寄存器组,边沿检测寄存器组31和过采样寄存器组32组成一个八位的移位寄存器链30。
实施例2描述的串行通讯动态位恢复方法基于本地时钟过采数据进行实时边沿检测,并通过有效窗口的动态调整同步跟踪并恢复高速串行位数据,该技术方案根据过采样数据跳变边沿的变化实时调整有效数据窗口并在有效窗口固定位置进行有效数据位恢复,实现了低成本、高可靠的高速串行通讯动态位准确恢复。
通过实施本发明具体实施例描述的串行通讯动态位恢复装置及方法的技术方案,能够产生如下技术效果:
(1)本发明具体实施例描述的串行通讯动态位恢复装置及方法,能够实现低成本PLD器件内无需专用CDR锁相环电路的多路高速异步串行通讯,无需单独的专用锁相环电路从高速串行数据流中恢复出同步采样时钟用于数据的正确恢复,就能够实现高速串行通讯动态位的准确恢复;
(2)本发明具体实施例描述的串行通讯动态位恢复装置及方法,通过单个锁相环的多路相移时钟可支持多个高速串行通讯信道的多倍过采样,从而可以轻易在单个FPGA或CPLD内实现多通道高速串行通讯,在资源节约和接口数量上相对于采用专用锁相环电路的高速串行CDR技术更加优越。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制。虽然本发明已以较佳实施例揭示如上,然而并非用以限定本发明。任何熟悉本领域的技术人员,在不脱离本发明的精神实质和技术方案的情况下,都可利用上述揭示的方法和技术内容对本发明技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同替换、等效变化及修饰,均仍属于本发明技术方案保护的范围。
Claims (12)
1.一种串行通讯动态位恢复装置,其特征在于,包括:锁相环电路(1)、过采锁存与同步电路(2)、缓存寄存器组(3)、边沿跟踪电路(4)及数据恢复窗口电路(5);所述锁相环电路(1)基于本地时钟生成与串行码流波特率相同的四重以上错相时钟簇,在该错相时钟簇的控制下,所述过采锁存与同步电路(2)对串行码流的进行过采样并将过采样数据同步至所述错相时钟簇的0°过采样数据时钟后得到过采样数据组,该过采样数据组存储在所述缓存寄存器组(3)中;所述边沿跟踪电路(4)根据缓存寄存器组(3)中的过采样数据组监测串行码流的跳变边沿,当发现新的跳变边沿后则以该新的跳变边沿位置为边界通知数据恢复窗口电路(5)调整数据恢复窗口以实现跳变边沿闭环跟踪;通过跳变边沿闭环跟踪从串行码流中恢复出有效串行数据位,该有效串行数据位与错相时钟簇的0°过采样时钟保持同相位关系。
2.根据权利要求1所述的串行通讯动态位恢复装置,其特征在于:所述锁相环电路(1)基于PLD器件内部具有时钟相移功能的多输出锁相环电路,所述锁相环电路(1)的多路串行输出通道复用同一个相移时钟。
3.根据权利要求2所述的串行通讯动态位恢复装置,其特征在于:所述锁相环电路(1)输出四路相移过采样时钟信号,分别为0°过采样时钟、90°过采样时钟、180°过采样时钟及270°过采样时钟。
4.根据权利要求1、2或3所述的串行通讯动态位恢复装置,其特征在于:所述缓存寄存器组(3)包括边沿检测寄存器组(31)和过采样寄存器组(32),串行码流在错相时钟簇驱动下得到的过采样数据组被锁存进过采样寄存器组(32)中,所述边沿检测寄存器组(31)和过采样寄存器组(32)组成一个移位寄存器链(30);在每个过采样周期,所述边沿检测寄存器组(31)中移入上一个过采样周期内过采样寄存器组(32)的过采样数据组;所述边沿跟踪电路(4)根据边沿检测寄存器组(31)中的过采样数据组检测过采样数据的边沿位置状态并将该状态信息传输至数据恢复窗口电路(5);所述数据恢复窗口电路(5)将从边沿位置后的第一个寄存器开始的一组寄存器内容视为一个有效串行位数据并生成新的数据恢复窗口,在下一个时钟周期该数据恢复窗口内的寄存器内容被推入有效数据窗口(6);在每个过采样周期,所述有效采样窗口(6)中固定采样窗口的数值被作为本过采样周期的有效串行数据位输出,该固定采样窗口的位置尽可能远离串行码流的跳变边沿位置。
5.根据权利要求4所述的串行通讯动态位恢复装置,其特征在于:在后一个过采样周期中,串行码流变化为后一个过采样周期的数据,此时所述过采样寄存器组(32)移入新的过采样周期的过采样数据,所述边沿检测寄存器组(31)则从过采样寄存器组(32)中移入前一个过采样周期的数据;当所述边沿跟踪电路(4)根据过采样数据的边沿位置状态判断有效数据窗口(6)的边沿位置发生变化,则从边沿位置状态发生变化的过采样数据位开始为有效数据窗口(6)的起始位置,控制移位寄存器链(30)的数据恢复窗口向过采样数据读入方向调整,并将该数据恢复窗口内的过采样数据复制至所述有效数据窗口(6)中,最后从固定采样窗口恢复得到本过采样周期的有效串行数据位。
6.根据权利要求5所述的串行通讯动态位恢复装置,其特征在于:所述过采样数据的边沿位置状态由边沿检测寄存器组(31)中过采样数据组的两位彼此相邻的过采样数据进行异或运算得到。
7.根据权利要求5或6所述的串行通讯动态位恢复装置,其特征在于:所述边沿检测寄存器组(31)和过采样寄存器组(32)均为四位的寄存器组,所述边沿检测寄存器组(31)和过采样寄存器组(32)组成一个八位的移位寄存器链(30)。
8.一种串行通讯动态位恢复方法,其特征在于,包括以下步骤:
S101)锁相环电路(1)基于本地时钟生成与串行码流波特率相同的四重以上错相时钟簇;
S102)在所述错相时钟簇的控制下,过采锁存与同步电路(2)对串行码流的进行过采样并将过采样数据同步至所述错相时钟簇的0°过采样数据时钟后得到过采样数据组;
S103)将所述过采样数据组存储在缓存寄存器组(3)中;
S104)边沿跟踪电路(4)根据所述缓存寄存器组(3)中的过采样数据组监测串行码流的跳变边沿,当发现新的跳变边沿后则以该新的跳变边沿位置为边界通知数据恢复窗口电路(5)调整数据恢复窗口以实现跳变边沿闭环跟踪;
S105)通过跳变边沿闭环跟踪从串行码流中恢复出有效串行数据位,该有效串行数据位与错相时钟簇的0°过采样时钟保持同相位关系。
9.根据权利要求8所述的串行通讯动态位恢复方法,其特征在于,所述缓存寄存器组(3)包括边沿检测寄存器组(31)和过采样寄存器组(32),所述边沿检测寄存器组(31)和过采样寄存器组(32)组成一个移位寄存器链(30);所述方法进一步包括以下步骤:
串行码流在错相时钟簇驱动下得到的过采样数据组被锁存进过采样寄存器组(32)中;
在每个过采样周期,所述边沿检测寄存器组(31)中移入上一个过采样周期内过采样寄存器组(32)的过采样数据组;
所述边沿跟踪电路(4)根据边沿检测寄存器组(31)中的过采样数据组检测过采样数据的边沿位置状态并将该状态信息传输至数据恢复窗口电路(5);
所述数据恢复窗口电路(5)将从边沿位置后的第一个寄存器开始的一组寄存器内容视为一个有效串行位数据并生成新的数据恢复窗口,在下一个时钟周期该数据恢复窗口内的寄存器内容被推入有效数据窗口(6);
在每个过采样周期,所述有效采样窗口(6)中固定采样窗口的数值被作为本过采样周期的有效串行数据位输出,该固定采样窗口的位置尽可能远离串行码流的跳变边沿位置。
10.根据权利要求9所述的串行通讯动态位恢复方法,其特征在于:在后一个过采样周期中,串行码流变化为后一个过采样周期的数据,此时所述过采样寄存器组(32)移入新的过采样周期的过采样数据,所述边沿检测寄存器组(31)则从过采样寄存器组(32)中移入前一个过采样周期的数据;当所述边沿跟踪电路(4)根据过采样数据的边沿位置状态判断有效数据窗口(6)的边沿位置发生变化,则从边沿位置状态发生变化的过采样数据位开始为有效数据窗口(6)的起始位置,控制移位寄存器链(30)的数据恢复窗口向过采样数据读入方向调整,并将该数据恢复窗口内的过采样数据复制至所述有效数据窗口(6)中,最后从固定采样窗口恢复得到本过采样周期的有效串行数据位。
11.根据权利要求9或10所述的串行通讯动态位恢复方法,其特征在于:所述过采样数据的边沿位置状态由边沿检测寄存器组(31)中过采样数据组的两位彼此相邻的过采样数据进行异或运算得到。
12.根据权利要求11所述的串行通讯动态位恢复方法,其特征在于:所述锁相环电路(1)输出四路相移过采样时钟信号,分别为0°过采样时钟、90°过采样时钟、180°过采样时钟及270°过采样时钟,四路相移过采样时钟信号复用同一个相移时钟;所述边沿检测寄存器组(31)和过采样寄存器组(32)均为四位的寄存器组,所述边沿检测寄存器组(31)和过采样寄存器组(32)组成一个八位的移位寄存器链(30)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910500697.1A CN112073169B (zh) | 2019-06-11 | 2019-06-11 | 一种串行通讯动态位恢复装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910500697.1A CN112073169B (zh) | 2019-06-11 | 2019-06-11 | 一种串行通讯动态位恢复装置及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112073169A true CN112073169A (zh) | 2020-12-11 |
CN112073169B CN112073169B (zh) | 2023-06-13 |
Family
ID=73658758
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910500697.1A Active CN112073169B (zh) | 2019-06-11 | 2019-06-11 | 一种串行通讯动态位恢复装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112073169B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113747276A (zh) * | 2021-08-25 | 2021-12-03 | 许继集团有限公司 | 一种光以太网数据链路层码元恢复及容错方法及装置 |
CN113886300A (zh) * | 2021-09-23 | 2022-01-04 | 珠海一微半导体股份有限公司 | 一种总线接口的时钟数据自适应恢复系统及芯片 |
CN117435426A (zh) * | 2023-10-18 | 2024-01-23 | 成都观岩科技有限公司 | 一种芯片内串行数据溢出校验方法 |
CN113886315B (zh) * | 2021-09-23 | 2024-05-03 | 珠海一微半导体股份有限公司 | 一种时钟数据恢复系统、芯片及时钟数据恢复方法 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020075981A1 (en) * | 2000-12-20 | 2002-06-20 | Benjamim Tang | PLL/DLL dual loop data synchronization |
US20040096016A1 (en) * | 2002-11-15 | 2004-05-20 | Choudhury Ashish K. | Fast locking clock and data recovery unit |
US20090041104A1 (en) * | 2006-06-27 | 2009-02-12 | Bogdan John W | Phase and Frequency Recovery Techniques |
CN101753288A (zh) * | 2009-12-11 | 2010-06-23 | 西安邮电学院 | 基于过采样的时钟数据恢复和串并转换电路 |
CN101843019A (zh) * | 2007-09-14 | 2010-09-22 | 西姆特科有限公司 | 高速串行器、相关组件、系统和方法 |
US7965801B1 (en) * | 2008-05-08 | 2011-06-21 | Xilinx, Inc. | Digital data recovery |
CN102510328A (zh) * | 2011-12-29 | 2012-06-20 | 成都三零嘉微电子有限公司 | 一种高速并行接口电路 |
JP2012244537A (ja) * | 2011-05-23 | 2012-12-10 | Ricoh Co Ltd | データリカバリ方法およびデータリカバリ装置 |
CN103475362A (zh) * | 2013-09-29 | 2013-12-25 | 灿芯半导体(上海)有限公司 | 基于过采样的无需时钟恢复的数据恢复电路 |
CN205545202U (zh) * | 2016-04-29 | 2016-08-31 | 福建先创通信有限公司 | 一种数字集群通信设备时钟数据恢复电路 |
CN206370827U (zh) * | 2015-10-20 | 2017-08-01 | 赛灵思公司 | 用于时钟数据恢复的装置以及接收器 |
-
2019
- 2019-06-11 CN CN201910500697.1A patent/CN112073169B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020075981A1 (en) * | 2000-12-20 | 2002-06-20 | Benjamim Tang | PLL/DLL dual loop data synchronization |
US20040096016A1 (en) * | 2002-11-15 | 2004-05-20 | Choudhury Ashish K. | Fast locking clock and data recovery unit |
US20090041104A1 (en) * | 2006-06-27 | 2009-02-12 | Bogdan John W | Phase and Frequency Recovery Techniques |
CN101843019A (zh) * | 2007-09-14 | 2010-09-22 | 西姆特科有限公司 | 高速串行器、相关组件、系统和方法 |
US7965801B1 (en) * | 2008-05-08 | 2011-06-21 | Xilinx, Inc. | Digital data recovery |
CN101753288A (zh) * | 2009-12-11 | 2010-06-23 | 西安邮电学院 | 基于过采样的时钟数据恢复和串并转换电路 |
JP2012244537A (ja) * | 2011-05-23 | 2012-12-10 | Ricoh Co Ltd | データリカバリ方法およびデータリカバリ装置 |
CN102510328A (zh) * | 2011-12-29 | 2012-06-20 | 成都三零嘉微电子有限公司 | 一种高速并行接口电路 |
CN103475362A (zh) * | 2013-09-29 | 2013-12-25 | 灿芯半导体(上海)有限公司 | 基于过采样的无需时钟恢复的数据恢复电路 |
CN206370827U (zh) * | 2015-10-20 | 2017-08-01 | 赛灵思公司 | 用于时钟数据恢复的装置以及接收器 |
CN205545202U (zh) * | 2016-04-29 | 2016-08-31 | 福建先创通信有限公司 | 一种数字集群通信设备时钟数据恢复电路 |
Non-Patent Citations (2)
Title |
---|
邓亚波;杜庆;言凯;: "Z85230在机车串行总线设计中的应用", 铁道机车车辆, no. 02, pages 92 - 94 * |
邱岳烽;宾志湘;黄红光;李淼;杨胜;: "一种基于FPGA的实时光纤环网通信技术", 控制与信息技术, no. 01, pages 71 - 75 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113747276A (zh) * | 2021-08-25 | 2021-12-03 | 许继集团有限公司 | 一种光以太网数据链路层码元恢复及容错方法及装置 |
CN113747276B (zh) * | 2021-08-25 | 2023-08-11 | 许继集团有限公司 | 一种光以太网数据链路层码元恢复及容错方法及装置 |
CN113886300A (zh) * | 2021-09-23 | 2022-01-04 | 珠海一微半导体股份有限公司 | 一种总线接口的时钟数据自适应恢复系统及芯片 |
CN113886315B (zh) * | 2021-09-23 | 2024-05-03 | 珠海一微半导体股份有限公司 | 一种时钟数据恢复系统、芯片及时钟数据恢复方法 |
CN113886300B (zh) * | 2021-09-23 | 2024-05-03 | 珠海一微半导体股份有限公司 | 一种总线接口的时钟数据自适应恢复系统及芯片 |
CN117435426A (zh) * | 2023-10-18 | 2024-01-23 | 成都观岩科技有限公司 | 一种芯片内串行数据溢出校验方法 |
CN117435426B (zh) * | 2023-10-18 | 2024-05-07 | 成都观岩科技有限公司 | 一种芯片内串行数据溢出校验方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112073169B (zh) | 2023-06-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112073169B (zh) | 一种串行通讯动态位恢复装置及方法 | |
US5953386A (en) | High speed clock recovery circuit using complimentary dividers | |
EP1538775B1 (en) | Data recovery method and data recovery circuit | |
EP1388975B1 (en) | System and method for data transition control in a multirate communication system | |
CN103947116B (zh) | 用于恢复阵发模式脉宽调制(pwm)和非归零(nrz)数据的装置和方法 | |
US6266799B1 (en) | Multi-phase data/clock recovery circuitry and methods for implementing same | |
US8180007B2 (en) | Method for clock and data recovery | |
US7486746B2 (en) | Clock and data recovery with extended integration cycles | |
US8320770B2 (en) | Clock and data recovery for differential quadrature phase shift keying | |
CN102510328B (zh) | 一种高速并行接口电路 | |
US8149980B2 (en) | System and method for implementing a phase detector to support a data transmission procedure | |
JP2004507963A (ja) | データ・アイ・トラッキングを用いたデータ復元 | |
CN103219992A (zh) | 一种带有滤波整形电路的盲过采样时钟数据恢复电路 | |
US20070280392A1 (en) | Clock and data recovery method and corresponding device | |
US5101203A (en) | Digital data regeneration and deserialization circuits | |
CN102769455A (zh) | 高速输入输出接口及其接收电路 | |
CN102946306B (zh) | 时钟数据恢复电路结构及数字化时钟数据恢复方法 | |
CN108449086B (zh) | 多通道高速串行总线发送端并行端口同步方法及电路 | |
US7209848B2 (en) | Pulse stretching architecture for phase alignment for high speed data acquisition | |
US5748123A (en) | Decoding apparatus for Manchester code | |
CN102546493A (zh) | 利用过采样的数据恢复装置及其方法 | |
CN204362064U (zh) | 数据接收器、数据接收系统和数据传输系统 | |
CN202841098U (zh) | 高速输入输出接口及其接收电路 | |
US8149928B2 (en) | Receivers for cycle encoded signals | |
KR102578608B1 (ko) | 다중 칩 모듈의 물리 계층 인터페이스를 위한 스큐 보정 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |