06 algebraboole c

2,832 views
2,723 views

Published on

0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,832
On SlideShare
0
From Embeds
0
Number of Embeds
34
Actions
Shares
0
Downloads
102
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

06 algebraboole c

  1. 1. [ Sistemas Operativos ] Präsentation MIC3181 Algebra de Boole … continuación Eduardo Peña J. Edopena Microprocesadores Universidad de Magallanes Facultad de Ingeniería Departamento de Ingeniería en Computación
  2. 2. [ Algebra de Boole ] Präsentation Edopena Microprocesadores Indice Temario: Métodos de minimización Método mapas de Karnaugh Método tabular Quine McCluskey Información extraída de: http://www.cic.unb.br/docentes/jacobi/ensino/circuitos/DoisNiveis/sld001.htm
  3. 3. Suma de productos es una forma de representación de funciones booleanas constituida por operaciones lógicas o sobre un conjunto de términos formados por la operación. [ Algebra de Boole ] Edopena Microprocesadores Suma de Productos SUMA DE PRODUCTOS
  4. 4. El producto de sumas es otra forma de representación de funciones booleanas caracterizadas por la aplicación de operación sobre un conjunto de operaciones o sobre las entradas [ Algebra de Boole ] Edopena Microprocesadores Producto de Suma PRODUCTO DE SUMA
  5. 5. <ul><li>Un minterm es un término producto que vale 1 en al menos un punto del dominio de una función booleana. </li></ul><ul><li>Es definido por un producto (AND) donde cada variable aparece al menos una vez directa o complementada. </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Minterms MINTERMS
  6. 6. <ul><li>Un maxterm es un término suma que vale 0 en al menos un punto del dominio de la función. </li></ul><ul><li>Es determinado por una adición (OR) donde cada variable aparece al menos una vez, directa o complementada. </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Maxterms MAXTERMS
  7. 7. <ul><li>Una tabla de verdad es una firma que identifica inequívocamente una función booleanas. </li></ul><ul><li>Expresiones booleanas diferentes pueden representar una misma función booleana. </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Formas canónicas FORMAS CANÓNICAS
  8. 8. <ul><li>Las formas canónicas son representaciones únicas de funciones booleanas. </li></ul><ul><li>Ej. Una suma de productos es una forma canónica. </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Formas canónicas FORMAS CANÓNICAS DE DOS NIVELES
  9. 9. <ul><li>Las formas canónicas son representaciones únicas de funciones booleanas. </li></ul><ul><li>Ej. Un producto de sumas es otra forma canónica. </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Formas canónicas
  10. 10. <ul><li>Notación para suma de minterms. </li></ul><ul><li>Notación para producto de maxterms. </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Formas canónicas
  11. 11. [ Algebra de Boole ] Edopena Microprocesadores SIMPLIFICACION DE SUMAS DE MINTERMS Formas canónicas
  12. 12. <ul><li>Es posible obtener un producto de maxterms a partir de una suma de minterms o viceversa aplicando De Morgan sobre el complemento de la función. </li></ul>[ Algebra de Boole ] Edopena Microprocesadores MINTERMS X MAXTERMS Formas canónicas
  13. 13. <ul><li>Estas son las funciones para las cuales algunas combinaciones de valores de entrada nunca ocurren. </li></ul><ul><li>Ej. Decodificador de display de 7 segmentos para dígitos BCD. </li></ul>[ Algebra de Boole ] Edopena Microprocesadores FUNCIONES INCOMPLETAS Funciones Incompletas
  14. 14. <ul><li>Las funciones incompletas mapean puntos del dominio de una función en tres valores posibles. </li></ul><ul><li>Los dominios de puntos donde F vale {0 , 1 X} son denominados, respectivamente, de: </li></ul><ul><li>F puede ser descrita definiendo dos de sus tres conjuntos. </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Funciones Incompletas
  15. 15. <ul><li>Manipulación Algebraica: </li></ul><ul><li>Difícil de determinar un orden y qué transformaciones aplicar. </li></ul><ul><li>Cómo sabes si se localizó una mejor solución. </li></ul><ul><li>Herramientas de auxilio: </li></ul><ul><li>No consiguen tratar problemas de forma exacta. </li></ul><ul><li>Se basan en heurísticas y criterios de costo. </li></ul>Métodos manuales, al menos para fines didácticos y funciones muy simples [ Algebra de Boole ] Edopena Microprocesadores Minimización lógica de dos niveles MINIMIZACIÓN LÓGICA DE DOS NIVELES
  16. 16. <ul><li>Idea base : Aplicación de distribución y complemento . </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Minimización lógica de dos niveles
  17. 17. <ul><li>Un espacio booleano n-dimensional puede ser visualizado espacialmente. </li></ul><ul><li>Los productos de literales son llamados cubos. </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Cubos CUBOS
  18. 18. <ul><li>Puntos adjacentes difieren en un bit. </li></ul><ul><li>Todos los puntos de la función están en una cara. </li></ul><ul><li>Y y Z varían mientras que X permanece inalterable: Y y Z pueden ser eliminados de la expresión. </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Cubos VISUALIZACIÓN DE CUBOS
  19. 19. <ul><li>Visualización del dominio de una función en forma matricial. </li></ul><ul><li>Puntos del dominio están dispuestos siguiendo el código Gray, pares adjacentes difieren en un bit. </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Mapas de Karnaugh MAPAS DE KARNAUGH
  20. 20. <ul><li>Los elementos extremos de las columnas y filas son adjacentes . </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Mapas de Karnaugh ADJACENCIA DEL MAPA DE KARNAUGH
  21. 21. <ul><li>El cubo obtenido es definido por las variables que no cambian de cara en todos sus minterms. </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Mapas de Karnaugh
  22. 22. <ul><li>La agrupación obtenida es definida por las variables que no cambian de cara en todos sus minterms. </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Mapas de Karnaugh
  23. 23. [ Algebra de Boole ] Edopena Microprocesadores Mapas de Karnaugh
  24. 24. [ Algebra de Boole ] Edopena Microprocesadores Mapas de Karnaugh COMPLEMENTO DE UNA FUNCIÓN
  25. 25. [ Algebra de Boole ] Edopena Microprocesadores Mapas de Karnaugh
  26. 26. [ Algebra de Boole ] Edopena Microprocesadores Mapas de Karnaugh KARNAUGH DE CUATRO VARIABLES
  27. 27. [ Algebra de Boole ] Edopena Microprocesadores Mapas de Karnaugh
  28. 28. <ul><li>Los puntos irrelevantes pueden ser considerados como un 1 o un 0 en el mapa de Karnaugh. </li></ul><ul><li>Son utilizados para formar agrupaciones mayores, simplificando una función. </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Mapas de Karnaugh MINIMIZACIÓN CON IRRELEVANTES
  29. 29. [ Algebra de Boole ] Edopena Microprocesadores Mapas de Karnaugh EJEMPLO COMPARADOR DE DOS BITS
  30. 30. [ Algebra de Boole ] Edopena Microprocesadores Mapas de Karnaugh EJEMPLO COMPARADOR DE DOS BITS
  31. 31. [ Algebra de Boole ] Edopena Microprocesadores Mapas de Karnaugh EJEMPLO COMPARADOR DE DOS BITS
  32. 32. <ul><li>La minimización de dos niveles busca obtener las sumas del producto con un número mínimo de productos y literales. </li></ul><ul><li>Minimizándose el número de productos se está reducido la altura de la implementación y, por consiguiente, su área. </li></ul><ul><li>Estando reducido el número de literales, se reduce el número de transistores de la implementación digital, lo que minimiza la potencia disipada. </li></ul><ul><li>Ej Sumador de 1 bit </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Mapas de Karnaugh MINIMIZACIÓN LÓGICA EN DOS NIVELES
  33. 33. <ul><li>Conceptos Básicos </li></ul><ul><li>Implicante: una agrupación c es un implicante de una función f si para todo vector x donde c(x) = 1, tenemos que f(x) = 1. O sea c  f </li></ul><ul><li>En álgebra Booleana “²” es una relación de orden parcial, análoga a relación &quot;está contenido en&quot; entre conjuntos. Puede ser definida como “un conjunto de minterms de c está contenido en f”. </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Mapas de Karnaugh
  34. 34. <ul><li>Conceptos Básicos </li></ul><ul><li>Implicante primo: es una agrupación que no está contenida en ninguna otra agrupación de la función (o, no puede ser mas expandido) </li></ul><ul><li>Implicante primo esencial: es un implicante primo que contiene al menos un minterm que no está contenido en ningún otro implicante de la función. </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Mapas de Karnaugh
  35. 35. <ul><li>Una cobertura de una función f y una suma de productos que contienen todos los minterms de f (cobre f) Una cobertura prima es aquella compuesta apenas por implicantes primos </li></ul><ul><li>Una cobertura irredundante es aquella en que ninguno de las dos agrupaciones puede ser removida sin alterar la función. </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Mapas de Karnaugh
  36. 36. Ejemplos [ Algebra de Boole ] Edopena Microprocesadores Mapas de Karnaugh
  37. 37. <ul><li>Seleccione un minterm m i de la función. </li></ul><ul><li>Expanda m i en todas las direcciones posibles, generando así todos los implicantes primos que cubren m i . </li></ul><ul><li>Repita los pasos anteriores para todos los minterms de la función, generando todos los implicantes primos posibles. </li></ul><ul><li>Identifique y separe los implicantes esenciales. Los minterms cubiertos por ellos pueden ser considerados como puntos irrelevantes. </li></ul><ul><li>Seleccione un conjunto mínimo de implicantes que cubra los minterms restantes. </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Mapas de Karnaugh COBERTURA MÍNIMA CON MAPA DE KARNAUGH
  38. 38. Ejemplo [ Algebra de Boole ] Edopena Microprocesadores Mapas de Karnaugh
  39. 39. Continuación Ejemplo [ Algebra de Boole ] Edopena Microprocesadores Mapas de Karnaugh
  40. 40. <ul><li>Tome los minterms de la función y expanda sucesivamente los minterms en todas direcciones posibles (variables en espacio Booleano). </li></ul><ul><li>Obtener así todos los implicantes primos de la función. </li></ul><ul><li>Seleccione un subconjunto que cubra la función que tenga un costo mínimo. </li></ul><ul><li>Detección y remoción de primos esenciales. </li></ul><ul><li>Dominancia de línea y de columna. </li></ul><ul><li>Branch and bound cuando no hay dominancia. </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Quine McClusky MÉTODO DE QUINE McCLUSKY
  41. 41. <ul><li>McCluskey: </li></ul><ul><li>Representar los implicantes en notación binaria : </li></ul><ul><li>X= {x1, x2, x3} </li></ul><ul><li>Tabular los implicantes en grupos de mismo peso (1's) para reducir el número de comparaciones . </li></ul>x 1 ·x 3 ' -> 1-0 x 3 -> --1 x 1 '·x 2 '·x 3 -> 001 [ Algebra de Boole ] Edopena Microprocesadores Quine McClusky
  42. 42. Expansión de minterms Ejemplo: F =  Expansión de los minterms de los implicantes. [ Algebra de Boole ] Edopena Microprocesadores Quine McClusky
  43. 43. Implicantes Primos: [ Algebra de Boole ] Edopena Microprocesadores Quine McClusky p6 = x 3 ·x 2 '·x 0 ' p4 = x 3 '·x 0 p2 = x 2 ·x 0 p7 = x 3 ·x 2 ·x 1 ' p5 = x 3 ·x 1 '·x 0 ' p3 = x 2 '·x 1 p1 = x 1 ·x 0
  44. 44. Cobertura de función [ Algebra de Boole ] Edopena Microprocesadores Quine McClusky
  45. 45. Cobertura de función <ul><li>Dominancia de Línea: si todos los minterms de una línea l x están contenidos en una línea l y , entonces l y domina a l x y l x puede ser removida de la tabla esto indica que el implicante p y cubre al implicante p x </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Quine McClusky
  46. 46. Cobertura de función <ul><li>Dominancia de columna : si todos los minterms de una columna c x están contenidos en una columna c y , entonces c y domina a c x y c y puede ser removida de la tabla cubriendo el minterm m x automáticamente se cubre m y </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Quine McClusky
  47. 47. <ul><li>Problemas con el método de Quine: </li></ul><ul><li>Computacionalmente es ineficiente </li></ul><ul><li>Genera todos los implicantes primos </li></ul><ul><li>Complejidad de: (3 ^ n)/n </li></ul><ul><li>Parte de los minterms de la función </li></ul><ul><li>Complejidad de: 2n-1 </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Quine McClusky CAD PARA MINIMIZACIÓN
  48. 48. <ul><li>Punto de partida: una suma de productos (no mintermos) </li></ul><ul><li>Respete iterativamente la secuencia de operaciones: </li></ul><ul><li>Expand: Expande los implicantes hasta su tamaño máximo </li></ul><ul><li>Extraer esenciale primos </li></ul><ul><li>Cobertura Irredundante: generar una cobertura irredundante </li></ul><ul><li>Reducir: reduzca los implicantes hasta su tamaño mínimo </li></ul><ul><li>Respete los pasos anteriores hasta no obtener ganancias </li></ul><ul><li>Last gasp: la inserción de un primo cualquiera no puede llevar a eliminación de dos primos de la cobertura </li></ul>[ Algebra de Boole ] Edopena Microprocesadores Resumen RESUMEN
  49. 49. [ Algebra de Boole ] Edopena Microprocesadores Resumen
  50. 50. [ Algebra de Boole ] Edopena Microprocesadores Resumen
  51. 51. [ Algebra de Boole ] Edopena Microprocesadores Resumen

×