Combinational vs Sequential Logic
Digital electronics is the basis of modern technological advancements. Digital devices are created using the principles of Boolean logic. Boolean logic, based on the nature of the outputs, is separated into combinational logic and sequential logic. Each type of logic can be used to implement different digital elements used today.
In combinational logic, the output is a function of the present inputs only. The output is independent of the previous outputs; therefore it is sometimes, called time independent logic.
Combinational logic is used to perform Boolean operation on binary input signals and binary data. The arithmetic and logic unit of a CPU performs combinational operations on the data string. Half adders, full adders, multiplexers, demultiplexers, decoders and encoders are also built based on the combinational logic.
Sequential logic is the form of Boolean logic where the output is a function of both present inputs and past outputs. In most cases, the output signal is fed back into the circuit as a new input. Sequential logic is used to design and build finite state machines. The fundamental implementation of sequential logic is flip-flops. Flip-flops are designed to retain the state of the system, therefore, considered as a basic memory element.
Sequential logic is further divided into synchronous logic and asynchronous logic. In synchronous logic, the logic operation is repeated cyclically through an oscillating signal supplied to every flip-flop in the circuit. This signal, often called the clock pulse, activates the logic circuit for a single operation.
The main advantage of synchronous logic is its simplicity. The main disadvantages of synchronous logic are the limited clock speed available and the requirement of a clock signal for every flip-flop. As a result, the speeds of the synchronous circuits are limited and energy wastage occurs when distributing the signal to every flip-flop element.
In asynchronous logic, all the flip flops are not clocked at the same cycle. Rather, each individual flip-flop is clocked through the main clock signal or by an output of another flip-flop. Therefore, the speeds of the asynchronous logic circuits are much higher than the synchronous circuits. Even though asynchronous logic is efficient, they are difficult to design and implement and pose problems if two signals overlap.
What is the difference between Combinational and Sequential Logic?
• Combinational logic uses only the present inputs to determine the output while sequential logic uses both present inputs as well as previous outputs to determine the current input.
• Combinational logic is used to implement basic Boolean operations while sequential logic is used to create memory elements.
• Sequential logic uses the feedbacks from the output to inputs while combinational logic does not require feedbacks.