ch3_algebreboole

Upload: abdou-el

Post on 18-Jan-2016

1 views

Category:

Documents


0 download

DESCRIPTION

,jn

TRANSCRIPT

  • Chapitre 3 :Algbre de Boole

    Dfinition des variables et fonctions logiques Les oprateurs de base et les portes logiques . Les lois fondamentales de lalgbre de Boole

  • 1. Introduction Les machines numriques sont constitues dun ensemble de circuits lectroniques.Chaque circuit fournit une fonction logique bien dtermine ( addition, comparaison ,.).

    La fonction F(A,B) peut tre : la somme de A et B , ou le rsultat de la comparaison de A et B ou une autre fonction

  • Pour concevoir et raliser ce circuit on doit avoir un modle mathmatique de la fonction ralise par ce circuit .

    Ce modle doit prendre en considration le systme binaire.

    Le modle mathmatique utilis est celui de Boole.

  • 2. Algbre de BooleGeorge Boole est un mathmaticien anglais ( 1815-1864).

    Il a fait des travaux dont les quels les fonctions ( expressions ) sont constitus par des variables qui peuvent prendre les valeurs OUI ou NON .

    Ces travaux ont t utiliss pour faire ltude des systmes qui possdent deux tats sexclus mutuellement :Le systme peut tre uniquement dans deux tats E1 et E2 tel que E1 est loppos de E2. Le systme ne peut pas tre dans ltat E1 et E2 en mme temps

    Ces travaux sont bien adapts au Systme binaire ( 0 et 1 ).

  • Exemple de systmes deux tats Un interrupteur est ouvert ou non ouvert ( ferm )Une lampe est allume ou non allume ( teinte )Une porte est ouverte ou non ouverte ( ferme )

    Remarque :

    On peut utiliser les conventions suivantes :

    OUI VRAI ( true ) NON FAUX ( false) OUI 1 ( Niveau Haut ) NON 0 ( Niveau Bas )

  • 3. Dfinitions et conventions3.1. Niveau logique : Lorsque on fait ltude dun systme logique il faut bien prciser le niveau du travail.

    Exemple :Logique positive : lampe allume : 1 lampe teinte : 0Logique ngative lampe allume : 0 lampe teinte : 1

    Niveau Logique positiveLogique ngativeH ( Hight ) haut 1 0L ( Low ) bas 0 1

  • 3.2. Variable logique ( boolenne ) Une variable logique ( boolenne ) est une variable qui peut prendre soit la valeur 0 ou 1 . Gnralement elle est exprime par un seul caractre alphabtique en majuscule ( A , B, S , )

    Exemple :

    Une lampe : allume L = 1 teinte L = 0

    Premier interrupteur ouvert : I1 =1

    ferm : I1 =0

    2me interrupteur ouvert : I2=1

    ferm : I2=0

  • 3.3. Fonction logiqueCest une fonction qui relie N variables logiques avec un ensemble doprateurs logiques de base.

    Dans lAlgbre de Boole il existe trois oprateurs de base : NON , ET , OU.

    La valeur dune fonction logique est gale 1 ou 0 selon les valeurs des variables logiques.

    Si une fonction logique possde N variables logiques 2n combinaisons la fonction possde 2n valeurs.

    Les 2n combinaisons sont reprsentes dans une table qui sappelle table de vrit ( TV ).

  • Exemple dune fonction logiqueLa fonction possde 3 variables 23 combinaisons Une table de vrit

    ABCF00000011010001111000101111001111

  • 4. Oprateurs logiques de base 4.1 NON ( ngation )NON : est un oprateur unaire ( une seule variable) qui pour rle dinverser la valeur dune variable .

    F(A)= Non A = ( lire : A barre )

    A0110

  • 4.2 ET ( AND )Le ET est un oprateur binaire ( deux variables) , pour rle de raliser le Produit logique entre deux variables boolennes. Le ET fait la conjonction entre deux variables.Le ET est dfini par : F(A,B)= A . B

    ABA . B000010100111

  • 4.3 OU ( OR )Le OU est un oprateur binaire ( deux variables) , pour rle de raliser la somme logique entre deux variables logiques.Le OU fait la disjonction entre deux variables.Le OU est dfini par F(A,B)= A + B ( il ne faut pas confondre avec la somme arithmtique )

    ABA + B000011101111

  • Remarques Dans la dfinition des oprateurs ET , OU , nous avons juste donner la dfinition de base avec deux variables logiques.

    Loprateur ET peut raliser le produit de plusieurs variables logique ( ex : A . B . C . D ).

    Loprateur OU peut aussi raliser la somme logique de plusieurs variables logiques ( ex : A + B + C +D).

    Dans une expression on peut aussi utiliser les parenthses.

  • 4.4 Prcdence des oprateurs ( priorit des oprateurs )Pour valuer une expression logique ( fonction logique) : on commence par valuer les sous expressions entre les parenthses. puis le complment ( NON ) , en suite le produit logique ( ET ) enfin la somme logique ( OU)

    Exemple : Exercice : Trouver la table de vrit de la fonction prcdente ?

  • Solution Pour trouver la table de vrit , il faut trouver la valeur de la fonction F

    pour chaque combinaisons des trois variables A, B , C3 variables 2 3 = 8 combinaisons

    ABCF00000011010101111000101111001110

  • 4.5 Lois fondamentales de lAlgbre de BooleLoprateur NON

  • Loprateur ET

  • Loprateur OU

  • Distributivit

    Autres relations utiles

  • 5. Dualit de lalgbre de BooleToute expression logique reste vrais si on remplace le ET par le OU , le OU par le ET , le 1 par 0 , le 0 par 1.

    Exemple :

  • 6. Thorme de DE-MORGANE

    Le produit logique compliment de deux variables est gale au somme logique des complments des deux variables.

    La somme logique complimente de deux variables est gale au produit des complments des deux variables.

  • 6.1 Gnralisation du Thorme DE-MORGANE N variables

  • 7. Autres oprateurs logiques 7.1 OU exclusif ( XOR)

  • 7.2 NAND ( NON ET )

  • 7.3 NOR ( NON OU )

  • 7.4 NAND et NOR sont des oprateurs universels

    En utilisant les NAND et les NOR on peut exprimer nimporte quelle expression ( fonction ) logique.

    Pour cela , Il suffit dexprimer les oprateurs de base ( NON , ET , OU ) avec des NAND et des NOR.

  • 7.4.1 Ralisation des oprateurs de base avec des NOR

  • ExerciceExprimer le NON , ET , OU en utilisant des NAND ?

  • 7.4.3 Proprits des oprateurs NAND et NOR

  • 8. Portes logiques Une porte logique est un circuit lectronique lmentaire qui Permet de raliser la fonction dun oprateur logique de base .

    A

    B

    A+B

    Porte OU

    1

    Inverseur

    A

    B

    A . B

    Porte ET

  • Remarque :Les portes ET , OU , NAND , NOR peuvent avoir plus

    que deux entresIl nexiste pas de OU exclusif plus de deux entres

    A

    B

    Porte NOR

    A

    B

    Porte NAND

    A

    B

    Porte XOR

  • Exemple18.1 Schma dun circuit logique ( Logigramme)Cest la traduction de la fonction logique en un schma lectronique.Le principe consiste remplacer chaque oprateur logique par la porte

    logique qui lui correspond.

    1

    A

    B

    C

    F

  • Exemple 2

    1

    A

    B

    C

    D

    F

  • Exercice 1 Donner le logigramme des fonctions suivantes :

  • Exercice 2 : Donner lquation de F ?

    1

    A

    B

    C

    D

    F

  • Dfinition textuelle dune fonction logique , table de vrit , formes algbriques , simplification algbrique, table de Karnaugh

  • 1. Dfinition textuelle dune fonction logique

    Gnralement la dfinition du fonctionnement dun systme est donne sous un format textuelle .

    Pour faire ltude et la ralisation dun tel systme on doit avoir son modle mathmatique (fonction logique).

    Donc il faut tirer ( dduire ) la fonction logique a partir de la description textuelle.

  • Exemple : dfinition textuelle du fonctionnement dun systmeUne serrure de scurit souvre en fonction de trois cls. Le fonctionnement de la serrure est dfinie comme suite :

    La serrure est ouverte si au moins deux cls sont utilises.

    La serrure reste ferme dans les autres cas .

    Donner la schma du circuit qui permet de contrler louverture de la serrure ?

  • tapes de conception et de ralisation dun circuit numrique Pour faire ltude et la ralisation dun circuit il faut suivre le tapes suivantes :

    Il faut bien comprendre le fonctionnement du systme.Il faut dfinir les variables dentre.Il faut dfinir les variables de sortie.Etablir la table de vrit.Ecrire les quations algbriques des sorties ( partir de la table de vrit ).Effectuer des simplifications ( algbrique ou par Karnaugh).Faire le schma avec un minimum de portes logiques.

  • Si on reprend lexemple de la serrure :Le systme possde trois entres : chaque entre reprsente une cl.On va correspondre chaque cl une variable logique: cl 1 A , la cl 2 B , la cl 3 CSi la cl 1 est utilise alors la variable A=1 sinon A =0Si la cl 2 est utilise alors la variable B=1 sinon B =0Si la cl 3 est utilise alors la variable C=1 sinon C =0

    Le systme possde une seule sortie qui correspond ltat de la serrure ( ouverte ou ferm ).On va correspondre une variable S pour designer la sortie : S=1 si la serrure est ouverte , S=0 si elle est ferme

  • S=F(A,B,C) F(A,B,C)= 1 si au mois deux cls sont introduitesF(A,B,C)=0 si non .CircuitAS=F(A,B,C)BCRemarque :Il est important de prciser aussi le niveau logique avec lequel on travail ( logique positive ou ngative ).

  • 2. Table de vrit ( Rappel )Si une fonction logique possde N variables logiques 2n combinaisons la fonction possde 2n valeurs.

    Les 2n combinaisons sont reprsentes dans une table qui sappelle table de vrit.

  • 2. Table de vrit ( Exemple )

    ABCS00000010010001111000101111011111

  • 2.3 Extraction de la fonction logique partir de la T.VF = somme min termes

    F = produit des max termes

  • 3. Forme canonique dune fonction logiqueOn appel forme canonique dune fonction la forme ou chaque terme de la fonction comportent toutes les variables.

    Exemple :

    Il existent plusieurs formes canoniques : les plus utilises sont la premire et la deuxime forme .

  • 3.1 Premire forme canonique Premire forme canonique (forme disjonctive) : somme de produits Cest la somme des min termes.Une disjonction de conjonctions.

    Exemple :

    Cette forme est la forme la plus utilise.

  • 3.2 Deuxime forme canoniqueDeuxime forme canonique (conjonctive): produit de sommesLe produit des max termesConjonction de disjonctionsExemple :

    La premire et la deuxime forme canonique sont quivalentes .

  • Remarque 1On peut toujours ramener nimporte quelle fonction logique lune des formes canoniques.

    Cela revient rajouter les variables manquants dans les termes qui ne contiennent pas toutes les variables ( les termes non canoniques ).

    Cela est possible en utilisant les rgles de lalgbre de Boole :Multiplier un terme avec une expression qui vaut 1 Additionner un terme avec une expression qui vaut 0Par la suite faire la distribution

  • Exemple :

  • Remarque 2Il existe une autre reprsentation des formes canoniques dune fonction , cette reprsentation est appele forme numrique.R : pour indiquer la forme disjonctiveP : pour indiquer la forme conjonctive.

    Exemple : si on prend une fonction avec 3 variables

  • Remarque 3 : dterminer F

    ABCF0000100101010010111010001101101101011110

  • Exercice 1 Dterminer la premire , la deuxime forme canonique et la fonction inverse partir de la TV suivante ? Tracer le logigramme de la fonction ?

    ABF000011101110

  • Exercice 2Faire le mme travail avec la T.V suivante :

    ABCS00000011010101111000101111011111

  • Exercice 3

    Un jury compos de 4 membres pose une question un joueur, qui son tour donne une rponse. Chaque membre du jury positionne son interrupteur " 1 " lorsqu'il estime que la rponse donne par le joueur est juste (avis favorable ) et " 0 " dans le cas contraire (avis dfavorable ). On traite la rponse de telle faon positionner : Une variable succs (S=1) lorsque la dcision de la majorit des membres de jury est favorable, une variable chec (E=1) lorsque la dcision de la majorit des membres de jury est dfavorable et une variable galit (N=1) lorsquil y a autant d'avis favorables que d'avis dfavorables.

    Question :a./ Dduire une table de vrit pour le problme,b./ Donner les quations de S, E,c./ En dduire lquation de N,

  • 4. Simplification des fonctions logiques

  • 4. Simplification des fonctions logiquesLobjectif de la simplification des fonctions logiques est de :rduire le nombre de termes dans une fonction et de rduire le nombre de variables dans un terme

    Cela afin de rduire le nombre de portes logiques utilises rduire le cot du circuit

    Plusieurs mthodes existent pour la simplification : La Mthode algbriqueLes Mthodes graphiques : ( ex : table de karnaugh )Les mthodes programmables

  • 5. Mthode algbrique Le principe consiste appliquer les rgles de lalgbre de Boole afin dliminer des variables ou des termes. Mais il ny a pas une dmarche bien spcifique. Voici quelques rgles les plus utilises :

  • 5.1 Rgles de simplification Rgles 1 : regrouper des termes laide des rgles prcdentes

    Exemple

  • Rgles 2 : Rajouter un terme dj existant une expression

    Exemple :

  • Rgles 3 : il est possible de supprimer un terme superflu ( un terme en plus ), cest--dire dj inclus dans la runion des autres termes.

    Exemple 1 :

  • Exemple 2 : il existe aussi la forme conjonctive du terme superflu

  • Rgles 4 : il est prfrable de simplifier la forme canonique ayant le nombre de termes minimum.

    Exemple :

  • Exercice Dmontrer la proposition suivante :Donner la forme simplifie de la fonction suivante :

  • 6. Simplification par la table de Karnaugh

  • 6.1. Les termes adjacents

    Les deux termes possdent les mme variables. La seule diffrence est ltat de la variable B qui change.Si on applique les rgles de simplification on obtient :

    Ces termes sont dites adjacents.

    Examinons lexpression suivante :

  • Exemple de termes adjacents

  • La mthode de Karnaugh se base sur la rgle prcdente. La mthode consiste a mettre en vidence par une mthode graphique (un tableaux ) tous les termes qui sont adjacents (qui ne diffrent que par ltat dune seule variable).La mthode peut sappliquer aux fonctions logiques de 2,3,4,5 et 6 variables.Un tableau de Karnaugh comportent 2n cases ( N est le nombre de variables ).

    6.1 Description de la table de karnaugh

  • ABABCTableaux 3 variables Tableau 2 variables

    0101

    0001111001

  • ABCDTableau 4 variables

    0001111000011110

  • ABCDABCDTableau 5 variablesU = 0U= 1

    0001111000011110

    0001111000011110

  • ABCLes trois cases bleues sont des cases adjacentes la case rouge ABCDDans un tableau de karnaugh , chaque case possde un certain nombre de cases adjacentes.

    0001111001

    0001111000011110

  • 6.2 Passage de la table de vrit la table de Karnaugh Pour chaque combinaisons qui reprsente un min terme lui

    correspond une case dans le tableau qui doit tre mise 1 .

    Pour chaque combinaisons qui reprsente un max terme lui

    correspond une case dans le tableau qui doit tre mise 0 .

    Lorsque on remplis le tableau , on doit soit prendre les

    min terme ou les max terme

  • ABCExemple :

    ABCS00000010010001111000101111011111

    00011110011111

  • 6.3 Passage de la forme canonique la table de KarnaughSi la fonction logique est donne sous la premire forme canonique ( disjonctive), alors sa reprsentation est directe : pour chaque terme lui correspond une seule case qui doit tre mise 1.

    Si la fonction logique est donne sous la deuxime forme canonique ( conjonctive), alors sa reprsentation est directe : pour chaque terme lui correspond une seule case qui doit tre mise 0 .

  • Exemple

    ABC

    ABC

    00011110011111

    00011110000010

  • 6.4 Mthode de simplification (Exemple : 3 variables )

    ABCLide de base est dessayer de regrouper (faire des regroupements ) les cases adjacentes qui comportent des 1 ( rassembler les termes adjacents ).Essayer de faire des regroupements avec le maximum de cases ( 16,8,4 ou 2 )Dans notre exemple on peut faire uniquement des regroupements de 2 cases .

    00011110011111

  • ABCPuisque il existent encore des cases qui sont en dehors dun regroupement on refait la mme procdure : former des regroupements.Une case peut appartenir plusieurs regroupements

    00011110011111

  • ABCOn sarrte lorsque il y a plus de 1 en dehors des regroupements La fonction final est gale la runion ( somme ) des termes aprs simplification.

    00011110011111

  • Donc , en rsum pour simplifier une fonction par la table de karnaugh il faut suivre les tapes suivantes :

    Remplir le tableau partir de la table de vrit ou partir de la forme canonique.Faire des regroupements : des regroupements de 16,8,4,2,1 cases ( Les mme termes peuvent participer plusieurs regroupements ) .Dans un regroupement :Qui contient un seule terme on peut pas liminer de variables. Qui contient deux termes on peut liminer une variable ( celle qui change dtat ).Qui contient 4 termes on peut liminer 2 variables.Qui contient 8 termes on peut liminer 3 variables. Qui contient 16 termes on peut liminer 4 variables.Lexpression logique finale est la runion ( la somme ) des groupements aprs simplification et limination des variables qui changent dtat.

  • ABCExemple 1 : 3 variables

    000111100111111

  • Exemple 2 : 4 variablesABCD

    0001111000101111111101

  • Exemple 3 : 4 variablesABCD

    000111100011011111111011

  • Exemple 4 : 5 variablesABABCDU = 0U= 1CD

    0001111000101111111101

    00011110001011111111011

  • Exercice

    ABCABCDTrouver la forme simplifie des fonctions partir des deux tableaux ?

    0001111001111111

    00011110001110111101111

  • 6.5 Cas dune fonction non totalement dfinie Examinons lexemple suivant :

    Une serrure de scurit souvre en fonction de quatre cls A, B, C D. Le fonctionnement de la serrure est dfinie comme suite : S(A,B,C,D)= 1 si au moins deux cls sont utilises S(A,B,C,D)= 0 sinon

    Les cls A et D ne peuvent pas tre utilises en mme temps.

    On remarque que si la cl A et D sont utilises en mme temps ltat du systme nest pas dtermin.

    Ces cas sont appels cas impossibles ou interdites comment reprsenter ces cas dans la table de vrit ?.

  • Pour les cas impossibles ou interdites

    il faut mettre un X dans la T.V .Les cas impossibles sont reprsentes

    aussi par des X dans la table de karnaughABCD

    ABCD S0000000010001000011101000010110110101111100001001X101011011X110011101X111011111X

    00011110001011XX1111XX10111

  • Il est possible dutiliser les X dans des regroupements :Soit les prendre comme tant des 1Ou les prendre comme tant des 0Il ne faut pas former des regroupement qui contient uniquement des X

    ABCD

    00011110001011XX1111XX10111

  • ABCD

    00011110001011XX1111XX10111

  • ABCD

    00011110001011XX1111XX10111

  • ABCD

    00011110001011XX1111XX10111

  • ABCD

    00011110001011XX1111XX10111

  • Exercice 1 Trouver la fonction logique simplifie partir de la table suivante ?ABCD

    00011110001X011X1111X110X1X

  • Exercice 2Faire ltude ( table de vrit , table de karnaugh , fonction simplifie) du circuit qui nous permet de passer du codage BCD au codage EXCESS 3 ?

    Faire le mme travail pour le circuit qui permet le passage du codage EXCESS 3 au codage BCD ?

  • La figure 1 reprsente un rservoir aliment par deux vannes V1 et V2. On distingue trois niveaux : Scurit, Moyen, Haut: - lorsque le niveau de liquide est infrieur ou gale Scurit, V1 et V2 sont ouvertes. - lorsque le niveau du liquide est infrieur ou gal Moyen mais suprieur Scurit, seule V1 est ouverte.- lorsque le niveau du liquide est suprieur Moyen mais infrieur Haut, seule V2 est ouverte.- lorsque le niveau de liquide a atteint le niveau Haut, les deux vannes sont fermes. Question:Donner les quations logiques de louverture de V1 et V2 en fonction du niveau de liquide.Scurit Moyenne Haut V2V1