Xilinx DCM 使用---- 输出频率问题

  最近在使用Xilinx FPGA验证项目,使用DCM将50M晶振分频得到20M时钟。但是下载代码到板子上验证,发现板子完全不工作。

然后 测量时钟,发现根本就没有20M时钟。查找资料,以及跟以前项目对比,DCM的使用没有错误。

  项目中DCM的使用如下:

  DCM u_dcm_20m(

  .CLKIN  (clk50m),

  .CLKFX   (clk20m),

  .RST   (rst_n  ),

  .LOCKED  (locked )

  );

  defparam u_dcm_20m.CLKFX_DIVIDE = 5;

  defparam u_dcm_20m.CLKFX_MULTIPLY = 2;

  defparam u_dcm_20m.CLKIN_PERIOD = 20;

  defparam u_dcm_20m.CLK_FEEDBACK = "NONE";

  按照FPGA user guide上的讲述,完全没错,如下图红色框中所示:

 

  但是测试结果就是不对。后来在 Virtex-4 FPGA Data Sheet: DC and Switching Characteristics这篇

文档里找到了答案。如来是DCM的CLKFX的输出范围是有限制的,同时对输入频率也有要求的,如下面红框所示:

 

  在低频模式下,CLKFX只能输出32M~150Mhz的频率,而20MHz不再这个范围内,因此要使用CLKDV,20M在其

输出范围内。

  所以 做设计要看Spec,而且不能只看部分Spec。这个小问题,找了好久原因,今晚记录下来,与大家共勉。

 

转载于:https://www.cnblogs.com/hxing/p/5986452.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值