2023. 11. 28. 04:04ㆍ컴퓨터공학 전공공부/논리회로
7-1. 비동기적(리플) 카운터
리플이란?
carry가 전달되는 것을 말한다.
4비트 비동기적 카운터
한편, 상태가 시계와 정확히 동기화되어 바뀌는 것은 아니다.
- MOD 숫자 : 모드 숫자(MOD number)는 카운터가 처음 상태로 되돌아가기까지 한 주기를 이루는 상태 개수와 같다. 여기서 MOD 숫자는 16이다. 연결된 FF의 개수를 N이라 할 때, MOD 숫자 = 2N이다.
- 주파수 분할 : 각 FF의 출력 주파수는 입력 주파수의 1/2이다.
- 클럭의 주기는 총 delay보단 커야 한다.
7-2. 리플 카운터에서의 전파 지연
입력 클럭 주파수의 최대값
일반적인 동작에서, 입력 펄스 간의 주기는 카운터 전체 전파 지연 시간보다 길어야 한다. 따라서
Tclock ≥ N * tpd
여기서 T는 입력 펄스 간의 주기, N은 FF의 개수, t는 전파 지연 시간이다. 이를 통해 입력 클럭 주파수의 최대값을 구할 수 있다. 입력 펄스 간 주기의 역수가 된다.
Fmax = 1 / ( N * tpd )
Glitch(글리치)의 발생
글리치란 아주 잠깐 발생하는 오류를 말한다.
7-3. 동기식(병렬) 카운터
동기식 카운터
동기식 카운터에서, 모든 FF는 클럭에 의해 동시에 트리거된다.
위 회로에 대해 분석해 보자.
계수 순서를 보면 A = 1인 동안 클럭의 각 하강 천이 때마다 FF B의 상태가 반전된다. 즉, 계수가 0001인 상황에서 다음 클럭의 하강 천이 때 B는 1로 반전되고, 계수가 0011인 상황에서 다음 클럭의 하강 천이 때 B는 0으로 반전된다. 이러한 동작을 위해서 A의 출력을 FF B의 J와 K 입력에 연결하면 A = 1일 때 J = K = 1이 된다.
계속해서 A = B = 1인 동안 클럭의 각 하강 천이 때마다 C의 상태가 바뀐다. 예를 들어 계수가 0011인 상황에서 다음 클럭의 하강 천이 때 C는 1로 반전되고, 계수가 0111인 상황에서 다음 클럭의 하강 천이 때 C는 0으로 반전된다. 이러한 동작을 위해서 논리 신호 AB를 C의 J, K 입력에 연결하면 A = B = 1일 때 J = K = 1이 된다.
동일한 맥락으로 A = B = C = 1일 때 J = K = 1이 된다.
결론적으로, 임의의 FF에 대하여 하위 단계의 FF 출력이 모두 1일 때만 그 FF의 J, K 입력이 1이 되도록 연결돼야 한다.
7-4. MOD 수가 2N 보다 작은 카운터
MOD 수를 2N에 맞추기
기본 동기 카운터의 MOD 수는 2의 N제곱 꼴로 제한된다. 따라서 원하는 숫자보다 조금 큰, 가장 가까운 2의 N제곱 꼴 숫자를 골라 clear하는 방식을 이용한다. 예를 들어 MOD-6의 경우, MOD-8에서 6을 센 후 clear하는 방식으로 구현한다. 회로도에서는 모든 FF의 비동기 CLEAR 입력에 NAND 게이트를 연결하여 구현한다.
위 다이어그램을 보면, 101 이후 110을 매번 잠깐 거쳤다 000으로 돌아가게 된다. 111은 특수 경우(무작위 상태에 가는 경우) 발생 시 거칠 수 있는데, 바로 000으로 가게 된다.
카운터 상태를 표현하기 위해서는 LED를 이용하는 경우가 많으며, HIGH 입력일 때 LED가 점등된다.
MOD-10 카운터 (Decade counter)
decade counter(10진 카운터)는 계수 순차가 어떻게 되든 상관 없이 10개의 독립된 상태를 가지는 카운터이다. BCD 카운터 또한 10진 카운터의 일종으로, 00002부터 10012을 카운트한다. MOD-16 카운터를 이용해 MOD-10 카운터를 표현한다.
7-5. 동기식 다운 카운터와 업/다운 카운터
동기적 다운 카운터
동기적 다운 카운터는 업 카운터와 유사하게 만들어진다. 다운 카운터는 반전된 FF 출력을 이용하여 J, K 입력을 제어한다.
7-6. 프리셋 카운터
위와 같은 회로를 이용해 원하는 특정 값으로 프리셋해 시작할 수 있다. 1일 때 PRESET을, 0일 때 CLEAR를 하면 된다.
7-7. 동기식 카운터 IC
74ALS160-163 계열의 IC 핀 배치
- 카운터는 네 개의 FF를 포함한다.
- 네 가지 IC 모두 비동기식 clear 입력을 가지며, 신호는 active-low이다.
- A, B, C, D 입력에 active-low LOAD 입력을 적용하여 임의의 값으로 프리셋할 수 있다.
- 74ALS160/74ALS162는 MOD-10이고, 74ALS161/74ALS163는 MOD-16이다.
- RCO(Ripple Carry Out) : 여러 개의 칩을 연결할 때 사용한다. 카운터의 마지막 또는 터미널 상태를 감지(해석)하면 active-HIGH 출력이 나온다.
74ALS160-163 계열의 function table
synchr.clear의 경우, 바로 clear되는 것이 아니라 다음 입력을 기다렸다가 clear되는 것을 말한다.
74ALS190-191 계열의 IC 핀 배치
- 하나의 enable을 가진다.
- downcount이면, minimum 값일 때 1이 된다. upcount이면, maximum 값일 때 1이 된다.
- clear가 없다. 따라서 clear를 위해선 A, B, C, D에 0000을 로드하면 된다.
7-8. 카운터의 부호화(Decoding)
부호화란?
이진수나 아스키코드를 해석하는 것을 말한다. 다시 말해, 이진 결과를 십진 형태로 전환하는 것을 말한다.
Decoder 예시
7-9. 동기식 카운터 분석
동기식 up 카운터
- JC = AB
- KC = C
- JB = KB = A
- JA = KA = not C
- 이 네 가지는 플립플롭을 제어하는 입력 표현이다.
이러한 카운터는 아래와 같은 PRESENT state/NEXT state 테이블을 가지며, 이에 따른 전환 다이어그램은 아래와 같이 그릴 수 있다. 전환 다이어그램을 통해 이 카운터는 자동 수정 기능이 있음을 알 수 있다.
D 타입 FF로 구현된 동기식 카운터
7-10. 동기식 카운터의 설계
분석과 설계의 관계
분석은 PRESENT state에 control input이 들어오면 NEXT state가 어떻게 될지 예측하는 거라면, 설계는 PRESENT state와 NEXT state를 보고 어떤 control input이 들어왔을지 예측하는 것이다. 다음과 같은 과정을 거쳐 동기식 카운터의 설계를 진행한다.
- 전환 다이어그램을 보고 관계를 파악한다.
- PRESENT state, NEXT state를 표에 정리한다.
- control input을 구한다.
D FF와 JK FF의 Excitation Table
D 타입 FF로 구현된 동기식 카운터 설계
7-14. 상태 기계
상태 기계 예시 : 신호등 제어 상태 기계
7-15, 16. 레지스터 데이터 전송, 레지스터 IC
입출력 방식
입출력 방식은 serial, parallel 두 가지 방식으로 나뉜다.
Parallel in/Parallel out (PIPO)
Serial in/Serial out (SISO)
Parallel in/Serial out (PISO)
Serial in/Parallel out (SIPO)
7-17. 시프트 레지스터 카운터
시프트 레지스터 카운터
시프트 레지스터 카운터는 피드백을 이용해 작동한다. 여기서 피드백이란, 시프트 레지스터의 마지막 FF 출력이 첫 번째 FF에 반영된다는 것을 의미한다.
순환 시프트 레지스터와 링 카운터
순환 시프트 레지스터는 가장 간단한 시프트 레지스터 카운트이다. 관련된 대표적인 카운터는 링 카운터인데, 이는 마지막 FF 값이 처음으로 이동하게끔 연결된 순환 시프트 레지스터이다. 링 카운터가 정상적으로 작동하기 위해선 오직 하나의 FF만 1 상태에, 나머지는 전부 0 상태인 채로 시작해야 한다. power-up 상태는 예측할 수 없기 때문에, 카운터는 클럭 펄스가 적용되기 전 미리 설정된다.
존슨 카운터
기본적인 링 카운터를 약간 변형한 것으로, 존슨 카운터 혹은 트위스트된 링 카운터라 불린다. 여기에선 마지막 FF 값이 반전된 결과가 처음으로 이동하게끔 연결된 것이다. 주어진 MOD 숫자에 대하여, 존슨 카운터는 링 카운터가 필요로 하는 FF의 절반만을 필요로 한다. 한편 링 카운터와 달리, decoding gate를 필요로 한다.
존슨 카운터는 각 카운트를 부호화(decode)하기 위해 logic gate를 이용한다. 각각의 gate는 FF의 수와 상관없이 오직 두 개의 입력을 요구한다.
7-18. 고장 진단
고장 진단의 과정
- 시스템 작동을 관찰한다.
- 분석적 추론을 이용하여 가능한 원인을 파악한다.
- 테스트 장비를 사용하여 고장을 분리한다.
'컴퓨터공학 전공공부 > 논리회로' 카테고리의 다른 글
논리회로 chap 9. MSI Logic Circuits (1) | 2023.12.04 |
---|---|
논리회로 chap 5. Flip-Flops and Related Devices (0) | 2023.12.04 |
논리회로 chap 6. Digital Arithmetic : Operations & Circuits (2) | 2023.11.15 |