赞
踩
笔记二是简单介绍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. 测试文件
- module tb_clock;
- reg clk; // 输入时钟
- reg rst_n; // 输入复位
- wire clk_50M; // 输出50M clk
- wire clk_25M; // 输出25M clk
- wire clk_100M; // 输出100M clk
- wire clk_100M_180deg; // 输出100M_180deg
- wire locked; // 输出稳定的信号
- // 例化clk_wiz IP核
- clk_wiz_0 U1
- (
- // Clock out ports
- .clk_50M(clk_50M), // output clk_50M
- .clk_25M(clk_25M), // output clk_25M
- .clk_100M(clk_100M), // output clk_100M
- .clk_100M_180deg(clk_100M_180deg), // output clk_100M_180deg
- // Status and control signals
- .reset(~rst_n), // input reset
- .locked(locked), // output locked
- // Clock in ports
- .clk_in1(clk)); // input clk_in1
- // 初始化
- initial
- begin
- clk =0; // clk为低电平
- rst_n =0; // 复位为低电平
- # 50 // 延时50ns
- rst_n = 1; // 复位为高电平
- end
- always #10 clk = ~clk; // clk周期为20ns
- endmodule

其中clk_wiz的例化可参考模板。点击IP Sources
点开veo文件
找到其中的例化模板,对应更改。其中例化模板如下:
- clk_wiz_0 instance_name
- (
- // Clock out ports
- .clk_50M(clk_50M), // output clk_50M
- .clk_25M(clk_25M), // output clk_25M
- .clk_100M(clk_100M), // output clk_100M
- .clk_100M_180deg(clk_100M_180deg), // output clk_100M_180deg
- // Status and control signals
- .reset(reset), // input reset
- .locked(locked), // output locked
- // Clock in ports
- .clk_in1(clk_in1)); // input clk_in1
5. 仿真结果
观察lockwd信号为高电平之后的结果,locked为高电平时表示系统稳定。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。