SEQUENCE GENERATOR USING FLIP-FLOPS



Sequence generators are a type of logic circuits used to give a prescribed or pre-desired output. 
Counters are a special kind of sequence generators they pass through a definite number of states in a pre-determined order. There are mainly two types of counters - synchronous and asynchronous
counters. In Synchronous counters, the flip flops are triggered with the same clock simultaneously whereas in Asynchronous counters the flip flops are triggered with different clock or from the output
of previous flip-flops.
There are various types of counters within them such as UP counter, DOWN counter and UP/DOWN counter.
For instance, a 4-bit up-counter will count from 15 to 0 while the order is reversed in the case of 4-bit
down-counter. These circuits when suitably manipulated by making a logic circuit are often made to count till an intermediate level as well. This means that rather than counting till 15 we can terminate the method by resetting the counter just at say 7. Such counters are then referred to as MOD-N counters. However, in any of the above cases, the counters will count in a specific manner which being counting from a specific number until
the last number in an adjacent manner.
Therefore, this creates a need for SEQUENCE GENERATORS which serves the purpose of generating
a sequence desired by us in any random manner. The sequence generators are hence nothing but a
set of digital circuits which are designed to offer a selected bit sequence as their output.
This blog would, therefore, be dedicated to designing and implementation of sequence generators.

There are two methods to generate them- Direct and Indirect. We would, therefore, be going through both of the mentioned methods in detail.
DIRECT METHOD FOR T and D FLIP-FLOP
As an example, suppose we would want to design a circuit with waveform bit 011011 or which moves through the states 011011 or 0🡪1🡪3🡪4🡪5🡪7🡪0before repeating the previous pattern. In this case, the following steps will be carried out.
STEP 1 (SAME FOR ALL FLIP-FLOPS)
The first and foremost step requires us to find out is the number of unique states and the number of flip-flops

needed to produce the desired output. As we can see in this example there are 6 unique states therefore, we would need 3 flip-flops. As 23=8 max bits and therefore 6 bits could be included in 3 flip-flops. If unique states are not possible by n flip flops then add 1 more flip flop to get the unique states.
STEP 2(SAME FOR ALL FLIP-FLOPS)
The pulses are first copied down vertically on the LSB then the unique states are assigned in which the other 2
states (010,110) are invalid.




STEP3 (SAME FOR ALL FLIP-FLOPS)
After this, let us now draw the state transition diagram for our sequence generator. Which basically is drawing a diagram where present state points toward the next state.

STEP 4
Knowing the above steps, let us now draw a state transition table for our sequence generator. This is given in the first six columns of the table drawn below, in which the first three columns indicate the present states while the subsequent three columns indicate the subsequent states as depicted in the state diagram l. Along with this extend the table to incorporate the excitation table of the flip-flop with which we desire to design our circuit.

STEP 5 FOR T FLIP-FLOP
From the above table, we can easily derive the Boolean expression for T3, T2 and T1 from K-maps.


These K-Map represent the Boolean expressions for T Flip-flop and the final Boolean expression from them are as follows:-
T1 = Q1’ + Q2
T2 = Q1
T3 = Q2

STEP 5 FOR D FLIP-FLOP



The final Boolean expression formed by the K-Map are as follows:-
D1= Q2’
D2=  Q2’ Q1
D3= Q2’ Q3 + Q3’ Q2

STEP 6
As we are aware of the Boolean expression for the inputs of the T Flip-Flop, we can easily design the sequence generator for the desired sequence.

NOTE:- J and K when shorted together in J-K Flip-flop gives T Flip-flop.

These sequence generators, therefore, counts only the desired states which are 0à1à3à4à5à7à0 in the given sequence and we can personalize the sequence according to the need of the user. The new sequence generator can, therefore, be easily made again by using the same steps as explained above. The sequence generator can be made for N no of bits by addition of flip-flops



Similarly, from the Boolean expressions of D Flip-flop we get the following logic circuit and hence we can design the desired sequence generator.
 The generation of sequence can be seen in the form of signals with the help of timing diagrams for the given flip flops. AS we can see in the digital oscilloscope for LSB(yellow) we get the sequence generator for 011011.


INDIRECT METHOD FOR JK FLIP-FLOP


The advantage of indirect logic is that any counter (ripple or synchronous) with the correct number of states can be used to form the sequence generator. The same approach can be used for multiple outputs and multiple-output minimization can be used to reduce the logic

In this method, the given sequence is written vertically as output and make the truth table with inputs as the unique state. The no of bits present is the no of states we need in the counter. The states which are not used therefore are invalid.

The next step is to draw the K-map from the truth table and after the grouping of 1’s we obtain the Boolean expression from which we can easily draw the combinational logic for the given circuit.
For example, let us try to design a sequence generator for the bit waveform 10010 with the help of an indirect method of logic design.



DESIGN FOR JK FLIP-FLOP

STEP 1- TRUTH TABLE
The given sequence is 5 bits therefore it is written vertically in the output column. The number of flipflops needed would be 3 as it has 5 bits or any mod-5 counter. In this example, we will use a ripple counter. For all the invalid states we use don’t care.
       

STEP 3- LOGIC CIRCUIT




As can be seen in the digital oscilloscope for LSB (green) the bits of the waveform are in the sequence of 10010.  Also, we have used a NAND gate for 110 as it is the first invalid state and the output is given to the reset pin so that the flip flop can reset when the value of the input area 110.


APPLICATION
There are various applications of sequence generator such as: -
1.    Pulses can then be injected into a device that is under test and used as a stimulus or clock signal or analysed as they progress through the device

2.    Pulse train generators are used to drive devices such as switches, lasers and optical components, modulators, intensifiers as well as resistive loads

3.    They can be used to open valves, close gates and perform a variety of jobs.




CONCLUSION
The design methods like direct and indirect explained throughout the blog can be used to easily make SEQUENCE GENERATOR for any bit sequence or state.
The important steps to keep in mind are: -
1.    Number of Flip-flops required.
2.    Charting the excitation table for the required flip-flop.
3.    Plotting of 1’s on K-Map.
4.    Writing Boolean expression from K-Map.
5.    Drawing the logic diagram or combinational circuit.


Comments

  1. Amazinggg very informative! Good work guys 👍

    ReplyDelete
  2. This comment has been removed by the author.

    ReplyDelete
  3. Very Informative and good presentation

    ReplyDelete
  4. Very good presentation and nicely written !!!

    ReplyDelete
  5. This helped me with my assignments. What a PPT ��

    ReplyDelete
  6. Amazing work! Very comprehensively written.

    ReplyDelete
  7. This comment has been removed by the author.

    ReplyDelete
  8. Very informative. Keep it up. 👍🏼

    ReplyDelete
  9. Very nice extremely smart this guy used to be my classmate and now hes doing wonders, learn from him

    ReplyDelete
  10. Nicely put up as a blog , could understand the c entirely.

    ReplyDelete
  11. Please make a YouTube video on this

    ReplyDelete

Post a Comment