DCM的基本使用 DCM消除时钟Skew FPGA 上 DCM 时钟管理单元的理解 -----Collected by SunK 看 Xilinx 的 Datasheet 会注意到 Xilinx 的 FPGA 没有 PLL,其实 DCM 就是时间管理单元。 ------------------------------------------------------------------------------- DCM 概述 DCM 内部是 DLL(Delay Lock Loop(?)结构,对时钟偏移量的调节是通过长的延时线形成 的。DCM 的参数里有一个 PHASESHIFT(相移),可以从 0 变到 255。所以我们可以假设内部结 构里从 clkin 到 clk_1x 之间应该有 256 根延时线(实际上,由于对不同频率的时钟都可以从 0 变到 255,延时线的真正数目应该比这个大得多)。DCM 总会把输入时钟 clkin 和反馈时钟 clkfb 相比较,如果它们的延时差不等于所设置的 PHASESHIFT,DCM 就会改变在 clkin 和 clk_1x 之间的延时线数目,直到相等为止。这个从不等到相等所花的时间,就是输出时钟锁定 的时间,相等以后,lock_flag 标识才会升高。 当 DCM 发现 clkin 和 clkfb 位相差不等于 PHASESHIFT 的时候,却去调节 clk_1x 和 clkin 之间延时,所以如果 clk_1x 和 clkfb 不相关的话,那就永远也不能锁定了。呵呵。 如何使用 DCM DCM 一般和 BUFG 配合使用,要加上 BUFG,应该是为了增强时钟的驱动能力。DCM 的一般……