ISE_pll_ip的建立

创建clk的ip核以及设置PLL的时钟输出

原理:外部晶振输入50M的频率,由ip核输出想要的频率

1、新建工程model再在“芯片”名称上建立clk的ip核

2、设置输入写为50M

3、设置想要的频率可多选

4、之后完成即可 调用

实例化pll_ip

5、程序

`timescale 1ns / 1ps
//
//仿真注意reset是先下降沿,在高电平
//
module model(
input clk,
input rst_n,
output clk_out //pll clock output
);
wire locked;
wire pll_clk_o;
/PLL IP 调用
pll_ip pll_ip_inst
(        
        .CLK_IN1(clk), // IN 50Mhz
        .CLK_OUT1(pll_clk_o), // OUT 25Mhz
        .CLK_OUT2(), // OUT 50Mhz
        .CLK_OUT3(), // OUT 75Mhz
        .CLK_OUT4(), // OUT 100Mhz
        // Status and control signals
        .RESET(~rst_n),// IN
        .LOCKED(locked)); // OUT 
///调用 ODDR2 使时钟信号通过普通 IO 输出// 
ODDR2 #(
.DDR_ALIGNMENT("NONE"), // Sets output alignment to "NONE", "C0" or "C1"
.INIT(1'b0), // Sets initial state of the Q output to 1'b0 or 1'b1
.SRTYPE("SYNC") // Specifies "SYNC" or "ASYNC" set/reset
) ODDR2_inst (
.Q(clk_out), // 1-bit DDR output data
.C0(pll_clk_o), // 1-bit clock input
.C1(~pll_clk_o), // 1-bit clock input
.CE(1'b1), // 1-bit clock enable input
.D0(1'b1), // 1-bit data input (associated with C0)
.D1(1'b0), // 1-bit data input (associated with C1)
.R(1'b0), // 1-bit reset input
.S(1'b0) // 1-bit set input
); 
endmodule

6、引脚

NET "clk" LOC = T8 | TNM_NET = sys_clk_pin;
TIMESPEC TS_sys_clk_pin = PERIOD sys_clk_pin 50000 kHz;
 

NET rst_n LOC = L3 | IOSTANDARD = "LVCMOS33";


NET clk_out LOC = J16 | IOSTANDARD = "LVCMOS33"; 

7、综合测试J16引脚即可

优势,快速方便,稳定。

转载于:https://www.cnblogs.com/wandashuai/p/10741059.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值