Élément de mémoire en
portes Non-Et
Élément de mémoire en
portes Non-Ou
Signal d'horloge et bascule
synchrone
Toute condition antérieure n’a aucun effet sur les valeurs actuelles des sorties, parce que les circuits combinatoires n’ont pas de mémoire.
Dans la majorité des systèmes numériques, on retrouve une combinaison de circuits combinatoires et de dispositifs à mémoire.
Concept de mémoire : commande d’un moteur par bouton poussoir.
Puissance
L’élément de mémorisation le plus important est la bascule, constituée d’un ensemble de portes logiques.
Même si une porte logique ne retient pas de donnée, il est possible d’en raccorder quelques-unes ensemble afin d’obtenir le stockage d’une information.
État des sorties :
Une bascule a donc deux états de fonctionnement.
Une bascule peut avoir plusieurs entrées. Ces entrées sont employées pour commuter « faire basculer » la bascule entre ses deux états (haut et bas).
Une entrée de bascule a besoin de l’excitation d’une impulsion pour changer l’état de sortie, et cette sortie conserve sa nouvelle valeur après la disparition de l’impulsion.
Le terme bascule a plusieurs synonymes dont « élément de mémoire », « multivibrateur bistable » et « Flip flop ».
1. Élément de mémoire en portes Non - Et (Nand)La bascule la plus élémentaire est construite au moyen de deux portes Non - Et
Les deux portes sont rétrocouplées, de sorte que la sortie de la porte Non - Et #1 est connectée à l’une des entrées de la porte Non – Et #2, et vice versa.
Les entrées de l’élément de mémoire sont désignées par S (d’après SET) et R (d’après RESET).
Les entrées R et S se trouvent normalement à l’état haut et l’on doit momentanément en porter une au niveau bas pour changer l’état de sortie de la bascule.
Pour R = S = 1, il existe deux états probables de la sortie.
Un élément de mémoire en Non-Et possède deux états stables possibles quand R = S = 1.
1.1. Mise à niveau 1 de l’élément de mémoire.
Examinons ce qui se passe lorsque S est momentanément amené à 0 pendant que R reste à 1.
Résumé :
L’application d’une impulsion de niveau bas sur S place la bascule dans l’état Q = 1. On dit que cette opération met la bascule à 1.
L’état Q = 1 est appelé l’état 1 de la bascule (SET en anglais d’où le S).
1.2. Mise à zéro de l’élément de mémoire
Voyons maintenant ce qui se produit quand l’entrée R est modifiée par une impulsion de
niveau bas pendant que S reste au niveau haut.
L’application d’une impulsion de niveau bas sur l’entrée R place la bascule dans l’état Q = 0. On dit que cette opération met à 0 la bascule. L’état Q = 0 est appelé RAZ ou RESET en anglais d’où R.
1.3. Mise à zéro et à 1 simultanément
Le dernier cas à considérer est celui où les entrées S et R sont mises toutes les deux à 0.
Cette situation produit des niveaux hauts aux deux sorties de la bascule en Non-Et de sorte que Q = NON Q = 1.
Évidemment, il s’agit là d’une condition indésirable, puisque les deux sorties sont supposées être l’inverse, l’une de l’autre.
Quand R et S reviennent toutes les deux à 1, l’état de sortie de la bascule est conditionné par l’entrée qui revient à 1 en premier. Donc, des transitions simultanées à l’état 1 provoquent des résultats imprévisibles.
Pour toutes ces raisons, la condition R = S = 0 est supposée ne jamais se produire dans un élément de mémoire en Non-Et.
1.4. Table de vérité d’un élément en Non-Et
S |
R |
Sortie |
1 |
1 |
Mémoire |
0 |
1 |
Q=1 SET |
1 |
0 |
Q=0 RESET |
0 |
0 |
Indésirable |
a) S = R = 1 ; cette condition correspond à l’état normal de repos et elle n’affecte pas l’état de sortie de la bascule. Les sorties Q et NON Q demeurent dans l’état qu’elles occupaient avant l’application de cette condition.
b) S = 0 R = 1 Mise à 1 de la bascule
c) S = 1 R = 0 Mise à 0 de la bascule
d) S = R = 0 ; Cette condition est équivalente à vouloir mettre la mémoire à la fois à 1 et à 0. Ce qui donne des résultats ambigus.
Exercice 1 : Soit la mémoire en Non-Et suivante
État initial Q = 0
On applique aux entrées R et S, les formes d’ondes ci-après. Trouvez la forme d’onde de Q
Exercice 2 :
1. Nommez l’état normal de repos des entrées d’une mémoire en Non-Et;
2. Quand une bascule est dans l’état 1, donnez les valeurs de Q et NON Q ;
3. Indiquez la seule manière de faire passer la sortie d’une mémoire en Non-Et de 1 à 0.
1.5. Représentation synonyme
Les entrées sont vraies au niveau bas. C’est pour cette raison que l’élément de mémoire en Non-Et est représenté en recourant au symbole synonyme de la porte Non-Et.
2. Élément de mémoire en portes Non-Ou (NOR)
Deux portes Non-Ou rétrocouplées constituent une mémoire SR. Un tel montage est analogue à celui d’une mémoire en Non-Et, sauf que les sorties Q et NON Q sont interverties.
Les entrées S et R se trouvent normalement à l’état bas et l’on doit momentanément en porter une au niveau haut pour changer l’état de sortie du circuit.
Pour S = R = 0, il existe deux états probables de la sortie.
On porte momentanément S à 1 pendant que R reste à 0.
L’application d’une impulsion de niveau haut sur S place la bascule dans l’état Q = 1 (RAU ou SET).
2.2. Mise à 0 de l’élément de mémoire
On porte momentanément R à 1 pendant que S reste à 0.
L’application d’une impulsion de niveau haut sur R place la bascule dans l’état Q = 0 (RAZ ou RESET).
S |
R |
Sortie |
0 |
0 |
Mémoire |
0 |
1 |
Q=0 RESET |
1 |
0 |
Q=1 SET |
1 |
1 |
Indésirable |
Application :
Si l’interrupteur ON/OFF est fermé et que le faisceau de lumière atteint le phototransistor, les entrées S et R sont toutes les deux au niveau logique 0, le système veille. Si le faisceau de lumière est coupé, le phototransistor est bloqué, le niveau logique sur S passe à 1. L’alarme retentit. Pour désarmer le système, il faut ouvrir l’interrupteur ON/OFF.
Exercice : Soit la mémoire en « Non-Ou » suivante :
État initial Q = 0. On applique aux entrées S et R les formes d’ondes ci-après. Trouvez la forme d’onde de Q
3. Signal d’horloge et bascule synchrone
Les circuits numériques peuvent fonctionner de façon soit synchrone ou asynchrone. Dans les systèmes asynchrones, la sortie des circuits logiques peut changer d’état à tout moment quand une ou plusieurs entrées changent.
Un système asynchrone est difficile à concevoir et à dépanner.
Par contre dans un système synchrone, le moment exact où la sortie change d’état est commandé par un signal que l’on appelle couramment « signal d’horloge ».
Ce signal est généralement un train d’ondes rectangulaires ou carrées.
Le signal d’horloge est habituellement distribué à tous les étages du système, de sorte que les sorties changent d’état seulement quand le signal d’horloge effectue une transition (passage de 0 à 1 ou de 1 à 0). Ces transitions sont aussi appelées Fronts.
Bascules synchrones
Toutes les bascules synchrones disposent d’une entrée d’horloge que nous désignerons par l’abréviation Clk (Clock), Ck ou H. Cette entrée est symbolisée, sur les schémas, par un triangle qui signale que cette bascule ne réagit qu’au passage d’un des fronts du signal d’horloge;
Toutes les bascules synchrones possèdent au moins une entrée de commande;
Les niveaux logiques des entrées de commande dictent le changement qui doit apparaître à la sortie, tandis que le signal d’horloge déclenche ce changement au moment où arrive un des fronts;
Les entrées sont synchronisées par le signal d’horloge, elles sont appelées entrées synchrones.
4. Bascule RS synchrone
La bascule va passer d’un état à l’autre seulement quand le signal d’horloge effectue la transition de 0 à 1. Les entrées S et R commandent la valeur qu’on retrouve à la sortie de la bascule.
Table de vérité
S |
R |
Clk |
Q |
0 |
0 |
|
Mémoire |
0 |
1 |
|
Reset |
1 |
0 |
|
Set |
1 |
1 |
|
Non souhaitable |
Cas d’une bascule déclenchée par un front descendant
Table de vérité
S |
R |
Clk |
Q |
0 |
0 |
¯ |
Mémoire |
0 |
1 |
¯ |
Reset |
1 |
0 |
¯ |
Set |
1 |
1 |
¯ |
Non souhaitable |
Circuits internes d’une bascule RS déclenchée par un signal d’horloge
Le circuit d’aiguillage dirige l’impulsion Clk sur l’entrée S2 ou R2 selon les valeurs présentes sur les entrées S1 et R1
Exemple :
S1 = 1, R1 = 0, le signal Clk franchit la porte « Non-Et » #1 pour produire une impulsion basse sur S2 => Q = 1
S1 = 0, R1 = 1, le signal Clk franchit la porte « Non-Et » #2 pour produire une impulsion basse sur R2 => Q = 0
5. Bascule JK
Les entrées J et K commandent l’état de la bascule comme le font les entrées S et R de la bascule SR synchrone à l’exception de l’importante différence suivante :
J = K = 1 ne donne pas lieu à une condition ambiguë.
Quand survient cette condition, la bascule passe toujours à l’état opposé à l’arrivée du FM de l’horloge.
Table de vérité
J |
K |
Clk |
Q |
0 |
0 |
|
Mémoire (Q0) |
0 |
1 |
|
Reset (0) |
1 |
0 |
|
Set (1) |
1 |
1 |
|
Bascule (Non Q0) |
Exemple : état initial Q = 1
Remarque :
Utilisées seules, les entrées J et K ne peuvent pas modifier l’état de la bascule.
Bascule JK déclenchée par les FD du signal d’horloge.
J |
K |
Clk |
Q |
0 |
0 |
¯ |
Mémoire (Q0) |
0 |
1 |
¯ |
Reset (0) |
1 |
0 |
¯ |
Set (1) |
1 |
1 |
¯ |
Bascule (Non Q0) |
Circuit détecteur de fronts
Clk2 n’est au niveau haut que durant quelques nanosecondes.
Applications :
1. Détection d’une séquence d’entrées
La sortie de certains circuits ne réagit qu’à une succession particulière de signaux sur les entrées.
Une porte ET peut servir à déterminer que deux entrées A et B, sont toutes deux au niveau haut. Cependant, une telle porte est incapable de réagir différemment selon que c’est A ou B qui passe à 1 en premier.
Maintenant, supposons que l’on veut avoir une sortie au niveau haut seulement si A passe à 1 avant que B ne passe à 1.
Une façon d’y parvenir est de construire le circuit suivant :
2. Division de la fréquence
Chaque bascule divise par deux la fréquence du signal qui alimente son entrée Clk.
Comptage : en plus d’être un diviseur de fréquence, le circuit précédent est un compteur binaire.
Circuits internes d’une bascule JK déclenchée par un signal d’horloge
6. Bascule D synchrone
Contrairement aux bascules RS et JK, cette bascule ne possède qu’une entrée de commande synchrone, appelée D pour données.
Le fonctionnement de la bascule D est très simple : Q prend l’état de l’entrée D à l’instant du front montant de l’horloge. Autrement dit, le niveau actuellement sur D se retrouvera mémorisé dans la bascule à l’instant du front montant.
Table de vérité
D |
Clk |
Q |
0 |
|
0 |
1 |
|
1 |
Chronogramme
Il est important de noter que Q ne change de valeur que si un front montant survient. L’entrée D n’a aucun effet entre deux fronts montants.
Une bascule D déclenchée par un front descendant fonctionne exactement comme celle que l’on vient de décrire.
* Réalisation d’une bascule D
Une bascule D déclenchée par un signal d’horloge n’est pas difficile à construire : il suffit d’ajouter un inverseur à une bascule RS déclenchée par un signal d’horloge.
7. Entrées asynchronesLes entrées S, R, J, K et D sont qualifiées de synchrones étant donné que la sortie de la bascule est synchronisée par le signal d’horloge.
La majorité des bascules synchrones possèdent, en plus des entrées asynchrones qui agissent indépendamment des entrées synchrones et du signal d’horloge.
On a recours à de telles entrées pour forcer en tout temps la remise à 1 ou à 0 de la bascule, quelles que soient les conditions des entrées.
On les appelle aussi des entrées prioritaires qui imposent un état à la bascule malgré les commandes lancées par les autres entrées.
RAU |
RAZ |
Réponse de la bascule |
1 |
1 |
Fonctionnement synchrone |
0 |
1 |
Q = 1 |
1 |
0 |
Q = 0 |
0 |
0 |
Inutilisé |
Les entrées asynchrones sont des niveaux de tension continue (DC).
Autres appellations :
RAU |
RAZ |
DC SET PRESET (PRE) SET SD (direct Set) |
DC CLEAR CLEAR (CLR) RESET CD (direct clear) |
Dans de nombreuses applications, les entrées asynchrones sont inutiles, on les maintient alors en permanence à leur niveau logique inactif.
Exemple :