컴퓨터 관련 용어
카운터와 순서 논리회로
n_0_jun
2025. 6. 17. 14:00
반응형
카운터의 개요
카운터는 순서 논리회로의 대표적인 예로, 컴퓨터 메모리와 레지스터에서 사용됩니다. 카운터는 기본적으로 상태를 1씩 증가 또는 감소시키는 역할을 하며, 현재 상태는 플립플롭의 값에 1을 더하거나 뺀 값으로 나타낼 수 있습니다.
비동기식 카운터
- 특징: 동기식보다 구조가 단순하며, JT 플립플롭 또는 T 플립플롭을 사용합니다.
- 동작 원리: 클럭 신호에 따라 상태가 변화합니다.
- 예: 4비트 2진 상향 카운터
- 클럭펄스 1: 0000 (10진수 0)
- 클럭펄스 2: 0001 (10진수 1)
- 최대값: 15 (4비트로 표현 가능)
- 예: 4비트 2진 상향 카운터
- 클럭펄스의 변화에 따라 플립플롭의 상태가 바뀌며, 아래와 같은 방식으로 작동합니다:
- 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까지 반복.
- 예: 비동기식 10진 카운터
초기화 동작과 상태 변경
- BCD 카운터의 초기화: 10진수 값이 10(1010)이 되는 순간, 특정 Q 값에 NOT 연산을 수행하여 0(0000)으로 초기화.
- 4비트 BCD 카운터: 0000~9999까지 표현 가능. 이를 위해 4개의 4비트 카운터를 연결하여 사용.
플립플롭과 순서도
- 플립플롭의 상태 전환은 클럭 신호에 따라 이루어지며, 상승 에지 또는 하강 에지에서 동작.
- 입력 조건에 따라 다음 상태를 결정.
예시: 동기식 카운터의 현재 상태와 다음 상태
현재 상태(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진수를 표현하며 초기화를 통해 값의 범위를 제한.
- 상태 전이: 플립플롭과 논리 게이트를 통해 다음 상태 결정.
반응형