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: “shift registers” (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 /
Parallel Output
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 Q3)
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 Q0 a Q7
- Hay dependencia de 1D (Q0) 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 G1, G2, G3, G4)
- Desplazamiento de datos: SHIFT = 1 (activa G5, G6, G7)
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 Q3 (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: D0D1D2D3 con S0 = S1 = 1
- Desplazamiento a derecha: S0 = 1, S1 = 0 (datos
por SR SER)
- Desplazamiento a izquierda: S0 = 0, S1=1 (datos
por SL SER)
Registro
bidireccional
universal de 4 bits
23
Registros Bidireccionales
• Ejemplo: registro bidireccional de 4 bits
- = 1: desplazamiento de datos a la derecha (activa G1, G2, G3, G4)
- = 1: desplazamiento de datos a la izquierda (activa G5, G6, G7, G8)
24
Registros Bidireccionales
• Ejemplo: registro bidireccional de 4 bits
Diagrama de tiempos asumiendo Q0=1, Q1=1, Q2=0, Q3=1 y 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 negada del último flip-flop se realimenta al primer flip-flop
- Efecto: “llena” de 1s
• En general, n flip-flops producirá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-flop se realimenta al primer flip-flop
- Usa un flip-flop por 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 Q0 se 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 PCs procesan 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 Arduino 1): tiene 1 UART
- ATmega2560 (en Arduino Mega): 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
• T.L. Floyd, Digital Fundamentals, 11th ed, Edinburgh Gate, England:
Pearson Education Limited, 2015 (Capítulo 8)
Referencias
40

10 registros

  • 1.
    Circuitos Digitales: 2017-2 -Capítulo 10 - Registros de Desplazamiento Prof. Oscar E. Ramos, Ph.D. (11 de noviembre del 2017)
  • 2.
    2 Objetivos • Comprender lasformas básicas de desplazamiento de datos en los registros de desplazamiento
  • 3.
    3 Contenido 1. Introducción 2. Registrossegún entradas/salidas 3. Registros bidireccionales 4. Contadores basados en registros 5. Aplicaciones
  • 4.
    4 Introducción • Registro - Esun 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.
    5 Introducción • Registro dedesplazamiento - Es un registro que principalmente desplaza bits a través de los flip-flops (que usan el mismo clock) - En inglés: “shift registers” (SRG) - Ejemplo: - Uso: almacenamiento y transferencia de datos - Normalmente no posee una secuencia de estados predefinida Ejemplo: Entrada serial Salida paralela
  • 6.
    6 Introducción • Registro dedesplazamiento - Movimientos básicos de datos
  • 7.
    7 Introducción • Registro dedesplazamiento - Movimientos básicos de datos
  • 8.
    8 Contenido 1. Introducción 2. Registrossegún entradas/salidas 3. Registros bidireccionales 4. Contadores basados en registros 5. Aplicaciones
  • 9.
    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 / Parallel Output
  • 10.
    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.
    11 Registros según Entradas/Salidas •Ejemplo: - Almacenamiento del dato “1010” comenzando por el LSB - Salida de los datos (en Q3) a) Entrada serial / Salida serial 1010
  • 12.
    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.
    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.
    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.
    15 Registros según Entradas/Salidas •Ejemplo de CI: 74XX164 (registro SIPO de 8 bits) - Diagrama esquemático: b) Entrada serial / Salida paralela
  • 16.
    16 Registros según Entradas/Salidas •Ejemplo de CI: 74XX164 - CLR: clear - Salidas: Q0 … Q7 - Entradas: A, B b) Entrada serial / Salida paralela
  • 17.
    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 Q0 a Q7 - Hay dependencia de 1D (Q0) en C1
  • 18.
    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 G1, G2, G3, G4) - Desplazamiento de datos: SHIFT = 1 (activa G5, G6, G7) c) Entrada paralela / Salida serial
  • 19.
    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 Q3 (proceso de desplazamiento de datos) c) Entrada paralela / Salida serial
  • 20.
    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.
    21 Contenido 1. Introducción 2. Registrossegún entradas/salidas 3. Registros bidireccionales 4. Contadores basados en registros 5. Aplicaciones
  • 22.
    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: D0D1D2D3 con S0 = S1 = 1 - Desplazamiento a derecha: S0 = 1, S1 = 0 (datos por SR SER) - Desplazamiento a izquierda: S0 = 0, S1=1 (datos por SL SER) Registro bidireccional universal de 4 bits
  • 23.
    23 Registros Bidireccionales • Ejemplo:registro bidireccional de 4 bits - = 1: desplazamiento de datos a la derecha (activa G1, G2, G3, G4) - = 1: desplazamiento de datos a la izquierda (activa G5, G6, G7, G8)
  • 24.
    24 Registros Bidireccionales • Ejemplo:registro bidireccional de 4 bits Diagrama de tiempos asumiendo Q0=1, Q1=1, Q2=0, Q3=1 y entrada serial = 0
  • 25.
    25 Contenido 1. Introducción 2. Registrossegún entradas/salidas 3. Registros bidireccionales 4. Contadores basados en Registros 5. Aplicaciones
  • 26.
    26 • Son registrosde 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.
    27 • Características: - Esun registro de desplazamiento (serial) - La salida negada del último flip-flop se realimenta al primer flip-flop - Efecto: “llena” de 1s • En general, n flip-flops producirán un módulo = 2n a) El Contador Johnson Contadores basados en Registros
  • 28.
    28 • Características - Esun registro de desplazamiento (serial) - La salida del último flip-flop se realimenta al primer flip-flop - Usa un flip-flop por 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.
    29 • Ejemplo 1: Secuenciapara un contador ring de 10 bits donde Q0 se inicializa con “1” b) El Contador en Anillo (ring) Contadores basados en Registros
  • 30.
    30 • Ejemplo 2: Diagramade tiempo para un contador ring de 10 bits inicializado a 1010000000 b) El Contador en Anillo (ring) Contadores basados en Registros
  • 31.
    31 Contenido 1. Introducción 2. Registrossegún entradas/salidas 3. Registros bidireccionales 4. Contadores basados en registros 5. Aplicaciones
  • 32.
    32 Aplicaciones • Los registrosse encuentran en muchos tipos de aplicaciones • Se usan extensamente en el diseño de microcontroladores y microprocesadores
  • 33.
    33 Aplicaciones • Provee retardoen 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.
    34 Aplicaciones • Transmisión serialde 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 PCs procesan datos de forma paralela - Se requiere convertir datos entre serial y paralelo Convertidor de datos serial a paralelo
  • 35.
    35 Aplicaciones • Circuito paraconversión serie a paralelo • Formato de entrada: Convertidor de datos serial a paralelo
  • 36.
    36 Aplicaciones Diagrama de tiempodel proceso de conversión serial a paralelo (del circuito anterior) Convertidor de datos serial a paralelo
  • 37.
    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 Arduino 1): tiene 1 UART - ATmega2560 (en Arduino Mega): tiene 4 UARTs Transmisor y Receptor Asíncrono Universal (UART)
  • 38.
    38 Aplicaciones • Contiene: - 1conversor serial a paralelo - 1 conversor paralelo a serial Transmisor y Receptor Asíncrono Universal (UART) Datos paralelos Datos seriales
  • 39.
    39 Resumen • Los registrosde 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
  • 40.
    • T.L. Floyd,Digital Fundamentals, 11th ed, Edinburgh Gate, England: Pearson Education Limited, 2015 (Capítulo 8) Referencias 40