10M+ Composants Électroniques En Stock
Certifié ISO
Garantie Incluse
Livraison rapide
Pièces difficiles à trouver ?
Nous les trouvons
Demander un devis

Explication des registres de décalage SIPO : structure, fonctionnement, timing et applications

Chv 09 2026
Source: Michael Chen
Parcourir: 1417

Les registres de décalage sont utiles dans les systèmes numériques car ils contrôlent la manière dont les données sont stockées et transférées. Parmi eux, le registre de décalage Serial-In Parallel-Out (SIPO) offre un moyen efficace de convertir l’entrée série en sortie parallèle. Cet article explique sa structure, son fonctionnement au niveau du signal et son comportement de synchronisation.

Figure 1. SIPO Shift Register

Qu’est-ce que le registre de décalage SIPO ?

Un registre de décalage Serial-In Parallel-Out (SIPO) est un circuit numérique qui accepte les données binaires un bit à la fois via une seule entrée série et stocke chaque bit dans une chaîne de bascules. Une fois stockés, tous les bits peuvent être lus ensemble via plusieurs sorties parallèles. Sa fonction principale est de convertir les données série en données parallèles.

Principe de fonctionnement et conversion des données d’un registre de décalage SIPO

Figure 2. Working Principle and Data Conversion of a SIPO Shift Register

Un registre de décalage SIPO fait circuler les données à travers une série de bascules à l’aide de transitions contrôlées par l’horloge, permettant de stocker et d’accéder simultanément à des bits d’entrée séquentiels aux sorties.

Entrée série (SI)

L’entrée série fournit un bit à la fois au premier bascule du registre. Avant que le bord d’horloge actif ne se produise, le bit d’entrée doit être stable afin de pouvoir être capturé correctement. Lorsque le bord de l’horloge arrive, le nouveau bit entre dans la première étape, tandis que les bits déjà stockés passent aux étapes suivantes. Cela crée un transfert étape par étape des données à travers le registre.

Sorties parallèles (Q0, Q1, Q2, ...)

Chaque bascule possède une sortie qui reflète en continu le bit stocké à cette étape. Ces sorties représentent différentes positions de bits, permettant de lire les données stockées sous forme parallèle. Après chaque arête d’horloge, les sorties reflètent les valeurs mises à jour après un court délai de propagation, permettant d’accéder simultanément à tous les bits.

Signal d’horloge (CLK)

Le signal d’horloge contrôle le passage des données dans le registre. Les données ne se déplacent que sur le bord d’horloge défini (montant ou descendant, selon la conception). Puisque toutes les tongs partagent la même horloge, elles réagissent au même événement chronométrage. Entre les bords de l’horloge, les valeurs stockées restent inchangées.

Modes de fonctionnement

Figure 3. Modes of Operation

Alors qu’un registre SIPO de base fonctionne par décalage série, certaines conceptions incluent des fonctionnalités de contrôle supplémentaires qui modifient la manière dont les données sont chargées ou mises à jour.

Mode de changement

En mode décalage, les données entrent dans le registre un bit à la fois via l’entrée série. À chaque impulsion d’horloge, les bits stockés passent étape par étape d’un flip-flop à l’autre tout en maintenant leur séquence. Ce déplacement continu permet de stocker et transférer des données séquentielles dans l’ordre.

Capacité de charge parallèle (dépendante de l’appareil)

Les registres de décalage SIPO standards n’incluent généralement pas de charge parallèle. Cependant, certaines conceptions étendues ou hybrides (comme les registres à décalage universels) permettent de charger des données simultanément dans tous les bascules. Lorsque cette fonctionnalité est présente, un signal de contrôle permet de capturer tous les bits lors d’un seul événement d’horloge, offrant un accès immédiat à l’ensemble complet des données sans plusieurs cycles de décalage.

Exemple étape par étape et comportement de transfert de données

Considérons un registre de décalage SIPO 4 bits commençant à 0000. Une séquence d’entrée série 1011 est appliquée bit par bit. Dans cet exemple, les bits se déplacent vers la position la plus significative, tandis que la position la moins significative contient les données saisies les plus récemment.

Impulsion d’horlogeBit d’entréeÉtat d’enregistrement
Initial0000
110001
200010
310101
411011

Après chaque impulsion d’horloge :

Le nouveau bit d’entrée entre dans la première étape

Les bits précédemment stockés avancent d’une position

Les bits antérieurs se dirigent vers l’étape finale de sortie

Après quatre impulsions, les données complètes 4 bits sont disponibles en parallèle

La continuité de la fréquence remplace les anciens bits stockés par de nouvelles données d’entrée

Après quatre impulsions d’horloge, le registre stocke 1011, et les quatre bits sont disponibles aux sorties parallèles.

Contraintes de timing et problèmes liés au timing

Paramètres de synchronisation

ParamètreDescription
Temps de mise en placeL’entrée doit être stable avant le bord d’horloge
Temps d’attenteL’entrée doit rester stable après le bord d’horloge
Délai de propagationTemps nécessaire pour que les sorties se mettent à jour
Période d’horlogeDoit permettre un stabilisation complète du signal

Effets des violations du calendrier

IssueRésultat
Violation de configurationCapture incorrecte des données
Violation de retenueSorties instables
Fréquence d’horloge excessiveDéplacement incomplet

Erreurs courantes de synchronisation

ErreurImpact
Ignorer les exigences de configuration/maintienFonctionnement peu fiable
Utilisation de signaux d’horloge trop rapidesViolations du timing
Tremblement d’horlogeDéclenchement involontaire

Bonnes pratiques de timing

PratiqueBénéfice
Utiliser une source d’horloge stableComportement de synchronisation cohérent
Respecter les limites de configuration/maintienPrévient les erreurs de données
Gardez la fréquence d’horloge dans des limites sûresFonctionnement fiable
Minimiser les délais de cheminAmélioration de la stabilité du calage

Verrouillage de sortie et cascade

Verrouillage de sortie (contrôle amélioré)

Figure 4. Output Latch

Certains registres de décalage SIPO incluent un étage de verrouillage de sortie séparé qui permet des mises à jour contrôlées des sorties.

OpérationSignalEffet / Bénéfice
Transfert de données via des bascules internesAiguille à décalage (SH_CP)Déplace les données étape par étape sans affecter la sortie
Données stockées transférées à l’étape de sortieHorloge à loquet (ST_CP)Met à jour toutes les sorties en même temps
Entrée de données sérieSaisie de données (SER)Fournit un flux de bits d’entrée

Cette structure empêche l’apparition de données intermédiaires aux sorties et permet des mises à jour synchronisées.

Cascade de plusieurs registres SIPO

Figure 5. Cascading Multiple SIPO Registers

La cascade étend le nombre de sorties en connectant plusieurs registres.

AspectComportementConsidération de conceptionApplication
Chaîne en sérieLa sortie de un alimente la prochaine entréeLe timing devient plus critiqueBroches de sortie expansives
Horloge partagéeTous les registres utilisent la même horlogeAugmentation du délai de propagationRéseaux ou écrans LED
Remplissage séquentielRemplissages de données étape par étapePlus de cycles d’horloge requisSystèmes de contrôle multi-lignes

SIPO vs. Sortie en série (SISO)

Figure 6. SIPO vs. Serial-In Serial-Out (SISO)

FonctionnalitéSIPOSISO
Type d’entréeSérieSérie
Type de sortieParallèleSérie
Accès aux donnéesTous les bits stockés disponibles en même tempsUn bit à la fois
Mouvement des donnéesEntrer en bascule, lire en parallèlePassage via une seule sortie
Utilisation typiqueConversion de donnéesRetard ou transfert de données
Minutage de sortieDisponible après chargementApparaît après un quart complet

Applications des registres à décalage SIPO

Figure 7. Applications of SIPO Shift Registers

Les registres de décalage SIPO sont utilisés lorsque des données série doivent être stockées, converties ou envoyées à plusieurs lignes de sortie simultanément.

• Stockage temporaire des données série avant utilisation parallèle – Ils retiennent les bits série entrants jusqu’à ce qu’un mot de données complet soit disponible.

• Conversion de données série-parallèle – Ils convertissent une entrée bit à la fois en sortie parallèle multi-bits.

• Expansion de sortie pour les signaux de commande numériques – Ils permettent à un système de contrôler plusieurs lignes de sortie en utilisant moins de broches d’entrée.

• Prise en charge du décodage d’adresses – Ils peuvent aider à fournir des bits d’adresse ou de contrôle parallèles pour sélectionner les emplacements mémoire, les dispositifs ou les sections de circuits.

Dispositifs courants de registre à décalage SIPO

Figure 8. SN74ALS164A

• SN74ALS164A – registre de décalage SIPO de base sans verrouillage de sortie ; Mises à jour de sortie immédiate

Figure 9. SN74AHC594

• SN74AHC594 – Inclut un loquet de sortie pour des mises à jour contrôlées

Figure 10. SN74AHC595

• SN74AHC595 – Registres à décalage populaires avec sorties à registre de stockage et tri-états

Figure 11. CD4094

• CD4094 – Dispositif basé sur CMOS avec prise en charge du loquet et de la cascade

Foire aux questions [FAQ]

Comment le délai de propagation affecte-t-il la cascade de plusieurs registres de décalage SIPO ?

Le délai de propagation s’accumule entre les étapes en cascade, ce qui peut provoquer un désalignement temporel entre les données série et l’horloge. À mesure que la longueur de la chaîne augmente, les concepteurs doivent réduire la fréquence d’horloge ou ajouter des marges de temporisation afin d’assurer un bon déplacement des données et une synchronisation stable en sortie.

Pourquoi certains registres de décalage SIPO incluent-ils un loquet de sortie, et quand est-ce nécessaire ?

Un loquet de sortie isole le décalage interne des sorties externes, empêchant l’apparition de données intermédiaires lors des transitions d’horloge. Elle est nécessaire dans des applications telles que le contrôle des LED ou la conduite par affichage, où toutes les sorties doivent se mettre à jour simultanément sans bugs visibles.

Quelles sont les principales limites de l’utilisation d’un registre de décalage SIPO au lieu d’un extenseur GPIO ?

Un registre de décalage SIPO nécessite une horloge continue et un chargement séquentiel des données, ce qui augmente la latence à mesure que la largeur de sortie augmente. Il manque également d’adressabilité et de capacité de lecture en arrière, ce qui le rend moins adapté au contrôle complexe ou bidirectionnel comparé aux expanseurs GPIO utilisant I²C ou SPI.

Comment les contraintes de temps de configuration et de temps de maintien impactent-elles la fiabilité du registre de déplacement SIPO ?

Si les exigences de temps d’installation ou de maintien sont violées, les données d’entrée peuvent ne pas être correctement capturées au bord d’horloge, ce qui entraîne des erreurs de bits ou des sorties instables. Un fonctionnement fiable nécessite un signal d’entrée stable avant et après la transition d’horloge ainsi qu’une fréquence d’horloge permettant un stabilisement complet du signal.

Quand un concepteur doit-il éviter d’utiliser un registre à décalage SIPO dans un système numérique ?

Un registre de décalage SIPO doit être évité lorsqu’un accès aléatoire rapide aux sorties est requis, lorsque la communication bidirectionnelle est requise, ou lorsque les contraintes de synchronisation sont strictes. Dans de tels cas, les interfaces parallèles ou les expanseurs basés sur la communication offrent de meilleures performances et une meilleure flexibilité.