티스토리 뷰

반응형
 

안녕하세요 😊
오늘은 전기전자 회로에서 숫자를 세거나 상태를 변경하는 디지털 소자
카운터(Counter)에 대해 알아보겠습니다.
카운터는 클럭 신호(Clock Signal)에 따라 값이 증가하거나 감소하며,
타이머, 시계, 메모리 주소 생성 등 다양한 곳에서 사용됩니다.


🔌 카운터란 무엇인가요?

카운터(Counter)는 디지털 신호의 입력에 따라 숫자를 세는 회로입니다.
클럭 신호가 들어올 때마다 플립플롭(Flip-Flop)이 0 → 1 또는 1 → 0으로 상태를 전환하며,
이진수(Binary) 형태로 값을 셉니다.

💡 비유:
카운터는 마치 지하철 게이트와 같습니다.
한 명씩 지나갈 때마다 숫자가 증가하는 원리입니다.


🔧 카운터의 주요 역할

 

역할 설명 예시
이벤트 카운팅 특정 신호가 몇 번 발생했는지 셈 버튼 클릭 수, 충전 횟수
타이머 정해진 시간마다 값이 증가 전자 시계, 알람
주파수 나누기 클럭 신호를 나누어 출력 클럭 분주기, 디지털 필터
메모리 주소 생성 순차적으로 주소를 생성 RAM, CPU 메모리 주소
 

🧱 카운터의 종류

 

종류 특징 용도
비동기식 카운터 (Asynchronous Counter) 각 플립플롭이 순차적으로 변경됨 간단한 타이머, 클럭 나누기
동기식 카운터 (Synchronous Counter) 모든 플립플롭이 동시에 변경됨 빠른 응답, 메모리 주소 생성
업 카운터 (Up Counter) 0 → 1 → 2 → 3 … 순으로 증가 이벤트 카운팅
다운 카운터 (Down Counter) 3 → 2 → 1 → 0 … 순으로 감소 카운트다운 타이머
업/다운 카운터 (Up/Down Counter) 상황에 따라 증가/감소 가능 디지털 회로 제어
 

🎨 카운터의 기본 구조

카운터는 플립플롭의 조합으로 이루어집니다.

  • 1비트 카운터: 0 → 1 (Toggle)
  • 2비트 카운터: 00 → 01 → 10 → 11
  • 3비트 카운터: 000 → 001 → 010 → 011 → 100 → 101 → 110 → 111

💡 실무 팁:
비트 수가 늘어날수록 2의 제곱 형태로 숫자를 셀 수 있습니다.
예를 들어, 3비트는 2³ = 8까지 셀 수 있습니다.


📐 진리표와 타이밍 다이어그램

✔️ 2비트 업 카운터 진리표

 

클럭 Q1 (MSB) Q0 (LSB)
0 0 0
1 0 1
2 1 0
3 1 1
4 0 0
 

✔️ 2비트 다운 카운터 진리표

 

클럽 Q1 (MSB) Q0 (LSB)
0 1 1
1 1 0
2 0 1
3 0 0
4 1 1
 

🔄 비동기식 vs 동기식 카운터

 

구분 비동기식 카운터 동기식 카운터
클럭 신호 순차적으로 전달됨 동시에 전달됨
속도 느림 빠름
구조 간단함 복잡함
용도 간단한 이벤트 카운팅 CPU 메모리 주소, 고속 제어
 

⚡ 실무에서 카운터 활용 예시

 

용도 설명
🕰️ 전자 시계 초, 분, 시간 카운트
🚦 신호등 제어 타이머에 맞춰 색상 변경
🎲 디지털 게임 점수 카운트, 게임 진행 시간
🔋 충전 카운터 배터리 충전 횟수 기록
 

🧠 오늘의 요약

  • 카운터(Counter)는 디지털 회로에서 숫자를 세거나 상태를 전환하는 역할을 합니다.
  • 비동기식, 동기식, 업, 다운 등 다양한 형태가 있습니다.
  • 플립플롭으로 구성되며, 이진수 형태로 숫자를 셉니다.
  • 전자 시계, 타이머, 메모리 주소 생성 등에 널리 사용됩니다.

📌 다음 글 예고
다음 시간에는 시프트 레지스터(Shift Register)에 대해 알아보겠습니다.
데이터를 순차적으로 이동시키는 중요한 디지털 소자입니다!

읽어주셔서 감사합니다 😊
유익했다면 댓글과 공감 부탁드려요!

반응형
댓글