< Logique séquentielle
fin de la boite de navigation du chapitre

Mémoires RS

La mémoire (appelée parfois bascule monostable) est un composant permettant de retenir un bit d'information. C’est un élément qui ne peut pas être réalisé en combinatoire pur. Pour son étude il faut donc des méthodes différentes de celles du combinatoire, à savoir des tables de vérité. On utilisera cependant une table d'évolution, qui ressemble à une table de vérité.

Voir aussi bascules électroniques RS.

Définition

La description du séquentiel se fait à l'aide de deux états différents : l'état présent et l'état futur. La table qui décrit l'état futur en fonction des entrées et de l'état présent s’appelle table d'évolution (appelée aussi table de vérité ici par abus de langage).

L'état présent désigne toujours une ou plusieurs sorties de mémoire (et par la suite de bascule). L'état futur désigne ce qu’il y aura en sortie dans le futur. Le futur en question peut être très proche pour des composants modernes (inférieur à 10 ns).

Les états pour ce chapitre seront sur un seul bit. L'état présent sera noté q et l'état futur sera noté Q ou .

Voici un exemple de table d'évolution pour une mémoire RS.

Table d'évolution
EntréesÉtat futurFonction réalisée
RSQ ou
00qmémorisation
011mise à un
100mise à zéro
11Xpriorité
Propriété d'une table d'évolution

Ce qui change dans cette table d'évolution par rapport à une table de vérité combinatoire, c’est la présence dans la colonne Q (ou ), de q, c'est-à-dire de l'état présent. Cela montre qu'elle exprime donc l'état futur en fonction de l'état présent q.

Toute ligne qui contient l'état présent ne peut en aucun cas être réalisée de manière combinatoire et décrit ainsi un élément séquentiel.

Cette propriété a des conséquences importantes sur les équations que l’on peut tirer d'une telle table.

Définition

L'équation obtenue à partir d'une table d'évolution est une équation de récurrence. Elle est appelée ainsi, car elle exprime Q (ou ) en fonction de q.

Je pense important de faire une mise au point avant de continuer.

Remarque

La dernière ligne de la table d'évolution (pour R = S = 1) n’est pas traitée dans toute la littérature de la même manière. On trouve souvent une interdiction concernant cette ligne. Remarquez qu'alors, les sorties souhaitées sont au nombre de deux, notées Q et . En ce qui nous concerne, nous autorisons la ligne en question mais cela a un prix : on abandonne .

Revenons à notre table d'évolution donnée en exemple (ci-dessus). L'entrée S sert donc à positionner la sortie à 1, tandis que R sert à mettre à 0 (on l'appelle souvent RAZ = Remise A Zéro).

Pour éviter d'interdire la dernière ligne de la table d'évolution, nous choisissons d'étudier nos mémoire pour une seule sortie notée Q, en laissant ainsi tomber la sortie. Le X dans cette ligne représente trois cas distincts :

  • X = 0, on parle de mémoire à Reset prioritaire,
  • X = 1, on parle de mémoire à Set prioritaire,
  • X = q, on parle alors de mémoire à mémoire prioritaire.

Une mémoire donnée ne peut que réaliser un des trois cas et son nom en découlera immédiatement.

Exemple

Nous proposons le schéma suivant et son tableau de Karnaugh associé :

Nous vous proposons dans le schéma ci-dessus, deux versions de notre mémoire : un schéma croisé (à gauche) qui peut laisser penser à la présence de deux fils en forme de boucle, mais cette même mémoire en version décroisée (au centre) montre qu'une seule boucle est présente.

Remarquez la variable q introduite dans le tableau de Karnaugh (alors que le circuit n'a en réalité que deux entrées). Ce tableau de Karnaugh sert lui aussi à déduire une équation de récurrence (simplifiée dans ce cas).

L'équation de récurrence déduite exprime Q en fonction de q, R et S. Mais si vous regardez le schéma vous verrez que Q et q représente le même fil (rouge). Il en résulte une difficulté de raisonnement, au premier abord, parce qu'un fil ne peut pas prendre deux valeurs différentes à ses deux extrémités. J'y reviens un petit peu plus tard.

L'équation de récurrence s'écrit :

Fin de l'exemple

Quelle est la priorité de notre mémoire donnée en exemple ?

Priorité de la mémoire

La mémoire RS présentée ci-dessus est une mémoire à Reset prioritaire car la colonne pour R=1 et S=1 nous montre deux 0. Quand la mise à un (S) et la mise à zéro (R) "se battent", c’est le R qui gagne.

Je vous avais promis de revenir sur la difficulté de raisonnement liée au fait que notre fil rouge avait deux valeurs éventuellement différentes à ses extrémités.

Principe

Prenez l'habitude de raisonner sur un schéma décroisé. Sur ce schéma vous imaginez un axe des temps allant de la gauche vers la droite. Ce n’est pas si stupide que cela car vos portes logiques mettent un certain temps pour "calculer" leurs sorties. Du coup, si à gauche vous avez l'état présent "q", vous aurez à droite l'état futur "Q" qui sera fonction de q, R et S.

Fin du principe

Exercice 1

Pour le schéma ci-dessous, compléter le tableau de Karnaugh ainsi que le diagramme des temps. On supposera pour simplifier que les portes répondent de manière instantanée (ce que l’on a toujours fait jusqu'à maintenant).

Mémoire D (D latch)

Cette fonction comporte deux entrées D et H et une sortie Q. L'équation de récurrence de la mémoire D n'a pas beaucoup d'intérêt, il vaut mieux retenir son fonctionnement : recopie son entrée D sur sa sortie Q lorsque son horloge H est à 1.

Bascules électroniques D

Définition

On appelle front d'horloge tout changement d'horloge. Ainsi le passage d'une horloge de la valeur '0' à la valeur '1' sera nommé front montant et le passage d'une horloge de la valeur '1' à la valeur '0' sera nommé front descendant. On parle aussi parfois de flanc montant et de flanc descendant.

Cette bascule comporte aussi deux entrées, D et H et une sortie Q, comme la mémoire D. La grande différence est que la recopie de l'entrée sur la sortie ne se fait maintenant que sur flanc montant de l'horloge. Notez sur le schéma ci-dessous comment est notée cette sensibilité au flanc montant de l'horloge.

La bascule D la plus complexe comporte quatre entrées D, H, S et R et une sortie Q. Les entrées supplémentaires sont actives à l'état bas (donc notées parfois /S et /R) et ont les même fonctions que dans le cas d'une mémoire. Elles sont dites asynchrones dans le sens où contrairement à D elles sont complètement indépendantes des flancs montants de l'horloge.

Plus d'information ici : Bascules électroniques.

Bascules électroniques JK

D'autres informations ici : la bascule JK.

Nous complétons cette information par ce que l’on appellera, dans la suite de ce cours, un diagramme d'évolution. Ici, il est constitué de deux états (en vert) et de transitions (les flèches). Ce diagramme d'évolution est très important pour nous car il nous servira lors de nos synthèses. Il remplace la table de vérité de la bascule JK.

Diagramme d'évolution d'une bascule JK

Voici aussi sous forme de diagramme temporel le fonctionnement d'une JK.

Diagramme temporel du fonctionnement d'une bascule JK

Le "T = Toggle" qui est présent dans la figure se traduirait par "B = Basculement" en français.

Exercice 2

Transformer une bascule JK en bascule D. Transformer ensuite une bascule D en bascule JK.

Exercice 3

Nous désirons réaliser la bascule E suivante.

  • si E=0 alors Q=0
  • si E=1 alors Q(n+1) = /Q(n).
Cet article est issu de Wikiversity. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.