码迷,mamicode.com
首页 > 其他好文 > 详细

第一个FPGA程序——100MHz时钟分频

时间:2020-07-06 16:33:26      阅读:90      评论:0      收藏:0      [点我收藏+]

标签:0ms   https   mamicode   ima   文件   out   mod   class   img   

1.源文件

`timescale 1ns / 1ps

module first_verilog(
    input clk,
    input rst,
    output reg  cycle_20ms
    );
    
reg [23:0] cnt_reg ;

always @(posedge clk)
begin
    if(rst)
    begin
        cnt_reg <= 24d1;
        cycle_20ms <= 1b0;
    end
    else
    begin
        cnt_reg <= cnt_reg + 24d1;
        if(cnt_reg == 24d1000000)
        begin
            cnt_reg <= 24d1;
            cycle_20ms <= ~cycle_20ms;
        end
    end
end

endmodule

 

2.激励文件

`timescale 1ns / 1ps

module tb_first_verilog();

reg     clk;
reg     rst;
reg    cycle_20ms;

first_verilog first_verilog_ins(
    .clk(clk),
    .rst(rst),
    .cycle_20ms());
    
parameter PERIOD = 10;

always
begin
    clk = 1b0;
    #(PERIOD/2);
    clk = 1b1;
    #(PERIOD/2);
end

initial
begin
    clk = 1b0;
    rst = 1b0;
    #(10 * PERIOD);
    rst = 1b1;
    #(10 * PERIOD);
    rst = 1b0;
end
    
endmodule

 

3.仿真结果

100MHz时钟

技术图片

 

分频周期20ms的时钟

技术图片

第一个FPGA程序——100MHz时钟分频

标签:0ms   https   mamicode   ima   文件   out   mod   class   img   

原文地址:https://www.cnblogs.com/risunlee/p/13255110.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!