핵심 인사이트
- 래치(Latch)는 레벨 트리거(Level-Triggered) 방식의 1비트 기억 소자 — 입력 신호가 활성 레벨인 동안 계속 상태가 변할 수 있어, 플립플롭(Flip-Flop)과 달리 클럭 에지가 아닌 레벨 구간 전체에서 데이터를 통과시킨다.
- SR 래치가 모든 래치의 기초 — NOR/NAND 게이트 2개의 피드백 연결만으로 기억 기능을 구현하며, S=1·R=1(NAND: S=0·R=0)의 금지 상태가 설계 시 반드시 고려해야 할 제약이다.
- 래치의 투명성(Transparency)이 타이밍 해저드의 원인 — 인에이블(EN) 신호가 HIGH인 동안 입력 변화가 즉시 출력에 반영되므로, 클럭 스큐(Clock Skew)나 글리치(Glitch)에 취약하여 현대 동기식 설계에서는 D 플립플롭을 선호한다.
Ⅰ. SR 래치 (SR Latch)
NOR 게이트 SR 래치:
구조:
S ──┬──[NOR]── Q
│ ↑
R ──┼──[NOR]── Q̄
│ ↑
└─────┘ (피드백)
진리표:
S R Q(다음) 동작
0 0 Q(현재) 유지 (Hold/Memory)
1 0 1 세트 (Set)
0 1 0 리셋 (Reset)
1 1 금지! 불정의 (Forbidden)
NAND 게이트 SR 래치 (액티브 LOW):
S̄ ──[NAND]── Q
R̄ ──[NAND]── Q̄
S=0, R=1 → Set (Q=1)
S=1, R=0 → Reset (Q=0)
S=0, R=0 → 금지! (NAND의 금지 상태)
S=1, R=1 → 유지
SR 래치 동작 원리:
기억 상태 (S=0, R=0):
가정: Q=1, Q̄=0
Q NOR: S=0, Q̄=0 → 출력 1 ✓ (자기 유지)
Q̄ NOR: R=0, Q=1 → 출력 0 ✓ (자기 유지)
→ 피드백이 상태를 유지!
금지 상태 (S=1, R=1):
Q NOR: S=1 → 출력 무조건 0
Q̄ NOR: R=1 → 출력 무조건 0
Q=0, Q̄=0 → Q ≠ Q̄ 조건 위반!
이후 S=R=0으로 가면 예측 불가 상태
📢 섹션 요약 비유: SR 래치는 시소 — S 누르면 Q 쪽으로(Set), R 누르면 Q̄ 쪽으로(Reset), 아무것도 안 누르면 그대로(Hold). 둘 다 동시에 누르면(금지) 시소가 뒤집히는 재앙!
Ⅱ. D 래치와 투명성
D 래치 (Data Latch):
SR 래치의 문제: S=R=1 금지 상태
해결: S와 R을 단일 입력 D로 연결 (R = D̄)
구조:
D ──┬──────────────[NOR]── Q
└──[NOT]── R ─[NOR]── Q̄
S = D
진리표:
EN D Q(다음)
0 X Q(현재) 유지 (래치됨)
1 0 0 D 통과
1 1 1 D 통과
투명성 (Transparency):
EN=1인 동안:
D 변화 → 즉시 Q 변화
(D가 "투명하게" Q로 전달됨)
EN=0인 순간:
D 변화 → Q 무변화 (래치됨)
투명성 문제:
EN 신호 HIGH 구간에 D가 여러 번 변하면?
→ Q도 여러 번 변함 (글리치)
조합 논리 루프:
래치 Q → 조합 논리 → 래치 D → ...
EN=1 동안 루프 발진 가능
vs D 플립플롭:
EN=1 전체가 아닌 EN의 에지(↑)에서만 변화
→ 타이밍 예측 가능
→ 동기식 설계에 적합
📢 섹션 요약 비유: D 래치 투명성 = 유리문 — EN=1(열림): 밖 상황(D) 즉시 보임(Q 변화). EN=0(닫힘): 마지막 상태 유지. 문 열린 동안 변화가 많으면 불안정(글리치 위험)!
Ⅲ. 래치 vs 플립플롭
비교:
특성 | 래치 | D 플립플롭
-------------|---------------|---------------
트리거 방식 | 레벨 (Level) | 에지 (Edge ↑/↓)
샘플 타이밍 | EN=1 전체 구간| 클럭 에지 순간
투명성 | 있음 | 없음
메타스태빌리티| 높음 | 낮음 (에지 설계)
면적 | 작음 | 큼 (~2×래치)
전력 | 낮음 | 높음
설계 복잡도 | 낮음 | 높음
현대 설계에서의 래치 사용:
ASIC/SoC에서 래치 적극 활용:
면적: 래치 ≈ D FF / 2
전력: 래치 ≈ D FF × 0.6
→ 모바일 SoC에서 전력 절감에 활용
Latch-Based Pipeline:
전통: D FF → 조합 → D FF
래치 기반: 마스터 래치 → 조합 → 슬레이브 래치
이점: 사이클 "빌림(borrowing)" 가능
단점: 타이밍 분석 복잡
FPGA에서:
LUT 기반 래치 구현 비효율
기본 소자가 D FF → FPGA에선 FF 선호
Latch Inference 경고:
HDL 설계 시 의도치 않은 래치 생성 주의
Verilog: always 블록에서 일부 조건 미정의
→ 합성기가 래치로 구현 (경고 발생)
📢 섹션 요약 비유: 래치 vs 플립플롭 = 문 vs 카메라 셔터 — 래치는 문 열린 동안 계속 들어옴(레벨). 플립플롭은 셔터 누르는 순간만(에지). 모바일은 에너지 절약 위해 래치 선호!
Ⅳ. 실용 래치 회로
SR 래치 응용:
1. 디바운싱 (Debouncing):
기계 스위치는 눌릴 때 여러 번 튐(바운싱)
SPDT 스위치 + NAND SR 래치:
스위치 A → S
스위치 B → R
바운싱 동안:
SR 래치가 최초 전환 후 상태 유지
→ 깨끗한 단일 전환 신호 생성
2. 우선순위 회로:
인터럽트 신호 래치:
여러 인터럽트 소스 → SR 래치
처리 완료 → R 신호로 래치 클리어
D 래치 응용:
1. 버스 인터페이스:
8비트 데이터 버스 → 8개 D 래치
주소 디코더 → EN
특정 주소 접근 시: EN=1 → 데이터 통과
→ 출력 레지스터에 저장
2. 파이프라인 스테이지 (CPU):
클럭 HIGH: 마스터 래치 투명 (입력 통과)
클럭 LOW: 슬레이브 래치 투명 (출력 통과)
= 마스터-슬레이브 D FF 구현
구현 비교:
SR 래치: NOR × 2 또는 NAND × 2
D 래치: SR 래치 + NOT + 2 AND ≈ 6 게이트
D FF: D 래치 × 2 (마스터-슬레이브) ≈ 12 게이트
📢 섹션 요약 비유: SR 래치 디바운싱 = 출입문 센서 — 문 살짝 건드려도 여러 번 신호 발생(바운싱). SR 래치가 "한 번 열렸으면 계속 열림"으로 깔끔하게 처리!
Ⅴ. 실무 시나리오 — ASIC 전력 최적화
모바일 SoC ASIC 설계에서 래치 활용:
배경:
스마트폰 SoC 설계 (7nm 공정)
배터리 최적화 최우선
문제:
모든 상태 저장 소자를 D FF로 구현
D FF 수: 5,000,000개
전력 소비: FF 클럭 토글 → 동적 전력 주요 원인
래치 기반 최적화:
분석:
전체 FF 중 40%는 단방향 데이터 흐름
→ 레벨 트리거 래치로 대체 가능
교체 전략:
Critical Path FF: D FF 유지 (타이밍 중요)
Non-Critical Path FF: 래치 쌍으로 대체
결과:
교체된 FF: 2,000,000개 → 래치
면적: -18% (래치 = FF의 약 50% 면적)
동적 전력: -12% (클럭 토글 감소)
주의:
래치 타이밍 분석 복잡도 증가
STA(Static Timing Analysis) 도구 추가 설정
검증 시간 15% 증가
결론:
전력 최적화: 고사양 모바일 SoC에서 래치 전략 가치 있음
단, 타이밍 분석 전문성 필수
현대 EDA 도구(Cadence, Synopsys) 래치 최적화 자동화 지원
📢 섹션 요약 비유: ASIC 래치 최적화 = 전등 스위치 절약 — 항상 켜둘 필요 없는 등(FF)을 조명 센서(래치)로 교체. 면적 18%, 전력 12% 절감. 스마트폰 배터리 늘리는 작은 기술!
📌 관련 개념 맵
래치 (Latch)
+-- 유형
| +-- SR 래치 (NOR/NAND)
| +-- D 래치 (투명 래치)
| +-- JK 래치, T 래치
+-- 특성
| +-- 레벨 트리거 (Level-Triggered)
| +-- 투명성 (Transparency)
| +-- 금지 상태 (Forbidden State)
+-- 비교
| +-- D 플립플롭 (에지 트리거)
| +-- 마스터-슬레이브 FF
+-- 응용
+-- 디바운싱
+-- ASIC 전력 최적화
+-- 버스 인터페이스
📈 관련 키워드 및 발전 흐름도
[SR 래치 발명 (1918년경)]
전화 교환기 릴레이 기반
피드백 기억 원리
|
v
[D 래치 / 플립플롭 (1940s~)]
전자식 컴퓨터 레지스터
마스터-슬레이브 FF
|
v
[CMOS 집적화 (1970s~)]
소형화 + 저전력
레지스터 파일 구현
|
v
[ASIC 래치 최적화 (1990s~)]
모바일 SoC 전력 절감
Latch-Based Pipeline
|
v
[현재: 차세대 메모리 소자]
스핀트로닉스, MRAM
비휘발성 래치 연구
👶 어린이를 위한 3줄 비유 설명
- SR 래치는 시소 기억 장치 — S 누르면 Q 쪽으로, R 누르면 반대로. 손 떼도 그 상태 유지! 둘 다 동시에 누르면 고장(금지 상태)!
- D 래치 투명성 = 유리문 — EN=1(열림)이면 D가 즉시 Q로 보임. EN=0(닫힘)이면 마지막 상태 유지. 문 열린 동안 불안정!
- ASIC 래치 최적화 = 조명 절약 — 항상 켜둘 필요 없는 불(D FF)을 센서 등(래치)으로. 스마트폰 전력 12% 절감!