[논리회로] 5 (1) NAND/NOR Gate Lanch (set/reset)
5. 1 NAND Gate Lanch
lanch : 메모리 소자 (이기 때문에 SET OR RESET이 0이 아닌 한 출려긍ㄹ 변경하지 않고 마지막상태를 기억한다)
- 2개의 NAND or 2개의 NOR로 구성 가능!
입력 : active low set & reset
set : Q의 이전값이 0이었으면 1로 변경
reset : Q의 이전값이 1이었으면 1로 유지.. HOLD!!!
출력 : Q 와 Q'
Setting the Latch (FF)
입력 SET에 0의 펄스 인가 시
Q가 0이었으면 ? 1로
Q가 1이었으면? 1로
→ Q는 모두 HIGH 가 됨
입력 RESET에 0의 펄스 인가 시
Q가 0이었으면? 0으로
Q가 1이었으면? 0으로
→ Q는 모두 LOW가 됨
Set과 Reset이 0으로 펄스될 때의 문제 Invalid State
입력 SET과 RESET에 모두 0의 펄스 인가 시 : latch 를 set하면서 reset 하려고 함
NAND 게이트로 구성된 SR 래치에서 Set과 Reset에 모두 0의 펄스가 입력되면, 래치를 Set하려고 하면서 동시에 Reset을 하려는 상황이 발생한다. 이때, 두 입력이 모두 0이 되면 논리적으로 문제가 생긴다.
1. 기본 동작
SR 래치에서 Set과 Reset의 입력에 대한 동작은 다음과 같다:
- Set = 0, Reset = 1 → 출력 Q는 1 (Set 상태)
- Set = 1, Reset = 0 → 출력 Q는 0 (Reset 상태)
- Set = 1, Reset = 1 → 이전 상태를 유지 (기억)
- Set = 0, Reset = 0 → 잘못된 상태로, 이는 금지된 상태다.
2. Set과 Reset에 모두 0이 들어가면?
Set과 Reset이 모두 0이 되면, 두 개의 NAND 게이트는 각각 다음과 같은 입력을 받게 된다:
- 첫 번째 NAND 게이트: Set이 0이고 Reset이 0이므로 출력은 1 (첫 번째 출력 Q = 1)
- 두 번째 NAND 게이트: Set이 0이고 Reset이 0이므로 출력은 1 (두 번째 출력 Q' = 1)
하지만 이 상황은 논리적으로 불가능하다. 왜냐하면, SR 래치의 두 출력 Q와 Q'는 항상 반대 값을 가져야 하기 때문이다. 즉, Q가 1이면 Q'는 0이어야 하고, Q가 0이면 Q'는 1이어야 한다. 그러나 Set과 Reset이 모두 0일 때 두 출력 Q와 Q'가 모두 1이 되므로, 이는 논리적으로 모순이 발생하는 상태다.
3. 결론
따라서, Set과 Reset이 모두 0이 되는 상태는 SR 래치에서 금지된 상태다. 이렇게 되면 래치의 동작이 불안정해지고, 두 출력이 서로 반대가 되어야 하는 원칙을 위반하게 되므로 논리적으로 오류가 발생한다.
Q. SET과 RESET이 0으로 펄스(active low) 인 이유는 뭘까? _ NAND GATE 특성
A. NAND 게이트는 기본적으로 0-0 입력에 대해서만 출력 1을 낸다. 따라서 Active Low 방식에서 Set = 0 또는 Reset = 0이 입력되면, 그 입력이 활성화되어 원하는 동작을 수행한다. 예를 들어, Set = 0이면 Q 출력이 1이 되도록 설정되며, Reset = 0이면 Q 출력이 0이 되도록 설정된다.
5. 2 NOR GATE LATCH
NAND GATE LATCH 와 유사하게 생각하면 된다. !! 단 모두 1 일 때만 0을 출력하는 NOR GATE 특성 상 SET과RESET은
active high 로 인가된다 → 입력 펄스가 high 일 때 출력이 바뀜
- Q와 Q' 출력 위치는 NAND latch 와 반대!!
- set/reset 0/0일 때 hold
- set/reset 1/1 은 invalid state Q/Q' 모두 0