计数器实现七分频

本文通过计数器详细阐述了如何使用Verilog实现七分频,即降低输入信号频率至原来的七分之一。主要步骤包括:1) 设计包含两个计数器的时序逻辑,当计数达到6时复位;2) 利用中间变量sig1和sig2,在特定计数值时产生高电平;3) 将sig1和sig2相与得到最终的七分频信号div_clk_7;4) 创建TB文件进行验证。
摘要由CSDN通过智能技术生成

七分频,即将输入信号的频率变为原来的七分之一,本文用计数器实现输入信号的七分频

一、画出七分频的时序逻辑

在这里插入图片描述

实现原理:

  1. 图中用到了两个计数器,一个上升沿触发一个下降沿触发。且每当计数器从0计数到6时,复位。
  2. 中间信号sig1、sig2分别在cnt1、cnt2等于1-4时为高电平
  3. 这样,把sig1和sig2两个信号相与,就能得到一个频率为clk/7 的输出信号div_7。
    七分频就这样实现了

二、用verilog描述以上逻辑

1. 两个计数器的描述

reg [7:0] cnt1;
reg [7:0] cnt2;
//定义一个时钟从0到6 上升沿
always @(posedge clk or negedge rst_n) begin
  if(~rst_n)begin
    cnt1 <= 8'b0;
  end
  else if (cnt1 == 8'd6)begin
    cnt1 <= 8'b0;
  end
  else begin
    cnt1 <= cnt1 + 8'b1;
  end
end

//定义一个时钟从0到6 下降沿
always @(negedge clk or negedge rst_n) begin
  if(~rst_n)begin
    cnt2 &
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值