02 - Logique Sequentielle
02 - Logique Sequentielle
02 - Logique Sequentielle
Machine 2
Logique Séquentielle
ENS KATEB
1
Introduction
Définition :
Un circuit séquentiel est un circuit combinatoire où des sorties sont utilisées
comme des entrées, Il y a rebouclage (rétroaction) des sorties sur les
entrées. Cela signifie qu’un circuit séquentiel garde la mémoire des états
passés,
Dans la table de vérité on trouve, en plus des entrées, les sorties à l’état
précédent : Qn+1 = f(Entrées, Qn)
2
Introduction
On a deux grandes familles des circuits logiques séquentiels :
3
Introduction
Horloge
À cause de tous les délais (montée, descente, propagation) un signal n'est pas
dans un état valide en permanence,
L’idée est de ne pas lire ses valeurs qu‘à des instants précis et à des intervalles
réguliers : Instants donnés par une horloge
l’horloge est un système logique qui émet régulièrement une suite d’impulsions
calibrées,
L’intervalle de temps entre 2 impulsions représente le temps de cycle ou la
période de l’horloge
4
Introduction
Horloge : Exemple
Soit la table de vérité suivante : la représentation du changement des états par
chronogramme :
H
A B S
0 0 1 A
0 1 1 B
1 0 0
S
1 1 0
L’horloge est noté : H ou CLK, un circuit basé sur une entrée de l’horloge est dite
synchrone, et asynchrone dans le cas contraire
La synchronisation se fait soit sur front montant (H=1) ou sur front descendant
(H=0)
5
Introduction
Horloge : Front montant ou descendant
Reprenant l’exemple précèdent :
Front montant A
A
Front descendant
B
6
Introduction
Horloge : Front montant ou descendant
Représentation schématique :
7
Les Bascules asynchrones
Notion de latch (Verrou)
Une bascule (flip-flop) a pour rôle de mémoriser une information
élémentaire. C'est une mémoire à 1 bit. Une bascule possède deux
sorties complémentaires Q et Q. La mémorisation fait appel à un
verrou (latch) ou système de blocage, dont le principe de rétro-action
peut être représenté de la façon suivante :
8
Les Bascules asynchrones
Bascule SR
Une bascule SR comporte deux entrées : Une entrée R (Reset) de mise
à zéro et une entrée S (Set) de mise à un.
S 0 1
R
S R Q+
0 Q 1
0 0 Q Mémoire
1 0 X
1 0 1 Set à 1
0 1 0 Reset 0
1 1 X interdit
Q = R (S + Q) = R (S + Q) = R + (S + Q) Q = S + RQ = S • RQ
Q = S + RQ = S + (R + Q) Q = R (S + Q) = R • (SQ) Donc
Q = R • (SQ)
9
Les Bascules asynchrones
Bascule SR
Sɷɸ
Qɷ
Qɸ
Rɸ
10
Les Bascules asynchrones
Bascule JK
Une bascule JK comporte deux entrées : Une entrée K (Reset) de mise à
zéro et une entrée J (Set) de mise à un. Le principe est que lorsqu’on a
J=1 et K=1 (état interdit dans RS) on fait la basculement : Q devient Qɸ
K 0 1
J K Q+ J
0 0 Q Mémoire 0 Q 0
1 0 1 Mise à 1 1 Qɸ
1
0 1 0 Mise à 0
1 1 Qɸ Basculement
Q = J Q + KQ + QQ = J Q + Q ( K + Q) = J Q + Q( KQ ) = J Q • Q • ( KQ )
Q = KQ • Q(J Q)
11
Les Bascules asynchrones
Bascule JK simple
12
Les Bascules asynchrones
Exemple : réaliser un circuit qui permet de faire le cycle
suivant à l’aide des bascules JK :
0 2
3
Solution :
1- Table d’excitation de la bascule JK :
Q Q+ J K
0 0 0 X
0 1 1 X
1 0 X 1
1 1 X 0
13
Les Bascules asynchrones
Solution (suite) :
2- Table d’implication du circuit : Donc on a :
Q2 Q1 Q2+ Q1+ J2 K2 J1 K1 J 2 = Q1
0 0 0 1 0 X 1 X K 2 = Q1
0 1 1 0 1 X X 1
J1 = 1
1 0 1 1 X 0 1 X
1 1 0 0 X 1 X 1 K1 = 1
3-Schéma :
14
Les Bascules asynchrones
Bascule D
La bascule D possède une seule entrée D. Son principe de fonctionnement
est donné par la table suivante :
15
Les Bascules asynchrones
Bascule T
La bascule T possède une seule entrée T. Son principe de fonctionnement
est donné par la table suivante :
16
Les Bascules synchrones
Bascule RS Synchrone (RST ou RSH)
On rajoute une entrée d’horloge H (validation) à la bascule RS. Schématisé
pour le cas front montant sous la forme suivante ::
H S R Q+
0 X X Q Mémoire
1 0 0 Q Mémoire
1 1 0 1 Set à 1
1 0 1 0 Reset 0
1 1 1 X interdit
17
Les Bascules synchrones
Bascule JK Synchrone (JKT ou JKH)
De même on peut faire avec la bascule JK, on obtient une bascule JK
synchrone avec le principe suivant :
H J K Q+
0 X X Q Mémoire
1 0 0 Q Mémoire
1 1 0 1 Set à 1
1 0 1 0 Reset 0
1 1 1 Qɸ Basculement
18
Les Bascules synchrones
Bascule D à verrou (D latch)
Le principe de la bascule D est qu’elle recopie la donnée D dans la sortie,
ceci n’a aucun intérêt dans l’absence d’un signale d’horloge (pas de
mémorisation ou basculement). Voici le principe avec l’horloge :
H Q+
0 Q Mémoire
1 D Data
19
Les Bascules synchrones
Bascule T synchrone
Avec un signale d’horloge dans la bascule T, si on fixe T=1 (par
exemple), la bascule effectue le basculement à chaque top d’horloge.
H T Q+
0 X Q Mémoire
1 0 Q Mémoire
1 1 Qɸ Basculement
20
Les Bascules Maitre-Esclave
Prenant l’exemple la bascule JK:
supposons J=K=1 et Q=0
Quand le signal d'horloge passe à 1, Q va passer à 1,
Le changement se produit après un intervalle de temps ∆t
On a alors J=K=Q=1 et le signal d'horloge est toujours 1 Q doit revenir
à 0 ! d'où des oscillations pendant la durée du signal d'horloge
21
Les Bascules Maitre-Esclave
Solution au problème : au lieu d'un simple asservissement (bascule J-K)
on monte en cascade deux bascules JK en asservissant les entrées de la
première (Maître) aux sorties de la seconde (Esclave)
Pendant la nième impulsion, le signal d'horloge est haut pour le maitre,
bas pour l'esclave. Par conséquent Qn est invariante pendant la durée de
temps de propagation et le problème précédent est résolu,
Front descendant
Par impulsions
23
Introduction
Horloge : Front montant ou descendant
Représentation schématique :
24
Chronogramme
Exemple 1 : Le chronogramme de fonctionnement d’une bascule RSH sur
front montant, avec l’état initial Q = 0
25
Chronogramme
Exemple 2 : Le chronogramme de fonctionnement d’une bascule JKH sur
front descendant, avec au départ Q = 0
26
Chronogramme
Exemple 3 : Le chronogramme de fonctionnement d’une bascule T sur
front montant, avec initialement Q = 0 (on implanter H directement à
l’entrée T)
On remarque ici que Q représente des impulsions 2 fois plus long que les
impulsions de T, on appelle ça division de fréquence,
27
Compteurs synchrones
Dans un compteur synchrone tous les bascules sont soumis au même
signal d’horloge,
Exemple1 : réaliser un compteur synchrone modulo 8 (0,1,2,…,7,0,1,…)
en utilisant les bascules T synchrones sur front montant
Solution 1
8=23 Donc on a besoin de 3 bascules
Table d’excitation de T : Table d’états des transitions
+ + +
Q Q+ T Q2 Q1 Q0 Q2 Q1 Q0 T2 T1 T0
0 0 0 0 0 0 0 0 1 0 0 1
0 0 1 0 1 0 0 1 1
0 1 1
0 1 0 0 1 1 0 0 1
1 0 1
0 1 1 1 0 0 1 1 1
1 1 0
1 0 0 1 0 1 0 0 1
1 0 1 1 1 0 0 1 1
1 1 0 1 1 1 0 0 1
28
1 1 1 0 0 0 1 1 1
Compteurs synchrones
Solution 1 (suite)
Les équations :
T0 = 1, T1 = Q0, T2 = Q1Q0
Le schéma logique :
29
Compteurs synchrones
Exemple 2 : réaliser un compteur synchrone modulo 5 (0,1,2,…,4,0,1,…)
en utilisant les bascules D synchrones sur front montant
Solution 2
4<5<8 on prend le plus grand : Donc 8 = 23 on a besoin de 3 bascules
Table d’excitation de D : Table d’états des transitions
+ + +
Q Q+ D Q2 Q1 Q0 Q2 Q1 Q0 D2 D1 D0
0 0 0 0 0 0 0 0 1 0 0 1
0 1 1 0 0 1 0 1 0 0 1 0
0 1 0 0 1 1 0 1 1
1 0 0
0 1 1 1 0 0 1 0 0
1 1 1
1 0 0 0 0 0 0 0 0
1 0 1 X X X X X X
1 1 0 X X X X X X
1 1 1 X X X X X X
30
Compteurs synchrones
Solution 2 (suite)
Les équations :
D0 = Q0+Q2, D1 = Q0 ⊕ Q1 , D2 = Q0+Q1+Q2
Le schéma logique :
31
Compteurs synchrones
Exemple 3 : réaliser un décompteur synchrone modulo 8
(7,6,5,…,1,0,7,…) en utilisant les bascules T synchrones sur front
montant
Solution 3
8 = 23 on a besoin de 3 bascules
Table d’excitation de T : Table d’états des transitions
+ + +
Q Q+ T Q2 Q1 Q0 Q2 Q1 Q0 T2 T1 T0
0 0 0 1 1 1 1 1 0 0 0 1
0 1 1 1 1 0 1 0 1 0 1 1
1 0 1 1 0 0 0 0 1
1 0 1
1 0 0 0 1 1 1 1 1
1 1 0
0 1 1 0 1 0 0 0 1
0 1 0 0 0 1 0 1 1
0 0 1 0 0 0 0 0 1
0 0 0 1 1 1 1 1 1 32
Compteurs synchrones
Solution 1 (suite)
Les équations :
T0 = 1, T1 = Q0, T2 = Q1Q0
Le schéma logique :
33
Compteurs asynchrones
Initialisation des bascules :
Les bascules peuvent contenir (en plus des entrées) des commandes
supplémentaires pour les initialiser, se sont des entrées prioritaires
On a l’entrée CLEAR qui remise à zéro la bascule et l’entrée PRESET qui
remise à 1 la bascule.
Exemple : bascule JKH avec les entrées d’initialisation :
CLR PRS Q+ T
0 0 0 0 0 0 0 0 0 1
1 0 0 1 0 1 0
0 1 1
2 0 1 0 0 1 1
1 0 1 3 0 1 1 1 0 0
1 1 0 4 1 0 0 1 0 1
5 1 0 1 1 1 0
6 1 1 0 1 1 1
36
7 1 1 1 0 0 0
Compteurs asynchrones
Solution 1 (Suite)
D’après la table on constate que Q1 change d’état lorsque Q0 passe de 1
vers 0, la même chose pour Q2, elle change d’état lorsque Q1 passe de 1
vers 0, c’est pourquoi on a choisi des bascules synchronisées sur front
descendant. D’après le chronogramme on peut déterminer les
expressions des entrées des bascules : Q0 fait le basculement à chaque
front descendant de l’horloge H0, T0=1, Q1 suit les fronts déterminés
par Q0. Donc T1=1 et H1=Q0, de même pour Q2 on a T2=1 et H2=Q1
37
Compteurs asynchrones
Solution 1 (Suite)
Donc voici le logigramme du compteur asynchrone
38
Compteurs asynchrones
Exemple2 : réaliser un compteur asynchrone modulo 5 (0,1,2,…,4,0,1,…)
en utilisant les bascules T synchrones sur front descendant
Solution 2 : 8=23 Donc on a besoin de 3 bascules
Table d’états des transitions
+ + +
Val Q2 Q1 Q0 Q2 Q1 Q0 Clr2 Clr1 Clr0
0 0 0 0 0 0 1 0 0 0
1 0 0 1 0 1 0 0 0 0
2 0 1 0 0 1 1 0 0 0
3 0 1 1 1 0 0 0 0 0
4 1 0 0 0 0 0 0 0 0
5 1 0 1 X X X 1 1 1
40
Compteurs asynchrones
Exemple3 : réaliser un décompteur asynchrone modulo 8
(0,1,2,…,7,0,1,…) en utilisant les bascules T synchrones
Solution 3
8=23 Donc on a besoin de 3 bascules
Table d’états des transitions
+ + +
Val Q2 Q1 Q0 Q2 Q1 Q0
7 1 1 1 1 1 0
6 1 1 0 1 0 1
5 1 0 1 1 0 0
4 1 0 0 0 1 1
3 0 1 1 0 1 0
2 0 1 0 0 0 1
1 0 0 1 0 0 0
0 0 0 0 1 1 1
41
Compteurs asynchrones
Solution 3 (suite)
D’après la table on constate que Q1 change d’état lorsque Q0 passe de
0 vers 1, la même chose pour Q2, elle change d’état lorsque Q1 passe
de 0 vers 1, c’est pourquoi on a choisi des bascules synchronisées sur
front montant. D’après le chronogramme on peut déterminer les
expressions des entrées des bascules : Q0 fait le basculement à
chaque front montant de l’horloge H0, T0=1, Q1 suit les fronts
déterminés par Q0. Donc T1=1 et H1=Q0, de même pour Q2 on a
T2=1 et H2=Q1
42
Compteurs asynchrones
Solution 3 (Suite)
Donc voici le logigramme du compteur asynchrone
43