Adloun

Logique séquentielle et stabilité

Cours complet · traitement du signal et logique (MPI), chapitre 4 · CPGE MPI (2e année)

Travailler ce chapitre sur Adloun

Les circuits étudiés au chapitre précédent — portes ET, OU, NON, NAND, NOR — sont combinatoires : leur sortie ne dépend, à chaque instant, que de la combinaison présente des entrées. Un tel circuit n'a pas de passé ; il recalcule tout à chaque instant et oublie aussitôt. Or l'informatique repose sur une capacité qui échappe à cette logique : se souvenir. Un registre, une mémoire, un compteur doivent conserver une information après que la cause qui l'a produite a disparu. C'est l'objet de la logique séquentielle, où la sortie dépend non seulement des entrées présentes, mais aussi de l'état du circuit, c'est-à-dire de son histoire.

Le mécanisme qui rend cette mémoire possible est la rétroaction : on reboucle une sortie sur une entrée. Cette boucle fait naître la notion de stabilité — un état peut se maintenir de lui-même (état stable) ou basculer spontanément (état instable) — et, selon la façon dont on la dose, elle engendre les trois briques fondamentales de l'électronique numérique : le bistable (deux états stables : la mémoire d'un bit), le monostable (une impulsion calibrée) et l'astable (aucun état stable : un oscillateur, une horloge). Ce chapitre les construit à partir des seules portes logiques, en s'appuyant systématiquement sur la lecture et le tracé de chronogrammes.

4.1 Du combinatoire au séquentiel

4.1.1 Notion d'état et de mémoire

Définition 4.1Circuit combinatoire / séquentiel

Un circuit logique est combinatoire si, à chaque instant, ses sorties sont entièrement déterminées par les valeurs présentes de ses entrées. Il est séquentiel si ses sorties dépendent aussi de son état interne, mémoire des entrées passées. Un circuit séquentiel possède donc une ou plusieurs variables d'état qui évoluent au cours du temps.

Le contraste se lit sur un exemple. Une porte ET à deux entrées est combinatoire : si l'on connaît et à l'instant , on connaît sans rien savoir du passé. Un interrupteur d'escalier commandé par un bouton-poussoir est, lui, séquentiel : appuyer sur le bouton inverse l'état de la lampe ; la sortie (allumé / éteint) ne dépend pas seulement de l'appui présent, mais du nombre d'appuis antérieurs. La lampe se souvient.

iRemarque

Toute mémoire numérique — de la bascule d'un registre aux milliards de cellules d'une puce — se ramène à un principe unique : maintenir une variable binaire dans l'un de deux états stables tant qu'aucun ordre ne vient l'en déloger. Comprendre un bistable, c'est comprendre le principe de toute la mémoire.

4.1.2 Rétroaction et stabilité

Définition 4.2Rétroaction logique

Il y a rétroaction (ou contre-réaction / bouclage) lorsqu'une sortie d'un circuit logique est renvoyée, directement ou à travers d'autres portes, sur l'une de ses entrées. La sortie devient alors, en partie, sa propre cause.

Considérons l'exemple minimal : la sortie d'une porte NON (inverseur) rebouclée sur son entrée. Notons l'état commun entrée-sortie. La porte impose : cette équation n'admet aucune solution logique stable. Le circuit ne peut se figer ni à ni à : il oscille. C'est le premier exemple d'instabilité par rétroaction.

Rebouclons au contraire la sortie d'un tampon (deux inverseurs en série, fonction identité) sur son entrée. L'équation devient , satisfaite aussi bien par que par : le circuit possède deux états stables. Il mémorise.

ImportantÉtats stables et instables

Un état d'un circuit bouclé est stable s'il se reproduit lui-même : injecté à l'entrée, il ressort identique à la sortie et se maintient indéfiniment sans intervention extérieure. Il est instable si la logique le fait évoluer vers un autre état. Selon le nombre d'états stables, on distingue :

  • bistable : deux états stables mémoire d'un bit ;
  • monostable : un seul état stable retour automatique après une impulsion ;
  • astable : aucun état stable oscillation permanente (horloge).
iRemarque

En logique idéale, l'oscillateur n'oscille pas : il n'a pas de solution. Ce sont les temps de propagation non nuls des portes réelles — quelques nanosecondes — qui donnent son rythme à l'oscillation. Le temps, absent du modèle booléen, resurgit comme grandeur physique dès qu'on ferme une boucle. La logique séquentielle est intrinsèquement une logique temporelle.

4.2 La bascule RS

4.2.1 Construction à partir de deux portes NOR

La bascule RS (Reset-Set) est le bistable élémentaire. On la réalise en croisant deux portes NOR : la sortie de chacune alimente une entrée de l'autre. Les deux entrées libres sont (Set, mise à ) et (Reset, mise à ) ; les deux sorties, et , sont normalement complémentaires.

Rappelons la table de la porte NOR : vaut si et seulement si . Analysons les quatre combinaisons de .

Proposition 4.3Table de vérité de la bascule RS (portes NOR)

En notant l'état après application de et l'état antérieur :

mémoire (maintien)
mise à (Set)
mise à (Reset)
---état interdit

4.2.2 Variante à portes NAND

On réalise le même bistable avec deux portes NAND croisées ; les entrées actives sont alors actives à l'état bas. On parle de bascule : l'écriture se commande par un , le maintien correspond à , et la combinaison interdite est . Le tableau se déduit du précédent en complémentant les entrées.

mémoire
mise à
mise à
---interdit

Méthode : Analyser un circuit bouclé

Pour déterminer les états d'un circuit à rétroaction :

  • on coupe mentalement la boucle et on nomme la variable d'état ;
  • on exprime la sortie de la boucle en fonction de et des entrées à l'aide des tables de vérité des portes ;
  • on impose la condition de bouclage (sortie ) : les solutions sont les états stables ;
  • on vérifie, pour chaque combinaison d'entrées, quel état est atteint et s'il se maintient.

4.2.3 Chronogramme de la bascule RS

Un chronogramme représente l'évolution temporelle des signaux logiques : chaque signal est un créneau qui ne prend que les niveaux (bas) et (haut), le temps s'écoulant vers la droite. C'est l'outil de lecture privilégié de la logique séquentielle. Voici la réponse d'une bascule RS (version NOR) à une séquence d'impulsions et .

On lit : une impulsion sur fait passer à , qui reste à après la fin de l'impulsion (mémoire) ; une impulsion sur ramène à , qui y reste ; entre deux ordres, conserve sa valeur. La bascule a bien mémorisé le dernier ordre reçu.

Exemple 4.4Anti-rebond d'un bouton-poussoir

Un contact mécanique ne s'établit pas proprement : à la fermeture, il « rebondit » quelques millisecondes, produisant une salve de et de parasites qu'un compteur numérique interpréterait comme plusieurs appuis. En câblant un inverseur mécanique (deux contacts , ) sur une bascule RS à NAND, le premier contact valide fait basculer la mémoire ; les rebonds suivants, sur la même entrée, ne changent plus l'état déjà mémorisé.

Démonstration

La bascule est en position mémoire tant qu'aucune entrée n'est activée. Au tout premier rebond qui ferme le contact « Set », passe à : est forcé à . Les rebonds ultérieurs de ce même contact ramènent brièvement à — mais alors , c'est-à-dire la mémoire, et reste à . Aucun rebond de la ligne Set ne peut remettre à : seule une action sur le pourrait. La sortie est donc parfaitement propre : une transition unique au lieu d'une salve.

4.3 Bascule bistable et mémoire

4.3.1 Le bistable comme cellule de mémoire

Définition 4.5Bistable

Un bistable est un circuit séquentiel possédant exactement deux états stables. Placé dans l'un d'eux, il y demeure indéfiniment sans apport d'énergie logique ; une impulsion de commande le fait basculer dans l'autre, où il se maintient à nouveau. Un bistable mémorise donc un bit.

La bascule RS est le bistable le plus simple. Ses deux états stables sont et ; la position mémoire les préserve tous deux, tandis que et permettent d'écrire l'un ou l'autre. Une mémoire de bits est simplement un banc de bistables adressés indépendamment : c'est le principe de la mémoire statique (SRAM), où chaque cellule est un bistable à quelques transistors qui conserve sa valeur tant que l'alimentation est maintenue.

Proposition 4.6Stabilité du bistable

Dans un bistable, les deux états et sont stables car la rétroaction est régénérative : la sortie renforce, à travers la boucle, l'état qui l'a produite. Toute petite déviation d'un état stable est ramenée à cet état par l'amplification de la boucle ; l'état intermédiaire , lui, est un équilibre instable que le circuit fuit à la moindre perturbation.

iRemarque

L'analogie mécanique est éclairante : un bistable est une bille dans un double puits (deux creux séparés par une bosse). Les deux creux sont les états stables et ; le sommet de la bosse est l'état instable . Une chiquenaude (l'impulsion ou ) fait passer la bille d'un creux à l'autre, où elle se stabilise. L'astable, lui, correspondrait à un paysage sans creux : la bille roule sans fin.

4.4 Le circuit astable : générer une horloge

4.4.1 Principe : aucun état stable

Définition 4.7Astable

Un circuit astable ne possède aucun état stable : il bascule spontanément et périodiquement entre ses deux états. Sa sortie est un signal carré permanent, sans entrée de commande. Un astable est donc un oscillateur, source du signal d'horloge qui cadence tout système numérique synchrone.

Le prototype logique de l'astable est l'anneau d'un nombre impair d'inverseurs bouclés (ring oscillator). Avec un seul inverseur, on retrouve l'équation sans solution , qui ne peut être satisfaite à aucun instant : le circuit ne se fige jamais et oscille. Sa période est fixée par les temps de propagation.

Proposition 4.8Période d'un anneau d'inverseurs

Un anneau de inverseurs ( impair), chacun de temps de propagation , oscille avec une période

car une transition doit parcourir deux fois l'anneau (aller en puis retour en ) pour reproduire l'état initial. La fréquence d'horloge est .

Démonstration

Injectons un front à l'entrée du premier inverseur. Après un délai , sa sortie bascule ; après , ce front — inversé fois, donc inversé puisque est impair — revient à l'entrée du premier inverseur avec la valeur opposée à celle de départ. L'entrée bascule donc au bout de , puis rebascule plus tard : la période complète vaut .

En pratique, on n'utilise pas les seuls temps de propagation (trop brefs, quelques , donnant des centaines de peu réglables) : on ralentit délibérément l'oscillation par une constante de temps . C'est le rôle du montage astable à portes ou du célèbre circuit intégré temporisateur, dont la période est fixée par une résistance et un condensateur, .

Exemple 4.9Astable et fréquence

Un astable délivre une horloge de rapport cyclique à la fréquence . Sa période vaut ; les niveaux haut et bas durent chacun . Pour un montage tel que , obtenir cette période demande , par exemple et .

4.5 Le circuit monostable : une impulsion calibrée

4.5.1 Principe : un seul état stable

Définition 4.10Monostable

Un circuit monostable possède un unique état stable, où il repose au repos. Une impulsion de déclenchement le fait basculer dans un état quasi stable qu'il maintient pendant une durée fixée par le circuit (typiquement ), puis il revient de lui-même à l'état stable. Il délivre ainsi une impulsion de durée calibrée, indépendante de la durée du déclenchement.

Le monostable transforme un déclenchement quelconque — un bref pic, un front — en une impulsion propre de largeur maîtrisée. On l'emploie pour temporiser (activer une sortie pendant exactement ), pour mettre en forme un signal, ou pour produire un retard.

On observe la propriété caractéristique : la première et la seconde impulsion de déclenchement ont des durées différentes, mais les deux impulsions de sortie ont la même largeur . Le monostable a calibré la durée.

ImportantLes trois montages en un coup d'{œ}il
MontageÉtats stablesSortieRôle typique
Bistable2mémoire d'un bitmémoire, registre
Monostable11 impulsion de durée temporisation, mise en forme
Astable0créneau permanenthorloge, oscillateur

Astable et monostable fixent leur(s) durée(s) par une constante de temps ; le bistable, lui, n'a pas de temps propre : il attend indéfiniment un ordre.

4.6 Applications

4.6.1 Convertisseur fréquence-tension

Le monostable fournit une conversion élégante d'une fréquence en une tension. On l'attaque par le signal dont on veut mesurer la fréquence : à chaque front, il émet une impulsion calibrée de largeur et d'amplitude fixes. La sortie est donc un train d'impulsions identiques, dont seule la densité varie avec .

Proposition 4.11Tension moyenne d'un train d'impulsions calibrées

Si le monostable émet, à la cadence , des impulsions de hauteur et de largeur (avec ), la valeur moyenne de sa sortie est

proportionnelle à la fréquence . Un filtre passe-bas qui extrait cette valeur moyenne délivre donc une tension image de la fréquence : c'est le convertisseur fréquence-tension.

Démonstration

Sur une période , la sortie vaut pendant puis pendant . Sa valeur moyenne est

car . Tant que les impulsions ne se chevauchent pas (), croît linéairement avec . Un filtre de constante de temps grande devant lisse le train d'impulsions et restitue avec une ondulation résiduelle faible.

Exemple 4.12Tachymètre

Un capteur délivre une impulsion par tour d'un arbre en rotation ; sa fréquence est proportionnelle à la vitesse de rotation. Un monostable (, ) suivi d'un passe-bas fournit . À (soit tours/s), . La tension lue est directement proportionnelle à la vitesse : on a construit un compte-tours analogique.

4.6.2 Oscillateur et base de temps

L'astable est la source de tout séquencement. En divisant par sa fréquence à l'aide de bascules montées en compteur, on obtient une cascade d'horloges de périodes Un astable de (quartz d'horlogerie) divisé fois donne exactement une impulsion par seconde : c'est le cœur d'une montre à quartz. De même, l'horloge d'un microprocesseur est un astable stabilisé par quartz, distribuée à tous les registres pour synchroniser leurs basculements.

4.6.3 Mémoire

Enfin, la première application reste la plus fondamentale : le bistable est la mémoire. Chaque cellule d'une SRAM, chaque bit d'un registre, chaque étage d'un compteur repose sur un bistable qui conserve son état entre deux fronts d'horloge. Toute l'informatique — le stockage d'un programme, la persistance d'une donnée, l'état d'une machine — se ramène, in fine, à la capacité d'un bistable à se souvenir d'un bit tant qu'on ne lui ordonne pas d'en changer.

Capacité numérique : simuler une bascule RS et son chronogramme

On peut vérifier numériquement le comportement d'une bascule RS en propageant l'état bit à bit sur une séquence d'entrées, puis en traçant le chronogramme obtenu.


import numpy as np
import matplotlib.pyplot as plt

def nor(a, b):
    return 1 - (a | b)

# sequence temporelle des entrees S et R
S = [0,1,1,0,0,0,0,0,1,0,0]
R = [0,0,0,0,1,1,0,0,0,0,0]
Q, Qb = 0, 1          # etat initial
histQ = []
for s, r in zip(S, R):
    # deux iterations pour stabiliser la boucle croisee
    for _ in range(2):
        Q  = nor(r, Qb)
        Qb = nor(s, Q)
    histQ.append(Q)

t = np.arange(len(S))
plt.step(t, S,               where='post', label='S')
plt.step(t, np.array(R)+2,   where='post', label='R (+2)')
plt.step(t, np.array(histQ)+4, where='post', label='Q (+4)')
plt.xlabel('temps (pas)'); plt.yticks([]); plt.legend()
plt.title("Chronogramme d'une bascule RS"); plt.show()

La sortie Q passe à à la première impulsion de S, s'y maintient jusqu'à l'impulsion de R, puis y reste à : la mémoire est bien reproduite.

<i class="fa-solid fa-dumbbell mr-2" style="color:#2E7559"></i>4.7 Exercices résolus

Exemple 4.13Reconnaître combinatoire ou séquentiel

Pour chacun des dispositifs, dire s'il est combinatoire ou séquentiel : (a) un additionneur bits ; (b) un compteur d'impulsions ; (c) un décodeur segments ; (d) un feu tricolore automatique.

Démonstration

(a) combinatoire : la somme ne dépend que des deux nombres présents. (b) séquentiel : le compte dépend du nombre d'impulsions passées, donc d'un état mémorisé. (c) combinatoire : l'affichage est une fonction pure du chiffre à l'entrée. (d) séquentiel : la couleur affichée dépend de l'étape en cours du cycle, mémorisée entre deux transitions.

Exemple 4.14Analyse d'une bascule NOR pas à pas

Une bascule RS à NOR est dans l'état , . On applique successivement , puis , puis . Donner après chaque étape.

Démonstration

Étape : maintien, reste à . Étape : impose , donc , . Étape : maintien, reste à . Séquence de : .

Exemple 4.15Pourquoi est interdit

Montrer qu'en appliquant à une bascule NOR puis en ramenant et à simultanément, l'état final est indéterminé.

Démonstration

Sous , les deux NOR reçoivent un : . En ramenant , chaque NOR reçoit , donc calcule : les deux sorties tendent vers simultanément. Elles se rebouclent alors mutuellement vers … La convergence dépend des temps de propagation exacts, inégaux en pratique : l'état final ou est imprévisible. C'est une course critique ; d'où l'interdiction.

Exemple 4.16Période d'un anneau d'inverseurs

Un anneau de inverseurs identiques oscille. Chaque inverseur a un temps de propagation . Calculer la période et la fréquence de l'oscillation.

Démonstration

D'après avec et : . La fréquence vaut .

Exemple 4.17Tracer un chronogramme de sortie

Une bascule RS (NOR), initialement à , reçoit : à sur , à sur , à sur (unités arbitraires), et ailleurs. Décrire .

Démonstration

démarre à , passe à à (Set), s'y maintient jusqu'à , retombe à (Reset), s'y maintient jusqu'à , remonte à (Set) et y reste. Le créneau vaut donc sur et sur , ailleurs — les fronts coïncident avec le début de chaque impulsion de commande, pas avec sa fin.

Exemple 4.18Dimensionner un convertisseur fréquence-tension

Un convertisseur f-V utilise un monostable de largeur et d'amplitude , suivi d'un passe-bas. Quelle est la tension moyenne à ? À partir de quelle fréquence la linéarité est-elle perdue ?

Démonstration

. La linéarité suppose des impulsions disjointes, soit , c'est-à-dire . Au-delà, les impulsions se chevauchent, la sortie sature vers et la conversion cesse d'être proportionnelle.

Exemple 4.19Astable et division de fréquence

Un astable délivre . On le fait suivre de bascules divisant chacune la fréquence par . Combien en faut-il pour obtenir une impulsion par seconde ?

Démonstration

Diviser par à reprises donne . On veut , soit . Il faut donc bascules. C'est exactement l'architecture d'une montre à quartz.

4.8 Exercices d'entraînement

  • Un circuit combinatoire n'a pas de mémoire (sortie fonction des entrées présentes) ; un circuit séquentiel dépend de son état, mémoire du passé.
  • La rétroaction (rebouclage d'une sortie sur une entrée) crée la notion de stabilité : selon le nombre d'états stables, on obtient un bistable (2), un monostable (1) ou un astable (0).
  • La bascule RS (deux NOR ou deux NAND croisés) est le bistable élémentaire : maintient (mémoire), écrit un , écrit un , est interdit. Elle mémorise un bit.
  • L'astable n'a aucun état stable : il oscille et fournit le signal d'horloge (, période fixée par ou par les temps de propagation).
  • Le monostable délivre une impulsion de durée calibrée , indépendante du déclenchement : mise en forme, temporisation.
  • Convertisseur fréquence-tension : un train d'impulsions calibrées à la cadence a une valeur moyenne (tant que ), image de la fréquence après filtrage passe-bas.
  • Un chronogramme se lit et se trace comme des créneaux vs temps ; les fronts d'une bascule coïncident avec le début des impulsions de commande.

Continuer sur Adloun : animation, QCM, fiches, exercices