¿Por qué necesitamos un registro de desplazamiento en electrónica digital?

Muchas razones, muchas de las cuales ya se han mencionado.

1) En serie, en paralelo. En serio, solo usar un registro de desplazamiento es mucho más fácil, ocupa mucho menos área y puede operar un poco más rápido que usar la lógica para enviar bits a registros que no se desplazan para pasar de una señal en serie a una en paralelo.

Concepto: a medida que entran los bits en serie, llegan a una sola entrada. Esa entrada se pone en el bit menos significativo del registro de desplazamiento. Cuando se transmite cada bit individual, el registro de desplazamiento solo transfiere lo que está en la ubicación de bit menos significativa N a la ubicación de bit menos significativo N-1. Es como si cada parte nueva empujara a las otras para hacer espacio.

Fuente de la imagen: registro de desplazamiento en serie y en paralelo
Tan pronto como la señal en serie termine de llegar, puede leer la entrada como un número entero (o como lo haya codificado).

2) Entrada en paralelo, salida en serie. Es el serial-in-parallel-out trabajando hacia atrás. Cada bit a medida que sale se sigue al siguiente bit más significativo.
Fuente de la imagen: Registro de desplazamiento – Registro de desplazamiento paralelo y en serie

3) Generación de números aleatorios.
Esto requiere algo de retroalimentación, pero al colocar inteligentemente algo de lógica entre diferentes bits (es decir, el quinto bit es igual al cuarto bit AND con el segundo bit), puede usar algo muy similar a un registro de desplazamiento para crear un generador de números pseudoaleatorio .
Fuente de la imagen: Rutina de generación de números pseudoaleatorios para el microprocesador MAX765x

Resulta que son excelentes para una variedad de usos, cada vez que desee que una secuencia de encendido / apagado gire o cambie.

Los registros de desplazamiento se pueden usar para el siguiente propósito:

  1. Registros de salida serie en paralelo: para recibir datos en serie y presentarlos en un formato paralelo
  2. Registros de salida serie paralela de entrada: para recibir datos en formato paralelo y transmitirlos en serie (bit a bit)
  3. Dividir (desplazamiento a la derecha) o Multiplicar (desplazamiento a la izquierda) un número por 2
  4. Conducción de pantallas LED multiplexadas o rodantes.
  5. Ofrecer un retraso de ciclo de reloj único entre cambios de datos, esto es relevante en el contexto de filtros digitales

etc …

La funcionalidad de registros de desplazamiento se puede lograr utilizando

  1. registros de turnos dedicados o
  2. Operaciones de turno de ALU.

Las operaciones de cambio son una forma más rápida (sin multiplicación) de convertir 2 números MSB y LSB de 8 bits en un número de 16 bits mediante instrucciones como …

sin firmar corto Num16bit;
unsigned char MSB, LSB;

Num16bit = (sin signo corto) ((MSB << 8) + LSB);

Son recuerdos. Agrúpalos y puedes usarlos como recuerdos. Se puede usar un único registro de desplazamiento de 8 bits como multiplicador / divisor digital mediante el desplazamiento de bits a izquierda / derecha.
Se pueden usar para seleccionar un objeto a la vez. es decir, para multiplexación por división de tiempo, operaciones de tiempo compartido. El modelo de cliente / servidor de tiempo compartido de la red informática funciona según ese principio.

registros de desplazamiento:
líneas de retardo, serializadores (tanto SIPO como PISO), contadores de anillo, máquinas de estado, multiplicadores / divisores, etc. Un elemento básico de la electrónica digital.

Varios usos principales, el principal es cuando desea enviar bits por un cable, uno a la vez, como a un dispositivo USB o una pantalla de video. Los bits generalmente comienzan en la memoria de 8, 16, 32 o 64 bits de ancho. El registro de desplazamiento puede repartirlos uno por uno.

Los registros de desplazamiento también pueden hacer cálculos matemáticos simples, como multiplicar o dividir por dos.

También puede usarlos para cifrar o descifrar o filtrar datos, retroalimentando bits de salida a la entrada o a etapas intermedias.

Durante la mayoría de las décadas de 1970 y 1980, casi todas las pantallas de video que vi se alimentaron con bits en serie a través de un registro de desplazamiento 74165.

Registros de desplazamiento, información de seguimiento. Pero lo registra, por lo que se recuerda y luego lo cambia de manera creativa. Cuando está cronometrado, se usan para retrasar una señal x muchas veces. Otro uso es cambiar los datos paralelos a una forma serial que puede acelerar la transmisión. Se utilizan para secuenciar datos para microprocesadores. Y son excelentes para los diseñadores de placas de circuito para reducir la cantidad de cableado necesario.
Piensa en un destornillador en tu caja de herramientas. Muchos usos, pero la forma y el tamaño de las puntas determinan su función óptima, mientras que la longitud del mango determina la fuerza disponible.

Los registros de desplazamiento se utilizan a menudo con el fin de guardar pines en un microcontrolador. Cada microcontrolador tiene un número limitado de pines para entradas y salidas generales (GPIO).

Si un proyecto necesita controlar 16 LED, eso normalmente requeriría 16 pines de un microcontrolador. En el caso de que no tenga 16 pines de E / S disponibles, aquí es donde el registro de desplazamiento es útil. Con dos registros de desplazamiento conectados en serie, podemos realizar la tarea de controlar los 16 LED con solo usar 4 pines de E / S. Esa es una gran diferencia, y puede guardar aún más pines cuanto más registros de desplazamiento haya encadenado.

Del artículo de Wiki sobre registros de desplazamiento:

Uno de los usos más comunes de un registro de desplazamiento es convertir entre interfaces seriales y paralelas. Esto es útil ya que muchos circuitos funcionan en grupos de bits en paralelo, pero las interfaces en serie son más simples de construir. Los registros de desplazamiento se pueden usar como simples circuitos de retardo. Varios registros de desplazamiento bidireccionales también podrían conectarse en paralelo para una implementación de hardware de una pila.

Los registros de desplazamiento se pueden usar para muchas cosas

Lo más obvio es “multiplicar por dos”, que es cómo las computadoras binarias hacen aritmética