clkdiv1000.v

来自「用verlog HDL写的电子日历,可以显示年,月,日和时间,具有闹铃的功能」· Verilog 代码 · 共 26 行

V
26
字号
/* 1.时钟分频子模块(1000分频,1ms->1s)
    输出时钟clkout在计够1000个数后才有一个正跳变! */
module clkdiv1000(clkin,clkout,count);
    parameter count_width=1000;      //1000分频,Tclkout/Tclkin = 1s /(1ms) = 1000
    input clkin;               
    output clkout;
    output[9:0] count; 
    reg clkout;                             
    reg[9:0] count;
    
    always @(posedge clkin)
       begin
         if(count == count_width-1)
           begin
             clkout<=1; // clkout只在计数值为999时为"1",其他时候都为"0";采用非阻塞赋值, clkout比count值正好滞后一个时钟周期
             count <= 0;
           end
         else
           begin
             clkout<=0;
             count <= count+1;
           end
       end          
endmodule               

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?