N°32

Examen · 20 points

Architecture des ordinateurs

Exercice 1 : Algèbre de Boole et portes universelles5 points

Question 1 : 2 pts · Question 2 : 1 pt · Question 3 : 2 pts

1. Simplifier les six expressions suivantes. La barre désigne le complément, « + » le OU et la juxtaposition le ET.

S1=(A+B)(Aˉ+Bˉ)S_1=(A+B)(\bar A+\bar B)
S2=AB+AˉBˉ+AˉBS_2=AB+\bar A\bar B+\bar AB
S3=(A+Bˉ)(A+B)+C(Aˉ+B)S_3=(A+\bar B)(A+B)+C(\bar A+B)
S4=(A+C+D)(B+C+D)S_4=(A+C+D)(B+C+D)
S5=(ABˉ+AB+AC)(AˉBˉ+AB+ACˉ)S_5=(A\bar B+AB+AC)(\bar A\bar B+AB+A\bar C)
S6=(A+Bˉ+C)(A+Cˉ)(Aˉ+Bˉ)S_6=(A+\bar B+C)(A+\bar C)(\bar A+\bar B)
  1. Calculer et simplifier les compléments de S₁, S₅ et S₆.
  2. Réaliser ces trois fonctions uniquement avec des NAND à deux entrées, puis uniquement avec des NOR à deux entrées. Tracer les logigrammes, compter les portes et comparer.
Correction de l’exercice 1

On développe avec la distributivité, puis on utilise X + X̄ = 1, XX̄ = 0 et X + XY = X.

1.1. Fonction S1

S1=AAˉ+ABˉ+BAˉ+BBˉ=ABˉ+AˉB=A⊕BS_1=A\bar A+A\bar B+B\bar A+B\bar B=A\bar B+\bar AB=A\oplus B

Les deux produits contradictoires valent zéro. Le résultat vaut 1 lorsque les deux entrées diffèrent.

1.2. Fonction S2

S2=AB+Aˉ(Bˉ+B)=AB+Aˉ=Aˉ+BS_2=AB+\bar A(\bar B+B)=AB+\bar A=\bar A+B

La dernière étape applique X + X̄Y = X + Y avec X = Ā.

1.3. Fonction S3

S3=A+BˉB+C(Aˉ+B)=A+AˉC+BC=A+C+BC=A+CS_3=A+\bar BB+C(\bar A+B)=A+\bar AC+BC=A+C+BC=A+C

Le produit (A + X)(A + Y) vaut A + XY. Puis A + ĀC = A + C et C + BC = C.

1.4. Fonction S4

S4=AB+(C+D)=AB+C+DS_4=AB+(C+D)=AB+C+D

On pose T = C + D et on utilise (A + T)(B + T) = AB + T.

1.5. Fonction S5

S5=A(Bˉ+B+C)(AˉBˉ+AB+ACˉ)=AAˉBˉ+AAB+AACˉ=AB+ACˉ=A(B+Cˉ)S_5=A(\bar B+B+C)(\bar A\bar B+AB+A\bar C)=A\bar A\bar B+AAB+AA\bar C=AB+A\bar C=A(B+\bar C)

La première parenthèse vaut A. Le terme contenant AĀ disparaît.

1.6. Fonction S6

S6=(A+Cˉ)(A+Bˉ+C)(Aˉ+Bˉ)=(A+BˉCˉ)(Aˉ+Bˉ)=ABˉ+AˉBˉCˉ+BˉCˉ=Bˉ(A+Cˉ)S_6=(A+\bar C)(A+\bar B+C)(\bar A+\bar B)=(A+\bar B\bar C)(\bar A+\bar B)=A\bar B+\bar A\bar B\bar C+\bar B\bar C=\bar B(A+\bar C)

On combine les deux premiers facteurs avec (X + Y)(X + Z) = X + YZ ; le terme ĀB̄C̄ est absorbé par B̄C̄.

2. Compléments par les lois de De Morgan

Sˉ1=ABˉ+AˉB‾=(Aˉ+B)(A+Bˉ)=AB+AˉBˉ\bar S_1=\overline{A\bar B+\bar AB}=(\bar A+B)(A+\bar B)=AB+\bar A\bar B
Sˉ5=A(B+Cˉ)‾=Aˉ+BˉC\bar S_5=\overline{A(B+\bar C)}=\bar A+\bar BC
Sˉ6=Bˉ(A+Cˉ)‾=B+AˉC\bar S_6=\overline{\bar B(A+\bar C)}=B+\bar AC

Pour compléter un produit, on obtient une somme des compléments ; pour compléter une somme, on obtient un produit. Il faut inverser chaque opérateur et chaque entrée.

3. Réalisations NAND et NOR (2 pts)

Les portes ont deux entrées. Les deux entrées d’une même porte sont reliées pour obtenir un inverseur.

S₁ avec 5 portes NANDCircuit complet avec portes américaines, entrées à gauche et sortie à droite. Les points indiquent les connexions.ABS₁
S₁ avec 5 portes NAND
S₁ avec 5 portes NORCircuit complet avec portes américaines, entrées à gauche et sortie à droite. Les points indiquent les connexions.ABS₁
S₁ avec 5 portes NOR
S₅ avec 4 portes NANDCircuit complet avec portes américaines, entrées à gauche et sortie à droite. Les points indiquent les connexions.ABCS₅
S₅ avec 4 portes NAND
S₅ avec 4 portes NORCircuit complet avec portes américaines, entrées à gauche et sortie à droite. Les points indiquent les connexions.ABCS₅
S₅ avec 4 portes NOR
S₆ avec 5 portes NANDCircuit complet avec portes américaines, entrées à gauche et sortie à droite. Les points indiquent les connexions.ABCS₆
S₆ avec 5 portes NAND
S₆ avec 3 portes NORCircuit complet avec portes américaines, entrées à gauche et sortie à droite. Les points indiquent les connexions.ABCS₆
S₆ avec 3 portes NOR
FonctionNANDNORMontage retenu
S₁55Égalité
S₅44Égalité
S₆53NOR

Les schémas reprennent le montage à cinq NAND du corrigé. En optimisant S₁ avec le montage XOR à quatre NAND, la solution NAND devient plus économique que les cinq NOR.

Exercice 2 : Simplifications et démonstrations4 points

Question 1 : 1,5 pt · Question 2 : 2,5 pts

1. Simplifier algébriquement :

S1=ABC+ABˉC+ABCˉDS_1=ABC+A\bar BC+AB\bar CD
S2=A+BC+Aˉ(Bˉ+Cˉ)(AD+C)S_2=A+BC+\bar A(\bar B+\bar C)(AD+C)
S3=(A+B+C)(A+B+Cˉ)(Aˉ+B+C)(Aˉ+B+Cˉ)S_3=(A+B+C)(A+B+\bar C)(\bar A+B+C)(\bar A+B+\bar C)

2. Démontrer les identités suivantes :

A+AˉB=A+BA+\bar AB=A+B
AC+BCˉ‾=AˉC+BˉCˉ\overline{AC+B\bar C}=\bar AC+\bar B\bar C
(A+C)(B+Cˉ)‾=(Aˉ+C)(Bˉ+Cˉ)\overline{(A+C)(B+\bar C)}=(\bar A+C)(\bar B+\bar C)
(A+B)(Aˉ+C)(B+C)=(A+B)(Aˉ+C)(A+B)(\bar A+C)(B+C)=(A+B)(\bar A+C)
Correction de l’exercice 2

1. Simplifications

S1=AC(B+Bˉ)+ABCˉD=AC+ABCˉD=A(C+BCˉD)=A(C+BD)S_1=AC(B+\bar B)+AB\bar CD=AC+AB\bar CD=A(C+B\bar CD)=A(C+BD)

B + B̄ = 1. Ensuite C + C̄X = C + X avec X = BD.

S2=A+BC+(Bˉ+Cˉ)(AD+C)=A+BC+BˉC=A+CS_2=A+BC+(\bar B+\bar C)(AD+C)=A+BC+\bar BC=A+C

On utilise A + ĀX = A + X. Dans le développement, tous les termes contenant A sont absorbés par A ; C̄C = 0. Enfin BC + B̄C = C.

S3=(A+B)(Aˉ+B)=B+AAˉ=BS_3=(A+B)(\bar A+B)=B+A\bar A=B

Chaque paire contenant C et C̄ se réduit grâce à (X + C)(X + C̄) = X.

2.a. Absorption avec un complément

A+AˉB=(A+Aˉ)(A+B)=1(A+B)=A+BA+\bar AB=(A+\bar A)(A+B)=1(A+B)=A+B

C’est la distributivité du OU sur le ET ; cette identité évite un développement plus long.

2.b. Complément d’une somme de produits

AC+BCˉ‾=(Aˉ+Cˉ)(Bˉ+C)=AˉBˉ+AˉC+BˉCˉ\overline{AC+B\bar C}=(\bar A+\bar C)(\bar B+C)=\bar A\bar B+\bar AC+\bar B\bar C
AˉBˉ=AˉBˉ(C+Cˉ)=AˉBˉC+AˉBˉCˉ\bar A\bar B=\bar A\bar B(C+\bar C)=\bar A\bar BC+\bar A\bar B\bar C

Le premier produit est absorbé par ĀC, le second par B̄C̄. Il reste donc :

AC+BCˉ‾=AˉC+BˉCˉ\overline{AC+B\bar C}=\bar AC+\bar B\bar C

2.c. Deux expressions du même complément

(A+C)(B+Cˉ)‾=AˉCˉ+BˉC\overline{(A+C)(B+\bar C)}=\bar A\bar C+\bar BC
(Aˉ+C)(Bˉ+Cˉ)=AˉBˉ+AˉCˉ+BˉC=AˉCˉ+BˉC(\bar A+C)(\bar B+\bar C)=\bar A\bar B+\bar A\bar C+\bar BC=\bar A\bar C+\bar BC

Le terme ĀB̄ est un consensus : on le multiplie par C + C̄ puis chacun des deux produits obtenus est absorbé par l’un des deux autres termes.

2.d. Théorème du consensus

(A+B)(Aˉ+C)=AC+AˉB+BC(A+B)(\bar A+C)=AC+\bar AB+BC
BC=BC(A+Aˉ)=ABC+AˉBCBC=BC(A+\bar A)=ABC+\bar ABC

ABC est absorbé par AC, et ĀBC par ĀB. Le produit des deux premiers facteurs vaut donc AC + ĀB. Ces deux termes impliquent déjà B + C : AC impose C = 1 et ĀB impose B = 1. Multiplier par B + C ne change rien.

(A+B)(Aˉ+C)(B+C)=AC+AˉB=(A+B)(Aˉ+C)(A+B)(\bar A+C)(B+C)=AC+\bar AB=(A+B)(\bar A+C)

Exercice 3 : Diagrammes de Karnaugh4 points

a : 1 pt · b : 1,5 pt · c : 1,5 pt

Simplifier X, Y et Z avec des diagrammes de Karnaugh. L’ordre des variables est ABC pour X et ABCD pour Y et Z. Les indices des mintermes sont donnés ci-dessous :

X=Σm(0,3,4,5,7)X=\Sigma m(0,3,4,5,7)
Y=Σm(0,2,3,4,6,8,9,10,12,14)Y=\Sigma m(0,2,3,4,6,8,9,10,12,14)
Z=Σm(0,4,10,11,14,15)Z=\Sigma m(0,4,10,11,14,15)
Correction de l’exercice 3

On remplit les cases en ordre de Gray 00, 01, 11, 10 : deux cases voisines ne diffèrent que d’une variable. Les bords opposés se touchent. Les groupes ont 1, 2, 4 ou 8 cases, peuvent se chevaucher, et ne contiennent que des 1. Dans chaque groupe, seules les variables constantes sont conservées.

a. Fonction X

C / AB00011110
01001
10111

Groupe {m₀,m₄} : C = 0 et B = 0, tandis que A change → B̄C̄. Groupe {m₅,m₇} : A = C = 1, B change → AC. Groupe {m₃,m₇} : B = C = 1, A change → BC. Ces trois groupes couvrent tous les 1.

X=BˉCˉ+AC+BCX=\bar B\bar C+AC+BC

b. Fonction Y

AB / CD00011110
001011
011001
111001
101101

Les colonnes CD = 00 et 10 sont voisines par les bords : leurs huit cases forment D̄. La paire {m₂,m₃} donne ĀB̄C. La paire {m₈,m₉} donne AB̄C̄. Les deux 1 avec D = 1 sont ainsi couverts, sans inclure de zéro.

Y=Dˉ+AˉBˉC+ABˉCˉ=Dˉ+Bˉ(A⊕C)Y=\bar D+\bar A\bar BC+A\bar B\bar C=\bar D+\bar B(A\oplus C)

c. Fonction Z

AB / CD00011110
001000
011000
110011
100011

Le rectangle {m₁₀,m₁₁,m₁₄,m₁₅} garde A = C = 1 : il donne AC. La paire {m₀,m₄} garde A = C = D = 0 et laisse B varier : elle donne ĀC̄D̄.

Z=AC+AˉCˉDˉZ=AC+\bar A\bar C\bar D

Exercice 4 : Formes canoniques et simplification4 points

Question 1.a : 1 pt · Question 1.b : 1 pt · Question 2 : 2 pts

À partir de la table suivante, donner la première forme canonique (somme de mintermes), puis la deuxième (produit de maxtermes). Simplifier ensuite par Karnaugh.

abcdf
00001
00011
00101
00111
01000
01011
01100
01111
10001
10011
10101
10111
11000
11010
11100
11111
Correction de l’exercice 4

1.a. Première forme canonique

On sélectionne chaque ligne où f = 1. Dans un minterme, une entrée à 0 donne la variable complémentée ; une entrée à 1 donne la variable directe. Par exemple, la ligne 0101 donne ābc̄d. L’indice vaut 8a + 4b + 2c + d.

f=Σm(0,1,2,3,5,7,8,9,10,11,15)f=\Sigma m(0,1,2,3,5,7,8,9,10,11,15)
f=aˉbˉcˉdˉ+aˉbˉcˉd+aˉbˉcdˉ+aˉbˉcd+aˉbcˉd+aˉbcd+abˉcˉdˉ+abˉcˉd+abˉcdˉ+abˉcd+abcdf=\bar a\bar b\bar c\bar d+\bar a\bar b\bar cd+\bar a\bar bc\bar d+\bar a\bar bcd+\bar ab\bar cd+\bar abcd+a\bar b\bar c\bar d+a\bar b\bar cd+a\bar bc\bar d+a\bar bcd+abcd

1.b. Deuxième forme canonique

On sélectionne les lignes où f = 0. Un maxterme doit valoir zéro sur sa ligne : on écrit une variable directe pour un bit à 0 et complémentée pour un bit à 1. Ainsi la ligne 0100 donne (a + b̄ + c + d).

f=ΠM(4,6,12,13,14)f=\Pi M(4,6,12,13,14)
f=(a+bˉ+c+d)(a+bˉ+cˉ+d)(aˉ+bˉ+c+d)(aˉ+bˉ+c+dˉ)(aˉ+bˉ+cˉ+d)f=(a+\bar b+c+d)(a+\bar b+\bar c+d)(\bar a+\bar b+c+d)(\bar a+\bar b+c+\bar d)(\bar a+\bar b+\bar c+d)

2. Simplification par Karnaugh

AB / CD00011110
001111
010110
110010
101111

Le groupe de huit cases des lignes AB = 00 et 10 (voisines par les bords) donne b̄. Le rectangle {m₁,m₃,m₅,m₇} donne ād. La colonne CD = 11 donne cd. Les groupes peuvent se recouvrir : chaque 1 doit appartenir à au moins un groupe.

f=bˉ+aˉd+cdf=\bar b+\bar ad+cd

Vérification : si b = 0, f vaut toujours 1. Si b = 1, il reste d(ā + c), qui vaut 1 seulement aux indices 5, 7 et 15, conformément à la table.

Exercice 5 : Commande de deux lampes3 points

Question 1 : 1 pt · Question 2 : 0,5 pt · Question 3 : 0,5 pt · Question 4 : 1 pt

Trois interrupteurs A, B et C commandent deux lampes R et S. La lampe R s’allume dès qu’au moins un interrupteur est activé. La lampe S ne s’allume que si au moins deux interrupteurs sont activés.

  1. Donner leur table de vérité.
  2. Donner leurs expressions.
  3. Les exprimer uniquement avec des portes NON ET (NAND).
  4. Dessiner les logigrammes correspondants.
Correction de l’exercice 5

1. Traduire les conditions

Une entrée à 1 représente un interrupteur activé et une sortie à 1 une lampe allumée. R est donc nulle uniquement pour 000 ; S vaut 1 pour 011, 101, 110 et 111.

ABCNombre activéRS
000000
001110
010110
011211
100110
101211
110211
111311

2. Équations logiques

R=A+B+CR=A+B+C
S=AˉBC+ABˉC+ABCˉ+ABC=AB+AC+BCS=\bar ABC+A\bar BC+AB\bar C+ABC=AB+AC+BC

Chaque produit AB, AC ou BC détecte une paire activée. Lorsque les trois entrées valent 1, ces trois produits valent 1 aussi : le cas 111 est donc inclus. Pour simplifier la forme canonique, on peut réutiliser ABC dans trois groupements : AB(C̄+C), AC(B̄+B), BC(Ā+A).

3. Écriture NAND

R=Aˉ Bˉ Cˉ‾,S=AB‾ AC‾ BC‾‾R=\overline{\bar A\,\bar B\,\bar C},\qquad S=\overline{\overline{AB}\,\overline{AC}\,\overline{BC}}

Les produits internes sont inversés une première fois par les portes NAND ; la NAND de sortie les inverse une seconde fois et réalise le OU par De Morgan.

4. Circuits complets en portes NAND (1 pt)

La NAND de sortie possède trois entrées, comme dans le corrigé. Chaque circuit emploie quatre portes NAND.

Circuit complet de la lampe RCircuit complet avec portes américaines, entrées à gauche et sortie à droite. Les points indiquent les connexions.ABCR
Circuit complet de la lampe R
Circuit complet de la lampe SCircuit complet avec portes américaines, entrées à gauche et sortie à droite. Les points indiquent les connexions.ABCS
Circuit complet de la lampe S