Major S-T-U-D-Y/Digital System

[논리회로] 5 (1) NAND/NOR Gate Lanch (set/reset)

rlo-lo 2024. 11. 17. 16:53

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