Bascule (circuit logique)

Bascule (circuit logique)
Page d'aide sur l'homonymie Pour les articles homonymes, voir Bascule.

Une bascule est un circuit logique capable, dans certaines circonstances, de maintenir les valeurs de ses sorties malgré les changements de valeurs d'entrées.

On appellera plus loin verrous les bascules asynchrones (en Anglais latch), et bascules les bascules synchrones (en Anglais flip-flop).

Sommaire

Description

Une bascule, ou verrou, est un circuit logique doté:

  • d'une ou plusieurs entrées,
  • d'une ou deux sorties.

Les changements d'état de la sortie sont déterminés par les signaux appliqués aux entrées et le type d'opérateur.

Ce qui différencie les bascules des circuits logiques combinatoires (portes ET, OU, OU Exclusif, etc.), c'est que la sortie maintient son état même après disparition du signal de commande. Comme l'état précédent et la mémorisation interviennent, on parle de logique séquentielle.

La bascule est l'élément de base de la logique séquentielle. En effet, en assemblant des bascules, on peut réaliser des compteurs, des registres, des registres à décalage, des mémoires.

Certaines bascules, appelées à fonctionner dans des systèmes synchrones, possèdent une entrée d'horloge de synchronisation. Il existe donc des bascules asynchrones et des bascules synchrones.

Citons également la bascule de Schmitt, qui est commandée par une tension analogique appliquée à son entrée, mais on sort du domaine des opérateurs logiques séquentiels.

Bascules asynchrones, ou verrous

Ce sont des bascules dont la sortie ou l'état de mémorisation dépend à tout instant de l'état simultané des entrées. Cette évolution ne dépend que de la succession des combinaisons appliquées, et n'est limitée que par la vitesse de commutation de la bascule et de ses entrées, tandis qu'une bascule synchrone évolue au rythme du signal d'horloge. Si les entrées ont des oscillations imprévisibles avant de se stabiliser, la sortie d'une bascule asynchrone pourra être modifiée selon cette combinaison, alors qu'une bascule synchrone ne tiendra compte que des valeurs à la réception du signal d'horloge. La porte C de Muller est un exemple de bascule asynchrone.

Bascules synchrones

Principe

Ici, l'action des entrées sur l'état de mémorisation ne sera effective qu'à la réception d'un front d'horloge, lorsqu'elle passe de l'état haut à l'état bas, ou inversement (parfois un seul des deux). La sortie est dite synchrone (à H) car directement liée à l'horloge H. De plus, ces bascules peuvent disposer d'entrées asynchrones (Set,Reset) pour prépositionner l'état de sortie à la mise sous tension.

Avantage de l'horloge

Le fait de synchroniser la bascule sur les pulsations d'une horloge permet de s'assurer que sa sortie est bien stabilisée : ce qui se passe entre deux fronts d'horloge ne compte pas. Les pulsations de l'horloge doivent simplement être suffisamment lentes pour que les entrées aient également atteint leur configuration finale.

Métastabilité

Les bascules peuvent entrer dans des états métastables lorsque plusieurs entrées changent simultanément, c'est-à-dire qu'elles peuvent n'offrir une sortie stable qu'au bout d'un temps arbitrairement long. Ce peut être le cas pour le verrou RS si les deux entrées passent ensemble de 1 à 0, ou pour une bascule où un changement de donnée d'entrée est trop proche d'un front d'horloge. On cherche à les éviter, mais ce n'est pas toujours possible, par exemple pour des éléments arbitrant entre deux signaux asynchrones.

Types de bascules et de verrous

Verrous et bascules sont en fait très proches. Dans le cas de verrous, il est possible de réaliser une bascule synchrone en ajoutant une entrée d'horloge CLK, la sortie ne pouvant changer qu'après un front de l'horloge. On ne citera pas alors la bascule ainsi créée, d'implémentation plus complexe.

Verrou RS avec porte OU-NON

Symbole du verrou RS
L'implémentation utilisant des portes OU-NON
  • Mise à 1 de S (Set) : la sortie Q passe à 1.
  • Mise à 1 de R (Reset) : la sortie Q passe à 0.
  • R = S = 0 : maintien de l'état précédent des sorties.
  • q est l'état avant le basculement
  • Q est la sortie, Q est la sortie complémenté

Table de vérité :

S R Q Q remarque
0 0 q q mémorisation
0 1 0 1 mise à 0
1 0 1 0 mise à 1
1 1 0 0 Etat Interdit

Verrou R S avec porte ET-NON

L'implémentation utilisant des portes ET-NON
  • Mise à 0 de S (Set) : la sortie Q passe à 1.
  • Mise à 0 de R (Reset) : la sortie Q passe à 0.
  • R = S = 1 : maintien de l'état précédent des sorties.
  • q est l'état avant le basculement
  • Q est la sortie, Q est la sortie complémentée

Table de vérité :

S R Q Q remarque
0 0 1 1 cas particulier
0 1 1 0 mise à 1
1 0 0 1 mise à 0
1 1 q q mémorisation

Verrou D

Ce circuit ressemble au verrou RS, dans la mesure où il possède deux entrées, notées D et H, et une sortie Q. Mais le fonctionnement est différent :

  • quand H est à 0, la sortie maintient son état, quel que soit le niveau appliqué à D ;
  • quand H est à 1, la sortie Q recopie l'état de D.
  • La sortie Q recopie l'entrée D pour l'état actif de l'horloge H (CLK)
  • Q est la sortie, Q est la sortie complémentée
  • q est l'état avant le basculement
  • d est l'état appliqué en entrée (optimisation de la table de vérité)
  • X est un état quelconque, 0 ou 1

Table de vérité (optimisée):

D H (CLK) Q Q remarque
d 1 d d Q recopie D
X 0 q q mémorisation

Bascule RSH - RST

Un verrou RSH (aussi appelé RST) est un verrou RS auquel on a ajouté une troisième entrée, généralement notée H (ou CLK pour horloge). Cette troisième entrée a la fonction suivante :

  • si H est au niveau logique 0, la sortie maintient son état, quels que soient les niveaux appliqués aux entrées R et S ;
  • si H est à 1, la bascule RS répond normalement aux commandes appliquées à ses entrées.

En chainant 2 verrous RSH (un maître, l'autre esclave), on réalise une bascule JK (maître-esclave). Équation du verrou : Q_{n+1} = S + \overline RQ_{n}

Bascule JK

Symbole de la bascule JK à front montant
  • Pour J = K = 0, le signal d'horloge est sans effet, il y a conservation du dernier état logique pris par Q et Q : il n'y a jamais de basculement.
  • Pour J = K = 1, le système bascule à chaque front d'horloge (montant ou descendant selon les modèles).
  • Pour J différent de K, la sortie Q recopie l'entrée J et la sortie Q recopie l'entrée K à chaque front d'horloge.
  • On utilise cette bascule pour faire des compteurs. On compte jusqu'à 2n avec n bascules à la suite et on compte dans l'ordre croissant avec des bascules à front descendant et dans l'ordre décroissant avec des bascules à front montant.

Table de vérité :

J K Qn+1
0 0 Qn
0 1 0
1 0 1
1 1 Qn

Table de vérité alternative:

Qn Qn+1 J K remarque
0 0 0 X pour que la sortie reste à 0, il faut que J soit à 0, peu importe K.
0 1 1 X pour que la sortie passe de 0 à 1, il faut que J soit à 1, peu importe K.
1 0 X 1 pour que la sortie passe de 1 à 0, il faut que K soit à 1, peu importe J.
1 1 X 0 pour que la sortie reste à 1, il faut que K soit à 0, peu importe J.

Équation de la bascule : Q_{n+1} = J\overline Q_{n} + \overline KQ_{n}

Chronogramme : JK FF impulse diagram.png

Origine du nom de la bascule JK

L'origine du nom de la bascule JK est détaillée par P. L. Lindley, un ingénieur de JPL, dans un article du magazine de conception électronique EDN. L'article est daté du 13 juin 1968 et a été publié dans l'édition d'Août. Dans cet article, M. Lindley explique que c'est le docteur Eldred Nelson, un scientifique de Hughes Aircraft qui a inventé le terme de bascule JK.

Les bascules qui étaient utilisées à cette époque à Hughes étaient toutes du même type, celui de la future bascule J-K. Durant la conception d'un système logique le docteur Nelson a assigné des lettres à chaque entrée des bascules de la façon suivante :

  • bascule 1, les lettres A et B,
  • bascule 2, les lettres C et D,

...

  • bascule 5, les lettres J et K,
  • ...

Étant donné la taille du système sur lequel travaillait le docteur Nelson, il s'est rendu compte qu'il allait être à court de lettres. Puisque les lettres J et K était peu utilisées dans les systèmes électroniques il a donc décidé d'utiliser ces lettres comme entrées "set" et "reset" pour toutes les bascules de son système (avec des indices pour les distinguer les unes des autres).

Le docteur Montgomery Phister, un membre de l'équipe du docteur Nelson à Hughes, a repris dans son livre Logical Design of Digital Computers (Wiley, 1958) l'idée que les entrées "set" et "reset" des bascules utilisées à Hughes Aircraft étaient nommées J et K. De ce fait il est alors amené à les désigner sous le terme de bascule JK. Dans ce même livre il a aussi défini les bascules R-S, T, D et R-S-T et a montré qu'en utilisant l'algèbre de Boole il était possible de les combiner afin de réaliser des fonctions complexes.

Une autre théorie est que les lettres J et K ont été utilisées par référence à l'un des inventeurs du circuit intégré, Jack Kilby.

Bascule D

Symbole de la bascule D

La bascule D (pour Data) est une bascule JK à laquelle on a ajouté un inverseur entre les entrées J et K. Il y a donc une seule entrée, qui est notée D (pour Donnée ou Data). La table de vérité est la table de vérité d'une JK, limitée aux deux lignes J = 0, K = 1 et J = 1, K = 0.

  • La bascule D la plus simple possède 2 entrées (entrée D et l'horloge) et une sortie Q. À chaque front (ici montant) d'horloge, Q recopie l'entrée D.
  • Parfois, un signal reset existe afin de pouvoir initialiser la valeur initiale de la bascule lors de la mise sous tension.
  • Il existe des versions où les changements d'état ont lieu au moment des fronts descendants de l'horloge. Elles se signalent par une barre supplémentaire (en dessous à 45°) sous l'entrée Clock.

Sa fonction est donc "mémoire" puisque l'information en entrée se retrouve en sortie après un "coup d'horloge" (un front).

Table de vérité :

D Ck Qn+1 Qn+1
0 \nearrow 0 1
1 \nearrow 1 0
X 0 Qn Qn

Table de vérité (optimisée) :

D CLK Q Q remarque
d \nearrow d d Q recopie D
X 1,0,front descendant q q mémorisation

Équation de la bascule : Qn + 1 = D

Bascule T

La bascule T tire son nom du terme anglais 'toggle'. Si son entrée T est active, elle bascule à chaque impulsion d'horloge d'où son nom. Si son entrée T est inactive, elle conserve son état. Elle n'existe pas integrée sauf dans des PLDs, FPGAs,... mais on peut la fabriquer avec une bascule D en reliant la sortie Q à l'entrée D (toutefois on ne réalise ainsi qu'une bascule T avec T=1), ou à l'aide d'une bascule JK en reliant J et K pour faire l'entrée T. Comme la bascule T a la propriété de basculer à chaque impulsion d'horloge, elle réalise donc une division de fréquence par 2; elle servira aussi de base à la réalisation de compteurs (association simple si actives au front descendant de l'horloge)

  • Q est la sortie, Q est la sortie complémenté
  • q est l'état avant le basculement
  • si T=1, on bascule à chaque impulsion d'horloge
  • si T=0, la sortie ne change pas (mémorisation)
  • intégrée dans un circuit, elle est souvent active sur un front descendant
  • francisation

Table de vérité (optimisée):

T CLK Q Q remarque
1 \nearrow q q basculement
0 0,1,front descendant q q mémorisation

Bascule de Schmitt

Article détaillé : Bascule de Schmitt.

On l'appelle aussi Trigger de Schmitt ou bascule à seuil.

Symbole

C'est une bascule à trois entrées V, SB et SH et une sortie Q. Contrairement aux bascules citées ci-dessus, qui sont commandées en appliquant des signaux logiques à leurs entrées, la bascule de Schmitt est conçue pour être pilotée par une tension analogique, c'est-à-dire qui peut prendre n'importe quelle valeur (dans l'intervalle 0 - Vcc afin de ne pas dégrader le circuit).

Les entrées SB et SH (seuil bas, seuil haut, ce dernier étant à un potentiel supérieur à SB) sont maintenues à des potentiels fixes ; ceci peut se faire par exemple grâce à un diviseur de tension composé de 3 résistances placées en série entre Vcc et la masse ; SH et SB sont reliés aux points intermédiaires du diviseur.

Chronogramme

Le fonctionnement est le suivant :

  • supposons qu'au départ, V soit à 0 ; Q est alors à 0 ;
  • quand V augmente, Q reste à 0 jusqu'à ce que V dépasse SH ; à ce moment, Q passe à 1 ;
  • Q reste à 1 jusqu'au moment où V devient inférieur à SB ; à ce moment, Q passe à 0;
  • Q reste à 0 jusqu'à ce que V repasse au-dessus de SH.

La principale application de la bascule de Schmitt est la mise en forme de signaux analogiques pour les appliquer à des circuits logiques (par exemple une entrée de compteur).

La bascule de Schmitt peut aussi être utilisée pour :

  • débarrasser un signal du bruit ; il suffit que l'écart entre SH et SB soit supérieur à l'amplitude crête-à-crête du bruit ;
  • réaliser des circuits de contrôle avec hystérésis : thermostats, interrupteurs crépusculaires, maintien du niveau dans une cuve...
  • le trigger de Schmitt est l'ancêtre des générateurs de musique, miniaturisé dans les sonneries des montres électroniques, les sonneries des téléphones portables, les Game-Boy et autres jeux électroniques, les alarmes électroniques, les cartes de vœux parlantes, les boîtes à musique et horloges électroniques, etc. Le fameux bip des premiers ordinateurs dans les années 1980 était un signal rectangulaire.
  • Portail de l’électricité et de l’électronique Portail de l’électricité et de l’électronique

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Bascule (circuit logique) de Wikipédia en français (auteurs)

Игры ⚽ Нужно сделать НИР?

Regardez d'autres dictionnaires:

  • Circuit Logique Programmable — FPGA de Xilinx (modèle Spartan XC3S400) avec 400 000 portes et une fréquence de 50 MHz Un circuit logique programmable, ou réseau logique programmable, est un circuit intégré logique qui peut être reprogrammé après sa fabrication. Il… …   Wikipédia en Français

  • Circuit logique programmable — FPGA de Xilinx (modèle Spartan XC3S400) avec 400 000 portes[1]. Un circuit logique programmable, ou réseau logique programmable, est un circuit intégré logique qui peut être reprogrammé après sa fabrication. Il est …   Wikipédia en Français

  • Bascule D — Bascule Pour les articles homonymes, voir Bascule (cirque) et La bascule. Une bascule ou un verrou est un circuit logique doté d une ou deux sorties et d une ou plusieurs entrées. La sortie peut être au niveau logique 0 ou 1. Les changements d… …   Wikipédia en Français

  • Bascule Monostable — Une bascule monostable est un circuit logique qui a un état stable : il reste en cet état stable et ne le quitte que lorsqu’il reçoit une impulsion appliquée sur son entrée de commande appelée trigger. Il passe alors pour une durée… …   Wikipédia en Français

  • Bascule de Schmitt — Pour les articles homonymes, voir Bascule. Une bascule de Schmitt, aussi appelée trigger de Schmitt ou bascule à seuil, est un circuit logique inventé en 1934 par Otto Schmitt, ingénieur américain. Symbole Principe C est une bascule à trois… …   Wikipédia en Français

  • Bascule — Cette page d’homonymie répertorie les différents sujets et articles partageant un même nom. Le terme bascule peut avoir plusieurs sens : en électronique, une bascule est un circuit logique tel que la bascule monostable, un circuit analogique …   Wikipédia en Français

  • Bascule monostable — Pour les articles homonymes, voir Bascule. Une bascule monostable est un circuit logique qui a un état stable : il reste en cet état stable et ne le quitte que lorsqu’il reçoit une impulsion appliquée sur son entrée de commande appelée… …   Wikipédia en Français

  • bascule — ►ELECTRON ● 1. n. f. ou adj. * Syn. d interrupteur. * Caractérise d une manière générale un système à deux états. Un bouton bascule est un bouton radio. ● 2. n. f. Type de circuit logique passant par deux états et pouvant stocker de l information …   Dictionnaire d'informatique francophone

  • Logique (électronique numérique) — La logique est la partie conceptuelle de l électronique numérique. Elle est appelée ainsi car elle met en jeu des portes logique, mais pas seulement. La conception de cette logique, autrefois réalisée à l aide de schémas dessinés à la main, est… …   Wikipédia en Français

  • Very High Speed Integrated Circuit Hardware Description Language — VHDL VHDL est un langage de description matériel destiné à représenter le comportement ainsi que l architecture d’un système électronique numérique. Son nom complet est VHSIC[1] Hardware Description Language. L intérêt d une telle description… …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”