# Difference between Synchronous and Asynchronous Sequential Circuits

Sequential Circuits are those which have the notion of an *internal state*. This notion of *Internal State* is necessary because in sequential circuits, the output of the circuit is function of both the present input as well as the past inputs. The Internal State of a sequential circuit is nothing but the reflection of the past inputs to the circuit. Now the Internal State of a Sequential Circuit is represented by a number of *State Variables*. Each state variable can be in 1 of 2 possible states. This is because State Variables are physically implemented with the help of Flip-Flops, and each Flip-Flop can only represent 2 possible states. Therefore, if we have ‘N’ Flip-Flops, we can represent a maximum of 2^{N} states.

Max. No. of States with 'N' Flip-Flops =

This means that a Sequential Circuit having ‘N’ Flip-Flops can be in at most Internal States.

Now let’s illustrate the difference between that of Synchronous and Asynchronous Sequential Circuits with the example of a Synchronous and Asynchronous 2-bit binary UP Counter using T-Flip-Flops.

**Figure –**2-bit Binary Asynchronous UP Counter

**Figure –**2-bit Binary Synchronous UP Counter

In both the above circuits are the State Variables denoting the *Internal State* of each of the above circuits. Since there are 2 state variable the above sequential circuits can be in 4 possible states, and the function of a counter is to cycle through these 4 states in a particular order.

Now the difference between Synchronous and Asynchronous Circuits is in how the circuit goes for one Internal State to the Next Internal State. In a Synchronous Sequential Circuit all the State Variables representing the internal state of the circuit change their state simulteneously with a given input clock signal to achieve the next state.

On the other hand in case of an Asynchronous Circuit all the State Variables may not change their state simulteneously to achieve the next steady internal state. In other words the state variables are not synchronized with any universal clock signal.

**Comparisons –**

Synchronous Circuit | Asynchronous Circuit |
---|---|

All the State Variable changes are synchronized with a universal clock signal. |
The State Variables are not synchronized to change simulteneously and may change at anytime irrespective of each other to achieve the next Steady Internal State |

Since all the Internal State changes are in the strict control of a master clock source they are less prone to failure or to a race condition and hence are more reliable. | Since there is no such universal clock source, the internal state changes as soon as any of the inputs change and hence are more prone to a race condition. |

Timings of the internal state changes are in our control. | The changes in the internal state of an asynchronous circuit are not in our control. |

## Recommended Posts:

- Synchronous Sequential Circuits | Digital Logic
- Digital Logic | Asynchronous Sequential Circuits
- Differences between Synchronous and Asynchronous Counter
- Asynchronous and Synchronous Callbacks in Java
- Digital Logic | Introduction of Sequential Circuits
- Difference between combinational and sequential circuit
- Combinational circuits using Decoder
- Differences between Virtual Circuits & Datagram Networks
- Computer Network | Asynchronous Transfer Mode (ATM)
- Mathematics | Walks, Trails, Paths, Cycles and Circuits in Graph
- Indexed Sequential Search
- RTL (Register Transfer Level) design vs Sequential logic design
- Web 1.0, Web 2.0 and Web 3.0 with their difference
- What is the difference between GUI and CUI?
- Difference between ++*p, *p++ and *++p

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.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.