2. a.a. 2007/2008
Architettura dei calcolatori
Decoder/demultiplexer (1/2)
• Il decoder (demultiplexer) realizza la funzione di smistare un singolo
input in una delle n possibili uscite
• Viene usato quando un sistema digitale realizza i parallelo un certo
Vi t d it di it l li in ll l t
numero di funzioni, ma manda in uscita una sola di esse alla volta,
selezionata da una opportuna configurazione dei segnali di controllo
• Formalmente il demultiplexer è una rete logica con 1 ingresso di dato, n
segnali di controllo e 2n uscite: l’uscita contrassegnata dall’indice pari alla
configurazione dei segnali di controllo riceve l’ingresso mentre le altre
l ingresso
non sono abilitate.
• Si dice anche decoder in quanto viene usato per decodificare un segnale
binario (se i
bi i ( si mantiene l’i
ti l’ingresso EN a 1) 1).
DECODER 2:4
EN O0
O1
O2
A0
O3
A1
2
3. a.a. 2007/2008
Architettura dei calcolatori
Decoder/demultiplexer (2/2)
• L’ingresso EN abilita l’uscita Oi corrispondente alla configurazione i degli
ingressi En / In
O0
Può essere usato come generatore di mintermini
O1
O2
Esempio: O3
realizzare la rete logica
g
s1= A’BC’ +A’B’C +A’B’C’
s2= A’BC +ABC
O0
O1 S1
O2
1 O3
D=EN
D EN
O4
O5
O6
S2
A1 A0 O7
A2
C BA
3
4. a.a. 2007/2008
Architettura dei calcolatori
Multiplexer (1/2)
• Multiplexer: è quel blocco logico che permette di deviare su un’unica uscita un
segnale proveniente da uno tra n possibili ingressi.
• Muliplexer o selettori: permettono di selezionare gli ingressi tra più possibili
sorgenti
Formalmente: è una rete logica avente 2n ingressi di tipo dati e n ingressi di tipo
•
segnali di controllo (o indirizzo) ed 1 uscita: in ogni istante il dato di ingresso
dell’ingresso corrispondente alla configurazione dei segnali di controllo viene
posto in uscita MUX4:1 A A I I I I O
1 0 3 2 1 0
0 0 × × × 0 0
I0
0 0 × × × 1 1
I1
I2 O 0 1 × × 0 × 0
I3 0 1 × × 1 × 1
1 0 × 0 × × 0
A0
A1 1 0 × 1 × × 1
1 1 0 × × × 0
1 1 1 × × × 1
• Sintesi attraverso la tabella della verità
O=I3A1A0 +I2A1A0’ +I1A1’A0+I0A1’A0’
esegue la somma di tanti prodotti quanti gli ingressi (di dato), in cui ogni prodotto
è un mintermine degli ingressi di controllo
4
5. a.a. 2007/2008
Architettura dei calcolatori
Multiplexer (2/2)
• E’ possibile costruire un multiplexer N:1 mettendo in cascata vari livelli di
multiplexer più piccoli I0
I1
O
I2
I3
MUX 4:1
Il multiplexer non solo può essere
A0
A1
usato come selettore ma
anche come generatore in MUX 8:1
hardware di tabelle della verità 1 I0
I1
O
I2
I3
I4
I5
• Esercizio: I6
I7 A2 A1 A0
realizzare F(x0,x1,x2)= m0+m2+m6+m7
(somma di 4 mintermini)
( i i i) 0
x2 x1 x0
5
6. a.a. 2007/2008
Architettura dei calcolatori
Amplificatore tri-state (1/3)
• Amplificatore tri-state: Generatore di segnale in terzo stato (Z)
In OE Out
In
Out
X 0 Z
OE
0 1 0
1 1 1
• l’uscita è uguale all’ingresso quando l’output enable è asserito; spesso con
OE# attivo basso o con uscita negata
In1
Si usa molto spesso per realizzare
In2
multiplexer di t ib iti
lti l distribuiti
o
OE
• Attenzione: per evitare corto circuiti bisogna che in ogni istante solo un tri-
state sia abilitato.
6
8. a.a. 2007/2008
Architettura dei calcolatori
Half adder
• Somma due bit in input restituendo l’eventuale riporto.
A B S Carry
0 0 00
0 1 10
1 0 10
1 1 01
• E’ possibile realizzare un sommatore che tenga conto del riporto (Full
adder) con le tecniche di sintesi tradizionali, ma non è ottimizzato.
Conviene comporre due semi sommatori, cioè considerare che il riporto
dell’operazione precedente viene sommato alla somma dei due bit
attuali. E
attuali E’ necessario poi comporre i riporti di queste due somme
somme.
8
9. a.a. 2007/2008
Architettura dei calcolatori
Full adder
• La versione ottimizzata del sommatore completo a 1 bit è:
• Un sommatore completo a n bit si può ottenere replicando in serie n volte
un sommatore completo.
• Il riporto (carry out) di un bit si usa come carry in del sommatore
completo alla sua sinistra (cifra più significativa).
9
10. a.a. 2007/2008
Architettura dei calcolatori
ALU a 1 bit
• Combinando opportunamente un sommatore e alcune porte logiche è
possibile realizzare delle Unità Aritmetico-Logiche (ALU) che consentono
di eseguire operazioni su singoli bit L’uscita dell’unità viene comandata
bit. L uscita dell unità
da un multiplexer che seleziona l’operazione da compiere, a seconda dei
segnali di controllo che gli vengono forniti.
10
11. a.a. 2007/2008
Architettura dei calcolatori
ALU a 4 bit
• Combinando opportunamente le ALU a 1 bit viste precedentemente, è
possibile realizzare una ALU a più bit.
11