Prerequisite – Flip-flop types and their Conversion
Race Around Condition In JK Flip-flop – For J-K flip-flop, if J=K=1, and if clk=1 for a long period of time, then Q output will toggle as long as CLK is high, which makes the output of the flip-flop unstable or uncertain. This problem is called race around condition in J-K flip-flop. This problem (Race Around Condition) can be avoided by ensuring that the clock input is at logic “1” only for a very short time. This introduced the concept of Master Slave JK flip flop.
Master Slave JK flip flop –
The Master-Slave Flip-Flop is basically a combination of two JK flip-flops connected together in a series configuration. Out of these, one acts as the “master” and the other as a “slave”. The output from the master flip flop is connected to the two inputs of the slave flip flop whose output is fed back to inputs of the master flip flop.
In addition to these two flip-flops, the circuit also includes an inverter. The inverter is connected to clock pulse in such a way that the inverted clock pulse is given to the slave flip-flop. In other words if CP=0 for a master flip-flop, then CP=1 for a slave flip-flop and if CP=1 for master flip flop then it becomes 0 for slave flip flop.
Working of a master slave flip flop –
- When the clock pulse goes to 1, the slave is isolated; J and K inputs may affect the state of the system. The slave flip-flop is isolated until the CP goes to 0. When the CP goes back to 0, information is passed from the master flip-flop to the slave and output is obtained.
- Firstly the master flip flop is positive level triggered and the slave flip flop is negative level triggered, so the master responds before the slave.
- If J=0 and K=1, the high Q’ output of the master goes to the K input of the slave and the clock forces the slave to reset, thus the slave copies the master.
- If J=1 and K=0, the high Q output of the master goes to the J input of the slave and the Negative transition of the clock sets the slave, copying the master.
- If J=1 and K=1, it toggles on the positive transition of the clock and thus the slave toggles on the negative transition of the clock.
- If J=0 and K=0, the flip flop is disabled and Q remains unchanged.
Timing Diagram of a Master flip flop –
- When the Clock pulse is high the output of master is high and remains high till the clock is low because the state is stored.
- Now the output of master becomes low when the clock pulse becomes high again and remains low until the clock becomes high again.
- Thus toggling takes place for a clock cycle.
- When the clock pulse is high, the master is operational but not the slave thus the output of the slave remains low till the clock remains high.
- When the clock is low, the slave becomes operational and remains high until the clock again becomes low.
- Toggling takes place during the whole process since the output is changing once in a cycle.
This makes the Master-Slave J-K flip flop a Synchronous device as it only passes data with the timing of the clock signal.
Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.
- Conversion of S-R Flip-Flop into T Flip-Flop
- Conversion of J-K Flip-Flop into T Flip-Flop
- Conversion of J-K Flip-Flop into D Flip-Flop
- Conversion of S-R Flip-Flop into D Flip-Flop
- JK Flip Flop and SR Flip Flop
- Flip-flop types, their Conversion and Applications
- Difference between Flip-flop and Latch
- Mod 6 Johnson Counter (with D flip-flop)
- Mod 2 Ring Counter (with D flip-flop)
- Difference between Batch Processing and Stream Processing
- Difference between Multitasking and Multiprocessing
- Difference between Multiprocessing and Multiprogramming
- Difference between Batch Processing OS and Multiprogramming OS
- Difference between Batch Processing System and Online Processing System
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.