ELE1300 – Automne 2016 - Intra 1/8 NOM: Prénom : Matricule : VousavezdroitàUNEfeuillerecto-verso(RIENd’autres). Répondezdanslecahierd’examen(etsurlequestionnairesidésiré). Question 1 — Notation binaire (2 pts) a) Donnez la représentation en base 2 (signé) des nombres décimaux suivants (utilisez un nombre minimal de bits): a. 162 = 1010 0010 => (signé?) => 0 1010 0010 (1010 0010 accepté) b. -38 = -10 0110 => (signé ?) => - 010 0110 => (2’C) => 101 1010 (-10 0110 accepté) b) Donnez la représentation en base 10 des nombres binaires (signés) suivants : a. 1101 0101 => (2’C) => - 0010 1011 => - 0x2B => - 43 (213 accepté, -85 accepté) b. 0 1010 1111 => 0 1010 1111 => 0xAF => 175 c) On veut représenter en base 2 un nombre quelconque compris entre -132.5 et +125.0, avec une précision de +/- 0.25. Combien de bits aurons-nous besoin ? - 132 nécessite 8 bits (125 nécessite que 7 bits) - le signe nécessite un bit de plus, - la précision demandée nécessite 2 bits, Donc, 8+1+2 = 11 bits. Question 2 – Algèbre de Boole (3 pts) De façon stricte, on définit un système mathématique (Givone, p.62) par un ensemble d’éléments, un ensemble d’opérations sur ces éléments, et un ensemble de postulats. Les postulats qui suivent sont un des ensembles possibles pour définir une algèbre de Boole, où : a) « B » est un ensemble d’éléments, et x, y, et z sont trois éléments quelconques de « B », b) « + » et « • » sont les 2 opérations possibles, c) « = » est un signe qui indique une équivalence, d) « ( ) » permet d’ordonner l’exécution d’une séquence d’opérations. POSTULATS P1. Fermeture P2. Élément identité P3. Commutativité P4. Distributivité P5. Complémentarité P6. « Variété » (a) (b) x+y ÎB x • y ÎB x+0= 0+x=x x • 1=1•x=x x+y= y+x x • y=y•x x + (y • z) = (x + y) • (x + y) x • (y + z) = (x • y) + (x • z) x + /x = 1 x • /x = 0 Il existe au moins deux éléments x et y, tel que x ¹ y a) En utilisant QUE les 6 postulats suivants, démontrez les 3 égalités suivantes : a. x + 1 = 1 = 1 * (x + 1) = (x + /x) * (x + 1) = x + (/x * 1) = x + /x = 1 ELE1300 – Automne 2016 - Intra 2/8 b. x • 0 = 0 = 0 + (x*0) = (x * /x) + (x * 0) = x * (/x + 0) = x * /x = 0 c. /(/x) = x = 1 * //x = (x + /x) * //x = (x * //x) + (/x * //x) = x * //x = x * //x + x * /x = x * (//x + /x) = x Question 3 – Portes logiques (3 pts) a) On sait que les portes à 2 entrées NAND et NOR sont des portes universelles. Est-ce que la porte XOR peut aussi être considérée comme une porte universelle ? Démontrez-le. NON, et il y a plusieurs façons de le démontrer. On doit garder à l’esprit qu’il n’existe que 16 portes différentes possibles (Pk (k=1..16)) à 2 entrées (P,Q)). La façon la plus simple est de montrer que le résultat d’une de ces portes ne peut être obtenue si on ne dispose QUE de portes XOR(P,Q). • • SI on ne dispose pas de « 1 » a priori, ALORS, on ne pourra obtenir « /P », ni « /Q », (ni plein d’autres portes (ou TdV)). • • SI on dispose a priori de « 1 », ALORS, on peut obtenir tous les inverses (avec XÅ1 = /X). Cependant, on ne pourra obtenir rien d’autres… En effet, si on définit R= PÅQ, alors : o /PÅQ = /R o /PÅ/Q = R o RÅP = Q o RÅQ = P o RÅR= 0 o /RÅR= 1 o RÅ1 = /R o RÅ0 = R b) Combien de TdV (table de vérité) différentes peut-on avoir si on a 5 « variables » (en entrée). Avec 5 variables, on a 25 = 32 combinaisons de variables différentes en entrée, i.e. des TdV de 32 lignes. Il y a donc 232 TdV possibles (…ou 4,294,967,296 !!!). ELE1300 – Automne 2016 - Intra 3/8 c) Dans une pièce, il y a 3 portes. Près de chacune d’elle, il y a un interrupteur qui permet d’inverser l’état de la lumière du plafonnier de cette pièce. Si on nomme ces interrupteurs A, B, C, alors écrivez la table de vérité de ce système. A B C Lumière 0 0 0 0 0 0 1 1 0 1 1 0 0 1 0 1 1 1 0 0 1 1 1 1 1 1 0 0 1 0 0 1 Les états 0/1 peuvent évidemment représenter une lumière fermée/ouverte, ou vice-versa… o En fait Lumière = A Å B Å C (ou son inverse) Question 4 – Circuits et équations logiques (4 pts) a) Écrivez l’équation Booléenne du circuit suivant : F = { z * /[ (w + /x) * (w + y) ] } + { /y * (w + y) } Ou écrit autrement… 𝑭 = 𝒛 ∗ 𝒘 + 𝒙 𝒘 + 𝒚 + 𝒚 ⋆ 𝒘 + 𝒚 b) Dessinez le diagramme (circuit) logique de l’expression Booléenne suivante (vous disposez des variables et de leur complément): F(v,w,x,y,z) = (x + y) { /v + ( /w + y ) [ v + ( /w + z )( /v + x + z ) ] } ELE1300 – Automne 2016 - Intra 4/8 c) Re-dessinez le diagramme logique de l’expression Booléenne de la Question 4b), mais en utilisant que des NAND à 2 entrées ELE1300 – Automne 2016 - Intra 5/8 d) Montrez que : å m(0,1,2,3,7) = Õ M(4,5,6) Il n’y a que 8 expressions différentes (0 à 7)… Il faut donc faire une TdV pour les deux équations… et on obtient la même TdV… : m/M 0 1 2 3 4 5 6 7 X1 0 0 0 0 1 1 1 1 X2 0 0 1 1 0 0 1 1 X3 0 1 0 1 0 1 0 1 å m(0,1,2,3,7) 1 1 1 1 0 0 0 1 Õ M(4,5,6) 1 1 1 1 0 0 0 1 å m(0,1,2,3,7) = /X1 + X2X3 Õ M(4,5,6) = (/X1 + X3) (/X1 + X2) e) Si : F = (x + y) (y + z) ( /x + z), G= (x + y) (y + z), Alors : quelle fonction est impliquée par l’autre (F implique G, ou l’inverse) ? On observe que F = G * (/x + z), alors F=1 implique que G = 1… ou encore que G est impliquée par F. Question 5 – Simplification via Karnaugh (3 pts) a) Faites la conception d’un circuit logique (avec des portes à 2 entrées) de coût minimal, possédant 3 entrées et une sortie. La sortie prend la valeur du bit majoritaire en entrée. a b c S A \BC 00 01 11 10 0 0 0 1 0 0 0 0 0 1 0 1 1 1 0 0 1 0 0 1 0 0 Donc : 0 1 1 1 1 0 0 0 F = (AC + AB) + BC … coût=20 1 0 1 1 1 1 0 1 ou encore (avec un maximum de NAND) : 1 1 1 1 F = /[ ( /(AC) /(AB) ) /(BC) ] … coût=16 ELE1300 – Automne 2016 - Intra 6/8 b) Déterminez le produit de sommes (POS) minimal correspondant au tableau de Karnaugh suivant : YZ WX 00 0 1 1 0 00 01 11 10 01 1 0 1 11 1 0 10 1 1 1 0 POS = (X + Y + Z) * (/W + X + /Y) * (/X + /Z) c) Déterminez la somme de produits (SOP) minimale correspondant au tableau de Karnaugh à variable inscrite suivant : X 0 1 W 0 /y + z /y 1 yz 0 F = On peut remplacer (/y + z) par (/y + yz)… Ainsi, on peut simplifier : X W 0 1 0 /y + yz yz F = F1 + F2 =… à F = /w/y + /xyz X 1 /y 0 W 0 1 0 /y 0 X 1 /y 0 F1 = /w/y ou écrit autrement : 𝐹 = 𝑤 ∗ 𝑦 + 𝑥 ∗ 𝑦 ∗ 𝑧 W 0 1 F2 = /xyz 0 yz yz 1 0 0 ELE1300 – Automne 2016 - Intra 7/8 Question 6 – Simplification via Quine-McCluskey/Petrick (3 pts) a) Utilisez la méthode de Quine-McCluskey pour obtenir TOUS les impliquants premiers de la fonction Booléenne suivante : F(w,x,y,z) = å m(0,2,3,4,8,10,12,13,14) å m(0,2,3,4,8,10,12,13,14) = 0000 + 0010 + 0011 + 0100 + 1000 + 1010 + 1100 + 1101 + 1110 0 2 4 0000 # 0010 # 0100 # 0,2 0,4 0,8 00x0 # 0x00 # x000 # 8 3 10 12 1000 0011 1010 1100 2,3 2,10 4,12 8,10 001x x010 x100 10x0 D # # # 8,12 10-14 12,13 12,14 1x00 1x10 110x 11x0 # # E # # # # # 13 1101 # 14 1110 # 0,2,8,10 x0x0 A 0,4,8,12 xx00 B 8,10,12,14 1xx0 C Les impliquants premiers sont A, B, C, D et E, soit respectivement : 𝑥𝑧, 𝑦𝑧, 𝑤𝑧, 𝑤𝑥𝑦, 𝑤𝑥𝑦 b) Utilisez la méthode de Petrick pour déterminer la somme de produits (SOP) à coût minimal du tableau de Quine-McCluskey suivant (aucun lien avec la question 6a) ci-dessus) : variables A: B: C: D: E: Impliquants premiers /y/z x/y w/x w/y /wxz m4 * * m5 m9 * * * * * P= (A+B) (B+E) (A+C+D) (C+D) (A+B+D) (B+D) = (A+B) (B+E) (A+C+D) (C+D) (A+B+D) (B+D) = (A+B) (B+E) (C+D) (B+D) = (B+A) (B+E) (D+C) (D+B) = (B+AE) (D+BC) = BD + BBC + ADE + ABCE = BD + BC + ABCE + ADE = BD + BC + ADE On a donc 2 choix : BD ou BC : BD => x/y + w/y, ou BC => x/y + w/x m8 * * m12 m13 * * * * * ELE1300 – Automne 2016 - Intra 8/8 Question 7 – Difficile (2 pts) À l’aide des seuls postulats mentionnés à la Question 2, démontrez le théorème d’associativité, soit : (x + y) + z = x + (y + z) Voici une solution possible. SI: A = (x + y) + z B = x + (y + z) Montrons que : x*A = x*B ALORS: 1*A = 1*B (x+/x) * A = (x+/x) * B x*A = ? = x*B x*A = x*((x + y) + z) = x*(x + y) + x*z = (0 + x) * (x + y) + x*z = x + (0 * y) + x*z = x + x*z = x /x*A = /x*B /x*A = ? = /x*B /x*A = /x * ((x + y) + z) = /x * (y+z) /x*B = /x * (x + (y + z)) = /x * (y+z) x*B = x*( x + (y + z)) = (x + 0)*(x + (y + z)) = x + (0 * (y + z)) = x Donc, x*A = x*B Donc, /x*A = /x*B