39. Registres à décalage : Entrée série - Sortie série (SISO)
Un Registre à Décalage est un registre spécialisé qui peut décaler les données stockées à gauche ou à droite d'une position à chaque impulsion d'horloge.
Transfert de Données en Série
Les registres à décalage sont fondamentaux dans la gestion de la communication de données en série, où les données sont transférées un bit à la fois sur une seule ligne (comme USB ou SPI).
Structure SISO
- Un registre SISO N-bit se compose de N Bascules D connectées dans une simple chaîne en cascade.
- La sortie ($Q_i$) d'une Bascule devient l'entrée ($D_{i+1}$) de la Bascule suivante.
- Les données sont entrées séquentiellement (Entrée Série, $D_{in}$) dans la première Bascule.
- Les données sortent séquentiellement de la dernière Bascule (Sortie Série, $Q_{out}$).
Fonctionnement
Pour charger un mot N-bit, cela prend N impulsions d'horloge. À chaque impulsion d'horloge, le premier bit est chargé, et tous les bits existants se décalent d'une position vers le bas de la chaîne.
Exemple : Pour charger 1011 (4 bits) :
| Impulsion d'Horloge | Entrée | $Q_3 Q_2 Q_1 Q_0$ |
|---|---|---|
| Début | - | 0000 |
| 1 | 1 | 1000 |
| 2 | 1 | 1100 |
| 3 | 0 | 0110 |
| 4 | 1 | 1011 |
Les données sont disponibles à $Q_0$ après 4 cycles d'horloge.