Flip flops can be triggered by the edges of the clock pulse or the high or low states of the clock..
![]() |
![]() |
![]() |
![]() |
triggered when on negative edge | triggered on low | triggered on positive edge | triggered on high |
They all have the same transition table, the transitions just happen at different times in the clock cycle.
J | K | Q | Q' |
---|---|---|---|
0 | 0 | no change | |
0 | 1 | 0 = reset state (or clear) | 1 = reset state |
1 | 0 | 1 = set state (or preset) | 0 = set state (or preset) |
1 | 1 | toggle. Q and Q' become the opposite of what they were. |
Flip flops can also have a set(preset, or Set Direct SD) and clear(reset, or Direct Reset RD) button to guarantee that they will start in a valide state and remain in a valid state. These do not depend on the clock signal at all but change the state of the flip flop at the moment they are changed.
No matter what the clock, or J, or K are doing, if the Preset is active the Flip Flop will remain in the set state (Q=1, Q'=0) and if the Reset (or clear) is active the Flip Flop will stay in the reset state (Q=0, Q'=1). If there is a bubble on the PRE, CLR inputs, then a low signal will activate them, otherwise a high signal activates them.
![]() |
![]() |
triggered when on negative edge with active-high set/reset | triggered on low with active-low set/reset |
Here's a more in depth explanation of flip flops and an interactive display of the many variations of flip flops.