|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Encoder |
|
|
|
|
|
|
|
|
Encoder is reverse of
decoder |
|
|
|
|
8-3 encoder |
|
|
|
|
|
8 inputs, exactly one has
value 1 |
|
|
|
|
|
3 output bits,
representing which input was equal to 1 (binary representation of input) |
|
|
Example: |
input: |
x5 = 1 |
output: |
z2z1z0 = 101 |
|
|
|
|
|
|
|
Simplified truth table: |
|
|
|
|
|
Input
== 1 |
z2 |
z1 |
z0 |
|
|
|
|
|
|
x0 |
0 |
0 |
0 |
|
Minterms are rather large |
|
|
|
|
x1 |
0 |
0 |
1 |
|
|
(from full truth table): |
|
|
x2 |
0 |
1 |
0 |
|
z2 = \x0\x1\x2\x3x4\x5\x6\x7
+ |
|
|
x3 |
0 |
1 |
1 |
|
|
\x0\x1\x2\x3\x4x5\x6\x7
+ |
|
|
x4 |
1 |
0 |
0 |
|
|
\x0\x1\x2\x3\x4\x5x6\x7
+ |
|
|
x5 |
1 |
0 |
1 |
|
|
\x0\x1\x2\x3\x4\x5\x6x7 |
|
|
x6 |
1 |
1 |
0 |
|
|
x7 |
1 |
1 |
1 |
|
|
|
However, we can take
advantage of the fact that exactly one input is 1: |
|
|
|
z2 = x4 + x5 + x6 + x7 |
|
Example:
|
x5
= 1 |
|
|
|
z1 = x2 + x3 + x6 + x7 |
|
z2z1z0 = 101 |
|
|
|
z0 = x1 + x3 + x5 + x7 |
|
(UB for 5) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|