UNIDAD II

ELECTRÓNICA DIGITAL

2.1 TABLAS DE VERDAD Y COMPUERTAS LÓGICAS
Las compuertas lógicas son uno de los dispositivos más comunes dentro de la electrónica digital, A pesar de que cada una de estas es capaz de realizar operaciones lógicas básicas. Ya sea, multiplicar, negar, afirmar, sumar, incluir o excluir, se caracterizan principalmente por representar un valor verdadero o falso en su salida.
Cada una de las compuertas lógicas puede ser representada mediante un símbolo
gráfico.
¿Cómo funcionan las compuertas lógicas?
Dentro de la electrónica digital existen dos estados lógicos el “1” es cuando el voltaje está por encima del umbral y el estado “0” es cuando está por debajo.
Cada una de las compuertas se encarga de verificar el estado lógico de sus entradas (1 o 0), para poder compararlas y poder mostrarte el resultado. Hoy en día podemos saber el estado de su salida gracias a una tabla de verdad que nos proporciona todos los estados posibles de cada una de las compuertas.
2.1.1 NOT, OR, AND
Una tabala de verdas representa todos los estados y combinaciones posibles que puede tener en sus entradas y el valor que toma la salida en cada caso.
Compuerta not
Su expresion algebraica es S=Ᾱ, esta compuertaa basicamente es un inversor, solo tiene una entrada si en la entrada tenemos un estado alto la salida lo invierte o lo convierte a bajo.

Compuerta or
Se caracteriza por la ecuacion S= A+B. En esta compuerta activa su salida cuando al menos una de sus entradas esta activa, no importando el estado de las otras entradas.
Compuerta AND
Esta compuerta hace la funcion de la multiplicacion S=A*B, la señal de salida solo activa cuando todas sus entradas estan activas.
2.1.2 Otras (NOR, NAND, XOR, ETC.)
Compuerta NAND
Esta es la negacion de la copuerta AND ya que funciona a la inversa, cuando sus dos entradas estan activas la salida es de 0. En cualquier otra combinacion su salida es 1

Compuerta NOR
Funciona de manera contraria a la compuerta OR, ya que si una de sus entradas es si salida se desactiva. Su salida solo se activa cuando sus entradas permanecen en 0,
Compuerta XOR
Esta es una de las compuertas mas complejas de utilizar, ya que su sañida solo se activa cuando sus entradas son diferentes, por ejemplo A=1 y B=0. Tambien se les conoce como compuertas OR exclusivas.
Para hacer su circuito tenemos que usar 4 interruptores, pero se dividen en dos drupos A y B. los interruptores funcionan en conjunto si activo a A Y Ᾱ se desactiva y viceversa.
Compuerta XNOR
Esta compuerta es la negacion de la XOR. Su salida se activa solo en condiciones especificas, cuando todas sus entradas estan en 0 o en 1.
Compuerta SI
Esta compuerta sirve como proteccion para elementos de mayor valor, ya que la entrada es iguala la salida, su expresion algebraica es S=A


2.1.3 EXPRESIONES BOOLEANAS
Una expresión booleana es una expresión algebraica que da lugar a uno de dos posibles valores, 1 ("verdadero") o 0 ("falso"), conocidos como valores booleanos. La lógica booleana forma la base de los cálculos binarios modernos, o en base dos, de los sistemas informáticos. Puedes utilizar un sistema de expresiones booleanas para representar cualquier circuito electrónico de computadora.

Operadores booleanos

Las expresiones booleanas consisten en secuencias de ceros, unos, y nombres variables --conocidos como literales-- separados por los operadores booleanos Y, O, NO y O exclusiva. "Y" es verdadera únicamente si ambos lados de la expresión son verdaderos. "O" es verdadera si cualquiera de los lados de la expresión es verdadero o ambos lados son verdaderos. "NO" cambia de verdadero a falso y viceversa. O exclusiva es verdadera si cualquiera de los dos lados de la expresión es verdadero, pero no ambos lados. Cada operador booleano acepta un par de entradas booleanas y produce una sola salida booleana.

Prioridad de operador

Si una sola expresión booleana contiene más de un operador booleano, el resultado de la expresión depende de la prioridad, o la precedencia, de los operadores. El operador "NO" tiene prioridad sobre el operador "Y", que a su vez, tiene prioridad sobre el operador "O". Si dos operadores booleanos con la misma prioridad se encuentran uno al lado del otro en la expresión booleana, debes evaluarlos de izquierda a derecha. Sin embargo, puedes usar paréntesis o corchetes para anular la prioridad habitual. En la expresión booleana A • B + C, la precedencia de operadores usual dicta que "Y" (•) tiene prioridad sobre "O" (+), por lo que la expresión realmente se evaluaría como (A • B) + C. Si quieres cambiar el orden de preferencia, puedes incluir, de forma explícita, paréntesis para que la expresión sea A • (B + C).
2.2 DISEÑO DE CIRCUITOS COMBINACIONALES
Circuito combinacional. Está formado por funciones lógicas elementales ( AND, OR, NAND, NOR, etc. ), que tiene un determinado número de entradas y salidas. Es un circuito cuya salida depende solamente de la "combinación" de sus entradas en el momento que se está realizando la medida en la salida.
Los circuitos de lógica combinacional son hechos a partir de las compuertas básicas compuerta AND, compuerta OR, compuerta NOT. También pueden ser construidos con compuertas NAND, compuertas NOR, compuerta XOR, que son una combinación de las tres compuertas básicas.
2.2.1 METODOLOGIA DEL DISEÑO DE CIRCUITOS COMBINACIONALES

Método de diseño

* Establecer los datos o condiciones de diseño.
* Formar la correspondiente tabla de verdad, reflejando las condiciones que debe satisfacer el circuito.
* Obtener la función o funciones lógicas de salida, en expresión algebraica, como sumatorio de minterms o como productorio de maxterms.
* Aplicar los oportunos métodos de simplificación para minimizar la complejidad estructural del circuito.
* Obtener la función o funciones de salida definitiva, resultante del proceso de simplificación.
* Construir el circuito con puertas lógicas y/o a partir de sistemas combinacionales (estos sistemas constituirán el tema de un próximo capítulo).
2.2.2 MINITERMINOS Y MAXITÉRMINOS
Minitérminos
Para una función booleana de n variables x1 ,...xn, un producto booleano en el que cada una de lasn variables aparece una sola vez (negada o sin negar) es llamado minterms. Es decir, un minterms es una expresión lógica de n variables consistente únicamente en el operador conjunción lógica (AND) y el operador complemento o negación (NOT).
Por ejemplo, abc, ab'c y abc' son ejemplos de minterms para una función booleana con las tres variables a, b y c.
En general, uno asigna a cada minterm (escribiendo las variables que lo componen en el mismo orden), un índice basado en el valor binario del minterm. un término negado, como a' es considerado como el numero binario 0 y el término no negado a es considerado como un 1. Por ejemplo, se asociaría el número 6 con a b c'(1102), y nombraríamos la expresión con el nombre m6. Entonces m0 de tres variables es a'b'c'(0002) y m7 debería ser a bc(1112).
Función equivalente
Se puede observar que cada minterm solo devuelve 'verdadero' con una sola entrada de las posibles. Por ejemplo, el minterm 5, a b'c, es verdadero solo cuando a y c son ciertos y bes falso - la entrada a = 1, b = 0, c = 1 da resultado 1.
Si tenemos una tabla de verdad de una función lógica, es posible escribir la función como "suma de productos". Por ejemplo, dada la tabla de verdad
a b f (a, b)
0 0 1
0 1 0
1 0 1
1 1 0
Observamos que las filas con resultado 1 son la primera y la tercera, entonces podremos escribir f como la suma de los minterms m0 y m2.
Si queremos verificar esto:
f (a,b) = m0 + m2 = (a'b')+(ab')
Tendremos que la tabla de verdad de la función, calculándola directamente, será la misma.
Maxitérminos
Un maxterm es una expresión lógica de n variables que consiste únicamente en la disyunción lógica y el operador complemento o negación. Los maxterms són una expresión dual de los minterms. En vez de usar operaciones AND utilizamos operaciones OR y procedemos de forma similar.
Por ejemplo, los siguientes son maxterms:
a +b'+c
a '+b+c
El complemento de un minterm es su respectivo maxterm. Esto puede ser fácilmente verificado usando la Ley de Morgan. Por ejemplo:
m 1 ' = M1
(a'b)' = a+b'
Para indexar maxterms lo haremos justo de la forma contraria a la que seguimos con los minterms. Se asigna a cada maxterm un índice basado en el complemento del número binario que representa (otra vez asegurándonos que las variables se escriben en el mismo orden, usualmente alfabético). Por ejemplo, podemos asignar M6 (Maxterm 6) al maxterm a'+b'+c. De forma similar M0 de tres variables debería ser a+b+c y M 7 es a'+b'+c'.
Función equivalente
Se puede ver fácilmente que un maxterm sólo da como resultado un cero para una única entrada de la función lógica. Por ejemplo, el maxterm 5,a'+b+c', es falso solo cuando a y cson ciertos y b es falso - la entrada a = 1, b = 0, c = 1 da como resultado un cero.
Si tenemos una tabla de verdad de una función lógica, es posible escribir la función como "producto de sumas". Por ejemplo, dada la tabla de verdad
a b f (a, b)
0 0 1
0 1 0
1 0 1
1 1 0
Observamos que las filas que tiene como salida un 0 son la segunda y la cuarta, entonces podemos escribir f como un producto de maxterms M1 y M3.
Si queremos verificar esto:
f (a,b) = M1 M3 = ( a+b')(a'+b')
Tendremos que la tabla de verdad de la función, calculándola directamente, será la misma.
2.2.3 TECNICAS DE SIMPLIFICACIÓN
Una expresión Boolena puede contener un conjunto muy grande de compuertas lógicas, lo que implicaría un circuito muy grande al implementarlo en HW. Por tal razón, existen métodos que permiten simplificar expresiones Booleanas. Esto se traduce en circuitos más pequeños (con un menor número de compuertas) que son más fáciles de construir físicamente. En éste módulo estudiaremos 3 métodos de simplificación:
  • Simplificación por medio de leyes y teoremas del Álgebra Boolena
  • Simplificación por medio de Mapas de Karnaugh
  • Simplificación utilizando el método de Quine-McCluskey
2.2.3.1 TEOREMAS Y POSTULADOS DE ALGEBRA BOOLEANA
Postulado 1: Definición En un sistema algebraico definido en un conjunto B, que contiene 2 o más elementos donde pueden darse solo 2 operaciones, la suma u operación "OR" y la multiplicación o multiplicación "AND"
Postulado 2: Identidad (existencia de neutros) En B, el elemento neutro de la suma determinada "0" y en la multiplicación "1" donde X en B: a)n+0=X------------ b) X1=X
Postulado 3: Conmutatividad Para cada X, Y, Z en B: a) X+Y=Y+X-----b) XY=YX
Postulado 4: Asociatividad Para cada X, Y, Z en B: a) X+ (Y+Z)=(X+Y)+Z---------b) X (YZ)= (XY) Z
Postulado 5: Distributivita Para cada X,Y,Z en B: a)X+(YZ)=(X+Y)(X+Z)------------b)X(Y+Z)=(XY)+(XZ)
Postulado 6: Existencia de complemento Para cada X en B existe un elemento único denotado por X' complemento tal que: a) X+X'= 1-------b) XX’=0
Teorema 1: Multiplicación por cero (identidad) Es el factor neutro: Suma: a+1=1--------Producto: a0=0
Teorema 2: Absorción En la suma se identifica primero de forma aislada y luego multiplicando a otra expresión. Suma: A+ (AB)=A----------Producto: A(A+B)=A
Teorema 3: Cancelación I Es cuando se encuentra una expresión sumada o multiplicada con su complemento: Suma: A+A'B=A+B-------Producto: A(A'+B)=AB
Teorema 4: Cancelación II Se identifica en 2 términos que comparten un factor común y otro que no es común, uno de ellos es el complemento de la otra: Suma: AB+A'B=B---------Producto:(A+B) (A'+B)=B
Teorema 5: Idempotencia Si se suma o multiplica el término n número de veces, dará por resultado el mismo. Suma: A+A+A=A---------Producto:(A) (A) (A)=A
Teorema 6: Consenso Se encuentran 2 términos que contengan una expresión en uno afirmada y en otro negada, anotar los términos con que se multiplica uno y otro, al final se busca otro elemento o termino que sea la multiplicación de estos 2 últimos, este último se multiplica. Suma: AB+A'C+BC=AB+A'C---------------Producto: (A+B) (A'+C) (B+C)=(A+B) (A'+C)
Teorema 7: De Morgan Si hay suma complementada se puede hacer el producto de cada parte con su complemento. Suma: |A+B|=A'B'---------------Producto: |AB|=A'+B'
Teorema 8: Involución El complemento de un complemento es el termino sin complementos.-----||A=A
Teorema 9: Complemento de neutros El complemento de la nada es el todo y el del todo es la nada.0'=1----1'=0
2.2.3.2 MAPAS KARNA UGH
Otra manera de simplificar funciones es representándolas en mapas de Karnaugh. Esto es equivalente a resolver las simplificaciones por teoremas. Sin embargo, mucha gente considera que resulta más fácil visualizar las simplificaciones si se presentan gráficamente.
Los mapas de Karnaugh pueden aplicarse a dos, tres, cuatro y cinco variables. Para más variables, la simplificación resulta tan complicada que conviene en ese caso utilizar teoremas mejor. Para efectos de clase, veremos las simplificaciones de dos, tres y cuatro variables.
MÉTODO DE REDUCCIÓN DE MAPAS DE KARNAUGH
El Álgebra de Boole, resuelve problemas que dependiendo del número de términos que tenía la función canónica, siendo el número de compuertas lógicas utilizadas igual al número de términos obtenidos MÁS UNO; por lo tanto, los circuitos obtenidos son de dos niveles de conmutación con un tiempo mínimo de retardo, pero que de ninguna manera es el más sencillo ni el más económico.
Los mapas de Karnaugh es uno de los métodos más prácticos. Se puede decir que es el más poderoso, cuando el número de variables de entrada es menor o igual a seis; más allá, ya no es tan práctico. En general, el mapa de Karnaugh se considera como la forma gráfica de una tabla de verdad o como una extensión del diagrama de Venn.
Antes de explicar cómo se utiliza el mapa de Karnaugh en la minimización de funciones, veremos cómo se obtiene el mapa. Esto nace de la representación geométrica de los números binarios. Un número binario de n bits, puede representarse por lo que se denomina un punto en un espacio N. Para entender lo que se quiere decir con esto, considérese el conjunto de los números binarios de un bit, es decir 0 o 1. Este conjunto puede representarse por dos puntos en un espacio 1; esto es, por dos puntos unidos por una línea.
Explicaremos, el Método de Karnaugh a partir de un ejemplo.
Suponemos que tenemos una función F(A,B,C) de tres variables, cuya tabla de verdad es:


Tabla de verdad de una función F(A,B,C)
ABC F
000 0
001 0
010 1
011 1
100 1
101 1
110 1
111 1
Si la desarrollamos por la primera forma canónica o de minitérminos, para ello tomamos aquellas entradas que nos hacen "1" la función (en celeste) :
F = A'BC' + A'BC + AB'C' + AB'C + ABC' + ABC
Observamos, que cuando utilizamos minitérminos, las entradas con valor "0" están complementadas, y las entradas con valor "1" no están complementadas, es decir:
010 = A'BC'
Veremos como aplicando el método de Karnaugh podemos simplificar esta función.
Aplicamos Karnaugh para la tabla de verdad anterior, para ello dibujamos una tabla de la siguiente forma:
Observamos lo siguiente:
En total hay 8 casillas, cada una correspondiente a una fila de la tabla de verdad.
En cada casilla está colocado el valor de la función F, correspondiente a esa entrada.
En la tabla de verdad hay dos filas en las que F=0 y seis filas en las que F=1.
En el nuevo diagrama hay dos casillas con "0" y seis con "1". Hay dos filas, en la primera fila están todos los valores de F correspondientes a A=0, y en la segunda correspondientes a A=1.
Hay cuatro columnas, y el número que está en la parte superior de cada una de ellas nos indica los valores de las variables B y C en esa columna.
Dada una casilla cualquiera, mirando el número situado en la misma fila, a la izquierda del todo nos informa del valor de la variable A y los dos valores superiores, en la misma columna, nos dan los valores de B y C.
Así por ejemplo, si tomamos como referencia la casilla que está en la esquina inferior derecha, se corresponde con el valor que toma F cuando A=1, B=1 y C=0.
Entre dos casillas adyacentes cualesquiera, sólo varía una variable de entrada, quedando las otras dos con los mismos valores. Por ejemplo, si estamos en la casilla inferior derecha, en la que A=1, B=1 y C=0. Si vamos a la casilla que está a su izquierda obtenemos un valor de las variables de: A=1, B=1, C=1. Si lo comparamos los valores de las variables correspondientes a la casilla anterior, vemos que sólo ha cambiado una de las tres variables, la C. Lo mismo ocurre si nos desplazamos a cualquier otra casilla adyacente.
Ahora vamos a ver una propiedad “mágica” de esta tabla.
Si obtenemos la primera forma canónica, obtenemos una función con seis términos. Vamos a fijarnos sólo en los términos que obtenemos si desarrollamos sólo dos casillas adyacentes:
Los valores de las variables en estas casillas son: A=1, B=1, C=1 y A=1, B=1, C=0. Si obtenemos los términos de la primera forma canónica y los sumamos:
ABC + ABC' = AB(C + C') = AB
Por el hecho de agrupar los términos obtenidos de estas dos casillas y sumarlos, se han simplificado. Y esto es debido a la propiedad antes comentada de que entre dos casillas adyacentes sólo varía una de las variables, de manera que podemos sacar factor común.
Estos dos términos son los sumandos 5 y 6 de la primera forma canónica obtenida anteriormente, que al sumarlos y aplicar algunas propiedades se han simplificado.
Si nos fijamos en estas dos casillas adyacentes, la variable C, que es la única que varía de una a otra, ha desaparecido en la suma. De esta manera podemos afirmar lo siguiente:
"Si tomamos dos casillas adyacentes cuyo valor es ’1’ y desarrollamos por la primera forma canónica, desaparecerá una de las variables. Sólo permanecen las variables que no cambian de una casilla a otra".
De esta manera, vamos a ver que pasa si tomamos los siguientes grupos:
y sumamos los términos de estos grupos:
Grupo 1:A'BC + A'BC' = A'B(C + C') = A'B
Grupo 2: AB'C' + AB'C = AB' (C' + C) = AB'
Grupo 3: El que teníamos antes: AB
Por tanto, la función F1 también la podemos expresar como suma de estos grupos:
F1 = A'B + AB' + AB
Como podemos observar, la función obtenida está ahora más simplificada. Pero...¿Se puede simplificar más?. Si.
Inicialmente la función F tenía seis sumandos, puesto que tenía 6 unos. Al hacer 3 grupos, ahora tiene 3 sumandos. ¿Podemos reducir el número de grupos? Si, vamos a ver qué pasa si tomamos los siguientes grupos:
Ahora sólo hay 2 grupos. El nuevo grupo 2 está constituido por 4 casillas en las que F=1. La expresión de este grupo se obtiene sumando las expresiones de estas 4 casillas. Las nuevas expresiones de los grupos quedarían:
Grupo 1: Igual que antes:A'B
Grupo 2: AB' + AB = A (B' + B) = A
La nueva función F2 que obtenemos es:
F2 = A'B + A
Todavía más simplificada que la anterior. Pero... ¿Es la más simplificada?. No, todavía podemos simplificarla más. ¿Por qué no podemos tomar 2 grupos de 4 casillas adyacentes?. Tomemos los grupos siguientes:
Las nuevas expresiones de los grupos son:
Grupo 1: A'B + AB = B (A' + A) = B
Grupo 2: Igual que antes: A

Por tanto, la nueva función F
3
simplificada es:
F3 = A + B
Por lo que la función queda simplificada al máximo.
Criterio de máxima simplificación:
Para obtener una función que no se puede simplificar más, hay que tomar el menor número de grupos con el mayor número de "1" en cada grupo.
Nos damos cuenta, que las tres funciones obtenidas son esquivalentes, pero la más simplificada es F3.
F1 = A'B + AB' + AB
F2 = A'B + A
F3 = A + B
Por lo que deducimos que cuanto mayor sea el conjunto de "1" "adyacentes", mayor será la simplificación. Pero cuidado, sólo se pueden hacer grupos de 2 elementos, 4 elementos, 8 elementos,... y siempre que éstos sean adyacentes.
2.2.4 IMPLEMENTACION Y APLICACIÓN DE CIRCUITOS COMBINACIONALES
Estos circuitos que hemos estado aprendiendo a construir se llaman combinacionales porque el estado se sus salidas depende única y exclusivamente de la combinación que toman sus variables de entrada, sin que importen los estados anteriores de las variables ni el tiempo.
Existen una serie de circuitos combinacionales que son muy comunes y aparecen o bien aisladamente o formando parte de otros circuitos más complejos de aplicación general, que se repiten un número de veces tan considerable que se hace aconsejable su fabricación en serie, que vamos a estudiar en este tema y que son:
1. Codificadores.
Un codificador es un circuito combinacional integrado que tiene hasta 2n entradas y n salidas y la función que desempeña es mostrar en la salida la combinación correspondiente al código binario de la entrada activada.
2. Decodificadores.
Son circuitos combinacionales integrados que disponen de n entradas y un número de salidas igual o menor a 2n, actúan de modo que según cual sea la combinación de las variables de entrada se activa una única salida, permaneciendo el resto de ellas desactivada.
Suelen disponer de una entrada adicional denominada de inhibición o strobe de modo que cuando esta entrada se encuentra activada, pone todas las salidas a 0.
3. Control de lámparas de un semáforo
Con 2 elementos para transmitir órdenes, se pueden conseguir 4 (2^2) instrucciones distintas, a esto es a lo que llamamos, información codificada en binario.
Un semáforo debe tener tres salidas que serán cada una de las tres lámparas, (se podría añadir una cuarta salida que indicase avería), este lo podemos conseguir con un decodificador de dos entradas y cuatro salidas, con lo que en cada instante solamente puede estar activada una única lámpara, y el circuito de control semafórico que diseñemos solamente deberá disponer de dos salidas.
2.3 LOGICA SECUENCIAL
La Lógica Secuencial es el Método de ordenamiento de acciones, razonamiento, y expresión de la automatización de maquinaria, equipos y procesos. Y su interrelación con el hombre. Esto nos da por consiguiente los binomios, hombre-máquina, hombre-proceso.
2.3.1 FLIP – FLOP CON COMPUERTAS
Los Flip-Flops son los dispositivos con memoria más comúnmente utilizados. Sus características principales son:
· Asumen solamente uno de dos posibles estados de salida.
· Tienen un par de salidas que son complemento una de la otra.
· Tienen una o más entradas que pueden causar que el estado del Flip-Flop cambie.
A continuación se describirán 4 tipos de Flip-Flops.
2.3.2 FLIP – FLOP JK, SR, D
Flip-Flop S-R (Set-Reset)
La siguiente figura muestra una forma posible de implementar un Flip-Flop S-R. Utiliza dos compuertas NOR. S y R son las entradas, mientras que Q y Q’ son las salidas (Q es generalmente la salida que se busca manipular.)
Como existen varias formas de implementar un Flip-Flop S-R (y en general cualquier tipo de Flip-Flop) se utilizan diagramas de bloque que representen al Flip-Flop. El siguiente diagrama de bloque representa un FF S-R. Nótese que ahora, por convención, Q se encuentra en la parte superior y Q’ en la inferior.
Para describir el funcionamiento de un FF se utilizan las llamadas Tablas de Estadoy las Ecuaciones Características. La siguiente tabla muestra la tabla de estadopara un FF S-R.
S R Q Q+
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 0
1 0 0 1
1 0 1 1
1 1 0 -
1 1 1 -
Como encabezado de las columnas tenemos las entradas S y R, y una de las salidas Q. La salida Q es la salida que en un tiempo t se puede detectar en el FF, es decir, es la salida en el tiempo actual. Q+ es la salida en el tiempo t+g, una vez que se ha propagado la señal en el circuito (recuerde que los FF tienen un componente de retroalimentación.) Por lo tanto Q + = Q (t + g), es decir, es la salida que tendrá Q en el futuro – una vez que se haya realizado la propagación.
Si analizamos la tabla de estado, vemos que para si S = 0, R = 0 y Q = 0 ó 1, la salida futura de Q (Q+) será siempre lo que se tenía antes de la propagación. A este estado (S = 0, R = 0) se le conoce por tanto como estado de memoria.
Viendo ahora el caso S = 0, R = 1, se aprecia que siempre Q+ = 0 sin importar el valor de Q antes de la propagación, es decir, se hace un reset de Q. Si por el contrario, se tiene S = 1, R = 0, entonces Q+ = 1 en ambos casos, por tanto se hace un set de Q.
Finalmente, nótese que la combinación S = 1, R = 1 no es válida en el FF S-R. La razón es que dicho estado vuelve inestable al circuito y, como una de las características de todo FF es que el estado es estable, al usar dicha combinación se esta violando este principio de los FF.
Ahora, si se mapea la información de la tabla de estado del FF S-R en un mapa de Karnaugh, se obtiene la siguiente ecuación característica: Q + = S + R'Q. Esta ecuación describe también el funcionamiento. Nos dice que Q+ será 1 siempre y cuando se haga un set del FF o el reset no esta activado y la salida tiene un 1 en ese momento.
Flip-Flop J-K
El siguiente diagrama de bloque es el perteneciente el FF J-K
Una implementación tentativa de un FF J-K a partir de un FF S-R sin reloj es la siguiente:
La tabla de estado aparece a continuación. Note que es muy parecida a la del FF S-R solo que ahora los estados de J=1 y K=1 sí son validos.
Tabla de estado del FF J-K
J K Q Q+
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 0
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 0
De la tabla anterior se obtiene la siguiente ecuación característica mediante mapas de Karnaugh: Q+ = QK' +Q'J . Este flip-flop es uno de los más comunes con reloj. El siguiente diagrama lo muestra con entrada para reloj:
Flip-Flop D (Delay)
El flip-flop D es uno de los FF más sencillos. Su función es dejar pasar lo que entra por D, a la salida Q, después de un pulso del reloj. Es, junto con el FF J-K, uno de los flip-flops mas comunes con reloj. Su tabla de estado se muestra a continuación:
D Q Q+
0 0 0
0 1 0
1 0 1
1 1 1
De la tabla se infiere que la ecuación característica para el FF D es: Q+= D. El siguiente diagrama de bloques representa este flip-flop.
Ejemplos con Flip-Flops
Ejemplo : Diseñe un Flip-flop T a partir de un Flip-flop J-K con reloj.
Solución :
Ejemplo : Convierta un Flip-flop S-R a un flip-flop D con reloj
Solución :
D Q+ S R
0 0 D
1 1 D
2.3.3 DISEÑO DE CIRCUITOS SECUENCIALES
Los sistemas secuenciales se caracterizan por el hecho de que sus salidas dependen no sólo de las entradas actuales, sino de toda la secuencia de entradas anteriores. Toda esta secuencia de entradas anteriores da lugar a lo que se denomina el estado del circuito, que está almacenado en componentes de memorización.
De acuerdo con esta definición, el estado de un sistema secuencial depende de la secuencia de entradas anteriores al sistema:
Et = F(Xt-1, Xt-2 , …)
Yt = F(Xt, Xt-1, Xt-2 , …) = F(Xt, Et)
Este planteamiento permite descomponer la ecuación general de los sistemas secuenciales en otras dos ecuaciones: una de salida y otra de estado siguiente.
Para caracterizar completamente un sistema secuencial es necesario plantear:
– Las tablas y ecuaciones booleanas que definen el siguiente estado del sistema a partir de las entradas el circuito y el estado actual del mismo.
– Las tablas y ecuaciones booleanas que definen las salidas del sistema a partir de las entradas del circuito y el estado actual del mismo.
Esta información puede visualizarse usando un diagrama de estados que muestre todos los estados posibles del sistema y las transiciones entre ellos.
Modelo de máquinas de estados finitos
Esta forma de caracterizar un sistema secuencial está basada en un modelo de máquinas de estados finitos: (FSM – Finite-State Machine)
Teóricamente, el modelo FSM se define como: < S, I, O, f, h>
S => conjunto de estados.
I => conjunto de entradas.
O => conjunto de salidas.
f => función de estado siguiente.
h => función de salida.
Este modelo FSM supone que el tiempo se divide en intervalos uniformes y que las transiciones de un estado a otro solo ocurren al principio de cada intervalo.
La función de salida h define los valores de salida durante el intervalo de tiempo actual de acuerdo con el estado y las entradas actuales.
Yt = h(Xt, Et)
La función de estado siguiente f define cuál será el estado en el siguiente intervalo de tiempo de acuerdo con el estado y las entradas en el intervalo actual
Et+1 = f(Xt, Et)
En realidad, la función de salida puede definirse de dos maneras distintas, lo que da lugar a dos modelos FSM distintos:
El modelo de Moore describe sistemas secuenciales cuyas salidas dependen única y exclusivamente del estado del circuito.
El modelo de Mealy describe sistemas secuenciales cuyas salidas dependen del estado del circuito y de las entradas en el intervalo de tiempo actual.
Análisis de sistemas secuenciales
El proceso de análisis de un sistema secuencial consiste en la generación de una descripción funcional a partir del diagrama lógico de un determinado circuito. La descripción funcional contendrá varios elementos:
- Diagrama de estados del circuito.
– Ecuaciones y tablas que definan el estado siguiente.
– Ecuaciones y tablas que definan la salida del circuito.
Una vez obtenida la descripción funcional, es posible desarrollar cronogramas que permitan estudiar el comportamiento del sistema.
Análisis de sistemas de tipo Moore
Los circuitos secuenciales de tipo Moore son aquellos en los que las salidas no dependen del valor actual de las entradas, sino únicamente del estado actual.
El primer paso en el análisis es obtener las ecuaciones de entrada a cada biestable del circuito. En este caso hay dos biestables cuyas entradas son D0 y D1, por lo que plantearemos dos ecuaciones en función de la entrada Cnt y de las salidas de los biestables.
Estas ecuaciones se denominan ecuaciones de excitación, ya que determinan el valor de las entradas de los biestables del circuito. A continuación hay que transformar estas ecuaciones en las ecuaciones de estado siguiente características de cada biestable. Dado que el estado siguiente de un biestable D es igual al valor de la señal D, tenemos que:
A continuación debemos calcular la ecuación de salida. Dado que estamos hablando de un circuito de tipo Moore, la salida dependerá sólo del estado actual del sistema, es decir, de las salidas de los biestables.
Y=Q0*Q1
A partir de las ecuaciones de estado siguiente y de salida generamos una tabla que refleje esta información.
– Cada fila de la tabla se corresponde con un estado del circuito.
– Cada columna de la tabla representa un valor de las entradas.
Dado que el circuito tiene dos biestables, el número total de estados posibles es cuatro.

Para facilitar la visualización del funcionamiento del circuito podemos representar el contenido de esta tabla usando un diagrama de estados. Cada estado se representa con un círculo que contiene el valor de los biestables que representa y el valor de las salidas. Las transiciones entre estados se representan como flechas entre los círculos, etiquetadas con el valor de las entradas que causa la transición. En general, en un circuito con m biestables y k entradas, el número total de estados será 2m y el número total de transiciones será 2m*2k.
El diagrama de estados puede obtenerse fácilmente a partir de la tabla de estado siguiente y de salida:
Análisis de sistemas tipo Mealy
Los circuitos secuenciales de tipo Mealy son aquellos en los que las salidas dependen del valor actual de las entradas y del estado actual.
El primer paso en el análisis es obtener las ecuaciones de excitación que definen la entrada de cada biestable. En este caso hay dos biestables cuyas entradas son D0 y D1, por lo que plantearemos dos ecuaciones en función de la entrada Cnt y de las salidas de los biestables.
A continuación hay que transformar estas ecuaciones en las ecuaciones de estado siguiente características de cada biestable. Dado que el estado siguiente de un biestable D es igual al valor de la señal D, tenemos que:

A continuación calculamos la ecuación de salida. En un circuito de tipo Mealy la salida depende tanto del estado actual del sistema como de los valores actuales de las entradas del mismo:
Y=Cnt * Q1 * Q0
A partir de estas ecuaciones generamos la tabla de estado siguiente y de salida. La principal diferencia de esta tabla con la de un circuito de tipo Moore es que los valores de salida también dependen de los valores de entrada.
< br/> El diagrama de estados puede obtenerse a partir de esta tabla, pero teniendo en cuenta que las salidas no se asocian con los estados sino con las transiciones:

2.3.4 APLICACIÓN DE CIRCUITOS SECUENCIALES
Los sistemas secuenciales forman un conjunto de circuitos muy importantes en la vida cotidiana. En cualquier elemento que sea necesario almacenar algún parámetro, es necesario un sistema secuencial. Así, cualquier elemento de programación (o lo que es lo mismo, con más de una función) necesita un sistema secuencial. 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 finito
  • Contador
  • Registros
2.4 FAMILIAS LOGICAS
Una familia lógica es un grupo de dispositivos digitales que comparten una tecnología común de fabricación y tienen estandarizadas sus características de entrada y de salida; es decir, son compatibles entre sí.
Como consecuencia de la estandarización, la interconexión entre dispositivos lógicos de una misma familia es particularmente sencilla y directa: no requiere de etapas adicionales de acoplamiento.
Características generales de las familias lógicas.
Las características más importantes de un circuito digital son su velocidad, su consumo de potencia, su inmunidad al ruido y su confiabilidad.
· La velocidad mide la rapidez de respuesta de las salidas de un circuito digital a cualquier cambio en sus entradas.
· El consumo de potencia mide la cantidad de corriente o de potencia que consume un circuito digital en operación.
· La inmunidad al ruido mide la sensibilidad de un circuito digital al ruido electromagnético ambiental.
· La confiablidad mide el período útil de servicio de un circuito digital.
2.4.1 TTL
Tecnología TTL. Las siglas en inglés significan transistor-transistor logic (lógica transistor a transistor). Tecnología de construcción de circuitos integrados electrónicos digitales basada en el uso de transistores bipolares, es característico el uso de transistores multiemisores. TTL sucedió a las tecnologías RTL (lógica resistencia-transistor) y DTL (lógica diodo-transistor).
Características de la lógica TTL:
• 10 mW de disipación de potencia por compuerta.
• Retrasos de propagación son de 10ns al tratar con 15 pF/400 Ω de carga.
• El rango de tensión está entre 0 y Vcc donde Vcc es usualmente 4.75V – 5.25V. Un nivel bajo es representado por niveles de tensión entre 0V– 0.8V, mientras que un nivel alto se representa por niveles de tensión entre 2V – Vcc.
Aplicaciones
· Microprocesadores, como el 8X300, de Signetics, la familia 2900 de AMD y otros.
  • Memorias
· Circuitos digitales, entre ellos, contadores, compuertas, biestables, registros de desplazamiento, etc.
· PAL (arreglo lógico programable), para diseñar matrices decodificadoras.
Puerta NAND en tecnología TTL estándar (N).

La tecnología TTL se caracteriza por tener tres etapas, siendo la primera la que le nombra:
· Etapa de entrada por emisor: se utiliza un transistor multiemisor en lugar de la matriz de diodos de DTL.
· Separador de fase: es un transistor conectado en emisor común que produce en su colector y emisor señales en contrafase.
· Driver: está formada por varios transistores, separados en dos grupos. El primero va conectado al emisor del separador de fase y drenan la corriente para producir el nivel bajo a la salida. El segundo grupo va conectado al colector del divisor de fase y produce el nivel alto.
La familia TTL o bipolar se divide en las siguientes categorías o subfamilias básicas:
· TTL estándar.
· TTL Schottky (S). TTL de baja potencia (L).
· TTL Schottky de baja potencia (LS).
· TTL de alta velocidad (H).
· TTL Schottky avanzada (AS).
· TTL Schottky de baja potencia avanzada (ALS)
2.4.2 ECL
La familia ECL, Lógica Acoplada en Emisor (emmiter-coupled logic) son unos circuitos integrados digitales los cuales usan transistores bipolares, pero a diferencia de los TTL en los ECL se evita la saturación de los transistores, esto da lugar a un incremento en la velocidad total de conmutación. La familia ECL opera bajo el principio de la conmutación de corriente, por el cual una corriente de polarización fija menor que la corriente del colector de saturación es conmutada del colector de un transistor al otro. Este tipo de configuraciones se les conoce también como la lógica de modo de corriente (CML; current-mode logic).
2.4.3 MOS
La tecnología MOS se usa preferentemente para circuitos LSI/VLSI. LSI integración en alta escala, comprende los circuitos integrados de 100 a 1000 compuertas, ejemplo de esto son las memorias, unidades aritméticas y lógicas, microprocesadores de 8 y 16 bits. Los VLSI integración de muy alta escala comprende los CI que contienen más de 1000 compuertas, ejemplo de esto son los microprocesadores de 32 bits, microcontroladores, sistemas de adquisición de datos. La razón principal de que se utilicen circuitos LSI/VLSI, es el hecho de que un transistor o puerta MOS ocupa solo aproximadamente una décima parte de la superficie de pastilla que necesita un dispositivo equivalente TTL.
La principal desventaja de los circuitos MOS en comparación con los bipolares es unos mayores retardos en la propagación de señales, esto es, menores frecuencias de funcionamiento consecuencia de lo relativamente alta capacidad de entrada (puerta-sustrato) de las transistores MOS.
2.4.4 CMOS
El semiconductor complementario de óxido metálico. es una de las familias lógicas empleadas en la fabricación de circuitos integrados. Su principal característica consiste en la utilización conjunta de transistores de tipo pMOS y tipo nMOS configurados de forma tal que, en estado de reposo, el consumo de energía es únicamente el debido a las corrientes parásitas, colocado en la placa base.
En la actualidad, la mayoría de los circuitos integrados que se fabrican usan la tecnología CMOS. Esto incluye microprocesadores, memorias, procesadores digitales de señales y muchos otros tipos de circuitos integrados digitales de consumo considerablemente bajo.
Circuito inversor en tecnología CMOS.


Características de la lógica CMOS:
• Disipación de baja potencia: La disipación de potencia depende de la potencia de la fuente de poder, su frecuencia, carga en la salida y el tiempo de arranque. A 1 MHz y a 50pF de carga, la disipación de potencia es típicamente 10nW por compuerta.
• Retrasos de propagación corta: Depende de la fuente de poder, los retrasos de propagación son usualmente de 25 ns a 50 ns.
• Tiempos de subida y bajada controlados: Los flancos de subida y de bajada son usualmente denominados como rampas en lugar de funciones de escalón, y tardan entre 20% – 40% más que los retrasos de propagación.
• La inmunidad al ruido ronda el 50% o 45% de la oscilación lógica.
• Niveles lógicos serán esencialmente iguales a la fuente de poder, esto debido a la alta impedancia de entrada.
• Nivel de tensión desde 0 a VDD donde VDD es la fuente de tensión. Un nivel bajo es cualquier valor entre 0 y 1/3 de VDD mientras que un nivel alto se representa como cualquier valor entre 2/3 VDD y VDD.
2.4.5 BAJO VOLTAJE (LVT,LV, LVC, ALVC)
Son familias lgicas especialmente diseadas para funcionar con tensiones de alimentacin reducidas, sin que ello suponga una prdida de capacidad de carga ni incremento de los tiempos de propagacin.
Dentro de las familias lgicas de baja tensin se encuentran: LV, LVC, ALVC, LVT, ALVT, AVC, LVQ,(algunos ejemplos de estos circuitos son: 74LV165, 74LVC14, 74ALVCH16272, etc)

Podemos observar que el margen de tensiones en el que pueden funcionar, garantizando un correcto funcionamiento, va desde 2.3 a 3.6V, siendo una tensin tpica de alimentacin 3.3V . Las familias LV, LVC y ALVC estn realizadas con tecnologa CMOS y la familia LVT con tecnologa BiCMOS.
Ejemplo de circuitos de proteccin de entrada y salida de la familia LV.

Ejemplo de circuitos de proteccin de entrada y salida de la familia ALVC
Circuitos de proteccin de entrada y salida de la familia LVC.

Ejemplo de circuitos de proteccin de entrada y salida de la familia LVT