精确的韶光同步技能在掌握系统中霸占主要地位,随着嵌入式掌握系统运用范围的不断增长和运用规模的不断扩大,同步系统内各分散节点的时钟同步变得越来越主要。IEEE 1588协议[2]的发展和成熟供应了一种低本钱高精度的网络时钟同步办理方案。
它利用以太网络使终端设备同步,仅靠软件实现就可达到亚微秒级精度,在硬件支持下可达到纳秒级。同时,IEEE 1588协议对资源哀求非常低,易于高中低端设备之间的兼容。因此,嵌入式IEEE 1588精确时钟同步技能也成为了实时掌握系统非常关心的研究课题。
本文在IEEE 1588协议研究的根本上,通过软件和硬件相结合的路子,并采取硬件赞助实现IEEE 1588标准的精确韶光同步协议(PTP)方法,设计了嵌入式IEEE 1588时钟同步软硬件系统,在平台测试中取得了高精度的时钟同步,测试结果能很好的知足工业掌握、通信、电力等行业对时钟同步精度的哀求。

IEEE 1588时钟同步系统事情于主从模式,借助时钟同步报文完成时钟校准。主时钟周期性发送同步报文,从时钟根据吸收到的报文的韶光戳信息,打算出主从线路报文传输的韶光延迟和主从时钟的时钟偏移,并相应地调度本地韶光,使从时钟保持与主时钟同等的韶光基准。IEEE 1588时钟同步过程由时钟偏移丈量和网络延迟丈量2个阶段组成。
如图1所示,在时钟偏移丈量阶段,主时钟相继发送同步报文和跟随报文给从时钟,从时钟吸收报文并记录韶光戳。在网络延迟丈量阶段,从时钟发送延时要求报文和吸收相应的相应报文,并分别记录发送和吸收报文的韶光戳。从时钟根据一个同步周期内所记录的四个韶光戳打算出时钟偏差和网络延迟并以此改动本地时钟,系统不断重复这个过程,保持时钟同步。
图1 IEEE 1588同步事理
IEEE 1588时钟同步协议实现1 时钟同步模块
嵌入式时钟同步模块分为主控模块和网络通信模块两个部分。其硬件实物如图2所示,在该时钟同步模块中,主控模块(图2右侧)搭载了微掌握器和实时时钟、串口和USB接口等;网络通信模块配置有电源模块、网口模块和必要的GPIO接口等。
图2 支持IEEE 1588协议的嵌入式掌握模块
主控模块选取供应MII接口的主控芯片STM32F107VC。以太网通信模块PHY芯片选取支持IEEE 1588精确时钟同步功能的DP83640[5,6]。该芯片内配置有高精度IEEE 1588时钟,并设有由硬件实行的韶光标记功能,可在物理层为吸收及发送的信息包打上韶光标记。在所有的事情模式下均能确定报文收发的精确韶光,将理论对时精度提高到了8ns。
2 系统软硬件设计
提高IEEE 1588时钟同步的精度关键在于提高韶光戳的精度。如图3所示,我们可以在A、B、C三个位置标记韶光戳(个中A和B处为软件标记韶光戳,C处为硬件标记韶光戳),而越靠近物理层,韶光戳的精度越高,同步系统可达到的同步精度越高。
物理层芯片DP83640集成了能够对收发数据包并加盖韶光戳的硬件(即可在C处标记韶光戳),它能够准确的反响IEEE 1588报文的实际发送和吸收韶光,可以肃清协议栈的延时和抖动,从而打算得到的报文在传输路径上的延时和主从时钟偏差也更精确。
基于此,本实验时钟同步模块采取硬件标记韶光戳的办法实现IEEE 1588协议,以GPS时钟为参考时钟源,并通过UDP/IP通信完成系统时钟同步。该时钟同步模块构造如图3所示。
图3 时钟同步模块构造
时钟同步模块软件部分由驱动层、协议层、运用层组成,分别完成底层硬件掌握、通信与同步、人机交互等功能。
个中,驱动层分为标准驱动、以太网驱动以及PTP时钟驱动三部分;协议层分为TCP/IP协议与PTP协议两部分;运用层分为串口通信、以太网通信、实时时钟、精确韶光同步等部分。
在协议层中,嵌入式的TCP/IP协议栈采取LwIP实现,LwIP协议栈以太网信息吸收采纳中断相应机制,当MAC吸收到网络旗子暗记之后将引发以太网中断,主控芯片进入中断函数,先跳入干系底层处理函数,再进入协议栈做相应处理;而LwIP协议栈以太网信息发送则由运用层协议通过协议栈逐层向下通报信息,至MAC层后,调用干系底层处理函数进行发送。
在PTP实现过程中,采取本地时钟算法。时钟同步系统上电后,各模块进入主从时钟剖断程序,首先确定各模块的主、从时钟事情状态,进而通过UDP收发报文,记录各报文韶光戳,打算主从时钟偏差改动本地时钟。图4软件系统流程图(a、b)中列出了主从时钟模块的同步事情过程。
图4 软件系统流程图
同步性能测试与剖析1 基于IEEE 1588时钟同步测试平台
基于IEEE 1588时钟同步系统测试平台如图5所示,该系统事情在主从模式,采纳点对点通信,精确时钟源由GPS授时模块供应,该韶光作为PTP时钟源旗子暗记供应给IEEE 1588时钟同步模块,并将该模块时钟端口配置为主时钟状态,与之相对应的时钟模块配置为从时钟状态。在平台测试中,将两个时钟同步模块的PPS输出口接至数字示波器,来比较主从时钟节点的同步偏差,丈量该系统时钟同步精度。
图5 基于IEEE 1588时钟同步测试平台
2 测试结果及剖析
基于IEEE 1588时钟同步测试平台系统建立之后,须要对时钟同步系统的性能进行测试剖析。本文根据同步报文发报周期取不同韶光值(标准周期默认为2s),紧张进行3次测试,实验同步报文发报周期分别取4s、2s、1s,对主从时钟同步模块进行IEEE 1588时钟同步测试。
图6 时钟同步测试结果
图7 测试结果比拟图
测试结果如图6所示,个中图中a、b、c分别为同步报文发报周期为4s、2s、1s时的同步偏差分布图,图7为不同同步报文发送周期时的测试结果比拟图,在此我们可以更直不雅观的不雅观测不同同步报文发送周期下的系统时钟同步偏差。
由图6、7测试结果表明:当同步报文发报周期取4s时,主从时钟节点之间IEEE 1588同步精度测试结果优于200ns;当同步报文发报周期取2s时,主从时钟节点之间IEEE 1588同步偏差在100ns以内;当同步报文发报周期取1s时,主从时钟节点之间IEEE 1588同步精度能够达到50ns。
表1 不同同步报文发送周期下的时钟同步测试结果
表1中列出了同步报文不同发送周期下的时钟同步测试结果,同步报文发送周期越短,时钟同步精度越高,但随着同步报文发送周期的减小,系统内网络流量随之增加,在实际运用中网络包袱也会随之加重,在运行中可能会降落系统时钟同步性能。
结论本文在对IEEE 1588精确韶光同步事理进行剖析的根本上,设计了嵌入式IEEE 1588时钟同步软硬件系统,并在平台测试中实现了高精度时钟同步,提高了分布式系统中各节点的同步性能,可以极好地知足了工业掌握等分布式通信系统高精度同步哀求,从运用本钱和时钟同步精度等方面来考虑,可广泛运用于数字化变电站、智能电网、工业掌握和通信等行业领域。
(编自《电气技能》,作者为周峰、刘迎澍 等。)