|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
THE 3 TO 8 DECODER
|
TRUTH TABLE | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Input | Output | ||||||||||
A2 | A1 | A0 | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | |
0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | |
0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | |
0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | |
1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | |
1 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | |
1 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | |
1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Such a public announcement phone (or PA system) is an example of a 3-to-8 decoder. Since the phone has three buttons each of which can either be in one of two possible states — pressed (=1) or not pressed (= 0) — then the phone can dial eight possible different numbers (23 = 2*2*2 = 8) as shown in Table 1.
A | B | C | MALL AREA | |
---|---|---|---|---|
0 | 0 | 0 | Security lunch room (D0) | |
0 | 0 | 1 | Men's Room (D1) | 0 | 1 | 0 | Footwear Stores (D2) |
0 | 1 | 1 | Jewelry Dealers (D3) | 1 | 0 | 0 | Appliance Stores (D4) |
1 | 0 | 1 | Lady's Room (D5) | 1 | 1 | 0 | Food Court (D6) |
1 | 1 | 1 | Bookstores (D7) |
Table 1
Designing such a phone system is straightforward. We just need a switching circuit that energizes
one of the eight output lines based on the combination of the input buttons.
Because each line in the truth table corresponds to a specific output, and because each line in the
table is unique, then we have the eight unique switching expressions that we need:
D0 | = | ABC | ||
D1 | = | ABC | ||
D2 | = | ABC | ||
D3 | = | ABC | ||
D4 | = | ABC | ||
D5 | = | ABC | ||
D6 | = | ABC | ||
D7 | = | ABC |
There is always more than one way to implement a switching circuit. And in reality which way you choose will likely depend on what chips you have available. For our part we observe that each of the functions can be implemented using NOT gates and AND gates. Therefore, building for one output at a time, we will implement our circuit.
For D0
Adding D1 to D0
We build for one output at a time to allow ourselves to catch and correct errors early. We recommend that you follow the same methodology in your design projects.
Adding D2 to Circuit 2
Adding D3 to Circuit 3
Adding D4 to Circuit 4
Adding D5 to Circuit 5
Adding D6 to Circuit 6
Adding D7 to Circuit 7
There will be times when you may need to decode signals in your own designs. Although pre–packaged decoders, such as this 3–to–8 decoder, may be sufficient for your need; there will be cases when they will be too expensive for one reason or another. Therefore, it is important for you to realize that in most cases decoders are just AND gates; which means if you don’t have a decoder, you can use AND gates to accomplish your end. For an illustration, see the Johnson counter.