Il multiplexer: scegliere tra due segnali
Un multiplexer (o mux) è un deviatore fatto di porte logiche. Ha degli ingressi di dati, un ingresso di selezione e un’uscita. Con 2 ingressi di dati, A e B, l’uscita mostra A quando Sel è 0 e B quando Sel è 1.
Tabella di verità
| A | B | Sel | Y |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 0 | 0 | 1 | 0 |
| 0 | 1 | 0 | 0 |
| 0 | 1 | 1 | 1 |
| 1 | 0 | 0 | 1 |
| 1 | 0 | 1 | 0 |
| 1 | 1 | 0 | 1 |
| 1 | 1 | 1 | 1 |
Provalo Clicca gli ingressi per cambiarli.
Come funziona
Dai a ogni ingresso il suo “guardiano”: una porta AND che lo lascia passare solo quando è selezionato. A deve passare quando Sel è 0, quindi va in AND con NOT Sel. B deve passare quando Sel è 1, quindi va in AND con Sel. Al massimo una delle due AND può valere 1, quindi una porta OR raccoglie il risultato.
I multiplexer sono ovunque in un processore: scelgono quale registro entra nel sommatore, quale indirizzo va alla memoria, quale valore viene riscritto. Quelli più grandi, con 4, 8 o 16 ingressi, hanno bisogno di 2, 3 o 4 bit di selezione.
Suggerimenti e soluzione
Prova prima da solo. Ogni suggerimento svela un po’ di più.
- Usa una porta AND per ogni ingresso, per farlo passare solo quando è selezionato.
- A passa quando Sel è 0 (mettilo in AND con NOT Sel); B passa quando Sel è 1.
- Metti i due risultati in una OR.