Está en la página 1de 29

INTRODUCCIN A LOS

SISTEMAS DIGITALES II

APUNTES UNIDAD N 3
CIRCUITOS SECUENCIALES

AO 2013

Ing. Eduardo Hoes

Introduccin a los Sistemas Digitales II

Unidad N 3

Circuitos Secuenciales
1. Introduccin
En un circuito lgico combinacional la o las salidas son estrictamente dependientes del valor
presente de las seales de entrada; cualquier condicin anterior que haya tenido el valor de las entradas no
tendr ningn efecto sobre las salidas actuales debido a que los circuitos lgicos combinacionales no tienen
memoria.
Un circuito lgico es secuencial cuando las salidas no slo dependen de las entradas sino tambin de
la historia del circuito. Estos circuitos son capaces de memorizar el valor o estado de las entradas en un
cierto instante de tiempo y convertirlo en un estado interno del propio circuito para posteriormente utilizar
esta informacin junto con el prximo valor adoptado por las entradas para determinar el valor a adoptar por
las salidas. Surge as el concepto de estado propio de estos circuitos con memoria.
En la figura 3-1 se muestra un diagrama en bloques general de un circuito lgico secuencial. El
diagrama consiste en un circuito combinacional al cual se le conectan elementos de memoria para conformar
un camino de retroalimentacin. La parte combinacional del circuito recibe dos juegos de seales de entrada:
las entradas primarias o entradas externas provenientes del entorno circuital (salidas de otros circuitos) y
las entradas secundarias provenientes de los elementos de memoria.

ELEMENTOS DE
MEMORIA
ENTRADAS
SECUNDARIAS
(variables de estado)

SALIDAS
SECUNDARIAS

CICUITO LGICO
COMBINACIONAL
ENTRADAS
PRIMARIAS

Figura 3-1

SALIDAS
PRIMARIAS

Diagrama en bloques general de un circuito lgico secuencial.

A las seales de entrada secundarias provenientes de los elementos de memoria se les llama
variables de estado y la combinacin de valores lgicos que adoptan estas variables en un determinado
momento es el estado presente del circuito.
El diagrama de bloques muestra entonces que las salidas externas de un circuito secuencial son
funcin no solamente de las entradas externas o primarias sino tambin del estado presente de los elementos
de memoria. El prximo estado de los elementos de memoria es tambin una funcin de las entradas
externas y del estado presente. Por lo tanto, el comportamiento de un circuito secuencial estar especificado
por la evolucin temporal de sus entradas, salidas y estados internos. A esta evolucin temporal de las
seales tambin se las denomina como secuencia temporal o timing en ingls.

45

Introduccin a los Sistemas Digitales II

2. Biestables
El biestable o tambin llamado Flip - Flop (FF) es un circuito secuencial que posee una sola variable
de estado X, por lo que tiene dos estados internos posibles, una o dos entradas externas y dos salidas Q y P.
La salida Q toma el valor de la variable de estado (Q = X) y la otra salida toma el valor de la variable de
estado negada o invertida (P = X = Q). As vemos que las dos salidas siempre son opuestas entre s, por lo
que, por simplificacin, siempre nos referiremos a la salida Q a la cual suele denominrsele salida normal del
FF. Como su nombre lo indica, el biestable es un circuito cuya salida Q puede adoptar uno de dos estados en
forma estable. En la figura 3-2 se muestra el diagrama en bloques general de un biestable o FF.

Figura 3-2

Diagrama en bloques general


de un biestable o FF

As como las compuertas lgicas son los componentes fundamentales para la construccin de
cualquier circuito lgico combinacional, los biestables o FF son los componentes fundamentales o ladrillos
bsicos para la construccin de cualquier circuito secuencial.
El principio bsico de funcionamiento de cualquier biestable se basa en el comportamiento de un
circuito constituido por dos negadores o compuertas NOT montados en oposicin tal como se muestra en la
figura 3-3.

Figura 3-3

Circuito que muestra el principio bsico de


funcionamiento de cualquier biestable o FF

0
1

1
(a)

1
2

0
(b)

En la figura 3-3 (a) se muestra el circuito manteniendo uno de sus estados lgicos posibles. El
negador 1 impone un 1 en su salida, que es realimentado hacia la entrada del negador 2 por lo que este
ltimo impone un 0 en su salida que a su vez es realimentado hacia la entrada del negador 1, el cual
impone un 1 en su salida confirmando y manteniendo as el estado del cual partimos. En la figura 3-3 (b)
observamos el mismo circuito manteniendo el otro estado posible. Recordemos que estos negadores son
circuitos electrnicos y como tales deben estar conectados a una fuente de energa elctrica para que
funcionen. Cuando el circuito es conectado a la fuente (i.e. cuando se enciende el circuito) adquiere en forma
aleatoria uno de los dos estados, el cual mantiene mientras permanezca energizado. De esta forma
observamos que el circuito puede actuar como un elemento de memoria de un bit de informacin.
Ahora bien, para que este estado no sea aleatorio, el circuito debera disponer de una o ms entradas
que permitan elegir el estado a memorizar. Esto se consigue reemplazando los negadores por compuertas
NOR (recordar que estas compuertas implementan sumas negadas) tal como se muestra en la figura 3-4.Las
entradas del circuito son una de las entradas de cada compuerta NOR y se designan por R (de reseteo o
46

Introduccin a los Sistemas Digitales II

puesta a cero) y S (de seteo o puesta a uno). Las salidas sern las salidas de las compuertas y las
designamos por Q y Q, en donde Q ser la salida normal y Q la inversa de Q.
A este circuito lo designamos con el nombre de biestable RS o simplemente Flip - Flop RS.

Figura 3-4

Biestable o Flip - Flop RS en donde se han


reemplazado los negadores por compuertas
NOR.

Como el cero es el elemento neutro de la suma lgica (A + 0 = A) decimos que las entradas estn
inactivas cuando toman el valor 0. Por lo tanto cuando R = S = 0 decimos que el circuito est en estado de
reposo y se comporta como los inversores montados en oposicin de la figura 3-3 y la salida Q mantiene el
estado adquirido anteriormente lo que puede comprobarse analizando el comportamiento del circuito
partiendo de un estado cualquiera de sus salidas.
A continuacin se describirn los tres tipos bsicos de FFs: RS, JK y D.

2.1. Flip Flop tipo RS asincrnico.


En los FFs asincrnicos se permite que el dispositivo cambie de estado, si as corresponde, toda vez
que se produzca un cambio de estado en las variables de entrada externas o primarias (decimos que las
variables de entrada externas o primarias actan de forma directa sobre el sistema).
En la figura 3-5 (a) se muestra el smbolo para este tipo de FF. El mismo posee dos entradas de
control:
R (de Reset en ingls): borrado, puesta a nivel BAJO o puesta a 0 de la salida.
S (de Set en ingls): grabado, puesta a nivel ALTO o puesta a 1 de la salida.

Figura 3-5

(a) Smbolo del FF R-S;


(b) Una forma de implementar el FF R-S.

Q
(a)

Q
(b)

En la figura 3-5(b) se muestra una forma de implementar este FF. El circuito consta de dos
compuertas NOR cruzadas y acopladas entre s de manera que la salida de una de ellas est conectada a una
de las entradas de la otra compuerta y viceversa. Bajo condiciones normales, las salidas Q y Q siempre
sern inversas entre s. Las entradas R y S normalmente se encuentran en estado BAJO y una de ellas ser
pulsada a alto cuando se desee cambiar el estado de las salidas del FF.
Comenzaremos nuestro anlisis mostrando que hay dos estados de salida igualmente probables
cuando R = S = 0 (estado de reposo).
En la figura 3-6(a) se muestra que Q = 0 y Q = 1. El estado BAJO en la salida de la NOR1 causa
que la NOR2 tenga un 0 en ambas entradas, lo que produce un nivel ALTO en Q que se realimenta hacia la
47

Introduccin a los Sistemas Digitales II

entrada de la NOR1, por lo que esta compuerta impone y mantiene el nivel BAJO en Q. De esta manera
ambas salidas se mantienen en un estado estable.
La otra posibilidad se muestra en la figura 3-6(b) en donde Q = 1 y Q = 0. Con Q = 1 la salida de la
NOR2 se mantiene en 0, lo que causa que la NOR1 tenga un 0 en ambas entradas manteniendo su salida Q
en nivel ALTO. Para la figura 3-6 vemos entonces que para R = S = 0 la salida del FF mantiene su estado
anterior, el cual depende a su vez de lo que haya ocurrido anteriormente en las entradas de control.

Figura 3-6 Dos estados distintos de la


salida para una misma combinacin de
valores en las entradas de control:
R = S = 0 (estado de reposo).

Establecimiento o puesta a uno del FF


Ahora investigaremos qu sucede cuando la entrada S (puesta a uno) es pulsada momentneamente a
alto mientras que R (puesta a cero) se mantiene en BAJO. En la figura 3-7(a) se muestra el circuito del
FF RS y la evolucin temporal de sus seales de entrada y salida para este caso, partiendo del supuesto que
Q = 0 antes de que tenga lugar el pulso. Cuando S se pulsa a ALTO en el tiempo t0, la salida de la NOR2
(Q) pasar a BAJO y ese estado BAJO forzar a que la salida de la NOR1 (Q) pase a ALTO, de manera que
ahora NOR2 tiene dos entradas en ALTO; as cuando S retorna a BAJO en t1, la salida de NOR2 permanece
en BAJO, lo que a su vez mantiene la salida de NOR1 en ALTO.

0
1

0
1

t0 t1

t0 t1
1

0
t0 t1

Figura 3-7

t0 t1

t0 t1

0
t0 t1

Establecimiento o puesta a uno del FF RS mediante la aplicacin de un pulso en la entrada S


(a) Estado inicial de la salida Q en valor BAJO; (b) Estado inicial de la salida Q en valor ALTO.

48

Introduccin a los Sistemas Digitales II

La figura 3-7(b) muestra qu sucede cuando Q = 1 y Q = 0 antes de la aplicacin del pulso. Debido
a que Q = 1 ya est manteniendo la salida de la NOR2 en BAJO, luego la aplicacin del pulso ALTO en S no
tendr ningn efecto. As cuando S retorna al estado BAJO las salidas del FF an son Q = 1 y Q = 0.
La figura 3-7 se puede resumir expresando que un pulso ALTO en la entrada S siempre causar que
el FF termine en el estado Q = 1. A esta operacin se la suele llamar establecimiento del FF.

Restablecimiento o puesta a cero del FF


Ahora investigaremos que sucede cuando la entrada R (puesta a cero) es pulsada momentneamente
a ALTO mientras que S (puesta a uno) se mantiene en BAJO. En la figura 3-8(a) se muestra el circuito del
FF RS y la evolucin temporal de sus seales de entrada y salida para este otro caso, partiendo del supuesto
que Q = 1 antes de que tenga lugar el pulso. Cuando R se pulsa a ALTO en el tiempo t0, la salida de la NOR1
(Q) pasar a BAJO y ese estado BAJO forzar a que la salida de la NOR2 (Q) pase a ALTO de manera que
ahora NOR1 tiene dos entradas en ALTO; as cuando R retorna a BAJO en t1 la salida de NOR1 permanece
en BAJO, lo que a su vez mantiene la salida de NOR2 en ALTO.
1

t0 t1

t0 t1

t0 t1

t0 t1

Figura 3-8

t0 t1

t0 t1

Restablecimiento o puesta a cero del FF RS mediante la aplicacin de un pulso en la entrada R


(a) Estado inicial de la salida Q en valor ALTO; (b) Estado inicial de la salida Q en valor BAJO.

La figura 3-8(b) muestra qu sucede cuando Q = 0 y Q = 1 antes de la aplicacin del pulso. Debido
a que Q = 1 ya est manteniendo la salida de NOR1 en BAJO, la aplicacin del pulso ALTO en R no tendr
ningn efecto. As cuando R retorna al estado BAJO las salidas del FF an son Q = 0 y Q = 1.
La figura 3-8 se puede resumir expresando que un pulso ALTO en la entrada R siempre causar que
el FF termine en el estado Q = 0. A esta operacin se la suele llamar borrado o restablecimiento del FF.

49

Introduccin a los Sistemas Digitales II

Establecimiento y restablecimiento simultneos


El ltimo caso que debe considerarse es aquel en donde las entradas S y R se activan
simultneamente (R = S = 1). En este caso un nivel ALTO en las entradas de ambas compuertas NOR fuerza
a que sus salidas se coloquen en nivel BAJO, con lo que Q deja de ser la inversa de Q. Si bien las salidas se
mantienen estables mientras S = R = 1, cuando las entradas de control vuelven a su estado inactivo R = S = 0
el prximo estado de la salida es indeterminado. Por estas razones la condicin R = S = 1 no se usa para este
tipo de FF.
En la figura 3-9 se muestra otra implementacin posible para este FF, compuesta de dos compuertas
lgicas NAND cableadas de forma similar.
S

Figura 3-9 Otra implementacin para el FF RS

El comportamiento del FF para esta implementacin es idntica a la anterior excepto para el caso de
R = S = 1 en el que las salidas de las compuertas NAND se colocan en valor ALTO, pero cuando las
entradas de control vuelven a su estado inactivo R = S = 0, el prximo estado de la salida tambin es
indeterminado. Por estas razones la condicin R = S = 1 tampoco se usa en esta implementacin.

Tabla de prximo estado y Timing


As como el comportamiento de un circuito lgico combinacional queda definido en forma completa
a travs de su tabla de verdad, el comportamiento de un circuito biestable se describe por su tabla de prximo
estado. En la figura 3-10 se muestra la tabla de prximo estado para un FF tipo RS asincrnico como el
descripto.
Entradas
Primarias

R
0
0
1
1
0
0
1
1
Figura 3-10

S
1
1
0
0
0
0
1
1

Estado Actual
(Entrada Secundaria)

Prximo Estado

X(t) = Q(t)
1
0
1
0
1
0
1
0

X(t+1) = Q(t+1)
1
1
0
0
1
0
---

Establecimiento o
puesta a uno
Restablecimiento o
puesta a cero
Sin cambio
de estado
Dependiendo de la implementacin
pone a 1 o a 0 ambas salidas.

Tabla de prximo estado para un FF tipo RS asincrnico.

La tabla muestra entonces el prximo estado de la salida Q(t+1) en funcin del nuevo valor adoptado
por las entradas de control R y S y del estado de la propia salida Q(t) justo antes de que cambie el valor de
las entradas, es decir en funcin del estado presente del circuito X(t) = Q(t).

50

Introduccin a los Sistemas Digitales II

R
S
Q

0
0

Figura 3-11

Timing o secuencia temporal de las entradas y salidas de un FF RS.

Como ya se mencion, el comportamiento de un biestable tambin puede ser especificado por una
secuencia temporal o timing de sus entradas, salidas y estados internos. En la figura 3-11 se muestra el
timing de la salida Q de un FF RS asincrnico para una dada secuencia temporal de sus entradas de control R
y S.

2.2. Flip Flop tipo JK asincrnico.


Posee dos entradas de control J y K y su comportamiento es idntico al FF RS excepto para la
condicin de la activacin de ambas entradas (J = K = 1). La entrada J es la puesta a 1 de la salida (se
corresponde con la entrada S del FF RS) y la entrada K es la puesta a 0 de la salida (se corresponde con la
entrada R del FF RS). En la figura 3-12 (a) y (b) se muestra la implementacin circuital mediante compuertas
lgicas y el smbolo del FF respectivamente.

Figura 3-12 FF tipo J-K;


(a) Implementacin circuital.
(b) Smbolo lgico.

(a)

(b)
FIGURA 3-12

Como puede comprobarse a partir del esquema circuital de la figura 3-12 (a), cuando J = K = 1 las
salidas Q y Q cambian de estado y comienzan a oscilar entre los dos estados a una frecuencia dada por el
retardo interno de los componentes del circuito.

2.3. Flip Flop tipo D asincrnico.


Este FF posee una sola entrada de control D (de Data en ingls) o entrada de datos y, como se
muestra en la figura 3-13 (a), se puede implementar a partir de un FF tipo JK en donde la entrada K, a travs
de una compuerta negadora, es la inversa de la entrada J. De esta forma nunca se presenta la condicin de J =
K = 0 o J = K = 1.

Figura 3-13 FF tipo D asincrnico;

(a)

(a) Implementacin circuital a partir de un FF JK.


(b) Smbolo lgico.

(b)

51

Introduccin a los Sistemas Digitales II

D
Q
FIGURA 3-14

Figura 3-14 Timing o secuencia temporal de la entrada y salida de un FF tipo D asincrnico.

Cuando D = 1, J toma valor ALTO y K valor BAJO con lo que la salida Q se coloca en ALTO; de
esta forma el valor ALTO presente en la entrada D es transferido a la salida Q con el correspondiente retardo
de tiempo de propagacin del circuito. Lo mismo ocurre para cuando D = 0, transfirindose este valor BAJO
a la salida Q. En la figura 3-13 (b) se muestra el smbolo del FF. Este FF no tiene otra utilidad ms que la de
producir un retardo de tiempo entre la seal de entrada y la de salida, como se muestra en el timing de la
figura 3-14. Luego se ver que es de suma utilidad cuando se implementa para trabajar en forma sincrnica.

2.4. Flip Flops Sincrnicos.


Estos dispositivos poseen una entrada adicional por la cual se les inyecta una seal de sincronismo.
En estos FF las entradas de control no actan directamente sobre el circuito sino que lo hacen slo en
aquellos tiempos en los que la seal de sincronismo est activa. Una seal de sincronismo puede definirse
activa de dos maneras diferentes: por nivel o por flanco.
Una seal de sincronismo activa por nivel puede ser activa por nivel ALTO o por nivel BAJO. Una
seal de sincronismo se dice activa por nivel ALTO si las entradas de control son capaces de producir un
cambio de estado interno del FF solo durante los momentos en que dicha seal se mantiene en valor ALTO.
Caso contrario se dice activa por nivel BAJO.
Una seal de sincronismo activa por flanco puede ser activa por flanco de subida o por flanco de
bajada. Se denomina flanco de subida o flanco positivo de una seal lgica, al instante de tiempo en que
dicha seal bascula de 0 a 1. El flanco de bajada o flanco negativo se produce cuando la seal pasa de 1 a 0.
Se dice entonces que un circuito secuencial es sincrnico por flanco positivo cuando las entradas de control
son capaces de producir un cambio de estado interno del circuito solo en aquellos instantes de tiempo en los
que la seal de sincronismo bascula de 0 a 1. Caso contrario el circuito es sincrnico por flanco negativo.

2.5. Flip Flop tipo RS sincrnico por nivel.


En la figura 3-15 (a) se muestra la forma en que se puede implementar un FF tipo RS sincrnico por
nivel alto a partir de un FF RS asincrnico. La entrada que recibe la seal de sincronismo se llama G (de
Gate en ingls = puerta). Cuando G = 1 (seal de sincronismo activa), los valores de las entradas externas de
control R y S ingresan, a travs de las respectivas compuertas AND, a las entradas R1 y S1 del FF RS
asincrnico, con lo que el estado interno del FF cambia en funcin de los valores de R y S.

52

Introduccin a los Sistemas Digitales II

Figura 3-15 FF tipo RS sincrnico por nivel


ALTO;
(a) Implementacin circuital a partir de un FF
RS asincrnico;
(b) Smbolo lgico.

Cuando G = 0 (seal de sincronismo inactiva), las salidas de las compuertas AND se mantienen en
valor BAJO con lo que R1 = S1 = 0 y la salida del FF no cambia de estado, independientemente de los
valores adoptados por las entradas externas de control R y S. El smbolo de este FF se muestra en la
figura 3-15 (b). En la figura 3-16 (a) se muestra que con el simple agregado de una compuerta inversora en la
entrada G, se invierte la lgica de la seal de sincronismo y se transforma el FF en uno sincrnico por nivel
BAJO. En la figura 3-16 (b) se muestra su smbolo. En la figura 3-17 se muestra el timing para un FF RS
sincrnico por nivel ALTO.

Figura 3-16 FF tipo RS sincrnico por nivel


BAJO
(a) Implementacin circuital a partir de un FF
RS asincrnico.
(b) Smbolo lgico.

Figura 3-17 Timing o


secuencia temporal de las
entradas y salidas de un FF
tipo RS sincrnico por nivel
ALTO.

2.6. Flip Flop tipo RS sincrnico por flanco.


Como ya se mencion, en este tipo de FF las entradas R y S actan en forma directa sobre el estado
interno del circuito slo en los instantes en los que la seal de sincronismo bascula de 0 a 1 (seal de
53

Introduccin a los Sistemas Digitales II

sincronismo activa por flanco positivo o flanco de subida) o cuando la seal de sincronismo bascula de 1 a 0
(seal de sincronismo activa por flanco negativo o flanco de bajada). Para implementar este tipo de FFs se
requiere de circuitos detectores de flancos. En la figura 3-18 se muestra la implementacin de un circuito
detector de flancos positivos y el timing de sus seales de entrada y salida.
Clk

Clk*
Clk

Clk

Clk

Figura 3-18 Circuito detector de flancos positivos y timing


de seales.

Clk*
FIGURA 3-18

Una seal de sincronismo, a la que llamaremos Clk, ingresa a una de las entradas de una compuerta
AND y la inversa de esta seal (generada a travs de un negador), Clk, ingresa a la otra entrada de la
compuerta AND. Tal como puede observarse en el timing de la figura 3-18, la seal Clk ingresa a la AND
con un pequeo retardo de tiempo (de algunos nanosegundos) introducido por la compuerta NOT, con lo que
a la salida de la AND obtenemos un pulso positivo de muy corta duracin cuyo comienzo coincide con el
flanco positivo de la seal Clk. La duracin o ancho de este pulso es de algunos nanosegundos y est dado
justamente por el retardo introducido en la compuerta NOT.
En la figura 3-19 (a) se muestra la implementacin de un FF tipo RS sincrnico por flanco positivo a
partir de un FF RS sincrnico por nivel ALTO. Como puede observarse, la entrada de sincronismo ingresa al
FF sincrnico por nivel a travs de un detector de flancos positivos, de manera que este ltimo circuito
produce en su salida un pulso positivo de muy corta duracin justo en el momento en que la seal de
sincronismo produce un flanco positivo. Las compuertas AND dirigen este pulso de muy corta duracin
hacia la entrada S1 o R1 del FF RS asincrnico, de acuerdo con los niveles presentes en las entradas R y S.
Por ejemplo, con S = 1 y R = 0 la seal Clk* pasa por la compuerta AND inferior para producir un pulso
positivo en la entrada S1 del FF asincrnico que resulta en Q = 1. En la figura 3-19 (b) se muestra el smbolo
para este FF RS sincrnico por flanco positivo.

Figura 3-19
(a) Implementacin circuital a
partir de un FF RS
sincrnico por nivel ALTO
(b) Smbolo lgico.

En la figura 20 (a) y (b) se muestra la implementacin de un FF tipo RS sincrnico por flanco


negativo a partir de un FF RS sincrnico por nivel ALTO y el smbolo para este tipo de FF respectivamente.
La implementacin se ha llevado a cabo utilizando un circuito detector de flancos negativos que, en forma
similar al anterior, genera un pulso positivo de muy corta duracin justo en el momento en que la seal de
sincronismo produce un flanco negativo. En la figura 3-21 se muestra el circuito detector de flancos
negativos y el timing de sus seales.
54

Introduccin a los Sistemas Digitales II

Figura 3-20

FF tipo R-S sincrnico por flanco negativo;


(a) Implementacin circuital a partir de un FF RS sincrnico por nivel ALTO; (b) Smbolo lgico.

Clk*
Clk

Clk

Clk

Figura 3-21 Circuito detector de flancos negativos y timing de


seales.

Clk*

En la figura 3-22 se muestra el timing para un FF RS sincrnico por flanco positivo.


Clk 0
R
Figura 3-22 Timing o
secuencia temporal de las
entradas y salidas de un FF RS
sincrnico por flanco positivo.

S
Q

0
0

2.7. Flip Flops tipo JK y tipo D sincronizados por nivel.


Aplicando el mismo criterio que para los FF tipo RS, se puede implementar un FF tipo JK sincrnico
por nivel ALTO o nivel BAJO, por lo que no se describirn nuevamente los circuitos sino que simplemente
se presentarn sus smbolos. En la figura 3-23 (a) y (b) se muestran los smbolos para Flip Flops tipo JK
sincronizados por nivel ALTO y BAJO respectivamente.

55

Introduccin a los Sistemas Digitales II

J
G

(a)

Figura 3-23

G
K

Q
(b)

(c)

(d)

(a) Smbolo lgico de un FF tipo JK sincronizado por nivel ALTO


(b) Smbolo lgico de un FF tipo JK sincronizado por nivel BAJO.
(c) Implementacin circuital de un FF tipo D sincronizado por nivel ALTO a partir de un FF JK sincronizado por
nivel ALTO.
(d) Smbolo lgico de un FF tipo D sincronizado por nivel ALTO.

En la figura 3-23 (c) se muestra como implementar un FF tipo D sincronizado por nivel ALTO a
partir de un FF JK sincronizado por nivel ALTO y en la figura 3-23 (d) se muestra su correspondiente
smbolo.
El timing para un FF tipo D sincrnico por nivel ALTO se muestra en la figura 3-24.
Clk

Figura 3-24 Timing de las


entradas y salidas de un FF
tipo D sincronizado por nivel
ALTO.

D
Q

2.8. Flip Flops tipo JK y tipo D sincronizados por flancos.


Aplicando el mismo criterio que para los FFs tipo RS se puede implementar un FF tipo JK sincrnico
por flanco positivo o por flanco negativo, por lo que no se describirn nuevamente los circuitos sino que
simplemente se presentarn sus smbolos. En la figura 3-25 (a) y (b) se muestran los smbolos para Flip
Flops tipo JK sincronizados por flancos positivos y negativos respectivamente.

J
Clk
K

Figura 3-25

Clk
Q

(a)

Clk

Clk
Q

(b)

(c)

Clk

(d)

(a) Smbolo lgico de un FF tipo JK sincronizado por flanco positivo.


(b) Smbolo lgico de un FF tipo JK sincronizado por flanco negativo.
(c) Implementacin circuital de un FF tipo D sincronizado por flanco positivo a partir de un FF JK sincronizado
por flanco positivo.
(d) Smbolo lgico de un FF tipo D sincronizado por flanco positivo

En la figura 3-25 (c) se muestra como implementar un FF tipo D sincronizado por flanco positivo a
partir de un FF JK sincronizado por flanco positivo y en la figura 3-25 (d) se muestra su correspondiente
smbolo.
El timing para un FF tipo D sincrnico por flanco positivo se muestra en la figura 3-26.

56

Introduccin a los Sistemas Digitales II

Clk

Figura 3-26 Timing de las entradas y


salidas de un FF tipo D sincronizado por
flanco positivo.

D
Q

2.9. Flip Flop tipo T.


Ya se vio que para un FF tipo JK asincrnico la condicin de entrada J = K = 1 no estaba permitida
ya que la salida Q cambia de estado y comienza a oscilar entre los dos estados a una frecuencia cuyo valor es
inversamente proporcional al retardo de propagacin existente entre las entradas y la salida del circuito. Esto
no sucede as cuando dicho FF tipo JK est sincronizado por flancos (positivos o negativos). Esto puede
comprobarse a partir de la implementacin del FF JK sincrnico por flanco negativo mostrada en la
figura 3-27, en donde podemos observar que para la condicin de entrada sealada, las dos entradas de
control del FF JK asincrnico estarn en valor ALTO (J1 = K1 = 1) slo durante el tiempo correspondiente
al ancho del pulso de la seal Clk*. El ancho de dicho pulso es menor al retardo de propagacin existente
entre las entradas y la salida del FF, por lo que cuando se presenta el pulso el FF cambia de estado y antes de
volver a cambiar de estado (es decir, antes del intervalo de tiempo correspondiente al retardo de propagacin
entre las entradas y salidas) el pulso de la seal Clk* ya se extingui por lo que las entradas J1 y K1 ya
volvieron al estado BAJO y el FF mantiene el ltimo estado adquirido. De esta manera el FF cambia de
estado una sola vez y no vuelve a bascular hasta que se presente el prximo flanco negativo en la entrada
Clk, independientemente de que J y K se mantengan en valor ALTO. Cabe mencionar que si las entradas J y
K se mantienen en estado BAJO (J = K = 0) el FF no cambia de estado por mas que se presenten flancos
negativos en la seal de sincronismo.

Figura 3-27

Implementacin de un FF JK sincrnico por flanco negativo con J = K = 1 que muestra el principio de


funcionamiento de un FF tipo T.

En la figura 3-28 (a) y (b) se muestra el smbolo de un FF tipo T sincrnico por flanco negativo y su
implementacin a partir de un FF JK sincrnico por flanco negativo respectivamente.

57

Introduccin a los Sistemas Digitales II

T
Clk

Clk

Clk
K

Figura 3-28 FF tipo T sincrnico por flanco negativo


(a) Smbolo lgico;
(b) Implementacin a partir de un FF tipo JK sincrnico
por flanco negativo.

Q
(b)

(a)
FIGURA 3-28

Clk
Q

Figura 3-29 Timing de las entradas y salidas de un FF tipo T sincronizado por flanco positivo.

En resumen, cuando la entrada de control T est en valor ALTO, la salida Q cambia de estado con
cada flanco (positivo o negativo, dependiendo de la sincronizacin del FF) de la seal de sincronismo y
cuando T est en valor BAJO el FF no cambia de estado. En la figura 3-29 se muestra el timing para la salida
Q de un FF tipo T sincrnico por flanco positivo en respuesta a la secuencia temporal de las entradas de
control T y sincronismo Clk mostradas.

2.10. Entradas asncronas.


La mayora de los FFs sincrnicos tambin tienen una o ms entradas asincrnicas que operan
independientemente de las entradas de control y de la entrada de sincronismo. Estas entradas se pueden
utilizar para colocar la salida del FF en valor ALTO (entrada SET) o en estado BAJO (entrada CLR) en
cualquier momento, sin importar las condiciones de las otras entradas. Es decir que la accin de estas
entradas sobre el circuito tiene prioridad sobre las dems. Estas entradas pueden ser activas en ALTO o en
BAJO, lo cual se indica en el smbolo del FF con la ausencia o presencia del crculo negador respectivamente
junto al nombre de la seal. Mientras la entrada SET se mantenga activa la salida Q se mantendr en ALTO;
mientras la entrada CLR se mantenga activa la salida Q se mantendr en BAJO; mientras ambas seales
permanezcan inactivas el FF responder a las entradas de control y sincronismo, no pudindose activar
ambas entradas asincrnicas simultaneamente ya que podra dar como resultado una respuesta ambigua.
En la figura 3-30 (a) y (b) se muestran los smbolos de dos FFs sincrnicos por flancos negativos
(RS y JK respectivamente) con entradas asincrnicas SET y CLR activas en nivel ALTO y en la
figura 3-30 (c) y (d) se muestran los smbolos de dos FFs, tambin sincrnicos por flancos negativos (D y T
respectivamente) con sus entradas asincrnicas SET y CLR activas en nivel BAJO.

58

Introduccin a los Sistemas Digitales II

Figura 3-30
(a) Smbolo lgico de un FF tipo RS sincronizado por flanco negativo con entradas asincrnicas SET y CLR activas en nivel ALTO.
(b) Smbolo lgico de un FF tipo JK sincronizado por flanco negativo con entradas asincrnicas SET y CLR activas en nivel ALTO.
(c) Smbolo lgico de un FF tipo D sincronizado por flanco negativo con entradas asincrnicas SET y CLR activas en nivel BAJO.
(d) Smbolo lgico de un FF tipo T sincronizado por flanco negativo con entradas asincrnicas SET y CLR activas en nivel BAJO.

3. Aplicaciones de los Flip-Flops.


Los flip - flops sincronizados por flancos son dispositivos verstiles que se pueden usar en una
amplia gama de aplicaciones, incluyendo el conteo y almacenamiento de datos binarios, transferencia de
datos binarios de una ubicacin a otra y muchas ms.

3.1. Almacenamiento y transferencia de datos. Registros.


El uso ms comn de los FFs es el almacenamiento de datos o informacin codificada en binario.
Por lo general estos datos se almacenan en grupos de FFs llamados registros. Los diversos tipos de registros
se clasifican de acuerdo a la forma en que los datos pueden ingresar al registro para su almacenamiento y a la
forma en la cual se les da salida del registro. Las diferentes clasificaciones se listan a continuacin:
1.
2.
3.
4.

Entrada en paralelo - salida en paralelo


Entrada en serie - salida en serie
Entrada en paralelo - salida en serie
Entrada en serie - salida en paralelo

Cada uno de estos tipos de registros y algunas variaciones se encuentran disponibles en forma de
circuito integrado. A continuacin se analizar genericamente la implementacin y el comportamiento de
cada uno de estos registros.

3.1.1. Registro con entrada en paralelo - salida en paralelo.


En la figura 3-31 se muestra un registro de 4 bits implementado con FFs tipo D sincrnicos por
flanco negativo. Las entradas en paralelo estn conformadas por la entrada D de los FFs y designadas como
I0, I1, I2 e I3 y las salidas son O0, O1, O2 y O3 conformadas por la salida Q de los FFs. Todas las entradas
de sincronismo Clk de los FFs estn conectadas a un mismo punto conformando la entrada STORE (de
almacenamiento en ingls). Al momento de presentarse un flanco negativo de la seal aplicada a la entrada
STORE, las salidas O3 a O0 adquieren el estado de las entradas I3 a I0 respectivamente, manteniendo dicho
estado hasta la aparicin del prximo flanco negativo en la seal STORE (es decir que los datos presentes en
la entrada son transferidos a la salida y almacenados como un estado interno del registro). El registro se
puede colocar a cero en cualquier momento (independientemente del estado de las entradas de datos Ii y de
la seal de sincronismo STORE) colocando en valor ALTO la entrada RESET que activa la entrada
asncrona CLR de todos los FFs que componen el registro.
59

Introduccin a los Sistemas Digitales II

Figura 3-31

Registro de 4 bits entrada / salida paralela.

3.1.2. Registros de desplazamiento.


Un registro de desplazamiento es un grupo de FFs configurado de tal manera que los datos
almacenados en los FFs se desplazan de un FF al siguiente para cada flanco activo de la seal de sincronismo
aplicada. En la figura 3-32 se muestra una forma de configurar los FF tipo D sincrnicos por flanco negativo
para que operen como un registro de desplazamiento de 4 bits. Todas las entradas de sincronismo Clk de los
FFs estn conectadas a un mismo punto conformando la entrada SHIFT (desplazamiento). Al momento de
presentarse un flanco negativo de la seal aplicada a la entrada SHIFT, la salida Q de cada FF adquiere el
estado de su entrada D. De esta manera y en forma simultnea, el estado de la entrada de datos D del FF3,
que es el estado actual de la ENTRADA DE DATOS del registro, se transfiere a la salida del FF3, la entrada
de datos del FF2 (estado actual de la salida del FF3) se transfiere a la salida del FF2, la entrada de datos del
FF1 (estado actual de la salida del FF2) a la salida del FF1 y la entrada de datos del FF0 (estado actual de la
salida del FF1) se transfiere a la salida del FF0 que es la SALIDA DE DATOS del registro. As, este registro
de desplazamiento est conformado como un Registro de entrada serie - salida serie. El registro se puede
colocar a cero en cualquier momento (independientemente del estado de las entradas de datos y de la seal
de sincronismo SHIFT) colocando en valor ALTO la entrada RESET que activa la entrada asncrona CLR de
todos los FFs que componen el registro.

Figura 3-32

Registro de 4 bits entrada serie / salida serie.

60

Introduccin a los Sistemas Digitales II

3.1.3. Registro con entrada en paralelo - salida en serie.


En los registros de entrada paralelo - salida paralelo vimos que la transferencia de datos se realiza en
forma sincrnica, es decir, los datos que estn presentes en la entrada del registro se transfieren a la salida
ante la activacin de la correspondiente seal de sincronismo. Tambin se pueden realizar transferencias de
datos en forma asncrona actuando sobre las entradas asncronas de un FF en la forma adecuada y esto es lo
que se necesita en la implementacin un registro con entrada paralelo - salida serie para conseguir la carga de
datos paralela, ya que es la salida serie la que se realiza en forma sncrona. La figura 3-33 muestra la
implementacin de un registro de 4 bits de este tipo. Podemos observar que son 4 FFs conectados en cascada
con la misma configuracin de un registro de desplazamiento en donde la entrada SHIFT ingresa a las
entradas de sincronismo de todos los FFs (excepto al FF3) para producir la salida del dato almacenado en
forma serial sobre la lnea de salida de datos serie. Entonces, para introducir el dato en paralelo al registro,
debemos usar las entradas asncronas. Cuando la entrada ENT (ENable Transfer = habilitacin de
transferencia) se mantiene en valor BAJO, las salidas de todas las compuertas AND se mantienen en BAJO,
no actuando sobre las salidas de los FFs a travs de las entradas asncronas CLR y SET. Cuando la entrada
ENT se hace ALTA, suceder lo siguiente:

Figura 3-33

Registro de 4 bits con entrada paralelo / salida serie.

Se colocar en valor ALTO la salida de la AND1 o la salida de la AND2, dependiendo del estado
entrada de datos I0, colocndose en estado ALTO o BAJO la salida del FF0 si I0=1
respectivamente.
Se colocar en valor ALTO la salida de la AND3 o la salida de la AND4, dependiendo del estado
entrada de datos I1, colocndose en estado ALTO o BAJO la salida del FF1 si I1=1
respectivamente.
Se colocar en valor ALTO la salida de la AND5 o la salida de la AND6, dependiendo del estado
entrada de datos I2, colocndose en estado ALTO o BAJO la salida del FF2 si I2=1
respectivamente.
Se colocar en valor ALTO la salida de la AND7 o la salida de la AND8, dependiendo del estado
entrada de datos I3, colocndose en estado ALTO o BAJO la salida del FF3 si I3=1
respectivamente.

61

de la
I0=0
de la
I1=0
de la
I2=0
de la
I3=0

Introduccin a los Sistemas Digitales II

En resumen, cuando la entrada ENT est activa, los datos presentes en las lneas de entrada de datos
paralela I3 a I0 son almacenados en el registro (carga paralela del registro) y luego los datos son transferidos
en serie sobre la lnea de salida de datos serie con cada flanco negativo de la seal SHIFT.

3.1.4. Registro con entrada serie - salida en paralelo.


En la figura 3-34 se muestra la implementacin de un registro de 4 bits de este tipo, el cual es
basicamente un registro de desplazamiento en donde se toma la salida de cada FF para conformar la salida
paralelo Q3 a Q0.

Figura 3-34

Registro de 4 bits con entrada serie / salida paralelo.

3.2. Divisores de frecuencia / contadores.


La figura 3-35 (a) muestra tres FFs tipo T sincrnicos por flanco negativo con sus entradas T
colocadas en valor ALTO y conectados en una configuracin en cascada, de tal manera que la salida Q de un
FF ingresa a la entrada de sincronismo del siguiente. De esta forma cada FF cambiar de estado (bascular)
siempre que la seal en su entrada Clk pase de ALTO a BAJO (flanco negativo). Analicemos el
funcionamiento del circuito suponiendo que alimentamos al FF0 en su entrada Clk con una seal de reloj de
una frecuencia fija f. La evolucin temporal de las formas de onda de cada una de las salidas Q0, Q1 y Q2
a medida que ingresan pulsos al FF0 se muestra en el timing de la figura 3-35 (b).
1. El FF0 cambia de estado en el flanco negativo de cada pulso de la seal de entrada de reloj. As, la forma
de onda de la salida Q0 tiene una frecuencia f0 que es exactamente la mitad de la frecuencia de la seal
de reloj (f0 = f/2).
2. El FF1 cambia de estado cada vez que la salida Q0 pasa de ALTO a BAJO (flanco negativo), por lo tanto
la forma de onda de Q1 tiene una frecuencia f1 exactamente igual a la mitad de la frecuencia de la salida
Q0, y por lo tanto igual a un cuarto de la frecuencia de la seal de reloj: f1 = f0/2 = f/4.
3. El FF2 cambia de estado cada vez que la salida Q1 pasa de ALTO a BAJO (flanco negativo). As la
forma de onda de Q2 tiene una frecuencia f2 igual a la mitad de la frecuencia de la salida Q1, y por lo
tanto igual a un octavo de la frecuencia de la seal de reloj: f2 = f1/2 = f/8.
Como puede observarse, cada FF divide la frecuencia de su entrada de sincronismo en dos. Entonces,
si agregramos un cuarto FF a la cadena, ste tendra en su salida una frecuencia igual a (1/16) de la
frecuencia de reloj, etctera. Usando el nmero apropiado de FFs, este circuito podra dividir una frecuencia
en cualquier potencia de dos. Especficamente, usando N FFs producira una frecuencia de salida en el
62

Introduccin a los Sistemas Digitales II

ltimo FF igual a (1/2N) de la frecuencia de entrada. A esta aplicacin de los FFs se le denomina divisin de
frecuencia.
Q0

Q1

Q2

0
SET
Q

SET

FF2
Q

SET

FF1

Clk

Clk

CLR

T
FF0
Clk

CLR

Clk

CLR

CLR
(a)

CLR

10

11

Clk

Q0

Q1

Q2

CONTEO BINARIO
Q2 Q1 Q0

000

000

001

010

011

100

101

110

111

000

001

010

VALOR DECIMAL

(b)
FIGURA 3-35: Contador Asincrnico Ascendente

Figura 3-35

Contador asincrnico ascendente


(a) Implementacin a partir de FFs tipo T sincrnicos por flanco negativo
(b) Timing o evolucin temporal de las formas de onda de cada una de las salidas Q0, Q1 y Q2 en respuesta a
la seal de reloj Clk y la seal de puesta a cero CLR.

Operacin de Conteo
Adems de funcionar como un divisor de frecuencia, el circuito de la figura 3-35 tambin opera
como un contador binario. Esto se puede ver examinando la secuencia de los estados de los FFs despus de
que ocurre cada flanco negativo de un pulso del reloj (examinar el timing de la figura 3-35 (b)). Supongamos
que los valores de salida Q2 Q1 Q0 representan un nmero binario donde Q2 est en la posicin de peso 22,
Q1 est en la posicin de peso 21 y Q0 en la posicin de peso 20. Al aplicar un valor ALTO en la entrada
CLR del circuito, todos los FFs se colocan en estado BAJO, es decir que Q2 Q1 Q0 = 0002. Una vez liberada
la seal CLR (una vez que dicha seal vuelve al estado BAJO), las salidas mantienen ese estado hasta la
aparicin del flanco negativo del 1er pulso de reloj, despus de lo cual adquieren el estado Q2 Q1 Q0 = 0012.
Despus del flanco negativo del 2do pulso de reloj los FFs adquieren el estado Q2 Q1 Q0 = 0102. Despus
del flanco negativo del 3er pulso de reloj los FFs adquieren el estado Q2 Q1 Q0 = 0112 y as sucesivamente
hasta que despus del flanco negativo del 7mo pulso de reloj Q2 Q1 Q0 = 1112. Con el ingreso del octavo
flanco negativo los FFs retornan al estado 0002 y la secuencia binaria se repite a s misma para los siguientes
pulsos. En la figura 3-36 se presentan estos resultados en una forma tabular.
As, para los primeros siete pulsos de entrada (luego de haber liberado el reseteo), el circuito
funciona como un contador binario en el cual los estados de los FFs representan un nmero binario
equivalente al nmero de pulsos que han ocurrido. Con este contador se puede contar desde 0 hasta 1112 =
710 antes que retorne a 0. El nmero binario representativo de los estados del contador se incrementa con el
ingreso de cada pulso, por lo que se lo denomina contador binario ascendente.
63

Introduccin a los Sistemas Digitales II

Figura 3-36

Valor
decimal

22
Q2

21
Q1

20
Q0

0
1
2
3
4
5
6
7
0
1
2
3
.
.
.

0
0
0
0
1
1
1
1
0
0
0
0

0
0
1
1
0
0
1
1
0
0
1
1

0
1
0
1
0
1
0
1
0
1
0
1

Reseteo del contador y liberacin del reseteo


Despus del pulso N 1
Despus del pulso N 2
Despus del pulso N 3
Despus del pulso N 4
Despus del pulso N 5
Despus del pulso N 6
Despus del pulso N 7
Despus del pulso N 8, se reinicia en 000
Despus del pulso N 9
Despus del pulso N 10
Despus del pulso N 11

Secuencia de los estados de las salidas del contador en respuesta al flanco negativo de cada pulso ingresado a
partir de la liberacin del reseteo.

Mdulo del contador


El mdulo del contador indica el nmero de estados que puede adoptar el contador, es decir el
nmero de estados en la secuencia de conteo o el mximo factor de divisin de frecuencia (obtenido en el
ltimo FF de la cadena). Para el caso particular del contador de la figura 3-35, el mismo es un circuito
secuencial compuesto por 3 FFs y ya se ha visto que cada FF posee una variable de estado, por lo que el
circuito posee 3 variables de estado lo que lleva a 23 = 8 estados diferentes (0002 al 1112) por lo que es un
contador mdulo 8. En general, si se conectan N FFs en la configuracin de la figura 3-35, el contador tendr
2N estados diferentes y por lo tanto ser un contador mdulo 2N capaz de contar hasta 2N 1 antes de regresar
a su estado 0 y de obtener un factor de divisin mximo de 2N.

Contador Descendente
En la figura 3-37 (a) y (b) se muestra el circuito de un contador binario descendente y el timing de
sus salidas respectivamente. Como puede observarse, la configuracin general es la misma de la figura 3-35
a excepcin de que ahora es la salida Q (no la Q) de un FF la que ingresa a la entrada de sincronismo del
siguiente. De esta forma el FF1 cambia de estado cada vez que la salida Q del FF0 presenta un flanco
negativo en su entrada de sincronismo, lo que es equivalente a decir que cambia de estado cada vez que la
salida Q0 pasa de BAJO a ALTO (flanco positivo). De la misma forma el FF2 cambia de estado cada vez
que la salida Q del FF1 presenta un flanco negativo en su entrada de sincronismo, lo que es equivalente a
decir que cambia de estado cada vez que la salida Q1 pasa de BAJO a ALTO (flanco positivo). En este caso
las entradas asncronas CLR permanecen inactivas.

64

Introduccin a los Sistemas Digitales II

Q0

Q1

Q2

SET

Clk

Clk

CLR

CLR

CLR

T
FF0

Clk

Clk

FF1

FF2

(a)

SET

SET

SET

SET

10

11

Clk

Q0

Q1

Q2

CONTEO BINARIO
Q2 Q1 Q0

111

111

110

101

100

011

010

001

000

111

110

101

(b)

VALOR DECIMAL

Figura 3-37

Figura 3-38

Contador asincrnico descendente: implementacin a partir de FFs tipo T sincrnicos por flanco negativo y
timing de las formas de onda de cada una de las salidas Q0, Q1 y Q2 en respuesta a la seal de reloj Clk y la
seal de puesta a uno SET.
Valor
Decimal

22
Q2

21
Q1

20
Q0

7
6
5
4
3
2
1
0
7
6
5
4
.
.
.

1
1
1
1
0
0
0
0
1
1
1
1

1
1
0
0
1
1
0
0
1
1
0
0

1
0
1
0
1
0
1
0
1
0
1
0

Seteo del contador y liberacin del seteo


Despus del pulso N 1
Despus del pulso N 2
Despus del pulso N 3
Despus del pulso N 4
Despus del pulso N 5
Despus del pulso N 6
Despus del pulso N 7
Despus del pulso N 8, se reinicia en 111
Despus del pulso N 9
Despus del pulso N 10
Despus del pulso N 11

Secuencia de los estados de las salidas del contador en respuesta al flanco negativo de cada pulso ingresado a
partir de la liberacin del seteo.

Al aplicar un valor ALTO en la entrada SET del circuito, todos los FFs se colocan en estado ALTO,
es decir que Q2 Q1 Q0 = 1112. Una vez liberada la seal SET (una vez que dicha seal vuelve al estado
BAJO), las salidas mantienen ese estado hasta la aparicin del flanco negativo del 1er pulso de reloj, despus
de lo cual adquieren el estado Q2 Q1 Q0 = 1102. Despus del flanco negativo del 2do pulso de reloj los FFs
65

Introduccin a los Sistemas Digitales II

adquieren el estado Q2 Q1 Q0 = 1012. Despus del flanco negativo del 3er pulso de reloj los FFs adquieren
el estado Q2 Q1 Q0 = 1002 y as sucesivamente hasta que despus del flanco negativo del 7mo pulso de reloj
Q2 Q1 Q0 = 0002. Con el ingreso del octavo flanco negativo los FFs retornan al estado 1112 y la secuencia
binaria se repite a s misma para los siguientes pulsos. As, el nmero binario representativo de los estados
del contador se decrementa con el ingreso de cada pulso, por lo que se lo denomina contador binario
descendente. En la figura 3-38 se presentan estos resultados en una forma tabular.

4. Transferencia entre registros usando un bus comn.


Registros de tres estados.
Veamos el caso de la transferencia de datos entre registros internos de un microprocesador. Estos
registros internos son registros de entrada - salida paralela que intercambian datos entre ellos (transferencia
de informacin) a travs de un conjunto comn de lneas de conexin llamado bus interno. As, cada
registro tendr sus entradas y salidas unidas a las lneas del bus interno del uP y por lo tanto se debern tomar
las precauciones necesarias para realizar el conexionado de cada registro al bus.
Supongamos a modo de ejemplo un uP hipottico con un bus interno de 4 lneas y 3 registros de 4
bits a los que llamaremos A, B y C. En la figura 3-39 se muestra la interconexin de estos 3 registros a travs
del bus interno con la circuitera lgica necesaria para poder realizar la transferencia de datos entre ellos.
Como se puede observar, cada una de las salidas de los registros est conectada a la correspondiente lnea del
bus a travs de un buffer no inversor de tres estados con el propsito de evitar los inconvenientes elctricos y
de niveles lgicos que, como ya se ha visto, se produciran al quedar cortocircuitadas dichas salidas a
travs de las lneas del bus interno. Las entradas de habilitacin de los buffers de un registro se conectan a un
mismo punto y conforman la entrada OE (Output Enable habilitacin de salida) que permite que las
salidas del registro se conecten electricamente al bus al colocarse estos buffers en un estado de baja
impedancia cuando dicha lnea OE se activa (en valor ALTO). Las seales OEA, OEB y OEC que habilitan
las salidas de los registros A, B y C respectivamente provienen de la unidad de control del uP y se activan en
forma excluyente para asegurarse que slo un registro tenga sus salidas habilitadas y que las salidas de los
otros se mantengan en un estado de alta impedancia. Las entradas de sincronismo de los FFs (activas por
nivel ALTO) que conforman un registro provienen de la salida de una compuerta AND a la que ingresan la
seal de reloj (seal de sincronismo interna del uP) junto con la entrada IE (Input Enable habilitacin de
entrada), de manera que un pulso positivo de la seal de reloj podr actuar sobre la entrada de sincronismo G
de cada FF -para permitir en cada FF la transferencia del dato presente en la entrada D hacia la salida Q- slo
si la seal de habilitacin de entrada IE est activa (en valor ALTO); caso contrario los pulsos de reloj no
ingresan a la entrada de sincronismo G. De esta manera, asignando los valores apropiados a las seales de
habilitacin OE e IE, se puede seleccionar cul registro colocar sus datos en el bus interno y cul o cules
(podra ser ms de uno) almacenar los datos presentes en el bus. El contenido de cualquiera de los 3
registros se puede transferir en paralelo hacia los otros registros.
Veamos como ejemplo qu valores deben adoptar las seales de habilitacin para realizar la
transferencia del registro A al registro C (C A): en primer lugar, slo el registro A deber tener sus salidas
habilitadas, para lo cual necesitamos que OEA = 1 y OEB = OEC = 0, lo que colocar el contenido del
registro A en las lneas del bus interno. Luego, slo el registro C deber tener sus entradas habilitadas por lo
que IEC = 1 y IEA = IEB = 0, lo que permitir que el registro C almacene los datos presentes en el bus
interno cuando ocurra el pulso positivo de la seal de reloj.

66

Introduccin a los Sistemas Digitales II

Figura 3-39

Tres registros de 4 bits, A, B y C interconectados a travs de un bus interno de 4 lneas y la circuitera lgica
necesaria para poder realizar la transferencia de datos entre ellos.

A cada uno de los registros con su circuitera lgica asociada, mostrada en la figura 3-39, lo
llamaremos registro de tres estados; este tipo de registros se puede conseguir comercialmente en la forma
de CI y en la figura 3-40 se muestra su smbolo lgico.
En las figuras 3-41 (a) y (b) se muestran dos representaciones simplificadas de las conexiones del
bus con los registros de la figura 3-39.

67

Introduccin a los Sistemas Digitales II

IE

I3 I2

I1

I0

Clk
OE O3 O2 O1 O0
Figura 3-40

Smbolo lgico de un registro de tres estados de 4 bits.

[4]

4
IE

I3 I2

I1

IE

I0

I3 I2

I1

I0

Clk

Clk

OE O3 O2 O1 O0

OE O3 O2 O1 O0
[4]

4
[4]

4
IE

I3 I2

I1

IE

I0

I3 I2

I1

I0

Clk

Clk

OE O3 O2 O1 O0

OE O3 O2 O1 O0
[4]

Reloj

Reloj

[4]

4
IE

I3 I2

I1

IE

I0

I3 I2

I1

I0

Clk

Clk

OE O3 O2 O1 O0

OE O3 O2 O1 O0
[4]

4
(a)

(b)

Figura 3-41 (a) y (b): Dos representaciones simplificadas de las conexiones del bus con los registros de la figura 3-39.

68

Introduccin a los Sistemas Digitales II

Sincronizacin del Bus (Timing de seales)


Para que la transferencia de datos entre registros se lleve a cabo correctamente, la activacin de las
seales involucradas en la transferencia debe ocurrir en los tiempos apropiados. Para ilustrar este concepto,
en la figura 3-42 se muestra el diagrama de sincronizacin o de evolucin temporal (timing) de las seales
implicadas en la transferencia del dato 1011 del registro A al registro C (en la figura no se han dibujado las
seales que permanecen inactivas). Antes del tiempo t1 todas las salidas de los registros estn deshabilitadas
y ninguno de ellos pondr sus datos sobre el bus, por lo que las lneas del bus estn en un estado de Hi-Z o
tambin llamado flotante lo cual se representa mediante las lneas rayadas en el diagrama. La unidad de
control del uP generar las seales de habilitacin para las salidas y entradas de datos de los registros (OEA,
OEB, OEC, IEA, IEB, y IEC) en sincrona con los flancos positivos o negativos de la seal de reloj (seal de
sincronismo interna del uP).
En t1 y en sincrona con el flanco positivo de la seal de reloj, se le solicita a la unidad de control la
activacin de la seal de habilitacin de salida del registro A (OEA), lo que ocurrir luego de transcurrido un
intervalo de tiempo t1 correspondiente al retardo de propagacin de la lgica de control de la misma unidad.
La activacin de esta seal debe habilitar a los buffers triestado, colocndolos en un estado de baja
impedancia, para permitir que las salidas del registro A se conecten electricamente al bus, pero esto no
ocurrir sino hasta haber transcurrido un intervalo de tiempo t2 correspondiente al retardo de propagacin
de dichos buffers de salida. Entonces en el tiempo (t1 + t1 + t2) los datos del registro A son volcados al
bus; pero debido a que los cables del bus presentan ciertas caractersticas elctricas (valores de capacidad,
inductancia y resistencia distribuidas en su extensin y cuyo estudio no abarcan este curso) que introducen
un retardo en el establecimiento de las seales volcadas sobre el mismo, hay que esperar un tiempo para que
los niveles lgicos queden establecidos en el bus. En el diagrama mostrado en la figura 3-42, el bus de datos
debe estabilizar los datos que recibe en un tiempo menor a t3, ya que transcurrido ese intervalo de tiempo se
presenta el flanco negativo del reloj (en el tiempo t2) solicitndole a la unidad de control la activacin de la
seal de habilitacin de entrada del registro C (IEC), lo que ocurrir luego de transcurrido un intervalo de
tiempo t4 correspondiente al retardo de propagacin de la lgica de control de la misma unidad. A partir de
este tiempo t2 + t4, el registro C queda habilitado para leer los datos presentes en el bus en el momento en
que se presente un pulso positivo de la seal de reloj. Este pulso se presenta a partir del tiempo t3 y finaliza
en t4, con lo que ya habido suficiente tiempo para que el bus estabilice los datos recibidos y que la unidad de
control active la seal IEC. El ancho de este pulso es el tiempo del que dispone el registro para leer los datos.
El flanco negativo de la seal de reloj que se produce en el tiempo t4 da la orden de desactivacin de las
seales OEA y IEC, con lo que luego de un retardo de tiempo de propagacin de la lgica de control, estas
seales retornan a su estado inactivo y como resultado las salidas del registro A pasan al estado de Hi-Z junto
con el bus interno y el registro C queda inhabilitado para recibir otro pulso positivo de la seal de reloj.
En la figura 3-43 se muestra la forma simplificada del mismo diagrama de sincronizacin, en donde
la actividad de las lneas del bus se muestra en una sola forma de onda. En adelante, de ser necesario, se
usar este diagrama simplificado de sincronizacin.

69

Introduccin a los Sistemas Digitales II

Figura 3-42

Diagrama de sincronizacin o de evolucin temporal (timing) de las seales implicadas en la transferencia del
dato 1011 del registro A al registro C

Figura 3-43

Forma simplificada del diagrama de sincronizacin de la figura 3-42.

70

Introduccin a los Sistemas Digitales II

5. Circuitos Monoestables.
Llamamos monoestable a un circuito secuencial cuya salida posee un nico estado estable, pudiendo
bascular al otro estado y mantenerse en este nuevo estado slo durante un intervalo de tiempo
predeterminado por el mismo circuito. El pasaje de la salida al estado inestable se produce ante la activacin
de una entrada de sincronismo, que normalmente es activa en el modo de flancos. El tiempo durante el cual
la salida permanece en su estado inestable se implementa mediante un circuito resistivo capacitivo,
operando la carga y descarga de un capacitor. La resistencia y el capacitor que forman parte de este circuito
son componentes externos al CI del monoestable, de manera de poder elegir el tiempo de activacin del
monoestable a partir de la eleccin de los valores de estos componentes, ya que este tiempo ser
proporcional al producto R.C, que es la constante de tiempo de un circuito resistivo - capacitivo. En la
figura 3-44 se muestra el smbolo lgico de un monoestable y la secuencia temporal o timing de su salida Q
para una dada secuencia temporal de su entrada de sincronismo Clk.

Clk

Clk
Q

Figura 3-44

T~ R.C

T~ R.C

Estado estable = 0

Smbolo lgico de un circuito monoestable y secuencia temporal o timing de su entrada y salida.

En la figura 3-45 se muestra la implementacin de un monoestable (tambin llamado temporizador o


timer) a partir de un FF D sincrnico por flanco positivo y un circuito resistivo - capacitivo conectado en
forma conveniente. El estado estable de la salida del circuito es el 0 con lo que el capacitor se mantiene
descargado a travs del diodo. Cuando se aplica un flanco positivo en la entrada de sincronismo, el 1
presente en la entrada de datos se transfiere a la salida y se mantendr hasta tanto el FF sea reseteado. Con la
salida Q en estado alto, el capacitor comienza a cargarse a travs de R y cuando alcanza el nivel de tensin
correspondiente al 1 se activa la entrada CLR, resetendose el FF y pasando la salida Q a 0, con lo que el
dispositivo pasa a su estado estable y el capacitor se descarga instantaneamnete a travs del diodo. En la
misma figura tambin se ve el timing de las seales involucradas en el funcionamiento del timer.

Figura 3-45

Implementacin de un monoestable (temporizador o timer) a partir de un FF tipo D sincrnico por flanco positivo

6. Circuitos Astables.
Llamamos astable a un circuito secuencial cuya salida no posee ningn estado estable y por lo tanto
oscila entre ambos valores dando como resultado una seal lgica que evoluciona en forma peridica a una
frecuencia predeterminada por el mismo circuito. El circuito no presenta entradas y comienza a oscilar al
momento de ser alimentado. A la seal de salida de estos osciladores se la denomina seal de reloj y el
perodo T de dicha seal se consigue mediante la implementacin de un circuito con un oscilador de cristal
71

Introduccin a los Sistemas Digitales II

de cuarzo o bien -en forma ms sencilla pero menos estable- con un circuito resistivo - capacitivo operando
la carga y descarga de un capacitor. La resistencia y el capacitor que forman parte de este circuito son
componentes externos al CI del oscilador, de manera de poder elegir la frecuencia de la seal de reloj a partir
de la eleccin de los valores de estos componentes, ya que el perodo T de dicha seal ser proporcional al
producto R.C que es la constante de tiempo de un circuito resistivo - capacitivo. En la figura 3-46 se muestra
el smbolo lgico de un oscilador y la secuencia temporal o timing de su salida Q o seal de reloj.
T

R
Figura 3-46

Smbolo lgico de un circuito astable (oscilador) y secuencia temporal o timing de su salida Q (seal de reloj).

En la figura 3-47 se muestra la implementacin de un oscilador (tambin llamado reloj) a partir de


dos compuertas inversoras y un circuito resistivo - capacitivo conectado en forma conveniente.

Figura 3-47

Implementacin de un oscilador (reloj) y timing de la salida Q (seal de reloj) y tensin del capacitor Vc.

El anlisis del circuito puede realizarse considerando que al dar la alimentacin del mismo el
capacitor se encuentra descargado (Vc = 0V) y su salida Q en 1. Bajo estas circunstancias, el condensador
comienza a cargarse a travs de R a un ritmo dado por la constante de tiempo R.C hasta que, al alcanzar el
nivel de tensin correspondiente al 1, el inversor 2 cambia el estado de su salida a 0 (la salida Q del
oscilador bascula a 0) y la salida del inversor 1 bascula a 1 invirtindose la situacin, con lo que el
capacitor comienza a descargarse travs de R a un ritmo dado por la constante de tiempo R.C hasta alcanzar
el nivel de tensin correspondiente al 0, con lo que salida del inversor 1 vuelve a 1 (la salida Q del
oscilador bascula a 1), repitindose el ciclo a una frecuencia dada por el periodo T que es proporcional a la
constante de tiempo dada por el producto de R.C. En la misma figura tambin se muestra el timing de la
salida Q y de la carga y descarga del capacitor Vc.

---------------------------------72

También podría gustarte