Sistemas Digitales y de Comunicaciones – Año 2003 Trabajo Práctico Nº4: Funciones de la Lógica Combinacional Ejercicio Nº 1: Realizar la tabla de verdad de un bloque sumador completo de un bit e implementar el circuito. Simular el circuito obtenido en el programa SPICE. Ejercicio Nº 2: Sintetizar por medio de bloques sumadores completos, un sumador paralelo de 4 bits. Obtener su tabla de verdad, y encontrar la suma y el acarreo de salida correspondientes a los siguientes números de 4 bits. a) A4A3A2A1 = 1100 b) B4B3B2B1 = 1100 Ejercicio Nº 3: Un multiplexor (MUX) es un dispositivo que permite dirigir la información digital procedente de varias fuentes a una única línea, para ser transmitida a través de dicha línea a un destino común. El multiplexor básico posee varias líneas de entrada de datos y una única línea de salida. El símbolo lógico de un multiplexor de 4 entradas se muestra en la figura. Un código binario de dos bits en las entradas de selección de datos (S) va a permitir que los datos de la entrada seleccionada pasen a la salida de datos. El resumen de funcionamiento se da en la tabla siguiente. Entradas de Selección de datos S1 S0 0 0 0 1 1 0 1 1 Sistemas Digitales y de Comunicaciones Entrada Seleccionada D0 D1 D2 D3 Salida de datos Y D 0 S 1S 0 Y D1S 1S 0 Y D 2 S 1S 0 Y D 3 S 1S 0 1 La expresión total para los datos de salida es: Y D0 S 1S 0 D1S 1S 0 D2 S 1S 0 D3S 1S 0 Una aplicación muy útil de los multiplexores de datos consiste en la generación de funciones lógicas combinacionales en forma de suma de productos. Cuando se emplea de esta manera, este dispositivo puede reemplazar y reducir considerablemente el número de compuertas lógicas discretas. a) Utilizar un multiplexor de 8 entradas de datos y 3 entradas de selección de datos para implementar las siguientes expresiones. a.1) Y S 2 S 1S 0 S 2 S 1S 0 S 2S 1S 0 a.2) Y S 2 S 1S 0 S 2 S 1S 0 S 2 S 1S 0 b) Implementar ambas funciones con compuertas discretas y verificar la utilidad del multiplexor. El circuito integrado 74LS151 es un ejemplo de multiplexor integrado, con ocho entradas de datos y tres líneas de entrada de selección de datos. Ejercicio Nº 4: La función básica de un decodificador es detectar la presencia de una determinada combinación de bits (código) en sus entradas y señalar la presencia de este código mediante un cierto nivel de salida. Un ejemplo de aplicación es el decodificador BCD a 7 segmentos. Este tipo de decodificador acepta código BCD en sus entradas y proporciona salidas capaces de excitar un display de 7 segmentos para indicar un dígito decimal. En la figura se muestra un display común formado por siete elementos o segmentos. Excitando determinadas combinaciones de estos segmentos se pueden obtener cada uno de los diez dígitos decimales. Para generar un 1 se excitan los segmentos b y c como se muestra en la figura. Cada segmento se utiliza para varios dígitos decimales, pero ninguno de ellos se emplea para representar los diez dígitos, por lo tanto cada segmento tiene que activarse mediante su propio circuito de decodificación, que detecta la aparición de cualquier número en el que haya que usar ese segmento. Los segmentos que se deben activar para cada uno de los dígitos se muestran en la tabla. Sistemas Digitales y de Comunicaciones 2 Dígito 0 1 2 3 4 5 6 7 8 9 Segmentos activados a, b, c, d, e, f b, c a, b, d, e, g a, b, c, d, g b, c, f, g a, c, d, f, g a, c, d, e, f, g a, b, c a, b, c, d, e, f, g a, b, c, d, f, g La lógica de decodificación de segmentos requiere cuatro entradas en código decimal binario (BCD) y siete salidas, una para cada segmento del display, como se indica en el diagrama de bloques de la figura. La tabla de verdad de salida múltiple es: Dígito Decimal D 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 Entradas C B 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 Sistemas Digitales y de Comunicaciones A a Salidas de segmentos b c d e f 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 0 1 1 0 1 1 1 1 1 X X X X X X 1 1 1 1 1 0 0 1 1 1 X X X X X X 1 1 0 1 1 1 1 1 1 1 X X X X X X 1 0 1 1 0 1 1 0 1 1 X X X X X X 1 0 1 0 0 0 1 0 1 0 X X X X X X 1 0 0 0 1 1 1 0 1 1 X X X X X X g 0 0 1 1 1 1 1 0 1 1 X X X X X X 3 Como el código BCD no incluye los valores binarios 1010, 1011, 1100, 1101, 1110 y 1111, estas combinaciones no van nunca a aparecer en las entradas y pueden, por lo tanto, tratarse como condiciones indiferentes (X), como se indica en la tabla de verdad. A partir de la tabla de verdad se puede escribir para cada segmento una expresión suma de productos. Por ejemplo la suma de productos estándar para el segmento a es: a DC B A DCB A DCBA DC BA DCB A DCBA DC B A DC BA La implementación de la suma de productos estándar de la lógica del segmento a requiere un circuito AND-OR formado por 8 compuertas AND de 4 entradas y 1 compuerta OR de 8 entradas. Puede obtenerse mediante el diagrama de Karnaugh una expresión suma de productos mínima para el segmento a. Los pasos a seguir son: 1) Los 1s de la tabla se pasan directamente al mapa de Karnaugh. 2) Se introducen en el mapa todas las condiciones indiferentes (X). 3) Se agrupan los 1s y las condiciones indiferentes para conseguir los grupos más grandes posibles. El diagrama de Karnaugh para el segmento a es: La expresión mínima a partir del diagrama de Karnaugh para la lógica del segmento a es: a D B CA C A Ejercitación: a) Determinar la lógica mínima para los segmentos b, c, d, e, f y g. b) Dibujar un diagrama lógico para el decodificador de 7 segmentos, combinando todos los circuitos lógicos de los segmentos individuales y eliminando las puertas y los inversores duplicados. El circuito integrado 74LS47 es un ejemplo de decodificador BCD a 7 segmentos. Sistemas Digitales y de Comunicaciones 4