Vous êtes sur la page 1sur 18

Cours 9

Introduction aux systmes squentiels complexes. Conception de machines tats.

Structure gnrale d'un systme numrique


commandes Partie contrle signaux d'tat Partie oprative

consignes

compte-rendu

donnes

Environnement

Partie oprative : traite les donnes Partie contrle : pilote le traitement

Dpartement Electronique

ELP 304 Cours 9

Les quatre types d'units fonctionnelles dans un systme numrique

Unit de traitement Unit de mmorisation Unit de contrle Unit d'interface

=> Traiter => Stocker => Piloter => Communiquer

Dpartement Electronique

ELP 304 Cours 9

Assemblage des units fonctionnelles :


exemple d'un filtre numrique programmable
donnes entrantes

yi = a1xi +a2 xi 1+a3 xi2

xi , xi 1, xi 2 , xi 3 ,L

UI

ordres

UI UC

a1 a2 a3
UM

+ * UT UI

Partie contrle
4 Dpartement Electronique

donnes sortantes
ELP 304 Cours 9

yi , yi1,L

Partie oprative

Conception d'une unit de contrle

Oprateurs squentiels spcialiss dans le contrle => machine tats finis (automate) => squenceur => microcontrleur

Dpartement Electronique

ELP 304 Cours 9

Les machines tats : machine de Mealy


ENTREES SYNCHR.

F
fonction de sortie

SORTIES

G
fonction "tat suivant"

tat futur

registre d'tat

HORLOGE
tat prsent

Machine de Mealy synchrone


Dpartement Electronique ELP 304 Cours 9

Comportement d'une machine de Mealy : graphe d'tats


E1 = 0 E2 = 0 S=0 E1 = 1 S=0
S=0 E1 = 0 E2 = 0 E1 = 1 E1 = 1 S=0

E1 = 1 S = 0

A
E1 = 0 E2 = 1 S=0 E2 = 0 S=1 E1 = 0 E2 = 0 S=0

A
E1 = 0 E2 = 1

E1 = 0 S=0

E2 = 0 E1 = 0 E2 = 0

E1 = 0

D
E1 = 1 S = 1

D
E1 = 1 S=1 S = 1 <=> E1=1

E2 = 1 S = 1

E1 = 0 S = 0 E2 = 1

E2 = 1

E1 = 0 E2 = 1

Dpartement Electronique

ELP 304 Cours 9

Les machines tats : machine de Moore

F
fonction de sortie
SORTIES

ENTREES SYNCHR.

G
fonction "tat suivant"

tat futur

registre d'tat

HORLOGE
tat prsent

Machine de Moore synchrone


8 Dpartement Electronique ELP 304 Cours 9

Graphe d'tats d'une machine de Moore


S=0
E1 = 0 E2 = 0 E1 = 1 E1 = 1

S=0

A
E1 = 0 E2 = 1 E2 = 0 E1 = 0 E2 = 0

B
E1 = 0

D
E1 = 1

S=0

S=1
E2 = 1 E1 = 0 E2 = 1
ELP 304 Cours 9

Dpartement Electronique

Mise en uvre des automates


Les fonctions F et G peuvent tre ralises :
A l'aide d'oprateurs logiques lmentaires A l'aide d'une PROM :
Entres Entres synchronises PROM donnes registre d'tat adresse Sorties

Etat prsent Etat futur

CK

10

Dpartement Electronique

ELP 304 Cours 9

Limitations des automates d'tats finis

Un automate d'tats finis ne peut tre mis en uvre que si la spcification de l'unit de contrle est relativement simple Les graphes d'tats ne sont pas adapts la description de comportements complexes (> qqes dizaines d'tats) La complexit de ralisation des fonctions F et G crot comme 2n+p, si n est le nombre d'entres et p le nombre de variables ncessaires au codage des tats. Diffrentes stratgies possibles pour grer la complexit Dcomposer l'unit de contrle en plusieurs automates communicants Utiliser un squenceur Utiliser un -contrleur du march (si assez rapide)

11

Dpartement Electronique

ELP 304 Cours 9

Principe de la conception " la main" d'un automate tats finis


La mthode dite de Huffmann
1. Etablir la spcification comportementale de l'automate sous la forme d'un graphe d'tats. Optimiser le graphe si ncessaire (rduction du nombre d'tats). Coder les tats du graphe. Etablir la table de transition de l'automate.
entre s tat prsent tat futur sortie s

2. 3.

4. 5. 6. 7.

Choisir le support matriel de ralisation. Synthtiser les fonctions F et G en les optimisant par rapport au support choisi. Etablir le schma logique. Raliser et tester l'automate.
Dpartement Electronique ELP 304 Cours 9

Principe de la conception d'un automate tats finis l'aide d'un environnement de CAO
1. Etablir la spcification comportementale de l'automate sous la forme d'un graphe d'tats. Optimiser le graphe. Transcrire le graphe d'tats optimis dans un langage accept par l'environnement de CAO (VHDL). Vrifier la spcification par une simulation fonctionnelle de l'automate. Choisir le support matriel de ralisation. Fixer les paramtres d'optimisation (surface, vitesse,). Faire la synthse logique de l'automate. Le synthtiseur fournit automatiquement la "netlist" (description au niveau portes lmentaires) du circuit ou le contenu de la PROM. Simuler le fonctionnement de l'automate aprs synthse (simulation fonctionnelle + temporelle). Raliser et tester l'automate.
ELP 304 Cours 9

2.

3. 4.

5. 6.

Dpartement Electronique

Exemple de conception " la main" d'un automate (I)


1. Graphe d'tats de l'automate
E1.E2=0

Entres : E1, E2 Sorties : VF, DP


A
E1=0 E1.E2=1 E1.E2=1

VF=DP=1

E1.E2=1

E1.E2=1

D
E1.E2=1 VF= 1 DP=1 E1.E2=1 E1=1 E1.E2=1

B
E1=0

E1=1 VF=0 DP=1

C
E1=0
14 Dpartement Electronique ELP 304 Cours 9

VF= 1 DP=1

E1.E2=1

Exemple de conception " la main" d'un automate (II)


2. Codage des tats
Etat A B C D Q2 Q1 0 0 1 1 0 1 1 0
Q1, Q2 : variables internes ou variables d'tat.

NB: le codage de l'tat d'initialisation doit tre cohrent avec les commandes d'initialisation des bascules

15

Dpartement Electronique

ELP 304 Cours 9

Exemple de conception " la main" d'un automate (III)


3. Table de transition
Etat prsent
E1.E2=0 VF=DP=1 E1.E2=1

Entres E1 E2 0 1 1 1 0 0 1 1 0 1 1 X 1 0 X X X 1 0 X 1 0

Etat futur Q2+ Q1+ 0 0 0 0 1 1 0 1 0 0 1 0 1 0 1 1 1 1 0 0 1 0

Sorties VF DP 0 1 0 0 0 0 1 0 0 1 0 0 1 0 1 1 1 1 1 0 1 1

Q2 Q1 0 0 0 0
B
E1=1 VF=0 DP=1

0 0 0 1 1 1 1 1 0 0 0

A
E1=0 E1.E2=1 E1.E2=1 E1.E2=1

D
E1.E2=1 VF= 1 DP=1 E1.E2=1 E1=1 E1.E2=1

0 1 1 1 1 1 1

E1=0

C
E1=0

VF= 1 DP=1

E1.E2=1

16

Dpartement Electronique

ELP 304 Cours 9

Exemple de conception " la main" d'un automate (IV)


+ Q1
0 1 1 Q2 0 0 E2
E1

E1 0 1 1 1 1 1 1 0 1 Q1 0 0

+ Q2

4. Synthse des fonctions F et G


E1 0 1 1 0 1 1 0 E2 0 0 0 0 0 0 1 1

+ Q1 = E1E2 + Q2Q1 + E1Q1 Q1 + Q2 = E1Q1 + E1 E 2Q2

Q2 0

E1 1 1 1 1 0 1 1 1

VF
0 0 0 Q2 0 0 E2
17 Dpartement Electronique

DP
0 0 0 1 0 1 1 0 0 Q1 0 Q2 0 0 0 E2
ELP 304 Cours 9

0 1 1

0 1 1

VF = E1E2 Q1 + E1 E2 Q2 Q1 DP = Q1 + E1 E 2 + E1Q2

Exemple de conception " la main" d'un automate (V)


E1 E2 E1 E2

5. Schma logique
DP

VF

basc 1
CK NQ NR

basc 2

6. Ralisation et test de INIT* l'automate


18 Dpartement Electronique ELP 304 Cours 9

HO

CK NQ NR