最近评估使用了下XILINX最新的Spartan-6 FPGA器件,感觉跟前一代使用比较多的Spartan-3E FPGA器件相比性能有了很大的提高, 如Spartan-6的时钟管理模块就引入了以前在高端器件Virtex-5才有的模拟锁相环(PLL).本文从用户角度介绍了Spartan-6 FPGA时钟管理模块的特性,并就它的使用做了一个总结, 可供使用Spartan-6时钟管理模块时参考。
闲话少说,书归正传,我们知道同步时序电路设计中最关键的是时钟设计,随着电路规模与速度的提高,对时钟的周期、占空比、延时和抖动等方面的要求也越来越高。为了顺应这需求,Spartan-6系统器件在原有的DCM模块基础引入了模拟PLL模块构成了功能强大、控制灵活的时钟管理模块(CMT)。每个CMT模块包含两个DCM模块和一个PLL模块。Spartan-6系统器件有多至六个 CMT模块。
一、器件组成与特性
1.DCM模块主要有以下功能模块组成:
a.DLL模块, 主要由延时线和控制逻辑组成。
b.数字频率合成器,为系统产生丰富的频率合成信号输出到CLKFX和CLKFX180。可以提供2~32的倍乘与1~32的分频系数。
c.数字移相器, 可提供粗调的0,90,180,270度移相和具有动态调节能力的相位细调。
d.数字频谱合成器,产生扩频时钟减少电磁干扰(EMI)。
Spartan-6 DCM模块提供给用户的设计原语有DCM_SP和DCM_CLKGEN,DCM_SP在Spartan-3E FPGA器件中也有,而DCM_CLKGEN是Spartan-6新增的,可以用产生动态的频率合成信号和扩频时钟。
2. PLL模块,有一400MHz~1000 MHz压控振荡器(VCO),可提供8种移相(0°, 45°, 90°, 135°, 180°, 225°, 270°, 315°)和6个可独立编程倍乘与分频系数的输出信号。提供给用户的设计原语有PLL_BASE和PLL_ADV,PLL_BASE是单独使用PLL模块最常调用的原语,允许使用PLL的最常用特性,PLL_ADV包括PLL_BASE所有的特性之外,还提供时钟切换及与DCM的连接。可用于以下工作模式:
a. 时钟网络去歪斜
b. 频率合成
c. 抖动滤波
d. 零延时的缓冲
f. PLL与PLL、DCM的级联 |