next up previous contents
Next: Pipeline à 5 étages Up: Pipeline de base Previous: Pipeline de base

Pipeline à 3 étages

Soit l'exécution d'une instruction en 3 phases indépendantes (fetch, decode, execute) réalisée chacune en 1 cycle d'horloge. La mise en pipeline consiste à faire travailler en parallèle les 3 unités responsables des 3 phases. Ainsi, au cycle i, on recherche l'instruction i, on décode l'instruction i-1 et on exécute l'instruction i-2. Au cycle i+1, on recherchera l'instruction i+1, on décodera l'instruction i et on exécutera l'instruction i-1.

cycle d'horloge 1 2 3 4 5 6
étage fetch inst 1 inst 2 inst 3 inst 4 inst 5 inst 6
étage decode   inst 1 inst 2 inst 3 inst 4 inst 5
étage execute     inst 1 inst 2 inst 3 inst 4

Le temps moyen d'exécution d'une instruction est divisé par 3. On parle de pipeline à 3 étages. Le temps d'exécution de n instructions est de 2+n cycles d'horloge. Le délai de 2 cycles est appelé temps de latence du pipeline.


next up previous contents
Next: Pipeline à 5 étages Up: Pipeline de base Previous: Pipeline de base
Patrick Marcel
2001-01-24