Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

TD3

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 2

ASR1 - L3 Informatique - ENS Lyon Année 2014-2015

TD 3 : Circuits séquentiels

Les registres
je me rappelle de tout
1. Donnez un circuit combinatoire permettant de “se souvenir” d’un état ? Il n’est pas demandé que
l’on puisse initialiser l’état ; il suffit que la structure soit capable de se souvenir de n’importe quel
état (0 ou 1).
2. On souhaite avoir la possibilité de fixer notre circuit dans un état donné par l’opération d’écriture.
Modifiez le circuit précédent pour obtenir un ayant deux entrées R et S et deux sorties Q et Q
telles que :
— Si R = S = 1 alors la bascule est dans l’état mémoire où Q et Q ne changent pas (cet état est
équivalent à celui du circuit de la question précédente)
— Si R = 1 et S = 0 alors Q = 1 et Q = 0
— Si R = 0 et S = 1 alors Q = 0 et Q = 1
Quel est le problème ?
3. Dessinez le circuit "dual" du précédent où R = S = 0 est l’état mémoire et S = R est l’état
écriture.
4. On souhaite palier aux problèmes des bascules précédentes. Créez une bascule latch (ou verrou) :
une structure à deux entrées (D et H ) et deux sorties (Q et Q) qui recopie D (data) sur Q lorsque
H (l’horloge) vaut 1, et qui garde l’état courant lorsque H vaut 0.
Cette bascule est dite aussi transparente. Pourquoi ?
5. Réutilisez la bascule latch pour construire une bascule D qui mémorise une valeur pendant la durée
d’un cycle. La mémorisation se fait au moment du front montant d’horloge, et c’est la valeur de
l’entrée D qui est mémorisée. Pendant tout le reste du cycle, Q vaut cette valeur, et Q son opposé.
6. Définissez la bascule JK, qui reprend la bascule RS en supprimant la configuration interdite.
Synchronisez-la sur une horloge.

Comptage et un peu d’automates


...

1. À partir d’une bascule D donnez le registre T (toggle) qui change d’état à chaque front montant
de l’horloge.
2. Dessinez un circuit qui compte modulo 4.
3. On souhaite contrôler le compteur avec une entrée INC de sorte que le compteur ne s’incrémente
que si INC=1. Modifiez votre circuit en conséquence.
4. On souhaite réaliser un circuit détecteur de présence. Il a une seule entrée E et une sortie S. Son
fonctionnement est le suivant :
1. La sortie S passe à 1 au top suivant le passage à 1 de l’entrée E
2. ensuite elle retombe à 0.
Exemple :
Tops 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
E 0 0 1 0 0 1 1 0 1 0 1 0 0 0 1 0 0 0 1 1 0
S 0 0 0 1 0 0 1 1 0 1 0 1 0 0 0 1 0 0 0 1 1
Réalisez ce circuit en utilisant des bascules D.

1
Les opérations booléennes revisited
on sait faire ça, non ?
On souhaite effectuer la somme logique (OU) du contenu de deux registres A et B de 4 bits chacun
et obtenir le résultat dans le registre B, soit

contenu(A) + contenu(B) → B

Le circuit doit effectuer cette somme en parallèle sur tous les bits. Soit contenu(Ai ) le i-ème bit
(i = 0, 1, 2, 3) du registre A (idem pour B). En n’utilisant que des bascules RS avec des NOR :
1. donnez la table d’états correspondant au sous-circuit réalisant la somme logique au niveau du bit
(elle comprendra contenu(Ai ) et contenu(Bi ) au temps t (avant le transfert) contenu(Bi ) après
le transfert et les entrées de la bascule RS) ;
2. donnez l’expression logique simplifiée au maximum exprimant chaque entrée de la bascule en
fonction des entrées du sous-circuit ;
3. donnez le schéma du sous-circuit obtenu et en déduire le schéma du circuit complet en supposant
que les registres contiennent initialement les valeurs Ai et Bi .
4. Généralisez ce circuit avec une horloge afin que
— les registres se mettent à jour sur son front montant,
— la somme logique soit calculée sur son front descendant.

Vous aimerez peut-être aussi