Anda di halaman 1dari 20

EIE 446

Sistemas Digitales
Dr. Esteban Vera

Escuela de Ingeniería Eléctrica


Pontificia Universidad Católica de Valparaíso

10-05-2018 EIE 446 - Sistemas Digitales 1


Sistemas Digitales
IX. Registros de Desplazamiento
7sk-o5fy-n1j

10-05-2018 EIE 446 - Sistemas Digitales 2


OBJETIVOS DE LA UNIDAD

● Identificar las formas básicas de movimiento de datos en los registros de


desplazamiento.
● Explicar como funcionan los registros de desplazamiento con: entrada y
salida serie, entrada serie y salida paralelo, entrada paralelo y salida serie,
entrada y salida paralelo.

● Describir como funciona un registro de desplazamiento bidireccional.


● Determinar la secuencia de un contador Johnson. Configurar un contador en
anillo para generar una secuencia específica.

● Realizar un contador en anillo a partir de un registro de desplazamiento.

● Aplicaciones de los registros de desplazamiento.


Funciones básicas de los registros de
desplazamiento
● Un registro de desplazamiento es un arreglo de flip-flops con aplicaciones
importantes en almacenamiento y movimiento de datos. Algunos
movimientos básicos de datos se muestran a continuación.

Data in

Data in Data out Data out Data in Data out

Serial in/shift right/serial out Serial in/shift left/serial out Parallel in/serial out

Data in

Data in

Data out Data out


Serial in/parallel out Parallel in/parallel out Rotate right Rotate left
Registros de desplazamiento con entrada
y salida serie

● Los registros de desplazamiento están disponibles en la forma de circuitos


integrados o bien, pueden ser construidos mediante flip-flops como muestra
la figura con un registro de datos seriales de entrada y salida de 5 bits.
● Cada pulso de reloj moverá un bit de entrada al siguiente flip-flop. El
ejemplo muestra como se mueve el bit “1” a través de los biestables.

FF0 FF1 FF2 FF3 FF4


Serial 1 1 1 1 1 1 Serial
data D0 Q0 D1 Q1 D2 Q2 D3 Q3 D4 Q4 data
input output

C C C C C

CLK
CLK
Una aplicación básica

● Un aplicación de los registros de desplazamiento es la conversión de datos


seriales a forma paralela.
● Por ejemplo, asumamos que el número binario 1011 se carga
secuencialmente, un bit a cada pulso de reloj.

Después de 4 pulsos de reloj, los datos están disponibles en la salida paralela.

FF0 FF1 FF2


FF2 FF3
FF3
Serial 1
X
0 1
0 11
0 10 11
data D00
D Q00
Q D11
D Q11
Q D22
D Q22
Q D33
D Q33
Q
input
C
C C
C C
C C
C

CLK
CLK
El registro de desplazamiento
74HC164A
● El 74HC164A es un registro de desplazamiento de la familia CMOS para 8 bits
de entrada serial y salida paralela. El voltaje de alimentación del C.I. puede
ir desde +2.0 y +6.0 V.
(9)
CLR
(8)
CLK
(1)
Serial A
R R R R R R R R
inputs B (2)
C C C C C C C C

S S S S S S S S

(3) (4) (5) (6) (10) (11) (12) (13)

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7
● Una de las dos entradas de datos seriales se podría utilizar como señal de
habilitación para el ingreso al registro de la otra. Si no se necesita una
entrada de habilitación, una de ellas puede conectarse a +Vcc.
● El 74HC164A tiene una entrada asincrónica de limpieza “Clear”. Los datos
ingresan en los flancos de subida de la señal de reloj.
Diagramas de Tiempo del 74HC164A

● A la derecha se muestra CLR

las formas de onda Serial A


características del inputs
B
74HC164A. Observe que
CLK
B actúa como señal de
habilitación activa en Q0

ALTO para el ingreso de Q1


los datos en A. Q2

● Recuerde que en CMOS Q3


Outputs
las entradas no usadas Q4
deberían siempre estar
Q5
conectadas a un nivel
lógico; las salidas no Q6

usadas pueden quedar Q7


abiertas.
Clear Clear
Registros de entrada paralela y
salida serial
● Los registros de desplazamiento se pueden utilizar para convertir datos de
un formato paralelo a una salida serial. A continuación se muestra un
diagrama lógico para este tipo de registros.
D0 D1 D2 D3

SHIFT/LOAD

G1 G5 G2 G6 G3 G7 G4

Serial
D D D D
Q0 Q1 Q2 Q3 data out
C C C C

FF0 FF1 FF2 FF3


CLK
El registro de desplazamiento 74HC165

● El registro 74HC165 es un registro de desplazamiento CMOS de 8 bits de


entrada paralela y una salida serie. El símbolo lógico se muestra abajo.

D0 D1 D2 D3 D4 D5 D6 D7
(11) (12) (13) (14) (3) (4) (5) (6)
(1) (9)
SH/LD SRG 8 Q7
(10)
SER
(15)
CLK INH (2) (7)
CLK C Q7

Las líneas de reloj (CLK) y reloj de inhibición (CLK INH) se conectan a una
puerta OR común, de manera que cualquiera de estas entradas se pueda usar
como una señal de habilitación de reloj activa en BAJO y la otra, como señal
de reloj de entrada. Los datos se cargan asincrónicamente cuando SH/LD está
en BAJO y se mueven a través del registro sincrónicamente cuando SH/LD está
en ALTO y a la vez ocurre un pulso de reloj de subida.
Registro de desplazamiento universal

● Un registro de desplazamiento universal tiene capacidad de entradas y


salidas paralelas y/o seriales. El 74HC194 es un ejemplo de registro de
desplazamiento bidireccional universal de 4 bits.
D0 D1 D2 D3

(3) (4) (5) (6)


(1)
CLR SRG 4
(9)
S0
(10)
S1
(2)
SR SER
(7)
SL SER
(11)
CLK C
(15) (14) (13) (12)

La siguiente diapositiva muestra un


Q0 Q1 Q2 Q3
ejemplo de diagrama de tiempo…
Registro de desplazamiento universal

CLK

Mode S0
control
inputs S1

CLR

Serial SR SER
data
inputs SL SER

D0
Parallel D1
data
inputs D2
D3

Q0

Q1
Parallel
outputs
Q2

Q3
Shift right Shift left Inhibit
Clear Load Clear
Contadores basados en registros de
desplazamiento
● Los registros de desplazamiento pueden formar contadores al hacer re-
circular un patrón de 0s y 1s. Dos contadores basados en registros de
desplazamiento importantes son el contador Johnson y el contador en anillo.

FF0 FF1 FF2 FF3


El contador Johnson se D0 Q0 D1 Q1 D2 Q2 D3 Q3
puede realizar con una C C C C
serie de flip-flops D
Q3 Q3

CLK

… o con una serie de flip- FF0 FF1 FF2 FF3


Q3
J0 Q0 J1 Q1 J2 Q2 J3 Q3
flops J-K. Aquí Q3 y Q3 se
realimentan a las entradas C C C C

Q3
J y K. K0 Q0 K1 Q1 K2 Q2 K3 Q3

CLK
Contador Johnson

Otra vista que ilustra el layout del contador Johnson.


FF0

J0 Q0

“trenza” C

K0 Q0

Q3
Q3
Q3

Q3

K1

J1
C
FF3

FF1
C

Q1

Q1
J3

K3

Q2 K2

Q2 2 J

2 FF
Contador Johnson

● El contador Johnson es útil cuando se necesita una secuencia que cambia


solo un bit a un tiempo pero tiene un número limitado de estados (2n,
donde n = número de etapas).
Las primeras cinco cuentas para un contador Johnson
de 4 bits que está inicialmente en cero es:
CLK Q0 Q1 Q2 Q3
0 0 0 0 0
1 1 0 0 0
2 1 1 0 0
3 1 1 1 0
4 1 1 1 1
5 0 1 1 1
6 0 0 1 1
Cuales son los tres estados que faltan? 7 0 0 0 1
Contador en Anillo

● El contador en anillo también se puede implementar con flip-flops tipo D o JK.

A la derecha se muestra un FF0 FF1 FF2 FF3


Q3
contador en anillo de 4 bits D0 Q0 D1 Q1 D2 Q2 D3 Q3

construido de una serie de flip- C C C C

flops tipo D. Observe la


realimentación. CLK

FF0 FF1 FF2 FF3


Q3
Al igual que el contador J0 Q0 J 1 Q1 J 2 Q2 J 3 Q3

Johnson, también se puede C C C C

implementar con flip-flops J-K. K0 Q0 K1 Q1 K2 Q2 K3 Q3


Q3

CLK
Contador en Anillo

● Esta nueva vista también ilustra el contador en anillo (el reloj no está
dibujado). EL nombre se deriva de esta característica de conexión.
FF0
La desventaja de este contador es que J0 Q0
debe ser precargado con el patrón
C
deseado (usualmente un único 0 o 1) y
siempre tiene más pocos estados que el
K0 Q0

contador Johnson (n, donde n = número


de flip-flops).

Q3
Q3
Q3

Q3

K1

J1
C
FF3

FF1
C

Q1

Q1
J3

K3
Q2 K2

Q2 2 J

2 FF
Contador en Anillo

● Un patrón común en un contador en anillo es que se puede cargar con un único


1 o 0. Esto se ilustra a continuación para un contador en anillo de 8 bits.

CLK 1 2 3 4 5 6 7 8 9 10

Q0

Q1

Q2

Q3

Q4

Q5

Q6

Q7
Aplicaciones de los registros de
desplazamiento
● Los registros de desplazamiento se pueden utilizar para retardar una señal
digital en una cantidad predeterminada.
Un registro de desplazamiento de 8-bit entrada/salida
serial tiene un reloj de 40 MHz. Cual es el retardo total a
través del registro?
A SRG 8 Q7
Data in Data out
B

El retardo para cada reloj CLK C


Q7
40 MHz
es 1/40 MHz = 25 ns
25 ns
El retardo total es CLK
8 x 25 ns = 200 ns
Data in

Data out
td = 200 ns
Palabras claves de la UNIDAD

Registro Uno o más flip-flops usados para almacenar o mover datos.

Etapa Un elemento de almacenamiento en un registro.


Mover Mover datos binarios desde una etapa a otra dentro de un
registro u otro dispositivo de almacenamiento o mover datos
binarios hacia dentro o fuera de un dispositivo.

Cargar Ingresar datos a un registro de desplazamiento.

Bidireccional Que tiene dos direcciones. En un registro de desplazamiento


bidireccional, los datos almacenados se pueden mover de
derecha a izquierda.

Anda mungkin juga menyukai