datasheet:https://www.xilinx.com/support/documentation/ip_documentation/clk_wiz/v4_2/pg065-clk-wiz.pdf
这个时钟模块的功能主要有:
主要的功能有:
①可以设置两个输入时钟,最多7个时钟输出。
⑤可以支持不同相位和占空比的需求。
⑥支持扩频技术。
如何使用?
首先在在第一个工程的基础上,我们添加一个Clocking Wizard的IP核。右键点击New Source,弹出如图所示的Wizard中,选择source type为IP(CORE Generator & Architecture Wizard),File name输入clk,然后点击Next。
然后进入选择,这个时钟模块可以进行选择:
如图所示,Page1中可以选择各个功能,是否需要相移以及扩频。本文主要使用了第一个功能,倍频。
各个功能如下图所示:
设置为不同频率时钟输出,如下图所示:
分别是分频和倍频,以下为testbench:
`timescale 1ns / 1ps
////////////////////////////////////////////////////////////////////////////////
// Company:
// Engineer:
//
// Create Date: 10:58:16 08/23/2017
// Design Name: clk
// Module Name: G:/SIFT/SIFT/git_1/hist/tb_clk_1.v
// Project Name: hist
// Target Device:
// Tool versions:
// Description:
//
// Verilog Test Fixture created by ISE for module: clk
//
// Dependencies:
//
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
//
////////////////////////////////////////////////////////////////////////////////
module tb_clk_1;
// Inputs
reg CLK_IN1;
reg RESET;
// Outputs
wire CLK_OUT1;
wire CLK_OUT2;
wire CLK_OUT3;
wire CLK_OUT4;
wire CLK_OUT5;
wire LOCKED;
// Instantiate the Unit Under Test (UUT)
clk uut (
.CLK_IN1(CLK_IN1),
.CLK_OUT1(CLK_OUT1),
.CLK_OUT2(CLK_OUT2),
.CLK_OUT3(CLK_OUT3),
.CLK_OUT4(CLK_OUT4),
.CLK_OUT5(CLK_OUT5),
.RESET(RESET),
.LOCKED(LOCKED)
);
initial begin
// Initialize Inputs
CLK_IN1 = 0;
RESET = 0;
// Wait 100 ns for global reset to finish
// #100;
// Add stimulus here
end
initial begin
forever begin
#5 CLK_IN1 <= ~CLK_IN1;
end
end
endmodule
输出为:
完成分频和倍频。其中locked的输出表示输出时钟信号稳定可用。
The end.
referrence:http://www.eefocus.com/ilove314/blog/12-02/238051_b3c65.html
------------------------------------------------------------------------------------------------------------------
更新:在使用多个时钟是会出现问题:Port <CLK> has illegal connections. This port is connected to an input buffe.
解决方法:
http://www.eetop.cn/blog/html/14/56214-20413.html