[디지털논리회로2] 2. SR Latch

SR 래치는 NOR 게이트 또는 NAND 게이트로 구성된 회로이다.

S는 Set용이면 R은 Reset용이라는 의미인데, 이 의미는 마지막까지 이 챕터를 전개하다보면 이해가 갈 것이다.

 

SR 래치 회로도

S R의 인풋에 따른 아웃풋 Q와 Q'이다. 여기서 Q'란 Q와 항상 반대가 되는 값을 의미한다.

 

인풋 (S,R)=(1,0)이라 하였을 때 Q와 Q'를 본다.

즉, S가 1인 이상 Q의 값이 0이든 1이든 Q'는 무조건 0을 갖게된다.

이 Q'의 값은 0이기 때문에 위에 존재하는 NOR 게이트 인풋은 (0,0)이다. 따라서 결과값 Q는 1이 나오게 되기 때문에

(S,R)=(1,0)에 의한 아웃풋 (Q,Q')=(1,0)이 된다.

이 때 주의할 점은 Latch는 메모리를 가지고 있다는 것이다. 이 Q,Q'는 사라지지 않고 다음 값에 영향을 준다.

(S,R)=(0,0)이게 되면, (S,Q)=(0,1)에 의한 NOR 게이트의 아웃풋 Q'는 0을 내뱉고, (R,Q')=(0,0)에 의한 아웃풋 Q는 1을 내뱉는다.

(S,R)이 (0,1)을 가질 때와, (0,0)을 가질 때 또한 마찬가지다.

 

단, 주의할 점이 있는데 (S,R)=(1,1)을 생각해본다.

이 때 Q와 Q'는 1이란 동일한 값을 가지게 된다. 분명 진리표 아래에 서술했듯이, S,R 인풋에 따른 Q와 Q'는 반대가 되는 값을 뽑아낸다고 하였는데 1이란 값을 동시에 가진다? 이것은 일어날 수 없는 일이 발생한 것이다. 따라서 우리는 이 경우는 생각하지 않는다를 명심해야 한다. 

 

위의 진리표를 가지고 기본적인 동작원리는 이해했다. 이제는 이 진리표가 계속 쳇바퀴 돌듯이 명령을 가한다고 생각해보자.

 

 

표를 쉽게 정리하지 못하였으니 풀이해서 설명하면 다음과 같다.

(Q,Q')이 이전의 어떠한 값을 가지고 있다 하여도, (S,R)=(0,0)이면 Next State의 (Q,Q')는 이전 상태의 값을 유지한다.

즉, Q의 현재 값이 0이면 다음 값은 0, 현재 값이 1이면 다음 값 또한 1이다. 우리는 이를 Store Operation이라 한다.

 

마찬가지로 (S,R)=(0,1)이면 Next State에서의 Q는 0으로 결정된다. 이를 Reset Operation이라 한다.

(S,R)=(1,0)이 되면 현재의 Q가 어느 값을 가지고 있든지 Next State의 Q는 1만을 갖는다. 이를 Set Operation이라 한다.

 

단, 아까도 서술했듯이 (S,R)이 (1,1)인 경우는 금지이기 때문에 생각할 필요가 없다. 

위의 진리표는 NOR게이트로 만든 회로에서 발현되는 것이며, NAND게이트로 만든 회로 또한 어렵지 않으니 한 번 그린 후에 만들어보면 되게 쉽게 값을 알 수 있다.