IUT Créteil-Vitry / U-PEC / GEII S1 / DS 2

Transcription

IUT Créteil-Vitry / U-PEC / GEII S1 / DS 2
IUT Créteil-Vitry / U-PEC / GEII S1 / DS 2
Dept GEII
ENSL1
Année universitaire 2012-2013 - 15 janvier 2013
CORRECTION
Les exercices 1, 2, 3 et 4 sont indépendants. Le sujet comporte 3 pages.
Questions de cours ( /5 )
1. Quelle fonction est réalisée par une bascule ?
REPONSE
Une bascule est un élément de mémorisation. Elle permet de sauvegarder une information binaire.
2. Donner le diagramme d’état d’une bascule D. Ce système est-il synchrone ou asynchrone ? Justifiez.
REPONSE
La bascule D possède une horloge et sa sortie n’évolue que lors d’un front actif de ce signal d’horloge. C’est donc un système synchrone.
3. Qu’est-ce qu’un registre à décalage ? Expliquer brièvement son principe (à l’aide d’un schéma si besoin).
REPONSE
Un registre est une association de n bascules utilisées conjointement pour mémoriser les n bits d’un
mot binaire. Les n bascules ont une horloge commune.
Un registre à décalage est une association de bascules permettant de décaler un mot binaire, à droite
ou à gauche.
4. Quelle est la différence entre un système combinatoire et un système séquentiel ? (Donner la définition
de ces deux types de systèmes).
REPONSE
Un système logique est dit combinatoire si à tout instant, le résultat logique en sortie ne dépend
que de l’état de ses entrées. L’élément de base d’un système combinatoire est la porte logique.
sorties = f (entrees)
Un système est dit séquentiel si à une même combinaison des variables d’entrée peut correspondre
plusieurs combinaisons différentes des variables de sortie. sorties = g(entrees, etat)
5. En VHDL, quels sont les deux blocs indispensables à la description d’un système ? A quoi servent-ils ?
REPONSE
Pour décrire un système en VHDL, il est nécessaire de définir deux blocs :
– l’entité, permettant de décrire les entrées/sorties du système
– l’architecture, permettant de décrire le fonctionnement du système (comportement, équations...)
IUT Créteil-Vitry / U-PEC / GEII S1 / DS 2
IUT Créteil - GEII - ENSL1
6. Quels sont les deux types possibles de machine à états ? Quelle est la différence entre ces deux machines ? Donner le schéma simplifié d’une machine à état (type au choix).
REPONSE
Les deux machines à état possible sont :
– la machine de Moore : la sortie ne dépend que de l’état de la machine : elle ne change que
lors d’un changement d’état. Les sorties sont synchrones avec les transitions d’état et les fronts
d’horloge.
– la machine de Mealy : la sortie est calculée en fonction de l’état présent et de la valeur présente des entrées : les sorties peuvent changer immédiatement après un changement des entrées,
indépendamment de l’horloge. Ce système est asynchrone.
Exercice 1 - VHDL ( /4 )
On donne la description VHDL suivante :
1 a r c h i t e c t u r e s i m p l e o f exo1 i s
2 begin
3
process ( clk )
4
begin
5
i f ( c l k ’ e v e n t and c l k = ’ 0 ’ ) t h e n
6
i f ( c p t = " 1001 " ) t h e n
7
c p t <= " 0000 " ;
8
else
9
c p t <= c p t + 1 ;
10
end i f ;
11
end i f ;
12
end p r o c e s s ;
13 end s i m p l e ;
1. Le système décrit est-il séquentiel ? Justifier votre réponse.
REPONSE
Le système décrit possède un processus explicite dirigé par un signal d’horloge (CLK). A l’intérieur
de ce processus, on détecte un front actif d’horloge (ligne 5).
Ce système est donc séquentiel, et même synchrone.
2. A quoi sert la ligne 13 de ce code ?
REPONSE
Cette ligne sert à détecter un front descendant sur le signal CLK.
–2–
IUT Créteil-Vitry / U-PEC / GEII S1 / DS 2
IUT Créteil - GEII - ENSL1
3. Ecrire l’entité de ce système.
REPONSE
1 e n t i t y exo1 i s
2
Port (
3
c l k : i n STD_LOGIC ;
4
c p t : b u f f e r STD_LOGIC_VECTOR ( 3 DOWNTO 0 )
5
);
6 end exo1 ;
4. Quel est le role de ce système ?
REPONSE
Ce système est un compteur modulo 10 (ou compteur décimal).
On souhaite rajouter une remise à zéro asynchrone, RAZ.
5. Modifier le code source pour pouvoir intégrer cette nouvelle fonction.
REPONSE
1 e n t i t y exo1 i s
2
Port (
3
c l k , r a z : i n STD_LOGIC ;
4
c p t : b u f f e r STD_LOGIC_VECTOR ( 3 DOWNTO 0 )
5
);
6 end exo1 ;
7
8 a r c h i t e c t u r e s i m p l e o f exo1 i s
9 begin
10
process ( clk )
11
begin
12
i f ( r a z = ’ 1 ’ ) t h e n c p t <= " 0000 " ;
13
e l s i f ( c l k ’ e v e n t and c l k = ’ 0 ’ ) t h e n
14
i f ( c p t = " 1001 " ) t h e n
15
c p t <= " 0000 " ;
16
else
17
c p t <= c p t + 1 ;
18
end i f ;
19
end i f ;
20
end p r o c e s s ;
21 end s i m p l e ;
–3–
IUT Créteil-Vitry / U-PEC / GEII S1 / DS 2
IUT Créteil - GEII - ENSL1
Exercice 2 - Machine à état ( /6 )
1. Quel est le nombre minimal de bascules à utiliser pour synthétiser ce système ?
REPONSE
On a 3 états à coder. 2 bascules permettent de sauvegarder 22 états.
2. Faire un schéma synoptique du système (entrées/sorties).
REPONSE
On synthétisera ce système à l’aide de 2 bascules D.
L’état sera codé sur 2 bits : A = 00, B = 01 et C = 10.
3. Recopier le tableau suivant sur votre feuille de copie et compléter le.
Entrées et Etat actuel
e1 e0 Q−1
Q−0
0 0
0
0
0 0
0
1
... ... ...
...
Etat futur
Q+1 Q+0
?
?
?
?
?
?
–4–
Bascules
D1 D0
?
?
?
?
?
?
IUT Créteil-Vitry / U-PEC / GEII S1 / DS 2
IUT Créteil - GEII - ENSL1
REPONSE
Entrées et Etat actuel
e1 e0 Q−1
Q−0
0 0
0
0
0 0
0
1
0 0
1
0
0 0
1
1
0 1
0
0
0 1
0
1
0 1
1
0
0 1
1
1
1 0
0
0
1 0
0
0
1 0
0
0
1 0
0
0
1 1
0
0
1 1
0
1
1 1
1
0
1 1
1
1
Etat futur
Q+1 Q+0
0
0
0
1
1
0
X
X
1
0
0
0
1
0
X
X
0
1
0
1
0
0
X
X
0
0
0
0
0
0
X
X
Bascules
D1 D0
0
0
0
1
1
0
X
X
1
0
0
0
1
0
X
X
0
1
0
1
0
0
X
X
0
0
0
0
0
0
X
X
4. Donner les équations de D1 et D0 .
REPONSE
D1 = e1 · Q1 + e0 · Q1 · Q0
D0 = e0 · Q0 + e1 · Q1 · Q0
5. Donner la structure complète du système.
–5–
IUT Créteil-Vitry / U-PEC / GEII S1 / DS 2
IUT Créteil - GEII - ENSL1
Exercice 3 - Système séquentiel à analyser ( /5 )
1. Ce système est-il synchrone ? Sur quel type de machine est-il basé ?
REPONSE
Ce système est synchrone. Les entrées d’horloge de toutes les bascules sont reliées ensemble.
Ce système est basé sur une machine de Moore.
2. Donner les équations de chacune des entrées D2 , D1 et D0 , en fonction de Q−2 , Q−1 et Q−0 .
REPONSE
D0 = Q 0
D1 = Q1 · Q0 + Q1 · Q0
D2 = Q2 · Q1 · Q0 + Q2 · Q1 · Q0
3. Recopier le tableau suivant sur votre feuille de copie et compléter le.
Etat actuel
Q−2 Q−1 Q−0
0
0
0
0
0
1
... ... ...
Bascules
D2 D1 D0
?
?
?
?
?
?
?
?
?
Etat futur
Q+1 Q+0
?
?
?
?
?
?
?
?
?
Q+2
REPONSE
Etat actuel
Q−2 Q−1 Q−0
0
0
0
0
0
1
0
1
0
0
1
1
1
0
0
1
0
1
1
1
0
1
1
1
Bascules
D2 D1 D0
0
0
1
0
1
0
0
1
1
1
0
0
1
0
1
1
1
0
1
1
1
0
0
0
–6–
Etat futur
Q+1 Q+0
0
0
1
0
1
0
0
1
1
1
0
0
1
0
1
1
1
0
1
1
1
0
0
0
Q+2
IUT Créteil-Vitry / U-PEC / GEII S1 / DS 2
IUT Créteil - GEII - ENSL1
4. Quel est le role de ce système ?
REPONSE
Ce système est un compteur 3 bits synchrone.
–7–
IUT Créteil-Vitry / U-PEC / GEII S1 / DS 2
IUT Créteil - GEII - ENSL1
Bonus - Système séquentiel simple ( /2 )
1. Ce système est-il synchrone ? Justifier votre réponse.
REPONSE
Ce système est asynchrone. Les bascules sont mises en cascade. Toutes les sorties n’évoluent pas
en même temps.
2. Faire le chronogramme de chacune des sorties en fonction du signal sur l’entrée.
REPONSE
3. Quel est le role de ce système ?
REPONSE
Ce système est un décompteur asynchrone 3 bits.
–8–

Documents pareils