CN101977104B - 基于ieee1588精确时钟同步协议系统及其同步方法 - Google Patents

基于ieee1588精确时钟同步协议系统及其同步方法 Download PDF

Info

Publication number
CN101977104B
CN101977104B CN 201010542983 CN201010542983A CN101977104B CN 101977104 B CN101977104 B CN 101977104B CN 201010542983 CN201010542983 CN 201010542983 CN 201010542983 A CN201010542983 A CN 201010542983A CN 101977104 B CN101977104 B CN 101977104B
Authority
CN
China
Prior art keywords
clock
time
timestamp
module
message
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
Application number
CN 201010542983
Other languages
English (en)
Other versions
CN101977104A (zh
Inventor
许雄
熊振华
朱向阳
盛鑫军
丁懋卿
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Jiaotong University
Original Assignee
Shanghai Jiaotong University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Jiaotong University filed Critical Shanghai Jiaotong University
Priority to CN 201010542983 priority Critical patent/CN101977104B/zh
Publication of CN101977104A publication Critical patent/CN101977104A/zh
Application granted granted Critical
Publication of CN101977104B publication Critical patent/CN101977104B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

一种网络信息传输技术领域的基于IEEE 1588精确时钟同步协议系统及其同步方法,使得主时钟在发送同步报文时就带有本次发送的精确时间戳,无需再发送跟随报文,极大减小了实现时钟同步所需的通信带宽。同时,构建一个频率可调的时钟计数器,再配合时钟同步算法,实现频率补偿的功能,达到高精度时钟同步的要求。

Description

基于IEEE 1588精确时钟同步协议系统及其同步方法
技术领域
[0001] 本发明涉及的是一种网络信息传输技术领域的系统及其同步方法,具体是一种不带跟随报文的基于IEEE 1588精确时钟同步协议系统及其同步方法。
背景技术
[0002] 近年来,以太网由于其开放性、技术成熟、高的传输速率、应用广泛以及价格低廉等特点,已受到越来越多的关注,且有进一步应用到工业现场的趋势。但是,由于其MAC层协议采用CSMA/CD,具有排队延迟不确定的缺陷,使之无法在工业控制中得到有效使用。响应时间的“不确定性”(即实时性差)和系统内各模块的“不同步性”成为了阻碍以太网技术“一网到底”的瓶颈。其中:有些工业现场要求极高的时钟同步精度是以太网广泛应用于工业现场的关键障碍之一。
[0003] 常用于以太网TCP/IP网络的同步协议有:网络时间协议NTP (Network TimeProtocol)和简单网络时间协议 SNTP (Simple Network Time Protocol)。NTP 是用于互联网中时间同步的标准互联网协议。NTP的用途是把计算机的时间同步到某些时间标准。目前采用的时间标准是世界协调时UTC (Universal Time Coordinated)。NTP协议的时钟同步主要是在主从工作方式下实现的。由于NTP采用的是应用层同步方法,其时间同步精度不高,一般在IOms到IOOrns之间,不能满足高速高精的多轴运动控制系统的要求。SNTP则是一个简化了的NTP服务器和NTP客户策略,其时间精度依赖于客户端和服务端网络的情况。但由于其采用的是与NTP相同的时钟同步机制,因此时钟同步精度也不高。
[0004] 和NTP,SNTP相比,IEEE 1588协议是以太网中一种较为精确的时钟同步解决方 案,其基本功能是使分布式网络内的其他时钟与最精确时钟保持同步。IEEE 1588协议中定义了一种精确时间协议(PTP, Precision Time Protocol),用于对标准以太网或其他采用多播技术的分布式总线系统中的传感器、执行器以及其他终端设备中的时钟进行亚微秒级同步。
[0005] 经过对现有技术文献的检索发现,中国发明专利申请号为200810059859,公开号为CN101232457A,名称为“一种基于IEEE 1588协议的高精度实时同步方法”的专利,给出了一种基于IEEE 1588的PTP精确时钟同步协议的硬件实现方式。中国发明专利申请号为200810187676. 0,公开号为CN 101447861A,名称为“ IEEE 1588时间同步系统及其实现方法”的专利,给出了一种IEEE 1588时间同步系统,通过增设时间戳处理模块,再结合交换机模块、物理层模块以及实时时钟模块等外围部件形成一个具备时钟同步的硬件系统。
[0006] 但上述技术虽然时钟同步技术采用的都是硬件的实现方式,但由于数据链路层采用的都是商用集成芯片,时间戳处理模块没有和数据链路层集成在一起,所以每次同步过程主节点都需要发送一个跟随报文(FollowUp),里面包含发送同步报文(Sync)时的精确时间戳信息,从而增加了网络的通信量;当不发送跟随报文,传统的同步系统只能在Sync报文中包含一个估计的发送时间戳信息,这样就会使同步精度降低。再者,上述技术中实现时钟同步的方法仅仅是周期性的校正从时钟,使校正瞬时时刻主从时钟的偏差为零,而没有进行频率补偿,导致从时钟和主时钟的偏差随时间的变化逐渐增加,这种漂移在高精度同步的情况下是不能容许的。
发明内容
[0007] 本发明针对现有技术存在的上述不足,提供一种基于IEEE 1588精确时钟同步协议系统及其同步方法,使得主时钟在发送同步报文时就带有本次发送的精确时间戳,无需再发送跟随报文,极大减小了实现时钟同步所需的通信带宽。同时,构建一个频率可调的时钟计数器,再配合时钟同步算法,实现频率补偿的功能,达到高精度时钟同步的要求。
[0008] 本发明是通过以下技术方案实现的:
[0009] 本发明涉及一种基于IEEE 1588精确时钟同步协议系统,包括:CPU管理和控制模块、带时间戳管理的以太网媒体访问控制器模块、本地参考时钟模块以及物理层收发器模块,其中:CPU管理和控制模块通过总线与带时间戳管理的以太网媒体访问控制器模块相连,用于管理所述时间同步系统并实现PTP协议和时钟同步,带时间戳管理的以太网媒体访问控制器模块用于实现PTP消息的解析、时间戳的获取并根据通信标准IEEE 802. 3完成带时间戳数据包的发送和接收,本地参考时钟模块与CPU管理和控制模块相连以在传输报文时提供本地时钟的基准,物理层收发器模块通过标准的独立媒体接口(mediaindependent interface,Mil)与带时间戳管理的以太网媒体访问控制器模块相连,为设备之间的数据通信提供传输媒体及互连设备,提供可靠的数据传输环境。
[0010] 所述的CPU管理和控制模块包括:通信接口单元和PTP协议栈;其中:通信接口单元分别接收来自PTP协议栈的数据并打包后通过总线发送至带时间戳管理的以太网媒体访问控制器模块,并通过事件中断的方式读取带时间戳管理的以太网媒体访问控制器模块中的数据包,PTP协议栈判断当前节点在网络中所处的主时钟或者从时钟状态并发送报文至带时间戳管理的以太网媒体访问控制器模块。
[0011] 所述的发送报文是指:当PTP协议栈判断本节点为主时钟,则周期的发送同步(Sync)报文,并在接收到从时钟发送过来的延迟请求(DelayReq)报文后,发送延迟响应(DelayResp)报文;当PTP协议栈判断本节点为从时钟,则在接收到从时钟发送过来的Sync报文后,启动时钟同步算法将计算出的频率补偿值传输至本地参考时钟模块,同时从时钟向主时钟发送DelayReq报文。
[0012] 所述的时钟同步算法是指:根据同步过程中的时间戳信息和测量得到的从时钟和主时钟之间的时间偏移量计算出相应的从时钟频率补偿值。
[0013] 所述的带时间戳管理的以太网媒体访问控制器模块包括:MII接口单元、收发FIR)单元、地址缓冲器、地址过滤器、CRC校验单元、数据包探测器、时间戳寄存器以及MAC传输控制器,其中:MII接口单元与物理层收发器模块相连并传输与数据包相关的数据、时钟和控制信息,收发FIR)单元与CPU管理和控制模块以及MAC传输控制器相连并传输PTP数据包信息,实现待发送数据包和已接收到的数据包的存储,地址缓冲器和地址过滤器分别与MAC传输控制器相连并传输地址信息,实现存储目标节点的地址信息和对接收到的除广播包外数据包进行地址过滤,CRC校验单元与MAC传输控制器相连并传输循环冗余码信息,实现产生CRC校验码和进行CRC校验,提高传输的可靠性,数据包探测器与时间戳寄存器相连并传输捕获到的时间戳信息,实现探测MII接口上数据包的帧起始标示(start-of-frame delimiter, SFD)标志,当探测到有数据包正在发送或者接收,则将当前时间锁存至时间戳寄存器中,从而获取到高精度的时间戳信息,时间戳寄存器与数据包探测器和MAC传输控制器相连并传输时间戳信息,实现记录发送和接收报文的时间戳,MAC传输控制器与带时间戳管理的以太网媒体访问控制器模块中的其它单元相连并传输PTP数据包、地址、循环冗余码、时间戳等信息,实现数据链路层(基于标准IEEE 802.3)的功能以及判断PTP数据包类型,控制所有PTP数据包的发送和接收过程,并在线的将捕获到的时间戳信息添加至正在发送的Sync数据包末端,一并发送出去,从而使整个同步过程无需再发送FollowUp报文,减小了实现时钟同步所需的通信带宽。 [0014] 所述的本地参考时钟模块内置晶体振荡器以及频率补偿电路以生成工作时钟,当对应设备为主时钟且本地参考时钟模块被触发时,则本地参考时钟模块对应输出的系统时间增加一个时钟周期的数值;当对应设备为从时钟且本地参考时钟模块被触发时,该本地参考时钟模块启动内部的频率补偿电路,实现了频率补偿功能,克服了晶振漂移,使得普通的廉价晶振也能用于精确的时钟同步。
[0015] 所述的频率补偿电路包括:p位时钟计数器、q位累加器和r位加数寄存器,其中:
[0016] 加数寄存器与CPU管理和控制模块相连并传输频率补偿信息,实现对时钟同步算法计算出的频率补偿值进行锁存,累加器与加数寄存器相连,实现对加数寄存器锁存的频率补偿值进行累加操作并产生进位标志位,时钟计数器与累加器相连,实现本地系统时间的输出,当累加器产生进位标志位,时钟计数器将系统时间增加一个时钟周期的数值。
[0017]当从时钟的本地参考时钟模块被触发时,累加器将自身的值与存储在加数寄存器中的值相加,结果存储在累加器中,同时产生一个进位标志位表示这次的加法操作是否溢出,当发生溢出,系统时间需要增加一个时钟周期的数值。单位时间内时钟计数器数值增加的次数是由加数寄存器的值和晶振频率共同决定的,改变存储在加数寄存器中的加数,就改变了累加器进行加法操作时发生溢出的频率,从而改变了时钟计数器增加的频率,实现了对晶振频率的补偿。
[0018] 本发明涉及上述系统的同步方法,包括以下步骤:
[0019] 第一步、主设备通过自身内置的CPU管理和控制模块以组播的形式,周期发送Sync同步报文,该同步报文带有精确的发送时间戳tM1[k],所述从设备接收该Sync报文并记录接收时间戳tsl[k],其中k代表第k次时钟同步过程;从设备利用最近测量的线路时延值Delay_lateSt,并按照预设的时间偏移量计算公式和频率补偿计算公式算出从设备与主设备之间的时间偏移量Offset [k]和频率补偿值FreqCompValue [k],然后利用所述频率补偿值对从设备的本地参考时钟模块进行校正;
[0020] 第二步、从设备向所述主设备发送DelayReq报文,记录发送时间戳tS2[k],主设备接收并解析该DelayReq报文,并向所述从设备回复DelayResp报文,所述从设备在收到DelayResp报文后,记录该报文所带有的时间戳信息tM2[k];然后依据相应公式得到新测量出的线路时延值Delay_new。
[0021]所述的最近测量的线路时延值 Delay_new = ((tsl [k] -tM1 [k]) + (tS2 [k] -tM2 [k])) /2,其中:k为第k次时钟同步过程,且在该时钟同步过程中进行了线路时延测量。
[0022]所述的预设的时间偏移量 0ffset[k] = tsl [k] _tM1 [k] _Delay_latest,其中:Delay_latest = Delay_new,初始值为0,k为第k次时钟同步过程,不论该时钟同步过程中是否进行线路时延测量。
[0023] 所述的频率补偿值FreqCompValue [k]通过以下方式获得:
[0024]
FreqCompValue\k~\ = aWreqCompValue\k -1]
< α, _ (r[k]-r[k-X\)-Offset[k] ;
. (y[k]~ y[k-I])
[0025] 其中:r [k]为从时钟第k次收到同步报文时所对应的主时钟系统时间,从时钟根据测量的线路时延值对其值进行估计,估计值为:r[k] = tM1[k]+Delay_latest ;y[k]为从时钟第k次收到同步报文时的从时钟系统时间,其值为:y[k] = tsl[k];频率补偿值初始值 FreqCompValue [O]的取值取决于频率补偿时钟中q和r的取值以及PLL的配置。假设从时钟内置晶体振荡器经PLL后的频率为fpw而从时钟和主时钟系统时间的标称频率为fnOT,记:Ratio = fPIX/f_,频率补偿精度为CompPrecision (比如I X 10_9),主时钟发送同步报文的周期为 Tsyn。,则有如下关系式:FreqCompValue[0] = 2q/Ratio, CompPrecision ( I/(Tsync □ fnorm), 2q 彡 Ratio/CompPrecision,2r 彡 2q/Ratio 和 2P 彡 2\
[0026] 本发明具有以下优点:
[0027] 本发明通过采用硬件形式的时间戳管理,并使用带时间戳管理的以太网媒体访问控制器模块,使数据链路层和时钟同步的时间戳处理模块集成在一起,从而主时钟在发送同步报文(Sync)时就带有本次发送的精确时间戳,无需再发送跟随报文,极大减小了实现时钟同步所需的通信带宽。
[0028] 另外,本发明系统中采用数字电路,构建一个频率可调的时钟计数器,再结合一种实时性好、容易在嵌入式系统中实现的时钟同步算法,实现频率补偿的功能,达到高精度时钟同步的要求:既保证本地时刻与标准时刻的相位同步,又保证频率同步。
附图说明
[0029] 图I为实施例中IEEE 1588时间同步系统的结构示意图。
[0030] 图2为实施例中带时间戳管理的以太网媒体访问控制器模块示意图。
[0031] 图3为实施例主时钟的本地参考时钟模块示意图。
[0032] 图4为实施例从时钟的本地参考时钟模块示意图。
[0033] 图5为实施例IEEE 1588时间同步方法的实现过程示意图。
具体实施方式
[0034] 下面对本发明的实施例作详细说明,本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
[0035] 如图I所示,本实施例包括:CPU管理和控制模块10、带时间戳管理的以太网媒体访问控制器模块11、本地参考时钟模块12以及物理层收发器(PHY)模块13 ;其中:所述CPU管理和控制模块10还包括通信接口单元100和PTP协议栈101。
[0036] 通信接口单元100,用于实现PTP数据包的打包发送和接收,完成CPU管理和控制模块10与带时间戳管理的以太网媒体访问控制器模块11之间的数据交互工作;其通过事件中断的方式读取带时间戳管理的以太网媒体访问控制器模块中的数据包,并接收PTP协议栈的数据,打包后通过总线发送至带时间戳管理的以太网媒体访问控制器模块。
[0037] PTP协议栈101,用于实现IEEE 1588协议,完成同步过程和线路时延测量,通过通信接口单元100从带时间戳管理的以太网媒体访问控制器模块11中读取所需的时间戳信息,再将这些时间戳信息交由时钟同步算法处理。
[0038] 所述时钟同步算法,用于实现线路时延值、从时钟相对于主时钟的时间偏移量和频率补偿值的计算公式,再将计算得到的频率补偿值,经由通信接口单元100传输给本地参考时钟模块12处理。
[0039] 带时间戳管理的以太网媒体访问控制器模块11,用于实现PTP消息的解析、时间戳的获取,并根据通信标准IEEE 802. 3完成带时间戳数据包的发送和接收。
[0040] 本地参考时钟模块12,与CPU管理和控制模块10相连以在传输报文时提供本地时钟的基准,其主要结构为时钟计数器,而采用IEEE 1588的目的就是使从时钟的本地参考时钟模块12和主时钟的本地参考时钟模块12保持同步。
[0041] 物理层收发器模块13,通过标准的独立媒体接口(media independentinterface, Mil)与带时间戳管理的以太网媒体访问控制器模块11相连,为设备之间的数据通信提供传输媒体及互连设备,提供可靠的数据传输环境。
[0042] 本实施例的物理层收发器模块13采用Intel公司的LXT973芯片,负责实现以太网总线的物理层协议,该芯片带有2个通信端口,且支持双绞线和光纤通信两种通信媒介。
[0043] 本实施例的带时间戳管理的以太网媒体访问控制器模块11和本地参考时钟模块12,都为在FPGA中实现,FPGA采用Altera公司的Cyclone III系列芯片,型号为EP3C10E144C8N。FPGA负责实施通信卡的逻辑电路设计,包括:通信接口单元,实现与DSP模块交互的内存映射机制和译码电路;完成多时钟信号产生的锁相环电路(PLL);带时间戳管理的以太网数据链路层;实施本地参考时钟的数字电路。扩展的串行配置芯片EPCS16作为FPGA模块的程序存储空间。
[0044] 本实施例的CPU管理和控制模块10在DSP上实现,DSP采用Texas Instruments公司的TMS320F2812芯片,负责对FPGA芯片的初始化、访问和通信,完成所述时间同步系统的管理和控制,实施PTP协议栈和时钟同步算法等功能;芯片自带的FLASH存储器运行DSP模块的系统程序;扩展的SRAM-IS61LV51216作为DSP模块运行的数据存储区,存放时钟同步精度测试所需的数据。
[0045] 如图2所示,所述的带时间戳管理的以太网媒体访问控制器模块11的具体实施包括以下模块:MII接口单元110,发送FIR)单元111,接收FIR)单元112,地址缓冲器113,地址过滤器114,CRC校验单元115,数据包探测器116,时间戳寄存器117,MAC发送控制器118以及MAC接收控制器119。MII接口单元110与物理层收发器模块13相连并传输与数据包相关的数据、时钟和控制信息,收发FIR)单元111和112与CPU管理和控制模块10以及MAC传输控制器118和119相连并传输PTP数据包信息,实现待发送数据包和已接收到的数据包的存储,地址缓冲器113和地址过滤器114分别与MAC传输控制器118和119相连并传输地址信息,实现存储目标节点的地址信息和对接收到的除广播包外数据包进行地址过滤,CRC校验单元115与MAC传输控制器118和119相连并传输循环冗余码信息,实现产生CRC校验码和进行CRC校验,提高传输的可靠性,数据包探测器116与时间戳寄存器117相连并传输捕获到的时间戳信息,实现探测MII接口上数据包的巾贞起始标示(start-of-framedelimiter, SFD)标志,当探测到有数据包正在发送或者接收,则将当前时间锁存至时间戳寄存器中,从而获取到高精度的时间戳信息,时间戳寄存器117与数据包探测器116和MAC传输控制器118、119相连并传输时间戳信息,实现记录发送和接收报文的时间戳,MAC传输控制器118和119与带时间戳管理的以太网媒体访问控制器模块中的其它单元相连并传输PTP数据包、地址、循环冗余码、时间戳等信息,实现数据链路层(基于标准IEEE 802.3)的功能以及判断PTP数据包类型,控制所有PTP数据包的发送和接收过程,并在线的将捕获到的时间戳信息添加至正在发送的Sync数据包末端,一并发送出去,从而使整个同步过程无需再发送FollowUp报文,减小了实现时钟同步所需的通信带宽。
[0046] PTP消息的发送过程可以概括为:首先PTP协议栈通过通信接口单元将PTP消息数据包写入发送FIR) 111中,写入完毕后通知MAC发送控制器118开始启动发送状态机进行数据包的发送,发送顺序依次为以太网前导符,数据帧的起始定界符,地址缓冲器113中的目标地址,发送FIR) 111中的源地址、以太网帧类型和其他有效数据,最后发送由CRC校验单元115产生32位的CRC值。在数据包发送的过程当中,数据包探测器116探测到MII 接口上数据包的SFD标志,并将当前时间锁存至时间戳寄存器117中,从而获取到精确的发送时间戳信息。MAC发送控制器118通过判断PTP数据包类型,在线的将捕获到的时间戳信息添加至正在发送的Sync报文有效数据的后面,一并发送出去,从而使整个同步过程无需再发送FollowUp报文,减小了实现时钟同步所需的通信带宽。报文数据流经由MII接口单元110发送至物理层收发器模块13。
[0047] PTP消息的接收过程可以概括为:首先物理层收发器模块13经由MII接口单元将报文数据流传输至MAC接收控制器119,经过地址过滤器114和CRC校验115通过后,启动接收状态机进行PTP数据包的接收,并将其有效数据保存至接收FIR)112中。在数据包接收的过程当中,数据包探测器116探测到MII接口上数据包的SFD标志,并将当前时间锁存至时间戳寄存器117中,从而获取到精确的接收时间戳信息。
[0048] 如图3所示,本发明方法针对主时钟本地参考时钟模块12的具体实施方式详细描述为:当模块被触发时,在原有的系统时间基础上增加一个时钟周期的数值,此时钟周期取决于本地晶振和对锁相环电路(PLL)的配置,在本实施例中,本地晶振采用50MHz的有源晶振,而时钟周期配置为20ns。
[0049] 如图4所示,本发明方法针对从时钟本地参考时钟模块12的具体实施方式详细描述为:对于从时钟,除了要完成系统时间计数功能以外,还有进行频率补偿,以期达到和主时钟相位同步和频率同步。在本实施例中,从时钟的本地参考时钟模块实质为一个频率补偿时钟,主要由一个64位时钟计数器、一个32位累加器和一个32位加数寄存器构成。本地晶振和与主时钟相同,为50MHz,再经过PLL倍频成100MHz的时钟信号提供给频率补偿时钟模块。当模块被触发时,累加器将自身的值与存储在加数寄存器中的值相加,结果存储在累加器中,同时产生一个进位标志位表示这次的加法操作是否溢出,当发生溢出,系统时间需要增加一个时钟周期的数值。单位时间内时钟计数器数值增加的次数是由加数寄存器的值和时钟信号共同决定的,通过时钟同步算法得到的频率补偿值改变存储在加数寄存器中的加数,相当于调整了累加器进行加法操作时发生溢出的频率,从而改变时钟计数器增加的频率,实现了对晶振频率的补偿。[0050] 图5为实施例中IEEE 1588时间同步方法的实现过程示意图,如图5所示,具体实施方式包括以下步骤:
[0051] A、主时钟以组播方式每隔2秒周期性的向从时钟发送Sync同步报文,由于本发明提出了一种数据链路层和时钟同步的时间戳处理模块集成在一起的硬件实现方式,因此Sync同步报文中包含精确的发送时间戳信息(即Sync同步报文发送时的主时钟本地时间),记为tM1 [k],其中k代表第k次同步过程;
[0052] B、从时钟收到Sync同步报文,记录接收时的本地时间tsl[k],并从Sync同步报文中提取出Sync同步报文的发送时间tM1[k],然后通过调用时钟同步算法,得到从时钟相对于主时钟的时间偏移量Offset [k]和频率补偿值FreqCompValue [k]。时间偏移量Offset [k]的计算公式为:
[0053] Offset [k] = tsl [k] _tM1 [k] _Delay_latest ;
[0054] 其中:Delay_latest为最近一次的线路时延测量值。频率补偿值FreqCompValue [k]的计算公式为:
[0055]
Figure CN101977104BD00101
[0056] 其中:r [k]为从时钟第k次收到同步报文时所对应的主时钟系统时间,从时钟根据测量的线路时延值对其值进行估计,估计值为:r[k] = tM1[k]+Delay_latest ;y[k]为从时钟第k次收到同步报文时的从时钟系统时间,其值为:y[k] = tsl[k];频率补偿值初始值FreqCompValue[O]的取值取决于频率补偿时钟中q和r的取值以及PLL的配置。在本实施例中,FreqCompValue[O] = 0x80000000。每个同步过程计算得到的频率补偿值FreqCompValue [k],将直接作用于所述的频率补偿时钟模块12。
[0057] C、从时钟并不需要在每个同步过程都进行线路时延测量,相邻两次测量之间的时间间隔为随机的,从而避免子网中的多个从时钟同时向主时钟请求发送DelayReq报文,造成主时钟接收时发生拥塞。当本次同步过程允许进行线路时延测量时,从时钟在时钟同步算法结束后,发送DelayReq请求报文,并记录下该报文的发送时间戳信息tS2[k]。主时钟在接收DelayReq请求报文时,记录接收时间戳信息!^[k]以及该从时钟的地址信息,然后以单播形式向相应的从时钟发送DelayResp响应报文。从时钟在接收到DelayResp响应报文后,提出出时间戳信息[k],然后依据相应公式得到新测量出的线路时延值Delay_neW。该计算公式为:
[0058] Delay_new = ((tsl [k] -tM1 [k]) + (tS2 [k] -tM2 [k])) /2 ;Delay_latest = Delay_new ;
[0059] 其中:k为第k次时钟同步过程,且在该时钟同步过程中进行了线路时延测量。
[0060] 经过所述的IEEE 1588时间同步方法的三个步骤后,就能保证从时钟和主时钟之间的相位同步和频率同步。

Claims (8)

1. 一种基于IEEE 1588精确时钟同步协议系统,其特征在于,包括:CPU管理和控制模块、带时间戳管理的以太网媒体访问控制器模块、本地参考时钟模块以及物理层收发器模块,其中=CPU管理和控制模块通过总线与带时间戳管理的以太网媒体访问控制器模块相连,用于管理所述时间同步系统并实现PTP协议和时钟同步,带时间戳管理的以太网媒体访问控制器模块用于实现PTP消息的解析、时间戳的获取并根据通信标准IEEE 802. 3完成带时间戳数据包的发送和接收,本地参考时钟模块与CPU管理和控制模块相连并传输报文以提供本地时钟的基准,物理层收发器模块通过标准的独立媒体接口与带时间戳管理的以太网媒体访问控制器模块相连,为设备之间的数据通信提供传输媒体及互连设备,提供可靠的数据传输环境; 所述的带时间戳管理的以太网媒体访问控制器模块包括=MII接口单元、收发FIFO单元、地址缓冲器、地址过滤器、CRC校验单元、数据包探测器、时间戳寄存器以及MAC传输控制器,其中=MII接口单元与物理层收发器模块相连并传输与数据包相关的数据、时钟和控制信息,收发FIFO单元与CPU管理和控制模块以及MAC传输控制器相连并传输PTP数据包信息,实现待发送数据包和已接收到的数据包的存储,地址缓冲器和地址过滤器分别与MAC传输控制器相连并传输地址信息,实现存储目标节点的地址信息和对接收到的除广播包外数据包进行地址过滤,CRC校验单元与MAC传输控制器相连并传输循环冗余码信息,实现产生CRC校验码和进行CRC校验,提高传输的可靠性,数据包探测器与时间戳寄存器相连并传输捕获到的时间戳信息,实现探测MII接口上数据包的帧起始标示标志,当探测到有数据包正在发送或者接收,则将当前时间锁存至时间戳寄存器中,从而获取到高精度的时间戳信息,时间戳寄存器与数据包探测器和MAC传输控制器相连并传输时间戳信息,实现记录发送和接收报文的时间戳,MAC传输控制器与带时间戳管理的以太网媒体访问控制器模块中的其它单元相连并传输PTP数据包、地址、循环冗余码、时间戳信息,实现基于标准IEEE802. 3的数据链路层的功能以及判断PTP数据包类型,控制所有PTP数据包的发送和接收过程,并在线的将捕获到的时间戳信息添加至正在发送的Sync同步数据包末端,一并发送出去,从而使整个同步过程无需再发送FollowUp跟随报文,减小了实现时钟同步所需的通信带宽。
2.根据权利要求I所述的基于IEEE 1588精确时钟同步协议系统,其特征是,所述的CPU管理和控制模块包括:通信接口单元和PTP协议栈;其中:通信接口单元分别接收来自PTP协议栈的数据并通过事件中断的方式读取带时间戳管理的以太网媒体访问控制器模块中的数据包并打包后通过总线发送至带时间戳管理的以太网媒体访问控制器模块,PTP协议栈判断当前节点在网络中所处的主时钟或者从时钟状态并发送报文至带时间戳管理的以太网媒体访问控制器模块。
3.根据权利要求I所述的基于IEEE 1588精确时钟同步协议系统,其特征是,所述的发送报文是指:当PTP协议栈判断本节点为主时钟,则周期的发送同步报文,并在接收到从时钟发送过来的延迟请求报文后,发送延迟响应报文;当PTP协议栈判断本节点为从时钟,则在接收到从时钟发送过来的Sync同步报文后,启动时钟同步算法将计算出的频率补偿值传输至本地参考时钟模块,同时从时钟向主时钟发送DelayReq延迟请求报文。
4.根据权利要求3所述的基于IEEE 1588精确时钟同步协议系统,其特征是,所述的时钟 同步算法是指:根据同步过程中的时间戳信息和测量得到的从时钟和主时钟之间的时间偏移量计算出相应的从时钟频率补偿值。
5.根据权利要求I所述的基于IEEE 1588精确时钟同步协议系统,其特征是,所述的本地参考时钟模块内置晶体振荡器以及频率补偿电路以生成工作时钟,当对应设备为主时钟且本地参考时钟模块被触发时,则本地参考时钟模块对应输出的系统时间增加一个时钟周期的数值;当对应设备为从时钟且本地参考时钟模块被触发时,该本地参考时钟模块启动内部的频率补偿电路。
6.根据权利要求5所述的基于IEEE 1588精确时钟同步协议系统,其特征是,所述的频率补偿电路包括Φ位时钟计数器、q位累加器和r位加数寄存器,其中:加数寄存器与CPU管理和控制模块相连并传输频率补偿信息,实现对时钟同步算法计算出的频率补偿值进行锁存,累加器与加数寄存器相连,实现对加数寄存器锁存的频率补偿值进行累加操作并产生进位标志位,时钟计数器与累加器相连,实现本地系统时间的输出,当累加器产生进位标志位,时钟计数器将系统时间增加一个时钟周期的数值。
7. 一种根据权利要求2所述系统的同步方法,其特征在于,包括以下步骤: 第一步、主时钟通过自身内置的CPU管理和控制模块以组播的形式,周期发送Sync同步报文,该同步报文带有精确的发送时间戳tM1[k],所述从时钟接收该Sync报文并记录接收时间戳tsl [k],其中k代表第k次时钟同步过程;从时钟利用最近测量的线路时延值Delay_lateSt,并按照预设的时间偏移量计算公式和频率补偿计算公式算出从时钟与主时钟之间的时间偏移量Offset [k]和频率补偿值FreqCompValue [k],然后利用所述频率补偿值对从时钟的本地参考时钟模块进行校正; 第二步、从时钟向所述主时钟发送DelayReq延迟请求报文,记录发送时间戳tS2[k],主时钟接收并解析该DelayReq延迟请求报文,并向所述从时钟回复DelayResp延迟请求报文,所述从时钟在收到DelayResp延迟请求报文后,记录该报文所带有的时间戳信息ti2[k];然后依据相应公式得到新测量出的线路时延值Delay_new。
8.根据权利要求7所述的同步方法,其特征是,第一步中所述的最近测量的线路时延值 Delay_new = ((tsl[k]-tM1 [k]) + (tS2[k][k]))/2,其中:k 为第 k 次时钟同步过程,且在该时钟同步过程中进行了线路时延测量;所述的预设的时间偏移量Offset[k]=tsl [k] -tM1 [k] -Delay_latest,其中:Delay_latest = Delay_new,初始值为 0,k 为第k次时钟同步过程,不论该时钟同步过程中是否进行线路时延测量;所述的频率补偿值FreqCompValue [k]通过以下方式获得:
Figure CN101977104BC00031
其中:r[k]为从时钟第k次收到同步报文时所对应的主时钟系统时间,从时钟根据测量的线路时延值对其值进行估计,估计值为:r[k] = tM1[k] +Delay_latest ;y[k]为从时钟第k次收到同步报文时的从时钟系统时间,其值为:y[k] =tsl[k];频率补偿值初始值FreqCompValue [O]的取值取决于频率补偿时钟中q和r的取值以及PLL,即对锁相环电路的配置。
CN 201010542983 2010-11-13 2010-11-13 基于ieee1588精确时钟同步协议系统及其同步方法 Active CN101977104B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201010542983 CN101977104B (zh) 2010-11-13 2010-11-13 基于ieee1588精确时钟同步协议系统及其同步方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201010542983 CN101977104B (zh) 2010-11-13 2010-11-13 基于ieee1588精确时钟同步协议系统及其同步方法

Publications (2)

Publication Number Publication Date
CN101977104A CN101977104A (zh) 2011-02-16
CN101977104B true CN101977104B (zh) 2013-01-09

Family

ID=43576954

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201010542983 Active CN101977104B (zh) 2010-11-13 2010-11-13 基于ieee1588精确时钟同步协议系统及其同步方法

Country Status (1)

Country Link
CN (1) CN101977104B (zh)

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102104475B (zh) * 2011-01-31 2013-07-03 上海交通大学 基于ieee1588的同步系统及其同步方法
CN102123002B (zh) * 2011-03-07 2015-03-25 上海华为技术有限公司 一种基于IPsec的频率同步方法和相关设备
CN102201910A (zh) * 2011-05-09 2011-09-28 中兴通讯股份有限公司 基于ieee1588协议调整频率的方法及网络装置
FI123504B (fi) * 2011-05-25 2013-06-14 Tellabs Oy Menetelmä ja laite taajuustahdistuksen ohjaamiseksi
CN102215078A (zh) * 2011-06-09 2011-10-12 国网电力科学研究院 一种基于fpga的硬件时间戳实现方法
CN102394715B (zh) * 2011-06-30 2016-09-07 烟台惠通网络技术有限公司 时钟同步方法和装置
CN102244572B (zh) * 2011-07-18 2017-06-06 中兴通讯股份有限公司 一种实现时钟同步的方法及装置
CN102983959B (zh) * 2011-09-05 2015-05-13 盛科网络(苏州)有限公司 在多个mac中实现ptp一步模式和两步模式的方法及装置
EP2568631B1 (de) * 2011-09-09 2018-04-25 Siemens Aktiengesellschaft Verfahren zur Übertragung von Synchronisationsnachrichten in einem Kommunikationsnetz
CN103138887B (zh) * 2011-12-05 2018-01-30 中兴通讯股份有限公司 一种1588事件报文的处理方法及系统
CN102404105A (zh) * 2011-12-14 2012-04-04 盛科网络(苏州)有限公司 以太网交换机上实现时间同步的装置及方法
US8862802B2 (en) 2011-12-30 2014-10-14 Bedrock Automation Platforms Inc. Switch fabric having a serial communications interface and a parallel communications interface
US8868813B2 (en) 2011-12-30 2014-10-21 Bedrock Automation Platforms Inc. Communications control system with a serial communications interface and a parallel communications interface
US8971072B2 (en) 2011-12-30 2015-03-03 Bedrock Automation Platforms Inc. Electromagnetic connector for an industrial control system
US9437967B2 (en) 2011-12-30 2016-09-06 Bedrock Automation Platforms, Inc. Electromagnetic connector for an industrial control system
US9727511B2 (en) 2011-12-30 2017-08-08 Bedrock Automation Platforms Inc. Input/output module with multi-channel switching capability
US11144630B2 (en) 2011-12-30 2021-10-12 Bedrock Automation Platforms Inc. Image capture devices for a secure industrial control system
JP7029220B2 (ja) * 2015-02-09 2022-03-03 ベドロック・オートメーション・プラットフォームズ・インコーポレーテッド 多チャネル切り替え能力を有する入力/出力モジュール
US11314854B2 (en) 2011-12-30 2022-04-26 Bedrock Automation Platforms Inc. Image capture devices for a secure industrial control system
CN102664725B (zh) * 2012-04-26 2015-09-16 成都交大光芒科技股份有限公司 客运专线综合监控系统中时钟同步子系统实现方法
WO2013163803A1 (en) * 2012-05-03 2013-11-07 Telefonaktiebolaget L M Ericsson (Publ) Intelligent supervision for configuration of precision time protocol (ptp) entities
CN102684175B (zh) * 2012-06-05 2015-11-18 国家电网公司 一种微电网保护的实现方法
CN102780554A (zh) * 2012-07-17 2012-11-14 中兴通讯股份有限公司 一种通过1588协议实现同步的方法及系统
CN103905135B (zh) * 2012-12-24 2017-11-24 中国移动通信集团公司 实现时间同步的方法、设备和系统
CN103220774B (zh) * 2013-02-27 2016-07-06 重庆邮电大学 一种借助蜂窝网进行精密授时的方法及系统
CN103236896B (zh) * 2013-04-07 2016-09-28 北京全路通信信号研究设计院集团有限公司 一种车载控制设备的时钟调整方法和系统
CN103209069A (zh) * 2013-05-07 2013-07-17 浙江赛思电子科技有限公司 基于精确时间协议的时间同步装置和方法
CN103259640B (zh) * 2013-05-28 2016-08-31 杭州华三通信技术有限公司 一种同步时间的方法和设备
CN103607359B (zh) * 2013-06-28 2018-01-19 王健 一种交换式以太网链路层实现精确时延传输控制的方法
CN104348568A (zh) * 2013-07-23 2015-02-11 中兴通讯股份有限公司 时间同步处理方法及装置
US10834820B2 (en) 2013-08-06 2020-11-10 Bedrock Automation Platforms Inc. Industrial control system cable
US10613567B2 (en) 2013-08-06 2020-04-07 Bedrock Automation Platforms Inc. Secure power supply for an industrial control system
US9191203B2 (en) 2013-08-06 2015-11-17 Bedrock Automation Platforms Inc. Secure industrial control system
US10834094B2 (en) 2013-08-06 2020-11-10 Bedrock Automation Platforms Inc. Operator action authentication in an industrial control system
KR101974323B1 (ko) * 2013-10-30 2019-04-30 인텔 코포레이션 회로의 물리 유닛에서 지연을 측정하는 방법, 장치 및 시스템
CN103618592B (zh) * 2013-11-22 2017-01-04 华为技术有限公司 一种pwm同步方法及装置
CN103647631A (zh) * 2013-12-13 2014-03-19 国网上海市电力公司 一种智能化变电站用时钟同步检测装置及检测方法
CN103746789B (zh) * 2013-12-18 2017-04-26 北京四方继保自动化股份有限公司 一种基于cpu通用定时器来实现ieee‑1588协议中高精度时标的方法
CN103916461B (zh) * 2014-03-10 2017-04-26 京信通信系统(中国)有限公司 报文的传输方法及装置
CN103812595B (zh) * 2014-03-11 2016-07-06 重庆邮电大学 一种基于ieee1588同步机制的tps时间同步改进算法
CN105577348B (zh) * 2014-10-08 2020-06-30 中兴通讯股份有限公司 一种基于时间同步网的频偏监测方法和装置
CN104243079A (zh) * 2014-10-09 2014-12-24 四川省绵阳西南自动化研究所 一种实时以太网的微秒级时钟同步方法
CN105634715A (zh) * 2014-10-31 2016-06-01 中国飞行试验研究院 一种机载网络ieee1588协议透明时钟端口同步方法
CN105634716A (zh) * 2014-10-31 2016-06-01 中国飞行试验研究院 一种机载网络ieee1588协议从时钟端口同步方法
CN105703892A (zh) * 2014-11-24 2016-06-22 管晓权 一种基于硬件时间戳实现ptp纳秒级精度的方法
CN104579623B (zh) * 2014-12-23 2017-10-13 国电南瑞科技股份有限公司 一种电力系统二次设备网络对时系统及方法
CN106549822B (zh) * 2015-09-16 2019-12-06 中国移动通信集团公司 测试时间同步报文的响应时间的方法、装置及测试设备
EP3358781A4 (en) * 2015-09-30 2019-04-17 Sony Corporation DATA PROCESSING DEVICE AND DATA PROCESSING METHOD
CN105515709A (zh) * 2015-12-07 2016-04-20 中国电子科技集团公司第三十二研究所 基于国产FPGA和uclinux操作系统的时间同步装置
CN105978652B (zh) * 2016-04-27 2018-02-13 刘巍 冗余以太网的同步对时设备、系统及方法
CN106506107B (zh) * 2016-11-25 2019-03-12 武汉中科坤德科技有限公司 一种基于硬件时间戳的ntp服务器授时实现方法
CN106488550B (zh) 2016-12-20 2019-11-12 华为技术有限公司 确定终端与基站时钟时间偏差的方法与装置
KR20180099140A (ko) * 2017-02-28 2018-09-05 한국전자통신연구원 클럭 동기화 장치 및 방법
CN107483402B (zh) * 2017-07-12 2019-12-06 瑞斯康达科技发展股份有限公司 一种时钟同步方法和设备
BR112020007273A2 (pt) * 2017-10-13 2020-10-27 Huawei Technologies Co., Ltd. método e aparelho para enviar e receber pacote de sincronização de relógio
CN108429596B (zh) * 2018-01-26 2019-08-02 武汉中元华电电力设备有限公司 一种用于IEEE 1588v2协议的以太网MAC模块实现装置及实现方法
CN110120846B (zh) * 2018-02-05 2020-11-13 大唐移动通信设备有限公司 一种时钟同步方法和系统
CN108737809B (zh) * 2018-06-05 2020-10-23 电子科技大学 一种远程同步图像采集方法
CN110492965B (zh) * 2019-09-05 2021-05-28 南京南瑞继保电气有限公司 一种主从系统内串行报文对时的方法和装置
CN112887045A (zh) * 2019-11-29 2021-06-01 杭州海康威视数字技术股份有限公司 报文传输方法、装置、fpga及电子设备
CN112887046B (zh) * 2019-11-29 2022-04-29 烽火通信科技股份有限公司 一种边界时钟和普通时钟数字化时间同步方法及系统
CN112953669B (zh) * 2019-12-11 2022-04-29 烽火通信科技股份有限公司 一种提高时间戳精度的方法及系统
CN111682919A (zh) * 2020-06-25 2020-09-18 安徽理工大学 一种基于时间敏感网络的井下传感设备时间同步方法
CN111884901B (zh) * 2020-07-01 2021-10-22 浙江杰芯科技有限公司 一种基于环形网络的时钟同步路径查询方法及系统
CN112073264A (zh) * 2020-08-31 2020-12-11 新华三信息安全技术有限公司 一种协议探测方法、装置和网络设备
CN112566087B (zh) * 2020-12-07 2022-05-03 南京航空航天大学 一种支持MavLink协议的多智能体ZigBee通信方法
CN112769515A (zh) * 2020-12-24 2021-05-07 上海微波技术研究所(中国电子科技集团公司第五十研究所) 基于无线电台的双向授时与测距系统及方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101068128A (zh) * 2006-05-02 2007-11-07 三星电子株式会社 在分布式控制系统中用于时间同步的方法
CN101232457A (zh) * 2008-02-22 2008-07-30 浙江大学 一种基于ieee1588协议的高精度实时同步方法
CN101388741A (zh) * 2008-10-24 2009-03-18 中国科学院计算技术研究所 一种用于计算机网络的高精度时间同步设备、系统及方法
CN101447861A (zh) * 2008-12-29 2009-06-03 中兴通讯股份有限公司 Ieee 1588时间同步系统及其实现方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101068128A (zh) * 2006-05-02 2007-11-07 三星电子株式会社 在分布式控制系统中用于时间同步的方法
CN101232457A (zh) * 2008-02-22 2008-07-30 浙江大学 一种基于ieee1588协议的高精度实时同步方法
CN101388741A (zh) * 2008-10-24 2009-03-18 中国科学院计算技术研究所 一种用于计算机网络的高精度时间同步设备、系统及方法
CN101447861A (zh) * 2008-12-29 2009-06-03 中兴通讯股份有限公司 Ieee 1588时间同步系统及其实现方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A clock synchronization method based on IEEE 1588 and its implementation on Ethernet;Xu Wan et al.;《Journal of Chongqing University(English Edition),2008》;20080615(第2期);全文 *
Xu Wan et al..A clock synchronization method based on IEEE 1588 and its implementation on Ethernet.《Journal of Chongqing University(English Edition),2008》.2008,(第2期),全文.

Also Published As

Publication number Publication date
CN101977104A (zh) 2011-02-16

Similar Documents

Publication Publication Date Title
CN101977104B (zh) 基于ieee1588精确时钟同步协议系统及其同步方法
CN102104475B (zh) 基于ieee1588的同步系统及其同步方法
JP5811794B2 (ja) 通信装置
US8879586B2 (en) Inband timestamping
US9742514B2 (en) Method, apparatus, and system for generating timestamp
US9667370B2 (en) Communication device with peer-to-peer assist to provide synchronization
CN101083523B (zh) 一种实现集成时间戳时钟同步锁相环的方法及装置
CN108650051B (zh) 通用全硬件一步式1588的时钟同步装置及方法
JP5518191B2 (ja) 光伝送網が時刻同期プロトコルをキャリングする方法及びシステム
CN105846941B (zh) 基于ieee 1588标准的时钟透明传输装置及方法
CN101951312A (zh) 基于e1链路的双向时频同传方法及主从装置
JP5127482B2 (ja) タイミング同期方法、同期装置、同期システム及び同期プログラム
CN100479361C (zh) 同步媒介访问控制器
JP2002374231A (ja) ネットワーク同期方法、lsi、バスブリッジ、ネットワーク機器、およびプログラム
US11050501B2 (en) Performing PHY-level hardware timestamping and time synchronization in cost-sensitive environments
WO2020135857A1 (zh) 时间同步方法、系统、设备及存储介质
CN109039514A (zh) 一种提高ieee1588时间戳精度的方法
CN104378193A (zh) 时间同步系统及方法、交换机、嵌入式接口板
CN103647614A (zh) 基于ieee1588协议的可靠提高时间同步精度方法
Dong et al. The Design and Implementation of IEEE 1588v2 Clock Synchronization System by Generating Hardware Timestamps in MAC Layer
US20220029724A1 (en) A tsn enabled controller
CN203596827U (zh) 时间同步系统、交换机、嵌入式接口板
CN101420281B (zh) 用于在网络要素之间传送日内时间值的方法和装置
Horauer Clock synchronization in distributed systems
CN201789509U (zh) 基于e1链路的双向时频同传主从装置

Legal Events

Date Code Title Description
PB01 Publication
C06 Publication
SE01 Entry into force of request for substantive examination
C10 Entry into substantive examination
GR01 Patent grant
C14 Grant of patent or utility model