Questions

publicité
Licence Informatique S3
Architecture des ordinateurs
Aix Marseille Université 2012-2013
http://www.lif.univ-mrs.fr/~niebert/archi2012.php
questions d’examens
Voici une collection de questions d’examens qui ont été posées par le passé ou qui pourraient
être posées. Quelques points à observer :
– Cette liste ne nous engage en aucune manière pour l’examen. Elle sert pour vous
orienter, mais une seule chose est sûre : les questions précises données ci-dessous
ne figureront probablement pas dans l’examen ... et même ça n’est pas sûr.
– L’examen durera 2h.
– Vous n’avez pas le droit aux supports écrits. Cette restriction est dans votre intérêt, car elle
nous permet de garder des questions aux examens simples. Puis, vous auriez besoin d’écrire
pendant ces 2h plutôt que lire. Au cas de besoin (par exemple une table d’instructions MIPS),
on vous fournira les supports avec le sujet.
– Vous n’avez pas le droit aux calculatrices et les téléphones portables doivent être éteint et
rangés dans les sacs. Le temps restant vous sera communiqué toutes les 30 minutes.
– L’examen sera construit de la sorte qu’il sera difficile, mais pas impossible de répondre à
toutes les questions dans le temps (2h). La liste de questions suivante ne tient pas compte
de la durée.
– quelques remarques sur les réponses attendues en bleu.
Exercice 1 [circuits booléens] Soit f (x0 , . . . , x3 ) la fonction booléenne suivante : f donne vrai si
(x3 x2 x1 x0 )2 mod3 = 0.
– Donnez une table de vérité en forme de table de Karnaugh. Indiquez une couverture de la
table pour la forme normale disjonctive.
– Donnez les formes normales conjonctives et disjonctives.
Exercice 2 [cmos] (a) A quoi sert un buffer , à quoi sert un buffer tri-state
est-ce que le symbole de la porte not ressemble à celui d’un buffer ?
? Pourquoi
La réponse demandée porte sur l’effet de l’amplification électrique du buffer. Une porte
par exemple en CMOS, peut notamment servir à amplifier le signal.
not
,
(b) Dessiner un multiplexeur avec entrées x0 , x1 , x2 , x3 et y0 , y1 et une sortie z tel que z = xi si
i = (y1 , y0 )2 avec des buffers tri-state.
(c) Réalisez la fonction xy en CMOS (avec un minimum de transistors).
La minimalité n’est pas nécessaire pour avoir des points sur cette question, tout circuit CMOS
fonctionnellement correct nous indique que vous avez compris le principe. Une solution de taille
minimale utilise la réécriture suivante de la fonction : x + y. Ce circuit se réalise alors avec un
NOT et un NOR vus dans le cours avec 6 transistors.
Exercice 3 Dessiner le circuit d’une bascule D qui opère sur le front montant.
Exercice 4 Considérez un circuit synchrone pour un compteur avec deux boutons incrémenter
et reset , representés par deux entrées I et R. La sortie (pour faire simple, deux bits)
représente un nombre binaire. Lorsqu’on appuie (front montant) sur I, la sortie devrait incrémenter
modulo 4, lorsque R est appuié (entrée = 1), la sortie serait forcée à 0.
– Dessinez une machine de Moore pour ce comportement.
– Réalisez un circuit synchrone (portes et mémoires) avec ce comportement.
Exercice 5 [MIPS]
(a) Traduire en assembleur MIPS l’algorithme pour le pgcd :
int c;
while ( a != 0 ) {
c = a; a = b%a;
}
b = c;
}
(b) Traduire en assembleur MIPS l’algorithme suivant (supposez une adresse 32 bits pour la
table a d’entiers, par exemple 0xFF120323).
int max=0;
int i=0;
while(i<10){
if(max<a[i]) max=a[i];
i=i+1;
}
}
(c) La table des instructions fait figurer plusieurs pseudo-instructions (format P ), notamment move (qui copie la valeur d’un registre dans un autre et li qui charge une valeur 32
bits dans un registre. Exprimez ces pseudo-instructions par des instructions réelles du processeur.
Pourquoi est-ce qu’on n’a pas ajouté ces instructions comme instructions réelles du processeur ?
La réponse sur la deuxième question est double : move est inutile parce qu’il peut être codé
par une autre instruction, li n’est pas codable en 32 bits, alors que c’est précisément le choix
de MIPS d’avoir la même longueur pour toutes les instructions.
2
Téléchargement