les td corrig©s
TRANSCRIPT
1
2
3
4
0
1
3
3
1
1
2
2
4
4
étatB
Matrice des Phases
b)
Etudier le système ci-dessous (Chronogramme).Montrer que c'est un oscillateur. Quelle est sa période ?
Exercice n°0 :
s
On a 0.0 = 1 et 1.1 = 0. Donc, effectivement, ce montage ne cessera d'osciller.
Exercice n°1 :
1
24
3
01
1
0
01
1
0
Bouton appuyé
Lampe allumée
Graphe des Phases
a)
1
2
3
4
L
0
1
1
0
état
Matrice de Sortie
c)
Pour commander une lampe à l'aide d'un bouton poussoir unique, on se proposede réaliser un circuit à une entrée notée B (le bouton poussoir), et une sortie notéeL (la lampe) tel que :
•
•
Pour cela, on procèdera par étapes :a) Ecrire le graphe des phases ;b) Ecrire la matrice des phases ;c) Ecrire le tableau des sorties ;d) Attribuer des variables auxiliaires et ecrire la matrice des excitations ;e) Calculer les expressions booléennes des excitations ;f) Calculer l'expression booléenne de la sortie ;g) Réaliser le circuit ;h) Faire le chronogramme.
la lampe s'allume en appuyant sur le bouton si elle était éteinte et resteallumée lorsqu'on lache le bouton ;
la lampe s'éteint en appuyant sur le bouton si elle était allumée et elle resteéteinte lorsqu'on lache le bouton.
TD n°1
page 1TD Logique séquentielle - J. Guizol
00
01
11
10
0
00
11
11
00
1
01
01
10
10
y1y2
B
Matrice des excitations
d)
00
01
11
10
0
0
1
1
0
1
0
0
1
1
y1y2
B
Y1 = y2.B + y1.B + y1.y2
00
01
11
10
0
0
1
1
0
1
1
1
0
0
y1y2
B
Y2 = y2.B + y1.B + y1.y2
e)
Evaluation des excitations
L1
B1
Montage à comportement instable
L2
B2
Montage à comportement stable
g)
|0 |500 |1000 |1500input B2
output L2
00
01
11
10
0
0
1*
1
0*
1
1*
1
0*
0
y1y2
B
L = Y2
f)
NB : Les regroupements qui peuvent sembler redondants servent en fait àempêcher l'apparition d'aléas statiques.
page 2TD Logique séquentielle - J. Guizol
À
°
®
¯±a
b
d)
À¯
° ±®
00 01
5
102
11ab
M/A
Matrice des phases réduite
Commande d'une pompe à l'aide de deux boutons poussoirs (Marche-Arrêt). Réaliser lecircuit à 2 entrées M/A et une sortie P tel que :
• En appuyant sur M,
• En appuyant sur A,
a) Ecrire le graphe des phases ;b) Ecrire la matrice des phases ;c) Ecrire le tableau des sorties ;d) Ecrire la matrice des phases réduite ;e) Attribuer des variables auxiliaires et calculer les expr. booléennes des excitations ;f) Calculer l'expression booléenne de la sortie ;g) Réaliser le circuit ;h) Faire le chronogramme.
si la pompe est arrêtée, elle démarre et continue à tournerlorsqu'on lache le bouton M;si la pompe fonctionne, elle continue à fonctionner.
si la pompe fonctionne, elle s'arrête et reste arrêtée lorsqu'onlache le bouton A ;si la pompe est arrêtée, elle demeure arrêtée.
Exercice n°2 :
À
¯°
± ®
0
0
0 1
1
1
10
10
10
10
01
01
01
11
00 00
0111
Arrêté
AppuiBoutonMarche
Appui simultané…
…Marche relaché
…Arrêt relaché
FonctionneAppuiBoutonArrêt
Arrêt
Appui simultané……Marche relaché
…Arrêt relaché
Mise enFonction
Graphe des phases
À®¯°±
À
¯°
±
®
00
4*
1*
015*55
5
11*3
*6
102
22*2
P011100
états
M/A
Matrice des phases et sortie
a)
b&c)
page 3TD Logique séquentielle - J. Guizol
|0 |250 |500 |750input A
input M
output (P)
À® ¯° ±À°À ¯°À° ¯¯°Àa b a b a b a
h)
M
A
P
g)
0100
1011
01
0001
1101
M/A
y
Y = M.A + y.A + y.M
e)
Matrice des excitations
010*
10*1
01
0001
1101
M/A
y
S = y
f)
Calcul de la sortie
page 4TD Logique séquentielle - J. Guizol
y1y2y3
Sortie
000001011111101100110010
00110011
Ck
111111111111101101101111
111011011110001100100111
0 1Q Q
11001111
¬
®¯
°±
Ck
Y1
Q
2
1
6
5
4
3
Æ t1
Y2
Y3
Æ t2
Æ t3
y1
y2
y3
Q
TD n°2Analyser le circuit suivant. Les sorties Q et Q sont-elles toujourscomplémentaires en régime transitoire ?
Exercice n°1 :
1
Q
Ck
Q
2
3
4
5
6
Il convient de discerner tout d'abord les véritable bouclesde retour. Pour ce faire, écrivons les liaisons orientéesqui existent entre les composants
1→2 2→1 3→6 4→3 5→6 6→52→5 3→4 5→1 6→42→3 3→2
On met ainsi en évidence 3 boucles au sortir des portes2, 3 et 5. Le circuit se redessine donc comme suit :
Y1 = y1y2 + Ck + y3
Y2 = y1 + y2y3
Y3 = y1 + Ck + y2y3
Q = y2
Q = y2 + y3
La matrice des phases s'écrit donc :
Dans cette matrice, on peut constater que lesétats 000 et 010 ne sont jamais atteints par uneconfiguration des Yi. Quant aux états 001 et 110,ce sont des transitoires évitant les coursesinduites par les passages de 101 à 011 et de 111à 100 pour une entrée Ck = 1.
On a donc en fait 6 états, 4 stables et 2 transitoi-res qui nécessitaient bien 3 variables auxiliaires.
On constate qu'au niveau du transitoire 110, Q ¬ Q
TD 2 Logique séquentielle - J. Guizol page 1
CK
R
S$S1
R1
S2
R2
Y1 Y2 = Q
$1 2 3 4
8765
¬
®
¯
°
±0
00
11
1
0
1
1
10
0
1
1
1 0
Ck
Q
Chronogramme de fonctionnement
Exercice n°2 :
Y2=y1.(S.R+Ck)+y2.(S.Ck+R.Ck+y1.R.Ck) Applic. règle A.X+A=A
Y1=S.Ck+y1.R+y1.Ck
Y1=S1.y1.R1=S1+y1.R1=S.Ck+y1.R.Ck
Y2=S2.y2.R2=S2+y2.R2=y1.S.Ck.R.Ck+y2.S.Ck.R.Ck.y1.R.Ck
Y2=y1.(S+Ck).(R+Ck)+y2.(S.Ck+R.Ck+y1.R.Ck)
Y2=y1.(S.R+Ck.(S+R)+Ck)+y2.(S.Ck+R.Ck+y1.R.Ck)
page 2TD 2 Logique séquentielle - J. Guizol
000
00
00
11
11
001
00
00
11
11
011
-
-
-
-
010
00
00
11
11
110
10
11
11
10
111
-
-
-
-
101
00
01
01
00
100
00
00
11
11
Q
0
1
1
0
00
01
11
10
y1y2
CkSR
1 2 8 73
12
6 94 105
11
Ck
S
Q
12
11
À
Á
Â
Æ
Ç
É
Ã
Ä
Å
È
0
0
0
0 0
0
1
1
1
1
1
1
Q=0Ck=0
Q=1Ck=0
Reset
Set
100
100100
100
100100
000
000
000001
001
001 101
101
110010
101
101
110
000
000
000
001
010
010
110
110
010
page 3TD 2 Logique séquentielle - J. Guizol
Ck
S
Q
000
00
11
11
00
001
00
01
01
00
011
10
01
01
10
010
10
11
11
10
110
00
00
11
11
111
00
00
11
11
101
00
00
11
11
100
00
00
11
11
Q
0
1
1
0
00
01
11
10
y1y2
CK J K
9 10 2 14 3
12 6 511 8 7
14 16
15 13
$Y1
Y2 = D
$CK
K
J
page 4TD 2 Logique séquentielle - J. Guizol
x1 x2
x1=y1+CK.y2.K+CK.x2.J
x2=y2+CK.(y1+CK.y2.K+CK.x2.J)=y2+y1.CK
Donc x1=y1+CK.y2.K+CK.y2.J
Y1=x1+J.x2.CK+y2.K.CK=y1.(CK+y2+K).(CK+y2+J)+J.y2.CK+y2.K.CK
=y1.CK(1+J+K)+y1.y2.J+y1.J.K+y1.y2.K+CK.(J.y2+K.y2)
=y1.CK+J.(y1.y2+y1.K)+y1.y2.K+CK.(J.y2+K.y2)
Y2=x2+y1.CK=y2.(y1+CK)+y1.CK=y1.y2+CK.y2+CK.y1
Exercice n°3 :
5
6
7
11
8
12 14
16
15
9
13 10
1
3
24
111101
111
101100
100
000100
110
000
000
001
010
001
110
010
011
011
011
011
001
010
001
010
000
000
100000
100
100
101
110
101
110
111
111
111011
011111 001
110
010
101
010
001
101
110Q=0
Q=1
page 5TD 2 Logique séquentielle - J. Guizol
TD n°3On considère un dispositif tel que celui qui est schématisé sur la figuresuivante :
X et Y sont deux moteurs alimentés par les relais de même nom. Quand Xest alimenté, le chariot C se déplace de A vers B, quand Y est alimenté, lechariot C se déplace en sens inverse. A et B sont des relais de fin decourse. M est un capteur situé sur le point médian du parcours. Il sera actifpendant toute la durée du passage du chariot au dessus de ce point. Lechariot B comprend en outre deux flèches lumineuses G et D éteinteslorsque le chariot est au repos et qui sont allumées grâce aux commandesde même nom dès que le chariot est en mouvement. On désire construire lecircuit séquentiel tel que lorsque l'on appuie sur le bouton de mise enmarche S, le chariot, qui est supposé au repos en A, effectue un aller-retourA-B-A. Pendant ce trajet, les flèches indiquent en permanence la directionde M* , à l'exception du laps de temps pendant lequel le chariot passe audessus du point médian M, auquel cas les flèches seront toutes les deuxallumées.
Dans un premier temps, on simplifiera le problème en ignorant le capteurM et les flèches G et D
1) Enumérer les entrées et les sorties du système.
2) Tracer le graphe des phases, puis la table de fluence primitive dusystème.
3) Tracer la table réduite et en déduire les équations des variablesauxiliaires et des sorties du système.
CORRECTIONA] Problème simplifié :
* Entre A et M, D est allumée, entre M et B, G est allumée. D et G sont simultanément allumées pendant
toute la durée du passage du chariot au dessus du point M, c'est à dire tant que le capteur M est dansl'état 1.
Graphe d'états :
Matrice d'états :
Matrice réduite : Matrices d’excitation et de sortie:
On obtient finalement :
€
W = S + wB
Y = w + AX = w
On a appelé W la variable auxiliaire pourne pas la confondre avec la variableallouée au moteur.
D’où le schéma :
B] Problème complet
Graphe d'états :
11
1 2 3
4
5 6
7
8910
0000YXGD
0101 0101 0101 0111
0101
1001 1011 1010 1010
0110
1010SMAB
0010 0000 0100
1000 0000 0000
0001
000001000000
0010
Matrice d'états :
123456789
1011
0010133
1
101022
1000
44
0000
5557799
1111
0100
66
1010
0101 0001
88
00000101010101010101011101101010101010111001
E.P. Etat suivantSortie
Matrice réduite : Graphe de transition :
Attribution des variables auxiliaires : Matrice de sortie :
On trouve finalement : Y1 = y1.M + y2 .MY2 = y2.B+ S
et les sorties
Y = y2.A X = y2G = M + y1D = M + y1.(y2 + A )
01S
01M
01A
01B
1
D
1
G
0
X
1
Y
S
Y1
YB
G
Y2
Y2A
M
D
JC = ADKC = D
JA = BCDKA = D
JB = CDKB = CD
JC = 1KC = 1
00011110
00 01 11 10CD
AB
* * **
k Jk Kj jk Jk Kj j
k k * *
Jk
j* * * *Kj
k k k kk k k
* *
00011110
00 01 11 10CD
AB
* * **
k k Jk kj j Kj j
k k * *
00011110
00 01 11 10CD
AB
* * **
Jk Kj Kj JkJk Kj Kj Jk
Jk Kj * *
00011110
00 01 11 10CD
AB
019
8 2
7 3
465
TD n°4
Réaliser un compteur synchrone modulo 10 à l'aide debascules JK
0000000100100011010001010110011110001001
0001001000110100010101100111100010010000
EP ES0123456789
Il y a 10 états différents. D'où 4 digits binaires et donc 4 bascules JK. Parailleurs, 4 boucles seront nécessaires puisque 23<10<24.
Exercice n°9 :
On utilise un codage pour une bascule générale JK en portant J et K pourreprésenter les changements d'état obligatoires et j et k optionnels pourles maintients d'état.Selon que l'on utilisera lors de la réalisation des bascules JK, RS, T ou D,les regroupements se feront en suivant les règles suivantes :
J→ Jk + Kj + j + *K→ Kj + Jk + k + *
S→ Jk + j + *R→ Kj + k + *
T→ Jk + Kj + * D→ Jk + j + *
TD 4 Logique séquentielle - J. Guizol page 1
Par exemple, ici, en appliquant aux bascules JK, puis T, on aura les fonctions :
TA = AD+BCDTB = CDTC = ADTD = 1
¬A.D
CD BCD
Vcc
A
B
C
D
Compteur modulo 10
D'où le montage :
|0 |500 |1000 |1500 |2000input clock
output A
output B
output C
output D
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0…
…et le chronogramme :
TD 4 Logique séquentielle - J. Guizol page 2
010001010110011110001001101010110000000100100011
001101000101011001111000100110101011000000010010
001000110100010101100111100010011010101100000001
RAZ Inc. 1 Inc. 2 Inc. 3 Inc. 4000000010010001101000101011001111000100110101011
000000000000000000000000000000000000000000000000
000100100011010001010110011110001001101010110000
EP ES
01234567891011
MNInc. 1 0 1Inc. 2 1 0Inc. 3 1 1Inc. 4 0 0Codage choisi
Réaliser un compteur synchrone modulo12 programmable dont les possibilitéssont les suivantes :
• Remise à zéro ;• Comptage par pas de 1, 2, 3 ou 4.
Exercice n°10 : 01
9
8
2
7
3
4
6 5
11
10
00 01 11 10
00
01
11
10
CDAB 00 01 11 10
00
01
11
10
CDAB
00 01 11 10
00
01
11
10
CDAB 00 01 11 10
00
01
11
10
CDAB
k k k kJk Jk Jk Jk
****Kj Kj Kj Kj
****
k k k kk k Jk k
j j Kj j
********
k k k kk k Jk
j
Jk
j Kj Kj
k k k kk JkJk Jk
j Kj Kj Kj
JA = B.KAKA = CD+CM+MN+DMN
NM
0
1
0 100 01 11 10
00
01
11
10
CDAB 00 01 11 10
00
01
11
10
CDAB
00 01 11 10
00
01
11
10
CDAB 00 01 11 10
00
01
11
10
CDAB
Jk
****
Jk Jk Jk
k k k k
Kj Kj KjKj
****
k k k
k k k k
j j Kj j
Jk
****
k Jk
j Kj Kj Kj
Jk Jk
k k k k****
k k
k k k k
j j
Jk Jk
Kj Kj
NM
0
1
0 1
JA = A.KBKB = KA
TD 4 Logique séquentielle - J. Guizol page 3
NM RAZ
Compteur modulo 12 à incrément programmable
NM
0
1
0 100 01 11 10
00
01
11
10
CDAB 00 01 11 10
00
01
11
10
CDAB
00 01 11 10
00
01
11
10
CDAB 00 01 11 10
00
01
11
10
CDAB
k k j
****
jk k j j
k k j j****
k Jk jKj
k Jk jKj
k Jk jKj
****
kJk j Kj
kJk j Kj
kJk j Kj****
JkJk Kj Kj
JkJk Kj Kj
JkJk Kj Kj
JC = KCKC = DM+MN+DMN
NM
0
1
0 100 01 11 10
00
01
11
10
CDAB 00 01 11 10
00
01
11
10
CDAB
00 01 11 10
00
01
11
10
CDAB 00 01 11 10
00
01
11
10
CDAB
****
k j j k
k j j k
k j j k****
JkJk KjKj
JkJk KjKj
JkJk KjKj
****
k j j k
k j j k
k j j k****
JkJk KjKj
JkJk KjKj
JkJk KjKj
KD = JD = N
D'où le montage :
TD 4 Logique séquentielle - J. Guizol page 4
Compteur binaire
Pour mémoire
TD 4 Logique séquentielle - J. Guizol page 5
JB = QA.QC . QA.QD = QA.QC + QA.QDKB = QA
JC = QA.QD = QA.QDKC = QA.QB = QA.QB
JA = 1 et KA = 1
JD = QC .(QA.QB) = QA.QB.QCKD = QA
H
J Q
QK
S0
A
1
J Q
QK
S3
DJ Q
QK
S2
CJ Q
QK
S1
B
TD n°5
Le circuit de la figure ci-dessous comporte 4 bascules JK, notées A, B, C, D et parsoucis d’homogénéité, seulement des portes NAND (9). Ce circuit possède une seuleentrée notée H, l’horloge. Les 4 sorties de ce circuit doivent représenter le code d’unchiffre en DCB (décimal codé binaire), où S0 est le bit poids faible et S3 est le bit poidsfort.
Questions :
1 - Analyser ce circuit (équations de commande des bascules, matrice et graphe desphases) et indiquer son fonctionnement normal.
2 - On suppose un démarrage aléatoire du circuit (son état interne est quelconque audémarrage). Indiquer le nombre maximum de cycles d’horloge qu’il faut attendrepour que le circuit ait atteint son fonctionnement normal.
3 - Ajoutez à ce circuit une entrée d’initialisation qui le force à prendre sonfonctionnement normal lorsqu’elle est activée.
1) L’évaluation des fonctions de commande ne pose pas de problèmes particuliers. Ilsuffit de “suivre les fils” et de connaître la lo i de de Morgan...
Exercice n° 10
page 1TD 5 Logique séquentielle - J. Guizol
Etat Préc. Etat SuivantQD0000000011111111
QC0000111100001111
QB0011001100110011
QA0101010101010101
0123456789101112131415
9012345678510312514
Afin de dresser la matrice des états, j’ai choisi, pour une meilleure compréhension, defaire apparaître les valeurs des fonctions de commandes en regard de l’état de la bas-cule correspondante.
2) J’ai nommé les divers états par leur valeur décimale. Le cycle le plus long traverseles états suivants :
9➙ 8 ➙ 7 ➙ 6 ➙ 5 ➙ 4➙ 3 ➙ 2 ➙ 1 ➙ 0➙ 9… soit 10 étapes.Tous les états ne sont pas représentés dans ce cycles !On a aussi des états d’entrée qui nécessitent des étapes supplémentaires avant derejoindre le cycle:10 ➙ 5 ➙ 4 ➙ 3 ➙ 2…, 14 ➙ 5➙ 4➙ 3 ➙ 2…, 12➙ 3 ➙ 2… (1 étape),11 ➙ 10 ➙ 5 ➙ 4➙ 3…, 15 ➙ 14 ➙ 5 ➙ 4 ➙ 3…, 13 ➙ 12➙ 3➙ 2… (2 étapes)
Le but de la question 3 est de forcer à rejoindre le cycle dès qu’une entréesupplémentaire I est activée.
Pour déterminerl’état suivant, il faut se souvenir du fonctionnement de la bascule JKque l’on a vu en cours...Si à temps précédent, Q=0 alors, Q prends la valeur 1 si J (et éventuellement K) =1.Il reste à 0 dans les autres cas.Réciproquement, si Q=1, alors, Q prends la valeur 0 si K (et éventuellement J) =1.Il reste à 1 dans les autres cas.
page 2TD 5 Logique séquentielle - J. Guizol
3) Tout d’abord, choisissons un état du cycle vers lequel, quel que soit l’état dans lequelon est, le cycle va être amorcé, par exemple, l’état 0.
Cet état correspond à une configuration de QAQBQCQD = 0000.
D’après les rappels précédents sur le fonctionnement de la bascule JK, il fautdonc que JX = 0 et KX = 1, ∀ X ∈ {A, B, C, D}. Par ailleurs, il faut que lorsque Iretombera à 0, les fonctions de commande fonctionnent normalement.
Par exemple pour I = 0, JA doit être égal à 1 (valeur prévue dans le montageinitial) et pour I = 1, JA doit être égal à 0 (conclusion précédente). Doncfinalement, JA = I. KA, lui, doit être égal à 1 dans les deux cas.
Autre exemple, KB doit être égal à 1 si I = 1, et à QA si I = 0. Donc KB = QA.I + I.
En définitive, on obtient :
JB = (QA.QC + QA.QD).IKB = QA.I + I
JC = (QA.QD).I
KC = (QA.QB) + I
JA = I et KA = 1
JD = (QA.QB.QC).I
KD = QA.I + I
Je vous conseille de chercher une autre solution en supposant, par exemple, que l’entréedans le cycle s’opère non plus par 0, mais, par exemple, par 5.
page 3TD 5 Logique séquentielle - J. Guizol
1 200/0
10/1
01/1
11/1
10/0
01/000/1
11/0
Etat sansretenue
Etat avecretenue
Exercice n°11 :
TD n°6
Faire la synthèse d'un additionneur série à deux entrées. Chaque entréereçoit les symboles binaires formant l'un des nombres à additionner encommençant par les bits poids faible.
Faire la synthèse de l' additionneur sous forme d'un circuit de Mealy,c'est à dire, un circuit séquentiel synchrone pour lequel la sortien'apparaît que pendant la transition entre deux états. Donner le schémalogique.
1 -
Refaire la synthèse sous forme d'un circuit de Moore, c'est à dire, uncircuit séquentiel synchrone pour lequel à chaque état correspond unesortie. Donner le schéma logique.
2 -
Comparer les deux solutions.3 -
0011
x1x20112
1122
1012
12
0000
x1x20101
1111
1001
01
A SA = x1.x2RA = x1.x2
Matrice des phases :
Matrice de sortie :
0001
x1x20110
1101
1010
01
A
Z = A ⊕ x1 ⊕ x2
page 1TD 6 Logique séquentielle - J. Guizol
|0 |500 |1000input Ck
input x1
input x2
output Z
x1
x2
Z
Ck
D'où le montage…
…et le chronogramme :
page 2TD 6 Logique séquentielle - J. Guizol
En fait, une affectation plus judicieuse des variables nous aurait permis de déterminer celaplus rapidement. On a dans la matrice une PPS triviale {1,2};{3,4}. Introduisons une variablebooléenne, A servant à coder le bloc {1,2} par 0 et {3,4} par 1. La matrice devient :
x1
x2
A
01
0000
0101
1111
1001
x1x2A
SA = x1.x2RA = x1.x2
01
00rR
01rs
11Ss
10rs
x1x2A
01
0012
0123
1134
1023
x1x2A
matrice de correspondance
01
0001
0110
1101
1010
x1x2A
matrice de sortie
Z = x1 ⊕ x2 ⊕ A
2 4
1 300
0
01 1100
10
10 01
1 1
0
00
00
11
1101
10
11
10 01
Etats avecretenue
Etats sansretenue
2 - Dans le cas de l'automate de Moore, on a 4 états
1234
001122
012233
113344
102233
z0101
x1x2
00011110
0000000101
0101011111
1111111010
1001011111
x1x2AB
00011110
00rRsS
01SssS
11SsRr
10SssS
x1x2AB
BSB = x1.x2+A.x1+A.x2RB = A.x1.x2+A.x1.x2
00011110
00rrRR
01rrss
11SSss
10rrss
x1x2AB
ASA = x1.x2RA = x1.x2
00011110
000011
011100
110011
101100
x1x2AB
ZZ = x1⊕ x2 ⊕ A
1→ 00 ; 2→ 01 ; 3→ 11 ; 4→ 10Affectation "bestiale" :
où l'on s'aperçoit que la bascule B est inutile puisque A = fA(x1,x2) et Z = fZ(A,x1,x2)
page 3TD 6 Logique séquentielle - J. Guizol
On obtient le schéma en cascade :
01
0000
0101
1111
1001
x1x2A 1
234
000011
011100
110011
101100
x1x2
Connaissant la matrice correspondant à la PPS et la matrice de sortie de la machineinitiale, établissons la matrice de la machine B placée en série
01
0000
0111
1100
1011
x1x2B
A = 0 A = 10011
0100
1111
1000
012
143
01
AB
01
00rR
01Ss
11rR
10Ss
x1x2B
A = 0 A = 100Ss
01rR
11Ss
10rR
SB = x1 ⊕ x2 ⊕ A
RB = SB
x1
x2
AB
page 4TD 6 Logique séquentielle - J. Guizol
Autre possibilité : on adjoint à la PPS trouvée précédemment la PGS {1,3};{2,4}. On constateque cette PGS est orthogonale à la PPS. Codonx les blocs de la PGS avec une variablebooléenne B prenant des valeurs correspondant aux sorties, soit 0 pour {1,3} et 1 pour {2,4}.On a la matrice de correspondance :
{1,5}{2}{3,7}{6,4}
{3,4,6,7}{1,3,4,5,6,7}{1,2,3,4,5,6,7}
{2}{5}{1,5}{7,4}
{1,7,4,5}{1,2,4,5,7}
{3,7}{1}{6,4}{6,3}{6,3,4}{3,4,6,7}
EP ES
1234567
2517245
3166734
0001011
X=0 X=1Z
Exercice n°12 : Un système séquentiel synchrone est défini par la table devérité ci-dessous. Trouver toutes les partitions avecpropriété de substitution de l'ensemble des états etprocéder à la décomposition donnant le circuit decomplexité minimale.
{1,2}
{1,2,3,4,5,6,7}
{1,2,3,5}{1,2,3,5,6,7}
{2,5}{2,5,1}{1,2,5,4}
{1,3}{3,1,6,7}{1,3,6,7,4}
{1,4}{2,7}{3,6}{5}
{2,7}{5}{1,4}{2}
{3,6}{1,4}{3,6}{7}
Donc 1 et 2 sont incompatibles. Demême, on s'aperçoit que l'association{1,3} impose celle de {1,2}, trouvéefausse.
{1,6}{2,4}{3}{5,7}
{2,4,5,7}{1,2,4,5,6,7}{1,2,3,4,5,6,7}
{2,4}{5,7}{1}{2,5}{5,7,2}
{1,2,4,5,7}
{3}{1,6}{6}{7,4}
{1,6,7,4}{1,3,4,6,7}
{1,7}{2,5}{3,4}{6}
{2,5}{5,2}{1,7}{4}
{3,4}{1,7}{6}{3}
A ce niveau on a donc 2 PPSorthogonales :
{1,4}, {2,7}, {3,6}, {5}et
{1,7}, {2,5}, {3,4}, {6}
TD n°7
page 1TD 7 Logique séquentielle - J. Guizol
Machine M2
00011110
CDX
0010
1000
1011
1111
C0 1
D0 1
TC = C.D.X + C.D.X
TD = C + D + X
Machine M1
00011110
ABX
0111
1001
1111
1101
A0 1
B0 1
TA = A.B + B.X + B.X = A.X + B + XO
TB = A + B + X = A.B.X
Matrices fonctionnelles pour bascule T :
00011110
{1,7}{2,5}{3,4}{6}
001010011
111001011
CDX
Machine M2
00011110
{1,4}{2,7}{3,6}{5}
001100001
111001101
ABX
Machine M1
ABCD
00011110
00 01 11 1017**
*2*5
4*3*
**6*
Représentation des étatspar leur codage en AB/CD
Matrices d'états pour les 2 partitions orthogonales :
ABCD
00011110
00 01 11 101
1
* ***
*** * *
1 S = A.C + B.DMatrice de sortie :
{2,3}⇒ {1,5} (incompatibles) ; {2,4}⇒ {1,6} (incompatibles) ; {2,5}⇒ {1,7} (déjà trouvé) ;{2,6}⇒ {1,3} (incompatibles) ; {2,7}⇒ {1,4} (déjà trouvé); {3,4}⇒ {1,7} (déjà trouvé) ;{3,5}⇒ {1,2} (incompatibles) ; {3,6}⇒ {1,4} (déjà trouvé); {3,7}⇒ {1,5} (incompatibles) ;{4,5}⇒ {2,7} appartenant à la PPS {1,4} qui justement sépare 4 et 7⇒ incompatibles ;{4,6}⇒ {3,6} appartenant à la PPS {1,4} qui justement sépare 4 et 6⇒ incompatibles ;{4,7}⇒ {4,6} (incompatibles) ; {5,6}⇒ {2,4} (incompatibles); {5,7}⇒ {4,7} (incompatibles) ;{6,7}⇒ {4,5} (incompatibles).
ensuite…
page 2TD 7 Logique séquentielle - J. Guizol
|0 |250 |500 |750 |1000 |1250input CK
input X
output A
output B
output C
output D
output S
1 2 5 2 1 3 6 4 7 4 7 5 2
Machine M1
CK
X
S
B
A
D
C
Machine M2
Montage :
Chronogramme :
page 3TD 7 Logique séquentielle - J. Guizol
Machine PPS
B
A
X
S
Machine PGS
C
CK
00011110
ABX=0MMMMM
X=1NNMN-
MMMNN
NNNM-
Transitions de la PGSen fonction de la PPS
page 4TD 7 Logique séquentielle - J. Guizol
Comme dans l’exercice précédent, considérons une PGS. En l’ocurrence, laseule envisageable est {1,2,3,5}, états pour lesquels la sortie vaut 0 et {4,6,7}où la sortie vaut 1.Par ailleurs, supposons que nous n’ayons trouvé que lapremière PPS {{1,4},{2,7},{3,6},{5}}.On constate que ces deux partitions sont orthogonales.En gardant le même codage en AB que précédemment pour le PPS, nommonsM la partition {1,2,3,5} et N, la partition {4,6,7}.
00011110
{1,4}{2,7}{3,6}{5}
M1235
N476-
AB
Représentation des étatspar leur codage PPS/PGS
TC = A.X + A.B.X.C
00011110
ABX=0 X=1
1
T
-
0
TT
1
T-
Réalisation avec une bascule T
C0
00011110
ABX=000000
X=11101-
00011
1110-
Codage de M/N par C=0/1
C
1
2 3
764 5
8 9 10 11 12 13 14 15
1
0/0 1/0
0/0
0/0 0/0 0/0 0/0
0/01/0 1/0
1/0 1/0 1/0 1/0
1/10/1
1/00/1
1/00/1
1/00/1
1/10/1
1/00/1
1/10/1
1/00/1
Exercice n°13 :On se propose de réaliser un système séquentiel destiné à vérifier chaquegroupe de 4 bits reçus séquentiellement sur l'entrée. Si un groupe de 4 bitssuccessifs est le code binaire d'un chiffre de 0 à 9, la sortie passe à 1après réception du 4ème bit, sinon, elle reste à 0 (code représentant unchiffre de 10 à 15). Le système attend alors les 4 bits suivants…1) On suppose que les codes binaires arrivent avec les poids faibles entête (5 donnera lieu à l'envoi de 1 puis de 0, de 1 et enfin de 0.
2) On se propose de réaliser un système séquentiel ayant les mêmesfonctions que le précédent, sauf que la sortie du système passe à 1 si ledernier bit reçu forme avec les trois bits précédents le code binaire d'unchiffre compris entre 0 et 9Exemple : la suite 0 0 0 0 1 1 0 1 0 1 1 0 0 1…donnera en sortie 0 0 0 1 1 0 1 0 1 0 0 1 1 1.
a) Donner le tableau des phases simplifié du système séquentielb) Le tableau des phases possède 2 PPS (une à 4 blocs, l'autre à 2
blocs). Pour chaque PPS, donner le tableau des phases de M1 et de M2.c) On se propose de réaliser ce système en utilisant pour M1 un registre à
décalage. Trouver le nombre d'étages du registre et donner le tableaudes phases de M2.
a) Donner le tableau de phases simplifié de ce système séquentiel (4 états)b) Trouver une PPS sur l'ensemble des états . Donner les tableaux des
phases de M1 et M2.c) Peut-on simplifier la réalisation en utilisant un registre à décalage.
Donner le nombre d'étages du registre ainsi que le tableau des phasesde M2.
TD n°8
page 1TD 8 Logique séquentielle - J. Guizol
Matrice des phases :
123456789101112131415
0246810121411111111
1357911131511111111
0000000011111111
1000000010001000
Etat Suiv. SortieE.P.
✘ ✘ ✘ ✘ ✘ ✘ ✘✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘
✘✘✘
12
34
56
78
910
1112
1314
15
2-43-52-63-72-83-92-103-112-123-132-143-15
4-65-74-85-94-105-114-125-134-145-15
6-87-96-107-116-127-136-147-15
8-109-118-129-138-149-15
10-1211-1310-1411-15
12-1413-15
141312110987654321
14-1513-14-15Idem11-13-14-1510-11-13-14-159-10-11-13-14-158-12 | 9-10-11-13-14-15IdemIdem5-7 | 8-12 | 9-10-11-13-14-154-6 | 5-7 | 8-12 | 9-10-11-13-14-15Idem2-3 | 4-6 | 5-7 | 8-12 | 9-10-11-13-14-15Idem 1
24589
0248911
1259911
0000011
1000010Matrice simplifiée
page 2TD 8 Logique séquentielle - J. Guizol
{1,2,4,5,8,9}
{1,2,4,8,9} {1,2,5,9}
{1,2,4,8} {1,2,5,9} {1,2,4,9} {1,2,5,9}
X1
X2
1
10 0
0
1
A B BB C CC D DD A A
0 1
Compteur modulo 4
PPS1={{1,4,5},{2,8,9}}
{1,4,5} {2,8,9} {2,9}{2,8,9} {1,4} {1,5}
0 1A B BB A A
0 1
Compteur modulo 2
{4,5} {8,9} {9}{8,9} {1} {1}
0 1
{1} {2} {2}{2} {4} {5}
PPS2={{4,5},{8,9},{1},{2}}
PPS1.PPS2={{4,5},{8,9},{1},{2}} ≠ Ø
001248
011259
111259
101249
PQRS
X1 X2
On constate bien que dans le cadre de notre système le bit poids faible estsans importance car quelle que soit sa valeur, ce sont les bits de poidssupérieur qui permettront d'évaluer la sortie (1,3,7 et 9 répondent à lacontrainte).
Le registre à décalage comportera donc 2 mémoires (X1, le 2ème bit reçu etX2, le 3ème bit reçu), et M2 comportera 4 états (feuilles du graphe)
Ces 2 partitions n'étant pas orthogonales, il n'est donc pas possible deréaliser le système grâce à 2 machines en parallèles. La matrice simplifiéeréduit le graphe de la façon suivante:
On choisit de coder les 4 étatsatteints dans chaque branchede la façon suivante :
page 3TD 8 Logique séquentielle - J. Guizol
00QRSP
01QRSP
11QRSP
10QRSP
PQRS
0X1X2
X 100QRSP
01QRSP
11QRSP
10QRSP
Compteur modulo 4
00 01 1110PQRS
0X1X21
00 01 1110AB00011011 1 1 1 1 1
S=XAB+X1X2AB=(X+X1X2)ABLa sortie reste à zéro tant quel'on n'a pas reconnu le 4ème bit
Sortie :
X1X2
Compt.mod 4Ck
X
A
B S
Déterminons donc la machine chargée de régler les transitions d'étatsentre P, Q, R et S codés respectivement 00, 01, 10 et 11 etreprésentant respectivement les classe {1}, {2}, {4,5} et {8,9}.
On aurait pu aussi choisir une partition orthogonale à la PPS obtenueprécédemment. Par exemple, en choisissant P = {{1, 2}, {4, 8}, {5, 9}}, onpourrait opter pour le codage suivant :A=0 pour {1, 4, 5}, A = 1 pour {2, 8, 9},BC = 00 pour {1, 2}, BC = 01 pour {4, 8}, BC = 11 pour {5, 9}.
On obtient alors les matrices suivantes :
page 4TD 8 Logique séquentielle - J. Guizol
000111-
010000-
00011110
0B CX 1
A=0 A=0A=1 A=1
001111-
110000-
00000-
00011110
BCXA 01
001-
11101-
10010-
TB = B.A + X.(CA+ B.A.C)
On en déduit les matrices d'excitation avec bascule T suivantes :
00000-
00011110
BCXA 01
111-
11111-
10000-
TC = A
010
01
AX 1
10
011
01
AX 1
11
TA = 1
D'où le circuit :
T
C R
Q
U3
T
C R
Q
U6
CLK1
T
C R
Q
U101
SW1
1
PROBE1
U2U4
U5U7
U8
U9 U10U11
page 5TD 8 Logique séquentielle - J. Guizol
011
➎
000❶100
❷
111❹
110
❸101➏
001➑
010❼
0/1
0/10/1
1/00/1
1/01/0
1/0
0/1
1/1
0/11/0
1/0
0/1
0/11/1
12345678
017558781
011111111
110000001
E.S. SortieE.P. 123446362
7654321
5-74-6 | 5-73-4 | 3-6 | 4-6 | 5-72-3 | 2-4 | 2-6 | 3-4 | 3-6 | 4-6 | 5-71-8 | 2-3 | 2-4 | 2-6 | 3-4 | 3-6 | 4-6 | 5-7
Simplification :{1,8},{5,7},{2,3,4,6}P Q R
23
45
67
8
7-53-4
7-83-6
5-84-6
5-84-6
7-83-6
7-83-6
7-83-6
5-84-6
5-84-6
7-53-4
7-53-4
7-53-4
✗✗✗✗✗✗
✗ ✗ ✗ ✗ ✗ ✗
ABX E.S. Sortie
00011110
0000001
1111111
0111
1100
* * * *Matrice d'état simplifiée
ABX E.S. Sortie
00011110
0000110
1111000
0111
1100
* * * *Entrées pour Trigger
TA = A ⊕ X
TB = A.B.X + B.X
S = X + B
2 - Evaluation à la volée
page 6TD 8 Logique séquentielle - J. Guizol
{P,Q,R}
{P,Q} {R}
{P} {R} {Q} {R}
0
0
0 0 0 01 1 1 1
1
01 1
1 1 1 0 1 01 0
X1
X2
X
Sortie
|0 |500 |1000 |1500 |2000input Ck
input X
output S
0 0 0 0 8 12 6 11 5 10 13 6 3 9 12 …valeursinterprêtées
D'où le montage :
Ck
X S
… et le chronogramme :
En utilisant des registres à décalage, on obtient à partir des 3 états :
00011110
01111
11000
x1x2x
Matrice de sortie
S = X + X1.X2
On trouve donc un résultat très semblable au précédent (décalage 2 bits etexpression de sortie). La seule différence est l'absence du compteur mod 4et donc une sortie réactualisée à chaque cycle.
page 7TD 8 Logique séquentielle - J. Guizol