Minimización mediante el mapa de Karnaugh Mario Medina. mariomedina@udec.cl Minimización lógica Minimización lógica: conjunto de técnicas para obtener la representación más simple de una expresión booleana iversos criterios de minimización Métodos de minimización Mapas de Karnaugh-Veitch Método de Quine-Mcluskey Método de Espresso Mario Medina riterios de minimización Ejemplo Minimizar Tamañode un circuito onsumo de potencia isipación de potencia osto Errores de operación Número de compuertas Tipo de compuertas omplejidadde compuertas lógicas Númerode nivelesde compuertas en cascada Reducir Número de conexiones entre puertas Retardoglobal de un circuito Número de literales Maximizar Reutilizaciónde bloques Otros Sea Z (,,) definidaen la siguiente tabla de verdad y sus formasequivalentesz, Z 2, Z 3 Z = + + + Z = + + Z2 = T + T ; T = Z3 = () Z Ejemplo Z: EstructuratípicaSoPde 2 niveles Z : Estructuralmentesimilar a Z (SoP) No normalizados Menos literales y puertas Z 2 : Implementaciónmultinivel Puertasmássimples (menornúmerode entradas) Mayor retardo de salida amino crítico N-NOT-N-OR Z 3 : Reduce el númerototal de puertas UsaunapuertaOR, quepuedeser máslenta Minimización lógica No esposibleminimizartodoslos criteriosal mismo tiempo Técnicas tradicionales de minimización Se encargan de minimizar el retardo del circuito resultante expensasde aumentarel númeroy complejidadde los productos ó sumas Minimización en 2 niveles Suma-de-productos(SoP) Producto-de-sumas(PoS) Mario Medina.
Motivación para los métodos de minimización lógica Usar reglas del álgebra binaria para reducir expresiones booleanas No hay algoritmos que aseguren llegar a una solución mínima Resultadodependede la intuicióny experienciadel diseñador Problemapuedeser máscomplicadoqueel original Multiplicar una expresión por (+ ) y reducir umenta probabilidad de error Proceso tedioso, largo y manual ase para los métodos de simplificación Sean lasfuncionesf y G definidascomo F = +, y G = + La simplificación nos lleva a F = ( + ) = G = ( + ) = F La variable queapareceen forma negaday no negada es redundante y se puede eliminar G ase para los métodos de simplificación Método básico uscarrepetidamentesubconjuntosde 2 términos que difieran sólo en una variable Eliminar la redundancia Proceso manual es engorroso Métodos ordenan la tabla de verdad para reconocer fácilmente patrones a simplificar Gráficamente(Karnaugh) En forma tabular (Quine-Mcluskey) Mapa de Karnaugh Representaciónmatricialde la tablade verdad de una función 2 3 2 6 4 3 7 5 3 2 4 5 7 6 2 3 5 4 8 9 Mapa de Karnaugh El númeroal interior de cadacelda representacióndecimal parala combinaciónde entradas asociada adaceldaesun minterm(o maxterm) La celda almacena la salida asociada al minterm Los índicesse formanmedianteun código adyacente(gray) 2 celdas adyacentes tienen distancia La últimacolumna(fila) esadyacentecon la primera columna(fila) eldas adyacentes dyacencia del mapa permite visualizar grupos de celdas contiguas a agrupar En un mapade n, cadaceldaes lógicamente adyacente a otras n celdas Se consideraadyacenciahorizontal y vertical, pero no diagonal Mario Medina. 2
eldas adyacentes en mapa de Karnaugh orrespondencia K-map y minitérminos (3 ) orrespondencia K-map y minitérminos (4 ) Mapa de Karnaugh Mapa de Karnaugh Expresaren un K-Map la función F(,,, ) = m(4, 5, 6, 7, 9,,, 3) Equivalente a la función F(,,, ) = + + Mapa de Karnaugh Sea F(, Y, Z, W) = Y + WZ + YZ W Y ZW YZ W estáexpresadoen forma canónicay genera sólo un minterm WZ genera 2 minterms ( WYZ + WY Z) Y genera 4 minterms (YW Z + YWZ + YW Z + YWZ) Mario Medina. 3
Mapas de Karnaugh En general, paraun funciónde n, un términoproductono normalizadode n -r genera 2 r minitérminos Si n = 4, Términoproductode 4 da minterm Términoproductode 3 da2 minterms Términoproductode 2 da4 minterms Términoproductode variable da8 minterms Representación alternativa mapas de Karnaugh Indicarsólolasfilasy columnasdondelas valen Mapa de 4 como diagrama de Venn Un mapa de Karnaugh puede representarse tambiéncomoun diagrama de Venn iagramade Venn parafunciónde 4 írculo y ocho centrales se traslapan Subcubos Subcubo: un conjuntode 2 r celdasde valor o (paramintermso maxterms, respectivamente), en el que cada celda es lógicamenteadyacentea otrasrceldasde valor (o ) El términoproducto(o suma) quese obtienea partirde un subcubode 2 r celdasse componede (n-r) literales. Sóloaparecenlas queno cambianen todas las celdas Ejemplo de simplificación de funciones Usando álgebra booleana F(,,, ) = + + + F(,,, ) = + F(,,, ) = En el mapa, se puedeverla agrupación óptima de celdas (minterms) Ejemplo de simplificación de funciones Sea el siguientemapade Karnaugh La agrupación central es redundante eldas ya están cubiertas por otros términos Expresión mínima tiene sólo 2 productos F(,,, ) = + emostracióngráficadel teorema del consenso! Mario Medina. 4
Ejemplo de simplificación de funciones Sea la función F(,,, ) = m(, 2, 3, 5, 6, 7, 8,,, 4, 5) La función equivalente es F(,,, ) = + + Se requiere encontrar el menor número de subcubos que cubrantodaslassalidas (ó) Ejemplos de simplificación Ejemplos de simplificación Ejemplos de simplificación efiniciones Implicante de una función: elemento o grupo de elementosquepuedencombinarseen un mapade Karnaughy quehacen la función Implicanteprimario:implicantequeno puedecombinarsecon, o no puedeser cubierto por otro implicante de la función Implicante primario esencial: implicante primario que contiene celdas no cubiertas por ningún otro implicante primario. Minimización de funciones usando el Mapa de Karnaugh Objetivos de la minimización onvertir todos los implicantes en implicantes primarios ubrirtodoslos s (o s) utilizandoel menor número posible de implicantes primarios Todos los implicantes primarios esenciales deben estar en el resultado final La minimización no es necesariamente única Mario Medina. 5
Implicantes primarios y esenciales Implicantes primarios y esenciales 6 implicantes primarios,,,,, 2 implicantes esenciales, Expresión mínima + + 4 implicantes primarios,,, 3 implicantes esenciales,, Los implicantes esenciales bastan para cubrir el mapa Expresión mínima única + + Implicantes primarios y esenciales Simplificación con maxterms 5 implicantes primarios,,,, 4 implicantes esenciales,,, Los implicantes esenciales bastan para cubrir el mapa Expresión mínima única + + + Mismo procedimiento pero agrupando los s La formaciónde un maxterma partirde los valores o de lasentradasesinversaa la del minterm Equivalente a agrupar los s para formar términos producto de F, y luego aplicar emorgan para obtener la expresión en PoS Simplificación con maxterms F = ( + + ) ( + + ) ( + + ) onsiderando los s como los minterms de F F = + + F = + + F = ( + + ) ( + + ) ( + + ) ondiciones superfluas En algunos problemas pueden existir combinaciones de entrada que por definición no pueden ocurrir unque en la implementación la salida asumirá un valor lógico, al diseñadorno le importacual sea ésta y entonces no queda especificada. Porejemplo, un sumadorcon entradas 842 tendrásólo combinacionesde entradasválidasde las 6 posibles. Esto implica que las salidas asociadas a las entradas al pueden tener cualquier valor, pues esas entradas nunca ocurrirán. Mario Medina. 6
Ejercicio: incremento en Funciones con condiciones superfluas Sea una función que recibe como entrada un dígitoen 842 y comosalidagenera el dígito de entrada incrementadoen en forma circular F W Y Z W Y Z Salidasasumenvalor paralas combinaciones de entrada que no importan. ondicionessuperfluas, opcionaleso indiferentes(don t care) Estas funciones se llaman incompletamente especificadas Ojo!! Los términos no correspondennia un nia un Un términosuperfluoesuna tantoen el mapa de F comoen el mapade F Funciones con condiciones superfluas Eventualmente, los valores superfluos toman un valor lógico definido por el diseñador Generalmentese les asignaun estadoinactivo, pero esto no simplifica el diseño La asignación adecuada de valores de salida definidos a las condiciones superfluas pueden simplificar el diseño. Por ejemplo, en el ejemplo anterior, la función de salida Z podría implementarse simplemente como ondiciones superfluas y K- Maps Los estados superfluos pueden ser tratados individualmentecomos o s con el fin de ayudar en el proceso de minimización Formación de subcubos de mayor orden F(,,, ) = m(,3,5,7,9) + d(6,2,3) Funciones con condiciones superfluas (minterms) Trataresta como simplifica el problema. Si tratamosesta como, podemosformar un subcubode orden2. F(,,,) = m(,3,5,7,9) + d(6,2,3) F = + (sin considerarlas) F = + (considerandolas) Funciones con condiciones superfluas (maxterms) Tratar esta como simplifica el problema Si tratamosesta como, podemosformar un subcubode orden3. Lo mismoocurresideseamosla expresiónmínimaen PoS (agrupandos): F = ( + ) En cadamapa, el términosuperfluodebeescogersecomo ó según convenga para minimizar la función Mario Medina. 7
Mapa de Karnaugh de 5 Se usan2 mapasde 4 y se dejauna variable afuera Estosmapasmuestranla posiciónde los minitérminos si se deja fuera la variable E 3 2 4 5 7 6 = 2 3 5 4 8 9 E 6 7 9 2 2 23 28 29 3 8 22 3 = 24 25 27 26 Mapa de Karnaugh de 5 Mapa de 5 ejamosvariable afuera = E + E+ + E Mapa de Karnaugh de 5 Mapa de Karnaugh de 5 E 3 4 = ( ) F(,,,,E) = m 2,5,7,8,,3,5,7,9,2,23,24,29,3 E 2 = F(,,,,E) = E + E + E + E 2 3 4 E = 4 2 8 5 3 9 3 7 5 2 6 4 E = 6 2 28 24 7 2 29 25 9 23 3 27 8 22 3 26 = E F(,,,,E) = m( 2,5,7,8,,3,5,7,9,2,23,24,29,3) F(,,,, E) = E + E + E + E E = Implicantes esenciales en mapa de 5 Representación espejo de mapa de 5 Mario Medina. 8
Representación alternativa iagramamuestra celdas adyacentes a minitérmino 5 Representación alternativa Representación alternativade un mapade 5 Triángulos superioresson adyacentes Mapa de Karnaugh de 6 = = = = 4 2 8 5 3 9 3 7 5 2 6 4 6 2 28 24 7 2 29 25 9 23 3 27 8 22 3 26 48 52 6 56 49 53 6 57 5 55 63 59 5 54 62 58 32 36 44 4 33 37 45 4 35 39 47 43 34 38 46 42 = = = = F(,,,,E,F) = 2,8,,8,24, m 26,34,37, 42,45, 5,53,58,6 Mapa de Karnaugh de 6 = = 3 2 32 33 35 34 4 5 7 6 36 37 39 38 = 2 3 5 4 44 45 47 46 8 9 4 4 43 42 6 7 9 8 48 49 5 5 2 2 23 22 52 53 55 54 = 28 29 3 3 6 6 63 62 24 25 27 26 56 57 59 58 Mapa de Karnaugh de 6 F(,,,,E,F) = 2,8,,8,24, m 26,34,37, 42, 45, 5,53,58,6 F(,,,,E,F) = + + F = = = Mapas de Karnaugh con en el mapa lternativapararepresentarmás aúnen un mapa eldasno almacenanvalores ó, sinoque almacenanexpresionescon queno estánen el mapa = Mario Medina. 9
Mapas de Karnaugh con en el mapa Ejemplo: representarla funciónf(,,, ) = + + + + ( ) en un mapade Karnaughde 3 El últimotérminoes redundante Mapas de Karnaugh con en el mapa Separamosla funciónanterior utilizando la variable y son independientedel valor de y son sólosi es es redundante Mapas de Karnaugh con en el mapa Si es, funciónse simplifica a Si es, funciónse simplificaa + Entonces, función F es F = + ( + ) Mario Medina.