Documentos de Académico
Documentos de Profesional
Documentos de Cultura
7
INTRODUCCION:
La importancia que tiene hoy en día el diseñ o de los circuitos digitales para mú ltiples
aplicaciones, nos conduce a aprender la interpretació n de las funciones asociadas a cada
una de las aplicaciones y traducirlas a tablas de verdad y funciones booleanas. Para tener
un circuito adecuado es necesario simplificar la funció n booleana hasta un mínimo posible,
de tal forma que se utilicen la mínima cantidad de compuertas, sin afectar el
funcionamiento del circuito tanto en entradas como en salidas. Para poder simplificar una
funció n booleana se pueden aplicar tanto teoremas del á lgebra booleana, como el mapa de
Karnaugh (Veitch), como métodos tabulares como el método de Quine-McCluskey, que es el
que se implementa en este proyecto. El método de á lgebra de Boole utiliza la ló gica
matemá tica y sus teoremas para poder simplificar la funció n; sin embargo, este método es
conveniente cuando se tienen pocas variables de entrada. El método del mapa de Karnaugh
es un método grá fico bastante bueno, pero no es prá ctico cuando se tienen má s de 5
variables de entrada. El método de simplificació n tabular de Quine-McCluskey es un método
que compara todas las combinaciones con las siguientes dependiendo la cantidad de unos
que contenga cada combinació n de las variables de entrada. Este es un método recursivo y
por esta razó n es fá cil de implementar en una rutina de programació n. El proyecto de
titulació n consiste en implementar un programa tutorial que simplifica funciones booleanas
utilizando el método Quine-McCluskey. El procedimiento de simplificació n de las funciones
booleanas puede realizarse paso a paso o directamente. El ingreso de datos se puede hacer
de dos formas: mediante una tabla de combinaciones o utilizando un editor de
mintérminos. En este trabajo se incluye un resumen de los comandos y sentencias
utilizadas en Visual Basic para la programació n. Ademá s, se explica todo el proceso de
diseñ o del programa de simplificació n.
7
DESARROLLO
Es conveniente introducir una nueva representació n de las funciones booleanas la cual
proporcionará una terminología conveniente para el método de Quine-McCIuskey.
Una variable de conmutació n que puede asumir solo dos valores, se puede representar
mediante dos puntos en los extremos de un solo segmento
Los vértices correspondientes a mO, m2, m3, y m7 se indican por medio de puntos negro.
Estos vértices se denominan cubos - O de la funció n.
Dos cubos - O forman un cubo - 1, si difieren solo en una coordenada en el ejemplo anterior
se tiene tres cubos - 1, que está n marcados en rojo, (01X, 0X0, X11), los cubos - 1 se
designan colocando una "X" en la coordenada que tienen diferentes valores.
Un conjunto de cuatro cubos O, cuyos valores de coordenada son iguales en todas las
variables excepto en dos, forma un cubo - 2 que se representa grá ficamente como un plano
sombreado.
Cuando todos los vértices de un cubo - k está en el conjunto de vértices que componen un
cubo - k mayor, se dice que el cubo má s pequeñ o está contenido en/o cubierto por el cubo
mayor.
Resumiendo, un cubo - O se representa con un punto, un cubo - 1 se representa con un
segmento, un cubo - 2 con un plano, un cubo 3 con un volumen, para un cubo - k en espacios
- n mayores que 4 no hay representació n geométrica, pero el principio de agrupació n de
productos fundamentales es el mismo.
7
Ilustración 2 Representación de un cubo.
Definició n. - "Un implicante primo es cualquier cubo de una funció n que no esté totalmente
contenido en otro cubo mayor de dicha funció n".
El método de Quine-McCIuskey es un procedimiento organizado ingeniosamente para
efectuar una bú squeda exhaustiva de todas las combinaciones posibles de cubos - O en
cubos mayores y, luego, seleccionar la combinació n mínima de cubos requerida para
realizar la funció n.
Ilustración 3 Ejemplo 1
7
En la tabla de productos fundamentales de la funció n, se dispone de la representació n
binaria de las combinaciones de las variables de entrada, ya que se ha definido que se
consideran ló gicamente adyacentes dos términos cuyas combinaciones de variables son
idénticas excepto en una sola de ellas, se halla que una de las condiciones es que el nú mero
de "UNOS" en las representaciones binarias difieran solo en una unidad.
Se separan ú nicamente los mintérminos que tienen un "UNO" asignado a la funció n, y se los
ordena de acuerdo al nú mero de "UNOS" existentes en las combinaciones de entrada, se
separan los mintérminos en grupos con el mismo nú mero de unos por medio de las lineas
horizontales. "Este agolpamiento de los mintérminos se hace para reducir la cantidad de
comparaciones que se deben efectuar para determinar los cubos UNO".
Se compara las combinaciones de cada grupo con las combinaciones del grupo siguiente, si
existe una variable diferente entre las dos combinaciones que se está n comparando
entonces se reemplaza como una sola poniendo en el lugar que está la variable diferente
con una X anotando el mintérmino que se combina. A los términos originales que se
combinan se coloca una marca, por ejemplo "V".
También se debe anotar los nú meros enteros correspondientes a los mintérminos que se
combinaron. En el caso de nuestro ejemplo mo se combina con m2 para formar el cubo - 1
(XOOO) esta combinació n es equivalente a la operació n algebraica A'B'C'D' + A'B'CD' =
A'B'D'(C + CJ) = A'B'D'.
7
Una vez obtenida esta tabla se debe seguir el mismo proceso para obtener la tabla de cubos
2, pero aquí interviene un nuevo elemento como es la X. Nuevamente, los cubos de cada
grupo se deben comparar só lo con los cubos del siguiente grupo hacia abajo. En el ejemplo
nuestro el cubo - 1 (0,2) se combina con el cubo -1 (8,10) y se obtienen el cubo 2 (O, 2, 8,
10) (XOXO), los dos cubos - 1 usados se marcan para indicar que se han usado para formar
cubos - 2.
Este proceso se sigue hasta cuando ya no existan elementos que se puedan combinar siendo
esta tabla la de los cubos de mayor orden.
Existen combinaciones que no está n marcadas razó n por la cual no está n en cubos de mayor
orden, a estas combinaciones se denominan implicantes primos. Un mintérmino que no se
combina para formar cubos de mayor orden también se debe considerar como parte de los
implicantes primos.
Para el ejemplo anterior, la tabla de cubos - 2 tiene elementos que no se pueden combinar
entre sí para formar cubos - 3 es decir que todos estos son los implicantes primos, también
en la tabla de los cubos - 1 existe algunas combinaciones que no se combinaron para formar
cubos - 2, estos términos también forman parte de los implicantes primos.
7
BIBLIOGRAFIA
1. López Medina, L. E. (2003). Método didáctico de simplificación de funciones
booleanas (Bachelor's thesis, QUITO/EPN/2003).
2. Holguín, M., Mejía, A. E., & Holguín, G. A. (2008). Implementación en lenguaje gráfico de un
algoritmo basado en quine-mccluskey y petrick para minimización global. Scientia et
technica, 2(39).
3. García-Lagos, F., & Joya, G. (1970). SimpFunLogQM: Una herramienta para el entrenamiento en
la simplificación e implementación de funciones lógicas.