题解 | #占空比50%的奇数分频#

占空比50%的奇数分频

https://www.nowcoder.com/practice/ccfba5e5785f4b3f9d7ac19ab13d6b31

`timescale 1ns/1ns

module odo_div_or
   (
    input    wire  rst ,
    input    wire  clk_in,
    output   wire  clk_out7
    );

//*************占空比50%的奇数N分频(7分频) 半个周期为3.5个clk_in***********//

//关键是(N-1)/2和(N-1)翻转,上升沿和下降沿分别计数

reg[2:0] cnt;
reg clk_pos,clk_neg;


always@(posedge clk_in or negedge rst)begin
    if(!rst)
        cnt <=3'd0;
    else if(cnt==3'd6)
        cnt <=3'd0;
    else
        cnt <=cnt+1'b1;
end

always@(posedge clk_in or negedge rst)begin
    if(!rst)
        clk_pos  <= 0;
    else if(cnt== 3'd3 || cnt == 3'd6 )
        clk_pos  <= ~clk_pos;
    else
        clk_pos  <= clk_pos;
end

always@(negedge clk_in or negedge rst)begin
    if(!rst)
        clk_neg  <= 0;
    else if(cnt== 3'd3 || cnt == 3'd6 )
        clk_neg  <= ~clk_neg;
    else
        clk_neg  <= clk_neg;
end

assign clk_out7 = clk_pos|clk_neg;


endmodule

全部评论

相关推荐

门口唉提是地铁杀:之前b站被一个游戏demo深深的吸引了。看up主页发现是个初创公司,而且还在招人,也是一天60。二面的时候要我做一个登录验证和传输文件两个微服务,做完要我推到github仓库,还要我加上jaeger和一堆运维工具做性能测试并且面试的时候投屏演示。我傻乎乎的做完以后人家跟我说一句现在暂时不招人,1分钱没拿到全是白干
你的秋招第一场笔试是哪家
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务