A diferencia de los circuitos Lógicos Combinacionales que cambian de estado dependiendo de las señales reales que se aplican a sus entradas en ese momento, los circuitos Lógicos Secuenciales tienen alguna forma de «Memoria» inherente.
Esto significa que los circuitos de Lógica Secuencial son capaces de tener en cuenta su estado de entrada anterior, así como los actuales, una especie de efecto «antes» y «después» está involucrado con los circuitos secuenciales.
En otras palabras, el estado de salida de un «circuito de Lógica Secuencial» es una función de los siguientes tres estados, la «entrada actual», la «entrada pasada» y/o la «salida pasada». Los circuitos lógicos secuenciales recuerdan estas condiciones y permanecen fijos en su estado actual hasta que la siguiente señal de reloj cambia uno de los estados, lo que confiere a los circuitos lógicos secuenciales «Memoria».
Los circuitos lógicos secuenciales se denominan generalmente como dispositivos de dos estados o biestables que pueden tener su salida o salidas fijadas en uno de los dos estados básicos, un nivel lógico «1» o un nivel lógico «0» y permanecerán «enganchados» (de ahí el nombre de latch) indefinidamente en este estado o condición actual hasta que se aplique algún otro pulso o señal de disparo de entrada que hará que el biestable cambie su estado una vez más.
- Representación de la lógica secuencial
- Clasificación de la Lógica Secuencial
- Bucle de realimentación secuencial
- Flop SR
- El Flip-Flop SR de compuerta NAND
- El flip-flop SR básico
- El estado de Set
- Estado de Restablecimiento
- Tabla de la verdad para esta función Set-Reset Function
- Diagrama de conmutación del flip-flop S-R
- Bloqueador SR con compuerta NAND positiva
- El flip-flop NOR Gate SR
- Circuitos de rebote de conmutación
- Circuito de rebote del interruptor del flip flop SR
- Cuádruple SR Bistable Latch 74LS279
- Gated or Clocked SR Flip-Flop
- Flip-flop SR regulado
Representación de la lógica secuencial
La palabra «secuencial» significa que las cosas suceden en una «secuencia», una tras otra y en los circuitos de lógica secuencial, la señal de reloj actual determina cuándo sucederán las cosas. Los circuitos lógicos secuenciales simples pueden ser construidos a partir de circuitos biestables estándar como: Flip-flops, Latches y Contadores y que a su vez se pueden hacer simplemente conectando juntos compuertas NAND universales y/o compuertas NOR de una manera combinacional particular para producir el circuito secuencial requerido.
Clasificación de la Lógica Secuencial
Como las compuertas lógicas estándar son los bloques de construcción de los circuitos combinacionales, los latches biestables y los flip-flops son los bloques de construcción básicos de los circuitos de lógica secuencial. Los circuitos lógicos secuenciales pueden construirse para producir simples flip-flops activados por flancos o circuitos secuenciales más complejos como registros de almacenamiento, registros de desplazamiento, dispositivos de memoria o contadores. De cualquier manera, los circuitos lógicos secuenciales se pueden dividir en las siguientes tres categorías principales:
- 1. Impulsados por eventos – circuitos asíncronos que cambian de estado inmediatamente cuando se activan.
- 2. Impulsados por reloj – circuitos síncronos que cambian de estado inmediatamente cuando se activan. Clock Driven – circuitos síncronos que se sincronizan con una señal de reloj específica.
- 3. Pulse Driven – que es una combinación de los dos que responde a pulsos de disparo.
Además de los dos estados lógicos mencionados anteriormente nivel lógico «1» y nivel lógico «0», se introduce un tercer elemento que separa los circuitos lógicos secuenciales de sus homólogos lógicos combinacionales, el TIEMPO. Los circuitos lógicos secuenciales vuelven a su estado estable original una vez reiniciados y se dice que los circuitos secuenciales con bucles o caminos de retroalimentación son de naturaleza «cíclica».
Ahora sabemos que en los circuitos secuenciales los cambios se producen sólo en la aplicación de una señal de reloj lo que los hace sincrónicos, de lo contrario el circuito es asíncrono y depende de una entrada externa. Para retener su estado actual, los circuitos secuenciales dependen de la retroalimentación y esto ocurre cuando una fracción de la salida es retroalimentada a la entrada y esto se demuestra como:
Bucle de realimentación secuencial
Los dos inversores o puertas NOT están conectados en serie con la salida en Q realimentada a la entrada. Desgraciadamente, esta configuración nunca cambia de estado porque la salida siempre será la misma, ya sea un «1» o un «0», está fijada permanentemente. Sin embargo, podemos ver cómo funciona la retroalimentación examinando los componentes lógicos secuenciales más básicos, llamados flip-flop SR.
Flop SR
El flip-flop SR, también conocido como Latch SR, puede considerarse como uno de los circuitos lógicos secuenciales más básicos posibles. Este sencillo flip-flop es básicamente un dispositivo biestable de memoria de un bit que tiene dos entradas, una que «SET» el dispositivo (es decir, la salida = «1»), y está etiquetada como S y otra que «RESET» el dispositivo (es decir, la salida = «0»), etiquetada como R.
La descripción SR significa «Set-Reset». La entrada de reset restablece el flip-flop a su estado original con una salida Q que estará en un nivel lógico «1» o lógico «0» dependiendo de esta condición de set/reset.
Un circuito básico de flip-flop NAND gate SR proporciona retroalimentación desde sus dos salidas de vuelta a sus entradas opuestas y se utiliza comúnmente en los circuitos de memoria para almacenar un solo bit de datos. Entonces el flip-flop SR realmente tiene tres entradas, Set, Reset y su salida actual Q relacionada con su estado actual o historia. El término «Flip-flop» se refiere al funcionamiento real del dispositivo, ya que puede ser «volteado» a un estado lógico de Set o «volteado» de vuelta al estado lógico opuesto de Reset.
El Flip-Flop SR de compuerta NAND
La forma más sencilla de hacer cualquier flip-flop SR básico de un solo bit de set-reset es conectar un par de compuertas NAND de 2 entradas acopladas en cruz como se muestra, para formar un biestable de set-reset también conocido como un Latch de compuerta NAND SR LOW activo, de modo que haya retroalimentación de cada salida a una de las otras entradas de la compuerta NAND. Este dispositivo consta de dos entradas, una llamada Set, S y otra llamada Reset, R con dos salidas correspondientes Q y su inversa o complemento Q (no-Q) como se muestra a continuación.
El flip-flop SR básico
El estado de Set
Considere el circuito mostrado arriba. Si la entrada R está a nivel lógico «0» (R = 0) y la entrada S está a nivel lógico «1» (S = 1), la puerta NAND Y tiene al menos una de sus entradas a nivel lógico «0» por lo tanto, su salida Q debe estar a nivel lógico «1» (principios de la puerta NAND). La salida Q también se retroalimenta a la entrada «A», por lo que ambas entradas de la puerta NAND X están a nivel lógico «1», y por tanto su salida Q debe estar a nivel lógico «0».
De nuevo principios de la puerta NAND. Si la entrada de reset R cambia de estado, y se pone en ALTO a nivel lógico «1» con S permaneciendo en ALTO también a nivel lógico «1», las entradas de la puerta NAND Y son ahora R = «1» y B = «0». Como una de sus entradas sigue estando en el nivel lógico «0», la salida en Q sigue permaneciendo ALTA en el nivel lógico «1» y no hay cambio de estado. Por lo tanto, se dice que el circuito del flip-flop está «Latched» o «Set» con Q = «1» y Q = «0».
Estado de Restablecimiento
En este segundo estado estable, Q está a nivel lógico «0», (no Q = «0») su salida inversa en Q está a nivel lógico «1», (Q = «1»), y viene dada por R = «1» y S = «0». Como la puerta X tiene una de sus entradas a nivel lógico «0», su salida Q debe ser igual al nivel lógico «1» (de nuevo los principios de la puerta NAND). La salida Q se retroalimenta a la entrada «B», por lo que ambas entradas de la puerta NAND Y están a nivel lógico «1», por lo tanto, Q = «0».
Si la entrada establecida, S ahora cambia de estado a lógica «1» con la entrada R permaneciendo a nivel lógico «1», la salida Q todavía permanece BAJA a nivel lógico «0» y no hay cambio de estado. Por lo tanto, el estado «Reset» de los circuitos flip-flop también ha sido enclavado y podemos definir esta acción «set/reset» en la siguiente tabla de verdad.
Tabla de la verdad para esta función Set-Reset Function
State | S | R | Q | Q | Description |
Set | 1 | 0 | 0 | 1 | Set Q » 1 |
1 | 1 | 0 | 1 | no change | |
Reset | 0 | 1 | 1 | 0 | Reset Q » 0 |
1 | 1 | 1 | 0 | no change | |
Invalid | 0 | 0 | 1 | 1 | Invalid Condition |
It can be seen that when both inputs S = «1» and R = «1» the outputs Q and Q can be at either logic level «1» or «0», depending upon the state of the inputs S or R BEFORE this input condition existed. Por lo tanto, la condición de S = R = «1» no cambia el estado de las salidas Q y Q.
Sin embargo, el estado de entrada de S = «0» y R = «0» es una condición indeseable o inválida y debe ser evitada. La condición de S = R = «0» hace que ambas salidas Q y Q estén ALTAS juntas a nivel lógico «1» cuando normalmente querríamos que Q fuera la inversa de Q. El resultado es que el flip-flop pierde el control de Q y Q, y si las dos entradas vuelven a estar en «ALTO» después de esta condición a nivel lógico «1», el flip-flop se vuelve inestable y cambia a un estado de datos desconocido basado en el desequilibrio como se muestra en el siguiente diagrama de conmutación.
Diagrama de conmutación del flip-flop S-R
Este desequilibrio puede hacer que una de las salidas conmute más rápido que la otra, lo que hace que el flip-flop conmutando a un estado u otro que puede no ser el requerido y existirá corrupción de datos. Esta condición inestable se conoce generalmente como su estado metaestable.
Entonces, un simple flip-flop SR de puerta NAND o un latch SR de puerta NAND puede establecerse aplicando una condición lógica «0», (LOW) a su entrada Set y restablecerse de nuevo aplicando entonces un «0» lógico a su entrada Reset. Se dice que el flip-flop SR está en una condición «inválida» (Meta-estable) si tanto las entradas de set como de reset se activan simultáneamente.
Como hemos visto anteriormente, el flip-flop SR de puerta NAND básico requiere entradas lógicas «0» para voltear o cambiar de estado de Q a Q y viceversa. Sin embargo, podemos cambiar este circuito básico de flip-flop a uno que cambie de estado mediante la aplicación de señales de entrada de sentido positivo con la adición de dos puertas NAND adicionales conectadas como inversores a las entradas S y R como se muestra.
Bloqueador SR con compuerta NAND positiva
Además de utilizar compuertas NAND, también es posible construir Flip-flops SR simples de un bit utilizando dos compuertas NOR acopladas en cruz y conectadas en la misma configuración. El circuito funcionará de manera similar al circuito de compuertas NAND anterior, excepto que las entradas son activas ALTAS y la condición de no válido existe cuando sus dos entradas están en el nivel lógico «1», y esto se muestra a continuación.
El flip-flop NOR Gate SR
Circuitos de rebote de conmutación
Los flip-flops activados por el borde requieren una transición de señal agradable y limpia, y un uso práctico de este tipo de circuito de set-reset es como un latch utilizado para ayudar a eliminar el «rebote» mecánico del interruptor. Como su nombre indica, el rebote de los interruptores se produce cuando se accionan los contactos de cualquier interruptor, pulsador o teclado accionados mecánicamente y los contactos internos del interruptor no se cierran completamente de forma limpia, sino que rebotan juntos primero antes de cerrarse (o abrirse) cuando se pulsa el interruptor.
Esto da lugar a una serie de pulsos individuales que pueden ser tan largos como decenas de milisegundos que un sistema o circuito electrónico como un contador digital puede ver como una serie de pulsos lógicos en lugar de un solo pulso largo y comportarse incorrectamente. Por ejemplo, durante este periodo de rebote la tensión de salida puede fluctuar salvajemente y puede registrar múltiples recuentos de entrada en lugar de un único recuento. Entonces los Flip-flops SR set-reset o los circuitos Latch biestables pueden ser utilizados para eliminar este tipo de problemas y esto se demuestra a continuación.
Circuito de rebote del interruptor del flip flop SR
Dependiendo del estado actual de la salida, si los botones de set o reset están presionados la salida cambiará de la manera descrita anteriormente y cualquier entrada adicional no deseada (rebotes) de la acción mecánica del interruptor no tendrá efecto en la salida en Q.
Cuando se pulse el otro botón, el primer contacto hará que el latch cambie de estado, pero cualquier rebote mecánico adicional del interruptor tampoco tendrá efecto. El flip-flop SR puede reiniciarse automáticamente después de un corto período de tiempo, por ejemplo 0,5 segundos, con el fin de registrar cualquier entrada adicional e intencionada de los mismos contactos del interruptor, como las múltiples entradas de la tecla «RETURN» de un teclado.
Los circuitos integrados comúnmente disponibles específicamente para superar el problema del rebote del interruptor son el MAX6816, de entrada simple, el MAX6817, de entrada doble y el MAX6818 de entrada octal. Estos chips contienen los circuitos de flip-flop necesarios para proporcionar una interconexión limpia de los interruptores mecánicos con los sistemas digitales.
Los latches biestables de reajuste también se pueden utilizar como generadores de pulsos monoestables (de un solo disparo) para generar un solo pulso de salida, ya sea alto o bajo, de alguna anchura o período de tiempo especificado para fines de temporización o control. El 74LS279 es un circuito integrado de biestable SR cuádruple, que contiene cuatro biestables individuales de tipo NAND dentro de un único chip, lo que permite construir fácilmente circuitos de rebote de conmutación o de reloj monoestable/estable.
Cuádruple SR Bistable Latch 74LS279
Gated or Clocked SR Flip-Flop
A veces es deseable en los circuitos lógicos secuenciales tener un flip-flop SR biestable que sólo cambia de estado cuando se cumplen ciertas condiciones, independientemente de la condición de las entradas Set o Reset. Conectando una puerta AND de 2 entradas en serie con cada terminal de entrada del flip-flop SR se puede crear un flip-flop SR cerrado. Esta entrada condicional adicional se denomina entrada «Enable» y recibe el prefijo «EN». La adición de esta entrada significa que la salida en Q sólo cambia de estado cuando es ALTA y, por lo tanto, se puede utilizar como una entrada de reloj (CLK) haciéndola sensible al nivel como se muestra a continuación.
Flip-flop SR regulado
Cuando la entrada Enable «EN» está en el nivel lógico «0», las salidas de las dos compuertas AND también están a nivel lógico «0», (principios de la compuerta AND) independientemente de la condición de las dos entradas S y R, enclavando las dos salidas Q y Q en su último estado conocido. Cuando la entrada de habilitación «EN» cambia a nivel lógico «1» el circuito responde como un flip-flop biestable SR normal con las dos puertas AND volviéndose transparentes a las señales de Set y Reset.
Esta entrada de habilitación adicional también puede conectarse a una señal de sincronización de reloj (CLK) añadiendo sincronización de reloj al flip-flop creando lo que a veces se llama un «Flip-flop SR con reloj». Así pues, un flip-flop SR biestable cerrado funciona como un latch biestable estándar, pero las salidas sólo se activan cuando se aplica un «1» lógico a su entrada EN y se desactivan con un «0» lógico.
En el siguiente tutorial sobre Circuitos Lógicos Secuenciales, veremos otro tipo de flip-flop simple disparado por flancos que es muy similar al flip-flop RS llamado flip-flop JK, llamado así por su inventor, Jack Kilby. El flip-flop JK es el más utilizado de todos los diseños de flip-flop ya que se considera un dispositivo universal.