Digital Electronics: Gates, Decoders, Multiplexers
Logic gates (or simply gates) are the fundamental building blocks of digital circuitry. As their name implies, they function by “opening” or “closing” to admit or reject the flow of digital information. Gates implement electronically simple logical operations on boolean (Bool’s algebra) variables, i.e. variables that can have only one of two states (0/1, low/high, false/true). From an electrical point of view and for the TTL (transistor-transistor-logic) family of digital electronics, any voltage in the range 0-0,7 V and in the range 2,5-5 V, represent logic states 0 and 1, respectively. In the following figure the accepted electronic symbols for different gates are shown, along with their corresponding “truth tables” and their symbolic logical expressions. All variables (X, A, B, …) are booleans.
The most typical logical operations are implemented by AND and OR gates. The logical expression for the AND operation is “if A is true AND B is true then X is true”, and for the OR operation is “if A is true OR B is true then X is true”. The inverted logic AND and OR gates are commonly known as NAND (Not AND) and NOR (Not OR) gates. A XOR (Exclusive-OR) gate implements the logical expression “if A is different than B then X is true”, hence sometimes this gate is called “inequality comparator”.
The buffer and the inverter are not gates but their use is closely associated with them. A buffer doesn’t change the logic state of its input. It is only occasionally used for increasing the fan-out, i.e. the capability of the output of one gate to drive a number of other gates. The inverter is much more important and it is used for inverting a logic state, i.e. for performing the logical operation of negation (NOT). The logical expressions for a buffer and an inverter are “X is A” and “X is NOT A”, respectively. AND, OR, NAND and NOR gates can have more than 2 inputs. In this case their truth tables are extended to all inputs combinations and their corresponding expressions as well. For example, the logical expression for a 4-input AND is “if A is true AND B is true AND C is true AND D is true then X is true”. The corresponding expression for a 3-input NOR gate is “if A is true OR B is true OR C is true then X is false”
Decoders are circuits with two or more inputs and one or more outputs, resulting by combining various types of gates. Their basic function is to accept a binary word (code) as an input and create a different binary word as an output. A typical decoder is the so-called full adder (3 inputs-2 outputs) implementing the addition of two one-digit numbers (Ai, Bi) taking into consideration the status of any previous carry (Ci-1), resulting into the sum (Si), and generating a new carry (Ci). The addition of two 1-digits numbers and the corresponding truth table of full adder are shown below:
N full adders can be cascaded to form a unit for the addition of two N-digits binary numbers. Decoders with any type of truth table can be constructed by using simple or complicated combinations of gates. Implementation of Bool’s algebra rules generally simplifies the overall design. Simple and useful decoders are the so-called “2-to-4” and “3-to-8” decoders.
Generally, multiplexers are circuits behaving like a controlled rotary switch, i.e. any one of a number of inputs may be selected as output. In digital electronics, a multiplexer is a combination of logic gates resulting into circuits with two or more inputs (data inputs) and one output. The selection of the channel to be read into the output is controlled by supplying a specific digital word to a different set of inputs (select inputs). A typical 4 input channels (D3-D0) digital multiplexer, and its corresponding truth table is shown below:
The active input channel is selected by supplying the appropriate code to select inputs (C1, C0).
With this easy to use applet you can train yourself with some simple simulated circuits of digital gates. You can select one out of five (sets of) circuits by clicking on the corresponding radiobutton.
Circuit “Gates 1” contains all 2-input gates including a buffer and an inverter.
Circuit “Gates 2” contains some typical examples of gates with more than 2 inputs.
Circuit “Full adder” contains a combination of gates implementing the function of a full adder. In the same circuit a 4-bit adder is implemented by cascading 4 full adder circuits.
Circuit “Decoders” contains a 2-to-4 and a 3-to-8 decoder.
Circuit “Multiplexer” contains a 4-input line multiplexer.
With all circuits you can change the logic state of any input by clicking on the corresponding small buttons, of which, each one is acting as logic state generator. Observe how the logic state of the output(s) and of some “test points” of their internal circuitry is affected by these changes and verify the validity of the truth tables of individual gates. It is of interest to note how a 2-input AND, OR, NAND or NOR gate can control the “flow” of digital data supplied to one of their inputs, by applying different logic states to the other input (control input). Observe also how a XOR gate can act as a buffer or an inverter by applying 0 or 1 to one of its inputs.
In case the applet is not shown click here.
For a full list of all applets click here.
Page maintained by Prof. C. E. Efstathiou