Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
I circuiti combinatori sono quella classe di circuiti digitali i cui segnali di uscita sono unicamente
dipendenti dai segnali di ingresso; non presentano una “memoria storica” dello stato precedente.
Nell’astrazione a livello sistema, un circuito combinatorio si può vedere come un sistema ingresso-
uscita. Di contro, nei circuiti sequenziali l’elemento di memoria è importante, definisce lo stato in cui
il circuito si trova e i segnali di uscita nei circuiti sequenziali sono dipendenti sia dai segnali di
ingresso che dallo stato del sistema. Pertanto, i circuiti sequenziali si possono immaginare come
sistemi ingresso-stato-uscita. Questa dispensa ha lo scopo di fornire ulteriori dettagli nei riguardi dei
circuiti combinatori.
Una porta logica (NOT, AND, NAND, NOR, XOR etc.) è un circuito combinatorio. Oltre alle porte
logiche, ci sono ulteriori circuiti combinatori che vale la pena studiare e per i quali è opportuno
comprendere il modo in cui questi vengono realizzati a livello ‘dispositivo’. Ai fini di questo corso,
se ne vedranno 3: DECODER, DEMULTIPLEXER e MULTIPLEXER.
DECODER
È un circuito combinatorio di decodifica che presenta N segnali di ingresso e 2N segnali di uscita. Si
può schematizzare così:
Gli N ingressi definiscono quale delle 2N uscite dev’essere portata allo stato logico alto (V=VOH),
mentre tutte le rimanenti sono allo stato logico basso (V=VOL). Solo una delle uscite dev’essere quindi
attivata. Proviamo a costruire un decoder con N=2; avremo quindi 2 ingressi e 22=4 uscite:
La tabella della verità del circuito avrà una forma di questo tipo:
1 Si ringraziano (in ordine alfabetico) A. Rabboni e L. Staiano per i loro appunti, molto utili per me nel costruire questo documento.
Guardando per quali combinazioni degli ingressi X0 ed X1 le singole uscite sono alte, risulta che:
Il passaggio dalla AND di letterali alla NOR è ottenuto applicando il teorema di De Morgan (col
quale siete sicuramente esperti). Le uscite, quindi, sono tutte delle NOR. Pensiamo di adottare una
logica a rapporto per realizzare le singole NOR, con un dispositivo di pull-up del tipo NMOS a
svuotamento con Gate e Source cortocircuitati. Il circuito finale si può disegnare nel seguente modo:
Si noti che le linee verticali in cui ci sono le Y non cortocircuitano quelle orizzontali su cui viaggiano
le X (e la loro versione negata). La connessione avviene tramite degli NMOS che eseguono il
pull-down. Perché non farlo con logiche CMOS? È chiaro che si può fare in CMOS, ma sarebbe
necessario occuparsi anche di organizzare la rete di pull-up, la quale dovrebbe essere collegata agli
ingressi. Finché N=2 la soluzione sarebbe anche fattibile2, ma lo scenario cambia notevolmente
quando N è molto grande.
La forma del disegno molto “squadrata” è utile per immaginare come si potrebbe poi realmente
realizzare sul silicio (cosa che è interamente fuori da questo insegnamento).
DEMULTIPLEXER
È un circuito combinatorio di instradamento che presenta 1 segnale di ingresso, N segnali di controllo
e 2N segnali di uscita. Gli N bit di controllo (S) hanno il fine di definire quale delle uscite (Y)
dev’essere uguale al segnale di ingresso (X), mentre tutte le altre devono essere poste allo stato 0
(V=VOL).
2Per i più intraprendenti: provate a fare il disegno della rete di pull-up immaginando una struttura quadrata. Considerate che i dispositivi
nel pull-up devono essere messi in serie e non in parallelo.
Si può schematizzare così:
Proviamo a vedere che succede nel caso N=2. Questo è lo schema specifico:
Si può quindi vedere che le funzioni logiche Y3, Y2, Y1 ed Y0 hanno la seguente forma:
Ancora una volta è stato applicato De Morgan. Ci sono sempre delle NOR, questa volta a 3 ingressi,
uno dei quali è sempre il segnale X negato. Sempre ponendoci nella logica a rapporto NMOS ED, la
forma del circuito finale sarà molto simile a quella del DECODER, ma con una riga in più:
Valgono quindi considerazioni analoghe a quanto detto prima per il DECODER.
MULTIPLEXER
È un circuito combinatorio di instradamento che presenta 2N segnali di ingresso, N segnali di controllo
e 1 segnale di uscita. Gli N bit di controllo (S) hanno il fine di definire quale degli ingressi (X)
dev’essere instradato sull’uscita (Y). Si può schematizzare in questo modo:
Vi invito a far molto caso al posizionamento dei segnali S0 ed S1 (coi loro negati) e soprattutto ai
dispositivi NMOS e PMOS. Fate inoltre caso al fatto che per ogni combinazione di S0 ed S1 esiste
solo uno degli ingressi che è collegato all’uscita Y, mentre tutti gli altri trovano almeno un pass
transistor “aperto”. Apparentemente, questo circuito fa utilizzo di 16 transistor; se credete sia giusto
è perché vi siete dimenticati di considerare due invertitori “nascosti” necessari ad ottenere il negato
dei segnali S0 ed S1; quindi (a prescindere dalla logica a rapporto o CMOS), ci sono altri 4 dispositivi
da considerare nel conteggio, per un totale di 20 dispositivi.
3Per i più intraprendenti 2.0: provate a sviluppare il circuito pensando a delle porte logiche. Contate il numero di dispositivi che viene
fuori. Sorprese?