31/01/06 14:01 Yannick Herve, Wilfried Uhring, Jihad Zallat 1 Électronique Numérique Chapitre 1 Algèbre binaire Écriture et simplification des fonctions.

Slides:



Advertisements
Présentations similaires
L’électronique numérique
Advertisements

Tables de Karnaugh Table de vérité : Table de Karnaugh
Chap. 4 Recherche en Table
« 1.5. Les fonctions logiques »
Les formats Stage – Semaine 4.
LE CALCUL LITTÉRAL AU COLLÈGE
Algèbre de Boole Définitions :
Architecture des Ordinateurs
Algèbre de Boole.
Fonctions Booléennes.
Introduction à la logique
Calcul propositionnel
Système formel Nous avons introduit : signes de variables (x, y, z, …), de constantes (0, 1), d’opérations (+, ), de relations (=, ) Axiomes : ce sont.
Un parcours possible autour du calcul littéral
Fonctions Booléennes primaires
Architecture de machines Eléments de logique
Présentation Unité de codage
Programmes de calculs en 3ème
ALGEBRE DE BOOLE Mohamed Yassine Haouam
Le binaire L’historique.
3.1 Portes logiques et algèbre de Boole
Cours Systèmes logiques
Les requêtes La Requête est une méthode pour afficher les enregistrements qui répondent à des conditions spécifiques. La requête est donc un filtre.
Commande séquentielle d’un moteur
Conception et analyse des algorithmes
Identités remarquables
TP math-G-101.
Logique Combinatoire Fonction OUI Fonction NON Fonction ET Fonction OU
Algorithmes Branch & Bound
Algèbre de Boole et les Boucles
Produit vectoriel Montage préparé par : André Ross
Programmation logique Logique des prédicats du premier ordre
Révisions Logique combinatoire
1.2 COMPOSANTES DES VECTEURS
Nature, numération, code
Le codage des nombres en informatique
INITIATION AU RAISONNEMENT ALGEBRIQUE AU DEBUT DU COLLEGE
Chapitre 3bis Applications linéaires et Matrices
Transformée de Fourier discrète et transformée de Fourier rapide
Expression littérale  1) Définition
Expressions régulières et hash tables
Fonction logique OUI a S 1 a S 1 a S S = a La sortie est toujours
Inéquations du premier degré à une inconnue
Mise en forme en Mathématiques
Donc vous aimerez sûrement ce qui suit!!!
Expressions régulières et hash tables
Équations Logiques État Physique État Électrique État Logique L
SIMPLIFICATION DES EQUATIONS LOGIQUES
Cours de mathématiques économiques
Suites numériques Définitions.
Advanced Boolean Equation Language
Chapitre 3 :Algèbre de Boole
Algèbre de Boole Définition des variables et fonctions logiques
Logique combinatoire M. Delebecque. Logique combinatoire M. Delebecque.
Le codage des nombres binaires
05/03/06 11:50 Yannick Herve, Wilfried Uhring, Jihad Zallat 1 Électronique Numérique Chapitre 7 Compteurs Diviseur de fréquence, compteurs modulo 2 n et.
Algorithmique et programmation (1)‏
07/02/06 00:22 Yannick Herve, Wilfried Uhring, Jihad Zallat 1 Électronique Numérique Chapitre 4 Système séquentiel Analyse et synthèse, système asynchrone,
Rappel - analyse et synthèse de fonctions combinatoires
07/02/06 00:21 Yannick Herve, Wilfried Uhring, Jihad Zallat 1 Électronique Numérique Chapitre 2 Composant Combinatoires Formalisme graphique, Logique négative/positive,
MATHÉMATIQUES DISCRÈTES Chapitre 1 (Section 5)
Algèbre de Boole Définition des variables et fonctions logiques
UE MAREP Cours 1 : Algèbre de Boole et entiers naturels
Introduction à la programmation (420-PK2-SL) cours 1
LOGIQUE ET PROGRAMMATION LOGIQUE
A. Lebrun. Théorème de Shannon Soit F une fonction logique de n variables xn F(x1,..,xi, xn)=xi.f(x1,…,1, xn)+xi.g (x1,…,0,,xn) F(x1,..,xi, xn)=(xi+g(x1,…,0,
L’électronique des ordinateurs Laurent JEANPIERRE IUT de CAEN – Campus 3.
Fonctions Logiques & Algèbre de BOOLE
CHAPITRE 4: Simplification des fonctions
Transcription de la présentation:

31/01/06 14:01 Yannick Herve, Wilfried Uhring, Jihad Zallat 1 Électronique Numérique Chapitre 1 Algèbre binaire Écriture et simplification des fonctions logiques Cours d’électronique numérique dispensé à l’ENSPS. Auteurs : Yannick Hervé - MCF HDR Université Louis Pasteur Wilfried Uhring - MCF Université Louis Pasteur Jihad Zallat – MCF Université Louis Pasteur

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat2 Algèbre de Boole 1854 : Georges Boole propose une algèbre (autodidacte poussé par De Morgan, enseignant à 16 ans) Propositions vraie ou fausses et opérateurs possibles Algèbre de Boole (traces dans l’archéologie chinoise autour de l’an 1000) Yin – Yang Étude des systèmes binaires : Possédant deux états s’excluant mutuellement C’est le cas des systèmes numériques (des sous ensembles : les circuits logiques)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat3 Algèbre binaire On se limite : Base de l’algèbre de Boole Propriétés indispensables aux systèmes logiques Définitions : États logiques : États logiques : 0 et 1, Vrai et Faux, H et L (purement symbolique) Georges et Marcel Variable logique : Variable logique : Symbole pouvant prendre comme valeur des états logiques (A,b,c, Out...) Fonction logique : Fonction logique : Expression de variables et d’opérateurs ( f = not(a)^ (c OR r.t) )

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat4 Éléments de base Variables d’entréeVariables d’entrée –Les variables d’entrée sont celles sur lesquelles on peut agir directement. Ce sont des variables logiques indépendantes. Identifier les variables d’entrée pour la synthèse d’un système logique est primordial! Variable de sortie –Variable contenant l’état de la fonction après l’évaluation des opérateurs logiques sur les variables d’entrée. Simplification d’une fonction logique –Trouver la représentation (l’écriture) la plus simple de la fonction réalisée: Algèbre de Boole

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat5 Formellement Algèbre de Boole sur [0,1] = algèbre binaire Structure d’algèbre de boole 2 lois de composition interne 1 application unaire 2 LCI : ET, OU Somme (OU, Réunion) s = a + b = a v b Produit (ET, intersection) s = a. b = ab = a ^ b Nb: a+b se lit « a OU b » pas « a PLUS b » Application unaire : Not (complémentation, inversion) s = a = not(a) NB: a se lit « a barre » ou « non a »

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat6 Fonctions logiques Fonction logique à n variables f(a,b,c,d,...,n) [0,1] n [0,1] - Une fonction logique ne peut prendre que deux valeurs - Les cas possibles forment un ensemble fini (card = 2 n ) - Descriptions, preuves possibles par énumération comparer f(a,b,c,..n) et g(a,b,c,..,n) = comparer les tables représentant f et g La table de fonction logique = table de vérité Définition : (a,b,c,...,n) = vecteur d’entrée

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat7 a s = a Table de vérité de ET, OU, NON a b s = a + b s = a. b a b S est vrai si a OU b est vrai. S est vrai si a ET b sont vrais. S est vrai si a est faux a b s a b s a s

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat8 Notes sur les tables de vérité f (a,c,d,..,n) fonction logique à N entrées sera représentée par : une table à 2 N lignes ou un tableau à 2 N cases a b c f(a,b,c) f(a,b,c) a bc

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat9 Propriétés (1) de ET,OU,NON Commutativité a+b = b+a a.b = b.a Associativité a+(b+c) = (a+b)+c a.(b.c) = (a.b).c Distributivité a.(b+c) = a.b+a.c a+(b.c) = (a+b).(a+c) Idempotence a+a = a a.a = a Absorption a+a.b = a a.(a+b) = a Involution a = a On garde la hiérarchie classique (. est prioritaire sur +) a + (b.c) = a + b.c != (a + b). c

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat10 Démonstration distributivité a b c b+c a.(b+c) a.b a.c a.b+a.c = ? ? a.(b+c) = a.b+a.c

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat11 Propriétés (2) de ET,OU,NON Elément neutre a+0 = a a.1 = a Elément absorbant a+1 =1 a.0 = 0 Inverse a+a = 1 a.a = 0 Théorème de DE Morgan a+b = a. b a.b = a + b Théorème du Consensus a.x+b.x+a.b = a.x+b.x (a+x)(b+x)(a+b)=(a+x)(b+x)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat12 Représentation des fonctions Diagrammes de Venn ou d’Euler vue ensembliste, non utilisée en EN Schéma symbolique Tables de vérité (déjà vues) Tableau de Karnaugh (vu plus tard) Tableau + règles de symétries Equations logiques : (dans 3 slides) Chronogrammes : Graphe d’évolution temporelle Exemple extrait datasheet :

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat13 Notes sur les chronogrammes Il existe plusieurs niveaux d’abstraction : a b a+b fonctionnel, temporel, analogique NB: Les chronogrammes ne sont généralement pas très efficaces pour représenter une fonction.

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat14 Notes sur les chronogrammes (2) Plusieurs niveaux d’abstraction : a b a+b temporel Retard temporel

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat15 a b a+b Notes sur les chronogrammes (2) Plusieurs niveaux d’abstraction : analogique symbolique

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat16 Equations logiques On exprime f(a,b,c,...) par une expression en a,b,c.. et des opérateurs Souvent le plus efficace Exemple : f = a+b.c.(r+g.f) Principe de dualité : Une expression reste vraie si on interverti les 1 par des 0 et les ET par des OU Exemple : si a+b=1 alors a.b=0 Je suis riche si je suis bien payé et que je ne dépense pas tout mon argent = Je suis dans le rouge si je ne suis pas bien payé ou que je dépense tout mon argent

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat17 Toute fonction logique peut s’écrire avec les opérateurs ET, OU et NON (par définition). Groupe d’opérateur complet : ensemble d’opérateur permettant d’exprimer toutes les fonctions logiques (GOC) Corollaire : groupe d’opérateur permettant d’écrire ET, OU et NON Opérateur complet : Opérateur qui forme un GOC Groupe d’opérateur complet

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat18 Deux autres opérateurs : NAND,NOR s = a b = a+b a b S est vrai si ni a, ni b ne sont vrais. NOR (No-OR ou NI) a b s = a b = a.b S est vrai si a OU b est faux. NAND (No-AND)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat19 A l’aide du théorème de De Morgan toute fonction logique peut s’écrire qu’avec des NAND (resp des NOR). NAND et NOR offrent des performances techniques intéressantes. NAND est un GOC (complétude du NAND) Preuve : NOR est un GOC Preuve : Propriétés de NOR et NAND NAND et NOR ne sont pas associatifs Un NAND à trois entrées n’est pas équivalent à un NAND à deux entrées suivi d’un autre NAND

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat20 Le calcul mal entrepris peut être TRES fastidieux Somme de produits + 2 complémentations NAND Produit de sommes + 2 complémentations NOR Méthode d’obtention

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat21 s = a b = a.b + a.b a b S est vrai si a OU b est vrai mais pas les deux. XOR (Ou-Exclusif) vaut 1 si a est différent de b Opérateur de différence (disjonction) Encore un opérateur : XOR

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat22 XOR est associatif s = a b c..... n vaut 1 si le nombre de variable à 1 est impaire. Inverseur programmable : (le programme vaut 0 ou 1) a 1 = a a 0 = a Propriétés Propriétés du XOR

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat23 On peut généraliser l’algèbre binaire à plus de 2 niveaux Ensemble normalisé : MVL9 (U,X,0,1,Z,W,L,H,-) Utilisé par tous les simulateurs numériques ‘U’ non défini, ‘X’ conflit fort, ‘0’ niveau bas fort, ‘1’ niveau haut fort, ‘Z’ haute impédance,‘W’ conflit faible, ‘L’ niveau bas faible, ‘H’ niveau haut faible, ‘-’ don’t care 0 logique 1 logique Z déconnecté X inconnu Table de s = a connecté à b a b s 0 1 Z X 01ZX01ZX a b 0X0X X11X 01ZX XXXX La logique multi-niveau

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat24 Définitions : Apparition d’une variable = Lettre Produit de variables sous forme simple ou complémentées = Monôme Somme de monômes = Polynôme z = a + b.c.(d + e) Expression algébrique = a + b + c + (d + e) Développement = a + b + c + d. e Polynôme de 4 monômes de 1 et 2 lettres Ecriture des équations logiques

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat25 Fonctions logiques et formes canoniques On appelle « minterme » de n variables, l’un des produits de ces variables ou de leurs complémentaires. On appelle « maxterme » de n variables, l’une des sommes de ces variables ou de leurs complémentaires. f fonction logique de n variables

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat26 Indexation et nombre de mintermes et maxtermes Pour chaque « m--terme » on construit un code binaire en posant 1 si une variable est présente, 0 si son complémentaire est présent. On convertit ce code binaire en base décimal pour obtenir l’indice du m—terme Si deux m--termes sont différents, leurs indices sont différents. Le nombre de m--terme de n variables vaut 2 n

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat27 Propriétés des mintermes et maxtermes Le complémentaire d’un (max)minterme est un (min)maxterme Théorèmes (3 définitions équivalentes) : Le produit de deux mintermes différents vaut 0 et la somme de deux maxtermes différents vaut 1 Soit f une expression booléenne écrite sous la forme d’une somme de mintermes respectivement d’un produit de maxtermes), son complément f est la somme de tous les mintermes (respectivement le produit de tous les maxtermes) qui ne figurent pas dans f. 123

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat28 Première forme canonique ou forme normale disjonctive Minterme ou intersection de base Deuxième forme canonique ou forme normale conjonctive Maxterme ou réunion de base Une fonction est sous forme canonique (ou normale) si chaque terme contient toutes les variables. L’écriture sous forme canonique est unique. Exemples : Formes canoniques (1)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat29 Si la fonction n’est pas sous forme normale i.e. une des variables (au moins) ne figure pas dans un des termes La fonction est sous une forme simplifiée Première forme canonique Forme simplifiée Formes canoniques (2)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat30 Premier théorème d’expansion de Shannon : Première forme : obtention (1)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat31 Premier théorème d’expansion de Shannon : Si a = 1 : Première forme : obtention (2)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat32 Premier théorème d’expansion de Shannon : Si a = 1 : Si a = 0 : Première forme : obtention (3)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat33 Premier théorème d’expansion de shannon : Pour 2 variables : Point particulier de la fonction F vaut 0 ou 1 Première forme : obtention (4)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat34 Pour chaque i,j le point de la fonction F(i,j) dépend du problème a b F F(0,0) F(0,1) F(1,0) F(1,1) Il y a 2 N mintermes possibles. La somme des 2 N mintermes vaut 1. (fonction valant 1 partout) La première forme canonique ne laisse apparaître que les termes qui valent 1 Première forme : mise en oeuvre

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat35 Deuxième théorème d’expansion de Shannon : Si a=0 : absorbant + neutre. neutre + Pour deux variables : Deuxième forme : obtention

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat36 a b F F(0,0) F(0,1) F(1,0) F(1,1) Il y a 2 N maxtermes possibles. La somme des 2 N maxtermes vaut 0. (fonction valant 0 partout) Que les termes valant 0 Deuxième forme : mise en oeuvre

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat37 C’est un Raccourci d’écriture ! a b F F(0,0) F(0,1) F(1,0) F(1,1) 1ère forme : F(a,b) = R(1,2) 2ème forme : F(a,b) = I(0,3) R = Réunion I = Intersection a = msb (Most Significant Bit) b = lsb (least Significant Bit) bit = BInary digIT (abcd) 2 = a*2 3 + b*2 2 + c*2 1 + d*2 0 Les formes numériques (illustration de l’indexation)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat38 Passage d’une forme canonique à une autre On utilise Et le théorème : Soit f une expression booléenne écrite sous la forme d’une somme de mintermes respectivement d’un produit de maxtermes), son complément f est la somme de tous les mintermes (respectivement le produit de tous les maxtermes) qui ne figurent pas dans f.

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat39 Exemples : 1 ère forme vers 2 ème forme Indices desmaxtermesprésents 1 ère forme 2 ème forme 1 er exemple : 2 variables, 2 mintermes et 2 maxtermes 2 ème exemple : 3 variables, 3 mintermes et 5 maxtermes Indices desmaxtermesmanquants

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat40 Première forme canonique = expression des 1 de la fonction Deuxième forme canonique = expression des 0 de la fonction Les deux formes canoniques sont équivalentes On choisit celle qui donne le résultat le plus simple peu de 0 => deuxième forme / peu de 1 => première forme Formes canoniques : Choix

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat41 Si une combinaison d’entrée ne peut pas se présenter ou si pour cette combinaison la valeur de la fonction n’est pas importante, on dit que la fonction n’est pas définie en ce point. ‘x’ ou ‘-’ se lit « don’t care » Ce point peut être remplacé par 1 ou 0 en fonction des besoins de simplification. (ou x ou -) Fonction incomplètement définie

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat42 Objectif : Fabriquer un système à moindre coût rapide fiable peu consommateur et/ou Méthodes : Algébriques Graphiques Programmables Résultat : on cherche la forme minimale d’une fonction nombre minimal de monômes/nombre minimal de lettre par monôme Possibilité de plusieurs formes minimales : formes équivalentes Simplification des fonctions

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat43 La forme mathématique la plus simple ne correspond pas toujours à la réalisation la plus simple et/ou la plus rapide. La prise en compte de contraintes technologiques peut imposer une complexification d’écriture de l’expression. Simplification : avertissement

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat44 Décomposition : Problème général de la réalisation d’une fonction logique à l’aide d’opérateurs Transformation : Passage d’une forme à une autre forme équivalente Simplification : cas particulier d’une transformation quand on passe d’une forme canonique à une forme minimale. Simplification : définitions

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat45 Applications des principes et propriétés de l’algèbre de Boole Identités remarquables : Démonstrations : 1 et 2 trivial 3 : Simplification algébrique (1)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat46 Règles de simplification : (Mintermes adjacents = 1 seule variable qui change) 1 : Deux mintermes adjacents Il reste l’intersection commune 1’: Deux maxtermes adjacents Il reste la réunion commune 2 : On ajoute des termes neutres ou déjà existant (idempotence) 3 : théorème du consensus 4 : On simplifie la forme canonique ayant le moins de termes Méthode algébrique toujours possible mais démarche intuitive qui dépend de l’habileté et de l’expérience. Simplification algébrique (2)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat47 Karnaugh – simplification graphique La méthode de Karnaugh permet de visualiser une fonction et d’en tirer naturellement une écriture simplifiée. L’élément de base de cette méthode est la table de Karnaugh qui représente toutes les combinaisons d’états possibles pour un nombre de variables donné. La table de Karnaugh est un outil graphique qui permet de simplifier de manière méthodique des expressions booléennes. Elle offre une méthode de simplification pratique suivant une démarche systématique semblable à une recette de cuisine. La construction des tables de Karnaugh exploite le codage de l’information et la notion d’adjacence

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat48 Principe : Mettre en évidence sur un graphique les mintermes (ou maxtermes) adjacents. Transformer les adjacences logiques en adjacences «géométriques». Trois phases : transcrire la fonction dans un tableau codé recherche des adjacents pour simplification équations des groupements effectués Description : Table de vérité vs Tableau de Karnaugh 1 ligne 1 case n variables 2 n cases Simplification graphique (1)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat49 Code Gray ou binaire réfléchi : code à symétries multiples Construction0 1 Simplification graphique (2)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat50 Code Gray ou binaire réfléchi : code à symétries multiples Construction0 1 0 Symétrie «Miroir» Simplification graphique (3)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat51 Code Gray ou binaire réfléchi : code à symétries multiples Construction On complète par des 0 On complète par des 1 Simplification graphique (4)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat52 Code Gray ou binaire réfléchi : code à symétries multiples Construction Symétrie Simplification graphique (5)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat53 Code Gray ou binaire réfléchi : code à symétries multiples Construction On complète par des 0 On complète par des 1 Simplification graphique (6)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat54 Code Gray ou binaire réfléchi : code à symétries multiples Propriétés : distance unité Cyclique Monôme de n symboles = n adjacents multisymétrie du code Tableau de Karnaugh : codage lignes et colonnes par code Gray Simplification graphique (7)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat55 a b c f Exemple 1: Depuis une table de vérité bc a Simplification graphique (8)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat a b c f Exemple 1 Depuis une table de vérité bc a Simplification graphique (9)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat a b c f Exemple 1 : Depuis une table de vérité bc a lettres = 3 adjacents !Attention! Haut et Bas / Gauche et Droite liés (tore de Karnaugh) Simplification graphique (10)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat Exemple 2 : Par une première forme canonique (Par les 1) bc a Simplification graphique (11)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat Exemple 2 : Par une deuxième forme canonique (Par les 0) bc a Simplification graphique (12)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat60 Règles de simplification 1 : Les groupements comportent une puissance de deux cases, 2 : Les 2 k cases forment un rectangle, 3 : Un groupement de 2 k cases correspond à une simplification de k variables et s’écrit avec (n-k) lettres, 4 : Il faut utiliser au moins une fois chaque 1, le résultat est donné par la réunion logique de chaque groupement, 5 : Expression minimale si : les groupements les plus grands possibles utiliser les 1 un minimum de fois 6 : Codage d’un groupe par les 1 : n’apparaît que les variables fixes dans le groupement forme simple si la variable vaut 1/ complémentée sinon Simplification graphique (13)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat bc a Choix d’un 1 et recherche des adjacents contenant un 1 Simplification graphique (14)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat bc a Recherche d’un ensemble de deux cases adjacent contenant des 1 Echec Il faut essayer de maximiser les groupements Simplification graphique (15)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat bc a Autre groupement On choisit un des 1 restant et recherche des 1 adjacents Simplification graphique (16)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat64 Maximisation groupement Choix d’un 1 adjacent et recherche d’un groupement adjacent OK ! bc a Simplification graphique (17)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat bc a Tous les 1 sont groupés ! Equation : Simplification graphique (18)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat bc a Par les 0 Equation : Simplification graphique (19)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat67 Difficile avec plus de 6 variables Intérêt pédagogique Les problèmes sont toujours découpables en pb plus petits Pas programmable (autres méthodes : McCluskey, Sheinman, Tison) Temps pas pris en compte Difficile minimiser plusieurs fonctions conjointement Problème de l’aléa de propagation : si deux groupes sont adjacents Limites de la méthode

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat bc a Si b=0, c=1= 1 mathématiquement, mais … a OU a a F Retard techno L’aléa de propagation : problème

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat69 Si b=0, c=1= 1 mathématiquement et technologiquement bc a C’est le théorème du consensus L’aléa de propagation : problème

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat abc def Exercice 1

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat abc de f Plus de 1 ou de 0 ? Choix d’un 1 Recherche des adjacents Adjacents éligibles ? Si oui groupement Groupement «augmentable» ? Exercice 1 : Démarche (1)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat Plus de 1 ou de 0 ? Choix d’un 1 Recherche des adjacents Adjacents éligibles ? Si oui groupement Groupement «augmentable» ? abc de f Exercice 1 : Démarche (2)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat abc de f Exercice 1 : Démarche (3)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat abc de f Exercice 1 : Démarche (4)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat abc de f Exercice 1 : Démarche (5)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat abc de f 1 seul groupement Exercice 1 : Solution

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat abc def Exercice 2

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat abc def Exercice 2 : Solution

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat79 Tableau de Karnaugh à variable inscrite (KVI) fcba c c fba - La méthode de KVI tente de pallier à la difficulté liée aux tableaux de Karnaugh au delà de 4 variables. - Elle rajoute un niveau d’abstraction à la table de vérité de la fonction à réduire en y inscrivant une ou plusieurs variables 0 c c 1 1c c0 a b

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat80 KVI exemple (2) 0d d + d x d d xd + d x d a bc

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat81 Technique de Quine-McCluskey La méthode de Quine part de la décomposition canonique disjonctive d’une expression Booléenne et utilise systématiquement la formule de simplification où x est un littéral et y un monôme. Intérêts : - Implémentation machine possible - Nombre quelconque de variables - Efficace, le résultat de la simplification est minimal Peut nécessiter un temps exponentiel pour certains circuits !

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat82 Procédure de simplificationAlgorithme de Quine-McCluskey

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat83 Exemple – Quine (1) Soit à simplifier

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat84 Exemple – Quine (2)

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat85 Exemple – Quine (3) Impliquants premiers

31/01/06 14:01Yannick Herve, Wilfried Uhring, Jihad Zallat86 Exemple – Quine (4) * indique que l’impliquant couvre le terme [*] l’impliquant est essentiel à ce terme (*) terme couvert par un impliquant essentiel +