基于STM32F407的IEEE1588从时钟设计与实现

合集下载

基于IEEE 1588的分布式无线网络时钟同步技术研究

基于IEEE 1588的分布式无线网络时钟同步技术研究

基于IEEE 1588的分布式无线网络时钟同步技术研究
分布式网络解决了测试系统因地理位置局限而产生的问题。

时钟的同步对于分布式网络中测试及数据的集中管理起到了至关重要的作用。

本文通过分析几种典型的无线网络时钟同步协议,给出了分布式无线网络系统中考核时钟同步的性能指标,展开了IEEE1588精确时钟同步协议在分布式无线网络时钟同步的研究。

对IEEE 1588协议能否在分布式无线网络中使用进行了理论性的分析,选用OPNET仿真平台,搭建了基于WLAN的分布式无线网络,通过IEEE 1588协议完成主从节点对时。

采用基于卡尔曼滤波器的滤波方法设计了适用于分布式无线网络系统的时钟偏移估计和修正模型,并验证了该算法的有效性。

经过优化后,IEEE 1588协议在分布式无线网络中的同步对时精度得到了提升。

最后,选取STM32F407作为嵌入式平台核心板搭配ATK-RM04 WIFI模块搭建了小型分布式无线网络系统,对IEEE 1588协议及基于卡尔曼滤波器的时钟偏移及修正算法进行了测试实验。

结果表明,经过卡尔曼滤波算法的处理,IEEE 1588协议在分布式无线网络中进行时钟同步所达到的同步精度,完全满足大多数分布式无线网络系统的需求。

IEEE1588的高精度时间同步算法的分析与实现

IEEE1588的高精度时间同步算法的分析与实现

IEEE1588的高精度时间同步算法的分析与实现IEEE1588,也被称为精确时间协议(PTP),是一种用于网络中实现高精度时间同步的协议。

它在各种工业应用和通信系统中被广泛采用,因为它可以提供微秒级甚至亚微秒级的精度,满足了许多应用的实时性要求。

首先,IEEE 1588协议需要在网络中选择一个主时钟(Master Clock),作为时间同步的源头。

主时钟拥有最高的时间精度,并将其时间信息通过数据包广播给其他时钟节点。

其他节点被称为从时钟(Slave Clock),它们通过接收到的时间数据来调整自身的时钟,并与主时钟保持同步。

在主时钟启动时,它会周期性地发送特殊的数据包,称为同步事件(Sync Event)。

这些数据包包含了主时钟的当前时间戳,从时钟接收到这些数据包后,会记录接收时间戳。

当从时钟收到一定数量的同步事件后,它会计算出与主时钟的相对时间差,并根据这个时间差来调整自身的时钟。

为了确保时间同步的准确性,IEEE 1588采用了两个重要的概念,即时钟同步和时间戳校准。

时钟同步通过周期性的同步事件来实现,从而减小网络延迟带来的时间误差。

而时间戳校准则通过周期性地发送延迟请求(Delay Request)和延迟响应(Delay Response)数据包来估计网络延迟,并相应地调整时间戳。

在实际的实现中,IEEE1588通常使用硬件支持或软件实现的方式。

硬件支持一般通过专用的电路芯片或FPGA来实现,它们能够提供更高的时间精度和更低的延迟。

而软件实现则是在通用的计算机上运行,通过操作系统和网络协议栈来实现时间同步功能。

在软件实现中,IEEE1588通常依赖于操作系统的时钟服务和网络协议栈。

操作系统的时钟服务提供了计算机系统的时间信息,并提供了时间戳的功能。

网络协议栈则负责封装和发送数据包,并处理收到的数据包以提取时间戳信息。

在实现中,需要考虑以下几个关键问题:1.时间同步精度:在实现中,需要根据具体应用的要求选择合适的时钟源和自适应算法,以达到所需的精度。

IEEE1588高精度同步算法的研究和实现

IEEE1588高精度同步算法的研究和实现

IEEE1588高精度同步算法的研究和实现
IEEE1588高精度同步算法的研究和实现
随着网络技术的发展,分布式控制系统中对时间同步的要求越来越高.为了满足某些领域中微秒级时间同步的要求,本文对IEEE1588高精度时间同步进行了研究,对该算法实现高精度同步的方法进行了阐述,同时对实际系统中存在的问题进行了剖析,根据分析结果,采用系统晶振补偿和OffsetTime滤波的方法对系统进行了完善,并进行了实验.实验结果表明,通过晶振补偿和OffsetTime滤波很大程度上提高了同步精度,达到了高精度同步系统的要求.
作者:桂本烜刘锦华 GUI Ben-xuan LIU Jin-hua 作者单位:桂本烜,GUI Ben-xuan(浙江大学先进控制研究所,杭州,310027) 刘锦华,LIU Jin-hua(中石油辽河油田分公司,辽宁,盘锦,124010) 刊名:电光与控制ISTIC PKU英文刊名:ELECTRONICS OPTICS & CONTROL 年,卷(期):2006 13(5) 分类号:V271.4 TN914 关键词:IEEE1588 时间同步线路延时时间偏差时钟补偿。

基于STM32F107VC的 IEEE1588精密时钟同步分析与实现

基于STM32F107VC的 IEEE1588精密时钟同步分析与实现

基于STM32F107VC的 IEEE1588精密时钟同步分析与实现张小强;谢鹏程【期刊名称】《现代电子技术》【年(卷),期】2011(034)013【摘要】随着网络化与分布式系统的应用,对系统各节点间的时钟同步精度要求越来越高,尤其在分布式运动控制中,高精度时钟同步更是一切应用的基础.针对此问题,首先分析了IEEE 1588时钟同步的基本原理,并从理论上深入研究了影响时钟同步的关键因素,经过综合分析对比各实现方案的优劣,创新性提出了具有较高性价比的基于STM32F107VC的IEEE 1588实现方案,通过捕获硬件时间戳和校正频率漂移,在自定义协议中实现了低于300 ns的高精度时钟同步.%A higher precision of clock synchronization is needed with the development of network and distributed system, and especially the high-precision clock synchronization is the foundation of all applications in a distributed "motion control system. The basic principle of IEEE 1588 standard is introduced, and the key factors which affect the clock synchronization are studied theoretically. Through comparison of various methods, the best cost-effective implementation based on STM32F107VC microprocessor is decided, and the high precision clock synchronization below 300ns is realized by capturing hardware time stamp and adjusting frequency drift.【总页数】4页(P172-174,178)【作者】张小强;谢鹏程【作者单位】华南理工大学机械与汽车工程学院,广东广州 510640;华南理工大学机械与汽车工程学院,广东广州 510640【正文语种】中文【中图分类】TN911.7-34【相关文献】1.基于ARM的IEEE1588精密时钟同步协议的实现 [J], 孔亚广;孙祥祥2.基于ARM的IEEE1588精密时钟同步协议的实现 [J], 孔亚广;孙祥祥;3.基于ARM的IEEE1588精密时钟同步协议实现 [J], 王晋祺; 陈鸿4.IEEE1588精密时钟同步协议的实现探讨 [J], 董广玉5.IEEE1588精密时钟同步协议的分析与实现 [J], 庾智兰;李智因版权原因,仅展示原文概要,查看原文内容请购买。

基于FPGA的IEEE_1588时钟同步系统的设计与实现

基于FPGA的IEEE_1588时钟同步系统的设计与实现

第13卷㊀第5期Vol.13No.5㊀㊀智㊀能㊀计㊀算㊀机㊀与㊀应㊀用IntelligentComputerandApplications㊀㊀2023年5月㊀May2023㊀㊀㊀㊀㊀㊀文章编号:2095-2163(2023)05-0064-06中图分类号:TP393文献标志码:A基于FPGA的IEEE1588时钟同步系统的设计与实现徐卓汀,商艳娟,王成群(浙江理工大学信息学院,杭州310018)摘㊀要:IEEE1588精密时钟协议用于分布式系统中各节点上独立时钟的同步,纯软件实现的IEEE1588精密时钟协议的时间戳只能标记在数据链路层,受网络传输延迟以及网络抖动的影响,时钟同步精度一般只能达到微秒级㊂本文设计了一种基于FPGA的IEEE1588协议的时钟同步系统,采用EP4CE6E22C8和RTL8201CP芯片,通过编程实现IEEE1588报文识别㊁时钟偏移补偿算法等㊂该方法进一步降低了网络传输延迟的不确定性,提高了时间戳捕获的精度㊂通过实验对主从时钟同步精度的一致性进行测试,满足设计要求㊂关键词:IEEE1588精密时钟协议;FPGA;时间戳;时钟同步DesignandimplementationofIEEE1588protocolbasedonFPGAXUZhuoting,SHANGYanjuan,WANGChengqun(SchoolofInformation,ZhejiangSci-TechUniversity,Hangzhou310018,China)ʌAbstractɔIEEE1588precisionclockprotocolisusedtosynchronizetheindependentclocksoneachnodeinthedistributedsystem.ThetimestampofIEEE1588precisionclockprotocolimplementedbypuresoftwarecanonlybemarkedonthedatalinklayer.Duetotheimpactofnetworktransmissiondelayandnetworkjitter,theclocksynchronizationaccuracycanonlyreachthemicrosecondlevel.ThispaperdesignsaclocksynchronizationsystembasedonIEEE1588protocolbasedonFPGA.EP4CE6E22C8andRTL8201CPchipsareusedtorealizeIEEE1588messagerecognitionandclockoffsetcompensationalgorithmthroughprogramming.Thismethodfurtherreducestheuncertaintyofnetworktransmissiondelayandimprovestheaccuracyoftimestampacquisition.Theexperimentmeetsthedesignrequirementsbytestingtheconsistencyofmaster-slaveclocksynchronizationaccuracy.ʌKeywordsɔIEEE1588precisionclockprotocol;FPGA;timestamp;clocksynchronization基金项目:浙江省级重点研发计划(2021C01047);流程工业综合自动化国家重点实验室开放课题基金资助项目(2021-KF-21-06,2020-KF-21-09)㊂作者简介:徐卓汀(1998-),男,硕士研究生,主要研究方向:嵌入式与物联网技术;商艳娟(1997-),女,硕士研究生,主要研究方向:物联网㊁工业互联网;王成群(1981-),男,博士,讲师,主要研究方向:工业互联网㊁AI及其在行业中的应用㊂通讯作者:王成群㊀㊀Email:cqwang@zstu.edu.cn收稿日期:2022-06-140㊀引㊀言随着分布式网络应用范围及应用规模的不断增大,同步系统内各分散节点时钟的一致性变得越来越重要,精确的时间同步技术在分布式系统中占据着越来越重要的地位[1]㊂目前,时钟同步的主要方法包括IRIG-B(InterRangeInstrumentationGroup-B)码时钟同步㊁网络时间协议(NTP)㊁简单网络时钟同步(SNTP)和全球定位系统(GPS)等[2]㊂传统的NTP只能提供毫秒级的时间精度,不能满足现代工业以太网的高精度时钟需求㊂SNTP协议是NTP的简化版本,采用了简化的同步算法,提高了性能,但只能满足对时间精度要求不高的系统㊂GPS可以提供微秒级的时间精度,但其需要GPS接收机这样的特殊设备,不仅成本比较高,而且不易实现[3]㊂IEEE1588精密时间协议的出现一定程度上弥补了一些时钟同步方式的不足[4]㊂IEEE1588协议基于以太网,不需要建立新的时钟网络,主从时钟通过交换时钟信息来进行同步[5]㊂通过软件实现的IEEE1588协议可以提供微秒级别的时间精度[6];通过硬件实现的IEEE1588协议可以提供纳秒级别的时间精度[7]㊂同时,硬件实现的IEEE1588协议对资源要求低,不仅可以通过支持IEEE1588协议的专用芯片实现,也可以在FPGA芯片上实现,实现成本低,适用于各种分布式系统[8]㊂本文在详细分析IEEE1588协议基本内容的基础上,通过软硬件结合的方式,在FPGA芯片上实现IEEE1588报文的检测和时间戳的捕获㊂实验验证结果表明该系统能够正常工作,能满足现代工业以太网的高精度时钟同步需求㊂1㊀IEEE1588时钟同步原理IEEE1588精确时间协议在同步过程中,主时钟和从时钟之间相互交换带有精确时间戳和预估时间戳的报文[9]㊂各个从时钟得到这些时间戳信息后,计算与主时钟的链路传输延迟和时钟偏差,进而调整从时钟,达到与主时钟同步的目的㊂IEEE1588协议的主从同步过程如图1所示[10]㊂M a s t e r S l a v eT M 1T M 4D e l a y _r e s pD e l a y _r e qF o l l o w _u pS y n cT S 2T S 3o f f e s t S l a v e _M a s t e r _d e l a y o f f e s t M a s t e r _S l a v e _d e l a y 从时钟收到的时间戳T S 2T M 1、T S 2T M 1、T S 2、T S 3T M 1、T S 2、T S 3、T M 4图1㊀IEEE1588协议的主从同步过程Fig.1㊀MasterandslavesynchronizationprocessofIEEE1588㊀㊀IEEE1588协议的同步原理是延时响应机制,通过PTP(PrecisionTimeProtocol)报文承载时间戳来完成,PTP报文分为4种:Sync同步报文㊁Follow_up跟随报文㊁Delay_req延迟请求报文㊁Delay_resp延迟请求报文㊁Delay_resp延迟请求响应报文[11]㊂一次时钟同步过程:(1)Sync报文周期性从主时钟向从时钟以广播的形式发出,主时钟在发送结束那一刻记录Sync报文离开主时钟的精确发送时间TM1;(2)主时钟将精确时间戳TM1封装进Follow_up报文中,发送给从时钟;(3)从时钟记录Sync报文到达从时钟的精确时间点Ts2;(4)从时钟发送Delay_req报文,并在发送结束那一刻记录下精确发送时间TS3;(5)主时钟记录Delay_req报文到达主时钟的精确到达时间TM4;(6)主时钟发送携带精确时间戳信息TM4的Delay_resp报文到从时钟㊂经过一次时钟同步后,从时钟寄存4个精确时间戳信息㊂利用4个时间戳可以计算链路延时和时钟偏移㊂设报文由主时钟到从时钟的链路延迟,式(1):Master_(Slave_delay)=TM1-TS2(1)㊀㊀此时主时钟与从时钟之间存在的时间偏差offset1,式(2):offset1=TS2-TM1-Master_(Slave_delay)(2)㊀㊀报文由从时钟到主时钟的链路延迟,式(3):Slave_(Master_delay)=TS3-TM4(3)㊀㊀此时从时钟与主时钟之间存在的时间偏差offset2,式(4):offset2=TM4-TS3-Master_(Slave_delay)(4)㊀㊀因为IEEE1588协议假设链路延迟是对称的,式(5):Slave_(Master_delay)=Master_(Slave_delay)(5)㊀㊀那么平均链路延迟mean_delay,式(6):mean_delay=TM4-TM1()-(TS3-TS2)2(6)此时主从时钟偏差offset,式(7):offset=TS2-TM1()-mean_delay(7)进一步计算得到offset,式(8):offset=TS2-TM1()+(TS3-TM4)2(8)对从时钟进行补偿来达到同步于主时钟的目的㊂2㊀系统软硬件设计2.1㊀时间戳标记位置IEEE1588协议的报文在交换消息过程中包含着各时钟的信息,所以时钟信息的提取对于提高同步精度有着十分重要的作用㊂时间的标记位置有3种方案,如图2所示㊂应用层传输层M A C 层P H Y网络AB C R M I I 图2㊀时间戳位置标记Fig.2㊀Timestamppositionmarking56第5期徐卓汀,等:基于FPGA的IEEE1588时钟同步系统的设计与实现㊀㊀方案A:在应用层进行时间戳的标记,虽然实现方法简单,但由于协议栈的抖动和延迟是不确定的,会导致较大误差,使用软件实现的精度只能达到毫秒级㊂方案B:在介质访问控制层(MAC),避免了协议栈的抖动和延迟,提高时间戳的标记精度,能够使用软件实现,时间精度达到微秒级[12]㊂方案C:在MAC层和物理层(PHY)之间的简化媒体独立接口(RMII)处标记时间戳,通过软硬结合的方法实现㊂目前有两种方法,一种是使用支持IEEE1588协议的专用PHY硬件芯片,如DP83640,可以在物理层检测IEEE1588报文,并将时间戳信息填充到IEEE1588报文中;第二种方法是在对原有硬件不做改变的情况下,在FPGA芯片中识别IEEE1588报文以及捕获时间戳[13]㊂时间戳的标记越接近于实际网络,抖动和延迟就越小,计算出的时钟偏差和链路延迟更接近于真实值,所以在本文的设计中,采用了方案C,因为方案C的第二种方法不需要专用的PHY芯片,而且FPGA处理速度足够快,实现方法更简单㊂2.2㊀系统硬件搭建系统硬件采用AlteraCycloneIV系列中的EP4CE6E22C8FPGA芯片以及RTL8201CP接口PHY芯片,分别作为系统的主控模块以及网络通信模块㊂RTL8201CPPHY芯片采用RMII模式下的以太网连接方式,是简化的媒体独立接口,减少了以太网通信所需的引脚数,将引脚数从16个减少为7个,有着更简单的连接结构㊂AlteraCycloneIV系列FPGA芯片作为主控模块,自身能够在物理层和PHY之间的RMII接口处进行时间标记,相对于其他如STM32F407系列CPU芯片只能在MAC数据链路层标记,有着更高的时间戳精度㊂主控模块主要实现接受发送PTP报文,以及时钟同步等功能㊂2.3㊀系统软件设计本文系统的软件结构主要分为协议层㊁应用层㊂协议层完成报文的解析以及封装过程,应用层完成实时时钟以及精确时钟同步功能㊂其系统结构图如图3所示㊂㊀㊀协议层分为UDP/IP协议㊁EtherCAT协议以及PTP协议,EtherCAT协议有两种实现方式:一种是利用标准IEEE802.3以太网帧实现,一种是放入UDP/IP协议中实现,本文采用第二种实现方式㊂系统的主时钟将PTP报文封装在EtherCAT中,再将EtherCAT报文封装在UDP报文中,最后通过网络传输到从时钟㊂从时钟接收到报文后,解析报文,进行时间戳的寄存和提取㊂A l t e r a C y c l o n e I VE P4C E6E22C8A l t e r a C y c l o n e I VE P4C E6E22C8应用层协议层P T PE t h e r C A TU D PI PM A CP H Y应用层协议层P T PE t h e r C A TU D PI PM A CP H Y以太网络主时钟从时钟图3㊀系统结构图Fig.3㊀Systemstructurediagram㊀㊀时钟同步系统上电后,通过PC机,以UDP协议的形式发送指令报文,初始化各主从时钟的计数器,并设定与PC机通信的为主时钟,与主时钟通过网线相连的为从时钟㊂初始化各主从时钟后,PC机周期性发送Sync报文,进入时钟同步阶段㊂如果本地时钟为主时钟状态,其主时钟流程图如图4所示㊂主时钟接受来自PC机的报文,识别并转发Sync报文,对RMII接口的TX_EN信号进行锁存,当TX_EN信号由高电平变为低电平时,寄存这个周期的时钟计数器,接着发送Follow_up报文,Follow_up报文的64位精确时间戳为上一个寄存的时钟计数器的时间,发送结束后,等待接收下一条报文㊂接收到报文时,RMII接口的RX_EN信号由低变高,寄存该周期的时钟计数器,识别接受的报文,如果识别为其他报文,丢弃该时间戳,并回到等待接受Delay_req报文状态,若为Delay_req报文,保留该时间戳,并读取来自从时钟的端口号,接着构造Delay_resp报文,Delay_resp报文的64位精确时间戳即为上一次寄存的时钟计数器㊂主时钟进入等待接受PC机报文状态㊂㊀㊀如果本地时钟为从时钟,从时钟流程图如图5所示㊂时钟计数器初始化后,接受到报文时,RMII接口的RX_EN信号由低变高,寄存器寄存该周期的时钟计数器的值,识别该报文是否是Sync报文,若不是,则丢弃寄存的时间戳,并返回等待报文接受状态;如果是,继续接受并解析Follow_up报文,读66智㊀能㊀计㊀算㊀机㊀与㊀应㊀用㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀第13卷㊀取报文中的时间戳,并开始构造Delay_req报文㊂当发送Delay_req报文结束时,即RMII接口处的TX_EN信号由高变低,寄存该时刻的时钟计数器的值,并与接受Follow_up报文同样的过程接受Delay_resp报文,并读取报文中的精确时间戳㊂从时钟得到来自物理层和PHY之间的RMII接口处的4个精确时间戳,进入链路延迟以及时钟偏差计算阶段,并对从时钟进行补偿,得到同步的从时钟进入下一次时钟补偿阶段㊂发送D e l a y _r e s p 报文判断D e l a y _r e q报文接受D e l a y _r e q 报文,记录时间戳生成D e l a y _r e s p 使能信号等待接受D e l a y _r e q u 报文发送F o l l o w _u p 报文N丢弃该记录的时间戳Y生成F o l l o w _u p 使能信号发送S y n c 报文,记录时间戳从P C 机接受S y n c 报文设定为主时钟状态初始化通电图4㊀主时钟流程图Fig.4㊀Masterclockstatemachineprocess丢弃该记录的时间戳NY构造D e l a y _r e q 报文发送D e l a y _r e q 报文,记录时间戳等待接收D e l a y _r e s p 报文接受D e l a y _r e s p 报文判断D e l a y _r e s p 报文寄存D e l a y _r e s p 中的戳记戳计算时钟偏移,进行时钟同步接受F o l l o w _u p 报文,寄存F o l l o w _u p 中的时间戳判断S y n c 报文接受S y n c 报文,记录时间戳等待接受S y n c 报文设定为从时钟状态初始化开始丢弃该记录的时间戳图5㊀从时钟流程图Fig.5㊀Slaveclockstatemachineprocess2.4㊀本地时钟补偿算法本地时钟补偿采用动态的频率补偿算法来实现,其频率补偿过程如图6所示㊂M a s t e rS l a v eT 1M 1T 2M 1T n M 1T 1S 2T 2S 2T n S 2S y n cS y n cS y n c图6㊀频率补偿过程Fig.6㊀Frequencycompensationprocess㊀㊀在时钟同步过程中,当系统进行第一次时钟同步过程中时,主站记录下第一次发送Sync同步报文的时间戳T1M1,从站记录下第一次收到同步报文的时间戳T1S2㊂同理,当系统进行第二次时钟同步时,记录下时间戳T2M1和T2S2㊂则主站的发送时间间隔MCC,式(9):MCC=T2M1-T1M1(9)㊀㊀同理,从站接收到的时间间隔SCC,式(10):SCC=T2S2-T1S2(10)㊀㊀主从站的时间偏差MSC,式(11):MSC=|MCC-SCC|(11)㊀㊀主从之间的时间比率,式(12):γ=SCC/MSC(12)㊀㊀在每次时钟同步过程中,从时钟持续补偿计算出的时钟偏移量;在补偿过程中,判断偏移量的最高位是否为1,若是表示从时钟快于主时钟,偏移量的值应取反加1,补偿进从时钟中,反之,直接补偿从时钟;对于时间频率的补偿,从系统的第二次时钟同步阶段开始,判断MSC的值,若最高位为1,说明主时钟频率高于从时钟频率,则从时钟的纳秒(ns)计数器每增加γ值时减1,反之,主时钟频率低于从时钟频率,纳秒(ns)计数器每增加γ值时加1㊂3㊀时钟同步测试为了验证IEEE1588时钟同步系统的可行性,将IEEE1588协议以及本地时钟补偿算法应用于基于FPGA的EtherCAT协议栈中,采用低延时㊁高带宽㊁确定性的现场总线结构,该协议栈具有区分IEEE1588报文和普通报文的功能,主站能解析来自PC机的报文,并将报文内容转发至从站,从站能够解析各报文命令,执行时间戳提取㊁初始化操作㊁时钟同步以及同步输出等功能㊂本系统以主站的本地晶振作为授时源,通过主76第5期徐卓汀,等:基于FPGA的IEEE1588时钟同步系统的设计与实现从站直连的方式进行时钟同步性能测试,设置的同步时间间隔为1s,时钟同步过程分为两步:(1)系统启动,发送初始化指令报文进行各主从站计数器清零操作;(2)周期性发送Sync报文,进行时钟同步㊂3.1㊀一主一从主从直连同步测试系统初始化后周期性发送Sync同步报文进行时钟同步,其中主从站某一次输出1s脉冲图如图7所示,横坐标每一格线代表20ns,该波形表示主从站的同步输出偏差为0ns㊂㊀㊀200次主从同步,其时间偏差结果如图8所示㊂图7㊀主从站某一次输出1s脉冲Fig.7㊀Primaryandsecondarystationoutput1spulsediagramatonetime050100150200时钟同步次数时间偏差/n s9080706050403020100图8㊀时间偏差结果Fig.8㊀Timedeviationresult㊀㊀其中时间偏差为一个绝对值量㊂由图8可知,主从时钟最大时钟偏差为80ns,时钟偏差基本分布在ʃ80ns之间,能够满足现代工业以太网对时间精度的需求㊂3.2㊀一主二从主从直连同步测试系统初始化,进行200次同步测试,其主从同步结果如图9所示㊂㊀㊀其中,ID1时钟表示从站1与主站的时钟偏差,ID2表示从站2与主站的时钟偏差㊂ID1-ID2时钟差值(LCK)为ID1时钟与ID2时钟的差值,ID1-ID2时钟差值(ns)为ID1-ID2时钟差值(LCK)乘20ns所得㊂图9㊀主从同步结果Fig.9㊀Masterslavesynchronizationresult㊀㊀主站与从站1的时钟偏差图和主站与从站2的时钟偏差图如图10和图11所示㊂经过200次测试,从站1与主时钟的最大时钟偏差为100ns,时钟偏差基本分布在ʃ100ns;从站2与主时钟的最大偏差为100ns,时钟偏差基本分布在ʃ100ns㊂相对一主一从的同步测试,由于其加大了链路延时的不对称性以及从站内部的处理延时,增大了时钟偏差,导致同步精度下降㊂86智㊀能㊀计㊀算㊀机㊀与㊀应㊀用㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀第13卷㊀12010080604020050100150200时钟同步次数时钟偏差/n s 图10㊀主站与从站1的时钟偏差Fig.10㊀Clockdeviationbetweenmasterstationandslavestation1120100806040200050100150200时钟同步次数时钟偏差/n s 图11㊀主站与从站2的时钟偏差Fig.11㊀Clockdeviationbetweenmasterstationandslavestation24㊀结束语本文详细分析了IEEE1588协议,并将IEEE1588协议以及本地时钟补偿算法应用于分布式时钟同步系统中,在一主一从的分布式时钟同步基础上,拓展到了一主两从的分布式时钟同步系统㊂实验证明该方案的同步精度能够达到ns级别,同步的时钟设备越少,时钟偏差越小㊂同步一个时钟设备和两个时钟设备,主从时钟偏差基本分布在ʃ100ns之间,能够满足现代工业以太网对高精确时钟的需求,简化了硬件电路设计,不需要专用的PHY芯片,时钟戳提取和报文识别都在FPGA芯片内部完成,降低开发难度和成本㊂参考文献[1]韩一德.基于IEEE1588协议的高精度时钟同步系统研究与实现[D].太原:中北大学,2021.[2]谢华.基于GPS信号和NTP协议的本地时间同步网络[J].工业控制计算机,2010,23(6):75-76.[3]何一航.IEEE1588高精度网络时钟同步研究与实现[D].武汉:华中科技大学,2011.[4]EIDSONJC,FISCHERM,WHITEJ.IEEE-1588TMStandardforaprecisionclocksynchronizationprotocolfornetworkedmeasurementandcontrolsystems[C]//Proceedingsofthe34thAnnualPreciseTimeandTimeIntervalSystemsandApplicationsMeeting.2002:243-254.[5]ZHAOB,WANGN.TheimplementationofIEEE1588clocksynchronizationsystembasedonFPGA[C]//FifthInternationalConferenceonIntelligentControlandInformationProcessing.IEEE,2014:216-220.[6]刘宝明,冯振乾.时间敏感网络关键技术与应用研究[J].工业控制计算机,2021,34(11):1-4.[7]周峰,刘迎澍,安笑蕊.嵌入式IEEE1588精确时钟同步实现[J].电气技术,2013(4):44-47.[8]李培基,李卫,朱祥维,等.网络时间同步协议综述[J].计算机工程与应用,2019,55(3):30-38.[9]王创,郑宾.交互式多模型IEEE1588时钟同步算法[J].自动化技术与应用,2019,38(4):13-17.[10]王贤德,贾连兴.基于DTS和IEEE1588v2协议的网络跳变同步技术研究[J].装甲兵工程学院学报,2017,31(4):87-92.[11]MOHAMMADJHandTHOMASKandHOWARDS.ARecursiveMethodforClockSynchronizationinAsymmetricPacketBasedNetworks[J].IEEE/ACMTransactionsonNetworking(TON),2016,24(4):2332-2342.[12]KYRIAKAKISE,SPARSØJ,SCHOEBERLM.Hardwareassistedclocksynchronizationwiththeieee1588-2008precisiontimeprotocol[C]//Proceedingsofthe26thInternationalConferenceonReal-TimeNetworksandSystems.2018:51-60.[13]QIM,WANGX,YANGZ.DesignandimplementationofIEEE1588timesynchronizationmessagestimestampingbasedonFPGA[C]//20114thInternationalConferenceonElectricUtilityDeregulationandRestructuringandPowerTechnologies(DRPT).IEEE,2011:1566-1570.(上接第63页)[15]HUJ,LIS,SUNG,etal.Squeeze-and-ExcitationNetworks[J].IEEETransactionsonPatternAnalysisandMachineIntelligence,2020,42(8):2011-2023.[16]LIJ,JINK,ZHOUDL,etal.Attentionmechanism-basedCNNforfacialexpressionrecognition[J].Neurocomputing,2020,411:340-350.[17]LUCEYP,COHNJF,KANADET,etal.TheExtendedCohn-KanadeDataset(CK+):Acompletedatasetforactionunitandemotion-specifiedexpression[C]//ComputerVision&PatternRecognitionWorkshops.IEEE,2010:174-183.[18]LIUM,SHANS,WANGR,etal.LearningExpressionletsonSpatio-temporalManifoldforDynamicFacialExpressionRecognition[C]//2014IEEEConferenceonComputerVisionandPatternRecognition(CVPR).IEEE,2014:94-102.[19]王攀杰,郭绍忠,侯明,等.激活函数的对比测试与分析[J].信息工程大学学报,2021,22(5):551-557.[20]DONGN,ZHAOL,WUCH,etal.Inceptionv3basedcervicalcellclassificationcombinedwithartificiallyextractedfeatures[J].AppliedSoftComputingJournal,2020,93:151-171.[21]ShaheedKashif,MaoAihua,QureshiImran,etal.DS-CNN:Apre-trainedXceptionmodelbasedondepth-wiseseparableconvolutionalneuralnetworkforfingerveinrecognition[J].ExpertSystemsWithApplications,2022:191-199.[22]LIX,WUW,LIT,etal.FaceLivenessDetectionBasedonParallelCNN[C]//JournalofPhysics:ConferenceSeries.IOPPublishing,2020,1549(4):042069.[23]DINGH,ZHOUSK,CHELLAPPAR.Facenet2expnet:Regularizingadeepfacerecognitionnetforexpressionrecognition[C]//201712thIEEEInternationalConferenceonAutomaticFace&GestureRecognition(FG2017).IEEE,2017:118-126.96第5期徐卓汀,等:基于FPGA的IEEE1588时钟同步系统的设计与实现。

基于IEEE1588的时钟同步技术在分布式测量系统中的应用

基于IEEE1588的时钟同步技术在分布式测量系统中的应用
用于实现各种类型 网 络 拓 扑 结 构 下 的 各 节 点 时 钟
图 1 精准时钟同步系统
根据图 2 所示,系统中主时钟与从时钟消息交
换流程如下:
①主时 钟 给 从 时 钟 发 送 一 个 Sync 报 文, 发 送
报文的 时 刻 记 为 t 1 ,从 时 钟 接 收 到 该 Sync 报 文 的
lyzed, an IEEE1588 system realization scheme was put forward, the hardware design method and the
master-slave clock software design process were expounded. Finally, the IEEE1588 clock synchroni-
UDP 接 口, 由 于 LWIP 协 议 本 身 并 不 支 持
IEEE1588 协 议, 同 时, 支 持 10 / 100 Mb 的 通 信 速
进行修改以支持 IEEE1588 时 间 戳 传 递 功 能,修 改
公司 的 DP83640, 其 最 大 特 点 是 支 持 物 理 层 的
率,具有 RMII 和 MII 两种总线接口。 本统 MAC 和
的分析和逻辑处 理,根 据 获 取 的 时 间 戳,计 算 出 主
图 3 硬件连接示意图
对于 IEEE1588 协议,硬 件 层 面 较 关 注 报 文 传
输,事件报文 时 间 戳 的 记 录 和 本 地 PTP 时 钟。 首
先,IEEE1588 的 报 文 基 于 以 太 网 传 输, 并 且 MAC
技术的系统实现方案,阐述系统硬件设计方法和主从时钟的软件设计流程,最后测试不同发文

IEEE1588v2高精度时钟同步协议的总体设计与实现

IEEE1588v2高精度时钟同步协议的总体设计与实现

IEEE1588v2高精度时钟同步协议的总体设计与实现王冠;肖萍萍【摘要】With the development of network technology, the gradually networked audio transmission set higher demands on asynchronous ethemet In provied high precision time to guaranty the real-time of transmission of audio data. Fortunately, IEEE 1588 is precisely designed to solve this problem. This article systematically describes the principle of IEEE1588 (version 2), and presents the general design of IEEE1588v2 in the angle of software implementation.%随着网络技术的发展,音频传输逐渐网络化,为保证音频数据传输的实时性,对异步的以太网提出了高精度的时间同步要求.而IEEE1588标准定义的PTP(Precision Time Protocol)协议正是为实现高精度时钟同步而制定的,本文系统地介绍了IEEE1588v2(第二版本的PTP协议)的原理,并从软件实现的角度给出了IEEEI588v2的总体设计.【期刊名称】《价值工程》【年(卷),期】2012(031)015【总页数】2页(P198-199)【关键词】音频传输网络;时钟同步;IEEE1588v2;PTP;精确时间协议【作者】王冠;肖萍萍【作者单位】武汉邮电科学研究院烽火网络有限公司,武汉430074;武汉邮电科学研究院烽火网络有限公司,武汉430074【正文语种】中文【中图分类】TN919.20 引言目前,基于以太网的数字音频传输技术已得到广泛应用,而以太网生来就是非确定性的网络,很难满足音频数据在传输过程中的同步和实时性要求。

基于stm32f407的精确时钟同步协议的实现

基于stm32f407的精确时钟同步协议的实现
Key Words clock synchronization,timestamp,Ethernet,IEEE1588 protocol,embedded Class Number TP393
1 引言
工业现场的数据采集变得越来越模块化,但当 需要测量多个外部的数据时,可能需要多个模块。 将这些由传感器采集的数据通过网络上传的时候, 由于没有时间信息,远程上位机不能很好将采集数 据融合处理,一般只能独立的对采集上来的数据处 理。为了实现对采集数据的时钟同步,需要对数据 采集模块间进行时钟同步。
当 前 几 种 比 较 流 行 的 时 间 同 步 协 议 有 NTP (Network Time Protocol)[1]和 PTP(Precision Time Protocol)[2],两者的原理类似,都是实现主时钟节点 和从时钟节点间的时间同步,其中 PTP 协议是网络 测量和控制系统时钟同步协议(IEEE1588 协议)的 简称,具体的差异如图 1 所示。从图中可以看出, NTP 和 PTP 时间戳的截取的位置不同。NTP 获取 的时间戳的位置是应用层,而 PTP 时间戳的截取的 位置是在物理层。正是由于获取时间戳的位置不
ZHANG Duanyang XIAO Li FU Zhongmin (School of Automation,Huazhong University of Science and Technology,Wuhan 430074)
Abstract In the field of industrial data acquisition,each node is more and more intelligent and networked,so the high-preci⁃ sion time synchronization between multiple nodes becomes more and more urgent. The method of clock synchronization and time stamp are used to collect the data,which brings great convenience to the processing of the later data,especially in the multi-sensor data fusion.“Precision Clock Synchronization Protocol for Networked Measurement and Control Systems”referred to as the IEEE1588 protocol come into being.In this paper,the stm32f407 microcontroller as the core of the development board is used to achieve the IEEE1588 protocol as the slave clock,and the LAN host computer is configured as the master clock to complete the pre⁃ cise clock synchronization between the slave clock and the master clock.In this paper,the master clock is synchronized with the slave clock,and the master clock is synchronized with multiple slave clocks,and the clock accuracy between them is 2us.

IEEE1588精确时钟同步协议从时钟设计

IEEE1588精确时钟同步协议从时钟设计

数 据 滤波 和 锁 相环 P 调 节 的 高精 度 时钟 同步 算 法 。 I 关 键 词 : E E 18 IE 5 8;P ;时 钟 同 步 ;分 布 式 系 统 I
中 图 分 类 号 :T 3 3 P 9 文 献 标 识 码 :A 文 章 编 号 :0 5 - 9 8 2 1 )7 0 9 - 4 2 8 7 9 (0 0 0 - 0 4 0
d sg s h a d r t cu e o h l v lc o e a o t EE 1 8 rc s lc y c r n z t n p tc l rp s s t e p e ie e in te h r wae s u t r f t e sa e co k n d b u I E 5 8 p e i co k s n h iai r o o ,p o o e h rcs r e o o o
Ke r s E 1 8 ;P ;co k s n h o iai n it b t d s se y wo d :I EE 8 5 I lc y c r n z t ;d s u e y t m o i r
在分布式 网络 中 ,由于网络传 输 时延 的不确 定性 , 导 致 采 用 网 络 命 令 触 发 的 同 步 精 度 差 ; 时 , 于 分 布 同 由 式 网 络 各 节 点 位 置 的分 散 性 , 适 合 采 用 硬 件 同 步 提 供 不 高精 度 的 同步 触 发 。 于 时 间 信 息 的 同 步 触 发 方 式 特 别 基 适 合 于 分 布 式 远 距 离 同 步 系 统 , 触 发 方 式 灵 活 , 受 其 不 距 离 的 限 制 …。 I E 1 8 的 基 本 功 能 是 使 分 布 式 网 络 内 的 所 有 E E 58

IEEE1588精密时钟同步协议的分析与实现

IEEE1588精密时钟同步协议的分析与实现
电子测量技术 ELECTRONIC MEASUREMENT TECHNOLOGY
第32卷第4期 2009年4月
IEEEl588精密时钟同步协议的分析与实现
庾智兰李智 (O-林电子科技大学电子工程学院桂林541004)
摘要:LXI(LAN-based Extensions for Instrumentation)技术的提出进一步推动了测试测量领域的发展,基于 IEEEl588精确时钟同步协议的时间同步触发是LXI B类仪器的一个主要特点。本文介绍了IEEEl588精密时钟协 议,详细分析了其同步原理,并介绍了一种实现IEEEl588协议的方案,从时钟通过与主时钟交换报文获取时间戳,根 据时间戳计算出与主时钟的时间偏差并对自己的时钟进行修正。最后对所设计的系统进行了测试。测试结果显示系 统能实现时钟同步。 关键词:LXIlIEEEl588;主时钟;从时钟;时钟同步 中图分类号:TI>2 文献标识码:A
This paper mostly introduces the theory the IEEE 1588 Precision Timing Protocol,presents one design scheme of
IEEEl588 which is carried OUt by software.The slave clock which gain time stamper by exchanging message诵th
同步的因素大体上有两个,一是各时钟的性能所引起的时 间偏差,二是由于各报文在网络中传输所引起的网络延迟, 因此,PTP系统的同步过程可分为两个阶段:偏差修正阶段
和延迟测量修正阶段枷。整个同步过程如图1所示。
slave—to master_delay 2Tnl2一Ts2

基于IEEE-1588的高精度时钟同步系统设计

基于IEEE-1588的高精度时钟同步系统设计

基于IEEE-1588的高精度时钟同步系统设计谭超;苏超;胡诗俊;吴燕;何旭东【期刊名称】《电子器件》【年(卷),期】2016(039)005【摘要】In order to improve the precision of data acquisition equipment of the earthquake early warning system for high speed railway,a high precision time synchronization system based on IEEE-1588 is designed. The system uses STM32+FPGA structure to set up a hardware ,and it achieves high precision time interval measurement based on PLL delay measurement in FPGA,of which measurement accuracy is 600 ps. The system obtains network time by PHY chip DP83640,and combines Kalman filtering and PID algorithm in STM32 to correct local time and PPS phase by network time to complete software design of the synchronization system. The test result shows that error of time synchronization is less than 3 ns and stability maintains for a long-term.%为提高高速铁路地震预警系统采集设备时间同步精度,设计了基于IEEE-1588的网络高精度时钟同步系统。

基于IEEE1588协议的从时钟设计及其控制研究

基于IEEE1588协议的从时钟设计及其控制研究
文献 [ 2 ]对 P I 控 制 器 参 数 选 择 进 行 了 评 估 ,但
当时 钟 同 步 间 隔 偏 大 的 时 候 运 用 这 个 方 法 适 用 ,
用 模 糊 控 制 来 预 测 就很 难 达 到理 想 的效 果 。 文章设计采用 P I 控 制 器 调 节 从 时 钟 的频 率 ,
析 ,采 用 经 验 法 对 P I D 参 数 进 行 整 定 ,但 是 没 有
0 引 言
目前 I E E E 1 5 8 8精 确 时 钟 同 步 协 议 ( P T P, 信 等领域得 到 了广泛 的应用 。 P协 议 把 同 步 系
解 决 系 统参 数 发 生 变 化 固 定 的 P I D参 数 能 否 继 续
保持 同步精度。 关键 词 :I E E E 1 5 8 8 ;粒 子 群 算 法 ;P I 控 制 器 中 图 分 类 号 :T P 2 7 3 文 献 标 识 码 :A D O I :1 0 . 3 9 6 9 / j . i s s n . 1 6 7 2~ 0 7 9 2 . 2 0 1 4 . 0 9 . 0 1 0
了从 时钟 结构。 实际通信 网络存在很 多不确定性和延 时抖动 ,固定 不变的 P I 控制器参数往 往很难达 到满
意的对时精度。设计 了运 用粒子群 优化 算法 对控 制 器参数进 行在 线整定 的从 时钟 伺服控 制 系统,M a t l a b 仿真结果表 明,该控制方 法具 有较 高的精度和 自适应 能力 ,在 网络 参数或从 时钟发 生变化 时也能很好 地
完 成 ,先 进 行 相 位 校 正 ( 当 偏 差 很 大 时 才 进 行 校 假设 的 过 于 简 单 ,仿 真 过 程 没 有 详 细 分 析 造 成 时

基于STM32F407的时钟同步系统的实现

基于STM32F407的时钟同步系统的实现

基于STM32F407的时钟同步系统的实现寇海洋;段雄英【摘要】随着电力系统复杂程度的提高,智能化变电站对系统内各节点时钟同步精度的要求越来越高;IEEE1588精确时钟同步协议的应用使得系统内时钟同步精度达到纳秒级别;文章对IEEE1588时钟同步的原理进行了分析,设计了基于STM32F407处理器的时钟同步系统;介绍了本地时钟向量调节与频率调节两种时钟调节方式;最后测试主从时钟同步精度,结果表明同步精度在200 ns以内,满足智能变电站对系统内时钟同步精度的要求.【期刊名称】《计算机测量与控制》【年(卷),期】2015(023)008【总页数】3页(P2759-2761)【关键词】IEEE1588;STM32F407;时钟同步;时间戳;变电站【作者】寇海洋;段雄英【作者单位】大连理工大学电气工程学院,辽宁大连 116024;大连理工大学电气工程学院,辽宁大连 116024【正文语种】中文【中图分类】TN915.04电力系统复杂程度的提高对数字变电站的时钟精度提出了更高的要求。

数字变电站的通信网络是一种分布式系统,系统内部信息交换量大、状态改变快,只有满足一定的时钟同步精度,才能对相位比较、故障记录、事件顺序启动等功能给予保障。

因此,找到一种方法使得系统内各个设备保持高精度时钟同步是数字变电站正常运行的保障[16]。

IEEE1588协议是一款通过网络通信、本地计算以及分布对象并应用于分布式测量和控制系统的时钟同步协议[7]。

利用该协议设计分布式系统,可以提供一种低成本高精度的网络时钟同步的解决方案,并具有占用网络带宽小、对系统资源要求低等优点,非常适合应用于分布式测试领域[8]。

目前有3种方式实现该方案:(1)纯软件方式实现。

开发简单,协议实现完整,但只能达到毫秒级同步精度[9]。

(2)纯硬件方式实现。

通过硬件编程实现,同步精度可达纳秒量级,但是开发难度大。

(3)软硬件结合方式。

开发难度适中,精确度高。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
大连理工大学硕士学位论文
(2)如果纳秒变量值小于等于.1000000000,则纳秒变量加1000000000,秒变量减1。
(3)如果纳秒变量小于0并且秒变量大于0,则秒变量值减1,纳秒变量值加1000000000。
基于STM32F407的IEEE15
引用本文格式:唐雪松基于STM32F407的IEEE1588从时钟设计与实现[学位论文]硕士 2014
4.6.3本地时钟频率校正
图4.9stm32f407时钟频率调节原理图
Clock frequency adjustment schematics
Fig.4.9stm32f407
本地时钟频率调整的原理如图4.9所示,每个系统时钟周期,加数寄存器的值就会累加到累加计数器当中,当32位累加计数器溢出时,纳秒累加寄存器的值就会累加到纳秒寄存器中,纳秒寄存器中的时间值大于1000000000时,秒寄存器的值加1,纳秒寄
(4)如果纳秒变量大于0并且秒变量小于0,则秒变量值加1,纳秒变量值减1000000000。
4.6.2本地时钟向量校正
本地时钟向量校正的方式为本地时钟时间减去偏移量。STM32F407系列处理器通过将偏移量的值写入PTPTSHUR与PTPTSLUR寄存器来实现向量校正,其中PTPTSHUR表示偏移量的秒变量,PTPTSLUR寄存器表示在偏移量的纳秒变量。需要注意的是:硬件要求写入寄存器的偏移量为无符号整型数据,并且对偏移量值的加减由PTPTSLUR寄存器(纳秒寄存器)的最高位决定,所以进行偏移量校正时,需要对偏移量进行适当格式转换。
相关文档
最新文档