七分频,即将输入信号的频率变为原来的七分之一,本文用计数器实现输入信号的七分频
一、画出七分频的时序逻辑
实现原理:
- 图中用到了两个计数器,一个上升沿触发一个下降沿触发。且每当计数器从0计数到6时,复位。
- 中间信号sig1、sig2分别在cnt1、cnt2等于1-4时为高电平
- 这样,把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 &