일반적으로 D 플립플롭은 레지스터를 제작하는 구성 요소로 사용된다. S-R 플립플롭에서 원하지 않는 상태(S=R=1)를 제거하는 한 가지 방법으로 S-R 플립플롭을 변형하여 고한된 것이 D 플립플롭(D flip-flop)이다. 입력 신호 D가 클록 펄스에 동기되어 그대로 출력에 전달되는 특성이 있다. D 플립플롭이라는 이름은 데이터를 전달하는 것과 지연(delay)하는 역할에서 유래한다.
[ 그림 6-10 ]은 D 플립플롭의 상태도다. 원 안의 값들(0, 1)은 클록 펄스 이후의 출력되는 값을 나타내며, 다음 상태가 된다. 그 밖의 값들은 현재의 입력값을 나타낸다. 따라서 현재의 입력이 클록 펄스 이후 동일하게 출력되는 것을 확인할 수 있다.
[ 그림 6 - 10 ]
다음은 D 플립플롭의 진리표를 나타낸 것이다. 현재의 상태에서 클록이 입력되면 다음 상태에서는 동일한 값을 출력한다. 클록 시간만큼의 지연이 생겼다고 할 수 있다.
[ 그림 6 - 11 ] 은 D 플립플롭의 회로도를 나타낸 것으로 단일 입력이라는 것을 확인할 수 있다.
[ 그림 6 - 11 ]
[ 그림 6-12 ]는 4비트 레지스터의 구성을 나타낸 것이다. 여기서 각 플립플롭은 공통의 클록을 갖고 있다. 클록이 플립플롭에 입력될 때마다 4비트의 입력 I0~I3가 저장되며, 출력 측A0~ A3에서는 언제나 저장된 값을 참조할 수 있다.
[ 그림 6-12 ]