新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > ARM-WinCE分布式系统平台的时钟同步设计

ARM-WinCE分布式系统平台的时钟同步设计

作者:时间:2013-10-15来源:网络收藏
随着计算机技术、网络通信技术的进步,组建分布式网络化测试系统,提高测试效率、共享信息资源,已成为现代测试系统发展的方向。分布式测试系统通过网络等通信媒介把分布于各测试点、独立完成特定功能的测试设备连接起来,以达到测试资源共享和协同工作等目的。是分布式系统的核心技术之一,其目的是维护一个全局一致的物理或逻辑时钟,使得系统内各个节点中与时间有关的信息、事件及行为有一个全局一致的解释。IEEE1588精确时钟协议是当前分布式测试系统中研究的热点。采用硬件支持的IEEE1588协议能够在以太网中不同结点之间实现纳秒级的,为工厂自动化、测试和测量以及通信等领域需要高精度时钟同步的应用提供了一种有效的解决方案。本文采用具有IEEE1588精确时钟协议硬件支持功能DP83640芯片在基于的嵌入式系统平台上实现IEEE1588协议,为基于嵌入式系统的智能测试仪器组成分布式测试系统奠定了基础。

1 IEEE1588协议原理

IEEE1588的全称是“网络测量和控制系统的精密时钟同步协议标准”,简称精确时钟协议(Precision Time Protocol,PIP)。IEEE1588协议是通用的提升网络系统定时同步能力的规范,在起草过程中主要参考以太网来编制,使分布式通信网络能够具有严格的定时同步,并且应用于工业自动化系统。基本构思是通过硬件和软件将网络设备(客户机)的内时钟与主控机的主时钟实现同步,提供同步建立时间小于10μs的运用,与未执行IEEE1588协议的以太网延迟时间1000μs相比,整个网络的定时同步指标有显著的改善。

IEEE1588时钟协议在进行时钟同步时,主时钟设备按照一定的时间间隔(一般为2 s)周期性地以广播方式发送同步报文(Sync)和同步跟随报文(FollowUp),且在FollowUp报文中记录Sync报文的发送时间戳t1,而从时钟设备接收Syne报文记录接收时间戳为t2;然后,从时钟设备节点定期发送延迟请求报文(Delay_Req)(一般4~60 s发送一次),并记录其发送时间戳t3,主时钟设备接收判延迟请求后,记录接收时间戳t4,并给相应从节点发送延迟请求响应报文(Delay_Resp),该报文信息中包古时间戳t4。通过得到的4个时间戳,可以计算出主从时钟之间的偏移量Toffset和网络传输的线路延迟ms_delay,其过程如图1所示。



得到了从时钟与主时钟之间的时间偏移值,就可以采用适当的调节算法来调节从时钟,最终使得从时钟与主时钟同步。从时钟并不是每个同步周期都需要进行时间同步,而是根据从时钟与主时钟之间的时间偏移值等时间信息来决定是否需要进行时间同步。当主从时钟之间建立起稳定的同步关系后,从时钟还需周期性地监听来自主时钟发布的Sync报文,一旦出现主从时钟之间不处于时间同步的状态,就重新进行上述的时间同步过程,直到重新达到主从时钟之间的时间同步。

IEEE1588协议的运行是由时间戳驱动的,时钟同步精度主要归结为时间戳的定时精度。IEEE1588使用UDP协议发送网络同步报文,基于UDP协议传输的过程都是在TCP/IP协议模型下进行数据包的逐层封装和传递的。要使时钟获得的报文发送时间和报文接收时间相对精确、稳定,且把发送延迟和接收延迟不相等这种因素对计算传播延迟产生的影响减小到最低,最好的解决办法就是在TCP/IP协议栈的底层即物理层对同步报文标记时间戳,标记时间戳的操作越接近物理层,计算得到的主从时钟的时间偏移量和传播线路延迟就越准确。要实现这一目的就必须加入专门的硬件设备。美国国家半导体公司(National Semiconductor)推出的DP83640芯片就是一款集成IEEE1588精确时钟协议硬件支持功能的以太网收发器。芯片内置高精度IEEE1588时钟,并具有由硬件执行的时间戳标记功能,可为接收及发送信息包加入时间标记。采用DP83640的同步系统,可获得纳秒级的同步精度。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭