Title: Objectifs :
1Unité 6 Logique séquentielle
- Objectifs
- À la fin ce cette unité, vous comprendrez le
fonctionnement des circuits séquentiels (à
mémoire) utilisés dans les ordinateurs. - Pour y arriver, vous devrez avoir atteint les
objectifs suivants - - décrire le fonctionnement d'un automate fini
- - distinguer un circuit asynchrone d'un circuit
synchrone - - synthétiser un circuit séquentiel synchrone
simple - - analyser un circuit séquentiel synchrone simple.
2Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- Dans les circuits combinatoires, les signaux de
sortie ne dépendent que des signaux d entrée
présents au même instant. - Dans les circuits séquentiels, il y a de la
rétroaction les signaux de sortie ne dépendant
pas uniquement des entrées, mais aussi de leur
séquence. Le circuit se rappelle des entrées et
des états antérieurs il a une mémoire du passé. - Létude des circuits combinatoires repose sur
lalgèbre de Boole. Celle des circuits
séquentiels repose sur la théorie des automates
finis.
3Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.1 Concept dautomate fini
- Un automate fini possède un nombre fini
déléments et de mémoires. - Un automate fini ne peut prendre que 2n états
appelés états internes, où n est le nombre de
bits de mémoire. - On peut caractériser un automate par
- Sa fonction de transfert
- Sa table de transition
- Son diagramme détats ou de transition
4Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.1 Concept dautomate fini
- Exemple
- Diagramme détat ou de transition
Table de transition q(t) e(t) 0 1 0 0 1 1
0 1 q(t) e(t) 0 1 0 0 0 1 1 1
entrée / sortie
1/0
q0
q1
0/0
1/1
q(t1)
0/1
état
état
s(t)
Fonction de transfert q(t1) e(t) s(t)
q(t)
5Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.1 Concept dautomate fini
- Automate de Moore
- q(t1) f e(t), q(t)
- s(t) g q(t)
e(t)
Logique combinatoire
Logique combinatoire
s(t)
État q(t)
Les états futurs dépendent des entrées présentes
e(t) et des états internes présents q(t). Les
sorties ne dépendent que des états internes
présents q(t).
6Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.1 Concept dautomate fini
- Automate de Mealy
- q(t1) f e(t), q(t)
- s(t) g e(t), q(t)
e(t)
s(t)
Logique combinatoire
État q(t)
q(t)
Les sorties s(t) dépendent des états internes
présents q(t) et des entrées présentes e(t).
7Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.2 Circuits asynchrones et synchrones
- Dans les circuits asynchrones, la sortie est
modifiée dès quil y a un changement de létat
des entrées. - Dans les circuits synchrones, la sortie ne change
quaprès un signal dhorloge. Les circuits
synchrones sont plus simples à synthétiser et à
analyser. - 5.3.3 Bistables
- Lélément de base de tout circuit séquentiel est
le bistable (bascule, flip-flop), qui est un
circuit, lui-même asynchrone, qui servira
délément de mémoire pour les circuits synchrones
ou asynchrones.
8Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.3 Bistables
- Bistable RS
S
Q2
On observe que si S 0 et R 0, le circuit est
dans lun de deux états stables Q1 0 et Q2
1 ou Q1 1 et Q2 0.
Q1
R
0
0
1
0
0
1
1
0
0
1
0
0
9Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.3 Bistables
- Bistable RS
S
Q2
Si S 1 et R 0, alors Q1 1 et Q2 0. Cest
la transition SET. Si S 0 et R 1, alors Q1
0 et Q2 1. C est la transition RESET.
Q1
R
1
0
0
1
1
0
0
1
1
0
0
1
10Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.3 Bistables
- Bistable RS
S
Q2
Si S 1 et R 1, alors Q1 0 et Q2 0. Mais
cette combinaison nest pas désira-ble, car si on
remet nos entrées simul-tanément à 0, on ne peut
pas prévoir létat final du circuit. On remarque
que dans les trois autres cas, Q2 Q1.
Q1
R
1
0
0
0
0
1
11Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.3 Bistables
- Bistable RS
- On résume ce comportement dans le tableau suivant
Sn Rn 0 0 1 0 1 0 0 1 0 1 1 1 0 0
S
Q
stable
set
reset
Q
R
interdit
Ou encore
12Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.3 Bistables
- Bistable RS avec horloge
S
Q
C
Q
R
S Q C R Q
13Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.3 Bistables
- Bistable D avec horloge
C Dn Qn1 0 0 Qn 0 1 Qn 1 0 0 1 1 1
D
Q
D Q C Q
C
Q
Linverseur élimine complètement la possibilité
davoir la com-binaison 1-1 à lentrée des NOR.
14Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.3 Bistables
- Bistable T asynchrone
- Bistable T synchrone
Qn1 TnQn TnQn
S Q C R Q
D Q C Q
T
ou
T
T
Q
Qn1 CnQn Cn(TnQn TnQn)
S Q C R Q
C
T
C
T
Q
15Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.3 Bistables
- Application registre D de 4 bits
D3
D2
D1
D0
D Q C Q
D Q C Q
D Q C Q
D Q C Q
écriture
lecture
D3
D2
D1
D0
16Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.3 Bistables
- Application décaleur à droite
Q3
Q2
Q1
Q0
0
D3 Q C Q
D2 Q C Q
D1 Q C Q
D0 Q C Q
horloge
Qn1 Dn 0 Qn1 Dn Qn Qn1 Dn Qn , etc.
3
3
2
2
3
1
1
2
17Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.3 Bistables
- Application compteur binaire asynchrone
modulo-16
A
B
C
D
Q T Q
Q T Q
Q T Q
Q T Q
horloge
horloge
A
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
B
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
C
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
D
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
18Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.3 Bistables
- Bistables déclenchés par une montée ou une
descente de lhorloge (edge-triggered) - Dans les circuits précédents, il est sous-entendu
que le signal dhorloge est court, i.e. de
lordre du temps de réponse du circuit. Sinon, un
circuit comme celui du bistable T pourrait
bas-culer plusieurs fois pendant le temps où
lhorloge est 1. - Ces circuits sont représentés par les diagrammes
suivants
D Q Q
D Q Q
Qn1 Dn
Leur sortie change seulement au moment de la
transition, selon la valeur de D à cet instant
précis.
19Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.4 Synthèse dun circuit séquentiel
- Pour faire la synthèse dun circuit séquentiel,
on établit dabord son diagramme de transition. - On contruit ensuite sa table détats.
- On réalise le circuit combinatoire associé à
chaque bistable. - On réalise le circuit combinatoire associé à
chaque sortie.
20Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.4 Synthèse dun circuit séquentiel
- Exemple 1 compteur binaire synchrone modulo-4
sans entrée - Diagramme de transition Table détats
Q1Q2
01
0 0 0 1 0 1 1 0 1 0 1 1 1 1 0 0
00
10
11
21Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.4 Synthèse dun circuit séquentiel
- Exemple 1 compteur binaire synchrone modulo-4
sans entrée - Réalisation au moyen de bistables D
0 0 0 1 0 1 0 1 1 0 1 0 1 0 1 1 1 1 1 1 0 0 0 0
D1 Q1 C Q1
D2 Q2 C Q2
22Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.4 Synthèse dun circuit séquentiel
- Exemple 1 compteur binaire synchrone modulo-4
sans entrée - Réalisation au moyen de bistables T synchrones
- Pour le tableau, si
, sinon , - et si , sinon
.
0 0 0 1 0 1 0 1 1 0 1 1 1 0 1 1 0 1 1 1 0 0 1 1
1
T1 Q1 C Q1
T2 Q2 C Q2
23Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.4 Synthèse dun circuit séquentiel
- Exemple 2 compteur binaire synchrone modulo-4
avec entrée - Diagramme de transition Table détats
0/01
x
0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 1 0
1 0 1 1 1 1 1 0 1 1 1 1 1 0 0
1/01
1/10
01
Q1Q2
00
10
0/00
0/10
11
1/00
1/11
0/11
24Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.4 Synthèse dun circuit séquentiel
- Exemple 2 compteur binaire synchrone modulo-4
avec entrée - Réalisation au moyen de bistables T
xn
xn
0 1 00 0 0 01 0 1 11 0 1 10 0 0
0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 0 1 0 0 0 1 1 1
0 1 1 1 0 0 1 0 0 0 1 0 1 1 1 0 1 1 1 0 1 1 0 0 1
1 1 0 0 1 1
25Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.4 Synthèse dun circuit séquentiel
- Exemple 2 compteur binaire synchrone modulo-4
avec entrée - Réalisation au moyen de bistables T synchrones
x
x
T1 Q1 C Q1
T2 Q2 C Q2
Nous ne nous sommes pas préoccupés des sorties,
puisque selon Le diagramme de transition, il est
évident quelles sont égales à et
respectivement.
26Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.4 Synthèse dun circuit séquentiel
- Exemple 2 compteur binaire synchrone modulo-4
avec entrée - Réalisation au moyen de bistables D
xn
xn
0 1 00 0 0 01 0 1 11 1 0 10 1 1
0 1 00 0 1 01 1 0 11 1 0 10 0 1
xn
0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 0 1 0 1 0 1 1 1
0 1 0 1 0 0 1 0 1 0 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1
1 1 0 0 0 0
27Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.4 Synthèse dun circuit séquentiel
- Exemple 2 compteur binaire synchrone modulo-4
avec entrée - Réalisation au moyen de bistables D
D1 Q1 C Q1
D2 Q2 C Q2
x
x
28Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.4 Synthèse dun circuit séquentiel
- Exemple 3 Système de contrôle de feux de
circulation
Les feux alternent de A à B à chaque coup
dhorloge quand x 0. Dans létat A, la
circulation se fait dans la direction NS, dans
létat B, dans la direction EO. Un piéton peut
traverser après avoir appuyé sur le bouton (x
1) car quand x 1, on passe à létat C dans
lequel les feux sont sous deux rouges pour la
durée dune horloge ou tant que le bouton est
enfoncé.
x 0
A
B
x 0
x 1
x 1
x 0
C
x 1
29Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.4 Synthèse dun circuit séquentiel
- Exemple 3 Système de contrôle de feux de
circulation - Cette réalisation un peu naïve présente quelques
problèmes - Si un malin appuie sans cesse sur le bouton, la
circulation automobile est complètement
paralysée. Dautre part, comme le système une
fois dans létat C retourne toujours dans létat
A, il se pourrait quon narrive presque jamais
dans létat B sil y a fréquemment des piétons.
30Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.4 Synthèse dun circuit séquentiel
- Exemple 3 Système de contrôle de feux de
circulation - Une meilleure réalisation serait la suivante
x 0
Entrée Sortie présente x présente 0 1
z1z2 A B C 0 1 B A D 1 0 C B B 0 0 D A
A 0 0
État présent
A
B
x 0
x 1
x 1
x 0 ou 1
C
D
État suivant
31Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.4 Synthèse dun circuit séquentiel
- Exemple 3 Système de contrôle de feux de
circulation - Codage des états on attribue arbitrairement
- Q1Q2 00 représente A
- Q1Q2 01 représente B
- Q1Q2 10 représente C
- Q1Q2 11 représente D
Entrée Sortie présente x présente 0 1
z1z2 00 10 10 0 1 01 00 11 1 0 10 01 01 0
0 11 00 00 0 0
État présent
État suivant
32Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.4 Synthèse dun circuit séquentiel
- Exemple 3 Système de contrôle de feux de
circulation - Table de transition
Entrée État État Sorties Bistables x présent sui
vant présentes D1D2 Q1Q2 Q1Q2 z1z2 0 00 01 0
1 01 0 01 00 10 00 0 10 01 00 01 0 11 00 00 00
1 00 10 01 10 1 01 11 10 11 1 10 01 00 01 1 11
00 00 00
33Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.4 Synthèse dun circuit séquentiel
- Exemple 3 Système de contrôle de feux de
circulation - Tables de Karnaugh pour les entrées des bistables
Q1Q2
Q1Q2
x
x
00 01 11 10 0 0 0 0 0 1 1 1 0 0
00 01 11 10 0 1 0 0 1 1 0 1 0 1
D2
D1
34Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.4 Synthèse dun circuit séquentiel
- Exemple 3 Système de contrôle de feux de
circulation - Tables de Karnaugh pour les sorties
Q1Q2
Q1Q2
x
x
00 01 11 10 0 0 1 0 0 1 0 1 0 0
00 01 11 10 0 1 0 0 0 1 1 0 0 0
z2
z1
35Unité 6 Logique séquentielle
- 5.3 Circuits séquentiels
- 5.3.4 Synthèse dun circuit séquentiel
- Exemple 3 Système de contrôle de feux de
circulation - Circuit
x
D1 Q1 Q1
z1
D2 Q2 Q2
z2
horloge