Vous êtes sur la page 1sur 9

CHAPITRE V.

Conception de l’architecture
pipeline pour ISA MIPS

57
Chapitre V : Architecture Pipeline pour ISA MIPS

5.1. Objectifs

L’objectif de ce chapitre est :


• Concevoir un chemin de données pipeline
• Résoudre les problèmes d’aléas par plusieurs techniques
5.2. Caractéristiques de pipeline
La technique du pipeline est une technique de mise en œuvre qui permet à
plusieurs instructions de se chevaucher pendant l'exécution.
Une instruction est découpée dans un pipeline en petits morceaux appelés étage
de pipeline.
La technique du pipeline améliore le débit des instructions plutôt que le temps
d'exécution de chaque instruction.
La technique du pipeline exploite le parallélisme entre instructions d’un flot
séquentiel d’instructions.
La figure70 illustre un exemple de lavage (lavage, séchage, repassage et
rangement) en mode pipeline

Figure 70. Exemple de Lavage en pipeline

Nous rappelons les chemins de données d’architectures monocycle et multi-cycle


donnés respectivement par les figures 71 et 72.

58
Chapitre V : Architecture Pipeline pour ISA MIPS

Figure 71. Chemin de données monocycle

Figure 72. Chemin de données multicycle

Nous retenons de ces deux architectures leurs avantages à savoir utiliser deux mémoires
et deux additionneurs ( monocycle) et utiliser des registres temporaires pour les
données (multicycle). Ainsi l’architecture pipeline pour implémentation des instructions
MIPS est donnée par la figure 73

59
Chapitre V : Architecture Pipeline pour ISA MIPS

Figure 73. Chemin de données Pipeline

De plus, nous retenons l’approche que toutes les instructions MIPS aient le même
nombre d’étage (5 cycles) comme c’est le cas pour l’instructions LW (Figure 74)

Figure 74. Approche de 5 cycles pour toutes les instructions

Ainsi la représentation d’exécution en pipeline à 5 étages pour plusieurs instructions est


donnée par la figure 75.

60
Chapitre V : Architecture Pipeline
ipeline pour ISA MIPS

Figure 75.. Représentation en pipeline en 5 étages d’exécution

Les ressources disponibles pour ces étages sont données par la figure
figu 76

Figure 76.. Ressources matérielles pour pipeline en 5 étages

5.3. Problèmes et résolutions avec Pipeline à 5 étages

Il existe deux Types d’aléas (« hazards ») :

61
Chapitre V : Architecture Pipeline pour ISA MIPS

Aléas de contrôle: prendre décision avant d’évaluer la condition dans le


cas d’une instruction de saut conditionnel, la Résolution se fait par
suspension (attente) - par prédiction (correcteur)
Aléas de données: utilisation d’une donnée avant qu’elle soit prête ,
instruction dépend des résultats d ’une instruction antérieure encore
dans le pipeline. La Résolution se fait par suspension (attente) ou bien
résolus par renvoi (envoyer l’information d’un étage à un autre)
Aléas de structure: utilisation d’une même ressource plusieurs fois en
même temps. La résolution: par suspension (attente) ou ajout d’étape

5.4. Exemples d’aléas


Exemple 1 : aléas de contrôle
Soit le programme suivant

Si la condition est vérifiée le problème se situe au niveau de l’exécution des instructions


and, or et sub qui viennent de commencer à être exécuter : perte de temps
La représentation par ressources matérielles est donnée par la figure 77.

62
Chapitre V : Architecture Pipeline pour ISA MIPS

Figure 77. Représentation matérielle de l’exemple 1

1 solution par Suspension: possibilité de prendre la décision après 2 cycles par ajout de
hardwares : attendre jusqu’à ce que la décision puisse être prise.

Figure 78. Solution 1 de l’exemple 1

2éme Solution: par Prédiction

63
Chapitre V : Architecture Pipeline
ipeline pour ISA MIPS

Figure 79. Solution 2 pour l’exemple 1

Exemple 2 : Aléas de données

Le problème
roblème est la dépendance en arrière de la donnée r1

64
Chapitre V : Architecture Pipeline pour ISA MIPS

Figure 80. Exemple d’aléas de données

La solution est de “Renvoyer” résultat d ’une étape vers une autre

Figure 81. Solution de l’aléa de données

65

Vous aimerez peut-être aussi