PREVIEW
D Flip-Flop

D Flip-Flop

Memory signal_cellular_alt_2_bar Intermediate schedule 22 min

D 플립플롭

개요

  • 목적: D 플립플롭은 단일 비트의 데이터를 저장하는 순차 디지털 회로입니다. 클록 신호에 의해 트리거될 때 데이터 입력(D)의 논리 상태를 캡처합니다.
  • 기호: D 플립플롭은 D, CLK, PRE, CLR 입력과 Q 및 Q̅ 출력이 있는 직사각형 블록으로 표현됩니다.
  • DigiSim.io 역할: 레지스터, 카운터, 유한 상태 기계와 같은 순차 회로를 구성하기 위한 기본 메모리 요소로 사용됩니다.

d flip flop component

기능 설명

논리 동작

D 플립플롭은 클록 에지(상승 에지)에 의해 트리거될 때 D 입력의 값을 캡처하고, 다음 클록 에지까지 해당 값을 유지합니다. 정상 동작을 무시할 수 있는 비동기 프리셋 및 클리어 입력을 갖추고 있습니다.

핀 배치:

  • 핀 0: D (데이터 입력)
  • 핀 1: CLK (클록 입력)
  • 핀 2: PRE (프리셋 - 비동기 설정)
  • 핀 3: CLR (클리어 - 비동기 리셋)
  • 출력 0: Q (저장된 값)
  • 출력 1: Q̅ (보수 출력)

진리표:

PRE CLR CLK D Q (다음) Q̅ (다음) 동작
X 1 X X 0 1 비동기 클리어
1 0 X X 1 0 비동기 프리셋
0 0 0 0 1 클록에서 0 캡처
0 0 1 1 0 클록에서 1 캡처
0 0 0 X Q (이전) Q̅ (이전) 이전 상태 유지
0 0 X Q (이전) Q̅ (이전) 이전 상태 유지

참고: ↑는 클록의 상승 에지, ↓는 하강 에지, X는 "무관", 0 = 비활성(LOW), 1 = 활성(HIGH)

동작 우선순위 (높은 것부터 낮은 것):

  1. CLR (클리어): CLR=1이면 다른 입력과 관계없이 Q가 0으로 강제됨
  2. PRE (프리셋): PRE=1이고 CLR=0이면 다른 입력과 관계없이 Q가 1로 강제됨
  3. 클록 에지: PRE=0이고 CLR=0이면 상승 클록 에지에서 Q가 D를 캡처

입력 및 출력

  • 입력:

    • D (데이터) [핀 0]: 다음 클록 에지에서 저장될 값을 결정하는 1비트 입력.
    • CLK (클록) [핀 1]: D 값이 샘플링되는 시점을 제어하는 1비트 양의 에지 트리거 입력.
    • PRE (프리셋) [핀 2]: 활성 HIGH일 때 Q를 1로 강제하는 1비트 비동기 입력.
    • CLR (클리어) [핀 3]: 활성 HIGH일 때 Q를 0으로 강제하는 1비트 비동기 입력(최고 우선순위).
  • 출력:

    • Q: 저장된 값을 나타내는 1비트 출력.
    • : 저장된 값의 보수(반전) 출력.

구성 가능한 매개변수

  • 전파 지연: 클록 에지와 해당 출력 변경 사이의 시간 지연.

DigiSim.io에서의 시각적 표현

D 플립플롭은 왼쪽에 입력(위에서 아래로 D, CLK, PRE, CLR)이, 오른쪽에 출력(Q, Q̅)이 있는 직사각형 블록으로 표시됩니다. 구성요소에는 D 플립플롭임을 식별하기 위해 "D FF"로 명확하게 표시됩니다. 클록 입력은 양의 에지 감도를 나타내는 삼각형 기호로 표시됩니다. 회로에 연결되면 와이어 색상과 값을 통해 출력이 논리 상태를 시각적으로 나타냅니다.

교육적 가치

핵심 개념

  • 순차 논리: 출력이 현재 입력과 이전 상태 모두에 의존하는 방식을 보여줍니다.
  • 에지 트리거링: 클록 제어 상태 전환의 개념을 설명합니다.
  • 상태 저장: 디지털 시스템이 상태 정보를 어떻게 저장하고 유지하는지 보여줍니다.
  • 동기화: 데이터가 클록 신호와 어떻게 동기화될 수 있는지 보여줍니다.

학습 목표

  • D 플립플롭이 이진 데이터를 어떻게 캡처하고 저장하는지 이해하기.
  • 에지 트리거 동작과 순차 회로에서의 중요성 배우기.
  • 동기 및 비동기 동작의 차이점 인식하기.
  • D 플립플롭을 사용하여 레지스터, 카운터, 상태 기계 구축하기.
  • 설정 시간 및 유지 시간과 같은 타이밍 요구사항 이해하기.

사용 예시/시나리오

  • 데이터 저장: 디지털 시스템에서 개별 비트 정보 저장.
  • 레지스터: 다중 D 플립플롭으로 다중 비트 값을 저장하는 레지스터 생성.
  • 주파수 분할: 특정 방식으로 구성하면 D 플립플롭이 클록 주파수를 분할 가능.
  • 에지 검출: 입력 신호의 에지를 검출하는 데 사용 가능.
  • 상태 기계: 순차 제어를 위한 유한 상태 기계의 상태 요소로 사용.

기술 참고사항

  • 메타안정성: 설정 및 유지 시간이 위반되면 플립플롭이 출력이 예측 불가능한 메타안정 상태에 진입할 수 있습니다.
  • 에지 트리거링: DigiSim.io에서 D 플립플롭은 양의 에지 트리거 방식으로, 클록 신호의 상승 에지에서 데이터를 캡처합니다.
  • 비동기 제어: PRE 및 CLR 입력은 활성 HIGH이며 동기 클록 및 데이터 입력보다 우선합니다. CLR이 PRE보다 높은 우선순위를 가집니다.
  • 제어 신호 우선순위: CLR 입력은 항상 PRE와 동기화된 입력을 무시합니다. CLR=1이면 출력이 0으로 강제됩니다. PRE=1이고 CLR=0이면 출력이 1로 강제됩니다.
  • 정상 동작: PRE와 CLR이 모두 0(비활성)이면 플립플롭은 상승 클록 에지에서 D 입력을 캡처하여 정상 동작합니다.

구현 방법

  1. 마스터-슬레이브 구성

    • 두 개의 캐스케이드 래치(마스터와 슬레이브)
    • 마스터가 데이터를 캡처하고, 슬레이브가 출력을 업데이트
    • 펄스 트리거 동작을 가진 레벨 감응
    • 클록 전환 중 원치 않는 피드백 방지
    • 구형 또는 간단한 설계에서 흔함
    • 신뢰성 있는 동작을 위해 비중첩 클록 위상 필요
    • 단순 래치보다 클록 글리치에 더 면역
    • 초기 TTL 구현에서 일반적
  2. 에지 트리거 설계

    • 클록 에지(상승 또는 하강)에 직접 반응
    • 내부 펄스 생성 회로 사용
    • 복잡한 동기 시스템에서 더 신뢰성
    • 클록 전환 시 데이터의 정밀 샘플링
    • 대부분의 디지털 시스템에서 현대 표준
    • 더 복잡한 내부 회로
    • 입력 노이즈에 대한 면역성 향상
    • 현대 CMOS 구현에서 지배적
  3. CMOS 전송 게이트 구현

    • 전송 게이트를 스위치로 사용
    • 낮은 전력 소비
    • 일반적으로 에지 트리거
    • 균형 잡힌 전파 지연
    • 최신 CMOS 프로세스에서 효율적
    • 저전력 응용에 적합
    • 좋은 노이즈 면역성
    • 최신 집적 회로에서 흔함
  4. 집적 회로 구현

    • 전용 플립플롭 IC
    • 예: 7474 (듀얼 D 플립플롭), 74175 (쿼드 D 플립플롭)
    • 다양한 기능: 클리어, 프리셋, 패키지당 여러 유닛
    • 다양한 논리 패밀리에서 사용 가능
    • 잘 특성화된 타이밍과 부하
    • 표준 인터페이스 및 핀아웃
    • 브레드보딩 및 프로토타이핑에 사용
    • 지정된 조건에서 신뢰성 있는 동작
  5. FPGA/ASIC 구현

    • FPGA 논리 셀 및 ASIC 라이브러리에 내장
    • 대상 기술에 최적화
    • 추가 기능(클록 활성화 등)을 포함할 수 있음
    • 전용 하드웨어 자원 활용
    • 특수 요구사항에 쉽게 구성 가능
    • 조합 논리와 통합
    • 복잡한 디지털 시스템을 위한 현대적 접근
    • 설계 도구에 의해 타이밍이 신중하게 관리됨
  6. 차동 신호 구현

    • 클록 및 때때로 데이터에 차동 신호 사용
    • 높은 노이즈 면역성
    • 고주파에서 더 나은 성능
    • 고속 응용에서 흔함
    • 더 복잡하지만 더 신뢰성
    • 특수 고성능 시스템에서 사용
    • 내부적으로 전류 모드 논리 사용 가능
    • 신중한 신호 무결성 관리 필요
  7. 저전력 변형

    • 최소 전력 소비를 위해 특화됨
    • 클록 게이팅 기능
    • 줄어든 내부 스위칭 활동
    • 전원 차단 또는 유지 모드
    • 배터리 구동 장치에서 사용
    • 전력 효율을 위해 속도를 희생할 수 있음
    • 특수 전원 도메인을 포함할 수 있음
    • 에너지 제약이 있는 응용에서 중요

응용

  1. 데이터 저장 및 레지스터

    • 임시 데이터 저장
    • 데이터 이동을 위한 시프트 레지스터
    • 병렬 데이터 레지스터
    • 입출력 포트 래칭
    • 매개변수 저장
    • 구성 레지스터
    • 상태 플래그
  2. 동기화

    • 클록 도메인 교차
    • 메타안정성 해결
    • 신호 정렬
    • 비동기 소스에서의 데이터 캡처
    • 버스 동기화
    • 인터페이스 타이밍 관리
    • 펄스 동기화
  3. 카운터 및 타이머

    • 이벤트 카운팅용 이진 카운터
    • 주파수 분할기
    • 상태 시퀀서
    • 타이밍 생성
    • 지연 요소
    • 프로세스 제어 타이밍
    • 타임아웃 모니터링
  4. 상태 기계

    • 순차 제어 논리
    • 프로토콜 구현
    • 알고리즘 순서화
    • 명령어 디코딩
    • 시스템 제어 장치
    • 이벤트 구동 시퀀서
    • 알고리즘 상태 기계
  5. 메모리 요소

    • SRAM 메모리 셀
    • 캐시 메모리 저장
    • 레지스터 파일
    • 내용 주소화 메모리
    • LUT(룩업 테이블) 구성
    • FIFO(선입선출) 메모리
    • 버퍼링 응용
  6. 신호 처리

    • 파이프라인 단계
    • 디지털 필터
    • 샘플 앤 홀드 회로
    • 데이터 직렬화기/역직렬화기
    • 주파수 합성
    • 디지털 변조
    • 신호 지연 라인
  7. 인터페이스 및 통신

    • 직렬 통신(UART, SPI, I²C)
    • 데이터 프레이밍 및 정렬
    • 버스 중재
    • 핸드셰이킹 프로토콜
    • 패킷 동기화
    • 클록 복구
    • 데이터 버퍼링

제한 사항

  1. 타이밍 제약

    • 설정 및 유지 시간 요구사항
    • 클록 스큐 민감도
    • 최대 동작 주파수
    • 최소 펄스 폭 요구사항
    • 전파 지연 변동
    • 타이밍 위반 시 메타안정성
    • 복구 및 제거 시간 요구사항
    • 후속 논리에 영향을 미치는 클록-출력 지연
  2. 메타안정성 문제

    • 타이밍 위반 시 메타안정 상태 가능
    • 예측 불가능한 해결 시간
    • 클록 주파수에 따라 확률 증가
    • 비동기 인터페이스에서 중요
    • 동기화기 회로 필요
    • 시스템 장애를 유발할 수 있음
    • 디버깅이 어려움
    • 발생의 통계적 특성
  3. 전력 고려사항

    • 동적 전력 소비가 주파수에 따라 증가
    • 클록 전환 중 전류 스파이크
    • 대부분의 설계에서 항상 켜져 있는 동작
    • 대규모 설계에서 시스템 전력에 상당한 기여
    • 클록 분배 네트워크 전력 소비
    • 고주파에서 열 발생
    • 전력 무결성 요구사항
    • 전원 차단 순서 필요
  4. 클록 분배

    • 여러 플립플롭에 걸친 클록 스큐
    • 클록 지터 효과
    • 팬아웃 제한
    • 클록 버퍼 요구사항
    • 클록 트리 합성 복잡도
    • 위상 관계 관리
    • 클록 도메인 관리
    • 타이밍 클로저 과제
  5. 물리적 제한

    • 소비되는 실리콘 면적
    • 고밀도 설계에서의 라우팅 혼잡
    • 온도 민감도
    • 전압 민감도
    • 경년 효과
    • 환경 감수성
    • 방사선 민감도
    • 제조 가변성

회로 구현 세부사항

NAND 게이트를 사용한 기본 D 플립플롭

graph LR
    InputD[D Input] --> MasterLatch[Master Latch]
    Clock[Clock] --> MasterLatch
    Clock --> Inverter[Inverter]
    Inverter --> SlaveLatch[Slave Latch]
    
    MasterLatch --> SlaveLatch
    
    SlaveLatch --> OutputQ[Q Output]
    SlaveLatch --> OutputQBar[Q̅ Output]

동작: 마스터-슬레이브 구성. 마스터 래치는 클록 HIGH에서 데이터를 캡처하고, 슬레이브 래치는 클록 LOW에서 전달합니다(에지 트리거 동작).

7474 듀얼 D 플립플롭 IC

핀 구성:

신호 설명 신호 설명
1 PRE1 플립플롭 1 프리셋 14 VCC 전원 공급(+5V)
2 D1 데이터 입력 1 13 PRE2 플립플롭 2 프리셋
3 CLK1 클록 입력 1 12 D2 데이터 입력 2
4 CLR1 플립플롭 1 클리어 11 CLK2 클록 입력 2
5 Q1 출력 1 10 CLR2 플립플롭 2 클리어
6 Q̅1 반전 출력 1 9 Q2 출력 2
7 GND 접지(0V) 8 Q̅2 반전 출력 2

특징: 프리셋과 클리어가 있는 듀얼 양의 에지 트리거 D 플립플롭.

에지 트리거 D 플립플롭 구현

마스터-슬레이브 아키텍처:

에지 트리거 D 플립플롭은 두 개의 래치를 사용하는 마스터-슬레이브 구성을 사용합니다:

  1. 마스터 래치: 클록이 HIGH일 때 활성화되어 입력 D를 캡처
  2. 슬레이브 래치: 클록이 LOW(반전)일 때 활성화되어 마스터의 출력을 Q로 전달
  3. 에지 트리거링: 클록 전환(상승 또는 하강 에지)에서만 출력이 변경
  4. 내부 피드백: 교차 결합된 NAND/NOR 게이트가 쌍안정 저장을 생성

이 아키텍처는 클록 사이클당 한 번만 출력이 변경되도록 보장하여 동기 디지털 시스템에서 안정적이고 예측 가능한 동작을 제공합니다.

관련 구성요소

  • D 래치: D 플립플롭의 레벨 감응 버전
  • JK 플립플롭: 설정, 리셋 및 토글 기능이 있는 더 다양한 플립플롭
  • T 플립플롭: 활성화될 때 각 클록에서 상태가 변경되는 토글 플립플롭
  • SR 플립플롭: 기본 쌍안정 요소인 설정-리셋 플립플롭
  • 레지스터: 다중 비트 저장을 위한 플립플롭 그룹
  • 시프트 레지스터: 데이터를 직렬로 이동시키는 연결된 플립플롭
  • 카운터: 카운팅을 위한 피드백이 있는 연결된 플립플롭
  • 마스터-슬레이브 플립플롭: 2단 펄스 트리거 플립플롭
  • 에지 트리거 플립플롭: 클록 에지에만 반응
  • 슈미트 트리거: 노이즈가 있는 클록 신호에 깨끗한 전환 제공

school 학습 경로

arrow_back 사전 요구 사항

help_outline 자주 묻는 질문

D 플립플롭이란 무엇인가요?

D 플립플롭은 클럭 에지(보통 상승 에지)에서만 D 입력을 캡처하고 다음 클럭 에지까지 그 값을 유지합니다. 레지스터의 기본 구성 요소입니다.

에지 트리거링이란 무엇인가요?

에지 트리거링은 플립플롭이 클럭 전환(양의 에지에서 0→1)의 짧은 순간에만 입력을 샘플링하는 것을 의미하며, 클럭이 안정된 HIGH 또는 LOW 상태에서는 하지 않습니다.

play_arrow 실시간 회로 실행

다른 컴포넌트 보기