Architecture des ordinateurs I Examen Final Automne 2004 JP David
5
Question 4 (10 points, 40 minutes, soit 11H20)
Sur l’architecture MIC3 (celle avec 3 bus, l’unité de recherche d’instructions et les registres A, B et C
supplémentaires), les temps de propagation sont les suivants :
4 ns entre les registres et les bus A et B
10 ns dans l’ALU
3 ns dans l’unité de décalage
3 ns entre le registre C et l’entrée des registres.
Dans l’ALU, on se rend compte que les opérations logiques et arithmétiques prennent effectivement 10
ns tandis que les simples transferts prennent seulement 5 ns. On décide alors d’utiliser deux cycles
d’horloge pour les opérations logiques et arithmétiques et un seul cycle d’horloge pour les transferts.
Ainsi, le programme suivant est valide :
N0 : A=CPP; B=TOS
N1 : // on attend un cycle avant de récupérer le résultat de l’addition sans changer A et B
N2 : C=A+B; A=LV;
N3 : C=A; // la donnée est déjà disponible car il s’agit d’un simple transfert.
4.1) Quelle était la fréquence maximale avant d’utiliser ce stratagème ?
4.2) Quelle est la fréquence maximale avec ce stratagème ?
4.3) Décrivez, cycle après cycle, l’exécution de l’instruction IADD parallélisée au maximum sur
cette nouvelle architecture.