Capitulo 4 - Elementos de Memoria

  • Upload
    turbo59

  • View
    49

  • Download
    2

Embed Size (px)

Citation preview

E LEMENTOSIntroduccin En el captulo anterior vimos distintos circuitos denominados "combinacionales", dado que la salida es el resultado de la "combinacin", mediante una funcin determinada, del estado que poseen las entradas. Analizaremos ahora, diferentes circuitos llamados "secuenciales", en los cuales el estado lgico de la salida no slo depende del estado lgico de las entradas en ese instante, sino tambin del estado lgico de las entradas en instantes anteriores; por lo tanto, interviene una nueva variante que es el tiempo. Estos circuitos permiten memorizar el estado de las entradas en un instante y utilizarlo posteriormente para tomar decisiones cuando las entradas cambien de estado. Los dos dispositivos ms importantes de este grupo son: - Flip-flops - Registros Se describirn los circuitos biestables (flipflops) ms empleados y los registros de desplazamiento.

DE

M EMORIA

Flip-flops Un Flip-flop es un "elemento de memoria" que se caracteriza por tener dos estados en su salida, que permiten almacenar un bit de informacin ("0" o "1"). La salida permanece en uno de los estados posibles, a menos que una combinacin conveniente de seales de entrada provoque un cambio de estado en la salida (por ejemplo, interrupciones). Los operadores lgicos analizados en el captulo 1 pueden conectarse para formar elementos de memoria con la capacidad de "recordar" si a sus entradas se les ha aplicado o no un estado lgico "1" con anterioridad, verificndolo a su salida. Para encarar nuestro estudio, vamos a analizar una memoria de capacidad muy limitada construida simplemente por una compuerta OR debidamente interconectada, tal como se muestra en la figura 1.

Supongamos que inicialmente Q = 0 y A = 0. Si la entrada A pasa a "1" (quiero escribir un "1" en la memoria), la salida Figura 1 Q pasa a "1" (recordamos que en una OR un "1" a la entrada pone un "1" a la salida). Si posteriormente pongo A = 0, la salida sigue en "1", ya que al realimentar la entrada B, siempre existir en la misma un estado lgico "1". Esto significa que la salida Q permanecer siempre en "1", una vez que la entrada A pase por "1". Para borrar la memoria, se debe quitar la alimentacin de la compuerta o desconectar el lazo de realimentacin entre la salida Q y la entrada B, lo cual representa un inconveniente. Por lo tanto, el elemento de la figura 1 no es prctico ya que, si bien memoriza su puesta a "1", no es capaz de volver al estado inicial "0" mediante otra seal lgica, si es que no interesa mantener la informacin almacenada. Una posibilidad es agregar una entrada de borrado en el lazo de realimentacin. Para solucionar este inconveniente, se puede agregar otra compuerta que pueda recibir una informacin de borrado, como se ve en el circuito de la figura 2. En la figura 3 se da el smbolo de este elemento de Figura 2 memoria (en este caso un flip-flop RS) La "memoria" se borra cuando C = 0 y A = 0, con lo cual Q = 0. Figura 3 A estos elementos de memoria, los podemos clasificar de la siguiente manera:

CLUB SABER ELECTRNICA

49

T CNICAS D IGITALES- Flip-flop R-S: permite almacenar una informacin o dato (bit "1" o "0") durante un periodo de tiempo y despus borrarla para que quede dispuesto a recibir otro dato. - Flip- flop J-K: posee dos entradas denominadas J y K, tal que la entrada J se corresponde con la entrada S del Flip-flop R-S y la entrada K se corresponde con la entrada R del mismo Flip-flop. - Flip-flop T: posee una sola entrada y, cada vez que la entrada "T" toma el estado lgico "1", la salida cambia de estado. - Flip-flop D: la informacin presente en la entrada D se transfiere a la salida cuando aparece un pulso de reloj. Este ltimo circuito biestable, entra dentro del grupo de los "flip-flops" sncrono, razn por la cual debemos definir qu es un flip-flop sncrono y qu es un flip-flop asncrono: - En los Flip-flops asncronos el cambio de estado de la salida es producido directamente por las variables de entrada; es decir, las variables de entrada controlan el estado lgico de la salida. Esto significa que, una vez aplicadas las variables de entrada, el circuito cambia de estado automticamente, pasando por distintos estados intermedios hasta un estado final estable. La velocidad con que alcanza el estado final (estable) depende del retardo de las compuertas que forman el circuito secuencial. En los Flip-flops sncronos el cambio de estado de la salida se produce en "sincronismo" con una seal llamada de reloj (clock) o de temporizacin. Esto significa que las variables de entrada no actan directamente sobre la salida, sino que lo hacen solamente cuando se reciben pulsos activos de la seal de reloj. Los cambios ordenados por las entradas actan sobre la salida solamente cuando lo permite la seal del reloj. De acuerdo a cmo la seal de reloj controla la actuacin de las entradas sobre la salida, existen dos grupos de Flip-flops sncronos: 1) Flip-flops sincronizados por nivel: La seal de reloj permite que las entradas acten sobre la salida durante todo el tiempo en que esta seal de reloj se encuentra en un determinado nivel que se denomina activo. 2) Flip-flops sincronizados por flanco: La seal de reloj permite que las entradas acten sobre la salida nicamente en el flanco creciente o decreciente de la seal de reloj. No hay cambios en la salida cuando el pulso de reloj est en estado bajo o cuando est en estado alto. Los fabricantes indican con qu flanco (de subida o de bajada) se produce el posible cambio en la salida. Analicemos ahora ms en detalle, cada uno de los elementos de memoria detallados.

Flip-flops R-S (Reset - Set) El Flip-flops R-S permite almacenar una informacin o dato (bit "1" o "0") durante un periodo de tiempo y despus borrarla para que quede dispuesto a recibir otro dato. Un Flip-flops R-S se puede construir con compuertas NOR (como el de la figura 2). La tabla de verdad que resume el funcionamiento de este dispositivo es la siguiente: S R Q Q+1 0 0 0 0 La salida 0 0 1 1 no cambia 0 1 0 0 La salida 0 1 1 0 pasa a "0" 1 0 0 1 La salida 1 0 1 1 pasa a "1" 1 1 0 NO PERMITIDO 1 1 1 NO PERMITIDO Analizando la tabla anterior, se deduce que en este flip-flop, no interesa el estado en que se encuentra la salida para saber cul ser el estado posterior, por ello podemos construir un nuevo cuadro que se denomina: "Tabla resumida": S R Q+1 0 0 Q 0 1 0 1 0 1 NO PERMITIDO 1 1 Q es el estado actual de la salida en el instante en que se aplica la combinacin de entrada. Q+1 es el prximo estado que toma la salida luego de aplicarle una combinacin a sus entradas. R-S sigla compuesta por las iniciales del trmi-

50

CLUB SABER ELECTRNICA

E LEMENTOSno ingls Reset-Set que puede interpretarse como inactivar - activar o como puesta a "0" y puesta a "1", respectivamente. El Flip-flop R-S es un Flip-flop bsico, a partir del cual se construyen los dems flip-flops. Una de las caractersticas de los Flip-flops es que las salidas del circuito estn conectadas a las entradas. Esto significa que cualquier seal aplicada a la entrada atraviesa el circuito y luego retorna a las entradas. La tabla de verdad del Flip-flop R-S nos dice que si R = S = 0, la salida no cambia; es decir, el prximo estado de la salida Q es Q (Si estaba en "0" sigue en "0" y si estaba en "1" sigue en "1"): Si R = 1 y S = 0, la salida Q pasa a "0" (si estaba en "1" pasa a "0" y si estaba en "0" sigue en "0"). Si R = 0 y S = 1, la salida Q pasa a "1" (si estaba en "0" pasa a "1" y si estaba en "1" sigue en "1"). La situacin S = 1 y R = 1 no est permitida, ya que no es posible "escribir y borrar" al mismo tiempo el elemento de memoria; adems, se produce un estado de indeterminacin que debe evitarse. __ Este estado hace que algebraicamente Q = Q = 0, y por lo tanto no se conoce algebraicamente el estado que aparecera en el Flip-flop cuando desaparece la condicin de indeterminacin. Analicemos con ms detalles el funcionamiento de este Flip-flop. ESTADO ESTADO ESTADO ACTUAL INTERMEDIO FINAL S R Q Q Q Q Q Q 0 0 0 1 0 1 0 1 No 0 0 1 0 1 0 1 0 cambia 0 1 0 1 0 1 0 1 Pone 0 1 1 0 0 0 0 1 un "0" 1 0 0 1 0 0 1 0 Pone 1 0 1 0 1 0 1 0 un "1" 1 1 0 1 0 0 0 0 No 1 1 1 0 0 0 0 0 permitidos

DE

M EMORIA

Supongamos que inicialmente Q = 0, Q = 1, S = 0 y R = 0; a las entradas de la NOR (1) tenemos R = 0 y Q = 1 por lo cual Q = 0. En la NOR (2) tenemos S = 0, Q = 0; lo que nos da Q = 1. El estado intermedio coincide con el estado actual del Flip-flop; por lo tanto, se es el estado final estable. El estado es estable cuando el prximo estado intermedio coincide con el anterior. Si ahora Q = 1, Q = 0 y R = 1, S = 0. En la primer compuerta NOR (la de arriba en la figura 3) tenemos R = 1, Q = 0, con lo cual Q = 0 (ya que basta un "1" en una entrada para tener un "0" a la salida). En la NOR de abajo tenemos S = 0, Q = 1 por lo tanto Q = 0. Este es un estado intermedio inestable; el Flip-flop sigue evolucionando hasta alcanzar un estado final estable. En el estado intermedio R = 1, S = 0, Q = 0 y Q = 0, con lo cual en la NOR de abajo sus dos entradas son "0" y, por lo tanto, su salida pasa a "1" (Q pasa inmediatamente a "1"). En la NOR superior, el tener R = 1 es suficiente para que Q = 0. En estas condiciones se llega al estado final estable con Q = 0 y Q = 1. El mismo razonamiento se puede aplicar para el resto de las combinaciones. Se deduce entonces que el Flip-flop puede almacenar un bit de informacin ("1" o "0") y, por lo tanto, resulta una unidad de memoria de un bit. Si queremos almacenar un "1", se coloca S = 1 y R = 0; esto significa aplicar a la entrada S un nivel lgico alto. Esto se explica porque, a la entrada S se la llama entrada de Set o, tambin, entrada de escritura. Si se quiere almacenar un "0", se pone S = 0 y R = 1; esto significa aplicar a la entrada R un nivel lgico alto; es por ello que a la entrada R se la llama entrada de Reset o tambin entrada de borrado. Se llama diagrama de tiempos al grfico mediante el cual se establecen las diferentes seales que intervienen en un dispositivo (ya sea en sus entradas, salidas, estados intermedios, etc.) y cmo es su evolucin en el tiempo. De acuerdo a esto, el diagrama de tiempos de un Flip-flop R-S se muestra en la figura 4. En este diagrama se indican los estados lgicos de las salidas Q y Q al variar las entradas R y S. Se consideraron pulsos rectangulares perfectos; es decir, no es una condicin real, dado que no se tuvieron en cuenta los tiempos de retardo de propa-

CLUB SABER ELECTRNICA

51

T CNICAS D IGITALESFigura 4

gacin, pero resulta fcil para efectuar el anlisis. En los Flip-flops, las salidas Q y Q son complementarias. El circuito de un Flip-flop R-S se puede construir tambin con compuertas NAND, tal como se puede apreciar en la figura 5. Figura 5

agregar en cada entrada una compuerta inversora. En los diseos de circuitos lgicos generalmente se trata de impedir que Q y Q tengan el mismo estado lgico, en vez de opuestos, como corresponde, con el objeto de evitar el estado prohibido. Para explicar estos cambios, vamos a modificar parcialmente el circuito lgico del Flip-flop R-S realizado con compuerttas NOR. Como primera medida agregamos un inversor tomndolo de la salida Q, el circuito lgico resultante es el que se muestra en la figura 6 y hace que, en el caso de darse la simultaneidad de S y R, se tenga en cuenta a la salida el estado de "Set".Figura 6

La tabla de verdad es la misma que para el Flip-flop realizado con compuertas NOR. S R Q+1 0 0 Q 0 1 0 1 0 1 1 1 NO PERMITIDO Recordemos que las entradas propiamente dichas del Flip-flop R-S con compuertas NAND son S y R. Es decir, para almacenar un "1", se cumple S = 0, R = 1. Para almacenar un "0" se cumple S = 1, R = 0. Si R = 1 y S = 1, la salida no cambia. No est permitido el estado: R = 0, S = 0. Esto significa que para almacenar un "1" se aplica a S un nivel lgico bajo y, para almacenar un "0", se aplica a R un nivel lgico bajo. Para analizar este Flip-flop de la misma manera que el realizado con compuertas NOR se debe

La tabla de verdad del nuevo circuito es: S R Q+1 0 0 Q 0 1 0 1 0 1 1 1 1 Es posible hacer que predomine el "Reset", poniendo el inversor a la salida de la primera compuerta; con esta modificacin, se obtiene el circuito de la figura 7.

52

CLUB SABER ELECTRNICA

E LEMENTOS

DE

M EMORIA

compuertas AND sern "0", con lo cual estamos aplicando a las compuertas NOR de arriba y a la compuerta NOR de abajo del Flipflop propiamente dicho un "0" y, como ya sabemos, la salida Q no cambia de estado. Cuando el diseo lgico del circuito permite que existan las seales S y R simultneamente, sin que interfieran con el funcionamiento del equipo diseado, conviene que quede, indicando en smbolos la posibilidad de que las dos salidas del Flip-flop sean opuestas. Precisamente, en la figura 9, el smbolo indiFigura 7 ca que en caso de simultaneidad de S y R, la entrada de "Set" activa la salida 1, mientras Tambin es posible agregar un circuito a la en- que la entrada "Reset" prima sobre la salida 2. trada para hacer que no cambie la salida del Flipflop, si se da la simultaneidad mencionada. Lo que se est haciendo en el circuito de la figura 8 es inhibir el "Set" o "Reset" agregando compuertas con inversores a las entradas. El smbolo a la derecha de la figura indica esta inhibicin.

Figura 9

Flip-flop J - K El Flip-flop R-S es el elemento de memoria bsico y a partir de l se han desarrollado otros circuitos secuenciales utilizados como circuitos biestables para aplicaciones especiales. Uno de estos dispositivos de dos estados es el Flip-flop J-K, que posee los smbolos dados en la figura 10. Note que existen dos representaciones posibles recomendadas por el IEEE, segn se considere el estado lgico o el nivel lgico de las salidas. Figura 10

Figura 8

Se entiende, entonces, que con este circuito ya no existen los "estados prohibidos". La tabla de verdad del circuito lgico anterior es: S R Q+1 0 0 Q 0 1 0 1 0 1 1 1 Q En sntesis, cuando las entradas S y R tienen el mismo estado (ambas en "0" o en "1"), la salida no cambia. Observando el circuito de control vemos que, si R = S = 0 o R = S = 1, las salidas de ambas

Damos, a continuacin, la tabla de verdad que

CLUB SABER ELECTRNICA

53

T CNICAS D IGITALESdescribe el funcionamiento de este dispositivo de memoria: J K Q Q+1 0 0 0 0 No 0 0 1 1 cambia 0 1 0 0 Pone 0 1 1 0 un "0" 1 0 0 1 Pone 1 0 1 1 un "1" 1 1 0 1 1 1 1 0 Cambia La entrada J de este Flip-flop se corresponde con la entrada S del Flip-flop R-S y la entrada K se corresponde con la entrada R del mismo Flipflop. La tabla de verdad es similar; la nica diferencia radica en que, cuando J = 1 y K = 1, la salida Q cambia de estado (si estaba en "0" pasa a "1" y si estaba en "1" pasa a "0"). Por esta razn podemos aplicar el mismo razonamiento utilizado anteriormente para obtener la tabla reducida del Flip-flop J-K: J K Q+1 0 0 Q 0 1 0 1 0 1 1 1 Q Vamos a estudiar, ahora, dos elementos de memoria que poseen una sola entrada:

Figura 11

de estado y, si T = 0, no hay cambio de estado en la salida. La tabla de verdad es la siguiente: T Q Q+1 0 0 0 0 1 1 1 0 1 1 1 0 Se puede construir un Flip-flop T a partir de uno J-K, para conseguirlo slo se deben unir las entradas J y K (un Flip flop T es un Flip-flop J-K con las entradas unidas). Este es el ltimo de los Flip-flop asincrnicos que analizaremos; llega ahora, el turno de los dispositivos secuenciales sncronos, es decir: aqullos que deben recibir un pulso de reloj para que cambie el estado de las salidas.

Flip-flop R-S Sincronizado por Nivel En los Flip-flops sincronizados por nivel, el estado en que se encuentran las entradas acta sobre la salida durante todo el tiempo en que la seal de reloj se encuentra en nivel activo. Dicho nivel activo puede ser un "1" lgico o un "0", tal como se muestra en la figura 12, en la cual se representa la forma de onda que puede tener la seal de reloj.Figura 12

Flip-flop T Este Flip-flop (denominado T por "toggle"), junto con el "D", que veremos ms adelante, recibe la informacin desde una sola entrada y es, igual que "D", muy utilizado en la elaboracin de unidades aritmticas lgicas. En la figura 11 se reproduce el smbolo lgico de un Flip-flop T. Este Flip-flop opera de forma tal que, cada vez que T toma el estado lgico "1", la salida cambia

En la figura 13 se representa un Flip-flop R-S sincronizado por nivel realizado con compuertas NOR. En dicho circuito podemos establecer lo siguiente:

54

CLUB SABER ELECTRNICA

E LEMENTOSFigura 13

DE

M EMORIA

- Si Ck = 1 (nivel lgico alto), las entradas actan sobre la salida. - Si Ck = 0 (nivel lgico bajo), las entradas no actan sobre la salida y el Flip-flop no cambia de estado. La tabla de verdad que determina el funcionamiento de este componente, tambin posee un estado no permitido, tal cual ocurra con el primer elemento analizado en este captulo: S R Q+1 0 0 Q 0 1 0 1 0 1 1 1 NO PERMITIDO En este componente, las dos compuertas NOR forman el Flipflop propiamente dicho, mientras que las compuertas AND constituyen el circuito de control que programa el estado del Flip-flop, despus de aparecer el pulso del reloj. Si la seal de reloj aplicada al biestable se encuentra en el nivel activo (estado lgico "1"), las entradas actan sobre las salidas cumplindose la tabla de verdad del Flip-flop R-S. Cuando la seal de reloj se encuentra en el nivel lgico bajo, las

entradas R-S no actan sobre las salidas y el Flip-flop no cambia de estado. Analizando el circuito de la figura 13 vemos que, si Ck = 0, la salida de cada compuerta AND es "0" (recordemos que en una AND un "0" a la entrada pone un "0" a la salida, independientemente del estado en que se encuentre la otra entrada). Es decir, independientemente de R y S, estamos aplicando a la compuerta NOR de arriba y a la compuerta NOR de abajo un "0" y, como ya sabemos, la salida Q no cambia de estado. Por lo tanto, cuando el reloj est en el nivel lgico bajo, las entradas R y S no pueden actuar sobre la salida y sta no cambia de estado. Si la seal de reloj est en el nivel lgico alto, se aplica un "1" a las entradas de las compuertas AND, con lo cual, la salida de las compuertas AND depende de lo que hay en la otra entrada que "justamente" son las entradas R y S. Se entiende, entonces, que la seal de reloj se utiliza para bloquear y desbloquear los datos del Flip-flop (habilitacin). El diagrama de tiempos de un Flip-flop R-S sincronizado por nivel se muestra en la figura 14, y para entender su lectura supongamos lo siguiente: - Inicialmente S = 0, R = 0, Q = 0.Figura 14

CLUB SABER ELECTRNICA

55

T CNICAS D IGITALESEn un primer momento, la seal de reloj est en estado bajo (inactivo) y la salida no cambia de estado. Cuando la seal de reloj pasa a "1" se cumple la tabla de verdad del Flip-flop, luego como se ve en la grfica que S = 1 y R = 0, la salida pasa a "1". Con el reloj an en estado alto tenemos luego S = 0 y R = 0, y la salida no cambia (sigue en "1"). Luego el pulso de reloj pasa a un estado bajo y bloquea el Flip-flop, con lo cual no atender los cambios que puedan producirse en las entradas. Precisamente en este diagrama de tiempos, a pesar de que "R" pasa a "1", la salida del Flip-flop no pasa a "0" (sigue en "1") debido a que el pulso reloj est inactivo y, por lo tanto, las entradas no pueden cambiar el estado del Flip-flop. Los Flip-flops sncronos suelen tener dos entradas auxiliares Pr (Preset) y Cr (Clear) que permiten "fijar" el estado inicial del Flip-flop; es decir, cul ser el estado inicial de la salida cuando se alimenta al biestable. Estas entradas estn activas con un nivel lgico bajo. - La entrada de Pr (oreset) pone Q = 1. - La entrada de Cr (clear) pone Q = 0. Estas entradas de preset y clear se emplean para poner un "1" o un "0" en el Flip-flop sin que sea necesaria la seal de reloj, ni las entradas R y S. El Pr y Cr pone un "1" o un "0" en el Flip-flop cuando el reloj est en el nivel lgico bajo. Decimos entonces que con Pr y Cr "forzamos" la salida del FF a "1" o a "0" de manera asncrona. Cr Pr Ck 0 1 0 Q = 0 (borrado) 1 0 0 Q = 1 (puesta a "1") Una vez establecido el estado inicial del FF, las entradas Pr y Cr deben mantenerse en el nivel lgico alto para que el biestable funcione en forma sincrnica. La combinacin de Cr = 0 y Pr = 0 no est permitida, dado que no se puede poner un "1" y un "0" simultneamente en la salida. Se puede construir tambin un Flip-flop R-S sincronizado por nivel con compuertas NAND, tal como se muestra en la figura 15.Figura 15

En dicho circuito se han incluido las entradas de preset y clear, tal que: - Si Ck = 0, las salidas de las NAND de control tienen un estado lgico "1", independientemente de R y S, y el Flip-flop no cambia de estado. - Si Ck = 1, se cumple la tabla de verdad del Flip-flop; es decir, las entradas R y S actan sobre la salida. Una vez fijado el estado inicial, tanto la entrada de preset como la entrada de clear deben tener un "1" lgico para que el biestable funcione en forma sncrona.

Flip-flop D Sincronizado por Nivel Este Flip-flop posee una sola entrada (D) y trabaja de forma tal que la informacin presente en la entrada D se transfiere a la salida Q cuando aparece un pulso activo de la seal de reloj. Dicho de otra manera, traslada lo que hay en D a la salida Q cuando aparece un pulso activo de reloj. Por lo tanto, es imposible pensar que este biestable pueda funcionar en forma asncrona. La tabla de verdad es la siguiente: D Q Q+1 0 0 0 0 1 0 1 0 1 1 1 1 Como vemos, no interesa en qu estado se encuentra la salida cuando viene el pulso activo de la

56

CLUB SABER ELECTRNICA

E LEMENTOSFigura 16

DE

M EMORIA

seal de reloj, dado que lo que hay a la entrada se transfiere inmediatamente a la salida. Por tal motivo, podemos confeccionar una tabla reducida:Figura 17

D 0 1

Q+1 0 1 lida Q. Cuando el pulso de reloj est en estado bajo, la entrada D no acta sobre la salida por lo cual se mantiene en el estado en que se encontraba. El Latch se comporta como un interruptor, tal que cuando el reloj est alto, el interruptor est cerrado y deja pasar la informacin que se encuentra desde la entrada hacia la salida y cuando el reloj est bajo el interruptor est abierto. Del circuito de la figura 17, si Ck = 1 y D = 0, equivale a tener R = 1 y S = 0; por lo tanto, Q = 0. Cuando se recibe un estado activo del pulso de reloj y D = 1, equivale a tener R = 0 y S = 1; por lo tanto Q = 1. Esto significa que, cuando el pulso de reloj est en el nivel lgico alto, la salida Q sigue las variaciones de la entrada D. Si Ck = 0 (en realidad inactivo), la salida de las compuertas AND de control son "0", independientemente de la entrada D, y el Flip-flop no cambia de estado. Es decir, cuando el reloj pasa a "0", queda almacenada la informacin presente en la entrada D. El diagrama de tiempos que explica grficamente lo expuesto, se muestra en la figura 18. Vemos que la salida Q sigue a la entrada cuando el pulso de reloj est alto. En la prctica se aplica a la entrada de datos D,Figura 18

Cuando el Flip-flop D est sincronizado por nivel se lo llama LATCH y se lo puede construir a partir de un FF R-S sincronizado por nivel, en el cual a la entrada R se le conecta la entrada S a travs de un inversor, tal como se muestra en la figura 16. Es el ms utilizado de los Flip-flops sincronizados por nivel. En este biestable, "S y R" nunca pueden tener el mismo estado lgico. Expresado en la tabla de verdad ser: S R Q+1 0 0 X 0 1 0 1 0 1 1 1 X donde: X = Combinaciones imposibles de entrada. Se cumple entonces que: D 0 1 Q+1 0 1

El FF D se puede construir con compuertas NOR, tal como se grafica en la figura 17. En sntesis: Q=D Cuando la seal de reloj est en el nivel lgico alto, la informacin presente en la entrada D se traslada a la sa-

CLUB SABER ELECTRNICA

57

T CNICAS D IGITALESla seal "0" o "1" que se desea memorizar y, antes que cambie esta seal, se pone el reloj en estado bajo. Al estar baja la seal de reloj, aunque la entrada D cambie de estado, la salida no se afecta y se mantiene constante. Tambin se puede emplear el Flip-flop D sincronizado por nivel como una "llave" que cambia de estado cada vez que se aplica un pulso de reloj. En la figura 19 se ve un circuito en el cual la salida Q se conecta con la entrada D, luego cada vez que viene un pulso de reloj, la salida Q cambiar de estado, dado que en la entrada estar la informacin de la salida negada.Figura 19

conjunto. Las entradas de reloj de ambos Flipflops son inversas, es decir:

Figura 20

- Si Ck = 1, el "amo" se encuentra habilitado y el "esclavo" desconectado. - Si Ck = 0, el "amo" se encuentra desactivado y el "esclavo" est habilitado. Cuando el pulso de reloj est en el nivel lgico alto, permite que la informacin presente en las entradas del "amo" acte sobre sus salidas, pero como el esclavo est inhabilitado, no actan sobre las salidas de todo el conjunto. Cuando el pulso de reloj pasa al nivel lgico "0", el "esclavo" queda habilitado y sus entradas (que son las salidas del amo) actan, sobre las salidas del conjunto. La informacin ingresa al "amo" cuando el reloj est en el nivel "1" y acta sobre la salida del conjunto (salida del esclavo) cuando el pulso de reloj pasa de "1" a "0" (flanco negativo de la seal de reloj). El "amo" y el "esclavo" estn aislados entre s, excepto en el momento que el pulso del reloj pasa de alto a bajo. Como vemos, se puede comprender mejor el hecho de que un Flip-flop sea disparado por "flanco" o por "nivel". En el "pulso graficado en la figura 21, en los instantes marcados como 1, 2, 3 y 4 se producen los sigiuientes estados: 1 - Se asla al "amo" del "esclavo". 2 - Ingresa la informacin al "amo". 3 - Se inhabilita la entrada de datos al "amo". 4 - Se transfiere la informacin del "amo" al "esclavo".Figura 21

El circuito RC conectado a la entrada de reloj permite que el FF reconozca el nivel de la salida negada y luego no se vuelva a producir el cambio. Se podra colocar un circuito amplificador a la entrada del filtro mencionado, con el objeto de que nuestro circuito se convierta en una llave digital accionada al tacto.

Flip-flops Master Slave Estn constituidos por dos Flip-flops interconectados entre s. El primer Flip-flop, denominado "amo", recibe las seales de entrada y conecta su salida con las entradas del FF que se llama "esclavo". Veremos dos FF de este tipo: - Flip-flop R-S Master-Slave - Flip-flop J-K Master-Slave

Flip-flop R-S Maestro-Esclavo Est constituido por dos Flip-flops R-S interconectados entre s, tal como se muestra en la figura 20. El amo recibe las entradas de informacin y sus salidas se conectan a las entradas del esclavo, cuyas salidas constituyen las salidas de todo el

58

CLUB SABER ELECTRNICA

E LEMENTOS

DE

M EMORIA

Figura 22

Tambin es posible construir un FF R-S Master-Slave con compuertas NAND; el esquema lgico se grafica en la figura 22 Los dos Flip-flops R-S estn integrados en una nica estructura y trabajan de manera que ambos Flip-flops estn aislados entre s, salvo en el instante en que el reloj pasa de alto a bajo, donde la informacin almacenada en el amo se transfiere al esclavo. En ese instante se cumple la tabla de verdad del Flipflop R-S.

Figura 23

Flip-flop J-K Master-Slave Este es el segundo de los FF Master-Slave que analizaremos, cuyo diagrama lgico se muestra en la figura 23. Para ello, recordemos que la tabla de verdad del Flip-flop JK es similar a la del R-S salvo que, cuando J = K = 1, la salida cambia. Si hacemos referencia a la tabla de verdad: J K Q+1 0 0 Q 0 1 0 1 0 1 1 1 Q El circuito detallado con compuertas NAND se da en la figura 24, en la cual se observan las dos configuraciones correspondientes a los FF J-K interconectados entre s.

Figura 24

CLUB SABER ELECTRNICA

59

T CNICAS D IGITALESTal como lo habamos descrito para el FF R-S, se cumple que: - Si Ck = 1, el "amo" se encuentra habilitado y el "esclavo" desconectado. - Si Ck = 0, el "amo" se encuentra desactivado y el "esclavo" est habilitado. El principio de funcionamiento es similar al del FF anterior: - Cuando el pulso de reloj est en "1", las entradas J-K actan sobre el "amo", estando el "esclavo" desconectado. - Cuando el pulso pasa de "1" a "0" (flanco negativo del pulso de reloj), la informacin almacenada en el "amo" se transfiere al "esclavo"; instante en el cual se cumple la tabla de verdad del Flip-flop J-K master-slave. - Cuando se poduce un flanco negativo de la seal de reloj (pasa de "1" a "0") si se cumple: J = 1 y K = 0, entonces Q = 1 J = 0 y K = 1, entonces Q = 0 J = 0 y K = 0, la salida no cambia. J = 1 y K = 1, la salida cambia de estado. Si analizamos en detalle el funcionamiento del FF, podemos decir que cuando el reloj est en estado bajo ("0"), las terminales 1 y 2 de las compuertas (1) y (2) poseen un estado lgico "0". Por lo tanto, las salidas 3 y 4 de estas compuertas estn en "1", independientemente de las entradas J y K. Esto es as, porque en un NAND un "0" a la entrada pone un "1" a la salida, independientemente de las dems entradas. De acuerdo con esto, el Flip-flop R-S, constituido por las compuertas (3) y (4), permanece en el estado en que se encontraba. Esto significa que cualquier variacin en los niveles aplicados a las entradas J y K no se transmiten al FF esclavo, ya que al estar el pulso de reloj en estado bajo, el FF amo est inhabilitado. Ahora bien, cuando el pulso de reloj pasa al estado lgico "1", el inversor (9) hace que el FF esclavo quede inhabilitado; por lo tanto, las salidas de las compuertas 7 y 8 estn en "1" y, en estas condiciones, la salida del FF no cambia. Esto significa que las variaciones aplicadas a las entradas J y K no se transmiten al FF esclavo ya que se encuentra inhabilitado. Al estar el pulso de reloj en estado alto, en las terminales 1 y 2 de las compuertas (1) y (2) hay aplicado un "1"; por lo tanto, el estado lgico de las salidas de las compuertas (3) y (4) dependen de las entradas J y K. Es decir, durante el tiempo que el reloj est en estado alto, el FF amo est inhabilitado responde a los niveles presentes en las entradas J y K, pero esta informacin no se transfiere al esclavo, ya que el mismo est inhabilitado. En un flanco negativo del pulso de reloj, es decir, cuando pasa de "1" a "0", queda inhabilitado el ingreso de datos al FF amo debido a que las terminales 1 y 2 de las compuertas (1) y (2) estn con un estado lgico "0" y las salidas 3 y 4 de estas compuertas estn en "1"; por lo tanto, el FF amo no cambia de estado. En el flanco negativo, se desbloquea al FF esclavo y la informacin presente en las entradas 9 y 10 de las compuertas (5) y (6) acta sobre la salida Q de todo el conjunto, tal como se desprende del diagrama de tiempos de la figura 25. En este instante, la informacin almacenada en el FF amo se transfiere al esclavo. De la misma forma que ocurra con el FF R-S, el J-K suele tener las entradas asincrnicas de Pr (preset) y Cr (clear), que permiten fijar el estado inicial del Flip-flop. Estas entradas estn activas con el estado lgico "0".

Flip-flops Sincronizados por Flancos Como se ha mencionado anteriormente, en estos Flip-flops las entradas actan sobre la salidaFigura 25

60

CLUB SABER ELECTRNICA

E LEMENTOSsolamente en el instante en que se produce un flanco "activo" de la seal de reloj. De acuerdo con esto, existen:

DE

M EMORIA

cacin citado en la figura 19, en referencia a la llave digital. La tabla de verdad del Flip-flop D disparado por flancos es la misma que la del Flip-flop D - Flip-flops disparados por flancos positivos Latch. La diferencia est en la forma de utilizar la (es cuando el reloj pasa de "0" a "1") y seal de reloj. En el Latch vimos que se dispara - Flip-flops disparados por flancos negativos por nivel; en cambio, en el D disparado por flan(es cuando el reloj pasa de "1" a "0"). cos, la informacin presente en la entrada D se transfiere a la salida Q, cuando se produce un flanEn la figura 26 se da un detalle de cmo se de- co activo de la seal de reloj. be considerar cada flanco. En la figura 27 se da el esquema elctrico de un Flip-flop D disparado por flancos, realizado con compuertas NAND. Note la presencia de las seales de preset y clear, cuya funcin es anloga a las vistas para el FF R-S. Figura 26 En la figura 28 se da el smbolo lgico correspondiente a un FF D disparado por flancos positiEn estos Flip-flops la informacin se memori- vos, mientras que en la figura 29 se da el smbolo za en un flanco activo, a diferencia del master-sla- correspondiente a un FF D, disparado por los flancos negativos de la seal de reloj. ve, donde se memoriza en un nivel activo. Note que para indicar que es disparado por Vamos a analizar un Flip-flop D activado por flancos, dado que se ajusta ms al ejemplo de apli- flancos positivos se pone en el smbolo un >. En un Flip-flop D disparado por flancos positivos, la informacin presenFigura 27 te en la entrada D se traslada a la salida Q, slo en el instante en que la seal de reloj pasa de alto a bajo. Cualquier otra variacin de nivel, tanto en la entrada D como en el reloj, no provoca variaciones en la salida. El Flip-flop D de la figura 27 est constituido por dos Flip-flops R-S de entrada interconectados (compuertas 3, 4, 5 y 6) y un Flip-flop R-S de salida (compuertas 1 y 2).Figura 28

Figura 29

CLUB SABER ELECTRNICA

61

T CNICAS D IGITALESLos Flip-flops de entrada estn interconectados de manera tal que, cuando la seal de reloj pasa del nivel lgico bajo al nivel lgico alto, suministra un estado lgico "1", en la salida de un R-S y un estado lgico "0", en la salida del otro R-S, y la memorizacin se determina segn el estado de la lnea de datos D. Una vez que el pulso de reloj est en estado alto, se mantiene el mismo estado lgico en el Flip-flop; es decir, las posibles modificaciones en la entrada D no ocasionan ningn cambio en la salida. A travs de estados lgicos, podemos entender mejor lo que ocurre en este FF; para ello supongamos que: - Pr = Cr = 1, con lo cual se tiene un funcionamiento normal sincrnico. Suponemos que inicialmente el pulso de reloj est bajo y en D hay un "1". El pulso en estado bajo pone un "1" a las salidas de las compuertas NAND 3 y 4, lo cual coloca la condicin 1:1 en las entradas 7 y 8 del Flipflop R-S de salida, que hace que la salida general del FF permanezca como estaba. Como suponemos que D = 1 y la salida de la compuerta NAND 4 tambin est en estado lgico "1", la salida de la compuerta 6 estar en "0", y este "0" de salida de 6 es suficiente para poner un "1" a la salida de la compuerta 5. Al recibir un flanco positivo del pulso de reloj (pasa de bajo a alto), en las entradas de la compuerta 3 tenemos un "1" lgico, por lo cual la salida de 3 pasa a "0". Este "0" es suficiente para que la salida de 4 se mantenga en "1". Adems, este "0" de salida de 3 pone un "1" a la salida de 5. La salida de 6 sigue en "0". Al tener en la entrada 7 de la compuerta 1 un "0", pone un "1" en la salida Q; es decir, pone en la salida Q lo que hay a la entrada D. Se cumple entonces, que la informacin presente en la entrada D se transfiere a Q cuando se produce un flanco positivo de reloj. Si ahora, con el pulso de reloj en "1", cambia el estado de D, como dijimos, la salida no debe cambiar. Queda en manos del lector comprobar esta situacin, realizando el mismo razonamiento que el efectuado hasta el momento.Figura 30

En sntesis, en el FF D disparado por flancos, la informacin presente en D se transfiere a Q solamente en el instante en que el reloj pasa de "0" a "1" (en este caso, ya que podra dispararse con los flancos negativos de la seal de reloj, esta condicin la especifica el fabricante de estos componentes). El diagrama de tiempos que grafica lo explicado hasta ahora se muestra en la figura 30. Recuerde que con Pr = Cr = 1, el Flip-flop opera normalmente, mientras que dichas entradas se consideran activas cuando tienen aplicado el estado lgico "0".

Registros Un registro es un sistema lgico que almacena informacin de acuerdo con una secuencia preestablecida, contando para ello con elementos de memoria apropiados. As por ejemplo, puede "memorizar" una palabra digital que luego podr compararse con otra palabra, en un sistema de seguridad, a los fines de poder tomar determinadas decisiones.

Registros de Desplazamiento Los registros de desplazamientpo o "Shift Register" son sistemas secuenciales constituidos por Flip-flops sncronos interconectados en forma apropiada. Cada Flip-flop almacena un bit, por lo cual para construir un registro de desplazamiento de m bits son necesarios m Flip-flops. Todos los Flip-flops de estos registros tienen una seal de reloj comn y se activan y se desactivan sincrnicamente.

62

CLUB SABER ELECTRNICA

E LEMENTOS

DE

M EMORIA

Se pueden construir con Flip-flops del tipo RS, JK o D; las diferencias estn dadas en la forma que se trata la informacin a la entrada y su disponibilidad a la salida. Podemos encontrar 4 variantes para estos registros: - Entrada serie - salida serie. - Entrada serie - salida paralelo. - Entrada paralelo - salida serie. - Entrada paralelo - salida paralelo. En los registros de entrada serie y salida serie, los datos se cargan en serie, introducindolos en la entrada del FF y se van desplazando a los otros FF con cada ciclo activo de la seal de reloj. La informacin se obtiene desde la salida del ltimo FF. En los registros de entrada serie - salida paralelo, la informacin es almacenada en serie y la lectura es simultnea en todos los Flip-flops que componen el registro de desplazamiento. En los de entrada paralelo - salida serie, todos los Flip-flops que componen el registro se cargan simultneamente y su lectura es en serie. Por ltimo, en los de entrada paralelo - salida paralelo, el registro se carga y se lee en paralelo. Veamos el circuito correspondiente a cada uno de estos casos: Registro de desplazamiento con entrada serie - salida serie La informacin cargada en el registro, para ser leda, debe desplazarse secuencialmente por los distintos Flip-flops que componen el registro y obtener su lectura desde la salida del ltimo FF. El diagrama de bloques de este componente se presenta en la figura 31. Hemos considerado el caso de un registro

constituido por cuatro FF D disparados por flancos positivos. Como las entradas de reloj se aplican a las patas correspondientes que estn unidas entre s, cada vez que se detecta un flanco positivo de la seal de reloj, cada Flip-flop D en forma independiente traslada lo que hay en su entrada a su salida. - La informacin se desplaza Figura 31 una posicin de izquierda a derecha, por cada flanco positivo de la seal de reloj. Como ejemplo, supongamos que el mensaje que queremos almacenar es 1010, tal como se ve en la figura 32:Figura 32

Inicialmente los Flip-flops estn en "0"; es decir, Q4 = Q3 = Q2 = Q1 = 0. Luego se cumplir el contenido de la siguiente tabla: IMPULSOS BIT Q4 Q3 Q2 Q1 DE RELOJ DE INFORMACION 1 0 0 0 0 0 2 1 1 0 0 0 3 0 0 1 0 0 4 1 1 0 1 0 Inicialmente en la entrada D hay un "0"; con la llegada del primer flanco positivo de la seal; este "0" se almacena en el FF4 y aparece en su salida Q4. Con el prximo flanco positivo de la seal del reloj, el FF3 recibe el "0" desde la salida del FF4. Mientras tanto, el FF4 recibe en su entrada y almacena el nuevo dato que es otro "1". Con el tercer flanco positivo del reloj, el "0" almacenado en el FF3 pasa al FF2; el "1" almacenado en el FF4 pasa al FF3 y en el FF4 se almacena el prximo dato que es un "0". Con el cuarto flanco positivo de la seal de reloj los datos se desplazan una posicin de izquierda a derecha y en el FF4 se carga el ltimo dato que es un "1".

CLUB SABER ELECTRNICA

63

T CNICAS D IGITALESFigura 33

Vemos que para cargar el registro de desplazamiento necesitamos cuatro pulsos de reloj, uno para cada bit. Luego de que toda la palabra fue almacenada, se puede leer en serie la informacin por la salida del FF1. Por cada pulso de reloj, los datos almacenados en el registro se transmiten en serie, uno a continuacin del otro, a travs de la salida del FF1. Despus de cuatro pulsos de reloj, los datos almacenados pueden ser ledos o transmitidos en serie. Registro de desplazamiento con entrada serie - salida paralelo. El circuito propuesto con FF D, se ha dibujado en la figura 33. En dicho circuito lgico, se ve el agregado de una seal de habilitacin que se denomina "E". Segn el dato que tenga la entrada E, se pueden cumplir las siguientes condiciones: 1) Si E = "1" Se inhabilita la escritura (carga de datos en serie). Se habilitan las salidas paralelo. 2) Si E = "0" Se habilita la entrada serie (escritura). Se inhabilitan las salidas paralelo (inhabilita la lectura). Se entiende entonces que la seal E autoriza la

lectura o la escritura, tal que, si E = 0, se realiza la carga del registro de desplazamiento en serie. Por cada flanco positivo de la seal de reloj, la informacin aplicada en la entrada serie del FF se carga en serie. Al ser E = 0, las salidas de las cuatro compuertas AND aplicadas a la salida de cada FF son "0" y, por lo tanto, la lectura est inhabilitada. Si en la entrada E se coloca un nivel lgico "1", la entrada de reloj ser "0" en todos los Flip-flops; por lo tanto, la escritura est inhabilitada. Por otro lado, las salidas de las compuertas AND de cada FF estn inhabilitadas y, por lo tanto, se puede leer en paralelo el contenido de cada Flip-flop que fue escrito previamente en serie. Tambin se observa en la figura 33 una lnea de borrado, la cual permite borrar el contenido de los Flip-flops. Se dice que este registro de desplazamiento es un conversor serie paralelo. Registro de desplazamiento con entrada paralelo - salida serie. En la figura 34 se muestra un registro de desplazamiento con entrada en paralelo y salida serie. Note que ahora, adems de la entrada de clear, cada FF D posee una entrada de preset, por donde ingresarn los cuatro bits a cargarse en paralelo. En realidad, los cuatro bits a cargar en paralelo seFigura 34

64

CLUB SABER ELECTRNICA

E LEMENTOSingresan, a travs de las compuertas NAND, a las entradas asncronas de preset (Pr) de cada FF. Esto es posible ya que, al estar preset en "0", se tiene un "1" a la salida Q del FF; es decir: Si Cr = 0 y Pr = 1, entonces Q=0 Si Cr = 1 y Pr = 0, entonces Q=1 Si Cr = 1 y Pr = 1, se tiene una operacin normal sncrona. El funcionamiento de este registro depender del valor que tenga la seal aplicada en la entrada E y la seal de datos A (A3, A2, A1 y A0). Si E est en "1" cuando A est en "1", entonces Q debe ir a "1", ya que Pr = 0, si A est en "0", Pr es "1" y la salida Q sigue en "0". - Se dice que cuando E = 1 se carga el registro en paralelo. El registro opera de la siguiente manera: Primero se borra el contenido de los FF. Para ello se lleva E = 0 (esto significa Pr = 1) y Cr = 0, con lo cual las salidas de los FF pasan todas a "0". Luego se "autoriza" la escritura en paralelo; tal que si se cumple que: Cr = 1 y E = 1 se tendr: Si A = 0, Pr = 1, Q = 0 Si A = 1, Pr = 0, Q = 1 Al ser E = 1 se autoriza la escritura y se inhibe la lectura, ya que las entradas de reloj de los

DE

M EMORIA

Flip-flops estn bajas. Por ltimo, se debe poder leer la palabra almacenada, para ello se debe cumplir que Cr = 1 y E = 0 (con lo cual Pr = 1). Ahora los Flip-flops operan en forma sncrona; es decir, por cada flanco positivo del pulso de reloj, la informacin se desplaza una posicin de izquierda a derecha, pudiendo obtener los datos almacenados desde la salida en forma serie. Para finalizar, vamos a dar algunos ejemplos de circuitos integrados comerciales que contienen Flip-flops y Registros de Desplazamiento. Flip-flops comerciales TTL 7470 - Flip-flop J-K disparado por flancos positivos. 7472 - Flip-flop J-K amo - esclavo. 7473 - Doble Flip-flop J-K amo - esclavo. 7474 - Doble Flip-flop D disparado por flancos positivos. 7475 - Latch de 4 bits con salidas complementarias. 7476 - Doble Flip-flop J-K amo - esclavo. 7477 - Latch de 4 bits. 74100 - Doble latch de 4 bits. 74104 - Flip-flop J-K amo - esclavo. 74105 - Flip-flop J-K amo - esclavo. 74107 - Doble Flip-flop J-K amo - esclavo. 74174 - Sxtuple Flip-flop D disparado por flancos positivos. 74175 - Cudruple Flip-flop D disparado por flancos positivos. 74279 - Cudruple Flip-flop R-S. En la figura 35 se da, a modo de ejemplo, el diagrama lgico y el smbolo correspondiente al Flip-flop J-K maestro-esclavo 74104.Figura 35

CLUB SABER ELECTRNICA

65

T CNICAS D IGITALESFlip-flops comerciales CMOS CD4013 - Doble Flip-flop D CD4027 - Doble Flip-flop J-K ordenador-seguidor con set y reset. CD4042 - Cudruple cerrojo D controlado por reloj. CD4043 - Cudruple cerrojo NOR R-S TriState. CD4044 - Cudruple cerrojo NAND R-S TriState. CD4076 - Cudruple Flip-flop D Tri-State. CD4099 - Cerrojo direccionable de 8 bits. CD40174 - Sxtuple Flip-flop D. CD40175 - Cudruple Flip-flop D CD4723 - Doble cerrojo de 4 bits direccionables. CD4724 - Cerrojo direccionable de 8 bits. En la figura 36 se da el diagrama de conexiones del circuito integrado CD4013 que consiste en un doble FF D. Registros de Desplazamiento Comerciales TTL 7491 - Registro de desp. de 8 bits entrada serie-salida serie. 7494 - Registro de desp. de 4 bits entrada paralelo-salida serie. 7495 - Registro de desp. de 4 bits entrada paralelo-salida paralelo. 74164 - Registro de desp. de 8 bits entrada serie-salida paralelo. 74165 - Registro de desp. de 8 bits entrada paralelo-salida serie. 74166 - Registro de desp. de 8 bits entrada paralelo-salida serie. 74178 - Registro de desp. de 4 bits entrada paralelo-salida paralelo. 74179 - Registro de desp. de 4 bits entrada paralelo-salida paralelo. 74194 - Registro de desp. de 4 bits entrada paralelo-salida paralelo. 74195 - Registro de desp. de 4 bits entrada paralelo-salida paralelo. 74198 - Registro de desp. de 8 bits entrada paralelo-salida paralelo. La figura 37 muestra el diagrama en bloques, el esquema de conexiones y el smbolo correspondiente al circuito integrado 7491, que consiste en un registro de desplazamiento de 8 bits. Registros de Desplazamiento Comerciales CMOS CD4006 - Registro de desplazamiento esttico de 18 etapas. CD4014 - Registro de desplazamiento esttico de 8 etapas. CD4015 - Doble registro de desplazamiento esttico de 4 bits. CD4021 - Registro de desplazamiento esttico de 8 etapas. CD4031 - Registro de desplazamiento esttico de 64 etapas. *****************

Figura 36

Figura 37

66

CLUB SABER ELECTRNICA