Examen Final Directives 0 Nom et prénom (1 point de bonus)

publicité
Final - ift1215
Nom:
Code:
Examen Final
IFT-1215
22 avril 2013
Directives
Documentation autorisée : une page manuscrite recto.
Pas de calculatrice, téléphone, ou autre appareil électronique autorisé.
Répondre sur le questionnaire dans l'espace libre qui suit chaque question.
Utiliser le verso de la page si nécessaire.
Chaque question vaut 5 points pour un total maximum de 25 points.
Les questions ne sont pas placées par ordre de diculté.
0
Nom et prénom (1 point de bonus)
Écrire son nom et prénom et son code permanent en haut de chaque page.
1
Final - ift1215
1
Nom:
Code:
Circuits logiques
Mettre au point un circuit séquentiel qui détecte les changements dans son
entrée. Il a 2 bits d'entrée
I0
et
I1 , une horloge, et une sortie O. À chaque cycle,
la sortie vaut 0 si les entrées étaient diérentes qu'au cycle antérieur et 1 sinon.
1. Donner la table de vérité de la partie combinatoire du circuit.
2. Dessiner le circuit avec ses portes logiques et ses registres.
2
Final - ift1215
2
Nom:
Code:
LMC
Soit l'exécution de l'instruction ADD dans LMC-0 ci-dessous :
→
cycle 0
PC
cycle 1
attendre mémoire
MAR
cycle 2
MDR
cycle 3
IR[adr]
cycle 4
attendre mémoire
cycle 5
A + MDR
cycle 6
PC + 1
→ IR
→ MAR
→
→
A
PC
1. Si ce processeur LMC-0 fonctionne à une fréquence de 50MHz et que la
mémoire a une latence de 100ns, combien d'instructions ADD le processeur
peut-il exécuter en une seconde ?
2. Si on remplace le processeur (sans toucher la mémoire) par un LMCSP super-boosté qui fonctionne en pipeline et tourne à une fréquence de
10GHz, quel est le maximum d'instructions ADD qu'il pourra exécuter en
une seconde ?
3. Si on remplace le processeur par un LMC-C identique à LMC-0 mais avec
un cache de latence 20ns, quel est le maximum d'instructions ADD qu'il
pourra exécuter en une seconde ?
4. Si on le remplace par un LMC-CP identique au LMC-C sauf qu'il fonctionne en pipeline, quel est le maximum d'instructions ADD qu'il pourra
exécuter en une seconde ?
5. Finalement, si on le remplace par un LMC-C2P identique au LMC-CP
mais qui a un deuxième cache (aussi de latence 20ns) ; i.e., un cache pour
les instructions et un pour les données. Quel est le maximum d'instructions
ADD qu'il pourra exécuter en une seconde ?
3
Final - ift1215
3
Nom:
Code:
Mémoires caches
Soit une mémoire cache de niveau 1 de type
direct-mapped (à correspondance
directe). Ce cache prend des adresses de 32bit (pour une mémoire où chaque
adresse contient un byte, comme d'habitude) et les divise en trois parties : un
index
de 9bits qui indique la ligne de cache correspondante, un
étiquette
Quelle est la taille de chaque étiquette ?
qui indique le byte dans cette ligne, et une
1.
oset
de 5bits
qui contient le reste.
2. Laquelle des trois parties contient les bits les plus signicatifs de l'adresse
(MSB), et laquelle contient les bits les moins signicatifs (LSB) ?
3. Combien de bytes peuvent être gardés dans ce cache ?
4. Si la mémoire a une latence de 100ns et une bande passante de 1GB/s,
quel est le temps nécessaire pour aller y chercher une ligne de cache ?
5. Pour une taille de cache xe, donner l'avantage principal d'augmenter la
longueur de ses ligne ; et l'avantage principal de raccourcir ses lignes.
4
Final - ift1215
4
Nom:
Code:
Performance des disques
Soit un disque dur de 1TB avec des blocs de 512B, qui tourne à 4000rpm,
avec un
seek time
moyen de 5ms et une bande passante maximale de 50MB/s.
1. Combien de temps faudra-t-il pour lire séquentiellement un chier de 1GB
disposé de manière optimale sur le disque ?
2. Combien de temps faudra-t-il si ce chier est divisé en morceaux de 1MB,
où les blocs d'un morceau sont bien placés séquentiellement, mais les morceaux sont répartis aléatoirement sur le disque ?
3. Combien de temps faudra-t-il si le chier est disposé séquentiellement
comme avant, mais qu'on le lit par blocs de 512B en commençant par la
n du chier ?
4. Combien de blocs peut-on lire par seconde (IO/s) si ces blocs sont disposés
de manière aléatoire sur le disque ?
5. Lorsqu'on fait une lecture séquentielle, combien de megabytes peut-on
transférer pendant qu'un autre disque identique saute entre deux blocs
choisis aléatoirement ?
5
Final - ift1215
5
Nom:
Code:
Entrées/Sorties
Soit une interruption qui intervient dans un serveur de calcul parce qu'un
senseur détecte une température trop élevée.
1. Qui interrompt qui ?
2. Que faudrait-il faire si l'ordinateur ne pouvait pas utiliser de telles interruptions ?
3. Dans quelle situation est-il préférable d'utiliser cette autre technique ?
4. Décrire les diverses opérations qui ont lieu dans le CPU à la réception de
cette interruption.
5. Décrire les diverses opérations qui ont lieu dans le système d'exploitation
à la réception de cette interruption.
6.
6
Téléchargement