EJERCICIO 30 (Examen del Plan Antiguo Electrónica II Junio 2007/8 1 ª Semana)
Implementar un circuito con 5 variables de entrada con decodificadores de 8 entradas que realice la siguiente función:
S = f(A, B, C, D, E) = m1+m2+m3+m7+m12+m31
SOLUCIÓN:
La función está definida com suma de productos canónicos (minterms). Realizamos la tabla de verdad asignando como entradas E, D, C, B Y A; y salida un uno en las combinaciones de los minterms que aparecen en la expresión de la función:
ENTRADAS | SALIDA | |||||
---|---|---|---|---|---|---|
E |
D |
C |
B |
A |
S |
minterms |
0 |
0 |
0 |
0 |
0 |
0 |
m0 |
0 |
0 |
0 |
0 |
1 |
1 |
m1 |
0 |
0 |
0 |
1 |
0 |
1 |
m2 |
0 |
0 |
0 |
1 |
1 |
1 |
m3 |
0 |
0 |
1 |
0 |
0 |
0 |
m4 |
0 |
0 |
1 |
0 |
1 |
0 |
m5 |
0 |
0 |
1 |
1 |
0 |
0 |
m6 |
0 |
0 |
1 |
1 |
1 |
1 |
m7 |
0 |
1 |
0 |
0 |
0 |
0 |
m8 |
0 |
1 |
0 |
0 |
1 |
0 |
m9 |
0 |
1 |
0 |
1 |
0 |
0 |
m10 |
0 |
1 |
0 |
1 |
1 |
0 |
m11 |
0 |
1 |
1 |
0 |
0 |
1 |
m12 |
0 |
1 |
1 |
0 |
1 |
0 |
m13 |
0 |
1 |
1 |
1 |
0 |
0 |
m14 |
0 |
1 |
1 |
1 |
1 |
0 |
m15 |
1 |
0 |
0 |
0 |
0 |
0 |
m16 |
1 |
0 |
0 |
0 |
1 |
0 |
m17 |
1 |
0 |
0 |
1 |
0 |
0 |
m18 |
1 |
0 |
0 |
1 |
1 |
0 |
m19 |
1 |
0 |
1 |
0 |
0 |
0 |
m20 |
1 |
0 |
1 |
0 |
1 |
0 |
m21 |
1 |
0 |
1 |
1 |
0 |
0 |
m22 |
1 |
0 |
1 |
1 |
1 |
0 |
m23 |
1 |
1 |
0 |
0 |
0 |
0 |
m24 |
1 |
1 |
0 |
0 |
1 |
0 |
m25 |
1 |
1 |
0 |
1 |
0 |
0 |
m26 |
1 |
1 |
0 |
1 |
1 |
0 |
m27 |
1 |
1 |
1 |
0 |
0 |
0 |
m28 |
1 |
1 |
1 |
0 |
1 |
0 |
m29 |
1 |
1 |
1 |
1 |
0 |
0 |
m30 |
1 |
1 |
1 |
1 |
1 |
1 |
m31 |
Realizamos el mapa de Karnaugh para su simplificación: en una tabla colocamos las combinaciones de las entradas E y D en una columna y las de CBA en la fila. Las combinaciones de E y D no pueden cambiar de estado lógico las dos a la vez en dos filas consecutivas del mapa y tampoco las de C, B y A..
ED | CBA | 000 | 001 | 011 | 010 | 110 | 111 | 101 | 100 |
---|---|---|---|---|---|---|---|---|---|
00 |
m0 |
m1 |
m3 |
m2 |
m6 |
m7 |
m5 |
m4 |
|
01 |
m8 |
m9 |
m11 |
m10 |
m14 |
m15 |
m13 |
m12 |
|
11 | m24 |
m25 |
m27 |
m26 |
m30 |
m31 |
m29 |
m28 |
|
10 | m16 |
m17 |
m19 |
m18 |
m22 |
m23 |
m21 |
m20 |
Se colocan los valores de S de la tabla de verdad en las celdas correspondientes del mapa de Karnaugh. El mapa de Karnaugh no es más que la Tabla de Verdad dispuesta de otra manera.
Simplificación: seleccionamos los "1"s del mapa de tal manera que los asociemos adyacentes en potencias de 2 ( 1, 2, 4, 8, etc), con las asociaciones más grandes posibles y la menor cantidad de ellas, sin dejar ningún "1" sin seleccionar. Los "1"s pueden pertenecer a varias asociaciones y las dos columnas de los extremos son adyacentes entre sí, así como aquellas en las que sólo cambia un dígito (columnas de CBA: 000-010; 001-101; 011-111; 110-100).
En los dos "1"s horizontales de la parte superior izquierda del mapa se elimina la variable B, ya que en esas dos combinaciones cambia de "0" a "1".
En los dos "1"s horizontales del medio superiores del mapa se elimina la variable A, ya que en esas dos combinaciones cambia de "0" a "1".
En el "1" solitario de la parte superior derecha del mapa no hay simplificación y se escribe el término tal cual:
En los dos "1"s horizontales separados por dos columnas se elimina la variable C, ya que en esas dos combinaciones cambia de "0" a "1".
En el "1" solitario de la parte media derecha del mapa no hay simplificación y se escribe el término tal cual: EDCBA |
Por tanto la salida es:
Para implementar esta función con decodificadores de 4 entradas, recordamos que un decodificador de 4 entradas tiene 16 salidas, de las cuales sólo una está a nivel alto "1" , aquella que corresponde al número decimal de la combinación en binario de las entradas. Por ejemplo, para D=0, C=0, B=0, A=0, se activa Q0; para D=0, C=0, B=0, A=1, se activa Q1; para D=0, C=0, B=1, A=0, se activa Q2; para D=0, C=0, B=1, A=1, se activa Q3 y así hasta Q15. Veáse la animación:
Si ponemos un decodificador con las entradas E, D, C y A, podemos hacer el término que corresponde a Q1.
Si ponemos un decodificador con las entradas E, D, C y B, podemos hacer los términos que corresponde a Q1.
Nos faltarían los términos:
, del decodificador con las entradas E, D, C y A se activaría la salida Q6 y del decodificador con las entradas E, D, C y B se activaría la salida Q6. Al tener que darse esa combinación de las 5 entradas podemos meter los términos Q6 (del primer decodificador) y Q6 (del segundo decodificador) a una puerta AND y obtendríamos dicho término.
EDCBA, del decodificador con las entradas E, D, C y A se activaría la salida Q15 y del decodificador con las entradas E, D, C y B se activaría la salida Q15. Al tener que darse esa combinación de las 5 entradas podemos meter los términos Q15 (del primer decodificador) y Q15 (del segundo decodificador) a una puerta AND y obtendríamos dicho término.
, del decodificador con las entradas E, D, C y A se activaría la salida Q1 y Q3, y del decodificador con las entradas E, D, C y B se activaría la salida Q1 y Q3. Como las salidas Q1 de cada decodificador ya están representadas (
y
), podemos meter los términos Q3 (
, del primer decodificador) y Q3 (
, del segundo decodificador) a una puerta AND y obtendríamos dicho término.
Por tanto, el circuito quedaría de la siguiente manera: