一种实现gPTP时间偏差快速收敛的方法技术

技术编号:39179032 阅读:9 留言:0更新日期:2023-10-27 08:26
本发明专利技术公开了一种实现gPTP时间偏差快速收敛的方法,将时钟调节的过程分为两个阶段:第一个阶段,首次调节时钟频率时计算稳态频率差,稳态频率差为主时钟和从时钟两个节点的时钟之间的初始频率差,在稳态频率差的基础上使用pi迭代算法调节时钟频率,直至时间偏差达到100纳秒;第二个阶段,当从时钟节点和主时钟节点时间偏差首次达到100纳秒开始,使用稳态频率差调节时钟频率;后续时钟调节,重新在稳态频率差的基础上使用pi迭代算法调节时钟频率。本发明专利技术方法运行gPTP可以在2秒内让在局域网里所有节点的时间偏差控制在100纳秒内。所有节点的时间偏差控制在100纳秒内。所有节点的时间偏差控制在100纳秒内。

【技术实现步骤摘要】
一种实现gPTP时间偏差快速收敛的方法


[0001]本专利技术涉及gPTP时间同步技术,尤其涉及一种实现gPTP时间偏差快速收敛的方法。

技术介绍

[0002]gPTP(Generalized Precision Time Protocol)是由IEEE Std 802.1AS标准定义的,gPTP的目的是确保所有局域网里的节点的时间完全一致,误差为纳秒级别。
[0003]实际使用中,当局域网内节点之间的时间相差比较大时,例如100S,所有节点时间偏差收敛到100纳秒内需要15秒以上。因为调节时钟频率时全程使用pi算法频率差调节频率,这种算法的特性是计算的结果是波动的,随着节点间的时间偏差变小需要调整的频率差幅度会慢慢减小,趋于稳定,但是节点之间的初始时间偏差较大的情况下,收敛达到纳秒级别会持续很长时间。
[0004]车载领域对局域网内节点时间偏差收敛时间要求是非常高的,很多上层业务都需要建立在时间同步的基础上运行,如果gPTP时间偏差收敛时间长会导致整体软件启动都非常慢。

技术实现思路

[0005]为解决现有技术中存在的不足,本专利技术的目的在于,提供一种实现gPTP时间偏差快速收敛的方法。
[0006]为实现本专利技术的目的,本专利技术所采用的技术方案是:
[0007]一种实现gPTP时间偏差快速收敛的方法,包括步骤:
[0008](1)首次调节时钟频率时,计算稳态频率差,在稳态频率差的基础上使用pi迭代算法调节时钟频率,直至时间偏差达到预设时间;
[0009](2)当从时钟节点和主时钟节点时间偏差首次达到预设时间开始,使用稳态频率差调节时钟频率;后续时钟调节,重新在稳态频率差的基础上使用pi迭代算法调节时钟频率。
[0010]进一步地,所述预设时间为100纳秒。
[0011]进一步地,步骤(1)中,稳态频率差driftFreq为主时钟和从时钟两个节点的时钟之间的初始频率差。
[0012]进一步地,稳态频率差driftFreq的计算步骤为:
[0013]1.首先计算传输延迟Pdelay:
[0014]Pdelay=((t4

t1)

(t3

t2))/2
[0015]2.计算从时钟t6时刻对应的主时钟的时间,t5_last是前一次sync消息发送的时间,CorrectionField是中间经过TSN switch设备的驻留时间:
[0016]Gm=t5+pdelay+CorrectionField
[0017]Gm_last=t5_last+pdelay+CorrectionField
[0018]3.计算主时钟和从时钟之间的时间偏移:
[0019]Offset=t6

Gm
[0020]4.计算主时钟和从时钟之间的时钟频率比率,t6_last是前一次sync消息接收的时间:
[0021]Ratio=(Gm

Gm_last)/(t6

t6_last)
[0022]5.计算主时钟和从时钟之间的时钟频率差:
[0023]driftFreq=(1

Ratio)*1e9
[0024]其中,t1代表pdelay_req消息的发送时间,t2代表pdelay_req消息的接收时间,t3代表pdelay_resp消息的发送时间,t4代表pdelay_resp消息的接收时间;t5代表sync消息的发送时间,t6代表sync消息的接收时间。
[0025]进一步地,步骤(1)中,pi迭代算法计算公式为:
[0026][0027]调节时钟频率adjFreq计算公式为:
[0028]adjFreq=adjFreq+piFunc(t) adjfreq的初始值是0
[0029]其中,unlocked表示首次调节时钟频率,或当前主从时钟的时间偏移超过1ms,需要同时调整时钟的相位和频率;locked表示当前时间偏移小于1ms,只需要调整频率。
[0030]进一步地,步骤(2)中,使用稳态频率差调节时钟频率,只需将频率调节范围作为入参传入系统调用函数clock_adjtime,由系统函数内部实际调节时钟。
[0031]进一步地,步骤(2)中,pi迭代算法计算公式如下:
[0032][0033]调节时钟频率adjFreq计算公式为:
[0034]adjFreq=adjFreq+piFunc(t),adjfreq的初始值是0。
[0035]进一步地,所述方法可应用于点对点直连的拓扑的时钟频率调节。
[0036]进一步地,所述方法可应用于端节点中间有TSN Switch相连的拓扑的时钟频率调节。
[0037]本专利技术的有益效果在于,与现有技术相比,本专利技术将时钟调节的过程分为两个阶段,第一个阶段,在稳态频率差的基础上使用pi迭代算法调节时钟频率,直至时间偏差达到100纳秒;第二个阶段,当时间偏差首次达到100纳秒开始,使用稳态频率差调节时钟频率;后续时钟调节,重新在稳态频率差的基础上使用pi迭代算法调节时钟频率。本专利技术方法运行gPTP可以在2秒内让在局域网里所有节点的时间偏差控制在100纳秒内。
附图说明
[0038]图1是本专利技术所述的实现gPTP时间偏差快速收敛的方法流程图;
[0039]图2是稳态频率差计算示意图;
[0040]图3是Pi算法调节器结构图;
[0041]图4是点对点直连的拓扑示意图;
[0042]图5是端节点中间有TSN Switch相连的拓扑示意图;
[0043]图6是本专利技术与现有技术的时钟调节方案对比效果图。
具体实施方式
[0044]下面结合附图和实施例对本专利技术的技术方案作进一步的说明。以下实施例仅用于更加清楚地说明本专利技术的技术方案,而不能以此来限制本申请的保护范围。
[0045]如图1所示,本专利技术所述的实现gPTP时间偏差快速收敛的方法,将时钟调节的过程分为两个阶段,时钟调节本身有相位调节和频率调节两种,一般在不同的条件下会考虑结合使用或者分开使用,本专利技术优化的是频率调节中频率调节范围计算的方式,也会结合使用相位调节的方式。
[0046]第一个阶段,从时钟(Slave)节点首次调节时钟频率时,计算稳态频率差,在稳态频率差的基础上使用pi(Proportional

lntegral,比例积分)迭代算法调节时钟频率adjFreq,直至时间偏差达到预设时间,例如100纳秒;
[0047]稳态频率差driftFreq为主时钟和从时钟两个节点的时钟之间的初始频率差,即首次调节从时钟之前,两个节点的时钟频率差。
[0048]如图2所示,图中用master代表主时钟节点,用slave代表从时钟节点,t1代表pdelay_req消息的发送时间,t2代表pdelay_req本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种实现gPTP时间偏差快速收敛的方法,其特征在于,包括步骤:(1)首次调节时钟频率时,计算稳态频率差,在稳态频率差的基础上使用pi迭代算法调节时钟频率,直至时间偏差达到预设时间;(2)当从时钟节点和主时钟节点时间偏差首次达到预设时间开始,使用稳态频率差调节时钟频率;后续时钟调节,重新在稳态频率差的基础上使用pi迭代算法调节时钟频率。2.根据权利要求1所述的实现gPTP时间偏差快速收敛的方法,其特征在于,所述预设时间为100纳秒。3.根据权利要求1所述的实现gPTP时间偏差快速收敛的方法,其特征在于,步骤(1)中,稳态频率差driftFreq为主时钟和从时钟两个节点的时钟之间的初始频率差。4.根据权利要求3所述的实现gPTP时间偏差快速收敛的方法,其特征在于,稳态频率差driftFreq的计算步骤为:首先计算传输延迟Pdelay:Pdelay=((t4

t1)

(t3

t2))/2计算从时钟t6时刻对应的主时钟的时间,t5_last是前一次sync消息发送的时间,CorrectionField是中间经过TSN switch设备的驻留时间:Gm=t5+pdelay+CorrectionFieldGm_last=t5_last+pdelay+CorrectionField计算主时钟和从时钟之间的时间偏移:Offset=t6

Gm计算主时钟和从时钟之间的时钟频率比率,t6_last是前一次sync消息接收的时间:Ratio=(Gm

Gm_last)/(t6

t6_last)计算主时钟和从...

【专利技术属性】
技术研发人员:戴然陈诚张旸
申请(专利权)人:奥特酷智能科技南京有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1