이번 글에서는 SR Latch와 D Latch에 대해 알아보도록 하자.
1. SR Latch
SR Latch는 가장 간단한 순차 논리회로 중 하나이다. 두 개의 cross-coupled NOR gate로 구성되어 있다.
아래 그림에서 NOR gate의 또 다른 하나의 input은 S, R에 연결되어 있음을 알 수 있다. 두 개의 입력 S, R을 가지고 2개의 출력을 가진다.
앞 글에서 살펴본 cross-coupled inverter와 비슷하지만, state가 set(S), reset(R)에 의해 통제된다는 점이 다르다.
- S(set): 비트를 TRUE 값으로 만든다.
- R(reset): 비트를 FALSE 값으로 만든다.
여기서 비트는 출력 Q의 값을 의미한다.
R | S | |
1 | 0 | N1이 적어도 하나의 TRUE 입력값(R)을 받는다. 따라서 Q = 0 (FALSE) |
0 | 1 | N2는 적어도 하나의 TRUE 입력값(S)을 받는다. 따라서 N1은 두 개의 FALSE 입력을 받는다. 따라서 Q = 1 (TRUE) |
1 | 1 | N1, N2 모두 적어도 하나의 TRUE 입력값(R or S)을 받는다. 따라서 두 개의 출력은 모두 FALSE |
0 | 0 | N1, N2 모두 Q or ~Q의 값을 알지 못하기 때문에 출력을 결정할 수 없다. Q = 0일 때, N2는 TRUE 출력을 만들어내므로 N1의 출력 Q = 0 Q = 1일 때, N2는 FALSE 출력을 만들어내므로 N1의 출력 Q = 1 |
즉, R = 0, S = 0일 때 SR latch는 이전에 가지고 있던 Q의 값을 저장해두고 있다가 그대로 출력한다. 따라서 이 회로는 메모리를 가진다.
SR latch는 다음과 같이 나타낸다.
앞 글에서 살펴본 cross-coupled inverters와 같이, SR latch는 bistable element이다.하지만 SR latch의 state는 S, R input에 의해 통제된다.
- R(reset)이 활성화되면 상태는 0으로 리셋된다.
- S(set)이 활성화될 때, 상태는 1로 셋된다.
- R, S가 모두 활성화되지 않을 때, 상태는 예전 값을 유지한다. (bistable)
2. D Latch
SR Latch에는 몇 가지 단점이 있다.
- S, R이 동시에 활성화되면 이상하게 작동한다.
- S, R input은 what과 when의 개념이 섞여 있다. 하나의 input이 활성화되면 어떤 state로 바뀔 지 뿐만 아니라 언제 그것이 바뀔 지 또한 결정한다. 이것은 회로의 설계를 어렵게 한다.
D Latch는 이러한 문제를 해결한다. 데이터 입력 D와 clock 입력 CLK를 받는다. D가 what 문제를 다루고 CLK가 when 문제를 다룬다.
CLK | D | S | R | Q |
0 | X | 0 | 0 | Q는 예전 값을 저장한다. |
1 | 0 | 0 | 1 | Q = 0 (FALSE) |
1 | 1 | 1 | 0 | Q = 1 (TRUE) |
S, R은 CLK, D의 값에 따라 자동으로 결정된다. X는 어떤 값이 오든지 상관 없다는 것을 나타낸다.
CLK이 언제 latch를 통해 데이터를 보낼지 조절한다는 것을 알 수 있다.
- CLK = 1일 때, latch는 transparent(투명)하다. 즉, D에 있는 데이터가 마치 latch가 buffer인 것처럼 그대로 흘러 Q로 전달된다. 즉, CLK = 1인 동안 계속해서 상태를 경신한다.
- CLK = 0일 때, latch는 opaque(불투명)하다. Q로 흘러오는 데이터를 막고 예전 값을 유지한다.
D latch는 다음과 같이 나타낸다.
지금까지 Latch에 대해서 살펴보았다. 다음 글에서는 또 다른 sequential logic circuit인 Flip-Flop에 대해 알아보도록 하자.
'Computer > 디지털시스템' 카테고리의 다른 글
[Verilog] Hardware Description Language (HDL) (1) | 2024.06.06 |
---|---|
[논리회로] 순차 논리회로 (Sequential Logic Circuit) (1) (0) | 2024.06.06 |
[논리회로] 조합 논리회로 (Combinational Logic Circuit) (3): X, Z (1) | 2024.06.06 |
[논리회로] 조합 논리회로 (Combinational Logic Circuit) (2): boolean equation, boolean algebra (1) | 2024.06.06 |