Flip-flops are the application of logic circuits that consists of two stable states. These steady states serve as a storage medium for binary data that can be changed by changing the inputs.
A latch is a type of logical circuit. It has two stable states: low and high. Although latches and flip flops are basic storage elements, they operate differently. Flip flops consist of the following types: SR Flip Flop, JK Flip Flop, D Flip Flop, and T Flip Flop. This article will explain about D Flip Flop.
What is D Flip Flop?
The undefined input condition of SET = "0" or RESET = "0" is prohibited in SR NAND Gate Bistable circuit. SR flip-flops suffer from this drawback. To counteract this, we need an inverter. Inverters are connected between the Set and Reset inputs to form another flip flop circuit called D flip flops.
D flip-flops can be constructed with a NAND gate or a NOR gate. They are available as integrated circuits because of their versatility. Typically, D flip-flops introduce a delay in timing circuits, like buffers and sample data at specific intervals. In comparison with JK flip-flops, a D flip-flop requires fewer wiring connections.
In flip-flops, a D-type flip-flop has two stable states clocked together. This flip-flop is also called "data" or "delay" flip-flop. Flip-flops of the D-type have a delay of one clock cycle in their input. Combining several D-type flip-flops makes it possible to create delay circuits used in many applications.
Representation of D Flip-Flop using Logic Gates
A D-type flip-flop consists of four inputs which are: Data input, Clock input, Set input, Reset input. There also have two outputs, which are logically inverse to the other. Depending on the logic input, either low or high voltage is used. To synchronize the circuit with external signals, the clock input is used.
The Truth Table for D Flip-Flop
Input cannot affect the output status when the clock signal is LOW. If the clock is high, the inputs become active. The D flip-flop is a controlled bi-stable latch with the clock signal as the control signal. The edge-triggered D flip-flops here fall into positive edge-triggered and negative edge-triggered. Therefore, according to the inputs, there are two stable output states.
This truth table shows how various combinations of inputs affect the output of a logic circuit.
Clock
Input
Output
D
Q
(Present state)
Qn+1
(next state)
↓ LOW(0)
x
Q
1
↑ HIGH(1)
0
0
1
↑HIGH(1)
1
1
0
Taking into account, D-type flip-flops are edge-triggered ↓and ↑ indicate the direction of the clock pulse.
The D flip-flop's input state is D(Data). Q and Qn+1 represent output states. The output changes according to the inputs in the table. In addition, remember that all of these scenarios are only possible when the clock signal is present. This works like an SR flip-flop when used with the complementary inputs only.
Characteristics Table for D Flip Flop
According to flip-flop input and current state, it defines the next state of a flip-flop.
Input 1(Qn)
Input 2(D)
Output(Qn+1)
0
0
0
0
1
1
1
0
0
1
1
1
Since (Qn+1) is similar to input D regardless of whether Q is identical to 0 or 1, the next state of the flip flop is independent of the current state.
The input pulse will modify the flip flop's output regardless of earlier output, as long as the input pulse is applied to input D.
So we have concluded that Qn+1=D.
Excitation Table for D Flip Flop
As a function of the current and next states, it defines the flip-flop input variable.
Input 1(Qn)
Input 2(Qn+1)
Output(D)
0
0
0
0
1
1
1
0
0
1
1
1
The excitation input D = 0 is required for the state transition from Qn = 0 to Qn+1 = 0, regardless of Qn value.
When Qn = 0 and Qn+1 = 1, the input required for excitation is D = 1.
For input D = 0, the state transit from Qn = 1 to Qn+1 = 0.
When D=1, the state transition is from Qn = 1 to Qn+1 = 1.
To generate the excitation table, all of the states mentioned above transitions for D flip-flop from the current state(Qn) to the next state(Qn+1) for the corresponding excitation inputs will be filled in the table above as output(D).
Why is D Flip Flops used, and for what else can they be used? Flip Flops are building blocks used to create shift registers. The inverting output of the flip flop is connected to the digital input, creating a divide-by-two circuit where the D output changes at half the clock frequency. Creating a countdown timer by cascading D flip-flops and properly designing external combinational logic gates is possible.
How does a D flip-flop clock work? According to the input signals at the transition, the flip-flop either changes or retains its output signal based on a clock signal. The output of some flip-flops changes on the rising edge of the clock, and the output of others flip-flop changes on the falling edge.
What is the standard form of D flip-flop? Essentially, D Type flip-flops are high-activated S-R flip-flops with an additional inverter to prevent their inputs from both being high or both being low simultaneously. With these simple modifications, the SR flip-flop is prevented from reaching indeterminate and non-allowed states.
What is D Latch? One bit of information can be stored using an electronic device in the latch. When the clock input is high, the D latch 'holds' or captures the logic level on the Data line. As long as the clock pulse is high, the data on the D line is followed by the output, Q. If the Clock input drops to logic 0, the last state of D is trapped and held in the latch.
Key Takeaways
We have learned about D Flip Flops in this article, which is a modification of the SR flip-flop. Furthermore, we also saw the truth table, characteristics table, excitation table, and the logic gate diagram.
If you are new here and eager to learn Data Structures and Algorithms, we recommend you to check out our guided path, which will help you do well in your coding interviews.