Está en la página 1de 55

ELECTRONICA DIGITAL I

CAPITULO 2

CIRCUITOS DIGITALES SECUENCIALES


Vamos a analizar el efecto de realimentar un circuito combinacional …

Circuito digital
COMBINACIONAL

f = f (a,b,c)

Si se realimenta la salida, a alguna entrada del combinacional…

Circuito digital
SECUENCIAL
f = f (a,b,c) = f [ a, b, f(t-1)]

La función f, depende de las variables a,b,c, pero si f cambia, se realimenta cambiada en c, y eso
puede modificar, o no, el valor de f nuevamente. Luego, ante un cambio de a y b, puede o no,
haber un cambio en la salida f. Tendremos entonces un valor de f(t-1) y, eventualmente otro valor
de f(t) al cabo de un instante. Empieza a tener sentido hablar de un “antes”(t-1), y un
“después”(t).
CIRCUITOS OSCILADORES

Se considera a la salida de un circuito estable, si se mantiene en el tiempo con el mismo


valor (“1” o “0”), sin necesidad de ningún tipo de intervención. Llamamos intervención, a
cambiar la combinación de los valores de las entradas.

Se considera a la salida de un circuito astable, o no estable, cuando luego de un cierto


tiempo, por sí sola, sin cambios en la combinación de valores de las entradas, retoma su valor
estable.

OSCILADOR O MULTIVIBRADOR BIESTABLE

Si un circuito puede tener su salida en “1” o “0”, permaneciendo sin intervención, en ese
estado, a lo largo del tiempo, decimos que es un oscilador biestable, porque f(t) puede
permanecer indefinidamente en alto o en bajo (dos posibles estados), hasta que provoquemos
un cambio o conmutación, cambiando las entradas.
Momentos en que cambia la combinación de valores de entradas produciendo cambios en f(t).

Estado estable
f(t) 1 0 1 0
Estado estable Estado estable Estado estable tiempo

Un flip flop es un circuito oscilador biestable, por tener sus dos estados estables.
OSCILADOR O MULTIVIBRADOR MONOESTABLE

Si la salida del circuito es llevada a un estado dado (no estable o astable), y al


cabo de un tiempo, sin necesidad de intervención externa, vuelve por sí sola al
estado original (estable), decimos que se trata de un oscilador monoestable,
presentando un estado estable y un estado no estable o astable.

Momento en que un cambio en la combinación entrada, produce cambio en f(t).

Tau
1 0 Estado estable
f(t)
Estado no estable o astable
tiempo
Al cabo de un tiempo Tau, f(t) retoma su valor estable,
por sí sola, sin intervención

Una aplicación frecuente de este concepto son los circuitos temporizadores.


OSCILADOR O MULTIVIBRADOR ASTABLE

Si el circuito no presenta ningún estado estable y sin intervención alguna, su salida cambia
permanentemente de estado, el circuito presenta dos estados astables y le llamamos
oscilador astable. Este último tipo de circuitos, es lo que normalmente empleamos como
reloj de un sistema secuencial.

Tau 1 Tau 2 Tau 1 Tau 2

f(t) 1 0 1 0
Estado no estable o astable Estado no estable o astable Estado no estable o astable
tiempo

La salida f(t) conmuta permanentemente sin ningún tipo de intervención o cambios


en sus entradas. Sus dos estados son astables.
Analizamos el circuito de la figura, que presenta dos salidas, ambas realimentadas a las entradas de
las compuertas.
a b Out (t) Out (t+1)
0 0 0 0
0 0 1 1
0 1 0 1
0 1 1 1
1 0 0 0
1 0 1 0
1 1 0 0
1 1 1 0

Análisis del funcionamiento: Le vamos dando valores a las entradas a y b, y presuponemos un


valor de Out(t). A partir de ahí seguimos el circuito y vemos en que valor queda Out(t+1), una
vez que se estabilicen los cambios.

1) Si a=b=0, y out(t)=0, salida = 0 y permanece en ese estado.


2) Si a=b=0, y out(t)=1, salida = 1 y permanece en ese estado.
3) Si a=0 y b=1, y out(t)=0, salida = 1, o sea que estaba originalmente en 0, y luego de que
actuaran las compuertas de acuerdo a su lógica, se estabilizó en 1.
4) Si a=0 y b=1, y out(t)=1, salida = 1, o sea que estaba originalmente en 1, y luego de que
actuaran las compuertas de acuerdo a su lógica, quedó en 1, como estaba.

5) …analizar las otras 4 combinaciones y completar la tabla de verdad.
6) A partir de la tabla de verdad, confeccionamos el mapa de Karnaugh de
Out(t+1), en función de las variables a,b, y Out(t).

a b Out (t) Out (t+1)


0 0 0 0
0 0 1 1
0 1 0 1
0 1 1 1
1 0 0 0
1 0 1 0
1 1 0 0
1 1 1 0

Out ( t + 1) = a.b + a.Out ( t ) = a.(b + Out ( t )) = a.(b + Out ( t )) = a + b + Out ( t ) = a + b + Out ( t )

La ultima expresión describe perfectamente al circuito inicial.


Analizamos la tabla de verdad obtenida y …

a b Out (t) Out (t+1) observamos en esta tabla de verdad, que si a=b=0,
0 0 0 0 las salidas en el momento t y en t+1, (Out(t) y Out
(t+1), son iguales. O sea, si ambas entradas son
0 0 1 1 “0”, la salida se mantiene y no cambia, siendo
Out(t+1) = Out(t).
0 1 0 1

0 1 1 1 También podemos afirmar que si a=“0” y b=“1”, la


salida Out(t+1) = “1”, ya sea que haya estado
1 0 0 0 originalmente en “0” o en “1”.
1 0 1 0
Si a=“1” y b=“0”, la salida Out(t+1) = “0”,
1 1 0 0 independientemente de si estaba originalmente en
“0”, o en “1”.
1 1 1 0

Se verifica que en estas tres situaciones, las salidas de las compuertas OR, son complementarias,
y es útil que así lo sean.

En la última combinación, a=b=“1”, Out(t+1) = “0”, pero las salidas de ambas compuertas no
son complementarias como hubiera sido deseable, por lo que no usaremos esta combinación y
la consideraremos “condición sin cuidado” o X, en el mapa de Karnaugh.
Out ( t + 1) = a.b + a.Out ( t ) = a.(b + Out ( t )) = a.(b + Out ( t )) = a + b + Out ( t ) = a + b + Out ( t )

Si establecemos que nunca a=b=1, nuestra tabla de verdad puede convertirse

a b Out(t+1)

0 0 Out(t) Si hacemos
a=R (Reset),
0 1 1 b=S (Set),
y Out(t) = Q(t),
1 0 0 nuestro mapa
K queda …
1 1 X

Con a=b=1 como


condición sin cuidado X.
Y la función Q(t+1) queda Q( t + 1) = S + R.Q( t )
La que se cumple solo con la condición de que S.R = 0 o lo que es lo mismo que
decir que la combinación a=b=1 no está permitida.

El circuito inicial es un flip-flop SR, y la expresión de Q(t+1) es su ecuación. Los Flip flops son
multivibradores biestables, ya que presentan dos estados estables a su salida. Comercialmente
tienen dos salidas, siempre complementarias, razón por la que no consideramos como válida la
combinación a=b=1.
TABLA DE VERDAD DEL FLIP FLOP SR
La tabla de verdad nos explicita el valor de la/s salida/s, en
R S Out(t+1)
función de los valores de las entradas.
0 0 Out(t)
Es una herramienta para el análisis del funcionamiento de un
0 1 1
circuito. Vamos dando valores a las entradas y vemos que ocurre
1 0 0 en la/s salida/s.
1 1 X
Veamos al comportamiento del circuito desde otra mirada.

Supongamos que queremos que si la salida esta en “0”, luego de la conmutación, siga estando en “0”.
Esto se logra o con R=S=0, o con R=1 y S=0. Concluimos que S=0 es la condición necesaria y R puede ser
“0” o “1” (no importa su valor), o sea X.
Del mismo modo planteamos las otras transiciones posibles de la salida. De “0” a “1”, de “1” a “0”, y de
“1” a “1”. Asi podemos construir la tabla siguiente, o tabla de transiciones.

La tabla de transiciones es una mirada desde la


TABLA DE TRANSICIONES
salida, es decir, que valores tienen que tener las
DEL FF SR
entradas para producir determinadas transiciones
Q(t) Q(t+1) S R a la salida,.
0 0 0 X Es una herramienta para el diseño. Plantea lo que se pretende de
0 1 1 0 la actuación de las salidas, y como lo provoco desde las entradas.
1 0 0 1
1 1 X 0 La tabla de transiciones no viene en las hojas de datos de
los flip flops y debemos confeccionarla como hemos visto.
Se propone un análisis similar para el Flip Flop SR, de compuertas NAND de la figura,
teniendo en cuenta que las entradas deben ser complementarias con respecto a las del
Flip Flop de compuertas NOR, y la condición no permitida es que a y b, no pueden ser
simultáneamente “0”, ya que no nos darían salidas Q complementarias.
Una aplicación del Flip Flop SR, es la eliminación de rebotes en una llave. Si bien esto puede parecer de poca
importancia, no lo es tanto ya que son innumerables los circuitos en donde encontramos este tipo de llave,
afectando a circuitos secuenciales, con la consiguiente posibilidad de fallos debidos al problema que se detalla
a continuación.
Todo circuito o red eléctrica tiene capacidades e inductancias distribuidas, no deseadas en la mayoría de los
casos, que pueden producir oscilaciones transitorias , función de los parámetros R, L y C presentes.
Así, ante un estímulo en escalón, la forma de onda de establecimiento de la tensión, lejos de ser un escalón,
como sería deseable, tiene la forma oscilatoria que se muestra.

Si la señal V(t) entra en un


circuito digital es leida como
una sucesión de “1” y “0”, lo
que en en el caso de un circuito
secuencial afecta al
funcionamiento del mismo.

La tensión pasa por los umbrales correspondientes al cero lógico y al uno lógico, sucesivamente, hasta
alcanzar valores de régimen. Sin embargo, a pesar de que se alcanza un valor estable adecuado, antes de
alcanzarlo, los circuitos secuenciales acometidos por este señal, pueden recibir una sucesión de unos y ceros,
cuando se pretendía solamente pasar de cero a uno (escalón). Esto genera malfuncionamiento de estos
circuitos, por lo que estos “rebotes” deben eliminarse.
ELIMINACION DE REBOTES CON SR
Se propone analizar el funcionamiento, analizando los valores de R y S, en cada momento,
viendo como queda la salida.
Rebotes de la llave R S Out(t+1)
0 0 Out(t)
0 1 1
1 0 0
1 1 X

Rebotes eliminados

Los circuitos de aplicación, según se trate de uno u otro tipo de compuertas son:

Circuito con NAND Circuito con NOR


FLIP FLOP SR SINCRONIZADO

Vimos que el orden en que se presentan los valores a las entradas, determinan el funcionamiento
del FF, por lo que sincronizaremos la presentación de valores de S y R a través de las compuertas
AND de la figura. Si C = “0”, S y R son “0” también. Cuando C se pone en “1”, los valores presentes
en S y R, se presentan simultáneamente a la entrada del FF. Decimos entonces, que el FF está
sincronizado, en este caso por nivel.

Hasta ahora la secuencialidad de los FFs estaba imprecisamente definida como “antes” y “después”
(t y t+1). Los valores en la salida se establecían a la velocidad de actuación de las compuertas.
Cuando un FF trabaja así, decimos que lo hace “en modo fundamental”.

Los flip flops se sincronizan por nivel alto, por nivel bajo, por flanco de subida o por flanco de
bajada. A lo largo del curso, trabajaremos con FF sincronizados, normalmente por flanco de
subida o de bajada, que es el modo usual de trabajo con FFs.

A partir de ahora, las transiciones coincidirán con el flanco o nivel, del reloj o clock de los FF del
sistema.
FLIP FLOP JK

En el FF SR, Q( t + 1) = S + R.Q( t )
Con las realimentaciones hechas en el
circuito de la figura, hacemos

R = K.Q(t) y S = J.Q(t)

Y reemplazamos éstas en la
ecuación del FF SR, obteniendo …

Q( t + 1) = J.Q( t ) + K.Q( t ).Q( t ) = J.Q( t ) + (K + Q( t )).Q( t ) = J.Q( t ) + K.Q( t ) + Q( t ).Q( t ) =

Ecuación del ff JK : Q( t + 1) = J.Q( t ) + K.Q( t )


y sus tablas de verdad y de transiciones …

a partir de la cual,
confeccionamos la tabla de
transiciones.

Este flip flop no tiene


ninguna combinación no
permitida.
Diagramas esquemáticos de Flip Flops JK,
sincronizados por reloj de flanco negativo o descendente.

Se hace notar que si un FF es activo, por ejemplo, por


flanco de bajada, los flancos de subida de la señal del
reloj, no tendrán ningún efectos sobre el FF,
necesitándose un ciclo completo de la señal de reloj,
para las transiciones.

Flancos activos que generan transiciones

Ciclo completo

En adelante, trataremos a los FFs según la información de la hoja de datos provista por el
fabricante, sin preocuparnos si están internamente implementados con compuertas NOR o
NANDs.
FLIP FLOPS “T” Y “D” Tabla de verdad del FF JK
Dos derivaciones u aplicaciones del flip flop JK,
son los flip flops T ó (Toggle) y D ó (Data).

El FF T es un FF JK con sus dos


entradas puestas a “1”. Conmuta su
salida con cada flanco activo de reloj. Es
muy empleado en contadores
asincrónicos.

El FF D es un FF JK, con sus entradas complementadas.


Funciona poniendo en su salida, el valor que había en la
entrada antes del flanco de reloj.
Es muy útil para implementar interfases entre
dispositivos, como veremos mas adelante.
FLIP FLOP MAESTRO - ESCLAVO u ORDENADOR – SEGUIDOR

Los FF1 y 2, son FF D, o sea que cada vez


que reciben un pulso de reloj, el valor
lógico que hay en su entrada, se traslada a
la salida. Una cascada de FFs D, conforman
un registro de desplazamientos, ya que
propagan los valores hacia la derecha (en
este caso).
El funcionamiento normal, es el que vemos
A en A. Los FF son activos por flanco de caída
y vemos en A, que cuando cae el primer
flanco de reloj, Q1, que estaba en “0”, pasa
a “1”, y cuando cae el segundo pulso del
reloj, ese “1” pasa a Q2.

En B vemos un malfuncionamiento, debido


a que cuando se traslada el “1” a la salida
B de Q1, ya es leído tambien por S2, que lo
pone a la salida de Q2, y ambos FF quedan
en “1”, casi al mismo tiempo. Esta
operación no es la pretendida y a fin de
evitarla se desarrollaron los FF maestro-
esclavo, o master-slave.
FLIP FLOP MAESTRO ESCLAVO (master-Slave)

Se trata de dos FF SR (2A y 2B, y 4A y 4B) sincronizados por nivel (1A y 1B, 3A y 3B), y
conectados en cascada y que en virtud de la compuerta inversora I, el primero actua por nivel
alto de Reloj o C, y el segundo por nivel bajo. El primer FF tiene todo el ancho del semiciclo
para establecerse y activar el siguiente FF, solucionando el problema que vimos anteriormente.
En definitiva, el FF actúa también en un ciclo de reloj, pero sin posibilidad de propagar el valor
de la entrada a la salida en el mismo momento.

Debe aclararse que todo esto viene encapsulado en el mismo chip.


FLIP FLOP MAESTRO-ESCLAVO CON ENTRADAS ASINCRONICAS

Vemos un circuito similar al anterior (maestro-esclavo), pero en este caso presenta una serie
de entradas Rd, Sd, las que si se ponen en “0”, fuerzan a que la salidas de las compuertas a las
que entran, se pongan “compulsivamente” en “0”, o en “1”, independientemente de los
valores de las entradas S y R.

Se denominan entradas asincrónicas, por que su acción no depende del pulso de reloj y se
utilizan para forzar a la salida del FF a un estado dado. En el caso de la figura, con un “0” en
Sd, la salida Q es forzada a “1”, y con un “o” en Rd, forzamos Q a “0”. Ambas entradas
asincrónicas son activas por “0” y está claro que no pueden ser ambas “0” a la vez.
EJEMPLO COMERCIAL
Como ejemplo, tomamos el
diagrama esquemático (simbolico)
y pinout de la hoja de datos del
74LS76, un circuito integrado TTL
que contiene dos FF JK, con reloj
activo por flanco de caída, y
entradas asincrónicas Set y Clear
(Reset).

Pinout del dispositivo.


APLICACIONES CON FLIP FLOPS

DISEÑO DE CIRCUITOS DIGITALES


SECUENCIALES

Presentaremos diferentes aplicaciones secuenciales con flip flops.

Veremos un ejemplo de aplicación de un tipo de circuitos secuenciales


asincrónicos, muy conocido por ser fundamental en el diseño de contadores
binarios.

Luego, tres métodos de diseño de circuitos digitales sincrónicos, que utilizaremos


en implementaciones circuitales en el laboratorio.
CIRCUITOS SECUENCIALES ASINCRONICOS

La característica fundamental de los circuitos asincrónicos es que a diferencia de los circuitos


secuenciales sincrónicos, los flip flops del sistema no tienen la misma señal de reloj.

Existen métodos de diseño de circuitos asincrónicos que no trataremos en este curso.


Presentamos el circuito secuencial asincrónico de mayor uso.

CONTADOR ASINCRONICO DE RIPPLE, o RIPPLE COUNTER

El circuito de la figura es la versión mas sencilla de un ripple counter. Se trata básicamente de una
cascada de FF T (JK, con sus entradas a “1”). La salida Qn de cada FF, es el reloj del FF siguiente.
Recordemos que el FF T, cambia su salida de “0” a “1”, o viceversa, cada vez que se produce el flanco del
reloj.
Analizamos las formas de onda de la figura. Al primer FF T le llega la señal de Reloj. Su salida Q0,
es la forma de onda dibujada en segundo lugar, pero a la vez es el reloj del FF Q1. La salida Q0,
cambia de nivel en cada flanco descendiente de la señal Reloj. A su vez, la salida Q1 cambia con
cada flanco descendente de Q0, y Q3, con cada flanco descendente de Q2 y así sucesivamente.

0 1 0 1 0 1 0 0 0 1 0 1 0 0
1 1 1
0 0 1 1 0 0 1 1 0 0 1 0 0 1 0
1 1
0 0 0 0 1 1 1 1 0 0 0 0 0
1 1 1 1
0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 …
Tomando Q0, como bit menos significativo y Q3, como mas significativo, las salidas Qn presentan
una cuenta en binario natural. También observamos que cada salida presenta una forma de
onda cuya frecuencia es la mitad de la señal de su reloj, por lo que estos circuitos también se
emplean como divisores de frecuencia.
En el circuito de la figura anterior pueden detectarse valores de cuenta, y a partir de allí sacar una
señal, para las entradas de Reset asincrónicas de los flips flops, con lo que al llegar a ese valor de
cuenta, se produciría un Reset de los mismos y el recomienzo de la cuenta. Por ejemplo, de ese
modo se puede diseñar un contador de 0 a 9, y vuelta a comenzar. También se puede trabajar sobre
las entradas asincrónicas de Set, y hacer un contador, p.ej. De 3 a 9.

El máximo valor de cuenta de un contador se conoce como módulo del contador. Un contador de 4
bits, que cuenta de 0 a 9 y comienza de nuevo, es un contador de módulo 9.

Si en lugar de las salidas Q, se usan sus salidas complementarias como reloj del siguiente FF, la cuenta
es decreciente. Se pueden implementar esquemas bidireccionales, como en el contador de la figura
siguiente.

Observar como los FF JK están usados como FF T en cascada

El valor de M en el circuito determina la cuenta ascendente o descendente.


DISEÑO DE CIRCUITOS SECUENCIALES
CIRCUITOS SECUENCIALES SINCRONICOS

Trabajaremos en base a un problema


Diseñar un circuito secuencial sincrónico de modo que a partir de un estado inicial (E0), si se presenta un
número binario impar, seguido de un par, se enciende un LED Verde. Si estando prendido el diodo Verde,
se presenta un número par, se apaga el Verde y se enciende uno Rojo. Si estando encendido el diodo
Rojo y viene un impar, se retorna al estado inicial. Solo con un número par se apaga el verde, y solo con
un impar se apaga el Rojo.

Diagrama en bloques del sistema


a implementar.

En rigor, lo que determina


que un número binario sea
par o impar, es el bit menos
significativo. Si es “1”, el
número es impar, por lo que
nuestro sistema tendrá una
sola variable externa, a la que
x = Less Significative
llamaremos x, y que es el bit Bit (LSB)
menos significativo del x =1 => impar
numero binario entrante. x =0 => par
DIAGRAMA DE ESTADOS
El primer paso es elaborar un diagrama de Estados. Se trata de un recurso gráfico o grafo, que describe
simbólicamente nuestro problema. Lo hacemos en base al enunciado.
Diseñar un circuito secuencial sincrónico de modo que a partir de un estado inicial (E0), si se presenta un
número binario impar, seguido de un par, se enciende un LED Verde. Si estando prendido el diodo Verde, se
presenta un número par, se apaga el Verde y se enciende uno Rojo. Si estando encendido el diodo Rojo y viene
un impar, se retorna al estado inicial. Solo con un número par se apaga el verde, y solo con un impar se apaga
el Rojo.

“A partir de un estado inicial (E0), si x impar (x=1),


seguido de un par (x=0), se enciende un Led verde
(E2)”. Debe haber un estado intermedio (E1) en
espera del segundo número, antes de llegar a E2,
cuya salida es el led verde encendido.
“Si estando prendido el diodo Verde (E2), se presenta
un número par, se apaga el Verde y se enciende uno
Rojo (E3)”.
“Si estando encendido el diodo Rojo (E3) y viene un
impar, retornamos al estado inicial (E0)”.
Después completamos cada estado ya que la variable
puede valer cualquier valor.
Si estamos en E0 y viene un par (x=0), nos quedamos
en E0.

Si estamos en E1 y x=1, seguimos en E1, Si estamos en E2 y x=1, seguimos en E2, y finalmente si estamos en E3 y x=0,
seguimos en E3.
Completamos con los valores de la salida, en cada estado. Es importante no confundir estados, con salidas. No son
equivalentes.
METODO 1 ENTRE N
Es un método de diseño con FF D. En EL QUE cada estado queda indicado por la salida Qn de cada FF.
sólo habrá una salida Qn en alto, por estado, según la tabla de decodificación de estados. Nótese que si
se ve el led verde en ON, sabremos que estamos en E2, y estamos en E3 cuando este en ON el rojo, pero
de ninguna manera será visible que estamos en E0, o en E1, ya que en los dos estados, ambos leds están
en OFF. La única manera eficaz de saber en que estado está el secuencial, es midiendo los valores de las
salidas Qn de los FF.
DECODIFICACION DE ESTADOS
Q0 Q1 Q2 Q3
E0 1 0 0 0
E1 0 1 0 0
E2 0 0 1 0
E3 0 0 0 1

Para llegar a E0(t+1), después del pulso de


reloj, debemos estar en E0(t) en el momento
t, Y venir x=o, O estar en E3 en el momento
t, E3(t) Y debe venir x=1.
Lo expresamos como :
E0(t+1) ó Q0(t+1)= Q0(t).x + Q3(t). x = D0(t)
Y planteamos las restantes ecuaciones

Es importante señalar que en este método, cada E 0( t + 1) = Q0( t + 1) = Q0( t ).x + Q3( t ).x = D0( t )
salida Qn, representa a cada En. E1( t + 1) = Q1( t + 1) = Q1( t ).x + Q0( t ) x = D1( t )
Por eso, En(t+1)=Qn(t+1). Cada Qn(t+1) = Dn(t),
ya que es la ecuación del FF D. E 2( t + 1) = Q 2( t + 1) = Q2( t ).x + Q1( t ).x = D2( t )
E3( t + 1) = Q3( t + 1) = Q3( t ).x + Q 2( t ).x = D3( t )
A partir de las ecuaciones, implementamos el circuito.

E0( t + 1) = Q0( t + 1) = Q0( t ).x + Q3( t ).x = D0( t )


E1( t + 1) = Q1( t + 1) = Q1( t ).x + Q0( t ) x = D1( t )
E 2( t + 1) = Q2( t + 1) = Q2( t ).x + Q1( t ).x = D2( t )
E3( t + 1) = Q3( t + 1) = Q3( t ).x + Q2( t ).x = D3( t )

Obsérvese que la señal de reloj o clock, es la


misma para todos los flip flops del circuito,
por ser un circuito sincrónico.

Los diodos Led se conectan a las salidas Q2 y


Q3, ya que son propias de los estados en que
encienden estos diodos.

El led verde se encenderá en el estado E2,


cuando Q2 este en “1”.

El led rojo se encenderá en el estado E3,


cuando Q3 este en “1”.

En este método, habrán tantos FFs como


estados tenga el secuencial.
METODO DEL DECODIFICADOR
Este método es muy similar al anterior, pero se trata de disminuir la cantidad de FF necesarios,n
decodificando los estados mediante un decodificador, así tendremos n FFs, para 2 estados. En el caso
que nos ocupa, necesitaremos 2 FFs, y un decodificador 1 entre 4.

Decodificación
de estados
Decodifi Q0 Q1
cador
1 entre 4
E0 0 0
E1 0 1
E2 1 0
E3 1 1
Los estados se
identifican por las
combinaciones de
los Qn.

De la decodificación de estados vemos que Q0 será “1” en los estados E2 y E3, y Q1 será “1” en E1 y E3,
luego; Q0(t+1) = D0(t) = E2(t)+E3(t) y Q1(t+1) = D1(t) = E1(t)+E3(t)

A partir de las que armamos las ecuaciones de los Qn, en función de las salidas del decodificador y de
los valores de x.
Q0( t + 1) = D0( t ) = E1.x + E 2.x + E 2.x + + E3.x = E1.x + E 2.( x + x ) + E3.x = E1.x + E 2 + E3.x
Q1( t + 1) = D1( t ) = E0.x + E1.x + E 2.x + + E3.x = x (E 0 + E1) + x.(E 2 + E3)
A partir de las ecuaciones, elaboramos el diagrama esquemático del circuito a implementar.

Q0( t + 1) = D0( t ) = E1.x + E 2.x + E 2.x + + E3.x = E1.x + E 2.( x + x ) + E3.x = E1.x + E 2 + E3.x
Q1( t + 1) = D1( t ) = E0.x + E1.x + E 2.x + + E3.x = x (E0 + E1) + x.(E 2 + E3)

Los diodos led deberán ir en las


salidas del decodificador
correspondientes a los estados
E2 y E3, respectivamente.

En esta solución hemos


ahorrado dos flip flops, pero
agregamos el decodificador, por
lo que la economía con la
solución anterior no es muy
notable.

La economía es mayor, cuantos


mas estado tenga el secuencial.
Si el secuencial hubiese tenido 8
estados, lo resolveríamos con 3
FFs y un decodificador, por
ejemplo, en lugar de 8 FFs.
METODO CON FLIP FLOPS JK
Partimos del mismo diagrama de estados, ya que el diagrama de estados es descriptivo del problema, y
no de la solución del mismo. Este método aprovecha que el JK tiene cuatro opciones de valores de
entrada, por lo que necesitaremos n ffs, para 2n estados.

Decodificación
de Estados
Q0 Q1
E0 0 0
E1 0 1
E2 1 0
E3 1 1

Tabla de Transiciones FF JK.

Q(t) Q(t+1) J K

0 0 0 x

0 1 1 x

1 0 x 1

1 1 x 0

En el interior del globo representativo de cada estado, indicamos los valores de Q0 y Q1 que
identifican al estado, según la tabla de decodificación de estados.
Armamos una tabla, a partir del diagrama de estados. Las 3 primeras columnas son todas las combinaciones de
variables externa (x) y de estado, Q0 y Q1. En este caso, dos ffs y x, 3 varibles, 8 combinaciones. Los estados se
identifican por los valores de los Qs.
Tabla de Transiciones FF JK.En las 3 primeras
columnas se tienen el
Q(t) Q(t+1) J K estado actual E(t),
0 0 0 x codificado, y el valor de
x.
0 1 1 x
Las dos columnas
1 0 x 1 siguientes son los
estados (tambien
1 1 x 0
codificados) adonde
tiene que ir el secuencial, despues del estado y valor
de x de la izquierda. En las 4 columnas que siguen
están los valores de Jn y Kn necesarios para que el
secuencial evolucione, según la tabla de
transiciones. Y finalmente los valores de las salidas
en cada estado.
x Q0(t) Q1(t) Q0(t+1) Q1(t+1) J0 K0 J1 K1 Led V Led R Lo leemos así: Si estoy en el
0 0 0 0 0 0 x 0 x 0 0 estado E0(00) y x=0, voy al estado
E0(00). Si estoy en el estado
0 0 1 1 0 1 x x 1 0 0
E1(01), y x=0, voy a E2(10). Y asi
0 1 0 1 1 x 0 1 x 1 0 las columnas de t+1.
0 1 1 1 1 x 0 x 0 0 1 Ahora veo que en la fila 1,
1 0 0 0 1 0 x 1 x 0 0 columna 2, Q0(t) esta en “0”, y
debe pasar a ser Q0(t+1), “0”
1 0 1 0 1 0 x x 0 0 0 (flecha roja). Para ello, J0 y k0
1 1 0 1 0 x 0 0 x 1 0 deben estar en 0X, según tabla de
1 1 1 0 0 x 1 x 1 0 1 transiciones.
x Q0(t) Q1(t) Q0(t+1) Q1(t+1) J0 K0 J1 K1 Led V Led R Hacemos lo mismo con Q1(t) y
Q1(t+1) (líneas violetas) y vemos
0 0 0 0 0 0 x 0 x 0 0
que para que ocurra esa transición,
0 0 1 1 0 1 x x 1 0 0 también J1 y K1 deben ser 0X. Y así
0 1 0 1 1 x 0 1 x 1 0 llenamos las 9 primeras columnas.
0 1 1 1 1 x 0 x 0 0 1
Finalmente ponemos las columnas
1 0 0 0 1 0 x 1 x 0 0 correspondientes al estado de las
1 0 1 0 1 0 x x 0 0 0 salidas (en tiempo = t).
1 1 0 1 0 x 0 0 x 1 0
1 1 1 0 0 x 1 x 1 0 1

J 0 = x.Q1 K 0 = x.Q1
De la tabla armamos los mapas de
Karnaugh de los Jn y Kn.

Y tambien las funciones de las


salidas adonde van los leds.

Nótese que en el estado E2, Q0 y


Q1 son 10, y en Q3, 11, por lo que
las ecuaciones de los leds son:

LedV = Q0.Q1

LedR = Q0.Q1

J1 = x.Q0 + x.Q0 = x  Q0 K1 = x.Q0 + x.Q0 = x  Q0


Hacemos el diagrama esquemático, en base a las ecuaciones obtenidas.

J 0 = x.Q1
K 0 = x.Q1
J1 = x.Q0 + x.Q0 = x  Q0
K1 = x.Q0 + x.Q0 = x  Q0
LedV = Q0.Q1
LedR = Q0.Q1
AUTOMATAS DIGITALES o MAQUINAS DE ESTADO.

En la figura vemos un modelo genérico de autómata digital, con variables externas y


variables internas o de estado (las salidas Qn de los FF).

Se pueden identificar una etapa combinacional de entrada, un núcleo secuencial basado


en FFs, sincronizados por su clock, y con sus salidas Q (variables de estado) que van a un
combinacional de salida.

Es importante señalar que no deben confundirse las salidas con los estados del sistema.
Pueden coincidir, pero sólo en casos particulares, no siendo la generalidad.

Las Maquinas de Estado o Autómatas pueden encontrarse bajo dos formas básicas:
Autómatas o Máquinas de Mealy o de Moore.
AUTOMATAS DE MOORE.

A) Forma básica
de Moore.
A

B) Forma de
Moore en las que las B
variables de estado
interna, son las
salidas del sistema.
Esta forma no
presenta circuito
combinacional de
salida.
La característica
C) Forma de Moore, C distintiva de un
sin variable externa de Moore es que las
entrada. conmutaciones
de la salida están
sincronizadas
siempre con el
reloj.
AUTOMATAS DE MEALY

Autómata de Mealy. La
caracteristica saliente
de un Mealy, es que la
variable externa actúa
directamente sobre el
combinacional de
salida, pudiendo
producir cambios en la
salida
independientemente
de la actuación del
reloj.

Autómata de Mealy
sincronizado a la
salida.

Esta forma, si bien la


salida esta
sincronizada con el
reloj, sigue siendo un
Mealy, por su
concepción.
Esta ultima solución utiliza mas circuitería que la necesaria, si se hubiese diseñado un Moore.
Ejercicios de diseño de circuitos secuenciales sincrónicos.
PROBLEMA 1
Diseñaremos el circuito secuencial que controla las luces de un cruce semaforizado, que
debe cumplir con los tiempos indicados; Rojo, 20 “; Verde, 15 “; Amarillo, 5 “
PROBLEMA 1
Diseñaremos el circuito secuencial que controla las luces de un cruce semaforizado, que debe cumplir
con los tiempos indicados; Rojo, 20 “; Verde, 15 “; Amarillo, 5 “

Consideraciones de diseño.

Podemos plantear 8 estados de 5 “ cada uno, con un


clock de 5” de periodo, siguiendo la secuencia
Secuencia de los valores
de las 6 salidas.
V1 R2 5”
20”
V1 R2 5”
V1 R2 5”
A1 R2 5”
R1 V2 5” 15”
R1 V2 5”
R1 V2 5”
R1 A1 5” 5”
Secuencia que se repite indefinidamente.
Utilizaremos FF JK

Forma de onda de la señal de clock que


se empleará para sincronizar la actuación
de los FFs. Será un circuito digital
t secuencial sincrónico.
Período clock T = 5”
Dibujamos el diagrama de estados según la secuencia pretendida, indicando en el Out1
interior del globo el estado (En) y las variables de estado (qn), según la Estado Out2
decodificación establecida (arbitraria) y en el exterior, los valores de las salidas. q0 q1 q2 …
Outn

Diagrama de Se trata de un secuencial en Siendo 8 estados,


estados E0 “anillo”, sin variable externa empleando FF JK,
V1 R2 de entrada. Evoluciona necesitaremos 3
000 automáticamente siguiendo FF.
E7 E1 una secuencia dada por sus
111 R1 A2 V1 R2 001 variables de estado qn.
Secuencia de los valores Decodif.
de las 6 salidas. de estados

V1 R2 5” q0 q1 q2
E6 E2 V1 R2 5” E0 0 0 0
R1 V2 V1 R2 010 E1 0 0 1
110 V1 R2 5” E2 0 1 0
A1 R2 5” E3 0 1 1
R1 V2 5” E4 1 0 0
R1 V2 5” E5 1 0 1
A1 R2 R1 V2 5” E6 1 1 0
E5 E3 E7 1 1 1
R1 V2 011 R1 A2 5”
101
E4
100
R1 V2
A partir del diagrama de estados, y con la tabla de transiciones, elaboramos la tabla que nos permitirá
construir los mapas de Karnaugh de las funciones Jn y Kn, y de las salidas R1, A1, V1, R2, A2 y V2.

En el diagrama de estados vemos que del estado E0(000), se pasa al E1(001), y


eso esta en las primeras 6 columnas de la tabla. Vemos que q0(t), conmuta a
q0(t+1), por lo que J0 y K0, deberán tener los valores que indica la tabla de
transiciones del JK, para lograr esa transición. Las 6 ultimas columnas son los
valores de las salidas para el estado E0.
Del mismo modo se completa la tabla, y de ésta se arman los mapas K, de los
Jn, Kn, y las funciones de las luces de los semáforos.

Diagrama de Estados
q0(t) q1(t) q2(t) q0(t+1) q1(t+1) q2(t+1) J0 K0 J1 K1 J2 K2 R1 A1 V1 R2 A2 V2

0 0 0 0 0 1 0 X 0 X 1 X 0 0 1 1 0 0

0 0 1 0 1 0 0 X 0 X X 1 0 0 1 1 0 0

0 1 0 0 1 1 0 X X 0 1 X 0 0 1 1 0 0

0 1 1 1 0 0 1 X X 1 X 1 0 1 0 1 0 0

1 0 0 1 0 1 X 0 0 X 1 X 1 0 0 0 0 1

1 0 1 1 1 0 X 0 1 X X 0 1 0 0 0 0 1

1 1 0 1 1 1 X 0 X 0 1 X 1 0 0 0 0 1

1 1 1 0 0 0 X 1 X 1 X 1 1 0 0 0 1 0
Se deja como ejercicio completar la solución de la aplicación.
PROBLEMA 2
Planteamos otro problema, basado en el anterior. El planteo y los tiempos son similares, pero en este
caso, existe un pulsador (P), para peatones, de modo tal que si un transeúnte lo pulsa, el semáforo 1,
detiene a los vehículos permitiendo el cruce del peatón por esa calle, saltando al amarillo A1, y luego
al R1. La variable P, es una variable externa, que altera la normal secuencia del semáforo.

En este caso, el sistema tiene la variable externa de entrada P, por lo que las ecuaciones son función
de cuatro variables, q0, q1, q2 y P, por lo que tendremos 16 combinaciones distintas para considerar.
PROBLEMA 2
Planteamos otro problema, basado en el anterior. El planteo y los tiempos son similares, pero en este
caso, existe un pulsador (P), para peatones, de modo tal que si un transeúnte lo pulsa, el semáforo 1,
detiene a los vehículos permitiendo el cruce del peatón por esa calle, saltando al amarillo A1, y luego
al R1. La variable P, es una variable externa, que altera la normal secuencia del semáforo.

Diagrama de
E0
V1 R2 estados
000
E7 E1
111 R1 A2 001 V1 R2

V1 R2
P P
E6 P E2
110 R1 V2 010

P
En este caso, el sistema tiene la
variable externa de entrada P, por lo E5 E3
que las ecuaciones son función de R1 V2 011 A1 R2
101
cuatro variables, q0, q1, q2 y P, por lo E4
que tendremos 16 combinaciones 100
distintas para considerar. R1 V2
PROBLEMA

Resolver, empleando semáforos, el siguiente cruce, debiendo cumplirse:

a) Permitir que los vehículos que se


dirigen al norte puedan circular sin
interrupciones.
b) Los vehículos que deseen girar, se
acercan al cantero central adonde
son detectados por el sensor D, que
es un detector de presencia de
vehículos.
c) A partir de la detección del vehículo
que desea girar a la izquierda, se
debe desencadenar una secuencia
que detenga los vehículos que van
al sur, permitiendo que el vehículo
detectado pueda girar.
d) Al cabo de un cierto tiempo, se
debe retomar la secuencia normal,
en la que los vehículos circulan
libremente al sur o al norte.

La ubicación y tipo de luces, forma parte del diseño a resolver.


V1
GR1 S1 al norte
G1

al sur
S2 V2

A2

R2 D
Podemos implementar un clock de 5” de período, con lo que el sistema permanece 5” en cada estado.
El sistema permanece en el estado E0
indefinidamente, hasta que un auto es
Diagrama de D detectado y D = “1”. En ese estado, ambos
estados semaforos están en verde, y la luz de giro en
rojo.
E0 V1 V2 GR1
Con D=“1”, el sistema pasa a E1, en donde se
enciende A2, para que los autos que van
D óD hacia el sur vayan deteniéndose.
D
Al cabo de 5”, debido al clock del sistema, se
pasa al estado E2, en el que se enciende la luz
de giro a la izquierda, se enciende R2, para
E3 E1 que los autos que van al sur se detengan, y
V1 permanece siempre encendido, ya que
R2 V1 G1 A2 V1 GR1
esos autos deben poder circular siempre.

El estado E3, está para darle otros 5” a los


R2 V1 G1 autos que giran.

D óD Al cabo de esos 5” de E3, se retorna al E0.


D óD E2
Nótese que una vez que se desencadena la
secuencia de giro, los cambios de la variable
externa D, no modifican la secuencia.
La solución propuesta conlleva 4 estados, una variable externa (D), y un reloj
(astable) con un período de 5”, lo que establece los tiempos de la secuencia.

Un defecto que tiene este diseño es que supongamos que un auto quiere girar a la
izquierda, y se ubica de modo de que el sensor lo detecte y posteriormente se
desencadena la secuencia de giro a la izquierda. Si antes del final de la secuencia de
giro, otro vehículo se detiene al lado del sensor, la secuencia se desencadena de
nuevo y sucesivamente, si varios vehículos van apareciendo en el sensor, hará que
los autos que van hacia el sur deberán esperar a que gire el último vehiculo
detectado por el sensor.

¿Cómo pode os resolver esto? Por ejemplo, que la secuencia de giro no pueda
producirse por mas de una cierta cantidad de tiempo, antes de quedar nuevamente
disponible.

Realice las modificaciones necesarias para resolver esa circunstancia.


PROBLEMA

Resolver el cruce semaforizado, de ingreso al hotel. El sistema tiene dos sensores (S1 y S2)
de detección de vehículos, de modo de que cuando un vehículo es detectado por el sensor,
se debe generar la secuencia necesaria para que el vehículo siga las trayectorias marcadas
en líneas de puntos.
PROBLEMA
Se trata de implementar un circuito que presente a sus salidas, las señales que se muestran en la
figura. Si la variable de entrada e =”0”, las salidas deben presentar las dos formas de señal
superiores. Si e = “1”, las dos señales de abajo.
Debe implementarse un circuito secuencial sincrónico.

“0” “1” “0” “0” “0” “1” “0”

“0” “1” “1” “0” “0” “1” “1”


Si bien decimos “formas de
onda”, podemos expresar las
salidas pretendidas, como una
sucesión de números binarios.
“0” “0” Las salidas a y b, cuando
“1” “0” “0” “0” “1” e=“0”, sería una secuencia 00,
11, 01, 00 y vuelta a comenzar.
Para el caso e = “1”, a y b
“0” “1” “0” “0” “0” “1” “0” presentarán la secuencia 00,
01, 10, 00 y vuelta a comenzar.

Y la primer pregunta que debemos respondernos es con cuantos estados resuelvo este problema.
Diagrama de
estados

e q0(t) q1(t) q2(t) q0(t+1) q1(t+1) q2(t+1) j0 k0 j1 k1 j2 k2 a b


0 0 0 0 0 1 1 0 x 0 x 1 x 0 0
0 0 0 1 1 0 0 1 x 1 x x 1 0 1
decodif. de 0 0 1 0 1 0 0
Estados 0 0 1 1 0 0 1
0 1 0 0 0 0 0
Q0 Q1 Q2 0 1 0 1 x x x
E0 0 0 0 0 1 1 0 x x x
E1 0 1 1 0 1 1 1 x x x
E2 0 0 1 1 0 0 0 0 0 1
E3 1 0 0 1 0 0 1 0 1 1
E4 0 1 0 1 0 1 0 1 0 0
E5 1 0 1 1 0 1 1 0 0 1
E6 1 1 0 1 1 0 0 0 0 0
E7 1 1 1 1 1 0 1 x x x
1 1 1 0 x x x
1 1 1 1 x x x
En caso de optarse por diseñar un modelo tipo autómata de Mealy, el diagrama de estados podría
ser el de la figura, en el que las salidas se obtienen a partir de un combinacional que cumpla la tabla
de verdad indicada, con e, q0 y q2 como entradas y a y b, como salidas. El principal inconveniente de
esto es que pueden haber cambios en la salida, cuando cambie la entrada e, sin necesidad de
esperar el pulso de reloj.

e q0 q1 a b
0 0 0 0 0
0 0 1 1 1
0 1 0 0 1
0 1 1 0 0
Tabla de verdad del circuito 1 0 0 0 0
combinacional de salida, en caso de 1 0 1 0 1
1 1 0 1 0
implementarse una forma de Mealy. 1 1 1 0 0
PROBLEMAS

Diseñar un circuitos secuencial sincrónico, con salida sincrónica (Automata de Moore), empleando
FF’s JK y compuertas NAND y/o NOR de dos entradas, que detecte la secuencia 1, 1, 0, 1 y encienda
un led. Una vez encendido el led, la secuencia 0,0 hace que se vuelva al estado inicial.

Diseñar un circuitos secuencial sincrónico, con salida sincrónica (Automata de Moore), empleando
FF’s JK y compuertas NAND y/o NOR de dos entradas, que genere en sus salidas la secuencia (en
binario natural) 0, 2, 3, 1, … si una entrada externa X = 0 , ó 2, 3, 3, 1, … si X = 1.

Diseñar un circuitos secuencial sincrónico, con salida sincrónica (Automata de Moore), empleando
FF’s JK y compuertas NAND y/o NOR de dos entradas, que genere en sus salidas la secuencia (en
binario natural) 1, 1, 1, 2, … si una entrada externa X = 0 , ó 2, 1, 2, 3, … si X = 1.

Diseñar un circuitos secuencial sincrónico, con salida sincrónica (Automata de Moore), empleando
FF’s JK y compuertas NAND y/o NOR de dos entradas, que detecte el ingreso de tres unos
consecutivos y encienda un led, y que despues de encendido el led, con tres ceros consecutivos, o no,
regrese al estado inicial. No puede detectar nuevamente los tres unos consecutivos si antes, no apago
el led.
Los circuitos secuenciales son una de las partes mas importantes de
la materia, asi que lean bien este material

Paciencia y no se olviden de

CUIDARSE PARA CUIDAR

¡¡¡ Ojo al piojo con el virus !!!

También podría gustarte