You are on page 1of 28

Licence dInformatique MARSEILLE-LUMINY

4. Logique squentielle asynchrone

4.1 4.2 4.3 4.4 4.5 4.6 4.7 -

Introduction. Reprsentation de fonctionnement : les tats. quivalence et pseudo-quivalence dtats. Rduction du systme. Attribution de variables auxiliaires. Matrice des sorties. Les alas.

4.1. Introduction
4.1.1. Dfinition
On appelle circuit squentiel un circuit pour lequel l'tat des sorties un instant donn (t) dpend la fois de l'tat des entres et de l'tat qu'avaient les sorties l'instant t-1. On distingue les circuits squentiels asynchrones pour lesquels il n'existe pas de rfrence de temps, c'est dire que l'action des entres est prise en compte ds leur changement d'tat, et les circuits synchrones pour lesquels les entres sont insensibles aux signaux qui leur sont appliqus sauf pendant un court intervalle de temps dtermin par un signal spcial que l'on appelle une horloge. Ainsi, par exemple, on pourrait considrer un systme dallumage par bouton poussoir. Le fait dappuyer sur le poussoir aura deux effets contradictoires, si la lampe est teinte, elle devra sallumer et si elle est allume, elle devra steindre. Il sera donc important pour dterminer laction (allumer ou teindre) de connatre ltat dans lequel se trouve le systme (allum ou teint)

4.1.2. La notion de constante de temps.


Un circuit, quel quil soit, est toujours ralis avec des composants physiques pour lesquels la propagation du signal nest pas instantane. Le dlai ncessaire au signal pour transiter entre lentre et la sortie du circuit est la constante de temps du circuit. Il est alors possible de reprsenter un circuit selon le schma de la figure 4.1.1 montrant un circuit combinatoire temps de transit nul suivi dun circuit de

retard permettant de faire intervenir la constante de temps. Cette dcomposition qui na aucune ralit physique sera utile pour les besoins ultrieurs du raisonnement.

Figure 4.1.1 : Dcomposition thorique dun circuit combinatoire

4.1.3. Notion de circuit squentiel


Nous avons dfini un circuit squentiel comme devant dpendre linstant t de ltat de ses entres et de ltat dans lequel il se trouve a linstant t-1. Ainsi, la figure 4.1.2 rpond trs bien la dfinition que nous venons dnoncer.

Figure 4.1.2 : Dcomposition thorique dun circuit squentiel

Reprsentons un circuit squentiel par une fonction f (totalement dcrite par le circuit combinatoire sous-jacent) sappliquant un instant t ltat de ses entres Ce(t) et ltat st de ses lignes retard. Le circuit combinatoire ayant un temps de transit nul on va instantanment obtenir ltat St des sorties intermdiaires par St!= f(Ce(t),st). Isole par la constante de temps, la combinaison st restera prsente pendant une dure ! t gale au temps de retard du circuit. A lissue de ce dlai ! t, la propagation de la sortie deviendra effective et on obtiendra s t+1=St. Nous verrons dans le paragraphe suivant les situations qui peuvent alors se prsenter.

!t

st Ce St
t
Modification de Ce Modification immdiate de St Modification de st aprs !t

Figure 4.1.3 : Chronogramme de changement dtats

Page 4.2

Jacques Guizol

La figure 4.1.3 reprsente la succession de changement des tats mis en jeu dans la dcomposition thorique. On notera en particulier que les sorties st restent inchanges pendant une dure "t qui suit les modifications des entres C e. La figure 4.1.4 reprsente le modle gnral du circuit squentiel asynchrone ayant p lignes dentres et n boucles de retour internes (lignes retard).

Figure 4.1.4 : Reprsentation gnrale dun circuit squentiel

4.2. Reprsentation du fonctionnement : les tats.


4.2.1. tats stables et tats instables.
Nous avons vu que dans un circuit squentiel, aprs une dure dtermine par une constante de temps, ltat de lensemble des variables de sortie devient gal ltat St de lensemble des variables intermdiaires fictives. Il y a transition de st vers st+1. Dans ces conditions, deux cas peuvent se prsenter :

! "

- S t et s t sont identiques, ce qui revient dire que st et s t+1 ont la mme configuration, Ainsi, la sortie nest pas modifie et le systme se trouve dans un tat stable. - St et s t sont diffrents. Cela signifie donc quentre linstant t et linstant t+! t, sans que la configuration de lensemble des variables dentre C e ait t modifie, celle des lignes retard a chang. Ltat st qui naura pas dur plus que ! t est appel un tat instable. En t+! t, les sorties effectives sont donc dans ltat s t+1 dbouchant donc instantanment sur St+1. A ce moment l, soit on peut se retrouver dans un tat de type !, cest dire atteindre un tat stable, soit se trouver de nouveau dans le cas " et obtenir un nouvel tat instable.

En rsum, les successions dtats que lon pourra rencontrer seront :

# tat stable " tat stable


le systme est verrouill dans un tat.

$ tat stable " tat instable " tat stable


qui correspond au fonctionnement normal du systme

% tat stable " tat instable " . . . . " tat instable " tat stable
source de problmes que nous verrons par la suite.

& tat stable " tat instable " tat instable " . . . . " tat instable
correspondant un circuit qui oscille sans arrt.
Logique Squentielle Asynchrone

Page 4.3

4.2.2. Reprsentation des transitions dtats. 4.2.2.1 Mthode des graphes


Dans cette reprsentation commente dans la figure 4.2.1, chaque tat du circuit est reprsent par un sommet du graphe ; chaque tat est associe la combinaison des variables de sortie correspondantes ; les tats seront relis entre eux par des arcs tiquets par la configuration dentre qui provoque la transition correspondante.
01..0
tat des variables de sortie

10...1

configuration des variables d'entre

11..0

Figure 4.2.1 : Transition dun tat un autre

Ainsi, par exemple, si nous reprenons lexemple introductif du bouton poussoir, nous obtenons le graphe reprsent sur la figure 4.2.2.
La lampe est teinte On relache le poussoir

On appuie sur le poussoir

La lampe est teinte

La lampe est allume On relache le poussoir

On appuie sur le poussoir

3
La lampe est allume

Figure 4.2.2 : Graphe des tats du bouton poussoir

Codons les variables dentre (E) et de sortie (S) de ce systme : On appuie sur le poussoir : E = 1 On relche le poussoir : E = 0 La lampe est allume : S = 1 La lampe est teinte : S = 0 Le graphe dfinitif obtenu sera alors celui reprsent par la figure 4.2.3. suivante.

Page 4.4

Jacques Guizol

E=0 S=0

1
E=0

E=1

E=1

S=0

2
E=0

S=1

E=1

E=1

3
S=1 E=0

Figure 4.2.3 : Reprsentation code du bouton poussoir

Les tats stables sont caractriss par le fait quune configuration dentre bloque le systme dans ltat considr. Par exemple, si le systme se trouve dans ltat 2, tant que le poussoir reste appuy, il reste dans cet tat 2. Il ne pourra sortir de cet tat que lorsque le poussoir sera relch, auquel cas il atteindra ltat 3. Ceci est conforme la dfinition que nous avons donne prcdemment de ltat stable.

4.2.2.2. La matrice des phases.


Le travail de ralisation passe par la construction de la matrice des phases correspondant une reprsentation matricielle du graphe reprsent en figure 4.2.3. Sur chaque ligne on reprsente la transition entre ltat prsent du systme et ltat suivant en fonction de la configuration apparaissant sur les entres. Un tat stable sera caractris par un cercle. A chaque tat stable correspondra une configuration des variables de sorties.
Etat Prsent Etat Suivant E=0 E=1 Sortie

1 2 3 4

1 3 3 1

2 2 4 4

0 1 1 0

Figure 4.2.4 : Matrice des phases

4.2.3. Caractrisation des tats.


En fonction de ce qui vient dtre dit, revenons sur la dfinition du graphe. Nous avons vu que chaque tat du circuit est reprsent par un sommet du graphe, et les tats seront relis entre eux par des arcs tiquets par la configuration dentre qui provoque la transition correspondante. De plus un tat stable sera caractris par une boucle provoque par une configuration dentre bloquant le systme dans cet tat.
Logique Squentielle Asynchrone

Page 4.5

Nous allons nous intresser la succession des configurations dentre permettant daccder un tat et den sortir. Soit la configuration ci-dessous (figure 4.2.5), o lon accde un tat stable par une configuration des variables dentre dont deux ont t mises en vidence. On dsire partir de cet tat atteindre ltat suivant, par une transition dans laquelle toutes les variables dentre resteront inchanges lexception des deux mises en vidence.
x 1 x 2 ..00..x n

1
x 1 x 2 ..00..x n

x 1 x 2 ..11..x n

2
Figure 4.2.5 : Transition ambigu

La caractristique du systme tant lasynchronisme, il est impossible de modifier simultanment ltat de deux variables. Il nest donc pas possible de savoir laquelle des deux changera dtat avant lautre. Dans ces conditions, la reprsentation ci dessus est ambigu car le comportement du systme peut varier selon lordre dans lequel les deux variables vont changer dtat. Pour lever toute ambigut, il est ncessaire de prendre en compte cet tat de fait. Ainsi, si un tat est atteint avec une configuration dentre donne on ne peut en sortir que par une configuration connexe cette dernire (figure 4.2.6). Finalement, un tat sera entirement dfini par la configuration dentre qui permet dy accder et la configuration de sortie qui lui est associe.
x 1 x 2 ..00..x n

x 1 x 2 ..10..x n

x 1 x 2 ..01..x n

x 1 x 2 ..11..x n

x 1 x 2 ..11..x n

Figure 4.2.6 : Transitions admises

4.2.4. Diffrenciation logique des tats.


On a vu quune mme configuration des variables dentre provoque des sorties diffrentes pour des tats diffrents. Le comportement du circuit va donc diffrer selon ltat initial. Au niveau fonctionnel ltat va tre reprsent par des variables dentre auxiliaires : celles provenant des boucles retard dont nous avons prcdemment parl.

Page 4.6

Jacques Guizol

Dans la matrice des phases, ces variables auxiliaires vont donc permettre de diffrencier et donc de coder les diffrents tats. Pour une matrice comportant n lignes le nombre de variables auxiliaires y sera tel que

!y-1!<!log2 !n!#!y!
Dans le cas le plus simple, il sagit dassocier chaque tat de la matrice des phases une combinaison de variables binaires en vue de raliser le circuit, toutefois, nous verrons plus loin les nombreux problmes que pose lattribution des variables auxiliaires. Reprenons le circuit dallumage dune lampe laide dun bouton poussoir et codons les diffrents tats que nous avions mis en vidence dans la matrice des phases que nous avions obtenue (fig. 4.2.4). Chacun deux va donc tre cod par une combinaison binaire des variables auxiliaires. Dans le cas prsent, ayant quatre tats diffrencier, deux variables y1 et y2 seront ncessaires pour effectuer le codage. Elles dterminent ltat s t que nous avions introduit au 4.1.3. Ltat de sortie instantan correspondant St sera reprsent par deux autres variables Y 1 et Y2. On obtient ainsi la nouvelle table montre en figure 4.2.7.
Etat Prsent Etat Suivant E=0 E=1 Sortie

y1 y2 00 01 11 10

Y1 Y2 Y1 Y2 00 10 11 00 01 01 10 10 0 1 1 0

Figure 4.2.7 : Reprsentation des tats par variables auxiliaires

Dans cette table, nous avons choisi de reprsenter le prcdent tat ' par la combinaison 00, ltat ( par la combinaison 01, % par 11 et enfin & par 10. Les tats stables sont reprsents par les configurations en gras et lon retrouve bien la condition mise en vidence au 4.2.1, savoir quun tat stable est atteint si et seulement si St = st, donc ici Y1 Y2 = y 1 y2 . Au paragraphe 4.1.3, nous avions introduit la relation liant, linstant t, ltat St aux entres normales Ce et auxiliaires s t par St!= f(Ce(t),st). Dans lexemple qui nous intresse ici, Cette relation se traduit par Il ne reste alors plus qu crire les fonctions Y1 = f1(E,y1,y2) et Y2 = f2(E,y1,y2).
y1y2 y1y2
00 0 1 01 11 10 00 0 01 11 10

E
1

1 1 1

1 1 1

Y1=f1(E,y1,y2)

Y2=f2(E,y1,y2)

Figure 4.2.8 : Diagrammes de Karnaugh pour Y1 et Y2

Lvaluation de Y 1 et de sopre au moyen de diagrammes de Karnaugh (comme le montre la figure 4.2.8. On trouve finalement :

Y1 = y2 .E + y1. E + (y1 .y2 ) Y2 = y 2 .E + y1. E + ( y1 .y2 )


Logique Squentielle Asynchrone

Page 4.7

4.3.

quivalence et pseudo-quivalence dtats.

Afin dobtenir un circuit dont la complexit soit la plus rduite possible, il est vident que le nombre de variables auxiliaires doit, lui aussi, tre le plus rduit possible et par consquent le nombre dtats stables. Si, lors de la synthse du circuit, on a dfini plus dtats stables que ncessaire, il sera possible de simplifier la matrice des phases pour liminer tous les tats redondants.

4.3.1. tats stables quivalents.


Deux tats stables seront reconnus quivalents si et seulement si :

' ( %

ils sont atteints par une mme combinaison des variables dentre ; ils produisent la mme combinaison des variables de sortie ; pour une mme modification de la combinaison dentre, les deux tats ont comme successeur soit le mme tat soit deux tats quivalents.

Cette relation dquivalence est une relation transitive. En effet, si a est quivalent b et b est quivalent c alors a est quivalent c. En fonction de ce qui vient dtre nonc, on peut constater que les tats 1 et 2 de la matrice des phases ci-dessous sont quivalents.
Etat Prsent Etat Suivant E = 00 E = 01 E = 11 E = 10 Sortie

1 2

1 2

5 5

4 7

7 7

1 1

Figure 4.3.1 : Exemple dtats quivalents

Lquivalence nest pas toujours aussi vidente. Elle peut tre conditionne par une autre quivalence, on est alors en prsence dune quivalence conditionnelle. Ainsi, dans la matrice des phases suivante, il est ais de constater que les tats 1 et 2 sont quivalents condition que 3 et 4 le soient aussi ce qui est le cas.
Etat Prsent Etat Suivant Sortie E = 00 E = 01 E = 11 E = 10

1 2 3 4

1 2 1 1

5 5 4 4

3 4 2 2

7 7 3 4

1 1 0 0

Figure 4.3.2 : Exemple dquivalence dtats conditionnelle

Cette simplification, conduit alors la matrice des phases suivante :


Etat Prsent Etat Suivant E = 00 E = 01 E = 11 E = 10 Sortie

1 4

1 1

5 4

4 1

7 4

1 0

Figure 4.3.3 : Matrice de la figure 4.3.2 simplifie

Page 4.8

Jacques Guizol

Lquivalence conditionnelle peut aussi tre cascade et ventuellement former une boucle. La matrice des phases de la figure 4.3.4 met en vidence le fait que les tats 1 et 2 sont quivalents si les tats 3 et 4 sont eux mmes quivalents. Mais rciproquement, la condition pour que les tats 3 et 4 soient quivalents est que les tats 1 et 2 soient eux aussi quivalents.
Etat Prsent Etat Suivant E = 00 E = 01 E = 11 E = 10 Sortie

1 2 3 4

1 2 1 2

5 5 4 4

3 4 1 2

7 7 3 4

1 1 0 0

Figure 4.3.4 : Exemple dquivalence conditionnelle boucle

Il suffit donc dappliquer les quivalences dfinies pour obtenir la matrice des phases simplifie suivante :
Etat Prsent Etat Suivant E = 00 E = 01 E = 11 E = 10 Sortie

2 3

2 2

5 3

3 2

7 3

1 0

Figure 4.3.5 : Simplification de la matrice prcdente

4.3.2. Recherche des quivalences conditionnelles.


La mise en vidence systmatique des quivalences conditionnelles nest pas vidente lorsque le nombre dtats devient important. Par exemple, la simplification de la matrice de phases de la figure 4.3.6 nest pas vidente premire vue. Il existe toutefois des algorithmes permettant daboutir ce rsultat.
Etat Prsent Etat Suivant E = 00 E = 01 E = 11 E = 10 Sortie

1 2 3 4 5 6 7 8 9 10

1 6 1 8 8 6 1 8 8 8

2 2 2 4 2 4 4 2 4 2

5 10 3 5 5 3 3 5 5 10

7 9 9 7 7 9 7 9 9 7

00 01 10 01 10 00 11 00 11 11

Figure 4.3.6 : Matrice de phases de 10 tats

Logique Squentielle Asynchrone

Page 4.9

Il convient dans un premier temps de procder une rorganisation des lignes de la matrice des phases afin de regrouper les lignes qui correspondent une mme configuration des sorties (figure 4.3.7).
Etat Prsent Etat Suivant E = 00 E = 01 E = 11 E = 10 Sortie

1 6 8 2 4 3 5 7 9 10

1 6 8 6 8 1 8 1 8 8

2 4 2 2 4 2 2 4 4 2

5 3 5 10 5 3 5 3 5 10

7 9 9 9 7 9 7 7 9 7

00 00 00 01 01 10 10 11 11 11

Figure 4.3.7 : Regroupement des tats par configuration de sortie

Conformment ce qui a t dit concernant les conditions que doivent remplir les tats quivalents, et en particulier, eu gard la condition ( , les quivalences ne pourront se trouver qu lintrieur dun sous tableau. Afin de mettre en vidence toutes les quivalences, on partira du principe que toutes les quivalences possibles sont effectives. On supprimera alors de cette liste toutes les non-quivalences. Celles qui demeureront seront relles. La combinatoire des quivalences possibles concerne donc les couples dtats suivants : 1/6, 1/8, 6/8, 2/4, 3/5, et enfin 7/9. On construit une table comportant autant de lignes et de colonnes que de couples prcdemment trouvs

1/6 1/6 1/8 6/8 2/4 3/5 7/9

1/8

6/8

2/4

3/5

7/9

Figure 4.3.8 : Table de recherche des tats quivalents

Cette table sera alors explore ligne par ligne, en commenant par la premire et en se reportant aux sous tableaux de la matrice des phases rorganise. Pour chaque ligne deux cas peuvent se prsenter :

' (

La paire dtats affecte la ligne est forme dtats non conditionnellement quivalents, il ny a aucune contre-indication, on passe la ligne suivante. La paire dtats affecte la ligne est forme dtats conditionnellement quivalents, on marque alors les cases situes lintersection de la ligne considre et de la colonne relative aux tats potentiellement quivalents.
Jacques Guizol

Page 4.10

Lquivalence entre les tats 1 et 6 ncessite lquivalence entre :

Etat Prsent

Etat Suivant E = 00 E = 01 E = 11 E = 10

Sortie

* les tats 2 et 4 * les tats 5 et 3 * les tats 7 et 9

1 6 8

1 6 8 6

2 4 2 2

5 3 5 10

7 9 9

00 00 00

Dans la table de la figure 4.3.8, on coche donc sur la ligne 1/6 les cases correspondant aux colonnes 2/4, 3/5 et 7/9 Si une paire dtats napparat pas en tte de colonne, cela signifie que les deux tats ne font pas partie de la liste des tats potentiellement quivalents. Toute quivalence conditionnelle soumise cette quivalence sera donc dnie.

Lquivalence entre les tats 2 et 4 ncessite lquivalence entre * les tats 6 et 8 * les tats 5 et 10 * les tats 9 et 7

6 2 4 3

6 6 8 1

4 2 4 2

3 10 5 3

9 9 7 9

00 01 01 10

Les quivalences 6/8 et 7/9 font bien partie de la liste des quivalences possibles, mais ce nest pas le cas de lquivalence 5/10 puisque ces deux tats ne font pas partie du mme sous tableau. En consquence, toute quivalence conditionne celle de ce couple dtats sera donc rcuse. La non-quivalence entre les tats 2 et 4 sera mise en vidence en cerclant len tte de colonne correspondante. Cette paire dtats tant retire de la liste des tats potentiellement quivalents, toutes les paires dont lquivalence tait lie cette condition doivent leur tour tre retires de cette liste.

La non-quivalence entre les tats 2 et 4 entrane la non-quivalence entre

* les tats 1 et 6 (on cercle len tte de colonne correspondante) * les tats 6 et 8 (on cercle len tte de colonne correspondante)
Une fois que toutes les paires dtats auront t traites, le tableau se prsentera comme suit

1/6 1/6 1/8 6/8 2/4 3/5 7/9

1/8

6/8

2/4 ! !

3/5 ! !

7/9 ! ! ! !

! ! ! !

Figure 4.3.9 : Table de recherche des tats quivalents complte

On peut alors affirmer que, dans les en-ttes de colonne, les paires non cercles sont constitues dtats quivalents. Dans le cas qui nous intresse, sont quivalents les couples dtats 1/8, 3/5 et 7/9.
Logique Squentielle Asynchrone

Page 4.11

Ces quivalences sont alors utilises en vue de simplifier la matrice des phases qui sera rcrite comme indiqu dans la figure 4.3.10
Etat Prsent Etat Suivant E = 00 E = 01 E = 11 E = 10 Sortie

1 2 3 4 6 7 10

1 6 1 8 6 1 8

2 2 2 4 4 4 2

5 10 3 5 3 3 10

7 9 9 7 9 7 7

00 01 10 01 00 11 11

Figure 4.3.10 : Matrice de phases simplifie

Dans tous les cas dquivalences multiples on peut se demander si la matrice de phases simplifie obtenue est, ou non, indpendante de lordre dans lequel on limine les tats quivalents. Huffman a montr que la matrice obtenue tait unique et indpendante de lordre dans lequel on limine les tats quivalents. 4.3.3. La pseudo-quivalence.
La notion de pseudo-quivalence est lie la prsence de transitions interdites ou dtats de sortie optionnels. Ainsi, deux tats stables sont pseudo-quivalents si on peut les rendre quivalents + En remplaant par un tat instable adquat un tat instable optionnel. + En remplaant par un tat adquat un tat de sortie optionnel. Exemple 1 : tats instables optionnels
Etat Suivant Etat Sortie Prsent E = 00 E = 01 E = 11 E = 10 Etat Suivant Etat Sortie Prsent E = 00 E = 01 E = 11 E = 10

1 2

1 2

3 3

4 -

5 5

0 0

Etat Suivant Etat Sortie Prsent E = 00 E = 01 E = 11 E = 10

1 3

1 3

5 -

8 8

00 00

Etat Suivant Etat Sortie Prsent E = 00 E = 01 E = 11 E = 10

00

Figure 4.3.11 : Pseudo-quivalence par tats instables optionnels

Exemple 2 : tats de sortie optionnels


Etat Suivant Etat Sortie Prsent E = 00 E = 01 E = 11 E = 10 Etat Suivant Etat Sortie Prsent E = 00 E = 01 E = 11 E = 10

1 3
Page 4.12

1 3

2 2

5 5

7 7

01 0-

01

Figure 4.3.12 : Pseudo-quivalence par tats de sortie optionnels


Jacques Guizol

Il est important de noter que contrairement relation dquivalence qui, elle, est transitive, la relation de pseudo-quivalence nest pas transitive. Cest dire que si x est pseudo-quivalent y et que y est pseudo-quivalent z, alors x nest pas ncessairement pseudo-quivalent z. Exemple 3 : Non-transitivit.
Etat Suivant Etat Sortie Prsent E=00 E=01 E=11 E=10

Etat Suivant Etat Sortie Prsent E=00 E=01 E=11 E=10

1 4

1 4

3 3

5 2

7 7

1 1

1 4 6

1 4 6

3 3 -

5 2

7 7 -

1 1 1

Etat Suivant Etat Sortie Prsent E=00 E=01 E=11 E=10

1 6

1 6

3 -

5 2

7 -

1 1

Figure 4.3.13 : Mise en vidence de la non-transitivit de la pseudo-quivalence.

Les tats 1 et 4 sont pseudo-quivalents. De mme, les tats 4 et 6 le sont aussi. Les simplifications apparaissent sur la droite de la figure ci-dessus. Par contre, les tats 1 et 6 ne le sont pas. Cette proprit a comme consquence que la matrice simplifie nest pas unique, elle dpend de lordre dans lequel ont lieu les simplifications. Exemple 4 : Non unicit de la matrice simplifie. Ainsi si nous considrons la matrice des phases suivante (figure 4.3.14).
Etat Prsent Etat Suivant E = 00 E = 01 E = 11 E = 10 Sortie

1 2 3 4

1 2 3 4

5 6 5 -

7 7

8 9 9

1 1 1 1

1/3 et 2/4

3/4

Etat Suivant Etat Sortie Prsent E = 00 E = 01 E = 11 E = 10

Etat Suivant Etat Sortie Prsent E = 00 E = 01 E = 11 E = 10

1 2

1 2

5 6

7 7

8 9

1 1

1 2 3

1 2 3

5 6 5

8 9 9

1 1 1

Figure 4.3.14 : Mise en vidence de la non-unicit de simplification

En supposant que les tats 8/9 et 5/6 sont non quivalents, on peut tablir les relations de pseudo-quivalence entre 1/3, 2/4 et 3/4. Selon quon commence par appliquer une des deux pseudo-quivalences 1/3 - 2/4 ou la pseudo-quivalence 3/4 on obtient matrice simplifie diffrente. Il est donc indispensable doprer avec prcaution lors de la simplification dtats pseudo-quivalents.
Logique Squentielle Asynchrone

Page 4.13

4.4.

Rduction du systme.

Lors de lcriture de la matrice des phases, chaque ligne correspondait un tat stable et un seul. Partant dun tat stable, une modification des variables dentre fait passer le circuit dans un tat instable situ sur la mme ligne caractris par Y(t) $ y(t). Au bout dun temps ! t, y devient identique Y et le circuit passe dans un nouvel tat stable situ dans une ligne et une colonne diffrentes de ltat stable dorigine. Si la modification des variables dentre nentrane pas de modification des variables secondaires, cest dire si y(t) = Y(t), il est vident que lon pourra passer directement dun tat stable au suivant sans passer par un tat intermdiaire instable. Dans ces conditions, la ligne correspondant ltat stable suivant peut tre supprime et les deux tats stables peuvent ainsi tre regroups sur la mme ligne. Cette simplification ayant pour effet de rduire le nombre de lignes de la matrice, et par l mme le nombre de variables auxiliaires, diminue la complexit du circuit.

4.4.1. Rduction de la MPS

(Matrice des Phases simplifie)

On vient de voir combien la rduction de la matrice des phases simplifie prsente davantages dans la diminution de la complexit et donc du cot dun circuit. Le prix payer rside dans les rgles observer pour procder ces rductions qui sont trs strictes. Il est noter que, contrairement ce qui se passait pour la simplification de la matrice des phases, ltat des sorties nintervient pas dans ce processus de rduction (elles seront rintroduites ensuite). Deux lignes dune matrice peuvent tre rduites si :

' (

Les tats stables regrouper sont dans des colonnes diffrentes. Les deux lignes concernes sont identiques aux indiffrences prs.

Lorsque deux lignes rpondent ces conditions les rgles de production de la ligne rduite sont les suivantes :

' ( % &

Remplacer toute paire dun mme tat instable par cet tat instable. Remplacer toute paire dtats indiffrents par un tat indiffrent. Si un des deux tats de la paire est stable, ltat rsultant est stable. Si un des tats de la paire est indiffrent et lautre non, remplacer la paire par ltat non indiffrent correspondant (stable ou instable).

Quelques exemples de rduction :


Etat Prsent Etat Suivant E = 00 E = 01 E = 11 E = 10 Etat Prsent Etat Suivant E = 00 E = 01 E = 11 E = 10

1 2

1 1

2 2

5 5

9 9

Figure 4.4.1 : Illustration des rgles n' et %

Etat Prsent

Etat Suivant E = 00 E = 01 E = 11 E = 10 Etat Prsent

Etat Suivant E = 00 E = 01 E = 11 E = 10

1 2

1 1

5 5

9 9

Figure 4.4.2 : Illustration des rgles n',

% et & (stable)
Jacques Guizol

Page 4.14

Etat Prsent

Etat Suivant E = 00 E = 01 E = 11 E = 10 Etat Prsent

Etat Suivant E = 00 E = 01 E = 11 E = 10

1 2

1 1

2 2

5 -

Figure 4.4.3 : Illustration des rgles n% et & (instable)

Etat Prsent

Etat Suivant E = 00 E = 01 E = 11 E = 10 Etat Prsent

Etat Suivant E = 00 E = 01 E = 11 E = 10

1 2

1 1

2 2

1
% et &

2
(instable)

Figure 4.4.4 : Illustration des rgles n(,

Etat Prsent

Etat Suivant E = 00 E = 01 E = 11 E = 10

1 2 3

1 1 -

2 2

3 3 3

9 9

Etat Prsent

Etat Suivant E = 00 E = 01 E = 11 E = 10

Figure 4.4.5 : Illustration de lensemble des rgles

4.4.2. Graphe de rduction.


La matrice des phases rduite ntant pas unique, il est indispensable de prendre en compte toutes les rductions possibles afin de dterminer celle qui est optimale. Pour ce faire, on utilisera la mthode du graphe de rduction. Chaque ligne de la matrice va tre compare chacune des lignes qui la suit. Si une ligne i contenant un tat stable I est susceptible dtre rduite avec une ligne j contenant un tat stable J, on construira un graphe sur lequel les sommets I et J seront relis par un arc.
Etat Suivant Etat Sortie Prsent E = 00 E = 01 E = 11 E = 10

1 2 3 4 5 6 7 8

1 1 1 7 7 7 7

2 2 2 8 8

3 5 5 5 3

4 4 4 4 6 6 6 6

00 00 10 00 11 01 11 01

!
00

00

% ( $
00

11

11

# " 10

& ' 01 01

Figure 4.4.6 : Reprsentation dune MPS par son graphe de rduction

Ainsi, la MPS de la figure 4.4.6 se dcompose en deux graphes distincts A et B. Sur le graphe B, le choix de la rduction 5/7 ne serait pas judicieux car il interdit toute autre rduction alors que lon peut rduire simultanment par 5/6 et 7/8.
Logique Squentielle Asynchrone

Page 4.15

Sur le graphe A, deux rductions sont possibles 1/2/4 ou 1/2/3. Le fait que dans le regroupement 1/2/4 les sorties soient identiques, fait prfrer cette solution. En tout tat de cause, on optera toujours pour le regroupement o le maximum de combinaisons de sortie sont identiques. Cette faon doprer conduit souvent des conomies apprciables car elle permet dutiliser une variable auxiliaire comme variable de sortie sans besoin de circuit intermdiaire.
E = 00 E = 01 E = 11 E = 10

Finalement, en optant pour les rductions optimales 1/2/4, 5/6 et 7/8, on rduit donc la matrice de 4 lignes pour obtenir la MPS rduite ci-contre :

1 7 7

2 2 8

5 3 5 3

4 4 6 6

Figure 4.4.7 : Matrice des phases rduite

4.5.

Attribution des variables auxiliaires

Aprs simplification de la matrice des tats, puis sa rduction nous avons donc obtenu une matrice minimale, cest dire contenant un nombre minimal de lignes. Afin de distinguer chaque ligne des autres, nous allons utiliser des variables auxiliaires servant les coder. Lattribution de ces variables auxiliaires dans une matrice rduite doit soprer, comme on va le voir, avec beaucoup dattention.

4.5.1. Cycles et courses.


Lors de la dfinition des matrices des phases, nous avons toujours suppos que, partant dun tat stable on atteignait un nouvel tat stable par lintermdiaire dun tat instable (figure 4.4.8).
Etat Suivant Etat Prsent E = 00 E = 01 E = 11 E = 10

2 3
Puis de l'tat instable 2, on passe l'tat stable 2

2 2

5 3

3 2

7 3

De l'tat stable 3, on !passe l'tat instable 2

Figure 4.5.1 : Transition normale entre 2 tats stables via 1 tat instable.

Toutefois, il nest pas impossible que ltat intermdiaire instable ne soit pas unique et que le systme passe par une srie dtats instables avant de parvenir ltat stable final. Cette suite dtats instables peut tre due aux constantes de temps du circuit : elle est alatoire et peut provoquer de graves dysfonctionnements du circuit, on dira quon est en prsence dune course. Cette suite dtats instables peut tre lie au fonctionnement mme du circuit, elle sera donc prise en compte au moment de sa conception et sera unique, on est alors en prsence dun cycle. Rappelons que nous avons toujours suppos quil ne peut y avoir changement dtat simultan pour deux ou, a fortiori, pour plusieurs variables. En effet la tentative mme de concevoir une telle ventualit mne la catastrophe du fait de lalatoire induit en la matire par des considrations physiques telles que la temprature, le vieillissement des composants, etc.

Page 4.16

Jacques Guizol

Cette importante proprit sera de nouveau prise en compte lors de laffectation des variables auxiliaires.
Etat Suivant Etat Prsent E = 00 E = 01 E = 11

E = 10

1 2 3 4

1 1 1 1 3 4
De l'tat stable 4, on !passe l'tat instable 1

Puis par une srie d'tats instables avant d'aboutir l'tat stable 1.

Figure 4.5.2 : Exemple de cycle

La figure 4.5.2 propose un exemple de cycle. Considrons le systme dans ltat stable &. Pour une configuration dentre 00, il est possible dimposer aux transitions dtat le cycle 4 " 3 " 2 " 1, ce qui est prcis en indiquant par des flches lordre dans lequel les tats instables se succdent. En introduisant les variables auxiliaires, le cycle est traduit par le changement de leur configuration (figure 4.5.3).
Etat Suivant Etat Prsent E = 00 E = 01 E = 11 E = 10

00
Variables auxiliaires associes aux diffrents tats

00 00 01 11 11 10 01

01 11 10

Figure 4.5.3 : Introduction des variables auxiliaires

Bien sr, dans le cas prsent, nous aurions pu passer directement de & ' puisque ce passage n'entranait le changement que dune des deux variables dtat (10 " 00). Dans ces conditions, nous aurions eu en ligne 10 colonne 00, la configuration 00 la place de 11. Plaons-nous prsent sur ltat stable % (configuration V.A. : 11). Il est bien sr possible de rejoindre ltat stable ' en suivant le cycle mis en place, via ltat instable 2. Que se passe-t-il si nous dsirons effectuer ce passage directement comme cela est possible depuis ( et depuis & ainsi quon vient de le voir.
Etat Suivant Etat Prsent E = 00 E = 01 E = 11 E = 10

00 01 11 10

00 00 00 00 11 10 01

Figure 4.5.4 : Occurrence dune course non critique

Les deux variables auxiliaires doivent passer simultanment de 0 1. On la dit et rpt, cela narrivera jamais ( # prs). En fait lune des deux passera 0
Logique Squentielle Asynchrone

Page 4.17

avant lautre, mais le problme, cest que lon ne sait pas laquelle !!! Donc partir de 11, on pourra aussi bien se retrouver en 01 (tat 2) quen 10 (tat 4). Dans lexemple qui nous intresse ici, cela na pas dimportance car dans un cas comme dans lautre, on va revenir 00. On est en prsence dune course non critique. Par contre, considrons la matrice de la figure 4.5.5.
Etat Suivant Etat Prsent E = 00 E = 01 E = 11 E = 10

00 01 11 10

00 01 00 00
Figure 4.5.5 : Course critique

11 10

La seule modification par rapport au systme prcdent consiste en rendre ltat 2 stable pour une configuration dentre 00. Dans ces conditions, tant dans ltat 3 (V.A. = 11) alors que les entres valent 00, selon que les variables auxiliaires passent par la configuration 10 ou 01, le rsultat sera diffrent. Dans le premier cas, comme prcdemment on atteindra ltat stable ' via ltat instable 4. Dans le second cas, le systme restera dans ltat stable (. Le changement dtat du systme sera le fruit de lalatoire. Nous sommes en prsence dune course critique. Cest l que lon conoit lutilit des cycles que lon a vu prcdemment, car loin dtre gnants, leur introduction va nous permettre de corriger les problmes de fonctionnement induits par les courses critiques. Par exemple, pour rgler le cas de la figure 4.5.5, en ce qui concerne le passage de ltat % (V.A. = 11) ltat ' (V.A. = 00), on va prvoir un cycle transitant par ltat instable 4. Tout comportement alatoire est ainsi cart.
Etat Suivant Etat Prsent E = 00 E = 01 E = 11 E = 10

00 01 11 10

00 01 10 00 11 10

Figure 4.5.6 : Traitement dune course critique par un cycle

4.5.2. Graphe de transition


Lattribution des variables auxiliaires doit donc se faire en vitant autant que possible les courses critiques. Il faudra donc faire en sorte que le passage dun tat un autre se fasse par modification dune seule variable auxiliaire. Sur une matrice des phases deux lignes le problme ne se pose pas. Par contre ds que la matrice comporte plus de deux lignes, la recherche systmatique de lattribution optimale se fera en utilisant un graphe et un diagramme de transition.

Page 4.18

Jacques Guizol

Le mode opratoire est le suivant :

' ( %

Avant toute chose, il convient daffecter, par exemple, une lettre chaque ligne de la matrice de phases rduite (MPR) afin de la distinguer des autres (il y a maintenant plusieurs tats stables par lignes) . On reporte ensuite les lettres ainsi affectes sur un graphe dont elles sont les sommets. On recherche alors dans la MPR les transitions possibles entre chaque ligne, que ce soit les transitions entre tats instables ou entre tats stables et instables condition quils portent le mme numro. (Dans
cette recherche on peut ignorer les colonnes ne comportant quun tat stable ou ne comportant que des tats stables car alors tout risque de course critique est cart).

Ces transitions se reportent sur le graphe par des liens entre les sommets.
Etat Suivant Etat Prsent E = 00 E = 01 E = 11 E = 10

a c b d

a b c d

1 4 4 1

2 8 2 8

3 6 3 6

5 7 7 5

Figure 4.5.7 : Matrice de phases rduite et graphe de transition associ

&

Il ne reste plus qu construire le diagramme des transitions. Celui-ci se ralise comme un diagramme de Karnaugh en affectant les variables auxiliaires aux lignes et aux colonnes. On dispose ensuite dans ce diagramme, les lettres correspondant aux sommets du graphe (et donc aux lignes de la MPR), de telle faon que 2 sommets relis par une transition soit situs dans deux cellules adjacentes (horizontalement ou verticalement). Cest seulement si cela est possible que lon aura lassurance de ne pas avoir de course critique puisque chacune des transitions s'oprera par modification dune seule variable auxiliaire.

Lexemple de la figure 4.5.7 autorise deux possibilits de configurations des variables auxiliaires cartant toute course critique (figure 4.5.8).

y1

y2

0 a c

1 d b 10 c

00 a
y1

y2

0 a d

1 c b 01 c

00 a d 10 b 11

0 1

d 01 b 11

0 1

S ol uti on n1

S ol uti on n2

Figure 4.5.8 : Deux possibilits dattribution de variables auxiliaires

Logique Squentielle Asynchrone

Page 4.19

Ce qui donne pour la solution n1 :


x 1 x2 y1 y 2

00 1 1 4 4

01 2 8 8 2

11 3 6 6 3

10 5 5 7 7

x1 x2 y 1y 2

00 00 00 11 11

01 10 01 01 10

11 00 11 11 00

10 01 01 10 10

00 01 11 10

00 01 11 10

Figure 4.5.9 : MPR reconfigure selon le choix dattribution des variables auxiliaires n1

Et pour la solution n2 :
x1x2 00 y1y2

01 2 2 8 8

11 3 3 6 6

10 5 7 7 5

x1x2 00 y1y2

01 01 01 10 10

11 00 00 11 11

10 10 01 01 10

00 01 11 10

1 4 4 1

00 01 11 10

00 11 11 00

Figure 4.5.10 : MPR reconfigure selon le choix dattribution des variables auxiliaires n2

Il est alors possible de dduire les fonctions de commutation en ddoublant la matrice finalement obtenue. Pour reprendre la solution n2, on obtient :

x1x2 00 y1y2

01 0 0 1 1

11 0 0 1 1

10 1 0 0 1

x1x2 00 y1y2

01 1 1 0 0

11 0 0 1 1

10 0 1 1 0

00 01 11 10

0 1 1 0

00 01 11 10

0 1 1 0

Y1=y1x2+y2x1x2+y2x1x2

Y2=y2x2+y1x1x2+y1x1x2

Figure 4.5.11 : Calcul de Y = f (Ce,y)

Le calcul des fonctions de commutation pour la solution n1 est laiss en exercice. Considrons prsent la matrice rduite de la figure 4.5.12. Le graphe de transition qui lui a t associ prend bien en compte les transitions des tats 2, 3, 4, 6, 7 et 8. En ce qui concerne ltat 1, on peut voir quil y a une transition entre b et a (en pointill sur le graphe), mais comme on la vu au 4.5.1, nayant quun tat stable dans la colonne 00, nous naurons pas de course critique. En consquence, lattribution des variables auxiliaires telle quelle est envisage est satisfaisante en ce quelle nengendre pas de course critique. Toutefois, pour rgler proprement les transitions lorsque la configuration dentre est 00, il est souhaitable dintroduire un cycle.

Page 4.20

Jacques Guizol

x1x2

00 1 1 1 1

01 3 2 3 2

11 6 7 7 6

10 8 4 4 8
y1 y2

a b c d

0 a d

1 c b 01 c

00 a d 10 b 11

0 1

Figure 4.5.12 : Graphes et diagrammes de transition pour une MPR contenant une course non critique

Comme on peut le voir sur la figure 4.5.13, plusieurs possibilits peuvent alors tre envisages pour mettre en place ce cycle Y en a-t-il une prfrable aux autres, et si cest le cas, laquelle est-ce ? En fait les seuls avantages que peut contenir une solution par rapport une autre, rsident, dune part, dans le temps de transition pour parvenir ltat stable, et, dautre part, dans la plus ou moins grande complexit du circuit. Cest sur ces critres que la solution sera adopte.

x1x2 00 y1y2

00 00 00 01 00

00 00 11 10 00

00 00 00 01 11

x1x2 00 y1y2

01 01 01 11 11

11 10 01 01 10

10 00 11 11 00

00 01 11 10

00 00 10 00

00 01 11 10

00

$ ! # "
Figure 4.5.13 : Divers choix de cycles en vue de lattribution des variables auxiliaires

En considrant simplement la figure 4.5.13, pouvez-vous dterminer laquelle des solutions !, ", , ou - semble dboucher sur le circuit le plus simple ?

4.5.3. Introduction de V.A. supplmentaires.


Lorsquil nexiste pas de solution dattribution des variables auxiliaires permettant dliminer toute course critique, il est ncessaire dintroduire des tats instables supplmentaires avec pour consquence daugmenter le nombre de lignes utiles de la matrice et donc une complexification de la ralisation.

4.5.3.1. Les MPR trois lignes


Supposons quune MPR comporte 3 lignes, la premire tant appele a. Dans ces conditions, les seules configurations de graphe de transition possibles sont les suivantes :

!
a c b

"
c b

#
c

Comme on peut le voir sur les exemples de la figure 4.5.14, les cas n1 et n2 autorisent une attribution de variables auxiliaires nintroduisant pas de course critique.

Logique Squentielle Asynchrone

Page 4.21

cas

! cas !
cas

01 b

y1

y2

x1 x2

0 a

1 b c

00 1 1 8

01 2 2 7

11 3 6 6

10 4 5 5

a b c
x1 x2

0 1 00 a c 11

00 a

y1

y2

0 a c

1 b

00 1 1 7

01 2 6 2

11 3 3 8

10 4 5 4

a b c

0 1 01 b c 10

Figure 4.5.14 : MPR 3 lignes sans course critique.

Dans le cas n3, il est impossible dattribuer des variables auxiliaires aux trois lignes sans crer une course critique. Afin dliminer celle-ci, nous allons introduire un tat instable supplmentaire en utilisant une quatrime configuration des variables auxiliaires que nous noterons $. Considrons la matrice des phases rduite de la figure 4.5.15. On constate rapidement que lentre 01 ncessite une transition de a vers b, pour lentre 11, une transition de b vers c et enfin, pour lentre 10, de c vers a. Quel que soit le mode daffectation des variables auxiliaires ces 3 lignes, nous ne pouvons viter une course critique.

a !

a b c

a ! c

x1 x2

00 1 8 9

01 2 2 5

11 3 4 4

10 6 7 6

$
c

#
b

"
!

a b b c

Figure 4.5.15 : MPR 3 lignes engendrant une course critique

Nous allons donc introduire comme nous lavons dit prcdemment une quatrime ligne dans la matrice. Pour ce faire, nous avons trois possibilits pour intercaler la ligne $ : entre a et c, entre a et b ou enfin entre b et c. Premire possibilit :
x1x2

00 1 8 9 -

01 2 2 5 -

11 3 4 4 -

10 6 7 6 6

a !

y2 0 y1
b

1 b c

a b c !

!
c

0 1

a !

Figure 4.5.16 : Suppression de la course critique dans la configuration !

En affectant la ligne a le code 00 et la ligne c, le code 11, une course critique apparat lors de la transition de ltat instable 6 ltat stable correspondant. La transition peut aboutir alatoirement en 6 ou en 7. Le fait dintercaler la ligne
Page 4.22
Jacques Guizol

$ supprime ce dfaut (figure 4.5.16). Deuxime possibilit :

x1x2

00 1 8 9

01 2 2 2 5

11 3 4 4

10 6 7 6

a c

y2 0 y1 ! 0 1 a c

1 ! b

a ! b c

!
b

Figure 4.5.17 : Suppression de la course critique dans la configuration "

En affectant la ligne a, toujours le code 00 et la ligne b, le code 11, une course critique apparat lors de la transition de ltat instable 2 vers ltat stable correspondant. La transition peut aboutir alatoirement en 2 ou en 5. Le fait dintercaler la ligne $ supprime ce dfaut (figure 4.5.17). Troisime possibilit :

x1x2

00 1 8 9

01 2 2 5

11 3 4 4 4

10 6 7 6

a c

y2 0 y1 b 0 1 a c

1 b !

a b ! c

!
!

Figure 4.5.18 : Suppression de la course critique dans la configuration ,

Enfin, si lon affecte la ligne b, le code 01 et la ligne c, le code 10, une course critique apparat lors de la transition de ltat instable 4 vers ltat stable correspondant. La transition peut aboutir alatoirement en 4 ou en 3. Le fait dintercaler la ligne $ supprime ce dfaut (figure 4.5.18).

4.5.3.2. Introduction de variables supplmentaires.


Dans le paragraphe prcdent, nous avons ajout une ligne la MPR, mais le nombre de variables auxiliaires est demeur identique. Nous avons simplement utilis une configuration des deux variables qui ntait pas employe jusqualors. Lorsque la matrice des phases ne prsente pas de lignes libres, il est ncessaire de rajouter des variables de transition afin de supprimer les courses critiques. Soit la matrice des phases de la figure 4.5.19 et le graphe de transition qui lui est associ. x1x2

a c d b

00 1 7 7 1

01 2 2 9 9

11 3 6 6 3

10 4 5 4 8

a b c d

Figure 4.5.19 : MPR ncessitant lajout de variables auxiliaires pour supprimer les courses critiques

Logique Squentielle Asynchrone

Page 4.23

A lvidence, 2 variables auxiliaires sont insuffisantes et il va donc falloir en rajouter une. Lajout dune variable supplmentaire porte 8 le nombre de configurations possibles et la combinatoire daffectation aux lignes de la matrice constitue un grand nombre de possibilits pour dterminer le meilleur choix en vue dobtenir un circuit le plus simple possible. La mthode donnant le plus souvent de bons rsultats consiste disposer, dans le diagramme de Karnaugh, les lettres dsignant les 4 lignes de la MPR de faon attribuer des positions adjacentes aux lignes prsentant des transitions entre elles. On pourrait donc envisager lattribution selon le diagramme suivant :
y2 y 3 00 01 11 10 y1 ! c 0 a b 1 d " #

On voit que les transitions a-b, a-d et b-c sont bien gres. Afin dautoriser la transition a-c, on a t contraint de rajouter une ligne $ . Quant la transition d-c, elle a ncessit ladjonction de deux autres lignes % et & .

x1 x2 00 y1y2y3

01 2 2 9 9 9 9

11 3 6 6 3 -

10 4 5 4 4 8 -

x1x2 00 y1y2y3

01

11

10

(a) 000 (b) 001 (c) 011 (!) 010 110 (d) 100 (") 101 ( # ) 111

1 7 7 1 -

(a) 000 000 000 100 010 (b) 001 001 000 001 001 (c) 011 001 011 001 011 (!) 010 110 011 -

(d) 100 000 101 100 100 (") 101 ( # ) 111 111 011 -

Figure 4.5.20 : MPR transforme pour supprimer toute course critique

Il ne reste alors plus qu tablir les quations : Yi = f i(y1,y2,y3,x1,x2) pour 1#i#3. Il est vident que la solution propose nest pas unique, toute autre rpartition des tats existants respectant les contraintes et vitant les courses critiques aurait pu tre choisie. Par exemple, nous aurions pu choisir des rpartitions de lignes telles que celles proposes dans la figure 4.5.21.
y2y3 00 01 11 10 y1 c d 0 a b 1 # " ! y2y3 00 01 11 10 y1 c ! 0 a d 1 # " b

Rpartition 2

Rpartition 3

Figure 4.5.21 : Autres possibilits de rpartitions

Celles-ci auraient engendr les attributions montres dans la figure 4.5.22, diffrentes de celle de la figure 4.5.20,

Page 4.24

Jacques Guizol

x1x2 00 y1y2y3

01 2 2 9 9 -

11 3 6 6 3 -

10 4 5 4 8 4 4 4

x1x2 00 y1y2y3

01 2 9 9 2 2 2

11 3 3 6 6

10 4 8 4 4 5

(a) 000 (b) 001 (c) 011 (d) 010 110 ( # ) 100 (") 101 (!) 111

1 7 7 1 -

(a) 000 (d) 001 (c) 011 (!) 010 110 ( # ) 100 (") 101 (b) 111

1 1 7 7

Attributions 2

Attributions 3

Figure 4.5.22 : Attributions des variables auxiliaires associes aux rpartitions de la figure 4.5.21

4.6. Matrice des sorties.


Lorsque nous avons nonc les rgles de rduction de matrice ( 4.4.1), nous avons prcis que contrairement la mthode de simplification, on ne tenait pas compte des tats de sortie, et que lon y reviendrait par la suite ce que nous allons faire ici. La matrice des sorties (Z) devra tre tablie en tenant compte de la matrice des phases dont on est parti et de la matrice des phases rduite sur laquelle on fait apparatre les variables auxiliaires attribues aux diffrentes lignes. Elle aura le mme nombre de lignes et de colonnes que la matrice rduite. Considrons la figure 4.6.1 prsentant une MPS et la MPR obtenue aprs rduction.
Etat Suivant Etat Sortie Prsent E = 00 E = 01 E = 11 E = 10

MPS MPR
x1x2 y1y2

1 2 3 4 5 6 7 8

1 1 1 1 7 7 7 7

2 2 8 2 8 8

3 5 5 5 3

4 4 4 4 6 6 6 6

00 00 10 00 11 01 11 01 00 1 7 7 1

01 2 2 8 8

11 5 5 3 3

10 4 6 6 4

00 01 11 10

Figure 4.6.1 : Matrice de phases et sa rduction pour laquelle on va dresser la matrice de sortie

La ralisation de la matrice de sortie Z suit un certain nombre de rgles :

' A chaque emplacement (ligne-colonne) de la matrice de sortie

correspondant un tat stable de la matrice des phases rduite, on reportera la combinaison de sortie (pris dans la matrice des phases) correspondant cet tat stable.

Logique Squentielle Asynchrone

Page 4.25

( Lorsquon passe dun tat stable vers un autre tat stable, les deux
tats ayant des sorties identiques, il faut affecter tous les tats instables intermdiaires cette combinaison de sortie afin dviter les transitoires. % Dans tous les autres cas les valeurs intermdiaires sont indiffrentes. Toutefois, lorsque plusieurs tats instables forment un cycle, la valeur de sortie ne doit se modifier quune fois sous peine de voir apparatre des oscillations parasites. Cest ainsi que lon obtient les rsultats suivants : x1 x2 x1 x2 y1 y 2 00 01 11 10 y1 y 2 00

01 00 01 -

11 11 10

10 00 01 -

00 01 11 10

00 11 11 00

00 00 11 11

01 01 10 10

00 01 01 00

00 01 11 10

00 11 11 -

Matrice Y (fonctions commutation)

Matrice Z (sortie)

Figure 4.6.2 : Rsultats finaux il ne reste plus qu raliser le circuit.

4.7. Les alas.


Dun point de vue physique, les retards que peuvent subir les signaux lors de leur propagation ne sont pas constants et pourront dans certains cas provoquer un comportement du circuit squentiel non conforme celui prvu lors de sa ralisation. Ce dysfonctionnement sera appel un ala. On divise les alas en deux catgories : les alas se manifestant lorsquune seule variable dentre est modifie les alas se manifestant lorsque plusieurs variables dentre sont modifies simultanment. Nous carterons les alas du deuxime type, trs complexes rgler et pour lesquels, de toute faon, on a prouv quils ne pouvaient pas tre totalement rsolus. Cest la raison pour laquelle on cherche le plus souvent raliser des circuits dont une seule entre varie la fois. Le premier type, beaucoup plus gnral, se divise selon la manire dont les retards interviennent : les alas statiques apparaissent en prsence de retards diffrents le long de 2 chemins placs lintrieur dune mme boucle de rtroaction. Ils se traduisent par lapparition dune transition transitoire lors dune modification dune entre qui devrait laisser la sortie inchange. les alas dynamiques sont dus des retards diffrents intervenant le long de plus de 2 chemins placs lintrieur dune mme boucle de rtroaction. Ils se traduisent le plus souvent par lapparition dun minimum de 3 transitions transitoires lors dune modification dune entre qui devrait entraner une seule transition en sortie. les alas essentiels sont dus des retards diffrents intervenant dans des boucles de retour diffrentes et se traduisent par des transitions vers des tats stables diffrents des tats prvus. Alors que les alas statiques ou dynamiques peuvent toujours tre supprims par modification de la structure du circuit squentiel, les alas essentiels ne peuvent tre rgls que par adjonction de circuits retards sur une ou plusieurs branches du circuit.
Page 4.26
Jacques Guizol

4.7.1. Les alas statiques.


On peut montrer lapparition dun ala sans quil intervienne ncessairement dans un circuit squentiel. Soit par exemple le circuit combinatoire de la figure 4.7.1, la fonction de sortie scrit S = ABC + ABD .
A B C D

x y

Figure 4.7.1 : Ala statique dans un circuit combinatoire

Soit la configuration de valeurs : * B = 1 *C=0 *D=1 Quelle que soit la valeur de A, la sortie prendra la valeur 1. Si nous complmentons A, on constate que la sortie passe par un 0 transitoire d au retard "t la sortie de la porte y dont 2 entres traversent un inverseur. On peut vrifier le phnomne sur le chronogramme de la figure 4.7.2.

A A B C D S !t
Figure 4.7.2 : Mise en vidence dun ala statique

Considrons le diagramme de Karnaugh correspondant. On distingue bien sur la figure 4.7.3 les regroupements correspondant aux deux portes x et y du circuit. Le problme intervient lorsque A passe de 1 0. Au moment o A valait encore 1, cest la porte x qui donnait la valeur de sortie 1 (la sortie de y tait 0). Lorsque A passe 0, la sortie de la porte x passe rapidement 0 alors que la porte y dlivre la sortie 1 avec un retard "t. Pendant ce laps de temps les deux portes x et y ont leur sortie 0, la porte OU en aval ayant ses deux entres 0, on obtient en sortie le transitoire en question.

Logique Squentielle Asynchrone

Page 4.27

CD 00 AB 00 01 11 10 1

01

11

10

CD 00 AB 00

01

11

10

1 1

y
1

01

1 1

y
1

11 10

Figure 4.7.3 : Chaque problme a sa solution

Afin de le supprimer, il faudrait donc un troisime terme dans la disjonction qui maintienne la sortie 1 pendant la transition. La solution consiste donc extraire un minterme redondant du diagramme de Karnaugh, permettant dassurer cette jonction. Le terme BC, D est ce terme redondant ; il ne modifie pas le rsultat de la fonction, il na pour effet que de joindre les deux termes du diagramme.

Figure 4.7.4 : Le circuit modifi

Ce que nous venons de voir par lexprience, Huffman la dmontr et en a dduit une mthode simple pour liminer tout risque dala statique :

Aprs avoir regroup tous les 1 du DK et donc obtenu le circuit minimal, on rajoute de nouveaux groupements de faon ce que tous les groupements entre lesquels des transitions existent se recoupent. Ceci complexifie videmment le circuit.
C'est ce que nous avons fait lors de la ralisation du circuit "bouton poussoir" au 4.2.4, page 27. Voil enfin l'explication des regroupements redondants.

4.7.2. Les alas dynamiques.


Ces alas se manifestent le plus souvent de la faon suivante : au lieu de passer, par exemple, de 0 1 lors dune transition dun tat j vers un tat k, la sortie passera dans un temps trs bref de 0 1, puis de 1 0 et enfin de 0 1. Du fait quon nobserve ces phnomnes que trs rarement, nous napprofondirons pas ici leur tude.

4.7.3. Les alas essentiels.


Les alas essentiels sont beaucoup plus frquents que les prcdents et se rencontrent plus particulirement dans une classe de circuits trs utilise : les circuits de comptage. Ils sont provoqus par des retards diffrents affectant deux boucles de retour concourant la ralisation dune mme fonction. On montre que contrairement aux alas statiques ou dynamiques, la structure du rseau logique nest pas mettre en cause. Ces alas sont des failles inhrentes la nature squentielle dun circuit. On ne peut donc pas intervenir sur le circuit comme on la fait prcdemment. Il faut, la suite dune tude du fonctionnement du circuit, liminer la probabilit dapparition de ces phnomnes par petites touches successives au moyen de circuits retards ajouts de faon judicieuse en certains point du rseau.

Page 4.28

Jacques Guizol

You might also like