라즈베리파이반

라즈베리파이 등 컴퓨터계열 게시판입니다.

제목순차 논리회로 : 래치 / 플립플롭2023-05-15 05:27
작성자user icon Level 4

88x31.png


1. 순차회로(Sequential Circuit)


순차회로는 출력값이 이전 상태와 현재 입력값에 영향을 받는 논리회로입니다. 즉, 조합회로에 기억 기능이 추가된 회로입니다.


순차회로는 클럭 신호에 의해 상태가 변하는 동기회로와 그렇지 않은 비동기회로로 나눌 수 있습니다.


순차회로가 1비트의 정보를 기억하는 방법은 피드백(Feedback) 경로라 불리는 폐루프를 형성하는 것입니다.


 


위의 회로와 같이 피드백을 통해 NOT 게이트 사이에 비트 정보를 저장할 수 있습니다.



2. 래치(Latch)


래치는 클럭 입력을 가지지 않는 비동기회로입니다. 래치는 SR래치와 D래치가 있습니다.



1) S-R 래치


SR래치에서 S는 Set을 의미하며 1을 출력하고, R은 Reset을 의미하며 0을 출력합니다. 각각의 출력 Q와 Q’은 다시 입력으로 들어가서 피드백을 형성합니다.


 


진리표는 다음과 같습니다.


 S

 R

 Q

 Q'

 기능

 0

 0

 Q

 Q'

 유지

 0

 1

 0

 1

 reset

 1

 0

 1

 0

 set

 1

 1

 0

 0

 제한


R = 1, S = 0 이면 Q = 0 이 출력되며, 출력된 Q는 S가 연결된 NOR 게이트로 피드백됩니다. S = 0 이므로 Q' = 1 이 출력되며, 출력된 Q' 는 R이 연결된 NOR 게이트로 피드백 됩니다. R이 연결된 NOR 게이트의 입력은 1, 1이 되므로 Q = 0 이 되어 Reset 상태가 됩니다. (Q = 0, Q' = 1)


반면 R = 0, S = 1 이면 Q = 0 이 출력되며, 출력된 Q' 는 R이 연결된 NOR 게이트로 피드백됩니다. R = 0 이므로 

Q = 1 이 출력되며, 출력된 Q는 S가 연결된 NOR 게이트로 피드백됩니다. NOR 게이트의 입력은 1, 1이 되므로 

Q' = 0 이 되어 Set 상태가 됩니다. (Q = 1, Q' = 0)


R = 0, S = 0  이면 Q = Q, Q' = Q' 가 되어 상태가 유지되며, R = 1, S = 1 이면 Q와 Q' 가 0, 1 로 진동하게 되므로 입력이 제한됩니다.



NAND 게이트를 사용하여 SR 래치를 만들 수도 있습니다. 이 경우 입력이 반전됩니다.


 


진리표는 다음과 같습니다.


 S

 R

 Q

 Q'

 기능

 0

 0

 1

 1

 제한

 0

 1

 1

 0

 set

 1

 0

 0

 1

 reset

 1

 1

 Q

 Q'

 유지


R = 0, S = 1 이면 Q = 0, Q' = 1 이 되어 reset 상태가 되며, R = 1, S = 0 이면 Q = 1, Q' = 0 이 되어 set 상태가 됩니다.


또한 R = 0, S = 0 이면 Q와 Q' 가 0, 1 로 진동하므로 입력이 제한되며, R = 1, S = 1 이면 Q = Q, Q' = Q' 가 되어 상태가 유지됩니다.



2) 게이트형 S-R 래치


게이트형 SR 래치는 Enable 이라 불리는 게이트 신호를 통해 출력을 결정하는 기억회로입니다.


 


E 신호가 HIGH인 경우 래치의 입력이 출력에 반영되고, E 신호가 LOW인 경우 래치의 입력은 출력에 반영되지 않고 상태를 유지합니다.



3) D 래치


D 래치는 하나의 입력을 통해 출력 Q를 결정하는 회로입니다.


 


S = 0, R = 0 인 입력과 S = 1, R = 1 인 입력을 배제하여 입력과 출력이 동일한 회로를 만들 수 있습니다.


진리표는 다음과 같습니다.


 D

 Q

 Q'

 기능

 0

 0

 1

 reset

 1

 1

 0

 set



3. 플립플롭(Flip-Flop)


플립플롭은 클럭 입력을 가지는 동기회로입니다.


엄밀하게 말하자면 래치 또한 클럭신호를 가질 수 있습니다. 하지만 CLOCK 신호가 HIGH인 동안 동작하는 래치와 달리 플립플롭의 경우 CLOCK 신호가 HIGH가 되는 순간에만 동작합니다.


래치의 경우 

 


래치는 위와 같이 CLOCK이 HIGH이면 INPUT을 출력하고 CLOCK이 LOW이면 상태를 유지합니다.


플립플롭의 경우

 


플립플롭의 경우 CLOCK이 HIGH가 되는 순간에만 INPUT을 출력하고 상태를 유지합니다.



1) S-R 플립플롭


S-R 플립플롭은 다음과 같이 게이트형 S-R 래치 2개로 구성할 수 있습니다.



앞에 있는 래치를 마스터, 뒤에 있는 래치를 슬레이브라고 하기때문에 마스터-슬레이브 플립플롭이라고도 합니다.


아래 타이밍을 살펴보면 CLOCK이 HIGH인 순간에만 Q1의 상태가 Q2에 반영되고 2의 상태가 유지되는 것을 확인할 수 있습니다.


 



2) D 플립플롭


D 플립플롭은 다음과 같이 D 래치 2개로 구성할 수 있습니다.



3)  J-K 플립플롭


JK 플립플롭은 S = 1, R = 1 입력이 제한되는 문제를 보완하기 위한 회로입니다.


 


위와 같은 회로를 JK 래치라고 하며, J = 1, K = 1이 입력되면 Q = Q' 로 토글됩니다. 물론 하나의 JK 래치로는 반복적으로 토글되므로 2개의 JK 래치를 통해 플립플롭으로 구성한다면 CLOCK이 HIGH가 되는 순간에만 토글이 됩니다.



진리표는 다음과 같습니다.


 J

 K

 Q

 Q'

 기능

 0

 0

 Q

 Q'

 유지

 0

 1

 0

 1

 reset

 1

 0

 1

 0

 set

 1

 1

 Q'

 Q

 토글



4) T 플립플롭


T 플립플롭은 JK 플립플롭에서 D 플립플롯처럼 입력을 하나만 주는 회로입니다. T가 0이면 이전값을 유지하고, T가 1이면 출력값이 토글 됩니다.



진리표는 다음과 같습니다.


 T

 Q​1

 Q​2

 기능

 0

 0

 0

 유지

 0

 1

 1

 유지

 1

 0

 1

 토글

 1

 1

 0

 토글

#래치# SR 래치# D 래치# 플립플롭# D 플립플롭# SR 플립플롭# JK 플립플롭# T 플립플롭
댓글
자동등록방지
(자동등록방지 숫자를 입력해 주세요)