Chapitre 13 Circuits logiques - UQAM .Chapitre 13 Circuits logiques ... logiques, qui sont les ©l©ments

  • View
    222

  • Download
    0

Embed Size (px)

Text of Chapitre 13 Circuits logiques - UQAM .Chapitre 13 Circuits logiques ... logiques, qui sont les...

  • (13) Circuits logiques

    2006 Ph. Gabrini Page 193

    Chapitre 13 Circuits logiques

    Afin de complter tout ce qui a t vu jusqu prsent et de vous prparer une tude un peu plus profonde du matriel composant un ordinateur, nous prsentons ici une introduction aux circuits logiques, qui sont les lments de base dun ordinateur. 13.1 Algbre de Boole Les circuits logiques des ordinateurs et autres systmes numriques sont conus, et leur comportement analys au moyen de ce quon appelle lalgbre de Boole1. Lalgbre de Boole, comme toute autre algbre, comprend un ensemble dlments E (variables et constantes), un ensemble de fonctions F qui oprent sur les membres de E, et un ensemble de lois de base, appeles axiomes, qui dfinissent les proprits de E et de F. Les variables, dans une algbre de Boole, ont la valeur 0 ou 1; si une telle algbre possde n variables, il existe un ensemble de 2n permutations de ces variables. Dans cette algbre, il nexiste que trois oprations : OU logique (reprsent par le signe +), ET logique (reprsent par le signe ou une simple concatnation), et NON logique (reprsent par le signe ). Les deux premiers signes sont parfois reprsents diffremment, mais le plus et le point sont aussi utiliss dans dautres algbres; notez quil ny a rien qui corresponde la multiplication ou la division, dans lalgbre de Boole. Le troisime oprateur, celui de ngation, est parfois reprsent par une barre situe au dessus du symbole; pour des raisons de commodit, nous utiliserons lapostrophe (prime). Par exemple :

    A ET B = A B = AB A OU B = A + B NON A = A

    13.1.1 Axiomes et thormes Un axiome est une rgle fondamentale que lon doit tenir pour acquis. Le premier axiome stipule que le rsultat de toute opration boolenne, applique des variables boolennes, produit un rsultat boolen (proprit de fermeture). Les oprateurs boolens sont dfinis par les tables de vrit de la figure 13.1.

    X Y NOT X X OU Y X ET Y 0 0 1 0 0 0 1 1 1 0 1 0 0 1 0 1 1 0 1 1

    Figure 13.1 Fonctions boolennes

    1 Ainsi nomme en lhonneur du mathmaticien anglais George Boole (1815-1864) qui en a propos les principes de base dans son trait publi en 1854 : An Investigation of the Laws of Thought on Which to Found the Mathematical Theories of Logic and Probabilities

  • Notes de cours INF2170

    Page 194 2006 Ph.Gabrini

    Les identits de base de lalgbre de Boole comprennent la commutativit, lassociativit et la distributivit; elles sont donnes ci-dessous. 1 A = A 0 + A = A 0 A = 0 1 + A = 1 A A = 0 A + A = 1 A A = A A + A = A A + B = B + A A B = B A A + (B + C) = (A + B) + C A (B C) = (A B) C A (B + C) = (A B) + (A C) A + (B C) = (A + B) (A + C) Notez que la seconde loi de distributivit, qui est la dernire du lot ci-dessus, nest pas valide en algbre conventionnelle. partir de ces axiomes, on peut dduire quelques thormes qui permettent de manipuler des expressions logiques de faon plus efficace que de revenir constamment aux axiomes. Prenons quelques exemples. Thorme 1 : X + XY = X Preuve X + XY = X1 + XY utilisant 1X = X et commutativit = X(1 + Y) utilisant distributivit = X(1) car 1+Y = 1 = X Thorme 2 : X(X + Y) = XY Preuve X(X + Y) = XX + XY multiplier par X = 0 + XY car XX = 0 = XY Thorme 3 : X(X + Y) = X Preuve X(X + Y) = XX + XY multiplier par X = X + XY car XX = X = X par le thorme 1 Thorme 4 : (X + Y)(X + Y) = X Preuve (X + Y)(X + Y) = XX + XY+ XY + YY multiplier = X + XY + XY car XX = X et YY = 0 = X(1 + Y + Y) = X Thorme 5 : XY + XZ + YZ = XY + XZ Preuve XY + XZ + YZ = XY + XZ+ YZ(X + X) car X + X = 1 = XY + XZ + XYZ + XYZ multiplication = XY(1 + Z) + XZ(1 + Y) distributivit = XY(1) + XZ(1) 1 + Y = 1 = XY + XZ

  • (13) Circuits logiques

    2006 Ph. Gabrini Page 195

    Notez bien que toutes les variables dans un thorme peuvent tre remplaces par dautres variables ou expressions; ainsi, si X + XY = X, selon le thorme 1, X + XY = X, si nous remplaons X par X. De mme, vous pouvez viter certaines erreurs en faisant attention et en rflchissant. Par exemple, XY + XY nest pas gal 1, et ne peut pas tre simplifi; il en est de mme pour XY + XY. Notez que (XY) nest pas gal XY, et que(X+Y) nest pas gal X + Y. Exemple La fonction OU exclusif donne un rsultat vrai si les deux oprandes ont une valeur diffrente, et faux dans les autres cas. On veut montrer que cette fonction est associative, cest--dire que :

    A(BC) = (AB)C. Comme XY = XY+XY, on peut dvelopper le terme de gauche de la faon suivante : A(BC) = A(BC+BC) = A(BC+BC)+A(BC+BC) = A(B+C)(B+C)+ABC+ABC = ABC+ABC+ABC+ABC (AB)C = (AB+AB)C = (AB+AB)C+(AB+AB)C = ABC+ABC+(A+B)(A+B)C = ABC+ABC+(AB+AB)C (AB)C = ABC+ABC+ABC+ABC On peut aussi montrer que toute fonction logique peut tre ralise par la fonction OU exclusif et la fonction ET. Prenons un exemple : F = AB = AB+AB. Si A=0 alors F = B car 0B+1B = B. Si A = 1 alors F = B. Si une entre une porte OU exclusif est connecte un 1 logique, alors lautre entre apparat la sortie comme son complment. La porte OU exclusif agit donc comme inverseur; si on la connecte la sortie dune porte ET on obtient ce quon appelle une porte NAND; comme on peut tout engendrer avec des portes NAND (voir plus bas), il sensuit que lon peut tout engendrer avec des portes OU exclusif et ET. 13.1.2 Lois de De Morgan Deux thormes ont une importance particulire, il sagit des lois de De Morgan2 qui snoncent simplement :

    (ABC) = A + B + C (A + B + C) = ABC

    Les axiomes et les divers thormes sont utiliss pour simplifier les expressions boolennes. tablissons un nouveau thorme en utilisant les lois de De Morgan. Thorme 6 : (X + Y)(X + Z)(Y + Z) = (X + Y)(X + Z) Preuve (X + Y)(X + Z)(Y + Z) = (((X + Y)(X + Z)(Y + Z))) complmenter 2 fois car X = (X) = ((X + Y) + (X + Z) + (Y + Z)) De Morgan sur produit intrieur = (XY + XZ + YZ) De Morgan sur chaque groupe = (XY + XZ ) par le thorme 5 = (X + Y)(X + Z) De Morgan

    2 dues Augustus de Morgan (1806-1871), mathmaticien anglais.

  • Notes de cours INF2170

    Page 196 2006 Ph.Gabrini

    13.1.3 Simplification dexpressions boolennes Prenons quelques exemples dexpressions et du processus de simplification de ces expressions, lobjectif tant de rduire le nombre de termes, car, lorsque nous arriverons aux circuits on voudra minimiser le nombre de composants. Exemple 1 A+B+AB+(A+B)AB = A+B+AB+AAB+ABB = A+B+AB XX = 0 = A+B+B X+XY = X+Y = 1 X+X = 1 et X+1=1 Exemple 2 (A+B)(A+C)(B+C) = (AA+AC+AB+BC)(B+C) = (AC+AB+BC)(B+C) XX = 0 = (AC+AB)(B+C) par le thorme 5 = ABC+ACC+ABB+ABC = ABC+ABC Exemple 3 ABD+BCD+ABC+BCD+ACD = ABD+CD(B+B+A)+ABC = ABD+CD+ABC = AB(C+D)+CD = AB(CD)+CD et, par thorme 1 de 13.1.4 = AB+CD Exemple 4 ABD+AD+BCD+ABC = D(AB+A)+BCD+ABC = D(B+A)+ BCD+ABC par thorme 1 de 13.1.4 = BD+AD+ BCD+ABC = B(D+CD)+AD+ABC = B(C+D)+AD+ABC par thorme 1 de 13.1.4 = BC+BD+AD+ABC = BD+BC(1+A)+AD = BD+BC+AD Exemple 5 (A+B+C)(A+B+C)(A+B+C) = (B+C)(A+B+C) car (X+Y)(X+Y) = X = C(A+B)+BC car (X+Y)(X+Z) = XZ+XY = AC+BC+BC = AC+B(C+C) = AC+B 13.1.4 Exercices

    1) Dmontrez le thorme suivant : X+XY = X+Y. 2) Dmontrez le thorme suivant : (X+Y)(X+Z) = XZ+XY. 3) Dmontrez le thorme suivant : (X+Y)(X+Z)(Y+Z) = (X+Y)(X+Z). 4) Dmontrez le thorme suivant : (XYZ) = X+Y+Z.

  • (13) Circuits logiques

    2006 Ph. Gabrini Page 197

    5) Simplifiez lexpression : XYZ+XYZ+XYZ+XYZ. 6) Simplifiez lexpression : ((XY)(XZ)). 7) Simplifiez lexpression : (W+X+YZ)(W+X)(X+Y).

    13.2 Portes logiques Un ordinateur est compos dun certain nombre de circuits logiques et lalgbre de Boole est utilise pour modliser les circuits des dispositifs lectroniques. Les lments de base de tels circuits sont appels portes et chaque type de porte ralise une opration boolenne. En utilisant ces portes, nous appliquerons les rgles de lalgbre de Boole, pour concevoir des circuits en mesure daccomplir certaines tches. Les circuits que nous tudierons dabord donnent un signal de sortie qui dpend uniquement du signal dentre; de tels circuits nont pas de mmoire, on les appelle des circuits combinatoires.

    Figure 13.2 Portes NOT, AND, OR et circuit exemple

    Les types de portes de base ralisent les fonctions de base de lalgbre de Boole. On a ainsi des portes NON (NOT), ET (AND) et OU (OR), qui sont fonctionnellement compltes. Pour reprsenter chacun de ces types de porte, on utilise un symbole particulier, tel quillustr par la figure 13.2 (trace au moyen du logiciel libre Digital Works3 de David John Barker de luniversit de Teesside en Angleterre). Exemple

    A B C A+B BC BC ABC F G 0 0 0 1 0 0 0 0 0 0 0 1 1 1 1 0 1 1 0 1 0 0 1 0 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 1 1 1 1 0 1 1 1 1 0 1 1 0 1 1 1 1 1 1 1 0 0 0 0 0

    3 http://www.spsu.edu/cs/faculty/bbrown/circuits/howto.html

  • Notes de cours INF2170

    Page 198 2006 Ph.Gabrini

    Soit tracer le diagramme des circuits gnrant F et G partir des entres a, b et c, selon les dfinitions suivantes : F = (A+B)(BC) et G = BC+ABC. Le signe reprsente la fonction OU exclusif, o le rsultat est 1 si les deux oprandes sont diffrents. La table de vrit ci-dessus montre que F = G. La figure 13.3 donne les diagrammes correspondants ces deux fonctions.

    Figure 13.3 Circuits exemples pour les fonctions F et G On peut considrer les portes ET et NON comme tant fonctionnellement compltes, condition de pouvoir raliser la fonction OU en les utilisant. On peut y arriver en appliquant la loi de De Morgan : X + Y = (XY). De la mme faon, les opration OU et NON sont fonctionnellement compltes, car elles permettent de synthtiser lopration ET : XY = (X+Y). Pour cette raison, i