PREVIEW
D Flip-Flop

D Flip-Flop

Memory signal_cellular_alt_2_bar Intermediate schedule 22 min

Interactive Circuit

Bascule D

Vue d'ensemble

  • Objectif : La bascule D est un circuit numérique séquentiel qui stocke un seul bit de données. Elle capture l'état logique à son entrée Data (D) lorsqu'elle est déclenchée par un signal d'horloge.
  • Symbole : La bascule D est représentée par un bloc rectangulaire avec des entrées D, CLK, PRE et CLR, et des sorties Q et Q̅.
  • Rôle dans DigiSim.io : Sert d'élément de mémoire de base pour la construction de circuits séquentiels comme les registres, les compteurs et les machines à états finis.

composant bascule d

Description fonctionnelle

Comportement logique

La bascule D capture la valeur à son entrée D lorsqu'elle est déclenchée par un front d'horloge (front montant), et maintient cette valeur jusqu'au prochain front d'horloge. Elle dispose d'entrées asynchrones de préétablissement (preset) et d'effacement (clear) qui peuvent prendre le pas sur le fonctionnement normal.

Disposition des broches :

  • Pin 0 : D (entrée Data)
  • Pin 1 : CLK (entrée d'horloge)
  • Pin 2 : PRE (Preset — mise à 1 asynchrone)
  • Pin 3 : CLR (Clear — mise à 0 asynchrone)
  • Output 0 : Q (valeur stockée)
  • Output 1 : Q̅ (sortie complémentaire)

Table de vérité :

PRE CLR CLK D Q (suivant) Q̅ (suivant) Opération
X 1 X X 0 1 Effacement asynchrone
1 0 X X 1 0 Preset asynchrone
0 0 0 0 1 Capture de 0 sur l'horloge
0 0 1 1 0 Capture de 1 sur l'horloge
0 0 0 X Q (préc.) Q̅ (préc.) Maintien de l'état précédent
0 0 X Q (préc.) Q̅ (préc.) Maintien de l'état précédent

Remarque : ↑ indique le front montant de l'horloge, ↓ indique le front descendant, X signifie « peu importe », 0 = inactif (LOW), 1 = actif (HIGH)

Priorité des opérations (de la plus haute à la plus basse) :

  1. CLR (Clear) : lorsque CLR=1, Q est forcé à 0 indépendamment des autres entrées
  2. PRE (Preset) : lorsque PRE=1 et CLR=0, Q est forcé à 1 indépendamment des autres entrées
  3. Front d'horloge : lorsque PRE=0 et CLR=0, Q capture D sur le front montant de l'horloge

Entrées et sorties

  • Entrées :

    • D (Data) [Pin 0] : entrée 1 bit qui détermine la valeur à stocker au prochain front d'horloge.
    • CLK (Clock) [Pin 1] : entrée 1 bit déclenchée sur front montant qui contrôle quand la valeur D est échantillonnée.
    • PRE (Preset) [Pin 2] : entrée asynchrone 1 bit qui force Q à 1 lorsqu'elle est active à l'état HIGH.
    • CLR (Clear) [Pin 3] : entrée asynchrone 1 bit qui force Q à 0 lorsqu'elle est active à l'état HIGH (priorité la plus haute).
  • Sorties :

    • Q : sortie 1 bit représentant la valeur stockée.
    • : sortie complémentaire (inversée) de la valeur stockée.

Paramètres configurables

  • Délai de propagation : le décalage temporel entre un front d'horloge et le changement de sortie correspondant.

Représentation visuelle dans DigiSim.io

La bascule D est affichée sous la forme d'un bloc rectangulaire avec des entrées sur le côté gauche (D, CLK, PRE, CLR de haut en bas) et des sorties sur le côté droit (Q, Q̅). Le composant est clairement étiqueté « D FF » pour l'identifier comme une bascule D. L'entrée d'horloge est marquée d'un symbole triangulaire indiquant la sensibilité au front montant. Lorsqu'elle est connectée dans un circuit, les sorties indiquent visuellement leur état logique via les couleurs et les valeurs des fils.

Valeur pédagogique

Concepts clés

  • Logique séquentielle : démontre comment les sorties dépendent à la fois des entrées actuelles et des états précédents.
  • Déclenchement sur front : illustre le concept de transitions d'état contrôlées par horloge.
  • Stockage d'état : montre comment les systèmes numériques stockent et maintiennent l'information d'état.
  • Synchronisation : démontre comment les données peuvent être synchronisées avec un signal d'horloge.

Objectifs d'apprentissage

  • Comprendre comment la bascule D capture et stocke des données binaires.
  • Apprendre le comportement déclenché sur front et son importance dans les circuits séquentiels.
  • Reconnaître la différence entre les opérations synchrones et asynchrones.
  • Appliquer les bascules D à la construction de registres, compteurs et machines à états.
  • Comprendre les exigences temporelles telles que le temps de préétablissement et le temps de maintien.

Exemples d'utilisation / Scénarios

  • Stockage de données : stockage de bits individuels d'information dans des systèmes numériques.
  • Registres : plusieurs bascules D créent des registres qui stockent des valeurs multi-bits.
  • Division de fréquence : configurées de certaines manières, les bascules D peuvent diviser les fréquences d'horloge.
  • Détection de fronts : peuvent être utilisées pour détecter les fronts dans les signaux d'entrée.
  • Machines à états : utilisées comme éléments d'état dans les machines à états finis pour le contrôle séquentiel.

Notes techniques

  • Métastabilité : si les temps de préétablissement et de maintien sont violés, la bascule peut entrer dans un état métastable où la sortie est imprévisible.
  • Déclenchement sur front : dans DigiSim.io, la bascule D est déclenchée sur front montant, ce qui signifie qu'elle capture les données sur le front montant du signal d'horloge.
  • Contrôle asynchrone : les entrées PRE et CLR sont actives à l'état HIGH et ont la priorité sur les entrées synchrones d'horloge et de données. CLR a une priorité plus élevée que PRE.
  • Priorité des signaux de contrôle : l'entrée CLR prend toujours le pas sur PRE et les entrées synchronisées. Lorsque CLR=1, la sortie est forcée à 0. Lorsque PRE=1 et CLR=0, la sortie est forcée à 1.
  • Fonctionnement normal : lorsque PRE et CLR sont tous deux à 0 (inactifs), la bascule fonctionne normalement en capturant l'entrée D sur les fronts montants d'horloge.

Méthodes d'implémentation

  1. Configuration maître-esclave

    • Deux verrous en cascade (maître et esclave)
    • Le maître capture les données, l'esclave met à jour la sortie
    • Sensibilité au niveau avec comportement déclenché par impulsion
    • Empêche les rétroactions indésirables pendant les transitions d'horloge
    • Courante dans les conceptions plus anciennes ou plus simples
    • Nécessite des phases d'horloge non chevauchantes pour un fonctionnement fiable
    • Plus immunisée aux parasites d'horloge que les verrous simples
    • Typique des premières implémentations TTL
  2. Conception déclenchée sur front

    • Réponse directe au front d'horloge (montant ou descendant)
    • Utilise une circuiterie interne de génération d'impulsions
    • Plus fiable dans les systèmes synchrones complexes
    • Échantillonnage précis des données au moment de la transition d'horloge
    • Standard moderne pour la plupart des systèmes numériques
    • Circuiterie interne plus complexe
    • Meilleure immunité au bruit d'entrée
    • Dominante dans les implémentations CMOS contemporaines
  3. Implémentation à portes de transmission CMOS

    • Utilise des portes de transmission comme commutateurs
    • Consommation électrique plus faible
    • Généralement déclenchée sur front
    • Délais de propagation équilibrés
    • Efficace dans les processus CMOS modernes
    • Bien adaptée aux applications à faible consommation
    • Bonne immunité au bruit
    • Courante dans les circuits intégrés modernes
  4. Implémentation par circuit intégré

    • Circuits intégrés bascules dédiés
    • Exemples : 7474 (double bascule D), 74175 (quadruple bascule D)
    • Diverses fonctionnalités : effacement, preset, plusieurs unités par boîtier
    • Disponible dans différentes familles logiques
    • Caractéristiques de timing et de charge bien définies
    • Interfaces et brochages standard
    • Utilisée dans le prototypage et le breadboarding
    • Fonctionnement fiable dans les conditions spécifiées
  5. Implémentation FPGA/ASIC

    • Intégrée dans les cellules logiques FPGA et les bibliothèques ASIC
    • Optimisée pour la technologie cible
    • Peut inclure des fonctionnalités supplémentaires (clock enable, etc.)
    • Tire parti des ressources matérielles dédiées
    • Facilement configurable pour des exigences spécialisées
    • Intégrée à la logique combinatoire
    • Approche moderne pour les systèmes numériques complexes
    • Timing géré soigneusement par les outils de conception
  6. Implémentation à signalisation différentielle

    • Utilise la signalisation différentielle pour l'horloge et parfois les données
    • Immunité au bruit plus élevée
    • Meilleures performances à hautes fréquences
    • Courante dans les applications haute vitesse
    • Plus complexe mais plus fiable
    • Utilisée dans les systèmes haute performance spécialisés
    • Peut utiliser une logique en mode courant en interne
    • Nécessite une gestion soigneuse de l'intégrité du signal
  7. Variantes basse consommation

    • Spécialisées pour une consommation électrique minimale
    • Capacités de gating d'horloge
    • Activité de commutation interne réduite
    • Modes power-down ou de rétention
    • Utilisées dans les appareils alimentés par batterie
    • Peuvent sacrifier la vitesse pour l'efficacité énergétique
    • L'implémentation peut inclure des domaines de puissance spéciaux
    • Critiques pour les applications à contraintes énergétiques

Applications

  1. Stockage de données et registres

    • Stockage temporaire de données
    • Registres à décalage pour le déplacement de données
    • Registres de données parallèles
    • Verrouillage de port d'entrée/sortie
    • Stockage de paramètres
    • Registres de configuration
    • Drapeaux d'état
  2. Synchronisation

    • Croisement de domaine d'horloge
    • Résolution de métastabilité
    • Alignement de signaux
    • Capture de données provenant de sources asynchrones
    • Synchronisation de bus
    • Gestion du timing d'interface
    • Synchronisation d'impulsions
  3. Compteurs et minuteurs

    • Compteurs binaires pour le comptage d'événements
    • Diviseurs de fréquence
    • Séquenceurs d'état
    • Génération de timing
    • Éléments de retard
    • Timing de contrôle de processus
    • Surveillance de timeout
  4. Machines à états

    • Logique de contrôle séquentielle
    • Implémentation de protocoles
    • Séquencement d'algorithmes
    • Décodage d'instructions
    • Unités de contrôle système
    • Séquenceurs pilotés par événements
    • Machines à états algorithmiques
  5. Éléments de mémoire

    • Cellules de mémoire SRAM
    • Stockage en mémoire cache
    • Banques de registres
    • Mémoire adressable par contenu
    • Configuration de tables de correspondance (LUT)
    • Mémoire FIFO (First-In-First-Out)
    • Applications de mise en tampon
  6. Traitement du signal

    • Étages de pipeline
    • Filtres numériques
    • Circuits d'échantillonnage-blocage
    • Sérialiseurs/désérialiseurs de données
    • Synthèse de fréquence
    • Modulation numérique
    • Lignes de retard de signal
  7. Interface et communication

    • Communication série (UART, SPI, I²C)
    • Tramage et alignement de données
    • Arbitrage de bus
    • Protocoles d'établissement de liaison (handshaking)
    • Synchronisation de paquets
    • Récupération d'horloge
    • Mise en tampon de données

Limitations

  1. Contraintes temporelles

    • Exigences de temps de préétablissement et de maintien
    • Sensibilité au décalage d'horloge
    • Fréquence de fonctionnement maximale
    • Exigences de largeur d'impulsion minimale
    • Variations de délai de propagation
    • Métastabilité aux violations de timing
    • Exigences de temps de récupération et de retrait
    • Délai horloge-sortie affectant la logique aval
  2. Problèmes de métastabilité

    • États métastables potentiels lors de violations temporelles
    • Temps de résolution imprévisible
    • La probabilité augmente avec la fréquence d'horloge
    • Critique dans les interfaces asynchrones
    • Nécessite des circuits synchroniseurs
    • Peut provoquer des défaillances système
    • Difficile à déboguer
    • Nature statistique de l'occurrence
  3. Considérations de consommation

    • La consommation dynamique augmente avec la fréquence
    • Pics de courant pendant les transitions d'horloge
    • Fonctionnement toujours actif dans la plupart des conceptions
    • Contributeur significatif à la consommation système dans les grandes conceptions
    • Consommation du réseau de distribution d'horloge
    • Génération de chaleur à hautes fréquences
    • Exigences d'intégrité de l'alimentation
    • Besoins de séquencement de mise hors tension
  4. Distribution d'horloge

    • Décalage d'horloge à travers plusieurs bascules
    • Effets de la gigue d'horloge
    • Limitations de fan-out
    • Exigences de tampons d'horloge
    • Complexité de la synthèse de l'arbre d'horloge
    • Gestion des relations de phase
    • Gestion des domaines d'horloge
    • Défis de fermeture de timing
  5. Limitations physiques

    • Surface de silicium consommée
    • Congestion de routage dans les conceptions denses
    • Sensibilité à la température
    • Sensibilité à la tension
    • Effets de vieillissement
    • Susceptibilité environnementale
    • Sensibilité aux radiations
    • Variabilité de fabrication

Détail d'implémentation du circuit

Bascule D de base utilisant des portes NAND

graph LR
    InputD[D Input] --> MasterLatch[Master Latch]
    Clock[Clock] --> MasterLatch
    Clock --> Inverter[Inverter]
    Inverter --> SlaveLatch[Slave Latch]
    
    MasterLatch --> SlaveLatch
    
    SlaveLatch --> OutputQ[Q Output]
    SlaveLatch --> OutputQBar[Q̅ Output]

Fonctionnement : configuration maître-esclave. Le verrou maître capture les données lorsque l'horloge est haute, le verrou esclave transfère lorsque l'horloge est basse (comportement déclenché sur front).

Circuit intégré double bascule D 7474

Configuration des broches :

Pin Signal Description Pin Signal Description
1 PRE1 Preset bascule 1 14 VCC Alimentation (+5 V)
2 D1 Entrée Data 1 13 PRE2 Preset bascule 2
3 CLK1 Entrée d'horloge 1 12 D2 Entrée Data 2
4 CLR1 Effacement bascule 1 11 CLK2 Entrée d'horloge 2
5 Q1 Sortie 1 10 CLR2 Effacement bascule 2
6 Q̅1 Sortie inversée 1 9 Q2 Sortie 2
7 GND Masse (0 V) 8 Q̅2 Sortie inversée 2

Caractéristiques : doubles bascules D déclenchées sur front montant avec preset et effacement.

Implémentation de la bascule D déclenchée sur front

Architecture maître-esclave :

La bascule D déclenchée sur front utilise une configuration maître-esclave avec deux verrous :

  1. Verrou maître : activé lorsque l'horloge est HIGH, capture l'entrée D
  2. Verrou esclave : activé lorsque l'horloge est LOW (inversée), transfère la sortie du maître vers Q
  3. Déclenchement sur front : la sortie ne change que lors de la transition d'horloge (front montant ou descendant)
  4. Rétroaction interne : portes NAND/NOR à couplage croisé créant un stockage bistable

Cette architecture garantit que la sortie ne change qu'une seule fois par cycle d'horloge, fournissant un fonctionnement stable et prévisible dans les systèmes numériques synchrones.

Composants associés

  • Verrou D : version sensible au niveau de la bascule D
  • Bascule JK : bascule plus polyvalente avec fonctionnalités de mise à 1, mise à 0 et basculement
  • Bascule T : bascule à basculement, change d'état à chaque coup d'horloge lorsqu'activée
  • Bascule SR : bascule Set-Reset, élément bistable de base
  • Registre : groupe de bascules pour le stockage multi-bits
  • Registre à décalage : bascules connectées qui décalent les données en série
  • Compteur : bascules connectées avec rétroaction pour le comptage
  • Bascule maître-esclave : bascule à deux étages déclenchée par impulsion
  • Bascule déclenchée sur front : ne réagit qu'au front d'horloge
  • Trigger de Schmitt : fournit des transitions propres pour les signaux d'horloge bruyants

school Parcours d'apprentissage

arrow_back Prérequis

arrow_forward Prochaines étapes

help_outline Foire aux questions

Qu'est-ce qu'une bascule D ?

Une bascule D capture l'entrée D uniquement sur le front d'horloge (généralement montant) et conserve cette valeur jusqu'au prochain front d'horloge. C'est le bloc de construction des registres.

Qu'est-ce que le déclenchement par front ?

Le déclenchement par front signifie que la bascule échantillonne l'entrée uniquement pendant le bref instant de la transition d'horloge (de 0 à 1 pour le front positif), et non lorsque l'horloge est stable HIGH ou LOW.

play_arrow Exécuter le circuit en direct

Voir d'autres composants