LABORATORIO: SISTEMAS DIGITALES – EXP – 01 CIRCUITOS COMBINACIONALES
I.
OBJETIVO: Implementar más adelante un decodificador de BCD a 7 segmentos en donde aparezca cada letra del nombre del alumno.
II.
FUNDAMENTO TEORICO:
Decodificadores Un decodificador es un circuito integrado por el que se introduce un número y se activa una y sólo una de las salidas, permaneciendo el resto desactivadas. Y como siempre, lo mejor es verlo con un ejemplo sencillo. Imaginemos que queremos realizar un circuito de control para un semáforo. El semáforo puede estar verde, amarillo, rojo o averiado. En el caso de estar averiado, se activará una luz interna “azul”, para que el técnico sepa que lo tiene que reparar. A cada una de estas luces les vamos a asociar un número. Así el rojo será el 0, el amarillo el 1, el verde el 2 y el azul (averiado) el 3 (Ver figura 6.2).
Para controlar este semáforo podemos hacer un circuito que tenga 4 salidas, una para una de las luces. Cuando una de estas salidas esté a ’1’, la luz correspondiente estará encendida. Sin
embargo, ocurre que NO PUEDE HABER DOS O MAS LUCES ENCENDIDAS A LA VEZ. Por ejemplo, no puede estar la luz roja y la verde encendidas a la vez!!!!.
Decodificador de 2 a 4 Comenzaremos por el decodificador más sencillo, uno que tiene 2 entradas y 4 salidas, como se muestra en la figura 6.4. La tabla de verdad es la siguiente:
Y las ecuaciones las podemos obtener desarrollando por la primera forma canónica. Puesto que por cada función de salida sólo hay un ’1’, no se podrá simplificar (No hace falta que hagamos Karnaugh):
Decodificador de 3 a 8 Tiene 3 entradas y 8 salidas, como se muestra en la figura 6.5. La tabla de verdad abreviada es la siguiente:
III.
PROCEDIMIENTO:
1. A un circuito combinacional se le aplica las ondas mostradas en sus correspondientes entradas A, B, C obteniéndose las ondas de salida X, Y. Diseñar e implementar un circuito que permita realizar dicha tarea usando solamente puertas NAND’s de dos entradas c/u.
Primero debemos definir nuestra tabla de verdad, para eso tendremos que representar el tren de señales de las entradas y salidas, mediante ceros (0) y unos (1):
Ahora podemos crear nuestra tabla de verdad, la cual quedará de la siguiente manera:
Una vez obtenida la tabla de verdad, debemos generar la función booleana para cada salida. La función que se generará para cada salida, será en suma de productos o Mintérminos. Por lo tanto debemos seleccionar en las salidas a todos los unos (1).
Ahora tenemos que obtener la función booleana, la cual tendrá que ser la más simplificada posible, para ello usaremos las tablas de Karnaugh, que es un método de simplificación de circuitos lógicos.
Para X:
Luego agrupamos la mayor cantidad de unos (1) que sean simétricamente iguales. En caso de no haber grupos de unos (1), se tendrá que tomar a cada uno (1) en forma independiente.
Nuestra función lógica será: Fx = ABC + ABC + ABC + ABC Ahora diseñamos el circuito correspondiente a esta función booleana:
Para Y:
Nuestra función lógica será: Fy = BC + AB+ AC Ahora diseñamos el circuito correspondiente a esta función booleana:
Una vez que tenemos los dos circuitos simplificados, tenemos que unirlos en un solo circuito, usando siempre el menor número de puertas lógicas. Luego debemos convertir el circuito, solo con puertas NAND’S de dos entradas cada una. El circuito final quedaría de la siguiente manera:
NOTA: Cada salida del circuito, puede ser comprobado con la tabla de verdad y el Software WorkBench. A=0 B=0 C=0 X=0 Y=0
A=0 B=0 C=1 X=1 Y=1
A=0 B=1 C=0 X=1 Y=1
A=0 B=1 C=1 X=0 Y=1
A=1 B=0 C=0 X=1 Y=0
A=1 B=0 C=1 X=0 Y=0
A=1 B=1
C=0 X=0 Y=0
A=1 B=1 C=1 X=1 Y=1
2. Diseñar e implementar un decodificador de BCD a 7 segmentos para que nos muestre lo siguiente:
En resumen nos piden que cuando aparezca la letra “u” en el primer display, deberá aparecer el número cero (0) en el segundo display. Cuando aparezca la letra “n”, deberá aparecer el número uno (1), y así sucesivamente.
Nuestro display es de 7 entradas, y tenemos que tener dos display’s, uno para las letras (display 1) y otro para los números (display 2). Primero asignamos una letra para cada entrada de cada display:
Para las letras: a f
g
b c
e d
a b c d e g f
Para los números a’ f’
g’ b’
e’
c’ d’
Para las letras: Tenemos que determinar las salidas que tomaran el valor de uno (1) para cada LETRA de la frase: UNS-EAPISI Lógicamente las letras no aparecerán originalmente como están en la frase, sino que habrá algunas restricciones. Las letras se tendrán que representar obligatoriamente de la siguiente manera:
U:
N:
S:
-:
E:
A:
P:
I:
S:
I: Consideramos la “U” como mayúscula (U), porque la minúscula se usa para la letra “V”. La “N” obligatoriamente será minúscula (n), ya que la mayúscula no se puede representar en este display, la “S”, se representará como el número “5”.
Ahora como nosotros ya tenemos las letras(a, b, c, d,…) asignadas para cada línea del display, simplemente ubicamos que letras están activadas y que letras no, para poder generar nuestra tabla de verdad. Ejemplo:
U:
f
b
e
c d
Para “U” las letras activadas son: b, c, d, e, f estas letras toman el valor de (1) y las restantes toman el valor de (0). Y así se tendrá que hacer para todos los caracteres que conforman la frase, incluyendo el guión (), el cual tendrá activada solo la letra “g”. Para los números: Por otro lado, también tenemos que determinar la salida de los números: 0123456789. Para este caso no existirán restricciones, y se representarán de la siguiente manera:
0:
1:
2:
3:
4:
5:
6:
7:
8:
9:
Al igual que la frase, para este caso, también tenemos letras (a’, b’, c’,…..) asignadas para cada línea del display 2, lo que nos queda hacer es ubicar las letras que se activan para cada número. Entonces, tenemos registrado 14 salidas en total (7 para el display 1 y 7 para el display 2), las entradas son 4 (A, B, C, D). Con esta información podemos generar nuestra tabla de verdad:
SALIDA LETRAS
SALIDA NÚMEROS
Así por ejemplo: Para la combinación: A=0 B=0 C=0 D=0 La salida en LETRAS tendrá que ser la letra “U”, y la salida en números será cero (0):
Entonces, nos queda generar la función booleana para cada salida. Para esta parte utilizaremos las tablas de Karnaugh, para poder encontrar la función booleana más simplificada:
SALIDA LETRAS:
a:
Esta es la tabla de Karnaugh para la salida “a”, pero como a partir del número 10, es decir, a partir de la combinación 1010, todos son estados indiferentes, que quiere decir que no importa el valor que tomen ya que no influyen en las salidas desde la combinación 0000 hasta la combinación 1001. Entonces si nosotros queremos que nuestro circuito quede lo más simplificado posible, tenemos que asociarlos a nuestra conveniencia, es decir, que aquellas x’s las consideremos como unos (1) siempre y cuando nos ayuden a simplificar el circuito, ejemplo:
Ahora podremos agruparlos de esta manera
La función booleana quedará de la siguiente manera:
Fa = BD + BC + ACD + ACD
b:
Fb = BCD + BCD + ABCD
c:
Fc = BD + ACD + BCD
d:
Fd = BD + ACD
e:
Fe = B + AC + BCD
f:
Ff = B + A + BD
g:
Fg = BD + ABD + BCD + ACD + ACD
SALIDA NÚMEROS: De igual forma se hará para la salida de números. El circuito final es el siguiente:
Se comprobará su salida con el software WorkBench:
Por ejemplo para la combinación 0000, las salidas correspondientes son:
Para la combinación 0001, sus salidas serán:
Y así sucesivamente para las demás salidas
3. La iluminación de una discoteca está constituida por la combinación de luces de tres colores (Rojo, Azul y Verde) y por un dispositivo de rayo láser. El sistema además, tiene una llave general “E” que actúa del siguiente modo:
Si E=1 el sistema funciona Si E=0 el sistema está apagado Las luces están controladas por cuatro conmutadores ABCD de forma que:
La luz Roja está encendida siempre que está pulsado el conmutador A o si esta pulsado B y no lo está C. La luz Azul enciende cuando B no está conectado o cuando estando D no lo está A. La luz verde enciende si no está pulsado C, o si no lo está A y lo está B, o si está D. El rayo láser se pone en funcionamiento cuando hay un número impar de luces encendidas. Se pide: a) La tabla de verdad que indique el funcionamiento del sistema. b) Implementar la función verde con NAND’s de 2 entradas. c) Simplificar e implementarla función roja usando mapa de Karnaugh.
SOLUCION:
a) La tabla de verdad que indique el funcionamiento del sistema:
b) Implementar la función verde con NAND’s de 2 entradas:
c) Simplificar e implementarla función roja usando mapa de Karnaugh.
IV.
OBSERVACIONES: Tenemos que tener cuidado en la simplificación por Karnaugh, ya que si te equivocas en algo, tienes que verificar todo desde el principio, y a veces resulta engorroso.
En la implementación con WorkBench, tienes que observar bien donde haces las conexiones, porque puedes conectarlos en donde no es, y vas a tener que verificar desde el principio.
V.
BIBLIOGRAFIA:
Licencia GFDL. http://www.gnu.org/copyleft/fdl.es.html Web de la UPSAM. http://www.upsam.com/