ELO211: Sistemas Digitales TomásArredondo Vidal 1er...

33
6: Simplificación 1 ELO211: Sistemas Digitales Tomás Arredondo Vidal 1er Semestre – 2008 Este material está basado en: textos y material de apoyo: Contemporary Logic Design 1 st / 2 nd edition. Gaetano Borriello and Randy Katz. Prentice Hall, 1994, 2005 material del curso ELO211 del Prof. Leopoldo Silva material en el sitio http://es.wikipedia.org

Transcript of ELO211: Sistemas Digitales TomásArredondo Vidal 1er...

Page 1: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 1

ELO211: Sistemas Digitales

Tomás Arredondo Vidal1er Semestre – 2008

Este material está basado en:

❒ textos y material de apoyo: Contemporary Logic Design 1st / 2nd edition. Gaetano Borriello and Randy Katz. Prentice Hall, 1994, 2005

❒ material del curso ELO211 del Prof. Leopoldo Silva

❒ material en el sitio http://es.wikipedia.org

Page 2: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 2

6-Simplificación

6.1 Ejemplos en dos niveles

6.2 Simplificación en dos niveles

6.3 Algoritmos de simplificación

Page 3: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 3

Ejemplo: comparador de dos bits

mapa de Karnaugh de 4-variablespara cada una de las 3 funciones de output

LT

EQ

GT

A B < C D

A B = C D

A B > C D

AB

CD

N1

N2

A B C D LT EQ GT0 0 0 0 0 1 0

0 1 1 0 01 0 1 0 01 1 1 0 0

0 1 0 0 0 0 10 1 0 1 01 0 1 0 01 1 1 0 0

1 0 0 0 0 0 10 1 0 0 11 0 0 1 01 1 1 0 0

1 1 0 0 0 0 10 1 0 0 11 0 0 0 11 1 0 1 0

diagrama de bloquey

tabla verdad

Page 4: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 4

A' B' D + A' C + B' C D

B C' D' + A C' + A B D'

LT =

EQ =

GT =

K-mapa para EQK-mapa para LT K-mapa para GT

Ejemplo: comparador de dos bits (cont)

0 0

1 0

0 0

0 0D

A

1 1

1 1

0 1

0 0

B

C

1 0

0 1

0 0

0 0D

A

0 0

0 0

1 0

0 1

B

C

0 1

0 0

1 1

1 1D

A

0 0

0 0

0 0

1 0

B

C

= (A xnor C) • (B xnor D)

LT y GT son similares

A' B' C' D' + A' B C' D + A B C D + A B' C D’

Page 5: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 5

dos implementaciones alternativas deEQ con y sin XOR

XNOR se implementa con al mínimo 3 compuertas simples

A B C D

EQ

EQ

Ejemplo: comparador de dos bits (cont)

Page 6: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 6

diagrama en bloque y

tabla de verdad

mapa de Karnaugh de 4-variablespara cada una de las 4 funciones de output

A2 A1 B2 B1 P8 P4 P2 P10 0 0 0 0 0 0 0

0 1 0 0 0 01 0 0 0 0 01 1 0 0 0 0

0 1 0 0 0 0 0 00 1 0 0 0 11 0 0 0 1 01 1 0 0 1 1

1 0 0 0 0 0 0 00 1 0 0 1 01 0 0 1 0 01 1 0 1 1 0

1 1 0 0 0 0 0 00 1 0 0 1 11 0 0 1 1 01 1 1 0 0 1

Ejemplo: multiplicador de dos bits

P1

P2

P4

P8

A1

A2

B1

B2

Page 7: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 7

K-mapa de P8 K-mapa de P4

K-mapa de P2 K-mapa de P1

Ejemplo: multiplicador de dos bits (cont)

0 0

0 0

0 0

0 0B1

A2

0 0

0 0

0 1

1 1

A1

B2

0 0

0 1

0 0

1 0B1

A2

0 1

0 0

1 0

0 0

A1

B2

0 0

0 0

0 0

1 1B1

A2

0 1

0 1

0 1

1 0

A1

B2

0 0

0 0

0 0

0 0B1

A2

0 0

0 0

1 0

0 0

A1

B2 P8 = A2A1B2B1

P4 = A2B2B1'+ A2A1'B2

P2 = A2'A1B2+ A2B2’B1+ A2A1'B1+ A1B2B1’

P1 = A1B1

Page 8: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 8

I8 I4 I2 I1 O8 O4 O2 O10 0 0 0 0 0 0 10 0 0 1 0 0 1 00 0 1 0 0 0 1 10 0 1 1 0 1 0 00 1 0 0 0 1 0 10 1 0 1 0 1 1 00 1 1 0 0 1 1 10 1 1 1 1 0 0 01 0 0 0 1 0 0 11 0 0 1 0 0 0 01 0 1 0 X X X X1 0 1 1 X X X X1 1 0 0 X X X X1 1 0 1 X X X X1 1 1 0 X X X X1 1 1 1 X X X Xdiagrama en bloque

y tabla de verdad

mapa de Karnaugh de 4-variablespara cada una de las 4 funciones de output

O1

O2

O4

O8

I1

I2

I4

I8

Ejemplo: incrementador en 1 de números BCD de 4 bits

Page 9: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 9

O8 = I4 I2 I1 + I8 I1'

O4 = I4 I2' + I4 I1' + I4’ I2 I1

O2 = I8’ I2’ I1 + I2 I1'

O1 = I1'

O8 O4

O2 O1

Ejemplo: incrementador en 1 de números BCD de 4 bits (cont)

0 0

0 0

X 1

X 0I1

I8

0 1

0 0

X X

X X

I4

I2

0 0

1 1

X 0

X 0I1

I8

0 0

1 1

X X

X X

I4

I2

0 1

0 1

X 0

X 0I1

I8

1 0

0 1

X X

X X

I4

I2

1 1

0 0

X 1

X 0I1

I8

0 0

1 1

X X

X X

I4

I2

Page 10: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 10

6-Simplificación

6.1 Ejemplos en dos niveles

6.2 Simplificación en dos niveles

6.3 Algoritmos de simplificación

Page 11: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 11

Definiciones de términos para simplificación en dos niveles

❒ Implicante❍ Elemento individual del ON-set o del DC-set o algún grupo de estos

elementos que se puede combinar para formar un subcubo

❒ Implicante primo❍ Implicante que no se puede combinar con otro para formar un subcubo mas

grande❍ No contiene literales repetidos❍ No contiene una variable y su complemento ❍ No contiene variables redundantes, si se descarta un literal del implicante

el resto no será un implicante❍ Si x e y son implicantes primos de f, entonces: x no cubre a y; y viceversa

❒ Implicante esencial primo❍ Un implicante primo es esencial si el es el único que cubre un elemento del

ON-set (o mintérmino)❍ Va a participar de todas las posibles coberturas del ON-set❍ DC-set se usa parar formar implicantes primos pero no para hacer un

implicante esencial

Page 12: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 12

Definiciones de términos para simplificación en dos niveles

❒ Objetivo:❍ Hacer crecer implicantes para convertirlos en implicantes primos (minimizar literales por término)

❍ Cubrir el ON-set con el menor numero de implicantes primos posible (minimizar número de términos)

Page 13: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 13

0 X

1 1

1 0

1 0D

A

1 0

0 0

1 1

1 1

B

C

5 implicantes primos:

BD, ABC', ACD, A'BC, A'C'D

Ejemplos para ilustrar términos

0 0

1 1

1 0

1 0D

A

0 1

0 1

1 1

0 0

B

C

6 implicantes primos (no se pueden agrupar mas):

A'B'D, BC', AC, A'C'D, AB, B'CD

mínima cobertura: AC + BC' + A'B'D

esencial

cobertura mínima : 4 implicantes esenciales

esenciales

Page 14: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 14

6-Simplificación

6.1 Ejemplos en dos niveles

6.2 Simplificación en dos niveles

6.3 Algoritmos de simplificación

Page 15: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 15

Algoritmo para simplificación de dos niveles en un mapa de Karnaugh

❒ Algoritmo: mínima expresión de suma de productos de un mapa de Karnaugh

❍ 1: elegir mintérmino (un elemento del ON-set)

❍ 2: encontrar grupos máximos de 1s y Xs adyacentes a ese elemento

• considerar filas de arriba/abajo, columnas izquierda/derecha y adyacencias de las esquinas

• estos son implicantes primos (número de elementos siempre un poder de 2)

❍ Repetir pasos 1 y 2 hasta encontrar todos los implicantes primos

❍ 3: revisar los 1s en el K-map

• si cubiertos por un solo implicante primo, se considera esencial, y tiene que estar en la cobertura final

• 1s cubiertos por implicantes primos esenciales no tienen que serrevisados

❍ 4: si quedan 1s no cubiertos por implicantes primos esenciales

• elegir el numero mas pequeño de implicantes primos que cubren el resto de los 1s

Page 16: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 16

Algoritmos para simplificación de dos niveles (ejemplo)

X 1

0 1

0 1

1 1D

A

0 X

0 1

X 0

0 1

B

C

2 primos cubriendo A'BC'D'

X 1

0 1

0 1

1 1D

A

0 X

0 1

X 0

0 1

B

C

2 primos cubriendo ABC'D

X 1

0 1

0 1

1 1D

A

0 X

0 1

X 0

0 1

B

C

cobertura minima (3 primos)

X 1

0 1

0 1

1 1D

A

0 X

0 1

X 0

0 1

B

C

X 1

0 1

0 1

1 1D

A

0 X

0 1

X 0

0 1

B

C

2 primos esenciales

X 1

0 1

0 1

1 1D

A

0 X

0 1

X 0

0 1

B

C

3 primos cubriendo AB'C'D'

X 1

0 1

0 1

1 1D

A

0 X

0 1

X 0

0 1

B

C

Page 17: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 17

BC BD AB AC’DCD’

BDCD’ AC’D

BDCD’ AC’D

Actividad

X 0

0 1

X 0

X 1D

A

0 X

X 1

X 0

1 1

B

C

X 0

0 1

X 0

X 1D

A

0 X

X 1

X 0

1 1

B

C

❒ Indique todos los implicantes primos para el K-map:

❒ Cuales son implicantes primos esenciales?

❒ Cual es la cobertura mínima?

Page 18: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 18

Método de Quine ❒ Método sistemático para encontrar la expresión mínima de una función,

no requiere reconocer agrupaciones en un mapa de Karnaugh

❒ Básicamente es la búsqueda exhaustiva de todas las adyacencias entre los mintérminos de la función mediante el uso sistemático del teorema a = ab + ab’

❒ Algoritmo Quine para encontrar implicantes primos:

1. Formar columna con los mintérminos de la función

2. Formar siguiente columna según:

❍ Revisar primer elemento de la columna con todos los siguientes; si se encuentra un termino que difiere en una variable, se lo anota en la nueva columna omitiendo el literal correspondiente; se marcan los términos en la columna actual

❍ Se repite para todos los elementos

3. Repetir el paso 2 hasta no poder formar nuevas columnas

❒ Después se pueden encontrar los implicantes primos esenciales usando la tabla de implicantes primos

Page 19: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 19

Ejemplo: Método de Quine

❒ Obtener implicantes primos de: f(a, b, c) = ∑m(0,2,5,6,7)

Primera Columna Segunda Columna

m min marcas Grupos Implicantes

0 a’b’c’ x (0,2) a’c’

2 a’bc’ x x (2,6) bc’

5 ab’c x (5,7) ac

6 abc’ x x (6,7) ab

7 abc x x

Como no se pueden formar nuevas columnas los implicantes

primos son a’c’, bc’, ac, ab

Page 20: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 20

Tabla de implicantes primos

❒ Una vez obtenido los implicantes primos se puede determinar cuales son esenciales con la tabla de implicantes primos:

❍ Crear tabla empleando implicantes primos en las filas y los mintérminos en las columnas

❍ En cada fila marcar con 1 las columnas de los mintérminospertenecientes al implicante considerado

❍ Aquellas columnas con solos una marca son implicantes primos esenciales

❍ Hay que escoger el menor numero de implicantes primos que cubrantodos los mintérminos de la función

Page 21: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 21

Ejemplo: Tabla de implicantes ❒ Obtener implicantes primos de: f(a, b, c) = ∑m(0,2,5,6,7)

Primera Columna Segunda Columna

m min marcas Grupos Implicantes

0 a’b’c’ x (0,2) a’c’

2 a’bc’ x x (2,6) bc’

5 ab’c x (5,7) ac

6 abc’ x x (6,7) ab

7 abc x x

❒ Usando los implicantes primos se genera la tabla de implicantes primos

0 2 5 6 7

a’c’ 1 1

bc’ 1 1

ac 1 1

ab 1 1

implicantes primos esenciales: a’c’ + ac

solo falta cubrir m6, se puede lograrcon bc’ o con abla forma mínima de la funcion: f = a’c’ + ac + bc’ o f = a’c’ + ac +ab

Page 22: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 22

Método de Quine-McCluskey❒ Otro método sistemático para encontrar la expresión mínima de una

función, no requiere reconocer agrupaciones en un mapa de Karnaugh

❒ Permite la búsqueda exhaustiva de todas las adyacencias entre los mintérminos de la función mediante el uso sistemático del teorema a = ab + ab’

❒ Es un método tabular adecuado para ser programado en un computador ya que se representan los implicantes primos en forma binaria

❒ Algoritmo QM para encontrar implicantes primos:1. Formar columna con los mintérminos de la función representados en forma

binaria y agrupados de acuerdo al numero de 1s que lo conforman

2. Formar siguiente columna según:❍ Revisar primer elemento de la columna con todos los siguientes; si se encuentra

un termino que difiere en una variable, se lo anota en la nueva columna omitiendo el literal correspondiente; se marcan los términos en la columna actual

❍ Se repite para todos los elementos

3. Repetir el paso 2 hasta no poder formar nuevas columnas

❒ Después se pueden encontrar los implicantes primos esenciales usando la tabla de implicantes primos.

Page 23: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 23

Ejemplo: Método de Quine-McCluskey❒ Obtener implicantes primos de: f(a, b, c, d) = ∑m(4,5,6,8,9,10,13) + d(0,7,15)

Columna I Columna II Columna III

0000 x 0-00 * 01-- *

-000 *

0100 x -1-1 *

1000 x 010- x

01-0 x

0101 x 100- *

0110 x 10-0 *

1001 x

1010 x 01-1 x

-101 x

0111 x 011- x

1101 x 1-01 *

1111 x -111 x

11-1 x

* indica los implicantes primos (no se pueden combinar mas)

- indica el literal combinado

solo se pueden combinar los implicantes primos que tienen el - en la misma posición

Page 24: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 24

Ejemplo: Crear tabla de implicantes primos

❒ Una vez obtenido los implicantes primos se puede determinar cuales son esenciales con la tabla de implicantes primos:

❍ Crear tabla empleando implicantes primos en las filas y los mintérminos en las columnas

❍ En cada fila marcar con 1 las columnas de los mintérminospertenecientes al implicante considerado

❍ Aquellas columnas con solos una marca son implicantes primos esenciales

❍ Hay que escoger el menor numero de implicantes primos que cubrantodos los mintérminos de la función

Page 25: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 25

Ejemplo: Tabla de implicantes primos ❒ Tabla de implicantes primos

4 5 6 8 9 10 13

0,4 (0-00) x

0,8 (-000) x

8,9 (100-) x x

8,10 (10-0) x x

9,13 (1-01) x x

4,5,6,7 (01--) x x x

5,7,13,15 (-1-1) x x

solo falta cubrir m9 y m13, se puede lograr con 1-01 (ac’d) la forma mínima de la funcion: f = ab’d’ + a’b + ac’d

implicantes primos esenciales: ab’d’ + a’b

Page 26: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 26

Reducción de tabla de implicantes primos ❒ Una vez que se selecciona un implicante para formar la

función se puede reducir la tabla eliminando la fila (o renglón) correspondiente

❒ Cuando se elimina una fila también se eliminan las columnas con marcas en dicha fila

❒ Se comienza eliminando implicantes primos esenciales.

❒ La tabla se puede continuar simplificando eliminando renglones cubiertos por otros y columnas que cubren a otras

❍ Un renglón (R1) cubre a otro (R2) si tiene marcas en todas las columnas marcadas por el otro. El renglón (R1) también puede tener columnas adicionales marcadas.

❍ Una columna (C1) cubre a otra (C2) si tiene marcas en cada renglón que la otra tiene. La columna (C1) podría también tener renglones adicionales marcados.

Page 27: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 27

❒ La tabla de implicantes primos resulta:

0 4 5 11 13 15

a’c’d’ 1 1

a’bc’ 1 1

bc’d 1 1

abd 1 1

acd 1 1

Ejemplo: Reducción de tabla de implicantes primos

1 1

0 1

0 0

1 0D

A

0 0

0 0

1 1

0 0

B

C

La tabla reducida: 5 13

a’bc’ 1bc’d 1 1abd 1

La función mínima es: f(a,b,c,d)=a’c’d’ + acd + bc’d

Page 28: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 28

Reducción de tabla de implicantes primos II ❒ Se puede tratar de reducir la tabla se eliminando las filas

cubiertos por otros y columnas que cubren a otras

❒ Esto es como simplificación previa a la elección de implicantes primos

❒ La tabla simplificada tiene que garantizar cobertura de los mintérminos requeridos para implementar la función

Page 29: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 29

Ejemplo: Reducción de tabla de implicantes primos II❒ La tabla de implicantes primos:

m1 m2 m3

ipa 1 1

ipb 1 1

ipc 1 1

ipd 1

❒ Se puede reducir alguna fila cubierta por otra?

❒ Se puede reducir alguna columna que cubra a otra?

Si se elimina m2 para cubrir m1 debe seleccionarse ipb o ipc lo que considera a m2 en la cobertura

Si se elimina m1 es un error porque si después se eligiera a ipa no se incluiría a m1 en la función

eliminando m2

eliminando m1

m1 m2

11 11 1

Si...la columna m2 cubre a la columna m1; puede eliminarse m2

Si

ipd es cubierto por ipa, ipb esta cubierto por ipcy viceversa

Page 30: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 30

Tabla reducida cíclica

❒ En algunos casos luego de remover los implicantes primos esenciales, los renglones cubiertos por otros y las columnas cubiertas por otras no puede seguir reduciéndose la tabla

❒ Estas tablas que no pueden ser reducidas se denominan tablas cíclicas

m1 m2 m3 m4

ip1 1 1

ip2 1 1

ip3 1 1

ip4 1 1

No hay ninguna fila o columna que cubra a otra

Page 31: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 31

Tabla reducida cíclica: Método de Petrick❒ Para generar una función que cubra una tabla cíclica se puede plantear

una expresión booleana P como producto de sumas que garantice la cobertura y que entregue todas las soluciones posibles

m1 m2 m3 m4

ip1 1 1

ip2 1 1

ip3 1 1

ip4 1 1

❒ Para que m1 este presente debe cumplirse que ip1 o ip4 estén presentes; es decir (ip1 + ip4). Usando P: (P1 + P4)

❒ Para que estén presentes todos los mintérminos:

P = (P1 + P4)(P2 + P3)(P1 + P3)(P2 + P4)

❒ Simplificando: P = P1P2 + P3P4

❒ Se tienen dos soluciones. La primera es ip1 e ip2: f = ip1 ip2. La segunda es ip4 e ip3: f = ip4 ip3

❒ Se elige la solución de menor costo

Page 32: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 32

Actividad: Método de Quine-McCluskey❒ f(a, b, c, d) = ∑m(4,5,8,9,11,13,15) + d(0,3)

Columna I Columna II Columna III

0000 x 0-00 * 1--1 *

-000 *

0100 x

1000 x 010- *

100- *

0011 x

0101 x -011 *

1001 x -101 *

10-1 x

1011 x 1-01 x

1101 x

1-11 x

1111 x 11-1 x

Page 33: ELO211: Sistemas Digitales TomásArredondo Vidal 1er ...profesores.elo.utfsm.cl/~tarredondo/info/digital-systems/6-Algoritmos Minimi.pdf2: encontrar grupos máximos de 1s y Xsadyacentes

6: Simplificación 33

Actividad: Tabla de implicantes primos ❒ Tabla de implicantes primos

4 5 8 9 11 13 15

0,4 (0-00) x

0,8 (-000) x

4,5 (010-) x x

8,9 (100-) x x

3,11 (-011) x

5,13 (-101) x x

9,11,13,15 (1--1) x x x x

Hay varias soluciones posibles, con 010- y 100- se cubren m4, m5, m8 y m9. Solo falta cubrir m11, m13 y m15 que se puede lograr con 1--1.La forma mínima de la funcion: f = a’bc’ + ab’c’ + ad