Accueil > Automatisme > Circuits logiques séquentiels
AutomatismeÉlectroniqueLes bases de l'automatisme

Circuits logiques séquentiels

Un système logique est dit « séquentiel » lorsque une ou plusieurs sorties sont reliées à une ou plusieurs entrées. Le système est ainsi bouclé. Ainsi, à un instant t, une sortie dépend de l’état des entrées, mais aussi de son propre état à l’instant t-1.

1. Bascule RS

1. Bascule RS élémentaire

    Réalisation :

Bascule RS élémentaire



    Table de vérité :

RSQn+1
00Qn (mémoire)
011
100
11Etat interdit !

    Explications :

    Commençons par analyser les états où R et S sont différents :

    – si R = 0 et S = 1 : S = 1 => A = 0 => Q = 1 quelque soit B. Or Q = C = 1, de plus comme R = 0 => D = 1 => /Q = /(1.1)  = 0.
    – si R = 1 et S = 0 : R = 1 => D = 0 => /Q = 1 quelque soit C. Or /Q = B = 1, de plus comme S = 0 => A = 1 => Q = 0.

    Analysons maintenant les états où R et S sont identiques :

     – si R = S = 0 : on a donc A = D = 1, on ne peut donc pas se prononcer sur l’état des NAND. En fait à un instant « n+1 », l’état des NAND va dépendre de l’état de Q et de /Q à l’instant précedent « n » (c’est le principe de la logique séquentielle !).
    Ainsi :
        – si Q = 1 ( => /Q = 0 ) alors B = 0 => Q = 1 et C = 1 => /Q = 0.
        – si Q = 0 ( => /Q = 1 ) alors C = 0 => /Q = 1 et B = 1 => Q = 0.
        On remarque donc que lorsque R = S = 0, l’état des sorties est inchangé : si R = S = 0 à un instant « n+1 » alors les sorties Q et /Q garderont l’état qu’elles avaient à l’instant « n » précédent => Qn+1 = Qn (et /Qn+1 = /Q évidemment). On dit que la bascule RS est en état « mémoire ».

    – si R = S = 1 : on a donc A = D = 0 => Q = /Q = 1. Ainsi quand on va vouloir passer de l’état R = S = 1 => Q = /Q = 1 à l’état R = S = 0       => Qn+1 = Qn alors les sorties devraient rester inchangées ( = 1).
    Mais dans la pratique il faut considérer les temps de commutation des opérateurs logiques. En effet, même s’ils proviennent d’un même fabriquant, leurs temps de commutation seront toujours légèrement différents. Ainsi lorsqu’on va passer de l’état R = S = 1 à R = S = 0, une des entrées A ou B va passer à 1 avant l’autre, ce qui va faire passer soit Q, soit /Q à 0. Mais on ne peut pas savoir qui de A ou de B sera à 1 avant l’autre, donc on ne peut pas déterminer précisement l’état de la sortie… On dit qu’il y a une indétermination sur la sortie. On préfère donc interdire la combinaison    R = S =1 !

    2. Bascule RS synchronisée

    Le fonctionnement est le même que celui d’une bascule RS élémentaire. Seulement les changements d’état vont être synchronisés par une horloge « clk » (clock = horloge en anglais).

    Réalisation :

Bascule RS synchronisée

À noter : /Preset et /Clear sont des commandes prioritaires. Elles sont indépendantes de l’horloge « clk » : lorsque /Preset = 0, alors Q = 1 (instantanément) et lorsque /Clear = 0, alors Q = 0 (instantanément).
    Bien entendu pour représenter une bascule RS dans un schéma électrique, on ne va pas redessiner le montage avec les 4 bascules NAND. Il existe un symbole :

symbole Bascule RS synchronisée

À noter : les « petits cercles » représentés sur les commandes /Preset et /Clear signifient que ces commandes sont actives au niveau bas (0).
    Fonctionnement :

    Pour expliquer le fonctionnement de la bascule RS synchronisée, on peut tracer des chronogrammes : c’est à dire l’état des sorties en fonctions de l’état des entrées dans le temps :

chronogrammes

2. Bascule D

    Nous allons voir que cette bascule peut être utilisée de 2 façons : en bascule « délai » ou « verrou » (appelée aussi « latch »).

    Réalisation :

    Il y a 2 manières de réaliser une bascule D. Elles sont complètement équivalentes :

Bascule D

    Symbole :

symbole Bascule D

    Fonctionnement :

    Quand l’horloge « clk » va passer de 0 à 1, alors la sortie Q va prendre l’état de l’entrée D. On a donc cette table de vérité :

DQn+1
00
11

    Il y a 2 types de fonctionnement : en « délai » ou en « verrou » (« latch ») :

1. Délai

    Ce mode de fonctionnement permet de retarder l’évolution d’un signal : le signal de sortie Q prendra l’état du signal d’entrée D au bout d’un certain temps « délai » donné par l’horloge « clk ». Chronogramme :

Délai

2. Verrou ( ou « Latch »)
    En mode « verrou », la sortie Q peut soit suivre l’évolution de l’entrée D, soit rester dans un état de mémoire, selon que « clk » soit à 1 ou à 0. Chronogramme :

Latch

    Remarque : Finalement, on constate que les 2 modes de fonctionnement diffèrent simplement par le signal d’horloge. En « délai » l’horloge n’a pas besoin d’un grand rapport cyclique, tandis qu’en « verrou » il faudra adapter ce rapport cylclique selon la durée des états suiveur et mémoire désirés.

3. Bascule D à déclenchement par front

    Le fonctionnement est le même que celui d’une bascule D « simple », sauf que l’information sur l’entrée D ne sera prise en compte que sur le front montant (passage de 0 à 1) de « clk » ou sur le front descendant (1 à 0). Contrairement au cas précédent où le changement se faisait sur un état logique de « clk » (0 ou 1 : 1 dans l’exemple).

    Réalisation :

    Prenons l’exemple d’une bascule D à déclenchement par front montant :

Bascule D à déclenchement par front

    Symbole :

symbole Bascule D à déclenchement par front

    Ce qui change par rapport au symbole d’une bascule D « simple », c’est le triangle sur l’horloge « clk ». Il indique que l’entrée D est prise en compte sur le front montant de l’horloge.

À noter : pour une bascule D à déclenchement par front descendant, le symbole est  :

bascule D à déclenchement par front descendant

    On met un cercle devant le triangle de l’horloge « clk » : cela signifie qu’il faut considérer le front descendant de l’horloge.

    Fonctionnement :

    La table de vérité reste la même, mais l’état de D n’est pris en compte que sur un front de l’horloge (le front montant dans notre exemple). Ainsi on peut tracer le chronogramme suivant :

front montant

4. Bascule JK et JK à déclenchement par front

    1. Bascule JK

    Pour décrire rapidement le fonctionnement d’une bascule JK, on peut dire que c’est une bascule RS améliorée. En effet, le principe est le même (avec J au lieu de S et K au lieu de R) mais il n’y a plus d’état indéterminé ! En effet lorsque J = K = 1, alors la sortie Qn+1 (Q à un instant n+1) prendra l’état inverse de Qn (Q à l’état antérieur n).

    Réalisation :

Bascule JK

    Symbole :

symbole Bascule JK

    Fonctionnement :

    Dans l’exemple étudié, les changements d’état de la sortie Q se font lorsque l’horloge « clk » est à 0. On peut établir la table de vérité suivante :

JKQn+1
00Qn (mémoire)
010
101
11/Qn (« Toggle »)

    – si J = K = 0, alors Qn+1 = Qn. On dit que la bascule fonctionne en mode « mémoire ».
    – si J = 0 et K = 1, alors Q = 0.
    – si J = 1 et K = 0, alors Q = 1.
    – si J = K = 1, alors Qn+1 = /Qn. L’état de Q s’inverse, on dit que la bascule fonctionne en mode « Toggle ».

Remarque : comme pour la bascule RS,  les commandes /Pre (Preset) et /Clr (Clear) sont prioritaires : quelque soit l’état des entrées, si /Pre = 0 alors Q = 1, et si /Clr = 0 alors  Q =0.

2. Bascule JK à declenchement par front

    Le fonctionnement est bien entendu le même. Seulement le changement de la sortie Q se fait sur un front montant (passage de 0 à 1) ou descendant (passage de 1 à 0) de l’horloge « clk », contrairement au fonctionnement précédent où le changement de la sortie se faisait sur un état logique de « clk » ( 0 ou 1 : 0 dans l’exemple). La réalisation est plus complexe.

    Réalisation :

Bascule JK à declenchement par front

    Fonctionnement :

    Le fonctionnement est le même que précedemment. Sauf que les changements d’état de la sortie se font sur un front de « clk » : le front montant pour l’exemple choisi.

    Symbole :

symbole Bascule JK à declenchement par front

Remarques :
        – le symbole est quas-identique à celui de la JK simple. On voit qu’il s’agit d’une bascule JK à déclenchement par front montant grâce au « petit triangle » situé sur l’entrée « clk ».
        – dans notre exemple les commandes prioritaires « Pre » et « Clr » sont actives à l’état haut (1 logique) contrairement au cas précedent.
        – comme je l’ai déjà mentionné, il existe aussi des bascules JK à déclenchement par front descendant. Le symbole reste le même, sauf qu’il faut ajouter le « petit rond » sur l’entrée de « clk » :

symbole Bascule JK à declenchement par front descendant

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Résoudre : *
5 + 19 =