Está en la página 1de 33

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

3.- ANLISIS Y DISEO DE CIRCUITOS COMBINACIONALES

OBJETIVOS DEL TEMA: Definicin de elemento lgico, circuito lgico, circuito combinacional y circuito secuencial Explicar la suma y multiplicacin booleanas Construir una tabla de verdad para un circuito lgico Aplicar la ley conmutativa, asociativa y distributiva del lgebra de Boole Aplicar las nueve reglas bsicas (o postulados) del lgebra de Boole Enunciar y aplicar los Teoremas de De Morgan Describir el funcionamiento del inversor y de las puertas AND, OR y NOT Describir el funcionamiento de las puertas NAND y NOR Describir el funcionamiento de las puertas OR-exclusiva y NOR-exclusiva Elaborar los diagramas de tiempos que muestran las relaciones de tiempo de las entradas y las salidas de las diferentes puertas lgicas Obtener la forma cannica de una funcin a partir de su tabla de verdad Convertir una tabla de verdad de tres o cuatro variables en un mapa de Karnaugh Aplicar la propiedad de adyacencia de celdas para agruparlas adecuadamente Obtener la expresin de la funcin que desarrolla un circuito ya diseado

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

INTRODUCCIN

En este tema nos ocuparemos de una serie de contenidos que se podran englobar en una unidad temtica denominada Conceptos previos. Lgica Combinacional. Vamos a abordar una serie de conceptos introductorios, que servirn de base para el estudio y desarrollo de circuitos combinacionales (y secuenciales ms adelante) de distinta complejidad. Un elemento lgico es la abstraccin de un componente fsico cuyas seales de entrada y salida son binarias, es decir, las variables que las modelizan nicamente pueden tomar valores 0 1. Los circuitos lgicos son los sistemas formados mediante la interconexin de elementos lgicos. Un circuito combinacional es un circuito lgico cuyas variables de salida estn completamente determinadas en cualquier instante por los valores aplicados a sus variables de entrada. En la lgica combinacional el nivel de salida depende slo y exclusivamente de la combinacin de los niveles de entrada. Un circuito secuencial, por contraposicin, es un sistema que tiene memoria. En consecuencia, la salida depender no slo de la entrada presente sino tambin de la historia pasada (lo que ha ocurrido con anterioridad).

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

3.1.- LGEBRA DE BOOLE

En su forma ms simple, la lgica es la parte del razonamiento humano que nos dice que una determinada proposicin es verdadera si se cumplen ciertas condiciones. Muchas situaciones y procesos que encontramos en nuestra vida cotidiana pueden expresarse como funciones lgicas. Ejemplo: Si decimos que la luz est encendida si la bombilla no est fundida y el interruptor est dado, estamos razonando lo siguiente: La proposicin la luz est encendida ser cierta 1) si la condicin la bombilla no est fundida se cumple , y 2) si la condicin el interruptor est dado tambin se cumple. La proposicin anterior es una proposicin lgica. Hacia 1850 el matemtico y lgico irlands George Boole desarroll un sistema matemtico para formular proposiciones lgicas con smbolos, de manera que los problemas puedan ser escritos y resueltos de una forma similar al lgebra ordinaria. Hoy en da a esta rama del lgebra se le conoce como lgebra de Boole. Su lgebra consiste en un mtodo para resolver problemas de lgica que recurre solamente a los valores binarios 1 y 0 y a tres operadores: AND (y), OR (o) y NOT (no). El trabajo de Boole lleg a ser un paso fundamental en la revolucin de los computadores, cuando Claude E. Shannon, en 1938, demostr: cmo las operaciones booleanas elementales se podan representar mediante circuitos conmutadores elctricos, cmo la combinacin de stos poda representar operaciones aritmticas y lgicas complejas cmo el lgebra de Boole se poda utilizar para simplificar circuitos de conmutacin El enlace entre lgica y electrnica estaba establecido. Las variables del lgebra de Boole, llamadas variables lgicas, a diferencia de las variables empleadas en el lgebra convencional slo pueden tomar los valores 0 1. Estos valores no son numricos ni tienen nada que ver con el sistema binario ni con ninguna forma de representacin. Se asocian con los valores S o No, Verdadero o Falso. Es decir, con el hecho de que una determinada afirmacin sea cierta o no, o de que se presente o no una determinada situacin. Ejemplos: Afirmaciones como que una bombilla pueda estar encendida o apagada, un interruptor abierto o cerrado, una alarma sonora en silencio o activada, etc.

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

3.1.1.- VARIABLES Y FUNCIONES LGICAS

Cualquier lgebra tiene un conjunto de elementos y un conjunto de operadores que actan sobre los elementos. El lgebra de Boole llama a los elementos variables lgicas. Una funcin lgica, o funcin booleana, es una expresin que indica bajo qu condiciones se tiene el valor Cierto o Falso. Y se puede representar como una expresin algebraica en la que intervengan las variables lgicas relacionadas entre s mediante los operadores lgicos: Negacin, representada por el signo encima de la variable lgica. La negacin de una variable es cierta si la variable es falsa y viceversa. Suma lgica, representada por el signo +. La suma de dos variables es cierta cuando alguna de las variables, o ambas, lo es. Producto lgico, representada por el signo . El producto de dos variables es cierto cuando las dos variables son ciertas Ejemplo: Supongamos que en un edificio con cuatro entradas se desea colocar un sistema de seguridad que encienda un indicador luminoso cuando se abra una cualquiera de las puertas de entrada. La expresin que se active una alarma cuando se abra cualquiera de las cuatro puertas sera lo que diramos en lenguaje cotidiano. Indica qu condiciones deben darse para que se active la alarma e indica tambin que, cuando no se cumplan esas condiciones, la alarma no se active. Cada una de las cuatro puertas puede estar abierta o cerrada y se puede asignar a una variable lgica por puerta (las llamaremos, por ejemplo, A, B, C y D). Cada variable tomar el valor 0 cuando la puerta a la que representa est cerrada y el valor 1 cuando est abierta. La alarma puede asignarse a una funcin lgica (F, por ejemplo) que tomar el valor 1 cuando deba activarse y el valor 0 cuando deba permanecer en silencio. Adelantando acontecimientos podemos ya intuir el significado de la expresin

F=A+B+C+D

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

3.1.2.- LA TABLA DE VERDAD

Un elemento fundamental para el manejo de funciones lgicas es la Tabla de Verdad. La Tabla de Verdad es una forma de representar una funcin e indica qu valores toma para cada una de las posibles combinaciones de valores de las variables lgicas que intervienen. Ejemplo 1: Veamos la Tabla de Verdad correspondiente a la funcin mencionada en el apartado 3.1.1 relativa al dispositivo de seguridad de un edificio, donde las variables que representan el estado de apertura/cierre de cada puerta son A, B, C y D. La Tabla de Verdad (Tabla 1) muestra los 16 estados posibles de las cuatro puertas. A 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 B 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 C 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 Tabla 1 D 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 F 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

La primera lnea representa la situacin en la que las cuatro puertas (cuatro variables lgicas a las que hemos llamado A, B, C y D) se encuentran cerradas. La alarma, funcin lgica a la que denominaremos F, deber permanecer inactiva. A esta situacin, alarma inactiva, le asignamos el valor 0. Las 15 lneas restantes muestran todos los casos en los que al menos una de las puertas est abierta; es decir, cuando al menos una de las variables toma el valor 1. En cualquiera de estos casos la alarma debe activarse, por lo que asignaremos el valor 1 a la funcin F. Obsrvese que el asignar a la posicin puerta abierta el valor 1 y a la posicin puerta cerrada el valor 0 es totalmente arbitrario. Igualmente es arbitrario dar el valor 0 a alarma inactiva y el valor 1 a la situacin alarma activa. Naturalmente, lo que es necesario es mantener la consistencia una vez elegidos los valores 0 y 1 para variables y funciones.

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

Ejemplo 2: Se trata de la funcin lgica F, que ser cierta cuando lo sean algunas variables de entrada. Es decir, la funcin F depende de las variables A, B y C, y tomar el valor 1 en los casos siguientes: 1) cuando A, B y C valgan 0, o bien 2) cuando A y B valgan 0 y adems C valga 1, o bien 3) cuando A valga 1 y adems B y C valgan 0, o bien 4) cuando A B y C valgan todas 1 mientras que la funcin F tomar el valor 0 para cualquier otra combinacin de valores de las variables. La Tabla 2 muestra esta descripcin representando la salida F para cada posible combinacin de entradas en trminos de 0s y 1s. Una tabla tal como sta se llama Tabla de Verdad: A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 Tabla 2 F 1 1 0 0 1 0 0 1

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

3.1.3.- FUNCIONES LGICAS FUNDAMENTALES

Las principales funciones lgicas empleadas en lgebra de Boole son las siguientes: OR: Suma Lgica. Genera un valor cierto de salida cuando cualquiera de sus entradas son ciertas. AND: Producto Lgico. Genera un valor cierto de salida si, y slo si, todas sus entradas son ciertas NOT: Negacin. Cuando la entrada es cierta la salida es falsa, y viceversa. EQU: Igualdad. Asigna a una funcin un valor, una variable o una combinacin de variables. XOR: OR Exclusivo. Con dos entradas, la salida es cierta slo cuando las dos entradas estn a niveles lgicos opuestos. NOR: Negacin de la funcin OR NAND: Negacin de la funcin AND XNOR: Negacin de la funcin XOR Las cinco primeras son aqullas que podramos denominar bsicas, mientras que las tres ltimas son combinacin de dos de las anteriores. (Como veremos ms adelante, la funcin XOR puede considerarse derivada de las funciones OR, AND y NOT. No obstante la consideraremos una funcin bsica). Todas ellas se aplican a variables, excepto la funcin de Igualdad, que se emplea para asignar un valor, una variable, o una combinacin de variables y funciones fundamentales, a una funcin. En Electrnica Digital todas las funciones se realizan fsicamente mediante el empleo de Puertas Lgicas.

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

3.1.4.- LEYES Y REGLAS DEL LGEBRA DE BOOLE

Al igual que en otras reas de las matemticas, existen en el lgebra de Boole una serie de leyes y reglas bien determinadas que tienen que seguirse para aplicarlo correctamente. Las ms importantes son las que se presentan en este apartado. Antes de describirlas veamos con detalle en qu consisten la suma booleana (o suma lgica) y el producto booleano (o producto lgico):

Suma booleana La suma booleana es equivalente a la funcin lgica OR. En el lgebra de Boole un trmino suma se obtiene mediante una operacin OR, sin que exista ninguna operacin AND en la expresin. Algunos ejemplos de trminos suma son A+B, A+B, A+B+C y A+B+C+D. Un trmino suma es igual a 1 cuando uno o ms de los literales del trmino es 1. Un trmino suma es igual a 0 slo si cada uno de los literales son igual a 0.

Producto booleano El producto o multiplicacin booleano es equivalente a la funcin lgica AND. En el lgebra de Boole un trmino producto se obtiene mediante una operacin AND, sin que exista ninguna operacin OR en la expresin. Algunos ejemplos de trminos producto son AB, AB, ABC Y ABCD. Un trmino producto es igual a 1 slo si cada uno de los literales del trmino es 1. Un trmino producto es igual a 0 cuando uno o ms de los literales son igual a 0.

3.1.4.1.- Postulados El lgebra de Boole se basa en una serie de postulados que se enuncian a continuacin: a+1=1 a+0=a a+a=a a+a=1 a1=a a0=0 aa=a aa=0

En la mitad izquierda se indican los postulados referentes a la suma booleana, mientras que en el lado derecho se mencionan los correspondientes al producto booleano.

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

El ltimo postulado establece que la negacin de una variable dos veces consecutivas devuelve a esta variable su valor original.

3.1.4.2.- Propiedades

Tres son las propiedades que pueden aplicarse en lgebra de Boole, que coinciden con las del lgebra ordinaria: Conmutativa: Asociativa: Distributiva: a + b = b + a // a b = b a a + b + c = a + ( b + c) // a b c = a ( b c ) a(b+c)=ab+ac

Cada una de las propiedades se ilustra con 2 3 variables, pero el nmero de variables no est limitado a esta cantidad. No vamos a demostrar estas propiedades, por escapar del mbito de nuestra asignatura, aunque las vamos a utilizar profusamente en adelante en el manejo de expresiones algebraicas.

3.1.4.3.- Teoremas de De Morgan

Tambin son muy importantes en el lgebra de Boole los dos teoremas de De Morgan, aunque tampoco los demostraremos. Sus enunciados son los siguientes: La negacin de una suma lgica es igual al producto lgico de las variables negadas.

La negacin de un producto lgico es igual a la suma lgica de las variables negadas.

El conocimiento y correcta aplicacin de estos dos teoremas es muy importante, como iremos viendo conforme avancemos en conocimientos en anlisis y diseo de circuitos digitales.

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

3.2.- CIRCUITOS DIGITALES

La realizacin, por medio de componentes electrnicos digitales, de Funciones Lgicas definidas por su Tabla de Verdad o por su expresin algebraica, da lugar a los Circuitos Digitales, que sern objeto de nuestra atencin a partir de este punto.

3.2.1.- PUERTAS LGICAS

Hasta ahora hemos visto formas de representacin de funciones lgicas. Consideraremos ahora el problema de la realizacin prctica de las funciones lgicas fundamentales por medio de dispositivos electrnicos (implementacin). Estos dispositivos electrnicos se conocen con el nombre de puertas lgicas, y son la base constructiva de la electrnica digital. Como cualquier circuito electrnico, una puerta est formada fsicamente por componentes electrnicos, fundamentalmente transistores, aunque tambin se requieren otros elementos como resistencias, diodos condensadores, etc, y las conexiones adecuadas entre ellos. Sin embargo, nosotros nicamente nos preocuparemos de la puerta en s, no de los elementos que la integran. S debemos saber que las puertas lgicas reciben en sus entradas niveles de tensin, y reaccionan proporcionando en su salida otro nivel de tensin, que es funcin de los de entrada. Tanto las entradas como las salidas operan con tensiones comprendidas en dos rangos bien diferenciados: son los niveles lgicos que vimos en el Tema 1. Utilizaremos a partir de ahora la lgica positiva, es decir, se asociar el 1 lgico a la tensin a nivel alto, y el 0 lgico a la tensin a nivel bajo. Una puerta lgica no es sino un circuito electrnico capaz de realizar alguna de las funciones lgicas fundamentales que mencionamos en el apartado 3.1.3. Nota informtica: Las puertas lgicas son los bloques de construccin de las computadoras. La mayor parte de las funciones de una computadora, con la excepcin de ciertos tipos de memoria, se implementan mediante puertas lgicas utilizadas a muy gran escala. Por ejemplo, un microprocesador, que es la parte principal de una computadora, consta de miles de puertas lgicas.

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

10

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

3.2.1.1.- Puerta AND

La puerta AND es una de las puertas bsicas con la que se construyen todas las funciones lgicas. Una puerta AND puede tener dos o ms entradas y realiza la operacin producto lgico. La expresin de esta funcin para dos entradas es S = a b . Esta funcin produce como resultado 1 cuando todas las entradas tienen simultneamente el valor 1, mientras que el resultado es 0 en cualquier otro caso. El propsito bsico de una puerta AND es determinar cundo ciertas condiciones de entrada son simultneamente verdaderas y producir una salida a nivel ALTO para indicarlo. Para dos variables de entrada, el resultado ser 1 cuando la variable a vale 1 y, adems, la variable b tiene tambin el valor 1. De ah que el producto lgico se conozca tambin como funcin Y (AND, en ingls).

Figura 1 En la Figura 1 se muestra: La Tabla de Verdad de esta funcin, en la que se enumeran todas las combinaciones de entrada con las correspondientes salidas para una puerta AND de dos entradas. La tabla de verdad puede ampliarse para cualquier nmero de entradas. El smbolo reconocido internacionalmente para representarla: un semicrculo. Un circuito con elementos muy sencillos (slo resistencias e interruptores, adems de una fuente de alimentacin) que podra actuar como una puerta AND. En el punto S nicamente habr una tensin de 5V (valor 1) cuando ambos interruptores estn cerrados, (valor 1 para a y para b). Este circuito se incluye nicamente como referencia; en la prctica una puerta AND en microelectrnica se fabrica a base, principalmente, de transistores. El cronograma de la funcin; es decir, los valores que va tomando la funcin S segn los que tomen las variables a y b. Se puede ver cmo slo cuando ambas variables coinciden con el valor 1, la salida S toma el valor 1.

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

11

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

Ejemplo 1: Un ejemplo de un circuito a base de una puerta AND podra ser un sistema de control en un avin para detectar en el aterrizaje que se ha extrado tanto el tren delantero como el trasero. Un sensor en cada uno de ellos enva una seal (valor 1) a una de las entradas de una puerta AND cuando el tren se ha extrado y no la enva (valor 0) mientras est recogido. La salida de la puerta AND encender un piloto verde slo cuando ambos trenes hayan sido extrados, mientras que este piloto permanecer apagado cuando uno cualquiera de los trenes de aterrizaje permanezca recogido. Ejemplo 2: Una aplicacin comn de la puerta AND es habilitar (enable) o permitir el paso de una seal (tren de impulsos) de un punto a otro en determinados instantes, e inhibir o impedir el paso en otros momentos. Las entradas de la puerta AND sern la seal A con la seal a habilitar/deshabilitar, y la seal B de habilitacin. Cuando la entrada de habilitacin est a nivel ALTO, la seal A pasa a travs de la puerta, y cuando la entrada de habilitacin est a nivel BAJO, se impide el paso a travs de la puerta.

3.2.1.2.- Puerta OR

De forma anloga se presenta la funcin OR entre dos variables. Una puerta OR puede tener dos o ms entradas y realiza la operacin suma lgica. La expresin de esta funcin, para dos entradas, es S = a + b . Una puerta OR genera un nivel ALTO a la salida cuando cualquiera de sus entradas est a nivel ALTO. La salida se pone a nivel BAJO slo cuando todas las entradas estn a nivel BAJO. Por tanto, el propsito de una puerta OR es determinar cundo una o ms de sus entradas estn a nivel ALTO y generar una salida a nivel ALTO que indique esta condicin. Para dos variables de entrada, la funcin toma el valor 1 cuando cualquiera de las dos variables, o ambas, tiene el valor 1, mientras que en caso contrario toma el valor 0. Es decir, la salida vale 1 cuando a b ambas valen 1; de ah que se conozca tambin como funcin O (OR en ingls). En la Figura 2 se presenta la Tabla de Verdad, el smbolo reconocido internacionalmente y un circuito elemental para implementarla.

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

12

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

Figura 2 La Tabla de verdad puede extenderse a cualquier nmero de entradas e, independientemente del nmero de entradas, la salida es un nivel ALTO cuando una o ms entradas estn a nivel ALTO. En la parte derecha de la misma Figura 2 se representa el cronograma de la funcin; es decir, los valores que va tomando la funcin S segn los que tomen las variables a y b. Se puede ver cmo cuando cualquiera de las variables ( o las dos simultneamente) tiene el valor 1, la salida S toma el valor 1. Ejemplo: Un circuito que podra realizarse con una puerta OR podra ser un sistema de alarma para una sala de un museo con dos puertas; durante el da la alarma se mantiene desconectada y se activa al cerrarse el museo. Un sensor en cada una de las puertas detecta si est abierta (valor 1) o cerrada (valor 0). La salida de cada sensor se conecta a una entrada de una puerta OR, cuya salida se conecta a una sirena; as, cuando ambas puertas estn cerradas, la salida es 0 y la sirena est en silencio, mientras que cuando cualquiera de las puertas (o las dos a la vez) est abierta, la salida de la puerta OR es 1 y sonar la sirena.

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

13

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

3.2.1.3.- Puerta EQU

La puerta EQU es la ms sencilla de todas. Podramos decir que no hace nada, simplemente asigna una variable. Desde un punto de vista lgico, se puede prescindir de ella y sustituirla por una simple conexin entre a y S. Esto es lo que haremos a lo largo del curso. La razn de su existencia es puramente fsica: se emplea para regenerar o amplificar seales.

Funcin igualdad Smbolo = S=a Ejemplo:

Tabla de Verdad
a 0 1 S 0 1 0V S a 5V

Figura 3 En la Figura 3 se representa la Tabla de Verdad de esta funcin, as como su smbolo y un circuito elemental que cumple la funcin.

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

14

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

3.2.1.4.- Puerta NOT

La puerta NOT, o INVERSOR, realiza la funcin NOT y se aplica a una nica variable. El resultado, como se puede observar en la Tabla de Verdad que se incluye en la Figura 4, produce siempre el valor contrario al de la variable. Esta funcin se conoce como negacin o complementacin y se representa con una pequea lnea sobre la variable que se desea complementar ( S = a ) . En algunas ocasiones se puede ver en lugar de la lnea, una comilla al lado de la variable ( S = a ).

Negacin lgica Smbolo S=a Ejemplo:

Tabla de Verdad
a 0 1 S 1 0

5V

0V S Figura 4

En la Figura 4 se representa la Tabla de Verdad de esta funcin, as como su smbolo y un circuito elemental que cumple la funcin.

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

15

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

3.2.1.5.- Puerta NAND

La puerta NAND es un elemento lgico popular, debido a que se puede utilizar como una puerta universal. Es decir, las puertas NAND se pueden combinar para implementar las operaciones de las puertas AND, OR y del inversor. Ms adelante veremos la propiedad universal de la puerta NAND. La puerta NAND realiza una funcin derivada de la AND. La salida es la negacin de la puerta AND. Sus caractersticas se recogen en la Figura 5. Su expresin es S = a b . Esta expresin podra realizarse por la unin de dos de las puertas ya estudiadas, AND y NOT, aunque dada su importancia se trata como una puerta en s misma.

Figura 5 Por otra parte, en virtud del teorema de De Morgan enunciado en el apartado 3.1.4, puede expresarse tambin, como S = a + b. Al lado derecho de la figura se representa el cronograma de esta funcin.

3.2.1.6.- Puerta NOR

Anlogamente, la funcin NOR, cuyas caractersticas se recogen en la Figura 6, produce la negacin de la funcin OR. Su expresin es S = a + b. Esta expresin podra realizarse por la unin de dos de las puertas ya estudiadas, OR y NOT, aunque dada su importancia se trata como una puerta en s misma. Por otra parte, en virtud del teorema de De Morgan, enunciado en el apartado 3.1.4, puede expresarse tambin como S = a b.

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

16

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

a b

Tabla de verdad:

a
0 0 1 1

b
0 1 0 1

S
1 0 0 0

Negacin de la OR S=a+b=ab Figura 6

3.2.1.7.- Puerta XOR

La funcin XOR, conocida frecuentemente como OR exclusivo, es similar a la funcin OR, excepto cuando las dos variables tienen el valor 1. En este caso, una funcin OR dara como resultado un 1, mientras que la XOR produce un 0. Es decir, la salida de una puerta XOR se pone a nivel ALTO slo cuando las dos entradas estn a niveles lgicos opuestos. Sus caractersticas se indican en la Figura 7. a S b

OR exclusivo Smbolo S=a b=ab+ba

Tabla de verdad:

a
0 0 1 1

b
0 1 0 1

S
0 1 1 0 Figura 7

Aunque la funcin XOR se forma mediante la combinacin de otras puertas (es una funcin derivada de las funciones OR, AND y NOT segn se indica en la expresin), se trata como un elemento lgico bsico, con su propio smbolo, debido a la importancia que tiene en muchas aplicaciones.

Expresin que no vamos a demostrar.

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

17

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

3.2.1.8.- Puerta XNOR

De forma anloga a las funciones OR y AND, tambin la funcin XOR tiene su correspondiente funcin complementada: la XNOR. Cuando dos niveles lgicos de entrada son opuestos, la salida de la puerta XNOR es un nivel BAJO. Esta funcin, cuyas caractersticas se presentan en la Figura 8, tambin podra realizarse con una puerta XOR seguida de otra NOT, o bien con las funciones AND y OR que se indican en la siguiente expresin :

Esta puerta lgica podra utilizarse, por ejemplo, para comparar dos variables, de manera que diese como resultado un 1 cuando ambas variables fuesen iguales y un 0 cuando fuesen diferentes. (Ms adelante, entre los circuitos fundamentales, veremos otro tipo de comparador, algo ms complejo, que no slo indica si dos variables son iguales sino, tambin, cul de ellas es mayor) .

Figura 8 En el lado derecho de la figura se representa el cronograma de esta funcin, es decir, los valores que va tomando la funcin S a lo largo del tiempo segn los que tomen las variables a y b. Se ve que la salida nicamente toma el valor 1 cuando las dos variables de entrada tienen el mismo valor, sea ste 0 o 1.

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

18

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

3.2.2.- REALIZACIN DE FUNCIONES LGICAS

El objetivo fundamental de la Electrnica Digital es el diseo de circuitos electrnicos capaces de realizar funciones lgicas. Para ello se deben seguir una serie de pasos en los cuales el lgebra de Boole es una herramienta imprescindible, puesto que proporciona una manera concisa de expresar el funcionamiento de un circuito lgico, formado por una combinacin de puertas lgicas, de tal forma que la salida queda determinada por la combinacin de los valores de entrada. Para conseguir el objetivo de disear un circuito electrnico capaz de realizar una determinada funcin lgica, se deben seguir los siguientes pasos: Analizar el problema y desarrollar la Tabla de Verdad. Ya hemos dicho anteriormente que la Tabla de Verdad es el elemento que representa el comportamiento de una funcin segn los distintos valores que pueda tener cada una de las variables de entrada. De ella obtendremos una primera expresin algebraica de la funcin (Forma Cannica). Obtener una expresin lgica simplificada aplicando, o bien propiedades y teoremas del lgrebra de Boole, o bien algn procedimiento sistemtico para tal fin (como por ejemplo los diagramas de Karnaugh). Representar el circuito utilizando las puertas lgicas necesarias. Supongamos que ya disponemos de la Tabla de Verdad que representa el comportamiento de la funcin a implementar. Tomemos el ejemplo de la Tabla 2, mostrada en el apartado 3.1.2., y que reproducimos a continuacin: A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 Tabla 2 F 1 1 0 0 1 0 0 1

La funcin F toma el valor 1 en cuatro ocasiones: cuando a y b y c valen 0, es decir, cuando a y b y c valen 1, lo que se puede expresar como a b c, o bien, cuando a y b valen 0 y c vale 1, lo que se puede expresar como a b c, o bien, cuando a vale 1 y b vale 0 y c vale 0, lo que se puede expresar como a b c, o bien, cuando a y b y c valen 1 simultneamente, lo que se puede expresar como a b c.

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

19

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

La funcin F se puede expresar por tanto como la suma lgica (OR) de cada una de las expresiones anteriores, ya que para cada una de esas expresiones la funcin toma el valor 1. As pues, tendremos

Este desarrollo en forma de suma de productos se conoce como desarrollo por minterms (existe otra forma desarrollada como producto de sumas que se conoce como desarrollo por maxterms y que no vamos a analizar). En esta expresin se puede observar que: hay tantos sumandos como combinaciones de las variables a, b y c con las cuales la funcin toma el valor 1; en nuestro caso, cuatro sumandos cada uno de los sumandos est formado siempre por el producto de las tres variables; pudiendo estar cada una de ellas complementada o no. Podra demostrarse que slo hay una expresin que cumpla las condiciones anteriores y a ella se le conoce como Forma Cannica. Esta Forma Cannica puede materializarse por medio de puertas lgicas y se tendra as el circuito digital para realizar la funcin deseada. Sin embargo, frecuentemente, es posible encontrar expresiones ms simples que tambin realizan la misma funcin. Son por tanto equivalentes y dan lugar a circuitos ms sencillos y, en consecuencia, ms econmicos. Estas expresiones ms sencillas, si las hay, pueden obtenerse aplicando las propiedades y Teoremas del lgebra de Boole antes enunciados, pero depende de la habilidad de quien est trabajando. Existen, sin embargo, procedimientos ms sistemticos para tal fin. El ms sencillo es el Mtodo de Karnaugh, muy simple para funciones con un mximo de cuatro variables (es factible con cinco variables y realmente complicado con ms). Una alternativa es el Mtodo de Quine McClusky, bastante engorroso para su utilizacin manual pero muy adecuado para su programacin y, por tanto, utilizado habitualmente en el diseo de circuitos. Una vez obtenida la expresin lgica simplificada, slo nos queda representar el circuito empleando las puertas lgicas necesarias. En la Figura 9 se resumen los pasos necesarios anteriormente mencionados.

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

20

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

Figura 9

3.2.2.1.- Mtodo de Karnaugh

Veamos con las siguientes figuras el procedimiento a seguir para simplificar una funcin lgica expresada bajo su Forma Cannica. Nos limitaremos a explicar la mecnica del mtodo de Karnaugh omitiendo la demostracin matemtica de su validez por no corresponder a esta asignatura. Un mapa de Karnaugh proporciona un mtodo sistemtico de simplificacin de expresiones booleanas y, si se aplica adecuadamente, genera las expresiones ms simples posibles, conocidas como expresiones mnimas. Es bsicamente una receta para la simplificacin. Un mapa de Karnaugh es similar a una tabla de verdad, ya que muestra todos los valores posibles de las variables de entrada y la salida resultante para cada valor. En lugar de organizar en filas y columnas, como una tabla de verdad, el mapa de Karnaugh es una matriz de celdas en la que cada celda representa un valor binario de las variables de entrada. En la tabla siguiente (tabla 3) se indica el nmero de celdas y la forma que toma el mapa segn el nmero de variables de entrada (en nuestro caso, un mximo de cuatro variables):

N variables entrada 2 3 4

N celdas mapa 4 8 16 Tabla 3

N filas 2 4 4

N columnas 2 2 4

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

21

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

Para aclararlo mejor se recoge en la Figura 10 el formato de los mapas de Karnaugh para 2, 3 o 4 variables:

Figura 10 En la parte superior de cada columna del mapa se colocarn las combinaciones que pueden tomar las dos primeras variables de la funcin (o la primera en el caso de slo dos variables) exactamente en el orden que se indica 00 01 11 10 (0 y 1 en el caso de slo dos variables). Anlogamente se procede con las ltimas variables, pero colocando estos mismos valores a la izquierda de cada una de las filas. Debe tenerse en cuenta que es imprescindible seguir el orden indicado, aunque no se corresponda con el orden consecutivo de los valores numricos. Seguidamente cada celda se hace corresponder con una de las combinaciones posibles de la Tabla de Verdad. Se lleva por tanto a cada celda el valor correspondiente de la funcin para esa combinacin: 0 1. En la Figura 11 se siguen estos pasos para la Tabla de Verdad correspondiente a la funcin que ya hemos descrito anteriormente y estamos empleando como ejemplo (tabla 2).

Figura 11 Nota: Por comodidad y para evitar posibles errores en los pasos posteriores, se recomienda llevar al mapa de Karnaugh nicamente los valores 1 de la funcin, dejando en blanco las celdas correspondientes a valores 0.

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

22

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

Seguidamente llega el paso fundamental en el Mtodo de Karnaugh. Se deben agrupar todas las celdas adyacentes que tienen el valor 1 siguiendo el siguiente procedimiento (Figura 12):

Figura 12 Se forman grupos rectangulares con 2, 4, 8 16 celdas adyacentes, comenzando siempre por los grupos mayores (as agrupamos las dos celdas de la izquierda de la figura.) Se consideran tambin celdas adyacentes las perimetrales opuestas (as forman grupo las dos celdas marcadas con trazos discontinuos en la figura, a izquierda y derecha) Los grupos pueden superponerse parcialmente (en la figura se superponen el grupo sombreado y el marcado con trazo discontinuo) por ltimo se toman las celdas aisladas no cubiertas anteriormente (la celda aislada sombreada). Hecha la agrupacin anterior, ya estamos en condiciones de escribir la expresin simplificada de la funcin cuya Tabla de Verdad estamos analizando. Para ello debemos tener en cuenta que esta funcin quedar expresada en forma de suma de productos tendr tantos trminos como grupos hayamos formado en nuestro mapa de Karnaugh, incluyendo aquellas celdas que hayan quedado aisladas Cada sumando estar formado por el producto de aquellas variables cuyo valor no vare en las distintas celdas que forman el grupo: Para el primer sumando (en la figura el grupo de dos celdas sombreado), vemos que los valores de a y de b son 0 en ambas celdas, mientras que c toma el valor 0 en la celda superior y el valor 1 en la celda inferior; por tanto, para formar el sumando correspondiente a ese grupo se tomarn slo las variables a y b. Estas variables intervendrn en su forma negada cuando el valor correspondiente a ellas sea 0. (En nuestro caso, tanto a como b toman el valor 0 en estas celdas, por lo que aparecern negadas en el producto correspondiente: a b).

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

23

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

Para el segundo sumando (el correspondiente al grupo marcado con trazo discontinuo), intervendrn las variables b y c (la variable a toma el valor 0 en la celda de la izquierda y el valor 1 en la de la derecha, por lo que no entrar en este sumando). Como ambas variables toman el valor 0 en estas celdas, las dos aparecern negadas en el sumando correspondiente: b c. Slo queda el tercer sumando, formado por la celda aislada. En ella, intervienen las tres variables y las tres toman el valor 1, por lo que aparecen sin negar: a b c. As se llegara a la expresin simplificada de nuestra funcin F, expresin que quedara como:

Se podra haber seguido un mtodo similar utilizando las celdas con 0 en lugar de 1, obtenindose una expresin en forma de maxterms o producto de sumas, que no vamos a ver. Una vez conocida la expresin que define una funcin, su realizacin fsica por medio de puertas lgicas es inmediata. Basta con ir realizando cada sumando con la puerta o puertas lgicas correspondientes y, posteriormente, la suma de todos ellos se realizar por medio de puertas OR, tal y como se indica en la Figura 13 para tres funciones especialmente sencillas.

Figura 13 Por ltimo, en la Figura 14 se incluye el circuito correspondiente a la funcin que hemos venido analizando anteriormente.

Figura 14

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

24

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

Podemos observar cmo se incluyen en ella puertas lgicas con ms de dos entradas: no son sino una extensin de las puertas lgicas bsicas. Una puerta AND con varias entradas toma el valor 1 cuando todas sus entradas tienen el valor 1, mientras que una puerta OR da el valor 1 cuando al menos una de sus entradas tiene el valor 1. A la hora de realizar funciones lgicas debemos tener en cuenta que: la simplificacin de una funcin no tiene por qu ser nica; a menudo es posible encontrar dos o ms expresiones equivalentes para una funcin con el mismo nivel de simplificacin. La nica expresin que define una funcin de forma unvoca es la forma cannica. si en el proceso de agrupacin de celdas del mapa de Karnaugh, dejamos sin formar algn grupo de mayor tamao, la expresin que obtengamos ser correcta desde un punto de vista funcional; es decir, la expresin que obtengamos y el circuito correspondiente, cumplirn con las especificaciones de la funcin, aunque no ser el ms sencillo posible. Todo ello, supuesto que realmente cubrimos la totalidad de celdas a 1 y que todos los grupos tienen forma rectangular. de acuerdo con la propiedad conmutativa, el orden en que se expresen los distintos sumandos es totalmente indiferente. Por otra parte, debemos mencionar dos puntos importantes: puede demostrarse matemticamente que cualquier funcin puede expresarse empleando nicamente puertas NAND o nicamente puertas NOR, aunque la expresin resultante no sea la ms simplificada. la industria electrnica generalmente, por razones de costes, suele emplear exclusivamente puertas NAND o puertas NOR para la realizacin de funciones lgicas. Nosotros, por sencillez y teniendo en cuenta que los alumnos no debern disear circuitos en su vida profesional, continuaremos realizando las funciones lgicas tal y como hemos explicado en figuras anteriores.

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

25

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

3.2.2.2.- Realizacin de Funciones Lgicas - Ejemplo

En la Figura 15 y las siguientes veremos el ejemplo de un circuito lgico algo ms complicado. A diferencia del ejemplo anterior, ahora emplearemos funciones de cuatro variables y, adems, realizaremos dos funciones simultneamente con el mismo circuito. En este ejemplo, al igual que en el apartado 3.2.2.1., nicamente tratamos de explicar la mecnica a seguir para la realizacin de un circuito, por lo que partimos de una Tabla de Verdad dada, que incluimos en la parte izquierda de la figura. Vemos cmo la Tabla de Verdad incluye dos funciones diferentes S1 y S2. Para cada combinacin de las variables de entrada se indican los valores que deben tomar tanto S1 como S2. Por ejemplo, cuando las variables de entrada a, b, c y d toman, respectivamente, los valores 1010 la funcin S1 debe dar el valor 0 y la funcin S2 el valor 1. (En una sola Tabla de Verdad se puede incluir un nmero ilimitado de funciones). Cada funcin da lugar a un mapa de Karnaugh diferente, al que se debern llevar los valores que tome esa funcin para cada una de las posibles combinaciones de las variables. En nuestro caso, por tanto, tendremos dos mapas de Karnaugh como se indica en la Figura 15. En el primer mapa se pueden formar dos grupos de cuatro celdas cada uno, teniendo en cuenta que celdas perimetrales opuestas se deben considerar adyacentes. Empleando el mtodo de Karnaugh se se obtiene la funcin S1 que se indica en la figura, expresin que coincide con la de la funcin XOR.

Figura 15

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

26

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

En el segundo mapa se pueden formar tres grupos de cuatro celdas. Uno de los grupos est formado por las celdas situadas en las cuatro esquinas del mapa. Aplicando la mecnica expuesta, se obtiene la expresin de la funcin S2. Dadas las expresiones obtenidas anteriormente para S1 y S2, la realizacin del circuito correspondiente es inmediata y se representa en la Figura 16.

Figura 16 Puede observarse en la figura cmo se incluyen en primer lugar las puertas NOT para la negacin de las cuatro variables. Esta es una tcnica empleada frecuentemente ya que normalmente en un circuito de una cierta complejidad se tienen que emplear tanto las variables negadas como sin negar, por lo que en ocasiones se consideran tambin como variables de entrada los valores negados. Incluso aunque alguna de las variables no se vaya a necesitar en su forma negada para el circuito en particular (esto ocurre en nuestro caso para la variable a). Si este circuito estuviese disponible comercialmente, nos entregaran simplemente una caja (el rectngulo que aparece en la Figura 17) con cuatro entradas (las variables) y dos salidas (las dos funciones), sin que nos preocupase qu puertas lgicas ni qu conexiones realizan realmente estas funciones. Evidentemente tambin debera disponer de las entradas adecuadas para la alimentacin elctrica del circuito.

Figura 17

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

27

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

3.2.3.- ANLISIS DE CIRCUITOS

Aunque la funcin fundamental al tratar de circuitos lgicos consiste en el Diseo de Circuitos, lo que, tal y como hemos enunciado anteriormente, consiste en desarrollar circuitos que cumplan las funciones lgicas deseadas, tambin debe contemplarse el Anlisis de Circuitos. El Anlisis consiste en averiguar qu funcin es la que desarrolla un circuito ya existente, es decir, obtener la ecuacin a la que responde. Esto puede hacerse de dos formas diferentes, dependiendo de que contemos o no con el esquema fsico del circuito. Si no disponemos del esquema del circuito, es decir, si simplemente sabemos cules son sus entradas y salidas: Lo que deberemos hacer es deducir cul es la Tabla de Verdad correspondiente al circuito. Para ello iremos aplicando a las entradas todas las combinaciones posibles de valores y analizando cul es el valor de las salidas para cada combinacin. Una vez tengamos la Tabla de Verdad podemos deducir la expresin de su funcin lgica (funciones lgicas si existiera ms de una salida). Eventualmente, podemos tratar de simplificar el circuito original. Si disponemos de un esquema del circuito: Procederemos de acuerdo con lo expuesto en las figuras siguientes. En la Figura 18 se nos presenta el esquema de un circuito lgico en particular. Sobre l, podemos ir escribiendo a la salida de cada puerta la expresin lgica que realiza esa puerta.

Figura 18

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

28

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

Debemos comenzar siempre por aquellas puertas que estn conectadas a las variables, directamente o negadas (en nuestro caso las dos puertas AND del circuito). A continuacin seguiremos con las puertas que tengan como entrada las salidas de las anteriores y, si las hay, variables iniciales. Aqu tambin escribiremos las expresiones correspondientes. Por ejemplo, las entradas a la puerta OR de la parte superior de la figura son la variable a y la salida de una de las puertas AND anteriores, b c Por este procedimiento llegaremos a las expresiones que representan a las funciones realizadas por el circuito. En nuestro caso las funciones S1 y S2:

Ahora bien, estas expresiones no tienen por qu ser las nicas posibles, por lo que tal vez haya otras equivalentes ms sencillas. Cmo obtener estas expresiones ms sencillas?. Simplemente partiendo de la Tabla de Verdad. Para desarrollarla tendremos que averiguar los valores que toman las funciones S1 y S2, cuyas expresiones obtuvimos en la Figura 18, para cada una de las posibles combinaciones de las variables a, b, c y d, desde 0000 hasta 1111. Con ello obtenemos los mapas de Karnaugh correspondientes y las funciones simplificadas (Figura 19).

Figura 19

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

29

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

Una vez obtenidas las nuevas expresiones de las funciones S1 y S2, la representacin del nuevo circuito es inmediata (Figura 20) y algo ms sencilla que la del circuito original. Conviene no olvidar que an cuando las expresiones pueden ser ms sencillas, sin embargo las funciones S1 y S2 son las mismas.

Figura 20

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

30

Estructura y Tecnologa de Computadores 1 ITIG/ITIS

BIBLIOGRAFA RECOMENDADA: E. Alcalde y otros. Arquitectura de Ordenadores.- Mc Graw Hill. 1991 (Cap. 2) J.M. Angulo y otros. Sistemas Digitales y Tecnologa de Computadores.- Paraninfo 2002 M. Morris Mano y C.R. Kime. Fundamentos de Diseo Lgico y Computadoras.- Prentice Hall. 1998 (Cap. 1) W. Stallings. Organizacin y Arquitectura de Computadores.- Prentice Hall. 2000 (Cap. 8)

Tema 3: Anlisis y Diseo de Circuitos Combinacionales

31

También podría gustarte