NE RIEN ECRIRE ICI SE Section Epreu IE5 Programmation MCP Documents autorisés :
NE RIEN ECRIRE ICI SE Section Epreu IE5 Programmation MCP Documents autorisés : Oui N ----------------------------------------------- /20 N.B. : le nom n’est pas tou Exercices (8 points) : 1. Considérons un programme comp instructions de rangement (SW) branchement conditionnel (Beq inconditionnel (jmp), nous désiro architectures mono-cycle, multi Pour une architecture pipeline cinq • Pas d’aléas de structure • Les Aléas de données sont r présentant des aléas de don suppose 70% des instructio de donnée). • Les Aléas de contrôle sont ré de réussite moyen de 65%). • Le programme ne contient p Donner les temps d’exécution du p vues dans le cours sachant que le même que le pipeline égal à 2.1n pipeline. Conception Mono-cycle Conception Multicycle Conception Pipeline Ré Minis Supér ESSION DE : Janvier 2020 euve Pages Durée n embarquée CP 12 1H30 15 Ja Non Calculatrice autorisée : Oui ------------------------------------------------------------- mbre de lignes de réponse ujours significatif. me composé de 40 instructions de type chargement (SW),30 instructions de type –R, 5 instructions nel (Beq/Bne) et 5 instructions de type bran ous désirons comparer les temps d’exécution des , multi-cycle et pipeline. eline cinq étages, nous considérons les hypothèses sui ées sont résolus par renvoie. Les instructions de charge as de données sont résolus par suspension de 1cycle (o instructions de chargement du programme contenant u ôle sont résolus par prédiction dynamique (on suppose de 65%). contient pas d’autres types d’Aléas. ution du programme avec explication pour les trois co nt que le temps de cycle pour la conception multi gal à 2.1ns tandis que celui de monocycle est 5 fois Temps d’exécution Explication épublique Tunisienne istère de l’Enseignement érieur et de la Recherche Date Janvier 2020 Non --------------------------- argement (LW), 20 structions de type type branchement tion des différents thèses suivantes : de chargements e 1cycle (on ontenant un aléas n suppose un taux s trois conceptions ulti-cycle est le est 5 fois celui du 2. Soit le chemin de données monocycle d’un microprocesseur de type RISC donné comme suit. Ce chemin de données implémente l’instruction suivante : Instruction Description SLLV rd,rs,rt Appliquer un décalage à gauche logique sur le contenu de registre source rs par la valeur contenu dans le registre de transfert rt le résultat sera logé dans le registre de destination rd Donner le niveau RTL et Implémenter cette instruction par une couleur sur le chemin de données du processeur RISC suivant : RTL ………………………………………………………………. On désire calculer la durée du cycle de l’horloge T pour l’implémentation de l’instruction SRLV sachant que : Memory: 200ps | Banc de registres (READ/Write): 50ps | ALU et Adders: 100ps | Portes logiques et multiplexeurs : 2ps | tout le reste est négligeable T = ………………………………………………………………. 3. Soit Ie chemin de données mono-cycIe d’un microprocesseur donné comme suit Ce chemin de données implémente les instructions suivantes : Instruction RTL lw_add rd, (rs), rt R[rd] = Memory[R[rs]] + R[rt]; addi_st (rs), rs, imm Memory[R[rs]] = R[rs] + imm; sll_add rd, rs, rt, imm [rd] = (R[rs] << imm) + R[rt]; a) Implémenter chaque instruction sur le chemin de données par une couleur différente : • Implémentation de lw_add • Implémentation de addi_st • Implémentation de sll_add b) Sachant les temps de latences (durée nécessaire à l’exécution) des unités fonctionnelles suivantes, calculer le temps minimal requis pour exécuter chacune des instructions. Expliquez. Unité fonctionnelle Latence Mémoire 3 ns ALU 4 ns Banc de registres 2 ns Reste négligeable Inst Temps ExpIication Donnez la valeur de CPI et Ie temps approximatif du cycle de l’horloge. CPI = ……………………….. T = …………………………… c) Pour chacune des instructions suivantes, spécifier les valeurs des signaux de contrôle. La valeur de ALUOp peut être ADD, SUB, SLL, PASS_A ou PASS_B (PASS_X veut dire qu’on passe la valeur de l’opérande X sans changement). Inst ALUsrc1 ALUsrc2 ALUsrc3 ALUop1 ALUop2 MemRead MemWrite RegWrite Iw_add addi_st sII_add Iw_add ………………………………………………………………… …………………………… ………………………………………………………………… …………………………… addi_st ………………………………………………………………… …………………………… ………………………………………………………………… …………………………… sII_add ………………………………………………………………… …………………………… ………………………………………………………………… …………………………… Problème (12 points) 1. Nous disposons d’un chemin de données Multi-cycle MIPS (implémentant les instructions de type R, ORI, lw, sw et beq) Etant donné programme, composé de 200 instructions, a la répartition d’instructions suivante : 20% de chargements LW, 10% de rangements SW, 50% d’opérations au format R, 15% de branchements Beq et Bne et 5% de sauts J. On désire calculer le CPI (Cycle par instruction) pour notre architecture multi-cycle et la durée du cycle de l’horloge T pour l’implémentation de l’instruction LW sachant que : Memory: 300ps | Banc de registres (READ/Write): 50ps | LALU et Adders: 100ps | Portes logiques et multiplexeurs : 2ps | tout le reste est négligeable. CPI=…………………………………………………………………………………………… ……………………………………………………………………………………… T= …………………………………………………………………………………………………… ……………………………………………………………………………… En déduire le temps d’exécution de tout le programme tex= …………………………………………………………………………………………………… …………………………………………………………………………… 2. MIPS est une architecture registre-registre, où la source arithmétique et les destinations doivent tous les deux, être des registres. Mais, pensant à inclure des instructions d’addition de mémoire- registre Instruction RTL ADD_RM rd, (rs), rt R[rd] = Mem[R[rs]] + R[rt] ADD_MR (rs),(rs),rt Mem[R[rs]] = Mem[R[rs]] +R[rt] Ces instructions utiliseront le même format que les instructions de type R, présentées ici à titre de référence (shamt et func ne sont pas utilisés) Pour ce que se suit : • Apporter les modifications nécessaires dans ce chemin pour supporter les deux nouvelles instructions (solution optimale) • Compléter la machine à état correspondante à chaque instruction par le niveau RTL et attribuer un numéro pour chaque état ajouté. • Déduire le temps d’exécution minimal total pour chaque instruction. • Déterminer les valeurs des signaux de contrôle ajoutés et existants intervenant pour l’exécution de dernier état de chaque instruction. A. Instruction addregmem A.1. Modifications nécessaires pour prendre en charge ADD_RM. Essayer de garder votre diagramme propre A.2. Machine à état pour l'instruction ADD_RM par le niveau RTL correspondant. Abbréviation : SX : Signextend, MDR : Memory Data Register, IR : Instruction Registre, M: Memory, BR : banc de register A.3. Temps d’exécution minimal total pour l’instruction ADD_RM (en détail) …………………………………………………………………………………………………. …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………. …………………………………………………………………………………………………… A.4. les signaux de contrôle correspondants au dernier état pour l’instruction ADD_RM 3. B. Instruction ADD_MR B.1. Modifications nécessaires pour prendre en charge ADD_MR. Essayer de garder votre diagramme propre B.2. Machine à état pour l'instruction ADD_MR par le niveau RTL correspondant B.3. Temps d’exécution minimal total pour l’instruction ADD_MR (en détail) …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………. …………………………………………………………………………………………………… .B.4. les signaux de contrôle correspondants au dernier état pour l’instruction ADD_MR uploads/Ingenierie_Lourd/ examen-ie5-janvier-2020-final.pdf
Documents similaires
-
17
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Mai 19, 2021
- Catégorie Heavy Engineering/...
- Langue French
- Taille du fichier 0.5734MB