sábado, 27 de noviembre de 2010

Diferencia entre los tipos de Flip-Flop y Latch

Diferencia entre los tipos de fl¡p-flop y latch
Latches y Flip-flops
Los dos tipos de memoria comúnmente utilizados en los circuitos de conmutación son los latches y los flip-flops.
         Un latch es un elemento de memoria cuyas señales de entrada de excitación controlan el estado del dispositivo.
         Un flip-flop difiere de un latch por el hecho de que tiene una señal de control llamada reloj. La señal de reloj emite una instrucción al flip-flop permitiéndole cambiar de estado de acuerdo con las señales de entrada de excitación. En los latches y los flip-flops, el siguiente estado queda determinado por las entradas de excitación.
         Un latch cambia de estado de inmediato, según sus señales de excitación  de entrada, mientras que un flip-flop espera la señal de su reloj antes de cambiar de estado.

Latch SR
El más simple latch lógico es el SR, donde R y S permanecen en estado 'reset' y 'set'. El latch es construido mediante la interconexión retroalimentada de puertas lógicas NOR, o bien de puertas lógicas NAND.
El funcionamiento del latch es el siguiente:
         La entrada R activa (1) realiza un RESET del latch (pone la salida a 0).
         La entrada S activa (1) realiza un SET del latch (pone la salida a 1 ).
         Si las entradas están desactivadas (R=0 y S=0) la salida del latch no cambia
         Si se activan las dos entradas (R=1 y S=1) el circuito no funciona correctamente

Fig. 1 Símbolo y diagrama lógico del latch R-S



Entradas de
 excitación
Estado
actual
Estado
siguiente
S
R
Q
Q
Q*
0
0
Ningún cambio
0
1
0
1
0  Reset
1
0
1
0
1  Set
1
1
X  No permitido


Latch R-S con entrada de habilitación
El diagrama lógico de un latch con entrada de habilitación se muestra en la Figura 2. Las entradas S y R controlan el estado al que va a cambiar el latch cuando se aplica un ‘1’ en la entrada de habitación (E, enable). El latch no cambiará de estado hasta que la entrada E esté a nivel alto. Esta tercera entrada (E) permite habilitar o inhibir las acciones del resto de entradas.

Fig. 2. Diagrama y tabla característica del latch R-S

Latch D con entrada de habilitación
Existe otro tipo de latch con entrada de habilitación que se denomina latch D. Se diferencia del latch S-R en que sólo tiene una entrada (D), además de la de habilitación (E).
Cuando la habilitación (E) está activa la salida Q toma el valor de la entrada D, y cuando está desactiva, la salida permanece en su estado anterior. Este dispositivo también es conocido como báscula D transparente y se emplea para almacenar un bit de información.

Fig. 3. Diagrama y tabla característica del latch D

Flip-Flop
El flip-flop es un circuito lógico biestable, es decir posee dos estados estables, denominados SET (1 o activación) y RESET (0 o desactivación).  Los flip-flops se implementan con puertas lógicas y son los bloques básicos de construcción de contadores, registros y otros circuitos de control secuencial. También se emplean en ciertos tipos de memorias.
Flip-Flop maestro-esclavo
Un flip-flop maestro-esclavo se construye con dos FF, uno sirve de maestro y otro de esclavo. Durante la subida del pulso de reloj se habilita el maestro y se deshabilita el esclavo. La información de entrada es transmitida hacia el FF maestro.  Cuando el pulso baja nuevamente a cero se deshabilita el maestro lo cual evita que lo afecten las entradas externas y se habilita el esclavo. Entonces el esclavo pasa al el mismo estado del maestro. El comportamiento del flip-flop maestro-esclavo hace que los cambios de estado coincidan con la transición del flanco negativo del pulso.

 
Flip-Flop disparado por flanco
Otro tipo de FF que sincroniza el cambio de estado durante la transición del pulso de reloj es el flip flop disparado por flanco. Cuando la entrada de reloj excede un nivel de umbral específico, las entradas son aseguradas y el FF no se ve afectado por cambios adicionales en las entradas hasta tanto el pulso de reloj no llegue a cero y se presente otro pulso.
Algunos FF cambian de estado en la subida del pulso de reloj, y otros en el flanco de bajada. Los primeros se denominaran Flip flop disparados por flanco positivo y los segundos Flip flops disparados por flanco negativo. La distinción entre unos y otros se indicará con la presencia o ausencia de una negación en la entrada de reloj como se muestra en la figura 5.

 Fig. 5. Flip-Flop disparado por flanco

Flip Flop tipo S-R
La operación del FF S-R disparado por flanco es similar a la operación analizada anteriormente, el cambio de estado se efectúa en el flanco ascendente del pulso de reloj. El estado S=R=1 sigue siendo un estado prohibido.
La tabla resume el comportamiento del FF tipo S-R disparado por flanco positivo.

 Fig. 6. Tabla característica y diagrama de tiempos del Flip-Flop  S-R

Flip Flop tipo J K
La operación de un FF tipo J K es muy similar a la de un FF S-R. La entrada J es la equivalente a la entrada S de un flip-flop R-S y la entrada K, al equivalente a la entrada R. La única diferencia es que no tiene un estado invalido. Para la condición J=K=1 el FF complementa el estado presente.
La tabla característica de la tabla 7 resume el comportamiento del FF tipo J K disparado por flanco positivo.

 Fig. 7. Tabla característica del FF Jk

Flip Flop tipo D
Su comportamiento es similar al del latch D descrito con anterioridad, la salida del flipflop tipo D se igualará a la entrada en el instante en el que se produzca el flanco ascendente o descendente de la señal de reloj (CLK).

 Fig. 8. Tabla característica del FF tipo D

Flip Flop tipo T
Solo posee una entrada además de la del reloj. Se le denomina “trigger o toggle, disparador o alternancia". La función de este dispositivo consiste en cambiar (alternar) su estado con cada transición en sentido negativo de su señal de entrada de exitación.  Si hay un 0 en la entrada T, cuando se aplica el pulso de reloj la salida mantiene el valor del estado presente. Si hay un 1 se complementa

 Fig. 9. Tabla característica del FF tipo T

En general

Los circuitos latch se utilizan principalmente en situaciones en las que los datos se capturan desde lineas de señal y se guardan. El latch SR simple captura pulsos aleatorios en sus entradas S y R, pues cada pulso establece o reestablece el estado del latch. Los latches SR y D con compuertas cambian de estado solo durante los instantes en que está habilitado el latch. Por tanto los latches se utilizan para capturar datos que llegan y se estabilizan antes del final de un pulso de activación.
Los flip-flops se utilizan principalmente para diseños de circuitos secuenciales en donde todos los cambios de estado deben sincronizarse con las transiciones de una señal de reloj. La mayor parte de estos circuitos utilizan flip-flops JK o D, según cual de ellos necesite el menor numero de compuertas para obtener las entradas de excitación para el diseño dado. Los flip-flop SR se utilizan poco, ya que los flip-flops JK proporcionan los mismos modos de operación y añaden el modo de alternancia, lo que elimina el problema de evitar la condición S = R = 1. los flip-flops T se utilizan principalmente en el diseño de contadores.



Analisis y diseño de circuitos lógicos digitales, Victor P. Nelson

viernes, 26 de noviembre de 2010

contador sincrono (Mota )

Contador
Un contador es un circuito secuencial construido a partir de  puertas lógicas capaz de realizar el cómputo de los impulsos que recibe en la entrada destinada a tal efecto, almacenar datos o actuar como divisor de frecuencia. El cómputo se realiza en un código binario.
Clasificación de los contadores
-Según la forma en que conmutan.
-Según el sentido de la cuenta, se distinguen en ascendentes, descendentes  (UP-DOWN).
-Según la cantidad de números que pueden contar, se puede hablar de contadores binarios  

Contador sincrono

Esto se refiere a los eventos  que tienen una relacion temporal fija entre si , esto quiere decir que todos los flip-flops del contador reciben en el mismo instante la señal del reloj.
Contador binario sincrono de 2 bits
En CLK1, Qo=1 y Q1=0 esto corresponde al estado binario 1, cuando se produce el flanco de CLK2, FF0 y Qo se pone a nivel bajo  puesto que el FF1 tiene un nivel alto  en sus entradas J1 Y K1  durante el flanco de disparo del impulso de reloj , el FF Q1 pasa a un nivel alto.
Después en CLK2, Qo=0 Y Q1=1 esto corresponde  al estado binario 2, cuando CLK3  el estado SET (Qo=1) y FF1 permanece en estado SET (Q1=1), ya que sus entradas  J1 Y K1 están ambas a nivel bajo (Qo=0). Tras este flanco de disparo, Qo=1 y Q1=1 esto corresponde al estado binario 3.

Aunque los retardos son un factor importante en el funcionamiento  de un contador síncrono  se suele omitir para simplificar los diagramas de tiempos , si no se muestran los pequeños retardos y las diferencias de temporización se puede conseguir relacionar mejor las señales resultantes de un circuito lógico.


Contador síncrono binario de 3 bits 
Qo cambia  en cada impulso  de reloj a medida que el contador avanza desde su estado original hasta el estado final.
Q1 pasa al estado contrario cada vez que Qo está a 1 esto se produce en CLK2,CLK6, el impulso en CLK8 hace que el contador inicie un nuevo ciclo, para conseguir este modo  de operación  se conecta  Qo  a las entradas  J1 y K1 de FF1.
Cuando Qo está a 1 se produce un impulso de reloj, FF1 cambia de estado, el resto de las veces cuando Qo es 0, FF1 está en modo de no cambio, quedando en su estado actual.
Q2 cambiara de estado, debe cumplirse  la única condición de que tanto Qo como Q1 estén a nivel  alto, esta condición se detecta mediante la puerta AND cuya salida se aplica a las entradas J1 y K1  de FF2, siempre que Qo y Q1 están en nivel alto  la salida  de la puerta  AND hace que las entradas J1 Y K1 de FF2 se pongan a novel alto.
Contador síncrono binario de 4 bits
Este contador  se implementa son flip-flops disparados por flanco negativo, para controlar  las entradas J y K de los tres FF  es el mismo que el del contador de 3 bits , la cuarta etapa  FF3 varia solo dos veces en la secuencia.

Qo, Q1, Q2 están  a nivel alto esta condición se decodifica  mediante la puerta AND G2 de forma que cuando se produce un impulso de reloj  FF3 cambia de estado, en los demás casos  las entradas J3 y K3 de FF3 están a nivel bajo y produce la condición de no cambio.

Circuito integrado  contador binario síncrono  de 4 bits
El 74HC13 es un ejemplo  de un circuito integrado contador binario síncrono de 4 bits, el simbolo logico se muestra en la siguiente figura.


El  contador puede reinicializarse  de forma síncrona en cualquier numero binario de 4 bits, cuando se aplica un nivel bajo a la entrada  LOAD el contador asumirá el estado de las entradas de datos en el siguiente impulso de reloj , hay una entrada de borrado activa a nivel bajo (CLR) que pone a cero de forma síncrona los 4 FF del contador , tiene dos entradas de habilitación ENP y ENT , estas entradas debe estar a nivel alto.
El contador de décadas de BCD  síncrono
Síncrono el 74HC160 tiene las mismas  entradas y salidas que el contador binario  74HC13  pero inicializando con cualquier numero BCD utilizando  las entradas de dato con las entrada LOAD  a nivel bajo  y un CLR pone en estado de RESET.

Contador síncrono ascendente/descendente
Un contador  ascendente/descendente es aquel capaz de progresar en cualquier dirección a lo largo de una cierta secuencia, también se le denomina contador bidireccional puede tener cualquier secuencia de estados especificada, un contador binario  de 3 bits  que avanza en  modo ascendente a través de la secuencia (0,1,2,3,4,5,6,7) y que luego puede invertirse para recorrer la secuencia en sentido contrario  (7,6,5,4,3,2,1,0).


Diseño de un contador sincrono
1- Diagrama de estados :
   Se describe el contador mediante un diagrama de estado que muestra la progresion de estados por los que el contador avanza cuando se aplica una señal de reloj.


2- Tabla del estado siguiente:
  Se obtiene una tabla del estado siguiente que enumera  cada estado del contador junto con el correspondiente  estado siguiente, el estado siguiente es el estado al que el contador  pasa desde su estado actual, al aplicar un impulso reloj.

3- Tabla de  transiciones de los FF:
  Se enumeran todas las posibles transiciones de salida, para cada transición de salida se indican las entradas  J y K que dan lugar a la transición la X indican condiciones indiferentes (la entrada puede ser un 1 o 0)
 -Transición 0=> 0 el estado presente del flip-flops es cero y debe permanecer en cero cuando se aplica una entrada de reloj, , esto sucede cuando J=K=0 ( condición de no cambio), o cuando J=0 y K = 1 (condición de borrado). De este modo J tiene que ser 0, pero K puede tener cualquier nivel.
-Transición 0 =>1 este estado presente es 0 y cambia a 1, esto pasa cuando J=1 y K= 0 ( condición de establecimiento) o cuando J =K = 1 (condición de cambio de estado).
- Transición de 1=>0, el estado presente es 1 y debe cambar a 0. esto puede ocurrir cuando J = 0 y K = 1 o J=K=1.
-Transición 1=>1, el estado presente es 1 y permanecerá en 1. esto ocurre cuando J=K=0 o J=1 y K = 0 así, K debe ser cero mientras J puede estar en cualquiera de estos niveles.

4- Mapas de Karnaugh:

                                            
                                                J=Q(N+1)                   K=Q(N+1)'


5- Expresiones lógicas para las entradas de los FF:

Se obtienen de los mapas de Karnaugh las siguientes expresiones para las entradas J y K de cada FF.
               J=Q(N+1)  y    K=Q(N+1)'




Exposicion

Registros de Desplazamiento
Introducción




Los registros están formados por un conjunto de flip-flops los cuales permiten almacenar y transferir datos dentro de un sistema digital, los registros no tienen una secuencia de estados especificas en comparación con un contador, solo en aplicaciones muy especializadas. Un registro se utiliza para solo para almacenas y desplazar datos “1s y 0s”.
Registro
 
Circuito digital con dos funciones básicas: almacenamiento de datos y movimiento de datos.  La capacidad de almacenamiento de un registro le convierte en un dispositivo de memoria.
Registro de desplazamiento
 
La capacidad de almacenamiento de un registro es el numero total de bits de un dato digital que puede contener. Cada etapa de un registro de desplazamiento representa un bit de su capacidad de almacenamiento, por lo tanto el numero de etapas de un registro determina su capacidad de almacenamiento, es decir el numero de etapas de un registro determina su capacidad de almacenamiento.

Los registros con entradas y salidas series aceptan datos en serie, es decir, un bit cada vez por una única línea  donde la salida también es entregada a la salida en forma de serie.
En la siguiente figura se muestra un dispositivo de 4 bits implementado con flip-flops D. con cuatro etapas el cual puede almacenar hasta cuatro bits de datos.

Se  introducen cuatro bits, 1010 con cuatro etapas de flip-flop D

Obtener los estados del registro de 5 bits de la siguiente figura para las señales de entrada de datos 11010.
Registro de desplazamiento con entrada serie/salda paralelo
 
Registro de desplazamiento con entrada paralelo/salido serie

En este tipo de registro los bits de datos se introducen en serie empezando con el bit que este mas a la derecha. Una vez que los datos se han almacenado, cada bit se representa en su respectiva línea de salida, estando disponibles todos los bits simultáneamente.
Determina los estados del registro de 4 bits para la señal de entrada de datos y de reloj de la siguiente figura, inicialmente el registro es todos unos.
Solución.
    Después de cuatro impulsos de reloj, el registro esta en el estado 0110
Registro de desplazamiento con entrada paralelo/salido serie
 
En un registro con entrada de datos paralelo, los bits se introducen en sus respectivas etapas a través de líneas paralelo, en la salida se obtienen los datos en serie.

En la siguiente figura se muestra un registro de 4 bits. Tiene cuatro entradas y una entrada SHIFT/LOAD (desplazamiento/carga), que permite cargar en paralelo los cuatro bits de datos en el registro. Cuando esta entrada esta a nivel bajo las entradas G1 a G3 se activan permitiendo que cada bit sea aplicada a la entrada D de su respectivo flip-flop.

Cuando la entrada SHIFT/LOAD esta a nivel alto, las puertas G4 a G6 se activan permitiendo que los bits se desplacen hacia la derecha, pasando de una etapa a la siguiente. Las puertas OR permiten el desplazamiento normal o la introducción de datos en paralelo.
 
Determinar la forma de onda de la salida de datos de un registro de 4 bits 1010, para las formas de onda de entrada paralelo de datos, de reloj y SHIFT/LOAD de la siguiente figura.
Registro de desplazamiento con entrada/salida paralelo
El registro de entrada y salida paralelo aplica ambos métodos. Inmediatamente después de introducir simultáneamente todos los bits de datos, estos aparecen en paralelo en las salidas paralelo.
Registro de desplazamiento bidireccionales
  Bibliografía

Es aquel en que los datos se pueden desplazar a izquierda o a derecha. Se pueden utilizan puertas lógicas  que permitan la transferencia de un bit de datos de una etapa a la siguiente de la izquierda o de la derecha dependiendo del nivel de una línea de control.
Registro bidireccional
 Un nivel alto en la entrada de control RIGHT/LEFT permitirá a los bits de datos que están dentro del registro desplazarse hacia la derecha y un nivel bajo hace que de desplacen a la izquierda.
Determinar el estado del registro de desplazamiento después de cada impulso de reloj para la forma de onda de la entrada de control RIGHT/LEFT