Esercitazioni pratiche di elettronica/Logica Combinatoria/Il Semisommatore o Half-Adder
HALF ADDER
modificaLa porta XOR - OR esclusivo
modificaAnalizziamo innanzitutto il funzionamento di una porta XOR, in quanto risulterà utile nella trattazione del Semisommatore o Half-Adder:
Tabella di verità
modificaLa porta ha la seguente tabella della verità:
Y | ||
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
Dove si nota che l'uscita assume il valore 1 logico sole se gli ingressi non sono uguali.
Simulazione
modificaLa somma aritmetica
modificaA differenza della somma logica, effettuare la somma aritmetica vuol dire operare come per la somma in base 10, tenendo conto anche di un eventuale riporto che chiameremo CY; se la somma viene effettuata ad una cifra numerica, il riporto interverrà quando la somma supera o eguaglia la base, e nel caso della base 2, effettuando la somma ad una sola cifra (ovvero ad un solo bit per volta) avremo il riporto quando la somma supera 1.
Somma in base 2 ad un solo bit con riporto CY
modificaTabella di verità del Semisommatore
modificaSUM | CY | ||
---|---|---|---|
0 | 0 | 0 | 0 |
0 | 1 | 1 | 0 |
1 | 0 | 1 | 0 |
1 | 1 | 0 | 1 |
Come vedete ci troviamo di fronte ad un blocco di logica combinatoria con due ingressi: e , e due uscite: SUM (la somma) e CY (il riporto). Dovremo quindi realizzare due funzioni booleane distinte, una per ogni uscita del nostro blocco di logica combinatoria, dove ciascuna funzione booleana sarà una funzione a due ingressi ed una sola uscita.
Funzione booleana che realizza la somma - SUM
modificaLa funzione è quella che mostra le sue uscite nella terza colonna della tabella a partire da sinistra, ovvero la funzione con uscita SUM e ingressi e ; scriviamo i minterm:
SUM | ||
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
E come vedete è identica alla funzione realizzata da una porta XOR.
Funzione booleana che realizza il riporto - CY
modificaLa funzione è quella che mostra le sue uscite nella quarta colonna della tabella a partire da sinistra, ovvero la funzione con uscita CY e ingressi e ; scriviamo i minterm:
CY | ||
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
E come vedete è identica alla funzione realizzata da una porta AND.
Allora andiamo a realizzare lo schema del nostro blocco di logica combinatoria che realizza il Semisommatore mettendo insieme i due schemi parziali delle due separate funzioni:
Lo schema del Semisommatore
modificaQuesto e lo schema completo di un semisommatore. Si può ora passare all'implementazione sulla scheda e a relativo test, inviando gli ingressi a due switch, ad esempio a e a e le uscite SUM e CY ai led e .