CN103441832B - 基于ptp的时钟同步方法、系统和设备 - Google Patents
基于ptp的时钟同步方法、系统和设备 Download PDFInfo
- Publication number
- CN103441832B CN103441832B CN201310370200.1A CN201310370200A CN103441832B CN 103441832 B CN103441832 B CN 103441832B CN 201310370200 A CN201310370200 A CN 201310370200A CN 103441832 B CN103441832 B CN 103441832B
- Authority
- CN
- China
- Prior art keywords
- time point
- equipment
- message
- request message
- delay
- 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
Landscapes
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明实施例公开了一种基于精密时钟协议PTP的时钟同步方法、系统和设备,涉及无线通信领域,用于提高从设备的时钟同步精度。本发明中,从设备接收到主设备发送的同步报文后,记录同步报文到达从设备的时间点t2,并读取和记录同步报文中携带的主设备发送同步报文的时间点t1;从设备生成延迟请求报文,将发送延迟请求报文的时间点t3携带在延迟请求报文中,并向主设备发送延迟请求报文;接收主设备发送的延迟响应报文,读取延迟响应报文中的时间点t3和延迟请求报文到达主设备的时间点t4,根据时间点t1、时间点t2、时间点t3和时间点t4调整本地时钟,以使本地时钟与主设备的时钟同步。采用本发明可以提高从设备的时钟同步精度。
Description
技术领域
本发明涉及无线通信领域,尤其涉及一种基于PTP的时钟同步方法、系统和设备。
背景技术
IEEE1588是网络测量和控制系统的精密时钟同步协议标准,简称精密时钟协议(precision time protocol,PTP)。通过主设备与从设备间的消息传递,计算时间和频率偏移,从而达到主设备与从设备的频率和时间同步,精度可以达到亚微秒级。此标准的目的是为了精确地将测量与控制系统中分散、独立运行的时钟同步起来。
PTP时钟同步的基本原理如下:主设备和从设备之间交互报文并记录报文的收发时间,通过延时偏移计算公式来计算调整延时与偏移量。具体如图1所示:
步骤一:主设备(master)向从设备(slave)发送同步(Sync)报文,Sync报文中携带本报文离开master的估计时刻;
步骤二:master向slave发送跟随(Follow_Up)报文,Follow_Up报文中携带Sync报文离开master的准确时刻t1;
步骤三:slave接收到Sync报文后,记录Sync报文到达slave的时刻t2,并且读取Follow_Up报文中的t1时刻;
步骤四:slave向master发送延迟请求(Delay_Req)报文,并记录Delay_Req报文离开slave的时刻t3;
步骤五:master接收到Delay_Req报文时,记录报文到达master的时刻t4,并将时刻t4通过延迟响应(Delay_Resp)报文返回给slave;
步骤六:slave接收到Delay_Resp报文后,读取Delay_Resp报文中的时刻t4后,根据t1,t2,t3,t4四个时刻值和延时偏移计算公式计算延迟时间和偏移量,从而调整本地时钟的时刻来达到主从设备的时钟同步。
延时偏移计算公式为:
Delay=((t2-t1)+(t4-t3))/2;
Offset=((t2-t1)-(t4-t3))/2。
PTP系统的报文格式的通用头如图2所示。
可见,PTP系统的核心思想就是使slave得到四个时间点t1,t2,t3,t4,从而推算出时间偏移和延时,然后调整本地时间达到主从设备的时钟同步。
目前在实现PTP协议时,主要实现方法如图3-图6所示。
其中,主CPU为设备中央处理器,初始时间戳(Origintimestamp)即OriginalTime为PTP报文中的一个字段;校正域(correctionfield,CF)为PTP报文头中的一个字段。
图3中,t1时刻由master时钟产生,Sync报文经CPU封装,到达物理层(PhysicalLayer,PHY)芯片时,相应寄存器会给Sync报文中的OriginalTime和CF字段赋值,即打上时间戳,此时刻就是t1;
图4中,slave时钟收到报文,PHY寄存器会记录报文到达时刻t2,将此时刻值添加在Sync报文后面,并上报给CPU;CPU读取Sync报文,得到时间t1和t2;
图5中,slave时钟发送Delay_Req报文,报文到达PHY芯片时,会产生中断;CPU读取此刻本地时钟寄存器的值t3,将t3作为Delay_Req报文的发送时刻;
图6中,master时钟收到Delay_Req报文,会同样给Delay_Req报文打上时间戳t4;并通过Delay_Resp报文将此时刻返回给slave时钟。至此slave获得了t1、t2、t3、t4四个时刻。
综上,现有技术存在以下缺陷:按照上述方法实现PTP协议时,slave时钟在产生t3时,是通过中断来实现的,目前的硬件条件决定了,中断产生,CPU读取寄存器的时间是比较耗时的,所以通过中断得到的t3和实际的Delay_Req报文的发送时刻是有一定偏差的,从而直接导致后续延时与偏移量的计算不准确,从而影响时钟同步精度。
发明内容
本发明实施例提供一种基于精密时钟协议PTP的时钟同步方法、系统和设备,用于提高从设备的时钟同步精度。
一种基于精密时钟协议PTP的时钟同步方法,该方法包括:
从设备接收到主设备发送的同步报文后,记录所述同步报文到达从设备的时间点t2,并读取和记录所述同步报文中携带的主设备发送所述同步报文的时间点t1;
从设备生成延迟请求报文,将发送所述延迟请求报文的时间点t3携带在所述延迟请求报文中,并向主设备发送所述延迟请求报文;
从设备接收主设备发送的延迟响应报文,读取所述延迟响应报文中的时间点t3和所述延迟请求报文到达主设备的时间点t4,根据时间点t1、时间点t2、时间点t3和时间点t4调整本地时钟,以使本地时钟与主设备的时钟同步。
一种基于精密时钟协议PTP的时钟同步方法,该方法包括:
主设备向从设备发送同步报文,该同步报文中携带主设备发送所述同步报文的时间点t1;
主设备接收从设备发送的携带从设备发送所述延迟请求报文的时间点t3的延迟请求报文,记录所述延迟请求报文到达主设备的时间点t4并读取所述延迟请求报文中的时间点t3,向从设备发送携带时间点t3和时间点t4的延迟响应报文,以使从设备根据时间点t1、所述同步报文到达从设备的时间点t2、时间点t3和时间点t4调整本地时钟,使本地时钟与主设备的时钟同步。
一种从设备,该从设备包括:
物理层PHY芯片,用于在接收到主设备发送的携带主设备发送同步报文的时间点t1的同步报文后,记录所述同步报文到达从设备的时间点t2,将携带时间点t2的同步报文传送给中央处理器;在接收到中央处理器传送的延迟请求报文后,将发送延迟请求报文的时间点t3携带在该延迟请求报文中,并向主设备发送所述延迟请求报文;在接收到主设备发送的延迟响应报文后,将该延迟响应报文传送给中央处理器;
中央处理器,用于在接收到PHY芯片传送的同步报文后,读取和记录所述同步报文中携带的时间点t1和时间点t2,生成延迟请求报文并传送给PHY芯片;在接收到PHY芯片传送的延迟响应报文后,读取所述延迟响应报文中的时间点t3和所述延迟请求报文到达主设备的时间点t4,根据时间点t1、时间点t2、时间点t3和时间点t4调整本地时钟,以使本地时钟与主设备的时钟同步。
一种主设备,该主设备包括:
中央处理器,用于生成同步报文,将该同步报文传送给物理层PHY芯片;在接收到PHY芯片发来的延迟请求报文后,读取该延迟请求报文中的时间点t3和时间点t4,生成延迟响应报文,将时间点t3和时间点t4携带在该延迟响应报文后传送给PHY芯片;
PHY芯片,用于在接收到中央处理器发来的同步报文后,将发送所述同步报文的时间点t1携带在该同步报文中,并向从设备发送该同步报文;接收从设备发送的携带从设备发送延迟请求报文的时间点t3的延迟请求报文,将所述延迟请求报文到达主设备的时间点t4添加在该延迟请求报文中,并将该延迟请求报文传送给中央处理器;在接收到中央处理器发来的延迟响应报文后,向从设备发送该延迟响应报文,以使从设备根据时间点t1、所述同步报文到达从设备的时间点t2、时间点t3和时间点t4调整本地时钟,使本地时钟与主设备的时钟同步。
一种基于PTP的时钟同步系统,该系统包括:
从设备,用于接收到主设备发送的同步报文后,记录所述同步报文到达从设备的时间点t2,并读取和记录所述同步报文中携带的主设备发送所述同步报文的时间点t1;生成延迟请求报文,将发送所述延迟请求报文的时间点t3携带在所述延迟请求报文中,并向主设备发送所述延迟请求报文;接收主设备发送的延迟响应报文,读取所述延迟响应报文中的时间点t3和所述延迟请求报文到达主设备的时间点t4,根据时间点t1、时间点t2、时间点t3和时间点t4调整本地时钟,以使本地时钟与主设备的时钟同步;
主设备,用于向从设备发送同步报文,该同步报文中携带主设备发送所述同步报文的时间点t1;接收从设备发送的携带时间点t3的延迟请求报文,记录所述延迟请求报文到达主设备的时间点t4并读取所述延迟请求报文中的时间点t3,向从设备发送携带时间点t3和时间点t4的延迟响应报文。
本发明实施例提供的方案中,主设备向从设备发送同步报文,该同步报文中携带主设备发送同步报文的时间点t1;从设备接收到同步报文后,记录同步报文到达从设备的时间点t2,并读取和记录同步报文中携带的时间点t1,从设备生成延迟请求报文,将发送延迟请求报文的时间点t3携带在延迟请求报文中,并向主设备发送延迟请求报文;主设备接收到延迟请求报文后,记录延迟请求报文到达主设备的时间点t4并读取延迟请求报文中的时间点t3,向从设备发送携带时间点t3和时间点t4的延迟响应报文;从设备接收主设备发送的延迟响应报文,读取延迟响应报文中的时间点t3和延迟请求报文到达主设备的时间点t4,根据时间点t1、时间点t2、时间点t3和时间点t4调整本地时钟,以使本地时钟与主设备的时钟同步。可见,本方案中从设备在生成延迟请求报文后,从设备并不是通过中断的方式获得发送延迟请求报文的时间点t3,而是将当前的发送时间点t3携带在延迟请求报文中发送给主设备,主设备再通过延迟响应报文将时间点t3发给从设备,从而避免了由于产生中断使得CPU读取寄存器的时间比较耗时,导致通过中断得到的时间点t3和实际的延迟请求报文的发送时刻有一定的偏差,进而影响时钟同步精度的问题,也即采用本方案可以提高从设备的时钟同步精度。
附图说明
图1为现有技术中的时钟同步流程示意图;
图2为现有技术中的PTP系统的报文格式示意图;
图3-图4为现有技术中的PTP协议实现方法示意图;
图5为本发明实施例提供的方法流程示意图;
图6为本发明实施例提供的另一方法流程示意图;
图7A为本发明实施例的实现流程示意图;
图7B为本发明实施例的优化后的PTP报文交互流程示意图;
图7C为本发明实施例中的Delay_Resp报文格式示意图;
图8为本发明实施例提供的系统结构示意图;
图9为本发明实施例提供的设备结构示意图。
具体实施方式
为了提高从设备的时钟同步精度,本发明实施例提供一种基于PTP的时钟同步方法。
参见图5,本发明实施例提供的基于PTP的时钟同步方法,包括以下步骤:
步骤50:从设备接收到主设备发送的同步报文后,记录该同步报文到达从设备的时间点t2,并读取和记录该同步报文中携带的主设备发送该同步报文的时间点t1;
步骤51:从设备生成延迟请求报文,将发送该延迟请求报文的时间点t3携带在该延迟请求报文中,并向主设备发送该延迟请求报文;
步骤52:从设备接收主设备发送的延迟响应报文,读取该延迟响应报文中的时间点t3和该延迟请求报文到达主设备的时间点t4,根据时间点t1、时间点t2、时间点t3和时间点t4调整本地时钟,以使本地时钟与主设备的时钟同步。
具体的,步骤51的具体实现可以如下:
从设备的中央处理器生成延迟请求报文,将该延迟请求报文传送给物理层(PHY)芯片,PHY芯片将当前本地时钟寄存器的数值作为发送该延迟请求报文的时间点t3添加在该延迟请求报文后,向主设备发送该延迟请求报文。
这里,PHY芯片可以将当前本地时钟寄存器的数值作为发送该延迟请求报文的时间点t3,添加在该延迟请求报文的初始时间戳(Origintimestamp)和校正域(correctionfield,CF)字段中。
具体的,步骤52中,读取该延迟响应报文中的时间点t3和该延迟请求报文到达主设备的时间点t4,具体实现可以如下:
从延迟响应报文的Origintimestamp字段读取时间点t3,从接收时间戳(Receivetimestamp)字段读取时间点t4。
参见图6,本发明实施例针对主设备提供的基于PTP的时钟同步方法,包括以下步骤:
步骤60:主设备向从设备发送同步报文,该同步报文中携带主设备发送所述同步报文的时间点t1;
步骤61:主设备接收从设备发送的携带从设备发送该延迟请求报文的时间点t3的延迟请求报文,记录该延迟请求报文到达主设备的时间点t4并读取该延迟请求报文中的时间点t3,向从设备发送携带时间点t3和时间点t4的延迟响应报文,以使从设备根据时间点t1、该同步报文到达从设备的时间点t2、时间点t3和时间点t4调整本地时钟,使本地时钟与主设备的时钟同步。
具体的,时间点t3可以携带在该延迟请求报文的Origintimestamp和CF字段中。
具体的,步骤61中主设备接收从设备发送的携带从设备发送该延迟请求报文的时间点t3的延迟请求报文,记录该延迟请求报文到达主设备的时间点t4并读取该延迟请求报文中的时间点t3,向从设备发送携带时间点t3和时间点t4的延迟响应报文,具体实现可以如下:
主设备的PHY芯片接收到从设备发送的携带从设备发送该延迟请求报文的时间点t3的延迟请求报文,在该延迟请求报文中添加该延迟请求报文到达主设备的时间点t4后,将该延迟请求报文上报给中央处理器,中央处理器读取该延迟请求报文中的时间点t3和时间点t4,将时间点t3和时间点t4携带在生成的延迟响应报文中,PHY芯片向从设备发送该延迟响应报文。
具体的,可以将时间点t3携带在延迟响应报文的Origintimestamp字段中,将时间点t4携带在延迟响应报文的Receivetimestamp字段中。
下面结合具体实施例对本发明进行说明:
基于目前的硬件实现条件,本实施例主要针对解决slave时钟,在产生t3时刻的偏差。
改进后的整体PTP报文交互流程如图7A所示:
步骤一:主设备生成Sync报文,寄存器通过修改同步报文中的相应字段值使同步报文中携带主设备发送同步报文的时间点t1,然后向从设备发送同步报文;
步骤二:从设备接收到主设备发送的Sync报文后,在Sync报文中添加同步报文到达从设备的时间点t2后,将Sync报文上报给CPU,CPU解析出Sync报文中的t1和t2后,生成Delay_Req报文,寄存器通过修改Delay_Req报文中的相应字段值使Delay_Req报文中携带当前时间点t3,然后向主设备发送Delay_Req报文;
步骤三:主设备接收从设备发送的Delay_Req报文,在Delay_Req报文中添加Delay_Req报文到达主设备的时间点t4后,将Delay_Req报文上报给CPU,CPU解析出Delay_Req报文中的t3和t4后,向从设备发送携带时间点t3和时间点t4的Delay_Resp报文;
步骤四:从设备接收主设备发送的Delay_Resp报文,将Delay_Resp报文上报给CPU,CPU解析出Delay_Resp报文中的t3和t4,根据时间点t1、时间点t2、时间点t3和时间点t4调整本地时钟,以使本地时钟与主设备的时钟同步。
步骤二-步骤四的具体实现如图7B所示:
从设备的CPU解析出Sync报文中的t1和t2后,生成Delay_Req报文,将该Delay_Req报文传送给PHY芯片,PHY芯片不再产生中断,而是将当前本地时钟寄存器的数值作为发送延迟请求报文的时间点t3添加在Delay_Req报文的Origintimestamp字段后,向主设备发送该Delay_Req报文。
主设备的PHY芯片收到Delay_Req报文后,在Delay_Req报文中添加时间戳t4,同时将Delay_Req报文上报给CPU;CPU读取Delay_Req报文中的t3和t4;生成携带t3和t4的Delay_Resp报文,经过PHY芯片发送给从设备;
从设备的PHY芯片收到Delay_Resp报文后,将Delay_Resp报文上报给CPU,CPU读取Delay_Resp报文中的t3和t4,根据时间点t1、时间点t2、时间点t3和时间点t4调整本地时钟,以使本地时钟与主设备的时钟同步。
Delay_Resp报文在原有的基础上要添加新的字段Origintimestamp来承载t3值;新报文格式如图7C所示。
参见图8,本发明实施例提供一种基于PTP的时钟同步系统,该系统包括:
从设备80,用于接收到主设备发送的同步报文后,记录所述同步报文到达从设备的时间点t2,并读取和记录所述同步报文中携带的主设备发送所述同步报文的时间点t1;生成延迟请求报文,将发送所述延迟请求报文的时间点t3携带在所述延迟请求报文中,并向主设备发送所述延迟请求报文;接收主设备发送的延迟响应报文,读取所述延迟响应报文中的时间点t3和所述延迟请求报文到达主设备的时间点t4,根据时间点t1、时间点t2、时间点t3和时间点t4调整本地时钟,以使本地时钟与主设备的时钟同步;
主设备81,用于向从设备发送同步报文,该同步报文中携带主设备发送所述同步报文的时间点t1;接收从设备发送的携带时间点t3的延迟请求报文,记录所述延迟请求报文到达主设备的时间点t4并读取所述延迟请求报文中的时间点t3,向从设备发送携带时间点t3和时间点t4的延迟响应报文。
参见图9,本发明实施例提供一种从设备,该从设备包括:
PHY芯片90,用于在接收到主设备发送的携带主设备发送同步报文的时间点t1的同步报文后,记录所述同步报文到达从设备的时间点t2,将携带时间点t2的同步报文传送给中央处理器;在接收到中央处理器传送的延迟请求报文后,将发送延迟请求报文的时间点t3携带在该延迟请求报文中,并向主设备发送所述延迟请求报文;在接收到主设备发送的延迟响应报文后,将该延迟响应报文传送给中央处理器;
中央处理器91,用于在接收到PHY芯片传送的同步报文后,读取和记录所述同步报文中携带的时间点t1和时间点t2,生成延迟请求报文并传送给PHY芯片;在接收到PHY芯片传送的延迟响应报文后,读取所述延迟响应报文中的时间点t3和所述延迟请求报文到达主设备的时间点t4,根据时间点t1、时间点t2、时间点t3和时间点t4调整本地时钟,以使本地时钟与主设备的时钟同步。
进一步的,所述PHY芯片90用于:
将当前本地时钟寄存器的数值作为发送所述延迟请求报文的时间点t3添加在所述延迟请求报文中。
进一步的,所述中央处理器91用于:
从所述延迟响应报文的Origintimestamp字段读取时间点t3,从Receivetimestamp字段读取时间点t4。
仍参见图9,本发明实施例提供一种主设备,该主设备包括:
中央处理器91,用于生成同步报文,将该同步报文传送给物理层PHY芯片;在接收到PHY芯片发来的延迟请求报文后,读取该延迟请求报文中的时间点t3和时间点t4,生成延迟响应报文,将时间点t3和时间点t4携带在该延迟响应报文后传送给PHY芯片;
PHY芯片90,用于在接收到中央处理器发来的同步报文后,将发送所述同步报文的时间点t1携带在该同步报文中,并向从设备发送该同步报文;接收从设备发送的携带从设备发送延迟请求报文的时间点t3的延迟请求报文,将所述延迟请求报文到达主设备的时间点t4添加在该延迟请求报文中,并将该延迟请求报文传送给中央处理器;在接收到中央处理器发来的延迟响应报文后,向从设备发送该延迟响应报文,以使从设备根据时间点t1、所述同步报文到达从设备的时间点t2、时间点t3和时间点t4调整本地时钟,使本地时钟与主设备的时钟同步。
进一步的,所述中央处理器91用于:
将时间点t3携带在延迟响应报文的Origintimestamp字段中,将时间点t4携带在延迟响应报文的Receivetimestamp字段中。
综上,本发明的有益效果包括:
本发明实施例提供的方案中,主设备向从设备发送同步报文,该同步报文中携带主设备发送同步报文的时间点t1;从设备接收到同步报文后,记录同步报文到达从设备的时间点t2,并读取和记录同步报文中携带的时间点t1,从设备生成延迟请求报文,将发送延迟请求报文的时间点t3携带在延迟请求报文中,并向主设备发送延迟请求报文;主设备接收到延迟请求报文后,记录延迟请求报文到达主设备的时间点t4并读取延迟请求报文中的时间点t3,向从设备发送携带时间点t3和时间点t4的延迟响应报文;从设备接收主设备发送的延迟响应报文,读取延迟响应报文中的时间点t3和延迟请求报文到达主设备的时间点t4,根据时间点t1、时间点t2、时间点t3和时间点t4调整本地时钟,以使本地时钟与主设备的时钟同步。可见,本方案中从设备在生成延迟请求报文后,从设备并不是通过中断的方式获得发送延迟请求报文的时间点t3,而是将当前的发送时间点t3携带在延迟请求报文中发送给主设备,主设备再通过延迟响应报文将时间点t3发给从设备,从而避免了由于产生中断使得CPU读取寄存器的时间比较耗时,导致通过中断得到的时间点t3和实际的延迟请求报文的发送时刻有一定的偏差,进而影响时钟同步精度的问题,也即采用本方案可以提高从设备的时钟同步精度。并且,本方案实现简单,便于扩展。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种基于精密时钟协议PTP的时钟同步方法,其特征在于,该方法包括:
从设备接收到主设备发送的同步报文后,记录所述同步报文到达从设备的时间点t2,并读取和记录所述同步报文中携带的主设备发送所述同步报文的时间点t1;
从设备的中央处理器生成延迟请求报文,将该延迟请求报文传送给物理层PHY芯片,PHY芯片将当前本地时钟寄存器的数值作为发送所述延迟请求报文的时间点t3添加在所述延迟请求报文后,向主设备发送该延迟请求报文;
从设备接收主设备发送的延迟响应报文,读取所述延迟响应报文中的时间点t3和所述延迟请求报文到达主设备的时间点t4,根据时间点t1、时间点t2、时间点t3和时间点t4调整本地时钟,以使本地时钟与主设备的时钟同步。
2.如权利要求1所述的方法,其特征在于,所述读取所述延迟响应报文中的时间点t3和所述延迟请求报文到达主设备的时间点t4,具体包括:
从所述延迟响应报文的Origintimestamp字段读取时间点t3,从Receivetimestamp字段读取时间点t4。
3.一种基于精密时钟协议PTP的时钟同步方法,其特征在于,该方法包括:
主设备向从设备发送同步报文,该同步报文中携带主设备发送所述同步报文的时间点t1;
主设备接收从设备发送的携带从设备发送延迟请求报文的时间点t3的延迟请求报文,记录所述延迟请求报文到达主设备的时间点t4并读取所述延迟请求报文中的时间点t3,向从设备发送携带时间点t3和时间点t4的延迟响应报文,以使从设备根据时间点t1、所述同步报文到达从设备的时间点t2、时间点t3和时间点t4调整本地时钟,使本地时钟与主设备的时钟同步;其中,从设备发送的携带从设备发送所述延迟请求报文的时间点t3的延迟请求报文是在从设备的中央处理器生成延迟请求报文,将该延迟请求报文传送给物理层PHY芯片,PHY芯片将当前本地时钟寄存器的数值作为发送所述延迟请求报文的时间点t3后,向主设备发送的。
4.如权利要求3所述的方法,其特征在于,所述主设备接收从设备发送的携带从设备发送所述延迟请求报文的时间点t3的延迟请求报文,记录所述延迟请求报文到达主设备的时间点t4并读取所述延迟请求报文中的时间点t3,向从设备发送携带时间点t3和时间点t4的延迟响应报文,具体包括:
主设备的物理层PHY芯片接收到从设备发送的携带从设备发送所述延迟请求报文的时间点t3的延迟请求报文,在该延迟请求报文中添加所述延迟请求报文到达主设备的时间点t4后,将该延迟请求报文上报给中央处理器,中央处理器读取该延迟请求报文中的时间点t3和时间点t4,将时间点t3和时间点t4携带在生成的延迟响应报文中,PHY芯片向从设备发送该延迟响应报文。
5.如权利要求4所述的方法,其特征在于,所述将时间点t3和时间点t4携带在生成的延迟响应报文中,具体包括:
将时间点t3携带在延迟响应报文的Origintimestamp字段中,将时间点t4携带在延迟响应报文的Receivetimestamp字段中。
6.一种从设备,其特征在于,该从设备包括:
物理层PHY芯片,用于在接收到主设备发送的携带主设备发送同步报文的时间点t1的同步报文后,记录所述同步报文到达从设备的时间点t2,将携带时间点t2的同步报文传送给中央处理器;在接收到中央处理器传送的延迟请求报文后,将发送延迟请求报文的时间点t3携带在该延迟请求报文中,并向主设备发送所述延迟请求报文;在接收到主设备发送的延迟响应报文后,将该延迟响应报文传送给中央处理器;
中央处理器,用于在接收到PHY芯片传送的同步报文后,读取和记录所述同步报文中携带的时间点t1和时间点t2,生成延迟请求报文并传送给PHY芯片;在接收到PHY芯片传送的延迟响应报文后,读取所述延迟响应报文中的时间点t3和所述延迟请求报文到达主设备的时间点t4,根据时间点t1、时间点t2、时间点t3和时间点t4调整本地时钟,以使本地时钟与主设备的时钟同步;
所述PHY芯片还用于:
将当前本地时钟寄存器的数值作为发送所述延迟请求报文的时间点t3添加在所述延迟请求报文中。
7.如权利要求6所述的从设备,其特征在于,所述中央处理器用于:
从所述延迟响应报文的Origintimestamp字段读取时间点t3,从Receivetimestamp字段读取时间点t4。
8.一种主设备,其特征在于,该主设备包括:
中央处理器,用于生成同步报文,将该同步报文传送给物理层PHY芯片;在接收到PHY芯片发来的延迟请求报文后,读取该延迟请求报文中的时间点t3和时间点t4,生成延迟响应报文,将时间点t3和时间点t4携带在该延迟响应报文后传送给PHY芯片;
PHY芯片,用于在接收到中央处理器发来的同步报文后,将发送所述同步报文的时间点t1携带在该同步报文中,并向从设备发送该同步报文;接收从设备发送的携带从设备发送延迟请求报文的时间点t3的延迟请求报文,将所述延迟请求报文到达主设备的时间点t4添加在该延迟请求报文中,并将该延迟请求报文传送给中央处理器;在接收到中央处理器发来的延迟响应报文后,向从设备发送该延迟响应报文,以使从设备根据时间点t1、所述同步报文到达从设备的时间点t2、时间点t3和时间点t4调整本地时钟,使本地时钟与主设备的时钟同步;其中,从设备发送的携带从设备发送所述延迟请求报文的时间点t3的延迟请求报文是在从设备的中央处理器生成延迟请求报文,将该延迟请求报文传送给物理层PHY芯片,PHY芯片将当前本地时钟寄存器的数值作为发送所述延迟请求报文的时间点t3后,向主设备发送的。
9.如权利要求8所述的主设备,其特征在于,所述中央处理器用于:
将时间点t3携带在延迟响应报文的Origintimestamp字段中,将时间点t4携带在延迟响应报文的Receivetimestamp字段中。
10.一种基于PTP的时钟同步系统,其特征在于,该系统包括:
从设备,用于接收到主设备发送的同步报文后,记录所述同步报文到达从设备的时间点t2,并读取和记录所述同步报文中携带的主设备发送所述同步报文的时间点t1;从设备的中央处理器生成延迟请求报文,将该延迟请求报文传送给物理层PHY芯片,PHY芯片将当前本地时钟寄存器的数值作为发送所述延迟请求报文的时间点t3添加在所述延迟请求报文后,向主设备发送该延迟请求报文;接收主设备发送的延迟响应报文,读取所述延迟响应报文中的时间点t3和所述延迟请求报文到达主设备的时间点t4,根据时间点t1、时间点t2、时间点t3和时间点t4调整本地时钟,以使本地时钟与主设备的时钟同步;
主设备,用于向从设备发送同步报文,该同步报文中携带主设备发送所述同步报文的时间点t1;接收从设备发送的携带时间点t3的延迟请求报文,记录所述延迟请求报文到达主设备的时间点t4并读取所述延迟请求报文中的时间点t3,向从设备发送携带时间点t3和时间点t4的延迟响应报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310370200.1A CN103441832B (zh) | 2013-08-22 | 2013-08-22 | 基于ptp的时钟同步方法、系统和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310370200.1A CN103441832B (zh) | 2013-08-22 | 2013-08-22 | 基于ptp的时钟同步方法、系统和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103441832A CN103441832A (zh) | 2013-12-11 |
CN103441832B true CN103441832B (zh) | 2016-12-28 |
Family
ID=49695501
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310370200.1A Active CN103441832B (zh) | 2013-08-22 | 2013-08-22 | 基于ptp的时钟同步方法、系统和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103441832B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106877959B (zh) * | 2015-12-11 | 2019-04-30 | 深圳市中兴微电子技术有限公司 | 一种时钟同步的方法、设备和系统 |
CN112511475B (zh) * | 2020-12-10 | 2023-06-16 | 国电南瑞科技股份有限公司 | 一种报文同步精度补偿方法及系统 |
CN113179441B (zh) * | 2021-03-26 | 2023-06-30 | 卡莱特云科技股份有限公司 | 一种同步播放方法、装置、系统及计算机设备 |
CN115276866B (zh) * | 2022-06-02 | 2024-05-14 | 智己汽车科技有限公司 | 一种智能驾驶系统的时钟同步方法及设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1960242A (zh) * | 2006-10-17 | 2007-05-09 | 中控科技集团有限公司 | 实现时钟同步的方法、装置、系统及分布式系统 |
CN101582733A (zh) * | 2009-06-18 | 2009-11-18 | 中兴通讯股份有限公司 | 一种在sdh设备之间实现高精度时间同步的方法和系统 |
CN102547969A (zh) * | 2012-02-24 | 2012-07-04 | 电子科技大学 | 一种面向电力系统的高精度无线时钟同步系统 |
-
2013
- 2013-08-22 CN CN201310370200.1A patent/CN103441832B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1960242A (zh) * | 2006-10-17 | 2007-05-09 | 中控科技集团有限公司 | 实现时钟同步的方法、装置、系统及分布式系统 |
CN101582733A (zh) * | 2009-06-18 | 2009-11-18 | 中兴通讯股份有限公司 | 一种在sdh设备之间实现高精度时间同步的方法和系统 |
CN102547969A (zh) * | 2012-02-24 | 2012-07-04 | 电子科技大学 | 一种面向电力系统的高精度无线时钟同步系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103441832A (zh) | 2013-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10019333B2 (en) | Methods, systems, and computer readable media for emulating network devices with different clocks | |
CN101447861B (zh) | Ieee 1588时间同步系统及其实现方法 | |
WO2018006686A1 (zh) | 一种通信网络设备间时间同步的优化方法、装置及设备 | |
CN104184534B (zh) | 精确ieee1588协议的透明时钟路径延迟的方法 | |
CN103532652B (zh) | 一种时间同步装置和方法 | |
CN108880727B (zh) | 一种基于PTPd2协议的精确时钟同步实现方法 | |
CN103067112B (zh) | 时钟同步方法、装置及网络设备 | |
CN103441832B (zh) | 基于ptp的时钟同步方法、系统和设备 | |
CN103873179A (zh) | 使无源光网络具备支持时间同步能力的装置与方法 | |
CN107786293A (zh) | 时间同步方法、主时钟设备、从时钟设备及时间同步系统 | |
CN103929293A (zh) | 非对称延迟的时间同步方法及系统 | |
CN110492965A (zh) | 一种主从系统内串行报文对时的方法和装置 | |
EP3284217A1 (en) | Methods, systems, and computer readable media for synchronizing timing among network interface cards (nics) in a network equipment test device | |
CN105743598A (zh) | 一种工业以太网时钟同步方法及系统 | |
CN104601269B (zh) | 主从时钟同步方法及系统 | |
CN109150357A (zh) | 基于rs485和以太网的混合总线的时间同步方法 | |
CN105376043B (zh) | 一种双板卡系统的时间同步方法 | |
CN108259109A (zh) | Ptp域中的网络设备及tod同步方法 | |
WO2019056921A1 (zh) | 一种集中式1588的实现系统及方法 | |
CN109921871A (zh) | 一种时间同步方法、装置及网络系统 | |
CN103117816A (zh) | 一种空间遥操作指令时延的测量方法 | |
CN103647614A (zh) | 基于ieee1588协议的可靠提高时间同步精度方法 | |
CN104486058B (zh) | 一种ptp系统时间同步方法以及装置 | |
CN104468014A (zh) | 复杂网络环境下提高时间同步精度的方法 | |
CN106301745A (zh) | 主用主控板与备用主控板之间时间同步的方法及装置 |
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 |