CN116032452B - 一种基于源同步信号的时钟相位偏移自动补偿方法 - Google Patents
一种基于源同步信号的时钟相位偏移自动补偿方法 Download PDFInfo
- Publication number
- CN116032452B CN116032452B CN202310164852.3A CN202310164852A CN116032452B CN 116032452 B CN116032452 B CN 116032452B CN 202310164852 A CN202310164852 A CN 202310164852A CN 116032452 B CN116032452 B CN 116032452B
- Authority
- CN
- China
- Prior art keywords
- value
- delay
- clock
- org
- phase offset
- 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
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明公开了一种基于源同步信号的时钟相位偏移自动补偿方法,包括:首先测量同步信号采样窗口中心位置,利用该测量结果初始化和固化延时值C_org,每次FPGA数据接收板上电时,首先读取初始化延时值C_org,然后进行比特位对齐,再循环测量N次采样窗口中心位置,并求平均值C_new,根据平均值C_new和延时值C_org的偏差得出时钟相位偏移值diff=C_new‑C_org,再用该偏移值补偿时钟相位偏移。本发明能使输入数据信号相对时钟的相位偏移保持稳定,从而实现数据的稳定传输。
Description
技术领域
本发明涉及高速数据通信技术领域,更具体地说,特别涉及一种基于源同步信号的时钟相位偏移自动补偿方法。
背景技术
为了能够准确稳定地采集输入到FPGA的高速数据信号,采样时钟和数据信号的相对延迟时间,即相位,必须满足严格的建立保持时间等时序关系。在进行FPGA程序设计时,通过对输入时序进行严格约束,并通过插入IO Delay或者其他延时单元进行调整,可以使得时钟与数据的相位关系保持在稳定采集状态。
然而随着板子(基于FPGA的数据接收板)工作温度的变化,驱动数据的时钟相位将不可避免地发生相对偏移,当输入为低速的数据信号、且时序余量足够时,因工作温度变化引起的相移不会显著影响数据采集的正确性。但是当输入为高速数据信号,尤其当信号为高速并行信号时,因为时钟周期极大的缩短,各路数据信号延时不尽相同,因温度引起的时钟相位偏移相对时钟周期的占比不容忽视,时钟相移导致数据采集进入亚稳态的概率将直线上升。若不对温度变化引起的时钟相移进行补偿,将导致板子在高温或者低温时采集出错,进而影响板子数据采集性能。
同步信号与数据信号一样,是由源端时钟驱动发出,因此在时钟相移影响方面同步信号具有与数据信号相同的属性。在实际运行过程中,数据信号时刻处在变化之中,而同步信号保持不变,这个属性使得同步信号便于测量。通过对同步信号与时钟相位关系的测量,可以求出时钟相对同步信号的相位偏移,通过对时钟的相位进行动态地反向补偿,可以保持时钟相对数据和同步信号的相位不变,从而保证数据采集的稳定性,提升板子的温度适应范围,实现全温度范围准确稳定采集数据信号的目标。为此,确有必要提供一种基于源同步信号的时钟相位偏移自动补偿方法。
发明内容
本发明的目的在于提供一种基于源同步信号的时钟相位偏移自动补偿方法,以克服现有技术所存在的缺陷。
为了达到上述目的,本发明采用的技术方案如下:一种基于源同步信号的时钟相位偏移自动补偿方法,包括:先测量同步信号采样窗口中心位置,利用该测量结果初始化和固化延时值C_org,每次FPGA数据接收板上电时,首先读取初始化延时值C_org,然后进行比特位对齐,再循环测量N次采样窗口中心位置,并求平均值C_new,根据平均值C_new和延时值C_org的偏差得出时钟相位偏移值diff=C_new-C_org,再用该偏移值补偿时钟相位偏移。
进一步地,该方法具体包括以下步骤:
S1、读取初始化标志和初始化延时值C_org,若初始化标志为0,则进入步骤S2开始进行初始化,否则进入步骤S3载入初始值;
S2、初始化延时链延时值为i=MaxDelay/2,设置增量值为inc=1,进入步骤S4;
S3、初始化延时链延时值为i=C_org,设置增量值为0,进入步骤S4;
S4、设置延时链延时值为i,进行位同步检测,若位同步检测成功,则进入步骤S6,否则进入步骤S5;
S5、判断位同步检测是否超时,若超时,则调整延时链延时值i=i+inc,并返回步骤S4重新进行位同步检测,若未超时,则进行一次比特滑动,并返回步骤S4重新进行位同步检测;
S6、设置延时链延时值从0至i递增,并检查位同步匹配结果,当出现位同步匹配时,记录该窗口左侧边沿Left,再进入步骤S7;
S7、设置延时链延时值从MaxDelay至i递减,并检查位同步匹配结果,当出现位同步匹配时,记录该窗口右侧边沿Right,再进入步骤S8;
S8、记录窗口中心位置a[j]=( Left+Right)/2,进行N次测量后,求取此次计算的窗口中心均值C_new=,再判断初始化标志,若初始化标志为0,则令C_org=C_new,初始化标志置1并固化进非易失性存储器,再返回步骤S6重新开始计算,若初始化标志为1,则进入步骤S9;
S9、计算同步信号采样口相位偏移量diff=C_new-C_org,并利用该偏移量反向补偿数据时钟。
进一步地,若测得同步信号的采样窗口中心点相位偏移值diff为正值,则将时钟管理器输出时钟CLK_adj与输入时钟CLK之间的延时值缩小时钟相位偏移值diff,若同步信号的采样窗口中心点相位偏移值diff为负值,则将CLK_adj与CLK之间的相位值扩大时钟相位偏移值diff。
进一步地,所述步骤S1中是从非易失存储器中读取初始化标志和初始化延时值C_org。
进一步地,所述步骤S2中的延时链最大延时时间MaxDelay为输入信号采样率周期值的2倍或以上,若输入数据率为单沿数据率,则延时链最大延时时间MaxDelay至少为输入时钟周期2倍,若输入数据为双沿数据率,则延时链最大延时时间MaxDelay至少为输入时钟信号的周期值。
进一步地,所述步骤S5中采用串并转换模块进行一次比特滑动,该一次比特滑动为串并转换寄存器逻辑右移一位。
与现有技术相比,本发明的优点在于:本发明提供的一种基于源同步信号的时钟相位偏移自动补偿方法,针对能输出同步信号的源端设备如AD9653、FPGA等,通过使用源时钟对同步信号采样窗口进行测量,根据窗口中心位置的偏移获取时钟相位的偏移值,利用该偏移量反向补偿时钟相位,使输入数据信号相对时钟的相位偏移保持稳定,从而实现数据的稳定传输。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是稳定采样时的相位关系图。
图2是亚稳态时相位关系图。
图3是本发明的功能框图。
图4是本发明基于源同步信号的时钟相位偏移自动补偿方法的流程图。
具体实施方式
下面结合附图对本发明的优选实施例进行详细阐述,以使本发明的优点和特征能更易于被本领域技术人员理解,从而对本发明的保护范围做出更为清楚明确的界定。
参阅图1-图4所示,本实施例公开了一种基于源同步信号的时钟相位偏移自动补偿方法,其采用的方案是:
先设置源端器件进入测试模式,根据预先约定好的测试码,在常温下,测量出同步信号采集窗口中心位置,然后将该位置值对应的延时值设定为初始值C_org,并固化在flash等非易失存储器中。
正常运行时,首先读取初始化延时值C_org,然后进行比特位对齐,完成比特位对齐后,再循环测量N次采样窗口中心位置,并求平均值C_new,根据平均值C_new和延时值C_org的偏差得出时钟相位偏移值diff=C_new-C_org,再用该偏移值补偿时钟相位偏移,即若测得同步信号的采样窗口中心点相位偏移值diff为正值,则将时钟管理器输出时钟CLK_adj与输入时钟CLK之间的延时值缩小时钟相位偏移值diff,若同步信号的采样窗口中心点相位偏移值diff为负值,则将CLK_adj与CLK之间的相位值扩大时钟相位偏移值diff。
本发明中,延时链最大延时时间MaxDelay设计为输入信号采样率周期值的2倍或以上,即若输入数据率为单沿数据率(SDR),则延时链最大延时时间MaxDelay至少为输入时钟周期2倍,若为双沿数据率(DDR),则延时链最大延时时间MaxDelay至少为输入时钟信号的周期值。
图1是稳定采样时的相位关系图。在常温下,应参照此图,将时钟与数据信号相位关系调节至最佳位置,在本发明中,同步信号采样窗口的测量就是通过测量图中Left和Right的值估算出来的,他们分别代表时钟相位向左或右能偏移的余量。
图2是亚稳态时相位关系图。对于图1调节好的时钟数据相位关系,若不进行时钟相位的自动补偿,则图1中调节好的时钟数据相位关系可能会随着温度的升高或者降低而出现恶化,陷入亚稳态,若进入亚稳态,则数据采集将出错。
具体的,下面以输入时钟信号为500MHZ,发送方发送的测试码为0xA1、串并转换比为1:8、延时链延时单元数为32,每次时钟相位调整所需测量结果的累加次数为100作为例子,结合附图及实施例对本发明的具体步骤作进一步的详细说明。此时延时链32个单元的总的延迟时间应设置为4ns,即每个延时单元125ps,本发明具体包括:步骤S1、从flash等非易失存储器中读取初始化标志和初始化延时值C_org,若初始化标志为0,则表示尚未完成初始化,此时初始化延时值C_org无效,需要先进行同步信号采样窗口中心位置的测量工作等初始化工作,确定C_org的值,因此进入步骤S2开始进行初始化,否则说明系统已经完成了初始化测量工作,C_org为有效值,则进入步骤S3直接向延时链载入初始值C_org。
步骤S2、进行通同步信号采样窗口中心位置测量等初始化工作,初始化延时链延时值为i=MaxDelay/2,本实施例中i=32/2=16,即延时链的中心位置,方便进行接下来的左右沿搜索工作,设置增量值为inc=1,进入步骤S4。
步骤S3、此步骤说明系统的初始化值为有效值,可以直接初始化延时链,故初始化延时链延时值为i=C_org,且无需搜索同步信号采样窗口左右沿,故设置增量值为0,防止比特对齐过程中脱离初始设置,再进入步骤S4。
步骤S4、设置延时链延时值为i,进行位同步检测,若位同步检测成功,则进入步骤S6,开始补偿参数计算流程,否则进入步骤S5。
步骤S5、判断位同步检测是否超时,若超时,则调整延时链延时值i=i+inc,并返回步骤S4重新进行位同步检测,若未超时,则控制串并转换模块进行一次比特滑动,即串并转换寄存器逻辑右移一位,并返回步骤S4重新进行位同步检测。
步骤S6、设置延时链延时值从0至i递增,并检查位同步匹配结果,当出现位同步匹配时,记录该窗口左侧边沿Left,再进入步骤S7。
步骤S7、设置延时链延时值从MaxDelay至i递减,并检查位同步匹配结果,当出现位同步匹配时,记录该窗口右侧边沿Right,再进入步骤S8。
步骤S8、记录窗口中心位置a[j]=( Left+Right)/2,进行N次测量后,即100次测量后,求取此次计算的窗口中心均值C_new=,再判断初始化标志,若初始化标志为0,则表明现在处于常温下的初始化阶段,令C_org=C_new,初始化标志置1,并固化进flash等非易失性存储器,再返回步骤S6重新开始计算,若初始化标志为1,则表明系统处于正常工作状态,则进入步骤S9。
步骤S9、计算同步信号采样口相位偏移量diff=C_new-C_org,并利用该偏移量反向补偿数据时钟,以抵消其相位偏移值,从而保持补偿后的时钟对数据采集的稳定性。
本发明针对能输出同步信号的源端设备如AD9653、FPGA等,通过使用源时钟对同步信号采样窗口进行测量,根据窗口中心位置的偏移获取时钟相位的偏移值,利用该偏移量反向补偿时钟相位,使输入数据信号相对时钟的相位偏移保持稳定,从而实现数据的稳定传输。
虽然结合附图描述了本发明的实施方式,但是专利所有者可以在所附权利要求的范围之内做出各种变形或修改,只要不超过本发明的权利要求所描述的保护范围,都应当在本发明的保护范围之内。
Claims (5)
1.一种基于源同步信号的时钟相位偏移自动补偿方法,其特征在于,包括:先测量同步信号采样窗口中心位置,利用该测量结果初始化和固化延时值C_org,每次FPGA数据接收板上电时,首先读取初始化延时值C_org,然后进行比特位对齐,再循环测量N次采样窗口中心位置,并求平均值C_new,根据平均值C_new和延时值C_org的偏差得出时钟相位偏移值diff=C_new-C_org,再用该偏移值补偿时钟相位偏移;
该方法具体包括以下步骤:
S1、读取初始化标志和初始化延时值C_org,若初始化标志为0,则进入步骤S2开始进行初始化,否则进入步骤S3载入初始值;
S2、初始化延时链延时值为i=MaxDelay/2,设置增量值为inc=1,进入步骤S4,MaxDelay为延时链最大延时时间;
S3、初始化延时链延时值为i=C_org,设置增量值为0,进入步骤S4;
S4、设置延时链延时值为i,进行位同步检测,若位同步检测成功,则进入步骤S6,否则进入步骤S5;
S5、判断位同步检测是否超时,若超时,则调整延时链延时值i=i+inc,并返回步骤S4重新进行位同步检测,若未超时,则进行一次比特滑动,并返回步骤S4重新进行位同步检测;
S6、设置延时链延时值从0至i递增,并检查位同步匹配结果,当出现位同步匹配时,记录该窗口左侧边沿Left,再进入步骤S7;
S7、设置延时链延时值从MaxDelay至i递减,并检查位同步匹配结果,当出现位同步匹配时,记录该窗口右侧边沿Right,再进入步骤S8;
S8、记录窗口中心位置a[j]=( Left+Right)/2,进行N次测量后,求取此次计算的窗口中心均值C_new=,再判断初始化标志,若初始化标志为0,则令C_org=C_new,初始化标志置1并固化进非易失性存储器,再返回步骤S6重新开始计算,若初始化标志为1,则进入步骤S9;
S9、计算同步信号采样口相位偏移量diff=C_new-C_org,并利用该偏移量反向补偿数据时钟。
2.根据权利要求1所述的基于源同步信号的时钟相位偏移自动补偿方法,其特征在于,若时钟相位偏移值diff为正,则将时钟管理器输出时钟CLK_adj与输入时钟CLK之间的延时值缩小时钟相位偏移值diff,若时钟相位偏移值diff为正的偏移值,则将CLK_adj与CLK之间的相位值扩大时钟相位偏移值diff。
3.根据权利要求1所述的基于源同步信号的时钟相位偏移自动补偿方法,其特征在于,所述步骤S1中是从非易失存储器中读取初始化标志和初始化延时值C_org。
4.根据权利要求1所述的基于源同步信号的时钟相位偏移自动补偿方法,其特征在于,所述步骤S2中的延时链最大延时时间MaxDelay为输入信号采样率周期值的2倍或以上,若输入数据率为单沿数据率,则延时链最大延时时间MaxDelay至少为输入时钟周期2倍,若输入数据为双沿数据率,则延时链最大延时时间MaxDelay至少为输入时钟信号的周期值。
5.根据权利要求1所述的基于源同步信号的时钟相位偏移自动补偿方法,其特征在于,所述步骤S5中采用串并转换模块进行一次比特滑动,该一次比特滑动为串并转换寄存器逻辑右移一位。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310164852.3A CN116032452B (zh) | 2023-02-27 | 2023-02-27 | 一种基于源同步信号的时钟相位偏移自动补偿方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310164852.3A CN116032452B (zh) | 2023-02-27 | 2023-02-27 | 一种基于源同步信号的时钟相位偏移自动补偿方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116032452A CN116032452A (zh) | 2023-04-28 |
CN116032452B true CN116032452B (zh) | 2023-06-30 |
Family
ID=86077728
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310164852.3A Active CN116032452B (zh) | 2023-02-27 | 2023-02-27 | 一种基于源同步信号的时钟相位偏移自动补偿方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116032452B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8237475B1 (en) * | 2008-10-08 | 2012-08-07 | Altera Corporation | Techniques for generating PVT compensated phase offset to improve accuracy of a locked loop |
CN106603454A (zh) * | 2016-11-23 | 2017-04-26 | 深圳市国电科技通信有限公司 | 一种gfsk数字双通道解调方法 |
CN112987042A (zh) * | 2021-05-13 | 2021-06-18 | 湖南跨线桥航天科技有限公司 | 一种导航信号快速失锁重捕获方法及系统 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002208879A (ja) * | 2001-01-05 | 2002-07-26 | Nec Microsystems Ltd | 同期タイミング補正回路および方法 |
US7050918B2 (en) * | 2002-10-07 | 2006-05-23 | Lecroy Corporation | Digital group delay compensator |
US7209525B2 (en) * | 2002-11-18 | 2007-04-24 | Agere Systems Inc. | Clock and data recovery with extended integration cycles |
US7529329B2 (en) * | 2004-08-10 | 2009-05-05 | Applied Micro Circuits Corporation | Circuit for adaptive sampling edge position control and a method therefor |
CN100518160C (zh) * | 2004-10-09 | 2009-07-22 | 北京中电华大电子设计有限责任公司 | Ofdm接收机的采样时钟频率偏差补偿方法与装置 |
US8462819B2 (en) * | 2010-01-06 | 2013-06-11 | Lsi Corporation | Adaptive clock recovery with step-delay pre-compensation |
US8693600B2 (en) * | 2010-02-09 | 2014-04-08 | Nec Corporation | Phase excursion/carrier wave frequency excursion compensation device and method |
CN102333370B (zh) * | 2011-08-31 | 2015-11-18 | 华南理工大学 | Ofdm系统中基于抽除/补偿机制的抽样时钟同步方法 |
US8929499B2 (en) * | 2012-09-29 | 2015-01-06 | Intel Corporation | System timing margin improvement of high speed I/O interconnect links by using fine training of phase interpolator |
CN105812303B (zh) * | 2016-03-15 | 2019-03-01 | 苏州卓智创芯电子科技有限公司 | 一种gfsk基带数字接收机及其基带同步及解调方法 |
CN108922570B (zh) * | 2018-07-13 | 2020-11-13 | 豪威科技(上海)有限公司 | 读dqs信号的相位偏移检测方法、训练方法、电路及系统 |
-
2023
- 2023-02-27 CN CN202310164852.3A patent/CN116032452B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8237475B1 (en) * | 2008-10-08 | 2012-08-07 | Altera Corporation | Techniques for generating PVT compensated phase offset to improve accuracy of a locked loop |
CN106603454A (zh) * | 2016-11-23 | 2017-04-26 | 深圳市国电科技通信有限公司 | 一种gfsk数字双通道解调方法 |
CN112987042A (zh) * | 2021-05-13 | 2021-06-18 | 湖南跨线桥航天科技有限公司 | 一种导航信号快速失锁重捕获方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN116032452A (zh) | 2023-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2451391C2 (ru) | Схемное устройство и способ измерения дрожания тактового сигнала | |
CN108922570B (zh) | 读dqs信号的相位偏移检测方法、训练方法、电路及系统 | |
CN102405678B (zh) | 一种低频时钟校准方法及装置 | |
CN102981551B (zh) | 一种实时时钟温度补偿系统及方法 | |
CN103117980B (zh) | 用于正交频分复用接收机的快速数字自动频率控制方法 | |
US6708298B2 (en) | Method for guaranteeing a minimum data strobe valid window and a minimum data valid window for DDR memory devices | |
US8542003B2 (en) | Test apparatus to test a data signal and a clock signal output from a device under test | |
CN101232363B (zh) | 相位调节功能评估方法,传输容限测量方法以及信息处理装置 | |
CN116032452B (zh) | 一种基于源同步信号的时钟相位偏移自动补偿方法 | |
CN101895491A (zh) | 消除频偏干扰的自适应信号检测方法 | |
US7167034B2 (en) | Arrangement for correcting the phase of a data sampling clock signal during a period of sampling data in a received signal | |
CN112820344B (zh) | 数据信号的裕量检测方法、装置及存储设备 | |
US20210242860A1 (en) | Cycle accurate skew adjust | |
US8804441B1 (en) | Methods and systems for detecting and correcting timing signal drift in memory systems | |
US20070204185A1 (en) | Data fetch circuit and control method thereof | |
CN113315492A (zh) | 一种针对高精度延时链的低开销精度校准电路及方法 | |
CN111262561B (zh) | 一种比较器的亚稳态检测电路 | |
US20080043782A1 (en) | Method and apparatus for checking the position of a receive window | |
WO2012009160A1 (en) | Methods and apparatus for determining a phase error in signals | |
CN110047552B (zh) | 一种存储器读取速度测量电路 | |
CN115834015B (zh) | 一种基于fpga的输入信号自适应时序对齐方法 | |
CN109167705B (zh) | 获取存储模块内部延时阶梯时间的方法及系统 | |
US7375561B2 (en) | Timing adjustment circuit and method thereof | |
CN113740717A (zh) | 一种时序单元保持时间的测量方法和测量电路 | |
CN109101691B (zh) | 一种双倍速率数据传输接口的数据采样方法 |
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 |