Mappa di Karnaugh 

In fase di sviluppo In preparazione In fase di sviluppo

Una mappa di Karnaugh (K-map) è un metodo grafico che ha come obiettivo quello di ridurre la complessità delle funzioni booleane; essa si costruisce a partire dalla tabella della verità.

Le mappe di Karnaugh permettono di costruire semplicemente la forma minima di una funzione come somma di prodotti logici (nota 1). Pur essendo un metodo piuttosto "antico" ed adatto solo per tabelle con massimo quattro ingressi (nota 2) è ancora utilizzato.

  1. Il metodo parte dalla scrittura della tabella di verità.

  2. Le uscite della tabella vanno disposte in una griglia 4x4 oppure 4x2 oppure 2x2, con un numero di celle pari al numero di righe della tabella di verità; sui lati della griglia sono scritti i valori delle variabili di ingresso singolarmente (0 o 1) oppure a coppie, evitando il cambiamento contemporaneo di più bit tra righe o colonne successive (sequenza obbligatoria: 00, 01, 11, 10)

  3. Le celle che contengono "1" devono essere raccolte in gruppi rettangolari contenenti 1, 2, 4 oppure 8 valori. Tali gruppi devono essere il più grande possibile e nel loro insieme coprire tutti gli "1" presenti nella griglia. Un gruppo può comprendere anche elementi della prima e dell'ultima riga o colonna (la mappa va immagina "cilindrica", sia in orizzontale che in verticale)

  4. Ciascun raggruppamento genera il prodotto delle variabili che non cambiano all'interno del raggruppamento stesso, prese in forma normale oppure negata a seconda che il loro valore scritto sui bordi della cella sia "1" oppure "0".

  5. Occorre infine scrivere una funzione booleana che somma i prodotti trovati al punto precedente

Esempio 1

Consideriamo la seguente tabella di verità.

A B C Q
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1

Usando la prima forma canonica tale tabella produce la funzione Q = (A·B·C) + (A·B·C) + (A·B·C) + (A·B·C).

Costruiamo la K-map, formata da 8 celle disposte 4x2, ponendo le combinazioni A e B sulle righe e C sulle colonne (nota 3):

Si noti l'ordine assunto dalla coppia di variabili A e B: è obbligatorio!

Raccogliamo tutti gli "1". Nell'esempio servono tre raggruppamenti di due 1 ciascuno, di seguito evidenziati:

K-map-1

La funzione semplificata è costituita da Q = (B·C) + (A·C) + (A·B), evidentemente più semplice della precedente, ma ad essa equivalente.

Esempio 2

Consideriamo la seguente tabella di verità:

A B C D Q
0 0 0 0 0
0 0 0 1 0
0 0 1 0 0
0 0 1 1 1
0 1 0 0 0
0 1 0 1 1
0 1 1 0 1
0 1 1 1 1
1 0 0 0 0
1 0 0 1 0
1 0 1 0 0
1 0 1 1 1
1 1 0 0 0
1 1 0 1 1
1 1 1 0 0
1 1 1 1 1

Attività autonoma: scrivere la prima forma canonica della tabella (lungo...).

Costruiamo la K-map corrispondente:

Si noti l'ordine assunto dalla coppia di variabili AB sulle righe e CD sulle colonne.

Raccogliamo gli "1". Nell'esempio sono presenti due raggruppamenti di quattro "1" ed uno di due "1", di seguito evidenziati:

La funzione semplificata è costituita da Q = (C·D) + (B·D) + (A·B·C), evidentemente più semplice della precedente, ma ad essa equivalente.

Esempio 3

Consideriamo la seguente tabella di verità:

A B C D Q
0 0 0 0 1
0 0 0 1 1
0 0 1 0 1
0 0 1 1 1
0 1 0 0 1
0 1 0 1 1
0 1 1 0 1
0 1 1 1 1
1 0 0 0 0
1 0 0 1 0
1 0 1 0 0
1 0 1 1 1
1 1 0 0 0
1 1 0 1 0
1 1 1 0 0
1 1 1 1 0

Attività: scrivere la prima forma canonica della tabella

Costruiamo la K-map corrispondente:

  CD=00 CD=01 CD=11 CD=10
AB=00 1 1 1 1
AB=01 1 1 1 1
AB=11 0 1 0 0
AB=10 0 0 1 0

Si noti l'ordine assunto dalla coppia di variabili AB sulle righe e CD sulle colonne.

Raccogliamo gli "1". Nell'esempio sono presenti un raggruppamento di otto "1" ed uno di due "1", quest'ultimo tra la prima e l'ultima riga, essendo la mappa "cilindrica".

La funzione semplificata è costituita da Q = (A) + (B·C·D), evidentemente più semplice della precedente, ma ad essa equivalente.

Esempio 4

Consideriamo la seguente K-map:

  CD=00 CD=01 CD=11 CD=10
AB=00 0 1 0 0
AB=01 0 1 0 1
AB=11 0 1 0 0
AB=10 1 1 0 0

Possiamo individuare:

Esempio 5

Consideriamo la seguente K-map:

  CD=00 CD=01 CD=11 CD=10
AB=00 1 1 0 0
AB=01 1 1 0 1
AB=11 0 0 0 0
AB=10 1 0 0 1

Possiamo individuare:

Note

  1. È possibile anche realizzare la rete come prodotto di somme logiche, metodo duale di quanto descritto in questa paginai
  2. È possibile utilizzare K-map anche per tabelle a 5 o 6 ingressi, togliendo molto della semplicità del metodo
  3. Poteva essere scelta anche una K-map orizzontale 2x4. Le variabili posso essere raccolte in qualunque ordine, per esempio AC sulle righe e B sulle colonne


Pagina creata nel gennaio 2024
Ultima modifica: 29 gennaio 2024


Licenza "Creative Commons" - Attribuzione-Condividi allo stesso modo 3.0 Unported


Pagina principaleAccessibilitàNote legaliPosta elettronicaXHTML 1.0 StrictCSS 3

Vai in cima