Вы находитесь на странице: 1из 11

SANTIAGO ANTNEZ DE MAYOLO

CIENCIAS

FACULTAD DE INGENIERA DE SISTEMAS E INFORMTICA

CURSO: SISTEMAS DIGITALES

TEMA: IMPLICANTES PRIMOS

FECHA: 30/05/2017

ALUMNO: MAYHUAY CACERES, Abner .W

DOCENTE: MINAYA GONZALEZ JAIME YLIAM

HUARAZ-PERU

1
INTRODUCCION

La simplificacin de funciones booleanas es parte esencial en la reduccin de los costos


de la realizacin de circuitos lgicos y aritmticos binarios. Muchos de los algoritmos de
minimizacin se basaron en las ideas de Quine y McCluskey que dieron origen al
Mtodo de Quine-McCluskey que requiere la generacin de todos los implicantes primos
y, a continuacin, la seleccin de una cobertura mnima, que constituye la solucin
mnima del problema. A pesar del procedimiento de Quine-McCluskey producir una
solucin mnima exacta, la complejidad computacional del algoritmo, que aumenta
exponencialmente con el nmero de mintermos, lo hace bastante limitado. El nmero
de implicantes primos de una funcin con n variables puede ser tan grande como 3n / n
[5], lo que hace que el mtodo sea bastante costoso en tiempo y memoria. En virtud de
ello, investigadores han recurrido al empleo de heursticas, generando una solucin
inicial y, entonces, mejorndola iterativamente. Los programas Mini, Presto y Espresso-
Exact son ejemplos de programas que se utilizan de tcnicas heursticas, siendo que
ese ltimo fue, por muchos aos, considerado el estndar en herramientas para la
optimizacin lgica a dos niveles. Actualmente, con el avance de las estaciones de
trabajo se renov el inters por la optimizacin lgica exacta y surgieron varios
algoritmos para la generacin de implicantes primos as como para la obtencin de la
solucin ptima. Los algoritmos que utilizan DDBO (diagrama de decisin binario
ordenado) para la generacin de implicantes primos de forma eficaz fueron ampliamente
empleados en los trabajos de Meinel, Long, Thornton, Dreschler, Sauerhoff y Bryant.

2
1. Implicacin
Un implicante es un mintrmino o un grupo de stos que formen un sub-cubo.

Una expresin X implica la funcin f, si y solamente si f=1 para cualquier combinacin


de valores para los cuales X=1.

Se anota la implicacin de la siguiente forma: f X

Xf

Puede verse que si X f, con g una funcin booleana, puede anotarse: f=X+g.

Es decir, X es un trmino o parte de f. Tambin suele decirse que f cubre a X. En una


mapa de f, si X corresponde a un grupo de mintrminos, g corresponder al resto de los
mintrminos de f, no considerados en X.

Se desea ahora definir las componentes de f que sean ms primitivas.

1.1. Implicantes primos

Un implicante primo es un implicante que no puede ser agrupado con otros implicantes,
para formar un sub-cubo de mayor dimensin.

Se dice que X (producto de literales) es un implicante primo de f si y slo si:


Xf
No existe y tal que X y f, donde el nmero de literales de y es menor que el
nmero de literales de X.
No puede encontrarse un grupo mayor que X. Si existe y; entonces y es un
implicante primo.
Bsicamente, es un producto de literales que no puede ser combinado con otros
para obtener un trmino con menos literales. Se dice primo o primitivo en el sentido
de ser componente bsica o elemental de una funcin.

Algunas propiedades de un implicante primo:


No contiene literales repetidos.
No contiene a una variable y a su complemento.
No contiene variables redundantes. Es decir, si se descarta un literal del implicante,
el resto no ser implicante.

3
Si x e y son implicantes primos de f, entonces: x no cubre a y; y viceversa.
Encontrar los implicantes primos es determinar los grupos de mintrminos que pueden
escribirse con menos literales.
Pasar de un implicante a un implicante primo est asociado a un proceso de crecimiento;
es decir, a encontrar un grupo de mintrminos que forman el sub-cubo mayor posible.

1.2. Implicante primo esencial


Es aqul que cubre a lo menos un mintrmino de la funcin que no es cubierto por otros
implicantes primos. Deben estar presentes en la forma mnima.
Los mintrminos superfluos pueden emplearse para formar implicantes primos; pero no
deben considerarse para los implicantes primos esenciales.
Ejemplo: Para una funcin de 4 variables se tienen los siguientes implicantes primos:
A'B'D, BC', AC, A'C'D, AB, B'CD
De los 6 implicantes primos, slo AC es esencial. ya que contiene al mintrmino: AB'CD'
que no es cubierto por ningn otro implicante primo.
A

0 X 1 0

1 1 1 0
D
1 0 1 1
C
0 0 1 1
B
Puede comprobarse que se logra una mnima cobertura de la funcin con:
AC + BC' + A'B'D
Ejemplo: Para una funcin de 4 variables se tienen los siguientes implicantes primos:
BD, ABC', ACD, A'BC, A'C'D
A
Slo BD es no esencial. 0 0 1 0

La funcin mnima debe contener 1 1 1 0


los esenciales, y con stos se logra D
0 1 1 1
cubrir completamente a la funcin:
C
0 1 0 0
f = ABC' + ACD + A'BC + A'C'D
B
4
1.3. Mtodo de Quine

Es un mtodo sistemtico para encontrar la expresin mnima de una funcin, que no


depende de la habilidad para reconocer agrupaciones en un mapa de Karnaugh.

Bsicamente, es una bsqueda exhaustiva de todas las adyacencias entre los


mintrminos de la funcin, mediante la aplicacin sistemtica de:

a ab ab

a todos los trminos de la forma cannica.

1.3.1. Obtencin de implicantes primos

Se forma una primera columna con los mintrminos de la funcin.


Se forma la siguiente columna segn:
Se revisa el primer elemento de la columna con todos los siguientes; si se
encuentra un trmino que slo difiera en una variable, se lo anota en la nueva
columna, omitiendo el literal correspondiente; se marcan los trminos en la
columna actual.
Se repite el proceso para todos los elementos de la columna.
Se vuelve a repetir el paso anterior hasta que no se puedan formar nuevas
columnas.

Los trminos que originan nuevas entradas, en la prxima columna, slo necesitan
marcarse una vez. Pero pueden usarse las veces que sea necesario.

Ntese que la segunda columna lista todos los grupos de dos mintrminos. La tercera,
lista grupos de cuatro mintrminos adyacentes, y as sucesivamente. Al finalizar el
proceso anterior, los elementos no marcados en las columnas, corresponden a los
implicantes primos.

5
Ejemplo:
Obtener los implicantes primos de: f(a,b,c) m(0,2,5,6,7)

Primera columna Segunda columna


m min. marcas Grupo Implicantes
s
0 a'b'c' (0,2) a'c'
2 a'bc' (2,6) bc'
5 ab'c (5,7) ac
6 abc' (6,7) ab
7 abc

No se pueden formar nuevas columnas, por lo tanto los implicantes primos son:
a'c', bc', ac, ab

Ntese que en la segunda columna, se han identificado los renglones con los grupos de
mintrminos.

Cuando se escribe, en la segunda columna: a'c', se marcan con el 0 y el 2 en


la primera columna.

Cuando se escribe, en la segunda columna: bc', se marcan con los


mintrminos 2 y 6.

1.3.2. Tabla de implicantes

La tabla de implicantes se forma empleando los implicantes primos en los renglones y


los mintrminos de la funcin en las columnas. Luego, en cada rengln, se efecta una
marca en las columnas de los mintrminos pertenecientes al implicante considerado.

Aquellas columnas que tengan slo una marca, permiten detectar a los implicantes
primos esenciales. En esta tabla puede escogerse el menor nmero de implicantes
primos que cubran todos los mintrminos de la funcin. Evidentemente, deben estar
presentes todos los implicantes primitivos esenciales en la expresin mnima de una
funcin.

6
Ejemplo: La tabla de implicantes, para el ejemplo anterior:

0 2 5 6 7
a'c'
bc'
ac
ab

La columna 0 permite identificar a: a'c' como implicante primo esencial.


Igualmente la columna 5 indica que ac tambin es esencial.

Se acostumbra encerrar con un crculo las marcas en las columnas que definen los
implicantes primos esenciales.

Ntese que slo resta cubrir el mintrmino 6, lo que puede lograrse eligiendo: bc' ab

Finalmente, la forma mnima es: f = a'c' +ac + bc'

o, alternativamente: f = a'c' + ac + ab

1.3.3. Reduccin de tablas

En caso de tener tablas complejas, stas pueden reducirse mediante el siguiente


mtodo.
Cada vez que se selecciona un implicante para formar la funcin, se remueve el rengln
correspondiente.

Cuando se remueve un rengln, tambin se eliminan las columnas que tienen marcas
en dicho rengln.

Se comienza eliminando los implicantes primos esenciales. Luego la tabla puede seguir
reducindose, aplicando las siguientes reglas:

Un rengln cubierto por otro, puede eliminarse (slo el rengln).


Una columna que cubre a otra puede eliminarse (slo la columna).

7
Un rengln cubre a otro, si tiene marcas en las columnas marcadas del otro, pudiendo
adems tener columnas adicionales marcadas. Podra decirse que el rengln eliminado
es menos importante, debido a su menor cobertura de la funcin.

Ejemplo: Implicante primo ipa cubre a implicante primo ipb.

m1 m2 m3
ipa
ipb

Una columna cubre a otra, si contiene marcas en cada rengln que esa otra columna
tiene marcas.
Ejemplo:

m1 m2 m3
ipa
ipb
ipc
ipd

La columna m2 cubre a la columna m1; puede eliminarse la columna m2. El mintrmino


de la columna eliminada tiene asegurada su consideracin.

Se repite la aplicacin de las reglas hasta agotar la tabla. Siempre se remueven aquellos
renglones que contengan columnas con una sola marca (se tratan en la tabla reducida,
en forma similar a los implicantes primos esenciales en la tabla completa).

La funcin se forma con los implicantes de los renglones removidos por contener
columnas con una sola marca.

Excepcin a lo anterior la constituyen las tablas reducidas cclicas, que no pueden


reducirse segn el mtodo recin planteado. En stas se elige un implicante en forma
arbitraria y se remueve el rengln correspondiente.

8
Ejemplo: Reducir la tabla de implicantes de la funcin f.

1 3 4 6 7 9 13 15
ipa
ipb
ipc
ipd
ipe
ipf
ipg
iph

Observar que el implicante primo b es esencial. Removiendo el rengln asociado a b,


deben tambin removerse columnas asociadas a los mintrminos 4 y 6.
Queda la siguiente tabla reducida:
1 3 7 9 13 15
ipa
ipc
ipd
ipe
ipf
ipg
iph

El rengln ipc cubre a ipd; por lo tanto, puede eliminarse el rengln ipd.
1 3 7 9 13 15
ipa
ipc
ipe
ipf
ipg
iph

9
La tabla resultante es cclica. Se escoge arbitrariamente al primitivo ipa para formar la
funcin, esto elimina columnas 1 y 3, quedando:

7 9 13 15
ipc
ipe
ipf
ipg
iph

Ahora, ipe cubre a ipc; e ipg cubre a iph, queda eliminando a ipc e iph:

7 9 13 15
ipe
ipf
ipg

ipe e ipg deben formar parte de la funcin; pues contienen a las columnas 7 y 9, que en
la tabla reducida slo tienen una marca. Luego de esto, la tabla queda vaca.

Finalmente:
F = ipb + ipa + ipe + ipg

Existen otras formas mnimas posibles. Estas se obtienen eliminando otro implicante
cuando la tabla result cclica.

Por ejemplo, eliminando ipc, resulta:

1 9 13 15
ipa
ipe
ipf
ipg
iph

10
ipf cubre a ipe. iph cubre a ipa. Eliminando ipa e ipe, se obtiene:

1 9 13 15
ipf
ipg
iph

En la cual deben escogerse: ipf e iph.

Entonces resulta otra funcin mnima:


f = ipb +ipc + ipf + iph

Cuando se tienen condiciones superfluas, el mtodo es similar, excepto que en la tabla


no se consideran las columnas de mintrminos superfluos, debido a que stos no
requieren ser cubiertos.

El mtodo anterior es adecuado para un nmero reducido de variables. Una variante del
mtodo tabular recin descrito es el de Quine-McCluskey. Bsicamente, representa en
forma digital el mtodo de Quine, y es muy adecuado para ser programado en un
computador.

11

Вам также может понравиться