Cap2 CircuitiLogiciCombinatori
Cap2 CircuitiLogiciCombinatori
Cap2 CircuitiLogiciCombinatori
Studi di Palermo
Orazio Gambino
2
Algebra di Boole
3 - RETI LOGICHE
Prof. Orazio Gambino
Algebra di Boole
➢ Gli operatori AND, OR e NOT sono definiti mediante tabelle di
verità
4 - RETI LOGICHE
Prof. Orazio Gambino
Algebra di Boole
5 - RETI LOGICHE
Prof. Orazio Gambino
Porte logiche
6
Prof. Orazio Gambino
Porte logiche
➢ Diagramma di temporizzazione
▪ I segnali sono campionati ad intervalli
regolari
▪ Le transizioni da un livello logico
all’altro si assumono ideali, ovvero che
avvengano istantaneamente
▪ Fronte di salita : transizione da 0 a 1
▪ Fronte di discesa : transizione da 1 a 0
7 - RETI LOGICHE
Prof. Orazio Gambino
Simboli
➢ porta AND
AB A B A and B A B
➢ porta OR
A+ B A B
➢ porta XOR
A B
➢ porta NOT
A'
8
A !A A
Prof. Orazio Gambino
Porte logiche
9
Prof. Orazio Gambino
Porte logiche
10
Prof. Orazio Gambino
Porte logiche
Anche gli ingressi posso essere inserite porte NOT, ma al loro posto si
inseriscono sempre i “pallini”. In particolare le due porte si riferiscono alle
seguenti funzioni booleane:
11
Prof. Orazio Gambino
Porte logiche
12
Prof. Orazio Gambino
Funzioni Booleane: Porta AND
13
Prof. Orazio Gambino
Funzioni Booleane: Porta OR
14
Prof. Orazio Gambino
Funzioni Booleane: Porta NOT
15
Prof. Orazio Gambino
Funzioni Booleane: Porta XOR
X Y = X Y + X Y
La porta logica XOR può essere espressa tramite una piccola “rete combinatoria”
tramite porte AND, OR e NOT.
16
Prof. Orazio Gambino
Scrivere la tabella di verità di questo circuito
equivalente della porta XOR
17
Prof. Orazio Gambino
Porte logiche ad ingressi multipli
18
Prof. Orazio Gambino
Porte logiche ad ingressi multipli
19
Prof. Orazio Gambino
Funzioni logiche come operatori booleani
1 1 0 0 1 0 0 1 AND 1 1 0 0 1 0 0 1 OR
01101011 = 01101011 =
01001001 11101011
1 1 0 0 1 0 0 1 AND 1 1 0 0 1 0 0 1 AND
00001111 = 11110000 =
00001001 11000000
20
Prof. Orazio Gambino
Da binario a Gray con l’ operatore XOR
➢ Per convertire in codice Gray il numero 110010 basta applicare
l’operatore XOR tra il numero e la sua versione shiftata a destra
di una posizione
binario 1 1 1 0 2 XOR
1 1 1 02 =
Gray 1001 -
➢ Da notare che l’MSB è lo stesso sia per il numero binario che
per i codice Gray ottenuto. L’ LSB del risultato viene omesso.
➢ In termini analitici, la regola è la seguente
gn = bn
gi =bi ⊕ bi+1 i = n-1,…, 1
21
Prof. Orazio Gambino
Da binario a Gray con l’ operatore XOR
b2 g2
g1
b1
g0
b0
22
Da Gray a binario con l’operatore XOR
gn = bn
➢ Tutte le altre cifre del numero binario si trovano, una per una,
con il seguente procedimento iterativo:
23
Prof. Orazio Gambino
da Gray a binario tramite operatore XOR
Gray Code Binary
g2g1g0 b2b1b0
Gray 1 00 1 0 Gray 1 0 01 0
binario 11 1 binario 1 1 1 0-
24
Prof. Orazio Gambino
da Gray a binario tramite regola
25
Famiglie logiche
Transistori con
Resistori e MOS
Elementi Circuitali Transistori accoppiamento
Transistori Complementari
diretto
27
Prof. Orazio Gambino
Datasheet
28
Prof. Orazio Gambino
Breadboard (Basetta prova circuiti)
https://it.wikipedia.org/wiki/Breadboard
29
Prof. Orazio Gambino
Funzioni booleane
➢ Le funzioni booleane sono quelle funzioni di variabile booleana
che possono assumere soltanto i valori vero e falso (1,0).
➢ Le funzioni booleane possono essere specificate usando la
tabella di verità.
F = X +Y Z
30 - RETI LOGICHE
Prof. Orazio Gambino
Identità fondamentali - Premessa
➢ Il principio di dualità dell’algebra booleana afferma che un’equazione
booleana rimane valida se si considera il duale di entrambi i lati
dell’uguaglianza di un’espressione.
➢ Il duale di un’espressione si ottiene:
▪ cambiando AND con OR e viceversa
▪ cambiando uno con zero e viceversa
▪ mantenendo le priorità implicite ed esplicite
➢ La tabella delle Identità fondamentali che segue è divisa in due
colonne proprio per mostrare l’effetto del principio di dualità.
➢ Tutte le identità sono dimostrabili con il metodo dell’induzione
completa, cioè sostituendo tutte le possibili combinazioni di 0 e 1 alle
variabili d’ingresso.
➢ Le identità restano valide se una variabile rappresenta una
espressione più complessa: per X= AB+C si ottiene per l’identità 3
AB+C+1=1
31
Prof. Orazio Gambino
Identità fondamentali
Duali
32 - RETI LOGICHE
Prof. Orazio Gambino
Identità fondamentali – identità derivate
34
Prof. Orazio Gambino
Teorema di DeMorgan
➢ Forma generale del teorema di DeMorgan
➢ Passando da un membro all’altro
▪ OR => AND e AND => OR
▪ Il complemento è eliminato dall’intera espressione e applicato a ogni variabile
▪ Le precedenze implicite ed esplicite sono mantenute
➢ Dimostrazione del Teorema di DeMorgan tramite tabella di verità.
X1X 2 X n = X1 +X 2 + + Xn X1 +X 2 + + X n = X1X 2 X n
35 - RETI LOGICHE
Prof. Orazio Gambino
Complemento di una funzione
Duale
36 - RETI LOGICHE
Semplificazione di funzioni - 1
F = XYZ + XYZ + XZ
POSSIAMO SEMPLIFICARE LA FUNZIONE
F = XYZ + XYZ + XZ
= XY(Z + Z) + XZ (IDENTITA' 14)
= XY • 1 + XZ ( " 7)
= XY + XZ ( " 2)
37 - RETI LOGICHE
Prof. Orazio Gambino
Semplificazione di funzioni - 2
➢ La semplificazione conduce a espressioni equivalenti, ovvero
aventi la stessa tabella di verità, ma corrispondenti a
implementazioni diverse
➢ Dal punto di vista circuitale, ottengo un circuito con meno porte
e quindi più economico.
38 - RETI LOGICHE
Prof. Orazio Gambino
Teorema del consensus - Enunciato
XY + XZ + YZ = XY + XZ
E nella sua versione duale
( X + Y )( X + Z )(Y + Z ) = ( X + Y )( X + Z )
➢ Il prodotto YZ, può essere eliso dalla somma logica in cui i due
fattori Y e Z appaiono in altri due prodotti che differiscono per
una unica variabile, diretta in un prodotto (X Y) e negata
nell’altro (X’ Z)
➢ E’ utile nella semplificazione di funzioni per via algebrica
(tecnica SAR, systematic algebraic reduction)
39 - RETI LOGICHE
Prof. Orazio Gambino
Teorema del consensus - Dimostrazione
➢ Dimostrazione
XZ
40 - RETI LOGICHE
Prof. Orazio Gambino
Tecnica di riduzione algebrica sistematica
41 - RETI LOGICHE
Prof. Orazio Gambino
Forme canoniche
➢ Le funzioni booleane possono essere espresse in forme
equivalenti, ovvero aventi la stessa tabella di verità
➢ Si dice forma canonica una espressione booleana che contenga
una somma logica di prodotti (forma SOP, sum-of-products)
ovvero un prodotto logico di somme (forma POS, product-of-
sums)
➢ Stessa funzione in forma SOP e POS
F(XYZ)=X’Y’Z’+X’YZ’+(X’+Y+Z’)’+(X’+Y’+Z’)’
46 - RETI LOGICHE
Prof. Orazio Gambino
Funzione in forma canonica Sum Of Product
Considerata la tabella di verità, individuo i mintermini in
cui F=1:
E=Y+XZ
E(XYZ)= m(0,1, 2, 4,5)
48
E(XYZ)= m(3,6,7)
Prof. Orazio Gambino
Implementazione a due-livelli
➢ Le forme canoniche consentono di esprimere una funzione
booleana con soltanto due livelli di porte logiche AND o OR:
Forma SOP => logica AND-OR Forma POS => logica OR-AND
49 - RETI LOGICHE
Prof. Orazio Gambino
Criteri di costo
➢ Quanto costa l’implementazione fisica di una funziona booleana?
➢ E’ possibile che vi siano più funzioni booleane che soddisfano la
tabella di verità. Quale scegliere?
➢ In generale, è da preferire una funzione con meno letterali possibili.
Es: F=AB+C(D+E) e F=AB+CD+CE
5 letterali 6 letterali
➢ A parità di letterali, si preferisce la funzione con con meno termini
possibili. Esempio: entrambe le funzioni hanno 8 leterali ma la
prima funzione ha 2 termini mentre la seconda ne ha 5
G=ABCD+ABCD G=(A+B)(B+C)(C+D)(D+A)
➢ Letterali negati implicano ulteriori costi a causa dell’uso di porte
NOT agli ingressi, giacchè non esistono implementazioni nei circuiti
integrati con ingressi già negati. Al contrario, ci sono porte logiche
già negate (vd. Famiglie logiche) per cui il complemento in uscita
non aggiunge costo.
50
Prof. Orazio Gambino
Mappe di Karnaugh
➢ Mappa di Karnaugh (K-map)
▪ diagramma composto da celle
▪ ogni singola cella rappresenta un mintermine
➢ forma SOP è identificabile graficamente su una
mappa di Karnaugh come l’insieme delle celle
corrispondenti ai mintermini inclusi nella funzione
➢ Le espressioni semplificate prodotte dalla mappa di
Karnaugh sono sempre espresse nella forma SOP o
POS
➢ Le K-map consentono di effettuare semplificazioni
soltanto per implementazioni circuitali a due livelli
51 - RETI LOGICHE
Prof. Orazio Gambino
K-map
➢ Le celle di una K-map corrispondono ai mintermini di una funzione ad
n variabili.
➢ ATTENZIONE!!!
▪ Tutta la mappa meno la cella i corrisponde al maxtermine i.
➢ Forme SOP:
▪ Si impostano ad 1 le celle corrispondenti ai mintermini che implicano la
funzione
▪ Le rimanenti celle sono impostate a 0 (in assenza di non-specificazioni)
➢ Forme POS:
▪ Si impostano a 0 le celle corrispondenti ai maxtermini che specificano la
funzione
▪ Le rimanenti celle sono impostate a 1 (in assenza di non-specificazioni)
52 - RETI LOGICHE
Prof. Orazio Gambino
K-map a 2 variabili
➢ Individuazione dei Mintermini ➢ Rappresentazione di funzioni
nella K-map
AND = m3 = XY
OR = m1 + m2 + m3 =
=XY + XY + XY=
=XY + X(Y + Y)=XY + X=
=X+Y (identità derivata 3)
53 - RETI LOGICHE
Prof. Orazio Gambino
Porta XOR tramite K-Map?
54 -
Prof. Orazio Gambino
Semplificazione tramite K-map a 2 variabili
2-adiacenza
X Y X Y X Y X Y
0 1 0 1 0 1 0 1
0 1 1 0 1 0 0 1
1 1 1 1 1 1 1 1
X Y X Y X Y X Y
0 1 0 1 0 1 0 1
0 1 1 0 1 0 1 0 1 1
1 1 1 1 1 1 1 1 1 1
A B,C 00 01 11 10
0 0 1 3 2
1 4 5 7 6
57 - RETI LOGICHE
Prof. Orazio Gambino
K-map a 3 variabili
58 - RETI LOGICHE
Prof. Orazio Gambino
K-map a 3 variabili
• La tabella si presenta con il • La numerazione dei Mintermini
letterale doppio (variabili YZ) si effettua indicando mXYZ
espressi in codice Gray. Infatti,
tale codice permette di avere la
variazione di un solo letterale tra
due Mintermini adiacenti renden-
m000 m001 m011 m010
do possibile la semplificazione
vista nelle slide precedenti.
m100 m101 m111 m110
m0 m1 m3 m2
m4 m5 m7 m6
59
Prof. Orazio Gambino
K-map a 3 variabili: Adiacenze
60
Prof. Orazio Gambino
K-map a 3 variabili
Semplificazione con 2-adiacenza
XYZ+XYZ=XY(Z + Z) = XY XYZ+XYZ=XZ(Y + Y) = XZ
X YZ X YZ
00 01 11 10 00 01 11 10
0 1 1 0 1 1
1 1
62
K-map a 3 variabili
Semplificazione con 4 adiacenze
Adiacenza 2x2. Usando il risultato REGOLA: Una 4-adiacenza è
della precedente per le adiacenze espressa da un’unica variabile
m0 m1,aggiungiamo solo i che è costante nel passaggio da
Mintermini m4 m5 un’adiacenza all’altra.
XY + XYZ+XYZ XY + XYZ+XYZ
=XY + XY(Z+Z ) = XY + XY(Z+Z)
= Y(X + X)=Y = X(Y + Y) = X
X YZ X YZ
00 01 11 10 00 01 11 10
0 1 1 0 1 1 1 1
1 1 1 1 63
X YZ
00 01 11 10
0 1 1 1
1 1
64
Esercizio: verificare che le adiacenze
indicate isolino una sola variabile!
65
Prof. Orazio Gambino
K-map a 4 variabili
• Anche per la K-map a 4 variabili si • Allo stesso modo del caso a 3
usa il codice Gray. variabili si determinano le posizio-
ni dei Mintermini.
66
Prof. Orazio Gambino
K-map a 4 variabili: adiacenze
• Tutti i Mintermini sul bordo sono • I Mintermini sono
adiacenti. I 4 vertici formano
un’adiacenza 4x4 disposti nello spazio
come un toroide.
67
Prof. Orazio Gambino
K-map a 4 variabili: adiacenze 1x2 – 2x1
e 3 adiacenze
YZ Anche per la K-map a 4 variabili le adiacenze
WX 00 01 11 10
di due Mintermini producono l’eliminazione di
00 1 1 un letterale che si presenta nella sua versione
diretta e negata.
01 1
WXYZ+WXYZ WXYZ+WXYZ
11
=WXY(Z + Z) =WYZ(X + X)
10
= WXY = WYZ
F=WXY+WYZ 68
Prof. Orazio Gambino
K-map a 4 variabili: adiacenze 2x2
YZ
WX 00 01 11 10 Come nel caso della K-map
00 1 1 a 3 variabili, si ottiene
l’eliminazione di due letterali
01 1 1 che compaiono sia in forma
diretta che negata. Per il
11
primo termine della funzione
si riutilizza un risultato
10
precedente.
WXY+WXY=WY(X + X)=WY
69
Prof. Orazio Gambino
K-map a 4 variabili: 8-adiacenza
YZ
WX 00 01 11 10 La funzione in forma SOP di
00 1 1 1 1 questa K-map è data dalla
somma della funzione espressa
01 1 1 1 1 dai primi quattro Mintermini
calcolata nella precedente slide
11
e per il termine W’Y in quanto
solo queste variabili rimangono
10
costanti. Per cui si ottiene:
F=WY+WY=W
REGOLA: Una 8-adiacenza è espressa da un’unica
variabile che non varia nel passaggio da un Mintermine 70
all’altro.
Verificare che le adiacenze indicate isolino i
letterali X’Z’
71
Prof. Orazio Gambino
Verificare che le adiacenze indicate isolino le
variabili W,X,Y,Z
72
Prof. Orazio Gambino
Esempio
F=m(4, 5, 6, 12, 13) = A’ B C’ D’ +
+ A’ B C’ D +
+ A’ B C D’ +
+A B C’ D’ +
+A B C’ D
CD
A B 00 01 11 10
00
01 1 1 1
11 1 1
10
73 - RETI LOGICHE
Prof. Orazio Gambino
Esempio
CD
A B 00 01 11 10
00
01 1 1 1
11 1 1
10
74 - RETI LOGICHE
Prof. Orazio Gambino
Esempio
CD
A B 00 01 11 10
00
01 1 1 1
11 1 1
10
75 - RETI LOGICHE
Prof. Orazio Gambino
Esempio
➢ Semplificare la funzione seguente in forma SOP:
F= m(0,1,2,4,5,6,8,9,12,13,14)
76 - RETI LOGICHE
Prof. Orazio Gambino
Esempio
F = AB + CD + BD
F = ( A + B)(C + D)( B + D)
77 - RETI LOGICHE
Prof. Orazio Gambino
Primi implicanti e primi implicanti essenziali
➢ Implicante
▪ Un prodotto P è un implicante di una funzione se essa assume il valore 1 per tutti
i mintermini che compongono il prodotto P considerato.
➢ Tutti i raggruppamenti di una K-map, ottenuti raggruppando celle marcate con
1, sono implicanti
➢ Primo implicante
▪ Dato un implicante P, se la rimozione di qualunque letterale dà luogo a un
prodotto che non è un implicante della funzione, allora P è un primo implicante.
➢ Per una funzione F di n variabili, l’insieme dei primi implicanti corrisponde sulla
mappa di Karnaugh all’insieme di tutti i raggruppamenti costruiti utilizzando 2 m
celle (m = 0, 1, ….n), contenenti 1, in cui ciascun raggruppamento dell’insieme
contiene il maggior numero possibile di celle.
➢ Primo implicante essenziale
▪ Se un mintermine di una funzione è incluso solo in un primo implicante, tale
termine si chiama primo implicante essenziale
▪ Se per una data funzione F, una cella contenente un 1, è inclusa in un solo
raggruppamento che è un primo implicante, allora quel primo implicante è
essenziale.
78 - RETI LOGICHE
Prof. Orazio Gambino
Esempio
➢ Si noti che gli accoppiamenti costituiscono primi implicanti
purché non siano completamente interni ad accoppiamenti di
ordine superiore.
In altre parole, se non si
trovano raggruppamenti
più grandi che coprono i
Mintermini, allora quei
raggruppamenti sono
primi implicanti.
79 - RETI LOGICHE
Prof. Orazio Gambino
Esempio
➢ Per la funzione
F=m(0,1,2,4,5,10,11,13,15)
determinare tutti i suoi primi implicanti e dire quali
di essi sono essenziali.
➢ A’B non è essenziale
perché gli altri primi implicanti
bastano a ricoprire tutti i Mintermini.
L'eliminazione dei Mintermini
NON-essenziali minimizza
l'espressione analitica
della funzione booleana.
80 - RETI LOGICHE
Prof. Orazio Gambino
K-map trasposta - 1
83 - RETI LOGICHE
Prof. Orazio Gambino
Semplificazione in presenza di non-specificazioni
84 - RETI LOGICHE
Prof. Orazio Gambino
Esempio
➢ Semplificare la funzione: F (A,B,C,D)= Sm(1,3,7,11,15),
con non specificazioni d(A,B,C,D) = Sm(0,2,5)
85 - RETI LOGICHE
Prof. Orazio Gambino
Progettazione
1. Individuare dalla tabella di verità i Mintermini interessati (SOP),
ossia le configurazioni delle variabili d’ingresso da riconoscere
2. Trasferire i Mintermini nella K-map
3. Riconoscere le adiacenze e quindi creare gruppi di Mintermini
traminte primi implicanti essenziali
4. Dedurre la forma analitica della funzione che verrà così
ottenuta in forma semplificata
5. Disegnare lo schema equivalente alla funzione trovata
6. Selezionare i circuiti integrati da una famiglia logica
7. Creare i collegamenti tra gli ingressi e le uscite delle porte
logiche
8. Fornire tensione di alimentazione continua compatibile con la
famiglia logica scelta
86
Prof. Orazio Gambino
Funzione dispari - 1
➢ Lo XOR di tre o più variabili ha valore 1 solo se le variabili che
assumono valore 1 sono in numero dispari (funzione dispari)
➢ I mintermini con un numero dispari di variabili in forma diretta, non
sono adiacenti e differiscono al più per due letterali
▪ Hanno distanza due l’uno dall’altro.
➢ La funzione pari è il complemento della dispari.
87 - RETI LOGICHE
Prof. Orazio Gambino
Funzione dispari - 2
88
Prof. Orazio Gambino
Funzioni dispari - 3
XYZ + XYZ + XYZ + XYZ
= ( XY + XY ) Z + ( XY + XY ) Z
X Y = XY + XY
_________ _____________
X Y = XY + XY
= (X +Y)(X +Y )
= XY + XY
Da cui deriva:
= ( X Y ) Z + ( X Y ) Z =
= X Y Z
89
Prof. Orazio Gambino
Generazione e controllo di parità
➢ Il circuito che permette l’aggiunta del bit di parità
prende il nome di generatore di parità (parity
generator)
➢ Il circuito che permette il controllo di parità prende il
nome di controllore di parità (parity checker)
➢ Usando parità pari, si ha un errore se il parity checker
genera 1 in uscita (perché un XOR di più variabili è 1
se il numero di bit 1 è dispari).
90 - RETI LOGICHE
Prof. Orazio Gambino
Penny:”What does this circuit do?”
Sheldon:”It choices the greatest between A and B”
91
Prof. Orazio Gambino
Il transistor
➢ Interruttore elettronico (Shockley, Brattain, Bardeen, 1947)
➢ Due stati: conduzione, interdizione (acceso, spento)
➢ Altissima densità di integrazione
▪ 3-10 M trans/cm2
➢ Altissima velocità (frequenza) di commutazione da uno stato all’altro
▪ 500-1300 milioni cicli/secondo (HERTZ)
▪ 0.8-2 miliardesimi di secondo
➢ Sostituisce il nucleo magnetico
inizi ’70
➢ Base, emettitore, collettore
➢ La base controlla il funzionamento
▪ In presenza di tensione sulla base
la corrente scorre dal collettore
verso l’emettitore (conduzione)
▪ In assenza di tensione, non c’è
passaggio di corrente (interdizione)
92 - RETI LOGICHE
Prof. Orazio Gambino
Funzionamento del transistor
➢ Due modi per associare i due valori
binari ai due modi di funzionamento
del transistor
➢ Logica positiva
▪ Associare allo stato di conduzione il
valore binario 1
▪ Associare allo stato di interdizione
il valore binario 0
➢ Logica negativa
▪ Associare allo stato di conduzione il
valore binario 1
▪ Associare allo stato di interdizione
il valore binario 0
93 - RETI LOGICHE
Prof. Orazio Gambino
Circuiti integrati
➢ I transistor sono dispositivi di materiale
semiconduttore, silicio o arseniuro di
gallio
➢ Transistor e connessioni sono
raggruppati in circuiti integrati
(integrated circuit o chip)
➢ Sono disposti su un wafer di silicio con
un processo litografico
▪ Maschere di integrazione
▪ Densità o scala di integrazione, numero
di transistor per cm2
▪ LSI (low) , MSI (medium), VLSI (very
large), ULSI (ultra large scale
integration)
➢ I chip sono montati tipicamente su
involucri con una doppia fila di pin (dual-
in-line package)
➢ I vari chip sono quindi montati in circuiti
stampati o schede (circuit board)
94 - RETI LOGICHE
Prof. Orazio Gambino
Scale di integrazione
➢ Densità o scala di integrazione
▪ numero di transistor per cm2
▪ Oggi: 3-50 M transistor/cm2
➢ Diverse technologie
▪ LSI (low scale integration)
▪ MSI (medium scale integration)
▪ VLSI (very large scale integration)
▪ ULSI (ultra large scale integration)
➢ Un esempio concreto
▪ 10 M transistor/cm2 significa disporre
3200x3200 transitor in un quadrato
con 1 cm di lato
▪ I transistor devono distare 0.003 mm
▪ 20x più vicini del più piccolo
granello di sabbia!
95 - RETI LOGICHE
Prof. Orazio Gambino
George Boole Augustus De Morgan
(matematico) (matematico)
2 novembre 1815, Lincoln, Regno Unito 27 giugno 1806, Madurai, India
8 dicembre 1864, Ballintemple, Cork, Irlanda 18 marzo 1871, Londra, Regno Unito
96
Prof. Orazio Gambino