Corrigé
Transcription
Corrigé
ELE1300 – Hiver 2007 - Examen final - Corrigé 1/11 Question 1 – Format des nombres (2,5 pts – 15 minutes) 1) Pour les nombres entiers suivants, représentés sous format binaire signé (complément à 2), donner la valeur décimale : a) 1111 -1 b) 1001 -7 c) 0110 +6 d) 1101 -3 e) 0011 +3 2) Pour les nombres entiers suivants, représentés en décimal, donner la représentation en format binaire signé avec le minimum de bits possible : a) – 10 10110 b) – 64 100 0000 c) +1,5 01,1 d) –15 1 0001 e) –8 1000 Question 2 – Opérations sur les nombres (2 pts – 15 minutes) Consignes : Tous les nombres sont donnés en format binaire signé. Indiquer les bits de retenue en utilisant les cases disponibles (sur la première ligne). Si il y a débordement, le préciser et donner le résultat correct en ajoutant 1 bit supplémentaire (dans la grille de droite). Exemple : 10- 01 + = 10 + 11 1 0 1 0 1 1 1 0 1 Débordement ? OUI Équivalent décimal : (-2) -(1) = -3 + Résultat : 101 1 1 1 1 1 1 0 1 0 1 1 0 1 ELE1300 – Hiver 2007 - Examen final - Corrigé 1) 110 – 1010 : 1110 – 1010 : 1110 + 0110 1 1 + 0 1 0 1 1 1 0 1 1 0 1 0 0 Débordement ? NON Résultat : 0100 Équivalent décimal : (–2) – (–6) = +4 2) 010 + 010 1 0 1 0 + 0 1 0 0 1 0 0 Débordement ? OUI + 1 0 0 1 0 0 0 1 0 0 1 0 0 Résultat : 0100 Équivalent décimal : (+2) + (+2) = +4 3) 011,1 – 10,11 : 011,10 – 110,11 : 011,10 + 001,01 1 0 + 0 0 1 0 0 + 0 0 0 1 1 1 , 1 0 0 1 , 0 1 0 0 , 1 1 Débordement ? OUI Résultat : 0100,11 Équivalent décimal : (+3,5) – (–1,25) = +4,75 4) 101,1 + 111,001 : 101,100 + 111,001 1 1 + 1 1 1 1 0 1 , 1 0 0 1 1 , 0 0 1 0 0 , 1 0 1 Débordement ? NON Résultat : 100,101 Équivalent décimal : (–2,5) + (–0,875) = –3,375 1 0 0 1 1 1 1 , 1 0 0 1 , 0 1 0 0 , 1 1 2/11 ELE1300 – Hiver 2007 - Examen final - Corrigé 3/11 Question 3 – Changements de base (2 pts – 15 minutes) Exprimez 2355 (8) en base 16 2355(8) = 010 011 101 101(2) = 0100 1110 1101(2) = 4ED(16) Écrivez la valeur de 1/4 en base 8 1/4 = 2/8 = 0.2(8) Exprimez 102,11(3) en base 9 102,11(3) = 1 02 ,11(3) = 12,4(9) Exprimez 111(2) en base 7 111(2) = 7(10) = 10(7) Question 4 – Détection / Correction d’erreurs (2 pts – 15 minutes) Vous recevez un code utilisant la parité orthogonale pour la détection et la correction d’erreurs. A) Détecter et corriger une erreur si elle existe sur les bits suivants : 1 1 0 1 0 0 0 1 1 0 0 0 1 0 1 0 0 0 1 0 1 On détecte une erreur. En corrigeant, on obtient : 1 1 0 0 0 0 0 1 1 Le message de départ était donc 1000 1010 B) Plus tard, vous apprenez que le message d’origine est en vérité le suivant et que le code reçu comportait trois erreurs : 1 1 0 0 0 1 0 1 0 0 0 1 1 0 0 Confirmer/infirmer vos résultats sur la base de cette donnée et discuter le phénomène. Le système a détecté une erreur mais l’a mal corrigée. La parité orthogonale permet de détecter et de corriger une seule erreur. Le fait que trois bits aient subi une altération dépasse les limites du système. ELE1300 – Hiver 2007 - Examen final - Corrigé Question 5 – Chronogramme des Bistable/Bascules (1,5 pts – 15 minutes) Considérant le circuit suivant : où Q1, Q2 sont les sorties de deux bistables D mises en cascade et Q3 celle d’une bascule D. Compléter le chronogramme suivant : 4/11 ELE1300 – Hiver 2007 - Examen final - Corrigé 5/11 Question 7 – Analyse de circuit (3 pts – 20 minutes) On considère le circuit séquentiel suivant, dont les bits d’états sont Q1 et Q0. On suppose que x ne change pas durant le même cycle d’horloge (entrée synchrone). 1) Donner l’expression booléenne de l’entrée de la bascule T (T1) en fonction de l’entrée x et des bits d’états Q1 et Q0. T1 = x D0 = Q1 2) Donner l’expression booléenne de la sortie s en fonction de x et des bits d’états Q1 et Q0. s = x+Q1+Q0 3) En utilisant les résultats de (1), donner l’expression des bits des états futurs (Q1+ et Q0+) en fonction de l’entrée x et des bits d’états Q1 et Q0. Q1+ = T1 ⊕ Q1 = x ⊕ Q1 Q0+ = D0 = Q1 4) À l’aide des résultats obtenus, remplir la table de transitions suivante : État actuel (Q1Q0) 00 01 11 10 État futur (Q1+Q0+) x 0 1 00 10 00 10 11 01 11 01 s x 0 1 0 0 0 1 0 0 0 0 ELE1300 – Hiver 2007 - Examen final - Corrigé 5) Dessiner le diagramme d’état de la machine considérée Les états (Q1Q0) sont : 00 ≡ E0 ; 01 ≡ E1 ; 10 ≡ E2 ; 11 ≡ E3 6) Compléter le chronogramme suivant 6/11 ELE1300 – Hiver 2007 - Examen final - Corrigé 7/11 Question 8 – Analyse de diagramme d’état (2 pts – 15 minutes) Soit le graphe d’états suivant d’une machine de Moore où X signifie facultatif. Écrire sa table de transition d’états et sorties. État présent A B C D Entrée = 00 D A A C État suivant Entrée = 01 Entrée = 10 B D C C A D C C Compléter le chronogramme suivant : Entrée = 11 B C D C Sortie 0 0 0 1 ELE1300 – Hiver 2007 - Examen final - Corrigé 8/11 Question 9 – Simplification des états (2 pts –20 minutes) Soit la table de transition d’états et sorties suivante d’une machine de Mealy. Étudiez la compatibilité entre les états et écrivez la nouvelle table simplifiée. État Présent A B C D E F G H B C D E F G H État suivant Entrée = 0 Entrée = 1 F A C B G F H C G E G F A D E A Sortie Entrée = 0 0 0 0 1 0 0 0 0 Entrée = 1 0 0 1 0 1 1 0 0 (C,F) X X X X X (A,F) (A,D) (E,F) A X X X X X X √ X √ X X X X X X X X X X (E,F) (A,C) (B,D) (C,E) (A,B) B (A,E) (A,D) C D E F On trouve A=B, A=H, B=H, C=E, C=F, E=F. Ainsi A = (A,B,H) C = (C,E,F) État Présent A C D G État suivant Entrée = 0 C G A A Entrée = 1 A C C D Sortie Entrée = 0 0 0 1 0 Entrée = 1 0 1 0 0 G ELE1300 – Hiver 2007 - Examen final - Corrigé 9/11 Question 10 – Conception de diagramme d’état (3 pts – 20 minutes) Vous devez concevoir un circuit à intégrer dans un réveille-matin. Votre rôle est de faire le circuit (machine à états) gérant le bouton de temporisation du réveil (snooze). Le circuit prend deux entrées (x et y) et deux sorties (s1 et s2). L’entrée x est reliée au bouton snooze permettant de temporiser le réveil et d’arrêter la sonnerie sur l’intervalle. L’entrée y vaut 1 lorsque le temps de temporisation est terminé et indique que le réveille-matin doit sonner de nouveau. La sortie s1 initialise un compteur lorsqu’elle vaut 1. La sortie s2 force la sonnerie du réveil lorsqu’elle prend la valeur 1 sur au moins une période d’horloge. Voici la description du fonctionnement de la machine à concevoir : Lorsque l’usager appuie sur le bouton snooze (x = 1), la sortie s1 doit initialiser le compteur en prenant la valeur 1 sur au moins une période d’horloge. Le circuit ne réagit plus alors à l’entrée x et se met en attente du signal y=1. Lorsque cela est fait, la sortie s2 doit prendre la valeur 1 pour déclencher la sonnerie et le circuit se remet en état d’attente. 1) Dessiner le diagramme d’état du circuit de sorte que l’on ait une machine de Moore avec un minimum d’états. 2) Dessiner le diagramme d’état du circuit de sorte que l’on ait une machine de Mealy avec un minimum d’états. ELE1300 – Hiver 2007 - Examen final - Corrigé 3) Dessinez un circuit logique capable d’implémenter une des deux machines (au choix). Implémentation Moore : Implémentation Mealy : 10/11 ELE1300 – Hiver 2007 - Examen final - Corrigé 11/11 Question Bonus : Concevoir le circuit de la question 10 avec une bistable SR et autant de portes logiques que désiré. En s’inspirant du diagramme de la machine de Mealy et en supposant que x et y ne prennent pas la valeur 1 en même temps, une implémentation possible serait la suivante : Question – trop facile (0 pts – 2h30) Ajouter votre figurine South Park aux personnages (Jean-Pierre David et Tarek Ould Bachir) ci-dessous Bonne chance et bonnes vacances ☺