Professional Documents
Culture Documents
3.-Algebra booleana
3.1.-sistema numéricos y teoremas y postulados
En matemáticas, varios sistemas de notación que se han usado o se usan para
representar cantidades abstractas denominadas números. Un sistema numérico
está definido por la base que utiliza. La base de un sistema numérico es el número
de símbolos diferentes o guarismos, necesarios para representar un número
cualquiera de los infinitos posibles en el sistema. A lo largo de la historia se han
utilizado multitud de sistemas numéricos diferentes.
Debido a que las computadoras están diseñados para funcionar con los
interruptores ENCENDIDO/APAGADO, los dígitos y los números binarios les
resultan naturales. Los seres humanos usan el sistema numérico decimal, que es
relativamente simple en comparación con las largas series de unos y ceros que
usan los computadores. De modo que los números binarios del computador se
deben convertir en números decimales.
Los computadores están diseñados para usar agrupaciones de ocho bits. Esta
agrupación de ocho bits se denomina byte. En un computador, un byte representa
una sola ubicación de almacenamiento direccionable. Estas ubicaciones de
almacenamiento representan un valor o un solo carácter de datos como, por
ejemplo, un código ASCII. La cantidad total de combinaciones de los ocho
interruptores que se encienden y se apagan es de 256. El intervalo de valores de
un byte es de 0 a 255. De modo que un byte es un concepto importante que se
Sistemas Numéricos
Ejemplo: 101102 = 22
Ejemplo:
4) Complemento [B4]:
(4a) a + ā= 1
(4b) a * ā = 0
La tabla siguiente resume las propiedades y los teoremas más significativos del
álgebra booleana.
dfed
3.2.-funciones e implementaciones de compuertas lógicas
Una puerta lógica, o compuerta lógica, es un dispositivo electrónico con una
función booleana. Suman, multiplican, niegan o afirman, incluyen o excluyen
según sus propiedades lógicas. Se pueden aplicar a tecnología electrónica,
eléctrica, mecánica, hidráulica y neumática. Son circuitos de
conmutación integrados en un chip. Experimentada con relés o interruptores
electromagnéticos para conseguir las condiciones de cada compuerta lógica, por
ejemplo, para la función booleana Y (AND) colocaba interruptores en circuito serie,
ya que con uno solo de estos que tuviera la condición «abierto», la salida de la
compuerta Y sería = 0, mientras que para la implementación de una
compuerta O (OR), la conexión de los interruptores tiene una configuración
en circuito paralelo.
La tecnología microelectrónica actual permite la elevada integración
de transistores actuando como conmutadores en redes lógicas dentro de un
pequeño circuito integrado. El chip de la CPU es una de las máximas expresiones
de este avance tecnológico.
En nanotecnología se está desarrollando el uso de una compuerta lógica
molecular, que haga posible la miniaturización de circuitos.
Lógica directa
Puerta SI o BUFFER
La puerta lógica SI realiza la función booleana igualdad. En la práctica se suele
utilizar como amplificador de corriente o como seguidor de tensión, para adaptar
impedancias (buffer en inglés).
La ecuación característica que describe el comportamiento de la puerta SI es:
Puerta OR
La puerta lógica O, más conocida por su nombre en inglés OR (OR=0=V), realiza
la operación de suma lógica.
La ecuación característica que describe el comportamiento de la puerta OR es:
F=A+B
Su tabla de verdad es la siguiente:
Se puede definir esta puerta como aquella que da por resultado uno, cuando los
valores en las entradas son distintos. ej: 1 y 0, 0 y 1 (en una compuerta de dos
entradas). Se obtiene cuando ambas entradas tienen distinto valor.
Si la puerta tuviese tres o más entradas, la XOR tomaría la función de suma de
paridad, cuenta el número de unos a la entrada y si son un número impar, pone un
1 a la salida, para que el número de unos pases a ser par. Esto es así porque la
operación XOR es asociativa,
para tres entradas escribiríamos: Su tabla de verdad
sería:
Se puede definir como una puerta que proporciona el estado inverso del que esté
en su entrada.
Las tablas de verdad para dos y tres entradas o variables son las siguientes:
¿Que es la minimización?
Para efecto de este curso cuando nos referimos a una expresión mínima, nos
estamos refiriendo a la expresión mas simple de dos niveles.
Cualquier función booleana puede ser implantada con dos niveles de compuertas.
De esta manera los términos (N) son productos de las variables de entrada
(negadas o no) que se realizan con compuertas AND. Los + se realizan con una
compuerta OR de tantas entradas como términos productos haya en la función.
Como resultado tendremos que la función puede realizase con dos niveles de
compuertas:
El nivel 1 representado por las compuertas AND y el nivel 2 representado por la
compuerta OR, como se muestra en la figura. (En el nivel 1 se consideran también
la variable negada, que siendo formales se implantan con una compuerta NOT.)
Como señalamos anteriormente, la simplificación de las
funciones lógicas es una meta importante por el hecho de
que cuanto mas sencilla sea la función, más fácil será
construir el circuito equivalente. El objetivo de la
simplificación es el de minimizar el costo de implantación
de una función mediante componentes electrónicos,
donde el costo depende del número y complejidad de los
elementos necesarios para construirla.
La optimalidad de la simplificación utilizando Algebra de
Boole depende de la habilidad del diseñador para aplicar
la propiedad más adecuada en cada paso del proceso.
Esta tarea se hace cada vez más difícil al crecer la complejidad de la expresión.
Por ello, se utilizan algunos métodos que facilitan y automatizan el proceso de
simplificación de las funciones lógicas, como lo son los Mapas de Karnaugh, y el
método de Quine-McCluskey. (Para este curso solo se cubrirá el método de
Mapas de Karnaugh) l
En este punto, siendo la minimización el último paso antes de la implantación en el
diseño de un sistema digital y antes de pasar a describir el método de
minimización utilizando Mapas de Karnaugh, resumamos los diferentes pasos que
deben seguirse en un problema de diseño de lógica combinacional.
1. Se toman las proposiciones y se simbolizan.
2. Se construye una tabla de verdad con todas las combinaciones posibles de
las variables de entrada y se coloca un 1 para las combinaciones que cumplan con
las condiciones de diseño.
3. Se obtiene la forma canónica Suma de productos tomando los minterminos de
la tabla de verdad que sean iguales a 1.
4. Se simplifica la función utilizando Mapas de Karnaugh y se obtiene una
expresión mínima de dos niveles
Sistema secuencial
A diferencia de los sistemas combinacionales, en los sistemas secuenciales, los
valores de las salidas, en un momento dado, no dependen exclusivamente de los
valores de las entradas en dicho momento, sino también dependen del estado
anterior o estado interno.1 El sistema secuencial más simple es el biestable, de los
cuales, el de tipo D (o cerrojo) es el más utilizado actualmente.
El sistema secuencial requiere de la utilización de un dispositivo de memoria que
pueda almacenar la historia pasada de sus entradas (denominadas variables de
estado) y le permita mantener su estado durante algún tiempo, estos dispositivos
de memoria pueden ser sencillos como un simple retardador o celdas de
memoria de tipo DRAM, SRAM2 o multivibradores biestables también conocido
como Flip-Flop1 entre otros.
Elementos.
En todo sistema secuencial nos encontraremos con:
a) Un conjunto finito, n, de variables de entrada (X1, X2,..., Xn).
b) Un conjunto finito, m, de estados internos, de aquí que los estados
secuenciales también sean denominados autómatas finitos. Estos estados
proporcionarán m variables internas (Y1,Y2,..., Ym).
c) Un conjunto finito, p, de funciones de salida (Z1, Z2,..., Zp).Dependiendo de
cómo se obtengan las funciones de salida, Z, los sistemas secuenciales pueden
tener dos estructuras como las que se observan en la siguiente figura,
denominadas: a) Máquina de Moore y b) Máquina de Mealy
Aplicaciones
A continuación se indican ejemplos de sistemas secuenciales que pueden
encontrarse en forma de circuito integrado o como estructuras en sistemas
programados:
Autómata finito3
Contador
Registros
3.4.-mapas de karnaugh
Un mapa de Karnaugh (también conocido como tabla de Karnaugh o diagrama de
Veitch, abreviado como Mapa-K o Mapa-KV) es un diagrama utilizado para la
simplificación de funciones algebraicas Booleanas. El mapa de Karnaugh fue
inventado en 1950 por Maurice Karnaugh, un físico y matemático de
los laboratorios Bell.
Los mapas de Karnaugh reducen la necesidad de hacer cálculos extensos para la
simplificación de expresiones booleanas, aprovechando la capacidad del cerebro
humano para el reconocimiento de patrones y otras formas de expresión analítica,
permitiendo así identificar y eliminar condiciones muy inmensas.
El mapa de Karnaugh consiste en una representación bidimensional de la tabla de
verdad de la función a simplificar. Puesto que la tabla de verdad de una función de
N variables posee 2N filas, el mapa K correspondiente debe poseer también
2N cuadrados. Las variables de la expresión son ordenadas en función de su peso
y siguiendo el código Gray, de manera que sólo una de las variables varía entre
celdas adyacentes. La transferencia de los términos de la tabla de verdad al mapa
de Karnaugh se realiza de forma directa, albergando un 0 ó un 1, dependiendo del
valor que toma la función en cada fila. Las tablas de Karnaugh se pueden
fácilmente realizar a mano con funciones de hasta 6 variables, para funciones de
mayor cantidad de variables es más eficiente el uso de software especializado.
Ejemplo: Dada la siguiente función algebraica Booleana representada como el
sumatorio de sus minitérminos, y con las variables Booleanas A,B,C,D, la función
se puede representar con dos notaciones distintas:
Tabla de verdad:
Utilizando los Minterm definidos, se elabora la tabla de
verdad:
Mapa de Karnaugh
Las variables de entrada pueden combinarse de 16 formas
diferentes, por lo que el mapa de Karnaugh tendrá 16 celdas,
distribuidas en una cuadrícula de 4 × 4.
La combinación de dígitos binarios en el mapa representa el
resultado de la función por cada combinación de entradas.
Por ejemplo, la celda en la esquina superior izquierda del
mapa es 0, porque el resultado de la función es ƒ = 0
cuando A = 0, B = 0, C = 0, D = 0. De igual manera, la
esquina inferior derecha es 10 porque el resultado de la
función es ƒ = 10 cuando A = 1, B = 0, C = 1, D = 0.
Aplicaciones.
Los diagramas de Karnaugh pueden ser utilizados en la simplificación de
sentencias definidas en lógica Booleana, construcción de estaciones de
clasificación, selección y control de calidad de piezas fabricadas, entre otras
aplicaciones