题解 | #时钟分频(偶数)#

时钟分频(偶数)

https://www.nowcoder.com/practice/49a7277c203a4ddd956fa385e687a72e

`timescale 1ns/1ns

module even_div
    (
    input     wire rst ,
    input     wire clk_in,
    output    wire clk_out2,
    output    wire clk_out4,
    output    wire clk_out8
    );
//*************code***********//
reg [2:0]count;
always@(posedge clk_in or negedge rst)begin
    if(!rst)begin
        count<=0;
    end
    else begin
        if(count==3'd7)begin
            count<=0;
        end
        else begin
            count<=count+1;
        end
    end
end

reg out2_reg;
reg out4_reg;
reg out8_reg;
always@(posedge clk_in or negedge rst)begin
    if(!rst)begin
        out2_reg<=0;
    end
    else begin
        case(count)
        3'd0:out2_reg<=1;
        3'd2:out2_reg<=1;
        3'd4:out2_reg<=1;
        3'd6:out2_reg<=1;
        default:out2_reg<=0;
        endcase
    end
end
always@(posedge clk_in or negedge rst)begin
    if(!rst)begin
        out4_reg<=0;
    end
    else begin
        case(count)
        3'd0:out4_reg<=1;
        3'd1:out4_reg<=1;
        3'd4:out4_reg<=1;
        3'd5:out4_reg<=1;
        default:out4_reg<=0;
        endcase
    end
end
always@(posedge clk_in or negedge rst)begin
    if(!rst)begin
        out8_reg<=0;
    end
    else begin
        if(count<4)begin
            out8_reg<=1;
        end
        else begin
            out8_reg<=0;
        end
    end
end

assign clk_out2=out2_reg;
assign clk_out4=out4_reg;
assign clk_out8=out8_reg;
//*************code***********//
endmodule

写的有点丑,但能运行

全部评论

相关推荐

寿命齿轮:实习就一段还拉了,项目一看就不是手搓,学历也拉了,技术栈看着倒是挺好,就是不知道面试表现能咋样。 不过现在才大三,争取搞两端大厂实习,或者一个纯个人项目+一段大厂,感觉秋招还是未来可期。
投递美团等公司10个岗位
点赞 评论 收藏
分享
Noob1024:一笔传三代,人走笔还在
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
昨天 15:41
已编辑
淘天 算法工程师 31.0k*16.0
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务