Funció Lògica amb Maxterms
En l’anàlisi de funcions lògiques podem expressar la funció de dues maneres:
-
Minterms: S’expressa com la suma (OR) de productes (AND) i inclou totes les combinacions per les quals la funció és
1
. -
Maxterms: S’expressa com el producte (AND) de sumes (OR) i inclou totes les combinacions per les quals la funció és
0
.
Un minterm és una expressió lògica que descriu exactament una única combinació d’entrades on la funció és 1 (és a dir, és el producte mínim de literals que defineix aquesta condició), mentre que un maxterm descriu exactament una única combinació on la funció és 0 (la suma màxima de literals que delimita aquesta situació); els seus noms reflecteixen, respectivament, la forma més reduïda per representar un 1 i la forma més completa per representar un 0.
Un literal és una variable booleana o la seva negació. És l’expressió més bàsica que pot tenir un valor de 0 o 1 en l’àlgebra de Boole.
Enunciat del problema: Un sistema activa una sortida (F) segons les condicions següents de la taula de la veritat.
1. Creació de la Taula de Veritat
La taula de veritat conté totes les combinacions possibles de les entrades, els resultats de la funció i el número del minterm (si F = 1) o maxterm (si F = 0).
A | B | C | D | F(A, B, C, D) | Número minterm (m)/Maxterm (M) |
---|---|---|---|---|---|
0 | 0 | 0 | 0 | 1 | m0 |
0 | 0 | 0 | 1 | 0 | M1 |
0 | 0 | 1 | 0 | 1 | m2 |
0 | 0 | 1 | 1 | 0 | M3 |
0 | 1 | 0 | 0 | 0 | M4 |
0 | 1 | 0 | 1 | 1 | m5 |
0 | 1 | 1 | 0 | 0 | M6 |
0 | 1 | 1 | 1 | 1 | m7 |
1 | 0 | 0 | 0 | 1 | m8 |
1 | 0 | 0 | 1 | 0 | M9 |
1 | 0 | 1 | 0 | 1 | m10 |
1 | 0 | 1 | 1 | 0 | M11 |
1 | 1 | 0 | 0 | 0 | M12 |
1 | 1 | 0 | 1 | 1 | m13 |
1 | 1 | 1 | 0 | 0 | M14 |
1 | 1 | 1 | 1 | 1 | m15 |
Funció No Simplificada en Forma de Maxterms
Donada una funció definida per la taula de veritat (on F = 1 en els minterms 0, 2, 5, 7, 8, 10, 13 i 15), la forma canònica de maxterms és:
F(A, B, C, D) = (A + B + C + D') · (A + B + C' + D') · (A + B' + C + D) · (A + B' + C' + D) · (A' + B + C + D') · (A' + B + C' + D') · (A' + B' + C + D) · (A' + B' + C' + D)
Cada maxterm és una suma on els literals apareixen sense complementar si el valor corresponent en la combinació és 0, i complementats si és 1.
Simplificació amb Taula de Karnaugh
Considerem la taula de veritat, i centrem-nos en els casos on F = 0
(els maxterms). En aquest exemple, els 0 apareixen als minterms:
m1, m3, m4, m6, m9, m11, m12 i m14.
Organitzant aquests 0 en una taula de Karnaugh, podem agrupar-los en dos grans grups:
-
Grup 1 (Cantonades): Agrupa els 0 en les cantonades de la taula, donant el maxterm
(B + D')
. -
Grup 2 (Centre): Agrupa els 0 centrals, donant el maxterm
(B' + D)
.
Per tant, la forma simplificada en maxterms és:
F(A, B, C, D) = (B + D') · (B' + D)
Taula de Karnaugh (Casos F = 0)
AB | CD | |||
---|---|---|---|---|
00 | 01 | 11 | 10 | |
00 | 1 | 0 | 0 | 1 |
01 | 0 | 1 | 1 | 0 |
11 | 0 | 1 | 1 | 0 |
10 | 1 | 0 | 0 | 1 |
En aquesta taula, els zeros marcats amb lightblue corresponen als 0 de les cantonades (Grup 1), mentre que els marcats amb lightgreen corresponen als 0 centrals (Grup 2).
La simplificació basada en aquests grups ens porta a la funció final:
F(A, B, C, D) = (B + D') · (B' + D)
Simplificació de la funció
Considerem la funció:
F(A, B, C, D) = (B + D') · (B' + D)
Pas a Pas
Utilitzem la propietat distributiva per expandir la funció:
(B + D') · (B' + D) = B·B' + B·D + D'·B' + D'·D
Recordem que: B·B' = 0
i D'·D = 0
.
Per tant, quedem amb:
B·D + D'·B'
L’expressió B·D + B'·D'
és la definició canònica de la funció Xnor (XNOR) per a les variables B
i D
.
Així doncs, podem escriure:
F(A, B, C, D) = B·D + B'·D' = B ⊙ D
La funció (B + D') · (B' + D)
es simplifica a B·D + B'·D'
, que és exactament la definició de la porta lògica XNOR.
Per tant, F = B ⊙ D.