Logique séquentielle Plan Système combinatoire Système séquentiel Ei Système combinatoire Sj Sj- + Plan L es bascules Les compteurs Les registres Les mémoires
Introduction Σ Systèmes asynchrones Les sorties évoluent à la suite d’un changement de combinaison des entrées, ce qui provoque des états transitoires, des retards de durées différentes et des risques d’instabilité. S+ Σ Z S-
Introduction Σ Systèmes synchrones L’évolution des sorties est synchronisée par une commande externe appelée horloge afin d’éviter les multiples états transitoires notamment lorsque des entrées changent d’état simultanément. S+ Σ Z S- H
Les bascules La bascule RS asynchrone La bascule RS asynchrone possède une entrée R (Reset) de mise à zéro, une entrée S (Set) de mise à 1 et une sortie Q. L’état R=S=0 (mode mémoire) maintient l’état de la sortie. L’état R=S=1 (mode interdit) est interdit car il conduit à mettre simultanément la sortie à 1 et à 0. table de fonctionnement : symbole : Q+ R S R S Q Q- Mémoire 1 1 Mise à 1 1 Mise à 0 1 Φ Interdit
Les bascules Réalisation (1) table de vérité : tableau de Karnaugh : Q- RS 00 01 1 11 10 R S Q- Q+ 1 1 Mémoire 1 Φ 1 Mise à 1 Mise à 0 Φ Interdit équation logique : Q+ S Q-R
Les bascules logigramme : 1 S S & Q+ S Q-R Q Q+ S Q-R & 1 Q Cette bascule RS est prioritaire au 1 car, pour la combinaison R=S=1, la sortie Q est mise à 1 (les Φ ayant été fixés à 1 pour la simplification de Q). Remarque : le logigramme fait apparaître une sortie supplémentaire égale au complément de la sortie Q uniquement si la combinaison R=S=1 n’apparaît pas.
Les bascules Réalisation (2) table de vérité : tableau de Karnaugh : Q- RS 00 01 1 11 10 Interdit Mémoire Mise à 1 Mise à 0 R S Q- Q+ 1 Φ 1 Φ équation logique : Q+ R Q-S
Les bascules logigramme : R ≥1 Q+ R Q-S Q Q+ R Q-S ≥1 Q S Cette bascule RS est prioritaire au 0 car, pour la combinaison R=S=1, la sortie Q est mise à 0 (les Φ ayant été fixés à 0 pour la simplification de Q). Remarque : le logigramme fait apparaître une sortie supplémentaire égale au complément de la sortie Q uniquement si la combinaison R=S=1 n’apparaît pas.
Les bascules Cas des états interdits Afin de conserver une sortie complémentaire quelque soit la combinaison d’entrée, il convient de remplacer la combinaison R=S=1 par une autre combinaison en utilisant un circuit combinatoire selon le principe suivant : R’ S’ Système combi- natoire R S Q
Les bascules Cas R=S=1 ramené au cas R=0 et S=1 (mise à 1) table de vérité : équations logiques : R’ R S 1 S’ S’ S 1 R’ R S R S 1 logigramme : S R & Q 1 S’ R’ & 1
Les bascules Cas R=S=1 ramené au cas R=1 et S=0 (mise à 0) table de vérité : équations logiques : R’ R S 1 S’ R’ R 1 S’ R S R S 1 logigramme : R S Q R’ S’ ≥1 ≥1 1
Les bascules La bascule RS synchrone (RST ou RSH) La bascule RS synchrone possède une entrée R (Reset) de mise à zéro, une entrée S (Set) de mise à 1, une entrée d’horloge H et une sortie Q. La bascule RS synchrone fonctionne selon l’état de l’horloge : si l’horloge est à 1 (niveau haut) si l’horloge est à 0 (niveau bas) si il y a un front montant sur l’horloge si il y a un front descendant sur l’horloge si il y a une impulsion sur l’horloge
Les bascules Modes de synchronisation des bascules RST sur niveau haut Q H sur niveau bas R S Q H t H 1 sur front montant R S Q H sur front descendant R S Q H
Les bascules La bascule RST synchronisée par le niveau haut de l’horloge : table de fonctionnement : H R S Q+ Φ Q- Mémoire 1 Q- Mise à 1 1 1 Mise à 0 1 1 Φ Interdit Exercice : à partir de la table de vérité de cette bascule, déterminer l’équation de sa sortie et réaliser le logigramme avec des portes NAND uniquement.
Les bascules Q+ H Q- R S 1 RS HQ- 00 01 11 10 1 1 Φ 1 Φ 1 RS HQ- 00 01 11 10 1 1 Φ 1 Φ Q+ Q-R HQ- HS Q+ Q-R HQ- HS Q+ Q-R HQ- HS Q+ Q-R HQ- HS Q+ Q-(R H) HS 1 Φ Q+ Q-(RH) HS Q+ Q-(RH) HS Q+ Q- (RH) HS
Les bascules Chronogramme : t H t S t R t Q
Les bascules La bascule RST synchronisée par le front montant de l’horloge : table de fonctionnement : H R S Q+ Φ 1 Q- Mémoire Q- Mise à 1 1 Mise à 0 1 1 Φ Interdit Réalisation : la détection du front s’effectue par le jeu de 3 mémoires interne à la bascule ou par un circuit de dérivation du signal d’horloge.
Les bascules Chronogramme : t H t S R t Q
Les bascules La bascule D La bascule D est une bascule synchrone qui possède une entrée de donnée D (Data), une entrée d’horloge H, une sortie Q et une sortie complément de Q. Le signal de synchronisation est actif : soit sur un niveau (haut ou bas) de l’horloge (bascule D latch) soit sur un front (montant ou descendant) de l’horloge (bascule D edge triggered) sur niveau haut D Q H sur niveau bas D Q H sur front montant D Q H sur front descendant D Q H
Les bascules La bascule D latch : la sortie recopie l’entrée sur un niveau d’horloge. Sur l’autre niveau, la sortie est mémorisée. Bascule D latch synchronisée par le niveau haut : table de fonctionnement : Q+ H D Q- Mémoire 1 Q- 1 Recopie 1 1
Les bascules Chronogramme : t H t D t Q
Les bascules La bascule D edge triggered : la sortie recopie l’entrée sur un front d’horloge sinon elle ne change pas d’état (maintien de l’état, mémorisation). Bascule D synchronisée par le front montant (positive edge triggered): table de fonctionnement : Q+ H D Φ Q- Mémoire 1 Φ Q- Recopie 1 1
Les bascules Chronogramme : t H t D t Q
Les bascules La bascule JK La bascule JK est une bascule synchrone (le plus souvent sur front) qui possède une entrée J de mise à 1, une entrée K de mise à 0, une entrée d’horloge H, une sortie Q et une sortie complément de Q. Son fonctionnement diffère de celui d’une bascule RST pour la situation ambiguë R=S=1. Dans le cas J=K=1, la sortie est inversée. bascule JK à déclenchement sur front montant J Q H K bascule JK à déclenchement sur front descendant J Q H K
Les bascules Bascule JK à déclenchement sur front montant : table de fonctionnement : H J K Q+ Φ 1 Q- Mémoire Q- Mise à 0 1 Mise à 1 1 1 Q- Inversion
Les bascules Chronogramme : t H t J t K t Q
Les bascules Entrées asynchrones : toutes les bascules synchrones commercialisées possèdent des entrées asynchrones de forçage de mise à 0 (R ou Clear) et de mise à 1 (S ou Preset) prioritaires sur toutes autres entrées. Bascule JK à déclenchement sur front montant avec entrées de forçage non complémentées : table de fonctionnement : symbole : J Q H K S R Preset Clear H J K Q+ R S 1 Φ Forçage à 0 1 Φ 1 Forçage à 1 Q- Mémoire 1 Mise à 0 1 1 Mise à 1 1 Inversion Q- 1 Φ Φ Interdit
Les bascules La bascule T La bascule T est une bascule synchrone qui possède une entrée de donnée T, une entrée d’horloge H, une sortie Q et une sortie complément de Q. Son fonctionnement est un cas particulier de la bascule JK ou les entrées J et K sont connectées ensemble (ou mises à 1). table de fonctionnement : symbole : T Q H Q+ H T Φ Q- Mémoire 1 Φ Q- Q- 1 Q- Inversion
Les bascules Chronogramme : t H t T t Q
Les bascules Autres structures Structure maître-esclave (pulse triggered) : les entrées sont synchronisées sur un niveau d’horloge et les sorties évoluent après le retour de l’horloge à l’état initial. Structure avec verrouillage de la donnée : les entrées sont synchronisées sur un front d’horloge et les sorties évoluent après le retour de l’horloge à l’état initial.
Les compteurs Définitions Circuit logique constitué d’un ensemble de plusieurs bascules (séquentiel) interconnectées par des portes logiques (combinatoire) et cadencé par un signal d’horloge. La combinaison des états des bascules forme un mot binaire qui défini l’état du compteur et qui évolue au cours du temps. Un compteur Modulo M est un compteur dont le cycle évolue de 0 à (M - 1). Un compteur programmable est un compteur dont le cycle peut être modifié. La synthèse d’un compteur consiste à définir les équations de commande des bascules assurant le cycle prévu.
Les compteurs Les deux catégories de compteurs Les compteurs asynchrones Les états des bascules du compteur évoluent successivement en cascade. Réalisation simple États transitoires Cycles impossibles Les compteurs synchrones Les états des bascules du compteur évoluent simultanément au rythme de l’horloge. Pas d’états transitoire Cycles quelconques
Les compteurs Compteurs asynchrones Compteurs asynchrones modulo 2n (compteur binaire) Principe : l’horloge déclenche la première bascule dont la sortie sert d’horloge à la bascule suivante et ainsi de suite jusqu’à la nième bascule. La propriété d’inversion de l’état de la sortie des bascules JK est utilisée : avec une bascule JK à déclenchement sur front descendant et lorsque J=K=1, la sortie change d’état à chaque front de l’horloge. Q0 Q1 Qn J Q H K S R J Q H K S R J Q H K S R 1 1 1 H RAZ
Les compteurs Exemple : compteur asynchrone modulo 23 = 8 logigramme : J Q H K S R 1 Q0 Q1 Q2 J Q H K S R 1 J Q H K S R 1 H RAZ
Les compteurs Chronogramme : t H t Q0 1 1 1 1 1 1 1 t Q1 t Q2 1 2 3 4 1 1 1 1 1 1 1 t Q1 t Q2 1 2 3 4 5 6 7
Les compteurs Exercice : réaliser un compteur asynchrone binaire modulo 16
Les compteurs Décompteurs asynchrones modulo 2n Exemple : décompteur asynchrone modulo 23 = 8 logigramme : J Q H K S R 1 Q0 Q1 Q2 J Q H K S R 1 J Q H K S R 1 H RAZ
Les compteurs Chronogramme : t H t Q0 t Q1 Q0 t Q0 1 1 1 1 1 1 1 t Q1 1 1 1 1 1 1 1 t Q1 t Q1 t Q2 7 6 5 4 3 2 1
Les compteurs Compteurs / décompteurs asynchrones modulo 2n : Avec des bascules JK à déclenchement sur front descendant : pour un compteur, on relie la sortie Qn (n>0) des bascules à l’entrée d’horloge Hn+1, pour un décompteur, on relie la sortie Qn complémentée (n>0) des bascules à l’entrée d’horloge Hn+1. Avec des bascules JK à déclenchement sur front montant : pour un compteur, on relie la sortie Qn complémentée (n>0) des bascules à l’entrée d’horloge Hn+1, pour un décompteur, on relie la sortie Qn (n>0) des bascules à l’entée d’horloge Hn+1. Pour réaliser un compteur / décompteur, il faut une entrée de sélection X qui détermine le sens de comptage en fonction de sa valeur de X. Par exemple : si X=0 → comptage, il faut aiguiller la sortie Qn vers l’horloge Hn+1, si X=1 → décomptage, il faut aiguiller la sortie Qn complémentée vers l’horloge Hn+1.
Les compteurs Avec des bascules JK à déclenchement sur front descendant : table de vérité : équations logiques : Hn+1 X Qn Hn+1 XQn XQn 1 1 Comptage 1 1 1 Hn+1 X Qn Décomptage Q0 Q1 Q2 H J Q K S R 1 RAZ ? X
Les compteurs Compteurs asynchrones modulo < 2n Principe : il faut interrompre le cycle d’un compteur binaire en provoquant une réinitialisation des bascules dès que la valeur du modulo est détectée. Réalisation : il faut utiliser un compteur asynchrone binaire modulo 2n avec 2n ≥ M et agir sur les entrées de forçage asynchrones des n bascules en fonction de l’état de leur sortie. Système logique S0 S1 Sn R1 R0 Rn Q0 Q1 Qn J Q H K S R 1
Les compteurs Exemple : compteur asynchrone modulo 6 (de 0 à 5) table de vérité : Q2 1 Q0 Q1 R2 S2 R1 S1 R0 S0 1 2 3 4 5 6 7 Φ S2 S1 S0 0 1 Φ R2 R1 R0 1 Φ
Les compteurs tableau de Karnaugh : Q1Q0 Q2 1 00 01 11 10 Φ 1 1 00 01 11 10 Φ 1 équation logique : R0 R1 R2 Q2Q1
Les compteurs logigramme : Q0 Q1 Q2 H J Q K S R 1 Q2Q1
Les compteurs Chronogramme : t H t Q2 Q0 Q1 6 1 1 1 2 1 3 1 4 1 5 1 2
Les compteurs Exercice : réaliser un compteur asynchrone modulo 11
Les compteurs Décompteurs asynchrones modulo < 2n Principe : il faut interrompre le cycle d’un décompteur binaire en provoquant une réinitialisation des bascules dès que la valeur maximale est détectée. Réalisation : il faut utiliser un décompteur asynchrone binaire modulo 2n avec 2n ≥ M et agir sur les entrées de forçage asynchrones des n bascules en fonction de l’état de leur sortie. J Q H K S R 1 Q0 Q1 Qn S0 S1 Sn R1 R0 Rn Système logique
Les compteurs Exemple : décompteur asynchrone modulo 5 (de 4 à 0) table de vérité : Q2 1 Q0 Q1 R2 S2 R1 S1 R0 S0 4 3 2 1 7 6 5 Φ R2 S1 S0 0 Φ 1 S2 R1 R0 1 Φ Φ
Les compteurs tableau de Karnaugh : Q1Q0 Q2 1 00 01 11 10 Φ 1 1 00 01 11 10 Φ 1 équation logique : R0 R1 S2 Q2Q1 ou R0 R1 S2 Q2Q0
Les compteurs logigramme : Q0 Q1 Q2 H J Q K S R 1 Q2Q1
Les compteurs Chronogramme : t H t Q2 Q0 Q1 7 1 4 1 3 1 2 1 1 4 1 3 1 1 3 1 2 1 1 4 1 3 1 2 1 1
Les compteurs Compteurs synchrones Problèmes des compteurs asynchrones Tous les cycles ne sont pas possibles. Il subsistent des états transitoires. t H t Q1 Q0 1 2 1 3 1 2 1 Retard
Les compteurs Structure d’un compteur synchrone Le signal d’horloge est commun à toutes les bascules. Il faut utiliser n bascules JK (M ≥ 2n) et agir sur les entrées J et K en fonction de l’état des sorties Q. Système logique J0 K0 J1 K1 Jn Kn Q0 Q1 Qn J Q H K S R H
Les compteurs Table d’excitation d’une bascule Elle permet de déterminer quelles valeurs il faut appliquer aux entrées synchrones pour faire évoluer la sortie de la bascule d’un état vers un autre. Table d’excitation de la bascule JK : table de vérité : table d’excitation : J K Q- Q+ Mémoire 1 1 → J Q- Q+ K 1 1 → → Φ Mise à 0 1 → 1 → 1 Φ 1 1 1 → 1 → Φ 1 Mise à 1 1 1 1 1 → 1 → Φ 1 → Inversion 1 1 → 1 →
Les compteurs Exemple : compteur synchrone modulo 8 table de vérité : J Q- Q+ K Φ → 1 Q2 1 Q0 Q1 J2 K2 J1 K1 J0 K0 1 2 3 4 5 6 7 Φ Φ 1 Φ Φ 1 Φ Φ 1 Φ 1 1 Φ Φ 1 Φ 1 Φ 1 Φ 1
Les compteurs tableaux de Karnaugh et équations logiques : Q1Q0 Q2 1 1 00 01 11 10 Q1Q0 Q2 1 00 01 11 10 Φ 1 1 Φ K0 1 K0 1 J0 1 J0 1
Les compteurs tableaux de Karnaugh et équations logiques : Q1Q0 Q2 1 1 00 01 11 10 Q1Q0 Q2 1 00 01 11 10 Φ 1 1 Φ K1 Q0 K1 Q0 J1 Q0 J1 Q0
Les compteurs tableaux de Karnaugh et équations logiques : Q1Q0 Q2 1 1 00 01 11 10 Q1Q0 Q2 1 00 01 11 10 Φ 1 1 Φ K2 Q1Q0 K2 Q1Q0 J2 Q1Q0 J2 Q1Q0
Les compteurs logigramme : Q1Q0 J2 K2 Q0 Q1 Q2 J Q H K S R 1 J0 K0 J1 Q0 Q1 Q2 J Q H K S R 1 J0 K0 J1 K1 H
Les compteurs Exemple : décompteur synchrone modulo 8 table de vérité : J Q- Q+ K Φ → 1 Q2 1 Q0 Q1 J2 K2 J1 K1 J0 K0 7 6 5 4 3 2 1 Φ 1 Φ 1 Φ 1 Φ 1 Φ 1 Φ 1 Φ 1 Φ 1
Les compteurs tableaux de Karnaugh et équations logiques : Q1Q0 Q2 1 1 00 01 11 10 Q1Q0 Q2 1 00 01 11 10 Φ 1 1 Φ K0 1 K0 1 J0 1 J0 1
Les compteurs tableaux de Karnaugh et équations logiques : Q1Q0 Q2 1 1 00 01 11 10 Q1Q0 Q2 1 00 01 11 10 Φ 1 1 Φ K1 Q0 K1 Q0 J1 Q0 J1 Q0
Les compteurs tableaux de Karnaugh et équations logiques : Q1Q0 Q2 1 1 00 01 11 10 Q1Q0 Q2 1 00 01 11 10 Φ 1 1 Φ K2 Q1Q0 K2 Q1Q0 J2 Q1Q0 J2 Q1Q0
Les compteurs logigramme : Q1Q0 J2 K2 Q0 Q1 Q2 J Q H K S R 1 J0 K0 J1 Q0 Q1 Q2 J Q H K S R 1 J0 K0 J1 K1 H
Les compteurs Compteurs à cycle quelconque Tous les cycles sont réalisables à condition que la transition d’un état du compteur à un autre soit unique (il existe un seule façon de transiter vers un état). Pour les états n’appartenant pas au cycle, les entrées des bascules peuvent prendre n’importe quelles valeurs (Φ) puisque ces états ne doivent normalement pas apparaître. Il faut utiliser autant de bascules qu’il y a de bits nécessaire pour coder la valeur maximale du cycle. Il est nécessaire d’initialiser le compteur à une valeur appartenant au cycle. Exercice : réaliser la séquence suivante avec des bascules JK : {2, 5, 1, 4, 8, 2, …}
Les compteurs Compteurs circulaires Un compteur est circulaire si la sortie de la dernière bascule est aussi l’entrée de la première bascule. Compteur en anneau : fonctionnement cycle par cycle Compteur de Johnson : fonctionnement normal
Les compteurs Remarques sur les compteurs Tables d’excitation des bascules synchrones Bascule RST : table de vérité : table d’excitation : Interdit Mémoire Mise à 1 Mise à 0 R S Q- Q+ 1 Φ 1 → R Q- Q+ S 1 1 → → Φ 1 1 → 1 → 1 1 → 1 1 → Φ 1 1 →
Les compteurs Bascule D : table de vérité : table d’excitation : Q+ D Q- 1 D Q- Q+ → → 1 → 1 → 1 1 1 → 1 → 1 1 → 1 → 1 Réalisation de compteurs synchrones avec d’autres bascules Exemple : compteur modulo 4 avec des bascules RST et D. Exercice : réaliser un décompteur modulo 6 avec des bascules RST et D.
Les compteurs Entrées asynchrones de forçage Elles peuvent être actives sur niveau haut (la mise à 1 d’une entrée asynchrone de forçage agit de façon prioritaire sur la sortie de la bascule quelque soit l’état des entrées synchrones) ou bas (la mise à 0 d’une entrée asynchrone de forçage agit de façon prioritaire sur la sortie de la bascule quelque soit l’état des entrées synchrones). Entrées/sorties utilisées sur les compteurs commercialisés : RAZ : remet le compteur à zéro, LOAD : charge une valeur dans le compteur, CE ou En : interdit le comptage en empêchant les sorties d’évoluer, U/D : détermine le sens d’évolution (comptage ou décomptage), D/B : détermine le type de comptage (binaire ou décimale), RCE ou TC : donne la fin de comptage.
Les registres Définitions Un registre est un ensemble ordonnée de n bascules capable de stocker une information codée sur n bits. Les entrées/sorties sont transmises, soit en série par décalages successifs (à droite ou à gauche), soit en parallèle. Différents types de registres entrée parallèle – sortie parallèle entrée série – sortie parallèle entrée parallèle – sortie série entrée série – sortie série registre universel : il permet de combiner les différents modes en fonction de l’état d’entrées de commande.
Les registres Registre à écriture et lecture parallèle Structure à mémorisation d’un mot de 4 bits : A B C D E D Q H D Q H D Q H D Q H H L SA SB SC SD
Les registres Registre universel Entrées parallèles Entrée série gauche Entrée série droite Horloge Commandes Sorties parallèles Sortie série