Étages IF{0-2}

Fonctionnement

À partir de l’adresse reçue depuis l’étage PC, les étages IF{0-2} sont responsables des requêtes vers la mémoire.

L’étage IF0 émet la requête vers la mémoire. L’étage IF1 est optionnel: il permet de rajouter un cycle supplémentaire entre IF0 et IF2. Cela peut s’avérer nécessaire une mémoire cache est implémentée, afin de synchroniser les différents éléments. Enfin, l’étage IF2 gère la réception des instructions depuis la mémoire. Cet étage est également optionnel, avec des registres de sorties pouvant être implémentés ou non. Finalement, une instruction peut mettre entre deux et quatre cycles entre l’étage PC jusqu’à son enregistrement dans le fetch buffer.

Si une opération nécessite un nettoyage du pipeline (e.g un flush) alors que la requête a déjà été envoyée, un signal abort permet de propager l’information. Dès que la réponse sera reçue depuis la mémoire, l’instruction sera alors annulée.

L’interface mémoire est basée le bus MB4S.