Você está na página 1de 29

http://www.tech-faq.com/wp-content/uploads/images/integrated-circuit-layout.

jpg

IEEE 125 Aniversary: http://www.flickr.com/photos/ieee125/with/2809342254/

Mara Jess Martn Martnez : mjmm@usal.es


6.1. Introduccin

6.2. lgebra de Boole

6.3. Anlisis booleano de circuitos lgicos. Tablas de

verdad

6.4. Algoritmos de simplificacin de expresiones lgicas

6.5. Implementacin de funciones lgicas mediante puertas

lgicas

Mara Jess Martn Martnez : mjmm@usal.es


La Electrnica Digital la realizacin electrnica (implementacin) de funciones
booleanas
En esta leccin vamos a plantear el formalismo asociado al lgebra de Boole.

PASOS:
Inicialmente estableceremos las bases matemticas asociadas al lgebra de Boole.
Despus analizaremos la representacin de las variables lgicas por magnitudes
fsicas, indicando los mdulos mnimos para la sntesis de funciones.
Estudiaremos algn mtodo para simplificar en alguna forma las funciones booleanas.
Por ltimo, se realiza su implementacin circuital.

El lgebra booleana son reglas algebraicas, basadas en la teora de conjuntos,


para manejar ecuaciones de lgica matemtica.
La lgica matemtica trata con proposiciones, elementos de circuitos de dos estados,
etc., asociados por medio de operadores como Y, O, NO, EXCEPTO, SI...
Permite clculos y demostraciones como cualquier parte de las matemticas.
Es llamada as en honor del matemtico George Boole, que la introdujo en 1847.

Mara Jess Martn Martnez : mjmm@usal.es


DEFINICION de Algebra boole :
Se dice que un conjunto de elementos B, en el que existen definidas dos operaciones
binarias (que representaremos por + y por ) tiene estructura de lgebra de Boole si y solo
si se cumplen los siguientes cuatro postulados:

Las operaciones + y son conmutativas.

Ejemplo: a+b=b+a y ab=ba

Existen en B dos elementos neutros, que denotaremos por 0 y 1, para las operaciones
+ y , respectivamente.
a+0= a y a 1= a

Cada operacin es distributiva con respecto a la otra (expresa el proceso de sacar


factor comn).

Ejemplo (tres variables): a(b+c) = ab + ac

Para cada elemento de B existe un tal que: + = =


Mara Jess Martn Martnez : mjmm@usal.es
En Electrnica Digital estamos interesados en el lgebra de Boole establecida
en el conjunto ={ } con las operaciones + y definidas por:

Estas operaciones se cumplen los 4 postulados anteriores.Llamaremos:


AND (Y lgico) a la operacin
OR (O lgico) a la operacin +
NOT (NO lgico) a la operacin de complementacin.

NOTA; Por simplicidad, de ahora en adelante usaremos la representacin xy en vez de la xy para la


composicin de las variables x e y mediante la operacin .

La Electrnica Digital: estudio y realizacin de circuitos que realicen las funciones


AND, OR, NOT y sus combinaciones.

Mara Jess Martn Martnez : mjmm@usal.es


Existen una serie de teoremas, vlidos en cualquier lgebra de Boole, que
vamos a enunciar y que no demostraremos, los cuales nos sern de gran utilidad
para la simplificacin de funciones:

Teorema 1. Principio de dualidad: Cada proposicin o identidad algebraica deducible


de los postulados del lgebra de Boole permanece vlida si:
cambiamos entre si las operaciones + y ,
y tambin cambiamos entre si los elementos neutros 0 y 1.

+ = =
Teorema 2.

Teorema 3. + = =

Teorema 4. Ley de absorcin + = + =

Teorema 5.
+ + = + + =
Asociatividad de las operaciones + y

Mara Jess Martn Martnez : mjmm@usal.es


Teorema 6. El elemento asociado a es nico

Teorema 7. ( )=

Teorema8. Teorema de De Morgan: = + + =

Teorema 9. + = ( + )( + )=

Teorema 10.

Si

Si

Si + para cualquier z si y solo si

Mara Jess Martn Martnez : mjmm@usal.es


DEFINICION: Llamaremos funciones lgicas o funciones booleanas (f) a todo conjunto de variables
relacionadas entre s por una expresin que representa:
La combinacin de un conjunto finito de smbolos, representando constantes o variables
Unidos por las operaciones AND (producto lgico) , OR (suma lgica) o NOT (complementacin).

Trmino producto: es una expresin lgica que consiste en un conjunto de variables (o sus
complementadas) unidas por la operacin AND.
=

Trmino suma: es una expresin lgica que consiste en un conjunto de variables (o sus
complementadas) unidas por la operacin OR.
= +

Un trmino producto standard o MINTERM: expresin lgica que consiste en un conjunto de TODAS
las variables (o sus complementadas) unidas por la operacin AND.
=

Un trmino suma standard o MAXTERM: expresin lgica que consiste en un conjunto de TODAS las
variables (o sus complementadas) unidas por la operacin OR.

= + +

Mara Jess Martn Martnez : mjmm@usal.es


Con n variables se pueden formar 2n MINTERMS y 2n MAXTERMS

Formas cannicas de una funcin


Toda funcin booleana puede expresarse de dos formas cannicas diferentes:
ponerse en forma de suma de Minterms forma cannica disyuntiva.
O ponerse en forma de producto de Maxterms forma cannica conjuntiva.

Esa funcin algebraica se podr simplificar aplicando directamente las leyes del lgebra de
Boole, o bien, sistemticamente, a travs de mtodos de reduccin que veremos ms
adelante.

EJEMPLO N 1: Consideramos la funcin = +

Tenemos una funcin de 3 variables


Vamos a mostrar los 23=8 Minterms y los 23=8 Maxterms que podemos formar.

A los Minterms los vamos a llamar : mi (i=0 hasta 7), en total 8


A los Maxterms los vamos a llamar : Mi (i=0 hasta 7), en total 8

Cada Mi cumple =

Mara Jess Martn Martnez : mjmm@usal.es


EJEMPLO N 1: Consideramos la funcin = +
Para los Minterms: Los subndices i, en decimal, indican en binario la complementacin
o no complementacin de la correspondiente variable:
Asignando un 1 para la variable sin complementar
Asignando un 0 para la variable complementada.

Para los MASTERMS van al contrario

Ejemplos:
el minterm m6= (f=1)
corresponde al 110 de la tabla
de verdad (asignando y a las
variables sin complementar y
complementadas,
respectivamente).
Ejemplo: el maxterm M2= (f=0)
se asigna al contrario

D. Pardo, et al. 1999

Mara Jess Martn Martnez : mjmm@usal.es


Si disponemos de la tabla de verdad de una funcin, es inmediato obtener la
expresin de la funcin, ya que

Si deseamos obtener la funcin como suma de minterms, podemos obtenerla escribiendo


la suma de los minterms asociados a aquellas combinaciones de valores de las variables
para las cuales la funcin vale 1 .

Esta suma vale uno solamente para los conjuntos de valores de las variables que hacen uno la
funcin.
Si deseamos obtenerla como producto de maxterms, debemos escribir el producto de los
maxterms asociados a aquellas combinaciones de valores de las variables para las cuales la
funcin vale 0 .

De este producto tenemos la certeza que es cero nicamente para los conjuntos de valores de las
variables que hacen cero la funcin.

Mara Jess Martn Martnez : mjmm@usal.es


Teniendo en cuenta la funcin:
f=1 si se cumple que x=1 y adems (y=1 o z=1)
= +
Podemos expresar la funcin como:
La suma de los MINTERMS para los que la funcin toma valor 1
Producto de MAXTERMS para los que la funcin toma valor 0.

D. Pardo, et al. 1999

Mara Jess Martn Martnez : mjmm@usal.es


La electrnica digital utiliza sistemas y circuitos en los que slo existen dos estados
posibles.
Estos estados se representan mediante dos niveles de tensin discretos y diferentes:
ALTO (H: high)
BAJO (L: low).
Estos dos estados pueden representarse tambin mediante niveles de corriente, interruptores
abiertos o cerrados, o lmparas encendidas o apagadas.
En los sistemas digitales, las combinaciones de estos dos estados se utilizan para representar
nmeros, smbolos, caracteres alfabticos y cualquier otro tipo de informacin.

Los dos Digitos del sistema binario, 1 y 0, se denominan


bits (contraccin de BInary digiT).
Un 1 se representa mediante un nivel de tensin ms
elevado, que se denomina nivel ALTO (HIGH)
Un 0 se representa mediante un nivel ms bajo de tensin,
que se denomina nivel BAJO (LOW)
Este convenio se denomina: Lgica positiva y es la que D. Pardo, et al. 1999

vamos a emplear a lo largo del curso. Asignacin lgica

Mara Jess Martn Martnez : mjmm@usal.es


Rango de niveles lgicos de tensin para un
circuito digital
Las tensiones que se utilizan para representar los unos y
ceros reciben el nombre de niveles lgicos.
Lo ideal sera que un nivel de tensin representara el
nivel ALTO y otro nivel de tensin representar el nivel
BAJO.
Sin embargo, en la prctica, un nivel ALTO o HIGH puede
ser cualquier tensin entre un mximo (VHmx) y un mnimo
(VHmin) especificados.
De igual manera un nivel BAJO o LOW puede ser cualquier
tensin comprendida entre un mximo (VLmx) y un mnimo
(VLmin) especificados.
Los valores de tensin comprendidas entre VLmx y
VHmin no son aceptables para un funcionamiento
correcto Una tensin dentro de este rango podra
interpretarse tanto como nivel ALTO como BAJO en un http://zone.ni.com/cms/images/devzone/tut/voltagelevel.JPG
circuito.
Ejemplo: En una lgica digital TTL:
Los valores del nivel ALTO pueden variar desde 2 V a 5 V
Los valores del nivel bajo lo pueden hacer entre 0 V y 0.8 V.

Si se aplica una tensin de 3.5 V, el circuito lo interpretar como un BAJO (LOW) o 0 binario. Para este tipo
de circuito las tensiones comprendidas entre 0.8 V y 2 V no son aceptables y nunca deben ser utilizadas.

Mara Jess Martn Martnez : mjmm@usal.es


Ejemplo: Sin tener en cuenta su constitucin interna,
consideremos un circuito de dos entradas y una salida,
cuya representacin y salida en funcin de las entradas
como el que se muestra en la Figura.
D. Pardo, et al. 1999

Para una lgica definida positiva, este circuito realiza la


operacin AND
Sin embargo, con una lgica definida negativa el circuito
realiza la operacin OR.

Por tanto, al especificar el tipo de operacin que realiza un circuito, debe indicarse tambin
para qu tipo de lgica la realiza. En el caso de no especificarse, debe entenderse que es
para lgica definida positiva

Mara Jess Martn Martnez : mjmm@usal.es


Es conveniente representar los circuitos que realizan las funciones lgicas por ciertos
smbolos que a la hora de trabajar con ellos simplifiquen su manejo.

En lgica definida positiva, y dos entradas Las funciones lgicas elementales, tambin
llamadas puertas lgicas, son bsicamente tres:

Los circuitos que realiza la operacin:


NOT AND OR se representan por el
smbolo:

El circuito que realiza la operacin


NOT se representa por el smbolo:

http://i.cmpnet.com/pldesignline/2006/05/max-bb-02.gif

Mara Jess Martn Martnez : mjmm@usal.es


Debemos hacer notar que no son necesarios los tres tipos de circuitos lgicos
(puertas) para realizar todas las operaciones en un lgebra de Boole Con dos de
ellas puede realizarse la tercera.

As tenemos, como se muestra en la Figura, que tres inversores y una puerta AND
(OR) actan como una puerta OR (AND).

D. Pardo, et al. 1999

Mara Jess Martn Martnez : mjmm@usal.es


Existen operaciones compuestas de estas, como son:

La NAND (operacin AND seguida de la NOT). Su smbolo es:

D. Pardo, et al. 1999

La NOR (operacin OR seguida de la NOT), cuyo smbolo es:

D. Pardo, et al. 1999

La importancia de estas puertas radica en la simplificacin de ciertas funciones.

Mara Jess Martn Martnez : mjmm@usal.es


De forma anloga a lo visto anteriormente para las puertas AND, OR y NOT.
Podemos comprobar que con un solo tipo de puerta (NAND o NOR) puede realizarse cualquier
operacin bsica en un lgebra de Boole.

En general, puede decirse que:


Como NOT pueden actuar:
Una puerta NAND con una sola
entrada (o con todas menos una
puestas a 1).
Una puerta NOR con una sola
entrada (o con todas menos una
puestas a 0).
Una asociacin en serie de un
nmero par de puertas
NAND tienen la apariencia de
una puerta AND.
NOR tienen la apariencia de una
puerta OR
Una asociacin en serie de un
nmero impar de puertas:
NAND tienen la apariencia de
D. Pardo, et al. 1999
una puerta OR.
NOR tienen la apariencia de una
puerta AND.

Mara Jess Martn Martnez : mjmm@usal.es


Por ltimo mencionaremos que existen como bloques bsicos dos puertas
denominadas OR-EXCLUSIVO y NOR-EXCLUSIVO, cuya funcin y smbolo son las
indicadas:

http://www.forosdeelectronica.com/tutoriales/compuertas-digitales.htm

Mara Jess Martn Martnez : mjmm@usal.es


Una funcin de Boole puede representarse, por una expresin algebraica.
Pero esta representacin no es nica.

Representacin Tablas de verdad


Son unas representaciones grficas de todos los casos
que se pueden dar en una relacin algebraica y de sus
respectivos resultados.

Una vez que se ha determinado la expresin booleana de


un circuito dado, puede desarrollarse una tabla de verdad
que representa la salida (funcin) del circuito lgico para
todos los posibles valores de las entradas ! " "#$% #

Normalmente, la tabla de verdad suele ser el dato inicial a


la hora del diseo de circuitos digitales.
Cuanto mayor sea el nmero de variables de que consta
la funcin, ms tediosa ser la representacin.

Mara Jess Martn Martnez : mjmm@usal.es


Representacin Mapas de Karnaugh
Son similares a una tabla de verdad ya que muestra todos los posibles valores de las variables de
entrada y la salida resultante para cada valor.
Caractersticas de los Mapas de Karnaugh:
Esta organizado en una cuadrcula en forma de encasillado cuyo nmero de casillas depende del nmero de
variables que tenga la funcin a simplificar.
Para una funcin de n variables, el mapa consta de 2n cuadros, cada uno asociado a uno de los 2n minterms
diferentes que son suficientes para generar la funcin.
Las celdas se disponen de manera que la cada una se diferencia de la contigua (tanto en vertical como en
horizontal) justamente en el estado de complementacin de una variable.

&

&

Mapa de Karnaugh de 2 variables : matriz


de 22 celdas.

& && &


#

' ( ) *
+ , # -*
Mapa de Karnaugh de 3 variables:
,
matriz de 23 celdas.
http://www.ee.surrey.ac.uk/Projects/Labview/minimisation/graphics/nak.gif

Mara Jess Martn Martnez : mjmm@usal.es


Representacin Mapas de Karnaugh
En el caso de tener una funcin booleana de 5 variables, se construye mediante 2 mapas de 4
variables (con 16 celdas cada uno, uno de ellos correspondiente al valor 0 de la quinta variable y
el segundo correspondiente al valor 1.

Representacin Tablas de verdad y Mapas de Karnaugh

Cada una de las casillas que forman el mapa puede representar trminos tanto minterms como
maxterms.

Si representamos una funcin en forma de MINTERMs, pondremos un 1 en la casilla correspondiente a


cada trmino de la tabla de verdad y del mapa de Karnaugh.

Si la representamos en forma de MAXTERMS, pondremos un 0 en la casilla correspondiente a cada


trmino.

Si disponemos del mapa de Karnaugh de una funcin es inmediato obtener la expresin de la


funcin, de igual modo que desde una tabla de verdad.

Mara Jess Martn Martnez : mjmm@usal.es


Ejemplo Tablas de verdad y Mapas de Karnaugh

Consideremos la funcin definida por la tabla


de verdad. Podr ponerse como

= + + + =
= + + + + + + + + +

Sin embargo, puede comprobarse que tambin


las expresiones
= + + =
= + + + + +
corresponden a la tabla de verdad. ./ ,

Debemos por tanto decir que la forma anteriormente propuesta, aunque correcta, no es la ms
simple, salvo en casos excepcionales.
Antes de proceder a implementar una funcin es conveniente, en general, intentar obtener su
forma ms sencilla, mediante su simplificacin.

Mara Jess Martn Martnez : mjmm@usal.es


Antes de proceder a implementar cualquier funcin con puertas lgicas es
conveniente obtenerla de forma ms sencilla mediante simplificacin.

La simplificacin de funciones lgicas puede obtenerse mediante la aplicacin de los


teoremas que hemos estudiado del Algebra de BOOLE.

Sin embargo, existen diferentes tcnicas de simplificacin


de funciones lgicas basadas en agrupar MINTERMS
que se diferencian en el estado de una variable

En un MINTERM figura complementada y en otro no

Las tcnicas mas usuales de simplificacin de modo


grfico son:

La utilizacin de los mapas de Karnaugh


La tcnica de Quine-McKluskey

Vamos a estudiar la de MAPAS DE KARNAUGH por ser


la mas sencilla.

http://upload.wikimedia.org/wikipedia/commons/thumb/d/d6/Karnaugh_map_KV_4mal4_21.svg/600px-Karnaugh_map_KV_4mal4_21.svg.png

Mara Jess Martn Martnez : mjmm@usal.es


Simplificacin de funciones lgicas mediante mapas de Karnaugh. Consideraciones:

Se pueden hacer grupos de 2, 4, 8, 16, 32 o 64 (2n) casillas adyacentes

Adyacencia de celdas o minterms (como se muestra en la figura):


Segn los ejes coordenados (horizontal y vertical), pero nunca segn ejes diagonales.
Los grupos de casillas de los bordes de los mapas opuestos entre s.
El grupo de casillas constituido por las cuatro esquinas del mapa.
Adyacencia de celdas del Mapa de
Un minterm puede tomarse varias veces si conviene en Karnaugh 4 variables
orden a la simplificacin de la funcin.

En un mapa de una funcin de n variables:


La adyacencia de dos 1 simplificacin de una
variable: esos dos minterms son representados por
un slo trmino de n-1 variables.

Cuatro 1 adyacentes podrn ser representados por


un trmino producto que simplifica dos variables:
quedara de n-2 , etc..

NOTA: Cuando tratemos de agrupar casillas para simplificar,


deberemos procurar conseguir grupos del mximo nmero de casillas,
pero respetando las normas anteriores.

http://upload.wikimedia.org/wikipedia/commons/thumb/d/d6/Karnaugh_map_KV_4mal4_21.svg/600px-Karnaugh_map_KV_4mal4_21.svg.png

Mara Jess Martn Martnez : mjmm@usal.es


Simplificacin de funciones lgicas mediante mapas de Karnaugh. Consideraciones:

TRUCO: Sealemos que en algunos casos pueden


introducirse MINTERMs inexistentes en la funcin a fin
de simplificarla, si se dan una de las dos condiciones Adyacencia de celdas del Mapa
siguientes de Karnaugh 4 variables

NO OCURRE: es aquel minterm (combinacin de las


variables) que no tiene posibilidad fsica de aparecer.

NO IMPORTA: es aquel minterm que de estar presente


en la entrada, no se toma en consideracin el valor de la
funcin.

En cualquiera de estos dos casos el minterm se


tomar contribuyendo a la funcin como ms nos
interese para su mxima simplificacin.

http://upload.wikimedia.org/wikipedia/commons/thumb/d/d6/Karnaugh_map_KV_4mal4_21.svg/600px-Karnaugh_map_KV_4mal4_21.svg.png

Mara Jess Martn Martnez : mjmm@usal.es


Ejemplo: Simplificar, mediante el mapa de Karnaugh la siguiente funcin:

= + + + + +

el x=1, y=1, z=1, v=1 no ocurre


donde el conjunto de valores:
el x=1, y=0, z=1, v=0 no importa.

El mapa de Karnaugh (denotando con * los minterms no ocurre y no importa):


& && &

La agrupacin puede representarse por: #

& &
La agrupacin puede representarse por:
&

La agrupacin puede representarse por: && & & 0 &

& &

La funcin esta representada por la suma de tres trminos producto:

= + +

NOTA: los minterms no ocurre y no importa se han tomado como unos para mayor simplificacin.

Mara Jess Martn Martnez : mjmm@usal.es


Agradecimientos
Daniel Pardo Collantes. rea de electrnica. Departamento de Fsica Aplicada
de la Universidad de Salamanca.
Referencias
Pardo Collantes, Daniel; Bailn Vega, Lus A., Elementos de
Electrnica.Universidad de Valladolid. Secretariado de Publicaciones e
Intercambio Editorial.1999.
http://www.forosdeelectronica.com/tutoriales/compuertas-digitales.htm
http://i.cmpnet.com/pldesignline/2006/05/max-bb-02.gif
http://zone.ni.com/cms/images/devzone/tut/voltagelevel.JPG
http://www.ee.surrey.ac.uk/Projects/Labview/minimisation/graphics/nak.gif
http://upload.wikimedia.org/wikipedia/commons/thumb/d/d6/Karnaugh_map_KV_
4mal4_21.svg/600px-Karnaugh_map_KV_4mal4_21.svg.png

Mara Jess Martn Martnez : mjmm@usal.es

Você também pode gostar