当前位置:   article > 正文

FPGA学习笔记(二):clk IP核的使用_clk_wiz_0

clk_wiz_0

笔记二是简单介绍clk IP核的使用,并且通过仿真进行验证

 1.打开VIVADO,点击IP Catalog

 

2. 搜索clk,选择Clocking Wizard

 

3. 配置参数

(1) 选择MMCM

 

 

 (2) 设置主频50Mhz

 (3) 设置输出的4个clk的参数,分别是50M,25M,100M,100M反相。Phase表示相位,0表示同相,180表示反相。

 

 

 (3) 其他参数

 4. 测试文件

  1. module tb_clock;
  2. reg clk; // 输入时钟
  3. reg rst_n; // 输入复位
  4. wire clk_50M; // 输出50M clk
  5. wire clk_25M; // 输出25M clk
  6. wire clk_100M; // 输出100M clk
  7. wire clk_100M_180deg; // 输出100M_180deg
  8. wire locked; // 输出稳定的信号
  9. // 例化clk_wiz IP核
  10. clk_wiz_0 U1
  11. (
  12. // Clock out ports
  13. .clk_50M(clk_50M), // output clk_50M
  14. .clk_25M(clk_25M), // output clk_25M
  15. .clk_100M(clk_100M), // output clk_100M
  16. .clk_100M_180deg(clk_100M_180deg), // output clk_100M_180deg
  17. // Status and control signals
  18. .reset(~rst_n), // input reset
  19. .locked(locked), // output locked
  20. // Clock in ports
  21. .clk_in1(clk)); // input clk_in1
  22. // 初始化
  23. initial
  24. begin
  25. clk =0; // clk为低电平
  26. rst_n =0; // 复位为低电平
  27. # 50 // 延时50ns
  28. rst_n = 1; // 复位为高电平
  29. end
  30. always #10 clk = ~clk; // clk周期为20ns
  31. endmodule

其中clk_wiz的例化可参考模板。点击IP Sources

 

点开veo文件 

 找到其中的例化模板,对应更改。其中例化模板如下:

  1. clk_wiz_0 instance_name
  2. (
  3. // Clock out ports
  4. .clk_50M(clk_50M), // output clk_50M
  5. .clk_25M(clk_25M), // output clk_25M
  6. .clk_100M(clk_100M), // output clk_100M
  7. .clk_100M_180deg(clk_100M_180deg), // output clk_100M_180deg
  8. // Status and control signals
  9. .reset(reset), // input reset
  10. .locked(locked), // output locked
  11. // Clock in ports
  12. .clk_in1(clk_in1)); // input clk_in1

5. 仿真结果

观察lockwd信号为高电平之后的结果,locked为高电平时表示系统稳定。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/434779
推荐阅读
相关标签
  

闽ICP备14008679号