본문 바로가기

논리 회로/디지털 논리 회로

비동기식 카운터 (Asynchronous Counter)

1. Timer / Counter

 

1.1. Timer 

  • 일정한 시간 간격을 가지고, 이벤트를 발생시키거나 시간 측정하는데 사용한다.
  • 주로 주기를 갖는 클럭 신호를 사용하여 시간 측정한다.

 

1.2. Counter

  • 입력 신호를 발생 횟수를 카운트하는데, 사용한다.
  • 주로 입력 신호나 클럭 신호의 Positive edge나 Negative edge을 감지하여 카운트한다.

 

즉, Timer와 Counter의 차이점은 다음과 같다.

  • Timer는 일정한 주기를 갖는 클럭을 사용하여 시간 측정에 초점을 두고,
    Counter는 일정한 주기를 갖지 않는 클럭을 사용하여 이벤트 카운트에 초점을 둔다.
  • Timer는 일정한 주기를 갖는 클럭을 사용하지만,
    Counter는 일정한 주기를 갖지 않는 클럭을 사용한다. (주기를 갖는 클럭 카운트 가능)
  • Timer는 시간 기반 동작을 제어하는데 주로 사용하고,
    Counter는 수량 및 빈도를 측정하는 데 주로 사용한다.

 

 

 

 

2. Counter의 구분

Counter는 카운트 방식에 따라 2^n 진 카운터와 Shift 카운터로 구분한다.

 

2.1.  2^n 진 카운

  • 여기서 n은 비트 수를 의미하며, 2진 (n = 1), 4진 (n = 2), 8진 (n = 3) 등의 카운터가 있다.
  • 또한 n은 카운터를 구성하는 Flip-Flop의 갯수를 의미한다.
  •  2^n 진 카운터는 0 ~ 2^n - 1까지 카운터할 수 있다.

 

2.2. Shift 카운터

  • Shift 카운터는 왼쪽 혹은 오른쪽으로 Shift하면서 카운트한 카운터이다.

 

 

즉, 2^n 진 카운터와 Shift 카운터의 차이점은 다음과 같다.

  • 2^n 진 카운터는 일반적으로 숫자를 카운터하는 방식과 유사하게 2진수로 카운트한다.
  • 하지만, Shift 카운터는 비트의 자리를 Shift시키면서 카운트한다.

 

 

 

 

 

3. 비동기식 카운터와 동기식 카운터

3.1. 비동기식 카운터

  • 첫 번째 플립플롭에만 클록 펄스와 동기화된 카운터를 말한다.
  • 가장 기본적인 비동기식 카운터인 리플 카운터인 경우에는 첫 번째 Flip Flop만 클럭  펄스와 동기화되어 있고, 나머지 Flip Flop들은 이전의 Flip Flop의 출력을 입력으로 받아 이전의 Flip Flop의 출력의 변화에 동작하는 카운터이다.

 

 

3.2. 동기식 카운터

  • 카운터를 구성하는 플립플롭들은 클럭 펄스와 동기화되어 있는 형태의 카운터를 말한다.
  • 클록 펄스의 변화에 대해서 모든 플립플롭들이 한 번에 동시에 동작하게 된다.

 

 

3.3. 비동기식 카운터와 동기식 카운터 비교

  비동기식 카운터 (Asynchronous Counter) 동기식 카운터 (Synchronous Counter)
CP와의 동기화 첫 번째 플립플롭만 동기화되어 있고,
나머지 플릅플롭들은 동기화되어 있지 않다.
카운터를 구성하는 모든 플립플롭들은
CP와 동기화되어 있다.
동작 첫 번째 플립플롭부터 순차적으로 동작 모든 플립플롭들이 동시에 감지 및 동작
속도 느림 빠름
구조 단순 복잡

 

 

 

 

4. 4진 비동기 업 카운터 (JK Flip Flop으로 구성)

    • 4진 카운터이기 때문에 2개의 JK Flip Flop으로 구성
    • 비동기 카운터이기 때문에 첫 번째 플립플롭만 클록 펄스와 동기화 되어 있고, 두 번째 플립플롭인 경우에는 첫 번째 플립플롭의 출력을 CK 단자에 연결한다.
    • QA를 LSB (Least Significant Bit), QB를 MSB (Most Significant Bit)라고 하여 4진 비동기 업 카운트에 대해서 클록 펄스에 대한 출력 값을 정리하면 다음과 같다.

(왼) 4진 비동기 업 카운터, (오른) 4진 비동기 업 카운터의 동작

 

 

 

 

 

4.1. 4진 비동기 업 카운터의 분석 (JK Flip Flop으로 구성 + Negative edge sensitive)

  • 각각의 Flip Flop들의 CLK 단자에 invertor가 있기 때문에 해당 카운터는 negative edge sensitive임을 확인할 수 있다.
  • 초기 출력 값, QA, QB는 0, 0 상태이지만, 첫번째 CP의 Negative edge에서 FF-A는 출력값, QA 를 0 → 1로 toggle시켜 출력한다.그러나,FF-B에서는 CLK인 QA 값이 Positive edge trigger가 발생했기 때문에 아직 동작하지 않는다.
  • 두 번째 CP의 Negative edge에서 FF-A의 출력값, QA  를  1 → 0으로 toggle시키면 FF-B에서는 CLK인 QA 값이 Negative edge trigger가 발생했기 때문에 FF-B의 출력 값, QB도 0 → 1로 toggle된다.
  • 이러한 과정을 거쳐 4진 비동기 업 카운터는 (QA, QB) → 00 → 01 → 10 → 11 → 00 → ..... 으로 카운터를 하게 된다.

 

 

 

 

 

5. 4진 비동기 다운 카운터 (JK Flip Flop으로 구성)

  • 4진 카운터이기 때문에 2개의 JK Flip Flop으로 구성
  • 비동기식 카운터이기 때문에 첫 번째 플립플롭만 클럭 펄스와 동기화되어 있고, 나머지 플립플롭에 대해서는 이전 플립플롭의 출력을 클럭 펄스로 받는 구조를 갖는다.
  • 4진 비동기 다운 카운트에 대해서 클록 펄스에 대한 출력 값을 정리하면 다음과 같다.

(왼) 4진 비동기 다운 카운터 (오른) 4진 비동기 다운 카운터의 동작

 

 

 

 

5.1. 4진 비동기 다운 카운터의 분석 (JK Flip Flop으로 구성 + Negative edge sensitive)

  • 각각의 Flip Flop들의 CLK 단자에 invertor가 있기 때문에 해당 카운터는 negative edge sensitive임을 확인할 수 있다.
  • 초기 출력 값, QA, QB는 1, 1 상태이지만, 첫번째 CP의 Negative edge에서 FF-A는 출력값, QA 를 1 → 0로 toggle시켜 출력한다.그러나,FF-B에서는 CLK인 QA' 값이 Positive edge trigger가 발생했기 때문에 아직 동작하지 않는다.
  • 두 번째 CP의 Negative edge에서 FF-A의 출력값, QA  를  0 → 1으로 toggle시키면 FF-B에서는 CLK인 QA' 값이 Negative edge trigger가 발생했기 때문에 FF-B의 출력 값, QB도 1 → 0로 toggle된다.
  • 이러한 과정을 거쳐 4진 비동기 다운 카운터는 (QA, QB) → 11 → 10 → 01 → 00 → 11 → ..... 으로 카운터를 하게 된다.

'논리 회로 > 디지털 논리 회로' 카테고리의 다른 글

동기식 카운터 (Synchronous Counter)  (0) 2024.07.08
리셋형 10진 비동기 업 카운터  (0) 2024.07.07
JK Flip-Flop / T Flip-Flop  (0) 2024.07.06
SR Flip-Flop / D Flip-Flop  (0) 2024.07.06
Ring Counter  (0) 2024.07.04