
Cette leçon vidéo explique en détail la bascule JK, un élément clé de la logique séquentielle. Elle commence par rappeler le problème d’état interdit de la bascule RS et montre comment les bascules D‑latch et D‑flip‑flop résolvent partiellement ce problème. Le besoin d’une bascule à deux entrées indépendantes sans état interdit conduit à la conception de la bascule JK, où J remplace S et K remplace R. Le présentateur décrit le tableau de vérité de la version asynchrone (sans horloge), utilise un tableau de Karnaugh à trois variables (J, K, Qₙ₋₁) pour obtenir les fonctions logiques simplifiées de Q et Q̅, puis montre comment implémenter ces fonctions avec des portes OR/AND/NOT et, via les lois de De Morgan, uniquement avec des NAND. Il souligne les limites de la version asynchrone (risques de race condition) et introduit les versions synchrones : la JK latch (niveau‑déclenchée) et la JK flip‑flop (front‑déclenchée) basées sur une architecture maître‑esclave. Le fonctionnement de la JK flip‑flop est détaillé : modes mémoire, set, reset et toggle selon les combinaisons J/K, avec un chronogramme illustrant le comportement à chaque front montant de l’horloge. Enfin, il expose les applications pratiques – compteurs binaires, diviseurs de fréquence, registres à décalage et stockage d’états dans des machines à états finis – en insistant sur l’utilité du mode toggle. La vidéo se conclut en annonçant de futures démonstrations d’applications concrètes.
Chapters
Bonjour à tous et bienvenue dans cette nouvelle leçon consacrée à la logique séquentielle. Aujourd'hui, nous allons découvrir la bascule JK. Dans les leçons précédentes, nous avons étudié la bascule RS qui présente un état problématique appelé état interdit. Cet état apparaît lorsque les deux entrées sont activées simultanément. Selon la convention choisie, Cela peut correspondre à S= 0 et R= 0 comme nous l'avons vu, ou bien S= 1 et R= 1 selon d'autres configurations possibles. Ce cas entraîne une instabilité qui limite l'utilisation pratique de la bascule RS. Pour éliminer ce problème, les ingénieurs ont conçu la bascule D-latch. Celle-ci ne possède qu'une seule entrée, notée D, qui combine intelligemment les rôles des anciennes entrées S et R de manière opposée. Ainsi, les deux entrées ne peuvent jamais être actives en même temps. Et l'état interdit disparaît. Nous avons également vu la bascule D flip-flop qui exploite le front montant ou descendant d'un signal d'horloge pour mémoriser l'information de manière synchronisée. Cependant, si l'on souhaite conserver 2 entrées indépendantes comme dans la RS tout en évitant l'état interdit, une autre solution a été développée. Il s'agit de la bascule JK. Dans cette version, l'entrée J reprend le rôle de S et l'entrée K celui de R. Avec une logique adaptée qui supprime définitivement l'instabilité. La bascule JK est un circuit séquentiel qui reprend le principe de la bascule RS mais en supprimant son état interdit. Il possède 2 entrées indépendantes: J équivalente à S pour mettre la sortie à 1 et K équivalente à R pour mettre la sortie à 0. En résumé, la bascule JK peut mémoriser son état quand J= 0 et K= 0, mettre la sortie à 1 quand j égal à 1 et k égal à 0, mettre la sortie à 0 quand j égal à 0 et k égal à 1, basculer son état quand j égal à 1 et k égal à 1. C'est cette dernière possibilité où j égal à 1 et k égal à 1, appelée aussi mode toggle, qui rend la bascule JK particulièrement utile pour construire des compteurs binaires et d'autres circuits séquentiels. Examinons maintenant le fonctionnement de la bascule JK en détail. Pour rendre l'explication plus claire, commençons par la version asynchrone de la bascule JK. Autrement dit, celle qui ne dispose que de 2 entrées J et K sans signal d'horloge. Afin de simplifier l'élaboration des fonctions logiques des sorties Q et Q', nous allons nous appuyer sur le tableau de Karnaugh. Je l'ai déjà présenté dans la série consacrée à la logique combinatoire. Commençons par l'expression de la sortie Q, ou Qn selon la préférence de notation. En plus des 2 entrées directes J et K, la bascule prend aussi en compte la rétroaction Qn-1, représente l'état précédent de la sortie. Ainsi, pour construire le tableau de Karnaugh, nous allons travailler avec 3 variables: J, K et Qn-1, que nous disposons de cette manière. Lorsque les 2 entrées J et K valent 0, la bascule ne modifie pas son état. Autrement dit, la sortie conserve la valeur précédente Qn-1, qui devient alors la nouvelle sortie Qn. Lorsque J= 0 et K= 1, la bascule est placée en mode reset. Dans ce cas, la sortie est forcée à 0 quel que soit l'état précédent de Q. Si J= 1 et K= 0, la bascule est placée en mode set. Dans ce cas, la sortie est forcée à 1. Et lorsque les 2 entrées J et K valent 1 simultanément, la bascule JK passe en mode toggle. Dans ce cas, elle inverse simplement son état précédent. Si la sortie était à 0, il devient 1, et si elle était à 1, il devient 0. Une fois le tableau de Karnaugh rempli, il devient facile d'exprimer la fonction logique simplifiée. En regroupant les cases contenant des 1 par blocs correspondant à des puissances de 2, par exemple des groupes de 2, 4, 8, etc., on obtient une expression réduite. Dans notre cas, les 1 peuvent être regroupés en 2 blocs de 2, ce qui conduit à la fonction suivante pour la sortie Qn. Si vous ne savez pas encore comment utiliser le tableau de Karnaugh pour simplifier une fonction logique, je vous invite à consulter ma vidéo dédiée à ce sujet. Vous y trouverez une explication pas à pas qui vous aidera à bien comprendre la méthode avant de poursuivre avec la bascule JK. Il est important de préciser que les sorties d'une bascule peuvent être notées autrement, à savoir Qn+1 pour représenter le nouvel état de la sortie et Qn pour représenter l'état précédent. Passons maintenant à l'élaboration de la fonction logique de la sortie complémentaire Q barre ou Qn barre, toujours selon la notation que vous préférez. Pour l'obtenir, 2 approches sont possibles: la méthode rapide où il suffit d'inverser les valeurs du tableau de Karnaugh utilisé pour Qn, ou bien la méthode détaillée qui consiste à remplir le tableau case par case en suivant la description du fonctionnement de la bascule JK. Quelle que soit la méthode choisie, on aboutit au même résultat. En regroupant les 1 2 par 2 dans le tableau de Karnaugh, on obtient la fonction simplifiée de la sortie complémentaire Qn barre. À partir de cette équation, on peut dessiner directement le circuit logique de la bascule JK asynchrone en utilisant des portes OU, des portes ET et des inverseurs. Cependant, si l'on souhaite n'utiliser que des portes NAND et des inverseurs, il suffit d'appliquer les lois de Morgan pour transformer les expressions. On obtient alors 2 formules entièrement exprimées en AND prêtes à être implémentées dans un schéma pratique. Pour un rappel détaillé sur les théorèmes de Boole et les formules de Morgan, je vous renvoie à ma vidéo consacrée à ce sujet où j'explique pas à pas comment effectuer ces transformations. Il est utile de rappeler qu'il est tout à fait possible de construire le circuit logique de la bascule JIK asynchrone à partir d'une bascule RS, en y ajoutant quelques portes supplémentaires. Exactement comme nous l'avons fait pour obtenir la bascule D latch. Cependant, l'objectif ici n'est pas de montrer la construction par dérivation, mais plutôt de mettre en avant la démarche algébrique, autrement dit, raisonner directement à partir des équations logiques et des tables de vérité, afin de représenter la bascule JK de manière asynchrone sans dépendre des autres bascules. Dans la pratique, la bascule JK asynchrone est rarement utilisée. En effet, comme la bascule D latch, elle peut être sujette à des phénomènes d'emballement ou race condition. Ce qui rend son fonctionnement instable dans certains circuits. Pour pallier ce problème, les concepteurs préfèrent recourir à des versions synchrones, c'est-à-dire des bascules commandées par un signal d'horloge. Cette synchronisation garantit un comportement plus fiable et mieux contrôlé dans les systèmes séquentiels modernes. On distingue principalement 2 versions de la bascule JK synchrone. La première est la JK latch, qui est active sur niveau, généralement le niveau haut de l'horloge, La seconde est la JK flip-flop qui est active sur front, le plus souvent sur le front montant de l'horloge. Ces deux variantes permettent de maîtriser le moment où la bascule change d'état, ce qui évite les transitions indésirables et rend leur utilisation beaucoup plus pratique que celle de la version asynchrone. Pour ne pas alourdir l'explication, concentrons-nous sur la configuration la plus répandue: la JK latch active sur niveau haut. Ce circuit est constitué de deux étages. Le premier étage comprend 2 portes NAND à 3 entrées qui reçoivent les signaux J, K, l'horloge CLK ainsi que la rétroaction. Le second étage est une bascule RS classique. La rétroaction Q est renvoyée vers la deuxième NAND du premier étage, aux côtés de K et CLK. De son côté, la rétroaction Q-barre est renvoyée vers le premier NAND aux côtés de J et CLK. Cette organisation permet de contrôler efficacement l'évolution de la sortie en fonction des entrées et du signal d'horloge. Pour obtenir une bascule JK active sur front montant, on procède exactement comme pour le passage de D latch à la D flip-flop. L'idée est d'utiliser une architecture dite maître-esclave où l'on connecte 2 bascules JK latch en série. La première agit comme le maître et la seconde comme l'esclave, ce qui permet de verrouiller l'état uniquement au moment du front d'horloge. Cependant, le schéma complet de cette architecture peut rapidement devenir volumineux et complexe à représenter. C'est pourquoi, dans la pratique et dans les cours, on préfère considérer la JK flip-flop comme un bloc unique. Ce bloc est défini par ses entrées J, K et CLK, et ses sorties complémentaires Q et Q'. Cette simplification permet de se concentrer sur le comportement logique de la bascule plutôt que sur les détails de sa construction interne. Ainsi, on retient que la JK flip-flop est une version fiable et synchronisée de la JK latch, déclenchée uniquement sur le front d'horloge, ce qui évite les problèmes d'emballement et rend son utilisation pratique dans les circuits séquentiels modernes. Ce qu'il faut retenir, c'est que la bascule JK flip-flop réagit uniquement au front montant de l'horloge. Et c'est à ce moment précis que les entrées J et K déterminent le nouvel état de la sortie. Si J= 0 et K= 0, la bascule reste en mémoire et conserve son état précédent. Si J= 1 et K= 0, la sortie principale est forcée à 1. C'est le mode set. Si J= 0 et K= 1, la sortie principale est forcée à 0. Le mode reset. Et si J= 1 et K= 1, la bascule passe en mode toggle et inverse son état précédent. En revanche, lorsque l'horloge est en plateau, c'est-à-dire au niveau haut ou au niveau bas, ou encore sur front descendant, la bascule ne réagit pas et garde sa sortie inchangée, ce qui garantit un fonctionnement stable et synchronisé. Pour mieux comprendre le fonctionnement de la bascule JK flip-flop active sur front montant, complétons ce chronogramme en représentant successivement le signal d'horloge CLK, l'entrée J, l'entrée K et la sortie principale Q. La sortie complémentaire Q-barre ne compte, elle, que l'inverse de Q. Avant le premier front montant de l'horloge, la bascule JK reste en état mémoire, ce qui signifie que la sortie Q ne change pas. Et comme l'état initial est inconnu, on suppose qu'il vaut 0. Au premier front montant, avec J égal à 1 et K égal à 0, la sortie est forcée à 1. Dans les plateaux ou pendant le front descendant, la sortie est maintenue même si les entrées J et K changent. Au front montant suivant, J= 0 et K= 1 imposent un reset, donc la sortie devient 0. Lors du prochain front montant, J 0 et K= 0, ce qui maintient l'état mémoire. La sortie reste donc à 0. Au front montant suivant, J= 1 et K= 1 activent le mode toggle. La sortie s'inverse et passe à 1. Au front montant d'après, la bascule est encore en mode toggle. Et l'inverse de nouveau sa sortie qui redevient 0, et ainsi de suite à chaque front montant de l'horloge. Les applications de la bascule JK sont nombreuses. J'en cite: le compteur numérique asynchrone et synchrone. Lorsque les entrées J et K sont toutes les deux fixées au niveau logique 1, la bascule fonctionne en mode toggle permanent. À chaque impulsion d'horloge, la sortie s'inverse, ce qui permet de réaliser des compteurs binaires. Diviseur de fréquence. En mode toggle toujours, la fréquence de la sortie Q est exactement la moitié de celle du signal d'horloge. Enchaînant plusieurs bascules JK, on obtient une division de fréquence par 2 après chaque bascule traversée. Registre à décalage et mémoire: utilisées en série, les bascules JK peuvent stocker des données binaires et les décaler à chaque coup d'horloge. Ce principe est exploité dans les conversions série-parallèle et dans les mémoires tampons, etc. Gestion d'état dans les automates FSM ou Finite State Machines. En effet, grâce à leur polyvalence, les bascules JK permettent de concevoir des circuits séquentiels adaptés, souvent avec un minimum de logique externe. Nous aurons l'occasion de découvrir dans les prochaines vidéos des exemples concrets d'applications de la bascule JK flip-flop ainsi que d'autres types de bascules, ce qui permettra de mieux mettre en évidence leur utilité pratique et leur intégration dans des circuits séquentiels réels. Merci pour votre attention et à la vidéo prochaine.
More from Yamossoun

Algorithme de calcule de la racine carrée par dichotomie #dichotomy #squareroot #algorithm

Algorithme d'Euclide pour calculer le PGCD #algorithm #euclid #programming #coding #algorithms








