NFA004 Final 2013 Corrigé .pdf
Nom original: NFA004-Final-2013-Corrigé.pdfTitre: Exercice 1Auteur: Abdallah EL ASMAR
Ce document au format PDF 1.5 a été généré par Microsoft® Office Word 2007, et a été envoyé sur fichier-pdf.fr le 21/08/2013 à 18:21, depuis l'adresse IP 92.62.x.x.
La présente page de téléchargement du fichier a été vue 1089 fois.
Taille du document: 329 Ko (5 pages).
Confidentialité: fichier public
Aperçu du document
Date: 16 / 7 / 2013 – Durée : 3h00
Institut des Sciences
Appliquées et Économiques
Final – 2ème semestre
ISAE – Cnam Liban
2012 - 2013
Centre du Liban Associé au CNAM de Paris
Sujet coordonné par :
Abdallah ELAsmar
Proposé pour les centres d’enseignement de :
Beyrouth – Baalbek – Tripoli – Bickfaya Nahr Ibrahim
Documents non autorisés
Corrigé - Examen Partiel de
Architecture des machines – NFA004
1.
a) (1 pt)
1000 0001
1111 1101
0011 0011
1100 0001
+ 0111 1111
+ 1000 0001
+ 0111 1111
+ 1100 0001
0000 0000
C=1;O=0
0111 1110
C=1;O=1
1011 0010
C=0;O=1
1000 0010
C=1;O=0
b) (½ pt) L’addition de deux nombres de signes différents ne produit jamais de débordement (Overflow).
L’addition de deux nombres de même signe produit un Overflow si le signe du résultat est différent du
signe des deux opérandes.
2. (1 pt)
(12.575)10 = (1100.1001 0011 0011 0011 0011. . .)2
= 1.100 1001 0011 0011 0011 0011. . .× 23
Mantisse =100 1001 0011 0011 0011 0011
Exposant = 3 +127 = 130 = 1000 0010
Nombre positif : bit de signe = 0
Complément à 2 de (12.575)10 = 0 100 0001 0 100 1001 0011 0011 0011 0011
En Hexadécimal = (41493333)16
3. (2 pts)
a) (½ pt)
A
0
0
0
0
1
1
1
1
B
0
0
1
1
0
0
1
1
C
0
1
0
1
0
1
0
1
R
0
1
1
1
1
1
1
1
S
0
0
0
1
0
1
1
1
b) ( 1 pt)
R =
+ B +
+A
+
=
( + A) + B ( + C) + A
=
+ B+ A
+ AB
=
+ B ( + A) =
+AB
+
+ A B( + C)
+B =B +C+A
1
S =
=
=
=
=
+
+
+AB
+
+ AB
+ AB
=
+ AB
=
+ AB
=
Alors, les fonctions simplifiées de R et S :
R=A+B+C
S = AB + BC + AC
c) (½ pt)
A
B
C
R
S
4.
a) (2 ½ pts)
Instruction
Micro-instructions
LOAD Im R2 120 Fetch
CORAD
Lecture
RDORI
Incrémenter CO
Execute
X R2
POP Rg1 R3
Fetch
……………..
Execute
Décrémenter RSP
RSP RAD
Lecture
RDO R3
Micro-commandes
Cycles
COsor, RADen,
LEC
RDOsor, RIen, INCO
1 cycle
2 cycles d'attente
1 cycle
Xsor, R2en
1 cycle
5 cycles
…………………………..
4 cycles
DECRSP, RSPsor, RADen 1 cycle
LEC
RDOsor, R3en
2
2 cycles d'attente
1 cycle
8 cycles
Instruction
Micro-instructions
Micro-commandes
Cycles
Fetch
ADD Rg2 R2 R3
……………..
………………………….. 4 cycles
Execute
R2Y1
R2sor, Y1en
1cycle
R3Y2
R3sor, Y2en, ADD
1cycle
Addition
Z R2
Zsor, R2en
1cycle
7 cycles
PUSH Rg1 R2
Fetch
……………..
Execute
RSPRAD
R2RDO
Ecriture
Incrémenter RSP
………………………….. 4 cycles
RSPsor, RADen
R2sor, RDOen
ECR
INCRSP
1cycle
1cycle
2 cycles d’attente
1cycle
9 cycles
b) (1½ pt)
CO
12
16
20
24
28
RI
R2
R3
LOAD Im R2 120
POP Rg1 R3
ADD Rg2 R2 R3
PUSH Rg1 R2
120
120
220
220
100
100
100
RSP
204
204
200
200
204
Case 200
100
100
Case 204
Case 208
220
5. (2½ pts)
IRR avant
ISR
IRR après
Au temps T0
Arrivée de IRQ3 (4 ms)
00001000
00001000
00000000
Au temps T2
Arrivée de IRQ6 et IRQ4 01010000
(3 ms)
00001000
01010000
Au temps T3
Arrivée de IRQ2 (4 ms)
01010100
00001100
01010000
Au temps T6
Arrivée de IRQ1 (3 ms)
01010010
00001110
01010000
Au temps T9
Fin IRQ1
01010000
00001100
01010000
Au temps T10
00001000
01110000
Au temps T11
Fin IRQ2, Arrivée de IRQ5 01110000
(2 ms)
Fin IRQ3
01110000
00010000
01100000
Au temps T14
Fin IRQ4
01100000
00100000
01000000
Au temps T16
Fin IRQ5
01000000
01000000
Au temps T19
Fin IRQ6
00000000
3
6. (3 pts)
a) (½ pt)
Nombre d’entrées = (1Mo / 64octes) / 2 = (220 /26) / 2 = 213 lignes
b) (½ pt)
4Go = 4 * 230 = 232 octets ==> Taille de l’adresse mémoire = 32 bits
c) (2 pts)
Comme les blocs ont 64 octets (26 octets), les 6 bits les moins significatifs de l'adresse seront
réservés pour le champ "No. Octet". On a 213 entrées alors 13 bits seront réservés pour le
champ "Index". L’adresse mémoire a 32 bits alors les bits restants (32 – 6 – 13 = 13 bits)
constitueront l'étiquette.
L'adresse (12345678)16 sera donc découpée comme suit :
Etiquette
Index
No. Octet
0001 0010 0011 0 100 0101 0110 01 11 1000
L'étiquette sera donc enregistrée dans l'un des deux blocs de l’entrée : (1 0001 0101 1001)2
= (1159)16
La valeur de l'étiquette est (0 0010 0100 0110)2 = (0246)16.
7. (3½ pts)
a) (½ pt)
Un bloc possède 32 mots de 8 octets = 256 octets = 28 octets alors 8 bits les moins significatifs
de l'adresse mémoire seront réservés pour le champ "No. Octet". Par suite, la taille de
l’étiquette est 16 – 8 = 8 bits.
b) (½ pt)
Taille totale du cache = 4 * ( 1
8+
Champ de
Bit de validation Bit de modification remplacement
= 4 * (16 bits + (256 * 8)bits) = 4 * (2 + 256) = 1032 octets.
c)
+
1 +
6
+
(256*8) ) =
Taille bloc
Etiquette
(2½
-
pts)
la politique de remplacement est FIFO.
Temps
0
Etiquette (16) 01
Ligne1
01
Ligne2
Ligne3
Ligne4
D
1
02
01
02
2
04
01
02
04
D
D
3
03
01
02
04
03
D
4
4
02
01
02
04
03
S
5
01
01
02
04
03
S
6
05
05
02
04
03
D
7
06
05
06
04
03
D
8
01
05
06
01
03
D
9
02
05
06
01
02
D
10
04
04
06
01
02
D
-
la politique de remplacement est LRU.
Temps
0
Etiquette (16) 01
Ligne1
01
Ligne2
Ligne3
Ligne4
D
1
02
01
02
2
04
01
02
04
D
D
3
03
01
02
04
03
D
4
02
01
02
04
03
S
5
01
01
02
04
03
S
6
05
01
02
05
03
D
7
06
01
02
05
06
D
8
01
01
02
05
06
S
9
02
01
02
05
06
S
10
04
01
02
04
06
D
8. (2½ pts)
Nombre: DS 1
Parfait :
DS 1 = 1
NonParfait: DS 1 = 0
IN D Nombre
Load Im R2 0
Load Im R3 0
Boucle:
ADD Im R3 1
Load Rg2 R4 R3
Load D R1 Nombre
SUB Rg2 R4 R1
JMPZ Test
DIV Rg2 R1 R3
MUL Rg2 R1 R3
SUB D R1 Nombre
JMPZ Somme
JMP Boucle
Somme : ADD Rg2 R2 R3
JMP Boucle
Test:
SUB D R2 Nombre
JMPZ par
OUT D NonParfait
JMP fin
Par:
OUT D Parfait
Fin:
Stop
Initialisation et Lecture
R2 : Somme de diviseurs
R3 : Compteur varie entre 1 et Nombre -1
JMPZ Test : compteur dépasse Nombre -1
JMPZ Somme : R3 est un diviseur de Nombre
Vérifier que Nombre = somme de diviseurs
5





Télécharger le fichier (PDF)
NFA004-Final-2013-Corrigé.pdf (PDF, 329 Ko)