Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
13 settembre 2017
Aula Magna
La Codifica
Definizione di Codice
• Numeri Romani
– Alfabeto:
– Codice: C=
• Notiamo che:
– Non tutte le stringhe possibili sono valide, ad esempio IIII
NON è un numero romano, come non lo è IVI
• Domande:
– Come si fanno i conti?
– Quale è la cardinalità di C?
La Codifica
Siano:
• Alfabeto origine T: l’insieme delle informazioni da
rappresentare
• DEFINZIONE
– Tutte le parole codice hanno la stessa lunghezza codice l
– Il codice può avere fino a nl parole valide
• Codifica Ridondante
– Il codice ha lunghezza fissa
– Cardinalita(C) > Cardinalità(T)
Tipica Proprietà:
Date due parole codice c1 e c2,
assumendo l1<l2 (la seconda parola è più lunga) la
sottosequenza dei primi l1 caratteri di c2 è diversa da c1
Codici Numerici
+
Conversione di Base
PAUSA
Algebra di Boole
Algebra di Boole
AND OR NOT
X Y Z=XY X Y Z=X+Y X Z=X
0 0 0 0 0 0 0 1
0 1 0 0 1 1 1 0
1 0 0 1 0 1
1 1 1 1 1 1
Interpretazioni dell’algebra di Boole
AND OR NOT
Funzioni Booleane
F=X+YZ
F= X+YZ
Algebra
X Y Z F
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 0
1 0 0 1
Circuito Logico
1 0 1 1
1 1 0 1
1 1 1 1
Tabella di verità
Identità di base
1. X+0=X 2. X ・ 1=X
3. X+1=1 4. X ・ 0=0
5. X+X=X 6. X ・ X=X
7. X+X=1 8. X ・ X=0
9. Not(Not(X))=X
10. X+Y=Y+X Commutativ 11. X ・ Y=Y ・ X
a
12. X+(Y+Z)=(X+Y)+Z Associativ 13. X ・ (Y ・ Z)=(X ・ Y) ・
a Z
14. X ・ (Y+Z)=X ・ Y+X ・ ZDistributiv
a 15. X+YZ=(X+Y)(X+Z)
16. (X+Y)=X ・ Y De
Morgan 17. (XY)=X+Y
X Y Z F=X+YZ F=(X+Y)(X+Z)
0 0 0 0 0
0 0 1 0 0
0 1 0 0 0
0 1 1 1 1
1 0 0 1 1
1 0 1 1 1
1 1 0 1 1
1 1 1 1 1
Principio di dualità
XY + XZ + YZ = XY + XZ
• XY + XZ + YZ =
• XY + XZ + YZ(X + X) =
• XY + XZ + XYZ + XYZ =
• XY + XYZ + XZ + XYZ =
• XY(1+Z)+XZ(1+Y)=
• XY + XZ.
DUALE :
• (X + Y)(X + Z)(Y + Z) = (X + Y)(X + Z).
Semplificazione di funzioni
Booleane
Semplificazione delle funzioni (I)
• Consideriamo la funzione
F = XYZ + XYZ + XZ
Semplificazione delle funzioni (II)
• F = XYZ + XYZ + XZ
• F = XY(Z + Z) + XZ (IDENTITA' 14)
• F = XY •1+ XZ (IDENTITA' 7)
• F =XY+XZ (IDENTITA' 2)
Le 4 funzioni sono
equivalenti infatti hanno
la stessa tabella di verità
Semplificazione delle funzioni (III)
F = XYZ + XYZ + XZ
http://
F = XY+XZ
Rappresentazioni CANONICHE
Forme Canoniche – Mintermini e Maxtermini
a b F
Data la Tabella di verità
0 0 0
della funzione F 0 1 1
1. Individuare le righe il 1 0 1
cui valore è 1 1 1 0
a b F
Data la Tabella di verità
0 0 0
della funzione F 0 1 1
1. Individuare le righe il 1 0 1
cui valore è 0 1 1 0
• Una sola
rappresentazione di
riferimento per ogni
tabella di verità
• Una realizzazione
circuitale sempre e solo
a due livelli
• Completamente
automatizzabile calcolo
e disegno del circuito
Esempio di Somma di Prodotti
x y z F m
0 0 0 0 m0 F=
0 0 1 0 m1
0 1 0 1 m2
0 1 1 1 m3
1 0 0 1 m4
1 0 1 1 m5
1 1 0 0 m6
1 1 1 1 m7
x y z F M
0 0 0 0 M0 F=
0 0 1 0 M1
0 1 0 1 M2
0 1 1 1 M3
1 0 0 1 M4
1 0 1 1 M5
1 1 0 0 M6
1 1 1 1 M7
F=(X+Y+Z)(X+Y+Z)(X+Y+Z)
Numero di Funzioni a tre variabili
x y z F F
0 0 0 0 0
0 0 1 0 0
0 1 0 1 1
0 1 1 1 1
1 0 0 1 1
1 0 1 1 1
1 1 0 0 0
1 1 1 1 1
Operatori Funzionalmente
Completi
Operatori Funzionalmente completi
NAND NOR
X Y Z= X∙Y X Y Z= X+Y
0 0 1 0 0 1
0 1 1 0 1 0
1 0 1 1 0 0
1 1 0 1 1 0
X NOT(X) X X NAND(X,X)
0 1 0 0 1
0 1 0 0 1
1 0 1 1 0
1 0 1 1 0
Operazioni Funzionalmente Complete NAND
X Y NAND(X,Y)
0 0 1
X Y AND Z=NAND(X,Y) NAND(Z,Z) 0 1 1
1 0 1
0 0 0 1 0
1 1 0
0 1 0 1 0
1 0 0 1 0
1 1 1 0 1
X Y OR X Y NAND(X,Y)
0 0 0 1 1 0
0 1 1 1 0 1
1 0 1 0 1 1
1 1 1 0 0 1
Esercizio
• Quindi:
• Introducendo le NAND:
• Quindi:
De Morgan: (X+Y)=X ・ Y
A
B
OR
C
D
A
B
C
D
Esercizio
•
•
•
Inizio lezione 17:15
• La tabella di verità
viene riportata nelle
celle della mappa di F=XY
Karnaugh
• Tabella di verità e
Mappa di Karnaugh
sono rappresentazioni F=XY+XY+XY
equivalenti
XY=XY+XY
F=X(Y+Y)+Y(X+X)=X*1+Y*1=X+Y
F= XY+XY+XY
X Y F
0 0 0 Y
0 1 1
1 0 1
1 1 1
X
F=X+Y
F= X + XY
Mappe di Karnaugh a 3 variabili
• La Mappa di Karnaugh
a tre livelli va
immaginata come un
cilindro…
Mappe di Karnaugh a 3 variabili
• La Mappa di Karnaugh
a tre livelli va
immaginata come un
cilindro…
Mappe di Karnaugh a 4 variabili
• La Mappa di Karnaugh
a 4 livelli va
immaginata come un
toroide…
Mappe di Karnaugh a 5 variabili
yz 00
• La Mappa di Karnaugh a wx
01 11 10
00 m0 m1 m3 m2
5 variabili va pensata 01 m4 m5 m7 m6
come due mappe di K=0 11 m12 m13 m15 m14
Karnaugh a 4 variabili 10 m8 m9 m11 m10
sovrapposte
yz
wx 00 01 11 10
K*W*X*Y*Z 00 m16 m17 m19 m18
01 m20 m21 m23 m22
K=1
11 m28 m29 m31 m30
10 m24 m25 m27 m26
Rappresentazioni di una funzione booleana
Tabella di verità
# a b c d F
Somma di Mintermini
0 0 0 0 0 0
1 0 0 0 1 0
2 0 0 1 0 0
3 0 0 1 1 0 F=abcd + abcd + abcd + abcd + abcd
4 0 1 0 0 1
5 0 1 0 1 1
6 0 1 1 0 1
7 0 1 1 1 0
8 1 0 0 0 0
9 1 0 0 1 0
10 1 0 1 0 0
11 1 0 1 1 0
12 1 1 0 0 1
13 1 1 0 1 1
14 1 1 1 0 0
15 1 1 1 1 0
Rappresentazioni di una funzione booleana
Tabella di verità
# a b c d F
Somma di Mintermini
0 0 0 0 0 0
1 0 0 0 1 0
2 0 0 1 0 0
3 0 0 1 1 0 F=abcd + abcd + abcd + abcd + abcd
4 0 1 0 0 1
5 0 1 0 1 1
Mappa di Karnaugh
6 0 1 1 0 1
7 0 1 1 1 0
8 1 0 0 0 0
9 1 0 0 1 0
10 1 0 1 0 0
11 1 0 1 1 0
12 1 1 0 0 1
13 1 1 0 1 1
14 1 1 1 0 0
15 1 1 1 1 0
Rappresentazioni di una funzione booleana
• Le rappresentazioni:
– Tabella di verità
– Forma Canonica Somma di mintermini
– Mappa di Karnaugh
• Sono uniche per funzioni algebriche (e circuiti) tra
loro equivalenti.
• D’altra parte esistono infinite funzioni (e circuiti) che
realizzano la stessa tabella di verità…
Minimizzazione
Accoppiamento a due
•I mintermini 4 e 5 sono
adiacenti:
abc
Trasformazione da mappa di Karnaugh a funzione
• Altri accoppiamenti a
due?
Trasformazione da mappa di Karnaugh a funzione
• Anche i mintermini 12 e
13 sono adiacenti:
• Anche i mintermini 12 e
13 sono adiacenti:
Accoppiamento a quattro
•I mintermini 4,5,12 e 13
sono tutti adiacenti:
Costruzione della
funzione
•Ogni uno deve essere
coperto…
•Una possibile fuzione
logica è:
F=bc+abcd
Trasformazione da mappa di Karnaugh a funzione
Costruzione della
funzione
•Ogni uno deve essere
coperto…
•Una possibile fuzione
logica è:
F=bc+abcd
E’ Minima??
Trasformazione da mappa di Karnaugh a funzione
Costruzione della
funzione
•Ogni uno deve essere
coperto…
•Una possibile fuzione
logica è:
F=bc+abcd
E’ Minima??
No.. Soprattutto non abbiamo
elementi per dimostrarlo…
Esercizio
Terminologia
f ( x, y, z ) xy yz, e quindi xy f e yz f
si ha : f xy z xyz xyz x yz
Implicanti sulle mappe di Karnaugh
AD
• Si noti che gli
accoppiamenti CD 00 01 11 10
AB
costituiscono primi 00 1 1
implicanti purché non 01 1 1 1 1
siano completamente 11 1 1
10
interni ad
accoppiamenti di ordine BD
superiore.
AB
Implicanti Essenziali e Nucleo
Primi Implicanti: AD
AD AB BD
CD 00 01 11 10
AB
Primi Implicanti Essenziali 1 1
00
AD BD 01 1 1 1 1
11 1 1
10
BD
AB
Minimizzazione con le mappe di Karnaugh
Primi Implicanti: AD
AD AB BD
CD 00 01 11 10
AB
Primi Implicanti Essenziali 1 1
00
AD BD 01 1 1 1 1
11 1 1 1 1
10
BD
B
Esempio di Primi implicanti essenziali non sufficienti
CD 00 01 11 10
AB
00 1 1
01 1 1 1 1
11 1 1
10 1 1 1 1
Esempio di Primi implicanti essenziali non sufficienti
• Primi Implicanti: AB
CD 00 01 11 10
00 1 1
AB AB AD AD BD BD
01 1 1 1 1
11 1 1
• Primi Implicanti 10 1 1 1 1
essenziali:
BD
– NESSUNO!! AD AD
AB AB BD
Esempio di Primi implicanti essenziali non sufficienti
• Primi Implicanti: AB
CD 00 01 11 10
00 1 1
AB AB AD AD BD BD
01 1 1 1 1
11 1 1
• Primi Implicanti 10 1 1 1 1
essenziali:
BD
– NESSUNO!! AD AD
AB AB BD
Esempio di Primi implicanti essenziali non sufficienti
• Primi Implicanti: AB
CD 00 01 11 10
00 1 1
AB AB AD BD BD
01 1 1 1 1
11 1 1
10 1 1 1 1
Primi Implicanti BD
Essenziali AD
AB AB BD
BASTA?
Costruzione funzione minima con Mappe di Karnaugh
F=ab+abc+da
F=abcd+abc+abc
F=abcd+abc+abce+eab
CD 00 01 11 10
AB
00 1 1
AD 1 1
01
11
10 1 1 1 1
BD
AB
F=AD+AB
Algebra di Boole
FINE