Architecture des Microprocesseurs TD 1.Pipelining égal Un processeur non pipeli
Architecture des Microprocesseurs TD 1.Pipelining égal Un processeur non pipeliné possède un temps de cycle de 10 ns. Quels seront les temps de cycle des versions pipelinées du processeur avec un pipeline de 2, 4, 8 et 16 étages, si la logique de chemin de données est répartie de manière égale entre les étages du pipeline (on considère que le temps de stabilisation après le passage dans chaque étage est de 0,5 ns) ? En outre quel est le temps d’exécution d’une instruction complète pour chacune des versions pipelinées ? 2.Pipeline et fréquence d’horloge Pour le processeur de l’exercice précédent, combien d’étages de pipeline sont requis pour atteindre un temps de cycle de 2 ns ? Combien en faut-il pour un temps de cycle de 1 ns ? 3.Pipelining inégal Supposons qu’un processeur non pipeliné possède un temps de cycle de 25 ns et que le chemin de données est constitué de modules dont les temps d’exécution sont respectivement 2, 3, 4, 7, 3, 2 et 4 ns (dans cet ordre). Il est alors possible de mettre en place un pipeline à 7 étages correspondant à ces 7 modules. On suppose que le temps de stabilisation après le passage dans un étage est de 1 ns. – Quel est le temps de cycle minimal qui peut être atteint en implémentant le pipeline sur ce processeur ? – Si le processeur est divisé en un plus petit nombre d’étages qui lui permettent toutefois d’atteindre le temps de cycle de la question précédente, quel sera le temps d’exécution d’une instruction complète ? Si le pipeline est limité à deux étages, quel est le temps de cycle minimal ? Le temps de cycle minimal est alors de 17 ns. (16 ns+1 ns de stabilisation). – Quel est alors le temps d’exécution d’une instruction complète ? 1 4.Aléas d’instruction (dépendances d’instructions) Soit la séquence suivante (en pseudo-assembleur) : DIV r2, r5, r8 ! r2 <- r5 / r8 SUB r9, r2, r7 ! r9 <- r2 - r7 AND r5, r14, r6 ! r5 <- r14 & r6 MUL r11, r9, r5 ! r11 <- r9 * r5 BEQ r10, #0, r12 ! si (r10=0) goto r12 OR r8, r15, r2 ! r8 <- r15 | r2 – Identifiez tous les aléas LAE (Lecture Après Écriture). – Identifiez tous les aléas EAL (Écriture Après Lecture). – Identifiez tous les aléas EAE (Écriture Après Écriture). – Identifiez tous les aléas de contrôle. 5.Exécution pipelinée En utilisant le pipeline donné dans le cours (5 étages), donnez le diagramme d’exécution du fragment de code suivant : ADD r1, r2, r3 ! r1 <- r2 + r3 SUB r4, r5, r6 ! r4 <- r5 - r6 MUL r8, r9, r10 ! r8 <- r9 * r10 DIV r12, r13, r14 ! r12 <- r13 / r14 6.Exécution pipelinée avec aléas En utilisant le pipeline donné dans le cours (5 étages), donnez le diagramme d’exécution du fragment de code suivant: ADD r1, r2, r3 ! r1 <- r2 + r3 SUB r4, r5, r6 ! r4 <- r5 - r6 MUL r8, r9, r4 ! r8 <- r9 * r4 DIV r12, r13, r14 ! r12 <- r13 / r14 2 uploads/Litterature/ td-mips-1076.pdf
Documents similaires










-
32
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Aoû 08, 2021
- Catégorie Literature / Litté...
- Langue French
- Taille du fichier 0.0785MB