Fondamenti di Informatica
Circuiti Logici
Pro f. M a rco Lo mb a rd i
Circuito Logico
• Il cuore di un sistema digitale è il circuito logico digitale
• Progettato a partire da porte logiche
• Collegate tra loro per formare circuiti più grandi
• Combinati per realizzare circuiti di grande importanza pratica nell’architettura del computer
Porte Logiche
•
Elementi base utilizzati per creare circuiti digitali
• Qualsiasi circuito può essere implementato usando solo porte logiche
• AND, OR e NOT
•
Dispositivi elettronici che implementano semplici funzioni
booleane
•
Ciascuna porta ha il proprio simbolo logico che permette a
funzioni complesse di essere rappresentate mediante un
diagramma logico
•
La funzione di ciascuna porta può essere rappresentata da
una tavola di verità o utilizzando una espressione booleana
Funzione AND: Tavola di Verità
e Porta Logica
𝑥
1𝑥
2𝑥
1× 𝑥
2(AND)
0 0 0 0 1 0 1 0 0 1 1 1 Simbolo logico Tavola di veritàFunzione AND: Tavola di Verità
e Porta Logica
𝑥
1𝑥
2𝑥
1× 𝑥
2(AND)
0 0 0 0 1 0 1 0 0 1 1 1 Simbolo logico Tavola di verità Input Circuiti LogiciFunzione AND: Tavola di Verità
e Porta Logica
𝑥
1𝑥
2𝑥
1× 𝑥
2(AND)
0 0 0 0 1 0 1 0 0 1 1 1 Simbolo logico Tavola di verità OutputEspressione booleana
oppure
Funzione AND: Tavola di Verità
e Porta Logica
𝑥
1𝑥
2𝑥
1× 𝑥
2(AND)
0 0 0 0 1 0 1 0 0 1 1 1 Simbolo logico Tavola di verità𝑥
1× 𝑥
2𝑥
1𝑥
2 Circuiti LogiciFunzione OR: Tavola di Verità e
Porta Logica
𝑥
1𝑥
2𝑥
1+ 𝑥
2(OR)
0 0 0 0 1 1 1 0 1 1 1 1 Simbolo logico Tavola di verità𝑥
1+ 𝑥
2 Espressione booleanaFunzione NOT: Tavola di Verità
e Porta Logica
𝑥
1𝑥
1(NOT)
0 1 1 0 Simbolo logico Tavola di verità𝑥
1 Espressione booleana Circuiti LogiciAND, OR e NOT
Riepilogo Porte Logiche
𝑥
1𝑥
1(NOT)
0 1 1 0 Simbolo logico𝑥
1 Espressione booleana Tavola di VeritàNOT
OR
𝑥
1𝑥
2𝑥
1+ 𝑥
2(OR)
0 0 0 0 1 1 1 0 1 1 1 1 Tavola di Verità Simbolo logico Espressione booleana𝑥
1+ 𝑥
2AND
𝑥
1𝑥
2𝑥
1× 𝑥
2(AND)
0 0 0 0 1 0 1 0 0 1 1 1 Tavola di Verità Simbolo logico Espressione booleana𝑥
1× 𝑥
2 oppure𝑥
1𝑥
2Altre Porte Logiche…
… Porta NAND
NAND = NOT AND
𝐶 = 𝐴 × 𝐵
Altre Porte Logiche…
… Porta NOR
Altre Porte Logiche…
… Porta XOR
Altre Porte Logiche…
… Porta Exclusive NOR
NOT XOREsempio 1: dalla Funzione al Circuito
– 1/2
• Circuito per la funzione ҧ𝑥 × 𝑦
• Circuito per la funzione 𝑥 × ത𝑦
Esempio 1: dalla Funzione al Circuito
– 2/2
• Circuito per la funzione ҧ𝑥 × 𝑦
Esempio 2: dalla Funzione al Circuito
– 1/2
• Circuito per la funzione ҧ𝑥 + 𝑦
• Circuito per la funzione 𝑥 + ത𝑦
Esempio 2: dalla Funzione al Circuito
– 2/2
• Circuito per la funzione ҧ𝑥 + 𝑦
Esempio 3: dalla Funzione al Circuito
– 1/2
• Circuito per la funzione ҧ𝑥 × ത𝑦
• Circuito per la funzione ҧ𝑥 + ത𝑦
Esempio 3: dalla Funzione al Circuito
– 2/2
• Circuito per la funzione ҧ𝑥 × ത𝑦
Esempio 4: dalla Funzione al Circuito
– 1/2
C B A C B A C B A X = + + Circuiti LogiciEsempio 4: dalla Funzione al Circuito
– 2/2
C B A C B A C B A X = + +Esempio 5: dalla Funzione al Circuito
– 1/2
• 𝑚 𝑥, 𝑦, 𝑧 = ҧ𝑥𝑦𝑧 + 𝑥 ത𝑦z + xy ҧ𝑧 + 𝑥𝑦𝑧
Esempio 5: dalla Funzione al Circuito
– 2/2
Esempio 6: dalla Funzione al Circuito
– 1/2
D
C
B
A
Y
=
+
Circuiti LogiciEsempio 6: dalla Funzione al Circuito
– 2/2
D
C
B
A
Y
=
+
Porta NORNota sulla rappresentazione
Due metodologie valide di rappresentazione di un diagramma logico.
Entrambi i diagrammi logici rappresentano la medesima funzione booleana.
Dal Circuito alla Funzione
• Procedere progressivamente dagli input verso l’output aggiungendo a turno le espressioni logiche all’output di ciascuna porta logica
Esempio 1: dal Circuito alla Funzione
– 1/3
Esempio 1: dal Circuito alla Funzione
– 2/3
• Procedere progressivamente dagli input verso l’output
aggiungendo a turno le
espressioni logiche all’output di ciascuna porta logica
Esempio 1: dal Circuito alla Funzione
– 3/3
Circuiti Logici
• Procedere progressivamente dagli input verso l’output
aggiungendo a turno le
espressioni logiche all’output di ciascuna porta logica
Funzione → Tavola di Verità → Circuito
Ricapitolando…
• Abbiamo visto che una funzione logica (ma anche un circuito logico) può essere definita in due modi
• Tavola di Verità • Porte Logiche
• Perché abbiamo bisogno di tutte queste diverse rappresentazioni?
• Alcune sono più facili di altre per cominciare a progettare un circuito 1. Di solito si comincia con la tavola di verità
2. Si deriva un’espressione booleana da essa (magari esemplificata) 3. Si trasforma l’espressione booleana in un circuito