赞
踩
在Xilinx的FPGA中,CMT包含PLL和MMCM。
PLL(Phase Locked Loop): 为锁相回路或锁相环,用来统一整合时钟信号,使高频器件正常工作,如内存的存取资料等。PLL用于振荡器中的反馈技术。
MMCM(混合模式时钟管理):是基于PLL的新型混合模式时钟管理器,实现了最低的抖动和抖动滤波,为高性能的FPGA设计提供更高性能的时钟管理功能。
IP核名称为Clocking Wizard,直接在IP Catalog中搜索即可。
要注意更改输入时钟的频率,以及第二页末端reset的有效电平
配置好之后点击OK再点击生成即可
等待生成完成之后可以在IP Sources中找到.veo文件
该文件中生成了例化模板,可以直接拷贝使用
顶层文件代码示例:
`timescale 1ns / 1ps module ip_clk( input sys_clk , input sys_rst_n , output clk_out1 , output clk_out2 , output clk_out3 , output clk_out4 , output locked ); clk_wiz_0 instance_name ( // Clock out ports .clk_out1(clk_out1), // output clk_out1 .clk_out2(clk_out2), // output clk_out2 .clk_out3(clk_out3), // output clk_out3 .clk_out4(clk_out4), // output clk_out4 // Status and control signals .resetn(sys_rst_n), // input resetn .locked(locked), // output locked // Clock in ports .clk_in1(sys_clk)); // input clk_in1 endmodule
tb文件编写:
`timescale 1ns / 1ps module tb_ip_clk( ); reg sys_clk ; reg sys_rst_n ; wire clk_100M ; wire clk_100M_n ; wire clk_50M ; wire clk_25M ; wire locked ; initial begin sys_clk=1'b0; sys_rst_n=1'b0; #200 sys_rst_n=1'b1; end always #10 sys_clk=~sys_clk; ip_clk ip_clk_u( .sys_clk (sys_clk) , .sys_rst_n (sys_rst_n) , .clk_out1 (clk_100M) , .clk_out2 (clk_100M_n) , .clk_out3 (clk_50M) , .clk_out4 (clk_25M) , .locked (locked) ); endmodule
仿真波形:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。