导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→用FPGA实现时钟分频和分配[sz20120406]

 *第31105篇: 用FPGA实现时钟分频和分配

  
楼 主:sz20120406 2012年4月11日13:02
 用FPGA实现时钟分频和分配
用FPGA实现时钟分频和分配
如图所示SpartanII系列芯片内部含有四个全数字延时锁定环(DLL),每一个DLL可驱动两个全局时钟分布网络。通过控制DLL输出时钟的一个采样可以补偿由于布线网络带来的时钟延时,从而有效消除从外部输入端口到器件内部各个时钟负载的延时。DLL除提供对用户输入时钟的零延时之外,还具有时钟倍频和分频功能。它可以对时钟源进行两倍频和1.5、2、3、4、5、8或16分频。本设计就是利用DLL的零延时和分频功能来实现对62.5MHz时钟的输出和16分频后4MHz(约)时钟的输出。
3.1 数字延时锁定环(DLL)的结构原理图3是一个DLL的内部原理框图,它由各类时钟延时线和控制逻辑组成。延时线主要用于对时钟输入端CLKIN产生一个延时。通过器件内部的时钟分布网络可将该输入时钟分配给所有的内部寄存器和时钟反馈端CLKFB。控制逻辑则主要用于采样输入时钟和反馈时钟以调整延时线。这里所说的延时线由压控延时或衰减延时组件构成,SpartanII系列芯片选用了后者。DLL可在输入时钟和反馈时钟之间不停地插入延时,直到两个时钟的上升沿同步为止。当两时钟同步时,DLL锁定。在DLL锁定后,只要输入时钟没有变化,两时钟就不会出现可识别偏差。因此,DLL输出时钟就补偿了时钟分布网络带来的输入时钟延时,从而消除了源时钟和负载之间的延时。
 
3.2 DLL功能的实现
SpartanII系列芯片内含专门实现DLL功能的宏单元模块BUFGDLL,其结构简图如图4所示。该模块由IBUFG、CLKDLL和BUFG三个库元件组成其原理框图如图5所示。图5中,CLKDLL库元件用于实现DLL的主要功能包括完成时钟的零延时输出、时钟的倍频以及分频和镜像操作。而IBUFG和BUFG则分别实现外部时钟的输入以及将输出时钟分配到芯片引脚。本设计的时钟分频就是将62.5MHz的时钟由IBUFG输入经CLKDLL分频后再由CLKDV端传给BUFG然后经片内IOBUF分配到芯片的普通I/O输出引脚。
  
(本文由Cogo商城-IC元器件在线采购平台搜集整理,
浏览 了解更多详细信息)



>>>>>>对该主题发表你的看法

本主题贴数1,分页: [第1页]


[上一篇主题]:印刷电路板基本制作方法[原创]

[下一篇主题]:移植Linux至晶心平台关键点经验传承[原创]