FPGA的时钟频率同步原理研究与设计实现

发布者:创新火箭最新更新时间:2010-01-04 来源: 单片机与嵌入式系统关键字:FPGA  时钟频率同步 手机看文章 扫描二维码
随时随地手机看文章

  引 言

  网络化运动控制是未来运动控制的发展趋势,随着高速加工技术的发展,对网络节点间的时间同步精度提出了更高的要求。如造纸机械,运行速度为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时刻达到与主时钟相等,那么有:

公式

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

公式

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

时钟同步原理

  2 可调频率的时钟设计

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

DivRatio=FreqOsc/FreqClk (5)

公式

可调频率时钟原理框图

  在本系统中,取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)[page]

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

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

公式

  频率补偿就是在每个同步周期计算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的时钟频率同步原理研究与设计实现

上一篇:Altium任命沈宇豪为大中国区首席执行官
下一篇:迈向先进制程 PLD商机更加庞大

推荐阅读最新更新时间:2024-05-02 20:57

基于FPGA的电力线载波调制系统的研究
电力线载波(PLC)通信作为电力系统特有的通信方式,广泛用于电力系统的调度通信、生产指挥、行政业务通信以及其他各种信息的传输。随着数字通信技术的发展,采用电力线上网、进行多媒体通信也具有宽阔的前景,电力线载波通信已经成为当今研究热点之一。 线路调制单元是电力线载波机中关键部件之一。为了提高频带的利用率,线路调制一般采用单边带调制方式。使用数字化处理方法来实现线路的单边带调制,能够克服模拟电路的诸多缺陷。线路调制需要完成正交变换、滤波和频谱搬移等处理,运算量与采样率直接相关。高采样率导致了高的运算量,低成本DSP芯片无法满足运算需求。FPGA可用于实现DSP运算处理单元,达到实时完成数字信号处理功能的目的,它为线路调制
[嵌入式]
DDR SDRAM控制器的FPGA实现
摘要:DDR SDRAM高容量和快速度的优点使它获得了广泛的应用,但是其接口与目前广泛应用的微处理器不兼容。介绍了一种通用的DDR SDRAM控制器的设计,从而使得DDR SDRAM能应用到微处理器中去。 关键词:DDR SDRAM控制器 延时锁定回路 FPGA DDR SDRAM是建立在SDRAM的基础上的,但是速度和容量却有了提高。首先,它使用了更多的先进的同步电路。其次,它使用延时锁定回路提供一个数据滤波信号。当数据有效时,存储器控制器可使用这个数据滤波信号精确地定位数据,每16位输出一次,并且同步来自不同的双存储器模块的数据。 DDR SDRAM不需要提高时钟频率就能加倍提高SDRAM的速度,因为它允许在时钟脉冲的
[应用]
采用单片机和FPGA设计的延时调节模块
系统结构框图如图1。其硬件结构比较简单,主要由单片机P89C51RD、RS-232/TTL接口电路MAX232和可编程逻辑器件FPGA三部分组成。单片机P89C51RD2是上位PC机和FPGA的连接纽带,它通过并口发送数据给FPGA,另一边通过RS-232/TTL接口芯片与PC机进行串行通讯;PC机主要功能是实现延时调整的可视化操作;FPGA是延时调整处理的硬件实现,单片机将PC送过来的延时调整参数输入FPGA,FPGA在单片机的控制下对信号进行延迟处理,最后送入相应传输通道。某些系统使用现场存在较强的电磁干扰,模块的设计考虑信号隔离问题,故对串行接口进行了电气隔离,强化了PC机和模块通讯的安全系数。 延时模块正
[单片机]
采用单片机和<font color='red'>FPGA</font>设计的延时调节模块
FPGA与多核CPU使嵌入式设计更灵活
随着嵌入式器件在过去数十年来的爆炸性成长,使得硬件组件及软件工具都有显著的改善。虽然有着这种成长与创新,但传统嵌入式系统的设计方法却少有进步,并逐渐变成一种障碍。有鉴于新标准与协议的快速发展,以及对产品上市压力的日益增加,嵌入式系统设计也即将发生颠覆性的典范改变。   随着硬件技术及软件工具的进步在加速成长,由整合所带来的挑战也开始浮现。如果无法妥善处理这些挑战,将会使得终端产品变得更加昂贵,并且有碍于让更多创新设计的实验、成长及上市。    标准的嵌入式架构   在一般的计算市场,标准化已带来更加稳健而耐用的操作系统、更精炼的终端应用,及基础硬件组件的进步。我们从其中所学到的经验是,从避免花在客制化硬件架构及相关软件组件的
[模拟电子]
<font color='red'>FPGA</font>与多核CPU使嵌入式设计更灵活
基于ARM与FPGA的可重构设计
可重构技术是指利用可重用的软硬件资源,根据不同的应用需求,灵活地改变自身体系结构的设计方法。常规SRAM工艺的FPGA都可以实现重构,利用硬件复用原理,本文设计的可重构控制器采用ARM核微控制器作为主控制器,以FPGA芯片作为协处理器配合主控制器工作。用户事先根据需求设计出不同的配置方案,并存储在重构控制器内部的存储器中,上电后,重构控制器就可以按需求将不同设计方案分时定位到目标可编程器件内,同时保持其他部分电路功能正常,实现在系统灵活配置,提高系统工作效率。  1 SVF格式配置文件   很多嵌入式系统中都用到了FPGA/CPLD等可编程器件,在这些系统中利用SVF格式配置文件就可以方便地通过微控制器对可编程器件进行重新配
[嵌入式]
基于ARM与<font color='red'>FPGA</font>的可重构设计
基于FPGA的DDS调频信号的研究与实现
1 引言   直接数字频率合成器(DDS)技术,具有频率切换速度快,很容易提高频率分辨率、对硬件要求低、可编程全数字化便于单片集成、有利于降低成本、提高可靠性并便于生产等优点。目前各大芯片制造厂商都相继推出采用先进CMOS工艺生产的高性能和多功能的DDS芯片,专用DDS芯片采用了特定工艺,内部数字信号抖动很小,输出信号的质量高。然而在某些场合,由于专用的DDS芯片的控制方式是固定的,故在工作方式、频率控制等方面与系统的要求差距很大,这时如果用高性能的FPGA器件设计符合自己需要的DDS电路就是一个很好的解决方法,它的可重配置性结构能方便的实现各种复杂的调制功能,具有很好的实用性和灵活性。 2DDS调频信号发生器框图设计
[嵌入式]
嵌入式闪存成就MAX 10 FPGA的系统价值
30年的低成本创新 中国有句俗话叫“30年河东,30年河西”,Altera在1984年发布了第一款非易失PLD EP300器件,30年间,可编程器件在性能上不断发展甚至挑战摩尔定律,工艺技术也有了长足的进步,电子设计领域出现了很多替代品,而终端应用领域更是发生了翻天覆地的变化,这一定是PLD的发明者不曾想到的。最近一年,终端需求也使得芯片领域加速创新。就Altera来说,在过去6个月,其相继发布了3款足够“有料”的FPGA及SoC系列:Arria 10、Stratix 10以及MAX 10,它们都是Altera在创新大潮中重磅推出的“第10代”(Generation 10)产品,也为Altera第4个十年打下了坚实的基础。
[嵌入式]
嵌入式闪存成就MAX 10 <font color='red'>FPGA</font>的系统价值
4DSP推出的FM480是基于Virtex-4 FPGA的PCI夹层卡
4DSP的PMC扩展卡可加速信号处理算法 4DSP公司日前推出的FM480是一款基于Virtex-4 FPGA的PCI夹层卡(PMC)。FM480已通过几种现场测试,所开发的首个应用是一个基于IEEE-754标准浮点FFT内核的2维快速傅立叶变换。 FM480 PMC可选传导散热方式,配有大容量的SRAM和DRAM资源以及超高速DMA引擎,因而适于作为协处理器单元以满足信号处理算法的需求。该卡还提供了几个前面板I/O模块,可实现相机、前端面板数据端口以及ADC连接。 FM480目前已向几个主要用户提供了样件,已开发的项目包括在Virtex-4 FPGA中实现的实时JPEG2000压缩。有关该产品的价格目前尚未公布。
[新品]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved