Les bascules (RS, JK, D et T)

Les bascules, appelées aussi flip-flops en anglais sont des circuits logiques séquentiels capables de mémoriser une information binaire élémentaire : soit la valeur 0 ou la valeur 1. Ce composant est l'élément de base des registres, des compteurs numériques, des mémoires, etc. Ce composant est aussi appelé circuit bistable puisqu'il ne peut prendre que deux états logiques.

L'état d'une bascule, représenté par la valeur à sa sortie Q, peut être modifié en agissant sur une ou plusieurs entrées permettant ainsi de mémoriser ou modifier la valeur binaire déjà en mémoire. Ainsi, la valeur à la sortie de ce composant dépend de la valeur précédente et de la valeur à une ou plusieurs entrées, ce qui définit son comportement séquentiel.

C'est compliqué ? Absolument pas, plus simplement, une bascule est un composant qui conserve son état précédent jusqu'à la prochaine demande d'effacement ou de changement reçue à travers l'une de ses entrées.

Bascule asynchrone ou synchrone ?

Il existe des bascules asynchrones comme il existe des bascules synchrones. Quelle est la différence ? Une bascule asynchrone, non asservie à un signal d'horloge, est une bascule qui change l'état de sa sortie lorsqu'elle reçoit la demande, appelée aussi le signal binaire, à l'une de ses entrées.

Une bascule synchrone est une bascule qui utilise un signal d'horloge H (appelé aussi CLK) pour déterminer quand les entrées peuvent modifier l'état mémorisé. Selon sa conception, le circuit peut être sensible à un niveau d'horloge ou à un niveau de front montant ou descendant tels que :

  • Le signal du front montant du signal ; soit quand le signal de notre horloge change d'état du niveau 0 vers le niveau 1 (L'image a ci-dessous le montre)
  • Le signal du front descendant ; soit quand le signal de l'horloge change d'état de la valeur 1 binaire vers le niveau 0 (L'image b ci-dessous nous montre cela)
Signal horloge (CLK) - Front montant Signal horloge (CLK) - Front descendant
a. Signal horloge (CLK) - Front montant b. Signal horloge (CLK) - Front descendant

 

Information

C'est quoi un signal d'horloge (H ou CLK en anglais) ?

Pour rappel, un signal d'horloge est un signal carré de périodicité indéfinie qui change d'état régulièrement d’un niveau haut à un niveau bas (une répétition infinie de 0 et 1). On appelle chaque transition un top. Le nombre de cycles complets (soit le nombre de périodes) par seconde de ce signal représente la fréquence de ce signal exprimée en hertz (Hz). 

Vous souhaitez en savoir plus sur ce signal et les signaux électriques en général, vous pouvez vous référer à notre cours : Le signal électrique

 

Dans la suite de ce cours, nous allons détailler les quatre types fondamentaux de bascules (flip-flops) :

  • La bascule RS (RS est l'abréviation des deux mots Reset–Set en anglais)
  • La bascule JK
  • La bascule D (D est l'abréviation Data en anglais)
  • La bascule T (T est l'abréviation du mot Toggle en anglais)

Ainsi, ces quatre bascules sont les éléments fondamentaux de la logique séquentielle. C'est grâce à ces composants que nous pouvons modéliser et créer des compteurs numériques, des registres et mémoires.

La bascule RS

La bascule RS est la forme la plus simple de la plus petite unité de mémoire, représentant la forme la plus simple des bascules en logique séquentielle. Elle dispose de deux entrées nommées $S$ pour Set et $R$ pour Reset et deux sorties nommées $Q$ et $\overline{Q}$.

Entrées et symbole

Dans sa forme asynchrone (ne disposant pas d'une entrée d'horloge nommée H ou CLK), ces deux entrées nous permettent :

  • Entrée $S$ pour Set : activer la bascule pour mémoriser la valeur 1 binaire.
  • Entrée $R$ pour Reset : effacer la valeur binaire stockée dans la mémoire de la bascule. Donc le 0 binaire à la sortie.

Pour la forme synchrone, l'écriture et l'effacement de la mémoire interne de cette bascule se réalisent au moment du front montant ou descendant en fonction de la configuration de la bascule.

Les deux symboles de cette bascule RS sont modélisés ci-dessous (à gauche la bascule RS asynchrone et à droite la bascule RS synchrone à enclenchement sur front montant) :

Bascule RS (Set-Reset) asynchrone
Bascule RS asynchrone
Bascule RS (Set-Reset) synchrone à enclenchement sur front montant
Bascule RS synchrone (front montant)

Pour le symbole de la bascule RS à enclenchement sur front descendant, son symbole est modélisé comme suit :

Bascule RS (Set-Reset) synchrone à enclenchement sur front descendant
Bascule RS synchrone (front descendant)

Principe de fonctionnement

La bascule RS fonctionne suivant le principe décrit ci-dessous. Les sorties $Q$ et $\overline{Q}$ dépendent de la valeur reçue à l'entrée de $S$ ou $R$ et de la valeur mémorisée telles que

  • $S=1$, la bascule est mise à 1; soit donc la sortie $Q=1$ et $\overline{Q}=0$
  • $R=1$, elle est remise à 0; soit donc la sortie $Q=0$ et $\overline{Q}=1$
  • $S=R=0$, la bascule mémorise l'état précédent : $Q_{n+1}=Q_{n}$ et $\overline{Q_{n+1}}=\overline{Q_{n}}$
  • $S=R=1$, cette combinaison est interdite et le résultat est imprévisible. On dit que la bascule présente un comportement instable.

Table de vérité

Pour une bascule RS, asynchrone à entrées actives à 1, la table ci-dessous résume sa table de vérité :

S R $Q_{n+1}$ $\overline{Q_{n+1}}$
0 0 $Q_n$ : inchangé $\overline{Q_n}$ : inchangé
0 1 0 1
1 0 1 0
1 1 indéterminé indéterminé

 

Pour une bascule RS synchrone, le signal de l'horloge s'ajoute à ses entrées, ce qui change son comportement. Ci-dessous un exemple pour une bascule RS déclenchée sur front montant :

Front d'horloge S R $Q_{n+1}$ $\overline{Q_{n+1}}$
Aucun X X $Q_n$ $\overline{Q_n}$
↑ 0 0 $Q_n$ : inchangé $\overline{Q_n}$ : inchangé
↑ 0 1 0 1
↑ 1 0 1 0
↑ 1 1 indéterminé indéterminé

 

Comme vous l'avez sûrement constaté, la particularité d'une bascule RS est qu'elle ne peut pas réagir quand les deux entrées $S$ et $R$ sont égales à la valeur logique 1. En effet, elle force la mise à 1 et la mise à 0 en même temps, ce qui contredit le principe des deux sorties complémentaires ($Q$ et $\overline{Q}$ forcées au même niveau logique). C'est comme si vous demandiez à une cellule de mémoriser la valeur 1 en activant le Set à 1 et de l'effacer en activant l'entrée RESET à 1. Autrement, si vous appuyiez simultanément sur le bouton “ON” et le bouton “OFF” en même temps, le circuit ne sait plus quoi faire et donnera un résultat imprévisible ! C’est pour cela que cette situation est indéterminée.

Chronogramme

La bascule RS asynchrone peut être réalisée à l’aide de 2 portes logiques NAND. Néanmoins, pour inverser la logique des deux entrées, et obtenir des entrées actives sur niveau haut, nous ajoutons deux autres portes logiques réalisant cette inversion (la fonction NON à base de deux portes NAND), comme le montre le schéma de câblage ci-dessous :

Bascule RS asynchrone (4 portes logiques NAND)

Pour mieux comprendre le mode de fonctionnement de cette bascule RS asynchrone, vous trouverez ci-dessous son chronogramme :

Chronogramme d'une Bascule RS (Set-Reset) asynchrone

Toutefois, il est également possible de réaliser une bascule RS synchrone avec 4 portes logiques NAND mais juste en câblant autrement notre circuit. Le schéma ci-dessous le démontre :

Bascule RS synchrone (4 portes logiques NAND)

Information

La bascule RS, une activité ?

Pour vous faire découvrir ce circuit séquentiel, electro-robot vous propose une activité de travaux dirigés à réaliser par vous-même sous le simulateur électronique QSPICE, une bascule RS à l'aide de deux portes logiques NAND :

Démonstration d'une bascule RS

Pour tester une bascule RS et mieux comprendre son mode de fonctionnement, nous vous proposons le schéma ci-dessous modélisé à partir de 4 fonctions logiques NAND. Vous pouvez activer ou désactiver les deux entrées R ou S pour mémoriser ou effacer l'information numérique :

Exemple de circuit intégré

Parmi les références les plus courantes de ce composant sur le marché figure la référence SN74279. Pour plus d’informations, veuillez consulter la page dédiée à sa fiche technique : SN74279 (4 bascules RS)

La bascule JK

La bascule JK est une forme améliorée de la bascule RS, représentant aussi la forme la plus simple des bascules en logique séquentielle mais en éliminant l’état interdit de cette dernière. Elle dispose aussi de deux entrées nommées $J$ et $K$, et deux sorties complémentaires $Q$ et $\overline{Q}$.

Entrées et symbole

Dans sa forme asynchrone, la bascule JK n'existe pas vraiment et nécessite une horloge H (appelée aussi CLK). Cette bascule est dotée d'une entrée d'horloge H (appelée aussi CLK). Elle dispose donc de trois entrées nous permettant :

  • Entrée $J$ : c'est l'entrée de commande Set de la bascule. Elle active la bascule à la valeur 1 binaire.
  • Entrée $K$ : c'est l'entrée de commande Reset de la bascule. Elle efface la mémoire de la bascule et met sa valeur binaire 0.
  • Entrée $H$ : l'horloge de synchronisation (appelée aussi CLK pour clock en anglais)

Le symbole de cette bascule JK est comme suit :

Bascule JK à enclenchement sur front montant
Bascule JK (front montant)
Bascule JK à enclenchement sur front descendant
Bascule JK (front descendant)

Sur le marché, nous retrouvons cette bascule dans un circuit intégré encapsulant 2 bascules JK déclenchées sur front descendant sous la référence 7476. Par exemple, vous trouverez ci-dessous une image de ce circuit sous la référence 74LS76 :

Circuit intégré 74LS76 - 2 Bascules synchrones JK

Cependant, ce circuit propose deux bascules JK synchrones qui disposent aussi de deux entrées asynchrones prioritaires nommées Preset ($\overline{PRE}$) et Clear ($\overline{CLR}$) pour forcer la sortie à 1 ou 0 sans attendre l'horloge. Ainsi, ces deux entrées peuvent commander la bascule JK en mode asynchrone.

Principe de fonctionnement

La bascule JK fonctionne comme une bascule RS à l'exception du fait qu'elle nécessite une horloge et corrige l'état $J=K=1$. Ce principe de fonctionnement est décrit ci-dessous. Les sorties $Q$ et $\overline{Q}$ dépendent de la valeur à l'entrée de $J$ ou $K$ et de la valeur mémorisée telle que :

  • $J=1$ et $K=0$ : la bascule est mise à 1 : soit donc la sortie $Q=1$ et $\overline{Q}=0$
  • $J=0$ et $K=1$ : elle est remise à 0 : soit donc la sortie $Q=0$ et $\overline{Q}=1$
  • $J=K=0$, la bascule mémorise la valeur précédente et  la sortie $Q_{n+1}=Q_{n}$ et $\overline{Q_{n+1}}=\overline{Q_{n}}$
  • $J=K=1$, la bascule change d'état à chaque front du signal d'horloge (soit au front montant, soit au front descendant). Cette inversion est appelée aussi "Toggle"

Table de vérité

Pour une bascule JK, la table ci-dessous résume sa table de vérité :

J K $Q_{n+1}$ $\overline{Q_{n+1}}$
0 0 $Q_{n}$ : inchangé $\overline{Q_{n}}$ : inchangé
0 1 0 1
1 0 1 0
1 1 $\overline{Q_n}$ : inversion $Q_n$ : inversion

Chronogramme

La bascule JK peut être également réalisée à partir de 4 portes logiques NAND comme nous le montre le schéma ci-dessous :

Bascule JK (4 portes logiques NAND)

Pour comprendre son mode de fonctionnement, en supposant qu'elle opère sur le front montant du signal de l'horloge, vous trouverez ci-dessous un exemple de chronogramme d'une bascule JK :

Chronogramme d'une Bascule JK

Démonstration d'une bascule JK

Pour tester une bascule JK et mieux comprendre son mode de fonctionnement, nous vous proposons le schéma ci-dessous modélisé à partir de 4 fonctions logiques NAND. Vous pouvez activer ou désactiver les deux entrées J ou K pour mémoriser ou effacer le contenu de cette mémoire élémentaire :

Exemple de circuit intégré

Cette bascule est disponible sur le marché sous plusieurs variantes, dont la famille TTL sous la référence 74LS76, qui est l’une des plus utilisées. Pour plus d’informations techniques, veuillez consulter la page dédiée à sa fiche technique : 74LS76 (2 bascules JK)

La bascule D

La bascule D, pour l'abréviation Data, est une forme simplifiée de la bascule RS ou la bascule JK puisqu'elle ne comporte qu'une seule entrée nommée $D$ mais comme toute bascule deux sorties complémentaires $Q$ et $\overline{Q}$. Cette bascule est idéale pour réaliser des registres, des blocs de mémoire, etc.

Entrées et symbole

La bascule D n'existe qu'en forme synchrone et nécessite une horloge H (appelée aussi CLK) pour qu'elle fonctionne. Ainsi, elle dispose de deux entrées ; $D$ et $H$, et deux sorties telles que :

  • Entrée $D$ pour Data: elle stocke la valeur 0 quand elle reçoit 0 à son entrée et 1 quand elle reçoit la valeur 1.
  • Entrée $H$ : l'horloge de synchronisation (appelée aussi CLK pour clock en anglais)

Le symbole de cette bascule D est comme suit :

Bascule D à enclenchement sur front montant
Bascule D (front montant)
Bascule D à enclenchement sur front descendant
Bascule D (front descendant)

 

Pour une bascule D, nous la retrouvons dans le circuit intégré encapsulant 2 bascules D sous la référence 7474. À titre d'exemple, vous trouverez ci-dessous une image de ce circuit dont la référence est 74LS74 :

Circuit intégré 74LS74 - 2 Bascules D

Principe de fonctionnement

La bascule D fonctionne comme une unité de mémoire synchronisée à un signal d'horloge. Quand le front actif de l'horloge arrive, la bascule copie la valeur reçue à son entrée $D$ et la recopie à sa sortie $Q$. Autrement dit, la sortie suit l'entrée au bon moment; ce moment est le front montant ou le front descendant du signal de l'horloge telle que :

  • Quand $D=0$ : la bascule est mise à 0 au prochain front actif du signal de l'horloge; soit donc la sortie $Q=0$ et $\overline{Q}=1$
  • Quand $D=1$ : la bascule est mise à 1 au prochain front actif du signal de l'horloge; soit donc la sortie $Q=1$ et $\overline{Q}=0$

Table de vérité

Pour une bascule D, la table ci-dessous résume sa table de vérité :

D $Q_{n+1}$ $\overline{Q_{n+1}}$
0 0 1
1 1 0

Chronogramme

Pour une bascule D, à enclenchement sur le front montant du signal de l'horloge, le chronogramme ci-dessous nous démontre un exemple de son mode de fonctionnement :

Chronogramme d'une Bascule D

Pour réaliser une bascule D, il est possible de la modéliser à partir d'une bascule RS synchrone ou d'une bascule JK. Nous vous présentons les deux montages possibles ci-dessous :

Schéma d'une bascule D à partir d'une bascule RS synchrone
Bascule D à partir d'une bascule RS synchrone
Schéma d'une bascule D à partir d'une bascule JK
Bascule D à partir d'une bascule JK

Exemple de circuit intégré

La bascule D est disponible sur le marché sous plusieurs références. Des informations complémentaires sont disponibles dans les fiches techniques ci-dessous que nous vous proposons :

La bascule T

La bascule $T$, pour l'abréviation toggle en anglais, est un système séquentiel synchrone qui change d’état; soit de 0 à 1 ou 1 à 0, à chaque front actif de l'horloge lorsque son entrée $T$ est égale à 1. La bascule $T$ dispose, comme les autres bascules, de deux sorties $Q$ et $\overline{Q}$. On dit aussi que la bascule $T$ permet de diviser la fréquence d'un signal par 2.

Entrées et symbole

Comme le décrit son principe de fonctionnement, la bascule T n'existe qu'en version synchrone et nécessite une horloge H (appelée aussi CLK) pour fonctionner. Donc elle ne dispose que d'une seule entrée, appelée aussi T et une entrée pour son horloge H tels que :

  • Entrée $T$ pour Toggle : si cette entrée est activée ($T=1$), la sortie de la bascule change d'état à chaque front actif de l'horloge.
  • Entrée $H$ : l'horloge de synchronisation pour faire fonctionner la bascule; appelée aussi CLK pour clock en anglais.

Le symbole de cette bascule T est comme suit :

Bascule T à enclenchement sur front montant
Bascule T (front montant)
Bascule T à enclenchement sur front descendant
Bascule T (front descendant)

Principe de fonctionnement

Lorsque son entrée $T=1$, la bascule $T$ fonctionne comme un diviseur de fréquence telle que sa sortie s'inverse à chaque front; soit $Q_{n+1} = \overline{Q_n}$. Lorsque $T = 0$, la bascule mémorise son état précédent soit donc $Q_{n+1} = Q_n$.

Table de vérité

Pour une bascule T, la table ci-dessous résume sa table de vérité :

T $Q_{n+1}$ $\overline{Q_{n+1}}$
0 $Q_n$ : Pas de changement $\overline{Q_n}$ : Pas de changement
1 $\overline{Q_n}$ : Inversion $Q_n$ : Inversion

Chronogramme

Et pour une bascule T, même chose à enclenchement sur front montant de notre signal électrique, le chronogramme ci-dessous nous présente son comportement dans le temps :

Chronogramme d'une Bascule T

Et pour réaliser une bascule T, comme la bascule D, il est aussi possible de la réaliser à partir d'une bascule JK comme à partir d'une bascule D. Nous vous présentons ces deux possibilités ci-dessous :

Schéma d'une bascule T à partir d'une bascule JK
Bascule T à partir d'une bascule JK
Schéma d'une bascule T à partir d'une bascule D
Bascule T à partir d'une bascule D

 



📝 La dernière modification de cette page a été faite le 19 September 2026 par Electro & Robot