4비트 카운터
Coddy Verilog 여정의 기초 섹션에 포함된 레슨 — 90개 중 84번째.
챌린지
0부터 15까지 카운트하고 다시 0으로 돌아가는 4비트 카운터를 설계하세요.
모듈 인터페이스
| 포트 | 방향 | 비트 너비 | 설명 |
|---|---|---|---|
clk | input | 1 bit | 클록 신호 |
reset | input | 1 bit | 카운터를 0으로 리셋 |
count | output | 4 bits | 현재 카운터 값 |
진리표
| 클록 사이클 | count |
|---|---|
| 리셋 후 | 0 |
| 1 | 1 |
| 2 | 2 |
| ... | ... |
| 15 | 15 |
| 16 | 0 (다시 시작) |
여러분의 과제는 아래 모듈을 완성하는 것입니다.
수행할 작업:
reset시,count를 0으로 설정합니다.- 매 상승 클록 엣지(rising clock edge)마다
count를 1씩 증가시킵니다. count가 15에 도달하면, 다음 증가 시 0으로 돌아가야 합니다.
직접 해보기
module counter (
input clk,
input reset,
output reg [3:0] count
);
// TODO: posedge clk와 posedge reset을 사용하는 always 블록 추가
// 리셋 시: count <= 0
// 그 외의 경우: count <= count + 1
endmodule