fundamentos de lógica digital. sesion 22. circuitos
TRANSCRIPT
1
Fundamentos de lógica digital. Sesion 22. Circuitos secuenciales. El flip-flop R-S.
Los circuitos combinacionales no tienen capacidad de almacenamiento de información por
lo que su salida está perfectamente determinada a partir de los valores presentes en las
entradas. En múltiples e interesantes casos, por el contrario, la salida Z del sistema en un
instante t0 depende no sólo del valor de las entradas X en t0 sino de la evolución del sistema
hasta t0; esto es:
Z(t0) = Z((X(t0), X(t < t0))
Esto es, la salida Z en el tiempo t0 depende del estado de las entradas en dicho tiempo t0 y el
estado de las mismas entradas antes de llegar a t0.
Este tipo de función corresponde a las denominadas funciones secuenciales, autómatas o
máquinas de estados finitos. Su estudio para el caso de realizaciones con circuitos digitales
es el propósito de esta parte del curso.
Modelos secuenciales y representaciones
Las "situaciones" en las que puede estar un circuito secuencial no son ilimitadas. Entonces,
para caracterizar al circuito es posible establecer un conjunto finito de estados internos (o
simplemente estados), S1, S2, . . . Sk, cada uno de los cuales representa una de las
"situaciones" del circuito. La salida y la evolución del sistema quedan bien establecidas si
se conoce el valor de las entradas (estado de entradas Ij) y el estado presente (Si). El valor
de la salida O admite dos modelos:
- De Mealy, en el que la salida depende tanto de la entrada como del estado presente,
cumpliéndose que O = O(Ij, Si) .
- De Moore, en el que la salida depende sólo del estado presente, O = O(Si) .
La evolución del sistema viene marcada por el cambio desde el estado presente Si al
próximo estado NS que en ambos modelos depende de la entrada y del estado presente:
NS = NS(Ij, Si) .
La representación de una máquina secuencial suele hacerse mediante grafos o tablas
deestados/salida, de la forma siguiente:
2
Máquina de Moore con la palabra 1011 donde el estado inicial es A y el estado final es B junto con
su tabla de estados/salida
El diagrama de estados de una máquina de Mealy simple
La desventaja que poseen todos los circuitos lógicos y las configuraciones estudiadas
previamente es que al ser removida la información a su entrada desaparece la información a
su salida. Estos circuitos únicamente pueden procesar información, no la pueden retener ni
siquiera temporalmente. Es obvio que la existencia de configuraciones con memoria, esto
es, con la capacidad para retener por tiempo indefinido (o al menos mientras haya
suministro de corriente eléctrica) la información que alguna vez fue colocada a su entrada,
puede ser de una utilidad enorme.
Para lograr tales elementos con memoria, podemos explotar un fenómeno muy peculiar a
los circuitos lógicos de enorme importancia: La retroalimentación (o el regreso) de la
salida (o salidas) a la entrada (o entradas) de los circuitos lógicos introduce memoria en los
mismos; esto es, se convierten en elementos capaces de almacenar información por tiempo
indefinido. (En la literatura de habla inglesa, a la retroalimentación se le conoce como
feedback.)
Empezaremos nuestra introducción a los circuitos lógicos capaces de exhibir capacidades
de memoria con la siguiente configuración que puede parecer curiosa al principio por
carecer por completo de entradas que podamos variar a nuestro antojo:
3
Para analizar este tipo de circuitos, procedemos exactamente de la misma manera como lo
hicimos con los circuitos lógicos combinatorios, en los cuales aplicamos todas las
combinaciones posibles de "unos" y "ceros" a la entrada (o entradas) y obtuvimos todas las
respuestas posibles a la salida (o salidas) de tales circuitos lógicos, construyendo tablas de
verdad para cada uno de ellos, análisis que posteriormente fue refinado con la introducción
del álgebra Booleana. La diferencia en este caso es que como estamos retroalimentando las
salidas a las entradas, no sólo tenemos que aplicar todas las combinaciones posibles de
"unos" y "ceros" a la entrada (o entradas) sino que tenemos que aplicar también todas las
combinaciones posibles de "unos" y "ceros" a la salida (o salidas), fijándonos muy bien en
aquellas combinaciones de entradas y salidas que produzcan estados incompatibles para
proceder a desecharlas de nuestro análisis. Un estado incompatible en el anterior circuito
formado con dos bloques NOT sería el estado en el cual Q=0 y Q'=0:
Aquí la verificación de que este es un estado incompatible es un asunto fácil. Suponiendo
que la salida del NOT superior es "0", entonces dicho "0" está siendo introducido al NOT
inferior, el cual por la acción inversora debería convertir dicho "0" produciendo un "1" a su
salida, lo cual es incompatible con el "0" que habíamos supuesto desde un principio
para Q'. Y si la salida del NOT inferior es "0", entonces dicho "0" está siendo introducido
al NOT superior, el cual por la acción inversora también debería convertir dicho "0" en un
"1", lo cual es incompatible con el valor que habíamos supuesto de Q=0.
Llevando a cabo un análisis similar, podemos proceder a desechar también el estado Q=1 y
Q'=1 como un estado posible, porque también nos produce incompatibilidades. Tal estado
simple y sencillamente no puede existir.
4
Sin embargo, un estado que sí es posible es el estado Q=1 y Q'=0:
Aquí, el "1" que posee la salida Q en el NOT superior es alimentado a la entrada del NOT
inferior, el cual por la acción inversora del NOT es convertido a un "0", que es
precisamente el valor que estamos suponiendo para Q'. Aquí no hay incompatibilidad
alguna. Y el "0" que posee la salida Q' en el NOT inferior es alimentado a la entrada del
NOT superior, el cual por la acción inversora del NOT es convertido a un "1", que es
precisamente el valor que estamos suponiendo para Q. No habiendo incompatibilidad
alguna, aceptamos el hecho de que este es un estado posible y estable.
Pero la combinación Q=1 y Q'=0 no es la única combinación estable para este circuito.
Existe otra combinación, la combinación de salidas Q=0 y Q'=1:
la cual también podemos comprobar que también es una configuración estable.
Esto nos conduce a un dilema. Si tenemos dos estados estables, igualmente posibles,
tomando en cuenta que el circuito lógico no tiene entrada alguna sobre la cual podamos
ejercitar algún control a nuestra discreción, ¿cuál de los dos estados tomará el circuito al
encenderse la configuración con la aplicación de energía eléctrica?
5
La difícil realidad es que, como ambos estados son igualmente posibles, el estado en que
podrá caer este circuito al aplicar energía eléctrica es completamente una cuestión de azar.
Una vez que se encienda el circuito, podemos encontrarnos con cualquiera de los dos
estados, esto es algo que está completamente fuera de nuestro control. Y peor aún, entre
estos dos estados existe un tercer estado, conocido como estado meta-estable, en el cual las
salidas dejan de ser "0" ó "1" para quedar atoradas en un limbo. Este circuito formado por
dos NOTs ciertamente posee memoria, pero su comportamiento azaroso lo vuelve inútil
para una aplicación práctica que no sea la de construir una máquina electrónica de juegos
de azar. Sin embargo, el circuito nos da una pista sobre cómo utilizando funciones lógicas
más elaboradas que el NOT, tales como bloques NAND o bloques NOR, podemos construir
circuitos lógicos con memoria sobre los cuales podamos tener algún tipo de control.
Usando como base tales propiedades, apareció en el mercado por vez primera un elemento
básico de memoria conocido como el flip-flop latch R-S, el cual frecuentemente se
representa como una "caja negra" cuyos detalles interiores están ocultos de la vista de los
técnicos que atienden sistemas construidos con circuitos lógicos:
Como podemos ver en su representación esquemática, el flip-flop R-S es un bloque
fundamental que consta de dos terminales de entrada, la terminal de "ajuste" S (set) y la
terminal de "reajuste" R (reset); así como dos terminales de salida Q y Q', las cuales, como
su notación lo indica, son complementarias, son el inverso la una de la otra. La palabra
combinada "flip-flop" viene del inglés empezando con la palabra flip que es utilizada
cuando se usa un interruptor de encendido para prender algo como las luces de la sala de la
casa, situación en la que se acostumbra decir "flip the switch", mientras que la palabra flop,
derivada de la palabra flip, tiene una intención opuesta, usándose cuando se va a apagar
algo a través del mismo interruptor de encendido.
Las características del flip-flop R-S son las siguientes, suponiendo que al empezar ambas
entradas R y S estaban siendo alimentadas con un cero (0) lógico:
(1) Cuando S=1 y R=0; o sea, al poner un 1 en la terminal de entrada S, el flip-flop R-S
entra en el estado Q=1 independientemente del valor que Q haya tenido
anteriormente. La salida Q' a su vez adquirirá el valor Q' =0.
(2) Cuando S=0 y R=1; o sea, al poner un 1 en la terminal de entrada R, el flip-flop
R-S entra en el estado Q=0 independientemente del valor que Q haya tenido
anteriormente. La salida Q' a su vez adquirirá el valor Q' =1. En lenguaje vulgar, se
dice que el flip-flop R-S es reseteado.
6
Dependiendo de los elementos usados para construir el flip-flop R-S, éste tendrá
una combinación de valores S y R con la cual mientras haya suministro de energía
retendrá por tiempo indefinido la información que le fue colocada anteriormente.
Desgraciadamente, tendrá también otra combinación de valores que lo colocarán en
un estado no-definido en el cual las salidas Q y Q' dejarán de ser complementarias.
Esta combinación de valores debe evitarse a toda costa.
Este elemento, como todos los demás bloques fundamentales en los circuitos
lógicos, se puede construir empleando funciones lógicas básicas. En general, el flip-
flop R-S se construye empleando ya sea funciones NAND o funciones NOR.
Una forma de analizar el comportamiento "interno" del flip-flop R-S cuando es
construido a partir de funciones lógicas básicas es considerar para cada
combinación de unos y ceros a la entrada todas las combinaciones posibles de unos
y ceros a la salida, eliminando sistemáticamente las combinaciones de unos y ceros
que no sean compatibles. Este método resulta algo laborioso.
La forma más efectiva de analizar un flip-flop R-S es obteniendo las salidas Q y Q'
en función de las entradas R y S utilizando álgebra Booleana.
El flip-flop R-S, capaz de almacenar un "bit" de información, se puede utilizar a su
vez como bloque básico para construir memorias más complejas tales como la
Memoria de Acceso al Azar (Random Access Memory o RAM).
El flip-flop R-S, el elemento de memoria fundamental construido con funciones
lógicas básicas, es también conocido como un multivibrador biestable por tener
dos estados estables (Q=0 y Q=1).
También es posible tener un multivibrador monoestable; esto es, con un estado
estable y un estado inestable. Este tipo de multivibrador es también conocido en la
literatura técnica de habla inglesa como one-shot (un "disparo", posiblemente en
alusión a la acción que se lleva a cabo cuando se jala el gatillo de una pistola).
Igualmente posible es la existencia de un multivibrador astable, esto es, con dos
estados inestables (Q=0 y Q=1), lo cual implica que actuará como un oscilador.
A continuación se muestra un diagrama de tiempos que ejemplifica el
comportamiento de los tres tipos de multivibradores:
7
En el diagrama superior correspondiente al inciso (a) que muestra el
comportamiento de un multivibrador astable (astable multivibrator) se puede ver
que este tipo de multivibrador no precisa de ninguna señal a su entrada (input), y de
hecho este tipo de circuito no tiene terminal de entrada alguna. Su salida estará
oscilando todo el tiempo entre el nivel de voltaje positivo (+Vout) y el nivel de
voltaje negativo (-Vout) produciendo una forma de onda cuadrada. (Podemos tomar
+Vout como un "1" lógico y -Vout como un "0" lógico.)
En el diagrama intermedio correspondiente al inciso (b) que muestra el
comportamiento de un multivibrador monoestable (monostable multivibrator) se
puede ver que la acción de "disparo" a la salida es iniciada por un brevísimo pulso
de voltaje aplicado a la entrada en un tiempo t1. Inmediatamente, a la salida, el
voltaje cambia de polaridad por un período prefijado de tiempo, después de lo cual
la salida regresa a su valor original de voltaje. Este tipo de circuito tiene una sola
terminal de entrada, la terminal de "gatillo" (trigger) que se usa para "disparar" la
acción del circuito.
Y por último, en el diagrama final correspondiente al inciso (c) que muestra el
comportamiento de un multivibrador biestable (bistable multivibrator) se puede ver
que el circuito tiene dos estados estables. Para hacerlo cambiar de estado, aplicamos
un pulso brevísimo de voltaje a una de las dos entradas (la cual podemos suponer
como la entrada S de un flip-flop R-S) en un tiempo t1, con lo cual el circuito
permanecerá en dicho estado por tiempo indefinido (segundos, minutos, horas, días,
meses, años). Si queremos que el circuito regrese a su estado anterior, tenemos que
aplicar un pulso brevísimo de voltaje en la otra terminal de entrada (la cual podemos
suponer como la entrada R de un flip-flop R-S) en un tiempo t2, con lo cual el
circuito volverá a su estado anterior, permaneciendo en dicho estado por tiempo
indefinido hasta que no se aplique nuevamente un pulso en la terminal de entrada
correspondiente para llevar a cabo tal acción.
8
Si lo deseamos, podemos construir con relativa facilidad cualquiera de los tres tipos
de multivibradores con componentes que podemos obtener comercialmente en el
mercado. Por ejemplo, si queremos construir un multivibrador monoestable, lo
podemos hacer con el circuito integrado 74121 cuyo diagrama funcional interno es
el siguiente:
Para construir el multivibrador monoestable, necesitamos proveerle al circuito
integrado unos componentes adicionales, tales como la resistencia R y el capacitor
C cuya constante de tiempo RC fijará la duración del pulso de salida. El diagrama
completo de un monoestable tal es el siguiente:
En este caso, la resistencia R tiene un valor de 10K (10 mil ohms) y el condensador
tiene un valor de 2 uf (2 microfarads), lo cual le fijará al pulso de salida una
9
duración de 0.066 segundos con un comportamiento mostrado por el siguiente
diagrama de tiempos.
Además del circuito integrado 74121, podemos utilizar otro circuito integrado
extremadamente versátil, el cual, pese a que tiene ya varias décadas de haber sido
introducido, sigue resonando aún por su enorme flexibilidad y bajo costo, el timer
555.
PROBLEMA: Analizar el siguiente circuito. Supóngase que la entrada A y la
salida son inicialmente cero. Sugiérase también una forma de "limpiar el registro"
(regresar la salida a su valor original de "cero")
Cuando la entrada A y la salida son inicialmente “cero” (“0”), el bloque OR está
alimentado con dos ceros, produciendo la salida de cero.
Cuando activamos la entrada con un valor de A=1, el bloque OR producirá una
salida de “1”, lo cual pondrá una entrada de “1” en el mismo bloque OR compatible
con la salida de “1”.
Al volver a tomar la entrada A su valor de cero, el “1” a la entrada del OR
producido por su salida mantendrá la salida del OR en el estado “1”. Esto es,
cuando A toma el valor de “1”, la salida toma también el valor de “1” y permanece
en ese estado por tiempo indefinido aun cuando A regrese a su valor original de “0”.
Este ejemplo demuestra una característica interesante e importante que juega la
10
retroalimentación (feedback) en los circuitos lógicos. La retroalimentación
proporciona memoria a los circuitos lógicos.
Un diagrama de tiempos característico del comportamiento del circuito sería como
el siguiente:
Una forma de “limpiar el registro” (esto es, borrar la memoria) es añadiendo unos
componentes de la siguiente manera:
Cuando no hay ninguna señal en R (o sea, cuando la entrada en la terminal R es
R=0), por la acción del NOT inversor el bloque AND conectará directamente la
salida del bloque OR a la entrada del mismo y no tendrá efecto alguno en el
diagrama de tiempos del circuito previo. Este circuito se comportará exactamente
como el circuito anterior.
Sin embargo, cuando se aplica una entrada de “1” a R, la compuerta AND
interrumpirá la alimentación de la salida del OR a la entrada del mismo, “borrando”
la memoria si es que la salida era “1” y la terminal S tenía el valor de “0”. En el
caso de que R permanezca activada con un “1”, la salida tomará directamente el
valor de S.
Obsérvese que arriba se llevó a cabo un ligero cambio en la notación de las
terminales de entrada del circuito. A la entrada que lo puede “ajustar” con una
salida de “1” se le ha designado con la letra S, una abreviatura de la palabra inglesa
Set que significa precisamente “ajuste”, mientras que a la terminal con la cual se
puede “reajustar” el circuito “limpiando” el registro previo se le ha designado con la
letra R, una abreviatura de la palabra inglesa Reset que significa precisamente
“reajuste”. Esto se ha hecho para ir adecuando nuestra notación con la notación
utilizada en la mayoría de la literatura técnica.
Un diagrama de tiempos ilustrando todas las situaciones posibles se muestra a
continuación:
11
La función de “limpieza de registro” es indispensable en una configuración de
circuitos lógicos para borrar información previa y poder procesar información
nueva.
PROBLEMA: El Flip-Flop R-S (latch). Analizar el siguiente circuito
considerando todas las 16 combinaciones posibles de unos y ceros (cuatro a la
entrada y cuatro a la salida) descartando aquellos estados que resulten
incompatibles. Asimismo, construir una Tabla de Verdad lo más simplificada
posible para dicho circuito.
El análisis se llevará a cabo haciendo un diagrama independiente para cada una de
las combinaciones posibles, trazando el flujo de los valores binarios y observando la
compatibilidad de los mismos para cada combinación de valores. Empezaremos con
la primera combinación en la cual supondremos que tanto las dos entradas R y S
como las dos salidas Q y Q’ tienen valores de cero:
R=0, S=0, Q=0, Q’=0:
12
El 0 que suponemos a la salida del NAND superior alimenta con dicho 0 una de las
entradas del NAND inferior, el cual junto con el 0 que está siendo puesto en la
terminal S producirá un 1 a la salida Q’ del NAND inferior. Este 1 es incompatible
con el valor de 0 que estamos asumiendo para Q’. Por otro lado, el 0 que
suponemos a la salida del NAND inferior alimenta con dicho 0 una de las entradas
del NAND superior, el cual junto con el 0 que está siendo puesto en la terminal R
producirá un 1 a la salida Q del NAND superior. Este 1 es incompatible con el valor
de 0 que estamos asumiendo para Q. Por lo tanto, se descarta por completo esta
combinación de valores por no ser una combinación válida.
R=0, S=0, Q=0, Q’=1:
En este caso, de nueva cuenta el 0 que suponemos a la salida del NAND superior
alimenta con dicho 0 una de las entradas del NAND inferior, el cual junto con el 0
que está siendo puesto en la terminal S producirá un 1 a la salida Q' del NAND
inferior. Este 1 sí es compatible con el valor de 1 que estamos asumiendo para Q'.
Sin embargo, por otro lado, el 1 que suponemos a la salida del NAND inferior que
alimenta con dicho 1 una de las entradas del NAND superior, junto con el 0 que está
siendo puesto en la terminal R producirá un 1 a la salida Q del NAND superior.
Este 1 es incompatible con el valor de 0 que estamos asumiendo para Q. Por lo
tanto, también se descarta esta combinación de valores por no ser una combinación
válida.
R=0, S=0, Q=1, Q’=0:
13
Podemos ver que este caso es similar al caso anterior, lo cual era anticipable por la
simetría de la figura.
R=0, S=0, Q=1, Q’=1:
Al seguir el flujo de todas las señales con los valores supuestos, encontramos que en
este caso los valores sí son compatibles. Por lo tanto, podemos hacer la siguiente
Tabla de Verdad para los mismos:
R=1, S=0, Q=0, Q’=0:
Nuevamente, encontramos otra situación en la que la combinación de valores no es
compatible, razón por la cual se descarta esta posibilidad.
14
R=1, S=0, Q=1, Q’=0:
Esta combinación de valores también se descarta por no ser una combinación
compatible.
R=1, S=0, Q=0, Q’=1:
Los valores en este caso sí son compatibles, y por lo tanto podemos hacer una Tabla
de Verdad para los mismos:
R=1, S=0, Q=1, Q’=1:
15
Esta es una combinación de valores que no es compatible, y por lo tanto se descarta.
R=0, S=1:
Antes de proseguir, para ahorrarnos trabajo podemos explotar a nuestro favor una
simetría. Puesto que el circuito es simétrico en el sentido de que si tomamos lo
volteamos por completo de arriba abajo tendremos en esencia lo mismo, al tratar los
cuatro casos correspondientes a los valores de entrada R=0 y S=1 también estamos
cubriendo los cuatro casos correspondientes a los valores de entrada R=1 y S=0 con
la simple inversión de los elementos de arriba hacia abajo. En base a la simetría y
los resultados obtenidos previamente, podemos afirmar que el único conjunto de
valores compatibles para R=0 y S=1 es Q=1 y Q’=0, lo cual podemos resumir en la
siguiente tabla de verdad:
Podemos proseguir con las combinaciones de valores faltantes:
R=1, S=1, Q=0, Q’=0:
Esta combinación de valores se descarta por ser totalmente incompatible.
R=1, S=1, Q=0, Q’=1:
En este caso la combinación de valores sí es compatible, y su Tabla de Verdad es:
16
R=1, S=1, Q=1, Q’=0:
Los valores en este caso también son compatibles, y su correspondiente Tabla de
Verdad será:
Falta ya tan sólo una combinación posible de valores por checar. Es la siguiente:
R=1, S=1, Q=1, Q’=1:
Así, la última combinación posible de valores que nos faltaba por checar resulta ser
totalmente incompatible, razón por la cual también se descarta.
Podemos juntar ahora todas las Tablas de Verdad para este circuito en una sola:
17
Para simplificar esta Tabla de Verdad, como primera observación se nota que el
único caso en el cual los valores de Q y Q' no son complementarios es R=0 y S=0.
En la terminología técnica empleada en el estudio de los circuitos lógicos, este es un
estado es conocido como un estado no-definido. Con esto en mente, y agrupando
las salidas similares por razones que pronto quedarán claras, la Tabla de Verdad
toma el siguiente aspecto:
Analizando esta Tabla de Verdad, encontramos algunos detalles interesantes. Si las
entradas toman los valores R=1 y S=0, las salidas tomarán los valores Q=0 y Q’=1.
Y si las entradas cambian a los valores R=0 y S=1, las salidas cambiarán a los
valores Q=1 y Q’=0. Esto es, cuando las entradas son complementarias, Q toma el
valor de S.
Al tomar las entradas los valores R=1 y S=1; existen dos salidas complementarias
válidas. Esto indica que al tomar ambas R y S el valor de 1, se retendrán a la salida
los valores de la condición previa, esto es, el circuito "recordará" su estado
anterior. Por ejemplo, si la entrada tiene los valores R=1 y S=0, la salida tomará
los valores Q=0 y Q’=1. Al tomar la entrada los valores R=1 y S=1, la salida
seguirá reteniendo los mismos valores Q=0 y Q’=1. La única manera de invertir la
salida Q es aplicando la condición R=0 y S=1. Después de aplicar dicha condición,
el circuito mantendrá la salida de Q=1 y Q’=0 al aplicársele la condición R=1 y
S=1.
Puesto que en el estado R=1 y S=1 las salidas pueden tomar dos valores que
siempre serán complementarios, podemos simplificar aún más la Tabla de Verdad:
18
Esta Tabla nos quiere decir que para la condición R=1 y S=1, si Q toma el valor de
1 entonces Q’ tomará el valor de 0 o bien, si Q toma el valor de 0 entonces Q’
tomará el valor 1.
Nótese que cuando R y S son complementarios, el valor de S es igual al valor de Q
y el valor de R es igual al valor de Q’. Tomando esto en consideración, se
acostumbra invertir de la siguiente manera las terminales de entrada para que estén
de acuerdo con el orden en la figura de los valores que toman las terminales de
salida:
Frecuentemente, este circuito se encierra en una “caja negra” representándosele de
la siguiente forma:
Este bloque se conoce comúnmente como el Flip-Flop R-S, aunque también se le
conoce ampliamente como un R-S latch, y desempeña un papel importante en los
circuitos lógicos.
El comportamiento de un flip-flop R-S (y de hecho el comportamiento de cualquier
circuito lógico secuencial capaz de pasar de un estado estable a otro) puede ser
19
descrito con un diagrama de tiempos como el siguiente, en el cual el paso del
tiempo ocurre de izquierda a derecha:
En este diagrama de tiempos, al principio de la “acción” ambas terminales de
entrada S y R están puestas a un valor de “1” lógico, mientras que se supone que la
salida Q se encuentra en un estado estable de “0”. Como podemos ver, la terminal R
recibe un descenso de “1” a “0” seguida de un ascenso que la regresa a su valor de
“1”, pero esto no produce efecto alguno en la salida puesto que para ello es la
terminal S la que tiene que ser activada. Esto es precisamente lo que se lleva a cabo
a continuación, y podemos ver que al caer S de “1” a “0” la salida Q cambia de
inmediato de “0” a “1”. Tras esto, la terminal S es llevada de “0” a “1”, y
nuevamente se le aplica otro descenso, pero en esta ocasión ya no tiene efecto
alguno sobre la salida Q, su efecto ya se dejó sentir anteriormente. Por último, con
la salida Q ajustada a “1”, la terminal R es llevada de “1” a “0”, y en esta ocasión si
produce un efecto inmediato, “reajustándose” la salida de Q a un valor de “0”. Este
diagrama de tiempos resume prácticamente todas las condiciones posibles que
describen el comportamiento del circuito, como debe hacerlo un buen diagrama de
tiempos.
Podemos construir un flip-flop con bloques NAND como el que se mostró en el
análisis previo, o podemos procurarlo ya construido en un componente como el
circuito integrado 4044, el cual incluye cuatro flip-flops NAND por el precio de uno
solo: