Vous êtes sur la page 1sur 9

NE RIEN

ECRIRE ICI
Réépublique Tunisienne
Minis
istère de l’Enseignement
Supér
érieur et de la Recherche

SESSION DE
D RATTRAPAGE : Février 2020
Section Epreu
euve Pages Durée Date
IE5 Programmation
n embarquée 7 1H30 6 Fe
evrier 2020

Documents autorisés : Oui Non


N Calculatrice autorisée : Oui Non
Enseignant : Dhafer MEZGHANI
-----------------------------------------------
-------------------------------------------------------------
---------------------------

/20 N.B. : le nom


mbre de lignes de réponse
n’est pas tou
ujours significatif.
Exercices (5 points) :
1. Donner niveaux RTL des instruct
ctions suivantes et leurs formats d’instruction :

SUB $1,$2,$3…………………… ………………


……………………………………………………

ORI $4,$5,20……………………
……………………………………………………
………………

SLL $6,$3,25……………………
……………………………………………………
……………

LH $7, 100($2)
…………………………………… ……………………………………………………
………

1
Problème (15 points)
Conception en monocycle
Nous disposons d’un chemin de données monocycle MIPS (implémentant les instructions de
type R, ORI, lw, sw et beq)

Dans le chemin de données, le composant nommée LALU (Less ALU) joue le rôle de l’ALU
mais possède de plus une sortie « Less » qui est égale à 1 si R[rs]-R[rt]<0 et 0 si R[rs]=>
R[rt]. Comme le cas de zéro, Less est un indicateur vers l’unité de contrôle. C’est un
indicateur de comparaison entre le contenu de deux registres source et transfert.
1. Etant donnée les latences d’exécution suivantes, donner le CPI et la durée du cycle de
l’horloge T1 pour l’implémentation de l’instruction LW sachant que :
Memory: 200ps | Banc de registres (READ/Write): 50ps | LALU et Adders: 80ps | Portes
logiques et multiplexeurs : 2ps | tout le reste est négligeable.
CPI = ……………………………………………………………………………………………
T1= ……………………………………………………………………………………………
3. Les concepteurs MIPS ont identifié des instructions supplémentaires que peut réaliser le
processeur MIPS (vu dans le cours). Ces instructions sont :
Instructions Description et RTL
Cs $rd, $rs, $rt Le registre de destination rd reçoit le min (le plus petit), suite à
une comparaison, entre le contenu de rs et celui de rt

R[rd] ← min(R[rs], R[rt])


CsSw $rs, $rt La mémoire de données reçoit une donnée qui est le contenu de
registre de transfert rt. L’adresse prend la valeur du minimum
entre le contenu de registre source rs et le registre de transfert rt
min(R[rs], R[rt])

M[min(R[rs], R[rt])] ← R[r(t)]

2
CsCsSw $rs, $rt La mémoire de données reçoit une donnée est le minimum
entre le contenu de rs et la valeur min(R[rs], R[rt]). L’adresse
prend toujours la valeur du minimum entre le contenu de
registre source rs et le registre de transfert rt noté min(R[rs],
R[rt])

M[min(R[rs], R[rt])] ← min(R[rs], min(R[rs], R[rt]))

Il est alors clair que les abréviations Cs et Sw dans les mnémoniques ci-dessus signifient :
Compare_select et Store word
Nous nous proposons d’apporter des modifications au chemin de donnée et aux signaux de
contrôle, en suivant les consignes suivantes :
- Il est recommandé de minimiser le nombre de matériel à ajouter.
- En ajoutant une nouvelle instruction, il ne faut pas altérer le fonctionnement des
instructions de base.
- Eviter d’ajouter des registres ou des mémoires au chemin de données
- Il est impossible d’ajouter des LALU
- Il est possible d’ajouter des multiplexeurs
Pour chacune des nouvelles instructions mentionnées, nous demandons la modification du
chemin de données et les valeurs des signaux de contrôle ajoutés et existants. Il sera tenu
compte de l’optimalité de la solution.

1 ère pseudo-instruction : Cs $rd, $rs, $rt

3
Points de contrôle :

2 éme pseudo-instruction : CsSw $rs, $rt

Points de contrôle :

4
3 éme pseudo-instruction : CsCsSw $rs, $rt

Points de contrôle :

5
3. Calculer le temps minimal requis pour exécuter chacune des pseudo-instructions. Expliquez
……………………………………………………………………………………………………
……………………………………………………………………………………………………
……………………………………………………………………………………………………
……………………………………………………………………………………………………
……………………………………………………………………………………………………
……………………………………………………………………………………………………
……………………………………………………………………………………………………
…………

4. Donner la durée de cycle d’horloge nécessaire pour implémenter ces trois pseudo-instructions
……………………………………………………………………………………………………
……………………………………………………………………………………………………
……………………………………………………………………………………

6
ANNEXE