컴퓨터 관련 용어

카운터와 순서 논리회로

n_0_jun 2025. 6. 17. 14:00
반응형

카운터의 개요

카운터는 순서 논리회로의 대표적인 예로, 컴퓨터 메모리와 레지스터에서 사용됩니다. 카운터는 기본적으로 상태를 1씩 증가 또는 감소시키는 역할을 하며, 현재 상태는 플립플롭의 값에 1을 더하거나 뺀 값으로 나타낼 수 있습니다.


비동기식 카운터

  • 특징: 동기식보다 구조가 단순하며, JT 플립플롭 또는 T 플립플롭을 사용합니다.
  • 동작 원리: 클럭 신호에 따라 상태가 변화합니다.
    • 예: 4비트 2진 상향 카운터
      • 클럭펄스 1: 0000 (10진수 0)
      • 클럭펄스 2: 0001 (10진수 1)
      • 최대값: 15 (4비트로 표현 가능)
  • 클럭펄스의 변화에 따라 플립플롭의 상태가 바뀌며, 아래와 같은 방식으로 작동합니다:
    • A 플립플롭이 1이면 B 플립플롭이 상태를 변경.
    • C 플립플롭은 A와 B가 1일 때 상태 변경.
    • D 플립플롭은 A, B, C 모두가 1일 때 상태 변경.

상향 카운터와 하향 카운터

  • 상향 카운터: 0 → 15 찍고 다시 0으로 돌아갑니다.
  • 하향 카운터: 15 → 0 찍고 다시 15로 돌아갑니다.
    • 상향 카운터와는 반대로 처음 상태에서 NOT 연산을 수행합니다.

동기식 카운터

  • 특징: 모든 플립플롭이 동시에 클럭 신호에 반응.
  • 장점: 비동기식보다 빠르게 작동.
  • 단점: AND 게이트를 여러 번 사용해야 하므로 구조가 복잡.
  • 지연 시간: 플립플롭의 지연 시간(tpd) + AND 게이트의 지연 시간(tpd)의 합으로 계산됩니다.

4비트 2진 동기식 카운터

  • 상향 카운터: 상승 에지에서 상태가 바뀌며 0 → 15 찍고 다시 0으로 돌아갑니다.
  • 하향 카운터: 하강 에지에서 상태가 바뀌며 15 → 0 찍고 다시 15로 돌아갑니다.
  • BCD 카운터: 10진수에 해당하는 값을 나타냅니다.
    • 예: 비동기식 10진 카운터
      • 클럭펄스에 따라 QD, QC, QB, QA의 값이 변하며 10진수 0부터 9까지 반복.

초기화 동작과 상태 변경

  • BCD 카운터의 초기화: 10진수 값이 10(1010)이 되는 순간, 특정 Q 값에 NOT 연산을 수행하여 0(0000)으로 초기화.
  • 4비트 BCD 카운터: 0000~9999까지 표현 가능. 이를 위해 4개의 4비트 카운터를 연결하여 사용.

플립플롭과 순서도

  1. 플립플롭의 상태 전환은 클럭 신호에 따라 이루어지며, 상승 에지 또는 하강 에지에서 동작.
  2. 입력 조건에 따라 다음 상태를 결정.

예시: 동기식 카운터의 현재 상태와 다음 상태

현재 상태(QC QB QA) 다음 상태(QC QB QA) 플립플롭 입력(JC KC JB KB JA KA)

0 0 0 0 0 1 0 × 0 × 1 ×
0 0 1 0 1 0 0 × 1 × × 1
... ... ...

요약

  • 비동기식 카운터: 간단한 구조로 클럭 신호에 따라 상태 변경.
  • 동기식 카운터: 모든 플립플롭이 동시에 반응하며 빠르지만 복잡한 구조.
  • BCD 카운터: 10진수를 표현하며 초기화를 통해 값의 범위를 제한.
  • 상태 전이: 플립플롭과 논리 게이트를 통해 다음 상태 결정.

 

반응형