verilog hdl 分频器

      晶振时钟频率为50MHz,欲得到4Hz的频率,就要进行50MHz/4Hz=12.5M次分频(晶振时钟周期为20ns,欲得到0.25s的时钟周期信号,就要进行0.25s/20ns=12.5M次分频)。时钟翻转要等待的时间为0.125s,则0.125s=20ns*(12.5M/2),所以需要等待12.5M/2次,即50MHz/4Hz/2次时钟上升沿跳变。容易得到分频器的条件公式:

p==晶振频率/2/欲得到的时钟频率 - 1;(p为整型计数值,从零开始计数)

module div(
  input clk,
  output reg clk_4Hz
  );


  integer p;


  always @(posedge clk)
   begin
    if(p==25000000/4 - 1)

begin
    p=0;
     clk_4Hz <= ~clk_4Hz;
    end
    else

p = p + 1;
   end
endmodule

  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值