Académique Documents
Professionnel Documents
Culture Documents
TD – Pipeeline
Corrigéé »
«C
1. Pipelining
g égal
U
Un processseur non piipeliné posssède un temps de cyc
cle de 10 n s. Quels se
eront les
ttemps de cycle
c des ve
ersions pipe
elinées du processeur
p avec un pi peline de 2,
2 4, 8 et
1
16 étages, si la logique de chemiin de donné
ées est rép
partie de m
manière éga
ale entre
lles étages du pipelin
ne (on con
nsidère qu
ue le temp
ps de stab
bilisation après
a le
p
passage da
ans chaque étage estt de 0,5 ns)) ?
E
En outre qu emps d’exé cution d’une instruction complètee pour chac
uel est le te cune des
vversions pip
pelinées ?
C
Correction : Relation
E
En appliqua
ant cette forrmule, on ob
btient des te
emps de cy
ycle de
5,5
5 ns.
3 ns.
1,75
1 ns.
1,125
1 ns.
2. Pipeline et
e fréquenc
ce d’horlo
oge
C
Combien en
n faut-il pou
ur un temps de cycle de
e 1 ns ?
1
Cnam
m – Centre associé de Cliichy
ée universitaaire 2012‐2013
Anné
NSYY104
Archittecturess des systèmes informatiquess
TD 02 ‐ Pipeline
C
Correction :
E
En manipulant l’équatio
on précéde
ente, il vient :
L
L’application de cette que que 6,,67 étagess de pipeline sont
e formule nous indiq
n
nécessairess pour attein
ndre un tem
mps de cycle
e de 2 ns.
C
Ce résultat est arrond
di à 7 danss la mesure
e où un nom
mbre entierr d’étages doit
d être
iimplémenté
é.
L
La même formule
f indique que 2 0 étages sont
s nécess
saires pourr atteindre un
u cycle
d
d’horloge de
d 1 ns.
3. Pipelining
g inégal :
S
Supposons qu’un proc
cesseur non
n pipeliné possède un
n temps dee cycle de 25
2 ns et
q
que le chem
min de donn
nées est co
onstitué de modules do
ont les tempps d’exécuttion sont
rrespectivem
ment 2, 3, 4, 7, 3, 2 et 4 ns (dans cet ordre). Il est alorss possible de mettre
e
en place un
n pipeline à 7 étages ccorresponda
ant à ces 7 modules. O
On suppose que le
ttemps de stabilisatio
s n après le p
passage da
ans un étage
e est de 1 n
ns.
A. Que
el est le tem
mps de cyccle minimal qui peut être atteint een impléme
entant le
pipe
eline sur ce processeurr ?
2
Cnam – Centre associé de Clichy
Année universitaire 2012‐2013
NSY104
Architectures des systèmes informatiques
TD 02 ‐ Pipeline
B. 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 ?
Correction :
On peut regrouper dans un unique étage n’importe quel ensemble de
modules adjacents qui offriraient un temps d’exécution total inférieur ou égal à
7 ns. Ceci nous permet de créer un pipeline à 5 étages.
Le temps d’exécution d’une instruction complète est alors 8×5 = 40 ns. (cycle
d’horloge × nombre d’étages)
C. Si le pipeline est limité à deux étages, quel est le temps de cycle minimal ?
Correction :
Pour pouvoir obtenir un temps de cycle minimal, il faut diviser les modules en
étages ayant des temps d’exécution aussi égaux que possible. Pour deux
étages, on obtient des temps de 16 et 9 ns (ou l’inverse).
3
Cnam – Centre associé de Clichy
Année universitaire 2012‐2013
NSY104
Architectures des systèmes informatiques
TD 02 ‐ Pipeline
4
Cnam
m – Centre associé de Cliichy
ée universitaaire 2012‐2013
Anné
NSYY104
Archittecturess des systèmes informatiquess
TD 02 ‐ Pipeline
5. Exécution
n pipelinée
e
E
En utilisant un pipeline me d’exécuttion du fragment de
e à 5 étagess, donnez le diagramm
ccode suivan
nt :
ADD
D r1, r2, r3 2 + r3
! r1 <- r2
SUB
B r4, r5, r6 ! r4 <- r5
5 - r6
MUL
L r8, r9, r10
0 ! r8 <- r9
9 * r10
DIV r12, r13, r1
14 ! r12 <- r13 / r14
LI
LI : LLecture Instruction
DI : Décodage In
nstruction
LR : Lecture Regiistre
ER : Ecriture Réssultat
5
Cnam
m – Centre associé de Cliichy
ée universitaaire 2012‐2013
Anné
NSYY104
Archittecturess des systèmes informatiquess
TD 02 ‐ Pipeline
6. Exécution
n pipelinée
e avec alé
éas
E
En utilisant un pipeline me d’exécuttion du fragment de
e à 5 étagess, donnez le diagramm
ccode suivan
nt :
ADD
D r1, r2, r3 ! r1 <
<- r2 + r3
SUB
B r4, r5, r6 ! r4 <
<- r5 - r6
MUL
L r8, r9, r4 ! r8 <
<- r9 * r4
DIV r12, r13, r1
14 ! r12
2 <- r13 / r14
Correcttion : Cette
e fois, le programme
p comporte un AW LAE
u aléa RA E, entre l’ins
struction
SUB, qu
ui écrit r4 ett l’instruction MUL qui le lit.
L’instrucction MUL ne sera donc
d pas ccapable de
e lire ses registres dd’entrée av
vant que
l’instrucction SUB n’ait terminé l’étage ER
R, ce qui cré
ée un blocag
ge de pipelin
ine.
LI
LI : LLecture Instruction
DI : Décodage In
nstruction
LR : Lecture Regiistre
ER : Ecriture Réssultat