Mappe di Karnaugh - POS, condizioni di don't care e parità
In questa pagina 4
Questa nota completa Mappe di Karnaugh - implicanti e copertura minimaLa mappa di Karnaugh è la tabella di verità disposta in una griglia con righe e colonne in codice Gray, così che celle adiacenti (anche tra bordi opposti) differiscano in una sola variabile. Si raggruppano gli 1 in rettangoli di $2^k$ celle: ogni gruppo elimina $k$ variabili e dà un prodotto. Implicante primo = gruppo massimo; essenziale = unico a coprire un mintermine; la copertura minima contiene tutti gli essenziali più il minimo di altri primi (può non essere unica). Efficace fino a 4 variabili.Mappe di Karnaugh - implicanti e copertura minima → con tre casi: la forma a prodotto di somme, le condizioni di indifferenza e le funzioni XOR.
Prodotto di somme minimo (POS)
La SOP raggruppa gli 1. La POS si ottiene raggruppando gli 0, ossia lavorando sul complemento :
- si marcano gli 0 della mappa e si raggruppano come si farebbe con gli 1 (rettangoli di , IP e IPE), ottenendo una SOP minima di ;
- si complementa con De Morgan: . In pratica, per ogni gruppo si scrive una somma con le variabili che non cambiano, diretta se nel gruppo valgono 0, negata se valgono 1;
- è il prodotto di queste somme.
Perché la regola dei segni è opposta: il gruppo per dà un prodotto, che negato diventa la somma (De Morgan): le variabili che nel gruppo valgono () compaiono dirette, quelle che valgono () negate.
Esempio
, cioè nelle celle e nelle altre 7:
| 00 | 01 | 11 | 10 | |
|---|---|---|---|---|
| 00 | 1 | 1 | 1 | 0 |
| 01 | 1 | 0 | 0 | 0 |
| 11 | 1 | 1 | 1 | 0 |
| 10 | 0 | 0 | 0 | 0 |
Gruppi di 0 (IP, tutti essenziali):
- celle (colonna ): variabili costanti ; per : ; somma per : ;
- celle (): per : ; somma: ;
- celle (riga ): per : ; somma: .
Confronto con la SOP. Raggruppando gli 1 si ottengono tre forme minime equivalenti, tutte con prodotti da letterali (12 letterali), per esempio . La POS ha 3 somme e 7 letterali: qui la POS è nettamente più compatta, perché gli 0 sono meno numerosi e meglio raggruppabili degli 1. In generale conviene lavorare sulla fase (1 o 0) che ha meno celle e gruppi più grandi.
Controllo su una cella: per (cella , ): , , ; prodotto ✓. Per la cella (): → ✓.
Condizioni di don't care
Finora si è supposto che la funzione valga dove non vale . A volte, però, la funzione non è completamente specificata: per alcune combinazioni degli ingressi il valore dell'uscita è indifferente, perché quella combinazione non può presentarsi (per esempio i codici – in un ingresso BCD, Codici binari - BCD, ASCII, Unicode, parità e GrayUn codice binario a $n$ bit distingue $2^n$ elementi. BCD: una cifra decimale ogni 4 bit (1010–1111 non usati; 10 richiede 8 bit, non è il binario del numero). ASCII: 7 bit per 128 caratteri, la cifra ASCII è 011 seguito dal BCD. Unicode/UTF-8: da 1 a 4 byte, compatibile con ASCII. Bit di parità: rileva errori su un numero dispari di bit. Distanza di Hamming = numero di bit diversi. Codice Gray: numeri consecutivi differiscono di un solo bit (sensori di posizione); si costruisce per riflessione o con $g_i=b_i\oplus b_{i+1}$.Codici binari - BCD, ASCII, Unicode, parità e Gray →) o perché il risultato non interessa. Nella tabella e nella mappa si scrive una X.
Una X si può usare come 1 o come 0, a seconda di ciò che serve per fare gruppi più grandi. Regole:
- una X dentro un gruppo viene trattata come 1, e non è coperta esplicitamente: la funzione ottenuta vale 1 su quella combinazione;
- una X lasciata fuori è trattata come 0;
- non si fa un gruppo che contenga solo X, e non è obbligatorio coprire le X;
- una X non rende un gruppo "essenziale": gli IPE si definiscono rispetto ai soli mintermini a 1.
Esempio: cifra BCD "primo oppure 1"
Un circuito riceve una cifra BCD (–) e deve dare se la cifra è . Le righe – non si presentano: sono don't care.
| 00 | 01 | 11 | 10 | |
|---|---|---|---|---|
| 00 | 0 | 1 | 1 | 1 |
| 01 | 0 | 1 | 1 | 0 |
| 11 | X | X | X | X |
| 10 | 0 | 0 | X | X |
- Gruppo delle celle (): , senza usare X.
- Gruppo delle celle (): , che usa le X delle celle e (e copre le celle 2 e 3).
2 prodotti, 4 letterali. Se non si sfruttassero le X (trattandole come 0) servirebbe (5 letterali): le X risparmiano un letterale e una porta con meno ingressi. In POS: gli 0 sono nelle celle e le X sono a disposizione. Gruppi: (resta , somma ), (resta , somma ), le due righe e (resta , somma ). Risultato: , equivalente alla SOP sulle combinazioni valide (sulle X le due forme possono dare valori diversi, e va bene).
Se due scelte per le X danno lo stesso costo, si hanno due forme minime algebricamente diverse ma equivalenti sulle combinazioni che si presentano.
Funzioni XOR e di parità
La funzione XOR a 3 variabili (disparità, vale 1 se il numero di 1 in ingresso è dispari) è . La sua mappa ha gli 1 a scacchiera:
| 00 | 01 | 11 | 10 | |
|---|---|---|---|---|
| 0 | 0 | 1 | 0 | 1 |
| 1 | 1 | 0 | 1 | 0 |
Nessun 1 è adiacente a un altro: i mintermini sono a distanza di Hamming 2 l'uno dall'altro. Non esistono gruppi da più di una cella, quindi la SOP minima coincide con la canonica ( prodotti da letterali) e non si semplifica. Conviene usare le porte XOR: con due porte. Lo stesso vale per 4 variabili (16 celle, scacchiera da 8 mintermini dispari) e per la funzione di parità (complemento: se gli 1 sono in numero pari), che si ottiene sostituendo le XOR con XNOR.
Errori comuni
- Nella POS, scrivere le variabili con i segni della SOP (diretta se 1): per i gruppi di 0 vale la regola opposta.
- Fare gruppi di X non collegati a nessun 1.
- Trattare una X come "da coprire per forza".
- Dimenticare che le forme minime ottenute usando le X possono differire sulle combinazioni non valide: va bene.
- Cercare di raggruppare una mappa a scacchiera.
Versione ripasso
- POS minima: si raggruppano gli 0 (SOP di ), poi per ogni gruppo una somma con variabili costanti, diretta se 0, negata se 1; = prodotto.
- Esempio: (7 letterali) contro 4 prodotti da 3 letterali in SOP: conviene la fase con meno celle e gruppi grandi.
- Don't care (X): ingressi che non si presentano o uscita indifferente; si usano come 1 o 0 per ingrandire i gruppi; mai gruppi di sole X; non si è obbligati a coprirle.
- Esempio BCD: per con – X: (senza X: ).
- XOR/parità: , mappa a scacchiera (distanza di Hamming 2): non semplificabile; si usano XOR (parità = XNOR). È il bit di somma del full adder (Sommatori binari - half adder, full adder e ripple carryHalf adder (2 ingressi): $S=X\oplus Y$, $C=XY$. Full adder (3 ingressi, con riporto in ingresso $Z$): $S=X\oplus Y\oplus Z$, $C=XY+XZ+YZ=G+PZ$ con $P=X\oplus Y$, $G=XY$; si realizza con due half adder e una OR. Il ripple carry adder a $n$ bit concatena $n$ full adder: il riporto "ondeggia" dal LSB al MSB, quindi il ritardo cresce linearmente con $n$. È un circuito iterativo (gerarchico e regolare). Il moltiplicatore a 2 bit usa 4 AND e 2 half adder.Sommatori binari - half adder, full adder e ripple carry →).
- Errori: segni della POS; gruppi solo di X; scacchiera raggruppata.
Esercizi su questo argomento
- Esercizio 1 · segmento 2 di un display a sette segmenti con don't care (tema d'esame giugno 2022)
- Esercizio 7 · numero pari diverso da zero tra 0 e 9 (tema d'esame settembre 2022)
- Esercizio 10 · segmento a di un display a sette segmenti (tema d'esame febbraio 2023)
- Esercizio 13 · funzione con don't care, forme minime SOP e multiplexer (tema d'esame settembre 2025)
- Esercizio 14 · circuito sequenziale di Moore con codifica Gray (tema d'esame settembre 2025)
- Esercizio 16 · minimizzazione di una funzione data per mintermini (tema d'esame giugno 2026)