0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

采用FPGA技术实现高精度的时钟频率同步的方法

电子设计 来源:郭婷 作者:电子设计 2019-05-05 08:17 次阅读

引 言

网络化运动控制是未来运动控制的发展趋势,随着高速加工技术的发展,对网络节点间的时间同步精度提出了更高的要求。如造纸机械,运行速度为1 500~1 800m/min,同步运行的电机之间1μs的时间同步误差将造成30 μm的运动误差。高速加工中心中加工速度为120 m/min时,伺服电机之间1μs的时间同步误差,将造成2 μm的加工误差,影响了加工精度的提高。

分布式网络中节点的时钟通常是采用晶振+计数器的方式来实现,由于晶振本身的精度以及稳定性问题,造成了时间运行的误差。时钟同步通常是选定一个节点时钟作为主时钟,其他节点时钟作为从时钟。主节点周期性地通过报文将主时钟时间发送给从节点,从节点接收到报文后,以主时钟为基准进行延迟补偿,然后将计算出的新时钟值赋给从时钟。这种同步方法造成了从时钟计数值的不连续,即会出现重复(从时钟晶振频率快于主时钟)或跳跃(从时钟晶振频率慢于主时钟),而且这种方法并没有从根本上解决时钟频率的不同步问题,因此要进一步提高同步精度很困难。本文研究了一种可对频率进行动态调整的时钟,通过对时钟频率的动态修正,实现主从时钟频率的同步,进而实现时间同步。

1 时钟同步原理

要实现两个时钟的同步,一是时钟的计数值要相同,二是计数增长速率要相同。如图1所示,设主时钟的频率为f,从时钟频率在Nn-1到Nn时间段为fn-1,在Nn到Nn+1为fn,SyncDelay为同步报文从主站到从站的延迟时间,可以通过延时测量帧采用往返法测量得到,从时钟要在Nn+1时刻达到与主时钟相等,那么有:

采用FPGA技术实现高精度的时钟频率同步的方法

因为主时钟是周期性发出同步报文,所以有Mn+1-Mn=Mn-Mn-1=T,由式(2)和(3)可得:

采用FPGA技术实现高精度的时钟频率同步的方法

kn就是时钟频率调整系数。在每个同步周期可以计算出频率调整系数,然后通过相应的硬件电路来实现频率调节。

采用FPGA技术实现高精度的时钟频率同步的方法

2 可调频率的时钟设计

可调频率时钟是一种完全由数字电路组成的时钟计数器,构造简单,可以很方便地在FPGA中实现,原理如图2所示。该频率可调时钟由一个户位时钟计数器,q位累加器和r位频率补偿值寄存器组成。每个晶振周期,累加器与频率补偿寄存器中的FreqCompValue相加,并将结果保存到累加器。如果累加器发生溢出,时钟计数器的值就增加1;反之,时钟计数器保持不变。由此可以看出,晶振频率和频率补偿值FreqCompValue的大小决定了累加器的溢出速率,也决定了时钟计数器的计数频率。所以可以通过调整FreqCompValue来调节时钟频率。为了实现高精度时钟,晶振频率要比时钟频率高。设晶振频率为FreqOsc,时钟计数频率为FreqClk,分频比为DivRatio,同步周期为SyncInterval,补偿精度为Precision,p、q、r可由下列公式得出:

DivRatio=FreqOsc/FreqClk (5)

采用FPGA技术实现高精度的时钟频率同步的方法

采用FPGA技术实现高精度的时钟频率同步的方法

在本系统中,取FreqClk为50 MHz,FreqOsc为60MHz,则DivRatio为1.2。当同步周期为1 s时,补偿精度Precision可选10-9,由公式可选择r=q=32,p=64。频率补偿初值由下式求出:

FreqCompValue=2q/DivRatio=232/1.2=32d3579139413

在时钟输出算法中,该值由频率调整系数动态调整:

FreqCompValuen=kn·FreqCompValuen-1 (10)

3 频率补偿算法在FPGA中的实现

由式(4)和式(10)可得:

采用FPGA技术实现高精度的时钟频率同步的方法

频率补偿就是在每个同步周期计算FreqCompValuen,FPGA提供了参数化的乘法器兆函数(1pm_mult)和除法器兆函数(1pm_divide),可以快速实现上述算法。原理如图3所示,在每个同步周期同步信号的驱使下,锁存器B和C分别锁存当前时钟读数和上个同步周期时钟读数,同时将主时钟读数输入到加法器A中,经过减法器E、F和乘法器G,以及除法器H后计算出新的FreqCompValuen,并在同步信号的驱动下,将其锁存到锁存器D中。由于中间的计算结果要经过一定的时钟周期,所以锁存器D的锁存信号要延时一定的晶振周期。在本设计中延时50个FreqOsc,即在《1μs的情况下就可以得到新的频率补偿值。

采用FPGA技术实现高精度的时钟频率同步的方法

同步报文的传输延迟SyncDelay理论上是不变的,而实际上报文在传输过程中有抖动。参考文献[3]对此进行了分析,并指出同步周期越长,报文传输延迟抖动的影响就越小,因此可以忽略不计。

4 实验验证

主时钟采用50 MHz的有源晶振来实现,并将其作为固定时钟;从时钟采用30 MHz有源晶振,通过FPGA的锁相环PLL将其频率倍频到60 MHz,然后1.2分频,实现可调频率的50 MHz时钟。

让主时钟和从时钟以一定的时间间隔产生中断,并通过逻辑分析仪采样中断信号分析其偏差。由于系统时钟的分辨率为20 ns,采用广州致远电子有限公司的逻辑分析仪LA1532,其最大采样频率为100 MHz,所以偏差测量精度可以达到10 ns。图4(a)是未进行同步前两个时钟的偏差分析,X轴表示主时钟和从时钟的计时长度,Y轴表示主时钟和从时钟的计时偏差。从图中可以看出两个时钟的偏差大概为5×10-6,即1 s内的偏差可以达到5μs。图4(b)为同步后主时钟和从时钟偏差测量结果,共测量1 000次,其10 ms内同步偏差在±20 ns。X轴表示测量时间,Y轴表示主从时钟同步偏差。图4(c)为同步后两个从时钟偏差测量结果,共测量1 000次,其10 ms内同步偏差在±40 ns。X轴表示测量时间,Y轴表示从时钟之间同步偏差。

采用FPGA技术实现高精度的时钟频率同步的方法

结 语

基于时钟频率调整的时间同步方法,实现简单,而且没有复杂的软件同步协议,占用较小的网络带宽就可以实现高精度的时钟同步,在硬件上只需要低成本的FPGA支持。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1603

    文章

    21328

    浏览量

    593275
  • 晶振
    +关注

    关注

    32

    文章

    2479

    浏览量

    66856
  • 计数器
    +关注

    关注

    32

    文章

    2126

    浏览量

    93009
收藏 人收藏

    评论

    相关推荐

    基于NTP的高精度时钟同步系统实现

    约±250 μs。6  高精度局域网授时实现  在Windows计算机网络中,采用高分辨率定时器可有效提高局域网NTP授时精度,减少时钟
    发表于 09-19 09:21

    基于FPGA时钟恢复以及系统同步方案设计

    摘要:随着石油勘探的发展,在地震勘探仪器中越来越需要高精度同步技术来支持高效采集。基于这种目的,采用FPGA
    发表于 06-18 08:15

    如何设计使主从时钟频率同步

    并没有从根本上解决时钟频率的不同步问题,因此要进一步提高同步精度很困难。 如何设计使主从时钟
    发表于 08-06 06:34

    为什么无线通信网络需要同步?什么是频率同步和相位同步

    和时间息息相关,相位同步也叫做时间同步。   3、不同的网络制式,对于同步精度的需求有什么不同?不同的无线制式,对于频率同步和相位
    发表于 05-06 12:37

    为什么无线通信网络需要同步?什么是频率同步和相位同步

    。   不同无线接入技术(2/3/4G)的同步需求   总体来看,使用FDD双工方式的技术,比如2G中的GSM,3G的WCDMA,以及4G的LTE FDD都只需要频率同步
    发表于 05-10 16:06

    一种脉冲信号载波频率同步环及FPGA实现

    。应用数字下变频技术和Kay算法实现载波频率的精确估计。设计实例的仿真结果表明了该环路的有效性,环路可在短对同内完成高精度的载波频率同步。载
    发表于 09-20 08:28

    基于FPGA的GPS同步时钟装置的设计

    在介绍了GPS 同步时钟基本原理和FPGA 特点的基础上,提出了一种基于FPGA 的GPS同步时钟
    发表于 07-30 11:51 45次下载

    基于IEEE1588协议的分布式系统时钟同步方法

    实现分布式系统高精度同步数据采集及实时控制,提出一种基于IEEE1588协议的分布式系统时钟同步方法
    发表于 12-30 15:52 41次下载

    基于FPGA的高速高精度频率测量的研究

    摘要:以FPGA为核心的高速高精度频率测量,不同于常用测频法和测周期法。本文介绍的测频方法,不仅消除了直接测频方法中对测量
    发表于 06-20 15:08 859次阅读
    基于<b class='flag-5'>FPGA</b>的高速<b class='flag-5'>高精度</b><b class='flag-5'>频率</b>测量的研究

    FPGA时钟频率同步设计

    FPGA时钟频率同步设计 网络化运动控制是未来运动控制的发展趋势,随着高速加工技术的发展,对网络节点间的时间同步
    发表于 01-04 09:54 2796次阅读
    <b class='flag-5'>FPGA</b>的<b class='flag-5'>时钟</b><b class='flag-5'>频率同步</b>设计

    基于GPS校准晶振的高精度时钟的设计

    文章结合高精度晶振无随机误差和GPS秒时钟无累计误差的特点,采用GPS测量监控技术,对高精度晶体振荡器的输出
    发表于 08-09 14:07 5208次阅读
    基于GPS校准晶振的<b class='flag-5'>高精度</b><b class='flag-5'>时钟</b>的设计

    低成本的采用FPGA实现SDH设备时钟芯片技术

    介绍一种采用FPGA(现场可编程门阵列电路)实现SDH(同步数字体系)设备时钟芯片设计技术,硬件
    发表于 11-21 09:59 1868次阅读
    低成本的<b class='flag-5'>采用</b><b class='flag-5'>FPGA</b><b class='flag-5'>实现</b>SDH设备<b class='flag-5'>时钟</b>芯片<b class='flag-5'>技术</b>

    基于FPGA高精度同步时钟系统设计

    介绍了精密时钟同步协议(PTP)的原理。本文精简了该协议,设计并实现了一种低成本、高精度时钟同步
    发表于 11-17 15:57 6369次阅读
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>高精度</b><b class='flag-5'>同步</b><b class='flag-5'>时钟</b>系统设计

    如何使用FPGA实现脉冲信号载波频率同步

    界。应用数字下变频技术和Kay算法实现载波频率的精确估计。设计实例的仿真结果表明了该环路的有效性,环路可在短对同内完成高精度的载波频率同步
    发表于 02-05 17:35 36次下载
    如何使用<b class='flag-5'>FPGA</b><b class='flag-5'>实现</b>脉冲信号载波<b class='flag-5'>频率同步</b>环

    传送网如何实现频率同步和时间同步

    。 一、频率同步 在传送网中,频率同步是指网络中的各个节点之间的时钟频率保持一致,以便实现数据传输的精确
    的头像 发表于 01-16 14:42 338次阅读