Bascules
Transcription
Bascules
4. Eléments de logique séquentielle 4.1 Définitions, exemple introductif Dans un système logique combinatoire les variables de sorties sont liées aux variables d'entrée par des relations univoques. Les variables de sorties s'expriment donc uniquement en fonction des variables d'entrée. Par ailleurs la réalisation de la fonction logique nécessite un certain temps de retard, que l'on peut représenter ainsi : e1 e2 e3 en τ1 s1 τ2 s2 Système Combinatoire . . . système parfait (sans retard) retard si = f(ei) 4.1.1 Définition d'un système logique séquentiel Dans un système séquentiel les variables de sorties à un instant t1 dépendent non seulement des variables d'entrées, mais aussi des variables de sortie à un instant t0 antérieur à t1. On dit que le système a une mémoire (il se souvient de la séquence des variables de sortie). On peut représenter le système ainsi : e1 e2 e3 en τ1 s1 τ2 s2 Système Combinatoire . . . Si = f(ei(t1),si(t0)) 4.1.2 Systèmes séquentiels synchrones et asynchrones Dans un système asynchrone, les variables de sorties évoluent "librement" (dés que l'on change les variables d'entrée, les sorties changent) en fonction des séquences des variables d'entrée. Dans un système synchrone, on n'autorise les variations des variables de sorties qu'a des instants précis. Ces instants sont fixés par un signal que l'on appelle signal d'horloge. 4.1.3 Etats stables et instables Etant donné qu'il y a influence de la sortie sur l'entrée, 2 cas peuvent se produire : - la configuration des variables d'entrées et de sortie conduit à une configuration des variables de sortie différente de celle de départ : l'état est instable (l'état est différent du précédent). - la configuration des variables d'entrées et de sortie conduit à la même configuration des variables de sortie que celle de départ : l'état est stable (l'état reste le même que précédemment). 4.1.4 Exemple introductif de système séquentiel 4.2 Éléments de base de logique séquentielle : les bascules 4.2.1 Bascules RS (asynchrone) Cet élément réalise la fonction précédemment décrite en ajoutant une deuxième sortie Q' dont on veut qu'elle soit égale à Q . R Q S Q R : Reset (mise à 0) S : Set (mise à 1) Q : sortie Q : sortie complémentée Table de vérité réduite : S R 0 0 Qn+1 Qn Q'n+1 Qn Etat mémoire 0 1 1 0 1 x 1 0 x Transparence Transparence Interdit 1 0 1 x dépend du choix de la priorité, en pratique on veut éviter cette liberté et l'état 11 en entrée et interdit, il ne doit pas se produire. Equations logiques : SR Qn 0 1 On en déduit : 00 01 11 10 0 1 0 0 0/1 0/1 1 1 Qn +1 = S .R + Qn .R = R.( S + Qn ) = R + S + Qn (cas RESET prioritaire) Qn +1 = S + Qn .R = S + R + Qn (cas SET prioritaire) Par la suite on fera apparaître un φ à la place de 0/1 pour signifier que l'état est interdit et qu'il ne peut donc pas apparaître. Réalisation à l'aide de NAND et NOR : Cas RESET prioritaire : S Q' Q R Cas SET prioritaire : S Q' R Q Si on exclu l'état 11 en entrée, les 2 formes donnent la même table de vérité, et Q = Q . 4.2.2 Bascules RST (synchrone : les sorties évoluent sur commande de l'horloge) Ce type de bascule permet de "bloquer" les entrées tant qu'un signal d'autorisation (signal d'horloge) n'est pas envoyé sur la bascule : il s'agit donc d'un fonctionnement synchrone. Pour le reste, le fonctionnement est le même qu celui d'une bascule RS classique. T R S Qn+1 0 0 0 Qn 0 0 1 Qn 0 1 0 Qn Mémoire 0 1 1 Qn 1 0 0 Qn 1 0 1 1 Transparence 1 1 0 0 1 Chronogramme : 1 1 x Interdit Fonctionnement d'une RST Fonctionnement d'une RS S R T Q 4.2.3 Bascules D (synchrone) - Bascule commandée sur niveau – latch triggered (très peu utilisée) D Q D Q Q Q H H Bascules commandées sur niveau haut et bas Table de Vérité : H D 0 0 0 1 1 0 1 1 Qn+1 Qn Qn 0 1 H 0 1 1 Mémoire Mémoire Transparence Transparence D x 0 1 Qn+1 Qn 0 1 - Bascule D commandée sur front – Edge triggered D Q D Q Q H Q H Bascules commandées sur front montant et descendants Table de vérité (front montant) : H D Q n +1 Q n +1 0 x Mémoire Qn Qn 1 x Mémoire Qn Qn ↑ ↑ 0 1 0 1 1 0 Transparence Transparence Chronogramme : D H - Q Edge Q Latch Entrées de forçage asynchrones Toutes les bascules disposent d'une ou plusieurs entrées de forçage asynchrones de type Reset (CLR) ou Preset (PRE). Ces entrées sont prioritaires sur toutes les autres. Exemple : CLR 0 1 1 PRE 1 0 1 H D Q n +1 X X 1 X X X 0 1 Qn 1 1 0 X Qn 1 1 0 1 1 0 ↑ ↑ X 0 1 X 0 1 X Q n +1 1 0 Forçage Forçage Mémoire Qn Mémoire Qn 1 0 X Transparence Transparence Interdit Caractéristiques de la bascule : - déclenchée sur front montant - entrées de forçage activent sur niveau bas CLR PRE D Q Q H 4.2.4 Bascules T (asynchrone) La bascule T change d'état à chaque impulsion d'horloge, sa fonction principale est de diviser par 2 la fréquence du signal d'horloge. Ce type de bascule n'existe pas, elle est en pratique toujours réalisée à partir de bascules D ou JK. La bascule T se déduit facilement d'une bascule D commandée par front : D Remarque : si on utilise une bascule D commandée par niveau il y a risque d'instabilité : Q si Q = 0 ⇒ D = 0 ⇒ Q = 1 ⇒ D = 1 ⇒ .... Q H H Table de vérité, chronogramme : H Qn+1 0 Qn 1 Qn ↑ Q H f0 Q f0/2 n Application : division de fréquence par 2 (2n si n bascules en série) 4.2.5 Bascules JK Cette bascule s'apparente à une RST et à une T : les entrées J et K jouent le rôle de S et R sauf si J = K = 1 auquel cas la bascule fonctionne comme une T. Ces bascules possèdent 2 entrées de forçage asynchrones (CLR et PRE). Bascule JK commandée par front (Edge Triggered) La bascule peut être déclenchée par un front montant ou descendant, suivant le type de bascule choisi. Table de vérité : H J K Qn+1 Qn +1 0 x x Qn Qn 1 x x Qn Qn ↑ 0 0 Qn Qn ↑ ↑ ↑ 0 1 1 1 0 1 0 1 1 0 Qn Qn Mémoire Transparence Inversion (Toggle) Chronogramme : J K H Q Q'