[AUDIO_VIDE] Bonjour. Nous allons continuer le cours sur les enseignes et afficheurs à LED. Nous allons maintenant aborder les circuits logiques séquentiels. Après une brève présentation des systèmes séquentiels, nous aborderons les bascules, qui constituent l'élément de base des systèmes séquentiels. Ensuite nous aborderons les compteurs et les registres. Les circuits logiques séquentiels sont des systèmes dont l'état présent tient compte de l'état antérieur. La sortie du système à l'instant T, peut dépendre des entrées à ce même instant mais également de l'état passé. Ce sont des systèmes à mémoire. Ils tiennent compte de la notion d'ordre et de durée. Si nous prenons comme exemple un moteur commandé par deux boutons poussoirs. Nous avons ici un bouton poussoir marche m et un bouton poussoir arrêt a. Alors dans ce tableau, nous avons l'état du moteur à l'instant T- 1 et l'état du moteur à l'instant T. Si nous prenons la première combinaison, nous avons les deux boutons poussoirs relachés, le moteur était à l'état arrêt, eh bien, le moteur reste à l'arrêt. Si on appuie sur le bouton poussoir marche alors que le moteur était à l'arrêt, le moteur marche. Si nous relâchons à nouveau les deux boutons poussoirs, et que le moteur était en marche, le moteur reste en marche. A cette étape, nous constatons que nous avons les mêmes combinaisons des entrées, et nous constatons un état de sortie différent. Nous constatons ici que donc la sortie est conservée quel que soit sont état. Nous avons ici un système séquentiel et la réalisation de ce circuit nécessite un circuit de mémorisation, notamment la bascule. La bascule est l'élément de base du circuit séquentiel. C'est un circuit élémentaire de mémorisation qui présente deux états complémentaires stables. On note deux bascules, des bascules asynchrones et des bascules synchrones. La bascule RS présente une entrée de mise à 0 et une entrée de mise à 1. La structure de la bascule est présentée par ce shéma, et nous avons le logigramme, qui est présenté ici à partir de porte nord. Sa table de vérité est représentée ici par ce tableau. Lorsque les deux entrées sont à zéro, la sortie reste inchangée. Pour illustrer la première combinaison, si nous choisissons R égal zéro et S égal zéro, et nous supposons que la sortie vaut 0 au départ, ça veut dire que la sortie complémentée vaut 1. Le 1, il est réinjecté ici, donc nous avons 1 là . 1 ou 0, ça donne 1 barre, ça donne 0. Donc la sortie est bien conservée. Lorsque l'entrée de mise à 1 est activée, la sortie est mise à 1. Lorsque l'entrée de mise à 0 est activée, la sortie est mise à 0. Il est interdit d'activer les deux entrées à la fois, donc cette situation est indéterminée. La prise en compte de l'état des entrées de la bascule RS peut être synchronisée par une horloge. Ceci permet d'éviter des arrivées accidentelles de 0 sur R ou sur S. Une bascule R S synchronisée par une horloge peut être déclenchée sur front montant, déclenchée sur front descendant ou tout simplement sur le niveau de l'impulsion. La bascule D est obtenu à partir de la bascule précédente, la bascule RS, où nous avons bouclé ici l'entrée S à l'entrée R à travers un inverseur. Donc nous avons S qui est égale à D, et R qui est égale à D barre. La sortie de cette bascule prend l'état de l'entrée après une impulsion au niveau de l'horloge. Cette bascule permet de régler le problème de l'état indéterminé que nous avons signalé au niveau de la bascule RS. Sa table de vérité est donnée ici par ce tableau. Lorsque l'horloge n'est pas activée, l'état de la sortie reste inchangé, si horloge est activée, nous avons la sortie qui suit l'entrée. La table de vérité de la bascule J K est présentée ici. Lorsque les deux entrées J et K sont égales à 0, la sortie reste inchangée. Lorsque les deux entrées sont différentes, la sortie suit l'entrée J, et lorsque les deux entrées sont égales à 1, la sortie est opposée, c'est-à -dire si la sortie était à 0, elle bascule à 1, si elle était à 1, elle bascule à 0. Les bascules disposent également d'entrées asynchrones de forçage à 0 ou à 1. Nous avons ici une entrée de forçage à 1 activée niveau bas, une entrée de forçage à 0 activée également niveau bas. Ces deux entrées sont prioritaires sur le fonctionnement normal de la bascule. Il est interdit que les deux entrées soient activées en même temps. Si l'entrée de mise à 1 est activée, l'entrée de mise à 0 désactivée, la sortie est mise à 1. Si l'entrée de mise à 1 est désactivée, l'entrée de mise à 0 est activée, la sortie est mise à 0. Si les deux entrées sont désactivées, c'est le fonctionnement normal de la bascule. Les bascules RS, D, et JK peuvent être configurées en mode toggle ou mode commutation. C'est-à -dire des sorties qui oscillent entre 0 et 1. Ces modes de fonctionnement en font des diviseurs de fréquences par deux. Le mode toggle est à la base du compteur asynchrone. Voici le chemin de la bascule D configurée en mode toggle. Nous avons la sortie Q barre qui est rebouclée au niveau de l'entrée D. Et pour le fonctionnement de cette bascule, à chaque front montant de l'horloge ici, nous avons la sortie qui bascule. C'est-à -dire si la sortie était égale à 1, ça passe à 0, ou si c'était égal à 0, ça passe à 1. Si nous supposons la sortie égale à 0 à un instant donné ça veut dire que la sortie Q barre vaut 1, au prochain front de l'horloge le 1 est mis à l'entrée et donc, la sortie va valoir 1. La sortie bascule de 0 à 1. Ce fonctionnement est illustré sur ce chronogramme, nous avons ici l'horloge les fronts montants de l'horloge qui sont représentés ici. Donc à chaque front montant de l'horloge, l'état de la sortie bascule. Au prochain front, l'état de la sortie bascule ainsi de suite. La fréquence de la sortie est divisée par deux par rapport à la fréquence de l'entrée. Voici le schéma de la bascule JK configurée en mode toggle. Il suffit de mettre à 1 à J et à 1 à K. A chaque front de l'horloge, rappelez-vous de la table de vérité de la bascule JK, si J et K sont égales à 1, la sortie est opposée, ça veut dire que la sortie bascule. Donc le chronogramme que nous avons ici, à chaque front de l'horloge, la sortie bascule. Et nous avons ici la bascule R S configurée en mode toggle, la sortie Q est rebouclée au niveau de l'entrée R, et la sortie Q barre est rebouclée au niveau de l'entrée S. Et à chaque front de l'horloge, la sortie bascule. Un compteur binaire est un système séquentiel qui permet de dénombrer des impulsions appliquées sur son horloge. Il restitue au niveau de ses sorties le nombre d'impulsions comptées sous forme binaire. Le nombre m d'états du compteur, appelé modulo, dépend du plus grand nombre d'événements à compter. Nous avons deux types de compteurs. Le compteur asynchrone et le compteur synchrone. La base du compteur binaire asynchrone est le mode toggle des bascules. La sortie de la bascule I précédente commande l'horloge de la bascule suivante. Nous distinguons des compteurs modulo, 2 à la puissance n, et des compteurs modulo m, inférieur à , 2 à la puissance n. Nous allons illustrer, ici, l'exemple d'un compteur, modulo m égale, 2 à la puissance n. Et nous prenons le cas pour, m égale 8. Donc, nous aurons besoin de trois bascules, 2 à la puissance 3. Alors, voici la structure du compteur que nous proposons. C'est à base de la bascule D, configurée en mode toggle. Nous avons trois bascules. Et la sortie, Q barre, de la première bascule, commande l'horloge de la deuxième. Et la sortie, Q barre, de la deuxième commande l'horloge de la troisième, et la première est commandée par l'horloge du système. Si nous analysons ce schéma, la fréquence de l'horloge est divisée par 2, au niveau de la sortie, ici, Q1. À chaque front montant de l'horloge, la sortie Q1 bascule. À chaque front montant de Q1 barre, la sortie Q2 bascule. Et à chaque front montant de Q2 barre, la sortie Q3 bascule. Voici le chronogramme des signaux de notre compteur. Nous avons, ici, l'horloge, et les différents fronts montants de l'horloge. Vous comprenez bien que la sortie Q1, bascule à chaque front de l'horloge, de front montant de l'horloge, nous avons la sortie Q1 qui bascule. Et la sortie Q2 doit basculer à chaque front montant de Q1 barre, mais le front montant de Q1 barre correspond au front descendant de Q1. Ce qui fait que Q2 bascule à chaque front descendant de Q1. Et nous avons Q3 qui bascule à chaque front montant de Q2 barre. Et le front montant de Q2 barre correspond au front descendant de Q2. Donc nous avons ici Q3 qui bascule à chaque front descendant de Q2. Si nous analysons maintenant les sorties, nous avons Q3, Q2, Q1, la disposition des sorties ; ici, nous avons, zéro, zéro, zéro ; zéro, zéro, 1, et ainsi de suite. Donc nous avons zéro, 1, 2, 3, 4, 5, 6, 7, et on recommence. Ainsi de suite. Pour le comptage binaire synchrone, les bascules sont synchronisées par la même horloge. La méthodologie des synthèses se fait en trois étapes. Dans un premier temps, il faut choisir le nombre et le type de bascules, le nombre de bascules dépend du plus grand événement à représenter. Ensuite, il faut utiliser la table des transitions des bascules pour calculer les fonctions d'entrée. Et la dernière étape consiste à éliminer les cycles qui ne font pas partie de la représentation. Voici les tables de transition des trois bascules, D, RS et JK. La transition de zéro à zéro, on met D à zéro. pour une transition de zéro à 1, D est à 1. Et pour une transition de 1 à 1, D est à 1. Pour les deux autres bascules, RS et JK, les deux traits signifient que la valeur est indifférente. Que ça soit à zéro ou à 1, c'est pareil. Nous vous proposons maintenant la synthèse d'un compteur synchrone, modulo 8 ; 8 étant égal à , 2 à la puissance 3, nous aurons besoin de trois bascules ; et nous avons choisi une bascule D. Voici la table de vérité de notre compteur. Comme nous connaissons déjà les sorties, donc les sorties sont représentées ici, donc, on veut compter de zéro à 7, l'objectif c'est de calculer les fonctions d'entrées, D1, D2 et D3. Pour remplir ces fonctions d'entrée, on va utiliser les tables de transition précédentes. Pour passer de zéro à 1, au niveau de la première bascule, il faut mettre, ici, au niveau de D, la valeur 1. Et pour passer de zéro à zéro, on a zéro, pour passer de zéro à zéro, nous avons, zéro, au niveau de D3. Et c'est la même logique qui permet de représenter le reste. Voici la table, remplie au complet. À partir de cette table de vérité, nous pouvons maintenant élaborer les différentes fonctions. Remarquez que, ici, D1 est égal à Q1 barre. On peut utiliser la table de Karnaugh, pour pouvoir représenter ces trois fonctions. Voici les tables de Karnaugh qui permettent de représenter les équations d'entrées. Nous avons, ici, la table pour D1, pour D2 et pour D3. À partir de cette table, nous pouvons faire les regroupements pour sortir les équations. Alors, pour D1, les quatre cases, ici, peuvent être représentées et l'équation donnerait, ici, D1 égale Q1 barre. Pour D2, nous avons, ici, les deux regroupements, donc les deux termes, et, après simplification, nous avons, D2 égale Q1, ou exclusif, Q2. Et pour D3, nous avons trois groupes, et l'équation finale nous donne, D3 égale Q1 et Q2, ou exclusif, Q3. Voici le logigramme de notre compteur. Nous avons ici D1, qui est égal à Q1 barre, et nous avons D2, qui est égal à Q1, ou exclusif, Q2. Et nous avons D3, qui est égal à , ici, Q2 barre ou Q1 barre, le tout, barre, ou exclusif Q3. On peut généraliser le comptage binaire synchrone pour un compteur, modulo, 2 à la puissance i. Alors, on aurait alors, D1 qui serait égal à Q1 barre, D2, Q1, ou exclusif Q2, et D indice i, qui serait égal à Q1, et Q2, et Q i-1, ou exclusif, Qi. Un registre est une mémoire. Il peut être constitué de n bascules. Nous avons les registres de mémorisation, et les registres à décalages. Voici un exemple de registre de mémorisation, de quatre bits, fait à partir de bascules D. Pour le fonctionnement de ce registre, nous avons, ici, l'horloge qui est synchronisée au niveau des quatre bascules, et les entrées parallèle, que vous avez ici, se retrouvent au niveau des sorties ; à chaque front montant de l'horloge, si l'entrée R est validée, c'est-à -dire R égale 1, à chaque front montant de l'horloge, les entrées, E indice i, sont présentes au niveau de, Q indice i. Ces registres sont utilisés dans les microprocesseurs et dans les mémoires RAM. Nous vous proposons ici un registre à décalage, quatre bits, décalage vers la droite. Nous avons ici une entrée série, l'horloge qui est synchronisée sur les quatre bascules, nous avons ici des sorties parallèle, et une sortie série. Pour le fonctionnement de cette bascule, à chaque front de l'horloge, l'entrée série est transmise ici, au niveau de S zéro, S zéro au niveau de S1, S1 au niveau de S2, ainsi de suite. Nous avons ici un registre entrée série ou parallèle, quatre bits. Pour l'analyse de ce circuit, nous avons une entrée série, et quatre entrées parallèle. Nous avons, ici, une entrée de validation, et l'horloge qui est synchronisée sur toutes les bascules. Si l'entrée de validation est égale à 1, nous aurons un zéro, ici, qui va inhiber les entrées parallèle. Et ici nous aurons un 1, qui va activer l'entrée série. Et donc, à chaque front montant de l'horloge, les entrées se retrouvent au niveau des sorties, et nous aurons un décalage ainsi de suite. Et si l'entrée V vaut zéro, ici, nous aurons l'entrée série qui est inhibée, et donc l'entrée, E zéro, qui est activée, ici, E1, qui est activée, là , ainsi de suite. Et donc, nous aurons les entrées parallèle qui seront disponibles, ici. Et à chaque front montant de l'horloge, les entrées parallèle seront transmises au niveau de la sortie, et à chaque front de l'horloge les entrées seront décalées. Nous venons d'aborder les circuits logiques séquentiels, à travers une introduction des systèmes séquentiels, les bascules, qui sont l'élément de base des systèmes séquentiels, les compteurs et les registres. Les registres, entrée série, sortie parallèle, sont souvent utilisés dans la commande des afficheurs matriciels.