Un registre à décalage consiste en une chaîne de bascules, la sortie de l’une reliée à l’entrée de la suivante. La figure ci-dessous montre un registre à décalage de quatre bits. À chaque coup d’horloge, l’entrée est insérée dans la première bascule, à droite, et le contenu du registre est décalé d’une position vers la gauche. La sortie provient de la dernière bascule à droite.
Registre à décalage 4 bits
En utilisant un multiplexeur quatre-vers-un pour sélectionner ce qui sera inséré dans une bascule, il est possible de concevoir un registre à décalage universel. Les différentes opérations sont le maintien, le décalage à droite avec entrée \(G\), le décalage à gauche avec entrée \(D\) et le chargement parallèle, avec les entrées \(I_i, i=1, \ldots, 4\).
Les différentes opérations sont commandées par les deux signaux de sélection, comme indiqué dans le tableau 1.
Sél. | Action |
---|---|
00 | Maintien |
01 | Décalage à droite |
10 | Décalage à gauche |
11 | Chargement parallèle |
Registre à décalage universel
Les registres à décalage sont notamment utilisés pour convertir des données parallèles en données sérielles et vice versa, des opérations très utiles dans le contexte d’interfaces de communication. On peut également s’en servir pour faire des multiplications ou divisions par deux, comme on l’a vu précédemment.