Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
1
Optimisation Logique GMEE329 Bruno Rouzeyre rouzeyre@lirmm.fr
2
Principe de minimisation
Cas des fonctions incomplètes Cas des fonctions multiples Base première complète : Karnaugh Quine Mc Cluskey Consensus Base minimale : Table de choix (heuristique) Résolution Algébrique Branch & bound 1 f 00 01 11 10 dc ba
3
Cas des fonctions incomplètes
Id[f(d,c,b,a)] = R1(0,7,10,11,12,15) + Rf(2,6,8,9) 1 f 00 01 11 10 dc ba ba 1 00 01 11 10 dc ba 00 01 11 10 dc 00 1 01 1 11 1 1 Il monomo in blu (d'ba') é l'unico che copre solo sommet do not care (ultima colonna prime due righe) 10 1 1 Bpinf(f) = c b a + d b a + d c' b + d' c' b' a' + d c' b a' Bpsup(f) = c' a' + d c' + d b' a' + d b a + d' c b + c b a + d' b a' Pour la minimisation Bp => Bpsup
4
Cas des fonctions incomplètes
Id[f(d,c,b,a)] = R1(0,7,10,11,12,15) + Rf(2,6,8,9) Bp(f) = c' a' + d c' + d b' a' + d b a + d' c b + c b a 7 10 11 12 15 1 f 00 01 11 10 dc ba A = c' a' X B = d c' C = d b' a' D = d b a E = d' c b F = c b a G = d' b a' 1 - Prendre un sommet non encore couvert (choix aléatoire ou dirigé par une heuristique), 2 - Prendre un monôme couvrant ce sommet (choix aléatoire ou dirigé par une heuristique), 3 - Éliminer tous les sommets couverts par ce monôme, 4 - Réitérer la procédure jusqu'à avoir couvert tous les sommets.
5
Cas des fonctions multiples
ba 1 00 01 11 10 dc ba 00 01 11 10 dc 00 1 01 1 11 1 1 1 1 10 d c d' b a a' f1 f2 Minimisation séparée => f1 = d c + d' b a Réalisation minimale => f1 = d c + d' b a f2 = b a' + d' b f2 = b a + d' b a
6
Cas des fonctions multiples
Soit M = {m1, m2, … mq-1, mq} ensemble minimal de monôme distincts tel quel toute composante de F puisse s'exprimer comme une somme de termes de M Soit mi un monôme quelconque de M apparaissant dans p composants de F, fi1, fi2, …, fip => mi est donc un monôme de la fonction produit f = fi1*fi2*…*fip Principe : chercher les monômes des fonctions produits
7
Cas des fonctions multiples
ba ba 00 01 11 10 ba dc 00 01 11 10 dc 00 01 11 10 dc 00 1 00 1 1 00 1 01 1 01 1 1 01 1 11 1 1 1 1 11 1 11 1 10 10 1 10 f1 f2 f1. f2 Bp complète => dcba' + d' b a + b a' + d' b + d c + c b a dcba' (14) > f1 f2 d' b a (3,7) > f1 f2 b a' (2,6,10,14) -> f2 d' b (2,3,6,7) > f2 d c (12,13,14,15) -> f1 c b a (7,15) > f1 In f1 considero il gruppo da due cba perché é un gruppo non coperto da nessu monom. Sempre in f1 il sommet d'c'ba non lo considero perche é gia coperto in f1 f2 La liste des monômes premiers de F est donnée en marquant chaque terme par la fonction produit dont il est monôme premier. Si un monôme premier est trouvé plusieurs fois, on ne considère que la première instance
8
Cas des fonctions multiples
A= dcba' (14) > f1 f2 B = d' b a (3,7) > f1 f2 C = b a' (2,6,10,14) -> f2 D = d' b (2,3,6,7) > f2 E = d c (12,13,14,15) -> f1 F = c b a (7,15) > f1 f1 f2 3 7 12 13 14 15 2 3 6 7 10 14 A B C D E F B(f1,f2), E(f1), C(f2) Réalisation minimale => f1 = d c + d' b a f2 = b a' + d' b a
9
Cas des fonctions multiples
Id(f1) = R1(3,9,10,11,12,13,14,15) Id(f2) = R1(1,3,5,9,10,13,15) Id(f3) = R1(1,3,5,6,12,14)
10
Cas des fonctions multiples
1 00 01 11 10 dc ba f1f2f3 f1f2 f1f3 f2f3 f1 f2 f3 Id(f1) = R1(3,9,10,11,12,13,14,15) Id(f2) = R1(1,3,5,9,10,13,15) Id(f3) = R1(1,3,5,6,12,14) A = d' c' b a (3) -> f1 f2 f3 B = d' c' a (1,3) -> f2 f3 C = d' b' a (1,5) -> f2 f3 D = d c a' (12,14) -> f1 f3 E = d c a (13,15) -> f1 f2 F = d b' a (9,13) -> f1 f2 G = d c' b a' (10) -> f1 f2 H = c b a' (6,14) -> f3 I = b' a (1,5,9,13) -> f2 J = d c (12,13,14,15) -> f1 K = d b (10,11,14,15) -> f1 L = d a (9,11,13,15) -> f1 M = c' b a (3,11) -> f1
11
Cas des fonctions multiples
3 9 10 11 14 12 13 15 1 3 5 9 10 13 15 1 3 5 6 12 14 A B C D E F G H I J K L M A = d' c' b a (3) -> f1 f2 f3 B = d' c' a (1,3) -> f2 f3 C = d' b' a (1,5) -> f2 f3 D = d c a' (12,14) -> f1 f3 E = d c a (13,15) -> f1 f2 F = d b' a (9,13) -> f1 f2 G = d c' b a' (10) -> f1 f2 H = c b a' (6,14) -> f3 I = b' a (1,5,9,13) -> f2 J = d c (12,13,14,15) -> f1 K = d b (10,11,14,15) -> f1 L = d a (9,11,13,15) -> f1 M = c' b a (3,11) -> f1
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.