Registradores de deslocamento
Um registrador de deslocamento é um dispositivo eletrônico usado principalmente para armazenar e manipular dados em sistemas digitais, como computadores e circuitos integrados. Ele consiste em uma série de flip-flops (elementos de armazenamento binário) conectados em cadeia, permitindo que os dados sejam deslocados através deles. As principais funções de um registrador de deslocamento incluem:
- Armazenamento de dados: Registradores de deslocamento podem armazenar uma sequência de bits, geralmente com a mesma largura que o número de flip-flops presentes no circuito.
- Deslocamento de bits: A principal função de um registrador de deslocamento é deslocar os bits armazenados nele. Dependendo da configuração, os bits podem ser deslocados para a esquerda ou para a direita. Isso pode ser útil para manipular dados, como multiplicação e divisão por potências de dois ou para implementar algoritmos específicos.
- Expansão e compressão de dados: Registradores de deslocamento podem ser usados para expandir ou comprimir dados em sistemas digitais, como na conversão de dados em paralelo para dados em série (conversão paralelo-serial) e vice-versa (conversão serial-paralelo).
- Bufferização e transmissão de dados: Registradores de deslocamento podem ser usados como buffers temporários para armazenar e transmitir dados entre diferentes partes de um sistema digital. Eles são frequentemente usados em interfaces de comunicação, como UART, SPI e I2C.
- Contagem e divisão de frequência: Em alguns casos, registradores de deslocamento podem ser configurados para funcionar como contadores binários ou divisores de frequência, úteis em aplicações de temporização e geração de clock.
- Implementação de máquinas de estados: Registradores de deslocamento com retroalimentação linear (LFSR) podem ser usados para implementar sequências pseudoaleatórias e máquinas de estados finitos, úteis em criptografia, compressão de dados e outras aplicações.
Para analisar melhor essas funções veja a figura a seguir:
Figura 1 - Mecanismo de funcionamento de um registrador de deslocamento

Conversor Série-Paralelo
Analise o circuito conversor série-paralelo (Figura 1)
Figura 2 - Conversor Série-Paralelo

Quando iniciado, as saídas estão zeradas “0”, ou seja, nenhuma saída paralela. Se um “1” lógico for conectado ao pino de entrada de DATA do FFA, no primeiro pulso de clock a saída do FFA e, portanto, o QA resultante será definido como HIGH para “1” lógico com todas as outras saídas ainda permanecendo LOW na lógica “0”. Suponha agora que o pino de entrada DATA do FFA retornou LOW novamente para o “0” lógico, dando-nos um pulso de dados ou 0-1-0.
Figura 3 - Forma das ondas de um conversor série-paralelo

O segundo pulso do clock mudará a saída de FFA para lógico “0” e a saída de FFB e QB para HIGH, pois sua entrada D tem o nível lógico “1” do QA. A lógica “1” agora foi movida ou “deslocada” um lugar ao longo do registro para a direita. Em suma, o efeito de cada pulso clock é deslocar o conteúdo dos dados de cada estágio para a direita.
Conversor Paralelo-Serial