Bascules et mémoire
Circuits séquentiels : le passé compte
Un circuit séquentiel a une sortie qui dépend non seulement des entrées présentes, mais aussi de l'état passé du circuit. Il a donc une forme de mémoire.
Toute mémoire numérique — registre de processeur, RAM, cache — est construite à partir d'une brique élémentaire : la bascule (flip-flop en anglais). Une bascule mémorise 1 bit.
La bascule SR (Set-Reset)
La bascule SR est la plus simple. Elle a deux entrées :
- S (Set) : force la sortie Q à 1
- R (Reset) : force la sortie Q à 0
Elle possède deux sorties complémentaires : Q et Q̄ (Q inverse).
| S | R | Q (après) | Q̄ (après) | État |
|---|---|---|---|---|
| 0 | 0 | Q (inchangé) | Q̄ (inchangé) | Mémorisation |
| 1 | 0 | 1 | 0 | Set (mise à 1) |
| 0 | 1 | 0 | 1 | Reset (mise à 0) |
| 1 | 1 | ? | ? | État interdit |
Bascule SR avec 2 portes NAND (entrées actives à l'état bas : S̄, R̄)
La bascule D (Data / Delay)
La bascule D est la plus utilisée en pratique. Elle résout l'état interdit de la SR en forçant R = NOT(S) : une seule entrée D (Data). Elle capture la valeur de D sur le front montant de l'horloge (CLK) et maintient cette valeur jusqu'au prochain front.
| CLK | D | Q (après front montant) |
|---|---|---|
| ↑ | 0 | 0 |
| ↑ | 1 | 1 |
| stable | X | Q (inchangé) |
La bascule JK
La bascule JK est une SR améliorée qui élimine l'état interdit. Quand J=K=1, la sortie bascule (toggle : Q = NOT(Q)). C'est utile pour les compteurs binaires.
| J | K | Q (après) | Mode |
|---|---|---|---|
| 0 | 0 | Q | Mémorisation |
| 1 | 0 | 1 | Set |
| 0 | 1 | 0 | Reset |
| 1 | 1 | NOT Q | Toggle |
L'horloge : le battement cardiaque du circuit
Dans un circuit numérique synchrone, une horloge (CLK) est un signal carré qui alterne régulièrement entre 0 et 1. Tous les éléments séquentiels changent d'état sur le front montant (ou descendant) de ce signal.
- Fréquence : nombre de cycles par seconde (MHz, GHz). Un processeur à 3 GHz effectue 3 milliards de fronts par seconde.
- Période : T = 1/f. À 3 GHz, T ≈ 333 picosecondes.
- Cycle d'utilité : 50% pour un signal carré symétrique.
Signal d'horloge : les bascules agissent sur le front montant (↑)
Le registre à décalage (Shift Register)
N bascules D branchées en cascade forment un registre à décalage : à chaque coup d'horloge, les bits se décalent d'une position vers la droite (ou la gauche). Applications :
- Conversion série/parallèle (entrée 1 bit par coup → sortie N bits simultanés)
- Buffers de données, files d'attente FIFO
- Génération de délais temporels
- Circuit séquentiel : la sortie dépend des entrées ET de l'état passé.
- Bascule SR : Set/Reset, état interdit quand S=R=1.
- Bascule D : capture D sur front montant. La plus utilisée. Pas d'état interdit.
- Bascule JK : comme SR mais J=K=1 → toggle (inverse la sortie).
- Horloge : signal carré synchronisant tous les éléments séquentiels.
- Registre à décalage : N bascules D en cascade → déplace les bits.