原文连接,版权所有
对于FPGA工程师来说,DCM / DLL / MMCM / PLL这些词简直每天都能看到,但很多人并不是很清楚它们之间的差异。
在Xilinx的FPGA中,时钟管理器称为Clock Management,简称CMT。我们所用到的DCM / PLL / MMCM都包含在CMT中。
DCM是比较早的FPGA中使用的,某些Sparten-3和Virtex-4,后面的器件不再使用了。在Virtex-4中,CMT包括一个PLL和两个DCM。DCM的核心是DLL,即延迟Locked Loop,它是一个数字模块,可以产生不同相位的时钟,分频,倍频,相位动态调整等,但精度有限。
PLL就是锁相环,这个大家应该都熟悉,时钟倍频,分频,调节相位等都是可以用PLL,而且PLL是一个模拟电路,它产生的频率比DCM更加准备,jitter也更好,但PLL无法动态调整相位。
MMCM是混合模式时钟管理器,它的官方解释是:这是一个PLL,上面加上了DCM的一小部分以进行精细的相移(这就是它的混合模式的原因-PLL是模拟的,但是相移是数字的) 。它是在PLL的基础上加上了相位动态调整功能,因为PLL是模拟电路,而动态调相是数字电路,所以叫混合模式。MMCM是在Virtex-6中被约会的,而且Virtex-6中也只有MMCM。
7s FPGA中,最高包含了24个CMT,每个CMT包含一个MMCM和一个PLL。Ultrascale中,一个CMT包含一个MMCM和两个PLL。
MMCM相对PLL的优势就是相位可动态调整,但PLL占用的面积更小。
MMCM最低10MHz,PLL最低要求70MHz
PLL输出时钟和输入时钟之间的相位关系是未知的,但MMCM是可以选择对齐输入输出相位的。
同时PLL只有两个输出时钟,而MMCM有6个。文章来源:https://www.toymoban.com/news/detail-722644.html
在Vivado中,在使用Clock Wizard时,我们可以选择使用MMCM或者PLL,而且可以它们的区别也仅仅是下图的红框部分。
文章来源地址https://www.toymoban.com/news/detail-722644.html
到了这里,关于Xilinx FPGA 中PLL与MMCM区别的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!