Examen #2

INF4170 -- Architecture des ordinateurs
Examen #2 (4 juillet 1996)


Durée: 17:30 - 19:00 Documentation autorisée: Toute documentation personnelle.


Nom:

Code permanent:


tex2html_wrap548 tex2html_wrap550


1. Représentation signe et magnitude (5 pts)

Soit tex2html_wrap_inline494 un nombre entier (32 bits) pour lequel la représentation signe et magnitude est utilisée (cf. TP#2). Complétez le circuit présenté à la figure 1 de façon à produire en sortie la négation arithmétique du nombre reçu en entrée, i.e., si a est reçu en entrée, alors r = -a sera produit en sortie.

   figure170
Figure 1: Circuit pour neg d'un nombre représenté en signe et magnitude

2. UAL à 1 bit (15 pts)

a) Soit l'UAL à 1 bit présentée à la figure 2. Modifiez cette UAL de façon à ce que lorsqu'un signal Operation approprié est envoyé le bit Resultat:

i)
soit égal à ``NON b'' ( tex2html_wrap_inline502 ) et ce peu importe la valeur de a;
ou
ii)
soit égal à ``a XOR b'' (ou exclusif).

Rappel: Le symbole pour XOR est le suivant:

picture241

   figure248
Figure 2: UAL à 1 bit

b) Quelles doivent être les valeurs des différents signaux de contrôle pour produire:

tabular262

c) Combien de bits seront requis, après ces modifications, pour réaliser le signal Operation?

                     1       2       3       4       5       32

3. Mise en oeuvre processeur MIPS (15 pts)

Supposons que la technologie utilisée permet les temps d'opération suivants pour les diverses unités fonctionnelles:

[5]a) Quelle serait la période minimale d'horloge pouvant être utilisée pour la mise en oeuvre à 1 cycle par instruction (section 5.3)? (Encerclez la bonne réponse.)

tabular280

[5]b) Quelle serait la période minimale d'horloge pouvant être utilisée pour la mise en oeuvre à plusieurs cycles par instruction (section 5.4), en supposant évidemment que l'on continue à utiliser la même décomposition en étapes? (Encerclez la bonne réponse.)

tabular280

[5]c) Supposons que l'on désire ajouter les opérations arithmétiques point-flottantes dans le sous-ensemble des instructions traitées par le processeur.

  1. La période d'horloge obtenue en a) (mise en oeuvre à 1 cycle) devrait-elle être:

    tabular294

  2. La période d'horloge obtenue en b) (mise en oeuvre à plusieurs cycles) devrait-elle être:

    tabular294

4. Instruction lui (10 pts)

L'instruction lui ( load upper immediate) permet de charger une constante 16 bits dans la partie haute (gauche) d'un registre, tout en mettant à 0 les 16 bits de droite. Par exemple:

  lui $12, 0x1B39              # $12 = 0x1B390000 = 0x1B39 << 16

Dans le cas de la mise en oeuvre à 1 cycle, indiquez les modifications du chemin de données nécessaires pour réaliser l'instruction lui. Indiquez (directement sur la figure à la page suivante) les modifications requises ainsi que la valeur des différents signaux devant être transmis par l'unité centrale de contrôle pour exécuter cette instruction.

Indice: L'encodage de l'instruction présentée plus haut serait le suivant:

    15  0  12  0x1B39

5. Mise en oeuvre processeurs MIPS (10 pts)

Soit la suite d'instructions suivante:

    add $8, $7, $6
    add $10, $9, $0
    lw $6, 1000($10)
    sub $5, $6, $8
    j Etiq1
    ...
  Etiq1:
    sw $5, 908($9)
    sw $10, 912($9)

Au total, pour cette suite d'instructions, 7 instructions seront exécutées.

[5]a) Combien de cycles d'horloge seront requis pour l'exécution de cette instruction dans le cas de la mise en oeuvre de la section 5.3?

[5]b) Dans le cas de la mise en oeuvre de la section 5.4, combien de cycles d'horloge seront requis pour l'exécution de cette suite d'instructions?

Remarque: Justifiez brièvement vos réponses, i.e., indiquez les calculs intermédiaires effectués pour obtenir la réponse indiquée.

6. Vrai ou faux (15 pts)

  1. Un avantage de la représentation à complément 2 est que le temps requis pour effectuer une multiplication de deux nombres entiers est le même que celui requis pour effectuer une addition ou soustraction.

    tabular396

  2. Le rôle principal de l'unité centrale de contrôle d'un processeur est de décoder l'instruction en cours d'exécution et d'envoyer les signaux appropriés au chemin de données de façon à ce que celui-ci réalise les effets requis de l'instruction en cours d'exécution.

    tabular396

  3. Dans un processeur RISC comme celui de la machine MIPS, l'opération arithmétique ou logique devant être effectuée par l'UAL est déterminée de façon unique et directe par le code opération de l'instruction.

    tabular396

  4. Un avantage d'une mise en oeuvre à plusieurs cycles d'un processeur MIPS est qu'une moins grande quantité de matériel est requis, puisque certaines unités fonctionnelles peuvent être réutilisées, en autant que cette réutilisation se fasse à des étapes distinctes.

    tabular396

  5. Pour une technologie donnée, une mise en oeuvre du processeur à 1 cycle par instruction comme à la section 5.3 est généralement plus rapideperformante qu'une mise en oeuvre utilisant un nombre variable de cycles (section 5.4), puisque le CPI de chacune des instructions étant de 1, le CPI moyen est beaucoup plus faible (1 < 4).

    tabular396

  6. Un avantage de la micro-programmation est que l'ajout d'une nouvelle instruction au répertoire des instructions de la machine est beaucoup plus facile que dans le cas d'une mise en oeuvre avec contrôle cablé.

    tabular396





Guy Tremblay
Tue Aug 27 15:33:45 EDT 1996