题解 | #无占空比要去的奇数分频#

alt

`timescale 1ns/1ns


module odd_div (    
    input     wire rst ,
    input     wire clk_in,
    output    wire clk_out5
);

parameter N = 5;

reg [2:0] cnt;
reg       clk_n;

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

always @(posedge clk_in or negedge rst) 
begin
  if(!rst)
    clk_n <= 1'b0;
    else if (cnt == (N-1)/2)
    clk_n <= ~clk_n;
  else if (cnt <= 3'b000)
    clk_n <= ~clk_n;
  else
    clk_n <= clk_n;
end

assign clk_out5 = clk_n;


endmodule
《Verilog/VHDL必刷习题集》 文章被收录于专栏

Verilog/VHDL必刷习题集,包含基础知识、组合逻辑设计、时序逻辑设计、状态机设计、RAM及FIFO设计等等。

全部评论

相关推荐

人间雪:简历最好只要一页,除非你牛逼到一页都写不下了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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