Registros de Desplazamiento Universales: Entrada/Salida Paralela con Control Bidireccional de Desplazamiento
Un registro de desplazamiento paralelo-entrada/paralelo-salida acepta datos en paralelo, los desplaza y presenta el resultado desplazado, como se ilustra a continuación.
Un registro de desplazamiento universal amplía esta capacidad admitiendo carga paralela, desplazamiento serial y opciones de control adicionales como dirección y modos de retención.

En la figura superior, cuatro bits de datos se aplican a las entradas paralelas DA DB DC DD. Las señales de control de modo determinan si los datos se cargan en paralelo o se desplazan una posición por pulso de reloj.
Muchos dispositivos permiten que la misma línea de control seleccione la dirección del desplazamiento. Cada transición de reloj mueve los datos un bit; la salida desplazada está disponible en QA QB QC QD. Los pines "data-in" y "data-out" facilitan la cascada de múltiples registros.
Aunque el diagrama muestra solo cascada por desplazamiento a la derecha, las cascadas por desplazamiento a la izquierda pueden implementarse añadiendo un segundo par de pines "data-in" y "data-out" orientados a la izquierda.
La estructura interna de un registro paralelo-entrada/paralelo-salida con desplazamiento a la derecha se muestra a continuación. Los buffers tri-estado son opcionales pero comunes en componentes comerciales.

El 74LS395 es un ejemplo principal que coincide estrechamente con el diagrama conceptual anterior. A continuación se presenta un resumen abreviado de su hoja de datos; la hoja de datos completa se enlaza más adelante en este capítulo.
LD/SH’ controla el multiplexor que selecciona entre carga paralela y desplazamiento serial. Cuando LD/SH’ = 1, las cuatro compuertas AND superiores habilitan las entradas paralelas DA DB DC DD para entrar en los cuatro flip-flops. La entrada de reloj está invertida, por lo que los datos se atrapan en el flanco negativo.
Con el registro cargado, establecer LD/SH’ = 0 activa la ruta de desplazamiento, moviendo el contenido un bit a la derecha en cada flanco negativo de reloj. Tras cuatro relojes, los datos habrán salido del registro a menos que se cascadéen a través de QD’ a la entrada serial de otro dispositivo.

El diagrama muestra un patrón de datos cargado en QA QB QC QD y luego desplazado una posición a la derecha. El bit entrante es desconocido (marcado X); conectar a tierra el pin SER haría que el nivel lógico de entrada fuera claro.
El desplazamiento de dos relojes (desplazamiento de dos bits) se ilustra en la siguiente figura.

Estas referencias esquemáticas se mantienen concisas porque la funcionalidad esencial ya se cubre en las figuras posteriores, más detalladas.

Para una configuración de desplazamiento a la izquierda, los flip-flops deben recablearse, intercambiando los pines de entrada serial (SI) y salida serial (SO). La ruta de datos se convierte en: SI → QC → QB → QA → SO, que es la inversa de la secuencia de desplazamiento a la derecha.

Los dispositivos comerciales suelen implementar el desplazamiento bidireccional añadiendo una línea de control (L/R). El siguiente esquema demuestra un registro hipotético que puede desplazar a izquierda o derecha según la señal L/R.

Con L/R = 1, el multiplexor habilita la ruta de desplazamiento a la derecha; L/R = 0 selecciona la ruta de desplazamiento a la izquierda. La entrada de datos serial (SR para derecha, SL para izquierda) alimenta el primer flip-flop, y la salida serial (cascada SR o cascada SL) proporciona el dato que sale del registro.

Para combinar carga paralela con desplazamiento bidireccional, se introduce una tercera línea de control (SH/LD’). Cuando SH/LD’ = 0, el multiplexor de carga pasa las entradas paralelas DA DB DC a los flip-flops en el siguiente reloj. Establecer SH/LD’ = 1 deshabilita la ruta de carga y reactiva el control de desplazamiento determinado por L/R.
Implementaciones comerciales, como el 74ALS299, añaden una compuerta AND adicional para soportar un modo de retención (S1 S0 = 00), que recarga continuamente la salida en cada reloj, preservando los datos almacenados.
Vea la siguiente sección para el esquema del 74ALS299.
Dispositivos Paralelo-Entrada / Paralelo-Salida y Universales
Texas Instruments ofrece una gama de registros de desplazamiento serial-entrada/paralelo-salida. Consulte los enlaces a continuación para las hojas de datos completas.
- SN74LS395A – Registro de desplazamiento paralelo-entrada/paralelo-salida de 4 bits
- SN74ALS299 – Registro de desplazamiento universal paralelo-entrada/paralelo-salida de 8 bits

El esquema interno del SN74LS395A se muestra arriba. El símbolo ANSI se presenta en la siguiente figura.

El dispositivo de 4 bits está limitado por el encapsulado DIP de 16 pines, que debe acomodar los cuatro pines de datos, pines de control y pines de alimentación.
Las señales de control clave incluyen:
- CLR’ – Reset activo en bajo para todas las etapas.
- OC’ – Habilitación activa en bajo para los cuatro buffers de salida tri-estado.
- LD/SH’ – Multiplexa entre carga paralela (M1) y desplazamiento serial (M2).
- C3/2 – Un reloj de flanco negativo que controla tanto los datos paralelos (vía señales prefijadas 3) como los datos seriales (vía señales prefijadas 2).
Los buffers tri-estado son controlados por la señal EN4 (bajo habilita los cuatro buffers). Cuando QD’ se cascada al pin SER de otro dispositivo, los datos pueden desplazarse a través de múltiples registros.

La tabla anterior, extraída de la hoja de datos del 74ALS299, resume el funcionamiento del registro de desplazamiento universal de 8 bits. Las entradas de modo S1 y S0 seleccionan una de cuatro funciones:
- 01 – Desplazamiento a la izquierda
- 10 – Desplazamiento a la derecha
- 11 – Carga paralela
- 00 – Retención (recarga continua de la salida en cada reloj)
En modo de retención, el bus de datos se pone en alta impedancia para permitir que dispositivos externos controlen el bus mientras el registro preserva su contenido.
Cuando S1 S0 = 00, 01, o 10 y las señales de habilitación de salida OE2’, OE1’ están en bajo, las salidas del registro de desplazamiento se conducen al bus.

La secuencia de desplazamiento a la derecha (S1 S0 = 10) es: SR → QA → QB → QC → QD → QE → QF → QG → QH (QH’).
La secuencia de desplazamiento a la izquierda (S1 S0 = 01) es: (QA’) → QA ← QB ← QC ← QD ← QE ← QF ← QG ← QH (QSL’).
Los buffers tri-estado pueden deshabilitarse activando OE2’ u OE1’; el contenido interno del registro permanece inalterado pero no es visible en los pines de salida.

El símbolo ANSI anotado aclara las convenciones de nomenclatura usadas en la hoja de datos. Observe que los bits de modo S0 S1 aparecen en orden inverso respecto a la tabla anterior, una particularidad de la documentación oficial.
Aplicaciones Prácticas
El siguiente ejemplo demuestra cómo un registro de desplazamiento universal puede consolidar un teclado remoto y una pantalla LED en un único dispositivo para un sistema de alarma.

En el diagrama, el teclado y la pantalla están alojados en la misma carcasa. Los datos del teclado se cargan en paralelo en el registro de desplazamiento en un único pulso de reloj, y luego se desplazan serialmente a la caja principal de alarma. Simultáneamente, los datos LED desde la caja principal se cargan serialmente en el registro para controlar los LEDs.

Ocho LEDs y resistencias limitadoras de corriente se conectan a los ocho pines E/S del SN74ALS299. Los LEDs solo pueden controlarse en Modo 3 (S1 = 0, S0 = 0) cuando las habilitaciones tri-estado OE1’ y OE2’ están conectadas a tierra, habilitando permanentemente las salidas durante los Modos 0, 1 y 2. Si el parpadeo durante el desplazamiento es indeseable, las habilitaciones pueden vincularse a los bits de modo para que los LEDs se enciendan solo en modo de retención.
Durante la carga paralela, establecer S0 = 1 (lógica 0 tras inversión) activa los buffers tri-estado para llevar los contactos del interruptor a tierra. Los contactos abiertos son llevados a alto por la red resistencia-LED, creando un nivel lógico alto claro cuando no se presiona ninguna tecla.
En el instante t0, cuando tanto S0 como S1 están en alto, los datos del interruptor se cargan en el registro. Después, ocho pulsos de reloj (t0 a t8) desplazan los datos de cierre del interruptor hacia fuera vía QH’, mientras nuevos datos LED se desplazan hacia dentro en SR del registro.
Tras el octavo desplazamiento (t8), S1 pasa a bajo, colocando el registro en modo de retención (S1 S0 = 00). Los datos almacenados permanecen estables incluso si se aplican relojes adicionales.
La generación de reloj puede gestionarse por un microcontrolador si la frecuencia es inferior a 100 kHz; para frecuencias más altas, lógica dedicada puede producir los relojes y señales de modo necesarios.
Hojas de Trabajo Relacionadas:
- Hoja de Trabajo de Registros de Desplazamiento
Tecnología Industrial
- Entendiendo Protocolos de Red: De Capa Física a Arbitraje Avanzado
- Por Qué Importa la Memoria Digital
- Microprocesadores: La Evolución de la Computación con Programa Almacenado
- Datos Completos de Op‑Amps: Hojas de Datos National Semiconductor y CA3130
- Umbrales de Choque Eléctrico y Resistencia Corporal: Datos Expertos de MIT, Bussmann y Estudios Dalziel
- Fabricación Basada en Datos: Desbloqueando Eficiencia, Ahorro de Costes e Innovación
- Maximice la ventaja de su organización: Convierta datos en insights estratégicos
- Internet Industrial de las Cosas (IIoT): Definición, alcance e impacto industrial
- Big Data vs IA: La sinergia detrás de la transformación digital
- Elección entre Data Matrix y Códigos QR: ¿Cuál es Mejor para su Negocio?
- Datos de Mantenimiento Explicados: La Clave para una Gestión de Activos Confiable