electronica

download electronica

If you can't read please download the document

description

docyud

Transcript of electronica

Diseo Digital para Ingeniera 1 DISEO DIGITAL PARA INGENIERIA Autor: Rubn Daro Crdenas Espinosa Matrcula Profesional CL20633345 [email protected] om Candidato a Doctor en Ciencias con especialidad en Ingeniera Elctrica Master of Sc iences with major in Enginnering Electrical de Atlantic International University Especialista en Gerencia en Finanzas, Ingeniero Electrnico, Tecnlogo Profesional en Electrnica y Automatizacin Industrial de Universidad Autnoma de Manizales Catedrt ico del Programa Ingeniera de Sistemas Universidad Minuto de Dios CERES Chinchin G erente de Proyectos Programa Paz y Competitividad y Profesor Asistente del Depar tamento de Electrnica y Automatizacin de la Universidad Autnoma de Manizales Coordi nador Ingenieras, Catedrtico programas de posgrado y pregrado Universidad Antonio Nario Sede Manizales Catedrtico Tecnologa en Electrnica Universidad de Caldas Catedrt ico UNITECNICA (Ingecmputo) Manizales Manizales, Departamento de Caldas Repblica de Colombia Febrero de 2009Diseo Digital para Ingeniera 2 Objetivo Terminal del Curso Analizar y aplicar los conceptos bsicos y tcnicos de diseo en sistemas lgicos combinacionales y secuenciale s programables. Implementar circuitos que controlen secuencias y procesos automti cos. Disear sistemas digitales para la manipulacin y procesamiento de datos. Breve Descripcin El desarrollo de la electrnica, se ha constituido en uno de los ms gran des sucesos de la poca moderna y ha sido fundamental para los grandes adelantos t ecnolgicos, en casi todos los campos del saber. Las herramientas y conocimientos de electrnica digital son necesarios para el anlisis, diseo e implementacin de circu itos y sistemas digitales, en especial con el almacenamiento, transformacin y com unicacin de la informacin en forma digital.Diseo Digital para Ingeniera 3 TABLA DE CONTENIDO Presentacin 1. Sistemas Numricos 1.1. Sistema Decimal 1.2. Sistema Binario 1.3. Si stema Hexadecimal 1.4. Sistema Octal 1.5. Conversiones de un Sistema a Otro 1.6. Representacin de Nmeros Enteros y de Punto Flotante 1.7. Operaciones Aritmticas en Binario 2. Principios de Diseo de Lgica Combinacional 2.1. Qu es Electrnica Digital? 2.2. lgebra de Boole a. Operaciones Booleanas y Compuertas Bsicas b. Compuertas Lg icas Combinadas c. Circuitos Integrados y Circuito de Prueba d. Propiedades de l as Operaciones Booleanas e. Teoremas Bolanos f. Teoremas de DeMorgan 2.3. Simplif icacin de Expresiones Lgicas 2.4. Implementacin de Funciones Lgicas mediante Compuer tas 2.5. Sntesis de Diseo de Circuitos Combinacionales 2.6. Mtodos para Sintetizar Circuitos Lgicos a. Mtodo de Suma de Productos (SDP) b. Mtodo de producto de sumas (PDS) c. Mapas de Karnaugh d. Algoritmo de Quine McCluskey 3. Circuitos Lgicos Co mbinacionales 3.1. Circuitos Aritmticos 3.2. Decodificadores 3.3. Registros de Tr es Estados 3.4. Codificadores 3.5. Multiplexores y Demultiplexores 3.6. Generado res de Paridad 3.7. Comparadores 3.8. Implementacin de Funciones Lgicas con Decodi ficadores 3.9. Implementacin de Funciones Lgicas con Multiplexores 4. Lgica Secuenc ial 4.1. Oscilador Simtrico con compuertas NOT 4.2. Disparadores Schmitt Trigger 4.3. Oscilador de Cristal 4.4. Osciladores Controlados 4.5. Circuito Integrado 5 55 4.6. CI 555 como Multivibrador Astable 4.7. CI 555 como Multivibrador Monoest able 4.8. Circuitos Monoestables 4.9. Circuitos Biestables (FLIP-FLOPs) 4.9.1. F LIP-FLOP Bsico R-S (Reset-Set) 4.9.2. FLIP FLOP RS - Controlado por un pulso de r eloj 4.9.3. FLIP-FLOP D 4.9.4. FLIP-FLOP D PRESET-CLEAR 4.9.5. FLIP-FLOP J-K 5 6 7 7 8 8 10 13 16 20 20 20 21 22 24 25 27 27 30 31 31 32 34 37 39 47 48 50 67 75 76 81 87 91 95 96 99 100 101 102 104 104 106 106 107 108 108 109 110 112 113Diseo Digital para Ingeniera 4 4.9.6. FLIP-FLOP T (Toggle) 5. Contadores y Registros 5.1. Contadores de Propaga cin 5.2. Contador de propagacin ascendente n 5.3. Contadores con nmeros MOD < 2 5.4 . Contador de propagacin descendente 5.5. Contadores Sincrnicos 5.6. Ejemplos de C ontadores en Circuito Integrado 5.7. Registros de Corrimiento 5.8. Registro de C orrimiento Bsico 5.9. Tipos de Entradas y Salidas en los Registros de Corrimiento 5.10. Registros de corrimiento bidireccionales 5.11. Registros en Circuito Inte grado 5.12. Aplicaciones de los Registros de Corrimiento 5.13. Contador en Anill o 6. Anlisis y Diseo de Circuitos Secuenciales 6.1. Teora de Mquinas de Estado (FSM) 6.2. Mquinas de Estado de Mealy y Moore 6.3. Ecuaciones Lgicas 6.4. Tablas de Est ado 6.5. Diagramas de Estado 6.6. Tablas de Transicin de FLIP-FLOPs 6.7. Mapas de Karnaugh 6.8. Anlisis y Diseo de Circuitos Secuenciales Sincrnicos 6.9. Diseo de Ci rcuitos Secuenciales con FLIP-FLOPs D 6.10. Estados no usados 6.11. Anlisis de Ci rcuitos Secuenciales Asincrnicos 6.12. Ejemplos de Control Secuencial 7. Disposit ivos Lgicos Programables 7.1. Tipos de PLD 7.2. Estructura de los Dispositivos Lgi cos Programables Bsicos 7.3. Herramientas para la Automatizacin del Diseo Electrnico 7.4. Principios y Aplicaciones de los Dispositivos Lgicos Programables como las PALs y las GALs. 7.5. Arquitectura de Diversos PLD's Secuenciales 7.6. Memorias 7.7. Aplicaciones de las Memorias 7.8. Lgica programable temprana Bibliografa ANEX O 1 Evaluacin Diseo Electrnico Digital ANEXO 2 Respuestas Evaluacin Diseo Electrnico D igital ANEXO 3 Proyecto Conversin anloga digital 113 114 114 114 116 116 117 120 1 23 123 124 125 126 128 128 130 130 130 132 132 134 134 135 136 139 141 144 149 1 54 155 155 156 157 163 177 185 186 187 192 193Diseo Digital para Ingeniera 5 PRESENTACIN Los circuitos digitales se emplean en productos electrnicos como video juegos, hornos de microondas, sistemas de control para automviles, dispositivos b iomdicos, entre otros; tambin los podemos encontrar equipos de prueba como medidor es, generadores y osciloscopios, dispositivos de telecomunicacin y consumo masivo como los celulares, radios, televisores y computadores personales. La era de la electrnica Digital est en auge y las tcnicas digitales han reemplazado a muchos de los circuitos anlogos empleados en el pasado. El papel o finalidad de la Educacin es generar valores y conocimientos que permitan convertir a todos los individuo s en seres capaces de pensar, sentir, realizar, generar e innovar, para contribu ir al mejoramiento y beneficio de la sociedad a la cul pertenecen. La Educacin abi erta o a distancia apoyada en tecnologa no se debe limitar al conocimiento, debe asumir el reto de desarrollar las herramientas necesarias que le permitan al est udiante ser un participante activo de su proceso de aprendizaje, ste debe ser inq uieto, preguntn crtico y motivarse cada vez ms en lo que aprende de su profesor y m otivar en l un sentimiento investigativo e innovador. El enfoque de este tipo de Educacin est orientado al estudiante, quin es el directo responsable de su proceso de aprendizaje, por lo tanto, para el desarrollo de este curso se implementa un modelo pedaggico y andraggico de aprendizaje interactivo virtual con el apoyo tcnic o necesario que apoye la Psicologa de Aprendizaje, haciendo nfasis en sus tres ele mentos: Perdurabilidad, Transparencia y Habilidad Prctica. Esto permitir contrarre star las desventajas que se presentan en la Educacin virtual como son la desmotiv acin y desercin del estudiante por la lentitud del proceso y por la reduccin de la interaccin personal. Para lograr aprendizajes sistmicos en la educacin, es necesari o avanzar hacia un modelo de pedagoga y andragoga que se identifique con los aspec tos sociales que se espera, impacten, para lograr as, una transformacin de la real idad a travs de la educacin. El presente curso ha sido elaborado a partir de mi ex periencia docente y profesional aplicada en la Universidad Autnoma de Manizales, Universidad de Caldas, Universidad Antonio Nario, Unitcnica (Ingecmputo) y otras In stituciones del Eje Cafetero. El Mdulo Diseo Digital para Ingeniera brindar a los es tudiantes los conceptos y tcnicas empleadas en el diseo de sistemas lgicos combinac ionales y secuenciales, las herramientas y conocimientos de los Circuitos Digita les, a travs de ejercicios de aplicacin para afianzar los conceptos vistos, y el a prendizaje significativo, facilitando transferir los conocimientos adquiridos a otros contextos de su quehacer profesional. Dedico este trabajo a mi bella espos a Kathy Faridy, a mi beb por nacer Sara Gabriela, mi mam Ofelia, tas Lilia y Lucila y dems miembros de mi familia y en especial a la memoria de mi to Jos Hernn Espinos a Martnez quien fue un padre para m (mi mentor) y le debo lo que soy hoy da que la l uz de su alma nos siga guiando por el camino de la vida. Rubn DaroDiseo Digital para Ingeniera 6 1. Sistemas Numricos El sistema decimal es universalmente empleado para representar cantidades en el mundo real. Los sistemas electrnicos digitales tienen que recoger la informacin y convertirla en dgitos binarios para procesarla internamente. As mismo, cuando la i nformacin es procesada, es necesario convertir esta informacin, por lo general a d ecimal antes de llevarla al mundo exterior. En realidad, no se manejan solamente estos dos sistemas, en la prctica se hace necesario utilizar cdigos que facilitan el manejo de otras caractersticas. En este captulo, se describir el cdigo decimal, el cdigo binario, el hexadecimal, el octal, las operaciones entre estos sistemas, las distintas conversiones entre los diferentes sistemas y algunas representaci ones de nmeros binarios. Sistemas Binario y Hexadecimal El sistema binario es el ms utilizado en los circuitos electrnicos digitales. Existen otros dos sistemas, e n las aplicaciones digitales; El hexadecimal y el octal. Su ventaja radica en la facilidad que ofrecen para representar de forma reducida los nmeros binarios. 1. 1. Sistema Decimal El sistema decimal es un sistema en base 10. En una cantidad decimal cada dgito tiene un peso asociado a una potencia de 10 segn la posicin que ocupe. Los pesos para los nmeros enteros son potencias positivas de diez, aumenta do de derecha a izquierda, comenzando por 100=1. Peso:....106105104103102101100 Los pesos para los nmeros fraccionarios son potencias negativas de diez, aumentan do de izquierda a derecha, comenzando por 10-1. Peso:....106105104103102101100, 10-110-210-310-4 La expresin general para descomponer el valor de una magnitud ex presada en cualquier sistema numrico para obtener su valor decimal: donde, di = Dgito en la posicin i. r = Base del sistema utilizado. n = No. de dgito s fraccionarios. p = No. de dgitos enteros. La base r del sistema numrico es el nme ro total de dgitos permitidos para el sistema. Ejemplo 235.63 = 2x102 + 3x101 + 5 x 100 + 6x10-1 + 3x10-2Diseo Digital para Ingeniera 7 1.2. Sistema Binario El sistema binario es un sistema en base dos. Es el sistema utilizado por los computadores digitales y tiene slo dos valores lgicos posibles - "0 y 1" - para sus coeficientes, los cuales se pueden representar fsicamente de distintas maneras, como las siguientes: Tensiones alto y bajo. Interruptor cerrado o abierto. Sentido de magnetizacin de un ncleo magntico. Corriente elctrica alta o baja. Los dgitos 0 y 1 se llaman bits. En un nmero entero binario el BIT a la derecha es el BIT menos significativo (LSB , Least Significant Bit) y tiene un peso de 20=1. El BIT del extremo izquierdo e l BIT ms significativo (MSB, Most Significant Bit) y tiene un peso dependiente de l tamao del numero binario. Los pesos crecen de derecha a izquierda en potencias de 2. En nmeros fraccionarios el bit a la izquierda de la coma es el MSB y su pes o es de 2-1= 0,5. Los pesos decrecen de izquierda a derecha en potencias negativ as de 2. Peso: 2n-1....2423222120, 2-12-22-3......2-n. En el cual n es el nmero d e bits a partir de la coma binaria. La tabla 1.1.1. muestra la equivalencia de l os nmeros decimales del 0 al 15 a su correspondiente binario. Nmero Decimal Nmero Binario 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 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 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 Tabla 1. Sistema decimal y binario Ejemplo 101101,11 = 1x25 + 0x24 + 1x23 + 1x22 + 0x21 + 1x20 + 1x2-1 + 1x2-2 En decimal se tiene: 32 + 8 + 4 + 1 + 0,5 + 0,25= 45,7510.Diseo Digital para Ingeniera 8 1.3. Sistema Hexadecimal El sistema hexadecimal es un sistema en base 16 y const a de 16 dgitos diferentes que son: del 0 al 9 y luego de la letra A a la F, es de cir 10 dgitos numricos y seis caracteres alfabticos. El sistema hexadecimal se usa como forma simplificada de representacin de nmeros binarios y debido a que 16 es u na potencia de 2(24=16), resulta muy sencilla la conversin de los nmeros del siste ma binario al hexadecimal y viceversa. La tabla 2. Muestra los nmeros decimales d e 0 al 15 con su equivalencia en binario y hexadecimal. Decimal Sistema binario Hexadecimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0000 0 001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 0 1 2 3 4 5 6 7 8 9 A B C D E F Tabla 2. Sistema decimal, binario y hexadecimal Para convertir un nmero hexadecim al en un nmero binario se reemplaza cada smbolo hexadecimal por un grupo de cuatro bits. Ejemplo: El nmero 4F5B16 en binario equivale a 1.4. Sistema Octal El sistema octal es un sistema en base 8 y est formado por 8 dg itos. En un nmero octal, los pesos crecen de derecha a izquierda en potencias de 8. Peso: 8483828180 La tabla 3. Muestra los nmeros decimales de 0 al 17 con su eq uivalencia a binario y octal.Diseo Digital para Ingeniera 9 Decimal Sistema binario Octal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 0000 0 001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 10000 10001 0 1 2 3 4 5 6 7 10 11 12 13 14 15 16 17 20 21 Tabla 3. Sistema decimal, binario y octal Observe que en octal los dgitos 8 y 9 n o se usan. La conversin de un nmero octal en decimal se obtiene multiplicando cada dgito por su peso y sumando los productos. Ejemplo: 1725= 1x83 + 7x82 + 2x81 + 5 x80 = 512+448+16+5= 981 Cdigo decimal binario (BCD) El cdigo decimal binario (BCD Binary Code Decimal) es utilizado para expresar los diferentes dgitos decimales c on un cdigo binario. Por consiguiente, el cdigo BCD tiene diez grupos de cdigo y re sulta prctico para convertir entre decimal y BCD. El cdigo 8421: Pertenece al grup o de cdigos BCD. El nombre 8421 indica los diferentes pesos de los cuatro bits bi narios (23, 22, 21, 20). La tabla 4. Muestra los nmeros decimales de 0 al 9 con s u equivalencia en BCD. Decimal Dgito en BCD 0 1 2 3 4 5 6 7 8 9 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 Tabla 4. Sistema decimal y BCD Con un nmero de 4 bits se pueden representar 24 co mbinaciones posibles, pero al emplear el cdigo 8421 se incluyen solamente 10 grup os de cdigo binario, en consecuencia las combinaciones 1010, 1011, 1100, 1101, 11 10, 1111 no se utilizan.Diseo Digital para Ingeniera 10 Ejemplo: Convertir a BCD el nmero decimal 6498. Reemplazando por los valores de l a tabla 4. Se obtiene, 649810 = (0110 0100 1001 1000)8421 1.5. Conversiones de u n Sistema a Otro Las conversiones entre nmeros de bases diferentes se efectan por medio de operaciones aritmticas simples. Dentro de las conversiones ms utilizadas se encuentran: 1.5.1. Conversin de Decimal a Binario Para la conversin de decimal a binario se emplean dos mtodos. El primero es divisiones sucesivas y el segundo es suma de potencias de 2. Por divisiones sucesivas: Se va dividiendo la cantida d decimal por 2, apuntando los residuos, hasta obtener un cociente cero. El ltimo residuo obtenido es el BIT ms significativo (MSB) y el primero es el BIT menos s ignificativo (LSB). Ejemplo Convertir el nmero 15310 a binario. Figura 1. Ejemplo de conversin de decimal a binario El resultado en binario de 15 310 es 10011001 Por sumas de potencias de 2: Este mtodo consiste en determinar el conjunto de pesos binarios cuya suma equivalga al nmero decimal. Ejemplo: Conver tir el nmero 15310 a binario. 15310 = 27 + 24 + 23 + 20 = 128 + 16 +8 +1; 15310= 100110012 1.5.2. Conversin de Fracciones Decimales a Binario Para la conversin de fracciones decimales a binario se emplean el siguiente mtodo. Por suma de potenci as de 2: Emplea la misma metodologa de la suma de potencias de 2 pero se trabaja con potencias negativas.Diseo Digital para Ingeniera 11 Ejemplo Convertir el nmero 0,87510 a binario. 0,87510 = (2-1) + (2-2) + (2-3) = 0 ,5 + 0,25 + 0,125 = 0,1112 Por multiplicaciones sucesivas: La conversin de nmeros decimales fraccionarios a binario se realiza con multiplicaciones sucesivas por 2. El nmero decimal se multiplica por 2, de ste se extrae su parte entera, el cual va a ser el MSB y su parte fraccional se emplea para la siguiente multiplicacin y seguimos sucesivamente hasta que la parte fraccional se vuelva cero o maneje u n error moderado. El ltimo residuo o parte entera va a constituir el LSB. Ejemplo : Convertir el nmero 0,87510 a binario. Nmero N N X 2 Parte entera Peso 0,875 0,75 0,5 1,75 1,5 1,00 1 1 1 LSB MSB Tabla 5. Ejemplo de Conversin de Decimal a Binario. El resultado en binario de 0, 87510 es 0,1112. 1.5.3. Conversin de Decimal a Hexadecimal En la conversin de una magnitud decimal a hexadecimal se realizan divisiones sucesivas por 16 hasta obt ener un cociente de cero. Los residuos forman el nmero hexadecimal equivalente, s iendo el ltimo residuo el dgito ms significativo y el primero el menos significativ o. Ejemplo: Convertir el nmero 186910 a hexadecimal. Figura.2. Ejemplo de Conversin de decimal a hexadecimal El resultado en hexadecim al de 186910 es 74D16. 1.5.4. Conversin de Decimal a Octal En la conversin de una magnitud decimal a octal se realizan divisiones sucesivas por 8 hasta obtener la parte entera del cociente igual a cero. Los residuos forman el nmero octal equiv alente, siendo el ltimo residuo el dgito ms significativo y el primero el menos sig nificativo. Ejemplo: Convertir el nmero 46510 a octal.Diseo Digital para Ingeniera 12 Nmero N N 8 Parte decimal Parte decimal x 8 Peso 465 58 0,5 58,125 7,25 0,875 0,1 25 0,25 0,875 1 2 7 MSB LSB Tabla 6. Ejemplo de Conversin de Decimal a Hexadecimal. El resultado en octal de 46510 es 721. 1.5.5. Conversin de Binario a Decimal Un nmero binario se convierte a decimal form ando la suma de las potencias de base 2 de los coeficientes cuyo valor sea 1. Ej emplo: Convertir el nmero 11002 a decimal. 11002 = 1x23 + 1x22 = 1210 1.5.6. Conv ersin de Binario a Hexadecimal El mtodo consiste en conformar grupos de 4 bits hac ia la izquierda y hacia la derecha del punto que indica las fracciones, hasta cu brir la totalidad del nmero binario. Enseguida se convierte cada grupo de nmero bi nario de 4 bits a su equivalente hexadecimal. Ejemplo: Convertir el nmero 1001110 1010 a hexadecimal. 1.5.7. Conversin de Binario a Octal El mtodo consiste en hacer grupos de 3 bits ha cia la izquierda y hacia la derecha del punto que indica las fracciones, hasta c ubrir la totalidad del nmero binario. Enseguida se convierte cada grupo de nmero b inario de 3 bits a su equivalente octal. Ejemplo: Convertir el nmero 010101012 a octal. 1.5.8. Conversin de Hexadecimal a D ecimal En el sistema hexadecimal, cada dgito tiene asociado un peso equivalente a una potencia de 16, entonces se multiplica el valor decimal del dgito correspond iente por el respectivo peso y realizar la suma de los productos. Ejemplo Conver tir el nmero 31F16 a decimal. 31F16 = 3x162 + 1x16 + 15 x 160 = 3x256 + 16 + 15 = 768 + 31 = 79910 1.5.9. Conversin de Hexadecimal a BinarioDiseo Digital para Ingeniera 13 La conversin de hexadecimal a binario se facilita porque cada dgito hexadecimal se convierte directamente en 4 dgitos binarios equivalentes. Ejemplo: Convertir el nmero 1F0C16 a binario. 1F0C16 = 11111000011002 1.5.10. Conversin de Octal a Decim al La conversin de un nmero octal a decimal se obtiene multiplicando cada dgito por su peso y sumando los productos: Ejemplo: Convertir 47808 a decimal. 4780 = (4 x 83)+(3x82)+(8x81)+(0x80) = 2048+192+64+0= 2304 1.5.11. Conversin de Octal a Bin ario La conversin de octal a binario se facilita porque cada dgito octal se convie rte directamente en 3 dgitos binarios equivalentes. Ejemplo: Convertir el nmero 71 58 a binario. 7158 = (111001101)2 1.6. Representacin de Nmeros Enteros y de Punto Flotante: Los computadores deben i nterpretar nmeros positivos y negativos. Los nmeros binarios se caracterizan por s u magnitud y su signo. El signo indica si el nmero es positivo o negativo y la ma gnitud el valor del nmero. 1.6.1. Representacin de Nmeros Binarios Enteros: Existen tres formas de representar los nmeros binarios enteros con signo: a. Signo magni tud. b. Complemento a 1. c. Complemento a 2. a. Signo Magnitud En el sistema Sig no Magnitud los nmeros positivos y negativos tienen la misma notacin para los bits de magnitud pero se diferencian en el bit del signo. El bit del signo es el bit situado ms a la izquierda en el nmero binario: En nmeros positivos se emplea el bit "0". En nmeros negativos se emplea el bit "1" . El nmero no debe estar complementado. Ejemplo: El nmero decimal 21 se expresa en binario de 6 bits 010101, donde el pri mer bit "0" denota el bit de una magnitud positiva. El nmero decimal 21 se expresa en binario 110101, donde el primer bit "1" denota el bit de una magnitud negati va. b. Complemento a 1:Diseo Digital para Ingeniera 14 El complemento a 1 en binario se obtiene cambiando los unos por ceros y los cero s por unos. La representacin de nmeros positivos en complemento a 1 sigue las mism as reglas del sistema signo-magnitud y la representacin de los nmeros negativos en complemento 1 es el complemento a 1 del nmero positivo. Ejemplo: El nmero decimal 21 se expresa en complemento a 1 a 6 bits como 010101, donde el primer bit "0" denota el bit de una magnitud positiva. El complemento 1 a 6 bits del decimal 21, se obtiene por medio del complemento a 1 del nmero positivo 010101 el cual es 10 1010. c. Complemento a 2 Los computadores utilizan la representacin binaria en co mplemento a 2 para representar nmeros negativos. La representacin de nmeros positiv os en complemento a 2 sigue las mismas reglas del sistema signo-magnitud y la re presentacin de los nmeros negativos en complemento a 2 se obtiene de la siguiente forma: 1. Se representa el nmero decimal dado en magnitud positiva. 2. El nmero de magnitud positiva se representa en forma binaria positiva. 3. Se obtiene el com plemento 1 del nmero binario obtenido en el paso anterior mediante el cambio de l os unos por ceros y viceversa. 4. Al complemento 1 se le suma uno y el resultado es la representacin en el complemento 2. Ejemplo: Representar el nmero 510 en bina rio, utilizando el complemento a 2 con 5 bits. 1. 2. 3. 4. 5. 5 5. Escribimos el nmero +510 en binario de 5 bits 0101 Obtenemos el complemento a 1 de 0101 1010 Al complemento de nmero anterior se la suma 1. El resultado es 1011. Obtenemos el nm ero 1011 en complemento a 2. Ejemplo: Obtener el complemento a 2 del nmero positivo de 8 bits 000001012 (+510) . El equivalente en complemento a 1 es 11111010. El complemento a 2 del nmero es 11111011. Comprobando los pesos en decimal se puede demostrar la obtencin del neg ativo del nmero inicial utilizando el mtodo del complemento a 2: 111110112 = (-128 + 64 + 32 +16 + 8 + 0 + 2 + 1)10 = - 510 En la representacin en complemento 2 el primer bit del lado ms significativo puede interpretarse como el signo, siendo c ero para nmeros positivos y 1 para nmeros negativos. Se puede comprobar que si a u na cantidad negativa expresada en complemento 2 se le saca su complemento 2, se obtiene la magnitud positiva correspondiente.Diseo Digital para Ingeniera 15 1.6.2. Representacin en Punto Fijo y en Punto Flotante En los computadores los nme ros se representan en punto fijo y en punto flotante. Punto fijo: Se usa para lo s nmeros enteros con signo o fracciones con signo. En este caso las cantidades se representan en forma binaria en complemento a 1 a 2 y se pueden utilizar longit udes de 8, 16 y 32 bits. En 8 bits el rango va desde 128 hasta 127. El nmero de c ombinaciones diferentes de un nmero binario de n bits es: N total de combinaciones : 2n. En los nmeros con signo e complemento a 2, el rango de valores para nmeros d e n bits: (2n-1) a + (2n-1-1). a. Enteros con signo Los enteros de punto fijo us an un punto binario a la derecha del LSB. Ejemplo El nmero de punto fijo de 8 bit s 01110101 en complemento a 2, por tener un 0 en el bit de signo representa: El nmero entero positivo 1110101 la fraccin positiva 0.1110101 b. Fracciones de punto fijo Las fracciones de punto fijo usan el punto binario entre el bit de signo y el MSB. Ejemplo: El nmero de punto fijo de 8 bits 11001111 en complemento a 2, p or tener un 1 en el bit de signo representa: El nmero entero negativo -0110001 la fraccin negativa -0. 0110001. Punto flotante: El punto flotante se utiliza para representar nmeros no enteros, nmeros muy grandes o nmeros muy pequeos. Un nmero en p unto flotante se expresa como m x re donde, m es la mantisa y es un nmero de punt o fijo, e es el exponente o caracterstica y es un entero de punto fijo, r es la b ase. En los computadores personales se usa base 2. La mantisa representa la magn itud del nmero. El exponente es la parte que representa el nmero de lugares a desp lazar el punto decimal o binario. S tenemos un nmero de punto fijo de la forma (an -1 .... a0 . a-1 .a-m)r en forma de punto flotante ser de la forma ( . an-1 ....am)r x rn , la base generalmente se omite. Con frecuencia la mantisa m se escribe con magnitud y signo de la siguiente forma, y en forma de fraccin M = (sm . an-1 a-m) donde, sm indica el signo (1 para una cantidad negativa y 0 para una canti dad positiva) y . an-1 a-m representa la magnitud.Diseo Digital para Ingeniera 16 Un nmero de punto flotante est normalizado si el exponente se ajusta de modo que l a mantisa tenga un valor distinto de cero en la posicin ms significativa. Ejemplo: El nmero +1010.0111 en representacin normalizada en punto flotante da como result ado (0.10100111) x 24 El estndar ANSI/IEEE 754-1985 define tres formatos para los nmeros de punto flotante: Precisin sencilla: Utiliza 32 bits. Doble precisin: Utiliza 64 bits Precisin amplia da: Utiliza 80 bits. Ejemplo: Un formato a 32 bits es el siguiente, El exponente desplazado se obtien e adicionando 127 al exponente real y convirtindolo al binario correspondiente. 1 .7. Operaciones Aritmticas en Binario Los circuitos de control bsicos y los comput adores efectan operaciones aritmticas. Estas operaciones se realizan en sistema bi nario y las leyes que las rigen, son paralelas a las usadas en el sistema decima l. A continuacin se describe cada una de las metodologas para realizar tales opera ciones. a. Suma Binaria La suma de dos cantidades binarias empieza con la suma d e los dos dgitos menos significativos de los sumandos y un acarreo inicial de cer o uno (Acarreo Cin). Esta operacin puede producir un bit de acarreo (Acarreo Cout ) para la suma de la siguiente posicin significativa. En la tabla 7. Las entradas A, B y Cin denotan al primer sumando, el segundo sumando y el acarreo de entrad a. Las salidas S y Cout representan a la suma y el acarreo de salida. Sumando A Sumando B Acarreo Cin Acarreo Cout Suma S 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 0 0 1 0 1 1 1 0 1 1 0 1 0 0 1 Tabla 7. Suma binariaDiseo Digital para Ingeniera 17 Ejemplo: Efectuar la suma de 010110 y 101010. 11111 010110 + 101010 1000000 Acarreo Comprobacin en decimal: 22 + 42 64 ( 26) La suma de 2 magnitudes binarias en representacin de complemento a 2, da como res ultado la suma binaria en complemento a 2. b. Resta Binaria: En la resta binaria , los bits del minuendo de las columnas se modifican cuando ocurre un prstamo. En la tabla 1.4.2. las entradas A, B y Bin denotan el minuendo, el sustraendo y el bit prestado. Las salidas D y P representan a la diferencia y el prstamo. La tab la muestra los resultados de una resta binaria de dos bits, Minuendo A Sustraendo B Prstamo Bin Prstamo P Diferencia D 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 1 1 0 0 0 1 0 1 1 0 1 0 0 1 Tabla 8. Resta binaria Para A=0, B=0 y Bin=1, hay que tomar prestado un 1 de la siguiente columna ms significativa, lo cual hace P=1 y agregar "en decimal" 2 a A . La resta 2-0-1=1, da como resultado en binario D=1. Los prstamos se propagan ha cia la izquierda de columna en columna. Ejemplo: Restar 10012 de 100112.Rengln 2, Tabla 1.4.1. 0 - 1 = 0 con un prstamo de la columna izquierda. 10 - 1 = 1 Rengln 1, Tabla 1.4.1. 0 - 0 = 0 sin prstamo. Rengln 3, Tabla 1.4.1. 1 - 0 = 0 si n prstamo. Rengln 4, Tabla 1.4.1. 1 - 1= 0 sin prstamo. 1 Prstamo 10011 - 01001 0 0Diseo Digital para Ingeniera 18 Rebasamiento: Se presenta cuando la suma de la columna ms significativa genera un acarreo. Este slo se puede producir cuando ambos nmeros son positivos o negativos . Ejemplo: Efectuar la suma de 86510 y 41210. 1 Acarreo 865 + 412 1207 Rebasamiento Ejemplo: Efectuar la suma de 1102 y 1102. 11 Acarreo 110 + 110 1100 Rebasamiento Resta binaria en Complemento a 2 En la leccin anterior se vi que el signo de un nme ro positivo negativo se cambia calculando su complemento a 2. La resta de dos nme ros con signo se calcula sumando el complemento a 2 del sustraendo al minuendo y descartando cualquier bit de acarreo final. El siguiente procedimiento es neces ario para calcular la resta de dos nmeros: 1. Obtener el complemento a 2 del sust raendo. 2. Efectuar la suma del minuendo y el sustraendo en complemento a 2. 3. S la suma presenta rebosamiento indica que la repuesta es positiva. Ignore el reb asamiento. 4. Si no hay rebosamiento, entonces la repuesta es negativa. Para obt ener a magnitud del nmero binario, obtenga el complemento a dos de la suma. Ejemp lo: Sustraer (1010111 - 1001000)2 1. El complemento a 2 de 1001000 es 0111000. 2 . Sumamos el primer sumando y el complemento a 2 obtenido. 111 + Acarreo 1010111 0111000 10001111 Rebasamiento (Se ignora ) Comprobacin en decimal: 87 - 72 15Diseo Digital para Ingeniera 19 3. La respuesta es 00011112. Multiplicacin Binaria La multiplicacin de dos cantidades binarias es necesario con siderar lo siguiente: Multiplicando A Multiplicador B Multilplicacin (A*B) 0 0 1 1 0 1 0 1 0 0 0 1 Tabla 8. Multiplicacin binaria La multiplicacin binaria cumple las mismas reglas d e la multiplicacin decimal. En el prximo ejemplo se ilustrar la multiplicacin binari a. Ejemplo: Multiplicar las cantidades 1011 y 1101. Figura 3. Multiplicacin binaria Multiplicacin con signo: Se representan los operan dos en complemento 2 y el resultado tambin se obtiene en complemento 2. El ltimo m ultiplicando desplazado se niega.Diseo Digital para Ingeniera 20 2. Principios de Diseo de Lgica Combinacional 2.1. Qu es Electrnica Digital? Es una rama de la ciencia aplicada que estudia las s eales elctricas, pero en este caso son seales discretas, es decir, estn bien identif icadas, razn por la cual a un determinado nivel de tensin se lo llama estado alto (High) o Uno lgico; y a otro, estado bajo (Low) o Cero lgico, por lo tanto, existe la Lgica Positiva y la Lgica Negativa, Lgica Positiva: En esta notacin al 1 lgico le corresponde el nivel ms alto de tensin (positivo) y al 0 lgico el nivel ms bajo (qu e bien podra ser negativo), pero, que ocurre cuando la seal no est bien definida? En tonces habr que conocer cuales son los lmites para cada tipo de seal (conocido como tensin de histresis), en la figura 4 se puede ver con mayor claridad cada estado lgico y su nivel de tensin. Figura 4. Estado Lgico Positivo y Nivel de Tensin Lgica Negativa: Aqu ocurre todo lo contrario, es decir, se representa al estado "1" con los niveles ms bajos de ten sin y al "0" con los niveles ms altos. (Ver Figura 5). Figura 5. Estado Lgico Negativo y Nivel de Tensin Por lo general se suele trabajar con lgica positiva, y as lo haremos en este curso, la forma ms sencilla de represe ntar estos estados es como se puede ver en la figura 6. Figura 6. Estado Lgico Positivo 2.2. lgebra de Boole El lgebra Booleana es la teora matemtica que se aplica en la lgica combinatoria. Las variables Booleanas son smbol os utilizados para representar magnitudes lgicas y pueden tener slo dos valores po sibles: 1 (valor alto) 0 (valor bajo).Diseo Digital para Ingeniera 21 a. Operaciones Booleanas y Compuertas Bsicas Las operaciones boolenas son posible s a travs de los operadores binarios negacin, suma y multiplicacin, es decir que es tos combinan dos o ms variables para conformar funciones lgicas. Una compuerta es un circuito til para realizar las operaciones anteriormente mencionadas, y funcio nan de igual manera que una calculadora, de un lado se ingresan los datos, esta realiza una operacin y muestra el resultado, como lo muestra la siguiente figura. Figura 7. Diagrama de Bloques Compuerta Cada una de las compuertas lgicas se repr esenta mediante un Smbolo, y la operacin que realiza (Operacin lgica) se corresponde con una tabla, llamada Tabla de Verdad. Operacin Inversin o Negacin (complemento)) Compuerta Not Esta operacin se indica con una barra sobre la variable o por medi o de un apstrofe en el lado superior derecho de la variable, en este curso emplea remos esta ltima notacin. El apstrofe () es un operador algebraico que invierte el v alor de una variable, es decir, si X denota la seal de entrada de un inversor, en tonces X representa el complemento de tal seal. Ejemplo S X = a = 0 entonces X = s = 1. Figura 8. Smbolo y Tabla de Verdad Compuerta Not Suma Booleana - Compuerta OR La Compuerta OR tiene dos entradas como mnimo y su operacin lgica es una suma Booleana representada por medio un signo ms entre las dos variables de entrada. La suma B ooleana de las variables a y b se enuncia de la siguiente forma, s = a + b La su ma Booleana es 1 si alguna de las variables lgicas de la suma es 1 y es 0 cuando todas las variables son 0. Esta operacin se asimila a la conexin paralela de conta ctos. Bueno, todo va bien hasta que 1 + 1 = 1, el tema es que se trata de una co mpuerta O Inclusiva es como a y/o b, es decir, basta que una de ellas sea 1 para que su salida sea tambin 1.Diseo Digital para Ingeniera 22 Figura 9. Smbolo y Tabla de Verdad Compuerta OR Multiplicacin Booleana Compuerta A ND La Compuerta AND tiene dos entradas como mnimo y su operacin lgica es una multip licacin booleana representada por medio un signo () entre las dos variables de ent rada. No es un producto aritmtico, aunque en este caso coincidan. Observa que su salida ser alta si sus dos entradas estn a nivel alto. La multiplicacin booleana de las variables A y B se enuncia de la siguiente forma, X = A B La multiplicacin b ooleana es 1 si todas las variables lgicas son 1, pero si alguna es 0, el resulta do es 0. La multiplicacin booleana se asimila a la conexin serie de contactos. Figura 10. Smbolo usiva en este caso a por b invertida y slo una de sus y Tabla de Verdad Compuerta AND Compuerta EXOR o XOR Es OR Excl con dos entradas y lo que har con ellas ser una suma lgica entre y a invertida por b. Al ser O Exclusiva su salida ser 1 si una entradas es 1.Figura 11. Smbolo y Tabla de Verdad Compuerta EXOR b. Compuertas Lgicas Combinadas Al agregar una compuerta NOT a cada una de las compuertas anteriores los result ados de sus respectivas tablas de verdad se invierten, y dan origen a tres nueva s compuertas llamadas NAND, NOR y NOR-EX... Veamos ahora como son y cual es el sm bolo que las representa... Compuerta NANDDiseo Digital para Ingeniera 23 Responde a la inversin del producto lgico de sus entradas, en su representacin simbl ica se reemplaza la compuerta NOT por un crculo a la salida de la compuerta AND. Figura 12. Smbolo y Tabla de Verdad Compuerta NAND Compuerta NOR El resultado que se obtiene a la salida de esta compuerta resulta de la inversin de la operacin lgi ca o inclusiva es como un no a y/o b. Igual que antes, solo agregar un crculo a l a compuerta OR y ya se tiene una NOR. Figura 13. Smbolo y Tabla de Verdad Compuerta NOR Compuerta NEXOR Es simplemente la inversin de la compuerta EXOR, los resultados se pueden apreciar en la tabla d e verdad y el smbolo que la representa en la figura 14, que bien se podra comparar con la figura 13 (anterior) y notar la diferencia. Figura 14. Smbolo y Tabla de Verdad Compuerta NEXOR Compuerta YES o Buffer En rea lidad no realiza ninguna operacin lgica, su finalidad es amplificar un poco la seal (o refrescarla si se puede decir). Como se puede ver en la figura 15 la seal de salida es la misma que de entrada.Diseo Digital para Ingeniera 24 Figura 15. Smbolo y Tabla de Verdad Compuerta YES o Buffer c. Circuitos Integrado s y Circuito de Prueba Existen varias familias de Circuitos integrados, pero las ms comunes y empleadas en Colombia son los TTL y CMOS. Estos Integrados se puede n caracterizar por el nmero que corresponde a cada familia segn su composicin. Por ejemplo; Los TTL se corresponden con la serie 5400, 7400, 74LSXX, 74HCXX, 74HCTX X,. algunos 3000 y 9000. Los C-MOS y MOS se corresponde con la serie CD4000, CD45 00, MC14000, 54C00 74C00, La pregunta de rigor... Cual es la diferencia entre uno y otro?, veamos... Los C-MOS, el mximo nivel de tensin que soportan llega en algu nos casos a +15V, mientras que para los TTL el nivel superior de tensin alcanza e n algunos casos a los +12V aproximadamente, pero claro estos son lmites extremos, lo comn en estos ltimos es utilizar +5V. Otra caracterstica es la velocidad de tra nsmisin de datos, resulta ser, que los circuitos TTL son ms rpidos (Comunicacin Para lela) que los C-MOS (Comunicacin Serial), por eso su mayor uso en sistemas de com putacin. Es importante buscar la hoja de datos o datasheet del integrado que nece site, distribuido de forma gratuita por cada fabricante y disponible en Internet , o en el Manual ECG o NTE semiconductores. Ejemplo Caso Circuito Integrado 74LS 08, un TTL, es una cudruple compuerta AND. Es importante notar el sentido en que estn numerados los pines, lo cual es general para todo tipo de integrado. Figura 16. Hoja de Datos Circuito Integrado 74LS08 Comenzaremos con este integrado para verificar el comportamiento de las compuert as vistas anteriormente. El representado en la figura 17 marca una de las compue rtas que ser puesta a prueba, para ello utilizaremos un fuente regulada de +5V, u n LED una resistencia de 220 (ohm), y por supuesto el IC que corresponda y la pl aca de prueba.Diseo Digital para Ingeniera 25 Figura 17. Prueba de una de las compuertas del Circuito Integrado 74LS08 En el e squema est marcada la compuerta, como 1 de 4 disponibles en el Integrado 74LS08, los extremos a y b son las entradas que se debern llevar a un 1 lgico (+5V) 0 lgico (GND), el resultado en la salida s de la compuerta se ver reflejado en el LED, L ED encendido (1 lgico) y LED apagado (0 lgico), no olvide conectar los terminales de alimentacin que en este caso son el pin 7 a GND y el 14 a +5V. Montado en la p laca de prueba te quedara algo as en el Protoboard de la figura 18. Figura 18. Esquema en Protoboard Prueba de una de las compuertas del Circuito In tegrado 74LS08 Esto es a modo de ejemplo, Slo debes reemplazar IC1, que es el Cir cuito Integrado que est a prueba para verificar su tabla de verdad. d. Propiedade s de las Operaciones Booleanas Las operaciones booleanas estn regidas por tres le yes similares a las del lgebra convencional. Estas incluyen las leyes conmutativa s de la suma y la multiplicacin y la ley distributiva. Leyes conmutativas en dos variables 1. Ley conmutativa de la suma se enuncia como sigue X+Y=Y+X En aplicac in a los circuitos digitales, podramos decir que no importa el orden de conexin de las entradas a una compuerta OR. 2. Ley conmutativa de la multiplicacin XY = Y X En aplicacin a los circuitos digitales, podramos decir que no importa el orden de co nexin de las entradas a una compuerta AND. Leyes asociativas en tres variables 1. Ley asociativa de la adicin, se escribe en forma algebraica de la siguiente form aDiseo Digital para Ingeniera 26 A+(B+C)=(A+B)+C En la figura 19 se muestra la aplicacin de la propiedad a las com puertas OR, Figura 19. Ley asociativa de la adicin 2. Ley asociativa de la multiplicacin A( B C) = ( AB ) C En la figura 20 se muestra l a aplicacin de la propiedad a las compuertas AND, Figura 20. Ley asociativa de la multiplicacin Ley distributiva para tres variable s En el lgebra de Boole, la multiplicacin lgica se distribuye sobre la suma lgica, A( B + C ) = AB + AC En la figura 21 se muestra la aplicacin de la propiedad a las co mpuertas AND y OR, Figura 21. Ley distributiva para tres variablesDiseo Digital para Ingeniera 27 e. Teoremas Booleanos Los teoremas booleanos son enunciados siempre verdaderos, lo que permite la manipulacin de expresiones algebraicas, facilitando el anlisis sn tesis de los circuitos digitales. Los teoremas booleanos son los siguientes: 1. X + 0 = X 2. X + 1 = 1 3. X0 = 0 4. X1 = X 5. (X)=X 6. X + X = X 7. XX = X 8. X + X = 1 9. X.X= 0 10. X + XY = X 11. X +XY = X + Y 12. XY + XY = X (Teorema de combinacin) 1 . (X +Y)(X + Y) = X + XY + XY = X 14. XY + XZ + YZ = XZ + YZ (Consenso) El teorema onoce como la ley distributiva para tres variables. Demostracin teorema 12: XY + XY = X Utilizando la ley distributiva para tres variables XY + XY= X(Y+Y) Aplicando el t eorema 8 se tiene, XY + XY= X1 Dando como resultado, XY + XY= X Esta expresin indica la suma de dos productos cannicos adyacentes, es decir que difieren en una sola de las variables, se reduce al producto de los dems trminos suprimindose dicha vari able. El teorema 13 es otro caso del teorema de combinacin. Los teoremas 12 y 13 se utilizarn en las lecciones siguientes de forma sistemtica para sintetizar circu itos lgicos con los mtodos de mapas de karnaugh y el algortimo de Quine-McCluskey. f. Teoremas de DeMorgan Los teoremas de DeMorgan demuestran la equivalencia ent re las puertas NAND y negativa - OR, y las puertas NOR y negativa AND.Diseo Digital para Ingeniera 28 1. El complemento de la suma de variables es igual al producto de los complement os de las variables. (X1 + X2 +.....+ Xn) = X1 X2 ..... Xn En el caso de dos variab es se tiene, (X + Y) = X Y El circuito equivalente a la ecuacin anterior se muestra en la figura 22. Figura 22. Smbolo lgico para la compuerta NOR. Ejemplo: Obtener una compuerta OR u tilizando compuertas NAND. Y = (A + B) = [(A + B)] = (AB)Figura 23. Compuerta OR utilizando compuertas NAND 2. El complemento del product o de variables es igual a la suma de los complementos de las variables. (X1 X2 .. ... Xn) = X1 + X2 + .....+ Xn En el caso de dos variables se tiene, (X Y) = X + Y E cuito equivalente en dos variables a la ecuacin se muestra en la figura 24. Figura 24. Smbolo lgico para la compuerta NOR. Ejemplo: Obtener una compuerta AND utilizando compuertas NOR. Y = AB = [(A.B)] = (A+B)Diseo Digital para Ingeniera 29 Figura 25. Circuito lgico para la compuerta AND Tabla 8.1. Propiedades, Tablas y Representacin Grfica del Algebra de BooleDiseo Digital para Ingeniera 30 2.3. Simplificacin de Expresiones Lgicas El objetivo de la simplificacin de expresi ones lgicas es reducir la expresin al menor nmero posible de trminos. Las expresione s lgicas se pueden simplificar utilizando los teoremas anteriores. Ejemplo: 1. F = ABC + ABC; F = AB(C + C); F = AB 2. F = (A+B)(A+B); F = AA + AB + AB + BB; F = AB + AB 3. F = [(A + C)(B + D)]; F = (A + C)+(B + D); F= AC + BD4. F = (X + Z)(Z + WY) + (VZ + WX)(Y + Z); F = (X + Z)[Z(W + Y)] + [(VZ + WX WXZ + XYZ + ZZW + ZZY + WXYZ F = WXZ + XYZ + WZ + YZ + F = Z(W + Y) 2.4. Implementacin de Funciones Lgicas mediante Compuertas.Diseo Digital para Ingeniera 31 La forma ms fcil de encontrar la expresin de un circuito lgico consiste en comenzar con las entradas situadas ms a la izquierda e ir avanzando hasta la salida de cad a compuerta lgica, obteniendo la expresin para cada una de ellas. Al final del rec orrido se debe tener la expresin para todo el circuito. La expresin resultante pod emos simplificarla para obtener una ms sencilla y as obtener un circuito ms reducid o. Ejemplo Encontrar la expresin para el circuito de la figura 26.Figura 26. Smbolo lgico para la compuerta NOR. 1. La expresin de la compuerta NOR s ituada a la izquierda cuyas entradas son A y B es (A+B). Esta es la primera entra da de la compuerta AND situada a la derecha. 2. La expresin de la compuerta AND c uyas entradas son (A+B) y C es (A+B)C. 3. La salida de la compuerta AND es la prime ra entrada de la compuerta OR del extremo derecho. Por lotanto, la expresin de es ta compuerta OR es [(A+B)C]+D. 2.5. Sntesis de Diseo de Circuitos Combinacionales Snt esis se entiende como la obtencin de circuitos lgicos, a partir de una descripcin i nicial que utiliza el lenguaje convencional y luego es transferida a una tabla d e verdad. Una tabla de verdad es una representacin bsica de una funcin lgica, en la cual se listan las salidas del circuito lgico para las posibles combinaciones de entrada. Las combinaciones de entrada estn ordenadas por renglones (lneas) y cada rengln contiene su salida respectiva. Por ejemplo, la tabla de verdad para una fu ncin lgica de 3 variables, tendr 8 lneas para 8 combinaciones de entrada, conteniend o cada lnea, su salida respectiva. En la tabla 9. Se ilustra una funcin de 3 varia bles para el caso mencionado. Rengln o lnea A B C Funcin de salida Mintrmino Maxtrmino 0 1 2 3 4 5 6 7 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 F(0,0,0) F(0,0,1 ) F(0,1,0) F(0,1,1) F(1,0,0) F(1,0,1) F(1,1,0) F(1,1,1) A'B'C' A'B'C A'BC' A'BC AB' ' ABC A+B+C A+B+C' A+B'+C A+B'+C' A'+B+C A'+B+C' A'+B'+C A'+B'+C' Tabla 9. Funciones de salida, Maxtrminos y Mintrminos 2.6. Mtodos para Sintetizar C ircuitos LgicosDiseo Digital para Ingeniera 32 Los mtodos para sintetizar circuitos lgicos requieren en primer lugar, la comprens in de algunos conceptos, entre ellos: Literal: Variable o el complemento de una variable. Ejemplo: X, Y, X, Y. Dominio de una expresin booleana: Es el conjunto de variables contenido en una ex presin booleana. Ejemplo: Determine el dominio de la expresin XYZ + XYZW. El dominio , Y, Z, W. Trmino normal: Un producto o trmino suma en donde ninguna variable aparece repetid a. Ejemplo de trmino repetido: XYY, ZXXY Ejemplo de trmino no repetido: XYZ, ZY Trmino producto: Un solo literal o el producto lgico (multiplicacin booleana) de do s o ms literales. Ejemplo: X, XY, ZY, XYZ Un trmino producto es 1 slo para una comb e valores de las variables. Ejemplo: El trmino producto XY'Z es 1 slo para X=1, Y=0 y Z=1 y es 0 para el resto de combinaciones. El valor en binario ser 101 5 en dec imal. Trmino suma: Un solo literal o una suma lgica (suma booleana) de dos o ms literales . Ejemplo: X, X + Y,X+Z, X+Y+Z, X+Y+Z Un trmino suma es 1 cuando cualquier literal que lo compone es 1. Ejemplo: El trmino X+Y+Z es 0 para X=0 Y=1 Z=1 y es 1 para el res to de combinaciones. El valor en binario ser 011 3 en decimal. Suma de productos: Suma lgica de trminos productos (Ver tabla 9). Ejemplo: X+ XY + ZY + XYZ Forma estndar de la suma de productos: Una suma de productos no se encuentra e n su forma estndar cuando alguno de los trminos producto no contiene alguna de las variables del dominio de la expresin. EjemploDiseo Digital para Ingeniera 33 XYZ + XYZW. El dominio es X, Y, Z, W. El primer trmino producto no contiene el litera W'. Ejemplo X'YZ'.W + XYZW. En cada uno de los trminos de la expresin aparecen toda as variables del dominio. Por lo tanto, la suma de productos est en su forma estnd ar. Producto de sumas: Producto lgico de trminos suma (Ver tabla 9). Ejemplo: X(X+Y)(X+Z) Y+Z)(X+Y+Z). Forma estndar del producto de sumas: Un producto de sumas no se encuent ra en su forma estndar cuando alguno de los trminos suma no contiene alguna de las variables del dominio de la expresin. Ejemplo (X+W+Z )(X'+Y+Z+W )(X+Y). El dominio e s X, Y, Z, W. El primer trmino suma no contiene el literal Y Y'. El tercer trmino suma no contiene los literales Z Z' y W W'. Ejemplo (X'YZ'.W)(XY'ZW). En cada uno d os trminos de la expresin aparecen todas las variables del dominio. Por lo tanto, el producto de sumas est en su forma estndar. Mintrmino: Es un trmino de producto con n literales en el cual hay n variables. De n variables obtenemos 2n mintrminos. Ejemplo de mintrminos de 3 variables: XY.Z, X.Y X.Y.Z, X.Y.Z, X.Y.Z, X.Y.Z, X.Y.Z, X.Y.Z. (Ver tabla 9.). Maxtrmino: Es un trmino de suma con n literales en el cual hay n variables. De n v ariables obtenemos 2n maxtrminos. (Ver tabla 9.). Ejemplo de maxtrminos de 3 varia bles: X+Y+Z, X+Y+Z, X+Y+Z, X+Y+Z, X+Y+Z, X+Y+Z, X+Y+Z, X+Y+Z. (Ver tabla 2.2.1.). Los mtodos existentes para sintetizar circuitos lgicos son: Suma de productos (SDP). Producto de sumas (PDS). Mapas de Karnaugh. Algoritmo d e Quine McCluskey.Diseo Digital para Ingeniera 34 a. Mtodo de Suma de Productos (SDP) La suma de productos de una funcin lgica es la suma de los mintrminos correspondientes a las lneas de la tabla de verdad para las que la funcin produce una salida igual a 1. La funcin obtenida es la suma de prod uctos. Ejemplo Obtener la suma de productos para la funcin lgica de la tabla 10. Ln ea 0 1 2 3 4 5 6 7 A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 Funcin de salida F1 0 0 1 0 1 1 0 1 Tabla 10. Tabla de verdad para la funcin lgica F1 La funcin puede ser expresada con formando un trmino mnimo por cada combinacin de variables que producen un 1 en la f uncin para luego obtener la suma de todos los trminos. La funcin lgica para la tabla 2.3.1 se determina expresando las combinaciones 010, 100, 101 y 111 como A'BC', AB 'C', AB'C y ABC: F1= A,B,C( 2,4,5,7)= A'BC' + AB'C' + AB'C + ABC. Cada mintrmino de la funcin anterior representa una compuerta AND de tres entradas y la implementacin de la funcin es posible a travs de la aplicacin de la operacin OR a las salidas de las cuatro compuertas AND. Por tanto, el nmero total de compuer tas AND depender del total de mintrminos de la expresin. El circuito se muestra en la figura 27. Figura 27. Circuito lgico para la funcin lgica F1. En una suma de productos se cump le la igualdad de la funcin al valor lgico 1 si al menos uno de sus trminos product os es igual a 1.Diseo Digital para Ingeniera 35 Ejemplo Obtener la suma de productos para la funcin lgica de la tabla 11. A 0 0 1 1 B 0 1 0 1 F2 0 1 1 0 Tabla 11. Tabla de verdad de la funcin F2. En la tabla de verdad existen dos cond iciones para las cuales la salida es 1. Estas son las siguientes: 1. La primera se presenta cuando A es Bajo(0) y B es Alto(1). El resultado 1 de esta condicin s e puede expresar como el producto lgico: AB 2. La segunda condicin se presenta cuand o A es 1 y B es 0. Esta condicin ocasiona un resultado 1, si el producto lgico es: AB Como cualquiera de estas dos (2) condiciones hace que la salida sea 1, entonce s la funcin lgica que los representa es la suma lgica de los productos anteriores: F2= AB + AB = A B La representacin de la funcin anterior con compuertas OR y AND se muestra en la fi gura 28. Figura 28. Funcin F2 utilizando compuertas AND Y OR Esta funcin corresponde a la f uncin OR exclusiva, cuya compuerta se representa en la figura 11.Diseo Digital para Ingeniera 36 Ejemplo Obtener la funcin SDP para la funcin lgica de la tabla 12. Simplificar la f uncin y dibujarla. A B F3 0 0 1 1 0 1 0 1 1 0 0 1 Tabla 12. Tabla de verdad de la funcin F3 Utilizando suma de productos para las ln eas 1 y 4 de la tabla se obtiene, F3=A'B'+ AB, simplificando F3=(A+B) + AB F3= (A B)' El circuito lgico de la funcin anterior se muestra en la figura 29. Figura 29. Funcin F3 utilizando compuertas AND, NOR y OR. El smbolo lgico de la com puerta NEXOR - Se muestra en la figura 14. Conversin de una expresin lgica a format o de suma de productos La metodologa empleada en la transformacin de una suma de p roductos a su forma estndar se basa en el teorema 6, que establece que una variab le sumada con su complemento es siempre igual a 1; A + A' = 1. Los pasos son los siguientes: 1. Los trminos producto que no contengan la(s) variable(s) del domin io, multiplicarlos por un trmino formado por dicha variable ms el complemento de l a misma (teorema 6). 2. Repetir el paso 1 para todos los trminos de la expresin qu e no contengan todas las variables (o sus complementos) del dominio. Resolver lo s trminos intervenidos. Ejemplo Convertir la expresin booleana AB.C' + BC + A' a su forma estndar. El dominio de la expresin es el conjunto de variables A, B y C. Se observa la falta de formato estndar para el segundo y tercer trmino producto. Sobr e ellos se aplicar el procedimiento, para luego volver a agrupar toda la expresin:Diseo Digital para Ingeniera 37 Trmino BC BC = BC (A+A') = ABC + A'BC Trmino A A' = A'(C+C') = A'C+A'C' ; la exp ne el formato estndar, entonces multiplicamos cada trmino por (B+B') A'C(B+B') +A'C'(B +B') = A'BC + A'B'C + A'BC' + A'B'C' La expresin en su formato estndar es: AB.C' + ABC + A'BC + A'BC + A'B'C + A'BC' + A'B'C' b. Mtodo de producto de sumas (PDS) e sumas de una funcin lgica es la multiplicacin de los maxtrminos correspondientes a las lneas de la tabla de verdad para las que la funcin produce una salida igual a 0. La funcin obtenida es el producto de sumas. Ejemplo Obtener el producto de su mas para la funcin lgica de la tabla 13. Rengln o lnea 0 1 2 3 4 5 6 7 A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C Funcin de salida F4 0 0 1 0 0 1 1 0 0 0 1 1 0 1 1 1 Tabla 13. Tabla de verdad para la funcin lgica F4 La funcin puede ser expresada con formando un trmino mximo para cada combinacin de variables que producen un 0 en la funcin y luego obtener el producto de todos los trminos. La funcin lgica para la tab la 2.3.4 se determina expresando las combinaciones 000, 001, 011 y 110 como (A+B +C),(A+B+C'),(A+B'+C') y (A'+B+C). La funcin lgica es la siguiente: F4= A,B,C( 0,1,3,4)= (A+B+C)(A+B+C')(A+B'+C')(A'+B+C). Cada maxtrmino de la funcin anterior representa una compuerta OR de tres entradas y la implementacin de la funcin es posible a travs de la aplicacin de la operacin AND a las salidas de las cuatro compuertas AND. Por tanto, el nmero total de compuer tas AND depender del total de mintrminos de la expresin. El circuito se muestra en la figura 30.Diseo Digital para Ingeniera 38 Figura 30. Circuito lgico para la funcin lgica F4 Un producto de sumas es igual a 0 si al menos uno de los trminos suma es igual a 0. Ejemplo Obtener el producto de sumas para la funcin lgica de la tabla 14. A 0 0 1 1 B 0 1 0 1 F5 0 1 1 0Tabla 14. Tabla de verdad de la funcin EXOR Considere el complemento de la funcin de Boole F5. Este puede obtenerse de la tabla 14. Formando un trmino mnimo por cad a combinacin que produce un cero y luego haciendo la suma de los trminos. El compl emento de F5 se expresa as: F5' = A'B' + AB La expresin F5 se obtiene la negar F5': F5 = (F5')' = (A'B' + AB)' =(A'B')'(AB)' = [(A')'+(B')'](A'+B') = (A+B)(A'+B') Si cual uiera de los trminos del PDS es cero, la funcin es cero. De los 2 mtodos anteriores , se pueden escoger algunos criterios para aplicar un mtodo u otro, siendo estos los siguientes: Si en la ltima columna de la tabla de verdad, o sea en la columna que indica los resultados, s predominan los ceros es ms conveniente utilizar las suma de producto s. Si en la columna que indica los resultados, predominan los unos, es ms conveni ente utilizar el mtodo del producto de sumas.Diseo Digital para Ingeniera 39 c. Mapas de Karnaugh Un mapa de Karnaugh es una representacin grfica de una funcin lgica a partir de una tabla de verdad. El nmero de celdas del mapa es igual al nmer o de combinaciones que se pueden obtener con las variables de entrada. El Mapa d e Karnaugh representa la misma tabla de verdad a travs de una matriz, en la cual, en la primera fila y la primera columna se indican las posibles combinaciones d e las variables. Los mapas se pueden utilizar para 2, 3, 4 y 5 variables.Figura 31. Mapa de Karnaugh para 2, 3 y 4 variables. Analicemos el mapa para cua tro variables, las dos primeras columnas (columnas adyacentes) difieren slo en la variable d, y c permanece sin cambio, en la segunda y tercera columna (columnas adyacentes) cambia c, y d permanece sin cambio, ocurre lo mismo en las filas. E n general se dice que... Dos columnas o filas adyacentes slo pueden diferir en el estado de una de sus variables Observa tambin que segn lo dicho anteriormente la primer columna con la ltima seran adyacentes, al igual que la primer fila y la ltim a, ya que, slo difieren en una de sus variables. Mapa de Karnaugh empleando Suma de Productos (SDP) La simplificacin de expresiones lgicas mediante el mapa de Karn augh utiliza un mtodo grfico basado en la Suma de Productos. Mapa de Karnaugh de t res variables El mapa de Karnaugh se construye a partir de la tabla de verdad de la funcin lgica. El mapa por medio de una matriz de 8 celdas, representa los ocho mintrminos posibles que se pueden obtener con tres variables, en un arreglo de u na matriz de 2x4. Por tanto, la primera fila contiene el primer valor posible (" 0") y la segunda fila el valor ("1"). Las variables 2 y 3 se agrupan por columna y se distribuyen en las cuatro columnas de acuerdo a las combinaciones posibles para obtener los mintrminos requeridos. Sus valores son 00, 01, 10 y 11. Por eje mplo, la celda m2 corresponde al mintrmino 2, ubicado en la fila 0 y la columna 1 0. La unin de estos dos nmeros da el nmero 010, cuyo equivalente es el trmino ABC e imal 2. La tabla 15. Muestra el mapa de Karnaugh para 3 variables. Lnea A B C Min trmino Mintrmino Funcin deDiseo Digital para Ingeniera 40 mx 0 1 2 3 4 5 6 7 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 ABC ABC ABC A m3 m4 m5 m6 m7 Salida F(0,0,0) F(0,0,1) F(0,1,0) F(0,1,1) F(1,0,0) F(1,0,1) F(1, 1,0) F(1,1,1) (a) (b) Tabla 15. Mapa de tres variables (c) La caracterstica de ordenamiento de un mapa de Karnaugh radica en el cambio de un solo BIT en los trminos de las celdas adyacentes de filas y columnas. En la tabl a 15. Las entradas BC se colocan secuencialmente, cambiando cada vez una sola va riable, por eso resulta el orden: 00, 01, 11 y 10. En la interactividad 2.4.1., la pulsacin de cada cuadro activa el mintrmino correspondiente. Por ejemplo, la va riable C est negada en m4 y m5 no lo est, mientras que A y B no cambia. Las celdas de los bordes superior e inferior e izquierdo y derecho tambin cumplen esta cond icin al agruparlas unas a otras. En el teorema 12 de la leccin 1, se demuestra que la suma de los trminos mnimos en celdas adyacentes pueden ser simplificadas en un trmino AND de dos literales. Por consiguiente, aplicando el teorema para los trmi nos m4 y m5 del mapa se tiene: m4 + m5 = ABC + ABC = AB(C+C) = AB Los trminos m4 y m6 se pueden asociar de la misma forma: m4 + m6 = ABC + ABC = AC(B+B) = AC Ejemplo Simplificar la funcin F1= (m3, m4, m5, m6, m7). F1 = (m3, m4, m5, m6, m7) = ABC + ABC+ ABC + ABC+ ABCDiseo Digital para Ingeniera 41 Aplicando el teorema 6 de la leccin 1 para el trmino ABC.F1 = (m3, m4, m5, m6, m7) = (m4, m5, m6, m7) + (m3, m7) = [ABC+ ABC + ABC+ A El primer trmino en la sumatoria es el grupo 1 y el segundo trmino corresponde al grupo 2. En un mapa de karnaugh, los mintrminos de cada grupo se relacionaran a tr avs de lazos independientes. Desarrollando la expresin, F1 = [AB(C+C) + AB(C+ C)] + [BC(A+A)]= AB(1) + AB(1) + BC(1) = A(B+B) + B El mapa se construye colocando un 1 en las celdas correspondientes a los mintrmin os presentes en la funcin de salida. Por ejemplo, para el trmino F(1,1,0)= ABC = 1 se situara un 1 en la celda 110. Para los mintrminos no presentes en la funcin se pon e un 0. Por ejemplo el trmino F(0,0,1)= AB'C = 0, ser una celda con valor 0 en la cel da 001. Despus de situar los unos en el mapa, se procede con la agrupacin de 1s, l a determinacin del trmino producto correspondiente a cada grupo y la suma de los tr minos producto obtenidos. La determinacin del trmino producto se realiza de acuerd o los siguientes criterios: 1. Una celda representa un mintrmino, dando como resu ltado un trmino de cuatro literales. 2. Dos celdas agrupadas pueden representar l a asociacin de dos mintrminos, dando como resultado un trmino de dos literales. 3. Cuatro celdas agrupadas pueden representar la asociacin de cuatro mintrminos, dand o como resultado un trmino de un literal. 4. Ocho celdas agrupadas representan un valor de funcin igual a 1.Diseo Digital Ejemplo Sea la mapa. La tabla 7 A 0 0 0 0 1 1para Ingeniera 42 funcin del ejemplo anterior, simplificarla por medio del mtodo del de verdad del ejemplo anterior es la siguiente, Lnea 0 1 2 3 4 5 6 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 Salida F 0 0 0 1 1 1 1Tabla 16. Tabla de verdad de la funcin F1. El mapa de Karnaugh se configura de ac uerdo a los mintrminos iguales a 1 y las celdas se agrupan tal como en la figura 32 Figura 32. Mapa de Karnaugh de la funcin F1. El primer grupo se forma con los min trminos m4, m5, m6 y m7 y el segundo grupo con los mintrminos m3 y m7. Del primer grupo resulta el trmino A, ya que, para las cuatro columnas de la tabla existen t ransiciones entre las variables B y C. El segundo grupo da como resultado el trmi no BC por el cambio existente en la variable A. En total, la funcin queda reducid a a la expresin: F1 = A + BC Mapa de Karnaugh de cuatro variables La construccin de un mapa de Karnaugh de 4 v ariables es similar al de 3 variables. La diferencia radica en el nmero de variab les de entrada. El mapa por medio de una matriz de 16 celdas, representa los 16 mintrminos posibles (24) que se pueden obtener con cuatro variables de entrada, e n un arreglo de 4 x 4. La disposicin de celdas en el mapa se muestra en la tabla 17.Diseo Digital para Ingeniera 43 Lnea 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 A 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 B 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 C 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 D 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 Mintrmino Mintrmino mx ABCD ABCD ABCD ABCD ABC m13 m14 m15 Funcin de Salida F(0,0,0,0) F(0,0,0,1) F(0,0,1,0) F(0,0,1,1) F(0,1,0 ,0) F(0,1,0,1) F(0,1,1,0) F(0,1,1,1) F(1,0,0,0) F(1,0,0,1) F(1,0,1,0) F(1,0,1,1) F(1,1,0,0) F(1,1,0,1) F(1,1,1,0) F(1,1,1,1) (a) (b) Tabla 17. Mapa de cuatro variables (c)Por ejemplo, la celda m9 corresponde al mintrmino 9, ubicado en la fila 10 y la c olumna 01. La unin de estos dos nmeros da el nmero 1001, cuyo equivalente es el trmi no ABCD - el decimal 9. La minimizacin por medio de un mapa de 4 variables se puede ef ctuar con las celdas adyacentes entre s y las celdas de los bordes que se pueden concatenar para reducir la expresin. Por ejemplo, m13 y m15 son celdas adyacentes as como m0, m8, m2 y m10.Diseo Digital para Ingeniera 44 El mapa se construye colocando un 1 en las celdas correspondientes a los mintrmin os presentes en la funcin de salida. Por ejemplo, para el trmino F(1,1,0,0)= ABCD = 1 e situara un 1 en la celda 1100. Para los mintrminos no presentes en la funcin se p one un 0. Por ejemplo el trmino F(1,1,1,1)= ABCD = 0, ser una celda con valor 0 en la celda 1111. Igual que en el mapa de 3 variables, se procede con la agrupacin de 1s, la determinacin del trmino producto correspondiente a cada grupo y la suma de los trminos producto obtenido. Las reglas para reducir trminos en un mapa de Karna ugh de 4 variables son las siguientes: 1. Una celda representa un mintrmino, dand o como resultado un trmino de cuatro literales. 2. Dos celdas agrupadas pueden re presentar la asociacin de dos mintrminos, dando como resultado un trmino de tres li terales. 3. Cuatro celdas agrupadas pueden representar la asociacin de cuatro min trminos, dando como resultado un trmino de dos literales. 4. Ocho celdas agrupadas pueden representar la asociacin de ocho mintrminos, dando como resultado un trmino de un literal. 5. Diecisis celdas agrupadas pueden representan un valor de funcin igual a 1. Ejemplo Simplquese la funcin de Boole F2= (m1, m3, m8, m10, m12, m14) Figura 33. Mapa de Karnaugh de la funcin F2. El primer grupo se forma con los min trminos m1 y m3 y el segundo grupo se forma con los mintrminos m8, m10 y m12, m14. Del primer grupo resulta el trmino ABD ya que en la columna 1 no se presentan cambio s para las variables A y B y se presenta transicin en la variable C en las column as 2 y 3. El segundo grupo da como resultado el trmino AD. La razn radica en la simp lificacin de la variable B en la tercera y cuarta fila y en la variable C en la p rimera y cuarta columna. Sumando los mintrminos obtenidos se obtiene la ecuacin si mplificada: F2 = ABD + ADDiseo Digital para Ingeniera 45 Mapas de Karnaugh empleando Producto de Sumas (PDS) La simplificacin de expresion es lgicas mediante el mapa de Karnaugh tambin es posible mediante el mtodo de produ cto de sumas. En este mtodo, cada celda representa un maxtrmino. La construccin del mapa es similar a la suma de productos. La diferencia radica en que cada celda representa un maxtrmino. Por ejemplo, la celda m2 corresponde al maxtrmino 2, ubic ado en la fila 0 y la columna 10. La unin de estos dos nmeros da el nmero 010, cuyo equivalente es el trmino A+B+C. La figura 34. Muestra el mapa de Karnaugh para 3 variables.Figura 34. Mapa de tres variables. La representacin de la funcin lgica se hace simp lemente copiando los ceros de la tabla de verdad en las celdas del mapa. Este mto do es ms apropiado cuando en la columna de resultados de la tabla de verdad predo minan los ceros. Ejemplo Utilizar el mapa de Karnaugh para minimizar el producto de sumas, F3 = (A+B+C)(A+B+C)(A+B+C)(A+B+C) Los maxtrminos se trasladan a cada una d as celdas del mapa de Karnaugh y las celdas se agrupan tal como en la figura 35. Figura 35. Mapa de Karnaugh de la funcin F3 El trmino suma para cada grupo se mues tra en la figura y la suma de productos resultante es:F3 = C Ejemplo Utilizar el mapa de Karnaugh para minimizar el producto de sumas, F4 = (A+B+C+D)(A+B+C)(A+B+C+D)(A+B+C+D)(A+B+C+D)(A+B+C+D)(A+B+C+D)(A+Diseo Digital para Ingeniera 46 El segundo trmino tiene que ampliarse a (A+B+C+D)(A+B+C+D). La funcin completa se pasa al mapa de karnaugh mostrado en la figura 36. Figura 36. Mapa de Karnaugh de la funcin F4 El trmino suma para cada grupo se mues tra en la figura 2.4.5. y el producto de sumas resultante es: F4 = (A+C+D)(B'+D')(A'+D') Condiciones de No Importa Hasta el momento se ha asumido que la funcin es igual a 0 en los casos donde la funcin no es igual a 1. En algunas aplicaciones esta sup osicin no es siempre verdadera ya que existen combinaciones de entrada que no pre sentan. En un mapa de Karnaugh estas combinaciones de entrada sirven de herramie nta para simplificar la funcin y su representacin se hace por medio de una X en la celda del mapa. Segn la agrupacin que convenga se asume un valor de 1 0 para la X con el fin de obtener la expresin ms simple. Ejemplo Simplificar la funcin de Bool e F5 = (m0, m4, m7, m9) con condiciones de importa, NI = (m1, m5, m11, m14). Los mintrminos se marcan con un 1, las condiciones de no importa con una X y las celdas restantes con 0. El mapa de Karnaugh de la funcin F5 se muestra en la figu ra 37.Diseo Digital para Ingeniera 47 Figura 37. Mapa de Karnaugh de la funcin F5 En suma de productos obtenemos, F5 = ACD + A'BC + ABCD + AB'D d. Algoritmo de Quine McCluskey El empleo del mapa eniente cuando la funcin a minimizar no contiene ms de cinco o seis variables. En estos casos, empleamos un procedimiento sistemtico, llamado el algoritmo de QuineM cCluskey, el cual produce una expresin normalizada y simplificada. El algoritmo d ebe obedecer a un conjunto de pasos que se vern a travs de un ejemplo. Ejemplo Sim plificar la funcin de Boole usando el algoritmo de Quine-McCluskey.F1 = (m1, m2, m3, m6, m7, m8, m9, m10, m15) ABCD + ABCD+ ABCD + ABCD+ 1. Enumerar en una tabla todos los mintrminos en forma binaria, organizados segn e l nmero de unos que contenga. La aplicacin de este paso se muestra en la tabla 18. Mintrminos 1 2 8 3 6 9 10 7 15 A B C D 0 0 0 1 0 0 1 0 1 0 0 0 0 0 1 1 0 1 1 0 1 0 0 1 1 0 1 0 0 1 1 1 1 1 1 1 Grupo Grupo 1 Grupo 2 Grupo 3 Grupo 4 Tabla 18. Mintrminos agrupados segn la cantidad de unosDiseo Digital para Ingeniera 48 2. Entre los grupos adyacentes buscar los mintrminos que slo difieren en un bit en la misma posicin, para hallar los primeros implicantes primos. La metodologa cons iste en comparar el primer mintrmino con el resto de los trminos del segundo grupo . As, los trminos del segundo grupo se comparan con los mintrminos del grupo siguie nte. De la forma anterior, se procede con los dems mintrminos de los dems grupos. L os mintrminos utilizados se les pone una marca ( ) con el fin de ir diferenciando los trminos utilizados y la variable apareada en el proceso se reemplaza con un g uin para denotar la eliminacin de la variable. Los trminos no marcados en la tabla son los primeros implicantes primos (PIX). Los mintrminos utilizados se les pone una marca ( ) con el fin de ir diferenciando los trminos utilizados y la variable apareada en el proceso anterior se reemplaza con un guin para denotar la eliminac in de la variable. Mintrmino 1 2 8 3 6 9 10 7 15 A 0 0 1 0 0 1 1 0 1 B 0 0 0 0 1 C 0 1 0 1 1 0 1 1 1 D Mintrmino A B C D PIx Mintrmino A B C D PIx 1 13 0 0 - 1 PI2 26 - 3-7 0 - 1 - PI1 0 19 - 0 0 1 PI3 2-3 - 6-7 0 - 1 0 23 0 0 1 1 26 0 - 1 0 0 210 0 1 0 PI4 1 89 1 0 0 - PI5 0 8-10 1 0 - 0 PI6 1 37 0 - 1 1 1 67 0 1 1 7-15 - 1 1 1 PI7 Tabla 19. Implicantes primos de la funcin F1 3. Construir una tabla que enumere l os implicantes primos y los mintrminos contenidos por cada implicante primo. La l etra X en la tabla 20 indica el mintrmino contenido en cada implicado por fila. P or ejemplo, en la tabla se observa en el primer rengln los mintrminos 2, 3, 6 y 7 para el primer implicante primo. El resto de la tabla se construye de forma simi lar. Implicante 1 2 3 6 7 8 9 10 15 Primo * PI1 XXXX PI2 X X PI3 X X PI4 X X PI5 XX PI6 X X * PI7 X X Tabla 20. Seleccin de implicantes primos esencialesDiseo Digital para Ingeniera 49 En la tabla se seleccionan las columnas de los mintrminos que contengan solamente una cruz. En este ejemplo, hay dos mintrminos cuyas columnas tienen una sola cru z: 6 y 15. Es decir, la seleccin del primer implicado PI1 (AC) garantiza que el trmi no mnimo 6 est incluido en la funcin. De la misma forma, el trmino mnimo 7 est cubiert o por el primer implicado PI7 (A'BCD). Los primeros implicados que cubren los mintrm inos con una sola cruz, se llaman primeros implicados esenciales (en la tabla se encuentran marcados con un asterisco) y son indispensables en la construccin de la funcin. 4. Seleccionar en cada columna los mintrminos que estn cubiertos por los primeros implicados esenciales. Por ejemplo, el primer implicado esencial * PI1 (AC) cubre los mintrminos 2, 3, 6 y 7. De la misma forma, el primer implicado esen cial *PI7 (A'BCD) cubre los mintrminos 7 y 15. Hasta el momento la seleccin de primer os implicados cubre los mintrminos 2, 3, 6, 7 y 15 excepto 1, 8, 9 y 10. Estos trm inos mnimos deben ser seleccionados por medio de otros primeros implicados esenci ales. En la tabla 2.5., la seleccin de los primeros implicados PI3 y PI6 garantiz a el cubrimiento de los trminos mnimos 1, 8, 9 y 10. En la tabla 21 se muestra el proceso de seleccin. Implicante Primo 1 8 9 10 PI2 X *PI3 X X PI4 X PI5 X X *PI6 X X Tabla 21. Seleccin de primeros implicados esenciales La funcin simplificada se obtiene de la suma de los primeros implicados hallados: F= PI1 + PI3 +PI6 + PI7 F= (0-1-) + (-001) + (10-0) + (-111) F = A'C + BCD + ABD + BCDDiseo Digital para Ingeniera 50 3. Circuitos Lgicos Combinacionales Los circuitos lgicos se dividen en combinacion ales y secuenciales. Los circuitos combinacionales consisten en variables de ent rada, compuertas lgicas y variables de salida que cumplen funciones intermedias d e mediana escala de integracin. El nivel de complejidad de los sistemas combinaci onales puede llegar al caso de millones de entradas, dispositivos, interconexion es y salidas. La comprensin de estos circuitos se hace por medio de la divisin en subsistemas o estructuras ms simples. Hay esencialmente tres tipos de funciones e n el diseo de circuitos lgicos combinacionales: a. Funciones aritmtico lgicas (ALU): Encargados de realizar operaciones locales entre dos datos de n bits. (Sumadore s, restadores, multiplicadores y operaciones lgicas bit a bit). b. Funciones de r uta de datos: Guan el trfico de datos e instrucciones entre las distintas partes d e un sistema de clculo (de memoria a unidad aritmtica, etc,..). Su clave es el carc ter controlado del movimiento a travs de compuertas que se abren o cierran de for ma sincrnica, en general, de acuerdo con pulsos de un reloj. (multiplexores, demu ltiplexores). c. Circuitos cambiadores de cdigo: Para cada tipo de proceso existe una representacin digital de la informacin que es ms adecuada que otras. Su ejempl o ms general es el de las memorias de solo lectura (ROM), que son en realidad cir cuitos que sintetizan funciones mltiples de forma que cada bit de la palabra de s alida puede ser una funcin lgica cualquiera de todos los bits de entrada. 3.1. Cir cuitos Aritmticos El diseo de sistemas digitales involucra el manejo de operacione s aritmticas. A continuacin se implementarn los circuitos de suma y resta de nmeros binarios. La suma o adicin binaria es anloga a la de los nmeros decimales. La difer encia radica en que en los nmeros binarios se produce un acarreo (carry) cuando l a suma excede de uno mientras en decimal se produce un acarreo cuando la suma ex cede de nueve(9). Del grfico de la figura 1 podemos sacar las siguientes conclusi ones: 1. Los nmeros o sumandos se suman en paralelo o en columnas, colocando un nm ero encima del otro. Todos los nmeros bajo la misma columna tienen el mismo valor posicional. 2. 2. El orden de ubicacin de los nmeros no importa (propiedad conmut ativa). En la figura 38 se indican las reglas que rigen la suma binaria y en la figura 40 se muestra un circuito lgico llamado semisumador, que suma 2 bits (A y B) que genera un bit de suma y un bit de acarreo cuando este se produce.Diseo Digital para Ingeniera 51 Figura 38. Reglas para la suma binaria La resta o sustraccin de nmeros binarios es similar a los nmeros decimales. La diferencia radica en que, en binario, cuando el minuendo es menor que el sustraendo, se produce un prstamo o borrow de 2, mien tras que en decimal se produce un prstamo de 10. Al igual que en la suma, el proc eso de resta binaria, se inicia en la columna correspondiente a la de los dgitos menos significativos. En la figura 39 se indican las reglas que rigen la resta b inaria. Figura 39. Reglas para la resta binaria Semisumador: La operacin de un Semisumado r conforme a las reglas de la suma binaria mostradas en la figura 38 se puede si ntetizar mediante las siguientes 2 operaciones booleanas: =A(xor)B (suma) Co=AB (acarreo) Para realizar una suma binaria donde be implementar un circuito que tenga so del sumador completo (Figura 42). y B son distintas. El bit de acarreo Por consiguiente, la salida S puede AB + AB = A B se tenga presente un carry de entrada se de presente esta nueva variante; como es el ca El bit de suma es 1, slo si las variables A Co es 0 a no ser que ambas entradas sean 1. expresarse en trminos de la operacin EXOR: =Figura 40. Smbolo y Circuito Lgico SemisumadorDiseo Digital para Ingeniera 52 Sumador Completo: El sumador completo acepta dos bits y un acarreo de entrada y genera una suma de salida junto con el acarreo de salida. El sumador completo ti ene 3 entradas que se suman y son: A, B, y Cin (entrada de arrastre), y las sali das habituales y Co (suma y salida de arrastre) La tabla 22 muestra la tabla de verdad del sumador completo. Las entradas A, B y Cin denotan al primer sumando, el segundo sumando y el acarreo de entrada. Las salidas S y Cout representan a l a suma y el acarreo de salida. A B Cin Cout 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 0 0 0 1 0 1 1 1 0 1 1 0 1 0 0 1 Tabla 22. Tabla de Verdad del Sumador Completo = ABCin + ABCin + ABCin + ABCin = Cin(AB + AB) + Cin (AB + AB) + B)(A + B)) = Cin(AB + AB) + Cin ((AB)(AB)) = Cin(AB + AB) + Cin ( El mapa de karnaugh de la salida Cout se muestra en la figura 41.Diseo Digital para Ingeniera 53 Figura 41. Mapa para la salida Cout de un Sumador Completo. La salida Cout est da da por: Cout = AB + ACin + BCin Figura 42. Smbolo y Circuito Lgico Sumador Completo Semirrestador: La operacin de u n Semirrestador como el mostrado en la figura 43 se puede resumir mediante las e cuaciones booleanas: Di=AB(neg)+A(neg)B= A(xor)B (diferencia) Bi=A(neg).B (borrow) El circuito tiene dos entradas binarias y dos salidas. La figura 43 muestra el smbolo lgico y el circuito las entradas son A(minuendo) y B(sustraendo) y la salid a Di corresponde a la diferencia y Bo al prstamo de salida. Figura 43. Smbolo y Circuito Lgico Semirrestador Si A B, existen tres posibilidades 0-0=0, 1-0=0 y 11=1. El resultado es el bit de diferencia Di. Si AB, A=B y A