Trabajo Practico Flip-Flops y Circuitos Secuenciales.pdf

10
 Sistemas Digitales y de Comunicaciones 1 Trabajo Práctico Nº5: Flip-Flops y Circuitos Secuenciales. Introducción El Latch (cerrojo) es un tipo de dispositivo de almacenamiento temporal de dos estados (biestable). Básicamente los latches son similares a los Flip-Flops, ya que son dispositivos de dos estados que pueden permanecer en cualquiera de sus dos estados gracias a su capacidad de realimentación, lo que consiste en conectar cada una de sus salidas a la entrada opuesta. El símbolo lógico es: Latch S-R con entrada activa alto. Un ejemplo de aplicación de un Latch  R S   consiste en la eliminación del rebote producido por los contactos de un interruptor mecánico. Cuando el polo de un interruptor choca con el contacto de cierre del interruptor vibra o rebota varias veces hasta que, finalmente, se consigue un contacto firme. Aunque éstos rebotes son mínimos, producen unos picos de tensión que pueden ser inadmisibles en un sistema digital. Se puede utilizar un Latch  R S   para eliminar los efectos de los rebotes del interruptor, como se muestra en la figura. El interruptor se encuentra normalmente en la posición 1, manteniendo la entrada  R  a nivel BAJO y el Latch en estado RESET. Cuando el interruptor pasa a la posición 2,  R  pasa a nivel ALTO debido a la resistencia de pull-up conectada a Vcc y S  pasa a nivel BAJO cuando se  produce el primer contacto. Aunque S  permanece a nivel BAJO durante un breve espacio de tiempo antes de que el interruptor rebote, este tiempo es suficiente para activar (SET) el Latch. Cualquier otro pico de tensión aplicado posteriormente a la entrada S , debido al rebote del interruptor, no va a afectar al Latch, y éste permanecerá en el estado SET. Téngase en cuenta que la salida Q del Latch proporciona una transición limpia del nivel BAJO al nivel ALTO, por lo que se eliminan los picos de tensión causados por el rebote de los contactos. De forma similar, se produce una transición limpia de nivel ALTO a nivel BAJO cuando el interruptor vuelve a la posición 1. El circuito integrado 74LS279 es un cuádruple Latch  R S  . Sistemas Digitales y de Comunicaciones   Año 2003

Transcript of Trabajo Practico Flip-Flops y Circuitos Secuenciales.pdf

  • Sistemas Digitales y de Comunicaciones 1

    Trabajo Prctico N5: Flip-Flops y Circuitos Secuenciales.

    Introduccin

    El Latch (cerrojo) es un tipo de dispositivo de almacenamiento temporal de dos estados

    (biestable). Bsicamente los latches son similares a los Flip-Flops, ya que son dispositivos de

    dos estados que pueden permanecer en cualquiera de sus dos estados gracias a su capacidad de

    realimentacin, lo que consiste en conectar cada una de sus salidas a la entrada opuesta.

    El smbolo lgico es:

    Latch S-R con entrada activa alto.

    Un ejemplo de aplicacin de un Latch RS consiste en la eliminacin del rebote producido por los contactos de un interruptor mecnico. Cuando el polo de un interruptor choca con el contacto

    de cierre del interruptor vibra o rebota varias veces hasta que, finalmente, se consigue un

    contacto firme. Aunque stos rebotes son mnimos, producen unos picos de tensin que pueden

    ser inadmisibles en un sistema digital.

    Se puede utilizar un Latch RS para eliminar los efectos de los rebotes del interruptor, como se muestra en la figura.

    El interruptor se encuentra normalmente en la posicin 1, manteniendo la entrada R a nivel

    BAJO y el Latch en estado RESET. Cuando el interruptor pasa a la posicin 2, R pasa a nivel

    ALTO debido a la resistencia de pull-up conectada a Vcc y S pasa a nivel BAJO cuando se

    produce el primer contacto. Aunque S permanece a nivel BAJO durante un breve espacio de

    tiempo antes de que el interruptor rebote, este tiempo es suficiente para activar (SET) el Latch.

    Cualquier otro pico de tensin aplicado posteriormente a la entrada S , debido al rebote del

    interruptor, no va a afectar al Latch, y ste permanecer en el estado SET.

    Tngase en cuenta que la salida Q del Latch proporciona una transicin limpia del nivel BAJO al

    nivel ALTO, por lo que se eliminan los picos de tensin causados por el rebote de los contactos.

    De forma similar, se produce una transicin limpia de nivel ALTO a nivel BAJO cuando el

    interruptor vuelve a la posicin 1.

    El circuito integrado 74LS279 es un cudruple Latch RS .

    Sistemas Digitales y de Comunicaciones Ao 2003

  • Sistemas Digitales y de Comunicaciones 2

    Los Flip-Flops son dispositivos sncronos de dos estados. En este caso el trmino sncrono

    significa que la salida cambia de estado nicamente en un instante especfico de una entrada de

    disparo denominada reloj (CLK), la cual recibe el nombre de entrada de control, C. Esto

    significa que los cambios de salida se producen sincronizadamente con el reloj.

    Un Flip-Flop disparado por flanco cambia de estado con el flanco positivo (flanco de subida) o

    con el flanco negativo (flanco de bajada) del pulso de reloj y es sensible a sus entradas slo en

    esta transicin del reloj.

    Un posible smbolo lgico es:

    Flip-Flop S-R disparado por flanco positivo

    Las entradas S y R de un Flip-Flop S-R se denominan entradas sncronas, dado que los datos en

    estas entradas se transfieren a las salidas del Flip-Flop slo con el flanco de disparo del pulso de

    reloj.

    Una de las aplicaciones de un Flip-Flop es la divisin (reduccin) de frecuencia de una seal

    peridica. Cuando se aplica un tren de pulsos a la entrada de reloj de un Flip-Flop J-K conectado

    en modo de conmutacin (J = K = 1), la salida Q es una seal cuadrada que tiene una frecuencia

    igual a la mitad de la frecuencia de la seal de reloj. Por lo tanto se puede utilizar un nico Flip-

    Flop como un divisor por 2. Se pueden conseguir divisiones sucesivas de frecuencia de reloj

    conectando la salida de un Flip-Flop a la entrada de reloj de un segundo Flip-Flop.

    Si se conectan varios Flip-Flops de esta manera, se puede conseguir una divisin de frecuencias

    de 2n, donde n es el nmero de Flip-Flops.

    Otra de las aplicaciones importantes de los Flip-Flops son los Contadores Digitales.

    Funcionamiento del Contador Asncrono

    Un contador Asncrono es aquel en el que los Flip-Flops del contador no cambian de estado

    exactamente al mismo tiempo, dado que no comparten el mismo pulso de reloj.

  • Sistemas Digitales y de Comunicaciones 3

    La figura representa un contador de 2 bits conectado para que funcione en modo Asncrono.

    Obsrvese que el reloj (CLK) est conectado nicamente a la entrada de reloj (C) del primer

    Flip-Flop, FF0. El segundo Flip-Flop, FF1 se dispara mediante la salida 0Q de FF0. FF0 cambia

    de estado durante el flanco positivo de cada impulso de reloj, pero FF1 slo cambia cuando es

    disparado por una transicin positiva de la salida 0Q de FF0. Debido al retardo de propagacin

    debido al paso de las seales por un Flip-Flop, las transiciones de los pulsos de entrada de reloj y

    la salida 0Q de FF0 no pueden ocurrir nunca al mismo tiempo. Por lo tanto las dos Flip-Flops

    nunca se disparan en forma simultanea.

    El funcionamiento del contador asncrono puede describirse mediante un diagrama temporal,

    como el que se muestra en la figura.

    El flanco positivo de CLK1 (pulso 1) hace que la salida Q0 de FF0 pase a nivel ALTO, como se

    muestra en la figura. Al mismo tiempo, la salida 0Q pasa a nivel BAJO, pero esto no afecta a

    FF1, ya que tiene que ser una transicin positiva la que lo dispare. Luego Q0 = 1 y Q1 = 1.

    El flanco positivo de CLK2 hace que Q0 pase a nivel BAJO. La salida 0Q se pone a nivel ALTO

    y dispara FF1, haciendo que Q1 pase a un nivel alto. Luego Q0 = 0 y Q1 = 1.

    El flanco positivo de CLK3 hace que Q0 pase a nivel ALTO de nuevo. La salida 0Q se pone a

    nivel BAJO y no afecta el estado de FF1.Por lo tanto, luego de CLK3, Q0 = 1, Q1 = 1.

    El flanco positivo de CLK4 hace que Q0 pase a nivel BAJO, mientras que 0Q se pone a nivel

    ALTO y dispara FF1, haciendo que Q1 pase a nivel BAJO. Luego de CLK4, Q0 = 0, Q1 = 0.

    El contador ahora ha vuelto a su estado original (los dos Flip-Flops se encuentran en RESET).

    El contador de 2 bits dispone de cuatro estados diferentes, como cabra esperar de dos Flip-Flops

    (22 = 4). Adems, si Q0 representa el bit menos significativo (LSB) y Q1 representa el bit ms

  • Sistemas Digitales y de Comunicaciones 4

    significativo (MSB) la secuencia de los estados del contador representa una secuencia de

    nmeros binarios, como se muestra en la tabla.

    El Mdulo de un contador es el nmero de estados distintos por el que el contador puede pasar

    de forma secuencial. El nmero mximo de posibles estados (mdulo mximo) de un contador es

    2n, donde n representa el nmero de Flip-Flops del contador.

    Se pueden disear contadores que tengan un nmero de estados en su secuencia que sea menor

    que el mximo de 2n. La secuencia resultante se denomina secuencia truncada.

    El circuito integrado 74LS93A es un ejemplo de contador asncrono de 4 bits. Este dispositivo

    est formado por un Flip-Flop y un contador asncrono de 3 bits. Esto le proporciona gran

    flexibilidad. Si se utiliza nicamente el Flip-Flop, se puede utilizar como dispositivo divisor por

    2, y si se utiliza nicamente el contador de 3 bits, se puede emplear como contador de mdulo 8.

    Funcionamiento del Contador Sncrono

    El trmino sncrono se refiere a eventos que tiene una relacin temporal fija entre s. Con

    respecto al funcionamiento del contador, sncrono significa que todos los Flip-Flops del contador

    reciben en el mismo instante la seal del reloj.

    La figura muestra un contador binario sncrono de 2 bits.

    Para el funcionamiento del contador sncrono se supone que los dos Flip-Flops se encuentran

    inicialmente en estado RESET.

    Cuando se aplica el primer pulso de reloj, Q0 se pone a nivel ALTO. Las entradas J1 y K1 estn a

    nivel BAJO, ya que estn conectadas a Q0, y esta todava no se ha puesto a nivel ALTO.

    Recordar que existe un retardo de propagacin desde el flanco de disparo del pulso de reloj,

    hasta que, realmente se realiza la transicin en la salida Q. Por lo tanto J = 0 y K = 0 Cuando se

    aplica el primer pulso de reloj y por lo tanto FF1 no cambia de estado.

    Despus de CLK1 Q0 = 1 y Q1 = 0.

    Cuando se produce el segundo pulso de reloj, Q0 se pone a nivel BAJO. Como FF1 tiene un nivel

    ALTO (Q0 = 1) en sus entradas J1 y Q1 durante el flanco de disparo del pulso de reloj, el Flip-

    Flop conmuta y Q1 pasa a nivel ALTO. Por lo tanto, luego de CLK2 Q0 = 0 y Q1 = 1.

    Pulso de reloj Q1 Q0

    Inicialmente 0 0

    1 0 1

    2 1 0

    3 1 1

    4 (nuevo ciclo) 0 0

  • Sistemas Digitales y de Comunicaciones 5

    Al producirse el tercer flanco de reloj CLK3, FF0 conmuta de nuevo al estado SET (Q0 = 1) y

    FF1 permanece en el estado SET (Q1 = 1), ya que sus entradas J1 y Q1 estn ambas a nivel

    BAJO. Luego de ste flanco de disparo, Q0 = 1y Q1 = 1.

    Finalmente, durante el cuarto flanco de reloj CLK4, Q0 y Q1 se ponen a nivel BAJO, dado que

    los dos Flip-Flops se encuentran en estado de conmutacin debido al valor presente en sus

    entradas J y K. El contador inicia un nuevo ciclo a partir de su estado original. El diagrama de

    tiempos se muestra en la figura.

    Diseo de Circuitos secuenciales.

    En los circuitos secuenciales, las salidas dependen no slo de las entradas actuales, sino tambin

    de su historia pasada. Esto es, las salidas actuales dependen de la secuencia de valores lgicos en

    las entradas. Estos circuitos lgicos se denominan Secuenciales.

    Cada etapa que atraviesa un circuito secuencial se denomina Estado. En cada estado el circuito

    almacena un recuerdo de su historia pasada, para saber que hacer a continuacin.

    Un circuito secuencial esta formado por una etapa de lgica combinacional, y una etapa de

    memoria (Flip-Flops), como se muestra en la figura. En un circuito secuencial sincronizado, hay

    una entrada de reloj en la etapa de memoria.

    Para el correcto funcionamiento del circuito se requiere la informacin almacenada en la etapa de

    memoria, as como las entradas de la lgica combinacional (I0, I1,..Im). en cualquier instante de

    tiempo, la memoria se encuentra en un estado denominado estado actual, y avanza al estado

    siguiente con un impulso de reloj determinado por las condiciones del estado siguiente.

  • Sistemas Digitales y de Comunicaciones 6

    Diseo de un contador bsico en cdigo Gray

    Paso 1: Diagrama de Estados

    Se debe pensar en la secuencia de operaciones por las que debe progresar el sistema. En este

    proceso de pensamiento se debe tener en cuenta las salidas que se necesitan que el sistema

    genere. Luego en primer lugar se describe el contador mediante un diagrama de estados, que

    muestra la progresin de estados por los que el contador avanza cuando se aplica una seal de

    reloj. Como ejemplo se muestra en la figura, un diagrama de estados de un contador bsico en

    cdigo Gray de 3 bits.

    Este circuito particular no tiene ninguna entrada aparte de la de reloj, y ninguna otra salida ms

    que las que se toman en cada Flip-Flop del contador.

    Como el contador tiene 8 estados, se necesitan 3 Flip-Flops. Posteriormente se asocian los

    estados A, B, C, D, E, F, G, H con los estados de los Flip-Flops 000, 001, 011, 010, 110, 111,

    101, 100. A esta asociacin se la denomina asignacin de estados. De forma bastante general,

    asignaciones diferentes de estados en un sistema secuencial conducen a circuitos lgicos

    diferentes, algunos de los cuales son mejores (ms simples o ms econmicos).

    Paso 2: Tabla del Estado siguiente

    Una vez que se define el circuito secuencial mediante un diagrama de estados, el segundo paso

    es obtener la tabla del estado siguiente, que enumera cada estado del contador (estado actual)

    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 de reloj. La tabla del estado siguiente se

    obtiene a partir del diagrama de estados.

    Estado actual Estado Siguiente

    Q2 Q1 Q0 Q2 Q1 Q0

    0 0 0 0 0 1

    0 0 1 0 1 1

    0 1 1 0 1 0

    0 1 0 1 1 0

    1 1 0 1 1 1

    1 1 1 1 0 1

    1 0 1 1 0 0

    1 0 0 0 0 0

    Paso 3: Tabla de Transicin de Estados

    A continuacin se realiza la tabla de transicin de estados para el Flip-Flop J-K. Se enumeran

    todas las posibles transiciones de salida, mostrando como evoluciona la salida Q del Flip-Flop al

    pasar de los estados actuales a los estados siguientes. QN es el estado presente en el Flip-Flop

    (antes de un pulso de reloj) y QN+1 es el estado siguiente (despus del pulso de reloj). Para cada

  • Sistemas Digitales y de Comunicaciones 7

    transicin de salida, se indican las entradas J y K que dan lugar a la transicin. Las X indican

    condiciones indiferentes (la entrada puede ser un 0 o un 1).

    Transiciones de salida Entradas del Flip-Flop

    QN QN+1 J K

    0 0 0 X

    0 1 1 X

    1 0 X 1

    1 1 X 0

    Al disear el contador se aplica la tabla de transicin de estados a cada Flip-Flop, la cual esta

    basada en la tabla del estado siguiente. Por ejemplo para el estado actual 000, Q0 pasa del estado

    actual 0 al estado siguiente 1. Para que esto ocurra, J0 tiene que ser 1 y es indiferente el valor que

    tome K0. A continuacin, el estado actual de Q1 es 0 y permanece en 0 en el estado siguiente.

    Para esta transicin, J1 = 0 y K1 = X. Por ltimo el estado actual de Q2 es 0 y permanece en 0 en

    el estado siguiente. Por lo tanto J2 = 0 y K2 = X.

    Paso 4: Diagramas de Karnaugh

    Los diagramas de Karnaugh se utilizan para determinar la lgica requerida para las entradas J y

    K de cada Flip-Flop del contador. Se debe utilizar un diagrama de Karnaugh para la entrada J y

    otro para la entrada K de cada Flip-Flop. En este procedimiento de diseo, cada celda del

    diagrama representa uno de los estados actuales de la secuencia del contador.

    A partir de los estados J y K de la tabla de transiciones, se introduce un 1, un 0 o una X en cada

    celda de la tabla correspondiente al estado actual, dependiendo de la transicin de salida Q de

    cada Flip-Flop en particular. Para ilustrar este procedimiento se muestra en la figura dos valores

    de entrada para las entradas J0 y K0 del Flip-Flop menos significativo (Q0).

  • Sistemas Digitales y de Comunicaciones 8

    El mapa completo de los tres Flip-Flops del contador se muestra en la figura. Las expresiones

    para las entradas J y K de cada Flip Flop son:

    1212120 QQQQQQJ

    1212120 QQQQQQK

    021 QQJ

    121 QQK

    012 QQJ

    012 QQK

    Paso 5: Implementacin del contador

    El paso final consiste en implementar la lgica combinacional a partir de las expresiones de las

    entradas J y K y conectar los Flip-Flops para conseguir un contador en Cdigo Gray de 3 bits,

    como se muestra en la figura.

  • Sistemas Digitales y de Comunicaciones 9

    Ejercicio N 1:

    Analizar el comportamiento de los siguientes circuitos y realizar la tabla de verdad para cada uno

    de ellos.

    Ejercicio N 2:

    a) Implementar un Flip-Flop tipo D sobre la base de un Latch S-R.

    b) Realizar la tabla de verdad del Flip-Flop tipo D.

    c) Dadas las formas de onda de la figura, para la entrada D y el reloj, determinar la onda de

    salida Q si el Flip-Flop parte del estado RESET.

    El circuito integrado 74HC74 es un doble Flip-Flop tipo D. Este dispositivo CMOS contiene dos

    Flip-Flops independientes entre s, que slo comparten la alimentacin y la tierra.

    Ejercicio N 3:

    a) Implementar un Flip-Flop tipo J-K sobre la base de un Latch S-R y compuertas NAND. b) Realizar la tabla de verdad del Flip-Flop tipo J-K. c) Dadas las formas de onda de la figura para las entradas J, K, y de reloj, determinar la salida

    Q suponiendo que el Flip-Flop se encuentra inicialmente en estado de RESET.

    El circuito integrado 74HC112 es un doble Flip-Flop tipo J-K.

  • Sistemas Digitales y de Comunicaciones 10

    Ejercicio N 4:

    Disear un contador que realice la secuencia de cuenta binaria irregular que se muestra en el

    diagrama de estados de la figura. Utilizar Flip-Flops J-K.

    Ejercicio N 5:

    Desarrollar un contador sncrono ascendente/descendente de 3 bits con una secuencia en cdigo

    Gray. El contador trabajar en modo ascendente cuando la entrada de control DOWNUP / sea 1,

    y trabajar en modo descendente cuando la entrada de control sea 0.

    Ejercicio N 6:

    Sintetizar un detector de secuencia aplicando el modelo de Moore, tal que cumpla con las

    siguientes especificaciones:

    La salida debe ser igual a 1 hasta que se detecte la secuencia de entrada 1011.

    Al detectarse dicha secuencia la salida pasar a ser la negacin de la entrada hasta que se detecte la nueva secuencia 0110 y volver al modo de funcionamiento inicial.

    Ejercicio N 7:

    Sintetizar un detector de secuencia aplicando el modelo de Mealy, tal que cumpla con las

    especificaciones descritas en el ejercicio anterior.