| • Science | • People | • Locations | • Timeline |
Sequential logic is therefore used to construct some types of computer memory, other types of delay and storage elements, and finite state machines. Most practical computer circuits are a mixture of combinatorial and sequential logic.
There are two types of finite state machine that can be built from sequential logic circuits:
Nearly all sequential logic today is 'clocked' or 'synchronous logic' logic: there is a 'clock' signal, and all internal memory (the 'internal state') changes only on a clock edge. The basic storage element in sequential logic is the flip-flop.
The main advantage of synchronous logic is its simplicity. Every operation in the circuit must be completed inside a fixed interval of time between two clock pulses, called a 'clock cycle'. As long as this condition is met (ignoring certain other details), the circuit is guaranteed to be reliable.
Synchronous logic also has two main disadvantages, as follows.
Asynchronous sequential logic is the most general kind of sequential logic, but because of its flexibility it is also the most difficult kind to design. The basic storage element in asynchronous logic is the latch. Latches can change state at any time, depending on the transitions of other signals which may themselves be produced by other latches. The complexity of asynchronous circuits tends to rise very rapidly as the number of logic gates increases, so they tend to be used mostly in smaller applications. However, computer-aided design tools are appearing that can simplify the task, and permit more complex designs.
It is possible to build mixed circuits containing synchronous flip-flops and asynchronous latches.
Electronic design