《Xilinx可编程逻辑器件设计与开发(基础篇)连载11:Spartan.docx》由会员分享,可在线阅读,更多相关《Xilinx可编程逻辑器件设计与开发(基础篇)连载11:Spartan.docx(3页珍藏版)》请在第一文库网上搜索。
1、CMT全局时钟垂直树BUFG和中央切换全局时钟垂直树XiIinX可编程逻辑器件设计与开发(基础篇)连载11:Spartan2.1.3时钟管理器(CMT)Spartan-6CMT是一个灵活、高性能的时钟管理模块。它位于芯片中央、垂直的全局时钟网络旁。如图2-17所示,它包含一个P11和两个匹M。P11CMT-DCM(x2)P11DCM(x2)图2-17Spartan-6FPGACMT片内布局图一、DCMSparta-6中的DCM与Spartan-3中的类似,如图2-18所示,同样由4部分组成。PsincdecPSENPSC1KPhaseShifterPSDONEC1KINC1KFBRSTC1KO
2、C1KdoC1K1OC1K270C1K2XC1K2X18OC1KDVC1KFXC1KFX1801OCKEDSTATUSC1ockIDis1nbufacxiHDe1ay图2-18DCM功能结构图(1)延时锁相环(D11)。D11延时锁相环可以根据输入时钟去除DCM的输出时钟歪斜,以完全消除时钟分布延迟。其原理是将时钟输入(C1KIN)与一个反馈输入(C1KFB)进行比较,然后控制延迟线选择器,通过在D11路径中加入合适的延迟直到C1KIN与C1KFB重合。D11输入时钟是C1KIN和C1KFB,输出时钟信号是C1K0、C1K90C1K180.C1K270、C1K2X、C1K2X180和C1KDV
3、o(2)数字频率综合器(DFS)。DFS有两个用户寄存器,用来设置相对于输入时钟(C1K1N)倍频(C1kfxjiu1tip1y)和分频(C1KFX_divid)系数。DFS可以单独使用,还可以和D11一起配合使用;如果DFS不花D11一起使用,C1KIN和DFS输出之间没有对应的相位关系。DFS的输出为C1KFX和C1KFX180o(3)相移单元(PS)o相移单元PS的输入信号有PS1NCDEC、PSEN和PSC1K,输出信号为PSDONE和STATUS0o相移模式包括固定相移和可变相移。固定相移是指DCM的9个时钟的相位输出,通常是输入时钟周期的若干分之一,固定相移值在设计中设定并在FPG
4、A配置时载入FPGA。除了固定相移,PS还支持可变相移,根据系统要求,通过数字接旦(PSINCDECPSEN和PSC1K)动态改变相移。每次动态改变的相移值为DCM_DE1AY_STEP,DCM_DE1AY_STEP对应的范围可参考附带光盘中的Spartan-6数据手册。(4)状态逻辑。状态逻辑反映DCM的状态,对应两个输出信号1OCKED和STATUS0。如图2-19所示,主要有2个DCM的原语调用,DCM_SP和DCM_C1KGEN。DCMSPC1KINC1KFBRSTPSENPsincdecPSC1KC1KOC1K90C1K180C1K270C1K2XC1K2X180C1KDVC1KFX
5、C1KFX180S7ATS(7.01OCKEDPSDONEDCMC1KGENC1KINC1KFXRSTC1KFX180C1KFXDVFreezedcmPRENSWUS21PRn*IQC*EF?-PRo/JE1b图2-19DCM原语DCM_SP提供DCM的传统特性:时钟DESKETV、频率综合和固定及可变相移。DCMSP所有的属性都是在设计时确定,上电配置的时候编程到FPGA,除了动态相移功能外,所有的属性在运行时是不可以更改的。DCMC1KGEN提供了如下更多的DFS性能。低抖动的C1KFX和C1KFX180输出。提高了输入时钟C1KIN的抖动容限。支持M和D的动态编程,动态设置C1KFX.MU1TIP1Y和C1KFX_DIVIDEOC1KFX.MU1TIP1Y和C1KFXDIVIDE属性值范围更大。当输入时钟丢失时,自激振蓝迷工作。具有扩频功能。在设计中特别要注意dcm_sp和dcm_c1kgen的特性和参数,请参考附带光盘中的Spartan-6时钟资源用户手册。