TD2 Logique combinatoire F. Touchard Architecture des ordinateurs TD 1
I – Additionneur 2 bits somme des deux variables A et B table de vérité du demi-additionneur : A B C S 1 F. Touchard Architecture des ordinateurs TD 2
I – Additionneur 2 bits additionneur complet : somme des 2 bits Aet B et de la retenue R de l'étage précédent table de vérité A B R S C 1 S= A B R+ A B R +A B R +ABR C= A BR+A B R+AB R +ABR F. Touchard Architecture des ordinateurs TD 3
I – Additionneur 2 bits simplification de C AB R 00 01 11 10 1 1 C=AB+AR+BR F. Touchard Architecture des ordinateurs TD 4
I - Additionneur 2 bit Montrer que l'on a C = A . B + A . R + B . R C=A.B+A.R+B.R C = A.B+A.R+B.R = A.B . A.R . B.R = A + B . A + R . B + R = A + A . R + B . A + B . R . B + R = A . B + A . R + A . R . B + A . R + B . A + B . A . R + B . R + B . R = A . B + A . R + B . R + A . B . R = A . B + A . R + B . R 1+ A = A . B + A . R + B . R F. Touchard Architecture des ordinateurs TD 5
I - Additionneur 2 bit Montrer que l'on peut écrire S=A⊕B⊕R S= A . B .R+ A .B. R +A. B . R +A.B.R = A B +AB R+ A B+A B R = A⊕B R+ A⊕B R =A⊕B⊕R F. Touchard Architecture des ordinateurs TD 6
I - Additionneur 2 bit Vérifier que le circuit suivant correspond bien à un tel additionneur S 1 = R. C +B. C +A C +A.B.R = A+B+R . C +A.B.R S= A+B+R . C +A.B.R = A+B+R . A B + B R + A R +ABR =A B R + A B R + A B R+ABR S 2 = A.B.+B.R+A.R C=A.B+B.R+A.R F. Touchard Architecture des ordinateurs TD 7
II - Circuit à logique majoritaire On veut réaliser un circuit à logique majoritaire sur 3 variables A, B et C : la sortie Y du circuit est à 1 si deux ou trois entrées sont à 1. Dans tous les autres cas, elle est à 0. Ecrire la table de vérité correspondante C B A Y 1 Y=AB C +A B C+ A BC+ABC 1 F. Touchard Architecture des ordinateurs TD 8
II - Circuit à logique majoritaire Simplifier Y et donner en un diagramme logique On utilise un tableau de Karnaugh pour simplifier l'expression AB C 00 01 11 10 1 Y=A.B+A.C+B.C A B C Y F. Touchard Architecture des ordinateurs TD 9
Circuit à logique majoritaire On veut réaliser un circuit à logique majoritaire sur 4 variables A3, A2, A1 et A0 : la sortie Y du circuit est à 1 si trois ou quatre entrées sont à 1. Dans tous les autres cas, elle est à 0 F. Touchard Architecture des ordinateurs TD 10
Circuit à logique majoritaire Table de vérité A3 A2 A1 A0 Y 1 Y= A 3 A 2 A 1 A 0 + A 3 A 2 A 1 A 0 + A 3 A 2 A 1 A 0 + A 3 A 2 A 1 A 0 + A 3 A 2 A 1 A 0 F. Touchard Architecture des ordinateurs TD 11
Circuit à logique majoritaire implémentation à l'aide d'un multiplexeur Y= A 3 A 2 A 1 A 0 + A 3 A 2 A 1 A 0 + A 3 A 2 A 1 A 0 + A 3 A 2 A 1 A 0 + A 3 A 2 A 1 A 0 X7 X11 X13 X14 X15 1 1 2 3 4 5 6 7 Y 8 9 10 11 12 13 14 15 A3 A2 A1 A0 F. Touchard Architecture des ordinateurs TD 12
Circuit à logique majoritaire comment implémenter la fonction avec un multiplexeur 8 voies ? Y= A 3 A 2 A 1 A 0 + A 3 A 2 A 1 A 0 + A 3 A 2 A 1 A 0 + A 3 A 2 A 1 A 0 + A 3 A 2 A 1 A 0 = A 2 A 1 A 0 + A 2 A 1 A 0 + A 2 A 1 A 0 + A 2 A 1 A 0 A 3 X7 X3 X5 X6 1 2 3 A3 Y 4 5 6 7 1 A2 A1 A0 F. Touchard Architecture des ordinateurs TD 13
Transcodeur pour afficheur Avec 7 segments on peut afficher les 16 chiffres hexadécimaux. On souhaite réaliser un transcodeur permettant d'afficher ces chiffres à partir de leur représentation binaire : 4 bits b0, b1, b2 et b3 correspondants aux symboles 0 à F Les segments sont repérés de la manière suivante : Par convention, un segment est allumé s'il est dans l'état 0 et éteint s'il est dans l'état 1 a g d c b f e F. Touchard Architecture des ordinateurs TD 14
Transcodeur pour afficheur écrire la table de vérité de ce transcodeur b3 b2 b1 b0 g f e d c b a 1 2 3 4 5 6 7 8 9 A B C D E F F. Touchard Architecture des ordinateurs TD 15
Transcodeur pour afficheur écrire la table de vérité de ce transcodeur b3 b2 b1 b0 g f e d c b a 1 2 3 4 5 6 7 8 9 A B C D E F a g d c b f e F. Touchard Architecture des ordinateurs TD 16
Transcodeur pour afficheur écrire la table de vérité de ce transcodeur b3 b2 b1 b0 g f e d c b a 1 2 3 4 5 6 7 8 9 A B C D E F a g d c b f e a g d c b f e F. Touchard Architecture des ordinateurs TD 17
Transcodeur pour afficheur écrire la table de vérité de ce transcodeur b3 b2 b1 b0 g f e d c b a 1 2 3 4 5 6 7 8 9 A B C D E F F. Touchard Architecture des ordinateurs TD 18
Transcodeur pour afficheur donner les expressions logiques définissant les 7 sorties à partir des 4 entrées on va écrire les tables de Karnaugh pour chacune des tables de vérité donnant a, b, c, d, e, f et g F. Touchard Architecture des ordinateurs TD 19
Transcodeur pour afficheur segment a b3 b2 b1 b0 00 01 11 10 1 a= b 3 b 2 b 1 b 0 + b 3 b 2 b 1 b 0 + b 3 b 2 b 1 b 0 + b 3 b 2 b 1 b 0 F. Touchard Architecture des ordinateurs TD 20
Transcodeur pour afficheur segment b b3 b2 b1 b0 00 01 11 10 1 b= b 3 b 2 b 0 + b 2 b 1 b 0 + b 3 b 1 b 0 + b 3 b 2 b 1 b 0 F. Touchard Architecture des ordinateurs TD 21
Transcodeur pour afficheur segment c b3 b2 b1 b0 00 01 11 10 1 c= b 3 b 2 b 1 + b 3 b 2 b 0 + b 3 b 2 b 1 b 0 F. Touchard Architecture des ordinateurs TD 22
Transcodeur pour afficheur segment d b3 b2 b1 b0 00 01 11 10 1 d= b 2 b 1 b 0 + b 3 b 2 b 1 b 0 + b 3 b 2 b 1 b 0 + b 3 b 2 b 1 b 0 F. Touchard Architecture des ordinateurs TD 23
Transcodeur pour afficheur segment e b3 b2 b1 b0 00 01 11 10 1 e= b 3 b 0 + b 2 b 1 b 0 + b 3 b 2 b 1 F. Touchard Architecture des ordinateurs TD 24
Transcodeur pour afficheur segment f b3 b2 b1 b0 00 01 11 10 1 f= b 3 b 2 b 0 + b 3 b 2 b 1 + b 3 b 1 b 0 + b 3 b 2 b 1 b 0 F. Touchard Architecture des ordinateurs TD 25
Transcodeur pour afficheur segment g b3 b2 b1 b0 00 01 11 10 1 g= b 3 b 2 b 1 + b 3 b 2 b 1 b 0 + b 3 b 3 b 1 b 0 F. Touchard Architecture des ordinateurs TD 26
F. Touchard Architecture des ordinateurs TD 27
Transcodeur pour afficheur Que se passerait-il si, au lieu de vouloir afficher les 16 chiffres hexadécimaux, on voulait n'afficher que les 10 chiffres décimaux ? F. Touchard Architecture des ordinateurs TD 28
Transcodeur pour afficheur Que se passerait-il si, au lieu de vouloir afficher les 16 chiffres hexadécimaux, on voulait n'afficher que les 10 chiffres décimaux ? b3 b2 b1 b0 g f e d c b a 1 2 3 4 5 6 7 8 9 A B C D E F F. Touchard Architecture des ordinateurs TD 29
Transcodeur pour afficheur Que se passerait-il si, au lieu de vouloir afficher les 16 chiffres hexadécimaux, on voulait n'afficher que les 10 chiffres décimaux ? b3 b2 b1 b0 g f e d c b a 1 2 3 4 5 6 7 8 9 A B C D E F F. Touchard Architecture des ordinateurs TD 30
Transcodeur pour afficheur Que se passerait-il si, au lieu de vouloir afficher les 16 chiffres hexadécimaux, on voulait n'afficher que les 10 chiffres décimaux ? b3 b2 b1 b0 g f e d c b a 1 2 3 4 5 6 7 8 9 A X B C D E F F. Touchard Architecture des ordinateurs TD 31
Transcodeur pour afficheur segment a b3 b2 b1 b0 00 01 11 10 1 a= b 3 b 2 b 1 b 0 + b 3 b 2 b 1 b 0 + b 3 b 2 b 1 b 0 + b 3 b 2 b 1 b 0 F. Touchard Architecture des ordinateurs TD 32
Transcodeur pour afficheur segment a au lieu de b3 b2 b1 b0 00 01 11 10 1 x a= b 3 b 2 b 1 b 0 + b 2 b 1 b 0 a= b 3 b 2 b 1 b 0 + b 3 b 2 b 1 b 0 + b 3 b 2 b 1 b 0 + b 3 b 2 b 1 b 0 F. Touchard Architecture des ordinateurs TD 33
Transcodeur pour afficheur segment e au lieu de b3 b2 b1 b0 00 01 11 10 1 x a= b 0 + b 2 b 1 e= b 3 b 0 + b 2 b 1 b 0 + b 3 b 2 b 1 F. Touchard Architecture des ordinateurs TD 34
Circuit comparateur but du circuit : comparer des nombres codés sur 4 bits codés sur des multiples de 4 bits F. Touchard Architecture des ordinateurs TD 35
Circuit comparateur A B A<B A=B A>B Table de vérité de la comparaison de 2 bits A B A<B A=B A>B F. Touchard Architecture des ordinateurs TD 36
Circuit comparateur A B A<B A=B A>B 1 Table de vérité de la comparaison de 2 bits A B A<B A=B A>B 1 A<B = A .B A=B = A . B +A.B= A⊕B = A>B + A<B A>B =A. B F. Touchard Architecture des ordinateurs TD 37
Circuit comparateur A A>B B A=B A<B F. Touchard Architecture des ordinateurs TD 38
Circuit comparateur Equations logiques pour comparer deux nombres A et B codés sur 4 bits (a3, a2, a1, a0) et (b3, b2, b1, b0) (A=B) (A>B) (A<B) ≡ a 3 = b 3 . a 2 = b 2 . a 1 = b 1 . a 0 = b 0 ≡ a 3 > b 3 + a 3 = b 3 . a 2 > b 2 + a 3 = b 3 . a 2 = b 2 . a 1 > b 1 + a 3 = b 3 . a 2 = b 2 . a 1 = b 1 . a 0 > b 0 ≡ a 3 < b 3 + a 3 = b 3 . a 2 < b 2 + a 3 = b 3 . a 2 = b 2 . a 1 < b 1 + a 3 = b 3 . a 2 = b 2 . a 1 = b 1 . a 0 < b 0 F. Touchard Architecture des ordinateurs TD 39
Circuit comparateur 31 a3 13 23 b3 32 33 A>B 34 a2 22 35 12 b2 36 A-1 = B-1 A=B A-1 > B-1 a1 11 21 b1 A<B a0 10 20 b0 F. Touchard Architecture des ordinateurs TD 40
Circuit comparateur S 1k = a k + b k S 2k = a k + b k . b k + a k + b k . a k = a k ⊕ b k 31 a3 13 23 b3 32 33 A>B 34 a2 22 35 12 b2 A-1 < B-1 36 A-1 = B-1 A=B A-1 > B-1 a1 11 21 b1 A<B a0 10 20 b0 F. Touchard Architecture des ordinateurs TD 41
Circuit comparateur S 1k = a k + b k S 2k = a k = b k 31 a3 13 23 b3 32 33 A>B 34 a2 22 35 12 b2 A-1 < B-1 36 A-1 = B-1 A=B A-1 > B-1 a1 11 21 b1 A<B a0 10 20 b0 F. Touchard Architecture des ordinateurs TD 42
Circuit comparateur S31 S32 S33 S34 S35 S36 = b 3 . a 3 + b 3 = b 2 . a 2 + b 2 . a 3 = b 3 = a 2 < b 2 . a 3 = b 3 = b 1 . a 1 + b 1 . a 2 = b 2 . a 3 = b 3 = a 1 < b 1 . a 2 = b 2 . a 3 = b 3 = b 0 . a 0 + b 0 . a 1 = b 1 . a 2 = b 2 . a 3 = b 3 = a 0 < b 0 . a 1 = b 1 . a 2 = b 2 . a 3 = b 3 = A −1 < B −1 . a 0 = b 0 . a 1 = b 1 . a 2 = b 2 . a 3 = b 3 = A −1 = B −1 . a 0 = b 0 . a 1 = b 1 . a 2 = b 2 . a 3 = b 3 = A=B F. Touchard Architecture des ordinateurs TD 43
Circuit comparateur S5 de même S6 = S36 = (A=B) S7 = (A<B) = S 31 . S 32 . S 33 . S 34 . S 35 . S 36 = S 31 + S 32 + S 33 + S 34 + S 35 + S 36 = A≤B = A>B F. Touchard Architecture des ordinateurs TD 44
Circuit barillet On souhaite synthétiser un circuit sur 4 bits nommé "Barrel Shifter". Ce circuit possède 4 entrées de données (I[0:3]) et 4 sorties de données (O[0:3]). La fonction de ce circuit est de mettre les 4 entrées en communication avec les 4 sorties, et ce, en respectant un décalage, lui-même commandé par 2 entrées de commande S[0:1]. S1 S0 O3 O2 O1 O0 00 I3 I2 I1 I0 01 10 11 F. Touchard Architecture des ordinateurs TD 45
Circuit barillet S1 S0 O3 O2 O1 O0 00 I3 I2 I1 I0 01 10 11 S1 O3 O2 O1 M01 M12 M23 M30 I0 I1 I2 I3 S0 S1 1 S1 S0 O3 O2 O1 O0 00 I3 I2 I1 I0 01 10 11 S1 O3 O2 O1 O0 I3+I0 I2+I3 I1+I2 I0+I1 1 Mij = Ii + Ij S1 O3 O2 O1 O0 M30 M23 M12 M01 1 S0 M30 M23 M12 M01 I3 I2 I1 I0 1 F. Touchard Architecture des ordinateurs TD 46