본문 바로가기
CS/디지털논리회로

순서논리회로, 플립플롭, SR래치, D 플립플롭, JK 플립플롭, T 플립플롭, 플립플롭의 트리거링

by Renechoi 2023. 6. 15.

1. 순서논리회로의 개요 

 

조합논리회로: 현재 시간의 입력에 의해 출력이 결정

순서논리회로: 조합논리회로에 저장요소를 추가한 회로 

 

 

순서논리회로는 외부로부터 2진 정보를 전달받게 되고, 이 외부로부터의 입력은 저장요소에 저장된 현재 상태와 함께 출력의 2진 값을 결정한다.

 

 

비동기 순서논리회로 

- 시간지연소자를 사용

- 시간지연소자는 신호가 전달되려면 일정한 시간이 걸리므로 기억능력을 갖게 됨

- 논리게이트로 구성되는 시간지연소자는 게이트간의 피드백 때문에 예측 못한 상태로 동작하거나, 불안정한 상태가 발생되기도 함

- 이러한 이유로 자주 사용되지 않음

 

동기 순서논리회로 

 

- 특정 순간에서만 저장요소를 내용을 변화시킬 수 있는 신호를 사용 -> 클럭 펄스 (1과 0으로 이루어져 있음)

- 이러한 클럭 펄스는 시스템 전체에 제공

- 이처럼 저장요소 입력에 클럭 펄스를 제공하는 동기 순서논리회로를 클럭을 가진 순서논리회로라고 한다.

- 플립플롭이라는 저장요소를 사용하며, 가장 많이 사용되는 순서논리회로

 

 

플립플롭(F/F: Flip Flop)

- 입력신호에 의해 상태를 바꾸도록 지시가 있을 때까지 현재의 2진 상태를 유지하는 논리소자

- 한 비트의 2진 정보를 저장할 수 있는 장치

- 클럭 신호에 의해 출력상태를 바꾼다. 

 

 

 

종류 

- SR 래치

   - 넓은 의미의 플립플롭

   - 구동방법이 다름(구동입력이 1일 때 출력이 바뀜)

   - 비동기 순서논리소자 

- RS 플립플롭, D 플립플롭, JK F/F, T F/F, 마스터-슬레이브 F/F

  - 클럭신호에 의해 출력이 바뀜

  - 동기 순서논리소자 

 

 

 

2. 플립플롭 

 

1) SR 래치(RS 플립플롭)

- 두 개의 NOR 게이트나 두 개의 NAND 게이트로 구성

- 각각 세트(set)와 리셋(reset)의 두 입력을 갖는다. 

 

NOR 게이트로된 SR 래치 

 

 

세트라고 하는 입력과 R이라고 하는 입력이 되어 있고 Q와 보수값 Q를 출력을 갖는다. 

 

Set 쪽에 0 Reset 쪽에 0 => 앞선 출력을 그대로 유지한다. 무변화 상태 

0 1 => 리셋 상태 

1 0 => 세트 상태 

1 1 => 미정상태 

 

1과 1이 들어왔을 때 미정상태가 발생하는 것이 문제가 된다. 

 

 

 

4가지 상태 

 

 

 

무변화상태라는 것은 들어간 것이 그대로 나온 것 

 

 

 

NAND 게이트로 된 SR 래치 

 

0 0  => 미정 상태

0 1 

1 0 

1 1  => 무변화 상태 

 

 

수행 기능은 동일 

그러나 입력과 출력에 따른 동작은 반대 

 

 

 

어쨌든 미정상태가 발생한다는 것이 가장 큰 문제이다. 

 

또한 비동기 순서논리회로 

 

=> 

 

제어 입력을 가진 SR 래치(RS 플립플롭) 

 

- SR 래치에 게이트를 추가하여 동작을 개선 

- SR 래치가 한 클럭펄스 발생기간 동안 입력에 응답하도록 만들 수 있다.

- 즉, 클럭을 가진 래치 또는 RS 플립플롭이라고 함 

 

 

 

 

NAND 게이트 혹은 NOR 게이트로 된 SR 래치 앞단에다가 클럭을 추가함 

 

동기를 맞춰주기 위해서 클럭을 부과했다. 

 

그런데 여전히 1 1 일때 미정 상태 

 

그래픽 기호로는 다음과 같이 표현할 수 있다. 

 

 

여전히 미정상태일 때 문제점 

 

- 세 입력이 모두 1 일 때 어떤 값으로도 결정할 수 없는 상태 발생

- 이것은 내부 SR 래치의 양쪽 입력값을 모두 0 으로 만들어 내부 NAND 게이트를 미정상태로 만들기 때문

- 제어입력이 다시 0 으로 될 때는, 다음 상태는 두 입력 S, R 중 어느 것이 먼저 1로 되는가에 따라 결정되기 때문에 다음 상태를 정확히 예측할 수 없는 문제점 발생

 

-> D 플립플롭, JK 플립플롭 등이 제안됨

 

 

2) D 플립플롭 

- RS 플립플롭의 문제점 해결을 위한 방법 (동시 1이 들어갈 때 미정상태가 되는) 

-> S, R이 동시에 1을 갖지 않도록 한다. 

 

 

입력을 하나만 쓰고 한쪽은 NOT 게이트를 이용해서 0 1 이 들어가도록 만들어줌 

 

- D 플립플롭 : RS플립플롭의 한 변형

- D 입력은 RS 플립플롭의 S 입력으로 들어가고,

- R 입력으로는 NOT을 통한 D 입력의 보수값이 들어간다.

- NOT 게이트를 추가함으로써 입력이 2개에서 1 개로 줄어든다.

 

 

 

 

 

클럭이 0일 때 = > 무변화 상태 

 

클럭이 1일 때 D 값의 변화에 따라 동작 

 

- 제어입력 C 가 0인 경우 D 의 입력값에 관계 없이 D 플립플롭의 출력상태는 변하지 않고,

- 제어입력 C 가 1 일 때만 D 입력이 출력에 나타나게 된다.

- 즉, D 가 1 이면 세트상태, D 가 0 이면 리셋상태가 된다.

 

구체적인 의미는, 결국 입력으로 들어가는 값이 출력으로 그대로 나온다는 것이다. 

입력 => 출력 그대로 전달 

 

즉, 특성은 내부에 데이터를 저장하는 것과 같다. 

 

 

 

 

3) JK 플립플롭 

 

- RS 플립플롭의 미정상태 문제점을 개량한 형태 

- 가장 많이 사용되는 플립플롭 

 

S => J 

R => K 

 

각각 대응된다. 

 

 

 

1 1이 들어왔을 때 미정상태가 아닌 보수 상태를 나타내준다. 

=> RS 플립플롭의 개선 

- JK 플립플롭의 J 와 K 가 모두 1인 때를 제외하고는 RS 플립플롭의 동작과 같다.

- J 와 K 가 모두 1인 경우의 다음 상태는 한 클럭 펄스 뒤에 현재 상태의 보수가 된다.

- 즉 Q(t) =1 이면 Q(t+1) = 0,
Q(t) = 0 이면 Q(t+1) = 1 이 된다.

 

- 그러나 J, K 가 모두 1 일 때 출력이 보수가 취해진 다음에도 클럭펄스가 남아있으면 반복적으로 보수를 취하는 문제점 발생

-> 레이스 현상 

 

 

 

 

4) T 플립플롭 

- JK 플립플롭의 변화된 형태

- 두 입력을 하나로 묶어서 만듬 

- 명칭 T는 상태를 반전한다는 Toggle에서 유래 

 

 

두 입력을 하나로 묶어준 형태 

 

1이 들어오면 반전을 나타낸다. 

 

3. 플립플롭의 트리거링 

 

트리거 

 

- 클럭이 남아 있는 상태에서 계속해서 반전 반전 반전 시키는 문제 : 레이스 현상 

(입력 J, K가 모두 1일 때 클럭펄스가 남아 있게 되면 또 다시 보수를 취하는 반복적인 현상) 

- 플립플롭의 상태는 제어신호(클럭신호)의 순간적인 변화에 따라 바뀐다.

- 이 순간적인 변화를 트리거라고 한다. 

- 예를 들어, D 플립플롭은 제어 입력으로 클럭펄스가 사용되는데(0상태와 1상태 반복), 이 클럭펄스가 논리 1 레벨로 변활 때마다 트리거 된다. => 1인 상황에서 동작을 하는 것 

=> 이러한 논리 1 레벨 트리거가 가진 문제점이 있음 

 

이러한 방법을 레벨 트리거 방법이라고 함 

- 클럭펄스가 논리 -1 인 동안 내내 입력이 출력에 영향을 받음 

 

 

에지 트리거 방법

- 클럭펄스의 에지, 즉 상승 에지나 하강 에지 동안에 입력이 출력에 영향을 미치게 된다. 

- 상승 에지: 클럭펄스에 있어서 논리 상태가 논리 0 에서 논리 1로 천이하는 것 

- 하강 에지: 반대로 논리상태가 논리 1 -> 논리 0 

 

 

 

 

 

 

레벨 트리거 방법은 논리 상태 1일 때만 동작 

 

에지 트리거 방법은 클럭 펄스마다 상승 에지와 하강 에지가 존재하는데 해당 에지마다 동작 

 

 

 

레벨 트리거 방식 RS 플립플롭 동작 특성 

 

 

 

 

- 레벨 트리거 방법은 클럭펄스의 활동레벨, 즉 논리-1 상태 동안에서만 입력 변화에 따라 출력이 변화한다.

- 따라서 클럭펄스 1의 활동레벨 시작에서 보면 입력이 R=1, S=0이므로 출력은 Q=0 이 된다.

- 이때 클럭펄스 1의 논리-1 상태를 유지하는 중간부분에서 입력이 R=0, S=1 로 바뀌게 되므로 입력이 바뀌는 그 시점에서 출력 Q=1 상태로 파형이 바뀌게 된다.

- 다음으로 클럭펄스가 비 활동레벨, 즉 논리-0 상태 동안에는 전 상태가 유지

 

에지 트리거 방식 

 

 

 

 

- 에지 트리거 방법은 클럭펄스의 에지,
즉 상승 에지나 하강 에지 동안에만 입력이 출력에 영향을 미친다.(클럭펄스가 1 또는 0 상태를 유지하는 동안은 무 동작)

- 우선 상승 에지 트리거 시 출력상태 변화를 보면, 클럭펄스 1의 상승 에지에서 R=0, S=1 이므로 출력은 세트상태를 나타낸다.

- 다음 클럭펄스 2의 상승 에지 시까지는 플립플롭이 입력의 변화에 따라 동작하지 않으므로 전 상태를 유지한다.

- 다음 클럭펄스 2의 상승 에지 시점에서 보면 R=1, S=0 이므로 출력은 리셋상태를 나타낸다.

 

 

레벨 트리거 방식 

 

 

에지 트리거 방식 

 

 

 

 

 

마스터 슬레이브 플립플롭 

 

JK 플립플롭의 레이스 현상을 개선하는 방법으로 마스터 슬레이브 플립플롭이 제안됨 

 

- 주(mater)와 종(slave)의 역할을 하는 두 개의 별도 플립플롭으로 구성

- 기존 플립플롭에 인버터를 추가하여 구성 

 

마스터-슬레이브 플립플롭의 동작원리

- 클럭펄스의 상승 에지에서 첫 번째 플립플롭(마스터)를 세트하고,

- 클럭펄스의 하강 에지에서 두 번째 플립플롭(슬레이브)에 신호를 전달하도록 구성

 

 

두 개의 플립플롭을 장착하여 주, 종으로 사용함 

 

 

 

RS 플립플롭을 이용한 마스터-슬레이브 플립플롭 

 

- 클럭펄스 C=0 일 때
-> 슬레이브 F/F의 클럭입력이 1 이 되기 때문에
활동상태가 되어,출력 Q는 Y와같고,  ~Q는 ~Y와 같아진다.

-> 이 때 클럭펄스 C=0 이기 때문에 마스터 F/F 은 활동불능상태(disable)가 된다.

 

- 클럭펄스가 1 이 되면

-> 외부 R 과 S 에 있던 정보가 마스터 F/F 에 전달되고,

-> 이 때 NOT 게이트의 출력은 0 이기 때문에 슬레이브 F/F 은 활동불능상태이다.

->  결국 마스터 F/F과 분리된다.

 

 

=> 즉 교대로 동작하게 된다. 

 

 

 

D플립플롭을 이용한 마스터-슬레이브 플립플롭 

 

 

 

클럭펄스 1의 상승 에지 시점에서 보면

- 마스터 F/F은 세트상태이고,
- 외부입력 D=1 이므로 마스터 F/F의 출력 Y =1
- 이때 슬레이브 F/F은 활동불능 상태이므로 마스터 F/F의
출력이 슬레이브 F/F에 전달되지 못한다.

- 따라서 전체 출력 Q 는 아직 0 의 값이다.

 

다음으로 클럭펄스 1의 하강 에지 시점에서는
- 슬레이브 F/F이 활동상태가 되어,
- 마스터 F/F의 출력 Y 값이 슬레이브 F/F에 전달되어
전체 F/F의 출력 Q 는 1 상태가 된다.
- 물론 이때 외부입력 D 의 값이 0으로 변하지만,
이 순간 마스터 F/F은 활동불능 상태이므로 이 입력값은 다음의 클럭펄스의 상승 에지 시까지 영향을 미치지 못한다.

 

 

JK 플립플롭을 이용한 마스터-슬레이브 플립플롭 

 

 

 

 

J 와 K 의 입력은
- 클럭펄스의 상승 에지에서 마스터 F/F에 전달되고, 클럭펄스의

하강 에지에서 슬레이브 F/F에 전달된다.

- 즉 J 와 K 의 입력은 클럭펄스의 상승에지 시에 들어오지만, 클럭펄스의 하강 에지 시까지는 전체 출력에는 나타나지 않는다.

->  따라서 전체 F/F의 출력은 클럭펄스의 하강 에지에서 나타난다.

 

 

동작 원리 

 

 

 

클럭펄스 1의 상승 에지에서
- 마스터 F/F 동작(J =1, K =1 이므로 반전) - 출력 Y 는 1 값을 갖는다.

- 이때 Q는 슬레이브가 비활성이므로 전달 받지 못함 

클럭펄스 1의 하강 에지에서 

- 슬레이브 F/F 동작(Y =1,~Y=0 이므로)

- 출력 Q 는 1 값을 갖는다.

클럭펄스 2의 상승과 하강 에지에서

- 마스터 F/F Y=1, 슬레이브 F/F Q=1

 

클럭펄스 3의 상승과 하강 에지에서
- 마스터 F/F Y=0, 슬레이브 F/F Q=0

 

계속해서 클럭의 상승과 하강 에지에서

- 마스터 F/F과 슬레이브 F/F이 활동과 비활동의 상태로 동작

 

 

 


참고자료: 디지털논리회로(김형근, 손진곤 공저, KNOU press 출판) 

반응형