CN102098155B - 基于ptp协议实现亚微秒级同步精度的方法 - Google Patents
基于ptp协议实现亚微秒级同步精度的方法 Download PDFInfo
- Publication number
- CN102098155B CN102098155B CN2011100666894A CN201110066689A CN102098155B CN 102098155 B CN102098155 B CN 102098155B CN 2011100666894 A CN2011100666894 A CN 2011100666894A CN 201110066689 A CN201110066689 A CN 201110066689A CN 102098155 B CN102098155 B CN 102098155B
- Authority
- CN
- China
- Prior art keywords
- clock
- time
- message
- delay
- ethernet transceiver
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明涉及一种基于PTP协议实现亚微秒级同步精度的方法,属于通信技术领域,为了在获得高精度同步效率的同时,节约硬件投入的成本,所述方法包括:在主钟发出同步消息之前,将以太网收发器的时钟与时间源的同步;通过延迟请求信息包延时测量机制或者对等延迟信息包延时测量机制来测量得到链路的平均路径时延;对链路进行异步修正,实现亚微秒级的同步精度。该方法采用DP83640以太网收发器,可以准确地获得网络报文时间戳,在AT91RM9200平台上实现PTP协议,能实现亚微秒级的同步精度,经测试,可达到100ns的同步精度,此外整个系统成本低廉,并具备良好的开放性以及扩展性,容易实现。
Description
技术领域
本发明涉及通信技术领域,具体涉及一种基于PTP协议实现亚微秒级同步精度的方法。
背景技术
IP化是未来网络业务的发展趋势,以太网以其优越的性价比、广泛的应用及完善的产品支持,成为以IP为基础的承载网的主要发展方向。在部署电信级以太网时,如何解决时钟同步问题是一个要考虑的方面。目前,分组网络的同步需求有两个方面:一、分组网络需要可以承载TDM业务,并提供TDM业务时钟恢复的机制,使得TDM业务在穿越分组网络后仍满足一定的性能指标;二、分组网络需要可以像TDM网络一样,提供高精度的网络参考时钟,以满足网络节点或终端的同步需求。
为了满足上述同步需求,同步以太网(SyncE)就是最新的标准解决方法。在SyncE中,采用与SONET(同步光纤网络)/SDH(同步数字系列)相同的方式,通过高品质、可跟踪的一级基准时钟信号来同步其位时钟。2006年,国际电信联盟在其G..8261标准中提供了SyncE概念,2007年,在G.8262标准中对SyncE的性能要求进行了标准化,规定了同步以太网网络设备中使用的时钟的最低性能要求。此外,在2002年,IEEE发布了IEEE 1588标准,该标准定义了一种精确时间同步协议(PTP,Precision Time Protocol),并于2005年又制定了新版本的IEEE 1588标准,即IEEE1588v2标准,目前,基于IEEE 1588标准的同步校准技术正受到各方面的关注。
然而,大多数情况下,基于NTP协议的同步系统仅能达到毫秒级的精度,PTP协议在理论上可以达到亚微秒级,但实现起来比较难,难点在于网络报文收发的时间戳无法准确的得到,而通过CPU(中央处理器)获取时间戳误差又太大,偏差能达到微秒级,这就无法做到亚微秒级的精度
而在芯片级实现PTP产品的现有的技术中,包括IMSYS公司采用芯片级的实现方案,将处理器核、收发报文时间戳处理外设装备等集成到一起,来构成硬件系统,然后集成操作系统,实现TCP/IP协议栈以及PTP协议栈,进而形成了整个同步系统,据介绍,该系统能够达到200ns级别的同步精度,尽管其同步精度效果良好,但由于实现该系统的成本非常高之高,而且其系统封闭性过强,并非通用设备,因而难以在更大范围内流通。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是:如何克服现有技术中无法兼得同步效果与价格成本的问题,如何在获得高精度同步效率的同时,节约硬件投入的成本。
(二)技术方案
为了解决上述技术问题,本发明提供一种基于PTP协议实现亚微秒级同步精度的方法,所述方法基于亚微秒级同步系统来实施,所述亚微秒级同步系统包括时间源、以太网收发器、微处理器以及FPGA单元;所述时间源用于提供秒脉冲和时间报文信息;所述以太网收发器用于产生、传输以及接收时间戳,并生成秒脉冲信号;所述FPGA单元用于对以太网报文进行过滤,过滤掉与PTP协议无关的时间报文信息;所述微处理器用于与卫星时钟同步,执行PTP协议栈;
所述方法具体通过如下步骤来实现亚微秒级的同步精度:
S1:在主钟发出同步消息之前,主钟将以太网收发器的时钟与时间源的时钟同步;
S2:对以太网报文进行过滤,过滤掉与PTP协议无关的时间报文信息;
S3:根据延迟请求信息包延时测量机制或者对等延迟信息包延时测量机制来计算得到链路的平均路径时延;
S4:根据所述链路的平均路径时延计算得到主钟和从钟之间的时钟偏差;
S5:根据所述时钟偏差对链路进行异步修正,实现亚微秒级的同步精度。
所述以太网收发器为DP83640精密时间协议收发器。
所述微处理器为基于ARM9的AT91RM9200微处理器。
所述步骤S1中将以太网收发器的时钟与时间源的时钟同步的过程具体包括:根据时间源的秒脉冲的间隔来调整以太网收发器的频率,再根据秒脉冲与以太网收发器的脉冲差值调整其相位;
所述步骤S2具体通过所述FPGA单元在物理层芯片的输出流中,搜索特定的IP、端口号、MAC地址以及1588报文类型,进而过滤掉不符合IEEE1588标准的时间报文信息。
所述步骤S3在通过延迟请求信息包延时测量机制来测量得到链路的平均路径时延的情况下,具体包括:
S301:主钟首先发出同步报文,此时以太网收发器获取该时刻的第一硬件时间戳t1;然后从钟获取所述同步信息,此时以太网收发器获取该时刻的第二硬件时间戳t2;从钟在获取所述同步报文之后,发送延迟请求报文时,以太网收发器获取该时刻的第三硬件时间戳t3;主钟获取所述延迟请求报文时,以太网收发器获取该时刻的第四硬件时间戳t4;
S302:计算第二硬件时间戳t2与第一硬件时间戳t1之间的第一时间差tms;
S303:计算第四硬件时间戳t4与第三硬件时间戳t3之间的第二时间差tsm;
S304:根据所述第一时间差tms以及第二时间差tsm计算得到链路的平均路径时延。
所述步骤S302中,首先根据非对称异步机制计算出主钟到从钟方向传输的非对称时延,并从第二硬件时间戳t2中扣除所述非对称时延,然后再计算扣除了所述非对称时延之后的第二硬件时间戳t2与所述第一硬件时间戳t1之间的第一时间差tms;
所述步骤S303中,首先根据非对称异步机制计算出从钟到主钟方向传输的非对称时延,并从第四硬件时间戳t4中扣除所述非对称时延,然后再计算扣除了所述非对称时延之后的第四硬件时间戳t4与所述第三硬件时间戳t3之间的第二时间差tsm;
所述步骤S304中,取所述第一时间差tms与所述第二时间差tsm的平均值,即为链路的平均路径时延。
所述步骤S4中,通过从所述第一时间差tms减去所述平均路径时延,即得到所述主钟和从钟之间的时钟偏差。
所述步骤S3在通过对等延迟信息包延时测量机制来测量得到链路的平均路径时延的情况下,具体包括:
S301’:第一节点首先发出对等延迟请求报文,此时以太网收发器获取该时刻的第一硬件时间戳t1’;然后第二节点获取所述对等延迟请求报文,此时以太网收发器获取该时刻的第二硬件时间戳t2’;第二节点在获取所述对等延迟请求报文之后,发送对等延迟请求响应报文时,以太网收发器获取该时刻的第三硬件时间戳t3’;第一节点获取所述对等延迟请求响应报文时,以太网收发器获取该时刻的第四硬件时间戳t4’;
S302’:计算第二硬件时间戳t2’与第一硬件时间戳t1’之间的第一时间差tms’;
S303’:计算第四硬件时间戳t4’与第三硬件时间戳t3’之间的第二时间差tsm’;
S304’:根据所述第一时间差tms’以及第二时间差tsm’计算得到链路的平均路径时延。
所述步骤S304’中,取所述第一时间差tms’与所述第二时间差tsm’的平均值,即为链路的平均路径时延。
在所述S301’之前,主钟预先发出同步报文,此时以太网收发器获取该时刻的同步报文发送时间戳t1;然后从钟获取所述同步信息,此时以太网收发器获取该时刻的同步报文接收时间戳t2;并根据非对称异步机制计算出主钟到从钟方向传输的非对称时延,从同步报文接收戳t2中扣除所述非对称时延,然后再计算扣除了所述非对称时延之后的同步报文接收时间戳t2与所述同步报文发送时间戳t1之间的同步报文时间差tms;
所述步骤S4中,通过从所述同步报文时间差tms中减去所述平均路径时延,即得到所述主钟和从钟之间的时钟偏差。
所述非对称异步机制具体包括:
在进行E2E时钟的异步修正时,仅将报文从E2E时钟的一个端口进入的时间戳到从另一个端口发出的时间戳的差值作为修正数据来进行累加计算得到所述非对称时延;
在进行P2P时钟的异步修正时,除了报文从E2E时钟的一个端口进入的时间戳到从另一个端口发出的时间戳的差值作为修正数据以外,还将报文进入时钟入口时的链路延迟也附加到修正数据中来进行累加计算得到所述非对称时延。
(三)有益效果
本发明技术方案中采用DP83640以太网收发器,因而可以准确的获得网络报文时间戳,并在AT91RM9200平台上实现PTP协议,就能实现亚微秒级的同步精度,经过测试,可以达到100ns的同步精度。此外,整个硬件系统成本低廉,并且具备良好的开放性以及扩展性,容易实现。
附图说明
图1为本发明技术方案所涉及的亚微秒级同步系统的模块示意图;
图2为本发明技术方案所涉及的基于PTP协议实现亚微秒级同步精度的方法的流程图;
图3为本发明技术方案所涉及的延迟请求信息包延时测量机制的时序示意图;
图4为本发明技术方案所涉及的对等延迟信息包延时测量机制的时序示意图;
图5为本发明技术方案所涉及的进行E2E时钟的异步修正的时序示意图;
图6为本发明技术方案所涉及的进行P2P时钟的异步修正的时序示意图。
具体实施方式
为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
为了克服现有技术中无法兼得同步效果与价格成本的问题,在获得高精度同步效率同时,节约硬件投入的成本,本发明技术方案提供了一种基于PTP协议实现亚微秒级同步精度的方法,所述方法基于亚微秒级同步系统来实施,如图1所示,所述亚微秒级同步系统包括时间源、微处理器、FPGA单元、以太网收发器及RJ45接口;所述时间源由北斗时间源或GPS提供,用于提供秒脉冲和时间报文信息;所述微处理器采用AT91RM9200,是一个ARM处理器,用于与卫星时钟同步,运行uCOS-II、LWIP、PTP协议栈,控制以太网收发器,调整其频率和相位;所述FPGA单元主要用于进行以太网络报文过滤,过滤掉不符合IEEE1588标准、与PTP无关的时间报文信息,减少ARM处理器的处理负担,避免影响处理实时的PTP报文;所述以太网收发器采用DP83640,主要用于产生、传输以及接收时间戳,并生成秒脉冲(PPS_OUT)信号,GPIO上同步事件的触发和捕获,以及进行时钟调整。
如图2所示,所述方法具体通过如下步骤来实现亚微秒级的同步精度:
S1:在主钟(Master time)发出同步消息Sync之前,主钟将以太网收发器的时钟与时间源的时钟同步;
S2:对以太网报文进行过滤,过滤掉与PTP协议无关的时间报文信息;
S3:根据延迟请求信息包延时测量机制或者对等延迟信息包延时测量机制来计算得到链路的平均路径时延;
S4:根据所述链路的平均路径时延计算得到主钟和从钟之间的时钟偏差;
S5:根据所述时钟偏差对链路进行异步修正,实现亚微秒级的同步精度。
所述以太网收发器为DP83640精密时间协议收发器。
所述微处理器为基于ARM9的AT91RM9200微处理器。
所述步骤S1中将DP83640以太网收发器的时钟与时间源的时钟同步的过程具体包括:根据时间源的秒脉冲的间隔来调整DP83640以太网收发器的频率,再根据秒脉冲与DP83640以太网收发器的脉冲差值调整其相位;
所述步骤S2具体通过所述FPGA单元在物理层芯片的输出流中,搜索特定的IP、端口号、MAC地址以及1588报文类型,进而过滤掉不符合IEEE1588标准的时间报文信息。
该部分内容具体包括:在主钟发出同步消息前,应将DP38640的时钟同步于系统的时间源。时间源提供的一般是北斗时间源或是GPS的秒脉冲和时间报文信息,主钟根据秒脉冲的间隔来调整DP83640的频率,然后再根据秒脉冲和DP83640的脉冲差值调整相位,以达到DP83640与时间源同步的目的。
并且,本发明采用了低成本的AT91RM9200芯片,主频为180MHz,为了能够支持更多的从钟设备,增强处理能力,并采用了FPGA硬件过滤报文的方式,过滤的基本思想是:通过FPGA单元在物理层芯片的输出流中,搜索特定的IP,端口号,MAC地址以及1588报文类型,进而过滤掉不符合IEEE1588标准的时间报文信息;这些字符串见下表1:
表1.FPGA单元过滤报文方式中所搜索的字符串
字符串 | 备注 |
224.0.0.129 | IP地址 |
224.0.0.107 | IP地址 |
319/320 | 端口号 |
01-1B-19-00-00-00 | MAC地址 |
01-80-C2-00-00-0E | MAC地址 |
0x88F7 | 报文类型 |
接下来,计算链路的平均路径时延的过程可以分两种情况:
(一)如图3所示,可以通过延迟请求信息包Delay_Req延时测量机制来测量得到链路的平均路径时延,Delay_Req延时测量机制是一种用来测量链路延时的方法,通过发送同步报文Sync、延迟请求报文Delay_Req、延迟响应报文Delay_Resp、和跟随报文Follow_up来测量链路延时,其中,跟随报文Follow_up只有当主钟为双步时钟TwoStepsClock时才会发送:
在通过延迟请求信息包延时测量机制来测量得到链路的平均路径时延的情况下,所述步骤S3的过程具体包括:
S301:主钟(Master time)首先发出同步报文Sync,此时DP83640以太网收发器获取该时刻的第一硬件时间戳(Timestamps)t1;然后从钟(Slave time)获取所述同步报文Sync,此时DP83640以太网收发器获取该时刻的第二硬件时间戳t2;若主钟是双步时钟,第一硬件时间戳t1通过跟随报文Follow_up传递给从钟;从钟在获取所述同步报文Sync之后,发送延迟请求报文Delay_Req时,DP83640以太网收发器获取该时刻的第三硬件时间戳t3;主钟获取所述延迟请求报文Delay_Req时,DP83640以太网收发器获取该时刻的第四硬件时间戳t4,然后发出延迟响应报文Delay_Resp,将第四硬件时间戳t4传回到从钟;
从钟获得了上述4个时间戳,就可以计算平均路径延迟和时钟偏差了,在理想情况下,后述过程为:
计算第二硬件时间戳t2与第一硬件时间戳t1之间的第一时间差tms=t2-t1;
计算第四硬件时间戳t4与第三硬件时间戳t3之间的第二时间差tsm=t4-t3;
根据所述第一时间差tms以及第二时间差tsm计算得到链路的平均路径时延<meanPathDelay>=[(t2-t1)+(t4-t3)]/2;
而时钟偏差<offsetFromMaster>=(t2-t1)-<meanPathDelay>。
但是以上计算方式是基于往返传输路径是相同的,但实际应用中,由于要经过交换机和路由器等设备,传输路径是不相同的,用上述公式就会带来很大的误差,需要校正。在本发明中的校正过程如下,根据非对称异步机制计算同步报文Sync的非对称延迟correctedMasterEventTimestamp和延迟请求报文Delay_Req的非对称延迟correctedSlaveEventTimestamp,然后分别从时间差中扣除,由此,在实际情况中,计算链路的平均路径时延的过程应该为如下步骤:
S302:计算第二硬件时间戳t2与第一硬件时间戳t1之间的第一时间差tms=t2-t1-correctedMasterEventTimestamp;
S303:计算第四硬件时间戳t4与第三硬件时间戳t3之间的第二时间差tsm=t4-t3-correctedSlaveEventTimestamp;
S304:根据所述第一时间差tms以及第二时间差tsm计算得到链路的平均路径时延:
<meanPathDelay>=[(t2-t1-correctedMasterEventTimestamp)+(t4-t3-correctedSlaveEventTimestamp)]/2;
以及,时钟偏差:
<offsetFromMaster>=(t2-t1-correctedMasterEventTimestamp)-<meanPathDelay>。
如图5及6所示,是计算非对称延迟校正域的方法,其原理是计算报文进出端口的时间差,把这个差值放入报文中。对于主钟到从钟的异步偏差值,会放入同步报文Sync的非对称延迟校正域中,从钟到主钟的异步偏差值,会放入延迟请求报文Delay_Req的非对称延迟校正域中。
具体内容包括:
上述步骤S302中根据非对称异步机制计算出主钟到从钟方向传输的非对称延迟correctedMasterEventTimestamp,从第二硬件时间戳t2中扣除所述非对称延迟,然后再计算扣除了所述非对称延迟之后的第二硬件时间戳t2与所述第一硬件时间戳t1之间的第一时间差tms。
所述步骤S303中,根据非对称异步机制计算出从钟到主钟方向传输的非对称延迟correctedSlaveEventTimestamp,并从第四硬件时间戳t4中扣除所述非对称延迟,然后再计算扣除了所述非对称延迟之后的第四硬件时间戳t4与所述第三硬件时间戳t3之间的第二时间差tsm。
所述步骤S304中,取所述第一时间差tms与所述第二时间差tsm的平均值,即为链路的平均路径延迟meanPathDelay。
以上过程中的4个时间戳t1、t2、t3、t4都是通过DP83640获取的硬件时间戳,准确度极高,同时依靠非对称异步机制计算出了correctedMasterEventTimestamp和correctedSlaveEventTimestamp主到从、从到主两个方向的非对称时延,在主从钟时间差中去除这部分非对称时延,就可以满足主到从,从到主两个方向传输线路对称的假设,计算出平均路径时延meanPathDelay。
接下来,所述步骤S4中,通过从所述第一时间差tms减去所述平均路径时延,即得到所述主钟和从钟之间的时钟偏差。
(二)如图4所示,还可以通过对等延迟信息包Peer_Delay延时测量机制来测量得到链路的平均路径时延,Peer_Delay延时测量机制测量线路延时独立于Sync报文机制,通过发送对端延迟请求报文Pdelay_Req和对端延迟响应报文Pdelay_Resp和对端延迟响应跟随报文Pdelay_resp_followup来测量链路延时。通信双方都会发送这些报文,因此双方都能获知链路延时,因此该机制被称为对等延时测量机制。
在通过对等延迟信息包延时测量机制来测量得到链路的平均路径时延的情况下,所述步骤S3的过程具体包括:
S301’:节点A首先发出对等延迟请求报文Pdelay_Req,此时DP83640以太网收发器获取该时刻的第一硬件时间戳t1’;然后节点B获取所述对等延迟请求报文Pdelay_Req,此时DP83640以太网收发器获取该时刻的第二硬件时间戳t2’;节点B在获取所述对等延迟请求报文Pdelay_Req之后,发送对等延迟请求响应报文Pdelay_Resp时,DP83640以太网收发器获取该时刻的第三硬件时间戳t3’;节点A获取所述对等延迟请求响应报文Pdelay_Resp时,DP83640以太网收发器获取该时刻的第四硬件时间戳t4’;同时,节点B要将发送Pdelay_Resp的时间戳t3’通过对端延迟响应跟随报文Pdelay_Resp_Followup发给节点A。
和Delay_Req机制类似,其平均路径延迟表达式为:
<meanPathDelay>=[(t2’-t1’)+(t4’-t3’)]/2;
注意上述公式和Delay_Req机制中的公式虽然形式类似,但意义不同,这里仅仅是两个相邻节点A与B之间的路径延迟。要计算主从钟之间的时钟偏差,还需要同步报文Sync的传输时间戳t1和接收时间戳t2。因此,在所述S301’之前,主钟预先发出同步报文Sync,此时以太网收发器获取该时刻的同步报文发送时间戳t1;然后从钟获取所述同步信息Sync,此时以太网收发器获取该时刻的同步报文接收时间戳t2;并根据非对称异步机制计算出主钟到从钟方向传输的非对称时延,从同步报文接收戳t2中扣除所述非对称时延,然后再计算扣除了所述非对称时延之后的同步报文接收时间戳t2与所述同步报文发送时间戳t1之间的同步报文时间差tms。
在本发明中,当计算出平均路径延迟后,就可以计算主从时钟之间的偏差,表达式如下:
时钟偏差:offsetFromaMaster=(t2-t1-correctedMasterEventTimestamp)-meanPathDelay
根据offsetFromaMaster来调整从钟,就达到了主从钟同步的目的。
具体内容如下:
S302’:计算第二硬件时间戳t2’与第一硬件时间戳t1’之间的第一时间差tms’;
S303’:计算第四硬件时间戳t4’三硬件时间戳t3’之间的第二时间差tsm’;
S304’:根据所述第一时间差tms’以及第二时间差tsm’计算得到链路的平均路径时延。
所述步骤S304’中,取所述第一时间差tms’与所述第二时间差tsm’的平均值,即为链路的平均路径时延。
接下来,所述步骤S4中,通过从所述同步报文时间差tms中减去所述平均路径时延,即得到所述主钟和从钟之间的时钟偏差。
关于上述内容中提及的计算非对称时延的过程所依据的非对称异步机制,具体包括:
(1)在进行E2E(end-to-end,端对端)时钟的异步修正时,仅将报文从E2E时钟的一个端口进入的时间戳到从另一个端口发出的时间戳的差值作为修正数据来进行累加计算得到所述非对称时延。
具体而言,如图5所示,入口时间戳Ingress timestamp为同步报文Sync或延迟请求报文Delay_Req进入E2E时钟入口的时间戳,而出口时间戳Engress timestamp为同步报文Sync或延迟请求报文Delay_Req离开E2E时钟出口的时间戳,即:
非对称延迟correctionField=correctionField+(Engress timestamp-Ingress timestamp)
上述非对称延迟correctionField是包含在报文中的一个校正域,占8个字节,其意义是在报文从一个端口进入的时间Ingress timestamp到从另一个端口发出的时间Engress timestamp的差值,这个差值是不断累加的,经过一个交换机或路由器,就会累加。
(2)在进行P2P(peer-to-peer,对等式)时钟的异步修正时,除了报文从E2E时钟的一个端口进入的时间戳到从另一个端口发出的时间戳的差值作为修正数据以外,还将报文进入时钟入口时的链路延迟也附加到修正数据中来进行累加计算得到所述非对称时延。
具体而言,如图6所示,入口时间戳Ingress timestamp为同步报文Sync进入P2P时钟入口的时间戳,而出口时间戳Engress timestamp为同步报文Sync离开P2P时钟出口时的时间戳;对于Link delay oningress port(进入端口前的链路延迟),则为消息入口一边的链路时延;
由此,可以得到:
非对称延迟correctionField=correctionField+(Engress timestamp-Ingress timestamp)+Link delay on ingress port
在P2P机制中,correctionField除了包括进出端口的时间差值,还包括进入端口前的链路延迟Link delay on ingress port。
综上所述,本发明技术方案提出并实现了采用ARM和DP83640方案来完成1588PTP普通时钟,相对于芯片级的实现方案,功能上容易扩充,性能也优于芯片级方案,且成本低廉。通过该技术方案,用户可以非常方便的进行二次开发,举例来说,用户希望在报文接收后增加确认消息,在确认消息内将延时和偏移传到第三方,然后由第三方用图形显示。同时,采用DP83640获取硬件时标的方式,其效果也是非常显著的,主从钟报文经过交换机E2E和P2P两种方式对时,能够达到100ns级别的精度,这是经过实验测试得到的数据,标准在理论上能达到小于1微秒的精度,而在标准的基础上增加不对称延迟校正后还能得到更好的结果。并且,根据图1的系统结构图中可以看出,本发明结构简单,环节少,容易实现,且相对于芯片级的实现,成本相当低,因此,本发明技术方案采用DP83640来获取硬件时标,相对于通常所用的软件时标,精度大为提高,能够从毫秒级别,提高到亚微妙级别。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (8)
1.一种基于PTP协议实现亚微秒级同步精度的方法,其特征在于,所述方法基于亚微秒级同步系统来实施,所述亚微秒级同步系统包括时间源、以太网收发器、微处理器以及FPGA单元;所述时间源用于提供秒脉冲和时间报文信息;所述以太网收发器用于产生、传输以及接收时间戳,并生成秒脉冲信号;所述FPGA单元用于对以太网报文进行过滤,过滤掉与PTP协议无关的时间报文信息;所述微处理器用于与卫星时钟同步,执行PTP协议栈;
所述方法具体通过如下步骤来实现亚微秒级的同步精度:
S1:在主钟发出同步消息之前,主钟将以太网收发器的时钟与时间源的时钟同步;
S2:对以太网报文进行过滤,过滤掉与PTP协议无关的时间报文信息;
S3:根据延迟请求信息包延时测量机制来计算得到链路的平均路径时延;
S4:根据所述链路的平均路径时延计算得到主钟和从钟之间的时钟偏差;
S5:根据所述时钟偏差对链路进行异步修正,实现亚微秒级的同步精度;
所述步骤S3在通过延迟请求信息包延时测量机制来测量得到链路的平均路径时延的情况下,具体包括:
S301:主钟首先发出同步报文,此时以太网收发器获取该时刻的第一硬件时间戳t1;然后从钟获取所述同步报文,此时以太网收发器获取该时刻的第二硬件时间戳t2;从钟在获取所述同步报文之后,发送延迟请求报文时,以太网收发器获取该时刻的第三硬件时间戳t3;主钟获取所述延迟请求报文时,以太网收发器获取该时刻的第四硬件时间戳t4;
S302:计算第二硬件时间戳t2与第一硬件时间戳t1之间的第一时间差tms;
S303:计算第四硬件时间戳t4与第三硬件时间戳t3之间的第二时间差tsm;
S304:根据所述第一时间差tms以及第二时间差tsm计算得到链路的平均路径时延;
所述步骤S302中,首先根据非对称异步机制计算出主钟到从钟方向传输的非对称时延,并从第二硬件时间戳t2中扣除所述非对称时延,然后再计算扣除了所述非对称时延之后的第二硬件时间戳t2与所述第一硬件时间戳t1之间的第一时间差tms;
所述步骤S303中,首先根据非对称异步机制计算出从钟到主钟方向传输的非对称时延,并从第四硬件时间戳t4中扣除所述从钟到主钟方向传输的非对称时延,然后再计算扣除了所述从钟到主钟方向传输的非对称时延之后的第四硬件时间戳t4与所述第三硬件时间戳t3之间的第二时间差tsm;
所述步骤S304中,取所述第一时间差tms与所述第二时间差tsm的平均值,即为链路的平均路径时延;
所述非对称异步机制具体包括:
在进行E2E时钟的异步修正时,仅将报文从E2E时钟的一个端口进入的时间戳到从另一个端口发出的时间戳的差值作为修正数据来进行累加计算得到非对称时延;
在进行P2P时钟的异步修正时,除了报文从E2E时钟的一个端口进入的时间戳到从另一个端口发出的时间戳的差值作为修正数据以外,还将报文进入时钟入口时的链路延迟也附加到修正数据中来进行累加计算得到非对称时延。
2.如权利要求1所述的基于PTP协议实现亚微秒级同步精度的方法,其特征在于,所述以太网收发器为DP83640精密时间协议收发器;
所述微处理器为基于ARM9的AT91RM9200微处理器。
3.如权利要求1所述的基于PTP协议实现亚微秒级同步精度的方法,其特征在于,所述步骤S1中将以太网收发器的时钟与时间源的时钟同步的过程具体包括:根据时间源的秒脉冲的间隔来调整以太网收发器的频率,再根据秒脉冲与以太网收发器的脉冲差值调整以太网收发器的相位;
所述步骤S2具体通过所述FPGA单元在物理层芯片的输出流中,搜索特定的IP、端口号、MAC地址以及IEEE1588报文类型,进而过滤掉不符合IEEE1588标准的时间报文信息。
4.如权利要求1所述的基于PTP协议实现亚微秒级同步精度的方法,其特征在于,所述步骤S4中,通过从所述第一时间差tms减去所述平均路径时延,即得到所述主钟和从钟之间的时钟偏差。
5.一种基于PTP协议实现亚微秒级同步精度的方法,其特征在于,所述方法基于亚微秒级同步系统来实施,所述亚微秒级同步系统包括时间源、以太网收发器、微处理器以及FPGA单元;所述时间源用于提供秒脉冲和时间报文信息;所述以太网收发器用于产生、传输以及接收时间戳,并生成秒脉冲信号;所述FPGA单元用于对以太网报文进行过滤,过滤掉与PTP协议无关的时间报文信息;所述微处理器用于与卫星时钟同步,执行PTP协议栈;
所述方法具体通过如下步骤来实现亚微秒级的同步精度:
S1:在主钟发出同步消息之前,主钟将以太网收发器的时钟与时间源的时钟同步;
S2:对以太网报文进行过滤,过滤掉与PTP协议无关的时间报文信息;
S3:根据对等延迟信息包延时测量机制来计算得到链路的平均路径时延;
S4:根据所述链路的平均路径时延计算得到主钟和从钟之间的时钟偏差;
S5:根据所述时钟偏差对链路进行异步修正,实现亚微秒级的同步精度;
所述步骤S3在通过对等延迟信息包延时测量机制来测量得到链路的平均路径时延的情况下,具体包括:
S301’:第一节点首先发出对等延迟请求报文,此时以太网收发器获取该时刻的第一硬件时间戳t1’;然后第二节点获取所述对等延迟请求报文,此时以太网收发器获取该时刻的第二硬件时间戳t2’;第二节点在获取所述对等延迟请求报文之后,发送对等延迟请求响应报文时,以太网收发器获取该时刻的第三硬件时间戳t3’;第一节点获取所述对等延迟请求响应报文时,以太网收发器获取该时刻的第四硬件时间戳t4’;
S302’:计算第二硬件时间戳t2’与第一硬件时间戳t1’之间的第一时间差tms’;
S303’:计算第四硬件时间戳t4’与第三硬件时间戳t3’之间的第二时间差tsm’;
S304’:根据所述第一时间差tms’以及第二时间差tsm’计算得到链路的平均路径时延;
在所述S301’之前,主钟预先发出同步报文,此时以太网收发器获取该时刻的同步报文发送时间戳t1;然后从钟获取所述同步报文,此时以太网收发器获取该时刻的同步报文接收时间戳t2;并根据非对称异步机制计算出主钟到从钟方向传输的非对称时延,从同步报文接收戳t2中扣除所述非对称时延,然后再计算扣除了所述非对称时延之后的同步报文接收时间戳t2与所述同步报文发送时间戳t1之间的同步报文时间差tms;
所述步骤S4中,通过从所述同步报文时间差tms中减去所述平均路径时延,即得到所述主钟和从钟之间的时钟偏差;
所述非对称异步机制具体包括:
在进行E2E时钟的异步修正时,仅将报文从E2E时钟的一个端口进入的时间戳到从另一个端口发出的时间戳的差值作为修正数据来进行累加计算得到非对称时延;
在进行P2P时钟的异步修正时,除了报文从E2E时钟的一个端口进入的时间戳到从另一个端口发出的时间戳的差值作为修正数据以外,还将报文进入时钟入口时的链路延迟也附加到修正数据中来进行累加计算得到非对称时延。
6.如权利要求5所述的基于PTP协议实现亚微秒级同步精度的方法,其特征在于,所述步骤S304’中,取所述第一时间差tms’与所述第二时间差tsm’的平均值,即为链路的平均路径时延。
7.如权利要求5所述的基于PTP协议实现亚微秒级同步精度的方法,其特征在于,所述以太网收发器为DP83640精密时间协议收发器;
所述微处理器为基于ARM9的AT91RM9200微处理器。
8.如权利要求5所述的基于PTP协议实现亚微秒级同步精度的方法,其特征在于,所述步骤S1中将以太网收发器的时钟与时间源的时钟同步的过程具体包括:根据时间源的秒脉冲的间隔来调整以太网收发器的频率,再根据秒脉冲与以太网收发器的脉冲差值调整以太网收发器的相位;
所述步骤S2具体通过所述FPGA单元在物理层芯片的输出流中,搜索特定的IP、端口号、MAC地址以及IEEE1588报文类型,进而过滤掉不符合IEEE1588标准的时间报文信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011100666894A CN102098155B (zh) | 2011-03-18 | 2011-03-18 | 基于ptp协议实现亚微秒级同步精度的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011100666894A CN102098155B (zh) | 2011-03-18 | 2011-03-18 | 基于ptp协议实现亚微秒级同步精度的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102098155A CN102098155A (zh) | 2011-06-15 |
CN102098155B true CN102098155B (zh) | 2013-11-13 |
Family
ID=44131036
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011100666894A Expired - Fee Related CN102098155B (zh) | 2011-03-18 | 2011-03-18 | 基于ptp协议实现亚微秒级同步精度的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102098155B (zh) |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102932905B (zh) * | 2011-08-10 | 2017-06-16 | 中兴通讯股份有限公司 | 自动补偿1588链路非对称性时延的实现方法及系统 |
CN103051487B (zh) * | 2011-10-14 | 2016-10-05 | 华东电力试验研究院有限公司 | 基于电力业网络测量和控制系统时钟同步协议的测试方法 |
EP2600546A1 (en) * | 2011-12-02 | 2013-06-05 | Alcatel Lucent | Method and Related Network Element Providing Delay Measurement in an Optical Transport Network |
US9106352B2 (en) * | 2012-02-27 | 2015-08-11 | Telefonaktiebolaget L M Ericsson (Publ) | Frequency distribution using precision time protocol |
CN102638339B (zh) * | 2012-04-20 | 2014-12-24 | 杭州华三通信技术有限公司 | 一种用于实现精确时间同步的方法和装置 |
CN103378993A (zh) * | 2012-04-20 | 2013-10-30 | 华东电网有限公司 | 基于ptp的从时钟监测方法 |
CN103873178A (zh) * | 2012-12-13 | 2014-06-18 | 郑州威科姆科技股份有限公司 | 广域时间同步系统授时误差的集中巡检方法 |
CN103067112B (zh) * | 2012-12-17 | 2016-01-27 | 福建星网锐捷网络有限公司 | 时钟同步方法、装置及网络设备 |
CN103441833B (zh) * | 2013-08-26 | 2016-08-10 | 瑞斯康达科技发展股份有限公司 | 一种主从设备频率同步方法及系统 |
CN103763055B (zh) * | 2013-10-18 | 2016-05-18 | 杭州联汇数字科技有限公司 | 一种精确同步时间的方法 |
CN104717014A (zh) * | 2013-12-13 | 2015-06-17 | 中兴通讯股份有限公司 | 一种测量光传送网设备传输时延的方法及源otn设备 |
WO2015089848A1 (zh) * | 2013-12-20 | 2015-06-25 | 华为技术有限公司 | 精确时钟协议同步方法和节点 |
CN104168104B (zh) * | 2014-08-22 | 2017-12-15 | 华为技术有限公司 | 一种用于时间和频率同步的装置和方法 |
CN104507156B (zh) * | 2014-12-17 | 2018-10-30 | 西南大学 | 针对无线网络的基于ieee 1588ptp机制的时间同步改进方法 |
CN104601269B (zh) * | 2014-12-31 | 2016-12-28 | 国家电网公司 | 主从时钟同步方法及系统 |
CN106301745A (zh) * | 2015-05-22 | 2017-01-04 | 中兴通讯股份有限公司 | 主用主控板与备用主控板之间时间同步的方法及装置 |
CN105207734A (zh) * | 2015-10-09 | 2015-12-30 | 盛科网络(苏州)有限公司 | 芯片堆叠模式下ptp的实现方法及实现装置 |
CN106603183B (zh) * | 2015-10-15 | 2019-11-15 | 中兴通讯股份有限公司 | 一种时间戳过滤方法及装置 |
CN105846941B (zh) * | 2016-05-23 | 2018-09-11 | 西安电子科技大学 | 基于ieee 1588标准的时钟透明传输装置及方法 |
CN106817183B (zh) * | 2016-12-27 | 2019-03-08 | 天津七六四通信导航技术有限公司 | 一种电力授时中的ptp精准时间协议授时模块及实现方法 |
CN107749788B (zh) * | 2017-09-29 | 2019-06-18 | 郑州云海信息技术有限公司 | 一种提高时钟同步精度的方法、装置及设备 |
US11470568B2 (en) | 2018-07-25 | 2022-10-11 | Nokia Solutions And Networks Oy | Synchronizing TSN master clocks in wireless networks |
US10778360B1 (en) | 2018-12-06 | 2020-09-15 | Xilinx, Inc. | High accuracy timestamp support |
CN109525353A (zh) * | 2018-12-28 | 2019-03-26 | 浙江赛思电子科技有限公司 | Sdh传输iec61588消除非对称误差的方法 |
CN111147176A (zh) * | 2019-12-04 | 2020-05-12 | 中国航空工业集团公司洛阳电光设备研究所 | 一种基于ieee1588协议的高精度时间同步系统 |
CN111163011B (zh) * | 2020-01-19 | 2022-05-13 | 烟台持久钟表有限公司 | 一种基于ptp协议的无线路由器的数据处理方法 |
CN111953442A (zh) * | 2020-06-28 | 2020-11-17 | 成都星辰瀑布通信技术有限公司 | 一种快速高精度时间同步系统 |
CN111884746B (zh) * | 2020-07-17 | 2022-10-18 | 爱瑟福信息科技(上海)有限公司 | 用于soc平台上进行gptp对时的pps秒脉冲信号输出方法及系统 |
CN112040539B (zh) * | 2020-09-03 | 2021-09-14 | 广州视源电子科技股份有限公司 | 时钟同步方法、装置及存储介质 |
CN112532472B (zh) * | 2020-11-09 | 2022-11-04 | 广东电网有限责任公司广州供电局 | 一种相量测量单元上传延时的测试方法 |
CN112953671B (zh) * | 2021-03-29 | 2023-05-23 | 广东电网有限责任公司电力调度控制中心 | 一种精确时钟同步协议对时方法及装置 |
CN113098650B (zh) * | 2021-03-29 | 2023-07-25 | 大连市共进科技有限公司 | 时间偏差测量方法、装置、通信设备和可读存储介质 |
CN114337890B (zh) * | 2021-11-25 | 2023-08-01 | 伟乐视讯科技股份有限公司 | 一种基于ptp网络同步的多终端播发同步系统及方法 |
CN114142959A (zh) * | 2021-12-16 | 2022-03-04 | 深圳市太铭科技有限公司 | 一种基于ptp协议的快速高精度时间同步系统 |
CN114124616B (zh) * | 2022-01-25 | 2022-05-27 | 浙江中控研究院有限公司 | 基于epa总线结构的时钟同步优化方法 |
CN115694704B (zh) * | 2022-10-28 | 2024-06-14 | 重庆长安汽车股份有限公司 | 一种时间同步方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1845546A (zh) * | 2006-03-15 | 2006-10-11 | 重庆邮电学院 | 面向测量与控制的精确时间同步方法与系统 |
CN101080889A (zh) * | 2004-12-16 | 2007-11-28 | 西门子公司 | 同步模块 |
CN101547083A (zh) * | 2008-03-24 | 2009-09-30 | 杭州华三通信技术有限公司 | 时间同步装置、时间同步系统和时间同步方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080069150A1 (en) * | 2006-09-19 | 2008-03-20 | Sig Harold Badt | Precision Time Protocol Emulation for Network Supportive of Circuit Emulation Services |
-
2011
- 2011-03-18 CN CN2011100666894A patent/CN102098155B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101080889A (zh) * | 2004-12-16 | 2007-11-28 | 西门子公司 | 同步模块 |
CN1845546A (zh) * | 2006-03-15 | 2006-10-11 | 重庆邮电学院 | 面向测量与控制的精确时间同步方法与系统 |
CN101547083A (zh) * | 2008-03-24 | 2009-09-30 | 杭州华三通信技术有限公司 | 时间同步装置、时间同步系统和时间同步方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102098155A (zh) | 2011-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102098155B (zh) | 基于ptp协议实现亚微秒级同步精度的方法 | |
CN102546071B (zh) | 一种时钟同步方法与系统 | |
JP5811794B2 (ja) | 通信装置 | |
CN102868515B (zh) | 分组传送网络中的系统时间同步装置及方法 | |
US9860004B2 (en) | Network distributed packet-based synchronization | |
US9178637B2 (en) | Method and devices for synchronization using linear programming | |
US9252903B2 (en) | System and method for accounting for time that a packet spends in transit through a transparent clock | |
CN102195768B (zh) | 一种纳秒级精度ptp实现方法 | |
CN102148652B (zh) | 一种测量网络时钟同步的系统和方法 | |
CN101425865B (zh) | 传输网中的时钟同步方法、系统和从时钟侧实体 | |
CN100561904C (zh) | 一种实现以太网链状网络节点间同步的装置和方法 | |
CN105959076A (zh) | 使无源光网络具备支持时间同步能力的装置与方法 | |
CN103259640B (zh) | 一种同步时间的方法和设备 | |
CN101827098A (zh) | 时间同步的处理方法及装置 | |
WO2012065334A1 (zh) | 在时分复用网络中实现时间同步的方法、设备和系统 | |
CN101977104A (zh) | 基于ieee1588精确时钟同步协议系统及其同步方法 | |
CN102546142A (zh) | 透明时钟的频率同步方法以及同步报文的存储转发方法 | |
CN106027193A (zh) | 用于网络授时系统的时钟同步方法、模块、设备及系统 | |
CN102833025A (zh) | E1/Ethernet协议转换精确时延计算方法、模块及转换器 | |
WO2017071276A1 (zh) | 中继系统的空口时间同步方法、设备 | |
CN102647782B (zh) | 一种物理线路时延确定方法、时钟同步方法及其设备 | |
CN103117829A (zh) | 一种不对称网络间的时间同步与补偿方法或者装置 | |
CN108683472A (zh) | 一种基于延时测量的时钟同步方法 | |
CN102571253B (zh) | 实现精确时间同步的方法和设备 | |
EP3080933A1 (en) | Method and devices for synchronization using linear programming |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20131113 |