The D Flip-Flop (Quickstart Tutorial)

The D Flip-Flop is an edge-triggered circuit that mixes a pair of D latches to retailer one bit. It’s generally used as a primary constructing block in digital electronics to create counters or reminiscence blocks equivalent to shift registers.

On this tutorial, you’ll study the way it works, its reality desk, and construct one with logic gates.

D Flip-Flop symbol
D Flip-Flop image

What’s a Flip-Flop?

Latches and flip-flops are generally grouped collectively since they each can retailer one bit (1 or 0) on their outputs. In distinction to latches, flip-flops are synchronous circuits that want a clock sign (Clk). The D Flip-Flop will solely retailer a brand new worth from the D enter when the clock goes from 0 to 1 (rising edge) or 1 to 0 (falling edge).

A D Flip-Flop is constructed from two D latches. You possibly can see a D Flip-Flop that updates on the rising edge under:

D Flip-Flop Master-Slave circuit
D Flip-Flop Grasp-Slave circuit

The timing diagram for this circuit is proven under. It exhibits how a rising edge-triggered D Flip-Flop behaves. The output Q solely modifications to the worth the D enter has for the time being the clock goes from 0 to 1.

D flip-flop timing diagram
Timing diagram for a D flip-flop

How Does the D Flip-Flop Work?

Because the output Q solely modifications when the Clock enter goes from 0 to 1, you’ll get the next reality desk:

Clk D Q Description
 0 X Q Reminiscence
(no change)
 0→1 (↑) 0 0 Reset Q to 0
 0→1 (↑) 1 1 Set Q to 1
1 X Q Reminiscence
(no change)

Within the first and final rows of the reality desk, the clock enter is 0 and 1. None of them is a rising edge sign, so nothing occurs. The Q output retains no matter worth it had. On this case, it doesn’t matter what worth the D enter has, the Q output gained’t change, it’s going to preserve its worth as it’s. That is how this circuit “remembers” a bit.

Take a look on the two center rows. Right here the clock enter goes from 0 to 1, so you might have a rising edge. Which means that if the D enter is 0, the Q output will likely be reset to 0. If the D enter is 1, the Q output will likely be set to 1.


D Flip-Flops that you just discover in chips prepared to be used, such because the CD4013, often even have Set and Reset inputs that you should use to pressure the D flip-flop into beginning with a 1 or a 0 on the output. Utilizing these pins is typically known as “presetting” the D flip-flop.

The Benefit of a D Flip-Flop vs Latch

D latch circuit use in D flip-flops
The D Latch Circuit

One of many downsides of the D latch is that its output can change at any time whereas its Allow pin is 1. So in the event you apply a clock sign to the D Latch, the Q output might additionally change in the course of the time the constructive pulse lasts.

Within the timing diagram above, you possibly can see that in one clock cycle, the output is each 1 and 0 as a result of the D enter modifications in the course of the clock pulse. That’s one thing you don’t wish to occur in a clocked digital system.

To get this flip-flop to vary its output solely on the rising edges of the clock sign you possibly can construct a Grasp-Slave D Flip-Flop Circuit, which requires a mix of two D latches as follows:

blocks of the master-slave D flip-flop

How D Flip-Flops Work

The output from the grasp latch modifications to what the D enter has when the Clk enter is 0.

If Clk is 0, it implies that the Allow enter of the slave latch can be 0. So nothing occurs with the output of this latch.

However for the time being that Clk goes from 0 to 1 (rising edge), the Allow enter of the slave latch is ready to 1. Meaning no matter was on the output of the grasp latch for the time being Clk went from 0 to 1 is saved to the output of the slave latch.

When you substitute the symbols for D latches constructed with NAND gates you’ll get:

Master-slave circuit

What Can You Use Them For?

The D Flip-flop is a really helpful circuit. You possibly can mix a number of D flip-flops to create for instance shift registers and counters, that are used loads in digital electronics. However you don’t need to construct them from scratch. As an alternative, you should use the CD4013 chip that incorporates two D flip-flops.

Circuit Instance: Shift Registers

To create a shift register, join the output of 1 flip-flop to the enter of the subsequent. New bits go into the primary flip-flop on the left. And for each clock pulse, the bits saved within the different flip-flops are shifted one place to the best.

Shift register circuit made with d flip-flops

That is helpful for instance to get extra output pins from an Arduino or different microcontroller. To manage a shift register, you want one information pin and one clock pin. So with solely two pins from the Arduino, you possibly can management as many exterior pins as you need through the use of a shift register.

Circuit Instance: Ring Counters

When you take the output from the final flip-flop in a shift register and join it to the enter of the primary flip-flop, you get a Ring Counter. Preset one of many flip-flops to start out with 1, then this 1 will likely be shifted round and round within the Ring Counter.

A ring counter circuit

The IC 4017 is a chip with such a performance, however with 10 outputs as an alternative of simply 4 like above. This makes for a enjoyable chip you should use for instance to create the Knight Rider LED bar.


Do you might have any questions on how the D Flip-Flop works? Let me know within the feedback under.

Extra Digital Electronics Tutorials


Leave a Reply

    Your Cart
    Your cart is emptyReturn to Shop