Professional Documents
Culture Documents
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)
retard permettant de faire intervenir la constante de temps. Cette dcomposition qui na aucune ralit physique sera utile pour les besoins ultrieurs du raisonnement.
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
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).
! "
- 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.
% 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
10...1
11..0
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
3
La lampe est allume
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
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.
1 2 3 4
1 3 3 1
2 2 4 4
0 1 1 0
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
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
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)
Lvaluation de Y 1 et de sopre au moyen de diagrammes de Karnaugh (comme le montre la figure 4.2.8. On trouve finalement :
Page 4.7
4.3.
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.
' ( %
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
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
1 4
1 1
5 4
4 1
7 4
1 0
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
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
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
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
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/8
6/8
2/4
3/5
7/9
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
Etat Prsent
Etat Suivant E = 00 E = 01 E = 11 E = 10
Sortie
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.
* 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/8
6/8
2/4 ! !
3/5 ! !
7/9 ! ! ! !
! ! ! !
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
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
1 3
1 3
5 -
8 8
00 00
00
1 3
Page 4.12
1 3
2 2
5 5
7 7
01 0-
01
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
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
1 6
1 6
3 -
5 2
7 -
1 1
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
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
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.
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).
1 2
1 1
2 2
5 5
9 9
Etat Prsent
Etat Suivant E = 00 E = 01 E = 11 E = 10
1 2
1 1
5 5
9 9
% et & (stable)
Jacques Guizol
Page 4.14
Etat Prsent
Etat Suivant E = 00 E = 01 E = 11 E = 10
1 2
1 1
2 2
5 -
Etat Prsent
Etat Suivant E = 00 E = 01 E = 11 E = 10
1 2
1 1
2 2
1
% et &
2
(instable)
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
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
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
4.5.
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.
2 3
Puis de l'tat instable 2, on passe l'tat stable 2
2 2
5 3
3 2
7 3
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.
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
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
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
Page 4.18
Jacques Guizol
' ( %
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
&
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
Page 4.19
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
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 ?
!
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.
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
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
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 !
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
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
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
!
!
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).
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
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 -
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
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
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
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.
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 Z (sortie)
x y
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.
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
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.
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.
Page 4.28
Jacques Guizol