可实现快速锁定的FPGA片内延时锁相环设计

2011-08-16 17:10:09来源: 互联网 关键字:FPGA  DLL  锁相环
    微电子技术的持续发展使得FPGA具有更高的系统集成度和工作频率。系统性能较大程度上决定于系统的时钟延迟和偏斜。由于FPGA具有丰富的可编程逻辑资源及时钟网络,随之而来的时钟延迟问题使得用户设计的性能大打折扣。FPGA中的DLL模块可提供零传播延时,消除时钟偏斜,从而进一步提高了FPGA的性能和设计的灵活性。

  PLL是常用的时钟管理电路,主要是基于模拟电路设计实现的,而DLL主要是基于数字电路设计实现的。虽然在时钟综合能力上比PLL差,但由于具有设计仿真周期短,抗干扰性强,以及工艺可移植等特点,DLL非常适合在数字系统架构中使用,这也是FPGA采用DLL作为时钟管理的原因。文中将介绍传统FPGA片内延时锁相环设计,并在此基础上提出具有更快锁定速度的新延时锁相环架构OSDLL。

  1 FPGA片内DLL结构及工作原理

  1.1 DLL架构设计

  图1为FPGA片内DLL结构框图。图1中FPGA片内用户设计的时序逻辑部分在布局布线后,位于芯片中部,相应的时钟走线较长。为缓解时钟缓冲、重负载时钟线的大电容、线路的传播延时等因素造成的时钟偏斜,可以选择使用DLL模块进行时钟优化管理。

 

  图1中,DLL主要由鉴相器(PD)、可调延时链、数字控制逻辑以及时钟生成模块组成。CLKOUT为DLL输出时钟,即时钟生成模块的输出时钟;CLKS为经过时钟线后到达时序电路的偏斜时钟;CLKFB即为CIKS,反馈时钟CLKFB反馈回DLL。DLL的功能为通过在时域中调节CLKOUT的相位使得CLKFB与CLKIN同步,即消除时钟偏斜。

  1.2 DLL工作原理

  DLL的工作过程依赖于控制逻辑的设计。DLL的控制逻辑主要包括SHIFT控制逻辑和SYN控制逻辑两部分,如图2所示。DLL的工作过程首先进行SHIFT阶段,之后进行SYN阶段。

 

  从图2可见,可调延时链共5条,即一条主可调延时链(延时链0,256个延时单元),4条子可调延时链(延时链1~4,各128个延时单元)。如图2所示,4条子延时链,SHIFT逻辑和一个鉴相器(PD2)构成相移器。SHIFT阶段,相移器工作。相移器采集第一级子延时链的输入时钟clk_ph_0和最后一级延时链的输出时钟clk_ph_360,根据鉴相结果同步调整4条子可调延时链的延时,直至clk_ph_O和clk_ph_360同步。经过相移器的时钟延时是一个周期,从而使得时钟经过相移器中的每个子延时链的输出时钟相移90°,对应图2中分别为clk_ph_O,clk_ph_90,clk_ph_180,clk_ph_270,clk_ph_360。这些相移的时钟可以根据实际的需要由时钟生成模块产生所需要分频(CLKDV),倍频(CIK2X)或移相时钟作为输出时钟,关于分频和倍频电路,如文献。SYN逻辑用于控制将反馈时钟和输入时钟调整至同步。

  整个SHIFT阶段和SYN阶段都是在各自的控制逻辑模块控制下工作的,以一定的工作节拍实施调整,如图3所示。

 

  图2中工作节拍模块生成工作节拍信号(SHIFT_C,SYN_C)。在工作节拍下,状态机处于某一状态,则根据状态的调整要求依次进行如下操作:鉴相,判断出输入时钟和反馈时钟的相位关系为超前或滞后(SHT_U_D)或SYN_U_D),同时还可以指示两时钟是否进入锁定窗(SHT_WIN,SYN_WIN),如图l所示。鉴相器将这些信息送入控制逻辑模块,在SHIFT阶段,4条延时链对应各自的可逆计数器,负责控制延时链加减延时单元,各计数器工作在自己的时钟域中,如图2所示。根据鉴相的结果和所处的状态机状态,计数器进行计数,计数结果作为延时链的译码地址,最后延时链经过地址译码增加/减少一个延时单元,完成一次工作节拍调节,继而继续进行下一次调整,直到状态机进入锁定状态为止。SYN阶段工作方式类似,但只对主延时链进行调整。实现DLL锁定,同步建立需满足公式,如式(1)所示。

DSYN+SKEW=mult(P) (1)

  式中,DSYN为主延时链可以提供的延时;SKEW为时钟偏斜;muh(P)为整数个输入时钟周期。

  1.3 抗抖动设计

  如图2所示,控制逻辑中JF counter1和JF counter2功能模块。用户可以设置抗抖动数值d1,d2,如图1所示,从而对这两个模块中的计数器设定一个计数周期。在DLL锁定之后这两个模块开始工作,按照计数设定值的周期性对锁定后的时钟进行检测。即在计数器达到设定值时,对锁定后的反馈时钟和输入时钟进行鉴相,判断相位关系,控制可逆计数器对锁定后的时钟进行周期性微调干预。如图4所示,在系统内存在干扰时,会产生时钟抖动,若抗抖动模块工作检测到反馈时钟超前于输入时钟,则进行一次微调,消除抖动的影响。抗抖动设计有助于减少抖动的影响。同时由于计数周期可设,使得用户可以在不同系统工作环境下,采用不同的抗抖动设定值,以达到最优的防抖效果。

 


关键字:FPGA  DLL  锁相环

编辑:北极风 引用地址:http://www.eeworld.com.cn/FPGA/2011/0816/article_2397.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:一种高速帧同步和相位模糊估计的方法及其FPGA实现
下一篇:基于FPGA短波差分跳频信号发生器的设计与实现

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利
推荐阅读
全部
FPGA
DLL
锁相环

小广播

独家专题更多

东芝在线展会——芯科技智社会创未来
东芝在线展会——芯科技智社会创未来
2017东芝PCIM在线展会
2017东芝PCIM在线展会
TI车载信息娱乐系统的音视频解决方案
TI车载信息娱乐系统的音视频解决方案
汇总了TI汽车信息娱乐系统方案、优质音频解决方案、汽车娱乐系统和仪表盘参考设计相关的文档、视频等资源

夏宇闻老师专栏

你问我答FPGA设计

北京航空航天大学教授,国内最早从事复杂数字逻辑和嵌入式系统设计的专家。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2017 EEWORLD.com.cn, Inc. All rights reserved