Language/Verilog & SV
[Verilog] Counter
VIR&US
2023. 7. 21. 19:06
반응형
목차
Counter
카운터를 활용하여, 기존 Clock의 주기를 Count 하여 동작의 기준을 새로 바꿔줄 수도 있고, SR(상태레지스터)를 일정 시간 후에 계속 확인을 한다던지, 시계, 타이머등을 설계할 수 있습니다. 가장 기본적인 Counter Code에 대해 다뤄보겠습니다.
해당 Code는 rst이 negedge일 때 counter를 0으로 초기화하고 Clock의 posedge때마다 1씩 상승합니다. 그리고 counter가 4'b1000에 도달하면 0으로 초기화합니다.
Code
module counter( input clk, rstn, output [3:0] cnt ); reg [3:0] count; assign cnt = count; always @ (posedge clk or negedge rstn) begin if (rstn) begin count <= 4'b0; end else begin if (count == 4'b1000) begin count <= 4'b0; end else begin count <= count + 4'b1; end end end endmodule
728x90
반응형