Circuitos Digitales: 2017-2
-Capítulo 10 -
Registros de
Desplazamiento
Prof. Oscar E. Ramos, Ph.D.
(11 de noviembre del 2017)
2
Objetivos
•Comprender las formas básicas de desplazamiento
de datos en los registros de desplazamiento
3
Contenido
1.Introducción
2.Registros según entradas/salidas
3.Registros bidireccionales
4.Contadores basados en registros
5.Aplicaciones
4
Introducción
•Registro
-Es un circuito digital con dos funciones básicas:
1.Almacenamiento de datos (“memoria”)
2.Movimiento de datos
-Se basa en flip-flops(1 bit)
-Almacenamiento: a pesar de que desaparece la entrada(D), el registro
mantiene este valor en Q(siempre que no haya un nuevo pulso en CLK)
-Al crearse “arreglos” (etapas), los datos se mueven (desplazan) de una
etapa a otra dentro del registro
Modo
SET
Modo
RESET
5
Introducción
•Registro de desplazamiento
-Es un registro que principalmente desplaza bits a través de los flip-flops
(que usan el mismo clock)
-En inglés: “shiftregisters” (SRG)
-Ejemplo:
-Uso: almacenamiento y transferencia de datos
-Normalmente no posee una secuencia de estados predefinida
Ejemplo:
Entrada serial
Salida paralela
6
Introducción
•Registro de desplazamiento
-Movimientos básicos de datos
7
Introducción
•Registro de desplazamiento
-Movimientos básicos de datos
8
Contenido
1.Introducción
2.Registros según entradas/salidas
3.Registros bidireccionales
4.Contadores basados en registros
5.Aplicaciones
9
Registros según Entradas/Salidas
•Según las entradas/salidas se tiene los siguientes tipos de registros
de desplazamiento:
-De entrada serial / salida serial (SISO)
-De entrada serial / salida paralela (SIPO)
-De entrada paralela / salida serial (PISO)
-De entrada paralela / salida paralela (PIPO)
Ejemplo de notación: SIPO: Serial Input /
ParallelOutput
10
Registros según Entradas/Salidas
•Aceptan datos en forma serial (1 sola línea)y emiten datos en forma
serial (1 sola línea)
-Si se ingresa el dato “1010”, comenzando por el LSB, ¿cómo se almacenan
los valores en el registro?
-¿Cómo salen los datos almacenados?
a) Entrada serial / Salida serial
SRG-4
Símbolo
3
3
11
Registros según Entradas/Salidas
•Ejemplo:
-Almacenamiento del dato “1010”
comenzando por el LSB
-Salida de los datos (en Q
3)
a) Entrada serial / Salida serial
1010
12
Registros según Entradas/Salidas
•Ejemplo: Registro de 5 bits
Realizar el diagrama de tiempos
de cada elemento interno si el
registro inicialmente está a cero.
Esquemático del registro:
a) Entrada serial / Salida serial
13
Registros según Entradas/Salidas
•Aceptan datos en forma serial (1 línea) y emiten los datos en forma
paralela (varias líneas)
•Funcionamiento:
-A medida que los datos ingresan, aparecen (y se desplazan)por las salidas
b) Entrada serial / Salida paralela
outputs
14
Registros según Entradas/Salidas
•Ejemplo
-¿Cuántos pulsos de reloj requiere un registro SIPO de 4 bits para que los
datos de entrada aparezcan en las salidas?
-Dibujar el diagrama de tiempos si el registro inicialmente contiene 1s
b) Entrada serial / Salida paralela
15
Registros según Entradas/Salidas
•Ejemplo de CI: 74XX164 (registro SIPO de 8 bits)
-Diagrama esquemático:
b) Entrada serial / Salida paralela
16
Registros según Entradas/Salidas
•Ejemplo de CI: 74XX164
-CLR: clear
-Salidas: Q0 … Q7
-Entradas: A, B
b) Entrada serial / Salida paralela
17
Registros según Entradas/Salidas
•Ejemplo de CI: 74XX164
-Símbolo lógico ANSI/IEEE:
b) Entrada serial / Salida paralela
-La flecha en C1 indica datos de Q
0a Q
7
-Hay dependencia de 1D (Q
0) en C1
18
Registros según Entradas/Salidas
•Aceptan datos en forma paralela (varias líneas)y emiten los datos en
forma serial (1 línea)
-Carga de datos: = 0 (activa G
1, G
2, G
3, G
4)
-Desplazamiento de datos: SHIFT= 1 (activa G
5, G
6, G
7)
c) Entrada paralela / Salida serial
19
Registros según Entradas/Salidas
•Ejemplo
-Para el siguiente registro PISO de 4 bits y para la entrada mostrada,
determinar el diagrama de tiempos para la salida Q
3(proceso de
desplazamiento de datos)
c) Entrada paralela / Salida serial
20
Registros según Entradas/Salidas
•Aceptan datos en forma paralela (varias líneas)y emiten datos en forma
paralela (varias líneas)
-Luego de un ciclo de reloj (clock)las salidas reproducen las entradas
d) Entrada paralela / salida paralela
21
Contenido
1.Introducción
2.Registros según entradas/salidas
3.Registros bidireccionales
4.Contadores basados en registros
5.Aplicaciones
22
Registros bidireccionales
•Característica:
-Los datos se desplazan a la derecha o a la izquierda
•Ejemplo de IC: 74HC194 (registro bidireccional de 4 bits)
El modo de operación
se realiza mediante
compuertas lógicas
-Entrada paralela: D
0D
1D
2D
3con S
0= S
1= 1
-Desplazamiento a derecha: S
0= 1, S
1= 0(datos
por SR SER)
-Desplazamientoaizquierda:S
0=0,S
1=1(datos
porSLSER)
Registro
bidireccional
universal de 4 bits
23
Registros Bidireccionales
•Ejemplo: registro bidireccional de 4 bits
-prend= 1: desplazamiento de datos a la derecha (activa G
1, G
2, G
3, G
4)
- = 1: desplazamiento de datos a la izquierda (activa G
5, G
6, G
7, G
8)
24
Registros Bidireccionales
•Ejemplo: registro bidireccional de 4 bits
Diagrama de tiempos asumiendo Q
0=1, Q
1=1, Q
2=0, Q
3=1y entrada serial = 0
25
Contenido
1.Introducción
2.Registros según entradas/salidas
3.Registros bidireccionales
4.Contadores basados en Registros
5.Aplicaciones
26
•Son registros de desplazamiento con secuencias especiales
-La salida serial se conecta a la entrada serial
•Se llaman “contadores” porque cuentan con secuencias bien
definidas de estados
•Tipos principales:
-Contador Johnson
-Contador en anillo (ring)
Contadores basados en Registros
27
•Características:
-Es un registro de desplazamiento (serial)
-La salida negadadel último flip-flopse realimenta al primer flip-flop
-Efecto: “llena” de 1s
•En general, nflip-flopsproducirán un módulo =2n
a) El Contador Johnson
Contadores basados en Registros
28
•Características
-Es un registro de desplazamiento (serial)
-La salida del último flip-flopse realimenta al primer flip-flop
-Usa un flip-floppor cada estado: “hay una única salida” por cada estado
b) El Contador en Anillo (ring)
Contadores basados en Registros
Contador ring de 10 bits
29
•Ejemplo 1:
Secuencia para un contador ring de 10 bits donde Q
0se inicializa con “1”
b) El Contador en Anillo (ring)
Contadores basados en Registros
30
•Ejemplo 2:
Diagrama de tiempo para un contador ring de 10 bits inicializado a 1010000000
b) El Contador en Anillo (ring)
Contadores basados en Registros
31
Contenido
1.Introducción
2.Registros según entradas/salidas
3.Registros bidireccionales
4.Contadores basados en registros
5.Aplicaciones
32
Aplicaciones
•Los registros se encuentran en muchos tipos de aplicaciones
•Se usan extensamente en el diseño de microcontroladores y
microprocesadores
33
Aplicaciones
•Provee retardo en función a:
-Número de etapas (n)del registro
-Frecuencia del reloj
•Ejemplo
Retardo con un registro de 8 bits y un reloj de 1 MHz
Retardo de Tiempo
34
Aplicaciones
•Transmisión serial de datos
-Reduce el número de cables de transmisión
-Común entre periféricos de sistemas digitales
-Ejemplo:USB (universal serial bus)para conectar PC con impresora, teclado,
escáner, etc.
•Procesamiento paralelo
-Las PCsprocesan datos de forma paralela
-Se requiere convertir datos entre serial y paralelo
Convertidor de datos serial a paralelo
35
Aplicaciones
•Circuito para conversión serie a paralelo
•Formato de entrada:
Convertidor de datos serial a paralelo
36
Aplicaciones
Diagrama de tiempo del
proceso de conversión
serial a paralelo (del circuito
anterior)
Convertidor de datos serial a paralelo
37
Aplicaciones
•UART = Universal Asynchronous Receiver Transmitter
•Función
-Es un “intermediario” entre datos seriales y paralelos
•Usos: en protocolos como RS 232 y RS 485
•Ejemplos:
-ATmega328 (en Arduino1): tiene 1 UART
-ATmega2560 (en ArduinoMega): tiene 4 UARTs
Transmisor y Receptor Asíncrono Universal (UART)
38
Aplicaciones
•Contiene:
-1 conversor serial a paralelo
-1 conversor paralelo a serial
Transmisor y Receptor Asíncrono Universal (UART)
Datos paralelos
Datos seriales
39
Resumen
•Los registros de desplazamiento se usan para el almacenamiento y
desplazamiento de data
•Los registros de desplazamiento consisten de un arreglo de flip-flops
•Un registro de desplazamiento puede manejar entradas y salidas de
tipo serial y paralelo
•Los registros contadores presentan una secuencia definida de
estados
•Las aplicaciones más comunes de los registros de desplazamiento es
la conversión serial/paralelo y paralelo/serial, y como buffers