Keywords: archi

Next: Les aléas Up: Pipeline de base Previous: Pipeline à 3 étages

#### Pipeline à 5 étages

Appliquons ce principe à la machine RISC décrite plus haut. Les 5 phases doivent être rendues indépendantes. Toute information issue d'un étage et devant être utilisée par l'étage suivant doit être mémorisée dans un registre servant d'interface entre les étages. On obtient ainsi le fonctionnement décrit par le tableau suivant :

cycle d'horloge | 1 | 2 | 3 | 4 | 5 | 6
étage LI | inst 1 | inst 2 | inst 3 | inst 4 | inst 5 | inst 6
étage DI |  | inst 1 | inst 2 | inst 3 | inst 4 | inst 5
étage EX |  |  | inst 1 | inst 2 | inst 3 | inst 4
étage MEM |  |  |  | inst 1 | inst 2 | inst 3
étage ER |  |  |  |  | inst 1 | inst 2

Quelques remarques :

1.
  l'emploi de deux caches spécialisés se révèle judicieux : chaque mémoire est sollicitée à chaque cycle. Cela n'aurait pas été possible si un seul cache contenant données et instructions avait été utilisé ;
2.
  le bloc registres doit permettre deux lectures (registres sources pour l'étage DI) et une écriture (résultat pour l'étage ER) dans le même cycle. Un problème survient si l'écriture concerne un registre accédé en lecture ;
3.
  le multiplexeur de sélection du registre CP a été déplacé de l'étage MEM vers l'étage LI. L'exécution à l'étage LI peut dépendre de la présence dans l'étage MEM d'une instruction de branchement compliquant le fonctionnement du pipeline.

Next: Les aléas Up: Pipeline de base Previous: Pipeline à 3 étages