EXAMEN ARCHITECTURE DES ORDINATEURS TEST 05/ XX
Exercice 1 : Représentation des nombres (/6pts détaille e : 1 + 1 + 0.5 + 0.5 + 0.5 + 1 + 1.5)
- Quel est l’intervalle des entiers codables sur 10 bits en complément a 1 et complément 2 ?
Complément a 1 :
Dans le complément à 1, le bit le plus à gauche représente le signe, donc les 5 premiers bits à gauche peuvent être utilisés pour représenter les nombres négatifs et les 5 bits restants pour les nombres positifs. Le nombre le plus grand positif représentable sur 10 bits est (2^9 - 1) = 511. Le nombre le plus petit négatif représentable est -(2^9) = -512.
*** En codage complément à 1, pour représenter les entiers sur N bits, on utilise la représentation binaire habituelle pour les entiers positifs et la représentation complément à 1 pour les entiers négatifs.
Pour le complément à 1 sur N bits, le nombre le plus petit représentable est -2^(N-1) + 1, et le plus grand est 2^(N-1) - 1.
Ainsi, pour 10 bits en complément à 1, le plus petit nombre représentable est -2^(10-1) + 1 = -512 + 1 = -511, et le plus grand est 2^(10-1) - 1 = 512 - 1 = 511. Donc, l'intervalle des entiers codables sur 10 bits en complément à 1 est [-511, 511].
Complément a 2 :
L'intervalle des entiers codables sur 10 bits en complément à 2 est [-512, 511].
En complément à 2, la plage d'entiers codables sur 10 bits est déterminée par la plus petite et la plus grande valeur représentables avec 10 bits.
La plus petite valeur représentable est donnée par un nombre codé sur 10 bits avec tous les bits à 1, ce qui donne un nombre binaire égal à 1111111111
. Ce nombre représente en complément à 2 la valeur -(2^9) = -512
.
La plus grande valeur représentable est donnée par un nombre codé sur 10 bits avec tous les bits à 0, ce qui donne un nombre binaire égal à 0000000000
. Ce nombre représente en complément à 2 la valeur 2^9 - 1 = 511
.
Donc, la plage d'entiers codables sur 10 bits en complément à 2 est [-512, 511]
.
- Soit le codage IEEE − 754 simple précision sur 32 bits (float) suivant : signe : 1 bit (0 : +, 1 : -), exposant : 8 bits en excèdent 127 [-127, 128], mantisse : 23 bits; normalise.´
- Donnez les codes binaire et hexadécimal des nombres décimaux suivants : 65,25 et −333,13.
*Codage de 65,25
Conversion de 65,25 en binaire : 65,25 => 1000001,01
Normalisation : 1000001,01 = 1,000000101 x 26
Bit de signe : 0 (Nombre >0)
Exposant sur 8 bits biaisé à 127 : 134 => 10000110
Mantisse sur 23 bits : 010 1010 00000000 00000000 Le codage en virgule flottante serait : 0 10000110 010 1010 00000000 00000000. En notation hexadécimale, ce codage serait : 0x418A0000.
*Codage de -333,13
Conversion de -333,13 en binaire : -333,13 => -101001101,00101010101010101010101
Normalisation : -101001101,00101010101010101010101 = -1,011001101001010101010101010101 x 29
Bit de signe : 1 (Nombre <0)
Exposant sur 8 bits biaisé à 127 : 139 => 10001011
Mantisse sur 23 bits : 110 1101 0010101010101010101010 Le codage en virgule flottante serait : 1 10001011 110 1101 0010101010101010101010. En notation hexadécimale, ce codage serait : 0xC58B6666.
-
- Quels sont les deux plus grands (en valeur absolue) nombres positif et négatif ?
- Le plus grand nombre positif est 3.4028235 x 10^38, qui est codé comme : 0x7F7FFFFF en hexadécimal.
- Le plus grand nombre négatif est -3.4028235 x 10^38, qui est codé comme : 0xFF7FFFFF en hexadécimal.
- Quels sont les deux plus petits (en valeur absolue) nombres non nuls positif et négatif ?
- Le plus petit nombre positif est 1.1754944 x 10^-38, qui est codé comme : 0x00800000 en hexadécimal.
- Le plus petit nombre négatif est -1.1754944 x 10^-38, qui est codé comme : 0x80800000 en hexadécimal.
-
- Quel est le plus petit et le plus grand pas entre deux nombres exprimables ?
Le plus petit pas entre deux nombres exprimables en virgule flottante simple précision IEEE 754 est 1.1920928955078125 x 10^-7, qui est codé comme : 0x3F800001 en hexadécimal. Le plus grand pas est l'espace entre deux nombres codables consécutifs, qui dépend de la valeur de l'exposant.
- Compléter le tableau ci-dessous en considérant une représentation sur 8 bits.
Complément a 2
|
Octal
|
Hexadécimal
|
Decimal´
|
(00100111)2+(11100101)2
|
|
|
|
|
(71)8+(21)8
|
|
|
|
|
(0C1)16+(4F)16
|
|
|
|
|
138+117
|
Exercice 2 : Circuit Combinatoire (/6pts detaill´ e : 0.5 + 2.5 + 1 + 1 + 1)´
Test
|
Note
|
Test 1 (T1)
|
3
|
Test 2 (T2)
|
5
|
Test 3 (T3)
|
8
|
Test 4 (T4)
|
4
|
Une societ´ e propose postes d’emploi. Un grand nombre de candidats se pr´ esentent.´ Pour evaluer les comp´ etences des candidats, chacun doit passer 4 tests. Les notes´ affectees´ a chaque test sont donn` ees dans le tableau ci-contre. Un test peut´ etre soitˆ reussi, dans ce cas, le candidat rec¸oit la totalit´ e de la note accord´ ee, soit non r´ eussi,´ le candidat rec¸oit alors la note zero pour ce test. Un candidat est consid´ er´ e valable´ lorsque le total de ses notes est superieur ou´ egal´ a 10. Devant le grand nombre de candidats et afin de faciliter la tâche de correction, cette sociˆ et´ e vous demande´ de concevoir un circuit combinatoire a 4 entrees T1, T2, T3 et T4 et une sortie V . Les entrées reçoivent le résultat de chaque test (exemple : si le test 1 est réussi : T1 = 1, s’il est non réussi : T1 = 0). La sortie doit alors´ indiquer si le candidat est valable (V = 1) ou non valable (V = 0).
- Combien de ligne compte la table de vérité de ce circuit ? Nombre de ligne 24 = 16 lignes 0.5pts
- Copiez et complétez les lignes manquantes et la colonne de la table de vérité ci-contre. 2.5pts
T4
|
T3
|
T2
|
T1
|
V
|
|
T4
|
T3
|
T2
|
T1
|
V
|
0
|
0
|
0
|
0
|
0
|
1
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
1
|
0
|
1
|
0
|
0
|
1
|
0
|
0
|
0
|
1
|
0
|
0
|
1
|
0
|
1
|
0
|
0
|
0
|
0
|
1
|
1
|
0
|
1
|
0
|
1
|
1
|
1
|
0
|
1
|
0
|
0
|
0
|
1
|
1
|
0
|
0
|
1
|
0
|
1
|
0
|
1
|
1
|
1
|
1
|
0
|
1
|
1
|
0
|
1
|
1
|
0
|
1
|
1
|
1
|
1
|
0
|
1
|
0
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
- Donnez la fonction logique du circuit sous la forme normale disjonctive.
- = T4.T3.T2.T1∨T4.T3.T2.T1∨T4.T3.T2.T1∨T4.T3.T2.T1∨T4.T3.T2.T1∨T4.T3.T2.T1∨ T4.T3.T2.T1∨ T4.T3.T2.T1 1pts
- Simplifiez cette fonction logique avec la table de Karnaugh et donnez la formule simplifiee.
T4.T3
|
00
|
01
|
11
|
10
|
T2.T1
|
|
|
|
|
00
|
0
|
0
|
1
|
0
|
01
|
0
|
1
|
1
|
0
|
11
|
0
|
1
|
1
|
1
|
10
|
0
|
1
|
1
|
0
|
Pour simplifier on prend deux carres de 4, un ligne de 4 et une´ ligne de 2. On obtient : V = T3.T2 ∨ T3.T1 ∨ T4.T3 ∨
T4.T2.T11pts
- Réalisez la fonction logique avec des portes NAND.1pts
Bien observer le schéma de l’étudiant.
Exercice 3 : Circuit séquentiel (/6 pts détails : 0.5 + 1.5 + 1.5 + 1 + 1.5)
a = 0 b = 0
|
0 - 1 - 2 - 3
|
a = 1 b = 0
|
0 - 2
|
a = 0 b = 1
|
0 - 3 - 2 - 1
|
a = 1 b = 1
|
2 - 0
|
Nous souhaitons construire un compteur réversible (décomptage) synchrone modulo 4. Nous utilisons deux entrée´ a et b pour définir le mode de fonctionnement.´ a definit le pas de comptage,´ a = 0 le pas est 1 et a = 1 le pas est 2. b definit le´ mode (comptage/decomptage),´ b = 0 on incremente le pas,´ b = 1 on decr´ emente´ le pas.
Le tableau ci-dessus n’est pas exhaustif, d’autres cas peuvent apparaitre, par exemple a = 1 et b = 0 lorsque la valeur du compteur est 3, alors on incremente de´ 2 modulo 4 on obtient 1. Si b = 1 alors on decr´ emente du´ pas module 4 et on obtient encore 1. La table de verit´ e fera apparaitre tous ces cas.´
- Combien de bascule sont necessaires pour ce compteur r´ eversible? 4<= 2^2, => 2 bascules´ 0.5pts
- Dessinez le diagramme d’etats transition.´ 1.5pts
- Completez la table de transition ci-contre, ainsi que les entr´ ees des bascules´ D, sachant que Qn+1 = Dn.1.5pts
Entrees´
|
Etat pr´ esent´
|
Etat futur´
|
Bascules
|
Entrees´
|
Etat pr´ esent´
|
Etat futur´
|
Bascules
|
a
|
b
|
Q1
|
Q0
|
Q1
|
Q0
|
D1
|
D0
|
|
a
|
b
|
Q1
|
Q0
|
Q1
|
Q0
|
D1
|
D0
|
0
|
0
|
0
|
0
|
0
|
1
|
0
|
1
|
1
|
0
|
0
|
0
|
1
|
0
|
1
|
0
|
0
|
0
|
0
|
1
|
1
|
0
|
1
|
0
|
1
|
0
|
0
|
1
|
1
|
1
|
1
|
1
|
0
|
0
|
1
|
0
|
1
|
1
|
1
|
1
|
1
|
0
|
1
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
1
|
1
|
0
|
0
|
0
|
0
|
1
|
0
|
1
|
1
|
0
|
1
|
0
|
1
|
0
|
1
|
0
|
0
|
1
|
1
|
1
|
1
|
1
|
1
|
0
|
0
|
1
|
0
|
1
|
0
|
0
|
1
|
0
|
1
|
0
|
0
|
0
|
0
|
1
|
1
|
0
|
1
|
1
|
1
|
1
|
1
|
0
|
1
|
1
|
0
|
0
|
1
|
0
|
1
|
1
|
1
|
1
|
0
|
0
|
0
|
0
|
0
|
0
|
1
|
1
|
1
|
1
|
0
|
1
|
0
|
1
|
1
|
1
|
1
|
0
|
1
|
0
|
1
|
- Déterminez les´ equations des entr´ ees des bascules (en fonction des entr´ ees´ a et b ainsi que de l’etat´ present).´
a.b
|
00
|
01
|
11
|
10
|
Q1.Q0
|
|
|
|
|
00
|
0
|
1
|
1
|
1
|
01
|
1
|
0
|
1
|
1
|
11
|
0
|
1
|
0
|
0
|
10
|
1
|
0
|
0
|
0
|
D1 = Q1.a ∨ Q1.Q0.b ∨ Q1.Q0.b ∨ Q1.Q0.a.b ∨ Q1.Q0.a.b
0.5pts
a.b
|
00
|
01
|
11
|
10
|
Q1.Q0
|
|
|
|
|
00
|
1
|
1
|
0
|
0
|
01
|
0
|
0
|
1
|
1
|
11
|
0
|
0
|
1
|
1
|
10
|
1
|
1
|
0
|
0
|
D1 = Q0.a ∨ Q0.a 0.5pts
- Dessinez le circuit logique.1.5pts
Bien observer le schéma de l’étudiants.
Exercice 4 : Memoires´ (/4 pts details : 1 + 1 + 1 + 1)´
On dispose de plusieurs memoires RAM (´ M1) ayant une capacite de 2MB avec un bus de donn´ ee de 4 bits,´ une entree´ CS et une entree´ WE. On desire r´ ealiser une RAM (´ M2) ayant une capacite de 4MB. Le bus de´ commande et de donnee des deux RAM sont identiques.´
- Calculez la taille des bus d’adresse de chaque type de RAM.
La taille du bus d’adresse se détermine à partir de sa profondeur ou nombre de mots.
M1 : 2MB = 2.220 bits. Combien de mots mémoire contient cette mémoire : 2MB/4 = 2.220/22 = 219
Donc la mémoire M1 possède 19 fils d’adresse. 0.5pts
M2 : 4MB = 22.220 bits. Combien de mots mémoire contient cette mémoire : 4MB/4 = 22.220/22 = 220 Donc la mémoire M2 possède 20 fils d’adresse. 0.5pts
- Quel type d’assemblage doit-on réaliser pour obtenir la mémoire M2 ? Assemblage de deux mémoires M1 en série. 1pts
- Combien de fil d’adresse font servir à ssélectionner (CS) les puces mémoire M1 ?
Ce sont les fils d’adresse supplementaires de M2 qui vont servir a s electionner la m´ emoire´ M1 Nous aurons donc x = 20−19 = 1 soit 1 fil. 1pts
4. Donnez le schema de c´ ablageˆ 1pts
Figure 1: Schéma de c câblage montage de deux mémoires en série.