래치 vs 플립플롭: 차이점 설명

둘 다 1비트를 저장하지만 트리거 방식이 다릅니다. 래치는 레벨 감응형입니다. 인에이블 신호가 활성인 동안은 투명하여 입력을 그대로 출력에 전달하고, 인에이블이 비활성이 되면 값을 유지합니다. 플립플롭은 에지 트리거형입니다. 클록 에지에서만 입력을 포착하고 그 사이의 변화는 무시합니다. 플립플롭은 서로 반대 위상으로 동작하는 두 개의 래치로 만들어집니다.

비교 항목래치플립플롭
트리거레벨 감응형: 인에이블이 활성인 동안 동작에지 트리거형: 클록의 상승 또는 하강 에지에서만 동작
출력 동작투명한 동안 입력을 따라가고 이후 값을 유지클록 에지에서만 변하고 그 외에는 안정
구성저장 단계 하나서로 반대 위상으로 동작하는 두 래치를 직렬 연결(마스터-슬레이브)
크기와 전력더 작고 전력이 낮음더 크며 트랜지스터가 대략 두 배
타이밍 분석더 복잡함: 투명 구간에 걸친 타임 보로잉단순함: 클록 에지 전후의 셋업 및 홀드 시간
글리치에 대한 민감도투명한 동안 글리치와 레이스가 그대로 통과클록 에지 사이의 입력 변화에 영향을 받지 않음
대표 용도타임 보로잉을 쓰는 커스텀 고속 설계, 클록 게이팅 셀동기 설계의 레지스터, 카운터, 상태 머신

수치는 대략적인 자릿수 기준이며, 공정 세대와 제품에 따라 달라져요.

상황별 선택 기준

래치
면적, 전력, 속도 이점이 더 어려운 타이밍 분석을 감수할 만할 때로, 주로 커스텀 또는 고성능 회로.
플립플롭
타이밍이 단순하고 견고하므로 동기 설계의 기본 구성 요소입니다.
HDL 팁
Verilog나 VHDL에서 조합 논리의 if 또는 case 문이 불완전하면 의도하지 않은 래치가 생성됩니다. 모든 분기에서 값을 할당하여 이를 피하세요.

자주 묻는 질문

래치와 플립플롭의 차이를 한 문장으로 말하면 무엇인가요?

래치는 레벨 감응형으로 인에이블이 활성인 동안 투명하고, 플립플롭은 에지 트리거형으로 클록 에지에서만 입력을 포착합니다.

플립플롭은 래치로 만들어지나요?

네. 마스터-슬레이브 플립플롭은 서로 반대 위상으로 동작하는 두 개의 래치를 직렬로 연결한 것입니다.

설계자들이 플립플롭을 선호하는 이유는 무엇인가요?

타이밍 분석이 하나의 클록 에지 전후의 셋업 및 홀드 시간만 보면 되어 단순하고, 에지 사이의 글리치는 문제가 되지 않기 때문입니다.

HDL 코드에서 의도하지 않은 래치는 어떻게 생기나요?

조합 always 블록이나 프로세스가 모든 분기에서 출력을 할당하지 않으면(불완전한 if 또는 case) 합성 도구가 이전 값을 유지하며 래치를 추론합니다.

주요 용어 설명

フリップフロップ
1ビットの情報を保持する順序回路の基本素子。D型はクロックのエッジで入力を取り込む。
意図しないラッチ
組み合わせ回路のつもりの記述で、ある条件のときに出力への代入がないために、値を保つラッチが論理合成で作られてしまうこと。

관련 비교