Additionneurs et bascules
| English | Français |
|---|---|
| carry/ˈkæri/ | retenue |
| half adder/hɑːf ˈædə/ | demi-additionneur |
| full adder/fʊl ˈædə/ | additionneur complet |
| flip-flop/flɪp flɒp/ | basculier |
| ripple-carry adder/ˈrɪpl ˈkæri ˈædə/ | additionneur à propagation d'addition |
| bistable/baɪˈsteɪbl/ | bistable |
| counters/ˈkaʊntəz/ | compteurs |
| SRAM/ˈesræm/ | SRAM |
| SR flip-flop/ˌes ˈɑː flɪp flɒp/ | Bascule SR |
| JK flip-flop/ˌdʒeɪ ˈkeɪ flɪp flɒp/ | Bascule JK |
| toggle/ˈtɒɡl/ | bascule |
Comment une machine qui ne connaît que le vrai et le faux effectue l'arithmétique
- Un processeur n'a pas d'additionneur au sens d'un objet qui connait les nombres. Il a des portes qui répondent vrai ou faux, et rien d'autre.
- Pourtant $1 + 1 = 10$ résulte de deux portes : un XOR donne le chiffre de somme, un AND donne la retenue. C'est l'unité arithmétique entière en miniature, et en enchaînant des copies de celle-ci, on additionne des nombres de n'importe quelle largeur.
- L'autre moitié d'un ordinateur est la mémoire, et un bit de mémoire est également composé de portes, câblées de sorte que leurs sorties retournent vers leurs entrées et maintiennent l'état.
- Cette leçon porte sur l'additionneur semi (half adder) 半加器, l'additionneur complet (full adder) 全加器 et le bascule (flip-flop) 触发器 qui stocke un bit.
L'additionneur demi
- Un additionneur semi additionne deux bits simples, $A$ et $B$, produisant une somme $S$ et une retenue 进位 $C$.
| A | B | S | C |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 0 | 1 | 1 | 0 |
| 1 | 0 | 1 | 0 |
| 1 | 1 | 0 | 1 |
- Lisez les colonnes : $S$ vaut 1 si exactement une entrée est à 1, c'est-à-dire XOR. $C$ vaut 1 uniquement si les deux sont à 1, c'est-à-dire AND. Donc $S = A \oplus B$ et $C = A \cdot B$.
- Il ignore toute retenue entrante, ce qui explique qu'il ne soit qu'un « demi » additionneur et qu'il ne puisse pas être enchaîné seul.

Deux portes, et l'addition binaire existe
Les portes à l'intérieur d'un additionneur
Le bit de somme d'un demi-additionneur est une porte XOR et sa retenue est une porte AND — alternez A et B et observez la ligne de la table de vérité s'allumer.
Dans un demi-additionneur, quelle porte produit la sortie S ?
$S = A \text{ XOR } B$ (1 lorsque les entrées diffèrent) ; la retenue est $A \text{ AND } B$.
Dans un demi-additionneur, quelle porte unique produit la sortie C ?
C vaut 1 uniquement lorsque les deux entrées valent 1, ce qui correspond à AND. La somme S vaut 1 lorsque exactement une entrée vaut 1, ce qui correspond à XOR.
L'additionneur complet
- Un additionneur complet additionne trois bits : $A$, $B$ et une retenue entrante, produisant une somme et une retenue sortante. $S = A \oplus B \oplus C_{\text{in}}$.
- Il peut être construit à partir de deux additionneurs semi plus une porte OR : le premier additionneur semi ajoute $A$ et $B$, le second ajoute cette somme à la retenue entrante, et la porte OR combine les deux retenues.
- Enchaînez des additionneurs complets de sorte que chaque retenue sortante alimente la retenue entrante suivante, vous obtenez un additionneur à propagation de retenue 行波进位加法器 : quatre d'entre eux additionnent deux nombres de 4 bits.

La retenue est ce qui doit voyager, c'est pourquoi on l'appelle propagation
Reliez chaque bloc de construction à ce qu'il fait.
Les additionneurs ajoutent des bits (enchaînez des additionneurs complets pour l'addition multi-bit) ; les bascules stockent un bit (JK corrige l'état interdit de SR).
En quoi un additionneur complet diffère-t-il d'un demi-additionneur ?
Un additionneur complet additionne A, B et une retenue d'entrée (permettant de chaîner les additionneurs) — construit à partir de deux demi-additionneurs plus une porte OR.
Exemple résolu : pourquoi un additionneur complet, et non deux additionneurs semi
- Expliquez pourquoi un additionneur de 4 bits est construit à partir d'additionneurs complets plutôt que d'additionneurs semi.
- En additionnant deux nombres de 4 bit colonne par colonne, chaque colonne sauf la droite peut recevoir une retenue provenant de la colonne de droite, elle a donc trois entrées à additionner, pas deux.
- Un additionneur semi n'a pas de retenue entrante, il ne peut donc pas prendre cette troisième entrée, et la retenue serait simplement perdue.
- Seule la colonne de poids faible n'a pas de retenue entrante, un additionneur semi suffirait là ; en pratique, les quatre sont des additionneurs complets, avec la première retenue entrante fixée à 0.
Pourquoi un additionneur 4 bits doit-il utiliser des additionneurs complets plutôt que des demi-additionneurs ?
Un demi-additionneur produit bien une retenue ; ce qu'il lui manque, c'est une retenue d'entrée, il ne peut donc pas accepter la retenue provenant de la colonne précédente.
Placez la construction d'un additionneur à propagation de retenue 4 bits dans l'ordre.
Les portes font un demi-additionneur, les demi-additionneurs font un additionneur complet, les additionneurs complets forment un additionneur large. La retenue qui propage le long donne son nom.
Les bascules
- Une bascule (flip-flop) est un circuit bistable 双稳态 : elle possède deux états stables, 0 et 1, et elle mémorise celui dans lequel elle se trouve. Elle stocke exactement un bit.
- C'est l'élément de base des registres, où $n$ bits signifie $n$ bascules, des compteurs et des cellules de SRAM 静态RAM.
- Contrairement à un additionneur dont la sortie dépend uniquement de ses entrées actuelles, la sortie d'une bascule dépend de ses entrées passées. C'est cela qui signifie mémoire au niveau du circuit.
Une bascule est utilisée pour :
Une bascule a deux états stables et conserve un bit — le bloc de base des registres et de la SRAM.
Une bascule est bistable — elle a deux états stables et mémorise un bit — ce qui en fait le bloc de base des registres et de la SRAM.
Enchaîner des bascules donne des registres et des compteurs ; le cache SRAM est construit à partir d'eux (pas besoin de rafraîchissement, contrairement à la DRAM).
SR et JK
- Un bascule SR SR触发器 a des entrées S (set) et R (reset) et des sorties $Q$ et $\overline{Q}$, construites à partir de deux portes NOR croisées.
S=1, R=0met $Q$ à 1.S=0, R=1remet $Q$ à 0.S=0, R=0maintient l'état actuel, c'est la mémoire.S=1, R=1est invalide : il demande set et reset à la fois.- Une bascule JK JK触发器 élimine ce défaut en donnant à l'entrée
1,1une signification : toggle 翻转 (retournement), de sorte que la sortie passe à l'état opposé. Cela la rend idéale pour les compteurs 计数器, car une chaîne de bascules à retournement compte en binaire. - Une bascule JK est généralement horlogée : les entrées n'agissent qu'à un front d'horloge, ce qui maintient toutes les bascules de la machine synchronisées.

L'entrée invalide s'est transformée en une entrée utile
Pour une bascule SR, quelles affirmations sont correctes ? Sélectionnez tous ceux qui s'appliquent.
La bascule sur 1,1 est l'amélioration apportée au JK. Sur un SR, cette entrée demande à la fois la mise en position et la remise à zéro, ce qui est invalide.
Le comportement de bascule du bascule JK est ce qui le rend adapté à la construction de compteurs.
Une chaîne de bascules se basculant chacune à son entrée effectue un comptage binaire. Les impulser d'horloge maintient chaque étage en phase.
Exemple résolu : suivre une bascule SR
- $Q$ est actuellement 0. Donnez $Q$ après les entrées S=1 R=0, puis S=0 R=0, puis S=0 R=1.
- S=1, R=0 définit la sortie, donc $Q$ devient 1.
- S=0, R=0 maintient, donc $Q$ reste 1. C'est l'étape qui montre que c'est une mémoire : les entrées ne disent rien, et la sortie persiste.
- S=0, R=1 réinitialise, donc $Q$ devient 0. Si S=1 et R=1 étaient appliqués, la réponse est que l'entrée est invalide, pas une valeur.
Pièges qui font perdre des points
- $S = A \oplus B$ et $C = A \cdot B$ : XOR pour la somme, AND pour la retenue. Les échanger fait perdre les deux points.
- « Demi » signifie pas de retenue entrante, pas « la moitié des bits ».
- Un additionneur complet est deux additionneurs semi plus une OR, et la OR combine les deux retenues.
- Sur une bascule SR,
0,0maintient et1,1est invalide. L'amélioration de la JK est que1,1retourne.
Vous avez compris
- additionneur semi : deux bits en entrée, $S = A \oplus B$ issu d'une XOR et $C = A \cdot B$ issu d'une AND ; pas de retenue entrante
- additionneur complet : trois bits en entrée, construit à partir de deux additionneurs semi plus une OR ; enchaînez-les, retenue sortante vers retenue entrante, pour un additionneur à propagation de retenue
- une bascule est bistable et stocke un bit ; $n$ bascules font un registre de $n$ bits, et elles sont les cellules de SRAM
- SR : set, reset,
0,0maintient,1,1invalid · JK :1,1retourne, ce qui rend les compteurs possibles, et elle est horlogée pour rester synchronisée