[DRC PDRC-179] MMCM_adv_ClkFrequency_div_no_dclk 错误解决
问题
在UltraScale+系列板卡上使用MMCME4_ADV原语时,出现如下错误。
使用MMCME4_ADV原语自己的需求是,输入100MHz时钟,然后经过MMCME4_ADV原语输出250MHz频率时钟。
解决
在官方UG572中相关的计算公式如下。
其中F(CLKIN)是MMCME4_ADV的输入时钟频率。F(OUT)是输出时钟频率。
M通过CLKFBOUT_MULT_F设置。
D通过DIVCLK_DIVIDE设置。
O通过CLKOUT_DIVIDE设置。
需要注意的是,F(VCO)是有频率范围的,F(VCO)频率要在800-1600MHz之间。
假如F(CLKIN)=100MHz,M=10,D=2,那么F(VCO)=500MHz,不在F(VCO)频率范围之内,就会报上述错误。
因此,在设置参数时,O是直接与输出的时钟频率相关,并且不影响F(VCO)频率范围的,所以对O的参数设置可以自主性更强一些。而对D的参数设置限制较大,很容易D设置的过大导致F(VCO)不在范围内,一般D设置为1或2就差不多。
M可以设置大一些,但是也要与D配合使用。文章来源:https://www.toymoban.com/news/detail-857901.html
回到我的需求,输入100MHz时钟,然后经过MMCME4_ADV原语输出250MHz频率时钟,可以这样设置:D=1,M=10,O=4,这样F(VCO)=1000MHz,在范围内,也能满足输出时钟频率。文章来源地址https://www.toymoban.com/news/detail-857901.html
到了这里,关于【Xilinx FPGA】 [DRC PDRC-179] MMCM_adv_ClkFrequency_div_no_dclk 错误解决的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!