next up previous
Next: Résumé #6: Amélioration des Up: Résumés de Organisation et Previous: Résumé #4: L'arithmétique des

Résumé #5: Le processeur: Chemin de données et contrôle

À lire: pp. 274 à 279 3/5, 281 3/4 à 293 3/4, 297 2/3 à 308 4/5, 312 à 337 1/2 (sauf le détail des divers signaux de contrôle, e.g., fig. 5.37, 5.40), 338, 339 1/2 à 341 1/5, 356 à 362 3/4.

5.1 Introduction

- Les performances d'une machine sont déterminées par 3 facteurs: le nombre d'instructions exécutées (N), le temps de cycle d'horloge (f) et le nombre de cycles par instruction (CPI). Le compilateur et l'architecture déterminent le premier facteur (N). Les 2 autres facteurs sont déterminés par la mise en oeuvre du processeur.

- Deux mises en oeuvres du noyau du jeu d'instructions MIPS -- type R (add, sub, and, or), lw, sw, beq et j -- vont être présentées:

5.2 Construction d'un chemin de données

- Chemin de données = Ensemble des composants requis pour l'exécution des diverses instructions (compteur de programme, mémoires, banc de registres, UAL, unités d'extension de signe ou de décalage) + Liens entre ces composants (flux de données, signaux de lecture et/ou écriture, multiplexeurs pour unités partagées, etc.).

- Les principaux composants requis dépendent de la tâche à effectuer:

5.3 Un schéma de mise en oeuvre simple

- Principe de base = Le temps de cycle (période d'horloge) est suffisamment long pour que toutes les opérations et transferts requis par l'exécution de n'importe quelle instruction puissent s'effectuer durant le cycle d'horloge ( tex2html_wrap_inline582 pour toute instruction: CPI = 1).

- Nécessite la duplication de certaines unités fonctionnelles, parce que toutes les opérations doivent être faites durant le même cycle. Ex.: le calcul de CP+4 et une opération arithmétique doivent être effectués durant le même cycle dans le cas d'une instruction R tex2html_wrap_inline582 1 additionneur pour le calcul de CP+4 et 1 UAL pour la réalisation de l'opération arithmétique sont requis.

- Certaines unités fonctionnelles peuvent toutefois être partagées (via multiplexeurs) lorsqu'utilisées par des instructions différentes. Ex.: la même UAL est utilisée pour l'opération arithmétique d' une instruction R et le calcul de l'adresse effective d'un rangement/chargement.

- Unité de contrôle de l'UAL: L'opération devant être effectuée par l'UAL dépend soit du code opération seulement (lw, sw, beq), soit du code opération et du champ fonction (instruction R, i.e., code op = 0). L'unité de contrôle de l'UAL reçoit donc ces deux champs, les décode et envoie ensuite le signal approprié à l'UAL:

- Unité centrale de contrôle: Décode le code opération de l'instruction et envoie les signaux de contrôle appropriés aux diverses unités fonctionnelles. Les divers signaux dépendent uniquement du code opération. (Cf. Fig. 5.21 pour une description des divers signaux de contrôle. Cf. Fig. 5.23 pour une spécification de la valeur des divers signaux selon le code opération de l'instruction.)

- Désavantage de la mise en oeuvre à un seul cycle: Pour certaines instructions, du temps est gaspillé (attente) parce que le cycle est inutilement long. Plus précisément, certaines instructions (e.g., beq, R, sw, j) peuvent s'exécuter en un temps plus court que la longueur du cycle. La durée du cycle est donc déterminée par le temps nécessaire à l'exécution de l'instruction la plus longue ( lw).

5.4 Une mise en oeuvre à plusieurs cycles d'horloge

- Principe de base = L'exécution d'une instruction est décomposée en une série d'étapes correspondant aux principales opérations des unités fonctionnelles nécessaires à l'exécution de l'instruction. Chaque étape prend un (1) cycle d'horloge et exécute un certain nombre d'actions. Selon sa complexité, une instruction requiert 3, 4 ou 5 cycles pour s'exécuter.

- Principales étapes (cf. Fig. 5.38 pour les actions associées):

  1. Extraction de l'instruction;
  2. Décodage de l'instruction et extraction des registres;
  3. Exécution, calcul d'adresse ou terminaison de branchement;
  4. Accès mémoire ou terminaison de type R;
  5. Ecriture arrière (lw).

- Unité centrale de contrôle:

- Avantages de l'approche à plusieurs cycles:

5.5 La microprogrammation: simplifier la conception du contrôle

- Microprogrammation = Technique pour la réalisation du contrôle dans le cas de la mise en oeuvre à plusieurs cycles: l'unité de contrôle est conçue comme un programme. La fonction de ce micro-programme est d'interpréter les instructions du programme objet: une instruction objet (e.g., MIPS) s'exécute via l'interprétation d'une séquence de micro-instructions. Chaque micro-instruction peut être vue comme l'encodage (direct ou complexe) des signaux devant être activés pour réaliser les tâches associées à une étape de l'exécution d'une instruction.

Note: La section 5.6 sur le traitement des exceptions n'est pas au programme.


next up previous
Next: Résumé #6: Amélioration des Up: Résumés de Organisation et Previous: Résumé #4: L'arithmétique des

Guy Tremblay
Tue Aug 27 14:04:33 EDT 1996