[RTLLM-p027] Control/Counter/counter_12 的題解


記住 在沒有思路時使用題解,不要從它複製貼上程式碼。請尊重題目和題解的作者。
在真正解決題目之前提交題解的程式碼是可以封禁的罪行。

作者: m1145505

`timescale 1ns/1ps
module counter_12 
(
  input rst_n,
  input clk,
  input valid_count,

  output reg [3:0] out
);

  always @(posedge clk or negedge rst_n) begin
    if (!rst_n) 
    begin
      out <= 4'b0000;
    end 

    else if (valid_count) 
    begin
      if (out == 4'd11) 
      begin
        out <= 4'b0000;
      end 
      else begin
        out <= out + 1;
      end
    end 

    else begin
      out <= out; // Pause the count when valid_count is invalid
    end
  end

endmodule

評論

目前沒有評論。